merge mozilla-central to autoland. r=merge a=merge
authorSebastian Hengst <archaeopteryx@coole-files.de>
Sun, 24 Sep 2017 23:53:44 +0200
changeset 669697 b097014498107d5b56744b2946717dae2747cf2d
parent 669696 e5c4c1634e3af703e873dbbb1559d9d9ddb4faaa (current diff)
parent 669591 b44e80e0590e6eed86a1902365424673c8c2eaec (diff)
child 669698 f2b6ef09701cda49588a14fea8831ca98d142a7b
push id81398
push userhikezoe@mozilla.com
push dateMon, 25 Sep 2017 08:14:31 +0000
reviewersmerge, merge
milestone58.0a1
merge mozilla-central to autoland. r=merge a=merge
layout/painting/nsDisplayList.cpp
--- a/accessible/base/Logging.cpp
+++ b/accessible/base/Logging.cpp
@@ -681,17 +681,17 @@ logging::Tree(const char* aTitle, const 
 
   nsAutoString level;
   Accessible* root = aRoot;
   do {
     const char* prefix = aPrefixFunc ? aPrefixFunc(aGetTreePrefixData, root) : "";
     printf("%s", NS_ConvertUTF16toUTF8(level).get());
     logging::AccessibleInfo(prefix, root);
     if (root->FirstChild() && !root->FirstChild()->IsDoc()) {
-      level.Append(NS_LITERAL_STRING("  "));
+      level.AppendLiteral(u"  ");
       root = root->FirstChild();
       continue;
     }
     int32_t idxInParent = root != aRoot && root->mParent ?
       root->mParent->mChildren.IndexOf(root) : -1;
     if (idxInParent != -1 &&
         idxInParent < static_cast<int32_t>(root->mParent->mChildren.Length() - 1)) {
       root = root->mParent->mChildren.ElementAt(idxInParent + 1);
@@ -719,17 +719,17 @@ logging::DOMTree(const char* aTitle, con
 {
   logging::MsgBegin(aTitle, "%s", aMsgText);
   nsAutoString level;
   nsINode* root = aDocument->DocumentNode();
   do {
     printf("%s", NS_ConvertUTF16toUTF8(level).get());
     logging::Node("", root);
     if (root->GetFirstChild()) {
-      level.Append(NS_LITERAL_STRING("  "));
+      level.AppendLiteral(u"  ");
       root = root->GetFirstChild();
       continue;
     }
     if (root->GetNextSibling()) {
       root = root->GetNextSibling();
       continue;
     }
     while ((root = root->GetParentNode())) {
--- a/caps/ExpandedPrincipal.cpp
+++ b/caps/ExpandedPrincipal.cpp
@@ -70,17 +70,17 @@ ExpandedPrincipal::Create(nsTArray<nsCOM
       origin.AppendLiteral(", ");
     }
 
     nsAutoCString subOrigin;
     DebugOnly<nsresult> rv = ep->mPrincipals.ElementAt(i)->GetOrigin(subOrigin);
     MOZ_ASSERT(NS_SUCCEEDED(rv));
     origin.Append(subOrigin);
   }
-  origin.Append("]]");
+  origin.AppendLiteral("]]");
 
   ep->FinishInit(origin, aAttrs);
   return ep.forget();
 }
 
 NS_IMETHODIMP
 ExpandedPrincipal::GetDomain(nsIURI** aDomain)
 {
@@ -180,30 +180,30 @@ ExpandedPrincipal::AddonHasPermission(co
     }
   }
   return false;
 }
 
 nsresult
 ExpandedPrincipal::GetScriptLocation(nsACString& aStr)
 {
-  aStr.Assign("[Expanded Principal [");
+  aStr.AssignLiteral("[Expanded Principal [");
   for (size_t i = 0; i < mPrincipals.Length(); ++i) {
     if (i != 0) {
       aStr.AppendLiteral(", ");
     }
 
     nsAutoCString spec;
     nsresult rv =
       nsJSPrincipals::get(mPrincipals.ElementAt(i))->GetScriptLocation(spec);
     NS_ENSURE_SUCCESS(rv, rv);
 
     aStr.Append(spec);
   }
-  aStr.Append("]]");
+  aStr.AppendLiteral("]]");
   return NS_OK;
 }
 
 //////////////////////////////////////////
 // Methods implementing nsISerializable //
 //////////////////////////////////////////
 
 NS_IMETHODIMP
--- a/chrome/nsChromeRegistryChrome.cpp
+++ b/chrome/nsChromeRegistryChrome.cpp
@@ -214,17 +214,17 @@ nsChromeRegistryChrome::IsLocaleRTL(cons
  * LocaleService::GetAppLocaleAsLangTag.
  */
 nsresult
 nsChromeRegistryChrome::GetSelectedLocale(const nsACString& aPackage,
                                           bool aAsBCP47,
                                           nsACString& aLocale)
 {
   nsAutoCString reqLocale;
-  if (aPackage.Equals("global")) {
+  if (aPackage.EqualsLiteral("global")) {
     LocaleService::GetInstance()->GetAppLocaleAsLangTag(reqLocale);
   } else {
     AutoTArray<nsCString, 10> requestedLocales;
     LocaleService::GetInstance()->GetRequestedLocales(requestedLocales);
     reqLocale.Assign(requestedLocales[0]);
   }
 
   nsCString realpackage;
--- a/dom/base/XPathGenerator.cpp
+++ b/dom/base/XPathGenerator.cpp
@@ -42,19 +42,19 @@ bool ContainNonWordCharacter(const nsASt
 }
 
 /**
  * Get the prefix according to the given namespace and assign the result to aResult.
  * */
 void GetPrefix(const nsINode* aNode, nsAString& aResult)
 {
   if (aNode->IsXULElement()) {
-    aResult.Assign(NS_LITERAL_STRING("xul"));
+    aResult.AssignLiteral(u"xul");
   } else if (aNode->IsHTMLElement()) {
-    aResult.Assign(NS_LITERAL_STRING("xhtml"));
+    aResult.AssignLiteral(u"xhtml");
   }
 }
 
 void GetNameAttribute(const nsINode* aNode, nsAString& aResult)
 {
   if (aNode->HasName()) {
     const Element* elem = aNode->AsElement();
     elem->GetAttr(kNameSpaceID_None, nsGkAtoms::name, aResult);
@@ -78,34 +78,34 @@ void GenerateConcatExpression(const nsAS
   const char16_t* quoteBeginPtr = nullptr;
   for (; cur < end; ++cur) {
     if (char16_t('\'') == *cur) {
       if (nonQuoteBeginPtr) {
         result.Append(nonQuoteBeginPtr, cur - nonQuoteBeginPtr);
         nonQuoteBeginPtr = nullptr;
       }
       if (!quoteBeginPtr) {
-        result.Append(NS_LITERAL_STRING("\',\""));
+        result.AppendLiteral(u"\',\"");
         quoteBeginPtr = cur;
       }
     } else {
       if (!nonQuoteBeginPtr) {
         nonQuoteBeginPtr = cur;
       }
       if (quoteBeginPtr) {
         result.Append(quoteBeginPtr, cur - quoteBeginPtr);
-        result.Append(NS_LITERAL_STRING("\",\'"));
+        result.AppendLiteral(u"\",\'");
         quoteBeginPtr = nullptr;
       }
     }
   }
 
   if (quoteBeginPtr) {
     result.Append(quoteBeginPtr, cur - quoteBeginPtr);
-    result.Append(NS_LITERAL_STRING("\",\'"));
+    result.AppendLiteral(u"\",\'");
   } else if (nonQuoteBeginPtr) {
     result.Append(nonQuoteBeginPtr, cur - nonQuoteBeginPtr);
   }
 
   // Prepend concat(' and append ').
   aResult.Assign(NS_LITERAL_STRING("concat(\'") + result + NS_LITERAL_STRING("\')"));
 }
 
@@ -182,15 +182,15 @@ void XPathGenerator::Generate(const nsIN
   nsAutoString namePart;
   nsAutoString countPart;
   if (!nodeNameAttribute.IsEmpty()) {
     nsAutoString quotedArgument;
     QuoteArgument(nodeNameAttribute, quotedArgument);
     namePart.Assign(NS_LITERAL_STRING("[@name=") + quotedArgument + NS_LITERAL_STRING("]"));
   }
   if (count != 1) {
-    countPart.Assign(NS_LITERAL_STRING("["));
+    countPart.AssignLiteral(u"[");
     countPart.AppendInt(count);
-    countPart.Append(NS_LITERAL_STRING("]"));
+    countPart.AppendLiteral(u"]");
   }
   Generate(aNode->GetParentNode(), aResult);
   aResult.Append(NS_LITERAL_STRING("/") + tag + namePart + countPart);
 }
--- a/dom/base/nsContentUtils.cpp
+++ b/dom/base/nsContentUtils.cpp
@@ -1630,17 +1630,17 @@ nsContentUtils::SandboxFlagsToString(uin
     return;
   }
 
   aString.Truncate();
 
 #define SANDBOX_KEYWORD(string, atom, flags)                \
   if (!(aFlags & (flags))) {                                \
     if (!aString.IsEmpty()) {                               \
-      aString.Append(NS_LITERAL_STRING(" "));               \
+      aString.AppendLiteral(u" ");                          \
     }                                                       \
     aString.Append(nsDependentAtomString(nsGkAtoms::atom)); \
   }
 #include "IframeSandboxKeywordList.h"
 #undef SANDBOX_KEYWORD
 }
 
 nsIBidiKeyboard*
@@ -7188,17 +7188,17 @@ nsContentUtils::IsPatternMatching(nsAStr
   AutoJSContext cx;
   AutoDisableJSInterruptCallback disabler(cx);
 
   // We can use the junk scope here, because we're just using it for
   // regexp evaluation, not actual script execution.
   JSAutoCompartment ac(cx, xpc::UnprivilegedJunkScope());
 
   // The pattern has to match the entire value.
-  aPattern.Insert(NS_LITERAL_STRING("^(?:"), 0);
+  aPattern.InsertLiteral(u"^(?:", 0);
   aPattern.AppendLiteral(")$");
 
   JS::Rooted<JSObject*> re(cx,
     JS_NewUCRegExpObject(cx,
                          static_cast<char16_t*>(aPattern.BeginWriting()),
                          aPattern.Length(), JSREG_UNICODE));
   if (!re) {
     // Remove extra patterns added above to report with the original pattern.
--- a/dom/base/test/gtest/TestXPathGenerator.cpp
+++ b/dom/base/test/gtest/TestXPathGenerator.cpp
@@ -6,135 +6,135 @@
 
 #include "gtest/gtest.h"
 #include "XPathGenerator.h"
 #include "nsString.h"
 
 TEST(TestXPathGenerator, TestQuoteArgumentWithoutQuote)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("testing"));
+  arg.AssignLiteral(u"testing");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("\'testing\'"));
+  expectedResult.AssignLiteral(u"\'testing\'");
 
   nsAutoString result;
   XPathGenerator::QuoteArgument(arg, result);
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
 
 TEST(TestXPathGenerator, TestQuoteArgumentWithSingleQuote)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("\'testing\'"));
+  arg.AssignLiteral(u"\'testing\'");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("\"\'testing\'\""));
+  expectedResult.AssignLiteral(u"\"\'testing\'\"");
 
   nsAutoString result;
   XPathGenerator::QuoteArgument(arg, result);
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
 
 TEST(TestXPathGenerator, TestQuoteArgumentWithDoubleQuote)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("\"testing\""));
+  arg.AssignLiteral(u"\"testing\"");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("\'\"testing\"\'"));
+  expectedResult.AssignLiteral(u"\'\"testing\"\'");
 
   nsAutoString result;
   XPathGenerator::QuoteArgument(arg, result);
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
 
 TEST(TestXPathGenerator, TestQuoteArgumentWithSingleAndDoubleQuote)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("\'testing\""));
+  arg.AssignLiteral(u"\'testing\"");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("concat(\'\',\"\'\",\'testing\"\')"));
+  expectedResult.AssignLiteral(u"concat(\'\',\"\'\",\'testing\"\')");
 
   nsAutoString result;
   XPathGenerator::QuoteArgument(arg, result);
   printf("Result: %s\nExpected: %s\n", NS_ConvertUTF16toUTF8(result).get(), NS_ConvertUTF16toUTF8(expectedResult).get());
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
 
 TEST(TestXPathGenerator, TestQuoteArgumentWithDoubleQuoteAndASequenceOfSingleQuote)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("\'\'\'\'testing\""));
+  arg.AssignLiteral(u"\'\'\'\'testing\"");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("concat(\'\',\"\'\'\'\'\",\'testing\"\')"));
+  expectedResult.AssignLiteral(u"concat(\'\',\"\'\'\'\'\",\'testing\"\')");
 
   nsAutoString result;
   XPathGenerator::QuoteArgument(arg, result);
   printf("Result: %s\nExpected: %s\n", NS_ConvertUTF16toUTF8(result).get(), NS_ConvertUTF16toUTF8(expectedResult).get());
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
 
 TEST(TestXPathGenerator, TestQuoteArgumentWithDoubleQuoteAndTwoSequencesOfSingleQuote)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("\'\'\'\'testing\'\'\'\'\'\'\""));
+  arg.AssignLiteral(u"\'\'\'\'testing\'\'\'\'\'\'\"");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("concat(\'\',\"\'\'\'\'\",\'testing\',\"\'\'\'\'\'\'\",\'\"\')"));
+  expectedResult.AssignLiteral(u"concat(\'\',\"\'\'\'\'\",\'testing\',\"\'\'\'\'\'\'\",\'\"\')");
 
   nsAutoString result;
   XPathGenerator::QuoteArgument(arg, result);
   printf("Result: %s\nExpected: %s\n", NS_ConvertUTF16toUTF8(result).get(), NS_ConvertUTF16toUTF8(expectedResult).get());
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
 
 TEST(TestXPathGenerator, TestQuoteArgumentWithDoubleQuoteAndTwoSequencesOfSingleQuoteInMiddle)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("t\'\'\'\'estin\'\'\'\'\'\'\"g"));
+  arg.AssignLiteral(u"t\'\'\'\'estin\'\'\'\'\'\'\"g");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("concat(\'t\',\"\'\'\'\'\",\'estin\',\"\'\'\'\'\'\'\",\'\"g\')"));
+  expectedResult.AssignLiteral(u"concat(\'t\',\"\'\'\'\'\",\'estin\',\"\'\'\'\'\'\'\",\'\"g\')");
 
   nsAutoString result;
   XPathGenerator::QuoteArgument(arg, result);
   printf("Result: %s\nExpected: %s\n", NS_ConvertUTF16toUTF8(result).get(), NS_ConvertUTF16toUTF8(expectedResult).get());
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
 
 TEST(TestXPathGenerator, TestEscapeNameWithNormalCharacters)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("testing"));
+  arg.AssignLiteral(u"testing");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("testing"));
+  expectedResult.AssignLiteral(u"testing");
 
   nsAutoString result;
   XPathGenerator::EscapeName(arg, result);
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
 
 TEST(TestXPathGenerator, TestEscapeNameWithSpecialCharacters)
 {
   nsAutoString arg;
-  arg.Assign(NS_LITERAL_STRING("^testing!"));
+  arg.AssignLiteral(u"^testing!");
 
   nsAutoString expectedResult;
-  expectedResult.Assign(NS_LITERAL_STRING("*[local-name()=\'^testing!\']"));
+  expectedResult.AssignLiteral(u"*[local-name()=\'^testing!\']");
 
   nsAutoString result;
   XPathGenerator::EscapeName(arg, result);
   printf("Result: %s\nExpected: %s\n", NS_ConvertUTF16toUTF8(result).get(), NS_ConvertUTF16toUTF8(expectedResult).get());
 
   ASSERT_TRUE(expectedResult.Equals(result));
 }
--- a/dom/fetch/InternalRequest.h
+++ b/dom/fetch/InternalRequest.h
@@ -136,17 +136,17 @@ public:
   // request's url list.
   void
   GetURL(nsACString& aURL) const
   {
     aURL.Assign(GetURLWithoutFragment());
     if (GetFragment().IsEmpty()) {
       return;
     }
-    aURL.Append(NS_LITERAL_CSTRING("#"));
+    aURL.AppendLiteral("#");
     aURL.Append(GetFragment());
   }
 
   const nsCString&
   GetURLWithoutFragment() const
   {
     MOZ_RELEASE_ASSERT(!mURLList.IsEmpty(),
                        "Internal Request's urlList should not be empty.");
--- a/dom/flyweb/FlyWebService.cpp
+++ b/dom/flyweb/FlyWebService.cpp
@@ -797,21 +797,21 @@ FlyWebMDNSService::PairWithService(const
   if (discInfo->mService.mCert.IsEmpty()) {
     url.AssignLiteral("http://");
   } else {
     url.AssignLiteral("https://");
   }
   url.Append(aInfo->mService.mHostname);
   if (!discInfo->mService.mPath.IsEmpty()) {
     if (discInfo->mService.mPath.Find("/") != 0) {
-      url.Append(NS_LITERAL_STRING("/"));
+      url.AppendLiteral(u"/");
     }
     url.Append(discInfo->mService.mPath);
   } else {
-    url.Append(NS_LITERAL_STRING("/"));
+    url.AppendLiteral(u"/");
   }
   nsCOMPtr<nsIURI> uiURL;
   NS_NewURI(getter_AddRefs(uiURL), url);
   MOZ_ASSERT(uiURL);
   if (uiURL) {
     nsAutoCString spec;
     uiURL->GetSpec(spec);
     CopyUTF8toUTF16(spec, aInfo->mService.mUiUrl);
--- a/dom/flyweb/HttpServer.cpp
+++ b/dom/flyweb/HttpServer.cpp
@@ -919,17 +919,17 @@ HttpServer::Connection::QueueResponse(In
 
   for (auto header : entries) {
     head.Append(header.mName +
                 NS_LITERAL_CSTRING(": ") +
                 header.mValue +
                 NS_LITERAL_CSTRING("\r\n"));
   }
 
-  head.Append(NS_LITERAL_CSTRING("\r\n"));
+  head.AppendLiteral("\r\n");
 
   mOutputBuffers.AppendElement()->mString = head;
   if (body) {
     OutputBuffer* bodyBuffer = mOutputBuffers.AppendElement();
     bodyBuffer->mStream = body;
     bodyBuffer->mChunked = chunked;
   }
 
--- a/dom/media/MediaManager.cpp
+++ b/dom/media/MediaManager.cpp
@@ -856,21 +856,21 @@ MediaDevice::SetRawId(const nsAString& a
 {
   mRawID.Assign(aID);
 }
 
 NS_IMETHODIMP
 MediaDevice::GetMediaSource(nsAString& aMediaSource)
 {
   if (mMediaSource == MediaSourceEnum::Microphone) {
-    aMediaSource.Assign(NS_LITERAL_STRING("microphone"));
+    aMediaSource.AssignLiteral(u"microphone");
   } else if (mMediaSource == MediaSourceEnum::AudioCapture) {
-    aMediaSource.Assign(NS_LITERAL_STRING("audioCapture"));
+    aMediaSource.AssignLiteral(u"audioCapture");
   } else if (mMediaSource == MediaSourceEnum::Window) { // this will go away
-    aMediaSource.Assign(NS_LITERAL_STRING("window"));
+    aMediaSource.AssignLiteral(u"window");
   } else { // all the rest are shared
     aMediaSource.Assign(NS_ConvertUTF8toUTF16(
       dom::MediaSourceEnumValues::strings[uint32_t(mMediaSource)].value));
   }
   return NS_OK;
 }
 
 VideoDevice::Source*
--- a/dom/media/eme/MediaKeySession.cpp
+++ b/dom/media/eme/MediaKeySession.cpp
@@ -149,17 +149,17 @@ MediaKeySession::UpdateKeyStatusMap()
     nsAutoCString message(
       nsPrintfCString("MediaKeySession[%p,'%s'] key statuses change {",
                       this, NS_ConvertUTF16toUTF8(mSessionId).get()));
     using IntegerType = typename std::underlying_type<MediaKeyStatus>::type;
     for (const CDMCaps::KeyStatus& status : keyStatuses) {
       message.Append(nsPrintfCString(" (%s,%s)", ToHexString(status.mId).get(),
         MediaKeyStatusValues::strings[static_cast<IntegerType>(status.mStatus)].value));
     }
-    message.Append(" }");
+    message.AppendLiteral(" }");
     // Use %s so we aren't exposing random strings to printf interpolation.
     EME_LOG("%s", message.get());
   }
 }
 
 MediaKeyStatusMap*
 MediaKeySession::KeyStatuses() const
 {
--- a/dom/media/gmp/GMPServiceChild.cpp
+++ b/dom/media/gmp/GMPServiceChild.cpp
@@ -221,32 +221,32 @@ struct GMPCapabilityAndVersion
       mCapabilities.AppendElement(Move(cap));
     }
   }
 
   nsCString ToString() const
   {
     nsCString s;
     s.Append(mName);
-    s.Append(" version=");
+    s.AppendLiteral(" version=");
     s.Append(mVersion);
-    s.Append(" tags=[");
+    s.AppendLiteral(" tags=[");
     nsCString tags;
     for (const GMPCapability& cap : mCapabilities) {
       if (!tags.IsEmpty()) {
-        tags.Append(" ");
+        tags.AppendLiteral(" ");
       }
       tags.Append(cap.mAPIName);
       for (const nsCString& tag : cap.mAPITags) {
-        tags.Append(":");
+        tags.AppendLiteral(":");
         tags.Append(tag);
       }
     }
     s.Append(tags);
-    s.Append("]");
+    s.AppendLiteral("]");
     return s;
   }
 
   nsCString mName;
   nsCString mVersion;
   nsTArray<GMPCapability> mCapabilities;
 };
 
@@ -254,17 +254,17 @@ StaticMutex sGMPCapabilitiesMutex;
 StaticAutoPtr<nsTArray<GMPCapabilityAndVersion>> sGMPCapabilities;
 
 static nsCString
 GMPCapabilitiesToString()
 {
   nsCString s;
   for (const GMPCapabilityAndVersion& gmp : *sGMPCapabilities) {
     if (!s.IsEmpty()) {
-      s.Append(", ");
+      s.AppendLiteral(", ");
     }
     s.Append(gmp.ToString());
   }
   return s;
 }
 
 /* static */
 void
--- a/dom/media/gtest/TestMP4Demuxer.cpp
+++ b/dom/media/gtest/TestMP4Demuxer.cpp
@@ -179,27 +179,27 @@ static nsCString
 ToCryptoString(const CryptoSample& aCrypto)
 {
   nsCString res;
   if (aCrypto.mValid) {
     res.AppendPrintf("%d %d ", aCrypto.mMode, aCrypto.mIVSize);
     for (size_t i = 0; i < aCrypto.mKeyId.Length(); i++) {
       res.AppendPrintf("%02x", aCrypto.mKeyId[i]);
     }
-    res.Append(" ");
+    res.AppendLiteral(" ");
     for (size_t i = 0; i < aCrypto.mIV.Length(); i++) {
       res.AppendPrintf("%02x", aCrypto.mIV[i]);
     }
     EXPECT_EQ(aCrypto.mPlainSizes.Length(), aCrypto.mEncryptedSizes.Length());
     for (size_t i = 0; i < aCrypto.mPlainSizes.Length(); i++) {
       res.AppendPrintf(" %d,%d", aCrypto.mPlainSizes[i],
                        aCrypto.mEncryptedSizes[i]);
     }
   } else {
-    res.Append("no crypto");
+    res.AppendLiteral("no crypto");
   }
   return res;
 }
 
 #ifndef XP_WIN // VC2013 doesn't support C++11 array initialization.
 
 TEST(MP4Demuxer, CENCFragVideo)
 {
--- a/dom/media/platforms/wmf/WMFVideoMFTManager.cpp
+++ b/dom/media/platforms/wmf/WMFVideoMFTManager.cpp
@@ -493,17 +493,17 @@ public:
           DXVA2Manager::CreateD3D11DXVA(mKnowsCompositor, *failureReason);
         if (mDXVA2Manager) {
           return NS_OK;
         }
       }
       // Try again with d3d9, but record the failure reason
       // into a new var to avoid overwriting the d3d11 failure.
       failureReason = &secondFailureReason;
-      mFailureReason.Append(NS_LITERAL_CSTRING("; "));
+      mFailureReason.AppendLiteral("; ");
     }
 
     const nsCString& blacklistedDLL = FindD3D9BlacklistedDLL();
     if (!deblacklistingForTelemetry && !blacklistedDLL.IsEmpty()) {
       mFailureReason.AppendPrintf("D3D9 blacklisted with DLL %s",
                                   blacklistedDLL.get());
     } else {
       mDXVA2Manager =
@@ -631,19 +631,19 @@ WMFVideoMFTManager::Init()
     }
     result = InitInternal();
   }
 
   if (NS_SUCCEEDED(result) && mDXVA2Manager) {
     // If we had some failures but eventually made it work,
     // make sure we preserve the messages.
     if (mDXVA2Manager->IsD3D11()) {
-      mDXVAFailureReason.Append(NS_LITERAL_CSTRING("Using D3D11 API"));
+      mDXVAFailureReason.AppendLiteral("Using D3D11 API");
     } else {
-      mDXVAFailureReason.Append(NS_LITERAL_CSTRING("Using D3D9 API"));
+      mDXVAFailureReason.AppendLiteral("Using D3D9 API");
     }
   }
 
   return result;
 }
 
 MediaResult
 WMFVideoMFTManager::InitInternal()
--- a/dom/media/systemservices/MediaParent.cpp
+++ b/dom/media/systemservices/MediaParent.cpp
@@ -107,17 +107,17 @@ class OriginKeyStore : public nsISupport
 
   private:
     void
     PrincipalInfoToString(const ipc::PrincipalInfo& aPrincipalInfo,
                           nsACString& aString)
     {
       switch (aPrincipalInfo.type()) {
         case ipc::PrincipalInfo::TSystemPrincipalInfo:
-          aString.Assign("[System Principal]");
+          aString.AssignLiteral("[System Principal]");
           return;
 
         case ipc::PrincipalInfo::TNullPrincipalInfo: {
           const ipc::NullPrincipalInfo& info =
             aPrincipalInfo.get_NullPrincipalInfo();
           aString.Assign(info.spec());
           return;
         }
@@ -132,30 +132,30 @@ class OriginKeyStore : public nsISupport
           aString.Append(suffix);
           return;
         }
 
         case ipc::PrincipalInfo::TExpandedPrincipalInfo: {
           const ipc::ExpandedPrincipalInfo& info =
             aPrincipalInfo.get_ExpandedPrincipalInfo();
 
-          aString.Assign("[Expanded Principal [");
+          aString.AssignLiteral("[Expanded Principal [");
 
           for (uint32_t i = 0; i < info.whitelist().Length(); i++) {
             nsAutoCString str;
             PrincipalInfoToString(info.whitelist()[i], str);
 
             if (i != 0) {
-              aString.Append(", ");
+              aString.AppendLiteral(", ");
             }
 
             aString.Append(str);
           }
 
-          aString.Append("]]");
+          aString.AppendLiteral("]]");
           return;
         }
 
         default:
           MOZ_CRASH("Unknown PrincipalInfo type!");
       }
     }
 
--- a/dom/media/webspeech/synth/speechd/SpeechDispatcherService.cpp
+++ b/dom/media/webspeech/synth/speechd/SpeechDispatcherService.cpp
@@ -403,17 +403,17 @@ SpeechDispatcherService::Setup()
         // with another, non-standard suptag after it. We keep the first one
         // and convert it to uppercase.
         const char* v = list[i]->variant;
         const char* hyphen = strchr(v, '-');
         nsDependentCSubstring variant(v, hyphen ? hyphen - v : strlen(v));
         ToUpperCase(variant);
 
         // eSpeak uses UK which is not a valid region subtag in BCP47.
-        if (variant.Equals("UK")) {
+        if (variant.EqualsLiteral("UK")) {
           variant.AssignLiteral("GB");
         }
 
         lang.AppendLiteral("-");
         lang.Append(variant);
       }
 
       uri.Append(NS_ConvertUTF8toUTF16(lang));
--- a/dom/notification/Notification.cpp
+++ b/dom/notification/Notification.cpp
@@ -757,17 +757,17 @@ NotificationTelemetryService::GetNotific
                                                         uint32_t* aCapability)
 {
   nsCOMPtr<nsIPermission> permission = do_QueryInterface(aSupports);
   if (!permission) {
     return false;
   }
   nsAutoCString type;
   permission->GetType(type);
-  if (!type.Equals("desktop-notification")) {
+  if (!type.EqualsLiteral("desktop-notification")) {
     return false;
   }
   permission->GetCapability(aCapability);
   return true;
 }
 
 void
 NotificationTelemetryService::RecordDNDSupported()
--- a/dom/plugins/base/nsPluginStreamListenerPeer.cpp
+++ b/dom/plugins/base/nsPluginStreamListenerPeer.cpp
@@ -393,17 +393,17 @@ nsPluginStreamListenerPeer::SetupPluginC
       return NS_ERROR_FAILURE;
 
     nsAutoCString filename;
     url->GetFileName(filename);
     if (NS_FAILED(rv))
       return rv;
 
     // Create a file to save our stream into. Should we scramble the name?
-    filename.Insert(NS_LITERAL_CSTRING("plugin-"), 0);
+    filename.InsertLiteral("plugin-", 0);
     rv = pluginTmp->AppendNative(filename);
     if (NS_FAILED(rv))
       return rv;
 
     // Yes, make it unique.
     rv = pluginTmp->CreateUnique(nsIFile::NORMAL_FILE_TYPE, 0600);
     if (NS_FAILED(rv))
       return rv;
--- a/dom/quota/ActorsParent.cpp
+++ b/dom/quota/ActorsParent.cpp
@@ -8232,17 +8232,17 @@ OriginParser::Parse(nsACString& aSpec, O
 
     HandleToken(token);
 
     if (mError) {
       break;
     }
 
     if (!mHandledTokens.IsEmpty()) {
-      mHandledTokens.Append(NS_LITERAL_CSTRING(", "));
+      mHandledTokens.AppendLiteral(", ");
     }
     mHandledTokens.Append('\'');
     mHandledTokens.Append(token);
     mHandledTokens.Append('\'');
   }
 
   if (!mError && mTokenizer.separatorAfterCurrentToken()) {
     HandleTrailingSeparator();
--- a/dom/security/nsCSPContext.cpp
+++ b/dom/security/nsCSPContext.cpp
@@ -78,29 +78,29 @@ CreateCacheKey_Internal(nsIURI* aContent
 
   bool isDataScheme = false;
   nsresult rv = aContentLocation->SchemeIs("data", &isDataScheme);
   NS_ENSURE_SUCCESS(rv, rv);
 
   outCacheKey.Truncate();
   if (aContentType != nsIContentPolicy::TYPE_SCRIPT && isDataScheme) {
     // For non-script data: URI, use ("data:", aContentType) as the cache key.
-    outCacheKey.Append(NS_LITERAL_CSTRING("data:"));
+    outCacheKey.AppendLiteral("data:");
     outCacheKey.AppendInt(aContentType);
     return NS_OK;
   }
 
   nsAutoCString spec;
   rv = aContentLocation->GetSpec(spec);
   NS_ENSURE_SUCCESS(rv, rv);
 
   // Don't cache for a URI longer than the cutoff size.
   if (spec.Length() <= CSP_CACHE_URI_CUTOFF_SIZE) {
     outCacheKey.Append(spec);
-    outCacheKey.Append(NS_LITERAL_CSTRING("!"));
+    outCacheKey.AppendLiteral("!");
     outCacheKey.AppendInt(aContentType);
   }
 
   return NS_OK;
 }
 
 /* =====  nsIContentSecurityPolicy impl ====== */
 
--- a/dom/security/nsCSPUtils.cpp
+++ b/dom/security/nsCSPUtils.cpp
@@ -137,29 +137,29 @@ CSP_LogMessage(const nsAString& aMessage
   nsCOMPtr<nsIScriptError> error(do_CreateInstance(NS_SCRIPTERROR_CONTRACTID));
 
   if (!console || !error) {
     return;
   }
 
   // Prepending CSP to the outgoing console message
   nsString cspMsg;
-  cspMsg.Append(NS_LITERAL_STRING("Content Security Policy: "));
+  cspMsg.AppendLiteral(u"Content Security Policy: ");
   cspMsg.Append(aMessage);
 
   // Currently 'aSourceLine' is not logged to the console, because similar
   // information is already included within the source link of the message.
   // For inline violations however, the line and column number are 0 and
   // information contained within 'aSourceLine' can be really useful for devs.
   // E.g. 'aSourceLine' might be: 'onclick attribute on DIV element'.
   // In such cases we append 'aSourceLine' directly to the error message.
   if (!aSourceLine.IsEmpty()) {
-    cspMsg.Append(NS_LITERAL_STRING(" Source: "));
+    cspMsg.AppendLiteral(" Source: ");
     cspMsg.Append(aSourceLine);
-    cspMsg.Append(NS_LITERAL_STRING("."));
+    cspMsg.AppendLiteral(u".");
   }
 
   nsresult rv;
   if (aInnerWindowID > 0) {
     nsCString catStr;
     catStr.AssignASCII(aCategory);
     rv = error->InitWithWindowID(cspMsg, aSourceName,
                                  aSourceLine, aLineNumber,
--- a/dom/security/nsContentSecurityManager.cpp
+++ b/dom/security/nsContentSecurityManager.cpp
@@ -803,19 +803,19 @@ nsContentSecurityManager::IsOriginPotent
   }
 
   nsAutoCString host;
   rv = uri->GetHost(host);
   if (NS_FAILED(rv)) {
     return NS_OK;
   }
 
-  if (host.Equals("127.0.0.1") ||
-      host.Equals("localhost") ||
-      host.Equals("::1")) {
+  if (host.EqualsLiteral("127.0.0.1") ||
+      host.EqualsLiteral("localhost") ||
+      host.EqualsLiteral("::1")) {
     *aIsTrustWorthy = true;
     return NS_OK;
   }
 
   // If a host is not considered secure according to the default algorithm, then
   // check to see if it has been whitelisted by the user.  We only apply this
   // whitelist for network resources, i.e., those with scheme "http" or "ws".
   // The pref should contain a comma-separated list of hostnames.
--- a/dom/security/nsMixedContentBlocker.cpp
+++ b/dom/security/nsMixedContentBlocker.cpp
@@ -459,17 +459,17 @@ bool
 nsMixedContentBlocker::IsPotentiallyTrustworthyLoopbackURL(nsIURI* aURL) {
   nsAutoCString host;
   nsresult rv = aURL->GetHost(host);
   NS_ENSURE_SUCCESS(rv, false);
 
   // We could also allow 'localhost' (if we can guarantee that it resolves
   // to a loopback address), but Chrome doesn't support it as of writing. For
   // web compat, lets only allow what Chrome allows.
-  return host.Equals("127.0.0.1") || host.Equals("::1");
+  return host.EqualsLiteral("127.0.0.1") || host.EqualsLiteral("::1");
 }
 
 /* Static version of ShouldLoad() that contains all the Mixed Content Blocker
  * logic.  Called from non-static ShouldLoad().
  */
 nsresult
 nsMixedContentBlocker::ShouldLoad(bool aHadInsecureImageRedirect,
                                   uint32_t aContentType,
--- a/dom/storage/StorageDBThread.cpp
+++ b/dom/storage/StorageDBThread.cpp
@@ -87,18 +87,19 @@ Scheme0Scope(LocalStorageCacheBridge* aC
   oa.mInIsolatedMozBrowser = false;
   oa.CreateSuffix(remaining);
   if (!remaining.IsEmpty()) {
     MOZ_ASSERT(!suffix.IsEmpty());
 
     if (result.IsEmpty()) {
       // Must contain the old prefix, otherwise we won't search for the whole
       // origin attributes suffix.
-      result.Append(NS_LITERAL_CSTRING("0:f:"));
+      result.AppendLiteral("0:f:");
     }
+
     // Append the whole origin attributes suffix despite we have already stored
     // appid and inbrowser.  We are only looking for it when the scope string
     // starts with "$appid:$inbrowser:" (with whatever valid values).
     //
     // The OriginAttributes suffix is a string in a form like:
     // "^addonId=101&userContextId=5" and it's ensured it always starts with '^'
     // and never contains ':'.  See OriginAttributes::CreateSuffix.
     result.Append(suffix);
--- a/dom/url/URLWorker.cpp
+++ b/dom/url/URLWorker.cpp
@@ -624,18 +624,17 @@ URLWorker::Init(const nsAString& aURL, c
     }
     rv = net_ExtractURLScheme(NS_ConvertUTF16toUTF8(aBase.Value()), scheme);
     if (NS_WARN_IF(NS_FAILED(rv))) {
       aRv.ThrowTypeError<MSG_INVALID_URL>(aURL);
       return;
     }
   }
 
-  if (scheme.Equals(NS_LITERAL_CSTRING("http")) ||
-      scheme.Equals(NS_LITERAL_CSTRING("https"))) {
+  if (scheme.EqualsLiteral("http") || scheme.EqualsLiteral("https")) {
     RefPtr<nsStandardURL> baseURL;
     if (aBase.WasPassed()) {
       baseURL = new nsStandardURL();
 
       // XXXcatalinb: SetSpec only writes a warning to the console on urls
       // without a valid scheme. I can't fix that because we've come to rely
       // on that behaviour in a bunch of different places.
       nsresult rv = baseURL->SetSpec(NS_ConvertUTF16toUTF8(aBase.Value()));
@@ -702,18 +701,17 @@ URLWorker::SetHref(const nsAString& aHre
 {
   nsAutoCString scheme;
   nsresult rv = net_ExtractURLScheme(NS_ConvertUTF16toUTF8(aHref), scheme);
   if (NS_FAILED(rv)) {
     aRv.ThrowTypeError<MSG_INVALID_URL>(aHref);
     return;
   }
 
-  if (scheme.Equals(NS_LITERAL_CSTRING("http")) ||
-      scheme.Equals(NS_LITERAL_CSTRING("https"))) {
+  if (scheme.EqualsLiteral("http") || scheme.EqualsLiteral("https")) {
     mStdURL = new nsStandardURL();
     aRv = mStdURL->SetSpec(NS_ConvertUTF16toUTF8(aHref));
     if (mURLProxy) {
       mWorkerPrivate->AssertIsOnWorkerThread();
 
       RefPtr<TeardownURLRunnable> runnable =
         new TeardownURLRunnable(mURLProxy);
       mURLProxy = nullptr;
--- a/dom/webauthn/WebAuthnManager.cpp
+++ b/dom/webauthn/WebAuthnManager.cpp
@@ -83,17 +83,17 @@ AssembleClientData(const nsAString& aOri
   nsresult rv = aChallenge.ToJwkBase64(challengeBase64);
   if (NS_WARN_IF(NS_FAILED(rv))) {
     return NS_ERROR_FAILURE;
   }
 
   CollectedClientData clientDataObject;
   clientDataObject.mChallenge.Assign(challengeBase64);
   clientDataObject.mOrigin.Assign(aOrigin);
-  clientDataObject.mHashAlg.Assign(NS_LITERAL_STRING("SHA-256"));
+  clientDataObject.mHashAlg.AssignLiteral(u"SHA-256");
 
   nsAutoString temp;
   if (NS_WARN_IF(!clientDataObject.ToJSON(temp))) {
     return NS_ERROR_FAILURE;
   }
 
   aJsonOut.Assign(NS_ConvertUTF16toUTF8(temp));
   return NS_OK;
--- a/dom/workers/ServiceWorkerClients.cpp
+++ b/dom/workers/ServiceWorkerClients.cpp
@@ -521,17 +521,17 @@ public:
   }
 
   NS_IMETHOD
   Observe(nsISupports* aSubject, const char* aTopic, const char16_t* /* aData */) override
   {
     AssertIsOnMainThread();
 
     nsCString topic(aTopic);
-    if (!topic.Equals(NS_LITERAL_CSTRING("BrowserChrome:Ready"))) {
+    if (!topic.EqualsLiteral("BrowserChrome:Ready")) {
       MOZ_ASSERT(false, "Unexpected topic.");
       return NS_ERROR_FAILURE;
     }
 
     nsCOMPtr<nsIObserverService> os = services::GetObserverService();
     NS_ENSURE_STATE(os);
     os->RemoveObserver(this, "BrowserChrome:Ready");
 
--- a/dom/workers/WorkerPrivate.cpp
+++ b/dom/workers/WorkerPrivate.cpp
@@ -2587,17 +2587,17 @@ WorkerPrivate::MemoryReporter::TryToMapA
 
   if (!addonManager ||
       NS_FAILED(addonManager->MapURIToAddonID(scriptURI, addonId, &ok)) ||
       !ok) {
     return;
   }
 
   static const size_t explicitLength = strlen("explicit/");
-  addonId.Insert(NS_LITERAL_CSTRING("add-ons/"), 0);
+  addonId.InsertLiteral("add-ons/", 0);
   addonId += "/";
   path.Insert(addonId, explicitLength);
 }
 
 WorkerPrivate::MemoryReporter::CollectReportsRunnable::CollectReportsRunnable(
   WorkerPrivate* aWorkerPrivate,
   nsIHandleReportCallback* aHandleReport,
   nsISupports* aHandlerData,
--- a/dom/workers/test/gtest/TestReadWrite.cpp
+++ b/dom/workers/test/gtest/TestReadWrite.cpp
@@ -149,43 +149,43 @@ TEST(ServiceWorkerRegistrar, TestWrongVe
   const nsTArray<ServiceWorkerRegistrationData>& data = swr->TestGetData();
   ASSERT_EQ((uint32_t)0, data.Length()) << "No data should be found in an empty file";
 }
 
 TEST(ServiceWorkerRegistrar, TestReadData)
 {
   nsAutoCString buffer(SERVICEWORKERREGISTRAR_VERSION "\n");
 
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("scope 0\ncurrentWorkerURL 0\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("scope 0\ncurrentWorkerURL 0\n");
   buffer.Append(SERVICEWORKERREGISTRAR_TRUE "\n");
-  buffer.Append("cacheName 0\n");
+  buffer.AppendLiteral("cacheName 0\n");
   buffer.AppendInt(nsIServiceWorkerRegistrationInfo::UPDATE_VIA_CACHE_IMPORTS, 16);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(0);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(0);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(0);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("scope 1\ncurrentWorkerURL 1\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("scope 1\ncurrentWorkerURL 1\n");
   buffer.Append(SERVICEWORKERREGISTRAR_FALSE "\n");
-  buffer.Append("cacheName 1\n");
+  buffer.AppendLiteral("cacheName 1\n");
   buffer.AppendInt(nsIServiceWorkerRegistrationInfo::UPDATE_VIA_CACHE_ALL, 16);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   PRTime ts = PR_Now();
   buffer.AppendInt(ts);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(ts);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(ts);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   ASSERT_TRUE(CreateFile(buffer)) << "CreateFile should not fail";
 
   RefPtr<ServiceWorkerRegistrarTest> swr = new ServiceWorkerRegistrarTest;
 
   nsresult rv = swr->TestReadData();
   ASSERT_EQ(NS_OK, rv) << "ReadData() should not fail";
@@ -328,23 +328,23 @@ TEST(ServiceWorkerRegistrar, TestWriteDa
     ASSERT_NE((int64_t)0, data[i].lastUpdateTime());
   }
 }
 
 TEST(ServiceWorkerRegistrar, TestVersion2Migration)
 {
   nsAutoCString buffer("2" "\n");
 
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("spec 0\nscope 0\nscriptSpec 0\ncurrentWorkerURL 0\nactiveCache 0\nwaitingCache 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("spec 0\nscope 0\nscriptSpec 0\ncurrentWorkerURL 0\nactiveCache 0\nwaitingCache 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("spec 1\nscope 1\nscriptSpec 1\ncurrentWorkerURL 1\nactiveCache 1\nwaitingCache 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("spec 1\nscope 1\nscriptSpec 1\ncurrentWorkerURL 1\nactiveCache 1\nwaitingCache 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   ASSERT_TRUE(CreateFile(buffer)) << "CreateFile should not fail";
 
   RefPtr<ServiceWorkerRegistrarTest> swr = new ServiceWorkerRegistrarTest;
 
   nsresult rv = swr->TestReadData();
   ASSERT_EQ(NS_OK, rv) << "ReadData() should not fail";
 
@@ -389,23 +389,23 @@ TEST(ServiceWorkerRegistrar, TestVersion
   ASSERT_EQ((int64_t)0, data[1].currentWorkerActivatedTime());
   ASSERT_EQ((int64_t)0, data[1].lastUpdateTime());
 }
 
 TEST(ServiceWorkerRegistrar, TestVersion3Migration)
 {
   nsAutoCString buffer("3" "\n");
 
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("spec 0\nscope 0\ncurrentWorkerURL 0\ncacheName 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("spec 0\nscope 0\ncurrentWorkerURL 0\ncacheName 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("spec 1\nscope 1\ncurrentWorkerURL 1\ncacheName 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("spec 1\nscope 1\ncurrentWorkerURL 1\ncacheName 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   ASSERT_TRUE(CreateFile(buffer)) << "CreateFile should not fail";
 
   RefPtr<ServiceWorkerRegistrarTest> swr = new ServiceWorkerRegistrarTest;
 
   nsresult rv = swr->TestReadData();
   ASSERT_EQ(NS_OK, rv) << "ReadData() should not fail";
 
@@ -450,23 +450,23 @@ TEST(ServiceWorkerRegistrar, TestVersion
   ASSERT_EQ((int64_t)0, data[1].currentWorkerActivatedTime());
   ASSERT_EQ((int64_t)0, data[1].lastUpdateTime());
 }
 
 TEST(ServiceWorkerRegistrar, TestVersion4Migration)
 {
   nsAutoCString buffer("4" "\n");
 
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("scope 0\ncurrentWorkerURL 0\ncacheName 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("scope 0\ncurrentWorkerURL 0\ncacheName 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("scope 1\ncurrentWorkerURL 1\ncacheName 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("scope 1\ncurrentWorkerURL 1\ncacheName 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   ASSERT_TRUE(CreateFile(buffer)) << "CreateFile should not fail";
 
   RefPtr<ServiceWorkerRegistrarTest> swr = new ServiceWorkerRegistrarTest;
 
   nsresult rv = swr->TestReadData();
   ASSERT_EQ(NS_OK, rv) << "ReadData() should not fail";
 
@@ -513,27 +513,27 @@ TEST(ServiceWorkerRegistrar, TestVersion
   ASSERT_EQ((int64_t)0, data[1].currentWorkerActivatedTime());
   ASSERT_EQ((int64_t)0, data[1].lastUpdateTime());
 }
 
 TEST(ServiceWorkerRegistrar, TestVersion5Migration)
 {
   nsAutoCString buffer("5" "\n");
 
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("scope 0\ncurrentWorkerURL 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TRUE "\n");
-  buffer.Append("cacheName 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("scope 0\ncurrentWorkerURL 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TRUE "\n");
+  buffer.AppendLiteral("cacheName 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("scope 1\ncurrentWorkerURL 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_FALSE "\n");
-  buffer.Append("cacheName 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("scope 1\ncurrentWorkerURL 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_FALSE "\n");
+  buffer.AppendLiteral("cacheName 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   ASSERT_TRUE(CreateFile(buffer)) << "CreateFile should not fail";
 
   RefPtr<ServiceWorkerRegistrarTest> swr = new ServiceWorkerRegistrarTest;
 
   nsresult rv = swr->TestReadData();
   ASSERT_EQ(NS_OK, rv) << "ReadData() should not fail";
 
@@ -578,31 +578,31 @@ TEST(ServiceWorkerRegistrar, TestVersion
   ASSERT_EQ((int64_t)0, data[1].currentWorkerActivatedTime());
   ASSERT_EQ((int64_t)0, data[1].lastUpdateTime());
 }
 
 TEST(ServiceWorkerRegistrar, TestVersion6Migration)
 {
   nsAutoCString buffer("6" "\n");
 
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("scope 0\ncurrentWorkerURL 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TRUE "\n");
-  buffer.Append("cacheName 0\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("scope 0\ncurrentWorkerURL 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TRUE "\n");
+  buffer.AppendLiteral("cacheName 0\n");
   buffer.AppendInt(nsIRequest::LOAD_NORMAL, 16);
-  buffer.Append("\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("scope 1\ncurrentWorkerURL 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_FALSE "\n");
-  buffer.Append("cacheName 1\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("scope 1\ncurrentWorkerURL 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_FALSE "\n");
+  buffer.AppendLiteral("cacheName 1\n");
   buffer.AppendInt(nsIRequest::VALIDATE_ALWAYS, 16);
-  buffer.Append("\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   ASSERT_TRUE(CreateFile(buffer)) << "CreateFile should not fail";
 
   RefPtr<ServiceWorkerRegistrarTest> swr = new ServiceWorkerRegistrarTest;
 
   nsresult rv = swr->TestReadData();
   ASSERT_EQ(NS_OK, rv) << "ReadData() should not fail";
 
@@ -647,44 +647,44 @@ TEST(ServiceWorkerRegistrar, TestVersion
   ASSERT_EQ((int64_t)0, data[1].currentWorkerActivatedTime());
   ASSERT_EQ((int64_t)0, data[1].lastUpdateTime());
 }
 
 TEST(ServiceWorkerRegistrar, TestVersion7Migration)
 {
   nsAutoCString buffer("7" "\n");
 
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("scope 0\ncurrentWorkerURL 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TRUE "\n");
-  buffer.Append("cacheName 0\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("scope 0\ncurrentWorkerURL 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TRUE "\n");
+  buffer.AppendLiteral("cacheName 0\n");
   buffer.AppendInt(nsIRequest::LOAD_NORMAL, 16);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(0);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(0);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(0);
-  buffer.Append("\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("scope 1\ncurrentWorkerURL 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_FALSE "\n");
-  buffer.Append("cacheName 1\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("scope 1\ncurrentWorkerURL 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_FALSE "\n");
+  buffer.AppendLiteral("cacheName 1\n");
   buffer.AppendInt(nsIRequest::VALIDATE_ALWAYS, 16);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   PRTime ts = PR_Now();
   buffer.AppendInt(ts);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(ts);
-  buffer.Append("\n");
+  buffer.AppendLiteral("\n");
   buffer.AppendInt(ts);
-  buffer.Append("\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   ASSERT_TRUE(CreateFile(buffer)) << "CreateFile should not fail";
 
   RefPtr<ServiceWorkerRegistrarTest> swr = new ServiceWorkerRegistrarTest;
 
   nsresult rv = swr->TestReadData();
   ASSERT_EQ(NS_OK, rv) << "ReadData() should not fail";
 
@@ -730,36 +730,36 @@ TEST(ServiceWorkerRegistrar, TestVersion
   ASSERT_EQ((int64_t)ts, data[1].lastUpdateTime());
 }
 
 TEST(ServiceWorkerRegistrar, TestDedupeRead)
 {
   nsAutoCString buffer("3" "\n");
 
   // unique entries
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("spec 0\nscope 0\ncurrentWorkerURL 0\ncacheName 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("spec 0\nscope 0\ncurrentWorkerURL 0\ncacheName 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("spec 1\nscope 1\ncurrentWorkerURL 1\ncacheName 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("spec 1\nscope 1\ncurrentWorkerURL 1\ncacheName 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   // dupe entries
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("spec 1\nscope 0\ncurrentWorkerURL 0\ncacheName 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("spec 1\nscope 0\ncurrentWorkerURL 0\ncacheName 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("^appId=123&inBrowser=1\n");
-  buffer.Append("spec 2\nscope 0\ncurrentWorkerURL 0\ncacheName 0\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("^appId=123&inBrowser=1\n");
+  buffer.AppendLiteral("spec 2\nscope 0\ncurrentWorkerURL 0\ncacheName 0\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
-  buffer.Append("\n");
-  buffer.Append("spec 3\nscope 1\ncurrentWorkerURL 1\ncacheName 1\n");
-  buffer.Append(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
+  buffer.AppendLiteral("\n");
+  buffer.AppendLiteral("spec 3\nscope 1\ncurrentWorkerURL 1\ncacheName 1\n");
+  buffer.AppendLiteral(SERVICEWORKERREGISTRAR_TERMINATOR "\n");
 
   ASSERT_TRUE(CreateFile(buffer)) << "CreateFile should not fail";
 
   RefPtr<ServiceWorkerRegistrarTest> swr = new ServiceWorkerRegistrarTest;
 
   nsresult rv = swr->TestReadData();
   ASSERT_EQ(NS_OK, rv) << "ReadData() should not fail";
 
--- a/dom/xhr/XMLHttpRequestMainThread.cpp
+++ b/dom/xhr/XMLHttpRequestMainThread.cpp
@@ -1966,17 +1966,17 @@ XMLHttpRequestMainThread::OnStartRequest
 
   if (!mOverrideMimeType.IsEmpty()) {
     channel->SetContentType(NS_ConvertUTF16toUTF8(mOverrideMimeType));
   }
 
   // Fallback to 'application/octet-stream'
   nsAutoCString type;
   channel->GetContentType(type);
-  if (type.Equals(UNKNOWN_CONTENT_TYPE)) {
+  if (type.EqualsLiteral(UNKNOWN_CONTENT_TYPE)) {
     channel->SetContentType(NS_LITERAL_CSTRING(APPLICATION_OCTET_STREAM));
   }
 
   DetectCharset();
 
   // Set up arraybuffer
   if (mResponseType == XMLHttpRequestResponseType::Arraybuffer &&
       NS_SUCCEEDED(status)) {
@@ -2708,17 +2708,17 @@ XMLHttpRequestMainThread::InitiateFetch(
   // Since we expect XML data, set the type hint accordingly
   // if the channel doesn't know any content type.
   // This means that we always try to parse local files as XML
   // ignoring return value, as this is not critical. Use text/xml as fallback
   // MIME type.
   nsAutoCString contentType;
   if (NS_FAILED(mChannel->GetContentType(contentType)) ||
       contentType.IsEmpty() ||
-      contentType.Equals(UNKNOWN_CONTENT_TYPE)) {
+      contentType.EqualsLiteral(UNKNOWN_CONTENT_TYPE)) {
     mChannel->SetContentType(NS_LITERAL_CSTRING("text/xml"));
   }
 
   // Set up the preflight if needed
   if (!IsSystemXHR()) {
     nsTArray<nsCString> CORSUnsafeHeaders;
     mAuthorRequestHeaders.GetCORSUnsafeHeaders(CORSUnsafeHeaders);
     nsCOMPtr<nsILoadInfo> loadInfo = mChannel->GetLoadInfo();
--- a/dom/xslt/xslt/txMozillaStylesheetCompiler.cpp
+++ b/dom/xslt/xslt/txMozillaStylesheetCompiler.cpp
@@ -276,17 +276,17 @@ txStylesheetSink::OnStartRequest(nsIRequ
     channel->GetContentType(contentType);
 
     // Time to sniff! Note: this should go away once file channels do
     // sniffing themselves.
     nsCOMPtr<nsIURI> uri;
     channel->GetURI(getter_AddRefs(uri));
     bool sniff;
     if (NS_SUCCEEDED(uri->SchemeIs("file", &sniff)) && sniff &&
-        contentType.Equals(UNKNOWN_CONTENT_TYPE)) {
+        contentType.EqualsLiteral(UNKNOWN_CONTENT_TYPE)) {
         nsresult rv;
         nsCOMPtr<nsIStreamConverterService> serv =
             do_GetService("@mozilla.org/streamConverters;1", &rv);
         if (NS_SUCCEEDED(rv)) {
             nsCOMPtr<nsIStreamListener> converter;
             rv = serv->AsyncConvertData(UNKNOWN_CONTENT_TYPE,
                                         "*/*",
                                         mListener,
--- a/extensions/auth/nsHttpNegotiateAuth.cpp
+++ b/extensions/auth/nsHttpNegotiateAuth.cpp
@@ -190,17 +190,17 @@ nsHttpNegotiateAuth::ChallengeReceived(n
     //
     // The correct service name for IIS servers is "HTTP/f.q.d.n", so
     // construct the proper service name for passing to "gss_import_name".
     //
     // TODO: Possibly make this a configurable service name for use
     // with non-standard servers that use stuff like "khttp/f.q.d.n"
     // instead.
     //
-    service.Insert("HTTP@", 0);
+    service.InsertLiteral("HTTP@", 0);
 
     const char *contractID;
     if (TestBoolPref(kNegotiateAuthSSPI)) {
 	   LOG(("  using negotiate-sspi\n"));
 	   contractID = NS_AUTH_MODULE_CONTRACTID_PREFIX "negotiate-sspi";
     }
     else {
 	   LOG(("  using negotiate-gss\n"));
@@ -378,18 +378,18 @@ class GetNextTokenRunnable final : publi
         }
 
         NS_IMETHODIMP ObtainCredentialsAndFlags(char **aCreds, uint32_t *aFlags)
         {
             nsresult rv;
 
             // Use negotiate service to call GenerateCredentials outside of main thread
             nsAutoCString contractId;
-            contractId.Assign(NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX);
-            contractId.Append("negotiate");
+            contractId.AssignLiteral(NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX);
+            contractId.AppendLiteral("negotiate");
             nsCOMPtr<nsIHttpAuthenticator> authenticator =
               do_GetService(contractId.get(), &rv);
             NS_ENSURE_SUCCESS(rv, rv);
 
             nsISupports *sessionState = mSessionState;
             nsISupports *continuationState = mContinuationState;
             // The continuationState is for the sake of completeness propagated
             // to the caller (despite it is not changed in any GenerateCredentials
--- a/extensions/cookie/nsPermissionManager.cpp
+++ b/extensions/cookie/nsPermissionManager.cpp
@@ -656,29 +656,29 @@ UpgradeHostToOriginAndInsert(const nsACS
     }
 
     rv = histResultContainer->SetContainerOpen(false);
     NS_ENSURE_SUCCESS(rv, rv);
   }
 
   // If we didn't find any origins for this host in the poermissions database,
   // we can insert the default http:// and https:// permissions into the database.
-  // This has a relatively high liklihood of applying the permission to the correct
+  // This has a relatively high likelihood of applying the permission to the correct
   // origin.
   if (!foundHistory) {
     nsAutoCString hostSegment;
     nsCOMPtr<nsIPrincipal> principal;
     nsAutoCString origin;
 
     // If this is an ipv6 URI, we need to surround it in '[', ']' before trying to
     // parse it as a URI.
     if (aHost.FindChar(':') != -1) {
-      hostSegment.Assign("[");
+      hostSegment.AssignLiteral("[");
       hostSegment.Append(aHost);
-      hostSegment.Append("]");
+      hostSegment.AppendLiteral("]");
     } else {
       hostSegment.Assign(aHost);
     }
 
     // http:// URI default
     rv = NS_NewURI(getter_AddRefs(uri), NS_LITERAL_CSTRING("http://") + hostSegment);
     NS_ENSURE_SUCCESS(rv, rv);
 
--- a/gfx/src/DriverCrashGuard.cpp
+++ b/gfx/src/DriverCrashGuard.cpp
@@ -34,17 +34,17 @@ static_assert(MOZ_ARRAY_LENGTH(sCrashGua
               "CrashGuardType updated without a name string");
 
 static inline void
 BuildCrashGuardPrefName(CrashGuardType aType, nsCString& aOutPrefName)
 {
   MOZ_ASSERT(aType < CrashGuardType::NUM_TYPES);
   MOZ_ASSERT(sCrashGuardNames[size_t(aType)]);
 
-  aOutPrefName.Assign("gfx.crash-guard.status.");
+  aOutPrefName.AssignLiteral("gfx.crash-guard.status.");
   aOutPrefName.Append(sCrashGuardNames[size_t(aType)]);
 }
 
 DriverCrashGuard::DriverCrashGuard(CrashGuardType aType, dom::ContentParent* aContentParent)
  : mType(aType)
  , mMode(aContentParent ? Mode::Proxy : Mode::Normal)
  , mInitialized(false)
  , mGuardActivated(false)
@@ -186,17 +186,17 @@ DriverCrashGuard::Crashed()
 
 nsCOMPtr<nsIFile>
 DriverCrashGuard::GetGuardFile()
 {
   MOZ_ASSERT(XRE_IsParentProcess());
 
   nsCString filename;
   filename.Assign(sCrashGuardNames[size_t(mType)]);
-  filename.Append(".guard");
+  filename.AppendLiteral(".guard");
 
   nsCOMPtr<nsIFile> file;
   NS_GetSpecialDirectory(NS_APP_USER_PROFILE_LOCAL_50_DIR, getter_AddRefs(file));
   if (!file) {
     return nullptr;
   }
   if (!NS_SUCCEEDED(file->AppendNative(filename))) {
     return nullptr;
--- a/gfx/thebes/gfxUserFontSet.cpp
+++ b/gfx/thebes/gfxUserFontSet.cpp
@@ -1448,17 +1448,17 @@ gfxUserFontSet::UserFontCache::Entry::Re
             nsCString spec = mURI->GetSpecOrDefault();
             spec.ReplaceChar('/', '\\');
             // Some fonts are loaded using horrendously-long data: URIs;
             // truncate those before reporting them.
             bool isData;
             if (NS_SUCCEEDED(mURI->get()->SchemeIs("data", &isData)) && isData &&
                 spec.Length() > 255) {
                 spec.Truncate(252);
-                spec.Append("...");
+                spec.AppendLiteral("...");
             }
             path.AppendPrintf(", url=%s", spec.get());
         }
         if (mPrincipal) {
             nsCOMPtr<nsIURI> uri;
             mPrincipal->get()->GetURI(getter_AddRefs(uri));
             if (uri) {
                 nsCString spec = uri->GetSpecOrDefault();
--- a/gfx/thebes/gfxUtils.cpp
+++ b/gfx/thebes/gfxUtils.cpp
@@ -1055,17 +1055,17 @@ EncodeSourceSurfaceInternal(SourceSurfac
 
   // base 64, result will be null-terminated
   nsCString encodedImg;
   rv = Base64Encode(Substring(imgData.begin(), imgSize), encodedImg);
   NS_ENSURE_SUCCESS(rv, rv);
 
   nsCString string("data:");
   string.Append(aMimeType);
-  string.Append(";base64,");
+  string.AppendLiteral(";base64,");
   string.Append(encodedImg);
 
   if (aFile) {
 #ifdef ANDROID
     if (aFile == stdout || aFile == stderr) {
       // ADB logcat cuts off long strings so we will break it down
       const char* cStr = string.BeginReading();
       size_t len = strlen(cStr);
--- a/image/imgLoader.cpp
+++ b/image/imgLoader.cpp
@@ -249,115 +249,119 @@ private:
                           const ImageMemoryCounter& aCounter)
   {
     nsAutoCString pathPrefix(NS_LITERAL_CSTRING("explicit/"));
     pathPrefix.Append(aPathPrefix);
     pathPrefix.Append(aCounter.Type() == imgIContainer::TYPE_RASTER
                         ? "/raster/"
                         : "/vector/");
     pathPrefix.Append(aCounter.IsUsed() ? "used/" : "unused/");
-    pathPrefix.Append("image(");
+    pathPrefix.AppendLiteral("image(");
     pathPrefix.AppendInt(aCounter.IntrinsicSize().width);
-    pathPrefix.Append("x");
+    pathPrefix.AppendLiteral("x");
     pathPrefix.AppendInt(aCounter.IntrinsicSize().height);
-    pathPrefix.Append(", ");
+    pathPrefix.AppendLiteral(", ");
 
     if (aCounter.URI().IsEmpty()) {
-      pathPrefix.Append("<unknown URI>");
+      pathPrefix.AppendLiteral("<unknown URI>");
     } else {
       pathPrefix.Append(aCounter.URI());
     }
 
-    pathPrefix.Append(")/");
+    pathPrefix.AppendLiteral(")/");
 
     ReportSurfaces(aHandleReport, aData, pathPrefix, aCounter);
 
     ReportSourceValue(aHandleReport, aData, pathPrefix, aCounter.Values());
   }
 
   static void ReportSurfaces(nsIHandleReportCallback* aHandleReport,
                              nsISupports* aData,
                              const nsACString& aPathPrefix,
                              const ImageMemoryCounter& aCounter)
   {
     for (const SurfaceMemoryCounter& counter : aCounter.Surfaces()) {
       nsAutoCString surfacePathPrefix(aPathPrefix);
-      surfacePathPrefix.Append(counter.IsLocked() ? "locked/" : "unlocked/");
+      if (counter.IsLocked()) {
+        surfacePathPrefix.AppendLiteral("locked/");
+      } else {
+        surfacePathPrefix.AppendLiteral("unlocked/");
+      }
       if (counter.IsFactor2()) {
-        surfacePathPrefix.Append("factor2/");
+        surfacePathPrefix.AppendLiteral("factor2/");
       }
       if (counter.CannotSubstitute()) {
-        surfacePathPrefix.Append("cannot_substitute/");
+        surfacePathPrefix.AppendLiteral("cannot_substitute/");
       }
-      surfacePathPrefix.Append("surface(");
+      surfacePathPrefix.AppendLiteral("surface(");
       surfacePathPrefix.AppendInt(counter.Key().Size().width);
-      surfacePathPrefix.Append("x");
+      surfacePathPrefix.AppendLiteral("x");
       surfacePathPrefix.AppendInt(counter.Key().Size().height);
 
       if (counter.Values().SharedHandles() > 0) {
-        surfacePathPrefix.Append(", shared:");
+        surfacePathPrefix.AppendLiteral(", shared:");
         surfacePathPrefix.AppendInt(uint32_t(counter.Values().SharedHandles()));
       }
 
       if (counter.Type() == SurfaceMemoryCounterType::NORMAL) {
         PlaybackType playback = counter.Key().Playback();
         surfacePathPrefix.Append(playback == PlaybackType::eAnimated
                                  ? " (animation)"
                                  : "");
 
         if (counter.Key().Flags() != DefaultSurfaceFlags()) {
-          surfacePathPrefix.Append(", flags:");
+          surfacePathPrefix.AppendLiteral(", flags:");
           surfacePathPrefix.AppendInt(uint32_t(counter.Key().Flags()),
                                       /* aRadix = */ 16);
         }
       } else if (counter.Type() == SurfaceMemoryCounterType::COMPOSITING) {
-        surfacePathPrefix.Append(", compositing frame");
+        surfacePathPrefix.AppendLiteral(", compositing frame");
       } else if (counter.Type() == SurfaceMemoryCounterType::COMPOSITING_PREV) {
-        surfacePathPrefix.Append(", compositing prev frame");
+        surfacePathPrefix.AppendLiteral(", compositing prev frame");
       } else {
         MOZ_ASSERT_UNREACHABLE("Unknown counter type");
       }
 
-      surfacePathPrefix.Append(")/");
+      surfacePathPrefix.AppendLiteral(")/");
 
       ReportValues(aHandleReport, aData, surfacePathPrefix, counter.Values());
     }
   }
 
   static void ReportTotal(nsIHandleReportCallback* aHandleReport,
                           nsISupports* aData,
                           bool aExplicit,
                           const char* aPathPrefix,
                           const char* aPathInfix,
                           const MemoryTotal& aTotal)
   {
     nsAutoCString pathPrefix;
     if (aExplicit) {
-      pathPrefix.Append("explicit/");
+      pathPrefix.AppendLiteral("explicit/");
     }
     pathPrefix.Append(aPathPrefix);
 
     nsAutoCString rasterUsedPrefix(pathPrefix);
-    rasterUsedPrefix.Append("/raster/used/");
+    rasterUsedPrefix.AppendLiteral("/raster/used/");
     rasterUsedPrefix.Append(aPathInfix);
     ReportValues(aHandleReport, aData, rasterUsedPrefix, aTotal.UsedRaster());
 
     nsAutoCString rasterUnusedPrefix(pathPrefix);
-    rasterUnusedPrefix.Append("/raster/unused/");
+    rasterUnusedPrefix.AppendLiteral("/raster/unused/");
     rasterUnusedPrefix.Append(aPathInfix);
     ReportValues(aHandleReport, aData, rasterUnusedPrefix,
                  aTotal.UnusedRaster());
 
     nsAutoCString vectorUsedPrefix(pathPrefix);
-    vectorUsedPrefix.Append("/vector/used/");
+    vectorUsedPrefix.AppendLiteral("/vector/used/");
     vectorUsedPrefix.Append(aPathInfix);
     ReportValues(aHandleReport, aData, vectorUsedPrefix, aTotal.UsedVector());
 
     nsAutoCString vectorUnusedPrefix(pathPrefix);
-    vectorUnusedPrefix.Append("/vector/unused/");
+    vectorUnusedPrefix.AppendLiteral("/vector/unused/");
     vectorUnusedPrefix.Append(aPathInfix);
     ReportValues(aHandleReport, aData, vectorUnusedPrefix,
                  aTotal.UnusedVector());
   }
 
   static void ReportValues(nsIHandleReportCallback* aHandleReport,
                            nsISupports* aData,
                            const nsACString& aPathPrefix,
--- a/intl/locale/LocaleService.cpp
+++ b/intl/locale/LocaleService.cpp
@@ -779,26 +779,26 @@ LocaleService::Locale::Locale(const nsCS
         }
         break;
     }
     partNum++;
   }
 
   if (aRange) {
     if (mLanguage.IsEmpty()) {
-      mLanguage.Assign(NS_LITERAL_CSTRING("*"));
+      mLanguage.AssignLiteral("*");
     }
     if (mScript.IsEmpty()) {
-      mScript.Assign(NS_LITERAL_CSTRING("*"));
+      mScript.AssignLiteral("*");
     }
     if (mRegion.IsEmpty()) {
-      mRegion.Assign(NS_LITERAL_CSTRING("*"));
+      mRegion.AssignLiteral("*");
     }
     if (mVariant.IsEmpty()) {
-      mVariant.Assign(NS_LITERAL_CSTRING("*"));
+      mVariant.AssignLiteral("*");
     }
   }
 }
 
 static bool
 SubtagMatches(const nsCString& aSubtag1, const nsCString& aSubtag2)
 {
   return aSubtag1.EqualsLiteral("*") ||
--- a/intl/locale/tests/gtest/TestLocaleServiceNegotiate.cpp
+++ b/intl/locale/tests/gtest/TestLocaleServiceNegotiate.cpp
@@ -22,11 +22,11 @@ TEST(Intl_Locale_LocaleService, Negotiat
 
   availableLocales.AppendElement(NS_LITERAL_CSTRING("sr-Cyrl"));
   availableLocales.AppendElement(NS_LITERAL_CSTRING("sr-Latn"));
 
   LocaleService::GetInstance()->NegotiateLanguages(
       requestedLocales, availableLocales, defaultLocale, strategy, supportedLocales);
 
   ASSERT_TRUE(supportedLocales.Length() == 2);
-  ASSERT_TRUE(supportedLocales[0].Equals("sr-Cyrl"));
-  ASSERT_TRUE(supportedLocales[1].Equals("en-US"));
+  ASSERT_TRUE(supportedLocales[0].EqualsLiteral("sr-Cyrl"));
+  ASSERT_TRUE(supportedLocales[1].EqualsLiteral("en-US"));
 }
--- a/intl/locale/windows/OSPreferences_win.cpp
+++ b/intl/locale/windows/OSPreferences_win.cpp
@@ -59,17 +59,17 @@ OSPreferences::ReadRegionalPrefsLocales(
  * For DateTimePattern, we want to retrieve the User Locale.
  */
 static void
 ReadUserLocale(nsCString& aRetVal)
 {
   WCHAR locale[LOCALE_NAME_MAX_LENGTH];
   if (NS_WARN_IF(!LCIDToLocaleName(LOCALE_USER_DEFAULT, locale,
                                    LOCALE_NAME_MAX_LENGTH, 0))) {
-    aRetVal.Assign("en-US");
+    aRetVal.AssignLiteral("en-US");
     return;
   }
 
   LossyCopyUTF16toASCII(locale, aRetVal);
 }
 
 static LCTYPE
 ToDateLCType(OSPreferences::DateTimeFormatStyle aFormatStyle)
--- a/intl/unicharutil/util/ICUUtils.cpp
+++ b/intl/unicharutil/util/ICUUtils.cpp
@@ -1,14 +1,13 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 #ifdef MOZILLA_INTERNAL_API
-#ifdef ENABLE_INTL_API
 
 #include "ICUUtils.h"
 #include "mozilla/Preferences.h"
 #include "mozilla/intl/LocaleService.h"
 #include "nsIContent.h"
 #include "nsIDocument.h"
 #include "nsStringGlue.h"
 #include "unicode/uloc.h"
@@ -269,11 +268,10 @@ ICUUtils::ToICUString(nsAString& aMozStr
   aICUString.setTo((UChar*)PromiseFlatString(aMozString).get(),
                    aMozString.Length());
 
   NS_ASSERTION(aMozString.Length() == (uint32_t)aICUString.length(),
                "Conversion failed");
 }
 #endif
 
-#endif /* ENABLE_INTL_API */
 #endif /* MOZILLA_INTERNAL_API */
 
--- a/intl/unicharutil/util/ICUUtils.h
+++ b/intl/unicharutil/util/ICUUtils.h
@@ -1,19 +1,16 @@
 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 #ifndef mozilla_ICUUtils_h__
 #define mozilla_ICUUtils_h__
 
-// We only build the ICU utils if we're building ICU:
-#ifdef ENABLE_INTL_API
-
 // The ICU utils implementation needs internal things like XPCOM strings and
 // nsGkAtom, so we only build when included into internal libs:
 #ifdef MOZILLA_INTERNAL_API
 
 #include "mozilla/Scoped.h"
 #include "nsStringGlue.h"
 #include "unicode/unum.h" // for UNumberFormat
 
@@ -100,12 +97,11 @@ public:
    */
   static Locale BCP47CodeToLocale(const nsAString& aBCP47Code);
 
   static void ToMozString(UnicodeString& aICUString, nsAString& aMozString);
   static void ToICUString(nsAString& aMozString, UnicodeString& aICUString);
 #endif
 };
 
-#endif /* ENABLE_INTL_API */
 #endif /* MOZILLA_INTERNAL_API */
 
 #endif /* mozilla_ICUUtils_h__ */
--- a/intl/unicharutil/util/moz.build
+++ b/intl/unicharutil/util/moz.build
@@ -12,21 +12,17 @@ EXPORTS += [
     'nsSpecialCasingData.h',
     'nsUnicharUtils.h',
     'nsUnicodeProperties.h',
     'nsUnicodeScriptCodes.h',
 ]
 
 UNIFIED_SOURCES += [
     'GreekCasing.cpp',
+    'ICUUtils.cpp',
     'IrishCasing.cpp',
     'nsBidiUtils.cpp',
     'nsSpecialCasingData.cpp',
     'nsUnicharUtils.cpp',
     'nsUnicodeProperties.cpp',
 ]
 
-if CONFIG['ENABLE_INTL_API']:
-    UNIFIED_SOURCES += [
-        'ICUUtils.cpp',
-    ]
-
 FINAL_LIBRARY = 'xul'
--- a/ipc/glue/CrashReporterHost.cpp
+++ b/ipc/glue/CrashReporterHost.cpp
@@ -254,17 +254,17 @@ CrashReporterHost::NotifyCrashService(Ge
       processType = nsICrashService::PROCESS_TYPE_CONTENT;
       telemetryKey.AssignLiteral("content");
       break;
     case GeckoProcessType_Plugin: {
       processType = nsICrashService::PROCESS_TYPE_PLUGIN;
       telemetryKey.AssignLiteral("plugin");
       nsAutoCString val;
       if (aNotes->Get(NS_LITERAL_CSTRING("PluginHang"), &val) &&
-        val.Equals(NS_LITERAL_CSTRING("1"))) {
+        val.EqualsLiteral("1")) {
         crashType = nsICrashService::CRASH_TYPE_HANG;
         telemetryKey.AssignLiteral("pluginhang");
       }
       break;
     }
     case GeckoProcessType_GMPlugin:
       processType = nsICrashService::PROCESS_TYPE_GMPLUGIN;
       telemetryKey.AssignLiteral("gmplugin");
--- a/ipc/glue/GeckoChildProcessHost.cpp
+++ b/ipc/glue/GeckoChildProcessHost.cpp
@@ -759,17 +759,17 @@ GeckoChildProcessHost::PerformAsyncLaunc
     nsCString path;
     NS_CopyUnicodeToNative(nsDependentString(gGREBinPath), path);
 #  if defined(OS_LINUX) || defined(OS_BSD)
     const char *ld_library_path = PR_GetEnv("LD_LIBRARY_PATH");
     nsCString new_ld_lib_path(path.get());
 
 #   if (MOZ_WIDGET_GTK == 3)
     if (mProcessType == GeckoProcessType_Plugin) {
-      new_ld_lib_path.Append("/gtk2:");
+      new_ld_lib_path.AppendLiteral("/gtk2:");
       new_ld_lib_path.Append(path.get());
     }
 #   endif // (MOZ_WIDGET_GTK == 3)
     if (ld_library_path && *ld_library_path) {
       new_ld_lib_path.Append(':');
       new_ld_lib_path.Append(ld_library_path);
     }
     newEnvVars["LD_LIBRARY_PATH"] = new_ld_lib_path.get();
--- a/js/xpconnect/loader/mozJSSubScriptLoader.cpp
+++ b/js/xpconnect/loader/mozJSSubScriptLoader.cpp
@@ -121,20 +121,20 @@ ReportError(JSContext* cx, const char* o
     if (!uri) {
         ReportError(cx, nsDependentCString(origMsg));
         return;
     }
 
     nsAutoCString spec;
     nsresult rv = uri->GetSpec(spec);
     if (NS_FAILED(rv))
-        spec.Assign("(unknown)");
+        spec.AssignLiteral("(unknown)");
 
     nsAutoCString msg(origMsg);
-    msg.Append(": ");
+    msg.AppendLiteral(": ");
     msg.Append(spec);
     ReportError(cx, msg);
 }
 
 static bool
 PrepareScript(nsIURI* uri,
               JSContext* cx,
               HandleObject targetObj,
--- a/js/xpconnect/src/XPCJSRuntime.cpp
+++ b/js/xpconnect/src/XPCJSRuntime.cpp
@@ -1725,17 +1725,17 @@ ReportCompartmentStats(const JS::Compart
         nsAutoCString addonId;
         bool ok;
         if (NS_SUCCEEDED(addonManager->MapURIToAddonID(extras.location,
                                                         addonId, &ok))
             && ok) {
             // Insert the add-on id as "add-ons/@id@/" after "explicit/" to
             // aggregate add-on compartments.
             static const size_t explicitLength = strlen("explicit/");
-            addonId.Insert(NS_LITERAL_CSTRING("add-ons/"), 0);
+            addonId.InsertLiteral("add-ons/", 0);
             addonId += "/";
             cJSPathPrefix.Insert(addonId, explicitLength);
             cDOMPathPrefix.Insert(addonId, explicitLength);
         }
     }
 
     nsCString nonNotablePath = cJSPathPrefix;
     nonNotablePath += cStats.isTotals
--- a/js/xpconnect/src/XPCShellImpl.cpp
+++ b/js/xpconnect/src/XPCShellImpl.cpp
@@ -1426,20 +1426,21 @@ XRE_XPCShellMain(int argc, char** argv, 
     return result;
 }
 
 void
 XPCShellDirProvider::SetGREDirs(nsIFile* greDir)
 {
     mGREDir = greDir;
     mGREDir->Clone(getter_AddRefs(mGREBinDir));
+
 #ifdef XP_MACOSX
     nsAutoCString leafName;
     mGREDir->GetNativeLeafName(leafName);
-    if (leafName.Equals("Resources")) {
+    if (leafName.EqualsLiteral("Resources")) {
         mGREBinDir->SetNativeLeafName(NS_LITERAL_CSTRING("MacOS"));
     }
 #endif
 }
 
 void
 XPCShellDirProvider::SetAppFile(nsIFile* appFile)
 {
--- a/layout/forms/nsComboboxControlFrame.cpp
+++ b/layout/forms/nsComboboxControlFrame.cpp
@@ -1696,26 +1696,25 @@ NS_IMETHODIMP
 nsComboboxControlFrame::GenerateStateKey(nsIContent* aContent,
                                         nsIDocument* aDocument,
                                         nsACString& aKey)
 {
   nsresult rv = nsContentUtils::GenerateStateKey(aContent, aDocument, aKey);
   if (NS_FAILED(rv) || aKey.IsEmpty()) {
     return rv;
   }
-  aKey.Append("CCF");
+  aKey.AppendLiteral("CCF");
   return NS_OK;
 }
 
 // Fennec uses a custom combobox built-in widget.
 //
 
 /* static */
 bool
 nsComboboxControlFrame::ToolkitHasNativePopup()
 {
 #ifdef MOZ_USE_NATIVE_POPUP_WINDOWS
   return true;
 #else
   return false;
 #endif /* MOZ_USE_NATIVE_POPUP_WINDOWS */
 }
-
--- a/layout/generic/nsFrameState.cpp
+++ b/layout/generic/nsFrameState.cpp
@@ -47,19 +47,19 @@ GetFrameState(nsIFrame* aFrame)
     class_* frame = do_QueryFrame(aFrame);                                    \
     if (frame && (groups.IsEmpty() || strcmp(groups.LastElement(), #name_))) {\
       groups.AppendElement(#name_);                                           \
     }                                                                         \
   }
 #define FRAME_STATE_BIT(group_, value_, name_)                                \
   if ((state & NS_FRAME_STATE_BIT(value_)) && groups.Contains(#group_)) {     \
     if (!result.IsEmpty()) {                                                  \
-      result.Insert(" | ", 0);                                                \
+      result.InsertLiteral(" | ", 0);                                         \
     }                                                                         \
-    result.Insert(#name_, 0);                                                 \
+    result.InsertLiteral(#name_, 0);                                          \
     state = state & ~NS_FRAME_STATE_BIT(value_);                              \
   }
 #include "nsFrameStateBits.h"
 #undef FRAME_STATE_GROUP
 #undef FRAME_STATE_BIT
 
   if (state) {
     result.AppendPrintf(" | 0x%0" PRIx64, static_cast<uint64_t>(state));
--- a/layout/painting/DisplayItemClipChain.cpp
+++ b/layout/painting/DisplayItemClipChain.cpp
@@ -39,17 +39,17 @@ DisplayItemClipChain::ToString(const Dis
   for (auto* sc = aClipChain; sc; sc = sc->mParent) {
     if (sc->mASR) {
       str.AppendPrintf("<%s> [0x%p]", sc->mClip.ToString().get(), sc->mASR->mScrollableFrame);
 
     } else {
       str.AppendPrintf("<%s> [root asr]", sc->mClip.ToString().get());
     }
     if (sc->mParent) {
-      str.Append(", ");
+      str.AppendLiteral(", ");
     }
   }
   return str;
 }
 
 bool
 DisplayItemClipChain::HasRoundedCorners() const
 {
--- a/layout/painting/DisplayItemScrollClip.cpp
+++ b/layout/painting/DisplayItemScrollClip.cpp
@@ -43,15 +43,15 @@ DisplayItemScrollClip::HasRoundedCorners
 DisplayItemScrollClip::ToString(const DisplayItemScrollClip* aScrollClip)
 {
   nsAutoCString str;
   for (const DisplayItemScrollClip* scrollClip = aScrollClip;
        scrollClip; scrollClip = scrollClip->mParent) {
     str.AppendPrintf("<%s>%s", scrollClip->mClip ? scrollClip->mClip->ToString().get() : "null",
                      scrollClip->mIsAsyncScrollable ? " [async-scrollable]" : "");
     if (scrollClip->mParent) {
-      str.Append(", ");
+      str.AppendLiteral(", ");
     }
   }
   return str;
 }
 
 } // namespace mozilla
--- a/layout/painting/nsDisplayList.cpp
+++ b/layout/painting/nsDisplayList.cpp
@@ -153,17 +153,17 @@ ActiveScrolledRoot::IsAncestor(const Act
 
 /* static */ nsCString
 ActiveScrolledRoot::ToString(const ActiveScrolledRoot* aActiveScrolledRoot)
 {
   nsAutoCString str;
   for (auto* asr = aActiveScrolledRoot; asr; asr = asr->mParent) {
     str.AppendPrintf("<0x%p>", asr->mScrollableFrame);
     if (asr->mParent) {
-      str.Append(", ");
+      str.AppendLiteral(", ");
     }
   }
   return str;
 }
 
 static inline CSSAngle
 MakeCSSAngle(const nsCSSValue& aValue)
 {
--- a/layout/style/CounterStyleManager.cpp
+++ b/layout/style/CounterStyleManager.cpp
@@ -487,17 +487,17 @@ EthiopicToText(CounterValue aOrdinal, ns
   uint8_t asciiStringLength = asciiNumberString.Length();
 
   // If number length is odd, add a leading "0"
   // the leading "0" preconditions the string to always have the
   // leading tens place populated, this avoids a check within the loop.
   // If we didn't add the leading "0", decrement asciiStringLength so
   // it will be equivalent to a zero-based index in both cases.
   if (asciiStringLength & 1) {
-    asciiNumberString.Insert(NS_LITERAL_STRING("0"), 0);
+    asciiNumberString.InsertLiteral(u"0", 0);
   } else {
     asciiStringLength--;
   }
 
   aResult.Truncate();
   // Iterate from the highest digits to lowest
   // indexFromLeft       indexes digits (0 = most significant)
   // groupIndexFromRight indexes pairs of digits (0 = least significant)
--- a/layout/style/FontFaceSet.cpp
+++ b/layout/style/FontFaceSet.cpp
@@ -658,17 +658,17 @@ FontFaceSet::StartLoad(gfxUserFontEntry*
   nsCOMPtr<nsIHttpChannel> httpChannel(do_QueryInterface(channel));
   if (httpChannel) {
     rv = httpChannel->SetReferrerWithPolicy(aFontFaceSrc->mReferrer,
                                             mDocument->GetReferrerPolicy());
     Unused << NS_WARN_IF(NS_FAILED(rv));
 
     nsAutoCString accept("application/font-woff;q=0.9,*/*;q=0.8");
     if (Preferences::GetBool(GFX_PREF_WOFF2_ENABLED)) {
-      accept.Insert(NS_LITERAL_CSTRING("application/font-woff2;q=1.0,"), 0);
+      accept.InsertLiteral("application/font-woff2;q=1.0,", 0);
     }
     rv = httpChannel->SetRequestHeader(NS_LITERAL_CSTRING("Accept"),
                                        accept, false);
     NS_ENSURE_SUCCESS(rv, rv);
 
     // For WOFF and WOFF2, we should tell servers/proxies/etc NOT to try
     // and apply additional compression at the content-encoding layer
     if (aFontFaceSrc->mFormatFlags & (gfxUserFontSet::FLAG_FORMAT_WOFF |
--- a/layout/style/StyleRule.cpp
+++ b/layout/style/StyleRule.cpp
@@ -868,17 +868,17 @@ nsCSSSelector::AppendToStringWithoutComb
 
         aString.Append(char16_t('='));
 
         // Append the value
         nsStyleUtil::AppendEscapedCSSString(list->mValue, aString);
 
         if (list->mValueCaseSensitivity ==
               nsAttrSelector::ValueCaseSensitivity::CaseInsensitive) {
-          aString.Append(NS_LITERAL_STRING(" i"));
+          aString.AppendLiteral(u" i");
         }
       }
 
       aString.Append(char16_t(']'));
 
       list = list->mNext;
     }
   }
@@ -1338,21 +1338,21 @@ StyleRule::List(FILE* out, int32_t aInde
     str.AppendLiteral("{ ");
     mDeclaration->ToString(buffer);
     AppendUTF16toUTF8(buffer, str);
     str.Append('}');
     CSSStyleSheet* sheet = GetStyleSheet();
     if (sheet) {
       nsIURI* uri = sheet->GetSheetURI();
       if (uri) {
-        str.Append(" /* ");
+        str.AppendLiteral(" /* ");
         str.Append(uri->GetSpecOrDefault());
         str.Append(':');
         str.AppendInt(mLineNumber);
-        str.Append(" */");
+        str.AppendLiteral(" */");
       }
     }
   }
   else {
     str.AppendLiteral("{ null declaration }");
   }
   str.Append('\n');
   fprintf_stderr(out, "%s", str.get());
--- a/modules/libjar/nsJAR.cpp
+++ b/modules/libjar/nsJAR.cpp
@@ -596,17 +596,17 @@ nsZipReaderCache::IsCached(nsIFile* zipF
   nsresult rv;
   MutexAutoLock lock(mLock);
 
   nsAutoCString uri;
   rv = zipFile->GetNativePath(uri);
   if (NS_FAILED(rv))
     return rv;
 
-  uri.Insert(NS_LITERAL_CSTRING("file:"), 0);
+  uri.InsertLiteral("file:", 0);
 
   *aResult = mZips.Contains(uri);
   return NS_OK;
 }
 
 nsresult
 nsZipReaderCache::GetZip(nsIFile* zipFile, nsIZipReader* *result,
                          bool failOnMiss)
@@ -618,17 +618,17 @@ nsZipReaderCache::GetZip(nsIFile* zipFil
 #ifdef ZIP_CACHE_HIT_RATE
   mZipCacheLookups++;
 #endif
 
   nsAutoCString uri;
   rv = zipFile->GetNativePath(uri);
   if (NS_FAILED(rv)) return rv;
 
-  uri.Insert(NS_LITERAL_CSTRING("file:"), 0);
+  uri.InsertLiteral("file:", 0);
 
   RefPtr<nsJAR> zip;
   mZips.Get(uri, getter_AddRefs(zip));
   if (zip) {
 #ifdef ZIP_CACHE_HIT_RATE
     mZipCacheHits++;
 #endif
     zip->ClearReleaseTime();
@@ -678,17 +678,17 @@ nsZipReaderCache::GetInnerZip(nsIFile* z
 #ifdef ZIP_CACHE_HIT_RATE
   mZipCacheLookups++;
 #endif
 
   nsAutoCString uri;
   rv = zipFile->GetNativePath(uri);
   if (NS_FAILED(rv)) return rv;
 
-  uri.Insert(NS_LITERAL_CSTRING("jar:"), 0);
+  uri.InsertLiteral("jar:", 0);
   uri.AppendLiteral("!/");
   uri.Append(entry);
 
   RefPtr<nsJAR> zip;
   mZips.Get(uri, getter_AddRefs(zip));
   if (zip) {
 #ifdef ZIP_CACHE_HIT_RATE
     mZipCacheHits++;
@@ -722,17 +722,17 @@ nsZipReaderCache::GetFd(nsIFile* zipFile
   }
 
   nsresult rv;
   nsAutoCString uri;
   rv = zipFile->GetNativePath(uri);
   if (NS_FAILED(rv)) {
     return rv;
   }
-  uri.Insert(NS_LITERAL_CSTRING("file:"), 0);
+  uri.InsertLiteral("file:", 0);
 
   MutexAutoLock lock(mLock);
   RefPtr<nsJAR> zip;
   mZips.Get(uri, getter_AddRefs(zip));
   if (!zip) {
     return NS_ERROR_FAILURE;
   }
 
@@ -810,19 +810,19 @@ nsZipReaderCache::ReleaseZip(nsJAR* zip)
 
   // remove from hashtable
   nsAutoCString uri;
   rv = oldest->GetJarPath(uri);
   if (NS_FAILED(rv))
     return rv;
 
   if (oldest->mOuterZipEntry.IsEmpty()) {
-    uri.Insert(NS_LITERAL_CSTRING("file:"), 0);
+    uri.InsertLiteral("file:", 0);
   } else {
-    uri.Insert(NS_LITERAL_CSTRING("jar:"), 0);
+    uri.InsertLiteral("jar:", 0);
     uri.AppendLiteral("!/");
     uri.Append(oldest->mOuterZipEntry);
   }
 
   // Retrieving and removing the JAR must be done without an extra AddRef
   // and Release, or we'll trigger nsJAR::Release's magic refcount 1 case
   // an extra time and trigger a deadlock.
   RefPtr<nsJAR> removed;
@@ -869,17 +869,17 @@ nsZipReaderCache::Observe(nsISupports *a
 
     if (!file)
       return NS_OK;
 
     nsAutoCString uri;
     if (NS_FAILED(file->GetNativePath(uri)))
       return NS_OK;
 
-    uri.Insert(NS_LITERAL_CSTRING("file:"), 0);
+    uri.InsertLiteral("file:", 0);
 
     MutexAutoLock lock(mLock);
 
     RefPtr<nsJAR> zip;
     mZips.Get(uri, getter_AddRefs(zip));
     if (!zip)
       return NS_OK;
 
--- a/modules/libjar/nsJARChannel.cpp
+++ b/modules/libjar/nsJARChannel.cpp
@@ -595,17 +595,17 @@ nsJARChannel::GetSecurityInfo(nsISupport
 }
 
 NS_IMETHODIMP
 nsJARChannel::GetContentType(nsACString &result)
 {
     // If the Jar file has not been open yet,
     // We return application/x-unknown-content-type
     if (!mOpened) {
-      result.Assign(UNKNOWN_CONTENT_TYPE);
+      result.AssignLiteral(UNKNOWN_CONTENT_TYPE);
       return NS_OK;
     }
 
     if (mContentType.IsEmpty()) {
 
         //
         // generate content type and set it
         //
--- a/modules/libpref/Preferences.cpp
+++ b/modules/libpref/Preferences.cpp
@@ -1153,17 +1153,17 @@ Preferences::ReadUserOverridePrefs()
 nsresult
 Preferences::MakeBackupPrefFile(nsIFile *aFile)
 {
   // Example: this copies "prefs.js" to "Invalidprefs.js" in the same directory.
   // "Invalidprefs.js" is removed if it exists, prior to making the copy.
   nsAutoString newFilename;
   nsresult rv = aFile->GetLeafName(newFilename);
   NS_ENSURE_SUCCESS(rv, rv);
-  newFilename.Insert(NS_LITERAL_STRING("Invalid"), 0);
+  newFilename.InsertLiteral(u"Invalid", 0);
   nsCOMPtr<nsIFile> newFile;
   rv = aFile->GetParent(getter_AddRefs(newFile));
   NS_ENSURE_SUCCESS(rv, rv);
   rv = newFile->Append(newFilename);
   NS_ENSURE_SUCCESS(rv, rv);
   bool exists = false;
   newFile->Exists(&exists);
   if (exists) {
--- a/netwerk/base/Dashboard.cpp
+++ b/netwerk/base/Dashboard.cpp
@@ -883,18 +883,18 @@ HttpConnInfo::SetHTTP1ProtocolVersion(ui
     default:
         protocolVersion.AssignLiteral(u"unknown protocol version");
     }
 }
 
 void
 HttpConnInfo::SetHTTP2ProtocolVersion(uint8_t pv)
 {
-    MOZ_ASSERT (pv == HTTP_VERSION_2);
-    protocolVersion.Assign(u"h2");
+    MOZ_ASSERT(pv == HTTP_VERSION_2);
+    protocolVersion.AssignLiteral(u"h2");
 }
 
 NS_IMETHODIMP
 Dashboard::GetLogPath(nsACString &aLogPath)
 {
     aLogPath.SetCapacity(2048);
     uint32_t len = LogModule::GetLogFile(aLogPath.BeginWriting(), 2048);
     aLogPath.SetLength(len);
--- a/netwerk/base/nsIURI.idl
+++ b/netwerk/base/nsIURI.idl
@@ -97,17 +97,17 @@ interface nsIURI : nsISupports
     // string if GetSpec() fails. It is most useful for creating
     // logging/warning/error messages produced for human consumption, and when
     // matching a URI spec against a fixed spec such as about:blank.
     nsCString GetSpecOrDefault()
     {
         nsCString spec;
         nsresult rv = GetSpec(spec);
         if (NS_FAILED(rv)) {
-            spec.Assign("[nsIURI::GetSpec failed]");
+            spec.AssignLiteral("[nsIURI::GetSpec failed]");
         }
         return spec;
     }
 %}
 
     /**
      * The prePath (eg. scheme://user:password@host:port) returns the string
      * before the path.  This is useful for authentication or managing sessions.
--- a/netwerk/base/nsSocketTransport2.cpp
+++ b/netwerk/base/nsSocketTransport2.cpp
@@ -1097,18 +1097,17 @@ nsSocketTransport::ResolveHost()
         if (!mProxyTransparent || mProxyTransparentResolvesHost) {
 #if defined(XP_UNIX)
             MOZ_ASSERT(!mNetAddrIsSet || mNetAddr.raw.family != AF_LOCAL,
                        "Unix domain sockets can't be used with proxies");
 #endif
             // When not resolving mHost locally, we still want to ensure that
             // it only contains valid characters.  See bug 304904 for details.
             // Sometimes the end host is not yet known and mHost is *
-            if (!net_IsValidHostName(mHost) &&
-                !mHost.Equals(NS_LITERAL_CSTRING("*"))) {
+            if (!net_IsValidHostName(mHost) && !mHost.EqualsLiteral("*")) {
                 SOCKET_LOG(("  invalid hostname %s\n", mHost.get()));
                 return NS_ERROR_UNKNOWN_HOST;
             }
         }
         if (mProxyTransparentResolvesHost) {
             // Name resolution is done on the server side.  Just pretend
             // client resolution is complete, this will get picked up later.
             // since we don't need to do DNS now, we bypass the resolving
--- a/netwerk/base/nsURLHelperOSX.cpp
+++ b/netwerk/base/nsURLHelperOSX.cpp
@@ -171,17 +171,17 @@ net_GetFileFromURLSpec(const nsACString 
     // Determine that here and normalize HFS paths to POSIX.
     nsAutoCString possibleVolName;
     if (pathBeginsWithVolName(directory, possibleVolName)) {
       // Though we know it begins with a volume name, it could still
       // be a valid POSIX path if the boot drive is named "Mac HD"
       // and there is a directory "Mac HD" at its root. If such a
       // directory doesn't exist, we'll assume this is an HFS path.
       FSRef testRef;
-      possibleVolName.Insert("/", 0);
+      possibleVolName.InsertLiteral("/", 0);
       if (::FSPathMakeRef((UInt8*)possibleVolName.get(), &testRef, nullptr) != noErr)
         bHFSPath = true;
     }
 
     if (bHFSPath) {
       // "%2F"s need to become slashes, while all other slashes need to
       // become colons. If we start out by changing "%2F"s to colons, we
       // can reply on SwapSlashColon() to do what we need
--- a/netwerk/cookie/CookieServiceChild.cpp
+++ b/netwerk/cookie/CookieServiceChild.cpp
@@ -300,21 +300,21 @@ CookieServiceChild::GetCookieStringFromC
 
     // check if the cookie has expired
     if (cookie->Expiry() <= currentTime) {
       continue;
     }
 
     if (!cookie->Name().IsEmpty() || !cookie->Value().IsEmpty()) {
       if (!aCookieString.IsEmpty()) {
-        aCookieString.Append("; ");
+        aCookieString.AppendLiteral("; ");
       }
       if (!cookie->Name().IsEmpty()) {
         aCookieString.Append(cookie->Name().get());
-        aCookieString.Append("=");
+        aCookieString.AppendLiteral("=");
         aCookieString.Append(cookie->Value().get());
       } else {
         aCookieString.Append(cookie->Value().get());
       }
     }
   }
 }
 
@@ -611,9 +611,8 @@ CookieServiceChild::SetCookieStringFromH
 NS_IMETHODIMP
 CookieServiceChild::RunInTransaction(nsICookieTransactionCallback* aCallback)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
 } // namespace net
 } // namespace mozilla
-
--- a/netwerk/cookie/nsCookieService.cpp
+++ b/netwerk/cookie/nsCookieService.cpp
@@ -1539,17 +1539,17 @@ nsresult
 nsCookieService::CreateTableWorker(const char* aName)
 {
   // Create the table.
   // We default originAttributes to empty string: this is so if users revert to
   // an older Firefox version that doesn't know about this field, any cookies
   // set will still work once they upgrade back.
   nsAutoCString command("CREATE TABLE ");
   command.Append(aName);
-  command.Append(" ("
+  command.AppendLiteral(" ("
       "id INTEGER PRIMARY KEY, "
       "baseDomain TEXT, "
       "originAttributes TEXT NOT NULL DEFAULT '', "
       "name TEXT, "
       "value TEXT, "
       "host TEXT, "
       "path TEXT, "
       "expiry INTEGER, "
@@ -2583,17 +2583,17 @@ nsCookieService::Remove(const nsACString
   }
 
   // check if we need to add the host to the permissions blacklist.
   if (aBlocked && mPermissionService) {
     // strip off the domain dot, if necessary
     if (!host.IsEmpty() && host.First() == '.')
       host.Cut(0, 1);
 
-    host.Insert(NS_LITERAL_CSTRING("http://"), 0);
+    host.InsertLiteral("http://", 0);
 
     nsCOMPtr<nsIURI> uri;
     NS_NewURI(getter_AddRefs(uri), host);
 
     if (uri)
       mPermissionService->SetAccess(uri, nsICookiePermission::ACCESS_DENY);
   }
 
@@ -4294,17 +4294,17 @@ nsCookieService::CheckDomain(nsCookieAtt
     if (aRequireHostMatch)
       return hostFromURI.Equals(aCookieAttributes.host);
 
     // ensure the proposed domain is derived from the base domain; and also
     // that the host domain is derived from the proposed domain (per RFC2109).
     if (IsSubdomainOf(aCookieAttributes.host, aBaseDomain) &&
         IsSubdomainOf(hostFromURI, aCookieAttributes.host)) {
       // prepend a dot to indicate a domain cookie
-      aCookieAttributes.host.Insert(NS_LITERAL_CSTRING("."), 0);
+      aCookieAttributes.host.InsertLiteral(".", 0);
       return true;
     }
 
     /*
      * note: RFC2109 section 4.3.2 requires that we check the following:
      * that the portion of host not in domain does not contain a dot.
      * this prevents hosts of the form x.y.co.nz from setting cookies in the
      * entire .co.nz domain. however, it's only a only a partial solution and
--- a/netwerk/ipc/NeckoCommon.h
+++ b/netwerk/ipc/NeckoCommon.h
@@ -30,22 +30,22 @@ class TabChild;
 
 #define NECKO_MAYBE_ABORT(msg)                                                 \
   do {                                                                         \
     bool abort = NECKO_ERRORS_ARE_FATAL_DEFAULT;                               \
     const char *e = PR_GetEnv("NECKO_ERRORS_ARE_FATAL");                       \
     if (e)                                                                     \
       abort = (*e == '0') ? false : true;                                      \
     if (abort) {                                                               \
-      msg.Append(" (set NECKO_ERRORS_ARE_FATAL=0 in your environment to "      \
-                      "convert this error into a warning.)");                  \
+      msg.AppendLiteral(" (set NECKO_ERRORS_ARE_FATAL=0 in your environment "  \
+                        "to convert this error into a warning.)");             \
       NS_RUNTIMEABORT(msg.get());                                              \
     } else {                                                                   \
-      msg.Append(" (set NECKO_ERRORS_ARE_FATAL=1 in your environment to "      \
-                      "convert this warning into a fatal error.)");            \
+      msg.AppendLiteral(" (set NECKO_ERRORS_ARE_FATAL=1 in your environment "  \
+                        "to convert this warning into a fatal error.)");       \
       NS_WARNING(msg.get());                                                   \
     }                                                                          \
   } while (0)
 
 #define DROP_DEAD()                                                            \
   do {                                                                         \
     nsPrintfCString msg("NECKO ERROR: '%s' UNIMPLEMENTED",                     \
                         __FUNCTION__);                                         \
@@ -117,14 +117,12 @@ MissingRequiredTabChild(mozilla::dom::Ta
       printf_stderr("WARNING: child tried to open %s IPDL channel w/o "
                     "security info\n", context);
       return true;
     }
   }
   return false;
 }
 
-
 } // namespace net
 } // namespace mozilla
 
 #endif // mozilla_net_NeckoCommon_h
-
--- a/netwerk/ipc/NeckoParent.cpp
+++ b/netwerk/ipc/NeckoParent.cpp
@@ -188,25 +188,25 @@ NeckoParent::GetValidatedOriginAttribute
   aSerialized.mOriginAttributes.CreateAnonymizedSuffix(serializedSuffix);
 
   nsAutoCString debugString;
   for (uint32_t i = 0; i < contextArray.Length(); i++) {
     const TabContext& tabContext = contextArray[i];
 
     if (!ChromeUtils::IsOriginAttributesEqual(aSerialized.mOriginAttributes,
                                               tabContext.OriginAttributesRef())) {
-      debugString.Append("(");
+      debugString.AppendLiteral("(");
       debugString.Append(serializedSuffix);
-      debugString.Append(",");
+      debugString.AppendLiteral(",");
 
       nsAutoCString tabSuffix;
       tabContext.OriginAttributesRef().CreateAnonymizedSuffix(tabSuffix);
       debugString.Append(tabSuffix);
 
-      debugString.Append(")");
+      debugString.AppendLiteral(")");
       continue;
     }
 
     aAttrs = aSerialized.mOriginAttributes;
     return nullptr;
   }
 
   // This may be a ServiceWorker: when a push notification is received, FF wakes
@@ -219,17 +219,17 @@ NeckoParent::GetValidatedOriginAttribute
         swm->MayHaveActiveServiceWorkerInstance(static_cast<ContentParent*>(aContent),
                                                 aRequestingPrincipal)) {
       aAttrs = aSerialized.mOriginAttributes;
       return nullptr;
     }
   }
 
   nsAutoCString errorString;
-  errorString.Append("GetValidatedOriginAttributes | App does not have permission -");
+  errorString.AppendLiteral("GetValidatedOriginAttributes | App does not have permission -");
   errorString.Append(debugString);
 
   // Leak the buffer on the heap to make sure that it lives long enough, as
   // MOZ_CRASH_ANNOTATE expects the pointer passed to it to live to the end of
   // the program.
   char * error = strdup(errorString.BeginReading());
   CrashWithReason(error);
   return "App does not have permission";
--- a/netwerk/protocol/about/nsAboutCache.cpp
+++ b/netwerk/protocol/about/nsAboutCache.cpp
@@ -495,19 +495,19 @@ nsAboutCache::Channel::OnCacheEntryInfo(
     } else {
         mBuffer.AppendLiteral("No expiration time");
     }
     mBuffer.AppendLiteral("</td>\n");
 
     // Pinning
     mBuffer.AppendLiteral("    <td>");
     if (aPinned) {
-      mBuffer.Append(NS_LITERAL_CSTRING("Pinned"));
+      mBuffer.AppendLiteral("Pinned");
     } else {
-      mBuffer.Append(NS_LITERAL_CSTRING("&nbsp;"));
+      mBuffer.AppendLiteral("&nbsp;");
     }
     mBuffer.AppendLiteral("</td>\n");
 
     // Entry is done...
     mBuffer.AppendLiteral("  </tr>\n");
 
     return FlushBuffer();
 }
--- a/netwerk/protocol/about/nsAboutProtocolHandler.cpp
+++ b/netwerk/protocol/about/nsAboutProtocolHandler.cpp
@@ -137,17 +137,17 @@ nsAboutProtocolHandler::NewURI(const nsA
         // We need to indicate that this baby is safe.  Use an inner URI that
         // no one but the security manager will see.  Make sure to preserve our
         // path, in case someone decides to hardcode checks for particular
         // about: URIs somewhere.
         nsAutoCString spec;
         rv = url->GetPathQueryRef(spec);
         NS_ENSURE_SUCCESS(rv, rv);
 
-        spec.Insert("moz-safe-about:", 0);
+        spec.InsertLiteral("moz-safe-about:", 0);
 
         nsCOMPtr<nsIURI> inner;
         rv = NS_NewURI(getter_AddRefs(inner), spec);
         NS_ENSURE_SUCCESS(rv, rv);
 
         nsSimpleNestedURI* outer = new nsNestedAboutURI(inner, aBaseURI);
         NS_ENSURE_TRUE(outer, NS_ERROR_OUT_OF_MEMORY);
 
--- a/netwerk/protocol/about/nsAboutProtocolUtils.h
+++ b/netwerk/protocol/about/nsAboutProtocolUtils.h
@@ -42,17 +42,17 @@ NS_GetAboutModule(nsIURI *aAboutURI, nsI
 {
   NS_PRECONDITION(aAboutURI, "Must have URI");
 
   nsAutoCString contractID;
   nsresult rv = NS_GetAboutModuleName(aAboutURI, contractID);
   if (NS_FAILED(rv)) return rv;
 
   // look up a handler to deal with "what"
-  contractID.Insert(NS_LITERAL_CSTRING(NS_ABOUT_MODULE_CONTRACTID_PREFIX), 0);
+  contractID.InsertLiteral(NS_ABOUT_MODULE_CONTRACTID_PREFIX, 0);
 
   return CallGetService(contractID.get(), aModule);
 }
 
 inline PRTime SecondsToPRTime(uint32_t t_sec)
 {
     PRTime t_usec, usec_per_sec;
     t_usec = t_sec;
@@ -62,10 +62,9 @@ inline PRTime SecondsToPRTime(uint32_t t
 inline void PrintTimeString(char *buf, uint32_t bufsize, uint32_t t_sec)
 {
     PRExplodedTime et;
     PRTime t_usec = SecondsToPRTime(t_sec);
     PR_ExplodeTime(t_usec, PR_LocalTimeParameters, &et);
     PR_FormatTime(buf, bufsize, "%Y-%m-%d %H:%M:%S", &et);
 }
 
-
 #endif
--- a/netwerk/protocol/ftp/nsFtpConnectionThread.cpp
+++ b/netwerk/protocol/ftp/nsFtpConnectionThread.cpp
@@ -741,17 +741,18 @@ nsFtpState::S_user() {
                 return NS_ERROR_FAILURE;
 
             mUsername = info->User();
             mPassword = info->Password();
         }
         // XXX Is UTF-8 the best choice?
         AppendUTF16toUTF8(mUsername, usernameStr);
     }
-    usernameStr.Append(CRLF);
+
+    usernameStr.AppendLiteral(CRLF);
 
     return SendFTPCommand(usernameStr);
 }
 
 FTP_STATE
 nsFtpState::R_user() {
     mReconnectAndLoginAgain = false;
     if (mResponseCode/100 == 3) {
@@ -833,17 +834,18 @@ nsFtpState::S_pass() {
             if (NS_FAILED(rv) || !retval)
                 return NS_ERROR_FAILURE;
 
             mPassword = info->Password();
         }
         // XXX Is UTF-8 the best choice?
         AppendUTF16toUTF8(mPassword, passwordStr);
     }
-    passwordStr.Append(CRLF);
+
+    passwordStr.AppendLiteral(CRLF);
 
     return SendFTPCommand(passwordStr);
 }
 
 FTP_STATE
 nsFtpState::R_pass() {
     if (mResponseCode/100 == 3) {
         // send account info
@@ -1010,18 +1012,18 @@ nsFtpState::S_cwd() {
 
     nsAutoCString cwdStr;
     if (mAction != PUT)
         cwdStr = mPath;
     if (cwdStr.IsEmpty() || cwdStr.First() != '/')
         cwdStr.Insert(mPwd,0);
     if (mServerType == FTP_VMS_TYPE)
         ConvertDirspecToVMS(cwdStr);
-    cwdStr.Insert("CWD ",0);
-    cwdStr.Append(CRLF);
+    cwdStr.InsertLiteral("CWD ", 0);
+    cwdStr.AppendLiteral(CRLF);
 
     return SendFTPCommand(cwdStr);
 }
 
 FTP_STATE
 nsFtpState::R_cwd() {
     if (mResponseCode/100 == 2) {
         if (mAction == PUT)
@@ -1035,18 +1037,18 @@ nsFtpState::R_cwd() {
 
 nsresult
 nsFtpState::S_size() {
     nsAutoCString sizeBuf(mPath);
     if (sizeBuf.IsEmpty() || sizeBuf.First() != '/')
         sizeBuf.Insert(mPwd,0);
     if (mServerType == FTP_VMS_TYPE)
         ConvertFilespecToVMS(sizeBuf);
-    sizeBuf.Insert("SIZE ",0);
-    sizeBuf.Append(CRLF);
+    sizeBuf.InsertLiteral("SIZE ", 0);
+    sizeBuf.AppendLiteral(CRLF);
 
     return SendFTPCommand(sizeBuf);
 }
 
 FTP_STATE
 nsFtpState::R_size() {
     if (mResponseCode/100 == 2) {
         PR_sscanf(mResponseMsg.get() + 4, "%llu", &mFileSize);
@@ -1059,18 +1061,18 @@ nsFtpState::R_size() {
 
 nsresult
 nsFtpState::S_mdtm() {
     nsAutoCString mdtmBuf(mPath);
     if (mdtmBuf.IsEmpty() || mdtmBuf.First() != '/')
         mdtmBuf.Insert(mPwd,0);
     if (mServerType == FTP_VMS_TYPE)
         ConvertFilespecToVMS(mdtmBuf);
-    mdtmBuf.Insert("MDTM ",0);
-    mdtmBuf.Append(CRLF);
+    mdtmBuf.InsertLiteral("MDTM ", 0);
+    mdtmBuf.AppendLiteral(CRLF);
 
     return SendFTPCommand(mdtmBuf);
 }
 
 FTP_STATE
 nsFtpState::R_mdtm() {
     if (mResponseCode == 213) {
         mResponseMsg.Cut(0,4);
@@ -1202,18 +1204,19 @@ nsFtpState::R_list() {
 
 nsresult
 nsFtpState::S_retr() {
     nsAutoCString retrStr(mPath);
     if (retrStr.IsEmpty() || retrStr.First() != '/')
         retrStr.Insert(mPwd,0);
     if (mServerType == FTP_VMS_TYPE)
         ConvertFilespecToVMS(retrStr);
-    retrStr.Insert("RETR ",0);
-    retrStr.Append(CRLF);
+    retrStr.InsertLiteral("RETR ", 0);
+    retrStr.AppendLiteral(CRLF);
+
     return SendFTPCommand(retrStr);
 }
 
 FTP_STATE
 nsFtpState::R_retr() {
     if (mResponseCode/100 == 2) {
         //(DONE)
         mNextState = FTP_COMPLETE;
@@ -1234,24 +1237,22 @@ nsFtpState::R_retr() {
     if (mResponseCode/100 == 5) {
         mRETRFailed = true;
         return FTP_S_PASV;
     }
 
     return FTP_S_CWD;
 }
 
-
 nsresult
 nsFtpState::S_rest() {
-
     nsAutoCString restString("REST ");
     // The int64_t cast is needed to avoid ambiguity
     restString.AppendInt(int64_t(mChannel->StartPos()), 10);
-    restString.Append(CRLF);
+    restString.AppendLiteral(CRLF);
 
     return SendFTPCommand(restString);
 }
 
 FTP_STATE
 nsFtpState::R_rest() {
     if (mResponseCode/100 == 4) {
         // If REST fails, then we can't resume
@@ -1282,18 +1283,18 @@ nsFtpState::S_stor() {
     // kill the first slash since we want to be relative to CWD.
     if (storStr.First() == '/')
         storStr.Cut(0,1);
 
     if (mServerType == FTP_VMS_TYPE)
         ConvertFilespecToVMS(storStr);
 
     NS_UnescapeURL(storStr);
-    storStr.Insert("STOR ",0);
-    storStr.Append(CRLF);
+    storStr.InsertLiteral("STOR ", 0);
+    storStr.AppendLiteral(CRLF);
 
     return SendFTPCommand(storStr);
 }
 
 FTP_STATE
 nsFtpState::R_stor() {
     if (mResponseCode/100 == 2) {
         //(DONE)
@@ -2188,9 +2189,8 @@ nsFtpState::OnCallbackPending()
             mDeferredCallbackPending = true;
             return;
         }
         Connect();
     } else if (mDataStream) {
         mDataStream->AsyncWait(this, 0, 0, CallbackTarget());
     }
 }
-
--- a/netwerk/protocol/gio/nsGIOProtocolHandler.cpp
+++ b/netwerk/protocol/gio/nsGIOProtocolHandler.cpp
@@ -956,17 +956,17 @@ nsGIOProtocolHandler::IsSupportedProtoco
     return false;
 
   return true;
 }
 
 NS_IMETHODIMP
 nsGIOProtocolHandler::GetScheme(nsACString &aScheme)
 {
-  aScheme.Assign(MOZ_GIO_SCHEME);
+  aScheme.AssignLiteral(MOZ_GIO_SCHEME);
   return NS_OK;
 }
 
 NS_IMETHODIMP
 nsGIOProtocolHandler::GetDefaultPort(int32_t *aDefaultPort)
 {
   *aDefaultPort = -1;
   return NS_OK;
--- a/netwerk/protocol/http/AlternateServices.cpp
+++ b/netwerk/protocol/http/AlternateServices.cpp
@@ -32,19 +32,19 @@ namespace net {
 
 // function places true in outIsHTTPS if scheme is https, false if
 // http, and returns an error if neither. originScheme passed into
 // alternate service should already be normalized to those lower case
 // strings by the URI parser (and so there is an assert)- this is an extra check.
 static nsresult
 SchemeIsHTTPS(const nsACString &originScheme, bool &outIsHTTPS)
 {
-  outIsHTTPS = originScheme.Equals(NS_LITERAL_CSTRING("https"));
+  outIsHTTPS = originScheme.EqualsLiteral("https");
 
-  if (!outIsHTTPS && !originScheme.Equals(NS_LITERAL_CSTRING("http"))) {
+  if (!outIsHTTPS && !originScheme.EqualsLiteral("http")) {
       MOZ_ASSERT(false, "unexpected scheme");
       return NS_ERROR_UNEXPECTED;
   }
   return NS_OK;
 }
 
 void
 AltSvcMapping::ProcessHeader(const nsCString &buf, const nsCString &originScheme,
@@ -87,32 +87,32 @@ AltSvcMapping::ProcessHeader(const nsCSt
          pairIndex < parsedAltSvc.mValues[index].mValues.Length();
          ++pairIndex) {
       nsDependentCSubstring &currentName =
         parsedAltSvc.mValues[index].mValues[pairIndex].mName;
       nsDependentCSubstring &currentValue =
         parsedAltSvc.mValues[index].mValues[pairIndex].mValue;
 
       if (!pairIndex) {
-        if (currentName.Equals(NS_LITERAL_CSTRING("clear"))) {
+        if (currentName.EqualsLiteral("clear")) {
           clearEntry = true;
           break;
         }
 
         // h2=[hostname]:443
         npnToken = currentName;
         int32_t colonIndex = currentValue.FindChar(':');
         if (colonIndex >= 0) {
           portno =
             atoi(PromiseFlatCString(currentValue).get() + colonIndex + 1);
         } else {
           colonIndex = 0;
         }
         hostname.Assign(currentValue.BeginReading(), colonIndex);
-      } else if (currentName.Equals(NS_LITERAL_CSTRING("ma"))) {
+      } else if (currentName.EqualsLiteral("ma")) {
         maxage = atoi(PromiseFlatCString(currentValue).get());
         break;
       } else {
         LOG(("Alt Svc ignoring parameter %s", currentName.BeginReading()));
       }
     }
 
     if (clearEntry) {
@@ -223,17 +223,17 @@ AltSvcMapping::MakeHashKey(nsCString &ou
                            const nsACString &originHost,
                            int32_t originPort,
                            bool privateBrowsing,
                            const OriginAttributes &originAttributes)
 {
   outKey.Truncate();
 
   if (originPort == -1) {
-    bool isHttps = originScheme.Equals("https");
+    bool isHttps = originScheme.EqualsLiteral("https");
     originPort = isHttps ? NS_HTTPS_DEFAULT_PORT : NS_HTTP_DEFAULT_PORT;
   }
 
   outKey.Append(originScheme);
   outKey.Append(':');
   outKey.Append(originHost);
   outKey.Append(':');
   outKey.AppendInt(originPort);
@@ -383,39 +383,39 @@ AltSvcMapping::AltSvcMapping(DataStorage
   do {
 #ifdef _NS_NEXT_TOKEN
 COMPILER ERROR
 #endif
     #define _NS_NEXT_TOKEN start = idx + 1; idx = str.FindChar(':', start); if (idx < 0) break;
     int32_t start = 0;
     int32_t idx;
     idx = str.FindChar(':', start); if (idx < 0) break;
-    mHttps = Substring(str, start, idx - start).Equals(NS_LITERAL_CSTRING("https"));
+    mHttps = Substring(str, start, idx - start).EqualsLiteral("https");
     _NS_NEXT_TOKEN;
     mOriginHost = Substring(str, start, idx - start);
     _NS_NEXT_TOKEN;
     mOriginPort = nsCString(Substring(str, start, idx - start)).ToInteger(&code);
     _NS_NEXT_TOKEN;
     mAlternateHost = Substring(str, start, idx - start);
     _NS_NEXT_TOKEN;
     mAlternatePort = nsCString(Substring(str, start, idx - start)).ToInteger(&code);
     _NS_NEXT_TOKEN;
     mUsername = Substring(str, start, idx - start);
     _NS_NEXT_TOKEN;
-    mPrivate = Substring(str, start, idx - start).Equals(NS_LITERAL_CSTRING("y"));
+    mPrivate = Substring(str, start, idx - start).EqualsLiteral("y");
     _NS_NEXT_TOKEN;
     mExpiresAt = nsCString(Substring(str, start, idx - start)).ToInteger(&code);
     _NS_NEXT_TOKEN;
     mNPNToken = Substring(str, start, idx - start);
     _NS_NEXT_TOKEN;
-    mValidated = Substring(str, start, idx - start).Equals(NS_LITERAL_CSTRING("y"));
+    mValidated = Substring(str, start, idx - start).EqualsLiteral("y");
     _NS_NEXT_TOKEN;
     mStorageEpoch = nsCString(Substring(str, start, idx - start)).ToInteger(&code);
     _NS_NEXT_TOKEN;
-    mMixedScheme = Substring(str, start, idx - start).Equals(NS_LITERAL_CSTRING("y"));
+    mMixedScheme = Substring(str, start, idx - start).EqualsLiteral("y");
     _NS_NEXT_TOKEN;
     Unused << mOriginAttributes.PopulateFromSuffix(Substring(str, start, idx - start));
     #undef _NS_NEXT_TOKEN
 
     MakeHashKey(mHashKey, mHttps ? NS_LITERAL_CSTRING("https") : NS_LITERAL_CSTRING("http"),
                 mOriginHost, mOriginPort, mPrivate, mOriginAttributes);
   } while (false);
 }
@@ -601,17 +601,17 @@ public:
         LOG(("WellKnownChecker::Done %p alternate was not at least h2\n", this));
       } else if (!mTransactionAlternate->mWKResponse.Equals(mTransactionOrigin->mWKResponse)) {
         LOG(("WellKnownChecker::Done %p alternate and origin "
              ".wk representations don't match\norigin: %s\alternate:%s\n", this,
              mTransactionOrigin->mWKResponse.get(),
              mTransactionAlternate->mWKResponse.get()));
       } else if (!mAlternateCT.Equals(mOriginCT)) {
         LOG(("WellKnownChecker::Done %p alternate and origin content types dont match\n", this));
-      } else if (!mAlternateCT.Equals(NS_LITERAL_CSTRING("application/json"))) {
+      } else if (!mAlternateCT.EqualsLiteral("application/json")) {
         LOG(("WellKnownChecker::Done %p .wk content type is %s\n", this, mAlternateCT.get()));
       } else if (!uu) {
         LOG(("WellKnownChecker::Done %p json parser service unavailable\n", this));
       } else {
         accepted = true;
       }
 
       if (accepted) {
@@ -915,17 +915,17 @@ AltSvcCache::UpdateAltServiceMapping(Alt
     nsAutoCString origin (NS_LITERAL_CSTRING("http://") + map->OriginHost());
     if (map->OriginPort() != NS_HTTP_DEFAULT_PORT) {
       origin.Append(':');
       origin.AppendInt(map->OriginPort());
     }
 
     nsCOMPtr<nsIURI> wellKnown;
     nsAutoCString uri(origin);
-    uri.Append(NS_LITERAL_CSTRING("/.well-known/http-opportunistic"));
+    uri.AppendLiteral("/.well-known/http-opportunistic");
     NS_NewURI(getter_AddRefs(wellKnown), uri);
 
     auto *checker = new WellKnownChecker(wellKnown, origin, caps, ci, map);
     if (NS_FAILED(checker->Start())) {
       LOG(("AltSvcCache::UpdateAltServiceMapping %p .wk checker failed to start\n", this));
       map->SetExpired();
       delete checker;
       checker = nullptr;
--- a/netwerk/protocol/http/Http2Stream.cpp
+++ b/netwerk/protocol/http/Http2Stream.cpp
@@ -1070,18 +1070,18 @@ Http2Stream::ConvertResponseHeaders(Http
     uint32_t ratio =
       aHeadersIn.Length() * 100 / aHeadersOut.Length();
     Telemetry::Accumulate(Telemetry::SPDY_SYN_REPLY_RATIO, ratio);
   }
 
   // The decoding went ok. Now we can customize and clean up.
 
   aHeadersIn.Truncate();
-  aHeadersOut.Append("X-Firefox-Spdy: h2");
-  aHeadersOut.Append("\r\n\r\n");
+  aHeadersOut.AppendLiteral("X-Firefox-Spdy: h2");
+  aHeadersOut.AppendLiteral("\r\n\r\n");
   LOG (("decoded response headers are:\n%s", aHeadersOut.BeginReading()));
   if (mIsTunnel && !mPlainTextTunnel) {
     aHeadersOut.Truncate();
     LOG(("Http2Stream::ConvertHeaders %p 0x%X headers removed for tunnel\n",
          this, mStreamID));
   }
   return NS_OK;
 }
--- a/netwerk/protocol/http/HttpBaseChannel.cpp
+++ b/netwerk/protocol/http/HttpBaseChannel.cpp
@@ -1229,21 +1229,21 @@ HttpBaseChannel::DoApplyContentConversio
       if (NS_FAILED(rv)) {
         LOG(("Unexpected failure of AsyncConvertData %s\n", val));
         return rv;
       }
 
       LOG(("converter removed '%s' content-encoding\n", val));
       if (gHttpHandler->IsTelemetryEnabled()) {
         int mode = 0;
-        if (from.Equals("gzip") || from.Equals("x-gzip")) {
+        if (from.EqualsLiteral("gzip") || from.EqualsLiteral("x-gzip")) {
           mode = 1;
-        } else if (from.Equals("deflate") || from.Equals("x-deflate")) {
+        } else if (from.EqualsLiteral("deflate") || from.EqualsLiteral("x-deflate")) {
           mode = 2;
-        } else if (from.Equals("br")) {
+        } else if (from.EqualsLiteral("br")) {
           mode = 3;
         }
         Telemetry::Accumulate(Telemetry::HTTP_CONTENT_ENCODING, mode);
       }
       nextListener = converter;
     }
     else {
       if (val)
--- a/netwerk/protocol/http/nsHttpChannel.cpp
+++ b/netwerk/protocol/http/nsHttpChannel.cpp
@@ -2237,18 +2237,18 @@ nsHttpChannel::ProcessAltService()
     }
 
     if (!gHttpHandler->AllowAltSvc() || (mCaps & NS_HTTP_DISALLOW_SPDY)) {
         return;
     }
 
     nsAutoCString scheme;
     mURI->GetScheme(scheme);
-    bool isHttp = scheme.Equals(NS_LITERAL_CSTRING("http"));
-    if (!isHttp && !scheme.Equals(NS_LITERAL_CSTRING("https"))) {
+    bool isHttp = scheme.EqualsLiteral("http");
+    if (!isHttp && !scheme.EqualsLiteral("https")) {
         return;
     }
 
     nsAutoCString altSvc;
     Unused << mResponseHead->GetHeader(nsHttp::Alternate_Service, altSvc);
     if (altSvc.IsEmpty()) {
         return;
     }
@@ -6396,18 +6396,18 @@ nsHttpChannel::BeginConnect()
     SetDoNotTrack();
 
     OriginAttributes originAttributes;
     NS_GetOriginAttributes(this, originAttributes);
 
     RefPtr<AltSvcMapping> mapping;
     if (!mConnectionInfo && mAllowAltSvc && // per channel
         !(mLoadFlags & LOAD_FRESH_CONNECTION) &&
-        (scheme.Equals(NS_LITERAL_CSTRING("http")) ||
-         scheme.Equals(NS_LITERAL_CSTRING("https"))) &&
+        (scheme.EqualsLiteral("http") ||
+         scheme.EqualsLiteral("https")) &&
         (!proxyInfo || proxyInfo->IsDirect()) &&
         (mapping = gHttpHandler->GetAltServiceMapping(scheme,
                                                       host, port,
                                                       mPrivateBrowsing,
                                                       originAttributes))) {
         LOG(("nsHttpChannel %p Alt Service Mapping Found %s://%s:%d [%s]\n",
              this, scheme.get(), mapping->AlternateHost().get(),
              mapping->AlternatePort(), mapping->HashKey().get()));
@@ -6424,25 +6424,25 @@ nsHttpChannel::BeginConnect()
             MOZ_ASSERT(NS_SUCCEEDED(rv));
         }
 
         nsCOMPtr<nsIConsoleService> consoleService =
             do_GetService(NS_CONSOLESERVICE_CONTRACTID);
         if (consoleService) {
             nsAutoString message(NS_LITERAL_STRING("Alternate Service Mapping found: "));
             AppendASCIItoUTF16(scheme.get(), message);
-            message.Append(NS_LITERAL_STRING("://"));
+            message.AppendLiteral(u"://");
             AppendASCIItoUTF16(host.get(), message);
-            message.Append(NS_LITERAL_STRING(":"));
+            message.AppendLiteral(u":");
             message.AppendInt(port);
-            message.Append(NS_LITERAL_STRING(" to "));
+            message.AppendLiteral(u" to ");
             AppendASCIItoUTF16(scheme.get(), message);
-            message.Append(NS_LITERAL_STRING("://"));
+            message.AppendLiteral(u"://");
             AppendASCIItoUTF16(mapping->AlternateHost().get(), message);
-            message.Append(NS_LITERAL_STRING(":"));
+            message.AppendLiteral(u":");
             message.AppendInt(mapping->AlternatePort());
             consoleService->LogStringMessage(message.get());
         }
 
         LOG(("nsHttpChannel %p Using connection info from altsvc mapping", this));
         mapping->GetConnectionInfo(getter_AddRefs(mConnectionInfo), proxyInfo, originAttributes);
         Telemetry::Accumulate(Telemetry::HTTP_TRANSACTION_USE_ALTSVC, true);
         Telemetry::Accumulate(Telemetry::HTTP_TRANSACTION_USE_ALTSVC_OE, !isHttps);
--- a/netwerk/protocol/http/nsHttpChannelAuthProvider.cpp
+++ b/netwerk/protocol/http/nsHttpChannelAuthProvider.cpp
@@ -526,17 +526,17 @@ nsHttpChannelAuthProvider::PrepareForAut
 
     if (!UsingHttpProxy() || mProxyAuthType.IsEmpty())
         return NS_OK;
 
     // We need to remove any Proxy_Authorization header left over from a
     // non-request based authentication handshake (e.g., for NTLM auth).
 
     nsAutoCString contractId;
-    contractId.Assign(NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX);
+    contractId.AssignLiteral(NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX);
     contractId.Append(mProxyAuthType);
 
     nsresult rv;
     nsCOMPtr<nsIHttpAuthenticator> precedingAuth =
         do_GetService(contractId.get(), &rv);
     if (NS_FAILED(rv))
         return rv;
 
@@ -1079,17 +1079,17 @@ nsHttpChannelAuthProvider::GetAuthentica
         this, mAuthChannel));
 
     GetAuthType(challenge, authType);
 
     // normalize to lowercase
     ToLowerCase(authType);
 
     nsAutoCString contractid;
-    contractid.Assign(NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX);
+    contractid.AssignLiteral(NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX);
     contractid.Append(authType);
 
     return CallGetService(contractid.get(), auth);
 }
 
 void
 nsHttpChannelAuthProvider::GetIdentityFromURI(uint32_t            authFlags,
                                               nsHttpAuthIdentity &ident)
--- a/netwerk/protocol/http/nsHttpRequestHead.cpp
+++ b/netwerk/protocol/http/nsHttpRequestHead.cpp
@@ -324,20 +324,20 @@ nsHttpRequestHead::SetMethod(const nsACS
 }
 
 void
 nsHttpRequestHead::SetOrigin(const nsACString &scheme, const nsACString &host,
                              int32_t port)
 {
     RecursiveMutexAutoLock mon(mRecursiveMutex);
     mOrigin.Assign(scheme);
-    mOrigin.Append(NS_LITERAL_CSTRING("://"));
+    mOrigin.AppendLiteral("://");
     mOrigin.Append(host);
     if (port >= 0) {
-        mOrigin.Append(NS_LITERAL_CSTRING(":"));
+        mOrigin.AppendLiteral(":");
         mOrigin.AppendInt(port);
     }
 }
 
 bool
 nsHttpRequestHead::IsSafeMethod()
 {
     RecursiveMutexAutoLock mon(mRecursiveMutex);
--- a/netwerk/protocol/http/nsHttpTransaction.cpp
+++ b/netwerk/protocol/http/nsHttpTransaction.cpp
@@ -1944,17 +1944,17 @@ nsHttpTransaction::CheckForStickyAuthSch
   }
 
   Tokenizer p(auth);
   nsAutoCString schema;
   while (p.ReadWord(schema)) {
       ToLowerCase(schema);
 
       nsAutoCString contractid;
-      contractid.Assign(NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX);
+      contractid.AssignLiteral(NS_HTTP_AUTHENTICATOR_CONTRACTID_PREFIX);
       contractid.Append(schema);
 
       // using a new instance because of thread safety of auth modules refcnt
       nsCOMPtr<nsIHttpAuthenticator> authenticator(do_CreateInstance(contractid.get()));
       if (authenticator) {
           uint32_t flags;
           nsresult rv = authenticator->GetAuthFlags(&flags);
           if (NS_SUCCEEDED(rv) && (flags & nsIHttpAuthenticator::CONNECTION_BASED)) {
--- a/netwerk/protocol/res/SubstitutingProtocolHandler.cpp
+++ b/netwerk/protocol/res/SubstitutingProtocolHandler.cpp
@@ -420,18 +420,17 @@ SubstitutingProtocolHandler::ResolveURI(
 
   // Some code relies on an empty path resolving to a file rather than a
   // directory.
   NS_ASSERTION(path.CharAt(0) == '/', "Path must begin with '/'");
   if (path.Length() == 1) {
     rv = baseURI->GetSpec(result);
   } else {
     // Make sure we always resolve the path as file-relative to our target URI.
-    path.InsertLiteral(".", 0);
-
+    path.Insert('.', 0);
     rv = baseURI->Resolve(path, result);
   }
 
   if (NS_WARN_IF(NS_FAILED(rv))) {
     return rv;
   }
 
   if (MOZ_LOG_TEST(gResLog, LogLevel::Debug)) {
--- a/netwerk/protocol/res/nsResProtocolHandler.cpp
+++ b/netwerk/protocol/res/nsResProtocolHandler.cpp
@@ -94,38 +94,38 @@ nsResProtocolHandler::GetSubstitutionInt
 }
 
 bool
 nsResProtocolHandler::ResolveSpecialCases(const nsACString& aHost,
                                           const nsACString& aPath,
                                           const nsACString& aPathname,
                                           nsACString& aResult)
 {
-    if (aHost.Equals("") || aHost.Equals(kAPP)) {
+    if (aHost.EqualsLiteral("") || aHost.EqualsLiteral(kAPP)) {
         aResult.Assign(mAppURI);
     } else if (aHost.Equals(kGRE)) {
         aResult.Assign(mGREURI);
     } else {
         return false;
     }
     aResult.Append(aPath);
     return true;
 }
 
 nsresult
 nsResProtocolHandler::SetSubstitution(const nsACString& aRoot, nsIURI* aBaseURI)
 {
-    MOZ_ASSERT(!aRoot.Equals(""));
-    MOZ_ASSERT(!aRoot.Equals(kAPP));
-    MOZ_ASSERT(!aRoot.Equals(kGRE));
+    MOZ_ASSERT(!aRoot.EqualsLiteral(""));
+    MOZ_ASSERT(!aRoot.EqualsLiteral(kAPP));
+    MOZ_ASSERT(!aRoot.EqualsLiteral(kGRE));
     return SubstitutingProtocolHandler::SetSubstitution(aRoot, aBaseURI);
 }
 
 nsresult
 nsResProtocolHandler::SetSubstitutionWithFlags(const nsACString& aRoot,
                                                nsIURI* aBaseURI,
                                                uint32_t aFlags)
 {
-    MOZ_ASSERT(!aRoot.Equals(""));
-    MOZ_ASSERT(!aRoot.Equals(kAPP));
-    MOZ_ASSERT(!aRoot.Equals(kGRE));
+    MOZ_ASSERT(!aRoot.EqualsLiteral(""));
+    MOZ_ASSERT(!aRoot.EqualsLiteral(kAPP));
+    MOZ_ASSERT(!aRoot.EqualsLiteral(kGRE));
     return SubstitutingProtocolHandler::SetSubstitutionWithFlags(aRoot, aBaseURI, aFlags);
 }
--- a/netwerk/protocol/viewsource/nsViewSourceChannel.cpp
+++ b/netwerk/protocol/viewsource/nsViewSourceChannel.cpp
@@ -415,17 +415,17 @@ nsViewSourceChannel::GetContentType(nsAC
         nsAutoCString contentType;
         rv = mChannel->GetContentType(contentType);
         if (NS_FAILED(rv)) return rv;
 
         // If we don't know our type, just say so.  The unknown
         // content decoder will then kick in automatically, and it
         // will call our SetOriginalContentType method instead of our
         // SetContentType method to set the type it determines.
-        if (!contentType.Equals(UNKNOWN_CONTENT_TYPE)) {
+        if (!contentType.EqualsLiteral(UNKNOWN_CONTENT_TYPE)) {
           contentType = VIEWSOURCE_CONTENT_TYPE;
         }
 
         mContentType = contentType;
     }
 
     aContentType = mContentType;
     return NS_OK;
--- a/netwerk/protocol/websocket/WebSocketChannel.cpp
+++ b/netwerk/protocol/websocket/WebSocketChannel.cpp
@@ -2558,17 +2558,17 @@ ParseWebSocketExtension(const nsACString
                         bool& aClientNoContextTakeover,
                         bool& aServerNoContextTakeover,
                         int32_t& aClientMaxWindowBits,
                         int32_t& aServerMaxWindowBits)
 {
   nsCCharSeparatedTokenizer tokens(aExtension, ';');
 
   if (!tokens.hasMoreTokens() ||
-      !tokens.nextToken().Equals(NS_LITERAL_CSTRING("permessage-deflate"))) {
+      !tokens.nextToken().EqualsLiteral("permessage-deflate")) {
     LOG(("WebSocketChannel::ParseWebSocketExtension: "
          "HTTP Sec-WebSocket-Extensions negotiated unknown value %s\n",
          PromiseFlatCString(aExtension).get()));
     return NS_ERROR_ILLEGAL_VALUE;
   }
 
   aClientNoContextTakeover = aServerNoContextTakeover = false;
   aClientMaxWindowBits = aServerMaxWindowBits = -1;
--- a/netwerk/streamconv/converters/mozTXTToHTMLConv.cpp
+++ b/netwerk/streamconv/converters/mozTXTToHTMLConv.cpp
@@ -72,34 +72,34 @@ mozTXTToHTMLConv::EscapeStr(nsString& aI
   //aInString.ReplaceSubstring("<", "&lt;");
   //aInString.ReplaceSubstring(">", "&gt;");
   for (uint32_t i = 0; i < aInString.Length();)
   {
     switch (aInString[i])
     {
     case '<':
       aInString.Cut(i, 1);
-      aInString.Insert(NS_LITERAL_STRING("&lt;"), i);
+      aInString.InsertLiteral(u"&lt;", i);
       i += 4; // skip past the integers we just added
       break;
     case '>':
       aInString.Cut(i, 1);
-      aInString.Insert(NS_LITERAL_STRING("&gt;"), i);
+      aInString.InsertLiteral(u"&gt;", i);
       i += 4; // skip past the integers we just added
       break;
     case '&':
       aInString.Cut(i, 1);
-      aInString.Insert(NS_LITERAL_STRING("&amp;"), i);
+      aInString.InsertLiteral(u"&amp;", i);
       i += 5; // skip past the integers we just added
       break;
     case '"':
       if (inAttribute)
       {
         aInString.Cut(i, 1);
-        aInString.Insert(NS_LITERAL_STRING("&quot;"), i);
+        aInString.InsertLiteral(u"&quot;", i);
         i += 6;
         break;
       }
       // else fall through
       MOZ_FALLTHROUGH;
     default:
       i++;
     }
--- a/netwerk/streamconv/converters/nsBinHexDecoder.cpp
+++ b/netwerk/streamconv/converters/nsBinHexDecoder.cpp
@@ -488,26 +488,26 @@ nsresult nsBinHexDecoder::DetectContentT
   const char * fileExt = strrchr(aFilename.get(), '.');
   if (!fileExt) {
     return NS_OK;
   }
 
   mimeService->GetTypeFromExtension(nsDependentCString(fileExt), contentType);
 
   // Only set the type if it's not empty and, to prevent recursive loops, not the binhex type
-  if (!contentType.IsEmpty() && !contentType.Equals(APPLICATION_BINHEX)) {
+  if (!contentType.IsEmpty() &&
+      !contentType.EqualsLiteral(APPLICATION_BINHEX)) {
     channel->SetContentType(contentType);
   } else {
     channel->SetContentType(NS_LITERAL_CSTRING(UNKNOWN_CONTENT_TYPE));
   }
 
   return NS_OK;
 }
 
-
 NS_IMETHODIMP
 nsBinHexDecoder::OnStopRequest(nsIRequest* request, nsISupports *aCtxt,
                                 nsresult aStatus)
 {
   nsresult rv = NS_OK;
 
   if (!mNextListener) return NS_ERROR_FAILURE;
   // don't do anything here...we'll fire our own on stop request when we are done
--- a/netwerk/streamconv/converters/nsTXTToHTMLConv.cpp
+++ b/netwerk/streamconv/converters/nsTXTToHTMLConv.cpp
@@ -280,35 +280,35 @@ nsTXTToHTMLConv::CatHTML(int32_t front, 
         mBuffer.Cut(front, back - front);
         mBuffer.Insert(mToken->modText, front);
         cursor = front+modLen;
     } else {
         nsString linkText;
         // href is implied
         mBuffer.Mid(linkText, front, back-front);
 
-        mBuffer.Insert(NS_LITERAL_STRING("<a href=\""), front);
+        mBuffer.InsertLiteral(u"<a href=\"", front);
         cursor += front+9;
         if (modLen) {
             mBuffer.Insert(mToken->modText, cursor);
             cursor += modLen;
         }
 
         NS_ConvertUTF16toUTF8 linkTextUTF8(linkText);
         nsCString escaped;
         if (NS_EscapeURL(linkTextUTF8.Data(), linkTextUTF8.Length(), esc_Minimal, escaped)) {
             mBuffer.Cut(cursor, back - front);
             CopyUTF8toUTF16(escaped, linkText);
             mBuffer.Insert(linkText, cursor);
             back = front + linkText.Length();
         }
 
         cursor += back-front;
-        mBuffer.Insert(NS_LITERAL_STRING("\">"), cursor);
+        mBuffer.InsertLiteral(u"\">", cursor);
         cursor += 2;
         mBuffer.Insert(linkText, cursor);
         cursor += linkText.Length();
-        mBuffer.Insert(NS_LITERAL_STRING("</a>"), cursor);
+        mBuffer.InsertLiteral(u"</a>", cursor);
         cursor += 4;
     }
     mToken = nullptr; // indicates completeness
     return cursor;
 }
--- a/netwerk/streamconv/converters/nsUnknownDecoder.cpp
+++ b/netwerk/streamconv/converters/nsUnknownDecoder.cpp
@@ -929,17 +929,17 @@ nsBinaryDetector::DetermineContentType(n
   Unused << httpChannel->GetResponseHeader(NS_LITERAL_CSTRING("Content-Encoding"),
                                            contentEncoding);
   if (!contentEncoding.IsEmpty()) {
     return;
   }
 
   LastDitchSniff(aRequest);
   MutexAutoLock lock(mMutex);
-  if (mContentType.Equals(APPLICATION_OCTET_STREAM)) {
+  if (mContentType.EqualsLiteral(APPLICATION_OCTET_STREAM)) {
     // We want to guess at it instead
     mContentType = APPLICATION_GUESS_FROM_EXT;
   } else {
     // Let the text/plain type we already have be, so that other content
     // sniffers can also get a shot at this data.
     mContentType.Truncate();
   }
 }
--- a/netwerk/test/gtest/TestStandardURL.cpp
+++ b/netwerk/test/gtest/TestStandardURL.cpp
@@ -157,17 +157,17 @@ TEST(TestStandardURL, From_test_standard
                                 "000177.0.00000.0x0001", "127.0.0.1.",
 
                                 "0X7F.0X00.0X00.0X01", "0X7F.0X01",
                                 "0X7F000001", "0X007F.0X0000.0X0000.0X0001",
                                 "000177.0.00000.0X0001"};
     for (uint32_t i = 0; i < sizeof(localIPv4s)/sizeof(localIPv4s[0]); i ++) {
         nsCString encHost(localIPv4s[i]);
         ASSERT_EQ(NS_OK, Test_NormalizeIPv4(encHost, result));
-        ASSERT_TRUE(result.Equals("127.0.0.1"));
+        ASSERT_TRUE(result.EqualsLiteral("127.0.0.1"));
     }
 
     const char* nonIPv4s[] = {"0xfffffffff", "0x100000000", "4294967296", "1.2.0x10000",
                               "1.0x1000000", "256.0.0.1", "1.256.1", "-1.0.0.0",
                               "1.2.3.4.5", "010000000000000000", "2+3", "0.0.0.-1",
                               "1.2.3.4..", "1..2", ".1.2.3.4"};
     for (uint32_t i = 0; i < sizeof(nonIPv4s)/sizeof(nonIPv4s[0]); i ++) {
         nsCString encHost(nonIPv4s[i]);
--- a/parser/html/nsHtml5ViewSourceUtils.cpp
+++ b/parser/html/nsHtml5ViewSourceUtils.cpp
@@ -13,20 +13,20 @@ nsHtml5HtmlAttributes*
 nsHtml5ViewSourceUtils::NewBodyAttributes()
 {
   nsHtml5HtmlAttributes* bodyAttrs = new nsHtml5HtmlAttributes(0);
   nsHtml5String id = nsHtml5Portability::newStringFromLiteral("viewsource");
   bodyAttrs->addAttribute(nsHtml5AttributeName::ATTR_ID, id, -1);
 
   nsString klass;
   if (mozilla::Preferences::GetBool("view_source.wrap_long_lines", true)) {
-    klass.Append(NS_LITERAL_STRING("wrap "));
+    klass.AppendLiteral(u"wrap ");
   }
   if (mozilla::Preferences::GetBool("view_source.syntax_highlight", true)) {
-    klass.Append(NS_LITERAL_STRING("highlight"));
+    klass.AppendLiteral(u"highlight");
   }
   if (!klass.IsEmpty()) {
     bodyAttrs->addAttribute(
       nsHtml5AttributeName::ATTR_CLASS, nsHtml5String::FromString(klass), -1);
   }
 
   int32_t tabSize = mozilla::Preferences::GetInt("view_source.tab_size", 4);
   if (tabSize > 0) {
--- a/rdf/datasource/nsFileSystemDataSource.cpp
+++ b/rdf/datasource/nsFileSystemDataSource.cpp
@@ -1014,17 +1014,17 @@ FileSystemDataSource::GetFolderList(nsIR
             continue;
         }
 
         // using nsEscape() [above] doesn't escape slashes, so do that by hand
         int32_t         aOffset;
         while ((aOffset = leaf.FindChar('/')) >= 0)
         {
             leaf.Cut((uint32_t)aOffset, 1);
-            leaf.Insert("%2F", (uint32_t)aOffset);
+            leaf.InsertLiteral("%2F", (uint32_t)aOffset);
         }
 
         // append the encoded name
         fullURI.Append(leaf);
 
         bool            dirFlag = false;
         rv = aFile->IsDirectory(&dirFlag);
         if (NS_SUCCEEDED(rv) && dirFlag)
--- a/security/apps/AppSignatureVerification.cpp
+++ b/security/apps/AppSignatureVerification.cpp
@@ -1216,17 +1216,17 @@ CheckDirForUnsignedFiles(nsIFile* aDir,
     bool isDir;
     rv = file->IsDirectory(&isDir);
     if (NS_FAILED(rv)) {
       return rv;
     }
 
     // if it's a directory we need to recurse
     if (isDir) {
-      curName.Append(NS_LITERAL_STRING("/"));
+      curName.AppendLiteral(u"/");
       rv = CheckDirForUnsignedFiles(file, curName, aItems,
                                     sigFilename, sfFilename, mfFilename);
     } else {
       // The files that comprise the signature mechanism are not covered by the
       // signature.
       //
       // XXX: This is OK for a single signature, but doesn't work for
       // multiple signatures because the metadata for the other signatures
--- a/security/certverifier/OCSPRequestor.cpp
+++ b/security/certverifier/OCSPRequestor.cpp
@@ -150,24 +150,24 @@ DoOCSPRequest(const UniquePLArenaPool& a
     return rv;
   }
   UniqueHTTPServerSession serverSession(serverSessionPtr);
 
   nsAutoCString path;
   if (pathLen > 0) {
     path.Assign(url + pathPos, static_cast<nsAutoCString::size_type>(pathLen));
   } else {
-    path.Assign("/");
+    path.AssignLiteral("/");
   }
   MOZ_LOG(gCertVerifierLog, LogLevel::Debug,
          ("Setting up OCSP request: pre all path =%s  pathlen=%d\n", path.get(),
           pathLen));
   nsAutoCString method("POST");
   if (useGET) {
-    method.Assign("GET");
+    method.AssignLiteral("GET");
     if (!StringEndsWith(path, NS_LITERAL_CSTRING("/"))) {
       path.Append("/");
     }
     nsrv = AppendEscapedBase64Item(encodedRequest, path);
     if (NS_WARN_IF(NS_FAILED(nsrv))) {
       return Result::FATAL_ERROR_LIBRARY_FAILURE;
     }
   }
--- a/security/manager/ssl/StaticHPKPins.h
+++ b/security/manager/ssl/StaticHPKPins.h
@@ -1135,9 +1135,9 @@ static const TransportSecurityPreload kP
   { "za.search.yahoo.com", false, true, false, -1, &kPinset_yahoo },
   { "zh.search.yahoo.com", false, true, false, -1, &kPinset_yahoo },
 };
 
 // Pinning Preload List Length = 479;
 
 static const int32_t kUnknownId = -1;
 
-static const PRTime kPreloadPKPinsExpirationTime = INT64_C(1514655026300000);
+static const PRTime kPreloadPKPinsExpirationTime = INT64_C(1514742050390000);
--- a/security/manager/ssl/nsCertOverrideService.cpp
+++ b/security/manager/ssl/nsCertOverrideService.cpp
@@ -101,17 +101,17 @@ nsCertOverrideService::Init()
     MOZ_ASSERT_UNREACHABLE("nsCertOverrideService initialized off main thread");
     return NS_ERROR_NOT_SAME_THREAD;
   }
 
   // Note that the names of these variables would seem to indicate that at one
   // point another hash algorithm was used and is still supported for backwards
   // compatibility. This is not the case. It has always been SHA256.
   mOidTagForStoringNewHashes = SEC_OID_SHA256;
-  mDottedOidForStoringNewHashes.Assign("OID.2.16.840.1.101.3.4.2.1");
+  mDottedOidForStoringNewHashes.AssignLiteral("OID.2.16.840.1.101.3.4.2.1");
 
   nsCOMPtr<nsIObserverService> observerService =
       mozilla::services::GetObserverService();
 
   // If we cannot add ourselves as a profile change observer, then we will not
   // attempt to read/write any settings file. Otherwise, we would end up
   // reading/writing the wrong settings file after a profile change.
   if (observerService) {
--- a/security/manager/ssl/nsNSSComponent.cpp
+++ b/security/manager/ssl/nsNSSComponent.cpp
@@ -2331,17 +2331,17 @@ nsNSSComponent::Observe(nsISupports* aSu
     } else if (prefName.EqualsLiteral("security.ssl.enable_alpn")) {
       SSL_OptionSetDefault(SSL_ENABLE_ALPN,
                            Preferences::GetBool("security.ssl.enable_alpn",
                                                 ALPN_ENABLED_DEFAULT));
     } else if (prefName.EqualsLiteral("security.tls.enable_0rtt_data")) {
       SSL_OptionSetDefault(SSL_ENABLE_0RTT_DATA,
                            Preferences::GetBool("security.tls.enable_0rtt_data",
                                                 ENABLED_0RTT_DATA_DEFAULT));
-    } else if (prefName.Equals("security.ssl.disable_session_identifiers")) {
+    } else if (prefName.EqualsLiteral("security.ssl.disable_session_identifiers")) {
       ConfigureTLSSessionIdentifiers();
     } else if (prefName.EqualsLiteral("security.OCSP.enabled") ||
                prefName.EqualsLiteral("security.OCSP.require") ||
                prefName.EqualsLiteral("security.OCSP.GET.enabled") ||
                prefName.EqualsLiteral("security.pki.cert_short_lifetime_in_days") ||
                prefName.EqualsLiteral("security.ssl.enable_ocsp_stapling") ||
                prefName.EqualsLiteral("security.ssl.enable_ocsp_must_staple") ||
                prefName.EqualsLiteral("security.pki.certificate_transparency.mode") ||
--- a/security/manager/ssl/nsSTSPreloadList.errors
+++ b/security/manager/ssl/nsSTSPreloadList.errors
@@ -30,23 +30,24 @@ 123.gg: could not connect to host
 123share.org: could not connect to host
 123test.de: did not receive HSTS header
 123test.es: did not receive HSTS header
 123test.fr: did not receive HSTS header
 126ium.moe: could not connect to host
 127011-networks.ch: could not connect to host
 12vpn.org: could not connect to host
 12vpnchina.com: could not connect to host
+13826145000.com: could not connect to host
 1396.net: could not connect to host
 1536.cf: could not connect to host
 163pwd.com: could not connect to host
 166166.com: could not connect to host
 16deza.com: did not receive HSTS header
 16packets.com: could not connect to host
-173vpn.cn: could not connect to host
+173vpn.cn: did not receive HSTS header
 188betwarriors.co.uk: could not connect to host
 188trafalgar.ca: did not receive HSTS header
 1921958389.rsc.cdn77.org: did not receive HSTS header
 195gm.com: could not connect to host
 1a-jva.de: could not connect to host
 1atic.com: could not connect to host
 1cover.com: could not connect to host
 1k8b.com: could not connect to host
@@ -65,28 +66,29 @@ 24hourpaint.com: could not connect to ho
 24sihu.com: could not connect to host
 25daysof.io: could not connect to host
 2859cc.com: could not connect to host
 2acbi-asso.fr: did not receive HSTS header
 2bizi.ru: could not connect to host
 2brokegirls.org: could not connect to host
 2carpros.com: did not receive HSTS header
 2intermediate.co.uk: did not receive HSTS header
+2krueger.de: could not connect to host
 2or3.tk: could not connect to host
 2ss.jp: could not connect to host
 300651.ru: did not receive HSTS header
 300m.com: did not receive HSTS header
 300mbmovies4u.cc: could not connect to host
 301.website: could not connect to host
 302.nyc: could not connect to host
 32ph.com: could not connect to host
 33338522.com: could not connect to host
 3338522.com: could not connect to host
 33drugstore.com: did not receive HSTS header
-341.mg: did not receive HSTS header
+341.mg: could not connect to host
 3555aa.com: could not connect to host
 35792.de: could not connect to host
 360gradus.com: did not receive HSTS header
 365.or.jp: could not connect to host
 368mibn.com: could not connect to host
 3778xl.com: did not receive HSTS header
 38sihu.com: could not connect to host
 39sihu.com: could not connect to host
@@ -111,17 +113,16 @@ 4azino777.ru: did not receive HSTS heade
 4cclothing.com: could not connect to host
 4elements.com: did not receive HSTS header
 4eyes.ch: did not receive HSTS header
 4miners.net: could not connect to host
 4ourty2.org: did not receive HSTS header
 4sqsu.eu: could not connect to host
 4w-performers.link: could not connect to host
 50millionablaze.org: could not connect to host
-517vpn.cn: could not connect to host
 540.co: did not receive HSTS header
 54bf.com: could not connect to host
 55558522.com: could not connect to host
 56ct.com: could not connect to host
 5piecesofadvice.com: could not connect to host
 5w5.la: could not connect to host
 60ych.net: did not receive HSTS header
 6120.eu: did not receive HSTS header
@@ -229,17 +230,16 @@ accelight.jp: did not receive HSTS heade
 access-sofia.org: did not receive HSTS header
 accommodation-berry.com.au: max-age too low: 300
 accountradar.com: could not connect to host
 accounts-p.com: could not connect to host
 acgmoon.org: could not connect to host
 acheirj.com.br: did not receive HSTS header
 acheritage.co.uk: could not connect to host
 acisonline.net: did not receive HSTS header
-acmle.com: could not connect to host
 acoffeeshops.com: could not connect to host
 acorns.com: did not receive HSTS header
 acr.im: could not connect to host
 acrepairdrippingsprings.com: could not connect to host
 acritelli.com: did not receive HSTS header
 acslimited.co.uk: did not receive HSTS header
 activateplay.com: did not receive HSTS header
 active-escape.com: could not connect to host
@@ -310,21 +310,19 @@ agrimap.com: did not receive HSTS header
 agrios.de: could not connect to host
 agro-id.gov.ua: did not receive HSTS header
 agroglass.com.br: did not receive HSTS header
 agtv.com.br: did not receive HSTS header
 ahabingo.com: did not receive HSTS header
 ahoynetwork.com: did not receive HSTS header
 ahri.ovh: could not connect to host
 aicial.co.uk: could not connect to host
-aicial.com: did not receive HSTS header
 aicial.com.au: could not connect to host
 aidanwoods.com: did not receive HSTS header
 aids.gov: did not receive HSTS header
-aiforsocialmedia.com: did not receive HSTS header
 aifreeze.ru: could not connect to host
 aify.eu: could not connect to host
 ainrb.com: did not receive HSTS header
 aip-marine.com: could not connect to host
 aiponne.com: did not receive HSTS header
 aircomms.com: did not receive HSTS header
 airlea.com: could not connect to host
 airlinecheckins.com: did not receive HSTS header
@@ -364,17 +362,16 @@ alecvannoten.be: did not receive HSTS he
 alenan.org: could not connect to host
 alessandro.pw: did not receive HSTS header
 alessandroz.pro: could not connect to host
 alethearose.com: did not receive HSTS header
 alexandre.sh: did not receive HSTS header
 alexbaker.org: did not receive HSTS header
 alexberts.ch: did not receive HSTS header
 alexdodge.ca: could not connect to host
-alexischaussy.xyz: could not connect to host
 alexismeza.com: could not connect to host
 alexismeza.com.mx: could not connect to host
 alexismeza.dk: could not connect to host
 alexismeza.es: could not connect to host
 alexismeza.nl: could not connect to host
 alexkidd.de: did not receive HSTS header
 alexvetter.de: could not connect to host
 alfa24.pro: could not connect to host
@@ -502,16 +499,17 @@ annabellaw.com: did not receive HSTS hea
 anomaly.ws: did not receive HSTS header
 anongoth.pl: could not connect to host
 anonymo.co.uk: could not connect to host
 anonymo.uk: could not connect to host
 anonymousstatecollegelulzsec.com: could not connect to host
 anook.com: max-age too low: 0
 another.ch: could not connect to host
 ansdell.info: could not connect to host
+anshuman-chatterjee.com: did not receive HSTS header
 ansibeast.net: could not connect to host
 anstoncs.com.au: max-age too low: 86400
 ant.land: could not connect to host
 anthenor.co.uk: could not connect to host
 anthonyavon.com: could not connect to host
 antimine.kr: could not connect to host
 antocom.com: did not receive HSTS header
 antoine-roux.fr: could not connect to host
@@ -663,16 +661,17 @@ audiovisualdevices.com.au: did not recei
 auditmatrix.com: did not receive HSTS header
 augias.org: could not connect to host
 aujapan.ru: could not connect to host
 aunali1.com: could not connect to host
 aurainfosec.com: did not receive HSTS header
 aurainfosec.com.au: could not connect to host
 auraredeye.com: could not connect to host
 auraredshield.com: did not receive HSTS header
+auri.ga: could not connect to host
 auroratownshipfd.org: could not connect to host
 aurugs.com: did not receive HSTS header
 ausnah.me: could not connect to host
 ausoptic.com.au: max-age too low: 2592000
 aussiecable.org: did not receive HSTS header
 auth.mail.ru: did not receive HSTS header
 authentication.io: could not connect to host
 authoritynutrition.com: did not receive HSTS header
@@ -682,16 +681,17 @@ autodeploy.it: could not connect to host
 autoeet.cz: did not receive HSTS header
 autoepc.ro: did not receive HSTS header
 autojuhos.sk: could not connect to host
 autokovrik-diskont.ru: did not receive HSTS header
 automobiles5.com: could not connect to host
 autotsum.com: could not connect to host
 autumnwindsagility.com: could not connect to host
 auverbox.ovh: could not connect to host
+auvernet.org: could not connect to host
 aux-arts-de-la-table.com: did not receive HSTS header
 auxetek.se: could not connect to host
 auxiliumincrementum.co.uk: could not connect to host
 av.de: did not receive HSTS header
 avantmfg.com: did not receive HSTS header
 avec-ou-sans-ordonnance.fr: could not connect to host
 avepol.cz: did not receive HSTS header
 avepol.eu: did not receive HSTS header
@@ -734,16 +734,17 @@ badcronjob.com: could not connect to hos
 badenhard.eu: could not connect to host
 badkamergigant.com: could not connect to host
 badlink.org: could not connect to host
 baff.lu: did not receive HSTS header
 bagiobella.com: max-age too low: 0
 baiduaccount.com: could not connect to host
 bailbondsaffordable.com: did not receive HSTS header
 bair.io: could not connect to host
+bakaweb.fr: could not connect to host
 bakhansen.com: did not receive HSTS header
 bakingstone.com: could not connect to host
 bakkerdesignandbuild.com: did not receive HSTS header
 balcan-underground.net: could not connect to host
 baldur.cc: could not connect to host
 baldwinkoo.com: could not connect to host
 baleares.party: could not connect to host
 balloonphp.com: could not connect to host
@@ -818,16 +819,17 @@ befundup.com: could not connect to host
 behere.be: could not connect to host
 behoerden-online-dienste.de: did not receive HSTS header
 beholdthehurricane.com: could not connect to host
 beichtgenerator.de: did not receive HSTS header
 beier.io: could not connect to host
 beikeil.de: did not receive HSTS header
 belairsewvac.com: could not connect to host
 belewpictures.com: did not receive HSTS header
+belhopro.be: could not connect to host
 belize-firmengruendung.com: could not connect to host
 belliash.eu.org: did not receive HSTS header
 belltower.io: could not connect to host
 belmontprom.com: could not connect to host
 bemyvictim.com: max-age too low: 2678400
 bendechrai.com: did not receive HSTS header
 beneffy.com: did not receive HSTS header
 benjakesjohnson.com: could not connect to host
@@ -842,29 +844,30 @@ beraru.tk: could not connect to host
 berger.work: could not connect to host
 berlatih.com: did not receive HSTS header
 berlinleaks.com: could not connect to host
 bernieware.de: could not connect to host
 berrymark.be: max-age too low: 0
 besixdouze.world: could not connect to host
 besnik.de: could not connect to host
 besola.de: did not receive HSTS header
-best-wallpaper.net: did not receive HSTS header
+best-wallpaper.net: could not connect to host
 bestbeards.ca: could not connect to host
 bestbridal.top: could not connect to host
 bestcellular.com: did not receive HSTS header
 besthost.cz: did not receive HSTS header
 bestmodels.su: did not receive HSTS header
 bestof1001.de: did not receive HSTS header
 bestorangeseo.com: could not connect to host
 bestschools.top: could not connect to host
 betaclean.fr: did not receive HSTS header
 betafive.net: could not connect to host
 betakah.net: did not receive HSTS header
 betcafearena.ro: could not connect to host
+bethanyduke.com: max-age too low: 7776000
 bethditto.com: did not receive HSTS header
 betnet.fr: could not connect to host
 betobaccofree.gov: could not connect to host
 betplanning.it: did not receive HSTS header
 bets.de: did not receive HSTS header
 betshoot.com: did not receive HSTS header
 bettween.com: did not receive HSTS header
 betz.ro: did not receive HSTS header
@@ -873,17 +876,16 @@ bevapehappy.com: did not receive HSTS he
 bewerbungsfibel.de: did not receive HSTS header
 beyond-edge.com: could not connect to host
 beyuna.co.uk: did not receive HSTS header
 beyuna.eu: did not receive HSTS header
 beyuna.nl: did not receive HSTS header
 bezorg.ninja: could not connect to host
 bezprawnik.pl: did not receive HSTS header
 bf.am: max-age too low: 0
-bfd.vodka: could not connect to host
 bfear.com: could not connect to host
 bfelob.gov: max-age too low: 86400
 bffm.biz: could not connect to host
 bgcparkstad.nl: did not receive HSTS header
 bgmn.net: max-age too low: 0
 bhatia.at: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 119"  data: no]
 bi.search.yahoo.com: did not receive HSTS header
 biblerhymes.com: did not receive HSTS header
@@ -905,16 +907,17 @@ bildermachr.de: could not connect to hos
 bildiri.ci: did not receive HSTS header
 bildschirmflackern.de: did not receive HSTS header
 biletua.de: could not connect to host
 billin.net: did not receive HSTS header
 billkiss.com: could not connect to host
 billninja.com: did not receive HSTS header
 billrusling.com: could not connect to host
 bimbo.com: did not receive HSTS header
+binarystud.io: could not connect to host
 binderapp.net: could not connect to host
 bioespuna.eu: did not receive HSTS header
 biofam.ru: did not receive HSTS header
 bioknowme.com: did not receive HSTS header
 bionicspirit.com: could not connect to host
 biophysik-ssl.de: did not receive HSTS header
 birkman.com: did not receive HSTS header
 bisterfeldt.com: could not connect to host
@@ -975,17 +978,18 @@ blog.torproject.org: max-age too low: 10
 blogabout.ru: did not receive HSTS header
 bloglikepro.com: could not connect to host
 bloomzoomy.ru: max-age too low: 172800
 blowjs.com: could not connect to host
 bltc.co: could not connect to host
 blubbablasen.de: could not connect to host
 blucas.org: did not receive HSTS header
 blue17.co.uk: did not receive HSTS header
-bluecon.eu: could not connect to host
+bluebill.net: did not receive HSTS header
+bluecon.eu: did not receive HSTS header
 bluefrag.com: could not connect to host
 blueglobalmedia.com: could not connect to host
 blueliv.com: did not receive HSTS header
 bluescloud.xyz: could not connect to host
 bluetenmeer.com: did not receive HSTS header
 bluketing.com: did not receive HSTS header
 bluserv.net: could not connect to host
 bluteklab.com: did not receive HSTS header
@@ -1024,21 +1028,21 @@ borchers-media.de: could not connect to 
 borderlinegroup.com: could not connect to host
 boringsecurity.net: could not connect to host
 boris.one: did not receive HSTS header
 borscheid-wenig.com: did not receive HSTS header
 boschee.net: could not connect to host
 botox.bz: did not receive HSTS header
 botserver.de: could not connect to host
 bouncecoffee.com: did not receive HSTS header
+bouncourseplanner.net: could not connect to host
 bouwbedrijfpurmerend.nl: could not connect to host
 bowlroll.net: max-age too low: 0
 boxcryptor.com: did not receive HSTS header
 boxintense.com: did not receive HSTS header
-boyhost.cn: did not receive HSTS header
 bp-wahl.at: did not receive HSTS header
 bqtoolbox.com: could not connect to host
 bragasoft.com.br: did not receive HSTS header
 braineet.com: did not receive HSTS header
 brainfork.ml: could not connect to host
 braintm.com: could not connect to host
 braintreegateway.com: did not receive HSTS header
 braintreepayments.com: did not receive HSTS header
@@ -1050,16 +1054,17 @@ brandon.so: could not connect to host
 brandred.net: could not connect to host
 brandspray.com: could not connect to host
 brasilmorar.com: did not receive HSTS header
 bratteng.xyz: could not connect to host
 brava.bg: did not receive HSTS header
 bravz.de: could not connect to host
 bregnedalsystems.dk: did not receive HSTS header
 bremensaki.com: max-age too low: 2592000
+brenden.net.au: did not receive HSTS header
 brentnewbury.com: could not connect to host
 brettabel.com: could not connect to host
 bretz-hufer.de: could not connect to host
 brfvh24.se: could not connect to host
 brickoo.com: could not connect to host
 brickyardbuffalo.com: did not receive HSTS header
 bridholm.se: could not connect to host
 brightstarkids.com.au: did not receive HSTS header
@@ -1077,16 +1082,17 @@ brunoramos.com: could not connect to hos
 brunoramos.org: could not connect to host
 brunosouza.org: could not connect to host
 bryn.xyz: could not connect to host
 bsagan.fr: could not connect to host
 bsdtips.com: could not connect to host
 bsociabl.com: could not connect to host
 btc-e.com: did not receive HSTS header
 btcdlc.com: could not connect to host
+buben.tech: did not receive HSTS header
 bubulazi.com: did not receive HSTS header
 bubulazy.com: did not receive HSTS header
 buch-cuber.de: max-age too low: 0
 buchheld.at: did not receive HSTS header
 bucket.tk: could not connect to host
 budgetthostels.nl: did not receive HSTS header
 budskap.eu: could not connect to host
 buenosairesestetica.com.ar: could not connect to host
@@ -1139,16 +1145,17 @@ buybaby.eu: did not receive HSTS header
 buyfox.de: did not receive HSTS header
 buzzconcert.com: could not connect to host
 buzztelco.com.au: did not receive HSTS header
 bw81.xyz: could not connect to host
 bwear4all.de: could not connect to host
 by1898.com: could not connect to host
 by4cqb.cn: could not connect to host
 bydisk.com: could not connect to host
+byken.cn: did not receive HSTS header
 bynet.cz: could not connect to host
 bynumlaw.net: did not receive HSTS header
 bypassed.bid: could not connect to host
 bypassed.cc: did not receive HSTS header
 bypassed.club: could not connect to host
 bypassed.date: could not connect to host
 bypassed.download: could not connect to host
 bypassed.faith: could not connect to host
@@ -1172,16 +1179,17 @@ byte.wtf: did not receive HSTS header
 bytepark.de: did not receive HSTS header
 bytesatwork.eu: could not connect to host
 bytesund.biz: could not connect to host
 bytesunlimited.com: could not connect to host
 byurudraw.pics: could not connect to host
 c-rickroll-v.pw: could not connect to host
 c0rn3j.com: did not receive HSTS header
 c1yd3i.me: could not connect to host
+c3-compose.com: could not connect to host
 c3b.info: could not connect to host
 cabarave.com: could not connect to host
 cabsites.com: could not connect to host
 cabusar.fr: could not connect to host
 caconnect.org: could not connect to host
 cadao.me: did not receive HSTS header
 caesreon.com: could not connect to host
 cafe-murr.de: could not connect to host
@@ -1206,17 +1214,17 @@ cambridgeanalytica.org: did not receive 
 camelservers.com: did not receive HSTS header
 camisadotorcedor.com.br: did not receive HSTS header
 camjackson.net: did not receive HSTS header
 cammarkets.com: could not connect to host
 camolist.com: could not connect to host
 campaignelves.com: did not receive HSTS header
 campbellsoftware.co.uk: could not connect to host
 campfire.co.il: did not receive HSTS header
-campusdrugprevention.gov: did not receive HSTS header
+campusdrugprevention.gov: could not connect to host
 camsanalytics.com: could not connect to host
 canadiangamblingchoice.com: did not receive HSTS header
 canarymod.net: could not connect to host
 cancelmyprofile.com: did not receive HSTS header
 candicontrols.com: did not receive HSTS header
 candratech.com: could not connect to host
 candygirl.shop: could not connect to host
 cannyfoxx.me: could not connect to host
@@ -1274,16 +1282,17 @@ ccblog.de: did not receive HSTS header
 ccsys.com: could not connect to host
 cctech.ph: could not connect to host
 cd.search.yahoo.com: did not receive HSTS header
 cd0.us: could not connect to host
 cdcpartners.gov: could not connect to host
 cdnb.co: could not connect to host
 cdndepo.com: could not connect to host
 cdreporting.co.uk: did not receive HSTS header
+cdt.org: did not receive HSTS header
 celeirorural.com.br: did not receive HSTS header
 celina-reads.de: did not receive HSTS header
 cellsites.nz: could not connect to host
 centennialrewards.com: did not receive HSTS header
 centralpoint.be: did not receive HSTS header
 centralpoint.nl: did not receive HSTS header
 centralvacsunlimited.net: could not connect to host
 centrepoint-community.com: could not connect to host
@@ -1308,16 +1317,17 @@ cgerstner.eu: could not connect to host
 cgsshelper.tk: could not connect to host
 chahub.com: could not connect to host
 chainmonitor.com: could not connect to host
 championsofregnum.com: did not receive HSTS header
 chandlerredding.com: did not receive HSTS header
 changetip.com: did not receive HSTS header
 chaos.fail: did not receive HSTS header
 chaoswebs.net: did not receive HSTS header
+chaoticlaw.com: could not connect to host
 charityclear.com: did not receive HSTS header
 charitystreet.co.uk: could not connect to host
 charlipopkids.com.au: could not connect to host
 charnleyhouse.co.uk: did not receive HSTS header
 charp.eu: could not connect to host
 chartstoffarm.de: max-age too low: 10
 chaska.co.za: did not receive HSTS header
 chat-porc.eu: did not receive HSTS header
@@ -1363,16 +1373,17 @@ chrisbrakebill.com: could not connect to
 chrisbrown.id.au: could not connect to host
 chrisfaber.com: could not connect to host
 chriskirchner.de: did not receive HSTS header
 chriskyrouac.com: could not connect to host
 chrisopperwall.com: did not receive HSTS header
 christiaandruif.nl: could not connect to host
 christianbro.gq: could not connect to host
 christophercolumbusfoundation.gov: could not connect to host
+christopherpritchard.co.uk: could not connect to host
 christophersole.com: could not connect to host
 christophheich.me: could not connect to host
 chrisupjohn.com: could not connect to host
 chrisvicmall.com: did not receive HSTS header
 chrome-devtools-frontend.appspot.com: did not receive HSTS header (error ignored - included regardless)
 chrome.google.com: did not receive HSTS header (error ignored - included regardless)
 chrst.ph: could not connect to host
 chua.cf: could not connect to host
@@ -1423,25 +1434,25 @@ cliftons.com: did not receive HSTS heade
 clintonbloodworth.com: could not connect to host
 clintonbloodworth.io: could not connect to host
 clintwilson.technology: max-age too low: 2592000
 clip.ovh: could not connect to host
 clipped4u.com: could not connect to host
 cloud-project.com: could not connect to host
 cloud.wtf: could not connect to host
 cloudapi.vc: could not connect to host
-cloudbleed.info: could not connect to host
 cloudcert.org: did not receive HSTS header
 cloudcy.net: could not connect to host
 clouddesktop.co.nz: could not connect to host
 cloudey.net: did not receive HSTS header
 cloudflare.com: did not receive HSTS header
 cloudimag.es: could not connect to host
 cloudlink.club: could not connect to host
 cloudns.com.au: could not connect to host
+clouds.webcam: could not connect to host
 cloudspotterapp.com: did not receive HSTS header
 cloudstoragemaus.com: could not connect to host
 cloudstorm.me: could not connect to host
 cloudstrike.co: could not connect to host
 cloudwalk.io: did not receive HSTS header
 clounix.online: could not connect to host
 clovissantos.com: could not connect to host
 clowde.in: could not connect to host
@@ -1529,31 +1540,32 @@ compraneta.com: did not receive HSTS hea
 comprehensiveihc.com: could not connect to host
 compucorner.com.mx: could not connect to host
 computeremergency.com.au: did not receive HSTS header
 computersystems.guru: did not receive HSTS header
 computertal.de: could not connect to host
 conaudisa.com: did not receive HSTS header
 conception.sk: could not connect to host
 concord-group.co.jp: did not receive HSTS header
+confidential.network: did not receive HSTS header
 confirm365.com: could not connect to host
 conformal.com: could not connect to host
 cong5.net: max-age too low: 0
 congz.me: could not connect to host
 conjugacao.com.br: did not receive HSTS header
 connect.ua: could not connect to host
 connected-verhuurservice.nl: did not receive HSTS header
 connectfss.com: could not connect to host
 consciousandglamorous.com: could not connect to host
 consciousbrand.org.au: could not connect to host
 consciousbranding.org.au: could not connect to host
 consciousbrands.net.au: could not connect to host
 console.python.org: did not receive HSTS header
 console.support: did not receive HSTS header
-contactbig.com: did not receive HSTS header
+contactbig.com: could not connect to host
 contactsingapore.sg: did not receive HSTS header
 containerstatistics.com: could not connect to host
 contarkos.xyz: could not connect to host
 continuumgaming.com: could not connect to host
 controlcenter.gigahost.dk: did not receive HSTS header
 controleer-maar-een-ander.nl: could not connect to host
 convert.zone: did not receive HSTS header
 cooink.net: could not connect to host
@@ -1579,17 +1591,16 @@ cormilu.com.br: did not receive HSTS hea
 corozanu.ro: did not receive HSTS header
 corporateencryption.com: could not connect to host
 correctpaardbatterijnietje.nl: did not receive HSTS header
 corruption-mc.net: could not connect to host
 corruption-rsps.net: could not connect to host
 corruption-server.net: could not connect to host
 costow.club: could not connect to host
 count.sh: could not connect to host
-countryoutlaws.ca: could not connect to host
 couponcodeq.com: did not receive HSTS header
 couragewhispers.ca: could not connect to host
 coursdeprogrammation.com: could not connect to host
 coursella.com: did not receive HSTS header
 covenantbank.net: could not connect to host
 coverdat.com: did not receive HSTS header
 coverduck.ru: could not connect to host
 cpuvinf.eu.org: could not connect to host
@@ -1631,17 +1642,17 @@ crowd.supply: did not receive HSTS heade
 crowdcurity.com: did not receive HSTS header
 crowdjuris.com: could not connect to host
 crownruler.com: did not receive HSTS header
 crows.io: max-age too low: 60
 crrev.com: did not receive HSTS header (error ignored - included regardless)
 crtvmgmt.com: could not connect to host
 crudysql.com: could not connect to host
 crufad.org: did not receive HSTS header
-cruikshank.com.au: could not connect to host
+cruikshank.com.au: did not receive HSTS header
 cruzr.xyz: could not connect to host
 crypt.guru: could not connect to host
 crypticshell.co.uk: could not connect to host
 cryptify.eu: could not connect to host
 cryptobin.org: could not connect to host
 cryptodash.net: could not connect to host
 cryptojar.io: did not receive HSTS header
 cryptolab.pro: could not connect to host
@@ -1750,16 +1761,17 @@ danrl.de: could not connect to host
 danwillenberg.com: did not receive HSTS header
 daolerp.xyz: could not connect to host
 daplie.com: did not receive HSTS header
 dargasia.is: could not connect to host
 dario.im: could not connect to host
 dark-x.cf: could not connect to host
 darkanzali.pl: max-age too low: 0
 darkengine.io: could not connect to host
+darkengine.net: could not connect to host
 darkfriday.ddns.net: could not connect to host
 darkhole.cn: did not receive HSTS header
 darkkeepers.dk: could not connect to host
 darknebula.space: could not connect to host
 darkpony.ru: could not connect to host
 darksideof.it: could not connect to host
 darkstance.org: could not connect to host
 darktree.in: could not connect to host
@@ -1786,17 +1798,17 @@ datortipsen.se: could not connect to hos
 davidandkailey.com: could not connect to host
 davidglidden.eu: did not receive HSTS header
 davidhunter.scot: did not receive HSTS header
 davidmessenger.co.uk: could not connect to host
 davidnoren.com: did not receive HSTS header
 davidreinhardt.de: could not connect to host
 davidscherzer.at: could not connect to host
 daylightcompany.com: did not receive HSTS header
-days.one: did not receive HSTS header
+days.one: could not connect to host
 daytonaseaside.com: did not receive HSTS header
 db.gy: could not connect to host
 dbx.ovh: did not receive HSTS header
 dcaracing.nl: could not connect to host
 dccode.gov: could not connect to host
 dccraft.net: could not connect to host
 dcl.re: did not receive HSTS header
 dctxf.com: could not connect to host
@@ -1822,31 +1834,31 @@ deepcreampie.com: did not receive HSTS h
 deepearth.uk: could not connect to host
 deeprecce.link: could not connect to host
 deeprecce.tech: could not connect to host
 deepvalley.tech: could not connect to host
 deetz.nl: did not receive HSTS header
 deetzen.de: did not receive HSTS header
 defcon.org: did not receive HSTS header
 defiler.tk: could not connect to host
+deftnerd.com: max-age too low: 7776000
 degroetenvanrosaline.nl: did not receive HSTS header
 deight.co: could not connect to host
 deinserverhost.de: did not receive HSTS header
 dekasan.ru: could not connect to host
 delayrefunds.co.uk: could not connect to host
 deliverance.co.uk: could not connect to host
 deloittequant.com: could not connect to host
 deltaconcepts.de: did not receive HSTS header
 delvj.org: could not connect to host
 demdis.org: could not connect to host
 demilitarized.ninja: could not connect to host
 demo-server.us: could not connect to host
 demo.swedbank.se: did not receive HSTS header
 demomanca.com: did not receive HSTS header
-demotivatorbi.ru: could not connect to host
 demotops.com: did not receive HSTS header
 denh.am: did not receive HSTS header
 denisjean.fr: could not connect to host
 dentaldomain.org: did not receive HSTS header
 dentaldomain.ph: did not receive HSTS header
 denvercybersecurity.com: did not receive HSTS header
 denverprophit.us: did not receive HSTS header
 depijl-mz.nl: did not receive HSTS header
@@ -1860,16 +1872,17 @@ derwaldschrat.net: did not receive HSTS 
 derwolfe.net: did not receive HSTS header
 desiccantpackets.com: did not receive HSTS header
 designandmore.it: did not receive HSTS header
 designgears.com: did not receive HSTS header
 designthinking.or.jp: did not receive HSTS header
 desserteagleselvenar.tk: could not connect to host
 destinationbijoux.fr: could not connect to host
 destom.be: could not connect to host
+desu.ne.jp: could not connect to host
 detalhecomercio.com.br: did not receive HSTS header
 detector.exposed: could not connect to host
 detest.org: could not connect to host
 detutorial.com: max-age too low: 0
 deux.solutions: could not connect to host
 deuxsol.co: could not connect to host
 deuxsol.com: could not connect to host
 deuxsolutions.com: could not connect to host
@@ -1877,27 +1890,28 @@ deuxvia.com: could not connect to host
 dev: could not connect to host
 dev-aegon.azurewebsites.net: did not receive HSTS header
 dev-bluep.pantheonsite.io: did not receive HSTS header
 devafterdark.com: could not connect to host
 devct.cz: did not receive HSTS header
 devcu.com: could not connect to host
 devcu.net: could not connect to host
 develop.fitness: could not connect to host
-developersclub.website: could not connect to host
 devh.net: could not connect to host
 deviltraxxx.de: could not connect to host
 devincrow.me: could not connect to host
 devisonline.ch: could not connect to host
+devkit.cc: could not connect to host
 devklog.net: could not connect to host
 devmsg.com: did not receive HSTS header
 devnsec.com: could not connect to host
 devnull.team: could not connect to host
 devopps.me: did not receive HSTS header
 devopsconnected.com: could not connect to host
+devpsy.info: could not connect to host
 devtub.com: did not receive HSTS header
 devuan.org: did not receive HSTS header
 dewebwerf.nl: did not receive HSTS header
 dewin.io: could not connect to host
 dfviana.com.br: max-age too low: 2592000
 dhaynes.xyz: could not connect to host
 dhpcs.com: did not receive HSTS header
 dhpiggott.net: did not receive HSTS header
@@ -1912,17 +1926,17 @@ die-borts.ch: could not connect to host
 dieb.photo: could not connect to host
 dierenkruiden.nl: could not connect to host
 diewebstube.de: could not connect to host
 diezel.com: could not connect to host
 diferenca.com: did not receive HSTS header
 digired.xyz: could not connect to host
 digitalbank.kz: could not connect to host
 digitaldaddy.net: could not connect to host
-digitalero.rip: did not receive HSTS header
+digitalero.rip: could not connect to host
 digitaljungle.net: could not connect to host
 digitalnonplus.com: could not connect to host
 digitalriver.tk: could not connect to host
 digitalskillswap.com: could not connect to host
 dim.lighting: could not connect to host
 dinamoelektrik.com: could not connect to host
 dingcc.me: could not connect to host
 dinkum.online: could not connect to host
@@ -1950,16 +1964,17 @@ dizorg.net: could not connect to host
 dj4et.de: could not connect to host
 djxmmx.net: did not receive HSTS header
 djz4music.com: did not receive HSTS header
 dkniss.de: could not connect to host
 dl.google.com: did not receive HSTS header (error ignored - included regardless)
 dlc.viasinc.com: could not connect to host
 dlemper.de: did not receive HSTS header
 dlscomputers.com.au: did not receive HSTS header
+dm4productions.com: could not connect to host
 dmcibulldog.com: did not receive HSTS header
 dmdre.com: could not connect to host
 dmix.ca: could not connect to host
 dmtry.me: did not receive HSTS header
 dmwall.cn: could not connect to host
 dmz.ninja: could not connect to host
 dns.google.com: did not receive HSTS header (error ignored - included regardless)
 dnsbird.net: could not connect to host
@@ -2071,19 +2086,19 @@ drupal123.com: did not receive HSTS head
 drycreekapiary.com: could not connect to host
 ds-christiansen.de: could not connect to host
 dshiv.io: could not connect to host
 dtub.co: could not connect to host
 dualias.xyz: could not connect to host
 dubik.su: did not receive HSTS header
 duelysthub.com: could not connect to host
 duerls.de: did not receive HSTS header
-duesee.org: did not receive HSTS header
+duesee.org: could not connect to host
 dukec.me: could not connect to host
-dullsir.com: could not connect to host
+dullsir.com: did not receive HSTS header
 dungi.org: could not connect to host
 duongpho.com: did not receive HSTS header
 duskopy.top: could not connect to host
 dutchessuganda.com: did not receive HSTS header
 dutchrank.com: did not receive HSTS header
 duuu.ch: could not connect to host
 dycontrol.de: could not connect to host
 dylanscott.com.au: did not receive HSTS header
@@ -2099,17 +2114,16 @@ e-aut.net: could not connect to host
 e-biografias.net: did not receive HSTS header
 e-deca2.org: did not receive HSTS header
 e-hon.link: could not connect to host
 e-isfa.eu: did not receive HSTS header
 e-newshub.com: could not connect to host
 e-pokupki.eu: did not receive HSTS header
 e-rickroll-r.pw: could not connect to host
 e-sa.com: did not receive HSTS header
-e-tune-mt.net: could not connect to host
 e-verify.gov: could not connect to host
 e30gruppe.com: did not receive HSTS header
 e3amn2l.com: could not connect to host
 earga.sm: could not connect to host
 earlybirdsnacks.com: could not connect to host
 earthrise16.com: could not connect to host
 earthsystemprediction.gov: could not connect to host
 easez.net: did not receive HSTS header
@@ -2195,25 +2209,27 @@ eigo.work: could not connect to host
 einhorn.space: could not connect to host
 ekbanden.nl: could not connect to host
 eksik.com: could not connect to host
 elaintehtaat.fi: did not receive HSTS header
 elan-organics.com: did not receive HSTS header
 elanguest.pl: could not connect to host
 elanguest.ro: could not connect to host
 elanguest.ru: could not connect to host
+elaon.de: did not receive HSTS header
 elastic7.uk: could not connect to host
 elbetech.net: could not connect to host
 elblein.de: did not receive HSTS header
 electricant.com: did not receive HSTS header
 electricant.nl: did not receive HSTS header
 electricianforum.co.uk: did not receive HSTS header
 electricoperaduo.com: could not connect to host
 electromc.com: could not connect to host
 elektronring.com: could not connect to host
+elementarywave.com: could not connect to host
 elemenx.com: did not receive HSTS header
 elemprendedor.com.ve: did not receive HSTS header
 elenag.ga: could not connect to host
 elenagherta.ga: could not connect to host
 elenoon.ir: did not receive HSTS header
 elgacien.de: could not connect to host
 elimdengelen.com: did not receive HSTS header
 elite-porno.ru: could not connect to host
@@ -2224,17 +2240,17 @@ elohna.ch: did not receive HSTS header
 elpo.xyz: could not connect to host
 elsamakhin.com: could not connect to host
 elsemanario.com: did not receive HSTS header
 elsitar.com: could not connect to host
 elsword.moe: max-age too low: 2592000
 email.lookout.com: could not connect to host
 email2rss.net: could not connect to host
 emanatepixels.com: could not connect to host
-emanga.su: did not receive HSTS header
+emanga.su: could not connect to host
 embroidered-stuff.com: could not connect to host
 emeldi-commerce.com: max-age too low: 0
 emiele.com.br: did not receive HSTS header
 emilong.com: could not connect to host
 emilyhorsman.com: could not connect to host
 eminovic.me: could not connect to host
 emjainteractive.com: did not receive HSTS header
 emjimadhu.com: could not connect to host
@@ -2249,17 +2265,17 @@ encode.space: could not connect to host
 encode.uk.com: did not receive HSTS header
 encoder.pw: could not connect to host
 encontrebarato.com.br: did not receive HSTS header
 encrypted.google.com: did not receive HSTS header (error ignored - included regardless)
 encryptio.com: could not connect to host
 end.pp.ua: could not connect to host
 endlessdark.net: max-age too low: 600
 endlesshorizon.net: could not connect to host
-endlesstone.com: did not receive HSTS header
+endlesstone.com: could not connect to host
 endohaus.ca: could not connect to host
 endohaus.com: could not connect to host
 endohaus.eu: could not connect to host
 enefan.jp: could not connect to host
 engelwerbung.com: did not receive HSTS header
 enginsight.com: did not receive HSTS header
 englishyamal.ru: did not receive HSTS header
 enigmacpt.com: did not receive HSTS header
@@ -2297,17 +2313,17 @@ equityflows.com: did not receive HSTS he
 erawanarifnugroho.com: did not receive HSTS header
 eressea.xyz: could not connect to host
 ergorium.com: did not receive HSTS header
 ergorium.eu: did not receive HSTS header
 ericbond.net: could not connect to host
 erichalv.com: did not receive HSTS header
 ericyl.com: could not connect to host
 eridanus.uk: could not connect to host
-eriel.com.br: did not receive HSTS header
+eriel.com.br: could not connect to host
 erikwalther.eu: could not connect to host
 eriser.fr: could not connect to host
 ernaehrungsberatung-zurich.ch: could not connect to host
 ernesto.at: could not connect to host
 eromixx.com: did not receive HSTS header
 erotalia.es: could not connect to host
 eroticen.com: did not receive HSTS header
 erotische-aanbiedingen.nl: could not connect to host
@@ -2365,16 +2381,18 @@ euph.eu: could not connect to host
 eupho.me: could not connect to host
 euren.se: could not connect to host
 eurocamping.se: could not connect to host
 euroshop24.net: could not connect to host
 eurospecautowerks.com: did not receive HSTS header
 eurotime.ua: did not receive HSTS header
 evafojtova.cz: did not receive HSTS header
 evanhandgraaf.nl: did not receive HSTS header
+evantage.org: could not connect to host
+evantageglobal.com: could not connect to host
 evdenevenakliyatankara.pw: did not receive HSTS header
 events12.com: did not receive HSTS header
 everybooks.com: could not connect to host
 everylab.org: could not connect to host
 everything.place: did not receive HSTS header
 eveseat.net: could not connect to host
 evi.be: did not receive HSTS header
 evilsay.com: could not connect to host
@@ -2387,17 +2405,16 @@ ewallet-optimizer.com: did not receive H
 ewex.org: could not connect to host
 excelgum.ca: did not receive HSTS header
 exceptionalservers.com: could not connect to host
 exfiles.cz: did not receive HSTS header
 exgravitus.com: could not connect to host
 exno.co: could not connect to host
 exousiakaidunamis.xyz: could not connect to host
 expatads.com: could not connect to host
-expert.cz: could not connect to host
 expertmile.com: did not receive HSTS header
 expo-designers.com: did not receive HSTS header
 expoundite.net: could not connect to host
 express-vpn.com: did not receive HSTS header
 expressfinance.co.za: did not receive HSTS header
 expressvpn.com: did not receive HSTS header
 extrathemeshowcase.net: could not connect to host
 extratorrentlive.xyz: could not connect to host
@@ -2462,17 +2479,16 @@ fatgeekflix.net: could not connect to ho
 fatherhood.gov: did not receive HSTS header
 fatlossguide.xyz: could not connect to host
 fatwin.pw: could not connect to host
 fatzebra.com.au: max-age too low: 0
 fayolle.info: did not receive HSTS header
 fbox.li: could not connect to host
 fdj.im: could not connect to host
 fdt.name: did not receive HSTS header
-feaden.me: could not connect to host
 feard.space: could not connect to host
 feastr.de: did not receive HSTS header
 fed51.com: could not connect to host
 fedn.it: could not connect to host
 fedo.moe: could not connect to host
 feedthebot.com: did not receive HSTS header
 feezmodo.com: did not receive HSTS header
 fefore.com: could not connect to host
@@ -2550,17 +2566,16 @@ fkcovering.be: could not connect to host
 flags.ninja: could not connect to host
 flairbros.at: could not connect to host
 flamewall.net: could not connect to host
 flamingkeys.com.au: could not connect to host
 flareon.net: could not connect to host
 flatbellyreview.com: max-age too low: 2592000
 flawcheck.com: could not connect to host
 fliexer.com: could not connect to host
-flightschoolcandidates.gov: could not connect to host
 flipkey.com: did not receive HSTS header
 flirchi.com: did not receive HSTS header
 flixtor.net: could not connect to host
 floless.co.uk: did not receive HSTS header
 florafiora.com.br: did not receive HSTS header
 florian-lillpopp.de: max-age too low: 10
 florianlillpopp.de: max-age too low: 10
 floridaescapes.co.uk: did not receive HSTS header
@@ -2627,30 +2642,33 @@ franta.email: did not receive HSTS heade
 franzt.de: could not connect to host
 frasesdeamizade.pt: could not connect to host
 frasys.io: could not connect to host
 frau-inge.de: could not connect to host
 fraudempire.com: could not connect to host
 freeflow.tv: could not connect to host
 freelanced.co.za: could not connect to host
 freelo.cz: did not receive HSTS header
-freematthale.net: could not connect to host
+freematthale.net: did not receive HSTS header
 freesoftwaredriver.com: did not receive HSTS header
 freethought.org.au: could not connect to host
 freeutopia.org: did not receive HSTS header
 freqlabs.com: did not receive HSTS header
+fresh-hotel.org: did not receive HSTS header
 freshfind.xyz: could not connect to host
 freshlymind.com: did not receive HSTS header
 frezbo.com: could not connect to host
 frforms.com: did not receive HSTS header
+fridolinka.cz: did not receive HSTS header
 friendica.ch: could not connect to host
 friendlyfiregameshow.com: could not connect to host
 friendlysiberia.com: could not connect to host
 frimons.com: could not connect to host
 froggstack.de: could not connect to host
+fromix.de: did not receive HSTS header
 frontisme.nl: did not receive HSTS header
 frontmin.com: did not receive HSTS header
 frost-ci.xyz: could not connect to host
 froxlor.support: max-age too low: 0
 frsis2017.com: could not connect to host
 frugro.be: did not receive HSTS header
 fruitusers.com: could not connect to host
 frumious.fyi: could not connect to host
@@ -2695,16 +2713,17 @@ fzn.io: could not connect to host
 fzslm.me: could not connect to host
 g-i-s.vn: could not connect to host
 g-rickroll-o.pw: could not connect to host
 g01.in.ua: could not connect to host
 g2a.co: did not receive HSTS header
 g2g.com: did not receive HSTS header
 g4w.co: could not connect to host (error ignored - included regardless)
 g5led.nl: could not connect to host
+g77.ca: could not connect to host
 gabber.scot: could not connect to host
 gabi.com.es: could not connect to host
 gabi.soy: did not receive HSTS header
 gabi.uno: could not connect to host
 gablaxian.com: max-age too low: 2592000
 gabriele-kluge.de: could not connect to host
 gaelleetarnaud.com: did not receive HSTS header
 gainesvillegoneaustin.org: did not receive HSTS header
@@ -2724,17 +2743,16 @@ game.yt: could not connect to host
 gamecave.de: could not connect to host
 gamechasm.com: could not connect to host
 gamefund.me: did not receive HSTS header
 gamehacks.me: could not connect to host
 gameink.net: max-age too low: 0
 gamek.es: did not receive HSTS header
 gamenected.com: could not connect to host
 gamenected.de: could not connect to host
-gameofpwnz.com: did not receive HSTS header
 gamepad.vg: could not connect to host
 gamepader.com: could not connect to host
 gameparade.de: could not connect to host
 gamepiece.com: could not connect to host
 gamers-life.fr: could not connect to host
 gamerslair.org: did not receive HSTS header
 gamerz-point.de: could not connect to host
 gamesdepartment.co.uk: did not receive HSTS header
@@ -2746,17 +2764,17 @@ gampenhof.de: did not receive HSTS heade
 gaptek.id: did not receive HSTS header
 gar-nich.net: could not connect to host
 garageon.net: did not receive HSTS header
 garciamartin.me: could not connect to host
 garcinia--cambogia.com: could not connect to host
 garden.trade: could not connect to host
 gardencarezone.com: could not connect to host
 garedtech.com: did not receive HSTS header
-garfieldairlines.net: could not connect to host
+garfieldairlines.net: did not receive HSTS header
 gatapro.net: could not connect to host
 gatorsa.es: did not receive HSTS header
 gaussorgues.me: could not connect to host
 gbc-radio.nl: did not receive HSTS header
 gc.net: could not connect to host
 gdegem.org: did not receive HSTS header
 gebn.co.uk: did not receive HSTS header
 gebn.uk: could not connect to host
@@ -2805,24 +2823,26 @@ getmassage.com.ng: could not connect to 
 getmondo.co.uk: could not connect to host
 getpake.com: could not connect to host
 getremembrall.com: could not connect to host
 getronics.care: could not connect to host
 getsello.com: could not connect to host
 getspeaker.com: did not receive HSTS header
 getspire.com: could not connect to host
 getwashdaddy.com: could not connect to host
+gevaulug.fr: could not connect to host
 gfm.tech: could not connect to host
 gfournier.ca: could not connect to host
 gfwsb.ml: could not connect to host
 ggss.ml: could not connect to host
 gh16.com.ar: could not connect to host
 gheorghe-sarcov.ga: could not connect to host
 gheorghesarcov.ga: could not connect to host
 gheorghesarcov.tk: could not connect to host
+ghkim.net: could not connect to host
 ghostcir.com: could not connect to host
 giakki.eu: could not connect to host
 gianlucapartengo.photography: did not receive HSTS header
 gibraltar-firma.com: did not receive HSTS header
 gidea.nu: could not connect to host
 gietvloergarant.nl: did not receive HSTS header
 giftgofers.com: did not receive HSTS header
 giftservices.nl: could not connect to host
@@ -2955,17 +2975,16 @@ greg.red: could not connect to host
 gregmilton.com: could not connect to host
 gregmilton.org: could not connect to host
 gregorytlee.me: could not connect to host
 gremots.com: could not connect to host
 greplin.com: could not connect to host
 gresb.com: did not receive HSTS header
 gretchelizartistry.com: did not receive HSTS header
 grevesgarten.de: could not connect to host
-greybit.net: could not connect to host
 greyline.se: could not connect to host
 greysky.me: did not receive HSTS header
 gribani.com: could not connect to host
 grid2osm.org: could not connect to host
 grigalanzsoftware.com: could not connect to host
 gripopgriep.net: could not connect to host
 groenemeijer.frl: max-age too low: 2628000
 groenewoud.run: could not connect to host
@@ -3004,17 +3023,16 @@ guillaumematheron.fr: did not receive HS
 guineafruitcorp.com: could not connect to host
 gulch.in.ua: did not receive HSTS header
 gulenet.com: could not connect to host
 gulfcoast-sandbox.com: could not connect to host
 gunnarhafdal.com: did not receive HSTS header
 gunnaro.com: could not connect to host
 guntbert.net: could not connect to host
 guoqiang.info: could not connect to host
-gurochan.ch: could not connect to host
 gurom.lv: could not connect to host
 gurusupe.com: could not connect to host
 guso.gq: could not connect to host
 guso.ml: did not receive HSTS header
 guso.site: could not connect to host
 guso.tech: could not connect to host
 gussi.is: did not receive HSTS header
 guus-thijssen.nl: did not receive HSTS header
@@ -3124,17 +3142,17 @@ haydenhill.us: could not connect to host
 hazcod.com: could not connect to host
 haze.sucks: could not connect to host
 hazyrom.net: could not connect to host
 hcie.pl: could not connect to host
 hcr.io: did not receive HSTS header
 hcs-company.com: did not receive HSTS header
 hcs-company.nl: did not receive HSTS header
 hdrboundless.com: could not connect to host
-hdserver.info: could not connect to host
+hdserver.info: did not receive HSTS header
 hdsmigrationtool.com: could not connect to host
 hduin.xyz: could not connect to host
 hdwallpapers.net: did not receive HSTS header
 head-shop.lt: could not connect to host
 head-shop.lv: could not connect to host
 head.org: could not connect to host
 headmates.xyz: could not connect to host
 healthycod.in: could not connect to host
@@ -3151,16 +3169,18 @@ heavystresser.com: could not connect to 
 hebaus.com: could not connect to host
 hebriff.com: could not connect to host
 heidilein.info: did not receive HSTS header
 heimnetze.org: could not connect to host
 heimonen.eu: did not receive HSTS header
 helencrump.co.uk: did not receive HSTS header
 helgakristoffer.com: could not connect to host
 helgakristoffer.wedding: could not connect to host
+hellomouse.cf: could not connect to host
+hellomouse.tk: could not connect to host
 helloworldhost.com: did not receive HSTS header
 helpadmin.net: could not connect to host
 helpium.de: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 119"  data: no]
 helpmebuild.com: did not receive HSTS header
 helpmij.cf: did not receive HSTS header
 hemdal.se: could not connect to host
 hencagon.com: could not connect to host
 henriknoerr.com: could not connect to host
@@ -3182,16 +3202,17 @@ hicn.gq: could not connect to host
 hiddendepth.ie: max-age too low: 0
 hiddenmail.xyz: could not connect to host
 hiddenrefuge.eu.org: could not connect to host
 hideftv.deals: could not connect to host
 hiexmerida-mailing.com: did not receive HSTS header
 highgrove.org.uk: could not connect to host
 highseer.com: did not receive HSTS header
 highsurf-miyazaki.com: did not receive HSTS header
+hightower.eu: could not connect to host
 highvelocitydesign.com: could not connect to host
 hiisukun.com: could not connect to host
 hiitcentre.com: did not receive HSTS header
 hikariempire.com: could not connect to host
 hikinggearlab.com: did not receive HSTS header
 hilinemerchandising.com: did not receive HSTS header
 hillcity.org.nz: did not receive HSTS header
 hilnu.tk: could not connect to host
@@ -3296,17 +3317,16 @@ hubert.systems: did not receive HSTS hea
 hugocollignon.fr: could not connect to host
 humanesources.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 119"  data: no]
 humankode.com: did not receive HSTS header
 humblefinances.com: did not receive HSTS header
 humeurs.net: could not connect to host
 humortuga.pt: could not connect to host
 humpi.at: could not connect to host
 humpteedumptee.in: did not receive HSTS header
-hundter.com: could not connect to host
 hunger.im: could not connect to host
 huodongweb.com: could not connect to host
 hup.blue: could not connect to host
 huskybutt.dog: could not connect to host
 hycken.com: did not receive HSTS header
 hydaelyn.com: could not connect to host
 hydra.ws: could not connect to host
 hydrodipcenter.nl: did not receive HSTS header
@@ -3355,32 +3375,32 @@ idealmoto.com: did not receive HSTS head
 idealmykonos.com: did not receive HSTS header
 ideaplus.me: could not connect to host
 ideasmeetingpoint.com: could not connect to host
 ideation-inc.co.jp: could not connect to host
 idecode.net: could not connect to host
 idedr.com: could not connect to host
 identitylabs.uk: could not connect to host
 idgsupply.com: did not receive HSTS header
+idinby.dk: did not receive HSTS header
 idisplay.es: did not receive HSTS header
 idlekernel.com: could not connect to host
 idontexist.me: did not receive HSTS header
 ie.search.yahoo.com: did not receive HSTS header
 iemb.tk: did not receive HSTS header
 ierna.com: did not receive HSTS header
 ies-italia.it: did not receive HSTS header
 ies.id.lv: could not connect to host
 ievgenialehner.com: did not receive HSTS header
 ifad.org: did not receive HSTS header
 ifastuniversity.com: did not receive HSTS header
 ifleurs.com: could not connect to host
 ifx.ee: could not connect to host
 igforums.com: could not connect to host
 igiftcards.nl: did not receive HSTS header
-igk.de: did not receive HSTS header
 ignatisd.gr: did not receive HSTS header
 ignatovich.by: could not connect to host
 ignatovich.me: could not connect to host
 iguana.com.ec: did not receive HSTS header
 igule.net: could not connect to host
 ihrlotto.de: could not connect to host
 ihrnationalrat.ch: could not connect to host
 ihsbsd.me: could not connect to host
@@ -3460,16 +3480,17 @@ infotics.es: did not receive HSTS header
 infura.co.th: could not connect to host
 ingalabs.hu: could not connect to host
 ingeeibach.de: could not connect to host
 ingesol.fr: did not receive HSTS header
 inhelix.com: could not connect to host
 injertoshorticolas.com: did not receive HSTS header
 injigo.com: did not receive HSTS header
 injust.cf: could not connect to host
+injust.eu.org: could not connect to host
 injust.ga: could not connect to host
 injust.gq: could not connect to host
 injust.me: could not connect to host
 injust.ml: could not connect to host
 injust.tk: could not connect to host
 inkable.com.au: did not receive HSTS header
 inked-guy.de: could not connect to host
 inkedguy.de: could not connect to host
@@ -3504,24 +3525,22 @@ interlun.com: could not connect to host
 internaldh.com: could not connect to host
 internect.co.za: did not receive HSTS header
 internet-pornografie.de: did not receive HSTS header
 internetcasinos.de: could not connect to host
 internetcensus.org: could not connect to host
 internetdentalalliance.com: did not receive HSTS header
 interserved.com: did not receive HSTS header
 intervisteperstrada.com: did not receive HSTS header
-interways.de: did not receive HSTS header
 intim-uslugi-kazan.net: could not connect to host
 intimateperrierjouet.com: could not connect to host
 intimici.com.br: could not connect to host
 intimtoy.com.ua: could not connect to host
 intranetsec.fr: could not connect to host
 intrp.net: did not receive HSTS header
-intune.life: did not receive HSTS header
 inverselink-user-content.com: could not connect to host
 inverselink.com: could not connect to host
 invictusmc.uk: could not connect to host
 invite24.pro: could not connect to host
 iolife.dk: could not connect to host
 ionas-law.ro: did not receive HSTS header
 ionx.co.uk: did not receive HSTS header
 ioover.net: did not receive HSTS header
@@ -3716,22 +3735,24 @@ jewellerydesignstore.com: could not conn
 jfmel.com: did not receive HSTS header
 jfx.space: did not receive HSTS header
 jh-media.eu: could not connect to host
 jhburton.uk: could not connect to host
 jhejderup.me: could not connect to host
 jia1hao.com: could not connect to host
 jiaidu.com: could not connect to host
 jiangzm.com: could not connect to host
+jichi.me: could not connect to host
 jikken.de: could not connect to host
 jimas.eu: did not receive HSTS header
 jimenacocina.com: could not connect to host
 jimgao.tk: did not receive HSTS header
 jimmehcai.com: could not connect to host
 jimmycai.org: could not connect to host
+jinbowiki.org: could not connect to host
 jingyuesi.com: could not connect to host
 jinmaguoji.com: could not connect to host
 jinshavip.com: did not receive HSTS header
 jirav.io: could not connect to host
 jitsi.org: did not receive HSTS header
 jiyue.com: could not connect to host
 jiyuu-ni.com: could not connect to host
 jiyuu-ni.net: could not connect to host
@@ -3897,17 +3918,16 @@ kgxtech.com: max-age too low: 2592000
 khaganat.net: did not receive HSTS header
 ki-on.net: did not receive HSTS header
 kialo.com: did not receive HSTS header
 kickass-proxies.org: could not connect to host
 kickass.al: could not connect to host
 kickasstorrents.gq: could not connect to host
 kid-dachau.de: did not receive HSTS header
 kidkat.cn: could not connect to host
-kidsmark.net: could not connect to host
 kiel-media.de: did not receive HSTS header
 killerit.in: could not connect to host
 kimana.pe: could not connect to host
 kimberg.co.uk: could not connect to host
 kimpost.org: could not connect to host
 kinderly.co.uk: did not receive HSTS header
 kinderwagen-test24.de: could not connect to host
 kindlyfire.com: could not connect to host
@@ -3961,17 +3981,16 @@ knightsbridgegroup.org: could not connec
 knowdebt.org: did not receive HSTS header
 knowledgesnap.com: could not connect to host
 knowledgesnapsites.com: could not connect to host
 koddsson.com: could not connect to host
 kode-it.de: could not connect to host
 kodexplorer.ml: could not connect to host
 kodiaklabs.org: could not connect to host
 kodokushi.fr: could not connect to host
-koelbli.ch: did not receive HSTS header
 koen.io: did not receive HSTS header
 koenrouwhorst.nl: did not receive HSTS header
 koenvdheuvel.me: did not receive HSTS header
 koerperimpuls.ch: did not receive HSTS header
 koik.io: could not connect to host
 kojima-life.co.jp: max-age too low: 0
 kokenmetaanbiedingen.nl: did not receive HSTS header
 kola-entertainments.de: did not receive HSTS header
@@ -4104,28 +4123,31 @@ latus.xyz: could not connect to host
 laubacher.io: could not connect to host
 launchkey.com: did not receive HSTS header
 laurakashiwase.com: could not connect to host
 lausitzer-widerstand.de: did not receive HSTS header
 laventainnhotel-mailing.com: did not receive HSTS header
 lavine.ch: did not receive HSTS header
 lavito.cz: did not receive HSTS header
 lavoiepharmd.com: could not connect to host
+lawformt.com: could not connect to host
 lawly.org: could not connect to host
 laxatus.com: could not connect to host
 laxiongames.es: could not connect to host
 layer8.tk: could not connect to host
 lbrt.xyz: could not connect to host
+lcht.ch: could not connect to host
 ldarby.me.uk: could not connect to host
 leadbook.ru: max-age too low: 604800
 leadership9.com: could not connect to host
 leardev.de: did not receive HSTS header
 learnedovo.com: did not receive HSTS header
 learnfrenchfluently.com: did not receive HSTS header
 learningorder.com: could not connect to host
+lebens-fluss.at: could not connect to host
 lebrun.org: could not connect to host
 leddruckalarm.de: did not receive HSTS header
 ledgerscope.net: could not connect to host
 leen.io: did not receive HSTS header
 lega3.dk: max-age too low: 0
 legarage.org: did not receive HSTS header
 legavenue.com.br: did not receive HSTS header
 legymnase.eu: did not receive HSTS header
@@ -4158,16 +4180,17 @@ les-voitures-electriques.com: did not re
 lesharris.com: could not connect to host
 lesliekearney.com: did not receive HSTS header
 lesperlesdunet.fr: could not connect to host
 lesquerda.cat: did not receive HSTS header
 letitfly.me: did not receive HSTS header
 letras.mus.br: did not receive HSTS header
 letsmultiplayerplay.com: did not receive HSTS header
 letstox.com: could not connect to host
+letteringinstitute.com: could not connect to host
 letustravel.tk: could not connect to host
 levatc.tk: could not connect to host
 level-10.net: did not receive HSTS header
 levelcheat.com: did not receive HSTS header
 levelum.com: did not receive HSTS header
 levert.ch: could not connect to host
 lexpierce.social: could not connect to host
 lez-cuties.com: could not connect to host
@@ -4176,27 +4199,34 @@ lgiswa.com.au: did not receive HSTS head
 lgrs.com.au: did not receive HSTS header
 lgts.se: could not connect to host
 lhalbert.xyz: could not connect to host
 li.search.yahoo.com: did not receive HSTS header
 liaillustr.at: did not receive HSTS header
 liam-w.com: did not receive HSTS header
 liamjack.fr: could not connect to host
 lianye.in: could not connect to host
+lianye1.cc: could not connect to host
+lianye2.cc: could not connect to host
+lianye3.cc: could not connect to host
+lianye4.cc: could not connect to host
+lianye5.cc: could not connect to host
+lianye6.cc: could not connect to host
 lianyexiuchang.in: could not connect to host
 liaoshuma.com: could not connect to host
 libanco.com: could not connect to host
 libertyrp.org: did not receive HSTS header
 library.linode.com: did not receive HSTS header
 librechan.net: could not connect to host
 libreduca.com: could not connect to host
 lichess4545.com: did not receive HSTS header
 lichess4545.tv: did not receive HSTS header
 lidl-selection.at: could not connect to host
 lidlovajogurteka.si: could not connect to host
+liebach.me: did not receive HSTS header
 liemen.net: did not receive HSTS header
 lifecoach.tw: did not receive HSTS header
 lifecoachproviders.com: did not receive HSTS header
 lifeguard.aecom.com: did not receive HSTS header
 lifeinitsownway.com: could not connect to host
 lifeskillsdirect.com: did not receive HSTS header
 lifetimemoneymachine.com: did not receive HSTS header
 lightarmory.com: could not connect to host
@@ -4233,16 +4263,17 @@ linuxfixed.it: could not connect to host
 linuxforyou.com: could not connect to host
 linuxgeek.ro: could not connect to host
 linuxmint.cz: could not connect to host
 linuxmonitoring.net: did not receive HSTS header
 liquid.solutions: could not connect to host
 liquorsanthe.in: could not connect to host
 lisaco.de: could not connect to host
 lisbongold.com: did not receive HSTS header
+lisgade.dk: did not receive HSTS header
 listafirmelor.com: could not connect to host
 listage.ovh: did not receive HSTS header
 litespeed.io: could not connect to host
 little.pw: did not receive HSTS header
 littlefreelibrary.org: did not receive HSTS header
 littleqiu.net: could not connect to host
 livedemo.io: could not connect to host
 livej.am: could not connect to host
@@ -4266,16 +4297,17 @@ locktheirphone.com: could not connect to
 locomotive.ca: did not receive HSTS header
 locvis.ru: could not connect to host
 loftboard.eu: could not connect to host
 logario.com.br: could not connect to host
 logicaladvertising.com: could not connect to host
 login.corp.google.com: max-age too low: 7776000 (error ignored - included regardless)
 login.persona.org: could not connect to host
 loginseite.com: could not connect to host
+logistify.com.mx: did not receive HSTS header
 lognot.net: could not connect to host
 logymedia.com: could not connect to host
 lojadocristaozinho.com.br: could not connect to host
 lojasviavento.com.br: could not connect to host
 loli.bz: did not receive HSTS header
 lolicore.ch: could not connect to host
 lolidunno.com: could not connect to host
 londoncalling.co: did not receive HSTS header
@@ -4482,16 +4514,17 @@ martinec.co.uk: could not connect to hos
 martinestyle.com: could not connect to host
 martineve.com: did not receive HSTS header
 martinp.no: could not connect to host
 martins.im: could not connect to host
 marumagic.com: did not receive HSTS header
 marykshoup.com: did not receive HSTS header
 masa-yoga.com: did not receive HSTS header
 masa.li: could not connect to host
+mashnew.com: could not connect to host
 masjidtawheed.net: did not receive HSTS header
 maskt.pw: could not connect to host
 massot.eu: did not receive HSTS header
 masterapi.ninja: did not receive HSTS header
 masteringtheterminal.com: did not receive HSTS header
 mastichor.info: could not connect to host
 mastimtibetano.com: could not connect to host
 mastod.life: could not connect to host
@@ -4529,24 +4562,26 @@ maurus-automation.de: did not receive HS
 mavisang.cf: could not connect to host
 mawe.red: could not connect to host
 maximov.space: could not connect to host
 maxr1998.de: did not receive HSTS header
 maxserver.com: did not receive HSTS header
 maya.mg: could not connect to host
 mazz-tech.com: could not connect to host
 mbconsultancy.nu: did not receive HSTS header
+mbrooks.info: could not connect to host
 mc81.com: could not connect to host
 mca2017.org: did not receive HSTS header
 mcard.vn: did not receive HSTS header
 mcc.re: could not connect to host
 mcdonalds.ru: did not receive HSTS header
 mcga.media: could not connect to host
 mclab.su: could not connect to host
 mclist.it: could not connect to host
+mclyr.com: max-age too low: 7776000
 mcooperlaw.com: did not receive HSTS header
 mdfnet.se: did not receive HSTS header
 mdscomp.net: did not receive HSTS header
 meadowfen.farm: could not connect to host
 meadowfenfarm.com: could not connect to host
 meamod.com: max-age too low: 0
 meat-education.com: could not connect to host
 mebio.us: did not receive HSTS header
@@ -4820,30 +4855,32 @@ morganestes.com: max-age too low: 0
 morningcalculation.com: could not connect to host
 morninglory.com: max-age too low: 2592000
 mornings.com: did not receive HSTS header
 morpheusx.at: could not connect to host
 morpheusxaut.net: could not connect to host
 morpork.xyz: could not connect to host
 mortgagecentersmo.com: did not receive HSTS header
 morz.org: could not connect to host
+mosaique-lachenaie.fr: could not connect to host
 mostwuat.com: could not connect to host
 motherbase.io: could not connect to host
 motionfreight.com: could not connect to host
 motionpicturesolutions.com: did not receive HSTS header
 motocyklovedily.cz: did not receive HSTS header
 mottvd.com: could not connect to host
 moudicat.com: max-age too low: 6307200
 moula.com.au: did not receive HSTS header
 mountainmusicpromotions.com: did not receive HSTS header
 moviedollars.com: did not receive HSTS header
 moviesabout.net: could not connect to host
 moy-gorod.od.ua: did not receive HSTS header
 mozoa.net: could not connect to host
 mp3juices.is: could not connect to host
+mpg-universal.com: did not receive HSTS header
 mpkossen.com: did not receive HSTS header
 mqas.net: could not connect to host
 mr-hosting.com: could not connect to host
 mrawe.com: could not connect to host
 mrdani.net: could not connect to host
 mredsanders.net: could not connect to host
 mrettich.org: did not receive HSTS header
 mrhack.cz: did not receive HSTS header
@@ -4887,16 +4924,17 @@ mustika.cf: could not connect to host
 mutamatic.com: could not connect to host
 mutuelle-obligatoire-pme.fr: did not receive HSTS header
 muzykaprzeszladoplay.pl: did not receive HSTS header
 mvanmarketing.nl: did not receive HSTS header
 mvsecurity.nl: could not connect to host
 mw.search.yahoo.com: did not receive HSTS header
 mwohlfarth.de: did not receive HSTS header
 my-owncloud.com: could not connect to host
+my-pawnshop.com.ua: could not connect to host
 my-voice.nl: did not receive HSTS header
 my.alfresco.com: did not receive HSTS header
 my.swedbank.se: did not receive HSTS header
 myairshop.gr: could not connect to host
 myandroid.tools: could not connect to host
 myandroidtools.cc: could not connect to host
 myandroidtools.pro: could not connect to host
 mybudget.xyz: could not connect to host
@@ -4944,45 +4982,47 @@ n-rickroll-e.pw: could not connect to ho
 n0psled.nl: could not connect to host
 n2x.in: could not connect to host
 n4l.pw: could not connect to host
 n8ch.net: could not connect to host
 nabru.co.uk: did not receive HSTS header
 nabytko.cz: could not connect to host
 nacktetatsachen.at: did not receive HSTS header
 nadia.pt: could not connect to host
+nagb.org: could not connect to host
 nagoya-kyuyo.com: could not connect to host
 naiharngym.com: did not receive HSTS header
 najedlo.sk: could not connect to host
 nakamastreamingcommunity.com: could not connect to host
 nakliyatsirketi.biz: could not connect to host
 nakuro.de: could not connect to host
 nalexandru.xyz: could not connect to host
 nalifornia.com: could not connect to host
 nalinux.cz: did not receive HSTS header
 nallon.com.br: could not connect to host
 namacindia.com: did not receive HSTS header
 namaho.com: could not connect to host
 named.ga: could not connect to host
+namereel.com: could not connect to host
 nametaken-cloud.duckdns.org: could not connect to host
 namethatbone.com: could not connect to host
 namorico.me: could not connect to host
 nan.zone: could not connect to host
 nandex.org: could not connect to host
 naniki.co.uk: did not receive HSTS header
 nanogeneinc.com: could not connect to host
 nanokamo.com: did not receive HSTS header
 nanrenba.net: could not connect to host
 nansay.cn: could not connect to host
 nanto.eu: could not connect to host
 nashira.cz: did not receive HSTS header
 natalia-fadeeva.ru: could not connect to host
 natalia.io: could not connect to host
 natalieandjoshua.com: could not connect to host
-natalt.org: could not connect to host
+natalt.org: did not receive HSTS header
 nathanmfarrugia.com: did not receive HSTS header
 nationwidevehiclecontracts.co.uk: did not receive HSTS header
 natural-progesterone.net: could not connect to host
 naturecoaster.com: did not receive HSTS header
 natuurbehangnederland.nl: could not connect to host
 naudles.me: could not connect to host
 nav.jobs: could not connect to host
 naval.tf: could not connect to host
@@ -5084,17 +5124,16 @@ nien.org: did not receive HSTS header
 nightsnack.cf: could not connect to host
 nightwinds.tk: could not connect to host
 niho.jp: did not receive HSTS header
 nikcub.com: could not connect to host
 niklas.pw: did not receive HSTS header
 niklaslindblad.se: did not receive HSTS header
 nikolasbradshaw.com: did not receive HSTS header
 ninchisho-online.com: did not receive HSTS header
-ninespec.com: could not connect to host
 ninhs.org: could not connect to host
 ninjaspiders.com: did not receive HSTS header
 nippler.org: did not receive HSTS header
 nippombashi.net: did not receive HSTS header
 nipponcareers.com: did not receive HSTS header
 nitropanel.com: did not receive HSTS header
 nixien.fr: could not connect to host
 nixmag.net: did not receive HSTS header
@@ -5112,16 +5151,17 @@ noclegi-online.pl: did not receive HSTS 
 noctinus.tk: did not receive HSTS header
 node-core-app.com: could not connect to host
 nodebrewery.com: could not connect to host
 nodespin.com: could not connect to host
 nodetemple.com: could not connect to host
 nodi.at: did not receive HSTS header
 noexpect.org: could not connect to host
 noima.com: did not receive HSTS header
+noisebridge.social: could not connect to host
 nolberg.net: did not receive HSTS header
 nolimitsbook.de: did not receive HSTS header
 nolte.work: could not connect to host
 nomorebytes.de: could not connect to host
 nootropicsource.com: did not receive HSTS header
 nope.website: could not connect to host
 nopex.no: could not connect to host
 nopol.de: could not connect to host
@@ -5355,37 +5395,38 @@ osdls.gov: could not connect to host
 oslfoundation.org: could not connect to host
 osp.cx: could not connect to host
 ossan-kobe-gourmet.com: did not receive HSTS header
 ossbinaries.com: could not connect to host
 osteammate.com: could not connect to host
 ostendorf.com: did not receive HSTS header
 osticketawesome.com: did not receive HSTS header
 otakuworld.de: could not connect to host
+otchecker.com: could not connect to host
 othercode.nl: could not connect to host
 othermedia.cc: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 119"  data: no]
 otherstuff.nl: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 119"  data: no]
 otichi.com: did not receive HSTS header
 otrsdemo.hu: did not receive HSTS header
 ottospora.nl: could not connect to host
 ourbank.com: did not receive HSTS header
 outdoorproducts.com: did not receive HSTS header
 outreachbuddy.com: could not connect to host
 outsider.im: could not connect to host
 outurnate.com: could not connect to host
 ouvirmusica.com.br: did not receive HSTS header
 ovenapp.io: did not receive HSTS header
-overclockers.ge: could not connect to host
 override.io: could not connect to host
 oversight.io: could not connect to host
 ovuscloud.de: could not connect to host
 ovvy.net: did not receive HSTS header
 owennelson.me: could not connect to host
 owncloud.help: could not connect to host
 ownmovies.fr: could not connect to host
+oxro.co: could not connect to host
 oxygenabsorbers.com: did not receive HSTS header
 oxynux.fr: could not connect to host
 oyste.in: could not connect to host
 ozoz.cc: could not connect to host
 p-rickroll-o.pw: could not connect to host
 p.linode.com: could not connect to host
 p1c.pw: could not connect to host
 p3.marketing: did not receive HSTS header
@@ -5414,16 +5455,17 @@ panaceallc.net: could not connect to hos
 panama-gbs.com: did not receive HSTS header
 panamaequity.com: did not receive HSTS header
 panamateakforestry.com: did not receive HSTS header
 panni.me: could not connect to host
 panoranordic.net: could not connect to host
 pansu.space: could not connect to host
 pants-off.xyz: could not connect to host
 pantsu.cat: did not receive HSTS header
+papa-webzeit.de: could not connect to host
 papalytics.com: could not connect to host
 papeda.net: could not connect to host
 papercard.co.uk: did not receive HSTS header
 papercrunch.io: could not connect to host
 papierniak.net: could not connect to host
 papygeek.com: could not connect to host
 parabhairavayoga.com: max-age too low: 0
 paradiselost.com: max-age too low: 0
@@ -5458,44 +5500,44 @@ paternitydnatest.com: could not connect 
 paterno-gaming.com: could not connect to host
 patfs.com: did not receive HSTS header
 pathwaytofaith.com: could not connect to host
 patientinsight.net: did not receive HSTS header
 patt.us: could not connect to host
 patterson.mp: could not connect to host
 paul-kerebel.pro: could not connect to host
 paulbunyanmls.com: did not receive HSTS header
+paulchen.at: could not connect to host
 paulproell.at: could not connect to host
 paulyang.cn: did not receive HSTS header
 pavelfojt.cz: did not receive HSTS header
 paxwinkel.nl: did not receive HSTS header
 pay.gigahost.dk: did not receive HSTS header
 paybro.eu: did not receive HSTS header
 payfreez.com: could not connect to host
 payments-reference.org: could not connect to host
 payments.google.com: did not receive HSTS header (error ignored - included regardless)
 payroll.ch: could not connect to host
 paytwopay.com: could not connect to host
 pbapp.net: did not receive HSTS header
 pbbr.com: did not receive HSTS header
 pbprint.ru: did not receive HSTS header
 pc-nf.de: did not receive HSTS header
+pcat.io: could not connect to host
 pcfun.net: could not connect to host
 pchax.net: could not connect to host
 pchospital.cc: did not receive HSTS header
 pdamsidoarjo.co.id: could not connect to host
 pdevio.com: could not connect to host
 pdf.yt: could not connect to host
 pdthings.net: could not connect to host
 peaceandwool.com: did not receive HSTS header
 peakapp.nl: could not connect to host
 pebblesdemo.com: could not connect to host
-peekops.com: did not receive HSTS header
 peerherrmann.de: could not connect to host
-peerless.ae: did not receive HSTS header
 peetah.com: max-age too low: 0
 peissen.com: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsISiteSecurityService.processHeader]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: /builds/slave/m-cen-l64-periodicupdate-00000/getHSTSPreloadList.js :: processStsHeader :: line 119"  data: no]
 pekkapikkarainen.fi: did not receive HSTS header
 pekkapleppanen.fi: could not connect to host
 pekkarik.ru: could not connect to host
 peliculasaudiolatinoonline.com: could not connect to host
 peliseries24.com: did not receive HSTS header
 pemberton.at: did not receive HSTS header
@@ -5633,16 +5675,17 @@ pleier.it: did not receive HSTS header
 plfgr.eu.org: could not connect to host
 plhdb.org: did not receive HSTS header
 plirt.ru: could not connect to host
 plixer.com: did not receive HSTS header
 plogable.co: could not connect to host
 plombirator.kz: did not receive HSTS header
 plothost.com: did not receive HSTS header
 ploup.net: could not connect to host
+plsboop.me: could not connect to host
 pluff.nl: did not receive HSTS header
 plur.com.au: did not receive HSTS header
 plut.org: could not connect to host
 pm13-media.cz: could not connect to host
 pmac.pt: could not connect to host
 pmnts.io: could not connect to host
 pnukee.com: did not receive HSTS header
 po.gl: did not receive HSTS header
@@ -5679,17 +5722,17 @@ popkins.ml: could not connect to host
 poris.web.id: could not connect to host
 porno-gif.ru: did not receive HSTS header
 pornstars.me: did not receive HSTS header
 portalm.tk: could not connect to host
 portalplatform.net: could not connect to host
 portaluniversalista.org: did not receive HSTS header
 portofacil.com: did not receive HSTS header
 poshpak.com: max-age too low: 86400
-postback.io: did not receive HSTS header
+postback.io: could not connect to host
 postcodewise.co.uk: did not receive HSTS header
 posterspy.com: did not receive HSTS header
 postscheduler.org: could not connect to host
 posylka.de: did not receive HSTS header
 potatoheads.net: could not connect to host
 potbar.com: could not connect to host
 potlytics.com: could not connect to host
 potsky.com: did not receive HSTS header
@@ -5745,16 +5788,17 @@ privytime.com: could not connect to host
 prnt.li: did not receive HSTS header
 pro-mile.pl: could not connect to host
 pro-zone.com: could not connect to host
 procode.gq: could not connect to host
 prodpad.com: did not receive HSTS header
 production.vn: did not receive HSTS header
 producto8.com: did not receive HSTS header
 productpeo.pl: could not connect to host
+profection.biz: could not connect to host
 profhome-shop.com: did not receive HSTS header
 profi-durchgangsmelder.de: did not receive HSTS header
 profivps.com: could not connect to host
 profloorstl.com: did not receive HSTS header
 profpay.com: could not connect to host
 profundr.com: could not connect to host
 profusion.io: could not connect to host
 progblog.net: could not connect to host
@@ -5822,17 +5866,17 @@ purplestar.mobi: did not receive HSTS he
 push.world: did not receive HSTS header
 pushapp.org: did not receive HSTS header
 pwd.ovh: could not connect to host
 pwm.jp: could not connect to host
 pwnsdx.pw: could not connect to host
 pwntr.com: could not connect to host
 py.search.yahoo.com: did not receive HSTS header
 pyol.org: could not connect to host
-pypi-mirrors.org: could not connect to host
+pypi-mirrors.org: did not receive HSTS header
 pypi-status.org: could not connect to host
 pyplo.org: did not receive HSTS header
 pypt.lt: did not receive HSTS header
 pyrrhonism.org: could not connect to host
 pythonic.guru: could not connect to host
 pythonic.training: could not connect to host
 pzme.me: could not connect to host
 q-rickroll-u.pw: could not connect to host
@@ -5882,17 +5926,16 @@ quranserver.net: could not connect to ho
 qvi.st: did not receive HSTS header
 qwaser.fr: could not connect to host
 qwilink.me: could not connect to host
 r-core.ru: could not connect to host
 r-rickroll-u.pw: could not connect to host
 r10n.com: did not receive HSTS header
 r15.me: did not receive HSTS header
 r3bl.me: did not receive HSTS header
-r40.us: could not connect to host
 ra-schaal.de: could not connect to host
 raajheshkannaa.com: could not connect to host
 rabbit.wales: could not connect to host
 rabbitvcactus.eu: could not connect to host
 radicaleducation.net: could not connect to host
 radtke.bayern: could not connect to host
 rafaelcz.de: could not connect to host
 raidstone.com: could not connect to host
@@ -5954,19 +5997,16 @@ rcvd.io: did not receive HSTS header
 rdns.im: did not receive HSTS header
 rdyrda.fr: could not connect to host
 re-customer.net: did not receive HSTS header
 reachr.com: could not connect to host
 reader.ga: could not connect to host
 readmeeatmedrinkme.com: did not receive HSTS header
 readr.pw: could not connect to host
 reagir43.fr: did not receive HSTS header
-really.ai: did not receive HSTS header
-really.io: did not receive HSTS header
-reallyreally.io: did not receive HSTS header
 realmic.net: could not connect to host
 realmofespionage.com: could not connect to host
 realraghavgupta.com: could not connect to host
 reaper.rip: could not connect to host
 reardenporn.com: could not connect to host
 rebekaesgabor.online: could not connect to host
 recommended.reviews: could not connect to host
 redar.xyz: could not connect to host
@@ -6001,17 +6041,16 @@ rejuvemedspa.com: did not receive HSTS h
 relayawards.com: could not connect to host
 reldoc.com.mx: did not receive HSTS header
 reliable-mail.de: did not receive HSTS header
 relisten.nl: did not receive HSTS header
 rem.pe: could not connect to host
 rem0te.net: could not connect to host
 rema.site: could not connect to host
 remedica.fr: did not receive HSTS header
-remedioskaseros.com: did not receive HSTS header
 remedium.de: did not receive HSTS header
 rememberthis.co.za: could not connect to host
 remitatm.com: did not receive HSTS header
 remodela.com.ve: could not connect to host
 remonttitekniikka.fi: could not connect to host
 remoteham.com: could not connect to host
 rencaijia.com: did not receive HSTS header
 renem.net: max-age too low: 2592000
@@ -6032,16 +6071,17 @@ res-rheingau.de: did not receive HSTS he
 res42.com: could not connect to host
 reserve-online.net: did not receive HSTS header
 residentsinsurance.co.uk: did not receive HSTS header
 resl20.servehttp.com: could not connect to host
 respice.xyz: could not connect to host
 respostas.com.br: did not receive HSTS header
 restaurace-klokocka.cz: did not receive HSTS header
 restchart.com: did not receive HSTS header
+restioson.me: did not receive HSTS header
 restrealitaet.de: did not receive HSTS header
 returnofwar.com: could not connect to host
 revapost.ch: could not connect to host
 revealdata.com: did not receive HSTS header
 revelaciones.tv: could not connect to host
 revello.org: did not receive HSTS header
 reverie.pw: could not connect to host
 review.info: did not receive HSTS header
@@ -6088,17 +6128,17 @@ rivlo.com: could not connect to host
 rix.ninja: could not connect to host
 rizon.me: could not connect to host
 rj.gg: could not connect to host
 rk6.cz: could not connect to host
 rkkhok.hu: did not receive HSTS header
 rkmantpur.org: did not receive HSTS header
 rme.li: did not receive HSTS header
 rmf.io: could not connect to host
-rnb-storenbau.ch: did not receive HSTS header
+rmstudio.tw: could not connect to host
 rngmeme.com: could not connect to host
 roadfeast.com: could not connect to host
 roan24.pl: did not receive HSTS header
 rob.uk.com: did not receive HSTS header
 robertglastra.com: could not connect to host
 robigalia.org: did not receive HSTS header
 robin.co.kr: did not receive HSTS header
 robteix.com: did not receive HSTS header
@@ -6110,21 +6150,23 @@ rockeyscrivo.com: did not receive HSTS h
 rocksberg.net: could not connect to host
 rockz.io: did not receive HSTS header
 rodney.id.au: did not receive HSTS header
 rodneybrooksjr.com: did not receive HSTS header
 rodosto.com: could not connect to host
 roeper.party: could not connect to host
 roesemann.email: could not connect to host
 roguelikecenter.fr: did not receive HSTS header
+rolandkolodziej.com: could not connect to host
 rolandreed.cn: did not receive HSTS header
 rolemaster.net: could not connect to host
 roleplayhome.com: could not connect to host
 rolroer.co.za: could not connect to host
 romab.com: did not receive HSTS header
+romaimperator.com: could not connect to host
 romans-place.me.uk: could not connect to host
 romeoferraris.com: did not receive HSTS header
 romulusapp.com: could not connect to host
 ron2k.za.net: could not connect to host
 rondoniatec.com.br: did not receive HSTS header
 ronvandordt.info: could not connect to host
 ronwo.de: max-age too low: 1
 rootforum.org: did not receive HSTS header
@@ -6206,16 +6248,17 @@ sairai.bid: did not receive HSTS header
 sakaki.anime.my: max-age too low: 5184000
 sakaserver.com: did not receive HSTS header
 sakib.ninja: did not receive HSTS header
 sakurabuff.com: could not connect to host
 salserocafe.com: did not receive HSTS header
 salserototal.com: could not connect to host
 saltedskies.com: could not connect to host
 saltra.online: did not receive HSTS header
+saludsexualmasculina.org: could not connect to host
 samegoal.org: did not receive HSTS header
 sametovymesic.cz: could not connect to host
 samfunnet.no: max-age too low: 0
 saml2.com: could not connect to host
 sampcup.com: could not connect to host
 sampoznay.ru: did not receive HSTS header
 samraskauskas.com: could not connect to host
 samsen.club: did not receive HSTS header
@@ -6269,57 +6312,60 @@ schmitt.ovh: could not connect to host
 schnell-abnehmen.tips: did not receive HSTS header
 schnell-gold.com: could not connect to host
 schooltrends.co.uk: did not receive HSTS header
 schorel.ovh: could not connect to host
 schorelweb.nl: did not receive HSTS header
 schreiber-netzwerk.eu: did not receive HSTS header
 schrodinger.io: could not connect to host
 schroettle.com: did not receive HSTS header
+schrolm.de: could not connect to host
+schuhwerkstatt.at: could not connect to host
 schulterglatzen-altenwalde.de: could not connect to host
 schultzflorists.com: could not connect to host
 schwarzkopfforyou.de: did not receive HSTS header
 schweizerbolzonello.net: did not receive HSTS header
 schwetz.net: could not connect to host
 scicasts.com: max-age too low: 7776000
 scienceathome.org: did not receive HSTS header
 scivillage.com: did not receive HSTS header
 sclgroup.cc: did not receive HSTS header
 scooshonline.co.uk: did not receive HSTS header
 scores4schools.com: could not connect to host
 scotbirchfield.com: did not receive HSTS header
+scottainslie.me.uk: could not connect to host
 scottdial.com: did not receive HSTS header
 scottferguson.com.au: did not receive HSTS header
 scottnicol.co.uk: could not connect to host
 scourt.info: could not connect to host
 scourt.org.ua: could not connect to host
 scrambl.is: could not connect to host
 scramble.io: did not receive HSTS header
 scrambler.in: could not connect to host
 scrapings.net: could not connect to host
 screencaster.io: did not receive HSTS header
 screenresolution.space: could not connect to host
 screensaversplanet.com: did not receive HSTS header
 scribbleserver.com: could not connect to host
 scribe.systems: could not connect to host
 scrion.com: could not connect to host
 script.google.com: did not receive HSTS header (error ignored - included regardless)
-scriptenforcer.net: could not connect to host
+scriptenforcer.net: did not receive HSTS header
 scriptict.nl: could not connect to host
 scrollstory.com: did not receive HSTS header
 sdhmanagementgroup.com: could not connect to host
 sdia.ru: could not connect to host
 sdmoscow.ru: could not connect to host
 sdrobs.com: did not receive HSTS header
 sdsl-speedtest.de: could not connect to host
 seans.cc: did not receive HSTS header
 search-one.de: did not receive HSTS header
+seattleprivacy.org: could not connect to host
 seavancouver.com: could not connect to host
 sebastian-bair.de: could not connect to host
-sebastianblade.com: did not receive HSTS header
 sebastianhampl.de: could not connect to host
 sebster.com: did not receive HSTS header
 secandtech.com: could not connect to host
 seccom.ch: did not receive HSTS header
 secnet.ga: could not connect to host
 secondary-survivor.com: could not connect to host
 secondary-survivor.help: could not connect to host
 secondary-survivor.net: could not connect to host
@@ -6389,17 +6435,16 @@ senseofnumber.co.uk: did not receive HST
 sensiblemn.org: could not connect to host
 sensibus.com: did not receive HSTS header
 seo-lagniappe.com: did not receive HSTS header
 seobot.com.au: could not connect to host
 seomobo.com: could not connect to host
 seosanantonioinc.com: did not receive HSTS header
 seowarp.net: did not receive HSTS header
 sepalandseed.com: did not receive HSTS header
-seproco.com: could not connect to host
 seq.tf: did not receive HSTS header
 serathius.ovh: could not connect to host
 serenitycreams.com: did not receive HSTS header
 serfdom.io: did not receive HSTS header
 serized.pw: could not connect to host
 serverangels.co.uk: could not connect to host
 servercode.ca: did not receive HSTS header
 serverdensity.io: did not receive HSTS header
@@ -6450,16 +6495,17 @@ shaunwheelhou.se: could not connect to h
 shawnh.net: could not connect to host
 shellsec.pw: did not receive HSTS header
 shep.co.il: did not receive HSTS header
 shereallyheals.com: did not receive HSTS header
 shervik.ga: could not connect to host
 shg-pornographieabhaengigkeit.de: did not receive HSTS header
 shibe.club: could not connect to host
 shiftins.com: could not connect to host
+shiftj.is: could not connect to host
 shiftplanning.com: did not receive HSTS header
 shiinko.com: could not connect to host
 shindorei.fr: did not receive HSTS header
 shinebijoux.com.br: could not connect to host
 shinju.moe: could not connect to host
 shiona.xyz: could not connect to host
 shipinsight.com: did not receive HSTS header
 shipmile.com: did not receive HSTS header
@@ -6470,17 +6516,16 @@ shitposting.life: could not connect to h
 shm-forum.org.uk: could not connect to host
 shocksrv.com: did not receive HSTS header
 shooshosha.com: could not connect to host
 shopherbal.co.za: did not receive HSTS header
 shopontarget.com: did not receive HSTS header
 shoprose.ru: could not connect to host
 shops.neonisi.com: could not connect to host
 short-biography.com: did not receive HSTS header
-shorten.ninja: could not connect to host
 shota.party: could not connect to host
 showkeeper.tv: did not receive HSTS header
 shrike.me: could not connect to host
 shu-kin.net: did not receive HSTS header
 shukatsu-note.com: could not connect to host
 shv25.se: could not connect to host
 shwongacc.com: could not connect to host
 shypp.it: could not connect to host
@@ -6518,17 +6563,16 @@ simon-pokorny.com: did not receive HSTS 
 simon.butcher.name: max-age too low: 2629743
 simongong.net: did not receive HSTS header
 simpan.id: did not receive HSTS header
 simpleai.net: max-age too low: 600
 simplelearner.com: could not connect to host
 simplepractice.com: did not receive HSTS header
 simplixos.org: could not connect to host
 simply-premium.com: did not receive HSTS header
-simtin-net.de: could not connect to host
 sin30.net: could not connect to host
 sincai666.com: could not connect to host
 sincron.org: could not connect to host
 sinful.pw: could not connect to host
 singul4rity.com: could not connect to host
 sinneserweiterung.de: could not connect to host
 sinosky.org: did not receive HSTS header
 siriad.com: could not connect to host
@@ -6591,16 +6635,17 @@ smartfon4you.ru: did not receive HSTS he
 smarthomedna.com: did not receive HSTS header
 smartofficesandsmarthomes.com: did not receive HSTS header
 smartphone.continental.com: could not connect to host
 smartrak.co.nz: did not receive HSTS header
 smdev.fr: could not connect to host
 smet.us: could not connect to host
 smimea.com: could not connect to host
 smirkingwhorefromhighgarden.pro: could not connect to host
+smittix.co.uk: did not receive HSTS header
 smkn1lengkong.sch.id: did not receive HSTS header
 smksi2.com: could not connect to host
 smksultanismail2.com: did not receive HSTS header
 smove.sg: did not receive HSTS header
 smplix.com: could not connect to host
 smusg.com: could not connect to host
 smzsq.com: did not receive HSTS header
 snailing.org: could not connect to host
@@ -6644,17 +6689,16 @@ solanum-games.com: could not connect to 
 solentes.com.br: did not receive HSTS header
 solidfuelappliancespares.co.uk: did not receive HSTS header
 solidus.systems: did not receive HSTS header
 soljem.com: did not receive HSTS header
 soll-i.ch: did not receive HSTS header
 solosmusic.xyz: could not connect to host
 solsystems.ru: could not connect to host
 solutive.fi: did not receive HSTS header
-somali-derp.com: could not connect to host
 someshit.xyz: could not connect to host
 something-else.cf: could not connect to host
 somethingnew.xyz: could not connect to host
 sonic.network: did not receive HSTS header
 sonicrainboom.rocks: did not receive HSTS header
 soobi.org: did not receive HSTS header
 soporte.cc: could not connect to host
 sorensen-online.com: could not connect to host
@@ -6670,17 +6714,16 @@ southernjamusa.com: did not receive HSTS
 southgale.condos: could not connect to host
 southside-crew.club: could not connect to host
 southworcestershiregpservices.co.uk: could not connect to host
 souyar.de: could not connect to host
 souyar.net: could not connect to host
 souyar.us: could not connect to host
 sovereignshare.com: could not connect to host
 sown.dyndns.org: could not connect to host
-soz6.com: did not receive HSTS header
 spacedust.xyz: could not connect to host
 spacefish.biz: could not connect to host
 spacehq.org: could not connect to host
 spaggel.nl: could not connect to host
 spamloco.net: did not receive HSTS header
 sparelib.com: max-age too low: 3650
 spark.team: could not connect to host
 sparklingsparklers.com: did not receive HSTS header
@@ -6703,16 +6746,17 @@ spikeykc.me: did not receive HSTS header
 spillmaker.no: did not receive HSTS header
 spilsbury.io: could not connect to host
 spirit-dev.net: max-age too low: 0
 spisoggrin.dk: did not receive HSTS header
 spititout.it: could not connect to host
 spittersberger.recipes: did not receive HSTS header
 splunk.net: could not connect to host
 spokonline.com: could not connect to host
+spolwind.de: could not connect to host
 sponsortobias.com: could not connect to host
 sportchirp-internal.azurewebsites.net: did not receive HSTS header
 sporthit.ru: did not receive HSTS header
 sportwette.eu: did not receive HSTS header
 spot-events.com: could not connect to host
 spotifyripper.tk: could not connect to host
 spotlightsrule.ddns.net: could not connect to host
 spr.id.au: did not receive HSTS header
@@ -6829,16 +6873,18 @@ strictlysudo.com: could not connect to h
 strife.tk: could not connect to host
 strijkshop.be: could not connect to host
 strila.me: did not receive HSTS header
 strivephysmed.com: did not receive HSTS header
 stroeercrm.de: could not connect to host
 strongest-privacy.com: could not connect to host
 stuartbaxter.co: could not connect to host
 student-scientist.org: did not receive HSTS header
+student.andover.edu: did not receive HSTS header
+studentloans.gov: could not connect to host
 studentrdh.com: did not receive HSTS header
 studentresearcher.org: did not receive HSTS header
 studentskydenik.cz: could not connect to host
 studenttravel.cz: did not receive HSTS header
 studinf.xyz: could not connect to host
 studio-panic.com: did not receive HSTS header
 studiozelden.com: did not receive HSTS header
 studybay.com: did not receive HSTS header
@@ -7156,17 +7202,16 @@ thepiratebay.al: could not connect to ho
 thepiratebay.poker: could not connect to host
 thepiratebay.tech: could not connect to host
 theprivacysolution.com: did not receive HSTS header
 therewill.be: could not connect to host
 thesecurityteam.net: could not connect to host
 thesplit.is: could not connect to host
 thestack.xyz: could not connect to host
 thestagchorleywood.co.uk: did not receive HSTS header
-thesteins.org: could not connect to host
 thetradinghall.com: could not connect to host
 theurbanyoga.com: did not receive HSTS header
 thevintagenews.com: max-age too low: 0
 thewebfellas.com: did not receive HSTS header
 theweilai.com: did not receive HSTS header
 theworkingeye.nl: could not connect to host
 thewp.pro: could not connect to host
 thezonders.com: did not receive HSTS header
@@ -7187,17 +7232,16 @@ thkb.net: could not connect to host
 thomas-ferney.fr: did not receive HSTS header
 thomas-gibertie.fr: did not receive HSTS header
 thomascloud.ddns.net: could not connect to host
 thomasharvey.me: did not receive HSTS header
 thomaskliszowski.fr: did not receive HSTS header
 thomasmeester.nl: did not receive HSTS header
 thomasnet.fr: could not connect to host
 thomasschweizer.net: could not connect to host
-thorbis.com: could not connect to host
 thorgames.nl: did not receive HSTS header
 thorncreek.net: did not receive HSTS header
 thriveapproach.co.uk: did not receive HSTS header
 throughthelookingglasslens.co.uk: could not connect to host
 thumbtack.com: did not receive HSTS header
 thundercampaign.com: could not connect to host
 ti.blog.br: could not connect to host
 tianxing.pro: did not receive HSTS header
@@ -7253,16 +7297,17 @@ titanlab.de: could not connect to host
 titanleaf.com: could not connect to host
 titouan.co: did not receive HSTS header
 tittarpuls.se: could not connect to host
 titties.ml: could not connect to host
 tjc.host: did not receive HSTS header
 tjc.wiki: could not connect to host
 tjullrich.de: could not connect to host
 tkappertjedemetamorfose.nl: could not connect to host
+tkarstens.de: did not receive HSTS header
 tkonstantopoulos.tk: could not connect to host
 tlcdn.net: could not connect to host
 tlo.hosting: could not connect to host
 tlo.link: could not connect to host
 tlo.network: could not connect to host
 tls.li: could not connect to host
 tlsbv.nl: did not receive HSTS header
 tlshost.net: could not connect to host
@@ -7298,17 +7343,17 @@ tollsjekk.no: could not connect to host
 tolud.com: could not connect to host
 tom.horse: did not receive HSTS header
 tomatenaufdenaugen.de: could not connect to host
 tomeara.net: could not connect to host
 tomevans.io: did not receive HSTS header
 tomharris.tech: did not receive HSTS header
 tomlankhorst.nl: did not receive HSTS header
 tomli.me: could not connect to host
-tommsy.com: could not connect to host
+tommsy.com: did not receive HSTS header
 tommyads.com: could not connect to host
 tomphill.co.uk: could not connect to host
 tongmu.me: did not receive HSTS header
 tonyfantjr.com: could not connect to host
 toomanypillows.com: could not connect to host
 tooolroc.org: could not connect to host
 top-stage.net: could not connect to host
 topdeskdev.net: could not connect to host
@@ -7365,16 +7410,17 @@ transformify.org: did not receive HSTS h
 transl8.eu: did not receive HSTS header
 translate.googleapis.com: did not receive HSTS header (error ignored - included regardless)
 transportal.sk: did not receive HSTS header
 travality.ru: could not connect to host
 travel-kuban.ru: did not receive HSTS header
 travelinsightswriter.com: could not connect to host
 travelinsurance.co.nz: did not receive HSTS header
 trazosdearte.com: did not receive HSTS header
+treasuredinheritanceministry.com: did not receive HSTS header
 treatprostatewithhifu.com: could not connect to host
 treeby.net: could not connect to host
 treeremovaljohannesburg.co.za: could not connect to host
 treino.blog.br: could not connect to host
 trell.co.in: did not receive HSTS header
 trendberry.ru: did not receive HSTS header
 trileg.net: could not connect to host
 trinityaffirmations.com: max-age too low: 0
@@ -7391,16 +7437,17 @@ trunkjunk.co: did not receive HSTS heade
 trusteecar.com: did not receive HSTS header
 trustmeimfancy.com: could not connect to host
 trybind.com: could not connect to host
 tryoneday.co: did not receive HSTS header
 ts2.se: could not connect to host
 ts3.consulting: could not connect to host
 tsecy.com: could not connect to host
 tsgoc.com: did not receive HSTS header
+tsironis-olivenoel.de: could not connect to host
 tsrstore.gq: could not connect to host
 tssouthernpower.com: max-age too low: 0
 tsurimap.com: could not connect to host
 tsutsumi-kogyo.jp: could not connect to host
 ttackmedical.com.br: did not receive HSTS header
 tts.co.nz: did not receive HSTS header
 tuamoronline.com: could not connect to host
 tubbutec.de: did not receive HSTS header
@@ -7452,34 +7499,33 @@ twisata.com: did not receive HSTS header
 twist.party: could not connect to host
 twogo.com: did not receive HSTS header
 twolinepassbrewing.com: could not connect to host
 twolivelife.com: could not connect to host
 tx041cap.org: did not receive HSTS header
 txclimbers.com: could not connect to host
 txf.pw: could not connect to host
 ty2u.com: did not receive HSTS header
-tyler.rs: could not connect to host
-tyleromeara.com: could not connect to host
 tylian.net: max-age too low: 0
 typeofweb.com: did not receive HSTS header
 typingrevolution.com: did not receive HSTS header
 tyrelius.com: did not receive HSTS header
 tyroproducts.eu: did not receive HSTS header
 tyroremotes.no: did not receive HSTS header
 tzappa.net: could not connect to host
 u-blox.com: max-age too low: 0
 u.nu: could not connect to host
 ua.search.yahoo.com: did not receive HSTS header
 uadp.pw: did not receive HSTS header
 uber.com.au: did not receive HSTS header
 uberfunction.com: did not receive HSTS header
 ubicloud.de: could not connect to host
 ublox.com: did not receive HSTS header
 uborcare.com: could not connect to host
+udbhav.me: could not connect to host
 uega.net: did not receive HSTS header
 ueu.me: could not connect to host
 ufgaming.com: did not receive HSTS header
 ufotable.uk: could not connect to host
 ugo.ninja: could not connect to host
 ugosadventures.com: could not connect to host
 uhm.io: could not connect to host
 ukas.com: did not receive HSTS header
@@ -7522,18 +7568,17 @@ unblockmy.xyz: did not receive HSTS head
 unblockmyproxy.site: could not connect to host
 unblockthe.site: did not receive HSTS header
 unblockthe.top: could not connect to host
 unccdesign.club: could not connect to host
 unclegen.xyz: could not connect to host
 undeadbrains.de: could not connect to host
 under30stravelinsurance.com.au: did not receive HSTS header
 underkin.com: could not connect to host
-underskatten.tk: could not connect to host
-unfiltered.nyc: did not receive HSTS header
+unfiltered.nyc: could not connect to host
 uni-games.com: could not connect to host
 unicooo.com: could not connect to host
 unifei.edu.br: did not receive HSTS header
 uniformecomgas.com.br: could not connect to host
 unikitty-on-tour.com: could not connect to host
 unionstationapp.com: could not connect to host
 unison.com: did not receive HSTS header
 unisyssecurity.com: did not receive HSTS header
@@ -7558,16 +7603,17 @@ upboard.jp: could not connect to host
 upldr.pw: could not connect to host
 uporoops.com: could not connect to host
 uprotect.it: could not connect to host
 upstats.eu: could not connect to host
 ur-lauber.de: did not receive HSTS header
 urandom.eu.org: did not receive HSTS header
 urban-garden.lt: could not connect to host
 urban-garden.lv: could not connect to host
+urbanstylestaging.com: did not receive HSTS header
 urbpic.com: could not connect to host
 urlchomp.com: did not receive HSTS header
 urphp.com: could not connect to host
 us-immigration.com: did not receive HSTS header
 usaab.org: did not receive HSTS header
 usafuelservice.com: did not receive HSTS header
 usbirthcertificate.com: did not receive HSTS header
 usbtypeccompliant.com: could not connect to host
@@ -7721,33 +7767,34 @@ vitagenda.nl: could not connect to host
 vitalita.cz: did not receive HSTS header
 vitalorange.com: max-age too low: 7776000
 vitta.me: did not receive HSTS header
 viva-french.com: could not connect to host
 vivocloud.com: could not connect to host
 vizeat.com: did not receive HSTS header
 vizional.com: max-age too low: 0
 vjeff.com: could not connect to host
-vladimiroff.org: could not connect to host
 vlastimilburian.cz: did not receive HSTS header
 vlora.city: could not connect to host
 vlvvl.com: did not receive HSTS header
 vm0.eu: did not receive HSTS header
 vmgirls.com: could not connect to host
 vmrdev.com: could not connect to host
 voceinveste.com: did not receive HSTS header
 vogler.name: did not receive HSTS header
 voicesuk.co.uk: did not receive HSTS header
+voidserv.net: could not connect to host
 volcrado.com: did not receive HSTS header
 voliere-info.nl: did not receive HSTS header
 volkden.com: could not connect to host
 vonavy-cukor.sk: could not connect to host
 vonavycukor.sk: could not connect to host
 vooreenveiligthuis.nl: did not receive HSTS header
 vorangerie.com: could not connect to host
+vorodevops.com: could not connect to host
 vortexhobbies.com: did not receive HSTS header
 vosjesweb.nl: could not connect to host
 vox.vg: did not receive HSTS header
 vpip.net: could not connect to host
 vpn-byen.dk: did not receive HSTS header
 vpn.black: could not connect to host
 vpn.pics: did not receive HSTS header
 vpnhot.com: could not connect to host
@@ -7802,19 +7849,17 @@ wangqiliang.xn--fiqs8s: could not connec
 wangzuan168.cc: could not connect to host
 wanybug.cn: could not connect to host
 wapjt.cn: could not connect to host
 wapt.fr: did not receive HSTS header
 warandpeace.xyz: could not connect to host
 wardsegers.be: did not receive HSTS header
 warehost.de: did not receive HSTS header
 warhistoryonline.com: max-age too low: 0
-warp-radio.com: could not connect to host
-warp-radio.tv: could not connect to host
-warped.com: did not receive HSTS header
+warped.com: could not connect to host
 warrencreative.com: did not receive HSTS header
 warsentech.com: could not connect to host
 warsh.moe: did not receive HSTS header
 washingtonviews.com: did not receive HSTS header
 watchium.com: did not receive HSTS header
 waterforlife.net.au: did not receive HSTS header
 waterpoint.com.br: did not receive HSTS header
 watersb.org: could not connect to host
@@ -7871,16 +7916,17 @@ wecanfindit.co.za: could not connect to 
 weddingenvelopes.co.uk: did not receive HSTS header
 weddingibiza.nl: could not connect to host
 weekly.fyi: could not connect to host
 wegenaer.nl: could not connect to host
 weiji.ga: did not receive HSTS header
 welkers.org: could not connect to host
 wellastore.ru: did not receive HSTS header
 wellcomp.com.br: did not receive HSTS header
+wellness.so: could not connect to host
 welpy.com: could not connect to host
 weltentreff.com: could not connect to host
 weltmeisterschaft.net: could not connect to host
 weme.eu: could not connect to host
 wendalyncheng.com: did not receive HSTS header
 werdeeintimo.de: did not receive HSTS header
 werkenbijkfc.nl: did not receive HSTS header
 werkplaatsoost.nl: did not receive HSTS header
@@ -7935,16 +7981,17 @@ winecodeavocado.com: could not connect t
 winfield.me.uk: did not receive HSTS header
 winged.io: could not connect to host
 wingos.net: could not connect to host
 wingumd.net: could not connect to host
 winpack.cf: could not connect to host
 winpack.eu.org: could not connect to host
 winsec.nl: could not connect to host
 winshiplending.com: did not receive HSTS header
+wipc.net: could not connect to host
 wirc.gr: could not connect to host
 wiretrip.io: could not connect to host
 wiseloan.com: did not receive HSTS header
 wishcert.com: could not connect to host
 withgoogle.com: did not receive HSTS header (error ignored - included regardless)
 withmy.beer: could not connect to host
 withustrading.com: could not connect to host
 withyoutube.com: did not receive HSTS header (error ignored - included regardless)
@@ -7974,16 +8021,17 @@ woording.com: could not connect to host
 wootton95.com: could not connect to host
 wooviet.com: could not connect to host
 word-grabber.com: did not receive HSTS header
 work-and-jockel.de: did not receive HSTS header
 workfone.io: did not receive HSTS header
 workpermit.com.vn: could not connect to host
 worldlist.org: could not connect to host
 worldsbeststory.com: did not receive HSTS header
+worldsoccerclips.com: could not connect to host
 worldwhisperer.net: could not connect to host
 worshapp.com: could not connect to host
 wow-travel.eu: could not connect to host
 wowapi.org: could not connect to host
 wowinvasion.com: did not receive HSTS header
 wp-rescue.com.au: did not receive HSTS header
 wpblog.com.tw: could not connect to host
 wpcarer.pro: could not connect to host
@@ -8258,19 +8306,23 @@ zebrababy.cn: could not connect to host
 zebry.nl: could not connect to host
 zecrypto.com: could not connect to host
 zeedroom.be: did not receive HSTS header
 zefiris.org: did not receive HSTS header
 zefu.ca: could not connect to host
 zehntner.ch: could not connect to host
 zelfmoord.ga: could not connect to host
 zelfstandigemakelaars.net: could not connect to host
+zellari.ru: could not connect to host
 zenghx.tk: could not connect to host
 zenhaiku.com: did not receive HSTS header
 zenpayroll.com: did not receive HSTS header
+zentience.dk: did not receive HSTS header
+zentience.net: did not receive HSTS header
+zentience.org: did not receive HSTS header
 zentraler-kreditausschuss.de: did not receive HSTS header
 zentralwolke.de: did not receive HSTS header
 zenwears.com: did not receive HSTS header
 zera.com.au: could not connect to host
 zerekin.net: did not receive HSTS header
 zeroday.sk: did not receive HSTS header
 zerofox.gq: could not connect to host
 zeroml.ml: could not connect to host
@@ -8281,17 +8333,16 @@ zh.search.yahoo.com: did not receive HST
 zh1.li: could not connect to host
 zhang.wtf: could not connect to host
 zhangruilin.com: did not receive HSTS header
 zhaojin97.cn: did not receive HSTS header
 zhendingresources.com: did not receive HSTS header
 zhh.in: could not connect to host
 zhihua-lai.com: did not receive HSTS header
 zhiin.net: could not connect to host
-zhiku8.com: could not connect to host
 zhuji.com.cn: could not connect to host
 zi0r.com: did not receive HSTS header
 zian.online: could not connect to host
 zicklam.com: did not receive HSTS header
 zigcore.com.br: could not connect to host
 zihao.me: did not receive HSTS header
 zinc-x.com: did not receive HSTS header
 zinenapse.info: could not connect to host
@@ -8310,16 +8361,17 @@ zking.ga: could not connect to host
 zmsastro.co.za: could not connect to host
 zmy.im: did not receive HSTS header
 zocken.com: did not receive HSTS header
 zockenbiszumumfallen.de: did not receive HSTS header
 zoe.vc: could not connect to host
 zohar.link: could not connect to host
 zolotoy-standart.com.ua: did not receive HSTS header
 zomiac.pp.ua: could not connect to host
+zone-produkte.de: did not receive HSTS header
 zoneminder.com: did not receive HSTS header
 zoners.si: did not receive HSTS header
 zonky.io: could not connect to host
 zoo24.de: did not receive HSTS header
 zoofaeth.de: did not receive HSTS header
 zoomingin.net: max-age too low: 5184000
 zoommailing.com: did not receive HSTS header
 zorasvobodova.cz: did not receive HSTS header
--- a/security/manager/ssl/nsSTSPreloadList.inc
+++ b/security/manager/ssl/nsSTSPreloadList.inc
@@ -3,17 +3,17 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 /*****************************************************************************/
 /* This is an automatically generated file. If you're not                    */
 /* nsSiteSecurityService.cpp, you shouldn't be #including it.     */
 /*****************************************************************************/
 
 #include <stdint.h>
-const PRTime gPreloadListExpirationTime = INT64_C(1517074215988000);
+const PRTime gPreloadListExpirationTime = INT64_C(1517161240575000);
 %%
 0-1.party, 1
 0.me.uk, 1
 00001.am, 1
 00002.am, 1
 0005pay.com, 1
 0010100.net, 1
 00220022.net, 1
@@ -111,17 +111,16 @@ 123plons.nl, 1
 123test.com, 1
 123test.nl, 1
 125m125.de, 1
 12vpn.net, 1
 130.ua, 1
 132kv.ch, 1
 13318522.com, 1
 1359826938.rsc.cdn77.org, 1
-13826145000.com, 1
 1391kj.com, 1
 1395kj.com, 1
 1396.cc, 1
 1453914078.rsc.cdn77.org, 1
 1464424382.rsc.cdn77.org, 1
 14it.de, 1
 14x3.de, 1
 15-10.com, 1
@@ -215,17 +214,16 @@ 2c-t-7.com, 1
 2c-t-8.com, 1
 2cash.ru, 1
 2cv-fahrer.de, 1
 2fm.ie, 1
 2fraud.pro, 1
 2gen.com, 1
 2hypeenterprises.com, 1
 2kgwf.fi, 1
-2krueger.de, 1
 2mb.solutions, 1
 2nains.ch, 1
 2nerds1bit.com, 1
 2pay.fr, 1
 2programmers.net, 1
 2smart4food.com, 1
 2stv.net, 1
 2ulcceria.nl, 1
@@ -327,16 +325,17 @@ 4web-hosting.com, 1
 4winds.pt, 1
 4x.fi, 1
 4x4.lk, 1
 4xlabs.co, 1
 500k.nl, 1
 500p.xyz, 1
 50plusnet.nl, 1
 513vpn.net, 1
+517vpn.cn, 1
 518maicai.com, 1
 525.info, 1
 52neptune.com, 1
 5432.cc, 1
 54below.com, 1
 5533445.com, 1
 555fl.com, 1
 555xl.com, 1
@@ -881,23 +880,25 @@ ahoyconference.com, 1
 ahrq.gov, 0
 ahughes03.com, 0
 ahwah.net, 1
 ahwatukeefoothillsmontessori.com, 1
 ahxxm.com, 1
 ai-english.jp, 1
 aia.de, 1
 aibenzi.com, 1
+aicial.com, 1
 aidanmontare.net, 1
 aide-valais.ch, 1
 aiden.link, 1
 aidhan.net, 1
 aidikofflaw.com, 1
 aie.de, 1
 aiesecarad.ro, 1
+aiforsocialmedia.com, 1
 aigcev.org, 1
 aiicy.org, 1
 aiida.se, 1
 aikenorganics.com, 1
 aikenpromotions.com, 1
 aikido-club-limburg.de, 1
 aikido-linz.at, 1
 aikido-wels.at, 1
@@ -1028,16 +1029,17 @@ alexcoman.com, 1
 alexdaniel.org, 1
 alexdaulby.com, 1
 alexei.su, 1
 alexey-shamara.ru, 1
 alexgaynor.net, 1
 alexhaydock.co.uk, 1
 alexhd.de, 1
 alexisabarca.com, 1
+alexischaussy.xyz, 1
 alexkott.com, 1
 alexmak.net, 1
 alexmerkel.com, 1
 alexmerkel.me, 1
 alexmerkel.xyz, 1
 alexn.org, 1
 alexpavel.com, 1
 alexperry.io, 1
@@ -1456,17 +1458,16 @@ ans-delft.nl, 1
 ans-ge.ch, 1
 ansas.eu, 1
 ansas.net, 1
 ansdell.net, 1
 anseo.ninja, 1
 ansermet.net, 1
 ansgar-sonntag.de, 1
 ansgarsonntag.de, 1
-anshuman-chatterjee.com, 0
 anshumanbiswas.com, 1
 ansogning-sg.dk, 1
 anstaskforce.gov, 1
 answers-online.ru, 1
 antama.nl, 1
 antarcti.co, 1
 antcas.com, 1
 antenasmundosat.com.br, 1
@@ -2022,17 +2023,16 @@ augustian-life.cz, 1
 augustiner-kantorei-erfurt.de, 1
 augustiner-kantorei.de, 1
 aukaraoke.su, 1
 aulo.in, 0
 auntie-eileens.com.au, 1
 auplidespages.fr, 1
 aur.rocks, 1
 aureus.pw, 1
-auri.ga, 1
 auricblue.com, 1
 auriko-games.de, 1
 aurora-multimedia.co.uk, 1
 aurora-terraria.org, 1
 aurorarecordings.com, 1
 aus-ryugaku.info, 1
 ausec.ch, 1
 ausschreibungen-suedtirol.it, 1
@@ -2081,17 +2081,16 @@ autoskola.hr, 1
 autoskole.hr, 1
 autostodulky.cz, 1
 autostop-occasions.be, 1
 autotechschool.com, 1
 autoterminus-used.be, 1
 autoverzekeringafsluiten.com, 1
 autoxy.it, 1
 autozane.com, 1
-auvernet.org, 1
 auxquatrevents.ch, 1
 ava-creative.de, 0
 avaaz.org, 1
 avacariu.me, 1
 avadatravel.com, 1
 avalon-island.ru, 1
 avanet.ch, 1
 avanovum.de, 1
@@ -2263,17 +2262,16 @@ baiker.info, 1
 bailakomigo.com.br, 1
 baileebee.com, 1
 baitulongbaycruises.com, 1
 baiyangliu.com, 1
 bajic.ch, 1
 baka.network, 1
 bakabt.info, 1
 bakaproxy.moe, 1
-bakaweb.fr, 1
 bakersafari.co, 1
 bakim.li, 1
 bakkerinjebuurt.be, 1
 bakongcondo.com, 1
 balade-commune.ch, 1
 baladecommune.ch, 1
 balancascia.com.br, 1
 balancenaturalhealthclinic.ca, 1
@@ -2558,17 +2556,16 @@ belastingdienst-in-beeld.nl, 1
 belastingmiddeling.nl, 1
 belcompany.nl, 0
 belegit.org, 1
 belfastlocks.com, 1
 belfasttechservices.co.uk, 1
 belge.rs, 1
 belgers.com, 1
 belgien.guide, 1
-belhopro.be, 1
 belics.com, 1
 belien-tweedehandswagens.be, 1
 believablebook.com, 0
 bellavistaoutdoor.com, 1
 belloy.ch, 1
 belloy.net, 1
 belly-button-piercings.com, 1
 belmontgoessolar.org, 1
@@ -2689,17 +2686,16 @@ bestperfumebrands.com, 1
 bestseries.tv, 1
 bestwarezone.com, 1
 bestwebsite.gallery, 1
 bet-99.com, 1
 betamint.org, 1
 betaworx.de, 1
 betaworx.eu, 1
 betformular.com, 1
-bethanyduke.com, 1
 betkoo.com, 1
 betlander.com, 1
 betonmoney.com, 1
 betpamm.com, 1
 bets.gg, 1
 betseybuckheit.com, 1
 betsonlinefree.com.au, 1
 betsyshilling.com, 1
@@ -2743,16 +2739,17 @@ beyondthecode.io, 1
 beyondtodaymediagroup.com, 1
 beyondtrust.com, 1
 beyondweb.net, 1
 beyonic.com, 1
 beyours.be, 1
 bezoomnyville.com, 1
 bezpecnostsiti.cf, 1
 bfam.tv, 1
+bfd.vodka, 1
 bfi.wien, 0
 bfrailwayclub.cf, 1
 bftbradio.com, 1
 bfw-online.de, 1
 bg-sexologia.com, 1
 bgdaddy.com, 1
 bgenlisted.com, 1
 bgeo.io, 1
@@ -2853,17 +2850,16 @@ bimmerlabs.com, 1
 bina.az, 1
 binam.center, 1
 binarization.com, 1
 binaryabstraction.com, 1
 binaryapparatus.com, 1
 binaryappdev.com, 1
 binaryevolved.com, 1
 binaryfigments.com, 1
-binarystud.io, 1
 binding-problem.com, 1
 binfind.com, 1
 bingcheung.com, 1
 bingo-wear.com, 1
 bingobank.org, 1
 bingofriends.com, 1
 bingostars.com, 1
 binimo.com, 1
@@ -3138,17 +3134,16 @@ bls-fiduciaire.be, 1
 bltc.co.uk, 1
 bltc.com, 1
 bltc.net, 1
 bltc.org, 1
 bltc.org.uk, 1
 blubberladen.de, 1
 blue-leaf81.net, 1
 blue42.net, 1
-bluebill.net, 1
 bluecards.eu, 1
 bluechilli.com, 1
 bluecon.ninja, 1
 blued.moe, 1
 blueflare.org, 1
 bluefuzz.nl, 1
 blueimp.net, 1
 blueliquiddesigns.com.au, 1
@@ -3321,17 +3316,16 @@ bouchard-mathieux.com, 1
 bouchonville-knifemaker.com, 1
 bouckaert-usedcars.be, 1
 boudah.pl, 1
 boueki.jp, 1
 boueki.org, 1
 bougeret.fr, 1
 boukoubengo.com, 1
 bounceboxspc.com, 1
-bouncourseplanner.net, 1
 bouncyball.eu, 0
 bouncyballs.org, 1
 bountyfactory.io, 1
 bourasse.fr, 1
 bourdon.fr.eu.org, 1
 bourqu.in, 1
 bourse-aux-jouets.org, 0
 bourse-aux-vetements.org, 0
@@ -3356,16 +3350,17 @@ bowntycdn.net, 1
 boxdevigneron.fr, 1
 boxing-austria.eu, 1
 boxit.es, 1
 boxpirates.to, 1
 boxvergelijker.nl, 1
 boxview.com, 1
 boyan.in, 1
 boyfriendhusband.men, 1
+boyhost.cn, 1
 boypoint.de, 1
 boz.nl, 1
 bpadvisors.eu, 1
 bpaste.net, 1
 bpastudies.org, 1
 bpo.ovh, 1
 bpol-forum.de, 1
 bqcp.net, 1
@@ -3453,17 +3448,16 @@ breeethretail.ru, 0
 breest.net, 1
 breeswish.org, 1
 breeyn.com, 1
 brefy.com, 1
 brege.org, 1
 breitbild-beamer.de, 1
 brejoc.com, 1
 brendanscherer.com, 1
-brenden.net.au, 1
 brentacampbell.com, 1
 bress.cloud, 1
 bressier.fr, 1
 bretcarmichael.com, 1
 brettcornwall.com, 1
 brettelliff.com, 1
 bretzner.fr, 1
 brevboxar.se, 1
@@ -3580,17 +3574,16 @@ btorrent.xyz, 1
 btrb.ml, 1
 btserv.de, 1
 btsoft.eu, 1
 btsow.com, 1
 btxiaobai.com, 1
 bubba.cc, 1
 bubblegumblog.com, 1
 bubblespetspa.com, 1
-buben.tech, 1
 bubhub.io, 1
 buch-angucken.de, 1
 buck.com, 1
 buckmulligans.com, 1
 buckypaper.com, 1
 budaev-shop.ru, 1
 buddhistische-weisheiten.org, 1
 buddlycrafts.com, 1
@@ -3727,17 +3720,16 @@ bxdev.me, 1
 bxp40.at, 1
 by1896.com, 1
 by1899.com, 1
 by77.com, 1
 by777.com, 1
 byatte.com, 1
 bygningsregistrering.dk, 1
 byji.com, 1
-byken.cn, 1
 bymark.co, 1
 bymike.co, 1
 bynder.com, 1
 bypass.kr, 1
 bypass.sh, 1
 byrko.cz, 1
 byrko.sk, 1
 byronr.com, 1
@@ -3768,17 +3760,16 @@ c-path.org, 1
 c-rtx.com, 1
 c-shock.org, 1
 c-webdesign.net, 1
 c-world.co.uk, 1
 c.cc, 1
 c16t.uk, 1
 c2o-library.net, 1
 c2o2.xyz, 1
-c3-compose.com, 1
 c3vo.de, 1
 c3w.at, 1
 c4.hk, 1
 c4539.com, 1
 c4k3.net, 1
 c7dn.com, 1
 ca-key.de, 1
 ca-terminal-multiservices.fr, 1
@@ -4133,17 +4124,16 @@ cdepot.eu, 1
 cdkeykopen.com, 1
 cdkeyworld.de, 1
 cdlcenter.com, 1
 cdmhp.org.nz, 1
 cdmon.tech, 1
 cdn6.de, 1
 cdnjs.com, 1
 cdns.cloud, 1
-cdt.org, 1
 cdu-wilgersdorf.de, 1
 ce-agentur.de, 1
 ce-pimkie.fr, 1
 cebz.org, 1
 ceciliacolombara.com, 1
 cecilwalker.com.au, 1
 cecipu.gob.cl, 1
 ced-services.nl, 1
@@ -4288,17 +4278,16 @@ chantalguggenbuhl.ch, 1
 chanz.com, 1
 chaos-inc.de, 1
 chaos.run, 1
 chaoschemnitz.de, 1
 chaosdorf.de, 1
 chaosfield.at, 1
 chaoslab.org, 1
 chaospott.de, 1
-chaoticlaw.com, 1
 chaouby.com, 1
 chaplain.co, 1
 charbonnel.eu, 1
 charcoalvenice.com, 1
 charge.co, 1
 chargejuice.com, 1
 charitylog.co.uk, 1
 charl.eu, 1
@@ -4516,17 +4505,16 @@ christianscholz.de, 1
 christianscholz.eu, 1
 christiesantiques.com, 1
 christina-quast.de, 1
 christmascard.be, 1
 christoph-conrads.name, 1
 christophebarbezat.ch, 1
 christopherburg.com, 1
 christopherl.com, 1
-christopherpritchard.co.uk, 1
 christophertruncer.com, 1
 christophkreileder.com, 1
 christophsackl.de, 1
 chrisu3050.at, 1
 chrisupjohn.xyz, 1
 chriswarrick.com, 1
 chriswbarry.com, 1
 chriswells.io, 1
@@ -4739,32 +4727,32 @@ cloud-surfer.net, 1
 cloud.bugatti, 1
 cloud.fail, 1
 cloud.google.com, 1
 cloud.gov, 1
 cloud2go.de, 1
 cloudapps.digital, 1
 cloudbased.info, 1
 cloudbasedsite.com, 1
+cloudbleed.info, 1
 cloudbolin.es, 1
 cloudcaprice.net, 1
 cloudflareonazure.com, 1
 cloudfren.com, 1
 cloudia.org, 1
 cloudily.com, 1
 cloudlight.biz, 1
 cloudmigrator365.com, 1
 cloudopt.net, 1
 cloudoptimizedsmb.com, 1
 cloudoptimus.com, 1
 cloudpagesforwork.com, 1
 cloudpebble.net, 1
 cloudpengu.in, 1
 cloudpipes.com, 1
-clouds.webcam, 1
 cloudsecurityalliance.org, 1
 cloudservice.io, 1
 cloudspace-analytics.com, 1
 cloudspeedy.net, 1
 cloudteam.de, 1
 cloudtropia.de, 1
 cloudtskr.com, 1
 cloudup.com, 1
@@ -5091,17 +5079,16 @@ conclave.global, 1
 concretehermit.com, 1
 condecom.com.br, 1
 condepenalba.com, 1
 condesaelectronics.com, 1
 condosforcash.com, 1
 condroz-motors.be, 1
 conectalmeria.com, 1
 confiancefoundation.org, 1
-confidential.network, 1
 config.schokokeks.org, 0
 confiwall.de, 1
 conflux.tw, 1
 conformax.com.br, 1
 conformist.jp, 1
 confucio.cl, 1
 confuddledpenguin.com, 1
 congineer.com, 1
@@ -5275,16 +5262,17 @@ counselling.network, 1
 counstellor.com, 1
 counter-team.ch, 1
 counterglobal.com, 1
 countermail.com, 1
 countingto.one, 1
 countryattire.com, 1
 countrybrewer.com.au, 1
 countryhouseresort.com, 1
+countryoutlaws.ca, 1
 countybankdel.com, 1
 countyjailinmatesearch.com, 1
 coup-dun-soir.ch, 1
 couponcodesme.com, 1
 cour4g3.me, 1
 couragefound.org, 1
 courageousparentsnetwork.org, 1
 course.pp.ua, 1
@@ -5846,17 +5834,16 @@ darinkotter.com, 1
 darioackermann.ch, 1
 dariosirangelo.me, 1
 darioturchetti.me, 1
 darisni.me, 1
 dark-vision.cz, 1
 darkag.ovh, 1
 darkcores.net, 1
 darkdestiny.ch, 1
-darkengine.net, 1
 darkeststar.org, 1
 darkfire.ch, 1
 darkishgreen.com, 1
 darknode.in, 1
 darkserver.fedoraproject.org, 1
 darkserver.stg.fedoraproject.org, 1
 darkshop.nl, 1
 darkside.re, 1
@@ -6122,17 +6109,16 @@ defimetier.org, 1
 defimetiers.com, 1
 defimetiers.fr, 1
 deflect.ca, 1
 deflumeri.com, 1
 defme.eu, 1
 defrax.com, 1
 defrax.de, 1
 deftek.com, 1
-deftnerd.com, 1
 defuse.ca, 1
 defxing.net, 1
 degata.com, 1
 degeberg.com, 1
 degeberg.dk, 1
 degen-elektrotechnik.de, 1
 degraafschapdierenartsen.nl, 1
 dehopre.com, 1
@@ -6172,16 +6158,17 @@ demo.sb, 1
 demo9.ovh, 1
 democracy.io, 1
 democracychronicles.com, 1
 democracyineurope.eu, 1
 democraziaineuropa.eu, 1
 demoniak.ch, 1
 demonwav.com, 1
 demonwolfdev.com, 1
+demotivatorbi.ru, 1
 dempsters.ca, 1
 demuzere.be, 1
 demuzere.com, 1
 demuzere.eu, 1
 demuzere.net, 1
 demuzere.org, 1
 denabot.pw, 1
 denardbrewing.com, 1
@@ -6266,17 +6253,16 @@ despertadoronline.com.es, 1
 desplats.com.ar, 1
 despora.de, 0
 despotika.de, 1
 dessinemoilademocratie.ch, 1
 desterman.ru, 1
 destileria.net.br, 1
 destinationsofnewyorkstate.com, 1
 destinattorneyjohngreene.com, 1
-desu.ne.jp, 1
 det-te.ch, 1
 detecte-fuite.ch, 1
 detecte.ch, 1
 detectefuite.ch, 1
 detectify.com, 0
 dethemium.com, 1
 detoxsinutritie.ro, 1
 detroit-english.de, 1
@@ -6299,42 +6285,41 @@ devdesco.com, 1
 devdom.io, 1
 devdoodle.net, 1
 devel.cz, 1
 develop.cool, 1
 developer.mydigipass.com, 0
 developerfair.com, 1
 developermail.io, 1
 developers.facebook.com, 0
+developersclub.website, 1
 developfx.com, 1
 developmentaid.org, 1
 developmentsites.melbourne, 1
 develux.com, 1
 develux.net, 1
 devh.de, 1
 deviant.email, 1
 devillers-occasions.be, 1
 devilshakerz.com, 1
 deviltracks.net, 1
 devinfo.net, 0
 devisnow.fr, 1
 devistravaux.org, 1
 devjack.de, 1
 devkid.net, 1
-devkit.cc, 1
 devlamvzw.org, 1
 devlatron.net, 1
 devlogr.com, 1
 devlux.ch, 1
 devolution.ws, 1
 devonsawatzky.ca, 1
 devops-survey.com, 1
 devops.moe, 1
 devpgsv.com, 1
-devpsy.info, 1
 devstaff.gr, 1
 devyn.ca, 1
 devzero.io, 1
 dewalch.net, 1
 dewapress.com, 1
 dexalo.de, 1
 dezeregio.nl, 1
 dezintranet.com, 1
@@ -6548,17 +6533,17 @@ discha.net, 1
 disciples.io, 1
 discipul.nl, 1
 disclosure.io, 1
 disco-crazy-world.de, 1
 discofitta.com, 1
 disconformity.net, 1
 discord-chan.net, 1
 discordapp.com, 1
-discotek.club, 1
+discotek.club, 0
 discountmetaux.fr, 1
 discover-mercure.com, 1
 discoverhealthage.com, 0
 discoverrsv.com, 1
 discoverwellness.center, 1
 discoveryballoon.org, 1
 discoveryrom.org, 1
 discreet-condooms.nl, 1
@@ -6627,17 +6612,16 @@ dldl.fr, 1
 dlfsymposium.nl, 1
 dlg.im, 1
 dlitz.net, 1
 dlld.com, 1
 dlouwrink.nl, 1
 dlrsp.org, 1
 dlzz.net, 1
 dm.lookout.com, 0
-dm4productions.com, 1
 dm7ds.de, 1
 dmarc.dk, 1
 dmarketer.com, 1
 dmeevalumate.com, 1
 dmenergy.ru, 1
 dmfd.net, 1
 dmi.es, 1
 dmlogic.com, 1
@@ -7130,16 +7114,17 @@ e-learningbs.com, 1
 e-lifetechnology.com, 1
 e-mak.eu, 1
 e-migration.ch, 1
 e-standardstore.org, 1
 e-teacher.pl, 1
 e-tech-solution.com, 1
 e-tmf.org, 1
 e-tresor.at, 1
+e-tune-mt.net, 1
 e-typ.eu, 1
 e-vau.de, 1
 e-wishlist.net, 1
 e-worksmedia.com, 1
 e.mail.ru, 1
 e11even.nl, 1
 e30.ee, 1
 e3kids.com, 1
@@ -7429,17 +7414,16 @@ ekokontakt.cz, 1
 ekonbenefits.com, 1
 ekostecki.de, 1
 eksisozluk.com, 1
 ekuatorial.com, 1
 ekzarta.ru, 1
 el-cell.com, 1
 el-soul.com, 1
 eladgames.com, 1
-elaon.de, 1
 elars.de, 1
 elaxy-online.de, 1
 eldertons.co.uk, 1
 eldinhadzic.com, 1
 eldritchfiction.net, 1
 elearningpilot.com, 1
 electionsdatabase.com, 1
 electr0sheep.com, 1
@@ -7473,17 +7457,16 @@ elektrokarges.de, 1
 elektrometz.de, 1
 elektropost.org, 1
 element-43.com, 0
 elemental.software, 1
 elementalict.com, 1
 elementalrobotics.com, 1
 elementalsoftware.net, 1
 elementalsoftware.org, 1
-elementarywave.com, 1
 elements.guide, 1
 elena-baykova.ru, 1
 elenorsmadness.org, 1
 elephants.net, 1
 elephpant.cz, 1
 elepover.com, 1
 eletesstilus.hu, 1
 eleusis-zur-verschwiegenheit.de, 1
@@ -8033,18 +8016,16 @@ eutram.com, 1
 ev-zertifikate.de, 1
 eva.cz, 1
 evaartinger.de, 1
 evades.io, 1
 evalesc.com, 1
 evanfiddes.com, 1
 evangelosm.com, 1
 evankurniawan.com, 1
-evantage.org, 1
-evantageglobal.com, 1
 evapp.org, 1
 evasion-energie.com, 1
 evasioncreole.com, 1
 evasovova.cz, 1
 eve0s.com, 1
 evecalm.com, 1
 evegalaxy.net, 1
 evelienzorgt.nl, 1
@@ -8142,16 +8123,17 @@ exoscale.ch, 1
 exoticads.com, 1
 exousiakaidunamis.pw, 1
 exp.de, 1
 expancio.com, 1
 expandeco.com, 1
 expecting.com.br, 1
 experienceoz.com.au, 1
 expert-korovin.ru, 1
+expert.cz, 1
 experteasy.com.au, 1
 experticon.com, 1
 experts-en-gestion.fr, 1
 explodie.org, 1
 explodingcamera.com, 1
 exploflex.com.br, 1
 exploit-db.com, 1
 exploit.cz, 1
@@ -8417,16 +8399,17 @@ fcapartsdb.com, 1
 fcburk.de, 1
 fcforum.net, 1
 fckd.net, 1
 fcprovadia.com, 1
 fcsic.gov, 1
 fdlibre.eu, 1
 fdsys.gov, 0
 feac.us, 1
+feaden.me, 1
 fearghus.org, 1
 fearsomegaming.com, 1
 feastr.io, 1
 featherweightlabs.com, 1
 fecik.sk, 1
 federalinvestments.gov, 1
 federaljobs.gov, 1
 federalregister.gov, 0
@@ -8743,16 +8726,17 @@ fleursdesoleil.fr, 1
 flexapplications.se, 1
 fleximus.org, 0
 flexinvesting.fi, 1
 flexport.com, 1
 flexstart.me, 1
 flextrack.dk, 1
 flightdeckfriend.com, 1
 flightschoolbooking.com, 1
+flightschoolcandidates.gov, 1
 fliino.com, 1
 flikmsg.co, 1
 flinch.io, 1
 fling.dating, 1
 flipagram.com, 0
 flipneus.net, 1
 fliptable.org, 1
 flirt-norden.de, 1
@@ -9124,34 +9108,32 @@ freifunk-luenen.de, 1
 freifunk-nrw.de, 1
 freifunk-remscheid.de, 1
 freimeldungen.de, 1
 freims.cc, 1
 freiwurst.net, 1
 frenchcreekcog.org, 1
 frenzel.dk, 1
 frequencebanane.ch, 1
-fresh-hotel.org, 1
 fresh-networks.net, 1
 fresh.co.il, 1
 freshcode.nl, 1
 freshdesigns.de, 1
 freshdns.nl, 1
 freshempire.gov, 1
 freshmaza.com, 1
 freshmaza.net, 1
 fretscha.com, 1
 frettboard.com, 1
 fretworksec.com, 1
 fribourgviking.net, 1
 frickelboxx.de, 1
 frickelmeister.de, 1
 frickenate.com, 1
 fridaperfumaria.com.br, 1
-fridolinka.cz, 1
 friedhelm-wolf.de, 1
 friedrich-foto-art.de, 1
 friedsamphotography.com, 1
 friends-of-naz.com, 1
 friends24.cz, 1
 friendship-quotes.co.uk, 1
 friet.org, 1
 friezy.ru, 1
@@ -9172,17 +9154,16 @@ froehlich.it, 1
 frogatto.com, 1
 frogeye.fr, 1
 froggitt.com, 1
 frogsonamission.de, 1
 froh.co.jp, 0
 frokenblomma.se, 1
 frolov.net, 1
 frolova.org, 1
-fromix.de, 1
 fromlemaytoz.com, 1
 fromscratch.rocks, 1
 fromthesoutherncross.com, 1
 front-end.dog, 0
 fronteers.nl, 0
 frontline.cloud, 1
 frontline6.com, 1
 fropky.com, 1
@@ -9339,17 +9320,16 @@ g10e.ch, 1
 g1jeu.com, 1
 g2-inc.com, 1
 g2links.com, 1
 g2pla.net, 1
 g2soft.net, 1
 g3dev.ch, 1
 g3rv4.com, 1
 g4w.co, 1
-g77.ca, 1
 gaasuper6.com, 1
 gabemack.com, 1
 gabriel.to, 1
 gachter.name, 1
 gadabit.pl, 1
 gadgethacks.com, 1
 gaestehaus-monika.com, 1
 gafachi.com, 1
@@ -9401,16 +9381,17 @@ gamecollector.be, 1
 gameconservation.org.uk, 1
 gamedevelopers.pl, 1
 gamegix.com, 1
 gameguardian.net, 1
 gameisbest.jp, 1
 gamekeysuche.de, 1
 gamenerd.net, 1
 gameofbay.org, 1
+gameofpwnz.com, 1
 gamepad.com.br, 1
 gameparagon.info, 1
 gamercredo.com, 1
 gamercredo.net, 1
 gamestats.gg, 1
 gametium.com, 1
 gametium.es, 1
 gamhealth.net, 1
@@ -9687,17 +9668,16 @@ getsport.mobi, 1
 getsubs.net, 1
 getts.ro, 1
 getvdownloader.com, 1
 getwarden.net, 1
 getwpd.com, 0
 getyeflask.com, 1
 getyou.onl, 1
 getyourphix.tk, 1
-gevaulug.fr, 1
 geyduschek.be, 1
 gfast.ru, 1
 gfhgiro.nl, 0
 gfk-kunststoff-luebben.de, 1
 gflame.de, 1
 gflclan.ru, 1
 gforce.ninja, 1
 gfoss.eu, 1
@@ -9712,17 +9692,16 @@ ggp2.com, 1
 ggs.jp, 1
 ggservers.com, 1
 ggss.cf, 1
 ggx.us, 1
 gha.st, 1
 ghaglund.se, 1
 ghcif.de, 1
 ghislainphu.fr, 1
-ghkim.net, 1
 ghostblog.info, 1
 ghostwritershigh.com, 1
 ghrelinblocker.info, 1
 ghrelinblocker.org, 1
 giacomodrago.com, 1
 giacomodrago.it, 1
 giacomopelagatti.it, 1
 gianproperties.com, 1
@@ -10125,16 +10104,17 @@ grenadierkorps-kaarst.de, 1
 grenadierkorps.de, 1
 grepmaste.rs, 1
 grepular.com, 1
 gresak.io, 1
 grettogeek.com, 1
 greuel.online, 1
 greve.xyz, 1
 grey.house, 1
+greybit.net, 1
 greyhash.se, 1
 greyskymedia.com, 1
 greysolutions.it, 1
 greywizard.com, 1
 grh.am, 1
 grian-bam.at, 1
 gridle.io, 1
 grieg-gaarden.no, 1
@@ -10263,16 +10243,17 @@ gulleyperformancecenter.com, 1
 gulshankumar.net, 1
 gummibande.noip.me, 1
 gunhunter.com, 1
 guniram.com, 1
 gunwatch.co.uk, 1
 guphi.net, 0
 gurkan.in, 1
 gurmel.ru, 1
+gurochan.ch, 1
 guru-naradi.cz, 1
 gurueffect.com, 1
 gus.host, 1
 gus.moe, 1
 gustaff.de, 1
 gustiaux.com, 1
 guthabenkarten-billiger.de, 1
 guts.me, 1
@@ -10669,18 +10650,16 @@ heliosnet.com, 1
 helix.am, 1
 helixflight.com, 1
 hellenicaward.com, 1
 hellersgas.com, 1
 helles-koepfchen.de, 1
 helloacm.com, 1
 helloanselm.com, 1
 hellofilters.com, 1
-hellomouse.cf, 1
-hellomouse.tk, 1
 hellotandem.com, 1
 hellothought.net, 1
 hellscanyonraft.com, 1
 help.simpletax.ca, 1
 helpconnect.com.au, 1
 helpekwendenihospital.com, 1
 helpgoabroad.com, 1
 helpstarloja.com.br, 1
@@ -10825,17 +10804,16 @@ higherpress.org, 1
 highland-webcams.com, 1
 highlandparkcog.org, 1
 highlatitudestravel.com, 1
 highlegshop.com, 1
 highlevelwoodlands.com, 1
 highlnk.com, 1
 highspeed-arnsberg.de, 1
 hightechbasementsystems.com, 1
-hightower.eu, 1
 highwaytohoell.de, 1
 higilopocht.li, 1
 higp.de, 1
 hijoan.com, 1
 hik-cloud.com, 1
 hikagestudios.com, 1
 hike.pics, 1
 hikingguy.com, 1
@@ -11214,16 +11192,17 @@ humblebee.foundation, 1
 humblebee.ie, 1
 humblebee.us, 1
 humblebeeshop.ca, 1
 hummy.tv, 1
 hump.dk, 1
 humpen.se, 1
 hund.io, 1
 hundeformel.de, 1
+hundter.com, 1
 hunter.io, 1
 huntingdonlifesciences.com, 1
 huntshomeinspections.com, 1
 huongquynh.com, 1
 hup.hu, 1
 hupp.se, 1
 hurd.is, 1
 huren.nl, 0
@@ -11403,17 +11382,16 @@ idemo.in, 1
 idensys.nl, 1
 identifyme.net, 1
 identity-hash.online, 1
 identitytheft.gov, 1
 idexxpublicationportal.com, 1
 idgard.de, 1
 idhosts.co.id, 1
 idid.tk, 1
-idinby.dk, 1
 idiopolis.org, 1
 idiotentruppe.de, 1
 idmanagement.gov, 1
 idmobile.co.uk, 1
 idndx.com, 1
 idoc24.com, 1
 idol-bikes.ru, 1
 idolf.dk, 1
@@ -11729,17 +11707,16 @@ inheritestate.com, 1
 inhive.group, 1
 iniiter.com, 1
 inima.org, 1
 inios.fr, 0
 inishbofin.ie, 1
 initq.net, 1
 initramfs.io, 1
 initrd.net, 1
-injust.eu.org, 1
 ink.horse, 1
 inkbunny.net, 0
 inkhor.se, 1
 inkontriamoci.com, 1
 inksay.com, 1
 inkthemes.com, 1
 inline-sport.cz, 1
 inlink.ee, 1
@@ -11869,16 +11846,17 @@ internshipandwork.com, 1
 internshipandwork.ru, 1
 interociter-enterprises.com, 1
 interracial.dating, 1
 intersectraven.net, 1
 interseller.io, 1
 intertime.services, 1
 interview-suite.com, 1
 interviewpipeline.co.uk, 1
+interways.de, 1
 intexplore.org, 1
 intheater.de, 1
 inthepicture.com, 1
 inthouse.cloud, 1
 intimastoreatacado.com.br, 1
 intl-webs.com, 1
 intmissioncenter.org, 1
 into.technology, 1
@@ -11887,16 +11865,17 @@ inton.biz, 1
 intoparking.com, 0
 intracom.com, 1
 intradayseasonals.com, 1
 intramanager.co.uk, 1
 intramanager.dk, 1
 intranetsec-regionra.fr, 1
 intraobes.com, 1
 intrasoft.com.au, 1
+intune.life, 1
 intux.be, 0
 intvonline.com, 1
 intxt.net, 1
 inusasha.de, 1
 inuyasha-petition.tk, 1
 invasion.com, 1
 invenio.software, 1
 inventaire.ch, 1
@@ -12517,28 +12496,26 @@ jhcommunitysports.co.uk, 1
 jhermsmeier.de, 1
 jhollandtranslations.com, 1
 jhuang.me, 1
 jhwestover.com, 1
 jialinwu.com, 0
 jianjia.io, 0
 jiaqiang.vip, 1
 jichi.io, 1
-jichi.me, 1
 jie.dance, 1
 jief.me, 1
 jigsawdevelopments.com, 1
 jimbraaten.com, 1
 jimmycai.com, 1
 jimmynelson.com, 1
 jimmyroura.ch, 1
 jimshaver.net, 1
 jinancy.fr, 1
 jinbo123.com, 0
-jinbowiki.org, 1
 jing.su, 1
 jingjo.com.au, 1
 jinja.ai, 1
 jinliming.ml, 1
 jino-jossy.appspot.com, 1
 jinshuju.net, 1
 jiogo.com, 1
 jira.com, 1
@@ -13191,17 +13168,17 @@ keybored.me, 1
 keycdn.com, 1
 keycenter.com.br, 1
 keyerror.com, 1
 keyholdingservices.co.uk, 1
 keyihao.cn, 1
 keyinfo.io, 1
 keypersonins.com, 1
 keys.fedoraproject.org, 1
-keyserver.sexy, 1
+keyserver.sexy, 0
 keystoneok.com, 1
 keysupport.org, 1
 kf7joz.com, 1
 kfv-kiel.de, 1
 kfz-hantschel.de, 1
 kgb.us, 1
 kgm-irm.be, 1
 kgnk.ru, 1
@@ -13227,16 +13204,17 @@ kickasscanadians.ca, 1
 kickedmycat.com, 1
 kickerplaza.nl, 1
 kickstart.com.pk, 1
 kidbacker.com, 1
 kiddyboom.ua, 1
 kids-at-home.ch, 1
 kidsforsavingearth.org, 1
 kidsinwoods-interfacesouth.org, 1
+kidsmark.net, 1
 kidsneversleep.com, 1
 kidtoyshop.ru, 1
 kiebel.de, 1
 kiedys.net, 1
 kiefer-networks.de, 1
 kiehls.pt, 1
 kiekin.org, 1
 kiekko.pro, 1
@@ -13452,16 +13430,17 @@ kobieta.guru, 1
 kobofarm.com, 1
 koboldcraft.ch, 1
 kobolya.hu, 1
 kodak-ism.com, 1
 kodakit.com, 1
 kodden.com.br, 1
 kode.ch, 1
 koebbes.de, 1
+koelbli.ch, 1
 koelnmafia.de, 1
 koenigsbrunner-tafel.de, 1
 koerper-wie-seele.de, 0
 koertner-muth.com, 1
 koertner-muth.de, 1
 koethen-markt.de, 1
 koez-mangal.ch, 1
 koezmangal.ch, 1
@@ -13958,17 +13937,16 @@ lavalite.de, 1
 lavaux.lv, 1
 lavenderx.org, 1
 lavita.de, 1
 lavitrine-une-collection.be, 1
 lavoieducoeur.be, 1
 lavolte.net, 1
 lavval.com, 1
 law-peters.de, 1
-lawformt.com, 1
 lawn-seeds.com, 1
 lawnuk.com, 1
 lawrence-institute.com, 1
 lawrencemurgatroyd.com, 1
 laylo.nl, 1
 laymans911.info, 1
 layoutsatzunddruck.de, 1
 lazerus.net, 1
@@ -13981,17 +13959,16 @@ lazytux.de, 1
 lazytux.org, 1
 lb-toner.de, 1
 lbarrios.es, 1
 lbayer.com, 1
 lbgconsultores.com, 1
 lbihrhelpdesk.com, 1
 lbs-logics.com, 1
 lca-pv.de, 1
-lcht.ch, 1
 lcti.biz, 1
 ld-begunjscica.si, 1
 ldc.com.br, 0
 ldcraft.pw, 1
 ldvsoft.net, 0
 le-bar.org, 1
 le-blog.ch, 1
 le-controle-parental.fr, 1
@@ -14031,17 +14008,16 @@ leaseit24.de, 1
 leasit.at, 1
 leasit.de, 1
 leatherfurnitureexpo.com, 1
 leaversmith.com, 1
 leavesofchangeweekly.org, 1
 lebal.se, 1
 lebanesearmy.gov.lb, 1
 lebarmy.gov.lb, 1
-lebens-fluss.at, 1
 lebihan.pl, 1
 leblanc.io, 1
 lebosse.me, 1
 lebourgeo.is, 1
 lechaudrondupertuis.ch, 1
 lechiennoir.net, 1
 leclaire.com.br, 1
 lecourtier.fr, 1
@@ -14189,17 +14165,16 @@ lets.nu, 1
 letsencrypt-for-cpanel.com, 1
 letsgame.nl, 1
 letsgetchecked.com, 1
 letsgetintouch.com, 1
 letsgowhilewereyoung.com, 1
 letstalkcounseling.com, 1
 letterbox-online.de, 1
 letterdance.de, 1
-letteringinstitute.com, 1
 lettersblogatory.com, 1
 lettland-firma.com, 1
 lettori.club, 1
 leu.to, 0
 leuenhagen.com, 1
 leuthardtfamily.com, 1
 levans.fr, 1
 levanscatering.com, 1
@@ -14237,22 +14212,16 @@ lgpecasoriginais.com.br, 1
 lgsg.us, 1
 lhasaapso.com.br, 1
 lhconsult.tk, 1
 lheinrich.com, 1
 lheinrich.de, 1
 lheinrich.org, 1
 li-ke.co.jp, 1
 liangji.com.tw, 0
-lianye1.cc, 1
-lianye2.cc, 1
-lianye3.cc, 1
-lianye4.cc, 1
-lianye5.cc, 1
-lianye6.cc, 1
 liaozheqi.cn, 1
 liaronce.win, 1
 liautard.fr, 1
 libbitcoin.org, 1
 libble.eu, 1
 libdeer.so, 1
 liberapay.com, 1
 libertas-tech.com, 1
@@ -14289,17 +14258,16 @@ lidl-holidays.com, 1
 lidl-shop.be, 1
 lidl-shop.cz, 1
 lidl-shop.nl, 1
 lidl-tour.ro, 1
 lidong.me, 1
 lidow.eu, 1
 liduan.com, 1
 liduan.net, 1
-liebach.me, 1
 liebel.org, 1
 liebestarot.at, 1
 lied8.eu, 1
 liehuojun.com, 1
 lifanov.com, 1
 life-time.nl, 1
 lifebetweenlives.com.au, 1
 lifecism.com, 1
@@ -14424,17 +14392,16 @@ liquidcomm.net, 1
 liquidhost.co, 1
 liquidinternet.co, 1
 lirion.de, 1
 liris-beautywelt.de, 1
 lirlandais.ch, 1
 lirnberger.com, 1
 lisamccorrie.com, 1
 lisamortimore.com, 1
-lisgade.dk, 1
 lisieuxarquitetura.com.br, 1
 liskgdt.net, 1
 lislan.org.uk, 1
 lisowski-development.com, 1
 lisowski-photography.com, 1
 lissabon.guide, 1
 listahu.org, 1
 listen.dk, 1
@@ -14586,17 +14553,16 @@ logicsale.it, 1
 logimagine.com, 1
 login.corp.google.com, 1
 login.gov, 0
 login.launchpad.net, 1
 login.sapo.pt, 1
 login.ubuntu.com, 1
 login.xero.com, 0
 login.yahoo.com, 0
-logistify.com.mx, 1
 logitel.de, 1
 logopaediereinhard.de, 1
 logopedistalanni.it, 1
 logopoeia.com, 1
 logostock.jp, 1
 logue.be, 1
 lohanaflores.com.br, 1
 loichot.ch, 1
@@ -15294,17 +15260,16 @@ maru-life.com, 1
 maruhoi.com, 1
 marvinkeller.de, 1
 maryjruggles.com, 1
 marykatrinaphotography.com, 1
 masa-hou.com, 1
 mascosolutions.com, 1
 maservant.net, 1
 mashek.net, 1
-mashnew.com, 1
 masiniunelte.store.ro, 1
 masiul.is, 1
 maskinkultur.com, 1
 maslife365.com, 1
 massage-vitalite.fr, 1
 massagecupping.com, 1
 massdrop.com, 1
 masse.org, 1
@@ -15460,17 +15425,16 @@ mbcars.be, 1
 mbdrogenbos-usedcars.be, 1
 mbeo.ch, 1
 mbilker.us, 1
 mbinf.de, 0
 mbinformatik.de, 0
 mblankhorst.nl, 1
 mbp.banking.co.at, 0
 mbr-net.de, 1
-mbrooks.info, 1
 mbs-journey.com, 1
 mbsec.net, 1
 mbweir.com, 1
 mbwemmel-usedcars.be, 1
 mc-team.org, 1
 mc-venture.net, 0
 mcadmin.net, 1
 mcatnnlo.org, 1
@@ -15496,17 +15460,16 @@ mchristopher.com, 1
 mcideas.tk, 1
 mcjackk77.com, 1
 mckenry.net, 1
 mckernan.in, 1
 mckinley.school, 1
 mckinley1.com, 1
 mckinleytk.com, 1
 mcl.gg, 1
-mclyr.com, 1
 mcmillansedationdentistry.com, 1
 mcmillanskiclub.com.au, 1
 mcneill.io, 1
 mcnext.net, 1
 mcpart.land, 1
 mcrn.jp, 1
 mcsa-usa.org, 1
 mcsniper.co, 1
@@ -16308,17 +16271,16 @@ moritz-baestlein.de, 1
 moritztremmel.de, 1
 moriz.de, 1
 moriz.net, 1
 morotech.com.br, 1
 morphy2k.io, 1
 morteruelo.net, 1
 mortis.eu, 1
 mosaic-design.ru, 1
-mosaique-lachenaie.fr, 1
 moscow.dating, 1
 mosfet.cz, 1
 mosin.org, 1
 moskva.guide, 1
 moso.io, 1
 mosos.de, 1
 mosscade.com, 1
 mosstier.com, 1
@@ -16372,17 +16334,16 @@ mozilla.cz, 1
 mozillians.org, 1
 mozzez.de, 1
 mozzilla.cz, 1
 mp3gratuiti.com, 1
 mpc-hc.org, 1
 mpcompliance.com, 1
 mpe.org, 1
 mpetroff.net, 1
-mpg-universal.com, 1
 mpg.ovh, 1
 mpi-sa.fr, 1
 mpintaamalabanna.it, 1
 mplanetphl.fr, 1
 mplant.io, 1
 mplicka.cz, 1
 mplusm.eu, 1
 mpreserver.com, 0
@@ -16586,17 +16547,16 @@ my-contract.net, 1
 my-demo.co, 1
 my-dick.ru, 1
 my-dns.co.il, 1
 my-ebook.es, 1
 my-floor.com, 1
 my-host.ovh, 1
 my-hps.de, 1
 my-ip.work, 1
-my-pawnshop.com.ua, 0
 my-plancha.ch, 1
 my-static-demo-808795.c.cdn77.org, 1
 my-static-live-808795.c.cdn77.org, 1
 my.onlime.ch, 0
 my.usa.gov, 1
 my.xero.com, 0
 myaccount.google.com, 0
 myactivity.google.com, 1
@@ -16805,17 +16765,16 @@ nacyklo.cz, 1
 nadejeproninu.cz, 1
 nadelholzkulturen.de, 1
 nadyaolcer.fr, 1
 nafod.net, 1
 naganithin.me, 1
 nagaragem.com.br, 1
 nagaya.biz, 1
 nagb.gov, 1
-nagb.org, 1
 nagel-dentaltechnik.de, 1
 nagelfam.com, 1
 naggie.net, 1
 nagios.by, 1
 nah.re, 1
 nahura.com, 1
 nailattitude.ch, 1
 nailchiodo.com, 1
@@ -16830,17 +16789,16 @@ nakliyatsirketi.biz.tr, 1
 nako.no, 1
 nalao-company.com, 1
 nalepky-na-zed.cz, 1
 nalepte.cz, 1
 nalukfitness.com.br, 1
 namegrep.com, 1
 nameid.org, 1
 namepros.com, 1
-namereel.com, 1
 nametiles.co, 1
 namikawatetsuji.jp, 1
 naminam.de, 1
 namrs.net, 1
 namu.moe, 1
 namu.wiki, 1
 nanami.moe, 1
 nanarose.ch, 1
@@ -17386,16 +17344,17 @@ nil.gs, 1
 niloxy.com, 1
 nilrem.org, 1
 nimeshjm.com, 1
 ninarinaldi.com.br, 1
 ninaundandre.de, 1
 ninchat.com, 1
 nine-hells.net, 0
 ninebennink.com, 1
+ninespec.com, 1
 ninetaillabs.com, 1
 ninetaillabs.xyz, 1
 ning.so, 1
 ninja-galerie.de, 1
 ninjan.co, 1
 ninofink.com, 1
 ninthfloor.org, 1
 ninux.ch, 0
@@ -17472,17 +17431,16 @@ noez.de, 1
 nofrillsdns.com, 1
 nohats.ca, 1
 nohkan.fr, 1
 nohm.eu, 1
 nohttps.org, 1
 nohup.se, 1
 nohup.xyz, 1
 noincludesubdomains.preloaded.test, 0
-noisebridge.social, 1
 noisetrap.cz, 1
 noisky.cn, 1
 noisyfox.cn, 1
 nojestorget.se, 1
 nokono.com, 1
 nolag.host, 1
 nolatepayments.com, 1
 nolaviz.org, 1
@@ -18188,17 +18146,16 @@ oswaldmattgroup.com, 1
 oswalds.co.uk, 1
 oswaldsmillaudio.com, 1
 osx86spain.com, 1
 osxentwicklerforum.de, 1
 oszri.hu, 1
 otako.pl, 1
 otakubox.de, 1
 otakurepublic.com, 1
-otchecker.com, 1
 otellio.com, 1
 otellio.de, 1
 otellio.it, 1
 oticasaopaulo.com.br, 1
 oticasvisao.net.br, 1
 otinane.eu, 1
 otmns.net, 1
 otokonna.com, 1
@@ -18229,16 +18186,17 @@ outgress.com, 1
 outka.xyz, 1
 outline.ski, 1
 outlookonthedesktop.com, 1
 outofcontrol.ca, 1
 outpostinfo.com, 1
 outsideconnections.com, 1
 over25tips.com, 1
 overalglas.nl, 1
+overclockers.ge, 1
 overkillshop.com, 1
 overseamusic.de, 1
 oversight.garden, 1
 oversight.gov, 1
 overstap.deals, 1
 overstappen.nl, 1
 overstockpromote.com, 1
 overthecloud.it, 1
@@ -18254,17 +18212,16 @@ owlscrap.ru, 1
 own3d.ch, 1
 ownc.at, 1
 owngeek.com, 1
 ownit.se, 0
 ownmay.com, 1
 ownspec.com, 1
 oxanababy.com, 1
 oxelie.com, 1
-oxro.co, 1
 oxygaming.com, 1
 oxymc.com, 1
 oxynux.xyz, 1
 oxytocin.org, 1
 oyoony.de, 1
 oyosoft.fr, 1
 ozark.be, 1
 oznamovacipovinnost.cz, 1
@@ -18382,17 +18339,16 @@ panoti.com, 0
 panoxadrez.com.br, 1
 panpsychism.com, 1
 panpsychist.com, 1
 pantallasled.mx, 1
 panthur.com.au, 0
 pantou.org, 0
 panzer72.ru, 1
 pap.la, 0
-papa-webzeit.de, 1
 papadopoulos.me, 1
 papakatsu-life.com, 1
 papatest24.de, 1
 papayame.com, 1
 papayapythons.com, 1
 papelariadante.com.br, 1
 paper-republic.org, 1
 paperhaven.com.au, 1
@@ -18540,17 +18496,16 @@ paudley.ca, 1
 paudley.com, 1
 paudley.org, 1
 paul-bronski.de, 1
 paul.reviews, 1
 pauladamsmith.com, 1
 paulbakaus.com, 1
 paulbdelaat.nl, 1
 paulbramhall.uk, 1
-paulchen.at, 1
 pauldcox.com, 1
 paulerhof.com, 1
 paulewen.ca, 1
 paulinewesterman.nl, 1
 paulomonteiro.pt, 1
 paulov.com, 1
 paulov.info, 1
 paulov.ru, 1
@@ -18607,17 +18562,16 @@ pbosquet.com, 1
 pbraunschdash.com, 1
 pbreen.co.uk, 1
 pbrumby.com, 1
 pbscreens.com, 1
 pbxapi.com, 1
 pbytes.com, 1
 pc-rescue.me, 1
 pc-tweak.de, 1
-pcat.io, 1
 pccentral.nl, 1
 pcel.com, 1
 pcf92.fr, 1
 pcfeuerwehr.de, 1
 pcforum.sk, 1
 pcgamingfreaks.at, 1
 pchelpforum.net, 1
 pciconcursos.com.br, 1
@@ -18643,16 +18597,17 @@ pebbles.net.in, 1
 pecker-johnson.com, 1
 pecot.fr, 1
 pedicureduiven.nl, 1
 pedimoda.com.br, 1
 pedrosluiter.nl, 1
 pedroventura.com, 0
 peeekaaabooo.com, 1
 peekier.com, 1
+peekops.com, 1
 peep.gq, 1
 peercraft.at, 1
 peercraft.be, 1
 peercraft.biz, 1
 peercraft.ch, 1
 peercraft.cn, 1
 peercraft.co.uk, 1
 peercraft.com, 1
@@ -18665,16 +18620,17 @@ peercraft.info, 1
 peercraft.it, 1
 peercraft.net, 1
 peercraft.nl, 1
 peercraft.org, 1
 peercraft.pl, 1
 peercraft.pt, 1
 peercraft.se, 1
 peercraft.us, 1
+peerless.ae, 1
 peername.com, 1
 peervpn.net, 1
 peeters.io, 1
 peg.nu, 1
 pegas-studio.net, 1
 pehapkari.cz, 1
 peifi.de, 0
 peippo.at, 1
@@ -19150,17 +19106,16 @@ plinc.co, 1
 pliosoft.com, 1
 plitu.de, 1
 ploader.ru, 0
 plongee-phuket.fr, 1
 ploofer.com, 1
 plot.ly, 1
 ploxel.com, 1
 plr4wp.com, 1
-plsboop.me, 1
 pluga.co, 1
 plugboard.xyz, 1
 plugcubed.net, 0
 pluggedhead.com, 1
 plugin-planet.com, 1
 pluginfactory.io, 1
 pluginsloaded.com, 1
 plumlocosoft.com, 1
@@ -19549,17 +19504,16 @@ prodigia.com, 1
 prodinger.com, 1
 prodsim.ninja, 1
 productbarcodes.com, 1
 productdesignsoftware.com.au, 1
 productgap.com, 1
 productived.net, 1
 proefteksten.nl, 0
 prof.ch, 1
-profection.biz, 1
 professionalboundaries.com, 1
 professors.ee, 1
 profidea.cz, 1
 profile.tf, 1
 profiles.google.com, 1
 profinetz.de, 1
 profitablewebprojects.com, 1
 profitopia.de, 1
@@ -19957,16 +19911,17 @@ r-ay.cn, 1
 r-core.org, 1
 r-cut.fr, 1
 r-rwebdesign.com, 1
 r0t.co, 1
 r0uzic.net, 1
 r2d2pc.com, 1
 r3nt3r.com, 1
 r3s1stanc3.me, 1
+r40.us, 1
 r6-team.ru, 1
 r7h.at, 1
 r811.de, 1
 ra-micro-koeln.de, 1
 ra4wvpn.com, 1
 raah.co, 1
 rabota-x.ru, 1
 racasdecachorro.org, 1
@@ -20169,16 +20124,19 @@ realestateonehowell.com, 1
 realgarant-shop.de, 0
 realhorsegirls.net, 1
 realitea.co.uk, 1
 reality.news, 1
 reality0ne.com, 1
 reallifeforums.com, 1
 realloc.me, 1
 really-simple-ssl.com, 1
+really.ai, 1
+really.io, 1
+reallyreally.io, 1
 realmofespionage.xyz, 1
 realwaycome.com, 1
 realwildart.com, 1
 realwoo.com, 1
 realworldholidays.co.uk, 1
 reancos.report, 1
 reanimated.eu, 1
 reapdrive.net, 1
@@ -20347,16 +20305,17 @@ release-monitoring.org, 1
 reliancebank.bank, 1
 religiousforums.com, 1
 relsak.cz, 1
 relvan.com, 1
 remaimodern.org, 1
 remambo.jp, 1
 remedioparaherpes.com, 1
 remedioscaserosparalacistitis.com, 1
+remedioskaseros.com, 0
 remedyrehab.com, 1
 rememberthemilk.com, 0
 remonti.info, 1
 remote.so, 1
 remotestance.com, 1
 remoteutilities.com, 1
 removedrepo.com, 1
 renascentia.asia, 1
@@ -20438,17 +20397,16 @@ responer.com, 1
 responsibledisclosure.nl, 0
 ressl.ch, 1
 restaurant-mangal.ch, 1
 restaurant-rosengarten.at, 1
 restaurantesimonetti.com.br, 1
 restaurantmangal.ch, 1
 rester-a-domicile.ch, 1
 rester-autonome-chez-soi.ch, 1
-restioson.me, 1
 restoran-radovce.me, 1
 restoreresearchstudy.com, 1
 restoruns.com, 1
 restoruns.xyz, 1
 restrito.org, 1
 resursedigitale.ro, 1
 retcor.net, 1
 retetenoi.net, 1
@@ -20622,18 +20580,18 @@ rmaqequipamentos.com.br, 1
 rmb.li, 1
 rmdlingerie.com.br, 1
 rmit.me, 1
 rmk.si, 1
 rmmanfredi.com, 1
 rmpsolution.de, 1
 rms.sexy, 1
 rmsides.com, 1
-rmstudio.tw, 1
 rnag.ie, 1
+rnb-storenbau.ch, 1
 rnt.cl, 1
 ro.search.yahoo.com, 0
 roadguard.nl, 1
 roadtopgm.com, 1
 roave.com, 1
 rob006.net, 1
 robandjanine.com, 1
 robbertt.com, 1
@@ -20723,22 +20681,20 @@ rohedaten.de, 1
 rohitagr.com, 1
 rohlik.cz, 1
 rointe.online, 1
 roketix.co.uk, 1
 rokki.ch, 1
 rokort.dk, 1
 rokudenashi.de, 1
 roland.io, 1
-rolandkolodziej.com, 1
 rolandslate.com, 1
 rolandszabo.com, 1
 rolliwelt.de, 1
 rolodato.com, 1
-romaimperator.com, 1
 romainmuller.xyz, 1
 roman-pavlik.cz, 1
 romanpavlodar.kz, 1
 romantic-quotes.co.uk, 1
 romanticschemer.com, 1
 romanticschemermovie.com, 1
 romanticvillas.com.au, 1
 romarin.es, 1
@@ -21107,17 +21063,16 @@ salon.io, 0
 salonestella.it, 1
 salonsantebienetre.ch, 1
 salsa-straubing.de, 1
 saltbythesea.com, 1
 saltercane.com, 0
 saltro.nl, 1
 saltstack.cz, 1
 salud.top, 0
-saludsexualmasculina.org, 1
 saludsis.mil.co, 1
 salutethepig.com, 1
 salverainha.org, 1
 salzamt.tk, 1
 sam-football.fr, 1
 samaritainsmeyrin.ch, 1
 samaritan.tech, 1
 samaritansnet.org, 1
@@ -21393,24 +21348,22 @@ schreinerei-jahreis.de, 1
 schreinerei-wortmann.de, 1
 schrenkinzl.at, 1
 schrikdraad.net, 0
 schritt4fit.de, 1
 schrodingersscat.com, 1
 schrodingersscat.org, 1
 schroeder-immobilien-sundern.de, 1
 schroepfglas-versand.de, 1
-schrolm.de, 1
 schsrch.org, 1
 schsrch.xyz, 1
 schtiehve.duckdns.org, 1
 schubergphilis.com, 1
 schubertgmbh-ingelheim.de, 1
 schuhbeck.tk, 1
-schuhwerkstatt.at, 1
 schul-bar.de, 1
 schulderinsky.de, 1
 schuler.st, 1
 schull.ch, 1
 schum.world, 1
 schumanandmonnet.eu, 1
 schummar.de, 1
 schunako.ch, 1
@@ -21444,17 +21397,16 @@ scitopia.me, 1
 scm-2017.org, 1
 scoolcode.com, 1
 scooterservis.com, 1
 scootfleet.com, 1
 scopea.fr, 1
 score-savers.com, 1
 scorobudem.ru, 1
 scorocode.ru, 1
-scottainslie.me.uk, 1
 scottgruber.me, 1
 scottgthomas.com, 1
 scotthel.me, 1
 scotthelme.co.uk, 1
 scotthelme.com, 1
 scottstorey.co.uk, 1
 scottynordstrom.org, 0
 scoutdb.ch, 1
@@ -21524,24 +21476,24 @@ searchbrothers.uk, 1
 searchdatalogy.com, 1
 seareytraining.com, 1
 seasons.nu, 0
 seatbeltpledge.com, 1
 seatshare.co.uk, 1
 seattle-life.net, 1
 seattlefabrication.com, 1
 seattlemesh.net, 1
-seattleprivacy.org, 1
 seattlewalkinbathtubs.com, 1
 seb-mgl.de, 1
 sebastian-janich.de, 1
 sebastian-kraus.me, 1
 sebastian-lutsch.de, 1
 sebastian-schmidt.me, 1
 sebastian.expert, 1
+sebastianblade.com, 1
 sebastianboegl.de, 1
 sebastiensenechal.com, 1
 sebi.org, 1
 sec-mails.de, 1
 sec-wiki.com, 1
 sec.ec, 1
 sec.gd, 1
 sec3ure.co.uk, 1
@@ -21729,16 +21681,17 @@ seoquake.com, 1
 seoscribe.net, 1
 seosof.com, 1
 seoul.dating, 1
 seouniversity.org, 1
 sep23.ru, 1
 sephr.com, 1
 sepie.gob.es, 1
 seppelec.com, 1
+seproco.com, 1
 septakkordeon.de, 1
 septillion.cn, 1
 septs.pw, 1
 sequencing.com, 1
 sequiturs.com, 1
 sera.jp, 1
 serafin.tech, 1
 seraph.tokyo, 1
@@ -21939,17 +21892,16 @@ shh-listen.com, 1
 shh.sh, 1
 shiatsu-institut.ch, 1
 shiawasedo.co.jp, 1
 shibainu.com.br, 1
 shichibukai.net, 1
 shieldofachilles.in, 1
 shift-to.co.jp, 1
 shiftdevices.com, 1
-shiftj.is, 1
 shiftleft.org, 1
 shiftnrg.org, 1
 shijing.me, 1
 shikimori.one, 1
 shikimori.org, 1
 shikinobi.com, 1
 shimi.net, 1
 shimo.im, 1
@@ -22007,16 +21959,17 @@ shoppeno5.com, 1
 shopping24.de, 1
 shoppingreview.org, 1
 shoppr.dk, 1
 shoprsc.com, 1
 shopsouthafrican.com, 1
 shoptec.sk, 1
 shorebreaksecurity.com, 1
 shortdiary.me, 1
+shorten.ninja, 1
 shortpath.com, 1
 shortr.li, 1
 shoshin-aikido.de, 1
 shota.vip, 1
 shotbow.net, 1
 shotonwhat.com, 1
 shotpixonline.com.br, 1
 show-saratov.ru, 1
@@ -22217,16 +22170,17 @@ simplyenak.com, 0
 simplyfixit.co.uk, 1
 simplyhelen.de, 1
 simplymozzo.se, 1
 simplystudio.com, 1
 simpte.com, 1
 simpul.nl, 1
 sims4hub.ga, 1
 simsnieuws.nl, 1
+simtin-net.de, 1
 simukti.net, 1
 simumiehet.com, 1
 simus.fr, 1
 sin-nombre-alleria.de, 1
 sinaryuda.web.id, 1
 sinatrafamily.com, 1
 sinefili.com, 1
 sinergy.ch, 1
@@ -22492,17 +22446,16 @@ smileandpay.com, 1
 smileawei.com, 1
 smiledirectsales.com, 1
 smime.io, 1
 smipty.cn, 1
 smipty.com, 1
 smit.com.ua, 1
 smith.is, 0
 smithandcanova.co.uk, 1
-smittix.co.uk, 1
 smkw.com, 0
 sml.lc, 1
 smm.im, 1
 smol.cat, 1
 smoo.st, 1
 smoothgesturesplus.com, 1
 smoothics.at, 1
 smoothics.com, 1
@@ -22669,16 +22622,17 @@ soluphant.de, 1
 solus-project.com, 1
 solutionhoisthire.com.au, 1
 solve-it.se, 1
 solved.tips, 1
 solvemethod.com, 1
 solvops.com, 1
 solymar.co, 1
 somaini.li, 1
+somali-derp.com, 1
 somaliagenda.com, 1
 somanao.com, 1
 somcase.com.br, 1
 some.rip, 1
 somebodycares.org, 1
 somecrazy.com, 1
 somethingsimilar.com, 1
 somuchbetterwithage.com, 1
@@ -22769,16 +22723,17 @@ southmorangtownhouses.com.au, 1
 southside-crew.com, 1
 southside-tuning-day.de, 1
 southwaymotors.com, 1
 southwestrda.org.uk, 1
 souvik.me, 1
 soved.eu, 1
 sowingseasons.com, 1
 sowncloud.de, 1
+soz6.com, 1
 sozialy.com, 1
 sozon.ca, 1
 sp.com.pl, 1
 sp.rw, 1
 space-it.de, 1
 spacebaseapp.com, 1
 spacecafe.org, 1
 spacedirectory.org, 1
@@ -22865,17 +22820,16 @@ spisbilligt.dk, 1
 spitefultowel.com, 1
 spitfireuav.com, 1
 splikity.com, 1
 split.is, 1
 splitdna.com, 1
 splitreflection.com, 1
 spodelime.com, 1
 spoketwist.com, 1
-spolwind.de, 1
 spom.net, 1
 sponc.de, 1
 spongepowered.org, 1
 sponsor.network, 1
 sponsorowani.pl, 1
 spontex.org, 1
 spoofhaus.com, 1
 spookbook.net, 1
@@ -23306,20 +23260,18 @@ strutta.me, 1
 struxureon.com, 1
 strydom.me.uk, 1
 stt.wiki, 1
 stuartbell.co.uk, 1
 stuco.co, 1
 studenckiemetody.pl, 1
 student-eshop.cz, 1
 student-eshop.sk, 1
-student.andover.edu, 1
 studentforums.biz, 1
 studentite.bg, 0
-studentloans.gov, 1
 studentrightsadvocate.org, 1
 studentshare.net, 1
 studenttenant.com, 1
 studer.su, 1
 studienportal.eu, 1
 studiodentisticosanmarco.it, 1
 studiodewit.nl, 1
 studiodoprazer.com.br, 1
@@ -24336,16 +24288,17 @@ thesharedbrain.ch, 1
 thesharedbrain.com, 1
 thesharepointfarm.com, 1
 theshine.pl, 1
 theshopally.com, 1
 thesignalco.com.au, 1
 thesishelp.net, 1
 thesled.net, 1
 thesocialmediacentral.com, 1
+thesteins.org, 1
 thestory.ie, 1
 thestoryshack.com, 1
 thestrategyagency.com.au, 1
 thesuppercircle.com, 1
 thetechnical.me, 1
 thetenscrolls.com, 1
 thethirdroad.com, 1
 thetomharling.com, 1
@@ -24415,16 +24368,17 @@ thomastimepieces.com.au, 1
 thomasvochten.com, 1
 thomasvt.xyz, 1
 thomaswoo.com, 1
 thompsonfamily.cloud, 1
 thomsonscleaning.co.uk, 1
 thomspooren.nl, 1
 thomwiggers.nl, 1
 thor.edu, 1
+thorbis.com, 1
 thorbiswebsitedesign.com, 1
 thorsten-schaefer.com, 1
 thorstenschaefer.name, 1
 thot.space, 1
 thoughtsynth.com, 1
 thoughtsynth.net, 1
 thoughtsynth.org, 1
 thouni.de, 1
@@ -24577,17 +24531,16 @@ titusetcompagnies.net, 1
 tivido.nl, 1
 tjandpals.com, 1
 tjeckien.guide, 1
 tjenestetorvet.dk, 1
 tjl.rocks, 1
 tjp.ch, 1
 tjs.me, 1
 tkacz.pro, 1
-tkarstens.de, 0
 tkat.ch, 1
 tkgpm.com, 1
 tkjg.fi, 1
 tkn.tokyo, 1
 tkts.cl, 1
 tkusano.jp, 1
 tlach.cz, 1
 tlehseasyads.com, 1
@@ -25016,17 +24969,16 @@ travelogue.jp, 1
 travelpricecheck.com, 1
 travi.org, 1
 travisf.net, 1
 travisforte.io, 1
 travisfranck.com, 1
 travler.net, 1
 travotion.com, 1
 trbanka.com, 1
-treasuredinheritanceministry.com, 1
 treasurydirect.gov, 1
 treasuryhunt.gov, 1
 treasuryscams.gov, 1
 treebaglia.xyz, 1
 treehousebydesign.com, 1
 trees.chat, 1
 treeschat.com, 1
 trefcon.cz, 1
@@ -25141,17 +25093,16 @@ ts-publishers.com, 1
 tsa-sucks.com, 1
 tsaro.io, 1
 tschuermans.be, 1
 tsdom.net, 1
 tsedryk.ca, 1
 tsgbit.net, 1
 tsicons.com, 1
 tsigaradiko.com, 1
-tsironis-olivenoel.de, 1
 tsng-stg.tk, 1
 tsng.co.jp, 1
 tstrubberstamp.com, 1
 tsugi.fr, 1
 tsukhani.com, 1
 tsukuba.style, 1
 tsumegumi.net, 1
 tsumi.it, 1
@@ -25290,18 +25241,20 @@ txcp02.com, 1
 txdivorce.org, 1
 txi.su, 1
 txm.pl, 1
 tyche.io, 1
 tyil.nl, 1
 tyil.work, 1
 tykoon.com, 1
 tyl.io, 1
+tyler.rs, 1
 tylerdavies.net, 1
 tylerfreedman.com, 1
+tyleromeara.com, 1
 tylerschmidtke.com, 1
 type1joe.com, 1
 type1joe.net, 1
 type1joe.org, 1
 typeblog.net, 1
 typecodes.com, 1
 typehub.net, 1
 typeonejoe.com, 1
@@ -25350,17 +25303,16 @@ ubuntuhot.com, 1
 ucac.nz, 1
 ucangiller.com, 1
 ucch.be, 1
 ucfirst.nl, 1
 uchargeapp.com, 1
 uclanmasterplan.co.uk, 1
 ucrdatatool.gov, 1
 uctarna.online, 1
-udbhav.me, 1
 udo-luetkemeier.de, 1
 udomain.net, 1
 udp.sh, 0
 udruga-point.hr, 1
 ueba1085.jp, 1
 ueberwachungspaket.at, 1
 uedaviolin.com, 1
 uefeng.com, 1
@@ -25430,16 +25382,17 @@ unblocked.vip, 1
 unblockedbay.info, 1
 unblockweb.co, 1
 uncensoreddns.dk, 1
 uncensoreddns.org, 1
 undercovercondoms.co.uk, 1
 undercovercondoms.com, 1
 underlined.fr, 1
 undernet.uy, 0
+underskatten.tk, 1
 undo.co.il, 1
 undone.me, 1
 unearaigneeauplafond.fr, 0
 unefuite.ch, 1
 unerosesurlalune.fr, 1
 unexpected.nu, 1
 unfettered.net, 0
 unfuddle.cn, 1
@@ -25579,17 +25532,16 @@ urban-culture.fr, 1
 urban.melbourne, 1
 urbanesecurity.com, 1
 urbanfi.sh, 1
 urbanguerillas.de, 1
 urbanietz-immobilien.de, 1
 urbanmelbourne.info, 1
 urbannewsservice.com, 1
 urbansparrow.in, 1
-urbanstylestaging.com, 1
 urbanwildlifealliance.org, 1
 urbexdk.nl, 1
 urcentral.com, 1
 urcentral.org, 1
 ureka.org, 1
 urgences-valais.ch, 1
 uripura.de, 1
 urist1011.ru, 1
@@ -26083,16 +26035,17 @@ viviennevandenbos.nl, 1
 vivirenelmundo.com, 1
 vivo.sx, 1
 vivremoinscher.fr, 1
 vizzboard.com, 1
 vk4wip.org.au, 1
 vkirichenko.name, 1
 vkox.com, 1
 vksportphoto.com, 1
+vladimiroff.org, 1
 vladislavstoyanov.com, 1
 vldkn.net, 1
 vleij.com, 1
 vleij.family, 1
 vleij.se, 1
 vloeck.de, 1
 vlogge.com, 1
 vlsk.eu, 1
@@ -26120,17 +26073,16 @@ voice-of-design.com, 1
 voicu.ch, 1
 void-it.nl, 1
 void-zero.com, 1
 voidi.ca, 1
 voidpay.com, 1
 voidpay.net, 1
 voidpay.org, 1
 voidptr.eu, 1
-voidserv.net, 1
 voidshift.com, 1
 voipsun.com, 1
 vokativy.cz, 0
 vokeapp.com, 1
 volcain.io, 1
 volcanconcretos.com, 1
 volga.us, 1
 volgavibes.ru, 1
@@ -26150,20 +26102,19 @@ vonterra.us, 1
 voodoochile.at, 1
 voorjou.com, 1
 vop.li, 1
 vorderklier.de, 1
 vorkbaard.nl, 1
 vorlicek.de, 1
 vorlif.org, 1
 vorm2.com, 1
-vorodevops.com, 1
 vos-fleurs.ch, 1
 vos-fleurs.com, 1
-voshod.org, 0
+voshod.org, 1
 vosky.fr, 1
 vostronet.com, 1
 voter-info.uk, 1
 voterstartingpoint.uk, 1
 votocek.cz, 1
 votockova.cz, 1
 votoot.com, 1
 votre-site-internet.ch, 1
@@ -26306,16 +26257,18 @@ warekon.com, 1
 warekon.dk, 1
 warezaddict.com, 1
 wargameexclusive.com, 1
 warhaggis.com, 1
 warlions.info, 0
 warmestwishes.ca, 1
 warmlyyours.com, 0
 warmservers.com, 1
+warp-radio.com, 1
+warp-radio.tv, 1
 warr.ath.cx, 1
 warschild.org, 1
 wartorngalaxy.com, 1
 warumsuchen.at, 1
 wasatchconstables.com, 1
 waschpark-hantschel.de, 1
 wasema.com, 1
 washingtonregisteredagent.io, 1
@@ -26542,17 +26495,16 @@ welcomehelp.de, 1
 weldwp.com, 1
 wellacapability.com, 1
 wellbeing360.com.au, 1
 welldrake.com, 1
 wellensteyn.ru, 1
 weller.pm, 1
 wellies.com.au, 1
 wellness-gutschein.de, 1
-wellness.so, 1
 wellopp.com, 1
 wellproducedwines.com, 1
 wellsolveit.com, 1
 wellspringcamps.com, 1
 welovejobs.com, 1
 welovemail.com, 1
 welsh.com.br, 1
 welteneroberer.de, 1
@@ -26827,17 +26779,16 @@ winter.engineering, 0
 winterbergwebcams.com, 1
 wintercircle.co, 1
 winterfeldt.de, 1
 winterhillbank.com, 1
 wintermeyer-consulting.de, 1
 wintermeyer.de, 1
 winterschoen.nl, 1
 wintodoor.com, 1
-wipc.net, 1
 wipply.com, 0
 wir-bewegen.sh, 1
 wirbatz.org, 1
 wircon-int.net, 1
 wiredcut.com, 1
 wireframesoftware.com, 1
 wireheading.com, 1
 wireless-emergency-stop.com, 1
@@ -26968,17 +26919,16 @@ worldcubeassociation.org, 1
 worldessays.com, 1
 worldeventscalendars.com, 1
 worldfree4.org, 1
 worldofbelia.de, 1
 worldofterra.net, 1
 worldofvnc.net, 1
 worldpovertysolutions.org, 1
 worldsgreatestazuredemo.com, 1
-worldsoccerclips.com, 1
 worldstone777.com, 1
 wormdisk.net, 1
 wormholevpn.net, 1
 worst.horse, 1
 wort-suchen.de, 1
 woshiluo.site, 1
 woudenberg.nl, 1
 woufbox.com, 1
@@ -27790,32 +27740,28 @@ zehdenick-bleibt-bunt.de, 1
 zeilenmethans.nl, 1
 zeilles.nu, 1
 zeitoununiversity.org, 1
 zeitpunkt-kulturmagazin.de, 1
 zeitzer-turngala.de, 1
 zekinteractive.com, 1
 zelezny.uk, 0
 zelfrijdendeautos.com, 1
-zellari.ru, 1
 zeloz.xyz, 1
 zemlova.cz, 1
 zen-diez.de, 1
 zen-ume.com, 1
 zenfusion.fr, 1
 zenithmedia.ca, 1
 zenk-security.com, 1
 zenlogic.com, 1
 zenmate.com.tr, 1
 zeno-system.com, 1
 zenofa.co.id, 1
 zentask.io, 1
-zentience.dk, 1
-zentience.net, 1
-zentience.org, 1
 zenvideocloud.com, 1
 zenycosta.com, 1
 zepect.com, 1
 zeplin.io, 1
 zer0-day.pw, 1
 zer0.de, 1
 zero-sum.xyz, 1
 zero-x-baadf00d.com, 1
@@ -27853,16 +27799,17 @@ zhangsir.net, 1
 zhangyuhao.com, 1
 zhangzifan.com, 1
 zhaochen.xyz, 1
 zhaofeng.li, 1
 zhaoxixiangban.cc, 1
 zhen-chen.com, 1
 zhengjie.com, 1
 zhikin.com, 1
+zhiku8.com, 1
 zhovner.com, 1
 zhuji.com, 1
 zhujicaihong.com, 1
 ziegler-family.com, 1
 ziegler-heizung-frankfurt.de, 1
 ziemlich-zackig.de, 1
 ziemlichzackig.de, 1
 zifb.in, 1
@@ -27908,17 +27855,16 @@ zohar.shop, 1
 zohar.wang, 0
 zoigl.club, 1
 zojadravai.com, 1
 zoki.art, 1
 zokster.net, 1
 zolokar.xyz, 1
 zombiesecured.com, 1
 zomerschoen.nl, 1
-zone-produkte.de, 1
 zone39.com, 1
 zonecb.com, 1
 zonemaster.fr, 1
 zonemaster.net, 1
 zonesec.org, 1
 zonglovani.info, 1
 zooish.net, 1
 zoola.io, 1
--- a/security/manager/ssl/tests/gtest/DataStorageTest.cpp
+++ b/security/manager/ssl/tests/gtest/DataStorageTest.cpp
@@ -125,32 +125,32 @@ TEST_F(psm_DataStorageTest, InputValidat
   nsCString longKey("a");
   for (int i = 0; i < 8; i++) {
     longKey.Append(longKey);
   }
   // A key of length 256 will work
   EXPECT_EQ(NS_OK, storage->Put(longKey, testValue, DataStorage_Persistent));
   result = storage->Get(longKey, DataStorage_Persistent);
   EXPECT_STREQ("value", result.get());
-  longKey.Append("a");
+  longKey.AppendLiteral("a");
   // A key longer than that will not work
   EXPECT_EQ(NS_ERROR_INVALID_ARG,
             storage->Put(longKey, testValue, DataStorage_Persistent));
   result = storage->Get(longKey, DataStorage_Persistent);
   EXPECT_TRUE(result.IsEmpty());
 
   nsCString longValue("a");
   for (int i = 0; i < 10; i++) {
     longValue.Append(longValue);
   }
   // A value of length 1024 will work
   EXPECT_EQ(NS_OK, storage->Put(testKey, longValue, DataStorage_Persistent));
   result = storage->Get(testKey, DataStorage_Persistent);
   EXPECT_STREQ(longValue.get(), result.get());
-  longValue.Append("a");
+  longValue.AppendLiteral("a");
   // A value longer than that will not work
   storage->Remove(testKey, DataStorage_Persistent);
   EXPECT_EQ(NS_ERROR_INVALID_ARG,
             storage->Put(testKey, longValue, DataStorage_Persistent));
   result = storage->Get(testKey, DataStorage_Persistent);
   EXPECT_TRUE(result.IsEmpty());
 }
 
--- a/storage/mozStorageConnection.cpp
+++ b/storage/mozStorageConnection.cpp
@@ -1480,18 +1480,18 @@ Connection::initializeClone(Connection* 
     nsCOMPtr<mozIStorageStatement> stmt;
     rv = CreateStatement(NS_LITERAL_CSTRING("PRAGMA database_list"),
                          getter_AddRefs(stmt));
     MOZ_ASSERT(NS_SUCCEEDED(rv));
     bool hasResult = false;
     while (stmt && NS_SUCCEEDED(stmt->ExecuteStep(&hasResult)) && hasResult) {
       nsAutoCString name;
       rv = stmt->GetUTF8String(1, name);
-      if (NS_SUCCEEDED(rv) && !name.Equals(NS_LITERAL_CSTRING("main")) &&
-                              !name.Equals(NS_LITERAL_CSTRING("temp"))) {
+      if (NS_SUCCEEDED(rv) && !name.EqualsLiteral("main") &&
+                              !name.EqualsLiteral("temp")) {
         nsCString path;
         rv = stmt->GetUTF8String(2, path);
         if (NS_SUCCEEDED(rv) && !path.IsEmpty()) {
           nsCOMPtr<mozIStorageStatement> attachStmt;
           rv = aClone->CreateStatement(
             NS_LITERAL_CSTRING("ATTACH DATABASE :path AS ") + name,
             getter_AddRefs(attachStmt));
           MOZ_ASSERT(NS_SUCCEEDED(rv));
--- a/toolkit/components/downloads/ApplicationReputation.cpp
+++ b/toolkit/components/downloads/ApplicationReputation.cpp
@@ -1068,17 +1068,17 @@ PendingLookup::GetStrippedSpec(nsIURI* a
          PromiseFlatCString(escaped).get(), this));
     return rv;
   }
 
   nsCString temp;
   rv = url->GetHostPort(temp);
   NS_ENSURE_SUCCESS(rv, rv);
 
-  escaped.Append("://");
+  escaped.AppendLiteral("://");
   escaped.Append(temp);
 
   rv = url->GetFilePath(temp);
   NS_ENSURE_SUCCESS(rv, rv);
 
   // nsIUrl.filePath starts with '/'
   escaped.Append(temp);
 
--- a/toolkit/components/places/SQLFunctions.cpp
+++ b/toolkit/components/places/SQLFunctions.cpp
@@ -1028,21 +1028,21 @@ namespace places {
         // The second half of the url is more likely to be unique, so we add it.
         uint32_t srcHash = HashString(str);
         uint64_t hash = (prefixHash << 32) + srcHash;
         result->SetAsInt64(hash);
       } else {
         uint32_t hash = HashString(str);
         result->SetAsInt64(hash);
       }
-    } else if (mode.Equals(NS_LITERAL_CSTRING("prefix_lo"))) {
+    } else if (mode.EqualsLiteral("prefix_lo")) {
       // Keep only 16 bits.
       uint64_t hash = static_cast<uint64_t>(HashString(str) & 0x0000FFFF) << 32;
       result->SetAsInt64(hash);
-    } else if (mode.Equals(NS_LITERAL_CSTRING("prefix_hi"))) {
+    } else if (mode.EqualsLiteral("prefix_hi")) {
       // Keep only 16 bits.
       uint64_t hash = static_cast<uint64_t>(HashString(str) & 0x0000FFFF) << 32;
       // Make this a prefix upper bound by filling the lowest 32 bits.
       hash +=  0xFFFFFFFF;
       result->SetAsInt64(hash);
     } else {
       return NS_ERROR_FAILURE;
     }
--- a/toolkit/components/places/nsFaviconService.cpp
+++ b/toolkit/components/places/nsFaviconService.cpp
@@ -397,17 +397,17 @@ nsFaviconService::SetAndFetchFaviconForP
     }
   }
 
   // If the page url points to an image, the icon's url will be the same.
   // TODO (Bug 403651): store a resample of the image.  For now avoid that
   // for database size and UX concerns.
   // Don't store favicons for error pages too.
   if (icon.spec.Equals(page.spec) ||
-      icon.spec.Equals(FAVICON_ERRORPAGE_URL)) {
+      icon.spec.EqualsLiteral(FAVICON_ERRORPAGE_URL)) {
     return NS_OK;
   }
 
   RefPtr<AsyncFetchAndSetIconForPage> event =
     new AsyncFetchAndSetIconForPage(icon, page, loadPrivate,
                                     aCallback, aLoadingPrincipal,
                                     aRequestContextID);
 
--- a/toolkit/components/places/nsNavHistory.cpp
+++ b/toolkit/components/places/nsNavHistory.cpp
@@ -615,19 +615,19 @@ nsNavHistory::DispatchFrecencyChangedNot
 }
 
 Atomic<int64_t> nsNavHistory::sLastInsertedPlaceId(0);
 Atomic<int64_t> nsNavHistory::sLastInsertedVisitId(0);
 
 void // static
 nsNavHistory::StoreLastInsertedId(const nsACString& aTable,
                                   const int64_t aLastInsertedId) {
-  if (aTable.Equals(NS_LITERAL_CSTRING("moz_places"))) {
+  if (aTable.EqualsLiteral("moz_places")) {
     nsNavHistory::sLastInsertedPlaceId = aLastInsertedId;
-  } else if (aTable.Equals(NS_LITERAL_CSTRING("moz_historyvisits"))) {
+  } else if (aTable.EqualsLiteral("moz_historyvisits")) {
     nsNavHistory::sLastInsertedVisitId = aLastInsertedId;
   } else {
     MOZ_ASSERT(false, "Trying to store the insert id for an unknown table?");
   }
 }
 
 int32_t
 nsNavHistory::GetDaysOfHistory() {
@@ -1756,24 +1756,22 @@ PlacesSQLQueryBuilder::SelectAsDay()
         else {
           nsNavHistory::GetMonthName(tm, dateName);
         }
 
         // From start of MonthIndex + 1 months ago
         sqlFragmentContainerBeginTime = NS_LITERAL_CSTRING(
           "(strftime('%s','now','localtime','start of month','-");
         sqlFragmentContainerBeginTime.AppendInt(MonthIndex);
-        sqlFragmentContainerBeginTime.Append(NS_LITERAL_CSTRING(
-            " months','utc')*1000000)"));
+        sqlFragmentContainerBeginTime.AppendLiteral(" months','utc')*1000000)");
         // To start of MonthIndex months ago
         sqlFragmentContainerEndTime = NS_LITERAL_CSTRING(
           "(strftime('%s','now','localtime','start of month','-");
         sqlFragmentContainerEndTime.AppendInt(MonthIndex - 1);
-        sqlFragmentContainerEndTime.Append(NS_LITERAL_CSTRING(
-            " months','utc')*1000000)"));
+        sqlFragmentContainerEndTime.AppendLiteral(" months','utc')*1000000)");
         // Search for the same timeframe.
         sqlFragmentSearchBeginTime = sqlFragmentContainerBeginTime;
         sqlFragmentSearchEndTime = sqlFragmentContainerEndTime;
         break;
     }
 
     nsPrintfCString dateParam("dayTitle%d", i);
     mAddParams.Put(dateParam, dateName);
--- a/toolkit/components/resistfingerprinting/nsRFPService.cpp
+++ b/toolkit/components/resistfingerprinting/nsRFPService.cpp
@@ -200,17 +200,17 @@ nsRFPService::GetSpoofedUserAgent(nsACSt
 
   nsAutoCString updateChannel;
   rv = runtime->GetDefaultUpdateChannel(updateChannel);
   NS_ENSURE_SUCCESS(rv, rv);
 
   // If we are running in Firefox ESR, determine whether the formula of ESR
   // version has changed.  Once changed, we must update the formula in this
   // function.
-  if (updateChannel.Equals("esr")) {
+  if (updateChannel.EqualsLiteral("esr")) {
     MOZ_ASSERT(((firefoxVersion % 7) == 3),
       "Please udpate ESR version formula in nsRFPService.cpp");
   }
 
   uint32_t spoofedVersion = firefoxVersion - ((firefoxVersion - 3) % 7);
   userAgent.Assign(nsPrintfCString(
     "Mozilla/5.0 (%s; rv:%d.0) Gecko/%s Firefox/%d.0",
     SPOOFED_OSCPU, spoofedVersion, LEGACY_BUILD_ID, spoofedVersion));
--- a/toolkit/components/telemetry/TelemetryScalar.cpp
+++ b/toolkit/components/telemetry/TelemetryScalar.cpp
@@ -800,56 +800,56 @@ namespace {
 void
 internal_LogScalarError(const nsACString& aScalarName, ScalarResult aSr)
 {
   nsAutoString errorMessage;
   AppendUTF8toUTF16(aScalarName, errorMessage);
 
   switch (aSr) {
     case ScalarResult::NotInitialized:
-      errorMessage.Append(NS_LITERAL_STRING(" - Telemetry was not yet initialized."));
+      errorMessage.AppendLiteral(u" - Telemetry was not yet initialized.");
       break;
     case ScalarResult::CannotUnpackVariant:
-      errorMessage.Append(NS_LITERAL_STRING(" - Cannot convert the provided JS value to nsIVariant."));
+      errorMessage.AppendLiteral(u" - Cannot convert the provided JS value to nsIVariant.");
       break;
     case ScalarResult::CannotRecordInProcess:
-      errorMessage.Append(NS_LITERAL_STRING(" - Cannot record the scalar in the current process."));
+      errorMessage.AppendLiteral(u" - Cannot record the scalar in the current process.");
       break;
     case ScalarResult::KeyedTypeMismatch:
-      errorMessage.Append(NS_LITERAL_STRING(" - Attempting to manage a keyed scalar as a scalar (or vice-versa)."));
+      errorMessage.AppendLiteral(u" - Attempting to manage a keyed scalar as a scalar (or vice-versa).");
       break;
     case ScalarResult::UnknownScalar:
-      errorMessage.Append(NS_LITERAL_STRING(" - Unknown scalar."));
+      errorMessage.AppendLiteral(u" - Unknown scalar.");
       break;
     case ScalarResult::OperationNotSupported:
-      errorMessage.Append(NS_LITERAL_STRING(" - The requested operation is not supported on this scalar."));
+      errorMessage.AppendLiteral(u" - The requested operation is not supported on this scalar.");
       break;
     case ScalarResult::InvalidType:
-      errorMessage.Append(NS_LITERAL_STRING(" - Attempted to set the scalar to an invalid data type."));
+      errorMessage.AppendLiteral(u" - Attempted to set the scalar to an invalid data type.");
       break;
     case ScalarResult::InvalidValue:
-      errorMessage.Append(NS_LITERAL_STRING(" - Attempted to set the scalar to an incompatible value."));
+      errorMessage.AppendLiteral(u" - Attempted to set the scalar to an incompatible value.");
       break;
     case ScalarResult::StringTooLong:
-      errorMessage.Append(NS_LITERAL_STRING(" - Truncating scalar value to 50 characters."));
+      errorMessage.AppendLiteral(u" - Truncating scalar value to 50 characters.");
       break;
     case ScalarResult::KeyIsEmpty:
-      errorMessage.Append(NS_LITERAL_STRING(" - The key must not be empty."));
+      errorMessage.AppendLiteral(u" - The key must not be empty.");
       break;
     case ScalarResult::KeyTooLong:
-      errorMessage.Append(NS_LITERAL_STRING(" - The key length must be limited to 70 characters."));
+      errorMessage.AppendLiteral(u" - The key length must be limited to 70 characters.");
       break;
     case ScalarResult::TooManyKeys:
-      errorMessage.Append(NS_LITERAL_STRING(" - Keyed scalars cannot have more than 100 keys."));
+      errorMessage.AppendLiteral(u" - Keyed scalars cannot have more than 100 keys.");
       break;
     case ScalarResult::UnsignedNegativeValue:
-      errorMessage.Append(NS_LITERAL_STRING(" - Trying to set an unsigned scalar to a negative number."));
+      errorMessage.AppendLiteral(u" - Trying to set an unsigned scalar to a negative number.");
       break;
     case ScalarResult::UnsignedTruncatedValue:
-      errorMessage.Append(NS_LITERAL_STRING(" - Truncating float/double number."));
+      errorMessage.AppendLiteral(u" - Truncating float/double number.");
       break;
     default:
       // Nothing.
       return;
   }
 
   LogToBrowserConsole(nsIScriptError::warningFlag, errorMessage);
 }
--- a/toolkit/components/terminator/nsTerminator.cpp
+++ b/toolkit/components/terminator/nsTerminator.cpp
@@ -510,17 +510,17 @@ nsTerminator::UpdateTelemetry()
   telemetryData->AppendLiteral("{");
   size_t fields = 0;
   for (auto& shutdownStep : sShutdownSteps) {
     if (shutdownStep.mTicks < 0) {
       // Ignore this field.
       continue;
     }
     if (fields++ > 0) {
-      telemetryData->Append(", ");
+      telemetryData->AppendLiteral(", ");
     }
     telemetryData->AppendLiteral(R"(")");
     telemetryData->Append(shutdownStep.mTopic);
     telemetryData->AppendLiteral(R"(": )");
     telemetryData->AppendInt(shutdownStep.mTicks);
   }
   telemetryData->AppendLiteral("}");
 
--- a/toolkit/components/url-classifier/LookupCache.cpp
+++ b/toolkit/components/url-classifier/LookupCache.cpp
@@ -418,17 +418,17 @@ LookupCache::GetHostKeys(const nsACStrin
   const nsACString& host = Substring(begin, iter);
 
   if (IsCanonicalizedIP(host)) {
     nsCString *key = aHostKeys->AppendElement();
     if (!key)
       return NS_ERROR_OUT_OF_MEMORY;
 
     key->Assign(host);
-    key->Append("/");
+    key->AppendLiteral("/");
     return NS_OK;
   }
 
   nsTArray<nsCString> hostComponents;
   ParseString(PromiseFlatCString(host), '.', hostComponents);
 
   if (hostComponents.Length() < 2) {
     // no host or toplevel host, this won't match anything in the db
@@ -437,27 +437,27 @@ LookupCache::GetHostKeys(const nsACStrin
 
   // First check with two domain components
   int32_t last = int32_t(hostComponents.Length()) - 1;
   nsCString *lookupHost = aHostKeys->AppendElement();
   if (!lookupHost)
     return NS_ERROR_OUT_OF_MEMORY;
 
   lookupHost->Assign(hostComponents[last - 1]);
-  lookupHost->Append(".");
+  lookupHost->AppendLiteral(".");
   lookupHost->Append(hostComponents[last]);
-  lookupHost->Append("/");
+  lookupHost->AppendLiteral("/");
 
   // Now check with three domain components
   if (hostComponents.Length() > 2) {
     nsCString *lookupHost2 = aHostKeys->AppendElement();
     if (!lookupHost2)
       return NS_ERROR_OUT_OF_MEMORY;
     lookupHost2->Assign(hostComponents[last - 2]);
-    lookupHost2->Append(".");
+    lookupHost2->AppendLiteral(".");
     lookupHost2->Append(*lookupHost);
   }
 
   return NS_OK;
 }
 
 nsresult
 LookupCache::LoadPrefixSet()
--- a/toolkit/components/url-classifier/nsUrlClassifierDBService.cpp
+++ b/toolkit/components/url-classifier/nsUrlClassifierDBService.cpp
@@ -655,17 +655,17 @@ nsUrlClassifierDBServiceWorker::NotifyUp
 
   nsresult updateStatus = mUpdateStatus;
   if (NS_FAILED(mUpdateStatus)) {
    updateStatus = NS_ERROR_GET_MODULE(mUpdateStatus) == NS_ERROR_MODULE_URL_CLASSIFIER ?
      mUpdateStatus : NS_ERROR_UC_UPDATE_UNKNOWN;
   }
 
   // Do not record telemetry for testing tables.
-  if (!provider.Equals(TESTING_TABLE_PROVIDER_NAME)) {
+  if (!provider.EqualsLiteral(TESTING_TABLE_PROVIDER_NAME)) {
     Telemetry::Accumulate(Telemetry::URLCLASSIFIER_UPDATE_ERROR, provider,
                           NS_ERROR_GET_CODE(updateStatus));
   }
 
   if (!mUpdateObserver) {
     // In the normal shutdown process, CancelUpdate() would NOT be
     // called prior to NotifyUpdateObserver(). However, CancelUpdate()
     // is a public API which can be called in the test case at any point.
--- a/toolkit/components/url-classifier/nsUrlClassifierUtils.cpp
+++ b/toolkit/components/url-classifier/nsUrlClassifierUtils.cpp
@@ -320,17 +320,17 @@ nsUrlClassifierUtils::GetTelemetryProvid
   // An empty provider is treated as "other"
   if (!NS_LITERAL_CSTRING("mozilla").Equals(aProvider) &&
       !NS_LITERAL_CSTRING("google").Equals(aProvider) &&
       !NS_LITERAL_CSTRING("google4").Equals(aProvider) &&
       !NS_LITERAL_CSTRING("baidu").Equals(aProvider) &&
       !NS_LITERAL_CSTRING("mozcn").Equals(aProvider) &&
       !NS_LITERAL_CSTRING("yandex").Equals(aProvider) &&
       !NS_LITERAL_CSTRING(TESTING_TABLE_PROVIDER_NAME).Equals(aProvider)) {
-    aProvider.Assign(NS_LITERAL_CSTRING("other"));
+    aProvider.AssignLiteral("other");
   }
 
   return NS_OK;
 }
 
 NS_IMETHODIMP
 nsUrlClassifierUtils::GetProtocolVersion(const nsACString& aProvider,
                                          nsACString& aVersion)
--- a/toolkit/crashreporter/nsExceptionHandler.cpp
+++ b/toolkit/crashreporter/nsExceptionHandler.cpp
@@ -1681,17 +1681,17 @@ nsresult SetExceptionHandler(nsIFile* aX
 #endif // XP_WIN32
 #else
     // On Android, we launch using the application package name instead of a
     // filename, so use the dynamically set MOZ_ANDROID_PACKAGE_NAME, or fall
     // back to the static ANDROID_PACKAGE_NAME.
     const char* androidPackageName = PR_GetEnv("MOZ_ANDROID_PACKAGE_NAME");
     if (androidPackageName != nullptr) {
       nsCString package(androidPackageName);
-      package.Append("/org.mozilla.gecko.CrashReporter");
+      package.AppendLiteral("/org.mozilla.gecko.CrashReporter");
       crashReporterPath = ToNewCString(package);
     } else {
       nsCString package(ANDROID_PACKAGE_NAME "/org.mozilla.gecko.CrashReporter");
       crashReporterPath = ToNewCString(package);
     }
 #endif // !defined(MOZ_WIDGET_ANDROID)
   }
 
--- a/toolkit/mozapps/extensions/AddonManagerWebAPI.cpp
+++ b/toolkit/mozapps/extensions/AddonManagerWebAPI.cpp
@@ -37,19 +37,19 @@ IsValidHost(const nsACString& host) {
       bool isLocked;
       prefs->PrefIsLocked("xpinstall.enabled", &isLocked);
       if (isLocked) {
         return false;
       }
     }
   }
 
-  if (host.Equals("addons.mozilla.org") ||
-      host.Equals("discovery.addons.mozilla.org") ||
-      host.Equals("testpilot.firefox.com")) {
+  if (host.EqualsLiteral("addons.mozilla.org") ||
+      host.EqualsLiteral("discovery.addons.mozilla.org") ||
+      host.EqualsLiteral("testpilot.firefox.com")) {
     return true;
   }
 
   // When testing allow access to the developer sites.
   if (Preferences::GetBool("extensions.webapi.testing", false)) {
     if (host.LowerCaseEqualsLiteral("addons.allizom.org") ||
         host.LowerCaseEqualsLiteral("discovery.addons.allizom.org") ||
         host.LowerCaseEqualsLiteral("addons-dev.allizom.org") ||
--- a/toolkit/system/osxproxy/ProxyUtils.mm
+++ b/toolkit/system/osxproxy/ProxyUtils.mm
@@ -21,22 +21,22 @@ NormalizeAddr(const nsACString& aAddr, n
 {
   nsTArray<nsCString> addr;
   if (!ParseString(aAddr, '.', addr)) {
     return false;
   }
   aNormalized = "";
   for (uint32_t i = 0; i < 4; ++i) {
     if (i != 0) {
-      aNormalized.Append(".");
+      aNormalized.AppendLiteral(".");
     }
     if (i < addr.Length()) {
       aNormalized.Append(addr[i]);
     } else {
-      aNormalized.Append("0");
+      aNormalized.AppendLiteral("0");
     }
   }
   return true;
 }
 
 static PRUint32
 MaskIPv4Addr(PRUint32 aAddr, uint16_t aMaskLen)
 {
--- a/toolkit/system/windowsproxy/ProxyUtils.cpp
+++ b/toolkit/system/windowsproxy/ProxyUtils.cpp
@@ -21,22 +21,22 @@ NormalizeAddr(const nsACString& aAddr, n
 {
   nsTArray<nsCString> addr;
   if (!ParseString(aAddr, '.', addr)) {
     return false;
   }
   aNormalized = "";
   for (uint32_t i = 0; i < 4; ++i) {
     if (i != 0) {
-      aNormalized.Append(".");
+      aNormalized.AppendLiteral(".");
     }
     if (i < addr.Length()) {
       aNormalized.Append(addr[i]);
     } else {
-      aNormalized.Append("0");
+      aNormalized.AppendLiteral("0");
     }
   }
   return true;
 }
 
 static PRUint32
 MaskIPv4Addr(PRUint32 aAddr, uint16_t aMaskLen)
 {
--- a/toolkit/xre/ProfileReset.cpp
+++ b/toolkit/xre/ProfileReset.cpp
@@ -40,17 +40,17 @@ CreateResetProfile(nsIToolkitProfileServ
 
   nsCOMPtr<nsIToolkitProfile> newProfile;
   // Make the new profile the old profile (or "default-") + the time in seconds since epoch for uniqueness.
   nsAutoCString newProfileName;
   if (!aOldProfileName.IsEmpty()) {
     newProfileName.Assign(aOldProfileName);
     newProfileName.Append("-");
   } else {
-    newProfileName.Assign("default-");
+    newProfileName.AssignLiteral("default-");
   }
   newProfileName.Append(nsPrintfCString("%" PRId64, PR_Now() / 1000));
   nsresult rv = aProfileSvc->CreateProfile(nullptr, // choose a default dir for us
                                            newProfileName,
                                            getter_AddRefs(newProfile));
   if (NS_FAILED(rv)) return rv;
 
   rv = aProfileSvc->Flush();
--- a/toolkit/xre/nsNativeAppSupportWin.cpp
+++ b/toolkit/xre/nsNativeAppSupportWin.cpp
@@ -920,20 +920,20 @@ nsNativeAppSupportWin::HandleDDENotifica
                     ParseDDEArg(hsz2, 0, url);
 
                     // Read the 3rd argument in the command to determine if a
                     // new window is to be used.
                     nsAutoString windowID;
                     ParseDDEArg(hsz2, 2, windowID);
                     // "" means to open the URL in a new window.
                     if ( windowID.IsEmpty() ) {
-                        url.Insert(NS_LITERAL_STRING("mozilla -new-window "), 0);
+                        url.InsertLiteral(u"mozilla -new-window ", 0);
                     }
                     else {
-                        url.Insert(NS_LITERAL_STRING("mozilla -url "), 0);
+                        url.InsertLiteral(u"mozilla -url ", 0);
                     }
 
 #if MOZ_DEBUG_DDE
                     printf( "Handling dde XTYP_REQUEST request: [%s]...\n", NS_ConvertUTF16toUTF8(url).get() );
 #endif
                     // Now handle it.
                     HandleCommandLine(NS_ConvertUTF16toUTF8(url).get(), nullptr, nsICommandLine::STATE_REMOTE_EXPLICIT);
 
@@ -1085,20 +1085,20 @@ nsNativeAppSupportWin::HandleDDENotifica
 
             // Read the 3rd argument in the command to determine if a
             // new window is to be used.
             nsAutoString windowID;
             ParseDDEArg((const WCHAR*) request, 2, windowID);
 
             // "" means to open the URL in a new window.
             if ( windowID.IsEmpty() ) {
-                url.Insert(NS_LITERAL_STRING("mozilla -new-window "), 0);
+                url.InsertLiteral(u"mozilla -new-window ", 0);
             }
             else {
-                url.Insert(NS_LITERAL_STRING("mozilla -url "), 0);
+                url.InsertLiteral(u"mozilla -url ", 0);
             }
 #if MOZ_DEBUG_DDE
             printf( "Handling dde XTYP_REQUEST request: [%s]...\n", NS_ConvertUTF16toUTF8(url).get() );
 #endif
             // Now handle it.
             HandleCommandLine(NS_ConvertUTF16toUTF8(url).get(), nullptr, nsICommandLine::STATE_REMOTE_EXPLICIT);
 
             // Release the data.
@@ -1481,9 +1481,8 @@ nsNativeAppSupportWin::OpenBrowserWindow
         (do_CreateInstance("@mozilla.org/toolkit/command-line;1"));
     NS_ENSURE_TRUE(cmdLine, NS_ERROR_FAILURE);
 
     rv = cmdLine->Init(0, argv, nullptr, nsICommandLine::STATE_REMOTE_EXPLICIT);
     NS_ENSURE_SUCCESS(rv, rv);
 
     return cmdLine->Run();
 }
-
--- a/tools/fuzzing/libfuzzer/harness/LibFuzzerTestHarness.h
+++ b/tools/fuzzing/libfuzzer/harness/LibFuzzerTestHarness.h
@@ -169,17 +169,17 @@ class ScopedXPCOM : public nsIDirectoryS
       if (!greD) {
         return greD.forget();
       }
       greD->Clone(getter_AddRefs(mGREBinD));
 
 #ifdef XP_MACOSX
       nsAutoCString leafName;
       mGREBinD->GetNativeLeafName(leafName);
-      if (leafName.Equals("Resources")) {
+      if (leafName.EqualsLiteral("Resources")) {
         mGREBinD->SetNativeLeafName(NS_LITERAL_CSTRING("MacOS"));
       }
 #endif
 
       nsCOMPtr<nsIFile> copy = mGREBinD;
       return copy.forget();
     }
 
--- a/widget/ContentCache.cpp
+++ b/widget/ContentCache.cpp
@@ -37,43 +37,43 @@ GetNotificationName(const IMENotificatio
   return ToChar(aNotification->mMessage);
 }
 
 class GetRectText : public nsAutoCString
 {
 public:
   explicit GetRectText(const LayoutDeviceIntRect& aRect)
   {
-    Assign("{ x=");
+    AssignLiteral("{ x=");
     AppendInt(aRect.x);
-    Append(", y=");
+    AppendLiteral(", y=");
     AppendInt(aRect.y);
-    Append(", width=");
+    AppendLiteral(", width=");
     AppendInt(aRect.width);
-    Append(", height=");
+    AppendLiteral(", height=");
     AppendInt(aRect.height);
-    Append(" }");
+    AppendLiteral(" }");
   }
   virtual ~GetRectText() {}
 };
 
 class GetWritingModeName : public nsAutoCString
 {
 public:
   explicit GetWritingModeName(const WritingMode& aWritingMode)
   {
     if (!aWritingMode.IsVertical()) {
-      Assign("Horizontal");
+      AssignLiteral("Horizontal");
       return;
     }
     if (aWritingMode.IsVerticalLR()) {
-      Assign("Vertical (LTR)");
+      AssignLiteral("Vertical (LTR)");
       return;
     }
-    Assign("Vertical (RTL)");
+    AssignLiteral("Vertical (RTL)");
   }
   virtual ~GetWritingModeName() {}
 };
 
 class GetEscapedUTF8String final : public NS_ConvertUTF16toUTF8
 {
 public:
   explicit GetEscapedUTF8String(const nsAString& aString)
--- a/widget/cocoa/GfxInfo.mm
+++ b/widget/cocoa/GfxInfo.mm
@@ -289,19 +289,19 @@ GfxInfo::AddCrashReportAnnotations()
   CrashReporter::AnnotateCrashReport(NS_LITERAL_CSTRING("AdapterDeviceID"),
                                      narrowDeviceID);
   CrashReporter::AnnotateCrashReport(NS_LITERAL_CSTRING("AdapterDriverVersion"),
                                      narrowDriverVersion);
   /* Add an App Note for now so that we get the data immediately. These
    * can go away after we store the above in the socorro db */
   nsAutoCString note;
   /* AppendPrintf only supports 32 character strings, mrghh. */
-  note.Append("AdapterVendorID: ");
+  note.AppendLiteral("AdapterVendorID: ");
   note.Append(narrowVendorID);
-  note.Append(", AdapterDeviceID: ");
+  note.AppendLiteral(", AdapterDeviceID: ");
   note.Append(narrowDeviceID);
   CrashReporter::AppendAppNotesToCrashReport(note);
 #endif
 }
 
 // We don't support checking driver versions on Mac.
 #define IMPLEMENT_MAC_DRIVER_BLOCKLIST(os, vendor, device, features, blockOn, ruleId) \
   APPEND_TO_DRIVER_BLOCKLIST(os, vendor, device, features, blockOn,           \
--- a/widget/cocoa/nsMenuItemX.mm
+++ b/widget/cocoa/nsMenuItemX.mm
@@ -245,17 +245,17 @@ void nsMenuItemX::SetKeyEquiv()
         nsAutoString keyCodeName;
         keyContent->GetAttr(kNameSpaceID_None, nsGkAtoms::keycode, keyCodeName);
         uint32_t charCode =
           nsCocoaUtils::ConvertGeckoNameToMacCharCode(keyCodeName);
         if (charCode) {
           keyChar.Assign(charCode);
         }
         else {
-          keyChar.Assign(NS_LITERAL_STRING(" "));
+          keyChar.AssignLiteral(u" ");
         }
       }
 
       nsAutoString modifiersStr;
       keyContent->GetAttr(kNameSpaceID_None, nsGkAtoms::modifiers, modifiersStr);
       uint8_t modifiers = nsMenuUtilsX::GeckoModifiersForNodeAttribute(modifiersStr);
 
       unsigned int macModifiers = nsMenuUtilsX::MacModifiersForGeckoModifiers(modifiers);
--- a/widget/windows/GfxInfo.cpp
+++ b/widget/windows/GfxInfo.cpp
@@ -917,17 +917,17 @@ GfxInfo::AddCrashReportAnnotations()
   if (vendorID == GfxDriverInfo::GetDeviceVendor(VendorAll)) {
     /* if we didn't find a valid vendorID lets append the mDeviceID string to try to find out why */
     note.AppendLiteral(", ");
     LossyAppendUTF16toASCII(mDeviceID[mActiveGPUIndex], note);
     note.AppendLiteral(", ");
     LossyAppendUTF16toASCII(mDeviceKeyDebug, note);
     LossyAppendUTF16toASCII(mDeviceKeyDebug, note);
   }
-  note.Append("\n");
+  note.AppendLiteral("\n");
 
   if (mHasDualGPU) {
     nsString deviceID2, vendorID2, subsysID2;
     nsAutoString adapterDriverVersionString2;
     nsCString narrowDeviceID2, narrowVendorID2, narrowSubsysID2;
 
     // Make a slight difference between the two cases so that we
     // can see it in the crash reports.  It may come in handy.
--- a/widget/windows/IMMHandler.cpp
+++ b/widget/windows/IMMHandler.cpp
@@ -112,24 +112,24 @@ public:
 };
 
 class GetWritingModeName : public nsAutoCString
 {
 public:
   explicit GetWritingModeName(const WritingMode& aWritingMode)
   {
     if (!aWritingMode.IsVertical()) {
-      Assign("Horizontal");
+      AssignLiteral("Horizontal");
       return;
     }
     if (aWritingMode.IsVerticalLR()) {
-      Assign("Vertical (LR)");
+      AssignLiteral("Vertical (LR)");
       return;
     }
-    Assign("Vertical (RL)");
+    AssignLiteral("Vertical (RL)");
   }
   virtual ~GetWritingModeName() {}
 };
 
 class GetReconvertStringLog : public nsAutoCString
 {
 public:
   explicit GetReconvertStringLog(RECONVERTSTRING* aReconv)
--- a/xpcom/base/LogModulePrefWatcher.cpp
+++ b/xpcom/base/LogModulePrefWatcher.cpp
@@ -68,17 +68,17 @@ LoadPrefValue(const char* aName)
       // The pref was reset. Clear the user file.
       if (NS_FAILED(rv) || prefValue.IsEmpty()) {
         LogModule::SetLogFile(nullptr);
         return;
       }
 
       // If the pref value doesn't have a PID placeholder, append it to the end.
       if (!strstr(prefValue.get(), "%PID")) {
-        prefValue.Append("%PID");
+        prefValue.AppendLiteral("%PID");
       }
 
       LogModule::SetLogFile(prefValue.BeginReading());
     } else if (prefName.EqualsLiteral(kLoggingPrefAddTimestamp)) {
       bool addTimestamp = Preferences::GetBool(aName, false);
       LogModule::SetAddTimestamp(addTimestamp);
     } else if (prefName.EqualsLiteral(kLoggingPrefSync)) {
       bool sync = Preferences::GetBool(aName, false);
--- a/xpcom/base/SystemMemoryReporter.cpp
+++ b/xpcom/base/SystemMemoryReporter.cpp
@@ -945,20 +945,20 @@ private:
 
       AutoFile fileGuard(memFile);
 
       // Attempt to map the pid to a more useful name.
       nsAutoCString procName;
       LinuxUtils::GetThreadName(atoi(pid), procName);
 
       if (procName.IsEmpty()) {
-        procName.Append("pid=");
+        procName.AppendLiteral("pid=");
         procName.Append(pid);
       } else {
-        procName.Append(" (pid=");
+        procName.AppendLiteral(" (pid=");
         procName.Append(pid);
         procName.Append(")");
       }
 
       uint64_t gpuaddr, useraddr, size, id, sglen;
       char flags[kStringSize];
       char type[kStringSize];
       char usage[kStringSize];
--- a/xpcom/build/FileLocation.cpp
+++ b/xpcom/build/FileLocation.cpp
@@ -116,17 +116,17 @@ FileLocation::GetURIString(nsACString& a
 {
   if (mBaseFile) {
     net_GetURLSpecFromActualFile(mBaseFile, aResult);
   } else if (mBaseZip) {
     RefPtr<nsZipHandle> handler = mBaseZip->GetFD();
     handler->mFile.GetURIString(aResult);
   }
   if (IsZip()) {
-    aResult.Insert("jar:", 0);
+    aResult.InsertLiteral("jar:", 0);
     aResult += "!/";
     aResult += mPath;
   }
 }
 
 already_AddRefed<nsIFile>
 FileLocation::GetBaseFile()
 {
--- a/xpcom/tests/TestHarness.h
+++ b/xpcom/tests/TestHarness.h
@@ -188,17 +188,17 @@ class ScopedXPCOM : public nsIDirectoryS
       if (!greD) {
         return greD.forget();
       }
       greD->Clone(getter_AddRefs(mGREBinD));
 
 #ifdef XP_MACOSX
       nsAutoCString leafName;
       mGREBinD->GetNativeLeafName(leafName);
-      if (leafName.Equals("Resources")) {
+      if (leafName.EqualsLiteral("Resources")) {
         mGREBinD->SetNativeLeafName(NS_LITERAL_CSTRING("MacOS"));
       }
 #endif
 
       nsCOMPtr<nsIFile> copy = mGREBinD;
       return copy.forget();
     }
 
--- a/xpcom/tests/gtest/TestMultiplexInputStream.cpp
+++ b/xpcom/tests/gtest/TestMultiplexInputStream.cpp
@@ -12,19 +12,19 @@
 #include "nsISeekableStream.h"
 #include "nsStringStream.h"
 
 TEST(MultiplexInputStream, Seek_SET)
 {
   nsCString buf1;
   nsCString buf2;
   nsCString buf3;
-  buf1.Assign("Hello world");
-  buf2.Assign("The quick brown fox jumped over the lazy dog");
-  buf3.Assign("Foo bar");
+  buf1.AssignLiteral("Hello world");
+  buf2.AssignLiteral("The quick brown fox jumped over the lazy dog");
+  buf3.AssignLiteral("Foo bar");
 
   nsCOMPtr<nsIInputStream> inputStream1;
   nsCOMPtr<nsIInputStream> inputStream2;
   nsCOMPtr<nsIInputStream> inputStream3;
   nsresult rv = NS_NewCStringInputStream(getter_AddRefs(inputStream1), buf1);
   ASSERT_TRUE(NS_SUCCEEDED(rv));
   rv = NS_NewCStringInputStream(getter_AddRefs(inputStream2), buf2);
   ASSERT_TRUE(NS_SUCCEEDED(rv));
--- a/xpcom/tests/gtest/TestSlicedInputStream.cpp
+++ b/xpcom/tests/gtest/TestSlicedInputStream.cpp
@@ -327,17 +327,17 @@ TEST(TestSlicedInputStream, Length0) {
   uint32_t count;
   ASSERT_EQ(NS_OK, sis->Read(buf2, sizeof(buf2), &count));
   ASSERT_EQ((uint64_t)0, count);
 }
 
 // Seek test NS_SEEK_SET
 TEST(TestSlicedInputStream, Seek_SET) {
   nsCString buf;
-  buf.Assign("Hello world");
+  buf.AssignLiteral("Hello world");
 
   nsCOMPtr<nsIInputStream> stream;
   NS_NewCStringInputStream(getter_AddRefs(stream), buf);
 
   RefPtr<SlicedInputStream> sis = new SlicedInputStream(stream, 1, buf.Length());
 
   ASSERT_EQ(NS_OK, sis->Seek(nsISeekableStream::NS_SEEK_SET, 1));
 
@@ -350,17 +350,17 @@ TEST(TestSlicedInputStream, Seek_SET) {
   ASSERT_EQ(NS_OK, sis->Read(buf2, sizeof(buf2), &count));
   ASSERT_EQ((uint64_t)buf.Length() - 2, count);
   ASSERT_EQ(0, strncmp(buf2, "llo world", count));
 }
 
 // Seek test NS_SEEK_CUR
 TEST(TestSlicedInputStream, Seek_CUR) {
   nsCString buf;
-  buf.Assign("Hello world");
+  buf.AssignLiteral("Hello world");
 
   nsCOMPtr<nsIInputStream> stream;
   NS_NewCStringInputStream(getter_AddRefs(stream), buf);
 
   RefPtr<SlicedInputStream> sis = new SlicedInputStream(stream, 1, buf.Length());
 
   ASSERT_EQ(NS_OK, sis->Seek(nsISeekableStream::NS_SEEK_CUR, 1));
 
@@ -379,17 +379,17 @@ TEST(TestSlicedInputStream, Seek_CUR) {
   ASSERT_EQ(NS_OK, sis->Read(buf2, sizeof(buf2), &count));
   ASSERT_EQ((uint64_t)3, count);
   ASSERT_EQ(0, strncmp(buf2, "wor", count));
 }
 
 // Seek test NS_SEEK_END - length > real one
 TEST(TestSlicedInputStream, Seek_END_Bigger) {
   nsCString buf;
-  buf.Assign("Hello world");
+  buf.AssignLiteral("Hello world");
 
   nsCOMPtr<nsIInputStream> stream;
   NS_NewCStringInputStream(getter_AddRefs(stream), buf);
 
   RefPtr<SlicedInputStream> sis = new SlicedInputStream(stream, 2, buf.Length());
 
   ASSERT_EQ(NS_OK, sis->Seek(nsISeekableStream::NS_SEEK_END, -5));
 
@@ -413,17 +413,17 @@ TEST(TestSlicedInputStream, Seek_END_Big
   ASSERT_EQ(NS_OK, stream->Read(buf2, sizeof(buf2), &count));
   ASSERT_EQ((uint64_t)5, count);
   ASSERT_EQ(0, strncmp(buf2, "world", count));
 }
 
 // Seek test NS_SEEK_END - length < real one
 TEST(TestSlicedInputStream, Seek_END_Lower) {
   nsCString buf;
-  buf.Assign("Hello world");
+  buf.AssignLiteral("Hello world");
 
   nsCOMPtr<nsIInputStream> stream;
   NS_NewCStringInputStream(getter_AddRefs(stream), buf);
 
   RefPtr<SlicedInputStream> sis = new SlicedInputStream(stream, 2, 6);
 
   ASSERT_EQ(NS_OK, sis->Seek(nsISeekableStream::NS_SEEK_END, -3));
 
--- a/xpcom/tests/gtest/TestStrings.cpp
+++ b/xpcom/tests/gtest/TestStrings.cpp
@@ -994,69 +994,69 @@ TEST(Strings, Split)
              empty(""),
              delimStart("-two"),
              delimEnd("one-");
 
   nsString wide(u"hello world");
 
   size_t counter = 0;
   for (const nsACString& token : one.Split(',')) {
-    EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("one")));
+    EXPECT_TRUE(token.EqualsLiteral("one"));
     counter++;
   }
   EXPECT_EQ(counter, (size_t)1);
 
   counter = 0;
   for (const nsACString& token : two.Split(';')) {
     if (counter == 0) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("one")));
+      EXPECT_TRUE(token.EqualsLiteral("one"));
     } else if (counter == 1) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("two")));
+      EXPECT_TRUE(token.EqualsLiteral("two"));
     }
     counter++;
   }
   EXPECT_EQ(counter, (size_t)2);
 
   counter = 0;
   for (const nsACString& token : three.Split('-')) {
     if (counter == 0) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("one")));
+      EXPECT_TRUE(token.EqualsLiteral("one"));
     } else if (counter == 1) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("")));
+      EXPECT_TRUE(token.EqualsLiteral(""));
     } else if (counter == 2) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("three")));
+      EXPECT_TRUE(token.EqualsLiteral("three"));
     }
     counter++;
   }
   EXPECT_EQ(counter, (size_t)3);
 
   counter = 0;
   for (const nsACString& token : empty.Split(',')) {
     mozilla::Unused << token;
     counter++;
   }
   EXPECT_EQ(counter, (size_t)0);
 
   counter = 0;
   for (const nsACString& token : delimStart.Split('-')) {
     if (counter == 0) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("")));
+      EXPECT_TRUE(token.EqualsLiteral(""));
     } else if (counter == 1) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("two")));
+      EXPECT_TRUE(token.EqualsLiteral("two"));
     }
     counter++;
   }
   EXPECT_EQ(counter, (size_t)2);
 
   counter = 0;
   for (const nsACString& token : delimEnd.Split('-')) {
     if (counter == 0) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("one")));
+      EXPECT_TRUE(token.EqualsLiteral("one"));
     } else if (counter == 1) {
-      EXPECT_TRUE(token.Equals(NS_LITERAL_CSTRING("")));
+      EXPECT_TRUE(token.EqualsLiteral(""));
     }
     counter++;
   }
   EXPECT_EQ(counter, (size_t)2);
 
   counter = 0;
   for (const nsAString& token : wide.Split(' ')) {
     if (counter == 0) {