aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
Diffstat (limited to 'contrib')
-rwxr-xr-xcontrib/asmap/asmap-tool.py41
-rw-r--r--contrib/completions/bash/bitcoin-cli.bash2
-rw-r--r--contrib/devtools/bitcoin-tidy/CMakeLists.txt4
-rw-r--r--contrib/devtools/bitcoin-tidy/bitcoin-tidy.cpp4
-rw-r--r--contrib/devtools/bitcoin-tidy/example_logprintf.cpp108
-rw-r--r--contrib/devtools/bitcoin-tidy/example_nontrivial-threadlocal.cpp2
-rw-r--r--contrib/devtools/bitcoin-tidy/logprintf.cpp60
-rw-r--r--contrib/devtools/bitcoin-tidy/nontrivial-threadlocal.cpp44
-rw-r--r--contrib/devtools/bitcoin-tidy/nontrivial-threadlocal.h (renamed from contrib/devtools/bitcoin-tidy/logprintf.h)12
-rwxr-xr-xcontrib/devtools/check-deps.sh46
-rwxr-xr-xcontrib/devtools/clang-format-diff.py2
-rwxr-xr-xcontrib/devtools/copyright_header.py1
-rwxr-xr-xcontrib/devtools/gen-bitcoin-conf.sh5
-rwxr-xr-x[-rw-r--r--]contrib/devtools/headerssync-params.py4
-rwxr-xr-xcontrib/devtools/security-check.py97
-rwxr-xr-xcontrib/devtools/symbol-check.py28
-rwxr-xr-xcontrib/devtools/test-security-check.py132
-rwxr-xr-xcontrib/devtools/test-symbol-check.py50
-rwxr-xr-xcontrib/devtools/test_deterministic_coverage.sh6
-rwxr-xr-xcontrib/devtools/test_utxo_snapshots.sh209
-rwxr-xr-xcontrib/devtools/utxo_snapshot.sh94
-rw-r--r--contrib/guix/INSTALL.md13
-rw-r--r--contrib/guix/README.md1
-rwxr-xr-xcontrib/guix/libexec/build.sh67
-rw-r--r--contrib/guix/libexec/prelude.bash2
-rw-r--r--contrib/guix/manifest.scm32
-rw-r--r--contrib/guix/patches/gcc-remap-guix-store.patch15
-rw-r--r--contrib/guix/patches/winpthreads-remap-guix-store.patch17
-rwxr-xr-xcontrib/linearize/linearize-data.py28
-rw-r--r--contrib/seeds/.gitignore1
-rw-r--r--contrib/seeds/README.md15
-rwxr-xr-xcontrib/seeds/generate-seeds.py6
-rwxr-xr-xcontrib/seeds/makeseeds.py36
-rw-r--r--contrib/seeds/nodes_main.txt3552
-rw-r--r--contrib/seeds/nodes_main_manual.txt1029
-rw-r--r--contrib/seeds/nodes_test.txt320
-rw-r--r--contrib/seeds/nodes_testnet4.txt9
-rwxr-xr-xcontrib/signet/miner346
-rw-r--r--contrib/tracing/README.md10
-rwxr-xr-xcontrib/tracing/connectblock_benchmark.bt6
-rwxr-xr-xcontrib/tracing/log_p2p_traffic.bt4
-rwxr-xr-xcontrib/tracing/log_utxos.bt8
-rw-r--r--contrib/valgrind.supp6
43 files changed, 2860 insertions, 3614 deletions
diff --git a/contrib/asmap/asmap-tool.py b/contrib/asmap/asmap-tool.py
index 09c28725e4..33a380a2e7 100755
--- a/contrib/asmap/asmap-tool.py
+++ b/contrib/asmap/asmap-tool.py
@@ -6,7 +6,9 @@
import argparse
import sys
import ipaddress
+import json
import math
+from collections import defaultdict
import asmap
@@ -113,6 +115,18 @@ def main():
parser_diff.add_argument('infile2', type=argparse.FileType('rb'),
help="second file to compare (text or binary)")
+ parser_diff_addrs = subparsers.add_parser("diff_addrs",
+ help="compute difference between two asmap files for a set of addresses")
+ parser_diff_addrs.add_argument('-s', '--show-addresses', dest="show_addresses", default=False, action="store_true",
+ help="include reassigned addresses in the output")
+ parser_diff_addrs.add_argument("infile1", type=argparse.FileType("rb"),
+ help="first file to compare (text or binary)")
+ parser_diff_addrs.add_argument("infile2", type=argparse.FileType("rb"),
+ help="second file to compare (text or binary)")
+ parser_diff_addrs.add_argument("addrs_file", type=argparse.FileType("r"),
+ help="address file containing getnodeaddresses output to use in the comparison "
+ "(make sure to set the count parameter to zero to get all node addresses, "
+ "e.g. 'bitcoin-cli getnodeaddresses 0 > addrs.json')")
args = parser.parse_args()
if args.subcommand is None:
parser.print_help()
@@ -148,6 +162,33 @@ def main():
f"# {ipv4_changed}{ipv4_change_str} IPv4 addresses changed; "
f"{ipv6_changed}{ipv6_change_str} IPv6 addresses changed"
)
+ elif args.subcommand == "diff_addrs":
+ state1 = load_file(args.infile1)
+ state2 = load_file(args.infile2)
+ address_info = json.load(args.addrs_file)
+ addrs = {a["address"] for a in address_info if a["network"] in ["ipv4", "ipv6"]}
+ reassignments = defaultdict(list)
+ for addr in addrs:
+ net = ipaddress.ip_network(addr)
+ prefix = asmap.net_to_prefix(net)
+ old_asn = state1.lookup(prefix)
+ new_asn = state2.lookup(prefix)
+ if new_asn != old_asn:
+ reassignments[(old_asn, new_asn)].append(addr)
+ reassignments = sorted(reassignments.items(), key=lambda item: len(item[1]), reverse=True)
+ num_reassignment_type = defaultdict(int)
+ for (old_asn, new_asn), reassigned_addrs in reassignments:
+ num_reassigned = len(reassigned_addrs)
+ num_reassignment_type[(bool(old_asn), bool(new_asn))] += num_reassigned
+ old_asn_str = f"AS{old_asn}" if old_asn else "unassigned"
+ new_asn_str = f"AS{new_asn}" if new_asn else "unassigned"
+ opt = ": " + ", ".join(reassigned_addrs) if args.show_addresses else ""
+ print(f"{num_reassigned} address(es) reassigned from {old_asn_str} to {new_asn_str}{opt}")
+ num_reassignments = sum(len(addrs) for _, addrs in reassignments)
+ share = num_reassignments / len(addrs) if len(addrs) > 0 else 0
+ print(f"Summary: {num_reassignments:,} ({share:.2%}) of {len(addrs):,} addresses were reassigned "
+ f"(migrations={num_reassignment_type[True, True]}, assignments={num_reassignment_type[False, True]}, "
+ f"unassignments={num_reassignment_type[True, False]})")
else:
parser.print_help()
sys.exit("No command provided.")
diff --git a/contrib/completions/bash/bitcoin-cli.bash b/contrib/completions/bash/bitcoin-cli.bash
index 89e01bc09a..b04fdbcb0e 100644
--- a/contrib/completions/bash/bitcoin-cli.bash
+++ b/contrib/completions/bash/bitcoin-cli.bash
@@ -9,7 +9,7 @@ _bitcoin_rpc() {
local rpcargs=()
for i in ${COMP_LINE}; do
case "$i" in
- -conf=*|-datadir=*|-regtest|-rpc*|-testnet)
+ -conf=*|-datadir=*|-regtest|-rpc*|-testnet|-testnet4)
rpcargs=( "${rpcargs[@]}" "$i" )
;;
esac
diff --git a/contrib/devtools/bitcoin-tidy/CMakeLists.txt b/contrib/devtools/bitcoin-tidy/CMakeLists.txt
index 1260c71423..c6f683f7ab 100644
--- a/contrib/devtools/bitcoin-tidy/CMakeLists.txt
+++ b/contrib/devtools/bitcoin-tidy/CMakeLists.txt
@@ -25,7 +25,7 @@ find_program(CLANG_TIDY_EXE NAMES "clang-tidy-${LLVM_VERSION_MAJOR}" "clang-tidy
message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
message(STATUS "Found clang-tidy: ${CLANG_TIDY_EXE}")
-add_library(bitcoin-tidy MODULE bitcoin-tidy.cpp logprintf.cpp)
+add_library(bitcoin-tidy MODULE bitcoin-tidy.cpp nontrivial-threadlocal.cpp)
target_include_directories(bitcoin-tidy SYSTEM PRIVATE ${LLVM_INCLUDE_DIRS})
# Disable RTTI and exceptions as necessary
@@ -58,7 +58,7 @@ else()
endif()
# Create a dummy library that runs clang-tidy tests as a side-effect of building
-add_library(bitcoin-tidy-tests OBJECT EXCLUDE_FROM_ALL example_logprintf.cpp)
+add_library(bitcoin-tidy-tests OBJECT EXCLUDE_FROM_ALL example_nontrivial-threadlocal.cpp)
add_dependencies(bitcoin-tidy-tests bitcoin-tidy)
set_target_properties(bitcoin-tidy-tests PROPERTIES CXX_CLANG_TIDY "${CLANG_TIDY_COMMAND}")
diff --git a/contrib/devtools/bitcoin-tidy/bitcoin-tidy.cpp b/contrib/devtools/bitcoin-tidy/bitcoin-tidy.cpp
index 0f34d37793..f2658b5a58 100644
--- a/contrib/devtools/bitcoin-tidy/bitcoin-tidy.cpp
+++ b/contrib/devtools/bitcoin-tidy/bitcoin-tidy.cpp
@@ -2,7 +2,7 @@
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
-#include "logprintf.h"
+#include "nontrivial-threadlocal.h"
#include <clang-tidy/ClangTidyModule.h>
#include <clang-tidy/ClangTidyModuleRegistry.h>
@@ -12,7 +12,7 @@ class BitcoinModule final : public clang::tidy::ClangTidyModule
public:
void addCheckFactories(clang::tidy::ClangTidyCheckFactories& CheckFactories) override
{
- CheckFactories.registerCheck<bitcoin::LogPrintfCheck>("bitcoin-unterminated-logprintf");
+ CheckFactories.registerCheck<bitcoin::NonTrivialThreadLocal>("bitcoin-nontrivial-threadlocal");
}
};
diff --git a/contrib/devtools/bitcoin-tidy/example_logprintf.cpp b/contrib/devtools/bitcoin-tidy/example_logprintf.cpp
deleted file mode 100644
index a12a666c08..0000000000
--- a/contrib/devtools/bitcoin-tidy/example_logprintf.cpp
+++ /dev/null
@@ -1,108 +0,0 @@
-// Copyright (c) 2023 Bitcoin Developers
-// Distributed under the MIT software license, see the accompanying
-// file COPYING or http://www.opensource.org/licenses/mit-license.php.
-
-#include <string>
-
-// Test for bitcoin-unterminated-logprintf
-
-enum LogFlags {
- NONE
-};
-
-enum Level {
- None
-};
-
-template <typename... Args>
-static inline void LogPrintf_(const std::string& logging_function, const std::string& source_file, const int source_line, const LogFlags flag, const Level level, const char* fmt, const Args&... args)
-{
-}
-
-#define LogPrintLevel_(category, level, ...) LogPrintf_(__func__, __FILE__, __LINE__, category, level, __VA_ARGS__)
-#define LogPrintf(...) LogPrintLevel_(LogFlags::NONE, Level::None, __VA_ARGS__)
-
-#define LogPrint(category, ...) \
- do { \
- LogPrintf(__VA_ARGS__); \
- } while (0)
-
-
-class CWallet
-{
- std::string GetDisplayName() const
- {
- return "default wallet";
- }
-
-public:
- template <typename... Params>
- void WalletLogPrintf(const char* fmt, Params... parameters) const
- {
- LogPrintf(("%s " + std::string{fmt}).c_str(), GetDisplayName(), parameters...);
- };
-};
-
-struct ScriptPubKeyMan
-{
- std::string GetDisplayName() const
- {
- return "default wallet";
- }
-
- template <typename... Params>
- void WalletLogPrintf(const char* fmt, Params... parameters) const
- {
- LogPrintf(("%s " + std::string{fmt}).c_str(), GetDisplayName(), parameters...);
- };
-};
-
-void good_func()
-{
- LogPrintf("hello world!\n");
-}
-void good_func2()
-{
- CWallet wallet;
- wallet.WalletLogPrintf("hi\n");
- ScriptPubKeyMan spkm;
- spkm.WalletLogPrintf("hi\n");
-
- const CWallet& walletref = wallet;
- walletref.WalletLogPrintf("hi\n");
-
- auto* walletptr = new CWallet();
- walletptr->WalletLogPrintf("hi\n");
- delete walletptr;
-}
-void bad_func()
-{
- LogPrintf("hello world!");
-}
-void bad_func2()
-{
- LogPrintf("");
-}
-void bad_func3()
-{
- // Ending in "..." has no special meaning.
- LogPrintf("hello world!...");
-}
-void bad_func4_ignored()
-{
- LogPrintf("hello world!"); // NOLINT(bitcoin-unterminated-logprintf)
-}
-void bad_func5()
-{
- CWallet wallet;
- wallet.WalletLogPrintf("hi");
- ScriptPubKeyMan spkm;
- spkm.WalletLogPrintf("hi");
-
- const CWallet& walletref = wallet;
- walletref.WalletLogPrintf("hi");
-
- auto* walletptr = new CWallet();
- walletptr->WalletLogPrintf("hi");
- delete walletptr;
-}
diff --git a/contrib/devtools/bitcoin-tidy/example_nontrivial-threadlocal.cpp b/contrib/devtools/bitcoin-tidy/example_nontrivial-threadlocal.cpp
new file mode 100644
index 0000000000..2b74df5d0e
--- /dev/null
+++ b/contrib/devtools/bitcoin-tidy/example_nontrivial-threadlocal.cpp
@@ -0,0 +1,2 @@
+#include <string>
+thread_local std::string foo;
diff --git a/contrib/devtools/bitcoin-tidy/logprintf.cpp b/contrib/devtools/bitcoin-tidy/logprintf.cpp
deleted file mode 100644
index 36beac28c8..0000000000
--- a/contrib/devtools/bitcoin-tidy/logprintf.cpp
+++ /dev/null
@@ -1,60 +0,0 @@
-// Copyright (c) 2023 Bitcoin Developers
-// Distributed under the MIT software license, see the accompanying
-// file COPYING or http://www.opensource.org/licenses/mit-license.php.
-
-#include "logprintf.h"
-
-#include <clang/AST/ASTContext.h>
-#include <clang/ASTMatchers/ASTMatchFinder.h>
-
-
-namespace {
-AST_MATCHER(clang::StringLiteral, unterminated)
-{
- size_t len = Node.getLength();
- if (len > 0 && Node.getCodeUnit(len - 1) == '\n') {
- return false;
- }
- return true;
-}
-} // namespace
-
-namespace bitcoin {
-
-void LogPrintfCheck::registerMatchers(clang::ast_matchers::MatchFinder* finder)
-{
- using namespace clang::ast_matchers;
-
- /*
- Logprintf(..., ..., ..., ..., ..., "foo", ...)
- */
-
- finder->addMatcher(
- callExpr(
- callee(functionDecl(hasName("LogPrintf_"))),
- hasArgument(5, stringLiteral(unterminated()).bind("logstring"))),
- this);
-
- /*
- auto walletptr = &wallet;
- wallet.WalletLogPrintf("foo");
- wallet->WalletLogPrintf("foo");
- */
- finder->addMatcher(
- cxxMemberCallExpr(
- callee(cxxMethodDecl(hasName("WalletLogPrintf"))),
- hasArgument(0, stringLiteral(unterminated()).bind("logstring"))),
- this);
-}
-
-void LogPrintfCheck::check(const clang::ast_matchers::MatchFinder::MatchResult& Result)
-{
- if (const clang::StringLiteral* lit = Result.Nodes.getNodeAs<clang::StringLiteral>("logstring")) {
- const clang::ASTContext& ctx = *Result.Context;
- const auto user_diag = diag(lit->getEndLoc(), "Unterminated format string used with LogPrintf");
- const auto& loc = lit->getLocationOfByte(lit->getByteLength(), *Result.SourceManager, ctx.getLangOpts(), ctx.getTargetInfo());
- user_diag << clang::FixItHint::CreateInsertion(loc, "\\n");
- }
-}
-
-} // namespace bitcoin
diff --git a/contrib/devtools/bitcoin-tidy/nontrivial-threadlocal.cpp b/contrib/devtools/bitcoin-tidy/nontrivial-threadlocal.cpp
new file mode 100644
index 0000000000..d2bc78a31b
--- /dev/null
+++ b/contrib/devtools/bitcoin-tidy/nontrivial-threadlocal.cpp
@@ -0,0 +1,44 @@
+// Copyright (c) 2023 Bitcoin Developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#include "nontrivial-threadlocal.h"
+
+#include <clang/AST/ASTContext.h>
+#include <clang/ASTMatchers/ASTMatchFinder.h>
+
+
+// Copied from clang-tidy's UnusedRaiiCheck
+namespace {
+AST_MATCHER(clang::CXXRecordDecl, hasNonTrivialDestructor) {
+ // TODO: If the dtor is there but empty we don't want to warn either.
+ return Node.hasDefinition() && Node.hasNonTrivialDestructor();
+}
+} // namespace
+
+namespace bitcoin {
+
+void NonTrivialThreadLocal::registerMatchers(clang::ast_matchers::MatchFinder* finder)
+{
+ using namespace clang::ast_matchers;
+
+ /*
+ thread_local std::string foo;
+ */
+
+ finder->addMatcher(
+ varDecl(
+ hasThreadStorageDuration(),
+ hasType(hasCanonicalType(recordType(hasDeclaration(cxxRecordDecl(hasNonTrivialDestructor())))))
+ ).bind("nontrivial_threadlocal"),
+ this);
+}
+
+void NonTrivialThreadLocal::check(const clang::ast_matchers::MatchFinder::MatchResult& Result)
+{
+ if (const clang::VarDecl* var = Result.Nodes.getNodeAs<clang::VarDecl>("nontrivial_threadlocal")) {
+ const auto user_diag = diag(var->getBeginLoc(), "Variable with non-trivial destructor cannot be thread_local.");
+ }
+}
+
+} // namespace bitcoin
diff --git a/contrib/devtools/bitcoin-tidy/logprintf.h b/contrib/devtools/bitcoin-tidy/nontrivial-threadlocal.h
index db95dfe143..c853073467 100644
--- a/contrib/devtools/bitcoin-tidy/logprintf.h
+++ b/contrib/devtools/bitcoin-tidy/nontrivial-threadlocal.h
@@ -2,18 +2,18 @@
// Distributed under the MIT software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
-#ifndef LOGPRINTF_CHECK_H
-#define LOGPRINTF_CHECK_H
+#ifndef NONTRIVIAL_THREADLOCAL_CHECK_H
+#define NONTRIVIAL_THREADLOCAL_CHECK_H
#include <clang-tidy/ClangTidyCheck.h>
namespace bitcoin {
-// Warn about any use of LogPrintf that does not end with a newline.
-class LogPrintfCheck final : public clang::tidy::ClangTidyCheck
+// Warn about any thread_local variable with a non-trivial destructor.
+class NonTrivialThreadLocal final : public clang::tidy::ClangTidyCheck
{
public:
- LogPrintfCheck(clang::StringRef Name, clang::tidy::ClangTidyContext* Context)
+ NonTrivialThreadLocal(clang::StringRef Name, clang::tidy::ClangTidyContext* Context)
: clang::tidy::ClangTidyCheck(Name, Context) {}
bool isLanguageVersionSupported(const clang::LangOptions& LangOpts) const override
@@ -26,4 +26,4 @@ public:
} // namespace bitcoin
-#endif // LOGPRINTF_CHECK_H
+#endif // NONTRIVIAL_THREADLOCAL_CHECK_H
diff --git a/contrib/devtools/check-deps.sh b/contrib/devtools/check-deps.sh
index 9d2eebe14d..cdfc4e7533 100755
--- a/contrib/devtools/check-deps.sh
+++ b/contrib/devtools/check-deps.sh
@@ -8,11 +8,10 @@ declare -A LIBS
LIBS[cli]="libbitcoin_cli.a"
LIBS[common]="libbitcoin_common.a"
LIBS[consensus]="libbitcoin_consensus.a"
-LIBS[crypto]="crypto/.libs/libbitcoin_crypto_base.a crypto/.libs/libbitcoin_crypto_x86_shani.a crypto/.libs/libbitcoin_crypto_sse41.a crypto/.libs/libbitcoin_crypto_avx2.a"
+LIBS[crypto]="crypto/libbitcoin_crypto.a crypto/libbitcoin_crypto_x86_shani.a crypto/libbitcoin_crypto_sse41.a crypto/libbitcoin_crypto_avx2.a"
LIBS[node]="libbitcoin_node.a"
-LIBS[util]="libbitcoin_util.a"
-LIBS[wallet]="libbitcoin_wallet.a"
-LIBS[wallet_tool]="libbitcoin_wallet_tool.a"
+LIBS[util]="util/libbitcoin_util.a"
+LIBS[wallet]="wallet/libbitcoin_wallet.a"
# Declare allowed dependencies "X Y" where X is allowed to depend on Y. This
# list is taken from doc/design/libraries.md.
@@ -32,43 +31,41 @@ ALLOWED_DEPENDENCIES=(
"wallet common"
"wallet crypto"
"wallet util"
- "wallet_tool util"
- "wallet_tool wallet"
)
# Add minor dependencies omitted from doc/design/libraries.md to keep the
# dependency diagram simple.
ALLOWED_DEPENDENCIES+=(
"wallet consensus"
- "wallet_tool common"
- "wallet_tool crypto"
)
# Declare list of known errors that should be suppressed.
declare -A SUPPRESS
# init.cpp file currently calls Berkeley DB sanity check function on startup, so
# there is an undocumented dependency of the node library on the wallet library.
-SUPPRESS["libbitcoin_node_a-init.o libbitcoin_wallet_a-bdb.o _ZN6wallet27BerkeleyDatabaseSanityCheckEv"]=1
+SUPPRESS["init.cpp.o bdb.cpp.o _ZN6wallet27BerkeleyDatabaseSanityCheckEv"]=1
# init/common.cpp file calls InitError and InitWarning from interface_ui which
# is currently part of the node library. interface_ui should just be part of the
# common library instead, and is moved in
# https://github.com/bitcoin/bitcoin/issues/10102
-SUPPRESS["libbitcoin_common_a-common.o libbitcoin_node_a-interface_ui.o _Z11InitWarningRK13bilingual_str"]=1
-SUPPRESS["libbitcoin_common_a-common.o libbitcoin_node_a-interface_ui.o _Z9InitErrorRK13bilingual_str"]=1
+SUPPRESS["common.cpp.o interface_ui.cpp.o _Z11InitWarningRK13bilingual_str"]=1
+SUPPRESS["common.cpp.o interface_ui.cpp.o _Z9InitErrorRK13bilingual_str"]=1
# rpc/external_signer.cpp adds defines node RPC methods but is built as part of the
# common library. It should be moved to the node library instead.
-SUPPRESS["libbitcoin_common_a-external_signer.o libbitcoin_node_a-server.o _ZN9CRPCTable13appendCommandERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPK11CRPCCommand"]=1
+SUPPRESS["external_signer.cpp.o server.cpp.o _ZN9CRPCTable13appendCommandERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPK11CRPCCommand"]=1
usage() {
echo "Usage: $(basename "${BASH_SOURCE[0]}") [BUILD_DIR]"
}
-# Output makefile targets, converting library .a paths to libtool .la targets
+# Output makefile targets, converting library .a paths to CMake targets
lib_targets() {
for lib in "${!LIBS[@]}"; do
for lib_path in ${LIBS[$lib]}; do
- # shellcheck disable=SC2001
- sed 's:/.libs/\(.*\)\.a$:/\1.la:g' <<<"$lib_path"
+ local name="${lib_path##*/}"
+ name="${name#lib}"
+ name="${name%.a}"
+ echo "$name"
done
done
}
@@ -78,8 +75,8 @@ extract_symbols() {
local temp_dir="$1"
for lib in "${!LIBS[@]}"; do
for lib_path in ${LIBS[$lib]}; do
- nm -o "$lib_path" | grep ' T ' | awk '{print $3, $1}' >> "${temp_dir}/${lib}_exports.txt"
- nm -o "$lib_path" | grep ' U ' | awk '{print $3, $1}' >> "${temp_dir}/${lib}_imports.txt"
+ nm -o "$lib_path" | { grep ' T \| W ' || true; } | awk '{print $3, $1}' >> "${temp_dir}/${lib}_exports.txt"
+ nm -o "$lib_path" | { grep ' U ' || true; } | awk '{print $3, $1}' >> "${temp_dir}/${lib}_imports.txt"
awk '{print $1}' "${temp_dir}/${lib}_exports.txt" | sort -u > "${temp_dir}/${lib}_exported_symbols.txt"
awk '{print $1}' "${temp_dir}/${lib}_imports.txt" | sort -u > "${temp_dir}/${lib}_imported_symbols.txt"
done
@@ -136,7 +133,7 @@ check_disallowed() {
dst_obj=$(obj_names "$symbol" "${temp_dir}/${dst}_exports.txt")
while read src_obj; do
if ! check_suppress "$src_obj" "$dst_obj" "$symbol"; then
- echo "Error: $src_obj depends on $dst_obj symbol '$(c++filt "$symbol")', can suppess with:"
+ echo "Error: $src_obj depends on $dst_obj symbol '$(c++filt "$symbol")', can suppress with:"
echo " SUPPRESS[\"$src_obj $dst_obj $symbol\"]=1"
result=1
fi
@@ -148,7 +145,7 @@ check_disallowed() {
# Declare array to track errors which were suppressed.
declare -A SUPPRESSED
-# Return whether error should be suppressed and record suppresssion in
+# Return whether error should be suppressed and record suppression in
# SUPPRESSED array.
check_suppress() {
local src_obj="$1"
@@ -164,7 +161,7 @@ check_suppress() {
return 1
}
-# Warn about error which were supposed to be suppress, but were not encountered.
+# Warn about error which were supposed to be suppressed, but were not encountered.
check_not_suppressed() {
for suppress in "${!SUPPRESS[@]}"; do
if [[ ! -v SUPPRESSED[$suppress] ]]; then
@@ -175,7 +172,7 @@ check_not_suppressed() {
# Check arguments.
if [ "$#" = 0 ]; then
- BUILD_DIR="$(dirname "${BASH_SOURCE[0]}")/../../src"
+ BUILD_DIR="$(dirname "${BASH_SOURCE[0]}")/../../build"
elif [ "$#" = 1 ]; then
BUILD_DIR="$1"
else
@@ -190,14 +187,17 @@ if [ ! -f "$BUILD_DIR/Makefile" ]; then
fi
# Build libraries and run checks.
-cd "$BUILD_DIR"
# shellcheck disable=SC2046
-make -j"$(nproc)" $(lib_targets)
+cmake --build "$BUILD_DIR" -j"$(nproc)" -t $(lib_targets)
TEMP_DIR="$(mktemp -d)"
+cd "$BUILD_DIR/src"
extract_symbols "$TEMP_DIR"
if check_libraries "$TEMP_DIR"; then
echo "Success! No unexpected dependencies were detected."
+ RET=0
else
echo >&2 "Error: Unexpected dependencies were detected. Check previous output."
+ RET=1
fi
rm -r "$TEMP_DIR"
+exit $RET
diff --git a/contrib/devtools/clang-format-diff.py b/contrib/devtools/clang-format-diff.py
index e2b661d65d..30e804dbe2 100755
--- a/contrib/devtools/clang-format-diff.py
+++ b/contrib/devtools/clang-format-diff.py
@@ -164,7 +164,7 @@ def main():
'Failed to run "%s" - %s"' % (" ".join(command), e.strerror)
)
- stdout, stderr = p.communicate()
+ stdout, _stderr = p.communicate()
if p.returncode != 0:
sys.exit(p.returncode)
diff --git a/contrib/devtools/copyright_header.py b/contrib/devtools/copyright_header.py
index 3dddffe324..3c98ee7b20 100755
--- a/contrib/devtools/copyright_header.py
+++ b/contrib/devtools/copyright_header.py
@@ -19,7 +19,6 @@ EXCLUDE = [
'src/qt/bitcoinstrings.cpp',
'src/chainparamsseeds.h',
# other external copyrights:
- 'src/reverse_iterator.h',
'src/test/fuzz/FuzzedDataProvider.h',
'src/tinyformat.h',
'src/bench/nanobench.h',
diff --git a/contrib/devtools/gen-bitcoin-conf.sh b/contrib/devtools/gen-bitcoin-conf.sh
index 2ebbd42022..d830852c9e 100755
--- a/contrib/devtools/gen-bitcoin-conf.sh
+++ b/contrib/devtools/gen-bitcoin-conf.sh
@@ -72,9 +72,12 @@ cat >> "${EXAMPLE_CONF_FILE}" << 'EOF'
# Options for mainnet
[main]
-# Options for testnet
+# Options for testnet3
[test]
+# Options for testnet4
+[testnet4]
+
# Options for signet
[signet]
diff --git a/contrib/devtools/headerssync-params.py b/contrib/devtools/headerssync-params.py
index 0198f5db99..f8e415532a 100644..100755
--- a/contrib/devtools/headerssync-params.py
+++ b/contrib/devtools/headerssync-params.py
@@ -12,13 +12,13 @@ import random
# Parameters:
# Aim for still working fine at some point in the future. [datetime]
-TIME = datetime(2026, 10, 5)
+TIME = datetime(2027, 4, 1)
# Expected block interval. [timedelta]
BLOCK_INTERVAL = timedelta(seconds=600)
# The number of headers corresponding to the minchainwork parameter. [headers]
-MINCHAINWORK_HEADERS = 804000
+MINCHAINWORK_HEADERS = 856760
# Combined processing bandwidth from all attackers to one victim. [bit/s]
# 6 Gbit/s is approximately the speed at which a single thread of a Ryzen 5950X CPU thread can hash
diff --git a/contrib/devtools/security-check.py b/contrib/devtools/security-check.py
index f57e9abfec..4c20685b51 100755
--- a/contrib/devtools/security-check.py
+++ b/contrib/devtools/security-check.py
@@ -7,6 +7,7 @@ Perform basic security checks on a series of executables.
Exit status will be 0 if successful, and the program will be silent.
Otherwise the exit status will be 1 and it will log which executables failed which checks.
'''
+import re
import sys
import lief
@@ -38,13 +39,13 @@ def check_ELF_RELRO(binary) -> bool:
return have_gnu_relro and have_bindnow
-def check_ELF_Canary(binary) -> bool:
+def check_ELF_CANARY(binary) -> bool:
'''
Check for use of stack canary
'''
return binary.has_symbol('__stack_chk_fail')
-def check_ELF_separate_code(binary):
+def check_ELF_SEPARATE_CODE(binary):
'''
Check that sections are appropriately separated in virtual memory,
based on their permissions. This checks for missing -Wl,-z,separate-code
@@ -105,7 +106,7 @@ def check_ELF_separate_code(binary):
return False
return True
-def check_ELF_control_flow(binary) -> bool:
+def check_ELF_CONTROL_FLOW(binary) -> bool:
'''
Check for control flow instrumentation
'''
@@ -116,6 +117,25 @@ def check_ELF_control_flow(binary) -> bool:
return True
return False
+def check_ELF_FORTIFY(binary) -> bool:
+
+ # bitcoin-util does not currently contain any fortified functions
+ if 'Bitcoin Core bitcoin-util utility version ' in binary.strings:
+ return True
+
+ chk_funcs = set()
+
+ for sym in binary.imported_symbols:
+ match = re.search(r'__[a-z]*_chk', sym.name)
+ if match:
+ chk_funcs.add(match.group(0))
+
+ # ignore stack-protector and bdb
+ chk_funcs.discard('__stack_chk')
+ chk_funcs.discard('__db_chk')
+
+ return len(chk_funcs) >= 1
+
def check_PE_DYNAMIC_BASE(binary) -> bool:
'''PIE: DllCharacteristics bit 0x40 signifies dynamicbase (ASLR)'''
return lief.PE.DLL_CHARACTERISTICS.DYNAMIC_BASE in binary.optional_header.dll_characteristics_lists
@@ -130,7 +150,7 @@ def check_PE_RELOC_SECTION(binary) -> bool:
'''Check for a reloc section. This is required for functional ASLR.'''
return binary.has_relocations
-def check_PE_control_flow(binary) -> bool:
+def check_PE_CONTROL_FLOW(binary) -> bool:
'''
Check for control flow instrumentation
'''
@@ -145,7 +165,7 @@ def check_PE_control_flow(binary) -> bool:
return True
return False
-def check_PE_Canary(binary) -> bool:
+def check_PE_CANARY(binary) -> bool:
'''
Check for use of stack canary
'''
@@ -163,7 +183,7 @@ def check_MACHO_FIXUP_CHAINS(binary) -> bool:
'''
return binary.has_dyld_chained_fixups
-def check_MACHO_Canary(binary) -> bool:
+def check_MACHO_CANARY(binary) -> bool:
'''
Check for use of stack canary
'''
@@ -182,7 +202,7 @@ def check_NX(binary) -> bool:
'''
return binary.has_nx
-def check_MACHO_control_flow(binary) -> bool:
+def check_MACHO_CONTROL_FLOW(binary) -> bool:
'''
Check for control flow instrumentation
'''
@@ -192,7 +212,7 @@ def check_MACHO_control_flow(binary) -> bool:
return True
return False
-def check_MACHO_branch_protection(binary) -> bool:
+def check_MACHO_BRANCH_PROTECTION(binary) -> bool:
'''
Check for branch protection instrumentation
'''
@@ -206,8 +226,8 @@ BASE_ELF = [
('PIE', check_PIE),
('NX', check_NX),
('RELRO', check_ELF_RELRO),
- ('Canary', check_ELF_Canary),
- ('separate_code', check_ELF_separate_code),
+ ('CANARY', check_ELF_CANARY),
+ ('SEPARATE_CODE', check_ELF_SEPARATE_CODE),
]
BASE_PE = [
@@ -216,23 +236,23 @@ BASE_PE = [
('HIGH_ENTROPY_VA', check_PE_HIGH_ENTROPY_VA),
('NX', check_NX),
('RELOC_SECTION', check_PE_RELOC_SECTION),
- ('CONTROL_FLOW', check_PE_control_flow),
- ('Canary', check_PE_Canary),
+ ('CONTROL_FLOW', check_PE_CONTROL_FLOW),
+ ('CANARY', check_PE_CANARY),
]
BASE_MACHO = [
('NOUNDEFS', check_MACHO_NOUNDEFS),
- ('Canary', check_MACHO_Canary),
+ ('CANARY', check_MACHO_CANARY),
('FIXUP_CHAINS', check_MACHO_FIXUP_CHAINS),
]
CHECKS = {
lief.EXE_FORMATS.ELF: {
- lief.ARCHITECTURES.X86: BASE_ELF + [('CONTROL_FLOW', check_ELF_control_flow)],
- lief.ARCHITECTURES.ARM: BASE_ELF,
- lief.ARCHITECTURES.ARM64: BASE_ELF,
- lief.ARCHITECTURES.PPC: BASE_ELF,
- lief.ARCHITECTURES.RISCV: BASE_ELF,
+ lief.ARCHITECTURES.X86: BASE_ELF + [('CONTROL_FLOW', check_ELF_CONTROL_FLOW), ('FORTIFY', check_ELF_FORTIFY)],
+ lief.ARCHITECTURES.ARM: BASE_ELF + [('FORTIFY', check_ELF_FORTIFY)],
+ lief.ARCHITECTURES.ARM64: BASE_ELF + [('FORTIFY', check_ELF_FORTIFY)],
+ lief.ARCHITECTURES.PPC: BASE_ELF + [('FORTIFY', check_ELF_FORTIFY)],
+ lief.ARCHITECTURES.RISCV: BASE_ELF, # Skip FORTIFY. See https://github.com/lief-project/LIEF/issues/1082.
},
lief.EXE_FORMATS.PE: {
lief.ARCHITECTURES.X86: BASE_PE,
@@ -240,39 +260,24 @@ CHECKS = {
lief.EXE_FORMATS.MACHO: {
lief.ARCHITECTURES.X86: BASE_MACHO + [('PIE', check_PIE),
('NX', check_NX),
- ('CONTROL_FLOW', check_MACHO_control_flow)],
- lief.ARCHITECTURES.ARM64: BASE_MACHO + [('BRANCH_PROTECTION', check_MACHO_branch_protection)],
+ ('CONTROL_FLOW', check_MACHO_CONTROL_FLOW)],
+ lief.ARCHITECTURES.ARM64: BASE_MACHO + [('BRANCH_PROTECTION', check_MACHO_BRANCH_PROTECTION)],
}
}
if __name__ == '__main__':
retval: int = 0
for filename in sys.argv[1:]:
- try:
- binary = lief.parse(filename)
- etype = binary.format
- arch = binary.abstract.header.architecture
- binary.concrete
-
- if etype == lief.EXE_FORMATS.UNKNOWN:
- print(f'{filename}: unknown executable format')
- retval = 1
- continue
-
- if arch == lief.ARCHITECTURES.NONE:
- print(f'{filename}: unknown architecture')
- retval = 1
- continue
-
- failed: list[str] = []
- for (name, func) in CHECKS[etype][arch]:
- if not func(binary):
- failed.append(name)
- if failed:
- print(f'{filename}: failed {" ".join(failed)}')
- retval = 1
- except IOError:
- print(f'{filename}: cannot open')
+ binary = lief.parse(filename)
+ etype = binary.format
+ arch = binary.abstract.header.architecture
+ binary.concrete
+
+ failed: list[str] = []
+ for (name, func) in CHECKS[etype][arch]:
+ if not func(binary):
+ failed.append(name)
+ if failed:
+ print(f'{filename}: failed {" ".join(failed)}')
retval = 1
sys.exit(retval)
-
diff --git a/contrib/devtools/symbol-check.py b/contrib/devtools/symbol-check.py
index c4e6bc81e1..1722c7d290 100755
--- a/contrib/devtools/symbol-check.py
+++ b/contrib/devtools/symbol-check.py
@@ -245,7 +245,7 @@ def check_MACHO_sdk(binary) -> bool:
return False
def check_MACHO_lld(binary) -> bool:
- if binary.build_version.tools[0].version == [18, 1, 6]:
+ if binary.build_version.tools[0].version == [18, 1, 8]:
return True
return False
@@ -299,22 +299,14 @@ lief.EXE_FORMATS.PE: [
if __name__ == '__main__':
retval: int = 0
for filename in sys.argv[1:]:
- try:
- binary = lief.parse(filename)
- etype = binary.format
- if etype == lief.EXE_FORMATS.UNKNOWN:
- print(f'{filename}: unknown executable format')
- retval = 1
- continue
-
- failed: list[str] = []
- for (name, func) in CHECKS[etype]:
- if not func(binary):
- failed.append(name)
- if failed:
- print(f'{filename}: failed {" ".join(failed)}')
- retval = 1
- except IOError:
- print(f'{filename}: cannot open')
+ binary = lief.parse(filename)
+ etype = binary.format
+
+ failed: list[str] = []
+ for (name, func) in CHECKS[etype]:
+ if not func(binary):
+ failed.append(name)
+ if failed:
+ print(f'{filename}: failed {" ".join(failed)}')
retval = 1
sys.exit(retval)
diff --git a/contrib/devtools/test-security-check.py b/contrib/devtools/test-security-check.py
index 7bfd4d98da..99f171608d 100755
--- a/contrib/devtools/test-security-check.py
+++ b/contrib/devtools/test-security-check.py
@@ -15,10 +15,10 @@ from utils import determine_wellknown_cmd
def write_testcode(filename):
with open(filename, 'w', encoding="utf8") as f:
f.write('''
- #include <stdio.h>
+ #include <cstdio>
int main()
{
- printf("the quick brown fox jumps over the lazy god\\n");
+ std::printf("the quick brown fox jumps over the lazy god\\n");
return 0;
}
''')
@@ -34,17 +34,17 @@ def env_flags() -> list[str]:
# See the definitions for ac_link in autoconf's lib/autoconf/c.m4 file for
# reference.
flags: list[str] = []
- for var in ['CFLAGS', 'CPPFLAGS', 'LDFLAGS']:
+ for var in ['CXXFLAGS', 'CPPFLAGS', 'LDFLAGS']:
flags += filter(None, os.environ.get(var, '').split(' '))
return flags
-def call_security_check(cc: str, source: str, executable: str, options) -> tuple:
- subprocess.run([*cc,source,'-o',executable] + env_flags() + options, check=True)
+def call_security_check(cxx: str, source: str, executable: str, options) -> tuple:
+ subprocess.run([*cxx,source,'-o',executable] + env_flags() + options, check=True)
p = subprocess.run([os.path.join(os.path.dirname(__file__), 'security-check.py'), executable], stdout=subprocess.PIPE, text=True)
return (p.returncode, p.stdout.rstrip())
-def get_arch(cc, source, executable):
- subprocess.run([*cc, source, '-o', executable] + env_flags(), check=True)
+def get_arch(cxx, source, executable):
+ subprocess.run([*cxx, source, '-o', executable] + env_flags(), check=True)
binary = lief.parse(executable)
arch = binary.abstract.header.architecture
os.remove(executable)
@@ -52,95 +52,77 @@ def get_arch(cc, source, executable):
class TestSecurityChecks(unittest.TestCase):
def test_ELF(self):
- source = 'test1.c'
+ source = 'test1.cpp'
executable = 'test1'
- cc = determine_wellknown_cmd('CC', 'gcc')
+ cxx = determine_wellknown_cmd('CXX', 'g++')
write_testcode(source)
- arch = get_arch(cc, source, executable)
+ arch = get_arch(cxx, source, executable)
if arch == lief.ARCHITECTURES.X86:
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-zexecstack','-Wl,-znorelro','-no-pie','-fno-PIE', '-Wl,-z,separate-code']),
- (1, executable+': failed PIE NX RELRO CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-znorelro','-no-pie','-fno-PIE', '-Wl,-z,separate-code']),
- (1, executable+': failed PIE RELRO CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-znorelro','-no-pie','-fno-PIE', '-Wl,-z,separate-code']),
- (1, executable+': failed PIE RELRO CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-znorelro','-pie','-fPIE', '-Wl,-z,separate-code']),
- (1, executable+': failed RELRO CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-zrelro','-Wl,-z,now','-pie','-fPIE', '-Wl,-z,noseparate-code']),
- (1, executable+': failed separate_code CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-zrelro','-Wl,-z,now','-pie','-fPIE', '-Wl,-z,separate-code']),
- (1, executable+': failed CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-zrelro','-Wl,-z,now','-pie','-fPIE', '-Wl,-z,separate-code', '-fcf-protection=full']),
- (0, ''))
+ pass_flags = ['-D_FORTIFY_SOURCE=3', '-Wl,-znoexecstack', '-Wl,-zrelro', '-Wl,-z,now', '-pie', '-fPIE', '-Wl,-z,separate-code', '-fcf-protection=full']
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-zexecstack']), (1, executable + ': failed NX'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-no-pie','-fno-PIE']), (1, executable + ': failed PIE'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-znorelro']), (1, executable + ': failed RELRO'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-z,noseparate-code']), (1, executable + ': failed SEPARATE_CODE'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-fcf-protection=none']), (1, executable + ': failed CONTROL_FLOW'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-U_FORTIFY_SOURCE']), (1, executable + ': failed FORTIFY'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags), (0, ''))
else:
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-zexecstack','-Wl,-znorelro','-no-pie','-fno-PIE', '-Wl,-z,separate-code']),
- (1, executable+': failed PIE NX RELRO'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-znorelro','-no-pie','-fno-PIE', '-Wl,-z,separate-code']),
- (1, executable+': failed PIE RELRO'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-znorelro','-no-pie','-fno-PIE', '-Wl,-z,separate-code']),
- (1, executable+': failed PIE RELRO'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-znorelro','-pie','-fPIE', '-Wl,-z,separate-code']),
- (1, executable+': failed RELRO'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-zrelro','-Wl,-z,now','-pie','-fPIE', '-Wl,-z,noseparate-code']),
- (1, executable+': failed separate_code'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-znoexecstack','-Wl,-zrelro','-Wl,-z,now','-pie','-fPIE', '-Wl,-z,separate-code']),
- (0, ''))
+ pass_flags = ['-D_FORTIFY_SOURCE=3', '-Wl,-znoexecstack', '-Wl,-zrelro', '-Wl,-z,now', '-pie', '-fPIE', '-Wl,-z,separate-code']
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-zexecstack']), (1, executable + ': failed NX'))
+ # LIEF fails to parse RISC-V with no PIE correctly, and doesn't detect the fortified function,
+ # so skip this test for RISC-V (for now). See https://github.com/lief-project/LIEF/issues/1082.
+ if arch != lief.ARCHITECTURES.RISCV:
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-no-pie','-fno-PIE']), (1, executable + ': failed PIE'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-U_FORTIFY_SOURCE']), (1, executable + ': failed FORTIFY'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-znorelro']), (1, executable + ': failed RELRO'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-z,noseparate-code']), (1, executable + ': failed SEPARATE_CODE'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags), (0, ''))
clean_files(source, executable)
def test_PE(self):
- source = 'test1.c'
+ source = 'test1.cpp'
executable = 'test1.exe'
- cc = determine_wellknown_cmd('CC', 'x86_64-w64-mingw32-gcc')
+ cxx = determine_wellknown_cmd('CXX', 'x86_64-w64-mingw32-g++')
write_testcode(source)
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,--disable-nxcompat','-Wl,--disable-reloc-section','-Wl,--disable-dynamicbase','-Wl,--disable-high-entropy-va','-no-pie','-fno-PIE','-fno-stack-protector']),
- (1, executable+': failed PIE DYNAMIC_BASE HIGH_ENTROPY_VA NX RELOC_SECTION CONTROL_FLOW Canary'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,--nxcompat','-Wl,--disable-reloc-section','-Wl,--disable-dynamicbase','-Wl,--disable-high-entropy-va','-no-pie','-fno-PIE','-fstack-protector-all', '-lssp']),
- (1, executable+': failed PIE DYNAMIC_BASE HIGH_ENTROPY_VA RELOC_SECTION CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,--nxcompat','-Wl,--enable-reloc-section','-Wl,--disable-dynamicbase','-Wl,--disable-high-entropy-va','-no-pie','-fno-PIE','-fstack-protector-all', '-lssp']),
- (1, executable+': failed PIE DYNAMIC_BASE HIGH_ENTROPY_VA CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,--nxcompat','-Wl,--enable-reloc-section','-Wl,--disable-dynamicbase','-Wl,--disable-high-entropy-va','-pie','-fPIE','-fstack-protector-all', '-lssp']),
- (1, executable+': failed PIE DYNAMIC_BASE HIGH_ENTROPY_VA CONTROL_FLOW')) # -pie -fPIE does nothing unless --dynamicbase is also supplied
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,--nxcompat','-Wl,--enable-reloc-section','-Wl,--dynamicbase','-Wl,--disable-high-entropy-va','-pie','-fPIE','-fstack-protector-all', '-lssp']),
- (1, executable+': failed HIGH_ENTROPY_VA CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,--nxcompat','-Wl,--enable-reloc-section','-Wl,--dynamicbase','-Wl,--high-entropy-va','-pie','-fPIE','-fstack-protector-all', '-lssp']),
- (1, executable+': failed CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,--nxcompat','-Wl,--enable-reloc-section','-Wl,--dynamicbase','-Wl,--high-entropy-va','-pie','-fPIE', '-fcf-protection=full','-fstack-protector-all', '-lssp']),
- (0, ''))
+ pass_flags = ['-Wl,--nxcompat', '-Wl,--enable-reloc-section', '-Wl,--dynamicbase', '-Wl,--high-entropy-va', '-pie', '-fPIE', '-fcf-protection=full', '-fstack-protector-all', '-lssp']
+
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-fno-stack-protector']), (1, executable + ': failed CANARY'))
+ # https://github.com/lief-project/LIEF/issues/1076 - in future, we could test this individually.
+ # self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,--disable-reloc-section']), (1, executable + ': failed RELOC_SECTION'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,--disable-nxcompat']), (1, executable + ': failed NX'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,--disable-dynamicbase']), (1, executable + ': failed PIE DYNAMIC_BASE HIGH_ENTROPY_VA')) # -pie -fPIE does nothing without --dynamicbase
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,--disable-high-entropy-va']), (1, executable + ': failed HIGH_ENTROPY_VA'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-fcf-protection=none']), (1, executable + ': failed CONTROL_FLOW'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags), (0, ''))
clean_files(source, executable)
def test_MACHO(self):
- source = 'test1.c'
+ source = 'test1.cpp'
executable = 'test1'
- cc = determine_wellknown_cmd('CC', 'clang')
+ cxx = determine_wellknown_cmd('CXX', 'clang++')
write_testcode(source)
- arch = get_arch(cc, source, executable)
+ arch = get_arch(cxx, source, executable)
if arch == lief.ARCHITECTURES.X86:
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-no_pie','-Wl,-flat_namespace','-fno-stack-protector', '-Wl,-no_fixup_chains']),
- (1, executable+': failed NOUNDEFS Canary FIXUP_CHAINS PIE CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-flat_namespace','-fno-stack-protector', '-Wl,-fixup_chains']),
- (1, executable+': failed NOUNDEFS Canary CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-flat_namespace','-fstack-protector-all', '-Wl,-fixup_chains']),
- (1, executable+': failed NOUNDEFS CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-fstack-protector-all', '-Wl,-fixup_chains']),
- (1, executable+': failed CONTROL_FLOW'))
- self.assertEqual(call_security_check(cc, source, executable, ['-fstack-protector-all', '-fcf-protection=full', '-Wl,-fixup_chains']),
- (0, ''))
+ pass_flags = ['-Wl,-pie', '-fstack-protector-all', '-fcf-protection=full', '-Wl,-fixup_chains']
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-no_pie', '-Wl,-no_fixup_chains']), (1, executable+': failed FIXUP_CHAINS PIE')) # -fixup_chains is incompatible with -no_pie
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-no_fixup_chains']), (1, executable + ': failed FIXUP_CHAINS'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-fno-stack-protector']), (1, executable + ': failed CANARY'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-flat_namespace']), (1, executable + ': failed NOUNDEFS'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-fcf-protection=none']), (1, executable + ': failed CONTROL_FLOW'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags), (0, ''))
else:
- # arm64 darwin doesn't support non-PIE binaries, control flow or executable stacks
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-flat_namespace','-fno-stack-protector', '-Wl,-no_fixup_chains']),
- (1, executable+': failed NOUNDEFS Canary FIXUP_CHAINS BRANCH_PROTECTION'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-flat_namespace','-fno-stack-protector', '-Wl,-fixup_chains', '-mbranch-protection=bti']),
- (1, executable+': failed NOUNDEFS Canary'))
- self.assertEqual(call_security_check(cc, source, executable, ['-Wl,-flat_namespace','-fstack-protector-all', '-Wl,-fixup_chains', '-mbranch-protection=bti']),
- (1, executable+': failed NOUNDEFS'))
- self.assertEqual(call_security_check(cc, source, executable, ['-fstack-protector-all', '-Wl,-fixup_chains', '-mbranch-protection=bti']),
- (0, ''))
-
+ # arm64 darwin doesn't support non-PIE binaries or executable stacks
+ pass_flags = ['-fstack-protector-all', '-Wl,-fixup_chains', '-mbranch-protection=bti']
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-mbranch-protection=none']), (1, executable + ': failed BRANCH_PROTECTION'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-no_fixup_chains']), (1, executable + ': failed FIXUP_CHAINS'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-fno-stack-protector']), (1, executable + ': failed CANARY'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags + ['-Wl,-flat_namespace']), (1, executable + ': failed NOUNDEFS'))
+ self.assertEqual(call_security_check(cxx, source, executable, pass_flags), (0, ''))
clean_files(source, executable)
diff --git a/contrib/devtools/test-symbol-check.py b/contrib/devtools/test-symbol-check.py
index b00004586c..454dbc6bd2 100755
--- a/contrib/devtools/test-symbol-check.py
+++ b/contrib/devtools/test-symbol-check.py
@@ -11,17 +11,17 @@ import unittest
from utils import determine_wellknown_cmd
-def call_symbol_check(cc: list[str], source, executable, options):
+def call_symbol_check(cxx: list[str], source, executable, options):
# This should behave the same as AC_TRY_LINK, so arrange well-known flags
# in the same order as autoconf would.
#
# See the definitions for ac_link in autoconf's lib/autoconf/c.m4 file for
# reference.
env_flags: list[str] = []
- for var in ['CFLAGS', 'CPPFLAGS', 'LDFLAGS']:
+ for var in ['CXXFLAGS', 'CPPFLAGS', 'LDFLAGS']:
env_flags += filter(None, os.environ.get(var, '').split(' '))
- subprocess.run([*cc,source,'-o',executable] + env_flags + options, check=True)
+ subprocess.run([*cxx,source,'-o',executable] + env_flags + options, check=True)
p = subprocess.run([os.path.join(os.path.dirname(__file__), 'symbol-check.py'), executable], stdout=subprocess.PIPE, text=True)
os.remove(source)
os.remove(executable)
@@ -29,13 +29,13 @@ def call_symbol_check(cc: list[str], source, executable, options):
class TestSymbolChecks(unittest.TestCase):
def test_ELF(self):
- source = 'test1.c'
+ source = 'test1.cpp'
executable = 'test1'
- cc = determine_wellknown_cmd('CC', 'gcc')
+ cxx = determine_wellknown_cmd('CXX', 'g++')
# -lutil is part of the libc6 package so a safe bet that it's installed
# it's also out of context enough that it's unlikely to ever become a real dependency
- source = 'test2.c'
+ source = 'test2.cpp'
executable = 'test2'
with open(source, 'w', encoding="utf8") as f:
f.write('''
@@ -48,31 +48,31 @@ class TestSymbolChecks(unittest.TestCase):
}
''')
- self.assertEqual(call_symbol_check(cc, source, executable, ['-lutil']),
+ self.assertEqual(call_symbol_check(cxx, source, executable, ['-lutil']),
(1, executable + ': libutil.so.1 is not in ALLOWED_LIBRARIES!\n' +
executable + ': failed LIBRARY_DEPENDENCIES'))
# finally, check a simple conforming binary
- source = 'test3.c'
+ source = 'test3.cpp'
executable = 'test3'
with open(source, 'w', encoding="utf8") as f:
f.write('''
- #include <stdio.h>
+ #include <cstdio>
int main()
{
- printf("42");
+ std::printf("42");
return 0;
}
''')
- self.assertEqual(call_symbol_check(cc, source, executable, []),
+ self.assertEqual(call_symbol_check(cxx, source, executable, []),
(0, ''))
def test_MACHO(self):
- source = 'test1.c'
+ source = 'test1.cpp'
executable = 'test1'
- cc = determine_wellknown_cmd('CC', 'clang')
+ cxx = determine_wellknown_cmd('CXX', 'clang++')
with open(source, 'w', encoding="utf8") as f:
f.write('''
@@ -86,11 +86,11 @@ class TestSymbolChecks(unittest.TestCase):
''')
- self.assertEqual(call_symbol_check(cc, source, executable, ['-lexpat', '-Wl,-platform_version','-Wl,macos', '-Wl,11.4', '-Wl,11.4']),
+ self.assertEqual(call_symbol_check(cxx, source, executable, ['-lexpat', '-Wl,-platform_version','-Wl,macos', '-Wl,11.4', '-Wl,11.4']),
(1, 'libexpat.1.dylib is not in ALLOWED_LIBRARIES!\n' +
f'{executable}: failed DYNAMIC_LIBRARIES MIN_OS SDK'))
- source = 'test2.c'
+ source = 'test2.cpp'
executable = 'test2'
with open(source, 'w', encoding="utf8") as f:
f.write('''
@@ -103,10 +103,10 @@ class TestSymbolChecks(unittest.TestCase):
}
''')
- self.assertEqual(call_symbol_check(cc, source, executable, ['-framework', 'CoreGraphics', '-Wl,-platform_version','-Wl,macos', '-Wl,11.4', '-Wl,11.4']),
+ self.assertEqual(call_symbol_check(cxx, source, executable, ['-framework', 'CoreGraphics', '-Wl,-platform_version','-Wl,macos', '-Wl,11.4', '-Wl,11.4']),
(1, f'{executable}: failed MIN_OS SDK'))
- source = 'test3.c'
+ source = 'test3.cpp'
executable = 'test3'
with open(source, 'w', encoding="utf8") as f:
f.write('''
@@ -116,13 +116,13 @@ class TestSymbolChecks(unittest.TestCase):
}
''')
- self.assertEqual(call_symbol_check(cc, source, executable, ['-Wl,-platform_version','-Wl,macos', '-Wl,11.0', '-Wl,11.4']),
+ self.assertEqual(call_symbol_check(cxx, source, executable, ['-Wl,-platform_version','-Wl,macos', '-Wl,11.0', '-Wl,11.4']),
(1, f'{executable}: failed SDK'))
def test_PE(self):
- source = 'test1.c'
+ source = 'test1.cpp'
executable = 'test1.exe'
- cc = determine_wellknown_cmd('CC', 'x86_64-w64-mingw32-gcc')
+ cxx = determine_wellknown_cmd('CXX', 'x86_64-w64-mingw32-g++')
with open(source, 'w', encoding="utf8") as f:
f.write('''
@@ -135,11 +135,11 @@ class TestSymbolChecks(unittest.TestCase):
}
''')
- self.assertEqual(call_symbol_check(cc, source, executable, ['-lpdh', '-Wl,--major-subsystem-version', '-Wl,6', '-Wl,--minor-subsystem-version', '-Wl,1']),
+ self.assertEqual(call_symbol_check(cxx, source, executable, ['-lpdh', '-Wl,--major-subsystem-version', '-Wl,6', '-Wl,--minor-subsystem-version', '-Wl,1']),
(1, 'pdh.dll is not in ALLOWED_LIBRARIES!\n' +
executable + ': failed DYNAMIC_LIBRARIES'))
- source = 'test2.c'
+ source = 'test2.cpp'
executable = 'test2.exe'
with open(source, 'w', encoding="utf8") as f:
@@ -150,10 +150,10 @@ class TestSymbolChecks(unittest.TestCase):
}
''')
- self.assertEqual(call_symbol_check(cc, source, executable, ['-Wl,--major-subsystem-version', '-Wl,9', '-Wl,--minor-subsystem-version', '-Wl,9']),
+ self.assertEqual(call_symbol_check(cxx, source, executable, ['-Wl,--major-subsystem-version', '-Wl,9', '-Wl,--minor-subsystem-version', '-Wl,9']),
(1, executable + ': failed SUBSYSTEM_VERSION'))
- source = 'test3.c'
+ source = 'test3.cpp'
executable = 'test3.exe'
with open(source, 'w', encoding="utf8") as f:
f.write('''
@@ -166,7 +166,7 @@ class TestSymbolChecks(unittest.TestCase):
}
''')
- self.assertEqual(call_symbol_check(cc, source, executable, ['-lole32', '-Wl,--major-subsystem-version', '-Wl,6', '-Wl,--minor-subsystem-version', '-Wl,1']),
+ self.assertEqual(call_symbol_check(cxx, source, executable, ['-lole32', '-Wl,--major-subsystem-version', '-Wl,6', '-Wl,--minor-subsystem-version', '-Wl,1']),
(0, ''))
diff --git a/contrib/devtools/test_deterministic_coverage.sh b/contrib/devtools/test_deterministic_coverage.sh
index 23c260b529..885396bb25 100755
--- a/contrib/devtools/test_deterministic_coverage.sh
+++ b/contrib/devtools/test_deterministic_coverage.sh
@@ -81,7 +81,7 @@ if ! command -v gcovr > /dev/null; then
fi
if [[ ! -e ${TEST_BITCOIN_BINARY} ]]; then
- echo "Error: Executable ${TEST_BITCOIN_BINARY} not found. Run \"./configure --enable-lcov\" and compile."
+ echo "Error: Executable ${TEST_BITCOIN_BINARY} not found. Run \"cmake -B build -DCMAKE_BUILD_TYPE=Coverage\" and compile."
exit 1
fi
@@ -90,7 +90,7 @@ get_file_suffix_count() {
}
if [[ $(get_file_suffix_count gcno) == 0 ]]; then
- echo "Error: Could not find any *.gcno files. The *.gcno files are generated by the compiler. Run \"./configure --enable-lcov\" and re-compile."
+ echo "Error: Could not find any *.gcno files. The *.gcno files are generated by the compiler. Run \"cmake -B build -DCMAKE_BUILD_TYPE=Coverage\" and re-compile."
exit 1
fi
@@ -115,7 +115,7 @@ while [[ ${TEST_RUN_ID} -lt ${N_TEST_RUNS} ]]; do
fi
rm "${TEST_OUTPUT_TEMPFILE}"
if [[ $(get_file_suffix_count gcda) == 0 ]]; then
- echo "Error: Running the test suite did not create any *.gcda files. The gcda files are generated when the instrumented test programs are executed. Run \"./configure --enable-lcov\" and re-compile."
+ echo "Error: Running the test suite did not create any *.gcda files. The gcda files are generated when the instrumented test programs are executed. Run \"cmake -B build -DCMAKE_BUILD_TYPE=Coverage\" and re-compile."
exit 1
fi
GCOVR_TEMPFILE=$(mktemp)
diff --git a/contrib/devtools/test_utxo_snapshots.sh b/contrib/devtools/test_utxo_snapshots.sh
deleted file mode 100755
index d7c019f4a6..0000000000
--- a/contrib/devtools/test_utxo_snapshots.sh
+++ /dev/null
@@ -1,209 +0,0 @@
-#!/usr/bin/env bash
-# Demonstrate the creation and usage of UTXO snapshots.
-#
-# A server node starts up, IBDs up to a certain height, then generates a UTXO
-# snapshot at that point.
-#
-# The server then downloads more blocks (to create a diff from the snapshot).
-#
-# We bring a client up, load the UTXO snapshot, and we show the client sync to
-# the "network tip" and then start a background validation of the snapshot it
-# loaded. We see the background validation chainstate removed after validation
-# completes.
-#
-# The shellcheck rule SC2086 (quoted variables) disablements are necessary
-# since this rule needs to be violated in order to get bitcoind to pick up on
-# $EARLY_IBD_FLAGS for the script to work.
-
-export LC_ALL=C
-set -e
-
-BASE_HEIGHT=${1:-30000}
-INCREMENTAL_HEIGHT=20000
-FINAL_HEIGHT=$((BASE_HEIGHT + INCREMENTAL_HEIGHT))
-
-SERVER_DATADIR="$(pwd)/utxodemo-data-server-$BASE_HEIGHT"
-CLIENT_DATADIR="$(pwd)/utxodemo-data-client-$BASE_HEIGHT"
-UTXO_DAT_FILE="$(pwd)/utxo.$BASE_HEIGHT.dat"
-
-# Chosen to try to not interfere with any running bitcoind processes.
-SERVER_PORT=8633
-SERVER_RPC_PORT=8632
-
-CLIENT_PORT=8733
-CLIENT_RPC_PORT=8732
-
-SERVER_PORTS="-port=${SERVER_PORT} -rpcport=${SERVER_RPC_PORT}"
-CLIENT_PORTS="-port=${CLIENT_PORT} -rpcport=${CLIENT_RPC_PORT}"
-
-# Ensure the client exercises all indexes to test that snapshot use works
-# properly with indexes.
-ALL_INDEXES="-txindex -coinstatsindex -blockfilterindex=1"
-
-if ! command -v jq >/dev/null ; then
- echo "This script requires jq to parse JSON RPC output. Please install it."
- echo "(e.g. sudo apt install jq)"
- exit 1
-fi
-
-DUMP_OUTPUT="dumptxoutset-output-$BASE_HEIGHT.json"
-
-finish() {
- echo
- echo "Killing server and client PIDs ($SERVER_PID, $CLIENT_PID) and cleaning up datadirs"
- echo
- rm -f "$UTXO_DAT_FILE" "$DUMP_OUTPUT"
- rm -rf "$SERVER_DATADIR" "$CLIENT_DATADIR"
- kill -9 "$SERVER_PID" "$CLIENT_PID"
-}
-
-trap finish EXIT
-
-# Need to specify these to trick client into accepting server as a peer
-# it can IBD from, otherwise the default values prevent IBD from the server node.
-EARLY_IBD_FLAGS="-maxtipage=9223372036854775207 -minimumchainwork=0x00"
-
-server_rpc() {
- ./src/bitcoin-cli -rpcport=$SERVER_RPC_PORT -datadir="$SERVER_DATADIR" "$@"
-}
-client_rpc() {
- ./src/bitcoin-cli -rpcport=$CLIENT_RPC_PORT -datadir="$CLIENT_DATADIR" "$@"
-}
-server_sleep_til_boot() {
- while ! server_rpc ping >/dev/null 2>&1; do sleep 0.1; done
-}
-client_sleep_til_boot() {
- while ! client_rpc ping >/dev/null 2>&1; do sleep 0.1; done
-}
-server_sleep_til_shutdown() {
- while server_rpc ping >/dev/null 2>&1; do sleep 0.1; done
-}
-
-mkdir -p "$SERVER_DATADIR" "$CLIENT_DATADIR"
-
-echo "Hi, welcome to the assumeutxo demo/test"
-echo
-echo "We're going to"
-echo
-echo " - start up a 'server' node, sync it via mainnet IBD to height ${BASE_HEIGHT}"
-echo " - create a UTXO snapshot at that height"
-echo " - IBD ${INCREMENTAL_HEIGHT} more blocks on top of that"
-echo
-echo "then we'll demonstrate assumeutxo by "
-echo
-echo " - starting another node (the 'client') and loading the snapshot in"
-echo " * first you'll have to modify the code slightly (chainparams) and recompile"
-echo " * don't worry, we'll make it easy"
-echo " - observing the client sync ${INCREMENTAL_HEIGHT} blocks on top of the snapshot from the server"
-echo " - observing the client validate the snapshot chain via background IBD"
-echo
-read -p "Press [enter] to continue" _
-
-echo
-echo "-- Starting the demo. You might want to run the two following commands in"
-echo " separate terminal windows:"
-echo
-echo " watch -n0.1 tail -n 30 $SERVER_DATADIR/debug.log"
-echo " watch -n0.1 tail -n 30 $CLIENT_DATADIR/debug.log"
-echo
-read -p "Press [enter] to continue" _
-
-echo
-echo "-- IBDing the blocks (height=$BASE_HEIGHT) required to the server node..."
-# shellcheck disable=SC2086
-./src/bitcoind -logthreadnames=1 $SERVER_PORTS \
- -datadir="$SERVER_DATADIR" $EARLY_IBD_FLAGS -stopatheight="$BASE_HEIGHT" >/dev/null
-
-echo
-echo "-- Creating snapshot at ~ height $BASE_HEIGHT ($UTXO_DAT_FILE)..."
-server_sleep_til_shutdown # wait for stopatheight to be hit
-# shellcheck disable=SC2086
-./src/bitcoind -logthreadnames=1 $SERVER_PORTS \
- -datadir="$SERVER_DATADIR" $EARLY_IBD_FLAGS -connect=0 -listen=0 >/dev/null &
-SERVER_PID="$!"
-
-server_sleep_til_boot
-server_rpc dumptxoutset "$UTXO_DAT_FILE" > "$DUMP_OUTPUT"
-cat "$DUMP_OUTPUT"
-kill -9 "$SERVER_PID"
-
-RPC_BASE_HEIGHT=$(jq -r .base_height < "$DUMP_OUTPUT")
-RPC_AU=$(jq -r .txoutset_hash < "$DUMP_OUTPUT")
-RPC_NCHAINTX=$(jq -r .nchaintx < "$DUMP_OUTPUT")
-RPC_BLOCKHASH=$(jq -r .base_hash < "$DUMP_OUTPUT")
-
-server_sleep_til_shutdown
-
-echo
-echo "-- Now: add the following to CMainParams::m_assumeutxo_data"
-echo " in src/kernel/chainparams.cpp, and recompile:"
-echo
-echo " {${RPC_BASE_HEIGHT}, AssumeutxoHash{uint256S(\"0x${RPC_AU}\")}, ${RPC_NCHAINTX}, uint256S(\"0x${RPC_BLOCKHASH}\")},"
-echo
-echo
-echo "-- IBDing more blocks to the server node (height=$FINAL_HEIGHT) so there is a diff between snapshot and tip..."
-# shellcheck disable=SC2086
-./src/bitcoind $SERVER_PORTS -logthreadnames=1 -datadir="$SERVER_DATADIR" \
- $EARLY_IBD_FLAGS -stopatheight="$FINAL_HEIGHT" >/dev/null
-
-echo
-echo "-- Starting the server node to provide blocks to the client node..."
-# shellcheck disable=SC2086
-./src/bitcoind $SERVER_PORTS -logthreadnames=1 -debug=net -datadir="$SERVER_DATADIR" \
- $EARLY_IBD_FLAGS -connect=0 -listen=1 >/dev/null &
-SERVER_PID="$!"
-server_sleep_til_boot
-
-echo
-echo "-- Okay, what you're about to see is the client starting up and activating the snapshot."
-echo " I'm going to display the top 14 log lines from the client on top of an RPC called"
-echo " getchainstates, which is like getblockchaininfo but for both the snapshot and "
-echo " background validation chainstates."
-echo
-echo " You're going to first see the snapshot chainstate sync to the server's tip, then"
-echo " the background IBD chain kicks in to validate up to the base of the snapshot."
-echo
-echo " Once validation of the snapshot is done, you should see log lines indicating"
-echo " that we've deleted the background validation chainstate."
-echo
-echo " Once everything completes, exit the watch command with CTRL+C."
-echo
-read -p "When you're ready for all this, hit [enter]" _
-
-echo
-echo "-- Starting the client node to get headers from the server, then load the snapshot..."
-# shellcheck disable=SC2086
-./src/bitcoind $CLIENT_PORTS $ALL_INDEXES -logthreadnames=1 -datadir="$CLIENT_DATADIR" \
- -connect=0 -addnode=127.0.0.1:$SERVER_PORT -debug=net $EARLY_IBD_FLAGS >/dev/null &
-CLIENT_PID="$!"
-client_sleep_til_boot
-
-echo
-echo "-- Initial state of the client:"
-client_rpc getchainstates
-
-echo
-echo "-- Loading UTXO snapshot into client. Calling RPC in a loop..."
-while ! client_rpc loadtxoutset "$UTXO_DAT_FILE" ; do sleep 10; done
-
-watch -n 0.3 "( tail -n 14 $CLIENT_DATADIR/debug.log ; echo ; ./src/bitcoin-cli -rpcport=$CLIENT_RPC_PORT -datadir=$CLIENT_DATADIR getchainstates) | cat"
-
-echo
-echo "-- Okay, now I'm going to restart the client to make sure that the snapshot chain reloads "
-echo " as the main chain properly..."
-echo
-echo " Press CTRL+C after you're satisfied to exit the demo"
-echo
-read -p "Press [enter] to continue"
-
-client_sleep_til_boot
-# shellcheck disable=SC2086
-./src/bitcoind $CLIENT_PORTS $ALL_INDEXES -logthreadnames=1 -datadir="$CLIENT_DATADIR" -connect=0 \
- -addnode=127.0.0.1:$SERVER_PORT "$EARLY_IBD_FLAGS" >/dev/null &
-CLIENT_PID="$!"
-client_sleep_til_boot
-
-watch -n 0.3 "( tail -n 14 $CLIENT_DATADIR/debug.log ; echo ; ./src/bitcoin-cli -rpcport=$CLIENT_RPC_PORT -datadir=$CLIENT_DATADIR getchainstates) | cat"
-
-echo
-echo "-- Done!"
diff --git a/contrib/devtools/utxo_snapshot.sh b/contrib/devtools/utxo_snapshot.sh
deleted file mode 100755
index fbb8591965..0000000000
--- a/contrib/devtools/utxo_snapshot.sh
+++ /dev/null
@@ -1,94 +0,0 @@
-#!/usr/bin/env bash
-#
-# Copyright (c) 2019-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.
-#
-export LC_ALL=C
-
-set -ueo pipefail
-
-NETWORK_DISABLED=false
-
-if (( $# < 3 )); then
- echo 'Usage: utxo_snapshot.sh <generate-at-height> <snapshot-out-path> <bitcoin-cli-call ...>'
- echo
- echo " if <snapshot-out-path> is '-', don't produce a snapshot file but instead print the "
- echo " expected assumeutxo hash"
- echo
- echo 'Examples:'
- echo
- echo " ./contrib/devtools/utxo_snapshot.sh 570000 utxo.dat ./src/bitcoin-cli -datadir=\$(pwd)/testdata"
- echo ' ./contrib/devtools/utxo_snapshot.sh 570000 - ./src/bitcoin-cli'
- exit 1
-fi
-
-GENERATE_AT_HEIGHT="${1}"; shift;
-OUTPUT_PATH="${1}"; shift;
-# Most of the calls we make take a while to run, so pad with a lengthy timeout.
-BITCOIN_CLI_CALL="${*} -rpcclienttimeout=9999999"
-
-# Check if the node is pruned and get the pruned block height
-PRUNED=$( ${BITCOIN_CLI_CALL} getblockchaininfo | awk '/pruneheight/ {print $2}' | tr -d ',' )
-
-if (( GENERATE_AT_HEIGHT < PRUNED )); then
- echo "Error: The requested snapshot height (${GENERATE_AT_HEIGHT}) should be greater than the pruned block height (${PRUNED})."
- exit 1
-fi
-
-# Early exit if file at OUTPUT_PATH already exists
-if [[ -e "$OUTPUT_PATH" ]]; then
- (>&2 echo "Error: $OUTPUT_PATH already exists or is not a valid path.")
- exit 1
-fi
-
-# Validate that the path is correct
-if [[ "${OUTPUT_PATH}" != "-" && ! -d "$(dirname "${OUTPUT_PATH}")" ]]; then
- (>&2 echo "Error: The directory $(dirname "${OUTPUT_PATH}") does not exist.")
- exit 1
-fi
-
-function cleanup {
- (>&2 echo "Restoring chain to original height; this may take a while")
- ${BITCOIN_CLI_CALL} reconsiderblock "${PIVOT_BLOCKHASH}"
-
- if $NETWORK_DISABLED; then
- (>&2 echo "Restoring network activity")
- ${BITCOIN_CLI_CALL} setnetworkactive true
- fi
-}
-
-function early_exit {
- (>&2 echo "Exiting due to Ctrl-C")
- cleanup
- exit 1
-}
-
-# Prompt the user to disable network activity
-read -p "Do you want to disable network activity (setnetworkactive false) before running invalidateblock? (Y/n): " -r
-if [[ "$REPLY" =~ ^[Yy]*$ || -z "$REPLY" ]]; then
- # User input is "Y", "y", or Enter key, proceed with the action
- NETWORK_DISABLED=true
- (>&2 echo "Disabling network activity")
- ${BITCOIN_CLI_CALL} setnetworkactive false
-else
- (>&2 echo "Network activity remains enabled")
-fi
-
-# Block we'll invalidate/reconsider to rewind/fast-forward the chain.
-PIVOT_BLOCKHASH=$($BITCOIN_CLI_CALL getblockhash $(( GENERATE_AT_HEIGHT + 1 )) )
-
-# Trap for normal exit and Ctrl-C
-trap cleanup EXIT
-trap early_exit INT
-
-(>&2 echo "Rewinding chain back to height ${GENERATE_AT_HEIGHT} (by invalidating ${PIVOT_BLOCKHASH}); this may take a while")
-${BITCOIN_CLI_CALL} invalidateblock "${PIVOT_BLOCKHASH}"
-
-if [[ "${OUTPUT_PATH}" = "-" ]]; then
- (>&2 echo "Generating txoutset info...")
- ${BITCOIN_CLI_CALL} gettxoutsetinfo | grep hash_serialized_3 | sed 's/^.*: "\(.\+\)\+",/\1/g'
-else
- (>&2 echo "Generating UTXO snapshot...")
- ${BITCOIN_CLI_CALL} dumptxoutset "${OUTPUT_PATH}"
-fi
diff --git a/contrib/guix/INSTALL.md b/contrib/guix/INSTALL.md
index 35ea83e585..10f5835bb8 100644
--- a/contrib/guix/INSTALL.md
+++ b/contrib/guix/INSTALL.md
@@ -671,6 +671,8 @@ More information: https://github.com/python/cpython/issues/81765
OpenSSL includes tests that will fail once some certificate has expired.
The workarounds from the GnuTLS section immediately below can be used.
+For openssl-1.1.1l use 2022-05-01 as the date.
+
### GnuTLS: test-suite FAIL: status-request-revoked
*The derivation is likely identified by: `/gnu/store/vhphki5sg9xkdhh2pbc8gi6vhpfzryf0-gnutls-3.6.12.drv`*
@@ -705,11 +707,12 @@ authorized.
This workaround was described [here](https://issues.guix.gnu.org/44559#5).
Basically:
-2. Turn off NTP
-3. Set system time to 2020-10-01
-4. guix build --no-substitutes /gnu/store/vhphki5sg9xkdhh2pbc8gi6vhpfzryf0-gnutls-3.6.12.drv
-5. Set system time back to accurate current time
-6. Turn NTP back on
+
+1. Turn off NTP
+2. Set system time to 2020-10-01
+3. guix build --no-substitutes /gnu/store/vhphki5sg9xkdhh2pbc8gi6vhpfzryf0-gnutls-3.6.12.drv
+4. Set system time back to accurate current time
+5. Turn NTP back on
For example,
diff --git a/contrib/guix/README.md b/contrib/guix/README.md
index 6fb647f8a9..5e05e1016e 100644
--- a/contrib/guix/README.md
+++ b/contrib/guix/README.md
@@ -261,6 +261,7 @@ details.
- `guix` build commands as in `guix shell --cores="$JOBS"`
- `make` as in `make --jobs="$JOBS"`
+ - `cmake` as in `cmake --build build -j "$JOBS"`
- `xargs` as in `xargs -P"$JOBS"`
See [here](#controlling-the-number-of-threads-used-by-guix-build-commands) for
diff --git a/contrib/guix/libexec/build.sh b/contrib/guix/libexec/build.sh
index 9bc8c0e75d..3184cd4afe 100755
--- a/contrib/guix/libexec/build.sh
+++ b/contrib/guix/libexec/build.sh
@@ -71,11 +71,9 @@ unset OBJCPLUS_INCLUDE_PATH
export C_INCLUDE_PATH="${NATIVE_GCC}/include"
export CPLUS_INCLUDE_PATH="${NATIVE_GCC}/include/c++:${NATIVE_GCC}/include"
-export OBJC_INCLUDE_PATH="${NATIVE_GCC}/include"
-export OBJCPLUS_INCLUDE_PATH="${NATIVE_GCC}/include/c++:${NATIVE_GCC}/include"
case "$HOST" in
- *darwin*) export LIBRARY_PATH="${NATIVE_GCC}/lib" ;;
+ *darwin*) export LIBRARY_PATH="${NATIVE_GCC}/lib" ;; # Required for qt/qmake
*mingw*) export LIBRARY_PATH="${NATIVE_GCC}/lib" ;;
*)
NATIVE_GCC_STATIC="$(store_path gcc-toolchain static)"
@@ -180,6 +178,14 @@ make -C depends --jobs="$JOBS" HOST="$HOST" \
x86_64_linux_NM=x86_64-linux-gnu-gcc-nm \
x86_64_linux_STRIP=x86_64-linux-gnu-strip
+case "$HOST" in
+ *darwin*)
+ # Unset now that Qt is built
+ unset C_INCLUDE_PATH
+ unset CPLUS_INCLUDE_PATH
+ unset LIBRARY_PATH
+ ;;
+esac
###########################
# Source Tarball Building #
@@ -200,13 +206,13 @@ mkdir -p "$OUTDIR"
###########################
# CONFIGFLAGS
-CONFIGFLAGS="--enable-reduce-exports --disable-bench --disable-gui-tests --disable-fuzz-binary"
+CONFIGFLAGS="-DREDUCE_EXPORTS=ON -DBUILD_BENCH=OFF -DBUILD_GUI_TESTS=OFF -DBUILD_FUZZ_BINARY=OFF"
# CFLAGS
HOST_CFLAGS="-O2 -g"
HOST_CFLAGS+=$(find /gnu/store -maxdepth 1 -mindepth 1 -type d -exec echo -n " -ffile-prefix-map={}=/usr" \;)
case "$HOST" in
- *linux*) HOST_CFLAGS+=" -ffile-prefix-map=${PWD}=." ;;
+ *linux*) HOST_CFLAGS+=" -ffile-prefix-map=${DISTSRC}/src=." ;;
*mingw*) HOST_CFLAGS+=" -fno-ident" ;;
*darwin*) unset HOST_CFLAGS ;;
esac
@@ -224,8 +230,6 @@ case "$HOST" in
*mingw*) HOST_LDFLAGS="-Wl,--no-insert-timestamp" ;;
esac
-# Make $HOST-specific native binaries from depends available in $PATH
-export PATH="${BASEPREFIX}/${HOST}/native/bin:${PATH}"
mkdir -p "$DISTSRC"
(
cd "$DISTSRC"
@@ -233,38 +237,31 @@ mkdir -p "$DISTSRC"
# Extract the source tarball
tar --strip-components=1 -xf "${GIT_ARCHIVE}"
- ./autogen.sh
-
# Configure this DISTSRC for $HOST
# shellcheck disable=SC2086
- env CONFIG_SITE="${BASEPREFIX}/${HOST}/share/config.site" \
- ./configure --prefix=/ \
- --disable-ccache \
- --disable-maintainer-mode \
- --disable-dependency-tracking \
- ${CONFIGFLAGS} \
- ${HOST_CFLAGS:+CFLAGS="${HOST_CFLAGS}"} \
- ${HOST_CXXFLAGS:+CXXFLAGS="${HOST_CXXFLAGS}"} \
- ${HOST_LDFLAGS:+LDFLAGS="${HOST_LDFLAGS}"}
-
- sed -i.old 's/-lstdc++ //g' config.status libtool
+ env CFLAGS="${HOST_CFLAGS}" CXXFLAGS="${HOST_CXXFLAGS}" LDFLAGS="${HOST_LDFLAGS}" \
+ cmake -S . -B build \
+ --toolchain "${BASEPREFIX}/${HOST}/toolchain.cmake" \
+ -DWITH_CCACHE=OFF \
+ ${CONFIGFLAGS}
# Build Bitcoin Core
- make --jobs="$JOBS" ${V:+V=1}
+ cmake --build build -j "$JOBS" ${V:+--verbose}
# Check that symbol/security checks tools are sane.
- make test-security-check ${V:+V=1}
+ cmake --build build --target test-security-check ${V:+--verbose}
# Perform basic security checks on a series of executables.
- make -C src --jobs=1 check-security ${V:+V=1}
+ cmake --build build -j 1 --target check-security ${V:+--verbose}
# Check that executables only contain allowed version symbols.
- make -C src --jobs=1 check-symbols ${V:+V=1}
+ cmake --build build -j 1 --target check-symbols ${V:+--verbose}
mkdir -p "$OUTDIR"
# Make the os-specific installers
case "$HOST" in
*mingw*)
- make deploy ${V:+V=1} BITCOIN_WIN_INSTALLER="${OUTDIR}/${DISTNAME}-win64-setup-unsigned.exe"
+ cmake --build build -j "$JOBS" -t deploy ${V:+--verbose}
+ mv build/bitcoin-win64-setup.exe "${OUTDIR}/${DISTNAME}-win64-setup-unsigned.exe"
;;
esac
@@ -276,20 +273,25 @@ mkdir -p "$DISTSRC"
# Install built Bitcoin Core to $INSTALLPATH
case "$HOST" in
*darwin*)
- make install-strip DESTDIR="${INSTALLPATH}" ${V:+V=1}
+ # This workaround can be dropped for CMake >= 3.27.
+ # See the upstream commit 689616785f76acd844fd448c51c5b2a0711aafa2.
+ find build -name 'cmake_install.cmake' -exec sed -i 's| -u -r | |g' {} +
+
+ cmake --install build --strip --prefix "${INSTALLPATH}" ${V:+--verbose}
;;
*)
- make install DESTDIR="${INSTALLPATH}" ${V:+V=1}
+ cmake --install build --prefix "${INSTALLPATH}" ${V:+--verbose}
;;
esac
case "$HOST" in
*darwin*)
- make deploydir ${V:+V=1}
+ cmake --build build --target deploy ${V:+--verbose}
+ mv build/dist/Bitcoin-Core.zip "${OUTDIR}/${DISTNAME}-${HOST}-unsigned.zip"
mkdir -p "unsigned-app-${HOST}"
cp --target-directory="unsigned-app-${HOST}" \
contrib/macdeploy/detached-sig-create.sh
- mv --target-directory="unsigned-app-${HOST}" dist
+ mv --target-directory="unsigned-app-${HOST}" build/dist
(
cd "unsigned-app-${HOST}"
find . -print0 \
@@ -298,23 +300,18 @@ mkdir -p "$DISTSRC"
| gzip -9n > "${OUTDIR}/${DISTNAME}-${HOST}-unsigned.tar.gz" \
|| ( rm -f "${OUTDIR}/${DISTNAME}-${HOST}-unsigned.tar.gz" && exit 1 )
)
- make deploy ${V:+V=1} OSX_ZIP="${OUTDIR}/${DISTNAME}-${HOST}-unsigned.zip"
;;
esac
(
cd installed
- # Prune libtool and object archives
- find . -name "lib*.la" -delete
- find . -name "lib*.a" -delete
-
case "$HOST" in
*darwin*) ;;
*)
# Split binaries from their debug symbols
{
find "${DISTNAME}/bin" -type f -executable -print0
- } | xargs -0 -P"$JOBS" -I{} "${DISTSRC}/contrib/devtools/split-debug.sh" {} {} {}.dbg
+ } | xargs -0 -P"$JOBS" -I{} "${DISTSRC}/build/split-debug.sh" {} {} {}.dbg
;;
esac
diff --git a/contrib/guix/libexec/prelude.bash b/contrib/guix/libexec/prelude.bash
index 80bfb2875f..428fc41e73 100644
--- a/contrib/guix/libexec/prelude.bash
+++ b/contrib/guix/libexec/prelude.bash
@@ -51,7 +51,7 @@ fi
time-machine() {
# shellcheck disable=SC2086
guix time-machine --url=https://git.savannah.gnu.org/git/guix.git \
- --commit=f0bb724211872cd6158fce6162e0b8c73efed126 \
+ --commit=53396a22afc04536ddf75d8f82ad2eafa5082725 \
--cores="$JOBS" \
--keep-failed \
--fallback \
diff --git a/contrib/guix/manifest.scm b/contrib/guix/manifest.scm
index 44fbfa1c0b..3da98cf651 100644
--- a/contrib/guix/manifest.scm
+++ b/contrib/guix/manifest.scm
@@ -1,5 +1,4 @@
(use-modules (gnu packages)
- (gnu packages autotools)
((gnu packages bash) #:select (bash-minimal))
(gnu packages bison)
((gnu packages certs) #:select (nss-certs))
@@ -22,9 +21,9 @@
((gnu packages tls) #:select (openssl))
((gnu packages version-control) #:select (git-minimal))
(guix build-system cmake)
- (guix build-system gnu)
(guix build-system python)
(guix build-system trivial)
+ (guix download)
(guix gexp)
(guix git-download)
((guix licenses) #:prefix license:)
@@ -91,7 +90,8 @@ chain for " target " development."))
(home-page (package-home-page xgcc))
(license (package-license xgcc)))))
-(define base-gcc gcc-12)
+(define base-gcc gcc-12) ;; 12.4.0
+
(define base-linux-kernel-headers linux-libre-headers-6.1)
(define* (make-bitcoin-cross-toolchain target
@@ -116,10 +116,17 @@ desirable for building Bitcoin Core release binaries."
(package-with-extra-patches binutils
(search-our-patches "binutils-unaligned-default.patch")))
+(define (winpthreads-patches mingw-w64-x86_64-winpthreads)
+ (package-with-extra-patches mingw-w64-x86_64-winpthreads
+ (search-our-patches "winpthreads-remap-guix-store.patch")))
+
(define (make-mingw-pthreads-cross-toolchain target)
"Create a cross-compilation toolchain package for TARGET"
(let* ((xbinutils (binutils-mingw-patches (cross-binutils target)))
- (pthreads-xlibc mingw-w64-x86_64-winpthreads)
+ (machine (substring target 0 (string-index target #\-)))
+ (pthreads-xlibc (winpthreads-patches (make-mingw-w64 machine
+ #:xgcc (cross-gcc target #:xgcc (gcc-mingw-patches base-gcc))
+ #:with-winpthreads? #t)))
(pthreads-xgcc (cross-gcc target
#:xgcc (gcc-mingw-patches mingw-w64-base-gcc)
#:xbinutils xbinutils
@@ -427,6 +434,7 @@ inspecting signatures in Mach-O binaries.")
"--enable-default-ssp=yes",
"--enable-default-pie=yes",
"--enable-standard-branch-protection=yes",
+ "--enable-cet=yes",
building-on)))
((#:phases phases)
`(modify-phases ,phases
@@ -500,13 +508,10 @@ inspecting signatures in Mach-O binaries.")
gzip
xz
;; Build tools
+ gcc-toolchain-12
cmake-minimal
gnu-make
- libtool
- autoconf-2.71
- automake
pkg-config
- bison
;; Scripting
python-minimal ;; (3.10)
;; Git
@@ -515,22 +520,17 @@ inspecting signatures in Mach-O binaries.")
python-lief)
(let ((target (getenv "HOST")))
(cond ((string-suffix? "-mingw32" target)
- (list ;; Native GCC 12 toolchain
- gcc-toolchain-12
- zip
+ (list zip
(make-mingw-pthreads-cross-toolchain "x86_64-w64-mingw32")
nsis-x86_64
nss-certs
osslsigncode))
((string-contains target "-linux-")
- (list ;; Native GCC 12 toolchain
- gcc-toolchain-12
+ (list bison
(list gcc-toolchain-12 "static")
(make-bitcoin-cross-toolchain target)))
((string-contains target "darwin")
- (list ;; Native GCC 11 toolchain
- gcc-toolchain-11
- clang-toolchain-18
+ (list clang-toolchain-18
lld-18
(make-lld-wrapper lld-18 #:lld-as-ld? #t)
python-signapple
diff --git a/contrib/guix/patches/gcc-remap-guix-store.patch b/contrib/guix/patches/gcc-remap-guix-store.patch
index a47ef7a2df..a8b41d485b 100644
--- a/contrib/guix/patches/gcc-remap-guix-store.patch
+++ b/contrib/guix/patches/gcc-remap-guix-store.patch
@@ -1,14 +1,9 @@
-From aad25427e74f387412e8bc9a9d7bbc6c496c792f Mon Sep 17 00:00:00 2001
-From: Andrew Chow <achow101-github@achow101.com>
-Date: Wed, 6 Jul 2022 16:49:41 -0400
-Subject: [PATCH] guix: remap guix store paths to /usr
+Without ffile-prefix-map, the debug symbols will contain paths for the
+guix store which will include the hashes of each package. However, the
+hash for the same package will differ when on different architectures.
+In order to be reproducible regardless of the architecture used to build
+the package, map all guix store prefixes to something fixed, e.g. /usr.
----
- libgcc/Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
-index 851e7657d07..476c2becd1c 100644
--- a/libgcc/Makefile.in
+++ b/libgcc/Makefile.in
@@ -854,7 +854,7 @@ endif
diff --git a/contrib/guix/patches/winpthreads-remap-guix-store.patch b/contrib/guix/patches/winpthreads-remap-guix-store.patch
new file mode 100644
index 0000000000..e1f1a6eba5
--- /dev/null
+++ b/contrib/guix/patches/winpthreads-remap-guix-store.patch
@@ -0,0 +1,17 @@
+Without ffile-prefix-map, the debug symbols will contain paths for the
+guix store which will include the hashes of each package. However, the
+hash for the same package will differ when on different architectures.
+In order to be reproducible regardless of the architecture used to build
+the package, map all guix store prefixes to something fixed, e.g. /usr.
+
+--- a/mingw-w64-libraries/winpthreads/Makefile.in
++++ b/mingw-w64-libraries/winpthreads/Makefile.in
+@@ -478,7 +478,7 @@ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+ SUBDIRS = . tests
+-AM_CFLAGS = -Wall -DWIN32_LEAN_AND_MEAN $(am__append_1)
++AM_CFLAGS = -Wall -DWIN32_LEAN_AND_MEAN $(am__append_1) $(shell find /gnu/store -maxdepth 1 -mindepth 1 -type d -exec echo -n " -ffile-prefix-map={}=/usr" \;)
+ ACLOCAL_AMFLAGS = -I m4
+ lib_LTLIBRARIES = libwinpthread.la
+ include_HEADERS = include/pthread.h include/sched.h include/semaphore.h include/pthread_unistd.h include/pthread_time.h include/pthread_compat.h include/pthread_signal.h
diff --git a/contrib/linearize/linearize-data.py b/contrib/linearize/linearize-data.py
index 24f6b29a26..74d9830705 100755
--- a/contrib/linearize/linearize-data.py
+++ b/contrib/linearize/linearize-data.py
@@ -76,6 +76,16 @@ def getFirstBlockFileId(block_dir_path):
blkId = int(firstBlkFn[3:8])
return blkId
+def read_xor_key(blocks_path):
+ NUM_XOR_BYTES = 8 # From InitBlocksdirXorKey::xor_key.size()
+ try:
+ xor_filename = os.path.join(blocks_path, "xor.dat")
+ with open(xor_filename, "rb") as xor_file:
+ return xor_file.read(NUM_XOR_BYTES)
+ # support also blockdirs created with pre-v28 versions, where no xor key exists yet
+ except FileNotFoundError:
+ return bytes([0] * NUM_XOR_BYTES)
+
# Block header and extent on disk
BlockExtent = namedtuple('BlockExtent', ['fn', 'offset', 'inhdr', 'blkhdr', 'size'])
@@ -95,6 +105,7 @@ class BlockDataCopier:
self.outFname = None
self.blkCountIn = 0
self.blkCountOut = 0
+ self.xor_key = read_xor_key(self.settings['input'])
self.lastDate = datetime.datetime(2000, 1, 1)
self.highTS = 1408893517 - 315360000
@@ -113,6 +124,13 @@ class BlockDataCopier:
self.outOfOrderData = {}
self.outOfOrderSize = 0 # running total size for items in outOfOrderData
+ def read_xored(self, f, size):
+ offset = f.tell()
+ data = bytearray(f.read(size))
+ for i in range(len(data)):
+ data[i] ^= self.xor_key[(i + offset) % len(self.xor_key)]
+ return bytes(data)
+
def writeBlock(self, inhdr, blk_hdr, rawblock):
blockSizeOnDisk = len(inhdr) + len(blk_hdr) + len(rawblock)
if not self.fileOutput and ((self.outsz + blockSizeOnDisk) > self.maxOutSz):
@@ -165,7 +183,7 @@ class BlockDataCopier:
'''Fetch block contents from disk given extents'''
with open(self.inFileName(extent.fn), "rb") as f:
f.seek(extent.offset)
- return f.read(extent.size)
+ return self.read_xored(f, extent.size)
def copyOneBlock(self):
'''Find the next block to be written in the input, and copy it to the output.'''
@@ -190,7 +208,7 @@ class BlockDataCopier:
print("Premature end of block data")
return
- inhdr = self.inF.read(8)
+ inhdr = self.read_xored(self.inF, 8)
if (not inhdr or (inhdr[0] == "\0")):
self.inF.close()
self.inF = None
@@ -207,7 +225,7 @@ class BlockDataCopier:
inLenLE = inhdr[4:]
su = struct.unpack("<I", inLenLE)
inLen = su[0] - 80 # length without header
- blk_hdr = self.inF.read(80)
+ blk_hdr = self.read_xored(self.inF, 80)
inExtent = BlockExtent(self.inFn, self.inF.tell(), inhdr, blk_hdr, inLen)
self.hash_str = calc_hash_str(blk_hdr)
@@ -224,7 +242,7 @@ class BlockDataCopier:
if self.blkCountOut == blkHeight:
# If in-order block, just copy
- rawblock = self.inF.read(inLen)
+ rawblock = self.read_xored(self.inF, inLen)
self.writeBlock(inhdr, blk_hdr, rawblock)
# See if we can catch up to prior out-of-order blocks
@@ -237,7 +255,7 @@ class BlockDataCopier:
# If there is space in the cache, read the data
# Reading the data in file sequence instead of seeking and fetching it later is preferred,
# but we don't want to fill up memory
- self.outOfOrderData[blkHeight] = self.inF.read(inLen)
+ self.outOfOrderData[blkHeight] = self.read_xored(self.inF, inLen)
self.outOfOrderSize += inLen
else: # If no space in cache, seek forward
self.inF.seek(inLen, os.SEEK_CUR)
diff --git a/contrib/seeds/.gitignore b/contrib/seeds/.gitignore
index d9a2451f70..4e0ee74a0b 100644
--- a/contrib/seeds/.gitignore
+++ b/contrib/seeds/.gitignore
@@ -1,2 +1,3 @@
seeds_main.txt
+seeds_test.txt
asmap-filled.dat
diff --git a/contrib/seeds/README.md b/contrib/seeds/README.md
index ad1ac4a64d..10945e5b68 100644
--- a/contrib/seeds/README.md
+++ b/contrib/seeds/README.md
@@ -8,13 +8,20 @@ and remove old versions as necessary (at a minimum when SeedsServiceFlags()
changes its default return value, as those are the services which seeds are added
to addrman with).
-The seeds compiled into the release are created from sipa's DNS seed and AS map
-data. Run the following commands from the `/contrib/seeds` directory:
+The seeds compiled into the release are created from sipa's, achow101's and luke-jr's
+DNS seed, virtu's crawler, and asmap community AS map data. Run the following commands
+from the `/contrib/seeds` directory:
```
curl https://bitcoin.sipa.be/seeds.txt.gz | gzip -dc > seeds_main.txt
-curl https://bitcoin.sipa.be/asmap-filled.dat > asmap-filled.dat
+curl https://mainnet.achownodes.xyz/seeds.txt.gz | gzip -dc >> seeds_main.txt
+curl https://21.ninja/seeds.txt.gz | gzip -dc >> seeds_main.txt
+curl https://luke.dashjr.org/programs/bitcoin/files/charts/seeds.txt >> seeds_main.txt
+curl https://testnet.achownodes.xyz/seeds.txt.gz | gzip -dc > seeds_test.txt
+curl https://raw.githubusercontent.com/asmap/asmap-data/main/latest_asmap.dat > asmap-filled.dat
python3 makeseeds.py -a asmap-filled.dat -s seeds_main.txt > nodes_main.txt
-cat nodes_main_manual.txt >> nodes_main.txt
+python3 makeseeds.py -a asmap-filled.dat -s seeds_test.txt > nodes_test.txt
+# TODO: Uncomment when a seeder publishes seeds.txt.gz for testnet4
+# python3 makeseeds.py -a asmap-filled.dat -s seeds_testnet4.txt -m 30000 > nodes_testnet4.txt
python3 generate-seeds.py . > ../../src/chainparamsseeds.h
```
diff --git a/contrib/seeds/generate-seeds.py b/contrib/seeds/generate-seeds.py
index f67e7b0f4c..72dd5d28cc 100755
--- a/contrib/seeds/generate-seeds.py
+++ b/contrib/seeds/generate-seeds.py
@@ -5,11 +5,12 @@
'''
Script to generate list of seed nodes for kernel/chainparams.cpp.
-This script expects two text files in the directory that is passed as an
+This script expects three text files in the directory that is passed as an
argument:
nodes_main.txt
nodes_test.txt
+ nodes_testnet4.txt
These files must consist of lines in the format
@@ -171,6 +172,9 @@ def main():
g.write('\n')
with open(os.path.join(indir,'nodes_test.txt'), 'r', encoding="utf8") as f:
process_nodes(g, f, 'chainparams_seed_test')
+ g.write('\n')
+ with open(os.path.join(indir,'nodes_testnet4.txt'), 'r', encoding="utf8") as f:
+ process_nodes(g, f, 'chainparams_seed_testnet4')
g.write('#endif // BITCOIN_CHAINPARAMSSEEDS_H\n')
if __name__ == '__main__':
diff --git a/contrib/seeds/makeseeds.py b/contrib/seeds/makeseeds.py
index 7fd0f7158e..0f22046625 100755
--- a/contrib/seeds/makeseeds.py
+++ b/contrib/seeds/makeseeds.py
@@ -10,6 +10,7 @@ import argparse
import collections
import ipaddress
from pathlib import Path
+import random
import re
import sys
from typing import Union
@@ -25,7 +26,7 @@ MAX_SEEDS_PER_ASN = {
'ipv6': 10,
}
-MIN_BLOCKS = 730000
+MIN_BLOCKS = 840000
PATTERN_IPV4 = re.compile(r"^((\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})):(\d+)$")
PATTERN_IPV6 = re.compile(r"^\[([0-9a-z:]+)\]:(\d+)$")
@@ -41,11 +42,13 @@ PATTERN_AGENT = re.compile(
r"0.19.(0|1|2|99)|"
r"0.20.(0|1|2|99)|"
r"0.21.(0|1|2|99)|"
- r"22.(0|1|99)|"
- r"23.(0|1|99)|"
- r"24.(0|1|99)|"
- r"25.(0|1|99)|"
- r"26.(0|99)|"
+ r"22.(0|1|99).0|"
+ r"23.(0|1|99).0|"
+ r"24.(0|1|2|99).(0|1)|"
+ r"25.(0|1|2|99).0|"
+ r"26.(0|1|99).0|"
+ r"27.(0|1|99).0|"
+ r"28.(0|99).0|"
r")")
def parseline(line: str) -> Union[dict, None]:
@@ -86,6 +89,8 @@ def parseline(line: str) -> Union[dict, None]:
if m.group(1) in ['::']: # Not interested in localhost
return None
ipstr = m.group(1)
+ if ipstr.startswith("fc"): # cjdns looks like ipv6 but always begins with fc
+ net = "cjdns"
sortkey = ipstr # XXX parse IPv6 into number, could use name_to_ipv6 from generate-seeds
port = int(m.group(2))
else:
@@ -152,6 +157,7 @@ def filterbyasn(asmap: ASMap, ips: list[dict], max_per_asn: dict, max_per_net: i
ips_ipv46 = [ip for ip in ips if ip['net'] in ['ipv4', 'ipv6']]
ips_onion = [ip for ip in ips if ip['net'] == 'onion']
ips_i2p = [ip for ip in ips if ip['net'] == 'i2p']
+ ips_cjdns = [ip for ip in ips if ip["net"] == "cjdns"]
# Filter IPv46 by ASN, and limit to max_per_net per network
result = []
@@ -176,6 +182,7 @@ def filterbyasn(asmap: ASMap, ips: list[dict], max_per_asn: dict, max_per_net: i
# Add back Onions (up to max_per_net)
result.extend(ips_onion[0:max_per_net])
result.extend(ips_i2p[0:max_per_net])
+ result.extend(ips_cjdns[0:max_per_net])
return result
def ip_stats(ips: list[dict]) -> str:
@@ -185,12 +192,13 @@ def ip_stats(ips: list[dict]) -> str:
if ip is not None:
hist[ip['net']] += 1
- return f"{hist['ipv4']:6d} {hist['ipv6']:6d} {hist['onion']:6d} {hist['i2p']:6d}"
+ return f"{hist['ipv4']:6d} {hist['ipv6']:6d} {hist['onion']:6d} {hist['i2p']:6d} {hist['cjdns']:6d}"
def parse_args():
argparser = argparse.ArgumentParser(description='Generate a list of bitcoin node seed ip addresses.')
argparser.add_argument("-a","--asmap", help='the location of the asmap asn database file (required)', required=True)
argparser.add_argument("-s","--seeds", help='the location of the DNS seeds file (required)', required=True)
+ argparser.add_argument("-m", "--minblocks", help="The minimum number of blocks each node must have", default=MIN_BLOCKS, type=int)
return argparser.parse_args()
def main():
@@ -205,9 +213,10 @@ def main():
with open(args.seeds, 'r', encoding='utf8') as f:
lines = f.readlines()
ips = [parseline(line) for line in lines]
+ random.shuffle(ips)
print('Done.', file=sys.stderr)
- print('\x1b[7m IPv4 IPv6 Onion I2P Pass \x1b[0m', file=sys.stderr)
+ print('\x1b[7m IPv4 IPv6 Onion I2P CJDNS Pass \x1b[0m', file=sys.stderr)
print(f'{ip_stats(ips):s} Initial', file=sys.stderr)
# Skip entries with invalid address.
ips = [ip for ip in ips if ip is not None]
@@ -216,17 +225,18 @@ def main():
ips = dedup(ips)
print(f'{ip_stats(ips):s} After removing duplicates', file=sys.stderr)
# Enforce minimal number of blocks.
- ips = [ip for ip in ips if ip['blocks'] >= MIN_BLOCKS]
+ ips = [ip for ip in ips if ip['blocks'] >= args.minblocks]
print(f'{ip_stats(ips):s} Enforce minimal number of blocks', file=sys.stderr)
# Require service bit 1.
ips = [ip for ip in ips if (ip['service'] & 1) == 1]
print(f'{ip_stats(ips):s} Require service bit 1', file=sys.stderr)
- # Require at least 50% 30-day uptime for clearnet, 10% for onion and i2p.
+ # Require at least 50% 30-day uptime for clearnet, onion and i2p; 10% for cjdns
req_uptime = {
'ipv4': 50,
'ipv6': 50,
- 'onion': 10,
- 'i2p' : 10,
+ 'onion': 50,
+ 'i2p': 50,
+ 'cjdns': 10,
}
ips = [ip for ip in ips if ip['uptime'] > req_uptime[ip['net']]]
print(f'{ip_stats(ips):s} Require minimum uptime', file=sys.stderr)
@@ -244,7 +254,7 @@ def main():
# Sort the results by IP address (for deterministic output).
ips.sort(key=lambda x: (x['net'], x['sortkey']))
for ip in ips:
- if ip['net'] == 'ipv6':
+ if ip['net'] == 'ipv6' or ip["net"] == "cjdns":
print(f"[{ip['ip']}]:{ip['port']}", end="")
else:
print(f"{ip['ip']}:{ip['port']}", end="")
diff --git a/contrib/seeds/nodes_main.txt b/contrib/seeds/nodes_main.txt
index be7607c0f7..d68a5b8d57 100644
--- a/contrib/seeds/nodes_main.txt
+++ b/contrib/seeds/nodes_main.txt
@@ -1,534 +1,1069 @@
-1.253.159.19:8333 # AS9318
-2.152.74.211:8333 # AS12430
+[fc1f:22c3:95dc:a3af:4a93:8251:beb9:1858]:8333
+[fc6d:f562:86a0:791d:8a20:7aa2:8879:2176]:8333
+[fc70:de9d:7fe2:b32:5828:1a3c:d0f:83ec]:8333
+[fc95:6edb:af65:9ea3:cd27:21ef:f5e2:29c6]:8333
+[fca0:151:79ac:8992:b51e:bdc4:6ed9:41be]:8333
+[fcc7:be49:ccd1:dc91:3125:f0da:457d:8ce]:8333
+[fccb:248:11a6:1042:bca:1218:f7ce:7d3d]:8333
+[fcf1:22ff:3070:582f:a873:61bc:4bc1:81bf]:8333
+23zqyu5dxq3gilx5dihlyjh6tbkwombyaks4pbeyg2pqjvv7putq.b32.i2p:0
+26wyxyscoasntccp6k3earcilrykkgzfrdit2zfw5m4patocvuqq.b32.i2p:0
+26xo6ouiqida6fivk7cfirvyss4eqoiefoim6pecdqietfwxnulq.b32.i2p:0
+2dsyxnxzwo6ltuo3hndnoop2qc2pj2czfgmjbjnqrnnxffmr2oaa.b32.i2p:0
+2eshemvuvyahgshefs47wt3eqg3vvxw5jzlxm6lidye5d6zgclja.b32.i2p:0
+2fkjb2o7p4gdj6hjiytgkhvitqwjrn7kmdxzduwiskpycnzhvkwa.b32.i2p:0
+2hjwtokw4mxvtkm5po63kjhyo7lfsarfcgqp2hp5i4epx3qvtnua.b32.i2p:0
+2jgfxxzts6rfr5m2iwklltya2kmuejnkufpt4bavwjhi2j7fmyma.b32.i2p:0
+2jt5aukq3ik7bu4frugi5udkwlckhhgxrzjhjvfzieomkx4agxqq.b32.i2p:0
+2k3lztzfal3k6dl7yrh2jykfa3xpmou2c7cm2ewo4qctkkvbhfvq.b32.i2p:0
+2kb3aja6lo6pu2b27tos64tgo4kxzate2z4ew3mpmksqh6wzjsta.b32.i2p:0
+2muk57255tdm4g273fy7aitrmqnturut6krqojxz76jssrqm2rsa.b32.i2p:0
+2o4zoex2pqqybdyxuwoimn3ke23aqo4fnaglmr4hwhaubhneppoq.b32.i2p:0
+2od4gsib5knkq5fhbmysp3nbehts67nfa26jv6gkesehwycv7tfa.b32.i2p:0
+2ot7eiaasbxhha2txgsjd4e6inugidh6yronjdkiyba5ss3kty2q.b32.i2p:0
+2rbmv3hyr4l42ysvj62dgozlmosdsr65x4dqgvx3axfzyw2uytnq.b32.i2p:0
+2v5nr3u3scbyxd3nkqxinw2pvqqe66y4hc3u6gotil2sgbyivruq.b32.i2p:0
+2vslelcwzyxvvm3rzr2irbvaw7eyillztwfrdd24zshhwhf5rmjq.b32.i2p:0
+2vwlmwbsnm6fiffcl5ngz4g7r4tyieu7j4xmpwlmc2xxl2myd2zq.b32.i2p:0
+2xnwvq4msaylv2aom7nhufsjyqho7qh3gpiej2wbl6imdfalyroq.b32.i2p:0
+2z4qckqjkz2xjwrohij664qlaraxo2ryascslw4ehfjxtltwolzq.b32.i2p:0
+37tmwq2dy4smqg46qkgvs5poca3hceoephgk5onjrgjxyph4ddlq.b32.i2p:0
+3ctq5jucmugxjum2xammfbzgdmsx23ak3peuk64b7vgq5w4z7hqq.b32.i2p:0
+3d5hlguo3yzbzwb7ek46uck2m67u4yuup456wywdvzhzazcu43vq.b32.i2p:0
+3gocb7wc4zvbmmebktet7gujccuux4ifk3kqilnxnj5wpdpqx2hq.b32.i2p:0
+3hziidrpzqvns4jwfqhzb7nydw4mtnnkawperfvnaru3zpup2ihq.b32.i2p:0
+3iixvywxqwns477r6axhylfcteq5bwggy7cmrbutqred54kigwoa.b32.i2p:0
+3jqjyte2k6xnoetygm6gfakisuz3eqxr3fcu4l5kmu3zifpnkhvq.b32.i2p:0
+3oa5fycx3tyechdfgootxcpap7sx7p3sawenrbzyyxrty74rt7zq.b32.i2p:0
+3r7m5mbeogkr6sy66f6g325nsf2jiimtfdn5v6wpxz6uqmsybqja.b32.i2p:0
+3s7zmamgfmlhwvrn5ov32uugbldoka7jxbetu6tjsq3bzkrb5dca.b32.i2p:0
+3uudj6lfywjqrbiplgwoaxpeb2k4ma75mlmpiq7owv3bofwlvadq.b32.i2p:0
+3y4oiw7cglzzshasapfmlte7ixbgpl4js7w2afsd4znemu4ddefa.b32.i2p:0
+42guqsvdee4tmq3qa5mjw5vjkzkkuk5eainecsrsdfex3wyf7twq.b32.i2p:0
+44qb3nfsrer2f4eyh54s7qdvwxiykjrer76jjevcbpdn3i6uayba.b32.i2p:0
+44vneaemid75co5t7rjnp3ofpar52gg2hbqy7cmolfnl2yhjcmpq.b32.i2p:0
+45eh6rxbfli4ju26cqaf63vfs5xx6zgt7hn3uzzz3nem45d4ps6q.b32.i2p:0
+46xory66pc6qxd6glapmcrxujp6wc5swghhbnhybvewxffo37gaq.b32.i2p:0
+47jrlqld6m7abax6mmly23pg4hyapckmx4hhzzsozkgaswqu3nbq.b32.i2p:0
+4b7mcou7wtazoxwxpm5tl4tk7qaalnabd6i7wvnmpv5omvo7ogla.b32.i2p:0
+4dduiytop3qjiodb2jnwvhvnyr6w3y5axz3vzk5qrfefur4fg6qq.b32.i2p:0
+4dixsgdl3bpnkiahm7uanupycpfg53hxobxgm5fsnsvpt2yhalqa.b32.i2p:0
+4lfukvzjcupsvjdtoyealabzbdsp3ar4tjbhxtwypbb2l7m2cpwq.b32.i2p:0
+4lmhn2xqfineeyquxxv5ixozqkn4eyuzcclk626q67impx5hnnhq.b32.i2p:0
+4lommnxazy6c734yycbmzqkodlzcxpwsby5wlmhnhcbygamgwrxa.b32.i2p:0
+4miplwxnwh3lnaag2pjehdyxyzgrfz6yc6vwulbug6jr4rnetzjq.b32.i2p:0
+4nxdyltgdwpfkautpralacdlolzlpwr43cj4ig4gozn5y43gk6nq.b32.i2p:0
+4ripix2seo5ac3bjb4a5louhtbycghyf3leysidy22wnbak7tzjq.b32.i2p:0
+4ro6okb3x64g7u4khhc7rqalmkwkkumbavkcx7vqpcvki2una72a.b32.i2p:0
+4s37ey3w4lncs6xxycnxksbhatfvx2ttgc3obdvpirir4zzjassq.b32.i2p:0
+57shcfzia75ketlrqrnvgxvaijhbtn3snrjw663ank5baj7qr25a.b32.i2p:0
+5agylbfkuwwqnyiqwtgxgqlybokkqfvoxwjbkc732cbot5f2z4nq.b32.i2p:0
+5bqnpm3tqlkygqgu5lnzxxuw6bbjdzqkdbbmlfbzn434qpyj7mtq.b32.i2p:0
+5emthm7lukjah2pnqourmnhjk6zhujrgzjqdevezdf6d6valclia.b32.i2p:0
+5f2sx5ne2cd5mtobr2abegmzwh2o6iie3ylrhgjdkbivjqbdmpeq.b32.i2p:0
+5ikjy5pzgjk37hh7fcknyyhx5v5lkchjqknx7hyrffrj7hv7lybq.b32.i2p:0
+5kog73uwths255tdrwee7dc2pshq6xlukbxtpgn3bbwunm52jwdq.b32.i2p:0
+5mcxlytzx54cd5w6oumos3ab7yya3wxazrqct4uc62f2d2ts3zaq.b32.i2p:0
+5nvlednvsjhp75f75pmlyzaujkzsvwckvvsyuavrslfcq5zgj3ta.b32.i2p:0
+5pjaaexikmlyhl5dihzvqbykuec6uzkyujvvs5bjoi6htlb3oxzq.b32.i2p:0
+5puvvkyv6qr2kaqb2avbqxzhdyiquhk2767omhoa2s52gcnfcx4q.b32.i2p:0
+5rojgskvcimuseeaxpjiohmb6b5r5vs6v6hheay3kemraqvmg6iq.b32.i2p:0
+5unuudrnxqkdgqsrfbsmx3i6iwwthivngtfm7sddptjizpqxphbq.b32.i2p:0
+5xsuuiufbmoncdvwk55rd4qs24oemoutharh5hn62y7pn6rzk6ea.b32.i2p:0
+62srw23f4rrxzs3253g7mb2lbop3pfpsu56g5iiptrao3qoasd4a.b32.i2p:0
+6dkvhlhwoiwpdjpebuemxq66soh6os6xa2sq42dwhfbp3d4sdzga.b32.i2p:0
+6e3bigypatmvcutfntlonhrhpfc5y4hbl4cyabgjv2wt6fhwjx3q.b32.i2p:0
+6hqodynvvfa3yflrcvmpniyn5v3idtkctx7gijdlv5wdd37xnq4a.b32.i2p:0
+6jh4xdqs35lkhqnynxctyhqikcnyplvs4juvgbjt4zdlzrt4uphq.b32.i2p:0
+6mhlke4onpdqcfkae6yi23mefnt24xgvipbo24kqluz2yx6fcuoq.b32.i2p:0
+6mroga77egf2fzs7y46huhxwesppxx6k72jc7h2cznq2fmcaelsq.b32.i2p:0
+6nhfpjg54gdwz2jlp3qzt6mdvkk5fp7jr4bc35ph3k5q7dn6cnfq.b32.i2p:0
+6nhgac6wpmchhcmoy36ypaeu6ubc7fq4sui6phin4zpakj3mmbxa.b32.i2p:0
+6nxoamjjskfftfulrxss5mvob56yuif4fxhix6xsw25igu4h7eea.b32.i2p:0
+6rb4nnnlaatjspeoqx53gi7p2y4fagwtuchl2m2l32hherjgkaya.b32.i2p:0
+6vvxiiqmpcaazzfx5h23a6hppgtmsa75g3oeiil5f5hyvgneq2ha.b32.i2p:0
+6vxaw4dduy3hfoff4atqfkt4dc3yd73wimldeempfrfrh6qyfdxa.b32.i2p:0
+6wtsedonta5yojby77ateqk2opazkduz7bur7loo7ds3r2u6xvaq.b32.i2p:0
+6wxenlvtjz4e74cp5dcy6ew2swj4lgcw4wqt46xbeyzegwfs2eaq.b32.i2p:0
+6ycdrrj4shtvp5y5o5nagxth6e75nrlpngeswptxlzaxaq5ttqja.b32.i2p:0
+76objhdrw6swklvz62by5vfdldugdmjz7rifbkbuae72scbdoj6q.b32.i2p:0
+7767yywxn22on4vt6elw66ondhcck7lqcadp34b22mufecj2wyma.b32.i2p:0
+77dalsgr4vbjkdn3frhiklvegub6abglscaqraiuqwn33c3vtw7a.b32.i2p:0
+7ccbhxe3ojas5ek6gtyqg64mqcdcqkrze43nuwdlofeh5t3frdoq.b32.i2p:0
+7d3mfvmjbyvxtaigtz25w7rbnbqszutcgvoai4glh3zuv34glpxa.b32.i2p:0
+7dqje2cdumk5yef346ws7w5t63cm3jjiib3zmtdxxknaqv5axsua.b32.i2p:0
+7e6xz5pfnwsns43cxi7qygyasyvlfrk7gjeqlm6asl6pbn4xf3kq.b32.i2p:0
+7etpy33vv4lz6wmmn4o3o7hubggsigxnla3eoc4ymcy6deoctwhq.b32.i2p:0
+7fddpunmty7eruhumq2iqa2yw5ckcn6xpsw26pj6csnhnty3jcqa.b32.i2p:0
+7fq6qhlxkxc2zbtshlhef3fv6sodqis4sa4ojf5ehilho6d3kvnq.b32.i2p:0
+7g6nadgsvdk6helddu7nczhhspvb54wgovhxb3djkpd4vbtkydtq.b32.i2p:0
+7hpvrb7clik652nf3s6whlkx4pjxowtpidlz273uzn2st5bymzpa.b32.i2p:0
+7iiic2ikrwmchsnlvw6jn75vpvtuugx7mqebbl6ynl4yit7a6jlq.b32.i2p:0
+7jwvx7eged34ctrgyrt5y6x5p7xzkfpidvwrxjplqywqa5dqlg3a.b32.i2p:0
+7l6l47l7pwi7vfe7romlkpnoqu76dr4gphrdmic4tzdkgiifgz5q.b32.i2p:0
+7owux5a335qgy57z7levn7efo5pnzvlvmbht46ua7cwi5jq6rhwa.b32.i2p:0
+7q2p3tvy4fw335pnmpcykdujnkg273mhqc4ou2iunqsia52bgjoa.b32.i2p:0
+7qsw6acv762ofynms5z2e354tvp2k4527l6ifor7w3uklzaitd3q.b32.i2p:0
+7r4gaxkb2iwndafis2dczac3a2mfssxekexfvf53p7siizugg2wa.b32.i2p:0
+7r4ri53lby2i3xqbgpw3idvhzeku7ubhftlf72ldqkg5kde6dauq.b32.i2p:0
+7rbqtt4zauewbonbcvaiimflvxjkipb5t7gusyp7mfdqlepnkbdq.b32.i2p:0
+7trydzxax7oh34p3totxie57k3xiqvbdc3b2gbpjuda7oyeqo5ia.b32.i2p:0
+7ttjllhoemvcjwg4qzgrcrq2uy3c43ungndomb4eahcsjy25euyq.b32.i2p:0
+7utc6ztzqaljtirabf3l5ynvf3akmzofayid4caia6nd6z6a2ebq.b32.i2p:0
+7wgrywhskd24kqqjvodx6bxnjnv374xlnrwssy7zqd4wza5drqmq.b32.i2p:0
+7wp4rrff3fbrudrj5uzsvq4xofktj5tj7omnpcqw4m7rcjshs3za.b32.i2p:0
+a2zioocy4z3jijn6qzl2grifqd7hvuk6kagjv5maoqrnxwoucdoq.b32.i2p:0
+a57uc45crgyttfs6ij3fr44q4w5ij6yy6fmhbky374au7rtq4s2a.b32.i2p:0
+abxmmqkduni73ki6aazyl5z3b6ebh63cfse43zo2fgvpqo75l7rq.b32.i2p:0
+admfhd2d3gu3vevarjd6tbty7rq7fburhkj74x5uagc4oguvmtzq.b32.i2p:0
+aho2rjopjdeh33fi67pbk3ylrf7gynvxzmw6mpuwufcqyzyxgzba.b32.i2p:0
+ajol74c46igadlezendhvwt56gcmrdcahu4jdabt7o6n4vn2xv6q.b32.i2p:0
+aoop5n4khqbob6fvc2nxyyoleenefrykudtrbtjsh3acsqjjkdqa.b32.i2p:0
+aopnrdf454a46vqnvgcx7gk3k5ua5gvmhtovqodnqgzcc65hf7ha.b32.i2p:0
+aorbiqlyf3gwukti7w2cpe3msp2ak6d4qelya2umhph2gfa4d53a.b32.i2p:0
+aqj2d5wykbhure5yfaudeedomwho4gbz2lg3lhbmd6odhy47edta.b32.i2p:0
+aqtqmjzm6tvrodvmnijfwcn7guwmgshb6yccflkpfi7nacfl5fqa.b32.i2p:0
+asisbyliqgpny4tsgdov6tvmluezz7vukut4yqkpgpxkrl5da7ja.b32.i2p:0
+auceh5qut5hck4gzlh2xjtw5qodginqixew4oteqoziwtg4oc44a.b32.i2p:0
+aue5ldovw4zb2ai3nsjiesdhjhdngga2jofptptao3gdiujcqdfq.b32.i2p:0
+awwhyxxxs7kkb2pvgr563c4n4mazrivrmofw7rdx2zdu34lwzswa.b32.i2p:0
+ay4che3hbd2p6ma5qeo6kb5ghin4dt2nh4bsppcekvjwqfckn7ya.b32.i2p:0
+ayn7r3jdijhcl6t6gexmq45dw2tap2l67rn7xgoisaenkel74wha.b32.i2p:0
+azftalqowzsrodgik4xc3hjfglff5gqxzc5midgvweyv4pruyk3a.b32.i2p:0
+b66s2rpt67dfmhwlsbhkipn6znkc27dfth5j35f3r2ps3ne65awq.b32.i2p:0
+basycxslwal7fte36essc4rp6soksye7elii6erptb2lfrnd2ysq.b32.i2p:0
+bblpml6yi6sfzopy2fr25lstes7f34lignkwue3aun5km6iubw4q.b32.i2p:0
+bfpeg5qpkber4dz5lttdbyto76nsgfno3keozwgm6tozazktaroq.b32.i2p:0
+bh54jdffg6zs3h5cyeqsj62zhi5thxpqnzv2vrhsldr4sbckshoa.b32.i2p:0
+binnt2wbflhyw2yctpudz27dhnxhg6mowmbuxx2tbh4bbpqbzzwa.b32.i2p:0
+bjjzj5jn6eb3ssrw73p52dc7ypr4vmvcf4yezmwojwmkirl72jyq.b32.i2p:0
+bmryplm5iyirjvpgqk7ifhmhbpgjw3qifnlprqmvihtimn2iovhq.b32.i2p:0
+bo6qcl6cofs3cr6ilbxeuskrofdj2ksbhugtocrebapfr3lbqs3a.b32.i2p:0
+brifkruhlkgrj65hffybrjrjqcgdgqs2r7siizb5b2232nruik3a.b32.i2p:0
+bsn5rlu4h3a4xpklhhymxorogxpdgudstloclzshghb4deiui3rq.b32.i2p:0
+btdvfwxmrgnqkhh3rpscp7szj6yybm6w7whxa676rsxia4mta7ta.b32.i2p:0
+bujcpgdp7c35xxqdmly4dyxywaovxfoif7c52j32rvcs33gefeyq.b32.i2p:0
+bwg6m4agxu2fiv3dk5ys424b27wjzbh24d3ewtsb4ed5albmk5pa.b32.i2p:0
+byoucerid5rb2dducaqwepaytvkw4b4l2wmbfkbfgicflfcd4dta.b32.i2p:0
+c3wke4uh6wbgpwzo2zs3l3rfsr2ibsfxernlhxgyrxseuglrd5za.b32.i2p:0
+c3zbgt32o4foia7wdxgc3o42mutmeghhe36glmmnyzs256g77lxq.b32.i2p:0
+c5fk6xjwbfdurepihkdjvligexlzwu64zh2e5sjd5pmhvv34kmaq.b32.i2p:0
+c6c6c6deskut33e6zmoyxwhta6aadtjattbis4pqew2ghnv4gpga.b32.i2p:0
+c6sdbzckovbl7hd5bq5pfkkwc2xtdkx7b357bk3v4vdspzmy34cq.b32.i2p:0
+carg765pk5ef25vhvpu7phus75yp2xmwf4juphulsksqrho5krsa.b32.i2p:0
+cbnfpra6rok5v6z4crifqutx7iwwnwwblczz5tfmq4lkkdj6s5ga.b32.i2p:0
+cdwp7pxcqisoet4klai4ttemesjovum7zqcp2lbcynweol3kqfna.b32.i2p:0
+ciwvimts7zzoyrknhlowmzh35mzx4cluq7uycw3ffcckuov4tjjq.b32.i2p:0
+cmfgxulstg5trnmmssjvdrq5e7taqfta6jpuiqzakqujddhljs4a.b32.i2p:0
+cqdfflsgncsl3ypnwdc6ddwdoev7zcdjseddplzp2ytxhm5wkfia.b32.i2p:0
+csielmejcwnoj6djt7oo5o4amrp6pxpzvfgphbfysf7lwd73ig4a.b32.i2p:0
+cxfxj42wboxtkwkjuakree45xcfdmthek4i7qxruz6jpyff6souq.b32.i2p:0
+cy4wamhhjqg7amanxeifn3jmes2jnuactvjtxovbqqj6x6zveqba.b32.i2p:0
+czarxkemfnh5npq3jvgeaaygz2p3dnmntgu3njz64eo5fzuv2rba.b32.i2p:0
+czr6xr2b6mxgkym6fjabegjzgcixq4ajcgexxw2mhsuu3uvhhxga.b32.i2p:0
+d4ep754ddqs4xxdhkgxzss4a7mbfa23eavmmnghgjsefnzckt6yq.b32.i2p:0
+d6dnfifawlzft2qgv2pgb2h7dekx7r4fjp6vog32hqpriy66pwka.b32.i2p:0
+day3hgxyrtwjslt54sikevbhxxs4qzo7d6vi72ipmscqtq3qmijq.b32.i2p:0
+ddq7hqixl72qxppylrwnmi57zlguqrcwjurf6myvwqmtb3l2f4ja.b32.i2p:0
+ddtuamdoynsa4r543psethu4ygfuwvcc7ftlb24ak2n35gnmekha.b32.i2p:0
+dmed6el2h56j5kno7xocalj6k7ehosyr2fbwcrk5yf62c3edcodq.b32.i2p:0
+dod6rjcelojfcjyyasqscgae5wvriru2fwdog63pxvkxmuneswoq.b32.i2p:0
+doz2ddulyddrium7kvkbfmsj65b7d2tunrj6kyzhzgsbka6ylsnq.b32.i2p:0
+dsi67lqt3t6uhkqyptlnaib3ja3y2o32umwcbluls2aiozf2qf2q.b32.i2p:0
+duivxnrpflxpwa2nd5uijndlfupqdpu6g7c4wnmxfl2uncevsocq.b32.i2p:0
+dw7oovp44knhrikivfmt3hs2lz2trlpb7xout6dlinfnzxeac3sa.b32.i2p:0
+dy2ch6am32vyobauxiv4vfdrijzzh2a3vaumaaip25m3gosmxoma.b32.i2p:0
+dzfqla37in4xpg3pa4auekc4vpjt6pa74zfd3rhiew2jurffk6aq.b32.i2p:0
+dzkszdiwq3vretzqitqabbxrdv35itzr3dlcfjskw54eya6cwcta.b32.i2p:0
+e2rqlug3nweslh2f4egq5jtbgfpfxvjwjxtxunka2ijszeuyq3ea.b32.i2p:0
+e55k6wu46rzp4pg5pk5npgbr3zz45bc3ihtzu2xcye5vwnzdy7pq.b32.i2p:0
+e6qoyaetj3zf5jmavn44avsjdynx6oc6lxdgxfsq2bq3zue4nyeq.b32.i2p:0
+eciohu5nq7vsvwjjc52epskuk75d24iccgzmhbzrwonw6lx4gdva.b32.i2p:0
+ecxzxtzwyfwvm5yyaibc5w3ui66fri5a6m7tdsoqhupzqqpsmxnq.b32.i2p:0
+edo6wfaor7oa6rmyayeisqd7kfnbyzllbysvzijhmskgxxdjw7ta.b32.i2p:0
+efj265k4vn5t3vq3vup7zkkoa7dlqbwlhhy7pvxjrqlin3n2hwoq.b32.i2p:0
+eg4j6ftn4bkovxxlazghurrgntw2pmzwvegfnbl3cocdausdawia.b32.i2p:0
+ehgib44c4gpp4oonk2tbrgsns64gx2ituv3426ztv6unryxwlhda.b32.i2p:0
+ejq34wotitjk7o5xmxdlx6zakrxchwwtk4vggpfpxx2abyacrh2q.b32.i2p:0
+ekiqvbeqqbnl6iyf5nfk4kjwcmq23whgmpkp4kawahygzz35jfwa.b32.i2p:0
+eomxrmmgfcqcr7zt6zltzu3l2pgev7sdmfjmsp2mp5cwt3y2wfxa.b32.i2p:0
+erbey2sswwn64gurd76youjvn2eamgff5hasriomgq67ocdm67hq.b32.i2p:0
+ety7tckj2ecrjizdcgjfczkc6wmabd7lwlwkc2loel5j3yzqaqaq.b32.i2p:0
+eubmbzk6rtpu3utz4crdwvm2jy564cywwwrw6dz7l2kfzvaiyuha.b32.i2p:0
+euzazzt6gnefk4y4bx44wcfgmublb64s443iih5t2bypioljw6tq.b32.i2p:0
+eyf6do7m3decbzpcr56brke5xmkxwpaa6ohexqx7atq67ceswvra.b32.i2p:0
+ezypdnfzphgy34e5kum2vxc4jk4ufc3vyl7xpnrshbigktfahuga.b32.i2p:0
+fbiz5d5suop3oecitb5gxytiggogivc56cztyb24xxjybb5gxgea.b32.i2p:0
+fbueucoovpqcd7k4klzfeflkduquqbtmqsjewpxl33kogiamtsga.b32.i2p:0
+fegsqsam453itjjhbxdoubeczzf7imdunegspi25efiswcrqmcgq.b32.i2p:0
+filwk3wdvtdeea7hgill2jc6mtnktesmp5jgc6g6ttr4x5cfy3aq.b32.i2p:0
+fjokxa2rjo5e7prepab3sezr7ii7jcuczu6hltgvddjbxp7njnha.b32.i2p:0
+fk26lfbo2hpfhmzkn3gm6kxjsd2wcszx6arbzv3z2f7c4hs4nkea.b32.i2p:0
+fkp4yg7glca6aicbec6p6n3ubb75cnyliruc5wluczsmit3manrq.b32.i2p:0
+fmuobwciypvans7dywogex6zmb7ld3k7g34rxknwvam6jicdthua.b32.i2p:0
+fnwnlkjfysevosm3skxf6lnc2a5ff3lywvustjkpib52f5gprteq.b32.i2p:0
+foc3ole3bfsxzz6sxufnwzhx72cijco6oefwggh6a7mx7kytbk3a.b32.i2p:0
+fqirohoqilnpkpgsrmbv36urfl4rmpbtabyrujihndaes44o7yzq.b32.i2p:0
+furug6s4djbinoeocgat6rybo7pvvkyfwzbxmgsndjxm2xl4rcea.b32.i2p:0
+futppfdivsek32sxzumcnok5pozmkxmybisd42mazwtdiovmtwla.b32.i2p:0
+fviyvz6qwaktg6vltzzad4osrxciipuvepu3v66gw7lo736cohca.b32.i2p:0
+fxoblyaiu6wgo4ltza3tjvsa3kdzyhbiiinlmrlbztsiwbfmilxq.b32.i2p:0
+g26gn3gslz3qhaasluxrz2ldpa5dhqvbcwunmxafpwb5ct4ghl2a.b32.i2p:0
+g5ayhhbanipee5wyehvfsf5cuqn2djl6xvrcmuv2r7us6mrcl7da.b32.i2p:0
+g5yzfhaelbngq3zqfpufdrpntpqr5urnoteaxmnzqkcsfuqs5svq.b32.i2p:0
+g6fd7bu2oae43dui7zzw34n47bnhbt3mjokfajf46zgf6ta7wbja.b32.i2p:0
+g6zvxkdudv6jandpsod7b5ys4k5omzcm2jv5ga33ze6vunhqufra.b32.i2p:0
+ga25oahtxga27pmece3snv2vlpcim4gitvzjl42mc3oxkhclxgja.b32.i2p:0
+gd5r6jobykemsb3beip7kaham3tyfr23w7lrkjvo3zagrgbrgnjq.b32.i2p:0
+gehtac45oaghz54ypyopim64mql7oad2bqclla74l6tfeolzmodq.b32.i2p:0
+gevhyfmgocdedifop2e6chs3xesb3dufjpwwsqyhjh7mf6qx22jq.b32.i2p:0
+gfartwr6pkbz4a356heez436fw5im4thimitetn6sdsq55prb74q.b32.i2p:0
+gffp4p6gsjptgrji5bm7bxybnaqctjosmdso2i3peqpuwwdjdezq.b32.i2p:0
+gfysvso2uoeulc7t4djkgpafxdko3kr5mvucidibgja2sc3aod5q.b32.i2p:0
+ghuf53y3dxdnxgjjxast56jcsjohoxffc45mbx5wvx23mt6q6nkq.b32.i2p:0
+ghvmoyhep4sayhgen7c2pcg575aiihrwlcngm7lxxqtbymbgmiha.b32.i2p:0
+ghvxfggh6bhu4qmqkepurafpvvqmab534zsbv4qrz5x6pt6wgfuq.b32.i2p:0
+gmdyky27756xd4dcky734kuqiojgwdbhavz6ou73dpkg2xhwjrsq.b32.i2p:0
+gmsk6rh4ya4qtsniu2uhehxavxarfmeojbe7sbj22opq6g2rsmha.b32.i2p:0
+gqerl5bp6brqik4pxagwldb6d2sy5enbxav7y2a4ttgeczlk6dzq.b32.i2p:0
+gracsh4efegi54gsmgqpvkqpmqxumrw2hnjuouvawg24hl7ffbea.b32.i2p:0
+gt3w2l4fdh5xq3vtcgz2qr64lx6wi2zqgrxju7dxrroejemn4x5q.b32.i2p:0
+gya5qjekil4fezub57z73pwccsshktot2bnr7wckhmbfwx5mzmja.b32.i2p:0
+gyde2opnhd3wvwalasugxmelkhd3f7tsesyuhppo7sbzz5wsaemq.b32.i2p:0
+h4x4ur4lr5rcspnenmzy6i5pa3e3pdtsyvnff5u5lh3vedv63qvq.b32.i2p:0
+h4yswxrmlmep4m3qu4fp6od2p7lioodmjp4zripxph7bfvmy34la.b32.i2p:0
+h5rbl7ltuivi6gx4iop4icjpvkp2rtm6tnweddkrqkbcwldhz35q.b32.i2p:0
+h63rqifntenj6titygonng376oval5vgp2gtz72uuzxfzjy7g24q.b32.i2p:0
+hcv5zizlrdemafcezwzchu7klydbrquutmdvr5vwaawdcpcwouyq.b32.i2p:0
+hgb3jvlzx2lqrgwshzkzqchw3kmwdlpam5y6j6wlwajqo3sbmdba.b32.i2p:0
+hhneoshcc76hb5pa5vq2pg7va4xe3ikbnacdzurbzbdsygbihiia.b32.i2p:0
+hj6kfjp6yusezysuvaxendfv2byw2erniku6lztfka736g5ia7qq.b32.i2p:0
+hlz7kz7pkh6tr7buzfgnysrwnhkhp7mu76hbmh2nn7b22l5vs5rq.b32.i2p:0
+hnmrabzioiwxj64ih237rxf2zbdttfndiepp7vikt2jko7ovvrkq.b32.i2p:0
+hnxxsx7stxzesijof4fgr4xxysunipnivnxc3lqj2lefs7k7dqfa.b32.i2p:0
+hpalvgj7fh3by7n2v6ha3qsv6hv7qf4jcovtegbqlttgto33fc7a.b32.i2p:0
+hvafnot34y5uycrdkkue3grpa5smiosvl3nhoeiqk6b6en325yoa.b32.i2p:0
+hxoaugx3mwnypgjkm33vidgp4vt6thpckrfaqfgifyn2bzkyjmfa.b32.i2p:0
+hxw6inru6crfmkui4xjjucwdj5pffej5ke67zynbg6hw3bgrehoq.b32.i2p:0
+hyrmdeqafuv63ydnihuwnuhaanblitletw57qu4ytgkgus5eszca.b32.i2p:0
+hyxogpxrpnrjysofu4gr5jdptftwjjlz6thqxefsafctct2hcxwq.b32.i2p:0
+i2k32sb3fmkhemu2gzm7h4m24ubcgqdohhgq44qya7zbkrgw6mua.b32.i2p:0
+i2x72j2oejknudedxsbaxl6amq6a7phifs63bfnvnuxxfd2de7xq.b32.i2p:0
+i2yx56vnsicamm5nzszd6atxgxy2ltjufva6jkfujer3a3pojcja.b32.i2p:0
+i4cebpfoieapy7uxny7rjvnz7jl7rqv53sflga54papl4qycl7ea.b32.i2p:0
+i7ygposcafodsmzuiotuup7qjgyklv3tuah2r7rzuwwk4mmjb4tq.b32.i2p:0
+if5nrcqnju2by5r6n2mxmggq6zw2qdsctj3edpqmjmvqk6ndtkaa.b32.i2p:0
+ihaiw7hs6obvpj4eho6yqagi4ecuf5ber6hlvouprif4zfxr72ga.b32.i2p:0
+ii7ra5loq7nw43kxjtr6tdhf6clvtnfqqatnaz2mtr6pf5hyelbq.b32.i2p:0
+ilsxmoyndew4ed2gglf5mbwoo4we5tt6qmp4kzvzyzvwev2isf7q.b32.i2p:0
+inwsvefcxszherj6bxn7ou7svsitty25637hz4ifyn7xzrbh74tq.b32.i2p:0
+iub2v6hygn4znn34nw2zuihupczrcpniq2bdilvslldlsucfrrqa.b32.i2p:0
+ixhgawpp5anrlwxxgfun4zl3m5xhlxassszncph4i4e6aymb5fqq.b32.i2p:0
+j225nrmndwviihpe7ib6mm5h723cg62wrb7vnwofopv472ue3zwa.b32.i2p:0
+j26gpaan5ablb56k4rtbeamv3ihd4vdzdv74dw4kkevxruapwarq.b32.i2p:0
+jh7ev4a5zfzmeyekinhtbqfi6c7xhvc4msdpyi67j3sxl6r44ukq.b32.i2p:0
+jhxhwfiqysrj5dipbtdokif25ahsj75atdqrbloy564me5lxeada.b32.i2p:0
+jkszx66voakpa72effkj2xxjn4qglsidwejmxomqychvnypgq7fa.b32.i2p:0
+jl4vr5kac7njyltivn7ut5afyq5ipzc5woxl4523emodxixci3zq.b32.i2p:0
+jlczqz5nill3vscbjx4jfm5ogxdk3fznvssytzjano2uhem4wvra.b32.i2p:0
+jndr5i4qhxs6aa2bqvufrgttq6enavyghi54dqfuku2qnstdqa5a.b32.i2p:0
+jprlg3owt37gubh33q2hlz2kx34vdxu464p5pqa4yhwafxnpupma.b32.i2p:0
+jrert3o2rhbkpquybwg7tq4bdvlxeh6lnlcr5ddexkuguvi2l2pq.b32.i2p:0
+jrgzkopi5pqtnb4weo7yti2igm7g2ene4aggzdcrrjxlg3nln7ra.b32.i2p:0
+jrvg22xvbmjyrkqg7mr622zhnda3ijtua65cqngwrven7sf5zd7q.b32.i2p:0
+jsg4dsxvgjcqz3c2qgtwi4ip3l4n4hlxodbvgukwaipycwo26zua.b32.i2p:0
+jsjuwfzebgcyehvh5m33iv6d6cdpokeakfh3vnsqvpubicc73qna.b32.i2p:0
+jvaoh33cpczp626ldwr4azh4hb5cjmxlbz3dq3cxisdlzn7z25eq.b32.i2p:0
+jwqlvqmfvodnrslde2idqt25qxiyvgqdlr2q4uod5s6lkmlempya.b32.i2p:0
+jxqyize2ct6mm3jvvzavm2zbccsoe5qd4ekqo7zgt75rzz3mni3q.b32.i2p:0
+k5oyn7higpqwarsh3ukdgmx3z6tvqcwju4xawrge6aaswrdnoo3a.b32.i2p:0
+k5vjrlzt33dhk3wossfn5depmvy5txbivpvz3wr52maaijgxhztq.b32.i2p:0
+kbawcieyelwwitrjow537zpmdkncwiq42rhjgayw5o7u562mk23a.b32.i2p:0
+khxruoaom7juockko2tbxqo3bnrjmoqjhdoady3yyr4qacz4somq.b32.i2p:0
+klsaj4g2jh7w7gxwctniktg3hqwspm7zlkwtsaxw4nu35jssjasq.b32.i2p:0
+km3b5j6cqrcqewdpuveibptw5gguwktwan36jlow4xykpg2dgr6a.b32.i2p:0
+koh74kvbfguiam33fsefdlks5htuckvb3hy36vhbmvwhrqlxpbma.b32.i2p:0
+kteedl3k6kw7kgn5gbrqbdlxvmqbgiataunqrqtni6uw7uykof6q.b32.i2p:0
+kw3v6gq5semgt4gg6itum3qtaylanyof7wn6bnbngdeby4xixuoa.b32.i2p:0
+l6o5pefljcg2ffdrbvatzc37a2dkxrnd25z7vxkim2t3zmszwshq.b32.i2p:0
+lc54ao2ovn6awezl6ogpxd3xakew46otdu7uly5agtbdmifkgp4q.b32.i2p:0
+liu75cvktv4icbctg72w7nxbk4eibt7wamizfdii4omz7gcke5vq.b32.i2p:0
+lknjmixwvxzla3cgvb5qmpbehqpfflujcapn5mhkku63xaagxgsa.b32.i2p:0
+llavu6nhg2opvap2l35ufi277z7ew2wntepvornuav4t6fmpmfza.b32.i2p:0
+lmxiapsgob5aqje6ofu4npxoc5gnjtbfdgys5ceb4hbscortlzyq.b32.i2p:0
+lpektonr2uyiohuzi35shtj3oaa77rklmqsivuydxkcxkea2dwuq.b32.i2p:0
+lrah7acdsgopybg43shadwwiv6igezaw64i6jb5muqdg7dmhj3la.b32.i2p:0
+lrfcts7yrwq4qtrabl3ai5ljxnhgbza4ojb2oknzoobdvdnzhp6q.b32.i2p:0
+lvdbqavgdom5h5denwkmdwslfzxckf6eddwflelbog7tgo2m7usa.b32.i2p:0
+lwjrapkfexjyjqf2rrdr4ghhxmlr3jdygsonetgtheglvmru5x6q.b32.i2p:0
+lxh4dszgwvjzfjpy32eridbn2yxzmcbcfs6xham7272rd3dmitya.b32.i2p:0
+lyg26sjkcx5ied5a4a7jdxmfeplfcnux3fux5rsxzkm5mgbbsllq.b32.i2p:0
+lzanccluo7lzsg5zzlyomj44eabqvopb27vlbsargetjbib7shdq.b32.i2p:0
+lzrg3vee3wbz7qa2d4mvaijzebynhx3567rpjhdvebeevfhfrp6a.b32.i2p:0
+mbyf5d3vhlykjmqpkdiw42spbb7u4c7vu7juvs3yfbwaqtjnqn5q.b32.i2p:0
+mbz4wyfeqtllccary2crak2qfovnaq2366vdddro76ihxcaavfpq.b32.i2p:0
+mcvkdet26xzsz47hluq5zgaymyjvz2z6nisc5etmnpkoudzkyliq.b32.i2p:0
+mqvyz64lyw5okdpsfjfffabu5u2leob6usqmfd5at5eaa7r37dfq.b32.i2p:0
+mwevh5r5dkzddlo2ol6bojpdds3kno4xqoy6p6ulid3paamgrtla.b32.i2p:0
+mwyjzdrgtypbwjyulw4ifetejz6xusqstvzylztsphpg2r2zf7ua.b32.i2p:0
+mxglgq5ic4r2migtume54owf2pkolj4rwrgklv5qsd5amb5vmiza.b32.i2p:0
+n3p5dki4vkjmvq7mgp5behafe5crvl6q5pekcfchrwyts7d6dbbq.b32.i2p:0
+n3xexp2kjvcqrd5xsmgodps2ihvvskcqiupl2dozdzbrzea6jnqq.b32.i2p:0
+n5hids757nhhjm4efinnfvgb5kmgxwvt6adgbh645g5fjbphch7q.b32.i2p:0
+n7jorimlqrjfsdbsvwozme6eicpui353co3oqb2iupfew6wljnjq.b32.i2p:0
+naox7zpagk3z2zcrcnrvnjsuqbgmhstb3z5gznpndw3hlb4x5zaa.b32.i2p:0
+nc2dn6nife7jemcbkcl3igpywuuzi55stqev3svcnnuj2atjowlq.b32.i2p:0
+ndd3remf3idc47ueuyph33ce2dgqwpirxaqomvg22vn7dffw2l6a.b32.i2p:0
+ndtoi53fz7e6ml6v6jn33675nwciw7mu5msn7afzbhebprusqg7a.b32.i2p:0
+nipevh5opcg7stsmf64dvtk5bn45orckoa2r36gcntf5i3hs3jdq.b32.i2p:0
+nkj2zabj5b4vhold33nz3kgp2x3i3es2l3iz64rxx7em7rkgubaq.b32.i2p:0
+nluwsgpbk3cplcb2fpnfpjrhot2w7a6mtjggkqikudspysqlsceq.b32.i2p:0
+nm2dusg3py77m23cr3nt2j4q7ukwzvqgv6h635pw4slgwwptekfa.b32.i2p:0
+npofpbbruz2qa4bvchlal363r3uii6gjmgfpc5rregb2oi5lcakq.b32.i2p:0
+ntpnfr2cmxzlmsznvgfv32rw2pdvbz7mxut3bgphe4o24dqlvd4a.b32.i2p:0
+nuwphtuudfrswids22qjq63zgxh5wu7erafl36jyniuxhz75ikyq.b32.i2p:0
+nwfdwlblhudom3oqe32yzzuuj2sb37tjvlmimiru4coazi5freeq.b32.i2p:0
+nxhs7kh72gtex73hhu5a7tgjul5zm6q7dxejqflvdq6boq6a4miq.b32.i2p:0
+nz4lq7pmswngaevv2uqyainqzutfxlkavxgde2w2slo2p6e2kcfq.b32.i2p:0
+o2rckrq7jejk6zfxqu3zed5vyjpqagk6ogqspq767evacer2twaq.b32.i2p:0
+o4tkad7wdeyarefuew2d3ytpwc45twkca5vobgidhuv6h74r3sfq.b32.i2p:0
+o5s5j3ghhi7jipsd4j5jcb7qjbsatkwxcvotgjjygtcj3liajoya.b32.i2p:0
+oanp5s4ols5idrplaomlkjo6x6eaaji2xbu5knlouxahmwizqipq.b32.i2p:0
+oayctm7vxtagndwapn5sojqw23odgnzn3c47zlwc5xalcrnffykq.b32.i2p:0
+od6xadvvlqedl7vje5auuop4pnwf26pfj46mxxucvt34rl5x5o4a.b32.i2p:0
+odm4oxozmmg5vfhz7c7vlppikb2s7t6rnhk5ibz5vgje7m3igc5a.b32.i2p:0
+oggn6qbpmbag224gumagzgno53mgozb65tpzt5lezjbfbbiqky4q.b32.i2p:0
+ohparrugvj2lqhjd52f3bdm3wa4mme25ozjqjqgcgjnu4sswyjaa.b32.i2p:0
+oikfcbxug34vtfnkflh6ogncxpvzs5jzfhaai24xuvzynfsi3slq.b32.i2p:0
+oiusghp3k343ofsyw2ym6iejviznukx5lrhafxzdasmjky24ixba.b32.i2p:0
+okfxeoh6itu4f5f43dhbzvkqwfrvm5c66lj6lvjj4q2b35i4pk4q.b32.i2p:0
+omkilp7edzk7fpmml2fylar64pc5okaxuizv7tfqk2qmsfdokp4a.b32.i2p:0
+orzhfle7yenbiesrtg37lklyukcjyjcvfdrpk3pnrrshtl6sdcrq.b32.i2p:0
+ovkjylbsfe2756cpphzx2zvhhmtbetr5ci6swmydqc5itajqxm7a.b32.i2p:0
+owexluejb3eszx4p3b6zuxyggsxxtkxfgxoylkagfecs3bgfnpja.b32.i2p:0
+p3qxhtoxajkmt7tgc6stv55msievc5323rtrsiwstvtf37iwi4dq.b32.i2p:0
+p4tsqwvdpaitvlgaujfr2m2qbr36qiwusas5zkiut7w2wjcp3sqa.b32.i2p:0
+p6l4k3yl6hmsep4shr47nexwzd5m4t7ddz6yepl2sqmkicxvfbba.b32.i2p:0
+perwhflptmjkumfb2q3mtxqkzhkyqp723lbl4ct2zivhymupktuq.b32.i2p:0
+pleconnukdt4fp7cjcjh7af2a3nzsnkfqjgx2s7jb5xyhq3b5xaa.b32.i2p:0
+pomodyf3nnav7yeu2usrshzq7dvdqawrhoau3uxlimivhy46lmaq.b32.i2p:0
+pouelx3dkoqn5dvlb2veazhiiknwvtvadbbzkprk3nmvl4vqpcma.b32.i2p:0
+ppez53yrs6lanyvyxuxblqxiuvhnqvvtafmwaid2kgp2dx2v5iaq.b32.i2p:0
+pqnqwxl7jsrok7vgpgcvlxwlkg6yckx33n3g4xf5lvuntwn63b6a.b32.i2p:0
+pqpjrjnvbrlzzznv3rn24pkfemv62suddrtf5kzxxl3abek5xf3q.b32.i2p:0
+pt3ikblq2ytoqecetxdui3excysnrbzj2rwr4qbxqtlcklskjo5a.b32.i2p:0
+puhesrcq5ojcvpendpjv5hi7kfxvy64hlpgcokfwiq3cekomhr6a.b32.i2p:0
+pv6g7uin653rerdiivdgtoirjvokjowi4b3fwatszdlteyos3i2a.b32.i2p:0
+pvqyvn2lpvoeyhgcgunoqtetkrkp76iegyoii2af4crnlto6gb2q.b32.i2p:0
+pxn6af3w4p6auglktieukus6uzz2pbp2eya4ouvr7lzlxh2grz4q.b32.i2p:0
+q52c3eye3gvaepqhu45nt4ihgqfuzsr5hh5m5ngqtrhqmwjejjnq.b32.i2p:0
+q7mnmpgl54cbaorenckaybhwnh5ovyakcvthmjdsmvquip5ef4na.b32.i2p:0
+qddg7myylinn4tw6kdjmmp6fsyetkosnrbp2gsjx77tmkqyqv6ua.b32.i2p:0
+qfbughfr5hhgoomasyviwk3zin24uerpl6urz5smzxc2div5ixxa.b32.i2p:0
+qksthizqtfdjjxcrahqxkl3bev75k24blagrkoszxen45zelijpa.b32.i2p:0
+qm6vfq4pfvjg3r4g22xkg47xc4d2y5c7qlsoqyhfppsvh3grjfka.b32.i2p:0
+qmqsbya7yhpdkgxyqtzcmxajihednp6smhngx7s2n4gx5murt6wa.b32.i2p:0
+qnqojlthym7z4gwizcblhpd2thy7v4a6ifme57bzyl3nxzkj6ica.b32.i2p:0
+qpa5np77mrgjmmhh72bqjnhlxq5jj3annthoqwc72sz7u4j4zkgq.b32.i2p:0
+qqmxvujwi4ktgj2cuqmw4kiujkf7ukrkoe5ryy4bjb7tyleplsja.b32.i2p:0
+qqrvyctuomsxqiqkwtzpfxtdopzrdqmaxnwnhnuzzl2lrdcw7gpa.b32.i2p:0
+qwbmjxgnwnitin27gawtu5weiybo5nnlgs4trrh5vi5225fezmiq.b32.i2p:0
+qwhvlprhk3ntswr5xntnc2hhgmvd3bbgzgkbombiibhrsj7k6gyq.b32.i2p:0
+qwtpmh6ssnkeowocnvl7uveuhfodht3hsgwwydhy3v4xmwqbwveq.b32.i2p:0
+qxwd3nu4kicwuyhoje4dagdhbif4bxem4sk5etvvigycbe52ofia.b32.i2p:0
+r6hd3knqi2p6kaw7hybrcf2q5lcarulcczs3sgcuz4yc2saj3gya.b32.i2p:0
+r7bug6wbhevqqlbavouj3ggpa7e57sbd3oivkzqeyagrtxshmjpa.b32.i2p:0
+ra7ztq7oq7jcozpui7c4zv76gh7rjwhq5fkpxp7dvw7ritick66q.b32.i2p:0
+rb7tyjd6gi7evmt5mzvtboramqip43sh72zjxnwhj5k72zfi3g6a.b32.i2p:0
+rbciwwoimo3v55a7n4xb2yhyxeruvzyt2cdfeng3h3aragq4iziq.b32.i2p:0
+refo4v727jmff6ylrpbkvd5emlfr2hamaeh7zho6oval5dmnwlta.b32.i2p:0
+rfgsjhyvqbunef5b5r2emjuoxx2i7rcsl7gathy2n4gwjyyat6bq.b32.i2p:0
+riqrkj7zhuwqbpdluelijgyuvyubeqez2ndnvi6zezmvcwqmyxsq.b32.i2p:0
+rj37gjtx2umqccclxwmtfdgdxkfswp4pgrngrvhqq4fhhjqeud7a.b32.i2p:0
+rls6o23iz5wdado2nxsdxwxskf6mctsf623ki6ukuprdf2lfcbva.b32.i2p:0
+rm6vjhtun5zji3fegbvu2zmdlo67tuvda2dbveqi2vmqqxdrbsla.b32.i2p:0
+rqmwy4cazwtmkvluwxzz7k2ly5jwcoibar6vfxpr52aamlrm5wea.b32.i2p:0
+rrm2pems425buhonptp7lbtbprmwwjhbftey4ujvk25nclx7rerq.b32.i2p:0
+rs4exny4th3a7ngigrgpllsgoesxoxzqqk5upzzu24gdfv6rjacq.b32.i2p:0
+rtwm6njef5tifwv5ols3b4nsboniig5kdw32ik5qbv3wmhoo3pba.b32.i2p:0
+s2j2rv2dcizg3ibmrwzcvqe5cgtadezawown76l6sfqdtkfnzzja.b32.i2p:0
+sbalp2doxyedtr52kj57va2rmbi5npspv4drk4vxnujag72gtpiq.b32.i2p:0
+scfyzzdnycppb2vs4iae7wwjrbtywtuf4iyydaiolkvzy2d6b3ta.b32.i2p:0
+segnvtkjqqhzo52njxma3jgerwblnpvqrojjyeuqgzav7dwjlzoa.b32.i2p:0
+senbs2vd3mjgsf2nvpjcne63pzcfolnk2vtf2jxa7pxecuepfjjq.b32.i2p:0
+sgkdf2nk62slx6gtrnrxeoiknpdhfjjznqrcetdnu2j5iiltx6ca.b32.i2p:0
+sh5hww42vwlsl57cdropaeqmmwozinnr2tg6wq4prg5wrkusvxja.b32.i2p:0
+shh2ewyegnuwnmdse5kl5toybdvzkvk2yj4zcowz6iwhhh3ykdfa.b32.i2p:0
+sirb7csejtk7xwr6qymggudtft6cwd5d4iroj4vlajhiipt2hiaq.b32.i2p:0
+sjs76j7kaulnplp6wjs5nokshdowgfb7c6npmmtnnqimgzxxrh2q.b32.i2p:0
+sle3cbbdom6rknc3drqtawctpy635ica5d5gerjjdahfymkok4ma.b32.i2p:0
+solinsdewyzdgqbe4xso6wk5i6su4gcwas6zxd4q3om4ljvjv42a.b32.i2p:0
+spncsew2zgynatyvvl5mb4tuysd73oxmaztbiwjnocleyxuexyuq.b32.i2p:0
+stltasmf4b54srrjb3mf7hjtjvmvvms26btxakccdtllgrm2qzgq.b32.i2p:0
+su7d4biurihkyr3qeea7makkxzikxr5zi4znvryh3bjespppfhxq.b32.i2p:0
+sya6ydi4i6dslzjxmllugs5gyosg7rpwwfgalrzhd247k42xrcbq.b32.i2p:0
+syhxehvl6rublw6k5ysmzcsqrzdsnd7eqrbwalfkvhgfccpu2osq.b32.i2p:0
+sykjw3jnb7n6bo574wnpiaxhp2nm4gc6hc4jh4v6trsbpboysooa.b32.i2p:0
+szqvwf4yxnqvpprv6uzxkn7voxab2i5wega7kn56oru2i6wpzutq.b32.i2p:0
+t4notlid4bejwz2tzucpvednkeuskenpnu5sqcbdhh3lqouigqxa.b32.i2p:0
+t66iyinlubtg4znht2a6gwwcyiftjosuq7xbur4gfekkhwymxoda.b32.i2p:0
+td6ecor7qphgru56xt2ydih6k6taj3tvp77zhimoj42t3lo5u7na.b32.i2p:0
+temfakn3i7wa2dekclbg47smybf52o3kyw4cnywcmrhrq3dajnwa.b32.i2p:0
+tetoqjagsf7fpejajiwm4rosqscy5huqbz5hcqgfuha5tdfnlrnq.b32.i2p:0
+tf4tozh5unsgyzpdsmrdcpbgekw2agu7tp5jvyclzcs5kjudwwpa.b32.i2p:0
+tjfdp6mel3wzdpxkhbyhrmfrha7gekv3gghalnxezrmvnhy2ncra.b32.i2p:0
+tmc54rhj6yxnezeg6rovgtkyd7kwleinb7cj4ytdatwhdel4vswq.b32.i2p:0
+tpys7fw73bmglnjtitxebprgxthg6ew4gnhp54uc23cneef7si2q.b32.i2p:0
+trucvlawpufrszky4zzhhxtddnhio4mnqawzc47n7kik6i444m2q.b32.i2p:0
+tumvq4vpa25z5z4phsl2odrgswtf3lhayrftqsdhvejzzp7y2zla.b32.i2p:0
+tv3x4kddbu753tnlghgh3txogp26tlydt47rl5scx7eoxgnocf4a.b32.i2p:0
+twwjmbvrcfkl7s3hh473jwmxdys2zxo2ozlfivsjvbh2kobl3vsq.b32.i2p:0
+tx75t5cfpc5usmipedmn5w7sxnmeofolxyk3srcsd4yupkkgsu5q.b32.i2p:0
+txmrkbijumgxdhr35gbyqscfb4a3y7lbrl2da2nyqrdtilqpe56a.b32.i2p:0
+u4enqhila7pkwbwuyfbfd36qllbyv7y3p4nelxekrf3fizp4htza.b32.i2p:0
+u635477uxqs7z4uvwx224u6ojn3c3ewcb66f3j7qlbzqyrrevxja.b32.i2p:0
+ua4fdaez7efn74yivvlyg2qooscqskviuovygiujgh3jyn6pfama.b32.i2p:0
+ucgc3ocprcieyjj3kjlysa5y2yzfekvtpmeg46t4htvviaet5evq.b32.i2p:0
+uczz22yiczuydnoqddryai65547al4kc23ev7u6cmgjdnwxqwcna.b32.i2p:0
+ue4j4hkw6dy4bqx5l4gws5kdseqto2y6yxbadh32yipwcywsf4pa.b32.i2p:0
+uegl5ai5v2ddzfeq6eda7k3ul254ecbyjj5lqlct7nsrljjxksha.b32.i2p:0
+uf62jvb56gmhzfvy4q3rrripw3ga2gpeutp6zyplferc4uu7j2ia.b32.i2p:0
+uhkfrosqc2uqczwcktbb7ups5b5t2up7yhmicryrzqknkj334rnq.b32.i2p:0
+ujbl6syp4h7whbgmqfbshln7xvmsiorjq5xj25wvl6wpcymbwwaq.b32.i2p:0
+ujg6b4cyxhi5pf4puwvwupur3iddm23uibapigpwl4bstvlt4cva.b32.i2p:0
+ulwhvqmfei6zvxnusl5yqyjxgb6cxoxofa2egp5ecvrp5hxpmqrq.b32.i2p:0
+umlbkwpm35dpp66ggxt23tdzsqh3t2ancdyrga5nxidn2lnkdgxq.b32.i2p:0
+undzufsjeb4qlf7y5llh56tji6zlhtshlsyht4yjdsa2k4ayx7vq.b32.i2p:0
+upcwcphup3eoiq4oqcing5rplkcl64legnv63rxxr2v26at6i3hq.b32.i2p:0
+uqfpr4d4vcbs7nd5l5o4s3mzl3dptascgesfirfuuhvuadzdn26a.b32.i2p:0
+uv44mjoqrj3m3gzz5wxlnszt5pvgk3iqlc3pmqfe6un6gxays2cq.b32.i2p:0
+uyboj62kmr2qe3pma7lej42wgcxk2i6jztimkw4deb7yf55om7ba.b32.i2p:0
+v7pncuqxlofwmhxi2rebbxvjr3cqddzewbzxgsmsz57i5rsj4zea.b32.i2p:0
+vavpoevto45dv5spd4csk3ut3afe5cldtzvoceuiix4ingmfhxla.b32.i2p:0
+vcksnyuyw3i6hfviob5yzoynq7okxi677bw7224273fjhsk2kgra.b32.i2p:0
+vkz72iimesw6klnurujjyoyaphgxfj74wg7hjuiyr3jhqu7fo3rq.b32.i2p:0
+vlpktuqjkol5yvvjjtamlb5k5t2ywrssy2nivancn3er4ymnyxiq.b32.i2p:0
+vo22o2zy6gb4nsmcteelpyoa4khh3hogoe3jsgis6yglyrtxzloq.b32.i2p:0
+vq5vh45dihzuxkgvu5le6mauvdlmk3pjzfobncvaelumwf56d4wq.b32.i2p:0
+vqt22x4nnflmbgitjhenfagzhkmqekbjoim6vxjmayco4ewdnxsq.b32.i2p:0
+vran2pe26rju2bol6dllrhmgrud6eutmh6i2dotlv4gnk3yuk2yq.b32.i2p:0
+vuqk76jvxfk55bkovqcmmkvycmndee7j3tuv7ezdb2slrfpjyvoa.b32.i2p:0
+vurewltyyuo7s6xznj7udjtoqlcm65k7zbf2jdjublcmiueobauq.b32.i2p:0
+vzvt4ddkoz7scjmjzu4dvankrkxx3bstfsjuice6466bleuegjsq.b32.i2p:0
+w25qtnu5zo5s4eczoiidyxjyx2gw62nitaek3uotaawarvdj35da.b32.i2p:0
+w2mgaza75amrvfocl7wt6v7eimprlasuj3bi4xezdr2wyqhkxzwq.b32.i2p:0
+w2uruwbfqmuroj4s2konb7jctqd7mt47yqwsggy65he7fvfrsgwa.b32.i2p:0
+w3hyqnlueb4yv5lkzj3wlnrjp7fzpxnig6x6m3w5du2ptfjcm2jq.b32.i2p:0
+w3r5hrvyb2ppiwulw5s2r5wwiv6x5xvirpftdugvtvartkeifsbq.b32.i2p:0
+w4zymjmq7fxpecyc6b3pscasjbi3kj4ggfucb7gh4woeycnjsxma.b32.i2p:0
+wacfewi6ehmfxvftxqmracfh7se2t7ozl62u4hsuyd4c5xfzuajq.b32.i2p:0
+weck2efmesdewefhddub35opskzw55thubvqcjfabnmuahzuls6a.b32.i2p:0
+wfrvnaeqad6zevflyme66n3p77b4axymni33fu42bhsaei6cmrpa.b32.i2p:0
+wl36w4dicaovalv6w4vijn3jwws6wur35vnlhid5r76hal2ou5yq.b32.i2p:0
+woc63cuawux33zg2co5fidtw3alfqfc3mov3bjk65ip4ge4dz4eq.b32.i2p:0
+wpau3xgpkr72r2ysbanhet77xhtawm5mrm6a6mvjnv4oq4kypxva.b32.i2p:0
+wsbf5tpo7ecsafusflyym72k6tbyclgvqav56qafvyc4j3spzdoq.b32.i2p:0
+wtfebbwmsxoywu6nw5cowlxqhtokxrxftve2zee6flvrpqg4j6ma.b32.i2p:0
+wuikfwkext6lbl6urhoysr2abcyff5lkm2ojr6mfenqq25nzlluq.b32.i2p:0
+wwbw7nqr3ahkqv62cuqfwgtneekvvpnuc4i4f6yo7tpoqjswvcwa.b32.i2p:0
+wwwrx7f3urm4g2b5v3rtcxcijdefjireyqycl6dcoyap6vav2sqa.b32.i2p:0
+wy2udklgydh7iknnffbzvldoiwsct6dy3o7fjcsjcdjoq4b65vha.b32.i2p:0
+wylodalll6bd3l3vjfazlvmtsymgn5bokdwydmbzp5ncww35jpsa.b32.i2p:0
+x3mabmgx32hljbx46xqjobh6l3tvrridnxgrla4q7s2bgkk63aqa.b32.i2p:0
+xasewpiqpzhyggxwsajmnkrppi2ozmapqv6673zuuymoueq67tla.b32.i2p:0
+xbnl2smr777bqkflwbzstuwmlvu7evlxl4me3ynphcs3e72rlg5a.b32.i2p:0
+xf4xjhiry3x57gs73xhcfswulggzazfouszkbg5uo7oakc7cu3oq.b32.i2p:0
+xfyzfugo3qtfpq3s5zccbbqrxfkgy3ttlqhz6t6ovmtgrsuyce7q.b32.i2p:0
+xhzoxaskarhu5xsa6sat7kbxpce6tlvc2wfq6imdmfqgwbbyqypq.b32.i2p:0
+xjtrrpbdo5dvqjzsr7dhoyjocrrljfkutoyrmcyajfzbpozlytsa.b32.i2p:0
+xnb3pxtmai6ofbarycclwwueaarn4r3zt3zgkeepo4pgmswqvfcq.b32.i2p:0
+xnivz7w6yhjhvrvytupf4d7edydnfvzmfpqv6ndhxfcpkcz46yca.b32.i2p:0
+xofaehrg3ptjydgglyzkw36cxi6cgogkdt7yc4lmbng6vpnoegxq.b32.i2p:0
+xtxh4wtmbjls76wxnehe57etubuqvsdiunwgve6kwjt4acwswnjq.b32.i2p:0
+xuivvnpcj2rhsxmkyyjzmyq6a7gwgusnqwdklgimamvkzu7rnnmq.b32.i2p:0
+xvdqgttjov3jzgmke3owof4y63jwitxtbxflspxp7gqf4t2vobvq.b32.i2p:0
+xvpzaqftlfx2etqys733mndm7jr3l2j3if3wskfljzaow5s4rrfq.b32.i2p:0
+xzkwbpxki3prsrmylrjzyg5z3akjtvw4iu5zhevmz5aedgb2nn5q.b32.i2p:0
+y3occl5rqc2mz64esu5mqzoyfzlbxop7tttf2b3gyxjust57txfq.b32.i2p:0
+y45xhqkb43ncokfwhsmr4z6fwykuit6o3p2kbso3emv7stpiwwoq.b32.i2p:0
+y7cahac3wyh6kxubwikyrobe46bm5hhe4ovxn4ex6zf2ojkkawrq.b32.i2p:0
+y7flfkirmnbzzvwjyf4l5pgeqzjgxr3h2ds63lc7klx4byineowq.b32.i2p:0
+ybdhpsgmtw4eewreo7kswclgexdztzk32a5x4pbr5ws6nm42gpoq.b32.i2p:0
+ycntiiypllboyp3ikl6njjy47gxkfycvwcvmbyikshnjx3l2bvva.b32.i2p:0
+yemrkyqmjzwwn2yast2ga6dcnsovnxwip2rjpid56grdg7itugpa.b32.i2p:0
+yf2ny2doz2qirgwlzc6gebk6eifqvzeozcesreme7u76umfmva4a.b32.i2p:0
+yj3v3ocgldnackxptsjmwasa4xzxj3it6rtuhmlpxvwlq5kmyytq.b32.i2p:0
+ykv62rivlxurq2wkecagzs76tulfor765c237bsjn7jt4436kn2q.b32.i2p:0
+yl2y3q4k63d4a7tvqjmbtq2uyzmrjqgnhl5xatcamjen6faaxroq.b32.i2p:0
+yllvqk2utimxjtoyzk7l24s4n5sqp5dbn5vwsbt3g3dd6h4dxseq.b32.i2p:0
+ylxiqtda5q3ioliyff4cswzly4bvbaaabpic6chrclwjkt33tdaq.b32.i2p:0
+yodn52qhw4v5aoaoqfsunvfecbbl6cyk5j4aq2pfm4otu63qlp6a.b32.i2p:0
+yophu2fzfwls6dmpnhy3hzpfefz3sunu63bt5oi3zx6wyfheaouq.b32.i2p:0
+yosnjs5hintkbjrwyrvbs6myc2zd7gpfsrg7t7bprntwyilqnfnq.b32.i2p:0
+ypdrun7wxb3ah5rp7cycnizg6hnkduioqac7p75lklstuczoijjq.b32.i2p:0
+yphmy6w3myyy3am5awdksfyhbmmleqmblru3pfoajhjdilktwdca.b32.i2p:0
+ywkrrbyzwgc5b2lub4i5z5iwtedfz2byghh753vzlr4lxskwrsnq.b32.i2p:0
+yx6ghqhj7c5q3dfmwtmpg46dquicigagnwhw6aw3guzig4yrdwta.b32.i2p:0
+z2jyij2spdcwjqqfz6thpa4a6bp4lyg2jbaqkniiyyd4hocblwgq.b32.i2p:0
+z34pw5tlowwi3gpj3ycb2dptgyuq65bpj7w36xahslgikggo5eaa.b32.i2p:0
+z3j2xshl4tpbxaybcprhzq7cuz6urboqoxvvpnfriv4n2lq72jsq.b32.i2p:0
+z3pgyfiwfzcd2g7v4rs6el5tvc55y7a3tai4gcbpso6flaejckea.b32.i2p:0
+z6g6lmwuhnldiazyf72zlsvtwbql5mfvpmyaipuvjfwnb6slel6a.b32.i2p:0
+z6gf7u676kcbjcf3xydssjaxe77vatqr7lr4356usgdvsuh54jpa.b32.i2p:0
+zcwgqw7hlw7437a7au6n6obljdb4arnshoibdqo6voree4xiznoq.b32.i2p:0
+zh34uj3cwyr7zs2uc4aeyrhffgumxd5uzpfpbmbuyetqkd3xy4ia.b32.i2p:0
+znt6mdvmstxcdaqeiuo67k2ug4e422gjftrnm7ov2izaeuh73d5q.b32.i2p:0
+zqhoqgf3enj2pv74sjov6dthpr6jqafw5qqzzsvnfdqzycychxpq.b32.i2p:0
+zr744lzxu2lvzncuccwbo2p5rpocsidorh5nug2it2yfsppbcjsa.b32.i2p:0
+ztmhh3h46uvwd5pmuauzjhcsybo6tqgx5a4pmhpolwtxyeiud6xa.b32.i2p:0
+zxr2swmk37nxncdkzh3aym6bke3wnkf66zffv6k4wivce6smbreq.b32.i2p:0
+zyirlmzsnhkyhbs2lya5mnbvzbvnx2tqqnmplksa2ehs7s4yxcsq.b32.i2p:0
+2.39.163.191:8333 # AS30722
+2.83.248.77:8333 # AS3243
+2.87.72.235:8333 # AS6799
+3.9.188.44:8333 # AS16509
+3.76.143.185:8333 # AS16509
+3.231.154.195:8333 # AS14618
5.2.23.226:8333 # AS21472
+5.45.72.11:8333 # AS50673
+5.78.71.173:8333 # AS212317
+5.78.116.127:8333 # AS212317
5.128.87.126:8333 # AS31200
-5.157.103.202:8333 # AS35612
+5.144.88.83:8333 # AS61349
+5.172.132.104:8333 # AS15600
+5.186.60.13:8333 # AS44869
5.188.62.18:8333 # AS34665
-5.253.18.218:8333 # AS58073
-5.255.109.160:8333 # AS60404
-8.129.184.255:8333 # AS37963
+5.255.97.92:8333 # AS60404
8.209.70.77:8333 # AS45102
-8.210.18.56:8333 # AS45102
-12.34.98.148:8333 # AS7018
-18.27.79.17:8333 # AS3
-23.93.170.118:8333 # AS46375
-23.154.136.144:8333 # AS54002
-23.175.0.212:8333 # AS395502
+14.203.57.50:8333 # AS7545
+15.235.82.178:8333 # AS16276
+18.183.87.240:8333 # AS8987
+20.89.243.139:8333 # AS8075
+23.134.94.82:8333 # AS63023
+23.142.145.238:8333 # AS210000
23.175.0.222:8333 # AS395502
-24.84.164.50:8333 # AS6327
-24.86.90.127:8333 # AS6327
-24.101.126.194:8333 # AS27364
-24.183.75.154:8333 # AS20115
-27.124.108.19:8333 # AS58511
-27.148.206.140:8333 # AS4134
-31.25.98.16:8333 # AS48635
-31.41.23.249:8333 # AS31287
-31.47.202.112:8333 # AS34385
-31.156.128.248:8333 # AS30722
-31.164.160.162:8333 # AS6730
-31.201.190.134:8333 # AS50266
-31.208.34.61:8333 # AS29518
-34.78.14.25:8333 # AS15169
-34.80.134.68:8333 # AS15169
-35.137.133.225:8333 # AS7843
-35.193.192.48:8333 # AS396982
-35.194.39.250:8333 # AS396982
-37.15.60.144:8333 # AS12479
-37.60.228.251:8333 # AS31214
-37.60.229.117:8333 # AS31214
-37.110.132.94:8333 # AS42610
-37.120.179.29:8333 # AS47147
-37.139.102.73:8333 # AS35816
+24.6.89.155:8333 # AS33651
+24.36.96.14:8333 # AS7992
+24.76.199.86:8333 # AS6327
+24.116.163.227:8333 # AS11492
+24.119.41.234:8333 # AS11492
+24.146.33.13:8333 # AS7992
+24.148.52.108:8333 # AS6079
+24.156.42.154:8333 # AS19108
+27.148.206.140:8333 # AS133774
+31.19.205.19:8333 # AS3209
+31.30.59.201:8333 # AS16019
+31.189.24.188:8333 # AS24608
+35.170.77.206:8333 # AS14618
+35.208.62.130:8333 # AS15169
+35.213.159.168:8333 # AS15169
+35.228.210.193:8333 # AS396982
+35.244.9.182:8333 # AS396982
+37.60.246.82:8333 # AS51167
37.157.192.94:8333 # AS197019
-37.220.135.151:8333 # AS41206
-38.9.81.160:8333 # AS16904
-38.21.221.252:8333 # AS40545
-38.54.14.89:8333 # AS138915
-38.91.106.111:8333 # AS63023
-38.102.85.36:8333 # AS174
-42.2.162.218:8333 # AS4760
-43.129.75.20:8333 # AS132203
+37.221.197.208:8333 # AS197540
+38.38.192.248:8333 # AS394432
+38.40.110.66:8333 # AS398721
+38.75.215.250:8333 # AS397377
+38.75.235.97:8333 # AS397142
+38.102.85.36:8333 # AS26832
+38.111.114.155:8333 # AS62563
+38.254.140.40:8333 # AS54936
+40.160.13.7:8333 # AS16276
43.159.61.16:8333 # AS132203
-43.225.62.107:8333 # AS63953
-43.245.196.214:8333 # AS63916
-45.13.7.221:8333 # AS60377
-45.44.213.123:8333 # AS54198
-45.48.75.224:8333 # AS20001
-45.79.76.12:8333 # AS63949
-45.94.209.127:8333 # AS13789
-45.130.23.57:8333 # AS3214
-45.132.118.25:8333 # AS208451
-45.144.249.207:8333 # AS203936
-45.145.40.43:8333 # AS63213
-45.155.169.30:8333 # AS62000
-46.17.99.13:8333 # AS57043
-46.17.99.26:8333 # AS57043
-46.21.250.25:8333 # AS24875
-46.28.204.161:8333 # AS197988
-46.128.199.26:8333 # AS16097
-46.164.59.139:8333 # AS21283
-46.166.142.2:8333 # AS43350
-46.172.233.241:8333 # AS6752
-46.252.5.112:8333 # AS206774
-47.28.85.71:8333 # AS20115
-47.176.248.250:8333 # AS5650
-47.198.60.180:8333 # AS5650
-50.27.22.141:8333 # AS19108
-50.39.170.149:8333 # AS20055
-50.53.250.162:8333 # AS20055
-51.154.62.103:8333 # AS15796
-51.158.150.155:8333 # AS12876
+43.198.159.17:8333 # AS8987
+43.225.143.17:8333 # AS136907
+45.45.27.233:8333 # AS5769
+45.88.106.107:8333 # AS204601
+45.129.84.136:8333 # AS206264
+45.129.181.107:8333 # AS197540
+45.130.20.177:8333 # AS3214
+45.142.235.46:8333 # AS206238
+45.150.66.10:8333 # AS200195
+45.207.43.110:8333 # AS133861
+46.10.211.143:8333 # AS8866
+46.23.87.218:8333 # AS60131
+46.28.205.68:8333 # AS197988
+46.32.178.82:8333 # AS196925
+46.39.167.49:8333 # AS31246
+46.59.40.91:8333 # AS8473
+46.148.235.36:8333 # AS49505
+46.150.161.43:8333 # AS49106
+46.175.178.3:8333 # AS56427
+46.229.238.187:8333 # AS29405
+47.12.228.122:8333 # AS20115
+47.184.159.236:8333 # AS5650
+47.254.178.44:8333 # AS45102
+50.4.18.90:8333 # AS12083
+50.30.36.140:8333 # AS30083
+50.45.128.28:8333 # AS27017
+50.79.86.113:8333 # AS33489
+50.126.96.22:8333 # AS27017
+50.144.135.40:8333 # AS33657
+51.154.26.11:8333 # AS15796
51.174.206.76:8333 # AS29695
-54.217.136.122:8333 # AS16509
-54.253.15.33:8333 # AS16509
-57.128.96.115:8333 # AS8220
-57.128.148.169:8333 # AS8220
-58.6.46.171:8333 # AS7545
-58.96.77.114:8333 # AS10143
-58.96.123.120:8333 # AS38195
-58.168.253.35:8333 # AS1221
-59.167.191.60:8333 # AS4739
-60.205.205.119:8333 # AS37963
-60.212.189.151:8333 # AS4837
-61.74.99.193:8333 # AS4766
-62.24.76.122:8333 # AS16019
-62.106.70.249:8333 # AS8100
+51.194.13.25:8333 # AS5607
+58.229.105.38:8333 # AS9318
+59.188.108.150:8333 # AS9381
+62.12.168.100:8333 # AS15623
62.168.65.42:8333 # AS5578
-62.171.129.32:8333 # AS51167
-62.245.75.70:8333 # AS16019
-62.248.8.167:8333 # AS16010
-64.23.150.211:8333 # AS3064
-64.98.119.136:8333 # AS32133
-65.24.75.34:8333 # AS7843
-65.175.185.101:8333 # AS11776
-66.45.141.46:8333 # AS11232
-66.58.163.185:8333 # AS8047
-66.85.133.182:8333 # AS12189
-66.206.22.26:8333 # AS29802
-67.40.102.33:8333 # AS209
-67.43.210.62:8333 # AS394883
-67.82.136.177:8333 # AS6128
-67.193.87.50:8333 # AS7992
+62.177.111.78:8333 # AS29208
+62.210.207.63:8333 # AS12876
+64.20.45.42:8333 # AS19318
+64.31.61.150:8333 # AS46475
+64.42.176.234:8333 # AS63018
+64.46.58.172:8333 # AS20161
+64.68.203.11:8333 # AS16686
+64.156.192.61:8333 # AS21581
+64.185.225.26:8333 # AS18450
+64.187.168.198:8333 # AS11404
+64.253.104.118:8333 # AS4364
+66.18.13.162:8333 # AS13767
+66.29.129.233:8333 # AS22612
+66.35.84.30:8333 # AS2734
+66.194.38.45:8333 # AS35863
+66.228.28.63:8333 # AS11233
+67.145.204.18:8333 # AS19901
+67.205.190.143:8333 # AS14061
67.210.228.203:8333 # AS7819
-67.211.211.118:8333 # AS19318
-67.231.246.58:8333 # AS40244
-68.6.84.222:8333 # AS22773
-68.48.136.216:8333 # AS7922
-68.69.170.92:8333 # AS6315
-69.4.94.226:8333 # AS36352
-69.8.175.201:8333 # AS21766
-69.57.160.49:8333 # AS22612
-69.112.103.124:8333 # AS6128
+67.217.61.213:8333 # AS19318
+67.251.135.17:8333 # AS12271
+68.39.190.185:8333 # AS33491
+68.75.195.2:8333 # AS17235
+68.102.134.227:8333 # AS22773
+68.219.242.34:8333 # AS8075
+69.4.94.226:8333 # AS55286
+69.142.28.54:8333 # AS33287
+69.146.62.1:8333 # AS33588
+69.176.188.251:8333 # AS18988
+69.180.170.215:8333 # AS13367
+69.181.64.87:8333 # AS33651
69.196.152.33:8333 # AS5645
-71.19.148.180:8333 # AS6939
-73.227.153.213:8333 # AS1351
-74.50.81.93:8333 # AS19318
-74.101.205.214:8333 # AS701
-74.118.137.119:8333 # AS20326
-74.213.175.108:8333 # AS21949
-74.213.251.239:8333 # AS14978
+70.35.98.12:8333 # AS32264
+70.67.139.204:8333 # AS6327
+70.121.50.147:8333 # AS11427
+70.172.132.78:8333 # AS22773
+71.224.201.224:8333 # AS33287
+72.18.53.189:8333 # AS40545
+72.46.131.18:8333 # AS36114
+72.50.220.5:8333 # AS10242
+72.71.209.96:8333 # AS13977
+73.35.246.175:8333 # AS33650
+73.98.107.37:8333 # AS33654
+73.98.178.236:8333 # AS33660
+73.117.132.138:8333 # AS7016
+73.131.209.70:8333 # AS33660
+73.157.112.178:8333 # AS33650
+73.228.173.21:8333 # AS13367
+73.253.55.217:8333 # AS7015
+74.73.229.148:8333 # AS12271
+74.112.115.197:8333 # AS11525
+74.118.138.124:8333 # AS20326
+74.118.143.8:8333 # AS20326
+74.133.90.251:8333 # AS10796
+74.213.251.233:8333 # AS14978
74.220.255.190:8333 # AS23175
-77.20.48.144:8333 # AS3209
-77.21.149.160:8333 # AS204028
-77.37.240.209:8333 # AS42610
-77.43.14.68:8333 # AS5396
-77.111.57.109:8333 # AS3212
-77.162.190.90:8333 # AS1136
-77.173.132.140:8333 # AS1136
-77.202.10.220:8333 # AS15557
-78.27.139.13:8333 # AS6723
-78.31.71.190:8333 # AS24961
-78.35.147.203:8333 # AS8422
-78.42.144.24:8333 # AS51185
-78.43.153.185:8333 # AS51185
-78.56.89.146:8333 # AS8764
-78.70.208.53:8333 # AS3301
-79.109.120.38:8333 # AS12430
-79.116.56.89:8333 # AS57269
-79.124.7.253:8333 # AS203380
-79.136.250.162:8333 # AS9049
-80.83.186.25:8333 # AS33891
-80.98.75.248:8333 # AS21334
-80.229.28.60:8333 # AS2856
-80.244.26.192:8333 # AS35432
-81.4.110.168:8333 # AS198203
+76.113.120.246:8333 # AS33654
+76.127.211.90:8333 # AS7015
+76.154.162.182:8333 # AS33652
+77.33.144.156:8333 # AS44869
+77.38.3.90:8333 # AS3212
+77.100.20.178:8333 # AS5089
+77.109.112.223:8333 # AS9031
+77.165.250.62:8333 # AS1136
+77.223.120.139:8333 # AS50340
+77.240.190.41:8333 # AS24641
+78.30.57.78:8333 # AS15704
+78.157.91.120:8333 # AS21211
+79.54.240.124:8333 # AS3269
+79.116.53.50:8333 # AS57269
+79.134.99.114:8333 # AS16302
+79.156.138.107:8333 # AS3352
+80.60.120.119:8333 # AS1136
+80.64.211.102:8333 # AS200295
+80.64.211.103:8333 # AS200295
+80.90.4.178:8333 # AS20546
+80.108.219.153:8333 # AS8412
+80.209.231.126:8333 # AS62282
+80.241.194.147:8333 # AS8881
81.7.17.202:8333 # AS35366
-81.19.10.2:8333 # AS24641
81.83.214.134:8333 # AS6848
-81.170.142.100:8333 # AS8473
-81.171.22.143:8333 # AS60781
-81.242.239.139:8333 # AS5432
+81.197.182.195:8333 # AS719
+81.229.234.87:8333 # AS3301
+82.10.250.130:8333 # AS5089
+82.64.49.27:8333 # AS12322
82.66.10.11:8333 # AS12322
-82.66.204.177:8333 # AS12322
-82.96.96.40:8333 # AS29686
-82.149.225.249:8333 # AS29551
-82.155.148.211:8333 # AS8657
-82.181.218.133:8333 # AS16086
-83.99.247.25:8333 # AS24651
+82.71.47.216:8333 # AS13037
+82.73.188.178:8333 # AS33915
+82.85.110.20:8333 # AS8612
+82.124.33.119:8333 # AS3215
+82.174.142.202:8333 # AS50266
+82.195.237.251:8333 # AS1836
+82.218.34.162:8333 # AS8339
+83.49.10.227:8333 # AS3352
+83.78.112.142:8333 # AS3303
83.136.232.21:8333 # AS29182
-83.192.226.66:8333 # AS3215
+83.144.180.88:8333 # AS2860
+83.150.2.128:8333 # AS8758
+83.168.65.186:8333 # AS31304
83.208.193.242:8333 # AS5610
-83.240.118.196:8333 # AS31246
-84.7.219.130:8333 # AS15557
-84.52.64.82:8333 # AS25408
-84.64.99.78:8333 # AS5378
-84.112.60.16:8333 # AS8412
+83.218.160.161:8333 # AS31543
+84.32.248.63:8333 # AS16125
+84.75.0.178:8333 # AS6730
84.113.129.195:8333 # AS8412
-84.211.187.211:8333 # AS41164
-84.217.134.213:8333 # AS2119
-84.247.128.15:8333 # AS49788
-84.247.132.27:8333 # AS29286
-84.247.173.117:8333 # AS29286
-84.247.179.51:8333 # AS49788
-84.255.245.194:8333 # AS34779
-85.145.79.26:8333 # AS50266
-85.173.165.66:8333 # AS12389
-85.195.196.86:8333 # AS13030
-85.214.118.71:8333 # AS6724
-86.22.20.13:8333 # AS5089
-86.45.238.115:8333 # AS5466
-86.182.223.189:8333 # AS2856
-86.215.168.115:8333 # AS3215
-87.79.94.221:8333 # AS8422
-87.90.94.120:8333 # AS5410
-87.92.171.53:8333 # AS16086
+84.195.116.26:8333 # AS6848
+84.246.200.122:8333 # AS42455
+84.255.238.120:8333 # AS34779
+85.14.79.26:8333 # AS31242
+85.146.115.136:8333 # AS50266
+85.159.237.71:8333 # AS43350
+85.195.83.50:8333 # AS20773
+85.214.161.252:8333 # AS6724
+85.214.223.36:8333 # AS6724
+85.215.75.210:8333 # AS8560
+85.234.145.132:8333 # AS29550
+85.246.38.150:8333 # AS3243
+85.252.216.146:8333 # AS2116
+86.41.130.108:8333 # AS5466
+86.101.92.93:8333 # AS21334
+86.104.228.12:8333 # AS45021
+86.104.228.36:8333 # AS45021
+86.109.12.60:8333 # AS54825
+86.111.48.71:8333 # AS50304
+86.111.48.72:8333 # AS50304
+86.124.145.184:8333 # AS8708
+86.133.133.82:8333 # AS2856
+87.120.8.239:8333 # AS34224
+87.179.122.129:8333 # AS3320
87.236.195.198:8333 # AS35592
-87.236.199.197:8333 # AS35592
-88.6.31.66:8333 # AS3352
-88.9.73.252:8333 # AS3352
-88.84.223.30:8333 # AS21453
-88.146.114.173:8333 # AS29208
-89.35.142.177:8333 # AS34977
-89.44.41.142:8333 # AS56478
-89.116.25.234:8333 # AS398465
-89.117.58.113:8333 # AS1239
-89.117.172.121:8333 # AS3320
-89.165.232.242:8333 # AS48161
-89.190.142.56:8333 # AS38919
-89.216.91.120:8333 # AS31042
-89.247.224.28:8333 # AS8881
-90.146.207.67:8333 # AS12605
-90.156.26.148:8333 # AS12741
-90.163.172.78:8333 # AS12479
-90.192.118.202:8333 # AS5607
-90.208.159.11:8333 # AS5607
-90.247.70.31:8333 # AS5378
-91.86.25.207:8333 # AS47377
-91.123.182.164:8333 # AS51648
-91.123.183.219:8333 # AS51792
-91.134.145.202:8333 # AS16276
-91.135.0.187:8333 # AS12496
-91.152.122.36:8333 # AS6667
-91.184.174.191:8333 # AS9063
-91.204.149.5:8333 # AS42765
-91.206.17.195:8333 # AS13259
-91.209.51.131:8333 # AS48239
-91.215.91.254:8333 # AS48078
-91.231.182.53:8333 # AS44103
-91.236.251.137:8333 # AS57944
-91.236.251.139:8333 # AS57944
-91.237.88.218:8333 # AS56813
-92.27.150.46:8333 # AS13285
-92.27.150.47:8333 # AS13285
-92.42.110.219:8333 # AS1273
-92.43.187.34:8333 # AS8359
-92.206.105.31:8333 # AS20880
-92.233.2.59:8333 # AS5089
-92.240.181.45:8333 # AS16246
-93.51.13.120:8333 # AS12874
-93.57.81.162:8333 # AS12874
-93.71.19.130:8333 # AS30722
-93.81.254.159:8333 # AS8402
-93.90.82.227:8333 # AS47626
-93.100.35.189:8333 # AS35807
-93.103.13.1:8333 # AS34779
-93.123.180.164:8333 # AS35539
+88.85.88.133:8333 # AS35415
+88.88.58.251:8333 # AS2119
+88.99.71.213:8333 # AS24940
+88.119.128.36:8333 # AS8764
+88.134.41.88:8333 # AS3209
+88.210.15.24:8333 # AS25308
+88.212.53.246:8333 # AS42841
+88.218.226.91:8333 # AS48314
+89.1.104.97:8333 # AS8422
+89.39.106.26:8333 # AS49981
+89.179.240.133:8333 # AS8402
+89.207.131.19:8333 # AS62370
+89.233.207.67:8333 # AS29518
+90.26.82.45:8333 # AS3215
+90.173.118.109:8333 # AS12479
+90.250.10.165:8333 # AS5378
+91.90.166.203:8333 # AS214815
+91.92.144.226:8333 # AS44901
+91.92.154.18:8333 # AS61098
+91.202.4.65:8333 # AS43641
+91.228.45.130:8333 # AS197895
+91.239.130.62:8333 # AS62240
+91.240.84.52:8333 # AS29182
+92.42.110.214:8333 # AS29066
+92.84.188.206:8333 # AS9050
+92.205.232.47:8333 # AS21499
+92.206.105.31:8333 # AS16202
+92.247.49.210:8333 # AS29580
+93.16.43.241:8333 # AS198949
+93.38.127.179:8333 # AS12874
+93.115.26.6:8333 # AS16125
93.177.188.74:8333 # AS16010
-93.188.102.53:8333 # AS43989
-94.19.7.55:8333 # AS35807
-94.63.75.74:8333 # AS12353
-94.72.141.61:8333 # AS57344
-94.72.143.47:8333 # AS203380
-94.105.53.124:8333 # AS47377
-94.181.46.106:8333 # AS9049
-94.231.253.18:8333 # AS35224
-95.42.140.142:8333 # AS8866
-95.82.130.223:8333 # AS31246
-95.88.61.176:8333 # AS204028
+94.19.128.204:8333 # AS35807
+94.131.0.73:8333 # AS8772
+94.136.2.126:8333 # AS48943
+94.156.128.153:8333 # AS44901
+94.203.133.251:8333 # AS15802
+94.210.55.89:8333 # AS33915
+94.241.90.251:8333 # AS42908
95.105.172.171:8333 # AS15962
-95.110.234.93:8333 # AS31034
-95.164.182.44:8333 # AS29632
-95.191.130.100:8333 # AS12389
-96.3.53.254:8333 # AS11232
-97.75.144.9:8333 # AS22709
-98.17.95.93:8333 # AS398465
-98.128.230.186:8333 # AS8473
-98.163.242.149:8333 # AS22773
-98.229.126.23:8333 # AS1351
-99.233.20.215:8333 # AS812
-99.246.87.2:8333 # AS812
-101.51.138.194:8333 # AS38040
-102.130.113.94:8333 # AS328364
-103.99.170.210:8333 # AS54415
-103.99.170.220:8333 # AS54415
-103.156.165.171:8333 # AS63859
-103.219.169.49:8333 # AS13335
-104.171.202.244:8333 # AS30496
-104.225.220.33:8333 # AS29802
-104.244.73.6:8333 # AS53667
-104.244.79.131:8333 # AS53667
-108.49.65.132:8333 # AS701
-109.86.60.33:8333 # AS13188
-109.91.141.145:8333 # AS3209
-109.99.63.159:8333 # AS9050
-109.120.194.136:8333 # AS34569
-109.196.124.182:8333 # AS196883
-109.201.168.32:8333 # AS41750
+95.169.196.247:8333 # AS201133
+95.211.152.100:8333 # AS60781
+95.213.145.218:8333 # AS49505
+96.41.133.58:8333 # AS20115
+96.74.179.132:8333 # AS33491
+97.113.140.223:8333 # AS209
+98.13.77.64:8333 # AS11351
+98.156.108.211:8333 # AS11427
+99.95.54.159:8333 # AS7018
+99.229.106.225:8333 # AS812
+99.240.98.36:8333 # AS812
+101.32.127.143:8333 # AS132203
+101.100.139.249:8333 # AS9790
+103.37.205.47:8333 # AS56068
+103.45.247.202:8333 # AS41436
+103.76.205.213:8333 # AS58610
+103.99.169.110:8333 # AS54415
+103.101.203.44:8333 # AS36007
+103.231.42.36:8333 # AS18229
+103.233.83.28:8333 # AS4213
+104.128.64.58:8333 # AS36007
+104.128.201.183:8333 # AS13428
+104.172.235.227:8333 # AS20001
+104.219.214.211:8333 # AS398823
+104.221.34.226:8333 # AS5769
+104.229.101.78:8333 # AS11351
+104.238.220.199:8333 # AS23470
+107.148.56.81:8333 # AS399195
+107.148.68.174:8333 # AS394432
+107.155.67.210:8333 # AS29802
+107.191.33.82:8333 # AS20473
+108.26.149.161:8333 # AS701
+108.225.195.53:8333 # AS7018
+109.150.129.227:8333 # AS2856
+109.207.79.248:8333 # AS44709
109.224.84.149:8333 # AS197197
-111.90.140.46:8333 # AS45839
-112.139.10.25:8333 # AS10010
-114.34.130.206:8333 # AS3462
-116.58.171.67:8333 # AS2514
-116.86.195.192:8333 # AS4657
-119.31.179.202:8333 # AS17408
-119.42.55.203:8333 # AS133159
+109.235.247.122:8333 # AS205950
+111.90.158.123:8333 # AS45839
+111.90.158.137:8333 # AS45839
+115.140.124.99:8333 # AS17858
+116.86.195.192:8333 # AS55430
+117.48.133.67:8333 # AS140292
+118.24.37.253:8333 # AS45090
120.226.39.100:8333 # AS9808
-120.226.39.103:8333 # AS9808
-121.6.69.73:8333 # AS9506
-121.99.240.87:8333 # AS9790
-122.148.147.136:8333 # AS4826
-122.199.40.21:8333 # AS38195
-123.60.213.192:8333 # AS55990
-123.202.193.121:8333 # AS9269
-124.170.182.194:8333 # AS7545
-124.197.54.113:8333 # AS9790
-125.168.110.28:8333 # AS4826
-125.227.178.68:8333 # AS3462
+121.98.22.147:8333 # AS9790
+122.40.25.57:8333 # AS17858
+128.0.98.214:8333 # AS42652
128.0.190.26:8333 # AS30764
-129.13.189.215:8333 # AS34878
-130.44.176.111:8333 # AS6079
-130.204.161.3:8333 # AS8717
-131.153.232.139:8333 # AS12189
-131.188.40.47:8333 # AS680
-134.65.193.149:8333 # AS19037
-135.19.41.208:8333 # AS5769
-135.19.253.101:8333 # AS5769
-135.23.204.98:8333 # AS5645
-135.181.215.237:8333 # AS24940
-136.55.46.15:8333 # AS16591
-136.62.58.224:8333 # AS16591
-136.175.8.175:8333 # AS14315
-136.244.19.126:8333 # AS397412
-137.226.34.46:8333 # AS680
-138.59.20.209:8333 # AS28201
-139.59.70.163:8333 # AS14061
-140.238.220.99:8333 # AS31898
-141.193.68.11:8333 # AS396998
-142.54.181.218:8333 # AS32097
+128.2.12.38:8333 # AS9
+129.10.85.103:8333 # AS156
+129.80.192.20:8333 # AS31898
+129.126.172.115:8333 # AS17547
+130.180.211.123:8333 # AS199636
+130.250.7.252:8333 # AS394901
+131.153.203.205:8333 # AS20454
+131.153.232.199:8333 # AS19437
+131.153.238.121:8333 # AS19437
+133.3.249.155:8333 # AS2504
+133.5.165.199:8333 # AS2508
+133.125.50.180:8333 # AS7684
+134.65.193.149:8333 # AS44486
+134.195.196.65:8333 # AS62563
+136.49.31.88:8333 # AS16591
+136.62.152.251:8333 # AS16591
+136.169.52.139:8333 # AS20910
+138.2.110.216:8333 # AS31898
+138.75.131.48:8333 # AS4773
+140.186.199.14:8333 # AS11232
+141.0.155.19:8333 # AS56478
142.115.140.2:8333 # AS577
-142.188.125.200:8333 # AS577
-143.110.252.124:8333 # AS14061
-144.24.236.64:8333 # AS31898
-144.137.29.181:8333 # AS1221
-146.71.69.103:8333 # AS7782
-149.28.159.141:8333 # AS20473
-149.143.32.26:8333 # AS15435
-149.202.79.199:8333 # AS16276
-149.248.1.254:8333 # AS20473
-151.248.221.197:8333 # AS8821
-152.44.137.83:8333 # AS11404
-152.230.180.115:8333 # AS14259
-154.26.137.105:8333 # AS174
-154.92.111.100:8333 # AS141356
-157.131.20.174:8333 # AS46375
-158.129.140.201:8333 # AS5479
-158.181.114.196:8333 # AS8821
-158.220.85.82:8333 # AS8556
-158.220.121.93:8333 # AS8556
-159.2.191.175:8333 # AS855
-159.224.238.145:8333 # AS13188
-161.97.167.10:8333 # AS51167
-162.213.119.12:8333 # AS2711
-162.226.61.8:8333 # AS7018
-162.254.171.209:8333 # AS17210
-163.114.159.205:8333 # AS15830
-163.172.84.134:8333 # AS12876
-165.255.241.184:8333 # AS327693
-167.179.147.155:8333 # AS4764
-169.150.206.206:8333 # AS60068
-170.17.151.235:8333 # AS3303
-170.254.147.116:8333 # AS265398
-172.92.102.115:8333 # AS11404
-172.105.21.216:8333 # AS63949
-172.219.229.252:8333 # AS852
-172.251.101.27:8333 # AS20001
-173.12.119.133:8333 # AS7922
-173.19.176.228:8333 # AS30036
-173.181.35.50:8333 # AS395570
-173.212.98.0:8333 # AS11260
-173.241.227.243:8333 # AS19009
-173.246.31.114:8333 # AS1403
-174.20.57.30:8333 # AS209
-175.27.247.104:8333 # AS45090
-175.136.174.174:8333 # AS4788
-176.9.17.121:8333 # AS24940
-176.37.82.83:8333 # AS39608
+142.202.48.124:8333 # AS63023
+143.0.142.156:8333 # AS264009
+144.2.104.35:8333 # AS57370
+144.2.104.189:8333 # AS57370
+144.126.147.252:8333 # AS40021
+147.28.211.75:8333 # AS54825
+147.32.95.62:8333 # AS2852
+149.7.216.178:8333 # AS174
+149.28.116.34:8333 # AS20473
+149.50.101.15:8333 # AS201814
+149.50.101.28:8333 # AS201814
+152.117.88.43:8333 # AS30600
+152.165.38.160:8333 # AS2527
+153.92.93.114:8333 # AS41998
+154.7.1.114:8333 # AS139646
+154.26.130.95:8333 # AS141995
+154.26.154.73:8333 # AS141995
+154.38.167.152:8333 # AS40021
+154.65.14.19:8333 # AS37628
+155.4.142.33:8333 # AS8473
+157.143.21.102:8333 # AS8758
+157.147.131.251:8333 # AS2527
+158.248.34.141:8333 # AS29695
+159.138.87.18:8333 # AS136907
+159.196.227.196:8333 # AS4764
+159.246.25.53:8333 # AS30491
+160.16.110.6:8333 # AS9370
+160.80.12.16:8333 # AS137
+160.80.97.66:8333 # AS137
+161.97.151.9:8333 # AS51167
+162.0.226.60:8333 # AS22612
+162.55.122.93:8333 # AS24940
+162.219.38.94:8333 # AS10099
+162.245.196.45:8333 # AS23314
+164.152.167.208:8333 # AS59253
+165.22.229.88:8333 # AS14061
+166.70.211.78:8333 # AS6315
+166.78.241.20:8333 # AS19994
+166.78.241.25:8333 # AS19994
+167.88.11.203:8333 # AS20278
+167.248.185.196:8333 # AS398721
+169.155.170.211:8333 # AS44486
+171.101.73.128:8333 # AS7470
+172.81.182.240:8333 # AS174
+172.92.31.45:8333 # AS11404
+172.93.106.85:8333 # AS23470
+172.233.211.171:8333 # AS63949
+172.234.95.35:8333 # AS63949
+172.241.70.236:8333 # AS7979
+173.66.197.19:8333 # AS701
+173.87.234.220:8333 # AS5650
+173.181.35.50:8333 # AS852
+173.183.130.47:8333 # AS852
+173.197.244.157:8333 # AS10838
+174.21.76.8:8333 # AS209
+174.57.136.72:8333 # AS33659
+174.63.171.76:8333 # AS33661
+174.88.243.94:8333 # AS577
+175.110.115.120:8333 # AS49981
176.74.136.237:8333 # AS35613
+176.99.2.90:8333 # AS197695
+176.114.248.225:8333 # AS202618
176.118.220.29:8333 # AS60042
-176.138.233.166:8333 # AS5410
-177.32.50.167:8333 # AS28573
-178.21.118.178:8333 # AS49544
-178.41.11.254:8333 # AS6855
-178.79.83.147:8333 # AS3212
-178.88.189.254:8333 # AS9198
-178.154.222.104:8333 # AS200350
-178.159.98.133:8333 # AS202390
-178.198.23.120:8333 # AS3303
-178.250.232.111:8333 # AS31197
-182.229.145.161:8333 # AS3786
-183.88.223.208:8333 # AS45758
-183.129.178.205:8333 # AS4134
-185.25.48.184:8333 # AS61272
-185.26.99.171:8333 # AS44066
-185.31.136.246:8333 # AS47605
-185.52.93.45:8333 # AS39449
-185.69.53.153:8333 # AS62282
-185.84.224.116:8333 # AS8816
-185.107.83.55:8333 # AS43350
-185.116.94.239:8333 # AS39184
-185.140.209.159:8333 # AS44901
-185.148.3.227:8333 # AS47605
-185.152.138.74:8333 # AS6697
-185.153.196.14:8333 # AS15836
-185.153.196.162:8333 # AS15836
-185.156.37.30:8333 # AS202605
-185.156.154.129:8333 # AS41897
-185.158.113.172:8333 # AS28917
-185.165.170.19:8333 # AS3223
-185.190.24.72:8333 # AS9002
-185.199.209.52:8333 # AS49666
-185.203.41.148:8333 # AS9009
+176.126.116.7:8333 # AS207586
+176.136.243.63:8333 # AS5410
+176.205.158.198:8333 # AS5384
+178.38.6.52:8333 # AS6730
+183.88.223.208:8333 # AS45629
+184.56.122.69:8333 # AS10796
+184.95.32.130:8333 # AS20454
+184.105.131.181:8333 # AS6939
+184.171.208.109:8333 # AS40788
+185.8.106.179:8333 # AS204770
+185.11.61.33:8333 # AS57523
+185.19.30.242:8333 # AS61098
+185.26.99.171:8333 # AS44051
+185.31.136.166:8333 # AS60414
+185.31.136.246:8333 # AS60414
+185.63.97.216:8333 # AS50825
+185.64.125.16:8333 # AS59921
+185.65.93.104:8333 # AS201730
+185.68.67.42:8333 # AS6772
+185.70.43.193:8333 # AS62371
+185.78.209.28:8333 # AS202128
+185.88.229.254:8333 # AS20963
+185.112.144.119:8333 # AS44925
+185.137.173.125:8333 # AS13030
+185.140.246.140:8333 # AS48602
+185.144.83.131:8333 # AS9009
+185.148.3.227:8333 # AS203003
+185.150.162.111:8333 # AS34197
+185.156.202.35:8333 # AS56388
+185.163.44.36:8333 # AS39798
+185.197.30.66:8333 # AS63473
+185.197.160.61:8333 # AS60144
185.209.12.76:8333 # AS212323
-185.210.125.33:8333 # AS205671
-185.233.189.210:8333 # AS61303
-185.250.36.66:8333 # AS1239
-185.254.97.164:8333 # AS44486
-186.235.86.249:8333 # AS263097
-188.27.79.235:8333 # AS8708
-188.35.167.14:8333 # AS34123
-188.68.53.44:8333 # AS47147
-188.119.67.137:8333 # AS9002
-188.127.243.41:8333 # AS56694
-188.138.112.60:8333 # AS20773
-188.142.199.17:8333 # AS21334
-188.155.72.160:8333 # AS6730
-188.214.129.52:8333 # AS16125
-188.214.129.139:8333 # AS16125
-188.215.62.122:8333 # AS203600
-188.237.167.51:8333 # AS8926
-188.246.224.12:8333 # AS49505
-189.6.221.37:8333 # AS28573
-190.2.146.90:8333 # AS49981
-190.17.18.190:8333 # AS7303
-190.210.98.253:8333 # AS16814
-192.3.11.24:8333 # AS36352
-192.69.53.18:8333 # AS11142
-192.146.137.44:8333 # AS25376
-193.22.128.12:8333 # AS39647
-193.39.142.89:8333 # AS60781
-193.46.74.252:8333 # AS395003
-193.46.74.254:8333 # AS395003
-193.95.249.3:8333 # AS5603
-193.149.176.200:8333 # AS40676
-193.151.155.122:8333 # AS49666
-193.187.90.122:8333 # AS3399
-193.196.37.62:8333 # AS34878
-194.35.184.95:8333 # AS9063
-194.165.30.20:8333 # AS35162
-194.191.232.153:8333 # AS1836
-195.32.108.164:8333 # AS3269
-195.56.63.11:8333 # AS5483
+185.239.221.23:8333 # AS61282
+185.243.218.19:8333 # AS56655
+185.243.218.106:8333 # AS56655
+185.248.160.163:8333 # AS43350
+188.12.149.216:8333 # AS3269
+188.63.158.192:8333 # AS3303
+188.138.88.47:8333 # AS8972
+188.138.112.60:8333 # AS8972
+188.213.92.39:8333 # AS206238
+188.243.71.145:8333 # AS35807
+189.32.136.9:8333 # AS28573
+190.53.100.34:8333 # AS27773
+190.64.134.52:8333 # AS6057
+191.13.128.58:8333 # AS27699
+191.251.32.162:8333 # AS18881
+191.255.221.37:8333 # AS27699
+192.3.11.20:8333 # AS36352
+192.3.11.26:8333 # AS36352
+192.34.87.86:8333 # AS33083
+192.161.48.47:8333 # AS8100
+192.187.121.46:8333 # AS33387
+192.227.73.9:8333 # AS13886
+192.243.215.102:8333 # AS63297
+193.22.128.23:8333 # AS56469
+193.72.32.187:8333 # AS33965
+193.84.116.22:8333 # AS2852
+193.176.1.74:8333 # AS24961
+193.200.206.14:8333 # AS49747
+193.218.118.13:8333 # AS207656
+193.222.130.14:8333 # AS29208
+194.0.157.6:8333 # AS25099
+194.14.246.9:8333 # AS50066
+194.67.64.229:8333 # AS49352
+194.67.208.191:8333 # AS209641
195.56.63.12:8333 # AS5483
-195.123.217.63:8333 # AS21100
-195.128.248.153:8333 # AS25229
-195.140.226.154:8333 # AS35614
-195.160.222.81:8333 # AS31148
-195.206.105.7:8333 # AS9009
-199.36.253.252:8333 # AS16713
-199.58.100.115:8333 # AS25961
-202.90.242.93:8333 # AS4764
-202.112.238.128:8333 # AS4538
-202.186.38.99:8333 # AS9930
-203.12.0.167:8333 # AS134697
-203.12.10.224:8333 # AS134697
-203.210.193.21:8333 # AS45899
-204.228.142.211:8333 # AS6315
-205.178.182.133:8333 # AS396998
-206.55.178.157:8333 # AS10242
-206.192.203.0:8333 # AS7029
-207.98.253.88:8333 # AS12083
-207.115.84.47:8333 # AS18530
-207.255.193.47:8333 # AS11776
-208.104.92.74:8333 # AS14615
-209.38.244.87:8333 # AS2914
-209.204.29.18:8333 # AS395439
+195.154.172.177:8333 # AS12876
+195.181.245.149:8333 # AS62282
+195.189.97.38:8333 # AS59642
+197.155.6.43:8333 # AS37199
+198.27.174.140:8333 # AS1299
+198.98.117.238:8333 # AS21949
+198.154.93.110:8333 # AS55081
+199.7.144.151:8333 # AS21949
+199.36.253.252:8333 # AS396952
+200.122.181.26:8333 # AS3790
+200.180.197.188:8333 # AS8167
+202.7.254.250:8333 # AS136994
+202.186.41.219:8333 # AS9930
+203.11.72.118:8333 # AS401199
+203.11.72.199:8333 # AS401199
+203.34.58.43:8333 # AS7545
+203.51.11.167:8333 # AS1221
+204.15.11.35:8333 # AS13331
+204.194.220.39:8333 # AS20055
+204.194.220.40:8333 # AS20055
+206.125.169.164:8333 # AS25795
+206.204.106.8:8333 # AS212947
+207.66.71.46:8333 # AS399220
+207.90.192.54:8333 # AS26832
+207.182.146.130:8333 # AS10297
+208.93.231.240:8333 # AS29893
+209.141.37.57:8333 # AS53667
+209.177.138.245:8333 # AS7832
209.205.204.218:8333 # AS55081
-209.237.133.54:8333 # AS53859
-210.6.95.127:8333 # AS9269
-210.205.146.114:8333 # AS9318
211.221.42.143:8333 # AS4766
-212.5.157.40:8333 # AS8866
-212.51.136.50:8333 # AS13030
+212.10.229.240:8333 # AS39642
+212.29.41.158:8333 # AS15763
+212.51.129.60:8333 # AS13030
+212.68.218.124:8333 # AS12392
212.86.32.106:8333 # AS15366
-212.162.152.149:8333 # AS24875
-212.227.150.147:8333 # AS8560
-212.227.155.170:8333 # AS8560
-212.251.162.190:8333 # AS2119
-213.109.236.129:8333 # AS47702
-213.141.154.201:8333 # AS12714
-213.193.83.251:8333 # AS6830
-213.193.83.252:8333 # AS6830
-213.202.225.122:8333 # AS24961
+212.158.133.185:8333 # AS1299
+213.165.95.142:8333 # AS8560
+213.174.156.81:8333 # AS39572
+213.174.156.86:8333 # AS39572
+213.217.210.90:8333 # AS12709
+213.227.147.244:8333 # AS60781
216.83.150.142:8333 # AS5048
-216.186.236.98:8333 # AS12083
-216.232.33.24:8333 # AS395570
+216.226.128.189:8333 # AS13706
+217.11.240.4:8333 # AS21430
+217.20.131.64:8333 # AS5483
217.64.47.138:8333 # AS39324
217.64.47.200:8333 # AS39324
-217.76.61.78:8333 # AS39597
-217.92.55.246:8333 # AS3320
-217.113.121.169:8333 # AS8416
217.155.244.170:8333 # AS13037
-217.170.124.170:8333 # AS35401
-217.173.236.25:8333 # AS8447
-217.180.192.116:8333 # AS30600
217.180.221.162:8333 # AS30600
-218.43.123.236:8333 # AS4713
-219.77.79.128:8333 # AS4760
-223.18.222.210:8333 # AS9304
-223.167.75.165:8333 # AS4837
-[2001:1620:5566:100::62c]:8333 # AS13030
-[2001:1620:a21:0:da5e:d3ff:fee3:68a0]:8333 # AS13030
+217.230.42.55:8333 # AS3320
+219.79.200.233:8333 # AS4760
+220.92.141.84:8333 # AS4766
+222.239.166.108:8333 # AS9318
+[2001:13d8:1c01:21:215:17ff:fe63:2a7e]:8333 # AS3790
+[2001:1528:111:ffff:214::207]:8333 # AS15685
+[2001:1620:542c:210::100]:8333 # AS13030
+[2001:18b8:0:100:0:b00b:420:69]:8333 # AS29789
+[2001:19f0:0:4f89:5400:4ff:fea0:3837]:8333 # AS20473
[2001:19f0:4401:e8a:5400:4ff:fe8e:d398]:8333 # AS20473
+[2001:19f0:5000:1a80:5400:4ff:fe71:aac5]:8333 # AS20473
+[2001:19f0:5:2b12:5400:4ff:fe6e:3afe]:8333 # AS20473
+[2001:19f0:5:5b81:5e6f:69ff:fe57:94d0]:8333 # AS20473
+[2001:19f0:6801:6ec:2::1]:8333 # AS20473
+[2001:19f0:c800:2ce5:5400:4ff:fed7:663d]:8333 # AS20473
[2001:1bc0:c1::2000]:8333 # AS29686
+[2001:1c03:3911:d900:4b0c:5f2:138a:5212]:8333 # AS33915
+[2001:1c04:1308:3100::985]:8333 # AS33915
+[2001:1c04:4008:6300:8a5f:2678:114b:a660]:8333 # AS33915
[2001:4060:4419:8001::42]:8333 # AS6772
-[2001:41d0:203:8f46::]:8333 # AS16276
-[2001:41d0:30e:8e00::]:8333 # AS16276
-[2001:41d0:403:3d61::]:8333 # AS16276
-[2001:41d0:405:6e00::]:8333 # AS16276
-[2001:41d0:8:83cf:195b:b202:9271:cc5b]:8333 # AS16276
-[2001:41d0:8:ed7f::1]:8333 # AS16276
-[2001:41d0:a:69a2::1]:8333 # AS16276
-[2001:41d0:a:6b4d::1]:8333 # AS16276
-[2001:470:1b55::]:8333 # AS6939
-[2001:470:1b62::]:8333 # AS6939
-[2001:470:1f09:b14::11]:8333 # AS6939
-[2001:470:1f0a:89a::2]:8333 # AS6939
-[2001:470:1f1b:5a6:216:3eff:fe24:1162]:8333 # AS6939
-[2001:470:75e9:1::10]:8333 # AS6939
+[2001:41d0:1004:24be::]:8333 # AS16276
+[2001:41d0:203:52c2::]:8333 # AS16276
+[2001:41d0:203:ba6c::]:8333 # AS16276
+[2001:41d0:303:146e::]:8333 # AS16276
+[2001:41d0:403:c20::]:8333 # AS16276
+[2001:41d0:700:1c4d::]:8333 # AS16276
+[2001:41d0:700:70a4::]:8333 # AS16276
+[2001:41d0:c:4b8::102]:8333 # AS16276
+[2001:428:5002:600:80be:7bff:fec4:9c43]:8333 # AS209
+[2001:470:1a34:2:a804:86ff:fec2:863a]:8333 # AS6939
+[2001:470:26:472::b7c]:8333 # AS6939
+[2001:470:28:b17::2]:8333 # AS6939
+[2001:470:71:358:6083:be0b:cbaa:a97]:8333 # AS6939
+[2001:470:7:b74::2]:8333 # AS6939
[2001:470:88ff:2e::1]:8333 # AS6939
-[2001:470:8ca0:2:7646:a0ff:fe9b:e662]:8333 # AS6939
+[2001:470:8a71:2::200]:8333 # AS6939
[2001:470:a:c13::2]:8333 # AS6939
-[2001:470:c:1077::2]:8333 # AS6939
+[2001:470:da72::2:3]:8333 # AS6939
[2001:4dd0:3564:0:30b7:1d7b:6fec:4c5c]:8333 # AS8422
[2001:4dd0:3564:0:88e:b4ff:2ad0:699b]:8333 # AS8422
[2001:4dd0:3564:0:9c1c:cc31:9fe8:5505]:8333 # AS8422
@@ -536,1213 +1071,986 @@
[2001:4dd0:3564:0:fd76:c1d3:1854:5bd9]:8333 # AS8422
[2001:4dd0:3564:1::7676:8090]:8333 # AS8422
[2001:4dd0:3564:1:b977:bd71:4612:8e40]:8333 # AS8422
+[2001:4dd0:af0e:3564:0:69:90:8333]:8333 # AS8422
[2001:4dd0:af0e:3564::69:1]:8333 # AS8422
[2001:4dd0:af0e:3564::69:90]:8333 # AS8422
-[2001:560:441f:1::4]:8333 # AS18530
-[2001:5a8:40c7:f500:7a0d:d50:255e:dbac]:8333 # AS46375
+[2001:569:5079:abd2::c9]:8333 # AS852
+[2001:5a8:40c7:f500:2601:7cdc:1a2d:661c]:8333 # AS1299
+[2001:5a8:40c7:f501:e0af:1c:1468:e272]:8333 # AS1299
+[2001:5a8:40db:2000:8668:a702:c89:bdd4]:8333 # AS1299
+[2001:5a8:40db:2000:867b:8aa6:2010:879a]:8333 # AS1299
+[2001:5a8:60c0:d500::7840]:8333 # AS1299
[2001:638:a000:4140::ffff:47]:8333 # AS680
-[2001:67c:26b4:ff00::44]:8333 # AS25376
-[2001:67c:440:688:91:236:251:137]:8333 # AS57944
-[2001:67c:440:688:91:236:251:139]:8333 # AS57944
+[2001:638:a000:b101::2b3d]:8333 # AS680
+[2001:648:2800:131:4b1f:f6fc:20f7:f99f]:8333 # AS5470
+[2001:678:68c:fffb::195]:8333 # AS13259
+[2001:678:d78:22d0:5065:c1ff:fef2:3f65]:8333 # AS8298
+[2001:67c:1220:808::93e5:81f]:8333 # AS197451
+[2001:67c:1254:d1:a7b7::1]:8333 # AS4455
+[2001:67c:1254:d2:6b9c::1]:8333 # AS4455
+[2001:67c:26b4:ff00::44]:8333 # AS57672
+[2001:67c:2db8:6::36]:8333 # AS39798
[2001:7c0:2310:0:f816:3eff:fe6c:4f58]:8333 # AS34878
-[2001:861:c62:2fd0:ca7f:54ff:fece:6d9]:8333 # AS5410
+[2001:7d0:8410:df00::1488]:8333 # AS3249
+[2001:8003:d117:3500:bfc5:7e90:9da5:a8c0]:8333 # AS1221
+[2001:818:df59:5800:f8a4:ceff:fefd:d63a]:8333 # AS12353
[2001:871:23d:d5d1:5a47:caff:fe71:c8d]:8333 # AS8447
+[2001:871:25f:ef0d:5e55:dad6:fe43:1e63]:8333 # AS8447
+[2001:8b0:1301:1000::60]:8333 # AS20712
+[2001:8e0:140b::94]:8333 # AS8758
+[2001:8f8:1b69:15e5:da9e:f3ff:fe75:d10d]:8333 # AS8966
[2001:910:109d:2c03:d217:c2ff:fe07:2cd9]:8333 # AS20766
+[2001:b011:8013:3a06:e6a:7f23:65d3:f1df]:8333 # AS3462
+[2001:b030:2422::208d]:8333 # AS3462
+[2001:b07:2e9:5bb0:a2d5:2db3:8af4:4bf]:8333 # AS12874
+[2001:b07:5d26:7fb3:6ad1:350a:b65e:88dd]:8333 # AS12874
[2001:b07:6461:7811:489:d2da:e07:1af7]:8333 # AS12874
-[2001:b07:646b:8074:32e8:9243:a337:e60a]:8333 # AS12874
+[2001:b07:646d:caf:3c06:693f:73a9:e71b]:8333 # AS12874
+[2001:b07:6474:51d8:c27e:427e:fe37:6356]:8333 # AS12874
+[2001:b07:6474:51d8:f31f:fdc:1c90:67ac]:8333 # AS12874
+[2001:b07:aa7:f93a:21b8:eee1:4973:edf9]:8333 # AS12874
+[2001:bc8:1201:701:ca1f:66ff:fec9:221c]:8333 # AS12876
[2001:bc8:1201:715:ca1f:66ff:fec9:5ff0]:8333 # AS12876
[2001:bc8:1201:71a:2e59:e5ff:fe42:52f4]:8333 # AS12876
[2001:bc8:1600:0:208:a2ff:fe0c:8a2e]:8333 # AS12876
-[2003:dc:2f4a:eb00:4ecc:6aff:fe25:c9a3]:8333 # AS3320
-[2003:f6:3f31:600:4c9f:7620:8324:d4a7]:8333 # AS3320
-[2400:6180:100:d0::848:5001]:8333 # AS14061
-[2400:6180:100:d0::940:4001]:8333 # AS14061
-[2400:6180:100:d0::953:8001]:8333 # AS14061
-[2400:6180:100:d0::a02:2001]:8333 # AS14061
-[2400:6180:100:d0::a0f:9001]:8333 # AS14061
-[2400:6180:100:d0::a3d:b001]:8333 # AS14061
-[2400:6180:100:d0::a3f:1001]:8333 # AS14061
-[2400:6180:100:d0::a49:a001]:8333 # AS14061
-[2400:6180:100:d0::a56:d001]:8333 # AS14061
-[2400:6180:100:d0::a56:e001]:8333 # AS14061
-[2401:b140:1::100:210]:8333 # AS54415
+[2001:bc8:3e54:6b02::1]:8333 # AS12876
+[2001:bc8:6005:1d:208:a2ff:fe0c:6cc2]:8333 # AS12876
+[2001:bc8:610:9:46a8:42ff:fe0c:d385]:8333 # AS12876
+[2001:bc8:700:2313::1]:8333 # AS12876
+[2001:bc8:701:409:b683:51ff:fe06:75f4]:8333 # AS12876
+[2001:bc8:701:40d:ae16:2dff:fea6:e868]:8333 # AS12876
+[2001:d08:d9:7a02:9e6b:ff:fe56:e9b3]:8333 # AS9534
+[2001:df0:a280:1001::5:1]:8333 # AS139225
+[2001:e68:5425:2834:618e:9069:a977:5c66]:8333 # AS4788
+[2001:ee0:4b4f:d480:2e0:4cff:fe08:8998]:8333 # AS45899
+[2001:f40:95c:8d55:7038:f146:d2d4:118]:8333 # AS9930
+[2001:f40:95c:8d55:7270:fcff:fe05:3cd]:8333 # AS9930
+[2001:f40:987:1182:6f:a46e:ec5a:48aa]:8333 # AS9930
+[2003:d5:b703:eb00:b241:6fff:fe10:312c]:8333 # AS3320
+[2003:dc:2f4a:c200:4ecc:6aff:fe25:c9a3]:8333 # AS3320
+[2003:e6:7f42:a900:e65f:1ff:feac:cbfc]:8333 # AS3320
+[2003:ec:2f04:b100:211:32ff:fef7:beef]:8333 # AS3320
+[2003:f0:df08:ec02:aaa1:59ff:fe57:7779]:8333 # AS3320
+[2400:2411:3e05:cc00:46a:1744:4d0f:d26b]:8333 # AS17676
+[2400:2411:a3e1:4900:85c8:62de:e8cc:6875]:8333 # AS17676
+[2400:4053:1203:3f00:1:1:1:134]:8333 # AS4713
+[2400:6180:0:d1::14e:b001]:8333 # AS14061
+[2400:8901::f03c:92ff:fe3e:e1d6]:8333 # AS63949
+[2400:8901::f03c:92ff:fe4e:95f3]:8333 # AS63949
+[2400:8901::f03c:93ff:fe5a:685c]:8333 # AS63949
+[2400:8905::f03c:94ff:fecc:1466]:8333 # AS48337
+[2400:8907::f03c:94ff:fed9:9696]:8333 # AS63949
+[2401:2500:204:1149:133:125:50:180]:8333 # AS7684
[2401:b140:1::100:220]:8333 # AS54415
-[2402:e280:3d17:945:1889:d3c6:8e85:d3c4]:8333 # AS134674
-[2403:6200:8821:2fdf:3903:a2b1:9f:c897]:8333 # AS20473
+[2401:b140:3::44:110]:8333 # AS54415
+[2401:b140:3::44:120]:8333 # AS54415
+[2401:d002:2103:400:211:32ff:fe9e:7ae3]:8333 # AS38195
+[2401:d002:3902:700:d72c:5e22:4e95:389d]:8333 # AS38195
+[2401:d002:602:7800:289b:8dab:d50e:dea2]:8333 # AS38195
+[2402:a7c0:8100:a015::6f2:79a5]:8333 # AS59253
+[2402:b801:287c:800:1218:45cf:2d05:cbe4]:8333 # AS18371
+[2403:580c:c505:0:6955:67d3:6229:88e7]:8333 # AS4764
+[2403:5816:c8a3:0:2677:3ff:fe03:9422]:8333 # AS4764
+[2403:71c0:2000:b3e0::100]:8333 # AS3258
+[2403:71c0:2000:b3e0::101]:8333 # AS3258
+[2403:71c0:2000:b3e0::7693]:8333 # AS3258
+[2404:4408:6397:8201::250]:8333 # AS9790
+[2405:6582:de0:4400:8ce:2b80:2960:7b4e]:8333 # AS4685
+[2405:6582:de0:4400:f:854d:5057:4fc9]:8333 # AS4685
+[2405:aa00:2::40]:8333 # AS7712
+[2406:3003:2002:3a69:387e:3c9a:8166:106b]:8333 # AS55430
[2406:3400:216:8b00:211:32ff:feca:336b]:8333 # AS10143
-[2406:da14:335:b600:eb14:5fd:2072:3653]:8333 # AS16509
-[2406:da1c:50b:cd00:3cae:1728:ecfc:4334]:8333 # AS16509
-[2406:da1c:50b:cd03:36d6:13fa:eba8:6543]:8333 # AS16509
-[2406:da1e:a4e:8a03:d90a:fbb0:23d3:ccb4]:8333 # AS16509
+[2406:8c00:0:3422:133:18:228:108]:8333 # AS24282
+[2406:da12:ce1:f000:afcd:2e3a:11f6:67c0]:8333 # AS16509
+[2406:da12:ce1:f001:2f6e:891:55f0:55e1]:8333 # AS16509
+[2406:da12:ce1:f001:8974:8c19:bae2:5213]:8333 # AS16509
+[2406:da12:ce1:f001:a791:ac49:22a4:fd2]:8333 # AS16509
+[2406:da1a:5b2:ea00:f17a:1319:baed:1582]:8333 # AS16509
+[2406:da1a:5b2:ea01:58c:5fb:ae7c:484c]:8333 # AS16509
[2407:3640:2107:1278::1]:8333 # AS141995
-[2407:7000:9f71:2d00:1c5a:5292:5108:c734]:8333 # AS9500
-[2408:8207:2655:fae0::10b]:8333 # AS4837
-[2408:8207:5456:d8d0::5c6]:8333 # AS4837
-[2409:250:60a0:2600:a971:1cdd:3d5b:654d]:8333 # AS55392
+[2407:c800:4f12:5e7:95e3:4bf5:b37:86f7]:8333 # AS9365
+[2408:8207:5455:8d00::704]:8333 # AS4808
+[2409:8a28:ec1:6840:f7a3:88c8:cacc:fe0a]:8333 # AS56041
+[2409:8a7c:1e42:2a50:45d9:11d8:b04:cbd7]:8333 # AS9808
[240d:1a:4b1:e700:19:d9ef:7f3:8e75]:8333 # AS2527
-[2600:1700:3948:82f:ce04:d382:5226:4cac]:8333 # AS7018
-[2600:1f16:a08:b900:4bfe:2f81:ae31:5f5]:8333 # AS16509
+[240e:38a:3e3a:cf00:a771:2e91:51a7:2fb4]:8333 # AS4134
+[2600:1700:3101:b00f:2c96:27a0:452c:f186]:8333 # AS7018
+[2600:1700:38d5:140f:f64d:30ff:fe63:504e]:8333 # AS7018
+[2600:1700:488:10::421]:8333 # AS7018
+[2600:1700:539e:b00f:5054:ff:fe1b:2913]:8333 # AS7018
+[2600:1700:5453:69e::109]:8333 # AS7018
+[2600:1700:5af3:2c10:46a8:42ff:fe08:5835]:8333 # AS7018
+[2600:1700:6b0:d200::ff]:8333 # AS7018
+[2600:1700:944c:e00f:2a27:f664:1801:599f]:8333 # AS7018
+[2600:1700:ec7b:5730::46]:8333 # AS7018
+[2600:1700:ec7b:5730:f2b6:1eff:fe70:7583]:8333 # AS7018
+[2600:1900:4000:4cc4:0:13::]:8333 # AS396982
+[2600:1900:4020:65f:0:1::]:8333 # AS396982
+[2600:1900:4030:a25e::]:8333 # AS396982
+[2600:1900:40b0:3af2:0:5::]:8333 # AS396982
+[2600:1900:40b0:3af2::]:8333 # AS396982
+[2600:1900:40c0:2210::]:8333 # AS396982
+[2600:1900:40e0:41fa:0:4::]:8333 # AS396982
+[2600:1900:41a0:af83::]:8333 # AS396982
+[2600:1900:5400:6e4:0:3::]:8333 # AS396982
+[2600:1901:8180:5c1::]:8333 # AS396982
+[2600:1f14:40e:e300:cea2:19ef:fa3a:e125]:8333 # AS16509
+[2600:1f16:a08:b900:2321:e069:cde4:67fb]:8333 # AS16509
+[2600:1f18:64d9:1603:4436:871e:2bfe:7403]:8333 # AS14618
+[2600:1f18:66fc:d700:9b71:f45:f3c9:c43b]:8333 # AS14618
+[2600:1f18:66fc:d701:d68d:ea70:77a0:4072]:8333 # AS14618
+[2600:1f18:719a:e301:773d:1375:24fb:bf24]:8333 # AS14618
+[2600:1f18:719a:e302:2758:8042:929f:a384]:8333 # AS14618
+[2600:1f18:719a:e302:4c90:e1e6:2a59:82c4]:8333 # AS14618
+[2600:1f18:719a:e302:e6c0:8878:401c:27c2]:8333 # AS14618
+[2600:1f18:719a:e302:ef0c:40ab:f8f:6d6c]:8333 # AS14618
+[2600:1f18:719a:e302:fa9e:86ad:e463:ae17]:8333 # AS14618
[2600:1f1c:2d3:2401:6989:b1fd:d2a6:fbc8]:8333 # AS16509
-[2600:1f1e:2fe:3601:63a8:ebf6:83e4:1932]:8333 # AS16509
[2600:2104:1003:c5ab:dc5e:90ff:fe18:1d08]:8333 # AS11404
-[2600:3c00::f03c:91ff:fe4b:c52]:8333 # AS63949
-[2600:3c00:e002:2e32::1:c8]:8333 # AS63949
-[2600:3c02::f03c:94ff:fecc:c99c]:8333 # AS63949
-[2600:6c4e:a00:cd0:428d:5cff:fe58:4884]:8333 # AS20115
+[2600:3c00::f03c:92ff:fe92:2745]:8333 # AS63949
+[2600:3c00::f03c:94ff:feb7:4dd7]:8333 # AS63949
+[2600:3c00::f03c:94ff:fed1:1d3d]:8333 # AS63949
+[2600:3c01::f03c:93ff:fee6:2146]:8333 # AS63949
+[2600:3c02::f03c:92ff:fe5d:9fb]:8333 # AS63949
+[2600:3c02::f03c:94ff:fe12:8938]:8333 # AS63949
[2600:6c54:7100:1ad1:c92e:36d:651:bd18]:8333 # AS20115
-[2601:184:300:156c:ba4c:30:9da:6c06]:8333 # AS7922
-[2601:185:8302:12f0:1ab2:2840:9de4:1550]:8333 # AS7922
-[2603:3003:11b:e100:20c:29ff:fe38:bbc0]:8333 # AS7922
-[2603:3004:6a1:3800:851f:584d:7aba:affb]:8333 # AS7922
-[2603:3024:18ee:8000:20e:c4ff:fed1:ef15]:8333 # AS7922
-[2603:8080:1f07:6fdd:7de2:d969:78c9:b7ea]:8333 # AS7843
+[2600:6c67:2100:670:b179:be4c:8cca:e8f0]:8333 # AS33588
+[2600:6c67:8a3f:e191:4261:86ff:fe4f:aac]:8333 # AS33588
+[2600:70ff:eaad:beef::2]:8333 # AS6939
+[2600:8801:2f80:b2::141c]:8333 # AS22773
+[2600:8806:2300:460:a0e6:7e10:c3a8:bb47]:8333 # AS22773
+[2601:152:497f:2a38::7b]:8333 # AS33657
+[2601:185:8302:12f0:1ab2:2840:9de4:1550]:8333 # AS7015
+[2601:18c:9002:3de5:219:d1ff:fe75:dc2f]:8333 # AS7015
+[2601:19c:417e:3a11:20e7:b3ff:fecf:a99]:8333 # AS7015
+[2601:243:820:5824:4216:8de:e04a:fb54]:8333 # AS33491
+[2601:280:5c00:43d:4aba:4eff:fef8:6e5d]:8333 # AS33652
+[2601:603:5300:83b7:0:ff:fe00:4209]:8333 # AS33650
+[2602:fec3:0:1::69]:8333 # AS62563
+[2602:fec3:2:5::5:73]:8333 # AS62563
+[2602:ffb6:4:4d3d:f816:3eff:fec6:c15]:8333 # AS174
+[2602:ffb6:4:739e:f816:3eff:fe00:c2b3]:8333 # AS174
+[2602:ffb6:4:7b8e:f816:3eff:fe9d:9dc2]:8333 # AS174
+[2602:ffc5:200:1e01:241d:e589:9650:c773]:8333 # AS20473
+[2603:3003:11b:e100:20c:29ff:fe38:bbc0]:8333 # AS33657
+[2603:3003:11b:e100::f202]:8333 # AS33657
+[2603:3004:717:5800:485b:39ff:feab:1d54]:8333 # AS33490
+[2603:3005:1503:700::8af2]:8333 # AS7015
+[2603:3007:701:8000:b7d9:9e1e:8e0d:52fa]:8333 # AS7016
+[2603:300a:912:627a:be24:11ff:fe7b:39c3]:8333 # AS33491
+[2603:3015:e21:6800:15b3:d692:a536:12ff]:8333 # AS33668
+[2603:3024:1c07:e00::8c2d]:8333 # AS33651
+[2603:3024:2005:8000::f41b]:8333 # AS33651
+[2603:6011:af41:7214::5]:8333 # AS10796
+[2603:6080:9003:2fbc:60b1:6a4e:e364:c85d]:8333 # AS11426
+[2603:8001:3300:7d75::c48]:8333 # AS20001
+[2603:8080:1f07:6fdd:7de2:d969:78c9:b7ea]:8333 # AS11427
+[2603:8081:6c00:77:215:5dff:fe02:1555]:8333 # AS11427
+[2603:80a0:700:1886::39]:8333 # AS11427
[2604:4080:1036:80b1:50e1:43ff:fe0e:9df5]:8333 # AS11404
+[2604:4500:6:285::18]:8333 # AS29802
+[2604:86c0:3001:5::12:73]:8333 # AS63023
+[2604:a00:3:2098:216:3eff:fe28:c447]:8333 # AS19318
+[2604:a00:50:39:c514:becd:bece:ad3a]:8333 # AS19318
+[2604:a880:400:d0::1c96:e001]:8333 # AS14061
+[2604:a880:400:d0::1d46:c001]:8333 # AS14061
+[2604:a880:400:d0::1def:8001]:8333 # AS14061
+[2604:a880:400:d0::1dfe:a001]:8333 # AS14061
+[2604:a880:400:d1::849:6001]:8333 # AS14061
+[2604:a880:4:1d0::31:e000]:8333 # AS14061
+[2604:a880:4:1d0::c5:6000]:8333 # AS14061
+[2605:1080:0:f00::70]:8333 # AS23367
+[2605:21c0:2000:11:204:194:220:40]:8333 # AS20055
+[2605:59c8:1800:2596:c26c:e780:26fd:fcf8]:8333 # AS14593
+[2605:59c8:2a99:9d00:5377:7333:efde:d32]:8333 # AS14593
+[2605:59c8:61f:3900:2efd:a1ff:fedc:f8d4]:8333 # AS14593
[2605:6400:30:f220::]:8333 # AS53667
-[2605:6400:30:fd6f::4]:8333 # AS53667
-[2605:c000:2a0a:1::102]:8333 # AS7393
+[2605:6440:3001:2f:3eec:efff:fe91:f840]:8333 # AS396356
+[2605:6440:3001:2f::2]:8333 # AS396356
+[2605:6440:3001:49:7ec2:55ff:fea8:31cc]:8333 # AS396356
+[2605:6440:3001:49::2]:8333 # AS396356
+[2605:6f80:0:7:fc1b:ccff:fe8a:d822]:8333 # AS36114
+[2605:ae00:203::203]:8333 # AS7819
[2606:6d00:100:5102:3d2:f06a:c2e8:a54]:8333 # AS1403
-[2607:5300:60:2e54::1]:8333 # AS16276
-[2607:5300:61:854::1]:8333 # AS16276
+[2607:5300:203:46ea::]:8333 # AS16276
+[2607:5300:60:314c::1]:8333 # AS16276
[2607:9280:b:73b:250:56ff:fe14:25b5]:8333 # AS395502
[2607:9280:b:73b:250:56ff:fe21:9c2f]:8333 # AS395502
[2607:9280:b:73b:250:56ff:fe21:bf32]:8333 # AS395502
[2607:9280:b:73b:250:56ff:fe33:4d1b]:8333 # AS395502
[2607:9280:b:73b:250:56ff:fe3d:401]:8333 # AS395502
-[2620:a6:2000:1:1:0:d:3015]:8333 # AS27566
-[2620:a6:2000:1:2:0:3:266c]:8333 # AS27566
-[2620:a6:2000:1:2:0:9:930b]:8333 # AS27566
-[2620:a6:2000:1:2:0:b:3011]:8333 # AS27566
-[2800:150:11d:2426:62b:b164:704a:6962]:8333 # AS22047
-[2800:300:8251:b50::d]:8333 # AS27651
-[2800:300:8251:b50:e92:64f5:22af:c31e]:8333 # AS27651
-[2800:40:15:6ad:48e8:2200:a882:e08e]:8333 # AS16814
-[2803:5180:4100:4000::2]:8333 # AS52468
-[2803:9800:9447:84bb:cab8:d2f5:388c:9a57]:8333 # AS19037
-[2804:14d:7e33:83b0:6e41:1ccc:cf20:aff9]:8333 # AS4230
+[2607:f2c0:e045:f2e0:fe4c:fbb:6c99:1220]:8333 # AS5645
+[2607:f2c0:f00e:300::54]:8333 # AS5645
+[2607:f2f8:ad40:ea11::1]:8333 # AS25795
+[2607:fdc0:5:9::2ca]:8333 # AS20326
+[2607:fea8:601e:7d01:be24:11ff:fe89:27f3]:8333 # AS812
+[2620:11c:5001:1118:d267:e5ff:fee9:e673]:8333 # AS13331
+[2620:11c:5001:2199:d267:e5ff:fee9:e673]:8333 # AS13331
+[2620:6:2003:105:67c:16ff:fe51:58bf]:8333 # AS395460
+[2620:6e:a000:1:42:42:42:42]:8333 # AS397444
+[2620:a6:2000:1:1:0:9:742a]:8333 # AS27566
+[2620:a6:2000:1:1:0:d:7f1d]:8333 # AS27566
+[2620:a6:2000:1:2:0:6:49c8]:8333 # AS27566
+[2620:a6:2000:1:2:0:b:388a]:8333 # AS27566
+[2620:ca:a000:beef::1]:8333 # AS401199
+[2620:ca:a000:beef::10]:8333 # AS401199
+[2620:ca:a000:beef::2]:8333 # AS401199
+[2620:ca:a000:beef::3]:8333 # AS401199
+[2620:ca:a000:beef::6]:8333 # AS401199
+[2800:150:11d:1093:c9e3:1ef4:bc4:250d]:8333 # AS22047
+[2800:40:17:24f:4d95:e130:7f97:90f2]:8333 # AS16814
+[2800:40:18:7d1:a236:bcff:fe58:b6ec]:8333 # AS16814
+[2800:40:74:4b8b:f673:db63:6f6f:2310]:8333 # AS16814
+[2803:5180:4100:4000::2]:8333 # AS263762
+[2803:9800:9447:84bb:b87f:1df2:ff01:1c28]:8333 # AS19037
+[2803:9800:a007:8391:1fd7:c263:a55b:b9fb]:8333 # AS19037
+[2804:14c:65d7:8ea5:6060:2102:6ba6:5614]:8333 # AS28573
+[2804:14d:7e33:83b0:6e41:1ccc:cf20:aff9]:8333 # AS28573
+[2804:229c:8200:18d6:14a:d8c8:b4dd:3f25]:8333 # AS264111
[2804:431:e038:cd01:aaa1:59ff:fe0d:44b8]:8333 # AS27699
-[2804:d57:450d:f00:a422:9828:b00e:91e9]:8333 # AS8167
-[2806:2f0:5020:d287:4dcd:6204:909b:4125]:8333 # AS17072
+[2804:d41:e028:5900:aea:4236:2d76:1eb9]:8333 # AS7738
+[2804:d45:cb22:ef00:f89c:d038:2a36:a3fa]:8333 # AS7738
+[2804:d57:4b3d:7d00:752d:1d78:6b32:f71c]:8333 # AS8167
+[2804:d57:5949:1800:2a0:98ff:fe79:339b]:8333 # AS8167
+[2804:fec:d2d8:6100:fa63:2ecd:48a0:2f34]:8333 # AS262493
+[2806:103e:1b:4835:a787:2ea5:9025:aaa7]:8333 # AS8151
+[2806:267:148a:1d10:dc4b:3694:423b:b6b4]:8333 # AS13999
+[2806:2f0:80e1:e17b:3529:8aa:90c:509a]:8333 # AS17072
+[2806:2f0:a481:c585:603:478e:57f9:409e]:8333 # AS17072
+[2a00:1169:114:dc00::]:8333 # AS29066
+[2a00:1190:c013::be:1337]:8333 # AS16302
+[2a00:11c0:60:294:c48f:beff:fe15:a97f]:8333 # AS197540
[2a00:1298:8001::6542]:8333 # AS5578
[2a00:12e0:101:99:20c:29ff:fe29:d03f]:8333 # AS6798
[2a00:1398:4:2a03:3eec:efff:fe05:d93e]:8333 # AS34878
[2a00:1398:4:2a03::bc03]:8333 # AS34878
+[2a00:13a0:3015:1:85:14:79:26]:8333 # AS31242
[2a00:1768:2001:27::ef6a]:8333 # AS43350
+[2a00:1a08:ffff:5::11]:8333 # AS25534
[2a00:1f40:5001:108:5d17:7703:b0f5:4133]:8333 # AS42864
+[2a00:1f40:5001:386:dead:beef:b1ac:c0fe]:8333 # AS42864
[2a00:23c5:fe80:7301:d6ae:52ff:fed5:56a5]:8333 # AS2856
[2a00:23c6:5c8a:5c00:c05a:4dff:fe65:9d69]:8333 # AS2856
-[2a00:6020:4503:3700:5054:ff:fe90:640e]:8333 # AS60294
-[2a00:6020:b489:2000:5054:ff:fefc:5ed8]:8333 # AS60294
-[2a00:8a60:e012:a00::21]:8333 # AS680
-[2a00:bbe0:0:221f::246]:8333 # AS47605
-[2a00:d520:9:9300:420b:544e:8019:6d3a]:8333 # AS15600
-[2a00:fd40:c:c::c]:8333 # AS3269
+[2a00:4d80::1]:8333 # AS43150
+[2a00:5980:93::135]:8333 # AS197869
+[2a00:6020:4914:5700:db31:ca50:797:c468]:8333 # AS60294
+[2a00:6020:509e:a400:211:32ff:fe5c:369c]:8333 # AS60294
+[2a00:6020:b406:e00:79e:9ad6:9181:ebb8]:8333 # AS60294
+[2a00:6020:b489:2000:42:c0ff:fea8:b209]:8333 # AS60294
+[2a00:7c80:0:4e::2]:8333 # AS49981
+[2a00:7c80:0:4e:b7c0::2001]:8333 # AS49981
+[2a00:8a60:e012:a00::9001]:8333 # AS47610
+[2a00:a040:199:84fa:1ac0:4dff:fe41:3e93]:8333 # AS12849
+[2a00:bba0:1204:3700:21e:6ff:fe4a:5378]:8333 # AS207375
+[2a00:bbe0:0:221f::246]:8333 # AS60414
+[2a00:d4e0:ff:fc02:9e6b:ff:fe17:6115]:8333 # AS15600
+[2a00:d880:5:c2::d329]:8333 # AS198203
+[2a00:ee2:4d00:600::1]:8333 # AS5603
+[2a00:ee2:4d00:6b0::1000:1]:8333 # AS5603
+[2a01:238:425f:4600:bbb8:16d6:e907:cb6f]:8333 # AS6724
+[2a01:239:265:ad00::1]:8333 # AS8560
+[2a01:261:218:3f00:8d0f:2105:c657:4ae7]:8333 # AS34779
+[2a01:4b00:807c:3100:a36:c9ff:fe7e:de5f]:8333 # AS56478
+[2a01:4b00:b906:f100:d812:4f64:a931:19b7]:8333 # AS56478
+[2a01:4b00:b906:f100:dea6:32ff:fed5:f142]:8333 # AS56478
+[2a01:4b00:bf1b:7200:d826:7d6f:b13:276c]:8333 # AS56478
+[2a01:4f8:171:16af::2]:8333 # AS24940
[2a01:4f8:171:1f16::2]:8333 # AS24940
-[2a01:4f8:200:7222::2]:8333 # AS24940
[2a01:4f8:202:4205::2]:8333 # AS24940
-[2a01:4f8:242:2016::2]:8333 # AS24940
-[2a01:4f8:261:420c::2]:8333 # AS24940
-[2a01:4f8:272:4cd9::2]:8333 # AS24940
-[2a01:4f9:1a:a966::2]:8333 # AS24940
-[2a01:4f9:1a:af0d::2]:8333 # AS24940
-[2a01:4f9:2b:29a::2]:8333 # AS24940
-[2a01:4f9:5a:44a5::2]:8333 # AS24940
-[2a01:7a7:2:2804:ae1f:6bff:fe9d:6c94]:8333 # AS20773
-[2a01:8740:1:753::e5cb]:8333 # AS57344
-[2a01:8740:1:ff2e::9428]:8333 # AS57344
-[2a01:8740:1:ffc5::8c6a]:8333 # AS57344
-[2a01:cb00:790:f500:110b:b446:2260:7d2c]:8333 # AS3215
-[2a01:cb10:336:cb00:61ac:d15d:4ac0:2cbd]:8333 # AS3215
-[2a01:cb10:336:cb00:d237:45ff:fec5:2cd0]:8333 # AS3215
-[2a01:cb15:804c:8000:21e:6ff:fe51:2c32]:8333 # AS3215
-[2a01:e0a:185:55f0:a0ba:9eaf:9853:92b7]:8333 # AS12322
-[2a01:e0a:301:7010:b87d:e14b:cea9:b998]:8333 # AS12322
+[2a01:4f8:242:4246::2]:8333 # AS24940
+[2a01:4f8:252:1ceb::2]:8333 # AS24940
+[2a01:4f8:271:5ca8::2]:8333 # AS24940
+[2a01:4f9:1a:aad4::2]:8333 # AS24940
+[2a01:4f9:4a:515b::2]:8333 # AS24940
+[2a01:4f9:5a:16cb:876a:bce7:b3c8:118a]:8333 # AS24940
+[2a01:4f9:5a:25c2::2]:8333 # AS24940
+[2a01:4ff:1f0:8517::1]:8333 # AS212317
+[2a01:4ff:1f0:91ad::1]:8333 # AS212317
+[2a01:4ff:1f0:ec0d::1]:8333 # AS212317
+[2a01:4ff:f0:cc2a::1]:8333 # AS213230
+[2a01:4ff:f0:e4e9::1]:8333 # AS213230
+[2a01:5a8:303:13ac::1]:8333 # AS8866
+[2a01:5a8:308:4333:4074:6aff:fe9c:f5d2]:8333 # AS8866
+[2a01:7a7:2:2804:ae1f:6bff:fe9d:6c94]:8333 # AS29066
+[2a01:7c8:aaac:89:5054:ff:feb7:f5cb]:8333 # AS20857
+[2a01:7c8:aac2:180:5054:ff:fe56:8d10]:8333 # AS20857
+[2a01:8740:1:753::e5cb]:8333 # AS203380
+[2a01:8740:1:ff2e::9428]:8333 # AS203380
+[2a01:8740:1:ffc5::8c6a]:8333 # AS203380
+[2a01:cb00:139e:a00:142d:fec1:d0df:da18]:8333 # AS3215
+[2a01:cb00:1428:ea00:8a4c:1b72:f959:ca4]:8333 # AS3215
+[2a01:cb10:249:7300:b:c:b:c]:8333 # AS3215
+[2a01:e0a:1c1:a3e0:443b:bcab:7778:b03b]:8333 # AS12322
+[2a01:e0a:252:6bd0::2]:8333 # AS12322
[2a01:e0a:3b3:1420:7ca0:3a9a:5cc3:b644]:8333 # AS12322
-[2a01:e0a:5:9390:bf35:4d41:8a2a:570]:8333 # AS12322
+[2a01:e0a:57b:a0:7039:12e3:6547:2849]:8333 # AS12322
+[2a01:e0a:83d:dd30:246a:4af7:53f4:8d65]:8333 # AS12322
[2a01:e0a:9e9:c240:8e3a:af64:4f0:8f79]:8333 # AS12322
-[2a01:e0a:b0f:37e0:a13f:e65:ac42:8e36]:8333 # AS12322
-[2a01:e0a:b5:7f50:c257:a55b:4846:97e1]:8333 # AS12322
-[2a01:e0a:bf6:8d70:20c:29ff:fe30:4fd2]:8333 # AS12322
-[2a01:e11:100c:70:39f3:e3c9:832f:37a]:8333 # AS12322
-[2a01:e34:ec1d:7100:8aae:ddff:fe02:4159]:8333 # AS12322
-[2a02:1210:7c92:5100:211:32ff:feae:152d]:8333 # AS3303
-[2a02:1210:86bf:f100:a9ac:d041:1f8e:6925]:8333 # AS3303
-[2a02:22a0:bbb3:dc10:50e1:57ff:fe70:9492]:8333 # AS1136
-[2a02:247a:215:3e00:1::1]:8333 # AS8560
-[2a02:2c60:f103:7c0:1a31:bfff:fecc:5d91]:8333 # AS9063
+[2a01:e0a:b7:7db0:24e:1ff:feaa:e183]:8333 # AS12322
+[2a01:e0a:db3:66a0:92e1:4c4:8ce9:2b5d]:8333 # AS12322
+[2a01:e0a:df:b9a0:b62e:99ff:fece:1395]:8333 # AS12322
+[2a01:e0a:e6e:6bb0:2e0:4cff:fe68:232]:8333 # AS12322
+[2a01:e11:100c:70:39f3:e3c9:832f:37a]:8333 # AS29447
+[2a02:1210:1c04:d900:86e5:2135:4f88:82e]:8333 # AS3303
+[2a02:1210:200a:3c00:b559:6c65:10cb:3765]:8333 # AS3303
+[2a02:1210:3c3a:5600:61e6:a811:ef0b:f9c2]:8333 # AS3303
+[2a02:1210:4857:ed00:4c86:3d1c:db1a:460d]:8333 # AS3303
+[2a02:1210:4aba:e800:21ec:346:a29f:90be]:8333 # AS3303
+[2a02:1210:60e0:800:8d6e:134d:a0ca:ef24]:8333 # AS3303
+[2a02:1210:7823:de00:211:32ff:feae:152d]:8333 # AS3303
+[2a02:1210:84ea:f600:503e:6f19:c2c1:9ca6]:8333 # AS3303
+[2a02:13b8:f000:101::a]:8333 # AS15614
+[2a02:168:2000:97::26]:8333 # AS13030
+[2a02:168:420b:7::7]:8333 # AS13030
+[2a02:168:420b:a::20]:8333 # AS13030
+[2a02:168:62a7::b1c]:8333 # AS13030
+[2a02:168:675e:0:e65f:1ff:fe09:3591]:8333 # AS13030
+[2a02:168:b5cf:4::]:8333 # AS13030
+[2a02:1748:f7df:95b1:96c6:91ff:fe1d:e0b6]:8333 # AS51184
+[2a02:21b4:2089:9100:106b:c6b:c328:be4e]:8333 # AS57370
+[2a02:21b4:c820:c300:3126:c960:f356:aab5]:8333 # AS57370
+[2a02:22a0:bbb3:dc10:50e1:57ff:fe70:9492]:8333 # AS28685
+[2a02:247a:215:3e00::1]:8333 # AS8560
+[2a02:247a:22d:c000:1::1]:8333 # AS8560
+[2a02:247a:243:7b00::1]:8333 # AS8560
+[2a02:2780:9000:70::7]:8333 # AS35434
+[2a02:2780:9000:70::f]:8333 # AS35434
+[2a02:29b8:dc01:3750::c4d]:8333 # AS51852
+[2a02:2f05:6307:100:fd:ac4b:7f1a:1d95]:8333 # AS8708
[2a02:3102:4d5c:f000:dea6:32ff:febb:b9cb]:8333 # AS6805
-[2a02:3102:bc00:10e9:ca5:9dff:fea9:1cbb]:8333 # AS6805
+[2a02:3102:c324:1049:ca5:9dff:fea9:1cbb]:8333 # AS6805
[2a02:390:9000:0:aaa1:59ff:fe43:b57b]:8333 # AS12496
+[2a02:6d40:3055:b201:dea6:32ff:fe44:4b25]:8333 # AS42652
+[2a02:6ea0:d14a::a921:e257]:8333 # AS60068
[2a02:768:f92b:db46:5e46:772b:71d:29b7]:8333 # AS44489
-[2a02:8070:f181:f600:bcb:2d1:d790:78ff]:8333 # AS51185
-[2a02:8071:6380:c500:7285:c2ff:feb5:a39c]:8333 # AS3209
-[2a02:8084:2021:73f3::66e6]:8333 # AS6830
+[2a02:7a01::91:228:45:130]:8333 # AS197895
+[2a02:7b40:50d1:e77e::1]:8333 # AS62282
+[2a02:7b40:5928:89::1]:8333 # AS62282
+[2a02:7b40:b0df:8f88::1]:8333 # AS62282
+[2a02:7b40:b945:3599::1]:8333 # AS62282
+[2a02:7b40:c3b5:f595::1]:8333 # AS62282
+[2a02:7b40:d418:69b4::1]:8333 # AS62282
+[2a02:7b40:d418:6dfe::1]:8333 # AS62282
+[2a02:8070:f181:f600:bcb:2d1:d790:78ff]:8333 # AS3209
+[2a02:8071:6380:c500:d250:99ff:fe14:afb2]:8333 # AS3209
+[2a02:8084:2021:7393::66e6]:8333 # AS6830
+[2a02:8108:28c0:5d60:da3a:ddff:fe45:4cb5]:8333 # AS3209
+[2a02:8108:8ac0:5db:d250:99ff:fe9e:792a]:8333 # AS3209
+[2a02:810b:181f:fa8e:1cc7:c528:4a59:6334]:8333 # AS3209
[2a02:8308:8188:5100:6d8b:4531:4331:eee2]:8333 # AS16019
[2a02:8388:e302:7980:6f85:a0b3:4b4d:8b0f]:8333 # AS8412
[2a02:8388:e5c3:4a80:201:2eff:fe82:b3cc]:8333 # AS8412
-[2a02:a31a:e03d:9400:3f18:2729:c86:d754]:8333 # AS6830
+[2a02:908:c200:6d00:caad:5e32:35e7:3157]:8333 # AS3209
+[2a02:a457:1a1b:ff04::1033]:8333 # AS1136
[2a02:a45a:94cd:f00d::1]:8333 # AS1136
[2a02:a465:80f4:1:f369:4ef5:aa12:7566]:8333 # AS1136
+[2a02:a466:4d4f:1:8471:fe5d:cff:d524]:8333 # AS1136
+[2a02:a468:61f8:1::2]:8333 # AS1136
+[2a02:a469:2d51:1:921b:eff:fe8c:7975]:8333 # AS1136
+[2a02:a469:3eda:1:7e83:34ff:feb6:13f3]:8333 # AS1136
[2a02:ab88:20b:ce00:223:24ff:fe56:6202]:8333 # AS21334
-[2a02:c206:2016:2394::1]:8333 # AS51167
-[2a02:c206:2162:5603::1]:8333 # AS51167
-[2a02:c206:2162:5605::1]:8333 # AS51167
-[2a02:c206:2162:5606::1]:8333 # AS51167
-[2a02:c206:2162:5856::1]:8333 # AS51167
-[2a02:c206:2162:7348::1]:8333 # AS51167
-[2a02:c206:2162:7352::1]:8333 # AS51167
-[2a02:c206:2162:8026::1]:8333 # AS51167
-[2a02:c207:2034:7358::1]:8333 # AS51167
-[2a02:c207:3006:3185::1]:8333 # AS51167
+[2a02:ab8:201:403::126]:8333 # AS48943
+[2a02:ab8:201:403:b87a:46a1:aece:21ed]:8333 # AS48943
+[2a02:af8:fab0:808:85:234:145:132]:8333 # AS29550
+[2a02:b48:207:2:8333::4]:8333 # AS39572
+[2a02:b48:207:2:8333::5]:8333 # AS39572
+[2a02:c206:2131:403::1]:8333 # AS51167
+[2a02:c206:2161:3107::1]:8333 # AS51167
+[2a02:c206:2170:3718::1]:8333 # AS51167
+[2a02:c206:2172:2852::1]:8333 # AS51167
+[2a02:c206:2179:6690::1]:8333 # AS51167
+[2a02:c206:2181:6405::1]:8333 # AS51167
+[2a02:c206:2188:9353::1]:8333 # AS51167
+[2a02:c206:3013:3626::1]:8333 # AS51167
+[2a02:c207:2043:5542::1]:8333 # AS51167
+[2a02:c207:3002:7468::1]:8333 # AS51167
+[2a02:cb43:4000::178]:8333 # AS20546
+[2a02:e5e:1:10::27]:8333 # AS25057
+[2a02:e98:20:1504::1]:8333 # AS24641
+[2a03:4000:28:68:7411:53ff:fe4c:21d]:8333 # AS197540
+[2a03:4000:2:1e3:c8b7:eeff:feb0:d26c]:8333 # AS197540
+[2a03:4000:5d:bd4:a8bf:78ff:fe98:7ea4]:8333 # AS197540
+[2a03:4000:5d:ea7:944c:6bff:fead:b1f1]:8333 # AS197540
+[2a03:4000:5f:cfc:14c3:eff:feb5:1c1a]:8333 # AS197540
+[2a03:4000:63:dc7:d418:2dff:fef3:94d9]:8333 # AS197540
+[2a03:4000:9:7d9:c88f:1dff:fe4e:44d]:8333 # AS197540
+[2a03:6000:870:0:46:23:87:218]:8333 # AS60131
+[2a03:b0c0:1:e0::368:d001]:8333 # AS14061
+[2a03:b0c0:1:e0::6aa:7001]:8333 # AS14061
[2a03:cfc0:8000:2a::9532:6507]:8333 # AS201814
-[2a03:cfc0:8000:2a::9532:6510]:8333 # AS201814
-[2a03:cfc0:8000:2a::9532:6511]:8333 # AS201814
+[2a03:cfc0:8000:2a::9532:650f]:8333 # AS201814
+[2a03:cfc0:8000:2a::9532:6514]:8333 # AS201814
[2a03:cfc0:8000:2a::9532:6516]:8333 # AS201814
-[2a03:cfc0:8000:2a::9532:651d]:8333 # AS201814
+[2a03:cfc0:8000:2a::9532:651b]:8333 # AS201814
+[2a03:cfc0:8000:2a::9532:651c]:8333 # AS201814
[2a03:cfc0:8000:2a::9532:6520]:8333 # AS201814
[2a03:cfc0:8000:2a::9532:6522]:8333 # AS201814
[2a03:cfc0:8000:2a::9532:6523]:8333 # AS201814
-[2a03:cfc0:8000:2a::9532:659a]:8333 # AS201814
-[2a03:cfc0:8000:2a::9532:659d]:8333 # AS201814
+[2a03:cfc0:8000:2a::9532:659c]:8333 # AS201814
[2a03:ec0:0:928::701:701]:8333 # AS199669
-[2a04:ee41:86:50b6:fa75:a4ff:fe3c:243f]:8333 # AS15796
-[2a05:d012:42a:5703:4dc5:8116:787c:e016]:8333 # AS16509
-[2a05:d014:a55:4001:f6ab:dd5e:4039:b46c]:8333 # AS16509
-[2a05:d018:a75:6c00:c05b:4d0a:3658:1030]:8333 # AS16509
-[2a07:9a07:3::2:1]:8333 # AS202605
-[2a07:d884::130e]:8333 # AS6762
-[2a0a:ef40:e44:9b01:2746:ca1e:6788:351c]:8333 # AS1273
+[2a04:3543:1000:2310:e878:79ff:fe3c:1729]:8333 # AS202053
+[2a04:52c0:102:2219::1]:8333 # AS60404
+[2a04:52c0:102:49af::1]:8333 # AS60404
+[2a04:52c0:103:c455::1]:8333 # AS60404
+[2a04:52c0:104:160c::1]:8333 # AS60404
+[2a05:3580:d101:3700::]:8333 # AS35807
+[2a05:4cc0:0:332::2]:8333 # AS8772
+[2a05:6d40:b94e:d100:230:48ff:fedf:1432]:8333 # AS202128
+[2a05:d01e:1b1:6c03:5369:fd23:e62f:a257]:8333 # AS16509
+[2a05:f480:2c00:100c:5400:4ff:fed7:dead]:8333 # AS20473
+[2a05:f480:3000:2b4e:5400:4ff:fed7:4206]:8333 # AS20473
+[2a06:dd00:10:0:225:90ff:fe33:56e8]:8333 # AS56694
+[2a06:dd01::36:0:0:1]:8333 # AS42474
+[2a06:e881:3408:2::2]:8333 # AS205165
+[2a07:7200:ffff:0:3016:d5ff:fe5e:1114]:8333 # AS34197
+[2a07:7200:ffff:0:60d1:eff:fe09:3886]:8333 # AS34197
+[2a07:7200:ffff:0:b0a5:23ff:fe34:d292]:8333 # AS34197
+[2a07:7200:ffff:0:c43e:80ff:fe3c:e0cd]:8333 # AS34197
+[2a07:7200:ffff:0:f4d3:aff:febe:ad99]:8333 # AS34197
+[2a07:b242:1000:1300:f250:8f0a:cdba:4d76]:8333 # AS202618
+[2a07:d884::127e]:8333 # AS23959
+[2a09:2681:1001::23]:8333 # AS61282
+[2a0a:31c0:100:0:888f:90ff:fe2c:761b]:8333 # AS62098
+[2a0a:4580:101d::1]:8333 # AS29670
+[2a0a:4cc0:100:37b:c44a:2fff:fe10:2d3c]:8333 # AS197540
+[2a0a:4cc0:1:340:1460:fdff:feb2:2994]:8333 # AS197540
+[2a0b:4880::266e:96ff:fedb:7cdc]:8333 # AS48614
+[2a0b:f300:2:6::2]:8333 # AS62240
[2a0b:f4c0:c1:920e:b25a:daff:fe87:77b4]:8333 # AS205100
-[2a10:c941:100:24::2:1001]:8333 # AS141011
-[2a12:8e40:5668:f001::1]:8333 # AS34465
-[2a12:a302:1:a180::b5ca]:8333 # AS23959
-[2c0f:f4a8:b:b108:807d:b2d6:9146:38be]:8333 # AS37254
-[2c0f:f4a8:b:b108:c458:5c61:dcca:cb10]:8333 # AS37254
-iy7go4454pb4p2zmnkwrgsi6v6oqv53zxnmalz6rnfjemxftapfa.b32.i2p:0
-j225nrmndwviihpe7ib6mm5h723cg62wrb7vnwofopv472ue3zwa.b32.i2p:0
-j2m526lqsujvt6b6xl4ipzbjkvkuecrye3vkggwo6jadvzqu7f7q.b32.i2p:0
-j2pyenyhoppsjexenznxvgqrcs4buv4nssctowgpg6czdoo3nyiq.b32.i2p:0
-j3usxovx7ukl645u77jud2mpmrk7ryh5yaxno6rceu77hqlxkuta.b32.i2p:0
-j42dsnjlg4vv33tshgs5jyham6plf3suj2sn2k6ew4tmcz3fpaqq.b32.i2p:0
-j4tjrfxnwcmbhkixmqlnotginhfxgfdvjahr6yn7j7rkbdqngh4a.b32.i2p:0
-jb3iui7grnljdjmsz7qbustrl5vn3ip3upnkzbaegaiklric7cha.b32.i2p:0
-jbmqtghha7hscwbwpi7ps2dnghq2bvxjnfeb5glngnvgjmeackaq.b32.i2p:0
-jd43pc2l73ek6hk2tp6hiyada7ed7vshqo2fvxbga2daylcghfyq.b32.i2p:0
-jd63whebd5yuls7r34mi3lnnuuhqxxr4lns672tzliru4vk7hwrq.b32.i2p:0
-je6ju6ihybxm5wkw5daeqjet74lscvi4ls5wn5wf7kiaczfggafq.b32.i2p:0
-jeidstlwdlt63lju7cnj2mh4fofysjnc2wcvilphynprd7jw64ma.b32.i2p:0
-jeox5nruuoopedsfpuoi6kwewmhbbsnhf7kib2q6oafvchxvmnnq.b32.i2p:0
-jex3ykw2nmw7owhgbtio5flv7us624bxwp46nr7rhmteujrmtvvq.b32.i2p:0
-jfdh65i4nhpg4obnoe4aqi3vzvbi6fyzjj2ee7s3qm2gbcnllkvq.b32.i2p:0
-jh2qxkjqngj2m5tn2ecaidfqac4awgnmkgsajntoqs5qqyjtp5yq.b32.i2p:0
-jh7ev4a5zfzmeyekinhtbqfi6c7xhvc4msdpyi67j3sxl6r44ukq.b32.i2p:0
-jibaw7ynbnxueqsy7k7jyvoj6ldzbuckppfx5wozt7mftihy5vcq.b32.i2p:0
-jicc5kwy4tv4j2nn6gfbis7e6dxy2kdvet3zpxdbyp74h5gpnxuq.b32.i2p:0
-jimdydczt6e2lceezopnl4fgz7q2jeqqhlqaxrgen33ouxk57xiq.b32.i2p:0
-jjangl6h4py2pd2gwamhqlsymyuocmpioneinzf5bb5qvvdjzzqa.b32.i2p:0
-jk56z3febpco6rbkpzzv3jszf4px5uztmoxzkpss7mxnzqlpsdla.b32.i2p:0
-jkfuajo4ayvo2rbv5qdj443q6adqmnormbhsf2f7rlp5t24xomda.b32.i2p:0
-jkvey2vfdto2ucudi4jlgsbpmlls3uwmlkjonfhk5yminkwzwi2q.b32.i2p:0
-jl4vr5kac7njyltivn7ut5afyq5ipzc5woxl4523emodxixci3zq.b32.i2p:0
-jmebfluhrl6ad5pt4ipevf3g3a4trcu7axalpubpkir6zlwovm5q.b32.i2p:0
-jndr5i4qhxs6aa2bqvufrgttq6enavyghi54dqfuku2qnstdqa5a.b32.i2p:0
-jopiw2tup5h5xh2hwef4oflgskawbpfmswub2iosmqocejijd4fa.b32.i2p:0
-jrert3o2rhbkpquybwg7tq4bdvlxeh6lnlcr5ddexkuguvi2l2pq.b32.i2p:0
-jrobuecgmuuqmpdsbxwbqeldt2735cgcemngoasnbbkdz2ufdlmq.b32.i2p:0
-jrvg22xvbmjyrkqg7mr622zhnda3ijtua65cqngwrven7sf5zd7q.b32.i2p:0
-jsg4dsxvgjcqz3c2qgtwi4ip3l4n4hlxodbvgukwaipycwo26zua.b32.i2p:0
-jt35uwbl5wx7ponyxomksrjjs7zy5yymvtud3nmogt7ci7xxlm2q.b32.i2p:0
-jvaoh33cpczp626ldwr4azh4hb5cjmxlbz3dq3cxisdlzn7z25eq.b32.i2p:0
-jvlj7qyxcmolf76wneyvmdxrpiezsxkiimapwxbdbiw2phvlyjba.b32.i2p:0
-jwqlvqmfvodnrslde2idqt25qxiyvgqdlr2q4uod5s6lkmlempya.b32.i2p:0
-jxjc7oe24vxdepkfvl365qfwrxcad2f3j43fnfuchtvqqkqd2rzq.b32.i2p:0
-k4mch53m72zv7jdda3poa2zn7bi3jacqwfb45peealxbhysdozcq.b32.i2p:0
-k4pjt6m25dcxno3udek6rasooz5ztqnywa3f2owpvcjzvisg7nga.b32.i2p:0
-k5ars7hsrfubadroe5h7oypjnqwi6v2vxxy6rmns7zubf66aivbq.b32.i2p:0
-k6eeshsk4vf34b5gfnraz4p5qb6scv4kw6eiltebel5exw6keppq.b32.i2p:0
-k6gt64xby5igmln5hfcuzspt2tndimzrdvj65yo76h22g5yhlvja.b32.i2p:0
-k7kcnrqe3ybqu2w3fali7zext6na7o5o65rx6f5oqza2lonsry6a.b32.i2p:0
-kbawcieyelwwitrjow537zpmdkncwiq42rhjgayw5o7u562mk23a.b32.i2p:0
-kcqkothplemakipfpeajxmu4xsszpaxpprgtuv5tgfdaqejg2sqq.b32.i2p:0
-kdrcbr6wg2bj6oipsbeqy6bp3v7dqpth6cheviysmvo4bdta7fda.b32.i2p:0
-kehosmgk76fxnjywqjj6nqs4ohg4hsutljdzjo4sswhxlj5l5tca.b32.i2p:0
-khxruoaom7juockko2tbxqo3bnrjmoqjhdoady3yyr4qacz4somq.b32.i2p:0
-kjaa3zlp4sipfxikketgvlx4oxq5ok57ifxenbiewmsrew6lcw7q.b32.i2p:0
-kjvrzgckasb57yqhluvjblx2ngxstumfg6uufz5mc7zyetkjlr7a.b32.i2p:0
-kkihsh2faw2gxil6it4glol4u37ccruuzsusyikquzmkffj3wn6q.b32.i2p:0
-km3b5j6cqrcqewdpuveibptw5gguwktwan36jlow4xykpg2dgr6a.b32.i2p:0
-kppcor54kkge6cgq47nzevlfrhbxingcjfmk2emkrdaejpixkqdq.b32.i2p:0
-kskidltmbigp2etp4pdl67ke2qzjjw66wqairzr4wn2apq4o7bka.b32.i2p:0
-ksxxinje357zctkobwnxsy44ddivq7yp2n3n5gopk4okir2vghaa.b32.i2p:0
-ktua3j43ijxhhhfeljsp32kdiuic5nlnfnkx3ealy7ojva4vwkoq.b32.i2p:0
-kuzu73gzvlnog4cdtdk7edbusxr4pigknvwg2bjo6l46ugsgmrtq.b32.i2p:0
-kw3v6gq5semgt4gg6itum3qtaylanyof7wn6bnbngdeby4xixuoa.b32.i2p:0
-l364nudwoj63fe5nsjmniiun63e3ycdqrjyknbfixxtre5spx7ga.b32.i2p:0
-l3ach5wbdx3n5nq53sv6tagijrbse3nwa2gkqz5oj7aifyaizpcq.b32.i2p:0
-l5fita4r7niir3hxmu7mzcwrigxinkrn4oqeembdkgao7k2yztha.b32.i2p:0
-l5obkk7zzop3nztnt6ijugz4okqsyhhb5o6gkbqottgqzzzcgvla.b32.i2p:0
-lai3534z6zs2tukzixdagrciezum2bkyuask2srxjrn67yu4c57a.b32.i2p:0
-lbif3mgg2b2ir5dkz7u6iatdrui2h2a64vlmffcfgqnpjuvwzaxa.b32.i2p:0
-leu37bptuuu5377mi7cb5t2vsu4hesblyxl5zptnnk4vodhovwea.b32.i2p:0
-lfuvzzzceuik5u5pnd2i67amegel5ua2rrnncxkyyc7bhteq73aa.b32.i2p:0
-lgpojpoix7zd6dhpo5hdrnwm4ueyjvi7tbot4qsqybk3upuocnpa.b32.i2p:0
-lh7qjombcmiekvv6niz5eflr55cnd3oxx7nuus6vmehqfodr67za.b32.i2p:0
-lhupu3owhuc7qwvyfazgkbcmr7sjp5qqxps732vy52v67fsn5guq.b32.i2p:0
-li4vuovafxjrf54kvfg3mjrg2mebs6edpl5yrr2dohddvgmxjyvq.b32.i2p:0
-liu75cvktv4icbctg72w7nxbk4eibt7wamizfdii4omz7gcke5vq.b32.i2p:0
-lmlf3yjyg4djrb7wtzmrb4fbkorqba7k4lvk7ax4omay4mbytupa.b32.i2p:0
-lpal67whroip3c2yj4fxbayj46d3tr5osyqog6el5n6ctktdnakq.b32.i2p:0
-lpektonr2uyiohuzi35shtj3oaa77rklmqsivuydxkcxkea2dwuq.b32.i2p:0
-lpffyejskwwap2go7ommmryex2autlkmcnnpk2tm6aitxcalwrha.b32.i2p:0
-lpqkgbek3ci3w4qobpeqepjor3bukz555rzlmghck4o7wwb7ajza.b32.i2p:0
-lprgmkc45te7skx7rffpz72ca5c3zdg3tabiksdboao5w4wceu5a.b32.i2p:0
-lqn32kgic4cincyqlybpwbywcrowcxmscfcm4mqt4fgp24qs3y3q.b32.i2p:0
-lrah7acdsgopybg43shadwwiv6igezaw64i6jb5muqdg7dmhj3la.b32.i2p:0
-ls52j74gwtsrqhlgqcai2cjl2rcivfib7jzovc4454h6tq3i6k7q.b32.i2p:0
-ls5otp5mybmxqsaeaid7wlori2ukieehr644adjfwdxux7jxlvga.b32.i2p:0
-lttdnbluvybzbjq52t5vbdkk3pvzc6zyi2oji7yjdpcgtgz732bq.b32.i2p:0
-lunkwblewltvq4spt7j5u2nfpqyndvgepl7edkiru322mmtpy2lq.b32.i2p:0
-lvdbqavgdom5h5denwkmdwslfzxckf6eddwflelbog7tgo2m7usa.b32.i2p:0
-lwjrapkfexjyjqf2rrdr4ghhxmlr3jdygsonetgtheglvmru5x6q.b32.i2p:0
-lyg26sjkcx5ied5a4a7jdxmfeplfcnux3fux5rsxzkm5mgbbsllq.b32.i2p:0
-lyqmygrc6gujxa4xlnwqku3vtfkbrszdiirsagn6xd2yw4kvodrq.b32.i2p:0
-lzuu6mjtu7vd55d2biphicihufipoa7vyym6xfnkmmlra3tiziia.b32.i2p:0
-m2k7ajij2wvgfpsbg32zuorbsjt72iye3ozz6dbyxtj57fx7xsqq.b32.i2p:0
-m3hlmj2gz2co5gu4ss3wj4b7ebeg2xbkrr65ogxvhn76uxna5qma.b32.i2p:0
-m4o2kndr75clxemwbq5m6vnok7eiqshf42wjjvag7dtwxtafxhra.b32.i2p:0
-m6bpynxkv2ktwxkg6p2gyudjfhdupb6kuzabeqdnckkdkf4kxjla.b32.i2p:0
-me6x2p4m6jw3cxi2xl4a37u4orzmv3xdopr5t2vgwjmauiuqrmzq.b32.i2p:0
-mf6tmlegp7uga66cdael5376uaz4qd3wacuh44yvepa3kbu4fk3a.b32.i2p:0
-mhgxec57s6h7eixgemsghlcuhmgh7m7p7phqd5kzmm4wovrp2pqq.b32.i2p:0
-mjpulaafdyuanouslfpjcsvumi4edtckfu3ffn3ipabkxj4sn35q.b32.i2p:0
-mlakhs4ixcqwvk4vo4ce3loa54wmdlfingk73jookrkbra6ppq4q.b32.i2p:0
-mnkqn3r4jmg6vrmlprabenndyft2z2jw6g4nsnolt434coiklmyq.b32.i2p:0
-mnrbc3qi4zuk2tzghmy55kplawncih6jkmt75qczfu27enu3gcea.b32.i2p:0
-mnrrefebq3yxr2avprp3ay7w42sx27ijv6stjljzpwohnfnkg26a.b32.i2p:0
-mo27t6wym666b3wfauhndqocbetdsssxksep6x4dcpuh5dxe76oa.b32.i2p:0
-mo6mp2tymma5l2swob6kqzzb25ccmgccfj5pic6omjkktv4wve2q.b32.i2p:0
-mpi7bivbr2pywsgasslw5we766m757os2667h3hqnhcftaszdv3a.b32.i2p:0
-mpqb3jdmdibarrflyiik5wj3ekitxpe2oqieztlax3uomxspgsvq.b32.i2p:0
-mqocuhx3qwcwfuuin42yuhtqgm76drlmfvzikf7urot75qw3ykpa.b32.i2p:0
-mrbhw6ow77bjqmb67rurbkcl4xs2ocj4pti6hnz4wcsg6bduwtya.b32.i2p:0
-mrypjr2fagjhg6z4ixr73f5npkeyoxsjamcdv5uc6oj5oi2ylsvq.b32.i2p:0
-msjl4a7mdp7x2bcllmbxurhfmtxvolykonz45psmh7j6pptfyy5a.b32.i2p:0
-mtlznxqya5nbuyorybzul4cpdlrnvlrhalx2eogwjce5j32js5wa.b32.i2p:0
-mv7b44duaxqpzbdztnrdvnj6ypsp7yhs4z3dc2q64jov6pritmja.b32.i2p:0
-mvs5a3s6rgfbvvgq44wzyd57vf5pr3jcthc5qdo75xgj4slsm7tq.b32.i2p:0
-mwcqoe2lu7u6ogwo77kr5sr4wx6pxnotkdeck3yyjfh4uklytj2a.b32.i2p:0
-mwevh5r5dkzddlo2ol6bojpdds3kno4xqoy6p6ulid3paamgrtla.b32.i2p:0
-mwyjzdrgtypbwjyulw4ifetejz6xusqstvzylztsphpg2r2zf7ua.b32.i2p:0
-my66tuvzfyy6kkbdeqvgfpk3xuoxerucxt73tw6wxv3ian2p2snq.b32.i2p:0
-n3f4ngbs2igvp3j27vsi7thguqxoyvbfenaqhgypuqdz5iovek2a.b32.i2p:0
-n3fa2yuf3i3opdktiwyxzhbpudcut73valxdrlre2xs2ooepddaa.b32.i2p:0
-n47e4gkf5xujcamnsarfuy7435hfsgs4zhndcxaw2evafn6r2rma.b32.i2p:0
-n4n7bivjb2mffgll2ulpwyb4m2oomv5roxtdj6bmlb4cgpf3wdja.b32.i2p:0
-n4zwusew5coibur4p2g436ktc3cyogz3sklztu6ruulag3je6ita.b32.i2p:0
-n7ykk3cxcqzcoeipo7ghzb62ko4d6bxzfgenzxistvg6fuclebva.b32.i2p:0
-nazasriqoa6qoxdlgzjwsggubxl6i4nge5q7om7nijaqi24ulgua.b32.i2p:0
-ncdjjthck6v6phz4laddyc7a7czoujys55melfcoptvl2h4izqlq.b32.i2p:0
-ndtoi53fz7e6ml6v6jn33675nwciw7mu5msn7afzbhebprusqg7a.b32.i2p:0
-ndunnsjyp6l4w3jebow4zgsfrdsy2lrapjgslb3tv7dg6oypfbwq.b32.i2p:0
-ndx23xqvt4qezezih4wlj7mqtwc4nzbvmgseq6fc6e2ddywrmkwq.b32.i2p:0
-nejmippeopyo75wd3gjrhca3fr5mo2g37owzwdezxmg7uhx6ygxa.b32.i2p:0
-nfsi3fenzrzoccj7bpzuvjbxnij7dmzuprg7ia4geuortoquja7q.b32.i2p:0
-ngn5elnvbm234yyun5kbjyr76oy5nhrvyckn33cqcbx25hw4lfoq.b32.i2p:0
-nhpbv2ravt6t5fhxyvuhrxyma37wph6dzuzpddlw3uoivzl6tx4a.b32.i2p:0
-ni4ns3ou7v6zh5qrawvkwnmshnrzcyc5zojkw647rrniplmurrba.b32.i2p:0
-nigrfbou3zt6wxegn5im4cyminjcjmbsqror7ntcr5i7yv6chwvq.b32.i2p:0
-nij7pzb6mhrra5glb3dyghjt55sngwrikzdlagmpsf7jn2onvoaa.b32.i2p:0
-nisd4was4gm3pkvuwjh3sbaoo35jtxop6y2d7ug4iol4cffkrk5q.b32.i2p:0
-niyz7v5fdhqqtlr4y3tcgdoeu3myntub4trzvgixlgjbmowccgja.b32.i2p:0
-nloq52novup3cawccvaakmbudooatwkw7dqltnr6q3j4qy7r6oia.b32.i2p:0
-nn7p4y7pun3m3txaqbkeptkxykzwrf75ru2zimadnewj7g3r4una.b32.i2p:0
-noj7le7kkj54umo6mdftagvvk327cuir7q75bnvuphrxa7kjujna.b32.i2p:0
-npcmehkhh4z2wtk3f5426izrytvqvyf6aa7hyx6hf6jdbxveqima.b32.i2p:0
-nrrg4p7tztllzthlkqzomqi3dejfcak7t63n7zzuomt5atzz5m4a.b32.i2p:0
-nt3ysas4wpjgkft5pohrfstm2vgj7t2vx34u32voy7rqon7dlbga.b32.i2p:0
-nu2ao72zway2ponkhrf322wyfrrn4mdmyp7n5q5xzmjhcge5odma.b32.i2p:0
-nufliiw3uav3tzdalit224yhbfpcjtgfrm5ic7ob6l3mmsay6cpa.b32.i2p:0
-numilh7hhhf6inzkzway3hzif4kiroqstxqbz7hzvoy2ctgpaqda.b32.i2p:0
-nuwphtuudfrswids22qjq63zgxh5wu7erafl36jyniuxhz75ikyq.b32.i2p:0
-nvmuuajhaw74g565l3a7dpezs4rkzm22ub5jhh6mdvzu43j4a6dq.b32.i2p:0
-nz4lq7pmswngaevv2uqyainqzutfxlkavxgde2w2slo2p6e2kcfq.b32.i2p:0
-o5ijpzor3en5xnndm3ntti7o4fxvv24t3veh4g7mahk7ogesb67a.b32.i2p:0
-o6b747qkpgu6gvsem7leylvmxsaaqby67pu55fmqn52dgazuvbxa.b32.i2p:0
-o6t4fr5ayfadzieutstgwcllvwxeuzjlxmzsmpj3hpkvefhzfaea.b32.i2p:0
-o6vbupdnpd5bwvcx7ivaecgyo7x5vdu5em4va6cmx5iwcf5tyaca.b32.i2p:0
-oaeqbkgpek4qnm3nly76x2tfrad2tun2xefliez7a3uxddeq4i4a.b32.i2p:0
-obf5kfk5n4nnsw7ez6ls6chqu4lz4wlck7utwvmjnlin4nzfnspq.b32.i2p:0
-oeydvkjoeqy3473wxkkbmoc6zz5m6zcmf6ov2hfkci54efsityua.b32.i2p:0
-of2gy2vblht57tn6yfczslnmp2xybdiazzta43y24w76tl6tu2xa.b32.i2p:0
-oggn6qbpmbag224gumagzgno53mgozb65tpzt5lezjbfbbiqky4q.b32.i2p:0
-ognn4mwwtmtjbrnq2kur7spcfohivxlrvz3sfamt3t46pk2e2ibq.b32.i2p:0
-ogqdcq2igslh3n5jn3utz2vpevttul366bt2246vilfnowuyvova.b32.i2p:0
-okjamsyd4wutvhfhsffejwk6ioru4mmvwagfssoy5hcocg2gj76a.b32.i2p:0
-om32whhwvcsbrf4g6uh5hupsl67oapccourkxyr7uf5zwaqxtxbq.b32.i2p:0
-ommky7qetuh45h4lk3raili27fnbhsgxv3zucinoaymnymo5735q.b32.i2p:0
-omngcjfwtiyqwbfqqggzbkttqgm3blywu43kpto2py2e4gp7fhra.b32.i2p:0
-opnpvz7mzfw6nypgmnn5zgtlzx7xuc4w7vat5bsr4mdtp77kz7eq.b32.i2p:0
-oqrl573nw6my2o5mup6uq6pm5immw3gnviahig5cceges4wfnyhq.b32.i2p:0
-orvshryqq24l24e4dvockx2ekj4hu42otqxsvyvy7tm7hhdjsz7a.b32.i2p:0
-oukeldqgovavh3npgb2by7w6hug575uae24z6uqfdl6flh7ma6rq.b32.i2p:0
-ovnk3wfbrkvvute6vkn5glhdtlxr6nyvebiflvr5l6ws6sorpa2q.b32.i2p:0
-owexluejb3eszx4p3b6zuxyggsxxtkxfgxoylkagfecs3bgfnpja.b32.i2p:0
-oz2ia3flpm3du2tyusulrn7h7e2eo3juzkrmn34bvnrlcrugv7ia.b32.i2p:0
-oznpphdisfvlcjgkvny6ma62wy637nh4vtpxww47ifpmlqkjv3ba.b32.i2p:0
-p3au2w5jnkqugxnkukj4rusvynvz3oxawdf4ajzeyxvfvyzhmetq.b32.i2p:0
-p4tsqwvdpaitvlgaujfr2m2qbr36qiwusas5zkiut7w2wjcp3sqa.b32.i2p:0
-p6o3tzllswm2j4wah35niry4tcdu6lq5b67ehevcx45sae7pb6da.b32.i2p:0
-p7ifeij3vhds3diihx5qimucyzgck5omfkqxc4pkbbjtfu4hp6wq.b32.i2p:0
-pbag76x5yyo5d3wypvtohxmgbtdrjjb35ljnq4w5fpoguyt5mj6q.b32.i2p:0
-pbftrtdthbj5qcecraden3hdvwomqrgseec6ib5h24n2zcivdqaa.b32.i2p:0
-pc4d5v74tr4vz54pbr57ejga765ep6vwk5kox55gfobi5572apta.b32.i2p:0
-pcc6cnry4maul7zlbd32khalaavkcbw5hdjuk4zjwposaorjicca.b32.i2p:0
-pcdlqw2awppohbiued4rffgs6n3lv3thhon3r67jmx2652qx2khq.b32.i2p:0
-peteksofgwgndsdh6ovh2ydkrgpyqgttit4ususs4bzksvdqkbea.b32.i2p:0
-phendyytrqdr2vfsw3kil6yui5vb2p4v5xuddezg57wsdw5uyquq.b32.i2p:0
-plhoz53xhplmyuejnsg5bkfe24ow3pbldysoovuupu6qwb3nttca.b32.i2p:0
-pm4nukrzndd2lvd3shivpjrcbjlontmxhag2xzdf572snwbr3p6a.b32.i2p:0
-pn5cx32ljrvzj6x7hpgyff3rlftextqpp4zn3nkfufrrpnpuimzq.b32.i2p:0
-pnhspu3rloczdbzsysa2iftsgoiy3zgcd22jodmk7zdjanhiemla.b32.i2p:0
-ppe2jfsb2xrmgwugbq7agy44ucb6yq4qbufaf2sh76b4kwpa4jcq.b32.i2p:0
-ppez53yrs6lanyvyxuxblqxiuvhnqvvtafmwaid2kgp2dx2v5iaq.b32.i2p:0
-pqnqwxl7jsrok7vgpgcvlxwlkg6yckx33n3g4xf5lvuntwn63b6a.b32.i2p:0
-pri376r6uuwgnbnevki7c363h4ryfwjza7pcbfswqqxk6hnrkhja.b32.i2p:0
-pscw5yzaj5js2fn7gzrzoj6teonlsohlbnvdco65ubdefpnpwhpa.b32.i2p:0
-pt3mqmvkv7aleja7vattlysu6x7gjnbwqvwtu4skzabvkjztfi2q.b32.i2p:0
-pu6e2b5bz75qnmp2rox252aksllnitv2grnn7qfyzjkfio7w5h6a.b32.i2p:0
-punslpht6pysnlteht24rgvrkmzdd437lnpflojwakl5dy6mbema.b32.i2p:0
-pv6g7uin653rerdiivdgtoirjvokjowi4b3fwatszdlteyos3i2a.b32.i2p:0
-pvqyvn2lpvoeyhgcgunoqtetkrkp76iegyoii2af4crnlto6gb2q.b32.i2p:0
-pw42656k2vbwxmvrc2qbsz3jslvcxahln7rehsbia5jdio2knh3q.b32.i2p:0
-pxbyhv62tcdqqpl6pbp3og7ajzzcnbximv5kyt3hid3djd3uwkdq.b32.i2p:0
-pyf2csixjugwp6ad3bkry2ulkzj7inc747dsmpk7iebuidk4l3ra.b32.i2p:0
-pyole4gslrmenfcmd4ilqyzvsuyrjyffjbw7angentqjkkljitqq.b32.i2p:0
-q3ueujd332k5qjxdqkjtjlgkm3ktvdy7ats4c2ogcvokog4wm3vq.b32.i2p:0
-q4o7bf37e6afx7evwdyovsqptjwo6td3c6qtjh4rtdngp3trwi3a.b32.i2p:0
-q55g5g6s47hi7pcuomug3vrcd67vji7us2gqmfe7qn2nkq5vz52a.b32.i2p:0
-q6lzsezu4idxpdwro4x6svwz7j6h6gso6enidcxv7jhc2gbepuzq.b32.i2p:0
-q6o3eqnyg44uzjzqeudsankgdouylshkhdhl7b4bqxkbmdnm4iaq.b32.i2p:0
-q76g4lkosb2sxenh47eutqgwwzjyph52rirc635wkwnxsejrzdda.b32.i2p:0
-q7ntdwy6xueyvghbjamfrh62aqtuu3ikwg622em44pa3czomrdjq.b32.i2p:0
-qa77lz7dl64qwtj4fxxlz6otkuvv42dciggnmx62eobs2xqi3vlq.b32.i2p:0
-qaqvxmyvq2m4wombmtaz3our3qmp7eet3qle5flnrs3a5wgfhxba.b32.i2p:0
-qawed5ou5vb42ugi42goxr2s6cqzpyh3s5atkhvfvyhyc6anxyaa.b32.i2p:0
-qddg7myylinn4tw6kdjmmp6fsyetkosnrbp2gsjx77tmkqyqv6ua.b32.i2p:0
-qelsaseevnmz2unpovh4nbpjpshjg45iudiaf5zbngealwwuxe2a.b32.i2p:0
-qfbughfr5hhgoomasyviwk3zin24uerpl6urz5smzxc2div5ixxa.b32.i2p:0
-qfl3i45ipgugo7ueswy3ynnbaet77xawiplvmm3kp4fj72qvzc6a.b32.i2p:0
-qhuk5zq5v7h5p7o62gsxgtqqo7va4i77o5vei6wttxqcgaw47h7a.b32.i2p:0
-qivuqkrr3pv3rul4wgx4o4zon5wegidt5auylv3bhebfuj6oqauq.b32.i2p:0
-qjdftbhcaghdslzxjqx3nmem4z5p5jt7e7ou5bdz5llnqlxshe5a.b32.i2p:0
-qk3iq3wr6emttdilvdqbv6vnqjshuzz6mylwyfo3z6vpjywvnfca.b32.i2p:0
-qkohzoxigef43ro7mf2bd76eyneuuj2vfyremufvufssksbvj3jq.b32.i2p:0
-qksthizqtfdjjxcrahqxkl3bev75k24blagrkoszxen45zelijpa.b32.i2p:0
-qlhklv3q3rrszbrkxw755lpdburxwcj5dkxwicas46flztlkdcja.b32.i2p:0
-qmtg5ukzxemsktsxw2brwmohehyehwlleky3kuzeqzy4ledcou3a.b32.i2p:0
-qndgqhj3cpbxrktu6r7ysaooccqzvselvn2tphu3plx2z5ouocgq.b32.i2p:0
-qnqojlthym7z4gwizcblhpd2thy7v4a6ifme57bzyl3nxzkj6ica.b32.i2p:0
-qorzdjceszf432obxa73tnwhqb7ltxrxlfkkqmw2flmfjhoyv36a.b32.i2p:0
-qp5ppgozzbkuingg22zgamf4ozpe2n5hjlu4i25r6pjqw2ngrhoq.b32.i2p:0
-qpddavnflr5tdmeypeu5lrjjwsgtdhz7hw5emxiyjkcp7m7xysca.b32.i2p:0
-qpo3u565rmgeioruszadbc4vmpgjyoh7qorv4lyefl7geewyyz7a.b32.i2p:0
-qqiakw24obfwz375gfb6muzaz7tr6ani3od6leoox7jwzrizyxkq.b32.i2p:0
-qqmxvujwi4ktgj2cuqmw4kiujkf7ukrkoe5ryy4bjb7tyleplsja.b32.i2p:0
-qrpz67rcwrbpcockid5ml24dtdhhhekty3xd66ekkyatpfjd2wka.b32.i2p:0
-quzkrgzb5pmn4465647ke5lsfbseqnorr6ljvfsxcagj7rzl7hcq.b32.i2p:0
-qv5e4jlcmmkdlmh5spkvv2wgj343vm4yoty2hofuzi4lornn3hzq.b32.i2p:0
-qwhvlprhk3ntswr5xntnc2hhgmvd3bbgzgkbombiibhrsj7k6gyq.b32.i2p:0
-qykavpjbecssape77mrxjxwxces2gbjd6gzewd6zys32uhmnnw3a.b32.i2p:0
-qyqwn5xs24h65rldrle5msyarmqof3lb33uz7sutauwdg5qiuhoq.b32.i2p:0
-r2p5kqr7xjo4ncz7l6ekdx2ge6su2j22j2tdsoxu4jw3u67z7poa.b32.i2p:0
-r4ukdj7c2k557k7qd6siauhhqucshwy2rrkm66twzyh4jiucimaq.b32.i2p:0
-r5d5jgscvs6ix5v646ohwa64vutu7umfeknrc2hrezdjtlr4lm6a.b32.i2p:0
-r6d4moarp22wnnsnmsxqt3s32gzyscaccackcazvimrep7sa26ma.b32.i2p:0
-r6hd3knqi2p6kaw7hybrcf2q5lcarulcczs3sgcuz4yc2saj3gya.b32.i2p:0
-r7bug6wbhevqqlbavouj3ggpa7e57sbd3oivkzqeyagrtxshmjpa.b32.i2p:0
-ra7ztq7oq7jcozpui7c4zv76gh7rjwhq5fkpxp7dvw7ritick66q.b32.i2p:0
-rb7tyjd6gi7evmt5mzvtboramqip43sh72zjxnwhj5k72zfi3g6a.b32.i2p:0
-rb7x26lmepfbcd7wtxu42pf4tdxbe5p5zsf3cwuukd4fs4zhxtba.b32.i2p:0
-rd2cw3iukuth2lwe44q7fipawrne2io6y3fyyv5xew6vd3hos2qa.b32.i2p:0
-refo4v727jmff6ylrpbkvd5emlfr2hamaeh7zho6oval5dmnwlta.b32.i2p:0
-refrtydbdslzcgcsmmph3435qigyajh4q2nvl756f5yojouln4yq.b32.i2p:0
-rfgsjhyvqbunef5b5r2emjuoxx2i7rcsl7gathy2n4gwjyyat6bq.b32.i2p:0
-rg677vpfzyhsckzzcvoyvqdbwtdkqig7lxv4unmxcz63vtr6tgza.b32.i2p:0
-rgbq36syjadm2ex2gftc6xztivckrqzcjszla3jacwfo5hqutzqa.b32.i2p:0
-rizuiypjfhukt3bqnetppoauovuaqq5e6jzgd7tgy24zrwa2ydxq.b32.i2p:0
-rkhb3463btvfozwta37itlkt37iyncpkzak2xhoe4kg7tqafqria.b32.i2p:0
-rl4b3r5h5xodo7kiw4nykd4rhoc4j37kxizzyb6ukgcomyc2qrya.b32.i2p:0
-rnsjgirap5lfhxpb2xczuawgoztb4ptgdwt5rcb2bz72vhtai2jq.b32.i2p:0
-rrm2pems425buhonptp7lbtbprmwwjhbftey4ujvk25nclx7rerq.b32.i2p:0
-rvjzxak3jvwwti7klfb64wrsmlfcs6ceiqhzbbmjynokn5tz3egq.b32.i2p:0
-rwgf2wj2x66xtnjx3dggxhkuy6gvihvur42tbkoej6bd7iukoqiq.b32.i2p:0
-rxatc4b7obgosvznpqrmyrl6ty2yixhi7rpbh45sopqwzglyimga.b32.i2p:0
-ry3iuaabf5ek73otfvchwrqryez3nsgq57bpmzkyzumqhfbhgtaq.b32.i2p:0
-rypsyqod2yq3zagcvvc2643vydtv4zm2ew5r3w5kjzyq2snvzv2a.b32.i2p:0
-s35hlnmumkgdsvj2gepnwro4wo2h7ts7ddjhhihqggywn7qcym2a.b32.i2p:0
-s3rbe5n7lyy6smerpkgr4ictzbvkciu7gxyj6zqw3xyw62rmivha.b32.i2p:0
-s43w4tsmzmddvu2cxugh2lx4o5mup3rkvjhm455u2qqpg4bqlhyq.b32.i2p:0
-s4qlly4iwzevejk4ex5zfqhb4t666o73mvdmy4gpu47tpb775nja.b32.i2p:0
-s5ls42vzfaqzgrjr6cvgkmgifei2rtvj7uzaljkpsmt62jwtmvxq.b32.i2p:0
-s6umfzwe27x7az2yjsgqftjzawoj5lrcrgxldkfwfq2qwobml2ma.b32.i2p:0
-s6vsdby2liaahn2fh7qvrehqfus7gaz3p3u3rpjtfjhm4ahvz46q.b32.i2p:0
-sa3k2xipbuwm62bb5n2mwaqyyjcvxzb53kmzinoojgnjpnqurzeq.b32.i2p:0
-sadnlzguaa4k6kvpiky27izp36er3i5h74l452povbnajqullpca.b32.i2p:0
-saj5uchj7dzmxjv3kdzalgtbqzw6wu4wzxxdiobc23m452ehk3zq.b32.i2p:0
-sbalp2doxyedtr52kj57va2rmbi5npspv4drk4vxnujag72gtpiq.b32.i2p:0
-sdxfzbgwxpf6hbik7k4bqm63wm4xld7qgo3hjlhknnehzxyyeu5a.b32.i2p:0
-sh5hww42vwlsl57cdropaeqmmwozinnr2tg6wq4prg5wrkusvxja.b32.i2p:0
-shpd3cifcjoebw6pskj4pfmrm7lwecrygjnje55heorhsxm2lnrq.b32.i2p:0
-si5x3fon3ew644friidc5o3syrf5v6kk4pxxjvhibev3odxk7nyq.b32.i2p:0
-sikkmrxv6wat265rpay2tk7jywyvlzkekpolmwyp2el5g7iihsvq.b32.i2p:0
-sjpqyf3rq7ojcalldlybvyyh5lqiq5j3ade5w6txe3473ybhk3sa.b32.i2p:0
-sk7aivked563g6g2ri2saggni7jqzxmucuqa6xkudcgjvpbjsyda.b32.i2p:0
-slbbsiq2pmouqht3hznafnowq7sxzlidmwghfch7iiq64rzdhwra.b32.i2p:0
-sle3cbbdom6rknc3drqtawctpy635ica5d5gerjjdahfymkok4ma.b32.i2p:0
-slnmute5o6h23ldim34wro4zh4qa2pchnskmdpek2nzc7u5oz7jq.b32.i2p:0
-snfinsblh4j4wsv2n5kmkfxbvqzcei2ryfyu4heqy6u73mosep6q.b32.i2p:0
-snsw3ewf7wjtwspiuj33h3vtxnybllurzcwm7u62iutf5phoitkq.b32.i2p:0
-sooo7ajo74ajo6m2yomcc6jcofdgkdoyjcbrpl3nyvvusr6fw7ta.b32.i2p:0
-sorobw22rerrhpx5t67joyqai3ou6xsvqxb7wdomtnwnqztm4sga.b32.i2p:0
-sotpvcqqzzmty6llimwlvknqsdcypn4wsnwk677kepzmy76w2gqa.b32.i2p:0
-spbb34lslk2tldwzr4ydi2culk7sxgl3imb2gg746xbxqqcj7vzq.b32.i2p:0
-spuaa2y6qsaywypklz7itcb5klesogef2x66m4flws2r574qjc5a.b32.i2p:0
-sqjjqyrhh45jpgfp66idiirgh5ck7f4s76ee2l5bli4obsotu7zq.b32.i2p:0
-sqjorsqambyienumg5qpw3foftkp44vpsd4lwklgbl4lag4mm6gq.b32.i2p:0
-sqr66feh2g3f6bknt2tnltmnhqdkzoq3jhdaatfusshrv6v2zhma.b32.i2p:0
-stltasmf4b54srrjb3mf7hjtjvmvvms26btxakccdtllgrm2qzgq.b32.i2p:0
-su7d4biurihkyr3qeea7makkxzikxr5zi4znvryh3bjespppfhxq.b32.i2p:0
-swmtaospvaup7me3dvzlw5xoeohhj4zn5q6agivif7kxtseweriq.b32.i2p:0
-syhxehvl6rublw6k5ysmzcsqrzdsnd7eqrbwalfkvhgfccpu2osq.b32.i2p:0
-sykjw3jnb7n6bo574wnpiaxhp2nm4gc6hc4jh4v6trsbpboysooa.b32.i2p:0
-syqxyl67b4hdo5u3jtkkzsabccvtjaerpushov7nrc2f42x67fja.b32.i2p:0
-t2e45js4dn4cfsyyevm26z5ltvmu6lftxziji4fm3v4v2t3ykaoa.b32.i2p:0
-t32qcc2tbjgqxrydr2txgm4ahhhae3zkkojmguehw5gsbtrdvxsa.b32.i2p:0
-t43qqzux7ik7kki2rxtillcgbxrznuhjac7wtqh52sqovk5ay3xq.b32.i2p:0
-t4notlid4bejwz2tzucpvednkeuskenpnu5sqcbdhh3lqouigqxa.b32.i2p:0
-t5cd7q36no6doxduuvk5psdx47zl7ousnckjgw7c6zr3o3ke7ffa.b32.i2p:0
-t7gbmefspnynaezmvx445fjapp24pjjf7wx3evpwlmolzyu3wi5q.b32.i2p:0
-tanmhvkoyd35kf6a2nhj5rmbwpt3shc6thypsle45my565womjya.b32.i2p:0
-tbqehmm3nuuf2spwsjobrc4hg6uxji4mdelivhywz4b7f5lv6rka.b32.i2p:0
-tbrjczwl76v7ob6hon36z6f35otpv5g467q33pgzyyakp525wwfq.b32.i2p:0
-tcx3ftsdl36ukysuuewydapdzuu4alewyg22squei2wda4a74tba.b32.i2p:0
-tetoqjagsf7fpejajiwm4rosqscy5huqbz5hcqgfuha5tdfnlrnq.b32.i2p:0
-tf4tozh5unsgyzpdsmrdcpbgekw2agu7tp5jvyclzcs5kjudwwpa.b32.i2p:0
-tfuvti7yonn5pjptzzvpshh23x4rqjvm2usolrbnlu42laj4mhyq.b32.i2p:0
-tg6goh3flzmcer5voft2nf3tudm7ikyez334zry66vqxmc4ieixa.b32.i2p:0
-tgt7rdhywtlwob47flp6ccq7prrbh4ipnwm3xszuykq7be2pksyq.b32.i2p:0
-th3dj5sqw75lga3tnffbsywajxafv7cvlb7sed6w7q3w3sxuqo6a.b32.i2p:0
-tj2upmck47iktfh4vncmyajnkbatqglqzy4coqef7wioor4hbsjq.b32.i2p:0
-tk63xbzug7def6esivofwq2h2c53ar3ot7hsezdq3amxqqaoyr5a.b32.i2p:0
-tkzuysa4lkad53cywbt6sgpcndvvvdkjeatpkwyfweorx7rfe3ba.b32.i2p:0
-tl3xkknuukvyinyhvt7saz3tvz24ptgyqtzy3igygyfapcf2o3lq.b32.i2p:0
-tl66bkfoqu6eameaqtlwrvfttyc6xj3s57za3hd7omnfnjg3i44a.b32.i2p:0
-tlfttkbshrcixu6i6syntl5xjsoh6mtgfpix54knahyeuhlju4ga.b32.i2p:0
-tmmjmcrwegjke5fzv2hha2wkis7l6xdaa7fkq24ge5rbvqpwxzpa.b32.i2p:0
-tobdew6554c76jhrulcd2ssgvef7dryini2xjxem2zushe37ycua.b32.i2p:0
-trucvlawpufrszky4zzhhxtddnhio4mnqawzc47n7kik6i444m2q.b32.i2p:0
-tsfr6zvcgsmw2ekaxqqtkdrnbib5uio7lgmrtmscrvwe2d46g7jq.b32.i2p:0
-tsrlbxayhihugr723z6rkyafglnhcyzi2zhojzsyfdjsqkkd53bq.b32.i2p:0
-tv3x4kddbu753tnlghgh3txogp26tlydt47rl5scx7eoxgnocf4a.b32.i2p:0
-tvbutrv73xhwqbtosmbp3cesdyc5bbtslay4gjsf7rzdx4ztgzaq.b32.i2p:0
-tvotv5p3emxxnti2bnvucbfy4to7gxptwvh4qznuhy62hghnju4a.b32.i2p:0
-txpr56jvbf3lmqgaozqdqzgckfpugzyd4cwplkjootvf3hk42ibq.b32.i2p:0
-tyfkhz6ggpi2rykez3v3j5f3evnjxfoau7ve7m2heaukrcqiui4a.b32.i2p:0
-tyvsuqy36cx2yvf7jhnkd5ojc52g6vxl2rw5qshqwpk63ptovdda.b32.i2p:0
-tz5txdipkxcnydzcsuqw47qxdvpob644u3cttlbrbfg3zp75vl7q.b32.i2p:0
-tzudbbctweb7rpnf2vswuw26j63ysqztsbt7lfpfj6xautueiklq.b32.i2p:0
-u2tnrysboqqwjn73awg4hfxtfjgbqab6vrdgyu43s672jdcanhca.b32.i2p:0
-u5ixxcd6slvzxouj532njusx7ec4wemrfwmg6gwltlnkruubi63q.b32.i2p:0
-u635477uxqs7z4uvwx224u6ojn3c3ewcb66f3j7qlbzqyrrevxja.b32.i2p:0
-u6wrw47yfjdzk6a7nc6c6scvfokwuqmvuhxehqvymrv7owiajxia.b32.i2p:0
-u7uklnwthbrynr3z2gc3yxfmi5yoemsugjbb4nm44x26f25vxp5q.b32.i2p:0
-u7ygn3heosxu6l2die34y7wteexfp6h2w5j3nhr424yoblysigyq.b32.i2p:0
-uags6hm646f2qsyqfhzjt2xlnjqbiopiodghywosdgz7bwtbggta.b32.i2p:0
-uc52rzz4xu5ikx6hl6r6sqxfmiyyxsffpcu5frrtepczidwjwuha.b32.i2p:0
-udfxh2r5yfu5z7ynzacur7p3g7ug35kfa33ghes2bazpdivxlhsq.b32.i2p:0
-udkwqdo5odg5npn52rueipghn5omhvojthzdmvcvuomgzglum7fa.b32.i2p:0
-udzbx5jyvrp4g3iujlca7jnlaaaa5m3e4jv4sbr7tvp6k6cdjc5q.b32.i2p:0
-ufgoaa6g746zzpphuvxuomuizkyfpz45chqta7skrywqq6cjbqna.b32.i2p:0
-ufittrlr4eautphuqzuotc7b3xx27n4xgy5afm4foc6nsv56q7ka.b32.i2p:0
-ugw5zbhs2pvsgxieklmc6z4z6d5cvyux4pctpf2udhjgxvajot2a.b32.i2p:0
-ujg6b4cyxhi5pf4puwvwupur3iddm23uibapigpwl4bstvlt4cva.b32.i2p:0
-undzufsjeb4qlf7y5llh56tji6zlhtshlsyht4yjdsa2k4ayx7vq.b32.i2p:0
-uobwophnzqq4yhpp54aisud5ojgrxq6pasmq4aq6qw7dhgjcoqpa.b32.i2p:0
-uodycjdscpurlego2nrs7ptoze26p6236t2r2tax5ubdgi6duqaa.b32.i2p:0
-uohuxnjd27cftarbf6kh4czmotwvstpon2sgs2vpffqkgmg7guxa.b32.i2p:0
-up2kudwqomqrwvfognnhz2mjwqvkgpknfyscp4ue5ioev3q4jd5q.b32.i2p:0
-upme7c64dwjgbt7w72yf5ydl3dyp25dtenrkq6z3aw6hbircqzsa.b32.i2p:0
-uppxodf6bz3qibvpzzvtedl5lk3h7fslrwmed2cmqvdpgtvqkv2q.b32.i2p:0
-urqlr3cei7pp2cruga4txxmmvel3bh7nsbqzqzpe7omvmbm4v75a.b32.i2p:0
-usgqijrwhtwgoekjcr26yqcgpncwpsescrr3eek35e3rhkrtptoa.b32.i2p:0
-uu47uxdqqtv2pqorbaxnhhfmcsxmknvpreambqqkosr45b44h5ia.b32.i2p:0
-uv44mjoqrj3m3gzz5wxlnszt5pvgk3iqlc3pmqfe6un6gxays2cq.b32.i2p:0
-uyshm6nokdjyq3l43224at2rigpa4zmiyybuufyq22t4l65ialmq.b32.i2p:0
-uysvdsh2bzicmdqqdl7ezuftxcywzapohbzl5ap5hyiinki354mq.b32.i2p:0
-uyy4dbfyx2i2x3goobc6uxj4nb7ktzsu72zlksypjfisgka3xnta.b32.i2p:0
-uzgfmsjcbjxitt6bed3p3gpdzviyop2rz3cxqyu64ec3z2r5imqa.b32.i2p:0
-vbzp4sjkgqwymn2z4ikbae7rv3clbo7vv4mwv4ft7tu7ubrmbeha.b32.i2p:0
-vcksnyuyw3i6hfviob5yzoynq7okxi677bw7224273fjhsk2kgra.b32.i2p:0
-vdpfoahxse7cjciw5l7ffbwzc6e4xdlf5ulvrk34mzm2gy4mhlwq.b32.i2p:0
-vdv2aitgqica4taqcmjexw5xfbrfbhvf5kuxwvfjf3yiki5a5cjq.b32.i2p:0
-vet6qwwa74jrqrjzcm7ylfprzwpnt3hlzjvkbnaoiv4o2zzkr3sq.b32.i2p:0
-veucihmd74nnumiunvruyjs6kpjs5sqw5dprldlzcf7i3h4igkda.b32.i2p:0
-vewdrismzwnlxlvni7slpq722wlwfami2elghudm2ofcjhpjcs6a.b32.i2p:0
-vf3l3f5unlwrfmr3fiphpomgslxgm6m4chg72itf45yfu3brmy2q.b32.i2p:0
-vfpzasrsrqh3llkudmas5fymwn2ohswqi3vakclgm6fn4nb6s5xq.b32.i2p:0
-vgkou4ysuxvhlxrwf5n2ihn4ffyvvedluun47l6dobi5ycziy3nq.b32.i2p:0
-vgu6llqbyjphml25umd5ztvyxrxuplz2g74fzbx75g3kkaetoyiq.b32.i2p:0
-vj54d2pkdeqvcuj5ykeggr6jnhhnmq5q6qe7nttvb6yjetweadma.b32.i2p:0
-vlwovj6fxzvtsypnmslocootmphezr5txanyfz2gjhn5lanrn2fa.b32.i2p:0
-vmatpbu2vf5p76k2emzg2tjyqi6p6yj3cl4z32ncdhz37ubprkha.b32.i2p:0
-vmbyttxf6sw6ivdamftxung44mktqb4vphmm4lqzdqqpcmksterq.b32.i2p:0
-vmoogdd5lztt5wpzkwhd67uwnvpupye7ycsbz55jl25sueowcxxq.b32.i2p:0
-vn5rsr26rp7yxrqliq7vo4zb6aoichaybd3urvc5eedaspxjp3la.b32.i2p:0
-vnxjmzogakc2a4xn5w4qormiqt5khnjptnoaro74ehinrv4q3yga.b32.i2p:0
-voi5u3azhajnt7476tcikl5mactxcvtsbnrzixwkj62qhpaw5ujq.b32.i2p:0
-vpevx6tl6ma6mnlj42d4fke57en4v5r76yx6rcmhtvw47guo34uq.b32.i2p:0
-vpmkctqhkdqgkekt72srqm4sqaliug37uq2wp2ywady3p235cpaq.b32.i2p:0
-vptzpxba7oys3w2htjgh4uxogaedursdh2yz5k6e7yh4b3pokuna.b32.i2p:0
-vs67sj5crkcjo7m74tdunzefj6ahgrgohs6egj5jxmneszwaoo7a.b32.i2p:0
-vuqk76jvxfk55bkovqcmmkvycmndee7j3tuv7ezdb2slrfpjyvoa.b32.i2p:0
-vxokhkidetjp4tjrj7idojx45hguhnl2azvqnbulougvdkstf3ma.b32.i2p:0
-vxs2es6f7uw2uuneslb7ipvmg6kqh6ytpjezoj2ptwx7od4jqmxa.b32.i2p:0
-vziy2cbrbvliqpi27feak2hiewovxtlkqppsagtaxeib6nkonknq.b32.i2p:0
-vzqowkd4aoyekapcskylli77aj3e5fomixsjyiawnldzj6c5nxtq.b32.i2p:0
-w2a73mo4grdgwvkzdsh6nyutagd4bmywywacxviodw7xnof72aoa.b32.i2p:0
-w2mgaza75amrvfocl7wt6v7eimprlasuj3bi4xezdr2wyqhkxzwq.b32.i2p:0
-w2zi3xos4jaz3ft5yca2x5zf34esctpmzqlqpdrqntjmi2o3gfba.b32.i2p:0
-w3hyqnlueb4yv5lkzj3wlnrjp7fzpxnig6x6m3w5du2ptfjcm2jq.b32.i2p:0
-w4arykcvc7eckzuqr7kvs2njsjpknzb6vvsodpyzp6tvu27bzoka.b32.i2p:0
-w4k4gm3chiyskfzshilxjchpgtpx2xmc6euvkyzkyjvzvdbqroma.b32.i2p:0
-w55r4ykzu6qt6uhp33exqbqmlt357cts2u2zoi7hkuphqmv5iupa.b32.i2p:0
-w6jl2gubyscdpubizes5bp6s42cito4k27xwcjwh76rvuik2prha.b32.i2p:0
-wacfewi6ehmfxvftxqmracfh7se2t7ozl62u4hsuyd4c5xfzuajq.b32.i2p:0
-weidpvshind3dnblwtb4zpssazeenkf7a63favavkc4crhqdk76a.b32.i2p:0
-wgrbhqemtf7qu4c6acjicb7uyee6rlinafyysvxc2yocq4t2ilca.b32.i2p:0
-wjfukwyohljaxgv4woewdtpoxi3q6hnwcnefpgrtif2kqfrxslnq.b32.i2p:0
-wlepjf4lxs4e553rtpoys6kqp2ozcv4pqjwzoybawcl3zhrdvz2a.b32.i2p:0
-wmly6cz5j54w2g2gibnhlpvuhh3bky26cq3a5jy6dp2hg3hc34oq.b32.i2p:0
-wnp26nyphqfmq3udocgcwenpsgfwk4ssw53st4wvwt6mwf7wm35q.b32.i2p:0
-woanasilvwu3yfurvhvqj3lxd25bzj4fxwy3ef3qjbso3cozvyca.b32.i2p:0
-wpnewole7fofvwvrvkkgf45sgcverlodocu7fstm2axp5jfykraq.b32.i2p:0
-wrqu543ssub7kiwzfug4o7m6lc5ibmaamdc3o4uo6a7ntxiqzd4q.b32.i2p:0
-wsbf5tpo7ecsafusflyym72k6tbyclgvqav56qafvyc4j3spzdoq.b32.i2p:0
-wtfebbwmsxoywu6nw5cowlxqhtokxrxftve2zee6flvrpqg4j6ma.b32.i2p:0
-wtoh5v7xm3wx4rqutbyvqaixybwlprx5ua2yiv2gac3prria5emq.b32.i2p:0
-wuikfwkext6lbl6urhoysr2abcyff5lkm2ojr6mfenqq25nzlluq.b32.i2p:0
-wumjwpr45uhvtggq6jkzfda47e4iqk2onizw6vn5po3bd3uqcduq.b32.i2p:0
-wv335vkr73gsaza4t6foqypnovccubvwfsarkmw3xtc3t3sncmya.b32.i2p:0
-wvktcp7hy4l6immhi5cxyz2dlsbhhvtcmskjemrnqehacnoap23q.b32.i2p:0
-wwbojywnrcf2mci7f3zgbomrukcm4d3nv6pttb3dohjpge2sz27a.b32.i2p:0
-wwbw7nqr3ahkqv62cuqfwgtneekvvpnuc4i4f6yo7tpoqjswvcwa.b32.i2p:0
-wxfs2ccar4szd66dlmlijh3i3r4muehqjxjmabwbb46cq3gpbsoa.b32.i2p:0
-wy2udklgydh7iknnffbzvldoiwsct6dy3o7fjcsjcdjoq4b65vha.b32.i2p:0
-wzui6sc7667w7aabs6iebiex47o7cysxpryfdaltaklw2z2xgtuq.b32.i2p:0
-wzvki5234ffqhri26fqoxosqq3xengl23eoitkvip4mp7aipo3lq.b32.i2p:0
-x4cetuarbwiqphebitvgv4x4kzh6yhyyvu5c4yjlm4jsyl4bvs5q.b32.i2p:0
-x5qtgyzzgkovoko62l6n54p55xma5pbstbp6t6xc6hbugxz5ck2a.b32.i2p:0
-xasewpiqpzhyggxwsajmnkrppi2ozmapqv6673zuuymoueq67tla.b32.i2p:0
-xbetybs3nyeykskasolpatj4qrfnigz7a2bx7wcsyrniqd3usnaq.b32.i2p:0
-xd2byhr22rqkawocapbxedovmifyk77qrh6br4ctx7ny26hpmusq.b32.i2p:0
-xdoonpwnxhr7sjoyca3lkqsapmefd2puyar22ztocod4drjju6fq.b32.i2p:0
-xdq2g4tkaukzcu6mnvdukchinma7koi6c3noflpjabrzjrgeumfa.b32.i2p:0
-xegcohfrnnnuz3hdmb7r4e6pzxbmtg466n6mty2oz3tcoqutxj7q.b32.i2p:0
-xfyzfugo3qtfpq3s5zccbbqrxfkgy3ttlqhz6t6ovmtgrsuyce7q.b32.i2p:0
-xgbz5vpek6vaeej2zejxrjloqg2sqb67gim72qqpodqfq62rflvq.b32.i2p:0
-xgqzxudkvgbqwosaha7zb26jgza5wb7m66727rk4v2zj72xgg2ia.b32.i2p:0
-xgsk2huqghiftyznr6llr6ztepo523hiwqscxjpawcbme7xtjrta.b32.i2p:0
-xjebyiaydsbb76gqzetsmccgh67oeaxt3c4mkwmt7gjlfym266ea.b32.i2p:0
-xlfxusgnzpmatutaredcvx27zoiecno4tpxm52jicdvn4sr5dyya.b32.i2p:0
-xm55wnfhgmsy4wz24swjs2ziguheut6y72kht4ytwyfdmjsxslnq.b32.i2p:0
-xnb3pxtmai6ofbarycclwwueaarn4r3zt3zgkeepo4pgmswqvfcq.b32.i2p:0
-xnvsgbonlja7cmeokr2msvdelqlasbkwgqndqg7eakw43t3m465q.b32.i2p:0
-xpqubs4ftu7ym4xwrirlz2e36gvyjkil3chvq74bj4lf7djcrw4q.b32.i2p:0
-xrrx2rcpj3zefshtt7kamz3uflnwebpv2gkgd6vlrdazxgln57gq.b32.i2p:0
-xrwuqylcgkr2ovsf4pziosd27ywd7pfaohnreoyzm72qlnvoktrq.b32.i2p:0
-xtxh4wtmbjls76wxnehe57etubuqvsdiunwgve6kwjt4acwswnjq.b32.i2p:0
-xud4fgmeq4hl4cgsbjn3ubz2iyjguogskn7wreesvpsm3ib27kpa.b32.i2p:0
-xuivvnpcj2rhsxmkyyjzmyq6a7gwgusnqwdklgimamvkzu7rnnmq.b32.i2p:0
-xvpzaqftlfx2etqys733mndm7jr3l2j3if3wskfljzaow5s4rrfq.b32.i2p:0
-xvtvmaele7ns725mjaowsajpx4bgfecburyh6pqmdnn37cq7cs2q.b32.i2p:0
-xw6ble42juwkfrjetb3hmk2ep6jnyufhutoenyrou6ieoqiomw4q.b32.i2p:0
-xwlkpubkvsdsyaeylqfmxfk43juk6sz3hxnmwe4zencjq77aznea.b32.i2p:0
-xydzqrwggskdbmeqrhgt6alroglzbkcarzdlhabmvrszm5u6cfuq.b32.i2p:0
-xyhlemqmoeusqbbzr4oqph6kgmvm3a3lrbuanxkmyetwohxoynna.b32.i2p:0
-y365lf3vlh6vg4rs6trnjc4ia2xqplahk26y3tyqjly2q2vpfnqa.b32.i2p:0
-y3equ2tc6zsxqtndugsfzottuenfgxnl7eqgadmnzjkoigxvseka.b32.i2p:0
-y3occl5rqc2mz64esu5mqzoyfzlbxop7tttf2b3gyxjust57txfq.b32.i2p:0
-y45xhqkb43ncokfwhsmr4z6fwykuit6o3p2kbso3emv7stpiwwoq.b32.i2p:0
-y4njm6ftdn562q5thzd3fvb2f5mbi6bglmyupukcmcpt2tuo6slq.b32.i2p:0
-y5wr2bw3rt4rvw7hqqj7qtlf7vdds6zk6cs3mu3myyduasieqoka.b32.i2p:0
-ybjgylnhvk3fzyacxvyh6dwvrh7lk273qh5qws7uquvrhhwr6rka.b32.i2p:0
-yc4xwin5ujenvcr6ynwkz7lnmmq3nmzxvfguele6ovqqpxgjvonq.b32.i2p:0
-yemrkyqmjzwwn2yast2ga6dcnsovnxwip2rjpid56grdg7itugpa.b32.i2p:0
-yfplj67xwcblbiu4ozddmzlmjl4ifa7bhkzzu6fu6jkoyqui6v6q.b32.i2p:0
-ygtc5m4mh3qhi7tct44gxqbenhkasp2y4ydjn5qua4l5vh35osdq.b32.i2p:0
-yj3v3ocgldnackxptsjmwasa4xzxj3it6rtuhmlpxvwlq5kmyytq.b32.i2p:0
-yk2srkdlbm7kebv53dx45ss7q2fjcy56m3gywqvw65eya7co7hgq.b32.i2p:0
-ykppjmwunzqzuuqc6qqsijomfzdgieeq2mkidapc4awrww2ninbq.b32.i2p:0
-ykv62rivlxurq2wkecagzs76tulfor765c237bsjn7jt4436kn2q.b32.i2p:0
-yllvqk2utimxjtoyzk7l24s4n5sqp5dbn5vwsbt3g3dd6h4dxseq.b32.i2p:0
-ylpyfcs24ij67dkl7ighyou4z2gpfhjlt2iellj2ad4ddrxci63a.b32.i2p:0
-ymo2cnldmstzqlsdhx7kurii7aaffrhpgafxlli3s47pzbfe5evq.b32.i2p:0
-yny6zqtb7qve7wwfctsozhzhbq4hyitlqco4uhc5q3rvjex77oaq.b32.i2p:0
-ynzhhxlieigtmj6l7f2dq54ypnsaf723au7o3uhnismlgnkmcqjq.b32.i2p:0
-yof4yvv4agwhfmicj5u2drem47nvfkihnp6bil7ocg65gydyzzcq.b32.i2p:0
-yojuyryq6vfoy2mftrdmybmq2hjefuzrwmpqqfvk2kd5hptgr3qa.b32.i2p:0
-ypbq5aleoqqoxto4tkxlmlxh2hrstjxzpgonj3lk7dzweahs3hhq.b32.i2p:0
-yql2k4zjl64dtybuculjgg4v4u6sje4smnyay3vslv7irrigzxka.b32.i2p:0
-ys36rtuedg44sahelbysqi2mbc2l3rcfdy33zdvhvfkx5uocacba.b32.i2p:0
-ys7np3pmfhiyq3z2rcoeylb7agfbyfuhhp7ky2uzvvuzswad6cia.b32.i2p:0
-yuqb55drzrhxfnvobycxqau47kibaaf4voamk3kxl77xbb42xkqa.b32.i2p:0
-ywfauauaekbrxgwaahcjzifemzdq26xsshw54sg4bpr5z74scwiq.b32.i2p:0
-ywpsgu6nlnf2l4sy44tit2av7hfzwwttbjvwbtsbtqur3awiax2a.b32.i2p:0
-z34pw5tlowwi3gpj3ycb2dptgyuq65bpj7w36xahslgikggo5eaa.b32.i2p:0
-z3j2xshl4tpbxaybcprhzq7cuz6urboqoxvvpnfriv4n2lq72jsq.b32.i2p:0
-z3pgyfiwfzcd2g7v4rs6el5tvc55y7a3tai4gcbpso6flaejckea.b32.i2p:0
-z6mlyrxcjddpcaoumxnw5peulnkvj56hgwqmnc5adoutp7piujaa.b32.i2p:0
-z6xsstyq4zynzvagwv3wr7htz4vxttrotzb5izefotlwqm7kjtua.b32.i2p:0
-z7cjxpy4taui2ka3ekfqtoumsb7pg2sok3wfey3m2roeuppcrzhq.b32.i2p:0
-z7cjzfmv6wadjguzaavu7pfsqhujbczspbf5sxxrqndeovu3lt3a.b32.i2p:0
-z7gkesbkbl27lpcpbnhgfofjz5fhnvljzfvyydu7ky3odzdqs4lq.b32.i2p:0
-zafd45c2hzd4w2t24qtjqqbqm3z4hayb6vadj6sd5oukjyij2ara.b32.i2p:0
-zbkqcqtiiw4nwsds5pjel6alr5i4hgiyqf5giwurdygfysacru2a.b32.i2p:0
-zbz722dh7rvu6ugdydmlmtgfyc7rnpeslae525c7mhr7rgsekjba.b32.i2p:0
-zcwgqw7hlw7437a7au6n6obljdb4arnshoibdqo6voree4xiznoq.b32.i2p:0
-zd4ns4zcyvgpwkioftiiftgj74n6mf4m4ieq6aedqaznmdi6rhdq.b32.i2p:0
-zgwseerxwqnid3zhculzuqbkhghthsbvsbnqowredostfqlvawsq.b32.i2p:0
-ziehuxdpyg5dvvnzedmcqxszdcflsrx6fqmgzb7odefqwqaxrs7q.b32.i2p:0
-zk2r7kzzigzu5kz67xnrbe56u5walngylcsk756bkmt66cmeeydq.b32.i2p:0
-zkbjgfp4ouockpsmpbdyli4ilo7f3lbfjsboay3nf47ymir2ldrq.b32.i2p:0
-zki6halesukhfel76pziutgica4zrp5qtbmlmgyqf6dnnomk7hja.b32.i2p:0
-zkij473aummp6rvwvi7wbr5iio6xu2uh4rophbhyot37uxhrygiq.b32.i2p:0
-zpvqqdrcnagad5ayutf7hkp6prtvrbmknhqdul3qweft7oa5ikzq.b32.i2p:0
-zqft7c6riv7aux62qwe5xfqki3dcb4urvbfy6m4wz7f46j2us3la.b32.i2p:0
-zqhoqgf3enj2pv74sjov6dthpr6jqafw5qqzzsvnfdqzycychxpq.b32.i2p:0
-zrrki54mn56fytizkfmhx7eubea37padxa3zliwq6gtknrsxv2aa.b32.i2p:0
-zsfpcnbk4g2bwxl7yy5ebrcvlxd5gpcxatewdrgpige7oqykunwq.b32.i2p:0
-zszq7enaxbz5p3f3idhfkkd2u2ygpeqwj3o6hkofffcmllnymwqa.b32.i2p:0
-ztr3c7qz6v4hrnegmkzjsr52wyi4u6ery4m74sk3m77oup2ws4ka.b32.i2p:0
-ztyxbjae7ucfyupxpy75jwpzdktg4gbvhl43nh2crwqrx2uhveda.b32.i2p:0
-zuamj63ad73jmnw7xnxrmjsbjg7vg23j46w3mpc2udpcgjfkcqcq.b32.i2p:0
-zvchlrjuzqdlx37fhibhnym4y6p56vtlymujjuzhh2cp34yqfrtq.b32.i2p:0
-zxsd3fqczh6ddgejc24nnmb3ww7nalieq3a7cs2mqiy6tmff3wia.b32.i2p:0
-zy2ywvyqds5bgdoo4tgbu3bwjp3ygyn3zfuby44jemc6xa6fbwta.b32.i2p:0
-zzre44vh766jgfordw2ehu2r6p44j23uyovgvm7iwuhp3g5iz4ca.b32.i2p:0
-ycdw2e4ufgfwhcqna4g3m2qsvaly23ozaexawcj3x4gtgcehgwujjgid.onion:8333
-ycfvedulkprd5bmivqejur5aptcs47daqtcvzotnnhfvwu3o6gcp5cyd.onion:8333
-yck6l5ffw6oszgtoc7et4fytvp3sqdf5awyky4tlpgem2n4y6icxqoqd.onion:8333
-ycnepnzktkhfysqijlgbjk5awivls3eiqb5kjudotjvnvlbe6ah2k5yd.onion:8333
-ycwrrabomoixkxggkxldyxkqoc7qqy2t5wxcsxjgodlvuydwch6dqoyd.onion:8333
-ycwwrwkqibvkftpc5kyqs6nf7hrzetrmqgwo4yae7bq5otvubkfsread.onion:8333
-ycxjdh4jr4vun447cdszcoge26pbdnqblfi2osmk5e4uqmrigw7y4byd.onion:8333
-yd2ami3rem3i24q2b76l4ujyq343ycrowrthwqycvpcsofgpwlxyryqd.onion:8333
-yd4nyusqking6tkcwmmopznlxhyfhk3gsw265alz7vpo6toqg3kwn6yd.onion:8333
-yd6b3wtmu6bz5km7hw645omyv65one627xech7f3vnlwkblsvqdtmiyd.onion:8333
-ydforbx54mnz7g5u2mu2ulkomvakdbwxoad6araknijb2i47gkfeh7qd.onion:8333
-ydiqekqpcf536w5uwsdclw5pt4n2fkz52fo4vwdducc5t5l4ghqaxnad.onion:8333
-ydl5kqr2auvie5mtjkm37hzkqh43pobibty4msfzkbu4junpg5gak6yd.onion:8333
-ydojumivjpins2lwgql5xaywbngrmw56nvmtalvfiy7sr42ksvr6apyd.onion:8333
-ydvbxdzs6w5wefifiqsqntpbd7tliofenqih5hlnz34546fvy4ab7iid.onion:8333
-yeat6ea4esvd4nimhg2rcb3ghpusoqzjb44alb3hhdj4d2nimn2vpoad.onion:8333
-yeficzguf443sojjdcmh7lzk7l6y43a6v2jbyk3x2w4n7xokjs4crnqd.onion:8333
-yefjaylovpdhbb5b5bhjx37digt5u62lmzyc54ygtabwdphm3zwd77id.onion:8333
-yeghpcuryadlbxzk6o3ujebmfuumkpoi32dr2ctfmql6vqn5wjioehqd.onion:8333
-yenw26f3i6kf5u2nad6xligxk5iyizjvl7msx3pzjcatiesogdef4zqd.onion:8333
-yeoadueo3ukf6s3fetywtbvgmpvrtkja5rlp7wcp4aich6tfhh35giyd.onion:8333
-yeqjrnnuf4fbgzik74qfhrohcymj7ccbze6ndky4pe673chfsjconfqd.onion:8333
-yernmfgru46g43vsijjv44n7m35tpoznnkd2p2wl3uqzkietukxqxoqd.onion:8333
-yettfzp2vanmkehwxeaugotqcsg3wsomcargvetk4nhwnebrpq7ah2qd.onion:8333
+[2a0c:b641:6f0:193::]:8333 # AS203394
+[2a0e:8f02:21d1:144::101]:8333 # AS203528
+[2a0e:cb00:700b:0:cb0f:cba:41b2:28b3]:8333 # AS60377
+[2a0e:e701:103e::4]:8333 # AS2027
+[2a0f:b780:300:1::2]:8333 # AS49095
+[2a0f:df00:0:2010::162]:8333 # AS41281
+[2a0f:e586:f:f::13]:8333 # AS207656
+[2a10:3781:2c19::1]:8333 # AS206238
+[2a10:3781:3a73:25::25]:8333 # AS206238
+[2a10:3781:3a73:25:a177:ad25:b14a:176a]:8333 # AS206238
+[2a10:3781:3fff::1]:8333 # AS206238
+[2a10:3781:84b:1:8002:99d3:191f:c738]:8333 # AS206238
+[2a10:c941:100:24::2:1001]:8333 # AS35277
+[2a11:d540:531:b00b::5]:8333 # AS207586
+[2a12:8e40:5668:e40b::1]:8333 # AS45021
+[2a12:8e40:5668:e40c::1]:8333 # AS45021
+[2a12:8e40:5668:e410::1]:8333 # AS45021
+[2a12:8e40:5668:e412::1]:8333 # AS45021
+[2a12:8e40:5668:e416::1]:8333 # AS45021
+[2a12:8e40:5668:e417::1]:8333 # AS45021
+[2a12:8e40:5668:e41d::1]:8333 # AS45021
+[2a12:8e40:5668:e41e::1]:8333 # AS45021
+[2a12:8e40:5668:e422::1]:8333 # AS45021
+[2a12:8e40:5668:e424::1]:8333 # AS45021
+[2c0f:fb18:402:5::3]:8333 # AS37199
+22pz2giqglrjahnebbeedjyfhmy26wifq7d6wnioioqv3kbctddraead.onion:8333
+244f4ods2jyhxjbzmjoo74hvdgzxkkf4xysnwlin4b66zactsve44mad.onion:8333
+25l62iysmquzrl2xgocvipsb2qhwxizahgfo55ssj2ducahghmc4rlyd.onion:8333
+25nwqmtbqicqrprsfv75tghg432c4viqlps7ov52pb2uj2u2w4ek2dqd.onion:8333
+25zmfaqaki3f34pwra24yl6eqgsrhmcxwa2vjbfxzddgalegee6e6sid.onion:8333
+26jfbxrdnsbxlai7qonraijp3sa2sybizmx75ry6dyr3s3dampmwufyd.onion:8333
+27nda43gq3qie4mw2gscszxw45cktlkzb2dsehanwqrv3il45bc5xmid.onion:8333
+2b5myuudry2fc5abwur67yxenqkjbp3gwy4xkxly6elurxwpq6my6pyd.onion:8333
+2bu7aca5dslx53okedetkovivsfzgjku5krxnxv6jcwpovrqceyktgid.onion:8333
+2frnyqoym5gqwo7px6blri2p6cqxpqwjz6fxtruwbo6hcfbuh7r6qxad.onion:8333
+2g7f4dst4ga2mwtavj3uhixhwtktas53rutzhf3dl4lkeb3x6i7ollqd.onion:8333
+2hyo2nphjdhk7srnkj722pnynbtd4qcu2kaqqsqfqn4du3qi45ydkgid.onion:8333
+2hyxmlakirtpgbxmyoylskwm3q3p45rseqz4bezpwocx5zk2rzgdsoyd.onion:8333
+2jnduapgnsztxqlw7an263mjjrd2hh2okgpg6s4pxltkwsawyfrabvid.onion:8333
+2nbfeuyzysqhw2aawievujdc7s3pvri3gygufownc73pbbq7pwoa3aad.onion:8333
+2ockgj6yxkytfiup3rlutk7j62ttnvndivrsqq423gi72bg5puqyacad.onion:8333
+2oyz7zkpukhlodz4hcdsfkb7f3tdopyk2h65nwtaiviuwcv4lku53myd.onion:8333
+2qmfh2ay6zvpvvsc2fgvcarwi6ny7voht36uwqzh2s2lckktxde663id.onion:8333
+2rpqi26jltpqxghloljkfvpywqyiztklvqe2j6g535ct4qc5cfi6wcid.onion:8333
+2rpxcrfxrtdcs7f7kdba6j7r3ej6k2xiwcrbbncvuyo3dms3iqscadad.onion:8333
+3bzy4vmqovhimund35clac4tx3isy4fzpnqq7chzioktr5in4a246lad.onion:8333
+3d37tkrobqlm74estbowv34vegntpby4o35f4cp4adopksrhvqpbgaid.onion:8333
+3dxq5z3rmhzhr5jaaiwzn34dlxjashwdfyezp3pxi2bokf6ljlrysuid.onion:8333
+3f44ddpy2c6wytq37d73ro7j3hl24njgmkhknxyekd3nfi6fi62adhad.onion:8333
+3f6x3accjzo72tcxf3fwzotwt2wi4f6jqimuodd5td3tkla7tvs25lyd.onion:8333
+3k5pwv5mqjo4cgekyy2ncv6ioyduqudk6gjo6rq3ozdqatgdma5n2ead.onion:8333
+3lurimig54ozppuvqbh5lorxcm4z65l6ybyrst3ksdjfioyic6nms6ad.onion:8333
+3m4o7fccoizgqe3iybwetbqtm3vsb7dpoodgd5gtanyxz7g3usg7lgyd.onion:8333
+3qggxbp2bggve2x2evcs6nynoaxryuew5mcr4llsknczewi3occ7bqad.onion:8333
+3sap4vo5v42zf6uvbeoxgj2tmqwfxnsm6lltrcexhed7zbi67rvkbwid.onion:8333
+3tofha4w7b7y5amgwhj3hssjr7z3rzrptlpm6wgzgkrruqw4jy2msqqd.onion:8333
+3tpbeteemou53yfzifzbbmhgq7avlrumtacstk62hlukw4vgt7ip54ad.onion:8333
+3wldmps5hoxc76qff2of3adp6fqda3vobcenodoqwwn2grlgsnurn5qd.onion:8333
+42qfhqoyebkpddesxi7zbm3ujcfzmattclannvkdp6g57gkbg5l6nuqd.onion:8333
+42ukdi6zsgq5hcf5d4b6xxdj77ffismhz2sm7gevibcnwhzfgunluayd.onion:8333
+47u4lbj7qmyllkxj3jbzfjoag4z5yiuoypsyp4354aprosmunkaszvyd.onion:8333
+4l2kbv6dyaghiqrzcuylzuhwjcag3vbujr4cre2f2f3a5gbf7s2t3bid.onion:8333
+4ns7eu3lxa3b5zqvajvzrigo24ltbjmeiqm2parheihatd4n6mqkbuid.onion:8333
+4pm2bfb3aekl3lkpf4rhjjbdnfcn2xcnqkk4de3pz6ekvhf5ym35gjid.onion:8333
+4q6xkttr2vvycn6e4uw55feflsq3oyrmazn7tfz45yxni73yhjj42jid.onion:8333
+4rf36sj773fhwxbq2smywp4xkpdxviy6azro4epcl5vtjf7fsjn5c6ad.onion:8333
+4v5mywuxbpdqyfwwo4bvygbqyvne27ekguavq266ap6o75jbcjlme4id.onion:8333
+4vp2psi73qfspc6neodpxoxe4hexphfzq5llosrah5gk4njwhn7hzlqd.onion:8333
+52mfjouhwxf3puu2af4dsoksjfhnvuf4mgpkcblw6gdmsjgrbprxyzad.onion:8333
+53bpgsfyljzx5uztq5zu2ybm2oqjiba2ecmmcwjqz54fslxr2j67txad.onion:8333
+56ff7zlhr3slha3d2f62iexx7gn3jxrjvkb3e7nx7u2jtnuc2s7xxgid.onion:8333
+5bxpoorrgyhsc5746rg4advtjmxkpfwo4vhokze7xv7vcaa3anetujid.onion:8333
+5gikcukg56x7tygwtjpexvd7ca3mihjptzfrcxbrlh32veywo4lr6tqd.onion:8333
+5kggaeljugzw53t7mirx2hqmscuc5fab23pfg57mivrbww3pe5corlid.onion:8333
+5ngcxrrpkcciev6uagutm6zjoi7d6l3nlhiktii3z3mhzpcb5qkiisad.onion:8333
+5pia4po7brgcabehjypingeufxwayoj4min6jga5qyzacn5lp4c2cwyd.onion:8333
+5pmr2qluaafemlifmsrd3dtxhgtzkhc2u7kpszqvl5h3lwb54jmnloyd.onion:8333
+5sl6ffjj3mecnskhs6ltphzq7z4vxdhfsm6f7xv4fmyqjtqlbzz6evad.onion:8333
+5tm6ubis2atpjieggptfit5zk4dnmoewcclj3gbjfcpnosywve7isbad.onion:8333
+5vikh7wzmyktdbj4otnizwsoetpq7t3swag526lvvyzw5wjmoijx2uad.onion:8333
+5vllnjopzyhmlfpsakb6vzqr4fpgbqeilcurxmi5ktamtvkhqduc57id.onion:8333
+5vpbnwmkqjmeos4qfta5o76nsui4iissafgzl3qdktmsznzbe33i7wyd.onion:8333
+5wcgiu7egpkqpn66vy6dz435r7ovqsp2y7efpjy6nabb5bhtnigvj6yd.onion:8333
+5yenarpzihhwz75lbcrt22wj2qtql44k5pzb2tyev6fxlbpzmp64ytad.onion:8333
+5zi4cuchmzuwnkg6li7ith3persinyvomcuch5fmxyuzt6enf2c7maqd.onion:8333
+62tw7sc55265w2sqhhkbncoumgxbixxtkakiuog7zcqyug7iebbxzzid.onion:8333
+63cquq2e3gpcgfti5pettx4sbg5tg6xsjl7neskl2w6wnqgik6k4koid.onion:8333
+65jiaxxehmakn64nsyeax2xk3dqkegohu33fi77gjhukzw7dm5urwkid.onion:8333
+6bzt2mdeo6afhflfxmilnhokkvw6edxue4lgcdvjib6fn5dmy7hx4tid.onion:8333
+6hobuesgn3fk4b6xkkgjj4yabn4rdkqxhor2yg5sdflprmtjjuo6n6yd.onion:8333
+6irbiwo6m3vyooxia6gsyxvx5cxufdpvnb3pv5wwy4eoloo5dmah3ead.onion:8333
+6jya753mqzrkmgkop2nyx65cxqfoup22mdapj5tkk6gqwh7m6zej5byd.onion:8333
+6m5667klqvbya6uqnmcqspo7aeoreozcipzzb5f222vlrjhhodronyyd.onion:8333
+6ovl23cbwhc2dpm5rg4rs2xrqg7r6v2d4btsvs6teh3j3fwi5y7drvad.onion:8333
+6q2qwfnphyov635sq4j6hiiy55wi4ode5jbcd6wociu4t5cn7mm52jyd.onion:8333
+6qk6btc23vtuldtnnmkvrqvmzcjpoullfwdmnnctvlvekxhkdjlsobyd.onion:8333
+6voevyc6f7ng2axpgzw3irmu677os3b6l65ljhuozf7hfkar2fpbxxyd.onion:8333
+6wyq2i4gsjvidvz7umsdnwrgxvksjs7wqvvuf4zdjxsjfjwg7wil5zid.onion:8333
+6znucpvx7k6zasghyu2dqfp5thsrr7a56cdhb3yqoagre3uv52od6gid.onion:8333
+74oj4sd4e5zf7mub55pem4kjcqo6udugo533mlnahxmx6kliwmhurkad.onion:8333
+76yijbvce4sblwgr32q2se2hakcbxesccnzjmlpoptm2d2txmsepd2qd.onion:8333
+77xulqs6goaawmm625koq2jm3uhnd5dccr5cthgins3jpuywncq3unid.onion:8333
+7baui46dvqf374kpi7aaffa7xnh36xndc5mjmqf4kzbxcuuxa5ojlaqd.onion:8333
+7bjwdnx5umef3bchtn4coz4qawx2st4752ckrmwqr27ueg45w6mouaid.onion:8333
+7d7kfcywf53obtguqshs344lgthjac26hndditvodqlh5rocy3cjplad.onion:8333
+7dje2pijmwanoj5thrg7xmc6hfsld2tgrrknsuem3dfx2l6o4f2cdoyd.onion:8333
+7e3rx4potc2rt345yeathbegxnd5pknju7iw2lwi2cz3ap5onnk3ktid.onion:8333
+7g6vpzfqmzbx6cbqu27euah2ync2d35wfega5uco7xq7ywrkdsjtlxad.onion:8333
+7hefggwwkbpyxsq42idogvxpfbdayayf4vgiteog5ekthegmy3dl6fqd.onion:8333
+7mlt6sj3gcjoo5jpf2ctc5ozvljizu6vw2cs2dw3oyzomeaoiw3uqcyd.onion:8333
+7nnpzpyfbqqzpmmfen6w6y7gr22dey25zvrav3icfmlyb2nfwxticlad.onion:8333
+7pyrpvqdhmayxggpcyqn5l3m5vqkw3qubnmgwlpya2mdo6x7pih7r7id.onion:8333
+7qwkvlpilk5fel2biif4nstoubxdedxirvqujcyptxgy6bf6dzsj5kyd.onion:8333
+7r362setmugzrgptpjz2cgzm7qv4nhx3r6dhbabki7xsv4qqwumzz4id.onion:8333
+7r52rv5epyoq4ni4qhqxspnfyajxhfl6rynw6c4a2p27r4vnq64nizid.onion:8333
+7rpz563sgtfza2qmaj7ltamswufnmdxv72vcqloxfksmfr7fudjsuyqd.onion:8333
+7sm42kkqswwp6axdpz53ssefbmgrag7exwiis2ifdg7wfio6bxnu7cad.onion:8333
+7twzyh323ott7mpbo6y5qkyk3eugwitnsgwkxegqfg45u3crxoa6e7ad.onion:8333
+7wakp4xjxksgreekwjeonul2gj4omcn67g2qkiazfq44hgqit4z7rryd.onion:8333
+7zgfoegeed6jotgmuf2wkotbb2drdkuk223v3moomc4akiuy3yincsyd.onion:8333
+7zlknyoxay3rbdb4bj2zdsnagldpzjlzzlrmwihpb6yutklzqkhpwmid.onion:8333
+a4dkz55hsbef26ja7bz2tfsvlgjigg55ocnhycxq34efwpuzgtgfwwid.onion:8333
+aec4fcjyfr5g4eqsejmvc7t3eit6nbnv4voxnykmw2orn2smhixfrfid.onion:8333
+af3uv4mrxrqenu6a3kbfeovapp6k4v2p2ymxv44jw3i7szagcmxf3bad.onion:8333
+afn2rl2wdprisevyhxea5nrbflt3vwdh5crg4hqb2c4iukaxdw34j2yd.onion:8333
+afseqft4jxpkyeiz4c6v57nxwttwte7r4xas4lnkuxckfn4ohpycb4ad.onion:8333
+ahwkawuxyowyesovtvriaghqdvud7ksy3kt6rjhkcadsff5rllpnjtad.onion:8333
+ajws3x7xec4kdoprrljsdsnv2grzqng7yb2p2mp4gm735hly2rdfatqd.onion:8333
+ak226w3yvth4s4fs4ia4rcdkhkzoyrkjk25kk34qgxeoglvuho7dj6id.onion:8333
+alhwf5hus5gfkeq6nsqxhrxlq3nxherufycamaf7xnjwpnexuf2mziid.onion:8333
+alsnycayqigth3b5vrjtftlowxdnkne4qmnqawjw3qmhdoig4spqlayd.onion:8333
+atygn6lucla7t6coygbfd62n533kashhwavubkiwz5qgjmt5nkk2vkid.onion:8333
+awznblcc4yvfocchm73gwgtig7ohxxszmwx5ft5rpbeno2i6fwllukqd.onion:8333
+azf3zr4ldr74nemt5z342melrvrffm5qw4qx4p47zfokwqupw3gxl6yd.onion:8333
+azvij5u6agee2dl2k7eh2eliqu3f3d5gldzxodoo7qtjfiky6ewufmyd.onion:8333
+b3jgrfpicqpymo62sdgfmvgk65gw47rhr2iywrusj2rfs3piwwhsboad.onion:8333
+b6fljee4jrarq23x4ppnwulldtsysqviknpgtdu5aizpkxomkgvtsxyd.onion:8333
+bacwevhzgtzgxvdkkwyvkaxsxwhkhqwa6hb3cvuizjsihwklqhslmiyd.onion:8333
+badjfbjiddjpnru7nemmscmtshyicdwmmj4tce23v3iihjh5tsu6zqid.onion:8333
+bap5i44uxcoomakmwcjls4spwh3uipliitfs6mfkrczdnsyc27gwf4ad.onion:8333
+bb4n3x3uacfdd4o7n6xlgomnott533kjjdrjnpo6ptbigpe5h26fm5id.onion:8333
+bbf7tqqbgnk5kat6ltxjlaxeruqeyyovbxsc3baucjar7aerlq6pv6qd.onion:8333
+bdrm5qxuox7ksubnmweootuxhb4v3qpvp7fkkwadavzqvgyputydfaad.onion:8333
+bgimz47rqq6nr7yzjaucrx4llfbtrytooxkpy57okjhubz6kcxlh6cad.onion:8333
+bipshow4n2uhgfb7my5ddmeqn3ysxgtsfwlzp2yhqg6ex7z7guzkkwqd.onion:8333
+blfpqvmciektsqzy46bse4mzyxpsb3dz4z7wpoufjr4d3tvzigtlbmid.onion:8333
+botxev6ve7ushdwdkbgsizb5k5ugozfst4x5ptsat3munr5eyqxx3jqd.onion:8333
+brlajuce7fehga3y2fq75rwm63ecvnyh3evsydyah62d5x7mzzmwbayd.onion:8333
+bszynsgeze7m5lknibgenz5rl4zcfel7lojxe6j4y6aecfttftowp7id.onion:8333
+bu2bpe3ucyws6fbzekadnbfdxjq4z3tqxsgpnvm36nf5tes3u37gyjyd.onion:8333
+bu3xgmjbtkfkk5jqy3ckdivwfgufefpc43yczszpriggnksbeapx3tid.onion:8333
+bx6z6hkku5ksqq66fuqrghbaz4bkw2qu4uiv4qxajfmqnrfejtmm44yd.onion:8333
+bzb74unsgxuv3wrkjzee4nxe7knmf44a3tbwsf5ljvfci7hjidmlflid.onion:8333
+bznwam37uhpeuodct2ppxkoe4h6xs37vjb64cpb22aiafh75vabqujqd.onion:8333
+c64xcctcx7aelj5yy2sxa7jinpi7wzhzzvdydr5aqllzu2fzgufkuzad.onion:8333
+c6fok2ng5z3jvk3bbujnprs2cl2htlfpht5hdethnkkfyfhg6wiz6fqd.onion:8333
+c6k3i4245y6honrsxfcm2l5gcnn5rlcatxzyyubf3kubhzdvgxop3rqd.onion:8333
+cbgpdxoree2eg43xmd4szoaawstbxqvo5kb23ky5bez2pq75k7vpi3id.onion:8333
+cbnuxupqql42wefzspje5wqkaauk2mk6ptqb6khle443attsannqvzyd.onion:8333
+ccwhslmsgslatdy37tsqn75ojxtweg3a66phlxm4o7s3g6byj4x4ghyd.onion:8333
+ccwupmup76qqjmtzuiv3hpi3u7akqte3d6wzuvee5spe4lcdzeldzuyd.onion:8333
+cfgoe62d76nn46h2dp7ut4oigb35kkphi5ghzn7hmsxly5qfijlpzwad.onion:8333
+crbqu3nsuag7y3fty2s2o6khgxl4k5wfbn6mguy2kvdbybvtbqzgkoyd.onion:8333
+crqe5di5puk2ehjiw2ruuqaqmefc6hwryo5cpicyydkxekdbzno4rtyd.onion:8333
+ct2is77gyqeckpqu3khdvzvq5bm3cowixixdlgadafkvdzeviwyrw2ad.onion:8333
+ctto73iocvgjkru6iw62a6hre4lubq2kluupye2dnp4raxr2urgu6oyd.onion:8333
+cy4utydmbvspzfbz2vdlzuuxkyyzhjuumra7klk6ojiptv7y6cup75yd.onion:8333
+d2mlhomjbqjxv6mn6xx3xir5x55jrmx37pz2swm5m3arctpt7n24kaid.onion:8333
+d4acgxoszymwjrjjcyclht2zzq47pomhavsafxiervejqyzipd5uxbid.onion:8333
+d4clcpzl66owm7t3pm7czb7zzgsqefpdh5plrnfypba7f2mikfv4u2yd.onion:8333
+d4jnim6os7bshrjgpfecsg4i2g3vt4azycssuqahiupsd7hwtjpfjsqd.onion:8333
+d5sd6yiuwt5rts6xghywihgxpbfih7rcrv2ubt5gh6nf67dfxq5g23yd.onion:8333
+d7nslqez2k4rhvxbg2kxedlzyoyt2g3nvelcniyg7xuc2fidtgstdwid.onion:8333
+damegzcogdp5lvypiy5p5fo6lfom5s4fvuwa2wjlm2cmsnhhpcadtyqd.onion:8333
+db5atsyx3n63dyc5upujumsp2b5jihafxpw4tp4k4pnlmbahilicaeyd.onion:8333
+dgezrh3kfcngsvufx5lrp6nodcshy2fs3w4ltalwt2etr4qvvylvrkyd.onion:8333
+dhipk4h5xsan2jjjfci2pljnyy3ip34tmuzyt2rh7zlmezzdcqesxnyd.onion:8333
+dje3novlozm5ceky6npbt7qjnf4emui6f4ygwfhhy57ddkasvy73bqid.onion:8333
+dni2rjvqe53gpmdr3ykhnsuiscjy655j6ir55uegdgiogkwz7cdgqcad.onion:8333
+dnyvygq2dmvevz6ajcf3asd3d5cqmpevo44qyt3km57nysyt75rpwlyd.onion:8333
+dqaeyhf5v4472dygabraclznfhtyytwy4hdvrjqarwij7qu375sidoad.onion:8333
+dujcffazdttews7bernuv7weox3asklnwuzqsdoyzqxy3logfupzwayd.onion:8333
+dv4dtz5zu3te3g2ccrz3nrgcfzozqesgmgtb5aozhkgonqwg3dicgtid.onion:8333
+dvzwybrkcynzfjg4jpckt5kungd4nsqbwylshblesuwzflvocm4rgbyd.onion:8333
+dxkkytqbvl4hhwh5i6u77rx2rkicau6dyygt6xewgy3apbolw6w4mlqd.onion:8333
+dzhhqpetvyq5g6xhgy7gkuwey23dso6sc7jb5irlcfs7cbfaec3gqlid.onion:8333
+e26a4bpxijuh4nmeqm5g6d2ir6h2cwyw7i7nroxy7s4yo2eog4vvd3id.onion:8333
+e4hdaommmm4y6q62g5jvh6mtcot3vhqj42wmopm32bu3etrdo5vbsoad.onion:8333
+e5mzbzdvpngxjkbfq76hdpfti3wirwqezugqaksprdctb3p3unw36oqd.onion:8333
+eaqxyujymqzwamyf5qtbbnvstu4sg3bv5umpkzxjbsaxamzfu6xbi5ad.onion:8333
+ecx4pf7gwdpllaf3sz6nseb42ojgp3cto5xo5j6vn7afu4spccub5mad.onion:8333
+ed4imq444il5pp5gks3yimgh3j7v3vh7qydzyzksvv222ebudoyvfsqd.onion:8333
+eheqmoscz2jqa63b47255pkknl655xkjbgwhpeuiryfrj6hkf4vureqd.onion:8333
+eiywuxh2hwhk2qalfvqtfvj4ljuez3o2d4deqmowabci4o3evmgjpjyd.onion:8333
+ejgeelmm62ygi6ruynkzt5trh7ys2csgvkxzct4qptlwqcdnpqiu7yyd.onion:8333
+ejrykyejku5dlmuz6on2pi7ysjg6c5puuownbytwmq7mvw6xyqbze6ad.onion:8333
+enc4qxoyoap5ndr7duevmjhv2zcpor3c347523yafo6ct4tzj457baad.onion:8333
+et2jf6nekem3x53tyzcheqo7ar73wg4by3ucvzyjfliul7357cei5uad.onion:8333
+eta57alktm4zhvh3avor2j5hbhdaelb3r7jy2hipraffsyp6bzo6ahyd.onion:8333
+etcabymwunkkvnx4fwghc47qf2qf4ix3jtzfhp4gohyhcdibg6sbeuyd.onion:8333
+etj2w3zby7hfaldy34dsuttvjtimywhvqjitk3w75ufprsqe47vr6vyd.onion:8333
+fbuvbm4kekb3wze6xocibjkxnkyj257ot6d52342bzvvs4uzk2ykljid.onion:8333
+fig7txolf3throetkrs2zbhev46rq2qd75zr7pdnmewgngmcseu4udad.onion:8333
+flgedyhmormdyrxqtayz65kpmgw4bmgpr6steg4r7hjixnjowdanf3id.onion:8333
+fliooz7kq6lj6es45jg32n66jq6myliqbnzg2iyusun5dt5tyxg7tmid.onion:8333
+fwykc7ow6i4o2m7vygmgfdkevyqvw2gspdf6lxrfhdemalb34dbkjtid.onion:8333
+g3rzugt4b4rv2yq266jeaykvbv76nnqi6735nghovcsnvyqwmfoqsdqd.onion:8333
+g4ojra3inm4l25p7zl263vz2lz2qufwtjwlehwzffi3vfruef2kfg2qd.onion:8333
+g5bsayc3x23fkkssptmllu2qn4kg7jkpcl4fx5edjbecojymiukikead.onion:8333
+g5r2uda6whsgs65yf7v7yoqmqokbkqiwvgwjigej64yskk3skleticad.onion:8333
+g5uuvidgkvdf2cmoekggzbifzbojh7dn75e75y7v2ig5jflkykm7niyd.onion:8333
+g7wnozndrisbuu664xzbwwzuui7b5xkuzfew3xmfmld5yw6ypswtpgqd.onion:8333
+gf6vyqezos2s52kxwz3itpma5wnb63ol7qg3kuwxg537sejtu5jnmnid.onion:8333
+gfoqfn4vlnzk4ocrwegqrgmzmfriwrzgnx7jdpinqkybidtyt7kehqid.onion:8333
+gkgud3alqw7vqywtawsssovmvkhslqr4xenrmrg6om6iljub5o2fh6ad.onion:8333
+gkvgggf5guqcygywlenme5ml7dgtkpjmbtemsblwdex6jv5kvpct6dad.onion:8333
+glp5z36juz4zfh7touj5tbchprcfbdptdhci7shyyimd6bbjlcijjeqd.onion:8333
+gotjkzjvun4p3etaf33p26vlwtmlceytyynsbgiknb4tra3snl2wigid.onion:8333
+gptcyzjkqzt56r4a43ergixiljheby53t5xtb7dcqx6hfkpt5f62stqd.onion:8333
+gpzwpzigfrhkyhc3l5sllo24duxa6ousnk5or44jsrtdj24dstol6syd.onion:8333
+gqcqsp6ktamk2wad7sy2quysxivgu3gjxitx7krpwgsh37csllx4xoid.onion:8333
+grkruzba44rm5m4gkyejjn35wxblxos4ba2vsi7ddzjub43ydnrjhqqd.onion:8333
+gx3hsyxf2jznihgprtkagqjnpwcp4hl4k5kde55go2vtfczh2t2zcmid.onion:8333
+gzte3h7x5qjzdbyibrprffzf2mzmhmkhzymq7zs4ksgwstdxtdpzeuqd.onion:8333
+h7kfqg6lf7v5dywswdzka2eepdyiqira6mamj6l7razuxejlspopleqd.onion:8333
+h7rors5zihhghcytr6lh7wgmioaht2bubslski4o3nas4lnqwq4i5byd.onion:8333
+hagkd2gq3v6a42lralbpmhpcjjlgfq6ledege3abfpwvj5ln7ydyciqd.onion:8333
+hakum7yuy4qpjzu7czyl5j2nnli5mw3fx2fxjcwfjs3gr5vkglrgs4qd.onion:8333
+hckgp7as2kephoosoqe42v2ibt5o3kgjeyrgcbipilxnuhqrhxmlg2id.onion:8333
+hg6syx4oyvrcraxytqymj2blngpwji5rhfbjnglo7tvzfpmc5sobdjid.onion:8333
+hh5d6gja23hlwmtrpmwbd7zn266zro43hzxjpwa23p4xnq64wibazsad.onion:8333
+hibgbt66hb4tvmhkmyzwlxirdmpkg2aa46xznnswwsuy3w4foitwedqd.onion:8333
+hl2fornwqseckgkkqpx2r2r22nstdg45amytkfkffcgnlgyayyodtyid.onion:8333
+hl5z56lx7zyq5zwqy7htw6w7skbb3lgrj3dglj46dynsygncs73meuad.onion:8333
+hlinnnjusoqzc5taurrf7oe2k3m33re66clnbpmme5ild3cebctbukad.onion:8333
+hlsihfuyafpoxchsrhlh4wdkda77iv4wmpnz2sgofonswq4kn6ns4pid.onion:8333
+hmnvzj67qtygqbe4uultm6gzhpwg7bd5auww4piraenmbqp54plzyqad.onion:8333
+hpieksjfcnba4js2rcuf3dl3igt2njsm54ztf4iux7jhrr4zmgqltdqd.onion:8333
+hqvdx6ny4p6lruba7wlaaycndmenzygc3nnjwjd7lhfnnkuznriyb5ad.onion:8333
+hrmvwr7x5vdhpfeuo46a2ry3grmt2mul7a7rhjpaaq6einsmrunuvpyd.onion:8333
+hsjtdnlt676ufkgas6ozkrwcjrag26awhkm7xejov4nu776lk2lb3oid.onion:8333
+hvl5d5gesz7vq6uyktalim3ypwqfdytrhg2nlqx34yq2u65hgvb4iiid.onion:8333
+hvp5reyglzzbyzfetg2wibpz3sk3dgpii44bpqgzulk3i753kqj2veid.onion:8333
+hymhpwqwoi4atw2pj2kqlkzpzyy4pegj7e5titydrlenpg7sh3oi34qd.onion:8333
+hyygg2luyb554u5dstu3yxj3akkooayzdu2iwx36y2d3wiyrawffznid.onion:8333
+hzhmvmupvgcawbcs5yqeejti2il5x66rwtlf6aplrwhx2begwfhpesid.onion:8333
+i2e44r55u4obbtvjq7p5edhrnhwvo6xxudhq4qkx6dxupcdkvon56xad.onion:8333
+i44vl2trbapr54ocbr5zaqhctuabklnugsoofmxpw2to4gr5e2tr6qid.onion:8333
+i5auigbdj6fwx4c7r6wxa4iuwkjozapzety2ndm7yn7qdxq6frmgkwyd.onion:8333
+i7wicebmued4xlwqejvoexi5uhw3ttzxkjwyqldonk2bccpd3p46q7id.onion:8333
+i7z3b4cwoswz7sknczkdnwmhbkn7yk5uvxjwtrtezner5t4mbi2rs7qd.onion:8333
+ibeldkbgecvvapqmltodznun3hocnt2u6lpocmtwfklp76xp6edwb7qd.onion:8333
+icyzujf4jopznrgpsagmfucv47wwb45tsruwdjuepp7hha2hy2hy24id.onion:8333
+id4pu6h47tfnmpmhurq5womypqmxw5ri4jxbp2pqt56zq4litdbxxjqd.onion:8333
+id7ca4f4yb5yrf5itoqczqp2bsyinqjkwuo5mvzx6245ef3nmj2wodid.onion:8333
+iehll6sixysyqtfripbtc6ob5zaa2rqlnlthuxkygmamo2hj3fm3rlqd.onion:8333
+ifdlnn2cxerjvc4egepebsv5gnkgqtovwutfja37osq2g24gows65uyd.onion:8333
+igns5t6crnyqxlos7lnvhcpltiocus4ox4lbw475ugl7yctzj3yz54yd.onion:8333
+iioiaikirvhrwoixgql4tbnkamb47yamsrzih7npit7bumnc7be2j7id.onion:8333
+ijj7n53gnbmieojkeq6ptz2ffxtauguqqsluuy2rrjoi2najk3yjlqid.onion:8333
+iltm5bpnfaoqgwbzfyzo22vqhgpfqjtkd7xw6cpzjtrmanaetgxgwlqd.onion:8333
+itt3znksrv5dbodyvshvmltsnw4ihzdlfcepgbcr3pzrjxm6dpzvvpyd.onion:8333
+iuvdsszxh6ec52vfz4w2wsaswy2nhvptvoqp42ti4kuv22mryhza36id.onion:8333
+j2xonbopjepbjnuhq7su4hpwbcykx7sqrml5n2n7lvqahyx7s4bhkhad.onion:8333
+j3t6pxfjlbklt6vvsrxapk2ctwxsqwkxhvon7i4c4y2m3u4ibzh7wqyd.onion:8333
+j3tdqjirxly4fdw2nuearkjinmmwq6wup3uq2xnkixy4xvspz7jhqdyd.onion:8333
+j67ve57vc5dn5xcorufb5kg7yxyzub27sgzasn2vwhpysvrcfkfehvyd.onion:8333
+j6h4k4lymw3zmtin5n7vm2vp6bnjr42vlk2kgv7dbuoagpzih3dlppid.onion:8333
+jagbaxijmydmaxjv2tq23ybmtqdqiydm2qabkdnuscohsm5moowja7id.onion:8333
+jclj32gvup4rk3kq7gh5yhdyze7b2isfegxafbtxg4k2czs2kzvo4mqd.onion:8333
+jeqj462sr274gnhng7d5jpveuuj5b7gcp6hsm7skum3gio5abhcv45id.onion:8333
+jguxnkcfn4r4pgyoj7cvisyfwqaqpkd7o2wdqztsfl6sh4bcc63ngqyd.onion:8333
+jhztcjkmp23adfz4dimyuyzjkkfbno3nfgeq4ndp44amcnfxrc7vgoyd.onion:8333
+jj6fehlqile22m4flh4ujcn2f475ckm5zsfnu6f4qyfbgr75pquf2ryd.onion:8333
+jli6qkv745s4wxfob6ruxua262mghtj7cu7qghdfo6wygryk6qi425ad.onion:8333
+jlkvkyalczcidry6eq4jxywv6sz3cb46a6ynqvl4fia6ah5vtzhtocad.onion:8333
+jmahatsxjgfg3iz7hkel5lkf73k2switbletcahhajzhrtndj2w7a7qd.onion:8333
+jnetopradsod3332aswwycxwtwdk24bo5gqv34dk3hzx3crfclougfqd.onion:8333
+jow6ete5u5cs2z3ntgbgygqssirexaoet5c4hsu3t42n3uvtcct4q3yd.onion:8333
+jtdbt54n6tccbwpbvqay3n3pfnrmu4kagqztghfal626wimuu6ynfpqd.onion:8333
+jxkgl7uxgyk7fy7bd6hjlkycc6dbtqiypvatm4r3y4eldj7asqhcgpqd.onion:8333
+jxlhkqbtkumhra652u2b65nbminvpqvzj57z7ihwnd7xbqr7oocbjzad.onion:8333
+k4tlmd5ifhbxw7j3g2eeqqmfudae3j2iwj7ytxgv4aq56zmiwxnp4tid.onion:8333
+k5ukx467c6kgf7svvohlecnde7veu7z3tpk7ow46ryo2f25xgdzczqqd.onion:8333
+k6bsyqwkmd5umwsa4okocd5qqkdine76ennwd66jlzip64hfindn6ead.onion:8333
+kamatyg2sqhbcgxnlbih3vg2prwtk4yqhnbefkl6cdmrhhbug3hhu4qd.onion:8333
+kcy4qzf3zznqsejy4w7tfhx6vdryk4u3wcodb377hjxzcolbfnycq3ad.onion:8333
+kjnokdj37cimgseydldmehyquvgo5d6uqce7plauwtdpwzpmfkgrizyd.onion:8333
+ko7igyyk4dr6ofshs75mbhiwgim6eppyspda755y6exlqdkymnw2qsyd.onion:8333
+kovsmudoognktyjhucswkm2poshl7vsilpsbptxugz72a27hokopu2ad.onion:8333
+kqsnps2opo3eajaucdys7ofss63p3oirdesiqvaqdiqmzj6ctfitwayd.onion:8333
+kr5gulo3vhxqk22pctlbpcukl2bplmuegl5dwigc6oti2zqapmu2ddyd.onion:8333
+kymtxayvuvaddtahyx3kpxntaki3gmlmlexukgxw7ib2qtwuqbat66qd.onion:8333
+l2uhir4t3mq6cj2ldyxziydskyh7k2nx5oxhq223bryenvygs6iwlgqd.onion:8333
+l4djzf7rkj2nkkfget3p2r2sh466uddwqpb7knndb7bqlawf3bovjhyd.onion:8333
+lacfexi6mowtpmfrnddvthsczivqa4nyvv6ng23htkn4sfxfqsbp5vqd.onion:8333
+lb45zexgtnb72v752s5l2t56eiq4duhqvrzk6irsvpp4h6xxgoc5e7qd.onion:8333
+le4k76j3ysbyy3ithq3oyhhaesch7mbwfqqfcze6z7txjdymznpo7gad.onion:8333
+lgilelzyhm5em7gnmqm46b6u3g2iam2dxbc3ywktlbq6gpibphy7ayqd.onion:8333
+lh3myis4neyqoz6er6av4cwffoy5hdgirmvnz4ywy5mvi2gggv2tl4qd.onion:8333
+lizmefe3njrrelmdzynyhhtye2jiffh42x277xysq7zqbevcfkyphcad.onion:8333
+lj2ur7xjnwl4qeijrcj2644khjlzczc6wipfcshevuynvlbgfcullzyd.onion:8333
+lkhigyl7ky7zvgj3aiitbnlsqxt2zhk4nygs3mi2fokrbp2saw2jghqd.onion:8333
+llxd4aegg4bf42kbrdsgt43azlazu2k4ssgzgwtgdajv3pwxtdtyg4ad.onion:8333
+lrjqlddfglvcw4ahzcosg7mqtzy6bahymqxc6k33qqzk65z4jy2uhuqd.onion:8333
+lrysypmxkxxhgay74gkgucnfg7ppupfxgio4v3dpzbhoeyyzygwbztqd.onion:8333
+lvwcux6i5qekbpz6njlt7ghk6v5dvl3f3arc4tprbkuxmtk4jo34mvad.onion:8333
+lw3fr3synjzzqptoonwftim7wpbhpie2yf7pyj67vdnouz2ovbdyl7id.onion:8333
+lws7kt2jgjy3kurxxzqxww6r7mrc4grjmkekhgcpfw4tbgcn4kts2zyd.onion:8333
+lxrasz7dvra6e7tnulyw5wvh6h6oien4arihaohjeak4bslx5oihorad.onion:8333
+lykf5rgcaocbyfmxhhcq2aqi7e2jv5rixmmxisyrfubb7phaujimhgyd.onion:8333
+lypt4weazmqrm7y44ohdc3ey23n3xeei6yerofknbg7e2flfkakabzad.onion:8333
+m2lpxaib55uttwv57g4mjfjrr7dqt7cdw4aq7s4pg3zxyywuorr74zad.onion:8333
+m3haeigwafocrug6fi3dczpaxmowwg3dspdbnt5fla4qa3hvsnhifmad.onion:8333
+m7zjjsdog4qeo75x5j2sqi7eet3kepiqr7uciiknwnxetpzksojpeqyd.onion:8333
+mdum4stqqbjs4ups45rqghxpxee2qwhkqb4kizyyzpa2jqryxtmj4eid.onion:8333
+mfla23r3bodslvrduvethu4ituej5k56vldpp7m5pu5bfykvq2oquvad.onion:8333
+mh6okc4axtxpna2vsv6madexepg2rhyeiqnqrfw2pktgyjbmnn76ivyd.onion:8333
+mhqf4lnddyujweijl2hlvyqfeehn2whtnlaxdj7m4rkjxffvzzis4oid.onion:8333
+mkchot4yopdk3buttae2chruenu23xg5srd3r7gb52gkg4eznpavv5yd.onion:8333
+mortxv4zzlyupri7vhvmi2cd4uyhletlj2uth4sy4rxtm26m47dyzxqd.onion:8333
+mpbsa7gm3tpp5nasl453ggh4l5tsc5y5ky3ppmlgf2cgbtzs3dbceuid.onion:8333
+mrvayqa6w654g2p6kgsr5lrshn4bahmac2o26s6yetvmxqwllo7fwfad.onion:8333
+mthicrguvyzgyfxfn6tmdswnmldpvxwcib25xg3ghdna5qttod5huuid.onion:8333
+mvjotqstesnrivtjtmtpl2qurvkyf3gsfgftmjm2upkyodxkwhmrnpad.onion:8333
+mweq6yuerljpnvwlkvnh7duofgd4q7yjtbls7g3muz747pdnddt4cnad.onion:8333
+mxv3rijxa4g2mgafhwyax7lcfyrhhila5g4rnm46cwemileo7okfnpyd.onion:8333
+n2buii4clktnynlfp3ccmuxsgwvngugzhpgbggjmrxv7yqi7gejhgaid.onion:8333
+n3jzmnv7pss45lrbrc57tsy3gznnr6asyosdkdlprilc6queug6e4bid.onion:8333
+n5zxq26im25j4qgymyohaa5i5tcpihxfpfwkwfook5tivipoa24yy5ad.onion:8333
+n6465c2af6s2fzz25ljpv7xjvbj2gthqail7ns6wd6v6tgkkofgedmad.onion:8333
+n65mfok2vfir64opzuxqqpmxnhubcvpyite4kxhf3grs76hzbjyaxjqd.onion:8333
+n6wythsibolbz6hdv3kdxbo3bdhf5wtefgd4tksb224zk577mxytnaid.onion:8333
+ncolh5aclnjsjtthsmn7qscvwx2mf6jq2z75cx4snbeqt7mpbjzmcoad.onion:8333
+ndme2euw6yve7bj5ya3awkhvaznb3gauaidw5ov6qmf4kqghsa2wvmqd.onion:8333
+ngupd4e7h6eldd6tn3a7yvarujoomtvj27dcfwgz6umcta52bygjguqd.onion:8333
+nhondlor7mswosksexpy22qvrmd2gmskxohdzt3szv73zvkmlw53nzid.onion:8333
+nhqdw4pprxgvxxqxtid3frx5t73tcmmdk5sax7a43c5vd6nqw6fxpxad.onion:8333
+ni4u52jpbfjs7vkwndlornh3u5ezfl7e6i4vjccpoczmx4wqxee4wxad.onion:8333
+ni7gpz5a3nkn6gxo4xgcsset6ws37ju75e2z5c6azmavcvs5wxrbzyad.onion:8333
+nir3jv7w3hleurdz7yfwr3f4bmyw7ce7u3rnlf6z7tbxoi76jwnelnad.onion:8333
+njeci67qcye45cl5pp4wptml7gk7wlqqjnez6ob7ps74wkpfdjhsmuid.onion:8333
+nklnhb6lpiwtpxjxkdfthnckpcashewdubutl563mvph2xjdbaxkctqd.onion:8333
+nlsk62k2xyvermr7b7f7cwtxdrgk4npnewmr3omk7uaggoshcdz5tyyd.onion:8333
+noeuviuxcwwlkplsncm3pfu5qtx7b3kncfxe5tfq4v7iv362skor6oid.onion:8333
+nq2fwdqt3qf3fkfhlnrlnscmrucnirsunsezr3kfsc7jrj4nbzsephid.onion:8333
+ns5p2fa3afrainrynk4dzjfbsvknw6jao5sgsvvv2esaw5b43cieenid.onion:8333
+nwmjxig6azspof2ahmvaekxeb6kywdbvf3d5rxldyormrmvh2rfz4pid.onion:8333
+nzrp7w2xr7chajnwiv72oea6kd4pvle5mbqqhnvhkh4egnpytynosjqd.onion:8333
+o7rmuyo6u6gnvnqy5lmxvvqmb3d7i7txrdrt2ns4vjrostcvbdrwpvad.onion:8333
+oe2ipczaggoszamekva5an5idscmbwflde6yqymyyvexxyrwzxylceyd.onion:8333
+offbdtz3vbdyvjfddp47o4vkocl5bjcc7lhoxast74raakgd37j2gtid.onion:8333
+ogiz2gvxv3gjr3tn2os2y3pscvq37fbgkrfjg4c5q7x6mmeg52duoaad.onion:8333
+ognns2u5bdmwu66oktrluycronq4jsqxqs7dqnzzjoskobfpgz6nqcad.onion:8333
+ohcp4dgbobbe3y327wxys6gdolluhezxvbojhw5ixhbuun2rmzofxfyd.onion:8333
+ohf5ytsaptvjfmrgtgesypb3osa6z27mj55rnlxsmrisxrbnx6v3czqd.onion:8333
+ok2owqkjhsslywvo7pytpcjf6443tdvgs5sh5vzvpqoakfmo44a5bpad.onion:8333
+olp6o4vhznaftlmnlhibjxpoyaopdurzsiqvchh55kh3ceqiaiwm2yyd.onion:8333
+onlybestsir3tjebxjh2h52q2q4xgt2rpx3z56adzjzyo6rk6jo3rtid.onion:8333
+osfazvr657jukhdyj7rostfg57lzy6c7gvaxbh7ul3jakppktisckbyd.onion:8333
+otlq5dpuoexvu2ufu23z2rnx3vbetoi3kytxlatmh7loukwolrhn25id.onion:8333
+owvvw6jozvhzsgg5bwcukzvnpfsowaw4pmz3btzetqtwtdt5nbiqunyd.onion:8333
+ox36ix2aclqlilqnr5j6xj3erdenrby754a2r44vw5xlibqlwbemacad.onion:8333
+oxfqjol6335es6zabisfhjljaykd7si3sni4nkjwong5duzw7tw6jjqd.onion:8333
+ozynvhwue5n7kqkivx7y6o2jqe6atusrutpu5c4u2duydzywewjgheyd.onion:8333
+p3chmg2yfray3kuhdoe7nh4zkxmq2opp3zu7rznb7v3gyqaryrxfgmid.onion:8333
+p3x6cqcik3hwdhevmqnwruhsidgdsqvxwbcmylaoup472rpcorptv6id.onion:8333
+p6cdmihgjpyu5ds5sbpfwjscf2w5ltyqgtwobeud74e4rxamtdlhoyad.onion:8333
+pcxlvkgabsowmrx54b5bgqglershgfchr6xavrhbfngridplzhf2pwqd.onion:8333
+pev4gqbesjnma22gnhgcp64hjdentn7cf2zuwmclfe4w5vdhujb5dkad.onion:8333
+pfqr7kal3efztxigrbrdb5qvhozpzxqqawt5dymbloicbre2mp7fvuyd.onion:8333
+pk5wtrhot5qa4fjcsd433u6j6vm7nws2kif6xwby7antjhz3jh3ab5ad.onion:8333
+pnimgn35ybiyje377slm5wi7a4mekzrfjioqboolj7fhoa6bitpl7yid.onion:8333
+ppujyg4f66wpy2rwtdiu3dosq563mv5hcimmaoaeyn5riau4kq45akyd.onion:8333
+ppvvdgnhirjtdrleg3nytysjd75gjsksd3s4bpqwv74qrobzl5arxiid.onion:8333
+prwpkeljx7embshafpgq4qrfkanvlqfgwzwmhzfsdrv3xvsw3b463qyd.onion:8333
+pw2oq7uvf3xg2cg4444ouq6aqrkmf2taqw5oiznghebiquhxvywsnkid.onion:8333
+pyuqmbjilfbju55vbaqxhcggvs2rmwsgg5im2gcbwsmnbvkride5iuyd.onion:8333
+pzltogfefm4zdsj7mtxdq5cp7rw4o7nizyoteta5zdbj7oy72rk4hnqd.onion:8333
+q4waeljubnwct7u4olw4wr7ptuduuprzw4dtvxaioxyhjhudpp5h5dad.onion:8333
+q5iracp7tn57fkhhcewahux4vofnzkqmfjldtoasq6h45vxv526evrqd.onion:8333
+qannow2dbksedv7wgi4j5gpgpf2qfgajjzlenmc7vmrfy7xku25pz6qd.onion:8333
+qdi5bvzkmysxe2a7u3nwytwqqrboujxg7dsmukukff2mjhcqsjm6qvad.onion:8333
+qhar6p3u6oyepbngfbxcsxdyzk7nmmxw7xnyk4sjiutjmnx7zvnsd7qd.onion:8333
+qi37t7cbq2bkfofqvmimodblq2qmo4jmn7nuiv5eyhtxrbj23l3feuqd.onion:8333
+qilhe2eagh2wj4itojf4x7muoakf3tb7n4rvb5tx5cihqhr6hkgx2vyd.onion:8333
+qnmxlslrhoqosnuf2v45rsifgwnsdj4e7zwkvloi6tubvkndg7akadad.onion:8333
+qox2gvzjm2bhzzl736kvhkqo5dnrzadruyfzalczh2x4g3fu52o5ksyd.onion:8333
+qumhzryq2oghxbrusaltdo466x7spsq6hgdevmdzqihqopceqksdqjqd.onion:8333
+qvfefulvat26zdnkot5xykjdm7nsoubmlrg3xrtwzqms5ns3ug2ovbyd.onion:8333
+qvfhewhezgbiepbc7bu7olsmoboint3pkry67wumhshyqosnpbthyjid.onion:8333
+qxgwkwwmul3lxfdgetsvvleeiz2bdhiq5h4523rq7xf6c2cfxxczodyd.onion:8333
+qz26vwgeqexbzepivswq7bycpujdnhtd43prsm427rfu6e3avwgxcnqd.onion:8333
+r2vq7zrtapss4dx2fbx7fm3xyg7gwdgq6mr32fcf6uovi3ft6fdigwqd.onion:8333
+r4nmrs2ewv2bfs6z4z7a6ypcey6ndmyweuw5puktnlpcesl3e25pauqd.onion:8333
+r7zbw2sx5sd3gkkop2po2fd53y6xsz7lncpwzcgyv66gtsrq7yaj4cqd.onion:8333
+rc352vcqyom5dp2k6jqqwfwbe6e27jwazk3itojqxrzuccrjcqr4azqd.onion:8333
+rc37l6as2mzvu6rssgpusy23uhtdzerd5cd3noaevtiktv5ndhjzazyd.onion:8333
+rcav4e6uz77o3o6q6rxexsiqnlvv7tfzsc3so2wcw4wqrsipo76c5myd.onion:8333
+rduriat5h4skczq7yeuy7cv2ecqrysz3bblfuo5z7u4p37ga7vabszad.onion:8333
+rekpfdhbguudic6ws5scnpieixjz6yi2heg7jeh3lj3yk2cxm27hplid.onion:8333
+rep3zta43guqsxuaem54jkjy6yrgsipxix3qhhvnt2kiek7fohjalpid.onion:8333
+rf6v6ew7gj3btll2hhbrfvzfbqk3arve5iwd3yjmcymmxyweiz6dlhad.onion:8333
+rgfftmtoaiyrub35duua4yovzjkfumuwukfgtagyk73yoqselezaioid.onion:8333
+rjsvlw34hal764kqvs2me6adx5ucwf4e5u77ilq5azql2vbetcieypid.onion:8333
+rn7qxkbh4puk66rnbxhhx3f6ntfc6vjzl5anknzichwpgq3ulz6knfqd.onion:8333
+ro2liqfgbjpybc65auyprcmhwffi6wi7kcmdicdzv3y6ueurky47sbad.onion:8333
+rq4mvn4xvntnmw7somr2biuswtik35vxogneb2rwq6spou5fy3n4oyqd.onion:8333
+rq5alkdxudjedsloei5u5x374eastaqoxwd4p5sdj3ewse54rgkkuzid.onion:8333
+rrxjpptqxvyxeq6q7ei7e6q6p4bqh75vtholcte3s45lg2hrwoqujaqd.onion:8333
+rvpwevsgpdipz2ewgmujeflni3hl7fbxl4lkltjcxjszfrczdxy65tyd.onion:8333
+rxejubww67egcw6speu4jvn3uh4h5dcrokd3bedoxa2qb4w2w27gn4ad.onion:8333
+s2h2gdkz5mk4qrfcgiecocbkkoapshuzsf5mxn5cl67ptzgtrqv4vzyd.onion:8333
+s3kcvocfgvhflaz4ook3zxyhqlt3kcz5zwnesxu3qu22xmkmxkairrad.onion:8333
+s4sazpnes67rqgxklf5l6qrgzizayuymqd2cehr5z3dnwqj2tonkn3qd.onion:8333
+s4t6eoru6b4xs7uyj4p7bhqob373a2suht7ggbeacevilwj752lqhoqd.onion:8333
+s7uoggkmsvuhff4k2r5jntcci5jwrwnjggb2k2zwg3s4em7xh5itncid.onion:8333
+sajwhnvra2pyb3s63pinuglaliun76wcxxhzfua5j57iyn3x7wc336qd.onion:8333
+sayaua65hiacjjwvxxkjwnpd6ecjwow2tv6k7iup3v3sreqa5cq2wxyd.onion:8333
+sm4me5bhu2wy6bu4w53e2wffkialasbh6fnjivf32bqjhjnjlb6ys7qd.onion:8333
+spzwladgktg6tqb4muptylfudoqaxszgz4holksftryymnmtoq652rad.onion:8333
+srmcvqymewfeynldgohku4pr6wrxotudfy34lfrjsooet2tvsrudfvad.onion:8333
+st6ctsi5uzvobfqq7raqc2wbzk7tpnegsvledwopmbegyfxhpk2feeyd.onion:8333
+suwdv5bah5udmttir35xmyws26aghffy6od4ejosxfh5l7ggqeb7evad.onion:8333
+svo4wrmgp6mwc64jlcz3moaxhhczwbd4yuwmrik4ssbasbslp65ma3yd.onion:8333
+sywwdc7yn42qohpqukbhdnxn2ptmv6434lu5fxieuoqq37cvq7tmyyqd.onion:8333
+szd2nyb5v3wwshb6jqdkafz4kuouvudq3zn3m3vc367radxdi6dhnbid.onion:8333
+t35zxzi6bmtq22mwdmygyjophnvt7wevvrxcmnc2p6g4ojpwhtop5yqd.onion:8333
+tcorvsyyhizume456jxit4mwxq2tgqkk222snmrz4piezalej5vojhad.onion:8333
+tet4eei5uiltcdd3t6gwieu5hrfmf22jek5xpnzrusekjhjztar7p4qd.onion:8333
+tggbmakxzrd7jmoft5knvkgrq5vgqg5iar4dfhbqj43ehvimxbvdmrqd.onion:8333
+thtzju4iz5vytcj5k32gixt3zagqsauyk3gvqcwxymcbf2uh2dnovjid.onion:8333
+thxoas6jir5jmkroiziwmiecvrktuadr6l3e5kiphx7e6awh5ijn7iid.onion:8333
+tiglomyomrtwigmox4lazdv5bfqcucsq2xjimitls7vv2c7ldofbttad.onion:8333
+tkxx2fvz4dwim3ksq64jbc4ezotdn7tmahpcgguvdnprdxjgm27haqqd.onion:8333
+tpjlymsdalyawl6qyw4ktcaj46mnb5slzgilo6moiwhk6yhssjuvzeid.onion:8333
+txaahqhk65mnxzdnboq6hw7b7gqnjvt4aspqo2iku53lk57vkd7giuid.onion:8333
+tzxfkfejmzl634qqybcp6cfkw74hzry6fb372bsy6lc37semeqgknsqd.onion:8333
+u243bnf3p54ule4un5kdszc3n5dcvpj4oofdgbu5zqkwqrckejsf5mad.onion:8333
+u2njpxmuzsteyympxqz5zpm7a2r3cbnwpc7unfgk5q2y3ltwy4kdrpid.onion:8333
+u3edrtzedv5tmzizamlj6n4kmpfrn4ekvxfjpzauxoy4jps3orzftiyd.onion:8333
+u3qhxwdbmjks2hbfouqcvoewbfadjotcgfnl656ahb33imy4ana4zgqd.onion:8333
+u4cdrgrbmdnxzwcrfcejbcpkoc3ugueoul52bircs6hfejlgfpksi7id.onion:8333
+uctbvktn6rprd5ra3bzlmx2nlgor3mnel2ju66iejykftlroflysdnad.onion:8333
+uegjypkyta55u2h5psaqlucpo3sm3hrumsyg4y7q24kxw3lxtkkwnvid.onion:8333
+ugkq3kl6unjm5vf7t3l4cenjs73ciasqqurdqmyc4zi5jtb57x2g2iad.onion:8333
+ui4i2ltehfchk3fkn6fssar4qo33v7qye3teozkmyghjvgqbwb2fwfqd.onion:8333
+un7aswzx4gjeym2jg4n65hp3nmgfvh54phkip7qjpudeajmdkdhqlpqd.onion:8333
+usk6s3ykfzq2mow7cmx65zyaqfckdjczkk6amm3oeqcsrily6vwsppad.onion:8333
+uslkjewqh5yaqptrf3ldmgijwunx2xzypaatyysokfsbhfknqor3load.onion:8333
+ust72z3wsgefcjkfybb2bbhyup2zcdidzdxzs4amtly7ubv2ljglkrad.onion:8333
+uzxiqhes6ksfbml5x744tv5bpktjehoed67l3fbeeof3xqyxq4pvx5yd.onion:8333
+v327cnzsw7fheim63ge2o54votgzaryprve4usxzqavozecwcunyhuad.onion:8333
+vabgp4i7lum6kckx6tnbb5gbnc2svd3ffeob3dcorvroqcxme3ppsuid.onion:8333
+vakmqacvrkv3vfooq6s7se3q6rtytuv5pk7oho56r6b4qhl4mqfp52yd.onion:8333
+vcoc7ldllc6ygydkiae6mopxfhunedgcpjbhs63mkm6v7trivd4ivxad.onion:8333
+vczxwtjlkilethuw7yrqfncd5lkfz6jfseklxcq3b4yyeg6xlvlpv3ad.onion:8333
+vegl6cmizlodquwawwn2gjtfxloap2hnqhc4ypw4mqzt7qlhklocfdyd.onion:8333
+vfabvpb5s3cbr7lfcnim5c6jpvls53p5f4vnzelbu75xgumg5quwd4yd.onion:8333
+vfr3vp3ifrsya5uzfwr6kopolohglhr4aso5htmo7js5eyno3fr5eqid.onion:8333
+vgsa2r2loouede4gr7dvfdlsq52rvbpddiltz6r5rwpjqwpdmzmtzmqd.onion:8333
+vm6siv5jl5whb22qqrxe65cnut3utcmgao7tajknfdmt4qbksduyz7id.onion:8333
+vmobjbqi4cos26uh4pntgielxzsm6sw34zhqlivjaegznplqjls3olqd.onion:8333
+vmyzflrxe53lrzjfi6cnsf57i4dovnitypjhyovkh5t6t7ln3l6dbgad.onion:8333
+vo673kizhvk62wxdsiu6cf5rgmapktxx2l7ztxvzfsndu6spb5ujkcyd.onion:8333
+vokml5p54goq73fudpo2rzrq2fgxeknoaj64b64lqc4hvqohelsjavqd.onion:8333
+vqx2th7tt6ngg3nucixdzlvw45b7na4j5srkwcqlgo4vixv5ki5rzmad.onion:8333
+vthdpsloo4bvdqlgymhz7rqfofw63jv2ieueqaw6inxrt5och7djl5yd.onion:8333
+vujnfef63nhvm3fdyf2fwkrgwdbgx4mov5lfpsswnpimbhyv2qy2g3ad.onion:8333
+vvjpadfmgwock3qhk6mdyzricilgsbgazkgvwt75nfyhxil5wogwnbyd.onion:8333
+vxysqr5f3wmcnnlkct3j7lppjinyy7vminf7qe2ttwpsfxrxtjbtc4qd.onion:8333
+vzleatncxglazfyw6f6keqi3276f2hewgisopidxh2mx3uxu4iflw2id.onion:8333
+w2qvjxn2eljr5g2s6n4pnyq27jwyydtesfdj2zl6ksz3caqoqmi4zjid.onion:8333
+w3bk6j5k53fmx4yf47ii6lja6vstgk265ixuyrglhpil54circo6oryd.onion:8333
+w4pcxveq6mssnk7egg6durw7ndznt7cd7pfn5q3f6usq5qgmx4tnr7ad.onion:8333
+w7uxnbpo7n5ekrljtn7ayhrmrbjqedf7zixpyljsrw2bh67fvbf4rdad.onion:8333
+wajgqp2kx32h2web3qdbsa4ruin4z3plxcg7xdtfe75uosgmw3pfvfid.onion:8333
+wbp2wqy3q4uzzpis26f7hveaokvbf5jnk3z42sjbv6uauwq6oy3fh3qd.onion:8333
+wdsyieovtttjog2hddbc4noq3xdiytis7nhul5ks2rie4plefe3x4fid.onion:8333
+wfufce72bnkhae75iyndpbihzr76xc6nlehhzihrnmqdqy2xmru4fpyd.onion:8333
+wh3cdsnjylvrrhbnis73fyrsy53fyfkajhbf7dlobjccjp5j5ev6ykqd.onion:8333
+wh5iploisetyxiqzutfd5ka2xfpnfsszthwecwommysip3jcba37vfyd.onion:8333
+wnhrfj3jvpfowqa4yf4m35haci2jxgxq2tugjrih7t2k7izj3672jwqd.onion:8333
+wockkiso5afh47gppalqlyrqddpjafgtq5sysupkdiwwsqn6hgqytlyd.onion:8333
+wrhikxkpwssh2jn3cmicrgzpiwagvx3wfvrbrojara3neblwa2hklvqd.onion:8333
+ws52h2nbknubs5hwrlkad7trtrpu3a5kqqjtiig7eulwkg7775vytryd.onion:8333
+wtdzgw46xbydiu7c4x5ojyvc4z6upmytuaghey7k6nhpaantmmwcynad.onion:8333
+wxnqkadi7mrhabjt722ltvj3o5zumdljeawekf7gk5slcqc2fdbazbid.onion:8333
+x2my6gggeyq2kddxr2bad32x6luabusxwdbac5juqp4zwzjqxyosg5yd.onion:8333
+x2n7skbsacubrzsnvdj5zstr6sjsgzvn66pd2tkmzbdzz7z5phm5hxid.onion:8333
+x3scsk6x5fos6hnoil52m3weehh3feefqwjv7tqrfjerosoqdvdkfiid.onion:8333
+x4mwiwksj5pel672lgdmsxctltnealbzda34cd2ur6xnmh4o3hgmt5id.onion:8333
+xbqby56ecqhzqw5e25aqj6jd7b3t7bkxo7khvh37jggjehspyh7btnid.onion:8333
+xbxhtvgzy4ikywim7zleucubsnl7efqowdoqukfjg4mkzs4sr6vphoqd.onion:8333
+ximsnnqifspqkrvkdebsrxmggzlu64hsxjp3qw55uosflvbgp5kz2qyd.onion:8333
+xl3sljm3pnulbj7nrzppkc4fnwtxetmpy24rzluqxr4uyp3auntlupid.onion:8333
+xmr5epdwuvylwsevzq32owihkxkwaiyghrb4mjusfob7daamjmyiload.onion:8333
+xn4crbhjyycbj2pa3quv6333i2xpmscbzshmssbhuchc74d6uphblxad.onion:8333
+xpdst6l2cblapbr4ubi2vbvn2hbrr5m4sjl5d7irpzb5ylzo22kkbayd.onion:8333
+xrd4o7bs7272pbhqttqzzudfpdzjvzopcbtdkxexejeubhtigitftvid.onion:8333
+xt5pt2gn2qnprz5vvdbet4p4wgf3ejbq77guay5fzjlxgn7dmnzqooid.onion:8333
+xti4kdl4ojss45oio5harzghee7zr2whzo5gn47f74rgh4h3vlq244yd.onion:8333
+xz463kgdshepjf7gtnsxibjaomtbuksh2wc447xgawmrl4bbfbzg4dyd.onion:8333
+ybji2ssvc4je4cqzbad2pczrhancohnyy66ogsbpg3d6bspvh6au7iqd.onion:8333
yfgo33tiu6w3nrvnfyw2nmpcwtfozinctn57566y5l4hfcttuvgff7id.onion:8333
-yfmujam6pa75vm7p5q7gvgkocqzcwm7lgbnodwtmzfw7usy5dvlgqyqd.onion:8333
-yfpqwz4qogg2r5sdweggggz76pmhxtegnisz55urw3egvcq2e3amvkid.onion:8333
-yfpucmv4zspytubs5epnze4xc4joqny52s7ifjk3vu644axwkfyfurad.onion:8333
-yfq3sexjxzuww7tnwc7jj2ethiu5f5r65ewpy66os3ozhoeje7na4hyd.onion:8333
yftuiua74fspnqanvait246qn6vmab4aoympjd3omppu46jkq777axid.onion:8333
-yfxz53gdbxu5hapg3e5kaa5pyxpbrpiql6j7sfe4i7fqj4blpqpufzyd.onion:8333
-yg5xbesziuiaigwyxjrn5c5hvj6fxef45edl7pir7risnr6un6esjtid.onion:8333
-yg75fc53cicbsarrpfv2s4crpkx6vdjub4va7cvbducwzhsf6qehx5id.onion:8333
-ygczn2llqhks3ohxvfck4ks45ekg4xr3loriyynnejw2jfmi7hjsfead.onion:8333
-ygdfwrg33s3qwiarwxbejalkirmqui3wjz7wfccprjry6bm5la65vhad.onion:8333
-ygh4hx4ugapidwxodkjr6vgl6vkaqvievk2eiie7v3ewuvjvg2mzp5id.onion:8333
-yglvvnb3dk2vh2wwgpcnvm6t4lgbdhnvpy4jfj3ee4ugb4xzvjrrcfqd.onion:8333
-ygospbn7dc5a6haqur4eoe2oj6jttjohs43rhl5m22ltruh4fz5isxyd.onion:8333
-ygowwz67kvvri2lcwknsc5xjdz7ffat5tqkm7fmxrrzfgvqnxoxkvgid.onion:8333
-ygwuwz5autfc4tqluyuoebghc7f6lgjykm6oprynh3h2vfp4xmhiapqd.onion:8333
-yh4edjvpbo55vsankh7e33u77ep7eah5h5gvfgu7t7mbb7kkmjvgirqd.onion:8333
-yh4uoyfzey53dnoj6zm3frihhgwpqfqkw36sjmqsvfnl3rqohs52wqid.onion:8333
-yh5us7dk25ttxkt6miers3bazlm3jiums5nwz6mzd4i6kn5oizjccuqd.onion:8333
-yhddybpp6lgu34i7uurdqg5jznfdajwr7co3twiqf7pgnj4yjgzbnpqd.onion:8333
-yhiswltkrs3upvkrygsuiou5i2njnyxk3gwtsmcr5yn4lfinzifbpkid.onion:8333
-yhjkylctf577degc7ufffvg3gsdxgnx64pdhzfujxjgfhbulmtc7yaad.onion:8333
-yhnzb5pmcbeiqs6bxm3xvzdy2dgblteiswvvtg6vhkum5gjjw7abjzqd.onion:8333
-yhqytulgwdtvozjhuyod2cufnkbh75mgyw43k6w63ah2fzulskfssyid.onion:8333
-yhtxfuf5zxqoqkuodfpmzsnnmtm354y5rtexqplt5l3fkzzksjkkzvyd.onion:8333
-yhvyxjfauptpsjrxrf3oxtv5zlju2gdpitwsabcmj5gdpjr6i4z4ulyd.onion:8333
-yhxcgpy2bwwhhpmgellyghjpkw7cfrjlq6trq2yl3632rxerwbmkvfyd.onion:8333
-yi2k4otmwujg7bi5iw7ewqntnxb26jyplx5xyk7bjvvaut2y2mhcgqid.onion:8333
-yi32omh7hh54oeot4i2ze2tif4l4cwdhzxxn4bzmtqrotfxrepttfead.onion:8333
-yi4gxqy63csutkea3zss2oryz4get22hcfginwcejy65g35ec5t4uzad.onion:8333
-yi4nvghovjd5bzcbhitvezh4uwg32n6r23et633odlacu4eamfym5mad.onion:8333
-yi5x6isngj7pivr5wt6i3drntlqsvbzijpdy254lbjdnihxmfy2cdgad.onion:8333
-yi6umkklbb6vr4j75buoss7kqkgcsdsx5fvgi57h7j5bzuleoe3ae4qd.onion:8333
-yibgffpo7dimyvjlbzfr3dnmnl2r5hbrpxbtcpksthsko6udsrk5uzqd.onion:8333
-yiiyiuwns45zhmkwi3wjumqhnyfkwkahbggd6hrxtnrxfqwn2vdx7pid.onion:8333
-yijdxmlgnfcwrb5zxvchjhgtc5357mecuopminujkono7bwjgqu4acyd.onion:8333
-yise75jksg27th74bxo3a6rcr3huvromhmuhnmy3n3ngcgfpagq445id.onion:8333
-yised7sf3xzsnlggeuioas2of4crrllkpz2gfbdy7c5cysa5sxi23lad.onion:8333
-yisvuvmqtn7wht6dndrqzsdl7vuspxwrmfwwu5o7wldnzn4mbzeb4yad.onion:8333
-yitceyo3wv2mk56omv6mon3n7dcfr7jiggdmzlmtikpoam2otiey64yd.onion:8333
-yiuesqqc73nn7kxadavmlwc7ymciszzk7bxs3bd4fwucaocme6qb7lyd.onion:8333
-yiz7d2lkgk2mftp6i5e2tqhotqkqjgxbdmzbnflwvsioyfydqrvll6qd.onion:8333
yj3gs4nvumsfztawn7ku4cmner2zlmcn5kke33g4j2vywxsrqmbd7kyd.onion:8333
-yj3q4iustxfcq4bisbuw3jvqc7ph2ggld56mvyxqvgw2tmsinbwlnzyd.onion:8333
-yj666fxjddvz4xzkhtzhh53wvkiobvildczzxb3mixjipqqiqaz3bzid.onion:8333
-yjdhdurh6vqxuykgmuskpabjzjni3ehxxh3zq5redu5hqdmhdw5b5jyd.onion:8333
-yjkojvjsg6yhfj2ln2bpcrh2e6fr42ul3yzsebbz2kkytg7pf2zzjzid.onion:8333
-yjudzsswyvfqyeth2eghfvegxg6z6ubnx72kmqjljhdewrckw56lggyd.onion:8333
-yk2foofoifxgbrp5a45okwbelrsvycgqgw24xv56hmuqxlpmw6msndad.onion:8333
-yk4sercvyzvqxgbgn7srm6eeivlzoa3t4sz363aygcyciubcieihhxqd.onion:8333
ykh3t44zjojpj76ouqeo662ljhyc2t6e3mike76iqpelcdztgaxuw5id.onion:8333
-ykkhln6x6hcmhyrx5rxaf3c5auh5k4plrpaisits63r33ecwkmtexhqd.onion:8333
-ykqehwl47hwypuhhuuxkpoexocldvllixqhplpsy6ym65vbjfa3yfbid.onion:8333
-yku2clwr3x3ndzfjdk3o4spoztoqy6ndatken5wopgapg7qkvypuqoid.onion:8333
-ykwrwuffwvaxlwivt3hlhyz2yo5xde7dw4x67ygc4xh2t6m4i5cftkid.onion:8333
-yl2preaby2yqyhmviyq46roapupmnijt2g3mzmvwtxptvybz7rbs32ad.onion:8333
-yl2stshaozpyqtut7m6ln47z2qhledknuwhij6kvxsuaai4nwy6fp7qd.onion:8333
-yl37nyh3vujz2fyrz3eoqoteixyiz3dj5rfnnmrglcgcswzbeqbjhiid.onion:8333
-yl3bo5zwwsg5dbhrrcjkvoyvwwxp3kbdgprhe6md52ob2lra7ynrbwid.onion:8333
-ylaoywooejvpfosewxmyxjhc2ahfepjbvuyjc4p7bymwirexlkdituid.onion:8333
ylaprgwti4dsumx5xvlhul3esf3yi3ebyyubb2dwfgwe3zysv3e6nyad.onion:8333
-ylblnrd2jnfjtustl6yt6pix4mgqr5qqoevunmwk32e6fxq6uj3dchqd.onion:8333
-yldtx7o5y5jf2utrrtqf5yf56akol55wars2uwxuvjoubustrtmuqxid.onion:8333
-ylh3vliup6k27pt2thw4xgfguiziaosb5y3ovee4w6dzwcb6hc6czwqd.onion:8333
-ylsvnjqrcgatkzj5gfkwt6cz236z76yvgpeulggzml3xb7tnbsttjnad.onion:8333
-yluwecwlibf5dw2sup64dq4gs4cfdhtkfhoy5cszrvu75wljeqanr7ad.onion:8333
-ylyuglp5b2p65gmiofhe2irpxswlhecdecg7d27qhcwehegr2efmesyd.onion:8333
-ymgyodvztfs4nnijjnwiv6eadetxjm765iv3ryuyhsq4upnjwncpvsqd.onion:8333
-ymiw3d4klephwuwbkgdpllrs6hssb4svcg2um7sdm3hsnnksbnvj2vqd.onion:8333
-ymnypd7xmz2fka2r4yxvq2ibf7rvdyl6eemppo74rfehu2d2oqkclcqd.onion:8333
-ympp5jlakwfhj2bozw6w33qailkrqbroizxm3pdfxvjdbrkwtyx5iiqd.onion:8333
-ymrunm2vhoarw7rpo6jdmq4mev5hz63umljki65q2v327vmnw6wjyvad.onion:8333
ymt2hdfgdxo2awvj2k4y5tbpvapj75j7v34tvvlrqy44lsvvdcnjx3qd.onion:8333
-ymuufa5br75liswfrb6pgm3hc6o67gnzhyg7vpfo2qsw3oyw7m7nsaqd.onion:8333
-ymxea74sswjyqvv7jsh74dnvimcsq4rnao5x5g7dfjnbfy67oj37l7id.onion:8333
-yn3avowdk5cox7qz34s3qiz2u5j2xg3irxckhzikfjv5ccjqrdiramid.onion:8333
-yna4zorq57ehghewlega7lb4zgx3t4lgv5k24orv7b4qcg27svymosid.onion:8333
-ync7fc7dz24s32kp6opdkbvohb74obme4jgo3rkkvjzywslxegist2id.onion:8333
-ynilvzuulga2tlv2hcic7ayc5qpd4nz7r7snsyejp4vxwnxlonf4gvid.onion:8333
-ynkv7njh6hj5xewxxy3gvtnu6ocyvu4tgrl3gnw5xxkdpfshalppqmyd.onion:8333
-ynqgzojvdwv2rui2rlechb22e5hwqipltusdnfkv7s65iz6fgrnybnyd.onion:8333
-yo4ykt7hngppavow7f2sz36ajl6w34bw6qrcfee6i3s6jkm6seove7ad.onion:8333
-yoat2b46hzeuhy7n57gjmfxgppei3xnzdxwsl2ipc5ny656j7zp6ovqd.onion:8333
-yobra7r3ketjuhr4g4cfdqumsez4om2eefvmgxrxq7wxnkouzmcemwid.onion:8333
-yogfxdco264tjbbeek22o26lznu2g2kwvs4lmft3ib3xelndagtf3uqd.onion:8333
-yomwxfciljad63gicbd5757og4lypcph5f5mqdou5kj5rowkyotaohid.onion:8333
-yon5gz4q7soici4i7jf2zaciusioym56jo2bat363tr3peoiurransqd.onion:8333
-yoobb72dyt62n5dpsu3aqpqa3lmfj6gfurno46o6vmqdbpwqw32ahjad.onion:8333
-yotcqynj24k2ckilo54hjhftjuvvwiacbzoraqc2kq5vtmsxloswddad.onion:8333
-yp3juo763dmi7ryhkv3kq2l262cllrru6ks5tlzcdlxdakmip3zosuyd.onion:8333
-yp47gud6fjsvjgu54oica4b3ij4zfreactcaon6fx7v7pfbxbrvqhtyd.onion:8333
-yp6klgnrvisq73qg4dk255h7un2k7pbk666jtzc22rxjs2en64ojauqd.onion:8333
-ypaazf2z3t5dqzudlygjjpyb2uvk63guovstzubsohbbeomometn7cad.onion:8333
-ypakyst4bbhh2juqd6r7xymqnrgwx3eajekpg6o5b4fazccy3mwovdqd.onion:8333
-ypkjkt4dnyqy6svecydigttwnsj5x643w6edk6qzhfo2hkxxu4ln6zad.onion:8333
-ypmikts3saaffj2uo5zmkbac5m7xnbblxkbhpw5xtxbamajqf36wgdad.onion:8333
-ypninar2hybv3jdovr7ax7teq6wpzvrw6n74csq7edos3hzumh2h27qd.onion:8333
-ypoinzgql3zo5d3strpmannbkdtndxkxlajwgcpaj4ngbc5mqrzzgpid.onion:8333
-ypp73pv2vcjfq23ltwhojuremxxfknwtgkxsvwe3widlaevyx34pepqd.onion:8333
-yq7s6pe7jzrzj5uxlorytwxd5bs4kljyvp27akdrpang765yd3sexwqd.onion:8333
-yqnal4phy7wz3lsoi23rziyb56bnbzvvypy2mg5ponzrk63qpyvle3qd.onion:8333
-yqoiqt3molj4ygq44zyme5gdbgee7catlf4ndjr4myiicduuwiev3fad.onion:8333
-yqvhbmvc45iy3drl7nceuhugdt2fevwx4x53zafio6h2626kflwtrcqd.onion:8333
-yrambbqlzkm6o5pkc5q563njvrkfallqobvscvpdik5owbdtnhbc5jad.onion:8333
-yrdtnt4lkpysyyrvryqhxw3k427gxwziosdtipf2dcifougwzomdfcqd.onion:8333
-yrlc4r3qfcr4x5wnciutrdvasrpahor3ui25lgdgkxbit3zwtmwfmxad.onion:8333
-yrmpasdjmb77ono4c6rjh24fj5gt7bbjx7nxurytkmxbww2gam6vodyd.onion:8333
-yrqolwaoxpa32cw2zegnaggmniuer66umflznja6dcp7udqpaoanqwqd.onion:8333
-yrwksigpx4foqlwnf6cxwtppx2z2msompig73dkcm34pwsmy5bwwg6yd.onion:8333
-yrybhm2es4siupjnyjffviemvqx24mqj5niwm2wf56spdqlwau44r4id.onion:8333
-yrzwl3rbfjx7eybyjvnjz2y7qmvpnkexkmylqpwsb7ivpg6ch42mmxyd.onion:8333
-ys2muyvcnpdadettzavleh7qrn7t6r7e2tobfp7yxftta7ez2i6rdxad.onion:8333
-yshp2g6b53ndeez34nxnk4bz6cqbzlfxqdggi7btqlwzxzuc7sweqcad.onion:8333
-ysq5rtpfzkz5gt2s62idbsd7secz3jepzlup6hqf5ttdutsdmwg2ryqd.onion:8333
-ysyx5eagwnqpfemz2nhwcxs2c3eueqk5f3jnyvyfqfno3pflcqfw6yqd.onion:8333
-yt2vub6llcegxuucu3iekjqfpmbyz4kreuxx4su2pqcetw7kbkbipzid.onion:8333
-yta7q7v5lkzt4zyp3m44cxcdtymxgmuqdntnagz6h3hwidmqoeavifid.onion:8333
+yqrnkmnwp23adyswjvnvw7uyss7vtbfcickq6ug7i35dafmgfjd3bnyd.onion:8333
+yse66djcdrlmjvxlyibyye3s7r5hv474iteas3tplq2p2famsxkczzid.onion:8333
+ytbeafalpctlsx2s2qphnawkabtu2jb3nvarkwv57bqdmxgmhe2jx3qd.onion:8333
yti2ofsqg7k4zbln6aqx4zqaor2zpmlsebyljxlu7jczsjqtd4ctd5yd.onion:8333
-ytkkqeik77zjjwabsdlctuum37jr3r2rg6ckxudza7y7tialqr2wfeqd.onion:8333
-ytq4uowr6vwyjmrjvac7aimjjlzylfmhqhn3z4ecenm5dd6u2ccsijyd.onion:8333
-ytqhsolk7pqur5cu2faxruehvx72yiiwb33p4szdnzidjqksanps3nyd.onion:8333
-ytqzrm7fke3kqgh5b62taq7yyejgtd3yxwaifj2pimoqbfq4p7xi7sid.onion:8333
-ytrhvysmp4iq2qumdrpgp54q3ushkf53b6i4oxpddg4rmlk7hbayusqd.onion:8333
-ytyn2e3bkmgavrygpk5rzydfdmhpkercccqcaks3xtnbgq5qsyg4euyd.onion:8333
-ytz6ov6l5ofhjudlfi5k26lsg4v36p7xwciafy2sdau4cn6ozxgmefyd.onion:8333
-ytznm6jwapg5h3firimqb7ao2g7uihakg3gt6hcpfqkkgcyemklfufid.onion:8333
+ytm5ihwofux4ktxhtxa45shbjaelybzmnb7uqillpx2iym5tkbnzfkad.onion:8333
yu6ilgxjfffdb3fq7srwwmz6ymp3fxberstpl6vdocmxbrrf5e3tw2qd.onion:8333
-yu7c5kjgmlci4arofpgq5d2qs5fvbw3zac52nampn2vc6vximc6qovqd.onion:8333
-yufe3o5x7spybs5tku64r6hzbrc46uq6izky6z3dyvba2ymblvehyiid.onion:8333
-yuhebtpb6urpsrr3g3vk7tcl5lp5dt7kcaj7zpgox5r4x6ptysxzvgqd.onion:8333
-yuqoihr4p76t2yupxuciurcpzsij5i32enjlsynqor25fhdvidx3djid.onion:8333
yux32z6r5leyhbdrgdpti4sggxyoy336qb73ia6sk5egfli5qsvkxvyd.onion:8333
-yv2ezeqqfeoprti36q4fds3ckq43vdv7vktqfpn2npv6isnbxay47hid.onion:8333
-yv7ainbyxz6wejjhpjgzx6ghcomdwd3k7fclru4woooxcovyjwrp7dqd.onion:8333
-yv7llcydwvi2m4xpnulhgxcrje6vswtsasu5bbmgxuk3lgln37tdvbyd.onion:8333
-yvgzvmh4ngi36zvn7pe3bocsxj6pccafh7v6wmswkdobbxdzh3b56iyd.onion:8333
-yvhvl5bvjp5ljmooujmw74wdyqnhvwlm44766wwgq5thnzctyni6yeyd.onion:8333
-yvnppv3n3hwexlvugfviwv33ycavxdwnh24dps5vp3y7kw6kze36v3qd.onion:8333
-yvsokw66m7kqqqjxb4mntjvwhnpoovoec6rrpqtdze6fdvpbtvt4iyqd.onion:8333
-yvud2f6wb6puec4xq3a6yruax25jydqepowhz65uvlbvblsyi64skoid.onion:8333
-yvvodwqb3szlgkx4egcyq7qmhpyoqxdyxdnksxl6ppnmagnsu4noemqd.onion:8333
-yw7tqaujnglpjmjak5r7sxvjg4gqeubwetm5h54e7fbfn7yx7kgr4kyd.onion:8333
-ywbprsiodgtlc2qoubvot5qm22logutr2dbizmlond4dcifklaxqlcad.onion:8333
-ywkxlaydopi6ygjeggtv5znptkrldzsh7peg6wabkjmcu4k3hmbjivid.onion:8333
-ywmh5zcx3r2rd7zmkyx5kymgxk43lsamie52kbhayqwqyod5togs6aqd.onion:8333
-ywq6oxdfdvlict3cuasd3akvcl47iw6bxykrvkalemrcyqzyzclbf6id.onion:8333
-ywqkdkihpzr3hx6la2lzqsguoqbuwkn36qcrbkhvltd62zdrguprljad.onion:8333
-ywqp3kjwchkto24so4nn4ofq5m5c454btnkux5jxftkkqz66ducu3mad.onion:8333
-ywqygs72qzxbkjekezlhsnrsfnnvm66igkovfoh267ru7ho3qtxtalqd.onion:8333
-ywvpyur4ny6zhfxpsva4mh6cd4htw4q7ylx7tissnxehwg2bid5fumyd.onion:8333
-yx3nnyxy3h4ex22uqdjwephoprte34jelnkpr4ua3d23ks7qxjrqzoqd.onion:8333
-yxa2iu56fp4i4mxzdkmv7xxrluyxtkylqvexuceivx4fqxbjyzme76id.onion:8333
-yxgvp66ll3c6ko7w4hm7xvzofd3cb3ku3jjqc4wihapnyk3wxijafrid.onion:8333
-yxlaxiaatyfnrx3l2vhb4p6d347djzux75gcl2d33aydlwspo5w5wpad.onion:8333
-yxlwpmsjdbpldhi5hlzopision3iqbjzpvyaaeb4yst3z73qbgqy5fad.onion:8333
-yxnuslj7hslwmofh36a37stlm5jjnq46vvvyntf42uw3zuouot3sjaid.onion:8333
-yxq3bjwdrck3lflvwixj2fc2l7pzqnea5l7cucviamoc63a2xozk7iad.onion:8333
-yxreb5ajudnpt3b7z5hyizaj6ufgd46o334wtduuyaakboxwztgji2id.onion:8333
-yy3bnszld2tbbyd45f2j7btrbdz2p5zsuzie27liqr7xgkfh37rcojqd.onion:8333
-yy7rusheh2cq2xghpsdzlrx4gpejgfvsfhq6333d2jttcovhh5jo44ad.onion:8333
-yygxdcvyp6tn46umpmxlsgsi6crg2xjchuhi3okobofsx4dqgwucnnad.onion:8333
-yyo5s4r6wr6p7l5p5umlp7xgb47ugeptugscv4gvpsxvjlwymfpwruyd.onion:8333
-yyr2peqznujer3t63yyhlcasjndbhllvtxxkmcvr7p4yxpuzjrcylcid.onion:8333
-yywmc2hhk7t56e7jun62oidqft6jvtvvlylexihzgcrtkzxe5axsd7id.onion:8333
-yz3izxf6pdtr3ucbriuo4bpgjn2visad4vgocktexnpv3rfgar3kydid.onion:8333
-yz4l7aqcjf3lcdtdcuxoxljedrcrlo3lu6kths2bvjeoil4wqx3d46id.onion:8333
-yz5i6sldywr2mqzh5qmwoqfgsta5f67bgdhqogejjmpengl3llafdjyd.onion:8333
-yzakgornrhzzenpclo4ahyai5lxsg6mjq4zrwlhqt3ff4sblxi42jwad.onion:8333
-yzbka2sygb5eqgrgk2svqin5hl3dfknzfdn6wzwncexsejmrp5wgm4id.onion:8333
-yzh2ineefkzohck7vkwcfe62kvplsly5xn4dmm25fpxbjq2va34bu5id.onion:8333
-yzigosfexpco67cy3e32xehlpwor37fp52my5pwtr2xsnj3mxl7gfoid.onion:8333
-yzijb7pu6mrrdwb7sku2e3epfyrkhl7t2a723vaisqulr3roaxoy4xid.onion:8333
-yzlai35raddd2kdjnukns7u5t4m4ngi5dfrlq72e6lqf2hp5dzkuszqd.onion:8333
yzo2vz4kuitm53zwynkm7ddfdw5escsp5fp7rgf6uspphe653mvdekqd.onion:8333
-yzqfzw7fgzzs63xpvsgznhnassxcadbfaxxaxbmkffvesgdxizhxkyyd.onion:8333
-yzrw7ukful7rhvlletmabm37wupkhsxwo2esqqotsoh6gxib57ss3tyd.onion:8333
-yzs2bdhwhxfgaozpcic4v66w7wwlxrr3v4xpgzer733qehcwewijipqd.onion:8333
-z23pfizxwpae2sbje722iesvd6rcxntazcaoefabzsudkc4xxmtbqoqd.onion:8333
z2eky4p4ozlkrrmuq2jqcz6w2k22re6hxrm3um4ypcnmzmpsi4p6l2id.onion:8333
-z2eo4uckd3ymgtsjitag7yqukmjsjpwuf3d3npq4oskeatpkcinxkcad.onion:8333
-z2gnzha7ttijmle75dvqdzaeqz3xyxzjrrqbzribvwbomh74je4xeiad.onion:8333
-z2ihxne7lyodwglkwpvdmz3a6343msirrvjmaf2pytuo3jysabrkiiqd.onion:8333
-z2lhlshxak5owviqqzacj73ioftqmvq5idawmrgt4k347bwr6yubmqad.onion:8333
-z2njilhjl33youet5rbdfmncadpt7tohtconls3qhpvuqfkreoteqfyd.onion:8333
-z2nocd4haqt257cyr6festid7enoe72qpmu27cuvveoon4rcak4femad.onion:8333
-z2yjvxbv3rfpso4cjkxc4i72f55xb5fihthcdbvh6dp7ghxz2q2tabyd.onion:8333
-z33gr6fni32nkhfmkovcbvpuk7s2atoqfbuzdgz2jszh5ua7zdu6uvad.onion:8333
-z36427rantiy4ikleyihwfwh2ga3pyqqz7doezrzkyv52bi3mpcgt2yd.onion:8333
-z3asgzuzdvhrrejqjnkg5qfeynspuwzzrl3sr7seqxlwkiemnrpsrzyd.onion:8333
-z3hdtpvmnaz2izvnlopzmfgdb2synsomzgy62h7vlxvsn3yqhgufqjyd.onion:8333
-z3hgdhj7zxtih2gkjlnex6occtzw3tpd6f5eobwrntrhxtiww6ke43qd.onion:8333
-z3jl2izfxwfmqnbbrac3tustn4bngymj2tia2sn7nuyconbmjskedtyd.onion:8333
-z3m3a6wii62jc37c2fw7huca7mu4eywnssindvhn3hrh3t4y4kwj7dyd.onion:8333
-z3od23fobhkvypxarneq3fqsdsksjt3hmujnlaiwb65hdwa2n5xdjiyd.onion:8333
-z42np5zjd3thnd54h5n45ibynz5vb3flbgypt4me2c3bnvntn4rsgryd.onion:8333
-z4d7f4dvqutzvvqkmj35znzpyorroqg53jhbft34gyk2h34wzorv2rqd.onion:8333
z4gvqymmj5jmg3dnao7k3vc245pzepqcrevzyh4s5xn5fcc6ape22sqd.onion:8333
-z4mmpbj7md2ljj2nzbk5b6stdromp2sxhysdexiq6kjqp2go2yfhlwyd.onion:8333
-z4pyvdupcieuqtzvhh47sbiahdyegvpgtwgfmlvfsrm4yj6g5mt6cgad.onion:8333
-z4qgvajgk3tr6aomi7zkpiilx5xb6tvavupvw42sgjf3bfqrgwk4tjyd.onion:8333
-z4rgrsudz3wjx7uykg2kmcadwixklibr5b4k5nulwrpxcjkasu6gnjqd.onion:8333
-z4s6g5bqdmo445vu2i6tcm54zjypfhl5uwnxqjq764bbu5h37gkp5gqd.onion:8333
-z4zr3v232rayjy7e4wuxxez2blz6p6apyv4souxjztqnv3mvaytb4nid.onion:8333
-z52bx6657mva3yjtrutjhxojkbwmrmndk3r3nptxc5xqz3nd62frfoqd.onion:8333
-z5ecnh7crpgo54nfll6qbwl4ybvfbq3izazsdu3pp6zqkam47nuux5ad.onion:8333
-z5v63i7lvhkfdqcex3ioeny62glxhptowtrfof54qbl545mlchkul5qd.onion:8333
-z62kddfut74o5njyehkdlj4caa6yg5orz5lznaccpbloqq2siiwbtayd.onion:8333
-z62r52qegmgv4otygobjdsubc6jffaei23he6n553akc4wnf5ryur4ad.onion:8333
-z63d77gd7artekfeamkqycni7tzrkvbc54fqr733veuoaqx45jwmytyd.onion:8333
-z63fpitzdw3ot62wtxtindh5334uatz2flxg6ronyy6jwx2ztjs4meqd.onion:8333
-z642d45aauehr2ycmv4ewv6zkwjlvlhwf5wlueuy5ynpu4qmffc7utyd.onion:8333
-z65lbxuvo5x36vuv5rgwgyoplqjzzciwvb2whvo3tlghzhp6zij6grad.onion:8333
-z6gr5c5yrp5seqsw73b2pkn3i4aqd5idmzgidjchjjm7f2hdgfkl4fad.onion:8333
-z6n3h75u5kkd5xkqfwbqasd2rekxams3jinrrqaj7p33qdxq7fdlmdqd.onion:8333
-z6n5kkyabl2huqtcp332n6xbo7kpilcw4b64govztw3swtzulgtxcjyd.onion:8333
-z6nq6lkmjoyjhqp5j3tg2gcjq4e3hgduo74unmtmnybd7a777hp4asad.onion:8333
-z6nuvxnjicev3v47o4vxjwakfz6g3jvyo3l4rds5qqfjptqie5re27qd.onion:8333
-z6okjxmclwc55pbwioqx5wyua7rjobcmbttpte525tlt2gexjcjtr4qd.onion:8333
-z6qmf32mld7uqjmx6hroqnkieerstp3vle3u3do6odxig3ubmv557qid.onion:8333
-z6s6t6bi4llpuod6rnakc344wn3h6ejpfejxrkjohjjy246shwfd34yd.onion:8333
+z6d7llz7maqgnooab4b6sogf7eszagl7higrvks2eykwogifwh3g6gid.onion:8333
z6soa5spkni5ze6p2xg6lnehu3d7hnqn5ddiy34jtedwegf4syqnnaad.onion:8333
-z6t6fxwhgndvi36vra6d5duaryx2m75v6a5yoz3cqjlj53ko4wm7fhyd.onion:8333
-z6tmafvqwf2sd4rchnafg4urcug4xpkylwls2owruyifaduaeneyqkqd.onion:8333
-z6u4s3uz6bxke3tyibyccbg7uaxt4cb4dued3cu3pbjw6frqc5nil5yd.onion:8333
-z72rd3arkarr6eehucg7rrkjmvqnzdbjmppfk7zcvzd7jqrvisf7rpyd.onion:8333
-z745wkcll7vkkrx7zamibvbyqjtcp3y7wdz5kd33gijxfz54cxzg3mad.onion:8333
-z7eb2xkiigjdfay4ch4pubeqxb2jwyzdb5fo5owkbteyhefek76qoqyd.onion:8333
z7f7lrvup632wkbzinvbkyyrhmguaf4fzt6zleiynk2vuvwdwt6ysnqd.onion:8333
-z7g3tx3nucmd5ozvs7wgq4i2riiufxlutv2usowr3p4lixfbx54fc3yd.onion:8333
-z7g4iekn3i7nliiowlt3ek7o6xlhi5tv2hofycacjqkpeoijghmiyxqd.onion:8333
-z7j2lcfj5b3isqznsb44ivi66lwmidcfspmvdrmhbfuyub2h3wbmnkid.onion:8333
-z7jbbwkyza6e37iqos6u7ln3nedom5i3dcnowdscr7wfj2xygre47aqd.onion:8333
z7jtpaghm4na5po5p27fwbdh2aq3z4rkpwhhzemlrhsoefru2z5eyvyd.onion:8333
-z7m7rmzhol6swqnk6l4sadrjgxwnggt5zwgp2jx6tadca74o5puyuyid.onion:8333
-z7mcuih5vw5qob6o5qg27jhozuczpqx5lmzl2ghfxra53tov2h5xtmqd.onion:8333
-z7rxmrmvtsbgrrwwh4k37bpkk6dtu3aq7f5d442ys75nepy6r2q2xaad.onion:8333
-z7u326iowflnv6tvy6uiwwkusx4vat5gdaxwamcp6jd2we35ih6zplqd.onion:8333
-za6k2u2t22ohdrpqbirjhl75eadxcjvnqfkl4bzeygbnliqsc45gplyd.onion:8333
-zabx7shizdfchrfthsjcuyypqy473ni23ebi4aedow4bg5c4tl4cxbqd.onion:8333
-zac6qhbqbb5yo4rvcsmbilp33odkzfwrftwma4yo5hor4brj4d3ksiad.onion:8333
-zad5dkykkoelu5tdj7l7mr24pdf6eos4o7cbs5nvx6bcg5443eqwaiid.onion:8333
-zafdafmd2h6ue2pmuj25chhmkqad3jdcxwtaess2opxkrroopwdqfvyd.onion:8333
-zagkhagdzvkgpuo5znflvxcqxal5tweg3vsaoaonsvsl7r7orhlwshqd.onion:8333
-zahrvinucuxpxu56h6nkiiw7cvutxrua65l4jynvwkzt2bzmeuvdpuqd.onion:8333
-zalrhwuj5j47tntffl77xrdehzfwq7c7duhaq4jwnq5vdtdtajwiucad.onion:8333
-zaw7gnlyeqrlpgcmsp3e63anveudschhifaaezu3web3z6pjjdtvviqd.onion:8333
-zayfuym6j35mxprdsm2x7pvws2vyaoinsomdbgrqbe22rcc77j7jtnqd.onion:8333
-zb226sk3eljxccaswfgouu6mitu43sf2dan4feygrqnlvrot6z65oxad.onion:8333
-zb2qixzmsethowd6fqnwikvp3yeeeo3zvhgjmq2yb27tfslscgkp2zid.onion:8333
-zb62u4o5qzst7rzjaq6tafgzoybi2ncogcjp3sf7zbto7b2xmicwvyad.onion:8333
-zbci2c2pkku7hwg64ek4z4cbyn6o5bnzpzyriqwjckzgs34xmu62szid.onion:8333
-zbmhiorqlldelgniyhwogswpvrlcdjqxxcfm6vulenrpwiadvv37anad.onion:8333
-zbnovu66ikceaodzrkpwww4vop6iwvtebbeznngo2mtjkikwknqzgrid.onion:8333
-zbwbqxytihkvupc5zhezoh7oibfb7bopfcw6y4qbhh2kugnsw6zur4qd.onion:8333
-zbwpgu4z2lfuto566v6duz2qw5kkyvor37rpihk244bfjzqiuohdcyid.onion:8333
-zc2c56k7hcdux5wrlpixrx6lfutylfamr676tu2nr5z2vf5gwoyzrnid.onion:8333
-zc4l45jx3txlag7hduov4su5kl633sykaw7guioejg5pq2qyuescabqd.onion:8333
-zcc4wsaenndkzqdp4xsfzn6ilsdhwzpqiswumdc22dv5ejejec3o7qyd.onion:8333
+zbj3cbl6t7oj2f6neql7bhpqlmimp6if5pbzmczji7l3uzyhpjcdeaqd.onion:8333
zcdv7z3vetrpeo7souyie7u3vyy6w43cuautaogldhs4n2fitytsihyd.onion:8333
-zcezifa7mmgv4voul4jf4wbqmr24djgrskwszktkt5hihywblltpahid.onion:8333
-zcif26i4yzp53k3uedswyrqkdmsmkflpmclmasdo6hat57pqjpm2omqd.onion:8333
-zcnl5vojc5aufydmssv4yxeotzeqpvyoxyae4kmoskty77j4dx4aykqd.onion:8333
-zctnwv5ln3yktcyqsbgie3qcee33x44b5quhjdq4zwjprl75r3snduid.onion:8333
-zcugrsfyxb3y5ucbdndifvt5ilp47a2233sv42ryf2cvzoncrgo2mrid.onion:8333
zcw6xk4bfnl46fx3mkrmlnknbwnpssxsp7hlllj34fdrkutzts6yepyd.onion:8333
-zcyumipuaiotm5fhffmhit3ajzrgqihhibh73lvjo5hdt4aituudguyd.onion:8333
-zd2mgisets23i4mslxjl75froqjygtue4lnoq56qk3ohd4qcxpop7pqd.onion:8333
-zd3fxn7nwlj76qyjseubm4o2gs73jv2g22px6t24z7p5oeogqe3icyid.onion:8333
-zd7irysta3wti4efbjq3di2jfv237nhwotupj3rtufvvav4e5umtkfqd.onion:8333
-zd7uq75dlcseq546lmbqymh37cninokajwkixpvupillb7fgpqgbwjid.onion:8333
-zdi46azujxcjqa2wnvdecld3bdkps5erbodcvw2mn424gk2by5mterad.onion:8333
-zdm5zxotwdsma3jvij3jmlke5wmblwy7qa2kikfctlzltexx6l35u2id.onion:8333
-zdn24r3iovbxfkp5qx5ng7ribn4cqm4v5ers4olnbzugyp2gbhd56yid.onion:8333
-zdovdneke7oxtxdnee7f43vcu5mjzoa5m4bexpxgvopa5kaxyrcwa4qd.onion:8333
-zdovy6gcj6nrmxaygnjqf3ym5hbd3s7h3irznsbrjmgdywd2rkj2m6ad.onion:8333
zdoyjklv576u3w4paxyjb4jmdhx2id7xoqkd7zn3sspodasmmazbbpqd.onion:8333
-zdqon7u5ofin5gy4rcmkixc7u42xypwklntwceohpektisokskrn5gad.onion:8333
-zdqxfzqxbaa654nsngnaqdz3jfsfe2u4hxs42covbct2dou7z7jpa7id.onion:8333
-zdtchifs5gqldijr7vzcgqqaftlcydhatm57owdwzrgudns5vpdcx3qd.onion:8333
-zdzkcrnoctqhn26hjbngpcl54nmvozbodf4gwf7anfxjrwhjxgurrdad.onion:8333
-zej7mizjlb26qecppzvgyswervt7ov6f4x6fwrot7obvab23xsv5jjid.onion:8333
-zejyatwyaptvvubp6b22cpow3an47bsrve63l6rerkldmuwwb37b74qd.onion:8333
-zepqddw4zaqqawkx7aqezpqwykxmxxeh2opnl3xnq2i6piazcvyb6qid.onion:8333
-zeso2dbskp3curnpgug5mjyvhs7i6rero3zbqo5n534wccstcok6ywad.onion:8333
-zexnlgnfxldyx6leiqvyhuimrfxznjfjoko2ek6rdtu4dvwkvztfysqd.onion:8333
-zf4cm7bgv4qollcjcj7kpx4qrtqzcsa3q7sds2jc3mxu45gvazlts3ad.onion:8333
-zf4k4efdpcwsfyobz444dgdfnsa6tdbd6aor7p2s6mpuol3ladssb6ad.onion:8333
-zf6nwlrrtd6q73svcimgfp54pinn46hbcriqnqqsitz3fbibzmkev3qd.onion:8333
-zf6tbmhchmzo46lmhx6vu3smjj3y4hjjrv4lnwpa3uq7bvtjcwapmqid.onion:8333
-zfhx5nerqkerm3jfoq4763vlmay4pifit5a6a6jtcjxpu7t4galhxwad.onion:8333
-zfo72va3rnioxbhh4kuth4epqwqque74aehlonvde3re6mvhz4uzgaqd.onion:8333
-zfomias3uj7w6sai3ty3coxhnb6voldudbeyldgyedxqo6kfc7rg7sqd.onion:8333
-zg2yslkwabguckkqanyxwbncrtozc2fjivsyesrcd27xxkowkbcwnxqd.onion:8333
-zg7obxhb4c4j3dgzg47zffbetclv2so4foyutdxizfnedhdkhjzo2cid.onion:8333
-zgaubbm4h7qckt4pgtp5zawrcf6aazby2zk7aeo5xsqpgwsc2yrlbiyd.onion:8333
-zgegpxbr7z34gupenib4tuwywyk4nlevo5dkfg3jt6c2jw23len76qad.onion:8333
-zgjrto32gianyp6i4gc73nlilodiqyo2s5dkr5ev73yq4qvcjxkwycad.onion:8333
-zgp3f3dmwbnr7257rouxkgddijr34keobzrtk5gkm2dgfbw2bylcwqyd.onion:8333
-zgrpshddeijmdp34xfyw2kz22la4jxgwce42pupjp3bo6xtchsorrxqd.onion:8333
-zgvklnnz2avqcnyiffw7t6umb3is4tfthnkzbhnyfr76sjtwu5u35pad.onion:8333
-zgwclfbi25s4ta5hfiwylboeitti64xzoan5aewuqimp5j55nye663qd.onion:8333
-zgxg4d4jifuihgozqblrt3kjkrh5zhbr4uyivtrzf2khnbtbe4z3qxad.onion:8333
-zhabxolberrktnga2eixvhe6vmaoxour3ktd6jgjq3emzkgthsmaq3ad.onion:8333
-zhapnpxpk3lmrfsmhluytttodeosmie7yabywa3aaxmtkreh2lmeemqd.onion:8333
-zhdd42th33pv6qnfi7v3w3gddy3tlgu6pjo2bhh5ezuytutxhivbtqqd.onion:8333
-zhea7pvhuzw4cte7pkd7u6lwjyiqczxi7wgvzhfovtjd7qwdc24pleqd.onion:8333
-zhgdvhnh5zymbwrmd2rfjncparbxfiyraqh4imk6kl3tkltgccl5cgqd.onion:8333
-zhhkv5u7pxuu36y7vzu6wlbjpd3wftxfuadsst3ifs3q23eydmako4yd.onion:8333
-zhhxxlz3wvdaj4scdetokkqgs2ndmdvyfwq4qwrn3l3hv2iftlgsucqd.onion:8333
-zhrzks7gkdvyef6s2aogxxuw7iqheixmrdzgkqotpvl5bjz4vq5tkkid.onion:8333
-zhwmsba7q6vn4yfi63p4tc3dobsarso4322ynl5ofggjbyiozefttcid.onion:8333
-zhzpumb4itgdxy53chqowtu43ru23ag3f37r77ydjs3t5o7bookfe3ad.onion:8333
-zi77cxawtknqkjiod4rhf7gsughbvv2z6e7mg5kax465uc4vtg4cwlid.onion:8333
zike5s7xtcgp6frbjgzjhcz6gsvd3pghkl2jin3sdasrek3vy7l4ibqd.onion:8333
-zip37ysefmcbnyqvt4jiag6dj3h45ie7h56hmw7ktheotkuagippyiyd.onion:8333
-zipzgdr2m6gmjfucup7xpertovt746f57hrgb7lj6m4rxeniem6zdgad.onion:8333
-ziquiv5d3hditb2r2qmt7hn7knosdcokxe3khj3kgn253l6cynl62zyd.onion:8333
-ziyp62u4xfsuljn5ae4n7jea7wfd6vfutket2e73bzrhpstozs5364yd.onion:8333
-zj55khmgsehm24efh4nmye7oao3u3l4tjuk5edghey3mt2ippfste7yd.onion:8333
-zj7jf7o4b3qztdorj2stojv4us7lzqs37fbubqpqq2wu4dxi3cxpa3ad.onion:8333
-zjdf27w3vt4rpyb6usa3r5yi455svyaha4qtsfwvyrmf3hmz5hckbwad.onion:8333
-zjgnxih45rz3kalgxvhyebyavcnohmoa3bcnl5cwkmq5pmbyypavqcyd.onion:8333
-zjx5rmakdzormbwzl27w4xcucehwiat3dnncoqdiwesbmb7dg4fpmgad.onion:8333
zjy7d5t6rxljc64pvta3hqi6yxzfsnixtbslafamoxiiw6ptcmv3kfyd.onion:8333
-zk3cgisxp3uxevuxmbzbmqyhvkhezspeydo2bmhu72b6mw2kl6v43fqd.onion:8333
-zkc2lid246a5jr2dpxtvmtu2tfiwt5dbry3xybu22b62vguco5a4qvid.onion:8333
zkisbl3pv7dsz3szdawti4r7mhrhssqxf3uopi3vrib5dpt6u2u7ckyd.onion:8333
-zkjnuuenigzhs6d5y62jct4tira6fzijqx2k3yzsdsyulut6ywp5muid.onion:8333
-zkjoev53w4e547zot35onpmij4fiube4aomnysttqtv576zdr7wex4qd.onion:8333
-zkl2fsiisu3cyhhsua7qlr5afhyvmfh4qmapgubioyhoepqdb46jceqd.onion:8333
-zkl7x3u7365zj6opig53dxtty7ctw2ijidwa4lbdbhcv3wkld22bvxad.onion:8333
-zknqouk6z7g7h5y7rmycqb6sgzykylbbfpvf5efmzibww377iminltyd.onion:8333
-zkq4fgcc4bxksbsi74pjwjfby5tdwn26yhjnmewy2qy6a3l5p6bnaaad.onion:8333
-zkr66xkrvecgu6jkyan6nxvtefynf2mpsls5csvf6lt6ltqvoscw5yqd.onion:8333
-zkxe2fnm4tsmbu4bdge7i7j2cesfrq5oznfzobf4mwtejbhenp7ubxqd.onion:8333
-zkzj45moxjhjvrzqweh5g3iyucdb2qaqby7vdtmlqbvxmm5u337aglid.onion:8333
-zkzj4uhvvpav6ee7djkfj2uem6tyswi7idzupkozspbgr2kfvrk5biid.onion:8333
-zl27cum3gly7nfhwl7ulnob6pyichpxglnss4ffqv3terkquhf3dm7id.onion:8333
-zl3dx4nswje7l5p2fgvypve5wugfqtcru2ud55qo77tqdp2btm6kp3qd.onion:8333
-zl4gt6uafawn452rlqb4w2mujut5tjcnq4ahdr6ucdyeu2gtzlsk2jid.onion:8333
-zl5voqvgyf7deglpxamz6hpg4bierfngqsmmu72wpeut7toja47v6bid.onion:8333
-zliat4frxeuirx3nbijcljvgr5wembicg26fdpgda4pnps4oguaobmid.onion:8333
-zliy5o4uqgpqj2nbgyadqnlomnjtmdlwoxcuduwcfavzsguj4z4iwzqd.onion:8333
-zlkwqytpxbhkg4umwpqiynz6niefzqjbiwzryg2zpwwmvmw6pmssngqd.onion:8333
-zlpztcqey4osd3omtpsm7micrh6jrxuqzeeendpngk25iyfhleieekqd.onion:8333
-zlx2jkuv2iuzffo35hc264rnvoimzccvtlljdbmut4es76qe5pnvs6yd.onion:8333
-zlzhg5hipy7nc4ulsaprgro53f63mjj7je7m5xptgkksibgvbc6r2fyd.onion:8333
-zm2j2k2nl7pug2amadjkrcgs5omdnxctyl7b6kmlywsphcfl6c22gtad.onion:8333
-zmfmdmzlsyy7owe6vpgugvdq664vjhluqura3skjlm6fzpgqe6udm7ad.onion:8333
-zmfmmn72dg5jjkovy4jt56c6btg7pgp7wmeh547zlvavwmlbrbsl5yyd.onion:8333
-zmjncrrwtui476nyn6sqbp67bvgdhotllq33vzwygasumv6d2us64iad.onion:8333
-zmmtddrew2mjtghs7zjiyi2eelmyss7miyj2axzwfgnmvzthx7phevad.onion:8333
-zmn3jyv5a2rod2udnreygi6uan4zq5ul4mhewyfyrf7a3ury72bycuid.onion:8333
-zmqvv2cdxjj3vbclq7l6rfdmjegmixwkxsnzzd6qezwp32vxkr2cbiad.onion:8333
-zmt7psgtnnqxk6tibhvwkdfuhtgtjatz6bpoyyl4ptuv3u6ko2b5o5yd.onion:8333
-zmtd72b4nsa22ocez2hbjsxxrdfuxxyghg3zjtqjob5sgnjpustat4qd.onion:8333
-zmuuhwxhoa6h53jijpb6mczcvtxhw6zyjymm53dwzsbmkc3kkv5v64yd.onion:8333
-zmvriguathsanquofxml7kgcda4tkihm5qked7a6ntbqk7rmz7qadkad.onion:8333
-zmvritlexdmgatfqjlexl7wsx3lmf7y3qxe2kqeergb7ntkfu4nky5ad.onion:8333
-zmyavuyz774c2fo3eb55yokivpr7qfxdpjy2t5wpeygunhulck7yxzid.onion:8333
-zmzjx42yxlpepdgya34rvwb3wc2peggturiedmn4sfjltgy6gjtspsid.onion:8333
-zn3gjkpqkajav76kaem2espqt2bw6ggfvmn4u3gmkonds7pqd5heqkid.onion:8333
-zn3mj2tggwpbzzkvtsovkrbdshbsvac7n676hbi76r72de2b4gknpdyd.onion:8333
-zn5purhx3rnikkks5tx4scnjlhewwll3uzcs4pgde3qeqawof3jefhid.onion:8333
-znaiehv3qrtloxdi5rkbs4eqpmuveazuftob3sqzw3ta5pyakuwhx7qd.onion:8333
-znbv4cupk7rrdk4rqi6xncbouhscxnqdlbxtltp7564isfv5vtbyu7yd.onion:8333
-znc4xhwywjqejoioap3ssxvtsdilsc6i5o5s2rnp2ecmxqe6xe2nh5yd.onion:8333
-znea5ol7qgniizv3og2gfcbxw2wi4qhk7dfkdlt7bbxpy5aflljygbqd.onion:8333
-zngxgkdgkqpfyepa5cvxlaxvlyluzdryhzmviar4ojzaduxw37hhdmqd.onion:8333
-zni7kioacgsy5haqiftnexr74sv7rzvgy5o6lmz6dy26vvwg5lffioad.onion:8333
-znlvmmj4dvpju46kbb6mob4kufyf5a4qivyygmjj36kymbaa4nzi42ad.onion:8333
-znmgbi6qlwwwdlizjxsc6eujnfwgytufu6guo67b54av4y6inwgxllad.onion:8333
-znmwoazdkcffprail6h4p4opy7i4zqomhpdxe5l5nc6ejqagvt4i7yyd.onion:8333
-znt2jb6nivjgl47s2gdcgac3merqjfq5h2n6x6mbjegx6fumtl2ownid.onion:8333
-znvkqu376ienu62x5hprstn36jfqxospcnfhpc3kq5quwcd6436pzuid.onion:8333
-znwekshd4os5a2n222xrllgjuyvsw7hsb2y6br7pkwjatywk5lerbtid.onion:8333
-znxkxyd564sfftgjscsmi3a73jsazxwhsneix3bgto4suyjx356xewid.onion:8333
-zo4fczw4drgcbsumtgmigjkiso4miz34ltauajaawqmqoa6oxmzy4nad.onion:8333
-zo5jasvz5qo7pkgrgn4r45twdic4zake6zpjfemj6x2ioxcwvs7yzlid.onion:8333
-zobj27bempyxsigdvawc7foivyyuek73hemep7zf2tajof54353ok2yd.onion:8333
-zodjfmegrevmjbppq2t46iluruefbgh3b46tbrl2s5qkprvbetk3euyd.onion:8333
-zofseltpp23n2xb6fsmfgkwgqggwhrelxmt7zq7toazybgehbs7d5fad.onion:8333
-zohxazkomcr5ggqlj2edu23zs6xiay7wfsrxuetrn2k2s5gwhwhcngad.onion:8333
-zokmgys3gsgs5oivjcqp3xiki25iexezy33ekzuratdz3j5unqpxrzad.onion:8333
-zosjvclhqzwklml43hvsdmupglajj5lfdb5h5frgym7hsqo25rwrbdad.onion:8333
-zosk6fx2a3mxkfaeayziiuizq3y3j3azzp4ylwyh76wq2sqtaenuwdad.onion:8333
-zovm6wkattzmxc755cgqqd4sxugn3jaxw44izlm4yfpot2ucfeqnukqd.onion:8333
-zowc7rklhd6xhje724xomkftwimuihacwcnxkt7vhbjpvpkdahvlhxid.onion:8333
-zp3vpkpcfdx5lxvnuellqaf5qdvhu4luf4zqfx5xjo2dge7cqsxhsxyd.onion:8333
-zpgobpk2j2suauhuzfmh4iiz3y2zhj3xvb3g2t4a775t72stt3majryd.onion:8333
-zpgybnbaxfvzjeus7qna45zchxdkekjpk5webdkeqtxfwcglgogm2vad.onion:8333
-zphjbml3fqtbez63bjvd4s552yc2xebitadkpw2jon2qkbapbiltijyd.onion:8333
-zpnoo3qordv4xj5hjynkssu6wechvup6to7pamrgbi4ljmfugjyzwwad.onion:8333
-zppmhj76a6dyjch5qtubosxcyvtwjnb6zndsfywxci7dy3vc6lbfusyd.onion:8333
-zpq2nzcnlasmy3rmwtmaybav6t7xfrvorqqdwntnbgbxqujyy3dkwlid.onion:8333
-zpqvo25bxu4n2u3mh2pdzax7wmpsitd3qsszgw2ye3mpfdpjbg52kgid.onion:8333
+zlcqdqzbgq4dhaspf6d6ehkhzjx5vwd72iospxxbdobjaxi4eo6ggoyd.onion:8333
+zmasrnq5gqwvg7yv62ts6pywn5pijnohgfqbo6jytiuikqdufp6v3zyd.onion:8333
+zogiy54bertbyhcs5vye7xjspuwvyggomehc6n2tbkwwdzyp3hwrhpyd.onion:8333
zpx2tq27yviwzbpc4nyjfqtlhigoa5k7cwl676nft7bkajo6jq224hid.onion:8333
-zqlwzzfzdoacgngtsnofmyqetag6o44f5r72opj733y434b7npnb4oyd.onion:8333
-zqq4g2eikcfgls64ffstsylfbqrfstm6n2otvrsbtvvjpqwgyqdnmbyd.onion:8333
-zqrj4fhhp4mq5eh5xptzcxjzpae37brkdn3voz32qsohl6noijygdkad.onion:8333
-zqrwah6dn3t5fuj7ohlyka27zzopduhxy4wyknfrtqpx4sykece65fqd.onion:8333
-zqtyvr7h277x5rxin6rhsrsbhwcfsyyiqgghpk6jlbewej2v3tn27yad.onion:8333
-zqv5nepyrwezkym2ba5s2sskmi2qck22snw2rygeke45bxg2o4vckuid.onion:8333
-zqvbnqwwhtoux2sxicng2blfiowk5mvty7c5xnssxwtlsjzalhg3zqqd.onion:8333
-zr222c3ybuqxn6a6piydvfos4zjnaklfgh6kofmujmolpiprfw4z6vqd.onion:8333
-zr6ffisxxo4gelmkoyb7izfm7ehjrbqbnzuguw34to34bqhxeeqzzjad.onion:8333
-zr7sqclimv46jdnmmeazqrhflhiqkhhrz5i3ed7yvyue63swk3qkjnad.onion:8333
-zrrfr5sr5wrgdt6rn44cxnotlvwe7cl67rgssw5dwsax42evokdaw6id.onion:8333
-zrrhgs52ftlylshuwp5e2uesgqnwct7h6cqhzofdduwoi4sz3shmxxad.onion:8333
-zrt3rg4paxmo24ucd56eehl7apindhbubq3ej3q5nhr6i72jv2eznryd.onion:8333
-zrvsjjrb3lgvmeftz2vfjva4pl63htmv5qyviq7zhnfmlk42evrxdpid.onion:8333
-zry2rqlcqf5p5e46wc6nmtcbt5vd45mf4hyf4nxlqogckoniufdjklid.onion:8333
-zs47b66pljpz4ahompanciv73xtztnnzkx4wjklt6hh4drsge4m26iad.onion:8333
-zsalwutefh6m6x6yxccbhulzrz2bmo7dzu2ggu4hxp5zv3xx2j642dyd.onion:8333
-zsbzferezmnyxhpktxtccn2xxuggmdzdnrza7pqjlnwjorgx57y2acyd.onion:8333
-zsgtoyy2svehhfba345dx3dazp7tfdio6o34zxlcgylq6pi67gjq7nqd.onion:8333
-zsi55x2nvjc4oqrpzzopkneukb5fudnm4e6drao4x73lf4zshhcvllqd.onion:8333
-zsipwsjpm4f3p6ueczh7lqei5rp3cusl6t4d6nntnwxq72hori5f7jqd.onion:8333
-zsisadra7jlxp5nhec2vsjwspvvnk6jemjxk7zn7arypl6cm6dy7mwqd.onion:8333
-zsr43xqj6nsrqh6qgxghadctltwytnaw4zmlvx6exqybt2qdt72f5yad.onion:8333
-zsxgefpkofjc3nti4qusk3pdqcfinkljajlwcb2cee2tduxltxbmrpad.onion:8333
-zszufrszpweaoysubpdnqparmyotjnev6nhhcnejhjjftu5sb55kesid.onion:8333
-zt6gkop3n6aggrxucnaqp4yrjeu6htwvuy2nyn3vadjjrodwxfhfv3id.onion:8333
-zt6hvzyoalzm4a576drn7yfvdetdvzwwouvfz435wzrf5pcnxqxplaad.onion:8333
-zt6v7eqh7vvlwy5kjzbdfgkw3syj3nnhckyghlzgmwwfccxvyfusuzqd.onion:8333
ztcmlrstdkp7coheeolpwj75gp3imzgiw26xnoiucquwhxxcofao63ad.onion:8333
-zthmey4ueoutf7q36nwgujxu7hq76s5ifbtanvze4mxq2s2xq2cmjwad.onion:8333
-ztmwsyo35zkogpftujm2o7oilhucjxe3w6bjagsaiwtb2bu62vgjptid.onion:8333
-ztou4ytvgvpcakjaje2c6l5j53rxcxes7qhkerszi4haffxfpj3kdnyd.onion:8333
-ztwryklhcnfoeck4qntt2aitoilit2cmmr2geyqo6cjc4nwr7jlludid.onion:8333
-zu3ekh3vtqjfnxqjqlmnq3jbqlg2zum4ehgirz5cggwe2thjmgkz4cqd.onion:8333
-zu3yh7mvqw342e7qt5amwtwe2btjubi6t75k7wgcpsyoicsnpgbgj5ad.onion:8333
-zu76ecbahyc6ofjiiutna6myxmfdcsuhcrhtgpifbw3vfo7njd4b5tyd.onion:8333
-zuaotutv2ngbf5ot5kvz75uehbh5e2j726fglhqw7omk3b7xnaastpad.onion:8333
-zubmiztmnfy2vqowqmpyzbqtf2a43jgazsex6zlxokhfmnzmi3rht6yd.onion:8333
-zuc7sobx6ttj7lswk32raexasfbxc5kd6a3l6td35srqzkj3emsv4uid.onion:8333
-zunmnr7czrxvfjgxtvkwk6ziti5kskx4fi3j4dzahhdljfsqtz7yeqyd.onion:8333
-zuoml3m3jdkoh5bdrwfecnew5f4mrlcwhmhkn456qsa72cp274pbgtqd.onion:8333
-zutyd7pzkyejctriyr2lqlrex3arkunntsdjo3kgw2qj5u3fj5uyusyd.onion:8333
-zuzdl7nnjhy6inyqwsc5i7fae2nregm7wnyrtolaxhi6oiufyc7l26qd.onion:8333
-zv2nusexbcrncbutlcprevwhvbtqlyri3stjwmgl23x7fdqkmae6owqd.onion:8333
-zv63heoa7jstwhq3wg2nibip36bw4icd7jphccy3li3nut7gp2gojqqd.onion:8333
-zvbhycudpglrdi3sk7yixe64eknydwzzisc4n6xmxwhb7xyyzevc4nqd.onion:8333
-zvgutw2u7tu4dx7t25leghdp6j5n44u464mmoypafwstayp6ggabtkad.onion:8333
-zvjn5jscn7jncqss44uh53gvi6b4eycjqp42t6pv46bsr7gine5cbrqd.onion:8333
-zvmxfy5z7nxeknglvpbh7rveoppkyvvzvnpwxon2kgkepafnq4igheyd.onion:8333
-zvpcm7eemfvlklgqio3fgzcwa2vukg3n7caov5itik36kdua6mvm43qd.onion:8333
-zvzirfk3h4hk52j4u254y2np6ve2xttd2nugiccsqw2liiw7aqmglkyd.onion:8333
-zw4olgpxujj6iydkmhuxbx37b52syl5bm6embyebesysep2ignp2dgid.onion:8333
-zwbnovgpo4qxidylubpdrhxm34t23iwaniawfshiqrilttwqjnnlohid.onion:8333
-zwbqgh5le73aurfmbwf5ivjb7ycemwnjiq2jnq4sqz6epl7rdtd6rtid.onion:8333
-zweiy44ngrkfzhnaoqov3fopwqd3uhwsen4v6sdyf3ynmhlpuluvzeyd.onion:8333
-zwg2cvvkm37u2hicwbjasqzdqdhcblwvtzsulmz4kpbebf77jheiaaid.onion:8333
-zwrp2kb2covbrr3xdz2pxr6gg6ndnhpcgfvjkjr43eudnl5aswxgvbqd.onion:8333
-zwsapfrsxzsomsoty652jifwii56st6fg7bs2crr6boveh5o6npl7vyd.onion:8333
-zwtjkx5blzs4i6e7hwfeekcwufdl2lba4j65243tvkajder5iodkavad.onion:8333
-zwu3ep3zqki62b7ldjbsxk4dm4rlppkxpzzqfwsfvkoihxltm3y4qaid.onion:8333
-zwwpbfpymszcmkwlfozzl26m66r6n7xzgnw6bs4nf3pypqh36ya2w6yd.onion:8333
-zx37fw5b4eatt3dekaefun3ln67agpt7oqobeacvyq4keurbj26azwid.onion:8333
-zxaujdps5ce6wvk6ykbfquygtbli4ecvpokj7oyfxjqiionn3u3fdsid.onion:8333
-zxbq3k7hwswo2f374ahsmlgkpdj7ju7pyygurkvzqaoh35vmxleewsad.onion:8333
-zxc2bzuqdkippxthxbg7n7e3lznbcnx7zyitlhwvjusbwr5v32oxueid.onion:8333
-zxcnzlo2eigfig66vxyx43znm66a5i4ieuiosycgddgzdff4vhn6zhqd.onion:8333
-zxk4bqrede3tnlb7ymjlsoyupc37r2vqe647otr3nczqmgfeoyiu75id.onion:8333
-zxqdpu4gmvn5vz2kdld6c2swqdzknwh2czwsw55vx323orvtk6a6igyd.onion:8333
-zxqe6efq4odzd2mvyeglqto2cfggagoicgcvlvca4mxycg47jei4uxad.onion:8333
-zxzfz3z4nbb7u3ifcv2p5xenzpbnzuuezelbbjcfrmupxtqyoh7uhyqd.onion:8333
-zxzqhfwi3gdheuxmzagp4aw4aks6cii2llljapcvqhtqrxlksxddo5id.onion:8333
-zy4jeshnpx3i3wjcqrb27qcea4qetpez65wpocat5sqncz24xeo6sxyd.onion:8333
-zyccgvzokepone36ulu74l54ad4dtqv7a2bjzcvopj6rg5xhbc7ihjad.onion:8333
-zydziohabauwybhbqkegn4d5r4257bmfain36fatcxdbj2nw5zoa5vid.onion:8333
-zyetfkanxicfp6tt5tegkxlkoz5rl2i3zsc6hyyqizahywbktezfuwid.onion:8333
-zyjfoui3hrpsw3fo4owxrztclffqhr26wdedizvz5xvlgurgixit2mad.onion:8333
-zyku4bk6pdifla26hympigytlwsx4htajcn43hhobdbrv4tfojv3snqd.onion:8333
-zyl4kfejs3t4vefsvuqrqopboxrmztuun62jick4uh3wpu4mw7dpqlyd.onion:8333
-zyphknlr4ogrknj5t64qya246kdaasgirn4iercvesggqplzzxsisbid.onion:8333
-zyrodumrgvgpinhygbi5molpbhl6ndfs3lwtt55pumd6wy5k7nb3esqd.onion:8333
-zyvgumk5pcanh4zk3z72glefxgbd4dpyhsbzvqlsp2gspaw37lrhjyad.onion:8333
-zyyefl5unnw7lnrjlgfyvnytw4iy4n4cy5bbs2nudjh7wp7psvefmfid.onion:8333
-zznngqwcp6g55wkjg52rzeogk3fcdpopyl3zprh2fz266nykv4sqveyd.onion:8333
-zzntdfpcb3spf5pb3g2gczw2njmhwwksgxt3twbzjhbaisihg7h2ywqd.onion:8333
-zzsi7brufwylb52w3bcbqvp5jx6vribh6geiqfy5jhxpihqjjaox7vad.onion:8333
-zzthz644hdjxn3d54xrfe7snnuyhsx2cguy4kqb6dpc5u7aun5lflbad.onion:8333
-zzuipjogcfvs7uyfhfgesehon6viegga3sc6c6265n235pqmkwyqfmyd.onion:8333
-zzul2xvyhqvajnd6zfs2dzljoppx5lsp2xt4qad7256kpxrv3wzyiuyd.onion:8333
-zzx4r2yrkxul2kg2ojoeijwce3skll4wbkkjw5xprstn2o2xw6n74wid.onion:8333
-zzyp22x6ryzyin43pltkup6jki5ynboh6cwpucscx5a3md2tooqn52yd.onion:8333
-zzzzzzzz5bs2qnoijxlhxd3ibxipajesgprqlrxtpfbygw4zcaf6oaad.onion:8333
-
-# manually updated 2023-04 for minimal cjdns bootstrap support
-[fc32:17ea:e415:c3bf:9808:149d:b5a2:c9aa]:8333
-[fcc7:be49:ccd1:dc91:3125:f0da:457d:8ce]:8333
-[fcdc:73ae:b1a9:1bf8:d4c2:811:a4c7:c34e]:8333
+zx5ttamyvo4vz3x666eqaez327buy7t2mxl6tfivbc46cdhrtkrrqpqd.onion:8333
diff --git a/contrib/seeds/nodes_main_manual.txt b/contrib/seeds/nodes_main_manual.txt
deleted file mode 100644
index a3f00ad52e..0000000000
--- a/contrib/seeds/nodes_main_manual.txt
+++ /dev/null
@@ -1,1029 +0,0 @@
-iy7go4454pb4p2zmnkwrgsi6v6oqv53zxnmalz6rnfjemxftapfa.b32.i2p:0
-j225nrmndwviihpe7ib6mm5h723cg62wrb7vnwofopv472ue3zwa.b32.i2p:0
-j2m526lqsujvt6b6xl4ipzbjkvkuecrye3vkggwo6jadvzqu7f7q.b32.i2p:0
-j2pyenyhoppsjexenznxvgqrcs4buv4nssctowgpg6czdoo3nyiq.b32.i2p:0
-j3usxovx7ukl645u77jud2mpmrk7ryh5yaxno6rceu77hqlxkuta.b32.i2p:0
-j42dsnjlg4vv33tshgs5jyham6plf3suj2sn2k6ew4tmcz3fpaqq.b32.i2p:0
-j4tjrfxnwcmbhkixmqlnotginhfxgfdvjahr6yn7j7rkbdqngh4a.b32.i2p:0
-jb3iui7grnljdjmsz7qbustrl5vn3ip3upnkzbaegaiklric7cha.b32.i2p:0
-jbmqtghha7hscwbwpi7ps2dnghq2bvxjnfeb5glngnvgjmeackaq.b32.i2p:0
-jd43pc2l73ek6hk2tp6hiyada7ed7vshqo2fvxbga2daylcghfyq.b32.i2p:0
-jd63whebd5yuls7r34mi3lnnuuhqxxr4lns672tzliru4vk7hwrq.b32.i2p:0
-je6ju6ihybxm5wkw5daeqjet74lscvi4ls5wn5wf7kiaczfggafq.b32.i2p:0
-jeidstlwdlt63lju7cnj2mh4fofysjnc2wcvilphynprd7jw64ma.b32.i2p:0
-jeox5nruuoopedsfpuoi6kwewmhbbsnhf7kib2q6oafvchxvmnnq.b32.i2p:0
-jex3ykw2nmw7owhgbtio5flv7us624bxwp46nr7rhmteujrmtvvq.b32.i2p:0
-jfdh65i4nhpg4obnoe4aqi3vzvbi6fyzjj2ee7s3qm2gbcnllkvq.b32.i2p:0
-jh2qxkjqngj2m5tn2ecaidfqac4awgnmkgsajntoqs5qqyjtp5yq.b32.i2p:0
-jh7ev4a5zfzmeyekinhtbqfi6c7xhvc4msdpyi67j3sxl6r44ukq.b32.i2p:0
-jibaw7ynbnxueqsy7k7jyvoj6ldzbuckppfx5wozt7mftihy5vcq.b32.i2p:0
-jicc5kwy4tv4j2nn6gfbis7e6dxy2kdvet3zpxdbyp74h5gpnxuq.b32.i2p:0
-jimdydczt6e2lceezopnl4fgz7q2jeqqhlqaxrgen33ouxk57xiq.b32.i2p:0
-jjangl6h4py2pd2gwamhqlsymyuocmpioneinzf5bb5qvvdjzzqa.b32.i2p:0
-jk56z3febpco6rbkpzzv3jszf4px5uztmoxzkpss7mxnzqlpsdla.b32.i2p:0
-jkfuajo4ayvo2rbv5qdj443q6adqmnormbhsf2f7rlp5t24xomda.b32.i2p:0
-jkvey2vfdto2ucudi4jlgsbpmlls3uwmlkjonfhk5yminkwzwi2q.b32.i2p:0
-jl4vr5kac7njyltivn7ut5afyq5ipzc5woxl4523emodxixci3zq.b32.i2p:0
-jmebfluhrl6ad5pt4ipevf3g3a4trcu7axalpubpkir6zlwovm5q.b32.i2p:0
-jndr5i4qhxs6aa2bqvufrgttq6enavyghi54dqfuku2qnstdqa5a.b32.i2p:0
-jopiw2tup5h5xh2hwef4oflgskawbpfmswub2iosmqocejijd4fa.b32.i2p:0
-jrert3o2rhbkpquybwg7tq4bdvlxeh6lnlcr5ddexkuguvi2l2pq.b32.i2p:0
-jrobuecgmuuqmpdsbxwbqeldt2735cgcemngoasnbbkdz2ufdlmq.b32.i2p:0
-jrvg22xvbmjyrkqg7mr622zhnda3ijtua65cqngwrven7sf5zd7q.b32.i2p:0
-jsg4dsxvgjcqz3c2qgtwi4ip3l4n4hlxodbvgukwaipycwo26zua.b32.i2p:0
-jt35uwbl5wx7ponyxomksrjjs7zy5yymvtud3nmogt7ci7xxlm2q.b32.i2p:0
-jvaoh33cpczp626ldwr4azh4hb5cjmxlbz3dq3cxisdlzn7z25eq.b32.i2p:0
-jvlj7qyxcmolf76wneyvmdxrpiezsxkiimapwxbdbiw2phvlyjba.b32.i2p:0
-jwqlvqmfvodnrslde2idqt25qxiyvgqdlr2q4uod5s6lkmlempya.b32.i2p:0
-jxjc7oe24vxdepkfvl365qfwrxcad2f3j43fnfuchtvqqkqd2rzq.b32.i2p:0
-k4mch53m72zv7jdda3poa2zn7bi3jacqwfb45peealxbhysdozcq.b32.i2p:0
-k4pjt6m25dcxno3udek6rasooz5ztqnywa3f2owpvcjzvisg7nga.b32.i2p:0
-k5ars7hsrfubadroe5h7oypjnqwi6v2vxxy6rmns7zubf66aivbq.b32.i2p:0
-k6eeshsk4vf34b5gfnraz4p5qb6scv4kw6eiltebel5exw6keppq.b32.i2p:0
-k6gt64xby5igmln5hfcuzspt2tndimzrdvj65yo76h22g5yhlvja.b32.i2p:0
-k7kcnrqe3ybqu2w3fali7zext6na7o5o65rx6f5oqza2lonsry6a.b32.i2p:0
-kbawcieyelwwitrjow537zpmdkncwiq42rhjgayw5o7u562mk23a.b32.i2p:0
-kcqkothplemakipfpeajxmu4xsszpaxpprgtuv5tgfdaqejg2sqq.b32.i2p:0
-kdrcbr6wg2bj6oipsbeqy6bp3v7dqpth6cheviysmvo4bdta7fda.b32.i2p:0
-kehosmgk76fxnjywqjj6nqs4ohg4hsutljdzjo4sswhxlj5l5tca.b32.i2p:0
-khxruoaom7juockko2tbxqo3bnrjmoqjhdoady3yyr4qacz4somq.b32.i2p:0
-kjaa3zlp4sipfxikketgvlx4oxq5ok57ifxenbiewmsrew6lcw7q.b32.i2p:0
-kjvrzgckasb57yqhluvjblx2ngxstumfg6uufz5mc7zyetkjlr7a.b32.i2p:0
-kkihsh2faw2gxil6it4glol4u37ccruuzsusyikquzmkffj3wn6q.b32.i2p:0
-km3b5j6cqrcqewdpuveibptw5gguwktwan36jlow4xykpg2dgr6a.b32.i2p:0
-kppcor54kkge6cgq47nzevlfrhbxingcjfmk2emkrdaejpixkqdq.b32.i2p:0
-kskidltmbigp2etp4pdl67ke2qzjjw66wqairzr4wn2apq4o7bka.b32.i2p:0
-ksxxinje357zctkobwnxsy44ddivq7yp2n3n5gopk4okir2vghaa.b32.i2p:0
-ktua3j43ijxhhhfeljsp32kdiuic5nlnfnkx3ealy7ojva4vwkoq.b32.i2p:0
-kuzu73gzvlnog4cdtdk7edbusxr4pigknvwg2bjo6l46ugsgmrtq.b32.i2p:0
-kw3v6gq5semgt4gg6itum3qtaylanyof7wn6bnbngdeby4xixuoa.b32.i2p:0
-l364nudwoj63fe5nsjmniiun63e3ycdqrjyknbfixxtre5spx7ga.b32.i2p:0
-l3ach5wbdx3n5nq53sv6tagijrbse3nwa2gkqz5oj7aifyaizpcq.b32.i2p:0
-l5fita4r7niir3hxmu7mzcwrigxinkrn4oqeembdkgao7k2yztha.b32.i2p:0
-l5obkk7zzop3nztnt6ijugz4okqsyhhb5o6gkbqottgqzzzcgvla.b32.i2p:0
-lai3534z6zs2tukzixdagrciezum2bkyuask2srxjrn67yu4c57a.b32.i2p:0
-lbif3mgg2b2ir5dkz7u6iatdrui2h2a64vlmffcfgqnpjuvwzaxa.b32.i2p:0
-leu37bptuuu5377mi7cb5t2vsu4hesblyxl5zptnnk4vodhovwea.b32.i2p:0
-lfuvzzzceuik5u5pnd2i67amegel5ua2rrnncxkyyc7bhteq73aa.b32.i2p:0
-lgpojpoix7zd6dhpo5hdrnwm4ueyjvi7tbot4qsqybk3upuocnpa.b32.i2p:0
-lh7qjombcmiekvv6niz5eflr55cnd3oxx7nuus6vmehqfodr67za.b32.i2p:0
-lhupu3owhuc7qwvyfazgkbcmr7sjp5qqxps732vy52v67fsn5guq.b32.i2p:0
-li4vuovafxjrf54kvfg3mjrg2mebs6edpl5yrr2dohddvgmxjyvq.b32.i2p:0
-liu75cvktv4icbctg72w7nxbk4eibt7wamizfdii4omz7gcke5vq.b32.i2p:0
-lmlf3yjyg4djrb7wtzmrb4fbkorqba7k4lvk7ax4omay4mbytupa.b32.i2p:0
-lpal67whroip3c2yj4fxbayj46d3tr5osyqog6el5n6ctktdnakq.b32.i2p:0
-lpektonr2uyiohuzi35shtj3oaa77rklmqsivuydxkcxkea2dwuq.b32.i2p:0
-lpffyejskwwap2go7ommmryex2autlkmcnnpk2tm6aitxcalwrha.b32.i2p:0
-lpqkgbek3ci3w4qobpeqepjor3bukz555rzlmghck4o7wwb7ajza.b32.i2p:0
-lprgmkc45te7skx7rffpz72ca5c3zdg3tabiksdboao5w4wceu5a.b32.i2p:0
-lqn32kgic4cincyqlybpwbywcrowcxmscfcm4mqt4fgp24qs3y3q.b32.i2p:0
-lrah7acdsgopybg43shadwwiv6igezaw64i6jb5muqdg7dmhj3la.b32.i2p:0
-ls52j74gwtsrqhlgqcai2cjl2rcivfib7jzovc4454h6tq3i6k7q.b32.i2p:0
-ls5otp5mybmxqsaeaid7wlori2ukieehr644adjfwdxux7jxlvga.b32.i2p:0
-lttdnbluvybzbjq52t5vbdkk3pvzc6zyi2oji7yjdpcgtgz732bq.b32.i2p:0
-lunkwblewltvq4spt7j5u2nfpqyndvgepl7edkiru322mmtpy2lq.b32.i2p:0
-lvdbqavgdom5h5denwkmdwslfzxckf6eddwflelbog7tgo2m7usa.b32.i2p:0
-lwjrapkfexjyjqf2rrdr4ghhxmlr3jdygsonetgtheglvmru5x6q.b32.i2p:0
-lyg26sjkcx5ied5a4a7jdxmfeplfcnux3fux5rsxzkm5mgbbsllq.b32.i2p:0
-lyqmygrc6gujxa4xlnwqku3vtfkbrszdiirsagn6xd2yw4kvodrq.b32.i2p:0
-lzuu6mjtu7vd55d2biphicihufipoa7vyym6xfnkmmlra3tiziia.b32.i2p:0
-m2k7ajij2wvgfpsbg32zuorbsjt72iye3ozz6dbyxtj57fx7xsqq.b32.i2p:0
-m3hlmj2gz2co5gu4ss3wj4b7ebeg2xbkrr65ogxvhn76uxna5qma.b32.i2p:0
-m4o2kndr75clxemwbq5m6vnok7eiqshf42wjjvag7dtwxtafxhra.b32.i2p:0
-m6bpynxkv2ktwxkg6p2gyudjfhdupb6kuzabeqdnckkdkf4kxjla.b32.i2p:0
-me6x2p4m6jw3cxi2xl4a37u4orzmv3xdopr5t2vgwjmauiuqrmzq.b32.i2p:0
-mf6tmlegp7uga66cdael5376uaz4qd3wacuh44yvepa3kbu4fk3a.b32.i2p:0
-mhgxec57s6h7eixgemsghlcuhmgh7m7p7phqd5kzmm4wovrp2pqq.b32.i2p:0
-mjpulaafdyuanouslfpjcsvumi4edtckfu3ffn3ipabkxj4sn35q.b32.i2p:0
-mlakhs4ixcqwvk4vo4ce3loa54wmdlfingk73jookrkbra6ppq4q.b32.i2p:0
-mnkqn3r4jmg6vrmlprabenndyft2z2jw6g4nsnolt434coiklmyq.b32.i2p:0
-mnrbc3qi4zuk2tzghmy55kplawncih6jkmt75qczfu27enu3gcea.b32.i2p:0
-mnrrefebq3yxr2avprp3ay7w42sx27ijv6stjljzpwohnfnkg26a.b32.i2p:0
-mo27t6wym666b3wfauhndqocbetdsssxksep6x4dcpuh5dxe76oa.b32.i2p:0
-mo6mp2tymma5l2swob6kqzzb25ccmgccfj5pic6omjkktv4wve2q.b32.i2p:0
-mpi7bivbr2pywsgasslw5we766m757os2667h3hqnhcftaszdv3a.b32.i2p:0
-mpqb3jdmdibarrflyiik5wj3ekitxpe2oqieztlax3uomxspgsvq.b32.i2p:0
-mqocuhx3qwcwfuuin42yuhtqgm76drlmfvzikf7urot75qw3ykpa.b32.i2p:0
-mrbhw6ow77bjqmb67rurbkcl4xs2ocj4pti6hnz4wcsg6bduwtya.b32.i2p:0
-mrypjr2fagjhg6z4ixr73f5npkeyoxsjamcdv5uc6oj5oi2ylsvq.b32.i2p:0
-msjl4a7mdp7x2bcllmbxurhfmtxvolykonz45psmh7j6pptfyy5a.b32.i2p:0
-mtlznxqya5nbuyorybzul4cpdlrnvlrhalx2eogwjce5j32js5wa.b32.i2p:0
-mv7b44duaxqpzbdztnrdvnj6ypsp7yhs4z3dc2q64jov6pritmja.b32.i2p:0
-mvs5a3s6rgfbvvgq44wzyd57vf5pr3jcthc5qdo75xgj4slsm7tq.b32.i2p:0
-mwcqoe2lu7u6ogwo77kr5sr4wx6pxnotkdeck3yyjfh4uklytj2a.b32.i2p:0
-mwevh5r5dkzddlo2ol6bojpdds3kno4xqoy6p6ulid3paamgrtla.b32.i2p:0
-mwyjzdrgtypbwjyulw4ifetejz6xusqstvzylztsphpg2r2zf7ua.b32.i2p:0
-my66tuvzfyy6kkbdeqvgfpk3xuoxerucxt73tw6wxv3ian2p2snq.b32.i2p:0
-n3f4ngbs2igvp3j27vsi7thguqxoyvbfenaqhgypuqdz5iovek2a.b32.i2p:0
-n3fa2yuf3i3opdktiwyxzhbpudcut73valxdrlre2xs2ooepddaa.b32.i2p:0
-n47e4gkf5xujcamnsarfuy7435hfsgs4zhndcxaw2evafn6r2rma.b32.i2p:0
-n4n7bivjb2mffgll2ulpwyb4m2oomv5roxtdj6bmlb4cgpf3wdja.b32.i2p:0
-n4zwusew5coibur4p2g436ktc3cyogz3sklztu6ruulag3je6ita.b32.i2p:0
-n7ykk3cxcqzcoeipo7ghzb62ko4d6bxzfgenzxistvg6fuclebva.b32.i2p:0
-nazasriqoa6qoxdlgzjwsggubxl6i4nge5q7om7nijaqi24ulgua.b32.i2p:0
-ncdjjthck6v6phz4laddyc7a7czoujys55melfcoptvl2h4izqlq.b32.i2p:0
-ndtoi53fz7e6ml6v6jn33675nwciw7mu5msn7afzbhebprusqg7a.b32.i2p:0
-ndunnsjyp6l4w3jebow4zgsfrdsy2lrapjgslb3tv7dg6oypfbwq.b32.i2p:0
-ndx23xqvt4qezezih4wlj7mqtwc4nzbvmgseq6fc6e2ddywrmkwq.b32.i2p:0
-nejmippeopyo75wd3gjrhca3fr5mo2g37owzwdezxmg7uhx6ygxa.b32.i2p:0
-nfsi3fenzrzoccj7bpzuvjbxnij7dmzuprg7ia4geuortoquja7q.b32.i2p:0
-ngn5elnvbm234yyun5kbjyr76oy5nhrvyckn33cqcbx25hw4lfoq.b32.i2p:0
-nhpbv2ravt6t5fhxyvuhrxyma37wph6dzuzpddlw3uoivzl6tx4a.b32.i2p:0
-ni4ns3ou7v6zh5qrawvkwnmshnrzcyc5zojkw647rrniplmurrba.b32.i2p:0
-nigrfbou3zt6wxegn5im4cyminjcjmbsqror7ntcr5i7yv6chwvq.b32.i2p:0
-nij7pzb6mhrra5glb3dyghjt55sngwrikzdlagmpsf7jn2onvoaa.b32.i2p:0
-nisd4was4gm3pkvuwjh3sbaoo35jtxop6y2d7ug4iol4cffkrk5q.b32.i2p:0
-niyz7v5fdhqqtlr4y3tcgdoeu3myntub4trzvgixlgjbmowccgja.b32.i2p:0
-nloq52novup3cawccvaakmbudooatwkw7dqltnr6q3j4qy7r6oia.b32.i2p:0
-nn7p4y7pun3m3txaqbkeptkxykzwrf75ru2zimadnewj7g3r4una.b32.i2p:0
-noj7le7kkj54umo6mdftagvvk327cuir7q75bnvuphrxa7kjujna.b32.i2p:0
-npcmehkhh4z2wtk3f5426izrytvqvyf6aa7hyx6hf6jdbxveqima.b32.i2p:0
-nrrg4p7tztllzthlkqzomqi3dejfcak7t63n7zzuomt5atzz5m4a.b32.i2p:0
-nt3ysas4wpjgkft5pohrfstm2vgj7t2vx34u32voy7rqon7dlbga.b32.i2p:0
-nu2ao72zway2ponkhrf322wyfrrn4mdmyp7n5q5xzmjhcge5odma.b32.i2p:0
-nufliiw3uav3tzdalit224yhbfpcjtgfrm5ic7ob6l3mmsay6cpa.b32.i2p:0
-numilh7hhhf6inzkzway3hzif4kiroqstxqbz7hzvoy2ctgpaqda.b32.i2p:0
-nuwphtuudfrswids22qjq63zgxh5wu7erafl36jyniuxhz75ikyq.b32.i2p:0
-nvmuuajhaw74g565l3a7dpezs4rkzm22ub5jhh6mdvzu43j4a6dq.b32.i2p:0
-nz4lq7pmswngaevv2uqyainqzutfxlkavxgde2w2slo2p6e2kcfq.b32.i2p:0
-o5ijpzor3en5xnndm3ntti7o4fxvv24t3veh4g7mahk7ogesb67a.b32.i2p:0
-o6b747qkpgu6gvsem7leylvmxsaaqby67pu55fmqn52dgazuvbxa.b32.i2p:0
-o6t4fr5ayfadzieutstgwcllvwxeuzjlxmzsmpj3hpkvefhzfaea.b32.i2p:0
-o6vbupdnpd5bwvcx7ivaecgyo7x5vdu5em4va6cmx5iwcf5tyaca.b32.i2p:0
-oaeqbkgpek4qnm3nly76x2tfrad2tun2xefliez7a3uxddeq4i4a.b32.i2p:0
-obf5kfk5n4nnsw7ez6ls6chqu4lz4wlck7utwvmjnlin4nzfnspq.b32.i2p:0
-oeydvkjoeqy3473wxkkbmoc6zz5m6zcmf6ov2hfkci54efsityua.b32.i2p:0
-of2gy2vblht57tn6yfczslnmp2xybdiazzta43y24w76tl6tu2xa.b32.i2p:0
-oggn6qbpmbag224gumagzgno53mgozb65tpzt5lezjbfbbiqky4q.b32.i2p:0
-ognn4mwwtmtjbrnq2kur7spcfohivxlrvz3sfamt3t46pk2e2ibq.b32.i2p:0
-ogqdcq2igslh3n5jn3utz2vpevttul366bt2246vilfnowuyvova.b32.i2p:0
-okjamsyd4wutvhfhsffejwk6ioru4mmvwagfssoy5hcocg2gj76a.b32.i2p:0
-om32whhwvcsbrf4g6uh5hupsl67oapccourkxyr7uf5zwaqxtxbq.b32.i2p:0
-ommky7qetuh45h4lk3raili27fnbhsgxv3zucinoaymnymo5735q.b32.i2p:0
-omngcjfwtiyqwbfqqggzbkttqgm3blywu43kpto2py2e4gp7fhra.b32.i2p:0
-opnpvz7mzfw6nypgmnn5zgtlzx7xuc4w7vat5bsr4mdtp77kz7eq.b32.i2p:0
-oqrl573nw6my2o5mup6uq6pm5immw3gnviahig5cceges4wfnyhq.b32.i2p:0
-orvshryqq24l24e4dvockx2ekj4hu42otqxsvyvy7tm7hhdjsz7a.b32.i2p:0
-oukeldqgovavh3npgb2by7w6hug575uae24z6uqfdl6flh7ma6rq.b32.i2p:0
-ovnk3wfbrkvvute6vkn5glhdtlxr6nyvebiflvr5l6ws6sorpa2q.b32.i2p:0
-owexluejb3eszx4p3b6zuxyggsxxtkxfgxoylkagfecs3bgfnpja.b32.i2p:0
-oz2ia3flpm3du2tyusulrn7h7e2eo3juzkrmn34bvnrlcrugv7ia.b32.i2p:0
-oznpphdisfvlcjgkvny6ma62wy637nh4vtpxww47ifpmlqkjv3ba.b32.i2p:0
-p3au2w5jnkqugxnkukj4rusvynvz3oxawdf4ajzeyxvfvyzhmetq.b32.i2p:0
-p4tsqwvdpaitvlgaujfr2m2qbr36qiwusas5zkiut7w2wjcp3sqa.b32.i2p:0
-p6o3tzllswm2j4wah35niry4tcdu6lq5b67ehevcx45sae7pb6da.b32.i2p:0
-p7ifeij3vhds3diihx5qimucyzgck5omfkqxc4pkbbjtfu4hp6wq.b32.i2p:0
-pbag76x5yyo5d3wypvtohxmgbtdrjjb35ljnq4w5fpoguyt5mj6q.b32.i2p:0
-pbftrtdthbj5qcecraden3hdvwomqrgseec6ib5h24n2zcivdqaa.b32.i2p:0
-pc4d5v74tr4vz54pbr57ejga765ep6vwk5kox55gfobi5572apta.b32.i2p:0
-pcc6cnry4maul7zlbd32khalaavkcbw5hdjuk4zjwposaorjicca.b32.i2p:0
-pcdlqw2awppohbiued4rffgs6n3lv3thhon3r67jmx2652qx2khq.b32.i2p:0
-peteksofgwgndsdh6ovh2ydkrgpyqgttit4ususs4bzksvdqkbea.b32.i2p:0
-phendyytrqdr2vfsw3kil6yui5vb2p4v5xuddezg57wsdw5uyquq.b32.i2p:0
-plhoz53xhplmyuejnsg5bkfe24ow3pbldysoovuupu6qwb3nttca.b32.i2p:0
-pm4nukrzndd2lvd3shivpjrcbjlontmxhag2xzdf572snwbr3p6a.b32.i2p:0
-pn5cx32ljrvzj6x7hpgyff3rlftextqpp4zn3nkfufrrpnpuimzq.b32.i2p:0
-pnhspu3rloczdbzsysa2iftsgoiy3zgcd22jodmk7zdjanhiemla.b32.i2p:0
-ppe2jfsb2xrmgwugbq7agy44ucb6yq4qbufaf2sh76b4kwpa4jcq.b32.i2p:0
-ppez53yrs6lanyvyxuxblqxiuvhnqvvtafmwaid2kgp2dx2v5iaq.b32.i2p:0
-pqnqwxl7jsrok7vgpgcvlxwlkg6yckx33n3g4xf5lvuntwn63b6a.b32.i2p:0
-pri376r6uuwgnbnevki7c363h4ryfwjza7pcbfswqqxk6hnrkhja.b32.i2p:0
-pscw5yzaj5js2fn7gzrzoj6teonlsohlbnvdco65ubdefpnpwhpa.b32.i2p:0
-pt3mqmvkv7aleja7vattlysu6x7gjnbwqvwtu4skzabvkjztfi2q.b32.i2p:0
-pu6e2b5bz75qnmp2rox252aksllnitv2grnn7qfyzjkfio7w5h6a.b32.i2p:0
-punslpht6pysnlteht24rgvrkmzdd437lnpflojwakl5dy6mbema.b32.i2p:0
-pv6g7uin653rerdiivdgtoirjvokjowi4b3fwatszdlteyos3i2a.b32.i2p:0
-pvqyvn2lpvoeyhgcgunoqtetkrkp76iegyoii2af4crnlto6gb2q.b32.i2p:0
-pw42656k2vbwxmvrc2qbsz3jslvcxahln7rehsbia5jdio2knh3q.b32.i2p:0
-pxbyhv62tcdqqpl6pbp3og7ajzzcnbximv5kyt3hid3djd3uwkdq.b32.i2p:0
-pyf2csixjugwp6ad3bkry2ulkzj7inc747dsmpk7iebuidk4l3ra.b32.i2p:0
-pyole4gslrmenfcmd4ilqyzvsuyrjyffjbw7angentqjkkljitqq.b32.i2p:0
-q3ueujd332k5qjxdqkjtjlgkm3ktvdy7ats4c2ogcvokog4wm3vq.b32.i2p:0
-q4o7bf37e6afx7evwdyovsqptjwo6td3c6qtjh4rtdngp3trwi3a.b32.i2p:0
-q55g5g6s47hi7pcuomug3vrcd67vji7us2gqmfe7qn2nkq5vz52a.b32.i2p:0
-q6lzsezu4idxpdwro4x6svwz7j6h6gso6enidcxv7jhc2gbepuzq.b32.i2p:0
-q6o3eqnyg44uzjzqeudsankgdouylshkhdhl7b4bqxkbmdnm4iaq.b32.i2p:0
-q76g4lkosb2sxenh47eutqgwwzjyph52rirc635wkwnxsejrzdda.b32.i2p:0
-q7ntdwy6xueyvghbjamfrh62aqtuu3ikwg622em44pa3czomrdjq.b32.i2p:0
-qa77lz7dl64qwtj4fxxlz6otkuvv42dciggnmx62eobs2xqi3vlq.b32.i2p:0
-qaqvxmyvq2m4wombmtaz3our3qmp7eet3qle5flnrs3a5wgfhxba.b32.i2p:0
-qawed5ou5vb42ugi42goxr2s6cqzpyh3s5atkhvfvyhyc6anxyaa.b32.i2p:0
-qddg7myylinn4tw6kdjmmp6fsyetkosnrbp2gsjx77tmkqyqv6ua.b32.i2p:0
-qelsaseevnmz2unpovh4nbpjpshjg45iudiaf5zbngealwwuxe2a.b32.i2p:0
-qfbughfr5hhgoomasyviwk3zin24uerpl6urz5smzxc2div5ixxa.b32.i2p:0
-qfl3i45ipgugo7ueswy3ynnbaet77xawiplvmm3kp4fj72qvzc6a.b32.i2p:0
-qhuk5zq5v7h5p7o62gsxgtqqo7va4i77o5vei6wttxqcgaw47h7a.b32.i2p:0
-qivuqkrr3pv3rul4wgx4o4zon5wegidt5auylv3bhebfuj6oqauq.b32.i2p:0
-qjdftbhcaghdslzxjqx3nmem4z5p5jt7e7ou5bdz5llnqlxshe5a.b32.i2p:0
-qk3iq3wr6emttdilvdqbv6vnqjshuzz6mylwyfo3z6vpjywvnfca.b32.i2p:0
-qkohzoxigef43ro7mf2bd76eyneuuj2vfyremufvufssksbvj3jq.b32.i2p:0
-qksthizqtfdjjxcrahqxkl3bev75k24blagrkoszxen45zelijpa.b32.i2p:0
-qlhklv3q3rrszbrkxw755lpdburxwcj5dkxwicas46flztlkdcja.b32.i2p:0
-qmtg5ukzxemsktsxw2brwmohehyehwlleky3kuzeqzy4ledcou3a.b32.i2p:0
-qndgqhj3cpbxrktu6r7ysaooccqzvselvn2tphu3plx2z5ouocgq.b32.i2p:0
-qnqojlthym7z4gwizcblhpd2thy7v4a6ifme57bzyl3nxzkj6ica.b32.i2p:0
-qorzdjceszf432obxa73tnwhqb7ltxrxlfkkqmw2flmfjhoyv36a.b32.i2p:0
-qp5ppgozzbkuingg22zgamf4ozpe2n5hjlu4i25r6pjqw2ngrhoq.b32.i2p:0
-qpddavnflr5tdmeypeu5lrjjwsgtdhz7hw5emxiyjkcp7m7xysca.b32.i2p:0
-qpo3u565rmgeioruszadbc4vmpgjyoh7qorv4lyefl7geewyyz7a.b32.i2p:0
-qqiakw24obfwz375gfb6muzaz7tr6ani3od6leoox7jwzrizyxkq.b32.i2p:0
-qqmxvujwi4ktgj2cuqmw4kiujkf7ukrkoe5ryy4bjb7tyleplsja.b32.i2p:0
-qrpz67rcwrbpcockid5ml24dtdhhhekty3xd66ekkyatpfjd2wka.b32.i2p:0
-quzkrgzb5pmn4465647ke5lsfbseqnorr6ljvfsxcagj7rzl7hcq.b32.i2p:0
-qv5e4jlcmmkdlmh5spkvv2wgj343vm4yoty2hofuzi4lornn3hzq.b32.i2p:0
-qwhvlprhk3ntswr5xntnc2hhgmvd3bbgzgkbombiibhrsj7k6gyq.b32.i2p:0
-qykavpjbecssape77mrxjxwxces2gbjd6gzewd6zys32uhmnnw3a.b32.i2p:0
-qyqwn5xs24h65rldrle5msyarmqof3lb33uz7sutauwdg5qiuhoq.b32.i2p:0
-r2p5kqr7xjo4ncz7l6ekdx2ge6su2j22j2tdsoxu4jw3u67z7poa.b32.i2p:0
-r4ukdj7c2k557k7qd6siauhhqucshwy2rrkm66twzyh4jiucimaq.b32.i2p:0
-r5d5jgscvs6ix5v646ohwa64vutu7umfeknrc2hrezdjtlr4lm6a.b32.i2p:0
-r6d4moarp22wnnsnmsxqt3s32gzyscaccackcazvimrep7sa26ma.b32.i2p:0
-r6hd3knqi2p6kaw7hybrcf2q5lcarulcczs3sgcuz4yc2saj3gya.b32.i2p:0
-r7bug6wbhevqqlbavouj3ggpa7e57sbd3oivkzqeyagrtxshmjpa.b32.i2p:0
-ra7ztq7oq7jcozpui7c4zv76gh7rjwhq5fkpxp7dvw7ritick66q.b32.i2p:0
-rb7tyjd6gi7evmt5mzvtboramqip43sh72zjxnwhj5k72zfi3g6a.b32.i2p:0
-rb7x26lmepfbcd7wtxu42pf4tdxbe5p5zsf3cwuukd4fs4zhxtba.b32.i2p:0
-rd2cw3iukuth2lwe44q7fipawrne2io6y3fyyv5xew6vd3hos2qa.b32.i2p:0
-refo4v727jmff6ylrpbkvd5emlfr2hamaeh7zho6oval5dmnwlta.b32.i2p:0
-refrtydbdslzcgcsmmph3435qigyajh4q2nvl756f5yojouln4yq.b32.i2p:0
-rfgsjhyvqbunef5b5r2emjuoxx2i7rcsl7gathy2n4gwjyyat6bq.b32.i2p:0
-rg677vpfzyhsckzzcvoyvqdbwtdkqig7lxv4unmxcz63vtr6tgza.b32.i2p:0
-rgbq36syjadm2ex2gftc6xztivckrqzcjszla3jacwfo5hqutzqa.b32.i2p:0
-rizuiypjfhukt3bqnetppoauovuaqq5e6jzgd7tgy24zrwa2ydxq.b32.i2p:0
-rkhb3463btvfozwta37itlkt37iyncpkzak2xhoe4kg7tqafqria.b32.i2p:0
-rl4b3r5h5xodo7kiw4nykd4rhoc4j37kxizzyb6ukgcomyc2qrya.b32.i2p:0
-rnsjgirap5lfhxpb2xczuawgoztb4ptgdwt5rcb2bz72vhtai2jq.b32.i2p:0
-rrm2pems425buhonptp7lbtbprmwwjhbftey4ujvk25nclx7rerq.b32.i2p:0
-rvjzxak3jvwwti7klfb64wrsmlfcs6ceiqhzbbmjynokn5tz3egq.b32.i2p:0
-rwgf2wj2x66xtnjx3dggxhkuy6gvihvur42tbkoej6bd7iukoqiq.b32.i2p:0
-rxatc4b7obgosvznpqrmyrl6ty2yixhi7rpbh45sopqwzglyimga.b32.i2p:0
-ry3iuaabf5ek73otfvchwrqryez3nsgq57bpmzkyzumqhfbhgtaq.b32.i2p:0
-rypsyqod2yq3zagcvvc2643vydtv4zm2ew5r3w5kjzyq2snvzv2a.b32.i2p:0
-s35hlnmumkgdsvj2gepnwro4wo2h7ts7ddjhhihqggywn7qcym2a.b32.i2p:0
-s3rbe5n7lyy6smerpkgr4ictzbvkciu7gxyj6zqw3xyw62rmivha.b32.i2p:0
-s43w4tsmzmddvu2cxugh2lx4o5mup3rkvjhm455u2qqpg4bqlhyq.b32.i2p:0
-s4qlly4iwzevejk4ex5zfqhb4t666o73mvdmy4gpu47tpb775nja.b32.i2p:0
-s5ls42vzfaqzgrjr6cvgkmgifei2rtvj7uzaljkpsmt62jwtmvxq.b32.i2p:0
-s6umfzwe27x7az2yjsgqftjzawoj5lrcrgxldkfwfq2qwobml2ma.b32.i2p:0
-s6vsdby2liaahn2fh7qvrehqfus7gaz3p3u3rpjtfjhm4ahvz46q.b32.i2p:0
-sa3k2xipbuwm62bb5n2mwaqyyjcvxzb53kmzinoojgnjpnqurzeq.b32.i2p:0
-sadnlzguaa4k6kvpiky27izp36er3i5h74l452povbnajqullpca.b32.i2p:0
-saj5uchj7dzmxjv3kdzalgtbqzw6wu4wzxxdiobc23m452ehk3zq.b32.i2p:0
-sbalp2doxyedtr52kj57va2rmbi5npspv4drk4vxnujag72gtpiq.b32.i2p:0
-sdxfzbgwxpf6hbik7k4bqm63wm4xld7qgo3hjlhknnehzxyyeu5a.b32.i2p:0
-sh5hww42vwlsl57cdropaeqmmwozinnr2tg6wq4prg5wrkusvxja.b32.i2p:0
-shpd3cifcjoebw6pskj4pfmrm7lwecrygjnje55heorhsxm2lnrq.b32.i2p:0
-si5x3fon3ew644friidc5o3syrf5v6kk4pxxjvhibev3odxk7nyq.b32.i2p:0
-sikkmrxv6wat265rpay2tk7jywyvlzkekpolmwyp2el5g7iihsvq.b32.i2p:0
-sjpqyf3rq7ojcalldlybvyyh5lqiq5j3ade5w6txe3473ybhk3sa.b32.i2p:0
-sk7aivked563g6g2ri2saggni7jqzxmucuqa6xkudcgjvpbjsyda.b32.i2p:0
-slbbsiq2pmouqht3hznafnowq7sxzlidmwghfch7iiq64rzdhwra.b32.i2p:0
-sle3cbbdom6rknc3drqtawctpy635ica5d5gerjjdahfymkok4ma.b32.i2p:0
-slnmute5o6h23ldim34wro4zh4qa2pchnskmdpek2nzc7u5oz7jq.b32.i2p:0
-snfinsblh4j4wsv2n5kmkfxbvqzcei2ryfyu4heqy6u73mosep6q.b32.i2p:0
-snsw3ewf7wjtwspiuj33h3vtxnybllurzcwm7u62iutf5phoitkq.b32.i2p:0
-sooo7ajo74ajo6m2yomcc6jcofdgkdoyjcbrpl3nyvvusr6fw7ta.b32.i2p:0
-sorobw22rerrhpx5t67joyqai3ou6xsvqxb7wdomtnwnqztm4sga.b32.i2p:0
-sotpvcqqzzmty6llimwlvknqsdcypn4wsnwk677kepzmy76w2gqa.b32.i2p:0
-spbb34lslk2tldwzr4ydi2culk7sxgl3imb2gg746xbxqqcj7vzq.b32.i2p:0
-spuaa2y6qsaywypklz7itcb5klesogef2x66m4flws2r574qjc5a.b32.i2p:0
-sqjjqyrhh45jpgfp66idiirgh5ck7f4s76ee2l5bli4obsotu7zq.b32.i2p:0
-sqjorsqambyienumg5qpw3foftkp44vpsd4lwklgbl4lag4mm6gq.b32.i2p:0
-sqr66feh2g3f6bknt2tnltmnhqdkzoq3jhdaatfusshrv6v2zhma.b32.i2p:0
-stltasmf4b54srrjb3mf7hjtjvmvvms26btxakccdtllgrm2qzgq.b32.i2p:0
-su7d4biurihkyr3qeea7makkxzikxr5zi4znvryh3bjespppfhxq.b32.i2p:0
-swmtaospvaup7me3dvzlw5xoeohhj4zn5q6agivif7kxtseweriq.b32.i2p:0
-syhxehvl6rublw6k5ysmzcsqrzdsnd7eqrbwalfkvhgfccpu2osq.b32.i2p:0
-sykjw3jnb7n6bo574wnpiaxhp2nm4gc6hc4jh4v6trsbpboysooa.b32.i2p:0
-syqxyl67b4hdo5u3jtkkzsabccvtjaerpushov7nrc2f42x67fja.b32.i2p:0
-t2e45js4dn4cfsyyevm26z5ltvmu6lftxziji4fm3v4v2t3ykaoa.b32.i2p:0
-t32qcc2tbjgqxrydr2txgm4ahhhae3zkkojmguehw5gsbtrdvxsa.b32.i2p:0
-t43qqzux7ik7kki2rxtillcgbxrznuhjac7wtqh52sqovk5ay3xq.b32.i2p:0
-t4notlid4bejwz2tzucpvednkeuskenpnu5sqcbdhh3lqouigqxa.b32.i2p:0
-t5cd7q36no6doxduuvk5psdx47zl7ousnckjgw7c6zr3o3ke7ffa.b32.i2p:0
-t7gbmefspnynaezmvx445fjapp24pjjf7wx3evpwlmolzyu3wi5q.b32.i2p:0
-tanmhvkoyd35kf6a2nhj5rmbwpt3shc6thypsle45my565womjya.b32.i2p:0
-tbqehmm3nuuf2spwsjobrc4hg6uxji4mdelivhywz4b7f5lv6rka.b32.i2p:0
-tbrjczwl76v7ob6hon36z6f35otpv5g467q33pgzyyakp525wwfq.b32.i2p:0
-tcx3ftsdl36ukysuuewydapdzuu4alewyg22squei2wda4a74tba.b32.i2p:0
-tetoqjagsf7fpejajiwm4rosqscy5huqbz5hcqgfuha5tdfnlrnq.b32.i2p:0
-tf4tozh5unsgyzpdsmrdcpbgekw2agu7tp5jvyclzcs5kjudwwpa.b32.i2p:0
-tfuvti7yonn5pjptzzvpshh23x4rqjvm2usolrbnlu42laj4mhyq.b32.i2p:0
-tg6goh3flzmcer5voft2nf3tudm7ikyez334zry66vqxmc4ieixa.b32.i2p:0
-tgt7rdhywtlwob47flp6ccq7prrbh4ipnwm3xszuykq7be2pksyq.b32.i2p:0
-th3dj5sqw75lga3tnffbsywajxafv7cvlb7sed6w7q3w3sxuqo6a.b32.i2p:0
-tj2upmck47iktfh4vncmyajnkbatqglqzy4coqef7wioor4hbsjq.b32.i2p:0
-tk63xbzug7def6esivofwq2h2c53ar3ot7hsezdq3amxqqaoyr5a.b32.i2p:0
-tkzuysa4lkad53cywbt6sgpcndvvvdkjeatpkwyfweorx7rfe3ba.b32.i2p:0
-tl3xkknuukvyinyhvt7saz3tvz24ptgyqtzy3igygyfapcf2o3lq.b32.i2p:0
-tl66bkfoqu6eameaqtlwrvfttyc6xj3s57za3hd7omnfnjg3i44a.b32.i2p:0
-tlfttkbshrcixu6i6syntl5xjsoh6mtgfpix54knahyeuhlju4ga.b32.i2p:0
-tmmjmcrwegjke5fzv2hha2wkis7l6xdaa7fkq24ge5rbvqpwxzpa.b32.i2p:0
-tobdew6554c76jhrulcd2ssgvef7dryini2xjxem2zushe37ycua.b32.i2p:0
-trucvlawpufrszky4zzhhxtddnhio4mnqawzc47n7kik6i444m2q.b32.i2p:0
-tsfr6zvcgsmw2ekaxqqtkdrnbib5uio7lgmrtmscrvwe2d46g7jq.b32.i2p:0
-tsrlbxayhihugr723z6rkyafglnhcyzi2zhojzsyfdjsqkkd53bq.b32.i2p:0
-tv3x4kddbu753tnlghgh3txogp26tlydt47rl5scx7eoxgnocf4a.b32.i2p:0
-tvbutrv73xhwqbtosmbp3cesdyc5bbtslay4gjsf7rzdx4ztgzaq.b32.i2p:0
-tvotv5p3emxxnti2bnvucbfy4to7gxptwvh4qznuhy62hghnju4a.b32.i2p:0
-txpr56jvbf3lmqgaozqdqzgckfpugzyd4cwplkjootvf3hk42ibq.b32.i2p:0
-tyfkhz6ggpi2rykez3v3j5f3evnjxfoau7ve7m2heaukrcqiui4a.b32.i2p:0
-tyvsuqy36cx2yvf7jhnkd5ojc52g6vxl2rw5qshqwpk63ptovdda.b32.i2p:0
-tz5txdipkxcnydzcsuqw47qxdvpob644u3cttlbrbfg3zp75vl7q.b32.i2p:0
-tzudbbctweb7rpnf2vswuw26j63ysqztsbt7lfpfj6xautueiklq.b32.i2p:0
-u2tnrysboqqwjn73awg4hfxtfjgbqab6vrdgyu43s672jdcanhca.b32.i2p:0
-u5ixxcd6slvzxouj532njusx7ec4wemrfwmg6gwltlnkruubi63q.b32.i2p:0
-u635477uxqs7z4uvwx224u6ojn3c3ewcb66f3j7qlbzqyrrevxja.b32.i2p:0
-u6wrw47yfjdzk6a7nc6c6scvfokwuqmvuhxehqvymrv7owiajxia.b32.i2p:0
-u7uklnwthbrynr3z2gc3yxfmi5yoemsugjbb4nm44x26f25vxp5q.b32.i2p:0
-u7ygn3heosxu6l2die34y7wteexfp6h2w5j3nhr424yoblysigyq.b32.i2p:0
-uags6hm646f2qsyqfhzjt2xlnjqbiopiodghywosdgz7bwtbggta.b32.i2p:0
-uc52rzz4xu5ikx6hl6r6sqxfmiyyxsffpcu5frrtepczidwjwuha.b32.i2p:0
-udfxh2r5yfu5z7ynzacur7p3g7ug35kfa33ghes2bazpdivxlhsq.b32.i2p:0
-udkwqdo5odg5npn52rueipghn5omhvojthzdmvcvuomgzglum7fa.b32.i2p:0
-udzbx5jyvrp4g3iujlca7jnlaaaa5m3e4jv4sbr7tvp6k6cdjc5q.b32.i2p:0
-ufgoaa6g746zzpphuvxuomuizkyfpz45chqta7skrywqq6cjbqna.b32.i2p:0
-ufittrlr4eautphuqzuotc7b3xx27n4xgy5afm4foc6nsv56q7ka.b32.i2p:0
-ugw5zbhs2pvsgxieklmc6z4z6d5cvyux4pctpf2udhjgxvajot2a.b32.i2p:0
-ujg6b4cyxhi5pf4puwvwupur3iddm23uibapigpwl4bstvlt4cva.b32.i2p:0
-undzufsjeb4qlf7y5llh56tji6zlhtshlsyht4yjdsa2k4ayx7vq.b32.i2p:0
-uobwophnzqq4yhpp54aisud5ojgrxq6pasmq4aq6qw7dhgjcoqpa.b32.i2p:0
-uodycjdscpurlego2nrs7ptoze26p6236t2r2tax5ubdgi6duqaa.b32.i2p:0
-uohuxnjd27cftarbf6kh4czmotwvstpon2sgs2vpffqkgmg7guxa.b32.i2p:0
-up2kudwqomqrwvfognnhz2mjwqvkgpknfyscp4ue5ioev3q4jd5q.b32.i2p:0
-upme7c64dwjgbt7w72yf5ydl3dyp25dtenrkq6z3aw6hbircqzsa.b32.i2p:0
-uppxodf6bz3qibvpzzvtedl5lk3h7fslrwmed2cmqvdpgtvqkv2q.b32.i2p:0
-urqlr3cei7pp2cruga4txxmmvel3bh7nsbqzqzpe7omvmbm4v75a.b32.i2p:0
-usgqijrwhtwgoekjcr26yqcgpncwpsescrr3eek35e3rhkrtptoa.b32.i2p:0
-uu47uxdqqtv2pqorbaxnhhfmcsxmknvpreambqqkosr45b44h5ia.b32.i2p:0
-uv44mjoqrj3m3gzz5wxlnszt5pvgk3iqlc3pmqfe6un6gxays2cq.b32.i2p:0
-uyshm6nokdjyq3l43224at2rigpa4zmiyybuufyq22t4l65ialmq.b32.i2p:0
-uysvdsh2bzicmdqqdl7ezuftxcywzapohbzl5ap5hyiinki354mq.b32.i2p:0
-uyy4dbfyx2i2x3goobc6uxj4nb7ktzsu72zlksypjfisgka3xnta.b32.i2p:0
-uzgfmsjcbjxitt6bed3p3gpdzviyop2rz3cxqyu64ec3z2r5imqa.b32.i2p:0
-vbzp4sjkgqwymn2z4ikbae7rv3clbo7vv4mwv4ft7tu7ubrmbeha.b32.i2p:0
-vcksnyuyw3i6hfviob5yzoynq7okxi677bw7224273fjhsk2kgra.b32.i2p:0
-vdpfoahxse7cjciw5l7ffbwzc6e4xdlf5ulvrk34mzm2gy4mhlwq.b32.i2p:0
-vdv2aitgqica4taqcmjexw5xfbrfbhvf5kuxwvfjf3yiki5a5cjq.b32.i2p:0
-vet6qwwa74jrqrjzcm7ylfprzwpnt3hlzjvkbnaoiv4o2zzkr3sq.b32.i2p:0
-veucihmd74nnumiunvruyjs6kpjs5sqw5dprldlzcf7i3h4igkda.b32.i2p:0
-vewdrismzwnlxlvni7slpq722wlwfami2elghudm2ofcjhpjcs6a.b32.i2p:0
-vf3l3f5unlwrfmr3fiphpomgslxgm6m4chg72itf45yfu3brmy2q.b32.i2p:0
-vfpzasrsrqh3llkudmas5fymwn2ohswqi3vakclgm6fn4nb6s5xq.b32.i2p:0
-vgkou4ysuxvhlxrwf5n2ihn4ffyvvedluun47l6dobi5ycziy3nq.b32.i2p:0
-vgu6llqbyjphml25umd5ztvyxrxuplz2g74fzbx75g3kkaetoyiq.b32.i2p:0
-vj54d2pkdeqvcuj5ykeggr6jnhhnmq5q6qe7nttvb6yjetweadma.b32.i2p:0
-vlwovj6fxzvtsypnmslocootmphezr5txanyfz2gjhn5lanrn2fa.b32.i2p:0
-vmatpbu2vf5p76k2emzg2tjyqi6p6yj3cl4z32ncdhz37ubprkha.b32.i2p:0
-vmbyttxf6sw6ivdamftxung44mktqb4vphmm4lqzdqqpcmksterq.b32.i2p:0
-vmoogdd5lztt5wpzkwhd67uwnvpupye7ycsbz55jl25sueowcxxq.b32.i2p:0
-vn5rsr26rp7yxrqliq7vo4zb6aoichaybd3urvc5eedaspxjp3la.b32.i2p:0
-vnxjmzogakc2a4xn5w4qormiqt5khnjptnoaro74ehinrv4q3yga.b32.i2p:0
-voi5u3azhajnt7476tcikl5mactxcvtsbnrzixwkj62qhpaw5ujq.b32.i2p:0
-vpevx6tl6ma6mnlj42d4fke57en4v5r76yx6rcmhtvw47guo34uq.b32.i2p:0
-vpmkctqhkdqgkekt72srqm4sqaliug37uq2wp2ywady3p235cpaq.b32.i2p:0
-vptzpxba7oys3w2htjgh4uxogaedursdh2yz5k6e7yh4b3pokuna.b32.i2p:0
-vs67sj5crkcjo7m74tdunzefj6ahgrgohs6egj5jxmneszwaoo7a.b32.i2p:0
-vuqk76jvxfk55bkovqcmmkvycmndee7j3tuv7ezdb2slrfpjyvoa.b32.i2p:0
-vxokhkidetjp4tjrj7idojx45hguhnl2azvqnbulougvdkstf3ma.b32.i2p:0
-vxs2es6f7uw2uuneslb7ipvmg6kqh6ytpjezoj2ptwx7od4jqmxa.b32.i2p:0
-vziy2cbrbvliqpi27feak2hiewovxtlkqppsagtaxeib6nkonknq.b32.i2p:0
-vzqowkd4aoyekapcskylli77aj3e5fomixsjyiawnldzj6c5nxtq.b32.i2p:0
-w2a73mo4grdgwvkzdsh6nyutagd4bmywywacxviodw7xnof72aoa.b32.i2p:0
-w2mgaza75amrvfocl7wt6v7eimprlasuj3bi4xezdr2wyqhkxzwq.b32.i2p:0
-w2zi3xos4jaz3ft5yca2x5zf34esctpmzqlqpdrqntjmi2o3gfba.b32.i2p:0
-w3hyqnlueb4yv5lkzj3wlnrjp7fzpxnig6x6m3w5du2ptfjcm2jq.b32.i2p:0
-w4arykcvc7eckzuqr7kvs2njsjpknzb6vvsodpyzp6tvu27bzoka.b32.i2p:0
-w4k4gm3chiyskfzshilxjchpgtpx2xmc6euvkyzkyjvzvdbqroma.b32.i2p:0
-w55r4ykzu6qt6uhp33exqbqmlt357cts2u2zoi7hkuphqmv5iupa.b32.i2p:0
-w6jl2gubyscdpubizes5bp6s42cito4k27xwcjwh76rvuik2prha.b32.i2p:0
-wacfewi6ehmfxvftxqmracfh7se2t7ozl62u4hsuyd4c5xfzuajq.b32.i2p:0
-weidpvshind3dnblwtb4zpssazeenkf7a63favavkc4crhqdk76a.b32.i2p:0
-wgrbhqemtf7qu4c6acjicb7uyee6rlinafyysvxc2yocq4t2ilca.b32.i2p:0
-wjfukwyohljaxgv4woewdtpoxi3q6hnwcnefpgrtif2kqfrxslnq.b32.i2p:0
-wlepjf4lxs4e553rtpoys6kqp2ozcv4pqjwzoybawcl3zhrdvz2a.b32.i2p:0
-wmly6cz5j54w2g2gibnhlpvuhh3bky26cq3a5jy6dp2hg3hc34oq.b32.i2p:0
-wnp26nyphqfmq3udocgcwenpsgfwk4ssw53st4wvwt6mwf7wm35q.b32.i2p:0
-woanasilvwu3yfurvhvqj3lxd25bzj4fxwy3ef3qjbso3cozvyca.b32.i2p:0
-wpnewole7fofvwvrvkkgf45sgcverlodocu7fstm2axp5jfykraq.b32.i2p:0
-wrqu543ssub7kiwzfug4o7m6lc5ibmaamdc3o4uo6a7ntxiqzd4q.b32.i2p:0
-wsbf5tpo7ecsafusflyym72k6tbyclgvqav56qafvyc4j3spzdoq.b32.i2p:0
-wtfebbwmsxoywu6nw5cowlxqhtokxrxftve2zee6flvrpqg4j6ma.b32.i2p:0
-wtoh5v7xm3wx4rqutbyvqaixybwlprx5ua2yiv2gac3prria5emq.b32.i2p:0
-wuikfwkext6lbl6urhoysr2abcyff5lkm2ojr6mfenqq25nzlluq.b32.i2p:0
-wumjwpr45uhvtggq6jkzfda47e4iqk2onizw6vn5po3bd3uqcduq.b32.i2p:0
-wv335vkr73gsaza4t6foqypnovccubvwfsarkmw3xtc3t3sncmya.b32.i2p:0
-wvktcp7hy4l6immhi5cxyz2dlsbhhvtcmskjemrnqehacnoap23q.b32.i2p:0
-wwbojywnrcf2mci7f3zgbomrukcm4d3nv6pttb3dohjpge2sz27a.b32.i2p:0
-wwbw7nqr3ahkqv62cuqfwgtneekvvpnuc4i4f6yo7tpoqjswvcwa.b32.i2p:0
-wxfs2ccar4szd66dlmlijh3i3r4muehqjxjmabwbb46cq3gpbsoa.b32.i2p:0
-wy2udklgydh7iknnffbzvldoiwsct6dy3o7fjcsjcdjoq4b65vha.b32.i2p:0
-wzui6sc7667w7aabs6iebiex47o7cysxpryfdaltaklw2z2xgtuq.b32.i2p:0
-wzvki5234ffqhri26fqoxosqq3xengl23eoitkvip4mp7aipo3lq.b32.i2p:0
-x4cetuarbwiqphebitvgv4x4kzh6yhyyvu5c4yjlm4jsyl4bvs5q.b32.i2p:0
-x5qtgyzzgkovoko62l6n54p55xma5pbstbp6t6xc6hbugxz5ck2a.b32.i2p:0
-xasewpiqpzhyggxwsajmnkrppi2ozmapqv6673zuuymoueq67tla.b32.i2p:0
-xbetybs3nyeykskasolpatj4qrfnigz7a2bx7wcsyrniqd3usnaq.b32.i2p:0
-xd2byhr22rqkawocapbxedovmifyk77qrh6br4ctx7ny26hpmusq.b32.i2p:0
-xdoonpwnxhr7sjoyca3lkqsapmefd2puyar22ztocod4drjju6fq.b32.i2p:0
-xdq2g4tkaukzcu6mnvdukchinma7koi6c3noflpjabrzjrgeumfa.b32.i2p:0
-xegcohfrnnnuz3hdmb7r4e6pzxbmtg466n6mty2oz3tcoqutxj7q.b32.i2p:0
-xfyzfugo3qtfpq3s5zccbbqrxfkgy3ttlqhz6t6ovmtgrsuyce7q.b32.i2p:0
-xgbz5vpek6vaeej2zejxrjloqg2sqb67gim72qqpodqfq62rflvq.b32.i2p:0
-xgqzxudkvgbqwosaha7zb26jgza5wb7m66727rk4v2zj72xgg2ia.b32.i2p:0
-xgsk2huqghiftyznr6llr6ztepo523hiwqscxjpawcbme7xtjrta.b32.i2p:0
-xjebyiaydsbb76gqzetsmccgh67oeaxt3c4mkwmt7gjlfym266ea.b32.i2p:0
-xlfxusgnzpmatutaredcvx27zoiecno4tpxm52jicdvn4sr5dyya.b32.i2p:0
-xm55wnfhgmsy4wz24swjs2ziguheut6y72kht4ytwyfdmjsxslnq.b32.i2p:0
-xnb3pxtmai6ofbarycclwwueaarn4r3zt3zgkeepo4pgmswqvfcq.b32.i2p:0
-xnvsgbonlja7cmeokr2msvdelqlasbkwgqndqg7eakw43t3m465q.b32.i2p:0
-xpqubs4ftu7ym4xwrirlz2e36gvyjkil3chvq74bj4lf7djcrw4q.b32.i2p:0
-xrrx2rcpj3zefshtt7kamz3uflnwebpv2gkgd6vlrdazxgln57gq.b32.i2p:0
-xrwuqylcgkr2ovsf4pziosd27ywd7pfaohnreoyzm72qlnvoktrq.b32.i2p:0
-xtxh4wtmbjls76wxnehe57etubuqvsdiunwgve6kwjt4acwswnjq.b32.i2p:0
-xud4fgmeq4hl4cgsbjn3ubz2iyjguogskn7wreesvpsm3ib27kpa.b32.i2p:0
-xuivvnpcj2rhsxmkyyjzmyq6a7gwgusnqwdklgimamvkzu7rnnmq.b32.i2p:0
-xvpzaqftlfx2etqys733mndm7jr3l2j3if3wskfljzaow5s4rrfq.b32.i2p:0
-xvtvmaele7ns725mjaowsajpx4bgfecburyh6pqmdnn37cq7cs2q.b32.i2p:0
-xw6ble42juwkfrjetb3hmk2ep6jnyufhutoenyrou6ieoqiomw4q.b32.i2p:0
-xwlkpubkvsdsyaeylqfmxfk43juk6sz3hxnmwe4zencjq77aznea.b32.i2p:0
-xydzqrwggskdbmeqrhgt6alroglzbkcarzdlhabmvrszm5u6cfuq.b32.i2p:0
-xyhlemqmoeusqbbzr4oqph6kgmvm3a3lrbuanxkmyetwohxoynna.b32.i2p:0
-y365lf3vlh6vg4rs6trnjc4ia2xqplahk26y3tyqjly2q2vpfnqa.b32.i2p:0
-y3equ2tc6zsxqtndugsfzottuenfgxnl7eqgadmnzjkoigxvseka.b32.i2p:0
-y3occl5rqc2mz64esu5mqzoyfzlbxop7tttf2b3gyxjust57txfq.b32.i2p:0
-y45xhqkb43ncokfwhsmr4z6fwykuit6o3p2kbso3emv7stpiwwoq.b32.i2p:0
-y4njm6ftdn562q5thzd3fvb2f5mbi6bglmyupukcmcpt2tuo6slq.b32.i2p:0
-y5wr2bw3rt4rvw7hqqj7qtlf7vdds6zk6cs3mu3myyduasieqoka.b32.i2p:0
-ybjgylnhvk3fzyacxvyh6dwvrh7lk273qh5qws7uquvrhhwr6rka.b32.i2p:0
-yc4xwin5ujenvcr6ynwkz7lnmmq3nmzxvfguele6ovqqpxgjvonq.b32.i2p:0
-yemrkyqmjzwwn2yast2ga6dcnsovnxwip2rjpid56grdg7itugpa.b32.i2p:0
-yfplj67xwcblbiu4ozddmzlmjl4ifa7bhkzzu6fu6jkoyqui6v6q.b32.i2p:0
-ygtc5m4mh3qhi7tct44gxqbenhkasp2y4ydjn5qua4l5vh35osdq.b32.i2p:0
-yj3v3ocgldnackxptsjmwasa4xzxj3it6rtuhmlpxvwlq5kmyytq.b32.i2p:0
-yk2srkdlbm7kebv53dx45ss7q2fjcy56m3gywqvw65eya7co7hgq.b32.i2p:0
-ykppjmwunzqzuuqc6qqsijomfzdgieeq2mkidapc4awrww2ninbq.b32.i2p:0
-ykv62rivlxurq2wkecagzs76tulfor765c237bsjn7jt4436kn2q.b32.i2p:0
-yllvqk2utimxjtoyzk7l24s4n5sqp5dbn5vwsbt3g3dd6h4dxseq.b32.i2p:0
-ylpyfcs24ij67dkl7ighyou4z2gpfhjlt2iellj2ad4ddrxci63a.b32.i2p:0
-ymo2cnldmstzqlsdhx7kurii7aaffrhpgafxlli3s47pzbfe5evq.b32.i2p:0
-yny6zqtb7qve7wwfctsozhzhbq4hyitlqco4uhc5q3rvjex77oaq.b32.i2p:0
-ynzhhxlieigtmj6l7f2dq54ypnsaf723au7o3uhnismlgnkmcqjq.b32.i2p:0
-yof4yvv4agwhfmicj5u2drem47nvfkihnp6bil7ocg65gydyzzcq.b32.i2p:0
-yojuyryq6vfoy2mftrdmybmq2hjefuzrwmpqqfvk2kd5hptgr3qa.b32.i2p:0
-ypbq5aleoqqoxto4tkxlmlxh2hrstjxzpgonj3lk7dzweahs3hhq.b32.i2p:0
-yql2k4zjl64dtybuculjgg4v4u6sje4smnyay3vslv7irrigzxka.b32.i2p:0
-ys36rtuedg44sahelbysqi2mbc2l3rcfdy33zdvhvfkx5uocacba.b32.i2p:0
-ys7np3pmfhiyq3z2rcoeylb7agfbyfuhhp7ky2uzvvuzswad6cia.b32.i2p:0
-yuqb55drzrhxfnvobycxqau47kibaaf4voamk3kxl77xbb42xkqa.b32.i2p:0
-ywfauauaekbrxgwaahcjzifemzdq26xsshw54sg4bpr5z74scwiq.b32.i2p:0
-ywpsgu6nlnf2l4sy44tit2av7hfzwwttbjvwbtsbtqur3awiax2a.b32.i2p:0
-z34pw5tlowwi3gpj3ycb2dptgyuq65bpj7w36xahslgikggo5eaa.b32.i2p:0
-z3j2xshl4tpbxaybcprhzq7cuz6urboqoxvvpnfriv4n2lq72jsq.b32.i2p:0
-z3pgyfiwfzcd2g7v4rs6el5tvc55y7a3tai4gcbpso6flaejckea.b32.i2p:0
-z6mlyrxcjddpcaoumxnw5peulnkvj56hgwqmnc5adoutp7piujaa.b32.i2p:0
-z6xsstyq4zynzvagwv3wr7htz4vxttrotzb5izefotlwqm7kjtua.b32.i2p:0
-z7cjxpy4taui2ka3ekfqtoumsb7pg2sok3wfey3m2roeuppcrzhq.b32.i2p:0
-z7cjzfmv6wadjguzaavu7pfsqhujbczspbf5sxxrqndeovu3lt3a.b32.i2p:0
-z7gkesbkbl27lpcpbnhgfofjz5fhnvljzfvyydu7ky3odzdqs4lq.b32.i2p:0
-zafd45c2hzd4w2t24qtjqqbqm3z4hayb6vadj6sd5oukjyij2ara.b32.i2p:0
-zbkqcqtiiw4nwsds5pjel6alr5i4hgiyqf5giwurdygfysacru2a.b32.i2p:0
-zbz722dh7rvu6ugdydmlmtgfyc7rnpeslae525c7mhr7rgsekjba.b32.i2p:0
-zcwgqw7hlw7437a7au6n6obljdb4arnshoibdqo6voree4xiznoq.b32.i2p:0
-zd4ns4zcyvgpwkioftiiftgj74n6mf4m4ieq6aedqaznmdi6rhdq.b32.i2p:0
-zgwseerxwqnid3zhculzuqbkhghthsbvsbnqowredostfqlvawsq.b32.i2p:0
-ziehuxdpyg5dvvnzedmcqxszdcflsrx6fqmgzb7odefqwqaxrs7q.b32.i2p:0
-zk2r7kzzigzu5kz67xnrbe56u5walngylcsk756bkmt66cmeeydq.b32.i2p:0
-zkbjgfp4ouockpsmpbdyli4ilo7f3lbfjsboay3nf47ymir2ldrq.b32.i2p:0
-zki6halesukhfel76pziutgica4zrp5qtbmlmgyqf6dnnomk7hja.b32.i2p:0
-zkij473aummp6rvwvi7wbr5iio6xu2uh4rophbhyot37uxhrygiq.b32.i2p:0
-zpvqqdrcnagad5ayutf7hkp6prtvrbmknhqdul3qweft7oa5ikzq.b32.i2p:0
-zqft7c6riv7aux62qwe5xfqki3dcb4urvbfy6m4wz7f46j2us3la.b32.i2p:0
-zqhoqgf3enj2pv74sjov6dthpr6jqafw5qqzzsvnfdqzycychxpq.b32.i2p:0
-zrrki54mn56fytizkfmhx7eubea37padxa3zliwq6gtknrsxv2aa.b32.i2p:0
-zsfpcnbk4g2bwxl7yy5ebrcvlxd5gpcxatewdrgpige7oqykunwq.b32.i2p:0
-zszq7enaxbz5p3f3idhfkkd2u2ygpeqwj3o6hkofffcmllnymwqa.b32.i2p:0
-ztr3c7qz6v4hrnegmkzjsr52wyi4u6ery4m74sk3m77oup2ws4ka.b32.i2p:0
-ztyxbjae7ucfyupxpy75jwpzdktg4gbvhl43nh2crwqrx2uhveda.b32.i2p:0
-zuamj63ad73jmnw7xnxrmjsbjg7vg23j46w3mpc2udpcgjfkcqcq.b32.i2p:0
-zvchlrjuzqdlx37fhibhnym4y6p56vtlymujjuzhh2cp34yqfrtq.b32.i2p:0
-zxsd3fqczh6ddgejc24nnmb3ww7nalieq3a7cs2mqiy6tmff3wia.b32.i2p:0
-zy2ywvyqds5bgdoo4tgbu3bwjp3ygyn3zfuby44jemc6xa6fbwta.b32.i2p:0
-zzre44vh766jgfordw2ehu2r6p44j23uyovgvm7iwuhp3g5iz4ca.b32.i2p:0
-ycdw2e4ufgfwhcqna4g3m2qsvaly23ozaexawcj3x4gtgcehgwujjgid.onion:8333
-ycfvedulkprd5bmivqejur5aptcs47daqtcvzotnnhfvwu3o6gcp5cyd.onion:8333
-yck6l5ffw6oszgtoc7et4fytvp3sqdf5awyky4tlpgem2n4y6icxqoqd.onion:8333
-ycnepnzktkhfysqijlgbjk5awivls3eiqb5kjudotjvnvlbe6ah2k5yd.onion:8333
-ycwrrabomoixkxggkxldyxkqoc7qqy2t5wxcsxjgodlvuydwch6dqoyd.onion:8333
-ycwwrwkqibvkftpc5kyqs6nf7hrzetrmqgwo4yae7bq5otvubkfsread.onion:8333
-ycxjdh4jr4vun447cdszcoge26pbdnqblfi2osmk5e4uqmrigw7y4byd.onion:8333
-yd2ami3rem3i24q2b76l4ujyq343ycrowrthwqycvpcsofgpwlxyryqd.onion:8333
-yd4nyusqking6tkcwmmopznlxhyfhk3gsw265alz7vpo6toqg3kwn6yd.onion:8333
-yd6b3wtmu6bz5km7hw645omyv65one627xech7f3vnlwkblsvqdtmiyd.onion:8333
-ydforbx54mnz7g5u2mu2ulkomvakdbwxoad6araknijb2i47gkfeh7qd.onion:8333
-ydiqekqpcf536w5uwsdclw5pt4n2fkz52fo4vwdducc5t5l4ghqaxnad.onion:8333
-ydl5kqr2auvie5mtjkm37hzkqh43pobibty4msfzkbu4junpg5gak6yd.onion:8333
-ydojumivjpins2lwgql5xaywbngrmw56nvmtalvfiy7sr42ksvr6apyd.onion:8333
-ydvbxdzs6w5wefifiqsqntpbd7tliofenqih5hlnz34546fvy4ab7iid.onion:8333
-yeat6ea4esvd4nimhg2rcb3ghpusoqzjb44alb3hhdj4d2nimn2vpoad.onion:8333
-yeficzguf443sojjdcmh7lzk7l6y43a6v2jbyk3x2w4n7xokjs4crnqd.onion:8333
-yefjaylovpdhbb5b5bhjx37digt5u62lmzyc54ygtabwdphm3zwd77id.onion:8333
-yeghpcuryadlbxzk6o3ujebmfuumkpoi32dr2ctfmql6vqn5wjioehqd.onion:8333
-yenw26f3i6kf5u2nad6xligxk5iyizjvl7msx3pzjcatiesogdef4zqd.onion:8333
-yeoadueo3ukf6s3fetywtbvgmpvrtkja5rlp7wcp4aich6tfhh35giyd.onion:8333
-yeqjrnnuf4fbgzik74qfhrohcymj7ccbze6ndky4pe673chfsjconfqd.onion:8333
-yernmfgru46g43vsijjv44n7m35tpoznnkd2p2wl3uqzkietukxqxoqd.onion:8333
-yettfzp2vanmkehwxeaugotqcsg3wsomcargvetk4nhwnebrpq7ah2qd.onion:8333
-yfgo33tiu6w3nrvnfyw2nmpcwtfozinctn57566y5l4hfcttuvgff7id.onion:8333
-yfmujam6pa75vm7p5q7gvgkocqzcwm7lgbnodwtmzfw7usy5dvlgqyqd.onion:8333
-yfpqwz4qogg2r5sdweggggz76pmhxtegnisz55urw3egvcq2e3amvkid.onion:8333
-yfpucmv4zspytubs5epnze4xc4joqny52s7ifjk3vu644axwkfyfurad.onion:8333
-yfq3sexjxzuww7tnwc7jj2ethiu5f5r65ewpy66os3ozhoeje7na4hyd.onion:8333
-yftuiua74fspnqanvait246qn6vmab4aoympjd3omppu46jkq777axid.onion:8333
-yfxz53gdbxu5hapg3e5kaa5pyxpbrpiql6j7sfe4i7fqj4blpqpufzyd.onion:8333
-yg5xbesziuiaigwyxjrn5c5hvj6fxef45edl7pir7risnr6un6esjtid.onion:8333
-yg75fc53cicbsarrpfv2s4crpkx6vdjub4va7cvbducwzhsf6qehx5id.onion:8333
-ygczn2llqhks3ohxvfck4ks45ekg4xr3loriyynnejw2jfmi7hjsfead.onion:8333
-ygdfwrg33s3qwiarwxbejalkirmqui3wjz7wfccprjry6bm5la65vhad.onion:8333
-ygh4hx4ugapidwxodkjr6vgl6vkaqvievk2eiie7v3ewuvjvg2mzp5id.onion:8333
-yglvvnb3dk2vh2wwgpcnvm6t4lgbdhnvpy4jfj3ee4ugb4xzvjrrcfqd.onion:8333
-ygospbn7dc5a6haqur4eoe2oj6jttjohs43rhl5m22ltruh4fz5isxyd.onion:8333
-ygowwz67kvvri2lcwknsc5xjdz7ffat5tqkm7fmxrrzfgvqnxoxkvgid.onion:8333
-ygwuwz5autfc4tqluyuoebghc7f6lgjykm6oprynh3h2vfp4xmhiapqd.onion:8333
-yh4edjvpbo55vsankh7e33u77ep7eah5h5gvfgu7t7mbb7kkmjvgirqd.onion:8333
-yh4uoyfzey53dnoj6zm3frihhgwpqfqkw36sjmqsvfnl3rqohs52wqid.onion:8333
-yh5us7dk25ttxkt6miers3bazlm3jiums5nwz6mzd4i6kn5oizjccuqd.onion:8333
-yhddybpp6lgu34i7uurdqg5jznfdajwr7co3twiqf7pgnj4yjgzbnpqd.onion:8333
-yhiswltkrs3upvkrygsuiou5i2njnyxk3gwtsmcr5yn4lfinzifbpkid.onion:8333
-yhjkylctf577degc7ufffvg3gsdxgnx64pdhzfujxjgfhbulmtc7yaad.onion:8333
-yhnzb5pmcbeiqs6bxm3xvzdy2dgblteiswvvtg6vhkum5gjjw7abjzqd.onion:8333
-yhqytulgwdtvozjhuyod2cufnkbh75mgyw43k6w63ah2fzulskfssyid.onion:8333
-yhtxfuf5zxqoqkuodfpmzsnnmtm354y5rtexqplt5l3fkzzksjkkzvyd.onion:8333
-yhvyxjfauptpsjrxrf3oxtv5zlju2gdpitwsabcmj5gdpjr6i4z4ulyd.onion:8333
-yhxcgpy2bwwhhpmgellyghjpkw7cfrjlq6trq2yl3632rxerwbmkvfyd.onion:8333
-yi2k4otmwujg7bi5iw7ewqntnxb26jyplx5xyk7bjvvaut2y2mhcgqid.onion:8333
-yi32omh7hh54oeot4i2ze2tif4l4cwdhzxxn4bzmtqrotfxrepttfead.onion:8333
-yi4gxqy63csutkea3zss2oryz4get22hcfginwcejy65g35ec5t4uzad.onion:8333
-yi4nvghovjd5bzcbhitvezh4uwg32n6r23et633odlacu4eamfym5mad.onion:8333
-yi5x6isngj7pivr5wt6i3drntlqsvbzijpdy254lbjdnihxmfy2cdgad.onion:8333
-yi6umkklbb6vr4j75buoss7kqkgcsdsx5fvgi57h7j5bzuleoe3ae4qd.onion:8333
-yibgffpo7dimyvjlbzfr3dnmnl2r5hbrpxbtcpksthsko6udsrk5uzqd.onion:8333
-yiiyiuwns45zhmkwi3wjumqhnyfkwkahbggd6hrxtnrxfqwn2vdx7pid.onion:8333
-yijdxmlgnfcwrb5zxvchjhgtc5357mecuopminujkono7bwjgqu4acyd.onion:8333
-yise75jksg27th74bxo3a6rcr3huvromhmuhnmy3n3ngcgfpagq445id.onion:8333
-yised7sf3xzsnlggeuioas2of4crrllkpz2gfbdy7c5cysa5sxi23lad.onion:8333
-yisvuvmqtn7wht6dndrqzsdl7vuspxwrmfwwu5o7wldnzn4mbzeb4yad.onion:8333
-yitceyo3wv2mk56omv6mon3n7dcfr7jiggdmzlmtikpoam2otiey64yd.onion:8333
-yiuesqqc73nn7kxadavmlwc7ymciszzk7bxs3bd4fwucaocme6qb7lyd.onion:8333
-yiz7d2lkgk2mftp6i5e2tqhotqkqjgxbdmzbnflwvsioyfydqrvll6qd.onion:8333
-yj3gs4nvumsfztawn7ku4cmner2zlmcn5kke33g4j2vywxsrqmbd7kyd.onion:8333
-yj3q4iustxfcq4bisbuw3jvqc7ph2ggld56mvyxqvgw2tmsinbwlnzyd.onion:8333
-yj666fxjddvz4xzkhtzhh53wvkiobvildczzxb3mixjipqqiqaz3bzid.onion:8333
-yjdhdurh6vqxuykgmuskpabjzjni3ehxxh3zq5redu5hqdmhdw5b5jyd.onion:8333
-yjkojvjsg6yhfj2ln2bpcrh2e6fr42ul3yzsebbz2kkytg7pf2zzjzid.onion:8333
-yjudzsswyvfqyeth2eghfvegxg6z6ubnx72kmqjljhdewrckw56lggyd.onion:8333
-yk2foofoifxgbrp5a45okwbelrsvycgqgw24xv56hmuqxlpmw6msndad.onion:8333
-yk4sercvyzvqxgbgn7srm6eeivlzoa3t4sz363aygcyciubcieihhxqd.onion:8333
-ykh3t44zjojpj76ouqeo662ljhyc2t6e3mike76iqpelcdztgaxuw5id.onion:8333
-ykkhln6x6hcmhyrx5rxaf3c5auh5k4plrpaisits63r33ecwkmtexhqd.onion:8333
-ykqehwl47hwypuhhuuxkpoexocldvllixqhplpsy6ym65vbjfa3yfbid.onion:8333
-yku2clwr3x3ndzfjdk3o4spoztoqy6ndatken5wopgapg7qkvypuqoid.onion:8333
-ykwrwuffwvaxlwivt3hlhyz2yo5xde7dw4x67ygc4xh2t6m4i5cftkid.onion:8333
-yl2preaby2yqyhmviyq46roapupmnijt2g3mzmvwtxptvybz7rbs32ad.onion:8333
-yl2stshaozpyqtut7m6ln47z2qhledknuwhij6kvxsuaai4nwy6fp7qd.onion:8333
-yl37nyh3vujz2fyrz3eoqoteixyiz3dj5rfnnmrglcgcswzbeqbjhiid.onion:8333
-yl3bo5zwwsg5dbhrrcjkvoyvwwxp3kbdgprhe6md52ob2lra7ynrbwid.onion:8333
-ylaoywooejvpfosewxmyxjhc2ahfepjbvuyjc4p7bymwirexlkdituid.onion:8333
-ylaprgwti4dsumx5xvlhul3esf3yi3ebyyubb2dwfgwe3zysv3e6nyad.onion:8333
-ylblnrd2jnfjtustl6yt6pix4mgqr5qqoevunmwk32e6fxq6uj3dchqd.onion:8333
-yldtx7o5y5jf2utrrtqf5yf56akol55wars2uwxuvjoubustrtmuqxid.onion:8333
-ylh3vliup6k27pt2thw4xgfguiziaosb5y3ovee4w6dzwcb6hc6czwqd.onion:8333
-ylsvnjqrcgatkzj5gfkwt6cz236z76yvgpeulggzml3xb7tnbsttjnad.onion:8333
-yluwecwlibf5dw2sup64dq4gs4cfdhtkfhoy5cszrvu75wljeqanr7ad.onion:8333
-ylyuglp5b2p65gmiofhe2irpxswlhecdecg7d27qhcwehegr2efmesyd.onion:8333
-ymgyodvztfs4nnijjnwiv6eadetxjm765iv3ryuyhsq4upnjwncpvsqd.onion:8333
-ymiw3d4klephwuwbkgdpllrs6hssb4svcg2um7sdm3hsnnksbnvj2vqd.onion:8333
-ymnypd7xmz2fka2r4yxvq2ibf7rvdyl6eemppo74rfehu2d2oqkclcqd.onion:8333
-ympp5jlakwfhj2bozw6w33qailkrqbroizxm3pdfxvjdbrkwtyx5iiqd.onion:8333
-ymrunm2vhoarw7rpo6jdmq4mev5hz63umljki65q2v327vmnw6wjyvad.onion:8333
-ymt2hdfgdxo2awvj2k4y5tbpvapj75j7v34tvvlrqy44lsvvdcnjx3qd.onion:8333
-ymuufa5br75liswfrb6pgm3hc6o67gnzhyg7vpfo2qsw3oyw7m7nsaqd.onion:8333
-ymxea74sswjyqvv7jsh74dnvimcsq4rnao5x5g7dfjnbfy67oj37l7id.onion:8333
-yn3avowdk5cox7qz34s3qiz2u5j2xg3irxckhzikfjv5ccjqrdiramid.onion:8333
-yna4zorq57ehghewlega7lb4zgx3t4lgv5k24orv7b4qcg27svymosid.onion:8333
-ync7fc7dz24s32kp6opdkbvohb74obme4jgo3rkkvjzywslxegist2id.onion:8333
-ynilvzuulga2tlv2hcic7ayc5qpd4nz7r7snsyejp4vxwnxlonf4gvid.onion:8333
-ynkv7njh6hj5xewxxy3gvtnu6ocyvu4tgrl3gnw5xxkdpfshalppqmyd.onion:8333
-ynqgzojvdwv2rui2rlechb22e5hwqipltusdnfkv7s65iz6fgrnybnyd.onion:8333
-yo4ykt7hngppavow7f2sz36ajl6w34bw6qrcfee6i3s6jkm6seove7ad.onion:8333
-yoat2b46hzeuhy7n57gjmfxgppei3xnzdxwsl2ipc5ny656j7zp6ovqd.onion:8333
-yobra7r3ketjuhr4g4cfdqumsez4om2eefvmgxrxq7wxnkouzmcemwid.onion:8333
-yogfxdco264tjbbeek22o26lznu2g2kwvs4lmft3ib3xelndagtf3uqd.onion:8333
-yomwxfciljad63gicbd5757og4lypcph5f5mqdou5kj5rowkyotaohid.onion:8333
-yon5gz4q7soici4i7jf2zaciusioym56jo2bat363tr3peoiurransqd.onion:8333
-yoobb72dyt62n5dpsu3aqpqa3lmfj6gfurno46o6vmqdbpwqw32ahjad.onion:8333
-yotcqynj24k2ckilo54hjhftjuvvwiacbzoraqc2kq5vtmsxloswddad.onion:8333
-yp3juo763dmi7ryhkv3kq2l262cllrru6ks5tlzcdlxdakmip3zosuyd.onion:8333
-yp47gud6fjsvjgu54oica4b3ij4zfreactcaon6fx7v7pfbxbrvqhtyd.onion:8333
-yp6klgnrvisq73qg4dk255h7un2k7pbk666jtzc22rxjs2en64ojauqd.onion:8333
-ypaazf2z3t5dqzudlygjjpyb2uvk63guovstzubsohbbeomometn7cad.onion:8333
-ypakyst4bbhh2juqd6r7xymqnrgwx3eajekpg6o5b4fazccy3mwovdqd.onion:8333
-ypkjkt4dnyqy6svecydigttwnsj5x643w6edk6qzhfo2hkxxu4ln6zad.onion:8333
-ypmikts3saaffj2uo5zmkbac5m7xnbblxkbhpw5xtxbamajqf36wgdad.onion:8333
-ypninar2hybv3jdovr7ax7teq6wpzvrw6n74csq7edos3hzumh2h27qd.onion:8333
-ypoinzgql3zo5d3strpmannbkdtndxkxlajwgcpaj4ngbc5mqrzzgpid.onion:8333
-ypp73pv2vcjfq23ltwhojuremxxfknwtgkxsvwe3widlaevyx34pepqd.onion:8333
-yq7s6pe7jzrzj5uxlorytwxd5bs4kljyvp27akdrpang765yd3sexwqd.onion:8333
-yqnal4phy7wz3lsoi23rziyb56bnbzvvypy2mg5ponzrk63qpyvle3qd.onion:8333
-yqoiqt3molj4ygq44zyme5gdbgee7catlf4ndjr4myiicduuwiev3fad.onion:8333
-yqvhbmvc45iy3drl7nceuhugdt2fevwx4x53zafio6h2626kflwtrcqd.onion:8333
-yrambbqlzkm6o5pkc5q563njvrkfallqobvscvpdik5owbdtnhbc5jad.onion:8333
-yrdtnt4lkpysyyrvryqhxw3k427gxwziosdtipf2dcifougwzomdfcqd.onion:8333
-yrlc4r3qfcr4x5wnciutrdvasrpahor3ui25lgdgkxbit3zwtmwfmxad.onion:8333
-yrmpasdjmb77ono4c6rjh24fj5gt7bbjx7nxurytkmxbww2gam6vodyd.onion:8333
-yrqolwaoxpa32cw2zegnaggmniuer66umflznja6dcp7udqpaoanqwqd.onion:8333
-yrwksigpx4foqlwnf6cxwtppx2z2msompig73dkcm34pwsmy5bwwg6yd.onion:8333
-yrybhm2es4siupjnyjffviemvqx24mqj5niwm2wf56spdqlwau44r4id.onion:8333
-yrzwl3rbfjx7eybyjvnjz2y7qmvpnkexkmylqpwsb7ivpg6ch42mmxyd.onion:8333
-ys2muyvcnpdadettzavleh7qrn7t6r7e2tobfp7yxftta7ez2i6rdxad.onion:8333
-yshp2g6b53ndeez34nxnk4bz6cqbzlfxqdggi7btqlwzxzuc7sweqcad.onion:8333
-ysq5rtpfzkz5gt2s62idbsd7secz3jepzlup6hqf5ttdutsdmwg2ryqd.onion:8333
-ysyx5eagwnqpfemz2nhwcxs2c3eueqk5f3jnyvyfqfno3pflcqfw6yqd.onion:8333
-yt2vub6llcegxuucu3iekjqfpmbyz4kreuxx4su2pqcetw7kbkbipzid.onion:8333
-yta7q7v5lkzt4zyp3m44cxcdtymxgmuqdntnagz6h3hwidmqoeavifid.onion:8333
-yti2ofsqg7k4zbln6aqx4zqaor2zpmlsebyljxlu7jczsjqtd4ctd5yd.onion:8333
-ytkkqeik77zjjwabsdlctuum37jr3r2rg6ckxudza7y7tialqr2wfeqd.onion:8333
-ytq4uowr6vwyjmrjvac7aimjjlzylfmhqhn3z4ecenm5dd6u2ccsijyd.onion:8333
-ytqhsolk7pqur5cu2faxruehvx72yiiwb33p4szdnzidjqksanps3nyd.onion:8333
-ytqzrm7fke3kqgh5b62taq7yyejgtd3yxwaifj2pimoqbfq4p7xi7sid.onion:8333
-ytrhvysmp4iq2qumdrpgp54q3ushkf53b6i4oxpddg4rmlk7hbayusqd.onion:8333
-ytyn2e3bkmgavrygpk5rzydfdmhpkercccqcaks3xtnbgq5qsyg4euyd.onion:8333
-ytz6ov6l5ofhjudlfi5k26lsg4v36p7xwciafy2sdau4cn6ozxgmefyd.onion:8333
-ytznm6jwapg5h3firimqb7ao2g7uihakg3gt6hcpfqkkgcyemklfufid.onion:8333
-yu6ilgxjfffdb3fq7srwwmz6ymp3fxberstpl6vdocmxbrrf5e3tw2qd.onion:8333
-yu7c5kjgmlci4arofpgq5d2qs5fvbw3zac52nampn2vc6vximc6qovqd.onion:8333
-yufe3o5x7spybs5tku64r6hzbrc46uq6izky6z3dyvba2ymblvehyiid.onion:8333
-yuhebtpb6urpsrr3g3vk7tcl5lp5dt7kcaj7zpgox5r4x6ptysxzvgqd.onion:8333
-yuqoihr4p76t2yupxuciurcpzsij5i32enjlsynqor25fhdvidx3djid.onion:8333
-yux32z6r5leyhbdrgdpti4sggxyoy336qb73ia6sk5egfli5qsvkxvyd.onion:8333
-yv2ezeqqfeoprti36q4fds3ckq43vdv7vktqfpn2npv6isnbxay47hid.onion:8333
-yv7ainbyxz6wejjhpjgzx6ghcomdwd3k7fclru4woooxcovyjwrp7dqd.onion:8333
-yv7llcydwvi2m4xpnulhgxcrje6vswtsasu5bbmgxuk3lgln37tdvbyd.onion:8333
-yvgzvmh4ngi36zvn7pe3bocsxj6pccafh7v6wmswkdobbxdzh3b56iyd.onion:8333
-yvhvl5bvjp5ljmooujmw74wdyqnhvwlm44766wwgq5thnzctyni6yeyd.onion:8333
-yvnppv3n3hwexlvugfviwv33ycavxdwnh24dps5vp3y7kw6kze36v3qd.onion:8333
-yvsokw66m7kqqqjxb4mntjvwhnpoovoec6rrpqtdze6fdvpbtvt4iyqd.onion:8333
-yvud2f6wb6puec4xq3a6yruax25jydqepowhz65uvlbvblsyi64skoid.onion:8333
-yvvodwqb3szlgkx4egcyq7qmhpyoqxdyxdnksxl6ppnmagnsu4noemqd.onion:8333
-yw7tqaujnglpjmjak5r7sxvjg4gqeubwetm5h54e7fbfn7yx7kgr4kyd.onion:8333
-ywbprsiodgtlc2qoubvot5qm22logutr2dbizmlond4dcifklaxqlcad.onion:8333
-ywkxlaydopi6ygjeggtv5znptkrldzsh7peg6wabkjmcu4k3hmbjivid.onion:8333
-ywmh5zcx3r2rd7zmkyx5kymgxk43lsamie52kbhayqwqyod5togs6aqd.onion:8333
-ywq6oxdfdvlict3cuasd3akvcl47iw6bxykrvkalemrcyqzyzclbf6id.onion:8333
-ywqkdkihpzr3hx6la2lzqsguoqbuwkn36qcrbkhvltd62zdrguprljad.onion:8333
-ywqp3kjwchkto24so4nn4ofq5m5c454btnkux5jxftkkqz66ducu3mad.onion:8333
-ywqygs72qzxbkjekezlhsnrsfnnvm66igkovfoh267ru7ho3qtxtalqd.onion:8333
-ywvpyur4ny6zhfxpsva4mh6cd4htw4q7ylx7tissnxehwg2bid5fumyd.onion:8333
-yx3nnyxy3h4ex22uqdjwephoprte34jelnkpr4ua3d23ks7qxjrqzoqd.onion:8333
-yxa2iu56fp4i4mxzdkmv7xxrluyxtkylqvexuceivx4fqxbjyzme76id.onion:8333
-yxgvp66ll3c6ko7w4hm7xvzofd3cb3ku3jjqc4wihapnyk3wxijafrid.onion:8333
-yxlaxiaatyfnrx3l2vhb4p6d347djzux75gcl2d33aydlwspo5w5wpad.onion:8333
-yxlwpmsjdbpldhi5hlzopision3iqbjzpvyaaeb4yst3z73qbgqy5fad.onion:8333
-yxnuslj7hslwmofh36a37stlm5jjnq46vvvyntf42uw3zuouot3sjaid.onion:8333
-yxq3bjwdrck3lflvwixj2fc2l7pzqnea5l7cucviamoc63a2xozk7iad.onion:8333
-yxreb5ajudnpt3b7z5hyizaj6ufgd46o334wtduuyaakboxwztgji2id.onion:8333
-yy3bnszld2tbbyd45f2j7btrbdz2p5zsuzie27liqr7xgkfh37rcojqd.onion:8333
-yy7rusheh2cq2xghpsdzlrx4gpejgfvsfhq6333d2jttcovhh5jo44ad.onion:8333
-yygxdcvyp6tn46umpmxlsgsi6crg2xjchuhi3okobofsx4dqgwucnnad.onion:8333
-yyo5s4r6wr6p7l5p5umlp7xgb47ugeptugscv4gvpsxvjlwymfpwruyd.onion:8333
-yyr2peqznujer3t63yyhlcasjndbhllvtxxkmcvr7p4yxpuzjrcylcid.onion:8333
-yywmc2hhk7t56e7jun62oidqft6jvtvvlylexihzgcrtkzxe5axsd7id.onion:8333
-yz3izxf6pdtr3ucbriuo4bpgjn2visad4vgocktexnpv3rfgar3kydid.onion:8333
-yz4l7aqcjf3lcdtdcuxoxljedrcrlo3lu6kths2bvjeoil4wqx3d46id.onion:8333
-yz5i6sldywr2mqzh5qmwoqfgsta5f67bgdhqogejjmpengl3llafdjyd.onion:8333
-yzakgornrhzzenpclo4ahyai5lxsg6mjq4zrwlhqt3ff4sblxi42jwad.onion:8333
-yzbka2sygb5eqgrgk2svqin5hl3dfknzfdn6wzwncexsejmrp5wgm4id.onion:8333
-yzh2ineefkzohck7vkwcfe62kvplsly5xn4dmm25fpxbjq2va34bu5id.onion:8333
-yzigosfexpco67cy3e32xehlpwor37fp52my5pwtr2xsnj3mxl7gfoid.onion:8333
-yzijb7pu6mrrdwb7sku2e3epfyrkhl7t2a723vaisqulr3roaxoy4xid.onion:8333
-yzlai35raddd2kdjnukns7u5t4m4ngi5dfrlq72e6lqf2hp5dzkuszqd.onion:8333
-yzo2vz4kuitm53zwynkm7ddfdw5escsp5fp7rgf6uspphe653mvdekqd.onion:8333
-yzqfzw7fgzzs63xpvsgznhnassxcadbfaxxaxbmkffvesgdxizhxkyyd.onion:8333
-yzrw7ukful7rhvlletmabm37wupkhsxwo2esqqotsoh6gxib57ss3tyd.onion:8333
-yzs2bdhwhxfgaozpcic4v66w7wwlxrr3v4xpgzer733qehcwewijipqd.onion:8333
-z23pfizxwpae2sbje722iesvd6rcxntazcaoefabzsudkc4xxmtbqoqd.onion:8333
-z2eky4p4ozlkrrmuq2jqcz6w2k22re6hxrm3um4ypcnmzmpsi4p6l2id.onion:8333
-z2eo4uckd3ymgtsjitag7yqukmjsjpwuf3d3npq4oskeatpkcinxkcad.onion:8333
-z2gnzha7ttijmle75dvqdzaeqz3xyxzjrrqbzribvwbomh74je4xeiad.onion:8333
-z2ihxne7lyodwglkwpvdmz3a6343msirrvjmaf2pytuo3jysabrkiiqd.onion:8333
-z2lhlshxak5owviqqzacj73ioftqmvq5idawmrgt4k347bwr6yubmqad.onion:8333
-z2njilhjl33youet5rbdfmncadpt7tohtconls3qhpvuqfkreoteqfyd.onion:8333
-z2nocd4haqt257cyr6festid7enoe72qpmu27cuvveoon4rcak4femad.onion:8333
-z2yjvxbv3rfpso4cjkxc4i72f55xb5fihthcdbvh6dp7ghxz2q2tabyd.onion:8333
-z33gr6fni32nkhfmkovcbvpuk7s2atoqfbuzdgz2jszh5ua7zdu6uvad.onion:8333
-z36427rantiy4ikleyihwfwh2ga3pyqqz7doezrzkyv52bi3mpcgt2yd.onion:8333
-z3asgzuzdvhrrejqjnkg5qfeynspuwzzrl3sr7seqxlwkiemnrpsrzyd.onion:8333
-z3hdtpvmnaz2izvnlopzmfgdb2synsomzgy62h7vlxvsn3yqhgufqjyd.onion:8333
-z3hgdhj7zxtih2gkjlnex6occtzw3tpd6f5eobwrntrhxtiww6ke43qd.onion:8333
-z3jl2izfxwfmqnbbrac3tustn4bngymj2tia2sn7nuyconbmjskedtyd.onion:8333
-z3m3a6wii62jc37c2fw7huca7mu4eywnssindvhn3hrh3t4y4kwj7dyd.onion:8333
-z3od23fobhkvypxarneq3fqsdsksjt3hmujnlaiwb65hdwa2n5xdjiyd.onion:8333
-z42np5zjd3thnd54h5n45ibynz5vb3flbgypt4me2c3bnvntn4rsgryd.onion:8333
-z4d7f4dvqutzvvqkmj35znzpyorroqg53jhbft34gyk2h34wzorv2rqd.onion:8333
-z4gvqymmj5jmg3dnao7k3vc245pzepqcrevzyh4s5xn5fcc6ape22sqd.onion:8333
-z4mmpbj7md2ljj2nzbk5b6stdromp2sxhysdexiq6kjqp2go2yfhlwyd.onion:8333
-z4pyvdupcieuqtzvhh47sbiahdyegvpgtwgfmlvfsrm4yj6g5mt6cgad.onion:8333
-z4qgvajgk3tr6aomi7zkpiilx5xb6tvavupvw42sgjf3bfqrgwk4tjyd.onion:8333
-z4rgrsudz3wjx7uykg2kmcadwixklibr5b4k5nulwrpxcjkasu6gnjqd.onion:8333
-z4s6g5bqdmo445vu2i6tcm54zjypfhl5uwnxqjq764bbu5h37gkp5gqd.onion:8333
-z4zr3v232rayjy7e4wuxxez2blz6p6apyv4souxjztqnv3mvaytb4nid.onion:8333
-z52bx6657mva3yjtrutjhxojkbwmrmndk3r3nptxc5xqz3nd62frfoqd.onion:8333
-z5ecnh7crpgo54nfll6qbwl4ybvfbq3izazsdu3pp6zqkam47nuux5ad.onion:8333
-z5v63i7lvhkfdqcex3ioeny62glxhptowtrfof54qbl545mlchkul5qd.onion:8333
-z62kddfut74o5njyehkdlj4caa6yg5orz5lznaccpbloqq2siiwbtayd.onion:8333
-z62r52qegmgv4otygobjdsubc6jffaei23he6n553akc4wnf5ryur4ad.onion:8333
-z63d77gd7artekfeamkqycni7tzrkvbc54fqr733veuoaqx45jwmytyd.onion:8333
-z63fpitzdw3ot62wtxtindh5334uatz2flxg6ronyy6jwx2ztjs4meqd.onion:8333
-z642d45aauehr2ycmv4ewv6zkwjlvlhwf5wlueuy5ynpu4qmffc7utyd.onion:8333
-z65lbxuvo5x36vuv5rgwgyoplqjzzciwvb2whvo3tlghzhp6zij6grad.onion:8333
-z6gr5c5yrp5seqsw73b2pkn3i4aqd5idmzgidjchjjm7f2hdgfkl4fad.onion:8333
-z6n3h75u5kkd5xkqfwbqasd2rekxams3jinrrqaj7p33qdxq7fdlmdqd.onion:8333
-z6n5kkyabl2huqtcp332n6xbo7kpilcw4b64govztw3swtzulgtxcjyd.onion:8333
-z6nq6lkmjoyjhqp5j3tg2gcjq4e3hgduo74unmtmnybd7a777hp4asad.onion:8333
-z6nuvxnjicev3v47o4vxjwakfz6g3jvyo3l4rds5qqfjptqie5re27qd.onion:8333
-z6okjxmclwc55pbwioqx5wyua7rjobcmbttpte525tlt2gexjcjtr4qd.onion:8333
-z6qmf32mld7uqjmx6hroqnkieerstp3vle3u3do6odxig3ubmv557qid.onion:8333
-z6s6t6bi4llpuod6rnakc344wn3h6ejpfejxrkjohjjy246shwfd34yd.onion:8333
-z6soa5spkni5ze6p2xg6lnehu3d7hnqn5ddiy34jtedwegf4syqnnaad.onion:8333
-z6t6fxwhgndvi36vra6d5duaryx2m75v6a5yoz3cqjlj53ko4wm7fhyd.onion:8333
-z6tmafvqwf2sd4rchnafg4urcug4xpkylwls2owruyifaduaeneyqkqd.onion:8333
-z6u4s3uz6bxke3tyibyccbg7uaxt4cb4dued3cu3pbjw6frqc5nil5yd.onion:8333
-z72rd3arkarr6eehucg7rrkjmvqnzdbjmppfk7zcvzd7jqrvisf7rpyd.onion:8333
-z745wkcll7vkkrx7zamibvbyqjtcp3y7wdz5kd33gijxfz54cxzg3mad.onion:8333
-z7eb2xkiigjdfay4ch4pubeqxb2jwyzdb5fo5owkbteyhefek76qoqyd.onion:8333
-z7f7lrvup632wkbzinvbkyyrhmguaf4fzt6zleiynk2vuvwdwt6ysnqd.onion:8333
-z7g3tx3nucmd5ozvs7wgq4i2riiufxlutv2usowr3p4lixfbx54fc3yd.onion:8333
-z7g4iekn3i7nliiowlt3ek7o6xlhi5tv2hofycacjqkpeoijghmiyxqd.onion:8333
-z7j2lcfj5b3isqznsb44ivi66lwmidcfspmvdrmhbfuyub2h3wbmnkid.onion:8333
-z7jbbwkyza6e37iqos6u7ln3nedom5i3dcnowdscr7wfj2xygre47aqd.onion:8333
-z7jtpaghm4na5po5p27fwbdh2aq3z4rkpwhhzemlrhsoefru2z5eyvyd.onion:8333
-z7m7rmzhol6swqnk6l4sadrjgxwnggt5zwgp2jx6tadca74o5puyuyid.onion:8333
-z7mcuih5vw5qob6o5qg27jhozuczpqx5lmzl2ghfxra53tov2h5xtmqd.onion:8333
-z7rxmrmvtsbgrrwwh4k37bpkk6dtu3aq7f5d442ys75nepy6r2q2xaad.onion:8333
-z7u326iowflnv6tvy6uiwwkusx4vat5gdaxwamcp6jd2we35ih6zplqd.onion:8333
-za6k2u2t22ohdrpqbirjhl75eadxcjvnqfkl4bzeygbnliqsc45gplyd.onion:8333
-zabx7shizdfchrfthsjcuyypqy473ni23ebi4aedow4bg5c4tl4cxbqd.onion:8333
-zac6qhbqbb5yo4rvcsmbilp33odkzfwrftwma4yo5hor4brj4d3ksiad.onion:8333
-zad5dkykkoelu5tdj7l7mr24pdf6eos4o7cbs5nvx6bcg5443eqwaiid.onion:8333
-zafdafmd2h6ue2pmuj25chhmkqad3jdcxwtaess2opxkrroopwdqfvyd.onion:8333
-zagkhagdzvkgpuo5znflvxcqxal5tweg3vsaoaonsvsl7r7orhlwshqd.onion:8333
-zahrvinucuxpxu56h6nkiiw7cvutxrua65l4jynvwkzt2bzmeuvdpuqd.onion:8333
-zalrhwuj5j47tntffl77xrdehzfwq7c7duhaq4jwnq5vdtdtajwiucad.onion:8333
-zaw7gnlyeqrlpgcmsp3e63anveudschhifaaezu3web3z6pjjdtvviqd.onion:8333
-zayfuym6j35mxprdsm2x7pvws2vyaoinsomdbgrqbe22rcc77j7jtnqd.onion:8333
-zb226sk3eljxccaswfgouu6mitu43sf2dan4feygrqnlvrot6z65oxad.onion:8333
-zb2qixzmsethowd6fqnwikvp3yeeeo3zvhgjmq2yb27tfslscgkp2zid.onion:8333
-zb62u4o5qzst7rzjaq6tafgzoybi2ncogcjp3sf7zbto7b2xmicwvyad.onion:8333
-zbci2c2pkku7hwg64ek4z4cbyn6o5bnzpzyriqwjckzgs34xmu62szid.onion:8333
-zbmhiorqlldelgniyhwogswpvrlcdjqxxcfm6vulenrpwiadvv37anad.onion:8333
-zbnovu66ikceaodzrkpwww4vop6iwvtebbeznngo2mtjkikwknqzgrid.onion:8333
-zbwbqxytihkvupc5zhezoh7oibfb7bopfcw6y4qbhh2kugnsw6zur4qd.onion:8333
-zbwpgu4z2lfuto566v6duz2qw5kkyvor37rpihk244bfjzqiuohdcyid.onion:8333
-zc2c56k7hcdux5wrlpixrx6lfutylfamr676tu2nr5z2vf5gwoyzrnid.onion:8333
-zc4l45jx3txlag7hduov4su5kl633sykaw7guioejg5pq2qyuescabqd.onion:8333
-zcc4wsaenndkzqdp4xsfzn6ilsdhwzpqiswumdc22dv5ejejec3o7qyd.onion:8333
-zcdv7z3vetrpeo7souyie7u3vyy6w43cuautaogldhs4n2fitytsihyd.onion:8333
-zcezifa7mmgv4voul4jf4wbqmr24djgrskwszktkt5hihywblltpahid.onion:8333
-zcif26i4yzp53k3uedswyrqkdmsmkflpmclmasdo6hat57pqjpm2omqd.onion:8333
-zcnl5vojc5aufydmssv4yxeotzeqpvyoxyae4kmoskty77j4dx4aykqd.onion:8333
-zctnwv5ln3yktcyqsbgie3qcee33x44b5quhjdq4zwjprl75r3snduid.onion:8333
-zcugrsfyxb3y5ucbdndifvt5ilp47a2233sv42ryf2cvzoncrgo2mrid.onion:8333
-zcw6xk4bfnl46fx3mkrmlnknbwnpssxsp7hlllj34fdrkutzts6yepyd.onion:8333
-zcyumipuaiotm5fhffmhit3ajzrgqihhibh73lvjo5hdt4aituudguyd.onion:8333
-zd2mgisets23i4mslxjl75froqjygtue4lnoq56qk3ohd4qcxpop7pqd.onion:8333
-zd3fxn7nwlj76qyjseubm4o2gs73jv2g22px6t24z7p5oeogqe3icyid.onion:8333
-zd7irysta3wti4efbjq3di2jfv237nhwotupj3rtufvvav4e5umtkfqd.onion:8333
-zd7uq75dlcseq546lmbqymh37cninokajwkixpvupillb7fgpqgbwjid.onion:8333
-zdi46azujxcjqa2wnvdecld3bdkps5erbodcvw2mn424gk2by5mterad.onion:8333
-zdm5zxotwdsma3jvij3jmlke5wmblwy7qa2kikfctlzltexx6l35u2id.onion:8333
-zdn24r3iovbxfkp5qx5ng7ribn4cqm4v5ers4olnbzugyp2gbhd56yid.onion:8333
-zdovdneke7oxtxdnee7f43vcu5mjzoa5m4bexpxgvopa5kaxyrcwa4qd.onion:8333
-zdovy6gcj6nrmxaygnjqf3ym5hbd3s7h3irznsbrjmgdywd2rkj2m6ad.onion:8333
-zdoyjklv576u3w4paxyjb4jmdhx2id7xoqkd7zn3sspodasmmazbbpqd.onion:8333
-zdqon7u5ofin5gy4rcmkixc7u42xypwklntwceohpektisokskrn5gad.onion:8333
-zdqxfzqxbaa654nsngnaqdz3jfsfe2u4hxs42covbct2dou7z7jpa7id.onion:8333
-zdtchifs5gqldijr7vzcgqqaftlcydhatm57owdwzrgudns5vpdcx3qd.onion:8333
-zdzkcrnoctqhn26hjbngpcl54nmvozbodf4gwf7anfxjrwhjxgurrdad.onion:8333
-zej7mizjlb26qecppzvgyswervt7ov6f4x6fwrot7obvab23xsv5jjid.onion:8333
-zejyatwyaptvvubp6b22cpow3an47bsrve63l6rerkldmuwwb37b74qd.onion:8333
-zepqddw4zaqqawkx7aqezpqwykxmxxeh2opnl3xnq2i6piazcvyb6qid.onion:8333
-zeso2dbskp3curnpgug5mjyvhs7i6rero3zbqo5n534wccstcok6ywad.onion:8333
-zexnlgnfxldyx6leiqvyhuimrfxznjfjoko2ek6rdtu4dvwkvztfysqd.onion:8333
-zf4cm7bgv4qollcjcj7kpx4qrtqzcsa3q7sds2jc3mxu45gvazlts3ad.onion:8333
-zf4k4efdpcwsfyobz444dgdfnsa6tdbd6aor7p2s6mpuol3ladssb6ad.onion:8333
-zf6nwlrrtd6q73svcimgfp54pinn46hbcriqnqqsitz3fbibzmkev3qd.onion:8333
-zf6tbmhchmzo46lmhx6vu3smjj3y4hjjrv4lnwpa3uq7bvtjcwapmqid.onion:8333
-zfhx5nerqkerm3jfoq4763vlmay4pifit5a6a6jtcjxpu7t4galhxwad.onion:8333
-zfo72va3rnioxbhh4kuth4epqwqque74aehlonvde3re6mvhz4uzgaqd.onion:8333
-zfomias3uj7w6sai3ty3coxhnb6voldudbeyldgyedxqo6kfc7rg7sqd.onion:8333
-zg2yslkwabguckkqanyxwbncrtozc2fjivsyesrcd27xxkowkbcwnxqd.onion:8333
-zg7obxhb4c4j3dgzg47zffbetclv2so4foyutdxizfnedhdkhjzo2cid.onion:8333
-zgaubbm4h7qckt4pgtp5zawrcf6aazby2zk7aeo5xsqpgwsc2yrlbiyd.onion:8333
-zgegpxbr7z34gupenib4tuwywyk4nlevo5dkfg3jt6c2jw23len76qad.onion:8333
-zgjrto32gianyp6i4gc73nlilodiqyo2s5dkr5ev73yq4qvcjxkwycad.onion:8333
-zgp3f3dmwbnr7257rouxkgddijr34keobzrtk5gkm2dgfbw2bylcwqyd.onion:8333
-zgrpshddeijmdp34xfyw2kz22la4jxgwce42pupjp3bo6xtchsorrxqd.onion:8333
-zgvklnnz2avqcnyiffw7t6umb3is4tfthnkzbhnyfr76sjtwu5u35pad.onion:8333
-zgwclfbi25s4ta5hfiwylboeitti64xzoan5aewuqimp5j55nye663qd.onion:8333
-zgxg4d4jifuihgozqblrt3kjkrh5zhbr4uyivtrzf2khnbtbe4z3qxad.onion:8333
-zhabxolberrktnga2eixvhe6vmaoxour3ktd6jgjq3emzkgthsmaq3ad.onion:8333
-zhapnpxpk3lmrfsmhluytttodeosmie7yabywa3aaxmtkreh2lmeemqd.onion:8333
-zhdd42th33pv6qnfi7v3w3gddy3tlgu6pjo2bhh5ezuytutxhivbtqqd.onion:8333
-zhea7pvhuzw4cte7pkd7u6lwjyiqczxi7wgvzhfovtjd7qwdc24pleqd.onion:8333
-zhgdvhnh5zymbwrmd2rfjncparbxfiyraqh4imk6kl3tkltgccl5cgqd.onion:8333
-zhhkv5u7pxuu36y7vzu6wlbjpd3wftxfuadsst3ifs3q23eydmako4yd.onion:8333
-zhhxxlz3wvdaj4scdetokkqgs2ndmdvyfwq4qwrn3l3hv2iftlgsucqd.onion:8333
-zhrzks7gkdvyef6s2aogxxuw7iqheixmrdzgkqotpvl5bjz4vq5tkkid.onion:8333
-zhwmsba7q6vn4yfi63p4tc3dobsarso4322ynl5ofggjbyiozefttcid.onion:8333
-zhzpumb4itgdxy53chqowtu43ru23ag3f37r77ydjs3t5o7bookfe3ad.onion:8333
-zi77cxawtknqkjiod4rhf7gsughbvv2z6e7mg5kax465uc4vtg4cwlid.onion:8333
-zike5s7xtcgp6frbjgzjhcz6gsvd3pghkl2jin3sdasrek3vy7l4ibqd.onion:8333
-zip37ysefmcbnyqvt4jiag6dj3h45ie7h56hmw7ktheotkuagippyiyd.onion:8333
-zipzgdr2m6gmjfucup7xpertovt746f57hrgb7lj6m4rxeniem6zdgad.onion:8333
-ziquiv5d3hditb2r2qmt7hn7knosdcokxe3khj3kgn253l6cynl62zyd.onion:8333
-ziyp62u4xfsuljn5ae4n7jea7wfd6vfutket2e73bzrhpstozs5364yd.onion:8333
-zj55khmgsehm24efh4nmye7oao3u3l4tjuk5edghey3mt2ippfste7yd.onion:8333
-zj7jf7o4b3qztdorj2stojv4us7lzqs37fbubqpqq2wu4dxi3cxpa3ad.onion:8333
-zjdf27w3vt4rpyb6usa3r5yi455svyaha4qtsfwvyrmf3hmz5hckbwad.onion:8333
-zjgnxih45rz3kalgxvhyebyavcnohmoa3bcnl5cwkmq5pmbyypavqcyd.onion:8333
-zjx5rmakdzormbwzl27w4xcucehwiat3dnncoqdiwesbmb7dg4fpmgad.onion:8333
-zjy7d5t6rxljc64pvta3hqi6yxzfsnixtbslafamoxiiw6ptcmv3kfyd.onion:8333
-zk3cgisxp3uxevuxmbzbmqyhvkhezspeydo2bmhu72b6mw2kl6v43fqd.onion:8333
-zkc2lid246a5jr2dpxtvmtu2tfiwt5dbry3xybu22b62vguco5a4qvid.onion:8333
-zkisbl3pv7dsz3szdawti4r7mhrhssqxf3uopi3vrib5dpt6u2u7ckyd.onion:8333
-zkjnuuenigzhs6d5y62jct4tira6fzijqx2k3yzsdsyulut6ywp5muid.onion:8333
-zkjoev53w4e547zot35onpmij4fiube4aomnysttqtv576zdr7wex4qd.onion:8333
-zkl2fsiisu3cyhhsua7qlr5afhyvmfh4qmapgubioyhoepqdb46jceqd.onion:8333
-zkl7x3u7365zj6opig53dxtty7ctw2ijidwa4lbdbhcv3wkld22bvxad.onion:8333
-zknqouk6z7g7h5y7rmycqb6sgzykylbbfpvf5efmzibww377iminltyd.onion:8333
-zkq4fgcc4bxksbsi74pjwjfby5tdwn26yhjnmewy2qy6a3l5p6bnaaad.onion:8333
-zkr66xkrvecgu6jkyan6nxvtefynf2mpsls5csvf6lt6ltqvoscw5yqd.onion:8333
-zkxe2fnm4tsmbu4bdge7i7j2cesfrq5oznfzobf4mwtejbhenp7ubxqd.onion:8333
-zkzj45moxjhjvrzqweh5g3iyucdb2qaqby7vdtmlqbvxmm5u337aglid.onion:8333
-zkzj4uhvvpav6ee7djkfj2uem6tyswi7idzupkozspbgr2kfvrk5biid.onion:8333
-zl27cum3gly7nfhwl7ulnob6pyichpxglnss4ffqv3terkquhf3dm7id.onion:8333
-zl3dx4nswje7l5p2fgvypve5wugfqtcru2ud55qo77tqdp2btm6kp3qd.onion:8333
-zl4gt6uafawn452rlqb4w2mujut5tjcnq4ahdr6ucdyeu2gtzlsk2jid.onion:8333
-zl5voqvgyf7deglpxamz6hpg4bierfngqsmmu72wpeut7toja47v6bid.onion:8333
-zliat4frxeuirx3nbijcljvgr5wembicg26fdpgda4pnps4oguaobmid.onion:8333
-zliy5o4uqgpqj2nbgyadqnlomnjtmdlwoxcuduwcfavzsguj4z4iwzqd.onion:8333
-zlkwqytpxbhkg4umwpqiynz6niefzqjbiwzryg2zpwwmvmw6pmssngqd.onion:8333
-zlpztcqey4osd3omtpsm7micrh6jrxuqzeeendpngk25iyfhleieekqd.onion:8333
-zlx2jkuv2iuzffo35hc264rnvoimzccvtlljdbmut4es76qe5pnvs6yd.onion:8333
-zlzhg5hipy7nc4ulsaprgro53f63mjj7je7m5xptgkksibgvbc6r2fyd.onion:8333
-zm2j2k2nl7pug2amadjkrcgs5omdnxctyl7b6kmlywsphcfl6c22gtad.onion:8333
-zmfmdmzlsyy7owe6vpgugvdq664vjhluqura3skjlm6fzpgqe6udm7ad.onion:8333
-zmfmmn72dg5jjkovy4jt56c6btg7pgp7wmeh547zlvavwmlbrbsl5yyd.onion:8333
-zmjncrrwtui476nyn6sqbp67bvgdhotllq33vzwygasumv6d2us64iad.onion:8333
-zmmtddrew2mjtghs7zjiyi2eelmyss7miyj2axzwfgnmvzthx7phevad.onion:8333
-zmn3jyv5a2rod2udnreygi6uan4zq5ul4mhewyfyrf7a3ury72bycuid.onion:8333
-zmqvv2cdxjj3vbclq7l6rfdmjegmixwkxsnzzd6qezwp32vxkr2cbiad.onion:8333
-zmt7psgtnnqxk6tibhvwkdfuhtgtjatz6bpoyyl4ptuv3u6ko2b5o5yd.onion:8333
-zmtd72b4nsa22ocez2hbjsxxrdfuxxyghg3zjtqjob5sgnjpustat4qd.onion:8333
-zmuuhwxhoa6h53jijpb6mczcvtxhw6zyjymm53dwzsbmkc3kkv5v64yd.onion:8333
-zmvriguathsanquofxml7kgcda4tkihm5qked7a6ntbqk7rmz7qadkad.onion:8333
-zmvritlexdmgatfqjlexl7wsx3lmf7y3qxe2kqeergb7ntkfu4nky5ad.onion:8333
-zmyavuyz774c2fo3eb55yokivpr7qfxdpjy2t5wpeygunhulck7yxzid.onion:8333
-zmzjx42yxlpepdgya34rvwb3wc2peggturiedmn4sfjltgy6gjtspsid.onion:8333
-zn3gjkpqkajav76kaem2espqt2bw6ggfvmn4u3gmkonds7pqd5heqkid.onion:8333
-zn3mj2tggwpbzzkvtsovkrbdshbsvac7n676hbi76r72de2b4gknpdyd.onion:8333
-zn5purhx3rnikkks5tx4scnjlhewwll3uzcs4pgde3qeqawof3jefhid.onion:8333
-znaiehv3qrtloxdi5rkbs4eqpmuveazuftob3sqzw3ta5pyakuwhx7qd.onion:8333
-znbv4cupk7rrdk4rqi6xncbouhscxnqdlbxtltp7564isfv5vtbyu7yd.onion:8333
-znc4xhwywjqejoioap3ssxvtsdilsc6i5o5s2rnp2ecmxqe6xe2nh5yd.onion:8333
-znea5ol7qgniizv3og2gfcbxw2wi4qhk7dfkdlt7bbxpy5aflljygbqd.onion:8333
-zngxgkdgkqpfyepa5cvxlaxvlyluzdryhzmviar4ojzaduxw37hhdmqd.onion:8333
-zni7kioacgsy5haqiftnexr74sv7rzvgy5o6lmz6dy26vvwg5lffioad.onion:8333
-znlvmmj4dvpju46kbb6mob4kufyf5a4qivyygmjj36kymbaa4nzi42ad.onion:8333
-znmgbi6qlwwwdlizjxsc6eujnfwgytufu6guo67b54av4y6inwgxllad.onion:8333
-znmwoazdkcffprail6h4p4opy7i4zqomhpdxe5l5nc6ejqagvt4i7yyd.onion:8333
-znt2jb6nivjgl47s2gdcgac3merqjfq5h2n6x6mbjegx6fumtl2ownid.onion:8333
-znvkqu376ienu62x5hprstn36jfqxospcnfhpc3kq5quwcd6436pzuid.onion:8333
-znwekshd4os5a2n222xrllgjuyvsw7hsb2y6br7pkwjatywk5lerbtid.onion:8333
-znxkxyd564sfftgjscsmi3a73jsazxwhsneix3bgto4suyjx356xewid.onion:8333
-zo4fczw4drgcbsumtgmigjkiso4miz34ltauajaawqmqoa6oxmzy4nad.onion:8333
-zo5jasvz5qo7pkgrgn4r45twdic4zake6zpjfemj6x2ioxcwvs7yzlid.onion:8333
-zobj27bempyxsigdvawc7foivyyuek73hemep7zf2tajof54353ok2yd.onion:8333
-zodjfmegrevmjbppq2t46iluruefbgh3b46tbrl2s5qkprvbetk3euyd.onion:8333
-zofseltpp23n2xb6fsmfgkwgqggwhrelxmt7zq7toazybgehbs7d5fad.onion:8333
-zohxazkomcr5ggqlj2edu23zs6xiay7wfsrxuetrn2k2s5gwhwhcngad.onion:8333
-zokmgys3gsgs5oivjcqp3xiki25iexezy33ekzuratdz3j5unqpxrzad.onion:8333
-zosjvclhqzwklml43hvsdmupglajj5lfdb5h5frgym7hsqo25rwrbdad.onion:8333
-zosk6fx2a3mxkfaeayziiuizq3y3j3azzp4ylwyh76wq2sqtaenuwdad.onion:8333
-zovm6wkattzmxc755cgqqd4sxugn3jaxw44izlm4yfpot2ucfeqnukqd.onion:8333
-zowc7rklhd6xhje724xomkftwimuihacwcnxkt7vhbjpvpkdahvlhxid.onion:8333
-zp3vpkpcfdx5lxvnuellqaf5qdvhu4luf4zqfx5xjo2dge7cqsxhsxyd.onion:8333
-zpgobpk2j2suauhuzfmh4iiz3y2zhj3xvb3g2t4a775t72stt3majryd.onion:8333
-zpgybnbaxfvzjeus7qna45zchxdkekjpk5webdkeqtxfwcglgogm2vad.onion:8333
-zphjbml3fqtbez63bjvd4s552yc2xebitadkpw2jon2qkbapbiltijyd.onion:8333
-zpnoo3qordv4xj5hjynkssu6wechvup6to7pamrgbi4ljmfugjyzwwad.onion:8333
-zppmhj76a6dyjch5qtubosxcyvtwjnb6zndsfywxci7dy3vc6lbfusyd.onion:8333
-zpq2nzcnlasmy3rmwtmaybav6t7xfrvorqqdwntnbgbxqujyy3dkwlid.onion:8333
-zpqvo25bxu4n2u3mh2pdzax7wmpsitd3qsszgw2ye3mpfdpjbg52kgid.onion:8333
-zpx2tq27yviwzbpc4nyjfqtlhigoa5k7cwl676nft7bkajo6jq224hid.onion:8333
-zqlwzzfzdoacgngtsnofmyqetag6o44f5r72opj733y434b7npnb4oyd.onion:8333
-zqq4g2eikcfgls64ffstsylfbqrfstm6n2otvrsbtvvjpqwgyqdnmbyd.onion:8333
-zqrj4fhhp4mq5eh5xptzcxjzpae37brkdn3voz32qsohl6noijygdkad.onion:8333
-zqrwah6dn3t5fuj7ohlyka27zzopduhxy4wyknfrtqpx4sykece65fqd.onion:8333
-zqtyvr7h277x5rxin6rhsrsbhwcfsyyiqgghpk6jlbewej2v3tn27yad.onion:8333
-zqv5nepyrwezkym2ba5s2sskmi2qck22snw2rygeke45bxg2o4vckuid.onion:8333
-zqvbnqwwhtoux2sxicng2blfiowk5mvty7c5xnssxwtlsjzalhg3zqqd.onion:8333
-zr222c3ybuqxn6a6piydvfos4zjnaklfgh6kofmujmolpiprfw4z6vqd.onion:8333
-zr6ffisxxo4gelmkoyb7izfm7ehjrbqbnzuguw34to34bqhxeeqzzjad.onion:8333
-zr7sqclimv46jdnmmeazqrhflhiqkhhrz5i3ed7yvyue63swk3qkjnad.onion:8333
-zrrfr5sr5wrgdt6rn44cxnotlvwe7cl67rgssw5dwsax42evokdaw6id.onion:8333
-zrrhgs52ftlylshuwp5e2uesgqnwct7h6cqhzofdduwoi4sz3shmxxad.onion:8333
-zrt3rg4paxmo24ucd56eehl7apindhbubq3ej3q5nhr6i72jv2eznryd.onion:8333
-zrvsjjrb3lgvmeftz2vfjva4pl63htmv5qyviq7zhnfmlk42evrxdpid.onion:8333
-zry2rqlcqf5p5e46wc6nmtcbt5vd45mf4hyf4nxlqogckoniufdjklid.onion:8333
-zs47b66pljpz4ahompanciv73xtztnnzkx4wjklt6hh4drsge4m26iad.onion:8333
-zsalwutefh6m6x6yxccbhulzrz2bmo7dzu2ggu4hxp5zv3xx2j642dyd.onion:8333
-zsbzferezmnyxhpktxtccn2xxuggmdzdnrza7pqjlnwjorgx57y2acyd.onion:8333
-zsgtoyy2svehhfba345dx3dazp7tfdio6o34zxlcgylq6pi67gjq7nqd.onion:8333
-zsi55x2nvjc4oqrpzzopkneukb5fudnm4e6drao4x73lf4zshhcvllqd.onion:8333
-zsipwsjpm4f3p6ueczh7lqei5rp3cusl6t4d6nntnwxq72hori5f7jqd.onion:8333
-zsisadra7jlxp5nhec2vsjwspvvnk6jemjxk7zn7arypl6cm6dy7mwqd.onion:8333
-zsr43xqj6nsrqh6qgxghadctltwytnaw4zmlvx6exqybt2qdt72f5yad.onion:8333
-zsxgefpkofjc3nti4qusk3pdqcfinkljajlwcb2cee2tduxltxbmrpad.onion:8333
-zszufrszpweaoysubpdnqparmyotjnev6nhhcnejhjjftu5sb55kesid.onion:8333
-zt6gkop3n6aggrxucnaqp4yrjeu6htwvuy2nyn3vadjjrodwxfhfv3id.onion:8333
-zt6hvzyoalzm4a576drn7yfvdetdvzwwouvfz435wzrf5pcnxqxplaad.onion:8333
-zt6v7eqh7vvlwy5kjzbdfgkw3syj3nnhckyghlzgmwwfccxvyfusuzqd.onion:8333
-ztcmlrstdkp7coheeolpwj75gp3imzgiw26xnoiucquwhxxcofao63ad.onion:8333
-zthmey4ueoutf7q36nwgujxu7hq76s5ifbtanvze4mxq2s2xq2cmjwad.onion:8333
-ztmwsyo35zkogpftujm2o7oilhucjxe3w6bjagsaiwtb2bu62vgjptid.onion:8333
-ztou4ytvgvpcakjaje2c6l5j53rxcxes7qhkerszi4haffxfpj3kdnyd.onion:8333
-ztwryklhcnfoeck4qntt2aitoilit2cmmr2geyqo6cjc4nwr7jlludid.onion:8333
-zu3ekh3vtqjfnxqjqlmnq3jbqlg2zum4ehgirz5cggwe2thjmgkz4cqd.onion:8333
-zu3yh7mvqw342e7qt5amwtwe2btjubi6t75k7wgcpsyoicsnpgbgj5ad.onion:8333
-zu76ecbahyc6ofjiiutna6myxmfdcsuhcrhtgpifbw3vfo7njd4b5tyd.onion:8333
-zuaotutv2ngbf5ot5kvz75uehbh5e2j726fglhqw7omk3b7xnaastpad.onion:8333
-zubmiztmnfy2vqowqmpyzbqtf2a43jgazsex6zlxokhfmnzmi3rht6yd.onion:8333
-zuc7sobx6ttj7lswk32raexasfbxc5kd6a3l6td35srqzkj3emsv4uid.onion:8333
-zunmnr7czrxvfjgxtvkwk6ziti5kskx4fi3j4dzahhdljfsqtz7yeqyd.onion:8333
-zuoml3m3jdkoh5bdrwfecnew5f4mrlcwhmhkn456qsa72cp274pbgtqd.onion:8333
-zutyd7pzkyejctriyr2lqlrex3arkunntsdjo3kgw2qj5u3fj5uyusyd.onion:8333
-zuzdl7nnjhy6inyqwsc5i7fae2nregm7wnyrtolaxhi6oiufyc7l26qd.onion:8333
-zv2nusexbcrncbutlcprevwhvbtqlyri3stjwmgl23x7fdqkmae6owqd.onion:8333
-zv63heoa7jstwhq3wg2nibip36bw4icd7jphccy3li3nut7gp2gojqqd.onion:8333
-zvbhycudpglrdi3sk7yixe64eknydwzzisc4n6xmxwhb7xyyzevc4nqd.onion:8333
-zvgutw2u7tu4dx7t25leghdp6j5n44u464mmoypafwstayp6ggabtkad.onion:8333
-zvjn5jscn7jncqss44uh53gvi6b4eycjqp42t6pv46bsr7gine5cbrqd.onion:8333
-zvmxfy5z7nxeknglvpbh7rveoppkyvvzvnpwxon2kgkepafnq4igheyd.onion:8333
-zvpcm7eemfvlklgqio3fgzcwa2vukg3n7caov5itik36kdua6mvm43qd.onion:8333
-zvzirfk3h4hk52j4u254y2np6ve2xttd2nugiccsqw2liiw7aqmglkyd.onion:8333
-zw4olgpxujj6iydkmhuxbx37b52syl5bm6embyebesysep2ignp2dgid.onion:8333
-zwbnovgpo4qxidylubpdrhxm34t23iwaniawfshiqrilttwqjnnlohid.onion:8333
-zwbqgh5le73aurfmbwf5ivjb7ycemwnjiq2jnq4sqz6epl7rdtd6rtid.onion:8333
-zweiy44ngrkfzhnaoqov3fopwqd3uhwsen4v6sdyf3ynmhlpuluvzeyd.onion:8333
-zwg2cvvkm37u2hicwbjasqzdqdhcblwvtzsulmz4kpbebf77jheiaaid.onion:8333
-zwrp2kb2covbrr3xdz2pxr6gg6ndnhpcgfvjkjr43eudnl5aswxgvbqd.onion:8333
-zwsapfrsxzsomsoty652jifwii56st6fg7bs2crr6boveh5o6npl7vyd.onion:8333
-zwtjkx5blzs4i6e7hwfeekcwufdl2lba4j65243tvkajder5iodkavad.onion:8333
-zwu3ep3zqki62b7ldjbsxk4dm4rlppkxpzzqfwsfvkoihxltm3y4qaid.onion:8333
-zwwpbfpymszcmkwlfozzl26m66r6n7xzgnw6bs4nf3pypqh36ya2w6yd.onion:8333
-zx37fw5b4eatt3dekaefun3ln67agpt7oqobeacvyq4keurbj26azwid.onion:8333
-zxaujdps5ce6wvk6ykbfquygtbli4ecvpokj7oyfxjqiionn3u3fdsid.onion:8333
-zxbq3k7hwswo2f374ahsmlgkpdj7ju7pyygurkvzqaoh35vmxleewsad.onion:8333
-zxc2bzuqdkippxthxbg7n7e3lznbcnx7zyitlhwvjusbwr5v32oxueid.onion:8333
-zxcnzlo2eigfig66vxyx43znm66a5i4ieuiosycgddgzdff4vhn6zhqd.onion:8333
-zxk4bqrede3tnlb7ymjlsoyupc37r2vqe647otr3nczqmgfeoyiu75id.onion:8333
-zxqdpu4gmvn5vz2kdld6c2swqdzknwh2czwsw55vx323orvtk6a6igyd.onion:8333
-zxqe6efq4odzd2mvyeglqto2cfggagoicgcvlvca4mxycg47jei4uxad.onion:8333
-zxzfz3z4nbb7u3ifcv2p5xenzpbnzuuezelbbjcfrmupxtqyoh7uhyqd.onion:8333
-zxzqhfwi3gdheuxmzagp4aw4aks6cii2llljapcvqhtqrxlksxddo5id.onion:8333
-zy4jeshnpx3i3wjcqrb27qcea4qetpez65wpocat5sqncz24xeo6sxyd.onion:8333
-zyccgvzokepone36ulu74l54ad4dtqv7a2bjzcvopj6rg5xhbc7ihjad.onion:8333
-zydziohabauwybhbqkegn4d5r4257bmfain36fatcxdbj2nw5zoa5vid.onion:8333
-zyetfkanxicfp6tt5tegkxlkoz5rl2i3zsc6hyyqizahywbktezfuwid.onion:8333
-zyjfoui3hrpsw3fo4owxrztclffqhr26wdedizvz5xvlgurgixit2mad.onion:8333
-zyku4bk6pdifla26hympigytlwsx4htajcn43hhobdbrv4tfojv3snqd.onion:8333
-zyl4kfejs3t4vefsvuqrqopboxrmztuun62jick4uh3wpu4mw7dpqlyd.onion:8333
-zyphknlr4ogrknj5t64qya246kdaasgirn4iercvesggqplzzxsisbid.onion:8333
-zyrodumrgvgpinhygbi5molpbhl6ndfs3lwtt55pumd6wy5k7nb3esqd.onion:8333
-zyvgumk5pcanh4zk3z72glefxgbd4dpyhsbzvqlsp2gspaw37lrhjyad.onion:8333
-zyyefl5unnw7lnrjlgfyvnytw4iy4n4cy5bbs2nudjh7wp7psvefmfid.onion:8333
-zznngqwcp6g55wkjg52rzeogk3fcdpopyl3zprh2fz266nykv4sqveyd.onion:8333
-zzntdfpcb3spf5pb3g2gczw2njmhwwksgxt3twbzjhbaisihg7h2ywqd.onion:8333
-zzsi7brufwylb52w3bcbqvp5jx6vribh6geiqfy5jhxpihqjjaox7vad.onion:8333
-zzthz644hdjxn3d54xrfe7snnuyhsx2cguy4kqb6dpc5u7aun5lflbad.onion:8333
-zzuipjogcfvs7uyfhfgesehon6viegga3sc6c6265n235pqmkwyqfmyd.onion:8333
-zzul2xvyhqvajnd6zfs2dzljoppx5lsp2xt4qad7256kpxrv3wzyiuyd.onion:8333
-zzx4r2yrkxul2kg2ojoeijwce3skll4wbkkjw5xprstn2o2xw6n74wid.onion:8333
-zzyp22x6ryzyin43pltkup6jki5ynboh6cwpucscx5a3md2tooqn52yd.onion:8333
-zzzzzzzz5bs2qnoijxlhxd3ibxipajesgprqlrxtpfbygw4zcaf6oaad.onion:8333
-
-# manually updated 2023-04 for minimal cjdns bootstrap support
-[fc32:17ea:e415:c3bf:9808:149d:b5a2:c9aa]:8333
-[fcc7:be49:ccd1:dc91:3125:f0da:457d:8ce]:8333
-[fcdc:73ae:b1a9:1bf8:d4c2:811:a4c7:c34e]:8333
diff --git a/contrib/seeds/nodes_test.txt b/contrib/seeds/nodes_test.txt
index 2def8ae644..5339f33f86 100644
--- a/contrib/seeds/nodes_test.txt
+++ b/contrib/seeds/nodes_test.txt
@@ -1,29 +1,311 @@
-2yq4xcwzvb2ktyci5lpmb2q3nl6qqywb7nrf6fkcthha7l3tle2q.b32.i2p:0
-4g5uvbkvi5fvyditekvzajldtzgurorqjupuwtmymrjloq6cjm5q.b32.i2p:0
-f3w7soepsy7jqwf7dlo4ro2qkyapg2lrb2dkkvwfwuymgaqvljqa.b32.i2p:0
-nr7nozlb54xv3ozg4ksvcr3ofzfwfeud2n7xijywvt22ixzal7qa.b32.i2p:0
-o6j3b33bv26vthoqzjy3h7a3qsuqbtbe3ulajmjzsl43vaqyieyq.b32.i2p:0
-ocqipbbxx4paopgkkbnj234ie7opzrtca5gtiwr6oda3h32rzgsa.b32.i2p:0
-r2zdpkcslf7e4t2fmglu45xhfw5zgupthdh5pcewdo6jajumveda.b32.i2p:0
-xgctj4seo3ofstiymoyeuzq74bvddrbr6jtia6erodlf5va3cz5a.b32.i2p:0
-y5e6aqz4jkjjoeipoxwurzc2jrfv6ilvfbdqmjqk574maba5uara.b32.i2p:0
-ye3ajv2tgpq7jvvzzn5wxbtmd3txev3axsdla5bkpobeiwccyjjq.b32.i2p:0
+[fccb:248:11a6:1042:bca:1218:f7ce:7d3d]:18333
+2.87.72.235:18333 # AS6799
+3.253.163.14:18333 # AS16509
+5.182.4.106:18333 # AS49505
+5.188.119.196:18333 # AS49505
+5.189.175.92:18333 # AS51167
+5.252.21.232:18333 # AS50673
+5.255.97.91:18333 # AS60404
+5.255.99.130:18333 # AS60404
+8.222.228.217:18333 # AS45102
+18.143.108.213:18333 # AS16509
+23.93.89.199:18333 # AS46375
+23.94.96.134:18333 # AS23352
+23.137.57.100:18333 # AS16904
+31.220.99.65:18333 # AS12430
+35.192.191.229:18333 # AS396982
+35.200.201.79:18333 # AS15169
+35.233.152.219:18333 # AS15169
+37.27.58.134:18333 # AS3209
+37.27.116.87:18333 # AS3209
+40.118.228.187:18333 # AS8075
+43.247.184.50:18333 # AS4134
+45.77.25.14:18333 # AS20473
+45.129.182.59:18333 # AS47147
+47.254.127.252:18333 # AS45102
+51.77.42.234:18333 # AS16276
+51.79.82.75:18333 # AS16276
+51.250.75.48:18333 # AS200350
+52.174.187.17:18333 # AS8075
+62.72.27.212:18333 # AS32641
+62.168.65.42:18333 # AS5578
+62.210.207.63:18333 # AS12876
+62.210.222.73:18333 # AS12876
+65.108.39.171:18333 # AS24940
+66.85.145.134:18333 # AS12189
+66.135.29.243:18333 # AS20473
+66.183.0.205:18333 # AS395570
+67.4.82.9:18333 # AS209
+68.197.203.181:18333 # AS6128
+69.59.18.23:18333 # AS397444
+69.61.32.242:18333 # AS141518
+69.197.185.106:18333 # AS32097
+71.8.29.12:18333 # AS20115
+71.13.92.62:18333 # AS20115
+71.171.123.161:18333 # AS701
+72.46.129.50:18333 # AS53340
+73.22.9.231:18333 # AS7922
+73.53.42.105:18333 # AS7922
+74.213.175.99:18333 # AS21949
+77.163.221.171:18333 # AS1136
+79.192.39.105:18333 # AS3320
+80.79.4.249:18333 # AS49981
+80.93.179.252:18333 # AS50340
+80.241.194.147:18333 # AS12964
+81.17.102.136:18333 # AS15598
+83.231.240.3:18333 # AS2914
+84.24.77.191:18333 # AS6830
+84.155.113.177:18333 # AS3320
+84.247.164.103:18333 # AS49788
+85.203.53.89:18333 # AS39351
+85.203.53.149:18333 # AS39351
+85.208.69.12:18333 # AS25091
+85.208.69.13:18333 # AS25091
+88.80.148.215:18333 # AS44901
+89.117.19.191:18333 # AS7029
+89.153.161.16:18333 # AS2860
+89.155.239.107:18333 # AS2860
+91.123.182.164:18333 # AS51648
+91.148.141.210:18333 # AS203380
+101.100.139.249:18333 # AS133579
+104.237.131.138:18333 # AS63949
+109.233.109.26:18333 # AS41798
+122.208.117.197:18333 # AS2519
+124.236.16.91:18333 # AS4134
+129.226.198.211:18333 # AS132203
+129.226.198.246:18333 # AS132203
+131.188.40.47:18333 # AS680
+132.226.61.215:18333 # AS31898
+135.84.136.157:18333 # AS174
+137.184.2.124:18333 # AS14061
+138.2.100.114:18333 # AS31898
+141.98.219.142:18333 # AS20326
+141.98.219.199:18333 # AS20326
+149.50.101.27:18333 # AS174
+149.154.176.47:18333 # AS3257
+152.53.17.53:18333 # AS81
+152.53.18.109:18333 # AS81
+158.178.228.41:18333 # AS39550
+160.80.11.66:18333 # AS137
+162.0.208.90:18333 # AS22612
+162.244.80.218:18333 # AS19624
+164.92.140.21:18333 # AS14061
+169.155.45.180:18333 # AS3356
+169.155.171.252:18333 # AS3356
+172.172.62.86:18333 # AS7018
+175.209.228.141:18333 # AS4766
+176.108.193.97:18333 # AS47914
+178.21.118.82:18333 # AS49544
+178.21.118.96:18333 # AS49544
+178.63.87.163:18333 # AS24940
+184.74.240.157:18333 # AS7843
+185.28.96.16:18333 # AS8220
+185.70.43.192:18333 # AS19905
+185.107.68.135:18333 # AS43350
+185.132.177.104:18333 # AS49981
+185.186.208.124:18333 # AS206428
+185.190.24.72:18333 # AS9002
+185.209.223.195:18333 # AS51167
+185.210.125.33:18333 # AS205671
+185.232.70.226:18333 # AS47147
+186.154.207.228:18333 # AS19429
+188.117.132.82:18333 # AS31242
+188.213.90.149:18333 # AS43414
+188.246.168.144:18333 # AS8595
+192.198.81.243:18333 # AS31863
+193.198.34.24:18333 # AS2108
+194.95.66.129:18333 # AS680
+194.110.169.133:18333 # AS9121
+194.233.91.153:18333 # AS141995
+195.123.244.121:18333 # AS24971
+195.179.230.180:18333 # AS12874
+198.58.102.18:18333 # AS63949
+203.132.94.196:18333 # AS38195
+205.209.119.150:18333 # AS19318
+206.204.104.7:18333 # AS6939
+[2001:19f0:4400:63c7:5400:4ff:fecc:fc1e]:18333 # AS20473
+[2001:41d0:303:2dbe::]:18333 # AS16276
+[2001:41d0:303:87b9::]:18333 # AS16276
+[2001:41d0:601:2000::1f70]:18333 # AS16276
+[2001:41d0:602:2dea::]:18333 # AS16276
+[2001:41d0:700:544c::]:18333 # AS16276
+[2001:41d0:800:1d55::]:18333 # AS16276
+[2001:41d0:800:3d4c::]:18333 # AS16276
+[2001:470:1f05:4e5::2020]:18333 # AS6939
+[2001:470:1f07:6f2:1671:5a1c:2433:b517]:18333 # AS6939
+[2001:470:1f07:6f2:2e58:b9ff:fe18:e093]:18333 # AS6939
+[2001:470:1f07:6f2:4dfe:d8fe:3dc7:63f]:18333 # AS6939
+[2001:470:1f07:6f2:6a34:c61d:97b1:c98c]:18333 # AS6939
+[2001:638:a000:4140::ffff:47]:18333 # AS680
+[2001:728:1000:402:546e:98ff:fe16:68c6]:18333 # AS2914
+[2001:bc8:1201:409:1618:77ff:fe5f:b12]:18333 # AS12876
+[2401:c080:1000:4cb2:3eec:efff:feb9:8604]:18333 # AS20473
+[2401:d002:3902:700:8708:37c4:e231:d3d8]:18333 # AS38195
+[2402:1f00:8101:713::]:18333 # AS16276
+[2600:3c00::f03c:91ff:fe5b:4cf3]:18333 # AS63949
+[2600:3c00::f03c:91ff:fe9e:7f03]:18333 # AS63949
+[2601:603:5300:83b7:0:ff:fe00:420a]:18333 # AS7922
+[2604:1380:4531:1700::5]:18333 # AS54825
+[2604:a880:2:d0::65:c001]:18333 # AS14061
+[2605:a143:2162:7067::1]:18333 # AS174
+[2607:5300:203:540a::]:18333 # AS16276
+[2607:5300:60:85a9::]:18333 # AS16276
+[2620:6e:a000:1:43:43:43:43]:18333 # AS397444
+[2804:431:e038:cd01:aaa1:59ff:fe0d:44b8]:18333 # AS27699
+[2806:2f0:90a0:45fe:dd25:f6df:4741:4a3f]:18333 # AS3356
+[2a00:1298:8001::6542]:18333 # AS5578
+[2a01:4f8:173:230a::2]:18333 # AS24940
+[2a01:4f8:190:4026::2]:18333 # AS24940
+[2a01:4f8:231:1eaa::2]:18333 # AS24940
+[2a01:4f8:242:4c1b::2]:18333 # AS24940
+[2a01:4f9:1a:97e8::2]:18333 # AS24940
+[2a01:4f9:1a:9a57::2]:18333 # AS24940
+[2a01:4f9:2a:2ddd::2]:18333 # AS24940
+[2a01:4f9:3070:266e::2]:18333 # AS24940
+[2a01:4f9:3071:219d::2]:18333 # AS24940
+[2a01:4f9:3080:358c::2]:18333 # AS24940
+[2a01:e0a:3b3:1420:7ca0:3a9a:5cc3:b644]:18333 # AS12322
+[2a02:4780:10:402f::1]:18333 # AS47583
+[2a02:c202:2189:3702::1]:18333 # AS51167
+[2a02:c206:2075:3352::1]:18333 # AS51167
+[2a02:c206:2196:799::1]:18333 # AS51167
+[2a03:4000:2a:514::]:18333 # AS47147
+[2a03:cfc0:8000:2a::9532:651b]:18333 # AS201814
+[2a04:52c0:102:2219::1]:18333 # AS60404
+[2a04:52c0:102:49af::1]:18333 # AS60404
+[2a04:52c0:104:160c::1]:18333 # AS60404
+[2a05:d01c:392:c900:78ea:ba95:334c:1d7c]:18333 # AS16509
+2lsncqdflwk272dhydrxf7ikfy23ppnmm54dnynyxiym6lqf3wowrmqd.onion:18333
+36fwktckggarkclbpu2pumsdpck46ahe6cwpozd2gm6q7kgdqljclmad.onion:18333
+3rlrfxaj4sphzedozs27qrefuw6u3v2cqu2ctbrbvhsc3wn34iezxjad.onion:18333
+3tao6wnydihsqndjw5pqbko25rxk23wb53gtyv7vmbmc2j7vw74cr2ad.onion:18333
+44sgcv5dvpplt32enlneddyl4gd4z3tbezl2scedwccndyzrrp6lcgyd.onion:18333
+4w3f2mxe4ftodocermsazs3qlpo37igkdgne6ka2p6wnnrgwpzqw65yd.onion:18333
+67l6l2k7mqbl2btyvo5h5lki3kxcrgbunlk7brcloyaoaftbs5mnsuad.onion:18333
+6m7khktveimc35yjusgeprndw43grjexs5bpruwkogbh5lovv47drlid.onion:18333
+6rnqpqqcpllqhjoa4gwrtq5yi6fdch6uqzapdee2gq67gxgsl73v4uqd.onion:18333
7ph7mrc24te57mvppajfkfj4mk7zuz4teukymt3wgpdpw6vpndeivtyd.onion:18333
+7poqajl6svz4vr3aqi7vdtar2t56crbrtj6yi75ydrt3ighyx7q6qvyd.onion:18333
+7zlqrihb5do5ebbmjwgspxigqfdmkfslkqtg2ngdc6ypsunzb4iootqd.onion:18333
+adjnsxivlsb5m4e4bfthvvccjfv7zkpyjyebvatlhyqycykd7ibjyoqd.onion:18333
+adstabjz7ec2y3jt4w2dvummowzv7g6m2f3kajeejffuaz7ojwj6epqd.onion:18333
+aesy6tfufadkut6flu2bsqgnw2422ur2ynjalguxlzuzuktg3zehttqd.onion:18333
+ailib3qk4brh4z2nvmmadoi6gbsw7fihfxtr7rnm4z5d6qcspr7ky2qd.onion:18333
+ayx35r2mhwydczzoqu7b6dl3sup4oht74sgnlrjkxybzh2hmfnaix3qd.onion:18333
+bek652lfs7mje46zauhfxtdh2zohe2jpbsmlhulusuzao27uwpwd76ad.onion:18333
bkzo7mpxuar7rhsbiwdaxqcymixarcbdmb3sdaqtv6yb2svqttz2s6ad.onion:18333
+bwyudvl3if3r7ese2caymfnbxqztc3mgr2i5hurjttlabhl3dfgyzead.onion:18333
+bzn63lsmsuvzlg4uqadyylxaggdcrzkb56muw2b43ft5qkynvzfopbyd.onion:18333
+c7zrq2yqt6rtn5dxkczp5bv62k2jncv3mscoo24c24rljbplr2dvhsid.onion:18333
+cqhut2deas6savhop2yue7vebu77fd3einx36tlgxr7bb6vlef3lb2yd.onion:18333
+cv5z3izcu7fmtby4hyjliphp6bh2a3zmm27tfendycu34tw2tka72syd.onion:18333
+cyl7eujkxl3s3cbuhmouhkxt4cdfplpbha2z6j5adacdaq2rjj2dlzyd.onion:18333
d63vf45ta4chrewnruyvypm7ybfxtut327crtq6qfyrvcwx434rli5qd.onion:18333
-efqfw6vjq7gpgyhosu3qf24hsshxpbhay426ccsgz54key4cvwund6yd.onion:18333
+ddsxs3zdkspqkcszmx74rkw7gqjgpz2ufb4qqh4dz5iaysoe3fvtpdyd.onion:18333
+duuwdfnlrudonwgdvvaud3i52zdxg2bjey7jmzskgcauiyejyffrh5qd.onion:18333
+dwb47cmqa2tjpmvjaear7gdcars2lez6niefhi4qf22qehtyta6577qd.onion:18333
+e27nbjkou2mkquoytjil27g5h34wkgjtrwupn3muc2c2b76dfdkvkiyd.onion:18333
+e7tkrf54ng3q5vcn5gn77zwjwm74lkfav4mwdux3pvon6yvqg3tf46qd.onion:18333
+eev3vuh55dymhn3z4lmhargcy2xzm6l4yyd5b4bgfstx2sf75ms6mdid.onion:18333
+eyjahrgj7qadzcotanxfbhshsjm7yj3p6tssiupiub7k5s55nxc5xwad.onion:18333
+f6awicobzr3x4fz3dnxbroarbuleq26jzltnl6wknkph2luxruwijiqd.onion:18333
+fbimesnyhzubbzqc3uaufzkbyfmnkxvypoxaveaub7rzpzh2foxrn2yd.onion:18333
+fjcr55gg3vv7qik64sxnihheuvkfytpvzm5jmgz55cp6427yvyjsotid.onion:18333
+fpzycmcz4drh46fhcfdkgibnp7qgioo3upquxyjwk6zegirbcd4xqcid.onion:18333
+fqls7cvum7lpawad7n5zrvmrqwrd76quc5r7pblndaod3wqjlpfzxgid.onion:18333
+fwswqt2rbdbstx5kza4gb7aok3gezazfgtokadqeiwgkgdkwwdmmidyd.onion:18333
+fx7erwmkuhj7p2eiuisjwg3g3a3aw6uglepa47gwc76dlrwpc3nn5uid.onion:18333
+ghqbqp3dirya7espnj3m3kh6mhalqxjv75muum4seukopedtwysxc2qd.onion:18333
+gpvbbdsv673zfg2mpbzxexnmv3oqakgqooyvyzrlhu6mucylfob4whid.onion:18333
+gri2j4tudvoxaz26jbzmn4kloo5z7qsi3vfi3c5ok5tunm3yzmfgwyqd.onion:18333
+gsw6sn27quwf6u3swgra6o7lrp5qau6kt3ymuyoxgkth6wntzm2bjwyd.onion:18333
gy6nih4pmp5esyvvnhlj6qvk7zkbjuoswkxffyiip3dbkvsfxwz5zcqd.onion:18333
-hwipziotclxg3ledn5yj5j6n6pkrgnmlksozzlrtlnlpguvixox7naqd.onion:18333
+h4xr7yovy3kgrohdlb5zljtyweelyctfgf5q24nlhyoxbmjmbl7bfjyd.onion:18333
+h4yusgljraifanij4pxkw4qks4iilqbq35absi24cinuvuym56ge55ad.onion:18333
+hba3mphxhpuy4x5gjqyq64bwtlzlfuscxc7n5lh4k4oiwrgcz5ujwtid.onion:18333
+hj2txlxajdlh7jsfwqxtp3cltlptsr33ctjkbxhbzbyirkmcpfhsnyad.onion:18333
+hmtbnymouaimhnxazujw7i5b7hqdixrlibdyn3td4bdw4sj7sbnb7fqd.onion:18333
+htkiqaqoql7pjstenmw6v4blm6l57d6hl6mewxkmfi3qumozflx3gzyd.onion:18333
+hvbmmzvqrpgps2x5u4ip4ksf3e5m2fneac754gtnhjn2rsevni6cz3ad.onion:18333
+hvtxymvdb55u7lhdw6775akqy46inunl3uup27gnsxm2bqmv55wbacqd.onion:18333
+i5fjp7ggx62zlfkibzn7s6glpjp3h2ypfom3lmqixig7qbdgej35wfyd.onion:18333
i5gphw2d224tniqkjebxdwz5ygbbo5gcushoyevv7x7o454b6qlrzeid.onion:18333
+ihalgm3hs54h7aq37hbryaxcdlowmlms54i4cz6hqbz4n2qjjiw5uwid.onion:18333
ipbzs2lbe7lab2xaikvkdkwxian6t3nakaoltwbshpevbszdvoyyjiad.onion:18333
+iysx2dl4tpojiclh32iyhel6z7h227c7o7buzk5wuqw6qhuytvsu66yd.onion:18333
+jbgve7zi4vx5l7654ih4nzutspu36dvs66xlegciur2cpym4gdjigbyd.onion:18333
jjfuyj7krgzkmpxvn3b2j2hwlzkmze3ezy3ifwk7dnswwawgmzqhjrqd.onion:18333
jnphftehkfstwbko34idxlpo5fdw6lromkmeukxh3xclthlstehpg4ad.onion:18333
-jrhpwqahjrj75gtb7gt23eve65x7bbawy7j4edhmgbo5nj2mkaeghbyd.onion:18333
+jpujgmcr2ftklxrr7uwxh3jg43uqatys7wgosfbpfbx5txw2nz7wgnid.onion:18333
+jsc4frvvnl2d3bhzyofsc72xpztgm23nl4fnb4dwkzsxr6fhij2q5iyd.onion:18333
jun6gdmbgasr57bhr4zs3dfhc6pzpaw27nqb4dadbai7yrbq55zskeid.onion:18333
-o52y7fadtubr4tuqhix6ymrin3qzn7ubh5tewuuehw5wxcbnfj6yaoad.onion:18333
-rigfm3joif5lsl7b7yr6d6cvddukawykm7kgguzfwi6dplckyz6x7gad.onion:18333
-t6d6epb5ccbo4e66iaanukraxpjmqiqsz6poj5uvxu2ownnhcguygdyd.onion:18333
-test2vozlxfznmfyxzkulf3l6qe6dti5hqfjsxar5lml45cjnyeusmyd.onion:18333
-uxtmtmpkfaxc6zcxaxgydrukyd5jdrcp2m5oubpimijy44rnjuywijad.onion:18333
+kamanho5clcpn5l3sc6ih3vb4skmfhgxw3h2mgs7e5idfezu5dw5oxyd.onion:18333
+kejyzttreyd7nj2sxx25nk4qwgxtuqybylxuqrjroe5mbhlr532dplad.onion:18333
+knkkqbxhdit4xilksb5ys3qnqv63tah5uvu3n2imu4bycipu354ambyd.onion:18333
+kpsy7bbqxiotk55aacjt2hiaj6h5pxjjvsb63hgos4ayfzwrmnsqgsad.onion:18333
+kwjxlauwjtecjfsiwopbl5pvn5n6z5rz76uk6osmlurd3uyuymcw7aid.onion:18333
+m27hd27n7dmnygddnp5bnf6vl5uks77jrq2uhtxxvgewclzjwsixz3ad.onion:18333
+m33zm5qtzgaf65ahaxbom75zoehyzr3lbqf2obtpzzzjebv7yd73fsyd.onion:18333
+mjs6pdnd5h4ycmsgruww4crsesqzdw3femdinsi6oghmjld7loycomid.onion:18333
+n23anw4zb7f3paroac626oc2sqy3yn5kjfpcqvb3lvdyx7dzzpovd3id.onion:18333
+n4e6fp6xoyo2glsafjwbaq3wirhldpjw4mskn5lzkm4o5lhh5n5k7uqd.onion:18333
+noyzwtpfqybyhemrmxzd7nf4il5mhsolupp7xtmrjosat7qdmq4xgrad.onion:18333
+oln7ybci53wk4g5n42nipyixvyjxbludsbrfsmhnirb6tk7ovlikd5id.onion:18333
+oobwtn5csi4auevb2ns2b5rrjnxmhlzdmay4zxtzvkj7tayrgwfddiqd.onion:18333
+oond3qmndkbdg76ryyjztbmsmvoj43u64gjhr2nvqriujyteeu43irqd.onion:18333
+oqxivxpit74wsoptsb6kr3k2xeqpzfdozvw4m2wvvujrflxo4ykmzmqd.onion:18333
+oxkyujnjbl6k7kcxactyf4akp3ejtftnbmztk6utxt4zy4fhhtk3x5qd.onion:18333
+p2oitystyas5pxeo262mox6aof4tukybnl7cj7fcwoshqesvfk2yzhad.onion:18333
+pj2rxq2sfbwtsqqcbnfnwkg36d72yce56qmp2sjjmb7hvzpzai3ndead.onion:18333
+pu3zcecujzbsdaogf4qgo3ue67livoza62awlffjnqnribgmvyqfoxad.onion:18333
+q5qox756id5nfdu6ht4dghc35jezls4bgjcdnrds3pwndvdx32zmwlad.onion:18333
+qe2jbe447he6panfvpyqhyntf7346gmuf55bxrmdzggmgwyjsyknhxyd.onion:18333
+qf2taqwtz3pstt73hgbrfvtilgecsc556lizkzk2cisdqi7lrnst5byd.onion:18333
+qiep4hvuovedbbc36hl7nwslwi6ah6uw4nnseyjdtc73cc5rfdauvnad.onion:18333
+qqzemertqrw5qdfakjoay35weu6qshr2l5h4smlnqafi3zqfztx2mhyd.onion:18333
+qzx5f2ig2rk2ssrbopz2zlljq5mkeh3izhhx3t3cepse5qnhvpo2tzid.onion:18333
+r2bdfkchj2z6nrb56alubzmb4twzdncckbcxsvkszjc6mrinibakj3ad.onion:18333
+rfi2hdpjhhknalltbwdvyuhskh5yjs66rqzpy6ley7xtu4kvbeob6fqd.onion:18333
+rra7q7x3euc3ozyealiv3tsywrz34l466faxohmttwtf5dts73musjid.onion:18333
+sf2fkr6hgfezefxaqfqqn5rengrlkvwytrzepsavwotehp2lkvuys6id.onion:18333
+shph2uqcvbe2hc25q3ln73qsche5ddqb4u5tkmgqv73aicrmmkkj4kid.onion:18333
+slpigm5ep4zan3a65bybne67phjiyesbuk5s3bodefuhnx2cfdtit6qd.onion:18333
+sxm6kwrdp6f2ggaozhrl47xuy3es3sgm3ivppmh4xm3hfmetvwbyrcad.onion:18333
+t3z7sscjdbnsydohxcs5nmoxfi35p6zv4jv5jsltsl4datztkefumbid.onion:18333
+tdnctk4lx7jnklojisdczp6h4b4ejtuetyh5cbemzmcno7vvo7whvaad.onion:18333
+trxouvgcwrc3rkewpzvkxbfvpltfwmgl37woiujj4vn63zwhvk4xwbid.onion:18333
+tyo6jvqjh34r2b7i477xlcrwt7rq2fwuwpax5s3nw3tfbtwbox7aakyd.onion:18333
+u3znfxh6yjvclu3l646zzmgclqkmmrrrwtb5urtr4wd6svhrhdgrdxid.onion:18333
+uc25t5mdmnpxn52qib3cps4qyc4ghbntitetzia2vkqaawivyqzdhkad.onion:18333
+ud55gevhzhhcjsaghfzqq7wywxmw7n6syhwsds2uw4j7oj2oh5zxb6qd.onion:18333
+ueyykmnyqk2bnmbgvmqrb4jfbjvpgeew6cuq4gaqe7v2oiyxaubkx4qd.onion:18333
+uw7if6wybpzzwrawp6rdtkcript7vmuo4bptlg4den7t2o733j4hwrid.onion:18333
+vctlwaqgmu53eutz2hewuakcipfgtyljsd7czut4dd62xr3rp6fqezad.onion:18333
+vqnkdmpmecc5kondj32jwbemmruhmd5gkmfngkscetibzozryp4elkad.onion:18333
+w2nnsjp3o5ndh4reorwsudmkjvy3bou5gt7fmusvp3ne2fojgypapmyd.onion:18333
+wnxgjgjgplv5iu4mssyuunycvku4qnqr5t4q6cfdt47k7uwrfifuirad.onion:18333
+wou7tjvuqmql27mqmxbtsrrdxn4dqbti3jbpnklkruqjrztty2jmj4qd.onion:18333
+wpsahjbejxehpz772kzxonj777pejol2akcicduqov2r7ktm2b6l5pid.onion:18333
+wui5m2y5b7cms36ai6shzyqsg6qteejwmxsf26nyms6vcykxbvmh4uad.onion:18333
+wve6wksecq6eeu62phkkrjo5vydreenazzp5c6gttto5ynuyqjevddad.onion:18333
+x4wvxqotarjnii6ue4tfvqt5rxlc27p2c5imkipsu27oprfxstmdjgyd.onion:18333
+xafcyh6mxwebvcsgw4wcbuw7n4v7vbqhcznhwqcpqcu6dww2mjuw4nad.onion:18333
+xmzegggz4kmjmyip2dogvhj3a2m3s4mkimdjdqkwql5n3crqetddabid.onion:18333
+xr4vm6rxolszjw7m73mii35ppnyt7aqp7w53yyg7smcpbo2mg3fazpqd.onion:18333
+xr6damsupgddwwziixaeaogj67hnjdpjtey5bcnhs5ydppul4w5hnjyd.onion:18333
xuhmq42du7dckfophyr2rmf75aqkp3bk6y3wyyc6jxw7jmpp66zlm3id.onion:18333
-zcep44k7unwjm2wxty4ijh2e4fv5zgbrvwlctzyaqnrqhltjfzrtodad.onion:18333
+y4eud6iabao4666vcq3qch6kvg6lg5q5hazzetk4jnwr6vcdyjdv2yyd.onion:18333
+y5h652jz6sgmb4bkcfnfxnj24gnczqf7lhd5lqbvdhf5mpll4gye5kid.onion:18333
+ya6s7ov7myixz3ql23u45hty7moxo3r4d26qainw55z656vtau676xid.onion:18333
+yda7kwpii33j2qpq32ftf6lp22znknswipjwaccvsqj7l337jvfesnid.onion:18333
+ykaknq35wnwbobp4hgsxdd3ve575bsflst6xppo5b4wc44fp3xpqavad.onion:18333
+yqlk3ooxjpjd6u7b4kabe3gidclf25yuqbcpbkwnedmljrmxm3smqrid.onion:18333
+zcsn3j6aswnrf56xj2n5jn4tlwmyoq4benjn5ujcgz46co2y5tm642id.onion:18333
+zefnna2a3ga4ez2nutvypma7my35prw3ycinbqwva7v4pf3aurqhjcyd.onion:18333
+zevf5zwmkq2mvwuwyfavq62hjapkcdfslewiyi7mlrbx7vzidtij3xad.onion:18333
+zhiju2obxifqpjbcm6xtlgjdbof7jhoctvw3x57vhiftstb5hi3gmsqd.onion:18333
+zii3p3plpqt34xxd4mr7ofvvixnipt7ikohgvi3gtjlnzofjj37byiid.onion:18333
+zkqddzui5pkrqvjj2zwsf5kln7stlbmw5pmn6ut46fobvzyv2sn2ryid.onion:18333
+zmvizz7fd5hdue6wt3lwqumd6qwt4ijymmmotfzh75curq3mzjm53hyd.onion:18333
+zmxlrzoxg4fmso6l2xuq5tdxmlyakdqellzujh3a23iuzg4zlatnogqd.onion:18333
+zv5egkfmdpunhdm3whdaxgzpiapbkerfqd24juq647hmzhec7q7uxlid.onion:18333
diff --git a/contrib/seeds/nodes_testnet4.txt b/contrib/seeds/nodes_testnet4.txt
new file mode 100644
index 0000000000..0be4b9ee3d
--- /dev/null
+++ b/contrib/seeds/nodes_testnet4.txt
@@ -0,0 +1,9 @@
+18.189.156.102:48333 # AS16509
+18.201.207.55:48333 # AS16509
+51.158.248.8:48333 # AS12876
+57.128.176.163:48333 # AS8220
+82.67.102.15:48333 # AS12322
+88.99.248.50:48333 # AS24940
+95.217.73.162:48333 # AS24940
+103.99.171.212:48333 # AS54415
+103.165.192.210:48333 # AS54415
diff --git a/contrib/signet/miner b/contrib/signet/miner
index 4216ada5fa..3c90fe96a1 100755
--- a/contrib/signet/miner
+++ b/contrib/signet/miner
@@ -21,7 +21,7 @@ sys.path.insert(0, PATH_BASE_TEST_FUNCTIONAL)
from test_framework.blocktools import get_witness_script, script_BIP34_coinbase_height # noqa: E402
from test_framework.messages import CBlock, CBlockHeader, COutPoint, CTransaction, CTxIn, CTxInWitness, CTxOut, from_binary, from_hex, ser_string, ser_uint256, tx_from_hex # noqa: E402
from test_framework.psbt import PSBT, PSBTMap, PSBT_GLOBAL_UNSIGNED_TX, PSBT_IN_FINAL_SCRIPTSIG, PSBT_IN_FINAL_SCRIPTWITNESS, PSBT_IN_NON_WITNESS_UTXO, PSBT_IN_SIGHASH_TYPE # noqa: E402
-from test_framework.script import CScriptOp # noqa: E402
+from test_framework.script import CScript, CScriptOp # noqa: E402
logging.basicConfig(
format='%(asctime)s %(levelname)s %(message)s',
@@ -32,12 +32,6 @@ SIGNET_HEADER = b"\xec\xc7\xda\xa2"
PSBT_SIGNET_BLOCK = b"\xfc\x06signetb" # proprietary PSBT global field holding the block being signed
RE_MULTIMINER = re.compile(r"^(\d+)(-(\d+))?/(\d+)$")
-def create_coinbase(height, value, spk):
- cb = CTransaction()
- cb.vin = [CTxIn(COutPoint(0, 0xffffffff), script_BIP34_coinbase_height(height), 0xffffffff)]
- cb.vout = [CTxOut(value, spk)]
- return cb
-
def signet_txs(block, challenge):
# assumes signet solution has not been added yet so does not need
# to be removed
@@ -72,18 +66,7 @@ def signet_txs(block, challenge):
return spend, to_spend
-def do_createpsbt(block, signme, spendme):
- psbt = PSBT()
- psbt.g = PSBTMap( {PSBT_GLOBAL_UNSIGNED_TX: signme.serialize(),
- PSBT_SIGNET_BLOCK: block.serialize()
- } )
- psbt.i = [ PSBTMap( {PSBT_IN_NON_WITNESS_UTXO: spendme.serialize(),
- PSBT_IN_SIGHASH_TYPE: bytes([1,0,0,0])})
- ]
- psbt.o = [ PSBTMap() ]
- return psbt.to_base64()
-
-def do_decode_psbt(b64psbt):
+def decode_psbt(b64psbt):
psbt = PSBT.from_base64(b64psbt)
assert len(psbt.tx.vin) == 1
@@ -110,11 +93,17 @@ def finish_block(block, signet_solution, grind_cmd):
block.rehash()
return block
-def generate_psbt(tmpl, reward_spk, *, blocktime=None):
+def generate_psbt(tmpl, reward_spk, *, blocktime=None, poolid=None):
signet_spk = tmpl["signet_challenge"]
signet_spk_bin = bytes.fromhex(signet_spk)
- cbtx = create_coinbase(height=tmpl["height"], value=tmpl["coinbasevalue"], spk=reward_spk)
+ scriptSig = script_BIP34_coinbase_height(tmpl["height"])
+ if poolid is not None:
+ scriptSig = CScript(b"" + scriptSig + CScriptOp.encode_op_pushdata(poolid))
+
+ cbtx = CTransaction()
+ cbtx.vin = [CTxIn(COutPoint(0, 0xffffffff), scriptSig, 0xffffffff)]
+ cbtx.vout = [CTxOut(tmpl["coinbasevalue"], reward_spk)]
cbtx.vin[0].nSequence = 2**32-2
cbtx.rehash()
@@ -137,29 +126,23 @@ def generate_psbt(tmpl, reward_spk, *, blocktime=None):
signme, spendme = signet_txs(block, signet_spk_bin)
- return do_createpsbt(block, signme, spendme)
-
-def get_reward_address(args, height):
- if args.address is not None:
- return args.address
-
- if '*' not in args.descriptor:
- addr = json.loads(args.bcli("deriveaddresses", args.descriptor))[0]
- args.address = addr
- return addr
-
- remove = [k for k in args.derived_addresses.keys() if k+20 <= height]
- for k in remove:
- del args.derived_addresses[k]
-
- addr = args.derived_addresses.get(height, None)
- if addr is None:
- addrs = json.loads(args.bcli("deriveaddresses", args.descriptor, "[%d,%d]" % (height, height+20)))
- addr = addrs[0]
- for k, a in enumerate(addrs):
- args.derived_addresses[height+k] = a
+ psbt = PSBT()
+ psbt.g = PSBTMap( {PSBT_GLOBAL_UNSIGNED_TX: signme.serialize(),
+ PSBT_SIGNET_BLOCK: block.serialize()
+ } )
+ psbt.i = [ PSBTMap( {PSBT_IN_NON_WITNESS_UTXO: spendme.serialize(),
+ PSBT_IN_SIGHASH_TYPE: bytes([1,0,0,0])})
+ ]
+ psbt.o = [ PSBTMap() ]
+ return psbt.to_base64()
- return addr
+def get_poolid(args):
+ if args.poolid is not None:
+ return args.poolid.encode('utf8')
+ elif args.poolnum is not None:
+ return b"/signet:%d/" % (args.poolnum)
+ else:
+ return None
def get_reward_addr_spk(args, height):
assert args.address is not None or args.descriptor is not None
@@ -167,7 +150,20 @@ def get_reward_addr_spk(args, height):
if hasattr(args, "reward_spk"):
return args.address, args.reward_spk
- reward_addr = get_reward_address(args, height)
+ if args.address is not None:
+ reward_addr = args.address
+ elif '*' not in args.descriptor:
+ reward_addr = args.address = json.loads(args.bcli("deriveaddresses", args.descriptor))[0]
+ else:
+ remove = [k for k in args.derived_addresses.keys() if k+20 <= height]
+ for k in remove:
+ del args.derived_addresses[k]
+ if height not in args.derived_addresses:
+ addrs = json.loads(args.bcli("deriveaddresses", args.descriptor, "[%d,%d]" % (height, height+20)))
+ for k, a in enumerate(addrs):
+ args.derived_addresses[height+k] = a
+ reward_addr = args.derived_addresses[height]
+
reward_spk = bytes.fromhex(json.loads(args.bcli("getaddressinfo", reward_addr))["scriptPubKey"])
if args.address is not None:
# will always be the same, so cache
@@ -176,13 +172,14 @@ def get_reward_addr_spk(args, height):
return reward_addr, reward_spk
def do_genpsbt(args):
+ poolid = get_poolid(args)
tmpl = json.load(sys.stdin)
_, reward_spk = get_reward_addr_spk(args, tmpl["height"])
- psbt = generate_psbt(tmpl, reward_spk)
+ psbt = generate_psbt(tmpl, reward_spk, poolid=poolid)
print(psbt)
def do_solvepsbt(args):
- block, signet_solution = do_decode_psbt(sys.stdin.read())
+ block, signet_solution = decode_psbt(sys.stdin.read())
block = finish_block(block, signet_solution, args.grind_cmd)
print(block.serialize().hex())
@@ -225,44 +222,122 @@ def seconds_to_hms(s):
out = "-" + out
return out
-def next_block_delta(last_nbits, last_hash, ultimate_target, do_poisson, max_interval):
- # strategy:
- # 1) work out how far off our desired target we are
- # 2) cap it to a factor of 4 since that's the best we can do in a single retarget period
- # 3) use that to work out the desired average interval in this retarget period
- # 4) if doing poisson, use the last hash to pick a uniformly random number in [0,1), and work out a random multiplier to vary the average by
- # 5) cap the resulting interval between 1 second and 1 hour to avoid extremes
-
+class Generate:
INTERVAL = 600.0*2016/2015 # 10 minutes, adjusted for the off-by-one bug
- current_target = nbits_to_target(last_nbits)
- retarget_factor = ultimate_target / current_target
- retarget_factor = max(0.25, min(retarget_factor, 4.0))
- avg_interval = INTERVAL * retarget_factor
+ def __init__(self, multiminer=None, ultimate_target=None, poisson=False, max_interval=1800,
+ standby_delay=0, backup_delay=0, set_block_time=None,
+ poolid=None):
+ if multiminer is None:
+ multiminer = (0, 1, 1)
+ (self.multi_low, self.multi_high, self.multi_period) = multiminer
+ self.ultimate_target = ultimate_target
+ self.poisson = poisson
+ self.max_interval = max_interval
+ self.standby_delay = standby_delay
+ self.backup_delay = backup_delay
+ self.set_block_time = set_block_time
+ self.poolid = poolid
+
+ def next_block_delta(self, last_nbits, last_hash):
+ # strategy:
+ # 1) work out how far off our desired target we are
+ # 2) cap it to a factor of 4 since that's the best we can do in a single retarget period
+ # 3) use that to work out the desired average interval in this retarget period
+ # 4) if doing poisson, use the last hash to pick a uniformly random number in [0,1), and work out a random multiplier to vary the average by
+ # 5) cap the resulting interval between 1 second and 1 hour to avoid extremes
+
+ current_target = nbits_to_target(last_nbits)
+ retarget_factor = self.ultimate_target / current_target
+ retarget_factor = max(0.25, min(retarget_factor, 4.0))
+
+ avg_interval = self.INTERVAL * retarget_factor
+
+ if self.poisson:
+ det_rand = int(last_hash[-8:], 16) * 2**-32
+ this_interval_variance = -math.log1p(-det_rand)
+ else:
+ this_interval_variance = 1
- if do_poisson:
- det_rand = int(last_hash[-8:], 16) * 2**-32
- this_interval_variance = -math.log1p(-det_rand)
- else:
- this_interval_variance = 1
+ this_interval = avg_interval * this_interval_variance
+ this_interval = max(1, min(this_interval, self.max_interval))
+
+ return this_interval
+
+ def next_block_is_mine(self, last_hash):
+ det_rand = int(last_hash[-16:-8], 16)
+ return self.multi_low <= (det_rand % self.multi_period) < self.multi_high
+
+ def next_block_time(self, now, bestheader, is_first_block):
+ if self.set_block_time is not None:
+ logging.debug("Setting start time to %d", self.set_block_time)
+ self.mine_time = self.set_block_time
+ self.action_time = now
+ self.is_mine = True
+ elif bestheader["height"] == 0:
+ time_delta = self.INTERVAL * 100 # plenty of time to mine 100 blocks
+ logging.info("Backdating time for first block to %d minutes ago" % (time_delta/60))
+ self.mine_time = now - time_delta
+ self.action_time = now
+ self.is_mine = True
+ else:
+ time_delta = self.next_block_delta(int(bestheader["bits"], 16), bestheader["hash"])
+ self.mine_time = bestheader["time"] + time_delta
+
+ self.is_mine = self.next_block_is_mine(bestheader["hash"])
+
+ self.action_time = self.mine_time
+ if not self.is_mine:
+ self.action_time += self.backup_delay
- this_interval = avg_interval * this_interval_variance
- this_interval = max(1, min(this_interval, max_interval))
+ if self.standby_delay > 0:
+ self.action_time += self.standby_delay
+ elif is_first_block:
+ # for non-standby, always mine immediately on startup,
+ # even if the next block shouldn't be ours
+ self.action_time = now
- return this_interval
+ # don't want fractional times so round down
+ self.mine_time = int(self.mine_time)
+ self.action_time = int(self.action_time)
-def next_block_is_mine(last_hash, my_blocks):
- det_rand = int(last_hash[-16:-8], 16)
- return my_blocks[0] <= (det_rand % my_blocks[2]) < my_blocks[1]
+ # can't mine a block 2h in the future; 1h55m for some safety
+ self.action_time = max(self.action_time, self.mine_time - 6900)
+
+ def gbt(self, bcli, bestblockhash, now):
+ tmpl = json.loads(bcli("getblocktemplate", '{"rules":["signet","segwit"]}'))
+ if tmpl["previousblockhash"] != bestblockhash:
+ logging.warning("GBT based off unexpected block (%s not %s), retrying", tmpl["previousblockhash"], bci["bestblockhash"])
+ time.sleep(1)
+ return None
+
+ if tmpl["mintime"] > self.mine_time:
+ logging.info("Updating block time from %d to %d", self.mine_time, tmpl["mintime"])
+ self.mine_time = tmpl["mintime"]
+ if self.mine_time > now:
+ logging.error("GBT mintime is in the future: %d is %d seconds later than %d", self.mine_time, (self.mine_time-now), now)
+ return None
+
+ return tmpl
+
+ def mine(self, bcli, grind_cmd, tmpl, reward_spk):
+ psbt = generate_psbt(tmpl, reward_spk, blocktime=self.mine_time, poolid=self.poolid)
+ input_stream = os.linesep.join([psbt, "true", "ALL"]).encode('utf8')
+ psbt_signed = json.loads(bcli("-stdin", "walletprocesspsbt", input=input_stream))
+ if not psbt_signed.get("complete",False):
+ logging.debug("Generated PSBT: %s" % (psbt,))
+ sys.stderr.write("PSBT signing failed\n")
+ return None
+ block, signet_solution = decode_psbt(psbt_signed["psbt"])
+ return finish_block(block, signet_solution, grind_cmd)
def do_generate(args):
- if args.max_blocks is not None:
- if args.ongoing:
- logging.error("Cannot specify both --ongoing and --max-blocks")
- return 1
+ if args.set_block_time is not None:
+ max_blocks = 1
+ elif args.max_blocks is not None:
if args.max_blocks < 1:
- logging.error("N must be a positive integer")
+ logging.error("--max_blocks must specify a positive integer")
return 1
max_blocks = args.max_blocks
elif args.ongoing:
@@ -270,17 +345,11 @@ def do_generate(args):
else:
max_blocks = 1
- if args.set_block_time is not None and max_blocks != 1:
- logging.error("Cannot specify --ongoing or --max-blocks > 1 when using --set-block-time")
- return 1
if args.set_block_time is not None and args.set_block_time < 0:
args.set_block_time = time.time()
logging.info("Treating negative block time as current time (%d)" % (args.set_block_time))
if args.min_nbits:
- if args.nbits is not None:
- logging.error("Cannot specify --nbits and --min-nbits")
- return 1
args.nbits = "1e0377ae"
logging.info("Using nbits=%s" % (args.nbits))
@@ -312,8 +381,13 @@ def do_generate(args):
logging.error("--max-interval must be at least 960 (16 minutes)")
return 1
+ poolid = get_poolid(args)
+
ultimate_target = nbits_to_target(int(args.nbits,16))
+ gen = Generate(multiminer=my_blocks, ultimate_target=ultimate_target, poisson=args.poisson, max_interval=args.max_interval,
+ standby_delay=args.standby_delay, backup_delay=args.backup_delay, set_block_time=args.set_block_time, poolid=poolid)
+
mined_blocks = 0
bestheader = {"hash": None}
lastheader = None
@@ -328,104 +402,55 @@ def do_generate(args):
if lastheader is None:
lastheader = bestheader["hash"]
elif bestheader["hash"] != lastheader:
- next_delta = next_block_delta(int(bestheader["bits"], 16), bestheader["hash"], ultimate_target, args.poisson, args.max_interval)
+ next_delta = gen.next_block_delta(int(bestheader["bits"], 16), bestheader["hash"])
next_delta += bestheader["time"] - time.time()
- next_is_mine = next_block_is_mine(bestheader["hash"], my_blocks)
+ next_is_mine = gen.next_block_is_mine(bestheader["hash"])
logging.info("Received new block at height %d; next in %s (%s)", bestheader["height"], seconds_to_hms(next_delta), ("mine" if next_is_mine else "backup"))
lastheader = bestheader["hash"]
# when is the next block due to be mined?
now = time.time()
- if args.set_block_time is not None:
- logging.debug("Setting start time to %d", args.set_block_time)
- mine_time = args.set_block_time
- action_time = now
- is_mine = True
- elif bestheader["height"] == 0:
- time_delta = next_block_delta(int(bestheader["bits"], 16), bci["bestblockhash"], ultimate_target, args.poisson, args.max_interval)
- time_delta *= 100 # 100 blocks
- logging.info("Backdating time for first block to %d minutes ago" % (time_delta/60))
- mine_time = now - time_delta
- action_time = now
- is_mine = True
- else:
- time_delta = next_block_delta(int(bestheader["bits"], 16), bci["bestblockhash"], ultimate_target, args.poisson, args.max_interval)
- mine_time = bestheader["time"] + time_delta
-
- is_mine = next_block_is_mine(bci["bestblockhash"], my_blocks)
-
- action_time = mine_time
- if not is_mine:
- action_time += args.backup_delay
-
- if args.standby_delay > 0:
- action_time += args.standby_delay
- elif mined_blocks == 0:
- # for non-standby, always mine immediately on startup,
- # even if the next block shouldn't be ours
- action_time = now
-
- # don't want fractional times so round down
- mine_time = int(mine_time)
- action_time = int(action_time)
-
- # can't mine a block 2h in the future; 1h55m for some safety
- action_time = max(action_time, mine_time - 6900)
+ gen.next_block_time(now, bestheader, (mined_blocks == 0))
# ready to go? otherwise sleep and check for new block
- if now < action_time:
- sleep_for = min(action_time - now, 60)
- if mine_time < now:
+ if now < gen.action_time:
+ sleep_for = min(gen.action_time - now, 60)
+ if gen.mine_time < now:
# someone else might have mined the block,
# so check frequently, so we don't end up late
# mining the next block if it's ours
sleep_for = min(20, sleep_for)
- minestr = "mine" if is_mine else "backup"
- logging.debug("Sleeping for %s, next block due in %s (%s)" % (seconds_to_hms(sleep_for), seconds_to_hms(mine_time - now), minestr))
+ minestr = "mine" if gen.is_mine else "backup"
+ logging.debug("Sleeping for %s, next block due in %s (%s)" % (seconds_to_hms(sleep_for), seconds_to_hms(gen.mine_time - now), minestr))
time.sleep(sleep_for)
continue
# gbt
- tmpl = json.loads(args.bcli("getblocktemplate", '{"rules":["signet","segwit"]}'))
- if tmpl["previousblockhash"] != bci["bestblockhash"]:
- logging.warning("GBT based off unexpected block (%s not %s), retrying", tmpl["previousblockhash"], bci["bestblockhash"])
- time.sleep(1)
+ tmpl = gen.gbt(args.bcli, bci["bestblockhash"], now)
+ if tmpl is None:
continue
logging.debug("GBT template: %s", tmpl)
- if tmpl["mintime"] > mine_time:
- logging.info("Updating block time from %d to %d", mine_time, tmpl["mintime"])
- mine_time = tmpl["mintime"]
- if mine_time > now:
- logging.error("GBT mintime is in the future: %d is %d seconds later than %d", mine_time, (mine_time-now), now)
- return 1
-
# address for reward
reward_addr, reward_spk = get_reward_addr_spk(args, tmpl["height"])
# mine block
- logging.debug("Mining block delta=%s start=%s mine=%s", seconds_to_hms(mine_time-bestheader["time"]), mine_time, is_mine)
+ logging.debug("Mining block delta=%s start=%s mine=%s", seconds_to_hms(gen.mine_time-bestheader["time"]), gen.mine_time, gen.is_mine)
mined_blocks += 1
- psbt = generate_psbt(tmpl, reward_spk, blocktime=mine_time)
- input_stream = os.linesep.join([psbt, "true", "ALL"]).encode('utf8')
- psbt_signed = json.loads(args.bcli("-stdin", "walletprocesspsbt", input=input_stream))
- if not psbt_signed.get("complete",False):
- logging.debug("Generated PSBT: %s" % (psbt,))
- sys.stderr.write("PSBT signing failed\n")
+ block = gen.mine(args.bcli, args.grind_cmd, tmpl, reward_spk)
+ if block is None:
return 1
- block, signet_solution = do_decode_psbt(psbt_signed["psbt"])
- block = finish_block(block, signet_solution, args.grind_cmd)
# submit block
r = args.bcli("-stdin", "submitblock", input=block.serialize().hex().encode('utf8'))
# report
- bstr = "block" if is_mine else "backup block"
+ bstr = "block" if gen.is_mine else "backup block"
- next_delta = next_block_delta(block.nBits, block.hash, ultimate_target, args.poisson, args.max_interval)
+ next_delta = gen.next_block_delta(block.nBits, block.hash)
next_delta += block.nTime - time.time()
- next_is_mine = next_block_is_mine(block.hash, my_blocks)
+ next_is_mine = gen.next_block_is_mine(block.hash)
logging.debug("Block hash %s payout to %s", block.hash, reward_addr)
logging.info("Mined %s at height %d; next in %s (%s)", bstr, tmpl["height"], seconds_to_hms(next_delta), ("mine" if next_is_mine else "backup"))
@@ -492,11 +517,13 @@ def main():
generate = cmds.add_parser("generate", help="Mine blocks")
generate.set_defaults(fn=do_generate)
- generate.add_argument("--ongoing", action="store_true", help="Keep mining blocks")
- generate.add_argument("--max-blocks", default=None, type=int, help="Max blocks to mine (default=1)")
- generate.add_argument("--set-block-time", default=None, type=int, help="Set block time (unix timestamp)")
- generate.add_argument("--nbits", default=None, type=str, help="Target nBits (specify difficulty)")
- generate.add_argument("--min-nbits", action="store_true", help="Target minimum nBits (use min difficulty)")
+ howmany = generate.add_mutually_exclusive_group()
+ howmany.add_argument("--ongoing", action="store_true", help="Keep mining blocks")
+ howmany.add_argument("--max-blocks", default=None, type=int, help="Max blocks to mine (default=1)")
+ howmany.add_argument("--set-block-time", default=None, type=int, help="Set block time (unix timestamp); implies --max-blocks=1")
+ nbit_target = generate.add_mutually_exclusive_group()
+ nbit_target.add_argument("--nbits", default=None, type=str, help="Target nBits (specify difficulty)")
+ nbit_target.add_argument("--min-nbits", action="store_true", help="Target minimum nBits (use min difficulty)")
generate.add_argument("--poisson", action="store_true", help="Simulate randomised block times")
generate.add_argument("--multiminer", default=None, type=str, help="Specify which set of blocks to mine (eg: 1-40/100 for the first 40%%, 2/3 for the second 3rd)")
generate.add_argument("--backup-delay", default=300, type=int, help="Seconds to delay before mining blocks reserved for other miners (default=300)")
@@ -505,12 +532,17 @@ def main():
calibrate = cmds.add_parser("calibrate", help="Calibrate difficulty")
calibrate.set_defaults(fn=do_calibrate)
- calibrate.add_argument("--nbits", type=str, default=None)
- calibrate.add_argument("--seconds", type=int, default=None)
+ calibrate_by = calibrate.add_mutually_exclusive_group()
+ calibrate_by.add_argument("--nbits", type=str, default=None)
+ calibrate_by.add_argument("--seconds", type=int, default=None)
for sp in [genpsbt, generate]:
- sp.add_argument("--address", default=None, type=str, help="Address for block reward payment")
- sp.add_argument("--descriptor", default=None, type=str, help="Descriptor for block reward payment")
+ payto = sp.add_mutually_exclusive_group(required=True)
+ payto.add_argument("--address", default=None, type=str, help="Address for block reward payment")
+ payto.add_argument("--descriptor", default=None, type=str, help="Descriptor for block reward payment")
+ pool = sp.add_mutually_exclusive_group()
+ pool.add_argument("--poolnum", default=None, type=int, help="Identify blocks that you mine")
+ pool.add_argument("--poolid", default=None, type=str, help="Identify blocks that you mine (eg: /signet:1/)")
for sp in [solvepsbt, generate, calibrate]:
sp.add_argument("--grind-cmd", default=None, type=str, required=(sp==calibrate), help="Command to grind a block header for proof-of-work")
@@ -520,12 +552,6 @@ def main():
args.bcli = lambda *a, input=b"", **kwargs: bitcoin_cli(args.cli.split(" "), list(a), input=input, **kwargs)
if hasattr(args, "address") and hasattr(args, "descriptor"):
- if args.address is None and args.descriptor is None:
- sys.stderr.write("Must specify --address or --descriptor\n")
- return 1
- elif args.address is not None and args.descriptor is not None:
- sys.stderr.write("Only specify one of --address or --descriptor\n")
- return 1
args.derived_addresses = {}
if args.debug:
diff --git a/contrib/tracing/README.md b/contrib/tracing/README.md
index 206bec1647..c471770a7d 100644
--- a/contrib/tracing/README.md
+++ b/contrib/tracing/README.md
@@ -82,7 +82,7 @@ about the connection. Peers can be selected individually to view recent P2P
messages.
```
-$ python3 contrib/tracing/p2p_monitor.py ./src/bitcoind
+$ python3 contrib/tracing/p2p_monitor.py ./build/src/bitcoind
```
Lists selectable peers and traffic and connection information.
@@ -150,7 +150,7 @@ lost. BCC prints: `Possibly lost 2 samples` on lost messages.
```
-$ python3 contrib/tracing/log_raw_p2p_msgs.py ./src/bitcoind
+$ python3 contrib/tracing/log_raw_p2p_msgs.py ./build/src/bitcoind
```
```
@@ -188,7 +188,7 @@ In a different terminal, starting Bitcoin Core in SigNet mode and with
re-indexing enabled.
```
-$ ./src/bitcoind -signet -reindex
+$ ./build/src/bitcoind -signet -reindex
```
This produces the following output.
@@ -241,7 +241,7 @@ A BCC Python script to log the UTXO cache flushes. Based on the
`utxocache:flush` tracepoint.
```bash
-$ python3 contrib/tracing/log_utxocache_flush.py ./src/bitcoind
+$ python3 contrib/tracing/log_utxocache_flush.py ./build/src/bitcoind
```
```
@@ -300,7 +300,7 @@ comprising a timestamp along with all event data available via the event's
tracepoint.
```console
-$ python3 contrib/tracing/mempool_monitor.py ./src/bitcoind
+$ python3 contrib/tracing/mempool_monitor.py ./build/src/bitcoind
```
```
diff --git a/contrib/tracing/connectblock_benchmark.bt b/contrib/tracing/connectblock_benchmark.bt
index 6e7a98ef07..4aa4742103 100755
--- a/contrib/tracing/connectblock_benchmark.bt
+++ b/contrib/tracing/connectblock_benchmark.bt
@@ -16,7 +16,7 @@
This script requires a 'bitcoind' binary compiled with eBPF support and the
'validation:block_connected' USDT. By default, it's assumed that 'bitcoind' is
- located in './src/bitcoind'. This can be modified in the script below.
+ located in './build/src/bitcoind'. This can be modified in the script below.
EXAMPLES:
@@ -67,7 +67,7 @@ BEGIN
connected block is between the start and end height (or the end height is
unset).
*/
-usdt:./src/bitcoind:validation:block_connected /arg1 >= $1 && (arg1 <= $2 || $2 == 0 )/
+usdt:./build/src/bitcoind:validation:block_connected /arg1 >= $1 && (arg1 <= $2 || $2 == 0 )/
{
$height = arg1;
$transactions = arg2;
@@ -102,7 +102,7 @@ usdt:./src/bitcoind:validation:block_connected /arg1 >= $1 && (arg1 <= $2 || $2
blocks where the time it took to connect the block is above the
<logging threshold in ms>.
*/
-usdt:./src/bitcoind:validation:block_connected / (uint64) arg5 / 1000> $3 /
+usdt:./build/src/bitcoind:validation:block_connected / (uint64) arg5 / 1000> $3 /
{
$hash = arg0;
$height = (int32) arg1;
diff --git a/contrib/tracing/log_p2p_traffic.bt b/contrib/tracing/log_p2p_traffic.bt
index f62956aa5e..89e5b777be 100755
--- a/contrib/tracing/log_p2p_traffic.bt
+++ b/contrib/tracing/log_p2p_traffic.bt
@@ -5,7 +5,7 @@ BEGIN
printf("Logging P2P traffic\n")
}
-usdt:./src/bitcoind:net:inbound_message
+usdt:./build/src/bitcoind:net:inbound_message
{
$peer_id = (int64) arg0;
$peer_addr = str(arg1);
@@ -15,7 +15,7 @@ usdt:./src/bitcoind:net:inbound_message
printf("inbound '%s' msg from peer %d (%s, %s) with %d bytes\n", $msg_type, $peer_id, $peer_type, $peer_addr, $msg_len);
}
-usdt:./src/bitcoind:net:outbound_message
+usdt:./build/src/bitcoind:net:outbound_message
{
$peer_id = (int64) arg0;
$peer_addr = str(arg1);
diff --git a/contrib/tracing/log_utxos.bt b/contrib/tracing/log_utxos.bt
index 54d5010f82..a04f221157 100755
--- a/contrib/tracing/log_utxos.bt
+++ b/contrib/tracing/log_utxos.bt
@@ -8,7 +8,7 @@
This script requires a 'bitcoind' binary compiled with eBPF support and the
'utxocache' tracepoints. By default, it's assumed that 'bitcoind' is
- located in './src/bitcoind'. This can be modified in the script below.
+ located in './build/src/bitcoind'. This can be modified in the script below.
NOTE: requires bpftrace v0.12.0 or above.
*/
@@ -22,7 +22,7 @@ BEGIN
/*
Attaches to the 'utxocache:add' tracepoint and prints additions to the UTXO set cache.
*/
-usdt:./src/bitcoind:utxocache:add
+usdt:./build/src/bitcoind:utxocache:add
{
$txid = arg0;
$index = (uint32)arg1;
@@ -44,7 +44,7 @@ usdt:./src/bitcoind:utxocache:add
/*
Attaches to the 'utxocache:spent' tracepoint and prints spents from the UTXO set cache.
*/
-usdt:./src/bitcoind:utxocache:spent
+usdt:./build/src/bitcoind:utxocache:spent
{
$txid = arg0;
$index = (uint32)arg1;
@@ -66,7 +66,7 @@ usdt:./src/bitcoind:utxocache:spent
/*
Attaches to the 'utxocache:uncache' tracepoint and uncache UTXOs from the UTXO set cache.
*/
-usdt:./src/bitcoind:utxocache:uncache
+usdt:./build/src/bitcoind:utxocache:uncache
{
$txid = arg0;
$index = (uint32)arg1;
diff --git a/contrib/valgrind.supp b/contrib/valgrind.supp
index c537f9e7ec..1ec5b8d20d 100644
--- a/contrib/valgrind.supp
+++ b/contrib/valgrind.supp
@@ -2,14 +2,14 @@
# dependencies that cannot be fixed in-tree.
#
# Example use:
-# $ valgrind --suppressions=contrib/valgrind.supp src/test/test_bitcoin
+# $ valgrind --suppressions=contrib/valgrind.supp build/src/test/test_bitcoin
# $ valgrind --suppressions=contrib/valgrind.supp --leak-check=full \
-# --show-leak-kinds=all src/test/test_bitcoin
+# --show-leak-kinds=all build/src/test/test_bitcoin
#
# To create suppressions for found issues, use the --gen-suppressions=all option:
# $ valgrind --suppressions=contrib/valgrind.supp --leak-check=full \
# --show-leak-kinds=all --gen-suppressions=all --show-reachable=yes \
-# --error-limit=no src/test/test_bitcoin
+# --error-limit=no build/src/test/test_bitcoin
#
# Note that suppressions may depend on OS and/or library versions.
# Tested on: