diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-12-10 16:19:40 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2018-12-10 16:01:50 +0000 |
commit | 51f6c2793adab2d864b3d2b360000ef8db1d3e92 (patch) | |
tree | 835b3b4446b012c75e80177cef9fbe6972cc7dbe /chromium/net/http | |
parent | 6036726eb981b6c4b42047513b9d3f4ac865daac (diff) | |
download | qtwebengine-chromium-51f6c2793adab2d864b3d2b360000ef8db1d3e92.tar.gz |
BASELINE: Update Chromium to 71.0.3578.93
Change-Id: I6a32086c33670e1b033f8b10e6bf1fd4da1d105d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/net/http')
51 files changed, 3988 insertions, 838 deletions
diff --git a/chromium/net/http/http_auth_cache.cc b/chromium/net/http/http_auth_cache.cc index ada6a91fa74..ddd3c2abc53 100644 --- a/chromium/net/http/http_auth_cache.cc +++ b/chromium/net/http/http_auth_cache.cc @@ -68,6 +68,11 @@ void RecordLookupByPathPosition(int position) { UMA_HISTOGRAM_COUNTS_100("Net.HttpAuthCacheLookupByPathPosition", position); } +void RecordEntriesExaminedWhenNoMatch(int num_examined_entries) { + UMA_HISTOGRAM_COUNTS_100("Net.HttpAuthCacheEntriesExaminedWhenNoMatch", + num_examined_entries); +} + } // namespace namespace net { @@ -84,17 +89,18 @@ HttpAuthCache::Entry* HttpAuthCache::Lookup(const GURL& origin, int entries_examined = 0; // Linear scan through the realm entries. - for (EntryList::iterator it = entries_.begin(); it != entries_.end(); ++it) { + for (auto it = entries_.begin(); it != entries_.end(); ++it) { ++entries_examined; if (it->origin() == origin && it->realm() == realm && it->scheme() == scheme) { it->last_use_time_ticks_ = tick_clock_->NowTicks(); RecordLookupPosition(entries_examined); - return &(*it); + return MoveEntryTowardsBeginning(it); } } RecordLookupPosition(0); - return NULL; // No realm entry found. + RecordEntriesExaminedWhenNoMatch(entries_examined); + return nullptr; // No realm entry found. } // Performance: O(n*m), where n is the number of realm entries, m is the number @@ -102,7 +108,7 @@ HttpAuthCache::Entry* HttpAuthCache::Lookup(const GURL& origin, // kept small because AddPath() only keeps the shallowest entry. HttpAuthCache::Entry* HttpAuthCache::LookupByPath(const GURL& origin, const std::string& path) { - HttpAuthCache::Entry* best_match = NULL; + auto best_match_it = entries_.end(); size_t best_match_length = 0; int best_match_position = 0; CheckOriginIsValid(origin); @@ -116,20 +122,23 @@ HttpAuthCache::Entry* HttpAuthCache::LookupByPath(const GURL& origin, int entries_examined = 0; // Linear scan through the realm entries. - for (EntryList::iterator it = entries_.begin(); it != entries_.end(); ++it) { + for (auto it = entries_.begin(); it != entries_.end(); ++it) { ++entries_examined; size_t len = 0; if (it->origin() == origin && it->HasEnclosingPath(parent_dir, &len) && - (!best_match || len > best_match_length)) { - best_match = &(*it); + (best_match_it == entries_.end() || len > best_match_length)) { + best_match_it = it; best_match_length = len; best_match_position = entries_examined; } } - if (best_match) - best_match->last_use_time_ticks_ = tick_clock_->NowTicks(); RecordLookupByPathPosition(best_match_position); - return best_match; + if (best_match_it != entries_.end()) { + best_match_it->last_use_time_ticks_ = tick_clock_->NowTicks(); + return MoveEntryTowardsBeginning(best_match_it); + } + RecordEntriesExaminedWhenNoMatch(entries_examined); + return nullptr; } HttpAuthCache::Entry* HttpAuthCache::Add(const GURL& origin, @@ -192,6 +201,24 @@ void HttpAuthCache::Entry::UpdateStaleChallenge( nonce_count_ = 1; } +bool HttpAuthCache::Entry::IsEqualForTesting(const Entry& other) const { + if (origin() != other.origin()) + return false; + if (realm() != other.realm()) + return false; + if (scheme() != other.scheme()) + return false; + if (auth_challenge() != other.auth_challenge()) + return false; + if (!credentials().Equals(other.credentials())) + return false; + std::set<std::string> lhs_paths(paths_.begin(), paths_.end()); + std::set<std::string> rhs_paths(other.paths_.begin(), other.paths_.end()); + if (lhs_paths != rhs_paths) + return false; + return true; +} + HttpAuthCache::Entry::Entry() : scheme_(HttpAuth::AUTH_SCHEME_MAX), nonce_count_(0) { @@ -199,7 +226,7 @@ HttpAuthCache::Entry::Entry() void HttpAuthCache::Entry::AddPath(const std::string& path) { std::string parent_dir = GetParentDirectory(path); - if (!HasEnclosingPath(parent_dir, NULL)) { + if (!HasEnclosingPath(parent_dir, nullptr)) { // Remove any entries that have been subsumed by the new entry. base::EraseIf(paths_, IsEnclosedBy(parent_dir)); @@ -221,8 +248,7 @@ void HttpAuthCache::Entry::AddPath(const std::string& path) { bool HttpAuthCache::Entry::HasEnclosingPath(const std::string& dir, size_t* path_len) { DCHECK(GetParentDirectory(dir) == dir); - for (PathList::const_iterator it = paths_.begin(); it != paths_.end(); - ++it) { + for (PathList::iterator it = paths_.begin(); it != paths_.end(); ++it) { if (IsEnclosingPath(*it, dir)) { // No element of paths_ may enclose any other element. // Therefore this path is the tightest bound. Important because @@ -230,6 +256,10 @@ bool HttpAuthCache::Entry::HasEnclosingPath(const std::string& dir, // has the closest enclosing path in LookupByPath(). if (path_len) *path_len = it->length(); + // Move the found path up by one place so that more frequently used paths + // migrate towards the beginning of the list of paths. + if (it != paths_.begin()) + std::iter_swap(it, std::prev(it)); return true; } } @@ -240,7 +270,7 @@ bool HttpAuthCache::Remove(const GURL& origin, const std::string& realm, HttpAuth::Scheme scheme, const AuthCredentials& credentials) { - for (EntryList::iterator it = entries_.begin(); it != entries_.end(); ++it) { + for (auto it = entries_.begin(); it != entries_.end(); ++it) { if (it->origin() == origin && it->realm() == realm && it->scheme() == scheme) { if (credentials.Equals(it->credentials())) { @@ -280,16 +310,14 @@ bool HttpAuthCache::UpdateStaleChallenge(const GURL& origin, } void HttpAuthCache::UpdateAllFrom(const HttpAuthCache& other) { - for (EntryList::const_iterator it = other.entries_.begin(); - it != other.entries_.end(); ++it) { + for (auto it = other.entries_.begin(); it != other.entries_.end(); ++it) { // Add an Entry with one of the original entry's paths. DCHECK(it->paths_.size() > 0); Entry* entry = Add(it->origin(), it->realm(), it->scheme(), it->auth_challenge(), it->credentials(), it->paths_.back()); // Copy all other paths. - for (Entry::PathList::const_reverse_iterator it2 = ++it->paths_.rbegin(); - it2 != it->paths_.rend(); ++it2) + for (auto it2 = ++it->paths_.rbegin(); it2 != it->paths_.rend(); ++it2) entry->AddPath(*it2); // Copy nonce count (for digest authentication). entry->nonce_count_ = it->nonce_count_; @@ -300,4 +328,13 @@ size_t HttpAuthCache::GetEntriesSizeForTesting() { return entries_.size(); } +HttpAuthCache::Entry* HttpAuthCache::MoveEntryTowardsBeginning( + EntryList::iterator entry_it) { + if (entry_it != entries_.begin()) { + std::iter_swap(entry_it, std::prev(entry_it)); + return &(*std::prev(entry_it)); + } + return &(*entry_it); +} + } // namespace net diff --git a/chromium/net/http/http_auth_cache.h b/chromium/net/http/http_auth_cache.h index 8698fb780e5..63b54e6f103 100644 --- a/chromium/net/http/http_auth_cache.h +++ b/chromium/net/http/http_auth_cache.h @@ -62,6 +62,10 @@ class NET_EXPORT HttpAuthCache { void UpdateStaleChallenge(const std::string& auth_challenge); + bool IsEqualForTesting(const Entry& other) const; + + bool operator==(const Entry& other) const = delete; + private: friend class HttpAuthCache; FRIEND_TEST_ALL_PREFIXES(HttpAuthCacheTest, AddPath); @@ -77,9 +81,12 @@ class NET_EXPORT HttpAuthCache { // Returns true if |dir| is contained within the realm's protection // space. |*path_len| is set to the length of the enclosing path if - // such a path exists and |path_len| is non-NULL. If no enclosing + // such a path exists and |path_len| is non-nullptr. If no enclosing // path is found, |*path_len| is left unmodified. // + // If an enclosing path is found, moves it up by one place in the paths list + // so that more frequently used paths migrate to the front of the list. + // // Note that proxy auth cache entries are associated with empty // paths. Therefore it is possible for HasEnclosingPath() to return // true and set |*path_len| to 0. @@ -117,22 +124,26 @@ class NET_EXPORT HttpAuthCache { ~HttpAuthCache(); // Find the realm entry on server |origin| for realm |realm| and - // scheme |scheme|. + // scheme |scheme|. If a matching entry is found, move it up by one place + // in the entries list, so that more frequently used entries migrate to the + // front of the list. // |origin| - the {scheme, host, port} of the server. // |realm| - case sensitive realm string. // |scheme| - the authentication scheme (i.e. basic, negotiate). - // returns - the matched entry or NULL. + // returns - the matched entry or nullptr. Entry* Lookup(const GURL& origin, const std::string& realm, HttpAuth::Scheme scheme); // Find the entry on server |origin| whose protection space includes // |path|. This uses the assumption in RFC 2617 section 2 that deeper - // paths lie in the same protection space. + // paths lie in the same protection space. If a matching entry is found, move + // it up by one place in the entries list, so that more frequently used + // entries migrate to the front of the list. // |origin| - the {scheme, host, port} of the server. // |path| - absolute path of the resource, or empty string in case of // proxy auth (which does not use the concept of paths). - // returns - the matched entry or NULL. + // returns - the matched entry or nullptr. Entry* LookupByPath(const GURL& origin, const std::string& path); // Add an entry on server |origin| for realm |handler->realm()| and @@ -197,6 +208,12 @@ class NET_EXPORT HttpAuthCache { const base::TickClock* tick_clock_ = base::DefaultTickClock::GetInstance(); const base::Clock* clock_ = base::DefaultClock::GetInstance(); + + // Moves an entry towards the beginning of the entry list by one place, if it + // is not already at the beginning. This makes the more frequently accessed + // entries migrate towards the beginning of the list. + // Returns: the given entry, after possible move. + Entry* MoveEntryTowardsBeginning(EntryList::iterator entry_it); }; // An authentication realm entry. diff --git a/chromium/net/http/http_auth_cache_unittest.cc b/chromium/net/http/http_auth_cache_unittest.cc index 9f756e115b4..00a57fb1792 100644 --- a/chromium/net/http/http_auth_cache_unittest.cc +++ b/chromium/net/http/http_auth_cache_unittest.cc @@ -177,55 +177,59 @@ TEST(HttpAuthCacheTest, Basic) { EXPECT_EQ(ASCIIToUTF16("realm2-password"), entry->credentials().password()); // Check that subpaths are recognized. - HttpAuthCache::Entry* realm2_entry = cache.Lookup( - origin, kRealm2, HttpAuth::AUTH_SCHEME_BASIC); - HttpAuthCache::Entry* realm4_entry = cache.Lookup( - origin, kRealm4, HttpAuth::AUTH_SCHEME_BASIC); - EXPECT_FALSE(NULL == realm2_entry); - EXPECT_FALSE(NULL == realm4_entry); + HttpAuthCache::Entry* p_realm2_entry = + cache.Lookup(origin, kRealm2, HttpAuth::AUTH_SCHEME_BASIC); + HttpAuthCache::Entry* p_realm4_entry = + cache.Lookup(origin, kRealm4, HttpAuth::AUTH_SCHEME_BASIC); + EXPECT_FALSE(NULL == p_realm2_entry); + EXPECT_FALSE(NULL == p_realm4_entry); + HttpAuthCache::Entry realm2_entry = *p_realm2_entry; + HttpAuthCache::Entry realm4_entry = *p_realm4_entry; // Realm4 applies to '/' and Realm2 applies to '/foo2/'. // LookupByPath() should return the closest enclosing path. // Positive tests: entry = cache.LookupByPath(origin, "/foo2/index.html"); - EXPECT_TRUE(realm2_entry == entry); + EXPECT_TRUE(realm2_entry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/foo2/foobar.html"); - EXPECT_TRUE(realm2_entry == entry); + EXPECT_TRUE(realm2_entry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/foo2/bar/index.html"); - EXPECT_TRUE(realm2_entry == entry); + EXPECT_TRUE(realm2_entry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/foo2/"); - EXPECT_TRUE(realm2_entry == entry); + EXPECT_TRUE(realm2_entry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/foo2"); - EXPECT_TRUE(realm4_entry == entry); + EXPECT_TRUE(realm4_entry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/"); - EXPECT_TRUE(realm4_entry == entry); + EXPECT_TRUE(realm4_entry.IsEqualForTesting(*entry)); // Negative tests: entry = cache.LookupByPath(origin, "/foo3/index.html"); - EXPECT_FALSE(realm2_entry == entry); + EXPECT_FALSE(realm2_entry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, std::string()); - EXPECT_FALSE(realm2_entry == entry); + EXPECT_FALSE(realm2_entry.IsEqualForTesting(*entry)); // Confirm we find the same realm, different auth scheme by path lookup - HttpAuthCache::Entry* realm3_digest_entry = + HttpAuthCache::Entry* p_realm3_digest_entry = cache.Lookup(origin, kRealm3, HttpAuth::AUTH_SCHEME_DIGEST); - EXPECT_FALSE(NULL == realm3_digest_entry); + EXPECT_FALSE(NULL == p_realm3_digest_entry); + HttpAuthCache::Entry realm3_digest_entry = *p_realm3_digest_entry; entry = cache.LookupByPath(origin, "/baz/index.html"); - EXPECT_TRUE(realm3_digest_entry == entry); + EXPECT_TRUE(realm3_digest_entry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/baz/"); - EXPECT_TRUE(realm3_digest_entry == entry); + EXPECT_TRUE(realm3_digest_entry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/baz"); - EXPECT_FALSE(realm3_digest_entry == entry); + EXPECT_FALSE(realm3_digest_entry.IsEqualForTesting(*entry)); // Confirm we find the same realm, different auth scheme by path lookup - HttpAuthCache::Entry* realm3DigestEntry = + HttpAuthCache::Entry* p_realm3DigestEntry = cache.Lookup(origin, kRealm3, HttpAuth::AUTH_SCHEME_DIGEST); - EXPECT_FALSE(NULL == realm3DigestEntry); + EXPECT_FALSE(NULL == p_realm3DigestEntry); + HttpAuthCache::Entry realm3DigestEntry = *p_realm3DigestEntry; entry = cache.LookupByPath(origin, "/baz/index.html"); - EXPECT_TRUE(realm3DigestEntry == entry); + EXPECT_TRUE(realm3DigestEntry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/baz/"); - EXPECT_TRUE(realm3DigestEntry == entry); + EXPECT_TRUE(realm3DigestEntry.IsEqualForTesting(*entry)); entry = cache.LookupByPath(origin, "/baz"); - EXPECT_FALSE(realm3DigestEntry == entry); + EXPECT_FALSE(realm3DigestEntry.IsEqualForTesting(*entry)); // Lookup using empty path (may be used for proxy). entry = cache.LookupByPath(origin, std::string()); diff --git a/chromium/net/http/http_auth_handler_factory.cc b/chromium/net/http/http_auth_handler_factory.cc index db13d5af3bb..dd3a643eda0 100644 --- a/chromium/net/http/http_auth_handler_factory.cc +++ b/chromium/net/http/http_auth_handler_factory.cc @@ -87,7 +87,7 @@ void HttpAuthHandlerRegistryFactory::RegisterSchemeFactory( HttpAuthHandlerFactory* HttpAuthHandlerRegistryFactory::GetSchemeFactory( const std::string& scheme) const { std::string lower_scheme = base::ToLowerASCII(scheme); - FactoryMap::const_iterator it = factory_map_.find(lower_scheme); + auto it = factory_map_.find(lower_scheme); if (it == factory_map_.end()) { return NULL; // |scheme| is not registered. } @@ -202,7 +202,7 @@ int HttpAuthHandlerRegistryFactory::CreateAuthHandler( return ERR_INVALID_RESPONSE; } std::string lower_scheme = base::ToLowerASCII(scheme); - FactoryMap::iterator it = factory_map_.find(lower_scheme); + auto it = factory_map_.find(lower_scheme); if (it == factory_map_.end()) { handler->reset(); return ERR_UNSUPPORTED_AUTH_SCHEME; diff --git a/chromium/net/http/http_basic_stream.cc b/chromium/net/http/http_basic_stream.cc index 2fc34a57dd7..2f677a4db24 100644 --- a/chromium/net/http/http_basic_stream.cc +++ b/chromium/net/http/http_basic_stream.cc @@ -131,12 +131,6 @@ bool HttpBasicStream::GetRemoteEndpoint(IPEndPoint* endpoint) { return state_.connection()->socket()->GetPeerAddress(endpoint) == OK; } -Error HttpBasicStream::GetTokenBindingSignature(crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out) { - return parser()->GetTokenBindingSignature(key, tb_type, out); -} - void HttpBasicStream::Drain(HttpNetworkSession* session) { HttpResponseBodyDrainer* drainer = new HttpResponseBodyDrainer(this); drainer->Start(session); diff --git a/chromium/net/http/http_basic_stream.h b/chromium/net/http/http_basic_stream.h index 48f79725354..accecba89ce 100644 --- a/chromium/net/http/http_basic_stream.h +++ b/chromium/net/http/http_basic_stream.h @@ -83,10 +83,6 @@ class NET_EXPORT_PRIVATE HttpBasicStream : public HttpStream { bool GetRemoteEndpoint(IPEndPoint* endpoint) override; - Error GetTokenBindingSignature(crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out) override; - void Drain(HttpNetworkSession* session) override; void PopulateNetErrorDetails(NetErrorDetails* details) override; diff --git a/chromium/net/http/http_cache.cc b/chromium/net/http/http_cache.cc index 277593c1f10..efb04a06c7d 100644 --- a/chromium/net/http/http_cache.cc +++ b/chromium/net/http/http_cache.cc @@ -77,11 +77,25 @@ int HttpCache::DefaultBackend::CreateBackend( std::unique_ptr<disk_cache::Backend>* backend, CompletionOnceCallback callback) { DCHECK_GE(max_bytes_, 0); +#if defined(OS_ANDROID) + if (app_status_listener_) { + return disk_cache::CreateCacheBackend( + type_, backend_type_, path_, max_bytes_, true, net_log, backend, + std::move(callback), app_status_listener_); + } +#endif return disk_cache::CreateCacheBackend(type_, backend_type_, path_, max_bytes_, true, net_log, backend, std::move(callback)); } +#if defined(OS_ANDROID) +void HttpCache::DefaultBackend::SetAppStatusListener( + base::android::ApplicationStatusListener* app_status_listener) { + app_status_listener_ = app_status_listener; +} +#endif + //----------------------------------------------------------------------------- HttpCache::ActiveEntry::ActiveEntry(disk_cache::Entry* entry) diff --git a/chromium/net/http/http_cache.h b/chromium/net/http/http_cache.h index 696e6a9f764..32435d9ca57 100644 --- a/chromium/net/http/http_cache.h +++ b/chromium/net/http/http_cache.h @@ -26,6 +26,7 @@ #include "base/threading/thread_checker.h" #include "base/time/clock.h" #include "base/time/time.h" +#include "build/build_config.h" #include "net/base/cache_type.h" #include "net/base/completion_once_callback.h" #include "net/base/load_states.h" @@ -40,6 +41,10 @@ namespace base { namespace trace_event { class ProcessMemoryDump; } + +namespace android { +class ApplicationStatusListener; +} // namespace android } // namespace base namespace disk_cache { @@ -81,6 +86,11 @@ class NET_EXPORT HttpCache : public HttpTransactionFactory { virtual int CreateBackend(NetLog* net_log, std::unique_ptr<disk_cache::Backend>* backend, CompletionOnceCallback callback) = 0; + +#if defined(OS_ANDROID) + virtual void SetAppStatusListener( + base::android::ApplicationStatusListener* app_status_listener){}; +#endif }; // A default backend factory for the common use cases. @@ -102,11 +112,19 @@ class NET_EXPORT HttpCache : public HttpTransactionFactory { std::unique_ptr<disk_cache::Backend>* backend, CompletionOnceCallback callback) override; +#if defined(OS_ANDROID) + void SetAppStatusListener( + base::android::ApplicationStatusListener* app_status_listener) override; +#endif + private: CacheType type_; BackendType backend_type_; const base::FilePath path_; int max_bytes_; +#if defined(OS_ANDROID) + base::android::ApplicationStatusListener* app_status_listener_ = nullptr; +#endif }; // Whether a transaction can join parallel writing or not is a function of the diff --git a/chromium/net/http/http_cache_transaction.cc b/chromium/net/http/http_cache_transaction.cc index 392651ac23d..da982955724 100644 --- a/chromium/net/http/http_cache_transaction.cc +++ b/chromium/net/http/http_cache_transaction.cc @@ -34,6 +34,7 @@ #include "base/trace_event/trace_event.h" #include "base/values.h" #include "net/base/auth.h" +#include "net/base/features.h" #include "net/base/load_flags.h" #include "net/base/load_timing_info.h" #include "net/base/trace_constants.h" @@ -2029,7 +2030,8 @@ int HttpCache::Transaction::DoPartialHeadersReceived() { new_response_ = NULL; if (!partial_) { - if (entry_ && entry_->disk_entry->GetDataSize(kMetadataIndex)) { + if (entry_ && entry_->disk_entry->GetDataSize(kMetadataIndex) && + !base::FeatureList::IsEnabled(net::features::kIsolatedCodeCache)) { TransitionToState(STATE_CACHE_READ_METADATA); } else { TransitionToState(STATE_FINISH_HEADERS); @@ -2128,6 +2130,7 @@ int HttpCache::Transaction::DoCacheReadMetadata() { TRACE_EVENT0("io", "HttpCacheTransaction::DoCacheReadMetadata"); DCHECK(entry_); DCHECK(!response_.metadata.get()); + DCHECK(!base::FeatureList::IsEnabled(net::features::kIsolatedCodeCache)); TransitionToState(STATE_CACHE_READ_METADATA_COMPLETE); response_.metadata = base::MakeRefCounted<IOBufferWithSize>( @@ -2463,10 +2466,12 @@ int HttpCache::Transaction::BeginCacheRead() { if (method_ == "HEAD") FixHeadersForHead(); - if (entry_->disk_entry->GetDataSize(kMetadataIndex)) + if (entry_->disk_entry->GetDataSize(kMetadataIndex) && + !base::FeatureList::IsEnabled(net::features::kIsolatedCodeCache)) { TransitionToState(STATE_CACHE_READ_METADATA); - else + } else { TransitionToState(STATE_FINISH_HEADERS); + } return OK; } @@ -3019,10 +3024,12 @@ int HttpCache::Transaction::DoSetupEntryForRead() { if (method_ == "HEAD") FixHeadersForHead(); - if (entry_->disk_entry->GetDataSize(kMetadataIndex)) + if (entry_->disk_entry->GetDataSize(kMetadataIndex) && + !base::FeatureList::IsEnabled(net::features::kIsolatedCodeCache)) { TransitionToState(STATE_CACHE_READ_METADATA); - else + } else { TransitionToState(STATE_FINISH_HEADERS); + } return OK; } diff --git a/chromium/net/http/http_cache_writers.cc b/chromium/net/http/http_cache_writers.cc index d21d42717f1..0468ef8fb98 100644 --- a/chromium/net/http/http_cache_writers.cc +++ b/chromium/net/http/http_cache_writers.cc @@ -186,7 +186,7 @@ HttpCache::Writers::EraseTransaction(TransactionMap::iterator it, int result) { Transaction* transaction = it->first; transaction->WriterAboutToBeRemovedFromEntry(result); - TransactionMap::iterator return_it = all_writers_.erase(it); + auto return_it = all_writers_.erase(it); if (all_writers_.empty() && next_state_ == State::NONE) { // This needs to be called to handle the edge case where even before Read is diff --git a/chromium/net/http/http_content_disposition.cc b/chromium/net/http/http_content_disposition.cc index da72593bfbb..aba9e103e30 100644 --- a/chromium/net/http/http_content_disposition.cc +++ b/chromium/net/http/http_content_disposition.cc @@ -189,7 +189,7 @@ bool DecodeWord(const std::string& encoded_word, // web browser. // What IE6/7 does: %-escaped UTF-8. - decoded_word = UnescapeURLComponent(encoded_word, UnescapeRule::SPACES); + UnescapeBinaryURLComponent(encoded_word, UnescapeRule::NORMAL, &decoded_word); if (decoded_word != encoded_word) *parse_result_flags |= HttpContentDisposition::HAS_PERCENT_ENCODED_STRINGS; if (base::IsStringUTF8(decoded_word)) { @@ -323,9 +323,8 @@ bool DecodeExtValue(const std::string& param_value, std::string* decoded) { return true; } - std::string unescaped = UnescapeURLComponent( - value, UnescapeRule::SPACES | - UnescapeRule::URL_SPECIAL_CHARS_EXCEPT_PATH_SEPARATORS); + std::string unescaped; + UnescapeBinaryURLComponent(value, UnescapeRule::NORMAL, &unescaped); return ConvertToUtf8AndNormalize(unescaped, charset.c_str(), decoded); } diff --git a/chromium/net/http/http_content_disposition_unittest.cc b/chromium/net/http/http_content_disposition_unittest.cc index d3e4c33571e..f4db044b321 100644 --- a/chromium/net/http/http_content_disposition_unittest.cc +++ b/chromium/net/http/http_content_disposition_unittest.cc @@ -49,6 +49,9 @@ TEST(HttpContentDispositionTest, Filename) { "abc.jpg\"", "", L"\U00010330\U00010331abc.jpg"}, {"attachment; filename=\"%EC%98%88%EC%88%A0 \n" "%EC%98%88%EC%88%A0.jpg\"", "", L"\xc608\xc220 \xc608\xc220.jpg"}, + // Characters that are not supposed to be displayed should still be decoded. + {"attachment; filename=%E5%B2%A1%E3%80%80%E5%B2%A1.txt", "", + L"\u5ca1\u3000\u5ca1.txt"}, // RFC 2047 with various charsets and Q/B encodings {"attachment; filename=\"=?EUC-JP?Q?=B7=DD=BD=" "D13=2Epng?=\"", "", L"\x82b8\x8853" L"3.png"}, @@ -124,6 +127,8 @@ TEST(HttpContentDispositionTest, Filename) { L"foo.html"}, {"attachment; filename*=utf-8'en'foo.html", "", L"foo.html"}, + {"attachment; filename*=utf-8'en'%E5%B2%A1%E3%80%80%E5%B2%A1.txt", "", + L"\u5ca1\u3000\u5ca1.txt"}, // charset cannot be omitted. {"attachment; filename*='es'f\xfa.html'", "", L""}, // Non-ASCII bytes are not allowed. diff --git a/chromium/net/http/http_log_util.cc b/chromium/net/http/http_log_util.cc index 37aea039607..699dd804e35 100644 --- a/chromium/net/http/http_log_util.cc +++ b/chromium/net/http/http_log_util.cc @@ -42,9 +42,6 @@ std::string ElideHeaderValueForNetLog(NetLogCaptureMode capture_mode, if (redact_begin == redact_end && !capture_mode.include_cookies_and_credentials()) { - // Note: this logic should be kept in sync with stripCookieOrLoginInfo in - // chrome/browser/resources/net_internals/log_view_painter.js. - if (base::EqualsCaseInsensitiveASCII(header, "set-cookie") || base::EqualsCaseInsensitiveASCII(header, "set-cookie2") || base::EqualsCaseInsensitiveASCII(header, "cookie") || diff --git a/chromium/net/http/http_network_session.cc b/chromium/net/http/http_network_session.cc index 9c0395eb08e..11845335e18 100644 --- a/chromium/net/http/http_network_session.cc +++ b/chromium/net/http/http_network_session.cc @@ -12,7 +12,6 @@ #include "base/compiler_specific.h" #include "base/debug/stack_trace.h" #include "base/logging.h" -#include "base/memory/memory_coordinator_client_registry.h" #include "base/strings/string_number_conversions.h" #include "base/strings/string_util.h" #include "base/strings/stringprintf.h" @@ -78,8 +77,7 @@ namespace { spdy::SettingsMap AddDefaultHttp2Settings(spdy::SettingsMap http2_settings) { // Set default values only if |http2_settings| does not have // a value set for given setting. - spdy::SettingsMap::iterator it = - http2_settings.find(spdy::SETTINGS_HEADER_TABLE_SIZE); + auto it = http2_settings.find(spdy::SETTINGS_HEADER_TABLE_SIZE); if (it == http2_settings.end()) http2_settings[spdy::SETTINGS_HEADER_TABLE_SIZE] = kSpdyMaxHeaderTableSize; @@ -129,6 +127,7 @@ HttpNetworkSession::Params::Params() quic_migrate_sessions_on_network_change_v2(false), quic_migrate_sessions_early_v2(false), quic_retry_on_alternate_network_before_handshake(false), + quic_race_stale_dns_on_connection(false), quic_go_away_on_path_degrading(false), quic_max_time_on_non_default_network( base::TimeDelta::FromSeconds(kMaxTimeOnNonDefaultNetworkSecs)), @@ -143,7 +142,6 @@ HttpNetworkSession::Params::Params() quic_race_cert_verification(false), quic_estimate_initial_rtt(false), quic_headers_include_h2_stream_dependency(false), - enable_token_binding(false), enable_channel_id(false), http_09_on_non_default_ports_enabled(false), disable_idle_sockets_close_on_memory_pressure(false) { @@ -171,8 +169,7 @@ HttpNetworkSession::Context::Context() quic_clock(nullptr), quic_random(nullptr), quic_crypto_client_stream_factory( - QuicCryptoClientStreamFactory::GetDefaultFactory()), - proxy_delegate(nullptr) {} + QuicCryptoClientStreamFactory::GetDefaultFactory()) {} HttpNetworkSession::Context::Context(const Context& other) = default; @@ -222,6 +219,7 @@ HttpNetworkSession::HttpNetworkSession(const Params& params, params.quic_migrate_sessions_on_network_change_v2, params.quic_migrate_sessions_early_v2, params.quic_retry_on_alternate_network_before_handshake, + params.quic_race_stale_dns_on_connection, params.quic_go_away_on_path_degrading, params.quic_max_time_on_non_default_network, params.quic_max_migrations_to_non_default_network_on_write_error, @@ -232,7 +230,6 @@ HttpNetworkSession::HttpNetworkSession(const Params& params, params.quic_headers_include_h2_stream_dependency, params.quic_connection_options, params.quic_client_connection_options, - params.enable_token_binding, params.enable_channel_id, params.quic_enable_socket_recv_optimization), spdy_session_pool_(context.host_resolver, @@ -244,6 +241,7 @@ HttpNetworkSession::HttpNetworkSession(const Params& params, params.support_ietf_format_quic_altsvc, params.spdy_session_max_recv_window_size, AddDefaultHttp2Settings(params.http2_settings), + params.greased_http2_frame, params.time_func), http_stream_factory_(std::make_unique<HttpStreamFactory>(this)), params_(params), @@ -275,8 +273,6 @@ HttpNetworkSession::HttpNetworkSession(const Params& params, new base::MemoryPressureListener(base::BindRepeating( &HttpNetworkSession::OnMemoryPressure, base::Unretained(this)))); } - - base::MemoryCoordinatorClientRegistry::GetInstance()->Register(this); } HttpNetworkSession::~HttpNetworkSession() { @@ -285,7 +281,6 @@ HttpNetworkSession::~HttpNetworkSession() { // TODO(bnc): CloseAllSessions() is also called in SpdySessionPool destructor, // one of the two calls should be removed. spdy_session_pool_.CloseAllSessions(); - base::MemoryCoordinatorClientRegistry::GetInstance()->Unregister(this); } void HttpNetworkSession::AddResponseDrainer( @@ -387,6 +382,8 @@ std::unique_ptr<base::Value> HttpNetworkSession::QuicInfoToValue() const { params_.quic_migrate_sessions_early_v2); dict->SetBoolean("retry_on_alternate_network_before_handshake", params_.quic_retry_on_alternate_network_before_handshake); + dict->SetBoolean("race_stale_dns_on_connection", + params_.quic_race_stale_dns_on_connection); dict->SetBoolean("go_away_on_path_degrading", params_.quic_go_away_on_path_degrading); dict->SetInteger("max_time_on_non_default_network_seconds", @@ -462,9 +459,6 @@ void HttpNetworkSession::GetSSLConfig(const HttpRequestInfo& request, } else { server_config->channel_id_enabled = params_.enable_channel_id; proxy_config->channel_id_enabled = params_.enable_channel_id; - if (params_.enable_token_binding && context_.channel_id_service) { - server_config->token_binding_params.push_back(TB_PARAM_ECDSAP256); - } } } @@ -535,8 +529,4 @@ void HttpNetworkSession::OnMemoryPressure( } } -void HttpNetworkSession::OnPurgeMemory() { - CloseIdleConnections(); -} - } // namespace net diff --git a/chromium/net/http/http_network_session.h b/chromium/net/http/http_network_session.h index 16aebbdfee0..c4319afd102 100644 --- a/chromium/net/http/http_network_session.h +++ b/chromium/net/http/http_network_session.h @@ -17,10 +17,10 @@ #include "base/bind.h" #include "base/containers/flat_set.h" -#include "base/memory/memory_coordinator_client.h" #include "base/memory/memory_pressure_monitor.h" #include "base/memory/ref_counted.h" #include "base/memory/weak_ptr.h" +#include "base/optional.h" #include "base/threading/thread_checker.h" #include "net/base/host_mapping_rules.h" #include "net/base/host_port_pair.h" @@ -57,7 +57,6 @@ class HttpResponseBodyDrainer; class HttpServerProperties; class NetLog; class NetworkQualityProvider; -class ProxyDelegate; class ProxyResolutionService; } // namespace net namespace quic { @@ -80,7 +79,7 @@ const uint32_t kSpdyMaxHeaderTableSize = 64 * 1024; const uint32_t kSpdyMaxConcurrentPushedStreams = 1000; // This class holds session objects used by HttpNetworkTransaction objects. -class NET_EXPORT HttpNetworkSession : public base::MemoryCoordinatorClient { +class NET_EXPORT HttpNetworkSession { public: // Self-contained structure with all the simple configuration options // supported by the HttpNetworkSession. @@ -113,7 +112,18 @@ class NET_EXPORT HttpNetworkSession : public base::MemoryCoordinatorClient { size_t spdy_session_max_recv_window_size; // HTTP/2 connection settings. // Unknown settings will still be sent to the server. + // Might contain unknown setting identifiers from a predefined set that + // servers are supposed to ignore, see + // https://tools.ietf.org/html/draft-bishop-httpbis-grease-00. + // The same setting will be sent on every connection to prevent the retry + // logic from hiding broken servers. spdy::SettingsMap http2_settings; + // If set, an HTTP/2 frame with a reserved frame type will be sent after + // every HEADERS and SETTINGS frame. See + // https://tools.ietf.org/html/draft-bishop-httpbis-grease-00. + // The same frame will be sent out on all connections to prevent the retry + // logic from hiding broken servers. + base::Optional<SpdySessionPool::GreasedHttp2Frame> greased_http2_frame; // Source of time for SPDY connections. SpdySessionPool::TimeFunc time_func; // Whether to enable HTTP/2 Alt-Svc entries. @@ -181,6 +191,9 @@ class NET_EXPORT HttpNetworkSession : public base::MemoryCoordinatorClient { // If true, a new connection may be kicked off on an alternate network when // a connection fails on the default network before handshake is confirmed. bool quic_retry_on_alternate_network_before_handshake; + // If true, the quic stream factory may race connection from stale dns + // result with the original dns resolution + bool quic_race_stale_dns_on_connection; // If true, the quic session may mark itself as GOAWAY on path degrading. bool quic_go_away_on_path_degrading; // Maximum time the session could be on the non-default network before @@ -213,8 +226,6 @@ class NET_EXPORT HttpNetworkSession : public base::MemoryCoordinatorClient { // If non-empty, QUIC will only be spoken to hosts in this list. base::flat_set<std::string> quic_host_whitelist; - // Enable support for Token Binding. - bool enable_token_binding; // Enable Channel ID. Channel ID is being deprecated. bool enable_channel_id; @@ -254,8 +265,6 @@ class NET_EXPORT HttpNetworkSession : public base::MemoryCoordinatorClient { quic::QuicRandom* quic_random; // Optional factory to use for creating QuicCryptoClientStreams. QuicCryptoClientStreamFactory* quic_crypto_client_stream_factory; - - ProxyDelegate* proxy_delegate; }; enum SocketPoolType { @@ -265,7 +274,7 @@ class NET_EXPORT HttpNetworkSession : public base::MemoryCoordinatorClient { }; HttpNetworkSession(const Params& params, const Context& context); - ~HttpNetworkSession() override; + ~HttpNetworkSession(); HttpAuthCache* http_auth_cache() { return &http_auth_cache_; } SSLClientAuthCache* ssl_client_auth_cache() { @@ -363,9 +372,6 @@ class NET_EXPORT HttpNetworkSession : public base::MemoryCoordinatorClient { void OnMemoryPressure( base::MemoryPressureListener::MemoryPressureLevel memory_pressure_level); - // base::MemoryCoordinatorClient implementation: - void OnPurgeMemory() override; - NetLog* const net_log_; HttpServerProperties* const http_server_properties_; CertVerifier* const cert_verifier_; diff --git a/chromium/net/http/http_network_transaction.cc b/chromium/net/http/http_network_transaction.cc index 2d0718ae3b6..12b8b561d2f 100644 --- a/chromium/net/http/http_network_transaction.cc +++ b/chromium/net/http/http_network_transaction.cc @@ -67,7 +67,6 @@ #include "net/ssl/ssl_connection_status_flags.h" #include "net/ssl/ssl_info.h" #include "net/ssl/ssl_private_key.h" -#include "net/ssl/token_binding.h" #include "url/gurl.h" #include "url/url_canon.h" @@ -636,42 +635,6 @@ bool HttpNetworkTransaction::IsSecureRequest() const { return request_->url.SchemeIsCryptographic(); } -bool HttpNetworkTransaction::IsTokenBindingEnabled() const { - if (!IsSecureRequest()) - return false; - SSLInfo ssl_info; - stream_->GetSSLInfo(&ssl_info); - return ssl_info.token_binding_negotiated && - ssl_info.token_binding_key_param == TB_PARAM_ECDSAP256 && - session_->context().channel_id_service; -} - -void HttpNetworkTransaction::RecordTokenBindingSupport() const { - // This enum is used for an UMA histogram - do not change or re-use values. - enum { - DISABLED = 0, - CLIENT_ONLY = 1, - CLIENT_AND_SERVER = 2, - CLIENT_NO_CHANNEL_ID_SERVICE = 3, - TOKEN_BINDING_SUPPORT_MAX - } supported; - if (!IsSecureRequest()) - return; - SSLInfo ssl_info; - stream_->GetSSLInfo(&ssl_info); - if (!session_->params().enable_token_binding) { - supported = DISABLED; - } else if (!session_->context().channel_id_service) { - supported = CLIENT_NO_CHANNEL_ID_SERVICE; - } else if (ssl_info.token_binding_negotiated) { - supported = CLIENT_AND_SERVER; - } else { - supported = CLIENT_ONLY; - } - UMA_HISTOGRAM_ENUMERATION("Net.TokenBinding.Support", supported, - TOKEN_BINDING_SUPPORT_MAX); -} - bool HttpNetworkTransaction::UsingHttpProxyWithoutTunnel() const { return (proxy_info_.is_http() || proxy_info_.is_https() || proxy_info_.is_quic()) && @@ -736,20 +699,6 @@ int HttpNetworkTransaction::DoLoop(int result) { case STATE_GENERATE_SERVER_AUTH_TOKEN_COMPLETE: rv = DoGenerateServerAuthTokenComplete(rv); break; - case STATE_GET_PROVIDED_TOKEN_BINDING_KEY: - DCHECK_EQ(OK, rv); - rv = DoGetProvidedTokenBindingKey(); - break; - case STATE_GET_PROVIDED_TOKEN_BINDING_KEY_COMPLETE: - rv = DoGetProvidedTokenBindingKeyComplete(rv); - break; - case STATE_GET_REFERRED_TOKEN_BINDING_KEY: - DCHECK_EQ(OK, rv); - rv = DoGetReferredTokenBindingKey(); - break; - case STATE_GET_REFERRED_TOKEN_BINDING_KEY_COMPLETE: - rv = DoGetReferredTokenBindingKeyComplete(rv); - break; case STATE_INIT_REQUEST_BODY: DCHECK_EQ(OK, rv); rv = DoInitRequestBody(); @@ -991,53 +940,6 @@ int HttpNetworkTransaction::DoGenerateServerAuthToken() { int HttpNetworkTransaction::DoGenerateServerAuthTokenComplete(int rv) { DCHECK_NE(ERR_IO_PENDING, rv); if (rv == OK) - next_state_ = STATE_GET_PROVIDED_TOKEN_BINDING_KEY; - return rv; -} - -int HttpNetworkTransaction::DoGetProvidedTokenBindingKey() { - next_state_ = STATE_GET_PROVIDED_TOKEN_BINDING_KEY_COMPLETE; - if (!IsTokenBindingEnabled()) - return OK; - - net_log_.BeginEvent(NetLogEventType::HTTP_TRANSACTION_GET_TOKEN_BINDING_KEY); - ChannelIDService* channel_id_service = session_->context().channel_id_service; - return channel_id_service->GetOrCreateChannelID( - request_->url.host(), &provided_token_binding_key_, io_callback_, - &token_binding_request_); -} - -int HttpNetworkTransaction::DoGetProvidedTokenBindingKeyComplete(int rv) { - DCHECK_NE(ERR_IO_PENDING, rv); - if (IsTokenBindingEnabled()) { - net_log_.EndEventWithNetErrorCode( - NetLogEventType::HTTP_TRANSACTION_GET_TOKEN_BINDING_KEY, rv); - } - - if (rv == OK) - next_state_ = STATE_GET_REFERRED_TOKEN_BINDING_KEY; - return rv; -} - -int HttpNetworkTransaction::DoGetReferredTokenBindingKey() { - next_state_ = STATE_GET_REFERRED_TOKEN_BINDING_KEY_COMPLETE; - if (!IsTokenBindingEnabled() || request_->token_binding_referrer.empty()) - return OK; - - net_log_.BeginEvent(NetLogEventType::HTTP_TRANSACTION_GET_TOKEN_BINDING_KEY); - ChannelIDService* channel_id_service = session_->context().channel_id_service; - return channel_id_service->GetOrCreateChannelID( - request_->token_binding_referrer, &referred_token_binding_key_, - io_callback_, &token_binding_request_); -} - -int HttpNetworkTransaction::DoGetReferredTokenBindingKeyComplete(int rv) { - DCHECK_NE(ERR_IO_PENDING, rv); - if (IsTokenBindingEnabled() && !request_->token_binding_referrer.empty()) { - net_log_.EndEventWithNetErrorCode( - NetLogEventType::HTTP_TRANSACTION_GET_TOKEN_BINDING_KEY, rv); - } - if (rv == OK) next_state_ = STATE_INIT_REQUEST_BODY; return rv; } @@ -1075,16 +977,6 @@ int HttpNetworkTransaction::BuildRequestHeaders( request_headers_.SetHeader(HttpRequestHeaders::kContentLength, "0"); } - RecordTokenBindingSupport(); - if (provided_token_binding_key_) { - std::string token_binding_header; - int rv = BuildTokenBindingHeader(&token_binding_header); - if (rv != OK) - return rv; - request_headers_.SetHeader(HttpRequestHeaders::kTokenBinding, - token_binding_header); - } - // Honor load flags that impact proxy caches. if (request_->load_flags & LOAD_BYPASS_CACHE) { request_headers_.SetHeader(HttpRequestHeaders::kPragma, "no-cache"); @@ -1111,52 +1003,6 @@ int HttpNetworkTransaction::BuildRequestHeaders( return OK; } -int HttpNetworkTransaction::BuildTokenBindingHeader(std::string* out) { - base::TimeTicks start = base::TimeTicks::Now(); - std::vector<uint8_t> signed_ekm; - int rv = stream_->GetTokenBindingSignature(provided_token_binding_key_.get(), - TokenBindingType::PROVIDED, - &signed_ekm); - if (rv != OK) - return rv; - std::string provided_token_binding; - rv = BuildTokenBinding(TokenBindingType::PROVIDED, - provided_token_binding_key_.get(), signed_ekm, - &provided_token_binding); - if (rv != OK) - return rv; - - std::vector<base::StringPiece> token_bindings; - token_bindings.push_back(provided_token_binding); - - std::string referred_token_binding; - if (referred_token_binding_key_) { - std::vector<uint8_t> referred_signed_ekm; - int rv = stream_->GetTokenBindingSignature( - referred_token_binding_key_.get(), TokenBindingType::REFERRED, - &referred_signed_ekm); - if (rv != OK) - return rv; - rv = BuildTokenBinding(TokenBindingType::REFERRED, - referred_token_binding_key_.get(), - referred_signed_ekm, &referred_token_binding); - if (rv != OK) - return rv; - token_bindings.push_back(referred_token_binding); - } - std::string header; - rv = BuildTokenBindingMessageFromTokenBindings(token_bindings, &header); - if (rv != OK) - return rv; - base::Base64UrlEncode(header, base::Base64UrlEncodePolicy::OMIT_PADDING, out); - base::TimeDelta header_creation_time = base::TimeTicks::Now() - start; - UMA_HISTOGRAM_CUSTOM_TIMES("Net.TokenBinding.HeaderCreationTime", - header_creation_time, - base::TimeDelta::FromMilliseconds(1), - base::TimeDelta::FromMinutes(1), 50); - return OK; -} - int HttpNetworkTransaction::DoInitRequestBody() { next_state_ = STATE_INIT_REQUEST_BODY_COMPLETE; int rv = OK; @@ -1680,8 +1526,6 @@ void HttpNetworkTransaction::ResetStateForAuthRestart() { remote_endpoint_ = IPEndPoint(); net_error_details_.quic_broken = false; net_error_details_.quic_connection_error = quic::QUIC_NO_ERROR; - provided_token_binding_key_.reset(); - referred_token_binding_key_.reset(); } void HttpNetworkTransaction::CacheNetErrorDetailsAndResetStream() { diff --git a/chromium/net/http/http_network_transaction.h b/chromium/net/http/http_network_transaction.h index cd95f6ef2ee..e0105d06410 100644 --- a/chromium/net/http/http_network_transaction.h +++ b/chromium/net/http/http_network_transaction.h @@ -33,10 +33,6 @@ #include "net/ssl/ssl_config_service.h" #include "net/websockets/websocket_handshake_stream_base.h" -namespace crypto { -class ECPrivateKey; -} - namespace net { class BidirectionalStreamImpl; @@ -151,10 +147,6 @@ class NET_EXPORT_PRIVATE HttpNetworkTransaction STATE_GENERATE_PROXY_AUTH_TOKEN_COMPLETE, STATE_GENERATE_SERVER_AUTH_TOKEN, STATE_GENERATE_SERVER_AUTH_TOKEN_COMPLETE, - STATE_GET_PROVIDED_TOKEN_BINDING_KEY, - STATE_GET_PROVIDED_TOKEN_BINDING_KEY_COMPLETE, - STATE_GET_REFERRED_TOKEN_BINDING_KEY, - STATE_GET_REFERRED_TOKEN_BINDING_KEY_COMPLETE, STATE_INIT_REQUEST_BODY, STATE_INIT_REQUEST_BODY_COMPLETE, STATE_BUILD_REQUEST, @@ -171,8 +163,6 @@ class NET_EXPORT_PRIVATE HttpNetworkTransaction }; bool IsSecureRequest() const; - bool IsTokenBindingEnabled() const; - void RecordTokenBindingSupport() const; // Returns true if the request is using an HTTP(S) proxy without being // tunneled via the CONNECT method. @@ -197,10 +187,6 @@ class NET_EXPORT_PRIVATE HttpNetworkTransaction int DoGenerateProxyAuthTokenComplete(int result); int DoGenerateServerAuthToken(); int DoGenerateServerAuthTokenComplete(int result); - int DoGetProvidedTokenBindingKey(); - int DoGetProvidedTokenBindingKeyComplete(int result); - int DoGetReferredTokenBindingKey(); - int DoGetReferredTokenBindingKeyComplete(int result); int DoInitRequestBody(); int DoInitRequestBodyComplete(int result); int DoBuildRequest(); @@ -215,7 +201,6 @@ class NET_EXPORT_PRIVATE HttpNetworkTransaction int DoDrainBodyForAuthRestartComplete(int result); int BuildRequestHeaders(bool using_http_proxy_without_tunnel); - int BuildTokenBindingHeader(std::string* out); // Writes a log message to help debugging in the field when we block a proxy // response to a CONNECT request. @@ -351,13 +336,6 @@ class NET_EXPORT_PRIVATE HttpNetworkTransaction SSLConfig server_ssl_config_; SSLConfig proxy_ssl_config_; - // Keys to use for signing message in Token Binding header. - std::unique_ptr<crypto::ECPrivateKey> provided_token_binding_key_; - std::unique_ptr<crypto::ECPrivateKey> referred_token_binding_key_; - // Object to manage lookup of |provided_token_binding_key_| and - // |referred_token_binding_key_|. - ChannelIDService::Request token_binding_request_; - HttpRequestHeaders request_headers_; // The size in bytes of the buffer we use to drain the response body that diff --git a/chromium/net/http/http_network_transaction_ssl_unittest.cc b/chromium/net/http/http_network_transaction_ssl_unittest.cc index e4e7e08c72c..837fd089161 100644 --- a/chromium/net/http/http_network_transaction_ssl_unittest.cc +++ b/chromium/net/http/http_network_transaction_ssl_unittest.cc @@ -39,12 +39,9 @@ namespace net { namespace { -class TokenBindingSSLConfigService : public SSLConfigService { +class ChannelIDSSLConfigService : public SSLConfigService { public: - TokenBindingSSLConfigService() { - ssl_config_.token_binding_params.push_back(TB_PARAM_ECDSAP256); - } - ~TokenBindingSSLConfigService() override = default; + ~ChannelIDSSLConfigService() override = default; void GetSSLConfig(SSLConfig* config) override { *config = ssl_config_; } @@ -64,7 +61,7 @@ class HttpNetworkTransactionSSLTest : public TestWithScopedTaskEnvironment { HttpNetworkTransactionSSLTest() = default; void SetUp() override { - ssl_config_service_.reset(new TokenBindingSSLConfigService); + ssl_config_service_.reset(new ChannelIDSSLConfigService); session_context_.ssl_config_service = ssl_config_service_.get(); auth_handler_factory_.reset(new HttpAuthHandlerMock::Factory()); @@ -125,130 +122,4 @@ TEST_F(HttpNetworkTransactionSSLTest, ChannelID) { EXPECT_TRUE(trans.server_ssl_config_.channel_id_enabled); } -#if !defined(OS_IOS) -TEST_F(HttpNetworkTransactionSSLTest, TokenBinding) { - ChannelIDService channel_id_service(new DefaultChannelIDStore(NULL)); - session_context_.channel_id_service = &channel_id_service; - - SSLSocketDataProvider ssl_data(ASYNC, OK); - ssl_data.ssl_info.token_binding_negotiated = true; - ssl_data.ssl_info.token_binding_key_param = TB_PARAM_ECDSAP256; - mock_socket_factory_.AddSSLSocketDataProvider(&ssl_data); - MockRead mock_reads[] = {MockRead("HTTP/1.1 200 OK\r\n\r\n"), - MockRead(SYNCHRONOUS, OK)}; - StaticSocketDataProvider data(mock_reads, base::span<MockWrite>()); - mock_socket_factory_.AddSocketDataProvider(&data); - - HttpNetworkSession session(HttpNetworkSession::Params(), session_context_); - HttpNetworkTransaction trans1(DEFAULT_PRIORITY, &session); - - TestCompletionCallback callback; - int rv = callback.GetResult( - trans1.Start(GetRequestInfo("https://www.example.com/"), - callback.callback(), NetLogWithSource())); - EXPECT_THAT(rv, IsOk()); - - HttpRequestHeaders headers1; - ASSERT_TRUE(trans1.GetFullRequestHeaders(&headers1)); - std::string token_binding_header1; - EXPECT_TRUE(headers1.GetHeader(HttpRequestHeaders::kTokenBinding, - &token_binding_header1)); - - // Send a second request and verify that the token binding header is the same - // as in the first request. - mock_socket_factory_.AddSSLSocketDataProvider(&ssl_data); - StaticSocketDataProvider data2(mock_reads, base::span<MockWrite>()); - mock_socket_factory_.AddSocketDataProvider(&data2); - HttpNetworkTransaction trans2(DEFAULT_PRIORITY, &session); - - rv = callback.GetResult( - trans2.Start(GetRequestInfo("https://www.example.com/"), - callback.callback(), NetLogWithSource())); - EXPECT_THAT(rv, IsOk()); - - HttpRequestHeaders headers2; - ASSERT_TRUE(trans2.GetFullRequestHeaders(&headers2)); - std::string token_binding_header2; - EXPECT_TRUE(headers2.GetHeader(HttpRequestHeaders::kTokenBinding, - &token_binding_header2)); - - EXPECT_EQ(token_binding_header1, token_binding_header2); -} - -TEST_F(HttpNetworkTransactionSSLTest, NoTokenBindingOverHttp) { - ChannelIDService channel_id_service(new DefaultChannelIDStore(NULL)); - session_context_.channel_id_service = &channel_id_service; - - SSLSocketDataProvider ssl_data(ASYNC, OK); - ssl_data.ssl_info.token_binding_negotiated = true; - ssl_data.ssl_info.token_binding_key_param = TB_PARAM_ECDSAP256; - mock_socket_factory_.AddSSLSocketDataProvider(&ssl_data); - MockRead mock_reads[] = {MockRead("HTTP/1.1 200 OK\r\n\r\n"), - MockRead(SYNCHRONOUS, OK)}; - StaticSocketDataProvider data(mock_reads, base::span<MockWrite>()); - mock_socket_factory_.AddSocketDataProvider(&data); - - HttpNetworkSession session(HttpNetworkSession::Params(), session_context_); - HttpNetworkTransaction trans(DEFAULT_PRIORITY, &session); - - TestCompletionCallback callback; - int rv = - callback.GetResult(trans.Start(GetRequestInfo("http://www.example.com/"), - callback.callback(), NetLogWithSource())); - EXPECT_THAT(rv, IsOk()); - - HttpRequestHeaders headers; - ASSERT_TRUE(trans.GetFullRequestHeaders(&headers)); - std::string token_binding_header; - EXPECT_FALSE(headers.GetHeader(HttpRequestHeaders::kTokenBinding, - &token_binding_header)); -} - -// Regression test for https://crbug.com/667683. -TEST_F(HttpNetworkTransactionSSLTest, TokenBindingAsync) { - // Create a separate thread for ChannelIDService - // so that asynchronous Channel ID creation can be delayed. - base::Thread channel_id_thread("ThreadForChannelIDService"); - channel_id_thread.Start(); - scoped_refptr<base::DeferredSequencedTaskRunner> channel_id_runner = - new base::DeferredSequencedTaskRunner(channel_id_thread.task_runner()); - ChannelIDService channel_id_service(new DefaultChannelIDStore(nullptr)); - channel_id_service.set_task_runner_for_testing(channel_id_runner); - session_context_.channel_id_service = &channel_id_service; - - SSLSocketDataProvider ssl_data(ASYNC, OK); - ssl_data.ssl_info.token_binding_negotiated = true; - ssl_data.ssl_info.token_binding_key_param = TB_PARAM_ECDSAP256; - ssl_data.next_proto = kProtoHTTP2; - mock_socket_factory_.AddSSLSocketDataProvider(&ssl_data); - - MockRead reads[] = {MockRead(ASYNC, OK, 0)}; - StaticSocketDataProvider data(reads, base::span<MockWrite>()); - mock_socket_factory_.AddSocketDataProvider(&data); - - HttpRequestInfo request_info; - request_info.url = GURL("https://www.example.com/"); - request_info.method = "GET"; - request_info.token_binding_referrer = "encrypted.example.com"; - request_info.traffic_annotation = - net::MutableNetworkTrafficAnnotationTag(TRAFFIC_ANNOTATION_FOR_TESTS); - - HttpNetworkSession session(HttpNetworkSession::Params(), session_context_); - HttpNetworkTransaction trans(DEFAULT_PRIORITY, &session); - - TestCompletionCallback callback; - int rv = trans.Start(&request_info, callback.callback(), NetLogWithSource()); - EXPECT_THAT(rv, IsError(ERR_IO_PENDING)); - - base::RunLoop().RunUntilIdle(); - - // When ChannelIdService calls back to HttpNetworkSession, - // SpdyHttpStream should not crash. - channel_id_runner->Start(); - - rv = callback.WaitForResult(); - EXPECT_THAT(rv, IsError(ERR_CONNECTION_CLOSED)); -} -#endif // !defined(OS_IOS) - } // namespace net diff --git a/chromium/net/http/http_network_transaction_unittest.cc b/chromium/net/http/http_network_transaction_unittest.cc index 756586490d4..2cdf8a496b6 100644 --- a/chromium/net/http/http_network_transaction_unittest.cc +++ b/chromium/net/http/http_network_transaction_unittest.cc @@ -9059,7 +9059,8 @@ TEST_F(HttpNetworkTransactionTest, CrossOriginSPDYProxyPush) { BoundTestNetLog log; session_deps_.net_log = log.bound().net_log(); - session_deps_.proxy_delegate = std::move(proxy_delegate); + session_deps_.proxy_resolution_service->SetProxyDelegate( + proxy_delegate.get()); std::unique_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); @@ -9175,7 +9176,8 @@ TEST_F(HttpNetworkTransactionTest, CrossOriginProxyPushCorrectness) { session_deps_.net_log = log.bound().net_log(); // Enable cross-origin push. - session_deps_.proxy_delegate = std::move(proxy_delegate); + session_deps_.proxy_resolution_service->SetProxyDelegate( + proxy_delegate.get()); std::unique_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); @@ -9259,7 +9261,8 @@ TEST_F(HttpNetworkTransactionTest, SameOriginProxyPushCorrectness) { session_deps_.net_log = log.bound().net_log(); // Enable cross-origin push. - session_deps_.proxy_delegate = std::move(proxy_delegate); + session_deps_.proxy_resolution_service->SetProxyDelegate( + proxy_delegate.get()); std::unique_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); @@ -13958,18 +13961,18 @@ TEST_F(HttpNetworkTransactionTest, ProxyTunnelGetIPv6) { HttpRequestInfo request; request.method = "GET"; - request.url = GURL("https://[::1]:443/"); + request.url = GURL("https://[::2]:443/"); request.traffic_annotation = net::MutableNetworkTrafficAnnotationTag(TRAFFIC_ANNOTATION_FOR_TESTS); // Since we have proxy, should try to establish tunnel. MockWrite data_writes1[] = { - MockWrite("CONNECT [::1]:443 HTTP/1.1\r\n" - "Host: [::1]:443\r\n" + MockWrite("CONNECT [::2]:443 HTTP/1.1\r\n" + "Host: [::2]:443\r\n" "Proxy-Connection: keep-alive\r\n\r\n"), MockWrite("GET / HTTP/1.1\r\n" - "Host: [::1]\r\n" + "Host: [::2]\r\n" "Connection: keep-alive\r\n\r\n"), }; @@ -17156,46 +17159,6 @@ TEST_F(HttpNetworkTransactionTest, TotalNetworkBytesChunkedPost) { EXPECT_EQ(CountReadBytes(data_reads), trans.GetTotalReceivedBytes()); } -#if !defined(OS_IOS) -TEST_F(HttpNetworkTransactionTest, TokenBindingSpdy) { - const std::string https_url = "https://www.example.com"; - HttpRequestInfo request; - request.url = GURL(https_url); - request.method = "GET"; - request.traffic_annotation = - net::MutableNetworkTrafficAnnotationTag(TRAFFIC_ANNOTATION_FOR_TESTS); - - SSLSocketDataProvider ssl(ASYNC, OK); - ssl.ssl_info.token_binding_negotiated = true; - ssl.ssl_info.token_binding_key_param = TB_PARAM_ECDSAP256; - ssl.next_proto = kProtoHTTP2; - session_deps_.socket_factory->AddSSLSocketDataProvider(&ssl); - - spdy::SpdySerializedFrame resp( - spdy_util_.ConstructSpdyGetReply(nullptr, 0, 1)); - spdy::SpdySerializedFrame body(spdy_util_.ConstructSpdyDataFrame(1, true)); - MockRead reads[] = {CreateMockRead(resp), CreateMockRead(body), - MockRead(ASYNC, ERR_IO_PENDING)}; - StaticSocketDataProvider data(reads, base::span<MockWrite>()); - session_deps_.socket_factory->AddSocketDataProvider(&data); - session_deps_.channel_id_service = - std::make_unique<ChannelIDService>(new DefaultChannelIDStore(nullptr)); - std::unique_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); - - HttpNetworkTransaction trans(DEFAULT_PRIORITY, session.get()); - TestCompletionCallback callback; - EXPECT_EQ(ERR_IO_PENDING, - trans.Start(&request, callback.callback(), NetLogWithSource())); - - RunUntilIdle(); - - EXPECT_TRUE(trans.GetResponseInfo()->was_fetched_via_spdy); - HttpRequestHeaders headers; - ASSERT_TRUE(trans.GetFullRequestHeaders(&headers)); - EXPECT_TRUE(headers.HasHeader(HttpRequestHeaders::kTokenBinding)); -} -#endif // !defined(OS_IOS) - void CheckContentEncodingMatching(SpdySessionDependencies* session_deps, const std::string& accept_encoding, const std::string& content_encoding, diff --git a/chromium/net/http/http_proxy_client_socket_wrapper.cc b/chromium/net/http/http_proxy_client_socket_wrapper.cc index 1676547a64d..f1cad81680a 100644 --- a/chromium/net/http/http_proxy_client_socket_wrapper.cc +++ b/chromium/net/http/http_proxy_client_socket_wrapper.cc @@ -649,6 +649,7 @@ int HttpProxyClientSocketWrapper::DoQuicProxyCreateSession() { initial_socket_tag_, ssl_params_->ssl_config().GetCertVerifyFlags(), GURL("https://" + proxy_server.ToString()), net_log_, &quic_net_error_details_, + /*failed_on_default_network_callback=*/CompletionOnceCallback(), base::Bind(&HttpProxyClientSocketWrapper::OnIOComplete, base::Unretained(this))); } diff --git a/chromium/net/http/http_proxy_client_socket_wrapper_unittest.cc b/chromium/net/http/http_proxy_client_socket_wrapper_unittest.cc index 8a5970ef9f0..687ee76a31c 100644 --- a/chromium/net/http/http_proxy_client_socket_wrapper_unittest.cc +++ b/chromium/net/http/http_proxy_client_socket_wrapper_unittest.cc @@ -137,14 +137,14 @@ class HttpProxyClientSocketWrapperTest /*migrate_sessions_on_network_change_v2=*/false, /*migrate_sessions_early_v2=*/false, /*retry_on_alternate_network_before_handshake=*/false, + /*race_stale_dns_on_connection=*/false, /*go_away_on_path_degrading=*/false, base::TimeDelta::FromSeconds(kMaxTimeOnNonDefaultNetworkSecs), kMaxMigrationsToNonDefaultNetworkOnWriteError, kMaxMigrationsToNonDefaultNetworkOnPathDegrading, allow_server_migration_, race_cert_verification_, estimate_initial_rtt_, client_headers_include_h2_stream_dependency_, connection_options_, - client_connection_options_, /*enable_token_binding=*/false, - /*enable_channel_id=*/false, + client_connection_options_, /*enable_channel_id=*/false, /*enable_socket_recv_optimization=*/false)); } @@ -262,6 +262,10 @@ TEST_P(HttpProxyClientSocketWrapperTest, QuicProxy) { mock_quic_data_.AddWrite( SYNCHRONOUS, ConstructAckAndRstPacket(3, quic::QUIC_STREAM_CANCELLED, 1, 1, 1)); + mock_quic_data_.AddWrite( + SYNCHRONOUS, client_maker_.MakeAckAndConnectionClosePacket( + 4, false, quic::QuicTime::Delta::FromMilliseconds(0), 1, + 1, 1, quic::QUIC_CONNECTION_CANCELLED, "net error")); mock_quic_data_.AddSocketDataToFactory(&socket_factory_); scoped_refptr<TransportSocketParams> transport_params = @@ -294,7 +298,6 @@ TEST_P(HttpProxyClientSocketWrapperTest, QuicProxy) { client_socket_wrapper_.reset(); EXPECT_TRUE(mock_quic_data_.AllReadDataConsumed()); - EXPECT_TRUE(mock_quic_data_.AllWriteDataConsumed()); } // Test that the SocketTag is appropriately applied to the underlying socket @@ -312,6 +315,10 @@ TEST_P(HttpProxyClientSocketWrapperTest, QuicProxySocketTag) { mock_quic_data_.AddWrite( SYNCHRONOUS, ConstructAckAndRstPacket(3, quic::QUIC_STREAM_CANCELLED, 1, 1, 1)); + mock_quic_data_.AddWrite( + SYNCHRONOUS, client_maker_.MakeAckAndConnectionClosePacket( + 4, false, quic::QuicTime::Delta::FromMilliseconds(0), 1, + 1, 1, quic::QUIC_CONNECTION_CANCELLED, "net error")); mock_quic_data_.AddSocketDataToFactory(&socket_factory_); scoped_refptr<TransportSocketParams> transport_params = @@ -349,7 +356,6 @@ TEST_P(HttpProxyClientSocketWrapperTest, QuicProxySocketTag) { client_socket_wrapper_.reset(); EXPECT_TRUE(mock_quic_data_.AllReadDataConsumed()); - EXPECT_TRUE(mock_quic_data_.AllWriteDataConsumed()); } #endif diff --git a/chromium/net/http/http_request_headers.cc b/chromium/net/http/http_request_headers.cc index ec77236c5bd..080772ded2a 100644 --- a/chromium/net/http/http_request_headers.cc +++ b/chromium/net/http/http_request_headers.cc @@ -42,7 +42,6 @@ const char HttpRequestHeaders::kRange[] = "Range"; const char HttpRequestHeaders::kReferer[] = "Referer"; const char HttpRequestHeaders::kSecOriginPolicy[] = "Sec-Origin-Policy"; const char HttpRequestHeaders::kTransferEncoding[] = "Transfer-Encoding"; -const char HttpRequestHeaders::kTokenBinding[] = "Sec-Token-Binding"; const char HttpRequestHeaders::kUserAgent[] = "User-Agent"; HttpRequestHeaders::HeaderKeyValuePair::HeaderKeyValuePair() = default; @@ -86,7 +85,7 @@ HttpRequestHeaders& HttpRequestHeaders::operator=(HttpRequestHeaders&& other) = bool HttpRequestHeaders::GetHeader(const base::StringPiece& key, std::string* out) const { - HeaderVector::const_iterator it = FindHeader(key); + auto it = FindHeader(key); if (it == headers_.end()) return false; out->assign(it->value); @@ -108,13 +107,13 @@ void HttpRequestHeaders::SetHeaderIfMissing(const base::StringPiece& key, const base::StringPiece& value) { DCHECK(HttpUtil::IsValidHeaderName(key)); DCHECK(HttpUtil::IsValidHeaderValue(value)); - HeaderVector::iterator it = FindHeader(key); + auto it = FindHeader(key); if (it == headers_.end()) headers_.push_back(HeaderKeyValuePair(key, value)); } void HttpRequestHeaders::RemoveHeader(const base::StringPiece& key) { - HeaderVector::iterator it = FindHeader(key); + auto it = FindHeader(key); if (it != headers_.end()) headers_.erase(it); } @@ -168,22 +167,16 @@ void HttpRequestHeaders::AddHeadersFromString( } void HttpRequestHeaders::MergeFrom(const HttpRequestHeaders& other) { - for (HeaderVector::const_iterator it = other.headers_.begin(); - it != other.headers_.end(); ++it ) { + for (auto it = other.headers_.begin(); it != other.headers_.end(); ++it) { SetHeader(it->key, it->value); } } std::string HttpRequestHeaders::ToString() const { std::string output; - for (HeaderVector::const_iterator it = headers_.begin(); - it != headers_.end(); ++it) { - if (!it->value.empty()) { - base::StringAppendF(&output, "%s: %s\r\n", - it->key.c_str(), it->value.c_str()); - } else { - base::StringAppendF(&output, "%s:\r\n", it->key.c_str()); - } + for (auto it = headers_.begin(); it != headers_.end(); ++it) { + base::StringAppendF(&output, "%s: %s\r\n", it->key.c_str(), + it->value.c_str()); } output.append("\r\n"); return output; @@ -195,8 +188,7 @@ std::unique_ptr<base::Value> HttpRequestHeaders::NetLogCallback( auto dict = std::make_unique<base::DictionaryValue>(); dict->SetString("line", EscapeNonASCII(*request_line)); auto headers = std::make_unique<base::ListValue>(); - for (HeaderVector::const_iterator it = headers_.begin(); it != headers_.end(); - ++it) { + for (auto it = headers_.begin(); it != headers_.end(); ++it) { std::string log_value = ElideHeaderValueForNetLog(capture_mode, it->key, it->value); std::string escaped_name = EscapeNonASCII(it->key); @@ -210,8 +202,7 @@ std::unique_ptr<base::Value> HttpRequestHeaders::NetLogCallback( HttpRequestHeaders::HeaderVector::iterator HttpRequestHeaders::FindHeader(const base::StringPiece& key) { - for (HeaderVector::iterator it = headers_.begin(); - it != headers_.end(); ++it) { + for (auto it = headers_.begin(); it != headers_.end(); ++it) { if (base::EqualsCaseInsensitiveASCII(key, it->key)) return it; } @@ -221,8 +212,7 @@ HttpRequestHeaders::FindHeader(const base::StringPiece& key) { HttpRequestHeaders::HeaderVector::const_iterator HttpRequestHeaders::FindHeader(const base::StringPiece& key) const { - for (HeaderVector::const_iterator it = headers_.begin(); - it != headers_.end(); ++it) { + for (auto it = headers_.begin(); it != headers_.end(); ++it) { if (base::EqualsCaseInsensitiveASCII(key, it->key)) return it; } @@ -232,7 +222,7 @@ HttpRequestHeaders::FindHeader(const base::StringPiece& key) const { void HttpRequestHeaders::SetHeaderInternal(const base::StringPiece& key, const base::StringPiece& value) { - HeaderVector::iterator it = FindHeader(key); + auto it = FindHeader(key); if (it != headers_.end()) it->value.assign(value.data(), value.size()); else diff --git a/chromium/net/http/http_request_headers.h b/chromium/net/http/http_request_headers.h index acdbc8ef788..3bb9e431083 100644 --- a/chromium/net/http/http_request_headers.h +++ b/chromium/net/http/http_request_headers.h @@ -86,7 +86,6 @@ class NET_EXPORT HttpRequestHeaders { static const char kReferer[]; static const char kSecOriginPolicy[]; static const char kTransferEncoding[]; - static const char kTokenBinding[]; static const char kUserAgent[]; HttpRequestHeaders(); diff --git a/chromium/net/http/http_request_headers_unittest.cc b/chromium/net/http/http_request_headers_unittest.cc index c85a1a80b64..8ee660496e5 100644 --- a/chromium/net/http/http_request_headers_unittest.cc +++ b/chromium/net/http/http_request_headers_unittest.cc @@ -68,7 +68,7 @@ TEST(HttpRequestHeaders, SetEmptyHeader) { HttpRequestHeaders headers; headers.SetHeader("Foo", "Bar"); headers.SetHeader("Bar", ""); - EXPECT_EQ("Foo: Bar\r\nBar:\r\n\r\n", headers.ToString()); + EXPECT_EQ("Foo: Bar\r\nBar: \r\n\r\n", headers.ToString()); } TEST(HttpRequestHeaders, SetHeaderIfMissing) { @@ -134,13 +134,13 @@ TEST(HttpRequestHeaders, AddHeaderFromStringLeadingTrailingWhitespace) { TEST(HttpRequestHeaders, AddHeaderFromStringWithEmptyValue) { HttpRequestHeaders headers; headers.AddHeaderFromString("Foo:"); - EXPECT_EQ("Foo:\r\n\r\n", headers.ToString()); + EXPECT_EQ("Foo: \r\n\r\n", headers.ToString()); } TEST(HttpRequestHeaders, AddHeaderFromStringWithWhitespaceValue) { HttpRequestHeaders headers; headers.AddHeaderFromString("Foo: "); - EXPECT_EQ("Foo:\r\n\r\n", headers.ToString()); + EXPECT_EQ("Foo: \r\n\r\n", headers.ToString()); } TEST(HttpRequestHeaders, MergeFrom) { diff --git a/chromium/net/http/http_request_info.h b/chromium/net/http/http_request_info.h index 987c0e1140d..a7fbfe435df 100644 --- a/chromium/net/http/http_request_info.h +++ b/chromium/net/http/http_request_info.h @@ -42,10 +42,6 @@ struct NET_EXPORT HttpRequestInfo { // tracked by the server (e.g. without channel id). PrivacyMode privacy_mode; - // If present, the host of the referrer whose TokenBindingID should be - // included in a referred TokenBinding. - std::string token_binding_referrer; - // Tag applied to all sockets used to service request. SocketTag socket_tag; diff --git a/chromium/net/http/http_response_body_drainer_unittest.cc b/chromium/net/http/http_response_body_drainer_unittest.cc index edf7f428df4..f21ba7d8cb0 100644 --- a/chromium/net/http/http_response_body_drainer_unittest.cc +++ b/chromium/net/http/http_response_body_drainer_unittest.cc @@ -118,12 +118,6 @@ class MockHttpStream : public HttpStream { void GetSSLInfo(SSLInfo* ssl_info) override {} void GetSSLCertRequestInfo(SSLCertRequestInfo* cert_request_info) override {} bool GetRemoteEndpoint(IPEndPoint* endpoint) override { return false; } - Error GetTokenBindingSignature(crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out) override { - ADD_FAILURE(); - return ERR_NOT_IMPLEMENTED; - } // Mocked API int ReadResponseBody(IOBuffer* buf, diff --git a/chromium/net/http/http_response_headers_unittest.cc b/chromium/net/http/http_response_headers_unittest.cc index 8281aa961ae..504d34613e6 100644 --- a/chromium/net/http/http_response_headers_unittest.cc +++ b/chromium/net/http/http_response_headers_unittest.cc @@ -733,7 +733,7 @@ const ContentTypeTestData mimetype_tests[] = { "text/html", true, "'utf-8'", true, "text/html;charset='utf-8', text/html" }, - // Last charset wins if matching content-type. + // First charset wins if matching content-type. { "HTTP/1.1 200 OK\n" "Content-type: text/html;charset=utf-8\n" "Content-type: text/html;charset=iso-8859-1\n", @@ -759,11 +759,11 @@ const ContentTypeTestData mimetype_tests[] = { "text/html", true, "", false, "text/html;charset=" }, - // Multiple charsets, last one wins. + // Multiple charsets, first one wins. { "HTTP/1.1 200 OK\n" "Content-type: text/html;charset=utf-8; charset=iso-8859-1\n", "text/html", true, - "iso-8859-1", true, + "utf-8", true, "text/html;charset=utf-8; charset=iso-8859-1" }, // Multiple params. { "HTTP/1.1 200 OK\n" diff --git a/chromium/net/http/http_response_info.cc b/chromium/net/http/http_response_info.cc index 63b3185416c..648ace6f4fe 100644 --- a/chromium/net/http/http_response_info.cc +++ b/chromium/net/http/http_response_info.cc @@ -393,6 +393,7 @@ bool HttpResponseInfo::DidUseQuic() const { case CONNECTION_INFO_QUIC_42: case CONNECTION_INFO_QUIC_43: case CONNECTION_INFO_QUIC_44: + case CONNECTION_INFO_QUIC_45: case CONNECTION_INFO_QUIC_99: return true; case NUM_OF_CONNECTION_INFOS: @@ -452,6 +453,8 @@ std::string HttpResponseInfo::ConnectionInfoToString( return "http/2+quic/43"; case CONNECTION_INFO_QUIC_44: return "http/2+quic/44"; + case CONNECTION_INFO_QUIC_45: + return "http/2+quic/45"; case CONNECTION_INFO_QUIC_99: return "http/2+quic/99"; case CONNECTION_INFO_HTTP0_9: diff --git a/chromium/net/http/http_response_info.h b/chromium/net/http/http_response_info.h index 0c7e4a4b304..bac26371fcb 100644 --- a/chromium/net/http/http_response_info.h +++ b/chromium/net/http/http_response_info.h @@ -57,6 +57,7 @@ class NET_EXPORT HttpResponseInfo { CONNECTION_INFO_QUIC_43 = 21, CONNECTION_INFO_QUIC_99 = 22, CONNECTION_INFO_QUIC_44 = 23, + CONNECTION_INFO_QUIC_45 = 24, NUM_OF_CONNECTION_INFOS, }; diff --git a/chromium/net/http/http_server_properties_impl.cc b/chromium/net/http/http_server_properties_impl.cc index bafe124b37e..7f205e2fc02 100644 --- a/chromium/net/http/http_server_properties_impl.cc +++ b/chromium/net/http/http_server_properties_impl.cc @@ -52,8 +52,8 @@ void HttpServerPropertiesImpl::SetSpdyServers( spdy_servers_map_.Swap(*spdy_servers_map); // Add the entries from the memory cache. - for (SpdyServersMap::reverse_iterator it = spdy_servers_map->rbegin(); - it != spdy_servers_map->rend(); ++it) { + for (auto it = spdy_servers_map->rbegin(); it != spdy_servers_map->rend(); + ++it) { // Add the entry if it is not in the cache, otherwise move it to the front // of recency list. if (spdy_servers_map_.Get(it->first) == spdy_servers_map_.end()) @@ -123,8 +123,7 @@ void HttpServerPropertiesImpl::SetServerNetworkStats( server_network_stats_map_.Swap(*server_network_stats_map); // Add the entries from the memory cache. - for (ServerNetworkStatsMap::reverse_iterator it = - server_network_stats_map->rbegin(); + for (auto it = server_network_stats_map->rbegin(); it != server_network_stats_map->rend(); ++it) { if (server_network_stats_map_.Get(it->first) == server_network_stats_map_.end()) { @@ -141,7 +140,7 @@ void HttpServerPropertiesImpl::SetQuicServerInfoMap( quic_server_info_map_.Swap(*quic_server_info_map); // Add the entries from the memory cache. - for (QuicServerInfoMap::reverse_iterator it = quic_server_info_map->rbegin(); + for (auto it = quic_server_info_map->rbegin(); it != quic_server_info_map->rend(); ++it) { if (quic_server_info_map_.Get(it->first) == quic_server_info_map_.end()) { quic_server_info_map_.Put(it->first, it->second); @@ -151,7 +150,7 @@ void HttpServerPropertiesImpl::SetQuicServerInfoMap( // Repopulate |canonical_server_info_map_| to stay in sync with // |quic_server_info_map_|. canonical_server_info_map_.clear(); - for (QuicServerInfoMap::reverse_iterator it = quic_server_info_map_.rbegin(); + for (auto it = quic_server_info_map_.rbegin(); it != quic_server_info_map_.rend(); ++it) { UpdateCanonicalServerInfoMap(it->first); } @@ -224,8 +223,7 @@ bool HttpServerPropertiesImpl::GetSupportsSpdy( if (server.host().empty()) return false; - SpdyServersMap::iterator spdy_server = - spdy_servers_map_.Get(server.Serialize()); + auto spdy_server = spdy_servers_map_.Get(server.Serialize()); return spdy_server != spdy_servers_map_.end() && spdy_server->second; } @@ -236,8 +234,7 @@ void HttpServerPropertiesImpl::SetSupportsSpdy( if (server.host().empty()) return; - SpdyServersMap::iterator spdy_server = - spdy_servers_map_.Get(server.Serialize()); + auto spdy_server = spdy_servers_map_.Get(server.Serialize()); if ((spdy_server != spdy_servers_map_.end()) && (spdy_server->second == support_spdy)) { return; @@ -291,11 +288,10 @@ HttpServerPropertiesImpl::GetAlternativeServiceInfos( // |valid_alternative_service_infos|. AlternativeServiceInfoVector valid_alternative_service_infos; const base::Time now = clock_->Now(); - AlternativeServiceMap::iterator map_it = alternative_service_map_.Get(origin); + auto map_it = alternative_service_map_.Get(origin); if (map_it != alternative_service_map_.end()) { HostPortPair host_port_pair(origin.host(), origin.port()); - for (AlternativeServiceInfoVector::iterator it = map_it->second.begin(); - it != map_it->second.end();) { + for (auto it = map_it->second.begin(); it != map_it->second.end();) { if (it->expiration() < now) { it = map_it->second.erase(it); continue; @@ -329,7 +325,7 @@ HttpServerPropertiesImpl::GetAlternativeServiceInfos( return valid_alternative_service_infos; } - CanonicalAltSvcMap::const_iterator canonical = GetCanonicalAltSvcHost(origin); + auto canonical = GetCanonicalAltSvcHost(origin); if (canonical == canonical_alt_svc_map_.end()) { return AlternativeServiceInfoVector(); } @@ -337,8 +333,7 @@ HttpServerPropertiesImpl::GetAlternativeServiceInfos( if (map_it == alternative_service_map_.end()) { return AlternativeServiceInfoVector(); } - for (AlternativeServiceInfoVector::iterator it = map_it->second.begin(); - it != map_it->second.end();) { + for (auto it = map_it->second.begin(); it != map_it->second.end();) { if (it->expiration() < now) { it = map_it->second.erase(it); continue; @@ -403,7 +398,7 @@ bool HttpServerPropertiesImpl::SetQuicAlternativeService( bool HttpServerPropertiesImpl::SetAlternativeServices( const url::SchemeHostPort& origin, const AlternativeServiceInfoVector& alternative_service_info_vector) { - AlternativeServiceMap::iterator it = alternative_service_map_.Peek(origin); + auto it = alternative_service_map_.Peek(origin); if (alternative_service_info_vector.empty()) { RemoveAltSvcCanonicalHost(origin); @@ -590,7 +585,7 @@ void HttpServerPropertiesImpl::SetServerNetworkStats( void HttpServerPropertiesImpl::ClearServerNetworkStats( const url::SchemeHostPort& server) { - ServerNetworkStatsMap::iterator it = server_network_stats_map_.Get(server); + auto it = server_network_stats_map_.Get(server); if (it != server_network_stats_map_.end()) { server_network_stats_map_.Erase(it); } @@ -598,7 +593,7 @@ void HttpServerPropertiesImpl::ClearServerNetworkStats( const ServerNetworkStats* HttpServerPropertiesImpl::GetServerNetworkStats( const url::SchemeHostPort& server) { - ServerNetworkStatsMap::iterator it = server_network_stats_map_.Get(server); + auto it = server_network_stats_map_.Get(server); if (it == server_network_stats_map_.end()) { return NULL; } @@ -613,7 +608,7 @@ HttpServerPropertiesImpl::server_network_stats_map() const { bool HttpServerPropertiesImpl::SetQuicServerInfo( const quic::QuicServerId& server_id, const std::string& server_info) { - QuicServerInfoMap::iterator it = quic_server_info_map_.Peek(server_id); + auto it = quic_server_info_map_.Peek(server_id); bool changed = (it == quic_server_info_map_.end() || it->second != server_info); quic_server_info_map_.Put(server_id, server_info); @@ -623,7 +618,7 @@ bool HttpServerPropertiesImpl::SetQuicServerInfo( const std::string* HttpServerPropertiesImpl::GetQuicServerInfo( const quic::QuicServerId& server_id) { - QuicServerInfoMap::iterator it = quic_server_info_map_.Get(server_id); + auto it = quic_server_info_map_.Get(server_id); if (it != quic_server_info_map_.end()) { // Since |canonical_server_info_map_| should always map to the most // recent host, update it with the one that became MRU in @@ -635,8 +630,7 @@ const std::string* HttpServerPropertiesImpl::GetQuicServerInfo( // If the exact match for |server_id| wasn't found, check // |canonical_server_info_map_| whether there is server info for a host with // the same canonical host suffix. - CanonicalServerInfoMap::const_iterator canonical_itr = - GetCanonicalServerInfoHost(server_id); + auto canonical_itr = GetCanonicalServerInfoHost(server_id); if (canonical_itr == canonical_server_info_map_.end()) return nullptr; @@ -686,7 +680,7 @@ void HttpServerPropertiesImpl::SetMaxServerConfigsStoredInProperties( // Update the |canonical_server_info_map_| as well, so it stays in sync with // |quic_server_info_map_|. canonical_server_info_map_ = CanonicalServerInfoMap(); - for (QuicServerInfoMap::reverse_iterator it = quic_server_info_map_.rbegin(); + for (auto it = quic_server_info_map_.rbegin(); it != quic_server_info_map_.rend(); ++it) { temp_map.Put(it->first, it->second); UpdateCanonicalServerInfoMap(it->first); @@ -717,7 +711,7 @@ HttpServerPropertiesImpl::GetAlternateProtocolIterator( if (it != alternative_service_map_.end()) return it; - CanonicalAltSvcMap::const_iterator canonical = GetCanonicalAltSvcHost(server); + auto canonical = GetCanonicalAltSvcHost(server); if (canonical == canonical_alt_svc_map_.end()) { return alternative_service_map_.end(); } @@ -761,7 +755,7 @@ HttpServerPropertiesImpl::GetCanonicalAltSvcHost( void HttpServerPropertiesImpl::RemoveAltSvcCanonicalHost( const url::SchemeHostPort& server) { - CanonicalAltSvcMap::const_iterator canonical = GetCanonicalAltSvcHost(server); + auto canonical = GetCanonicalAltSvcHost(server); if (canonical == canonical_alt_svc_map_.end()) return; @@ -772,11 +766,9 @@ void HttpServerPropertiesImpl::OnExpireBrokenAlternativeService( const AlternativeService& expired_alternative_service) { // Remove every occurrence of |expired_alternative_service| from // |alternative_service_map_|. - for (AlternativeServiceMap::iterator map_it = - alternative_service_map_.begin(); + for (auto map_it = alternative_service_map_.begin(); map_it != alternative_service_map_.end();) { - for (AlternativeServiceInfoVector::iterator it = map_it->second.begin(); - it != map_it->second.end();) { + for (auto it = map_it->second.begin(); it != map_it->second.end();) { AlternativeService alternative_service(it->alternative_service()); // Empty hostname in map means hostname of key: substitute before // comparing to |expired_alternative_service|. diff --git a/chromium/net/http/http_server_properties_impl_unittest.cc b/chromium/net/http/http_server_properties_impl_unittest.cc index 0b12f93d322..99dd7f4fd52 100644 --- a/chromium/net/http/http_server_properties_impl_unittest.cc +++ b/chromium/net/http/http_server_properties_impl_unittest.cc @@ -448,19 +448,19 @@ TEST_F(AlternateProtocolServerPropertiesTest, Set) { // Verify alternative_service_map. const AlternativeServiceMap& map = impl_.alternative_service_map(); ASSERT_EQ(3u, map.size()); - AlternativeServiceMap::const_iterator map_it = map.begin(); + auto map_it = map.begin(); - EXPECT_TRUE(map_it->first.Equals(test_server2)); + EXPECT_EQ(map_it->first, test_server2); ASSERT_EQ(1u, map_it->second.size()); EXPECT_EQ(alternative_service3, map_it->second[0].alternative_service()); EXPECT_EQ(expiration3, map_it->second[0].expiration()); ++map_it; - EXPECT_TRUE(map_it->first.Equals(test_server1)); + EXPECT_EQ(map_it->first, test_server1); ASSERT_EQ(1u, map_it->second.size()); EXPECT_EQ(alternative_service1, map_it->second[0].alternative_service()); EXPECT_EQ(expiration1, map_it->second[0].expiration()); ++map_it; - EXPECT_TRUE(map_it->first.Equals(test_server3)); + EXPECT_EQ(map_it->first, test_server3); ASSERT_EQ(1u, map_it->second.size()); EXPECT_EQ(alternative_service4, map_it->second[0].alternative_service()); EXPECT_EQ(expiration4, map_it->second[0].expiration()); @@ -602,8 +602,8 @@ TEST_F(AlternateProtocolServerPropertiesTest, MRUOfGetAlternativeServiceInfos) { SetAlternativeService(test_server2, alternative_service2); const AlternativeServiceMap& map = impl_.alternative_service_map(); - AlternativeServiceMap::const_iterator it = map.begin(); - EXPECT_TRUE(it->first.Equals(test_server2)); + auto it = map.begin(); + EXPECT_EQ(it->first, test_server2); ASSERT_EQ(1u, it->second.size()); EXPECT_EQ(alternative_service2, it->second[0].alternative_service()); @@ -615,7 +615,7 @@ TEST_F(AlternateProtocolServerPropertiesTest, MRUOfGetAlternativeServiceInfos) { // GetAlternativeServices should reorder the AlternateProtocol map. it = map.begin(); - EXPECT_TRUE(it->first.Equals(test_server1)); + EXPECT_EQ(it->first, test_server1); ASSERT_EQ(1u, it->second.size()); EXPECT_EQ(alternative_service1, it->second[0].alternative_service()); } @@ -801,8 +801,8 @@ TEST_F(AlternateProtocolServerPropertiesTest, AlternativeServiceWithScheme) { impl_.SetAlternativeServices(http_server, alternative_service_info_vector); const net::AlternativeServiceMap& map = impl_.alternative_service_map(); - net::AlternativeServiceMap::const_iterator it = map.begin(); - EXPECT_TRUE(it->first.Equals(http_server)); + auto it = map.begin(); + EXPECT_EQ(it->first, http_server); ASSERT_EQ(2u, it->second.size()); EXPECT_EQ(alternative_service1, it->second[0].alternative_service()); EXPECT_EQ(alternative_service2, it->second[1].alternative_service()); @@ -838,8 +838,8 @@ TEST_F(AlternateProtocolServerPropertiesTest, ClearAlternativeServices) { impl_.SetAlternativeServices(test_server, alternative_service_info_vector); const net::AlternativeServiceMap& map = impl_.alternative_service_map(); - net::AlternativeServiceMap::const_iterator it = map.begin(); - EXPECT_TRUE(it->first.Equals(test_server)); + auto it = map.begin(); + EXPECT_EQ(it->first, test_server); ASSERT_EQ(2u, it->second.size()); EXPECT_EQ(alternative_service1, it->second[0].alternative_service()); EXPECT_EQ(alternative_service2, it->second[1].alternative_service()); @@ -1379,15 +1379,15 @@ TEST_F(ServerNetworkStatsServerPropertiesTest, Set) { const ServerNetworkStatsMap& map = impl_.server_network_stats_map(); ASSERT_EQ(3u, map.size()); - ServerNetworkStatsMap::const_iterator map_it = map.begin(); + auto map_it = map.begin(); - EXPECT_TRUE(map_it->first.Equals(docs_server)); + EXPECT_EQ(map_it->first, docs_server); EXPECT_EQ(new_stats_docs, map_it->second); ++map_it; - EXPECT_TRUE(map_it->first.Equals(google_server)); + EXPECT_EQ(map_it->first, google_server); EXPECT_EQ(stats_google, map_it->second); ++map_it; - EXPECT_TRUE(map_it->first.Equals(mail_server)); + EXPECT_EQ(map_it->first, mail_server); EXPECT_EQ(stats_mail, map_it->second); } @@ -1464,7 +1464,7 @@ TEST_F(QuicServerInfoServerPropertiesTest, Set) { // Recency order will be |docs_server| and |google_server|. const QuicServerInfoMap& map = impl_.quic_server_info_map(); ASSERT_EQ(2u, map.size()); - QuicServerInfoMap::const_iterator map_it = map.begin(); + auto map_it = map.begin(); EXPECT_EQ(map_it->first, docs_quic_server_id); EXPECT_EQ(docs_server_info, map_it->second); ++map_it; @@ -1487,7 +1487,7 @@ TEST_F(QuicServerInfoServerPropertiesTest, Set) { // Recency order will be |docs_server|, |google_server| and |mail_server|. const QuicServerInfoMap& memory_map = impl_.quic_server_info_map(); ASSERT_EQ(3u, memory_map.size()); - QuicServerInfoMap::const_iterator memory_map_it = memory_map.begin(); + auto memory_map_it = memory_map.begin(); EXPECT_EQ(memory_map_it->first, docs_quic_server_id); EXPECT_EQ(new_docs_server_info, memory_map_it->second); ++memory_map_it; @@ -1504,7 +1504,7 @@ TEST_F(QuicServerInfoServerPropertiesTest, Set) { const QuicServerInfoMap& memory_map1 = impl_.quic_server_info_map(); ASSERT_EQ(2u, memory_map1.size()); - QuicServerInfoMap::const_iterator memory_map1_it = memory_map1.begin(); + auto memory_map1_it = memory_map1.begin(); EXPECT_EQ(memory_map1_it->first, docs_quic_server_id); EXPECT_EQ(new_docs_server_info, memory_map1_it->second); ++memory_map1_it; diff --git a/chromium/net/http/http_server_properties_manager.cc b/chromium/net/http/http_server_properties_manager.cc index 1df7a1c6103..b3bd0443f85 100644 --- a/chromium/net/http/http_server_properties_manager.cc +++ b/chromium/net/http/http_server_properties_manager.cc @@ -553,8 +553,7 @@ void HttpServerPropertiesManager::UpdateCacheFromPrefs() { // Iterate servers list in reverse MRU order so that entries are inserted // into |spdy_servers_map|, |alternative_service_map|, and // |server_network_stats_map| from oldest to newest. - for (base::ListValue::const_iterator it = servers_list->end(); - it != servers_list->begin();) { + for (auto it = servers_list->end(); it != servers_list->begin();) { --it; if (!it->GetAsDictionary(&servers_dict)) { DVLOG(1) << "Malformed http_server_properties for servers dictionary."; @@ -588,7 +587,7 @@ void HttpServerPropertiesManager::UpdateCacheFromPrefs() { std::make_unique<RecentlyBrokenAlternativeServices>(); // Iterate list in reverse-MRU order - for (base::ListValue::const_iterator it = broken_alt_svc_list->end(); + for (auto it = broken_alt_svc_list->end(); it != broken_alt_svc_list->begin();) { --it; const base::DictionaryValue* entry_dict; @@ -1027,8 +1026,8 @@ void HttpServerPropertiesManager::UpdatePrefsFromCache( // Add SPDY servers to |server_pref_map|. const SpdyServersMap& spdy_servers_map = http_server_properties_impl_->spdy_servers_map(); - for (SpdyServersMap::const_reverse_iterator it = spdy_servers_map.rbegin(); - it != spdy_servers_map.rend(); ++it) { + for (auto it = spdy_servers_map.rbegin(); it != spdy_servers_map.rend(); + ++it) { // Only add servers that support SPDY. if (!it->second) continue; @@ -1046,8 +1045,7 @@ void HttpServerPropertiesManager::UpdatePrefsFromCache( typedef std::map<std::string, bool> CanonicalHostPersistedMap; CanonicalHostPersistedMap persisted_map; const base::Time now = base::Time::Now(); - for (AlternativeServiceMap::const_reverse_iterator it = - alternative_service_map.rbegin(); + for (auto it = alternative_service_map.rbegin(); it != alternative_service_map.rend(); ++it) { const url::SchemeHostPort& server = it->first; AlternativeServiceInfoVector notbroken_alternative_service_info_vector; @@ -1084,8 +1082,7 @@ void HttpServerPropertiesManager::UpdatePrefsFromCache( // Add server network stats to |server_pref_map|. const ServerNetworkStatsMap& server_network_stats_map = http_server_properties_impl_->server_network_stats_map(); - for (ServerNetworkStatsMap::const_reverse_iterator it = - server_network_stats_map.rbegin(); + for (auto it = server_network_stats_map.rbegin(); it != server_network_stats_map.rend(); ++it) { const url::SchemeHostPort& server = it->first; auto map_it = server_pref_map.Get(server); @@ -1223,8 +1220,7 @@ void HttpServerPropertiesManager::SaveQuicServerInfoMapToServerPrefs( if (quic_server_info_map.empty()) return; auto quic_servers_dict = std::make_unique<base::DictionaryValue>(); - for (QuicServerInfoMap::const_reverse_iterator it = - quic_server_info_map.rbegin(); + for (auto it = quic_server_info_map.rbegin(); it != quic_server_info_map.rend(); ++it) { const quic::QuicServerId& server_id = it->first; auto quic_server_pref_dict = std::make_unique<base::DictionaryValue>(); diff --git a/chromium/net/http/http_server_properties_manager_unittest.cc b/chromium/net/http/http_server_properties_manager_unittest.cc index 80e3274a92d..b18120f47b0 100644 --- a/chromium/net/http/http_server_properties_manager_unittest.cc +++ b/chromium/net/http/http_server_properties_manager_unittest.cc @@ -296,7 +296,7 @@ TEST_P(HttpServerPropertiesManagerTest, http_server_props_manager_->alternative_service_map(); ASSERT_EQ(2u, map.size()); - AlternativeServiceMap::const_iterator map_it = map.begin(); + auto map_it = map.begin(); EXPECT_EQ("www.google.com", map_it->first.host()); ASSERT_EQ(2u, map_it->second.size()); EXPECT_EQ(kProtoHTTP2, map_it->second[0].alternative_service().protocol); @@ -1257,7 +1257,7 @@ TEST_P(HttpServerPropertiesManagerTest, AddToAlternativeServiceMap) { EXPECT_TRUE(http_server_props_manager_->AddToAlternativeServiceMap( server, *server_dict, &alternative_service_map)); - AlternativeServiceMap::iterator it = alternative_service_map.Get(server); + auto it = alternative_service_map.Get(server); ASSERT_NE(alternative_service_map.end(), it); AlternativeServiceInfoVector alternative_service_info_vector = it->second; ASSERT_EQ(3u, alternative_service_info_vector.size()); @@ -1306,7 +1306,7 @@ TEST_P(HttpServerPropertiesManagerTest, DoNotLoadAltSvcForInsecureOrigins) { EXPECT_FALSE(http_server_props_manager_->AddToAlternativeServiceMap( server, *server_dict, &alternative_service_map)); - AlternativeServiceMap::iterator it = alternative_service_map.Get(server); + auto it = alternative_service_map.Get(server); EXPECT_EQ(alternative_service_map.end(), it); } @@ -1359,7 +1359,7 @@ TEST_P(HttpServerPropertiesManagerTest, DoNotPersistExpiredAlternativeService) { const base::ListValue* servers_list = nullptr; ASSERT_TRUE(pref_dict->GetListWithoutPathExpansion("servers", &servers_list)); - base::ListValue::const_iterator it = servers_list->begin(); + auto it = servers_list->begin(); const base::DictionaryValue* server_pref_dict; ASSERT_TRUE(it->GetAsDictionary(&server_pref_dict)); @@ -1415,7 +1415,7 @@ TEST_P(HttpServerPropertiesManagerTest, DoNotLoadExpiredAlternativeService) { ASSERT_TRUE(http_server_props_manager_->AddToAlternativeServiceMap( server, server_pref_dict, &alternative_service_map)); - AlternativeServiceMap::iterator it = alternative_service_map.Get(server); + auto it = alternative_service_map.Get(server); ASSERT_NE(alternative_service_map.end(), it); AlternativeServiceInfoVector alternative_service_info_vector = it->second; ASSERT_EQ(1u, alternative_service_info_vector.size()); @@ -1530,7 +1530,7 @@ TEST_P(HttpServerPropertiesManagerTest, ReadAdvertisedVersionsFromPref) { EXPECT_TRUE(http_server_props_manager_->AddToAlternativeServiceMap( server, *server_dict, &alternative_service_map)); - AlternativeServiceMap::iterator it = alternative_service_map.Get(server); + auto it = alternative_service_map.Get(server); ASSERT_NE(alternative_service_map.end(), it); AlternativeServiceInfoVector alternative_service_info_vector = it->second; ASSERT_EQ(2u, alternative_service_info_vector.size()); diff --git a/chromium/net/http/http_stream.h b/chromium/net/http/http_stream.h index 581a4910ad5..96937afab63 100644 --- a/chromium/net/http/http_stream.h +++ b/chromium/net/http/http_stream.h @@ -23,11 +23,6 @@ #include "net/base/net_export.h" #include "net/base/request_priority.h" #include "net/http/http_raw_request_headers.h" -#include "net/ssl/token_binding.h" - -namespace crypto { -class ECPrivateKey; -} namespace net { @@ -169,13 +164,6 @@ class NET_EXPORT_PRIVATE HttpStream { // and does not modify |endpoint| if it is unavailable. virtual bool GetRemoteEndpoint(IPEndPoint* endpoint) = 0; - // Generates the signature used in Token Binding using |*key| and for a Token - // Binding of type |tb_type|, putting the signature in |*out|. Returns OK or - // ERR_FAILED. - virtual Error GetTokenBindingSignature(crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out) = 0; - // In the case of an HTTP error or redirect, flush the response body (usually // a simple error or "this page has moved") so that we can re-use the // underlying connection. This stream is responsible for deleting itself when diff --git a/chromium/net/http/http_stream_factory_job.cc b/chromium/net/http/http_stream_factory_job.cc index 75e62eb1e84..e0ab4b0af1b 100644 --- a/chromium/net/http/http_stream_factory_job.cc +++ b/chromium/net/http/http_stream_factory_job.cc @@ -901,7 +901,10 @@ int HttpStreamFactory::Job::DoInitConnectionImpl() { int rv = quic_request_.Request( destination, quic_version_, request_info_.privacy_mode, priority_, request_info_.socket_tag, ssl_config->GetCertVerifyFlags(), url, - net_log_, &net_error_details_, io_callback_); + net_log_, &net_error_details_, + base::BindOnce(&Job::OnFailedOnDefaultNetwork, + ptr_factory_.GetWeakPtr()), + io_callback_); if (rv == OK) { using_existing_quic_session_ = true; } else if (rv == ERR_IO_PENDING) { @@ -999,6 +1002,12 @@ void HttpStreamFactory::Job::OnQuicHostResolution(int result) { delegate_->OnConnectionInitialized(this, result); } +void HttpStreamFactory::Job::OnFailedOnDefaultNetwork(int result) { + DCHECK_EQ(job_type_, ALTERNATIVE); + DCHECK(using_quic_); + delegate_->OnFailedOnDefaultNetwork(this); +} + int HttpStreamFactory::Job::DoInitConnectionComplete(int result) { net_log_.EndEvent(NetLogEventType::HTTP_STREAM_JOB_INIT_CONNECTION); if (job_type_ == PRECONNECT) { @@ -1294,8 +1303,7 @@ int HttpStreamFactory::Job::DoCreateStreamComplete(int result) { if (result < 0) return result; - session_->proxy_resolution_service()->ReportSuccess( - proxy_info_, session_->context().proxy_delegate); + session_->proxy_resolution_service()->ReportSuccess(proxy_info_); next_state_ = STATE_NONE; return OK; } diff --git a/chromium/net/http/http_stream_factory_job.h b/chromium/net/http/http_stream_factory_job.h index 172a94cbcc6..047c9727086 100644 --- a/chromium/net/http/http_stream_factory_job.h +++ b/chromium/net/http/http_stream_factory_job.h @@ -83,6 +83,9 @@ class HttpStreamFactory::Job { int status, const SSLConfig& used_ssl_config) = 0; + // Invoked when |job| fails on the default network. + virtual void OnFailedOnDefaultNetwork(Job* job) = 0; + // Invoked when |job| has a certificate error for the HttpStreamRequest. virtual void OnCertificateError(Job* job, int status, @@ -316,6 +319,9 @@ class HttpStreamFactory::Job { // resolution, not the result of host resolution itself. void OnQuicHostResolution(int result); + // Invoked when the underlying connection fails on the default network. + void OnFailedOnDefaultNetwork(int result); + // Each of these methods corresponds to a State value. Those with an input // argument receive the result from the previous state. If a method returns // ERR_IO_PENDING, then the result from OnIOComplete will be passed to the diff --git a/chromium/net/http/http_stream_factory_job_controller.cc b/chromium/net/http/http_stream_factory_job_controller.cc index 8e4733ddf36..d6410c90657 100644 --- a/chromium/net/http/http_stream_factory_job_controller.cc +++ b/chromium/net/http/http_stream_factory_job_controller.cc @@ -78,7 +78,9 @@ HttpStreamFactory::JobController::JobController( is_websocket_(is_websocket), enable_ip_based_pooling_(enable_ip_based_pooling), enable_alternative_services_(enable_alternative_services), + main_job_net_error_(OK), alternative_job_net_error_(OK), + alternative_job_failed_on_default_network_(false), job_bound_(false), main_job_is_blocked_(false), main_job_is_resumed_(false), @@ -209,6 +211,7 @@ void HttpStreamFactory::JobController::OnStreamReadyOnPooledConnection( main_job_.reset(); alternative_job_.reset(); + ResetErrorStatusForJobs(); factory_->OnStreamReady(proxy_info, request_info_.privacy_mode); @@ -226,6 +229,7 @@ void HttpStreamFactory::JobController:: main_job_.reset(); alternative_job_.reset(); + ResetErrorStatusForJobs(); delegate_->OnBidirectionalStreamImplReady(used_ssl_config, used_proxy_info, std::move(stream)); @@ -322,6 +326,9 @@ void HttpStreamFactory::JobController::OnStreamFailed( } else { OnAlternativeServiceJobFailed(status); } + } else { + DCHECK_EQ(main_job_.get(), job); + main_job_net_error_ = status; } MaybeResumeMainJob(job, base::TimeDelta()); @@ -365,6 +372,11 @@ void HttpStreamFactory::JobController::OnStreamFailed( delegate_->OnStreamFailed(status, *job->net_error_details(), used_ssl_config); } +void HttpStreamFactory::JobController::OnFailedOnDefaultNetwork(Job* job) { + DCHECK_EQ(job->job_type(), ALTERNATIVE); + alternative_job_failed_on_default_network_ = true; +} + void HttpStreamFactory::JobController::OnCertificateError( Job* job, int status, @@ -482,8 +494,6 @@ void HttpStreamFactory::JobController::OnNewSpdySessionReady( // Notify |request_|. if (!is_preconnect_ && !is_job_orphaned) { - if (job->job_type() == MAIN && alternative_job_net_error_ != OK) - ReportBrokenAlternativeService(); DCHECK(request_); @@ -528,6 +538,7 @@ void HttpStreamFactory::JobController::OnNewSpdySessionReady( void HttpStreamFactory::JobController::OnPreconnectsComplete(Job* job) { DCHECK_EQ(main_job_.get(), job); main_job_.reset(); + ResetErrorStatusForJobs(); factory_->OnPreconnectsCompleteInternal(); MaybeNotifyFactoryOfCompletion(); } @@ -579,6 +590,12 @@ void HttpStreamFactory::JobController::ResumeMainJob() { main_job_wait_time_ = base::TimeDelta(); } +void HttpStreamFactory::JobController::ResetErrorStatusForJobs() { + main_job_net_error_ = OK; + alternative_job_net_error_ = OK; + alternative_job_failed_on_default_network_ = false; +} + void HttpStreamFactory::JobController::MaybeResumeMainJob( Job* job, const base::TimeDelta& delay) { @@ -752,7 +769,7 @@ int HttpStreamFactory::JobController::DoResolveProxy() { base::Bind(&JobController::OnIOComplete, base::Unretained(this)); return session_->proxy_resolution_service()->ResolveProxy( origin_url, request_info_.method, &proxy_info_, std::move(io_callback), - &proxy_resolve_request_, session_->context().proxy_delegate, net_log_); + &proxy_resolve_request_, net_log_); } int HttpStreamFactory::JobController::DoResolveProxyComplete(int rv) { @@ -919,11 +936,17 @@ void HttpStreamFactory::JobController::OrphanUnboundJob() { return; } - if (bound_job_->job_type() == ALTERNATIVE && main_job_) { - // |request_| is bound to the alternative job. This means that the main job + if (bound_job_->job_type() == ALTERNATIVE && main_job_ && + !alternative_job_failed_on_default_network_) { + // |request_| is bound to the alternative job and the alternative job + // succeeds on the default network. This means that the main job // is no longer needed, so cancel it now. Pending ConnectJobs will return // established sockets to socket pools if applicable. // https://crbug.com/757548. + // The main job still needs to run if the alternative job succeeds on the + // alternate network in order to figure out whether QUIC should be marked as + // broken until the default network changes. + DCHECK_EQ(OK, alternative_job_net_error_); main_job_.reset(); } } @@ -931,9 +954,6 @@ void HttpStreamFactory::JobController::OrphanUnboundJob() { void HttpStreamFactory::JobController::OnJobSucceeded(Job* job) { DCHECK(job); - if (job->job_type() == MAIN && alternative_job_net_error_ != OK) - ReportBrokenAlternativeService(); - if (!bound_job_) { if (main_job_ && alternative_job_) ReportAlternateProtocolUsage(job); @@ -958,14 +978,6 @@ void HttpStreamFactory::JobController::OnAlternativeServiceJobFailed( DCHECK_NE(kProtoUnknown, alternative_service_info_.protocol()); alternative_job_net_error_ = net_error; - - if (IsJobOrphaned(alternative_job_.get())) { - // If |request_| is gone, then it must have been successfully served by - // |main_job_|. - // If |request_| is bound to a different job, then it is being - // successfully served by the main job. - ReportBrokenAlternativeService(); - } } void HttpStreamFactory::JobController::OnAlternativeProxyJobFailed( @@ -988,17 +1000,41 @@ void HttpStreamFactory::JobController::OnAlternativeProxyJobFailed( } } -void HttpStreamFactory::JobController::ReportBrokenAlternativeService() { +void HttpStreamFactory::JobController::MaybeReportBrokenAlternativeService() { + // If alternative job succeeds on the default network, no brokenness to + // report. + if (alternative_job_net_error_ == OK && + !alternative_job_failed_on_default_network_) + return; + + // No brokenness to report if the main job fails. + if (main_job_net_error_ != OK) + return; + DCHECK(alternative_service_info_.protocol() != kProtoUnknown); - DCHECK_NE(OK, alternative_job_net_error_); - int error_to_report = alternative_job_net_error_; - alternative_job_net_error_ = OK; - base::UmaHistogramSparse("Net.AlternateServiceFailed", -error_to_report); + if (alternative_job_failed_on_default_network_ && + alternative_job_net_error_ == OK) { + // Alternative job failed on the default network but succeeds on the + // non-default network, mark alternative service broken until the default + // network changes. + session_->http_server_properties() + ->MarkAlternativeServiceBrokenUntilDefaultNetworkChanges( + alternative_service_info_.alternative_service()); + // Reset error status for Jobs after reporting brokenness. + ResetErrorStatusForJobs(); + return; + } + + // Report brokenness if alternative job failed. + base::UmaHistogramSparse("Net.AlternateServiceFailed", + -alternative_job_net_error_); - if (error_to_report == ERR_NETWORK_CHANGED || - error_to_report == ERR_INTERNET_DISCONNECTED) { + if (alternative_job_net_error_ == ERR_NETWORK_CHANGED || + alternative_job_net_error_ == ERR_INTERNET_DISCONNECTED) { // No need to mark alternative service as broken. + // Reset error status for Jobs. + ResetErrorStatusForJobs(); return; } @@ -1006,9 +1042,17 @@ void HttpStreamFactory::JobController::ReportBrokenAlternativeService() { BROKEN_ALTERNATE_PROTOCOL_LOCATION_HTTP_STREAM_FACTORY_JOB_ALT); session_->http_server_properties()->MarkAlternativeServiceBroken( alternative_service_info_.alternative_service()); + // Reset error status for Jobs after reporting brokenness. + ResetErrorStatusForJobs(); } void HttpStreamFactory::JobController::MaybeNotifyFactoryOfCompletion() { + if (!main_job_ && !alternative_job_) { + // Both jobs are gone, report brokenness if apply. Error status for Jobs + // will be reset after reporting to avoid redundant reporting. + MaybeReportBrokenAlternativeService(); + } + if (!request_ && !main_job_ && !alternative_job_) { DCHECK(!bound_job_); factory_->OnJobControllerComplete(this); @@ -1306,6 +1350,7 @@ int HttpStreamFactory::JobController::ReconsiderProxyAfterError(Job* job, bound_job_ = nullptr; alternative_job_.reset(); main_job_.reset(); + ResetErrorStatusForJobs(); // Also resets states that related to the old main job. In particular, // cancels |resume_main_job_callback_| so there won't be any delayed // ResumeMainJob() left in the task queue. diff --git a/chromium/net/http/http_stream_factory_job_controller.h b/chromium/net/http/http_stream_factory_job_controller.h index e43c00ff2a0..6c4c2b0acac 100644 --- a/chromium/net/http/http_stream_factory_job_controller.h +++ b/chromium/net/http/http_stream_factory_job_controller.h @@ -111,6 +111,9 @@ class HttpStreamFactory::JobController int status, const SSLConfig& used_ssl_config) override; + // Invoked when |job| fails on the default network. + void OnFailedOnDefaultNetwork(Job* job) override; + // Invoked when |job| has a certificate error for the Request. void OnCertificateError(Job* job, int status, @@ -244,9 +247,14 @@ class HttpStreamFactory::JobController // net error of the failed alternative proxy job. void OnAlternativeProxyJobFailed(int net_error); - // Called to report to http_server_properties to mark alternative service - // broken. - void ReportBrokenAlternativeService(); + // Called when all Jobs complete. Reports alternative service brokenness to + // HttpServerProperties if apply and resets net errors afterwards: + // - report broken if the main job has no error and the alternative job has an + // error; + // - report broken until default network change if the main job has no error, + // the alternative job has no error, but the alternative job failed on the + // default network. + void MaybeReportBrokenAlternativeService(); void MaybeNotifyFactoryOfCompletion(); @@ -262,6 +270,11 @@ class HttpStreamFactory::JobController // Resumes the main job immediately. void ResumeMainJob(); + // Reset error status to default value for Jobs: + // - reset |main_job_net_error_| and |alternative_job_net_error_| to OK; + // - reset |alternative_job_failed_on_default_network_| to false. + void ResetErrorStatusForJobs(); + AlternativeServiceInfo GetAlternativeServiceInfoFor( const HttpRequestInfo& request_info, HttpStreamRequest::Delegate* delegate, @@ -344,8 +357,13 @@ class HttpStreamFactory::JobController // (or by |main_job_| if |is_preconnect_|.) AlternativeServiceInfo alternative_service_info_; - // Net error code of the failed alternative job. Set to OK by default. + // Error status used for alternative service brokenness reporting. + // Net error code of the main job. Set to OK by default. + int main_job_net_error_; + // Net error code of the alternative job. Set to OK by default. int alternative_job_net_error_; + // Set to true if the alternative job failed on the default network. + bool alternative_job_failed_on_default_network_; // True if a Job has ever been bound to the |request_|. bool job_bound_; diff --git a/chromium/net/http/http_stream_factory_job_controller_unittest.cc b/chromium/net/http/http_stream_factory_job_controller_unittest.cc index b2d4fa5a5d7..35a402f1cd0 100644 --- a/chromium/net/http/http_stream_factory_job_controller_unittest.cc +++ b/chromium/net/http/http_stream_factory_job_controller_unittest.cc @@ -165,6 +165,11 @@ class HttpStreamFactoryJobPeer { std::unique_ptr<HttpStream> http_stream) { job->stream_ = std::move(http_stream); } + + static void SetQuicConnectionFailedOnDefaultNetwork( + HttpStreamFactory::Job* job) { + job->quic_request_.OnConnectionFailedOnDefaultNetwork(); + } }; class JobControllerPeer { @@ -187,6 +192,13 @@ class JobControllerPeer { return job_controller->GetAlternativeServiceInfoFor(request_info, delegate, stream_type); } + + static void SetAltJobFailedOnDefaultNetwork( + HttpStreamFactory::JobController* job_controller) { + DCHECK(job_controller->alternative_job() != nullptr); + HttpStreamFactoryJobPeer::SetQuicConnectionFailedOnDefaultNetwork( + job_controller->alternative_job_.get()); + } }; class HttpStreamFactoryJobControllerTest @@ -226,13 +238,10 @@ class HttpStreamFactoryJobControllerTest void Initialize(const HttpRequestInfo& request_info) { ASSERT_FALSE(test_proxy_delegate_); - auto test_proxy_delegate = std::make_unique<TestProxyDelegate>(); - test_proxy_delegate_ = test_proxy_delegate.get(); - - test_proxy_delegate->set_alternative_proxy_server( + test_proxy_delegate_ = std::make_unique<TestProxyDelegate>(); + test_proxy_delegate_->set_alternative_proxy_server( ProxyServer::FromPacString("QUIC myproxy.org:443")); - EXPECT_TRUE(test_proxy_delegate->alternative_proxy_server().is_quic()); - session_deps_.proxy_delegate = std::move(test_proxy_delegate); + EXPECT_TRUE(test_proxy_delegate_->alternative_proxy_server().is_quic()); if (quic_data_) quic_data_->AddSocketDataToFactory(session_deps_.socket_factory.get()); @@ -246,6 +255,10 @@ class HttpStreamFactoryJobControllerTest session_deps_.proxy_resolution_service = std::move(proxy_resolution_service); } + + session_deps_.proxy_resolution_service->SetProxyDelegate( + test_proxy_delegate_.get()); + session_deps_.net_log = net_log_.bound().net_log(); HttpNetworkSession::Params params = SpdySessionDependencies::CreateSessionParams(&session_deps_); @@ -268,7 +281,7 @@ class HttpStreamFactoryJobControllerTest } TestProxyDelegate* test_proxy_delegate() const { - return test_proxy_delegate_; + return test_proxy_delegate_.get(); } ~HttpStreamFactoryJobControllerTest() override { @@ -307,6 +320,21 @@ class HttpStreamFactoryJobControllerTest alternative_service_info_vector[0].alternative_service())); } + void TestAltJobSucceedsAfterMainJobFailed( + bool alt_job_retried_on_non_default_network); + void TestMainJobSucceedsAfterAltJobFailed( + bool alt_job_retried_on_non_default_network); + void TestAltJobSucceedsAfterMainJobSucceeded( + bool alt_job_retried_on_non_default_network); + void TestOnStreamFailedForBothJobs( + bool alt_job_retried_on_non_default_network); + void TestAltJobFailsAfterMainJobSucceeded( + bool alt_job_retried_on_non_default_network); + void TestMainJobSucceedsAfterAltJobSucceeded( + bool alt_job_retried_on_non_default_network); + void TestMainJobFailsAfterAltJobSucceeded( + bool alt_job_retried_on_non_default_network); + TestJobFactory job_factory_; MockHttpStreamRequestDelegate request_delegate_; SpdySessionDependencies session_deps_{ProxyResolutionService::CreateDirect()}; @@ -335,8 +363,7 @@ class HttpStreamFactoryJobControllerTest bool enable_alternative_services_ = true; private: - // Not owned by |this|. - TestProxyDelegate* test_proxy_delegate_ = nullptr; + std::unique_ptr<TestProxyDelegate> test_proxy_delegate_; bool create_job_controller_ = true; DISALLOW_COPY_AND_ASSIGN(HttpStreamFactoryJobControllerTest); @@ -442,9 +469,7 @@ class JobControllerReconsiderProxyAfterErrorTest public ::testing::WithParamInterface<::testing::tuple<bool, int>> { public: void Initialize( - std::unique_ptr<ProxyResolutionService> proxy_resolution_service, - std::unique_ptr<ProxyDelegate> proxy_delegate) { - session_deps_.proxy_delegate = std::move(proxy_delegate); + std::unique_ptr<ProxyResolutionService> proxy_resolution_service) { session_deps_.proxy_resolution_service = std::move(proxy_resolution_service); session_ = std::make_unique<HttpNetworkSession>( @@ -551,8 +576,8 @@ TEST_P(JobControllerReconsiderProxyAfterErrorTest, ReconsiderProxyAfterError) { request_info.method = "GET"; request_info.url = GURL("http://www.example.com"); - Initialize(std::move(proxy_resolution_service), - std::move(test_proxy_delegate)); + proxy_resolution_service->SetProxyDelegate(test_proxy_delegate.get()); + Initialize(std::move(proxy_resolution_service)); EXPECT_EQ(set_alternative_proxy_server, test_proxy_delegate_raw->alternative_proxy_server().is_quic()); @@ -614,8 +639,7 @@ TEST_F(JobControllerReconsiderProxyAfterErrorTest, ReconsiderErrMsgTooBig) { request_info.method = "GET"; request_info.url = GURL("http://www.example.com"); - Initialize(std::move(proxy_resolution_service), - std::make_unique<TestProxyDelegate>()); + Initialize(std::move(proxy_resolution_service)); ProxyInfo used_proxy_info; EXPECT_CALL(request_delegate_, OnStreamReadyImpl(_, _, _)) @@ -662,8 +686,7 @@ TEST_F(JobControllerReconsiderProxyAfterErrorTest, request_info.method = "GET"; request_info.url = GURL("http://www.example.com"); - Initialize(std::move(proxy_resolution_service), - std::make_unique<TestProxyDelegate>()); + Initialize(std::move(proxy_resolution_service)); ProxyInfo used_proxy_info; EXPECT_CALL(request_delegate_, OnStreamFailed(ERR_MSG_TOO_BIG, _, _)) @@ -698,8 +721,8 @@ TEST_F(JobControllerReconsiderProxyAfterErrorTest, test_proxy_delegate->set_alternative_proxy_server( ProxyServer::FromPacString("QUIC myproxy.org:443")); - Initialize(std::move(proxy_resolution_service), - std::move(test_proxy_delegate)); + proxy_resolution_service->SetProxyDelegate(test_proxy_delegate.get()); + Initialize(std::move(proxy_resolution_service)); // Enable delayed TCP and set time delay for waiting job. QuicStreamFactory* quic_stream_factory = session_->quic_stream_factory(); @@ -858,7 +881,8 @@ TEST_F(HttpStreamFactoryJobControllerTest, EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); } -TEST_F(HttpStreamFactoryJobControllerTest, OnStreamFailedForBothJobs) { +void HttpStreamFactoryJobControllerTest::TestOnStreamFailedForBothJobs( + bool alt_job_retried_on_non_default_network) { quic_data_ = std::make_unique<MockQuicData>(); quic_data_->AddConnect(ASYNC, ERR_FAILED); tcp_data_ = std::make_unique<SequencedSocketData>(); @@ -879,6 +903,12 @@ TEST_F(HttpStreamFactoryJobControllerTest, OnStreamFailedForBothJobs) { EXPECT_TRUE(job_controller_->main_job()); EXPECT_TRUE(job_controller_->alternative_job()); + if (alt_job_retried_on_non_default_network) { + // Set the alt job as if it failed on the default network and is retired on + // the alternate network. + JobControllerPeer::SetAltJobFailedOnDefaultNetwork(job_controller_); + } + // The failure of second Job should be reported to Request as there's no more // pending Job to serve the Request. EXPECT_CALL(request_delegate_, OnStreamFailed(_, _, _)).Times(1); @@ -888,7 +918,22 @@ TEST_F(HttpStreamFactoryJobControllerTest, OnStreamFailedForBothJobs) { EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); } -TEST_F(HttpStreamFactoryJobControllerTest, AltJobFailsAfterMainJobSucceeds) { +// This test verifies that the alternative service is not marked broken if both +// jobs fail, and the alternative job is not retried on the alternate network. +TEST_F(HttpStreamFactoryJobControllerTest, + OnStreamFailedForBothJobsWithoutQuicRetry) { + TestOnStreamFailedForBothJobs(false); +} + +// This test verifies that the alternative service is not marked broken if both +// jobs fail, and the alternative job is retried on the alternate network. +TEST_F(HttpStreamFactoryJobControllerTest, + OnStreamFailedForBothJobsWithQuicRetriedOnAlternateNetwork) { + TestOnStreamFailedForBothJobs(true); +} + +void HttpStreamFactoryJobControllerTest::TestAltJobFailsAfterMainJobSucceeded( + bool alt_job_retried_on_non_default_network) { quic_data_ = std::make_unique<MockQuicData>(); quic_data_->AddRead(ASYNC, ERR_FAILED); crypto_client_stream_factory_.set_handshake_mode( @@ -914,6 +959,12 @@ TEST_F(HttpStreamFactoryJobControllerTest, AltJobFailsAfterMainJobSucceeds) { EXPECT_TRUE(job_controller_->main_job()); EXPECT_TRUE(job_controller_->alternative_job()); + if (alt_job_retried_on_non_default_network) { + // Set the alt job as if it failed on the default network and is retired on + // the alternate network. + JobControllerPeer::SetAltJobFailedOnDefaultNetwork(job_controller_); + } + // Main job succeeds, starts serving Request and it should report status // to Request. The alternative job will mark the main job complete and gets // orphaned. @@ -924,10 +975,30 @@ TEST_F(HttpStreamFactoryJobControllerTest, AltJobFailsAfterMainJobSucceeds) { base::RunLoop().RunUntilIdle(); - VerifyBrokenAlternateProtocolMapping(request_info, true); // Reset the request as it's been successfully served. request_.reset(); + VerifyBrokenAlternateProtocolMapping(request_info, true); EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); + + // Verify the brokenness is not cleared when the default network changes. + session_->http_server_properties()->OnDefaultNetworkChanged(); + VerifyBrokenAlternateProtocolMapping(request_info, true); +} + +// This test verifies that the alternatvie service is marked broken when the +// alternative job fails on default after the main job succeeded. The +// brokenness should not be cleared when the default network changes. +TEST_F(HttpStreamFactoryJobControllerTest, + AltJobFailsOnDefaultNetworkAfterMainJobSucceeded) { + TestAltJobFailsAfterMainJobSucceeded(false); +} + +// This test verifies that the alternatvie service is marked broken when the +// alternative job fails on both networks after the main job succeeded. The +// brokenness should not be cleared when the default network changes. +TEST_F(HttpStreamFactoryJobControllerTest, + AltJobFailsOnBothNetworksAfterMainJobSucceeded) { + TestAltJobFailsAfterMainJobSucceeded(true); } // Tests that when alt job succeeds, main job is destroyed. @@ -1111,7 +1182,8 @@ TEST_F(HttpStreamFactoryJobControllerTest, EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); } -TEST_F(HttpStreamFactoryJobControllerTest, AltJobSucceedsAfterMainJobFailed) { +void HttpStreamFactoryJobControllerTest::TestAltJobSucceedsAfterMainJobFailed( + bool alt_job_retried_on_non_default_network) { quic_data_ = std::make_unique<MockQuicData>(); quic_data_->AddRead(SYNCHRONOUS, ERR_IO_PENDING); // Use cold start and complete alt job manually. @@ -1142,6 +1214,11 @@ TEST_F(HttpStreamFactoryJobControllerTest, AltJobSucceedsAfterMainJobFailed) { EXPECT_TRUE(job_controller_->alternative_job()); base::RunLoop().RunUntilIdle(); + if (alt_job_retried_on_non_default_network) { + // Set the alt job as if it failed on the default network and is retired on + // the alternate network. + JobControllerPeer::SetAltJobFailedOnDefaultNetwork(job_controller_); + } // Make |alternative_job| succeed. auto http_stream = std::make_unique<HttpBasicStream>( @@ -1158,7 +1235,244 @@ TEST_F(HttpStreamFactoryJobControllerTest, AltJobSucceedsAfterMainJobFailed) { EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); } -TEST_F(HttpStreamFactoryJobControllerTest, MainJobSucceedsAfterAltJobFailed) { +// This test verifies that the alternative service is not mark broken if the +// alternative job succeeds on the default network after the main job failed. +TEST_F(HttpStreamFactoryJobControllerTest, + AltJobSucceedsOnDefaultNetworkAfterMainJobFailed) { + TestAltJobSucceedsAfterMainJobFailed(false); +} + +// This test verifies that the alternative service is not mark broken if the +// alternative job succeeds on the alternate network after the main job failed. +TEST_F(HttpStreamFactoryJobControllerTest, + AltJobSucceedsOnAlternateNetwrokAfterMainJobFailed) { + TestAltJobSucceedsAfterMainJobFailed(true); +} + +void HttpStreamFactoryJobControllerTest:: + TestAltJobSucceedsAfterMainJobSucceeded( + bool alt_job_retried_on_non_default_network) { + quic_data_ = std::make_unique<MockQuicData>(); + quic_data_->AddRead(SYNCHRONOUS, ERR_IO_PENDING); + // Use cold start and complete alt job manually. + crypto_client_stream_factory_.set_handshake_mode( + MockCryptoClientStream::COLD_START); + + tcp_data_ = std::make_unique<SequencedSocketData>(); + tcp_data_->set_connect_data(MockConnect(SYNCHRONOUS, OK)); + SSLSocketDataProvider ssl_data(ASYNC, OK); + session_deps_.socket_factory->AddSSLSocketDataProvider(&ssl_data); + + HttpRequestInfo request_info; + request_info.method = "GET"; + request_info.url = GURL("https://www.google.com"); + + Initialize(request_info); + + url::SchemeHostPort server(request_info.url); + AlternativeService alternative_service(kProtoQUIC, server.host(), 443); + SetAlternativeService(request_info, alternative_service); + + // |main_job| fails but should not report status to Request. + EXPECT_CALL(request_delegate_, OnStreamFailed(_, _, _)).Times(0); + + request_ = + job_controller_->Start(&request_delegate_, nullptr, net_log_.bound(), + HttpStreamRequest::HTTP_STREAM, DEFAULT_PRIORITY); + EXPECT_TRUE(job_controller_->main_job()); + EXPECT_TRUE(job_controller_->alternative_job()); + + // Run the message loop to make |main_job| succeed and status will be + // reported to Request. + EXPECT_CALL(request_delegate_, OnStreamReadyImpl(_, _, _)); + base::RunLoop().RunUntilIdle(); + VerifyBrokenAlternateProtocolMapping(request_info, false); + + if (alt_job_retried_on_non_default_network) { + // Set the alt job as if it failed on the default network and is retired on + // the alternate network. + JobControllerPeer::SetAltJobFailedOnDefaultNetwork(job_controller_); + } + + // Make |alternative_job| succeed. + auto http_stream = std::make_unique<HttpBasicStream>( + std::make_unique<ClientSocketHandle>(), false, false); + + HttpStreamFactoryJobPeer::SetStream(job_factory_.alternative_job(), + std::move(http_stream)); + job_controller_->OnStreamReady(job_factory_.alternative_job(), SSLConfig()); + + request_.reset(); + // If alt job was retried on the alternate network, the alternative service + // should be marked broken until the default network changes. + VerifyBrokenAlternateProtocolMapping(request_info, + alt_job_retried_on_non_default_network); + EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); + if (alt_job_retried_on_non_default_network) { + // Verify the brokenness is cleared when the default network changes. + session_->http_server_properties()->OnDefaultNetworkChanged(); + VerifyBrokenAlternateProtocolMapping(request_info, false); + } +} + +// This test verifies that the alternative service is not marked broken if the +// alternative job succeeds on the default network after the main job succeeded. +TEST_F(HttpStreamFactoryJobControllerTest, + AltJobSucceedsOnDefaultNetworkAfterMainJobSucceeded) { + TestAltJobSucceedsAfterMainJobSucceeded(false); +} + +// This test verifies that the alternative service is marked broken until the +// default network changes if the alternative job succeeds on the non-default +// network, which failed on the default network previously, after the main job +// succeeded. The brokenness should be cleared when the default network +// changes. +TEST_F(HttpStreamFactoryJobControllerTest, + AltJobSucceedsOnAlternateNetworkAfterMainJobSucceeded) { + TestAltJobSucceedsAfterMainJobSucceeded(true); +} + +void HttpStreamFactoryJobControllerTest:: + TestMainJobSucceedsAfterAltJobSucceeded( + bool alt_job_retried_on_non_default_network) { + quic_data_ = std::make_unique<MockQuicData>(); + quic_data_->AddRead(SYNCHRONOUS, ERR_IO_PENDING); + // Use cold start and complete alt job manually. + crypto_client_stream_factory_.set_handshake_mode( + MockCryptoClientStream::COLD_START); + + tcp_data_ = std::make_unique<SequencedSocketData>(); + tcp_data_->set_connect_data(MockConnect(SYNCHRONOUS, OK)); + SSLSocketDataProvider ssl_data(ASYNC, OK); + session_deps_.socket_factory->AddSSLSocketDataProvider(&ssl_data); + + HttpRequestInfo request_info; + request_info.method = "GET"; + request_info.url = GURL("https://www.google.com"); + + Initialize(request_info); + + url::SchemeHostPort server(request_info.url); + AlternativeService alternative_service(kProtoQUIC, server.host(), 443); + SetAlternativeService(request_info, alternative_service); + + request_ = + job_controller_->Start(&request_delegate_, nullptr, net_log_.bound(), + HttpStreamRequest::HTTP_STREAM, DEFAULT_PRIORITY); + EXPECT_TRUE(job_controller_->main_job()); + EXPECT_TRUE(job_controller_->alternative_job()); + + if (alt_job_retried_on_non_default_network) { + // Set the alt job as if it failed on the default network and is retired on + // the alternate network. + JobControllerPeer::SetAltJobFailedOnDefaultNetwork(job_controller_); + } + // Make |alternative_job| succeed. + auto http_stream = std::make_unique<HttpBasicStream>( + std::make_unique<ClientSocketHandle>(), false, false); + EXPECT_CALL(request_delegate_, OnStreamReadyImpl(_, _, http_stream.get())); + + HttpStreamFactoryJobPeer::SetStream(job_factory_.alternative_job(), + std::move(http_stream)); + job_controller_->OnStreamReady(job_factory_.alternative_job(), SSLConfig()); + + // Run message loop to make the main job succeed. + base::RunLoop().RunUntilIdle(); + // If alt job was retried on the alternate network, the alternative service + // should be marked broken until the default network changes. + VerifyBrokenAlternateProtocolMapping(request_info, + alt_job_retried_on_non_default_network); + request_.reset(); + EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); + if (alt_job_retried_on_non_default_network) { + // Verify the brokenness is cleared when the default network changes. + session_->http_server_properties()->OnDefaultNetworkChanged(); + VerifyBrokenAlternateProtocolMapping(request_info, false); + } +} + +// This test verifies that the alternative service is not marked broken if the +// main job succeeds after the alternative job succeeded on the default network. +TEST_F(HttpStreamFactoryJobControllerTest, + MainJobSucceedsAfterAltJobSucceededOnDefaultNetwork) { + TestMainJobSucceedsAfterAltJobSucceeded(false); +} + +// This test verifies that the alternative service is marked broken until the +// default network changes if the main job succeeds after the alternative job +// succeeded on the non-default network, i.e., failed on the default network +// previously. The brokenness should be cleared when the default network +// changes. +TEST_F(HttpStreamFactoryJobControllerTest, + MainJobSucceedsAfterAltJobSucceededOnAlternateNetwork) { + TestAltJobSucceedsAfterMainJobSucceeded(true); +} + +void HttpStreamFactoryJobControllerTest::TestMainJobFailsAfterAltJobSucceeded( + bool alt_job_retried_on_non_default_network) { + quic_data_ = std::make_unique<MockQuicData>(); + quic_data_->AddRead(SYNCHRONOUS, ERR_IO_PENDING); + // Use cold start and complete alt job manually. + crypto_client_stream_factory_.set_handshake_mode( + MockCryptoClientStream::COLD_START); + + tcp_data_ = std::make_unique<SequencedSocketData>(); + tcp_data_->set_connect_data(MockConnect(ASYNC, ERR_FAILED)); + + HttpRequestInfo request_info; + request_info.method = "GET"; + request_info.url = GURL("https://www.google.com"); + + Initialize(request_info); + + url::SchemeHostPort server(request_info.url); + AlternativeService alternative_service(kProtoQUIC, server.host(), 443); + SetAlternativeService(request_info, alternative_service); + + request_ = + job_controller_->Start(&request_delegate_, nullptr, net_log_.bound(), + HttpStreamRequest::HTTP_STREAM, DEFAULT_PRIORITY); + EXPECT_TRUE(job_controller_->main_job()); + EXPECT_TRUE(job_controller_->alternative_job()); + + if (alt_job_retried_on_non_default_network) { + // Set the alt job as if it failed on the default network and is retired on + // the alternate network. + JobControllerPeer::SetAltJobFailedOnDefaultNetwork(job_controller_); + } + // Make |alternative_job| succeed. + auto http_stream = std::make_unique<HttpBasicStream>( + std::make_unique<ClientSocketHandle>(), false, false); + EXPECT_CALL(request_delegate_, OnStreamReadyImpl(_, _, http_stream.get())); + + HttpStreamFactoryJobPeer::SetStream(job_factory_.alternative_job(), + std::move(http_stream)); + job_controller_->OnStreamReady(job_factory_.alternative_job(), SSLConfig()); + + // Run message loop to make the main job fail. + base::RunLoop().RunUntilIdle(); + VerifyBrokenAlternateProtocolMapping(request_info, false); + request_.reset(); + EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); +} + +// This test verifies that the alternative service is not marked broken if the +// main job fails after the alternative job succeeded on the default network. +TEST_F(HttpStreamFactoryJobControllerTest, + MainJobFailsAfterAltJobSucceededOnDefaultNetwork) { + TestMainJobFailsAfterAltJobSucceeded(false); +} + +// This test verifies that the alternative service is not marked broken if the +// main job fails after the alternative job succeeded on the non-default +// network, i.e., failed on the default network previously. +TEST_F(HttpStreamFactoryJobControllerTest, + MainJobFailsAfterAltJobSucceededOnAlternateNetwork) { + TestMainJobFailsAfterAltJobSucceeded(true); +} + +void HttpStreamFactoryJobControllerTest::TestMainJobSucceedsAfterAltJobFailed( + bool alt_job_retried_on_non_default_network) { quic_data_ = std::make_unique<MockQuicData>(); quic_data_->AddConnect(SYNCHRONOUS, ERR_FAILED); @@ -1189,14 +1503,38 @@ TEST_F(HttpStreamFactoryJobControllerTest, MainJobSucceedsAfterAltJobFailed) { // |main_job| succeeds and should report status to Request. EXPECT_CALL(request_delegate_, OnStreamReadyImpl(_, _, _)); + if (alt_job_retried_on_non_default_network) { + // Set the alt job as if it failed on the default network and is retired on + // the alternate network. + JobControllerPeer::SetAltJobFailedOnDefaultNetwork(job_controller_); + } + base::RunLoop().RunUntilIdle(); + request_.reset(); // Verify that the alternate protocol is marked as broken. VerifyBrokenAlternateProtocolMapping(request_info, true); histogram_tester.ExpectUniqueSample("Net.AlternateServiceFailed", -ERR_FAILED, 1); - request_.reset(); EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); + // Verify the brokenness is not cleared when the default network changes. + session_->http_server_properties()->OnDefaultNetworkChanged(); + VerifyBrokenAlternateProtocolMapping(request_info, true); +} + +// This test verifies that the alternative service will be marked broken when +// the alternative job fails on the default network and main job succeeds later. +TEST_F(HttpStreamFactoryJobControllerTest, + MainJobSucceedsAfterAltJobFailedOnDefaultNetwork) { + TestMainJobSucceedsAfterAltJobFailed(false); +} + +// This test verifies that the alternative service will be marked broken when +// the alternative job fails on both default and alternate networks and main job +// succeeds later. +TEST_F(HttpStreamFactoryJobControllerTest, + MainJobSucceedsAfterAltJobFailedOnBothNetworks) { + TestMainJobSucceedsAfterAltJobFailed(true); } // Verifies that if the alternative job fails due to a connection change event, @@ -1232,12 +1570,12 @@ TEST_F(HttpStreamFactoryJobControllerTest, // |main_job| succeeds and should report status to Request. EXPECT_CALL(request_delegate_, OnStreamReadyImpl(_, _, _)); base::RunLoop().RunUntilIdle(); + request_.reset(); // Verify that the alternate protocol is not marked as broken. VerifyBrokenAlternateProtocolMapping(request_info, false); histogram_tester.ExpectUniqueSample("Net.AlternateServiceFailed", -ERR_NETWORK_CHANGED, 1); - request_.reset(); EXPECT_TRUE(HttpStreamFactoryPeer::IsJobControllerDeleted(factory_)); } diff --git a/chromium/net/http/http_stream_factory_unittest.cc b/chromium/net/http/http_stream_factory_unittest.cc index 3a5a61e2132..548997b0125 100644 --- a/chromium/net/http/http_stream_factory_unittest.cc +++ b/chromium/net/http/http_stream_factory_unittest.cc @@ -146,12 +146,6 @@ class MockWebSocketHandshakeStream : public WebSocketHandshakeStreamBase { void GetSSLInfo(SSLInfo* ssl_info) override {} void GetSSLCertRequestInfo(SSLCertRequestInfo* cert_request_info) override {} bool GetRemoteEndpoint(IPEndPoint* endpoint) override { return false; } - Error GetTokenBindingSignature(crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out) override { - ADD_FAILURE(); - return ERR_NOT_IMPLEMENTED; - } void Drain(HttpNetworkSession* session) override {} void PopulateNetErrorDetails(NetErrorDetails* details) override { return; } void SetPriority(RequestPriority priority) override {} @@ -701,7 +695,7 @@ TEST_F(HttpStreamFactoryTest, JobNotifiesProxy) { const ProxyRetryInfoMap& retry_info = session->proxy_resolution_service()->proxy_retry_info(); EXPECT_EQ(1u, retry_info.size()); - ProxyRetryInfoMap::const_iterator iter = retry_info.find("bad:99"); + auto iter = retry_info.find("bad:99"); EXPECT_TRUE(iter != retry_info.end()); } @@ -846,7 +840,7 @@ TEST_F(HttpStreamFactoryTest, QuicProxyMarkedAsBad) { EXPECT_EQ(1u, retry_info.size()) << quic_proxy_test_mock_errors[i]; EXPECT_TRUE(waiter.used_proxy_info().is_direct()); - ProxyRetryInfoMap::const_iterator iter = retry_info.find("quic://bad:99"); + auto iter = retry_info.find("quic://bad:99"); EXPECT_TRUE(iter != retry_info.end()) << quic_proxy_test_mock_errors[i]; } } @@ -945,7 +939,8 @@ void SetupForQuicAlternativeProxyTest( test_proxy_delegate->set_alternative_proxy_server( ProxyServer::FromPacString("QUIC badproxy:99")); } - session_context->proxy_delegate = test_proxy_delegate; + + proxy_resolution_service->SetProxyDelegate(test_proxy_delegate); } } // namespace diff --git a/chromium/net/http/http_stream_parser.cc b/chromium/net/http/http_stream_parser.cc index ce23e57e573..ec6f480edec 100644 --- a/chromium/net/http/http_stream_parser.cc +++ b/chromium/net/http/http_stream_parser.cc @@ -25,7 +25,6 @@ #include "net/log/net_log_event_type.h" #include "net/socket/client_socket_handle.h" #include "net/socket/ssl_client_socket.h" -#include "net/ssl/token_binding.h" #include "url/url_canon.h" namespace net { @@ -1138,16 +1137,6 @@ void HttpStreamParser::GetSSLCertRequestInfo( } } -Error HttpStreamParser::GetTokenBindingSignature(crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out) { - if (!request_->url.SchemeIsCryptographic() || !connection_->socket()) { - NOTREACHED(); - return ERR_FAILED; - } - return connection_->socket()->GetTokenBindingSignature(key, tb_type, out); -} - int HttpStreamParser::EncodeChunk(const base::StringPiece& payload, char* output, size_t output_size) { diff --git a/chromium/net/http/http_stream_parser.h b/chromium/net/http/http_stream_parser.h index 603db77a335..a70c2541013 100644 --- a/chromium/net/http/http_stream_parser.h +++ b/chromium/net/http/http_stream_parser.h @@ -21,7 +21,6 @@ #include "net/base/net_errors.h" #include "net/base/net_export.h" #include "net/log/net_log_with_source.h" -#include "net/ssl/token_binding.h" #include "net/traffic_annotation/network_traffic_annotation.h" namespace net { @@ -104,10 +103,6 @@ class NET_EXPORT_PRIVATE HttpStreamParser { void GetSSLCertRequestInfo(SSLCertRequestInfo* cert_request_info); - Error GetTokenBindingSignature(crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out); - // Encodes the given |payload| in the chunked format to |output|. // Returns the number of bytes written to |output|. |output_size| should // be large enough to store the encoded chunk, which is payload.size() + diff --git a/chromium/net/http/http_util.cc b/chromium/net/http/http_util.cc index e26c7d78b7d..d8cf8e51389 100644 --- a/chromium/net/http/http_util.cc +++ b/chromium/net/http/http_util.cc @@ -65,10 +65,13 @@ void HttpUtil::ParseContentType(const std::string& content_type_str, std::string charset_value; bool type_has_charset = false; + bool type_has_boundary = false; // Iterate over parameters. Can't split the string around semicolons - // preemptively because quoted strings may include semicolons. Matches logic - // in https://mimesniff.spec.whatwg.org/. + // preemptively because quoted strings may include semicolons. Mostly matches + // logic in https://mimesniff.spec.whatwg.org/. Main differences: Does not + // validate characters are HTTP token code points / HTTP quoted-string token + // code points, and ignores spaces after "=" in parameters. std::string::size_type offset = content_type_str.find_first_of(';', type_end); while (offset < content_type_str.size()) { DCHECK_EQ(';', content_type_str[offset]); @@ -107,9 +110,10 @@ void HttpUtil::ParseContentType(const std::string& content_type_str, offset = content_type_str.find_first_not_of(HTTP_LWS, offset); std::string param_value; - if (offset == std::string::npos) { - // Nothing to do here - an unquoted string of only whitespace is - // considered to have an empty value. + if (offset == std::string::npos || content_type_str[offset] == ';') { + // Nothing to do here - an unquoted string of only whitespace should be + // skipped. + continue; } else if (content_type_str[offset] != '"') { // If the first character is not a quotation mark, copy data directly. std::string::size_type value_start = offset; @@ -148,26 +152,24 @@ void HttpUtil::ParseContentType(const std::string& content_type_str, ++offset; } + param_value = TrimLWS(param_value).as_string(); + offset = content_type_str.find_first_of(';', offset); } - // 0-length parameter values are not considered valid. - if (!param_value.size()) - continue; - - // TODO(mmenke): Take first, rather than last, value in the case of - // duplicates. // TODO(mmenke): Check that name has only valid characters. - if (base::LowerCaseEqualsASCII(param_name, "charset")) { - // Ignore the part after '('. This is not in the standard, but may - // occur in rare cases. - // TODO(bnc): Do not ignore the part after '('. - // See https://crbug.com/772343. - charset_value = param_value.substr(0, param_value.find("(")); + if (!type_has_charset && + base::LowerCaseEqualsASCII(param_name, "charset")) { type_has_charset = true; - } else if (base::LowerCaseEqualsASCII(param_name, "boundary")) { - if (boundary) - boundary->assign(std::move(param_value)); + charset_value = param_value; + continue; + } + + if (boundary && !type_has_boundary && + base::LowerCaseEqualsASCII(param_name, "boundary")) { + type_has_boundary = true; + boundary->assign(std::move(param_value)); + continue; } } diff --git a/chromium/net/http/http_util.h b/chromium/net/http/http_util.h index 428d90b0c3d..0bcb45fa90c 100644 --- a/chromium/net/http/http_util.h +++ b/chromium/net/http/http_util.h @@ -35,12 +35,22 @@ class NET_EXPORT HttpUtil { // is stripped (username, password, reference). static std::string SpecForRequest(const GURL& url); - // Parses the value of a Content-Type header. The resulting mime_type and - // charset values are normalized to lowercase. The mime_type and charset - // output values are only modified if the content_type_str contains a mime - // type and charset value, respectively. The boundary output value is - // optional and will be assigned the (unquoted) value of the boundary - // parameter, if any. + // Parses the value of a Content-Type header. |mime_type|, |charset|, and + // |had_charset| output parameters must be valid pointers. |boundary| may be + // nullptr. |*mime_type| and |*charset| should be empty and |*had_charset| + // false when called with the first Content-Type header value in a given + // header list. + // + // ParseContentType() supports parsing multiple Content-Type headers in the + // same header list. For this operation, subsequent calls should pass in the + // same |mime_type|, |charset|, and |had_charset| arguments without clearing + // them. + // + // The resulting mime_type and charset values are normalized to lowercase. + // The mime_type and charset output values are only modified if the + // content_type_str contains a mime type and charset value, respectively. If + // |boundary| is not null, then |*boundary| will be assigned the (unquoted) + // value of the boundary parameter, if any. static void ParseContentType(const std::string& content_type_str, std::string* mime_type, std::string* charset, diff --git a/chromium/net/http/http_util_unittest.cc b/chromium/net/http/http_util_unittest.cc index ec4e6d108d0..cce5d34b4be 100644 --- a/chromium/net/http/http_util_unittest.cc +++ b/chromium/net/http/http_util_unittest.cc @@ -771,6 +771,7 @@ TEST(HttpUtilTest, ParseContentType) { true, "" }, + { "text/html; boundary=\"WebKit-ada-df-dsf-adsfadsfs\"", "text/html", "", @@ -803,7 +804,7 @@ TEST(HttpUtilTest, ParseContentType) { "text/html", "", false, - "WebKit-ada-df-dsf-adsfadsfs " + "WebKit-ada-df-dsf-adsfadsfs" }, { "text/html; boundary=WebKit-ada-df-dsf-adsfadsfs", "text/html", @@ -835,15 +836,32 @@ TEST(HttpUtilTest, ParseContentType) { false, "" }, + // Empty quoted strings are allowed. { "text/html; charset=\"\"", "text/html", "", - false, + true, "" }, + + // Leading and trailing whitespace in quotes is trimmed. { "text/html; charset=\" \"", "text/html", - " ", + "", + true, + "" + }, + { "text/html; charset=\" foo \"", + "text/html", + "foo", + true, + "" + }, + + // With multiple values, should use the first one. + { "text/html; charset=foo; charset=utf-8", + "text/html", + "foo", true, "" }, @@ -853,12 +871,19 @@ TEST(HttpUtilTest, ParseContentType) { true, "" }, - { "text/html; charset=utf-8; charset=; charset;", + { "text/html; charset=utf-8; charset=; charset", "text/html", "utf-8", true, "" }, + { "text/html; boundary=foo; boundary=bar", + "text/html", + "", + false, + "foo" + }, + // Stray quotes ignored. { "text/html; \"; \"\"; charset=utf-8", "text/html", diff --git a/chromium/net/http/mock_http_cache.cc b/chromium/net/http/mock_http_cache.cc index b69b904543a..67040c39211 100644 --- a/chromium/net/http/mock_http_cache.cc +++ b/chromium/net/http/mock_http_cache.cc @@ -302,7 +302,7 @@ void MockDiskEntry::CancelSparseIO() { cancel_ = true; } -int MockDiskEntry::ReadyForSparseIO(CompletionOnceCallback callback) { +net::Error MockDiskEntry::ReadyForSparseIO(CompletionOnceCallback callback) { if (fail_sparse_requests_) return ERR_NOT_IMPLEMENTED; if (!cancel_) @@ -416,15 +416,15 @@ int32_t MockDiskCache::GetEntryCount() const { return static_cast<int32_t>(entries_.size()); } -int MockDiskCache::OpenEntry(const std::string& key, - net::RequestPriority request_priority, - disk_cache::Entry** entry, - CompletionOnceCallback callback) { +net::Error MockDiskCache::OpenEntry(const std::string& key, + net::RequestPriority request_priority, + disk_cache::Entry** entry, + CompletionOnceCallback callback) { DCHECK(!callback.is_null()); if (fail_requests_) return ERR_CACHE_OPEN_FAILURE; - EntryMap::iterator it = entries_.find(key); + auto it = entries_.find(key); if (it == entries_.end()) return ERR_CACHE_OPEN_FAILURE; @@ -449,15 +449,15 @@ int MockDiskCache::OpenEntry(const std::string& key, return ERR_IO_PENDING; } -int MockDiskCache::CreateEntry(const std::string& key, - net::RequestPriority request_priority, - disk_cache::Entry** entry, - CompletionOnceCallback callback) { +net::Error MockDiskCache::CreateEntry(const std::string& key, + net::RequestPriority request_priority, + disk_cache::Entry** entry, + CompletionOnceCallback callback) { DCHECK(!callback.is_null()); if (fail_requests_) return ERR_CACHE_CREATE_FAILURE; - EntryMap::iterator it = entries_.find(key); + auto it = entries_.find(key); if (it != entries_.end()) { if (!it->second->is_doomed()) { if (double_create_check_) @@ -500,11 +500,11 @@ int MockDiskCache::CreateEntry(const std::string& key, return ERR_IO_PENDING; } -int MockDiskCache::DoomEntry(const std::string& key, - net::RequestPriority request_priority, - CompletionOnceCallback callback) { +net::Error MockDiskCache::DoomEntry(const std::string& key, + net::RequestPriority request_priority, + CompletionOnceCallback callback) { DCHECK(!callback.is_null()); - EntryMap::iterator it = entries_.find(key); + auto it = entries_.find(key); if (it != entries_.end()) { it->second->Release(); entries_.erase(it); @@ -518,29 +518,30 @@ int MockDiskCache::DoomEntry(const std::string& key, return ERR_IO_PENDING; } -int MockDiskCache::DoomAllEntries(CompletionOnceCallback callback) { +net::Error MockDiskCache::DoomAllEntries(CompletionOnceCallback callback) { return ERR_NOT_IMPLEMENTED; } -int MockDiskCache::DoomEntriesBetween(const base::Time initial_time, - const base::Time end_time, - CompletionOnceCallback callback) { +net::Error MockDiskCache::DoomEntriesBetween(const base::Time initial_time, + const base::Time end_time, + CompletionOnceCallback callback) { return ERR_NOT_IMPLEMENTED; } -int MockDiskCache::DoomEntriesSince(const base::Time initial_time, - CompletionOnceCallback callback) { +net::Error MockDiskCache::DoomEntriesSince(const base::Time initial_time, + CompletionOnceCallback callback) { return ERR_NOT_IMPLEMENTED; } -int MockDiskCache::CalculateSizeOfAllEntries(CompletionOnceCallback callback) { +int64_t MockDiskCache::CalculateSizeOfAllEntries( + Int64CompletionOnceCallback callback) { return ERR_NOT_IMPLEMENTED; } class MockDiskCache::NotImplementedIterator : public Iterator { public: - int OpenNextEntry(disk_cache::Entry** next_entry, - CompletionOnceCallback callback) override { + net::Error OpenNextEntry(disk_cache::Entry** next_entry, + CompletionOnceCallback callback) override { return ERR_NOT_IMPLEMENTED; } }; @@ -565,14 +566,14 @@ uint8_t MockDiskCache::GetEntryInMemoryData(const std::string& key) { if (!support_in_memory_entry_data_) return 0; - EntryMap::iterator it = entries_.find(key); + auto it = entries_.find(key); if (it != entries_.end()) return it->second->in_memory_data(); return 0; } void MockDiskCache::SetEntryInMemoryData(const std::string& key, uint8_t data) { - EntryMap::iterator it = entries_.find(key); + auto it = entries_.find(key); if (it != entries_.end()) it->second->set_in_memory_data(data); } @@ -759,10 +760,10 @@ int MockHttpCache::GetCountWriterTransactions(const std::string& key) { //----------------------------------------------------------------------------- -int MockDiskCacheNoCB::CreateEntry(const std::string& key, - net::RequestPriority request_priority, - disk_cache::Entry** entry, - CompletionOnceCallback callback) { +net::Error MockDiskCacheNoCB::CreateEntry(const std::string& key, + net::RequestPriority request_priority, + disk_cache::Entry** entry, + CompletionOnceCallback callback) { return ERR_IO_PENDING; } diff --git a/chromium/net/http/mock_http_cache.h b/chromium/net/http/mock_http_cache.h index 4502890a112..3e4fd3d69b4 100644 --- a/chromium/net/http/mock_http_cache.h +++ b/chromium/net/http/mock_http_cache.h @@ -75,7 +75,8 @@ class MockDiskEntry : public disk_cache::Entry, CompletionOnceCallback callback) override; bool CouldBeSparse() const override; void CancelSparseIO() override; - int ReadyForSparseIO(CompletionOnceCallback completion_callback) override; + net::Error ReadyForSparseIO( + CompletionOnceCallback completion_callback) override; void SetLastUsedTimeForTest(base::Time time) override; uint8_t in_memory_data() const { return in_memory_data_; } @@ -148,24 +149,25 @@ class MockDiskCache : public disk_cache::Backend { CacheType GetCacheType() const override; int32_t GetEntryCount() const override; - int OpenEntry(const std::string& key, - net::RequestPriority request_priority, - disk_cache::Entry** entry, - CompletionOnceCallback callback) override; - int CreateEntry(const std::string& key, - net::RequestPriority request_priority, - disk_cache::Entry** entry, - CompletionOnceCallback callback) override; - int DoomEntry(const std::string& key, - net::RequestPriority request_priority, - CompletionOnceCallback callback) override; - int DoomAllEntries(CompletionOnceCallback callback) override; - int DoomEntriesBetween(base::Time initial_time, - base::Time end_time, + net::Error OpenEntry(const std::string& key, + net::RequestPriority request_priority, + disk_cache::Entry** entry, + CompletionOnceCallback callback) override; + net::Error CreateEntry(const std::string& key, + net::RequestPriority request_priority, + disk_cache::Entry** entry, CompletionOnceCallback callback) override; - int DoomEntriesSince(base::Time initial_time, + net::Error DoomEntry(const std::string& key, + net::RequestPriority request_priority, CompletionOnceCallback callback) override; - int CalculateSizeOfAllEntries(CompletionOnceCallback callback) override; + net::Error DoomAllEntries(CompletionOnceCallback callback) override; + net::Error DoomEntriesBetween(base::Time initial_time, + base::Time end_time, + CompletionOnceCallback callback) override; + net::Error DoomEntriesSince(base::Time initial_time, + CompletionOnceCallback callback) override; + int64_t CalculateSizeOfAllEntries( + Int64CompletionOnceCallback callback) override; std::unique_ptr<Iterator> CreateIterator() override; void GetStats(base::StringPairs* stats) override; void OnExternalCacheHit(const std::string& key) override; @@ -318,10 +320,10 @@ class MockHttpCache { // This version of the disk cache doesn't invoke CreateEntry callbacks. class MockDiskCacheNoCB : public MockDiskCache { - int CreateEntry(const std::string& key, - net::RequestPriority request_priority, - disk_cache::Entry** entry, - CompletionOnceCallback callback) override; + net::Error CreateEntry(const std::string& key, + net::RequestPriority request_priority, + disk_cache::Entry** entry, + CompletionOnceCallback callback) override; }; class MockBackendNoCbFactory : public HttpCache::BackendFactory { diff --git a/chromium/net/http/proxy_connect_redirect_http_stream.cc b/chromium/net/http/proxy_connect_redirect_http_stream.cc index 565ae55983a..99b3ba4a024 100644 --- a/chromium/net/http/proxy_connect_redirect_http_stream.cc +++ b/chromium/net/http/proxy_connect_redirect_http_stream.cc @@ -108,14 +108,6 @@ bool ProxyConnectRedirectHttpStream::GetRemoteEndpoint(IPEndPoint* endpoint) { return false; } -Error ProxyConnectRedirectHttpStream::GetTokenBindingSignature( - crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out) { - NOTREACHED(); - return ERR_NOT_IMPLEMENTED; -} - void ProxyConnectRedirectHttpStream::Drain(HttpNetworkSession* session) { NOTREACHED(); } diff --git a/chromium/net/http/proxy_connect_redirect_http_stream.h b/chromium/net/http/proxy_connect_redirect_http_stream.h index 2a0ae447add..67cc618182f 100644 --- a/chromium/net/http/proxy_connect_redirect_http_stream.h +++ b/chromium/net/http/proxy_connect_redirect_http_stream.h @@ -62,9 +62,6 @@ class ProxyConnectRedirectHttpStream : public HttpStream { void GetSSLInfo(SSLInfo* ssl_info) override; void GetSSLCertRequestInfo(SSLCertRequestInfo* cert_request_info) override; bool GetRemoteEndpoint(IPEndPoint* endpoint) override; - Error GetTokenBindingSignature(crypto::ECPrivateKey* key, - TokenBindingType tb_type, - std::vector<uint8_t>* out) override; void Drain(HttpNetworkSession* session) override; void PopulateNetErrorDetails(NetErrorDetails* details) override; diff --git a/chromium/net/http/transport_security_state.cc b/chromium/net/http/transport_security_state.cc index 2dc467772e8..f1a5d1cec27 100644 --- a/chromium/net/http/transport_security_state.cc +++ b/chromium/net/http/transport_security_state.cc @@ -501,7 +501,7 @@ TransportSecurityState::CheckCTRequirements( if (IsDynamicExpectCTEnabled() && GetDynamicExpectCTState(hostname, &state)) { UMA_HISTOGRAM_ENUMERATION( "Net.ExpectCTHeader.PolicyComplianceOnConnectionSetup", - policy_compliance, ct::CTPolicyCompliance::CT_POLICY_MAX); + policy_compliance, ct::CTPolicyCompliance::CT_POLICY_COUNT); if (!complies && expect_ct_reporter_ && !state.report_uri.is_empty() && report_status == ENABLE_EXPECT_CT_REPORTS) { MaybeNotifyExpectCTFailed(host_port_pair, state.report_uri, state.expiry, @@ -867,20 +867,19 @@ bool TransportSecurityState::DeleteDynamicDataForHost(const std::string& host) { const std::string hashed_host = HashHost(canonicalized_host); bool deleted = false; - STSStateMap::iterator sts_interator = enabled_sts_hosts_.find(hashed_host); + auto sts_interator = enabled_sts_hosts_.find(hashed_host); if (sts_interator != enabled_sts_hosts_.end()) { enabled_sts_hosts_.erase(sts_interator); deleted = true; } - PKPStateMap::iterator pkp_iterator = enabled_pkp_hosts_.find(hashed_host); + auto pkp_iterator = enabled_pkp_hosts_.find(hashed_host); if (pkp_iterator != enabled_pkp_hosts_.end()) { enabled_pkp_hosts_.erase(pkp_iterator); deleted = true; } - ExpectCTStateMap::iterator expect_ct_iterator = - enabled_expect_ct_hosts_.find(hashed_host); + auto expect_ct_iterator = enabled_expect_ct_hosts_.find(hashed_host); if (expect_ct_iterator != enabled_expect_ct_hosts_.end()) { enabled_expect_ct_hosts_.erase(expect_ct_iterator); deleted = true; @@ -902,7 +901,7 @@ void TransportSecurityState::DeleteAllDynamicDataSince(const base::Time& time) { DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); bool dirtied = false; - STSStateMap::iterator sts_iterator = enabled_sts_hosts_.begin(); + auto sts_iterator = enabled_sts_hosts_.begin(); while (sts_iterator != enabled_sts_hosts_.end()) { if (sts_iterator->second.last_observed >= time) { dirtied = true; @@ -913,7 +912,7 @@ void TransportSecurityState::DeleteAllDynamicDataSince(const base::Time& time) { ++sts_iterator; } - PKPStateMap::iterator pkp_iterator = enabled_pkp_hosts_.begin(); + auto pkp_iterator = enabled_pkp_hosts_.begin(); while (pkp_iterator != enabled_pkp_hosts_.end()) { if (pkp_iterator->second.last_observed >= time) { dirtied = true; @@ -924,8 +923,7 @@ void TransportSecurityState::DeleteAllDynamicDataSince(const base::Time& time) { ++pkp_iterator; } - ExpectCTStateMap::iterator expect_ct_iterator = - enabled_expect_ct_hosts_.begin(); + auto expect_ct_iterator = enabled_expect_ct_hosts_.begin(); while (expect_ct_iterator != enabled_expect_ct_hosts_.end()) { if (expect_ct_iterator->second.last_observed >= time) { dirtied = true; @@ -1106,7 +1104,7 @@ void TransportSecurityState::ProcessExpectCTHeader( return; UMA_HISTOGRAM_ENUMERATION( "Net.ExpectCTHeader.PolicyComplianceOnHeaderProcessing", - ssl_info.ct_policy_compliance, ct::CTPolicyCompliance::CT_POLICY_MAX); + ssl_info.ct_policy_compliance, ct::CTPolicyCompliance::CT_POLICY_COUNT); if (ssl_info.ct_policy_compliance != ct::CTPolicyCompliance::CT_POLICY_COMPLIES_VIA_SCTS) { // If an Expect-CT header is observed over a non-compliant connection, the @@ -1259,7 +1257,7 @@ bool TransportSecurityState::GetDynamicSTSState(const std::string& host, for (size_t i = 0; canonicalized_host[i]; i += canonicalized_host[i] + 1) { std::string host_sub_chunk(&canonicalized_host[i], canonicalized_host.size() - i); - STSStateMap::iterator j = enabled_sts_hosts_.find(HashHost(host_sub_chunk)); + auto j = enabled_sts_hosts_.find(HashHost(host_sub_chunk)); if (j == enabled_sts_hosts_.end()) continue; @@ -1300,7 +1298,7 @@ bool TransportSecurityState::GetDynamicPKPState(const std::string& host, for (size_t i = 0; canonicalized_host[i]; i += canonicalized_host[i] + 1) { std::string host_sub_chunk(&canonicalized_host[i], canonicalized_host.size() - i); - PKPStateMap::iterator j = enabled_pkp_hosts_.find(HashHost(host_sub_chunk)); + auto j = enabled_pkp_hosts_.find(HashHost(host_sub_chunk)); if (j == enabled_pkp_hosts_.end()) continue; @@ -1337,8 +1335,7 @@ bool TransportSecurityState::GetDynamicExpectCTState(const std::string& host, return false; base::Time current_time(base::Time::Now()); - ExpectCTStateMap::iterator j = - enabled_expect_ct_hosts_.find(HashHost(canonicalized_host)); + auto j = enabled_expect_ct_hosts_.find(HashHost(canonicalized_host)); if (j == enabled_expect_ct_hosts_.end()) return false; // If the entry is invalid, drop it. diff --git a/chromium/net/http/transport_security_state_static.json b/chromium/net/http/transport_security_state_static.json index acb1ef83738..7f051b67b3e 100644 --- a/chromium/net/http/transport_security_state_static.json +++ b/chromium/net/http/transport_security_state_static.json @@ -202,20 +202,16 @@ { "name": "yahoo", "static_spki_hashes": [ - "DigiCertAssuredIDRoot", - "DigiCertGlobalRoot", - "DigiCertGlobalRootG2", - "DigiCertGlobalRootG3", - "DigiCertTrustedRootG4", - "DigiCertEVRoot", - "VeriSignClass2_G2", - "VeriSignClass2_G3", - "VeriSignClass3_G3", - "VeriSignClass3_G4", - "VeriSignClass3_G5", - "VeriSignUniversal", - "YahooBackup1", - "YahooBackup2" + "DigiCertAssuredIDRoot", + "DigiCertGlobalRoot", + "DigiCertGlobalRootG2", + "DigiCertGlobalRootG3", + "DigiCertTrustedRootG4", + "DigiCertEVRoot", + "GlobalSignRootCA", + "GlobalSignRootCA_R3", + "YahooBackup1", + "YahooBackup2" ], "report_uri": "http://csp.yahoo.com/beacon/csp?src=yahoocom-hpkp-report-only" }, @@ -896,7 +892,6 @@ { "name": "vmoagents.com", "policy": "custom", "mode": "force-https" }, { "name": "pult.co", "policy": "custom", "mode": "force-https" }, { "name": "www.eternalgoth.co.uk", "policy": "custom", "mode": "force-https" }, - { "name": "airbnb.com", "policy": "custom", "mode": "force-https" }, { "name": "usaa.com", "policy": "custom", "mode": "force-https" }, { "name": "www.usaa.com", "policy": "custom", "mode": "force-https" }, { "name": "mobile.usaa.com", "policy": "custom", "mode": "force-https" }, @@ -1123,7 +1118,6 @@ { "name": "harvestapp.com", "policy": "bulk-legacy", "mode": "force-https", "include_subdomains": true }, { "name": "anycoin.me", "policy": "bulk-legacy", "mode": "force-https", "include_subdomains": true }, { "name": "noexpect.org", "policy": "bulk-legacy", "mode": "force-https", "include_subdomains": true }, - { "name": "www.airbnb.com", "policy": "bulk-legacy", "mode": "force-https", "include_subdomains": true }, { "name": "subrosa.io", "policy": "bulk-legacy", "mode": "force-https", "include_subdomains": true }, { "name": "manageprojects.com", "policy": "bulk-legacy", "mode": "force-https", "include_subdomains": true }, { "name": "vocaloid.my", "policy": "bulk-legacy", "mode": "force-https", "include_subdomains": true }, @@ -1542,7 +1536,6 @@ { "name": "comdurav.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "digitaldaddy.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "elnutricionista.es", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "fronteers.nl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "gunnarhafdal.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "heijblok.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kdex.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -1793,7 +1786,6 @@ { "name": "nouvelle-vague-saint-cast.fr", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "opendesk.cc", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "pestici.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "petrolplus.ru", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "proximato.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "savetheinternet.eu", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "shortdiary.me", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -4026,7 +4018,6 @@ { "name": "koukni.cz", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kpinvest.eu", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kristofferkoch.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "kweddingplanning.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kylinj.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "lagoza.name", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "latenitefilms.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -7130,7 +7121,6 @@ { "name": "errolz.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "estan.cn", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "esteam.se", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "etha.nz", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "euanbaines.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "eulenleben.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "everylab.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -8190,7 +8180,6 @@ { "name": "imusic.dk", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "indusfastremit-us.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "indusfastremit.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "insighti.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "insighti.eu", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "insighti.sk", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "iprice.co.id", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -8500,7 +8489,6 @@ { "name": "werally.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "westsuburbanbank.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "wftda.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "wideboxmacau.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "wind.moe", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "winshiplending.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "wizzley.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -15871,9 +15859,6 @@ { "name": "logicio.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "lwl12.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mockmyapp.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "mallner.me", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "lacliniquefinanciere.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "mkasu.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "matsuz.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mind-hochschul-netzwerk.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mobilewikiserver.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -16261,7 +16246,6 @@ { "name": "sandalj.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "seoarchive.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "signoracle.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "self-signed.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "shitsta.in", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "sepalandseed.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "sequiturs.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -16717,7 +16701,6 @@ { "name": "amineptine.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "alexmak.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "1js.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "ai-english.jp", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "4azino777.ru", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "ahelos.tk", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "akr.io", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -19210,7 +19193,6 @@ { "name": "kourpe.online", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "katja-nikolic-design.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kalterersee.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "karlstabo.se", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kokumoto.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kottur.is", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kls-agency.com.ua", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -19495,7 +19477,6 @@ { "name": "mt2414.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mist.ink", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mozart-game.cz", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "mrhee.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "moehrke.cc", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "nadia.pt", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mozartgame.cz", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -22046,7 +22027,6 @@ { "name": "muwatenraqamy.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "morpheusxaut.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "morpheusx.at", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "monoseis-monotica.gr", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mannford.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mrd.ninja", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mind-box.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -22061,7 +22041,6 @@ { "name": "muchohentai.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "myeffect.today", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "melodic.com.au", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "mrsbairds.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mobsender.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "murakami-sah.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "montage-kaika.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -22207,7 +22186,6 @@ { "name": "openrealestate.co", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "onthecheap.store", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "online24.pt", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "opportunitycorps.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "oblikdom.pro", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "oelsner.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "nchristo.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -22262,7 +22240,6 @@ { "name": "noticia.do", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "os-s.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "paulov.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "opoleo.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "openpictures.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "perfect-radiant-wrinkles.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "penrithapartments.com.au", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -22473,7 +22450,6 @@ { "name": "reykjavik.guide", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "ridingoklahoma.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "romantic-quotes.co.uk", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "ruben.am", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "randomdysfunctions.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "rodzina-kupiec.eu.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "rootear.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -22509,7 +22485,6 @@ { "name": "restaurant-rosengarten.at", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "rotex1840.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "roseliere.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "remedioskaseros.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "rumtaste.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "rumtaste.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "psicologoforensemadrid.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -22631,7 +22606,6 @@ { "name": "slanterns.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "sitehoster.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "solosmusic.xyz", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "soccersavings.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "smart.gov", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "rodneybrooksjr.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "simbeton.nl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -22749,7 +22723,6 @@ { "name": "studium.cz", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "teachingcopyright.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "t4c-rebirth.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "sv-1966-medenbach.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "teachingcopyright.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "svm-it.eu", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "rapdogg.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -24313,7 +24286,6 @@ { "name": "0yen.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "10x.ooo", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "11loc.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "12.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "1212873467.rsc.cdn77.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "125m125.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "130.ua", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -25827,7 +25799,6 @@ { "name": "hashish.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "hauntedhouserecords.co.uk", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "hauteslatitudes.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "haven-moon.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "havenmoon.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "hawaya.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "haz.cat", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -26121,7 +26092,6 @@ { "name": "jgwb.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "jgwb.eu", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "jhollandtranslations.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "jinshavip.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "jiogo.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "jiyue.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "jiyusu.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -26590,7 +26560,6 @@ { "name": "minakov.pro", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "minantavla.se", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "minaprine.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "mindturbo.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mine260309.me", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "minecraft-forum.eu", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "minecraft-server.eu", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -26650,7 +26619,6 @@ { "name": "mosin.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "mosos.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "motorcheck.ie", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "mottomortgage.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "moumaobuchiyu.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "moviepilot.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "movingtohttps.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -27674,7 +27642,6 @@ { "name": "swisstranslate.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "swisstranslate.fr", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "swissxperts.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "syha.org.uk", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "syllogi.xyz", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "sylve.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "system.cf", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -28086,7 +28053,6 @@ { "name": "webinnovation.ie", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "weblagring.se", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "webmel.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "webpubsub.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "websitedesign.bg", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "websiteservice.pro", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "webspotter.nl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -28999,7 +28965,6 @@ { "name": "cloud2go.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "capachitos.cl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "chiro-neuchatel.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "computeracademy.co.za", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "continuation.io", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "comyuno.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "cloud.bugatti", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -29827,7 +29792,6 @@ { "name": "highlegshop.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "honeyhaw.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "hollo.me", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "hootworld.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "hygo.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "hopglass.eu", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "hopglass.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -30209,7 +30173,6 @@ { "name": "lelehei.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "lenkunz.me", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "leowkahman.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "leech360.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "lanroamer.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "lazyboston.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "koscielniak-nieruchomosci.pl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -31256,7 +31219,6 @@ { "name": "s1mplescripts.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "redcomet.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "sentinelproject.io", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "reevu.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "scm-2017.org", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "sapprendre.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "sebastian-kraus.me", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -33302,7 +33264,6 @@ { "name": "lineauniformes.com.br", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "lgpecasoriginais.com.br", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "locvis.ru", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "lisowski-development.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kreativelabs.ch", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "loadwallet.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "linuxchick.se", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -33637,7 +33598,6 @@ { "name": "password-checker.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "peaksloth.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "otokonna.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "pageantsnews.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "panj.ws", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "patrick-othmer.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "pemberton.at", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -34273,7 +34233,6 @@ { "name": "weepycat.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "welby.cat", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "varela-electricite.fr", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "webqueens.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "virgopolymer.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "vibrashop.com.br", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "viscoelastico.com.br", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -35150,7 +35109,6 @@ { "name": "deeparamaraj.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "denis-martinez.photos", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "digicert-support.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "digital2web.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "dingcc.xyz", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "disanteimpianti.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "discoverwellness.center", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -36241,7 +36199,6 @@ { "name": "detechnologiecooperatie.nl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "dethikiemtra.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "detype.nl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "devcast.io", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "dezet-ev.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "dfixit.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "dgportals.co.uk", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -36606,7 +36563,6 @@ { "name": "insult.es", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "integratedmedicalonline.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "intellinetixvibration.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "internetmarkets.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "intraxia.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "introvertedtravel.space", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "inventix.nl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -36689,7 +36645,6 @@ { "name": "kievradio.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kimisia.net", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kinow.com", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, - { "name": "kirchen-im-web.de", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kirill.ws", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kiteschoolkatwijk.nl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, { "name": "kiteschoolnoordwijk.nl", "policy": "bulk-18-weeks", "mode": "force-https", "include_subdomains": true }, @@ -39576,7 +39531,6 @@ { "name": "spahireleeds.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "speedychat.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "sportressofblogitude.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "spunkt.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "srvonfire.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "ss88.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "stardust-entertainments.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -42940,7 +42894,6 @@ { "name": "kopjethee.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "koppelvlak.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "korben.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "kostal.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "kotly-marten.com.ua", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "kouten-jp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "koval.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -44026,7 +43979,6 @@ { "name": "cozo.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "craftydev.design", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "creativefolks.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "creatixx-network.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "credia.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "credigo.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "creorin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -45188,7 +45140,6 @@ { "name": "jule-spil.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "juliankirchner.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "julibon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "jurisprudent.by", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "juul.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "kalilinux.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "karalane.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -45416,7 +45367,6 @@ { "name": "rpmdrivingschool.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "rtzoeller.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "ruediger-voigt.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "ryois.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "sadiejanehair.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "sagracefarms.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "saprima.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -46026,7 +45976,6 @@ { "name": "kimdumaine.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "kinderopvangzevenbergen.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "kisma.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "klaxon.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "klcreations.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "kleim.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "knightsbridgewine.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -47653,7 +47602,6 @@ { "name": "mattatoio.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "mattbagley.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "matthewsetter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "maurice-walker.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "maxbeenen.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "mc-jobs.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "mc4free.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -48041,7 +47989,6 @@ { "name": "avocatbeziau.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "avptp.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "axchap.ir", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "axfr.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "axonholdingse.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "b4ckbone.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "b4r7.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -48741,7 +48688,6 @@ { "name": "yourlovesong.com.mx", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "yuzei.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "zahnarzt-duempten.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "zaptan.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "zaptan.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "zaptan.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "zaptan.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -50531,7 +50477,6 @@ { "name": "juliazeengardendesign.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "jullensgroningen.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "junglememories.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "justin-tech.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "karta-paliwowa.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "kathrinbaumannphotography.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "kc1hbk.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -50823,7 +50768,6 @@ { "name": "tono.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "toolroomrecords.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "toskana-appartement.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "town-farm.surrey.sch.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "transgendergedenkdag.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "transgenderinfo.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "transgendernetwerk.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -51118,7 +51062,6 @@ { "name": "davidsopas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "dawnofeden.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "dbmiller.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "dc-solution.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "dc1.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "decisivetactics.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "decoratore.roma.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -51584,7 +51527,6 @@ { "name": "pianyigou.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "pikimusic.moe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "pildat.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "pilotandy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "pineapplesapp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "pinner.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "pizzalongaway.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -51827,7 +51769,6 @@ { "name": "welcomescuba.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "wensing-und-koenig.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "werbedesign-tauber.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "werk32.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "wermeester.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "wertpapiertreuhand.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "westlinntowncar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -52008,7 +51949,6 @@ { "name": "claude-leveille.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "claude.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "clement-beaufils.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "cloudcactuar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "codemonster.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "cojam.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "comfortmastersinsulation.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -52416,7 +52356,6 @@ { "name": "nathaliedijkxhoorn.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "nathaliedijkxhoorn.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "nathanaeldawe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "netronome.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "netsphere.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "netvpn.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "newburyparkelectric.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -52728,7 +52667,6 @@ { "name": "xn--cfa.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "xn--fp8h58f.ws", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "xn--y-5ga.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "xn--y8ja6lb.xn--q9jyb4c", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "xo7.ovh", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "xposedornot.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "yawen.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -52816,7 +52754,6 @@ { "name": "cocyou.ooo", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "como-se-escribe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "comocurarlagastritistratamientonatural.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "computerbas.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "coolwallet.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "cosasque.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "cprheartcenter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -54910,7 +54847,6 @@ { "name": "grillen-darf-nicht-gesund-sein.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "grottenthaler.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "grrmmll.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, - { "name": "gsdb.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "gtopala.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "guerard.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "hacertest.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, @@ -56815,6 +56751,3067 @@ { "name": "youmiracle.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "zerosync.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, { "name": "zoi.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "01011970.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "01110000011100110111001001100111.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "0311buy.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "06091994.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "1001carats.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "1001kartini.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "1177107.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "1288366.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "1q2w.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "233bwg.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "291167.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "2h-nagoya.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "2nics.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "2y.fi", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "51tiaojiu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "66bwf.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8086.cf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "818bwf.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8722.am", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "888bwf.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "88bwf.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "9822.am", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "9822.bz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "abdel.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "abonilla.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "accoladescreens.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "achtzig20.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "actonwoodworks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "actualidadiphone.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "actualidadmotor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ad13.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "adra.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ae-construction.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aelisya.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aerapass.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "afcompany.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "afcurgentcarelyndhurst.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "affordableenergyadvocates.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "agencyinmotion.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "agrajag.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.ae", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.cat", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.cl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.co.cr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.co.id", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.co.il", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.co.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.co.kr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.co.nz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.co.ve", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.ar", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.bo", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.bz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.ec", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.gt", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.hk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.hn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.hr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.kh", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.mt", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.my", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.ni", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.pa", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.pe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.ph", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.py", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.sg", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.sv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.tw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.ua", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.vn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.fi", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.gy", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.hu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.ie", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.is", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.la", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.lu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.mx", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.no", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.pt", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "akilli-devre.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alabamadebtrelief.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alaskafishinglodges.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aldomedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alek.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alexandrastorm.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "algoaware.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aliorange.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allamericanprotection.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allgaragefloors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allofthestops.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alphaman.ooo", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "altapina.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "amateurchef.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ameschristian.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "amnesty-bf.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "anarchyrp.life", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "androidsis.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "andysroom.dynu.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "angeloryndon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "anneliesonline.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "anthonyfontanez.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aos-llc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aptitudetests.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "araraexpress.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "arletalibrary.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "armanozak.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "arne.codes", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "arviksa.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "asproni.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "astral-imperium.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ataber.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "athenaneuro.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "atvirtual.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "atxchirocoverage.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "austenplumbing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "automoto-tom.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "autoprogconsortium.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "avidthink.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "avvocato.bologna.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aziende.com.ar", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bancor.network", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bandagastrica.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "barter4crypto.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bashing-battlecats.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bassys.com.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bastadigital.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bazaarbhaav.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "beamstat.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bedrijfsportaal.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "beechwoodmetalworks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bellamodeling.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bethpage.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "biddle.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "biegal.ski", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bl00.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blackyau.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bliker.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bloglogistics.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blogthedayaway.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blood4pets.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bokadoktorn-test.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bondlink.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bonrecipe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "booker.ly", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bot-manager.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bouncycastlehire.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "boyerassoc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "boyinglanguage.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brickstreettrio.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brightendofleasecleaning.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brouwerijdeblauweijsbeer.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bwf11.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bwf55.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bwf6.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bwf66.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bwf77.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bwf99.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "caaps.org.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "camdesign.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cardsolutionsbh.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "careers.plus", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "carlocksmithtucson.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cartierplan.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "casacochecurro.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cbk-connect.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cd-shopware.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cdshining.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cedarslodge.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "centromasterin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cflsystems.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cg.al", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cgurtner.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chabik.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chang-feng.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chbk.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "checkmyip.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chilimathwords.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chovancova.sk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ciiex.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "civiltoday.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cleandetroit.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cleandogsnederland.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "clearbookscdn.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "clearvoice.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "clinicasmedicas.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cloudse.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "com-news.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "compactchess.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "comptu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "consagracionamariasantisima.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "consultoriosodontologicos.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "contemplativeeducation.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "copta-imagefilme-und-drohnenvideos.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "crawford.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "crinesdanzantes.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cromosomax.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cruzadobalcazarabogados.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "crypto.tube", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cryptodyno.ninja", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cskdoc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ctoresms.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cubetech.co.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cumberlandrivertales.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cypad.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "d-parts.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dabasstacija.lv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "danholloway.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "danielsfirm.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "darioclip.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "darkrisks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dasignsource.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "davidtiffany.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dbjc.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "debkleinteam.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "decoating.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "deftig-und-fein.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "designedbygeniuses.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "detectivedesk.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "develops.co.il", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "diagrammingoutloud.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "diatrofi-ygeia.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "digipitch.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "digital-muscle.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "digitaletanker.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "digitalfury.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "diozoid.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dixibox.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dlui.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dlyanxs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dnakids.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "domob.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drewapianostudio.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drnow.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drrodina.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drtimmarch.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dsgarms.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dsgholsters.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dubtrack.fm", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dulcinela.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "duncanmoffat.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "duncm.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "easy2bathe.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eat-mine.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ebooklaunchers.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eduxpert.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eelcapone.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eirb.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eldevo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "elizabethrominski.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "emecew.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "emily.moe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "emploi-collectivites.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "enalean.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "encycarpedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "enlighten10x.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "equallyy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "esrhd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "esrinfo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "essex.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "estudiarparaser.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "esurety.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "etax.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "evanwang0.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "evenstargames.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "everitoken.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "everythingstech.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "evidencija.ba", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "evilbunnyfufu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "exitooutdoor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "expertviolinteacher.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "facepainting.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "faelix.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fahnen-fanwelt.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fameus.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fantasticservices.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fantasyprojections.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fanyina.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fashtic.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fastcp.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fastest-hosting.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fatmixx.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fattorino.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fcingolstadt.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "femiluna.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "feross.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "feybiblia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "filestartest.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "findcarspecs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "firesuite.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "flanga.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fletemaritimo.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "flexfunding.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "flip.kim", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fotografechristha.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fpgradosuperior.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frankopol-sklep.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "freie-software.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frenchmusic.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frontier-ad.co.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frontiers.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "furcity.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "furrytf.club", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "futbomb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "futuregrowthva.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "g0man.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "g2ship.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gagliarducci.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "galabau-maurmann.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "galacg.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gehas-wein-shop.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gemgroups.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "general-insurance.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "germancraft.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "getcommande.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "getfoundquick.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ghou.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gisch.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "githubber.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "githubber.tv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "glasweld.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gmplab.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "goflipr.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gomena.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "goodhealthtv.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "goodshepherdmv.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "grasso.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "greenmachines.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gregbrimble.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gregmarziomedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "grego.pt", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gsmbrick.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "guajars.cl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gunauc.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gv-salto.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gymjp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gzitech.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "h10l.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hackerone.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hadret.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hadret.sh", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "handknit.com.np", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "handmadehechoamano.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "handy-center.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hankr.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hanksacservice.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hannahi.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hannover.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hansahome.ddns.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "harvarddharma.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "heapkeeper.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "heren.fashion", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hirakatakoyou.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hirevo.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hisgifts.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hlin.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "home-insurance-quotes.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hotelpostaorvieto.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "howtoteachviolin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huangjiaint.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huaqian.art", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hugo6.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hunter-read.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huntsvillecottage.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huxcoconstruction.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huynhviet.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hybridragon.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ibuki.run", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ic-spares.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "icobench.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "idealsegurancaeletronica.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ideiasefinancas.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "identigraf.center", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "idodiandina.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ihakkitekin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ilookz.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "industriafranchini.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infinitomaisum.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infomir.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infuzeit.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "inglebycakes.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "instead.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "integrateur-web-paris.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "integrityokc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "international-books.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "internationalschoolnewyork.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "internetbusiness-howto.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "inumcoeli.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "invitation-factory.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "irdvb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iso27032.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "itikon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "itreallyaddsup.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ivact.co.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jackhoodtransportation.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jaetech.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jamesjboyer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jamesturnerstickley.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jamie-read-photography.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "janebondsurety.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jannekekaasjager.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "japon-japan.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jaxxnet.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jaxxnet.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jelleschneiders.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jemefaisdesamis.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jeparamedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jobatus.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jobatus.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jobatus.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jobatus.mx", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jobatus.pt", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "joshgilson.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jrflorian.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "julianmp.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kaivac-emea.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kalakarclub.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kan3.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kappenstein.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kat.marketing", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "katcleaning.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "katex.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ketotadka.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kettlebellkrusher.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kfassessment.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "killdeer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kinderkleding.news", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kipiradio.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kirinuki.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kix.moe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kkws.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "knechtology.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kokona.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kredita.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kristenpaigejohnson.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kristofba.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kronych.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "krytykawszystkiego.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "krytykawszystkiego.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kuzdrowiu24.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "laeso.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lamp24.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lampade.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lampara.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lampen24.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lampenwelt.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lampy.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "languagecourse.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "laravelsaas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "latedeals.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "latestbuy.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "laurenceplouffe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lavishlooksstudio.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leadstart.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leamsigc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leatam.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ledlight.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lefcoaching.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lepidum.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "liamlin.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lightdark.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lights.ie", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lignite.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "likesforinsta.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "likui.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "linux.pizza", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "liquipedia.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "littleboutiqueshop.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "littleboutiqueshop.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "littleboutiqueshop.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "loadtraining.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "localprideart.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "locurimunca.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "logicz.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lorientlejour.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "losrascadoresparagatos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "loungecafe.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "loungecafe.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lovebigisland.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lovecrystal.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lucascobb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lukas-meixner.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "luminaire.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lupecode.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "luqsus.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "m134.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "magebit.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "magnunbaterias.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mahjongrush.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maler-marschalleck.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mana.ee", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "managementforstartups.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mangahigh.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "manmeetgill.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mariacorzo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marijnfidder.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marjeta-gurtner.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "markandrosalind.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marketingforfood.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "martin-loewer.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "matdogs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mathematris.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mathfinder.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "matome-surume.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mcfipvt.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mediabackoffice.co.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mediarithmics.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "medino.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "medsindex.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "memesbee.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meric-graphisme.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "merloat.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meupainel.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mfz.mk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mhadot.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mhand.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mhatero.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "michadenheijer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mijnkinderkleding.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mijnpartijhandel.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millersminibarns.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "million5.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "million6.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "million8.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions1.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions11.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions13.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions14.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions15.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions16.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions17.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions19.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions20.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions22.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions25.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions26.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions27.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions28.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions29.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions31.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions32.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions33.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions35.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions36.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions37.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions38.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions39.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions40.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions41.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions42.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions43.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions5.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions50.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions51.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions52.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions53.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions55.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions56.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions59.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions6.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions66.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions7.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions70.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions71.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions72.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions77.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions8.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions80.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions81.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions82.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions88.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions9.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "millions99.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mim.am", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mimemoriadepez.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mintse.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mipueblohoy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "misskey.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mit-dem-rad-zur-arbeit.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mit-dem-rad-zur-uni.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mityinc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mitylite.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mixrepairs.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mna7e.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mobi4.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "modul21.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "modul21.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "momentum.photos", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "momo0v0.club", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "moonbench.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mountainchalet.blue", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mountainspringsrentals.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mrgasfires.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mtd.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mui.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mum.ceo", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "murraya.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mx-quad.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myaspenheights.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mybasementdoctor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mybusiness.wien", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myhloli.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myownconference.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myrevery.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myrotvorets.news", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myserv.one", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mywebmanager.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mza.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nannytax.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nashdistribution.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nashikmatka.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "natgeofreshwater.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nativitynj.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "naturalfit.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nb01.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ndfa.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nemopret.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "netexem.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nettilamppu.fi", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "newmusicjackson.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nextlevel-it.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nickmertin.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nn78.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nodevops.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "norestfortheweekend.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "notacooldomain.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "noydeen.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "npsas.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nuclea.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nudevotion.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nxth.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "o-results.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oakandresin.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "obesidadlavega.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ohmayonnaise.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ohol.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oi-wiki.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oldno07.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "olfnewcastle.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "omarsuniagamusic.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ond-inc.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oportunidadesemfoco.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "osomjournal.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "p5118.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pacificcashforcars.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pageperform.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "panjee.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paperlesssolutionsltd.com.ng", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "partijhandel.website", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "partnermobil.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pasadenasandwich.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paulcooper.me.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "peacedivorce.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "peka.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "per-olsson.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "peterjin.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "petr.as", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pewnews.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pfrost.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pgh-art.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pharside.dyndns.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "phattea.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "phil-dirt.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pinkylam.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pinnacleallergy.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "planolowcarb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "playviolinmusic.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "plexmark.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "plus1s.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pmbtf.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pohlednice-tap.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "polar-baer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "polinet.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "polis812.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "post.we.bs", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pottreid.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "powerfortunes.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "powersergthisisthetunnelfuckyouscott.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ppoou.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "praktijkpassepartout.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "precisiondigital-llc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "presbvm.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pro-taucher.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pro-taucher.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "promorder.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "prosperfit.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "prynhawn.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "prynhawn.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "prynhawn.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pscp.tv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "puralps.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pursuedtirol.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pushphp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pyxo.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "qlix.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "qualityhvacservices.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "quarus.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "quovadisaustria.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "qvg.company", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "radio-pulsar.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "radom-pack.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ranfurlychambers.co.nz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "raphaelmoura.ddns.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rcmpsplib.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rebeagle.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rebelonline.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "receptionpoint.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "reesmichael1.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "refuelcreative.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "regresionavidaspasadas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "remax.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "remini.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "report2psb.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "reyna.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "richardramos.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "richardson.cam", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rifkivalkry.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rochakhand-knitcraft.com.np", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rocketsandtutus.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "roninitconsulting.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rosnertexte.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "roundtablekzn.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal806.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal810.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal811.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal813.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal816.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal817.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal830.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal833.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal851.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal852.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal855.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal856.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal86.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal861.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal869.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal872.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal873.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal875.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal877.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal879.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal88.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal88.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal881.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal882.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal883.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal885.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal886.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal887.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal888888.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal889.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal890.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal891.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal892.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal893.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal894.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal895.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal896.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal898.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royal899.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royalyule.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rpauto.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rua.cx", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "russiaeconomy.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ruthmontenegro.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ryyule.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "s4q.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "safeguardhosting.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sakuracommunity.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "salva.re", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "samin.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "samitechnic.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "samlivogarv.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sanantoniolocksmithtx.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sanemind.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sascha.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sascha.is", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saschaeggenberger.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saschaeggenberger.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scbdh.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "schoolcafe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scigov.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scilifebiosciences.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scrumpus.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sdayman.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "secinto.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "securetrustbank.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "securitycamerascincinnati.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "securitycamerasjohnsoncity.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sellorbuy.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sellorbuy.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "semdynamics.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sennase.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "seohouston.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sexymassageoil.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sfaparish.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sgs-systems.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shalyapin.by", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sharisharpe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shawnow.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sheekdeveloper.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sheekmedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shellot.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shgroup.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shiqi.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shirao.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shivatattvayoga.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shopify.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shopregional.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shortcut.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shuvo.rocks", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shuvodeep.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sierpinska.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sierpinska.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "signdesk.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "silverkingalaska.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sitefactory.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sjzebs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sjzget.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sjzybs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "skillout.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "skutry-levne.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "skutry.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sky-coach.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sky-coach.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "skyn3t.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "smartacademy.ge", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "smartmarketingcoaching.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sngeo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "snoringhq.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "snowy.land", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "softbebe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "solepurposetest.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "solitairenetwork.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "somepills.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "southernlights.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "southernstructuralsolutions.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "space-y.cf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sperec.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "spinalo.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "splopp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sportstreetstyle.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "srife.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "st-innovationcup.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "staer.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "starsing.bid", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stclementmatawan.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stclementreligioused.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stephansurgicalarts.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stewpolley.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stjohnsottsville.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stjoseph-stcatherine.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stjscatholicchurch.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stjustin.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stlukenh.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "storageshedsnc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "strawberry-laser.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "streamkit.gg", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stroseoflima.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sugarlandkarate.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sujal.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "superway.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "suttacentral.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swqa.hu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swxtd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "syntheticgrassliving.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tadiranbatteries.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "talentwall.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tam-moon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tannerwilliamson.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tanz-kreativ.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tar-mag.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tccmb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "techamigo.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tellyourtale.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "temdu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "teriyakisecret.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "terminsrakning.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thebeginningviolinist.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "theblueroofcottage.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thediamondcenter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thefashionpolos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "theforkedspoon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thegospelforgeeks.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "theregoesbrian.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thesarogroup.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "theyakshack.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thingsof.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thinkforwardmedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "threatcon.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "threatnix.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tokintu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tone.tw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toomy.ddns.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "top5hosting.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "topkek.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toppointrea.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tosamja.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.cm", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.lu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.pics", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toutvendre.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tracemyplace.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trailcloud.ink", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "traveleets.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "travelrefund.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trendus.no", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trilliumvacationrentals.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trouble-free-employees.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trueproxy.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tsgkc1.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tuasaude.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "turf-experts.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "u-martfoods.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ultrautoparts.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "unblocked.gdn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ungeek.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ungeek.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "unimbalr.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "univerpack.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "upnorthproperty.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "uprint.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "uptechbrasil.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "utahtravelcenter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "utilio.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "uuid.cf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "uv.uy", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "v2ray6.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "v2ray66.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "v2ray666.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vanagamsanthai.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vanagamseeds.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vapesupplies.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vbql.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "veganmasterrace.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vendreacheter.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vendreacheter.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "verge.capital", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "verustracking.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "veryimportantusers.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vestum.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "veterinarian-hospital.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vidracariaespelhosbh.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "viewey.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vignoblesdeletat.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vinihk.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "visitmaine.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vocalik.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vogue.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "voidma.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vorte.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vpnpro.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vvzero.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vxz.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "w95.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wa.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wajtc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "waltervictor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wanzenbug.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "web-jive.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "web1n.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "webgap.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "weddingofficiantwilmington.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wereoutthere.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "white-ibiza.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "williamscomposer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "williamsflintlocks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "willowbrook.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "woaiuhd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "worldrecipes.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wpgoblin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wtp.co.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wwww.is", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wwww.me.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--obt757c.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--trdler-xxa.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yannic.world", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ymoah.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ynxfh.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yoast.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yon.co.il", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yoppoy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "you2you.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yourstake.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yuntong.tw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zacco.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zerowastesavvy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zionnationalpark.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zoomcar.pro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "1se.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "23333.link", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "24hourcyclist.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "2bad2c0.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "357maelai.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "360vrs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "371cloud.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "411416.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "50.gd", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "5364jc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "55639.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "69wasted.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "7045.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8349822.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876138.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876520.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876578.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876598.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876655.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876660.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876687.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876770.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876775.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876776.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876779.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876818.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876822.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876838.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876858.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876866.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876879.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876881.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876882.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876883.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876898.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876900.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876991.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876992.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8876996.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880013.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880021.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880023.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880025.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880057.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880059.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880067.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880083.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8880100.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8886737.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8886739.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8886793.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8886806.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8886860.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889457.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889458.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889466.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889563.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889709.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889729.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889792.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889807.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889809.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889819.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889870.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889881.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889890.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889893.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889903.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "8889910.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "abateroad66.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "abitidalavoro.roma.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "absimple.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "academkin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "acklandstainless.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "actioncleaningnd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "actualidadecommerce.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "actualidadgadget.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "actualidadkd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "addictionresource.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "advanced-fleet-services.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "advertis.biz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aegialis.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aerospace-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "affloc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "age.hk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "agriculture-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "agy.cl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aibiying.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ailitonia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ailitonia.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aimi-salon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnbchina.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airwaystorage.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aktin.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "al3366.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "albrocar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "all-fashion-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allemoz.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allemoz.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allhard.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allius.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "almorafestival.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "american-school-search.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "americanindiannursing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "amicimar.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "anaveragehuman.eu.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ankaraseo.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "antennista.tv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "appinn.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "arackiralama.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "architecture-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "armazemgourmetbrasil.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "arte-soft.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "arteequipamientos.com.uy", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "asegem.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aspformacion.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aspiradorasbaratas.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "atwar-mod.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "audion.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "auspicacious.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "author24.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "auto-dealership-news.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "autonewssite.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "autoteplo.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "avalyuan.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "avantitualatin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "avs-building-services.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ay-net.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ayahya.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "baby-bath-tub.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "backseatbandits.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bahaiprayers.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bailonga.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "balletcenterofhouston.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bbld.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "beaverdamautos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bejarano.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "berger-chiro.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bernardez-photo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "berndklaus.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bescover.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-accounting-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-art-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-baptist-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-beauty-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-business-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-catholic-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-community-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-culinary-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-education-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-engineering-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-graduate-programs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-hvac-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-lutheran-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-management-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-marketing-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-music-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-nursing-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-pharmacy-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "best-trucking-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bestbefore.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bestelectricnd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bestpal.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "biblioporn.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bigorbitgallery.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "biology-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bisq.community", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bistrodeminas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bitmask.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bitsoffreedom.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bjmun.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blaauwgeers.pro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blaauwgeers.travel", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blackhell.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bleutecmedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blinder.com.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blusens.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bonawehouse.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bongo.cat", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bonux.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "boogaerdtmakelaars.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "boombv.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "botezdepoveste.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "botsindiscord.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brasileiro.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bridgedirectoutreach.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "briffoud.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "browserleaks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brunoproduit.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brycecanyonnationalpark.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bso-buitengewoon.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bubblin.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bursa3bydgoszcz.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "burzcast.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "burzstudios.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "businessmadeeasypodcast.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "buy-out.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "byhe.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "caldoletto.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "calendar.cf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cambridgesecuritygroup.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "campaignhelpdesk.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "camshowverse.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "candeo-books.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cannabismd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "carfinancehelp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "carfraemill.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "caroffer.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "casaanastasia.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "casinomucho.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "casinomucho.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cctvcanada.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cdnsys.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ceagriproducts.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cedarcitydining.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "celeraindustries.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "centroperugia.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "championweb.co.nz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "championweb.nz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cheap-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "checkras.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chemistry-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chengxindong.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chesapeakebaychristmas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chesscoders.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chesterlestreetasc.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "christopherstocks.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "classyvaper.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cloudcrux.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "club-climate.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cnlau.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "codein.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "codemill.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cognixia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cololi.moe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "colotimes.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "comprasoffie.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "computer-science-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "conclinica.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "conspiracyservers.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "construction-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "costellofc.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "covaci.pro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "craazzyman21.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "crazy-cat.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "credittoken.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "criptolog.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "crm114d.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "crsmsodry.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cryptagio.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cryptojacks.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "csovek-idomok.hu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ctcom-peru.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cubebot.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cubing.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cursos-trabajadores.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cvchomes.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cyanghost.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cyberogism.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "czechcrystals.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "d2ph.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dailyemailinboxing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dailyrover.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dance-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dangr.zone", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "danielnaaman.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "danzac.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dapps.earth", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "darkwebnews.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "data-wing.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dataguidance.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "davidkennardphotography.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dcain.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "decoora.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "deejayevents.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "deep-chess.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "deepblueemail.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "degestamptepot.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dekko.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dental-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "der-windows-papst.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dermato.floripa.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "destinoytarot.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dia-de.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dickord.club", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dideeducacion.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "didefamilia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "didesalud.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "digitreads.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dimiskovska.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "discrypt.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "disinfestazione.verona.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "distribuidoraplus.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "djboekingskantoor.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "djvintagevinyl.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dmess.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dnsipv6.srv.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "docusearch.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "doge.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "doge.town", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "doki.space", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dolinathome.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dorpshuis-dwarsgracht.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dr-it.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drump-truck.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drwang.group", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dschwarzachtaler.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dsgnet.hu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dubious-website.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "duval.paris", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eastplan.co.kr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eatz-and-treatz.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "economics-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "edenming.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "effinfun.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eika.as", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eldenelesat.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "electrical-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "electroinkoophardenberg.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "elementarty.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "elitenutritionoficial.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eltip.click", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "emanuela-gabriela.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "encryptmycard.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "endofinternet.goip.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "enelacto.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "enjoy-israel.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "environmental-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eosol.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eosol.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eosol.services", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eosol.zone", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "equilime.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eromon.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "esgen.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eslint.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "essayace.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "essca.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "estherlew.is", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "esuretynew.azurewebsites.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "euroconthr.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eveonline.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "evtasima.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "examedge.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "exnovin.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "exordiumconcepts.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "experise.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "expertofficefitouts.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fabbro-roma.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "faceresources.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fahnamporn.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "faithcentercogop.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "falcona.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "farthing.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fdresearch.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "feli.games", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "felixaufreisen.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "feng-hhcm.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fierscleaning.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "film-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "finance-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fire-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fiziktedavi.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fizyoterapi.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "flare.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "flixhaven.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "flyingyoung.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "footloose.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "foreign-language-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fortknox.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "foundationrepairnebraska.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fpaci.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frankfurt-am-start.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frccsgo.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "freemomhugs.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "freessl.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "friendowment.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "friendsofgfwpc.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frozenjam.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fu639.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fu898.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "furaje-iasi.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fytcart.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "g6666g.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "galeriart.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gamblerhealing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gamemodding.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gamer-portal.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gametilt.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gatekiller.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "geography-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "geology-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "georgepancescu.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "getenv.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gettopquality.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gifudodo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gishiko.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "glaspe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "go-propiedades.cl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "goblintears.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "goedkopelaptopshardenberg.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "goldenruleemail.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gondelvaartdwarsgracht.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "goodquote.gq", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "graphic-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "greatskillchecks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "greenwaylog.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "groundlevelup.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gtxbbs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gustom.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hakkasangroup.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hakkasannightclub.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "haozhexie.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hashemian.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hbcu-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "health-and-beauty-news.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "healthandskinbeauty.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hellenicagora.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hikerone.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hinata-hidetoshi.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hirtzfr.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "history-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "holymartyrschurch.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "home-handymen.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "homeporn.stream", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "honey.beer", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "honoka.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hoooc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hospitality-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hostico.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hostmark.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hoverboardbarato.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hrsa.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "httpsalarm.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huininga.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huininga.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huininga.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "huniverse.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hunterjohnson.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hwlibre.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hysh.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iaminashittymood.today", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ianvisits.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ibe.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iblackfriday.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "icetiger.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "idesoft.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "idesoftinnovacion.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "idesoftinnovacion.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ihcr.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ijsclubwanneperveen.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ikumi.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "imperiodigital.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infinitescript.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infogram.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infotrac.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infraclass.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infralist.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "inframetro.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infrazine.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ingatlanrobot.hu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "insteagle.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "interior-design-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "internationalschool.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ipfire.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ipplans.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ipv4.co.il", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "isavings.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iskanderbroere.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "islavolcan.cl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "itspecialista.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "itsundef.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iurisnow.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ivy-league-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iwebolutions.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jacksonhu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jardineriaon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jashvaidya.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "javierlorente.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jaxfstk.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jedmud.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jglover.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "job-ofertas.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jobsnet.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "joeyvanvenrooij.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "joshuameunier.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "journalism-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "joynadvisors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "joysinventingblog.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jpralves.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "js3311.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "js8855.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jsdelivr.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jsonsinc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jtcjewelry.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "judytka.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "juergen-roehrig.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "justtalk.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jxltom.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kabulpress.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kamranmirhazar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kb88.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "keevitaja.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kerrnel.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ketaminecareclinic.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kevingsky.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kevinheslinphoto.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "killerkink.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kinkcafe.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kissoft.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kngkng.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kochinke.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kochinke.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kogax.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "konkai.store", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "koroknaimedical.hu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "koumakan.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "krisftp.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "krishouse.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kugelblitz.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "laac.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ladyofhopeparish.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lamafioso.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lamunyon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lapakus.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "larvatoken.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lasrecetascocina.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "launchmylifend.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lavitaura.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "law-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lawrencewhiteside.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lazyhelp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "learndev.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leaseplan.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leto12.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lewiscollard.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lg-waps.go.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lg-waps.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lgbt-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lhamaths.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lhgavarain.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lidtkemotors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lierrmm.space", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lifeboxhealthcare.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lijstje.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lijstje.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "linuxadictos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "literature-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "livinginhimalone.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ljc.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lng-17.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lohl1kohl.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "looseleafsecurity.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lord.sh", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "louisemisellinteriors.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "loveamber.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lovevape.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lovingthermo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lowcarblab.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lprcommunity.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lqs.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lucie.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lyam.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "m2il.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "madbicicletas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "madscientistwebdesign.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mail180.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "majlovesreg.one", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "makechanges.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mangnhuapvc.com.vn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "manualidadeson.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marek.pro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marketingbrandingnews.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marketingtrendnews.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "markus-keppeler.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "markuskeppeler.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marshallford.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "masautonomo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mascorazon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "massage-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "matbad.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "materassi.roma.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "math-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maxb.fm", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maxh.me.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maxmind.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mayoimobiliare.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mcsports.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mdrthmcs.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mechanics-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "med-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "media-service.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mediarithmics.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "medical-assistant-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "medik8.com.cy", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meditadvisors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meesteresmisty.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meps.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mercredifiction.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meridianfresno.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meteocat.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meteorologiaenred.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mexico.sh", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mfpccprod.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "michaelschule-rheine.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "michaelslatkine.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "midrandplumber24-7.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "midwestplus.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mikekreuzer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mikupic.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "milkingit.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mine-pixl.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "miniwallaby.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mitdip-mit-group-ch.azurewebsites.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mizucoffee.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mkjl.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mlii.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "moe.wtf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "moeali.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "moeli.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "momentsofimpact.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mormon-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mostlikelyto.fail", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "msize48.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mujerfutura.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myconnect.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mycookrecetas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myhuthwaite.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mypizza-bremen.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mypnu.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myred.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myzhili.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nailtodayminneapolis.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nakliyat.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nange.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nationalpassportservice.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "navegos.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ndatc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ndfirefighter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ndphp.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ndpigskin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nebracy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nebula.exchange", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "neohu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nextclouddarwinkel.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nii2.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nmmlp.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nogetime.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "noobow.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "noomist.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "noroshi-burger.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "northdakotahealthnetwork.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nosproduitsdequalite.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nowall.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "npregion.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nshipster.co.kr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nshipster.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nuclea.id", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nutridieta.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nyghtus.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "occupational-therapy-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "odhosc.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ofertasadsl.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "olfsecane.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "omeopatiadinamica.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "omniaclubs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ondevamosjantar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "onegoodthingbyjillee.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ontsc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ontservice.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "openmirrors.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "openroademail.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "opure.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oriondynamic.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "orocojuco.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "otmo7.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "otoblok.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "otokiralama.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "out-of-scope.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ovabag.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "owall.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "owncloud.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oxzeth3sboard.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oyashirosama.tokyo", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oysterworldwide.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "padkit.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pandkonijn.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paniyanovska.ua", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "panjee.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "papion.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paradise-travel.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "patrocinio.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paul-barton.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pcreparatiehardenberg.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "peertube.social", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "peintrenomade.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "peoplerange.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "performing-art-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "petroleum-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "petrotranz.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "philosophy-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "physics-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pilot-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pirates.click", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pitbullsecuritysolutions.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pixel-kraft.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "plan-it-events.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "plastiflex.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "police-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "political-science-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornalpha.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornbay.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "porndragon.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornflare.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "porngay.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornimg.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornless.biz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornmax.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornmega.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornport.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornshop.biz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornstop.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornsuper.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornteddy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornultra.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "porny.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "portalcarapicuiba.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "poschtiliste.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "postura-corretta.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "powerblanket.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "powerinboxperformance.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "praha-9.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "prashchar.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pratopronto.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pratorotoli.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "precisionmachineservice.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "preload.link", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "premtech.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "presbyterian-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "prettygirlcheats.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "privatevoid.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "progettograjau.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "propermatches.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "providerlijst.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "psicologo-especialista-barcelona.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "psicologo-infantil-barcelona.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "psycolleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pxl-mailtracker.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "q1q2q3.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "qdabogados.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "quote.gq", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "r1a.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rada-group.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "radegundisfest.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "radiofmimagen.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "radior9.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "raevinnd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rain.bz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ratelsec.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rayan-it.ir", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rbx-talk.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rdmc.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rdxsattamatka.mobi", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "recetin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "redfoxmarketiing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "redleslie.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rekonstrukcestatu.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "renee.today", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "resinflooringcompany.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "respecttheflame.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "revivalprayerfellowship.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rhetorical.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "riverbendroofingnd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "riverridgecc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "robbiecrash.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rolandlips.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rolandlips.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "romun.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "romy.tw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "roseon.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "roshhashanahfun.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royalfoxrealtor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "royaltube.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rys.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sacharidovejednotky.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saint-cyril.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saintpatrick-norristown.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sakura.zone", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sakuracdn.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "samanacafe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "samlaw.co.nz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sanemind.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "savingsoftheyear.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "schgroup.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "schoeller.click", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scholar.group", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scholar.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scholarstyle.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scholledev.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "seachef.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "secpoc.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "secretary-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "securitygladiators.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "securityzap.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "seg-sys.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "seguros-de-salud-y-vida.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "senego.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "senobio.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "seo-dr-it.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "seoankara.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sexflare.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sgitc.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shaadithailand.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shinglereplacementlv.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shiqi.one", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shivammathur.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shop4d.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shopperexperts.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shopstasy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "silverswanrecruitment.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "site-helper.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "skk.moe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "skyscapecanopies.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "smokeus.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "smtp.in.th", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sntravel.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "social-work-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sociology-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "softonic.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "softonic.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "softonic.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "softwarehardenberg.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "somoshuemul.cl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "songshuzuoxi.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sonix.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "soothemobilemassage.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "soren.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "soupcafe.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "southdakotahealthnetwork.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "southflanewsletter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "soydemac.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "specdrones.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sperandii.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sports-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "squeakql.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ssrfq.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sssppp.gq", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stannri.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stanthony-hightstown.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "starsguru.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stefanvd.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stefpastoor.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "steuerkanzlei-und-wirtschaftsberater-manke.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stgeorgegolfing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stgm.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stickstueb.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stisaac.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stisidores.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stjosephspringcity.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stmariagoretti.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stmattsparish.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stolbart.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stpatrickbayshore.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "streamblur.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "strosemausoleum.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "studisys.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "successdeliv.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "supcoronado.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "surveillance104.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swiss-vanilla.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swiss-vanilla.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swissvanilla.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swissvanilla.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swn-nec.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "synack.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "syplasticsurgery.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tam-safe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tanacio.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tatuantes.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "teamtravel.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "technologyhound.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "telefonsinyalguclendirici.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "terrorbilly.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "test-aankoop.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "test-achats.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "theatre-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thepharm.co.nz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "therapiemi.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "therhetorical.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thermorecetas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thestyleforme.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thetotalemaildelivery.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "theverybusyoffice.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thevoya.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thewayofthedojo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ticketdriver.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "timelessskincare.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tinkerers-trunk.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tlyphed.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tmas.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "todoereaders.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tohochofu-sportspark.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toldositajuba.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tom94.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tomik.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toontownrewritten.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toppercan.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "torontoaccesscontrol.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tosolini.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "totalemaildelivery.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toursthatmatter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "transmute.review", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trendreportdeals.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trish-mcevoy.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "triticeaetoolbox.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trueassignmenthelp.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trueessayhelp.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trustedbody.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "truyenfull.vn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tuev-hessen.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tuimprenta.com.ar", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tweedehandslaptophardenberg.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "uaci.edu.mx", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ubcani.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ubuntu18.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ultramax.biz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ultraporn.biz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "universidadvg.edu.mx", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "updatehub.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "valentin-dederer.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "valuechain.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "varyrentacar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vasp.group", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "verein-zur-pflege-der-geselligkeit.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "verwandlung.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "verzekeringencambier.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "veterinary-colleges.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "veteriner.name.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "villu.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vinahost.vn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vincentswordpress.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vinistas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "virtual.hk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "visitbeulah.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vitavie.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "viveconsalud.club", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vouchinsurance.sg", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vvzero.cf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wacky-science.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wakhanyeza.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wangwill.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wanvi.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wayfairertravel.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "weather-schools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "weather.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "webgap.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "webxr.today", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "werkslimreisslim.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "westernfrontierins.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "westlaketire.pt", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wesupportthebadge.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wgcp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.com.tr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.fitness", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.life", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.mom", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.pet", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikihow.vn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wikipiedi.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "windowsnoticias.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wineparis.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wishlist.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wolke7.wtf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wonderbits.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "woodstocksupply.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "worca.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "worcade.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "workeria-personal.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "woti.dedyn.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wp-webagentur.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "writer24.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wunschzettel.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wuwuwu.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xmodule.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn----8sbjfacqfqshbh7afyeg.xn--80asehdb", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--158h.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--57h.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--8bi.gq", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--et8h.cf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--is8h6d.gq", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xr1s.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xss.name", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xsuper.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xtrememidlife.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xuehao.net.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xuehuang666.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xxxred.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xxxsuper.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yanuwa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yayart.club", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ykhut.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yosida-dental.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yourfuntrivia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yourgadget.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yuuta.moe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zabavno.mk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zdymak.by", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zeal-and.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zeestraten.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zenram.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zjyifa.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zoop.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zp25.ninja", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zqstudio.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zyzsdy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zz295.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "08detaxe.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "0x48.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "10xiuxiu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "2012.ovh", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "2chan.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "2chan.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "4x4tt.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "65d88.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aaex.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "actualadmins.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "adnanoktar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "advancedsurgicalconsultantsllc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "adventaholdings.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aegisinsight.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aeronautix.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "akademie-frankfurt.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "albertcuyp-markt.amsterdam", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "albinma.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "algeriepart.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alinbu.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "almut-zielonka.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alstertouch.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alstertouch.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "am-executive-consulting.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "amandadamsphotography.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "anabolic.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "antaresmedia.com.py", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "antvklik.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "anwalt.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aoil.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "argonium.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "armin-cme.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "armin-cpe.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "atlanticpediatricortho.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "awecademy.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "axiatancell.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "azsupport.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bagelcraft.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "baserverz.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bauernmarkt-fernitz.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "baur.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "beer9.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bellyandbrain.amsterdam", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "biehl.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "biehl.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blackjackballroomcasino.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blackroot.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blogsdna.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blokmy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bonniecoloring.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bonniedraw.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bonsi.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "borneodictionary.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "boulderswap.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "breaky.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brightworkcreative.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brody.digital", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brody.ninja", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "brycecanyon.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "buena-vista.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "builtory.my", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "burzmedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "busyon.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bytrain.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cadcreations.co.ke", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "caldaro.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "calebennett.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "callidus-vulpes.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cargomaps.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "carrosserie-dubois.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "catering-xanadu.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cecame.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "centa-am.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cespri.com.pe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cg-goerlitz.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chattersworld.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chauffage-budget.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chci-web.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "christwaycounseling.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "clush.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cme-colleg.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "co2eco.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "codecommunity.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "codevat.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "codimaker.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "coinroom.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "complexorganizations.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "comvos.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cordejong.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "corvax.kiev.ua", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cpe-colleg.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cplala.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "craftsmany.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "createcos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "creditta.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "crimesolutions.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cstrong.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cxadd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "d88688.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "d88871.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "d88988.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "darklaunch.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "davypropper.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dedicatedtowomenobgyn.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "deepinsight.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "deliveryiquique.cl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "destinyofthephoenix.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "desuchan.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "desuchan.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "diamond-hairstyle.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dinerroboticurology.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "disinfestazioni.gorizia.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dive-japan.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dlcwilson.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dojozendebourges.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "doleta.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "domwkwiatach.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dongjingre.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dostalsecurity.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dragonwolfpackaquaria.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drakecommercial.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dreamlordpress.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dreatho.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drinkgas-jihlava.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drlutfi.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drpetervoigt.ddns.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "drschlarb.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dstvinstallalberton.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dtpak.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dvdinmotion.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eco2u.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "efipsactiva.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ekostrateg.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eldercare.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "elderjustice.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eletor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eletor.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eliaskordelakos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "elielaloum.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eligibilis.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "elo-forum.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "epicdowney.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "esc.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "estetistarimini.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "estudio21pattern.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eurodentaire.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "everettsautorepair.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "excelhot.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "expe.voyage", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "expertvagabond.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "exxo.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fabian-klose.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fabian-klose.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fabian-klose.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "faidatefacile.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fantasticservicesgroup.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fateitalia.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "faultlines.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fbi.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fccarbon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "feeeei.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "feuerwehr-gebirge.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "finkmartin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "firekoi.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fixed.supply", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "flavinus.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "floresvilleedc.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "formulastudent.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fotoboxvysocina.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fpsclasico.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fq.mk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "freebies.id", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "freesslcertificate.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "friedenauer-herbstfest.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frownonline.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "frpg.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fs-g.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fsg.one", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "futaba-works.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "g-ds.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gaengler.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "galilel.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gameanalytics.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gamechefpummarola.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gcodetools.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gorealya.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "happybirthdaywisher.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "healthdata.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "heartyapp.tw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "henke-home.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hiparish.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hoish.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "holycrossphl.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hostinecpodlipou.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hpage.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "humass.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iaitouzi.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ibykos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ifly.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ikudo.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ilovequiz.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ilovethiscampsite.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "im-haus-sonnenschein.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "indiecongdr.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "info-screen-usercontent.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "interpol.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "introverted.ninja", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "invasivespeciesinfo.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "invinoaustria.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "invinoaustria.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ipid.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iszy.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "itap.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "itsv.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iwyc.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jack2celebrities.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jacksorrell.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "javik.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jazminguaramato.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jazzy-feet.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jikegu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jlpn.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jlpn.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "joanofarcmtcarmel.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "joinus-outfits.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jonasled.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "joompress.biz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jtconsultancy.sg", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jwod.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "k-bone.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kalkulacka-havarijni.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kanzlei-gaengler.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kara-fabian.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "karewan.ovh", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "katzrkool.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kevin-darmor.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kimono-rental-one.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kleding.website", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "klose.family", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "klubxanadu.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "koenzk.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ks88.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kunra.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kurumi.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kvalitetsaktiepodden.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "la-fenice-neheim.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "labcenter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lamontre.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lazistance.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lcacommons.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "led-jihlava.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leekspin.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lemazol.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lenou.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leontiekoetter.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lifetree.network", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ligadosgames.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "livi.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "livi.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "livres-et-stickers.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lizmooredestinationweddings.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "llemoz.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "llnl.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "loanreadycredit.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "locomocosec.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "loli.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "long139.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "long18.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "long688.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "longtermcare.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "loteamentomontereiitu.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lovemanagementaccounts.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lsscreens.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "m-monitor.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "made-to-usb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "magicalshuttle.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maillink.store", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "majorpaintingco.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "malik.holdings", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mambas.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "manti.by", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maquininhamercadopoint.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marinecadastre.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mariskavankasbergen.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marketingbrandingnews.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marksmanhomes.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "marsikelektro.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mazenjobs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mecaniquemondor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "medellinapartamentos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mediahaus.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "medpeer.co.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "megakoncert90.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "merakilp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mers.one", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "metric.ai", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mglink.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "microzubr.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "minfin.gov.ua", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "minutashop.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mkie.cf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mmmaximaliselmeny.hu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "moekes.amsterdam", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mokken-fabriek.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "montgomerysoccer.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mostholynameofjesus.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mruczek.ga", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mssora.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mta.org.ua", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mtravelers.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "muz2u.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mydoc.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mygedit.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myweddingaway.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mzstatic.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nefro-cme.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "neheim-huesten.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "neuber.uno", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nfpors.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ngt.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nifc.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nihtek.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nij.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ninetailed.ninja", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nixtest.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nkforum.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "northcreekresort.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ntsb.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nutrition.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nvtc.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "obrienswine.ie", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ocni-ambulance-most.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "okurapictures.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oldsticker.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oldstmary.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "olympeakgaming.tv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "osti.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ourladymountcarmel.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ourladyofcalvary.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ourladyoftheassumptionchurch.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ourladyqueenofmartyrs.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paccolat.name", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paginaweb4u.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "panzerscreen.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "patrick21.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "peliweb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pension-am-alten-waschhaus.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "peperstraat.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "philipssupportforum.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "philosophy.moe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pikalongwar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pintosbeeremovals.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pivniraj.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pornsocket.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pracevjihlave.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "practisforms.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "presidio.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "prihatno.my.id", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "proeflokaalbakker.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "progresswww.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "projectsafechildhood.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "promods.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "qtmsheep.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "raspitec.ddns.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "razvanburz.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "realpropertyprofile.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rediverge.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "refu.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "regeneo.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "reginfo.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "reifr.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "reo.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "responsepartner.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "richardfeinbergdds.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rocis.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rokass.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rteguide.ie", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rteworld.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rths.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rthsoftware.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rttss.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ryssl.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saidtezel.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sainthelenas.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saintjamestheapostle.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saintjohn-bocaraton.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "salandalairconditioning.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "salidaswap.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saludyvida.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saorsat.tv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sazavafest.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "schlarb.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "schneidr.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "schwarz-gelbe-fuechse.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scra.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sebastian-tobie.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sendtrix.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "serinamusic.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "servicemembers.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sewa.nu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sfg-net.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sfg-net.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sfg-net.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sfg-net.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shee.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shinsyo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "silica-project.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "silica-project.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sinfonietta-meridiana.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "smokefree.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "soontm.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sopo.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sotai.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "spartacuslife.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "spectroom.space", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "spectrum.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sportabee.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "st-bede.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "steemyy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stfrancisnaugatuck.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stgabrielstowepa.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sthenryrc.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stm32f4.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stmichaelunion.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "studio44.fit", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "studiohomebase.amsterdam", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stuffiwouldbuy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sullenholland.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "supioka.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "supmil.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sv-bachum-bergheim.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swiftcashforcars.com.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "taiwania.capital", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "taiwania.vc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "taiwaniacapital.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "taiwaniacapital.com.tw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "taiwaniacapital.tw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tansuya.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "taxi-jihlava.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "techbrawl.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "the-pack.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thelifeofmala.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thevenueofhollywood.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thrillernyc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tiekoetter.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tilman.ninja", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "toontown.team", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "topdroneusa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "topgshop.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trade.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tradernet.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tradernet.ru", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "travelemy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "treussart.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tribaljusticeandsafety.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "trix360.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ulitroyo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "usaseanconnect.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "usdoj.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "userra.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "usphs.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ussst.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ustugov.kiev.ua", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ustugova.kiev.ua", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "valek.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "valkova.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "valorizofficial.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "valueofblog.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vaporpunk.space", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "variomedia.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "varshasookt.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vauceri.hr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "veneerssandiego.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vila-eden.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "villa-eden.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "virtualspeech.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vlakem.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vos-systems.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vseomedia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vtuber.art", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "webutils.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "weems.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "whirlpool.net.au", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "whiskygentle.men", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "whitehouseconferenceonaging.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "winningattitudeawards.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "worker.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "worldsinperil.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wyydsb.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wyydsb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wyydsb.xin", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xanadu-auto.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xanadu-catering.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xanadu-golf.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xanadu-trans.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xiangfajia.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xliang.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xmine128.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--ehqw04eq6e.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yellotalk.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yhenke.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "youpickfarms.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "your-waterserver.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "youthrules.gov", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yxs.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zeibekiko-souvlaki.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zirka24.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zl0iu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zl8862.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zunda.cafe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zxc.science", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "1895media.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "1oaklasvegas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "2495dentalimplants.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "5dwin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "5dwin.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "a-ztransmission.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aboveaverageplumbing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "absoluteautobody.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "accurateautobodywa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "accutint.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "activeexcavator.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "advanceddieselspokane.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "advogatech.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aefcleaning.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aeropole.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aeropole.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aerotechcoatings.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "affittialmare.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "affordableenvironmental.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "agemfis.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "agic.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ai.je", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aidanmitchell.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "aidanmitchell.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airbossofamerica.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airlibre-parachutisme.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airswap.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "airweb.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alibiloungelv.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "alis-test.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allpointsheating.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allstarcashforcars.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allterrainfence.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "allweatherlandscaping.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "amautorepairwa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "amica-travel.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "anothervps.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "apluswaterservices.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ariana.wtf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "arlingtonelectric.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "armeo.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "artificialgrassandlandscaping.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "askcascade.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "atomic.red", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "authenticwoodcraft.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "autoproshouston.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "awardplatform.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "babsbibs.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "balmofgilead.org.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bartkramer.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bcyw56.live", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "beforeyoueatoc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "belavis.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bellinghamdetailandglass.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "berinhard.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bestkenmoredentists.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bestplumbing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "betaclouds.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bilibili.link", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "billkochman.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "biscuitcute.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bizbudding.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bizcash.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blackpi.dedyn.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "blenderinsider.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bluesunhotels.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bodyworksautorebuild.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bostonadvisors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bothellwaygarage.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bryggebladet.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bulktshirtsjohannesburg.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bungee.pw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "bungee.systems", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "butteramotors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "buyebook.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "buzzcontent.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "calculadoraconversor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "canyons.media", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "carroattrezzimilanodaluiso.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "casa-lunchbreak.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "case-vacanza-salento.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cathosting.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "centennialseptic.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cetangarana.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chaffeyconstruction.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chancekorte.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chascrazycreations.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chatgrape.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "chenpei.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "choiceautoloan.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "christian-krug.website", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "churchofsaintrocco.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "citizenslasvegas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "civicforum.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "clash-movies.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cleaningbyrosie.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "clevergod.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "codyscafesb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "coffeetime.fun", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cognicom-gaming.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "communitymanagertorrejon.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "computerbas.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "conpath.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "conradsautotransmissionrepair.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "consultoriadeseguranca.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cooking-sun.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "coolcamping.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "copperandtileroofing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "counterhack.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "creditscoretalk.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cryptomaniaks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "curtislaw-pllc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "cuxpool.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "danieljstevens.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "danielnaaman.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "danielnaaman.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "data3w.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "davisdieselandautorepair.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ddosolitary.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dearly.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "decher.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "depannage-traceur.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dez-online.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dicesites.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "didigotoffer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dinstec.cl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "direct365.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dirtyincest.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "discountlumberspokane.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "disk.do", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dofux.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "doitauto.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "donaldm.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "donovankraag.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dostrece.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dougsautobody.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "douzer.industries", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dreamdivers.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dreamkitchenbath.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dreammaker-nw.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dreammakerremodelil.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dreammakerutah.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dui805.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "dzivniekubriviba.lv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "e6ex.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eastsideroofingcontractor.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "easyeigo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "easymun.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eden.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "edupool.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eftelingcraft.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "electriciankemptonpark24-7.co.za", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "emisia.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eos-classic.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "escolibri.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "esport-battlefield.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "eurocars2000.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "evenwallet.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "evolutionsmedicalspa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "expeditiegrensland.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "extradivers-worldwide.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "feuerwehr-coesfeld.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fixlasvegas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "floogulinc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "flushlife.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "foixet.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fortuna-apotheke-lahnstein.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fpt-technojapan.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "francoisharvey.ca", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "fukuiedu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gameindustry.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gessettirotti.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gla-hyperloop.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "glassexpertswa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "golangnews.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "goow.in", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "gqmstore.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "greice.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "groenders.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "grupoproabienesraices.com.mx", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "harveysautoservice.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "havarijna-sluzba-bratislava.sk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hazeltime.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hazeltime.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hdkandsons.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hdv.paris", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "healthand-beautynews.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "heatingpartswarehouse.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hellobrian.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "henrysautodetail.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "heracles-hotel.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "herringboneeats.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "herzogglass.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hetluisterbos.be", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hijackpost.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hnn.net.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "horeco.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "htp2.top", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "humexe.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "hytzongxuan.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "iamcryptoki.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ianbrault.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ibeep.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ignitelocal.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ijr.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ikebuku.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ikuuuu.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ikxkx.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "impendulo.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "impressivebison.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "incestporn.tv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "industriemeister.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infrabeep.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infradrop.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infranox.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infrapilot.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infraping.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infraspin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infratank.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "infravideo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "insidebedroom.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "interstateautomotiveinc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "intreaba.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "isdecolaop.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "itjob.ma", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ivoryonsunset.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "japanesemotorsports.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jelenkovic.rs", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jnordell.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jodyshop.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "js-web.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "julienschmidt.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "justsmart.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "jvlandscapingservices.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "k-system.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kenscustomfloors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kexueboy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "khushiandjoel.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kingsgateseptic.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kjelltitulaer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kohoutsautomotive.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kohu.nz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "komplet.sk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kooer.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "koplancpa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kringloopwinkelsteenwijk.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "krukhmer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ktsofas.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kuaitiyu.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kumilasvegas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kxline.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "kxway.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lakewoodcityglass.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lapicena.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leegyuho.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "legalsen.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lescourtiersbordelais.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "letssackcancer.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "letzchange.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "leveluplv.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lg0.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lie.as", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "liljohnsanitary.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lilylasvegas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lintellift.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "liyunbin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lolic.xyz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lolico.moe", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lpcom.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lrdo.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "luowu.cc", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "luvplay.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "lynsec.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "machinetransport.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maitheme.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mandynamic.gr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "manonandre-avocat.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maomao.blog", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maplehome.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "margots.biz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "margots.life", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "margots.tech", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "markus-blog.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "martialarts-wels.at", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "massvow.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "maxbachmann.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mbk.net.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meerman.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "meermantechnischburo.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "metasysteminfo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "metron-eging.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "metron-networks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mikkelladegaard.dk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "minecraftstal.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "miningtronics.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "morbius.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mosaicmarble.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "movacare.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mukilteodentalarts.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mukilteoeuropeanautorepair.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "musa.gallery", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "musicdemons.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "muurlingoogzorg.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "myonlinevehicleinsurance.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "mypartybynoelia.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nbnnetwork.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "neighborhoodelectricwa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nejkasy.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nenkin-kikin.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "neurostimtms.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nicesleepo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nicolasfriedli.ch", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nipit.biz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "njujb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nsofficeinteriors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nunesgh.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nwapproval.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nwautorebuild.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nwimports.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "nwperformanceandoffroad.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "o5.cx", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "octagongroup.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "octocaptcha.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "odvps.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "olastrafford.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "online-textil.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "online-textil.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "online-textil.sk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "onlinehashfollow.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "onlineprofecional.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "onlinetextil.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "onyxcts.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oshershalom.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "oveweddings.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "palary.work", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "palestra.roma.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "parquet-lascazes.fr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paulsnar.lv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "payexpresse.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "paysbuy.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pebbleparents.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pepeelektro.sk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "percyflix.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "petermaar.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "philipzhan.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "philslab.cloud", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "photosquare.com.tw", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "piratebay.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "planview.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "plumbingandheatingspecialistnw.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "polygraphi.ae", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "poodleassassin.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pro-ben.sk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "promedyczny.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "properchels.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "pushoflove.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "qaq.sh", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "qiu521119.host", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "questoj.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "racdek.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rafleatherdesign.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rainiv.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "raphaelschmid.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rct.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "readmusiccoleman.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "realincest.tv", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "reconexion.life", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "reddyai.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "redpact.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "redsquarelasvegas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "reinhardtsgermanautorepair.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "remptmotors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "resourcesmanagementcorp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ricksfamilycarpetcleaning.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rideways.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ripcordsandbox.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "riverbed.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "robotics.plus", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "roofingandconstructionllc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rookvrij.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "rumartinez.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sadeghian.us", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saintmarkchurch.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saludmas.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sammyslimos.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sandboxfp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "santiagogarza.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "saudiarabiaevisa.co.uk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "savaari.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sb-sd.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "schnuckenhof-wesseloh.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scohetal.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "scotttopperproductions.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "searsucker.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "seedisclaimers.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "semirben.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "senemusique.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "seojames.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shadowsocks.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shangzhen.site", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shark.cat", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shens.ai", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sherut.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shopific.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "shulker.store", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "siduga.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sigurnost.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "silverfirsdental.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "simkova-reality.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "simplecmsdemo.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "simplecrypt.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sion.info", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "skoolergraph.azurewebsites.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "slysend.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "smartass.space", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "smartmompicks.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "smartthursday.hu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "snargol.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sno-kingroofing-gutters.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "snohomishsepticservice.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sodamakerclub.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sofortimplantate-muenchen.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sooscreekdental.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "soundtruckandautorepair.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "southcountyplumbing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "spakhmer.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "spokaneexteriors.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "spokanepolebuildings.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stacklasvegas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "stekosouthamerica.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "studioavvocato24.it", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "subjektzentrisch.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "superdroni.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "supra.tf", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "svorcikova.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "sweethomesnohomishrenovations.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swingular.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "swivells.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "taylorreaume.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tf7879.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thebeachessportsphysio.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "themenzentrisch.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "theoc.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thesearchenginepros.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "thevisasofoz.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tibicinagarricola.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tipstersweb.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tipulnagish.co.il", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tom-kurka.cz", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tractorfan.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tranquillity.se", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "transmitit.pl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "transumption.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "treeworkbyjtec.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tricks.clothing", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tutoref.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "tuxrtfm.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "uchiha.ml", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "ugb-verlag.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "umbrellaye.online", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "urbizoroofing.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "uzzamari.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vapingdaily.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "venuedriver.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "verios.com.br", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vestd.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vietnamguide.co.kr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vincentoshana.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vingt.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "visasofoz.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vivy.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vos-systems.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vos-systems.es", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vos-systems.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vos-systems.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vpntech.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vqporn.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "vsd.sk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wapoolandspa.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wblautomotive.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "weingaertner-it.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wem.hr", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wetrepublic.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wette.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wfl.ro", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "whattominingrigrentals.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "whitebirdclinic.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "whiteknightsafelockinc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wolfvideoproductions.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "woodinvillesepticservice.net", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wsldp.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wtfsec.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wxkxsw.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "wyysoft.tk", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xeryus.nl", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xfcy.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xgzepto.cn", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xlui.me", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--irr.xn--fiqs8s", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xn--oiqt18e8e2a.eu.org", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "xsteam.eu", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yans.io", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yellowtaillasvegas.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yeskx.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yourlanguages.de", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "yuuki0xff.jp", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zhaopage.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zjuqsc.com", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zk.com.co", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, + { "name": "zom.bi", "policy": "bulk-1-year", "mode": "force-https", "include_subdomains": true }, // END OF 1-YEAR BULK HSTS ENTRIES // Only eTLD+1 domains can be submitted automatically to hstspreload.org, @@ -56888,6 +59885,8 @@ { "name": "aka.ms", "policy": "custom", "mode": "force-https", "include_subdomains": true }, { "name": "go.microsoft.com", "policy": "custom", "mode": "force-https", "include_subdomains": true }, { "name": "typewritten.net", "policy": "custom", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.com", "policy": "custom", "mode": "force-https", "include_subdomains": true }, + { "name": "airbnb.tools", "policy": "custom", "mode": "force-https", "include_subdomains": true }, // IP Address { "name": "1.0.0.1", "policy": "custom", "mode": "force-https", "include_subdomains": false }, // No subdomains @@ -57092,6 +60091,31 @@ { "name": "apprenticeship.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, { "name": "apprenticeships.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, { "name": "ai.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "cityofeastpointemi.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "cityofwadley-ga.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "elbaal.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "hig.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "joinamericacorps.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "mimm.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "mycolorado.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "republicmo.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "rincon-nsn.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "safemt.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "usagm.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "claibornecountytn.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "delcopa.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "eastpeoria-il.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "evansville-wy.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "fbf.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "fortoglethorpega.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "gilescountytn.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "glencoveny.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "gonzalesca.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "kielwi.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "rva.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "sequatchiecountytn.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "votewa.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, + { "name": "zerowastesonoma.gov", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, { "name": "bmoattachments.org", "policy": "public-suffix-requested", "mode": "force-https", "include_subdomains": true }, // END OF ETLD-OWNER REQUESTED ENTRIES |