Bug 1659150 - Remove about:welcome trailhead, full page and ReturnToAMO templates r=perftest-reviewers,Mardak,mkaply,nanj,sparky
authorPunam Dahiya <punamdahiya@yahoo.com>
Fri, 11 Sep 2020 16:35:04 +0000
changeset 548339 47f3048656d342c734072da0c3e1df5252363c86
parent 548338 23894bd67a6a3b39e1e03e0424cd989670de6b9d
child 548340 c50c7898c277fb3d375f0f18a1e8ff309aef74e5
push id37778
push userccoroiu@mozilla.com
push dateSat, 12 Sep 2020 09:26:23 +0000
treeherdermozilla-central@6f8fba692420 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersperftest-reviewers, Mardak, mkaply, nanj, sparky
bugs1659150
milestone82.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1659150 - Remove about:welcome trailhead, full page and ReturnToAMO templates r=perftest-reviewers,Mardak,mkaply,nanj,sparky Differential Revision: https://phabricator.services.mozilla.com/D89077
browser/app/profile/firefox.js
browser/components/enterprisepolicies/Policies.jsm
browser/components/newtab/.eslintrc.js
browser/components/newtab/common/Actions.jsm
browser/components/newtab/content-src/activity-stream.jsx
browser/components/newtab/content-src/asrouter/asrouter-content.jsx
browser/components/newtab/content-src/asrouter/components/FxASignupForm/FxASignupForm.jsx
browser/components/newtab/content-src/asrouter/components/FxASignupForm/_FxASignupForm.scss
browser/components/newtab/content-src/asrouter/docs/first-run.md
browser/components/newtab/content-src/asrouter/docs/targeting-attributes.md
browser/components/newtab/content-src/asrouter/templates/FirstRun/FirstRun.jsx
browser/components/newtab/content-src/asrouter/templates/FirstRun/Interrupt.jsx
browser/components/newtab/content-src/asrouter/templates/FirstRun/Triplets.jsx
browser/components/newtab/content-src/asrouter/templates/FirstRun/_Triplets.scss
browser/components/newtab/content-src/asrouter/templates/FullPageInterrupt/FullPageInterrupt.jsx
browser/components/newtab/content-src/asrouter/templates/FullPageInterrupt/_FullPageInterrupt.scss
browser/components/newtab/content-src/asrouter/templates/OnboardingMessage/_OnboardingMessage.scss
browser/components/newtab/content-src/asrouter/templates/ReturnToAMO/ReturnToAMO.jsx
browser/components/newtab/content-src/asrouter/templates/ReturnToAMO/_ReturnToAMO.scss
browser/components/newtab/content-src/asrouter/templates/Trailhead/Trailhead.jsx
browser/components/newtab/content-src/asrouter/templates/Trailhead/_Trailhead.scss
browser/components/newtab/content-src/components/ASRouterAdmin/ASRouterAdmin.jsx
browser/components/newtab/content-src/components/Base/Base.jsx
browser/components/newtab/content-src/styles/_activity-stream.scss
browser/components/newtab/css/activity-stream-linux.css
browser/components/newtab/css/activity-stream-mac.css
browser/components/newtab/css/activity-stream-windows.css
browser/components/newtab/data/content/activity-stream.bundle.js
browser/components/newtab/data/content/assets/gift-extension.svg
browser/components/newtab/data/content/assets/sync-devices-trailhead.svg
browser/components/newtab/data/content/assets/trailhead/accounts-form-bg.jpg
browser/components/newtab/data/content/assets/trailhead/benefit-knowledge.png
browser/components/newtab/data/content/assets/trailhead/benefit-privacy.png
browser/components/newtab/data/content/assets/trailhead/benefit-products.png
browser/components/newtab/data/content/assets/trailhead/benefit-sync.png
browser/components/newtab/data/content/assets/trailhead/firefox-logo.png
browser/components/newtab/data/content/assets/trailhead/firefox-systems.png
browser/components/newtab/docs/v2-system-addon/data_events.md
browser/components/newtab/lib/ASRouter.jsm
browser/components/newtab/lib/ASRouterPreferences.jsm
browser/components/newtab/lib/ASRouterTargeting.jsm
browser/components/newtab/lib/OnboardingMessageProvider.jsm
browser/components/newtab/lib/TelemetryFeed.jsm
browser/components/newtab/lib/UTEventReporting.jsm
browser/components/newtab/test/browser/browser.ini
browser/components/newtab/test/browser/browser_aboutwelcome.js
browser/components/newtab/test/browser/browser_aboutwelcome_simplified.js
browser/components/newtab/test/browser/browser_onboarding_rtamo.js
browser/components/newtab/test/schemas/pings.js
browser/components/newtab/test/unit/asrouter/ASRouter.test.js
browser/components/newtab/test/unit/asrouter/ASRouterPreferences.test.js
browser/components/newtab/test/unit/asrouter/ASRouterTargeting.test.js
browser/components/newtab/test/unit/asrouter/TargetingDocs.test.js
browser/components/newtab/test/unit/asrouter/asrouter-content.test.jsx
browser/components/newtab/test/unit/asrouter/templates/FirstRun.test.jsx
browser/components/newtab/test/unit/asrouter/templates/FullPageInterrupt.test.jsx
browser/components/newtab/test/unit/asrouter/templates/FxASignupForm.test.jsx
browser/components/newtab/test/unit/asrouter/templates/Interrupt.test.jsx
browser/components/newtab/test/unit/asrouter/templates/OnboardingMessage.test.jsx
browser/components/newtab/test/unit/asrouter/templates/Trailhead.test.jsx
browser/components/newtab/test/unit/content-src/components/ReturnToAMO.test.jsx
browser/components/newtab/test/unit/lib/TelemetryFeed.test.js
browser/components/newtab/test/unit/lib/UTEventReporting.test.js
browser/components/newtab/test/xpcshell/test_AboutNewTab.js
browser/locales/en-US/browser/newtab/onboarding.ftl
testing/awsy/conf/prefs.json
testing/awsy/conf/tp6-prefs.json
testing/profiles/perf/user.js
toolkit/components/telemetry/Events.yaml
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -1381,18 +1381,18 @@ pref("browser.newtabpage.activity-stream
 
 // The pref controls if search hand-off is enabled for Activity Stream.
 #ifdef NIGHTLY_BUILD
   pref("browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar", true);
 #else
   pref("browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar", false);
 #endif
 
-pref("trailhead.firstrun.branches", "join-dynamic");
-
+// Used to display triplet cards on newtab
+pref("trailhead.firstrun.newtab.triplets", "");
 // Separate about welcome
 pref("browser.aboutwelcome.enabled", true);
 // Used to set multistage welcome UX
 pref("browser.aboutwelcome.overrideContent", "");
 
 // The pref that controls if the What's New panel is enabled.
 pref("browser.messaging-system.whatsNewPanel.enabled", true);
 // Used for CFR messages with scores. See Bug 1594422.
--- a/browser/components/enterprisepolicies/Policies.jsm
+++ b/browser/components/enterprisepolicies/Policies.jsm
@@ -562,17 +562,16 @@ var Policies = {
       }
     },
   },
 
   DisableFirefoxAccounts: {
     onBeforeAddons(manager, param) {
       if (param) {
         setAndLockPref("identity.fxaccounts.enabled", false);
-        setAndLockPref("trailhead.firstrun.branches", "nofirstrun-empty");
         setAndLockPref("browser.aboutwelcome.enabled", false);
       }
     },
   },
 
   DisableFirefoxScreenshots: {
     onBeforeAddons(manager, param) {
       if (param) {
@@ -1312,17 +1311,16 @@ var Policies = {
       setDefaultPref("signon.rememberSignons", param);
     },
   },
 
   OverrideFirstRunPage: {
     onProfileAfterChange(manager, param) {
       let url = param ? param.href : "";
       setAndLockPref("startup.homepage_welcome_url", url);
-      setAndLockPref("trailhead.firstrun.branches", "nofirstrun-empty");
       setAndLockPref("browser.aboutwelcome.enabled", false);
     },
   },
 
   OverridePostUpdatePage: {
     onProfileAfterChange(manager, param) {
       let url = param ? param.href : "";
       setAndLockPref("startup.homepage_override_url", url);
@@ -1980,17 +1978,16 @@ var Policies = {
           param.FeatureRecommendations,
           locked
         );
       }
       if ("UrlbarInterventions" in param && !param.UrlbarInterventions) {
         manager.disallowFeature("urlbarinterventions");
       }
       if ("SkipOnboarding") {
-        setAndLockPref("trailhead.firstrun.branches", "nofirstrun-empty");
         setAndLockPref("browser.aboutwelcome.enabled", false);
       }
     },
   },
 
   WebsiteFilter: {
     onBeforeUIStartup(manager, param) {
       this.filter = new WebsiteFilter(
--- a/browser/components/newtab/.eslintrc.js
+++ b/browser/components/newtab/.eslintrc.js
@@ -38,19 +38,16 @@ module.exports = {
     {
       // These files use fluent-dom to insert content
       files: [
         "content-src/aboutwelcome/components/HeroText.jsx",
         "content-src/aboutwelcome/components/Zap.jsx",
         "content-src/aboutwelcome/components/MultiStageAboutWelcome.jsx",
         "content-src/asrouter/templates/OnboardingMessage/**",
         "content-src/asrouter/templates/FirstRun/**",
-        "content-src/asrouter/templates/Trailhead/**",
-        "content-src/asrouter/templates/FullPageInterrupt/FullPageInterrupt.jsx",
-        "content-src/asrouter/components/FxASignupForm/FxASignupForm.jsx",
         "content-src/components/TopSites/**",
         "content-src/components/MoreRecommendations/MoreRecommendations.jsx",
         "content-src/components/CollapsibleSection/CollapsibleSection.jsx",
         "content-src/components/DiscoveryStreamComponents/DSEmptyState/DSEmptyState.jsx",
         "content-src/components/DiscoveryStreamComponents/DSPrivacyModal/DSPrivacyModal.jsx",
       ],
       rules: {
         "jsx-a11y/anchor-has-content": 0,
--- a/browser/components/newtab/common/Actions.jsm
+++ b/browser/components/newtab/common/Actions.jsm
@@ -146,17 +146,16 @@ for (const type of [
   "TOP_SITES_INSERT",
   "TOP_SITES_OPEN_SEARCH_SHORTCUTS_MODAL",
   "TOP_SITES_PIN",
   "TOP_SITES_PREFS_UPDATED",
   "TOP_SITES_UNPIN",
   "TOP_SITES_UPDATED",
   "TOTAL_BOOKMARKS_REQUEST",
   "TOTAL_BOOKMARKS_RESPONSE",
-  "TRAILHEAD_ENROLL_EVENT",
   "UNINIT",
   "UPDATE_PINNED_SEARCH_SHORTCUTS",
   "UPDATE_SEARCH_SHORTCUTS",
   "UPDATE_SECTION_PREFS",
   "WEBEXT_CLICK",
   "WEBEXT_DISMISS",
 ]) {
   actionTypes[type] = type;
--- a/browser/components/newtab/content-src/activity-stream.jsx
+++ b/browser/components/newtab/content-src/activity-stream.jsx
@@ -6,19 +6,19 @@ import { actionCreators as ac, actionTyp
 import { Base } from "content-src/components/Base/Base";
 import { DetectUserSessionStart } from "content-src/lib/detect-user-session-start";
 import { initStore } from "content-src/lib/init-store";
 import { Provider } from "react-redux";
 import React from "react";
 import ReactDOM from "react-dom";
 import { reducers } from "common/Reducers.jsm";
 
-export const NewTab = ({ store, isFirstrun }) => (
+export const NewTab = ({ store }) => (
   <Provider store={store}>
-    <Base isFirstrun={isFirstrun} />
+    <Base />
   </Provider>
 );
 
 export function renderWithoutState() {
   const store = initStore(reducers);
   new DetectUserSessionStart(store).sendEventOrAddListener();
 
   // If this document has already gone into the background by the time we've reached
@@ -38,29 +38,17 @@ export function renderWithoutState() {
 
   if (document.hidden) {
     requestIdleCallbackId = requestIdleCallback(doRequest);
     addEventListener("visibilitychange", doRequest, { once: true });
   } else {
     doRequest();
   }
 
-  ReactDOM.hydrate(
-    <NewTab
-      store={store}
-      isFirstrun={global.document.location.href === "about:welcome"}
-    />,
-    document.getElementById("root")
-  );
+  ReactDOM.hydrate(<NewTab store={store} />, document.getElementById("root"));
 }
 
 export function renderCache(initialState) {
   const store = initStore(reducers, initialState);
   new DetectUserSessionStart(store).sendEventOrAddListener();
 
-  ReactDOM.hydrate(
-    <NewTab
-      store={store}
-      isFirstrun={global.document.location.href === "about:welcome"}
-    />,
-    document.getElementById("root")
-  );
+  ReactDOM.hydrate(<NewTab store={store} />, document.getElementById("root"));
 }
--- a/browser/components/newtab/content-src/asrouter/asrouter-content.jsx
+++ b/browser/components/newtab/content-src/asrouter/asrouter-content.jsx
@@ -10,23 +10,17 @@ import { LocalizationProvider } from "fl
 import { NEWTAB_DARK_THEME } from "content-src/lib/constants";
 import React from "react";
 import ReactDOM from "react-dom";
 import { SnippetsTemplates } from "./templates/template-manifest";
 import { FirstRun } from "./templates/FirstRun/FirstRun";
 
 const INCOMING_MESSAGE_NAME = "ASRouter:parent-to-child";
 const OUTGOING_MESSAGE_NAME = "ASRouter:child-to-parent";
-const TEMPLATES_ABOVE_PAGE = [
-  "trailhead",
-  "full_page_interrupt",
-  "return_to_amo_overlay",
-  "extended_triplets",
-];
-const FIRST_RUN_TEMPLATES = TEMPLATES_ABOVE_PAGE;
+const TEMPLATES_ABOVE_PAGE = ["extended_triplets"];
 const TEMPLATES_BELOW_SEARCH = ["simple_below_search_snippet"];
 
 export const ASRouterUtils = {
   addListener(listener) {
     if (global.RPMAddMessageListener) {
       global.RPMAddMessageListener(INCOMING_MESSAGE_NAME, listener);
     }
   },
@@ -122,17 +116,17 @@ export class ASRouterUISurface extends R
     super(props);
     this.onMessageFromParent = this.onMessageFromParent.bind(this);
     this.sendClick = this.sendClick.bind(this);
     this.sendImpression = this.sendImpression.bind(this);
     this.sendUserActionTelemetry = this.sendUserActionTelemetry.bind(this);
     this.onUserAction = this.onUserAction.bind(this);
     this.fetchFlowParams = this.fetchFlowParams.bind(this);
 
-    this.state = { message: {}, interruptCleared: false };
+    this.state = { message: {} };
     if (props.document) {
       this.headerPortal = props.document.getElementById(
         "header-asrouter-container"
       );
       this.footerPortal = props.document.getElementById(
         "footer-asrouter-container"
       );
     }
@@ -254,29 +248,24 @@ export class ASRouterUISurface extends R
       this.state.message.bundle &&
       this.state.message.bundle.find(card => card.id === id)
     ) {
       this.requestMessage();
     }
 
     if (id === this.state.message.id) {
       this.setState({ message: {} });
-      // Remove any styles related to the RTAMO message
-      document.body.classList.remove("welcome", "hide-main", "amo");
     }
   }
 
   onMessageFromParent({ data: action }) {
     switch (action.type) {
       case "SET_MESSAGE":
         this.setState({ message: action.data });
         break;
-      case "CLEAR_INTERRUPT":
-        this.setState({ interruptCleared: true });
-        break;
       case "CLEAR_MESSAGE":
         this.clearMessage(action.data.id);
         break;
       case "CLEAR_PROVIDER":
         if (action.data.id === this.state.message.provider) {
           this.setState({ message: {} });
         }
         break;
@@ -285,31 +274,20 @@ export class ASRouterUISurface extends R
         break;
       case "AS_ROUTER_TARGETING_UPDATE":
         action.data.forEach(id => this.clearMessage(id));
         break;
     }
   }
 
   requestMessage(endpoint) {
-    // If we are loading about:welcome we want to trigger the onboarding messages
-    if (
-      this.props.document &&
-      this.props.document.location.href === "about:welcome"
-    ) {
-      ASRouterUtils.sendMessage({
-        type: "TRIGGER",
-        data: { trigger: { id: "firstRun" } },
-      });
-    } else {
-      ASRouterUtils.sendMessage({
-        type: "NEWTAB_MESSAGE_REQUEST",
-        data: { endpoint },
-      });
-    }
+    ASRouterUtils.sendMessage({
+      type: "NEWTAB_MESSAGE_REQUEST",
+      data: { endpoint },
+    });
   }
 
   componentWillMount() {
     const endpoint = ASRouterUtils.getPreviewEndpoint();
     if (endpoint && endpoint.theme === "dark") {
       global.window.dispatchEvent(
         new CustomEvent("LightweightTheme:Set", {
           detail: { data: NEWTAB_DARK_THEME },
@@ -396,33 +374,31 @@ export class ASRouterUISurface extends R
         <span className="icon icon-small-spacer icon-info" />
         <span>Preview Purposes Only</span>
       </div>
     );
   }
 
   renderFirstRun() {
     const { message } = this.state;
-    if (FIRST_RUN_TEMPLATES.includes(message.template)) {
+    if (TEMPLATES_ABOVE_PAGE.includes(message.template)) {
       return (
         <ImpressionsWrapper
           id="FIRST_RUN"
           message={this.state.message}
           sendImpression={this.sendImpression}
           shouldSendImpressionOnUpdate={shouldSendImpressionOnUpdate}
           // This helps with testing
           document={this.props.document}
         >
           <FirstRun
             document={this.props.document}
-            interruptCleared={this.state.interruptCleared}
             message={message}
             sendUserActionTelemetry={this.sendUserActionTelemetry}
             executeAction={ASRouterUtils.executeAction}
-            dispatch={this.props.dispatch}
             onBlockById={ASRouterUtils.blockById}
             onDismiss={this.onDismissById(this.state.message.id)}
             fxaEndpoint={this.props.fxaEndpoint}
             appUpdateChannel={this.props.appUpdateChannel}
             fetchFlowParams={this.fetchFlowParams}
           />
         </ImpressionsWrapper>
       );
deleted file mode 100644
--- a/browser/components/newtab/content-src/asrouter/components/FxASignupForm/FxASignupForm.jsx
+++ /dev/null
@@ -1,173 +0,0 @@
-/* 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/. */
-
-import { actionCreators as ac } from "common/Actions.jsm";
-import {
-  addUtmParams,
-  BASE_PARAMS,
-} from "../../templates/FirstRun/addUtmParams";
-import React from "react";
-
-export class FxASignupForm extends React.PureComponent {
-  constructor(props) {
-    super(props);
-    this.onSubmit = this.onSubmit.bind(this);
-    this.onInputChange = this.onInputChange.bind(this);
-    this.onInputInvalid = this.onInputInvalid.bind(this);
-    this.handleSignIn = this.handleSignIn.bind(this);
-
-    this.state = {
-      emailInput: "",
-    };
-  }
-
-  get email() {
-    return this.props.document
-      .getElementById("fxaSignupForm")
-      .querySelector("input[name=email]");
-  }
-
-  onSubmit(event) {
-    let userEvent = "SUBMIT_EMAIL";
-    const { email } = event.target.elements;
-    if (email.disabled) {
-      userEvent = "SUBMIT_SIGNIN";
-    } else if (!email.value.length) {
-      email.required = true;
-      email.checkValidity();
-      event.preventDefault();
-      return;
-    }
-
-    // Report to telemetry additional information about the form submission.
-    const value = { has_flow_params: !!this.props.flowParams.flowId.length };
-    this.props.dispatch(ac.UserEvent({ event: userEvent, value }));
-
-    global.addEventListener("visibilitychange", this.props.onClose);
-  }
-
-  handleSignIn(event) {
-    // Set disabled to prevent email from appearing in url resulting in the wrong page
-    this.email.disabled = true;
-  }
-
-  componentDidMount() {
-    // Start with focus in the email input box
-    if (this.email) {
-      this.email.focus();
-    }
-  }
-
-  onInputChange(e) {
-    let error = e.target.previousSibling;
-    this.setState({ emailInput: e.target.value });
-    error.classList.remove("active");
-    e.target.classList.remove("invalid");
-  }
-
-  onInputInvalid(e) {
-    let error = e.target.previousSibling;
-    error.classList.add("active");
-    e.target.classList.add("invalid");
-    e.preventDefault(); // Override built-in form validation popup
-    e.target.focus();
-  }
-
-  render() {
-    const { content, UTMTerm } = this.props;
-    return (
-      <div
-        id="fxaSignupForm"
-        role="group"
-        aria-labelledby="joinFormHeader"
-        aria-describedby="joinFormBody"
-        className="fxaSignupForm"
-      >
-        <h3 id="joinFormHeader" data-l10n-id={content.form.title.string_id} />
-        <p id="joinFormBody" data-l10n-id={content.form.text.string_id} />
-        <form
-          method="get"
-          action={this.props.fxaEndpoint}
-          target="_blank"
-          rel="noopener noreferrer"
-          onSubmit={this.onSubmit}
-        >
-          <input name="action" type="hidden" value="email" />
-          <input name="context" type="hidden" value="fx_desktop_v3" />
-          <input
-            name="entrypoint"
-            type="hidden"
-            value="activity-stream-firstrun"
-          />
-          <input name="utm_source" type="hidden" value="activity-stream" />
-          <input
-            name="utm_campaign"
-            type="hidden"
-            value={BASE_PARAMS.utm_campaign}
-          />
-          <input name="utm_term" type="hidden" value={UTMTerm} />
-          <input
-            name="device_id"
-            type="hidden"
-            value={this.props.flowParams.deviceId}
-          />
-          <input
-            name="flow_id"
-            type="hidden"
-            value={this.props.flowParams.flowId}
-          />
-          <input
-            name="flow_begin_time"
-            type="hidden"
-            value={this.props.flowParams.flowBeginTime}
-          />
-          <input name="style" type="hidden" value="trailhead" />
-          <p
-            data-l10n-id="onboarding-join-form-email-error"
-            className="error"
-          />
-          <input
-            data-l10n-id={content.form.email.string_id}
-            name="email"
-            type="email"
-            onInvalid={this.onInputInvalid}
-            onChange={this.onInputChange}
-          />
-          <p className="fxa-terms" data-l10n-id="onboarding-join-form-legal">
-            <a
-              data-l10n-name="terms"
-              target="_blank"
-              rel="noopener noreferrer"
-              href={addUtmParams(
-                "https://accounts.firefox.com/legal/terms",
-                UTMTerm
-              )}
-            />
-            <a
-              data-l10n-name="privacy"
-              target="_blank"
-              rel="noopener noreferrer"
-              href={addUtmParams(
-                "https://accounts.firefox.com/legal/privacy",
-                UTMTerm
-              )}
-            />
-          </p>
-          <button data-l10n-id={content.form.button.string_id} type="submit" />
-          {this.props.showSignInLink && (
-            <div className="fxa-signin">
-              <span data-l10n-id="onboarding-join-form-signin-label" />
-              <button
-                data-l10n-id="onboarding-join-form-signin"
-                onClick={this.handleSignIn}
-              />
-            </div>
-          )}
-        </form>
-      </div>
-    );
-  }
-}
-
-FxASignupForm.defaultProps = { document: global.document };
deleted file mode 100644
--- a/browser/components/newtab/content-src/asrouter/components/FxASignupForm/_FxASignupForm.scss
+++ /dev/null
@@ -1,126 +0,0 @@
-.fxaSignupForm {
-  min-width: 260px;
-  text-align: center;
-
-  a {
-    color: $white;
-    text-decoration: underline;
-  }
-
-  input,
-  button {
-    border-radius: 4px;
-    padding: 10px;
-  }
-
-  h3 {
-    font-size: 36px;
-    font-weight: 200;
-    line-height: 46px;
-    margin: 12px 0 4px;
-  }
-
-  p {
-    font-size: 15px;
-    line-height: 22px;
-    margin: 0 0 20px;
-  }
-
-  .fxa-terms {
-    margin: 4px 30px 20px;
-
-    a,
-    & {
-      color: $white-70;
-      font-size: 12px;
-      line-height: 20px;
-    }
-  }
-
-  .fxa-signin {
-    font-size: 16px;
-    margin-top: 19px;
-
-    span {
-      margin-inline-end: 5px;
-    }
-
-    button {
-      background-color: initial;
-      text-decoration: underline;
-      color: $white;
-      display: inline;
-      padding: 0;
-      width: auto;
-
-      &:hover,
-      &:focus,
-      &:active {
-        background-color: initial;
-      }
-    }
-  }
-
-  form {
-    position: relative;
-
-    .error.active {
-      inset-inline-start: 0;
-      z-index: 0;
-    }
-  }
-
-  button,
-  input {
-    width: 100%;
-  }
-
-  input {
-    background-color: $white;
-    border: 1px solid $grey-50;
-    box-shadow: none;
-    color: $grey-70;
-    font-size: 15px;
-    transition: border-color 150ms, box-shadow 150ms;
-
-    &:hover {
-      border-color: $grey-90;
-    }
-
-    &:focus {
-      border-color: $blue-50;
-      box-shadow: 0 0 0 3px $email-input-focus;
-    }
-
-    &.invalid {
-      border-color: $red-60;
-    }
-
-    &.invalid:focus {
-      box-shadow: 0 0 0 3px $email-input-invalid;
-    }
-  }
-
-  button {
-    background-color: $blue-60;
-    border: 0;
-    cursor: pointer;
-    display: block;
-    font-size: 15px;
-    font-weight: 400;
-    padding: 14px;
-
-    &:hover,
-    &:focus {
-      background-color: $trailhead-blue-60;
-    }
-
-    &:focus {
-      outline: dotted 1px;
-    }
-
-    &:active {
-      background-color: $trailhead-blue-70;
-    }
-  }
-}
--- a/browser/components/newtab/content-src/asrouter/docs/first-run.md
+++ b/browser/components/newtab/content-src/asrouter/docs/first-run.md
@@ -1,62 +1,22 @@
 # First run on-boarding flow
 
 First Run flow describes the entire experience users have after Firefox has successfully been installed up until the first instance of new tab is shown. 
-First run help onboard new users by showing relevant messaging on about:welcome and about:newtab using interrupts and triplets. 
-
-## Interrupts
-A first run experience shown on about:welcome page and decide UI based on messaging template provided. In Firefox 72, interrupt can be one of below three types
-
-### First Run Modal
-A modal that shows up on first run, usually the first stage.
+First run help onboard new users by showing relevant messaging on about:welcome and about:newtab using triplets. 
 
-In 71+, below modal interrupts are supported:
-* join - purple first run modal with "Meet Firefox + Products / Knowledge Privacy + Join Firefox" messaging
-* sync - purple first run modal but with 70 fxa messaging
-* modal_control - First Run Modal control with same messaging as “join” modal
-* modal_variant_a - First Run Modal with "Get the most + Sync/Monitor/Lockwise  + Start Here" messaging.
-* modal_variant_b - First Run Modal with "Supercharge privacy + Sync/Monitor/Lockwise  + Start Here" messaging.
-* modal_variant_c - First Run Modal with "Add Privacy + Sync/Monitor/Lockwise  + Start Here" messaging.
-* modal_variant_f - First Run Modal with "Meet Firefox + Products / Knowledge Privacy + Start Here" messaging.
-
+### First Run Multistage
+A full-page multistep experience that shows up on first run since Fx80 with browser.aboutwelcome.enabled pref as true.
 
-### First Run Takeover
-A full-page experience that shows up on first run, usually the first stage (a previous variant of this was the blue FxA Sync sign-in page).
-
-A modal less page showing signup form and triplet messaging together on the same page.
-* full_page_d - FxA signup form on top with triplet messaging on bottom
-* full_page_e - FxA signup form on bottom with triplet messaging on top
-
-### First Run Return to AMO
-Part of a custom First Run Flow for users that installed Firefox after attempting to add an add-on from another browser. This is a full-page experience on first run.
-
-Please Note: This is unique interrupt experience shown on about:welcome and not controlled by interrupt value of pref 'trailhead.firstrun.branches' and instead uses attribution targeting condition below
-
-``` "attributionData.campaign == 'non-fx-button' && attributionData.source == 'addons.mozilla.org'"```
+Setting browser.aboutwelcome.enabled to false make first run looks like about:newtab and hides about:welcome
 
 ## Triplets
-The cards that show up above the new tab content on the first instance of new tab, usually the second stage.
+The cards that show up above the new tab content on the first instance of new tab. Setting browser.aboutwelcome.enabled to false and trailhead.firstrun.newtab.triplets to one of values below hides multistage welcome and takes user straight to triplets on opening about:welcome page
 
 * supercharge - Shows Sync, Monitor and Mobile onboarding cards. Supported in 71+.
 * payoff - Shows Monitor, Facbook Container and Firefox Send onboarding cards. Supported in 71 only.
 * mutidevice - Shows Pocket, Send Tabs and Mobile onboarding cards. Supported in 71 only.
 * privacy - Shows Private Browsing, Tracking Protection and Lockwise. Supported in 71 only.
 
 In 72+
 * static - same experience as ‘supercharge’ triplet - with Sync, Monitor and Mobile onboarding cards
 * dynamic - Dynamic triplets showing three onboarding cards (Sync, Monitor and Private Browsing) that gets swapped with preselected list of cards that satisfies targeting rules. Preselected cards supported are Send Tab, Mobile and Lockwise.
 * dynamic_chrome - Dynamic triplets showing three onboarding cards (Chrome switchers, Sync and Monitor) that gets swapped with preselected list of cards that satisfies targeting rules. Preselected cards supported are Private Browsing, Send Tab, Mobile and Lockwise.
-
-## Misc
-Below experiences are controlled by using following interrupt values inside 'trailhead.firstrun.branches' 
-* nofirstrun - nothing - looks like about:newtab and hides both first and second stage of about:welcome
-* cards - no modal straight to triplet. This hides only first stage and takes user straight to triplets on opening about:welcome page.
-
-
-## How to switch between first run experiences
-
-First run experiences are controlled by pref 'trailhead.firstrun.branches'. This pref value follow format ```'<interrupt>-<triplet>'``` where ```<interrupt>``` is the interrupt message name from interrupt section above and ```<triplet>``` is triplet message name. If no value is set for 'trailhead.firstrun.branches', by default 'join-supercharge' interrupt and triplet experience is used. 'join-supercharge' is default first run experience in 71+.
-
-For Example:
-* Open about:config and set preference 'trailhead.firstrun.branches' to string value 'modal_variant_a-supercharge'
-* Open about:welcome shows 'modal_variant_a' first run modal stage 1 on welcome screen.
-* Dismissing welcome screen by clicking on “Start browsing” shows stage 2 'supercharge' triplets experience on new tab.
--- a/browser/components/newtab/content-src/asrouter/docs/targeting-attributes.md
+++ b/browser/components/newtab/content-src/asrouter/docs/targeting-attributes.md
@@ -23,17 +23,16 @@ Please note that some targeting attribut
 * [profileAgeCreated](#profileagecreated)
 * [profileAgeReset](#profileagereset)
 * [providerCohorts](#providercohorts)
 * [region](#region)
 * [searchEngines](#searchengines)
 * [sync](#sync)
 * [topFrecentSites](#topfrecentsites)
 * [totalBookmarksCount](#totalbookmarkscount)
-* [trailheadInterrupt](#trailheadinterrupt)
 * [trailheadTriplet](#trailheadtriplet)
 * [usesFirefoxSync](#usesfirefoxsync)
 * [isFxAEnabled](#isFxAEnabled)
 * [xpinstallEnabled](#xpinstallEnabled)
 * [hasPinnedTabs](#haspinnedtabs)
 * [hasAccessedFxAPanel](#hasaccessedfxapanel)
 * [isWhatsNewPanelEnabled](#iswhatsnewpanelenabled)
 * [totalBlockedCount](#totalblockedcount)
@@ -438,20 +437,16 @@ type UnixEpochNumber = number;
 Total number of bookmarks.
 
 #### Definition
 
 ```ts
 declare const totalBookmarksCount: number;
 ```
 
-### `trailheadInterrupt`
-
-(67.05+ only) Experiment branch for "interrupt" study
-
 ### `trailheadTriplet`
 
 (67.05+ only) Experiment branch for "triplet" study
 
 ### `usesFirefoxSync`
 
 Does the user use Firefox sync?
 
--- a/browser/components/newtab/content-src/asrouter/templates/FirstRun/FirstRun.jsx
+++ b/browser/components/newtab/content-src/asrouter/templates/FirstRun/FirstRun.jsx
@@ -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/. */
 
 import React from "react";
-import { Interrupt } from "./Interrupt";
 import { Triplets } from "./Triplets";
 import { BASE_PARAMS } from "./addUtmParams";
 
 // Note: should match the transition time on .trailheadCards in _Trailhead.scss
 const TRANSITION_LENGTH = 500;
 
 export const FLUENT_FILES = [
   "branding/brand.ftl",
@@ -29,22 +28,20 @@ export const helpers = {
 
 export class FirstRun extends React.PureComponent {
   constructor(props) {
     super(props);
 
     this.didLoadFlowParams = false;
 
     this.state = {
-      didUserClearInterrupt: false,
       didUserClearTriplets: false,
       flowParams: undefined,
     };
 
-    this.closeInterrupt = this.closeInterrupt.bind(this);
     this.closeTriplets = this.closeTriplets.bind(this);
 
     helpers.addFluent(this.props.document);
     // Update utm campaign parameters by appending channel for
     // differentiating campaign in amplitude
     if (this.props.appUpdateChannel) {
       BASE_PARAMS.utm_campaign += `-${this.props.appUpdateChannel}`;
     }
@@ -71,115 +68,58 @@ export class FirstRun extends React.Pure
         entrypoint: "activity-stream-firstrun",
         form_type: "email",
         utm_term: this.UTMTerm,
       });
       this.setState({ flowParams });
     }
   }
 
-  removeHideMain() {
-    if (!this.isInterruptVisible) {
-      // We need to remove hide-main since we should show it underneath everything that has rendered
-      this.props.document.body.classList.remove("hide-main", "welcome");
-    }
-  }
-
-  // Is there any interrupt content? This is false for new tab triplets.
-  get hasInterrupt() {
-    const { message } = this.props;
-    return Boolean(message && message.content);
-  }
-
-  // Are all conditions met for the interrupt to actually be visible?
-  // 1. hasInterrupt - Is there interrupt content?
-  // 2. state.didUserClearInterrupt - Was it cleared by the user?
-  // 3. props.interruptCleared - Was it cleared externally?
-  get isInterruptVisible() {
-    return (
-      this.hasInterrupt &&
-      !this.state.didUserClearInterrupt &&
-      !this.props.interruptCleared
-    );
-  }
-
   componentDidMount() {
     this.fetchFlowParams();
-    this.removeHideMain();
   }
 
   componentDidUpdate() {
     // In case we didn't have FXA info immediately, try again when we receive it.
     this.fetchFlowParams();
-    this.removeHideMain();
-  }
-
-  closeInterrupt() {
-    this.setState({
-      didUserClearInterrupt: true,
-    });
   }
 
   closeTriplets() {
     this.setState({ didUserClearTriplets: true });
 
     // Closing triplets should prevent any future extended triplets from showing up
     setTimeout(() => {
       this.props.onBlockById("EXTENDED_TRIPLETS_1");
     }, TRANSITION_LENGTH);
   }
 
   render() {
     const { props, state, UTMTerm } = this;
-    const {
-      sendUserActionTelemetry,
-      fxaEndpoint,
-      dispatch,
-      executeAction,
-      message,
-    } = props;
+    const { sendUserActionTelemetry, executeAction, message } = props;
 
     const { didUserClearTriplets, flowParams } = state;
 
     const hasTriplets = Boolean(message.bundle && message.bundle.length);
-    const interrupt = this.hasInterrupt ? message : null;
     const triplets = hasTriplets ? message.bundle : null;
     const isTripletsContainerVisible = hasTriplets && !didUserClearTriplets;
 
-    // Allow 1) falsy to not render a header 2) default welcome 3) custom header
+    // Allow 1) falsy to not render a header 2) default welcome header 3) custom header
     const tripletsHeaderId =
       message.tripletsHeaderId === undefined
         ? "onboarding-welcome-header"
         : message.tripletsHeaderId;
 
     return (
       <>
-        {this.isInterruptVisible ? (
-          <Interrupt
-            document={props.document}
-            cards={triplets}
-            message={interrupt}
-            onNextScene={this.closeInterrupt}
-            UTMTerm={UTMTerm}
-            sendUserActionTelemetry={sendUserActionTelemetry}
-            executeAction={executeAction}
-            dispatch={dispatch}
-            flowParams={flowParams}
-            onDismiss={this.closeInterrupt}
-            fxaEndpoint={fxaEndpoint}
-            onBlockById={props.onBlockById}
-          />
-        ) : null}
         {hasTriplets ? (
           <Triplets
             document={props.document}
             cards={triplets}
             headerId={tripletsHeaderId}
             showCardPanel={isTripletsContainerVisible}
-            showContent={!this.isInterruptVisible}
             hideContainer={this.closeTriplets}
             sendUserActionTelemetry={sendUserActionTelemetry}
             UTMTerm={`${UTMTerm}-card`}
             flowParams={flowParams}
             onAction={executeAction}
             onBlockById={props.onBlockById}
           />
         ) : null}
deleted file mode 100644
--- a/browser/components/newtab/content-src/asrouter/templates/FirstRun/Interrupt.jsx
+++ /dev/null
@@ -1,77 +0,0 @@
-/* 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/. */
-
-import React from "react";
-import { Trailhead } from "../Trailhead/Trailhead";
-import { ReturnToAMO } from "../ReturnToAMO/ReturnToAMO";
-import { FullPageInterrupt } from "../FullPageInterrupt/FullPageInterrupt";
-import { LocalizationProvider } from "fluent-react";
-import { generateBundles } from "../../rich-text-strings";
-
-export class Interrupt extends React.PureComponent {
-  render() {
-    const {
-      cards,
-      onDismiss,
-      onNextScene,
-      message,
-      sendUserActionTelemetry,
-      executeAction,
-      dispatch,
-      fxaEndpoint,
-      UTMTerm,
-      flowParams,
-    } = this.props;
-
-    switch (message.template) {
-      case "return_to_amo_overlay":
-        return (
-          <LocalizationProvider
-            bundles={generateBundles({ amo_html: message.content.text })}
-          >
-            <ReturnToAMO
-              {...message}
-              document={this.props.document}
-              UISurface="NEWTAB_OVERLAY"
-              onBlock={onDismiss}
-              onAction={executeAction}
-              sendUserActionTelemetry={sendUserActionTelemetry}
-            />
-          </LocalizationProvider>
-        );
-      case "full_page_interrupt":
-        return (
-          <FullPageInterrupt
-            document={this.props.document}
-            cards={cards}
-            message={message}
-            onBlock={onDismiss}
-            onAction={executeAction}
-            dispatch={dispatch}
-            fxaEndpoint={fxaEndpoint}
-            sendUserActionTelemetry={sendUserActionTelemetry}
-            UTMTerm={UTMTerm}
-            flowParams={flowParams}
-            onBlockById={this.props.onBlockById}
-          />
-        );
-      case "trailhead":
-        return (
-          <Trailhead
-            document={this.props.document}
-            message={message}
-            onNextScene={onNextScene}
-            onAction={executeAction}
-            sendUserActionTelemetry={sendUserActionTelemetry}
-            dispatch={dispatch}
-            fxaEndpoint={fxaEndpoint}
-            UTMTerm={UTMTerm}
-            flowParams={flowParams}
-          />
-        );
-      default:
-        throw new Error(`${message.template} is not a valid FirstRun message`);
-    }
-  }
-}
--- a/browser/components/newtab/content-src/asrouter/templates/FirstRun/Triplets.jsx
+++ b/browser/components/newtab/content-src/asrouter/templates/FirstRun/Triplets.jsx
@@ -56,26 +56,25 @@ export class Triplets extends React.Pure
     });
   }
 
   render() {
     const {
       cards,
       headerId,
       showCardPanel,
-      showContent,
       sendUserActionTelemetry,
     } = this.props;
     return (
       <div
         className={`trailheadCards ${showCardPanel ? "expanded" : "collapsed"}`}
       >
-        <div className="trailheadCardsInner" aria-hidden={!showContent}>
+        <div className="trailheadCardsInner" aria-hidden={!showCardPanel}>
           {headerId && <h1 data-l10n-id={headerId} />}
-          <div className={`trailheadCardGrid${showContent ? " show" : ""}`}>
+          <div className={`trailheadCardGrid${showCardPanel ? " show" : ""}`}>
             {cards.map(card => (
               <OnboardingCard
                 key={card.id}
                 message={card}
                 className="trailheadCard"
                 sendUserActionTelemetry={sendUserActionTelemetry}
                 onAction={this.onCardAction}
                 UISurface="TRAILHEAD"
rename from browser/components/newtab/content-src/asrouter/templates/Trailhead/_Trailhead.scss
rename to browser/components/newtab/content-src/asrouter/templates/FirstRun/_Triplets.scss
--- a/browser/components/newtab/content-src/asrouter/templates/Trailhead/_Trailhead.scss
+++ b/browser/components/newtab/content-src/asrouter/templates/FirstRun/_Triplets.scss
@@ -1,190 +1,8 @@
-.trailhead {
-  $benefit-icon-size: 62px;
-  $benefit-icon-spacing: $benefit-icon-size + 12px;
-  $benefit-icon-size-small: 40px;
-  $benefit-icon-spacing-small: $benefit-icon-size-small + 12px;
-  $responsive-breakpoint: 850px;
-  $logo-size: 100px;
-
-  background: url('#{$image-path}trailhead/accounts-form-bg.jpg') bottom / cover;
-  color: $white;
-  height: auto;
-
-  a {
-    color: $white;
-    text-decoration: underline;
-  }
-
-  input,
-  button {
-    border-radius: 4px;
-    padding: 10px;
-  }
-
-  .trailheadInner {
-    $content-spacing: 40px;
-
-    display: grid;
-    grid-column-gap: $content-spacing;
-    grid-template-columns: 5fr 3fr;
-    padding: $content-spacing 60px;
-  }
-
-  .trailheadContent {
-    h1 {
-      font-size: 36px;
-      font-weight: 200;
-      line-height: 46px;
-      margin: 0;
-    }
-
-    .trailheadLearn {
-      display: block;
-      margin-top: 30px;
-
-      @media (min-width: $responsive-breakpoint) {
-        margin-inline-start: $benefit-icon-spacing;
-      }
-    }
-  }
-
-  .trailhead-join-form {
-    background: url('#{$image-path}trailhead/firefox-logo.png') top center / $logo-size no-repeat;
-    color: $white;
-    min-width: 260px;
-    padding-top: $logo-size;
-  }
-
-  &.syncCohort {
-    left: calc(50% - 430px);
-    width: 860px;
-
-    @media (max-width: 860px) {
-      left: 0;
-      width: 100%;
-    }
-
-    .trailheadInner {
-      grid-template-columns: 4fr 3fr;
-    }
-
-    .trailheadContent {
-      .trailheadBenefits {
-        background: url('#{$image-path}sync-devices-trailhead.svg');
-        background-position: center center;
-        background-repeat: no-repeat;
-        background-size: contain;
-        height: 200px;
-        margin-inline-end: 60px;
-      }
-
-      .trailheadLearn {
-        margin-inline-start: 0;
-      }
-    }
-  }
-
-  .trailheadBenefits {
-    padding: 0;
-
-    li {
-      background-position: left 6px;
-      background-repeat: no-repeat;
-      background-size: $benefit-icon-size-small;
-      -moz-context-properties: fill;
-      fill: $blue-50;
-      list-style: none;
-      padding-top: 8px;
-
-
-      @media (min-width: $responsive-breakpoint) {
-        background-position-y: 4px;
-        background-size: $benefit-icon-size;
-        margin-inline-end: 60px;
-        padding-inline-start: $benefit-icon-spacing;
-      }
-
-      &:dir(rtl) {
-        background-position-x: right;
-      }
-
-      &.knowledge,
-      &.monitor {
-        background-image: url('#{$image-path}trailhead/benefit-knowledge.png');
-      }
-
-      &.lockwise,
-      &.privacy {
-        background-image: url('#{$image-path}trailhead/benefit-privacy.png');
-      }
-
-      &.products {
-        background-image: url('#{$image-path}trailhead/benefit-products.png');
-      }
-
-      &.sync {
-        background-image: url('#{$image-path}trailhead/benefit-sync.png');
-      }
-    }
-
-    h2 {
-      text-align: start;
-      line-height: inherit;
-      color: $violet-20;
-      font-size: 22px;
-      font-weight: 400;
-      margin: 0 0 4px;
-      padding-inline-start: $benefit-icon-spacing-small;
-
-      @media (min-width: $responsive-breakpoint) {
-        padding-inline-start: 0;
-      }
-    }
-
-    p {
-      color: $white;
-      font-size: 15px;
-      line-height: 22px;
-      margin: 4px 0 15px;
-    }
-  }
-
-  .trailheadStart {
-    border: 1px solid $white-50;
-    cursor: pointer;
-    display: block;
-    font-size: 15px;
-    font-weight: 400;
-    margin: 0 auto 40px;
-    min-width: 300px;
-    padding: 14px;
-
-    &:hover,
-    &:focus {
-      background-color: $trailhead-blue-60;
-      border-color: transparent;
-    }
-
-    &:focus {
-      outline: dotted 1px;
-    }
-
-    &:active {
-      background-color: $trailhead-blue-70;
-    }
-  }
-
-  .trailheadInner,
-  .trailheadStart {
-    animation: fadeIn 0.4s;
-  }
-}
-
 .trailheadCards {
   background: var(--trailhead-cards-background-color);
   overflow: hidden;
   text-align: center;
   // Note: should match TRANSITION_LENGTH in FirstRun.jsx
   transition: max-height 0.5s $photon-easing;
 
   // This is needed for the transition to work, but will cut off content at the smallest breakpoint
deleted file mode 100644
--- a/browser/components/newtab/content-src/asrouter/templates/FullPageInterrupt/FullPageInterrupt.jsx
+++ /dev/null
@@ -1,189 +0,0 @@
-/* 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/. */
-
-import { addUtmParams } from "../FirstRun/addUtmParams";
-import { FxASignupForm } from "../../components/FxASignupForm/FxASignupForm";
-import { OnboardingCard } from "../../templates/OnboardingMessage/OnboardingMessage";
-import React from "react";
-
-export const FxAccounts = ({
-  document,
-  content,
-  dispatch,
-  fxaEndpoint,
-  flowParams,
-  removeOverlay,
-  url,
-  UTMTerm,
-}) => (
-  <React.Fragment>
-    <div
-      className="fullpage-left-section"
-      aria-labelledby="fullpage-left-title"
-      aria-describedby="fullpage-left-content"
-    >
-      <h1
-        id="fullpage-left-title"
-        className="fullpage-left-title"
-        data-l10n-id="onboarding-welcome-body"
-      />
-      <p
-        id="fullpage-left-content"
-        className="fullpage-left-content"
-        data-l10n-id="onboarding-benefit-products-text"
-      />
-      <p
-        className="fullpage-left-content"
-        data-l10n-id="onboarding-benefit-privacy-text"
-      />
-      <a
-        className="fullpage-left-link"
-        href={addUtmParams(url, UTMTerm)}
-        target="_blank"
-        rel="noopener noreferrer"
-        data-l10n-id="onboarding-welcome-learn-more"
-      />
-      <div className="fullpage-icon fx-systems-icons" />
-    </div>
-    <div className="fullpage-form">
-      <FxASignupForm
-        document={document}
-        content={content}
-        dispatch={dispatch}
-        fxaEndpoint={fxaEndpoint}
-        UTMTerm={UTMTerm}
-        flowParams={flowParams}
-        onClose={removeOverlay}
-        showSignInLink={true}
-      />
-    </div>
-  </React.Fragment>
-);
-
-export const FxCards = ({ cards, onCardAction, sendUserActionTelemetry }) => (
-  <React.Fragment>
-    {cards.map(card => (
-      <OnboardingCard
-        key={card.id}
-        message={card}
-        className="trailheadCard"
-        sendUserActionTelemetry={sendUserActionTelemetry}
-        onAction={onCardAction}
-        UISurface="TRAILHEAD"
-        {...card}
-      />
-    ))}
-  </React.Fragment>
-);
-
-export class FullPageInterrupt extends React.PureComponent {
-  constructor(props) {
-    super(props);
-    this.removeOverlay = this.removeOverlay.bind(this);
-    this.onCardAction = this.onCardAction.bind(this);
-  }
-
-  componentWillMount() {
-    global.document.body.classList.add("trailhead-fullpage");
-  }
-
-  componentDidMount() {
-    // Hide the page content from screen readers while the full page interrupt is open
-    this.props.document
-      .getElementById("root")
-      .setAttribute("aria-hidden", "true");
-  }
-
-  removeOverlay() {
-    window.removeEventListener("visibilitychange", this.removeOverlay);
-    document.body.classList.remove("hide-main", "trailhead-fullpage");
-    // Re-enable the document for screen readers
-    this.props.document
-      .getElementById("root")
-      .setAttribute("aria-hidden", "false");
-
-    this.props.onBlock();
-    document.body.classList.remove("welcome");
-  }
-
-  onCardAction(action, message) {
-    let actionUpdates = {};
-    const { flowParams, UTMTerm } = this.props;
-
-    if (action.type === "OPEN_URL") {
-      let url = new URL(action.data.args);
-      addUtmParams(url, UTMTerm);
-
-      if (action.addFlowParams) {
-        url.searchParams.append("device_id", flowParams.deviceId);
-        url.searchParams.append("flow_id", flowParams.flowId);
-        url.searchParams.append("flow_begin_time", flowParams.flowBeginTime);
-      }
-
-      actionUpdates = { data: { ...action.data, args: url.toString() } };
-    }
-
-    this.props.onAction({ ...action, ...actionUpdates });
-    // Only block if message is in dynamic triplets experiment
-    if (message.blockOnClick) {
-      this.props.onBlockById(message.id, { preloadedOnly: true });
-    }
-    this.removeOverlay();
-  }
-
-  render() {
-    const { props } = this;
-    const { content } = props.message;
-    const cards = (
-      <FxCards
-        cards={props.cards}
-        onCardAction={this.onCardAction}
-        sendUserActionTelemetry={props.sendUserActionTelemetry}
-      />
-    );
-
-    const accounts = (
-      <FxAccounts
-        document={props.document}
-        content={content}
-        dispatch={props.dispatch}
-        fxaEndpoint={props.fxaEndpoint}
-        flowParams={props.flowParams}
-        removeOverlay={this.removeOverlay}
-        url={content.learn.url}
-        UTMTerm={props.UTMTerm}
-      />
-    );
-
-    // By default we show accounts section on top and
-    // cards section in bottom half of the full page interrupt
-    const cardsFirst = content && content.className === "fullPageCardsAtTop";
-    const firstContainerClassName = [
-      "container",
-      content && content.className,
-    ].join(" ");
-    return (
-      <div className="fullpage-wrapper">
-        <div className="fullpage-icon brand-logo" />
-        <h1
-          className="welcome-title"
-          data-l10n-id="onboarding-welcome-header"
-        />
-        <h2
-          className="welcome-subtitle"
-          data-l10n-id="onboarding-fullpage-welcome-subheader"
-        />
-        <div className={firstContainerClassName}>
-          {cardsFirst ? cards : accounts}
-        </div>
-        <div className="section-divider" />
-        <div className="container">{cardsFirst ? accounts : cards}</div>
-      </div>
-    );
-  }
-}
-
-FullPageInterrupt.defaultProps = {
-  flowParams: { deviceId: "", flowId: "", flowBeginTime: "" },
-};
deleted file mode 100644
--- a/browser/components/newtab/content-src/asrouter/templates/FullPageInterrupt/_FullPageInterrupt.scss
+++ /dev/null
@@ -1,258 +0,0 @@
-.activity-stream {
-  &.welcome {
-    overflow: hidden;
-  }
-
-  &:not(.welcome) {
-    .fullpage-wrapper {
-      display: none;
-    }
-  }
-}
-
-.fullpage-wrapper {
-  $responsive-breakpoint: 975px;
-  $responsive-width: 300px;
-  $header-size: 36px;
-  $form-text-size: 16px;
-
-  align-content: center;
-  display: flex;
-  flex-direction: column;
-  overflow-x: auto;
-  position: absolute;
-  top: 0;
-  left: 0;
-  width: 100vw;
-  height: 100vh;
-  z-index: 21000;
-  background-color: $ghost-white;
-
-  + div {
-    opacity: 0;
-  }
-
-  .fullpage-icon {
-    background-position-x: left;
-    background-repeat: no-repeat;
-    background-size: contain;
-
-    &:dir(rtl) {
-      background-position-x: right;
-    }
-
-    @media screen and (max-width: $responsive-breakpoint) {
-      background-position: center;
-    }
-  }
-
-  .brand-logo {
-    background-image: url('chrome://branding/content/about-logo.png');
-    margin: 20px 10px 10px 20px;
-    padding-bottom: 50px;
-  }
-
-  .welcome-title,
-  .welcome-subtitle {
-    align-self: center;
-    margin: 0;
-    @media screen and (max-width: $responsive-breakpoint) {
-      text-align: center;
-    }
-  }
-
-  .welcome-title {
-    color: $trailhead-purple-80;
-    font-size: 46px;
-    font-weight: 600;
-    line-height: 62px;
-  }
-
-  .welcome-subtitle {
-    color: $trailhead-violet;
-    font-size: 20px;
-    line-height: 27px;
-  }
-
-  .container {
-    display: flex;
-    align-self: center;
-    padding: 50px 0;
-
-    @media screen and (max-width: $responsive-breakpoint) {
-      flex-direction: column;
-      width: $responsive-width;
-      text-align: center;
-    }
-  }
-
-  .fullpage-left-section {
-    position: relative;
-    width: 538px;
-    font-size: 18px;
-    line-height: 30px;
-
-    @media screen and (max-width: $responsive-breakpoint) {
-      width: $responsive-width;
-    }
-
-    .fullpage-left-content {
-      color: $grey-60;
-      display: inline;
-      margin: 0;
-      margin-inline-end: 2px;
-    }
-
-    .fullpage-left-link {
-      color: $blue-60;
-      display: block;
-      text-decoration: underline;
-      margin-bottom: 30px;
-
-      &:hover,
-      &:active,
-      &:focus {
-        color: $blue-60;
-      }
-    }
-
-    .fullpage-left-title {
-      margin: 0;
-      color: $trailhead-purple-80;
-      font-size: $header-size;
-      line-height: 48px;
-    }
-
-    .fx-systems-icons {
-      height: 33px;
-      display: block;
-      background-image: url('#{$image-path}trailhead/firefox-systems.png');
-      margin-bottom: 20px;
-    }
-  }
-
-  .fullpage-form {
-    position: relative;
-    text-align: center;
-    margin-inline-start: $header-size;
-
-    @media screen and (max-width: $responsive-breakpoint) {
-      margin-inline-start: 0;
-    }
-
-    .fxaSignupForm {
-      width: 356px;
-      padding: 25px;
-      box-shadow: 0 0 16px 0 $black-15;
-      border-radius: 6px;
-      background: $white;
-    }
-
-    .fxa-terms {
-      margin: 4px 0 20px;
-
-      a,
-      & {
-        color: $grey-60;
-        font-size: 12px;
-        line-height: $form-text-size;
-      }
-    }
-
-    .fxa-signin {
-      color: $grey-60;
-      line-height: 30px;
-      opacity: 0.77;
-
-      button {
-        color: $blue-60;
-      }
-    }
-
-    h3 {
-      color: $trailhead-purple-80;
-      font-weight: 400;
-      font-size: $header-size;
-      line-height: $header-size;
-      margin: 0;
-      padding: 8px;
-    }
-
-    h3 + p {
-      color: $grey-60;
-      font-size: $form-text-size;
-      line-height: 20px;
-      opacity: 0.77;
-    }
-
-    input {
-      background: $white;
-      border: 1px solid $grey-30;
-      border-radius: 2px;
-
-      &:hover {
-        border-color: $grey-50;
-      }
-
-      &.invalid {
-        border-color: $red-60;
-      }
-    }
-
-    button {
-      color: $white;
-      font-size: $form-text-size;
-
-      &:focus {
-        outline: dotted 1px $grey-50;
-      }
-    }
-  }
-
-  .section-divider::after {
-    content: '';
-    display: block;
-    border-bottom: 0.5px solid $grey-30;
-  }
-
-  .trailheadCard {
-    box-shadow: none;
-    background: none;
-    text-align: center;
-    width: 320px;
-    padding: 18px;
-
-    .onboardingTitle {
-      color: $grey-90;
-    }
-
-    .onboardingText {
-      font-weight: normal;
-      color: $grey-60;
-      margin-top: 4px;
-    }
-
-    .onboardingButton {
-      color: $grey-60;
-      background: $grey-90-10;
-
-      &:focus,
-      &:hover {
-        background: $grey-90-20;
-      }
-
-      &:active {
-        background: $grey-90-30;
-      }
-    }
-
-    .onboardingMessageImage {
-      height: 112px;
-      width: 154px;
-    }
-
-    @media screen and (max-width: $responsive-breakpoint) {
-      width: $responsive-width;
-    }
-  }
-}
--- a/browser/components/newtab/content-src/asrouter/templates/OnboardingMessage/_OnboardingMessage.scss
+++ b/browser/components/newtab/content-src/asrouter/templates/OnboardingMessage/_OnboardingMessage.scss
@@ -109,17 +109,16 @@
     }
   }
 
   &:last-child::before {
     content: none;
   }
 }
 
-// Also used for Trailhead
 .onboardingMessageImage {
   height: 112px;
   width: 180px;
   background-size: auto 140px;
   background-position: center center;
   background-repeat: no-repeat;
   display: inline-block;
 
deleted file mode 100644
--- a/browser/components/newtab/content-src/asrouter/templates/ReturnToAMO/ReturnToAMO.jsx
+++ /dev/null
@@ -1,106 +0,0 @@
-/* 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/. */
-
-import React from "react";
-import { RichText } from "../../components/RichText/RichText";
-
-// Alt text if available; in the future this should come from the server. See bug 1551711
-const ICON_ALT_TEXT = "";
-
-export class ReturnToAMO extends React.PureComponent {
-  constructor(props) {
-    super(props);
-    this.onClickAddExtension = this.onClickAddExtension.bind(this);
-    this.onBlockButton = this.onBlockButton.bind(this);
-  }
-
-  componentWillMount() {
-    global.document.body.classList.add("amo");
-  }
-
-  componentDidMount() {
-    this.props.sendUserActionTelemetry({
-      event: "IMPRESSION",
-      id: this.props.UISurface,
-    });
-    // Hide the page content from screen readers while the modal is open
-    this.props.document
-      .getElementById("root")
-      .setAttribute("aria-hidden", "true");
-  }
-
-  onClickAddExtension() {
-    this.props.onAction(this.props.content.primary_button.action);
-    this.props.sendUserActionTelemetry({
-      event: "INSTALL",
-      id: this.props.UISurface,
-    });
-  }
-
-  onBlockButton() {
-    this.props.onBlock();
-    document.body.classList.remove("welcome", "hide-main", "amo");
-    this.props.sendUserActionTelemetry({
-      event: "BLOCK",
-      id: this.props.UISurface,
-    });
-    // Re-enable the document for screen readers
-    this.props.document
-      .getElementById("root")
-      .setAttribute("aria-hidden", "false");
-  }
-
-  renderText() {
-    const customElement = (
-      <img
-        src={this.props.content.addon_icon}
-        width="20px"
-        height="20px"
-        alt={ICON_ALT_TEXT}
-      />
-    );
-    return (
-      <RichText
-        customElements={{ icon: customElement }}
-        amo_html={this.props.content.text}
-        localization_id="amo_html"
-      />
-    );
-  }
-
-  render() {
-    const { content } = this.props;
-    return (
-      <div className="ReturnToAMOOverlay">
-        <div>
-          <h2> {content.header} </h2>
-          <div className="ReturnToAMOContainer">
-            <div className="ReturnToAMOAddonContents">
-              <p> {content.title} </p>
-              <div className="ReturnToAMOText">
-                <span> {this.renderText()} </span>
-              </div>
-              <button
-                onClick={this.onClickAddExtension}
-                className="puffy blue ReturnToAMOAddExtension"
-              >
-                {" "}
-                <span className="icon icon-add" />{" "}
-                {content.primary_button.label}{" "}
-              </button>
-            </div>
-            <div className="ReturnToAMOIcon" />
-          </div>
-          <button
-            onClick={this.onBlockButton}
-            className="default grey ReturnToAMOGetStarted"
-          >
-            {" "}
-            {content.secondary_button.label}{" "}
-          </button>
-        </div>
-      </div>
-    );
-  }
-}
deleted file mode 100644
--- a/browser/components/newtab/content-src/asrouter/templates/ReturnToAMO/_ReturnToAMO.scss
+++ /dev/null
@@ -1,125 +0,0 @@
-.ReturnToAMOOverlay,
-.amo + body.hide-main {  // sass-lint:disable-line no-qualifying-elements
-  background: $grey-10;
-  height: 100%;
-  position: fixed;
-  top: 0;
-  width: 100%;
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  z-index: 2100;
-
-  .ReturnToAMOText {
-    color: $grey-90;
-    line-height: 32px;
-    font-size: 23px;
-    width: 100%;
-
-    img {
-      margin-inline-start: 6px;
-      margin-inline-end: 6px;
-    }
-  }
-
-  h2 {
-    color: $grey-60;
-    font-weight: 100;
-    margin: 0 0 36px;
-    font-size: 36px;
-    line-height: 48px;
-    letter-spacing: 1.2px;
-  }
-
-  p {
-    color: $grey-60;
-    font-size: 14px;
-    line-height: 18px;
-    margin-bottom: 16px;
-  }
-
-  .puffy {
-    border-radius: 4px;
-    height: 48px;
-    padding: 0 16px;
-    font-size: 15px;
-  }
-
-  .blue {
-    border: 0;
-    color: $white;
-    background-color: $blue-60;
-
-    &:hover {
-      box-shadow: none;
-      background-color: $blue-70;
-    }
-
-    &:active {
-      background-color: $blue-80;
-    }
-  }
-
-  .default {
-    border-radius: 2px;
-    height: 40px;
-    padding: 0 12px;
-    font-size: 15px;
-  }
-
-  .grey {
-    border: 0;
-    background-color: $grey-90-10;
-
-    &:hover {
-      box-shadow: none;
-      background-color: $grey-90-20;
-    }
-
-    &:active {
-      background-color: $grey-90-30;
-    }
-  }
-
-  .ReturnToAMOGetStarted {
-    margin-top: 40px;
-    float: right;
-
-    &:dir(rtl) {
-      float: left;
-    }
-  }
-
-  .ReturnToAMOAddExtension {
-    margin-top: 20px;
-  }
-
-  .ReturnToAMOContainer {
-    width: 960px;
-    background: $white;
-    box-shadow: 0 1px 15px 0 $black-30;
-    border-radius: 4px;
-    display: flex;
-    padding: 64px 64px 72px;
-  }
-
-  .ReturnToAMOAddonContents {
-    width: 560px;
-    margin-top: 32px;
-    margin-inline-end: 24px;
-  }
-
-  .ReturnToAMOIcon {
-    width: 292px;
-    height: 254px;
-    background-size: 292px 254px;
-    background-position: center center;
-    background-repeat: no-repeat;
-    background-image: url('chrome://activity-stream/content/data/content/assets/gift-extension.svg');
-  }
-
-  .icon-add {
-    fill: $white;
-    vertical-align: sub;
-  }
-}
deleted file mode 100644
--- a/browser/components/newtab/content-src/asrouter/templates/Trailhead/Trailhead.jsx
+++ /dev/null
@@ -1,148 +0,0 @@
-/* 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/. */
-
-import { actionCreators as ac } from "common/Actions.jsm";
-import { ModalOverlayWrapper } from "../../components/ModalOverlay/ModalOverlay";
-import { FxASignupForm } from "../../components/FxASignupForm/FxASignupForm";
-import { addUtmParams } from "../FirstRun/addUtmParams";
-import React from "react";
-
-// From resource://devtools/client/shared/focus.js
-const FOCUSABLE_SELECTOR = [
-  "a[href]:not([tabindex='-1'])",
-  "button:not([disabled]):not([tabindex='-1'])",
-  "iframe:not([tabindex='-1'])",
-  "input:not([disabled]):not([tabindex='-1'])",
-  "select:not([disabled]):not([tabindex='-1'])",
-  "textarea:not([disabled]):not([tabindex='-1'])",
-  "[tabindex]:not([tabindex='-1'])",
-].join(", ");
-
-export class Trailhead extends React.PureComponent {
-  constructor(props) {
-    super(props);
-    this.closeModal = this.closeModal.bind(this);
-    this.onStartBlur = this.onStartBlur.bind(this);
-  }
-
-  get dialog() {
-    return this.props.document.getElementById("trailheadDialog");
-  }
-
-  componentDidMount() {
-    // We need to remove hide-main since we should show it underneath everything that has rendered
-    this.props.document.body.classList.remove("hide-main");
-
-    // The rest of the page is "hidden" to screen readers when the modal is open
-    this.props.document
-      .getElementById("root")
-      .setAttribute("aria-hidden", "true");
-  }
-
-  onStartBlur(event) {
-    // Make sure focus stays within the dialog when tabbing from the button
-    const { dialog } = this;
-    if (
-      event.relatedTarget &&
-      !(
-        dialog.compareDocumentPosition(event.relatedTarget) &
-        dialog.DOCUMENT_POSITION_CONTAINED_BY
-      )
-    ) {
-      dialog.querySelector(FOCUSABLE_SELECTOR).focus();
-    }
-  }
-
-  closeModal(ev) {
-    global.removeEventListener("visibilitychange", this.closeModal);
-    this.props.document.body.classList.remove("welcome");
-    this.props.document.getElementById("root").removeAttribute("aria-hidden");
-    this.props.onNextScene();
-
-    // If closeModal() was triggered by a visibilitychange event, the user actually
-    // submitted the email form so we don't send a SKIPPED_SIGNIN ping.
-    if (!ev || ev.type !== "visibilitychange") {
-      this.props.dispatch(
-        ac.UserEvent({ event: "SKIPPED_SIGNIN", ...this._getFormInfo() })
-      );
-    }
-
-    // Bug 1190882 - Focus in a disappearing dialog confuses screen readers
-    this.props.document.activeElement.blur();
-  }
-
-  /**
-   * Report to telemetry additional information about the form submission.
-   */
-  _getFormInfo() {
-    const value = { has_flow_params: !!this.props.flowParams.flowId.length };
-    return { value };
-  }
-
-  render() {
-    const { props } = this;
-    const { UTMTerm } = props;
-    const { content } = props.message;
-    const innerClassName = ["trailhead", content && content.className]
-      .filter(v => v)
-      .join(" ");
-
-    return (
-      <ModalOverlayWrapper
-        innerClassName={innerClassName}
-        onClose={this.closeModal}
-        id="trailheadDialog"
-        headerId="trailheadHeader"
-        hasDismissIcon={true}
-      >
-        <div className="trailheadInner">
-          <div className="trailheadContent">
-            <h1 data-l10n-id={content.title.string_id} id="trailheadHeader" />
-            {content.subtitle && (
-              <p data-l10n-id={content.subtitle.string_id} />
-            )}
-            <ul className="trailheadBenefits">
-              {content.benefits.map(item => (
-                <li key={item.id} className={item.id}>
-                  <h2 data-l10n-id={item.title.string_id} />
-                  <p data-l10n-id={item.text.string_id} />
-                </li>
-              ))}
-            </ul>
-            <a
-              className="trailheadLearn"
-              data-l10n-id={content.learn.text.string_id}
-              href={addUtmParams(content.learn.url, UTMTerm)}
-              target="_blank"
-              rel="noopener noreferrer"
-            />
-          </div>
-          <div className="trailhead-join-form">
-            <FxASignupForm
-              document={this.props.document}
-              content={content}
-              dispatch={this.props.dispatch}
-              fxaEndpoint={this.props.fxaEndpoint}
-              UTMTerm={UTMTerm}
-              flowParams={this.props.flowParams}
-              onClose={this.closeModal}
-              showSignInLink={true}
-            />
-          </div>
-        </div>
-
-        <button
-          className="trailheadStart"
-          data-l10n-id={content.skipButton.string_id}
-          onBlur={this.onStartBlur}
-          onClick={this.closeModal}
-        />
-      </ModalOverlayWrapper>
-    );
-  }
-}
-
-Trailhead.defaultProps = {
-  flowParams: { deviceId: "", flowId: "", flowBeginTime: "" },
-};
--- a/browser/components/newtab/content-src/components/ASRouterAdmin/ASRouterAdmin.jsx
+++ b/browser/components/newtab/content-src/components/ASRouterAdmin/ASRouterAdmin.jsx
@@ -511,17 +511,17 @@ export class ASRouterAdminInner extends 
     this.resetGroups = this.resetGroups.bind(this);
     this.state = {
       messageFilter: "all",
       messageGroupsFilter: "all",
       WNMessages: [],
       collapsedMessages: [],
       modifiedMessages: [],
       evaluationStatus: {},
-      trailhead: {},
+      trailheadTriplet: "",
       stringTargetingParameters: null,
       newStringTargetingParameters: null,
       copiedToClipboard: false,
       pasteFromClipboard: false,
       attributionParameters: {
         source: "addons.mozilla.org",
         medium: "referral",
         campaign: "non-fx-button",
@@ -1619,27 +1619,22 @@ export class ASRouterAdminInner extends 
         </table>
       );
     }
 
     return <p>No errors</p>;
   }
 
   renderTrailheadInfo() {
-    const { trailheadInterrupt, trailheadTriplet } = this.state.trailhead;
     return (
       <table className="minimal-table">
         <tbody>
           <tr>
-            <td>Interrupt branch</td>
-            <td>{trailheadInterrupt}</td>
-          </tr>
-          <tr>
             <td>Triplet branch</td>
-            <td>{trailheadTriplet}</td>
+            <td>{this.state.trailheadTriplet}</td>
           </tr>
         </tbody>
       </table>
     );
   }
 
   renderWNPTests() {
     if (!this.state.messages) {
--- a/browser/components/newtab/content-src/components/Base/Base.jsx
+++ b/browser/components/newtab/content-src/components/Base/Base.jsx
@@ -37,37 +37,29 @@ function debounce(func, wait) {
     };
 
     timer = setTimeout(wakeUp, wait);
     func.apply(this, args);
   };
 }
 
 export class _Base extends React.PureComponent {
-  componentWillMount() {
-    if (this.props.isFirstrun) {
-      global.document.body.classList.add("welcome", "hide-main");
-    }
-  }
-
   componentWillUnmount() {
     this.updateTheme();
   }
 
   componentWillUpdate() {
     this.updateTheme();
   }
 
   updateTheme() {
     const bodyClassName = [
       "activity-stream",
       // If we skipped the about:welcome overlay and removed the CSS classes
       // we don't want to add them back to the Activity Stream view
-      document.body.classList.contains("welcome") ? "welcome" : "",
-      document.body.classList.contains("hide-main") ? "hide-main" : "",
       document.body.classList.contains("inline-onboarding")
         ? "inline-onboarding"
         : "",
     ]
       .filter(v => v)
       .join(" ");
     global.document.body.className = bodyClassName;
   }
--- a/browser/components/newtab/content-src/styles/_activity-stream.scss
+++ b/browser/components/newtab/content-src/styles/_activity-stream.scss
@@ -167,17 +167,14 @@ input {
 @import '../components/DiscoveryStreamComponents/DSTextPromo/DSTextPromo';
 @import '../components/DiscoveryStreamComponents/DSSignup/DSSignup';
 @import '../components/DiscoveryStreamComponents/DSPrivacyModal/DSPrivacyModal';
 
 // AS Router
 @import '../asrouter/components/Button/Button';
 @import '../asrouter/components/SnippetBase/SnippetBase';
 @import '../asrouter/components/ModalOverlay/ModalOverlay';
-@import '../asrouter/templates/ReturnToAMO/ReturnToAMO';
 @import '../asrouter/templates/SimpleBelowSearchSnippet/SimpleBelowSearchSnippet';
 @import '../asrouter/templates/SimpleSnippet/SimpleSnippet';
 @import '../asrouter/templates/SubmitFormSnippet/SubmitFormSnippet';
 @import '../asrouter/templates/OnboardingMessage/OnboardingMessage';
+@import '../asrouter/templates/FirstRun/Triplets';
 @import '../asrouter/templates/EOYSnippet/EOYSnippet';
-@import '../asrouter/components/FxASignupForm/FxASignupForm';
-@import '../asrouter/templates/Trailhead/Trailhead';
-@import '../asrouter/templates/FullPageInterrupt/FullPageInterrupt';
--- a/browser/components/newtab/css/activity-stream-linux.css
+++ b/browser/components/newtab/css/activity-stream-linux.css
@@ -3602,122 +3602,16 @@ body[lwt-newtab-brighttext] .scene2Icon 
       min-width: 150px;
       height: 30px;
       padding: 4px 30px 6px;
       font-size: 15px; }
       .modalOverlayInner .footer .modalButton:focus, .modalOverlayInner .footer .modalButton.active, .modalOverlayInner .footer .modalButton:hover {
         box-shadow: 0 0 0 5px #D7D7DB;
         transition: box-shadow 150ms; }
 
-.ReturnToAMOOverlay,
-.amo + body.hide-main {
-  background: #F9F9FA;
-  height: 100%;
-  position: fixed;
-  top: 0;
-  width: 100%;
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  z-index: 2100; }
-  .ReturnToAMOOverlay .ReturnToAMOText,
-  .amo + body.hide-main .ReturnToAMOText {
-    color: #0C0C0D;
-    line-height: 32px;
-    font-size: 23px;
-    width: 100%; }
-    .ReturnToAMOOverlay .ReturnToAMOText img,
-    .amo + body.hide-main .ReturnToAMOText img {
-      margin-inline-start: 6px;
-      margin-inline-end: 6px; }
-  .ReturnToAMOOverlay h2,
-  .amo + body.hide-main h2 {
-    color: #4A4A4F;
-    font-weight: 100;
-    margin: 0 0 36px;
-    font-size: 36px;
-    line-height: 48px;
-    letter-spacing: 1.2px; }
-  .ReturnToAMOOverlay p,
-  .amo + body.hide-main p {
-    color: #4A4A4F;
-    font-size: 14px;
-    line-height: 18px;
-    margin-bottom: 16px; }
-  .ReturnToAMOOverlay .puffy,
-  .amo + body.hide-main .puffy {
-    border-radius: 4px;
-    height: 48px;
-    padding: 0 16px;
-    font-size: 15px; }
-  .ReturnToAMOOverlay .blue,
-  .amo + body.hide-main .blue {
-    border: 0;
-    color: #FFF;
-    background-color: #0060DF; }
-    .ReturnToAMOOverlay .blue:hover,
-    .amo + body.hide-main .blue:hover {
-      box-shadow: none;
-      background-color: #003EAA; }
-    .ReturnToAMOOverlay .blue:active,
-    .amo + body.hide-main .blue:active {
-      background-color: #002275; }
-  .ReturnToAMOOverlay .default,
-  .amo + body.hide-main .default {
-    border-radius: 2px;
-    height: 40px;
-    padding: 0 12px;
-    font-size: 15px; }
-  .ReturnToAMOOverlay .grey,
-  .amo + body.hide-main .grey {
-    border: 0;
-    background-color: rgba(12, 12, 13, 0.1); }
-    .ReturnToAMOOverlay .grey:hover,
-    .amo + body.hide-main .grey:hover {
-      box-shadow: none;
-      background-color: rgba(12, 12, 13, 0.2); }
-    .ReturnToAMOOverlay .grey:active,
-    .amo + body.hide-main .grey:active {
-      background-color: rgba(12, 12, 13, 0.3); }
-  .ReturnToAMOOverlay .ReturnToAMOGetStarted,
-  .amo + body.hide-main .ReturnToAMOGetStarted {
-    margin-top: 40px;
-    float: right; }
-    .ReturnToAMOOverlay .ReturnToAMOGetStarted:dir(rtl),
-    .amo + body.hide-main .ReturnToAMOGetStarted:dir(rtl) {
-      float: left; }
-  .ReturnToAMOOverlay .ReturnToAMOAddExtension,
-  .amo + body.hide-main .ReturnToAMOAddExtension {
-    margin-top: 20px; }
-  .ReturnToAMOOverlay .ReturnToAMOContainer,
-  .amo + body.hide-main .ReturnToAMOContainer {
-    width: 960px;
-    background: #FFF;
-    box-shadow: 0 1px 15px 0 rgba(0, 0, 0, 0.3);
-    border-radius: 4px;
-    display: flex;
-    padding: 64px 64px 72px; }
-  .ReturnToAMOOverlay .ReturnToAMOAddonContents,
-  .amo + body.hide-main .ReturnToAMOAddonContents {
-    width: 560px;
-    margin-top: 32px;
-    margin-inline-end: 24px; }
-  .ReturnToAMOOverlay .ReturnToAMOIcon,
-  .amo + body.hide-main .ReturnToAMOIcon {
-    width: 292px;
-    height: 254px;
-    background-size: 292px 254px;
-    background-position: center center;
-    background-repeat: no-repeat;
-    background-image: url("chrome://activity-stream/content/data/content/assets/gift-extension.svg"); }
-  .ReturnToAMOOverlay .icon-add,
-  .amo + body.hide-main .icon-add {
-    fill: #FFF;
-    vertical-align: sub; }
-
 .below-search-snippet {
   margin: 0 auto 16px; }
   .below-search-snippet.withButton {
     margin: auto;
     min-height: 60px;
     background-color: transparent; }
     .below-search-snippet.withButton .snippet-hover-wrapper {
       min-height: 60px;
@@ -4184,243 +4078,16 @@ body[lwt-newtab-brighttext] .scene2Icon 
   background-repeat: no-repeat;
   display: inline-block; }
   @media (max-width: 865px) {
     .onboardingMessageImage {
       height: 75px;
       min-width: 80px;
       background-size: 140px; } }
 
-.EOYSnippetForm {
-  margin: 10px 0 8px;
-  align-self: start;
-  font-size: 14px;
-  display: flex;
-  align-items: center; }
-  .EOYSnippetForm .donation-amount,
-  .EOYSnippetForm .donation-form-url {
-    white-space: nowrap;
-    font-size: 14px;
-    padding: 8px 20px;
-    border-radius: 2px; }
-  .EOYSnippetForm .donation-amount {
-    color: #0C0C0D;
-    margin-inline-end: 18px;
-    border: 1px solid #B1B1B3;
-    padding: 5px 14px;
-    background: #F9F9FA;
-    cursor: pointer; }
-  .EOYSnippetForm input[type='radio'] {
-    opacity: 0;
-    margin-inline-end: -18px; }
-    .EOYSnippetForm input[type='radio']:checked + .donation-amount {
-      background: #737373;
-      color: #FFF;
-      border: 1px solid #4A4A4F; }
-    .EOYSnippetForm input[type='radio']:checked:focus + .donation-amount,
-    .EOYSnippetForm input[type='radio']:not(:checked):focus + .donation-amount {
-      border: 1px dotted var(--newtab-link-primary-color); }
-  .EOYSnippetForm .monthly-checkbox-container {
-    display: flex;
-    width: 100%; }
-  .EOYSnippetForm .donation-form-url {
-    margin-inline-start: 18px;
-    align-self: flex-end;
-    display: flex; }
-
-.fxaSignupForm {
-  min-width: 260px;
-  text-align: center; }
-  .fxaSignupForm a {
-    color: #FFF;
-    text-decoration: underline; }
-  .fxaSignupForm input,
-  .fxaSignupForm button {
-    border-radius: 4px;
-    padding: 10px; }
-  .fxaSignupForm h3 {
-    font-size: 36px;
-    font-weight: 200;
-    line-height: 46px;
-    margin: 12px 0 4px; }
-  .fxaSignupForm p {
-    font-size: 15px;
-    line-height: 22px;
-    margin: 0 0 20px; }
-  .fxaSignupForm .fxa-terms {
-    margin: 4px 30px 20px; }
-    .fxaSignupForm .fxa-terms a, .fxaSignupForm .fxa-terms {
-      color: rgba(255, 255, 255, 0.7);
-      font-size: 12px;
-      line-height: 20px; }
-  .fxaSignupForm .fxa-signin {
-    font-size: 16px;
-    margin-top: 19px; }
-    .fxaSignupForm .fxa-signin span {
-      margin-inline-end: 5px; }
-    .fxaSignupForm .fxa-signin button {
-      background-color: initial;
-      text-decoration: underline;
-      color: #FFF;
-      display: inline;
-      padding: 0;
-      width: auto; }
-      .fxaSignupForm .fxa-signin button:hover, .fxaSignupForm .fxa-signin button:focus, .fxaSignupForm .fxa-signin button:active {
-        background-color: initial; }
-  .fxaSignupForm form {
-    position: relative; }
-    .fxaSignupForm form .error.active {
-      inset-inline-start: 0;
-      z-index: 0; }
-  .fxaSignupForm button,
-  .fxaSignupForm input {
-    width: 100%; }
-  .fxaSignupForm input {
-    background-color: #FFF;
-    border: 1px solid #737373;
-    box-shadow: none;
-    color: #38383D;
-    font-size: 15px;
-    transition: border-color 150ms, box-shadow 150ms; }
-    .fxaSignupForm input:hover {
-      border-color: #0C0C0D; }
-    .fxaSignupForm input:focus {
-      border-color: #0A84FF;
-      box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.3); }
-    .fxaSignupForm input.invalid {
-      border-color: #D70022; }
-    .fxaSignupForm input.invalid:focus {
-      box-shadow: 0 0 0 3px rgba(215, 0, 34, 0.3); }
-  .fxaSignupForm button {
-    background-color: #0060DF;
-    border: 0;
-    cursor: pointer;
-    display: block;
-    font-size: 15px;
-    font-weight: 400;
-    padding: 14px; }
-    .fxaSignupForm button:hover, .fxaSignupForm button:focus {
-      background-color: #0250BB; }
-    .fxaSignupForm button:focus {
-      outline: dotted 1px; }
-    .fxaSignupForm button:active {
-      background-color: #054096; }
-
-.trailhead {
-  background: url("chrome://activity-stream/content/data/content/assets/trailhead/accounts-form-bg.jpg") bottom/cover;
-  color: #FFF;
-  height: auto; }
-  .trailhead a {
-    color: #FFF;
-    text-decoration: underline; }
-  .trailhead input,
-  .trailhead button {
-    border-radius: 4px;
-    padding: 10px; }
-  .trailhead .trailheadInner {
-    display: grid;
-    grid-column-gap: 40px;
-    grid-template-columns: 5fr 3fr;
-    padding: 40px 60px; }
-  .trailhead .trailheadContent h1 {
-    font-size: 36px;
-    font-weight: 200;
-    line-height: 46px;
-    margin: 0; }
-  .trailhead .trailheadContent .trailheadLearn {
-    display: block;
-    margin-top: 30px; }
-    @media (min-width: 850px) {
-      .trailhead .trailheadContent .trailheadLearn {
-        margin-inline-start: 74px; } }
-  .trailhead .trailhead-join-form {
-    background: url("chrome://activity-stream/content/data/content/assets/trailhead/firefox-logo.png") top center/100px no-repeat;
-    color: #FFF;
-    min-width: 260px;
-    padding-top: 100px; }
-  .trailhead.syncCohort {
-    left: calc(50% - 430px);
-    width: 860px; }
-    @media (max-width: 860px) {
-      .trailhead.syncCohort {
-        left: 0;
-        width: 100%; } }
-    .trailhead.syncCohort .trailheadInner {
-      grid-template-columns: 4fr 3fr; }
-    .trailhead.syncCohort .trailheadContent .trailheadBenefits {
-      background: url("chrome://activity-stream/content/data/content/assets/sync-devices-trailhead.svg");
-      background-position: center center;
-      background-repeat: no-repeat;
-      background-size: contain;
-      height: 200px;
-      margin-inline-end: 60px; }
-    .trailhead.syncCohort .trailheadContent .trailheadLearn {
-      margin-inline-start: 0; }
-  .trailhead .trailheadBenefits {
-    padding: 0; }
-    .trailhead .trailheadBenefits li {
-      background-position: left 6px;
-      background-repeat: no-repeat;
-      background-size: 40px;
-      -moz-context-properties: fill;
-      fill: #0A84FF;
-      list-style: none;
-      padding-top: 8px; }
-      @media (min-width: 850px) {
-        .trailhead .trailheadBenefits li {
-          background-position-y: 4px;
-          background-size: 62px;
-          margin-inline-end: 60px;
-          padding-inline-start: 74px; } }
-      .trailhead .trailheadBenefits li:dir(rtl) {
-        background-position-x: right; }
-      .trailhead .trailheadBenefits li.knowledge, .trailhead .trailheadBenefits li.monitor {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-knowledge.png"); }
-      .trailhead .trailheadBenefits li.lockwise, .trailhead .trailheadBenefits li.privacy {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-privacy.png"); }
-      .trailhead .trailheadBenefits li.products {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-products.png"); }
-      .trailhead .trailheadBenefits li.sync {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-sync.png"); }
-    .trailhead .trailheadBenefits h2 {
-      text-align: start;
-      line-height: inherit;
-      color: #CB9EFF;
-      font-size: 22px;
-      font-weight: 400;
-      margin: 0 0 4px;
-      padding-inline-start: 52px; }
-      @media (min-width: 850px) {
-        .trailhead .trailheadBenefits h2 {
-          padding-inline-start: 0; } }
-    .trailhead .trailheadBenefits p {
-      color: #FFF;
-      font-size: 15px;
-      line-height: 22px;
-      margin: 4px 0 15px; }
-  .trailhead .trailheadStart {
-    border: 1px solid rgba(255, 255, 255, 0.5);
-    cursor: pointer;
-    display: block;
-    font-size: 15px;
-    font-weight: 400;
-    margin: 0 auto 40px;
-    min-width: 300px;
-    padding: 14px; }
-    .trailhead .trailheadStart:hover, .trailhead .trailheadStart:focus {
-      background-color: #0250BB;
-      border-color: transparent; }
-    .trailhead .trailheadStart:focus {
-      outline: dotted 1px; }
-    .trailhead .trailheadStart:active {
-      background-color: #054096; }
-  .trailhead .trailheadInner,
-  .trailhead .trailheadStart {
-    animation: fadeIn 0.4s; }
-
 .trailheadCards {
   background: var(--trailhead-cards-background-color);
   overflow: hidden;
   text-align: center;
   transition: max-height 0.5s cubic-bezier(0.07, 0.95, 0, 1); }
   @media (min-width: 610px) {
     .trailheadCards {
       max-height: 1000px; } }
@@ -4567,176 +4234,44 @@ body[lwt-newtab-brighttext] .scene2Icon 
 @keyframes fade-down {
   0% {
     opacity: 0;
     transform: translateY(-15px); }
   100% {
     opacity: 1;
     transform: translateY(0); } }
 
-.activity-stream.welcome {
-  overflow: hidden; }
-
-.activity-stream:not(.welcome) .fullpage-wrapper {
-  display: none; }
-
-.fullpage-wrapper {
-  align-content: center;
+.EOYSnippetForm {
+  margin: 10px 0 8px;
+  align-self: start;
+  font-size: 14px;
   display: flex;
-  flex-direction: column;
-  overflow-x: auto;
-  position: absolute;
-  top: 0;
-  left: 0;
-  width: 100vw;
-  height: 100vh;
-  z-index: 21000;
-  background-color: #FAFAFC; }
-  .fullpage-wrapper + div {
-    opacity: 0; }
-  .fullpage-wrapper .fullpage-icon {
-    background-position-x: left;
-    background-repeat: no-repeat;
-    background-size: contain; }
-    .fullpage-wrapper .fullpage-icon:dir(rtl) {
-      background-position-x: right; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-icon {
-        background-position: center; } }
-  .fullpage-wrapper .brand-logo {
-    background-image: url("chrome://branding/content/about-logo.png");
-    margin: 20px 10px 10px 20px;
-    padding-bottom: 50px; }
-  .fullpage-wrapper .welcome-title,
-  .fullpage-wrapper .welcome-subtitle {
-    align-self: center;
-    margin: 0; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .welcome-title,
-      .fullpage-wrapper .welcome-subtitle {
-        text-align: center; } }
-  .fullpage-wrapper .welcome-title {
-    color: #36296D;
-    font-size: 46px;
-    font-weight: 600;
-    line-height: 62px; }
-  .fullpage-wrapper .welcome-subtitle {
-    color: #7542E5;
-    font-size: 20px;
-    line-height: 27px; }
-  .fullpage-wrapper .container {
+  align-items: center; }
+  .EOYSnippetForm .donation-amount,
+  .EOYSnippetForm .donation-form-url {
+    white-space: nowrap;
+    font-size: 14px;
+    padding: 8px 20px;
+    border-radius: 2px; }
+  .EOYSnippetForm .donation-amount {
+    color: #0C0C0D;
+    margin-inline-end: 18px;
+    border: 1px solid #B1B1B3;
+    padding: 5px 14px;
+    background: #F9F9FA;
+    cursor: pointer; }
+  .EOYSnippetForm input[type='radio'] {
+    opacity: 0;
+    margin-inline-end: -18px; }
+    .EOYSnippetForm input[type='radio']:checked + .donation-amount {
+      background: #737373;
+      color: #FFF;
+      border: 1px solid #4A4A4F; }
+    .EOYSnippetForm input[type='radio']:checked:focus + .donation-amount,
+    .EOYSnippetForm input[type='radio']:not(:checked):focus + .donation-amount {
+      border: 1px dotted var(--newtab-link-primary-color); }
+  .EOYSnippetForm .monthly-checkbox-container {
     display: flex;
-    align-self: center;
-    padding: 50px 0; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .container {
-        flex-direction: column;
-        width: 300px;
-        text-align: center; } }
-  .fullpage-wrapper .fullpage-left-section {
-    position: relative;
-    width: 538px;
-    font-size: 18px;
-    line-height: 30px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-left-section {
-        width: 300px; } }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-content {
-      color: #4A4A4F;
-      display: inline;
-      margin: 0;
-      margin-inline-end: 2px; }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-link {
-      color: #0060DF;
-      display: block;
-      text-decoration: underline;
-      margin-bottom: 30px; }
-      .fullpage-wrapper .fullpage-left-section .fullpage-left-link:hover, .fullpage-wrapper .fullpage-left-section .fullpage-left-link:active, .fullpage-wrapper .fullpage-left-section .fullpage-left-link:focus {
-        color: #0060DF; }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-title {
-      margin: 0;
-      color: #36296D;
-      font-size: 36px;
-      line-height: 48px; }
-    .fullpage-wrapper .fullpage-left-section .fx-systems-icons {
-      height: 33px;
-      display: block;
-      background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/firefox-systems.png");
-      margin-bottom: 20px; }
-  .fullpage-wrapper .fullpage-form {
-    position: relative;
-    text-align: center;
-    margin-inline-start: 36px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-form {
-        margin-inline-start: 0; } }
-    .fullpage-wrapper .fullpage-form .fxaSignupForm {
-      width: 356px;
-      padding: 25px;
-      box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15);
-      border-radius: 6px;
-      background: #FFF; }
-    .fullpage-wrapper .fullpage-form .fxa-terms {
-      margin: 4px 0 20px; }
-      .fullpage-wrapper .fullpage-form .fxa-terms a, .fullpage-wrapper .fullpage-form .fxa-terms {
-        color: #4A4A4F;
-        font-size: 12px;
-        line-height: 16px; }
-    .fullpage-wrapper .fullpage-form .fxa-signin {
-      color: #4A4A4F;
-      line-height: 30px;
-      opacity: 0.77; }
-      .fullpage-wrapper .fullpage-form .fxa-signin button {
-        color: #0060DF; }
-    .fullpage-wrapper .fullpage-form h3 {
-      color: #36296D;
-      font-weight: 400;
-      font-size: 36px;
-      line-height: 36px;
-      margin: 0;
-      padding: 8px; }
-    .fullpage-wrapper .fullpage-form h3 + p {
-      color: #4A4A4F;
-      font-size: 16px;
-      line-height: 20px;
-      opacity: 0.77; }
-    .fullpage-wrapper .fullpage-form input {
-      background: #FFF;
-      border: 1px solid #D7D7DB;
-      border-radius: 2px; }
-      .fullpage-wrapper .fullpage-form input:hover {
-        border-color: #737373; }
-      .fullpage-wrapper .fullpage-form input.invalid {
-        border-color: #D70022; }
-    .fullpage-wrapper .fullpage-form button {
-      color: #FFF;
-      font-size: 16px; }
-      .fullpage-wrapper .fullpage-form button:focus {
-        outline: dotted 1px #737373; }
-  .fullpage-wrapper .section-divider::after {
-    content: '';
-    display: block;
-    border-bottom: 0.5px solid #D7D7DB; }
-  .fullpage-wrapper .trailheadCard {
-    box-shadow: none;
-    background: none;
-    text-align: center;
-    width: 320px;
-    padding: 18px; }
-    .fullpage-wrapper .trailheadCard .onboardingTitle {
-      color: #0C0C0D; }
-    .fullpage-wrapper .trailheadCard .onboardingText {
-      font-weight: normal;
-      color: #4A4A4F;
-      margin-top: 4px; }
-    .fullpage-wrapper .trailheadCard .onboardingButton {
-      color: #4A4A4F;
-      background: rgba(12, 12, 13, 0.1); }
-      .fullpage-wrapper .trailheadCard .onboardingButton:focus, .fullpage-wrapper .trailheadCard .onboardingButton:hover {
-        background: rgba(12, 12, 13, 0.2); }
-      .fullpage-wrapper .trailheadCard .onboardingButton:active {
-        background: rgba(12, 12, 13, 0.3); }
-    .fullpage-wrapper .trailheadCard .onboardingMessageImage {
-      height: 112px;
-      width: 154px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .trailheadCard {
-        width: 300px; } }
+    width: 100%; }
+  .EOYSnippetForm .donation-form-url {
+    margin-inline-start: 18px;
+    align-self: flex-end;
+    display: flex; }
--- a/browser/components/newtab/css/activity-stream-mac.css
+++ b/browser/components/newtab/css/activity-stream-mac.css
@@ -3605,122 +3605,16 @@ body[lwt-newtab-brighttext] .scene2Icon 
       min-width: 150px;
       height: 30px;
       padding: 4px 30px 6px;
       font-size: 15px; }
       .modalOverlayInner .footer .modalButton:focus, .modalOverlayInner .footer .modalButton.active, .modalOverlayInner .footer .modalButton:hover {
         box-shadow: 0 0 0 5px #D7D7DB;
         transition: box-shadow 150ms; }
 
-.ReturnToAMOOverlay,
-.amo + body.hide-main {
-  background: #F9F9FA;
-  height: 100%;
-  position: fixed;
-  top: 0;
-  width: 100%;
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  z-index: 2100; }
-  .ReturnToAMOOverlay .ReturnToAMOText,
-  .amo + body.hide-main .ReturnToAMOText {
-    color: #0C0C0D;
-    line-height: 32px;
-    font-size: 23px;
-    width: 100%; }
-    .ReturnToAMOOverlay .ReturnToAMOText img,
-    .amo + body.hide-main .ReturnToAMOText img {
-      margin-inline-start: 6px;
-      margin-inline-end: 6px; }
-  .ReturnToAMOOverlay h2,
-  .amo + body.hide-main h2 {
-    color: #4A4A4F;
-    font-weight: 100;
-    margin: 0 0 36px;
-    font-size: 36px;
-    line-height: 48px;
-    letter-spacing: 1.2px; }
-  .ReturnToAMOOverlay p,
-  .amo + body.hide-main p {
-    color: #4A4A4F;
-    font-size: 14px;
-    line-height: 18px;
-    margin-bottom: 16px; }
-  .ReturnToAMOOverlay .puffy,
-  .amo + body.hide-main .puffy {
-    border-radius: 4px;
-    height: 48px;
-    padding: 0 16px;
-    font-size: 15px; }
-  .ReturnToAMOOverlay .blue,
-  .amo + body.hide-main .blue {
-    border: 0;
-    color: #FFF;
-    background-color: #0060DF; }
-    .ReturnToAMOOverlay .blue:hover,
-    .amo + body.hide-main .blue:hover {
-      box-shadow: none;
-      background-color: #003EAA; }
-    .ReturnToAMOOverlay .blue:active,
-    .amo + body.hide-main .blue:active {
-      background-color: #002275; }
-  .ReturnToAMOOverlay .default,
-  .amo + body.hide-main .default {
-    border-radius: 2px;
-    height: 40px;
-    padding: 0 12px;
-    font-size: 15px; }
-  .ReturnToAMOOverlay .grey,
-  .amo + body.hide-main .grey {
-    border: 0;
-    background-color: rgba(12, 12, 13, 0.1); }
-    .ReturnToAMOOverlay .grey:hover,
-    .amo + body.hide-main .grey:hover {
-      box-shadow: none;
-      background-color: rgba(12, 12, 13, 0.2); }
-    .ReturnToAMOOverlay .grey:active,
-    .amo + body.hide-main .grey:active {
-      background-color: rgba(12, 12, 13, 0.3); }
-  .ReturnToAMOOverlay .ReturnToAMOGetStarted,
-  .amo + body.hide-main .ReturnToAMOGetStarted {
-    margin-top: 40px;
-    float: right; }
-    .ReturnToAMOOverlay .ReturnToAMOGetStarted:dir(rtl),
-    .amo + body.hide-main .ReturnToAMOGetStarted:dir(rtl) {
-      float: left; }
-  .ReturnToAMOOverlay .ReturnToAMOAddExtension,
-  .amo + body.hide-main .ReturnToAMOAddExtension {
-    margin-top: 20px; }
-  .ReturnToAMOOverlay .ReturnToAMOContainer,
-  .amo + body.hide-main .ReturnToAMOContainer {
-    width: 960px;
-    background: #FFF;
-    box-shadow: 0 1px 15px 0 rgba(0, 0, 0, 0.3);
-    border-radius: 4px;
-    display: flex;
-    padding: 64px 64px 72px; }
-  .ReturnToAMOOverlay .ReturnToAMOAddonContents,
-  .amo + body.hide-main .ReturnToAMOAddonContents {
-    width: 560px;
-    margin-top: 32px;
-    margin-inline-end: 24px; }
-  .ReturnToAMOOverlay .ReturnToAMOIcon,
-  .amo + body.hide-main .ReturnToAMOIcon {
-    width: 292px;
-    height: 254px;
-    background-size: 292px 254px;
-    background-position: center center;
-    background-repeat: no-repeat;
-    background-image: url("chrome://activity-stream/content/data/content/assets/gift-extension.svg"); }
-  .ReturnToAMOOverlay .icon-add,
-  .amo + body.hide-main .icon-add {
-    fill: #FFF;
-    vertical-align: sub; }
-
 .below-search-snippet {
   margin: 0 auto 16px; }
   .below-search-snippet.withButton {
     margin: auto;
     min-height: 60px;
     background-color: transparent; }
     .below-search-snippet.withButton .snippet-hover-wrapper {
       min-height: 60px;
@@ -4187,243 +4081,16 @@ body[lwt-newtab-brighttext] .scene2Icon 
   background-repeat: no-repeat;
   display: inline-block; }
   @media (max-width: 865px) {
     .onboardingMessageImage {
       height: 75px;
       min-width: 80px;
       background-size: 140px; } }
 
-.EOYSnippetForm {
-  margin: 10px 0 8px;
-  align-self: start;
-  font-size: 14px;
-  display: flex;
-  align-items: center; }
-  .EOYSnippetForm .donation-amount,
-  .EOYSnippetForm .donation-form-url {
-    white-space: nowrap;
-    font-size: 14px;
-    padding: 8px 20px;
-    border-radius: 2px; }
-  .EOYSnippetForm .donation-amount {
-    color: #0C0C0D;
-    margin-inline-end: 18px;
-    border: 1px solid #B1B1B3;
-    padding: 5px 14px;
-    background: #F9F9FA;
-    cursor: pointer; }
-  .EOYSnippetForm input[type='radio'] {
-    opacity: 0;
-    margin-inline-end: -18px; }
-    .EOYSnippetForm input[type='radio']:checked + .donation-amount {
-      background: #737373;
-      color: #FFF;
-      border: 1px solid #4A4A4F; }
-    .EOYSnippetForm input[type='radio']:checked:focus + .donation-amount,
-    .EOYSnippetForm input[type='radio']:not(:checked):focus + .donation-amount {
-      border: 1px dotted var(--newtab-link-primary-color); }
-  .EOYSnippetForm .monthly-checkbox-container {
-    display: flex;
-    width: 100%; }
-  .EOYSnippetForm .donation-form-url {
-    margin-inline-start: 18px;
-    align-self: flex-end;
-    display: flex; }
-
-.fxaSignupForm {
-  min-width: 260px;
-  text-align: center; }
-  .fxaSignupForm a {
-    color: #FFF;
-    text-decoration: underline; }
-  .fxaSignupForm input,
-  .fxaSignupForm button {
-    border-radius: 4px;
-    padding: 10px; }
-  .fxaSignupForm h3 {
-    font-size: 36px;
-    font-weight: 200;
-    line-height: 46px;
-    margin: 12px 0 4px; }
-  .fxaSignupForm p {
-    font-size: 15px;
-    line-height: 22px;
-    margin: 0 0 20px; }
-  .fxaSignupForm .fxa-terms {
-    margin: 4px 30px 20px; }
-    .fxaSignupForm .fxa-terms a, .fxaSignupForm .fxa-terms {
-      color: rgba(255, 255, 255, 0.7);
-      font-size: 12px;
-      line-height: 20px; }
-  .fxaSignupForm .fxa-signin {
-    font-size: 16px;
-    margin-top: 19px; }
-    .fxaSignupForm .fxa-signin span {
-      margin-inline-end: 5px; }
-    .fxaSignupForm .fxa-signin button {
-      background-color: initial;
-      text-decoration: underline;
-      color: #FFF;
-      display: inline;
-      padding: 0;
-      width: auto; }
-      .fxaSignupForm .fxa-signin button:hover, .fxaSignupForm .fxa-signin button:focus, .fxaSignupForm .fxa-signin button:active {
-        background-color: initial; }
-  .fxaSignupForm form {
-    position: relative; }
-    .fxaSignupForm form .error.active {
-      inset-inline-start: 0;
-      z-index: 0; }
-  .fxaSignupForm button,
-  .fxaSignupForm input {
-    width: 100%; }
-  .fxaSignupForm input {
-    background-color: #FFF;
-    border: 1px solid #737373;
-    box-shadow: none;
-    color: #38383D;
-    font-size: 15px;
-    transition: border-color 150ms, box-shadow 150ms; }
-    .fxaSignupForm input:hover {
-      border-color: #0C0C0D; }
-    .fxaSignupForm input:focus {
-      border-color: #0A84FF;
-      box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.3); }
-    .fxaSignupForm input.invalid {
-      border-color: #D70022; }
-    .fxaSignupForm input.invalid:focus {
-      box-shadow: 0 0 0 3px rgba(215, 0, 34, 0.3); }
-  .fxaSignupForm button {
-    background-color: #0060DF;
-    border: 0;
-    cursor: pointer;
-    display: block;
-    font-size: 15px;
-    font-weight: 400;
-    padding: 14px; }
-    .fxaSignupForm button:hover, .fxaSignupForm button:focus {
-      background-color: #0250BB; }
-    .fxaSignupForm button:focus {
-      outline: dotted 1px; }
-    .fxaSignupForm button:active {
-      background-color: #054096; }
-
-.trailhead {
-  background: url("chrome://activity-stream/content/data/content/assets/trailhead/accounts-form-bg.jpg") bottom/cover;
-  color: #FFF;
-  height: auto; }
-  .trailhead a {
-    color: #FFF;
-    text-decoration: underline; }
-  .trailhead input,
-  .trailhead button {
-    border-radius: 4px;
-    padding: 10px; }
-  .trailhead .trailheadInner {
-    display: grid;
-    grid-column-gap: 40px;
-    grid-template-columns: 5fr 3fr;
-    padding: 40px 60px; }
-  .trailhead .trailheadContent h1 {
-    font-size: 36px;
-    font-weight: 200;
-    line-height: 46px;
-    margin: 0; }
-  .trailhead .trailheadContent .trailheadLearn {
-    display: block;
-    margin-top: 30px; }
-    @media (min-width: 850px) {
-      .trailhead .trailheadContent .trailheadLearn {
-        margin-inline-start: 74px; } }
-  .trailhead .trailhead-join-form {
-    background: url("chrome://activity-stream/content/data/content/assets/trailhead/firefox-logo.png") top center/100px no-repeat;
-    color: #FFF;
-    min-width: 260px;
-    padding-top: 100px; }
-  .trailhead.syncCohort {
-    left: calc(50% - 430px);
-    width: 860px; }
-    @media (max-width: 860px) {
-      .trailhead.syncCohort {
-        left: 0;
-        width: 100%; } }
-    .trailhead.syncCohort .trailheadInner {
-      grid-template-columns: 4fr 3fr; }
-    .trailhead.syncCohort .trailheadContent .trailheadBenefits {
-      background: url("chrome://activity-stream/content/data/content/assets/sync-devices-trailhead.svg");
-      background-position: center center;
-      background-repeat: no-repeat;
-      background-size: contain;
-      height: 200px;
-      margin-inline-end: 60px; }
-    .trailhead.syncCohort .trailheadContent .trailheadLearn {
-      margin-inline-start: 0; }
-  .trailhead .trailheadBenefits {
-    padding: 0; }
-    .trailhead .trailheadBenefits li {
-      background-position: left 6px;
-      background-repeat: no-repeat;
-      background-size: 40px;
-      -moz-context-properties: fill;
-      fill: #0A84FF;
-      list-style: none;
-      padding-top: 8px; }
-      @media (min-width: 850px) {
-        .trailhead .trailheadBenefits li {
-          background-position-y: 4px;
-          background-size: 62px;
-          margin-inline-end: 60px;
-          padding-inline-start: 74px; } }
-      .trailhead .trailheadBenefits li:dir(rtl) {
-        background-position-x: right; }
-      .trailhead .trailheadBenefits li.knowledge, .trailhead .trailheadBenefits li.monitor {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-knowledge.png"); }
-      .trailhead .trailheadBenefits li.lockwise, .trailhead .trailheadBenefits li.privacy {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-privacy.png"); }
-      .trailhead .trailheadBenefits li.products {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-products.png"); }
-      .trailhead .trailheadBenefits li.sync {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-sync.png"); }
-    .trailhead .trailheadBenefits h2 {
-      text-align: start;
-      line-height: inherit;
-      color: #CB9EFF;
-      font-size: 22px;
-      font-weight: 400;
-      margin: 0 0 4px;
-      padding-inline-start: 52px; }
-      @media (min-width: 850px) {
-        .trailhead .trailheadBenefits h2 {
-          padding-inline-start: 0; } }
-    .trailhead .trailheadBenefits p {
-      color: #FFF;
-      font-size: 15px;
-      line-height: 22px;
-      margin: 4px 0 15px; }
-  .trailhead .trailheadStart {
-    border: 1px solid rgba(255, 255, 255, 0.5);
-    cursor: pointer;
-    display: block;
-    font-size: 15px;
-    font-weight: 400;
-    margin: 0 auto 40px;
-    min-width: 300px;
-    padding: 14px; }
-    .trailhead .trailheadStart:hover, .trailhead .trailheadStart:focus {
-      background-color: #0250BB;
-      border-color: transparent; }
-    .trailhead .trailheadStart:focus {
-      outline: dotted 1px; }
-    .trailhead .trailheadStart:active {
-      background-color: #054096; }
-  .trailhead .trailheadInner,
-  .trailhead .trailheadStart {
-    animation: fadeIn 0.4s; }
-
 .trailheadCards {
   background: var(--trailhead-cards-background-color);
   overflow: hidden;
   text-align: center;
   transition: max-height 0.5s cubic-bezier(0.07, 0.95, 0, 1); }
   @media (min-width: 610px) {
     .trailheadCards {
       max-height: 1000px; } }
@@ -4570,176 +4237,44 @@ body[lwt-newtab-brighttext] .scene2Icon 
 @keyframes fade-down {
   0% {
     opacity: 0;
     transform: translateY(-15px); }
   100% {
     opacity: 1;
     transform: translateY(0); } }
 
-.activity-stream.welcome {
-  overflow: hidden; }
-
-.activity-stream:not(.welcome) .fullpage-wrapper {
-  display: none; }
-
-.fullpage-wrapper {
-  align-content: center;
+.EOYSnippetForm {
+  margin: 10px 0 8px;
+  align-self: start;
+  font-size: 14px;
   display: flex;
-  flex-direction: column;
-  overflow-x: auto;
-  position: absolute;
-  top: 0;
-  left: 0;
-  width: 100vw;
-  height: 100vh;
-  z-index: 21000;
-  background-color: #FAFAFC; }
-  .fullpage-wrapper + div {
-    opacity: 0; }
-  .fullpage-wrapper .fullpage-icon {
-    background-position-x: left;
-    background-repeat: no-repeat;
-    background-size: contain; }
-    .fullpage-wrapper .fullpage-icon:dir(rtl) {
-      background-position-x: right; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-icon {
-        background-position: center; } }
-  .fullpage-wrapper .brand-logo {
-    background-image: url("chrome://branding/content/about-logo.png");
-    margin: 20px 10px 10px 20px;
-    padding-bottom: 50px; }
-  .fullpage-wrapper .welcome-title,
-  .fullpage-wrapper .welcome-subtitle {
-    align-self: center;
-    margin: 0; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .welcome-title,
-      .fullpage-wrapper .welcome-subtitle {
-        text-align: center; } }
-  .fullpage-wrapper .welcome-title {
-    color: #36296D;
-    font-size: 46px;
-    font-weight: 600;
-    line-height: 62px; }
-  .fullpage-wrapper .welcome-subtitle {
-    color: #7542E5;
-    font-size: 20px;
-    line-height: 27px; }
-  .fullpage-wrapper .container {
+  align-items: center; }
+  .EOYSnippetForm .donation-amount,
+  .EOYSnippetForm .donation-form-url {
+    white-space: nowrap;
+    font-size: 14px;
+    padding: 8px 20px;
+    border-radius: 2px; }
+  .EOYSnippetForm .donation-amount {
+    color: #0C0C0D;
+    margin-inline-end: 18px;
+    border: 1px solid #B1B1B3;
+    padding: 5px 14px;
+    background: #F9F9FA;
+    cursor: pointer; }
+  .EOYSnippetForm input[type='radio'] {
+    opacity: 0;
+    margin-inline-end: -18px; }
+    .EOYSnippetForm input[type='radio']:checked + .donation-amount {
+      background: #737373;
+      color: #FFF;
+      border: 1px solid #4A4A4F; }
+    .EOYSnippetForm input[type='radio']:checked:focus + .donation-amount,
+    .EOYSnippetForm input[type='radio']:not(:checked):focus + .donation-amount {
+      border: 1px dotted var(--newtab-link-primary-color); }
+  .EOYSnippetForm .monthly-checkbox-container {
     display: flex;
-    align-self: center;
-    padding: 50px 0; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .container {
-        flex-direction: column;
-        width: 300px;
-        text-align: center; } }
-  .fullpage-wrapper .fullpage-left-section {
-    position: relative;
-    width: 538px;
-    font-size: 18px;
-    line-height: 30px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-left-section {
-        width: 300px; } }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-content {
-      color: #4A4A4F;
-      display: inline;
-      margin: 0;
-      margin-inline-end: 2px; }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-link {
-      color: #0060DF;
-      display: block;
-      text-decoration: underline;
-      margin-bottom: 30px; }
-      .fullpage-wrapper .fullpage-left-section .fullpage-left-link:hover, .fullpage-wrapper .fullpage-left-section .fullpage-left-link:active, .fullpage-wrapper .fullpage-left-section .fullpage-left-link:focus {
-        color: #0060DF; }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-title {
-      margin: 0;
-      color: #36296D;
-      font-size: 36px;
-      line-height: 48px; }
-    .fullpage-wrapper .fullpage-left-section .fx-systems-icons {
-      height: 33px;
-      display: block;
-      background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/firefox-systems.png");
-      margin-bottom: 20px; }
-  .fullpage-wrapper .fullpage-form {
-    position: relative;
-    text-align: center;
-    margin-inline-start: 36px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-form {
-        margin-inline-start: 0; } }
-    .fullpage-wrapper .fullpage-form .fxaSignupForm {
-      width: 356px;
-      padding: 25px;
-      box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15);
-      border-radius: 6px;
-      background: #FFF; }
-    .fullpage-wrapper .fullpage-form .fxa-terms {
-      margin: 4px 0 20px; }
-      .fullpage-wrapper .fullpage-form .fxa-terms a, .fullpage-wrapper .fullpage-form .fxa-terms {
-        color: #4A4A4F;
-        font-size: 12px;
-        line-height: 16px; }
-    .fullpage-wrapper .fullpage-form .fxa-signin {
-      color: #4A4A4F;
-      line-height: 30px;
-      opacity: 0.77; }
-      .fullpage-wrapper .fullpage-form .fxa-signin button {
-        color: #0060DF; }
-    .fullpage-wrapper .fullpage-form h3 {
-      color: #36296D;
-      font-weight: 400;
-      font-size: 36px;
-      line-height: 36px;
-      margin: 0;
-      padding: 8px; }
-    .fullpage-wrapper .fullpage-form h3 + p {
-      color: #4A4A4F;
-      font-size: 16px;
-      line-height: 20px;
-      opacity: 0.77; }
-    .fullpage-wrapper .fullpage-form input {
-      background: #FFF;
-      border: 1px solid #D7D7DB;
-      border-radius: 2px; }
-      .fullpage-wrapper .fullpage-form input:hover {
-        border-color: #737373; }
-      .fullpage-wrapper .fullpage-form input.invalid {
-        border-color: #D70022; }
-    .fullpage-wrapper .fullpage-form button {
-      color: #FFF;
-      font-size: 16px; }
-      .fullpage-wrapper .fullpage-form button:focus {
-        outline: dotted 1px #737373; }
-  .fullpage-wrapper .section-divider::after {
-    content: '';
-    display: block;
-    border-bottom: 0.5px solid #D7D7DB; }
-  .fullpage-wrapper .trailheadCard {
-    box-shadow: none;
-    background: none;
-    text-align: center;
-    width: 320px;
-    padding: 18px; }
-    .fullpage-wrapper .trailheadCard .onboardingTitle {
-      color: #0C0C0D; }
-    .fullpage-wrapper .trailheadCard .onboardingText {
-      font-weight: normal;
-      color: #4A4A4F;
-      margin-top: 4px; }
-    .fullpage-wrapper .trailheadCard .onboardingButton {
-      color: #4A4A4F;
-      background: rgba(12, 12, 13, 0.1); }
-      .fullpage-wrapper .trailheadCard .onboardingButton:focus, .fullpage-wrapper .trailheadCard .onboardingButton:hover {
-        background: rgba(12, 12, 13, 0.2); }
-      .fullpage-wrapper .trailheadCard .onboardingButton:active {
-        background: rgba(12, 12, 13, 0.3); }
-    .fullpage-wrapper .trailheadCard .onboardingMessageImage {
-      height: 112px;
-      width: 154px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .trailheadCard {
-        width: 300px; } }
+    width: 100%; }
+  .EOYSnippetForm .donation-form-url {
+    margin-inline-start: 18px;
+    align-self: flex-end;
+    display: flex; }
--- a/browser/components/newtab/css/activity-stream-windows.css
+++ b/browser/components/newtab/css/activity-stream-windows.css
@@ -3602,122 +3602,16 @@ body[lwt-newtab-brighttext] .scene2Icon 
       min-width: 150px;
       height: 30px;
       padding: 4px 30px 6px;
       font-size: 15px; }
       .modalOverlayInner .footer .modalButton:focus, .modalOverlayInner .footer .modalButton.active, .modalOverlayInner .footer .modalButton:hover {
         box-shadow: 0 0 0 5px #D7D7DB;
         transition: box-shadow 150ms; }
 
-.ReturnToAMOOverlay,
-.amo + body.hide-main {
-  background: #F9F9FA;
-  height: 100%;
-  position: fixed;
-  top: 0;
-  width: 100%;
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  z-index: 2100; }
-  .ReturnToAMOOverlay .ReturnToAMOText,
-  .amo + body.hide-main .ReturnToAMOText {
-    color: #0C0C0D;
-    line-height: 32px;
-    font-size: 23px;
-    width: 100%; }
-    .ReturnToAMOOverlay .ReturnToAMOText img,
-    .amo + body.hide-main .ReturnToAMOText img {
-      margin-inline-start: 6px;
-      margin-inline-end: 6px; }
-  .ReturnToAMOOverlay h2,
-  .amo + body.hide-main h2 {
-    color: #4A4A4F;
-    font-weight: 100;
-    margin: 0 0 36px;
-    font-size: 36px;
-    line-height: 48px;
-    letter-spacing: 1.2px; }
-  .ReturnToAMOOverlay p,
-  .amo + body.hide-main p {
-    color: #4A4A4F;
-    font-size: 14px;
-    line-height: 18px;
-    margin-bottom: 16px; }
-  .ReturnToAMOOverlay .puffy,
-  .amo + body.hide-main .puffy {
-    border-radius: 4px;
-    height: 48px;
-    padding: 0 16px;
-    font-size: 15px; }
-  .ReturnToAMOOverlay .blue,
-  .amo + body.hide-main .blue {
-    border: 0;
-    color: #FFF;
-    background-color: #0060DF; }
-    .ReturnToAMOOverlay .blue:hover,
-    .amo + body.hide-main .blue:hover {
-      box-shadow: none;
-      background-color: #003EAA; }
-    .ReturnToAMOOverlay .blue:active,
-    .amo + body.hide-main .blue:active {
-      background-color: #002275; }
-  .ReturnToAMOOverlay .default,
-  .amo + body.hide-main .default {
-    border-radius: 2px;
-    height: 40px;
-    padding: 0 12px;
-    font-size: 15px; }
-  .ReturnToAMOOverlay .grey,
-  .amo + body.hide-main .grey {
-    border: 0;
-    background-color: rgba(12, 12, 13, 0.1); }
-    .ReturnToAMOOverlay .grey:hover,
-    .amo + body.hide-main .grey:hover {
-      box-shadow: none;
-      background-color: rgba(12, 12, 13, 0.2); }
-    .ReturnToAMOOverlay .grey:active,
-    .amo + body.hide-main .grey:active {
-      background-color: rgba(12, 12, 13, 0.3); }
-  .ReturnToAMOOverlay .ReturnToAMOGetStarted,
-  .amo + body.hide-main .ReturnToAMOGetStarted {
-    margin-top: 40px;
-    float: right; }
-    .ReturnToAMOOverlay .ReturnToAMOGetStarted:dir(rtl),
-    .amo + body.hide-main .ReturnToAMOGetStarted:dir(rtl) {
-      float: left; }
-  .ReturnToAMOOverlay .ReturnToAMOAddExtension,
-  .amo + body.hide-main .ReturnToAMOAddExtension {
-    margin-top: 20px; }
-  .ReturnToAMOOverlay .ReturnToAMOContainer,
-  .amo + body.hide-main .ReturnToAMOContainer {
-    width: 960px;
-    background: #FFF;
-    box-shadow: 0 1px 15px 0 rgba(0, 0, 0, 0.3);
-    border-radius: 4px;
-    display: flex;
-    padding: 64px 64px 72px; }
-  .ReturnToAMOOverlay .ReturnToAMOAddonContents,
-  .amo + body.hide-main .ReturnToAMOAddonContents {
-    width: 560px;
-    margin-top: 32px;
-    margin-inline-end: 24px; }
-  .ReturnToAMOOverlay .ReturnToAMOIcon,
-  .amo + body.hide-main .ReturnToAMOIcon {
-    width: 292px;
-    height: 254px;
-    background-size: 292px 254px;
-    background-position: center center;
-    background-repeat: no-repeat;
-    background-image: url("chrome://activity-stream/content/data/content/assets/gift-extension.svg"); }
-  .ReturnToAMOOverlay .icon-add,
-  .amo + body.hide-main .icon-add {
-    fill: #FFF;
-    vertical-align: sub; }
-
 .below-search-snippet {
   margin: 0 auto 16px; }
   .below-search-snippet.withButton {
     margin: auto;
     min-height: 60px;
     background-color: transparent; }
     .below-search-snippet.withButton .snippet-hover-wrapper {
       min-height: 60px;
@@ -4184,243 +4078,16 @@ body[lwt-newtab-brighttext] .scene2Icon 
   background-repeat: no-repeat;
   display: inline-block; }
   @media (max-width: 865px) {
     .onboardingMessageImage {
       height: 75px;
       min-width: 80px;
       background-size: 140px; } }
 
-.EOYSnippetForm {
-  margin: 10px 0 8px;
-  align-self: start;
-  font-size: 14px;
-  display: flex;
-  align-items: center; }
-  .EOYSnippetForm .donation-amount,
-  .EOYSnippetForm .donation-form-url {
-    white-space: nowrap;
-    font-size: 14px;
-    padding: 8px 20px;
-    border-radius: 2px; }
-  .EOYSnippetForm .donation-amount {
-    color: #0C0C0D;
-    margin-inline-end: 18px;
-    border: 1px solid #B1B1B3;
-    padding: 5px 14px;
-    background: #F9F9FA;
-    cursor: pointer; }
-  .EOYSnippetForm input[type='radio'] {
-    opacity: 0;
-    margin-inline-end: -18px; }
-    .EOYSnippetForm input[type='radio']:checked + .donation-amount {
-      background: #737373;
-      color: #FFF;
-      border: 1px solid #4A4A4F; }
-    .EOYSnippetForm input[type='radio']:checked:focus + .donation-amount,
-    .EOYSnippetForm input[type='radio']:not(:checked):focus + .donation-amount {
-      border: 1px dotted var(--newtab-link-primary-color); }
-  .EOYSnippetForm .monthly-checkbox-container {
-    display: flex;
-    width: 100%; }
-  .EOYSnippetForm .donation-form-url {
-    margin-inline-start: 18px;
-    align-self: flex-end;
-    display: flex; }
-
-.fxaSignupForm {
-  min-width: 260px;
-  text-align: center; }
-  .fxaSignupForm a {
-    color: #FFF;
-    text-decoration: underline; }
-  .fxaSignupForm input,
-  .fxaSignupForm button {
-    border-radius: 4px;
-    padding: 10px; }
-  .fxaSignupForm h3 {
-    font-size: 36px;
-    font-weight: 200;
-    line-height: 46px;
-    margin: 12px 0 4px; }
-  .fxaSignupForm p {
-    font-size: 15px;
-    line-height: 22px;
-    margin: 0 0 20px; }
-  .fxaSignupForm .fxa-terms {
-    margin: 4px 30px 20px; }
-    .fxaSignupForm .fxa-terms a, .fxaSignupForm .fxa-terms {
-      color: rgba(255, 255, 255, 0.7);
-      font-size: 12px;
-      line-height: 20px; }
-  .fxaSignupForm .fxa-signin {
-    font-size: 16px;
-    margin-top: 19px; }
-    .fxaSignupForm .fxa-signin span {
-      margin-inline-end: 5px; }
-    .fxaSignupForm .fxa-signin button {
-      background-color: initial;
-      text-decoration: underline;
-      color: #FFF;
-      display: inline;
-      padding: 0;
-      width: auto; }
-      .fxaSignupForm .fxa-signin button:hover, .fxaSignupForm .fxa-signin button:focus, .fxaSignupForm .fxa-signin button:active {
-        background-color: initial; }
-  .fxaSignupForm form {
-    position: relative; }
-    .fxaSignupForm form .error.active {
-      inset-inline-start: 0;
-      z-index: 0; }
-  .fxaSignupForm button,
-  .fxaSignupForm input {
-    width: 100%; }
-  .fxaSignupForm input {
-    background-color: #FFF;
-    border: 1px solid #737373;
-    box-shadow: none;
-    color: #38383D;
-    font-size: 15px;
-    transition: border-color 150ms, box-shadow 150ms; }
-    .fxaSignupForm input:hover {
-      border-color: #0C0C0D; }
-    .fxaSignupForm input:focus {
-      border-color: #0A84FF;
-      box-shadow: 0 0 0 3px rgba(10, 132, 255, 0.3); }
-    .fxaSignupForm input.invalid {
-      border-color: #D70022; }
-    .fxaSignupForm input.invalid:focus {
-      box-shadow: 0 0 0 3px rgba(215, 0, 34, 0.3); }
-  .fxaSignupForm button {
-    background-color: #0060DF;
-    border: 0;
-    cursor: pointer;
-    display: block;
-    font-size: 15px;
-    font-weight: 400;
-    padding: 14px; }
-    .fxaSignupForm button:hover, .fxaSignupForm button:focus {
-      background-color: #0250BB; }
-    .fxaSignupForm button:focus {
-      outline: dotted 1px; }
-    .fxaSignupForm button:active {
-      background-color: #054096; }
-
-.trailhead {
-  background: url("chrome://activity-stream/content/data/content/assets/trailhead/accounts-form-bg.jpg") bottom/cover;
-  color: #FFF;
-  height: auto; }
-  .trailhead a {
-    color: #FFF;
-    text-decoration: underline; }
-  .trailhead input,
-  .trailhead button {
-    border-radius: 4px;
-    padding: 10px; }
-  .trailhead .trailheadInner {
-    display: grid;
-    grid-column-gap: 40px;
-    grid-template-columns: 5fr 3fr;
-    padding: 40px 60px; }
-  .trailhead .trailheadContent h1 {
-    font-size: 36px;
-    font-weight: 200;
-    line-height: 46px;
-    margin: 0; }
-  .trailhead .trailheadContent .trailheadLearn {
-    display: block;
-    margin-top: 30px; }
-    @media (min-width: 850px) {
-      .trailhead .trailheadContent .trailheadLearn {
-        margin-inline-start: 74px; } }
-  .trailhead .trailhead-join-form {
-    background: url("chrome://activity-stream/content/data/content/assets/trailhead/firefox-logo.png") top center/100px no-repeat;
-    color: #FFF;
-    min-width: 260px;
-    padding-top: 100px; }
-  .trailhead.syncCohort {
-    left: calc(50% - 430px);
-    width: 860px; }
-    @media (max-width: 860px) {
-      .trailhead.syncCohort {
-        left: 0;
-        width: 100%; } }
-    .trailhead.syncCohort .trailheadInner {
-      grid-template-columns: 4fr 3fr; }
-    .trailhead.syncCohort .trailheadContent .trailheadBenefits {
-      background: url("chrome://activity-stream/content/data/content/assets/sync-devices-trailhead.svg");
-      background-position: center center;
-      background-repeat: no-repeat;
-      background-size: contain;
-      height: 200px;
-      margin-inline-end: 60px; }
-    .trailhead.syncCohort .trailheadContent .trailheadLearn {
-      margin-inline-start: 0; }
-  .trailhead .trailheadBenefits {
-    padding: 0; }
-    .trailhead .trailheadBenefits li {
-      background-position: left 6px;
-      background-repeat: no-repeat;
-      background-size: 40px;
-      -moz-context-properties: fill;
-      fill: #0A84FF;
-      list-style: none;
-      padding-top: 8px; }
-      @media (min-width: 850px) {
-        .trailhead .trailheadBenefits li {
-          background-position-y: 4px;
-          background-size: 62px;
-          margin-inline-end: 60px;
-          padding-inline-start: 74px; } }
-      .trailhead .trailheadBenefits li:dir(rtl) {
-        background-position-x: right; }
-      .trailhead .trailheadBenefits li.knowledge, .trailhead .trailheadBenefits li.monitor {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-knowledge.png"); }
-      .trailhead .trailheadBenefits li.lockwise, .trailhead .trailheadBenefits li.privacy {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-privacy.png"); }
-      .trailhead .trailheadBenefits li.products {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-products.png"); }
-      .trailhead .trailheadBenefits li.sync {
-        background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/benefit-sync.png"); }
-    .trailhead .trailheadBenefits h2 {
-      text-align: start;
-      line-height: inherit;
-      color: #CB9EFF;
-      font-size: 22px;
-      font-weight: 400;
-      margin: 0 0 4px;
-      padding-inline-start: 52px; }
-      @media (min-width: 850px) {
-        .trailhead .trailheadBenefits h2 {
-          padding-inline-start: 0; } }
-    .trailhead .trailheadBenefits p {
-      color: #FFF;
-      font-size: 15px;
-      line-height: 22px;
-      margin: 4px 0 15px; }
-  .trailhead .trailheadStart {
-    border: 1px solid rgba(255, 255, 255, 0.5);
-    cursor: pointer;
-    display: block;
-    font-size: 15px;
-    font-weight: 400;
-    margin: 0 auto 40px;
-    min-width: 300px;
-    padding: 14px; }
-    .trailhead .trailheadStart:hover, .trailhead .trailheadStart:focus {
-      background-color: #0250BB;
-      border-color: transparent; }
-    .trailhead .trailheadStart:focus {
-      outline: dotted 1px; }
-    .trailhead .trailheadStart:active {
-      background-color: #054096; }
-  .trailhead .trailheadInner,
-  .trailhead .trailheadStart {
-    animation: fadeIn 0.4s; }
-
 .trailheadCards {
   background: var(--trailhead-cards-background-color);
   overflow: hidden;
   text-align: center;
   transition: max-height 0.5s cubic-bezier(0.07, 0.95, 0, 1); }
   @media (min-width: 610px) {
     .trailheadCards {
       max-height: 1000px; } }
@@ -4567,176 +4234,44 @@ body[lwt-newtab-brighttext] .scene2Icon 
 @keyframes fade-down {
   0% {
     opacity: 0;
     transform: translateY(-15px); }
   100% {
     opacity: 1;
     transform: translateY(0); } }
 
-.activity-stream.welcome {
-  overflow: hidden; }
-
-.activity-stream:not(.welcome) .fullpage-wrapper {
-  display: none; }
-
-.fullpage-wrapper {
-  align-content: center;
+.EOYSnippetForm {
+  margin: 10px 0 8px;
+  align-self: start;
+  font-size: 14px;
   display: flex;
-  flex-direction: column;
-  overflow-x: auto;
-  position: absolute;
-  top: 0;
-  left: 0;
-  width: 100vw;
-  height: 100vh;
-  z-index: 21000;
-  background-color: #FAFAFC; }
-  .fullpage-wrapper + div {
-    opacity: 0; }
-  .fullpage-wrapper .fullpage-icon {
-    background-position-x: left;
-    background-repeat: no-repeat;
-    background-size: contain; }
-    .fullpage-wrapper .fullpage-icon:dir(rtl) {
-      background-position-x: right; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-icon {
-        background-position: center; } }
-  .fullpage-wrapper .brand-logo {
-    background-image: url("chrome://branding/content/about-logo.png");
-    margin: 20px 10px 10px 20px;
-    padding-bottom: 50px; }
-  .fullpage-wrapper .welcome-title,
-  .fullpage-wrapper .welcome-subtitle {
-    align-self: center;
-    margin: 0; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .welcome-title,
-      .fullpage-wrapper .welcome-subtitle {
-        text-align: center; } }
-  .fullpage-wrapper .welcome-title {
-    color: #36296D;
-    font-size: 46px;
-    font-weight: 600;
-    line-height: 62px; }
-  .fullpage-wrapper .welcome-subtitle {
-    color: #7542E5;
-    font-size: 20px;
-    line-height: 27px; }
-  .fullpage-wrapper .container {
+  align-items: center; }
+  .EOYSnippetForm .donation-amount,
+  .EOYSnippetForm .donation-form-url {
+    white-space: nowrap;
+    font-size: 14px;
+    padding: 8px 20px;
+    border-radius: 2px; }
+  .EOYSnippetForm .donation-amount {
+    color: #0C0C0D;
+    margin-inline-end: 18px;
+    border: 1px solid #B1B1B3;
+    padding: 5px 14px;
+    background: #F9F9FA;
+    cursor: pointer; }
+  .EOYSnippetForm input[type='radio'] {
+    opacity: 0;
+    margin-inline-end: -18px; }
+    .EOYSnippetForm input[type='radio']:checked + .donation-amount {
+      background: #737373;
+      color: #FFF;
+      border: 1px solid #4A4A4F; }
+    .EOYSnippetForm input[type='radio']:checked:focus + .donation-amount,
+    .EOYSnippetForm input[type='radio']:not(:checked):focus + .donation-amount {
+      border: 1px dotted var(--newtab-link-primary-color); }
+  .EOYSnippetForm .monthly-checkbox-container {
     display: flex;
-    align-self: center;
-    padding: 50px 0; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .container {
-        flex-direction: column;
-        width: 300px;
-        text-align: center; } }
-  .fullpage-wrapper .fullpage-left-section {
-    position: relative;
-    width: 538px;
-    font-size: 18px;
-    line-height: 30px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-left-section {
-        width: 300px; } }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-content {
-      color: #4A4A4F;
-      display: inline;
-      margin: 0;
-      margin-inline-end: 2px; }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-link {
-      color: #0060DF;
-      display: block;
-      text-decoration: underline;
-      margin-bottom: 30px; }
-      .fullpage-wrapper .fullpage-left-section .fullpage-left-link:hover, .fullpage-wrapper .fullpage-left-section .fullpage-left-link:active, .fullpage-wrapper .fullpage-left-section .fullpage-left-link:focus {
-        color: #0060DF; }
-    .fullpage-wrapper .fullpage-left-section .fullpage-left-title {
-      margin: 0;
-      color: #36296D;
-      font-size: 36px;
-      line-height: 48px; }
-    .fullpage-wrapper .fullpage-left-section .fx-systems-icons {
-      height: 33px;
-      display: block;
-      background-image: url("chrome://activity-stream/content/data/content/assets/trailhead/firefox-systems.png");
-      margin-bottom: 20px; }
-  .fullpage-wrapper .fullpage-form {
-    position: relative;
-    text-align: center;
-    margin-inline-start: 36px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .fullpage-form {
-        margin-inline-start: 0; } }
-    .fullpage-wrapper .fullpage-form .fxaSignupForm {
-      width: 356px;
-      padding: 25px;
-      box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15);
-      border-radius: 6px;
-      background: #FFF; }
-    .fullpage-wrapper .fullpage-form .fxa-terms {
-      margin: 4px 0 20px; }
-      .fullpage-wrapper .fullpage-form .fxa-terms a, .fullpage-wrapper .fullpage-form .fxa-terms {
-        color: #4A4A4F;
-        font-size: 12px;
-        line-height: 16px; }
-    .fullpage-wrapper .fullpage-form .fxa-signin {
-      color: #4A4A4F;
-      line-height: 30px;
-      opacity: 0.77; }
-      .fullpage-wrapper .fullpage-form .fxa-signin button {
-        color: #0060DF; }
-    .fullpage-wrapper .fullpage-form h3 {
-      color: #36296D;
-      font-weight: 400;
-      font-size: 36px;
-      line-height: 36px;
-      margin: 0;
-      padding: 8px; }
-    .fullpage-wrapper .fullpage-form h3 + p {
-      color: #4A4A4F;
-      font-size: 16px;
-      line-height: 20px;
-      opacity: 0.77; }
-    .fullpage-wrapper .fullpage-form input {
-      background: #FFF;
-      border: 1px solid #D7D7DB;
-      border-radius: 2px; }
-      .fullpage-wrapper .fullpage-form input:hover {
-        border-color: #737373; }
-      .fullpage-wrapper .fullpage-form input.invalid {
-        border-color: #D70022; }
-    .fullpage-wrapper .fullpage-form button {
-      color: #FFF;
-      font-size: 16px; }
-      .fullpage-wrapper .fullpage-form button:focus {
-        outline: dotted 1px #737373; }
-  .fullpage-wrapper .section-divider::after {
-    content: '';
-    display: block;
-    border-bottom: 0.5px solid #D7D7DB; }
-  .fullpage-wrapper .trailheadCard {
-    box-shadow: none;
-    background: none;
-    text-align: center;
-    width: 320px;
-    padding: 18px; }
-    .fullpage-wrapper .trailheadCard .onboardingTitle {
-      color: #0C0C0D; }
-    .fullpage-wrapper .trailheadCard .onboardingText {
-      font-weight: normal;
-      color: #4A4A4F;
-      margin-top: 4px; }
-    .fullpage-wrapper .trailheadCard .onboardingButton {
-      color: #4A4A4F;
-      background: rgba(12, 12, 13, 0.1); }
-      .fullpage-wrapper .trailheadCard .onboardingButton:focus, .fullpage-wrapper .trailheadCard .onboardingButton:hover {
-        background: rgba(12, 12, 13, 0.2); }
-      .fullpage-wrapper .trailheadCard .onboardingButton:active {
-        background: rgba(12, 12, 13, 0.3); }
-    .fullpage-wrapper .trailheadCard .onboardingMessageImage {
-      height: 112px;
-      width: 154px; }
-    @media screen and (max-width: 975px) {
-      .fullpage-wrapper .trailheadCard {
-        width: 300px; } }
+    width: 100%; }
+  .EOYSnippetForm .donation-form-url {
+    margin-inline-start: 18px;
+    align-self: flex-end;
+    display: flex; }
--- a/browser/components/newtab/data/content/activity-stream.bundle.js
+++ b/browser/components/newtab/data/content/activity-stream.bundle.js
@@ -87,49 +87,46 @@ var NewtabRenderUtils =
 /******/ })
 /************************************************************************/
 /******/ ([
 /* 0 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
-/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "NewTab", function() { return NewTab; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "NewTab", function() { return NewTab; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderWithoutState", function() { return renderWithoutState; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "renderCache", function() { return renderCache; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_components_Base_Base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);
-/* harmony import */ var content_src_lib_detect_user_session_start__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(73);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_components_Base_Base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
+/* harmony import */ var content_src_lib_detect_user_session_start__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(68);
 /* harmony import */ var content_src_lib_init_store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(22);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_5__);
 /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(12);
 /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(77);
+/* harmony import */ var common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(72);
 /* 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/. */
 
 
 
 
 
 
 
 
 const NewTab = ({
-  store,
-  isFirstrun
+  store
 }) => react__WEBPACK_IMPORTED_MODULE_5___default.a.createElement(react_redux__WEBPACK_IMPORTED_MODULE_4__["Provider"], {
   store: store
-}, react__WEBPACK_IMPORTED_MODULE_5___default.a.createElement(content_src_components_Base_Base__WEBPACK_IMPORTED_MODULE_1__["Base"], {
-  isFirstrun: isFirstrun
-}));
+}, react__WEBPACK_IMPORTED_MODULE_5___default.a.createElement(content_src_components_Base_Base__WEBPACK_IMPORTED_MODULE_1__["Base"], null));
 function renderWithoutState() {
   const store = Object(content_src_lib_init_store__WEBPACK_IMPORTED_MODULE_3__["initStore"])(common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_7__["reducers"]);
   new content_src_lib_detect_user_session_start__WEBPACK_IMPORTED_MODULE_2__["DetectUserSessionStart"](store).sendEventOrAddListener(); // If this document has already gone into the background by the time we've reached
   // here, we can deprioritize requesting the initial state until the event loop
   // frees up. If, however, the visibility changes, we then send the request.
 
   let didRequest = false;
   let requestIdleCallbackId = 0;
@@ -152,58 +149,29 @@ function renderWithoutState() {
     addEventListener("visibilitychange", doRequest, {
       once: true
     });
   } else {
     doRequest();
   }
 
   react_dom__WEBPACK_IMPORTED_MODULE_6___default.a.hydrate(react__WEBPACK_IMPORTED_MODULE_5___default.a.createElement(NewTab, {
-    store: store,
-    isFirstrun: global.document.location.href === "about:welcome"
+    store: store
   }), document.getElementById("root"));
 }
 function renderCache(initialState) {
   const store = Object(content_src_lib_init_store__WEBPACK_IMPORTED_MODULE_3__["initStore"])(common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_7__["reducers"], initialState);
   new content_src_lib_detect_user_session_start__WEBPACK_IMPORTED_MODULE_2__["DetectUserSessionStart"](store).sendEventOrAddListener();
   react_dom__WEBPACK_IMPORTED_MODULE_6___default.a.hydrate(react__WEBPACK_IMPORTED_MODULE_5___default.a.createElement(NewTab, {
-    store: store,
-    isFirstrun: global.document.location.href === "about:welcome"
+    store: store
   }), document.getElementById("root"));
 }
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
 
 /***/ }),
 /* 1 */
-/***/ (function(module, exports) {
-
-var g;
-
-// This works in non-strict mode
-g = (function() {
-	return this;
-})();
-
-try {
-	// This works if eval is allowed (see CSP)
-	g = g || new Function("return this")();
-} catch (e) {
-	// This works if the window reference is available
-	if (typeof window === "object") g = window;
-}
-
-// g can still be undefined, but nothing to do about it...
-// We return undefined, instead of nothing here, so it's
-// easier to handle this case. if(!global) { ...}
-
-module.exports = g;
-
-
-/***/ }),
-/* 2 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MAIN_MESSAGE_TYPE", function() { return MAIN_MESSAGE_TYPE; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CONTENT_MESSAGE_TYPE", function() { return CONTENT_MESSAGE_TYPE; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PRELOAD_MESSAGE_TYPE", function() { return PRELOAD_MESSAGE_TYPE; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "UI_CODE", function() { return UI_CODE; });
@@ -232,17 +200,17 @@ const globalImportContext = typeof Windo
 
 // Create an object that avoids accidental differing key/value pairs:
 // {
 //   INIT: "INIT",
 //   UNINIT: "UNINIT"
 // }
 const actionTypes = {};
 
-for (const type of ["ADDONS_INFO_REQUEST", "ADDONS_INFO_RESPONSE", "ARCHIVE_FROM_POCKET", "AS_ROUTER_INITIALIZED", "AS_ROUTER_PREF_CHANGED", "AS_ROUTER_TARGETING_UPDATE", "AS_ROUTER_TELEMETRY_USER_EVENT", "BLOCK_URL", "BOOKMARK_URL", "CLEAR_PREF", "COPY_DOWNLOAD_LINK", "DELETE_BOOKMARK_BY_ID", "DELETE_FROM_POCKET", "DELETE_HISTORY_URL", "DIALOG_CANCEL", "DIALOG_OPEN", "DISCOVERY_STREAM_COLLECTION_DISMISSIBLE_TOGGLE", "DISCOVERY_STREAM_CONFIG_CHANGE", "DISCOVERY_STREAM_CONFIG_RESET", "DISCOVERY_STREAM_CONFIG_RESET_DEFAULTS", "DISCOVERY_STREAM_CONFIG_SETUP", "DISCOVERY_STREAM_CONFIG_SET_VALUE", "DISCOVERY_STREAM_DEV_EXPIRE_CACHE", "DISCOVERY_STREAM_DEV_IDLE_DAILY", "DISCOVERY_STREAM_DEV_SYNC_RS", "DISCOVERY_STREAM_DEV_SYSTEM_TICK", "DISCOVERY_STREAM_FEEDS_UPDATE", "DISCOVERY_STREAM_FEED_UPDATE", "DISCOVERY_STREAM_IMPRESSION_STATS", "DISCOVERY_STREAM_LAYOUT_RESET", "DISCOVERY_STREAM_LAYOUT_UPDATE", "DISCOVERY_STREAM_LINK_BLOCKED", "DISCOVERY_STREAM_LOADED_CONTENT", "DISCOVERY_STREAM_PERSONALIZATION_INIT", "DISCOVERY_STREAM_PERSONALIZATION_LAST_UPDATED", "DISCOVERY_STREAM_PERSONALIZATION_VERSION", "DISCOVERY_STREAM_PERSONALIZATION_VERSION_TOGGLE", "DISCOVERY_STREAM_RETRY_FEED", "DISCOVERY_STREAM_SPOCS_CAPS", "DISCOVERY_STREAM_SPOCS_ENDPOINT", "DISCOVERY_STREAM_SPOCS_FILL", "DISCOVERY_STREAM_SPOCS_PLACEMENTS", "DISCOVERY_STREAM_SPOCS_UPDATE", "DISCOVERY_STREAM_SPOC_BLOCKED", "DISCOVERY_STREAM_SPOC_IMPRESSION", "DOWNLOAD_CHANGED", "FAKE_FOCUS_SEARCH", "FILL_SEARCH_TERM", "HANDOFF_SEARCH_TO_AWESOMEBAR", "HIDE_PRIVACY_INFO", "HIDE_SEARCH", "INIT", "NEW_TAB_INIT", "NEW_TAB_INITIAL_STATE", "NEW_TAB_LOAD", "NEW_TAB_REHYDRATED", "NEW_TAB_STATE_REQUEST", "NEW_TAB_UNLOAD", "OPEN_DOWNLOAD_FILE", "OPEN_LINK", "OPEN_NEW_WINDOW", "OPEN_PRIVATE_WINDOW", "OPEN_WEBEXT_SETTINGS", "PARTNER_LINK_ATTRIBUTION", "PLACES_BOOKMARK_ADDED", "PLACES_BOOKMARK_REMOVED", "PLACES_HISTORY_CLEARED", "PLACES_LINKS_CHANGED", "PLACES_LINK_BLOCKED", "PLACES_LINK_DELETED", "PLACES_SAVED_TO_POCKET", "POCKET_CTA", "POCKET_LINK_DELETED_OR_ARCHIVED", "POCKET_LOGGED_IN", "POCKET_WAITING_FOR_SPOC", "PREFS_INITIAL_VALUES", "PREF_CHANGED", "PREVIEW_REQUEST", "PREVIEW_REQUEST_CANCEL", "PREVIEW_RESPONSE", "REMOVE_DOWNLOAD_FILE", "RICH_ICON_MISSING", "SAVE_SESSION_PERF_DATA", "SAVE_TO_POCKET", "SCREENSHOT_UPDATED", "SECTION_DEREGISTER", "SECTION_DISABLE", "SECTION_ENABLE", "SECTION_MOVE", "SECTION_OPTIONS_CHANGED", "SECTION_REGISTER", "SECTION_UPDATE", "SECTION_UPDATE_CARD", "SETTINGS_CLOSE", "SETTINGS_OPEN", "SET_PREF", "SHOW_DOWNLOAD_FILE", "SHOW_FIREFOX_ACCOUNTS", "SHOW_PRIVACY_INFO", "SHOW_SEARCH", "SKIPPED_SIGNIN", "SNIPPETS_BLOCKLIST_CLEARED", "SNIPPETS_BLOCKLIST_UPDATED", "SNIPPETS_DATA", "SNIPPETS_PREVIEW_MODE", "SNIPPETS_RESET", "SNIPPET_BLOCKED", "SUBMIT_EMAIL", "SUBMIT_SIGNIN", "SYSTEM_TICK", "TELEMETRY_IMPRESSION_STATS", "TELEMETRY_PERFORMANCE_EVENT", "TELEMETRY_UNDESIRED_EVENT", "TELEMETRY_USER_EVENT", "TOP_SITES_CANCEL_EDIT", "TOP_SITES_CLOSE_SEARCH_SHORTCUTS_MODAL", "TOP_SITES_EDIT", "TOP_SITES_INSERT", "TOP_SITES_OPEN_SEARCH_SHORTCUTS_MODAL", "TOP_SITES_PIN", "TOP_SITES_PREFS_UPDATED", "TOP_SITES_UNPIN", "TOP_SITES_UPDATED", "TOTAL_BOOKMARKS_REQUEST", "TOTAL_BOOKMARKS_RESPONSE", "TRAILHEAD_ENROLL_EVENT", "UNINIT", "UPDATE_PINNED_SEARCH_SHORTCUTS", "UPDATE_SEARCH_SHORTCUTS", "UPDATE_SECTION_PREFS", "WEBEXT_CLICK", "WEBEXT_DISMISS"]) {
+for (const type of ["ADDONS_INFO_REQUEST", "ADDONS_INFO_RESPONSE", "ARCHIVE_FROM_POCKET", "AS_ROUTER_INITIALIZED", "AS_ROUTER_PREF_CHANGED", "AS_ROUTER_TARGETING_UPDATE", "AS_ROUTER_TELEMETRY_USER_EVENT", "BLOCK_URL", "BOOKMARK_URL", "CLEAR_PREF", "COPY_DOWNLOAD_LINK", "DELETE_BOOKMARK_BY_ID", "DELETE_FROM_POCKET", "DELETE_HISTORY_URL", "DIALOG_CANCEL", "DIALOG_OPEN", "DISCOVERY_STREAM_COLLECTION_DISMISSIBLE_TOGGLE", "DISCOVERY_STREAM_CONFIG_CHANGE", "DISCOVERY_STREAM_CONFIG_RESET", "DISCOVERY_STREAM_CONFIG_RESET_DEFAULTS", "DISCOVERY_STREAM_CONFIG_SETUP", "DISCOVERY_STREAM_CONFIG_SET_VALUE", "DISCOVERY_STREAM_DEV_EXPIRE_CACHE", "DISCOVERY_STREAM_DEV_IDLE_DAILY", "DISCOVERY_STREAM_DEV_SYNC_RS", "DISCOVERY_STREAM_DEV_SYSTEM_TICK", "DISCOVERY_STREAM_FEEDS_UPDATE", "DISCOVERY_STREAM_FEED_UPDATE", "DISCOVERY_STREAM_IMPRESSION_STATS", "DISCOVERY_STREAM_LAYOUT_RESET", "DISCOVERY_STREAM_LAYOUT_UPDATE", "DISCOVERY_STREAM_LINK_BLOCKED", "DISCOVERY_STREAM_LOADED_CONTENT", "DISCOVERY_STREAM_PERSONALIZATION_INIT", "DISCOVERY_STREAM_PERSONALIZATION_LAST_UPDATED", "DISCOVERY_STREAM_PERSONALIZATION_VERSION", "DISCOVERY_STREAM_PERSONALIZATION_VERSION_TOGGLE", "DISCOVERY_STREAM_RETRY_FEED", "DISCOVERY_STREAM_SPOCS_CAPS", "DISCOVERY_STREAM_SPOCS_ENDPOINT", "DISCOVERY_STREAM_SPOCS_FILL", "DISCOVERY_STREAM_SPOCS_PLACEMENTS", "DISCOVERY_STREAM_SPOCS_UPDATE", "DISCOVERY_STREAM_SPOC_BLOCKED", "DISCOVERY_STREAM_SPOC_IMPRESSION", "DOWNLOAD_CHANGED", "FAKE_FOCUS_SEARCH", "FILL_SEARCH_TERM", "HANDOFF_SEARCH_TO_AWESOMEBAR", "HIDE_PRIVACY_INFO", "HIDE_SEARCH", "INIT", "NEW_TAB_INIT", "NEW_TAB_INITIAL_STATE", "NEW_TAB_LOAD", "NEW_TAB_REHYDRATED", "NEW_TAB_STATE_REQUEST", "NEW_TAB_UNLOAD", "OPEN_DOWNLOAD_FILE", "OPEN_LINK", "OPEN_NEW_WINDOW", "OPEN_PRIVATE_WINDOW", "OPEN_WEBEXT_SETTINGS", "PARTNER_LINK_ATTRIBUTION", "PLACES_BOOKMARK_ADDED", "PLACES_BOOKMARK_REMOVED", "PLACES_HISTORY_CLEARED", "PLACES_LINKS_CHANGED", "PLACES_LINK_BLOCKED", "PLACES_LINK_DELETED", "PLACES_SAVED_TO_POCKET", "POCKET_CTA", "POCKET_LINK_DELETED_OR_ARCHIVED", "POCKET_LOGGED_IN", "POCKET_WAITING_FOR_SPOC", "PREFS_INITIAL_VALUES", "PREF_CHANGED", "PREVIEW_REQUEST", "PREVIEW_REQUEST_CANCEL", "PREVIEW_RESPONSE", "REMOVE_DOWNLOAD_FILE", "RICH_ICON_MISSING", "SAVE_SESSION_PERF_DATA", "SAVE_TO_POCKET", "SCREENSHOT_UPDATED", "SECTION_DEREGISTER", "SECTION_DISABLE", "SECTION_ENABLE", "SECTION_MOVE", "SECTION_OPTIONS_CHANGED", "SECTION_REGISTER", "SECTION_UPDATE", "SECTION_UPDATE_CARD", "SETTINGS_CLOSE", "SETTINGS_OPEN", "SET_PREF", "SHOW_DOWNLOAD_FILE", "SHOW_FIREFOX_ACCOUNTS", "SHOW_PRIVACY_INFO", "SHOW_SEARCH", "SKIPPED_SIGNIN", "SNIPPETS_BLOCKLIST_CLEARED", "SNIPPETS_BLOCKLIST_UPDATED", "SNIPPETS_DATA", "SNIPPETS_PREVIEW_MODE", "SNIPPETS_RESET", "SNIPPET_BLOCKED", "SUBMIT_EMAIL", "SUBMIT_SIGNIN", "SYSTEM_TICK", "TELEMETRY_IMPRESSION_STATS", "TELEMETRY_PERFORMANCE_EVENT", "TELEMETRY_UNDESIRED_EVENT", "TELEMETRY_USER_EVENT", "TOP_SITES_CANCEL_EDIT", "TOP_SITES_CLOSE_SEARCH_SHORTCUTS_MODAL", "TOP_SITES_EDIT", "TOP_SITES_INSERT", "TOP_SITES_OPEN_SEARCH_SHORTCUTS_MODAL", "TOP_SITES_PIN", "TOP_SITES_PREFS_UPDATED", "TOP_SITES_UNPIN", "TOP_SITES_UPDATED", "TOTAL_BOOKMARKS_REQUEST", "TOTAL_BOOKMARKS_RESPONSE", "UNINIT", "UPDATE_PINNED_SEARCH_SHORTCUTS", "UPDATE_SEARCH_SHORTCUTS", "UPDATE_SECTION_PREFS", "WEBEXT_CLICK", "WEBEXT_DISMISS"]) {
   actionTypes[type] = type;
 } // Helper function for creating routed actions between content and main
 // Not intended to be used by consumers
 
 
 function _RouteMessage(action, options) {
   const meta = action.meta ? { ...action.meta
   } : {};
@@ -581,36 +549,36 @@ var actionUtils = {
   getPortIdOfSender(action) {
     return action.meta && action.meta.fromTarget || null;
   },
 
   _RouteMessage
 };
 
 /***/ }),
-/* 3 */
+/* 2 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_Base", function() { return _Base; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BaseContent", function() { return BaseContent; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Base", function() { return Base; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var content_src_components_ASRouterAdmin_ASRouterAdmin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4);
 /* harmony import */ var _asrouter_asrouter_content__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5);
-/* harmony import */ var content_src_components_ConfirmDialog_ConfirmDialog__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(24);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(22);
+/* harmony import */ var content_src_components_ConfirmDialog_ConfirmDialog__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(19);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var content_src_components_DiscoveryStreamBase_DiscoveryStreamBase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(25);
-/* harmony import */ var content_src_components_ErrorBoundary_ErrorBoundary__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(44);
+/* harmony import */ var content_src_components_DiscoveryStreamBase_DiscoveryStreamBase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20);
+/* harmony import */ var content_src_components_ErrorBoundary_ErrorBoundary__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(39);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var content_src_components_Search_Search__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(72);
-/* harmony import */ var content_src_components_Sections_Sections__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(55);
+/* harmony import */ var content_src_components_Search_Search__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(67);
+/* harmony import */ var content_src_components_Sections_Sections__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(50);
 function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
 
 /* 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/. */
 
 
 
@@ -644,34 +612,28 @@ function debounce(func, wait) {
     };
 
     timer = setTimeout(wakeUp, wait);
     func.apply(this, args);
   };
 }
 
 class _Base extends react__WEBPACK_IMPORTED_MODULE_7___default.a.PureComponent {
-  componentWillMount() {
-    if (this.props.isFirstrun) {
-      global.document.body.classList.add("welcome", "hide-main");
-    }
-  }
-
   componentWillUnmount() {
     this.updateTheme();
   }
 
   componentWillUpdate() {
     this.updateTheme();
   }
 
   updateTheme() {
     const bodyClassName = ["activity-stream", // If we skipped the about:welcome overlay and removed the CSS classes
     // we don't want to add them back to the Activity Stream view
-    document.body.classList.contains("welcome") ? "welcome" : "", document.body.classList.contains("hide-main") ? "hide-main" : "", document.body.classList.contains("inline-onboarding") ? "inline-onboarding" : ""].filter(v => v).join(" ");
+    document.body.classList.contains("inline-onboarding") ? "inline-onboarding" : ""].filter(v => v).join(" ");
     global.document.body.className = bodyClassName;
   }
 
   render() {
     const {
       props
     } = this;
     const {
@@ -772,40 +734,66 @@ class BaseContent extends react__WEBPACK
 }
 const Base = Object(react_redux__WEBPACK_IMPORTED_MODULE_4__["connect"])(state => ({
   App: state.App,
   Prefs: state.Prefs,
   Sections: state.Sections,
   DiscoveryStream: state.DiscoveryStream,
   Search: state.Search
 }))(_Base);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 3 */
+/***/ (function(module, exports) {
+
+var g;
+
+// This works in non-strict mode
+g = (function() {
+	return this;
+})();
+
+try {
+	// This works if eval is allowed (see CSP)
+	g = g || new Function("return this")();
+} catch (e) {
+	// This works if the window reference is available
+	if (typeof window === "object") g = window;
+}
+
+// g can still be undefined, but nothing to do about it...
+// We return undefined, instead of nothing here, so it's
+// easier to handle this case. if(!global) { ...}
+
+module.exports = g;
+
 
 /***/ }),
 /* 4 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ToggleStoryButton", function() { return ToggleStoryButton; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ToggleMessageJSON", function() { return ToggleMessageJSON; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TogglePrefCheckbox", function() { return TogglePrefCheckbox; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Personalization", function() { return Personalization; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DiscoveryStreamAdmin", function() { return DiscoveryStreamAdmin; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ASRouterAdminInner", function() { return ASRouterAdminInner; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CollapseToggle", function() { return CollapseToggle; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ASRouterAdmin", function() { return ASRouterAdmin; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var _asrouter_asrouter_content__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var _asrouter_components_ModalOverlay_ModalOverlay__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16);
+/* harmony import */ var _asrouter_components_ModalOverlay_ModalOverlay__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(17);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var _SimpleHashRouter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(23);
+/* harmony import */ var _SimpleHashRouter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18);
 function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
 
 /* 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/. */
 
 
 
@@ -1190,17 +1178,17 @@ class ASRouterAdminInner extends react__
     this.resetGroups = this.resetGroups.bind(this);
     this.state = {
       messageFilter: "all",
       messageGroupsFilter: "all",
       WNMessages: [],
       collapsedMessages: [],
       modifiedMessages: [],
       evaluationStatus: {},
-      trailhead: {},
+      trailheadTriplet: "",
       stringTargetingParameters: null,
       newStringTargetingParameters: null,
       copiedToClipboard: false,
       pasteFromClipboard: false,
       attributionParameters: {
         source: "addons.mozilla.org",
         medium: "referral",
         campaign: "non-fx-button",
@@ -1999,23 +1987,19 @@ class ASRouterAdminInner extends react__
         className: "errorReporting"
       }, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("thead", null, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("tr", null, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("th", null, "Provider ID"), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("th", null, "Message"), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("th", null, "Timestamp"))), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("tbody", null, providersWithErrors.map(this.renderErrorMessage)));
     }
 
     return react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("p", null, "No errors");
   }
 
   renderTrailheadInfo() {
-    const {
-      trailheadInterrupt,
-      trailheadTriplet
-    } = this.state.trailhead;
     return react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("table", {
       className: "minimal-table"
-    }, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("tbody", null, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("tr", null, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("td", null, "Interrupt branch"), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("td", null, trailheadInterrupt)), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("tr", null, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("td", null, "Triplet branch"), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("td", null, trailheadTriplet))));
+    }, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("tbody", null, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("tr", null, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("td", null, "Triplet branch"), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("td", null, this.state.trailheadTriplet))));
   }
 
   renderWNPTests() {
     if (!this.state.messages) {
       return null;
     }
 
     let messagesToShow = this.state.messages.filter(message => message.provider === "whats-new-panel");
@@ -2190,38 +2174,38 @@ class CollapseToggle extends react__WEBP
 const _ASRouterAdmin = props => react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_SimpleHashRouter__WEBPACK_IMPORTED_MODULE_5__["SimpleHashRouter"], null, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(CollapseToggle, props));
 
 const ASRouterAdmin = Object(react_redux__WEBPACK_IMPORTED_MODULE_2__["connect"])(state => ({
   Sections: state.Sections,
   DiscoveryStream: state.DiscoveryStream,
   Personalization: state.Personalization,
   Prefs: state.Prefs
 }))(_ASRouterAdmin);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
 
 /***/ }),
 /* 5 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ASRouterUtils", function() { return ASRouterUtils; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ASRouterUISurface", function() { return ASRouterUISurface; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var content_src_lib_init_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
-/* harmony import */ var _rich_text_strings__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(76);
+/* harmony import */ var _rich_text_strings__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(71);
 /* harmony import */ var _components_ImpressionsWrapper_ImpressionsWrapper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(8);
-/* harmony import */ var fluent_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(74);
+/* harmony import */ var fluent_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(69);
 /* harmony import */ var content_src_lib_constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(11);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_6__);
 /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(12);
 /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var _templates_template_manifest__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(75);
-/* harmony import */ var _templates_FirstRun_FirstRun__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(78);
+/* harmony import */ var _templates_template_manifest__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(70);
+/* harmony import */ var _templates_FirstRun_FirstRun__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(13);
 function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
 
 /* 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/. */
 
 
 
@@ -2229,18 +2213,17 @@ function _extends() { _extends = Object.
 
 
 
 
 
 
 const INCOMING_MESSAGE_NAME = "ASRouter:parent-to-child";
 const OUTGOING_MESSAGE_NAME = "ASRouter:child-to-parent";
-const TEMPLATES_ABOVE_PAGE = ["trailhead", "full_page_interrupt", "return_to_amo_overlay", "extended_triplets"];
-const FIRST_RUN_TEMPLATES = TEMPLATES_ABOVE_PAGE;
+const TEMPLATES_ABOVE_PAGE = ["extended_triplets"];
 const TEMPLATES_BELOW_SEARCH = ["simple_below_search_snippet"];
 const ASRouterUtils = {
   addListener(listener) {
     if (global.RPMAddMessageListener) {
       global.RPMAddMessageListener(INCOMING_MESSAGE_NAME, listener);
     }
   },
 
@@ -2371,18 +2354,17 @@ class ASRouterUISurface extends react__W
     super(props);
     this.onMessageFromParent = this.onMessageFromParent.bind(this);
     this.sendClick = this.sendClick.bind(this);
     this.sendImpression = this.sendImpression.bind(this);
     this.sendUserActionTelemetry = this.sendUserActionTelemetry.bind(this);
     this.onUserAction = this.onUserAction.bind(this);
     this.fetchFlowParams = this.fetchFlowParams.bind(this);
     this.state = {
-      message: {},
-      interruptCleared: false
+      message: {}
     };
 
     if (props.document) {
       this.headerPortal = props.document.getElementById("header-asrouter-container");
       this.footerPortal = props.document.getElementById("footer-asrouter-container");
     }
   }
 
@@ -2530,38 +2512,30 @@ class ASRouterUISurface extends react__W
     // message and 'id' matches one of the cards in message bundle
     if (this.state.message && this.state.message.bundle && this.state.message.bundle.find(card => card.id === id)) {
       this.requestMessage();
     }
 
     if (id === this.state.message.id) {
       this.setState({
         message: {}
-      }); // Remove any styles related to the RTAMO message
-
-      document.body.classList.remove("welcome", "hide-main", "amo");
+      });
     }
   }
 
   onMessageFromParent({
     data: action
   }) {
     switch (action.type) {
       case "SET_MESSAGE":
         this.setState({
           message: action.data
         });
         break;
 
-      case "CLEAR_INTERRUPT":
-        this.setState({
-          interruptCleared: true
-        });
-        break;
-
       case "CLEAR_MESSAGE":
         this.clearMessage(action.data.id);
         break;
 
       case "CLEAR_PROVIDER":
         if (action.data.id === this.state.message.provider) {
           this.setState({
             message: {}
@@ -2578,34 +2552,22 @@ class ASRouterUISurface extends react__W
 
       case "AS_ROUTER_TARGETING_UPDATE":
         action.data.forEach(id => this.clearMessage(id));
         break;
     }
   }
 
   requestMessage(endpoint) {
-    // If we are loading about:welcome we want to trigger the onboarding messages
-    if (this.props.document && this.props.document.location.href === "about:welcome") {
-      ASRouterUtils.sendMessage({
-        type: "TRIGGER",
-        data: {
-          trigger: {
-            id: "firstRun"
-          }
-        }
-      });
-    } else {
-      ASRouterUtils.sendMessage({
-        type: "NEWTAB_MESSAGE_REQUEST",
-        data: {
-          endpoint
-        }
-      });
-    }
+    ASRouterUtils.sendMessage({
+      type: "NEWTAB_MESSAGE_REQUEST",
+      data: {
+        endpoint
+      }
+    });
   }
 
   componentWillMount() {
     const endpoint = ASRouterUtils.getPreviewEndpoint();
 
     if (endpoint && endpoint.theme === "dark") {
       global.window.dispatchEvent(new CustomEvent("LightweightTheme:Set", {
         detail: {
@@ -2704,31 +2666,29 @@ class ASRouterUISurface extends react__W
     }), react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("span", null, "Preview Purposes Only"));
   }
 
   renderFirstRun() {
     const {
       message
     } = this.state;
 
-    if (FIRST_RUN_TEMPLATES.includes(message.template)) {
+    if (TEMPLATES_ABOVE_PAGE.includes(message.template)) {
       return react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement(_components_ImpressionsWrapper_ImpressionsWrapper__WEBPACK_IMPORTED_MODULE_3__["ImpressionsWrapper"], {
         id: "FIRST_RUN",
         message: this.state.message,
         sendImpression: this.sendImpression,
         shouldSendImpressionOnUpdate: shouldSendImpressionOnUpdate // This helps with testing
         ,
         document: this.props.document
       }, react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement(_templates_FirstRun_FirstRun__WEBPACK_IMPORTED_MODULE_9__["FirstRun"], {
         document: this.props.document,
-        interruptCleared: this.state.interruptCleared,
         message: message,
         sendUserActionTelemetry: this.sendUserActionTelemetry,
         executeAction: ASRouterUtils.executeAction,
-        dispatch: this.props.dispatch,
         onBlockById: ASRouterUtils.blockById,
         onDismiss: this.onDismissById(this.state.message.id),
         fxaEndpoint: this.props.fxaEndpoint,
         appUpdateChannel: this.props.appUpdateChannel,
         fetchFlowParams: this.fetchFlowParams
       }));
     }
 
@@ -2753,32 +2713,32 @@ class ASRouterUISurface extends react__W
     // everything in our footer container.
     react_dom__WEBPACK_IMPORTED_MODULE_7___default.a.createPortal(react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_6___default.a.Fragment, null, this.renderPreviewBanner(), this.renderFirstRun(), this.renderSnippets()), shouldRenderInHeader ? this.headerPortal : this.footerPortal);
   }
 
 }
 ASRouterUISurface.defaultProps = {
   document: global.document
 };
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
 
 /***/ }),
 /* 6 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MERGE_STORE_ACTION", function() { return MERGE_STORE_ACTION; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "OUTGOING_MESSAGE_NAME", function() { return OUTGOING_MESSAGE_NAME; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "INCOMING_MESSAGE_NAME", function() { return INCOMING_MESSAGE_NAME; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "EARLY_QUEUED_ACTIONS", function() { return EARLY_QUEUED_ACTIONS; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rehydrationMiddleware", function() { return rehydrationMiddleware; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "queueEarlyMessageMiddleware", function() { return queueEarlyMessageMiddleware; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "initStore", function() { return initStore; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7);
 /* harmony import */ var redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(redux__WEBPACK_IMPORTED_MODULE_1__);
 /* 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/. */
 
 /* eslint-env mozilla/frame-script */
 
@@ -2932,17 +2892,17 @@ function initStore(reducers, initialStat
 
         dump(`Content msg: ${JSON.stringify(msg)}\nDispatch error: ${ex}\n${ex.stack}`);
       }
     });
   }
 
   return store;
 }
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
 
 /***/ }),
 /* 7 */
 /***/ (function(module, exports) {
 
 module.exports = Redux;
 
 /***/ }),
@@ -3018,17 +2978,17 @@ class ImpressionsWrapper extends react__
     return this.props.children;
   }
 
 }
 ImpressionsWrapper.defaultProps = {
   document: global.document,
   sendOnMount: true
 };
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
 
 /***/ }),
 /* 9 */
 /***/ (function(module, exports) {
 
 module.exports = React;
 
 /***/ }),
@@ -3070,284 +3030,322 @@ const NEWTAB_DARK_THEME = {
   },
   sidebar_text: {
     r: 249,
     g: 249,
     b: 250,
     a: 1
   }
 };
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
 
 /***/ }),
 /* 12 */
 /***/ (function(module, exports) {
 
 module.exports = ReactDOM;
 
 /***/ }),
 /* 13 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "convertLinks", function() { return convertLinks; });
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RichText", function() { return RichText; });
-/* harmony import */ var fluent_react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(74);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _rich_text_strings__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(76);
-/* harmony import */ var _template_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(14);
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
-
-/* 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/. */
-
-
-
- // Elements allowed in snippet content
-
-const ALLOWED_TAGS = {
-  b: react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("b", null),
-  i: react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("i", null),
-  u: react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("u", null),
-  strong: react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("strong", null),
-  em: react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("em", null),
-  br: react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("br", null)
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FLUENT_FILES", function() { return FLUENT_FILES; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "helpers", function() { return helpers; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FirstRun", function() { return FirstRun; });
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _Triplets__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(14);
+/* harmony import */ var _addUtmParams__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(15);
+/* 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/. */
+
+
+ // Note: should match the transition time on .trailheadCards in _Trailhead.scss
+
+const TRANSITION_LENGTH = 500;
+const FLUENT_FILES = ["branding/brand.ftl", "browser/branding/brandings.ftl", "browser/branding/sync-brand.ftl", "browser/newtab/onboarding.ftl"];
+const helpers = {
+  addFluent(document) {
+    FLUENT_FILES.forEach(file => {
+      const link = document.head.appendChild(document.createElement("link"));
+      link.href = file;
+      link.rel = "localization";
+    });
+  }
+
 };
-/**
- * Transform an object (tag name: {url}) into (tag name: anchor) where the url
- * is used as href, in order to render links inside a Fluent.Localized component.
- */
-
-function convertLinks(links, sendClick, doNotAutoBlock, openNewWindow = false) {
-  if (links) {
-    return Object.keys(links).reduce((acc, linkTag) => {
-      const {
-        action
-      } = links[linkTag]; // Setting the value to false will not include the attribute in the anchor
-
-      const url = action ? false : Object(_template_utils__WEBPACK_IMPORTED_MODULE_3__["safeURI"])(links[linkTag].url);
-      acc[linkTag] = // eslint was getting a false positive caused by the dynamic injection
-      // of content.
-      // eslint-disable-next-line jsx-a11y/anchor-has-content
-      react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("a", {
-        href: url,
-        target: openNewWindow ? "_blank" : "",
-        "data-metric": links[linkTag].metric,
-        "data-action": action,
-        "data-args": links[linkTag].args,
-        "data-do_not_autoblock": doNotAutoBlock,
-        "data-entrypoint_name": links[linkTag].entrypoint_name,
-        "data-entrypoint_value": links[linkTag].entrypoint_value,
-        onClick: sendClick
-      });
-      return acc;
-    }, {});
-  }
-
-  return null;
-}
-/**
- * Message wrapper used to sanitize markup and render HTML.
- */
-
-function RichText(props) {
-  if (!_rich_text_strings__WEBPACK_IMPORTED_MODULE_2__["RICH_TEXT_KEYS"].includes(props.localization_id)) {
-    throw new Error(`ASRouter: ${props.localization_id} is not a valid rich text property. If you want it to be processed, you need to add it to asrouter/rich-text-strings.js`);
-  }
-
-  return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(fluent_react__WEBPACK_IMPORTED_MODULE_0__["Localized"], _extends({
-    id: props.localization_id
-  }, ALLOWED_TAGS, props.customElements, convertLinks(props.links, props.sendClick, props.doNotAutoBlock, props.openNewWindow)), react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("span", null, props.text));
+class FirstRun extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent {
+  constructor(props) {
+    super(props);
+    this.didLoadFlowParams = false;
+    this.state = {
+      didUserClearTriplets: false,
+      flowParams: undefined
+    };
+    this.closeTriplets = this.closeTriplets.bind(this);
+    helpers.addFluent(this.props.document); // Update utm campaign parameters by appending channel for
+    // differentiating campaign in amplitude
+
+    if (this.props.appUpdateChannel) {
+      _addUtmParams__WEBPACK_IMPORTED_MODULE_2__["BASE_PARAMS"].utm_campaign += `-${this.props.appUpdateChannel}`;
+    }
+  }
+
+  get UTMTerm() {
+    const {
+      message
+    } = this.props;
+    let UTMTerm = message.utm_term || "";
+    UTMTerm = message.utm_term && message.trailheadTriplet ? `${message.utm_term}-${message.trailheadTriplet}` : UTMTerm;
+    return UTMTerm;
+  }
+
+  async fetchFlowParams() {
+    const {
+      fxaEndpoint,
+      fetchFlowParams
+    } = this.props;
+
+    if (fxaEndpoint && this.UTMTerm && !this.didLoadFlowParams) {
+      this.didLoadFlowParams = true;
+      const flowParams = await fetchFlowParams({ ..._addUtmParams__WEBPACK_IMPORTED_MODULE_2__["BASE_PARAMS"],
+        entrypoint: "activity-stream-firstrun",
+        form_type: "email",
+        utm_term: this.UTMTerm
+      });
+      this.setState({
+        flowParams
+      });
+    }
+  }
+
+  componentDidMount() {
+    this.fetchFlowParams();
+  }
+
+  componentDidUpdate() {
+    // In case we didn't have FXA info immediately, try again when we receive it.
+    this.fetchFlowParams();
+  }
+
+  closeTriplets() {
+    this.setState({
+      didUserClearTriplets: true
+    }); // Closing triplets should prevent any future extended triplets from showing up
+
+    setTimeout(() => {
+      this.props.onBlockById("EXTENDED_TRIPLETS_1");
+    }, TRANSITION_LENGTH);
+  }
+
+  render() {
+    const {
+      props,
+      state,
+      UTMTerm
+    } = this;
+    const {
+      sendUserActionTelemetry,
+      executeAction,
+      message
+    } = props;
+    const {
+      didUserClearTriplets,
+      flowParams
+    } = state;
+    const hasTriplets = Boolean(message.bundle && message.bundle.length);
+    const triplets = hasTriplets ? message.bundle : null;
+    const isTripletsContainerVisible = hasTriplets && !didUserClearTriplets; // Allow 1) falsy to not render a header 2) default welcome header 3) custom header
+
+    const tripletsHeaderId = message.tripletsHeaderId === undefined ? "onboarding-welcome-header" : message.tripletsHeaderId;
+    return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_0___default.a.Fragment, null, hasTriplets ? react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_Triplets__WEBPACK_IMPORTED_MODULE_1__["Triplets"], {
+      document: props.document,
+      cards: triplets,
+      headerId: tripletsHeaderId,
+      showCardPanel: isTripletsContainerVisible,
+      hideContainer: this.closeTriplets,
+      sendUserActionTelemetry: sendUserActionTelemetry,
+      UTMTerm: `${UTMTerm}-card`,
+      flowParams: flowParams,
+      onAction: executeAction,
+      onBlockById: props.onBlockById
+    }) : null);
+  }
+
 }
 
 /***/ }),
 /* 14 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "safeURI", function() { return safeURI; });
-/* 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/. */
-function safeURI(url) {
-  if (!url) {
-    return "";
-  }
-
-  const {
-    protocol
-  } = new URL(url);
-  const isAllowed = ["http:", "https:", "data:", "resource:", "chrome:"].includes(protocol);
-
-  if (!isAllowed) {
-    console.warn(`The protocol ${protocol} is not allowed for template URLs.`); // eslint-disable-line no-console
-  }
-
-  return isAllowed ? url : "";
-}
+/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Triplets", function() { return Triplets; });
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
+/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _templates_OnboardingMessage_OnboardingMessage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(74);
+/* harmony import */ var _addUtmParams__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(15);
+function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
+
+/* 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/. */
+
+
+
+class Triplets extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent {
+  constructor(props) {
+    super(props);
+    this.onCardAction = this.onCardAction.bind(this);
+    this.onHideContainer = this.onHideContainer.bind(this);
+  }
+
+  componentWillMount() {
+    global.document.body.classList.add("inline-onboarding");
+  }
+
+  componentWillUnmount() {
+    this.props.document.body.classList.remove("inline-onboarding");
+  }
+
+  onCardAction(action, message) {
+    let actionUpdates = {};
+    const {
+      flowParams,
+      UTMTerm
+    } = this.props;
+
+    if (action.type === "OPEN_URL") {
+      let url = new URL(action.data.args);
+      Object(_addUtmParams__WEBPACK_IMPORTED_MODULE_2__["addUtmParams"])(url, UTMTerm);
+
+      if (action.addFlowParams) {
+        url.searchParams.append("device_id", flowParams.deviceId);
+        url.searchParams.append("flow_id", flowParams.flowId);
+        url.searchParams.append("flow_begin_time", flowParams.flowBeginTime);
+      }
+
+      actionUpdates = {
+        data: { ...action.data,
+          args: url.toString()
+        }
+      };
+    }
+
+    this.props.onAction({ ...action,
+      ...actionUpdates
+    }); // Only block if message is in dynamic triplets experiment
+
+    if (message.blockOnClick) {
+      this.props.onBlockById(message.id, {
+        preloadedOnly: true
+      });
+    }
+  }
+
+  onHideContainer() {
+    const {
+      sendUserActionTelemetry,
+      cards,
+      hideContainer
+    } = this.props;
+    hideContainer();
+    sendUserActionTelemetry({
+      event: "DISMISS",
+      id: "onboarding-cards",
+      message_id: cards.map(m => m.id).join(","),
+      action: "onboarding_user_event"
+    });
+  }
+
+  render() {
+    const {
+      cards,
+      headerId,
+      showCardPanel,
+      sendUserActionTelemetry
+    } = this.props;
+    return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
+      className: `trailheadCards ${showCardPanel ? "expanded" : "collapsed"}`
+    }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
+      className: "trailheadCardsInner",
+      "aria-hidden": !showCardPanel
+    }, headerId && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h1", {
+      "data-l10n-id": headerId
+    }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
+      className: `trailheadCardGrid${showCardPanel ? " show" : ""}`
+    }, cards.map(card => react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_templates_OnboardingMessage_OnboardingMessage__WEBPACK_IMPORTED_MODULE_1__["OnboardingCard"], _extends({
+      key: card.id,
+      message: card,
+      className: "trailheadCard",
+      sendUserActionTelemetry: sendUserActionTelemetry,
+      onAction: this.onCardAction,
+      UISurface: "TRAILHEAD"
+    }, card)))), showCardPanel && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("button", {
+      className: "icon icon-dismiss",
+      onClick: this.onHideContainer,
+      "data-l10n-id": "onboarding-cards-dismiss"
+    })));
+  }
+
+}
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
 
 /***/ }),
 /* 15 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
-/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Trailhead", function() { return Trailhead; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var _components_ModalOverlay_ModalOverlay__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16);
-/* harmony import */ var _components_FxASignupForm_FxASignupForm__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(17);
-/* harmony import */ var _FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(18);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
-/* 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/. */
-
-
-
-
- // From resource://devtools/client/shared/focus.js
-
-const FOCUSABLE_SELECTOR = ["a[href]:not([tabindex='-1'])", "button:not([disabled]):not([tabindex='-1'])", "iframe:not([tabindex='-1'])", "input:not([disabled]):not([tabindex='-1'])", "select:not([disabled]):not([tabindex='-1'])", "textarea:not([disabled]):not([tabindex='-1'])", "[tabindex]:not([tabindex='-1'])"].join(", ");
-class Trailhead extends react__WEBPACK_IMPORTED_MODULE_4___default.a.PureComponent {
-  constructor(props) {
-    super(props);
-    this.closeModal = this.closeModal.bind(this);
-    this.onStartBlur = this.onStartBlur.bind(this);
-  }
-
-  get dialog() {
-    return this.props.document.getElementById("trailheadDialog");
-  }
-
-  componentDidMount() {
-    // We need to remove hide-main since we should show it underneath everything that has rendered
-    this.props.document.body.classList.remove("hide-main"); // The rest of the page is "hidden" to screen readers when the modal is open
-
-    this.props.document.getElementById("root").setAttribute("aria-hidden", "true");
-  }
-
-  onStartBlur(event) {
-    // Make sure focus stays within the dialog when tabbing from the button
-    const {
-      dialog
-    } = this;
-
-    if (event.relatedTarget && !(dialog.compareDocumentPosition(event.relatedTarget) & dialog.DOCUMENT_POSITION_CONTAINED_BY)) {
-      dialog.querySelector(FOCUSABLE_SELECTOR).focus();
-    }
-  }
-
-  closeModal(ev) {
-    global.removeEventListener("visibilitychange", this.closeModal);
-    this.props.document.body.classList.remove("welcome");
-    this.props.document.getElementById("root").removeAttribute("aria-hidden");
-    this.props.onNextScene(); // If closeModal() was triggered by a visibilitychange event, the user actually
-    // submitted the email form so we don't send a SKIPPED_SIGNIN ping.
-
-    if (!ev || ev.type !== "visibilitychange") {
-      this.props.dispatch(common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__["actionCreators"].UserEvent({
-        event: "SKIPPED_SIGNIN",
-        ...this._getFormInfo()
-      }));
-    } // Bug 1190882 - Focus in a disappearing dialog confuses screen readers
-
-
-    this.props.document.activeElement.blur();
-  }
-  /**
-   * Report to telemetry additional information about the form submission.
-   */
-
-
-  _getFormInfo() {
-    const value = {
-      has_flow_params: !!this.props.flowParams.flowId.length
-    };
-    return {
-      value
-    };
-  }
-
-  render() {
-    const {
-      props
-    } = this;
-    const {
-      UTMTerm
-    } = props;
-    const {
-      content
-    } = props.message;
-    const innerClassName = ["trailhead", content && content.className].filter(v => v).join(" ");
-    return react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_components_ModalOverlay_ModalOverlay__WEBPACK_IMPORTED_MODULE_1__["ModalOverlayWrapper"], {
-      innerClassName: innerClassName,
-      onClose: this.closeModal,
-      id: "trailheadDialog",
-      headerId: "trailheadHeader",
-      hasDismissIcon: true
-    }, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("div", {
-      className: "trailheadInner"
-    }, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("div", {
-      className: "trailheadContent"
-    }, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("h1", {
-      "data-l10n-id": content.title.string_id,
-      id: "trailheadHeader"
-    }), content.subtitle && react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("p", {
-      "data-l10n-id": content.subtitle.string_id
-    }), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("ul", {
-      className: "trailheadBenefits"
-    }, content.benefits.map(item => react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("li", {
-      key: item.id,
-      className: item.id
-    }, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("h2", {
-      "data-l10n-id": item.title.string_id
-    }), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("p", {
-      "data-l10n-id": item.text.string_id
-    })))), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("a", {
-      className: "trailheadLearn",
-      "data-l10n-id": content.learn.text.string_id,
-      href: Object(_FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_3__["addUtmParams"])(content.learn.url, UTMTerm),
-      target: "_blank",
-      rel: "noopener noreferrer"
-    })), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("div", {
-      className: "trailhead-join-form"
-    }, react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(_components_FxASignupForm_FxASignupForm__WEBPACK_IMPORTED_MODULE_2__["FxASignupForm"], {
-      document: this.props.document,
-      content: content,
-      dispatch: this.props.dispatch,
-      fxaEndpoint: this.props.fxaEndpoint,
-      UTMTerm: UTMTerm,
-      flowParams: this.props.flowParams,
-      onClose: this.closeModal,
-      showSignInLink: true
-    }))), react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("button", {
-      className: "trailheadStart",
-      "data-l10n-id": content.skipButton.string_id,
-      onBlur: this.onStartBlur,
-      onClick: this.closeModal
-    }));
-  }
-
-}
-Trailhead.defaultProps = {
-  flowParams: {
-    deviceId: "",
-    flowId: "",
-    flowBeginTime: ""
-  }
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BASE_PARAMS", function() { return BASE_PARAMS; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addUtmParams", function() { return addUtmParams; });
+/* 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/. */
+
+/**
+ * BASE_PARAMS keys/values can be modified from outside this file
+ */
+const BASE_PARAMS = {
+  utm_source: "activity-stream",
+  utm_campaign: "firstrun",
+  utm_medium: "referral"
 };
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
+/**
+ * Takes in a url as a string or URL object and returns a URL object with the
+ * utm_* parameters added to it. If a URL object is passed in, the paraemeters
+ * are added to it (the return value can be ignored in that case as it's the
+ * same object).
+ */
+
+function addUtmParams(url, utmTerm) {
+  let returnUrl = url;
+
+  if (typeof returnUrl === "string") {
+    returnUrl = new URL(url);
+  }
+
+  Object.keys(BASE_PARAMS).forEach(key => {
+    returnUrl.searchParams.append(key, BASE_PARAMS[key]);
+  });
+  returnUrl.searchParams.append("utm_term", utmTerm);
+  return returnUrl;
+}
 
 /***/ }),
 /* 16 */
+/***/ (function(module, exports) {
+
+module.exports = ReactRedux;
+
+/***/ }),
+/* 17 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ModalOverlayWrapper", function() { return ModalOverlayWrapper; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ModalOverlay", function() { return ModalOverlay; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
@@ -3430,678 +3428,24 @@ class ModalOverlay extends react__WEBPAC
       className: "footer"
     }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("button", {
       className: "button primary modalButton",
       onClick: this.props.onDismissBundle
     }, " ", button_label, " ")));
   }
 
 }
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 17 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FxASignupForm", function() { return FxASignupForm; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var _templates_FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_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/. */
-
-
-
-class FxASignupForm extends react__WEBPACK_IMPORTED_MODULE_2___default.a.PureComponent {
-  constructor(props) {
-    super(props);
-    this.onSubmit = this.onSubmit.bind(this);
-    this.onInputChange = this.onInputChange.bind(this);
-    this.onInputInvalid = this.onInputInvalid.bind(this);
-    this.handleSignIn = this.handleSignIn.bind(this);
-    this.state = {
-      emailInput: ""
-    };
-  }
-
-  get email() {
-    return this.props.document.getElementById("fxaSignupForm").querySelector("input[name=email]");
-  }
-
-  onSubmit(event) {
-    let userEvent = "SUBMIT_EMAIL";
-    const {
-      email
-    } = event.target.elements;
-
-    if (email.disabled) {
-      userEvent = "SUBMIT_SIGNIN";
-    } else if (!email.value.length) {
-      email.required = true;
-      email.checkValidity();
-      event.preventDefault();
-      return;
-    } // Report to telemetry additional information about the form submission.
-
-
-    const value = {
-      has_flow_params: !!this.props.flowParams.flowId.length
-    };
-    this.props.dispatch(common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__["actionCreators"].UserEvent({
-      event: userEvent,
-      value
-    }));
-    global.addEventListener("visibilitychange", this.props.onClose);
-  }
-
-  handleSignIn(event) {
-    // Set disabled to prevent email from appearing in url resulting in the wrong page
-    this.email.disabled = true;
-  }
-
-  componentDidMount() {
-    // Start with focus in the email input box
-    if (this.email) {
-      this.email.focus();
-    }
-  }
-
-  onInputChange(e) {
-    let error = e.target.previousSibling;
-    this.setState({
-      emailInput: e.target.value
-    });
-    error.classList.remove("active");
-    e.target.classList.remove("invalid");
-  }
-
-  onInputInvalid(e) {
-    let error = e.target.previousSibling;
-    error.classList.add("active");
-    e.target.classList.add("invalid");
-    e.preventDefault(); // Override built-in form validation popup
-
-    e.target.focus();
-  }
-
-  render() {
-    const {
-      content,
-      UTMTerm
-    } = this.props;
-    return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("div", {
-      id: "fxaSignupForm",
-      role: "group",
-      "aria-labelledby": "joinFormHeader",
-      "aria-describedby": "joinFormBody",
-      className: "fxaSignupForm"
-    }, react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("h3", {
-      id: "joinFormHeader",
-      "data-l10n-id": content.form.title.string_id
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("p", {
-      id: "joinFormBody",
-      "data-l10n-id": content.form.text.string_id
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("form", {
-      method: "get",
-      action: this.props.fxaEndpoint,
-      target: "_blank",
-      rel: "noopener noreferrer",
-      onSubmit: this.onSubmit
-    }, react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "action",
-      type: "hidden",
-      value: "email"
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "context",
-      type: "hidden",
-      value: "fx_desktop_v3"
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "entrypoint",
-      type: "hidden",
-      value: "activity-stream-firstrun"
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "utm_source",
-      type: "hidden",
-      value: "activity-stream"
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "utm_campaign",
-      type: "hidden",
-      value: _templates_FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_1__["BASE_PARAMS"].utm_campaign
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "utm_term",
-      type: "hidden",
-      value: UTMTerm
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "device_id",
-      type: "hidden",
-      value: this.props.flowParams.deviceId
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "flow_id",
-      type: "hidden",
-      value: this.props.flowParams.flowId
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "flow_begin_time",
-      type: "hidden",
-      value: this.props.flowParams.flowBeginTime
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      name: "style",
-      type: "hidden",
-      value: "trailhead"
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("p", {
-      "data-l10n-id": "onboarding-join-form-email-error",
-      className: "error"
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("input", {
-      "data-l10n-id": content.form.email.string_id,
-      name: "email",
-      type: "email",
-      onInvalid: this.onInputInvalid,
-      onChange: this.onInputChange
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("p", {
-      className: "fxa-terms",
-      "data-l10n-id": "onboarding-join-form-legal"
-    }, react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("a", {
-      "data-l10n-name": "terms",
-      target: "_blank",
-      rel: "noopener noreferrer",
-      href: Object(_templates_FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_1__["addUtmParams"])("https://accounts.firefox.com/legal/terms", UTMTerm)
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("a", {
-      "data-l10n-name": "privacy",
-      target: "_blank",
-      rel: "noopener noreferrer",
-      href: Object(_templates_FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_1__["addUtmParams"])("https://accounts.firefox.com/legal/privacy", UTMTerm)
-    })), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("button", {
-      "data-l10n-id": content.form.button.string_id,
-      type: "submit"
-    }), this.props.showSignInLink && react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("div", {
-      className: "fxa-signin"
-    }, react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("span", {
-      "data-l10n-id": "onboarding-join-form-signin-label"
-    }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("button", {
-      "data-l10n-id": "onboarding-join-form-signin",
-      onClick: this.handleSignIn
-    }))));
-  }
-
-}
-FxASignupForm.defaultProps = {
-  document: global.document
-};
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
 
 /***/ }),
 /* 18 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BASE_PARAMS", function() { return BASE_PARAMS; });
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addUtmParams", function() { return addUtmParams; });
-/* 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/. */
-
-/**
- * BASE_PARAMS keys/values can be modified from outside this file
- */
-const BASE_PARAMS = {
-  utm_source: "activity-stream",
-  utm_campaign: "firstrun",
-  utm_medium: "referral"
-};
-/**
- * Takes in a url as a string or URL object and returns a URL object with the
- * utm_* parameters added to it. If a URL object is passed in, the paraemeters
- * are added to it (the return value can be ignored in that case as it's the
- * same object).
- */
-
-function addUtmParams(url, utmTerm) {
-  let returnUrl = url;
-
-  if (typeof returnUrl === "string") {
-    returnUrl = new URL(url);
-  }
-
-  Object.keys(BASE_PARAMS).forEach(key => {
-    returnUrl.searchParams.append(key, BASE_PARAMS[key]);
-  });
-  returnUrl.searchParams.append("utm_term", utmTerm);
-  return returnUrl;
-}
-
-/***/ }),
-/* 19 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ReturnToAMO", function() { return ReturnToAMO; });
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _components_RichText_RichText__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(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/. */
-
- // Alt text if available; in the future this should come from the server. See bug 1551711
-
-const ICON_ALT_TEXT = "";
-class ReturnToAMO extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent {
-  constructor(props) {
-    super(props);
-    this.onClickAddExtension = this.onClickAddExtension.bind(this);
-    this.onBlockButton = this.onBlockButton.bind(this);
-  }
-
-  componentWillMount() {
-    global.document.body.classList.add("amo");
-  }
-
-  componentDidMount() {
-    this.props.sendUserActionTelemetry({
-      event: "IMPRESSION",
-      id: this.props.UISurface
-    }); // Hide the page content from screen readers while the modal is open
-
-    this.props.document.getElementById("root").setAttribute("aria-hidden", "true");
-  }
-
-  onClickAddExtension() {
-    this.props.onAction(this.props.content.primary_button.action);
-    this.props.sendUserActionTelemetry({
-      event: "INSTALL",
-      id: this.props.UISurface
-    });
-  }
-
-  onBlockButton() {
-    this.props.onBlock();
-    document.body.classList.remove("welcome", "hide-main", "amo");
-    this.props.sendUserActionTelemetry({
-      event: "BLOCK",
-      id: this.props.UISurface
-    }); // Re-enable the document for screen readers
-
-    this.props.document.getElementById("root").setAttribute("aria-hidden", "false");
-  }
-
-  renderText() {
-    const customElement = react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("img", {
-      src: this.props.content.addon_icon,
-      width: "20px",
-      height: "20px",
-      alt: ICON_ALT_TEXT
-    });
-    return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_components_RichText_RichText__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
-      customElements: {
-        icon: customElement
-      },
-      amo_html: this.props.content.text,
-      localization_id: "amo_html"
-    });
-  }
-
-  render() {
-    const {
-      content
-    } = this.props;
-    return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
-      className: "ReturnToAMOOverlay"
-    }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", null, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h2", null, " ", content.header, " "), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
-      className: "ReturnToAMOContainer"
-    }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
-      className: "ReturnToAMOAddonContents"
-    }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("p", null, " ", content.title, " "), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
-      className: "ReturnToAMOText"
-    }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", null, " ", this.renderText(), " ")), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("button", {
-      onClick: this.onClickAddExtension,
-      className: "puffy blue ReturnToAMOAddExtension"
-    }, " ", react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", {
-      className: "icon icon-add"
-    }), " ", content.primary_button.label, " ")), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
-      className: "ReturnToAMOIcon"
-    })), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("button", {
-      onClick: this.onBlockButton,
-      className: "default grey ReturnToAMOGetStarted"
-    }, " ", content.secondary_button.label, " ")));
-  }
-
-}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 20 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FxAccounts", function() { return FxAccounts; });
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FxCards", function() { return FxCards; });
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FullPageInterrupt", function() { return FullPageInterrupt; });
-/* harmony import */ var _FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(18);
-/* harmony import */ var _components_FxASignupForm_FxASignupForm__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(17);
-/* harmony import */ var _templates_OnboardingMessage_OnboardingMessage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(80);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
-
-/* 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/. */
-
-
-
-
-const FxAccounts = ({
-  document,
-  content,
-  dispatch,
-  fxaEndpoint,
-  flowParams,
-  removeOverlay,
-  url,
-  UTMTerm
-}) => react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_3___default.a.Fragment, null, react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
-  className: "fullpage-left-section",
-  "aria-labelledby": "fullpage-left-title",
-  "aria-describedby": "fullpage-left-content"
-}, react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("h1", {
-  id: "fullpage-left-title",
-  className: "fullpage-left-title",
-  "data-l10n-id": "onboarding-welcome-body"
-}), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("p", {
-  id: "fullpage-left-content",
-  className: "fullpage-left-content",
-  "data-l10n-id": "onboarding-benefit-products-text"
-}), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("p", {
-  className: "fullpage-left-content",
-  "data-l10n-id": "onboarding-benefit-privacy-text"
-}), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("a", {
-  className: "fullpage-left-link",
-  href: Object(_FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_0__["addUtmParams"])(url, UTMTerm),
-  target: "_blank",
-  rel: "noopener noreferrer",
-  "data-l10n-id": "onboarding-welcome-learn-more"
-}), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
-  className: "fullpage-icon fx-systems-icons"
-})), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
-  className: "fullpage-form"
-}, react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_components_FxASignupForm_FxASignupForm__WEBPACK_IMPORTED_MODULE_1__["FxASignupForm"], {
-  document: document,
-  content: content,
-  dispatch: dispatch,
-  fxaEndpoint: fxaEndpoint,
-  UTMTerm: UTMTerm,
-  flowParams: flowParams,
-  onClose: removeOverlay,
-  showSignInLink: true
-})));
-const FxCards = ({
-  cards,
-  onCardAction,
-  sendUserActionTelemetry
-}) => react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_3___default.a.Fragment, null, cards.map(card => react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_templates_OnboardingMessage_OnboardingMessage__WEBPACK_IMPORTED_MODULE_2__["OnboardingCard"], _extends({
-  key: card.id,
-  message: card,
-  className: "trailheadCard",
-  sendUserActionTelemetry: sendUserActionTelemetry,
-  onAction: onCardAction,
-  UISurface: "TRAILHEAD"
-}, card))));
-class FullPageInterrupt extends react__WEBPACK_IMPORTED_MODULE_3___default.a.PureComponent {
-  constructor(props) {
-    super(props);
-    this.removeOverlay = this.removeOverlay.bind(this);
-    this.onCardAction = this.onCardAction.bind(this);
-  }
-
-  componentWillMount() {
-    global.document.body.classList.add("trailhead-fullpage");
-  }
-
-  componentDidMount() {
-    // Hide the page content from screen readers while the full page interrupt is open
-    this.props.document.getElementById("root").setAttribute("aria-hidden", "true");
-  }
-
-  removeOverlay() {
-    window.removeEventListener("visibilitychange", this.removeOverlay);
-    document.body.classList.remove("hide-main", "trailhead-fullpage"); // Re-enable the document for screen readers
-
-    this.props.document.getElementById("root").setAttribute("aria-hidden", "false");
-    this.props.onBlock();
-    document.body.classList.remove("welcome");
-  }
-
-  onCardAction(action, message) {
-    let actionUpdates = {};
-    const {
-      flowParams,
-      UTMTerm
-    } = this.props;
-
-    if (action.type === "OPEN_URL") {
-      let url = new URL(action.data.args);
-      Object(_FirstRun_addUtmParams__WEBPACK_IMPORTED_MODULE_0__["addUtmParams"])(url, UTMTerm);
-
-      if (action.addFlowParams) {
-        url.searchParams.append("device_id", flowParams.deviceId);
-        url.searchParams.append("flow_id", flowParams.flowId);
-        url.searchParams.append("flow_begin_time", flowParams.flowBeginTime);
-      }
-
-      actionUpdates = {
-        data: { ...action.data,
-          args: url.toString()
-        }
-      };
-    }
-
-    this.props.onAction({ ...action,
-      ...actionUpdates
-    }); // Only block if message is in dynamic triplets experiment
-
-    if (message.blockOnClick) {
-      this.props.onBlockById(message.id, {
-        preloadedOnly: true
-      });
-    }
-
-    this.removeOverlay();
-  }
-
-  render() {
-    const {
-      props
-    } = this;
-    const {
-      content
-    } = props.message;
-    const cards = react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FxCards, {
-      cards: props.cards,
-      onCardAction: this.onCardAction,
-      sendUserActionTelemetry: props.sendUserActionTelemetry
-    });
-    const accounts = react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FxAccounts, {
-      document: props.document,
-      content: content,
-      dispatch: props.dispatch,
-      fxaEndpoint: props.fxaEndpoint,
-      flowParams: props.flowParams,
-      removeOverlay: this.removeOverlay,
-      url: content.learn.url,
-      UTMTerm: props.UTMTerm
-    }); // By default we show accounts section on top and
-    // cards section in bottom half of the full page interrupt
-
-    const cardsFirst = content && content.className === "fullPageCardsAtTop";
-    const firstContainerClassName = ["container", content && content.className].join(" ");
-    return react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
-      className: "fullpage-wrapper"
-    }, react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
-      className: "fullpage-icon brand-logo"
-    }), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("h1", {
-      className: "welcome-title",
-      "data-l10n-id": "onboarding-welcome-header"
-    }), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("h2", {
-      className: "welcome-subtitle",
-      "data-l10n-id": "onboarding-fullpage-welcome-subheader"
-    }), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
-      className: firstContainerClassName
-    }, cardsFirst ? cards : accounts), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
-      className: "section-divider"
-    }), react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
-      className: "container"
-    }, cardsFirst ? accounts : cards));
-  }
-
-}
-FullPageInterrupt.defaultProps = {
-  flowParams: {
-    deviceId: "",
-    flowId: "",
-    flowBeginTime: ""
-  }
-};
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 21 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Triplets", function() { return Triplets; });
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _templates_OnboardingMessage_OnboardingMessage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(80);
-/* harmony import */ var _addUtmParams__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(18);
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
-
-/* 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/. */
-
-
-
-class Triplets extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent {
-  constructor(props) {
-    super(props);
-    this.onCardAction = this.onCardAction.bind(this);
-    this.onHideContainer = this.onHideContainer.bind(this);
-  }
-
-  componentWillMount() {
-    global.document.body.classList.add("inline-onboarding");
-  }
-
-  componentWillUnmount() {
-    this.props.document.body.classList.remove("inline-onboarding");
-  }
-
-  onCardAction(action, message) {
-    let actionUpdates = {};
-    const {
-      flowParams,
-      UTMTerm
-    } = this.props;
-
-    if (action.type === "OPEN_URL") {
-      let url = new URL(action.data.args);
-      Object(_addUtmParams__WEBPACK_IMPORTED_MODULE_2__["addUtmParams"])(url, UTMTerm);
-
-      if (action.addFlowParams) {
-        url.searchParams.append("device_id", flowParams.deviceId);
-        url.searchParams.append("flow_id", flowParams.flowId);
-        url.searchParams.append("flow_begin_time", flowParams.flowBeginTime);
-      }
-
-      actionUpdates = {
-        data: { ...action.data,
-          args: url.toString()
-        }
-      };
-    }
-
-    this.props.onAction({ ...action,
-      ...actionUpdates
-    }); // Only block if message is in dynamic triplets experiment
-
-    if (message.blockOnClick) {
-      this.props.onBlockById(message.id, {
-        preloadedOnly: true
-      });
-    }
-  }
-
-  onHideContainer() {
-    const {
-      sendUserActionTelemetry,
-      cards,
-      hideContainer
-    } = this.props;
-    hideContainer();
-    sendUserActionTelemetry({
-      event: "DISMISS",
-      id: "onboarding-cards",
-      message_id: cards.map(m => m.id).join(","),
-      action: "onboarding_user_event"
-    });
-  }
-
-  render() {
-    const {
-      cards,
-      headerId,
-      showCardPanel,
-      showContent,
-      sendUserActionTelemetry
-    } = this.props;
-    return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
-      className: `trailheadCards ${showCardPanel ? "expanded" : "collapsed"}`
-    }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
-      className: "trailheadCardsInner",
-      "aria-hidden": !showContent
-    }, headerId && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("h1", {
-      "data-l10n-id": headerId
-    }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
-      className: `trailheadCardGrid${showContent ? " show" : ""}`
-    }, cards.map(card => react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_templates_OnboardingMessage_OnboardingMessage__WEBPACK_IMPORTED_MODULE_1__["OnboardingCard"], _extends({
-      key: card.id,
-      message: card,
-      className: "trailheadCard",
-      sendUserActionTelemetry: sendUserActionTelemetry,
-      onAction: this.onCardAction,
-      UISurface: "TRAILHEAD"
-    }, card)))), showCardPanel && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("button", {
-      className: "icon icon-dismiss",
-      onClick: this.onHideContainer,
-      "data-l10n-id": "onboarding-cards-dismiss"
-    })));
-  }
-
-}
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 22 */
-/***/ (function(module, exports) {
-
-module.exports = ReactRedux;
-
-/***/ }),
-/* 23 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SimpleHashRouter", function() { return SimpleHashRouter; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 /* 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/. */
 
 class SimpleHashRouter extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent {
@@ -4133,28 +3477,28 @@ class SimpleHashRouter extends react__WE
       location: {
         hash: this.state.hash,
         routes
       }
     });
   }
 
 }
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 24 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 19 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_ConfirmDialog", function() { return _ConfirmDialog; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ConfirmDialog", function() { return ConfirmDialog; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_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/. */
 
 
@@ -4241,44 +3585,44 @@ class _ConfirmDialog extends react__WEBP
       "data-l10n-id": this.props.data.confirm_button_string_id
     }))));
   }
 
 }
 const ConfirmDialog = Object(react_redux__WEBPACK_IMPORTED_MODULE_1__["connect"])(state => state.Dialog)(_ConfirmDialog);
 
 /***/ }),
-/* 25 */
+/* 20 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isAllowedCSS", function() { return isAllowedCSS; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_DiscoveryStreamBase", function() { return _DiscoveryStreamBase; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DiscoveryStreamBase", function() { return DiscoveryStreamBase; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_CardGrid_CardGrid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(26);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_CollectionCardGrid_CollectionCardGrid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(41);
-/* harmony import */ var content_src_components_CollapsibleSection_CollapsibleSection__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(43);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_CardGrid_CardGrid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_CollectionCardGrid_CollectionCardGrid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(36);
+/* harmony import */ var content_src_components_CollapsibleSection_CollapsibleSection__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(38);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSMessage_DSMessage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(48);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSPrivacyModal_DSPrivacyModal__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(49);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSSignup_DSSignup__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(50);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSTextPromo_DSTextPromo__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(51);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_Hero_Hero__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(52);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_Highlights_Highlights__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(54);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_HorizontalRule_HorizontalRule__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(67);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_List_List__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(53);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_Navigation_Navigation__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(68);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSMessage_DSMessage__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(43);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSPrivacyModal_DSPrivacyModal__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(44);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSSignup_DSSignup__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(45);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSTextPromo_DSTextPromo__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(46);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_Hero_Hero__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(47);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_Highlights_Highlights__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(49);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_HorizontalRule_HorizontalRule__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(62);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_List_List__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(48);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_Navigation_Navigation__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(63);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_14__);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_SectionTitle_SectionTitle__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(69);
-/* harmony import */ var content_src_lib_selectLayoutRender__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(70);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_TopSites_TopSites__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(71);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_SectionTitle_SectionTitle__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(64);
+/* harmony import */ var content_src_lib_selectLayoutRender__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(65);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_TopSites_TopSites__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(66);
 /* 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/. */
 
 
 
 
 
@@ -4633,28 +3977,28 @@ class _DiscoveryStreamBase extends react
 
 }
 const DiscoveryStreamBase = Object(react_redux__WEBPACK_IMPORTED_MODULE_4__["connect"])(state => ({
   DiscoveryStream: state.DiscoveryStream,
   Prefs: state.Prefs,
   Sections: state.Sections,
   document: global.document
 }))(_DiscoveryStreamBase);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 26 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 21 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CardGrid", function() { return CardGrid; });
-/* harmony import */ var _DSCard_DSCard_jsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(27);
-/* harmony import */ var _DSEmptyState_DSEmptyState_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(40);
-/* harmony import */ var _FluentOrText_FluentOrText_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39);
+/* harmony import */ var _DSCard_DSCard_jsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22);
+/* harmony import */ var _DSEmptyState_DSEmptyState_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(35);
+/* harmony import */ var _FluentOrText_FluentOrText_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(34);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
 /* 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/. */
 
 
 
@@ -4736,36 +4080,36 @@ class CardGrid extends react__WEBPACK_IM
 CardGrid.defaultProps = {
   border: `border`,
   items: 4,
   // Number of stories to display
   enable_video_playheads: false
 };
 
 /***/ }),
-/* 27 */
+/* 22 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DefaultMeta", function() { return DefaultMeta; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CTAButtonMeta", function() { return CTAButtonMeta; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_DSCard", function() { return _DSCard; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSCard", function() { return DSCard; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlaceholderDSCard", function() { return PlaceholderDSCard; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var _DSImage_DSImage_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(28);
-/* harmony import */ var _DSLinkMenu_DSLinkMenu__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(29);
-/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var _DSImage_DSImage_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(23);
+/* harmony import */ var _DSLinkMenu_DSLinkMenu__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(24);
+/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(35);
-/* harmony import */ var _DSContextFooter_DSContextFooter_jsx__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(36);
-/* harmony import */ var _FluentOrText_FluentOrText_jsx__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(39);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(22);
+/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(30);
+/* harmony import */ var _DSContextFooter_DSContextFooter_jsx__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(31);
+/* harmony import */ var _FluentOrText_FluentOrText_jsx__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(34);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_8__);
 /* 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/. */
 
 
 
 
@@ -5045,17 +4389,17 @@ class _DSCard extends react__WEBPACK_IMP
 const DSCard = Object(react_redux__WEBPACK_IMPORTED_MODULE_8__["connect"])(state => ({
   App: state.App
 }))(_DSCard);
 const PlaceholderDSCard = props => react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement(DSCard, {
   placeholder: true
 });
 
 /***/ }),
-/* 28 */
+/* 23 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSImage", function() { return DSImage; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 /* This Source Code Form is subject to the terms of the Mozilla Public
@@ -5197,24 +4541,24 @@ DSImage.defaultProps = {
   // Measure parent container to request exact sizes
   alt_text: null,
   windowObj: window,
   // Added to support unit tests
   sizes: []
 };
 
 /***/ }),
-/* 29 */
+/* 24 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSLinkMenu", function() { return DSLinkMenu; });
-/* harmony import */ var content_src_components_LinkMenu_LinkMenu__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(30);
-/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(33);
+/* harmony import */ var content_src_components_LinkMenu_LinkMenu__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(25);
+/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(28);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_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/. */
 
 
 
@@ -5287,28 +4631,28 @@ class DSLinkMenu extends react__WEBPACK_
 
 }
 DSLinkMenu.defaultProps = {
   windowObj: window // Added to support unit tests
 
 };
 
 /***/ }),
-/* 30 */
+/* 25 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_LinkMenu", function() { return _LinkMenu; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "LinkMenu", function() { return LinkMenu; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var content_src_components_ContextMenu_ContextMenu__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(31);
-/* harmony import */ var content_src_lib_link_menu_options__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(32);
+/* harmony import */ var content_src_components_ContextMenu_ContextMenu__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(26);
+/* harmony import */ var content_src_lib_link_menu_options__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(27);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
 /* 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/. */
 
 
 
@@ -5400,17 +4744,17 @@ class _LinkMenu extends react__WEBPACK_I
 const getState = state => ({
   isPrivateBrowsingEnabled: state.Prefs.values.isPrivateBrowsingEnabled,
   platform: state.Prefs.values.platform
 });
 
 const LinkMenu = Object(react_redux__WEBPACK_IMPORTED_MODULE_1__["connect"])(getState)(_LinkMenu);
 
 /***/ }),
-/* 31 */
+/* 26 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ContextMenu", function() { return ContextMenu; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ContextMenuItem", function() { return ContextMenuItem; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
@@ -5575,26 +4919,26 @@ class ContextMenuItem extends react__WEB
     }, option.icon && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", {
       className: `icon icon-spacer icon-${option.icon}`
     }), react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", {
       "data-l10n-id": option.string_id || option.id
     })));
   }
 
 }
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 32 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 27 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "LinkMenuOptions", function() { return LinkMenuOptions; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* 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/. */
 
 
 const _OpenInPrivateWindow = site => ({
   id: "newtab-menu-open-new-private-window",
   icon: "new-window-private",
@@ -5896,17 +5240,17 @@ const LinkMenuOptions = {
   CheckBookmark: site => site.bookmarkGuid ? LinkMenuOptions.RemoveBookmark(site) : LinkMenuOptions.AddBookmark(site),
   CheckPinTopSite: (site, index) => site.isPinned ? LinkMenuOptions.UnpinTopSite(site) : LinkMenuOptions.PinTopSite(site, index),
   CheckSavedToPocket: (site, index) => site.pocket_id ? LinkMenuOptions.DeleteFromPocket(site) : LinkMenuOptions.SaveToPocket(site, index),
   CheckBookmarkOrArchive: site => site.pocket_id ? LinkMenuOptions.ArchiveFromPocket(site) : LinkMenuOptions.CheckBookmark(site),
   OpenInPrivateWindow: (site, index, eventSource, isEnabled) => isEnabled ? _OpenInPrivateWindow(site) : LinkMenuOptions.EmptyItem()
 };
 
 /***/ }),
-/* 33 */
+/* 28 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ContextMenuButton", function() { return ContextMenuButton; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 /* This Source Code Form is subject to the terms of the Mozilla Public
@@ -5981,24 +5325,24 @@ class ContextMenuButton extends react__W
       keyboardAccess: contextMenuKeyboard,
       onUpdate: this.onUpdate
     }) : null);
   }
 
 }
 
 /***/ }),
-/* 34 */
+/* 29 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "INTERSECTION_RATIO", function() { return INTERSECTION_RATIO; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ImpressionStats", function() { return ImpressionStats; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
 /* 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/. */
 
 
 const VISIBLE = "visible";
@@ -6200,26 +5544,26 @@ class ImpressionStats extends react__WEB
 
 }
 ImpressionStats.defaultProps = {
   IntersectionObserver: global.IntersectionObserver,
   document: global.document,
   rows: [],
   source: ""
 };
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 35 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 30 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SafeAnchor", function() { return SafeAnchor; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
 /* 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/. */
 
 
 class SafeAnchor extends react__WEBPACK_IMPORTED_MODULE_1___default.a.PureComponent {
@@ -6292,28 +5636,28 @@ class SafeAnchor extends react__WEBPACK_
       className: className,
       onClick: this.onClick
     }, this.props.children);
   }
 
 }
 
 /***/ }),
-/* 36 */
+/* 31 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "StatusMessage", function() { return StatusMessage; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SponsorLabel", function() { return SponsorLabel; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSContextFooter", function() { return DSContextFooter; });
-/* harmony import */ var _Card_types_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(37);
-/* harmony import */ var react_transition_group__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(38);
+/* harmony import */ var _Card_types_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(32);
+/* harmony import */ var react_transition_group__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(33);
 /* harmony import */ var react_transition_group__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_transition_group__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _FluentOrText_FluentOrText_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39);
+/* harmony import */ var _FluentOrText_FluentOrText_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(34);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
 /* 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/. */
 
 
 
@@ -6400,17 +5744,17 @@ class DSContextFooter extends react__WEB
       icon: icon,
       fluentID: fluentID
     }))));
   }
 
 }
 
 /***/ }),
-/* 37 */
+/* 32 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "cardContextTypes", function() { return cardContextTypes; });
 /* 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/. */
@@ -6437,23 +5781,23 @@ const cardContextTypes = {
   },
   download: {
     fluentID: "newtab-label-download",
     icon: "download"
   }
 };
 
 /***/ }),
-/* 38 */
+/* 33 */
 /***/ (function(module, exports) {
 
 module.exports = ReactTransitionGroup;
 
 /***/ }),
-/* 39 */
+/* 34 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FluentOrText", function() { return FluentOrText; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 /* This Source Code Form is subject to the terms of the Mozilla Public
@@ -6489,23 +5833,23 @@ class FluentOrText extends react__WEBPAC
 
 
     return react__WEBPACK_IMPORTED_MODULE_0___default.a.cloneElement(child, extraProps, grandChildren);
   }
 
 }
 
 /***/ }),
-/* 40 */
+/* 35 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSEmptyState", function() { return DSEmptyState; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
 /* 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/. */
 
 
 class DSEmptyState extends react__WEBPACK_IMPORTED_MODULE_1___default.a.PureComponent {
@@ -6593,26 +5937,26 @@ class DSEmptyState extends react__WEBPAC
     }, react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("div", {
       className: "empty-state-message"
     }, this.renderState()));
   }
 
 }
 
 /***/ }),
-/* 41 */
+/* 36 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CollectionCardGrid", function() { return CollectionCardGrid; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_CardGrid_CardGrid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(26);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSDismiss_DSDismiss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(42);
-/* harmony import */ var content_src_lib_link_menu_options__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(32);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_CardGrid_CardGrid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSDismiss_DSDismiss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(37);
+/* harmony import */ var content_src_lib_link_menu_options__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(27);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
 /* 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/. */
 
 
 
@@ -6750,17 +6094,17 @@ class CollectionCardGrid extends react__
     }
 
     return collectionGrid;
   }
 
 }
 
 /***/ }),
-/* 42 */
+/* 37 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSDismiss", function() { return DSDismiss; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 /* This Source Code Form is subject to the terms of the Mozilla Public
@@ -6812,30 +6156,30 @@ class DSDismiss extends react__WEBPACK_I
     }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", {
       className: "icon icon-dismiss"
     })));
   }
 
 }
 
 /***/ }),
-/* 43 */
+/* 38 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "CollapsibleSection", function() { return CollapsibleSection; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_components_ErrorBoundary_ErrorBoundary__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(44);
-/* harmony import */ var content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_components_ErrorBoundary_ErrorBoundary__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);
+/* harmony import */ var content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(34);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
-/* harmony import */ var content_src_components_SectionMenu_SectionMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(46);
-/* harmony import */ var content_src_lib_section_menu_options__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(47);
-/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(33);
+/* harmony import */ var content_src_components_SectionMenu_SectionMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(41);
+/* harmony import */ var content_src_lib_section_menu_options__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(42);
+/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(28);
 /* 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/. */
 
 
 
 
 
@@ -7098,27 +6442,27 @@ CollapsibleSection.defaultProps = {
     addEventListener: () => {},
     removeEventListener: () => {},
     visibilityState: "hidden"
   },
   Prefs: {
     values: {}
   }
 };
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 44 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 39 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ErrorBoundaryFallback", function() { return ErrorBoundaryFallback; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ErrorBoundary", function() { return ErrorBoundary; });
-/* harmony import */ var content_src_components_A11yLinkButton_A11yLinkButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(45);
+/* harmony import */ var content_src_components_A11yLinkButton_A11yLinkButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(40);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
 /* 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/. */
 
 
 class ErrorBoundaryFallback extends react__WEBPACK_IMPORTED_MODULE_1___default.a.PureComponent {
@@ -7188,17 +6532,17 @@ class ErrorBoundary extends react__WEBPA
   }
 
 }
 ErrorBoundary.defaultProps = {
   FallbackComponent: ErrorBoundaryFallback
 };
 
 /***/ }),
-/* 45 */
+/* 40 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "A11yLinkButton", function() { return A11yLinkButton; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
@@ -7218,28 +6562,28 @@ function A11yLinkButton(props) {
   return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("button", _extends({
     type: "button"
   }, props, {
     className: className
   }), props.children);
 }
 
 /***/ }),
-/* 46 */
+/* 41 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_SectionMenu", function() { return _SectionMenu; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SectionMenu", function() { return SectionMenu; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_components_ContextMenu_ContextMenu__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(31);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_components_ContextMenu_ContextMenu__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(26);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var content_src_lib_section_menu_options__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(47);
+/* harmony import */ var content_src_lib_section_menu_options__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(42);
 /* 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/. */
 
 
 
 
 const DEFAULT_SECTION_MENU_OPTIONS = ["MoveUp", "MoveDown", "Separator", "RemoveSection", "CheckCollapsed", "Separator", "ManageSection"];
@@ -7324,23 +6668,23 @@ class _SectionMenu extends react__WEBPAC
       keyboardAccess: this.props.keyboardAccess
     });
   }
 
 }
 const SectionMenu = _SectionMenu;
 
 /***/ }),
-/* 47 */
+/* 42 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SectionMenuOptions", function() { return SectionMenuOptions; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* 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/. */
 
 /**
  * List of functions that return items that can be included as menu options in a
  * SectionMenu. All functions take the section as the only parameter.
  */
@@ -7454,26 +6798,26 @@ const SectionMenuOptions = {
       }
     }),
     userEvent: "MENU_PRIVACY_NOTICE"
   }),
   CheckCollapsed: section => section.collapsed ? SectionMenuOptions.ExpandSection(section) : SectionMenuOptions.CollapseSection(section)
 };
 
 /***/ }),
-/* 48 */
+/* 43 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSMessage", function() { return DSMessage; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(35);
-/* harmony import */ var content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39);
+/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30);
+/* harmony import */ var content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(34);
 /* 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/. */
 
 
 
 class DSMessage extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent {
   render() {
@@ -7496,26 +6840,26 @@ class DSMessage extends react__WEBPACK_I
     }, react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_2__["FluentOrText"], {
       message: this.props.link_text
     }))));
   }
 
 }
 
 /***/ }),
-/* 49 */
+/* 44 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSPrivacyModal", function() { return DSPrivacyModal; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
-/* harmony import */ var content_src_asrouter_components_ModalOverlay_ModalOverlay__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
+/* harmony import */ var content_src_asrouter_components_ModalOverlay_ModalOverlay__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(17);
 /* 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/. */
 
 
 
 class DSPrivacyModal extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent {
   constructor(props) {
@@ -7572,29 +6916,29 @@ class DSPrivacyModal extends react__WEBP
       onClick: this.closeModal,
       "data-l10n-id": "newtab-privacy-modal-button-done"
     })));
   }
 
 }
 
 /***/ }),
-/* 50 */
+/* 45 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSSignup", function() { return DSSignup; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_components_LinkMenu_LinkMenu__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(30);
-/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(33);
-/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_components_LinkMenu_LinkMenu__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25);
+/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(28);
+/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(35);
+/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(30);
 /* 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/. */
 
 
 
 
 
@@ -7739,30 +7083,30 @@ class DSSignup extends react__WEBPACK_IM
 
 }
 DSSignup.defaultProps = {
   windowObj: window // Added to support unit tests
 
 };
 
 /***/ }),
-/* 51 */
+/* 46 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DSTextPromo", function() { return DSTextPromo; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSDismiss_DSDismiss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(42);
-/* harmony import */ var _DSImage_DSImage_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(28);
-/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34);
-/* harmony import */ var content_src_lib_link_menu_options__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(32);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_components_DiscoveryStreamComponents_DSDismiss_DSDismiss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(37);
+/* harmony import */ var _DSImage_DSImage_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(23);
+/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29);
+/* harmony import */ var content_src_lib_link_menu_options__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(27);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_5__);
-/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(35);
+/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(30);
 /* 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/. */
 
 
 
 
 
@@ -7888,33 +7232,33 @@ class DSTextPromo extends react__WEBPACK
       dispatch: this.props.dispatch,
       source: this.props.type
     })));
   }
 
 }
 
 /***/ }),
-/* 52 */
+/* 47 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Hero", function() { return Hero; });
-/* harmony import */ var _DSCard_DSCard_jsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(27);
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
-/* harmony import */ var _DSEmptyState_DSEmptyState_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(40);
-/* harmony import */ var _DSImage_DSImage_jsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(28);
-/* harmony import */ var _DSLinkMenu_DSLinkMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(29);
-/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(34);
-/* harmony import */ var _List_List_jsx__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(53);
+/* harmony import */ var _DSCard_DSCard_jsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
+/* harmony import */ var _DSEmptyState_DSEmptyState_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(35);
+/* harmony import */ var _DSImage_DSImage_jsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23);
+/* harmony import */ var _DSLinkMenu_DSLinkMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(24);
+/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(29);
+/* harmony import */ var _List_List_jsx__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(48);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_7__);
-/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(35);
-/* harmony import */ var _DSContextFooter_DSContextFooter_jsx__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(36);
+/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(30);
+/* harmony import */ var _DSContextFooter_DSContextFooter_jsx__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(31);
 /* 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/. */
 
 
 
 
 
@@ -8081,36 +7425,36 @@ class Hero extends react__WEBPACK_IMPORT
 Hero.defaultProps = {
   data: {},
   border: `border`,
   items: 1 // Number of stories to display
 
 };
 
 /***/ }),
-/* 53 */
+/* 48 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ListItem", function() { return ListItem; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlaceholderListItem", function() { return PlaceholderListItem; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_List", function() { return _List; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "List", function() { return List; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _DSEmptyState_DSEmptyState_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(40);
-/* harmony import */ var _DSImage_DSImage_jsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(28);
-/* harmony import */ var _DSLinkMenu_DSLinkMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(29);
-/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(34);
+/* harmony import */ var _DSEmptyState_DSEmptyState_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(35);
+/* harmony import */ var _DSImage_DSImage_jsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23);
+/* harmony import */ var _DSLinkMenu_DSLinkMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(24);
+/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(29);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(35);
-/* harmony import */ var _DSContextFooter_DSContextFooter_jsx__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(36);
+/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(30);
+/* harmony import */ var _DSContextFooter_DSContextFooter_jsx__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(31);
 /* 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/. */
 
 
 
 
 
@@ -8285,28 +7629,28 @@ function _List(props) {
   items: 6 // Number of stories to display.  TODO: get from endpoint
 
 };
 const List = Object(react_redux__WEBPACK_IMPORTED_MODULE_1__["connect"])(state => ({
   DiscoveryStream: state.DiscoveryStream
 }))(_List);
 
 /***/ }),
-/* 54 */
+/* 49 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_Highlights", function() { return _Highlights; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Highlights", function() { return Highlights; });
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_0__);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var content_src_components_Sections_Sections__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55);
+/* harmony import */ var content_src_components_Sections_Sections__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(50);
 function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
 
 /* 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/. */
 
 
 
@@ -8326,38 +7670,38 @@ class _Highlights extends react__WEBPACK
   }
 
 }
 const Highlights = Object(react_redux__WEBPACK_IMPORTED_MODULE_0__["connect"])(state => ({
   Sections: state.Sections
 }))(_Highlights);
 
 /***/ }),
-/* 55 */
+/* 50 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Section", function() { return Section; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SectionIntl", function() { return SectionIntl; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_Sections", function() { return _Sections; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Sections", function() { return Sections; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_components_Card_Card__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(56);
-/* harmony import */ var content_src_components_CollapsibleSection_CollapsibleSection__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(43);
-/* harmony import */ var content_src_components_ComponentPerfTimer_ComponentPerfTimer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58);
-/* harmony import */ var content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(39);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_components_Card_Card__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(51);
+/* harmony import */ var content_src_components_CollapsibleSection_CollapsibleSection__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(38);
+/* harmony import */ var content_src_components_ComponentPerfTimer_ComponentPerfTimer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(53);
+/* harmony import */ var content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(34);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_5__);
-/* harmony import */ var content_src_components_MoreRecommendations_MoreRecommendations__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(60);
-/* harmony import */ var content_src_components_PocketLoggedInCta_PocketLoggedInCta__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(61);
+/* harmony import */ var content_src_components_MoreRecommendations_MoreRecommendations__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(55);
+/* harmony import */ var content_src_components_PocketLoggedInCta_PocketLoggedInCta__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(56);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_8__);
-/* harmony import */ var content_src_components_Topics_Topics__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(62);
-/* harmony import */ var content_src_components_TopSites_TopSites__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(63);
+/* harmony import */ var content_src_components_Topics_Topics__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(57);
+/* harmony import */ var content_src_components_TopSites_TopSites__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(58);
 function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
 
 /* 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/. */
 
 
 
@@ -8694,36 +8038,36 @@ class _Sections extends react__WEBPACK_I
     }, this.renderSections());
   }
 
 }
 const Sections = Object(react_redux__WEBPACK_IMPORTED_MODULE_5__["connect"])(state => ({
   Sections: state.Sections,
   Prefs: state.Prefs
 }))(_Sections);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 56 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 51 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_Card", function() { return _Card; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Card", function() { return Card; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PlaceholderCard", function() { return PlaceholderCard; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(37);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(32);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
-/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(33);
-/* harmony import */ var content_src_components_LinkMenu_LinkMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(30);
+/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(28);
+/* harmony import */ var content_src_components_LinkMenu_LinkMenu__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(25);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_5__);
-/* harmony import */ var content_src_lib_screenshot_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(57);
+/* harmony import */ var content_src_lib_screenshot_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(52);
 /* 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/. */
 
 
 
 
 
@@ -9049,17 +8393,17 @@ const Card = Object(react_redux__WEBPACK
   platform: state.Prefs.values.platform
 }))(_Card);
 const PlaceholderCard = props => react__WEBPACK_IMPORTED_MODULE_5___default.a.createElement(Card, {
   placeholder: true,
   className: props.className
 });
 
 /***/ }),
-/* 57 */
+/* 52 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ScreenshotUtils", function() { return ScreenshotUtils; });
 /* 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/. */
@@ -9115,27 +8459,27 @@ const ScreenshotUtils = {
     } // This will only handle the remaining three possible outcomes.
     // (i.e. everything except when both image and localImage are present)
 
 
     return !remoteImage && !localImage;
   }
 
 };
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 58 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 53 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ComponentPerfTimer", function() { return ComponentPerfTimer; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_lib_perf_service__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_lib_perf_service__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(54);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_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/. */
 
 
  // Currently record only a fixed set of sections. This will prevent data
@@ -9298,17 +8642,17 @@ class ComponentPerfTimer extends react__
     }
 
     return this.props.children;
   }
 
 }
 
 /***/ }),
-/* 59 */
+/* 54 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_PerfService", function() { return _PerfService; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "perfService", function() { return perfService; });
 /* 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,
@@ -9408,17 +8752,17 @@ function _PerfService(options) {
     let mostRecentEntry = entries[entries.length - 1];
     return this._perf.timeOrigin + mostRecentEntry.startTime;
   }
 
 };
 const perfService = new _PerfService();
 
 /***/ }),
-/* 60 */
+/* 55 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MoreRecommendations", function() { return MoreRecommendations; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 /* This Source Code Form is subject to the terms of the Mozilla Public
@@ -9440,24 +8784,24 @@ class MoreRecommendations extends react_
     }
 
     return null;
   }
 
 }
 
 /***/ }),
-/* 61 */
+/* 56 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_PocketLoggedInCta", function() { return _PocketLoggedInCta; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PocketLoggedInCta", function() { return PocketLoggedInCta; });
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_0__);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
 /* 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/. */
 
 
@@ -9483,17 +8827,17 @@ class _PocketLoggedInCta extends react__
   }
 
 }
 const PocketLoggedInCta = Object(react_redux__WEBPACK_IMPORTED_MODULE_0__["connect"])(state => ({
   Pocket: state.Pocket
 }))(_PocketLoggedInCta);
 
 /***/ }),
-/* 62 */
+/* 57 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Topic", function() { return Topic; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Topics", function() { return Topics; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
@@ -9528,36 +8872,36 @@ class Topics extends react__WEBPACK_IMPO
       url: t.url,
       name: t.name
     }))));
   }
 
 }
 
 /***/ }),
-/* 63 */
+/* 58 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_TopSites", function() { return _TopSites; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TopSites", function() { return TopSites; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var _TopSitesConstants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64);
-/* harmony import */ var content_src_components_CollapsibleSection_CollapsibleSection__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(43);
-/* harmony import */ var content_src_components_ComponentPerfTimer_ComponentPerfTimer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var _TopSitesConstants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59);
+/* harmony import */ var content_src_components_CollapsibleSection_CollapsibleSection__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(38);
+/* harmony import */ var content_src_components_ComponentPerfTimer_ComponentPerfTimer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(53);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var _asrouter_components_ModalOverlay_ModalOverlay__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(16);
+/* harmony import */ var _asrouter_components_ModalOverlay_ModalOverlay__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(17);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_6__);
-/* harmony import */ var _SearchShortcutsForm__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(65);
-/* harmony import */ var common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(77);
-/* harmony import */ var _TopSiteForm__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(79);
-/* harmony import */ var _TopSite__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(66);
+/* harmony import */ var _SearchShortcutsForm__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(60);
+/* harmony import */ var common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(72);
+/* harmony import */ var _TopSiteForm__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(73);
+/* harmony import */ var _TopSite__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(61);
 function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
 
 /* 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/. */
 
 
 
@@ -9752,20 +9096,20 @@ class _TopSites extends react__WEBPACK_I
 
 }
 const TopSites = Object(react_redux__WEBPACK_IMPORTED_MODULE_4__["connect"])((state, props) => ({
   // For SPOC Experiment only, take TopSites from DiscoveryStream TopSites that takes in SPOC Data
   TopSites: props.TopSitesWithSpoc || state.TopSites,
   Prefs: state.Prefs,
   TopSitesRows: state.Prefs.values.topSitesRows
 }))(_TopSites);
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 64 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 59 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TOP_SITES_SOURCE", function() { return TOP_SITES_SOURCE; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TOP_SITES_CONTEXT_MENU_OPTIONS", function() { return TOP_SITES_CONTEXT_MENU_OPTIONS; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TOP_SITES_SPOC_CONTEXT_MENU_OPTIONS", function() { return TOP_SITES_SPOC_CONTEXT_MENU_OPTIONS; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TOP_SITES_SEARCH_SHORTCUTS_CONTEXT_MENU_OPTIONS", function() { return TOP_SITES_SEARCH_SHORTCUTS_CONTEXT_MENU_OPTIONS; });
@@ -9780,27 +9124,27 @@ const TOP_SITES_SPOC_CONTEXT_MENU_OPTION
 
 const TOP_SITES_SEARCH_SHORTCUTS_CONTEXT_MENU_OPTIONS = ["CheckPinTopSite", "Separator", "BlockUrl"]; // minimum size necessary to show a rich icon instead of a screenshot
 
 const MIN_RICH_FAVICON_SIZE = 96; // minimum size necessary to show any icon in the top left corner with a screenshot
 
 const MIN_CORNER_FAVICON_SIZE = 16;
 
 /***/ }),
-/* 65 */
+/* 60 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SelectableSearchShortcut", function() { return SelectableSearchShortcut; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SearchShortcutsForm", function() { return SearchShortcutsForm; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _TopSitesConstants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64);
+/* harmony import */ var _TopSitesConstants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59);
 /* 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/. */
 
 
 
 class SelectableSearchShortcut extends react__WEBPACK_IMPORTED_MODULE_1___default.a.PureComponent {
   render() {
@@ -9971,34 +9315,34 @@ class SearchShortcutsForm extends react_
       onClick: this.onSaveButtonClick,
       "data-l10n-id": "newtab-topsites-save-button"
     })));
   }
 
 }
 
 /***/ }),
-/* 66 */
+/* 61 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TopSiteLink", function() { return TopSiteLink; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TopSite", function() { return TopSite; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TopSitePlaceholder", function() { return TopSitePlaceholder; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TopSiteList", function() { return TopSiteList; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var _TopSitesConstants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64);
-/* harmony import */ var content_src_components_LinkMenu_LinkMenu__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(30);
-/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var _TopSitesConstants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59);
+/* harmony import */ var content_src_components_LinkMenu_LinkMenu__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(25);
+/* harmony import */ var _DiscoveryStreamImpressionStats_ImpressionStats__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
-/* harmony import */ var content_src_lib_screenshot_utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(57);
-/* harmony import */ var common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(77);
-/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33);
+/* harmony import */ var content_src_lib_screenshot_utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(52);
+/* harmony import */ var common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(72);
+/* harmony import */ var content_src_components_ContextMenu_ContextMenuButton__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(28);
 function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
 
 /* 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/. */
 
 
 
@@ -10658,17 +10002,17 @@ class TopSiteList extends react__WEBPACK
     return react__WEBPACK_IMPORTED_MODULE_4___default.a.createElement("ul", {
       className: `top-sites-list${this.state.draggedSite ? " dnd-active" : ""}`
     }, topSitesUI);
   }
 
 }
 
 /***/ }),
-/* 67 */
+/* 62 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HorizontalRule", function() { return HorizontalRule; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 /* This Source Code Form is subject to the terms of the Mozilla Public
@@ -10680,28 +10024,28 @@ class HorizontalRule extends react__WEBP
     return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("hr", {
       className: "ds-hr"
     });
   }
 
 }
 
 /***/ }),
-/* 68 */
+/* 63 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Topic", function() { return Topic; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Navigation", function() { return Navigation; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
-/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(35);
-/* harmony import */ var content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(39);
+/* harmony import */ var _SafeAnchor_SafeAnchor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(30);
+/* harmony import */ var content_src_components_FluentOrText_FluentOrText__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34);
 /* 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/. */
 
 
 
 
 class Topic extends react__WEBPACK_IMPORTED_MODULE_1___default.a.PureComponent {
@@ -10795,17 +10139,17 @@ class Navigation extends react__WEBPACK_
       dispatch: this.props.dispatch,
       explore_topics: explore_topics
     }));
   }
 
 }
 
 /***/ }),
-/* 69 */
+/* 64 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SectionTitle", function() { return SectionTitle; });
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 /* This Source Code Form is subject to the terms of the Mozilla Public
@@ -10827,17 +10171,17 @@ class SectionTitle extends react__WEBPAC
     }, title), subtitle ? react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
       className: "subtitle"
     }, subtitle) : null);
   }
 
 }
 
 /***/ }),
-/* 70 */
+/* 65 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "selectLayoutRender", function() { return selectLayoutRender; });
 /* 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/. */
@@ -11098,27 +10442,27 @@ const selectLayoutRender = ({
 
   return {
     spocsFill,
     layoutRender
   };
 };
 
 /***/ }),
-/* 71 */
+/* 66 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_TopSites", function() { return _TopSites; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TopSites", function() { return TopSites; });
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_0__);
-/* harmony import */ var content_src_components_TopSites_TopSites__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(63);
-/* harmony import */ var common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(77);
+/* harmony import */ var content_src_components_TopSites_TopSites__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(58);
+/* harmony import */ var common_Reducers_jsm__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(72);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
 /* 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/. */
 
 
 
@@ -11249,25 +10593,25 @@ class _TopSites extends react__WEBPACK_I
   }
 
 }
 const TopSites = Object(react_redux__WEBPACK_IMPORTED_MODULE_0__["connect"])(state => ({
   TopSites: state.TopSites
 }))(_TopSites);
 
 /***/ }),
-/* 72 */
+/* 67 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "_Search", function() { return _Search; });
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Search", function() { return Search; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16);
 /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
 /* harmony import */ var content_src_lib_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(11);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);
 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
 /* 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/. */
 
@@ -11441,24 +10785,24 @@ class _Search extends react__WEBPACK_IMP
       className: "fake-caret"
     }))));
   }
 
 }
 const Search = Object(react_redux__WEBPACK_IMPORTED_MODULE_1__["connect"])()(_Search);
 
 /***/ }),
-/* 73 */
+/* 68 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "DetectUserSessionStart", function() { return DetectUserSessionStart; });
-/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
-/* harmony import */ var content_src_lib_perf_service__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59);
+/* harmony import */ var common_Actions_jsm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
+/* harmony import */ var content_src_lib_perf_service__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(54);
 /* 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/. */
 
 
 const VISIBLE = "visible";
 const VISIBILITY_CHANGE_EVENT = "visibilitychange";
 class DetectUserSessionStart {
@@ -11520,20 +10864,20 @@ class DetectUserSessionStart {
     if (this.document.visibilityState === VISIBLE) {
       this._sendEvent();
 
       this.document.removeEventListener(VISIBILITY_CHANGE_EVENT, this._onVisibilityChange);
     }
   }
 
 }
-/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(1)))
-
-/***/ }),
-/* 74 */
+/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(3)))
+
+/***/ }),
+/* 69 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 
 // EXTERNAL MODULE: external "React"
 var external_React_ = __webpack_require__(9);
 
@@ -12320,17 +11664,17 @@ localized_Localized.propTypes = {
  * components for more information.
  */
 
 
 
 
 
 /***/ }),
-/* 75 */
+/* 70 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 
 // EXTERNAL MODULE: external "React"
 var external_React_ = __webpack_require__(9);
 var external_React_default = /*#__PURE__*/__webpack_require__.n(external_React_);
@@ -12368,22 +11712,107 @@ const Button = props => {
 // lifted from https://gist.github.com/kitze/23d82bb9eb0baabfd03a6a720b1d637f
 const ConditionalWrapper = ({
   condition,
   wrap,
   children
 }) => condition && wrap ? wrap(children) : children;
 
 /* harmony default export */ var ConditionalWrapper_ConditionalWrapper = (ConditionalWrapper);
-// EXTERNAL MODULE: ./content-src/asrouter/components/RichText/RichText.jsx
-var RichText = __webpack_require__(13);
-
-// EXTERNAL MODULE: ./content-src/asrouter/template-utils.js
-var template_utils = __webpack_require__(14);
-
+// EXTERNAL MODULE: ./node_modules/fluent-react/src/index.js + 14 modules
+var src = __webpack_require__(69);
+
+// EXTERNAL MODULE: ./content-src/asrouter/rich-text-strings.js + 7 modules
+var rich_text_strings = __webpack_require__(71);
+
+// CONCATENATED MODULE: ./content-src/asrouter/template-utils.js
+/* 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/. */
+function safeURI(url) {
+  if (!url) {
+    return "";
+  }
+
+  const {
+    protocol
+  } = new URL(url);
+  const isAllowed = ["http:", "https:", "data:", "resource:", "chrome:"].includes(protocol);
+
+  if (!isAllowed) {
+    console.warn(`The protocol ${protocol} is not allowed for template URLs.`); // eslint-disable-line no-console
+  }
+
+  return isAllowed ? url : "";
+}
+// CONCATENATED MODULE: ./content-src/asrouter/components/RichText/RichText.jsx
+function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
+
+/* 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/. */
+
+
+
+ // Elements allowed in snippet content
+
+const ALLOWED_TAGS = {
+  b: external_React_default.a.createElement("b", null),
+  i: external_React_default.a.createElement("i", null),
+  u: external_React_default.a.createElement("u", null),
+  strong: external_React_default.a.createElement("strong", null),
+  em: external_React_default.a.createElement("em", null),
+  br: external_React_default.a.createElement("br", null)
+};
+/**
+ * Transform an object (tag name: {url}) into (tag name: anchor) where the url
+ * is used as href, in order to render links inside a Fluent.Localized component.
+ */
+
+function convertLinks(links, sendClick, doNotAutoBlock, openNewWindow = false) {
+  if (links) {
+    return Object.keys(links).reduce((acc, linkTag) => {
+      const {
+        action
+      } = links[linkTag]; // Setting the value to false will not include the attribute in the anchor
+
+      const url = action ? false : safeURI(links[linkTag].url);
+      acc[linkTag] = // eslint was getting a false positive caused by the dynamic injection
+      // of content.
+      // eslint-disable-next-line jsx-a11y/anchor-has-content
+      external_React_default.a.createElement("a", {
+        href: url,
+        target: openNewWindow ? "_blank" : "",
+        "data-metric": links[linkTag].metric,
+        "data-action": action,
+        "data-args": links[linkTag].args,
+        "data-do_not_autoblock": doNotAutoBlock,
+        "data-entrypoint_name": links[linkTag].entrypoint_name,
+        "data-entrypoint_value": links[linkTag].entrypoint_value,
+        onClick: sendClick
+      });
+      return acc;
+    }, {});
+  }
+
+  return null;
+}
+/**
+ * Message wrapper used to sanitize markup and render HTML.
+ */
+
+function RichText(props) {
+  if (!rich_text_strings["RICH_TEXT_KEYS"].includes(props.localization_id)) {
+    throw new Error(`ASRouter: ${props.localization_id} is not a valid rich text property. If you want it to be processed, you need to add it to asrouter/rich-text-strings.js`);
+  }
+
+  return external_React_default.a.createElement(src["Localized"], _extends({
+    id: props.localization_id
+  }, ALLOWED_TAGS, props.customElements, convertLinks(props.links, props.sendClick, props.doNotAutoBlock, props.openNewWindow)), external_React_default.a.createElement("span", null, props.text));
+}
 // CONCATENATED MODULE: ./content-src/asrouter/components/SnippetBase/SnippetBase.jsx
 /* 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/. */
 
 class SnippetBase_SnippetBase extends external_React_default.a.PureComponent {
   constructor(props) {
     super(props);
@@ -12484,17 +11913,17 @@ class SnippetBase_SnippetBase extends ex
       style: this.props.textStyle
     }, external_React_default.a.createElement("div", {
       className: "innerWrapper"
     }, props.children), this.renderDismissButton());
   }
 
 }
 // CONCATENATED MODULE: ./content-src/asrouter/templates/SimpleSnippet/SimpleSnippet.jsx
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
+function SimpleSnippet_extends() { SimpleSnippet_extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return SimpleSnippet_extends.apply(this, arguments); }
 
 /* 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/. */
 
 
 
 
@@ -12550,18 +11979,18 @@ class SimpleSnippet_SimpleSnippet extend
       title
     } = this.props.content;
     return title ? external_React_default.a.createElement("h3", {
       className: `title ${this._shouldRenderButton() ? "title-inline" : ""}`
     }, this.renderTitleIcon(), " ", title) : null;
   }
 
   renderTitleIcon() {
-    const titleIconLight = Object(template_utils["safeURI"])(this.props.content.title_icon);
-    const titleIconDark = Object(template_utils["safeURI"])(this.props.content.title_icon_dark_theme || this.props.content.title_icon);
+    const titleIconLight = safeURI(this.props.content.title_icon);
+    const titleIconDark = safeURI(this.props.content.title_icon_dark_theme || this.props.content.title_icon);
 
     if (!titleIconLight) {
       return null;
     }
 
     return external_React_default.a.createElement(external_React_default.a.Fragment, null, external_React_default.a.createElement("span", {
       className: "titleIcon icon-light-theme",
       style: {
@@ -12590,17 +12019,17 @@ class SimpleSnippet_SimpleSnippet extend
       backgroundColor: props.content.button_background_color
     }, props.content.button_label);
   }
 
   renderText() {
     const {
       props
     } = this;
-    return external_React_default.a.createElement(RichText["RichText"], {
+    return external_React_default.a.createElement(RichText, {
       text: props.content.text,
       customElements: this.props.customElements,
       localization_id: "text",
       links: props.content.links,
       sendClick: props.sendClick
     });
   }
 
@@ -12619,18 +12048,18 @@ class SimpleSnippet_SimpleSnippet extend
   }
 
   renderSectionHeader() {
     const {
       props
     } = this; // an icon and text must be specified to render the section header
 
     if (props.content.section_title_icon && props.content.section_title_text) {
-      const sectionTitleIconLight = Object(template_utils["safeURI"])(props.content.section_title_icon);
-      const sectionTitleIconDark = Object(template_utils["safeURI"])(props.content.section_title_icon_dark_theme || props.content.section_title_icon);
+      const sectionTitleIconLight = safeURI(props.content.section_title_icon);
+      const sectionTitleIconDark = safeURI(props.content.section_title_icon_dark_theme || props.content.section_title_icon);
       const sectionTitleURL = props.content.section_title_url;
       return external_React_default.a.createElement("div", {
         className: "section-header"
       }, external_React_default.a.createElement("h3", {
         className: "section-title"
       }, external_React_default.a.createElement(ConditionalWrapper_ConditionalWrapper, {
         condition: sectionTitleURL,
         wrap: this.wrapSectionHeader(sectionTitleURL)
@@ -12668,28 +12097,28 @@ class SimpleSnippet_SimpleSnippet extend
     }
 
     if (sectionHeader) {
       className += " has-section-header";
     }
 
     return external_React_default.a.createElement("div", {
       className: "snippet-hover-wrapper"
-    }, external_React_default.a.createElement(SnippetBase_SnippetBase, _extends({}, props, {
+    }, external_React_default.a.createElement(SnippetBase_SnippetBase, SimpleSnippet_extends({}, props, {
       className: className,
       textStyle: this.props.textStyle
     }), sectionHeader, external_React_default.a.createElement(ConditionalWrapper_ConditionalWrapper, {
       condition: sectionHeader,
       wrap: this.wrapSnippetContent
     }, external_React_default.a.createElement("img", {
-      src: Object(template_utils["safeURI"])(props.content.icon) || DEFAULT_ICON_PATH,
+      src: safeURI(props.content.icon) || DEFAULT_ICON_PATH,
       className: "icon icon-light-theme",
       alt: props.content.icon_alt_text || ICON_ALT_TEXT
     }), external_React_default.a.createElement("img", {
-      src: Object(template_utils["safeURI"])(props.content.icon_dark_theme || props.content.icon) || DEFAULT_ICON_PATH,
+      src: safeURI(props.content.icon_dark_theme || props.content.icon) || DEFAULT_ICON_PATH,
       className: "icon icon-dark-theme",
       alt: props.content.icon_alt_text || ICON_ALT_TEXT
     }), external_React_default.a.createElement("div", null, this.renderTitle(), " ", external_React_default.a.createElement("p", {
       className: "body"
     }, this.renderText()), this.props.extraContent), external_React_default.a.createElement("div", null, this.renderButton()))));
   }
 
 }
@@ -13000,17 +12429,17 @@ class SubmitFormSnippet_SubmitFormSnippe
     } = this.props;
 
     if (!content.scene2_disclaimer_html) {
       return null;
     }
 
     return external_React_default.a.createElement("p", {
       className: "disclaimerText"
-    }, external_React_default.a.createElement(RichText["RichText"], {
+    }, external_React_default.a.createElement(RichText, {
       text: content.scene2_disclaimer_html,
       localization_id: "disclaimer_html",
       links: content.links,
       doNotAutoBlock: true,
       openNewWindow: true,
       sendClick: this.props.sendClick
     }));
   }
@@ -13028,17 +12457,17 @@ class SubmitFormSnippet_SubmitFormSnippe
       className: "privacyNotice"
     }, external_React_default.a.createElement("input", {
       type: "checkbox",
       id: "id_privacy",
       name: "privacy",
       required: "required"
     }), external_React_default.a.createElement("label", {
       htmlFor: "id_privacy"
-    }, external_React_default.a.createElement(RichText["RichText"], {
+    }, external_React_default.a.createElement(RichText, {
       text: content.scene2_privacy_html,
       localization_id: "privacy_html",
       links: content.links,
       doNotAutoBlock: true,
       openNewWindow: true,
       sendClick: this.props.sendClick
     })));
   }
@@ -13054,17 +12483,17 @@ class SubmitFormSnippet_SubmitFormSnippe
     } : {
       error_text: content.error_text
     };
     const retryButtonText = content.retry_button_label;
     return external_React_default.a.createElement(SnippetBase_SnippetBase, this.props, external_React_default.a.createElement("div", {
       className: "submissionStatus"
     }, successTitle ? external_React_default.a.createElement("h2", {
       className: "submitStatusTitle"
-    }, successTitle) : null, external_React_default.a.createElement("p", null, external_React_default.a.createElement(RichText["RichText"], SubmitFormSnippet_extends({}, bodyText, {
+    }, successTitle) : null, external_React_default.a.createElement("p", null, external_React_default.a.createElement(RichText, SubmitFormSnippet_extends({}, bodyText, {
       localization_id: isSuccess ? "success_text" : "error_text"
     })), isSuccess ? null : external_React_default.a.createElement(Button, {
       onClick: this.expandSnippet
     }, retryButtonText))));
   }
 
   onInputChange(event) {
     if (!this.props.validateInput) {
@@ -13117,21 +12546,21 @@ class SubmitFormSnippet_SubmitFormSnippe
 
     if (!content.scene2_icon) {
       return null;
     }
 
     return external_React_default.a.createElement("div", {
       className: "scene2Icon"
     }, external_React_default.a.createElement("img", {
-      src: Object(template_utils["safeURI"])(content.scene2_icon),
+      src: safeURI(content.scene2_icon),
       className: "icon-light-theme",
       alt: content.scene2_icon_alt_text || SubmitFormSnippet_ICON_ALT_TEXT
     }), external_React_default.a.createElement("img", {
-      src: Object(template_utils["safeURI"])(content.scene2_icon_dark_theme || content.scene2_icon),
+      src: safeURI(content.scene2_icon_dark_theme || content.scene2_icon),
       className: "icon-dark-theme",
       alt: content.scene2_icon_alt_text || SubmitFormSnippet_ICON_ALT_TEXT
     }));
   }
 
   renderSignupView() {
     const {
       content
@@ -13139,30 +12568,30 @@ class SubmitFormSnippet_SubmitFormSnippe
     const containerClass = `SubmitFormSnippet ${this.props.className}`;
     return external_React_default.a.createElement(SnippetBase_SnippetBase, SubmitFormSnippet_extends({}, this.props, {
       className: containerClass,
       footerDismiss: true
     }), this.renderScene2Icon(), external_React_default.a.createElement("div", {
       className: "message"
     }, external_React_default.a.createElement("p", null, content.scene2_title && external_React_default.a.createElement("h3", {
       className: "scene2Title"
-    }, content.scene2_title), " ", content.scene2_text && external_React_default.a.createElement(RichText["RichText"], {
+    }, content.scene2_title), " ", content.scene2_text && external_React_default.a.createElement(RichText, {
       scene2_text: content.scene2_text,
       localization_id: "scene2_text"
     }))), this.renderForm());
   }
 
   renderSectionHeader() {
     const {
       props
     } = this; // an icon and text must be specified to render the section header
 
     if (props.content.section_title_icon && props.content.section_title_text) {
-      const sectionTitleIconLight = Object(template_utils["safeURI"])(props.content.section_title_icon);
-      const sectionTitleIconDark = Object(template_utils["safeURI"])(props.content.section_title_icon_dark_theme || props.content.section_title_icon);
+      const sectionTitleIconLight = safeURI(props.content.section_title_icon);
+      const sectionTitleIconDark = safeURI(props.content.section_title_icon_dark_theme || props.content.section_title_icon);
       const sectionTitleURL = props.content.section_title_url;
       return external_React_default.a.createElement("div", {
         className: "section-header"
       }, external_React_default.a.createElement("h3", {
         className: "section-title"
       }, external_React_default.a.createElement(ConditionalWrapper_ConditionalWrapper, {
         wrap: this.wrapSectionHeader(sectionTitleURL),
         condition: sectionTitleURL
@@ -13190,17 +12619,17 @@ class SubmitFormSnippet_SubmitFormSnippe
     } = this.props;
     const containerClass = `SubmitFormSnippet ${this.props.className} scene2Alt`;
     return external_React_default.a.createElement(SnippetBase_SnippetBase, SubmitFormSnippet_extends({}, this.props, {
       className: containerClass // Don't show bottom dismiss button
       ,
       footerDismiss: false
     }), this.renderSectionHeader(), this.renderScene2Icon(), external_React_default.a.createElement("div", {
       className: "message"
-    }, external_React_default.a.createElement("p", null, content.scene2_text && external_React_default.a.createElement(RichText["RichText"], {
+    }, external_React_default.a.createElement("p", null, content.scene2_text && external_React_default.a.createElement(RichText, {
       scene2_text: content.scene2_text,
       localization_id: "scene2_text"
     })), this.renderForm()));
   }
 
   getFirstSceneContent() {
     return Object.keys(this.props.content).filter(key => key.includes("scene1")).reduce((acc, key) => {
       acc[key.substr(7)] = this.props.content[key];
@@ -13440,17 +12869,17 @@ class SimpleBelowSearchSnippet_SimpleBel
     super(props);
     this.onButtonClick = this.onButtonClick.bind(this);
   }
 
   renderText() {
     const {
       props
     } = this;
-    return props.content.text ? external_React_default.a.createElement(RichText["RichText"], {
+    return props.content.text ? external_React_default.a.createElement(RichText, {
       text: props.content.text,
       customElements: this.props.customElements,
       localization_id: "text",
       links: props.content.links,
       sendClick: props.sendClick
     }) : null;
   }
 
@@ -13527,21 +12956,21 @@ class SimpleBelowSearchSnippet_SimpleBel
     return external_React_default.a.createElement("div", {
       className: containerName
     }, external_React_default.a.createElement("div", {
       className: "snippet-hover-wrapper"
     }, external_React_default.a.createElement(SnippetBase_SnippetBase, SimpleBelowSearchSnippet_extends({}, props, {
       className: className,
       textStyle: this.props.textStyle
     }), external_React_default.a.createElement("img", {
-      src: Object(template_utils["safeURI"])(props.content.icon) || SimpleBelowSearchSnippet_DEFAULT_ICON_PATH,
+      src: safeURI(props.content.icon) || SimpleBelowSearchSnippet_DEFAULT_ICON_PATH,
       className: "icon icon-light-theme",
       alt: props.content.icon_alt_text || SimpleBelowSearchSnippet_ICON_ALT_TEXT
     }), external_React_default.a.createElement("img", {
-      src: Object(template_utils["safeURI"])(props.content.icon_dark_theme || props.content.icon) || SimpleBelowSearchSnippet_DEFAULT_ICON_PATH,
+      src: safeURI(props.content.icon_dark_theme || props.content.icon) || SimpleBelowSearchSnippet_DEFAULT_ICON_PATH,
       className: "icon icon-dark-theme",
       alt: props.content.icon_alt_text || SimpleBelowSearchSnippet_ICON_ALT_TEXT
     }), external_React_default.a.createElement("div", {
       className: "textContainer"
     }, this.renderTitle(), external_React_default.a.createElement("p", {
       className: "body"
     }, this.renderText()), this.props.extraContent), external_React_default.a.createElement("div", {
       className: "buttonContainer"
@@ -13567,17 +12996,17 @@ const SnippetsTemplates = {
   fxa_signup_snippet: FXASignupSnippet,
   send_to_device_snippet: SendToDeviceSnippet,
   send_to_device_scene2_snippet: SendToDeviceScene2Snippet,
   eoy_snippet: EOYSnippet,
   simple_below_search_snippet: SimpleBelowSearchSnippet_SimpleBelowSearchSnippet
 };
 
 /***/ }),
-/* 76 */
+/* 71 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 var builtins_namespaceObject = {};
 __webpack_require__.r(builtins_namespaceObject);
 __webpack_require__.d(builtins_namespaceObject, "NUMBER", function() { return NUMBER; });
 __webpack_require__.d(builtins_namespaceObject, "DATETIME", function() { return DATETIME; });
@@ -14987,24 +14416,24 @@ function generateBundles(content) {
     }
 
     bundle.addMessages(`${key} = ${string}`);
   });
   return [bundle];
 }
 
 /***/ }),
-/* 77 */
+/* 72 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 
 // EXTERNAL MODULE: ./common/Actions.jsm
-var Actions = __webpack_require__(2);
+var Actions = __webpack_require__(1);
 
 // CONCATENATED MODULE: ./common/Dedupe.jsm
 /* 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/. */
 class Dedupe {
   constructor(createKey) {
     this.createKey = createKey || this.defaultCreateKey;
@@ -15957,315 +15386,34 @@ var reducers = {
   Sections,
   Pocket,
   Personalization,
   DiscoveryStream,
   Search
 };
 
 /***/ }),
-/* 78 */
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
-
-"use strict";
-__webpack_require__.r(__webpack_exports__);
-
-// EXTERNAL MODULE: external "React"
-var external_React_ = __webpack_require__(9);
-var external_React_default = /*#__PURE__*/__webpack_require__.n(external_React_);
-
-// EXTERNAL MODULE: ./content-src/asrouter/templates/Trailhead/Trailhead.jsx
-var Trailhead = __webpack_require__(15);
-
-// EXTERNAL MODULE: ./content-src/asrouter/templates/ReturnToAMO/ReturnToAMO.jsx
-var ReturnToAMO = __webpack_require__(19);
-
-// EXTERNAL MODULE: ./content-src/asrouter/templates/FullPageInterrupt/FullPageInterrupt.jsx
-var FullPageInterrupt = __webpack_require__(20);
-
-// EXTERNAL MODULE: ./node_modules/fluent-react/src/index.js + 14 modules
-var src = __webpack_require__(74);
-
-// EXTERNAL MODULE: ./content-src/asrouter/rich-text-strings.js + 7 modules
-var rich_text_strings = __webpack_require__(76);
-
-// CONCATENATED MODULE: ./content-src/asrouter/templates/FirstRun/Interrupt.jsx
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
-
-/* 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/. */
-
-
-
-
-
-
-class Interrupt_Interrupt extends external_React_default.a.PureComponent {
-  render() {
-    const {
-      cards,
-      onDismiss,
-      onNextScene,
-      message,
-      sendUserActionTelemetry,
-      executeAction,
-      dispatch,
-      fxaEndpoint,
-      UTMTerm,
-      flowParams
-    } = this.props;
-
-    switch (message.template) {
-      case "return_to_amo_overlay":
-        return external_React_default.a.createElement(src["LocalizationProvider"], {
-          bundles: Object(rich_text_strings["generateBundles"])({
-            amo_html: message.content.text
-          })
-        }, external_React_default.a.createElement(ReturnToAMO["ReturnToAMO"], _extends({}, message, {
-          document: this.props.document,
-          UISurface: "NEWTAB_OVERLAY",
-          onBlock: onDismiss,
-          onAction: executeAction,
-          sendUserActionTelemetry: sendUserActionTelemetry
-        })));
-
-      case "full_page_interrupt":
-        return external_React_default.a.createElement(FullPageInterrupt["FullPageInterrupt"], {
-          document: this.props.document,
-          cards: cards,
-          message: message,
-          onBlock: onDismiss,
-          onAction: executeAction,
-          dispatch: dispatch,
-          fxaEndpoint: fxaEndpoint,
-          sendUserActionTelemetry: sendUserActionTelemetry,
-          UTMTerm: UTMTerm,
-          flowParams: flowParams,
-          onBlockById: this.props.onBlockById
-        });
-
-      case "trailhead":
-        return external_React_default.a.createElement(Trailhead["Trailhead"], {
-          document: this.props.document,
-          message: message,
-          onNextScene: onNextScene,
-          onAction: executeAction,
-          sendUserActionTelemetry: sendUserActionTelemetry,
-          dispatch: dispatch,
-          fxaEndpoint: fxaEndpoint,
-          UTMTerm: UTMTerm,
-          flowParams: flowParams
-        });
-
-      default:
-        throw new Error(`${message.template} is not a valid FirstRun message`);
-    }
-  }
-
-}
-// EXTERNAL MODULE: ./content-src/asrouter/templates/FirstRun/Triplets.jsx
-var Triplets = __webpack_require__(21);
-
-// EXTERNAL MODULE: ./content-src/asrouter/templates/FirstRun/addUtmParams.js
-var addUtmParams = __webpack_require__(18);
-
-// CONCATENATED MODULE: ./content-src/asrouter/templates/FirstRun/FirstRun.jsx
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FLUENT_FILES", function() { return FLUENT_FILES; });
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "helpers", function() { return helpers; });
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FirstRun", function() { return FirstRun_FirstRun; });
-/* 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/. */
-
-
-
- // Note: should match the transition time on .trailheadCards in _Trailhead.scss
-
-const TRANSITION_LENGTH = 500;
-const FLUENT_FILES = ["branding/brand.ftl", "browser/branding/brandings.ftl", "browser/branding/sync-brand.ftl", "browser/newtab/onboarding.ftl"];
-const helpers = {
-  addFluent(document) {
-    FLUENT_FILES.forEach(file => {
-      const link = document.head.appendChild(document.createElement("link"));
-      link.href = file;
-      link.rel = "localization";
-    });
-  }
-
-};
-class FirstRun_FirstRun extends external_React_default.a.PureComponent {
-  constructor(props) {
-    super(props);
-    this.didLoadFlowParams = false;
-    this.state = {
-      didUserClearInterrupt: false,
-      didUserClearTriplets: false,
-      flowParams: undefined
-    };
-    this.closeInterrupt = this.closeInterrupt.bind(this);
-    this.closeTriplets = this.closeTriplets.bind(this);
-    helpers.addFluent(this.props.document); // Update utm campaign parameters by appending channel for
-    // differentiating campaign in amplitude
-
-    if (this.props.appUpdateChannel) {
-      addUtmParams["BASE_PARAMS"].utm_campaign += `-${this.props.appUpdateChannel}`;
-    }
-  }
-
-  get UTMTerm() {
-    const {
-      message
-    } = this.props;
-    let UTMTerm = message.utm_term || "";
-    UTMTerm = message.utm_term && message.trailheadTriplet ? `${message.utm_term}-${message.trailheadTriplet}` : UTMTerm;
-    return UTMTerm;
-  }
-
-  async fetchFlowParams() {
-    const {
-      fxaEndpoint,
-      fetchFlowParams
-    } = this.props;
-
-    if (fxaEndpoint && this.UTMTerm && !this.didLoadFlowParams) {
-      this.didLoadFlowParams = true;
-      const flowParams = await fetchFlowParams({ ...addUtmParams["BASE_PARAMS"],
-        entrypoint: "activity-stream-firstrun",
-        form_type: "email",
-        utm_term: this.UTMTerm
-      });
-      this.setState({
-        flowParams
-      });
-    }
-  }
-
-  removeHideMain() {
-    if (!this.isInterruptVisible) {
-      // We need to remove hide-main since we should show it underneath everything that has rendered
-      this.props.document.body.classList.remove("hide-main", "welcome");
-    }
-  } // Is there any interrupt content? This is false for new tab triplets.
-
-
-  get hasInterrupt() {
-    const {
-      message
-    } = this.props;
-    return Boolean(message && message.content);
-  } // Are all conditions met for the interrupt to actually be visible?
-  // 1. hasInterrupt - Is there interrupt content?
-  // 2. state.didUserClearInterrupt - Was it cleared by the user?
-  // 3. props.interruptCleared - Was it cleared externally?
-
-
-  get isInterruptVisible() {
-    return this.hasInterrupt && !this.state.didUserClearInterrupt && !this.props.interruptCleared;
-  }
-
-  componentDidMount() {
-    this.fetchFlowParams();
-    this.removeHideMain();
-  }
-
-  componentDidUpdate() {
-    // In case we didn't have FXA info immediately, try again when we receive it.
-    this.fetchFlowParams();
-    this.removeHideMain();
-  }
-
-  closeInterrupt() {
-    this.setState({
-      didUserClearInterrupt: true
-    });
-  }
-
-  closeTriplets() {
-    this.setState({
-      didUserClearTriplets: true
-    }); // Closing triplets should prevent any future extended triplets from showing up
-
-    setTimeout(() => {
-      this.props.onBlockById("EXTENDED_TRIPLETS_1");
-    }, TRANSITION_LENGTH);
-  }
-
-  render() {
-    const {
-      props,
-      state,
-      UTMTerm
-    } = this;
-    const {
-      sendUserActionTelemetry,
-      fxaEndpoint,
-      dispatch,
-      executeAction,
-      message
-    } = props;
-    const {
-      didUserClearTriplets,
-      flowParams
-    } = state;
-    const hasTriplets = Boolean(message.bundle && message.bundle.length);
-    const interrupt = this.hasInterrupt ? message : null;
-    const triplets = hasTriplets ? message.bundle : null;
-    const isTripletsContainerVisible = hasTriplets && !didUserClearTriplets; // Allow 1) falsy to not render a header 2) default welcome 3) custom header
-
-    const tripletsHeaderId = message.tripletsHeaderId === undefined ? "onboarding-welcome-header" : message.tripletsHeaderId;
-    return external_React_default.a.createElement(external_React_default.a.Fragment, null, this.isInterruptVisible ? external_React_default.a.createElement(Interrupt_Interrupt, {
-      document: props.document,
-      cards: triplets,
-      message: interrupt,
-      onNextScene: this.closeInterrupt,
-      UTMTerm: UTMTerm,
-      sendUserActionTelemetry: sendUserActionTelemetry,
-      executeAction: executeAction,
-      dispatch: dispatch,
-      flowParams: flowParams,
-      onDismiss: this.closeInterrupt,
-      fxaEndpoint: fxaEndpoint,
-      onBlockById: props.onBlockById
-    }) : null, hasTriplets ? external_React_default.a.createElement(Triplets["Triplets"], {
-      document: props.document,
-      cards: triplets,
-      headerId: tripletsHeaderId,
-      showCardPanel: isTripletsContainerVisible,
-      showContent: !this.isInterruptVisible,
-      hideContainer: this.closeTriplets,
-      sendUserActionTelemetry: sendUserActionTelemetry,
-      UTMTerm: `${UTMTerm}-card`,
-      flowParams: flowParams,
-      onAction: executeAction,
-      onBlockById: props.onBlockById
-    }) : null);
-  }
-
-}
-
-/***/ }),
-/* 79 */
+/* 73 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 
 // EXTERNAL MODULE: ./common/Actions.jsm
-var Actions = __webpack_require__(2);
+var Actions = __webpack_require__(1);
 
 // EXTERNAL MODULE: ./content-src/components/A11yLinkButton/A11yLinkButton.jsx
-var A11yLinkButton = __webpack_require__(45);
+var A11yLinkButton = __webpack_require__(40);
 
 // EXTERNAL MODULE: external "React"
 var external_React_ = __webpack_require__(9);
 var external_React_default = /*#__PURE__*/__webpack_require__.n(external_React_);
 
 // EXTERNAL MODULE: ./content-src/components/TopSites/TopSitesConstants.js
-var TopSitesConstants = __webpack_require__(64);
+var TopSitesConstants = __webpack_require__(59);
 
 // CONCATENATED MODULE: ./content-src/components/TopSites/TopSiteFormInput.jsx
 /* 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/. */
 
 class TopSiteFormInput_TopSiteFormInput extends external_React_default.a.PureComponent {
   constructor(props) {
@@ -16370,17 +15518,17 @@ class TopSiteFormInput_TopSiteFormInput 
 
 }
 TopSiteFormInput_TopSiteFormInput.defaultProps = {
   showClearButton: false,
   value: "",
   validationError: false
 };
 // EXTERNAL MODULE: ./content-src/components/TopSites/TopSite.jsx
-var TopSite = __webpack_require__(66);
+var TopSite = __webpack_require__(61);
 
 // CONCATENATED MODULE: ./content-src/components/TopSites/TopSiteForm.jsx
 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TopSiteForm", function() { return TopSiteForm_TopSiteForm; });
 /* 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/. */
 
 
@@ -16667,17 +15815,17 @@ class TopSiteForm_TopSiteForm extends ex
 
 }
 TopSiteForm_TopSiteForm.defaultProps = {
   site: null,
   index: -1
 };
 
 /***/ }),
-/* 80 */
+/* 74 */
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 
 // EXTERNAL MODULE: external "React"
 var external_React_ = __webpack_require__(9);
 var external_React_default = /*#__PURE__*/__webpack_require__.n(external_React_);
deleted file mode 100644
--- a/browser/components/newtab/data/content/assets/gift-extension.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-<!-- 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/. -->
-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="226" height="196"><defs><path id="a" d="M.3.4h161.4V16H.3z"/><path id="c" d="M11.2.7C10 .7 9.5.8 8.7 4.2L0 37.2v.5c.3.4 1.8.5 3.6.6h.6l.3-.6c.2-.2.5-.3.8-.3.3 0 .4 0 .6.2.2 0 .4.3.5.5l.3.2h.6c.3 0 .6-.5.6-1.2 0-.5-.1-.9-.3-1l-.2-.1c-.5 0-.7.2-1 .4-.1.3-.4.5-.8.5a1 1 0 0 1-.6-.3 1 1 0 0 1-.4-.3c-.4-.4-.4-1.2-.4-1.2l.1-1.8a1 1 0 0 1 1.1-1h2.3s.7-.1.7-.6l-.2-.4c-.2-.2-.3-.5-.3-1 0-.6.3-1.5 2-1.5 1.9.1 2 1.2 2 1.6 0 .7-.3 1-.6 1.2l-.3.4v.3l.5.1 2.4.1h.3v-5.1c0-1.3.6-2.5 1.6-3.2l1.1-.8v-1.3s0-.7.4-1.1c.3-.2.5-.3.9-.3s.6.2.8.5l.4.4 1.2-1v-.2c.1-.9-.3-1.3-.7-1.3-.4 0-.6.2-.9.5-.2.2-.4.4-.8.4a1 1 0 0 1-.8-.3c-.4-.5-.3-1.3-.3-1.3v-1.8a1 1 0 0 1 1.1-1h2.3s.7 0 .7-.5c0-.2-.1-.3-.3-.5-.2-.2-.5-.5-.5-1.2 0-.6.4-1.5 2-1.4 2 0 2.1 1 2.1 1.5 0 .7-.4 1-.6 1.2-.2.2-.3.3-.3.5 0 .4.6.6.6.6h2.5l.4.2 6.5-4.7 1.2-5.1c-.2-.2-.4-.3-.8-.3-.9 0-1.3.5-1.4.9 0 .4.3.7.5 1 .2.2.4.4.4.8 0 .9-.8 1.1-1.6 1.1h-3a1 1 0 0 1-1.1-1.2l.1-2.9s0-.7.4-1.1c.2-.2.5-.3.8-.3.4 0 .6.3.8.5.2.3.4.5.9.5.4 0 .8-.4.8-1.3s-.3-1.3-.7-1.3c-.5 0-.7.2-1 .5-.1.2-.4.4-.8.4a1 1 0 0 1-.7-.3C28 2.7 28 2 28 1.9v-.4a908.8 908.8 0 0 0-17-.8"/><linearGradient id="d" x1="-178%" x2="252.8%" y1="-154.5%" y2="243.9%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="f" d="M8.4 1c0 2-1.2 2-1.6 2-.7 0-1-.3-1.1-.6l-.4-.3c-.2 0-.4.1-.5.3 1.6 1 2.5 1.5 2.4 1.7 0 .2-1 .1-2.5-.1l-.1 2c0 .6-.5 1-1.1 1H2L.5 13.3l6.7 4.9h.4c.4 0 .6.2.8.5.2.2.4.5.8.5s.9-.5.9-1.3c0-.9-.4-1.3-.8-1.3s-.6.2-.9.4c-.2.3-.4.5-.8.5a1 1 0 0 1-.8-.4c-.4-.4-.3-1.2-.3-1.2V14a1 1 0 0 1 1.2-1h2.2s.7 0 .7-.5c0-.2 0-.3-.3-.5-.2-.2-.5-.6-.4-1.2 0-.6.3-1.5 2-1.5 1.9.1 2 1.2 2 1.6 0 .7-.3 1-.6 1.2-.2.2-.3.3-.3.5 0 .4.6.6.6.6h2.5c.6 0 1 .6 1 1.1v1.4s0 .7.4.8c.2 0 .3-.1.5-.3.2-.2.5-.6 1.1-.5.6 0 1.6.3 1.5 2 0 1.9-1.2 2-1.6 2-.7 0-1-.4-1.1-.7l-.4-.3c-.5 0-.6.7-.6.7l-.1 3.3c0 .6-.5 1-1.1 1h-1.3c-.2 0-.6 0-.9-.2a1 1 0 0 1-.6-1c0-.4.3-.6.5-.8.2-.3.5-.5.5-1 0-.3-.5-.9-1.4-1-1 0-1.4.6-1.4 1v.2l.2.2c1 .7 1.7 2 1.6 3.2v12.4h1.2l2-.2c.4-.1 1-1 1.5-2.2l-.2-.2c-.4-.4-.3-1.2-.3-1.2v-1.8a1 1 0 0 1 1.2-1h.7c2.2-7.1 5-18.6 7.2-26.6.5-1.7.2-2.2-.8-2.4l-5.8.2L8.4.7v.4"/><linearGradient id="g" x1="-347.2%" x2="231.7%" y1="-251.5%" y2="164.9%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="i" d="M22.6.8c-.4.5-1 .5-1.3.5-.6 0-.9-.3-1-.6h-1v.4L19 4.4c0 .6-.5 1-1.1 1h-1.3c-.2 0-.6 0-.9-.2a1 1 0 0 1-.6-1c0-.4.2-.6.5-.9.2-.2.4-.4.5-.9 0-.4-.5-1-1.4-1-1 0-1.4.5-1.4 1 0 .4.2.6.4.9.2.2.4.5.4.9 0 .8-.8 1.1-1.5 1H9.5a1 1 0 0 1-1-1.2V1.2l.1-.4H5L2 12.2a4 4 0 0 1-1 1.6c9.4-.3 16.6-.5 17.7-.7 3.3-.6 3.2-1.5 3.7-3.6L24.6.7h-2z"/><linearGradient id="j" x1="-501.4%" x2="134.1%" y1="-952.1%" y2="202.8%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="l" d="M.6 59.5v.1h.1a3071 3071 0 0 0 21-.4v-1.8a1 1 0 0 1 1.1-1h2.3s.7 0 .7-.5c0-.2-.1-.3-.3-.5-.2-.3-.5-.6-.5-1.3 0-.5.3-1.5 2.1-1.4.4 0 .7 0 1 .2l4.1-17.2v-2.9a1 1 0 0 1-1 .5H30c-.2 0-.6 0-1-.2a1 1 0 0 1-.5-1c0-.4.2-.7.4-.9.3-.2.5-.5.5-1 0-.3-.4-.8-1.4-.9-.9 0-1.3.5-1.4.9 0 .4.3.7.5 1 .2.2.4.4.4.8 0 .9-.8 1.2-1.6 1.2l-3.1-.2a1 1 0 0 1-1-1v-3s0-.7.5-1.1c.2-.2.4-.3.8-.3s.6.2.8.5c.2.2.4.5.9.5.4 0 .8-.4.8-1.3S25.3 26 25 26c-.5 0-.7.2-1 .4-.2.3-.4.5-.8.5a1 1 0 0 1-.8-.4c-.4-.4-.3-1.2-.3-1.2v-1.9a1 1 0 0 1 1.2-1h2.2s.7 0 .7-.5c0-.1 0-.3-.2-.4-.3-.3-.5-.6-.5-1.3 0-.5.3-1.5 2-1.4 2 0 2.1 1.1 2 1.6 0 .6-.3 1-.6 1.2-.2.1-.3.2-.3.4 0 .5.7.6.7.6l2.5.1.6.2V1L15.8.6.6 59.5zm14.5-21l-.3-.4c-.2-.2-.5-.6-.5-1.2s.3-1.5 2-1.5c2 0 2.1 1.2 2.1 1.6 0 .7-.3 1-.6 1.2-.2.2-.3.3-.3.5 0 .4.6.6.7.6h2.4c.6 0 1 .6 1 1.2v1.3s0 .8.5.8c.2 0 .2 0 .4-.3.2-.2.5-.5 1.2-.5.6 0 1.6.3 1.5 2 0 2-1.3 2-1.6 2-.7 0-1-.3-1.2-.6-.1-.2-.2-.3-.4-.3-.4 0-.6.7-.6.7V49c0 .6-.6 1.1-1.2 1h-1.3c-.2 0-.5 0-.9-.2a1 1 0 0 1-.6-1c0-.4.3-.6.5-.8.2-.3.5-.5.5-1 0-.3-.5-.9-1.4-1-1 0-1.4.6-1.4 1s.2.6.4.9c.3.2.5.5.5.9 0 .8-.9 1.1-1.6 1.1h-.1l-3-.1a1 1 0 0 1-1.1-1.1v-3s0-.7.5-1c.2-.3.5-.4.8-.4.4 0 .6.3.8.5.3.3.5.5.9.6.4 0 .8-.5.9-1.4 0-.8-.4-1.3-.8-1.3s-.7.2-.9.5c-.2.2-.5.5-.8.4a1 1 0 0 1-.8-.3c-.5-.5-.4-1.2-.4-1.3v-1.8l.3-.6c.2-.3.6-.5.9-.4h2.3s.7 0 .7-.5z"/><linearGradient id="m" x1="-254.2%" x2="218.8%" y1="-113.9%" y2="141%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="o" d="M55.9 2.3l10.1 11c-7 2-14.8 4.5-16.6 6a5.7 5.7 0 0 0-1.8 6l-14.9-2c-4.2-.7-6.8-1-8.3-1-.5 0-1 0-1.6.2-1 .2-2 .7-2.7 1.7-.9 1-3.4 9.7-7.5 25.7-2.3 9-.4 11.4 2 12.6L7.7 90.6C2.6 111.3.2 121.2.1 122.3c-.3 2.8 1 3.7 3 4.8a2891.8 2891.8 0 0 0 65.3 34l1.7.5h.6c.6 0 63.5-.8 67.2-1.5 4-.7 4.7-2.3 5.2-4.6l.2-.5 2.4-9.3h8.5c2.1 0 3.8-1.6 3.9-3.7v-20.8l-.1-3.5V99.1l.5-1.8v-.5c2.3 0 2.8-.2 3.2-.3 2.2-.6 3.4-3.8 8.4-23 1-4 2-8 3-11.4.3-1 .6-2.5-.2-3.6-.7-1.1-2-1.3-2.8-1.4a881 881 0 0 0-24.7-8.7c.7-3 1.4-7.2 1.5-10.6l.4-1.7s.4-14.5-15.5-10.8a78.9 78.9 0 0 0-20.5 8.2c-2-2.3-8.4-7-10.5-7.5-2.5-.6-6.3.7-6.6.8l-3.3-6.7c-2.8-5.2-3.6-11.3-12-10.3l-4.4-5c-1-1-12.3-4.2-17-4.2-1.8 0-2.7.5-1.6 1.7zM59.4 27c-.7-2-.7-3.8 1.8-6a44 44 0 0 1 2.4-2l16.5 7.3a104 104 0 0 0-16.4 1.3l-4.3-.6zM28.3 66.5l-2-.9-9.4-4.2-1.2-.5c-1-.6-3.6-1.3-1.2-10.5a206 206 0 0 1 7.1-25c.5-.6 1-.8 1.5-1h.4l.9-.1c1.2 0 3.7.3 8 1l16.4 2.2c1.4 1.8 4 3.3 8 4.4l2 .5 16 4.2c-11-1.3-28.2-3.3-29.5-3l-.2.4-19.9-8a.5.5 0 0 0-.6.3c-.1.3 0 .6.3.7l19.7 7.9a71.7 71.7 0 0 0-3.2 10.9A390.3 390.3 0 0 0 38 60.4l-.1.6a219.7 219.7 0 0 0-1.4 7v.5l-.2 1.5-8-3.5zm66.5-12.1c.1-.3 0-.6-.3-.7l-23.8-9.5.2-.2c1.2-.9 20.2 0 30 .6 8.8 3.8 23 10.1 23.2 11.4-13.1-.8-24.4-1.4-25-1.3-1.8.1-2.5.8-3.4 4.2l-8.2 31.3v.1l-.4 1.3-.2.8-16.3-7.2-2.3-1-6-2.7a2.2 2.2 0 0 1-1.3-2.3l1.8-7 2.5-10.1c1.9-7.2 3.9-14.3 5-17l23.9 9.6h.1c.2 0 .4-.1.5-.3zm69.9 4l-16.4-1c-.9-1-7.3-3.2-14.5-5.5l-3.2-1.7c7 1.5 12.8 2.5 13.5 1.7.2-.2.5-.8.7-1.6a299.1 299.1 0 0 0 1.2.4l1.1.4.5.2 1 .3.3.1 1.3.5a6882.6 6882.6 0 0 1 1.6.5l2.5.9h.1a1400.9 1400.9 0 0 1 5 1.7l.9.4h.2l1 .4h.1l.8.3.4.1.7.3.3.1.7.2.3.2.6.2h.3l.6.3h.2l.6.3h.2l.5.3h.1l.4.1-3.6-.1zm-73 34.9c-1.8-.1-3.3-.2-3.5-.6l-.1-.5 8.6-33c.8-3.4 1.4-3.4 2.5-3.5l17 .8v.4s-.1.8.3 1.3c.1.2.4.3.7.3.4 0 .7-.2.9-.4.2-.3.4-.5.9-.5.4 0 .8.4.7 1.3 0 .9-.4 1.3-.8 1.3-.5 0-.7-.2-.9-.5-.2-.2-.4-.5-.8-.5a1 1 0 0 0-.8.3c-.4.4-.4 1.1-.4 1.1l-.1 2.9c0 .6.4 1 1 1.1l3 .1h.1c.8 0 1.6-.2 1.6-1.1 0-.4-.2-.6-.4-.9-.2-.2-.5-.5-.5-1 0-.3.5-.8 1.4-.8.4 0 .6.1.8.3l-1.2 5-6.5 4.8a1 1 0 0 0-.4-.1l-2.5-.1s-.7-.2-.6-.6c0-.2 0-.3.3-.5.2-.2.6-.5.6-1.2 0-.4-.1-1.5-2-1.5-1.7 0-2 .8-2 1.4 0 .7.2 1 .4 1.2.2.2.3.3.3.5 0 .4-.7.5-.7.5h-2.3a1 1 0 0 0-1.1 1v1.8s-.1.8.3 1.3c.2.2.5.3.8.3.4 0 .6-.2.8-.4.3-.3.5-.5 1-.5.3 0 .7.4.7 1.3v.3l-1.3.9-.4-.4c-.2-.3-.4-.5-.8-.5a1 1 0 0 0-.9.3c-.4.4-.4 1.1-.4 1.1v1.3l-1 .8c-1 .7-1.7 2-1.6 3.2v5.2a1 1 0 0 0-.4 0l-2.4-.2-.4-.1V87l.2-.4c.3-.2.6-.5.6-1.2 0-.4-.1-1.5-2-1.6-1.7 0-2 1-2 1.5s.1.8.3 1l.2.4c0 .5-.7.6-.7.6h-2.3a1 1 0 0 0-1.1 1V90s-.1.8.3 1.2c0 .2.2.3.4.3l.6.3c.4 0 .7-.2.9-.5.2-.2.4-.4.9-.4h.2c.2.2.3.6.3 1.1 0 .7-.3 1.1-.6 1.3h-.6l-.3-.3-.5-.5a.8.8 0 0 0-.6-.2 1 1 0 0 0-.8.3l-.3.6h-.6zM153.4 59v-.4l11.2.7c.2 0 3.6 0 5.8-.2 1 .2 1.3.7.8 2.4-2.3 8-5 19.5-7.2 26.6h-.7a1 1 0 0 0-1.1 1L162 91s0 .8.3 1.2l.2.2c-.6 1.3-1 2-1.5 2.2l-2 .2h-1V82.4c0-1.3-.5-2.5-1.6-3.2l-.2-.2v-.3c0-.3.5-.9 1.4-.8.9 0 1.4.6 1.4 1s-.3.6-.5.9c-.2.2-.5.4-.5.8 0 .5.2.8.6 1 .3.2.7.2.9.2h1.3c.6 0 1-.4 1-1l.2-3.3s.1-.7.6-.7l.4.3c.2.3.4.7 1.1.7.4 0 1.6-.1 1.6-2 .1-1.7-.9-2-1.5-2s-1 .3-1.1.5c-.2.2-.3.3-.5.3-.4 0-.5-.8-.5-.8v-1.4c.1-.5-.3-1-1-1l-2.4-.1s-.6-.2-.6-.6c0-.2 0-.3.3-.5s.6-.5.6-1.2c0-.4-.1-1.5-2-1.6-1.7 0-2 1-2 1.5 0 .6.2 1 .4 1.2.2.2.3.3.3.5 0 .4-.7.5-.7.5h-2.2a1 1 0 0 0-1.1 1l-.1 1.8s0 .8.3 1.2c.2.3.5.4.8.4.4 0 .6-.2.8-.5.3-.2.5-.4 1-.4.3 0 .7.4.7 1.3 0 .8-.5 1.3-.9 1.3s-.6-.3-.8-.5c-.2-.3-.4-.5-.8-.5h-.4l-6.7-4.9a567.1 567.1 0 0 0 1.7-6.2h1.3c.6 0 1-.4 1-1l.2-2.1c1.4.2 2.4.3 2.5.1.1-.2-.8-.8-2.4-1.7.1-.2.3-.3.5-.3l.4.3c.1.3.4.6 1 .7h.1c.5 0 1.6-.2 1.6-2zm-50.2 83l.2-59.7c0-1 .4-1.9 1.1-2.4l24-17.4a2.8 2.8 0 0 1 3.3 0l3.8 2.8c0 2.3-2 3.8-3.3 4.5A3.9 3.9 0 1 0 134 73c0-1-.3-1.8-1-2.5 1.5-.8 3.2-2.3 3.6-4.5l19.1 14c.8.5 1.2 1.4 1.2 2.4l.2 59.6c0 1.5-1.3 2.8-2.9 2.8H106a2.8 2.8 0 0 1-2.8-2.8zm-81.8-7.4l-3.6-2-7.7-4-.8-.4-3.6-2c-3.2-2-3.8-1.9-3.6-3.8a1142.5 1142.5 0 0 1 7.4-30.7l2.2-8.8v-.3l.3-1.3 3.1-12.6 1.3-6.5 20.3 9c.6 1.2 1.6 1.6 1.6 1.6l1.2.6v.1l19 8.4a.5.5 0 1 1-.5 1l-18.8-8.4L38 79c-5 18.2-14.7 54.5-14.6 55.8l.1.9-2-1.1zm40.3-51.3l.3-1 24.6 11-1.8 7-3.5 13.4-1 3.9-10.7 41.7c-.2 0-.3 0-.4-.2-.7-.2-5.2-2.5-11.6-5.8l-1.1-.5-10.5-5.4c-.2-.7-.3-1.7-.3-2.8a354.7 354.7 0 0 1 5.2-20.4 4729.6 4729.6 0 0 1 9.3-35.1l1.5-5.8zm25.9 10.3h.1-.1zm-1.8 7l16.5.1V123a1 1 0 0 0-.6-.2h-2.5s-.7-.2-.7-.7c0-.2.1-.3.3-.4.3-.3.7-.6.7-1.2 0-.5-.2-1.6-2-1.6s-2.1.9-2.1 1.4c0 .7.2 1 .5 1.3l.2.4c0 .5-.7.6-.7.6h-2.2a1 1 0 0 0-1.1 1l-.1 1.8s0 .8.3 1.2c.2.3.5.4.8.4.4 0 .6-.2.9-.5.2-.2.4-.4.9-.4.4 0 .8.4.7 1.3 0 .9-.4 1.3-.8 1.3-.5 0-.7-.3-.9-.5-.2-.3-.4-.5-.8-.5a1 1 0 0 0-.8.3c-.5.4-.4 1.1-.4 1.1l-.2 3a1 1 0 0 0 1 1l3.1.1h.1c.8 0 1.6-.2 1.6-1 0-.5-.2-.7-.4-1-.2-.2-.5-.5-.5-1 0-.3.5-.8 1.4-.8 1 0 1.5.6 1.4 1 0 .4-.2.7-.5 1-.2.1-.4.4-.4.8s.2.8.6 1a2.2 2.2 0 0 0 1 .2h1.2a1 1 0 0 0 1-.5v2.9L98 152.9l-1-.2c-1.8 0-2 .9-2 1.4 0 .7.2 1 .4 1.3.2.2.3.3.3.5 0 .4-.7.5-.7.5h-2.3a1 1 0 0 0-1.1 1v1.9l-21 .3h-.1l15.2-58.9zm55.8 45h2l-2.3 8.8c-.5 2.1-.4 3-3.7 3.6-1 .2-8.3.4-17.6.7.4-.5.8-1 1-1.6l2.9-11.4h3.7v.4l-.1 2.8a1 1 0 0 0 1 1.2h3.2c.7.1 1.5-.2 1.5-1 0-.4-.2-.7-.4-1-.2-.2-.5-.4-.4-.9 0-.4.4-.9 1.4-.9.9 0 1.4.6 1.4 1 0 .5-.3.7-.5 1-.3.2-.5.4-.5.8 0 .5.2.8.6 1a2.2 2.2 0 0 0 1 .2h1.2c.6 0 1-.4 1.1-1l.1-3.3.1-.3h1c.1.2.4.5 1 .5.3 0 .9 0 1.3-.6z"/><linearGradient id="p" x1="1.4%" x2="93.3%" y1="3.6%" y2="102.6%"><stop offset="0%" stop-color="#00C8D6"/><stop offset="100%" stop-color="#0A83FF"/></linearGradient><path id="r" d="M4.3 1.9c0 .6.3 1 .5 1.2.2.2.3.3.3.5 0 .4-.7.5-.7.5H2a1 1 0 0 0-.9.4A1 1 0 0 0 1 5v1.8s-.2.8.3 1.3c.1.2.4.3.8.3.3 0 .6-.2.8-.4.2-.3.5-.5.9-.5s.8.5.8 1.3c0 1-.5 1.4-.9 1.4s-.6-.3-.9-.6c-.2-.2-.4-.5-.8-.5a1 1 0 0 0-.8.3c-.4.4-.4 1.2-.4 1.2l-.1 2.9a1 1 0 0 0 1 1l3 .2H5c.7 0 1.5-.3 1.6-1.1 0-.4-.2-.7-.5-1-.2-.2-.4-.4-.4-.9 0-.3.5-.9 1.4-.8 1 0 1.4.6 1.4 1s-.3.6-.5.9c-.2.2-.5.4-.5.8 0 .5.2.8.6 1 .4.2.7.2.9.2h1.3c.6.1 1.1-.4 1.1-1l.1-3.3s.2-.7.6-.7c.2 0 .3.1.4.3.2.3.5.6 1.2.7.3 0 1.6-.1 1.6-2 0-1.8-1-2-1.5-2-.7-.1-1 .2-1.2.4-.2.2-.2.3-.4.3-.5 0-.5-.8-.5-.8V5.5a1 1 0 0 0-1-1.1l-2.4-.1s-.7-.2-.7-.6c0-.2 0-.3.3-.5s.6-.5.6-1.2c0-.4-.1-1.5-2-1.6h-.2c-1.7 0-2 1-2 1.6"/><linearGradient id="s" x1="-724.3%" x2="372.8%" y1="-700.7%" y2="393.8%"><stop offset="0%" stop-color="#00C8D6"/><stop offset="100%" stop-color="#0A83FF"/></linearGradient><path id="u" d="M1 1.3l.6.2h.1c.7.3 1.5.3 1.9-.5L1.2 0 1 1.3"/><linearGradient id="v" x1="-1012.6%" x2="4693.1%" y1="-1565.4%" y2="7186.9%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="x" d="M.4.4c-.1.4 0 .8.3 1.2a2.2 2.2 0 0 0 .8.5l1.1.4A1 1 0 0 0 4 2L.5.3"/><linearGradient id="y" x1="-779.9%" x2="3287.9%" y1="-1310.1%" y2="5369.7%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="A" d="M1.5 1.5V1L1 .7c0 .3.2.6.6.8"/><linearGradient id="B" x1="-4002.3%" x2="11015.1%" y1="-4010.2%" y2="11007.2%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="D" d="M7.6 1.6c-.3.6-.1 1 0 1.3.1.2.2.4 0 .5 0 .4-.5.3-.7.3L4.8 3a1 1 0 0 0-1.4.6l-.7 1.7s-.3.7-.1 1.2c.1.3.3.5.6.6.4.2.7 0 1-.1.3-.2.5-.3 1-.1.3.1.5.6.2 1.5-.3.8-.9 1-1.2.9-.4-.2-.5-.5-.7-.8 0-.3-.2-.6-.5-.7a1 1 0 0 0-1 0c-.4.2-.7.9-.7 1l-1 2.6a1 1 0 0 0 .5 1.3l2.9 1.2c.7.3 1.6.3 1.9-.5.1-.4 0-.7-.1-1-.1-.3-.3-.6-.1-1 .1-.4.7-.7 1.6-.4.8.4 1.1 1 1 1.4-.2.4-.5.6-.8.7-.3.1-.6.3-.7.6-.2.5-.1.9.2 1.2.2.3.6.4.7.5h.1l1.1.5a1 1 0 0 0 1.4-.6l1.3-3c0-.1.3-.7.7-.6.2 0 .2.2.3.5 0 .3.2.7.8 1 .4 0 1.5.4 2.2-1.4.7-1.5-.1-2.2-.7-2.4-.6-.2-1 0-1.3.1-.2.1-.3.2-.4.1-.5-.1-.3-.8-.3-.8l.5-1.3a1 1 0 0 0-.5-1.4l-2.3-.9s-.6-.4-.4-.8l.4-.3c.4-.1.8-.3 1-.9.2-.4.4-1.5-1.3-2.2A3 3 0 0 0 8.9.7c-.8 0-1.2.5-1.3.9"/><linearGradient id="E" x1="-273.4%" x2="702.2%" y1="-273.2%" y2="718.8%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="G" d="M7.9 1.7c-.3.6-.1 1 0 1.3.1.3.2.4.1.6-.1.3-.6.3-.8.3L5 3a1 1 0 0 0-1.4.6L3 5.3s-.3.7 0 1.3c0 .2.2.4.5.6.4.1.7 0 1-.2.3-.1.5-.3 1-.1.3.1.6.7.2 1.5-.3.8-.8 1-1.2.9-.4-.2-.5-.5-.6-.8-.1-.3-.3-.6-.6-.7a1 1 0 0 0-.9 0c-.2 0-.4.3-.5.5L.8 12.5l.4.3 2.8 1v.1c.7.3 1.6.3 2-.5 0-.4 0-.7-.2-1-.1-.3-.3-.6 0-1 0-.3.7-.7 1.5-.3.8.3 1.1 1 1 1.3-.2.4-.5.6-.8.7-.3.2-.6.3-.7.7-.2.4-.1.8.2 1.1a2.2 2.2 0 0 0 .8.5L9 16a1 1 0 0 0 1.3-.6l1.3-3s.3-.7.7-.6c.2.1.2.2.3.5 0 .3.2.7.8 1 .4.1 1.6.4 2.3-1.3.6-1.6-.2-2.2-.8-2.4-.6-.3-1-.1-1.3 0l-.4.2c-.4-.2-.2-1-.2-1l.5-1.2a1 1 0 0 0-.6-1.4l-2.3-.9s-.6-.3-.4-.8l.4-.3c.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1A3 3 0 0 0 9.2.8c-.8 0-1.2.5-1.3 1"/><linearGradient id="H" x1="-476.7%" x2="516.5%" y1="-469.5%" y2="522.5%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="J" d="M3.7 1.7V2l-2.2 8.8c.3.3.4.6.3.9-.2.3-.4.5-.7.6l-.5 2a2.3 2.3 0 0 0 .8.4l1 .4a1 1 0 0 0 1.5-.6l1.2-3s.3-.7.7-.5c.2 0 .2.2.3.4.1.3.2.7.9 1 .3.1 1.5.4 2.2-1.3.6-1.6-.2-2.2-.7-2.4-.7-.3-1 0-1.3 0-.2.2-.4.3-.5.2-.4-.2-.2-.9-.2-.9L7 6.7a1 1 0 0 0-.6-1.3l-2.2-1s-.6-.3-.5-.7c0-.2.2-.2.5-.3.3-.2.7-.3 1-1 .1-.3.3-1.3-1.2-2l-.3 1.3"/><linearGradient id="K" x1="-408%" x2="1301.6%" y1="-208.2%" y2="808.2%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="M" d="M0 10.3c.5 0 1-.2 1.2-.7l1.2-3s.4-.7.8-.5l.2.4c.1.3.3.8.9 1 .3.2 1.5.5 2.2-1.3.6-1.6-.2-2.2-.7-2.4-.7-.2-1 0-1.3.1-.2.1-.3.2-.5.1-.4-.1-.2-.9-.2-.9L4.3 2A1 1 0 0 0 3.7.5l-1-.4L0 10.3"/><linearGradient id="N" x1="-1016.7%" x2="1227.4%" y1="-633.9%" y2="838.7%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="P" d="M8.4 1.1c-.3.7-.1 1 0 1.4.1.2.2.3 0 .5 0 .3-.5.3-.7.3l-2.1-.9a1 1 0 0 0-1.4.6l-.7 1.7s-.3.7-.1 1.3l.6.6c.4.1.7 0 1-.2.3-.1.5-.3 1 0 .3 0 .6.6.2 1.4-.3.8-.8 1-1.2 1-.4-.2-.5-.5-.6-.9-.2-.3-.3-.6-.6-.7a1 1 0 0 0-.9 0c-.5.3-.8 1-.8 1l-1 2.6a1 1 0 0 0 .6 1.4l2.8 1.1c.7.3 1.6.3 1.9-.5.1-.3 0-.6-.1-1-.1-.3-.3-.6 0-1 0-.3.6-.7 1.5-.3.8.3 1.1 1 1 1.3-.2.5-.5.6-.8.7-.3.2-.6.3-.7.7-.2.4-.1.8.2 1.1a2.2 2.2 0 0 0 .8.5l1.2.5a1 1 0 0 0 1.3-.6l1.3-3s.3-.7.7-.5c.2 0 .2.2.3.4 0 .3.2.7.8 1h.5l1-3.8c-.6-.2-1 0-1.3.2-.2 0-.3.1-.4 0-.4 0-.3-.8-.3-.8l.6-1.3a1 1 0 0 0-.6-1.4L11 4.6s-.6-.3-.4-.7c0-.2.2-.3.4-.4.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1a3 3 0 0 0-1-.3c-.8 0-1.2.6-1.3 1"/><linearGradient id="Q" x1="-521%" x2="525.6%" y1="-488.9%" y2="503%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="S" d="M7.7 1.5c-.3.7-.1 1 0 1.4.1.2.2.3.1.5-.1.3-.6.3-.8.3l-2.1-.9a1 1 0 0 0-1.4.6l-.7 1.7s-.3.7 0 1.3c0 .3.2.5.5.6.4.1.7 0 1-.2.3-.1.5-.2 1 0 .3 0 .6.6.2 1.4-.3.8-.8 1-1.2 1-.4-.2-.5-.5-.6-.8-.1-.3-.3-.6-.6-.8a1 1 0 0 0-.9 0c-.5.3-.8 1-.8 1l-1 2.6a1 1 0 0 0 .6 1.4l2.8 1.1c.7.3 1.6.3 2-.5 0-.3 0-.6-.2-1-.1-.2-.3-.6 0-1 0-.3.6-.6 1.5-.3.8.3 1.1 1 1 1.4-.2.4-.5.5-.8.7-.3 0-.6.2-.7.6-.2.4-.1.8.2 1.2a2.2 2.2 0 0 0 .8.5l1.2.4a1 1 0 0 0 1.3-.6l1.3-3s.3-.7.7-.5c.2 0 .2.2.3.4 0 .3.2.7.8 1 .4.1 1.6.4 2.3-1.3.6-1.6-.2-2.2-.8-2.4-.6-.3-1 0-1.3 0-.2.2-.3.3-.4.2-.4-.2-.2-.9-.2-.9l.5-1.3a1 1 0 0 0-.6-1.3l-2.3-1s-.6-.3-.4-.7c0-.2.2-.2.4-.3.4-.2.8-.3 1-1 .2-.4.4-1.4-1.3-2.1A3 3 0 0 0 9 .7c-.8 0-1.2.5-1.3.8"/><linearGradient id="T" x1="-549.7%" x2="425.9%" y1="-554.1%" y2="437.8%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="V" d="M1.7 1.4L.2 7.2l24.6 11.1 1.8-6.9L2 .4c0 .4-.2.7-.3 1"/><linearGradient id="W" x1="-217.2%" x2="350.9%" y1="-347%" y2="495.8%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="Y" d="M7.6 1.1c-.3.6-.1 1 0 1.3.1.3.2.4.1.6-.1.3-.6.3-.8.3l-2.1-.9a1 1 0 0 0-1.4.6l-.7 1.7s-.3.7 0 1.3c0 .2.2.4.5.6.4.1.7 0 1-.2.3-.1.6-.3 1-.1.3.1.6.7.2 1.5-.3.8-.8 1-1.2.9-.4-.2-.5-.5-.6-.8-.1-.3-.3-.6-.6-.7a1 1 0 0 0-.9 0c-.5.2-.8 1-.8 1l-1 2.6a1 1 0 0 0 .6 1.4l2.8 1v.1c.7.3 1.6.3 2-.5 0-.4 0-.7-.2-1-.1-.3-.3-.6 0-1 0-.3.6-.7 1.5-.3.8.3 1.1 1 1 1.3-.2.4-.5.6-.8.7-.3.2-.6.3-.7.6-.2.5-.1.9.2 1.2a2.2 2.2 0 0 0 .8.5l1.2.5a1 1 0 0 0 1.3-.6l1.3-3s.3-.7.7-.6c.2.1.2.2.3.5v.2A218.2 218.2 0 0 1 13 9c-.4-.2-.2-1-.3-1l.6-1.2a1 1 0 0 0-.6-1.4l-2.3-.9s-.6-.3-.4-.8l.4-.3c.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1A3 3 0 0 0 8.9.2c-.8 0-1.2.5-1.3 1"/><linearGradient id="Z" x1="-156.2%" x2="996.4%" y1="-129.7%" y2="862.9%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="ab" d="M7.9 1.2c-.3.7-.1 1 0 1.4.1.2.2.3 0 .5 0 .3-.5.3-.7.3L5 2.5a1 1 0 0 0-1 .1 1 1 0 0 0-.4.5L3 4.8s-.3.7-.1 1.3l.6.6c.4.1.7 0 1-.2.3-.1.5-.3 1 0 .3 0 .5.6.2 1.4-.3.8-.8 1-1.2 1-.4-.3-.5-.5-.7-.9 0-.3-.2-.6-.5-.7a1 1 0 0 0-1 0c-.4.2-.7 1-.7 1l-1 2.6a1 1 0 0 0 .6 1.4l2.8 1v.1c.7.3 1.6.3 1.9-.5.1-.3 0-.7-.1-1-.1-.3-.3-.6-.1-1 .1-.3.7-.7 1.6-.3.8.3 1.1 1 1 1.3-.2.5-.5.6-.8.7-.3.2-.6.3-.7.7-.2.4-.1.8.2 1.1a2.2 2.2 0 0 0 .8.5l1.1.5a1 1 0 0 0 1.4-.6l1.3-3s.3-.7.7-.5c.2 0 .2.1.3.4 0 .3.2.7.8 1 .4.1 1.5.4 2.2-1.3.7-1.6-.1-2.2-.7-2.4-.6-.3-1 0-1.3 0-.2.2-.3.2-.5.2-.4-.2-.2-1-.2-1l.5-1.2a1 1 0 0 0-.5-1.4l-2.3-.9s-.6-.3-.4-.7c0-.2.2-.3.4-.4.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1A3 3 0 0 0 9.2.3c-.8 0-1.2.6-1.3 1"/><linearGradient id="ac" x1="-325.4%" x2="650.8%" y1="-326%" y2="666.5%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="ae" d="M2.3 1.5a3 3 0 0 0-1-.6L.3.6l2 .9z"/><linearGradient id="af" x1="-1759.4%" x2="6009.6%" y1="-3454.8%" y2="11562.6%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="ah" d="M.2 1.6c-.3.6-.1 1 0 1.3l.1.3 2.3 1L3 4c.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1A3 3 0 0 0 1.5.7C.7.7.3 1.3.2 1.7"/><linearGradient id="ai" x1="-1577.2%" x2="2179.9%" y1="-1817%" y2="2494.7%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="ak" d="M6.7 1.9c-.2.6 0 1 0 1.3.2.2.2.4.2.5-.2.4-.6.3-.8.3l-2.2-.8a1 1 0 0 0-1.4.6L2 5.4s-.4.7-.1 1.3c0 .3.3.5.6.6.3.2.6 0 1-.1.2-.2.5-.3 1-.1.3.1.5.6.2 1.4-.3.8-.9 1.1-1.3 1-.4-.2-.5-.5-.6-.8 0-.3-.2-.6-.6-.8a1 1 0 0 0-.8 0c-.6.3-.8 1-.8 1l-.1.3C0 10.8 0 12.1.2 13l2.6 1H3c.7.4 1.5.4 1.9-.4.1-.4 0-.7-.1-1-.2-.3-.3-.6-.1-1 .1-.4.7-.7 1.6-.4.8.4 1 1 1 1.4-.2.4-.5.5-.8.7-.3.1-.6.3-.8.6-.1.4 0 .8.3 1.2a2.2 2.2 0 0 0 .8.5l1.1.4a1 1 0 0 0 1.4-.6l1.2-3s.4-.7.8-.5l.2.4c.1.3.3.8.9 1 .3.2 1.5.5 2.2-1.3.6-1.6-.2-2.2-.7-2.4-.6-.2-1 0-1.3.1-.2.1-.3.2-.5.1-.4-.1-.2-.9-.2-.9l.5-1.2a1 1 0 0 0-.6-1.4l-2.2-1S8.9 5 9 4.7c0-.2.2-.2.4-.3.3-.1.7-.3 1-1 .2-.3.4-1.4-1.4-2a3 3 0 0 0-1-.3c-.9 0-1.2.5-1.4.9"/><linearGradient id="al" x1="-130.3%" x2="897.7%" y1="-116.6%" y2="876%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="an" d="M2.9 1c-.5.3-.8 1-.8 1l-1 2.6A1 1 0 0 0 1.7 6l1.1.4 1-5.4h-.5A1 1 0 0 0 3 1"/><linearGradient id="ao" x1="-1281.4%" x2="3965.1%" y1="-647.7%" y2="2071.3%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="aq" d="M1.6.3a1 1 0 0 0-.4.5L.5 2.5s-.3.7 0 1.3c0 .2.2.4.5.6L2 .2a1 1 0 0 0-.4.1"/><linearGradient id="ar" x1="-2250.2%" x2="7256.5%" y1="-827.7%" y2="2772.8%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="at" d="M.8 10.2l.6.1c.9.4 1.1 1 1 1.4-.2.4-.4.6-.8.7L1 13c-.2.4 0 .9.2 1.2a2.2 2.2 0 0 0 .9.5l1.1.5a1 1 0 0 0 1.4-.6l1.2-3.1s.4-.6.8-.5l.2.4c.1.4.2.8.9 1 .3.2 1.5.5 2.2-1.3.6-1.6-.2-2.2-.7-2.4-.7-.2-1 0-1.3.1-.2.1-.3.2-.5.1-.4-.1-.2-.9-.2-.9l.5-1.2A1 1 0 0 0 7 5.4l-2.2-.9s-.6-.4-.5-.8l.5-.3c.3-.1.7-.3 1-.9C5.9 2.1 6 1 4.4.3a3 3 0 0 0-1-.2L.7 10.2"/><linearGradient id="au" x1="-574.7%" x2="1047.9%" y1="-318.9%" y2="674%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="aw" d="M.1 6.8l6.1 2.8-.4 1s-.3.7 0 1.2c0 .3.2.5.5.6.4.2.7 0 1 0 .3-.2.6-.4 1-.2.3.1.6.7.2 1.5-.3.8-.8 1-1.2.9-.4-.2-.5-.5-.6-.8-.1-.3-.2-.6-.6-.7a1 1 0 0 0-.9 0c-.5.2-.7.9-.7 1l-1.1 2.6A1 1 0 0 0 4 18l2.8 1.2c.8.3 1.6.3 2-.5 0-.4 0-.7-.2-1-.1-.3-.2-.6 0-1 0-.3.7-.7 1.5-.3.9.3 1.1 1 1 1.3-.2.4-.5.6-.8.7-.3.1-.6.3-.7.6-.2.5-.1.9.2 1.2a2.2 2.2 0 0 0 .9.5l1 .5a1 1 0 0 0 1.5-.6l1.2-3s.3-.7.7-.6c.2.1.2.2.3.5.1.3.2.7.9 1 .3 0 1.5.4 2.2-1.3.5-1.3 0-2-.4-2.3l4.9 2.2 1.2-4.5L43 21a.5.5 0 0 0 .7-.2c.1-.3 0-.6-.3-.7l-19-8.5-1-.6s-1-.4-1.7-1.6L1.4.3.1 6.8zM16 14.9c-.4-.1-.2-.8-.2-.8v-.2l1.8.8c-.5-.2-.9 0-1.1.1l-.4.2H16zm8.5-3.4z"/><linearGradient id="ax" x1="-56.3%" x2="288%" y1="-140.7%" y2="577.4%"><stop offset="0%" stop-color="#CCFBFF"/><stop offset="100%" stop-color="#C8E4FF"/></linearGradient><path id="az" d="M1.4.7a.5.5 0 1 0 0 1h33.5a.5.5 0 1 0 0-1H1.4z"/><linearGradient id="aA" x1="-250.8%" x2="211.3%" y1="-10329%" y2="5614%"><stop offset="0%" stop-color="#00C8D6"/><stop offset="100%" stop-color="#0A83FF"/></linearGradient><path id="aC" d="M1.4.9a.5.5 0 1 0 0 1h33.5a.5.5 0 1 0 0-1H1.4z"/><linearGradient id="aD" x1="-259.8%" x2="202.3%" y1="-10637.4%" y2="5305.7%"><stop offset="0%" stop-color="#00C8D6"/><stop offset="100%" stop-color="#0A83FF"/></linearGradient></defs><g fill="none" fill-rule="evenodd"><path fill="#EAEAEE" d="M194 1.2a8.9 8.9 0 0 0-1.3.2.6.6 0 0 1-.2-1.1l1.3-.3c.3 0 .6.2.6.5s-.1.6-.5.7m7.6 2.2c-.2 0-.4 0-.5-.2a5.6 5.6 0 0 0-2.7-1.7.6.6 0 0 1-.3-.7c0-.3.4-.5.7-.4 1.4.4 2.4 1.1 3.2 2a.6.6 0 0 1-.4 1m-184 137.3a1 1 0 1 1 0-2H38v2H17.5zm-5.3 3.5h12a.5.5 0 0 1 0 1h-12a.5.5 0 0 1 0-1m25.5.5c0-.2.1-.4.3-.5v1a.5.5 0 0 1-.3-.5m-36.5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1m32 0h1a.5.5 0 0 1 0 1h-1a.5.5 0 0 1 0-1M226 77.6a1 1 0 1 1 0 2h-38.8c0-.6 0-1.3-.2-2h39zm-15-4a.5.5 0 0 1 0 1h-24.4l-.3-1H211z"/><g transform="matrix(-1 0 0 1 199 180)"><mask id="b" fill="#fff"><use xlink:href="#a"/></mask><path fill="#EAEAEE" d="M141.7 6.7a2240.8 2240.8 0 0 1-68.9 1.6l-1-.2-1.3-.5A466 466 0 0 1 56.1.4C23.8 1.4.4 4.4.4 8c0 4.4 36 8 80.6 8 44.6 0 80.7-3.6 80.7-8 0-1.7-5.2-3.2-14-4.5-1.1 1.4-2.9 2.6-6 3.2" mask="url(#b)"/></g><path fill="#EAEAEE" d="M52.3 30.6c-1.6-.8-3.5-1-5.6-.6-2.2.4-4.4 1.6-6.7 3.5a.6.6 0 0 1-.8 0 .6.6 0 0 1 0-.9c2.4-2 4.9-3.3 7.3-3.8 2.4-.4 4.5-.2 6.4.8a.6.6 0 0 1-.6 1m6.5 4.3a.6.6 0 0 1-.8.2.6.6 0 0 1-.2-.8l.6-1c.1-.3.5-.4.8-.2.3.1.4.5.2.8l-.6 1m27.1-8l-.4-.1a13.3 13.3 0 0 0-7.2-3c-2-.3-3.9-.2-5.6 0a.6.6 0 1 1-.2-1c1.9-.4 3.9-.5 6-.2 3.3.5 6 1.6 7.8 3.3a.6.6 0 0 1-.4 1M32.2 43.5a.6.6 0 1 1-1-.6c.3-.7 1-1.7 1.8-3a.6.6 0 1 1 1 .6c-.8 1.3-1.5 2.3-1.8 3m-16.6 1H9.1a.6.6 0 1 1 0-1h6.5a.6.6 0 1 1 0 1m11.8 0h-1.2a.6.6 0 1 1 0-1h1.2a.6.6 0 1 1 0 1M62 30.2a.6.6 0 0 1-.9-.7c.8-1 1.7-1.8 2.6-2.6a.6.6 0 0 1 .7 1c-.8.6-1.6 1.5-2.4 2.3M98.6 44a.6.6 0 1 1 0-1.2h3.8l-.6 1.2h-3.2zm-11.8-.3a.6.6 0 0 1 0-.6l.5-1.4c0-.3.4-.5.7-.4.3.1.5.4.4.7 0 .3-.2.6-.3.8h1.1a.6.6 0 1 1 0 1.2h-1.9a.6.6 0 0 1-.5-.3m2.1-5.8a.6.6 0 0 1-.5-.7V36a.6.6 0 0 1 1-.5c.2.1.3.3.3.6l-.2 1v.2c0 .3-.3.5-.6.5"/><path fill="#F9F9FA" d="M88.9 49.4H77.7c2.6 1 5 2.2 7 3.3a47 47 0 0 1 4.2-3.3M9 47h23.5c2-3.9 7.5-12.8 14.4-14.1 9-1.7 10.8 7.2 10.8 7.2s5.9-15.5 21-13.4c7.2 1 9.8 4.8 10.6 8.8H89c-.3 0-.6.1-.6.5l-.1 1.1a.6.6 0 1 0 1.1.2V37c.1 2-.1 4-.5 5.6H88l.3-.8a.6.6 0 0 0-1.1-.3l-.6 1.4v.6l.6.3h1.4l-1 2.9H93a10 10 0 0 1 2-.8c1.8-.5 4-.3 5.6.1l1.1-2.2.7-1.2.6-1.2 1.2-2.6c1.8-4 4.3-9.6 12.1-9.3l3.4-3.8c1.4-1.6 6.6-3 10.8-4 10-2.3 11.4-1 12.4-.2 1.3 1.2 1.8 3.4-.1 5.6l-6.9 7.5c10.8 3.2 12.4 4.5 13 5.1A8.8 8.8 0 0 1 152 45l10.4-1.4c7.6-1.3 9.8-1.3 11.4-.8 1.6.4 3 1.3 4.2 2.7.6.9 1.6 2.2 8 27a45 45 0 0 1 1.2 7.2c0 3.4-.8 5.8-2.7 7.5l6.5 26.3c6.3 25.6 7.6 31 7.7 32.2.5 4.8-2.4 6.5-4.5 7.7l-1.5 1a2579.5 2579.5 0 0 1-65.5 33.8l-1 .2h-.9c-.5 0-63.8-.9-68-1.6-3.1-.6-4.9-1.8-6-3.2a9.7 9.7 0 0 1-1.5-3.7l-.2-.5-2.7-10.6h3.4l2.4 9.3.2.5c.5 2.3 1.2 3.9 5.2 4.6 3.7.7 66.6 1.5 67.2 1.5h.6c.5 0 1-.2 1.7-.5a2900.5 2900.5 0 0 0 65.3-34c2-1.1 3.3-2 3-4.8 0-1-2.5-11-7.6-31.7a3763 3763 0 0 1-6.9-28c2.4-1.3 4.3-3.7 2-12.7-4.1-16-6.6-24.7-7.5-25.7-.8-1-1.6-1.5-2.7-1.7-.5-.2-1-.2-1.6-.2-1.5 0-4.1.3-8.3 1l-14.9 2c.8-2.3-.2-4.7-1.8-6a79 79 0 0 0-16.6-6l10.1-11c3.9-4.4-17.3 1-18.6 2.6l-4.4 5c-8.4-1-9.2 5-12 10.2-1.4 2.6-2.4 4.9-3.3 6.7-.3 0-4.1-1.4-6.6-.8-2.1.5-8.5 5.2-10.5 7.5-5-2.8-12.3-6.4-20.5-8.2C48.3 44.6 48.7 59 48.7 59l.4 1.6c.1 3.5.8 7.7 1.5 10.7L26 80.1c-.8 0-2 .3-2.8 1.4-.8 1.1-.5 2.5-.2 3.6 1 3.4 2 7.5 3 11.4 5 19.2 6.2 22.4 8.4 23 .4.1 1 .2 3.2.3v.5l.5 1.9v13L34.8 123c-.7 0-1.1-.2-1.5-.3-4-1-5.2-4.5-10.6-25.3-1-3.9-2-8-3-11.3-.3-1-1-3.4.3-5.8a6.1 6.1 0 0 1 4-2.9l.9-.1c4-1.6 12.7-4.6 22.7-8-.6-3.2-1-6.5-1-8.3l-.4-1.4V59c0-.3-.1-5.5 3-9.6h-40a1.2 1.2 0 1 1 0-2.4"/><path fill="#EAEAEE" d="M158.7 12.5h-.6a.6.6 0 1 1 0-1.2h.6a.6.6 0 1 1 0 1.2m35.2-11a9 9 0 0 0-1.2.2.6.6 0 0 1-.2-1.2l1.3-.2c.3 0 .6.1.6.5 0 .3-.1.6-.5.6m7.6 2.3l-.5-.2a5.6 5.6 0 0 0-2.7-1.7.6.6 0 0 1-.3-.7c0-.4.4-.5.7-.4 1.4.4 2.4 1 3.2 2a.6.6 0 0 1-.4 1M167 12.5h-3.6a.6.6 0 1 1 0-1.2h3.6a.6.6 0 1 1 0 1.2m17.5-4v-.3c-.3-.8-1.3-3.4-4.2-3.4a6 6 0 0 0-1.1.1c-1.6.3-3.1 1.2-4.7 2.7-.2.3-.6.3-.8 0a.6.6 0 0 1 0-.8c1.7-1.7 3.5-2.7 5.3-3l1.3-.2c3 0 4.6 2.4 5.2 4 .2.2.3.5.2.7v.3l-.6.3h-.2a.6.6 0 0 1-.4-.4m16.7 3.6c0-.4.3-.6.6-.6H216a.6.6 0 1 1 0 1.1h-14.2a.6.6 0 0 1-.6-.5"/><path fill="#F9F9FA" d="M216.1 16.6h-58.4a1.2 1.2 0 1 1 0-2.4h13.8c1.2-2.2 4.2-7 8-7.7 2.5-.5 4 .6 5 1.7v.3c0 .2.2.3.4.4l.6 1.6S188.8 2 197.2 3c6.2.9 6.4 5.4 5.8 8.5h-1.2a.6.6 0 0 0 0 1.1h1l-.6 1.6h14.2-.5.2a1.2 1.2 0 1 1 0 2.4"/><path fill="#FFF" d="M134.8 43.9c2.5 2.2 2.5 4 1.8 6l-4.3.6a104 104 0 0 0-16.4-1.3l16.5-7.3 2.4 2"/><g transform="matrix(-1 0 0 1 108 78)"><mask id="e" fill="#fff"><use xlink:href="#c"/></mask><path fill="url(#d)" d="M11.2.7C10 .7 9.5.8 8.7 4.2L0 37.2v.5c.3.4 1.8.5 3.6.6h.6l.3-.6c.2-.2.5-.3.8-.3.3 0 .4 0 .6.2.2 0 .4.3.5.5l.3.2h.6c.3 0 .6-.5.6-1.2 0-.5-.1-.9-.3-1l-.2-.1c-.5 0-.7.2-1 .4-.1.3-.4.5-.8.5a1 1 0 0 1-.6-.3 1 1 0 0 1-.4-.3c-.4-.4-.4-1.2-.4-1.2l.1-1.8a1 1 0 0 1 1.1-1h2.3s.7-.1.7-.6l-.2-.4c-.2-.2-.3-.5-.3-1 0-.6.3-1.5 2-1.5 1.9.1 2 1.2 2 1.6 0 .7-.3 1-.6 1.2l-.3.4v.3l.5.1 2.4.1h.3v-5.1c0-1.3.6-2.5 1.6-3.2l1.1-.8v-1.3s0-.7.4-1.1c.3-.2.5-.3.9-.3s.6.2.8.5l.4.4 1.2-1v-.2c.1-.9-.3-1.3-.7-1.3-.4 0-.6.2-.9.5-.2.2-.4.4-.8.4a1 1 0 0 1-.8-.3c-.4-.5-.3-1.3-.3-1.3v-1.8a1 1 0 0 1 1.1-1h2.3s.7 0 .7-.5c0-.2-.1-.3-.3-.5-.2-.2-.5-.5-.5-1.2 0-.6.4-1.5 2-1.4 2 0 2.1 1 2.1 1.5 0 .7-.4 1-.6 1.2-.2.2-.3.3-.3.5 0 .4.6.6.6.6h2.5l.4.2 6.5-4.7 1.2-5.1c-.2-.2-.4-.3-.8-.3-.9 0-1.3.5-1.4.9 0 .4.3.7.5 1 .2.2.4.4.4.8 0 .9-.8 1.1-1.6 1.1h-3a1 1 0 0 1-1.1-1.2l.1-2.9s0-.7.4-1.1c.2-.2.5-.3.8-.3.4 0 .6.3.8.5.2.3.4.5.9.5.4 0 .8-.4.8-1.3s-.3-1.3-.7-1.3c-.5 0-.7.2-1 .5-.1.2-.4.4-.8.4a1 1 0 0 1-.7-.3C28 2.7 28 2 28 1.9v-.4a908.8 908.8 0 0 0-17-.8" mask="url(#e)"/></g><path fill="#FFF" d="M184.3 106v-.3.3m1.9 9.7c0-.3 0-.6.3-1l.4 1.6c-.3-.1-.5-.3-.7-.6M121.1 79c.2-.6-.1-1.3-.1-1.3l-.7-1.7a1 1 0 0 0-1.4-.6l-2 .9s-.7 0-.9-.3l.1-.5c.1-.4.3-.7 0-1.4-.2-.5-.8-1.3-2.4-.6-1.7.7-1.5 1.7-1.3 2.1.2.7.6.8 1 1 .2 0 .3.1.4.3.2.4-.4.7-.4.7l-2.3 1a1 1 0 0 0-.5 1.3l.5 1.3s.2.7-.2.9l-.5-.1c-.3-.2-.7-.4-1.3-.1-.6.2-1.4.8-.7 2.4.7 1.7 1.8 1.4 2.2 1.3.6-.3.7-.7.8-1 0-.3.1-.4.3-.4.4-.2.7.4.8.4l1.2 3.1c.2.5.8.8 1.4.6l1-.5h.2c.1 0 .5-.2.7-.5.3-.3.4-.7.2-1.1-.1-.4-.4-.5-.7-.7-.3-.1-.6-.2-.8-.7-.1-.3.2-1 1-1.3.9-.4 1.5 0 1.6.3.2.4 0 .7 0 1-.2.3-.3.7-.2 1 .3.8 1.2.8 1.8.5h.1l2.8-1.1c.6-.2.9-.9.6-1.4l-1-2.7s-.3-.7-.8-.9a1 1 0 0 0-.9 0c-.3.1-.4.4-.5.7-.2.4-.3.6-.7.8-.4.2-.9-.1-1.2-1-.3-.7-.1-1.2.3-1.4.4-.2.6 0 1 .1.2.2.5.3.9.2l.6-.6zm-12 36.3l-.2-.8a18.4 18.4 0 0 0-.4-1.4l-8.2-31.3c-.9-3.4-1.6-4-3.4-4.2-.6 0-11.9.5-25 1.3.2-1.3 14.4-7.6 23.1-11.4a215.8 215.8 0 0 1 30.3-.4l-23.8 9.5a.5.5 0 1 0 .3 1l24-9.6c1 2.7 3 9.8 4.9 17a3 3 0 0 0-1.1.2c-1.7.7-1.5 1.8-1.4 2.2.3.6.7.8 1 1 .3 0 .4 0 .5.2.1.4-.5.8-.5.8l-2.2.9a1 1 0 0 0-.6 1.4l.5 1.2s.2.8-.2 1c-.2 0-.3 0-.5-.2-.3-.1-.6-.3-1.3 0-.5.1-1.3.7-.7 2.3.7 1.8 1.9 1.5 2.2 1.3.7-.2.8-.6.9-1 0-.2 0-.3.2-.4.4-.1.8.5.8.5l1.2 3c.2.6.9.9 1.4.7l1.1-.5h.1l.8-.5c.3-.3.4-.8.2-1.2l-.7-.6c-.4-.1-.6-.3-.8-.7-.1-.3.1-1 1-1.4l.6-.1 1.7 7 .3 1.1s-.7 1.2-1.4 1.2l-6.1 2.7v-.3c.2-.3.4-.7.1-1.3-.2-.5-.8-1.3-2.4-.6-1.7.7-1.5 1.7-1.3 2.1.2.7.6.8 1 1l.3.1-16.3 7.2zm-.8 1.2h.1-.2"/><g transform="matrix(-1 0 0 1 51 81)"><mask id="h" fill="#fff"><use xlink:href="#f"/></mask><path fill="url(#g)" d="M8.4 1c0 2-1.2 2-1.6 2-.7 0-1-.3-1.1-.6l-.4-.3c-.2 0-.4.1-.5.3 1.6 1 2.5 1.5 2.4 1.7 0 .2-1 .1-2.5-.1l-.1 2c0 .6-.5 1-1.1 1H2L.5 13.3l6.7 4.9h.4c.4 0 .6.2.8.5.2.2.4.5.8.5s.9-.5.9-1.3c0-.9-.4-1.3-.8-1.3s-.6.2-.9.4c-.2.3-.4.5-.8.5a1 1 0 0 1-.8-.4c-.4-.4-.3-1.2-.3-1.2V14a1 1 0 0 1 1.2-1h2.2s.7 0 .7-.5c0-.2 0-.3-.3-.5-.2-.2-.5-.6-.4-1.2 0-.6.3-1.5 2-1.5 1.9.1 2 1.2 2 1.6 0 .7-.3 1-.6 1.2-.2.2-.3.3-.3.5 0 .4.6.6.6.6h2.5c.6 0 1 .6 1 1.1v1.4s0 .7.4.8c.2 0 .3-.1.5-.3.2-.2.5-.6 1.1-.5.6 0 1.6.3 1.5 2 0 1.9-1.2 2-1.6 2-.7 0-1-.4-1.1-.7l-.4-.3c-.5 0-.6.7-.6.7l-.1 3.3c0 .6-.5 1-1.1 1h-1.3c-.2 0-.6 0-.9-.2a1 1 0 0 1-.6-1c0-.4.3-.6.5-.8.2-.3.5-.5.5-1 0-.3-.5-.9-1.4-1-1 0-1.4.6-1.4 1v.2l.2.2c1 .7 1.7 2 1.6 3.2v12.4h1.2l2-.2c.4-.1 1-1 1.5-2.2l-.2-.2c-.4-.4-.3-1.2-.3-1.2v-1.8a1 1 0 0 1 1.2-1h.7c2.2-7.1 5-18.6 7.2-26.6.5-1.7.2-2.2-.8-2.4l-5.8.2L8.4.7v.4" mask="url(#h)"/></g><g fill="#FFF"><path d="M28.2 81.4l.5-.2.2-.1.6-.2.2-.1.6-.2.3-.1.6-.2.3-.2.7-.2.3-.1c.3 0 .5-.2.7-.3h.4l.8-.4h.1l1-.3.2-.1 1-.4a1037.8 1037.8 0 0 1 7.7-2.7l1.3-.4 1.4-.5h.2l1.1-.4.5-.2a654 654 0 0 1 1.4-.5l.9-.3c.2.8.5 1.4.7 1.6.7.8 6.5-.2 13.5-1.7L62.2 75a81.5 81.5 0 0 0-14.5 5.5l-16.4 1-3.6.1.4-.1m135.3 18.3l1.8-.8v.2s.2.7-.2.8h-.5c-.2-.2-.6-.4-1.1-.2"/><path d="M186.2 136.8h.1l2.9-1.2c.5-.2.8-.8.5-1.3l-1-2.7s-.3-.7-.8-1a1 1 0 0 0-.9 0c-.3.2-.4.5-.5.8-.2.3-.3.6-.7.8-.4.1-.9-.1-1.2-1-.3-.8-.1-1.3.3-1.4.4-.2.6 0 1 .1.2.1.5.3.9.1.3 0 .5-.3.6-.6.2-.5-.1-1.2-.1-1.2l-.7-1.7a1 1 0 0 0-1.4-.6l-2 .8s-.7.1-.9-.3v-.5c.2-.3.4-.7.1-1.3-.2-.5-.8-1.3-2.4-.7-1.7.7-1.5 1.8-1.3 2.2.2.6.6.8 1 1 .2 0 .3 0 .4.2.2.4-.4.8-.4.8l-2.3 1a1 1 0 0 0-.5 1.3l.5 1.3s.2.7-.3.8c-.1.1-.2 0-.4 0-.3-.2-.7-.4-1.3-.2-.6.2-1.4.9-.7 2.4.7 1.8 1.8 1.5 2.2 1.3.6-.2.7-.6.8-1 0-.2.1-.3.3-.4.4-.1.7.5.7.5l1.3 3c.2.6.8.9 1.4.7l1-.5h.2c.1 0 .5-.2.7-.5.3-.3.4-.7.2-1.2-.1-.3-.4-.5-.7-.6-.3-.1-.6-.3-.8-.7-.1-.3.2-1 1-1.4.9-.3 1.5 0 1.6.4.2.4 0 .7 0 1-.2.3-.3.6-.2 1 .3.8 1.2.8 1.8.5m-23.7-34.6c.7 1.7 1.9 1.4 2.2 1.3.7-.3.8-.7.9-1 0-.3.1-.4.3-.5.4-.1.7.5.7.5l1.2 3c.3.6.9.9 1.4.7l1.1-.5h.1c.2 0 .5-.2.8-.5.3-.3.4-.7.2-1.2-.1-.3-.4-.5-.7-.6-.3-.1-.6-.3-.8-.7-.1-.3.1-1 1-1.3.8-.4 1.4 0 1.6.3.1.4 0 .7-.1 1-.1.3-.3.6-.1 1 .3.8 1.1.8 1.8.5h.1l2.8-1.2c.6-.2.8-.8.6-1.3l-1-2.7s-.3-.7-.8-1a1 1 0 0 0-.9 0c-.4.2-.5.5-.6.8 0 .3-.2.6-.6.8-.4.1-1-.1-1.2-1-.4-.7-.1-1.3.2-1.4.4-.2.7 0 1 .1.3.1.6.3 1 .1.3 0 .5-.3.6-.6.2-.5-.1-1.2-.1-1.2l-.4-1 6-2.8 3.2 12.6c-1.5.7-1.3 1.7-1.2 2 .3.7.7.8 1 1 .3 0 .4.1.5.3.1.4-.4.8-.5.8l-2.2.9a1 1 0 0 0-.6 1.3l.5 1.3s.2.7-.2.9l-.5-.1c-.2-.2-.6-.4-1.3-.1-.5.2-1.3.8-.7 2.4.7 1.7 1.9 1.4 2.2 1.3.7-.3.8-.7.9-1 0-.2.1-.4.3-.4.4-.2.7.5.7.5l1.2 3c.3.6.9.8 1.4.6l1.1-.4h.1l.7-.5c3.3 13.7 6.5 26.3 6.5 27.3.2 2-.4 1.8-3.6 3.8a107.2 107.2 0 0 1-4.4 2.4 1597.4 1597.4 0 0 1-13.4 7l.1-.8c.1-1.3-9.7-37.6-14.6-55.8l5-2.2c-.5.3-1 1-.5 2.3"/></g><g transform="matrix(-1 0 0 1 77 168)"><mask id="k" fill="#fff"><use xlink:href="#i"/></mask><path fill="url(#j)" d="M22.6.8c-.4.5-1 .5-1.3.5-.6 0-.9-.3-1-.6h-1v.4L19 4.4c0 .6-.5 1-1.1 1h-1.3c-.2 0-.6 0-.9-.2a1 1 0 0 1-.6-1c0-.4.2-.6.5-.9.2-.2.4-.4.5-.9 0-.4-.5-1-1.4-1-1 0-1.4.5-1.4 1 0 .4.2.6.4.9.2.2.4.5.4.9 0 .8-.8 1.1-1.5 1H9.5a1 1 0 0 1-1-1.2V1.2l.1-.4H5L2 12.2a4 4 0 0 1-1 1.6c9.4-.3 16.6-.5 17.7-.7 3.3-.6 3.2-1.5 3.7-3.6L24.6.7h-2z" mask="url(#k)"/></g><path fill="#FFF" d="M171.5 71.4c.3.6.7.8 1 .9.2 0 .4.1.4.3.2.4-.4.8-.4.8l-2.2.9a1 1 0 0 0-.6 1.4l.5 1.2s.2.8-.2 1c-.2 0-.3 0-.5-.2-.3-.1-.7-.3-1.3 0-.5.1-1.3.7-.7 2.3.7 1.8 1.9 1.5 2.2 1.3.6-.2.8-.7.9-1 0-.2 0-.3.2-.4.4-.2.8.5.8.5l1.2 3c.2.6.8.9 1.4.6l1.1-.4h.1l.7-.5c.4-.4.4-.8.3-1.2-.2-.4-.5-.5-.8-.6-.3-.2-.6-.3-.7-.7-.2-.4.1-1 1-1.4.8-.3 1.4 0 1.5.4.2.4 0 .7 0 1-.2.3-.3.6-.2 1 .4.8 1.2.8 1.9.5l2.7-1.1c.1-1 0-2.2-.2-3.8v-.3c-.1 0-.3-.7-.9-1a1 1 0 0 0-.8 0c-.4.2-.5.5-.6.8-.1.3-.2.6-.6.8-.4.1-1-.2-1.3-1-.3-.8 0-1.3.3-1.4.4-.2.7 0 1 0 .3.2.6.4 1 .2.2-.1.4-.3.5-.6.3-.6 0-1.2 0-1.3l-.7-1.6a1 1 0 0 0-1.4-.6l-2.1.8s-.7.1-.9-.3l.1-.5c.2-.3.3-.7 0-1.3-.1-.5-.7-1.3-2.3-.7-1.8.7-1.6 1.8-1.4 2.2zm.5 14.5c.2.6.8.8 1.4.6l1.1-.4h.1l.7-.5c.4-.4.4-.8.3-1.2l-3.6 1.4v.1zm6.3-1.3l.8-.3-.3-1.3-2.4 1c.4.8 1.2.8 1.9.6zm2-.7l-1.2.5-9.5 4.2-.9.3a3 3 0 0 0-1 .6l-8 3.5-.2-1.5c.4-.2.6-.5.6-.8l-.6.3-.3-1.6 1.1-.4c.6-.2.8-.9.6-1.4l-1-2.7s-.3-.6-.8-.9a1 1 0 0 0-.9 0l-.2-.6.6-.6c.2-.6-.1-1.3-.1-1.3l-.7-1.7a1 1 0 0 0-.7-.6 391.3 391.3 0 0 0-2.4-10.6c0-.3.1-.4.3-.5.4-.1.7.5.7.5l1.3 3c.2.6.8.9 1.3.7l1.2-.5c.2 0 .5-.2.8-.5.3-.3.4-.7.2-1.2-.1-.3-.4-.4-.7-.6-.3-.1-.6-.3-.8-.7-.1-.3.2-1 1-1.3.9-.4 1.5 0 1.6.3.2.4 0 .7-.1 1-.1.3-.3.6-.1 1 .3.8 1.2.8 1.8.5h.1l2.8-1.1c.6-.3.8-.9.6-1.4l-1-2.7s-.3-.7-.8-1a1 1 0 0 0-.9 0c-.3.2-.5.5-.6.8 0 .3-.2.6-.6.8-.4.1-1-.1-1.2-1-.4-.7-.1-1.3.2-1.4.4-.2.7 0 1 .1.3.2.6.3 1 .2l.6-.6c.2-.6-.1-1.3-.1-1.3l-.7-1.7a1 1 0 0 0-1.4-.6l-2 .8s-.7.2-.9-.2v-.6c.2-.3.4-.7.1-1.3-.2-.5-.8-1.3-2.4-.6-1.7.7-1.5 1.7-1.3 2.1.2.7.6.8 1 1 .2 0 .3 0 .4.2.2.5-.4.8-.4.8l-2.3 1a1 1 0 0 0-.6 1.3l.6 1.3s.1.7-.3.9h-.2c-1-3.7-1.8-6.7-2.5-8.2l19.7-8a.5.5 0 1 0-.3-.8L150.9 57c0-.2-.2-.3-.2-.3-1.3-.4-18.5 1.6-29.5 3a689.8 689.8 0 0 0 18-4.8c4-1 6.6-2.6 8-4.4l16.4-2.2a59.8 59.8 0 0 1 9-1l.3.2c.5 0 1 .3 1.5 1 .2.3 1.8 4.6 7 24.9 2.5 9.2 0 9.9-1.1 10.5zm-48 90.8l1-.4h.2l.7-.5c.3-.4.4-.8.2-1.2-.1-.4-.4-.5-.7-.6-.3-.2-.6-.3-.8-.7-.1-.4.2-1 1-1.4.9-.3 1.5 0 1.6.3.2.4 0 .8-.1 1-.1.4-.3.7-.1 1 .3.8 1.2.8 1.8.6h.1l2.8-1.2c.6-.2.8-.8.6-1.4l-1-2.6s-.3-.7-.8-1a1 1 0 0 0-.9 0c-.3.2-.5.5-.6.8 0 .3-.2.6-.6.7-.4.2-1 0-1.2-.9-.4-.8-.1-1.3.2-1.5.5-.1.7 0 1 .2.3 0 .6.2 1 0 .3 0 .5-.2.6-.5.2-.6-.1-1.3-.1-1.3l-.7-1.7a1 1 0 0 0-.4-.5 1 1 0 0 0-1 0l-2 .8s-.7.1-.9-.3v-.5c.2-.3.4-.7.1-1.4-.2-.5-.8-1.2-2.4-.6-1.7.7-1.5 1.7-1.3 2.2.2.6.6.7 1 .9.2 0 .3.1.4.3.2.4-.4.8-.4.8l-2.3.9a1 1 0 0 0-.6 1.3l.5 1.3s.2.7-.2.9l-.4-.1c-.3-.2-.7-.4-1.3-.1-.6.2-1.4.8-.8 2.4.7 1.7 2 1.4 2.3 1.3.6-.3.7-.7.8-1 0-.2.1-.4.3-.4.4-.2.7.5.7.5l1.3 3c.2.6.8.8 1.3.6m-5.4 7.6l-.4.1-10.8-41.7.5-.1c.6-.3.7-.7.8-1 0-.2.1-.4.3-.4.4-.2.7.4.7.4l1.3 3.1c.2.6.8.8 1.3.6l1.2-.5c.2 0 .6-.2.8-.5.3-.3.4-.7.2-1.1-.1-.4-.4-.5-.7-.7-.3-.1-.6-.2-.8-.7-.1-.3.2-1 1-1.3.9-.4 1.5 0 1.6.3.2.4 0 .7-.1 1-.1.4-.2.7-.1 1 .3.8 1.2.8 1.8.5h.1l2.8-1.1c.6-.2.8-.9.6-1.4l-1-2.7s-.3-.6-.8-.9a1 1 0 0 0-.9 0c-.3.1-.4.4-.6.7 0 .4-.2.7-.6.8-.4.2-.9-.1-1.2-1-.4-.7-.1-1.2.3-1.4.4-.2.6 0 1 .1.2.2.5.3.9.2l.6-.6c.2-.6-.1-1.3-.1-1.3l-.7-1.7a1 1 0 0 0-.4-.5 1 1 0 0 0-1 0l-2 .8s-.7 0-.9-.3v-.5c.2-.4.4-.7.1-1.4-.2-.5-.8-1.3-2.4-.6-1.7.7-1.5 1.7-1.3 2.1.2.7.6.8 1 1 .2 0 .3.1.4.3.2.4-.4.7-.4.7l-2.3 1a1 1 0 0 0-.6 1.3l.6 1.3s.1.7-.3.9l-.4-.1c-.3-.2-.7-.4-1.2-.2l-3.5-13.5 24.6-11.1 3.5 12.9-1 .4a1 1 0 0 0-.6 1.4l.5 1.2s.2.8-.2 1c-.2 0-.3 0-.5-.2-.3-.1-.6-.3-1.3-.1-.5.2-1.3.8-.7 2.4.7 1.8 1.9 1.5 2.2 1.3.6-.2.8-.7.9-1 0-.2 0-.3.2-.4.4-.2.8.5.8.5l1.2 3c.2.5.7.8 1.2.7l3.1 12-.5-.5a1 1 0 0 0-.9 0c-.3.1-.5.4-.6.7 0 .3-.2.6-.6.8-.4.2-1-.1-1.2-1-.4-.7-.1-1.3.2-1.4.5-.2.7 0 1 .1.3.2.6.3 1 .2l.6-.6c.2-.6-.1-1.3-.1-1.3l-.7-1.7a1 1 0 0 0-1.4-.6l-2 .8s-.7.2-.9-.2v-.6c.2-.3.4-.7.1-1.3-.2-.5-.8-1.3-2.4-.6-1.7.7-1.5 1.7-1.3 2.1.2.7.6.8 1 1 .2 0 .3 0 .4.2.2.5-.4.8-.4.8l-2.3 1a1 1 0 0 0-.6 1.3l.5 1.3s.2.7-.2.9l-.4-.1c-.3-.2-.7-.4-1.3-.1-.6.2-1.4.8-.8 2.4.7 1.7 2 1.4 2.3 1.3.6-.3.7-.7.8-1 0-.3.1-.4.3-.5.4-.1.7.5.7.5l1.3 3c.2.6.8 1 1.3.7l1.2-.5c.2 0 .5-.2.8-.5.3-.3.4-.7.2-1.1-.1-.4-.4-.5-.7-.7-.3-.1-.6-.3-.8-.7-.1-.3.2-1 1-1.3.9-.4 1.5 0 1.6.3.2.4 0 .7-.1 1-.1.3-.3.6-.1 1 .3.8 1.2.8 1.8.5h.1l2.8-1.1.4-.3c2.3 8.8 4 15.5 4 16.2.1 1.1 0 2-.2 2.8l-10.5 5.4-1.1.5-11.6 5.9"/><g transform="matrix(-1 0 0 1 126 123)"><mask id="n" fill="#fff"><use xlink:href="#l"/></mask><path fill="url(#m)" d="M.6 59.5v.1h.1a3071 3071 0 0 0 21-.4v-1.8a1 1 0 0 1 1.1-1h2.3s.7 0 .7-.5c0-.2-.1-.3-.3-.5-.2-.3-.5-.6-.5-1.3 0-.5.3-1.5 2.1-1.4.4 0 .7 0 1 .2l4.1-17.2v-2.9a1 1 0 0 1-1 .5H30c-.2 0-.6 0-1-.2a1 1 0 0 1-.5-1c0-.4.2-.7.4-.9.3-.2.5-.5.5-1 0-.3-.4-.8-1.4-.9-.9 0-1.3.5-1.4.9 0 .4.3.7.5 1 .2.2.4.4.4.8 0 .9-.8 1.2-1.6 1.2l-3.1-.2a1 1 0 0 1-1-1v-3s0-.7.5-1.1c.2-.2.4-.3.8-.3s.6.2.8.5c.2.2.4.5.9.5.4 0 .8-.4.8-1.3S25.3 26 25 26c-.5 0-.7.2-1 .4-.2.3-.4.5-.8.5a1 1 0 0 1-.8-.4c-.4-.4-.3-1.2-.3-1.2v-1.9a1 1 0 0 1 1.2-1h2.2s.7 0 .7-.5c0-.1 0-.3-.2-.4-.3-.3-.5-.6-.5-1.3 0-.5.3-1.5 2-1.4 2 0 2.1 1.1 2 1.6 0 .6-.3 1-.6 1.2-.2.1-.3.2-.3.4 0 .5.7.6.7.6l2.5.1.6.2V1L15.8.6.6 59.5zm14.5-21l-.3-.4c-.2-.2-.5-.6-.5-1.2s.3-1.5 2-1.5c2 0 2.1 1.2 2.1 1.6 0 .7-.3 1-.6 1.2-.2.2-.3.3-.3.5 0 .4.6.6.7.6h2.4c.6 0 1 .6 1 1.2v1.3s0 .8.5.8c.2 0 .2 0 .4-.3.2-.2.5-.5 1.2-.5.6 0 1.6.3 1.5 2 0 2-1.3 2-1.6 2-.7 0-1-.3-1.2-.6-.1-.2-.2-.3-.4-.3-.4 0-.6.7-.6.7V49c0 .6-.6 1.1-1.2 1h-1.3c-.2 0-.5 0-.9-.2a1 1 0 0 1-.6-1c0-.4.3-.6.5-.8.2-.3.5-.5.5-1 0-.3-.5-.9-1.4-1-1 0-1.4.6-1.4 1s.2.6.4.9c.3.2.5.5.5.9 0 .8-.9 1.1-1.6 1.1h-.1l-3-.1a1 1 0 0 1-1.1-1.1v-3s0-.7.5-1c.2-.3.5-.4.8-.4.4 0 .6.3.8.5.3.3.5.5.9.6.4 0 .8-.5.9-1.4 0-.8-.4-1.3-.8-1.3s-.7.2-.9.5c-.2.2-.5.5-.8.4a1 1 0 0 1-.8-.3c-.5-.5-.4-1.2-.4-1.3v-1.8l.3-.6c.2-.3.6-.5.9-.4h2.3s.7 0 .7-.5z" mask="url(#n)"/></g><g transform="matrix(-1 0 0 1 196 23)"><mask id="q" fill="#fff"><use xlink:href="#o"/></mask><path fill="url(#p)" d="M55.9 2.3l10.1 11c-7 2-14.8 4.5-16.6 6a5.7 5.7 0 0 0-1.8 6l-14.9-2c-4.2-.7-6.8-1-8.3-1-.5 0-1 0-1.6.2-1 .2-2 .7-2.7 1.7-.9 1-3.4 9.7-7.5 25.7-2.3 9-.4 11.4 2 12.6L7.7 90.6C2.6 111.3.2 121.2.1 122.3c-.3 2.8 1 3.7 3 4.8a2891.8 2891.8 0 0 0 65.3 34l1.7.5h.6c.6 0 63.5-.8 67.2-1.5 4-.7 4.7-2.3 5.2-4.6l.2-.5 2.4-9.3h8.5c2.1 0 3.8-1.6 3.9-3.7v-20.8l-.1-3.5V99.1l.5-1.8v-.5c2.3 0 2.8-.2 3.2-.3 2.2-.6 3.4-3.8 8.4-23 1-4 2-8 3-11.4.3-1 .6-2.5-.2-3.6-.7-1.1-2-1.3-2.8-1.4a881 881 0 0 0-24.7-8.7c.7-3 1.4-7.2 1.5-10.6l.4-1.7s.4-14.5-15.5-10.8a78.9 78.9 0 0 0-20.5 8.2c-2-2.3-8.4-7-10.5-7.5-2.5-.6-6.3.7-6.6.8l-3.3-6.7c-2.8-5.2-3.6-11.3-12-10.3l-4.4-5c-1-1-12.3-4.2-17-4.2-1.8 0-2.7.5-1.6 1.7zM59.4 27c-.7-2-.7-3.8 1.8-6a44 44 0 0 1 2.4-2l16.5 7.3a104 104 0 0 0-16.4 1.3l-4.3-.6zM28.3 66.5l-2-.9-9.4-4.2-1.2-.5c-1-.6-3.6-1.3-1.2-10.5a206 206 0 0 1 7.1-25c.5-.6 1-.8 1.5-1h.4l.9-.1c1.2 0 3.7.3 8 1l16.4 2.2c1.4 1.8 4 3.3 8 4.4l2 .5 16 4.2c-11-1.3-28.2-3.3-29.5-3l-.2.4-19.9-8a.5.5 0 0 0-.6.3c-.1.3 0 .6.3.7l19.7 7.9a71.7 71.7 0 0 0-3.2 10.9A390.3 390.3 0 0 0 38 60.4l-.1.6a219.7 219.7 0 0 0-1.4 7v.5l-.2 1.5-8-3.5zm66.5-12.1c.1-.3 0-.6-.3-.7l-23.8-9.5.2-.2c1.2-.9 20.2 0 30 .6 8.8 3.8 23 10.1 23.2 11.4-13.1-.8-24.4-1.4-25-1.3-1.8.1-2.5.8-3.4 4.2l-8.2 31.3v.1l-.4 1.3-.2.8-16.3-7.2-2.3-1-6-2.7a2.2 2.2 0 0 1-1.3-2.3l1.8-7 2.5-10.1c1.9-7.2 3.9-14.3 5-17l23.9 9.6h.1c.2 0 .4-.1.5-.3zm69.9 4l-16.4-1c-.9-1-7.3-3.2-14.5-5.5l-3.2-1.7c7 1.5 12.8 2.5 13.5 1.7.2-.2.5-.8.7-1.6a299.1 299.1 0 0 0 1.2.4l1.1.4.5.2 1 .3.3.1 1.3.5a6882.6 6882.6 0 0 1 1.6.5l2.5.9h.1a1400.9 1400.9 0 0 1 5 1.7l.9.4h.2l1 .4h.1l.8.3.4.1.7.3.3.1.7.2.3.2.6.2h.3l.6.3h.2l.6.3h.2l.5.3h.1l.4.1-3.6-.1zm-73 34.9c-1.8-.1-3.3-.2-3.5-.6l-.1-.5 8.6-33c.8-3.4 1.4-3.4 2.5-3.5l17 .8v.4s-.1.8.3 1.3c.1.2.4.3.7.3.4 0 .7-.2.9-.4.2-.3.4-.5.9-.5.4 0 .8.4.7 1.3 0 .9-.4 1.3-.8 1.3-.5 0-.7-.2-.9-.5-.2-.2-.4-.5-.8-.5a1 1 0 0 0-.8.3c-.4.4-.4 1.1-.4 1.1l-.1 2.9c0 .6.4 1 1 1.1l3 .1h.1c.8 0 1.6-.2 1.6-1.1 0-.4-.2-.6-.4-.9-.2-.2-.5-.5-.5-1 0-.3.5-.8 1.4-.8.4 0 .6.1.8.3l-1.2 5-6.5 4.8a1 1 0 0 0-.4-.1l-2.5-.1s-.7-.2-.6-.6c0-.2 0-.3.3-.5.2-.2.6-.5.6-1.2 0-.4-.1-1.5-2-1.5-1.7 0-2 .8-2 1.4 0 .7.2 1 .4 1.2.2.2.3.3.3.5 0 .4-.7.5-.7.5h-2.3a1 1 0 0 0-1.1 1v1.8s-.1.8.3 1.3c.2.2.5.3.8.3.4 0 .6-.2.8-.4.3-.3.5-.5 1-.5.3 0 .7.4.7 1.3v.3l-1.3.9-.4-.4c-.2-.3-.4-.5-.8-.5a1 1 0 0 0-.9.3c-.4.4-.4 1.1-.4 1.1v1.3l-1 .8c-1 .7-1.7 2-1.6 3.2v5.2a1 1 0 0 0-.4 0l-2.4-.2-.4-.1V87l.2-.4c.3-.2.6-.5.6-1.2 0-.4-.1-1.5-2-1.6-1.7 0-2 1-2 1.5s.1.8.3 1l.2.4c0 .5-.7.6-.7.6h-2.3a1 1 0 0 0-1.1 1V90s-.1.8.3 1.2c0 .2.2.3.4.3l.6.3c.4 0 .7-.2.9-.5.2-.2.4-.4.9-.4h.2c.2.2.3.6.3 1.1 0 .7-.3 1.1-.6 1.3h-.6l-.3-.3-.5-.5a.8.8 0 0 0-.6-.2 1 1 0 0 0-.8.3l-.3.6h-.6zM153.4 59v-.4l11.2.7c.2 0 3.6 0 5.8-.2 1 .2 1.3.7.8 2.4-2.3 8-5 19.5-7.2 26.6h-.7a1 1 0 0 0-1.1 1L162 91s0 .8.3 1.2l.2.2c-.6 1.3-1 2-1.5 2.2l-2 .2h-1V82.4c0-1.3-.5-2.5-1.6-3.2l-.2-.2v-.3c0-.3.5-.9 1.4-.8.9 0 1.4.6 1.4 1s-.3.6-.5.9c-.2.2-.5.4-.5.8 0 .5.2.8.6 1 .3.2.7.2.9.2h1.3c.6 0 1-.4 1-1l.2-3.3s.1-.7.6-.7l.4.3c.2.3.4.7 1.1.7.4 0 1.6-.1 1.6-2 .1-1.7-.9-2-1.5-2s-1 .3-1.1.5c-.2.2-.3.3-.5.3-.4 0-.5-.8-.5-.8v-1.4c.1-.5-.3-1-1-1l-2.4-.1s-.6-.2-.6-.6c0-.2 0-.3.3-.5s.6-.5.6-1.2c0-.4-.1-1.5-2-1.6-1.7 0-2 1-2 1.5 0 .6.2 1 .4 1.2.2.2.3.3.3.5 0 .4-.7.5-.7.5h-2.2a1 1 0 0 0-1.1 1l-.1 1.8s0 .8.3 1.2c.2.3.5.4.8.4.4 0 .6-.2.8-.5.3-.2.5-.4 1-.4.3 0 .7.4.7 1.3 0 .8-.5 1.3-.9 1.3s-.6-.3-.8-.5c-.2-.3-.4-.5-.8-.5h-.4l-6.7-4.9a567.1 567.1 0 0 0 1.7-6.2h1.3c.6 0 1-.4 1-1l.2-2.1c1.4.2 2.4.3 2.5.1.1-.2-.8-.8-2.4-1.7.1-.2.3-.3.5-.3l.4.3c.1.3.4.6 1 .7h.1c.5 0 1.6-.2 1.6-2zm-50.2 83l.2-59.7c0-1 .4-1.9 1.1-2.4l24-17.4a2.8 2.8 0 0 1 3.3 0l3.8 2.8c0 2.3-2 3.8-3.3 4.5A3.9 3.9 0 1 0 134 73c0-1-.3-1.8-1-2.5 1.5-.8 3.2-2.3 3.6-4.5l19.1 14c.8.5 1.2 1.4 1.2 2.4l.2 59.6c0 1.5-1.3 2.8-2.9 2.8H106a2.8 2.8 0 0 1-2.8-2.8zm-81.8-7.4l-3.6-2-7.7-4-.8-.4-3.6-2c-3.2-2-3.8-1.9-3.6-3.8a1142.5 1142.5 0 0 1 7.4-30.7l2.2-8.8v-.3l.3-1.3 3.1-12.6 1.3-6.5 20.3 9c.6 1.2 1.6 1.6 1.6 1.6l1.2.6v.1l19 8.4a.5.5 0 1 1-.5 1l-18.8-8.4L38 79c-5 18.2-14.7 54.5-14.6 55.8l.1.9-2-1.1zm40.3-51.3l.3-1 24.6 11-1.8 7-3.5 13.4-1 3.9-10.7 41.7c-.2 0-.3 0-.4-.2-.7-.2-5.2-2.5-11.6-5.8l-1.1-.5-10.5-5.4c-.2-.7-.3-1.7-.3-2.8a354.7 354.7 0 0 1 5.2-20.4 4729.6 4729.6 0 0 1 9.3-35.1l1.5-5.8zm25.9 10.3h.1-.1zm-1.8 7l16.5.1V123a1 1 0 0 0-.6-.2h-2.5s-.7-.2-.7-.7c0-.2.1-.3.3-.4.3-.3.7-.6.7-1.2 0-.5-.2-1.6-2-1.6s-2.1.9-2.1 1.4c0 .7.2 1 .5 1.3l.2.4c0 .5-.7.6-.7.6h-2.2a1 1 0 0 0-1.1 1l-.1 1.8s0 .8.3 1.2c.2.3.5.4.8.4.4 0 .6-.2.9-.5.2-.2.4-.4.9-.4.4 0 .8.4.7 1.3 0 .9-.4 1.3-.8 1.3-.5 0-.7-.3-.9-.5-.2-.3-.4-.5-.8-.5a1 1 0 0 0-.8.3c-.5.4-.4 1.1-.4 1.1l-.2 3a1 1 0 0 0 1 1l3.1.1h.1c.8 0 1.6-.2 1.6-1 0-.5-.2-.7-.4-1-.2-.2-.5-.5-.5-1 0-.3.5-.8 1.4-.8 1 0 1.5.6 1.4 1 0 .4-.2.7-.5 1-.2.1-.4.4-.4.8s.2.8.6 1a2.2 2.2 0 0 0 1 .2h1.2a1 1 0 0 0 1-.5v2.9L98 152.9l-1-.2c-1.8 0-2 .9-2 1.4 0 .7.2 1 .4 1.3.2.2.3.3.3.5 0 .4-.7.5-.7.5h-2.3a1 1 0 0 0-1.1 1v1.9l-21 .3h-.1l15.2-58.9zm55.8 45h2l-2.3 8.8c-.5 2.1-.4 3-3.7 3.6-1 .2-8.3.4-17.6.7.4-.5.8-1 1-1.6l2.9-11.4h3.7v.4l-.1 2.8a1 1 0 0 0 1 1.2h3.2c.7.1 1.5-.2 1.5-1 0-.4-.2-.7-.4-1-.2-.2-.5-.4-.4-.9 0-.4.4-.9 1.4-.9.9 0 1.4.6 1.4 1 0 .5-.3.7-.5 1-.3.2-.5.4-.5.8 0 .5.2.8.6 1a2.2 2.2 0 0 0 1 .2h1.2c.6 0 1-.4 1.1-1l.1-3.3.1-.3h1c.1.2.4.5 1 .5.3 0 .9 0 1.3-.6z" mask="url(#q)"/></g><g transform="matrix(-1 0 0 1 116 158)"><mask id="t" fill="#fff"><use xlink:href="#r"/></mask><path fill="url(#s)" d="M4.3 1.9c0 .6.3 1 .5 1.2.2.2.3.3.3.5 0 .4-.7.5-.7.5H2a1 1 0 0 0-.9.4A1 1 0 0 0 1 5v1.8s-.2.8.3 1.3c.1.2.4.3.8.3.3 0 .6-.2.8-.4.2-.3.5-.5.9-.5s.8.5.8 1.3c0 1-.5 1.4-.9 1.4s-.6-.3-.9-.6c-.2-.2-.4-.5-.8-.5a1 1 0 0 0-.8.3c-.4.4-.4 1.2-.4 1.2l-.1 2.9a1 1 0 0 0 1 1l3 .2H5c.7 0 1.5-.3 1.6-1.1 0-.4-.2-.7-.5-1-.2-.2-.4-.4-.4-.9 0-.3.5-.9 1.4-.8 1 0 1.4.6 1.4 1s-.3.6-.5.9c-.2.2-.5.4-.5.8 0 .5.2.8.6 1 .4.2.7.2.9.2h1.3c.6.1 1.1-.4 1.1-1l.1-3.3s.2-.7.6-.7c.2 0 .3.1.4.3.2.3.5.6 1.2.7.3 0 1.6-.1 1.6-2 0-1.8-1-2-1.5-2-.7-.1-1 .2-1.2.4-.2.2-.2.3-.4.3-.5 0-.5-.8-.5-.8V5.5a1 1 0 0 0-1-1.1l-2.4-.1s-.7-.2-.7-.6c0-.2 0-.3.3-.5s.6-.5.6-1.2c0-.4-.1-1.5-2-1.6h-.2c-1.7 0-2 1-2 1.6" mask="url(#t)"/></g><g transform="matrix(-1 0 0 1 180 83)"><mask id="w" fill="#fff"><use xlink:href="#u"/></mask><path fill="url(#v)" d="M1 1.3l.6.2h.1c.7.3 1.5.3 1.9-.5L1.2 0 1 1.3" mask="url(#w)"/></g><g transform="matrix(-1 0 0 1 176 84)"><mask id="z" fill="#fff"><use xlink:href="#x"/></mask><path fill="url(#y)" d="M.4.4c-.1.4 0 .8.3 1.2a2.2 2.2 0 0 0 .8.5l1.1.4A1 1 0 0 0 4 2L.5.3" mask="url(#z)"/></g><g transform="matrix(-1 0 0 1 161 90)"><mask id="C" fill="#fff"><use xlink:href="#A"/></mask><path fill="url(#B)" d="M1.5 1.5V1L1 .7c0 .3.2.6.6.8" mask="url(#C)"/></g><g transform="matrix(-1 0 0 1 190 123)"><mask id="F" fill="#fff"><use xlink:href="#D"/></mask><path fill="url(#E)" d="M7.6 1.6c-.3.6-.1 1 0 1.3.1.2.2.4 0 .5 0 .4-.5.3-.7.3L4.8 3a1 1 0 0 0-1.4.6l-.7 1.7s-.3.7-.1 1.2c.1.3.3.5.6.6.4.2.7 0 1-.1.3-.2.5-.3 1-.1.3.1.5.6.2 1.5-.3.8-.9 1-1.2.9-.4-.2-.5-.5-.7-.8 0-.3-.2-.6-.5-.7a1 1 0 0 0-1 0c-.4.2-.7.9-.7 1l-1 2.6a1 1 0 0 0 .5 1.3l2.9 1.2c.7.3 1.6.3 1.9-.5.1-.4 0-.7-.1-1-.1-.3-.3-.6-.1-1 .1-.4.7-.7 1.6-.4.8.4 1.1 1 1 1.4-.2.4-.5.6-.8.7-.3.1-.6.3-.7.6-.2.5-.1.9.2 1.2.2.3.6.4.7.5h.1l1.1.5a1 1 0 0 0 1.4-.6l1.3-3c0-.1.3-.7.7-.6.2 0 .2.2.3.5 0 .3.2.7.8 1 .4 0 1.5.4 2.2-1.4.7-1.5-.1-2.2-.7-2.4-.6-.2-1 0-1.3.1-.2.1-.3.2-.4.1-.5-.1-.3-.8-.3-.8l.5-1.3a1 1 0 0 0-.5-1.4l-2.3-.9s-.6-.4-.4-.8l.4-.3c.4-.1.8-.3 1-.9.2-.4.4-1.5-1.3-2.2A3 3 0 0 0 8.9.7c-.8 0-1.2.5-1.3.9" mask="url(#F)"/></g><g transform="matrix(-1 0 0 1 147 139)"><mask id="I" fill="#fff"><use xlink:href="#G"/></mask><path fill="url(#H)" d="M7.9 1.7c-.3.6-.1 1 0 1.3.1.3.2.4.1.6-.1.3-.6.3-.8.3L5 3a1 1 0 0 0-1.4.6L3 5.3s-.3.7 0 1.3c0 .2.2.4.5.6.4.1.7 0 1-.2.3-.1.5-.3 1-.1.3.1.6.7.2 1.5-.3.8-.8 1-1.2.9-.4-.2-.5-.5-.6-.8-.1-.3-.3-.6-.6-.7a1 1 0 0 0-.9 0c-.2 0-.4.3-.5.5L.8 12.5l.4.3 2.8 1v.1c.7.3 1.6.3 2-.5 0-.4 0-.7-.2-1-.1-.3-.3-.6 0-1 0-.3.7-.7 1.5-.3.8.3 1.1 1 1 1.3-.2.4-.5.6-.8.7-.3.2-.6.3-.7.7-.2.4-.1.8.2 1.1a2.2 2.2 0 0 0 .8.5L9 16a1 1 0 0 0 1.3-.6l1.3-3s.3-.7.7-.6c.2.1.2.2.3.5 0 .3.2.7.8 1 .4.1 1.6.4 2.3-1.3.6-1.6-.2-2.2-.8-2.4-.6-.3-1-.1-1.3 0l-.4.2c-.4-.2-.2-1-.2-1l.5-1.2a1 1 0 0 0-.6-1.4l-2.3-.9s-.6-.3-.4-.8l.4-.3c.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1A3 3 0 0 0 9.2.8c-.8 0-1.2.5-1.3 1" mask="url(#I)"/></g><g transform="matrix(-1 0 0 1 188 104)"><mask id="L" fill="#fff"><use xlink:href="#J"/></mask><path fill="url(#K)" d="M3.7 1.7V2l-2.2 8.8c.3.3.4.6.3.9-.2.3-.4.5-.7.6l-.5 2a2.3 2.3 0 0 0 .8.4l1 .4a1 1 0 0 0 1.5-.6l1.2-3s.3-.7.7-.5c.2 0 .2.2.3.4.1.3.2.7.9 1 .3.1 1.5.4 2.2-1.3.6-1.6-.2-2.2-.7-2.4-.7-.3-1 0-1.3 0-.2.2-.4.3-.5.2-.4-.2-.2-.9-.2-.9L7 6.7a1 1 0 0 0-.6-1.3l-2.2-1s-.6-.3-.5-.7c0-.2.2-.2.5-.3.3-.2.7-.3 1-1 .1-.3.3-1.3-1.2-2l-.3 1.3" mask="url(#L)"/></g><g transform="matrix(-1 0 0 1 142 125)"><mask id="O" fill="#fff"><use xlink:href="#M"/></mask><path fill="url(#N)" d="M0 10.3c.5 0 1-.2 1.2-.7l1.2-3s.4-.7.8-.5l.2.4c.1.3.3.8.9 1 .3.2 1.5.5 2.2-1.3.6-1.6-.2-2.2-.7-2.4-.7-.2-1 0-1.3.1-.2.1-.3.2-.5.1-.4-.1-.2-.9-.2-.9L4.3 2A1 1 0 0 0 3.7.5l-1-.4L0 10.3" mask="url(#O)"/></g><g transform="matrix(-1 0 0 1 130 128)"><mask id="R" fill="#fff"><use xlink:href="#P"/></mask><path fill="url(#Q)" d="M8.4 1.1c-.3.7-.1 1 0 1.4.1.2.2.3 0 .5 0 .3-.5.3-.7.3l-2.1-.9a1 1 0 0 0-1.4.6l-.7 1.7s-.3.7-.1 1.3l.6.6c.4.1.7 0 1-.2.3-.1.5-.3 1 0 .3 0 .6.6.2 1.4-.3.8-.8 1-1.2 1-.4-.2-.5-.5-.6-.9-.2-.3-.3-.6-.6-.7a1 1 0 0 0-.9 0c-.5.3-.8 1-.8 1l-1 2.6a1 1 0 0 0 .6 1.4l2.8 1.1c.7.3 1.6.3 1.9-.5.1-.3 0-.6-.1-1-.1-.3-.3-.6 0-1 0-.3.6-.7 1.5-.3.8.3 1.1 1 1 1.3-.2.5-.5.6-.8.7-.3.2-.6.3-.7.7-.2.4-.1.8.2 1.1a2.2 2.2 0 0 0 .8.5l1.2.5a1 1 0 0 0 1.3-.6l1.3-3s.3-.7.7-.5c.2 0 .2.2.3.4 0 .3.2.7.8 1h.5l1-3.8c-.6-.2-1 0-1.3.2-.2 0-.3.1-.4 0-.4 0-.3-.8-.3-.8l.6-1.3a1 1 0 0 0-.6-1.4L11 4.6s-.6-.3-.4-.7c0-.2.2-.3.4-.4.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1a3 3 0 0 0-1-.3c-.8 0-1.2.6-1.3 1" mask="url(#R)"/></g><g transform="matrix(-1 0 0 1 141 159)"><mask id="U" fill="#fff"><use xlink:href="#S"/></mask><path fill="url(#T)" d="M7.7 1.5c-.3.7-.1 1 0 1.4.1.2.2.3.1.5-.1.3-.6.3-.8.3l-2.1-.9a1 1 0 0 0-1.4.6l-.7 1.7s-.3.7 0 1.3c0 .3.2.5.5.6.4.1.7 0 1-.2.3-.1.5-.2 1 0 .3 0 .6.6.2 1.4-.3.8-.8 1-1.2 1-.4-.2-.5-.5-.6-.8-.1-.3-.3-.6-.6-.8a1 1 0 0 0-.9 0c-.5.3-.8 1-.8 1l-1 2.6a1 1 0 0 0 .6 1.4l2.8 1.1c.7.3 1.6.3 2-.5 0-.3 0-.6-.2-1-.1-.2-.3-.6 0-1 0-.3.6-.6 1.5-.3.8.3 1.1 1 1 1.4-.2.4-.5.5-.8.7-.3 0-.6.2-.7.6-.2.4-.1.8.2 1.2a2.2 2.2 0 0 0 .8.5l1.2.4a1 1 0 0 0 1.3-.6l1.3-3s.3-.7.7-.5c.2 0 .2.2.3.4 0 .3.2.7.8 1 .4.1 1.6.4 2.3-1.3.6-1.6-.2-2.2-.8-2.4-.6-.3-1 0-1.3 0-.2.2-.3.3-.4.2-.4-.2-.2-.9-.2-.9l.5-1.3a1 1 0 0 0-.6-1.3l-2.3-1s-.6-.3-.4-.7c0-.2.2-.2.4-.3.4-.2.8-.3 1-1 .2-.4.4-1.4-1.3-2.1A3 3 0 0 0 9 .7c-.8 0-1.2.5-1.3.8" mask="url(#U)"/></g><g transform="matrix(-1 0 0 1 136 105)"><mask id="X" fill="#fff"><use xlink:href="#V"/></mask><path fill="url(#W)" d="M1.7 1.4L.2 7.2l24.6 11.1 1.8-6.9L2 .4c0 .4-.2.7-.3 1" mask="url(#X)"/></g><g transform="matrix(-1 0 0 1 167 57)"><mask id="aa" fill="#fff"><use xlink:href="#Y"/></mask><path fill="url(#Z)" d="M7.6 1.1c-.3.6-.1 1 0 1.3.1.3.2.4.1.6-.1.3-.6.3-.8.3l-2.1-.9a1 1 0 0 0-1.4.6l-.7 1.7s-.3.7 0 1.3c0 .2.2.4.5.6.4.1.7 0 1-.2.3-.1.6-.3 1-.1.3.1.6.7.2 1.5-.3.8-.8 1-1.2.9-.4-.2-.5-.5-.6-.8-.1-.3-.3-.6-.6-.7a1 1 0 0 0-.9 0c-.5.2-.8 1-.8 1l-1 2.6a1 1 0 0 0 .6 1.4l2.8 1v.1c.7.3 1.6.3 2-.5 0-.4 0-.7-.2-1-.1-.3-.3-.6 0-1 0-.3.6-.7 1.5-.3.8.3 1.1 1 1 1.3-.2.4-.5.6-.8.7-.3.2-.6.3-.7.6-.2.5-.1.9.2 1.2a2.2 2.2 0 0 0 .8.5l1.2.5a1 1 0 0 0 1.3-.6l1.3-3s.3-.7.7-.6c.2.1.2.2.3.5v.2A218.2 218.2 0 0 1 13 9c-.4-.2-.2-1-.3-1l.6-1.2a1 1 0 0 0-.6-1.4l-2.3-.9s-.6-.3-.4-.8l.4-.3c.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1A3 3 0 0 0 8.9.2c-.8 0-1.2.5-1.3 1" mask="url(#aa)"/></g><g transform="matrix(-1 0 0 1 124 73)"><mask id="ad" fill="#fff"><use xlink:href="#ab"/></mask><path fill="url(#ac)" d="M7.9 1.2c-.3.7-.1 1 0 1.4.1.2.2.3 0 .5 0 .3-.5.3-.7.3L5 2.5a1 1 0 0 0-1 .1 1 1 0 0 0-.4.5L3 4.8s-.3.7-.1 1.3l.6.6c.4.1.7 0 1-.2.3-.1.5-.3 1 0 .3 0 .5.6.2 1.4-.3.8-.8 1-1.2 1-.4-.3-.5-.5-.7-.9 0-.3-.2-.6-.5-.7a1 1 0 0 0-1 0c-.4.2-.7 1-.7 1l-1 2.6a1 1 0 0 0 .6 1.4l2.8 1v.1c.7.3 1.6.3 1.9-.5.1-.3 0-.7-.1-1-.1-.3-.3-.6-.1-1 .1-.3.7-.7 1.6-.3.8.3 1.1 1 1 1.3-.2.5-.5.6-.8.7-.3.2-.6.3-.7.7-.2.4-.1.8.2 1.1a2.2 2.2 0 0 0 .8.5l1.1.5a1 1 0 0 0 1.4-.6l1.3-3s.3-.7.7-.5c.2 0 .2.1.3.4 0 .3.2.7.8 1 .4.1 1.5.4 2.2-1.3.7-1.6-.1-2.2-.7-2.4-.6-.3-1 0-1.3 0-.2.2-.3.2-.5.2-.4-.2-.2-1-.2-1l.5-1.2a1 1 0 0 0-.5-1.4l-2.3-.9s-.6-.3-.4-.7c0-.2.2-.3.4-.4.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1A3 3 0 0 0 9.2.3c-.8 0-1.2.6-1.3 1" mask="url(#ad)"/></g><g transform="matrix(-1 0 0 1 170 88)"><mask id="ag" fill="#fff"><use xlink:href="#ae"/></mask><path fill="url(#af)" d="M2.3 1.5a3 3 0 0 0-1-.6L.3.6l2 .9z" mask="url(#ag)"/></g><g transform="matrix(-1 0 0 1 128 104)"><mask id="aj" fill="#fff"><use xlink:href="#ah"/></mask><path fill="url(#ai)" d="M.2 1.6c-.3.6-.1 1 0 1.3l.1.3 2.3 1L3 4c.4 0 .8-.2 1-.9.2-.4.4-1.4-1.3-2.1A3 3 0 0 0 1.5.7C.7.7.3 1.3.2 1.7" mask="url(#aj)"/></g><g transform="matrix(-1 0 0 1 182 68)"><mask id="am" fill="#fff"><use xlink:href="#ak"/></mask><path fill="url(#al)" d="M6.7 1.9c-.2.6 0 1 0 1.3.2.2.2.4.2.5-.2.4-.6.3-.8.3l-2.2-.8a1 1 0 0 0-1.4.6L2 5.4s-.4.7-.1 1.3c0 .3.3.5.6.6.3.2.6 0 1-.1.2-.2.5-.3 1-.1.3.1.5.6.2 1.4-.3.8-.9 1.1-1.3 1-.4-.2-.5-.5-.6-.8 0-.3-.2-.6-.6-.8a1 1 0 0 0-.8 0c-.6.3-.8 1-.8 1l-.1.3C0 10.8 0 12.1.2 13l2.6 1H3c.7.4 1.5.4 1.9-.4.1-.4 0-.7-.1-1-.2-.3-.3-.6-.1-1 .1-.4.7-.7 1.6-.4.8.4 1 1 1 1.4-.2.4-.5.5-.8.7-.3.1-.6.3-.8.6-.1.4 0 .8.3 1.2a2.2 2.2 0 0 0 .8.5l1.1.4a1 1 0 0 0 1.4-.6l1.2-3s.4-.7.8-.5l.2.4c.1.3.3.8.9 1 .3.2 1.5.5 2.2-1.3.6-1.6-.2-2.2-.7-2.4-.6-.2-1 0-1.3.1-.2.1-.3.2-.5.1-.4-.1-.2-.9-.2-.9l.5-1.2a1 1 0 0 0-.6-1.4l-2.2-1S8.9 5 9 4.7c0-.2.2-.2.4-.3.3-.1.7-.3 1-1 .2-.3.4-1.4-1.4-2a3 3 0 0 0-1-.3c-.9 0-1.2.5-1.4.9" mask="url(#am)"/></g><g transform="matrix(-1 0 0 1 162 83)"><mask id="ap" fill="#fff"><use xlink:href="#an"/></mask><path fill="url(#ao)" d="M2.9 1c-.5.3-.8 1-.8 1l-1 2.6A1 1 0 0 0 1.7 6l1.1.4 1-5.4h-.5A1 1 0 0 0 3 1" mask="url(#ap)"/></g><g transform="matrix(-1 0 0 1 159 79)"><mask id="as" fill="#fff"><use xlink:href="#aq"/></mask><path fill="url(#ar)" d="M1.6.3a1 1 0 0 0-.4.5L.5 2.5s-.3.7 0 1.3c0 .2.2.4.5.6L2 .2a1 1 0 0 0-.4.1" mask="url(#as)"/></g><g transform="matrix(-1 0 0 1 134 85)"><mask id="av" fill="#fff"><use xlink:href="#at"/></mask><path fill="url(#au)" d="M.8 10.2l.6.1c.9.4 1.1 1 1 1.4-.2.4-.4.6-.8.7L1 13c-.2.4 0 .9.2 1.2a2.2 2.2 0 0 0 .9.5l1.1.5a1 1 0 0 0 1.4-.6l1.2-3.1s.4-.6.8-.5l.2.4c.1.4.2.8.9 1 .3.2 1.5.5 2.2-1.3.6-1.6-.2-2.2-.7-2.4-.7-.2-1 0-1.3.1-.2.1-.3.2-.5.1-.4-.1-.2-.9-.2-.9l.5-1.2A1 1 0 0 0 7 5.4l-2.2-.9s-.6-.4-.5-.8l.5-.3c.3-.1.7-.3 1-.9C5.9 2.1 6 1 4.4.3a3 3 0 0 0-1-.2L.7 10.2" mask="url(#av)"/></g><g transform="matrix(-1 0 0 1 181 85)"><mask id="ay" fill="#fff"><use xlink:href="#aw"/></mask><path fill="url(#ax)" d="M.1 6.8l6.1 2.8-.4 1s-.3.7 0 1.2c0 .3.2.5.5.6.4.2.7 0 1 0 .3-.2.6-.4 1-.2.3.1.6.7.2 1.5-.3.8-.8 1-1.2.9-.4-.2-.5-.5-.6-.8-.1-.3-.2-.6-.6-.7a1 1 0 0 0-.9 0c-.5.2-.7.9-.7 1l-1.1 2.6A1 1 0 0 0 4 18l2.8 1.2c.8.3 1.6.3 2-.5 0-.4 0-.7-.2-1-.1-.3-.2-.6 0-1 0-.3.7-.7 1.5-.3.9.3 1.1 1 1 1.3-.2.4-.5.6-.8.7-.3.1-.6.3-.7.6-.2.5-.1.9.2 1.2a2.2 2.2 0 0 0 .9.5l1 .5a1 1 0 0 0 1.5-.6l1.2-3s.3-.7.7-.6c.2.1.2.2.3.5.1.3.2.7.9 1 .3 0 1.5.4 2.2-1.3.5-1.3 0-2-.4-2.3l4.9 2.2 1.2-4.5L43 21a.5.5 0 0 0 .7-.2c.1-.3 0-.6-.3-.7l-19-8.5-1-.6s-1-.4-1.7-1.6L1.4.3.1 6.8zM16 14.9c-.4-.1-.2-.8-.2-.8v-.2l1.8.8c-.5-.2-.9 0-1.1.1l-.4.2H16zm8.5-3.4z" mask="url(#ay)"/></g><path fill="#FFF" d="M49.1 108.7a.5.5 0 0 0 0 1h33.5a.5.5 0 0 0 0-1H49.1zm0 6.2a.5.5 0 0 0 0 1h33.5a.5.5 0 0 0 0-1H49.1zm-10-9.5c0-1 .4-1.9 1.2-2.4l19.1-14c.4 2.3 2.1 3.8 3.5 4.6-.6.7-1 1.6-1 2.5a3.9 3.9 0 1 0 1.8-3.2c-1.4-.7-3.2-2.2-3.3-4.5l3.8-2.8a2.8 2.8 0 0 1 3.3 0l24 17.4c.7.5 1.2 1.4 1.1 2.4l.2 59.6c0 1.5-1.3 2.7-2.8 2.7H41.8a2.8 2.8 0 0 1-2.9-2.7l.2-59.6z"/><g transform="matrix(-1 0 0 1 84 108)"><mask id="aB" fill="#fff"><use xlink:href="#az"/></mask><path fill="url(#aA)" d="M1.4.7a.5.5 0 1 0 0 1h33.5a.5.5 0 1 0 0-1H1.4z" mask="url(#aB)"/></g><g transform="matrix(-1 0 0 1 84 114)"><mask id="aE" fill="#fff"><use xlink:href="#aC"/></mask><path fill="url(#aD)" d="M1.4.9a.5.5 0 1 0 0 1h33.5a.5.5 0 1 0 0-1H1.4z" mask="url(#aE)"/></g><path fill="url(#p)" d="M27.2 15c-1.8 0-1.9 1.9-3.3 1.9-.8 0-1.4-.7-1.4-1.4V9.4c0-1-.8-1.9-1.9-1.9h-6c-.8 0-1.5-.6-1.5-1.4 0-1.4 1.9-1.5 1.9-3.3C15 1.2 13.3 0 11.2 0c-2 0-3.7 1.2-3.7 2.8 0 1.8 1.9 1.9 1.9 3.3 0 .8-.7 1.4-1.4 1.4H1.9c-1 0-1.9.8-1.9 1.9v4.2c0 .8.6 1.4 1.4 1.4 1.4 0 1.5-1.9 3.3-1.9 1.6 0 2.8 1.7 2.8 3.8 0 2-1.2 3.7-2.8 3.7-1.8 0-1.9-1.9-3.3-1.9-.8 0-1.4.7-1.4 1.5v8c0 1 .8 1.8 1.9 1.8h6c.8 0 1.5-.6 1.5-1.4 0-1.4-1.9-1.5-1.9-3.3 0-1.6 1.7-2.8 3.8-2.8 2 0 3.7 1.2 3.7 2.8 0 1.8-1.9 1.9-1.9 3.3 0 .8.7 1.4 1.4 1.4h6.1c1 0 1.9-.8 1.9-1.9v-6c0-.8.6-1.5 1.4-1.5 1.4 0 1.5 1.9 3.3 1.9 1.6 0 2.8-1.7 2.8-3.8 0-2-1.2-3.7-2.8-3.7z" transform="matrix(-1 0 0 1 79 125)"/></g></svg>
\ No newline at end of file
deleted file mode 100644
--- a/browser/components/newtab/data/content/assets/sync-devices-trailhead.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-<!-- 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/. -->
-<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" viewBox="0 0 234.4 93.4"><style>.st0{fill:#592acb}.st4{fill:#f9f9fa}</style><g id="right-inner"><path d="M167 78.3c-5.5 0-10.9-1.4-15.6-4.2-1-.4-1.5-1.6-1.1-2.6.4-1 1.6-1.5 2.6-1.1.1.1.3.1.4.2 4.1 2.4 8.8 3.6 13.6 3.6 1.1 0 2 .9 2 2 .1 1.2-.8 2.1-1.9 2.1zm7.6-1c-1.1 0-2-.9-2-2 0-.9.6-1.7 1.5-1.9 4.6-1.2 8.8-3.7 12.2-7.1.8-.8 2.1-.8 2.9 0s.8 2.1 0 2.9c-3.9 3.9-8.7 6.7-14 8.1h-.6zm-28.3-7.6c-.5 0-1-.2-1.4-.6-3.9-3.9-6.7-8.7-8.1-14-.4-1 .2-2.2 1.2-2.6 1-.4 2.2.2 2.6 1.2 0 .1.1.2.1.3 1.3 4.6 3.7 8.8 7.1 12.2.8.8.8 2 0 2.8-.4.5-.9.7-1.5.7zm46-6c-1.1 0-2-.9-2-2 0-.4.1-.7.3-1 2.4-4.1 3.6-8.8 3.6-13.6V47c.1-1.1 1-1.9 2.1-1.9 1 .1 1.8.9 1.9 1.9 0 5.5-1.4 10.9-4.2 15.7-.3.6-1 1-1.7 1zM137.7 49c-1.1 0-2-.9-2-2 0-5.5 1.4-10.8 4.2-15.6.5-1 1.7-1.4 2.7-.9 1 .5 1.4 1.7.9 2.7 0 .1-.1.1-.1.2-2.4 4.1-3.6 8.8-3.6 13.6 0 1.1-.9 2-2.1 2 .1 0 0 0 0 0zm57.5-7.7c-.9 0-1.7-.6-1.9-1.5-1.3-4.6-3.7-8.8-7.1-12.2-.8-.8-.8-2.1 0-2.9.8-.8 2.1-.8 2.9 0 3.9 3.9 6.7 8.7 8.1 14 .3 1.1-.3 2.2-1.4 2.5-.2.1-.4.1-.6.1zm-48.9-12.9c-.5 0-1-.2-1.4-.6-.8-.8-.8-2.1 0-2.8 3.9-3.9 8.7-6.7 14-8.1 1.1-.2 2.1.6 2.3 1.7.1.9-.4 1.8-1.2 2.1-4.6 1.2-8.8 3.7-12.2 7.1-.5.3-1 .6-1.5.6zm35.2-4.8c-.3 0-.7-.1-1-.3-4.1-2.4-8.8-3.6-13.5-3.6h-.2c-1.1.1-2.1-.8-2.1-1.9-.1-1.1.8-2.1 1.9-2.1h.3c5.5 0 10.8 1.4 15.6 4.1 1 .5 1.3 1.8.8 2.7-.4.7-1.1 1.1-1.8 1.1z" class="st0"/><animateTransform attributeName="transform" attributeType="XML" dur="10s" from="360 167 47" repeatCount="indefinite" to="0 167 47" type="rotate"/></g><g id="right-outer"><path d="M167 92c-7.9 0-15.6-2.1-22.4-6-1.4-.8-1.9-2.6-1.1-3.9.8-1.4 2.6-1.9 3.9-1.1 5.9 3.4 12.7 5.2 19.6 5.2 1.6 0 2.9 1.3 2.9 2.9 0 1.6-1.3 2.9-2.9 2.9zm10.9-1.4c-1.6 0-2.9-1.3-2.9-2.9 0-1.3.9-2.5 2.1-2.8 6.6-1.8 12.7-5.3 17.6-10.2 1.1-1.2 2.9-1.2 4.1-.1 1.2 1.1 1.2 2.9.1 4.1l-.1.1c-5.6 5.6-12.5 9.6-20.1 11.7-.3 0-.5.1-.8.1zm-40.6-10.9c-.8 0-1.5-.3-2-.8-5.6-5.6-9.6-12.5-11.7-20.1-.4-1.6.6-3.1 2.2-3.5 1.5-.3 3 .5 3.4 2 1.8 6.6 5.3 12.7 10.2 17.6 1.1 1.1 1.1 3 0 4.1-.6.4-1.4.7-2.1.7zm66.2-8.8c-1.6 0-2.9-1.3-2.9-2.9 0-.5.1-1 .4-1.4 3.4-6 5.2-12.7 5.2-19.6v-.2c0-1.6 1.3-2.9 2.9-2.9s2.9 1.3 2.9 2.9v.2c0 7.9-2.1 15.7-6 22.5-.5.9-1.5 1.4-2.5 1.4zm-78.6-21c-1.6 0-2.9-1.3-2.9-2.9 0-7.9 2.1-15.6 6-22.4.8-1.4 2.6-1.9 4-1.1 1.4.8 1.9 2.6 1.1 4-3.4 5.9-5.2 12.7-5.2 19.5-.1 1.5-1.3 2.9-3 2.9zm82.7-11.1c-1.3 0-2.5-.9-2.8-2.1-1.8-6.6-5.3-12.7-10.2-17.5-1.2-1-1.4-2.8-.4-4.1s2.8-1.4 4.1-.4c.1.1.3.2.4.4 5.6 5.6 9.7 12.5 11.7 20.1.4 1.5-.5 3.1-2 3.5-.3.1-.5.1-.8.1zm-70.5-18.6c-.8 0-1.5-.3-2.1-.8-1.1-1.1-1.1-3 0-4.1 5.6-5.6 12.5-9.6 20.1-11.7 1.5-.4 3.1.5 3.5 2.1.4 1.5-.5 3-2 3.5-6.6 1.8-12.7 5.3-17.5 10.2-.4.5-1.2.8-2 .8zm50.8-6.9c-.5 0-1-.1-1.4-.4-5.9-3.4-12.7-5.2-19.5-5.2h-.1c-1.6 0-2.9-1.3-2.9-2.9s1.3-2.9 2.9-2.9h.1c7.9 0 15.6 2 22.4 6 1.4.8 1.9 2.6 1.1 3.9-.6 1-1.5 1.5-2.6 1.5z" class="st0"/><animateTransform attributeName="transform" attributeType="XML" dur="10s" from="0 167 47" repeatCount="indefinite" to="360 167 47" type="rotate"/></g><g id="left-inner"><path d="M79 78.3c-5.5 0-10.9-1.4-15.6-4.2-1-.4-1.5-1.6-1.1-2.6.4-1 1.6-1.5 2.6-1.1.1.1.3.1.4.2 4.1 2.4 8.8 3.6 13.6 3.6 1.1 0 2 .9 2 2 .1 1.2-.8 2.1-1.9 2.1zm7.6-1c-1.1 0-2-.9-2-2 0-.9.6-1.7 1.5-1.9 4.6-1.2 8.8-3.7 12.2-7.1.8-.8 2.1-.8 2.9 0 .8.8.8 2.1 0 2.9-3.9 3.9-8.7 6.7-14 8.1h-.6zm-28.3-7.6c-.5 0-1-.2-1.4-.6-3.9-3.9-6.7-8.7-8.1-14-.4-1 .2-2.2 1.2-2.6 1-.4 2.2.2 2.6 1.2 0 .1.1.2.1.3 1.3 4.6 3.7 8.8 7.1 12.2.8.8.8 2 0 2.8-.4.5-.9.7-1.5.7zm46-6c-1.1 0-2-.9-2-2 0-.4.1-.7.3-1 2.4-4.1 3.6-8.8 3.6-13.6V47c.1-1.1 1-1.9 2.1-1.9 1 .1 1.8.9 1.9 1.9 0 5.5-1.4 10.9-4.2 15.7-.3.6-1 1-1.7 1zM49.7 49c-1.1 0-2-.9-2-2 0-5.5 1.4-10.8 4.2-15.6.5-1 1.7-1.4 2.7-.9s1.4 1.7.9 2.7c0 .1-.1.1-.1.2-2.4 4.1-3.6 8.8-3.6 13.6 0 1.1-.9 2-2.1 2 .1 0 0 0 0 0zm57.5-7.7c-.9 0-1.7-.6-1.9-1.5-1.3-4.6-3.7-8.8-7.1-12.2-.8-.8-.8-2.1 0-2.9.8-.8 2.1-.8 2.9 0 3.9 3.9 6.7 8.7 8.1 14 .3 1.1-.3 2.2-1.4 2.5-.2.1-.4.1-.6.1zM58.3 28.4c-.5 0-1-.2-1.4-.6-.8-.8-.8-2.1 0-2.8 3.9-3.9 8.7-6.7 14-8.1 1.1-.2 2.1.6 2.3 1.7.1.9-.4 1.8-1.2 2.1-4.6 1.2-8.8 3.7-12.2 7.1-.5.3-1 .6-1.5.6zm35.2-4.8c-.3 0-.7-.1-1-.3-4.1-2.4-8.8-3.6-13.5-3.6h-.2c-1.1.1-2.1-.8-2.1-1.9-.1-1.1.8-2.1 1.9-2.1h.3c5.5 0 10.8 1.4 15.6 4.1 1 .5 1.3 1.8.8 2.7-.4.7-1.1 1.1-1.8 1.1z" class="st0"/><animateTransform attributeName="transform" attributeType="XML" dur="10s" from="360 79 47" repeatCount="indefinite" to="0 79 47" type="rotate"/></g><g id="left-outer"><path d="M79 92c-7.9 0-15.6-2.1-22.4-6-1.4-.8-1.9-2.6-1.1-3.9.8-1.4 2.6-1.9 3.9-1.1 5.9 3.4 12.7 5.2 19.6 5.2 1.6 0 2.9 1.3 2.9 2.9 0 1.6-1.3 2.9-2.9 2.9zm10.9-1.4c-1.6 0-2.9-1.3-2.9-2.9 0-1.3.9-2.5 2.1-2.8 6.6-1.8 12.7-5.3 17.6-10.2 1.1-1.2 2.9-1.2 4.1-.1 1.2 1.1 1.2 2.9.1 4.1l-.1.1c-5.6 5.6-12.5 9.6-20.1 11.7-.3 0-.5.1-.8.1zM49.3 79.7c-.8 0-1.5-.3-2-.8-5.6-5.6-9.6-12.5-11.7-20.1-.4-1.6.6-3.1 2.2-3.5 1.5-.3 3 .5 3.4 2C43 63.9 46.5 70 51.4 74.9c1.1 1.1 1.1 3 0 4.1-.6.4-1.4.7-2.1.7zm66.2-8.8c-1.6 0-2.9-1.3-2.9-2.9 0-.5.1-1 .4-1.4 3.4-6 5.2-12.7 5.2-19.6v-.2c0-1.6 1.3-2.9 2.9-2.9 1.6 0 2.9 1.3 2.9 2.9v.2c0 7.9-2.1 15.7-6 22.5-.5.9-1.5 1.4-2.5 1.4zm-78.6-21c-1.6 0-2.9-1.3-2.9-2.9 0-7.9 2.1-15.6 6-22.4.8-1.4 2.6-1.9 4-1.1 1.4.8 1.9 2.6 1.1 4-3.4 5.9-5.2 12.7-5.2 19.5-.1 1.5-1.3 2.9-3 2.9zm82.7-11.1c-1.3 0-2.5-.9-2.8-2.1-1.8-6.6-5.3-12.7-10.2-17.5-1.2-1-1.4-2.8-.4-4.1 1-1.2 2.8-1.4 4.1-.4.1.1.3.2.4.4 5.6 5.6 9.7 12.5 11.7 20.1.4 1.5-.5 3.1-2 3.5-.3.1-.5.1-.8.1zM49.1 20.2c-.8 0-1.5-.3-2.1-.8-1.1-1.1-1.1-3 0-4.1 5.6-5.6 12.5-9.6 20.1-11.7 1.5-.4 3.1.5 3.5 2.1.4 1.5-.5 3-2 3.5C62 11 55.9 14.5 51.1 19.4c-.4.5-1.2.8-2 .8zm50.8-6.9c-.5 0-1-.1-1.4-.4C92.6 9.6 85.8 7.8 79 7.8h-.1c-1.6 0-2.9-1.3-2.9-2.9S77.3 2 78.9 2h.1c7.9 0 15.6 2 22.4 6 1.4.8 1.9 2.6 1.1 3.9-.6.9-1.5 1.4-2.6 1.4z" class="st0"/><animateTransform attributeName="transform" attributeType="XML" dur="10s" from="0 79 47" repeatCount="indefinite" to="360 79 47" type="rotate"/></g><path fill="#ff848b" d="M27.1 68.3h26.5V76H27.1z"/><linearGradient id="SVGID_1_" x1="-13.76" x2="75.674" y1="104.809" y2="15.375" gradientTransform="translate(.932 -.95)" gradientUnits="userSpaceOnUse"><stop offset=".165" stop-color="#b833e1"/><stop offset=".958" stop-color="#ff4f5e"/></linearGradient><path fill="url(#SVGID_1_)" d="M78.9 70.6h-1.7V23c0-1.9-1.5-3.4-3.4-3.4H6.9c-1.9 0-3.4 1.5-3.4 3.4v47.6H1.7c-.9 0-1.7.8-1.7 1.7v3.5c0 .9.8 1.7 1.7 1.7h77.2c.9 0 1.7-.8 1.7-1.7v-3.5c0-.9-.8-1.7-1.7-1.7zM47.2 74H33.4v-3.4h13.7V74z"/><path fill="#bc24bc" d="M72 24.4H8.6v41.9H72V24.4z" opacity=".5"/><path d="M57 41.9c-.4 0-.7.3-.7.7v.8c-1.8-1.8-4.7-1.9-6.5-.1-.6.6-1.1 1.4-1.3 2.2-.1.4.1.7.5.8h.2c.3 0 .6-.2.6-.5.4-1.5 1.7-2.5 3.2-2.5 1 0 2 .5 2.6 1.3h-1.3c-.4 0-.7.3-.7.6 0 .4.3.7.6.7H57c.4 0 .7-.3.7-.7v-2.7c0-.3-.3-.6-.7-.6zm.1 5c-.4-.1-.7.1-.8.5-.4 1.5-1.7 2.5-3.2 2.5-1 0-2-.5-2.6-1.3h1.3c.4 0 .6-.3.6-.7 0-.3-.3-.6-.6-.6h-2.7c-.4 0-.7.3-.7.7v2.7c0 .4.3.7.6.7.4 0 .7-.3.7-.6v-.9c1.8 1.8 4.7 1.9 6.5.1.6-.6 1.1-1.4 1.3-2.2.1-.5-.1-.8-.4-.9zM28 41.5c-2.8 0-5.1 2.3-5.1 5.1s2.3 5.1 5.1 5.1 5.1-2.3 5.1-5.1-2.3-5.1-5.1-5.1zm0 8.9c-2.1 0-3.8-1.7-3.8-3.8s1.7-3.8 3.8-3.8 3.8 1.7 3.8 3.8c0 2.1-1.7 3.8-3.8 3.8zm2.2-3.8H28v-2.2c0-.2-.1-.3-.3-.3-.2 0-.3.1-.3.3v2.5c0 .2.1.3.3.3h2.5c.2 0 .3-.1.3-.3s-.1-.3-.3-.3zm7.7 4.9c-.4 0-.7-.3-.7-.7v-.1l.4-2.7-1.8-2c-.3-.3-.2-.7 0-1 .1-.1.2-.1.3-.2l2.5-.5 1.2-2.4c.2-.3.6-.5.9-.3l.3.3 1.2 2.4 2.5.5c.4.1.6.4.6.8 0 .1-.1.2-.2.3L43.4 48l.4 2.7c.1.4-.2.7-.6.8-.1 0-.3 0-.4-.1l-2.3-1.2-2.3 1.2c-.1 0-.2.1-.3.1zm-.5-5.5l1.5 1.6-.3 2.2 1.9-1 1.9 1-.3-2.2 1.5-1.6-2.1-.4-1-1.9-1 1.9-2.1.4z" class="st4"/><linearGradient id="SVGID_2_" x1="157.53" x2="261.245" y1="152.614" y2="48.899" gradientTransform="translate(-89.178 -48.95)" gradientUnits="userSpaceOnUse"><stop offset=".28" stop-color="#7542e5"/><stop offset=".417" stop-color="#824deb"/><stop offset=".789" stop-color="#a067fa"/><stop offset="1" stop-color="#ab71ff"/></linearGradient><path fill="url(#SVGID_2_)" d="M135.8 20.7h-24.6c-3.4 0-6.1 2.8-6.1 6.1v43.3c0 3.4 2.8 6.1 6.1 6.1h24.6c3.4 0 6.1-2.8 6.1-6.1V26.8c0-3.3-2.7-6.1-6.1-6.1z"/><path fill="#ab71ff" d="M120 67.2h6.9v3.4H120z"/><path d="M127.5 51.5c-.4 0-.7.3-.7.7v.8c-1.8-1.8-4.7-1.9-6.5-.1-.6.6-1.1 1.4-1.3 2.2-.1.4.1.7.5.8h.2c.3 0 .6-.2.6-.5.4-1.5 1.7-2.5 3.2-2.5 1 0 2 .5 2.6 1.3h-1.3c-.4 0-.7.3-.7.6 0 .4.3.7.6.7h2.8c.4 0 .7-.3.7-.7v-2.7c0-.3-.3-.6-.7-.6zm0 5c-.4-.1-.7.1-.8.5-.4 1.5-1.7 2.5-3.2 2.5-1 0-2-.5-2.6-1.3h1.3c.4 0 .6-.3.6-.7 0-.3-.3-.6-.6-.6h-2.7c-.4 0-.7.3-.7.7v2.7c0 .4.3.7.6.7.4 0 .7-.3.7-.6v-.9c1.8 1.8 4.7 1.9 6.5.1.6-.6 1.1-1.4 1.3-2.2.2-.5 0-.8-.4-.9zm-4-29.4c-2.8 0-5.1 2.3-5.1 5.1s2.3 5.1 5.1 5.1 5.1-2.3 5.1-5.1-2.3-5.1-5.1-5.1zm0 8.9c-2.1 0-3.8-1.7-3.8-3.8 0-2.1 1.7-3.8 3.8-3.8 2.1 0 3.8 1.7 3.8 3.8 0 2.1-1.7 3.8-3.8 3.8zm2.2-3.8h-2.2V30c0-.2-.1-.3-.3-.3-.2 0-.3.1-.3.3v2.5c0 .2.1.3.3.3h2.5c.2 0 .3-.1.3-.3s-.1-.3-.3-.3zm-4.8 16.9c-.4 0-.7-.3-.7-.7v-.1l.4-2.7-1.8-1.9c-.3-.3-.2-.7 0-1 .1-.1.2-.1.3-.2l2.5-.5 1.2-2.4c.2-.3.6-.5.9-.3l.3.3 1.2 2.4 2.5.5c.4.1.6.4.6.8 0 .1-.1.2-.2.3l-1.8 1.9.4 2.7c.1.4-.2.7-.6.8-.1 0-.3 0-.4-.1l-2.3-1.2-2.3 1.2c0 .2-.1.2-.2.2zm-.5-5.5l1.5 1.6-.3 2.2 1.9-1 1.9 1-.3-2.2 1.5-1.6-2.1-.4-1-1.9-1 1.9-2.1.4z" class="st4"/><path fill="#7542e5" d="M135.5 23.7h-24c-1.9 0-3.4 1.5-3.4 3.4v37.1H139V27.1c-.1-1.9-1.6-3.4-3.5-3.4z" opacity=".5"/><linearGradient id="SVGID_3_" x1="258.012" x2="323.576" y1="130.654" y2="65.09" gradientTransform="translate(-89.178 -48.95)" gradientUnits="userSpaceOnUse"><stop offset=".432" stop-color="#00b3f4"/><stop offset=".609" stop-color="#00bbf6"/><stop offset=".891" stop-color="#00d2fc"/><stop offset="1" stop-color="#0df"/></linearGradient><path fill="url(#SVGID_3_)" d="M229.8 22.2h-55.6c-2.5 0-4.6 2.1-4.6 4.6v43.3c0 2.5 2.1 4.6 4.6 4.6h55.6c2.5 0 4.6-2.1 4.6-4.6V26.9c0-2.6-2-4.7-4.6-4.7z"/><path fill="#0df" d="M227.3 44.2h4.3v8.5h-4.3z"/><path fill="#0090ed" d="M225.4 25.2h-51.1c-.9 0-1.7.7-1.7 1.7V70c0 .9.7 1.7 1.7 1.7h51.1V25.2z" opacity=".5"/><path d="M127.5 51.5c-.4 0-.7.3-.7.7v.8c-1.8-1.8-4.7-1.9-6.5-.1-.6.6-1.1 1.4-1.3 2.2-.1.4.1.7.5.8h.2c.3 0 .6-.2.6-.5.4-1.5 1.7-2.5 3.2-2.5 1 0 2 .5 2.6 1.3h-1.3c-.4 0-.7.3-.7.6 0 .4.3.7.6.7h2.8c.4 0 .7-.3.7-.7v-2.7c0-.3-.3-.6-.7-.6zm0 5c-.4-.1-.7.1-.8.5-.4 1.5-1.7 2.5-3.2 2.5-1 0-2-.5-2.6-1.3h1.3c.4 0 .6-.3.6-.7 0-.3-.3-.6-.6-.6h-2.7c-.4 0-.7.3-.7.7v2.7c0 .4.3.7.6.7.4 0 .7-.3.7-.6v-.9c1.8 1.8 4.7 1.9 6.5.1.6-.6 1.1-1.4 1.3-2.2.2-.5 0-.8-.4-.9zm-4-29.4c-2.8 0-5.1 2.3-5.1 5.1s2.3 5.1 5.1 5.1 5.1-2.3 5.1-5.1-2.3-5.1-5.1-5.1zm0 8.9c-2.1 0-3.8-1.7-3.8-3.8 0-2.1 1.7-3.8 3.8-3.8 2.1 0 3.8 1.7 3.8 3.8 0 2.1-1.7 3.8-3.8 3.8zm2.2-3.8h-2.2V30c0-.2-.1-.3-.3-.3-.2 0-.3.1-.3.3v2.5c0 .2.1.3.3.3h2.5c.2 0 .3-.1.3-.3s-.1-.3-.3-.3zm-4.8 16.9c-.4 0-.7-.3-.7-.7v-.1l.4-2.7-1.8-1.9c-.3-.3-.2-.7 0-1 .1-.1.2-.1.3-.2l2.5-.5 1.2-2.4c.2-.3.6-.5.9-.3l.3.3 1.2 2.4 2.5.5c.4.1.6.4.6.8 0 .1-.1.2-.2.3l-1.8 1.9.4 2.7c.1.4-.2.7-.6.8-.1 0-.3 0-.4-.1l-2.3-1.2-2.3 1.2c0 .2-.1.2-.2.2zm-.5-5.5l1.5 1.6-.3 2.2 1.9-1 1.9 1-.3-2.2 1.5-1.6-2.1-.4-1-1.9-1 1.9-2.1.4zm94 .2c-.4 0-.7.3-.7.7v.8c-1.8-1.8-4.7-1.9-6.5-.1-.6.6-1.1 1.4-1.3 2.2-.1.4.1.7.5.8h.2c.3 0 .6-.2.6-.5.4-1.5 1.7-2.5 3.2-2.5 1 0 2 .5 2.6 1.3h-1.3c-.4 0-.7.3-.7.6 0 .4.3.7.6.7h2.8c.4 0 .7-.3.7-.7v-2.7c0-.3-.3-.6-.7-.6zm.1 5c-.4-.1-.7.1-.8.5-.4 1.5-1.7 2.5-3.2 2.5-1 0-2-.5-2.6-1.3h1.3c.4 0 .6-.3.6-.7 0-.3-.3-.6-.6-.6h-2.7c-.4 0-.7.3-.7.7v2.7c0 .4.3.7.6.7.4 0 .7-.3.7-.6v-.9c1.8 1.8 4.7 1.9 6.5.1.6-.6 1.1-1.4 1.3-2.2.1-.5-.1-.8-.4-.9zm-29.1-5.4c-2.8 0-5.1 2.3-5.1 5.1s2.3 5.1 5.1 5.1 5.1-2.3 5.1-5.1-2.3-5.1-5.1-5.1zm0 8.9c-2.1 0-3.8-1.7-3.8-3.8 0-2.1 1.7-3.8 3.8-3.8 2.1 0 3.8 1.7 3.8 3.8 0 2.1-1.7 3.8-3.8 3.8zm2.2-3.8h-2.2v-2.2c0-.2-.1-.3-.3-.3-.2 0-.3.1-.3.3v2.5c0 .2.1.3.3.3h2.5c.2 0 .3-.1.3-.3s-.1-.3-.3-.3zm7.7 4.9c-.4 0-.7-.3-.7-.7v-.1l.4-2.7-1.8-1.9c-.3-.3-.2-.7 0-1 .1-.1.2-.1.3-.2l2.5-.5 1.2-2.4c.2-.3.6-.5.9-.3l.3.3 1.2 2.4 2.5.5c.4.1.6.4.6.8 0 .1-.1.2-.2.3l-1.8 1.9.4 2.7c.1.4-.2.7-.6.8-.1 0-.3 0-.4-.1l-2.3-1.2-2.3 1.2c0 .2-.1.2-.2.2zm-.5-5.5l1.5 1.6-.3 2.2 1.9-1 1.9 1-.3-2.2 1.5-1.6-2.1-.4-1-1.9-1 1.9-2.1.4z" class="st4"/></svg>
\ No newline at end of file
deleted file mode 100755
index cd9b5d513d0d217ba34825f2ad3e72e37bb671cc..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 7bf74839e81e8d8e4d9e2254d2a75d77652e135d..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 943fe4c7d39f1c6b06a37b608e4656cea6f35e10..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 08ee42b329e6356baaf31c1fa162a92894c21b36..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index bcbd97a43b05118b8bfcdb58ebaff8d13d235d9e..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index be46f177450c703e3eb1eb7281c1e93e70aae877..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 99f7c9ee72fcf853f487e55156e60fa11ab6cc2a..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
--- a/browser/components/newtab/docs/v2-system-addon/data_events.md
+++ b/browser/components/newtab/docs/v2-system-addon/data_events.md
@@ -1348,33 +1348,16 @@ This reports a failure in the Remote Set
   },
   "user_prefs": 7,
   "event": ["ASR_RS_NO_MESSAGES" | "ASR_RS_ERROR"],
   // The value is set to the ID of the message provider. For example: remote-cfr, remote-onboarding, etc.
   "event_context": "REMOTE_PROVIDER_ID"
 }
 ```
 
-## Trailhead experiment enrollment ping
-
-This reports an enrollment ping when a user gets enrolled in a Trailhead experiment. Note that this ping is only collected through the Mozilla Events telemetry pipeline.
-
-```js
-{
-  "category": "activity_stream",
-  "method": "enroll",
-  "object": "preference_study"
-  "value": "activity-stream-firstup-trailhead-interrupts",
-  "extra_keys": {
-    "experimentType": "as-firstrun",
-    "branch": ["supercharge" | "join" | "sync" | "privacy" ...]
-  }
-}
-```
-
 ## Feature Callouts interaction pings
 
 This reports when a user has seen or clicked a badge/notification in the browser toolbar in a non-PBM window
 
 ```
 {
   "locale": "en-US",
   "client_id": "9da773d8-4356-f54f-b7cf-6134726bcf3d",
--- a/browser/components/newtab/lib/ASRouter.jsm
+++ b/browser/components/newtab/lib/ASRouter.jsm
@@ -544,17 +544,16 @@ class _ASRouter {
     this.messageChannel = null;
     this.dispatchToAS = null;
     this._storage = null;
     this._resetInitialization();
     this._state = {
       providers: [],
       messageBlockList: [],
       messageImpressions: {},
-      trailheadInitialized: false,
       messages: [],
       groups: [],
       errors: [],
       localeInUse: Services.locale.appLocaleAsBCP47,
     };
     this._triggerHandler = this._triggerHandler.bind(this);
     this._localProviders = localProviders;
     this.blockMessageById = this.blockMessageById.bind(this);
@@ -1033,17 +1032,17 @@ class _ASRouter {
       data: {
         ...this.state,
         providerPrefs: ASRouterPreferences.providers,
         userPrefs: ASRouterPreferences.getAllUserPreferences(),
         targetingParameters: await this.getTargetingParameters(
           ASRouterTargeting.Environment,
           this._getMessagesContext()
         ),
-        trailhead: ASRouterPreferences.trailhead,
+        trailheadTriplet: ASRouterPreferences.trailheadTriplet,
         errors: this.errors,
       },
     });
   }
 
   _handleTargetingError(error, message) {
     Cu.reportError(error);
     if (this.dispatchToAS) {
@@ -1052,28 +1051,16 @@ class _ASRouter {
           message_id: message.id,
           action: "asrouter_undesired_event",
           event: "TARGETING_EXPRESSION_ERROR",
         })
       );
     }
   }
 
-  async setTrailHeadMessageSeen() {
-    if (!this.state.trailheadInitialized) {
-      Services.prefs.setBoolPref(
-        TRAILHEAD_CONFIG.DID_SEE_ABOUT_WELCOME_PREF,
-        true
-      );
-      await this.setState({
-        trailheadInitialized: true,
-      });
-    }
-  }
-
   // Return an object containing targeting parameters used to select messages
   _getMessagesContext() {
     const { messageImpressions, previousSessionEnd } = this.state;
 
     return {
       get messageImpressions() {
         return messageImpressions;
       },
@@ -1222,19 +1209,17 @@ class _ASRouter {
         result = result.concat(
           allMessages.slice(0, bundleLength).map(message => ({
             content: message.content,
             id: message.id,
             order: message.order || 0,
             // This is used to determine whether to block when action is triggered
             // Only block for dynamic triplets experiment and when there are more messages available
             blockOnClick:
-              ASRouterPreferences.trailhead.trailheadTriplet.startsWith(
-                "dynamic"
-              ) &&
+              ASRouterPreferences.trailheadTriplet.startsWith("dynamic") &&
               allMessages.length >
                 TRAILHEAD_CONFIG.DYNAMIC_TRIPLET_BUNDLE_LENGTH,
           }))
         );
       }
     }
 
     // If we did not find enough messages to fill the bundle, do not send the bundle down
@@ -1360,18 +1345,17 @@ class _ASRouter {
         message.includeBundle.trigger,
         force
       );
       try {
         target.sendAsyncMessage(OUTGOING_MESSAGE_NAME, {
           type: "SET_MESSAGE",
           data: {
             ...message,
-            trailheadTriplet:
-              ASRouterPreferences.trailhead.trailheadTriplet || "",
+            trailheadTriplet: ASRouterPreferences.trailheadTriplet || "",
             bundle: bundledMessages && bundledMessages.bundle,
           },
         });
       } catch (e) {}
     } else {
       this.routeMessageToTarget(message, target, trigger, force);
     }
   }
@@ -1895,21 +1879,16 @@ class _ASRouter {
       message.experimentSlug,
       extra
     );
   }
 
   async sendTriggerMessage(target, trigger) {
     await this.loadMessagesFromAllProviders();
 
-    if (trigger.id === "firstRun") {
-      // On about welcome, set trailhead message seen on receiving firstrun trigger
-      await this.setTrailHeadMessageSeen();
-    }
-
     const telemetryObject = { port: target.portID };
     TelemetryStopwatch.start("MS_MESSAGE_REQUEST_TIME_MS", telemetryObject);
     // Return all the messages so that it can record the Reach event
     const messages =
       (await this.handleMessageRequest({
         triggerId: trigger.id,
         triggerParam: trigger.param,
         triggerContext: trigger.context,
--- a/browser/components/newtab/lib/ASRouterPreferences.jsm
+++ b/browser/components/newtab/lib/ASRouterPreferences.jsm
@@ -8,35 +8,23 @@ const { XPCOMUtils } = ChromeUtils.impor
   "resource://gre/modules/XPCOMUtils.jsm"
 );
 
 const PROVIDER_PREF_BRANCH =
   "browser.newtabpage.activity-stream.asrouter.providers.";
 const DEVTOOLS_PREF =
   "browser.newtabpage.activity-stream.asrouter.devtoolsEnabled";
 const FXA_USERNAME_PREF = "services.sync.username";
-const FIRST_RUN_PREF = "trailhead.firstrun.branches";
-const DEFAULT_FIRSTRUN_TRIPLET = "supercharge";
-