Merge m-c to inbound. a=merge
authorRyan VanderMeulen <ryanvm@gmail.com>
Sat, 09 Apr 2016 15:22:21 -0400
changeset 292517 ee048ce0f8d5
parent 292482 1bb3c8365cc4 (current diff)
parent 292516 d62963756d9a (diff)
child 292518 89c24de1de01
push id74863
push userryanvm@gmail.com
push dateSat, 09 Apr 2016 19:23:17 +0000
treeherdermozilla-inbound@ee048ce0f8d5 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmerge
milestone48.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
Merge m-c to inbound. a=merge
devtools/client/inspector/test/browser.ini
mobile/android/base/java/org/mozilla/gecko/db/LocalReadingListAccessor.java
mobile/android/base/java/org/mozilla/gecko/db/ReadingListAccessor.java
mobile/android/base/java/org/mozilla/gecko/db/ReadingListProvider.java
mobile/android/base/java/org/mozilla/gecko/home/ReadingListRow.java
mobile/android/base/java/org/mozilla/gecko/overlays/service/sharemethods/AddToReadingList.java
mobile/android/base/resources/drawable-hdpi-v11/ic_menu_reader_add.xml
mobile/android/base/resources/drawable-hdpi-v11/ic_menu_reader_add_asset.png
mobile/android/base/resources/drawable-hdpi-v11/ic_menu_reader_remove.xml
mobile/android/base/resources/drawable-hdpi-v11/ic_menu_reader_remove_asset.png
mobile/android/base/resources/drawable-hdpi/icon_reading_list_empty.png
mobile/android/base/resources/drawable-hdpi/overlay_readinglist_already_icon.png
mobile/android/base/resources/drawable-hdpi/overlay_readinglist_icon.png
mobile/android/base/resources/drawable-mdpi-v11/ic_menu_reader_add.xml
mobile/android/base/resources/drawable-mdpi-v11/ic_menu_reader_remove.xml
mobile/android/base/resources/drawable-xhdpi-v11/ic_menu_reader_add.png
mobile/android/base/resources/drawable-xhdpi-v11/ic_menu_reader_remove.png
mobile/android/base/resources/drawable-xhdpi/icon_reading_list_empty.png
mobile/android/base/resources/drawable-xhdpi/overlay_readinglist_already_icon.png
mobile/android/base/resources/drawable-xhdpi/overlay_readinglist_icon.png
mobile/android/base/resources/drawable-xxhdpi-v11/ic_menu_reader_add.png
mobile/android/base/resources/drawable-xxhdpi-v11/ic_menu_reader_remove.png
mobile/android/base/resources/drawable-xxhdpi/overlay_readinglist_already_icon.png
mobile/android/base/resources/drawable-xxhdpi/overlay_readinglist_icon.png
mobile/android/base/resources/drawable/ic_menu_reader_add.xml
mobile/android/base/resources/drawable/ic_menu_reader_remove.xml
mobile/android/base/resources/drawable/overlay_share_reading_list_button.xml
mobile/android/base/resources/drawable/reading_list_indicator_read.xml
mobile/android/base/resources/drawable/reading_list_indicator_unread.xml
mobile/android/base/resources/layout/reading_list_item_row.xml
mobile/android/tests/browser/robocop/src/org/mozilla/gecko/tests/testReadingListProvider.java
--- a/browser/base/content/browser-syncui.js
+++ b/browser/base/content/browser-syncui.js
@@ -23,16 +23,17 @@ var gSyncUI = {
          "weave:service:login:error",
          "weave:service:logout:finish",
          "weave:service:start-over",
          "weave:service:start-over:finish",
          "weave:ui:login:error",
          "weave:ui:sync:error",
          "weave:ui:sync:finish",
          "weave:ui:clear-error",
+         "weave:engine:sync:finish"
   ],
 
   _unloaded: false,
   // The number of "active" syncs - while this is non-zero, our button will spin
   _numActiveSyncTasks: 0,
 
   init: function () {
     Cu.import("resource://services-common/stringbundle.js");
@@ -412,16 +413,27 @@ var gSyncUI = {
       }
     }
   }),
 
   onSyncFinish: function SUI_onSyncFinish() {
     let title = this._stringBundle.GetStringFromName("error.sync.title");
   },
 
+  onClientsSynced: function() {
+    let broadcaster = document.getElementById("sync-syncnow-state");
+    if (broadcaster) {
+      if (Weave.Service.clientsEngine.stats.numClients > 1) {
+        broadcaster.setAttribute("devices-status", "multi");
+      } else {
+        broadcaster.setAttribute("devices-status", "single");
+      }
+    }
+  },
+
   observe: function SUI_observe(subject, topic, data) {
     this.log.debug("observed", topic);
     if (this._unloaded) {
       Cu.reportError("SyncUI observer called after unload: " + topic);
       return;
     }
 
     // Unwrap, just like Svc.Obs, but without pulling in that dependency.
@@ -465,16 +477,22 @@ var gSyncUI = {
         this.updateUI();
         break;
       case "weave:service:ready":
         this.initUI();
         break;
       case "weave:notification:added":
         this.initNotifications();
         break;
+      case "weave:engine:sync:finish":
+        if (data != "clients") {
+          return;
+        }
+        this.onClientsSynced();
+        break;
     }
   },
 
   QueryInterface: XPCOMUtils.generateQI([
     Ci.nsIObserver,
     Ci.nsISupportsWeakReference
   ])
 };
--- a/browser/components/customizableui/CustomizableWidgets.jsm
+++ b/browser/components/customizableui/CustomizableWidgets.jsm
@@ -311,19 +311,21 @@ const CustomizableWidgets = [
       let bundle = doc.getElementById("bundle_browser");
       let formatArgs = ["android", "ios"].map(os => {
         let link = doc.createElement("label");
         link.textContent = bundle.getString(`appMenuRemoteTabs.mobilePromo.${os}`)
         link.setAttribute("mobile-promo-os", os);
         link.className = "text-link remotetabs-promo-link";
         return link.outerHTML;
       });
+      let promoParentElt = doc.getElementById("PanelUI-remotetabs-mobile-promo");
+      let fxAccountsBrand = promoParentElt.getAttribute("fxAccountsBrand");
+      formatArgs.push(fxAccountsBrand);
       // Put it all together...
-      let contents = bundle.getFormattedString("appMenuRemoteTabs.mobilePromo", formatArgs);
-      let promoParentElt = doc.getElementById("PanelUI-remotetabs-mobile-promo");
+      let contents = bundle.getFormattedString("appMenuRemoteTabs.mobilePromo.text", formatArgs);
       promoParentElt.innerHTML = contents;
       // We manually manage the "click" event to open the promo links because
       // allowing the "text-link" widget handle it has 2 problems: (1) it only
       // supports button 0 and (2) it's tricky to intercept when it does the
       // open and auto-close the panel. (1) can probably be fixed, but (2) is
       // trickier without hard-coding here the knowledge of exactly what buttons
       // it does support.
       // So we allow left and middle clicks to open the link in a new tab and
--- a/browser/components/customizableui/content/panelUI.inc.xul
+++ b/browser/components/customizableui/content/panelUI.inc.xul
@@ -103,26 +103,28 @@
     </panelview>
 
     <panelview id="PanelUI-remotetabs" flex="1" class="PanelUI-subView">
       <label value="&appMenuRemoteTabs.label;" class="panel-subview-header"/>
       <vbox class="panel-subview-body">
         <!-- this widget has 3 boxes in the body, but only 1 is ever visible -->
         <!-- When Sync is ready to sync -->
         <vbox id="PanelUI-remotetabs-main" observes="sync-syncnow-state">
-          <toolbarbutton id="PanelUI-remotetabs-view-sidebar"
-                         class="subviewbutton"
-                         observes="viewTabsSidebar"
-                         label="&appMenuRemoteTabs.sidebar.label;"/>
-          <toolbarbutton id="PanelUI-remotetabs-syncnow"
-                         observes="sync-status"
-                         class="subviewbutton"
-                         oncommand="gSyncUI.doSync();"
-                         closemenu="none"/>
-          <menuseparator id="PanelUI-remotetabs-separator"/>
+          <vbox id="PanelUI-remotetabs-buttons">
+            <toolbarbutton id="PanelUI-remotetabs-view-sidebar"
+                           class="subviewbutton"
+                           observes="viewTabsSidebar"
+                           label="&appMenuRemoteTabs.sidebar.label;"/>
+            <toolbarbutton id="PanelUI-remotetabs-syncnow"
+                           observes="sync-status"
+                           class="subviewbutton"
+                           oncommand="gSyncUI.doSync();"
+                           closemenu="none"/>
+            <menuseparator id="PanelUI-remotetabs-separator"/>
+          </vbox>
           <deck id="PanelUI-remotetabs-deck">
             <!-- Sync is ready to Sync and the "tabs" engine is enabled -->
             <vbox id="PanelUI-remotetabs-tabspane">
               <vbox id="PanelUI-remotetabs-tabslist"
                     notabsforclientlabel="&appMenuRemoteTabs.notabs.label;"
                     />
             </vbox>
             <!-- Sync is ready to Sync but the "tabs" engine isn't enabled-->
@@ -144,19 +146,20 @@
               <!-- Show intentionally blank panel, see bug 1239845 -->
             </vbox>
             <!-- Sync has only 1 (ie, this) device connected -->
             <hbox id="PanelUI-remotetabs-nodevicespane" pack="center" flex="1">
               <vbox class="PanelUI-remotetabs-instruction-box">
                 <hbox pack="center">
                   <image class="fxaSyncIllustration" alt=""/>
                 </hbox>
-                <label class="PanelUI-remotetabs-instruction-label">&appMenuRemoteTabs.noclients.label;</label>
+                <label class="PanelUI-remotetabs-instruction-title">&appMenuRemoteTabs.noclients.title;</label>
+                <label class="PanelUI-remotetabs-instruction-label">&appMenuRemoteTabs.noclients.subtitle;</label>
                 <!-- The inner HTML for PanelUI-remotetabs-mobile-promo is built at runtime -->
-                <label id="PanelUI-remotetabs-mobile-promo"/>
+                <label id="PanelUI-remotetabs-mobile-promo" fxAccountsBrand="&syncBrand.fxAccount.label;"/>
               </vbox>
             </hbox>
           </deck>
         </vbox>
         <!-- a box to ensure contained boxes are centered horizonally -->
         <hbox pack="center" flex="1">
           <!-- When Sync is not configured -->
           <vbox id="PanelUI-remotetabs-setupsync"
--- a/browser/components/syncedtabs/SyncedTabsDeckView.js
+++ b/browser/components/syncedtabs/SyncedTabsDeckView.js
@@ -68,19 +68,22 @@ SyncedTabsDeckView.prototype = {
     let bundle = this._getBrowserBundle();
     let formatArgs = ["android", "ios"].map(os => {
       let link = this._doc.createElement("a");
       link.textContent = bundle.getString(`appMenuRemoteTabs.mobilePromo.${os}`)
       link.className = `${os}-link text-link`;
       link.setAttribute("href", "#");
       return link.outerHTML;
     });
+    let promoParentElt = this.container.querySelector(".device-promo");
+    let fxAccountsBrand = promoParentElt.getAttribute("fxAccountsBrand");
+    formatArgs.push(fxAccountsBrand);
     // Put it all together...
-    let contents = bundle.getFormattedString("appMenuRemoteTabs.mobilePromo", formatArgs);
-    this.container.querySelector(".device-promo").innerHTML = contents;
+    let contents = bundle.getFormattedString("appMenuRemoteTabs.mobilePromo.text", formatArgs);
+    promoParentElt.innerHTML = contents;
   },
 
   destroy() {
     this._tabListComponent.uninit();
     this.container.remove();
   },
 
   update(state) {
--- a/browser/components/syncedtabs/sidebar.xhtml
+++ b/browser/components/syncedtabs/sidebar.xhtml
@@ -5,16 +5,19 @@
 
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" [
   <!ENTITY % browserDTD SYSTEM "chrome://browser/locale/browser.dtd">
   %browserDTD;
   <!ENTITY % globalDTD
     SYSTEM "chrome://global/locale/global.dtd">
   %globalDTD;
+  <!ENTITY % syncBrandDTD
+    SYSTEM "chrome://browser/locale/syncBrand.dtd">
+  %syncBrandDTD;
 ]>
 <html xmlns="http://www.w3.org/1999/xhtml"
       xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
   <head>
     <script src="chrome://browser/content/syncedtabs/sidebar.js" type="application/javascript;version=1.8"></script>
     <script type="application/javascript" src="chrome://browser/content/utilityOverlay.js"/>
 
     <link rel="stylesheet" type="text/css" media="all" href="chrome://browser/skin/syncedtabs/sidebar.css"/>
@@ -72,18 +75,19 @@
         <div class="tabs-fetching sync-state">
           <!-- Show intentionally blank panel, see bug 1239845 -->
         </div>
         <div class="notAuthedInfo sync-state">
           <p>&syncedTabs.sidebar.notsignedin.label;</p>
           <p><a href="#" class="sync-prefs text-link">&fxaSignIn.label;</a></p>
         </div>
         <div class="singleDeviceInfo sync-state">
-          <p>&syncedTabs.sidebar.noclients.label;</p>
-          <p class="device-promo"></p>
+          <p>&syncedTabs.sidebar.noclients.title;</p>
+          <p>&syncedTabs.sidebar.noclients.subtitle;</p>
+          <p class="device-promo" fxAccountsBrand="&syncBrand.fxAccount.label;"></p>
         </div>
         <div class="tabs-disabled sync-state">
           <p>&syncedTabs.sidebar.tabsnotsyncing.label;</p>
           <p><a href="#" class="sync-prefs text-link">&syncedTabs.sidebar.openprefs.label;</a></p>
         </div>
       </div>
     </template>
 
--- a/browser/locales/en-US/chrome/browser/browser.dtd
+++ b/browser/locales/en-US/chrome/browser/browser.dtd
@@ -343,17 +343,18 @@ These should match what Safari and other
      the name of a device when that device has no open tabs -->
 <!ENTITY appMenuRemoteTabs.notabs.label "No open tabs">
 <!-- LOCALIZATION NOTE (appMenuRemoteTabs.tabsnotsyncing.label): This is shown
      when Sync is configured but syncing tabs is disabled. -->
 <!ENTITY appMenuRemoteTabs.tabsnotsyncing.label "Turn on tab syncing to view a list of tabs from your other devices.">
 <!-- LOCALIZATION NOTE (appMenuRemoteTabs.noclients.label): This is shown
      when Sync is configured but this appears to be the only device attached to
      the account. We also show links to download Firefox for android/ios. -->
-<!ENTITY appMenuRemoteTabs.noclients.label "Sign in to Firefox from your other devices to view their tabs here.">
+<!ENTITY appMenuRemoteTabs.noclients.title "No synced tabs… yet!">
+<!ENTITY appMenuRemoteTabs.noclients.subtitle "Want to see your tabs from other devices here?">
 <!ENTITY appMenuRemoteTabs.openprefs.label "Sync Preferences">
 <!ENTITY appMenuRemoteTabs.notsignedin.label "Sign in to view a list of tabs from your other devices.">
 <!ENTITY appMenuRemoteTabs.signin.label "Sign in to Sync">
 <!ENTITY appMenuRemoteTabs.sidebar.label "View Synced Tabs Sidebar">
 
 <!ENTITY customizeMenu.addToToolbar.label "Add to Toolbar">
 <!ENTITY customizeMenu.addToToolbar.accesskey "A">
 <!ENTITY customizeMenu.addToPanel.label "Add to Menu">
@@ -719,16 +720,18 @@ you can use these alternative items. Oth
      The word "toolbar" is appended automatically and should not be contained below! -->
 <!ENTITY tabsToolbar.label "Browser tabs">
 
 <!-- LOCALIZATION NOTE (syncTabsMenu3.label): This appears in the history menu -->
 <!ENTITY syncTabsMenu3.label     "Synced Tabs">
 
 <!ENTITY syncedTabs.sidebar.label              "Synced Tabs">
 <!ENTITY syncedTabs.sidebar.noclients.label    "Sign in to Firefox from your other devices to view their tabs here.">
+<!ENTITY syncedTabs.sidebar.noclients.title    "No synced tabs… yet!">
+<!ENTITY syncedTabs.sidebar.noclients.subtitle "Want to see your tabs from other devices here?">
 <!ENTITY syncedTabs.sidebar.notsignedin.label  "Sign in to view a list of tabs from your other devices.">
 <!ENTITY syncedTabs.sidebar.notabs.label       "No open tabs">
 <!ENTITY syncedTabs.sidebar.openprefs.label    "Open &syncBrand.shortName.label; Preferences">
 <!-- LOCALIZATION NOTE (syncedTabs.sidebar.tabsnotsyncing.label): This is shown
      when Sync is configured but syncing tabs is disabled. -->
 <!ENTITY syncedTabs.sidebar.tabsnotsyncing.label       "Turn on tab syncing to view a list of tabs from your other devices.">
 
 <!ENTITY syncedTabs.context.open.label                       "Open">
--- a/browser/locales/en-US/chrome/browser/browser.properties
+++ b/browser/locales/en-US/chrome/browser/browser.properties
@@ -681,24 +681,25 @@ appmenu.updateFailed.description = Backg
 appmenu.restartBrowserButton.label = Restart %S
 appmenu.downloadUpdateButton.label = Download Update
 
 # LOCALIZATION NOTE : FILE Reader View is a feature name and therefore typically used as a proper noun.
 
 readingList.promo.firstUse.readerView.title = Reader View
 readingList.promo.firstUse.readerView.body = Remove clutter so you can focus exactly on what you want to read.
 
-# LOCALIZATION NOTE (appMenuRemoteTabs.mobilePromo):
+# LOCALIZATION NOTE (appMenuRemoteTabs.mobilePromo.text):
 # %1$S will be replaced with a link, the text of which is
 # appMenuRemoteTabs.mobilePromo.android and the link will be to
 # https://www.mozilla.org/firefox/android/.
 # %2$S will be replaced with a link, the text of which is
 # appMenuRemoteTabs.mobilePromo.ios
 # and the link will be to https://www.mozilla.org/firefox/ios/.
-appMenuRemoteTabs.mobilePromo = Get %1$S or %2$S.
+# %3$S will be replace by the content of syncBrand.fxAccount.label (Firefox Account)
+appMenuRemoteTabs.mobilePromo.text = Download %1$S or %2$S and connect them to your %3$S.
 appMenuRemoteTabs.mobilePromo.android = Firefox for Android
 appMenuRemoteTabs.mobilePromo.ios = Firefox for iOS
 
 # LOCALIZATION NOTE (e10s.offerPopup.mainMessage
 #                    e10s.offerPopup.highlight1
 #                    e10s.offerPopup.highlight2
 #                    e10s.offerPopup.enableAndRestart.label
 #                    e10s.offerPopup.enableAndRestart.accesskey
--- a/browser/themes/shared/customizableui/panelUIOverlay.inc.css
+++ b/browser/themes/shared/customizableui/panelUIOverlay.inc.css
@@ -674,28 +674,33 @@ toolbarpaletteitem[place="palette"] > to
 #PanelUI-fxa-icon {
   list-style-image: url(chrome://browser/skin/sync-horizontalbar.png);
 }
 
 #PanelUI-remotetabs {
   --panel-ui-sync-illustration-height: 157.5px;
 }
 
+.PanelUI-remotetabs-instruction-title,
 .PanelUI-remotetabs-instruction-label,
 #PanelUI-remotetabs-mobile-promo {
   /* If you change the margin here, the min-height of the synced tabs panel
     (e.g. #PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync, etc) may
     need adjusting (see bug 1248506) */
   margin: 15px;
   text-align: center;
   text-shadow: none;
   max-width: 15em;
   color: GrayText;
 }
 
+.PanelUI-remotetabs-instruction-title {
+  font-size: 1.3em;
+}
+
 /* The boxes with "instructions" get extra top and bottom padding for space
    around the illustration and buttons */
 .PanelUI-remotetabs-instruction-box {
   /* If you change the padding here, the min-height of the synced tabs panel
     (e.g. #PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync, etc) may
     need adjusting (see bug 1248506) */
   padding-bottom: 30px;
   padding-top: 15px;
@@ -770,16 +775,20 @@ toolbarpaletteitem[place="palette"] > to
 /* Collapse the non-active vboxes in the remotetabs deck to use only the
    height the active box needs */
 #PanelUI-remotetabs-deck:not([selectedIndex="1"]) > #PanelUI-remotetabs-tabsdisabledpane,
 #PanelUI-remotetabs-deck:not([selectedIndex="2"]) > #PanelUI-remotetabs-fetching,
 #PanelUI-remotetabs-deck:not([selectedIndex="3"]) > #PanelUI-remotetabs-nodevicespane {
   visibility: collapse;
 }
 
+#PanelUI-remotetabs-main[devices-status="single"] > #PanelUI-remotetabs-buttons {
+  display: none;
+}
+
 #PanelUI-fxa-icon[syncstatus="active"] {
   list-style-image: url(chrome://browser/skin/syncProgress-horizontalbar.png);
 }
 
 #PanelUI-footer-fxa[fxastatus="migrate-signup"] > #PanelUI-fxa-status > #PanelUI-fxa-label,
 #PanelUI-footer-fxa[fxastatus="migrate-verify"] > #PanelUI-fxa-status > #PanelUI-fxa-label {
   list-style-image: url(chrome://browser/skin/warning.svg);
   -moz-image-region: auto;
--- a/devtools/client/inspector/test/browser.ini
+++ b/devtools/client/inspector/test/browser.ini
@@ -101,16 +101,17 @@ skip-if = (e10s && debug) # Bug 1250058 
 [browser_inspector_menu-03-paste-items.js]
 [browser_inspector_menu-04-use-in-console.js]
 [browser_inspector_menu-05-attribute-items.js]
 [browser_inspector_menu-06-other.js]
 [browser_inspector_navigation.js]
 [browser_inspector_pane-toggle-01.js]
 [browser_inspector_pane-toggle-02.js]
 [browser_inspector_pane-toggle-03.js]
+[browser_inspector_pane-toggle-04.js]
 [browser_inspector_picker-stop-on-destroy.js]
 [browser_inspector_picker-stop-on-tool-change.js]
 [browser_inspector_pseudoclass-lock.js]
 [browser_inspector_pseudoclass-menu.js]
 [browser_inspector_reload-01.js]
 [browser_inspector_reload-02.js]
 [browser_inspector_remove-iframe-during-load.js]
 [browser_inspector_search-01.js]
new file mode 100644
--- /dev/null
+++ b/devtools/client/inspector/test/browser_inspector_pane-toggle-04.js
@@ -0,0 +1,65 @@
+/* vim: set ft=javascript ts=2 et sw=2 tw=80: */
+/* Any copyright is dedicated to the Public Domain.
+   http://creativecommons.org/publicdomain/zero/1.0/ */
+"use strict";
+
+let { Toolbox } = require("devtools/client/framework/toolbox");
+
+// Test that the dimensions of the collapsed inspector panel are not modified
+// when switching from horizontal to vertical layout, which is mandatory to make
+// sure the panel remains visually hidden (using negative margins).
+
+add_task(function* () {
+  info("Set temporary preferences to ensure a small sidebar width.");
+  yield new Promise(resolve => {
+    let options = {"set": [
+      ["devtools.toolsidebar-width.inspector", 200]
+    ]};
+    SpecialPowers.pushPrefEnv(options, resolve);
+  });
+
+  let { inspector, toolbox } = yield openInspectorForURL("about:blank");
+  let button = inspector.panelDoc.getElementById("inspector-pane-toggle");
+  let panel = inspector.panelDoc.querySelector("#inspector-sidebar");
+
+  info("Changing toolbox host to a window.");
+  yield toolbox.switchHost(Toolbox.HostType.WINDOW);
+
+  let hostWindow = toolbox._host._window;
+  let originalWidth = hostWindow.outerWidth;
+  let originalHeight = hostWindow.outerHeight;
+
+  info("Resizing window to switch to the horizontal layout.");
+  hostWindow.resizeTo(800, 300);
+
+  // Check the sidebar is expanded when the test starts.
+  ok(!panel.hasAttribute("pane-collapsed"), "The panel is in expanded state");
+
+  info("Collapse the inspector sidebar.");
+  let onTransitionEnd = once(panel, "transitionend");
+  EventUtils.synthesizeMouseAtCenter(button, {type: "mousedown"},
+    inspector.panelDoc.defaultView);
+  yield onTransitionEnd;
+
+  ok(panel.hasAttribute("pane-collapsed"), "The panel is in collapsed state");
+  let currentPanelHeight = panel.getBoundingClientRect().height;
+  let currentPanelMarginBottom = panel.style.marginBottom;
+
+  info("Resizing window to switch to the vertical layout.");
+  hostWindow.resizeTo(300, 800);
+
+  // Check the panel is collapsed, and still has the same dimensions.
+  ok(panel.hasAttribute("pane-collapsed"), "The panel is still collapsed");
+  is(panel.getBoundingClientRect().height, currentPanelHeight,
+    "The panel height has not been modified when changing the layout.");
+  is(panel.style.marginBottom, currentPanelMarginBottom,
+    "The panel margin-bottom has not been modified when changing the layout.");
+
+  info("Restoring window original size.");
+  hostWindow.resizeTo(originalWidth, originalHeight);
+});
+
+registerCleanupFunction(function() {
+  // Restore the host type for other tests.
+  Services.prefs.clearUserPref("devtools.toolbox.host");
+});
--- a/devtools/client/locales/en-US/animationinspector.properties
+++ b/devtools/client/locales/en-US/animationinspector.properties
@@ -62,18 +62,18 @@ player.infiniteIterationCount=&#8734;
 # Unlike player.infiniteIterationCount, this string isn't used in HTML, but in
 # a tooltip.
 player.infiniteIterationCountText=∞
 
 # LOCALIZATION NOTE (player.animationIterationStartLabel):
 # This string is displayed in a tooltip that appears when hovering over
 # animations in the timeline. It is the label displayed before the animation
 # iterationStart value.
-# %1$S will be replaced by the original itaration start value
-# %2$S will be replaced by the actual time of itaration start
+# %1$S will be replaced by the original iteration start value
+# %2$S will be replaced by the actual time of iteration start
 player.animationIterationStartLabel=Iteration start: %1$S (%2$Ss)
 
 # LOCALIZATION NOTE (player.timeLabel):
 # This string is displayed in each animation player widget, to indicate either
 # how long (in seconds) the animation lasts, or what is the animation's current
 # time (in seconds too);
 player.timeLabel=%Ss
 
--- a/devtools/client/themes/animationinspector.css
+++ b/devtools/client/themes/animationinspector.css
@@ -334,20 +334,16 @@ body {
   border: 1px solid var(--timeline-border-color);
   /* Border-right is already handled by the gradient */
   border-width: 1px 0 1px 1px;
 
   /* The background color is set independently */
   background-color: var(--timeline-background-color);
 }
 
-.animation-timeline .animation .iterations.infinite {
-  border-right-width: 0;
-}
-
 .animation-timeline .animation .iterations.infinite::before,
 .animation-timeline .animation .iterations.infinite::after {
   content: "";
   position: absolute;
   top: 0;
   right: 0;
   width: 0;
   height: 0;
--- a/devtools/client/themes/widgets.css
+++ b/devtools/client/themes/widgets.css
@@ -75,17 +75,19 @@
     -moz-margin-start: 0;
     width: auto;
     min-width: 0;
 
     /* In some edge case the cursor is not changed to n-resize */
     cursor: n-resize;
   }
 
-  .devtools-responsive-container > .devtools-sidebar-tabs {
+  .devtools-responsive-container > .devtools-sidebar-tabs:not([pane-collapsed]) {
+    /* When the panel is collapsed min/max height should not be applied because
+       collapsing relies on negative margins, which implies constant height. */
     min-height: 35vh;
     max-height: 75vh;
   }
 
   .devtools-responsive-container .generic-toggled-pane {
     /* To hide generic-toggled-pane, negative margins are applied dynamically.
      * If a vertical layout, the pane is on the bottom and should be hidden
      * using negative bottom margin only.
--- a/mobile/android/base/AndroidManifest.xml.in
+++ b/mobile/android/base/AndroidManifest.xml.in
@@ -323,21 +323,16 @@
                   android:label="@string/sync_configure_engines_title_tabs"
                   android:authorities="@ANDROID_PACKAGE_NAME@.db.tabs"
                   android:exported="false"/>
 
         <provider android:name="org.mozilla.gecko.db.HomeProvider"
                   android:authorities="@ANDROID_PACKAGE_NAME@.db.home"
                   android:exported="false"/>
 
-        <provider android:name="org.mozilla.gecko.db.ReadingListProvider"
-                  android:authorities="@ANDROID_PACKAGE_NAME@.db.readinglist"
-                  android:label="@string/reading_list_title"
-                  android:exported="false"/>
-
         <provider android:name="org.mozilla.gecko.db.SearchHistoryProvider"
                   android:authorities="@ANDROID_PACKAGE_NAME@.db.searchhistory"
                   android:exported="false"/>
 
         <service
             android:exported="false"
             android:name="org.mozilla.gecko.updater.UpdateService"
             android:process="@MANGLED_ANDROID_PACKAGE_NAME@.UpdateService">
--- a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
+++ b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
@@ -52,16 +52,17 @@ import org.mozilla.gecko.menu.GeckoMenuI
 import org.mozilla.gecko.mozglue.ContextUtils;
 import org.mozilla.gecko.mozglue.ContextUtils.SafeIntent;
 import org.mozilla.gecko.overlays.ui.ShareDialog;
 import org.mozilla.gecko.permissions.Permissions;
 import org.mozilla.gecko.preferences.ClearOnShutdownPref;
 import org.mozilla.gecko.preferences.GeckoPreferences;
 import org.mozilla.gecko.prompts.Prompt;
 import org.mozilla.gecko.prompts.PromptListItem;
+import org.mozilla.gecko.reader.SavedReaderViewHelper;
 import org.mozilla.gecko.reader.ReaderModeUtils;
 import org.mozilla.gecko.reader.ReadingListHelper;
 import org.mozilla.gecko.restrictions.Restrictable;
 import org.mozilla.gecko.restrictions.RestrictedProfileConfiguration;
 import org.mozilla.gecko.restrictions.Restrictions;
 import org.mozilla.gecko.search.SearchEngineManager;
 import org.mozilla.gecko.sync.repositories.android.FennecTabsRepository;
 import org.mozilla.gecko.tabqueue.TabQueueHelper;
@@ -177,17 +178,16 @@ public class BrowserApp extends GeckoApp
                         implements TabsPanel.TabsLayoutChangeListener,
                                    PropertyAnimator.PropertyAnimationListener,
                                    View.OnKeyListener,
                                    LayerView.DynamicToolbarListener,
                                    BrowserSearch.OnSearchListener,
                                    BrowserSearch.OnEditSuggestionListener,
                                    OnUrlOpenListener,
                                    OnUrlOpenInBackgroundListener,
-                                   ReadingListHelper.OnReadingListEventListener,
                                    AnchoredPopup.OnVisibilityChangeListener,
                                    ActionModeCompat.Presenter,
                                    LayoutInflater.Factory {
     private static final String LOGTAG = "GeckoBrowserApp";
 
     private static final int TABS_ANIMATION_DURATION = 450;
 
     public static final String GUEST_BROWSING_ARG = "--guest";
@@ -358,22 +358,16 @@ public class BrowserApp extends GeckoApp
                 tab.loadFavicon();
                 break;
             case BOOKMARK_ADDED:
                 showBookmarkAddedSnackbar();
                 break;
             case BOOKMARK_REMOVED:
                 showBookmarkRemovedSnackbar();
                 break;
-            case READING_LIST_ADDED:
-                onAddedToReadingList(tab.getURL());
-                break;
-            case READING_LIST_REMOVED:
-                onRemovedFromReadingList(tab.getURL());
-                break;
 
             case UNSELECTED:
                 // We receive UNSELECTED immediately after the SELECTED listeners run
                 // so we are ensured that the unselectedTabEditingText has not changed.
                 if (tab.isEditing()) {
                     // Copy to avoid constructing new objects.
                     tab.getEditingState().copyFrom(mLastTabEditingState);
                 }
@@ -442,48 +436,16 @@ public class BrowserApp extends GeckoApp
                 getResources().getString(R.string.bookmark_options),
                 callback);
     }
 
     private void showBookmarkRemovedSnackbar() {
         SnackbarHelper.showSnackbar(this, getResources().getString(R.string.bookmark_removed), Snackbar.LENGTH_LONG);
     }
 
-    private void showSwitchToReadingListSnackbar(String message) {
-        final SnackbarHelper.SnackbarCallback callback = new SnackbarHelper.SnackbarCallback() {
-            @Override
-            public void onClick(View v) {
-                Telemetry.sendUIEvent(TelemetryContract.Event.SHOW, TelemetryContract.Method.TOAST, "reading_list");
-
-                final String aboutPageUrl = AboutPages.getURLForBuiltinPanelType(PanelType.READING_LIST);
-                Tabs.getInstance().loadUrlInTab(aboutPageUrl);
-            }
-        };
-
-        SnackbarHelper.showSnackbarWithAction(this,
-                message,
-                Snackbar.LENGTH_LONG,
-                getResources().getString(R.string.switch_button_message),
-                callback);
-    }
-
-    public void onAddedToReadingList(String url) {
-        showSwitchToReadingListSnackbar(getResources().getString(R.string.reading_list_added));
-    }
-
-    public void onAlreadyInReadingList(String url) {
-        showSwitchToReadingListSnackbar(getResources().getString(R.string.reading_list_duplicate));
-    }
-
-    public void onRemovedFromReadingList(String url) {
-        SnackbarHelper.showSnackbar(this,
-                getResources().getString(R.string.reading_list_removed),
-                Snackbar.LENGTH_LONG);
-    }
-
     @Override
     public boolean onKey(View v, int keyCode, KeyEvent event) {
         if (AndroidGamepadManager.handleKeyEvent(event)) {
             return true;
         }
 
         // Global onKey handler. This is called if the focused UI doesn't
         // handle the key event, and before Gecko swallows the events.
@@ -730,17 +692,17 @@ public class BrowserApp extends GeckoApp
         // Init suggested sites engine in BrowserDB.
         final SuggestedSites suggestedSites = new SuggestedSites(appContext, distribution);
         final BrowserDB db = getProfile().getDB();
         db.setSuggestedSites(suggestedSites);
 
         JavaAddonManager.getInstance().init(appContext);
         mSharedPreferencesHelper = new SharedPreferencesHelper(appContext);
         mOrderedBroadcastHelper = new OrderedBroadcastHelper(appContext);
-        mReadingListHelper = new ReadingListHelper(appContext, getProfile(), this);
+        mReadingListHelper = new ReadingListHelper(appContext, getProfile());
         mAccountsHelper = new AccountsHelper(appContext, getProfile());
 
         final AdjustHelperInterface adjustHelper = AdjustConstants.getAdjustHelper();
         adjustHelper.onCreate(this, AdjustConstants.MOZ_INSTALL_TRACKING_ADJUST_SDK_APP_TOKEN);
 
         // Adjust stores enabled state so this is only necessary because users may have set
         // their data preferences before this feature was implemented and we need to respect
         // those before upload can occur in Adjust.onResume.
@@ -1776,17 +1738,16 @@ public class BrowserApp extends GeckoApp
                 overridePendingTransition(0, 0);
             }
 
         } else if ("Telemetry:Gather".equals(event)) {
             final BrowserDB db = getProfile().getDB();
             final ContentResolver cr = getContentResolver();
             Telemetry.addToHistogram("PLACES_PAGES_COUNT", db.getCount(cr, "history"));
             Telemetry.addToHistogram("FENNEC_BOOKMARKS_COUNT", db.getCount(cr, "bookmarks"));
-            Telemetry.addToHistogram("FENNEC_READING_LIST_COUNT", db.getReadingListAccessor().getCount(cr));
             Telemetry.addToHistogram("BROWSER_IS_USER_DEFAULT", (isDefaultBrowser(Intent.ACTION_VIEW) ? 1 : 0));
             Telemetry.addToHistogram("FENNEC_CUSTOM_HOMEPAGE", (TextUtils.isEmpty(getHomepage()) ? 0 : 1));
             final SharedPreferences prefs = GeckoSharedPrefs.forProfile(getContext());
             final boolean hasCustomHomepanels = prefs.contains(HomeConfigPrefsBackend.PREFS_CONFIG_KEY) || prefs.contains(HomeConfigPrefsBackend.PREFS_CONFIG_KEY_OLD);
             Telemetry.addToHistogram("FENNEC_HOMEPANELS_CUSTOM", hasCustomHomepanels ? 1 : 0);
 
             if (Versions.feature16Plus) {
                 Telemetry.addToHistogram("BROWSER_IS_ASSIST_DEFAULT", (isDefaultBrowser(Intent.ACTION_ASSIST) ? 1 : 0));
@@ -3182,17 +3143,16 @@ public class BrowserApp extends GeckoApp
         if (!GeckoThread.isRunning()) {
             aMenu.findItem(R.id.settings).setEnabled(false);
             aMenu.findItem(R.id.help).setEnabled(false);
         }
 
         Tab tab = Tabs.getInstance().getSelectedTab();
         // Unlike other menu items, the bookmark star is not tinted. See {@link ThemedImageButton#setTintedDrawable}.
         final MenuItem bookmark = aMenu.findItem(R.id.bookmark);
-        final MenuItem reader = aMenu.findItem(R.id.reading_list);
         final MenuItem back = aMenu.findItem(R.id.back);
         final MenuItem forward = aMenu.findItem(R.id.forward);
         final MenuItem share = aMenu.findItem(R.id.share);
         final MenuItem quickShare = aMenu.findItem(R.id.quickshare);
         final MenuItem bookmarksList = aMenu.findItem(R.id.bookmarks_list);
         final MenuItem historyList = aMenu.findItem(R.id.history_list);
         final MenuItem saveAsPDF = aMenu.findItem(R.id.save_as_pdf);
         final MenuItem print = aMenu.findItem(R.id.print);
@@ -3210,17 +3170,16 @@ public class BrowserApp extends GeckoApp
                                 HardwareUtils.isTelevision() ||
                                 !PrefUtils.getStringSet(GeckoSharedPrefs.forProfile(this),
                                                         ClearOnShutdownPref.PREF,
                                                         new HashSet<String>()).isEmpty();
         aMenu.findItem(R.id.quit).setVisible(visible);
 
         if (tab == null || tab.getURL() == null) {
             bookmark.setEnabled(false);
-            reader.setEnabled(false);
             back.setEnabled(false);
             forward.setEnabled(false);
             share.setEnabled(false);
             quickShare.setEnabled(false);
             saveAsPDF.setEnabled(false);
             print.setEnabled(false);
             findInPage.setEnabled(false);
 
@@ -3234,34 +3193,24 @@ public class BrowserApp extends GeckoApp
             MenuUtils.safeSetEnabled(aMenu, R.id.add_search_engine, false);
             MenuUtils.safeSetEnabled(aMenu, R.id.add_to_launcher, false);
 
             return true;
         }
 
         final boolean inGuestMode = GeckoProfile.get(this).inGuestMode();
 
-        final boolean isAboutReader = AboutPages.isAboutReader(tab.getURL());
-        bookmark.setEnabled(!isAboutReader);
         bookmark.setVisible(!inGuestMode);
         bookmark.setCheckable(true);
         bookmark.setChecked(tab.isBookmark());
         bookmark.setTitle(resolveBookmarkTitleID(tab.isBookmark()));
 
-        reader.setEnabled(isAboutReader || !AboutPages.isAboutPage(tab.getURL()));
-        reader.setVisible(!inGuestMode);
-        reader.setCheckable(true);
-        final boolean isPageInReadingList = tab.isInReadingList();
-        reader.setChecked(isPageInReadingList);
-        reader.setTitle(resolveReadingListTitleID(isPageInReadingList));
-
         if (Versions.feature11Plus) {
             // We don't use icons on GB builds so not resolving icons might conserve resources.
             bookmark.setIcon(resolveBookmarkIconID(tab.isBookmark()));
-            reader.setIcon(resolveReadingListIconID(isPageInReadingList));
         }
 
         back.setEnabled(tab.canDoBack());
         forward.setEnabled(tab.canDoForward());
         desktopMode.setChecked(tab.getDesktopMode());
 
         View backButtonView = MenuItemCompat.getActionView(back);
 
@@ -3430,24 +3379,16 @@ public class BrowserApp extends GeckoApp
             return R.drawable.ic_menu_bookmark_add;
         }
     }
 
     private int resolveBookmarkTitleID(final boolean isBookmark) {
         return (isBookmark ? R.string.bookmark_remove : R.string.bookmark);
     }
 
-    private int resolveReadingListIconID(final boolean isInReadingList) {
-        return (isInReadingList ? R.drawable.ic_menu_reader_remove : R.drawable.ic_menu_reader_add);
-    }
-
-    private int resolveReadingListTitleID(final boolean isInReadingList) {
-        return (isInReadingList ? R.string.reading_list_remove : R.string.overlay_share_reading_list_btn_label);
-    }
-
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
         Tab tab = null;
         Intent intent = null;
 
         final int itemId = item.getItemId();
 
         // Track the menu action. We don't know much about the context, but we can use this to determine
@@ -3480,40 +3421,16 @@ public class BrowserApp extends GeckoApp
                         // We don't use icons on GB builds so not resolving icons might conserve resources.
                         item.setIcon(resolveBookmarkIconID(true));
                     }
                 }
             }
             return true;
         }
 
-        if (itemId == R.id.reading_list) {
-            tab = Tabs.getInstance().getSelectedTab();
-            if (tab != null) {
-                if (item.isChecked()) {
-                    Telemetry.sendUIEvent(TelemetryContract.Event.UNSAVE, TelemetryContract.Method.MENU, "reading_list");
-                    tab.removeFromReadingList();
-                    item.setTitle(resolveReadingListTitleID(false));
-                    if (Versions.feature11Plus) {
-                        // We don't use icons on GB builds so not resolving icons might conserve resources.
-                        item.setIcon(resolveReadingListIconID(false));
-                    }
-                } else {
-                    Telemetry.sendUIEvent(TelemetryContract.Event.SAVE, TelemetryContract.Method.MENU, "reading_list");
-                    tab.addToReadingList();
-                    item.setTitle(resolveReadingListTitleID(true));
-                    if (Versions.feature11Plus) {
-                        // We don't use icons on GB builds so not resolving icons might conserve resources.
-                        item.setIcon(resolveReadingListIconID(true));
-                    }
-                }
-            }
-            return true;
-        }
-
         if (itemId == R.id.share) {
             tab = Tabs.getInstance().getSelectedTab();
             if (tab != null) {
                 String url = tab.getURL();
                 if (url != null) {
                     if (AboutPages.isAboutReader(url)) {
                         url = ReaderModeUtils.getUrlFromAboutReader(url);
                     }
@@ -3881,40 +3798,48 @@ public class BrowserApp extends GeckoApp
 
     // HomePager.OnUrlOpenListener
     @Override
     public void onUrlOpen(String url, EnumSet<OnUrlOpenListener.Flags> flags) {
         if (flags.contains(OnUrlOpenListener.Flags.OPEN_WITH_INTENT)) {
             Intent intent = new Intent(Intent.ACTION_VIEW);
             intent.setData(Uri.parse(url));
             startActivity(intent);
-        } else if (!maybeSwitchToTab(url, flags)) {
-            openUrlAndStopEditing(url);
-            clearSelectedTabApplicationId();
+        } else {
+            final String pageURL = SavedReaderViewHelper.getReaderURLIfCached(getContext(), url);
+
+            if (!maybeSwitchToTab(pageURL, flags)) {
+                openUrlAndStopEditing(pageURL);
+                clearSelectedTabApplicationId();
+            }
         }
     }
 
     // HomePager.OnUrlOpenInBackgroundListener
     @Override
     public void onUrlOpenInBackground(final String url, EnumSet<OnUrlOpenInBackgroundListener.Flags> flags) {
         if (url == null) {
             throw new IllegalArgumentException("url must not be null");
         }
         if (flags == null) {
             throw new IllegalArgumentException("flags must not be null");
         }
 
+        // We only use onUrlOpenInBackgroundListener for the homepanel context menus, hence
+        // we should always be checking whether we want the readermode version
+        final String pageURL = SavedReaderViewHelper.getReaderURLIfCached(getContext(), url);
+
         final boolean isPrivate = flags.contains(OnUrlOpenInBackgroundListener.Flags.PRIVATE);
 
         int loadFlags = Tabs.LOADURL_NEW_TAB | Tabs.LOADURL_BACKGROUND;
         if (isPrivate) {
             loadFlags |= Tabs.LOADURL_PRIVATE;
         }
 
-        final Tab newTab = Tabs.getInstance().loadUrl(url, loadFlags);
+        final Tab newTab = Tabs.getInstance().loadUrl(pageURL, loadFlags);
 
         // We switch to the desired tab by unique ID, which closes any window
         // for a race between opening the tab and closing it, and switching to
         // it. We could also switch to the Tab explicitly, but we don't want to
         // hold a reference to the Tab itself in the anonymous listener class.
         final int newTabId = newTab.getId();
 
         final SnackbarHelper.SnackbarCallback callback = new SnackbarHelper.SnackbarCallback() {
--- a/mobile/android/base/java/org/mozilla/gecko/FilePickerResultHandler.java
+++ b/mobile/android/base/java/org/mozilla/gecko/FilePickerResultHandler.java
@@ -86,32 +86,31 @@ class FilePickerResultHandler implements
         if ("file".equals(uri.getScheme())) {
             String path = uri.getPath();
             sendResult(path == null ? "" : path);
             return;
         }
 
         final FragmentActivity fa = (FragmentActivity) GeckoAppShell.getGeckoInterface().getActivity();
         final LoaderManager lm = fa.getSupportLoaderManager();
+
         // Finally, Video pickers and some file pickers may return a content provider.
-        Cursor cursor = null;
-        try {
-            // Try a query to make sure the expected columns exist
-            final ContentResolver cr = fa.getContentResolver();
-            cursor = cr.query(uri, new String[] { MediaStore.Video.Media.DATA }, null, null, null);
-
-            int index = cursor.getColumnIndex(MediaStore.Video.Media.DATA);
-            if (index >= 0) {
-                lm.initLoader(intent.hashCode(), null, new VideoLoaderCallbacks(uri));
-                return;
-            }
-        } catch(Exception ex) {
-            // We'll try a different loader below
-        } finally {
-            if (cursor != null) {
+        final ContentResolver cr = fa.getContentResolver();
+        final Cursor cursor = cr.query(uri, new String[] { MediaStore.Video.Media.DATA }, null, null, null);
+        if (cursor != null) {
+            try {
+                // Try a query to make sure the expected columns exist
+                int index = cursor.getColumnIndex(MediaStore.Video.Media.DATA);
+                if (index >= 0) {
+                    lm.initLoader(intent.hashCode(), null, new VideoLoaderCallbacks(uri));
+                    return;
+                }
+            } catch (Exception ex) {
+                // We'll try a different loader below
+            } finally {
                 cursor.close();
             }
         }
 
         lm.initLoader(uri.hashCode(), null, new FileLoaderCallbacks(uri, cacheDir, tabId));
     }
 
     public String generateImageName() {
@@ -210,21 +209,22 @@ class FilePickerResultHandler implements
                     String mimeType = cr.getType(uri);
                     fileExt = "." + GeckoAppShell.getExtensionFromMimeType(mimeType);
                 } else {
                     fileExt = name.substring(period);
                     fileName += name.substring(0, period);
                 }
 
                 // Now write the data to the temp file
+                FileOutputStream fos = null;
                 try {
                     cacheDir.mkdir();
 
                     File file = File.createTempFile(fileName, fileExt, cacheDir);
-                    FileOutputStream fos = new FileOutputStream(file);
+                    fos = new FileOutputStream(file);
                     InputStream is = cr.openInputStream(uri);
                     byte[] buf = new byte[4096];
                     int len = is.read(buf);
                     while (len != -1) {
                         fos.write(buf, 0, len);
                         len = is.read(buf);
                     }
                     fos.close();
@@ -232,16 +232,22 @@ class FilePickerResultHandler implements
                     tempFile = file.getAbsolutePath();
                     sendResult((tempFile == null) ? "" : tempFile);
 
                     if (tabId > -1 && !TextUtils.isEmpty(tempFile)) {
                         Tabs.registerOnTabsChangedListener(this);
                     }
                 } catch(IOException ex) {
                     Log.i(LOGTAG, "Error writing file", ex);
+                } finally {
+                    if (fos != null) {
+                        try {
+                            fos.close();
+                        } catch (IOException e) { /* not much to do here */ }
+                    }
                 }
             } else {
                 sendResult("");
             }
         }
 
         @Override
         public void onLoaderReset(Loader<Cursor> loader) { }
--- a/mobile/android/base/java/org/mozilla/gecko/GeckoProfile.java
+++ b/mobile/android/base/java/org/mozilla/gecko/GeckoProfile.java
@@ -456,17 +456,16 @@ public final class GeckoProfile {
         mDB = dbFactory.get(profileName, mProfileDir);
     }
 
     @RobocopTarget
     public BrowserDB getDB() {
         return mDB;
     }
 
-
     // Warning, Changing the lock file state from outside apis will cause this to become out of sync
     public boolean locked() {
         if (mLocked != LockState.UNDEFINED) {
             return mLocked == LockState.LOCKED;
         }
 
         boolean profileExists;
         synchronized (this) {
--- a/mobile/android/base/java/org/mozilla/gecko/Tab.java
+++ b/mobile/android/base/java/org/mozilla/gecko/Tab.java
@@ -20,16 +20,17 @@ import org.mozilla.gecko.db.BrowserDB;
 import org.mozilla.gecko.db.URLMetadata;
 import org.mozilla.gecko.favicons.Favicons;
 import org.mozilla.gecko.favicons.LoadFaviconTask;
 import org.mozilla.gecko.favicons.OnFaviconLoadedListener;
 import org.mozilla.gecko.favicons.RemoteFavicon;
 import org.mozilla.gecko.gfx.BitmapUtils;
 import org.mozilla.gecko.gfx.Layer;
 import org.mozilla.gecko.reader.ReaderModeUtils;
+import org.mozilla.gecko.reader.ReadingListHelper;
 import org.mozilla.gecko.toolbar.BrowserToolbar.TabEditingState;
 import org.mozilla.gecko.util.ThreadUtils;
 
 import android.content.ContentResolver;
 import android.content.Context;
 import android.graphics.Bitmap;
 import android.graphics.Color;
 import android.graphics.drawable.BitmapDrawable;
@@ -59,17 +60,16 @@ public class Tab {
     private boolean mHasFeeds;
     private boolean mHasOpenSearch;
     private final SiteIdentity mSiteIdentity;
     private SiteLogins mSiteLogins;
     private BitmapDrawable mThumbnail;
     private final int mParentId;
     private final boolean mExternal;
     private boolean mBookmark;
-    private boolean mIsInReadingList;
     private int mFaviconLoadId;
     private String mContentType;
     private boolean mHasTouchListeners;
     private ZoomConstraints mZoomConstraints;
     private boolean mIsRTL;
     private final ArrayList<View> mPluginViews;
     private final HashMap<Object, Layer> mPluginLayers;
     private int mBackgroundColor;
@@ -132,17 +132,16 @@ public class Tab {
         mLoadProgress = LOAD_PROGRESS_INIT;
 
         // At startup, the background is set to a color specified by LayerView
         // when the LayerView is created. Shortly after, this background color
         // will be used before the tab's content is shown.
         mBackgroundColor = DEFAULT_BACKGROUND_COLOR;
 
         updateBookmark();
-        updateReadingList();
     }
 
     private ContentResolver getContentResolver() {
         return mAppContext.getContentResolver();
     }
 
     public void onDestroy() {
         Tabs.getInstance().notifyListeners(this, Tabs.TabEvents.CLOSED);
@@ -288,20 +287,16 @@ public class Tab {
     public SiteLogins getSiteLogins() {
         return mSiteLogins;
     }
 
     public boolean isBookmark() {
         return mBookmark;
     }
 
-    public boolean isInReadingList() {
-        return mIsInReadingList;
-    }
-
     public boolean isExternal() {
         return mExternal;
     }
 
     public synchronized void updateURL(String url) {
         if (url != null && url.length() > 0) {
             mUrl = url;
         }
@@ -523,100 +518,64 @@ public class Tab {
 
         ThreadUtils.postToBackgroundThread(new Runnable() {
             @Override
             public void run() {
                 final String url = getURL();
                 if (url == null) {
                     return;
                 }
-
-                mBookmark = mDB.isBookmark(getContentResolver(), url);
-                Tabs.getInstance().notifyListeners(Tab.this, Tabs.TabEvents.MENU_UPDATED);
-            }
-        });
-    }
+                final String pageUrl = ReaderModeUtils.stripAboutReaderUrl(url);
 
-    void updateReadingList() {
-        if (getURL() == null) {
-            return;
-        }
-
-        ThreadUtils.postToBackgroundThread(new Runnable() {
-            @Override
-            public void run() {
-                final String url = getURL();
-                if (url == null) {
-                    return;
-                }
-
-                mIsInReadingList = mDB.getReadingListAccessor().isReadingListItem(getContentResolver(), url);
+                mBookmark = mDB.isBookmark(getContentResolver(), pageUrl);
                 Tabs.getInstance().notifyListeners(Tab.this, Tabs.TabEvents.MENU_UPDATED);
             }
         });
     }
 
     public void addBookmark() {
+        final String url = getURL();
+        if (url == null) {
+            return;
+        }
+
+        final String pageUrl = ReaderModeUtils.stripAboutReaderUrl(getURL());
+
         ThreadUtils.postToBackgroundThread(new Runnable() {
             @Override
             public void run() {
-                String url = getURL();
-                if (url == null)
-                    return;
-
-                mDB.addBookmark(getContentResolver(), mTitle, url);
+                mDB.addBookmark(getContentResolver(), mTitle, pageUrl);
                 Tabs.getInstance().notifyListeners(Tab.this, Tabs.TabEvents.BOOKMARK_ADDED);
             }
         });
+
+        if (AboutPages.isAboutReader(url)) {
+            ReadingListHelper.cacheReaderItem(pageUrl, mAppContext);
+        }
     }
 
     public void removeBookmark() {
+        final String url = getURL();
+        if (url == null) {
+            return;
+        }
+
+        final String pageUrl = ReaderModeUtils.stripAboutReaderUrl(getURL());
+
         ThreadUtils.postToBackgroundThread(new Runnable() {
             @Override
             public void run() {
-                String url = getURL();
-                if (url == null)
-                    return;
-
-                mDB.removeBookmarksWithURL(getContentResolver(), url);
+                mDB.removeBookmarksWithURL(getContentResolver(), pageUrl);
                 Tabs.getInstance().notifyListeners(Tab.this, Tabs.TabEvents.BOOKMARK_REMOVED);
             }
         });
-    }
 
-    public void addToReadingList() {
-        ThreadUtils.postToBackgroundThread(new Runnable() {
-            @Override
-            public void run() {
-                String url = getURL();
-                if (url == null) {
-                    return;
-                }
-
-                mDB.getReadingListAccessor().addBasicReadingListItem(getContentResolver(), url, mTitle);
-                Tabs.getInstance().notifyListeners(Tab.this, Tabs.TabEvents.READING_LIST_ADDED);
-            }
-        });
-    }
-
-    public void removeFromReadingList() {
-        ThreadUtils.postToBackgroundThread(new Runnable() {
-            @Override
-            public void run() {
-                String url = getURL();
-                if (url == null) {
-                    return;
-                }
-                if (AboutPages.isAboutReader(url)) {
-                    url = ReaderModeUtils.getUrlFromAboutReader(url);
-                }
-                mDB.getReadingListAccessor().removeReadingListItemWithURL(getContentResolver(), url);
-                Tabs.getInstance().notifyListeners(Tab.this, Tabs.TabEvents.READING_LIST_REMOVED);
-            }
-        });
+        // We need to ensure we remove readercached items here - we could have switched out of readermode
+        // before unbookmarking, so we don't necessarily have an about:reader URL here.
+        ReadingListHelper.removeCachedReaderItem(pageUrl, mAppContext);
     }
 
     public boolean isEnteringReaderMode() {
         return mEnteringReaderMode;
     }
 
     public void doReload(boolean bypassCache) {
         GeckoAppShell.notifyObservers("Session:Reload", "{\"bypassCache\":" + String.valueOf(bypassCache) + "}");
@@ -660,17 +619,16 @@ public class Tab {
         mHistoryIndex = message.getInt("historyIndex");
         mHistorySize = message.getInt("historySize");
         mCanDoBack = message.getBoolean("canGoBack");
         mCanDoForward = message.getBoolean("canGoForward");
 
         if (!TextUtils.equals(oldUrl, uri)) {
             updateURL(uri);
             updateBookmark();
-            updateReadingList();
             if (!sameDocument) {
                 // We can unconditionally clear the favicon and title here: we
                 // already filtered both cases in which this was a (pseudo-)
                 // spurious location change, so we're definitely loading a new
                 // page.
                 clearFavicon();
 
                 // Load local static Favicons immediately
--- a/mobile/android/base/java/org/mozilla/gecko/Tabs.java
+++ b/mobile/android/base/java/org/mozilla/gecko/Tabs.java
@@ -69,17 +69,16 @@ public class Tabs implements GeckoEventL
 
     public static final int INVALID_TAB_ID = -1;
 
     private static final AtomicInteger sTabId = new AtomicInteger(0);
     private volatile boolean mInitialTabsAdded;
 
     private Context mAppContext;
     private ContentObserver mBookmarksContentObserver;
-    private ContentObserver mReadingListContentObserver;
     private PersistTabsRunnable mPersistTabsRunnable;
 
     private static class PersistTabsRunnable implements Runnable {
         private final BrowserDB db;
         private final Context context;
         private final Iterable<Tab> tabs;
 
         public PersistTabsRunnable(final Context context, Iterable<Tab> tabsInOrder) {
@@ -146,24 +145,16 @@ public class Tabs implements GeckoEventL
         // The listener will run on the background thread (see 2nd argument).
         mAccountManager.addOnAccountsUpdatedListener(mAccountListener, ThreadUtils.getBackgroundHandler(), false);
 
         if (mBookmarksContentObserver != null) {
             // It's safe to use the db here since we aren't doing any I/O.
             final GeckoProfile profile = GeckoProfile.get(context);
             profile.getDB().registerBookmarkObserver(getContentResolver(), mBookmarksContentObserver);
         }
-
-        if (mReadingListContentObserver != null) {
-            // It's safe to use the db here since we aren't doing any I/O.
-            final GeckoProfile profile = GeckoProfile.get(context);
-            profile.getDB().getReadingListAccessor().registerContentObserver(
-                    mAppContext, mReadingListContentObserver);
-        }
-
     }
 
     /**
      * Gets the tab count corresponding to the private state of the selected
      * tab.
      *
      * If the selected tab is a non-private tab, this will return the number of
      * non-private tabs; likewise, if this is a private tab, this will return
@@ -206,41 +197,21 @@ public class Tabs implements GeckoEventL
             };
 
             // It's safe to use the db here since we aren't doing any I/O.
             final GeckoProfile profile = GeckoProfile.get(mAppContext);
             profile.getDB().registerBookmarkObserver(getContentResolver(), mBookmarksContentObserver);
         }
     }
 
-    // Must be synchronized to avoid racing on mReadingListContentObserver.
-    private void lazyRegisterReadingListObserver() {
-        if (mReadingListContentObserver == null) {
-            mReadingListContentObserver = new ContentObserver(null) {
-                @Override
-                public void onChange(final boolean selfChange) {
-                    for (final Tab tab : mOrder) {
-                        tab.updateReadingList();
-                    }
-                }
-            };
-
-            // It's safe to use the db here since we aren't doing any I/O.
-            final GeckoProfile profile = GeckoProfile.get(mAppContext);
-            profile.getDB().getReadingListAccessor().registerContentObserver(
-                    mAppContext, mReadingListContentObserver);
-        }
-    }
-
     private Tab addTab(int id, String url, boolean external, int parentId, String title, boolean isPrivate, int tabIndex) {
         final Tab tab = isPrivate ? new PrivateTab(mAppContext, id, url, external, parentId, title) :
                                     new Tab(mAppContext, id, url, external, parentId, title);
         synchronized (this) {
             lazyRegisterBookmarkObserver();
-            lazyRegisterReadingListObserver();
             mTabs.put(id, tab);
 
             if (tabIndex > -1) {
                 mOrder.add(tabIndex, tab);
             } else {
                 mOrder.add(tab);
             }
         }
@@ -641,18 +612,16 @@ public class Tabs implements GeckoEventL
         PAGE_SHOW,
         LINK_FEED,
         SECURITY_CHANGE,
         DESKTOP_MODE_CHANGE,
         VIEWPORT_CHANGE,
         RECORDING_CHANGE,
         BOOKMARK_ADDED,
         BOOKMARK_REMOVED,
-        READING_LIST_ADDED,
-        READING_LIST_REMOVED,
         AUDIO_PLAYING_CHANGE,
     }
 
     public void notifyListeners(Tab tab, TabEvents msg) {
         notifyListeners(tab, msg, "");
     }
 
     public void notifyListeners(final Tab tab, final TabEvents msg, final Object data) {
--- a/mobile/android/base/java/org/mozilla/gecko/db/BrowserContract.java
+++ b/mobile/android/base/java/org/mozilla/gecko/db/BrowserContract.java
@@ -45,16 +45,17 @@ public class BrowserContract {
     public static final String PARAM_SUGGESTEDSITES_LIMIT = "suggestedsites_limit";
     public static final String PARAM_IS_SYNC = "sync";
     public static final String PARAM_SHOW_DELETED = "show_deleted";
     public static final String PARAM_IS_TEST = "test";
     public static final String PARAM_INSERT_IF_NEEDED = "insert_if_needed";
     public static final String PARAM_INCREMENT_VISITS = "increment_visits";
     public static final String PARAM_EXPIRE_PRIORITY = "priority";
     public static final String PARAM_DATASET_ID = "dataset_id";
+    public static final String PARAM_GROUP_BY = "group_by";
 
     static public enum ExpirePriority {
         NORMAL,
         AGGRESSIVE
     }
 
     static public String getFrecencySortOrder(boolean includesBookmarks, boolean asc) {
         final String age = "(" + Combined.DATE_LAST_VISITED + " - " + System.currentTimeMillis() + ") / 86400000";
@@ -145,31 +146,35 @@ public class BrowserContract {
     @RobocopTarget
     public static final class Bookmarks implements CommonColumns, URLColumns, FaviconColumns, SyncColumns {
         private Bookmarks() {}
 
         public static final String TABLE_NAME = "bookmarks";
 
         public static final String VIEW_WITH_FAVICONS = "bookmarks_with_favicons";
 
+        public static final String VIEW_WITH_ANNOTATIONS = "bookmarks_with_annotations";
+
         public static final int FIXED_ROOT_ID = 0;
         public static final int FAKE_DESKTOP_FOLDER_ID = -1;
         public static final int FIXED_READING_LIST_ID = -2;
         public static final int FIXED_PINNED_LIST_ID = -3;
         public static final int FIXED_SCREENSHOT_FOLDER_ID = -4;
+        public static final int FAKE_READINGLIST_SMARTFOLDER_ID = -5;
 
         public static final String MOBILE_FOLDER_GUID = "mobile";
         public static final String PLACES_FOLDER_GUID = "places";
         public static final String MENU_FOLDER_GUID = "menu";
         public static final String TAGS_FOLDER_GUID = "tags";
         public static final String TOOLBAR_FOLDER_GUID = "toolbar";
         public static final String UNFILED_FOLDER_GUID = "unfiled";
         public static final String FAKE_DESKTOP_FOLDER_GUID = "desktop";
         public static final String PINNED_FOLDER_GUID = "pinned";
         public static final String SCREENSHOT_FOLDER_GUID = "screenshots";
+        public static final String FAKE_READINGLIST_SMARTFOLDER_GUID = "readinglist";
 
         public static final int TYPE_FOLDER = 0;
         public static final int TYPE_BOOKMARK = 1;
         public static final int TYPE_SEPARATOR = 2;
         public static final int TYPE_LIVEMARK = 3;
         public static final int TYPE_QUERY = 4;
 
         public static final Uri CONTENT_URI = Uri.withAppendedPath(AUTHORITY_URI, "bookmarks");
@@ -181,16 +186,19 @@ public class BrowserContract {
         public static final String CONTENT_TYPE = "vnd.android.cursor.dir/bookmark";
         public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/bookmark";
         public static final String TYPE = "type";
         public static final String PARENT = "parent";
         public static final String POSITION = "position";
         public static final String TAGS = "tags";
         public static final String DESCRIPTION = "description";
         public static final String KEYWORD = "keyword";
+
+        public static final String ANNOTATION_KEY = "annotation_key";
+        public static final String ANNOTATION_VALUE = "annotation_value";
     }
 
     @RobocopTarget
     public static final class History implements CommonColumns, URLColumns, HistoryColumns, FaviconColumns, SyncColumns {
         private History() {}
 
         public static final String TABLE_NAME = "history";
 
@@ -528,17 +536,25 @@ public class BrowserContract {
             FEED("feed"),
 
             /**
              * This key maps URLs of feeds to an object describing the feed.
              *
              * Key:   feed_subscription
              * Value: JSON object describing feed
              */
-            FEED_SUBSCRIPTION("feed_subscription");
+            FEED_SUBSCRIPTION("feed_subscription"),
+
+            /**
+             * Indicates that this URL (if stored as a bookmark) should be opened into reader view.
+             *
+             * Key:   reader_view
+             * Value: String "true" to indicate that we would like to open into reader view.
+             */
+            READER_VIEW("reader_view");
 
             private final String dbValue;
 
             Key(final String dbValue) { this.dbValue = dbValue; }
             public String getDbValue() { return dbValue; }
         }
 
         public enum SyncStatus {
@@ -550,16 +566,21 @@ public class BrowserContract {
             private final int dbValue;
 
             SyncStatus(final int dbValue) {
                 this.dbValue = dbValue;
             }
 
             public int getDBValue() { return dbValue; }
         }
+
+        /**
+         * Value used to indicate that a reader view item is saved. We use the
+         */
+        public static final String READER_VIEW_SAVED_VALUE = "true";
     }
 
     public static final class Numbers {
         private Numbers() {}
 
         public static final String TABLE_NAME = "numbers";
 
         public static final String POSITION = "position";
--- a/mobile/android/base/java/org/mozilla/gecko/db/BrowserDB.java
+++ b/mobile/android/base/java/org/mozilla/gecko/db/BrowserDB.java
@@ -38,17 +38,16 @@ public interface BrowserDB {
 
     public static enum FilterFlags {
         EXCLUDE_PINNED_SITES
     }
 
     public abstract Searches getSearches();
     public abstract TabsAccessor getTabsAccessor();
     public abstract URLMetadata getURLMetadata();
-    public abstract ReadingListAccessor getReadingListAccessor();
     @RobocopTarget UrlAnnotations getUrlAnnotations();
 
     /**
      * Add default bookmarks to the database.
      * Takes an offset; returns a new offset.
      */
     public abstract int addDefaultBookmarks(Context context, ContentResolver cr, int offset);
 
--- a/mobile/android/base/java/org/mozilla/gecko/db/BrowserDatabaseHelper.java
+++ b/mobile/android/base/java/org/mozilla/gecko/db/BrowserDatabaseHelper.java
@@ -1,30 +1,40 @@
 /* -*- Mode: Java; c-basic-offset: 4; tab-width: 20; indent-tabs-mode: nil; -*- */
 /* 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/. */
 
 package org.mozilla.gecko.db;
 
 import java.io.File;
+import java.io.UnsupportedEncodingException;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
+import org.mozilla.apache.commons.codec.binary.Base32;
 import org.mozilla.gecko.GeckoProfile;
 import org.mozilla.gecko.R;
+import org.mozilla.gecko.Telemetry;
+import org.mozilla.gecko.annotation.RobocopTarget;
 import org.mozilla.gecko.db.BrowserContract.Bookmarks;
 import org.mozilla.gecko.db.BrowserContract.Combined;
 import org.mozilla.gecko.db.BrowserContract.Favicons;
 import org.mozilla.gecko.db.BrowserContract.History;
 import org.mozilla.gecko.db.BrowserContract.Numbers;
 import org.mozilla.gecko.db.BrowserContract.ReadingListItems;
 import org.mozilla.gecko.db.BrowserContract.SearchHistory;
 import org.mozilla.gecko.db.BrowserContract.Thumbnails;
 import org.mozilla.gecko.db.BrowserContract.UrlAnnotations;
+import org.mozilla.gecko.reader.SavedReaderViewHelper;
+import org.mozilla.gecko.sync.Utils;
 import org.mozilla.gecko.util.FileUtils;
 
 import static org.mozilla.gecko.db.DBUtils.qualifyColumn;
 
 import android.content.ContentValues;
 import android.content.Context;
 import android.database.Cursor;
 import android.database.DatabaseUtils;
@@ -39,41 +49,47 @@ import android.util.Log;
 
 
 // public for robocop testing
 public final class BrowserDatabaseHelper extends SQLiteOpenHelper {
     private static final String LOGTAG = "GeckoBrowserDBHelper";
 
     // Replace the Bug number below with your Bug that is conducting a DB upgrade, as to force a merge conflict with any
     // other patches that require a DB upgrade.
-    public static final int DATABASE_VERSION = 30; // Bug 946857
+    public static final int DATABASE_VERSION = 31; // Bug 1234315
     public static final String DATABASE_NAME = "browser.db";
 
     final protected Context mContext;
 
     static final String TABLE_BOOKMARKS = Bookmarks.TABLE_NAME;
     static final String TABLE_HISTORY = History.TABLE_NAME;
     static final String TABLE_FAVICONS = Favicons.TABLE_NAME;
     static final String TABLE_THUMBNAILS = Thumbnails.TABLE_NAME;
     static final String TABLE_READING_LIST = ReadingListItems.TABLE_NAME;
     static final String TABLE_TABS = TabsProvider.TABLE_TABS;
     static final String TABLE_CLIENTS = TabsProvider.TABLE_CLIENTS;
     static final String TABLE_LOGINS = BrowserContract.Logins.TABLE_LOGINS;
     static final String TABLE_DELETED_LOGINS = BrowserContract.DeletedLogins.TABLE_DELETED_LOGINS;
     static final String TABLE_DISABLED_HOSTS = BrowserContract.LoginsDisabledHosts.TABLE_DISABLED_HOSTS;
+    static final String TABLE_ANNOTATIONS = UrlAnnotations.TABLE_NAME;
 
     static final String VIEW_COMBINED = Combined.VIEW_NAME;
     static final String VIEW_BOOKMARKS_WITH_FAVICONS = Bookmarks.VIEW_WITH_FAVICONS;
+    static final String VIEW_BOOKMARKS_WITH_ANNOTATIONS = Bookmarks.VIEW_WITH_ANNOTATIONS;
     static final String VIEW_HISTORY_WITH_FAVICONS = History.VIEW_WITH_FAVICONS;
     static final String VIEW_COMBINED_WITH_FAVICONS = Combined.VIEW_WITH_FAVICONS;
 
     static final String TABLE_BOOKMARKS_JOIN_FAVICONS = TABLE_BOOKMARKS + " LEFT OUTER JOIN " +
             TABLE_FAVICONS + " ON " + qualifyColumn(TABLE_BOOKMARKS, Bookmarks.FAVICON_ID) + " = " +
             qualifyColumn(TABLE_FAVICONS, Favicons._ID);
 
+    static final String TABLE_BOOKMARKS_JOIN_ANNOTATIONS = TABLE_BOOKMARKS + " JOIN " +
+            TABLE_ANNOTATIONS + " ON " + qualifyColumn(TABLE_BOOKMARKS, Bookmarks.URL) + " = " +
+            qualifyColumn(TABLE_ANNOTATIONS, UrlAnnotations.URL);
+
     static final String TABLE_HISTORY_JOIN_FAVICONS = TABLE_HISTORY + " LEFT OUTER JOIN " +
             TABLE_FAVICONS + " ON " + qualifyColumn(TABLE_HISTORY, History.FAVICON_ID) + " = " +
             qualifyColumn(TABLE_FAVICONS, Favicons._ID);
 
     static final String TABLE_BOOKMARKS_TMP = TABLE_BOOKMARKS + "_tmp";
     static final String TABLE_HISTORY_TMP = TABLE_HISTORY + "_tmp";
 
     private static final String[] mobileIdColumns = new String[] { Bookmarks._ID };
@@ -169,16 +185,26 @@ public final class BrowserDatabaseHelper
 
         db.execSQL("CREATE VIEW IF NOT EXISTS " + VIEW_BOOKMARKS_WITH_FAVICONS + " AS " +
                 "SELECT " + qualifyColumn(TABLE_BOOKMARKS, "*") +
                 ", " + qualifyColumn(TABLE_FAVICONS, Favicons.DATA) + " AS " + Bookmarks.FAVICON +
                 ", " + qualifyColumn(TABLE_FAVICONS, Favicons.URL) + " AS " + Bookmarks.FAVICON_URL +
                 " FROM " + TABLE_BOOKMARKS_JOIN_FAVICONS);
     }
 
+    private void createBookmarksWithAnnotationsView(SQLiteDatabase db) {
+        debug("Creating " + VIEW_BOOKMARKS_WITH_ANNOTATIONS + " view");
+
+        db.execSQL("CREATE VIEW IF NOT EXISTS " + VIEW_BOOKMARKS_WITH_ANNOTATIONS + " AS " +
+                   "SELECT " + qualifyColumn(TABLE_BOOKMARKS, "*") +
+                   ", " + qualifyColumn(TABLE_ANNOTATIONS, UrlAnnotations.KEY) + " AS " + Bookmarks.ANNOTATION_KEY +
+                   ", " + qualifyColumn(TABLE_ANNOTATIONS, UrlAnnotations.VALUE) + " AS " + Bookmarks.ANNOTATION_VALUE +
+                   " FROM " + TABLE_BOOKMARKS_JOIN_ANNOTATIONS);
+    }
+
     private void createHistoryWithFaviconsView(SQLiteDatabase db) {
         debug("Creating " + VIEW_HISTORY_WITH_FAVICONS + " view");
 
         db.execSQL("CREATE VIEW IF NOT EXISTS " + VIEW_HISTORY_WITH_FAVICONS + " AS " +
                 "SELECT " + qualifyColumn(TABLE_HISTORY, "*") +
                 ", " + qualifyColumn(TABLE_FAVICONS, Favicons.DATA) + " AS " + History.FAVICON +
                 ", " + qualifyColumn(TABLE_FAVICONS, Favicons.URL) + " AS " + History.FAVICON_URL +
                 " FROM " + TABLE_HISTORY_JOIN_FAVICONS);
@@ -410,25 +436,25 @@ public final class BrowserDatabaseHelper
         createHistoryWithFaviconsView(db);
         createCombinedViewOn19(db);
 
         createOrUpdateSpecialFolder(db, Bookmarks.PLACES_FOLDER_GUID,
             R.string.bookmarks_folder_places, 0);
 
         createOrUpdateAllSpecialFolders(db);
         createSearchHistoryTable(db);
-        createReadingListTable(db, TABLE_READING_LIST);
-        createReadingListIndices(db, TABLE_READING_LIST);
         createUrlAnnotationsTable(db);
         createNumbersTable(db);
 
         createDeletedLoginsTable(db, TABLE_DELETED_LOGINS);
         createDisabledHostsTable(db, TABLE_DISABLED_HOSTS);
         createLoginsTable(db, TABLE_LOGINS);
         createLoginsTableIndices(db, TABLE_LOGINS);
+
+        createBookmarksWithAnnotationsView(db);
     }
 
     /**
      * Copies the tabs and clients tables out of the given tabs.db file and into the destinationDB.
      *
      * @param tabsDBFile Path to existing tabs.db.
      * @param destinationDB The destination database.
      */
@@ -1019,17 +1045,20 @@ public final class BrowserDatabaseHelper
         debug("Rewriting reading list table.");
         createReadingListTable(db, "tmp_rl");
 
         // Remove indexes. We don't need them now, and we'll be throwing away the table.
         db.execSQL("DROP INDEX IF EXISTS reading_list_url");
         db.execSQL("DROP INDEX IF EXISTS reading_list_guid");
         db.execSQL("DROP INDEX IF EXISTS reading_list_content_status");
 
-        final String thisDevice = ReadingListProvider.PLACEHOLDER_THIS_DEVICE;
+        // This used to be a part of the no longer existing ReadingListProvider, since we're deleting
+        // this table later in the second migration, and since sync for this table never existed,
+        // we don't care about the device name here.
+        final String thisDevice = "_fake_device_name_that_will_be_discarded_in_the_next_migration_";
         db.execSQL("INSERT INTO tmp_rl (" +
                    // Here are the columns we can preserve.
                    ReadingListItems._ID + ", " +
                    ReadingListItems.URL + ", " +
                    ReadingListItems.TITLE + ", " +
                    ReadingListItems.RESOLVED_TITLE + ", " +       // = TITLE (if CONTENT_STATUS = STATUS_FETCHED_ARTICLE)
                    ReadingListItems.RESOLVED_URL + ", " +         // = URL (if CONTENT_STATUS = STATUS_FETCHED_ARTICLE)
                    ReadingListItems.EXCERPT + ", " +
@@ -1133,16 +1162,175 @@ public final class BrowserDatabaseHelper
     private void upgradeDatabaseFrom29to30(final SQLiteDatabase db) {
         debug("creating logins table");
         createDeletedLoginsTable(db, TABLE_DELETED_LOGINS);
         createDisabledHostsTable(db, TABLE_DISABLED_HOSTS);
         createLoginsTable(db, TABLE_LOGINS);
         createLoginsTableIndices(db, TABLE_LOGINS);
     }
 
+    // Get the cache path for a URL, based on the storage format in place during the 27to28 transition.
+    // This is a reimplementation of _toHashedPath from ReaderMode.jsm - given that we're likely
+    // to migrate the SavedReaderViewHelper implementation at some point, it seems safest to have a local
+    // implementation here - moreover this is probably faster than calling into JS.
+    // This is public only to allow for testing.
+    @RobocopTarget
+    public static String getReaderCacheFileNameForURL(String url) {
+        try {
+            // On KitKat and above we can use java.nio.charset.StandardCharsets.UTF_8 in place of "UTF8"
+            // which avoids having to handle UnsupportedCodingException
+            byte[] utf8 = url.getBytes("UTF8");
+
+            final MessageDigest digester = MessageDigest.getInstance("MD5");
+            byte[] hash = digester.digest(utf8);
+
+            final String hashString = new Base32().encodeAsString(hash);
+            return hashString.substring(0, hashString.indexOf('=')) + ".json";
+        } catch (UnsupportedEncodingException e) {
+            // This should never happen
+            throw new IllegalStateException("UTF8 encoding not available - can't process readercache filename");
+        } catch (NoSuchAlgorithmException e) {
+            // This should also never happen
+            throw new IllegalStateException("MD5 digester unavailable - can't process readercache filename");
+        }
+    }
+
+    /*
+     * Moves reading list items from the 'reading_list' table back into the 'bookmarks' table. This time the
+     * reading list items are placed into a "Reading List" folder, which is a subfolder of the mobile-bookmarks table.
+     */
+    private void upgradeDatabaseFrom30to31(SQLiteDatabase db) {
+        // We only need to do the migration if reading-list items already exist. We could do a query of count(*) on
+        // TABLE_READING_LIST, however if we are doing the migration, we'll need to query all items in the reading-list,
+        // hence we might as well just query all items, and proceed with the migration if cursor.count > 0.
+
+        // We try to retain the original ordering below. Our LocalReadingListAccessor actually coalesced
+        // SERVER_STORED_ON with ADDED_ON to determine positioning, however reading list syncing was never
+        // implemented hence SERVER_STORED will have always been null.
+        final Cursor readingListCursor = db.query(TABLE_READING_LIST,
+                                     new String[] {
+                                             ReadingListItems.URL,
+                                             ReadingListItems.TITLE,
+                                             ReadingListItems.ADDED_ON,
+                                             ReadingListItems.CLIENT_LAST_MODIFIED
+                                     },
+                                     ReadingListItems.IS_DELETED + " = 0",
+                                     null,
+                                     null,
+                                     null,
+                                     ReadingListItems.ADDED_ON + " DESC");
+
+        // We'll want to walk the cache directory, so that we can (A) bookkeep readercache items
+        // that we want and (B) delete unneeded readercache items. (B) shouldn't actually happen, but
+        // is possible if there were bugs in our reader-caching code.
+        // We need to construct this here since we populate this map while walking the DB cursor,
+        // and use the map later when walking the cache.
+        final Map<String, String> fileToURLMap = new HashMap<>();
+
+
+        try {
+            if (!readingListCursor.moveToFirst()) {
+                return;
+            }
+
+            final Integer mobileBookmarksID = getMobileFolderId(db);
+
+            if (mobileBookmarksID == null) {
+                // This folder is created either on DB creation or during the 3-4 or 6-7 migrations.
+                throw new IllegalStateException("mobile bookmarks folder must already exist");
+            }
+
+            final long now = System.currentTimeMillis();
+
+            // We try to retain the same order as the reading-list would show. We should hopefully be reading the
+            // items in the order they are displayed on screen (final param of db.query above), by providing
+            // a position we should obtain the same ordering in the bookmark folder.
+            long position = 0;
+
+            final int titleColumnID = readingListCursor.getColumnIndexOrThrow(ReadingListItems.TITLE);
+            final int createdColumnID = readingListCursor.getColumnIndexOrThrow(ReadingListItems.ADDED_ON);
+
+            // This isn't the most efficient implementation, but the migration is one-off, and this
+            // also more maintainable than the SQL equivalent (generating the guids correctly is
+            // difficult in SQLite).
+            do {
+                final ContentValues readingListItemValues = new ContentValues();
+
+                final String url = readingListCursor.getString(readingListCursor.getColumnIndexOrThrow(ReadingListItems.URL));
+
+                readingListItemValues.put(Bookmarks.PARENT, mobileBookmarksID);
+                readingListItemValues.put(Bookmarks.GUID, Utils.generateGuid());
+                readingListItemValues.put(Bookmarks.URL, url);
+                // Title may be null, however we're expecting a String - we can generate an empty string if needed:
+                if (!readingListCursor.isNull(titleColumnID)) {
+                    readingListItemValues.put(Bookmarks.TITLE, readingListCursor.getString(titleColumnID));
+                } else {
+                    readingListItemValues.put(Bookmarks.TITLE, "");
+                }
+                readingListItemValues.put(Bookmarks.DATE_CREATED, readingListCursor.getLong(createdColumnID));
+                readingListItemValues.put(Bookmarks.DATE_MODIFIED, now);
+                readingListItemValues.put(Bookmarks.POSITION, position);
+
+                db.insert(TABLE_BOOKMARKS,
+                          null,
+                          readingListItemValues);
+
+                final String cacheFileName = getReaderCacheFileNameForURL(url);
+                fileToURLMap.put(cacheFileName, url);
+
+                position++;
+            } while (readingListCursor.moveToNext());
+
+        } finally {
+            readingListCursor.close();
+            // We need to do this work here since we might be returning (we return early if the
+            // reading-list table is empty).
+            db.execSQL("DROP TABLE IF EXISTS " + TABLE_READING_LIST);
+            createBookmarksWithAnnotationsView(db);
+        }
+
+        final File profileDir = GeckoProfile.get(mContext).getDir();
+        final File cacheDir = new File(profileDir, "readercache");
+
+        // At the time of this migration the SavedReaderViewHelper becomes a 1:1 mirror of reader view
+        // url-annotations. This may change in future implementations, however currently we only need to care
+        // about standard bookmarks (untouched during this migration) and bookmarks with a reader
+        // view annotation (which we're creating here, and which are guaranteed to be saved offline).
+        //
+        // This is why we have to migrate the cache items (instead of cleaning the cache
+        // and rebuilding it). We simply don't support uncached reader view bookmarks, and we would
+        // break existing reading list items (they would convert into plain bookmarks without
+        // reader view). This helps ensure that offline content isn't lost during the migration.
+        if (cacheDir.exists() && cacheDir.isDirectory()) {
+            SavedReaderViewHelper savedReaderViewHelper = SavedReaderViewHelper.getSavedReaderViewHelper(mContext);
+
+            // Usually we initialise the helper during onOpen(). However onUpgrade() is run before
+            // onOpen() hence we need to manually initialise it at this stage.
+            savedReaderViewHelper.loadItems();
+
+            for (File cacheFile : cacheDir.listFiles()) {
+                if (fileToURLMap.containsKey(cacheFile.getName())) {
+                    final String url = fileToURLMap.get(cacheFile.getName());
+                    final String path = cacheFile.getAbsolutePath();
+                    long size = cacheFile.length();
+
+                    savedReaderViewHelper.put(url, path, size);
+                } else {
+                    // This should never happen, but we don't actually know whether or not orphaned
+                    // items happened in the wild.
+                    boolean deleted = cacheFile.delete();
+
+                    if (!deleted) {
+                        Log.w(LOGTAG, "Failed to delete orphaned saved reader view file.");
+                    }
+                }
+            }
+        }
+    }
+
     private void createV19CombinedView(SQLiteDatabase db) {
         db.execSQL("DROP VIEW IF EXISTS " + VIEW_COMBINED);
         db.execSQL("DROP VIEW IF EXISTS " + VIEW_COMBINED_WITH_FAVICONS);
 
         createCombinedViewOn19(db);
     }
 
     @Override
@@ -1230,16 +1418,20 @@ public final class BrowserDatabaseHelper
 
                 case 29:
                     upgradeDatabaseFrom28to29(db);
                     break;
 
                 case 30:
                     upgradeDatabaseFrom29to30(db);
                     break;
+
+                case 31:
+                    upgradeDatabaseFrom30to31(db);
+                    break;
             }
         }
 
         for (Table table : BrowserProvider.sTables) {
             table.onUpgrade(db, oldVersion, newVersion);
         }
 
         // Delete the obsolete favicon database after all other upgrades complete.
@@ -1250,16 +1442,24 @@ public final class BrowserDatabaseHelper
             }
         }
     }
 
     @Override
     public void onOpen(SQLiteDatabase db) {
         debug("Opening browser.db: " + db.getPath());
 
+        // Force explicit readercache loading - we won't access readercache state for bookmarks
+        // until we actually know what our bookmarks are. Bookmarks are stored in the DB, hence
+        // it is sufficient to ensure that the readercache is loaded before the DB can be accessed.
+        // Note, this takes ~4-6ms to load on an N4 (compared to 20-50ms for most DB queries), and
+        // is only done once, hence this shouldn't have noticeable impact on performance. Moreover
+        // this is run on a background thread and therefore won't block UI code during startup.
+        SavedReaderViewHelper.getSavedReaderViewHelper(mContext).loadItems();
+
         Cursor cursor = null;
         try {
             cursor = db.rawQuery("PRAGMA foreign_keys=ON", null);
         } finally {
             if (cursor != null)
                 cursor.close();
         }
         cursor = null;
--- a/mobile/android/base/java/org/mozilla/gecko/db/BrowserProvider.java
+++ b/mobile/android/base/java/org/mozilla/gecko/db/BrowserProvider.java
@@ -65,16 +65,17 @@ public class BrowserProvider extends Sha
     static final String TABLE_HISTORY = History.TABLE_NAME;
     static final String TABLE_FAVICONS = Favicons.TABLE_NAME;
     static final String TABLE_THUMBNAILS = Thumbnails.TABLE_NAME;
     static final String TABLE_TABS = Tabs.TABLE_NAME;
     static final String TABLE_URL_ANNOTATIONS = UrlAnnotations.TABLE_NAME;
 
     static final String VIEW_COMBINED = Combined.VIEW_NAME;
     static final String VIEW_BOOKMARKS_WITH_FAVICONS = Bookmarks.VIEW_WITH_FAVICONS;
+    static final String VIEW_BOOKMARKS_WITH_ANNOTATIONS = Bookmarks.VIEW_WITH_ANNOTATIONS;
     static final String VIEW_HISTORY_WITH_FAVICONS = History.VIEW_WITH_FAVICONS;
     static final String VIEW_COMBINED_WITH_FAVICONS = Combined.VIEW_WITH_FAVICONS;
 
     // Bookmark matches
     static final int BOOKMARKS = 100;
     static final int BOOKMARKS_ID = 101;
     static final int BOOKMARKS_FOLDER_ID = 102;
     static final int BOOKMARKS_PARENT = 103;
@@ -996,20 +997,25 @@ public class BrowserProvider extends Sha
                 if (TextUtils.isEmpty(sortOrder)) {
                     sortOrder = DEFAULT_BOOKMARKS_SORT_ORDER;
                 } else {
                     debug("Using sort order " + sortOrder + ".");
                 }
 
                 qb.setProjectionMap(BOOKMARKS_PROJECTION_MAP);
 
-                if (hasFaviconsInProjection(projection))
+                if (hasFaviconsInProjection(projection)) {
                     qb.setTables(VIEW_BOOKMARKS_WITH_FAVICONS);
-                else
+                } else if (selection.contains(Bookmarks.ANNOTATION_KEY)) {
+                    qb.setTables(VIEW_BOOKMARKS_WITH_ANNOTATIONS);
+
+                    groupBy = uri.getQueryParameter(BrowserContract.PARAM_GROUP_BY);
+                } else {
                     qb.setTables(TABLE_BOOKMARKS);
+                }
 
                 break;
             }
 
             case HISTORY_ID:
                 selection = DBUtils.concatenateWhere(selection, History._ID + " = ?");
                 selectionArgs = DBUtils.appendSelectionArgs(selectionArgs,
                         new String[] { Long.toString(ContentUris.parseId(uri)) });
--- a/mobile/android/base/java/org/mozilla/gecko/db/LocalBrowserDB.java
+++ b/mobile/android/base/java/org/mozilla/gecko/db/LocalBrowserDB.java
@@ -100,17 +100,16 @@ public class LocalBrowserDB implements B
     private final Uri mFaviconsUriWithProfile;
     private final Uri mThumbnailsUriWithProfile;
     private final Uri mTopSitesUriWithProfile;
     private final Uri mSearchHistoryUri;
 
     private LocalSearches searches;
     private LocalTabsAccessor tabsAccessor;
     private LocalURLMetadata urlMetadata;
-    private LocalReadingListAccessor readingListAccessor;
     private LocalUrlAnnotations urlAnnotations;
 
     private static final String[] DEFAULT_BOOKMARK_COLUMNS =
             new String[] { Bookmarks._ID,
                            Bookmarks.GUID,
                            Bookmarks.URL,
                            Bookmarks.TITLE,
                            Bookmarks.TYPE,
@@ -135,17 +134,16 @@ public class LocalBrowserDB implements B
                 mHistoryUriWithProfile.buildUpon()
                                       .appendQueryParameter(BrowserContract.PARAM_INCREMENT_VISITS, "true")
                                       .appendQueryParameter(BrowserContract.PARAM_INSERT_IF_NEEDED, "true")
                                       .build();
 
         searches = new LocalSearches(mProfile);
         tabsAccessor = new LocalTabsAccessor(mProfile);
         urlMetadata = new LocalURLMetadata(mProfile);
-        readingListAccessor = new LocalReadingListAccessor(mProfile);
         urlAnnotations = new LocalUrlAnnotations(mProfile);
     }
 
     @Override
     public Searches getSearches() {
         return searches;
     }
 
@@ -154,21 +152,16 @@ public class LocalBrowserDB implements B
         return tabsAccessor;
     }
 
     @Override
     public URLMetadata getURLMetadata() {
         return urlMetadata;
     }
 
-    @Override
-    public ReadingListAccessor getReadingListAccessor() {
-        return readingListAccessor;
-    }
-
     @RobocopTarget
     @Override
     public UrlAnnotations getUrlAnnotations() {
         return urlAnnotations;
     }
 
     /**
      * Not thread safe. A helper to allocate new IDs for arbitrary strings.
@@ -780,91 +773,129 @@ public class LocalBrowserDB implements B
                 (DEFAULT_BOOKMARK_COLUMNS[5].equals(Bookmarks.PARENT)) &&
                 (DEFAULT_BOOKMARK_COLUMNS.length == 6))) {
             // If DEFAULT_BOOKMARK_COLUMNS changes we need to update all the MatrixCursor rows
             // to contain appropriate data.
             throw new IllegalStateException("Fake folder MatrixCursor creation code must be updated to match DEFAULT_BOOKMARK_COLUMNS");
         }
     }
 
+    /**
+     * Retrieve the list of reader-view bookmarks, i.e. the equivalent of the former reading-list.
+     * This is the result of a join of bookmarks with reader-view annotations (as stored in
+     * UrlAnnotations).
+     */
+    private Cursor getReadingListBookmarks(ContentResolver cr) {
+        // group by URL to avoid having duplicate bookmarks listed. It's possible to have multiple
+        // bookmarks pointing to the same URL (this would most commonly happen by manually
+        // copying bookmarks on desktop, followed by syncing with mobile), and we don't want
+        // to show the same URL multiple times in the reading list folder.
+        final Uri bookmarksGroupedByUri = mBookmarksUriWithProfile.buildUpon()
+                .appendQueryParameter(BrowserContract.PARAM_GROUP_BY, Bookmarks.URL)
+                .build();
+
+        return cr.query(bookmarksGroupedByUri,
+                DEFAULT_BOOKMARK_COLUMNS,
+                Bookmarks.ANNOTATION_KEY + " == ? AND " +
+                Bookmarks.ANNOTATION_VALUE + " == ? AND " +
+                "(" + Bookmarks.TYPE + " = ? AND " + Bookmarks.URL + " IS NOT NULL)",
+                new String[] {
+                        BrowserContract.UrlAnnotations.Key.READER_VIEW.getDbValue(),
+                        BrowserContract.UrlAnnotations.READER_VIEW_SAVED_VALUE,
+                        String.valueOf(Bookmarks.TYPE_BOOKMARK) },
+                null);
+    }
+
     @Override
     @RobocopTarget
     public Cursor getBookmarksInFolder(ContentResolver cr, long folderId) {
         final boolean addDesktopFolder;
         final boolean addScreenshotsFolder;
+        final boolean addReadingListFolder;
 
         // We always want to show mobile bookmarks in the root view.
         if (folderId == Bookmarks.FIXED_ROOT_ID) {
             folderId = getFolderIdFromGuid(cr, Bookmarks.MOBILE_FOLDER_GUID);
 
             // We'll add a fake "Desktop Bookmarks" folder to the root view if desktop
             // bookmarks exist, so that the user can still access non-mobile bookmarks.
             addDesktopFolder = desktopBookmarksExist(cr);
             addScreenshotsFolder = AppConstants.SCREENSHOTS_IN_BOOKMARKS_ENABLED;
+            addReadingListFolder = true;
         } else {
             addDesktopFolder = false;
             addScreenshotsFolder = false;
+            addReadingListFolder = false;
         }
 
         final Cursor c;
+
+        // (You can't switch on a long in Java, hence the if statements)
         if (folderId == Bookmarks.FAKE_DESKTOP_FOLDER_ID) {
             // Since the "Desktop Bookmarks" folder doesn't actually exist, we
             // just fake it by querying specifically certain known desktop folders.
             c = cr.query(mBookmarksUriWithProfile,
                          DEFAULT_BOOKMARK_COLUMNS,
                          Bookmarks.GUID + " = ? OR " +
                          Bookmarks.GUID + " = ? OR " +
                          Bookmarks.GUID + " = ?",
                          new String[] { Bookmarks.TOOLBAR_FOLDER_GUID,
                                         Bookmarks.MENU_FOLDER_GUID,
                                         Bookmarks.UNFILED_FOLDER_GUID },
                          null);
         } else if (folderId == Bookmarks.FIXED_SCREENSHOT_FOLDER_ID) {
             c = getUrlAnnotations().getScreenshots(cr);
+        } else if (folderId == Bookmarks.FAKE_READINGLIST_SMARTFOLDER_ID) {
+            c = getReadingListBookmarks(cr);
         } else {
             // Right now, we only support showing folder and bookmark type of
             // entries. We should add support for other types though (bug 737024)
             c = cr.query(mBookmarksUriWithProfile,
                          DEFAULT_BOOKMARK_COLUMNS,
                          Bookmarks.PARENT + " = ? AND " +
                          "(" + Bookmarks.TYPE + " = ? OR " +
                             "(" + Bookmarks.TYPE + " = ? AND " + Bookmarks.URL + " IS NOT NULL))",
                          new String[] { String.valueOf(folderId),
                                         String.valueOf(Bookmarks.TYPE_FOLDER),
                                         String.valueOf(Bookmarks.TYPE_BOOKMARK) },
                          null);
         }
 
-        final List<Cursor> cursorsToMerge = getSpecialFoldersCursorList(addDesktopFolder, addScreenshotsFolder);
+        final List<Cursor> cursorsToMerge = getSpecialFoldersCursorList(addDesktopFolder, addScreenshotsFolder, addReadingListFolder);
         if (cursorsToMerge.size() >= 1) {
             cursorsToMerge.add(c);
             final Cursor[] arr = (Cursor[]) Array.newInstance(Cursor.class, cursorsToMerge.size());
             return new MergeCursor(cursorsToMerge.toArray(arr));
         } else {
             return c;
         }
     }
 
     @CheckResult
-    private ArrayList<Cursor> getSpecialFoldersCursorList(final boolean addDesktopFolder, final boolean addScreenshotsFolder) {
-        if (addDesktopFolder || addScreenshotsFolder) {
+    private ArrayList<Cursor> getSpecialFoldersCursorList(final boolean addDesktopFolder,
+            final boolean addScreenshotsFolder, final boolean addReadingListFolder) {
+        if (addDesktopFolder || addScreenshotsFolder || addReadingListFolder) {
             // Avoid calling this twice.
             assertDefaultBookmarkColumnOrdering();
         }
 
         // Capacity is number of cursors added below plus one for non-special data.
-        final ArrayList<Cursor> out = new ArrayList<>(3);
+        final ArrayList<Cursor> out = new ArrayList<>(4);
         if (addDesktopFolder) {
             out.add(getSpecialFolderCursor(Bookmarks.FAKE_DESKTOP_FOLDER_ID, Bookmarks.FAKE_DESKTOP_FOLDER_GUID));
         }
 
         if (addScreenshotsFolder) {
             out.add(getSpecialFolderCursor(Bookmarks.FIXED_SCREENSHOT_FOLDER_ID, Bookmarks.SCREENSHOT_FOLDER_GUID));
         }
 
+        if (addReadingListFolder) {
+            out.add(getSpecialFolderCursor(Bookmarks.FAKE_READINGLIST_SMARTFOLDER_ID, Bookmarks.FAKE_READINGLIST_SMARTFOLDER_GUID));
+        }
+
         return out;
     }
 
     @CheckResult
     private MatrixCursor getSpecialFolderCursor(final int folderId, final String folderGuid) {
         final MatrixCursor out = new MatrixCursor(DEFAULT_BOOKMARK_COLUMNS);
         out.addRow(new Object[] {
                 folderId,
deleted file mode 100644
--- a/mobile/android/base/java/org/mozilla/gecko/db/LocalReadingListAccessor.java
+++ /dev/null
@@ -1,211 +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/. */
-
-package org.mozilla.gecko.db;
-
-import android.content.ContentResolver;
-import android.content.ContentUris;
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.ContentObserver;
-import android.database.Cursor;
-import android.net.Uri;
-import android.util.Log;
-
-import org.mozilla.gecko.annotation.RobocopTarget;
-import org.mozilla.gecko.GeckoAppShell;
-import org.mozilla.gecko.GeckoEvent;
-import org.mozilla.gecko.reader.ReaderModeUtils;
-import org.mozilla.gecko.db.BrowserContract.ReadingListItems;
-
-
-@RobocopTarget
-public class LocalReadingListAccessor implements ReadingListAccessor {
-    private static final String LOG_TAG = "GeckoReadingListAcc";
-
-    private static final String NOT_DELETED = ReadingListItems.IS_DELETED + " = 0";
-    private static final String NEITHER_DELETED_NOR_ARCHIVED = ReadingListItems.IS_ARCHIVED + " = 0 AND " + ReadingListItems.IS_DELETED + " = 0";
-    private static final String ITEMS_TO_FETCH = ReadingListItems.CONTENT_STATUS + " = " + ReadingListItems.STATUS_UNFETCHED + " AND " + NEITHER_DELETED_NOR_ARCHIVED;
-    private static final String SORT_ORDER_RECENT_FIRST = "COALESCE(" + ReadingListItems.SERVER_STORED_ON + ", " + ReadingListItems.ADDED_ON + ") DESC";
-
-    private final Uri mReadingListUriWithProfile;
-
-    public LocalReadingListAccessor(final String profile) {
-        mReadingListUriWithProfile = DBUtils.appendProfile(profile, ReadingListItems.CONTENT_URI);
-    }
-
-    // Return a count of non-deleted items.
-    @Override
-    public int getCount(ContentResolver cr) {
-        final String[] columns = new String[]{ReadingListItems._ID};
-        final Cursor cursor = cr.query(mReadingListUriWithProfile, columns, NOT_DELETED, null, null);
-
-        try {
-            return cursor.getCount();
-        } finally {
-            cursor.close();
-        }
-    }
-
-    @Override
-    public Cursor getReadingList(ContentResolver cr) {
-        // Return non-deleted, non-archived items, ordered by either server stored data or local added date,
-        // descending.
-        // This isn't ideal -- it depends on upload order! -- but the alternative is that a client with a
-        // very skewed clock will force its items to the front or end of the list on other devices.
-        return cr.query(mReadingListUriWithProfile,
-                        ReadingListItems.DEFAULT_PROJECTION,
-                        NEITHER_DELETED_NOR_ARCHIVED,
-                        null,
-                        SORT_ORDER_RECENT_FIRST);
-    }
-
-    @Override
-    public Cursor getReadingListUnfetched(ContentResolver cr) {
-        // Return unfetched, non-deleted, non-archived items, sorted by date added, newest first.
-        // This allows us to fetch the top of the list first.
-        return cr.query(mReadingListUriWithProfile,
-                        new String[] { ReadingListItems._ID, ReadingListItems.URL },
-                        ITEMS_TO_FETCH,
-                        null,
-                        SORT_ORDER_RECENT_FIRST);
-    }
-
-    @Override
-    public boolean isReadingListItem(final ContentResolver cr, String uri) {
-        uri = ReaderModeUtils.stripAboutReaderUrl(uri);
-
-        final Cursor c = cr.query(mReadingListUriWithProfile,
-                                  new String[] { ReadingListItems._ID },
-                                  ReadingListItems.URL + " = ? OR " + ReadingListItems.RESOLVED_URL + " = ?",
-                                  new String[] { uri, uri },
-                                  null);
-
-        if (c == null) {
-            Log.e(LOG_TAG, "Null cursor in isReadingListItem");
-            return false;
-        }
-
-        try {
-            return c.moveToNext();
-        } finally {
-            c.close();
-        }
-    }
-
-
-    @Override
-    public long addReadingListItem(ContentResolver cr, ContentValues values) {
-        // Check that required fields are present.
-        for (String field: ReadingListItems.REQUIRED_FIELDS) {
-            if (!values.containsKey(field)) {
-                throw new IllegalArgumentException("Missing required field for reading list item: " + field);
-            }
-        }
-
-        // URL is a required field so no key check needed.
-        final String url = ReaderModeUtils.stripAboutReaderUrl(values.getAsString(ReadingListItems.URL));
-        values.put(ReadingListItems.URL, url);
-
-        // We're adding locally, so we can specify these.
-        values.put(ReadingListItems.ADDED_ON, System.currentTimeMillis());
-        values.put(ReadingListItems.ADDED_BY, ReadingListProvider.PLACEHOLDER_THIS_DEVICE);
-
-        // We never un-delete (and we can't; we wipe as we go).
-        // Re-add if necessary and allow the server to resolve conflicts.
-        final long id = ContentUris.parseId(cr.insert(mReadingListUriWithProfile, values));
-
-        GeckoAppShell.notifyObservers("Reader:Added", url);
-
-        return id;
-    }
-
-    @Override
-    public long addBasicReadingListItem(ContentResolver cr, String url, String title) {
-        if (url == null) {
-            throw new IllegalArgumentException("URL must not be null.");
-        }
-        final ContentValues values = new ContentValues();
-        values.put(ReadingListItems.URL, url);
-        if (title != null) {
-            values.put(ReadingListItems.TITLE, title);
-        } else {
-            values.putNull(ReadingListItems.TITLE);
-        }
-
-        return addReadingListItem(cr, values);
-    }
-
-    @Override
-    public void updateReadingListItem(ContentResolver cr, ContentValues values) {
-        if (!values.containsKey(ReadingListItems._ID)) {
-            throw new IllegalArgumentException("Cannot update reading list item without an ID");
-        }
-
-        if (values.containsKey(ReadingListItems.URL)) {
-            values.put(ReadingListItems.URL, ReaderModeUtils.stripAboutReaderUrl(values.getAsString(ReadingListItems.URL)));
-        }
-
-        final int updated = cr.update(mReadingListUriWithProfile,
-                                      values,
-                                      ReadingListItems._ID + " = ? ",
-                                      new String[] { values.getAsString(ReadingListItems._ID) });
-
-        Log.d(LOG_TAG, "Updated " + updated + " reading list rows.");
-    }
-
-    @Override
-    public void removeReadingListItemWithURL(final ContentResolver cr, String uri) {
-        cr.delete(mReadingListUriWithProfile,
-                  ReadingListItems.URL + " = ? OR " + ReadingListItems.RESOLVED_URL + " = ?",
-                  new String[]{ uri, uri });
-
-        GeckoAppShell.notifyObservers("Reader:Removed", uri);
-    }
-
-    @Override
-    public void deleteItem(ContentResolver cr, long itemID) {
-        // TODO: For completness, we should send a "Reader:Removed"
-        // GeckoEvent, but we don't have the uri. Luckily, this is
-        // only called in testing at the moment.
-        cr.delete(ContentUris.appendId(mReadingListUriWithProfile.buildUpon(), itemID).build(),
-                  null, null);
-    }
-
-    @Override
-    public void registerContentObserver(Context context, ContentObserver observer) {
-        context.getContentResolver().registerContentObserver(mReadingListUriWithProfile, false, observer);
-    }
-
-    @Override
-    public void markAsRead(ContentResolver cr, long itemID) {
-        final ContentValues values = new ContentValues();
-        values.put(ReadingListItems.MARKED_READ_BY, ReadingListProvider.PLACEHOLDER_THIS_DEVICE);
-        values.put(ReadingListItems.MARKED_READ_ON, System.currentTimeMillis());
-        values.put(ReadingListItems.IS_UNREAD, 0);
-
-        // The ContentProvider will take care of updating the sync metadata.
-        cr.update(mReadingListUriWithProfile, values, ReadingListItems._ID + " = " + itemID, null);
-    }
-
-    @Override
-    public void markAsUnread(ContentResolver cr, long itemID) {
-        final ContentValues values = new ContentValues();
-        values.put(ReadingListItems.IS_UNREAD, 1);
-
-        cr.update(mReadingListUriWithProfile, values, ReadingListItems._ID + " = " + itemID, null);
-    }
-
-    @Override
-    public void updateContent(ContentResolver cr, long itemID, String resolvedTitle, String resolvedURL, String excerpt) {
-        final ContentValues values = new ContentValues();
-        values.put(ReadingListItems.CONTENT_STATUS, ReadingListItems.STATUS_FETCHED_ARTICLE);
-        values.put(ReadingListItems.RESOLVED_URL, resolvedURL);
-        values.put(ReadingListItems.RESOLVED_TITLE, resolvedTitle);
-        values.put(ReadingListItems.EXCERPT, excerpt);
-
-        // The ContentProvider will take care of updating the sync metadata.
-        cr.update(mReadingListUriWithProfile, values, ReadingListItems._ID + " = " + itemID, null);
-    }
-}
--- a/mobile/android/base/java/org/mozilla/gecko/db/LocalUrlAnnotations.java
+++ b/mobile/android/base/java/org/mozilla/gecko/db/LocalUrlAnnotations.java
@@ -201,9 +201,19 @@ public class LocalUrlAnnotations impleme
                         BrowserContract.UrlAnnotations.DATE_CREATED,
                 },
                 BrowserContract.UrlAnnotations.DATE_CREATED + " DESC");
     }
 
     public void insertScreenshot(final ContentResolver cr, final String pageUrl, final String screenshotPath) {
         insertAnnotation(cr, pageUrl, Key.SCREENSHOT.getDbValue(), screenshotPath);
     }
+
+    @Override
+    public void insertReaderViewUrl(final ContentResolver cr, final String pageUrl) {
+        insertAnnotation(cr, pageUrl, Key.READER_VIEW.getDbValue(), BrowserContract.UrlAnnotations.READER_VIEW_SAVED_VALUE);
+    }
+
+    @Override
+    public void deleteReaderViewUrl(ContentResolver cr, String pageURL) {
+        deleteAnnotation(cr, pageURL, Key.READER_VIEW);
+    }
 }
deleted file mode 100644
--- a/mobile/android/base/java/org/mozilla/gecko/db/ReadingListAccessor.java
+++ /dev/null
@@ -1,43 +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/. */
-
-package org.mozilla.gecko.db;
-
-import android.content.ContentResolver;
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.ContentObserver;
-import android.database.Cursor;
-import org.mozilla.gecko.annotation.RobocopTarget;
-
-@RobocopTarget
-public interface ReadingListAccessor {
-    /**
-     * Returns non-deleted, non-archived items.
-     * Fennec doesn't currently offer a way to display archived items.
-     *
-     * Can return <code>null</code>.
-     */
-    Cursor getReadingList(ContentResolver cr);
-
-    int getCount(ContentResolver cr);
-
-    Cursor getReadingListUnfetched(ContentResolver cr);
-
-    boolean isReadingListItem(ContentResolver cr, String uri);
-
-    long addReadingListItem(ContentResolver cr, ContentValues values);
-    long addBasicReadingListItem(ContentResolver cr, String url, String title);
-
-    void updateReadingListItem(ContentResolver cr, ContentValues values);
-
-    void removeReadingListItemWithURL(ContentResolver cr, String uri);
-
-    void registerContentObserver(Context context, ContentObserver observer);
-
-    void markAsRead(ContentResolver cr, long itemID);
-    void markAsUnread(ContentResolver cr, long itemID);
-    void updateContent(ContentResolver cr, long itemID, String resolvedTitle, String resolvedURL, String excerpt);
-    void deleteItem(ContentResolver cr, long itemID);
-}
deleted file mode 100644
--- a/mobile/android/base/java/org/mozilla/gecko/db/ReadingListProvider.java
+++ /dev/null
@@ -1,414 +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/. */
-
-package org.mozilla.gecko.db;
-
-import android.content.ContentUris;
-import android.content.ContentValues;
-import android.content.UriMatcher;
-import android.database.Cursor;
-import android.database.SQLException;
-import android.database.sqlite.SQLiteDatabase;
-import android.database.sqlite.SQLiteQueryBuilder;
-import android.net.Uri;
-import android.text.TextUtils;
-import android.util.Log;
-import org.mozilla.gecko.db.DBUtils.UpdateOperation;
-
-import static org.mozilla.gecko.db.BrowserContract.ReadingListItems.*;
-
-public class ReadingListProvider extends SharedBrowserDatabaseProvider {
-    private static final String LOGTAG = "GeckoRLProvider";
-
-    static final String TABLE_READING_LIST = TABLE_NAME;
-
-    static final int ITEMS = 101;
-    static final int ITEMS_ID = 102;
-    static final UriMatcher URI_MATCHER = new UriMatcher(UriMatcher.NO_MATCH);
-
-    public static final String PLACEHOLDER_THIS_DEVICE = "$local";
-
-    static {
-        URI_MATCHER.addURI(BrowserContract.READING_LIST_AUTHORITY, "items", ITEMS);
-        URI_MATCHER.addURI(BrowserContract.READING_LIST_AUTHORITY, "items/#", ITEMS_ID);
-    }
-
-    /**
-     * Updates items that match the selection criteria. If no such items is found
-     * one is inserted with the attributes passed in. Returns 0 if no item updated.
-     *
-     * Only use this method for callers, not internally -- it futzes with the provided
-     * values to set syncing flags.
-     *
-     * @return Number of items updated or inserted
-     */
-    public int updateOrInsertItem(Uri uri, ContentValues values, String selection, String[] selectionArgs) {
-        if (!values.containsKey(CLIENT_LAST_MODIFIED)) {
-            values.put(CLIENT_LAST_MODIFIED, System.currentTimeMillis());
-        }
-
-        if (isCallerSync(uri)) {
-            int updated = updateItemsWithFlags(uri, values, null, selection, selectionArgs);
-            if (updated > 0) {
-                return updated;
-            }
-            return insertItem(uri, values) != -1 ? 1 : 0;
-        }
-
-        // Assume updated.
-        final ContentValues flags = processChangeValues(values);
-
-        int updated = updateItemsWithFlags(uri, values, flags, selection, selectionArgs);
-        if (updated <= 0) {
-            // Must be an insertion. Let's make sure we're NEW and discard any update flags.
-            values.put(SYNC_STATUS, SYNC_STATUS_NEW);
-            values.put(SYNC_CHANGE_FLAGS, SYNC_CHANGE_NONE);
-            updated = insertItem(uri, values) != -1 ? 1 : 0;
-        }
-        return updated;
-    }
-
-    /**
-     * This method does two things:
-     * * Based on the values provided, it computes and returns an incremental status change
-     *   that can be applied to the database to track changes for syncing. This should be
-     *   applied with {@link UpdateOperation#BITWISE_OR}.
-     * * It mutates the provided values to mark absolute field changes.
-     *
-     * @return null if no values were provided, or no change needs to be recorded.
-     */
-    private ContentValues processChangeValues(ContentValues values) {
-        if (values == null || values.size() == 0) {
-            return null;
-        }
-
-        final ContentValues out = new ContentValues();
-        int flag = 0;
-        if (values.containsKey(MARKED_READ_BY) ||
-            values.containsKey(MARKED_READ_ON) ||
-            values.containsKey(IS_UNREAD)) {
-            flag |= SYNC_CHANGE_UNREAD_CHANGED;
-        }
-
-        if (values.containsKey(IS_FAVORITE)) {
-            flag |= SYNC_CHANGE_FAVORITE_CHANGED;
-        }
-
-        if (values.containsKey(RESOLVED_URL) ||
-            values.containsKey(RESOLVED_TITLE) ||
-            values.containsKey(EXCERPT)) {
-            flag |= SYNC_CHANGE_RESOLVED;
-        }
-
-        if (flag == 0) {
-            return null;
-        }
-
-        out.put(SYNC_CHANGE_FLAGS, flag);
-        return out;
-    }
-
-    /**
-     * Updates items that match the selection criteria.
-     *
-     * @return Number of items updated or inserted
-     */
-    public int updateItemsWithFlags(Uri uri, ContentValues values, ContentValues flags, String selection, String[] selectionArgs) {
-        trace("Updating ReadingListItems on URI: " + uri);
-        final SQLiteDatabase db = getWritableDatabase(uri);
-        if (!values.containsKey(CLIENT_LAST_MODIFIED)) {
-            values.put(CLIENT_LAST_MODIFIED, System.currentTimeMillis());
-        }
-
-        if (flags == null) {
-            // This code path is used by Sync. Bypass metadata changes.
-            return db.update(TABLE_READING_LIST, values, selection, selectionArgs);
-        }
-
-        // Set synced items to MODIFIED; otherwise, leave the sync status untouched.
-        final ContentValues setModified = new ContentValues();
-        setModified.put(SYNC_STATUS, "CASE " + SYNC_STATUS +
-                                     " WHEN " + SYNC_STATUS_SYNCED +
-                                     " THEN " + SYNC_STATUS_MODIFIED +
-                                     " ELSE " + SYNC_STATUS +
-                                     " END");
-
-        final ContentValues[] valuesAndFlags = {values, flags, setModified};
-        final UpdateOperation[] ops = {UpdateOperation.ASSIGN, UpdateOperation.BITWISE_OR, UpdateOperation.EXPRESSION};
-
-        return DBUtils.updateArrays(db, TABLE_READING_LIST, valuesAndFlags, ops, selection, selectionArgs);
-    }
-
-    /**
-     * Inserts a new item into the DB. CLIENT_LAST_MODIFIED is generated if it is not specified.
-     *
-     * Non-Sync callers will have ADDED_ON and ADDED_BY set appropriately if they are missing;
-     * the assumption is that this is a new item added on this device.
-     *
-     * @return ID of the newly inserted item
-     */
-    private long insertItem(Uri uri, ContentValues values) {
-        if (!values.containsKey(CLIENT_LAST_MODIFIED)) {
-            values.put(CLIENT_LAST_MODIFIED, System.currentTimeMillis());
-        }
-
-        // We trust the syncing code to specify SYNC_STATUS_SYNCED.
-        if (!isCallerSync(uri)) {
-            values.put(SYNC_STATUS, SYNC_STATUS_NEW);
-            if (!values.containsKey(ADDED_ON)) {
-                values.put(ADDED_ON, System.currentTimeMillis());
-            }
-            if (!values.containsKey(ADDED_BY)) {
-                values.put(ADDED_BY, PLACEHOLDER_THIS_DEVICE);
-            }
-        }
-
-        final String url = values.getAsString(URL);
-        debug("Inserting item in database with URL: " + url);
-        try {
-            return getWritableDatabase(uri).insertOrThrow(TABLE_READING_LIST, null, values);
-        } catch (SQLException e) {
-            Log.e(LOGTAG, "Insert failed.", e);
-            throw e;
-        }
-    }
-
-    private static final ContentValues DELETED_VALUES;
-    static {
-        final ContentValues values = new ContentValues();
-        values.put(IS_DELETED, 1);
-
-        values.put(URL, "");             // Non-null column.
-        values.putNull(RESOLVED_URL);
-        values.putNull(RESOLVED_TITLE);
-        values.putNull(TITLE);
-        values.putNull(EXCERPT);
-        values.putNull(ADDED_BY);
-        values.putNull(MARKED_READ_BY);
-
-        // Mark it as deleted for sync purposes.
-        values.put(SYNC_STATUS, SYNC_STATUS_DELETED);
-        values.put(SYNC_CHANGE_FLAGS, SYNC_CHANGE_NONE);
-        DELETED_VALUES = values;
-    }
-
-    /**
-     * Deletes items. Item is marked as 'deleted' so that sync can
-     * detect the change.
-     *
-     * It's the caller's responsibility to handle both original and resolved URLs.
-     * @return Number of deleted items
-     */
-    int deleteItems(final Uri uri, String selection, String[] selectionArgs) {
-        debug("Deleting item entry for URI: " + uri);
-        final SQLiteDatabase db = getWritableDatabase(uri);
-
-        // TODO: also ensure that we delete affected items from the disk cache. Bug 1133158.
-        if (isCallerSync(uri)) {
-            debug("Directly deleting from reading list.");
-            return db.delete(TABLE_READING_LIST, selection, selectionArgs);
-        }
-
-        // If we don't have a GUID for this item, then it hasn't made it
-        // to the server. Just delete it.
-        // If we do have a GUID, blank the row and mark it as deleted.
-        int total = 0;
-        final String whereNullGUID = DBUtils.concatenateWhere(selection, GUID + " IS NULL");
-        final String whereNotNullGUID = DBUtils.concatenateWhere(selection, GUID + " IS NOT NULL");
-
-        total += db.delete(TABLE_READING_LIST, whereNullGUID, selectionArgs);
-        total += updateItemsWithFlags(uri, DELETED_VALUES, null, whereNotNullGUID, selectionArgs);
-
-        return total;
-    }
-
-    int deleteItemByID(final Uri uri, long id) {
-        debug("Deleting item entry for ID: " + id);
-        final SQLiteDatabase db = getWritableDatabase(uri);
-
-        // TODO: also ensure that we delete affected items from the disk cache. Bug 1133158.
-        if (isCallerSync(uri)) {
-            debug("Directly deleting from reading list.");
-            final String selection = _ID + " = " + id;
-            return db.delete(TABLE_READING_LIST, selection, null);
-        }
-
-        // If we don't have a GUID for this item, then it hasn't made it
-        // to the server. Just delete it.
-        final String whereNullGUID = _ID + " = " + id + " AND " + GUID + " IS NULL";
-        final int raw = db.delete(TABLE_READING_LIST, whereNullGUID, null);
-        if (raw > 0) {
-            // _ID is unique, so this should only ever be 1, but it definitely means
-            // we don't need to try the second part.
-            return raw;
-        }
-
-        // If we do have a GUID, blank the row and mark it as deleted.
-        final String whereNotNullGUID = _ID + " = " + id + " AND " + GUID + " IS NOT NULL";
-        final ContentValues values = new ContentValues(DELETED_VALUES);
-        values.put(CLIENT_LAST_MODIFIED, System.currentTimeMillis());
-        return updateItemsWithFlags(uri, values, null, whereNotNullGUID, null);
-    }
-
-    @Override
-    @SuppressWarnings("fallthrough")
-    public int updateInTransaction(final Uri uri, ContentValues values, String selection, String[] selectionArgs) {
-        trace("Calling update in transaction on URI: " + uri);
-
-        int updated = 0;
-        int match = URI_MATCHER.match(uri);
-
-        switch (match) {
-            case ITEMS_ID:
-                debug("Update on ITEMS_ID: " + uri);
-                selection = DBUtils.concatenateWhere(selection, TABLE_READING_LIST + "._id = ?");
-                selectionArgs = DBUtils.appendSelectionArgs(selectionArgs,
-                        new String[] { Long.toString(ContentUris.parseId(uri)) });
-
-            case ITEMS: {
-                debug("Updating ITEMS: " + uri);
-                if (shouldUpdateOrInsert(uri)) {
-                    // updateOrInsertItem handles change flags for us.
-                    updated = updateOrInsertItem(uri, values, selection, selectionArgs);
-                } else {
-                    // Don't use flags if we're inserting from sync.
-                    ContentValues flags = isCallerSync(uri) ? null : processChangeValues(values);
-                    updated = updateItemsWithFlags(uri, values, flags, selection, selectionArgs);
-                }
-                break;
-            }
-
-            default:
-                throw new UnsupportedOperationException("Unknown update URI " + uri);
-        }
-
-        debug("Updated " + updated + " rows for URI: " + uri);
-        return updated;
-    }
-
-
-    @Override
-    @SuppressWarnings("fallthrough")
-    public int deleteInTransaction(Uri uri, String selection, String[] selectionArgs) {
-        trace("Calling delete in transaction on URI: " + uri);
-
-        // This will never clean up any items that we're about to delete, so we
-        // might as well run it first!
-        cleanUpSomeDeletedRecords(uri, TABLE_READING_LIST);
-
-        int numDeleted = 0;
-        int match = URI_MATCHER.match(uri);
-
-        switch (match) {
-            case ITEMS_ID:
-                debug("Deleting on ITEMS_ID: " + uri);
-                numDeleted = deleteItemByID(uri, ContentUris.parseId(uri));
-                break;
-
-            case ITEMS:
-                debug("Deleting ITEMS: " + uri);
-                numDeleted = deleteItems(uri, selection, selectionArgs);
-                break;
-
-            default:
-                throw new UnsupportedOperationException("Unknown update URI " + uri);
-        }
-
-        debug("Deleted " + numDeleted + " rows for URI: " + uri);
-        return numDeleted;
-    }
-
-    @Override
-    public Uri insertInTransaction(Uri uri, ContentValues values) {
-        trace("Calling insert in transaction on URI: " + uri);
-        long id = -1;
-        int match = URI_MATCHER.match(uri);
-
-        switch (match) {
-            case ITEMS:
-                trace("Insert on ITEMS: " + uri);
-                id = insertItem(uri, values);
-                break;
-
-            default:
-                // Log here because we typically insert in a batch, and that will muffle.
-                Log.e(LOGTAG, "Unknown insert URI " + uri);
-                throw new UnsupportedOperationException("Unknown insert URI " + uri);
-        }
-
-        debug("Inserted ID in database: " + id);
-
-        if (id >= 0) {
-            return ContentUris.withAppendedId(uri, id);
-        }
-
-        Log.e(LOGTAG, "Got to end of insertInTransaction without returning an id!");
-        return null;
-    }
-
-    @Override
-    public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
-        String groupBy = null;
-        SQLiteDatabase db = getReadableDatabase(uri);
-        SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
-        String limit = uri.getQueryParameter(BrowserContract.PARAM_LIMIT);
-
-        final int match = URI_MATCHER.match(uri);
-        switch (match) {
-            case ITEMS_ID:
-                trace("Query on ITEMS_ID: " + uri);
-                selection = DBUtils.concatenateWhere(selection, _ID + " = ?");
-                selectionArgs = DBUtils.appendSelectionArgs(selectionArgs,
-                        new String[] { Long.toString(ContentUris.parseId(uri)) });
-
-            case ITEMS:
-                trace("Query on ITEMS: " + uri);
-                if (!shouldShowDeleted(uri)) {
-                    selection = DBUtils.concatenateWhere(IS_DELETED + " = 0", selection);
-                }
-                break;
-
-            default:
-                throw new UnsupportedOperationException("Unknown query URI " + uri);
-        }
-
-        if (TextUtils.isEmpty(sortOrder)) {
-            sortOrder = DEFAULT_SORT_ORDER;
-        }
-
-        trace("Running built query.");
-        qb.setTables(TABLE_READING_LIST);
-        Cursor cursor = qb.query(db, projection, selection, selectionArgs, groupBy, null, sortOrder, limit);
-        cursor.setNotificationUri(getContext().getContentResolver(), uri);
-
-        return cursor;
-    }
-
-    @Override
-    public String getType(Uri uri) {
-        trace("Getting URI type: " + uri);
-
-        final int match = URI_MATCHER.match(uri);
-        switch (match) {
-            case ITEMS:
-                trace("URI is ITEMS: " + uri);
-                return CONTENT_TYPE;
-
-            case ITEMS_ID:
-                trace("URI is ITEMS_ID: " + uri);
-                return CONTENT_ITEM_TYPE;
-        }
-
-        debug("URI has unrecognized type: " + uri);
-        return null;
-    }
-
-    @Override
-    protected String getDeletedItemSelection(long earlierThan) {
-        if (earlierThan == -1L) {
-            return IS_DELETED + " = 1";
-        }
-        return IS_DELETED + " = 1 AND " + CLIENT_LAST_MODIFIED + " <= " + earlierThan;
-    }
-}
--- a/mobile/android/base/java/org/mozilla/gecko/db/StubBrowserDB.java
+++ b/mobile/android/base/java/org/mozilla/gecko/db/StubBrowserDB.java
@@ -22,77 +22,16 @@ import org.mozilla.gecko.feeds.subscript
 import android.content.ContentProviderOperation;
 import android.content.ContentResolver;
 import android.content.ContentValues;
 import android.content.Context;
 import android.database.ContentObserver;
 import android.database.Cursor;
 import android.graphics.drawable.BitmapDrawable;
 
-class StubReadingListAccessor implements ReadingListAccessor {
-    @Override
-    public Cursor getReadingList(ContentResolver cr) {
-        return null;
-    }
-
-    @Override
-    public int getCount(ContentResolver cr) {
-        return 0;
-    }
-
-    @Override
-    public Cursor getReadingListUnfetched(ContentResolver cr) {
-        return null;
-    }
-
-    @Override
-    public boolean isReadingListItem(ContentResolver cr, String uri) {
-        return false;
-    }
-
-    @Override
-    public long addReadingListItem(ContentResolver cr, ContentValues values) {
-        return 0L;
-    }
-
-    @Override
-    public long addBasicReadingListItem(ContentResolver cr, String url, String title) {
-        return 0L;
-    }
-
-    @Override
-    public void updateReadingListItem(ContentResolver cr, ContentValues values) {
-    }
-
-    @Override
-    public void removeReadingListItemWithURL(ContentResolver cr, String uri) {
-    }
-
-    @Override
-    public void registerContentObserver(Context context, ContentObserver observer) {
-    }
-
-    @Override
-    public void markAsRead(ContentResolver cr, long itemID) {
-    }
-
-    @Override
-    public void markAsUnread(ContentResolver cr, long itemID) {
-    }
-
-    @Override
-    public void updateContent(ContentResolver cr, long itemID, String resolvedTitle, String resolvedURL, String excerpt) {
-    }
-
-    @Override
-    public void deleteItem(ContentResolver cr, long itemID) {
-
-    }
-}
-
 class StubSearches implements Searches {
     public StubSearches() {
     }
 
     public void insert(ContentResolver cr, String query) {
     }
 }
 
@@ -185,27 +124,32 @@ class StubUrlAnnotations implements UrlA
     @Override
     public void insertFeedSubscription(ContentResolver cr, FeedSubscription subscription) {}
 
     @Override
     public boolean hasFeedUrlForWebsite(ContentResolver cr, String websiteUrl) { return false; }
 
     @Override
     public void insertFeedUrl(ContentResolver cr, String originUrl, String feedUrl) {}
+
+    @Override
+    public void insertReaderViewUrl(ContentResolver cr, String pageURL) {}
+
+    @Override
+    public void deleteReaderViewUrl(ContentResolver cr, String pageURL) {}
 }
 
 /*
  * This base implementation just stubs all methods. For the
  * real implementations, see LocalBrowserDB.java.
  */
 public class StubBrowserDB implements BrowserDB {
     private final StubSearches searches = new StubSearches();
     private final StubTabsAccessor tabsAccessor = new StubTabsAccessor();
     private final StubURLMetadata urlMetadata = new StubURLMetadata();
-    private final StubReadingListAccessor readingListAccessor = new StubReadingListAccessor();
     private final StubUrlAnnotations urlAnnotations = new StubUrlAnnotations();
     private SuggestedSites suggestedSites = null;
 
     @Override
     public Searches getSearches() {
         return searches;
     }
 
@@ -215,21 +159,16 @@ public class StubBrowserDB implements Br
     }
 
     @Override
     public URLMetadata getURLMetadata() {
         return urlMetadata;
     }
 
     @Override
-    public ReadingListAccessor getReadingListAccessor() {
-        return readingListAccessor;
-    }
-
-    @Override
     public UrlAnnotations getUrlAnnotations() {
         return urlAnnotations;
     }
 
     protected static final Integer FAVICON_ID_NOT_FOUND = Integer.MIN_VALUE;
 
     public StubBrowserDB(String profile) {
     }
@@ -287,58 +226,37 @@ public class StubBrowserDB implements Br
     public void clearHistory(ContentResolver cr, boolean clearSearchHistory) {
     }
 
     @RobocopTarget
     public Cursor getBookmarksInFolder(ContentResolver cr, long folderId) {
         return null;
     }
 
-    public Cursor getReadingList(ContentResolver cr) {
-        return null;
-    }
-
-    public Cursor getReadingListUnfetched(ContentResolver cr) {
-        return null;
-    }
-
     @RobocopTarget
     public boolean isBookmark(ContentResolver cr, String uri) {
         return false;
     }
 
-    public boolean isReadingListItem(ContentResolver cr, String uri) {
-        return false;
-    }
-
     public String getUrlForKeyword(ContentResolver cr, String keyword) {
         return null;
     }
 
     protected void bumpParents(ContentResolver cr, String param, String value) {
     }
 
     @RobocopTarget
     public boolean addBookmark(ContentResolver cr, String title, String uri) {
         return false;
     }
 
     @RobocopTarget
     public void removeBookmarksWithURL(ContentResolver cr, String uri) {
     }
 
-    public void addReadingListItem(ContentResolver cr, ContentValues values) {
-    }
-
-    public void updateReadingListItem(ContentResolver cr, ContentValues values) {
-    }
-
-    public void removeReadingListItemWithURL(ContentResolver cr, String uri) {
-    }
-
     public void registerBookmarkObserver(ContentResolver cr, ContentObserver observer) {
     }
 
     @RobocopTarget
     public void updateBookmark(ContentResolver cr, int id, String uri, String title, String keyword) {
     }
 
     public LoadFaviconResult getFaviconForUrl(ContentResolver cr, String faviconURL) {
--- a/mobile/android/base/java/org/mozilla/gecko/db/UrlAnnotations.java
+++ b/mobile/android/base/java/org/mozilla/gecko/db/UrlAnnotations.java
@@ -20,9 +20,12 @@ public interface UrlAnnotations {
     void deleteFeedUrl(ContentResolver cr, String websiteUrl);
     boolean hasWebsiteForFeedUrl(ContentResolver cr, String feedUrl);
     void deleteFeedSubscription(ContentResolver cr, FeedSubscription subscription);
     void updateFeedSubscription(ContentResolver cr, FeedSubscription subscription);
     boolean hasFeedSubscription(ContentResolver cr, String feedUrl);
     void insertFeedSubscription(ContentResolver cr, FeedSubscription subscription);
     boolean hasFeedUrlForWebsite(ContentResolver cr, String websiteUrl);
     void insertFeedUrl(ContentResolver cr, String originUrl, String feedUrl);
+
+    void insertReaderViewUrl(ContentResolver cr, String pageURL);
+    void deleteReaderViewUrl(ContentResolver cr, String pageURL);
 }
--- a/mobile/android/base/java/org/mozilla/gecko/home/BookmarksListAdapter.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/BookmarksListAdapter.java
@@ -272,16 +272,18 @@ class BookmarksListAdapter extends Multi
         } else if (guid.equals(Bookmarks.MENU_FOLDER_GUID)) {
             return res.getString(R.string.bookmarks_folder_menu);
         } else if (guid.equals(Bookmarks.TOOLBAR_FOLDER_GUID)) {
             return res.getString(R.string.bookmarks_folder_toolbar);
         } else if (guid.equals(Bookmarks.UNFILED_FOLDER_GUID)) {
             return res.getString(R.string.bookmarks_folder_unfiled);
         } else if (guid.equals(Bookmarks.SCREENSHOT_FOLDER_GUID)) {
             return res.getString(R.string.screenshot_folder_label_in_bookmarks);
+        } else if (guid.equals(Bookmarks.FAKE_READINGLIST_SMARTFOLDER_GUID)) {
+            return res.getString(R.string.readinglist_smartfolder_label_in_bookmarks);
         }
 
         // If for some reason we have a folder with a special GUID, but it's not one of
         // the special folders we expect in the UI, just return the title from the DB.
         return c.getString(c.getColumnIndexOrThrow(Bookmarks.TITLE));
     }
 
     /**
--- a/mobile/android/base/java/org/mozilla/gecko/home/CombinedHistoryPanel.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/CombinedHistoryPanel.java
@@ -336,21 +336,21 @@ public class CombinedHistoryPanel extend
                     emptyHint.setText(hintBuilder);
                     emptyHint.setMovementMethod(LinkMovementMethod.getInstance());
                     emptyHint.setVisibility(View.VISIBLE);
                 }
 
                 if (!Restrictions.isAllowed(getActivity(), Restrictable.PRIVATE_BROWSING)) {
                     emptyHint.setVisibility(View.GONE);
                 }
-                mEmptyView.setVisibility(View.VISIBLE);
-            } else {
-                if (mEmptyView != null) {
-                    mEmptyView.setVisibility(View.GONE);
-                }
+            }
+            mEmptyView.setVisibility(View.VISIBLE);
+        } else {
+            if (mEmptyView != null) {
+                mEmptyView.setVisibility(View.GONE);
             }
         }
     }
     /**
      * Make Span that is clickable, and underlined
      * between the string markers <code>FORMAT_S1</code> and
      * <code>FORMAT_S2</code>.
      *
--- a/mobile/android/base/java/org/mozilla/gecko/home/HomeContextMenuInfo.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/HomeContextMenuInfo.java
@@ -19,43 +19,37 @@ import android.widget.ListAdapter;
  */
 public class HomeContextMenuInfo extends AdapterContextMenuInfo {
 
     public String url;
     public String title;
     public boolean isFolder;
     public int historyId = -1;
     public int bookmarkId = -1;
-    public int readingListItemId = -1;
-    public boolean isUnread;
     public RemoveItemType itemType = null;
 
     // Item type to be handled with "Remove" selection.
     public static enum RemoveItemType {
-        BOOKMARKS, HISTORY, READING_LIST
+        BOOKMARKS, HISTORY
     }
 
     public HomeContextMenuInfo(View targetView, int position, long id) {
         super(targetView, position, id);
     }
 
     public boolean hasBookmarkId() {
         return bookmarkId > -1;
     }
 
     public boolean hasHistoryId() {
         return historyId > -1;
     }
 
-    public boolean isInReadingList() {
-        return readingListItemId > -1;
-    }
-
     public boolean canRemove() {
-        return hasBookmarkId() || hasHistoryId() || isInReadingList();
+        return hasBookmarkId() || hasHistoryId();
     }
 
     public String getDisplayTitle() {
         if (!TextUtils.isEmpty(title)) {
             return title;
         }
         return StringUtils.stripCommonSubdomains(StringUtils.stripScheme(url, StringUtils.UrlFlags.STRIP_HTTPS));
     }
--- a/mobile/android/base/java/org/mozilla/gecko/home/HomeFragment.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/HomeFragment.java
@@ -5,30 +5,30 @@
 
 package org.mozilla.gecko.home;
 
 import java.util.EnumSet;
 
 import org.mozilla.gecko.EditBookmarkDialog;
 import org.mozilla.gecko.GeckoAppShell;
 import org.mozilla.gecko.GeckoApplication;
-import org.mozilla.gecko.GeckoEvent;
 import org.mozilla.gecko.GeckoProfile;
 import org.mozilla.gecko.IntentHelper;
 import org.mozilla.gecko.R;
-import org.mozilla.gecko.reader.ReaderModeUtils;
 import org.mozilla.gecko.SnackbarHelper;
 import org.mozilla.gecko.Telemetry;
 import org.mozilla.gecko.TelemetryContract;
 import org.mozilla.gecko.db.BrowserDB;
 import org.mozilla.gecko.db.BrowserContract.SuggestedSites;
 import org.mozilla.gecko.home.HomeContextMenuInfo.RemoveItemType;
 import org.mozilla.gecko.home.HomePager.OnUrlOpenInBackgroundListener;
 import org.mozilla.gecko.home.HomePager.OnUrlOpenListener;
 import org.mozilla.gecko.home.TopSitesGridView.TopSitesGridContextMenuInfo;
+import org.mozilla.gecko.reader.SavedReaderViewHelper;
+import org.mozilla.gecko.reader.ReadingListHelper;
 import org.mozilla.gecko.restrictions.Restrictable;
 import org.mozilla.gecko.restrictions.Restrictions;
 import org.mozilla.gecko.util.Clipboard;
 import org.mozilla.gecko.util.StringUtils;
 import org.mozilla.gecko.util.ThreadUtils;
 import org.mozilla.gecko.util.UIAsyncTask;
 
 import android.app.Activity;
@@ -144,35 +144,32 @@ public abstract class HomeFragment exten
 
         // Hide unused menu items.
         menu.findItem(R.id.top_sites_edit).setVisible(false);
         menu.findItem(R.id.top_sites_pin).setVisible(false);
         menu.findItem(R.id.top_sites_unpin).setVisible(false);
 
         // Hide the "Edit" menuitem if this item isn't a bookmark,
         // or if this is a reading list item.
-        if (!info.hasBookmarkId() || info.isInReadingList()) {
+        if (!info.hasBookmarkId()) {
             menu.findItem(R.id.home_edit_bookmark).setVisible(false);
         }
 
         // Hide the "Remove" menuitem if this item not removable.
         if (!info.canRemove()) {
             menu.findItem(R.id.home_remove).setVisible(false);
         }
 
         if (!StringUtils.isShareableUrl(info.url) || GeckoProfile.get(getActivity()).inGuestMode()) {
             menu.findItem(R.id.home_share).setVisible(false);
         }
 
         if (!Restrictions.isAllowed(view.getContext(), Restrictable.PRIVATE_BROWSING)) {
             menu.findItem(R.id.home_open_private_tab).setVisible(false);
         }
-
-        menu.findItem(R.id.mark_read).setVisible(info.isInReadingList() && info.isUnread);
-        menu.findItem(R.id.mark_unread).setVisible(info.isInReadingList() && !info.isUnread);
     }
 
     @Override
     public boolean onContextItemSelected(MenuItem item) {
         // onContextItemSelected() is first dispatched to the activity and
         // then dispatched to its fragments. Since fragments cannot "override"
         // menu item selection handling, it's better to avoid menu id collisions
         // between the activity and its fragments.
@@ -244,19 +241,17 @@ public abstract class HomeFragment exten
                 Log.e(LOGTAG, "Can't open in new tab because URL is null");
                 return false;
             }
 
             // Some pinned site items have "user-entered" urls. URLs entered in
             // the PinSiteDialog are wrapped in a special URI until we can get a
             // valid URL. If the url is a user-entered url, decode the URL
             // before loading it.
-            final String url = StringUtils.decodeUserEnteredUrl(info.isInReadingList()
-                    ? ReaderModeUtils.getAboutReaderForUrl(info.url)
-                    : info.url);
+            final String url = StringUtils.decodeUserEnteredUrl(info.url);
 
             final EnumSet<OnUrlOpenInBackgroundListener.Flags> flags = EnumSet.noneOf(OnUrlOpenInBackgroundListener.Flags.class);
             if (item.getItemId() == R.id.home_open_private_tab) {
                 flags.add(OnUrlOpenInBackgroundListener.Flags.PRIVATE);
             }
 
             mUrlOpenInBackgroundListener.onUrlOpenInBackground(url, flags);
 
@@ -274,32 +269,16 @@ public abstract class HomeFragment exten
         if (itemId == R.id.home_remove) {
             // For Top Sites grid items, position is required in case item is Pinned.
             final int position = info instanceof TopSitesGridContextMenuInfo ? info.position : -1;
 
             (new RemoveItemByUrlTask(context, info.url, info.itemType, position)).execute();
             return true;
         }
 
-        if (itemId == R.id.mark_read) {
-            GeckoProfile
-                    .get(context)
-                    .getDB()
-                    .getReadingListAccessor()
-                    .markAsRead(context.getContentResolver(), info.id);
-        }
-
-        if (itemId == R.id.mark_unread) {
-            GeckoProfile
-                    .get(context)
-                    .getDB()
-                    .getReadingListAccessor()
-                    .markAsUnread(context.getContentResolver(), info.id);
-        }
-
         return false;
     }
 
     @Override
     public void setUserVisibleHint (boolean isVisibleToUser) {
         if (isVisibleToUser == getUserVisibleHint()) {
             return;
         }
@@ -398,28 +377,28 @@ public abstract class HomeFragment exten
                     cr.notifyChange(SuggestedSites.CONTENT_URI, null);
                 }
             }
 
             switch(mType) {
                 case BOOKMARKS:
                     Telemetry.sendUIEvent(TelemetryContract.Event.UNSAVE, TelemetryContract.Method.CONTEXT_MENU, "bookmark");
                     mDB.removeBookmarksWithURL(cr, mUrl);
+
+                    SavedReaderViewHelper rch = SavedReaderViewHelper.getSavedReaderViewHelper(mContext);
+                    if (rch.isURLCached(mUrl)) {
+                        ReadingListHelper.removeCachedReaderItem(mUrl, mContext);
+                    }
+
                     break;
 
                 case HISTORY:
                     mDB.removeHistoryEntry(cr, mUrl);
                     break;
 
-                case READING_LIST:
-                    Telemetry.sendUIEvent(TelemetryContract.Event.UNSAVE, TelemetryContract.Method.CONTEXT_MENU, "reading_list");
-                    mDB.getReadingListAccessor().removeReadingListItemWithURL(cr, mUrl);
-                    GeckoAppShell.notifyObservers("Reader:Removed", mUrl);
-                    break;
-
                 default:
                     Log.e(LOGTAG, "Can't remove item type " + mType.toString());
                     break;
             }
             return null;
         }
 
         @Override
--- a/mobile/android/base/java/org/mozilla/gecko/home/HomePager.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/HomePager.java
@@ -62,17 +62,16 @@ public class HomePager extends ViewPager
 
     // Listens for when the current panel changes.
     private OnPanelChangeListener mPanelChangedListener;
 
     // This is mostly used by UI tests to easily fetch
     // specific list views at runtime.
     public static final String LIST_TAG_HISTORY = "history";
     public static final String LIST_TAG_BOOKMARKS = "bookmarks";
-    public static final String LIST_TAG_READING_LIST = "reading_list";
     public static final String LIST_TAG_TOP_SITES = "top_sites";
     public static final String LIST_TAG_RECENT_TABS = "recent_tabs";
     public static final String LIST_TAG_BROWSER_SEARCH = "browser_search";
     public static final String LIST_TAG_REMOTE_TABS = "remote_tabs";
 
     public interface OnUrlOpenListener {
         public enum Flags {
             ALLOW_SWITCH_TO_TAB,
--- a/mobile/android/base/java/org/mozilla/gecko/home/ReadingListPanel.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/ReadingListPanel.java
@@ -1,228 +1,61 @@
 /* -*- Mode: Java; c-basic-offset: 4; tab-width: 20; indent-tabs-mode: nil; -*-
  * 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/. */
 
 package org.mozilla.gecko.home;
 
-import java.util.EnumSet;
+import android.os.Bundle;
 
-import org.mozilla.gecko.GeckoProfile;
+import java.util.EnumSet;
+import java.util.Locale;
+
+import org.mozilla.gecko.AppConstants;
+import org.mozilla.gecko.Locales;
 import org.mozilla.gecko.R;
-import org.mozilla.gecko.reader.ReaderModeUtils;
-import org.mozilla.gecko.Telemetry;
-import org.mozilla.gecko.TelemetryContract;
-import org.mozilla.gecko.db.BrowserContract.ReadingListItems;
-import org.mozilla.gecko.db.BrowserContract.URLColumns;
-import org.mozilla.gecko.db.ReadingListAccessor;
-import org.mozilla.gecko.home.HomeContextMenuInfo.RemoveItemType;
-import org.mozilla.gecko.home.HomePager.OnUrlOpenListener;
 
-import android.content.Context;
-import android.database.Cursor;
-import android.os.Bundle;
-import android.support.v4.content.Loader;
-import android.support.v4.app.LoaderManager;
-import android.support.v4.widget.CursorAdapter;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.view.ViewStub;
-import android.widget.AdapterView;
-import android.widget.ImageView;
-import android.widget.TextView;
-import org.mozilla.gecko.util.NetworkUtils;
 
 /**
- * Fragment that displays reading list contents in a ListView.
+ * Fragment that used to display reading list contents in a ListView, and now directs
+ * users to Bookmarks to view their former reading-list content.
  */
 public class ReadingListPanel extends HomeFragment {
 
-    // Cursor loader ID for reading list
-    private static final int LOADER_ID_READING_LIST = 0;
-
-    // Formatted string in hint text to be replaced with an icon.
-    private final String MATCH_STRING = "%I";
-
-    // Adapter for the list of reading list items
-    private ReadingListAdapter mAdapter;
-
-    // The view shown by the fragment
-    private HomeListView mList;
-
-    // Reference to the View to display when there are no results.
-    private View mEmptyView;
-
-    // Reference to top view.
-    private View mTopView;
-
-    // Callbacks used for the reading list and favicon cursor loaders
-    private CursorLoaderCallbacks mCursorLoaderCallbacks;
-
     @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
-        return inflater.inflate(R.layout.home_list_panel, container, false);
-    }
+    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstance) {
+        final ViewGroup root = (ViewGroup) inflater.inflate(R.layout.readinglistpanel_gone_fragment, container, false);
 
-    @Override
-    public void onViewCreated(View view, Bundle savedInstanceState) {
-        super.onViewCreated(view, savedInstanceState);
-
-        mTopView = view;
-
-        mList = (HomeListView) view.findViewById(R.id.list);
-        mList.setTag(HomePager.LIST_TAG_READING_LIST);
-
-        mList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+        // We could update the ID names - however this panel is only intended to be live for one
+        // release, hence there's little utility in optimising this code.
+        root.findViewById(R.id.welcome_account).setOnClickListener(new View.OnClickListener() {
             @Override
-            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
-                final Context context = getActivity();
-                if (context == null) {
-                    return;
-                }
-
-                final Cursor c = mAdapter.getCursor();
-                if (c == null || !c.moveToPosition(position)) {
-                    return;
-                }
-
-                String url = c.getString(c.getColumnIndexOrThrow(URLColumns.URL));
-                url = ReaderModeUtils.getAboutReaderForUrl(url);
-
-                Telemetry.sendUIEvent(TelemetryContract.Event.LOAD_URL, TelemetryContract.Method.LIST_ITEM, "reading_list");
-                Telemetry.addToHistogram("FENNEC_LOAD_SAVED_PAGE", NetworkUtils.isConnected(context) ? 0 : 1);
-
-                // This item is a TwoLinePageRow, so we allow switch-to-tab.
-                mUrlOpenListener.onUrlOpen(url, EnumSet.of(OnUrlOpenListener.Flags.ALLOW_SWITCH_TO_TAB));
-
-                markAsRead(context, id);
+            public void onClick(View v) {
+                mUrlOpenListener.onUrlOpen("about:home?panel=" + HomeConfig.getIdForBuiltinPanelType(HomeConfig.PanelType.BOOKMARKS),
+                        EnumSet.noneOf(HomePager.OnUrlOpenListener.Flags.class));
             }
         });
 
-        mList.setContextMenuInfoFactory(new HomeContextMenuInfo.Factory() {
+        root.findViewById(R.id.welcome_browse).setOnClickListener(new View.OnClickListener() {
             @Override
-            public HomeContextMenuInfo makeInfoForCursor(View view, int position, long id, Cursor cursor) {
-                final HomeContextMenuInfo info = new HomeContextMenuInfo(view, position, id);
-                info.url = cursor.getString(cursor.getColumnIndexOrThrow(ReadingListItems.URL));
-                info.title = cursor.getString(cursor.getColumnIndexOrThrow(ReadingListItems.TITLE));
-                info.readingListItemId = cursor.getInt(cursor.getColumnIndexOrThrow(ReadingListItems._ID));
-                info.isUnread = cursor.getInt(cursor.getColumnIndexOrThrow(ReadingListItems.IS_UNREAD)) == 1;
-                info.itemType = RemoveItemType.READING_LIST;
-                return info;
+            public void onClick(View v) {
+                final String link = getString(R.string.migrated_reading_list_url,
+                        AppConstants.MOZ_APP_VERSION,
+                        AppConstants.OS_TARGET,
+                        Locales.getLanguageTag(Locale.getDefault()));
+
+                mUrlOpenListener.onUrlOpen(link,
+                        EnumSet.noneOf(HomePager.OnUrlOpenListener.Flags.class));
             }
         });
-        registerForContextMenu(mList);
-    }
 
-    private void markAsRead(final Context context, final long id) {
-        GeckoProfile.get(context).getDB().getReadingListAccessor().markAsRead(
-            context.getContentResolver(),
-            id
-        );
-    }
-
-    @Override
-    public void onDestroyView() {
-        super.onDestroyView();
-
-        // Discard any additional item clicks on the list as the
-        // panel is getting destroyed (bug 1210243).
-        mList.setOnItemClickListener(null);
-
-        mList = null;
-        mTopView = null;
-        mEmptyView = null;
-    }
-
-    @Override
-    public void onActivityCreated(Bundle savedInstanceState) {
-        super.onActivityCreated(savedInstanceState);
-
-        mAdapter = new ReadingListAdapter(getActivity(), null);
-        mList.setAdapter(mAdapter);
-
-        // Create callbacks before the initial loader is started.
-        mCursorLoaderCallbacks = new CursorLoaderCallbacks();
-        loadIfVisible();
+        return root;
     }
 
     @Override
     protected void load() {
-        getLoaderManager().initLoader(LOADER_ID_READING_LIST, null, mCursorLoaderCallbacks);
-    }
-
-    private void updateUiFromCursor(Cursor c) {
-        // We delay setting the empty view until the cursor is actually empty.
-        // This avoids image flashing.
-        if ((c == null || c.getCount() == 0) && mEmptyView == null) {
-            final ViewStub emptyViewStub = (ViewStub) mTopView.findViewById(R.id.home_empty_view_stub);
-            mEmptyView = emptyViewStub.inflate();
-
-            final TextView emptyText = (TextView) mEmptyView.findViewById(R.id.home_empty_text);
-            emptyText.setText(R.string.home_reading_list_empty);
-
-            final ImageView emptyImage = (ImageView) mEmptyView.findViewById(R.id.home_empty_image);
-            emptyImage.setImageResource(R.drawable.icon_reading_list_empty);
-
-            mList.setEmptyView(mEmptyView);
-        }
-    }
-
-    /**
-     * Cursor loader for the list of reading list items.
-     */
-    private static class ReadingListLoader extends SimpleCursorLoader {
-        private final ReadingListAccessor accessor;
-
-        public ReadingListLoader(Context context) {
-            super(context);
-            accessor = GeckoProfile.get(context).getDB().getReadingListAccessor();
-        }
-
-        @Override
-        public Cursor loadCursor() {
-            return accessor.getReadingList(getContext().getContentResolver());
-        }
-    }
-
-    /**
-     * Cursor adapter for the list of reading list items.
-     */
-    private class ReadingListAdapter extends CursorAdapter {
-        public ReadingListAdapter(Context context, Cursor cursor) {
-            super(context, cursor, 0);
-        }
-
-        @Override
-        public void bindView(View view, Context context, Cursor cursor) {
-            final ReadingListRow row = (ReadingListRow) view;
-            row.updateFromCursor(cursor);
-        }
-
-        @Override
-        public View newView(Context context, Cursor cursor, ViewGroup parent) {
-            return LayoutInflater.from(parent.getContext()).inflate(R.layout.reading_list_item_row, parent, false);
-        }
-    }
-
-    /**
-     * LoaderCallbacks implementation that interacts with the LoaderManager.
-     */
-    private class CursorLoaderCallbacks implements LoaderManager.LoaderCallbacks<Cursor> {
-        @Override
-        public Loader<Cursor> onCreateLoader(int id, Bundle args) {
-            return new ReadingListLoader(getActivity());
-        }
-
-        @Override
-        public void onLoadFinished(Loader<Cursor> loader, Cursor c) {
-            mAdapter.swapCursor(c);
-            updateUiFromCursor(c);
-        }
-
-        @Override
-        public void onLoaderReset(Loader<Cursor> loader) {
-            mAdapter.swapCursor(null);
-        }
+        // Must be overriden, but we're not doing any loading hence no real implementation...
     }
 }
deleted file mode 100644
--- a/mobile/android/base/java/org/mozilla/gecko/home/ReadingListRow.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/* -*- Mode: Java; c-basic-offset: 4; tab-width: 20; indent-tabs-mode: nil; -*-
- * 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/. */
-
-package org.mozilla.gecko.home;
-
-import org.mozilla.gecko.R;
-import org.mozilla.gecko.db.BrowserContract.ReadingListItems;
-import org.mozilla.gecko.util.StringUtils;
-
-import android.content.Context;
-import android.database.Cursor;
-import android.text.TextUtils;
-import android.util.AttributeSet;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-
-public class ReadingListRow extends LinearLayout {
-    private TextView title;
-    private TextView excerpt;
-    private ImageView indicator;
-
-    public ReadingListRow(Context context) {
-        this(context, null);
-    }
-
-    public ReadingListRow(Context context, AttributeSet attrs) {
-        super(context, attrs);
-    }
-
-    @Override
-    protected void onFinishInflate() {
-        super.onFinishInflate();
-        title = (TextView) findViewById(R.id.title);
-        excerpt = (TextView) findViewById(R.id.excerpt);
-        indicator = (ImageView) findViewById(R.id.indicator);
-    }
-
-    public void updateFromCursor(Cursor cursor) {
-        if (cursor == null) {
-            return;
-        }
-
-        final boolean isUnread = cursor.getInt(cursor.getColumnIndexOrThrow(ReadingListItems.IS_UNREAD)) == 1;
-
-        final String url = cursor.getString(cursor.getColumnIndexOrThrow(ReadingListItems.URL));
-
-        final String titleText = cursor.getString(cursor.getColumnIndexOrThrow(ReadingListItems.TITLE));
-        title.setText(TextUtils.isEmpty(titleText) ? StringUtils.stripCommonSubdomains(StringUtils.stripScheme(url)) : titleText);
-        title.setTextAppearance(getContext(), isUnread ? R.style.Widget_ReadingListRow_Title_Unread : R.style.Widget_ReadingListRow_Title_Read);
-
-        final String excerptText = cursor.getString(cursor.getColumnIndexOrThrow(ReadingListItems.EXCERPT));
-        excerpt.setText(TextUtils.isEmpty(excerptText) ? url : excerptText);
-        excerpt.setTextAppearance(getContext(), isUnread ? R.style.Widget_ReadingListRow_Title_Unread : R.style.Widget_ReadingListRow_Title_Read);
-
-        indicator.setImageResource(isUnread ? R.drawable.reading_list_indicator_unread : R.drawable.reading_list_indicator_read);
-    }
-
-}
--- a/mobile/android/base/java/org/mozilla/gecko/home/TopSitesPanel.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/TopSitesPanel.java
@@ -346,20 +346,16 @@ public class TopSitesPanel extends HomeF
 
         if (!StringUtils.isShareableUrl(info.url) || GeckoProfile.get(getActivity()).inGuestMode()) {
             menu.findItem(R.id.home_share).setVisible(false);
         }
 
         if (!Restrictions.isAllowed(context, Restrictable.PRIVATE_BROWSING)) {
             menu.findItem(R.id.home_open_private_tab).setVisible(false);
         }
-
-        // We only show these menu items on the reading list panel:
-        menu.findItem(R.id.mark_read).setVisible(false);
-        menu.findItem(R.id.mark_unread).setVisible(false);
     }
 
     @Override
     public boolean onContextItemSelected(MenuItem item) {
         if (super.onContextItemSelected(item)) {
             // HomeFragment was able to handle to selected item.
             return true;
         }
--- a/mobile/android/base/java/org/mozilla/gecko/home/TwoLinePageRow.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/TwoLinePageRow.java
@@ -4,16 +4,17 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 package org.mozilla.gecko.home;
 
 import java.lang.ref.WeakReference;
 
 import org.mozilla.gecko.AboutPages;
 import org.mozilla.gecko.R;
+import org.mozilla.gecko.reader.SavedReaderViewHelper;
 import org.mozilla.gecko.reader.ReaderModeUtils;
 import org.mozilla.gecko.Tab;
 import org.mozilla.gecko.Tabs;
 import org.mozilla.gecko.db.BrowserContract.Combined;
 import org.mozilla.gecko.db.BrowserContract.URLColumns;
 import org.mozilla.gecko.favicons.Favicons;
 import org.mozilla.gecko.favicons.OnFaviconLoadedListener;
 import org.mozilla.gecko.widget.FaviconView;
@@ -21,31 +22,33 @@ import org.mozilla.gecko.widget.FaviconV
 import android.content.Context;
 import android.database.Cursor;
 import android.graphics.Bitmap;
 import android.text.TextUtils;
 import android.util.AttributeSet;
 import android.view.Gravity;
 import android.view.LayoutInflater;
 import android.widget.ImageView;
+import android.view.View;
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
 public class TwoLinePageRow extends LinearLayout
                             implements Tabs.OnTabsChangedListener {
 
     protected static final int NO_ICON = 0;
 
     private final TextView mTitle;
     private final TextView mUrl;
     private final ImageView mStatusIcon;
 
     private int mSwitchToTabIconId;
 
     private final FaviconView mFavicon;
+    private final View mReaderCached;
 
     private boolean mShowIcons;
     private int mLoadFaviconJobId = Favicons.NOT_LOADING;
 
     // Only holds a reference to the FaviconView itself, so if the row gets
     // discarded while a task is outstanding, we'll leak less memory.
     private static class UpdateViewFaviconLoadedListener implements OnFaviconLoadedListener {
         private final WeakReference<FaviconView> view;
@@ -76,16 +79,18 @@ public class TwoLinePageRow extends Line
     }
 
     // Listener for handling Favicon loads.
     private final OnFaviconLoadedListener mFaviconListener;
 
     // The URL for the page corresponding to this view.
     private String mPageUrl;
 
+    private boolean mHasReaderCacheItem;
+
     public TwoLinePageRow(Context context) {
         this(context, null);
     }
 
     public TwoLinePageRow(Context context, AttributeSet attrs) {
         super(context, attrs);
 
         setGravity(Gravity.CENTER_VERTICAL);
@@ -98,16 +103,18 @@ public class TwoLinePageRow extends Line
         mUrl = (TextView) findViewById(R.id.url);
         mStatusIcon = (ImageView) findViewById(R.id.status_icon_bookmark);
 
         mSwitchToTabIconId = NO_ICON;
         mShowIcons = true;
 
         mFavicon = (FaviconView) findViewById(R.id.icon);
         mFaviconListener = new UpdateViewFaviconLoadedListener(mFavicon);
+
+        mReaderCached = findViewById(R.id.is_reader_cached);
     }
 
     @Override
     protected void onAttachedToWindow() {
         super.onAttachedToWindow();
 
         Tabs.registerOnTabsChangedListener(this);
     }
@@ -184,29 +191,37 @@ public class TwoLinePageRow extends Line
         final int visibility = toShow ? VISIBLE : GONE;
         mStatusIcon.setVisibility(visibility);
     }
 
     /**
      * Stores the page URL, so that we can use it to replace "Switch to tab" if the open
      * tab changes or is closed.
      */
-    private void updateDisplayedUrl(String url) {
+    private void updateDisplayedUrl(String url, boolean hasReaderCacheItem) {
         mPageUrl = url;
+        mHasReaderCacheItem = hasReaderCacheItem;
         updateDisplayedUrl();
     }
 
     /**
      * Replaces the page URL with "Switch to tab" if there is already a tab open with that URL.
      * Only looks for tabs that are either private or non-private, depending on the current
      * selected tab.
      */
     protected void updateDisplayedUrl() {
         boolean isPrivate = Tabs.getInstance().getSelectedTab().isPrivate();
-        Tab tab = Tabs.getInstance().getFirstTabForUrl(mPageUrl, isPrivate);
+
+        // We always want to display the underlying page url, however for readermode pages
+        // we navigate to the about:reader equivalent, hence we need to use that url when finding
+        // existing tabs
+        final String navigationUrl = mHasReaderCacheItem ? ReaderModeUtils.getAboutReaderForUrl(mPageUrl) : mPageUrl;
+        Tab tab = Tabs.getInstance().getFirstTabForUrl(navigationUrl, isPrivate);
+
+
         if (!mShowIcons || tab == null) {
             setUrl(mPageUrl);
             setSwitchToTabIcon(NO_ICON);
         } else {
             setUrl(R.string.switch_to_tab);
             setSwitchToTabIcon(R.drawable.ic_url_bar_tab);
         }
     }
@@ -219,20 +234,20 @@ public class TwoLinePageRow extends Line
      * Update the data displayed by this row.
      * <p>
      * This method must be invoked on the UI thread.
      *
      * @param title to display.
      * @param url to display.
      */
     public void update(String title, String url) {
-        update(title, url, 0);
+        update(title, url, 0, false);
     }
 
-    protected void update(String title, String url, long bookmarkId) {
+    protected void update(String title, String url, long bookmarkId, boolean hasReaderCacheItem) {
         if (mShowIcons) {
             // The bookmark id will be 0 (null in database) when the url
             // is not a bookmark.
             final boolean isBookmark = bookmarkId != 0;
             showBookmarkIcon(isBookmark);
         } else {
             showBookmarkIcon(false);
         }
@@ -251,17 +266,19 @@ public class TwoLinePageRow extends Line
         Favicons.cancelFaviconLoad(mLoadFaviconJobId);
 
         // Displayed RecentTabsPanel URLs may refer to pages opened in reader mode, so we
         // remove the about:reader prefix to ensure the Favicon loads properly.
         final String pageURL = AboutPages.isAboutReader(url) ?
             ReaderModeUtils.getUrlFromAboutReader(url) : url;
         mLoadFaviconJobId = Favicons.getSizedFaviconForPageFromLocal(getContext(), pageURL, mFaviconListener);
 
-        updateDisplayedUrl(url);
+        updateDisplayedUrl(url, hasReaderCacheItem);
+
+        mReaderCached.setVisibility(hasReaderCacheItem ? View.VISIBLE : View.INVISIBLE);
     }
 
     /**
      * Update the data displayed by this row.
      * <p>
      * This method must be invoked on the UI thread.
      *
      * @param cursor to extract data from.
@@ -280,11 +297,14 @@ public class TwoLinePageRow extends Line
         final long bookmarkId;
         final int bookmarkIdIndex = cursor.getColumnIndex(Combined.BOOKMARK_ID);
         if (bookmarkIdIndex != -1) {
             bookmarkId = cursor.getLong(bookmarkIdIndex);
         } else {
             bookmarkId = 0;
         }
 
-        update(title, url, bookmarkId);
+        SavedReaderViewHelper rch = SavedReaderViewHelper.getSavedReaderViewHelper(getContext());
+        final boolean hasReaderCacheItem = rch.isURLCached(url);
+
+        update(title, url, bookmarkId, hasReaderCacheItem);
     }
 }
--- a/mobile/android/base/java/org/mozilla/gecko/overlays/service/OverlayActionService.java
+++ b/mobile/android/base/java/org/mozilla/gecko/overlays/service/OverlayActionService.java
@@ -7,17 +7,16 @@ package org.mozilla.gecko.overlays.servi
 
 import android.app.Service;
 import android.content.Context;
 import android.content.Intent;
 import android.os.IBinder;
 import android.util.Log;
 
 import org.mozilla.gecko.overlays.service.sharemethods.AddBookmark;
-import org.mozilla.gecko.overlays.service.sharemethods.AddToReadingList;
 import org.mozilla.gecko.overlays.service.sharemethods.SendTab;
 import org.mozilla.gecko.overlays.service.sharemethods.ShareMethod;
 import org.mozilla.gecko.util.ThreadUtils;
 
 import java.util.EnumMap;
 import java.util.Map;
 
 import static org.mozilla.gecko.overlays.OverlayConstants.ACTION_PREPARE_SHARE;
@@ -25,17 +24,16 @@ import static org.mozilla.gecko.overlays
 
 /**
  * A service to receive requests from overlays to perform actions.
  * See OverlayConstants for details of the intent API supported by this service.
  *
  * Currently supported operations are:
  *
  * Add bookmark*
- * Add to reading list*
  * Send tab (delegates to Sync's existing handler)
  * Future: Load page in background.
  *
  * * Neither of these incur a page fetch on the service... yet. That will require headless Gecko,
  *   something we're yet to have. Refactoring Gecko as a service itself and restructing the rest of
  *   the app to talk to it seems like the way to go there.
  */
 public class OverlayActionService extends Service {
@@ -84,17 +82,16 @@ public class OverlayActionService extend
      */
     private void initShareMethods(final Context context) {
         ThreadUtils.postToBackgroundThread(new Runnable() {
             @Override
             public void run() {
                 shareTypes.clear();
 
                 shareTypes.put(ShareMethod.Type.ADD_BOOKMARK, new AddBookmark(context));
-                shareTypes.put(ShareMethod.Type.ADD_TO_READING_LIST, new AddToReadingList(context));
                 shareTypes.put(ShareMethod.Type.SEND_TAB, new SendTab(context));
             }
         });
     }
 
     public void handleShare(final Intent intent) {
         ThreadUtils.postToBackgroundThread(new Runnable() {
             @Override
deleted file mode 100644
--- a/mobile/android/base/java/org/mozilla/gecko/overlays/service/sharemethods/AddToReadingList.java
+++ /dev/null
@@ -1,44 +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/. */
-
-package org.mozilla.gecko.overlays.service.sharemethods;
-
-import android.content.ContentResolver;
-import android.content.ContentValues;
-import android.content.Context;
-import org.mozilla.gecko.GeckoProfile;
-import org.mozilla.gecko.R;
-import org.mozilla.gecko.db.LocalBrowserDB;
-import org.mozilla.gecko.db.ReadingListProvider;
-import org.mozilla.gecko.overlays.service.ShareData;
-
-import static org.mozilla.gecko.db.BrowserContract.ReadingListItems;
-
-/**
- * ShareMethod to add a page to the reading list.
- *
- * Inserts the given URL/title pair into the reading list database.
- */
-public class AddToReadingList extends ShareMethod {
-    private static final String LOGTAG = "GeckoAddToReadingList";
-
-    @Override
-    public Result handle(ShareData shareData) {
-        final ContentResolver resolver = context.getContentResolver();
-
-        final ContentValues values = new ContentValues();
-        values.put(ReadingListItems.TITLE, shareData.title);
-        values.put(ReadingListItems.URL, shareData.url);
-        values.put(ReadingListItems.ADDED_ON, System.currentTimeMillis());
-        values.put(ReadingListItems.ADDED_BY, ReadingListProvider.PLACEHOLDER_THIS_DEVICE);
-
-        new LocalBrowserDB(GeckoProfile.DEFAULT_PROFILE).getReadingListAccessor().addReadingListItem(resolver, values);
-
-        return Result.SUCCESS;
-    }
-
-    public AddToReadingList(Context context) {
-        super(context);
-    }
-}
--- a/mobile/android/base/java/org/mozilla/gecko/overlays/service/sharemethods/ShareMethod.java
+++ b/mobile/android/base/java/org/mozilla/gecko/overlays/service/sharemethods/ShareMethod.java
@@ -50,17 +50,16 @@ public abstract class ShareMethod {
         PERMANENT_FAILURE
     }
 
     /**
      * Enum representing types of ShareMethod. Parcelable so it may be efficiently used in Intents.
      */
     public static enum Type implements Parcelable {
         ADD_BOOKMARK,
-        ADD_TO_READING_LIST,
         SEND_TAB;
 
         @Override
         public int describeContents() {
             return 0;
         }
 
         @Override
--- a/mobile/android/base/java/org/mozilla/gecko/overlays/ui/ShareDialog.java
+++ b/mobile/android/base/java/org/mozilla/gecko/overlays/ui/ShareDialog.java
@@ -60,21 +60,20 @@ public class ShareDialog extends Locales
             AppConstants.ANDROID_PACKAGE_NAME + ".intent.extra.DEVICES_ONLY";
 
     /** The maximum number of devices we'll show in the dialog when in State.DEFAULT. **/
     private static final int MAXIMUM_INLINE_DEVICES = 2;
 
     private State state;
 
     private SendTabList sendTabList;
-    private OverlayDialogButton readingListButton;
     private OverlayDialogButton bookmarkButton;
 
-    // The reading list drawable set from XML - we need this to reset state.
-    private Drawable readingListButtonDrawable;
+    // The bookmark button drawable set from XML - we need this to reset state.
+    private Drawable bookmarkButtonDrawable;
 
     private String url;
     private String title;
 
     // The override intent specified by SendTab (if any). See SendTab.java.
     private Intent sendTabOverrideIntent;
 
     // Flag set during animation to prevent animation multiple-start.
@@ -124,17 +123,17 @@ public class ShareDialog extends Locales
             sendTabList.switchState(SendTabList.State.LIST);
 
             // The first item in the list has a unique style. If there are no items
             // in the list, the next button appears to be the first item in the list.
             //
             // Note: a more thorough implementation would add this
             // (and other non-ListView buttons) into a custom ListView.
             if (remoteClientRecords == null || remoteClientRecords.length == 0) {
-                readingListButton.setBackgroundResource(
+                bookmarkButton.setBackgroundResource(
                         R.drawable.overlay_share_button_background_first);
             }
             return;
         }
 
         // Just show a button to launch the list of devices to choose from.
         sendTabList.switchState(SendTabList.State.SHOW_DEVICES);
     }
@@ -176,52 +175,42 @@ public class ShareDialog extends Locales
         sendTabList = (SendTabList) findViewById(R.id.overlay_send_tab_btn);
 
         // Register ourselves as both the listener and the context for the Adapter.
         final SendTabDeviceListArrayAdapter adapter = new SendTabDeviceListArrayAdapter(this, this);
         sendTabList.setAdapter(adapter);
         sendTabList.setSendTabTargetSelectedListener(this);
 
         bookmarkButton = (OverlayDialogButton) findViewById(R.id.overlay_share_bookmark_btn);
-        readingListButton = (OverlayDialogButton) findViewById(R.id.overlay_share_reading_list_btn);
 
-        readingListButtonDrawable = readingListButton.getBackground();
+        bookmarkButtonDrawable = bookmarkButton.getBackground();
 
         // Bookmark button
         bookmarkButton = (OverlayDialogButton) findViewById(R.id.overlay_share_bookmark_btn);
         bookmarkButton.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
                 addBookmark();
             }
         });
-
-        // Reading List button
-        readingListButton = (OverlayDialogButton) findViewById(R.id.overlay_share_reading_list_btn);
-        readingListButton.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View view) {
-                addToReadingList();
-            }
-        });
     }
 
     @Override
     protected void onResume() {
         super.onResume();
 
         final Intent intent = getIntent();
 
         state = intent.getBooleanExtra(INTENT_EXTRA_DEVICES_ONLY, false) ?
                 State.DEVICES_ONLY : State.DEFAULT;
 
         // If the Activity is being reused, we need to reset the state. Ideally, we create a
         // new instance for each call, but Android L breaks this (bug 1137928).
         sendTabList.switchState(SendTabList.State.LOADING);
-        readingListButton.setBackgroundDrawable(readingListButtonDrawable);
+        bookmarkButton.setBackgroundDrawable(bookmarkButtonDrawable);
 
         // The URL is usually hiding somewhere in the extra text. Extract it.
         final String extraText = ContextUtils.getStringExtra(intent, Intent.EXTRA_TEXT);
         if (TextUtils.isEmpty(extraText)) {
             abortDueToNoURL();
             return;
         }
 
@@ -266,25 +255,23 @@ public class ShareDialog extends Locales
         subtitleView.setSingleLine(true);
         subtitleView.setMarqueeRepeatLimit(5);
         subtitleView.setSelected(true);
 
         final View titleView = findViewById(R.id.title);
 
         if (state == State.DEVICES_ONLY) {
             bookmarkButton.setVisibility(View.GONE);
-            readingListButton.setVisibility(View.GONE);
 
             titleView.setOnClickListener(null);
             subtitleView.setOnClickListener(null);
             return;
         }
 
         bookmarkButton.setVisibility(View.VISIBLE);
-        readingListButton.setVisibility(View.VISIBLE);
 
         // Configure buttons.
         final View.OnClickListener launchBrowser = new View.OnClickListener() {
             @Override
             public void onClick(View view) {
                 ShareDialog.this.launchBrowser();
             }
         };
@@ -307,32 +294,29 @@ public class ShareDialog extends Locales
     /**
      * Sets the state of the bookmark/reading list buttons: they are disabled if the given URL is
      * already in the corresponding list.
      */
     private void setButtonState(final String pageURL, final LocalBrowserDB browserDB) {
         new UIAsyncTask.WithoutParams<Void>(ThreadUtils.getBackgroundHandler()) {
             // Flags to hold the result
             boolean isBookmark;
-            boolean isReadingListItem;
 
             @Override
             protected Void doInBackground() {
                 final ContentResolver contentResolver = getApplicationContext().getContentResolver();
 
                 isBookmark = browserDB.isBookmark(contentResolver, pageURL);
-                isReadingListItem = browserDB.getReadingListAccessor().isReadingListItem(contentResolver, pageURL);
 
                 return null;
             }
 
             @Override
             protected void onPostExecute(Void aVoid) {
                 findViewById(R.id.overlay_share_bookmark_btn).setEnabled(!isBookmark);
-                findViewById(R.id.overlay_share_reading_list_btn).setEnabled(!isReadingListItem);
             }
         }.execute();
     }
 
     /**
      * Helper method to get an overlay service intent populated with the data held in this dialog.
      */
     private Intent getServiceIntent(ShareMethod.Type method) {
@@ -394,23 +378,16 @@ public class ShareDialog extends Locales
         serviceIntent.putExtra(OverlayConstants.EXTRA_PARAMETERS, extraParameters);
 
         startService(serviceIntent);
         animateOut(true);
 
         Telemetry.sendUIEvent(TelemetryContract.Event.SHARE, TelemetryContract.Method.SHARE_OVERLAY, "sendtab");
     }
 
-    public void addToReadingList() {
-        startService(getServiceIntent(ShareMethod.Type.ADD_TO_READING_LIST));
-        animateOut(true);
-
-        Telemetry.sendUIEvent(TelemetryContract.Event.SAVE, TelemetryContract.Method.SHARE_OVERLAY, "reading_list");
-    }
-
     public void addBookmark() {
         startService(getServiceIntent(ShareMethod.Type.ADD_BOOKMARK));
         animateOut(true);
 
         Telemetry.sendUIEvent(TelemetryContract.Event.SAVE, TelemetryContract.Method.SHARE_OVERLAY, "bookmark");
     }
 
     public void launchBrowser() {
--- a/mobile/android/base/java/org/mozilla/gecko/reader/ReadingListHelper.java
+++ b/mobile/android/base/java/org/mozilla/gecko/reader/ReadingListHelper.java
@@ -1,208 +1,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/. */
 
 package org.mozilla.gecko.reader;
 
 import org.json.JSONException;
 import org.json.JSONObject;
+
+import org.mozilla.gecko.AboutPages;
 import org.mozilla.gecko.EventDispatcher;
 import org.mozilla.gecko.GeckoAppShell;
-import org.mozilla.gecko.GeckoEvent;
 import org.mozilla.gecko.GeckoProfile;
-import org.mozilla.gecko.annotation.RobocopTarget;
-import org.mozilla.gecko.db.BrowserContract.ReadingListItems;
 import org.mozilla.gecko.db.BrowserDB;
-import org.mozilla.gecko.db.ReadingListAccessor;
 import org.mozilla.gecko.favicons.Favicons;
 import org.mozilla.gecko.util.EventCallback;
 import org.mozilla.gecko.util.NativeEventListener;
 import org.mozilla.gecko.util.NativeJSObject;
 import org.mozilla.gecko.util.ThreadUtils;
 import org.mozilla.gecko.util.UIAsyncTask;
 
-import android.content.ContentResolver;
-import android.content.ContentValues;
 import android.content.Context;
-import android.database.ContentObserver;
-import android.database.Cursor;
 import android.util.Log;
 
 public final class ReadingListHelper implements NativeEventListener {
     private static final String LOGTAG = "GeckoReadingListHelper";
 
-    public interface OnReadingListEventListener {
-        void onAddedToReadingList(String url);
-        void onRemovedFromReadingList(String url);
-        void onAlreadyInReadingList(String url);
-    }
-
-    private enum ReadingListEvent {
-        ADDED,
-        REMOVED,
-        ALREADY_EXISTS
-    }
-
     protected final Context context;
     private final BrowserDB db;
-    private final ReadingListAccessor readingListAccessor;
-    private final ContentObserver contentObserver;
-    private final OnReadingListEventListener onReadingListEventListener;
 
-    volatile boolean fetchInBackground = true;
-
-    public ReadingListHelper(Context context, GeckoProfile profile, OnReadingListEventListener listener) {
+    public ReadingListHelper(Context context, GeckoProfile profile) {
         this.context = context;
         this.db = profile.getDB();
-        this.readingListAccessor = db.getReadingListAccessor();
 
         EventDispatcher.getInstance().registerGeckoThreadListener((NativeEventListener) this,
-            "Reader:AddToList", "Reader:UpdateList", "Reader:FaviconRequest");
-
-
-        contentObserver = new ContentObserver(null) {
-            @Override
-            public void onChange(boolean selfChange) {
-                if (fetchInBackground) {
-                    fetchContent();
-                }
-            }
-        };
-
-        this.readingListAccessor.registerContentObserver(context, contentObserver);
-
-        onReadingListEventListener = listener;
+            "Reader:FaviconRequest", "Reader:AddedToCache");
     }
 
     public void uninit() {
         EventDispatcher.getInstance().unregisterGeckoThreadListener((NativeEventListener) this,
-            "Reader:AddToList", "Reader:UpdateList", "Reader:FaviconRequest");
-
-        context.getContentResolver().unregisterContentObserver(contentObserver);
+            "Reader:FaviconRequest", "Reader:AddedToCache");
     }
 
     @Override
     public void handleMessage(final String event, final NativeJSObject message,
                               final EventCallback callback) {
         switch(event) {
-            // Added from web context menu.
-            case "Reader:AddToList": {
-                handleAddToList(callback, message);
-                break;
-            }
-            case "Reader:UpdateList": {
-                handleUpdateList(message);
-                break;
-            }
             case "Reader:FaviconRequest": {
                 handleReaderModeFaviconRequest(callback, message.getString("url"));
                 break;
             }
-        }
-    }
-
-    /**
-     * A page can be added to the ReadingList by long-tap of the page-action
-     * icon, or by tapping the readinglist-add icon in the ReaderMode banner.
-     *
-     * This method will only add new items, not update existing items.
-     */
-    private void handleAddToList(final EventCallback callback, final NativeJSObject message) {
-        final ContentResolver cr = context.getContentResolver();
-        final String url = message.getString("url");
-
-        // We can't access a NativeJSObject from the background thread, so we need to get the
-        // values here, even if we may not use them to insert an item into the DB.
-        final ContentValues values = getContentValues(message);
-
-        ThreadUtils.postToBackgroundThread(new Runnable() {
-            @Override
-            public void run() {
-                if (readingListAccessor.isReadingListItem(cr, url)) {
-                    handleEvent(ReadingListEvent.ALREADY_EXISTS, url);
-                    callback.sendError("URL already in reading list: " + url);
-                } else {
-                    readingListAccessor.addReadingListItem(cr, values);
-                    handleEvent(ReadingListEvent.ADDED, url);
-                    callback.sendSuccess(url);
-                }
-            }
-        });
-    }
-
-    /**
-     * Updates a reading list item with new meta data.
-     */
-    private void handleUpdateList(final NativeJSObject message) {
-        final ContentResolver cr = context.getContentResolver();
-        final ContentValues values = getContentValues(message);
-
-        ThreadUtils.postToBackgroundThread(new Runnable() {
-            @Override
-            public void run() {
-                readingListAccessor.updateReadingListItem(cr, values);
-            }
-        });
-    }
-
-    /**
-     * Creates reading list item content values from JS message.
-     */
-    private ContentValues getContentValues(NativeJSObject message) {
-        final ContentValues values = new ContentValues();
-        if (message.has("id")) {
-            values.put(ReadingListItems._ID, message.getInt("id"));
-        }
-
-        // url is actually required...
-        String url = null;
-        if (message.has("url")) {
-            url = message.getString("url");
-            values.put(ReadingListItems.URL, url);
-        }
-
-        String title = null;
-        if (message.has("title")) {
-            title = message.getString("title");
-            values.put(ReadingListItems.TITLE, title);
-        }
-
-        // TODO: message actually has "length", but that's no use for us. See Bug 1127451.
-        if (message.has("word_count")) {
-            values.put(ReadingListItems.WORD_COUNT, message.getInt("word_count"));
-        }
-
-        if (message.has("excerpt")) {
-            values.put(ReadingListItems.EXCERPT, message.getString("excerpt"));
-        }
-
-        if (message.has("status")) {
-            final int status = message.getInt("status");
-            values.put(ReadingListItems.CONTENT_STATUS, status);
-            if (status == ReadingListItems.STATUS_FETCHED_ARTICLE) {
-                if (message.has("resolved_title")) {
-                    values.put(ReadingListItems.RESOLVED_TITLE, message.getString("resolved_title"));
-                } else {
-                    if (title != null) {
-                        values.put(ReadingListItems.RESOLVED_TITLE, title);
-                    }
-                }
-                if (message.has("resolved_url")) {
-                    values.put(ReadingListItems.RESOLVED_URL, message.getString("resolved_url"));
-                } else {
-                    if (url != null) {
-                        values.put(ReadingListItems.RESOLVED_URL, url);
-                    }
-                }
+            case "Reader:AddedToCache": {
+                // AddedToCache is a one way message: callback will be null, and we therefore shouldn't
+                // attempt to handle it.
+                handleAddedToCache(message.getString("url"), message.getString("path"), message.getInt("size"));
+                break;
             }
         }
-
-        return values;
     }
 
     /**
      * Gecko (ReaderMode) requests the page favicon to append to the
      * document head for display.
      */
     private void handleReaderModeFaviconRequest(final EventCallback callback, final String url) {
         (new UIAsyncTask.WithoutParams<String>(ThreadUtils.getBackgroundHandler()) {
@@ -222,65 +80,43 @@ public final class ReadingListHelper imp
                         Log.w(LOGTAG, "Error building JSON favicon arguments.", e);
                     }
                 }
                 callback.sendSuccess(args.toString());
             }
         }).execute();
     }
 
-    /**
-     * Handle various reading list events (and display appropriate toasts).
-     */
-    private void handleEvent(final ReadingListEvent event, final String url) {
-        ThreadUtils.postToUiThread(new Runnable() {
-            @Override
-            public void run() {
-                switch(event) {
-                    case ADDED:
-                        onReadingListEventListener.onAddedToReadingList(url);
-                        break;
-                    case REMOVED:
-                        onReadingListEventListener.onRemovedFromReadingList(url);
-                        break;
-                    case ALREADY_EXISTS:
-                        onReadingListEventListener.onAlreadyInReadingList(url);
-                        break;
-                }
-            }
-        });
+    private void handleAddedToCache(final String url, final String path, final int size) {
+        final SavedReaderViewHelper rch = SavedReaderViewHelper.getSavedReaderViewHelper(context);
+
+        rch.put(url, path, size);
+    }
+
+    public static void cacheReaderItem(final String url, Context context) {
+        if (AboutPages.isAboutReader(url)) {
+            throw new IllegalArgumentException("Page url must be original (not about:reader) url");
+        }
+
+        SavedReaderViewHelper rch = SavedReaderViewHelper.getSavedReaderViewHelper(context);
+
+        if (!rch.isURLCached(url)) {
+            GeckoAppShell.notifyObservers("Reader:AddToCache", url);
+        }
     }
 
-    private void fetchContent() {
-        ThreadUtils.postToBackgroundThread(new Runnable() {
-            @Override
-            public void run() {
-                final Cursor c = readingListAccessor.getReadingListUnfetched(context.getContentResolver());
-                if (c == null) {
-                    return;
-                }
-                try {
-                    while (c.moveToNext()) {
-                        JSONObject json = new JSONObject();
-                        try {
-                            json.put("id", c.getInt(c.getColumnIndexOrThrow(ReadingListItems._ID)));
-                            json.put("url", c.getString(c.getColumnIndexOrThrow(ReadingListItems.URL)));
-                            GeckoAppShell.notifyObservers("Reader:FetchContent", json.toString());
-                        } catch (JSONException e) {
-                            Log.e(LOGTAG, "Failed to fetch reading list content for item");
-                        }
-                    }
-                } finally {
-                    c.close();
-                }
-            }
-        });
-    }
+    public static void removeCachedReaderItem(final String url, Context context) {
+        if (AboutPages.isAboutReader(url)) {
+            throw new IllegalArgumentException("Page url must be original (not about:reader) url");
+        }
+
+        SavedReaderViewHelper rch = SavedReaderViewHelper.getSavedReaderViewHelper(context);
 
-    @RobocopTarget
-    /**
-     * Test code will want to disable background fetches to avoid upsetting
-     * the test harness. Call this by accessing the instance from BrowserApp.
-     */
-    public void disableBackgroundFetches() {
-        fetchInBackground = false;
+        if (rch.isURLCached(url)) {
+            GeckoAppShell.notifyObservers("Reader:RemoveFromCache", url);
+        }
+
+        // When removing items from the cache we can probably spare ourselves the async callback
+        // that we use when adding cached items. We know the cached item will be gone, hence
+        // we no longer need to track it in the SavedReaderViewHelper
+        rch.remove(url);
     }
 }
new file mode 100644
--- /dev/null
+++ b/mobile/android/base/java/org/mozilla/gecko/reader/SavedReaderViewHelper.java
@@ -0,0 +1,205 @@
+/* -*- Mode: Java; c-basic-offset: 4; tab-width: 20; indent-tabs-mode: nil; -*-
+ * 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/. */
+
+package org.mozilla.gecko.reader;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.util.Log;
+
+import org.json.JSONException;
+import org.json.JSONObject;
+import org.mozilla.gecko.GeckoProfile;
+import org.mozilla.gecko.annotation.RobocopTarget;
+import org.mozilla.gecko.db.UrlAnnotations;
+import org.mozilla.gecko.util.ThreadUtils;
+
+import java.io.File;
+import java.io.IOException;
+
+/**
+ * Helper to keep track of items that are stored in the reader view cache. This is an in-memory list
+ * of the reader view items that are cached on disk. It is intended to allow quickly determining whether
+ * a given URL is in the cache, and also how many cached items there are.
+ *
+ * Currently we have 1:1 correspondence of reader view items (in the URL-annotations table)
+ * to cached items. This is _not_ a true cache, we never purge/cleanup items here - we only remove
+ * items when we un-reader-view/bookmark them. This is an acceptable model while we can guarantee the
+ * 1:1 correspondence.
+ *
+ * It isn't strictly necessary to mirror cached items in SQL at this stage, however it seems sensible
+ * to maintain URL anotations to avoid additional DB migrations in future.
+ * It is also simpler to implement the reading list smart-folder using the annotations (even if we do
+ * all other decoration from our in-memory cache record), as that is what we will need when
+ * we move away from the 1:1 correspondence.
+ *
+ * Bookmarks can be in one of two states - plain bookmark, or reader view bookmark that is also saved
+ * offline. We're hoping to introduce real cache management / cleanup in future, in which case a
+ * third user-visible state (reader view bookmark without a cache entry) will be added. However that logic is
+ * much more complicated and requires substantial changes in how we decorate reader view bookmarks.
+ * With the current 1:1 correspondence we can use this in-memory helper to quickly decorate
+ * bookmarks (in all the various lists and panels that are used), whereas supporting
+ * the third state requires significant changes in order to allow joining with the
+ * URL-annotations table wherever bookmarks might be retrieved (i.e. multiple homepanels, each with
+ * their own loaders and adapter).
+ *
+ * If/when cache cleanup and sync are implemented, URL annotations will be the canonical record of
+ * user intent, and the cache will no longer represent all reader view bookmarks. We will have (A)
+ * cached items that are not a bookmark, or bookmarks without the reader view annotation (both of
+ * these would need purging), and (B) bookmarks with a reader view annotation, but not stored in
+ * the cache (which we might want to download in the background). Supporting (B) is currently difficult,
+ * see previous paragraph.
+ */
+public class SavedReaderViewHelper {
+    private static final String LOG_TAG = "SavedReaderViewHelper";
+
+    private static final String PATH = "path";
+    private static final String SIZE = "size";
+
+    private static final String DIRECTORY = "readercache";
+    private static final String FILE_NAME = "items.json";
+    private static final String FILE_PATH = DIRECTORY + "/" + FILE_NAME;
+
+    // We use null to indicate that the cache hasn't yet been loaded. Loading has to be explicitly
+    // requested by client code, and must happen on the background thread. Attempting to access
+    // items (which happens mainly on the UI thread) before explicitly loading them is not permitted.
+    private JSONObject mItems = null;
+
+    private final Context mContext;
+
+    private static SavedReaderViewHelper instance = null;
+
+    private SavedReaderViewHelper(Context context) {
+        mContext = context;
+    }
+
+    public static synchronized SavedReaderViewHelper getSavedReaderViewHelper(final Context context) {
+        if (instance == null) {
+            instance = new SavedReaderViewHelper(context);
+        }
+
+        return instance;
+    }
+
+    /**
+     * Load the reader view cache list from our JSON file.
+     *
+     * Must not be run on the UI thread due to file access.
+     */
+    public synchronized void loadItems() {
+        ThreadUtils.assertNotOnUiThread();
+
+        if (mItems != null) {
+            return;
+        }
+
+        try {
+            mItems = GeckoProfile.get(mContext).readJSONObjectFromFile(FILE_PATH);
+        } catch (IOException e) {
+            mItems = new JSONObject();
+        }
+    }
+
+    private synchronized void assertItemsLoaded() {
+        if (mItems == null) {
+            throw new IllegalStateException("SavedReaderView items must be explicitly loaded using loadItems() before access.");
+        }
+    }
+
+    private JSONObject makeItem(@NonNull String path, long size) throws JSONException {
+        final JSONObject item = new JSONObject();
+
+        item.put(PATH, path);
+        item.put(SIZE, size);
+
+        return item;
+    }
+
+    public synchronized boolean isURLCached(@NonNull final String URL) {
+        assertItemsLoaded();
+        return mItems.has(URL);
+    }
+
+    /**
+     * Insert an item into the list of cached items.
+     *
+     * This may be called from any thread.
+     */
+    public synchronized void put(@NonNull final String pageURL, @NonNull final String path, final long size) {
+        assertItemsLoaded();
+
+        try {
+            mItems.put(pageURL, makeItem(path, size));
+        } catch (JSONException e) {
+            Log.w(LOG_TAG, "Item insertion failed:", e);
+            // This should never happen, absent any errors in our own implementation
+            throw new IllegalStateException("Failure inserting into SavedReaderViewHelper json");
+        }
+
+        ThreadUtils.postToBackgroundThread(new Runnable() {
+            @Override
+            public void run() {
+                UrlAnnotations annotations = GeckoProfile.get(mContext).getDB().getUrlAnnotations();
+                annotations.insertReaderViewUrl(mContext.getContentResolver(), pageURL);
+
+                commit();
+            }
+        });
+    }
+
+    protected synchronized void remove(@NonNull final String pageURL) {
+        assertItemsLoaded();
+
+        mItems.remove(pageURL);
+
+        ThreadUtils.postToBackgroundThread(new Runnable() {
+            @Override
+            public void run() {
+                UrlAnnotations annotations = GeckoProfile.get(mContext).getDB().getUrlAnnotations();
+                annotations.deleteReaderViewUrl(mContext.getContentResolver(), pageURL);
+
+                commit();
+            }
+        });
+    }
+
+    @RobocopTarget
+    public synchronized int size() {
+        assertItemsLoaded();
+        return mItems.length();
+    }
+
+    private synchronized void commit() {
+        ThreadUtils.assertOnBackgroundThread();
+
+        GeckoProfile profile = GeckoProfile.get(mContext);
+        File cacheDir = new File(profile.getDir(), DIRECTORY);
+
+        if (!cacheDir.exists()) {
+            Log.i(LOG_TAG, "No preexisting cache directory, creating now");
+
+            boolean cacheDirCreated = cacheDir.mkdir();
+            if (!cacheDirCreated) {
+                throw new IllegalStateException("Couldn't create cache directory, unable to track reader view cache");
+            }
+        }
+
+        profile.writeFile(FILE_PATH, mItems.toString());
+    }
+
+    /**
+     * Return the Reader View URL for a given URL if it is contained in the cache. Returns the
+     * plain URL if the page is not cached.
+     */
+    public static String getReaderURLIfCached(final Context context, @NonNull final String pageURL) {
+        SavedReaderViewHelper rvh = getSavedReaderViewHelper(context);
+
+        if (rvh.isURLCached(pageURL)) {
+            return ReaderModeUtils.getAboutReaderForUrl(pageURL);
+        } else {
+            return pageURL;
+        }
+    }
+}
--- a/mobile/android/base/locales/en-US/android_strings.dtd
+++ b/mobile/android/base/locales/en-US/android_strings.dtd
@@ -19,16 +19,20 @@
 <!ENTITY firstrun_sync_subtext "Sync your tabs, passwords, and more everywhere you use it.">
 <!ENTITY firstrun_signin_message "Get connected, get started">
 <!ENTITY firstrun_signin_button "Sign in to Sync">
 <!ENTITY  onboard_start_button_browser "Start Browsing">
 <!ENTITY firstrun_button_next "Next">
 
 <!ENTITY  onboard_start_restricted1 "Stay safe and in control with this simplified version of &brandShortName;.">
 
+<!ENTITY  reading_list_migration_title "Reading List connected">
+<!ENTITY  reading_list_migration_subtext "Your Reading List items will now be added to your Bookmarks">
+<!ENTITY  reading_list_migration_goto_bookmarks "Go to Bookmarks">
+
 <!-- Localization note: These are used as the titles of different pages on the home screen.
      They are automatically converted to all caps by the Android platform. -->
 <!ENTITY  bookmarks_title "Bookmarks">
 <!ENTITY  history_title "History">
 <!ENTITY  reading_list_title "Reading List">
 <!ENTITY  recent_tabs_title "Recent Tabs">
 
 <!ENTITY  switch_to_tab "Switch to tab">
@@ -58,16 +62,17 @@
 <!ENTITY bookmark_removed "Bookmark removed">
 <!ENTITY bookmark_updated "Bookmark updated">
 <!ENTITY bookmark_options "Options">
 <!ENTITY screenshot_added_to_bookmarks "Screenshot added to bookmarks">
 <!-- Localization note (screenshot_folder_label_in_bookmarks): We save links to screenshots
      the user takes. The folder we store these links in is located in the bookmarks list
      and is labeled by this String. -->
 <!ENTITY screenshot_folder_label_in_bookmarks "Screenshots">
+<!ENTITY readinglist_smartfolder_label_in_bookmarks "Reading List">
 
 <!ENTITY history_today_section "Today">
 <!ENTITY history_yesterday_section "Yesterday">
 <!ENTITY history_week_section3 "Last 7 days">
 <!ENTITY history_older_section3 "Older than 6 months">
 
 <!ENTITY search "Search">
 <!ENTITY reload "Reload">
@@ -119,19 +124,17 @@
      in Android's intent chooser when sending a link to Firefox to bookmark,
      send to another device, or add to Reading List. -->
 <!ENTITY overlay_share_label "Add to &brandShortName;">
 
 <!-- Localization note (overlay_share_bookmark_btn_label) : This string is
      used in the share overlay menu to select an action. It is the verb
      "to bookmark", not the noun "a bookmark". -->
 <!ENTITY overlay_share_bookmark_btn_label "Bookmark">
-<!ENTITY overlay_share_reading_list_btn_label "Add to Reading List">
 <!ENTITY overlay_share_bookmark_btn_label_already "Already bookmarked">
-<!ENTITY overlay_share_reading_list_btn_label_already "Already in Reading List">
 <!ENTITY overlay_share_send_other "Send to other devices">
 
 <!-- Localization note (overlay_share_send_tab_btn_label) : Used on the
      share overlay menu to represent the "Send Tab" action when the user
      either has not set up Sync, or has no other devices to send a tab
      to. -->
 <!ENTITY overlay_share_send_tab_btn_label "Send to another device">
 <!ENTITY overlay_share_no_url "No link found in this share">
@@ -445,18 +448,16 @@ size. -->
 <!ENTITY contextmenu_copyurl "Copy Address">
 <!ENTITY contextmenu_edit_bookmark "Edit">
 <!ENTITY contextmenu_subscribe "Subscribe to Page">
 <!ENTITY contextmenu_site_settings "Edit Site Settings">
 <!ENTITY contextmenu_top_sites_edit "Edit">
 <!ENTITY contextmenu_top_sites_pin "Pin Site">
 <!ENTITY contextmenu_top_sites_unpin "Unpin Site">
 <!ENTITY contextmenu_add_search_engine "Add a Search Engine">
-<!ENTITY contextmenu_mark_read "Mark as read">
-<!ENTITY contextmenu_mark_unread "Mark as unread">
 
 <!-- Localization note (doorhanger_login_no_username): This string is used in the save-login doorhanger
      where normally a username would be displayed. In this case, no username was found, and this placeholder
      contains brackets to indicate this is not actually a username, but rather a placeholder -->
 <!ENTITY doorhanger_login_no_username "[No username]">
 <!ENTITY doorhanger_login_edit_title "Edit login">
 <!ENTITY doorhanger_login_edit_username_hint "Username">
 <!ENTITY doorhanger_login_edit_password_hint "Password">
@@ -492,25 +493,16 @@ size. -->
 <!ENTITY bookmark_edit_keyword "Keyword">
 
 <!-- Localization note (site_settings_*) : These strings are used in the "Site Settings"
      dialog that appears after selecting the "Edit Site Settings" context menu item. -->
 <!ENTITY site_settings_title3       "Site Settings">
 <!ENTITY site_settings_cancel       "Cancel">
 <!ENTITY site_settings_clear        "Clear">
 
-<!-- Localization note (reading_list_added3) : Used in a toast, please keep as short
-     as possible. -->
-<!ENTITY reading_list_added3 "Added to Reading List">
-<!ENTITY reading_list_removed "Page removed from your Reading List">
-<!-- Localization note (reading_list_remove) : Used to remove the currently open page from
-     the user's reading list. The opposite of overlay_share_reading_list_btn_label. -->
-<!ENTITY reading_list_remove "Remove from Reading List">
-<!ENTITY reading_list_duplicate "Page already in your Reading List">
-
 <!-- Localization note : These strings are used as alternate text for accessibility.
      They are not visible in the UI. -->
 <!ENTITY page_action_dropmarker_description "Additional Actions">
 
 <!ENTITY masterpassword_create_title "Create Master Password">
 <!ENTITY masterpassword_remove_title "Remove Master Password">
 <!ENTITY masterpassword_password "Password">
 <!ENTITY masterpassword_confirm "Confirm password">
@@ -541,17 +533,16 @@ size. -->
 <!ENTITY home_last_tabs_title "Tabs from last time">
 <!ENTITY home_last_tabs_empty "Your recent tabs show up here.">
 <!ENTITY home_open_all "Open all">
 <!ENTITY home_most_recent_empty "Websites you visited most recently show up here.">
 <!ENTITY home_selected_empty "Websites you visited in the selected timeframe show up here.">
 <!-- Localization note (home_most_recent_emptyhint2): "Psst" is a sound that might be used to attract someone's attention unobtrusively, and intended to hint at Private Browsing to the user.
      The placeholders &formatS1; and &formatS2; are used to mark the location of text underlining. -->
 <!ENTITY home_most_recent_emptyhint2 "Psst: using a &formatS1;New Private Tab&formatS2; won\'t save your history.">
-<!ENTITY home_reading_list_empty "Articles you save for later show up here.">
 
 <!-- Localization note (home_default_empty): This string is used as the default text when there
      is no data to show in an about:home panel that was created by an add-on. -->
 <!ENTITY home_default_empty "No content could be found for this panel.">
 
 <!-- Localization note (home_back_up_to_filter): The variable is replaced by the name of the
      previous location in the navigation, such as the previous folder -->
 <!ENTITY home_move_back_to_filter "Back to &formatS;">
--- a/mobile/android/base/moz.build
+++ b/mobile/android/base/moz.build
@@ -217,27 +217,24 @@ gbjar.sources += ['java/org/mozilla/geck
     'db/BaseTable.java',
     'db/BrowserDatabaseHelper.java',
     'db/BrowserDB.java',
     'db/BrowserProvider.java',
     'db/DBUtils.java',
     'db/FormHistoryProvider.java',
     'db/HomeProvider.java',
     'db/LocalBrowserDB.java',
-    'db/LocalReadingListAccessor.java',
     'db/LocalSearches.java',
     'db/LocalTabsAccessor.java',
     'db/LocalUrlAnnotations.java',
     'db/LocalURLMetadata.java',
     'db/LoginsProvider.java',
     'db/PasswordsProvider.java',
     'db/PerProfileDatabaseProvider.java',
     'db/PerProfileDatabases.java',
-    'db/ReadingListAccessor.java',
-    'db/ReadingListProvider.java',
     'db/RemoteClient.java',
     'db/RemoteTab.java',
     'db/Searches.java',
     'db/SearchHistoryProvider.java',
     'db/SharedBrowserDatabaseProvider.java',
     'db/SQLiteBridgeContentProvider.java',
     'db/StubBrowserDB.java',
     'db/SuggestedSites.java',
@@ -416,17 +413,16 @@ gbjar.sources += ['java/org/mozilla/geck
     'home/PanelListView.java',
     'home/PanelRecyclerView.java',
     'home/PanelRecyclerViewAdapter.java',
     'home/PanelRefreshLayout.java',
     'home/PanelViewAdapter.java',
     'home/PanelViewItemHandler.java',
     'home/PinSiteDialog.java',
     'home/ReadingListPanel.java',
-    'home/ReadingListRow.java',
     'home/RecentTabsPanel.java',
     'home/RemoteTabsBaseFragment.java',
     'home/RemoteTabsExpandableListFragment.java',
     'home/RemoteTabsExpandableListState.java',
     'home/RemoteTabsPanel.java',
     'home/RemoteTabsSplitPlaneFragment.java',
     'home/RemoteTabsStaticFragment.java',
     'home/SearchEngine.java',
@@ -470,17 +466,16 @@ gbjar.sources += ['java/org/mozilla/geck
     'notifications/WhatsNewReceiver.java',
     'NotificationService.java',
     'NSSBridge.java',
     'OrderedBroadcastHelper.java',
     'overlays/OverlayConstants.java',
     'overlays/service/OverlayActionService.java',
     'overlays/service/ShareData.java',
     'overlays/service/sharemethods/AddBookmark.java',
-    'overlays/service/sharemethods/AddToReadingList.java',
     'overlays/service/sharemethods/SendTab.java',
     'overlays/service/sharemethods/ShareMethod.java',
     'overlays/ui/OverlayDialogButton.java',
     'overlays/ui/SendTabDeviceListArrayAdapter.java',
     'overlays/ui/SendTabList.java',
     'overlays/ui/SendTabTargetSelectedListener.java',
     'overlays/ui/ShareDialog.java',
     'permissions/PermissionBlock.java',
@@ -520,16 +515,17 @@ gbjar.sources += ['java/org/mozilla/geck
     'prompts/Prompt.java',
     'prompts/PromptInput.java',
     'prompts/PromptListAdapter.java',
     'prompts/PromptListItem.java',
     'prompts/PromptService.java',
     'prompts/TabInput.java',
     'reader/ReaderModeUtils.java',
     'reader/ReadingListHelper.java',
+    'reader/SavedReaderViewHelper.java',
     'RemoteClientsDialogFragment.java',
     'RemoteTabsExpandableListAdapter.java',
     'Restarter.java',
     'restrictions/DefaultConfiguration.java',
     'restrictions/GuestProfileConfiguration.java',
     'restrictions/Restrictable.java',
     'restrictions/RestrictedProfileConfiguration.java',
     'restrictions/RestrictionCache.java',
deleted file mode 100644
--- a/mobile/android/base/resources/drawable-hdpi-v11/ic_menu_reader_add.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<!-- Note: After removing all MDPI assets, the reader icons were being resolved
-           incorrectly for MDPI-V11 devices because of the way we use dummy
-           resources to cater for API 9 builds.  To fix we renamed the HDPI-V11
-           reader resources and point to them in the HDPI-V11 and MDPI-V11
-           drawable folders.  See Bug 1179758 for more info. -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-        android:src="@drawable/ic_menu_reader_add_asset" />
deleted file mode 100644
index bb4242271acdec96bc88e28c9127620f2466eaa1..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
--- a/mobile/android/base/resources/drawable-hdpi-v11/ic_menu_reader_remove.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<!-- Note: After removing all MDPI assets, the reader icons were being resolved
-           incorrectly for MDPI-V11 devices because of the way we use dummy
-           resources to cater for API 9 builds.  To fix we renamed the HDPI-V11
-           reader resources and point to them in the HDPI-V11 and MDPI-V11
-           drawable folders.  See Bug 1179758 for more info. -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-        android:src="@drawable/ic_menu_reader_remove_asset" />
deleted file mode 100644
index 73d9061317fbb769ee2666d68eb2d69aaf50a10b..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index e4c59010195c340c3d00b1933b17029ec7771916..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index e40cd0c09ac3adb08f8d5f3b27f75b5342582b4d..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 90402468bfe34e16eb245d6d0f55d3f921bc32cc..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..69af116f2e23546f55ff9704d19268c7ea124f1d
GIT binary patch
literal 2906
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
Ef~B0HDgXcg
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..34139ebc62a18f32470608a160feb219efa5dd7d
GIT binary patch
literal 598
zc$@)N0;&CpP)<h;3K|Lk000e1NJLTq000yK000^Y1^@s6w}X6r00001b5ch_0Itp)
z=>Px%5J^NqR7ef&R6S@EK^T4C+$HLI*hoM@35ix(YAZspv$2sF1wk|#ECdBBu~AU0
z?BYh!BuyZlbs(ZxY9k0i%*h#%AP5>Shhf(nzc=gtxOaPd*a?2HJKy)d_ulNz?2e!;
z=GS+k*_v>)nzw-Sdp3JXs=b=7*V??M<GtVckdF6VUT`x7cnVuXlPI!zjOE61!<?Y3
z{Fe-8K6z!YQ`paFqgQ@Zzm4{f4NTV;@zj>@eC$jvHPq5W!(h5`1lHcss{+{5SgFrz
zUcR>Etkmb6hFW^~jY9@I+N*%PjVFc01pN1YQWquUSe#AU>M`K08C)3oitXD@sA(f<
zT004U^<h%y6ZXhSLbdd`IP_f-Y<BG+g5bFl_a>OgU7e@~+rI8FF*=EDD#xu?#FKRl
z4jjX!{qI<(hO8bp4kP^eOhvm{x)6NSSKHT-N5B_UE5~tp_)SF48xrLvAzapMS4=7x
zH-PFGt`5J-_B(fzgbGeVq?IN9k+Vlm&WxN+L!ws>ywJrsrP&tCTx_`>IbEW=A&FC?
zOE6|!voNCz9mZZk6dO`7HS$EC=8P^i57j12W!zx}X8ps9pKIXtKf0|z`lt9Gj=}~v
zV5R@#i;iLgROJCCM_;o{#qHph*81&P;{6Bdq0^kBDD&Bf{z`ux-(qF@gyP+Vv|j2-
kl43Ed=O_WZ!G)Oe3+%C`L%nNmj{pDw07*qoM6N<$g3>b__5c6?
deleted file mode 100644
--- a/mobile/android/base/resources/drawable-mdpi-v11/ic_menu_reader_add.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<!-- Note: After removing all MDPI assets, the reader icons were being resolved
-           incorrectly for MDPI-V11 devices because of the way we use dummy
-           resources to cater for API 9 builds.  To fix we renamed the HDPI-V11
-           reader resources and point to them in the HDPI-V11 and MDPI-V11
-           drawable folders.  See Bug 1179758 for more info. -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-        android:src="@drawable/ic_menu_reader_add_asset" />
deleted file mode 100644
--- a/mobile/android/base/resources/drawable-mdpi-v11/ic_menu_reader_remove.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<!-- Note: After removing all MDPI assets, the reader icons were being resolved
-           incorrectly for MDPI-V11 devices because of the way we use dummy
-           resources to cater for API 9 builds.  To fix we renamed the HDPI-V11
-           reader resources and point to them in the HDPI-V11 and MDPI-V11
-           drawable folders.  See Bug 1179758 for more info. -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-        android:src="@drawable/ic_menu_reader_remove_asset" />
deleted file mode 100644
index 6f41f850a03de762a8d7677c3bc383b656e8e4e8..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 868a881eb337ea7b2643f5e7bd85f0fee11c6c72..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 8ede346e003b7bad99721c40f63568b58f579c07..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 778fdf39b3467cbea0609ea35bc39e77697b3fab..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 8b57ad9fb0a4247c7b4553c9c84b8396963cc772..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..cab7f2a3602653ecf593bec66fdbb4f562b75e6f
GIT binary patch
literal 6208
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
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..7a690ef0bd085eb5e2f233f823831a8a5ab10bfb
GIT binary patch
literal 688
zc$@*S0#E&kP)<h;3K|Lk000e1NJLTq000;O001Be1^@s62wu2200001b5ch_0Itp)
z=>Px%YDq*vR7ef&RxxN4K@@$ncZQ^h2&S;HxD6Ke7FLQxG>t_9+IR|rVD1i4P>4-B
zL4yifBzs9?h!G)`U?YNv+FDu&F}qe`p(3U*NN&gXH<{br+uNHZXk|VuGxO&C_vine
znO%jV=J^juZEVqJP;;*oadnE2wm1!FU5cJKkk!3-01-Eq>>DhnEgm38zy|LGuvG~E
zyhP<_3A26!3RNim2ouAz)@Ah~G*|1;>KrtdP<Lm_@K$edZ{H#SK8NA?13X0cdTHd&
zdHywo`mPAks1=kPMw?7IXcD~OQVJ_F5FhbPnhq~JEX#Bf+w5x(O~0DObC8HjpNy$_
z2eskbP%2##trfFeK=adh#-|eyj&Q{%X`)$o?`-a(ntPouc`i90-8s7T1kGSHg(n9x
zC!Ef!L$pMb7Dv_Eq1YnHXOkMF{NiRF<;#1W!X0%KA)fPv4y16U9%G_%o>d72j|0f)
zl`i9hzs!`!WY{)^HDZJ9v2?m&z*8J_Pve-{Fx+$iL6>zOz6Q^@vJ-|>tW_^CR5^t+
z>UWZ#J;_2S^^Y;dw@G5pzHr5-LtK2a85pIdZ@aPf<0VUT$Ut3Ng?AX-GlJ^gpWWuO
z85ov0?CLwoCA>FKrj<G2<cJGDKLexoFxZFn@C`FLV4$c~SV6yY1Q#k_Qh3K8KLbM)
z0SCu9{AeI9YbC-g;=;FQU{vQm523X_$*Uz~S*CGu|93OB)Bfibh<B0a-()T1^BMoa
zZLc^R+?!L;cZUA)IncQJ7sO>rWqyX+KgMx@?XA}86$enb&l|L5^{^9IA}zoAk^KQ^
Wq_->WzPNb+0000<MNUMnLSTZABsPx#
deleted file mode 100644
index 9361ddfd1ec341530fd15345ffd151204383fc67..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 41e370b35e27c49a235b64d9c487d516c5ab3e9c..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 6c1700090def8e4f105b49eda4bf9df2df8ecefb..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index f3228599d381fc946bfabf6ea827bb8b7be79049..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..f81bbb0ab76370cc3383397285b64c7ad5f6ab1e
GIT binary patch
literal 10435
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
WD4Q(&IX(#PWmA+@lc|<65B)!Z(>#s<
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..4821f1743679281fe48f9c50c4c8c3cf2e5028d0
GIT binary patch
literal 994
zc$@*^10DQ{P)<h;3K|Lk000e1NJLTq001Na001xu1^@s6c}Lh400001b5ch_0Itp)
z=>Px&oJmAMR9Fe^Sv_bJQ4s##=EnmI8yhuZve$@R3M~W$@rM)<0)i1WsKJE07>HI9
z6e1{yHvSa3JCk6D2#OJjg@RfLcG@XeD0dr85Vf(8V2rta&g|y0yT`u0+gx&KcHpw_
z&3yCCck_1N?p_2cvBBIfN*@KJZqtYy9Z#Z1e`C+X|JA~$crr#EG3>X5k#Ff%p`b!%
z+yeZ3?s)LHLP5dgONmB;N_8#jP}HGP9Viu#&Y@Brs$B%6a$Pj;fW#Nn)%T;TVR|vP
z5`&@X2F(Ax28ad-j3J?qa2b2aQpNzJyh9(lS<2%Ce2tN>8&^Vy#hIDhVAYT~N;P-G
zl*346FL6vm+USEctqD6UlZa#P-%Dh^tuMHi?Z}*F{uQl6+`}m`09qxD#9Z_Q3KNNK
zFlS#NlU-MEReWSF=45U^ljtQu_}~|_d{Q<ek7pSBzE+7TH^3as#hfY=GOHmLJ3;X&
z6^8sfF*7rPyGASk6CC1P=3p+B2~1;6tWQJdrYY27AB6a!!crIaVpcvvM%F1YssQJ3
zE_0|%;3sM*PFn1%tULaRL>-_@@RurwTHT7gagUDWZ>Eg3b6S<WT(ef}2Wud6$h-9S
zv>&w4=eIgpw$qg`OrnGuvk+lSdUA-ik#;4PYjI7ky<m<Yb|m$;sL>8mr~VWGKF3o?
z8Ml1=UKeAe+39t<XH<i0aZQ)`f77(lLSz%P?)5Hg(NMbznEgf0g=tWXAOdrcHErl=
zd|sUIFNjg8>><j0NXt`GoK(?Vh`hCo$@pVG9`BO55u6~<NmrkAyDJ(q7jr7aFt=I|
zM-%!OeVa2pTox0u*XC5S1q<T5WIP3-omW$o8DWk@e6SR{v>;|kHeIKsyIhJ)8P~)W
zi$e);0_v06!8oII_6AIxbsS}kG~A@loGSxqLBa{LHaml#n@*QiK!{-^n!3YW7~ur5
z3cekrbN6YFIua;K-~pY$$4HDBh${+~cMiFexWHDug9<%$yFFu$*_cpbm?OL(&e|j9
zv8CxS?I}-q>M<e4tr%mLVBwd{UBp^G;{q*T54ouu;x>|vd_^wbX6mjNjiU}k9f&$m
zg${T(#?)jpJxh<%4NI>=ZGN`?2vOgL#OBY1dPTPmlint(B!(66JHDKwpJW_!1ljLe
z+nrF=MmyY<96@gHDvljN_6_mfDroV%C^~{HC0ZYyY5Xsy>X>~}dtM;^1I<nkw0<F#
QEC2ui07*qoM6N<$g7`JS_W%F@
deleted file mode 100644
--- a/mobile/android/base/resources/drawable/ic_menu_reader_add.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<shape xmlns:android="http://schemas.android.com/apk/res/android"
-       android:shape="rectangle">
-
-     <solid android:color="@android:color/transparent"/>
-
-</shape>
deleted file mode 100644
--- a/mobile/android/base/resources/drawable/ic_menu_reader_remove.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<shape xmlns:android="http://schemas.android.com/apk/res/android"
-       android:shape="rectangle">
-
-     <solid android:color="@android:color/transparent"/>
-
-</shape>
deleted file mode 100644
--- a/mobile/android/base/resources/drawable/overlay_share_reading_list_button.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item
-        android:state_enabled="false"
-        android:drawable="@drawable/overlay_readinglist_already_icon"/>
-    <item
-        android:drawable="@drawable/overlay_readinglist_icon"/>
-</selector>
deleted file mode 100644
--- a/mobile/android/base/resources/drawable/reading_list_indicator_read.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<shape xmlns:android="http://schemas.android.com/apk/res/android"
-    android:shape="oval"
-    android:useLevel="false">
-
-    <stroke
-        android:width="1dp"
-        android:color="@color/disabled_grey" />
-
-    <solid
-        android:color="@android:color/white" />
-
-    <size
-        android:width="16dp"
-        android:height="16dp" />
-</shape>
deleted file mode 100644
--- a/mobile/android/base/resources/drawable/reading_list_indicator_unread.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<shape xmlns:android="http://schemas.android.com/apk/res/android"
-    android:shape="oval">
-
-    <solid android:color="@color/fennec_ui_orange"/>
-
-    <size
-        android:width="16dp"
-        android:height="16dp"/>
-</shape>
--- a/mobile/android/base/resources/layout/overlay_share_dialog.xml
+++ b/mobile/android/base/resources/layout/overlay_share_dialog.xml
@@ -47,27 +47,16 @@
         <!-- "Send to Firefox Sync" -->
         <org.mozilla.gecko.overlays.ui.SendTabList
             android:id="@+id/overlay_send_tab_btn"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:orientation="vertical"
             android:divider="@null"/>
 
-        <!-- "Add to reading list" -->
-        <org.mozilla.gecko.overlays.ui.OverlayDialogButton
-            style="@style/ShareOverlayRow"
-            android:id="@+id/overlay_share_reading_list_btn"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:enabled="false"
-            gecko:drawable="@drawable/overlay_share_reading_list_button"
-            gecko:enabledText="@string/overlay_share_reading_list_btn_label"
-            gecko:disabledText="@string/overlay_share_reading_list_btn_label_already"/>
-
         <!-- "Add bookmark" -->
         <org.mozilla.gecko.overlays.ui.OverlayDialogButton
             style="@style/ShareOverlayRow"
             android:id="@+id/overlay_share_bookmark_btn"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:enabled="false"
             gecko:drawable="@drawable/overlay_share_bookmark_button"
deleted file mode 100644
--- a/mobile/android/base/resources/layout/reading_list_item_row.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-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/. -->
-
-<org.mozilla.gecko.home.ReadingListRow xmlns:android="http://schemas.android.com/apk/res/android"
-                                       android:layout_width="match_parent"
-                                       android:layout_height="@dimen/reading_list_row_height"
-                                       android:layout_gravity="center_vertical">
-
-    <ImageView android:id="@+id/indicator"
-               android:layout_width="64dp"
-               android:layout_height="match_parent"
-               android:scaleType="center" />
-
-    <LinearLayout android:layout_width="0dip"
-                  android:layout_height="match_parent"
-                  android:layout_weight="1"
-                  android:paddingRight="@dimen/reading_list_row_padding_right"
-                  android:orientation="vertical"
-                  android:gravity="center_vertical">
-
-        <TextView android:id="@+id/title"
-                  android:layout_width="match_parent"
-                  android:layout_height="wrap_content"
-                  android:paddingBottom="4dp"
-                  style="@style/Widget.ReadingListRow.Title" />
-
-        <TextView android:id="@+id/excerpt"
-                  android:layout_width="match_parent"
-                  android:layout_height="wrap_content"
-                  style="@style/Widget.ReadingListRow.Description" />
-
-    </LinearLayout>
-
-</org.mozilla.gecko.home.ReadingListRow>
copy from mobile/android/base/resources/layout/firstrun_sync_fragment.xml
copy to mobile/android/base/resources/layout/readinglistpanel_gone_fragment.xml
--- a/mobile/android/base/resources/layout/firstrun_sync_fragment.xml
+++ b/mobile/android/base/resources/layout/readinglistpanel_gone_fragment.xml
@@ -12,44 +12,48 @@
 
     <LinearLayout android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:minHeight="@dimen/firstrun_min_height"
                   android:background="@color/about_page_header_grey"
                   android:gravity="center_horizontal"
                   android:orientation="vertical">
 
-
         <ImageView android:layout_width="wrap_content"
-                   android:layout_height="@dimen/firstrun_background_height"
+                   android:layout_height="wrap_content"
                    android:layout_marginTop="40dp"
                    android:layout_marginBottom="40dp"
                    android:scaleType="fitCenter"
                    android:layout_gravity="center"
                    android:adjustViewBounds="true"
-                   android:src="@drawable/firstrun_signin"/>
+                   android:src="@drawable/reading_list_migration"/>
 
         <TextView android:layout_width="@dimen/firstrun_content_width"
                   android:layout_height="wrap_content"
                   android:gravity="center"
-                  android:paddingBottom="40dp"
                   android:textAppearance="@style/TextAppearance.FirstrunLight.Main"
-                  android:text="@string/firstrun_signin_message"/>
+                  android:text="@string/reading_list_migration_title"/>
+
+        <TextView android:id="@+id/firstrun_subtext"
+                  android:layout_width="@dimen/firstrun_content_width"
+                  android:layout_height="wrap_content"
+                  android:paddingTop="20dp"
+                  android:paddingBottom="30dp"
+                  android:gravity="center"
+                  android:text="@string/reading_list_migration_subtext"
+                  android:textAppearance="@style/TextAppearance.FirstrunRegular.Body"
+                  android:singleLine="false"/>
 
         <Button android:id="@+id/welcome_account"
                 style="@style/Widget.Firstrun.Button"
                 android:background="@drawable/button_background_action_orange_round"
                 android:layout_gravity="center"
-                android:text="@string/firstrun_signin_button"/>
-
-        <View android:layout_weight="1"
-              android:layout_height="0dp"
-              android:layout_width="match_parent"/>
+                android:text="@string/reading_list_migration_goto_bookmarks"/>
 
         <TextView android:id="@+id/welcome_browse"
                   android:layout_width="wrap_content"
                   android:layout_height="wrap_content"
-                  android:padding="30dp"
+                  android:padding="16dp"
                   android:gravity="center"
                   android:textAppearance="@style/TextAppearance.FirstrunRegular.Link"
-                  android:text="@string/firstrun_welcome_button_browser"/>
+                  android:text="@string/pref_learn_more"/>
     </LinearLayout>
 </ScrollView>
--- a/mobile/android/base/resources/layout/two_line_page_row.xml
+++ b/mobile/android/base/resources/layout/two_line_page_row.xml
@@ -43,9 +43,16 @@
 
     <ImageView android:id="@+id/status_icon_bookmark"
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:visibility="gone"
                android:src="@drawable/star_blue"/>
 
+    <ImageView android:id="@+id/is_reader_cached"
+               android:layout_width="wrap_content"
+               android:layout_height="wrap_content"
+               android:layout_gravity="center_vertical"
+               android:visibility="invisible"
+               android:src="@drawable/status_icon_readercache"/>
+
 </merge>
--- a/mobile/android/base/resources/menu-large-v11/browser_app_menu.xml
+++ b/mobile/android/base/resources/menu-large-v11/browser_app_menu.xml
@@ -24,21 +24,16 @@
           android:title="@string/forward"
           android:visible="false"/>
 
     <item android:id="@+id/bookmark"
           android:icon="@drawable/ic_menu_bookmark_add"
           android:title="@string/bookmark"
           android:showAsAction="ifRoom"/>
 
-    <item android:id="@+id/reading_list"
-          android:icon="@drawable/ic_menu_reader_add"
-          android:title="@string/overlay_share_reading_list_btn_label"
-          android:showAsAction="ifRoom"/>
-
     <item android:id="@+id/share"
           android:icon="@drawable/ic_menu_share"
           android:title="@string/share"
           android:showAsAction="ifRoom"/>
 
     <!-- We only show the quick share items so no need for an icon or title.
 
          The visibility is changed dynamically for v14+ - hide for previous versions. -->
--- a/mobile/android/base/resources/menu-v11/browser_app_menu.xml
+++ b/mobile/android/base/resources/menu-v11/browser_app_menu.xml
@@ -24,21 +24,16 @@
           android:title="@string/reload"
           android:showAsAction="always"/>
 
     <item android:id="@+id/bookmark"
           android:icon="@drawable/ic_menu_bookmark_add"
           android:title="@string/bookmark"
           android:showAsAction="ifRoom"/>
 
-    <item android:id="@+id/reading_list"
-          android:icon="@drawable/ic_menu_reader_add"
-          android:title="@string/overlay_share_reading_list_btn_label"
-          android:showAsAction="ifRoom"/>
-
     <item android:id="@+id/share"
           android:icon="@drawable/ic_menu_share"
           android:title="@string/share"
           android:showAsAction="ifRoom"/>
 
     <!-- We only show the quick share items so no need for an icon or title.
 
          The visibility is changed dynamically for v14+ - hide for previous versions. -->
--- a/mobile/android/base/resources/menu-xlarge-v11/browser_app_menu.xml
+++ b/mobile/android/base/resources/menu-xlarge-v11/browser_app_menu.xml
@@ -24,21 +24,16 @@
           android:title="@string/forward"
           android:visible="false"/>
 
     <item android:id="@+id/bookmark"
           android:icon="@drawable/ic_menu_bookmark_add"
           android:title="@string/bookmark"
           android:showAsAction="always"/>
 
-    <item android:id="@+id/reading_list"
-          android:icon="@drawable/ic_menu_reader_add"
-          android:title="@string/overlay_share_reading_list_btn_label"
-          android:showAsAction="ifRoom"/>
-
     <item android:id="@+id/share"
           android:icon="@drawable/ic_menu_share"
           android:title="@string/share"
           android:showAsAction="ifRoom"/>
 
     <!-- We only show the quick share items so no need for an icon or title.
 
          The visibility is changed dynamically for v14+ - hide for previous versions. -->
--- a/mobile/android/base/resources/menu/browser_app_menu.xml
+++ b/mobile/android/base/resources/menu/browser_app_menu.xml
@@ -24,19 +24,16 @@
           android:title="@string/new_tab"/>
 
     <item android:id="@+id/new_private_tab"
           android:title="@string/new_private_tab"/>
 
     <item android:id="@+id/share"
           android:title="@string/share" />
 
-    <item android:id="@+id/reading_list"
-          android:title="@string/overlay_share_reading_list_btn_label" />
-
     <item android:id="@+id/find_in_page"
           android:title="@string/find_in_page" />
 
     <item android:id="@+id/desktop_mode"
           android:title="@string/desktop_mode"
           android:checkable="true" />
 
     <item android:id="@+id/bookmarks_list"
--- a/mobile/android/base/resources/menu/home_contextmenu.xml
+++ b/mobile/android/base/resources/menu/home_contextmenu.xml
@@ -24,21 +24,15 @@
           android:title="@string/contextmenu_top_sites_pin"/>
 
     <item android:id="@+id/top_sites_unpin"
           android:title="@string/contextmenu_top_sites_unpin"/>
 
     <item android:id="@+id/home_edit_bookmark"
           android:title="@string/contextmenu_edit_bookmark"/>
 
-    <item android:id="@+id/mark_read"
-          android:title="@string/contextmenu_mark_read" />
-
-    <item android:id="@+id/mark_unread"
-        android:title="@string/contextmenu_mark_unread" />
-
     <item android:id="@+id/home_remove"
           android:title="@string/contextmenu_remove"/>
 
     <item android:id="@+id/home_add_to_launcher"
           android:title="@string/contextmenu_add_to_launcher"/>
 
 </menu>
--- a/mobile/android/base/resources/values-large-v11/dimens.xml
+++ b/mobile/android/base/resources/values-large-v11/dimens.xml
@@ -26,16 +26,13 @@
 
     <dimen name="firstrun_brand_size">72dp</dimen>
     <dimen name="firstrun_background_height">300dp</dimen>
 
     <dimen name="tabs_panel_indicator_width">72dp</dimen>
     <dimen name="tabs_panel_button_width">60dp</dimen>
     <dimen name="panel_grid_view_column_width">200dp</dimen>
 
-    <dimen name="reading_list_row_height">96dp</dimen>
-    <dimen name="reading_list_row_padding_right">15dp</dimen>
-
     <dimen name="overlay_prompt_container_width">360dp</dimen>
 
     <item name="tab_strip_content_start" type="dimen">72dp</item>
 
 </resources>
--- a/mobile/android/base/resources/values-large-v11/styles.xml
+++ b/mobile/android/base/resources/values-large-v11/styles.xml
@@ -72,25 +72,16 @@
     <style name="Widget.TopSitesListView" parent="Widget.BookmarksListView">
         <item name="android:paddingTop">30dp</item>
         <item name="android:paddingLeft">32dp</item>
         <item name="android:paddingRight">32dp</item>
         <item name="android:clipToPadding">false</item>
         <item name="topDivider">false</item>
     </style>
 
-    <style name="Widget.ReadingListView" parent="Widget.BookmarksListView"/>
-
-    <style name="Widget.ReadingListRow.Description">
-        <item name="android:textAppearance">@style/TextAppearance.Widget.Home.ItemDescription</item>
-        <item name="android:maxLines">2</item>
-        <item name="android:ellipsize">end</item>
-        <item name="android:lineSpacingMultiplier">1.3</item>
-    </style>
-
     <style name="Widget.HomeBanner">
         <item name="android:paddingLeft">32dp</item>
         <item name="android:paddingRight">32dp</item>
     </style>
 
     <style name="TextAppearance.UrlBar.Title" parent="TextAppearance.Medium">
         <item name="android:textSize">16sp</item>
     </style>
--- a/mobile/android/base/resources/values/dimens.xml
+++ b/mobile/android/base/resources/values/dimens.xml
@@ -84,20 +84,16 @@
     <!-- Regular page row on about:home -->
     <dimen name="page_row_height">64dp</dimen>
 
     <!-- Group/heading page row on about:home -->
     <dimen name="page_group_height">56dp</dimen>
     <dimen name="home_header_item_height">56dp</dimen>
     <dimen name="page_row_divider_height">1dp</dimen>
 
-    <!-- Reading list row on about:home -->
-    <dimen name="reading_list_row_height">128dp</dimen>
-    <dimen name="reading_list_row_padding_right">10dp</dimen>
-
     <!-- Remote Tabs static view top padding. Less in landscape on phones. -->
     <dimen name="home_remote_tabs_top_padding">48dp</dimen>
 
     <!-- Remote Tabs Hidden devices row height -->
     <dimen name="home_remote_tabs_hidden_footer_height">40dp</dimen>
 
     <!-- Search Engine Row height -->
     <dimen name="search_row_height">48dp</dimen>
--- a/mobile/android/base/resources/values/styles.xml
+++ b/mobile/android/base/resources/values/styles.xml
@@ -123,51 +123,16 @@
     </style>
 
     <style name="Widget.TwoLinePageRow.Url">
         <item name="android:textAppearance">@style/TextAppearance.Widget.Home.ItemDescription</item>
         <item name="android:includeFontPadding">false</item>
         <item name="android:singleLine">true</item>
     </style>
 
-    <style name="Widget.ReadingListRow" />
-
-    <style name="Widget.ReadingListRow.Title">
-        <item name="android:textAppearance">@style/TextAppearance.Widget.Home.ItemTitle</item>
-        <item name="android:maxLines">2</item>
-        <item name="android:ellipsize">end</item>
-    </style>
-
-    <style name="Widget.ReadingListRow.Title.Read" parent="Widget.ReadingListRow.Title">
-        <item name="android:textColor">@color/disabled_grey</item>
-    </style>
-
-    <style name="Widget.ReadingListRow.Title.Unread" parent="Widget.ReadingListRow.Title">
-        <item name="android:textColor">@color/text_and_tabs_tray_grey</item>
-    </style>
-
-    <style name="Widget.ReadingListRow.Description">
-        <item name="android:textAppearance">@style/TextAppearance.Widget.Home.ItemDescription</item>
-        <item name="android:maxLines">3</item>
-        <item name="android:ellipsize">end</item>
-        <item name="android:lineSpacingMultiplier">1.3</item>
-    </style>
-
-    <style name="Widget.ReadingListRow.Description.Read" parent="Widget.ReadingListRow.Description">
-        <item name="android:textColor">@color/disabled_grey</item>
-    </style>
-
-    <style name="Widget.ReadingListRow.Description.Unread" parent="Widget.ReadingListRow.Description">
-        <item name="android:textColor">@color/text_and_tabs_tray_grey</item>
-    </style>
-
-    <style name="Widget.ReadingListRow.ReadTime">
-        <item name="android:textColor">@color/fennec_ui_orange</item>
-    </style>
-
     <style name="Widget.FolderView" parent="Widget.TwoLinePageRow.Title">
         <item name="android:layout_height">@dimen/page_group_height</item>
         <item name="android:minHeight">@dimen/page_group_height</item>
         <item name="android:singleLine">true</item>
         <item name="android:ellipsize">none</item>
         <item name="android:background">@color/about_page_header_grey</item>
         <item name="android:paddingLeft">20dp</item>
         <item name="android:drawablePadding">20dp</item>
@@ -239,18 +204,16 @@
     </style>
 
     <style name="Widget.HomeListView" parent="Widget.ListView">
         <item name="android:divider">@color/toolbar_divider_grey</item>
     </style>
 
     <style name="Widget.TopSitesListView" parent="Widget.BookmarksListView"/>
 
-    <style name="Widget.ReadingListView" parent="Widget.BookmarksListView"/>
-
     <style name="Widget.HomeBanner"/>
 
     <style name="Widget.Home" />
 
     <style name="Widget.Home.HeaderItem">
         <item name="android:layout_width">match_parent</item>
         <item name="android:layout_height">32dp</item>
         <item name="android:textAppearance">@style/TextAppearance.Widget.Home.Header</item>
--- a/mobile/android/base/strings.xml.in
+++ b/mobile/android/base/strings.xml.in
@@ -51,16 +51,19 @@
 
   <string name="firstrun_welcome_restricted">&onboard_start_restricted1;</string>
 
   <string name="bookmarks_title">&bookmarks_title;</string>
   <string name="history_title">&history_title;</string>
   <string name="reading_list_title">&reading_list_title;</string>
   <string name="recent_tabs_title">&recent_tabs_title;</string>
 
+  <!-- https://support.mozilla.org/1/mobile/%VERSION%/%OS%/%LOCALE%/reading-list -->
+  <string name="migrated_reading_list_url">https://support.mozilla.org/1/mobile/&formatS1;/&formatS2;/&formatS3;/reading-list</string>
+
   <string name="switch_to_tab">&switch_to_tab;</string>
 
   <string name="crash_reporter_title">&crash_reporter_title;</string>
   <string name="crash_message2">&crash_message2;</string>
   <string name="crash_send_report_message3">&crash_send_report_message3;</string>
   <string name="crash_include_url2">&crash_include_url2;</string>
   <string name="crash_sorry">&crash_sorry;</string>
   <string name="crash_comment">&crash_comment;</string>
@@ -89,16 +92,17 @@
   <string name="bookmark_remove">&bookmark_remove;</string>
   <string name="bookmark_added">&bookmark_added;</string>
   <string name="bookmark_already_added">&bookmark_already_added;</string>
   <string name="bookmark_removed">&bookmark_removed;</string>
   <string name="bookmark_updated">&bookmark_updated;</string>
   <string name="bookmark_options">&bookmark_options;</string>
   <string name="screenshot_added_to_bookmarks">&screenshot_added_to_bookmarks;</string>
   <string name="screenshot_folder_label_in_bookmarks">&screenshot_folder_label_in_bookmarks;</string>
+  <string name="readinglist_smartfolder_label_in_bookmarks">&readinglist_smartfolder_label_in_bookmarks;</string>
 
   <string name="history_today_section">&history_today_section;</string>
   <string name="history_yesterday_section">&history_yesterday_section;</string>
   <string name="history_week_section">&history_week_section3;</string>
   <string name="history_older_section">&history_older_section3;</string>
 
   <string name="share">&share;</string>
   <string name="share_title">&share_title;</string>
@@ -118,19 +122,17 @@
   <string name="media_sending_to">&media_sending_to;</string>
   <string name="media_play">&media_play;</string>
   <string name="media_pause">&media_pause;</string>
   <string name="media_stop">&media_stop;</string>
 
   <string name="overlay_share_send_other">&overlay_share_send_other;</string>
   <string name="overlay_share_label">&overlay_share_label;</string>
   <string name="overlay_share_bookmark_btn_label">&overlay_share_bookmark_btn_label;</string>
-  <string name="overlay_share_reading_list_btn_label">&overlay_share_reading_list_btn_label;</string>
   <string name="overlay_share_bookmark_btn_label_already">&overlay_share_bookmark_btn_label_already;</string>
-  <string name="overlay_share_reading_list_btn_label_already">&overlay_share_reading_list_btn_label_already;</string>
   <string name="overlay_share_send_tab_btn_label">&overlay_share_send_tab_btn_label;</string>
   <string name="overlay_share_no_url">&overlay_share_no_url;</string>
   <string name="overlay_share_select_device">&overlay_share_select_device;</string>
   <string name="overlay_no_synced_devices">&overlay_no_synced_devices;</string>
 
   <string name="settings">&settings;</string>
   <string name="settings_title">&settings_title;</string>
   <string name="pref_category_general">&pref_category_general;</string>
@@ -356,20 +358,19 @@
   <string name="tabs_normal">&tabs_normal;</string>
   <string name="tabs_private">&tabs_private;</string>
   <string name="edit_mode_cancel">&edit_mode_cancel;</string>
 
   <string name="site_settings_title">&site_settings_title3;</string>
   <string name="site_settings_cancel">&site_settings_cancel;</string>
   <string name="site_settings_clear">&site_settings_clear;</string>
 
-  <string name="reading_list_added">&reading_list_added3;</string>
-  <string name="reading_list_removed">&reading_list_removed;</string>
-  <string name="reading_list_remove">&reading_list_remove;</string>
-  <string name="reading_list_duplicate">&reading_list_duplicate;</string>
+  <string name="reading_list_migration_title">&reading_list_migration_title;</string>
+  <string name="reading_list_migration_subtext">&reading_list_migration_subtext;</string>
+  <string name="reading_list_migration_goto_bookmarks">&reading_list_migration_goto_bookmarks;</string>
 
   <string name="page_action_dropmarker_description">&page_action_dropmarker_description;</string>
 
   <string name="contextmenu_open_new_tab">&contextmenu_open_new_tab;</string>
   <string name="contextmenu_open_private_tab">&contextmenu_open_private_tab;</string>
   <string name="contextmenu_remove">&contextmenu_remove;</string>
   <string name="contextmenu_add_to_launcher">&contextmenu_add_to_launcher;</string>
   <string name="contextmenu_share">&contextmenu_share;</string>
@@ -378,18 +379,16 @@
   <string name="contextmenu_copyurl">&contextmenu_copyurl;</string>
   <string name="contextmenu_edit_bookmark">&contextmenu_edit_bookmark;</string>
   <string name="contextmenu_subscribe">&contextmenu_subscribe;</string>
   <string name="contextmenu_site_settings">&contextmenu_site_settings;</string>
   <string name="contextmenu_top_sites_edit">&contextmenu_top_sites_edit;</string>
   <string name="contextmenu_top_sites_pin">&contextmenu_top_sites_pin;</string>
   <string name="contextmenu_top_sites_unpin">&contextmenu_top_sites_unpin;</string>
   <string name="contextmenu_add_search_engine">&contextmenu_add_search_engine;</string>
-  <string name="contextmenu_mark_read">&contextmenu_mark_read;</string>
-  <string name="contextmenu_mark_unread">&contextmenu_mark_unread;</string>
 
   <string name="doorhanger_login_no_username">&doorhanger_login_no_username;</string>
   <string name="doorhanger_login_edit_title">&doorhanger_login_edit_title;</string>
   <string name="doorhanger_login_edit_username_hint">&doorhanger_login_edit_username_hint;</string>
   <string name="doorhanger_login_edit_password_hint">&doorhanger_login_edit_password_hint;</string>
   <string name="doorhanger_login_edit_toggle">&doorhanger_login_edit_toggle;</string>
   <string name="doorhanger_login_edit_toast_error">&doorhanger_login_edit_toast_error;</string>
   <string name="doorhanger_login_select_message">&doorhanger_login_select_message;</string>
@@ -436,17 +435,16 @@
   <string name="home_bookmarks_empty">&home_bookmarks_empty;</string>
   <string name="home_closed_tabs_title">&home_closed_tabs_title;</string>
   <string name="home_last_tabs_title">&home_last_tabs_title;</string>
   <string name="home_last_tabs_empty">&home_last_tabs_empty;</string>
   <string name="home_open_all">&home_open_all;</string>
   <string name="home_most_recent_empty">&home_most_recent_empty;</string>
   <string name="home_selected_empty">&home_selected_empty;</string>
   <string name="home_most_recent_emptyhint">&home_most_recent_emptyhint2;</string>
-  <string name="home_reading_list_empty">&home_reading_list_empty;</string>
   <string name="home_default_empty">&home_default_empty;</string>
   <string name="home_move_back_to_filter">&home_move_back_to_filter;</string>
   <string name="home_remote_tabs_title">&home_remote_tabs_title;</string>
   <string name="home_remote_tabs_empty">&home_remote_tabs_empty;</string>
   <string name="home_remote_tabs_unable_to_connect">&home_remote_tabs_unable_to_connect;</string>
   <string name="home_remote_tabs_need_to_sign_in">&home_remote_tabs_need_to_sign_in;</string>
   <string name="home_remote_tabs_need_to_finish_migrating">&home_remote_tabs_need_to_finish_migrating;</string>
   <string name="home_remote_tabs_trouble_verifying">&home_remote_tabs_trouble_verifying;</string>
--- a/mobile/android/chrome/content/Reader.js
+++ b/mobile/android/chrome/content/Reader.js
@@ -71,20 +71,28 @@ var Reader = {
   observe: function Reader_observe(aMessage, aTopic, aData) {
     switch (aTopic) {
       case "Reader:FetchContent": {
         let data = JSON.parse(aData);
         this._fetchContent(data.url, data.id);
         break;
       }
 
-      case "Reader:Removed": {
+      case "Reader:RemoveFromCache": {
         ReaderMode.removeArticleFromCache(aData).catch(e => Cu.reportError("Error removing article from cache: " + e));
         break;
       }
+
+      case "Reader:AddToCache": {
+        // If the article is coming from reader mode, we must have fetched it already.
+        this._getArticle(aData).then((article) => {
+          ReaderMode.storeArticleInCache(article);
+        }).catch(e => Cu.reportError("Error storing article in cache: " + e));
+        break;
+      }
     }
   },
 
   receiveMessage: function(message) {
     switch (message.name) {
       case "Reader:ArticleGet":
         this._getArticle(message.data.url).then((article) => {
           // Make sure the target browser is still alive before trying to send data back.
--- a/mobile/android/chrome/content/browser.js
+++ b/mobile/android/chrome/content/browser.js
@@ -148,17 +148,17 @@ var lazilyLoadedObserverScripts = [
   ["MemoryObserver", ["memory-pressure", "Memory:Dump"], "chrome://browser/content/MemoryObserver.js"],
   ["ConsoleAPI", ["console-api-log-event"], "chrome://browser/content/ConsoleAPI.js"],
   ["FindHelper", ["FindInPage:Opened", "FindInPage:Closed", "Tab:Selected"], "chrome://browser/content/FindHelper.js"],
   ["PermissionsHelper", ["Permissions:Check", "Permissions:Get", "Permissions:Clear"], "chrome://browser/content/PermissionsHelper.js"],
   ["FeedHandler", ["Feeds:Subscribe"], "chrome://browser/content/FeedHandler.js"],
   ["Feedback", ["Feedback:Show"], "chrome://browser/content/Feedback.js"],
   ["SelectionHandler", ["TextSelection:Get"], "chrome://browser/content/SelectionHandler.js"],
   ["EmbedRT", ["GeckoView:ImportScript"], "chrome://browser/content/EmbedRT.js"],
-  ["Reader", ["Reader:FetchContent", "Reader:Removed"], "chrome://browser/content/Reader.js"],
+  ["Reader", ["Reader:FetchContent", "Reader:AddToCache", "Reader:RemoveFromCache"], "chrome://browser/content/Reader.js"],
   ["PrintHelper", ["Print:PDF"], "chrome://browser/content/PrintHelper.js"],
 ];
 if (AppConstants.NIGHTLY_BUILD) {
   lazilyLoadedObserverScripts.push(
     ["ActionBarHandler", ["TextSelection:Get", "TextSelection:Action", "TextSelection:End"],
       "chrome://browser/content/ActionBarHandler.js"]
   );
 }
@@ -184,16 +184,18 @@ lazilyLoadedObserverScripts.forEach(func
   notifications.forEach((notification) => {
     Services.obs.addObserver(observer, notification, false);
   });
 });
 
 // Lazily-loaded browser scripts that use message listeners.
 [
   ["Reader", [
+    ["Reader:AddToCache", false],
+    ["Reader:RemoveFromCache", false],
     ["Reader:ArticleGet", false],
     ["Reader:DropdownClosed", true], // 'true' allows us to survive mid-air cycle-collection.
     ["Reader:DropdownOpened", false],
     ["Reader:FaviconRequest", false],
     ["Reader:ToolbarHidden", false],
     ["Reader:SystemUIVisibility", false],
     ["Reader:UpdateReaderButton", false],
   ], "chrome://browser/content/Reader.js"],
@@ -633,30 +635,16 @@ var BrowserApp = {
             action: {
               label: buttonLabel,
               callback: () => { BrowserApp.selectTab(tab); },
             }
           });
         });
     }
 
-    NativeWindow.contextmenus.add(stringGetter("contextmenu.addToReadingList"),
-      NativeWindow.contextmenus.linkOpenableContext,
-      function(aTarget) {
-        UITelemetry.addEvent("action.1", "contextmenu", null, "web_reading_list");
-        UITelemetry.addEvent("save.1", "contextmenu", null, "reading_list");
-
-        let url = NativeWindow.contextmenus._getLinkURL(aTarget);
-        Messaging.sendRequestForResult({
-            type: "Reader:AddToList",
-            title: truncate(url, MAX_TITLE_LENGTH),
-            url: truncate(url, MAX_URI_LENGTH),
-        }).catch(Cu.reportError);
-      });
-
     NativeWindow.contextmenus.add(stringGetter("contextmenu.copyLink"),
       NativeWindow.contextmenus.linkCopyableContext,
       function(aTarget) {
         UITelemetry.addEvent("action.1", "contextmenu", null, "web_copy_link");
 
         let url = NativeWindow.contextmenus._getLinkURL(aTarget);
         NativeWindow.contextmenus._copyStringToDefaultClipboard(url);
       });
@@ -3468,26 +3456,29 @@ Tab.prototype = {
 
     // Note that the XBL binding is untrusted
     this.browser.addEventListener("PluginBindingAttached", this, true, true);
     this.browser.addEventListener("VideoBindingAttached", this, true, true);
     this.browser.addEventListener("VideoBindingCast", this, true, true);
 
     Services.obs.addObserver(this, "before-first-paint", false);
 
+    // Always intialise new tabs with basic session store data to avoid
+    // problems with functions that always expect it to be present
+    this.browser.__SS_data = {
+      entries: [{
+        url: aURL,
+        title: truncate(title, MAX_TITLE_LENGTH)
+      }],
+      index: 1
+    };
+
     if (aParams.delayLoad) {
-      // If this is a zombie tab, attach restore data so the tab will be
-      // restored when selected
-      this.browser.__SS_data = {
-        entries: [{
-          url: aURL,
-          title: truncate(title, MAX_TITLE_LENGTH)
-        }],
-        index: 1
-      };
+      // If this is a zombie tab, mark the browser for delay loading, which will
+      // restore the tab when selected using the session data added above
       this.browser.__SS_restore = true;
     } else {
       let flags = "flags" in aParams ? aParams.flags : Ci.nsIWebNavigation.LOAD_FLAGS_NONE;
       let postData = ("postData" in aParams && aParams.postData) ? aParams.postData.value : null;
       let referrerURI = "referrerURI" in aParams ? aParams.referrerURI : null;
       let charset = "charset" in aParams ? aParams.charset : null;
 
       // The search term the user entered to load the current URL
--- a/mobile/android/locales/en-US/chrome/browser.properties
+++ b/mobile/android/locales/en-US/chrome/browser.properties
@@ -237,17 +237,16 @@ selectionHelper.textCopied=Text copied t
 # dialog/prompt.
 casting.sendToDevice=Send to Device
 casting.mirrorTab=Mirror Tab
 casting.mirrorTabStop=Stop Mirror
 
 # Context menu
 contextmenu.openInNewTab=Open Link in New Tab
 contextmenu.openInPrivateTab=Open Link in Private Tab
-contextmenu.addToReadingList=Add to Reading List
 contextmenu.share=Share
 contextmenu.copyLink=Copy Link
 contextmenu.shareLink=Share Link
 contextmenu.bookmarkLink=Bookmark Link
 contextmenu.copyEmailAddress=Copy Email Address
 contextmenu.shareEmailAddress=Share Email Address
 contextmenu.copyPhoneNumber=Copy Phone Number
 contextmenu.sharePhoneNumber=Share Phone Number
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..77524cf99602965e9df1763b0130bbe592cf2500
GIT binary patch
literal 368640
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
FzX2I89@_u_
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..684c7c64442422164f84a78983297f0141d03b86
GIT binary patch
literal 466944
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%0D3UaXA1uyQqLn35*lVcK7Y
zXHsBhmCR=v)IvVtUfAb1kcVtOBP~aX@lnzd^s-Sk`t4_NyUHAY{B<546|C0q8cN^J
zZ3B&=5k6{vVL(&}eLkSFNo^~olpQ7FdL6KGyTM+PN_#1*FWH>eon_bbU2g_amG=vx
z?7|`Cj;lkmt0kYVbO>AyBkiMyQd6`l{o#@qe|RTsyfZG8QmTvjnNZ>R{MD&aP7_F{
z@S<MPpR{&Ou64hEq#tY2dUJ6Uo78k&qw(ncmdf<+{9jaBOgBg<zSe|`B%0=mMEq#D
zLl8e0ErCT(?N-?Kh)W&eg7&_4JRnYP5=}xglQ7bzHj30VKacxH9^%Wm!mKKvv?Ytl
z0sz`gR;%B;pEIi(O7*g_aH9)=n{k)FzJ%nJ3`9{e?tUc}m9QUli8co6qYSK)<|7-A
z16`6#$;=N|f~;+5YJyI>v+;bO+MH4$5sFnQYo+U-tZyi5@+J`80*3tI{!%m~KK<B=
z;T;y(FRf3;=Sr_{Y&c@<NB<<j9gc9N&U5&WVu0j%0M&HBtK7@HTknm9gAf*RY$P;9
zf%y-BYVL3YeMUf_+$BZ0bF!VPdKcvIgzYDaC>?$NiTPLrL>$2>_)WaBLDNU1F4G2&
zmr4Ig8;v%w7Qcp@rZ60D7q1j&blRKOW)y>0sedvM)d|+Qimwl$JAG=WI|N>3c$&J0
z-+U2%vduJ)z<uXLOtjunJn<M&5`VWo^(WKdrl9p>TQ?BtN|yp?`V0oihAuEfEZh+v
zRmU@Z!|o`7O)Y1op(cqZT%y;;Vt&@)(c&x19iR>>9=K7P1JbU_VT-;y@Qhhp9ZsE3
zRt-YJ5ir*qllg1>^?fVlb{todTtNF}A9n+G1KDo*rv7pWW&LGbu>bIcCXPbEN#@^s
zH#1SAQ?dj6VZk~s-UVjxIejPN$`Zk}E@Tgi6Ix|L?m&S^Qo`>FIckQ&V(X>%UhUKB
zT>e;KOmf4hMr^M<1o$a9)cjfdCGul|IXSQjJwHMsY&AaTyL^y1h1J3R(wrA#@p$@s
zy2sF%)bkdt+;)^`ao<lcH0GJ}f*Ft^-Lb^6;S;@AtW)h~efKfWHcpaQ$fMPK5XEr#
z7rm;VjK`~Hb@&=-P)Q#d>=J?qYh{<xCSb&|H=eaE`De5s|LXi_5#SS4x67ffg<Ll#
zZTZs2%X9^}c}-7p6j{-X<($ek|B`yg+uW(H1|a!PdhqRWr8V$-s)>{ao`}WzocLby
zYxO^l(huHo%i$)z1?A#>^07vqM=@|uD$NlYdJ*^M$t)7B1;V%LM-v-Cd)Up)F@ied
z&s9(qSK54~t>TGtci1VKN&zAh@vG&J!>eMD-GHLlsToQ;9C^xj4%E~`<Ttvjj?J3#
z%fUhDm99VI5i5jgtC7#HKg`RA7+wnds6z#o8i$;%BJlOwSK&E_W;Uj?u^=vj=tfh*
zkWtT_WBoac5jt<_lKs&GF~2WNZ#_e%h94;)B7_rgks{Z)$Q$$e^}(nuTE>tP$C{Hh
zDBA%l02+Xn{I2bP1M53YMTx)LRxC+MemD3YG`$oBdbCVrph2R?Vu<^@oH_S{UuU>k
z%u0o)lnjyIwnRjrJJuG!fJ>{4FZrcUv0!w<`xD~%Q|17uPWY%$cW}4FX~ql7o2|0z
zqY?X^M`nQ5>%qRF!RJb$vsb}Kg`-}pw%2KTGY<fU7&gZys7xG1iT~NJh=bcSpD)Lu
z$lnyin?<c9DY@--8O$OJ4euRYswe|+yAn`d9MP7mpT_mO_e0Y*K1KPm>UV_!t67#E
z8k%)~PviBv^xGWL8nW@V-wYH^y9OChOh5UYahF_svIBS^B+*d|wKe1YsH9r#<wlJ%
zy#@}yc-RbumujZl<SLc!aKrzoC_!NOtZE6L#s4@Q$@xQQRDWzzd88h8d!m`ze#cnI
zw+<;Vbfp)}ZTF1ID3fp8$>^WdoD!YPQ!Ni1<l%u;=$OG5c0b|i&>C?ra?R*UWi#Ir
zIrp0%_$!l#U9Jk<M-{lFi=)Tj^!ZSaD>k;kFG>lgA3qQCh+AQIGp<4$FkMC1eR)Hz
zQ9sNq9(OVos18~syfV{JS4tyu9wZmhX1qz}DorK$&iLg7<{qo}^$S1{n+xLi@%dVM
z-Rt0Zmz60tli$N&qK63o0-;(tYY4Sv{iOX$iTv!0R`+W~k`#mAn=X$q<HN12k2rtj
z;uBg2EvH1xUrG4Y(E4tCm*vbSdBx&8J0@+iZ|dNbo^AufklIA&>a<4ao6(<&^=|*P
zHe}OFZ(4O{^p|;Ma4b?E1+jw{l-a1@y{l_zT;W)TlL`eMcU=p+t-d8ro1))NOk31E
z&cHLqTkcI(mWKR*`EDBrU~4pS-_8r~<^iI`fR_Bj+uGL>+hZAaPKTD?R>ZF>Dypn0
zwUhB)Cc28(5t@#9^d{83E6RlD;=WNJmwdpbH8qgX=n2V%W-1|oKOAx_C*$vqyLxgX
z`-IvyeV^zNPZvMK+0L|};G-tBIIoIkSNh4v)rTsFs)nrfrJj7>OFODtI9GPAx8c*u
zEqG&QmT!!w0((q>7@Oqr2#b58@C3fp6S|XA7^aZxS!GL|4Ea<R6lmZL{z&Mlg=k5*
zk9Gybyp!~xsLkTYJKk~N<)fiikoqnnEo@f&nEO3%%tLYi?B@~Zl98;YM8v`=&upLJ
z%0+M`u*dRXZE_NGOl>l~3%H+<9WzhIl!#Rn3*g+D^Id$Z4IvdKIWg@Y)*ZVs*Vh<g
z;yP-$9SoV|{|FFgz!*)A%wM_AR)_XgM6Fj=1Blzh2&ehMiLrh}mX=sxl$|x+53EuN
zbjqoJCQ#ci_^1rq8e3!@4v?!?BE6(&qR6zF#4=6;&?C)d?FOC#@>}iDrF4p4&YPi|
zTBL?SnB56z1WTnSq%sB;6UE0MN>ed^ONXVHbVE~^2+jn;eDIAc0C&Uo@NX5gn+-NV
zK0H@GQTwTg6`y5l4+*yDAKL_5D!9QP-bcZRE6omQUnbSn!-Fn39r-ToQT`L{B>5_e
zN`+$6(dj96gAD0<?-k$Fn7*|HgYJ#R+GT)xgrz@XO*X<-zgB?S=%Rf%N1m!`i1h<=
z0eGU$KbgZT+>C+PLd*_|GG(O_Ot}+RK-f@Tcg21*Qm_m}!WN`q1MkV;A9^>jI*<0+
zW>T#vsWn=tPsQU^kA07wTQh1&IN)xe4}eeL<L68mmY4{Oyy`f|FfRM<3BbA^LHZeb
zgpVnztH+8xiey*unWA!GcNC)bh>y6{!2kzr(>~haVnKdNU32KfDpo4ECDdEmXfg86
z`@~$5_Z>-729JC;uB^0JDGoDGig@U<WlWgWiF8VFObXOyfcWLGdMepHQQQ2H3#-Ov
z_(W=0;iVGj8N8=r%QhOzSa@oBILMNLqx+bEf$qa{>R>f`n7XPFk=Fo3zF&?OZ0=oX
zDf+ZhSF9cxiQ2n;wIN1nXKlEX>S=A)Zy2*?f4|*1897j7IsgFT;Z+M?wampnj1gld
zGdqz-fvWL6pz@FE2mM$iDFeg+^3v0gb2>?04K?wfTFCd*CuC>+U@}8eJJHM!VC7-`
zUFy%(Xop0w4#AHC+HKz<p%1)UpI}vD%sM-xQcB5ix7;Zn-61aA3!3Px+5J4815NHe
zVLT49vMSIFbrl{RTje1CC3jDev-d_$wt!;?JqZ@;nr?CjDP;CVkiWf%9iNNGK6U$B
zN?^#hTYbB;$3z(}U(7J8`(iav8=coHqVMJ-DSCX^c42p_z?4%QA;r5-r9Ec0nnMHa
zX<E+)6}UKc9n&;;vuqs_hPMAaa7jaFgOyIGKuSG+*-M1D99Gyqjo)v+s1a;?^oit|
zT2Tv6@g19C<Gs0W7TvZMt5%Hus%VKHIMd<=GJ1iY)C~gPp`L{t4)gVJQQFJAVAT%i
z>iNnacBX$g=En#x3rFU|<aadHxo`-dV6$=N&O#oe6hrTx(Crx^2=l=Fmrp`hZwX3&
zy?IJ{xCr@uOY$}v$Gg<Reqe*$RA$`$gt-2|R}LGWMj?l|5|Dq2_E_&l7c8Mr8v1zi
zHllCnnmSrY6Fzg{v#R!4Xtt@Kkb*97_A*zt7-HR}7PsjZCj#!CvRnU~6*8(XrkEOZ
zlWGz$^yS_gC7XawhQ17DYck<gQiLbsraPwodNIbuDB4sTpvVcVF8ijSgcCg@6pr-b
zF3kcJ^iPN)bX0&GyTbt2(+erHoK{fl=f?HTFm&sOX>00<lgr@`aA3X`mwH^g&T@Yz
zzM|)sY9PLYnY5+ht`p8|cPb)RD2chIm^3?w-GpcX2J7V@`4CS1SjkA^!<9gf(?%OG
zLOUAzQ&WaW1{B3Gv86j0q{lfbOs$x}xbHEW5qYCkdZ;gFRY0q)D{-}v<UeQ;(nDPf
zMR5Z?3^A(I7NSafb|Td#ocCEQInS{7LVGF%aBF^ky(62f7=&tv*!wtM4hFz$>-a}4
z%pt;lgbvVrS}P>P&GZPa2yxbc0^f-kCEtBMrrf`h<2T^N?;UB{%+m;0?Qqt*^IC{_
z=0a*1U9rrj_~`wuq+o>4jvn&9zn#m5tDls+Nkzv#A{aO?dt^4vuo_yp)y0nDG(5N&
z%Ar@?BXuRXkbg3*g(i3rlKnEPNAy+eqJ|CGkA3Q&Tq~MAyx08Itmj2lYMo$eMx6jp
zhIY!3+}QI$ayWTjztmdu{@G9Q2%OXU6s!Y0yxq4{tJi7|p)wbA3l}ui&w9USHg@s2
zkVd1zAL6)WJ~PQw0k{zAVtwlH3Ajj*c>FQsc3RJL=|&;r<=AWer$oDqE_(piiRN+X
zP!vba+s+%{z}+vgw6;TNzN5wB_b_QA11l>}u9!UQC9F&b>;%(aJyfl)=SdV5AGF=3
zW=1YlIRm}R?6KvHQ?BmXJ<qFN7-ghyDBxk(ZE40zOGEkAPk`UuNh`3~Ot|-%m3Gq=
zEfiL0z}vyCRX#TDn-U7|a<r3#c8F+$H2RX+`Y|9;7QP(pH(Zhi<0l7ap7hq-wohjl
z{qIOwa~H@~go>i~(dT8DPK*56JuxvP8DtrGeidIvWGW0}^`f(@DECdl>-VP%AjN#+
z1DK(n_w|&sD+jYr5tve#j>eK+7AypxN-a<V1WE@tD|W1uN@{CIkF(Sr^pn%w&^G-5
zmS`}mDx~)}7tkS$IQBgEP)PN}P!L1uehZd({j7-n4zryYanG=ay>fYuFDXuQ`Q2~u
zj~=bY9VkO&@rQPs)wyNU&IQx~RQ~vj^M#yq?@Gi@Z7fTai|DrC_kr(gfz#!+z#)wD
zh0dF1mj!Ri)3H*)D>;t_2%uF$<?d1?{IW$m753^@`iMWEM)4?45K0(-{!&_jUv=bx
zxQ8^^)av#*&PyqKq5>@&l%6vVX#JeB;ej5!j;RowwABdkxzp)8lsgFOx?<SzU-+Jo
ztV*R9MM~1c_NV>N>_X43m+R>R`o+R!Yb-n<Y3DiJq)hBgG>2mBd?$9<uztiF07{T9
zSNhPn)Rh9zN9S-no#ojr0J6TAeRjE}?d2#-66as@#r^@Sa!KB?nE$El&ZZE~W^W2d
zf-fz{uxTmKK?}m{!ht3xV*yX-fP5&r7S*Na7O^U>;|K-2o`DsPy8J^|63y=6k{sFB
z6Js!K`2dyy*Kvg3Ki{1P?M!&uI+a&cOd?Or2EWPVJON;li}c!1H=e0B|0J)=a(Lwc
zf;_=9*7SDF+p-WNJhEhJLp|%uwav=SMSOQu{~^@AHd^n%YcA8fXQDTpm4(t9ax^W_
zLPDg#v5PlX`?V~adsq1Zy=Xug9noT2I3awq3m*@9bBFG{IYuvi<%#HUa&mEd@_K5V
zw9=J@5{nJ2=UkQe>r*Tfavu-5cPk^+U;sMmz!f--oRk&1jUvYShV){~R(5;-T86Ge
zSNp?Hjnd6vg^-tR2EM9g!gs3^kvHdo*O&ADUTYmnpXwrO#t+|3;w&o;Zf@5v=K}_b
zeU@$dYw<bRo`8nF$OtJ1_;#V-so+Mr^K|&dq$22##v1BPxNgNp-$rK6Qe)9YQQ;Qm
zB>j<52h}R?+q!QfY^rt-{iJ2W>$a&%LU3~qt3vLyCpP{(YL3`>m3rENTcm1tCkOq8
zOohe6Ssw2VoCx*NZNHY2z_z5Q$*9{^#PX9p?wXP6TC=1&#;ggiygSvy!M5;AOc4sg
z+LMbC#C#hGDjMyXAv;-SIU2&zpg?U&x^a1W%;A*#WR@thD%R}<pOah`Vi2GrlU_)v
zgOAK375&TuBp{|aUd%dl9<R$#4=|ub)*jipiJ4BnD9qgm44&|Q3v(Ly@$2_oNyHsg
z;V406pOGDLIrE0m$;oDnh}^A*6lS}?$eP=u+EDsc8xxxvD14&>X83q{nA%iT_%+%a
zdGP?8JjuZ5IL$?6K|MyxW7DYsZZlIX;iu2MeP!mQ;A^3!3&&vwdEvnPToM|2uOhY5
z)6DSF$A!AEQ6llNR$@LosrpdlMVy?)M@c*ClwXePOM^Qt9B8+Ko{MzmSdDMWz~Ybt
z=>3InFlmhEc8;sRnhH_Q!lY3WO+i(5LSu+?X@R(n6}B**TLXVWCgls~?ptA^+8o&`
zi&gyiV869cw0{tk{3H!SHEn-v&h(Bd+GF0SrCHi+Qz*a9LboAS<UafvU2w?&>D<Ld
z0u%gq!Qw(A!YFoLIdsg--9zxjo_qypa7Tlqv(Y?#+zv-=P8CGTG9Pkj<}T~7LMwwa
zGAVx!cSJPV%9r!TPDL}};(Tb=WY@L%WvZBoa-W54IuX*Pe7L_Q&`D;xItq>0{mQ38
zI?3&|)!V%GvJ<GQ_*@X6H}y9*#)ce`d55Rn4CCJ~YU&Jf@s{_=*w7f7?RB}l4<1UO
z;I#WixX+Ikypq3{;*zM(EISjkI-(wxG2fjs-*D?%-z_>bXOF!Y5D_$8|Hv5eT(JE&
z`Jue@p#CEJb>C`LBpzRT?UBep>M1ERZSG1B{>CHa&S~jvZ?@85b<YAvP{0BmvDd~Y
zi36-vSHD<iOY!YqxkpFDHaFBbk-Bx^6E7CYWCAsiy<^A#$JdVKI*wN9yZDL)Pg$h=
z?RK{mIOE@?gj18A92du7N7V|oAzg>mshr#F-)~Mm+59Tmke^jEPZ~r>wlg+s@vd_%
ziGjl8koJ*7gSQ!@&sxNTqZ0Shv+dx?{fBWfOGI2k{Y%|G+NyMAll{U}j#-Z_Wm+h&
zZssiGfK&rw$PJ~|rdo2*&)FmD5tK)MEr|AmP!m6W&nrZHHl?J@TL*-^JZS=TnF<IT
zUBHYY0q?qkjuK(OD8cy}ZCF_UaAY@~Lo<QAqLe$`YJ4wTk|<7Bc-Fo5XNF>Zp7{^(
zJKp=y%Ng(X1ovz;S+5mgg}_fr<+ji+atnNmaaTU%=}fp%ySnEUTYbUOfJwao8Mx=>
zklpW(4;<bSI^J^W+Zgd)e_2k^c>=qIh)_U%SNLUtWw35b7`qqN6Fgs=v3+5jQwJrV
z>QIhSael=*Mxug8(*C;430v1}JAgR&oxGLbV31X?gG~4D(uL6FyR0dc8-5p$X0$BL
zrX<At{iW{3QVy=Om&n4_(MYsxDObC<*pIu-Ja8N*P>o75c)V~!N(7u<*XPBZwHVIQ
zcHNJjXXRHrY^uJ$dyGeF+t$a`>WDqMnt^VO7#n7qF)X+Gg=^i9d4l-FR-I%s@UE6~
z4fB>nA#A>=kb+j!GrEK{))2{fi9ca;Tu`?>+S!;FdRIX^+A2;VQgw^`W&{$6D%jg8
zsNs|n4YoJ&Y|tkqsj;T`^P<e3UvMlIuqDo=4o4G6=6Z?Wn;3au8Q9*cV*X?{+34`&
z8Do8K$4z+Q_sOT@ifTseo>>=LRo-T#S$9oGSN`V8#Mk@RB}34R4HuJ@RYNa)Fhb&f
zl79{_VtVHk#AaQvjUBpw3Ig`;5Z+2D<|vx);I{dDkeptxaAeN#*LzXIl9msH&!8$F
zhO2u*m`impu8+$EIkTe0iWXlz<Wm~K?8sN7lRw^4<(nsFoA4M??>gd<XOs!5zST%L
z$#NgXS=U@u8bjd@13v6o+HErNX>^Hq9%QLvUG^tV;f7HWV1WuKpR5AYWheIg(E>$H
z;<@+t4o%b=FK}g}RF8D9Y6-Nj@;!eqg_ncHn)XL4eoNHke%r#>9+VAVE9_~>Tge2f
zE>|XU>do@U2o$Uiq~;6?d}|l9RHk0nfZ27^YP3cV$#H^ySAyVgSf9~7Ifx}y-Yt3k
z`>pPK(AyxU?V-iUX06<Eaf{#k!J?<bR@DIAPx-2h5PCox6}T-)zn_xGzq0t-{M%zj
z{`-2;n}v6Xw(y9`A$zuq@C0~KN-1#kHbTJ}4#NCUR$^K;*A-zS>j1A6Kh1VB(l`r{
zWe-+A1Ey<zR>kR>+$-ATEUPmmUvpc9T}*FwPTurGd`=Lj%zl-$3xzzfM0h@I5IX@`
zNy9~cP8YhK@UXic0Lco$YB4Vexqp38ND%tKTboof9&wh>TlO)U3ia7?M#SZSsDm9b
zWVKT4O<T#Es<A3;^E9n*b7}H#^k4ND*Qa6a6^!n#2@5RSe;Pkp1BOZmA)D@v8^^!8
zhgC7v@x=I+ESslg`gez7G$)_YOft-Ud7Nkt4f`fM(iB;h{Z_DX0WM?5Z|8am3J$V{
z{*P$&6TIAxy|*Qjz$Q}JCm?Sx9)88b#p@2tr!XcK>0@M=LS4yBA6A5Z;%d(x*2fY8
zIn2dV*v&WRqf#k8(v!x?#dpF+ab`?M?cPnk^!0WuH#kT95z&<0f7UxAggu<-f@=g8
z=u`---G-x?SFI5o(cdUfgZ94SCoh%|HQww6+gAv3%>PyZUF9p-1$*}{^^gTe)z4F2
zY_Tsq-q|C8m`6z*oS}4I0QG*gKkpyCRjcM~XyL0aTjj<ao@gRM2Org~XSs47yqg4H
zIcq=Bp};%^Gwns*3~oV|_T*{$c|irkuRP|*G{a0NCVZZ|wyx~G-WUpsyLf1>zc@L`
z?^GH&uu`Rzefyq$EV=cyS}}yHge^-#_QXwozQs?A$&1JPlLx%VLSR)znekc{5S8Xx
zC?c&&0=bm!saT6%MNeKxPq9US957_1gR%VMEs`1HnBW&GSYn8U=eO@EDrdJIKm1OG
zRlkwtak4#V@##&k9z!d>(bf~80=zshsjSa>X79P_bF;b(*L9QUdig5qc)3ouG>Z|P
zGJ&yP#p&0X3T^QOb=_N18^1Yjm%VXx`75y)$abz8S_rB~5!A=sXr|3a4kvNymY?2?
zWb1uP=9aK2q>51zpiIOPN<w8_|9zfyD-e155=AW@sK5LC85S5<V7iEK(|%`-tS24<
z^y}9DGr4%UwBdDNk@~CrD{v{->9YD6q7Gb5#yfhhwJLH+o`3V}Q_ktz7U4LP>XYBf
zV{+*m6iO8~@dP0W1^#R4iDXcJZ{D+T{2qAB(wUz+`5gS>c&<he8Ls?0yt~bIGH@I-
zrwN1Ou(G>kmeRRRY26N2tbVKVnfN1(lcII0vnmz=)xEo0=e-OtCAm5;zlk7UC-)#Z
zO0<GmOIHkSIfx<HcCeL)>T|JxH{H19SxXzF+PF>-xh-pANlRr&1GZ9xALsJMJfL&<
zW9c&sFs+I55@bWnlm>rpM&xF6M6b9uxM7g=6`cH4x`ZFnP1g#!@^>&ZBVRqO6Wg)#
z=TZm3&QJ(A<H!5lVOUJTxn{UP7MKNsYJUO>y$(a!AZ;t~ZH!^3JC>jy=mF`C)aspw
zuWH9w4Il+FPtori8=6=ar36BUzY8o&7w-u9Jy-XQmLi$RCvmcC^K?wqj%c|ru>y8H
z9V!tWIhA;h)QaX$Ts5X#*e>)4i{iWSd)H2(`XfxjDGqF+fQafWko<rg9Q|}c;_kQ%
z#$r)BO6w^|Cm`Zim47GQ$5gxTtb~6)PnxzZ9u(LApgDs#i2SR2p@sPt$R<TUW>~=j
ziG9z=F%p^iePLYEeYL#1fa!ON9Jh@~8vOn!cA4Fg^NL7Ts66<MA2D-jUzgsu*5Ys!
zD{qE`fX9Zu@%b0{n9v$e=L>Bd-o>avl=co(jib<XdQXr4`z@;f&G4qaU{`XKegXbk
zy!(5m6jLb(@Pn$4eMIq;=MsTJ7T^b4bikh?{|0R4Xc^}KzUqXu`}XU#Gc&7*0H)KY
zeh;O#nPadg_<4g~pltz0rl!J{uKUEO`t2_sCl|yWh4&CA-kZRp{b%^h1R^B;RB4OU
zLx5*k%S&nI;sQh1?6^)6*E<LIM9gGE=?z!qX|CPW0WV6^;7fB5fm&K^G8t2~VxUD|
zcg%3N?5^M4E7Q*22*dEuqL48~NDOraCR})RV$BH_LMoZA0vNthfe`K6K-MXMujJ;g
z@C6gjJeVa~#P2HtB*dS-c%KHWA5?knjeD0IrJfblcE5F_-t07^hFLKhE;dr6A5aY7
zQB<ec&5UKtOiz>BL?3*<SZZ7NamT+uVXi7m!|}ec!|SbP&_cuWL(m=i9>5_OiTUf}
zJu7~S2k(aWoTfDwLWZCh-Y>8_r5`t88irm@f@nxM6wXKNOV~udWO5ItQD;B;3A-d(
z1>d7}?tUP1j!Sx~#2C%1Z>?&>921AQa7JJi0OKlxB*pY%gi<#t>f>CD!0qyZexQnC
zR<fpjjmdCk6NsLNrC#}xdzI^6>F>GrQ~PStL7j?jUW^Y}qjx@&@?GjFOpVzv+iz!>
z=NEZ%o-IT;xwn!)@$cX-x@&iCx=O|>@WoQTt5s)}IT1Eg3>ZQdpQwetf^-uu>J8q-
z14>w`2P1-C{4St<e`=S0mM0uxZ@92h8R`1U0%wez#g_W166E;<337=2`<YKwnob-b
z$_KQ41gyX;m?>Gt3phPK8tXwi@l$v`HqlYZ;wIB!IL*D0M@Jo1^>GZ#BJ&Z>sxAQB
z1!uoLdGZTA{EZjU%LOG#R7yaT<6jLbF<WEvovaLPmeh46-=_wh4ma)>FnQ2{=g|mn
zHBk>)y)cpVOK-b-g_FTJLz7|DlYi#<nh*3;>y&MxfsZ!g!XW>_|E&K91ZxBS)_>#Q
z_&5HI|GPlvP~86~?jQj3=vqZ=?0=S}^_LbD^bhp$@%9T4@bnII_3*G2@b+^S{Ldv+
z1pZQ@fu1@clotBe3!$cls^MRa`bQu*f4NWIb`${6X4X_ydK?1W&&PgFuio^&d#I-B
z;0JS$hErzXSi{)ZSXy4*{86rN-d_;nJ2^R-i_-4bjf^GSch<>@+@^I}x#k@_<a+5B
zazHr3h>T@gQ@>=6JHkr1|KNuZWBLso-d80_{XJBsI9XaMmNWL1`KetGvsELS>e#J?
zjRo)9Yo|HjTyp5ei@F?lzy>bCNq0A2*W~BU*G$FW6FNE03o2XaD|>Oayh_;2dA=0q
z>H{wNTr}jN?dR3hC%-nxUWe28V6E(=cYg>;Jd^;>Y~Z-P(F?l|!QC4>QcB@ilKG62
zfTnc^f`|~nwdIFWO7z(_X5(J_)t$!)i9gvDZ(l)=JbQoLZYQXPt~snRB?^(uRL;S?
zP&}11akd=PP?c_|$VM@orCJC@9bNMn%o*(;T|*H|MM^o-=34saCo6}HAUK~1Z?!<(
z_x5I0@J-b^anVp*x(?3p5d7_Xr&4OSya)_IAq|HO#Hps|I~L6qlPUnK$ACl?<CxKA
z%NK%cwK!F8j0<towGTrIUk9#|cEvMyBWL+m+$BRg^1sg#dl%Lvz2SWIB$dD231-N`
zt!ng=29J5GMjVU4lvyy|-IZ#{tCrq}17(W>KunQCieObRv1BQ%N2bh2c_tfLh#K^O
zeJO%+0=+lGVJGI+x633LomSIU^66{Ns`ZB{N!F>~Ga1R0UX&6<ifTBil6>XM2~i;c
zuoaMD9QZ>~KKcmLyvv50tGKc<2**IBFy_dO93+5WYH^&}bd;dTtfujyQ}fRphWCmw
z`eq;}_;_i6gf47`-~aYPCvfD=T->2LE63|ZEe$PCHBpzbgzp1xYEPI6>GJ{{o<>Og
z79NR6Rf4IdjqzQRFasQN5Cj^tVOR!zZw)uEFwYD=%yxJ`Ft{>?Jf-ST)cTQ%Btzm}
z0#>lNMA^Fvc0+=v7vXo~rbb51Dbum48i^ctB@+4NqIwWWPYwS)wQDTXu&NAez4t0G
zZB;ECq{z6QZls%=(iM-!gVMy&)b1iOX`n6(X)qD`RrXepD=#LlZq1hutp9`M!H;;m
zN@({=$XsVV-f<K4moMmoD}k4=jgQfFIjjR8XJ{s_$NhEfV5ET>qTE|!Oxfctzn{H2
zPjyiPuWM8!X=p2IUG_c#ZTbt=QUPfa)#v2>YH$Ef%EB-#5e<}Gtj-^;YoWdl760lZ
z&9{6H0Z$bfVx5_2FB|#UcMka^PxZD2x?VlvGFmI&d$s{Rtg9|K%4QYUy@T2)h?-+`
zWvHyXkuR_D@p~56;nT4iWFp5x@6GDfwA40YmDUn*fEx2UV4!NL2z?j*3&k}sG5NX=
zNPvuZeg|(Ez**Dt6V82=x9AnERI64y0;eHSX{K(XKBivc`26{+F^Ghyh)41a_=vu-
zYjc+U@+&`~^)jW#`Yw5DV=tL~o4sp0630h=#db&#xgFH?$aIDOf{Ctr;?2?Z{u3xc
zz6K;wdOMRTPy_k+wNTk{s&vkM?p!0d5{olcITqT-{(AR$f`<I43XQ>L4JUqFhBGc=
z8qSyFKZX##&vU_MiF4Dw#3XN(^F0{#N3Rh|>y|@FyyGVOR&%M4r?IZclLP^S#zNVW
zuFyRF<tLBm0<`o8&D?O-wlIgM46!%cR0r#HJ>3?U?{a|MeT?hRuOn`9oM$hr#O6$e
zR=g_<3a^++{LWk1S6m8T2|%N1QWU|NkacVl*X9+1F-&;j=og6^2dg)~KA8dXZVGSp
zFmXZ<ew`u56=P!IMrIQ<o75g5IqSWB`t#S%sa0QTXw_S9Py|fb=$6)Kg)L=rGKf!b
z6ThYA)k^2a`FXXes~vH(?U*S!PzCbLABBb>8v26)C*jtM;lP{QEB#3ItsNvO>>R+k
za#($smrosjXZb9JkC;|Dp>Lmw|BBg7=1NBWQAj4O?hgoyhK|dc=4(#oN}2}={Y{EV
zAWmiWRfgxAnik(%3?PrC_V}|7sXdvm7S)38>0?Ml);<U9l5IA5SEA<KwtR53g+B8U
za{Wx8zNFTCCRQGMQA|d(e>}~p-+1^9uqb^*XXcW8Vet`@7fcjq$DKJb6L`CM-}bBD
zf7<RigHV6r_zQ-91xMq<Y_r6-+p=q~w+<J9ENZMGlOJ0Hw+Z#7YTMi|PACk?%@6aL
zroNW3BPEX>*y+UTAPwAuBjCW#V1D|aU?a%WR|?Co_laFbG9N>RsV)n*s{6mxS?g7z
zwCIssupZ-CG2;w-=TZofxhpQ-=%%^2hPyaWB<9AquSrn&w{4?S=vy44LK?o=eh#?i
zyzIlH0j33v5FIWY`!c2{#sAi#&t0HkXX5*A7@qCaP0z4*#QtcQy5J0*b;GYgbXvsT
z9A===q;gN+AezNy+&hvVc+(f7(B9RGXcI`V?zW#Jy_KF4&5&kOPT+M^c)fT*n5ihr
zDrFE$O^%&O#)nt-Xnk*}bU~@e#({Lm<b8H4D5m_^-~$X+(nGi;9shkavkjE>WB2x$
zNo?)|8b1AdYN5e6G>uJ2ti$SfoUu_c&5CV1li8CxUwaC@<TeZcorpgC<pA9J(7P~3
z<PoU+S*c_?{}<d-ed3}uthw>i&vZGXRgXG<e<8k)>B*Xi_?+A2xI*k5(vun$C?|)9
z=z74VLm!^>Nq@y#Ct%Pxr4%RsXZ)glchr$HQ69~qmHa|lrzL(QPGC7>CKE)LC013Z
zZ{HhF0z&<;d|V(fbQeoS0}}Y=WzUq?126(X?jtFr^>%(UC)b%F5gL=7&d1XaGyvJb
zA%IK~Qz3F=ktKK;Th{p=E&mm?=eu*C-?ag0oJ3p~0)b(FJ$L+jL};7R9mf&9r}V_a
zsS#}*HYZ?pwdl*(%5F0*rtv*-uMl(Es^@z%ARyT7Fk2KpmX^Z*QM1_pk3!QeL&3e@
z7ySuFjt6I_il?<CigLrny_DPD{<+$~$33DtBXPQ4FpJQu!H(;OJi-kV5A#YH|7VeZ
z0v!zE%K&yVM}+(<TlP4F>3k*t#fM+1RCf}JG7YY5Yj6VBNJJQ|i$67ga2Ec7MZ9m-
zXN%-y!S??ojr2cfoA6G>24GVt8O6(QYpwPByfbKO6(?e4S9rpr#35(G1$SIi>@8SD
zBq=F&_GKz-eSPXJ0V0`AGvTA^J-~htW;tzFqVyQ~tMjzucraXcJ)QPhYs`V#2jY!{
zv!eT2oPv<g*fQ;x37o<Plg;wi7yTEWH;K0;bB7sKJ6LFMQp2b-n{%*#Nx_v0)6V_i
zW8o_syz-wB6d_!g75SU2c+YPL<d)@W;QQ-);V2ljDF2l%;~%?Zw(<Fj_DNwjr`@bz
zm)00#Y`lbtEP6IhHecDd{*+M?$2_TT>r_Udjiimxx6qdB$dH><swSD*SANROwJ&<7
zWJt8s>Jy$4kj6RsiG1dzJh^zX(^R6?f}OSobY6XEVTCQj+_I3!gLJq~(3}@)O%?-E
z{`rNS854Z#@hS461REbNSALOOCK1zWB{b^n#o%-K!g|$}>013f+^}y9Yl9ADy<HId
zTVEztuIFYaT!!saO12_}aR>S^+xqU!Ao6GXmoFO<OF|O66NJOwek<0N7j}j(Y2DNu
z-luVtM+(Tg+R+!j>no8I<tB41!5Z-_6g|f&{(8mp82XgC@k>(aqo&>2<1aG$+q~m=
z&zB#9K8>Jqu^W_QR}a><6hBSv_a#AQ2SN|y#rJB@mZYZ%GaiQxS$98v^-gu3t%D|+
zp!8#qASo_klO*bSF3;LVHwV4wdwf0=oytH7&NS9)mc-cUIq%MV*k{hr{Wtf|?2+#)
zKBg*Yo|SzZNDbc|ME%;A<GMlqeYO_*XZ{ZYHv=HA|I)wlZ~Pno#{ahw?+wHSXr@8_
zBfB6iC>R_ZEMRA6FJSNO`9CHV001BW1c1Rne>D)$@OMv+zXFHD{#szbE(ida{cCgm
z71%%R0KmWc{R74SV&wb#`~Na3djbH!F#WHF{ii1QuYCOP<zK`87xKUD%k`hJD*kIT
z_&=P2{;Q}^|CvZZ{fGLe{L}Q8Fc{1~(fq6a<M?0dpK||ye4PLP#r@@fr;vNpUp~S`
z{RiR31AP8R8{+e?{+9{=NyPtQ9})j2K~Vp)FB1McB?SM|lHl{-2{*y#|Fxs~e+u{i
zlfb~h!2dJ(pYiw4>xqW%|G}vS|4TD2z^qXEf6Xh}Iyn6EYxMu?X+`)y@~^a_e^}UW
z003wCUui|Ft!(#X3rCv4sLAk&y!p{Fy^kN8zXX+iYO&z4BvEq3e?L=2!jkYJx0Ky*
z1J}M2PA$lUpeB1^P~T6?laZTSnP{i;JXRdSAG834d~A5l|Bi1dXyKq!=E8sCTHcF;
zQ}_p=>h<vbrozrxUTE=7&W_Y!X#9OR-u=_r6_w!1J4&GsG%uo~({{-l2s^H?TjK<+
z5UBUTjp^`^y8)x%G3%D2ky4pCe96>grq$J<((r9e){I|gTjM=Cgl;Eejeq3NouIe*
z#Z_HeN4UR_=Gw2z;<SXpX=SE4i>`^qt~Kpn(Ko<!d=R`hUz^fuO)m0M=$v7pFC+1m
zURnyH5YM!;dhDE6GXCWS|4`LOLlYmytBwb6*PlL2d1CR>Q1Io;$`5f_{xD8-yahGj
za%Q#qW4F)NLfx_UT7ciUm{og=Ud4#LPBE>_hdtcmE_`9o*PDpLsdGsgld*)=1Yf&{
zjhiw8PDd~9s*J9V?;R*=ZdpPL&JU<I#o;crDnFZBk$um5eUr{y$sbVs37b1<RzIkH
z%;QLGkYBFMRuz@Rdi}mrVQsU37VUoA^|2=SQ$>NXH}pxgF<TF%eS&9E<A^Q25QJ+)
z=L}qO{jK$TZ)Kc6Wi`<rOQHYQKDW^cw7P<naF|BV@>K=E;Hp2~WQkGdc^bmJL{SyN
z0yk(iQd9zvV_Ow5vLU$1eSXry-00x%aHZ<Hf5zM$su6pGm)QX2hDu34zWXYhdxBu9
z0HDzWgF-GqAXQnFs5D~7O;WqvimioY^kW^i#;tlarX8Z5tVLkw)4K-%s67N2u~0q4
zbEbR1Yn$QrSglB<h%}_Ova!+*aP!4m-17`sHG)&hHYCWB7!`w6O^Aw9;+}bvV3EMu
z>y|t*{~`C=1An52Ph;b+eqlrNUT;o^y7^*1gy~_K-cm@{?#MOY6-iul+5g}n&bXO6
z`ftR1Wm8;1*X<1M4DMub*We6f7~Cbey99R#uE8N#aCZsr?gW?M?(PW?B)oavr|ySa
z_Xpgnu2ZY}^oOq9z1LZ5ch}i;ydwF$yXn%F<|5^cn{O(pxvp%@B8zOD7T^gNBQuA2
zEc4)GbL5WE`Ka&yYmjnn_UqS6U(XJ_&=O9E$BMV##nD>p59JSA8{8Tqn=*-5x`G;H
zh5ETv*$z9!HwN06f`*?3nb1r#xOrs>RE}BfjE#+JUCj5Jq-pQF<7XGVe39J446v6i
zL?hLg^^bLyZ_h`~e(q66aFWFp(wFd#;!ZEB)L{Z{tO2GnLf{#U{2$U7)neghG}7>T
z4SM&Y)>c7O+f=xJ6bHNRxbH|<x}=!028sI~DJg?vPl=~#l_6`7N~9$=2v*Htya}sj
z?%1fz<!5li(FQt1!B%KN&ix)=$*ea}*VI;(Xm1yVfh!KQM>iD91EiIvOYfOU{8Xx*
z4*a_3*h(Te`!VSNFWVGjXqA?Dsn&}JjZbJdh=+m<lt_Ls@kj5}&8;y{Q_Ja{<<w;s
zAP=5lIR5+9`DMb5ON^s$dwth_1JQiy7`KM-n6>v?8&w7{u_YsidM&lENyL6Bd4InA
zxnOHi?k{F{sb`?h%foZw0|~ClpQ-C>Cym`ePqx1x7NRN|3irCVFs(7+oK@8+E5bc*
zLs#dRpzn)@>}UEzV=qWgpGA8u3@T4-jDnBIvLqD3XsW!g+|%`?pF>P$Ys?$i0`xup
z>?*P^x?8d4oL${J^d)_fP{7g{s$G+OA)Wo=`1&|`p8FY%SJjL*2Pbu+gA|tg4f|bf
z;Q*cmnQ+5);#8{qH;#ujZX2xJ&xBSK+2unM@@%l`ZS}~32>SrPxyx13=YE}EIgWF@
z90kqxEEa*h509V6hsgv5=COxOA=(KBaq6qyrq7pXpWbOQ^t8yV5UrrJTP!?Px~@>t
z6b``)jAs!zi=JW-HPx6u8+i=B>h1L&u|ADFr0u&!+IFv<$aprmj?B|xUSxOpTff_J
z7il>h@5{~IdjG41%u(+f4o$>IiC!EtTId3GRQIeUZ6wu-CKZsAvb!iPoxOx!dD$Pl
zfj{t9x)7d4w4!=S2aZE=W6^NBB={qGF#MpC2MJgPw<XGWPrwec5c5b3fmP3?Pyd_`
zY9kqi7l}kiueo*jG+xXs>j9V4pOlA_dA}O5OB_mk?KhQ7JM<okzFnS_&4G2H*HiBp
z=G83*aaydimKF7JY4t*G)k+k=&Z8SC=}+`d|Eyn_(2aqKUx~&w_|;+y9oayCi30kh
z4-lO}G6x1cGCdTw3eCFznwjcGz##{hHPoZD63*;bFuTm=_i>3ptjL3TtfbH0-_GS<
z+&hCAjsP<7Z3xr=jBVh_pntFlE(-`=6%GjE8Dfsi@E696L9zOVToecv{5I%sI*=X(
zTvMNLj1n=xDgzb=0GpnK{61b4{73!%-{=3x|9$@J7I4b;I$G`YzB~TGkXsZ>#y=O1
zNp_t7g|Z-;qdP5;mWm3&?`7{@>Fn%m&XM1$ncz|==+`iR_t(X0J!$0+uRJ2Ze}4Sc
zkoy`lC9sE~CWixP|8tn>lXG>XPeZ-hXoJ^v$Xi1N;DJCCY64!*P8dG?K^1vEZ!nL^
z_vlcxU98Hl@jYPqb^EO+>u@?(Ig{V<`=rl?l`@5-VfV`c$9%d~j?Q!2L8@NA-=gm4
zJ+iG<J+r?#LQCu&=k-n(n?6@`1^sRJH}L^k^{nVuf2TaV@lKy7-cQp~7oc-=CIDu*
zM##k_Byt}I8BhS(Ub~TvCIjKu=VtLDQs{)N#9G;k>D*xs-G3~(heO>QyMAkCK)hX?
zpdz=UG&?PherI~Lp<uwTx_Cd<<l?o9Il6E9FzAlH&zatq?&l?~o~MO`sokOIk%^^$
za}s@;jlX}n4|(^Jx36D0Zq);cTM!L6&+QU<VvxlZx@_G$hJW`6*l?Ry{52zvJu8ka
zB2lSXT~PVGJ!(q$3etWvOlC6@N0Dqnvf=-H;kNEP@-^8der_w<71Qihn}O0R48+63
zBOxv>{_|543>gHQxfyw<{IKC^ba5wou_4K8U0uHLX?A7?#G5(Enb)}Zt3s<Qs(r&@
z`pyi<ffLeaQ<^QMdzP?dGhZ@WZ!vDY(;t>xV$&*WyU4m)Zy|5Lc_!Kc|CLtuIK%ck
z6?FlHu*b}Lo2#s?!L#7aAl?sMc?pTPTaGu}Tj52kfb6!#PfgY*bHzNahZ9}?nsTzy
zL>wjFcZV0VuRfm-SNDG;ozxCsp?}4Ml0dB{(!|h-*sIva6Y1p37Cv3f`e2DZ8fWl3
z8XnueiatM2G<E$r@>)H@{?ou=^&OSUdUr6g(R!9zx6Tx?TDvYdl}%6Tz2!t6t*rG*
zy~VFdNB<;`i&aUT)L8@14M}NA?|sVRF5&GBTQbLnmBC*p^FH5|vxNxo7?cKY55{l)
zKJ*0SE=(|eEHO4WFOnWg<1#}kQO=F~@H+otXhihB&UkK_Oz`D;;AWx5pJ2(*ht2<2
z;k%uG+pq8bV(n&a>n|Y;1p^z~tS=Z*yVHwnO6ZJLAxpqHcT9yrCw1rbD&Rwo@2%`a
zwlEPHzr*<%&*K3{K;+wF{9A9p+e5(KySJNn*k$%EZf<T9kHd9?y3xG0i|0q=H@jJN
z>Zew@euUGa&vw(lXJ=I*e;@aJUUIhn-nTp__uPza?z=)R-Y3+9aGD*rHkXPXm(AjL
z9N+F8^P7e%jb1;o8g-K=(JQWUTy5HJi|mBr!Bo63;{NsY2P2}_`u@4~Gd%b=6j}5d
z2zgj{6}e9)d2ea_Bau$~UwlP_zJC+P5=784^rqXqiSyj<e!d)d`h7Ng;+B`(pUm{J
z)^3HH+<X6Pnvnace+x%!T->f}?lXDD<Y8Klt}WZ<zge1{EmlAKxyF6KU#T^L{}-96
zKIYn>PGgvac83QWd-tQM-DW3A%jV~^R&m;{bKYx8|Hqx;6zKEE#zkavabhY2Ea7ub
za*t&bD*b~n?tQI)nRcmaE$1Hl1|6$68^Q8@=-BeBYv4-w;6z1TWz<7?<vr~)bK&u@
z=8qZhi$R5)v6o^Ligf!{bABb_J%X@Fgqy(L^WviK|L1^1`w5=&zi%rrlt?K5A?^ft
zR`_j-{|EI~N0I(73?c{P@MuC${ug7I_l)=c<opi+BWok|3jcpb!|uxm`6E3z;1CI1
z1b3%f)RAqCn$L*1CdTzx^jJ*^B}@P)N+gAF^Ulgqu4D$E828ZPg~3a%qd)RAq=llL
z3j-b%=B$|kf>Q&)`R=zR<4T0`DAqacz#wlgcgz1)aE=G_izaiiadjA|z>T`>gRIx(
zdK)0n{cKT8E|OOEkt9is5fzBYLQsWR#hcLIZ!TPCJf)EJ`{{k{c3wKDIW`hcH%;&k
zOq^6WD^urwrU|)!tl@HBWi2a;EPZ>>(RbZgs<rSTYv)3R(aL0Cra2IS@Rj)Qy+c^`
z&Q}_^yl>5`47-HLookYVlk3&7ICN6Qn8F-dqAkW#fw1kJ1#EE}#A<v5gvOt>Z9&Os
z2tahGbtGgOSnM?Tb^NBg$D1LU9@1fh2SCJy3&*dbbHMv1%?6-qO<^VY6X8kp`_J7{
zvKpA$Tqm4XHmW&x4FB8shi|l~Majo*LjPK^RpVmqVsM0UHKu)a6IN*-y=*X#;#XSK
zP!PDlDL26C#Ua<j7w~CaX~Fg7<#kbaRH9!Oy%?V~a@g<T6`RuU7-u3w5Kp;ECtCWQ
zH*vKlIxYeeT~TuJuNO~SHbCBngV{d{OHkXblYSSbhNgSwRC7h<>~~`n42{$3+@)nq
z-#+?aglLAsY}0y#dl>)*5CVV*C@lXLSgHhLhr;m#_Q<;cTE;Utu=Pf7Dw{AEppeEH
zx+U`5^SE*KM#N(1!jsq-#E`Qd81T2B*UN6wah5a(4jvI5b+iC0ta6WaT+F=A^+>5o
z;7Nv6-;49I)r>$WJFXHB5elcCtcVJp?nqDzG)_1oIh;t3{irNLfDO3@_`jZQL4OSX
zZbAT|!Q@od4O0R2wHthgQzU)Qe-B}-0Y6MeJ363z(yP`c&-WBFa$s4Wf1HTw5b}-n
ziwe_afHCji8`rlO`?U_4OmP6d|IPeaT@5$;_HT+ng>VU$m>7kTe_tD}x^yT@UOvGs
zL^_d{m^35MeytfQlFw-|#*?5>=ReS(BG;#ljtNBr>H!TeANeqlJ}d($XUs6u9&3>I
z9x2}-IL?9y#%z70d(f~CkxHE0+`;06?1Q`Fhrp7MoqT*7Aq0TTM@%XNDJiMi>jcS!
z_Mq9gAdip`1`N?v1N0ps5xGC`px%OoPhs_POasQOr-cG>o8JtW!gv((8?i#vP=Klx
z%1}APgo6Nqn`zQh@U)8zqD=O6LvY|&++-Gg*vq5mpW8t&=~CPDSxyueeX@u{W$UGH
z`;G9w)N(%xxchV4OZE`5K@qch^`It5_4z5cDOGIpXfmMS<;lnF1}~DUq}2EIcB!G7
z?~m=eu9^%8&53@{JATgPje(gy$ZJB!cAy8*6JDEo`P!d(Q%p4gAO>rfZH1h`L357c
zjGdP76F@LnAQ(YR?(d|wi}&3LdbjeZ%4UK?9}(aSO==8TfIbHdg`ZI0WOtQup@oI0
z?LiZH$Z)JRa7h=Pj?UAPjnjTreIkb!T^uu3irS=sJ;(1}2ZYmT=|oCN+JC;{nm0#f
zx3+lzJV0kcC}PA`f_ZO00~hT0;01;N2Rd9cYx!XyYrf3<_k&g9C_x2h_@)Y2wyurg
zy2K<TeWRmpX?6@5<*-sSz%}5^qoa1w)XN$rb`habmkj{NN1Bz2lE599f3@rnz{AOy
zq^DQPLZL#qg<P40<s0h%-8<5&CTv`sk)vtxE?<YW$FU;peP<~J2dhuKD3->q6Vs|`
zZR%jCT$V{@4jQXi?EUR<OcD|NBZyR}Z8ob*WUT3(tK2hYXqI}G``fSR((m>5Bf8y!
z6#}*e6M7&`0Vh<PEb#M_RoWwq{dsQmiv7!Fdt}Tgd=j!bAR#b8%=MQUCISlTLpIzc
ziVlbp$s`J}@@<45!zhZ_$zV>^=l!vZ0h|ObOlVTp>FrvV;sb2w6)x)?c4sqO=l4ab
zP}X|fW0x!u^kBBR^OI81F14g^^Ich5hb6xhXCMcEj2kB7KO&!N1lqpW9*_Nb;UN#0
zo#eKzp0VabD<S35R7d81)P)4j@eDQE%)^x}`T2gnk!A|}k;G6qe-f&*hOKVP27c}R
zI`y*`UIQrO7EEiAvOo$Sk2)de>yL9Q2bTGP@kJ6Uiv!?bH)FNQ2$vlq4v{KUt$Z3j
z-zxoD!i24++8v+HQE)~GhilF@s_3ECE+&US6&)GGD#on3Hu)6fkiBBUI!w5wm978c
z=sxkGyJlkWDWuqHYN7M|5}fL9ad&m{AgcaU@a9P|9(yLoG<1kqOcnP2k4k=D!f*TC
zHU11QFqoY2PrMsx7L^`InB+YSA>1%cMgLuD;-q@FgKBbzejHpJTsqpDDbgp!pm0%<
zYPuqXBGy}UG4R<q!+?ID`{=uRee7<|eno%%UuZtR1>NxC6Q~suu+HRhpQM{|x8H!<
zzX=MGVY|d^IDPwqRj@LBN=`_J4ss6utCTr>>_ZA!B_njj{GZktjKqVFMgk#Ox~pht
zjOA1DVSDju)SBmPkc1YUB`;!rMl4SGXvG>+2TlYaRI$Bh1@T8FqRIAG1Y{9yS-V5&
zibEIM&4tP<(r*C2x6GioOMB^U7&DNDXC4t6tA40S3}*t6Yb|yh$Qe=tCxemdKH=bb
z>VlEQwfx!m_rvhSQt8Dw$@@XC-D)|CfvS#Dw5Zo7t&JvF*O$!Dv#Zzz?|`nEQG_bq
z@7Ym2tye(GstB)wUuL5rv|(G3V&mT?g%+eiqv`yk2OlGzP=D?TwkRTjnZ7OQYX9fA
z>H;O!**^fB;b3#%tbZbED6|aF3uD#_!m<__z$`)Bl5+NwLoyJHLl8W7+oIr)8pQ=(
z+qG(~UE@V0a7D88xEh)3_p%fRa_N_=q4Bdk#~JZRrCJ<&yjS7LgbQ>#4GU0G*N#EP
zQYD%AOX1$&0J-iOocbn|Y8n%iXxtlgfCZm(fQX+AW@K7HvPWGc)n@s6^pYJxA>y6W
z@!2^h$nF<q=#OGMDdxXB42cy64a{7D-cGj_rF5sjO-}I+&u6iVD<U<hZ138S7%s3G
zu<w4i*Hpq$^t4;+Dw1Kv-^0)d3)@8_>8s<waz4RBkkFl&LANPr126J!3)}5%bLm^(
z66PhEc>H)}k&9oPeKw-C*So+7D1x2TEqJFR!@?MmmX_EuO5w(JXi#d3^<X}h!A|Lm
zokT`2m;nJ?)bLyCP97YWuN1{ico;+d#<l(4xFIr}{L_=i^=k{KJSdaA2-%Pfx@a}{
z-kquI5DMm2CGnw403i48y!mW~eX_{nGYrOG<gEx)OT6Gp7_G;c3`Gw2z{)MC$FXaZ
zK&Vc+(@qtxNUlQH$^0^Qzhs7lU%6Sg!FM^zRT+c)$(XP<2m>GbQ6UyKW{mq)btI;5
z))R@z+zBI+kxd?fNy5o)P=UenT(pON4r}-2iF;@|)c0p?a;xYMchWt2)cW<d9|VR>
zh~=~{W+5vu1mWB>r~H5ZUr_Y9VF?$#BDqf<!_rwqeZ^t|>6Q0gxr(23zDdd%_)<&b
zx|+=GpU<ghm6#gD3s|r5)w8M2*C$a26J`aNu_2^1)wiyT_WaXma&ba7JQ*r-!J}(c
z_Qt;Kr9jR|)+D&)QSx5z`9bi2dH;u#H)R|~S#4=G0a#ht$2TQq#zfi!tFU-5E+{xH
zPsj)9n>+wtxk9o-*H)hti#6mUnG!tvFmKSB##lkk6Y8jL2+wS-xgZ;U5@OHCU5x*f
z^#4=BFSVjV>`mCEk$>c)LLVv3HTUXV?VX4O4S)EGn7?${&Cl&H%+l*H%K5mFm5@nJ
zy>Kad!d%-gRISyg&k%(q`@wyRZ1?QvB()JD%kA_Cm5#fOl#pyKONVgVX*uyA7Y!Jf
zPGws!QW(l8tlyRuf|>GMc)JLc?eW<?t6Le;9rv(48pWf94!1W`6WeZ23a7T(>J)I6
z6>mo}a{l&;Xn&4i4gFbMuce5t!KaOx9|h!y8;qDlawc1ntoa#~_GV~>6mdr^ynU+f
zM-9t4qQYQbOy2!V1Ye(PycdC?jC%|Dg4>l56CgTXf4$Lztx6%IvyVDDfUtd6m<%VF
zgg_F)%6${Wx+YP46|?wT5?w4%lhod9IR;6<l@v}Ud<SR2B*#i66m)v%hcT>8EDus6
zs#-Zz_?awKIv?I7IH&$kQKP_8t@Nexsp#5JgJsn$xh?-D6TL1TTDPom4&$KIC&<AP
z1I4D65aAmbBqRtgJjk*gkcZ9V+VqHm>9Yj;am24caXg-87*cEYjN%E*Ltf@ty_H~N
zpx!bSjeUV3<TxC7KEU$=;DA?z*u69ndz~R^6118D&dvf+uc9ujr+x-`1wK?nOU@S5
zub2*7m4JcVCQ{X+M{kSeP40mzh|#?j`Y4G?xN+%pP<hNmLR}{FHZyF|VKq7H>TMk<
zlLDtJxK>v7Ew1T{(wv0@!70zCb<wx(hLI8~j+>&BpiybRpT$P}f<u4MGU7UNj=b4I
zzIU&^X)ZMHMy8iV<ftTy|DKZyxp-i-n{n>$wBOQ=Rw^A})v)CuWeRQN^hTnhSWAfu
zYIj;PuE2xyUX-NyIui*e1J#BX>vr6qc<ha3B)`T5Qky7Fz?WUg>sGEdC#x0ADge|t
z>7`5OrCQd)X%WlS;$UJXgf~geT!M{@oWpr*7jO>LCc9v77jQJB1w58dU<-1}NNo~y
znU_rU{L04@N=rN+#x=*~h-91(3Tw5nGh*=2<j=(PNR|f%hjEdB^#vvMr%X)=;nKJ*
z(4<PHhl-eJW`0DYbjmR`zeByY+Y7lK1{h*bE$XI~-7Si!jXe310^~f_KBcK@{H}U0
z>{XY#0K)eovzh%$LdChdD`G~lxVGvAZM)jmzARuLv#TE4uQ0~N_R6h!>~NzQ7hVYc
zI5etF+!tspHtMQnv}tFCma?!G<ae@n<?MaNljQ%&NB?1n)&Qc1nSFM|7&~7+F79hY
z(eWMKz7kGezf||EHeukX^3xP`!5payl{sK(eSadO!(bUAO{4hvR9r67ql2Qc-k}9O
zuhvY@_Mg*Fuy8{6=Skj8;Hs$tRtce77nO%L2?Bz66ao7QQ3;<*F0>hi3w+mb=@m0V
zBk|}%g%V_g<rcz)qJXjy1)G5J^99f-9v8sePrp8Rv7U31cC2nc>rPxj4RVd6W9~h*
z57lO51LV(G7bW0Y^QbAL31HCiHadXE+Y?sTKL4q~$CZ;~lvOboC#jCF+#fz>V<1YU
z2wyB%u`|8h$59|j2bzso?NeB(i)%mcGPa$Y{f^EN8(d}HQ2~7F{;1MY@u}L%^Y5nr
z*6aJaC?fa<t9pcM32JoB@esMtTGD2%Iw9EXR;yh;)_SNK+_AN3)HvxkI(D;^g^_Jd
zjEVY>V_!m?4JC}fZ~hXKsHH~^4Ri?^)vh6RHAi0iv3)*kIE1Xv!)Pqoc22NJDUZRU
zv3(n0_E9C(f=*hWqV>tj6jYO`Ua983sv*|RZls|o!4yU-`!BB1k%KmJRXK!7Mf_wK
zn3!DfguhGPJHA)KHLRiu?JbhU<FdI$U^VzGz)cihp3Kjr%0pEv8>om$I2qnQq4R#m
z#?$!)b%c7F)x&)?O~ASSN+P1#2Zlo1jw(i2jb!5GMGO~MXZP8f$E}sa0huX1pW7O4
zU|_%+Lorx|DRj>Gs47&QI@Hc48?H9(LjWZqt9GDNVNe)4_HdS9gZOerGHUYA1U2N6
zG2L|cqDkZ77!qqfGVM+;oD$`Czy}3?LpmV@@!AswF*K-baHAluWEv+Vh!@Yy1XxB&
zYi{2k7#gZZy4GwzFi(~nB9{?JOym~FAJ;M=Q;h%BzR}PZ93cDp@QGEmw&C$tWl4BN
ztS4(Y!RCojjMkB<3i@;&K(-zsf>D`j3kNE#EX9Fl#HO=944&qOT7u`u#Zd*wYy}A@
zwGU<*mXqFn(frdseg}DpJ)@p>_5Tt*t`6%vMDlh>vzJy9lt)O)ObAD|!cmM0Y7(ID
zTKmz|PhVNp6?fvZU2Qh<cWdFO@?tBVNvrrt;kSrJUOYojf2N^hA#xNYRVXy0C=KGx
zZ8@DD!Xuk!L9#A#%v{`Guao<CW(E}g<qOwQo=#vT4N5Pm#}o0MBD>C`Lp6{j7z{6u
zq_ZfQLzd<ce*Zn2_`(e>_2{BTqE_%rfMWJKv||Iw6Avq&b;3f!ep)aOC5^`hw?rW~
zw(Sl(hyZOPOWzz60?8C!j?AP*gMoCb2@};#|Gxa0RdaBPsqY|?0MCad!09YHqi0}5
zVEkjNj`vX)Yb||g)a0=MN}trTQPSpr8*0uxP0$R@<9s=&{G)C{6p<ND)D6X$G<${w
zRho3O-3nT{^jE&{r~4X_uQyzV_2A5q(b{S)ZJBxit2Al?GACe)=7%t%HnQ91<JDg{
zaII&fafCw~jgI!PMNW2TSTQ+>uncNa)!aZbP;W(y1jAkS8N=c{5ibiKh_+XV`wL45
zs^z;iA*}TBMSAryXDkilYO}S22g2jRjd?p3H*rpt_dW9g)QD+y#bx1{T#CvAf2`yj
zu?avZqrHZC?8TURSoI2L6J%tK%}?<`2yO+yGis(P3m=_C7y~K>Lg-?GoXM1!>-r`J
zc{@Cl0dlhfS*Pc>^$)<on>;8`RHL^tBQlCW&Z1Nk!%Jgcc41S`qR{!tJx_ay|Alsw
zBUd9y9OKbn(DB0!Z^F?zV71Ma!Q*l{==<Vmd-ioszYV>7QiKtr_j2L@r%*dy<vVX$
zfv?){6IJApFvI#rhkhIi&Pn9`u9z2-Xx;1ii>{MOqnLT@#!V}Gn$?34yyFCegQC?6
zV(CG!(|=H<NTj;v5~fgM%Y#z08)4UQ@v|OenYkM=NBmcSNCZvB?+irF(5V&cNLi`U
z_fZ4bMlm6WQ+=-wTk%J^0aFXnPQB=l1e6lq#@(r`w~&FD^!XdBny2?w-o9*<I$arx
zFdMvVkKqz!CWB>iWPlT+HPN4Ar7D3>>3Y@a{fG7*pFd$zcCZ`w`V|=uZ%#^?RQFx0
zpfgkWI~S6YmcvEl;l=Lc<4=}^gOF0Wt=Yb2VgcaG83XBRf_D?J`J{!gJ3>TlyHcl9
zq*9lx&O$FVy&Wi)-DWR5W*n~Icu_Ek=o3A0kdP(nl9zR187>EwI>>5u`GyQk^%DZW
z<y&O~7i{X0%(=_LgEbQuTmttHBNvF9i)Gz}HbA%3bO}}z3h9s-k_IcY+n+kMMc|af
zUlj7jKFmH!#rQIF2(E_{L5a8wIbJ-C$)lKJa+p+*(d2AdIj%|>+%S^&(g{aM93KwM
ztuOi$SSzjM1g9I-L2`XiXa&BS?L-!DQmGtOej-mTgIMU`kd><gYNu0Z7(@BzXKR9p
zGrP*apHoggBWb&rdDmj#8T|TQ@q<R`LwBhV(}+7sCg1MSvk2Z*v2nI|>|PGjoH|0Y
z<5pa0u73vq#q7{u3XKNUDnxS<pN)=ea$%2iSgM6}lkQYi@Ako2h4v_|!H2q0wz{Zl
zJX-1?xeV*kWExCx7Ad>_8$2!Q`D#<jMb32+%O9!3vNQ?gYYRLg+ppn)vmQim9XAgN
zpIBr*fg0xle<<d@;lT}aUpuTeBHkTNi{~5>Q`p~yQu9KN{~S~2t9ksAMU+GuK1|Sr
zY8#d%(_<FdpsS$a(PJXB#j2z^AflM#5nEB-oS^}JU<pprDxqMapfc@p5t*dW(5O>U
z`mpT5Z5GB0qTwP`qf{dhr}L%QhYf>g=a5Z-+i1pwqtQ5E^bSkgvarS#I8;p7iWFmZ
z=|`I#$aHTg>VV8Vg1ES1OiWDPthEqfo{8cPFX7yX9yc)-Hnv%RsEN5wIGucIEvYGL
zq!N`pe6VmmLIORmczOS?uQqXliFzx0ouvB<Qqxh|8}o7nvv#mjrtmL%GqUI)H2SN4
zpRV*e{E*c&a=7z98_gEzb5igV)_|)n6U@;Qq;Q66$n=c$C!P$_f3o;&Q3Obh$%J^z
z3a^SIDh1=dMhmKvm&w2+_x`CW;4)O-TjXbDHr?jwl1!4%;mWE3s>;AL-DaKJzPj1P
zd5aV)$I5%EoAL*fKP8WglY3};I%Ze5e?tDgS|eD4Lx#q;lT3qOW~cn!>`;{A-P?C}
zI4at?Mx5Jsgxc!Vw4t?CyiAyMO%15<YPJdR$pzG%mOn5STX^B?X{ZSX5<}Fqc$zs}
z8L5>|WfK9+h*wTpk4P`njN%A3h!I}mWfBY~M1oWj0ElJBc@0RdKLbM!t#`kcIV9DN
zPXS-}LlP~bEFu-bGl$AAAa$wD7ZhU3J?=&zOe9%ex5>7n9k<J8?7TWA{)R6D#0fG7
z7l$pLI~QkRZopbq2)@bo(9R|z9+0!U&WO1>kM90R<8h}4<Et<wB%;w<Y4FRo?v^NJ
z2lFUi-+t>M&sHLmO>EEZQrp+T5oRh5R9|lk-4>zzuf}6AIsIwlu#gSS;9Ggb0l>Xr
z;NT*nB$<r;EGLjAT%OoT7dQW`l4$Ro$!|Y=l^XzObJqgEEgkhbv=B%P!~jG?_+@Zo
zlaxhKW2NA+MISkZvcI1#XNj)$pon^;nb~;5GKJi^OBB*$W)18i?N3~8?S!%g<a@u*
zXQ*2UY4Ifz3q)2WUCY9}?~dAJ%REWgfs#DZ?|L*a+{^@9Dz-HdYtvGOx$0kw;>4~l
zH~hgG>G#?vgH<hK*U<qInO%c<rw-rbTm+0-v@z7R-e~~72mA42FWB0Z#;5L#kW`_(
zU5fU#6J@SfNOjgn%rHcYP&O`t%b~R1iJmo>y|xNW<g-$Lsxm4n?CFaF!6f7xqMEDm
zI)>a7f_gi$9huMwW4~u)%x^)SRfdBZIhZCs&YSld!-$=po8HJ(KN3C#wf*z|LJiVR
zyQm|r8g|Fk(B0xbHD<>01iYEc#yY<>zH>XWbGxI!nZRowYS4RLbT{Gjk3+o4xTE##
z^a{kot4+3FEd-P2jy+t9WJ4yA056~TQJT3>`-B773_FRZKlGsf%Z0wY>devlEVJqz
z;f}N3MHpE6{a5P}2C+abg>(mDR_r+83L{@*wlB68-r*4bnc;AQJg;3K%EXg54ue=n
z7$%IqHsSaXNv?E8$hj(G5`*i=SU9)u_?TU$oa<)>N}M<c<O(1bHW|>0=kALBwP@7!
zijmxi;a2S;*}Ye{YwPWB&pMi~47s%q$%<m_yQonUQ0s2*PTkWeJE>MkM<cz8&az}N
znct$KvgYy6H9HmTSMZ|HsVAeP_+T{aZYL78m<5?YDJH%pZv{krR^&IXBac~RR2d1?
zN+I4Vy?S1B`>cvo*v;<vFjXe0|2upj!96?`bIo`3o3+c1WH=Qx^7!$c{M1gfw1M?)
z@!qjJi|H2ah;(J9cRstuo7pkwUh|EpN$4m?AUw79l|IiWQ<ZB&EYVthv2pxGK+p5W
z)y?`LMc}8vqHxenYN%Z&5iR+)3+T`7!FZk9$<AZ$TO0O2+R-iL6l{yLDO6NjzOiKe
z!l0NX0Bo?F9KH&8^Qkg?WkkRa4-YqC>r<&4Pm6!I-*hQR-$eS4zdI6G5Cav7Zx*9p
z$N?=^HaQJ==GNB4HfAU~aognkwT1nu=g80w5j5(cD%%7r!bwYb*!ACHNttiRMjxEA
zBZs(5pwJTpA(JEE$~vYHQ8z>9D~5_1tP&wY$gK@hWlb0;PHao7d6CC8s=gxs_3gGn
zqg3<7XX8O&vZB0D=?UmYQMM?eNAYOlo}pKQ4j$}E)~@I{RAkl&yyVYU52~#|{k2+c
z*6?kbBVJMLKqkkOfKE)a!Y+oH_2}!ikZ7A93`J#~V<#Y(=4X!77f*F9j8q1}MRh?O
zN6PJ2=7QM5GJvE&9-9JHK{t8MkB{qxBkZ-gU|-0aSH7oyZ>2k2HA3jYfxiTKu&IG~
zYdd54u9yJ>nWfM_TD8Q3-Co{grAE((Vc3Z=MK*qIkNy6SFz`0mIgS*>!5(#SIV|)2
z+J8L@XA!{Q;_yY%$zc$_&#U$U(dNoP1O3N&4B3p<S6XuwWnW62f-WF9F9it-^d(`9
zoa8jgBPv1N5=JPBcBQ42h1X>OpFNoU{#3?_=~Rr6SOf%;Wf@mF$R!-M=?EQ8SLWd3
z0=4r2`10x&ifw34CxwQEkcf&rO^tFh&N8!-I&~mVXpiLmvJjtci?aC374cw2&&bj<
z*Y0EY>FefC(9#z-FcpQc_|Py}sUBNA1GD=xD!Qt`!`Q)&*i!t>@D*!dBy)x5)u0N)
zc~LY2O3OpA3gkY7B(9LAg7vd!lDU4%OU9^z)woh`8qV`$S@+44P}Ex-RkwYUno1Nn
z+sqll-7R1^Zft$~7>d&C^IEi>-cK5*slpwUY$u?ch>)#>EN9cGD=tIIrl~5^I*PQV
zTC|q`<GqAo*Ph6zZ2#FnHE<dIhbka&jdPHDTb8NcnG29VYu)PRTS&+!l*5SvH-&R7
z#KB>+FIazkzRu~LgWUAR${&h~S>Kk4p#~~yIH5jom2e=bQ$tg;HE(l%Um=l7Qe-ng
zLA*oHfosB4l&ims^~nW`EQvcTnVf(c(Q%}-2rfAk7x!WUY|mp1BWJ6u6V?Br+p`4_
zepi{-YyXjTD>lC5=0RO+1t*0D=cP#qRQ0#R;r;ca!CyZvMlBlT3JeyH??X2Y3yjgs
zc=3}M-3kC{Ql8AondTQCAn32IMnl>6<vW|tiM!d>CM5OIkJqm&A)IR>;~u8io$B61
z+rdHxzSYRp#K**g+nXHGjS)Jf&a1YwmhLQC<4JtBDnq!Ixt=-t5N-IIQ{F8pq~JoD
zf_sqCJQBh!B!n<A+vzy_XXLt+qysL#6PZ?DyMW&VM#^)F(ecm~l}D}Cs*|I|y7Ze9
z5)hSu`G*#Ua_LPV;<g6WXz!EPIPZs#f<7_wMrepKKq`z7T04~U``)9g9i?q67u3z$
zSe<aIEzy@@4#i&&cZcMgU*S+p49@dn?IbNgkzqmYkCeT1aL%_;u^+#TF2$d1*GZE^
zJaqidS&_?S=lZg|c!JF3ndnpiwMKA6iWuXF&TiFaQBkU94lxvrDe=q~>uhXpPovVD
zG=o-+X|vk0mRB6zJTTM5_dNS9rc;=rT82d#@TbBg<9ISe5?ZI^?060L#Sh97nD_24
zWXx*o+GVjK)E$`>kQR0Mh+8Kucc+d>%Fagfi~3&~Lor6YB2A4$J^$Qj*SAQ~;~vgC
zz&U-DQiJQSCseg=ntjhTP$Piq*B!h!f5i3_(9?W6%M5|Wix0P4V)mQRY9(t`1~Z@A
z#nCnIe<x}X_8KtTnU6%yaY-Q<2_NozQ2KqpV^sgr-9M<>X>^95hL43BfXy!>DM|05
zgxu=3Ba~9}*bW?}_}Na8F&Z|c?b7G&H!Pu|XiH4x*;|(1^_lTcjn-D{$48N1M1iUw
z;kUski-3gLz_8pwuQ}QIpXs{mm3HJ?x>Fn~ma!VpyIg-N^Jlc$1)<6g!&ki#<7Zh4
zmfwG>;S5IMhYljg7(UM*dlMc6ksCFXz1!#7V^_vETe4wd3vzjTC_$3w6_Wbwt_uoG
zh{N`A<NqaZ(Q@+qSJ4ELN@1{*z28#(OXABsHk2J9S#v10kwDM42ZEnLu@{ezJABVF
zo%2H=s0CC*h;ro3(6h?~%WQRKRju7{F%wp{)HuL6kq0^ZQmVRvOpmXJ?3U0whc@B6
z&fX~Uq{!ru2}YJ{^D&W2AL<`7G5}y$Of58j4g|oJw7S{y{taqtbp~=1?mx(Z$sh|m
zn19nKYm>e&7cOw29`SD9{z=n_bKZaTEEGG1J6`FonziNu7w=k>42O2s|IE~>sPNs0
zsxL6~5#zV)_n~>6z`wa#=&4)jHHsD=A70HWt%@2UMJhGg$ZS)pNK$FScqPpEDN8Wu
z_xCwOpTH}cJ2^|5D%H=^r>2!}Q&Dt4_!R-?0reMhcOH(AUX_K^M{c5<DevzXVQ9pd
zs*Z05Ijn`C7CGMY=B&UidRJvRk>(hmB=TvLFjfx_B7!_jW}aoYZ4LeAK5B)k;Lb6M
zC5aS8K%RBa{IQEOAZI!^u;m%HoVW)cK_rjTGGqujRtGrKrMUJFox~aNR~^!vCk_r*
z7RZRc!-_NM647xAMGR6z82YZIFPme3XZ-%sXNR1|O8nCO(~sIeifOcAPAu20_Eo>X
zcn}6kFjg+|nUZs%JU`%H;WeR?p91V5YKY}Rz466yepe1QE-8Xqef+-|4#X<G43qOJ
z>q|p?zB}yYU5h+<5*Sx*PxY+K$+91iJvBhimWwV-lDn$9%5uj#R4uRZ%U@FLBq9gB
zIfmi&CB&;xZ!@&~=@qi3lrTTgpEi(A*qtwPZ1E052vQc(#r^bp($E<z*l^WZaLS3r
z#xk|_V0Ce8r8H^YedUa>&r)Z?ZcBAlur5Rb;N>Qlrkk;0!C7vk+56~=zsu|sCGzjk
z%eA{efndb!<81+IEy!%kF1nOLUN5b}4q418%PM@30PS?;M}Yndn_kZ=njrf-6@*bD
zOQarEj}MthIBh6jBHG#>O|Q1Mm3g?Rkm?L$Y5BMYEs@{4iHXfTh_|$Uj%)&*Kg|5z
z8j*`<G+bQk;C58jwz4B5tY3cpj*-f4)NLT)D0r6UW4xu-7JFiryw|N^@DoQyxyKhh
zc@FjUi@-#!k}%1~mb3RizFH{OecB^P@exTI!jr@3Ohx->{0H&U+i+w&Npe&<&yU>^
zqUrU+35RNzL9AlGeCE2qAHYvo<YtZxI+a8;ba7Rw>zvifz=tY@eUwAFvWsM1TrI#Y
zWLFK%e`Im!K)>p6t!Oq%z*)}EbJCB@1;PsxP^##hB$!l6KVtMd`tFEn$f2T*V;Bfs
zrdg|+kPYQgO>w*nLc2O9xcvFiC36qt%TsOE0jh1=@sbNbaIfN$^cYBU9~#kUK+b*?
z!<TNtC!5kkp@U~f-#JC?93TManZp%#rm6}&b_$MstJ5-wPFMQ*wY>IDvt}gV>|S;m
zFLDxo;n!~a>9?8+Gfe1olK@3-b26@XP8;e*SYq3d7+7>FYm}=nk8sUtP`LL(c^1H-
zZ5lLR#VdcL?!xf;)Ls-^#<+V2q;vjqSIQrHW8s(OyaUEHc?lLb3f=C46d^rp(e^Xq
zpYwxMz-l0w5JIi$HK$7>2_=N>`=j4eJ=(8(?bPVdwk_BqYAxa7H6=kR0KOM(Q;(M6
zzHooBUbQB8KI{-m^=nd>Y`N`fsr!2|8Id_A!f19T6L`HpZaw&$Ur$;I5}rp(i_FK^
z#;*dI#X;(*3GY#^b(G=w2A{bL9*bMxoX+~AUmbu*P-<9?)pwdFr2(s89XQ<Tf$-Bs
z<!xXZXmh03kQ~@AA8F6Y0cDJfgVt#p7F@r;`+sZ9@~l!G!z!JLDDcV=ZZcV9^Am*#
z@0j~p;i%<roYW?T08n=uYRHEO)OvFpN!OTSfiaUIr_<gh0$QROL9E2sUIh*63JU%!
zuBjv-S)wORJMk5CZ9Zm42vbVBI!=ZbQuk?8tw@u_VqKkpqsiXQSWw{&t%k+2KX=*X
z8Tk<l(mHO^7figOL{c>yB)z>m+HAAL9VOJh(OowSDwsm-$8WFOMEMS{IC#OKYatTX
zpUI4@2*t*~s@UB(^xOZvc(VsG5^0`z@Z3$Pc&X4`AF4nO1w3;6IMq-$XR$Fl0|7DN
zd5tsO1$3K;naN!<`%l&p%{N?^SZ*8a3EzE#aN7KpK`>zA2N(k<0uoHR84~+7s;|Lm
zumcru%G-Y9zO;bzN;{ErFjE%Q#-tqmfH)D1nh^d2(Ph9ai8;FTUUS%Uxj3>pz)h|B
zSzRd%x-(kq&xy(}L+<d4JIBzyY07yAIiE`~S!H&6pXYJs7KsTqJW<x-t8tINRv0Bl
zj;URm@kc~v#m;ymPPt!^w)iAXgQ)ek<L(UdZZ|SlINzyech|`(w5T>Ct^do#YUfp0
z$5y!;!UrmR7RS)>Z*PVh1a_<|c<!5T)gR>__E%0Hv>{HKW=?zdWM<pHdzQLbWO0ej
zJ_ic>$2&gs59=14g*?3)A`ELMa1FHu`_sIx`qM|J6HDs#2i5()R}!lYwtos2SfAap
z+Ayi!$M*#qD$6n6&ov=f=I{F=UVhMg$21oM*}HF?Z!z;mUsPcTs_u}XsW~7JvMXaq
zx(innHJ?n=etno*;|S*4e&X>?iXtPfa~1WV{9;~>d}pe5hi6EvU+1rb;mI$R=8V2`
zR{GYQ=R>^*u~>#lQE9v16W1U;KWn%#(x^}-FDQ}x^Z&w?hK9Sv84J9xe@RA(v)Y>O
z!*nDgrHYxpEqpMuFS_+fXhJ~$@c7cD8vVKUzyxpEcQoi4hdL|+Un|MUc9rVU80xQC
z>y1Ed_kG|5jZ!}~OJuq~FhLLOsU+KjLd`y}jayR|b=E@uutsL8X%$_~ZTn`|Wbo9i
z`YUEy8DsQsx>peF_XaE?XFjCz4<o%pphDZb=lI*^%j1lX!@=nc3d=$Gk9ByCQ`25z
ziTnXnCMFwy=Mm8N3b7D^2H+?-<#ThEg7teEszOkK33!dK;s57OfS6kapBO4LtjYI7
zsTVpRc*{1!xNrQ=xNh_kcl9_#lD@p&MpoiNpn1%&T^b)<E$YEp@7mjKtV=l<ZY46j
zrqXw3g@*u#c7bl*xtWofEE7YKO?8co<N*~QauXqUKqU5pzhPS)=79(vuW*aR%;#tB
zn@%<S{rhA@7;oq*mI5YXEFVS!wq)P@Iir^ucC+C*V)_xQ=P{2w96ykI6#`)fX{+9>
z<oAk30vI=0_|Icm2&&8&4JQjt_X#~%`kIfI6U2gBw&B->T&b4TE*0V=0(miVbR2?T
zH<qlL{GXcwnlN8}Gdo?xZQR3ev|lYe4EDaulzx%eokWG!nNu*PRT&8+mUNPfjMvYl
zMmzVQ2YwG+A1wK@%U{ELjV7@~<lDWS8t_FF3=Qs|-KAs}Pv7W+qg~NCXstGD#s{Rb
zWy297tv;ZV0XaZ08dQkGAI~NKRW@d7qLbb60k&~tbhy4i2`pUyFWvQR<wYwJNktrv
z#QfenUR62m`dc5+t{Oo@wA**e2vA-8XG!!txOVf6F<rn=4nwC*8EdBtPn94(0*-?G
z-}j;<Z#S1};PXtKy%TI!PSY^TtQcfy3n-6SL*oPAd#?_Cf?vQ^i@+O<wMt3?))D?V
zN&Joj_0)a`mhCsqF)b6@33_V2%ZM0gALpk}D4m6g%$8<Gl()uv!cjFWIHE&H)L}xB
zgHzHdM}s%szvLlZM@qxe#zbO&y1#pl_{!rMT3r7OvN1qW*BFL-uA93Lcuwc77>|3#
zysywH*c#l41ZFx$32e6ZNbw8XGrr7QK$3fv`=(BzPPRik)!!l%BqXTav@~xY?TBve
zG74-2sD-KL5D*7sw>NPI<7iPBsZ1nx7))+TknRn<Ryp}z@4Sz$y5pU@2=+R9@Mp0!
z)HKs1eb*l1reQ-)4+0-E-(<nMk3+<INr*0ZrD0%nM6xN~buAJr@|w_OganK#<|!qO
zY7}N7oM#d^J?2WP-&f2=@!~-h7%~YcBj2uMb%#1wn$4|98ST6!TeUD6Q+|5K&yEdq
z9~3t)s1j9fPUY|7VfmF@{;AK<ddkkS2O$)=%(Q|aCUV7K1Bs{_c<jb5kCxBn!E2i`
zyssjDoA4$zsTvsj#*VR2b*3;1VUOCw0|n-r0^oE^b(0Cp@F!9656uU%OJ789Q1SC6
zuK9j#uQ|y`53$kd4zJLms0wI?93JE+qs>4OB_5+0@P}X30PSuP!F4OJ&#4#e^8Bjk
zxAFlhYF8rHNc7k%Bf~6mAp>}vduZFwItvO5Yl}BNdp#D4krX4ieL$o4hLHPOuJyGw
zvv<<dG(oI7^`ONI5lTsni^>?EgN!CZ`f=kQ?XJ;drw}OJ?`W2F0IXr@XZh%27;UHu
z2|j_Xf}tsk98*kO9Q8Oi1~&E=pI4&~;1^(`?)Wy(%~AuaYvw-Z@*g&`Jx<yrD{y9h
zIqw`#kQ$oKx0d){@akixE<1g?X|QCMj_Z$(4EffzH;<O32?+?*8Y(G%In{RsXg$uH
zXHnLktF?>9yMt6HeR}d94OkhmCNli3p~l!vi=?S2>Ay!94lWa*C1`(j-KWDUnEG07
zwBuTddtbW@FE|=wpCTgakyNh~e&dD|et3CrSytB~LeBKv-KPHL;v(pM+;Q3Acys~+
zMV1e<LTdNM9?ecMKBsq_0!o~((`(rDylb5HSys^HRj4LjBq6bVi-Al=;AA8(wTo_y
zm_UUzTDUl>XaO3Z^dd<ZExZY$OOjY6eqxLsbQ_z`J^w3xh-M(KL7<C_?6Jqc5EVNV
zy228RAgKngbt3w`q<E+5ayxuv->CSObwz&=r7D`)toBYBtQoxGGekaqo^H3l#tKI5
zOc%4AT<ibrn&vc%KBugy;05`;hZjnt$a@+;e25|)+lD!Xh{JkNt4U;kwJhieGSA~N
zwkOI%I30qxPQI6TH*owzr`8!aEUo*rgo!%i55)dRp6mIb@^710ND9{q4v<RX3u{$u
zD)G0u`=Ve_CQ0zm@^6=Kb)~{N7a}x#!@c`RGgFJ`K<+7cWq)TR=;Z{j!#a6w=dBDX
z@IokdE>S!Rv`gkS#}{fzBbnna=8csgS>R>st}SYuWW1tqycgA%pV+C!^o2G^0yWt^
zr4^0YLm1$`eO#j@#)H)Gsoni8POJti&8)nkYxqx<k5=bsVa8ROpcb%`dH>$&&@IY3
zMc|!3?v+Q!=<T|_!n^7s=fk|b@90o;toexsj6|2B%T_YcQ*uC*!9}Bjv8se)AjYWn
z{so4FL6I(adNlzic80&`0qzxk@V<6YiDMm~wYh?e@T8ts<8DQsoK!UbdN4%{f5K-*
z1Zz!kOnpUR9Bu-^jiu|v(76d+fCz9i>r7*p;5`I%R$R2{p`58d#B%No=hr33`Hn_}
zaoQqsmyg6{)P_t_7rE1KbQ2l*W|(dV?9&cNB3KV6GJfDy%=HD-*Zilp_mOoWX>7&&
zd0pNaSd1|q5?S_ZLi^PIW$hAjS(j8p3RJbXyDeEp>rH0BUFubZ*U$lFQA9Pd_O$kW
z!Ev@L`h_kNfhm_&6vi8_Ohu2LWK~NKpC{<jSNU_FNEW}LJr%7@*i%u!IAx0PK-tO?
zPe>SL^g0kM&*_bYf_kALK3LVc6snSKeF}&pG5pgz&dEuW_Z_~e;>5TG&rbg?MK*71
ztG2z$lDph-p4#!?M>A)W^K)uE-l<0iz>CBg-~o^;_<4U#rK=>2k7eD^8C}(d?yba`
zZD1FzRrTVdW+M6RZuh(i02~I}$kEQhWMI^o?K(u@0p|ysQw8+(6T0Q|q9VyenZ^tz
zDAI-lvV(|VfwrWTEBi2JgjSxVPTcywjM_>6YNumwrfI8EY@Nv#-kVP%?RUjxEfYyQ
z|LdaR)^>}#NF#4%{l`4DzcZ>X&J%M(4|v;fXTc|Q64G8@>cgPA)bAw88p?0-LJqgx
zYXaEXH`o)4RQJBF3X?EgyC@h^muq*BuS}kvJKgY}WvKvvl{xe-VXxQ4ElCXqLICaK
zCiJn$SxwuZtQ??pF;9pFo2iwvp!}MU&~<D^Vp1)8B8|{Kt_0XNF9lYR0zXQw23lU-
zPW!@WrP@cKql}~rjKo#Jz0T1B-Q4_wsJ-Z-TIcuubq}6Hi{-&|-#bHA{pXJDUiiCP
znBA!iZeDL(7x*@_&)JnV%2R2k#CaY4;cni(Z`%I2khCx0`<17NZyMQ=%`S9-RqsF~
ze9LZ2BsT7X-UPWu3lIpDc(1Bbn-ImxZGn=5@kDogkUdCy)lTOv-Gw@U8lH(p|5e-L
zky<+u1QWLjb4cYHNZq_-0~Zad*b>Wu4yV#XcJk@lFR+pmAazGoI8TL3Y|hv;xA%K6
zJahYmz0p?@|1erW=_`uWT!HcCtxcO8R)AL@a;7-|mTGnE(ZNYCop>#lGkh((rQ6}e
zH-6Y_d_~Y-t+|6Yyz(>QPQS$9b?KZ(22c-?PCZKFb4M%5b%G?jA=7oHP4V_nMQnK?
zUL!qO-=&LIg+;8Z3h|M@o}Y<O`sRpeX49Hwk}_JmIw&9*BSbyU&q1X*qEolsLh<QF
zs1_zXv$|bBNmSI+VQJK}--aweLgNk_KHZYTZmaARv8Y>6dOscuD9~S1_Wb;&#rt(~
zL-hmUu%(I}WM4QEP-*N6ue}*B2AHu!!Q$H&h+##V5HhZ)IIHs`hfaGN7q`bMU~3>5
z_!)iRtcLqsc1PObma=pIY)FTu!KD0m2o+~|2<Ah*v!Y)*AEd-{IGGtQfiA6vkn9xA
z3}HusvY=KIgfn26nVU0X8F(=^6832tS%WerfkHbshuthC^D@c3jbDF&<-LY}Fo@Cl
zo;o%xz!HyZjqu(fo$0h!D%*0|^dq>fc0d;;tU8^0?i6Npfz^*rdd0j&iJbH!aTII7
zbO216&v2lQ4+cmKN=+~HU|>XVT(cLoG$8y!O8k*ENEz3%BXTi8TwEp*L9fL@GUsR}
zGT5bb>^c|&3prH1Z=yI9z?3Iw&mA7F2U)Dzp?d|Th-x-=siDP6!7q}EUP#$)_P!4B
z@cs_~U_hV0w3-R5&7p<cy3qQW&D(ep*g;^Lh$9;c6M&CNj3WjBgw7n>&5C^?>cx@;
zEHhmj{@MVT<$)bvi&JqboKq<Qz?obFGxs*+Vt?TRK%`*1EeIf!fuJCzViSO`g|N4R
zKqFx=l_o=~fT2_)0Xr_G@}Xqj7R&$EiZ_RrNrK@<0tt&&sxZ__pi}|{F1vO|+$*gC
zkphaBS(DUgwuUe=WdfA&3n{ASVD*BM|K88e>;E0EB8zRGeeI@wfVZF2O$f1_Hhx#t
zyilDC;zbwnwb&+H%9AKUjN-l{oGQ)(UZLCVqS0vLutOJN`p6UvC2V8l^X`;Wkp-k6
z47GTGr>Vxgd2?~t;wAr=xOZ!^<vPy9zFezn@7;ZF01kiyh$IAv(vT8Kk4Vj{AN=5m
znLpuYKPbY#%`xHM;Fy?j#EfOq;#fm5NLs>(1W6D$r+ZhemFb7PtgPDmfCSnREW|-~
z?@QIX=KAu>8^9|HZ6n6K?7DhT$e^?I)JN~D8I*Nx&eH*np|$yZ-NF&3p8V(Yikq7o
zobT^(UhdI)$7!AoHO7<mpK=Lkt)a1Iw5z4!*|TRj-8@B^j-aAksLfPxsBHEOmW~%M
z-o@#3#0MXIfSa2e91aK6s#RfXnK1HfE7Q_@!|m+}EFEvX^%kB#e~#~d_q+J$!;e5T
z!>PqmfZ(r-fj|)uF$#A)x}EX#=~J+<a_L2@;|L2RA}PjNXszMrzxWw`@{j+Br%#`n
z3=sUgfBSEL?;3sG^&r7p<#P~sKssjXI8FdXtup<=A`x-ZonsN8&J&i_z!0php_bXa
z1V?EbZp~B)-4tFm7hu$?DutI1Q6hdaLEV62)rE^XNS8_&vRbS@TQ_5l3c>Ig5GV&{
zD&aI0%yWSz3h^*$1R5_?&{jQ-r72hY#_b8;`PN71Qm~p;_jEh~Jtf$%n-Bmh1vfW0
zc<0R%p54BQ`QLmO%etbi3ocSQ1_e`aI-O8!#m(&r-+1v9FWx-j-8WAtrDCoXwH8!E
zqEoG?^8xeWh<Z2zRB`j@F}?r*06g)h-vm|Q?z~<Izt?fG8P#4B!g~S!MH)(e&R#&~
z*SDGwZM-iWal3KO+m#J)z}Co`qagRZbkJcJ#vdO8AD3b%)W&$4P)ot_c(l?y8kq6q
z$rIe%++eO+^|{uHL#?P&L8*kpTrtlT>$(87pcCV+-QiFb`FVf^+hM<<<;b-bGh&--
zo0fIbb(0hSFbf(pAR_|nyfhq-C!FtI;>n|1Jia}K*G?fqG223cCcvt;r`QgFM^7K)
z?f1Wq7w>%o(|iJ3pa@&=2w+;J0Lya5e3)=N9&kF{;Egxl(D67NKvdDz(Qc*a1g)<&
zHvl&`q*Z+W`5iv}?PsWU4xs0}Z8sM)00#0_pq=r~^QTxBHC1;O6Y|x#Z}n$aK3H>A
zbY}eK)6emr|F6Ht+i$<X;dldP!M}U$ivIoAg9Pu_-+Ke46wFh_pMLEHPV)p_SLGA4
z$&3Id1{+zwtP57DVd<@h1DMp{2B?3jFRDU>GHY0^^17<JtZmgqH^eBGO(_!EIIm<0
zde}}cclT1dLQhlOpo|jqMKKktV_8>qx4}^tP3vG@F&ED-p+c0P6I)6JG2`}l#P|R8
z_wd0tzJ}xNEl>-j5GqI`_e6<;k`nMR3l66PPKP6y1<SfvA`!80NV>=Y+Iz?Gctq!p
zLIsZ=KN@3GRBiRTch$L8(&)H)IH8sqR43f6g8%csevI?^{Do+9|9Z}Qk?ET~H=HSm
zy#U@L)=VG#A%c7VdhZ>}vP8LX7o1LeIG?D(a+|n3)?D%pe_iyRYBgI*&DHhcR@pI6
zGfu}NdhhuB^Uu-OS2`ya*;a}n*rEqKnLzvP=bz%AfB8!sN`*8wH#82<0o9l&XfPFW
zn%|nCo;4nLq3ze-N2Fy_dmcoETrp!+Z}|4V`Up=R-$GoIH3L-<s8(je7jQaF@Y(M^
z!zZ7<#3#T03@Zc7MZIb`MeT`TU7HF;Zg}zH9en3Ie~BOe_{aFkPkv(aQPGW4j-s>X
zH$2ZXT3gXt#|IyLfWP^hBmV0@{3Cwxi~o0{spwp41sFHj2{$mWn1r!>_;uXhEg)2o
zRFpD9iA5`Mq%#ayqA3=_{dvXT|CgVFfBbV$ozWQhU;gL+>FS#NL#_u2-oO3ZzlD?Q
zPi`LJ>C>lJmh%QR0k%2Zc(Y?jTWffA{tVOc5j0G17um#W@$bEXx#QWhClR*W+KN{%
zU*T{#0#MFPM2$<p9Gll2;$2m0t>gawjAdC(y{TC5&nA#(<J1h%6-AZD;}M6$4DgI1
zEd-5*d>Tk5eRAuJuYLXN_~@J8w9s8Z3gLWrhtuI`xIs{aqS6Ey;1n+p0_HM-s)TQ+
zjfiCz1H3YYmO6p*W1@bUr5Zmjb`SxUb!>)c><v)Wp`90wWF>yNVEUp!ii{Y2W9<#0
z(dvYtuSKurK!$5PtqbM+tV|>LJ<sQ}8DDx7Ma@D#b9aA;0q={hjlnJbUF{%ht>dk?
z-hlM3hgvVFMb|%b!?0m!0LDDKYnI?Q?NfaI`8`gv9>xU)o?((Bp$)JVtVVmmj&m`>
zOmtnbY;z3g(qLn|Dtc>pe0#*~q0`GNbSqlB$>eAkvw$X@zq`9TeEi9$XziZ>no*}C
zP)1tGp%v-6dHL#hIGv6lBD{S068HD_28^cQc(t!RjBCAjoX<-XWmRo&>yPbgL4<4%
z7&RxF$!~r2xm8x#(NC|RWRzO4t_?r?`OopoU;S2T!|Cv#weujs`|WT4B}6nE6R!>D
zyZaCb5$)pYqY%JAEfrI(U@kZw4|wODcW}IY6J<V`K-ltt1YoMFf)N4FpTCJW-*^M9
zt@yzYegFVg1-C|p+(LwT-l|un6ukN7o4CEb#W%nCO}u#V!s?6Z^OkkBNt={+BjsGD
z3Osvs!1K4C2Vy$Zt-3vs(l{;e?(Xo}%g@n7?WNPKs@vzE-@{k%b`$t!(oIBuP`Ot^
z+*t*wFXCoYi=$5ejB|LJT9Vb!MugTGbvmGTDBVyh>fr{0vJr@TL3QoQl)^r>;$A>z
zp?eMa=IeFb?fx^F9>{KDuHB5P(n%=Ry1C~yUU?r)b+xVWUFS@PEupoBbzK7$|K>Np
z#*hEo#~|sDc5j@lq1E9GWcjA;pe%&LJmWZP;0`fa!a6<W8Jc2}E#sX34p#RrAplHh
zY$;V)u=Z6`RZ>y^aT$KzQ<>5Gg1`9YNBHl)_gDDZ`|pD5glQshZ!mM*MnEZ7Ywa(D
z!(qnl%?+9q02M;RD4n%}Wm$~VokPnyolXXhR6u&Rv0Byhf<@`0)9IuJwG?^iHlIAV
z;#?pszllH#+8&RnQ*tT10upws5rtHH1T+ECe7ePaIDNr)e*g6#!Ta&Q{0br+(mRM1
zmY<F@=7_k`L>i@-|Dhes8Y!b{z|&{X@ciAc;n9;fp)M#}G*pbg>Rr|6!(qbXCr|L%
z=bz!j4?lz(oRn@*)F;d!(hcAfA|klGy;VNy(W9s@=Ek4fM~~p8gZwZl0BUtVO;wY6
z?<mu(n;@Yx$S4thcYlxn`|p2@kN@Rg@aX9?Fj>CPT2RXbBp+tyys3<gYtH8u^SAYd
ztAjdF43U+UH>;ncQ_Z28!aYUIU$bDI59kaC72H04hQ@-&Pu~FQ&BhBsWJG#>aV-7z
z%0hK7$n)=6xLxB^N95z>{d0gt7MOYSc_dXv@%!(1l%DtT8iIc9rX&w87`Yna5Hik~
z45j_*SHHrKe)vNOcg$q~M{-N88MsUi#DQDugyZ3$zQC*6Ni?4a(9MV2^+$pUW+6~5
zDANQI!rE8VqPeD9U*N?6KnThUtm|W4@9_N1XKGV1ZHJ<r*6R2@yOfPNoaRY$151fS
z=<WgF<5O!z=V80qhW=ByYyku|_siDW#X8CBzz^P>!$qITT2Vz5fPfG{K@Ud%?)7Pg
zD-%Xn-rnBgbo=DNX>uMUc>lwH{6EyPE{r#xKE|JY_@_7?j}T7fHGn{DS$zjO?(gsM
z&;RsK`1oHw#nRnBa9d?p(XzTr)mrf8n{VJd-}x*2<R?GDKm5Z#V4CJol@5mkm<8M$
zN`ZwKQcTP{@4SP*{_DTS4}bVW{Pd?kg&RYFoWf64wn9n>OcU^p_uj_${^~DqJRTtJ
z0AQ4jf$>-jL7585q}i{2{_~&XKmFYg@$UP7g5#sdXsrWfGLCDDutYRW*h^~rVwyZV
zR!dp1BzsTz>z?mbH{#kfB+|z&ob#!mlnHAWP^~x~AEN{K_IJLE7ax2W)WRQneGzia
zufL8X%@o7lptk3BGqTRebk7Oz@1JRgeD6$U?A_r0PzoXoYJH}@UWk;!GS|oB@r2{?
zghIgW@#rnIo1|z=xUE4C(OL?QW;|WaXEb|Fc~v&;vS{>J9zzIdnt;wYFAJu5!dz#p
zeZ^E~)vO38GUQ4>--CJ49ZQ5#C)7Fv)J9vq<wmXKBsckxbpa|iD0!W`edWB|L4>jA
z-Zfj;6bD4DRo%s!K4V?ii}Bwd>aGF#oQMqYQtK4<j#4a|u6L`tad~OvZI5*~&ofS^
z6V@-WPp(}L61?|!XG~MYy4+(v%&3PMB6{jf`?~jbI!3;Lb;Yurad&@@CX6y2A*krG
zQ{hF`Wg@kPPLsyL-{0Tk^UpuWquWQ&(@1P$I(l0%RYL0xZB;+S!|@RJbsq51qenO%
zPw2g&b*rUB#SRXRO1o=on9bj?^@d97VX>^;qQG1TSzRU~eEiE#@W20u|A=}xVmjWS
zbpc9=dS+cjLx*iq_twKu!lo9IB~MlVN;RIiafPKT#Zm~|brVj93Eb5`IuiScd3V^e
zND8LI0UZUc32q-h!RhfEc=5r98v|3OFZTYre!Wf|&oqO7$6w3&ZZi$!8#fEqJz~B_
zU--eA5m5ep-`>4ocR$a)K;Ih(FRu|aq~n}?&P@oO&kN3rRuwrMRS>Je)T%y{fM|jn
zzF0JOh6>S&!|?{Uw>J>cP+LKZz=>jLji{(Et|LJR=EDIuH#b<82Bufm#|cwW*D?|1
zltt8ytw0ZX6+q6TTeOYki`E|7-?mSbLmy)nV`vER+QG!kIG@iU1T$h)VX1xBxhLau
z*8toO4AcW+yZ)SZ$n=sfA<z2PaR2IF!4LDMjn^;R3uV+Z-16&R{d$n#{a^q6|Au)g
zm@451fBijt|6hL(b*@-f2Guc0Y!-i2>n&eERj&q!;CMIybq1qqG}f+H(p8YuI{fN9
zkV3hh5>&%H&o~|q=xxP3AF&h--R!+Xn9x=Rq2l)Dv6V+rAHEX4W?G3?n9<h-+!vkD
zc~a`4RA`WcCpF1JK%X<s%3b~H*S`kpj5^-{G(k#HV*ymfBb3;zy))`mly93RtZl(m
zXH)mwe>e0Vy~o-uL{jrWVA4(8QNn*2J3nbcL0fg>wa%zZ12bu<CY(13OUB$?7KGd*
z#A~W~{!Vu9^11Wx`g2rc8PChSasF%;)cN!Kz>jOLU>O<bXJ6x#y`S0tc)K=bPy^WJ
znK&MgI2;d{>J%#QJWa~A+xK#YD<aK}z@m8>I(IBf!_6&OrRs`0Z$oXxxCs{bt<n1|
zOUI+fGpLA`s;LD_Yp8WnL$BESNt8ixK6R=%98YMgQ$23kSDSw+8j9=f7<K(LS&&x6
zFi!#(ym43pB4preBrMAF<B4~aTCjCO8k~{m&<$*vHp)??B4U)I3s*HTy0?qoXL!6g
zP|0#wftZbvtr_>4*;Arl_Ii-u{V)H|PjHwE9zQza&p!H4kya(pMVs8V>9OX+NaSzp
zuX~>dKRk6n+!f4|Z;TD>Cz8ER6h$g?;_Ixg`i2e1`6=^-GM-KYc{{%vT4IC<!}943
z^wlA#(~RkOi~0B%R1bhTgexED9vHB;0d>+oD5Af^G##uy)N9oF6t*ZLc=YIzA&SL7
zl)&J4w3|qa8L|N9wWCf)a3lak2nqk)e_j)SUu2ZHW)Sn&_O!x2NFo2*3(?o*)Xj#q
zFUsTLpUG$$z{P7BnO^__5qPeJYeNwENHW6qL&1zRF03<RS8p8+JaBJsEikzqzdh%k
z`{79Pa5$lNA3ql!9(p@ea1mGyF%JSU?UbPF6^{6wJ}{ag9-iA};}5q(#DK-P>6kd5
zy<NXa9N3<>K7lrUzZSi^2L)H>9!Y*!J6tAQRG=7l9vuzY<-GS-zaAub-+KEU2sg|#
zVLHr8$n!{u0r&*l*vr<4F&3pj3fp44RAqfqM24XbKya*(v5)|m8a1Akc|@NuS8Yan
z2AXt18(fu`<GKr7+V*Y8MMEHVfRs{Er-K^fXtq8feJP_ufS>^n^K`&H&Z!{a7xSpT
z*baxIg(si&o^G)L;?Q7b6w<QcQ>~h0gk^&s_MF-45)6G&yRsm-h9>jt`-5@J`IfHm
zIgib<TT1`{06qEV@4NN~Ko*i&7-xg$1(ygP-q##TF5L2}CW+Vbl?7E7F(1^Nkmh=T
zNq(mPoNC2kK5UH3`?<<v%NPrpsE(3AL?Ce#IYQQbFXTS@7^t7HA5OI4cz@p&VbPnh
z9M8H21io-@<j)AKn5K;xF30hDqc9E^{jdR;he_TCmi{3#W(`>G0Fa7UbyEMZcGe?%
z$R@Be1KdH-#4U`=#K?Iw=GS!b@FpoWV0>tt?p}TysCCwbCI0$kZ60CGV*yc=nU8;l
zfTIl}<|nH)s5DqZ)qfU(P=#3GNjC1fmg^f@-e=$d03ZNKL_t)>4~WCzfaCFqmoHxe
z06bsowM&zMsO7iTiuq8%qQ(#%3b6$?4lm{r1y_n1ElX8iIP;wO;L4F*Sxx^ci|=*c
zxh7=u>sk0^G@Spw7Q}Jw8Tm7N4~czSzUT^sM*G*dJhQqoIa2lTUtOzv6zg6#9vo9k
z)%2avrB~C#0^sa^iihsAK)TX?UWLSy<N42MzldsyyGk-%Ks5?*?)nKCyn3vUK*-lG
zO7H(6>*#fWV84I%`^tY8KOx=K&U1egjif`bdp1<`=R*+q{cGd*T@MnxhvO043l0;^
z&yB`u>4SwKAa!zVVdkQBwkQM)P~8mb81$^3$aZma8en*S)XSU$E~MOzXb2HlI$l5Z
zX>+pqLE#`(9JN?fPM{c3Q(3nI1msrd83i*s1jH*g$U3zRP=5DtQ0HtFc!Y44++CXF
zqpIL7Y9Lt%I*tI`L&NVs##AGmdS{?lG^;VTSMzhb{P#WA8*RC=DYBrv+Wsp7_L^Fs
zja?aWXV<eYb1(19>jdo{dFMXGYorLx7e!V-hlb6uCg7h;<Lc_Uw&hZI6f^30vijEv
zm&<V-LeNofK0x>1S9EB}WXh;B$81&JXrTTf>=8f57{y40pn@aCG=`hKyx9XK(CPTR
z9$LJU2fy#ShIp}iUcTR^FzIXlh42N!nE6$&2MONRo95FewMJ^rgK;vjRkht%oc%;^
z=0|7ztmZQyKrRt4<$pvYak`h-5dg!y5U5+2HS1Rr0KxHE<}ckuj&!$VyqyxDvdu@(
z!yiyAv)T~S8ma8Tni$A~1O=|XN-Tgp@s#Nhz>IkWb8o;{?RK%Xy)#f@&gw(G^Sr2q
z3W|l7vVD)yG)_H)q^?U%PVJUkHe;Zxke31~xUYEK=LXmd-mJpwcd`)V_^00=2doH(
zdr>x^dE5N{s^R!&7_x(CTeOnLa(@7N|F=AIewL2$FqB5xL~$#Is_?4Sb+Gul8x)Bq
zk5eh+d@PLzfxAW&dNG0hL4A!r@b`j-N#p-IPmd()^gw||U$)kjmO@E_x4ZIxF=nx6
z{N2>N{ULYlkRS6cMzg^}`wKje${vti`~C7zlC;-HABQJ~x|1<8xcmAa@?roP31js`
zG4I3DLRxubMVwVrrZp>PE}A&TIi~ZnKw)J;Z;DcvWrdW2GR>G!z^Gcr+NpaJ!XEm^
zeKldA<$#0*t!tfX-<VEefB=@R$(iQ~T0VqqGWDJ;J={+;KZKz<GL?&2RW;J2K5K8f
zv5M8sVoeAnV4wp9Rsu!@ebqy$6pgX>y<3aA(5&XS=>E3=(3-lmP1B6EX@nWbDo;>V
z>c*Yk%@?x^fKpNFjN|EqyZZ&ps$L+aYAF^<7HmM1532!%(HUsXv;=n_vxUV(s%HA4
zhNC@mnF@mpLOsm_LK3=E|5WEphX8b8IM1`C0d!=mLfwVCuK65PAshO`4=mTJvO4R}
z(bxSu5{YeG_jVyqR_B9l^Ml+F<LgpyO|@G8)msFGAVrg^obT_o4`e>KuIiU!>#N%4
zA41**tXlF1ViYQ%qSp9k?`xR2YGZM5Lk**aCDIoPhG5Ekwa<(GZp9mAWYuHQ<X5Fy
z<Ql78fZM7$go!o>j|zI_cNw0j1{=Zevn~X6--Ku-hXRzT+StGs6s#h>dh7_Ht<CHd
z9lbC1{0^c~Ud;P7*6Wym0GR3ohz#&WZa2u^5qMQ^?^A2KE=rvT*ZY9$VcE$_QLDQE
z=)Q^9$eG~oV}63M@he&yhcyv8#LC|Q5C%$(vOu0^z|JRl5kEj8F?g{m$JJ9O`UY{K
z?e;erHQ*rb&a?d|o7Y|VA|`>m(g+@jqY-No7HbWFaHP-noKX^5H<~UCudAk4*4upI
zuVhQJ91ki;jW3iT^fXbmBmWTzWFv-vA*%Btu|4QrD^hgsis%7U5vxhXK@GX!D^f70
z!!C?17%o=upYZX|!ghN_iqH_q=~=eUfTYd~n`<J4IttNEsbg2n|2rWhh`JD_gTb{D
zUnAXkbHb=fEX<c}7C^!tQH*|41lys}Yiu4Ro&Z;N<KaSo0JJfF@z2{=;*W6v*u07(
zbYMJ_0Pb5Yf(W4{=-)vCM5<Epy&^v6y3UlIG9UNeVlRV65*$x>t^pckD;1YQO7gFM
zc>4iVY(6q?GqebI!PNb>g1PHIi?ZAFi=2KO?q$9X+15HUg9#}9ddjP81FCHdupncc
zA8`HuQ2K`<4(B9~@fQ9A62!K4ut&-`7ovWTy*3yd+JuIpT3<|h(z-J{10meK97yJ9
z^g9SXi(py51inl_=|8Q?Y7ocz#L${(*HtDDaFA_(Vr=wv^#|Ue5b<fn#dkOV?7d<L
z(q9h&Nuy85Y7qetLvPH{(_%u(H!Y>lJ7ojPbb<*=0qSH%(G+MAu2iYHkl~4NbuIBW
z5=g{1v9;gtnP?i=>(Mvbe@~(Tf$qpRyQ{NKe~_&k6<~Fmg3`L?o;GL{sK7D7#YUO2
z9sauSO_&;Azg>&8xo2)`(JbAg-(+hW;~s=TzxcY)F&O;}dIKKjoYsSX$?lyeE%r@(
zc+g^gNCu@Sikl=@hq0&kn!ngyb8QUJHc}n^H^oZ7Ynn&i|9PCUhr-1gN^1!==OSz{
z$of%+YuTQ*U?BSIbH|-6lj2vu9wvBMb5;h@#8`lrLdhx{zyw6+acV{;UQ?rKpi%&;
z?wb}8c}cqo-ay1Q`9=)@5}D1M>xwG3cAu>_n$*gK-n2QkJPc70Mug8kN{U&~+u)Ef
zT4(Fg+6~X~u#={e7D{?O|L3nbH)=PG@hlj9%L}QHR=5ph6-#(Lb7PIibzaav-yMYz
znH!s^i`o_L@!CD|=eUhzKT6MNrL2f}15_1F_fdhw(e@xyL?F9NYrc!wkWc1{eWPd2
z86puRlacqfPh;#oSU?YYfRnM(*FluqGkVH7{b(ngr%&tCgt%N=3*w1xWb?kG)!_R#
z?~gH&m_HMy>E0uJ-Nr%~#1wniJuehlcROU<A=Fp=rEpRjO9L}(w#NO1qE_ILy1olc
z=%#}+58SmrZZ|k77343;5Vm<Av-ffLS{&p&`uC9QfmDO)PmUzGcQo{9uv^M~0-1+F
zYh>aQs6{soX8Z`aVglJWk0n6IIAI+D3zVlqaWz8+mrAj$XoK7Fjq8uh#t213ws{GF
zsgfF8kP=g0OcGmOR70W}0r1$Y+1J_I7-Cw+)cWf|yNph$@C&r8f<hpn(hkF;bwkpq
zrUOO{DG$Teu<Gx9Shtq_t?z3|@9*!EU)x{#{`$P_XTty_9Ky)DtYZ+#e6s7@*0aK|
z+#YYAQyI~Z<VJVR3u3fQY&yDu1*^23$H+IVwaN3?>T*a4kdlUw|6!*U3NR{7$C}U&
zld1O(IAYJ3uqR5WI*&iL2iT~VtrdG|Z){3l6M%Bs-Pb#y!gm84#+douXWJ7xf1Emf
zF#_85;_un_!bsi}(NmB8vh`cGO=yZMi|cuEA$Z*&y9H8=&L$@mu^F)WBO+d1Fdm$c
zCiNO@hip{4Sj6dM4<Thghw8sMx8UW|YqbzX`>e=7432716V>4Aqy+o4X@_4i8J$t~
zd59cAWC4wBe>L~1^M~=j%`&{|mgSq&KP|p-<WgUY<|yf(UI}I-1Q(EmQ1Z35H#>XI
z<1Kph?>c(RE;`H%skHI^9f?WCqRoP9p9|u$FWYg|FmHy`;bNGDW6nfH(XJtg_h|yX
zE&G6i+^>B*UXON%y@A;evtp^VDaKsagCC&kA(QWuFN!%E>tT2_Sa`0z@1Gq!vCpql
zPNUq;Sb3KMBYSa#0QWvZ4~Jqre<7d0v3JA{hWreW`@9bzlgF)h4p77Fyz^@Wb$kz-
zXR@u?eeQ&fCrv`Ul)ozuH0*Ez#Xa_GQ2R$Vcf$qn%Vg}kc0G`4P{G7(=@{+w6=Vyv
z55$-(W=1oYvM81AUvz=9nFO)tb#r&xT4#OXxG_n*!fqi{TP*9^h7~-}oqn&BV&zgw
zdY&P$?g+^ecCeO1*{I-woJbSyv>tsBRtNUsv7X(xwkS%ULNSg$UjF&K;bOzHK%FUM
zaDlr;>~e*ZM*{(IPi=o6$QL?BMPP1FZQLv6WEj5L?qT4EpPFizGw)li&10UBEy=09
zj<|Bt6%Q8C{!plY#e6>tC5|?byB<n;j9tqiqRruggq~fn12E240?Fo0sRc$QT*6|`
zQ(wG-g8ea2o3(}P_1MV5(GPE1KIr$rC5$`{?Cew}40Nv^3ka1wUkXCR`qpFabsV9^
zQDLraU`*3C$ODA%fn_nRi=b<PIQlo%%n)F@kK2Xz$Krv>Fu{#DP<-9zF?b!dH3Tn#
zpndA%REe%@o$nfH1P0Y$ed-K>y)UeJCqNf%{<7D@5HH36mRigL?%b9O4TK<}QeqLc
zWyRXoh>6dG25i|O7d&lkmeFXai%L0IF~^h&E(<kBM~8Wa0|4inwT%T{N6mXy>jX%*
zG9)Irx>@EeX-Ga@J8Q)Q<##ppV{oictHTE2%0S%|NJ8LA<W-m{J>$7aH%P<U<mxp<
zlcD(dJJRv<-sBg2R|Z0`@A+HYEE>+dP6pt%XPeeijc?6pIs~J;uq8p0`<_3W1=;>S
zo(Fk<Z4imoK6|Z|IU#>vOR_ltEW~_d7|{1hdQaSMco>ub1s;GQd2)I}kOTh(0`6O(
zdF^MWPC}rVfST%rMr$0dornDZQih?qYv1NNn`@m4lgXk&{gB!`!^axf2((Qf$zAJ4
zq@=F}&v6n5tC(sohzb;W4Mf_@QX?YM4~fW+VF1epFaZxcIMSRukSbUDwCRf(J8LN+
ziia>CV<o(!rtF~53OJ(1-1MxkdOb++dRY!BjwA$99VK<kSzC=Kaa842e-3o4FiD1c
zllaL@!vJS|``C!;%d6R+^lw*he7|oG!i-Xfnh}CNRJ9>!<9kV+QpBz&vTk1EhIpui
z%6WCO#<~zPbrIW5>D|}ybb*3+mXCo42W$_u;REbNEfHfNK_x{0v^R!K8QcY21zJkp
zc)<V~+4z*(<L%WzkW$p6L|D+pHVnB{-u-~xwMp|1D_xZN<a7$S;1xFm4od(406zRR
zwC2|}A*SgvcmBTVdy>A}xmk@m0t>>h=E?(i2Fhsb&|>{WQyPa^(3)>lb2s#LBaEqx
zI(z%^R3YvMj|45|aMl0IZTCN1GjP=If?{Y#PP2IAS{6{-k>$?jYSlr+7H*vR&p~I9
zAxDV2HhOAP1oHO2>b$s0&q2X>Z$bluYYJrdbbo1gJ9P@jLE6v=U4T1%q-)9FBP@4o
z*kSw`10ak5D_<|l?V9Em0Fw5?<x5`=%+(;8TLDvq(D^vJfS_0mHsC-~oqDK-!j@bE
zX%J*A*y^)r{Ut*hL%58A$cyS4x&pBA&Gd!tpV{^?-pa3r5O<C#BQ6#(6>Y1U`?Eq#
zOv1<8t$&Y2JPa9I*Eko-rHmAM-WKnF_&#nB0Kzxd=ZCDSfo~cr+X9v?MgQgd5gURj
zd3>GsjoC24?mRJKL&R7I{4TLcHtmja83-Ccls6BwjDd{eu%tR%|2AX3ozKn<o*Y{b
znca+wfH}{Vr+4(y>e)j<2Ua=OQRUgSL%(wIQts;IAff?2tsziY4mk1qk2Nmo-!M+@
zgH&ALjR?6M7-N3#7}SP8x0bC~mVA&f1L&c;d$p5vDy20bV_uBDinVQ;6?qF%SAGAx
z9LW)mvCiY*(=NBx;<*6XTq&=d=RdpVh0Ma(U#=Ymjbbvb8{mA%^<cpZgW|P}O`t!0
zfT~Smk42%XIa~Q@F;#{~UQzKthwbwygpmp3QbMprdlI_y*FvDs;D-fCeHM;rH#acV
zTH$#Z@(C9RE%lR~my@y3IW3rs7J<=+*KxeSW&VL{m!IxleHl=+lNZs&GvZKGuBuS6
zN*A{H3_<KU>_895={PyYc06NP#rN66n0Zqb#K$6pSD>~u9<<$vc^+c3?(XGLNlqsO
z*O|tCzqs@zJvb;m%WVO%rfAI3_^#4PR!l;jrR@1V_JJZa4uqzzO{HXkyhndJp4X@W
zZOWE&9tSn0?+tH*5PqE<5ycvI8d!kzJc)5bdVQ}YI<Gv|U5A!mA2MRBxpa7WKW$Fj
zLr3Sp(5M9jm9q6naYLfJ2Er<?=-wSJi7tG->ayn?CK>>QnNWl3NiL#(a6!U{R}Ag%
z*T9#(9wc~usyzLmbVjE>Ts?TWBzbNIi2vO-uOUtyHAd`~cA^o+X)E#GXiKPMG}J|R
ziYEX)%6t2*&G(kKKAU0-(-8~oq~qQ-%u$pYVH!MBOqLsYJfzkZxG&+&M#2yVVuzUD
z&&OmS;UvIqBTGptw9_)K#`#knVL}Cq2O$t?1=U(BAeN!5wMf`5;@Q#4;M_1gN2plf
z#g)2dNCJ=ha51cPYZ-Ur*B=rGv^SzSvdID<)`khp-kbVz+X0;uwr>tY*qHb1#UPv9
z#Livo-+&)7L@I2HWrJg1<Govily73w0xb${Ahs)lT#RaA-4l+^{C#aCLZA=nczGZH
zUL1mujmEb@lE~}GQR?us9sAGwBcY|X-cj2Miz$Y{_|SBSYk*T9q3QNMcZO7s@8uEE
zIT(kN`w{DztbX%S$2f*@HO7Ge%N|I!_Ig(t<ezfy5e9+laF=5ibq{romY~V(%XZGb
z?DaswYrcm?01^!+#0mu8InZC129^ef<{Is-huRT*3@j*CobjUkC|w9_mPQLZt|ai>
z*gEjVB4RWd`H0B}KqG88)Kcf2n8W{7+rygJJW!+Zpz6tyIbIb~9uUF|OOE2<o34JD
zu=hP;&r0yhRLy}9_zLO>#76495qxNgpidQI>AM@pmp~;zg&OdxC9f|;=!OKG5e}cn
zWO!jH(w<5QSG1s1SXE{fu;$*?8k$uQI2>*RIcRhImo4pbb+u)*M_vKJ)!N|@Kkh*>
zFM7z-sAHGWrQI+YCX41_NCLx+GGiPCo+#Y;YRkW<_6YcrRVZ0W%kOM)7-FvdcmErX
z4#B~>W_P^N3^Oiy{*9f+HxBQt^<4^a-veZO7e)=b;wg-%XzT}DTUSs~Plnby`nuvQ
z1)#2ZS3KO9N55#AAeJGpw*_rk(ATE9En2ro!~&uz+6n*@dr~CTnp#^h*U8d4>U>55
z`f&TID7ETmNM!;E<LT2UIGhgVzisvHEG)V+p)v*V&=7h}?oNeJQBbETRjm1H*TblW
zQUPhGRZu4ZXn|Prno373_Z^2>lV7asS=AYv=yPjW&P`{PMJu7QCV|#7DXSF#L{;Ki
zD=JN>sE{Tob2Woy$5bbCD`Kp@nZKQ2S?*D%f>H@W9cw#l@*JKq)fvrQh={<%AQDun
z=+e;I0_J8VqzgRsrSl4=j;SgaSEd>QrFX`8X<950Rxy=|eb2ZpY}H3!VDqGlb)JgW
znnL1Ki8jcyRxOD_L|P`>4?Oqa2-ZvwB)tj1)WJ;`|Ksu$ga#s@ofi~BxZWw^*YCUM
zgFk~zONfo@!p-P~-bM)_M?{+vJ;|ku&F|Th)`YM16(pF^|6T?5=Lg*q2BjM4e(>7^
z(dkW1D{|Gp50vBDLPo!(6wQ1GO<02>=<BK_%1H~YYPh8)i{egzC0K%`O6|PG`NgQS
zTv)M`iZab8k$1wa`Fd#SEws#fZymi0j>ieinpmkdhR7MG(+SIZ$<-IqvN!k38Ix5e
z=^ZH3g!8L=3yQI43Cu{YzfT^r-a8)M-k>w^?2Wfk>IqT^K#d4I+9O0^{K@<8<MHh+
zzWLFIc=w&RG|^R=fKpJX0=0%mPl0+c-QFC*ZNal=Pf$tlt$+1ReE5xT;BY!(Z4Grg
zpptqjskUeCh6c0>7zKKWozG{i(g7)e(Farts1`JnCkoVxu4e(}`GDi`W~52@iq``J
zC^QnJTj}Hi(PSZsYH05B=P1siRJ1T%4V8{tQ;t_iH#-$nyT4{KGD~Y`EbBQ`cjt+?
zkkJ5EsIsrd^{BAYgg)IY_l!DK^xkm4-s3ROLx4EKg$dxQC+hwA4tIBV>XtTnioy=2
z;f>%)HXt+*53{<L8PpvV!;a@HS^#uiSKCk=ncX5#00?(3-$2Ea`2fLt7e|9Y61?6&
z%@a{(GWAh2JoUDswbf8})>bTP$M#LoHyivX!G|V{JjN3VarwB|!BeS1JuNiJQlS!V
zLRsS(Y9wO(1hV1%L5dK?siT-vLZv#?Ugzr^eG2qY7Uy9T`WDlee4T|=zk^Us({pap
z(r6~n1)b+=nc^xymt~crkD#a{2v`bHYjdqt=Pgkt`vV71`sMcKCO-50?dOqWcTa1K
zzXdOzKgY7X!troGTNf<n1=2fYs_^7Np3>AcDyMpCt$6<CTX_EV0WaSFI;hOh<o^Zk
zzwX(}TJM-j1%&bV(G6}-Cp>%l1dkuxDtPfjL;#|yd^u|n$GYCDCe;K}QMc0N{)|_z
zUSe%4?$2kfDc4s3q9x=_Ggb;oT|J+_`4s2#87NQSZe?n#>4x|<l97u=;G(1T6-!$|
zTtW5zk6Uw1994)<Vo4xkZ28P3l9A+XZBf#hjdyX*%hgWj%0w7zW8B@{X?f-25$k$}
zyK<4Md{#iOvs*lYwJlhe1*g-=GJ-X%%Neb)CUS3#v$=VN>Q4ZzfN%pr1@(NGG0he0
zS*%EBip6)XE2)Xd_bSF^g3$Y7W4BfHw1{92fun~<OJjYhVgkT<IjaDhG$rNT-7B2W
z_n0P4Uss6C0BdeU)vJG4<c~;fsNNYBZV~6$)Y;It;YG9XNXQpybLZ5M`*q_;QmL2W
zD3y8d_}&Eq9%DR2yf-7Mwlvn@w*Beopz%EC_Vz+5*HH6=wx+!&n>COlsRrUEB1>|=
z^<{Ps9gz`8;cc&_V7|SzHVitYP8FxqX$W5O3Kr&_QMC&2&Fzh$bFYX!0vHDRW%Ol@
z0+LS0Wxkx_aFGo|Bcka3cc1<ipT4}uuYU6>SiItjrbHDC%7&Yu_Z7?iJ-+p=zrY6{
zd;>rF;g9g!Pk#%t!j>$`lY@!@Hee=TY4@0@KzhTAci+Je{^tAm=}-R=Kl|Cwfufqn
zJRc2A2r~3Ac!%@d9r{OK$Fi)u!*6I2*$61&%UKU7rBxIpKID2>dH3@j2n~=q&_L@A
z(ubd4l+>|Kw3c3nZt~@P257RaP@Fji*~FtL*D_BPwQB0g)9Hj)uU?|{Rg-)}IXo0-
za&l6)9MFVX2&dBl9<BMt8_#e)FQ|1wtrOOD#Z=VNiSS@xKpLhBJbv;RwG?n~>ULzD
zuP(?@S=RZlwdtXv|2jz4h;(Uf-56Cu5Ev-+zoXoBn%{xOlkkI8t(Xs(ri#<)CalAL
z^chCd&y$XBDFuh)5vSt;#j3b+IIbt_Z4$hfh-s*Dz-W86K4(EKhLVPG8?Rq@U)Yrc
z9rpA?HZ=NJAPG<x9_j}=DwE`YgYMu>KQ$RWrTz?>ClEXH$XA>VNIZ;s5#7fgDWx7H
z`rJI8g4RZcI9&tNrq4ta2HsjHeEQqpV&hi~MU=Ov8@%)GJGi@hh0lMfC8YeIg`r~?
z)Czn$h&zNE-g)ay2r~-Rl%&Y~)G6mQ(7BwZNvjwy3qJYe*O)%L1Ij@WFH9RWjRvL-
zPE*0}e)}ojefJ%F{cC@Mb!~X{>K;@HL{{k2I9hnpB;%Xc*3jG8JXb_>^ornkm>~i!
z6w1bHi_eyOr)Z^|sVZ%#KG!QWt?Zm^HWngn5v`J<AH##=VRH9@Nph&5)(O)*L!mu~
z;j38!i*BU*x;CtBMehyE`HXd0aC>`;Kl`(f@cixfz|hl<XgKVXBQB_?#OZW{XV0FY
z)(PMH-gj_!cMng%oC{iNa&rxTJj@g7RIw~)y#M}tSe6Ap_?z$R0C&MWYnh$4tg5O{
z)tt;#HK|4L*3-v09%n4e86p}KvMj426xtdbVuP_JS-&|QF&%CIOkupMwM3a|7iP{)
zK6&yK(^T=^d+*`q<|a1swJQsxX{tCJ4tVk61>9gcI9`PKRU@2c2fja_ar@{IZf<T2
z#SAO6QwPk$=oI&KwRYW>U-wHyB9oXK>WCC&x0Z#p3;8S*k%WRDXd4i{={qvDA+#|p
z4!O)`96})BVbs$fj{e<{X1CVoJG~;?1EBYDFi}w|gW`FEZgb(=S_5QQ()V=3D8Hor
zy}iA)a^h!r4MFcyDJ$G>I~oh6t0to*>NH_l7Z3=CqgJdQ)i0bol89R4-XljXY>dKt
z0Rm5{*u!`(MlBUE5e|nLj~+iolY;K!9h!iSVWkPu8=gFQjN{>eWnD4NGv;|RWA=ou
zgQBXUw-=;E1kfSf#;Y|egkTzD(=jh_50p`$lcWOD!9@Ya+Ez3R@2`d6WxSXWMpfU}
z3@ati0uVpcg%`jB1@C+BzlVZ`+Z#PGa@{URxULGiFYi3fD%eQX;AxsL9cGABs9&l1
zlww4SO{D_0fQlGu6+@1?5Inj{JrDFfU-0L%JEV7<&-VZT06$ok1;76FCjbCpf(IV-
z*1*zZVYYq-q~mm$FwqMQA}G!U6$@OD*eLm@Mz(2RrfI@7PY{_5X(lvl^onW%YWQfa
zVO<ydxhfa+nk!rO4~HX4d4<nD`%HOa69U5l$_20W8G`e9L1(SfF~pe9nY&84OQ4wA
zY>csO%z-Y40C6j_YyEz6=lDm7BSl_p&x&Za;(Ti6PovXuFXt!Y{&rYLC!B;3XlSvw
z8KcdwLoS*;Wl$wKCvngcj5uIOh8{A!3jmll=0QTJmxw)&VfI{5JBWe^_kXT+2oud2
zVq<P0yCpdO9zL)U)i`-^*W`Ld<~Pf~^eb5a03ZNKL_t&nf+w~gh~7_b5!uul^t{iV
z8Oy4Gij5vq9|0O`j+C!O8lmtsp@MZ;jBarww6=@Ls&v@=)mpVug=l#GqeqXlAm}vd
zq7hA9V4Q(vi5qqxff{|+)?#dIF<-3by$mCYj%Z%{2MXT@3EpK{L9!^SG^0%K4J0Kj
zz}@oFx>2oJDCN4Y_~esM@QaUsiJ$%AV^EomS0U@Lh3Jt6F=!qF#-IQBpX2G1XZX9n
z`#ZdR`4ZDK8OQ4kp`n&KLBxIi7}Hd6I4G^~qaXdygrgVsbGJO_n=Q3tUvZcS=nG!m
zy#(_U6}-JeLuMPKR`V<vJRy7m_J;Ga;M^G8E7rb(ARE`KF!0#yzWL^xC`9<=lTV_Q
zjcPX(LT5-Jjiqm`;qB+oaXcRIo8SBf%d#LFvtqp)J?G_T&dY-1%_-2BM}oOk--VC1
z&(<hwvJ~faLw+UtBqz!74|o`Lt#z0sL=9OZEv1+cD`8~QkC`Bf>|B26^gz>&;zD4^
zK!b#0KG%+1lhAYeMtTTgN2(Oz(j$+-<`Rk|O41!*bTl4er<4U(pzuVEq>FaHJ6+;)
z>0^-%YH`>_tvvl#Y(IJ?tr5+&rGI>35D;_TI$PMkX->r{pOj>ZErhrmGVU_e{33`{
zuije^?-j;8PoT4D3>N6%d*5B&kbV|XwC%Y|yqLmyS-@S_OmC`*imej@5)V7jy=wz1
z&;?-kF5v(gk+azi&2Y`c+R2Rm$K-hb+sFTmS{UF*;gUtAL@l;Z2Pyj(Iwz(akvi9R
zRaeaCQ6<FKV4<q5%_g8=IiJ(XO-a2)oN&Df$oOGl52aLp+*)c-6e6UFvq^;}pgyXN
z1OoF&(3Jr{t)q=HEZsz7V{A%=@bKYv$Lox897%bZc2C$oO4m>XF=V0P3$q({H_tkq
zwV1D=(NQ|4ruwsJ8%hB+8$Z!SSg3?I0Gm^OxKt&v;NzZ!kqAafB+mrp8#k{}+qn8c
z^%xNw%P_>5Kn^70YiZhsUrV4{?W3a*cTWpLUplX{z#UBzL(5zG#+~hffqe7()e0m!
zjUpoG-MqXr_nOc!Bt(&+y1^Ug`vVAJo4IGF0kY?W-j?I1d%^fREE8#PL*0HS&ne7<
zLdUK9(vGp!EO>TshyccW`Vk_wevA!w%#ZXi<ZN{02{cn}Gam_G^R6xv$o8f2ui|UN
zfR^=}>SS}}`)eRoo8dsP7p105m=_O9*{u!LAcw2tHG9ODxgO?DRtn%Jge8&)q-)*)
zkrbzo5Mf7Ho>6R`XLL4SyOfj#tb&upQH|K-6_hezqGGN$!&>WB*U7B>3KZRkbOLt)
znQv_&{ciYhQXScg3Lut>a57gQ58BX$I1DGlos3Q0Qp6k!s{jB6#gf%L9Y{^8l2aVI
zPz_masx7cZMjpQF5n)kB%s%O=<ItDH*8kvuL6)GKJeiHTMcMs5O3-r>jP`BU1Isut
zVF!sGY^uUm3%Dr0X$k{0fuL?b-fl%6PTiyc2-6fcUI$5#y4u}6Pb(x6^<c*v#|S0W
z`_l74@0_{RQMowroFc~G!wO7}BsuIt9hv;d^LT9oOZ-1nUI1=%_TM#Sp?ksjSdfjq
zbFh|g+1(4X|0#{<x!UbinJ_~-gDsYJgx3z^c<&u378*>Wy-@_!BlP@P4o;ZknQnND
z!^zgU0042U)qDtxj7T#`67S6FhL+H%=bu(_;%HXjk$N67?Al821vSsB85INR$9(+}
z5wB*NQr}TeaH1$k5o~K62V0=6w-5><>ig@H*wz(-$&V+yyP{9&7D?qNxDP5pvukx*
zjG_V+regL^mOGaKaY3uqfuq<aX>u7r+g&|_cyZUZs^E~ULaqSrqwBe6v-NyTR!=7-
zgFAsr-tg|75VR3Ai<@P1Gi2i&DDAeW%bSq|N5!ZMeqYS&sv3YCK%w_?VPa!f%;iS1
zn(QhT#i6Ph8tfiB6nMElrp<erbS39JcELY3$3U?ZZF8UI*FEbR`p^w7wxNdC<uy(^
zzGLs(lT8?mP4D*|&os53C?XY!hX9JCF_O3GK)mCr+dk~QNpwjLF9;X5@DZeFu~L4>
zo+T1($))En$7|d%+7E_E8TVj`egoEDskV;Es=<g-4V&KCRRCBu2R}kMAB5Id=aV(%
zWk^kw;=n7U{B~3&?F+HBZ<?ZJ7Asg%`%TghEl9Te*ylaMzgcro<mZ0X>w#$@H6*sX
z`U3>Y^abM%%5nOOpC)EJsAYu8+N5tLi%bn6LSePKFb~dn1jKqihXSA~dfp^ocP`fx
z>*#$7iG>|%No_6n<PP&yTNFN=eu9qZBNx8ge*lC=4hvfq0Rlpxjc$6y<}CPXt${el
z-~x(d$7Xf<X5)joQS@AhdEC9O%Mrn)w+@7r1WJCs(;<$AebZmK#sM1+QaB|<^7%~&
zbF^?=8-r8&oC`+({o3V7IHTh1;+F4~{xZ}yo~x1jw0SLmw|k(6yZv!?le9n$r<`az
z-|4YqEbXUzb@-vYS8d(ZX=qO}WI=rXvV_v>L7MMX+kqDJ5UA2oe{lhYST6{Gk<cZ4
zH|j!5iU|PIZp4wg3wfVcqXZZ`t!g{|p`F0@wLr{%=kkK%uqrAg>Q?^v4b<ae8?NvB
z)s5*<bb!3Ae?-JPPqV6%*(Z>js*f~;v7;~~nBQB|6MC94O*7WU#__rfk}iTVDeCng
z9q5g*t~ywyBxL3p9!M<wumx%%01%)xCFe_}m`esM;;W1W;3_|=-B-~v8*<25jP`!K
zYT@m%0sJ%>1q|)VCoK?$11T~LW7h8NWqe<JUsa&UKkEw)4!9(qA)(S!yaqxtm{=OZ
z*ieQ5y^k1y1h)5MvAR0u2DYA%jNgY%3-QCqU6@1$g4RRZk&*ppYM{S=!5v$l#t0>p
zTE<v<?}s2G0|9^-RWWie_`&G{6mTM0$F+~~F`A1+VjP3k*q$hxdED$@7c}{Rim_!N
zCCnfBG%f}6{xvcIU3L<1kGsXRu%HK7HA<%k+~@>$p(GILVU!E-1BF9=ka6k@Sm`WP
zn=C3)D3I*HZzd$MJ)rYJKMcHMAG&_$0=*ND+zqtlXuVH`p|nPNy)%OX$T%#}HVzK@
zt6vX8yq<N+te|WI<(y#ajLv32TbmhM5F9V}4z=>DTB?z1es>9DNpB3AB>eL<v5O)^
zf(^DUT7o6vu_AcB>D=nwxknP0VW6;0Og`B_VRs#}Y($3kqzkwhDrFc#bxuwDzBb0X
ztmdj^TyJ5^c&2>|K2~K6MpajaSJYtEqMCU#+Q<MHs&PghxqOkU$*O5&mDU!G{}8d@
zkTn*va&@H1zn$9(R21DXt#7EJj>bBMYoVfFbr%Zig(!?b-MkZWPGd)!epmw-C5U8r
zhEUp=g5>HI2ewlz!>!BpQa04(YI3NYG0^G23XXTIf2Y2PNaJlpl!q6y1;qTw6@j}|
z`W<Cu&B3+AEM%P4D6~y>6M+}5eeiH6jHymzGpGf9SJG#_+!IR!O92VR-c;bx)zvO}
zow$bps)8nl{!d-6oQw9gqA36bT?L-;Gi)}UF$3z(MpB}cBz*(O#I(2~K31Z>xT5<L
zMBomzsi<uMuF(yDWQMxtIdE_uI0C(VpA^-ob-Dc!1@BZVP-cxGM}=ztB?L+J%s>{-
z=a%rW(t?6}74l6aVU-;CM9cmFfQb6J0_tL>`Eq@sHdEEqpg<)F3(`|n=>_AT56PFd
zi{&I81Io-0>L_)DKHAbzfgy}4Kw}lIb*h07Sb$O{fC;D?tU<M)7WFAs1CsM+2n1Kk
z1W&F4l;IJvQMZ!-b-4^z$;U?ZZ)C$!XGJemG&0LmSCTM#TTv@vIeWf{7I=k>^67?B
zr)e?+%q6{$Jt0O2tYv|UWI{=;gQ}lC23u~~jdV2x6Pzbbn_`TOVyw_oi4pl}F@&oh
zCIV=37*1X|`tUf=uF(_#)Wy+~zO!g_Rhf!8<O}9$Hq%E3OH-FgpKD<IJPb^=>5KFA
zysh>ucJe9ZKp-9zL=O2?ph2;oGfMV0D5vV4HH>M}WKMwC8BtJVf^-VwD_HZhFw98?
zfN(>RgW7XIfTwqi1KUex0j-?@ED$s>uMjjq4ko;<m6qzkh&@O*t<2~yO$yX)Os$Xt
zjmXt90BJy$zv)vM3~mhJ)z+TMB(1t4RuFd_q>v#ubp9K>Ag3^+x9~sx%GbkkHL&J5
z@QvL?eKiFI(#4`+e840mM5yK9ftCcZDC5-jLX!ddhT0YJ@C5aK@I~z3M~oka*V9k~
z{cqUke1-UJN)gLO#@h`b-iL7qKk<7P&}4~$*duBHt<h#}F+n;?yimNhL9!umh86l6
zHymzD$cXJy?ewbvmO08#ek&6r5{Oa-R~hJlC3&li4SLAQ3ZfN=!Er>A)!qyA7YBrY
zW_OR^<ScMy^Pa?d+4L8~vm*;~Z6R&e8~`vp@y~W}2YS9Pc)gsF$){Kg-NtL=R2E%F
zCafG}<Y)L#CfYswl17Mebd)Xw%((Z0j}K%^on?+ZKI47y`G$-XkcB|TaTZHJ<OyXm
z_dmu#0zWGV*glJFGneA%b`(b-S8)YF>BL56flM(=aBUQ}mxL&?__|`biRyDz%}38Y
zkwT*yVeFBc*EEjKDJmCc<GAFxzSQ-=e7rVBE+~EC$s={P3#ZrsIFfLcPY1}2RsdB}
zzHJi~bZNx#$@UXHd|qu(hS0J^I+RPV_{pFC3Ur)MV&ozq6S$glHzw8Bif<A#{5ew1
zK8cRvwXMT1mnhZua;482B$6J2Jl}-82sfV@q6`!t)B6fRHMl59>FT38p*tF@rJ_sM
zmKTl1_eiSYc6D7K`E^ZT=s}qIN7}kL?Y@_PCtTk1x=<Sb_i-Qe=J-7XUOuQc_anSc
z@cFZ~nu7oq)y0{Xa>3-E^`IcX`+hBdVZUV4v^>W?|2i$1e;u?!{_It^Ip0e`$)rOw
zgQFN1Y})S6&Lcn8{Ahnfd<E^c8}rTKo8KO%+gR^uuX_??-#g-fD+zO4Qc-{k-*RmY
z__NGcPQSYa24D4ha0QCI`NEQGRS_KVvUxrL002M;1`p^~Zf(B{O#dB<gv`><<b%20
zkQyGjRi*bow;W>*#~goq0K}M#u`x?g3IQ}+sydl<-+65ws4U8XQ|`~;DZRU%_``*@
z_*mLuq?AcO{qfy6)yGC0LS=jkj-O>5^c&=v`|5t1!s-67#Vf(7bv6~#9+;wE?E$+N
zHb`^-+0l-k=5_B+yGLl_>sukRy^I?KrRQ7<p12Qh12f{i81d`qMkxg6E|YMxRH#0u
zuCn^(1pqHzx;;E&6cSZrC{*?!YY4_MZu%HMpoa0cV?P55LOeyK1w2@>(eT-ILvj+l
zeous8AHfW<c4F)XAjpCop*?zG&Jnff>s`{q%|~PW=7KamkHil^pIc6ct<yX99uHv1
zT~m3gO~pdh(}6Rdr~B?<SXZwH*IbJdAtKRWg2&nG#PmLr=k(4fG#uQ?PU?+^p^rH!
z+R7oOS@q6|ak3ho7o@*d=z2-=ET|BJtpn^6QEUS{<-j})AHz*<J6Tzk9f$ZZ?zrJh
zFrve>6=Tr}WaK=6FPb4ph5>5K#~zL31C0nk*LHbSo7l!=OJHxV(BTVArNVO>$Gr{7
zUF5b-e~&X`v=;!1Z`zFD(p;(Eb-uC0riw_kj9AQHb90f;<>kd2O+>FwTccJ!6x8r`
zeXDsNb#x7Zfz0qEaR~chWnn7fRP_k@u^TyCHh^D7ZZRyBw6rk>8YZ7L64`uz^nD~>
zDupe-h9yt5%E8K|5{d^9ga$j-KH%Op4o73gfK<ZE+v<MzsUr|e$w;;b(_3Qzd_Ng5
z+3qtLYr?%GQh&#DWE@HnK;gtx@@kMl+h~4fj2=le;X&8KsRkbe{lgZF_SV&UN54A6
zs&3^Xe1KVL;Q<(SLJ5H4nQT+oF;QBabRm%TLRUod0Y?EmyNAYp7Z7;{tvxPC=WG_H
zwu+b=M5b|C`=n%-l{i=;^UJtrLS)(&1Uhm<i3`}=oY>5i{~rJJ*}8KJxr+~(79nbU
zz}TFgs9uLgH;j8+u!ts533b)<6U*q7uh?Y%S=-nV<_Q(r*HCH*Iff>**{Q=~Yak0<
z352x2*S1|*1Z#$_y7^K*AU4mmwe-4T11^k81Pr+FNrK=0=LzejI~q?1PZ~T|^<9Wl
z?qHTlmNX_KUPq5)1qQZYL^cm{VeCj%T^&8g0T2E<#v{a*by3Fan~wPWsJD@%zUkp_
zo+M@1Qz+dR9>nBx3m|!JBW804b|53Cf*%CqK=S)b{O((J{GJYty)aLQjj)HjKMeOi
zEM(Xx3_9^^Tg_~~hTv$efpA2#vLj>zvsy+YK#6^ZfXGUHB%e|OMF#z4T`<pTO|Rw+
zu~i%OXDKCI$)Z#ZJjkHg#w=mL+6V%1Az-Ri*YmKO`Up4|s-NxMt*a_rilK!~kioby
z#=;+Jnl32K_p6`OCFD6nucbor6WKSM(*<7t%r^y_ON}EV63y;k;0t>s#Hmxox-7a7
z3nJ6gdASeQtKb(z-3c9)d*Mp}TJk-qsE~m)I`@IPHsh|nE+`Q&;f5IBB`l+;Ca|^A
zho%G3Jk05NkfGt^;1r*CSD!QW<dJgjCg=ylmcp_%!us4|g0OSfr2W$b?i`utT$t#1
z4LCd8+G1m=$}1xTUq3o>HUOH*E(=&62eQv<)ru1R&Gdr{%W2Y({lhflyu8G+t^f#i
zn$VZC7LtTg0;N{0tL83=Vwu*SLh7wkCe=#BQg~(I>b3+C2DgrBnq$2W>Wf128n}m}
z7;Pj}0xS!k`|sL;N`BxAVEZ2deqg^B)4rQgqnV!Bda<xM3$!*8ZWX8_!9%WxQ4N5p
z#D0p{DUn>pwu%KIRE2~d1I?s+_~-S{<XA6y+5_rNR>(&Ufrta(fgmKCg&rtEuvvh<
z$uq*TC1L9RKv`^p%TGg1k+(y|vDu+&W_M+DpjAg~WaV`N8FEG)!*yk&4(ou7pFXtM
z%4zX&%g7{7^dbA=peV&Ob=_=a)@=YIBor`}ZUh<-WvWQxvl)<X+{Jc67o`lXW9(Ld
zceTlK{}ZCiS9pntTlB~Chc}6j&QQMxC6fi&)&REWhp(Y`!l04{S``G}Yu)fM3tb|@
z*I5rQ|Go)k$zuaw%j32Dd+fz{_L%>;M|wTN#G!NRxh86|iv%i7V>)tQ5S(At{T!Ry
zzB$%lP%tJdwnljOci+H!6Yxb73)$nnuw^YJxHH{TnbXZ{WYCLyt<h1kqu)GF4utgk
z=DzpGM7+Lpy+)e8;v9)ji2V(TBsMYls#n@cq8%IY?Hrrd5y4O^E;m)4*hmve%Fl8V
z%<TF+S^Mpx=ng@0p-qtToRJbwPy~U#E>t+{Z=RP>iPJ(%k4`%J_F$0Bhj1at;x@Fc
zXSSCGV{@nW1k!f2${QNM4WKGNou3?=S}nm>y0F{Sn`Z)nB=@f)A)f4}1R#*~g^&}8
z@Nf5|folRKjU~pQ6w{tE2fuI2miymdY0V@xR<e-sbsx_WWKRw+x3qb}USP)hCODlo
zvagw+v{g%SwC2A@|I+gv?YfPGfZ(oMYtZm5yT93Gw7E`OIXJO3V^2~;oN9uwh)(zA
z&kJu)M|dNKu`XT;$U~CBkgn6ho`b{;<W@YvlQ;E&<_tAUJTc^juMzK)$p!0fjHL%y
zg~kH~PG7h@{=n;Df_FeW<kPI9=)@Um9woNn7DEdYWkrwVPOhGPOe6-%Ppw$uwlLkO
zRa{uu;wIx!HJ@)ugQ;qG>n#>G=f&VF*4cCGpC-X4qi0P`BibzH%yow6LoWLw-9l~M
zHx>>MVnG%wWayE3Za72|;v3q+|1T2R!g7De=O=^#Z;_^d*4>~?tz|n5BO}))o0UH|
z9h`vrDTmYk5IonH%vKotziVi79Nh8BZnD&OI@c)^^E4^O>kk8@5*hwEuhgq!zeABU
zqQd;|fqK)y;yQ-;=rLJ!Vz<=W7`b+k`|jQ%{>*4h+&A?!9S9*5e7$prhZ6huGDjH)
zK=}Dui2sf@@p<#P^~0xkRjox-$kt@|^swU0_j*2SNeI|Bp!G-hWUgUHK!o*<J_9J;
z?~)ECo4>v_h7}Asp};4j?eRYk81nJcb(@T~vF;FZW{iy;3gd=f`FbGLkUa!)9Q}6T
zxKFQt$K`>eSHIilX9xy&tD+FFF7V)s(AwaGpVg|o_?Rt6gfB`-UJ}{e%NtG_I#aAP
zd)$*!`>c(jstOY4YJ$KLa8TWT)zNC8!<`_~@X)Qwq>r}+tD$y-drbYl*t`jTIFfRK
zg!Jr4>@8y<`wQYuz_Oi74G`SUUz(cDl@BS^K!#A+fBYJ-$e&^X$XxqUGq>m-32AyU
z8cyp2K-fwGC3y%g)X<mi=zh481gD6G$QEWu+2`;;J}070a1V_D<lFhp?f3VyfOBCc
zpvaHm?*$$uilpE!px~cRN#1om@fcJf*0YNn&OpZh&pvSO!{60#oA~S82PE0xXcfT7
zrD2m7pO1MFJ-9gEO+qlL7OUw-5y&)Q4EJQQXOvpZeu2<{hs|RP$U?ZoG<UW<Eq}~J
z=sw1-Z23Tt=Ww-?qVq5kL_UX9Un&+9joMZES=sF1jF5byflC$ig3Cf$`)Oxp0UfBz
z{`MpvikKWN*!NSLJ)&)>l$O83G=XtCCPA1M#Ax$KLJ|cO<Fl7)G2n6g+8<Z7UDb1x
zGM=mNlS%*LeUp^GRx*kJx`^hf@X8OJE$Yq2!N#90*u_iFk8w`(;(gwWQd`uTI&&N(
z@mb@$$r>%TL7WdBNq>ea89aZ?iKKJqa!tSh01Hq>1pz#iI@Sq>R+iU`Eg4T=$h}$>
zTK9t;YP8s##b0()v76K=wCar$_40^Kp9Hb}e~i@78jx?1?gh3eFNj9b8C4=yeZiwk
zU1RH=L+kQ&$*hrFo_AVH`V37^OV-K`R1NJyEU;v=?@ewLs69ivXqh4FTR~AHxEYWO
zlwukN^RA)&T!vSaA?QH3WCtYy^E7E5Z!#~cA{aSNhAXA^SC8wFry5qD4-dK?mLx~m
zLSl_)=>!r22?OX5S;1%!n(b6BDwt3-kp+ob*a>mUc!A4tNUDIHra7Uxal(7HD`2O(
z5a3lO2%e2h|F$NZ+T|N(a7ttCtAT_>tX%`;iJ_umS@DU?(pd;n?1U^5St|uF4hjSE
zIz$d(lkkKI4?X2yce?ub<BSJTtZtnt*^&g4X%9k#-hBg;JwwxJx`gs1BW&57ychYf
z*zmqCUqZ-?-%~fi<UYXKUjJJ^Z;t*h{Kgj6O~V5j8<S`WQEVg#mSIls*t=}PbA8MP
zimV9RtmyN_DxqjXZG@qxcUwbFMOdw$p+l%UAXhQBNaYO4+S3I%k`{#xWNM98I|ASZ
zEnx?Wm!c6_Ls0p+XFk`*%mr|finiW^q=BeI*a|=fa+K}YSODoLWc!vyQ!$`IMAJ|;
zo1_W?Xab9%bzqtbggsU33T_K(oN}r@kZ^d30R=0ssP?ShR|q<QW<X}^x9<B@WCii0
z;EV*78VC#K(lJ*CVL@T>4P!2lBQJ=@tIRWSJQN7j(_{#E^^5>u?yg3;h-i(s3Ov0%
zK}0LP(DX2t_F;&Z7;7Iyyol94nh7EeKtq=XDT2m~`A{PdZ0BY;P|WRv3`rVagP}G6
z>Px99AO+kwcvru&@2FBj0<n!O(lwzE7|dD=ZJsBzzCwzZ&T(&HSh_>4AY7>c=(;JT
zLb#(-wZIWTin%pa(xQ<>@Z3vY1I%_cMzRfL01QA~uxc%~*bFt88dbw^nXeRilm&nQ
zqr^()z=|aw(P+Q5sbE!O6Dg`i3W-Fug-8i4jw65!snL#xkrZ$5YPuh)QO*YfvOEu7
zsiW3n8NCERL5XZ?x|i7IxEMz$re-IAXZLdo3c40+#Wd9+)G&maP*<Q}2R*~ID3QpR
zR!DO@YhAsnhbayJW`P+ti$7b}nDd4LO+|Wtw_q+6mE89>l|?FqB80UqQTI-S(WRjh
zKw`!#7&0?d&q;uWor49_JYl*29fSoHE%<DLo^1|{i<DSAL>-5@qL8RtqX4zev9If-
zH4&S*8KeN1(L2yP<9M8Ldpe>N!9)r`vJW|x5@{k&m@(H1ZVS$LFY);Hh~rd2)$(p{
zJX~}E^fqe+a0}>p_VflME1tjg#00OdVgJ6$i>mi1TI{n{4by-3-FG2<#k$^U@Q?_m
z!@<z~&?uamET!Osuf31|@qhU5aXg+(fd4TCZy&p&plS`OIz<#zDHDnSeQkzJC%A=h
zT^fj4t2>Bh6k>Fcr$BK3%L))NT3=8qS$>0VLUl@XQa4nU2y?)y4mSulh;;M7U|k@S
zVkhSb)n&)kSw(kcBK7%%t1T3zWQ4`mZ9y?~AdSIGLlMDYs;Hs@xK1<HWx-)q_!rcH
z{j#igc6clhE)ZF)9JoLL002RXPm>Az4F_d;C}ahC2lx!>mVL}n97I6WQJB#BY8l2v
zOBD45kZ!`l3ktgMaKSv1<hW79g}xMlyVr_qD;Q{abW;U~B8%a!Ln)x7WXg#R@fz~*
zd&27KLDX+{AndH#LS6Kv8Dc4rzM?g;a^U*GT8d?!v(4^CUbyBZBbh$0;Kq7*Nd+t|
zC;)IFfE7KV6tv}x0;P`D<sOBA!*K#2;JyqbN2G^*De8Mnx+Y60nCBC2Z%>$u3f@8$
zwQBY{&GP{q4o5@F!%YexOts+gqgw!kby=dKH9~s;P@sp3&1Wrw<2>Q!<_4#!px@tt
zY%MhNFFzel5OnZz26sk5!*X8m<k1oT`wRPS001BWNkl<Z=KJ4^f|?#I;(`yPxfG-j
z=6S~HbW&tq3J!+@zVq!rS5#Vbua!D{^oh)$+~|qJVYV4AIGv98?q7aOX}u1>1Z*iq
z6Cbf^PMRf=?BEBEhXW4B8TT*mfI?_X!(DgVg^uU4>Y{F)F_#JNz5hPmdj2+!$3qDB
zhg=V%8rBuZ<AiydAYF6N>V&vZHblgl6O$O|O9Rz{!oWNo046KBGm_|l9r^UJnV2z6
z6XuD)Q-Lc$BF^;yfeJt<m0}am6*wLyOtpafincCTigBWBgKa9IQV+%patBX<m$@!=
z0<aj;Ai%OVv8gykhFZ*R1urY4tPn6N#2nJcq2O({7U(J3H5tuJT@M*%pr7G}tr0zx
zj0mNmFLw|k%oPwm!^874LM0;1bwUxrR0*?GJb8S=@lep$1<hmE6DRMyq36!c9svGX
zvN7}XKzT&E68B-_Eev);qvb0`wKm!`I=8I{y9KOJF*Q)%<Cfg^;ybX8iylM-fE&bu
zTKc*IG!D~3&btbvjDQRnS}U-?4PU@qEq$o-n4}OelC5`eYv{dWJ)hAJ6W)9AF5Y_M
z8Rn^=7GNp`bt2R{VXE4eI%x#uJkO}L;?eC1Z@>LEp4{HxW}Z=Lcxn89#JzWzWk-4E
z|EW6Rrp{@)dvXqvMj1&65JG@J2q9rWU@*2Y7#rK*$l7au4&ZET<FGd11&lx>1q4V)
zfD#fyaWtA4P0l?XrgOaUg!=tab?TfuBk!&~`#f7iqwagpJ@-_4>kZ%c`z9)DlKhiE
zqV#iXpR8{Lgh1f?emVmtz-Ey`NogGP{;Jn&<nsmN;|*!l>y*o7tvGddQpo3V90-C2
zDhhCbWxc(0U41n<-^VNl?FzA45!MO`W0TlqHh?gKQe(!=^CWII6IaRl(xnvC>vf_i
zChz$;hO{YB1T;6ewipD$6nzymf(8w92<37);y5OV1B4RP>J2~;#u1+D;d&mGdVuG7
zxVa)>7*eY@h~t=QP$B30c&^8}v~v=?QkZm7r5)ZF{9mLZ?L$=BR7;|!D$;`y2N7YQ
zeL+DGVjNt0V8KjOtj&A0l9TwTqM)jME;2^MfvGGk^yjtiq9-ag0#hkm=|CJ%uP))c
zP|UeVsTW5aW3?S&PU?gRLm<f)^0<z!YV5kY3U3f<V0q3|;7BU!D&vzAv7(sE5fwsm
zz6a=2JlB#l?h>p<AWc9e3_@Jb#rIupPIb20%pQ%=l}JaBR7Oq$2hx~l`CJ|$pr@<V
zl*|^Us)o_7q?3@nA%uhDc|<X^b#~&r5CnC?jP|HV$jKA4Uc=0k<wno~Ns_u6thX#S
zfsL#Wz$m-|G_kcZg4vK<o9Zi;+Rysxjajag(7_k$G>?d4D}zY5jWO)4Nxr@^roS#+
zs>tVaR&XbAfXKKzbj%`?#9&C8j3X3*W3^Q!j62E9rR}2`mnaHp1a+j-%Ci1t<U9|A
zBA;_`9c}hHhM(DSbO|ge1+JrO@0Ch<2KxJHDdZ7RND|~l8Av9v&FIw6YlMvna!SWF
zmX5T%!B%jSO&$_Bj&`LuQsVnLTi_tg)YBHv;^G4JdYxLeYRr0x61uNKn#@&F&y;kW
z?2(|Glc_*1OyZDAEg%eHAo-j!>nYKY8;y`krLJ8v9@Og%;yAKyh%k&<DlZa5A-?aC
z&lix=(a&A0>B=ZE<O>BHSLgtt^l<$gD$q({qy+Vb_SJ_mG(trq0?*NhnUXGz<|NAh
zbUP=(+uhZU>j+AvJi@_fNjmE#i~_SEAXcGvq8tBh7=;w_IaUnzQx76rmN_v=w4gC&
zsWcO4u&q5^twfQ+-Lg?%FLj1b0)rA#;<;ML#F6&*I*vA>IyyUOE%;QcWupyhGg_Nk
zjuBKD6-o+x&!fM88A52Ha7<Q@E49$oKPli}sfdpDR$g)0r3fK$q@x9>kU9_{VuRO}
zI6@*E1FKQsczUzAu1gSxxW+`1wiLav*?NhfNlMx~hRj*JTphGaHx(4pjEyuk?u3v8
zk<O@JtkjsCs}e?}J~GF#hym+&6G96cv$J9=kP@J|9!r&spVFUgLTIQ2lPOS1WDBbh
zq0F2l=nUf#Hp0yyEKu6gF)~;yNZS2lcdRhpV4)8Wq`)yQn*?8O7oA8TLdk>Z=Zmc+
zq>KwnzecQsZLzWF9D@{53c^^Tgo6?eL97Tuh=e2-4q+4^LPabDu89Rmz!RFo#8HXR
zQXpOJwumtbi}CFu?Ho6P$euHiVarRBnIuLLmmriT{Pv||=O&5;QE1#p%0WtxP${I7
z)0(ua*Oe<h+HysdQq<~of+$9L1w7v)a(slNU3ogV7TLpB2#G5NwgL#|K#%mE)xP^U
z9q!~Bl^kZtUet$uWbZA(@jyx%k)mGLa>i8>A+&E=c)oT|NSDYI%#3hR(xY6fQE4pU
zSL-zD5kb(P5d@T4+dxX9YJ)I}sD+AZSYu>j29%=F2=qS49A4+r&PniIfBkj1u0*Jq
z&dxR(K^0U)BdF7;H*h`AXow;8dYv#IP!DQ2(q+x+RkXIZBV7;Iadj%709R@a)C%7u
zXoj*$24NWDdp<!Bnw<NzAY<Y{M`*$8x>_(tafIjjnaNIs7$jv<G*NVtjbj2!=DC!L
zsaGomK|l}$5G!i2P8Dv1fhI~eaEI2mRxW?VrL?uQP^$-cu16T^XGNxd&!k_VH4xWz
z34#FM^V1AFumL52)W2&|C^N{8<Siux(vwDeR882-L=tOxEeIpU+`<w;9BILe!1avA
zng~zFF`+hPbLA5#j}}gee^n$lN2bgX_V)yehf+AkEQu1osscx8YbBL`TJMf=kV+5>
ziG$REC%|)bz$YQ2N=GIk!f{hdbRiL*ub;sty$FNI(O)PWy|IPB)V-4kSC68jr1qPe
z=ZjT{!a+C=!g0+Sj5Hilc*IIl4-^ZP8le*8a$4)oMIO0W*DG`#@RTIR!9^hA2oJ4U
zA@ek17ZrlUx0+$fJs=3e*sj^o_$akIH?c@e@{WOr<?|`DE{Y@Tlhv*chkCt%bQ~Sf
zH9R4q(PE`^Oyw8B+(MOFZH}3xh+IBrAzZau-CpAw4HRLF*CZQMNV~rhVxBMzwYIDh
zSBPGRj?tK90x<(xTU*F^1|_A;^9dbCs?};Zj>Pj_gDlZ&Uc(gix(Nb(NC<@Hr7#x6
z*z`PwLcwrVXg_rnMVvf!nk3a*p{wp_SYUGo=6|-Gli=NU-ljAw$Cl%OO07nvQpRx{
zW)@}<!l7JQqN}?L;Yh+LBA54BzG6UYR#u|{691)82L6H>97A2_I>eza1!IG{iCd1u
z>j{`Gm-v!2eZ4|8k;o=mnF$COwJXswlNK9CljFJsVFc1aNkOd<;CVhltdO2ZBZ}}G
z7lp#l7paHZ1PfIN4unJ`+^@}#poM1`2RK4%#6h!x*8G9ww>UIfkT7(6=3YWVpfipv
zG*n<R4zznBh_qk}qnJ<$>h*wF`gpF3kgjo)8oR^5?DX<8t^p|w`Ly{CWD1;*O;j6U
z(F;Nu&$e(3Mm9k=825un1i3zVog|1xn!uov?JI??q+wxJ2`tEH;|9-?(bxrbQ(7Dx
zlytPqHj1s5W!)Gkqy2`cdSc1MTG-l5EkUFLeSbyj+eA>UR`H8%h@~0<4vkn)E7y?{
zYLP%zBBZQqU$2u4n?|xYLMspc*bKgZ%2+hYV!X37q#94ENEovc8bf_IiKRVEGUzgv
zQSw@nq31Y`hB~5*rIU~YCD?9_Kv5AEC1JB6%^uSSW+v5HHLv2t8I>d!CGUys{#S|C
ztJj<(1Z1jbx3{&kVf{KfJK71u0N-_~R?B#<Yy89!Gz=+GA`6Uw*Wcq90k2Rpr{8u2
zz84b<@cf+JWx{ovH1Z_VO`|6M9}3<^qoIE>K2aSu61cfMt+^bzT#hgdsn+T^ex3+H
zB&5N)Y7;07;|v&CWj3-sxB;n6RHeW~8=csUh?TCX;7<LG*|>V*+rnzG31mgTuIyzZ
zF>wvUR%}YTOGn`3B+`rVavolx2vQI^X42gpk(5MXsDYazlaZs8HY^SN%D$ZVPSNBv
zfjt*qjtN1TYcm?G<z-byh-=L>j*LqnK@-?pXy0U%AjM)qBN7NVkCd)HR7f;`le}Ow
zghaDUf;N_0RcP$CN}j<8!c<@;->b)83v)%r-cK_T!KNw4QADKlnhJtYkE`v5%G|rT
zK%t$}Oj>DTTO^r_I<ZF!GX+iAZzO_EnR_RKElQcaltPzxw^l_mKUymag8*;{V?nv5
z+4_)@FsPa-i486**)?XSRb+)7$`r>kYe!fxtX|hqoQ`wii%mS?<_tK?D3%%b4kRub
z(0JWuwZ%BI>}pgQ{tG2YEh=kq7)8c%NMy1-71pXv9xR0<Vlea~&0;g}M=C-J7wN*%
z(jp6$DcoF<MkMI$Y)9tuxJX>bL4+Ea6QfLgA+@^f_ExEXN?G0sga6Kws3$#_c9hIq
zNsv+_S<a!Ili&@a$eM)-uWK0S$f57&@N+pt7}1C&UcN-690HXHHH9(}$mApuw!?`g
zDnRHcvM$$dn362zV48kvkn-uDS-+zG4M<Z|(`(WwdG_^KDO){RB|!=)^kN6RMo5gt
zFxF~yq9|g1sezDAnieY{iOR<+HnP|wfz+jCsf}+`B^h$bX(BROyU{dketZ&vS9T7P
zXVo>|l+CKcBz9<F8ELcB_&#H$HTPNwN;n2HtgAvOTZc=3f0Se}B|^`Ru`senr4LJ*
z0b~W3(7_4|`O64TjlWKKVUudjAwi%6myY8!1-=q41RV@b(_a;6joSQ`k?qOk8kb3`
zb!E3un(b&${mkE3i-^RXB1}S#@v9;P4W;*h>-nfi5va%#`U{a^9dlH2`r6M5p&(8x
zo9JGo-z`WFUO!2>6=+wAxke=mLZr`~DC8+ann>Rl81p+-M$YEUAl2@{P^x4_HRiy=
zYE4c0khwzw2uk{qSS&&$D45i`(WT^dkX;H%5KD+*dTx;*1}~q-&*ee5I{iTy%(#go
z=tCs{002U9!RZV%CsWGHj-(wcW8K*2mFZY03?!{tk^8T<a}vD6V^buMtjKJXFbv80
zTH8(Xp~EPoT#E_gGUfWX_4Q>_RI?nIw)0A%ghQ<n5!3@>0a2jMyC}+NNSQ&FU`-}6
z6PpSP(1{fKnk2(0HX!vx2t;vYQfUoZ!7NDac9167K@fx?Q4l5j2V3n_DG>S@<2W>B
zkO1j6JyRmc^r4cNhADAKVkRY~o`$X^=5BL8W0O`YT^A{mwC#vQ#}-2S0yS@{rvpS_
z1+Xx|I6DW%q?9tbL#jPuOj)bJWCT_6Y}N&2`hXOMvle^rq$Q+4Ql@F3VGz*>G<>hr
zQX=Q)P;pFXkR(zjkTB6CD3aopLQ6?R_I)FGn{qyr@6HIStk6xyJkipV5pZ26z0@oK
zjq4T&;~x#fK=)gk#0WC;m#lG>A^I`vEt?vjoM)-_nB0e#ZDACq%yJ}0xSbuVom$sC
zSz*(xl_m%MnO8MUaHd%<+%uX;7sDCXr+gM?GTTLQYz{RDqX^HDbab?9SXZ@5d8tBM
zYpb3k!znFDtfwR^F)Kz*Y(bc@v|}6_21C`{M<RXbW#*S;Ofx#)f2Ez1;2l3bql1i&
zhwEy{6f#e_7P3?+lhEHeQW7bbYF)8ZT}lHtslPo1TU!HF|K5mWhDIkD9UUc(V;fyW
z2tyZ`Y<jE-loU_Y0~Fgq&T3@(^iIr;%mPi!)FjQ(jP{vYkxY1N;~0%421}G^v=4o-
zDyyCAJ0&oj=6gyZElO7h1f*FcDUv`XoC#+%3!pc<D?$(^8$h_`zWQFcXwZY}5{1SO
zj1DyF=fI9fVtZPuNMrt{W~@klvD_BP;>_|bSPcvlD2WX;Dl-C(bZknlE)NwTMT~0%
zmhX6$%}pv{0$s-cnI(c(n$8lHBy*(CVLCx#agjcjCFO?{nsugdOb(RfUQMiKM(FDF
z*3|Ec5a1Y&gD6C2bf!%iEibWnver&=V5K^ERvT|V*zCIkdw?Z#)WrIgy@N=x^A<yI
zmzPR6gh^aN=)IimFGH<i?{_ADfyn%#Z!MY*H=VwIM&A-`*sQ5IvngFyQY_|irN9w_
zYOMk)*4cJSBdWkaPlZWtN&`S7ju@qM{3yZS>s~mi5pc!?CH{5I4`D~=oZ2}F-coC)
zAp<d~p@2R*B(CRJ69N>zlh+!OwMBHsn-DsBnGiASP6_+pSm=Pne5FAypEt=9TGR0I
zo=t#gGJnm4YPpwc7is>EY00CY2;$g&E9lcPNhg)Y@08#T6Vt;_Ois|^OGs@QDP?c1
z%#KX1QfK&vvf6keCbYawOBD&@7)^wCqID+73z4DHv^~iFVWp@_HEJ0dAECBNqA18L
z!scdYED=b?zb^lSzHDB<iZ#poQA%-gWSm3CPg&onO$A1ipCt2?t%cT%oQRE3R9171
zjj+vDFlc^S%y>4VB+`56cT@kSGIN~O$_zgTdM>nb;9AXG$0D>ZQ43si3}psiyT=59
z35sbAOhdplZ-z97v~i(XL79A~G%k#E!>7-uGw)um38Q+;<gmpEIWtGX+#~6Ka?57L
z$E<myq3ah7F5D0w2&F7Bd3OHI$J6^{C2%rhDtS(Guf#QxabIcpqA*sXj$Sy9Bxuxd
zq#&qQiNipr0fZrngl<6U3|N7MMC!SR*q|Gl_`>b~|HpeX5!P7>(sOC&BzPmB*(onl
z?aL8Ji^<d*Tp9CTnn`bKZz1P<RO=1O<tj-)E14LSA`W80AfQ&O5y#rRQ*nsr=LqU4
zd59e#<2pzxAXx3j3PW>$FgSbtxhT;z6q(QH=go@ibWs|Vsrf!BB(Z``Ygh2`kGz+9
zBjA&t`4S^z6E+GTE2VwFO_EVRe-b#dPbsjpc{Xli`$J|kq=GnEz)2JKYZSy<$JEe0
zJwS=?TKiN(1Eh~g_yAse)y3TPxjzHoZ~pZT{`z0PMpE?B5*cMwp4H3y`M1CRZ*1SP
z-af<R^epfBwLjwHzx-YrLC7cn{)>!F%vk)jjn7G`v&f8ABt^RUgn_<ElW(86BBa58
zTYXL@ff7AGw&oYfc<J@2;uz2K4QGdkQrb<Xg}Od~T~`u?ff4S>H^@|2$|QZ==C~W}
zE9DwcU;~{Bqah2EYHjYPTc&)E6<BAB0*mD}r<EfU!EL*zpHJ#<wxmyB=Q(v7rCM+L
zx;dE4n$oGv4hd}03g+a$Dm@I-VNOvZ3FDq6HnL1g>269i@?<S0F0+IR);u6dz*cjv
z=z~&c<S8SAjN4E;I6`psD=y@1Z@e0SFW>bbyY?S3R!~eLU(#(OEP^LlDpqchuET6)
z=#<mszt+x8@Mit88FNMm?Q;<#^S+soj@B05eC?H7xOF}GT$;*QuGH9b@E8w1{wxcN
zWfIHT$Dx?d5jW~g&CQbYeInzhbPaSXVR+KoOEO;xS|BkowUBk2Dj*2E`m!a2&RX<l
z;Rqq<>*?an*IorevG?E+p5L`!FIwpktC)Ac?R8xL+A9Efaqj^>_tm?#d4|+}w^Y6-
z0aFxE%=?xJD_Pi%Ar?urQoF;<=X}pkg|7`xnN2J*S$tp@d_sav#>91`$=Y(XFD*&g
zT-M!bN2<NG#H!_e8l!7QC|edrNXh5^^5acH7vSKrAwK-GZ{v;E=rK8Za)htl`$O$2
zKp)yVn<%nbYC7*uHCZdj#J!-$D2ijGaGSE@tmUC%!;ohV2?>tt<48>o<VeTjy&H`>
zLby1^9MaXoCypar&qYNMp6}^<Cij-EhS5o(p?6kr8Lk0WrY?}!1e2_Q0hI~QBn3&$
z3baC8NHfC5RUxJ1%8Sn9*0)}lOg&%u_K(<i<YY!aHFuGc?OWFJt{Y!#$K{UiJjB7H
zrwn2sD?G5zpB!j*EL9RvPBgsCK`3+}EH*gy1WT-}#bh`?jAD}R%_wu&WDanl5i+{w
zoj4<F&Y(?1Y6&E3zR}PL6QPQAsYio8GPa%VOH7tyH{}zF&0|=LBimG}`zL!Z&ib#<
zP2v5&Q2Gb-;%L&o60;?ZDk~J-?XCRA2XCddR6OfWrDC2dFW$!Xt?T*x9p7PSYyuFt
zj$oj#2ethICZ?vS*J=iPm>HO+0ctiU(`PY4Hcs-xh1E)uD-*L(2&|c>z#=XXaPfH?
z`KwR-Dga-(`$1;r%U1h~;+T^o<3v$RBM3M-JjP)EGPBguMW5Df%4i6XI?YUXl0*b6
zbFEpIXzU4%VEQ?cxhCy@#;i<Wc!?;Hi7Q1J)PhQs3<~-5VDx>DmSR4gc@>!gihAHW
z+FQ72+XeuJ$0qsXzxx8kLV=c2fmMTjI`|rdoEjaaqqSg&W%S~Aq>JNf7BC@o?wZzm
zHPMntFp~*Oo6?CFp@o+jp(YZISEt}68D&yPTvx{-T-T-1(1ljVPoHLXdWvOz%UHg0
z1=4XS7W0OQ%xI8Oq~<T03@JG@5|=~*`;r1Iyi;kdNRi^5^&uPTu~(@;OYWU={Tcx#
zQi0Li(?w5byB+`czU}q=)#tu$c|#JR?K%!WbHi)s>S(jqww4MM3wkcCA2#uEnsx0+
zNfc{RrbGZL%O;n6Mwsu?2p1EfHt@AHNUq0CANnaPoJsq2nk_WlO^Gt3Li*^{+Ir$@
zN|YXi(Cl!rmMe~vCSxR+;_RMEo5E%*n&qF3J17y`*OQiwH2tpvng7*xZX`Kz#xx--
zbj{XJgs$oFjn`dmg>EAV*tPE{a|?@fceZo>=5_d<OEI704X?h8fBX7<`oj`hTZ(Mj
zw4TAiWlT;^vAD2kqPD5f(K+`SGyrM9C#&=&)rYO%wJwDeT9o9sJ5r{zWct+BTC)B3
zJ%_fIqSo9@(CN8d`?&cRKTf03APhpf+FG@HAmM}n8;y^NZLlX<sAM;^9?hmX&l)(%
z0dl6_DXYEP{+Meu8Y6)rY13Oe4z3hbYBj?Zph4o@nT_7r-p0B$D>H&!k8|>!%LkU(
zYmc28BStW{ut>RF!ErtQ>>s|$%=|P_9I<i38iV362oy8KNd(&py~NcLnfWx<N|gAE
zlhZzPunM%s<Oqr5Xy2es12@wcg%M+8qfDG0WBI@U8#ixaVR4bA@)E^Dj@FhIAU1+M
z<6l<-GC?<2x_~BEiQ~vnhNN?+VS{@7Q#~LH5zDIUA{D%`#`ZS7ov|(fdb>M##f6*s
z$@9CD%?H4%F1wiCu8yW_!!Wd%`xH)@!WM;)gd)*k({Wd43L}wnUR#29VV4?-J1i*&
zl<Xa=i7JioNst|6#y~4eDZT8Om6z@B0-M_HdR_{dG<S*<_++M~ZiUQqafZB7iVR}}
z>g6P@Jtf82@BJs+IaZ*E?ZQf)Cu_dwYm!9>TQ;n=pZ&r&?q~mz<0JvN?v8do`hj<H
z;OI&2yzdbc0R|ysgpAm@dO7RYTud?NQ4a!U<`&p{;26hFjoFP6E9mX&V0nKJ2pAe2
zXMVBF=5;ICzIi>a=Wud(oTp#doAP{_36WCZxegbdw~@80mQ&2<Sgceza$=Yx$43Cg
zV1F-LGksXMY6Wk8-75jX(G#NtVMu33EB(FQ#Bs#X=s4v{&6@R&Bk(<k?OQjpe4v+{
z=TWXyIX*PX!J|X=-~hc3yV_dm>+J#rBc~@>ESFiodO2G+uEBF0hEGqjbMN8Id|-u(
z=XspJX${N!d&%c>R4P>tpB&-n@ez!x(E6>UbZBcWvT@CF`g?m=Dp%Nh_yonQ#+&nK
zZ7Ete1hKLVaLanTShs4Wy|%Nxl`AgV#^~r6-@WfaoJ%g^>Q`RDx;1?qICO-$#U+Gr
z=<evCx2F@OVC3`^<!Xi1gZ-=+=wo52%-(}X>1b=Gr>h;5V0?O(YPH7pEo)i3a)2<3
zIdWo{{YOs%P%PxR?EKAicXlv0zr>E04zaMfgzvgq2uBf77_qFYg{^D0bL&m7qot*l
zp^*vh{O$ux&&(184F(4KDHijDjRv6kKCFfmD}3MM{LLE}?C&L?^I0laI5srG;S;A4
zC6ELG(b?WcU$^e#==cOnl{)KJFK5e!wRo<>$muCwc<GQWAD*~6w2##YrHn?KZEwEj
zN}k!dhen`d9fiEln~X~*+p?S@$$s-ZmkYP9XT?Atxtvd>TI1Nz2#1ahnP)J<%)k<*
z6l~qFnl&p2DdzK3sx^kk#@ToDBw=7I4{LD=wr*U*T61l+-e6>Gl6^;x(`eMK{7PIB
z8`rL6&58k9N(E3bx3I+F<EJ<|GESml3js-m6UTKpZ{r$PFJDH^jQ^3LQI4D((fqk0
zl{-L_aF$ZAVa-Z|u2GyEIZeG0WHwMnX3?BAnKW^Z{#`g{!J9lxvM5qb_vNB~xePsB
z!eo@(XL4qizxW@wQ>oUPKC^sTH@Cg(Mwaz-a#p(ucI`jP?RPy$5bBcv002Yubyr=&
zEpK`a0Czv|V=madj!o-UHht{P*IvoLeC1wy`U@0;{XKl()*I<+Z$0a4hDOKv;y3T(
zmg`^5_N^Q2>z7}&mCG;M3cz3f^X*Jb&vE&MTe#&-*8uRvuYZr{cOL)&u5{S6eic7|
z>kTjKY8jiD<_ll@4pTF8W+(-hUATpt&Aslr|6$JGvVkq@S2um`H7AGpm)q~wSz7vI
ztXVb4ZST6VNjnF46R>Ch5&r$o?-2wM0!8ddF4($}_ucYl!=$F$TdsR0$4`x>AC6<<
zIMAbIGzSN*TwHtAC0udw`S#KaHm~J^&1;#Qp5@NF?q$_LH$VT*>jC)c-S_d#j$H&n
zgYBCx;q7nHe#_hMx}OWr+r))i52abX001BWNkl<ZHv(|v#4vjf9O1&P>$&AkuLa<q
z2Oi_H?ORy2yx)G;8(wue-@5-HX6EL3-z_)LQY@tJz4|gf{kc0RSL>i6d{^*+pSy*1
zt5=*g{%?KbEBXCTeTMx<PvAI$70U-ngkYKqrr5M@HMiY*)634`==c<$zvEt}W@gPR
zf(y59;2m$d7JzSj=SN(4-bS`=Skv^mt1r8NfBe#&O;~o60Y8}%JV~YHY-?>P^7>a@
z&ixPn1cl-auYLukO#hQ+^-81tZ(6sCUwGGz|KU3Px37JN@yRKx3APpseB|ff!OFp9
zXI($PSmrC=et<*AhEYIUsl+e8_id~k?0ea3Z@=e34jvl<V8uWmA9%-G=zF=n4ZOJT
z2w%SI0nMjv5Irjg`uNa$-rD3!N!rPg(|q=hds$p6pY>iMIN$pESM&O-F9YD&UHdtB
z{3K1WAUkGf2v?Q5O_4A2{(rK)JRar$v>6>fTXPKK=SisLvOkk{LBa>${Z`)cx>vGl
z`7)9dwp^*Ec7eIy6&G!@LU(Lpn&)2J$F6;c?J0HP*7aO|(I&#6PS~h5;W2N1<Ez=U
zZY5zDF~68j#`@LE*|KgqK~N(K>*Vt;AAaxKtk8|3n5mgLOPH~uznAr^`l;3H>FJ2B
zEKsf0sn+T=>UH8MF#NK*=?Hp+ibC4kihS_B>4uG>h?&`Wdq55Jb@PGuyj7=B2LWND
z(X`oadDFFQS-;x!Whv8_6>MF%iblOo7&K@p<@xaYZm~l5@bMvb?B37p`~m<MY~8?(
z*S(4;42YtD_SORLfBOwq=*F>Pc5VTsVC~Am%v5Vy&jhHB`CG->jIAf><EC%bTAg}5
z;Jj_y(nJHmcYShxPV*#W(sbW><Lj-^1voK0N*F{<CiczOzlK%I`>EFIdaaoD*6Uu)
zFTLj$T8ahc7ncZ(@3*B`;Oa}aBbB07DRaZ?uCzjTW_F$fhfi|S94@`xoxJ<)HxPvp
ziwjF8*pm{iBLrO??R@yXZ*QK%xdl6igUfpOrT5;P5|67CL7@A19a}f7Icp9#tXaYN
zo7S3rlF?4%)NIdg^MglES|M=VD=(+5r9?+t3)fzy1xgTx96mm5uh$r2o$}n#-pYr5
z_Ga6M@QgkT^mX&W_uPb1iZG0c!icxO`C2P<C#PrGbKnT0<CB06x?Xk31tzr_Zn^%|
zR_IR7%(3UdF-FIy(rYh1pD2ikf|x5V+-8OD=)@GyzPOh?2aeJ(d+efZ8@S@)ZDt%|
ziupVrdH*d|=%)Kr&-coKKDMl1oysE9l1k54U3{Juy8Dlu;4AlhpD+js!+<CVb-{)x
zGO6K_t+Qr1EfN@-@hP86JI9)9>4LC+UPyf@na&F#c<71ec<(J*^C=ecTz}0KTz}0K
zRBLq(967;LFTBJ{2ajcZMv6P{dx!%^j?>fC!DBz&VKU7W>sPPfcYo#m0Bl~niYK0a
z0h@|xnv{}<e)0?tJn~a&wFWo8=^EbfnkxZVHQ3LKFC8R^V_tRXm3ATS-hY@cf9rcR
z8UeoVapN0a&5m9BIB{x>r=HuzhP5mCtq=bk0FONREcgBJ$AD<cD6``eMg)xpp6hYV
zRhL*4$F98x`O-J;B?v+~+FSX^ZSQ7ze;<R(dO3f~dUn2ah@>P*wl5Dq@igCm_z9}D
z25-ONI$odjW%&R*_Z&be#kH@z%zn>(Km0KdKJrr#kk94#-CzBAmi2b?s#jdheLs4F
zP{mwx)#bK~$;sg{{`pJaq+G4j-Pz91-h4e<H?GA@g-uBYG!i0GL~+O+ci+d8&+X#(
ze(g2@o_uZ(U%&T<xYA+SvOWg-Qw{aRi6MNqK(0OC#PC$e=Qw&|n8%*l!NOvh#ia_U
ztWQ#}vU~1-h(~_<ERO5(ryu`ST1!O=`5cvMjW2xj+Z;G@f-M_1@aw<uPCyHiYNf)-
z<Hy;$X&s=2?mv9~8|-;$FDFh8anlX2r?tJEyYGJ(-}5OJOK8lhLmUSPp^+xnTy-fq
zGq$_;ALdKnyq|g_pslsUuiy4gmiPBExU7c@w{2$E{-b9FWb}G`jt3uohDxo<E!V$>
zH@rr>238I(W9Lf;Q=hP-iC97dbIY!)lOv~@onPe2OU}plJ>GKNtMFW1kO1J}pFB@T
zTMHZ4t}uJg0U?pD<h55_ny$lrhxy_+ze^(s>1b`^*KT`<?Zd_AZRLf%2T{P*jcWjy
zo}K5<{^{SfLL%Ubi!UJO`#k>KZW0{sW@C{}&o1yse}8)t73T8on<(US{P>xjnzJGd
z_}2Z8u>Z&jx;xu=?3ovcqnLcY$eI-c{N@Mr{B2&hiYK1gg%FZ!UwKJppB~{$cim6D
z-oW=gZhHNzcz*YOPMjLGF^_cB2)3+W&3kTogB`!m-|-#7FjJix%|>VA3P#Rk4Grsd
zP-kYi{pZ^`X}nhG+Tew<PF``w55Q9|yu{b;{lQu8ghD>Y#piG4Bk%tiKK?83qob|G
zzNdga2afXCQ#-Ze-<7ntw>Al-QZb(j{Y?AL4}Z+v_dP<TRtEul4;@dxvyjt+Ct&-w
z)O~RG{f|%&LX?1dBjm38AL01$7>?tCBW;n$q~Bo_6Plnz0#8X=l8!4Jm-9BSv#;Oz
z-5*j90u+L|#WMFl^b`BumW^w5pviHY%$a*1c$jZ}??;p?+DG=%!DE@e<Z&Dyg<wlY
zP(J?D3-+2?BjANS2LN3!YQ<nbQo3wezs6qkwR?Za!jdL&nVOmBp(mb8J0nb~dFddf
zt2q~hKu8y5FwC~!DmJWhfRMDcr@@|~p<!OyvmfdBw6vtIkSCscfq(q`9qih3h$F{N
zF+MqCGLX{y-uvJqJowmCgpnc)BPOP1?0cX2!Z$c@cnBd}hDRsu>%Q-C=-@$)A3wpO
z(K6fHT3NHakD1vSgyZtyV^49<_a8wBNn1xJ-95bs$03YjTsMc59@6pHwlST<yTAV!
zwMK&&SgJI5;L&I8dz;s<q0xw`)dI5KgYW+6N$&l@PqphqIP5(<WZx?li@1Is>3Zby
zMWo|Ws|Pr)XA>5(?RyVBX*I*EF4@lI7oG=bbN)w9?$m@w$$Z41Vm(*e%=!Sh^ZrK(
zV#wu-RB93TXZo;h%X&O7kC)5q=LOo^T6onfE~34?4bRK-?4H9s{`@||2o@H~3=fYn
zJEtwHw$>t>R`oGCG0E8J2_AX!1s;EPuf;`6$Hj47_8dCOV^8lyAn<ZIJjY>asbZg_
zrBnoio!-7B9sj$&{}@3dL<&h5gxvGMqYRCl&hTlct-r6E55D^*q?Alf&+;#~-`!-P
zK_(`JYNDq64_yl9=;l2)AFqwxsx#lv0f93`p@N@0w~J?Y?c<`Yn>c^-I<{_HODO|W
zTC-w+58V1zKK;2n^fxFN9O&b<S6;%#bt~!Z>cnx*I4^`Y>Cb$YiK*EHVMeSJOXYMz
zQ`|#LUr!eR<!X(|nR$EKrM0S(YPN!`fuW=F$^zM&3AQm&UyY3D>DI!hT&XfSw*Z*T
zv{-R+__X~<Pj?rQ5}1-vX<w%2G3Zt#f@&?haCC-G6pKtmTk)H}{Jy5%X8nJKVu5-P
z(c7g>y;{A&iIE9n957hQAj&?0L}4gAO?127sNws*PGrbvuR0);aY1G7;`upV+_Rfl
zDXzLa^$Q<5I%L+3P65RPKeF>VJv*O?o};Umm^L{*kB}~o<IrfN&t0ihICSs`t5z;&
z|KSs?TDcs@k=*vaTlj_d-ptYCr+DnC9en2pkArmS>+PdZY(Y9MF~+xQ5GOrmY%A3o
zlQRnhQLGC>3dzaQ3HzOS&*9l;cM!!9o7be;{?QX7G#WAaLY^p!ngomxf^xa4=|O$n
z=P*>d7F&!J2FZNRFI9Qqv1fSO8(-CwLHNB#o~98rkIm8JC)lxbH@Tc|A!(IrjhXoh
zVH8s-F9I%ykEK5S&bAh2W)_IzkVl`~!Moq~dR)ih9XDLd&%F6sM#rbvb>KMnKk_t3
zjvnXq*lA{FX1M)Z-{lj(`5`>l<u^X`Za(%w#lAzwdGx0{c=V|k>FVwx=X(gHQ^N<B
z_43*)E@9)^74&v?oVB+#Y|JGH>((t%sn(d7n$Z<m$e@;#G7vb~<O;aq+N-Q!{rY!*
z#DY11)fpDK5@`2Xf_6wW=S;B8Tzs~c_n&O%CV1oj*v}E09r7|UHtKQAvoF5H(=Y5n
zN{tS9<26^>z}5OSE9f+wWmFs8*TpM9ad!eO?j9gOfZ`5Cic5jwF2$wA-Cc{9;_mJm
zT#E%KxI1s2cdh^D`7n3RId|{hUUO$)CmUDW=tNnKVOX7~$#j=SjwL<+dW;W`AgKjQ
zZ)3L9vCX<S9t3Ra=5Oo#YIVwSv@<K~Bp*LNUit^hb2dvCRm$}T5^~sgs0n~7Vq&9t
z-j~+55X|>DVvy@U=yjZKdCGdEE7XJ_5m`3{I4C$3*a@JG^<NkKAVa1k)|!8GQhUE2
z=r2>az@E&Us3=RYej8OKn-U`Si5$WazzBdy_6e(~CUVVu2%;27EV8mSQ$j-e;3yQM
z-|EH*_Kxxq%DHvW7j0jg+}dgyuwP_x;5chR7)iy9@iizcFpYix=PL~T3d><ilBm{X
z;Vrxi^_4CEG-em8><Gx_%b`MzZD}H}dzDqUla6M)glAwZV|1J*DhmYn0Zsjqd7SAf
z0!jQxWd)}v8LM9sDnlnJn4f-5&1~IVn+z&fxvk@9R2oQnNq_i0z=tlL?dSVp&MGT9
zT4}!AP+D5|!yjzQEN-o9;L=oM$1QS-{rcFq&g?zB-YvLy3Pna|o0;9b^Lh@$6F*ve
z#;w>}zBl+gTi4K`Zu<HwfQ2>j;Q08h@b`i8k^C4TCH#=5yFq1a>9?mH_nv58dTZ;w
z7cUeB&iD6iuM01+ITV5@?}VR4?20=pLsr%<dD{nqHrmEvAp1*!wbu!<yIJ#&zAGqh
zvtIPE?)>@Y?Z4SN_F}VLVzQj=cUz~GU#$~IO)osySBvXgqOtzalu(fqkH_Rr;Qp2M
z8ig4Qzw{1HI2ajCQ7FoN@4-w7%A&<PdsW}6$GUe?j#F%{ue50JDuL&JiQ&m4RfJ#A
zjVU}hoc9^Nyi`tE0`{`VZ8Nh|ceD5m%;|SuLi|Qza(sUkIuR`VfIrlW#_n#g*-50i
ztg70$VVavl14hfDzVP16vMN<1fsuF$TlhQ0y?qd7Hf-}=xFUs$JJDauq6WaoBN8;k
zk|$R`qT1~L(fvkHM@|y3z(?SOn55G#yOoocWn$wUE>=Cctt5(^IN6;o!-IBbRX(si
zi|)&&+>R4_$)j)_BmC@v9ZVumcRfubFHaCGJ(!xEU8qr+0NG*Kbq05u(D$px-88uB
z=;&rlekvZMUu^cmQk6jsdKd8ixh^qWV+ED8B$!8-bGT$v1?j_MT*XWQpsv2Y)^vsU
z=F}%_GY<GB5%O49haVT6r(unar}fR-6_IvHURK*f5Yj`9{5Nq_J~Ae%@OFHsX*)jR
z;NaxD`yKFg{nk&SBXtiR>(ZIoT4Oc!yoLM4vQ;@D()M10M25F^pNku%g9ByzaYV7J
z)GH=cnN*o}QQl)`j}Dcn0r)*5*Ax<cN>uY3?Mb2?7?M;Qm!MGG510Tm%aWd83>e7~
ztmagb6F%D29Gyek+vtu6FkYMAt+fQ98G+JeK%!IC<`MeW8)xqud*QcTB7XM<Qc`pv
z*CPb^w4si@J%=_xT)4L0-^pdwg2L2=bv)+XU82<V)ZAL?ep|@cc&&QH@`YUI<6zEa
zwEb&n#@dw*+iFM9C0{uwthr0%W$E<n3=cA;$`r>=cz0#qIlOS{6S&a+z*W)YPFC4=
z^)9?0Y|BdP`<SxU`@wfl`QYRLn#HGQeS33D;Suil+{5Q?H^>&~lm@!P{(b(EpYO?9
z==JBDcQxaQrnK9boFH`vz9i>=qz%2~tM$D`UAs$XhO<fWPcxZ{nvZ@SxvP<nJDJP;
zbYBWGsL;wj;8_U1Ct85VD)!fZ5DreEQKHUsa@|XmT+X^?1ysj+4LD(2uSF>;IKxRO
zU$2A;AyFqiR~3b&o&Ps|7>@erSHfK)1=11^NEIt1EpbMw+40C*r;ZT$F=s(HmGU`Y
zTK$`a>ocDm)e;G5dDQNy9Ywta$9%<NIl5)v?IBLrqea<{FB^+tI1RQ2^1^$yW;;&7
zQuJDSI>r|6sn?_IjX54>gLc^-yZqsWxS9ra_mMctAO*>pFd<IP;aZ50vi&KS)Bv4!
zqi3vY_2=AJli4$>pEQvhS9hR6WpqwKLFsaXy~!!c2KyD660P5jwMj%bM}wDO9UYy;
z7GKF3x1$xWH-nB0_!qN>Kjtg-6?1<Nnh5;rev5_{0T6NpAhN)Ytqk(tC9{7lFsS_g
zH+o-OPDa$)nz`9KODbO~A7>*|w2wN{?~7dHL99NLCJ6<J(cLUZZ9+**qdL>{%1rmw
z71-<c)VxGBcN)2A?=j{g>!Yx&n=+Q)qx479nPmd_4T{POhlUml9FveQg21Xj_Z|TP
z0)4bAjbDcLEUeF$-0o;XVgRPz-u}83%JsJiy<0A>KcE7bg{mz|<b#yR;=#eeC37&A
z)6<4i#zF`EkC4l-q;K&0$(46|=<-d^C)?KmY5`>HFE9B3Ax^RC*@4Le#*rP=nS>cd
zuiE_DgqIiJ9)^vx>IA(SA7=Q5i%td)hS0zHurPZ5uuwp}u~}`YQKt8c%^aa)kITu^
zzjE#Qjoa!ggGs)L_olr_H$h4^B)r?yW~nJVs1P-~k{e-<DCKS<Am%dQqlkQo`Ubn-
zX-c!h3ev-4i;7CX1=RnCS0sF>_IzR-HqKNIuaRt74~z&Tab~!kx1IRmP@&am6`Ofl
zYi24k7!n^KNZX?_(4In&eG5KA#uB*)_?=B*RXKelvG?h<UTlBm=rzG($mfAgs#8^7
zwd3xTHD~1#yb`VOBQB_4K>pmt$!0~W+o=1#pLV0MwJrCCnsg2w61>;*-Q*R%Ztd)0
z<!g(!u4qXlt7uJseVM}g!eTLAsannn1WQp{Xjy!*E|DQ-$X>6`xNk-jep<`mR;F^1
zrAQ<PUve4!0dWEc5|mHBoxUj4ynRP2L`8c)?Cf;}`}jKaxK!s#P=Q^h&p)L3dJnlD
z$9iT_+nUKF6&OF!e>|?wn6Kz@)c0N=yaf-?)A0*sKRnRU74thfCH96WUyR$oc6Gd5
z+IMDSlqRcbGu4`oqxv4dZ(P3Z@HmZu3-(^$xmqTL{3!u-Y(+><_YddsU6=Om*=+!Q
zbPjZr-gR+7<f)_4d9y+B%GIsL%0tAy=|Sw}q4O2BJm_65oFuPf2XmG!D_@}^-tn+X
z9|E$4a;Ukz?|Z*Hvc^JjMw;vl>5X4bshO$J*)xVqG<gMOi1WpEX#4!_#h*nZW1IM}
zFvcGAKIPN^o1MRNS2u-ClX&#fsfK_2<K3row_9Bj^_J!Ny%g7G;=C3{r$W=Qa<bS@
zjP@p0GX*?Q{ekYVN46cSpcKrL!utHag^oKn?`?4rc}-2hLe;om9TXQxh82l<s+JpG
z9)S)AC&xw(_n$^JF>Ac%-Y5%quB_cspLV8As75F2MZ2xJ3w7R3xs*}(dD8P^d5iQw
z3U$jWD?`MpW$>Bl=;-)e_W$@OGyX~xM#fqg#R>MGF~I|XT@vs6<r0{sO}wcAD1TD3
zyf7W^78wuge=aQ{#@C$6j@}EGm&0>bIQaf4;^tb}`-o_<!;!T#1>?Wh?-0Mo>)VxE
z3V6fa+3Fezn)aWry)T{pChVW4%U#^+xVX6F@^u=+;~Vs-o%nP9JGnCF_aN?j-H>Ah
zE2=L89GPsTC)H*AY*r2bgTo=jIak*>8X-S6HsK6U)Bn!zmCaiI{+WHZOE?0~Sn~SV
zbX}g=X-eL{dTgWD7`}eLbL$LKwC{0tHn+^5slAji>N{R<i2==fvv%H{Wc-*zjjI?P
zdjoszKeVy?UL*2)?RruXy#0vBBXnNLVET8-s@~hz=+{T#7hq$XY{0Nri$K%n56#Xa
zpVPKeN<qffTk_rMV_i!|g1eseXA0-b2;MJ+%y`5|Oq8KL8|Y#`6g#-Nxs{ujf9oi7
zHeGwZk7Z$FJ-=sP?`3YVH@gg;D>JP1Z|%4{DB5d&2#>I|w%uxcIXhiy-{Vl5alUeK
ztFpT1dO3*kd(Vit-g3%G;RhvYs357zVaAtt`EgKI2=TqQ^F5hwtTH;5LrS?mTlwfo
z)cKt2#^VFI^}WJV!c?A~n;V8g->IY`O)@2+8e#8`;8M116j`cTMHOmTpEa}lWRMy7
z(T+ZPX>(2v!YN`<d+Twv@`*g9WAhoL>a+k?pcOB>JoT|!$5p12`{{LFNTubwUwaP-
zqCc^57tXb{Sn_8<mzVPR?dlxv71ETN68)SrGu-N2qKbvUVeg9A;(Asd+YqHFr;Rg|
zil!$q0iEk^sQeTVsiU;iOT83B2|bFdv+CPA83l!rk#AgsakL^V#oV(L<O?N6i@5ZD
zG<-?wHucGD^mzZ#a~*<>kbCX%4*Za?mzHDL=O|R*0_XEhWNc1&HvK^16|TGXq@#g;
zRqZ<W$?!Qv*~#p&+XPbO^-5VlHZwIPC++pOomICXvZ6w1fDDhJkU^8{vmfH8upVMa
zQd5O^y@siiRk*Rdf#%G3T~)3nxDa1TaKVdh-T`m4vg{O<Uqo8o8V%BRhkKfuYW%x0
zq`nmCek{lLs7(0jY|7mIpo{b39#Fb~ei4)Npzqltu-N9y(|I=0sN<$FP2qiK`L|xc
zwjA;00OA(`-@pyFI-|CYYckluyd7`Pda~cUxVhmWyoD3W<}_LZ9N*5O{GRdQgLOq}
zT*MLXVkBFL?4Rn%y73Z{v&&Q26x(eobam}=4r^>LK4|8v&=1;b^4_U<v_0nUVhSEq
ziaN_5%-MZdFz65eC2Z%p#q;m^IRtXpnPj?~VpFu-+%pvKI)Q?3{xbTYsUELq6k2lX
zw~z9&>E|1@B~Hyw=0Zl612ydQrjHT1^q(u}^n|<z02y;DV3RYe-F>s@omaYk1HY*0
ze*!0Q2hFp^<Cm7S&CJZt^%jzEk^U^e6cm-XU7S*>2cs`{b^WqhJ8#dlm2Mfrn_hG2
z?^D><#g*NNeAo6&I$!xn&E@2R+ns)=3=c2S-F>mPM$=y<cX4an+M~69Y>v5@jL8um
zRkuW-Y+S#8<9BhuJ~cHZrRgT<Gb+G{uV!m+WEb5ZB#G-LSD4uXMA&FylYuV~*m(x?
z>zNTW@Lb~bwc8V3yY7CC-g|Iyb*)k_xe)ZbAfYQZ&!`|H<sTmuxyCw>k&~q~oRo=V
z;JwNWkBj3}$_9z%t0-6gK!~OX3T=`AI+>y^fQNl5v)ej<=d1z3-ii9HH=IJcNZw*Q
zVp21uJcsBQ7@VGm`1#b-v(^W00`GLtJmxD5hLc${j$oqLaK)2qR^2l3J0k+OUedw@
zl>;kO!;1|U2a8``&|D?(lKFDGF1<Zly!Mav2Mm2~GQgdW8`{pq2$XLBp2daFiE<=S
zMN7W?&d(3<7QSA8?2vcUEDq8dAejxVsLREp@A;B&2U1lnog)$8?>kaJ%}P*(dhol<
z*$$dD$iA&8!TeW;lUNYTJUz3j-0=l!FY@};^;qz#26pD>doB3%lH-%i5b3CgH8_5b
z_3BIX7@b+QV4h%m@^nJ|)NSZX0dYpj3tfN6@7(M62|2D0oBS$wJ{v9c^vKsK4euFw
z7WqHlh4%ok!1qen@yT~9&*+%v?)B>1F3wAS<bYV6_U@x2fZt_v<>kK$A9Eouz~Ix>
z{i-*tBP3Gzfh)q0@#MKXUm>;rr3gN>4|B|_X{NptiKeepoz9kGSpmIJBELuF3DTd5
zy4=t94YUi5^$n9NtFk3ppOD`T6q}`HXD!@Xv>0s2#B{7tkk&Iv$K*iM$i1{#G#Lod
z(BZmZweyMmn6@C)u|O;(HW_%x$$l&}G@Q`u?wkDyl@Z_B#kEd_1wXVmbhyOw?;NSo
zpQQ$kiv7Lmh=!?U)!%v*TtH79Yxjy6{P?M<8T1@dx*Uk}CSr!RFvsVT!l*sB6H`dG
zPs?F2_5R68p4Qk~%Is6({fN)~nAux3WyJ~J!jP*muyk}xEHnO@4^ikD_`eTIO8HVo
z2@+M|b6IQLFBj;r*y<+oc>A&E(#bObIZAMR=i=(RVP<u1U{?{Q-ERDIxCAAd{38?&
z?!kj*3<PjDaQia!h%5$PFDx%iieO)q(==zkjF691Qo@^kzq>b@3Fhy)JFtX@1bKPW
znNGV{4qwkq&vvO?t>4A1WP@>_B4bhEz3HVTCHOe4rA7%vJA@?`nW^LE$vAGGabi+{
z0{2?*orG6-EBBr*`P9ame_QoAl8YD`yXL~_uKja8rZXDP?k*w2E}DeVPx>E!ukLmE
zI2YH$_Tc$n(%OA~EkK%>l!O`=vm#{>vO~Oox>Xaw29K6e_xFfW%F5O1819y*Z!rO2
z|E-6<>ffcs5vnDhb2n<Oc2HYd1iqjq6OI4`{`+7#3tlBIPM*<{IL4?zY@9;X=(RP>
zmR3O*#=lycLmDGS?%(6#6vZW`i3h+y$Ao$aQ&ab{uqN}UWndTeR8`phn_uoJ8qd%Y
zp0wAV-`(B4KTyswF3~HrUwYG#WA15|Y*iS}tlz`YbL;F<*T~sqOahxP?{lPr{=pQR
znp&39^dig8FXs334)pmDViAa=pGEH8Aun(J>*a+ayzpJKUUafC3W?;{#2A;55Trw#
zUQ27%0(srdK}gn1H>{(BO<-A9i+@tOB(+$j(%ESnD8EyKDItg%y`_RB4j3$MtCRWi
z^To>Pe`f+JaR&W+2L~D0zm{lNOTm#6-?^?nY5(BB`1nv1pc#8hTZ)vTGPDQ3iXN3|
zR-zMt?szbYIPju*tl*pWs{aUGe?EVm`oX^N!j7;o5olV_H!!TMCNcjf(D@Q=Y@Ge9
zX1quI4X|`-@eas-ygE3vh@et-1_=2*_07>J4le0V+2ZnySaf%RxNySd5aJ0C`@ow>
zxg6>rI*FmJr#0KnK^rT^zH3$Ajn<0wGnA3g$;HiedTPn8rVK$ezx(daGC4Wf{UUAk
zj|I`HQ2TNw=OmM*oUC=tF2I(Yc6nK6c<*AC2}ez>7JPoCG_ph5tVaR4bkxro!r8uL
zTV1tvacO|cU?`?%q?wqRO*E;BS=BR{nB>byTXbk`VoRp07fxAV2XXE=C6%Nh(iQD4
zp7)@Qv9eGF1$?F_aIXmX!dbC5Ij#D;v^MK}*m8iLK1}^j9H2wqOBc<yoHa62K+&T_
z0Y6aY04E5i_R?8^czRw+R~M~<8Aq(u&xt=}BHC3zaM=+cozV3Or8k)EoEkxec=H|+
zDFus*hkyKPmIV`sK4c&?FO@Z8VP^H~=f5%u$z-lIPR$C7$iw`YOsMAt#^WQRY)c(U
zYuUUAoKaFkPf#j6Jb|BiX(LyZCm{Z4j3}q4Z4M)?US}cf3Jl~y6@{M2ghX}r6dq}p
ziAxl+w+S=cM<OnfdL1(PIFk!A5wK<%mrsA|3j<*?hu7(}($ZE${)zq^k>`3?h;*xZ
z3wO={(Go2QM*ZEtIJ{^2njctV0Mw`VS64Sb!;yQ3W=Cc+N8}`Ba;@7La~%rSsMXZe
z(huWPUrhDu>UMEdIUB3G&K8NiTu)8hzo(0-EO2KSYV|o9897ETEm=D8$4pcxA$`zr
zu(F8s@xsED)+xPmrqB{ChU;uo_NZ!M&r7d#T=K#vTE!Tsj5uqdc%iD%U_@(LW@>I@
zagJE-XW^XUDdaDXf6li>KjTZy{^fzoZNF-Cq0_2X8w$B8lK^hiY|V3FPayYfOYQfC
z(ax6(<3qjW=JWHvwFD<N%Mu!AFQ?z^$BPyGQ)a|JCDAdL%pC#`F$!GHo%!JdQg0O%
zbT6qRPm3CqX|N&pr4lhRI=Wh&ZL9geUlrtx;z?ojhM!_1#370?6b|h<xo1a&Q=<j}
z^vRFw8j^wfx$1$UG9`tdbNAIs)Ex?GB2AK$2^qKLNgE2uCk6<9GhDe&uFZ>D>!L^t
z+*K6)1PiTAOhe;0okHtMLZz#}6tvf8sR}C-Bf3Y++bgpd8q1nLA`c&pq07rhY+uqk
zH3J;cMZff3gL^pgG^{tgDCE&hdl(9E0+(3`T2w1fJ>~<M@KIgr>Q%=cCE|ANv8Nr1
z<$j$uH%(9N+5@&^KIHz^DN(KDjh&{<VUNA^3CwR+L*q|rxY2+MOw=R>1{PPchdf@e
zb$Zu)GNDGLcJIF<Dx<PLbJPaQUZFZd8$HKl`zK>$i-u94=_F%v%0GjY{ocQlMn8c3
zU{ao~I-$J+a(%P@KjWrU;Mh9Nyy4*yxHUCDuT=eI(&OGyTvvukOpf(4kR*bQwXUgZ
z2-*WyWm1ZXhBjli3;E!qNkU~dTPiBF;)W+&^g{I5LSRjBZ$K5-&laBcX($Yc><Wd}
z$-TEIFa0t^8Tcs$O-m;{tOq+6A>#59Am|Dh{Bf|qFC(99j-T<G)5I6k$jS(7?fh!J
zcqu%S^@zEOp{P8m7{I_FK_m8sT1q7}RE0yrFwdS?qW`x)sxdwfh>8xA*#GT^&)sju
zKmW4Z59=<HwsTuQ7~7&)(D|AqlKr=SUih}>5qf>;c)fQeWPZvs`**Ws{nD$*x07Cd
zR;G@okh+G&-1bM%@iE4H4EgR|7&QRg^cf&u!n6acB^cnKh$6uZ0g0*7l$bU&)yc&5
zI@llOFlJa3sL>Er*o2Rpi65r%Q#+5n?U*2u^Y_bC6Rs~dcDBw~&3YSEx5-DV*t+@+
z42X*w+#dKDpGlB#kl5`Y5kCN;*J~mY=jqj?^%N&w5SHb>Tq%PsO5*P4Ilq)d`*FF|
zq?cuKHlb*8JwBMW)Gx0zx2QR3r<AssC+|fLP#4WGLf6^fXYDk9jHP_`jiFIu2=^b4
zQq<7UV65>6S#6Y2hXZFya);0^Scu+d%t#0rbCE~HI2ODWAAL+3h>J)0W4yUaCCcu>
zNvouqSi`V0bcr%gS~ss{LV{kTP|ImaZS3fnZ8l?E=dc<TygRf>JHIfWsz4_pS6y8_
z;r<WF{NTq5kQ5{5&A&XJD=(qCXp(5UvP%1Jk%cP<*!?ITcBu+9ZvOSrvdJ^fP;xE+
zhEEMiNdL6W2trC`A9QcorT}C<REsjN&FHn27-Omo*6E?<bKLzHL$4}4NC;wP#MqL_
zgk_W?t=eVKgnc(TuivyWqBYIIt<Yq4DEbs_vismeNJO}(wep*T(1ZZXXA_6Yw&^^$
z6y)$t<>Er;<G=yn*ldJg5YzFPN7M0JiL{ZF1%^r{$8ttZ8`ZMP(fu+|G41r$)KY+i
zZ!a?N#|L%*Ym!Jf*qmdrcUg=VIU)b&!FRdN75WS%(=zMZxPnz2OWYI-{_l4^I#o#4
z;WbwE^-@6U!YA`w{cvEEWj$%#3hTV)LaI_R18|g?xzDoatEPdz9O_<XPDZ+KW$!c;
zu(G0CR#6tOSSYMrKwUGO$Q_ey3M7qJRCapmQ<+NkkLn`^M4Qzz;y6#>N@5n0N7Z%T
z%+oFPZA2DU1zlxf$bJtLM*W(X#Vp^6dvP1=ukHRxgSdBK07)`#=J?8|!Xi!Dk&5C2
zsz;+udRzfc{#2?#Wk3&<>OdD}D>LzHx;{`}n6#YDo2FR8G=K>)^6&OU*-^>)P6`Q7
zMTD*Po#gn%Akm)mVN=sp;G|5oxZc+YMwid5pJ}{76fq>xQt^CziikW1$ZEt=y(q1M
z?{{|x3=|og9E{R7*J2AOtJhTUBTn;g$4Ai^$*83Gb(8&3`uWHV$OpCYqp2XHr_jX|
zi$-V<U6}f(Xxev-G{}&e%p^4H?=zWr^fAsGU0_+Jq0_}`aT{B^^C4<;PP+FWw&J$L
zc<Dxq&@n%LceIT2?Tq5V`{IxNq4zBeW?djFm%l_4jaSE%T12uX8!RS|7-=b*O*XI<
z#`2DJC!mLBPVR3okd#p;LR!Xsp{A_0n63wjISJ%FCDnP(4<n8ms9VOEmP#;a?ERPN
zus=X-7|tT`BrE7rKzkum;xu*Rr7v(yNTw5K-hAsZ4)S?WDI0cw+OqEx$VIy-`#mKC
za@lyZAbcVh4bc9~xMls5|03_3o7<4P&TkjJXur+{S|zGT#>wSm3z^6+;q!(ZZ#iZi
z%LFrS+Gu=XLP+UpycsTyWz$Rt6A$JdVytsK#u$E$rL4b)w81tpGXYy<+_L>VD6;}P
zMODeWZ!5Gn1asPs*L{0Rdbk!)2JN{w{aoABgv_Sy^~JR2Q9Oi@-_!k<L1XvD1=EUd
zE9eZ-!pOwrg9!z#5@~^DV6Ab1nhrJ$+Vd{TOpfIUd46|aMr}JdZ-_%`7e0^|RD=AC
z{a@LQPFaZ2M^vXU9y5PSZJ}6~TH||k14pX_1@mMj;%tB;aWqhR5z;6NUbTUIPDwip
zAh<pFC&qbMf~u@h2hvZ?+YY97Apm!d7bP!q<4ua<3q6=kL{oebXqAm_c)<|#_fys1
z_uoTQ+3*`K{WWFN;x^qCvUdtB<!a-&vbOW&au-)t^5?8-S_KQHENU8SM@L3T<-%y!
zav2pc*{-c3N(yTbGLh9SGpH4D)5n89<xnvnyx*BYU`m|za;Drd-Lwox@@f^oXgj-x
zP|+nYnnN<pLB!7e=e+=tW{K9-yd^7#xv%tJKoi;RpW2-5hPnH#ItJEGe&+Y0&?^B7
z=OWv!4aNo@2=k{BU0daG=?g6JB$a@q`9py)?qJL81XF%VqXO$N2d%IHTnpOya}eR$
zc(awem0(-`U(oL#fz?zB@idZuPnhTuP`m_NuUc3i+W7^_2|<#=<31f|9@#%sBPSo2
zdIY)*nbS5133s)$n?DWIfTT8wV~WAv59k97m=ps3s_6{#E-mC0zDHlj*l&i*yLa)Z
zY&q%7!9U9EZ4!2ZrPO#2%xXo8S8hz$o$2S@lXUK;VuRJzzH%>|&Kxv^Qp+0KUjVFG
zBsDlb{RS^hX7Nx^(iI+lWO9%{ctEzMMQ9j8gEGW#%T3^fn<d|1)7m-^E*~Q~KW}Y&
z4BTJt4Wn&>A({NW4jdP<lcg>H=85rxl^VxO5(f9Lmoo($$0lxm4mW*b2TXL0j3CJ_
zZ*+A_hW|5;x<it$R*}Y)E|8T-xA=llmmKBJl^w50hmK@|<1`R!N@BU(BcQe{_H%^0
zZ#4YPn?ziPs+yXSlM@QO95HokN216AVeBZW!%O=Dg<>&oCHUSxPnB}UR8trgaFW{$
zI$;^gkhR|6iAaBwaqlDIsN>0dXAR?7WLqfR%mHf#l(TQh1Fi>j4Rag4o4ZILf!me}
zDjbU|)T2c%0vOYv{=#^y1?>P<maVD4<73-84V$uZPU54f9Nph@R&hK0+GZ$-XJWn^
zRfvK%w4vpc;i~Zr@j?6a^-X2`Hk2N6ra7Ti4cKdSl*s(DR5g|Z7GN{3?7X_!$K|y(
z6Ci0Uk+@QpfKuzu{;d~yms2y24rOn`;2T$(Dscog)hO3Qwh+VtwDGqzhI>87gbM(7
zR9YEz#^7EY54t1)U>=oxr`(*e$=_JH5x3jA00NVg`Icl6k}n-Y1?;2;9QXsFTOOn)
z<@rPC^NN-Q20t$UxVf2kJ?R-<95cx$n;O_gjp!8*$h+>L_br$HL-gRyor{z;9(M=!
z@oz3C$i(d-VhP<LP8e#%9a*T10m+;nHbX$qRkZU|z)S*xuK22Eo-Qrfsyu4R(wTxO
z8HR9xHELqA@rK+lZo;~LcMLj~MTTUjU0K{}j&-7KYf5<jm&!1ch=Yz@)U<^-<KN?}
z0lWG^^s^E3ag`LTv<J0R=5F>MI=xKFalVu3b)CKayjGO^Bvr$)zIRxv#7Tmsy}F1i
zn$JU)LH3iGnJrXM=a+L{?ysGVZpnvdij0ibvI?7;wze=vz)XoLkeE|Ot%ij@+D90f
zR;+A@Yr3iX-#_r>r4UrcqUhWrd>pNzk%C4pBfA&EDM_UsR4daKdHGp#<j#T?Nr~C}
z&CGCMQqtGVfaYd?QjBIIr4bPV$>`dN_bl2O2?v2@$yI#BlQ1_%d8WC6GT>2Zx*lcV
zeTynmXwwos`1X}#JMNMbg@?qgx$V@H%D~JO!D{GQ-e9Y8<@EZ?fLMsL)sPXG!X)xj
z97FU$ABwgH2Zi~*Ozh6d1cir6RdtORzT}msP@NKk0;QByPS?t^*sN6{SftonufwH|
zW-wPz{jR%i0N$e_4u-7XGF_xl2HNR#1`U?0hpQHS#;A*ZeplC<r|*RFH)+!Bzo#-m
zj+u6iiqwitha-3{%Zl^!yjtsvX5e85CH38%9UNIwqi9f(_Q3oN+YAdegp~uEM@PB?
zz405G_4(d+e`GN3B!w-h2}jVtk_0b>iM5Pq7_1!CgZ(>t<lcn~zO0r-JaYUwlV>)8
zO_}|q70`kwy-o+?Jj2!fWYQf02VK60VEMBMs9&$McNlMQacylN^_?z49}8Jnc$=Yp
z!B7OF`9v1ty4-QGd;yQ_bYDrRM(JCbynLy2<d3IOl5^<SJI5-iREe$UMg;?3@cGL%
z6gt-nS1j{0sWWyZ9Q&4ck>JLzfipp(5NCwiY4q5Ewp_*;y=eg#pJ*G*jvK@D0^z3x
zcUx-YZ%_aDHc)qWTQgfO@PmHX*w`dz<4!D1TM(@c--)@(p(rog@yK9){1lDX(BMXb
zQ6!dIz&Yd1w1%%Ey99t_?0O)v70$_6@)~zKv6h?lO{?bEH4dL}yiejviwvWZtfeLB
z%BLYbr8Eg^+chtvgmCB4NNp|t`)B6t905{Fg+Zol<aWX3?IFReL&YQ+{cJOqqJaKw
zZP9EZ^bm16wVbWK`@WqCXykeDCJCb$Lt=>)mzfly52yCm8R*y5xKBgPqo5ZQZ2PF+
zbYo<<{gn3OrY3$>Vojo-1_HuWw-NKJ-BBcj1>?8z_P>Q^<}q;4nS%hFq!?)mbS{GA
zj5`&He5w2w;G^tpdwks}c51d$DA<iCoKArKh#)?~2u#YIwc95!fDaWb3LQbe{<aVK
zp(W7txi+q<t!)A>=G|+d4B@Fts2ZA$eSG(m@i8{4fL17WyFp6xJ^zH40UN}$cztaR
zCx6NP&{=d})fDYV-3S5ZPg5`{rw!d&Dj|24Qa58}y)b_(lYXj=#Bjneb~Bd_{iLuQ
z+74cGXkFa2UHwpPB+KYK=WYw25xi~&jq*<WZ)7t)*J?k}v^r*MVnuxVEiNxwn&vQ9
zvZa9e@f#Pp+ICvyl?~^BF?N3Tb{F|f4s0tEcPlqQhMtxHzkgYpM+YT4j9`MG=74HS
zU$si*S9H4rFfrMI2=@Z{T`$QdG^)T#FY~mvuBq!{gtUQUQ4GC7QarL%GCP<0n2~DS
zoeNG$0h<<~oJi&5<z@+Wah@)EztG<z`m$<?XDd&sjQx5aK}=0LbaO+YQYJsA{nvw`
zXp7T&v{XVGbLN=OG{8BSCd{(He*i5Zjt1kDk8MEoGy34#ZvvY)^Mud=3nyg^%iTRs
zJ&y|ntW4ovAcV6Yznr{RWz2!&QyMJAT7N$Y2L>ZMIzD!~8#01|Hhb>TjQ<=#!sz2_
z3oH+tU+Coc2l8<eEGNEm#UfP9CrX{SueR$rF&g3^Vm%!77l>vVvWcv+`?29TV+YzZ
z@EeZ&iJ)Cb`JvaLDgL=cfMxbICKwT@0;xX?vSh65jcS_%K~U+|WD1_Xzd6UNr!)8R
z`jAM)&UL|(KP9v8(n?I<krT(a`#tR%QnFl@$jq;74k+R%#AZY7M5fa2yPxICj!aXc
z&t9*gU5=zWp8`suV;{RF1cW5-yLy$eR60LgQFlzFeJah$BF|)&NeGn^SFh4&9X`L|
zl=T<N=2~6F`>HLCjwC*>p;<j&(^U1jc8V&z6kUJm`-lUGhQ05%IzGvgi&*O%O_)g$
z9%BSPI#`l2BZw0d)~=*?KuBw`Kq<4J6Q+*WtNT{MB8pEv%qw=DQ`>HlEK*Bbzi`Q_
zrfE`I8q?&-r@TA$r*S~FBJY3<W4spU`f2`;b#uW>B~iKfsvJS~jy|-A2mr|8X9$I7
zXt%>rDFV$l35Ac&au(7DEVi1arq88GlQMXYr(APL--HnHlA06Co5Va$-xtQ}O$aAs
ztA_XNFrYC_>v<d^^lrwMmy^?NQBDx{g;7C*bYtqb*(T6>M-EA`gsu>k4`enz7gJ|{
z6jpi%!Ar_4w=hXsKw!Wm7w!T=NYGF68Hy0T+m?%#25wsPEgv!^3@2{UM^7K{hEa_>
z*bm*K5f%JP8t&g=y)nW5H5wWCk!%SF1(|V?)YjDW%xkDWn9|G2)vj(V5`?6Yj^3j&
zM+S=*C7|fS5cg(~wB$2G-+F?Gt2!Dc4wsp>&I8*x>U3B&H0R$)mo71NtLNj)oc?Iz
zi!+<Hs_N(%o}Xuvq#P246fIK0cQ;DZ77jZFIPH^|dZEWkdKt>SuRLnS#O8^3HTV7^
z|G$*U?aqH&T!@v(xXNW7N(Fz%_?^`eh9xnbyPbShB$e&KqeX~Yn}Jf(pP45|aHJ=X
zi!9o^*48k)C(RPS7l;W$C1RDriBZDEoZQp(K%+FW!<UpGY25zEU}{p!oIH;0fk~@E
zhMj_uK%A|~husz%kjAeXpf01OIKrI;s6b?$_1S|U+EuV{#Tu8M0}vIOkC14ZuDrCy
zm}+>Gz)PDG5Y6+c!oVZWNMZBY1w%VqWzk=$SiE@Q=5NsjxFB!U?y~0enb6=7b-4H;
z{-d|h>Er0DxDl!>G@<DGQX+$@0-Z@>O`V`^O;214F*!2;N>Sj_cXNX|BP&%Y64Lv|
z80@4J5Fu+U*|=h&3AbpvzBn36$Yo}GcWnLj51n$PEIYhnp4Y=P<t;D6PhnBMJB_|M
zD<^l6?hX6IFnm(!;u#4eN4jDhk8OfN1+@O<L!?`um$zm003Cs$Ir^BX=#3MIcW}};
zYoe9OS2A@8Bl6aKTb)(R55}U;pon3N3T!(A>9v^DchaJ~JbgN7HEO~S!&;)sQn3bc
z5y78i7CAdP29q?iyHYc|zsVSJx!yKt8-zKIOda14A7N<e>zdfw_G)%vH#Rgk3zutz
zM}KCFm<b;Ku0@y1gesoD)TQm%8cwCMD(bv_M%CK-f!}KvoN$mxW2c6%mT6^NW&|R+
z97^LpLU&EefaQNVIy$LpukEz}<*gpbVFyXKNE&ctA-wAKKMd%|HX>M6tk_;IT377u
zPf>$REgN+8E>oE;dGIKFuFzXsy%ZucrIm7a|1EK={^~>dC_L^wO_RHlV*(!L?`-Qi
zIbmy8TA+VmY$MCbotm_ut%%YQ!~|%4v;7gU=@6)q$4PjMG;<z0?5<E7hx`>+I$m#;
zOv*fvDQPH;ry^+bTbzL5w4uV>$>u*(FR-3#JRsyxp{WzV%D>i?q4@5w7#v3=^qK*4
z`;@wJsM&U&;unEdY8{B)ns8naX{3pYz@ZIqs3QyJ0vTC`gh1YsOc<47JY9k8k@JBR
zI%ycOqtj+Y-A#q4Y#$BLcC0yn{#2+GHQgxcv{d+IVkl4YPSRIiK3+~qQ5E9I`mu4h
zZvKHSoPgXveglu=R^;4S3M80F3iNng_YROy@aWR&YSE1Cj18|Pkkt5ds>0&h6749$
zj{-}7XN@N*0^oG2jI3}VFzVpe6R3*;WiYPLpj=w?_ZFbdP}+xFTQ-u~*xGXvqd&dl
zJvy?Pg8k?}&_@~hh&gCuZ|i*W#2^08;cSBvsh4t|^n8T}u?V}sLU8~(4bTy6XmD-g
zHC|j=q6`1MV4YA9;V*0z(Ivq7-ICs<GU=i&Oq4%>l?zfYZUCAvScGOnM7l15zIwJ(
z<ZluukVR7n4{fKH%3kG{RbW;BJO@|Sr$<F$2xKAb?WUgI_DTJw5vkhd=I~W>lwdLw
zAmPl4eD>0ToEE7EVVSZqux9vWEAqR4?kRwPJ%f|xzSe9e9(?aPTqbqI=N{*(VPXF|
zr%@}~3NMZ&uGdvkAF4GE+NBSQHwR+)EH#JbH0HeAcinUefS^;Tw}7dSPXJ94ziD{M
zogTAvva+_WzR7)0&359vlTzbM;f&>Isuz385E*u1SJ5Pe9J7rP$AlaMFnz~#IJwc~
zTUcL8k$~qN_OV$2+URImc_nw2nZkg{<Omrr^{$RjdU+ACKDo;>d3qF*WjwZJpXM6L
zaye3*lntKD$;th_aIq4(xsOTjLQVh;p<C_dw-~9GpQulDgw%ARr6saSxU(hN_+)jL
z@)~1H^qmrSe;s;91=s|gFs#T1QY@Opy%EH3a@l_%z|5+i<ScPv0Yu=X^6#py0=9%H
zgp13|c^o9i1&RP`s0@yDxEVKXxG^vO_7Z;3#he;<OBS2#w0UOa($Z2s18NaozXd)g
zAj+~Kz0a}F0%ZKdG%G2oKHj8$0&c@HwM%`edQXICy>PnD+$)LeUW<i?rJ|Y4KF!5B
z9l8k%5VR-A^a5PG05d8#0RgIOYNWD>Tm*#D$LS=q;ZZJZD^w~zF`+V!=E_T7r@Tnw
zsqSweOVQBKB})DjMY};pP&5C-Guz%owvn5C3^=2v)dW=e4fu~*ma1qeG3!|W2FVNk
z1__v<=<4c<Fz(S<2)<?bN34J_Uf0|GUOqBJ+||vk5Gi?hX>Iv?eb%&<l<}_$GQlou
zHmWY5svCqvJZ?{wk2yMZmmfx!@z3kkQbU8!fr*K_TEQqx4fNvzAuf72V#elJNuJDK
zsous;@I6)GeqHN6sGCp<n{LkRThx1aaBpQ{8B-yiij1GNM`8->e`vN5|DOEkUOob?
zz_RD*31DpvJ32WI!@kw-A+;2XmwA{pQ~Q&{Fm0TwXuMobckCJw@F8V!ZP}PB?MtfI
zUk%-@Th?m6(5V@&g;VF}9}6{b%Xa6Yg`k!3u#8=&!fsQQ=p&J+>6Y*d6Omh_<kAbE
zA<>Jx0_~U)mp(OMbAhZ_Megbdgd9EVLaK=Pac>io_d