Merge from cvs-trunk-mirror to mozilla-central.
authorjorendorff@mozilla.com
Wed, 05 Mar 2008 15:00:01 -0600
changeset 12602 02bc7f0e0862d09a6e06967abf734b6b38c18324
parent 12444 73b61a5639737f5b9c5291be10a24eba9bbb56a8 (current diff)
parent 12601 a806ab205757e571c31cdc437b8a84aa5b23c312 (diff)
child 12851 eb6c4014c87751b4f48b0f52e5ae41b7427a253d
push id1
push userbsmedberg@mozilla.com
push dateThu, 20 Mar 2008 16:49:24 +0000
treeherderautoland@61007906a1f8 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
milestone2.0a1pre
Merge from cvs-trunk-mirror to mozilla-central.
browser/app/module.ver
browser/config/version.txt
browser/themes/winstripe/browser/livemark-folder-rtl.png
browser/themes/winstripe/browser/livemark-item-rtl.png
browser/themes/winstripe/browser/page-livemarks-aero.png
browser/themes/winstripe/browser/page-livemarks.png
config/config.mk
config/milestone.txt
configure.in
gfx/cairo/fixed-24-8.patch
gfx/cairo/quartz-get-image-surface.patch
gfx/cairo/quartz-image-surface.patch
gfx/cairo/windows-8bit.patch
js/src/Makefile.in
js/src/Makefile.ref
js/src/config/Darwin.mk
js/src/js.cpp
js/src/jsarray.cpp
js/src/jsdbgapi.cpp
js/src/jsexn.cpp
js/src/jsgc.cpp
js/src/jsinterp.cpp
js/src/jsinvoke.c
js/src/jsinvoke.cpp
js/src/jsnum.cpp
js/src/jsobj.cpp
js/src/jsopcode.cpp
js/src/jsregexp.cpp
js/src/jsstr.cpp
js/src/rules.mk
toolkit/themes/winstripe/mozapps/extensions/actionbuttons.png
--- a/accessible/build/Makefile.in
+++ b/accessible/build/Makefile.in
@@ -88,18 +88,14 @@ EXTRA_DSO_LDOPTS =           \
 	$(MOZ_UNICHARUTIL_LIBS)  \
 	$(MOZ_COMPONENT_LIBS)    \
 	$(NULL)
 
 ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2)
 EXTRA_DSO_LDOPTS += $(MOZ_GTK2_LIBS)
 endif
 
-ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
-EXTRA_DSO_LDOPTS += -framework Cocoa
-endif
-
 ifeq ($(OS_ARCH),WINNT)
 OS_LIBS += oleaut32.lib
 endif
 
 include $(topsrcdir)/config/rules.mk
 
--- a/browser/app/Makefile.in
+++ b/browser/app/Makefile.in
@@ -109,17 +109,17 @@ else
 ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
 LIBS += $(DIST)/bin/XUL
 else
 EXTRA_DSO_LIBS += xul
 endif
 endif
 
 ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
-TK_LIBS := -framework Cocoa $(TK_LIBS)
+TK_LIBS := $(TK_LIBS)
 endif
 
 ifdef MOZ_ENABLE_LIBXUL
 APP_XPCOM_LIBS = $(XPCOM_GLUE_LDOPTS)
 else
 MOZILLA_INTERNAL_API = 1
 APP_XPCOM_LIBS = $(XPCOM_LIBS)
 endif
@@ -232,17 +232,17 @@ DEFINES += -DMOZILLA_OFFICIAL
 endif
 
 ifdef BUILD_STATIC_LIBS
 include $(topsrcdir)/config/static-rules.mk
 
 DEFINES += -DIMPL_XREAPI
 endif
 
-ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
+ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
 ifdef BUILD_STATIC_LIBS
 ifdef USE_PREBINDING
 BIN_FLAGS += -Wl,-headerpad -Wl,5a0c
 endif
 endif
 endif
 
 ifeq ($(MOZ_WIDGET_TOOLKIT),photon)
--- a/browser/base/content/browser-menubar.inc
+++ b/browser/base/content/browser-menubar.inc
@@ -376,18 +376,17 @@
                 </menu>
               </menupopup>
             </menu>
 
   <menu id="bookmarksMenu" 
         label="&bookmarksMenu.label;" accesskey="&bookmarksMenu.accesskey;"
         ondragenter="PlacesMenuDNDController.onBookmarksMenuDragEnter(event);"
         ondragdrop="nsDragAndDrop.drop(event, BookmarksMenuDropHandler);"
-        ondragover="nsDragAndDrop.dragOver(event, BookmarksMenuDropHandler);"
-        ondragexit="PlacesMenuDNDController.onDragExit(event);">
+        ondragover="nsDragAndDrop.dragOver(event, BookmarksMenuDropHandler);">
     <menupopup id="bookmarksMenuPopup"
                type="places" asyncinit="true"
                place="place:folder=2&amp;expandQueries=1"
                context="placesContext"
                openInTabs="children"
                oncommand="BookmarksEventHandler.onCommand(event);"
                onclick="BookmarksEventHandler.onClick(event);"
                onpopupshowing="BookmarksEventHandler.onPopupShowing(event);">
--- a/browser/base/content/browser-places.js
+++ b/browser/base/content/browser-places.js
@@ -813,31 +813,16 @@ var PlacesMenuDNDController = {
     if ("loadTime" in this._timers) 
       return;
     
     this._setDragTimer("loadTime", this._openBookmarksMenu, 
                        this._springLoadDelay, [event]);
   },
   
   /**
-   * When the user drags out of the Bookmarks Menu or Toolbar, set a timer to 
-   * manually close the popup chain that was dragged out of. We need to do this
-   * since the global popup dismissal listener does not handle multiple extant
-   * popup chains well. See bug 332845 for more information.
-   */
-  onDragExit: function PMDC_onDragExit(event) {
-    // Ensure that we don't set multiple timers if there's one already set.
-    if ("closeTime" in this._timers)
-      return;
-      
-    this._setDragTimer("closeTime", this._closePopups, 
-                       this._springLoadDelay, [event.target]);
-  },
-  
-  /**
    * Creates a timer that will fire during a drag and drop operation.
    * @param   id
    *          The identifier of the timer being set
    * @param   callback
    *          The function to call when the timer "fires"
    * @param   delay
    *          The time to wait before calling the callback function
    * @param   args
@@ -878,48 +863,16 @@ var PlacesMenuDNDController = {
    *`         menu-toolbarbutton), false otherwise.
    */
   _isContainer: function PMDC__isContainer(node) {
     return node.localName == "menu" || 
            node.localName == "toolbarbutton" && node.getAttribute("type") == "menu";
   },
   
   /**
-   * Close all pieces of toplevel menu UI in the browser window. Called in 
-   * circumstances where there may be multiple chains of menupopups, e.g. 
-   * during drag and drop operations between menus, and in context menu-on-
-   * menu situations.
-   */
-  _closePopups: function PMDC__closePopups(target) {
-    if (PlacesControllerDragHelper.draggingOverChildNode(target))
-      return;
-
-    if ("closeTime" in this._timers)
-      delete this._timers.closeTime;
-    
-    // Close the bookmarks menu
-    var bookmarksMenu = document.getElementById("bookmarksMenu");
-    bookmarksMenu.firstChild.hidePopup();
-
-    var bookmarksBar = document.getElementById("bookmarksBarContent");
-    if (bookmarksBar) {
-      // Close the overflow chevron menu and all its children
-      bookmarksBar._chevron.firstChild.hidePopup();
-
-      // Close all popups on the bookmarks toolbar
-      var toolbarItems = bookmarksBar.childNodes;
-      for (var i = 0; i < toolbarItems.length; ++i) {
-        var item = toolbarItems[i]
-        if (this._isContainer(item))
-          item.firstChild.hidePopup();
-      }
-    }
-  },
-  
-  /**
    * Opens the Bookmarks Menu when it is dragged over. (This is special-cased, 
    * since the toplevel Bookmarks <menu> is not a member of an existing places
    * container, as folders on the personal toolbar or submenus are. 
    * @param   event
    *          The DragEnter event that spawned the opening. 
    */
   _openBookmarksMenu: function PMDC__openBookmarksMenu(event) {
     if ("loadTime" in this._timers)
--- a/browser/base/content/browser.css
+++ b/browser/base/content/browser.css
@@ -60,8 +60,18 @@ window[chromehidden~="toolbar"] toolbar:
 #status-bar ,
 #mainPopupSet {
   min-width: 1px;
 }
 
 #FindToolbar {
   overflow-x: hidden;
 }
+
+/* Identity UI */
+#identity-popup-content-box.unknownIdentity > #identity-popup-connectedToLabel ,
+#identity-popup-content-box.unknownIdentity > #identity-popup-runByLabel ,
+#identity-popup-content-box.unknownIdentity > #identity-popup-content-host ,
+#identity-popup-content-box.unknownIdentity > #identity-popup-content-owner ,
+#identity-popup-content-box.verifiedIdentity > #identity-popup-connectedToLabel2 ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-connectedToLabel2 {
+  display: none;
+}
--- a/browser/base/content/browser.xul
+++ b/browser/base/content/browser.xul
@@ -375,17 +375,16 @@
       </toolbaritem>
 
       <toolbaritem flex="1" id="personal-bookmarks" title="&bookmarksItem.title;">
          <hbox id="bookmarksBarContent" flex="1" type="places"
                context="placesContext" asyncinit="true"
                onclick="BookmarksEventHandler.onClick(event);"
                oncommand="BookmarksEventHandler.onCommand(event);"
                onpopupshowing="BookmarksEventHandler.onPopupShowing(event);"
-               ondragexit="PlacesMenuDNDController.onDragExit(event);"
                tooltip="btTooltip"/>
       </toolbaritem>
 
         <toolbarbutton id="downloads-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                        observes="Tools:Downloads"
                        ondragdrop="nsDragAndDrop.drop(event, DownloadsButtonDNDObserver); event.stopPropagation()"
                        ondragover="nsDragAndDrop.dragOver(event, DownloadsButtonDNDObserver); event.stopPropagation()"
                        ondragenter="nsDragAndDrop.dragEnter(event, DownloadsButtonDNDObserver); event.stopPropagation()"
--- a/browser/base/content/tabbrowser.xml
+++ b/browser/base/content/tabbrowser.xml
@@ -2810,32 +2810,46 @@
           var tsbo = this.mTabstrip.scrollBoxObject;
           var tsboStart = tsbo.screenX;
           var tsboEnd = tsboStart + tsbo.width;
 
           var ctbo = aTab.boxObject;
           var ctboStart = ctbo.screenX;
           var ctboEnd = ctboStart + ctbo.width;
 
-          // only start the flash timer if the new tab (which was loaded in
-          // the background) is not completely visible
-          if (tsboStart > ctboStart || ctboEnd > tsboEnd) {
-            this._animateStep = 0;
-
-            if (!this._animateTimer) 
-              this._animateTimer =
-                Components.classes["@mozilla.org/timer;1"]
-                          .createInstance(Components.interfaces.nsITimer);
-            else
-               this._animateTimer.cancel();
-
-            this._animateTimer.initWithCallback(this,
-                         this._animateDelay,
-                         Components.interfaces.nsITimer.TYPE_REPEATING_SLACK);
+          // Is the new tab already completely visible?
+          if (tsboStart <= ctboStart && ctboEnd <= tsboEnd)
+            return;
+
+          if (this.mTabstrip.smoothScroll) {
+            var selStart = this.selectedItem.boxObject.screenX;
+            var selEnd = selStart + this.selectedItem.boxObject.width;
+
+            // Can we make both the new tab and the selected tab completely visible?
+            if (Math.max(ctboEnd - selStart, selEnd - ctboStart) <= tsbo.width) {
+              this.mTabstrip.ensureElementIsVisible(aTab);
+              return;
+            }
+
+            this.mTabstrip._smoothScrollByPixels(this.mTabstrip._isLTRScrollbox ?
+                                                 selStart - tsboStart : selEnd - tsboEnd);
           }
+
+          // start the flash timer
+          this._animateStep = 0;
+
+          if (!this._animateTimer) 
+            this._animateTimer =
+              Components.classes["@mozilla.org/timer;1"]
+                        .createInstance(Components.interfaces.nsITimer);
+          else
+             this._animateTimer.cancel();
+
+          this._animateTimer.initWithCallback(this, this._animateDelay,
+                                              this._animateTimer.TYPE_REPEATING_SLACK);
         ]]></body>
       </method>
       
       <method name="notify">
         <parameter name="aTimer"/>
         <body><![CDATA[
           if (!document)
             aTimer.cancel();
--- a/browser/base/content/test/browser_autodiscovery.js
+++ b/browser/base/content/test/browser_autodiscovery.js
@@ -1,16 +1,28 @@
 function url(spec) {
   var ios = Components.classes["@mozilla.org/network/io-service;1"]
                       .getService(Components.interfaces.nsIIOService);
   return ios.newURI(spec, null, null);
 }
 
 var gTestPage = null;
+var gBrowserHandler;
+
+function setHandlerFunc(aResultFunc) {
+  DOMLinkHandler.handleEvent = function (event) {
+    gBrowserHandler.call(DOMLinkHandler, event);
+    aResultFunc();
+  }
+}
+
 function test() {
+  gBrowserHandler = DOMLinkHandler.handleEvent;
+  ok(gBrowserHandler, "found browser handler");
+
   waitForExplicitFinish();
   var activeWin = Application.activeWindow;
   gTestPage = activeWin.open(url("chrome://mochikit/content/browser/browser/base/content/test/autodiscovery.html"));
   gTestPage.focus();
   setTimeout(iconDiscovery, 1000);
 }
 
 var iconDiscoveryTests = [
@@ -30,20 +42,21 @@ function runIconDiscoveryTest() {
   var hasSrc = gProxyFavIcon.hasAttribute("src");
   if (test.pass)
     ok(hasSrc, test.text);
   else
     ok(!hasSrc, test.text);
 
   head.removeChild(head.getElementsByTagName('link')[0]);
   iconDiscoveryTests.shift();
-  setTimeout(iconDiscovery, 0) // Run the next test.
+  iconDiscovery(); // Run the next test.
 }
 
 function iconDiscovery() {
+  setHandlerFunc(runIconDiscoveryTest);
   if (iconDiscoveryTests.length) {
     gProxyFavIcon.removeAttribute("src");
 
     var test = iconDiscoveryTests[0];
     var head = gTestPage.document.getElementById("linkparent");
     var link = gTestPage.document.createElement("link");
 
     var rel = test.rel || "icon";
@@ -51,18 +64,16 @@ function iconDiscovery() {
     var type = test.type || "image/png";
     if (test.pass == undefined)
       test.pass = true;
 
     link.rel = rel;
     link.href = href;
     link.type = type;
     head.appendChild(link);
-
-    setTimeout(runIconDiscoveryTest, 0);
   } else {
     searchDiscovery();
   }
 }
 
 var searchDiscoveryTests = [
   { text: "rel search discovered" },
   { rel: "SEARCH", text: "rel is case insensitive" },
@@ -89,59 +100,64 @@ function runSearchDiscoveryTest() {
                                    (browser.engines[0].title == title);
     ok(hasEngine, test.text);
     browser.engines = null;
   }
   else
     ok(!test.pass, test.text);
 
   searchDiscoveryTests.shift();
-  setTimeout(searchDiscovery, 0) // Run the next test.
+  searchDiscovery(); // Run the next test.
 }
 
+// This handler is called twice, once for each added link element.
+// Only want to check once the second link element has been added.
+var ranOnce = false;
 function runMultipleEnginesTestAndFinalize() {
+  if (!ranOnce) {
+    ranOnce = true;
+    return;
+  }
   var browser = gBrowser.getBrowserForDocument(gTestPage.document);
   ok(browser.engines, "has engines");
   is(browser.engines.length, 1, "only one engine");
   is(browser.engines[0].uri, "http://first.mozilla.com/search.xml", "first engine wins");
 
   gTestPage.close();
   finish();
 }
 
 function searchDiscovery() {
   var head = gTestPage.document.getElementById("linkparent");
   var browser = gBrowser.getBrowserForDocument(gTestPage.document);
 
   if (searchDiscoveryTests.length) {
+    setHandlerFunc(runSearchDiscoveryTest);
     var test = searchDiscoveryTests[0];
     var link = gTestPage.document.createElement("link");
 
     var rel = test.rel || "search";
     var href = test.href || "http://so.not.here.mozilla.com/search.xml";
     var type = test.type || "application/opensearchdescription+xml";
     var title = test.title || searchDiscoveryTests.length;
     if (test.pass == undefined)
       test.pass = true;
 
     link.rel = rel;
     link.href = href;
     link.type = type;
     link.title = title;
     head.appendChild(link);
-
-    setTimeout(runSearchDiscoveryTest, 0);
   } else {
+    setHandlerFunc(runMultipleEnginesTestAndFinalize);
     // Test multiple engines with the same title
     var link = gTestPage.document.createElement("link");
     link.rel = "search";
     link.href = "http://first.mozilla.com/search.xml";
     link.type = "application/opensearchdescription+xml";
     link.title = "Test Engine";
     var link2 = link.cloneNode(false);
     link2.href = "http://second.mozilla.com/search.xml";
 
     head.appendChild(link);
     head.appendChild(link2);
-
-    setTimeout(runMultipleEnginesTestAndFinalize, 0);
   }
 }
--- a/browser/components/feeds/src/FeedWriter.js
+++ b/browser/components/feeds/src/FeedWriter.js
@@ -38,18 +38,19 @@
 # the provisions above, a recipient may use your version of this file under
 # the terms of any one of the MPL, the GPL or the LGPL.
 #
 # ***** END LICENSE BLOCK ***** */
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
 const Cr = Components.results;
+const Cu = Components.utils;
 
-Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
+Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 
 function LOG(str) {
   var prefB = Cc["@mozilla.org/preferences-service;1"].
               getService(Ci.nsIPrefBranch);
 
   var shouldLog = false;
   try {
     shouldLog = prefB.getBoolPref("feeds.log");
@@ -79,16 +80,17 @@ function makeURI(aURLSpec, aCharset) {
 
 const XML_NS = "http://www.w3.org/XML/1998/namespace"
 const HTML_NS = "http://www.w3.org/1999/xhtml";
 const XUL_NS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
 const TYPE_MAYBE_FEED = "application/vnd.mozilla.maybe.feed";
 const TYPE_MAYBE_AUDIO_FEED = "application/vnd.mozilla.maybe.audio.feed";
 const TYPE_MAYBE_VIDEO_FEED = "application/vnd.mozilla.maybe.video.feed";
 const URI_BUNDLE = "chrome://browser/locale/feeds/subscribe.properties";
+const SUBSCRIBE_PAGE_URI = "chrome://browser/content/feeds/subscribe.xhtml";
 
 const PREF_SELECTED_APP = "browser.feeds.handlers.application";
 const PREF_SELECTED_WEB = "browser.feeds.handlers.webservice";
 const PREF_SELECTED_ACTION = "browser.feeds.handler";
 const PREF_SELECTED_READER = "browser.feeds.handler.default";
 
 const PREF_VIDEO_SELECTED_APP = "browser.videoFeeds.handlers.application";
 const PREF_VIDEO_SELECTED_WEB = "browser.videoFeeds.handlers.webservice";
@@ -229,16 +231,29 @@ FeedWriter.prototype = {
       // the rules specified in |flags|, so we'll never "linkify" the link...
       element.setAttribute(attribute, uri);
     }
     catch (e) {
       // Not allowed to load this link because secman.checkLoadURIStr threw
     }
   },
 
+  /**
+   * Calls doCommand for a the given XUL element within the context of the
+   * content document.
+   *
+   * @param aElement
+   *        the XUL element to call doCommand() on.
+   */
+  _safeDoCommand: function FW___safeDoCommand(aElement) {
+    var sandbox = new Cu.Sandbox(this._window);
+    sandbox.element = aElement;
+    Cu.evalInSandbox("element.doCommand();", sandbox);
+  },
+
   __faviconService: null,
   get _faviconService() {
     if (!this.__faviconService)
       this.__faviconService = Cc["@mozilla.org/browser/favicon-service;1"].
                               getService(Ci.nsIFaviconService);
 
     return this.__faviconService;
   },
@@ -278,19 +293,23 @@ FeedWriter.prototype = {
     // see checkbox.xml
     var change = (aValue != (aCheckbox.getAttribute('checked') == 'true'));
     if (aValue)
       aCheckbox.setAttribute('checked', 'true');
     else
       aCheckbox.removeAttribute('checked');
 
     if (change) {
-      var event = this._document.createEvent('Events');
-      event.initEvent('CheckboxStateChange', true, true);
-      aCheckbox.dispatchEvent(event);
+      var sandbox = new Cu.Sandbox(this._window);
+      sandbox.document = this._document;
+      sandbox.checkbox = aCheckbox;
+      var codeStr = "var event = document.createEvent('Events'); " +
+                    "event.initEvent('CheckboxStateChange', true, true);" +
+                    "checkbox.dispatchEvent(event);"
+      Cu.evalInSandbox(codeStr, sandbox);
     }
   },
 
   // For setting and getting the file expando property, we need to keep a
   // reference to explict XPCNativeWrappers around the associated menuitems
   _selectedApplicationItemWrapped: null,
   get selectedApplicationItemWrapped() {
     if (!this._selectedApplicationItemWrapped) {
@@ -721,17 +740,17 @@ FeedWriter.prototype = {
 #expand           if (fp.file.leafName != "__MOZ_APP_NAME__-bin") {
 #endif
 #endif
             var selectedAppMenuItem = this.selectedApplicationItemWrapped;
             this._initMenuItemWithFile(selectedAppMenuItem, selectedApp);
 
             // Show and select the selected application menuitem
             selectedAppMenuItem.hidden = false;
-            selectedAppMenuItem.doCommand();
+            this._safeDoCommand(selectedAppMenuItem);
             return true;
           }
         }
       }
     }
     catch(ex) { }
 
     return false;
@@ -854,49 +873,49 @@ FeedWriter.prototype = {
           var url = prefs.getComplexValue(getPrefWebForType(feedType), Ci.nsISupportsString).data;
           var handlers =
             handlersMenuList.getElementsByAttribute("webhandlerurl", url);
           if (handlers.length == 0) {
             LOG("FeedWriter._setSelectedHandler: selected web handler isn't in the menulist")
             return;
           }
 
-          handlers[0].doCommand();
+          this._safeDoCommand(handlers[0]);
         }
         break;
       }
       case "client": {
         var selectedAppMenuItem = this.selectedApplicationItemWrapped;
         if (selectedAppMenuItem) {
           try {
             var selectedApp = prefs.getComplexValue(getPrefAppForType(feedType),
                                                     Ci.nsILocalFile);
           } catch(ex) { }
 
           if (selectedApp) {
             this._initMenuItemWithFile(selectedAppMenuItem, selectedApp);
             selectedAppMenuItem.hidden = false;
-            selectedAppMenuItem.doCommand();
+            this._safeDoCommand(selectedAppMenuItem);
 
             // Only show the default reader menuitem if the default reader
             // isn't the selected application
             var defaultHandlerMenuItem = this.defaultSystemReaderItemWrapped;
             if (defaultHandlerMenuItem) {
               defaultHandlerMenuItem.hidden =
                 defaultHandlerMenuItem.file.path == selectedApp.path;
             }
             break;
           }
         }
       }
       case "bookmarks":
       default: {
         var liveBookmarksMenuItem = this._document.getElementById("liveBookmarksMenuItem");
         if (liveBookmarksMenuItem)
-          liveBookmarksMenuItem.doCommand();
+          this._safeDoCommand(liveBookmarksMenuItem);
       } 
     }
   },
 
   _initSubscriptionUI: function FW__initSubscriptionUI() {
     var handlersMenuPopup = this._document.getElementById("handlersMenuPopup");
     if (!handlersMenuPopup)
       return;
@@ -1073,17 +1092,16 @@ FeedWriter.prototype = {
    * @param aWindow 
    *        The window of the document invoking the BrowserFeedWriter
    */
   _getOriginalURI: function FW__getOriginalURI(aWindow) {
     var chan = aWindow.QueryInterface(Ci.nsIInterfaceRequestor).
                getInterface(Ci.nsIWebNavigation).
                QueryInterface(Ci.nsIDocShell).currentDocumentChannel;
 
-    const SUBSCRIBE_PAGE_URI = "chrome://browser/content/feeds/subscribe.xhtml";
     var uri = makeURI(SUBSCRIBE_PAGE_URI);
     var resolvedURI = Cc["@mozilla.org/chrome/chrome-registry;1"].
                       getService(Ci.nsIChromeRegistry).
                       convertChromeURL(uri);
 
     if (resolvedURI.equals(chan.URI))
       return chan.originalURI;
 
@@ -1177,17 +1195,17 @@ FeedWriter.prototype = {
     prefs.removeObserver(PREF_AUDIO_SELECTED_WEB, this);
     prefs.removeObserver(PREF_AUDIO_SELECTED_APP, this);
 
     this._removeFeedFromCache();
     this.__faviconService = null;
     this.__bundle = null;
     this._selectedApplicationItemWrapped = null;
     this._defaultSystemReaderItemWrapped = null;
-    this._FeedURI = null;
+    this._feedURI = null;
     var historySvc = Cc["@mozilla.org/browser/nav-history-service;1"].
                      getService(Ci.nsINavHistoryService);
     historySvc.removeObserver(this);
   },
 
   _removeFeedFromCache: function FW__removeFeedFromCache() {
     if (this._feedURI) {
       var feedService = Cc["@mozilla.org/browser/feeds/result-service;1"].
--- a/browser/components/migration/src/nsMacIEProfileMigrator.cpp
+++ b/browser/components/migration/src/nsMacIEProfileMigrator.cpp
@@ -43,19 +43,21 @@
 #include "nsIObserverService.h"
 #include "nsIProfileMigrator.h"
 #include "nsIServiceManager.h"
 #include "nsIStringBundle.h"
 #include "nsISupportsArray.h"
 #include "nsISupportsPrimitives.h"
 #include "nsServiceManagerUtils.h"
 #include "nsIProperties.h"
+#include <InternetConfig.h>
 
 #define MACIE_BOOKMARKS_FILE_NAME NS_LITERAL_STRING("Favorites.html")
 #define MACIE_PREFERENCES_FOLDER_NAME NS_LITERAL_STRING("Explorer")
+#define MACIE_DEFAULT_HOMEPAGE_PREF  "\p4D534945•WWWHomePage"
 #define TEMP_BOOKMARKS_FILE_NAME NS_LITERAL_STRING("bookmarks_tmp.html")
 
 #define MIGRATION_BUNDLE "chrome://browser/locale/migration/migration.properties"
 
 ///////////////////////////////////////////////////////////////////////////////
 // nsMacIEProfileMigrator
 
 NS_IMPL_ISUPPORTS1(nsMacIEProfileMigrator, nsIBrowserProfileMigrator)
@@ -132,21 +134,47 @@ nsMacIEProfileMigrator::GetMigrateData(c
                           aReplace, mSourceProfile, aResult);
 
   return NS_OK;
 }
 
 NS_IMETHODIMP
 nsMacIEProfileMigrator::GetSourceExists(PRBool* aResult)
 {
+  // Since the IE bookmarks file can sometimes be created by programs
+  // other than Internet Explorer, thus misleading, we must first
+  // check whether IE is even installed on this Mac.  We accomplish this by
+  // checking one of IEs stored preferences in the apple.internetconfig file.
+  PRBool prefExists = PR_FALSE;
+  OSErr err;
+  ICInstance icInstance;
+
+  err = ::ICStart(&icInstance, 'FRFX');
+  if (err == noErr) {
+    ICAttr attrs;
+    Str255 IEhomePageValue;
+    long size = kICFileSpecHeaderSize;
+    err = ::ICGetPref(icInstance, MACIE_DEFAULT_HOMEPAGE_PREF, &attrs,
+                      IEhomePageValue, &size);
+    if (err == noErr)
+      prefExists = PR_TRUE;
+
+    ::ICStop(icInstance);
+  }
+
+  if (!prefExists) {
+    *aResult = PR_FALSE;
+    return NS_OK;
+  }
+
   PRUint16 data;
   GetMigrateData(nsnull, PR_FALSE, &data);
-  
+
   *aResult = data != 0;
-  
+
   return NS_OK;
 }
 
 NS_IMETHODIMP
 nsMacIEProfileMigrator::GetSourceHasMultipleProfiles(PRBool* aResult)
 {
   *aResult = PR_FALSE;
   return NS_OK;
--- a/browser/components/places/content/places.js
+++ b/browser/components/places/content/places.js
@@ -611,16 +611,18 @@ var PlacesOrganizer = {
    * Save the current search (or advanced query) to the bookmarks root.
    */
   saveSearch: function PO_saveSearch() {
     // Get the place: uri for the query.
     // If the advanced query builder is showing, use that.
     var queries = [];
     var options = this.getCurrentOptions();
     options.excludeQueries = true;
+    // unset expandQueries=false, which is set by the left pane
+    options.expandQueries = true;
     var searchUI = document.getElementById("searchModifiers");
     if (!searchUI.hidden)
       queries = PlacesQueryBuilder.queries;
     else if (PlacesSearchBox.value && PlacesSearchBox.value.length > 0) {
       // If not, use the value of the search box.
       var query = PlacesUtils.history.getNewQuery();
       query.searchTerms = PlacesSearchBox.value;
       queries.push(query);
--- a/browser/components/places/content/treeView.js
+++ b/browser/components/places/content/treeView.js
@@ -118,52 +118,53 @@ PlacesTreeView.prototype = {
 
     this._showSessions = true;
   },
 
   SESSION_STATUS_NONE: 0,
   SESSION_STATUS_START: 1,
   SESSION_STATUS_CONTINUE: 2,
   _getRowSessionStatus: function PTV__getRowSessionStatus(aRow) {
-    var node = this._visibleElements[aRow];
+    var node = this._visibleElements[aRow].node;
     if (!PlacesUtils.nodeIsVisit(node) || asVisit(node).sessionId == 0)
       return this.SESSION_STATUS_NONE;
 
     if (aRow == 0)
       return this.SESSION_STATUS_START;
 
-    var previousNode = this._visibleElements[aRow - 1];
+    var previousNode = this._visibleElements[aRow - 1].node;
     if (!PlacesUtils.nodeIsVisit(previousNode) ||
         node.sessionId != asVisit(previousNode).sessionId)
       return this.SESSION_STATUS_START;
 
     return this.SESSION_STATUS_CONTINUE;
   },
 
   /**
    * Call to completely rebuild the list of visible items. Note if there is no
    * tree or root this will just clear out the list, so you can also call this
    * when a tree is detached to clear the list.
    */
   _buildVisibleList: function PTV__buildVisibleList() {
     if (this._result) {
       // Any current visible elements need to be marked as invisible.
       for (var i = 0; i < this._visibleElements.length; i++) {
-        this._visibleElements[i].viewIndex = -1;
+        this._visibleElements[i].node.viewIndex = -1;
       }
     }
 
     var rootNode = this._result.root;
     if (rootNode && this._tree) {
       this._computeShowSessions();
 
       asContainer(rootNode);
       if (this._showRoot) {
         // List the root node
-        this._visibleElements.push(this._result.root);
+        this._visibleElements.push(
+          { node: this._result.root, properties: null });
         this._tree.rowCountChanged(0, 1);
         this._result.root.viewIndex = 0;
       }
       else if (!rootNode.containerOpen) {
         // this triggers containerOpened which then builds the visible
         // section
         rootNode.containerOpen = true;
         return;
@@ -205,17 +206,17 @@ PlacesTreeView.prototype = {
             Ci.nsINavHistoryQueryOptions.SORT_BY_NONE) {
           curChild.viewIndex = -1;
           continue;
         }
       }
 
       // add item
       curChild.viewIndex = aVisibleStartIndex + aVisible.length;
-      aVisible.push(curChild);
+      aVisible.push({ node: curChild, properties: null });
 
       // recursively do containers
       if (!this._flatList && PlacesUtils.containerTypes.indexOf(curChildType) != -1) {
         asContainer(curChild);
 
         var resource = this._getResourceForNode(curChild);
         var isopen = resource != null &&
                      PlacesUtils.localStore.HasAssertion(resource, openLiteral,
@@ -237,17 +238,17 @@ PlacesTreeView.prototype = {
   _countVisibleRowsForItem: function PTV__countVisibleRowsForItem(aNode) {
     if (aNode == this._result.root)
       return this._visibleElements.length;
 
     var viewIndex = aNode.viewIndex;
     NS_ASSERT(viewIndex >= 0, "Item is not visible, no rows to count");
     var outerLevel = aNode.indentLevel;
     for (var i = viewIndex + 1; i < this._visibleElements.length; i++) {
-      if (this._visibleElements[i].indentLevel <= outerLevel)
+      if (this._visibleElements[i].node.indentLevel <= outerLevel)
         return i - viewIndex;
     }
     // this node plus its children occupy the bottom of the list
     return this._visibleElements.length - viewIndex;
   },
 
   /**
    * This is called by containers when they change and we need to update
@@ -265,17 +266,17 @@ PlacesTreeView.prototype = {
 
     // The root node is invisible if showRoot is not set. Otherwise aContainer
     // must be visible
     if (this._showRoot || aContainer != this._result.root) {
       if (aContainer.viewIndex < 0 ||
           aContainer.viewIndex > this._visibleElements.length)
         throw "Trying to expand a node that is not visible";
 
-      NS_ASSERT(this._visibleElements[aContainer.viewIndex] == aContainer,
+      NS_ASSERT(this._visibleElements[aContainer.viewIndex].node == aContainer,
                 "Visible index is out of sync!");
     }
 
     var startReplacement = aContainer.viewIndex + 1;
     var replaceCount = this._countVisibleRowsForItem(aContainer);
 
     // We don't replace the container item itself so we decrease the
     // replaceCount by 1. We don't do so though if there is no visible item
@@ -291,23 +292,23 @@ PlacesTreeView.prototype = {
     for (var rangeIndex = 0; rangeIndex < rc; rangeIndex++) {
       var min = { }, max = { };
       selection.getRangeAt(rangeIndex, min, max);
       var lastIndex = Math.min(max.value, startReplacement + replaceCount -1);
       if (min.value < startReplacement || min.value > lastIndex)
         continue;
 
       for (var nodeIndex = min.value; nodeIndex <= lastIndex; nodeIndex++)
-        previouslySelectedNodes.push({ node: this._visibleElements[nodeIndex],
-                                       oldIndex: nodeIndex });
+        previouslySelectedNodes.push(
+          { node: this._visibleElements[nodeIndex].node, oldIndex: nodeIndex });
     }
 
     // Mark the removes as invisible
     for (var i = 0; i < replaceCount; i++)
-      this._visibleElements[startReplacement + i].viewIndex = -1;
+      this._visibleElements[startReplacement + i].node.viewIndex = -1;
 
     // Building the new list will set the new elements' visible indices.
     var newElements = [];
     var toOpenElements = [];
     this._buildVisibleSection(aContainer, newElements, toOpenElements, startReplacement);
 
     // actually update the visible list
     this._visibleElements =
@@ -315,17 +316,17 @@ PlacesTreeView.prototype = {
           .concat(this._visibleElements.slice(startReplacement + replaceCount,
                                               this._visibleElements.length));
 
     // If the new area has a different size, we'll have to renumber the
     // elements following the area.
     if (replaceCount != newElements.length) {
       for (i = startReplacement + newElements.length;
            i < this._visibleElements.length; i ++) {
-        this._visibleElements[i].viewIndex = i;
+        this._visibleElements[i].node.viewIndex = i;
       }
     }
 
     // now update the number of elements
     if (previouslySelectedNodes.length > 0)
       selection.selectEventsSuppressed = true;
 
     this._tree.beginUpdateBatch();
@@ -551,20 +552,21 @@ PlacesTreeView.prototype = {
         // is a little harder because we don't know how many rows the last item
         // in our list takes up (it could be a container with many children).
         var prevChild = aParent.getChild(aNewIndex - 1);
         newViewIndex = prevChild.viewIndex + this._countVisibleRowsForItem(prevChild);
       }
     }
 
     aItem.viewIndex = newViewIndex;
-    this._visibleElements.splice(newViewIndex, 0, aItem);
+    this._visibleElements.splice(newViewIndex, 0, 
+                                 { node: aItem, properties: null });
     for (var i = newViewIndex + 1;
          i < this._visibleElements.length; i ++) {
-      this._visibleElements[i].viewIndex = i;
+      this._visibleElements[i].node.viewIndex = i;
     }
     this._tree.rowCountChanged(newViewIndex, 1);
 
     // Need to redraw the rows around this one because session boundaries
     // may have changed. For example, if we add a page to a session, the
     // previous page will need to be redrawn because it's session border
     // will disappear.
     if (this._showSessions) {
@@ -585,17 +587,17 @@ PlacesTreeView.prototype = {
     // this may have been a container, in which case it has a lot of rows
     var count = this._countVisibleRowsForItem(aItem);
 
     if (oldViewIndex > this._visibleElements.length)
       throw("Trying to remove an item with an invalid viewIndex");
 
     this._visibleElements.splice(oldViewIndex, count);
     for (var i = oldViewIndex; i < this._visibleElements.length; i++)
-      this._visibleElements[i].viewIndex = i;
+      this._visibleElements[i].node.viewIndex = i;
 
     this._tree.rowCountChanged(oldViewIndex, -count);
 
     // redraw parent because twisty may have changed
     if (!aParent.hasChildren)
       this.itemChanged(aParent);
 
     return;
@@ -671,17 +673,17 @@ PlacesTreeView.prototype = {
     for (var rangeIndex = 0; rangeIndex < rc; rangeIndex++) {
       var min = { }, max = { };
       selection.getRangeAt(rangeIndex, min, max);
       var lastIndex = Math.min(max.value, oldViewIndex + count -1);
       if (min.value < oldViewIndex || min.value > lastIndex)
         continue;
 
       for (var nodeIndex = min.value; nodeIndex <= lastIndex; nodeIndex++)
-        nodesToSelect.push(this._visibleElements[nodeIndex]);
+        nodesToSelect.push(this._visibleElements[nodeIndex].node);
     }
     if (nodesToSelect.length > 0)
       selection.selectEventsSuppressed = true;
 
     // remove item from the old position
     this._fixViewIndexOnRemove(aItem, aOldParent);
 
     // insert the item into the new position
@@ -709,18 +711,20 @@ PlacesTreeView.prototype = {
   itemReplaced:
   function PTV_itemReplaced(aParent, aOldItem, aNewItem, aIndexDoNotUse) {
     if (!this._tree)
       return;
 
     var viewIndex = aOldItem.viewIndex;
     aNewItem.viewIndex = viewIndex;
     if (viewIndex >= 0 &&
-        viewIndex < this._visibleElements.length)
-      this._visibleElements[viewIndex] = aNewItem;
+        viewIndex < this._visibleElements.length) {
+      this._visibleElements[viewIndex].node = aNewItem;
+      this._visibleElements[viewIndex].properties = null;
+    }
     aOldItem.viewIndex = -1;
     this._tree.invalidateRow(viewIndex);
   },
 
   itemChanged: function PTV_itemChanged(aItem) {
     NS_ASSERT(this._result, "Got a notification but have no result!");
     var viewIndex = aItem.viewIndex;
     if (this._tree && viewIndex >= 0)
@@ -807,25 +811,25 @@ PlacesTreeView.prototype = {
     }
     return val;
   },
 
   nodeForTreeIndex: function PTV_nodeForTreeIndex(aIndex) {
     if (aIndex > this._visibleElements.length)
       throw Cr.NS_ERROR_INVALID_ARG;
 
-    return this._visibleElements[aIndex];
+    return this._visibleElements[aIndex].node;
   },
 
   treeIndexForNode: function PTV_treeNodeForIndex(aNode) {
     var viewIndex = aNode.viewIndex;
     if (viewIndex < 0)
       return Ci.nsINavHistoryResultTreeViewer.INDEX_INVISIBLE;
 
-    NS_ASSERT(this._visibleElements[viewIndex] == aNode,
+    NS_ASSERT(this._visibleElements[viewIndex].node == aNode,
               "Node's visible index and array out of sync");
     return viewIndex;
   },
 
   _getResourceForNode: function PTV_getResourceForNode(aNode)
   {
     var uri = aNode.uri;
     NS_ASSERT(uri, "if there is no uri, we can't persist the open state");
@@ -873,44 +877,53 @@ PlacesTreeView.prototype = {
     if (columnType)
       aProperties.AppendElement(this._getAtomFor(columnType));
     else
       var columnType = aColumn.id;
 
     if (columnType != "title")
       return;
 
-    var node = this._visibleElements[aRow];
+    var node = this._visibleElements[aRow].node;
+    var properties = this._visibleElements[aRow].properties;
 
-    var nodeType = node.type;
-    if (PlacesUtils.containerTypes.indexOf(nodeType) != -1) {
-      if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_QUERY) {
-        aProperties.AppendElement(this._getAtomFor("query"));
-        if (this._showQueryAsFolder)
-          aProperties.AppendElement(this._getAtomFor("folder"));
-      } else if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_FOLDER ||
+    if (!properties) {
+      properties = new Array();
+      var nodeType = node.type;
+      if (PlacesUtils.containerTypes.indexOf(nodeType) != -1) {
+        if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_QUERY) {
+          properties.push(this._getAtomFor("query"));
+          if (this._showQueryAsFolder)
+            properties.push(this._getAtomFor("folder"));
+        } 
+        else if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_FOLDER ||
                  nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_FOLDER_SHORTCUT) {
-        if (PlacesUtils.annotations.itemHasAnnotation(node.itemId,
-                                                      LMANNO_FEEDURI))
-          aProperties.AppendElement(this._getAtomFor("livemark"));
-        else if (PlacesUtils.bookmarks.getFolderIdForItem(node.itemId) ==
-                 PlacesUtils.tagsFolderId)
-          aProperties.AppendElement(this._getAtomFor("tagContainer"));
+          if (PlacesUtils.annotations.itemHasAnnotation(node.itemId,
+                                                        LMANNO_FEEDURI))
+            properties.push(this._getAtomFor("livemark"));
+          else if (PlacesUtils.bookmarks.getFolderIdForItem(node.itemId) ==
+                   PlacesUtils.tagsFolderId)
+            properties.push(this._getAtomFor("tagContainer"));
+        }
       }
+      else if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_SEPARATOR)
+        properties.push(this._getAtomFor("separator"));
+
+      this._visibleElements[aRow].properties = properties;
     }
-    else if (nodeType == Ci.nsINavHistoryResultNode.RESULT_TYPE_SEPARATOR)
-      aProperties.AppendElement(this._getAtomFor("separator"));
+    for (var i = 0; i < properties.length; i++)
+      aProperties.AppendElement(properties[i]);
   },
 
   getColumnProperties: function(aColumn, aProperties) { },
 
   isContainer: function PTV_isContainer(aRow) {
     this._ensureValidRow(aRow);
 
-    var node = this._visibleElements[aRow];
+    var node = this._visibleElements[aRow].node;
     if (PlacesUtils.nodeIsContainer(node)) {
       // the root node is always expandable
       if (!node.parent)
         return true;
 
       // treat non-expandable queries as non-containers
       if (PlacesUtils.nodeIsQuery(node)) {
         asQuery(node);
@@ -921,37 +934,37 @@ PlacesTreeView.prototype = {
     return false;
   },
 
   isContainerOpen: function PTV_isContainerOpen(aRow) {
     if (this._flatList)
       return false;
 
     this._ensureValidRow(aRow);
-    if (!PlacesUtils.nodeIsContainer(this._visibleElements[aRow]))
+    if (!PlacesUtils.nodeIsContainer(this._visibleElements[aRow].node))
       throw Cr.NS_ERROR_INVALID_ARG;
 
-    return this._visibleElements[aRow].containerOpen;
+    return this._visibleElements[aRow].node.containerOpen;
   },
 
   isContainerEmpty: function PTV_isContainerEmpty(aRow) {
     if (this._flatList)
       return true;
 
     this._ensureValidRow(aRow);
 
-    if (!PlacesUtils.nodeIsContainer(this._visibleElements[aRow]))
+    if (!PlacesUtils.nodeIsContainer(this._visibleElements[aRow].node))
       throw Cr.NS_ERROR_INVALID_ARG;
 
-    return !this._visibleElements[aRow].hasChildren;
+    return !this._visibleElements[aRow].node.hasChildren;
   },
 
   isSeparator: function PTV_isSeparator(aRow) {
     this._ensureValidRow(aRow);
-    return PlacesUtils.nodeIsSeparator(this._visibleElements[aRow]);
+    return PlacesUtils.nodeIsSeparator(this._visibleElements[aRow].node);
   },
 
   isSorted: function PTV_isSorted() {
     return this._result.sortingMode !=
            Components.interfaces.nsINavHistoryQueryOptions.SORT_BY_NONE;
   },
 
   canDrop: function PTV_canDrop(aRow, aOrientation) {
@@ -1035,33 +1048,33 @@ PlacesTreeView.prototype = {
     var ip = this._getInsertionPoint(aRow, aOrientation);
     if (!ip)
       throw Cr.NS_ERROR_NOT_AVAILABLE;
     PlacesControllerDragHelper.onDrop(ip);
   },
 
   getParentIndex: function PTV_getParentIndex(aRow) {
     this._ensureValidRow(aRow);
-    var parent = this._visibleElements[aRow].parent;
+    var parent = this._visibleElements[aRow].node.parent;
     if (!parent || parent.viewIndex < 0)
       return -1;
 
     return parent.viewIndex;
   },
 
   hasNextSibling: function PTV_hasNextSibling(aRow, aAfterIndex) {
     this._ensureValidRow(aRow);
     if (aRow == this._visibleElements.length -1) {
       // this is the last thing in the list -> no next sibling
       return false;
     }
 
-    var thisLevel = this._visibleElements[aRow].indentLevel;
+    var thisLevel = this._visibleElements[aRow].node.indentLevel;
     for (var i = aAfterIndex + 1; i < this._visibleElements.length; ++i) {
-      var nextLevel = this._visibleElements[i].indentLevel;
+      var nextLevel = this._visibleElements[i].node.indentLevel;
       if (nextLevel == thisLevel)
         return true;
       if (nextLevel < thisLevel)
         break;
     }
     return false;
   },
 
@@ -1069,29 +1082,29 @@ PlacesTreeView.prototype = {
     this._ensureValidRow(aRow);
 
     // Level is 0 for items at the root level, 1 for its children and so on.
     // If we don't show the result's root node, the level is simply the node's
     // indentLevel; if we do, it is the node's indentLevel increased by 1.
     // That is because nsNavHistoryResult uses -1 as the indent level for the
     // root node regardless of our internal showRoot state.
     if (this._showRoot)
-      return this._visibleElements[aRow].indentLevel + 1;
+      return this._visibleElements[aRow].node.indentLevel + 1;
 
-    return this._visibleElements[aRow].indentLevel;
+    return this._visibleElements[aRow].node.indentLevel;
   },
 
   getImageSrc: function PTV_getImageSrc(aRow, aColumn) {
     this._ensureValidRow(aRow);
 
     // only the first column has an image
     if (aColumn.index != 0)
       return "";
 
-    var node = this._visibleElements[aRow];
+    var node = this._visibleElements[aRow].node;
 
     // Containers may or may not have favicons. If not, we will return
     // nothing as the image, and the style rule should pick up the
     // default. Separator rows never have icons.
     if (PlacesUtils.nodeIsSeparator(node) ||
         (PlacesUtils.nodeIsContainer(node) && !node.icon))
       return "";
 
@@ -1102,17 +1115,17 @@ PlacesTreeView.prototype = {
   },
 
   getProgressMode: function(aRow, aColumn) { },
   getCellValue: function(aRow, aColumn) { },
 
   getCellText: function PTV_getCellText(aRow, aColumn) {
     this._ensureValidRow(aRow);
 
-    var node = this._visibleElements[aRow];
+    var node = this._visibleElements[aRow].node;
     var columnType = this._getColumnType(aColumn);
     switch (columnType) {
       case this.COLUMN_TYPE_TITLE:
         // normally, this is just the title, but we don't want empty items in
         // the tree view so return a special string if the title is empty.
         // Do it here so that callers can still get at the 0 length title
         // if they go through the "result" API.
         if (PlacesUtils.nodeIsSeparator(node))
@@ -1175,17 +1188,17 @@ PlacesTreeView.prototype = {
     }
   },
 
   toggleOpenState: function PTV_toggleOpenState(aRow) {
     if (!this._result)
       throw Cr.NS_ERROR_UNEXPECTED;
     this._ensureValidRow(aRow);
 
-    var node = this._visibleElements[aRow];
+    var node = this._visibleElements[aRow].node;
     if (!PlacesUtils.nodeIsContainer(node))
       return; // not a container, nothing to do
 
     if (this._flatList && this._openContainerCallback) {
       this._openContainerCallback(node);
       return;
     }
 
--- a/browser/components/places/src/nsPlacesImportExportService.cpp
+++ b/browser/components/places/src/nsPlacesImportExportService.cpp
@@ -324,16 +324,18 @@ nsPlacesImportExportService::~nsPlacesIm
 }
 
 /**
  * The content sink stuff is based loosely on 
  */
 class BookmarkContentSink : public nsIHTMLContentSink
 {
 public:
+  BookmarkContentSink();
+
   nsresult Init(PRBool aAllowRootChanges,
                 nsINavBookmarksService* bookmarkService,
                 PRInt64 aFolder,
                 PRBool aIsImportDefaults);
 
   NS_DECL_ISUPPORTS
 
   // nsIContentSink (superclass of nsIHTMLContentSink)
@@ -431,16 +433,20 @@ protected:
   void PrintNesting()
   {
     for (PRUint32 i = 0; i < mFrames.Length(); i ++)
       printf("  ");
   }
 #endif
 };
 
+BookmarkContentSink::BookmarkContentSink() : mFrames(16)
+{
+}
+
 // BookmarkContentSink::Init
 //
 //    Note that the bookmark service pointer is passed in. We can not create
 //    the bookmark service from here because this can be called from bookmark
 //    service creation, making a weird reentrant loop.
 
 nsresult
 BookmarkContentSink::Init(PRBool aAllowRootChanges,
@@ -1217,19 +1223,21 @@ BookmarkContentSink::NewFrame()
     frame.mPreviousDateAdded = 0;
   }
   if (frame.mPreviousLastModifiedDate > 0) {
     nsresult rv = mBookmarksService->SetItemLastModified(ourID, frame.mPreviousLastModifiedDate);
     NS_ASSERTION(NS_SUCCEEDED(rv), "SetItemLastModified failed");
     // don't clear last-modified, in case there's a description
   }
 
+  frame.mPreviousId = ourID;
+
   if (!mFrames.AppendElement(BookmarkImportFrame(ourID)))
     return NS_ERROR_OUT_OF_MEMORY;
-  frame.mPreviousId = ourID;
+
   return NS_OK;
 }
 
 
 // BookmarkContentSink::PopFrame
 //
 
 nsresult
--- a/browser/components/safebrowsing/content/report-phishing-overlay.xul
+++ b/browser/components/safebrowsing/content/report-phishing-overlay.xul
@@ -43,24 +43,24 @@
 <overlay id="reportPhishingMenuOverlay"
          xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
   <broadcasterset id="mainBroadcasterSet">
     <broadcaster id="reportPhishingBroadcaster" disabled="true"/>
     <!--<broadcaster id="reportPhishingErrorBroadcaster" disabled="true"/>-->
   </broadcasterset>
   <menupopup id="menu_HelpPopup">
     <menuitem id="menu_HelpPopup_reportPhishingtoolmenu"
-              label="&reportPhishSiteMenu.title;..."
+              label="&reportPhishSiteMenu.title2;"
               accesskey="&reportPhishSiteMenu.accesskey;"
               insertbefore="updateSeparator"
               observes="reportPhishingBroadcaster"
               oncommand="openUILink(safebrowsing.getReportURL('Phish'), event);"
               onclick="checkForMiddleClick(this, event);"/>
     <!-- XXX Bug 415846
     <menuitem id="menu_HelpPopup_reportPhishingErrortoolmenu"
-              label="&safeb.palm.notforgery.label;..."
+              label="&safeb.palm.notforgery.label2;"
               accesskey="&reportPhishSiteMenu.accesskey;"
               insertbefore="updateSeparator"
               observes="reportPhishingErrorBroadcaster"
               oncommand="openUILinkIn(safebrowsing.getReportURL('Error'), 'tab');"
               onclick="checkForMiddleClick(this, event);"/>-->
   </menupopup>
 </overlay>
--- a/browser/locales/all-locales
+++ b/browser/locales/all-locales
@@ -14,16 +14,17 @@ eu
 fi
 fr
 fy-NL
 ga-IE
 gu-IN
 he
 hu
 hy-AM
+id
 it
 ja
 ja-JP-mac
 ka
 ko
 ku
 lt
 mk
@@ -36,13 +37,14 @@ pl
 pt-BR
 pt-PT
 ro
 ru
 si
 sk
 sl
 sq
+sr
 sv-SE
 tr
 uk
 zh-CN
 zh-TW
--- a/browser/locales/en-US/chrome/browser/safebrowsing/phishing-afterload-warning-message.dtd
+++ b/browser/locales/en-US/chrome/browser/safebrowsing/phishing-afterload-warning-message.dtd
@@ -7,11 +7,11 @@
 <!ENTITY safeb.palm.message.p2.start "These types of web forgeries are used in scams known as phishing attacks, in which fraudulent web pages and emails are used to imitate sources you may trust. You can find out more about ">
 <!ENTITY safeb.palm.message.p2.linkText "how &brandShortName; protects you">
 <!ENTITY safeb.palm.message.p2.end " from phishing attacks.">
 
 <!ENTITY safeb.palm.accept.label "Get me out of here!">
 <!ENTITY safeb.palm.accept.statustext "Navigate to my home page">
 <!ENTITY safeb.palm.decline.label "Ignore this warning">
 <!ENTITY safeb.palm.decline.statustext "Close warning" >
-<!ENTITY safeb.palm.notforgery.label "This isn't a web forgery">
+<!ENTITY safeb.palm.notforgery.label2 "This isn't a web forgery…">
 
 <!ENTITY safeb.urlbaricon.tooltip "This page might be dangerous; click for details.">
--- a/browser/locales/en-US/chrome/browser/safebrowsing/report-phishing.dtd
+++ b/browser/locales/en-US/chrome/browser/safebrowsing/report-phishing.dtd
@@ -1,2 +1,2 @@
-<!ENTITY reportPhishSiteMenu.title          "Report Web Forgery">
+<!ENTITY reportPhishSiteMenu.title2         "Report Web Forgery…">
 <!ENTITY reportPhishSiteMenu.accesskey      "F">
\ No newline at end of file
--- a/browser/locales/filter.py
+++ b/browser/locales/filter.py
@@ -19,10 +19,12 @@ def test(mod, path, entity = None):
     return True
   if path == "defines.inc":
     return entity != "MOZ_LANGPACK_CONTRIBUTORS"
 
   if path != "chrome/browser-region/region.properties":
     # only region.properties exceptions remain, compare all others
     return True
   
-  return not (re.match(r"browser\.search\.order.[1-9]", entity) or
-              re.match(r"browser\.contentHandlers\.types.[0-5]", entity))
+  return not (re.match(r"browser\.search\.order\.[1-9]", entity) or
+              re.match(r"browser\.contentHandlers\.types\.[0-5]", entity) or
+              re.match(r"gecko\.handlerService\.schemes\.", entity) or
+              re.match(r"gecko\.handlerService\.defaultHandlersVersion", entity))
--- a/browser/locales/shipped-locales
+++ b/browser/locales/shipped-locales
@@ -1,12 +1,13 @@
 ar
 be
 ca
 cs
+da
 de
 el
 en-GB
 en-US
 es-AR
 es-ES
 eu
 fi
@@ -17,16 +18,17 @@ gu-IN
 he
 hu
 it
 ja-JP-mac osx
 ja win32 linux
 ka
 ko
 lt
+mk
 nb-NO
 nl
 pa-IN
 pl
 pt-BR
 pt-PT
 ro
 ru
--- a/browser/themes/gnomestripe/browser/browser.css
+++ b/browser/themes/gnomestripe/browser/browser.css
@@ -856,96 +856,82 @@ toolbar[iconsize="small"] #paste-button[
 }
 
 #identity-icon-label {
   padding: 0 2px;
   margin: 0;
 }
 
 #identity-icon-label[value=""] {
-    display: none;
+  display: none;
 }
 
 #identity-box.verifiedIdentity > hbox {
   background-color: rgba(0, 255, 0, 0.25);
 }
 
 /* Identity popup icons */
 #identity-popup-icon {
   height: 64px;
   width: 64px;
   padding: 0;
   list-style-image: url("chrome://browser/skin/identity.png");
   -moz-image-region: rect(0px, 64px, 64px, 0px);
 }
 
-.verifiedDomain > #identity-popup-container > #identity-popup-icon {
+#identity-popup.verifiedDomain > #identity-popup-container > #identity-popup-icon {
   -moz-image-region: rect(64px, 64px, 128px, 0px);
 }
 
-.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
+#identity-popup.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
   -moz-image-region: rect(128px, 64px, 192px, 0px);
 }
 
 /* Identity popup body text */
-.unknownIdentity > #identity-popup-connectedToLabel,
-.unknownIdentity > #identity-popup-runByLabel,
-.unknownIdentity > #identity-popup-content-host,
-.unknownIdentity > #identity-popup-content-owner {
-    display: none;
-}
-
-.verifiedIdentity > #identity-popup-connectedToLabel2,
-.verifiedDomain > #identity-popup-connectedToLabel2 {
-    display: none;
-}
-
 #identity-popup-content-box > description,
 #identity-popup-encryption-label {
-  white-space: -moz-pre-wrap;
+  white-space: pre-wrap;
   color: black;
   padding-left: 15px;
   margin: 2px 0 4px;
 }
 
 #identity-popup-content-box > label {
-  white-space: -moz-pre-wrap;
+  white-space: pre-wrap;
   padding-left: 15px;
   margin: 0;
 }
 
-#identity-popup-content-host {
-   font-weight: bold;
-   max-width: 300px;
+#identity-popup-content-host ,
+#identity-popup-content-owner {
+  font-weight: bold;
+  max-width: 300px;
+}
+
+#identity-popup-content-host ,
+#identity-popup-content-box.verifiedIdentity > #identity-popup-content-owner {
+  font-size: 140%;
 }
 
 #identity-popup-content-owner {
-   font-weight: bold;
-   max-width: 300px;
-   margin-bottom: 0 !important;
-}
-
-.verifiedIdentity > #identity-popup-content-owner,
-.verifiedIdentity > #identity-popup-content-host,
-.verifiedDomain > #identity-popup-content-host {
-   font-size: 140%;
+  margin-bottom: 0 !important;
 }
 
 #identity-popup-content-verifier {
   margin: 4px 0 2px;
 }
 
-.verifiedIdentity > #identity-popup-encryption,
-.verifiedDomain > #identity-popup-encryption {
+#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-encryption {
   margin-top: 10px;
   margin-left: -18px;
 }
 
-.verifiedIdentity > #identity-popup-encryption > * > #identity-popup-encryption-icon,
-.verifiedDomain > #identity-popup-encryption > * > #identity-popup-encryption-icon {
+#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption > vbox > #identity-popup-encryption-icon ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-encryption > vbox > #identity-popup-encryption-icon {
   list-style-image: url("chrome://browser/skin/Secure.png");
 }
 
 /* Identity popup bounding box */
 #identity-popup-container {
   background-image: none;
   background-color: white;
   min-width: 280px;
--- a/browser/themes/pinstripe/browser/browser.css
+++ b/browser/themes/pinstripe/browser/browser.css
@@ -1392,33 +1392,33 @@ toolbarbutton.bookmark-item[dragover="tr
 }
 
 #identity-box:active,
 #identity-box[open="true"] {
   background-image: url("chrome://browser/skin/urlbar/startcap-active.png");
 }
 
 #identity-icon-label {
-    margin: 0;
-    color: black;
-    padding: 3px 6px;
-    -moz-padding-end: 14px;
-    background: url("chrome://browser/skin/urlbar/startcap-secure-end.png") no-repeat center right;
+  margin: 0;
+  color: black;
+  padding: 3px 6px;
+  -moz-padding-end: 14px;
+  background: url("chrome://browser/skin/urlbar/startcap-secure-end.png") no-repeat center right;
 }
 
 #urlbar[focused="true"] > #identity-box > hbox > #identity-icon-label {
-    background-image: url("chrome://browser/skin/urlbar/startcap-secure-end-focused.png");
+  background-image: url("chrome://browser/skin/urlbar/startcap-secure-end-focused.png");
 }
 
 #identity-box.verifiedIdentity > hbox > #identity-icon-label {
-    background: url("chrome://browser/skin/urlbar/startcap-verified-end.png") no-repeat center right;
+  background: url("chrome://browser/skin/urlbar/startcap-verified-end.png") no-repeat center right;
 }
 
 #urlbar[focused="true"] > #identity-box.verifiedIdentity > hbox > #identity-icon-label {
-    background-image: url("chrome://browser/skin/urlbar/startcap-verified-end-focused.png");
+  background-image: url("chrome://browser/skin/urlbar/startcap-verified-end-focused.png");
 }
 
 #identity-box.verifiedDomain {
   background-image: url("chrome://browser/skin/urlbar/startcap-secure-start.png") !important;
   -moz-padding-start: 11px;
 }
 
 #urlbar[focused="true"] > #identity-box.verifiedDomain {
@@ -1460,100 +1460,86 @@ toolbarbutton.bookmark-item[dragover="tr
 }
 
 #identity-box.verifiedIdentity > hbox > #page-proxy-stack,
 #identity-box.verifiedDomain > hbox > #page-proxy-stack {
   -moz-margin-start: 0;
 }
 
 #identity-box.unknownIdentity > hbox > #identity-icon-label {
-    display: none;
+  display: none;
 }
 
 /* Popup Icons */
 #identity-popup-icon {
-    height: 64px;
-    width: 64px;
-    padding: 0;
-    list-style-image: url("chrome://browser/skin/identity.png");
-    -moz-image-region: rect(0px, 64px, 64px, 0px);
+  height: 64px;
+  width: 64px;
+  padding: 0;
+  list-style-image: url("chrome://browser/skin/identity.png");
+  -moz-image-region: rect(0px, 64px, 64px, 0px);
 }
 
-.verifiedDomain > #identity-popup-container > #identity-popup-icon {
-    -moz-image-region: rect(64px, 64px, 128px, 0px);
+#identity-popup.verifiedDomain > #identity-popup-container > #identity-popup-icon {
+  -moz-image-region: rect(64px, 64px, 128px, 0px);
 }
 
-.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
-    -moz-image-region: rect(128px, 64px, 192px, 0px);
+#identity-popup.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
+  -moz-image-region: rect(128px, 64px, 192px, 0px);
 }
 
 /* Popup Body Text */
-.unknownIdentity > #identity-popup-connectedToLabel,
-.unknownIdentity > #identity-popup-runByLabel,
-.unknownIdentity > #identity-popup-content-host,
-.unknownIdentity > #identity-popup-content-owner {
-    display: none;
-}
-
-.verifiedIdentity > #identity-popup-connectedToLabel2,
-.verifiedDomain > #identity-popup-connectedToLabel2 {
-    display: none;
-}
-
 #identity-popup-content-box > description,
 #identity-popup-encryption-label {
-    white-space: -moz-pre-wrap;
-    color: black;
-    padding-left: 15px;
-    margin: 2px 0 4px;
+  white-space: pre-wrap;
+  color: black;
+  padding-left: 15px;
+  margin: 2px 0 4px;
 }
 
 #identity-popup-content-box > label {
-    white-space: -moz-pre-wrap;
-    margin-left: 0;
-    padding-left: 15px;
-    margin: 0;
+  white-space: pre-wrap;
+  margin-left: 0;
+  padding-left: 15px;
+  margin: 0;
 }
 
-#identity-popup-content-host {
-   font-weight: bold;
-   max-width: 300px;
+#identity-popup-content-host ,
+#identity-popup-content-owner {
+  font-weight: bold;
+  max-width: 300px;
+}
+
+#identity-popup-content-host ,
+#identity-popup-content-box.verifiedIdentity > #identity-popup-content-owner {
+  font-size: 140%;
 }
 
 #identity-popup-content-owner {
-   font-weight: bold;
-   max-width: 300px;
-   margin-bottom: 0 !important;
-}
-
-.verifiedIdentity > #identity-popup-content-owner,
-.verifiedIdentity > #identity-popup-content-host,
-.verifiedDomain > #identity-popup-content-host {
-   font-size: 140%;
+  margin-bottom: 0 !important;
 }
 
 #identity-popup-content-verifier {
   margin: 4px 0 2px;
 }
 
-.verifiedIdentity > #identity-popup-encryption,
-.verifiedDomain > #identity-popup-encryption {
+#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-encryption {
   margin-top: 10px;
   margin-left: -18px;
 }
 
-.verifiedIdentity > #identity-popup-encryption > * > #identity-popup-encryption-icon,
-.verifiedDomain > #identity-popup-encryption > * >#identity-popup-encryption-icon {
+#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption > vbox > #identity-popup-encryption-icon ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-encryption > vbox > #identity-popup-encryption-icon {
   list-style-image: url("chrome://browser/skin/Secure.png");
   -moz-image-region: rect(0px, 18px, 18px, 0px);
 }
 
 /* Popup Bounding Box */
 #identity-popup-container {
-    background-image: none;
-    background-color: white;
-    min-width: 280px;
-    padding: 10px;
+  background-image: none;
+  background-color: white;
+  min-width: 280px;
+  padding: 10px;
 }
 
 #download-monitor {
   list-style-image: url("chrome://mozapps/skin/downloads/downloadStatusIcon.png");
 }
index c1431ded33bdd794f5ade02d022ea077f5ebfc05..83d46aa7f7cc7801361878e24d74359369871198
GIT binary patch
literal 2799
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
BTiXBt
index 715e5e67bcd533793da122b9003a50ff50d32572..a7bc1c5655c3e61642c26e211a4196bd4354a97a
GIT binary patch
literal 3321
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
Dg+5Xt
index 6f445117353de67903e2b76d9189fdce4aba8345..65ef97f735a1b9dc35676554582baa7c5a4eed24
GIT binary patch
literal 3393
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
Xnt1)yv-RHP00000NkvXXu0mjfdeeW;
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..fb7aea7c7d37d6351aac89981909c8bf01c6a2c9
GIT binary patch
literal 609
zc$@)Y0-pVeP)<h;3K|Lk000e1NJLTq000mG001Be1^@s68;SVL0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!14%?dRCwBA{Qv(y0}${5u^JF70`XrU
zz7NFrfcO&-gB9QcEKpi4ZOPl!yRQ9E;9zC^8)C%uB*Tt(x{M(69-!PEd<HQ>T@b2J
z@pu(X5G2IS&iE(Di2G@VJ;)%IT|nWxK>QiqAeaI1@}&<KfORr3GB7eiXb|9JW%v_e
z&igpsfq#kwKl5Iw*S^3ELKskZcL7KrL=<W|l1*If%)jHTdGE*D@=ui%VA%r=r|$>@
za&9fa^dZc(j8HZs10N^T?=)wjGr1l@RX~B$OmL-telsxq`NQ!4_irHk50w2E$Ohuy
zApT#l*vHR5S-Us9uxwiWVggW`0^9(`UqA&w%?u#LzkWkC0r|iFfW`iU>E8^Dzai>Y
z9eS$;igp%+3;r;`0+9hZFu-gG{U08-K;jo_Isn=Lw2hGwtdS8Of*?)6Sb>HGa)^Yw
z2wwvQB-{Xy)BeMh01W~MF3hC={~2JG^K!HNPWO{OlNTZb3d9Ep7l8Z>iC9ERfqDbv
z10D{h-?3g&_Y-}jr%DR5!=n*lz~A4{cxOb3MJ`U}KM`({k26E$r$`91V<aS)0pCE;
z^dFQ8p)%a;%zuJiC7))7DNL6Y=fs(mVFujyFc*EW<Je0D4mRe$q3+U8GQ$<8%Svz(
votena&P)sxg3<C|v^*Fs4~9*701#jR92eB4=6D)$00000NkvXXu0mjf<Gu!k
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..789fee98664f07ce253be3a7e45453aae41dc827
GIT binary patch
literal 577
zc$@)20>1r;P)<h;3K|Lk000e1NJLTq000mG001Be1^@s68;SVL0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz<4Ht8RCwBA{Qv(y0}+4`i1~n635XSe
zm>G!g1Mw{uA~mW!dH=^{#-T5nYtDU>`SJTdvzr#jgIO`cp)7bb@&d6kP@~(7gP$|k
zp8YEQ{nvjMkPOJtyDooIU|<kdWWl152jtWjAOAYfJn%7R<;l;o-+nW&fOUan!4xA*
zJr}Y8oFM-_|M16U!QqeDi;sL({PycFD@enCsCq^q1IA{6h8@fRZXh<DyyIQlti5kd
zK7Ies3bqR7Cb;EL4ibPFpwPJb#e{i#-|52*XN2oTXoC|_NhAXl*BpGS#qjG7P=XQa
z-2ZSk#2YZ9U=Bm|0>l45f4~^*Nk&u~|1&b8x*W`f2rxl~?uS|lT>Jm)FT?-ezZn>Q
zK`@vNG8DxA1LcD;&@v!KHsC>hoP0rPh~#m8HiqAD*Zld*0QMG0F^GnW{|8&}2j<oP
zsL}Z5r_1~;PqP<qf2R252QV7ZL;gQ30RJ;Q-e{k|h?W-+3F+-m=jm%6=B(KHT=wga
zzbvp|U_?^<c&ihJ0hmeo<#)Gfs~%*o-Thqp>(9R|kSKwuc(T(ijFCWYglDG5FTT4>
zUwJ=s)vl*9KYsjW_OKRzFsI2dl#$Zx%)~$;7%dM*%Y)JKVAzxg009O7uyFJw3F>{5
P00000NkvXXu0mjff_V>W
index 63868c24ae64d68997644557079d371f9f088892..4bfa577f664bed3d4f6845c037051de6b09bf468
GIT binary patch
literal 364
zc$@)j0h9iTP)<h;3K|Lk000e1NJLTq000mG001Be1^@s68;SVL0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz4oO5oRCwBA{Qv(y10{fkScMVm<3)K`
zc{+L7d7>B@nb<%7{IY4b_hf$-Vl;BFaI}kXibOIoGI9O=_YWxgkAahg!w;_u{8xty
z0BvmLXXj5~WMt&}^ZyS6!+#>Y0Mf|D#8xH1&YuCak@wf%U&M!j->UFJE>@0upda~v
z{rgQ?AbPC`YGr3(ulh;AMw|xx{r@lX`|t1MN8{P&=l_tC4w#VG-4q${rsyHafJ7jE
zO|A<-hAaS5N<dr&#P5hPfDu<-5b2ZW0a8U!%#TeC&_YH=LYWC@5J+<=5a*y91Tuh$
zkQ0H5J_2zKkSPzutw8(*Dm4qQ7sv|4(ehxlJQytxMs#@q5MTgCAf|tpk`|!=0000<
KMNUMnLSTY4IhpJL
index 4fe4569107b86bf197287b624a5feb196ee1af9b..3d4317d7a36a8c023e8c1c096bd4c8ae4ab822a3
GIT binary patch
literal 363
zc$@)i0hIoUP)<h;3K|Lk000e1NJLTq000mG001Be1^@s68;SVL0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz4M{{nRCwBA{Qv(y10{eFW<cuJ+>N~K
zJbwTG|NHs*=a*$)et#)n5xDR*(FWx0EJbn3zyJTf0S#IH<Ij&ud<MY{$k?8b)h|H#
zZ(n|WT>vz!dSmFy4>%1-+?;_oFn})l{O$Mm8NdGhYC|@N3C8&G_a|Qb>)&r)7G{=G
zP8N;_eyhR@F%9_hgDCv-?=OC4CZ;~G6+x{aeJn5ozW@GCQuG1+n+c?<;Rc*}exB4M
z@CU^UWPomR4FIKy#5Y9`yHUb`2=ESwJAimPQ1cg<ATb7f1mZprM%GA-0U(W2Kz;>k
z{D?~tvH`PzI1PwFwoD|X5hE#6oSjF@gVFL}v^*H`<pDr|0RXVgYJzh&<LUqa002ov
JPDHLkV1hq9oHPIc
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..78816840d5f0fe0c3c5e91fc941adb1d1f578f56
GIT binary patch
literal 584
zc$@)90=NB%P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz>PbXFRCwBA{Qv(y10{eFmjS1C)cSL<
za>idiy^E29UwnCR=E_yr)G=WbTr(p&_x{xrD_%ai`(98~?)AlUR~8;vTh)%$CXfrz
z@xpfJ7YEnmCd2r1I=o|M*4ur@rWUIU6y+sYL`8+S!T3rF8aoB}xV{kW1#S+`f4@IH
z`3~bhe}4HJ1H-?+1Osv7j6gX#IfdBopWc+Sa`MzNGPAyAVq#=?`TDuQ`&VyUg+;{r
zzkT~QFED%KBbXi*WYZ+&^d3s7Xfr&!caA|!R&xR)BQT8q{bmppS7f+-^*n=&tZe<0
zNB8uBN&~Ta;q&uD3{32j43es@49q~9g;S2<=U;w?Uw=6mWL1Fr*ti&&|2z*s*29AC
zr$<*;18w~W4B>waoV*eY-#)%&`2F)M!{0xD7=Hixg%JiA2JlO00>kS!(15=TtnA_p
zEbLrB&EFXQ0mc6P{mJm={&V~We0lQ-sPGTi1+45J7{0uJ&G75TCx)Ltz5?mb3|yQ9
zTp%E>3APO!MNI4r|NcK?VEg%<f%ES#pg0r5x3_=s8}Q@vV}`$fe={%w;Xh#1zr1@N
z=mn7G|6o2h4?AuHzWfphzkB_BB`6R<fSHAr;qil~48MQ<f+u@UPL_6}awD+-Aiw~1
WX8O7eqfTr90000<MNUMnLSTZoToE|{
index 718b2287e9aba22863fc2205fefdb80b426172bc..c3d5656df0c13fe73410f5260a330e62e8653518
GIT binary patch
literal 585
zc$@)A0=E5$P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz>q$gGRCwB?l22$8K@`Tnne1kF6B}Ea
zupr&Uwx&=7J$Moi9_+=FiU%)>2QMOc77tQ9NcE)Gf)t7e|Di{r2znKjBE^te3hgGO
z(WEuHNwe<1SzpwE$R-t?WnkaVx4-wjH;;v3i2qqquY=Wv<0lkZJ^$wIJC;f%?@wKP
z|0qhwqdq>LJ#e{LSb0#bm<>I%yZ&miHox@r*i2-mP6>bR$2Z45E<HJNp&LKEHF5Ud
z^_(50jdYODrKC(I{j3{LjOq(RDY^C6B_uRW*w&`qjmsMwZSopKY1!|$@N#xCo6GJw
zx7}=9QPjjW9+S2hXZTdB57z4K8+tl<d%Nw;O<h_pMc#su9X0jwqo}RDK-xHT2aF5~
z7sL7{q{1Rb3}d=nG7pmURAdSDY7tBwK_-71OfkT<ari+DK_IYq-z2!KK={p*ednNB
zxC<c!byy%dFpSpM23*G`NC3}scOIl6Jx{hB>X{EtZsLjw-*X7+6U0Mh{X>6%wN-+k
zY@O!D6${pv&v5J(>~Ag{$AzZu;9yYSk5K%y%D6&VUqg;_XuDzrmI>(e2RO}j`pE~Q
zM~DFBwF-Pcp!W~~?EwPy1lX>6W~I1%wIlv<C~>Ts7FiE|jXjV|@R`HC2I*hccL4?f
X>__ue9xfvV00000NkvXXu0mjfq%#E6
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6f22a4298ffed8cfdacbd02fd1dc01fceabc425b
GIT binary patch
literal 1114
zc$@)R1f~0lP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#{7FPXRCwC7RZDCeRTRDB@pwEQ+v9Iy
zE2$B#R1#{0NShV`5mMM7SR@ok#Ycq=Y+9sBtXQ*)1RDyAvOr})1rn52q6<V(kV^Te
zYDoiW1%W`7+Og|+?2O0peBOK9Hz-Qlw033SS)R|EJLkN6?s<0v#u)sc!+$41XHOlD
zWd}$1we-bDe?C7$+m!r}%kTW`vHeFX-QM+e3z#`^NMVlsdZWDXcDvO$kV+?BZZ)lG
zy{5l0fA&b~UuAIai#LVhU&U!tFCL1=LUT$qcU%f+sOr+xnJ>RNoJypJ!dFgC<%TAV
zo(O8?rH6}Ge>=E)&#td1i#$L6+&kC#JpJ(1_v@y8?EJZzC$qWSGdT4@PZE_DFHIDN
zcL@Et!t^>gACDh6x-z`;-nRm>KuQa<<2_5%mx&G}lNu4JwWXMu^j*ttv$AHa*0i3B
zyggr_j8d?St6SoVOFs#WGQlNG=$Sy26pOkp5Q{c$ezs;Cbq0v;^Vyv+gj;R2&)=II
z&JJYu2Sj<_YOPdIw8T-t=U)b3Am9%K0m_w9TCY}LNhSLhMM*lo+AuzT`n6M+yAqsu
zcS4pV>Ga6h<hWkC48=d^Azv5+S<!&F7EtOS1%sxc!`y}MAsJ6VZu<`S^_SVN31v?_
zb?~IsvB<=+NAJF8_ug240c14`vFrm7R5e^Q3gWB*BMwl~2A@9&_w9NFM4VSbK}e=k
zdzY6hqkQ9cB<SBZG$^Y{b#Z<Mfd~Q%K+CQNti}f5+8=YU*3yAd7dHd}LTq4+Kr9hd
z!y&e<t4&pG41O@dvQ`iPfw_+S0i)n!8pJg}L_<;F?jlI)It~ydibOR~q@dfCpi#RH
z#ODX6ZKCEI@qCp`sza^1f}m}@r<fJb0Otj~7ST-jPFI3&FP7n@7xsX$s(S_9V4zrw
z2tXo+#EwTm2wE63plFnMT!mvF&B54<T?jrsJu5sr`4AE`Jb;Z1C^%GxTBV8vwx_*|
zL|&%E!eWQu%y-vrp8*z=Tb9M+k#H<Ai1#7X*4aeBK$642+F>BJ0k&o1-vJv?9uOfE
zR6q>{!ke+SWPtPG2k-CC>$M^@n@vxOO$@lRTk!k*k6sPXTzrZv2ZE1*sv@Cn=Me*S
zgy!ueiYkhdNv3nS+B&+>x#1xi2QryHJiB~Tdp35_2%JcZg+UU<42E?ia7@!Q^zs#O
zY{%1hBLfVU17J34o;|(Q<AD<DZ9=n-8MqGr@YuI(6<jwwDG5y;85`-FlKf(XZtfx&
z7m$NcEf*2g_4<+U4=?!ef>6P@xX}Kj-Xs@zFI=y|4ZR3Ccy|@K8h7%&zG<w#Lm0PQ
gr*8URj=u#M0Jt|269))iU;qFB07*qoM6N<$f>{6k1poj5
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..4f75161eacc85cbc9ffd79912e87c85bad07ab38
GIT binary patch
literal 1095
zc$@)81i1T&P)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#=}AOERCwC7RZ)l=RTRB5napG|lbLL?
ziAi@Onp$^T3$|J63a(VDAlMJ3=oY#tg7~BT5d6_!zhpr_E9!@cXweTv!6H%xMO(yn
z)wb@gw%fH?u}L<`CYi~knR)Mx_XXB&x@}UTJ~F(?oA=JS=iEDY1mE}J{~XfIY?}XU
zZ#13B9cZpC?>%+;EOROQ;f`$T<J|PgQoplezYS+TnNlh7UaXbQzut1Jr&0;^X}d{h
zE7j)9#qVc^|CNH@j_nun`ReRi%{m-63ug_(JSxiycXj&HFE722j2q*j#aE}z@t3TD
z2+F16eardE^HcYX9tThk?LK&7m9P8nO}t&R>AT;YSlYiO^ULG7^v*yQU0g0cn%fZ<
zMsD3UyAICB<ddf>yY5Q7rpQ27mKOI7Y|)lml#zHWLIp-PB{Q8&7Fu?*Rckorz)9Y=
z^>)S$cdXK;efgD30zMN61z}(UDX6q5A>g^Be(f`-?bbNEC<<;b4B>h&+E;IE-##)D
zJ19%?fm(HSr)HRM31XnoIlu$PU$In9td^Z;lW}c17!;4L)!h#tKD@Zlm*Du3aU~cG
z9LwGR#J<MmQ?T;K5{&K4K|oD|PnzH}9<UEhs|<5<^N<));kK<=nE&<nuNm_ndFZ*t
zcF!bxgzmX>Y-}==d=R8?7L0Tr=M07-fbTWHr&sWDK$mowm<WJ~YSgd}$%HZaSE0TK
zA-?NLkQq&nhBQN~EF1wwF@p$9+0O_{K#PvTpBK-7<JiC$Lm`X@1l)z#kfP~fKhw8N
z!>Z(o;DOt&BMALxor4Iz15q;!dRW5$3<wqgAs$c+#4t?=$qMO9uvV=A6GS9v0k5E|
z1PsKW2IX=Yi01)T5DGvN>UVMiA_IzN`VxHmlMT<z+zZV{0j=2(5CVoZ9cXN*L(B<z
z<XizJ7h*93-u&Pk?4IdE@c!oo;m~6RXf)~w(5-;70F+lz0s2l5-18{3+aBH%tlT<$
zak2rg+(-c?lb5VN98+{Xwgao<LYD%b16c`!cf|nWItbjti-9EgXqO0TNX6U)^o>}X
z6yUl(wM)<1)djF^yOYF?7D+(|&do1j<b+o(U+P>4hv2BjrCG#?;BNay78zJYsmSo%
z8102Fi}>JPXHps}W1YP6nGl8w0HV<d$bo7KxAi3OtfpsKr5~~XcwGv(;vn|tdZX3x
ze?5ANRm2robyPqo|M0liZ57-%oYc4}<sO*Ore#Tpu#H^=?-fOY%S8)8S;wNQ)^c@%
zHFutTRI}L}F16Nk(AA5OgLl^ecjIQh*Vl~oGt}oL*Q=ZUm*Z~%1^|(q5eH?d0nGpa
N002ovPDHLkV1n#93()`o
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..85948a64102895911fda67a7e1c7a12c8341fb40
GIT binary patch
literal 714
zc$@*s0yX`KP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!Y)M2xRCwB?Q%guxQ5gR2ojcA<PU@uQ
zBf42Qgc(J<Kxz>^AQuu^E+T9jRO=){Tm@~4R&I(~SZHpBBBI))3`p9Gl3HXB-_O*U
zapvB0?>VRc+|f%LA@GO$_z&lMod5riCZ)t?!uU6N`{G7ZI2dXBJoHiv7gs!PzSPtE
z-voVK=dbY9xm(-H%tx_ulMfEQdsy1neyG0V_J}KG6XR%LLW9L+(&9+axBJKhlRiOq
zdG>lueBb4x&3Esqd}h9JAkfo$-<2>33?=}Z3nI{3a$L6LTv?kaFX;3McJHb*%F0Wh
zuji+p4n_5)ln>tV>5sQQ9FHMKYedvRMBjaa!f-@5sfnC_xRvxtCM0a7Ob=rW8Wd2j
z5lBVSWF)%In5J2C!LqGzP>;3^KfAi9>l$KO;FwF6?X}G+)H}<uwx%A@U{sk0eplDl
zW9r9yY~NXTM<W?29Av{`SgTH6(FGQhZ#)vqSI-~KNKf}euRo5e_z6OC=z$<IsRgk3
z9$0f9y^T3K%9o30$+~CTBT!(6Bk9#(Y~%^43P>ps*;<M0$|ATKh0~Aqf?@xI{7AfN
zZGmd1st<K2;Sm&9)&XQ&l7nEV0!C;H_~}xtWJs|m>DNGo0;<jsxRcUuk07%!2Ekp=
zK`^w8%+frVm4bb+1j616?b|$Fw>D4Po-&e3S%I%Ho*$%=iaH2#phD9_5ON9yb`Fsu
zhN8wQWDl3&+`vrrhNEny$HBQneb$JGV|Mf>xXb8YdU;_qwDDcYu#(o%uOHe~5mf|?
wAjW@9!lA+OdQZ1C5;1OWM4)Z<I{y`50J2bB4(mQhMgRZ+07*qoM6N<$g41A2CIA2c
index 1b4a9dff5df4cd022c6d5e8cc9c0d7693ed6f1df..437036fe8847375c43ef8656065065a736187586
GIT binary patch
literal 726
zc$@*&0xA88P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!cu7P-RCwB?Q{PKdQ5^rA>)cP<GB@U3
zO)*`gB42tE9}McH2a#$}6e0FhV1GdLP(JzE>#!a|qUa%zD5#(y6v9M88=BnM=Gf-1
zZSKyg_wJs1I`_H_gQCC#U(Wen?&rt(p6{11#&D2j*`G-7E)Lil?So%uz7e<E_58x^
z?=SyFAk+>YqTP2FVoNWw>14t0^Q?cFU3)tB>ip<`J1B0J?}tO;@R`e#PmDah9{xNx
z|8q==G{l@@>wvrYNH3FR<kwcGWJQ_KfM<jJ{&j*-yW8UPdEeIZF46lwHNL2aZ(JYu
zx|(3kW<cX{luM;ZMpYv*#=6D`8L1OE9S(g*-q@+-i96H%r!HM{21OAKi3Ac+(-^z~
zKSU5H1P?fgWcd_5+1B0`xVfwB+HJ%+D7`tCBLYFw331p^Ho#Pp_FT1ku~8N9a1txn
zfF;=0k@R==VJ-d<-r(6sAiS=+ik!2!XFHXGww$ULtx^rb!vWGOtY;TM?8o2>T>-HL
zAvijr(FU+m$-J`xuH^H-5vbLu)LtPQdkkII!I%!$p%!cv3n+VJl;?A>7mMH(hl}5R
zc^`O-M*(cgBxv@BxNQYs8U*gfYD;3fuZ+y(tXVK)l{2g6u5zMnzORBo1}01bIkya*
zQW$M*waJh-^I+i$R{C3@yv~^gBOF*$Ho!j^8=<@xOoGGy(_p%4DiFa2N~h6i6%ZQo
zW2K`JOH(o`Guzop)wZE*fFITxNh$HCqMD(@YeA8Ur=e+-pBd<J3yyaC&~qyu_+u;Y
zsP?N%3yb%RpUn>z0a8+iqEIt8hSlX1MtlA;3*?~V{7ZlV05y6b!WQ3rBLDyZ07*qo
IM6N<$f>|F_NB{r;
index fc2a0837291d668d98f674fc025bf67f0ee0e2a6..e29c795117b188339471646ba6fcd62ea794bd58
GIT binary patch
literal 84643
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
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..a23d9140c4874d90cc601fd3f3402bddffeecafa
GIT binary patch
literal 18177
zc$}oWQ*<WH7cZPAPi#%>Ol;fE#J0_eIk9cqHYc`iOl;dYdH>&9-&*JTTy*zEuj;D3
ztM(67tHb1F#o=MFVL(7Y;3XwQ6u+O_-<LcT#P=QK$UX7<j^!k(?xbXA>f~zRU;-j&
zY-eafC~0G0W};|fVC-%`YQh5oB32+NBB<=PcCG{Ig*N#4b@6a73uCbWR!AC12S%&|
z6$(|FTbfHDp(5W)&Sp(02$ob$5lV~)%S$LjnD;YQURXlnYT5DN>uvHv_mU1{`(^X%
z<@(=#!|FOEcRTalM^oAsf*D(eUteO`TmDTWZj9gc7moMfUePrFSw_F!+kp!98y$b8
z$LO?<@~x%bG$I2XFh-Nyq{yxD#W?5o0j7!axJVa&y#LSO8$&fVq8`s$6>qgS5pPZN
z+iHhq&IU{Y_mA*<)C%svUlqH3MZ?)Aho3*hbcXl*>h#p4KOZf+*{`2C%@EhjA1^kY
z=sr2lXZYXZyY5I$<KP6&Aqaa5^yB^BzAR_l?+!_K%Uo@2E*Q#`u|v#8?ySMNIsuJt
z=J!o*)h6A}O%OAC1`O%juTOVhHq(t}SG_IQEL)Ou@1Gy99q`rLEE30Cg`=LJgNC-w
z+Fs^!!kr{nZP(&CnfgbZH7=b;OmBz>2vTy?>QT<opAH&dijkIVW?B#Nof?1TgA$pC
zz<v#k+Wc5ZTSXxJc|CaEnw!<aqQWYzWre;)!#?E2zG=rXbVSfmiPLaVX}Y%Ln9d;8
zP{mx)bDX7;`?TqjjN|^8-1YWsi{EW4tM;^>P$rna*D{0!;(m>{@ALFxCP<N-wo~Oz
z;HzQn8<b|Z>DYFlR~7p3c;mh{yj~KbOl4sq1X{LeNw21&_EkM=-sNqv8)!{Fc&u^6
z&*KfzXocb+_b?Ds6O;7*{%-&I3D`1k!gi4vNJB^%1$%~#gdjot@q=eEPx$>6!uJp^
zRe2T<(CYo+ahHSDu{RXefPz${I65UBjjN`js*(hU#}tbR<L2R^d1v?T?HFAXBR7*P
z_`!qy*X%T1PKCHm#0{UWa9uxk#5gwPZxk!^$JxuhvfQwP_>y-ySlmEA9B!Z!9+YAm
zu5FR+FgHjjoMlp6f_>QZ#Px5Oo;A&Rt4m#c$u@9J^_CkZD{HFJS$c$No|MM-61Q<X
znqk8wL#(NETZlZBz<N`@MF(+^wszvOa_tA~PcLx98fH!|AA#^nR{!UNs2`&c0X6O-
znd@FSNKDr@lFJi0H%2D)APlMqg!lT*%}1wONi~;krO;hUA+sOs*_B}w6^uXE_p6pu
zqfGzR`^O+cGFHpo<cA7><t$uRELvsTZgqXM&nhS&6UT+ZziSH99zQhoT1GXSeO|oR
z=~Zif92P=P|GD6JKH0i-j@YU2-1a)#Oy6((><>ZoVRpOLCqxJz>8E4V07wM(_}-+@
znfT0ufDm=oKFW1-`-j03LO7StPvHA~*%)>^-r3f5<PjOv8jZ)uUd<O;ped`Wf?s^P
zPX~rTKIxGT*u5Hz2a?I;`+NQQgY6Z(pmIf-@q`OC_I|d(+Jw<)dFRVY%VW=>JvOqx
zs|D6Wkda)@72~}MQ>?`AU2QpAfRQ;$=fA>cBQT(Wgfwe~X{<Zqi=Hht#rqQlp~gdR
z)v8as{e}$dX<{0WRPn|sC<PRbOiRev^cWsm(KkaIZrQ=o7nLZGgZcV-0HFzFM!z}&
zHJr_A7hXz*77eY;FFT~ck6}?op*lO-*-pFL<+>_O68~-Mp9-sh8AAlCSnR}#GMn_o
zOMflG<(<2I-N|Fa=?gPk65{;vWTg2BX{No4o*ih|@*~SZV<$#puQKG~VoQ^!g5fVw
zml*W$gv6)gA2ulq<7=sZFcy37ONDgJh}=%2HZysjD+vc0`9yPA%OLxh&89k#@$o;s
z#Z1X03Kc_bR#8M?ytL|&rBQ%LI?}&>F{`Pl02~+v7?Bq&AJ+SW;WO-DyYT<D`~1L0
zA@0sj02UP$$tx)I>W&N#<HV8(%^x2_$sxwjBM0ik3e~Ac0v86jx-6`<W=Klr7O~xt
zurUdpq42Y+(d(J!sx~Gya^1p2`XG2yMcfFVIgq2_NkT=mg?Gu@(`0SBjQ$!4M2{{;
zvB9p^0CUp(ri>jCU~MKqEScCR7^ugn^OQ>5M#jhGddF3qZGK8g9%Dk5$QJz*#6|N1
z<t!ePfvH#~9$s&((#<wacs0;kX$jD%6gUxpxAIv5nDXHE576l%`4y-V$1l_<m9Tg1
zAMVkqp2?ucrh;DvW%lR+NJ2#Npp;>;R+9wW5~M_)Q<I%&#&64=)t9Wp3brqZf<oTJ
zi1h)<UP;hNP$FsS13iLC@;?+^+tgJQ?@&$xrk`%pF}A0$O#kR{rGgX>GIBfrx%mx^
z@zcAtbGZ25k#a#vH9eM8W{m9)*&bYk82IPAx&KkUvv@g~^+y30Tp39FSD;8v=93u2
z)R1+_4MoY31s+*MX6iAo>E_`axoVNBDEop>Zvx%Aeb*7et<lksH|kRXjuVHRe0r@l
zznSszij<ld`quXLenj`PopvR?J`x-8zR!F-dF!sAtFhjM#Vq~E>4=$r4&0oCf{sp~
z_Z#ucx?y}~dc8WPVw?5mt6&Joab|iQP*#5y8XjC2*zj$?W<)~5LV0C%5X~%vGM`Xl
zF0NNz8prpdBXV6+lt|s_?0$0*^q7L>K<(%OQJ`){B*c4ECL$-L4m;Yl#w+YUIp0I+
zpEcWm)PMTpa8L(*oRs9e^1mJzcm~#!l9D1Vkzuh&Dg7zpZOxc}wKY5c4Z_!RaK?Ta
zrUk)jsXkF%U1qRrKK#sq(6;S2TOjt6=!tu#O-Vd@m+~Lud&gM{sHr$q*q&_hJTt|1
z+ibsJylbnjF0rj@?8-G&JRKP+L`Bt$(CKD|<^h=oC3e%E%lZ4u!+u@>e<?6`3eyZN
zEKV`~v=t4QgTwP;&hqRLk=GX~^`{QTm;%<*T`F!)b3lq_TuOZ`y{fMSlF4lBs2HjD
zc{oF8temD)4CxmZ6s;k}qNFqG&HxE&?>*U^egFM~=qOxZ6QQ@gbMMU2+jFy)eJzvJ
za6}eZS0ZCCcQCnIyzWk%x6ZsuMVX1kpLGxPo9(xt1yCGhX6wu1-C;Gn%21a%GwX#w
zo(zNG7qZ8PkQb77T8t51)l2FYf26xdO6~bzzw6`K0^7K_IL7<ae}7$qY-fI8=U9T}
zm~;XS5s6t$1wf(qK#O}RT1HpK7v;6J;cRVfCu=#d!jz%5Z)W4-kl7s^u|m#~Fc1yH
zFy~~m0A<nuKJTt=984&Txp^YUJFwTcAfuNX^+))nRVV>sJ_u~wkrzwk-%Zc$G9n<E
z6H{h}m2m@dk#?bXtO$rtm5UaF{@VqACwXFJMqVOO_PNOzLu22ALPB;xmfbet<-e?R
zkErOVA#GG9@$M+SItU3%4M397QqrdNM)pxqcJmbE^)ZSSw>dcqku&+ShUT)+?k?GL
zb6SjyH#N}I7QsiHe#(d0koPs`c^`_nkbR3D-+}vFvO0lsU^xD7*!KLdp3f!Mippx!
zx!Euy^1}=M*m5rlN_$FRuBuri8<N&=G%8wKt-h<9t+W!<t@xN$c`&72mS4sTwmJR*
zyaVU-s6@#wptPo`r1E9Z^7*&|_Iej}l88qHkTAsNSG1)KUbN;5925E_nV9<*+~04w
zXa`!?F08hqq^k1+%3m`wKEZ93eo$rt{V;eN6)PnYc0D<B`+=>7;E~r==A?gTJ3kh)
zVC0Z9XYSCRXZTMtxARq7I$1QRa&AjtPYwYW+a!Y5^dqdVdkjP^V7xN&c|DL&yP;(Q
zMu=v<WPANtc*MCcjv)x;iRfQg>+pSRTTdI-&UnWY*7FeLw0~T^q{MHh6+y!#4Hmj<
z>8qTu-GhJyPEraNh>$>k6hVqUS$?m3%s>%QraFnp1MHw+K?866B_ogp6Aw*it*qda
z<$E~OIV|{OGptn-^eOG3_fp6?*7=LfKqZSKh-b*4LN|Aho}fs$nLS4oB6%v65ytY|
zzvb9e3b@tf)&9f7k%LnVg<fwLWG!_@;y&aXd!yuHtC+UZa2*h+i25Xe6=QchVh|1q
z*Q?LTY?$;a!!p*(c6k1t0+M)pFCu`TES+FqtoIEQ2?BgjqoV~S1>7VQ+;vFxKQ7_1
z`o(gLY)=$hLf6jh1jM81lA=gF?$c_pUeD%E##{4u<q_JBsh=?HH4N=6Nn+ptip#nu
zGDdm2pt^2ZzkI;sBNM+J{qbr8Brad-E0Hb}NH`LhH#S(XR2ig7RCZPljtPK(>g)Qw
zf_(d#fOOlhhuL7b-s@cuq_Ce&wsm^-uIReA9`+nRD!}CWyucvVGlENT{8m0oxn=Th
z_IN~A_S)O$p>U{-2{oEbBv-?1`&fDzP40wk2y1#nD2f|N{`wes&t4IU+s5DFV_}3H
zMvb2VCFX{0SP3h_2m&!RVJ8Y^PLRhp+6<+0Co0Yl&Z`-6P$4}wW-O4;rJmj4UY%!u
zAjo!$P9XLqt(v81P}{BU#Ohl6xPoEIELgNsm`P|C`(Ut_LWu%RdOSsfl(sxpC^;!f
zP}hKHVS5{6Kr~1>I0S9u2h+ZxhkS*ygr6vdiCZ(0u6)U?Kl->it0frXsfXJa;6|nw
z53(=e&ziq9XtH3XD?-o3dJBL4^>sJ}WraU;$#hSf<I(Tj?2yPvSU2PPGnW0X;g}rX
z3bmSm_7LLT>z#mrQ%6SFkw}OH(f7d{q5N9t^_WoMt3P;oPoH2zCRz3Z6^xK)#623J
z?ciR29!UkJ_4eH2iVQ&Lbf0JY`gY^<=a1?!^K$Mt)Ln|L!b|QwcSaToj{Gwg;31;%
z`l~CXU<8V<AzW(&jDJ$Kcd$wnf>rOsGacWZ@uc$K;6Y{MC|z~oU)nx$5dzH5<S;IX
z^*s3?KtDtx4b#V`1P4WbyxWt4i0CqLi}G|igK%>vn?(gGm)oW2cZmObkJ49C?Yml!
z9Ss#0+%2i4zQW|787Cq=vOL31r{FmXyhVQ6b2CEXz^F-lXX)qMOh28}@}boILsZdM
zuE@_yh-Au-zCu`%%d#7|^{#4p5Qq}C&kE2kJ?@Xn#Jv{5+5omKITF<{8U>3L1!EUs
zi%t`R<wPG8`Gtd6+wSOdwR+!?@k4R436TCAi#1P4L9DA|q>&BQj(bfT!0nwIQU(FT
zA3pQ#)M5=L%F@!D=Nb-dFmgO~UvcLF!rWeLm5GjHj>b=So69;#%BYZ1s7R$h3RJ5N
z-ji}ATo(2Ts)cpe=yZdMm7%Az+TpKuXgIDeTB$uGe>VHZ92d_f-=)!_D@UXHRn3-e
zey^~0my0!`Yp_oALBg;?!CJ21^z?Kow37rqcdOYtHZ|MuhI%@qx28bYRrW~Ot?Z;o
z6Y48)UoiZu0rc3v7VQTw9YBF_qxjdn((~pIkokq$&)jZHv_k|0FT~f%Ovn$hNc|^D
z4}KitEh}K#9n<L|$($wp5A9q~X@K+a%1Oxf?w}z=W)Lhv5I%2ue#fC{N(chYIKr?S
zmj^<)f8rqT3U7UVxc*$>WT4MNF6~nuSJ|b<o!9W#A>WgvYQAn2M#5!~0Ly$@HD&f3
zB|(lJ)(O2TFf7*%ce0c?ZR-o+0=w10bth4j|Io*sRZqCt?bL#}VTMQ(j9DCl;nJxj
z;I{F;3N#NFp?GC(j){VXM(9Qxp^I;GVp}14qq49OOzM|Z9-0reRe4%<Pn}@C@sm(b
zV;zWuV-QDBMmyxQo4a2sNO-{0q|ZdapSP#}x~-TxghwHHPtUhnrzFikqHdH;nv$w2
z5SjnT8@8JkJ<oMLF3WRvDze0hYDz100|JABT8588xxLK!3yZS+gdq{*bzzTUft#)N
z0UAapn@to!NH?uXp0GUscm;Q=-Fk-CTcUmwfb!!(d`fG_h7Ex6{lpZ>tW?&cvF`)W
zngKzhTWkE(s0UKj9_2t{`{w62S9g#0NTT7az>s(H1kC;xyP3VP<F%_JdVyu1E>JV{
zynFp~{KYFk^<+FSA`7OX%8WpfJeo%c`!Jz2Y#^L-Q0qF54q@nr`s(4?&>sgp9Kmsa
zJ|T66capRVth37wPO@tZDwg5hZkYbtUprbt7?Y4IOHwuu7^gvPjvvx>VUM!jhp5=P
zg3BH`rqiVffJS}nc{u9=p^e*Pb$|?mE8}#DZI&Xh4367DZoiNi)nZQ3m0UWOjuaVF
zILhGod44#S)l%S8ifVaJn4KNZyJ2iiguTfedfzklIBTn-v23-Xg(q1Pn#RHL)6dBs
zl2@K#$cf*fd3Uh0WIO=Fb_9#hR$ydGmX=pMd#ci_)-3bNiPui1kio+n0;+-9Y4cq+
zg9`>v6I$)o#Q1RY^6;=L7M=$zOJL9hN@Pw+!b$Ws=8DKDnR4!n17S<&a%v5!O;~Fw
z+Hw+^fd30JtRX2GO;|!bbx`s25aO!)i*6$8jf`i83f=bLpHS?0DkGe8J&7uwe3dC~
zFh{IlMZk!_FCS}82Yj)6Ye*TPkL{Hp>PTizh%D9l0qdDJ_ONhYfB$vk+8(Z-P;5Zd
zk`vz2OoRt%<=&q4VMu>qpM0SFGYKn^uwpuh0GW4vL!6|*J;F~Hu3%YiLyZ`p`WNTB
z)wpF2SV)$eM>-&j-E3sjKl1wJorEpj7HV!*R~7*}EHIFvog5@4kH;L}2U?=vQ-V6w
z&0jR?O;(83D?Sj}Zlxq0_^1Glb#HSo;_CKrEYQhA3!V9xDu<yL39roVTY^YO-iIOL
zl?PvwP37uq{rE7kl4k0H+43~yd{JnjkO6u6_}(F)S)REdTf5%wvBC9O%ho!;`#M%o
z6{L8a$Jl;o`>&)2cyxhPlUVAr3__(F8_NC2fs;rRD6il?bwfD++Ili0U36p4#)7+4
zZmv*3z5%UtrZY_SFJw0$V@x;b0~RBWS3U6$^N2+jO45=ve_F_h!|uN<o(z03ftS?+
z*MIm(OpmrN1v7TjJtMPkM+fsX!H8rOCN#Y$SB)7Y#qObX(U&Lo2BHIs8Kl;I@;RO-
zf6T>f{mGVeDY3a1+zp4et8RT|JjkO&{p%y0nt!?{ndL)1{_4+aR=ggb4fm_}d1EBZ
zm)%l*kQCSW<?VG^pV||l@O2)nNt;OAR-u>17>orO)ITh|V|EZ!v0ipAF$$Ag23j#~
zU_Sroc)3hv%wBhMbH})}&1nah#TFMZND(|L|K;g?=(I1kyy7GxuMct(=RN{hUW5m!
z8mt`z&P)p<%=2$SthNQ!9?WPQuXdFMVR8U-W%uxqwh=$QyBLgTKwLH&4p6|EcUnxw
z`iVW#-Q$#Kx}K73{S6KlULyIeBy{}e#4RT#%6<`Dc!gyAN}gUvUc*JG(z}l>F<<)p
z1Xs&bQJnKc+PbuUEXnEAR?uh~aLJa30^<_2HXcx>G6?oyXXig_{q02!%7VO<UJrUs
z!YMHb!z~;Q!j~@Y%0f8HGT>nEJvpC0m1kHxOTEFk1&>RUfT--xPxVMT%MmOb7w#z`
zC=YZlYeVN`Tf_G)Qh$shq3}4M+R=;<7<v%lbC8#CgQe;U;;5RDaGv+~V_moHe7h_k
z2ZoK;l|i(v)Vg_`yMPg7gbq83joqv7MFyqyvp~tqR0%R!DGc>XnN;1M<n7>0nX0(_
zYb+u3*R`2k%9w3?DKFyPdvEY;d}@#$$f-DX_}R&0x<ydb>wnKgLwWz`I2vVvrCC&D
z5T!p3m_)BfFr71kd$bS}&RT3K|2uSkg#i+U&1(2sCqiQ)kQd;D2TB~KGLagvphI5n
z4>V&7C?!P8*AihC>EN*MJE&2uNejWff<<Hgr(DW>NYWxKuPK6|r#JKf`u-tUq-asC
z)6FNB3T$)`@Sr>2(2PQ8Cg7dsfIg9HqoAw$Dw-)T;Dq=Ihik8sR1e`|vjzHTZ?v6R
z&KW5gpF8D&?7i89;83j^;Q8AQGad;dDJ^7YCvQ}mX3%xlIxHT!cR0-*FNvIwJlME?
zYXKdvMbk-X-(#ZhWgoSGLyOwH9dhkD;hM~46V)+0CzQQE_XAJ8OXm*_EHuJr$G_e~
zegD*wAzS&!la~lH(IUCo=q!En4JP1tHs<~Ld1U_F9Gij+v7Nk!w1s<5U1CufJdp-S
z4lt<JH#BTIbB~3vD+lgA-I9!HIXzNUIQqj098wGt7+-k(dS~|D*DbMQt2{aPP|w~O
zFP|Pn2$pV}TZX||Zh{im<Y7RpOK_=k<rgjA2Bkbt{I1T4oQ&!g`u>}4A=yHa>Q<LW
zSP7b-X6m#?4TmP-9I7jbS<^;N7Oq(*JXvO0#6a(59~Agq=rro~WmihV{c7-MKROCK
zw4Y8lQAvB1pEe6bd!4qYb*Hdf^_FvqsRH<?@9ttJ4Ao+QOtAQ%Gsm%}%z07M=Yog!
z*dVy%234j9{_kUuQ)`B}BRoH^JrDV|nbHL(fV5SH!?4r5Z>;`ELPEk@qS0uA0d!D<
zf}l;9khRiOBw4phO;*ciw4(DG%eK2DXN_=fg#j8Oy<Ag2L*1M6a&x!ePZukeQKm=@
z<DM#CvheH4f}Q;KU3AWGr&k*6zv`#?YsB=G4K&WM*RtBZJGo=x7iH)d8U{Y^`?JPx
zhlItqH6CCQU6pyHfIMnmya)F~GBFB1?|&Z?>S_;-T)ZoUTN+AIyl)JJEI89z2Wh&Q
zfrQKsVHc56DGt?Z-NE9W7V^&)A7+p4g+$U<q{4|m<ai9qThNvDtX}1vDA=p}g%u<V
zhMFDtlqUB!(ckPk4K$GIx6_tn2NM21fHtdqUSE*5I#E1<EK;r@X$H1a&(o<sQ|=oY
zjb%1-2j3%PUDaY{`2BWMJof7QY6Le6$t$I@MZT1w$!~QP>XF3$1K5nWSVu$)R7jtf
z)b8N7@7m|f`&B#f1p0(ZQOa;-cHj#E`^3y$m?rHEk~n@4G?L^GO-RgyDWRaSc!wLi
z<aiqloeoFNJF8w4;5|9)M<gPIdKlC^El&7ucu<adU}7To_WaCqd~&iHKY-Ju>D-o|
zf9tx>rAKm9A)YM>W=b6?UCErbGY-Rr$`5JAra72Xa^#~xUX_@vyZLQ|cyxb2O>}Kg
zA}@m3b@on_wqb7d*C)<ESypwu8k(9?{n&#}3C{s`kZUA3@tM8YV5qR8q1$BJbt&oE
z$<=@#wb<z8Dq5`&PIqQ?w-y&4!q_#o-3tF+*exB}VUG5>vjLR>m-nu}go$Vx?s!!Q
zaPICf{t%9~SK53lru+DKJs~L`Jom9agmkq*m93>1eNUMyy!M&ElhpgH*Y}0~>-~$>
zaM|zOjEA?7bUNDl7QbeNeLotl+w?BVT}s7fCbn?MDnrc8ddHd9LHxAU+3s_H15_qu
zm#Hd6(I%Gp^q6jz6-ItRB=~QZSE1gXNuyW75UrdV^uXB5FQv%=PV;m>)x^}5cT|K!
z&2dFKRKJiDPIQ54?N1aOsNv`=@57b40!Ml4TXg0dC2KMmseol-^jlRyF0I3U4rrW(
z;#1kIcCUrI-fF9_MF^XD;!{G^rHs;GD(`olyRDUbHnW26-)t<3V=ZBge)$XJ*cn}d
zV&-i9K7u{VP$jJMYzi9hiGjam_DGgo@?eXPkU{FKm)k4nIB&?akFqZ<ny$KdOWyPr
zUBuW4f{JMv7OY(`{wevT`-;h5nldSIQrVfIJl=$4EP6=Plm_AIibOx63FDqt1NfM<
zB1*IPx8GAx&lHwCZy?V%c@1dsqHn$=eR_5ZhT{f$-hkLwr-&=JqplPF{Dg>vdGIHd
zAI#I&YHvVQRn<e}Qrvs3bxPQH7uolA5EsN>XO}10aK2YG9C)FY6Q_?C!1!Hmuq{VY
z>SgsqIWoTW*X;4aELv=*OYK$5O2>QtO$kDU;uC7Ea(=XTKn7U&gX;}sX6Lc50}|~-
zm!@Ipt8IrK`o<su1M}8#c3O?=R%WsHvvM@u)B)o2(;XyQ-#2@dNsW*H8sdL&bK+$_
znWJ|E{rCvT_Hs}T`1IvQpHL3_saV0UzwcW|m_)t37OkQ>X*_Zsb4uyg&X-ySR+sn!
z6npdpHMX_=?L2H5!LMJXXtKYreR~#>`35|7E?(vd_#qi&;_>YKMeALL7~%lU#wSHV
zoE?7cLP%DVN^_t-F|96UEW@sKfR$Gnre{oLcy>05Cz-6QTj=}(<N{0K-|oIdTq$>k
zqxFK){JJQH-W!T;mSy(pvK|ant<r=5hX7-FhU4D!)LlK?8O}Q$5~XVx!r*c_v6it)
z<^fD)z6YEw(t$nte5Rk~Q4(nOI_baQl)D6k2w8gI4;WxEcAu8K%p7gUppxfh$^AI`
zu?p(a_2lnx+);D>0nl^*FcvS9X8HF|3!>@p_0u;>-a0{2p^SEc;fYwwN1$qRf*RuC
z13)6oD^S2Fpb!+DRQCW`_*W|2X}<0<3YPzP_ZIShL5vgB7Pg|r$9wcXSS???14vO6
zq;dwbe{c8fK#WVpiMGBy3q*y$ZGM5YEgw~!9k_32DaczjswGXJxc-!tde&dnWT3C8
znd@Gi#?T~$jSD}mSVD=KdX5+O)vl~O5G1Cl7~m2@rU?7z9|wxFGdHQthC`Hc`|0~E
z*Y7DzfgGASiXz@SEd#2<&1R^-(ufL~FelFrNm1V;e@Oa6ZA-QN9ia2+yF{7j6T+`A
zYC?*X_v?HyL72`>e{BCKA@&W=je;_+z)i{(Zp-^4>w8h<leb)rkQyR0xQ;mzc6K#<
z_JKExOes(A*9c4QT^Q^vkuv=a1-LXot+Jrtxb7`gzdb&f4aHR5K`vNI+l!&ODr+kJ
zLj!)ApOXi4bqe*&3&XLRl4y_5`)d<{-yUP!$u_Ak89vXXTk}Z*wl9Kfd<hfBMHu$;
z7}Q&MF~$}l_BGLwG~WTD%9{s>$G4D;4x8UY-@bSky1PLwY32LlA-Gp7&lV<m6gu*o
z!|j^kmn&NY<LQmU!#kknBYL;|mP{*3d8|Dh8MuSHR3EP|Fi>M(;l>sMWl5_oni=hF
z*!b{IYMfd=C9yYK?{VVIVjSV1fFz#w)7LVJGX1A(!KU#8q%}&VFOj6d_8G0;EfwvA
zh8I?S%~`HZBoriqnGQq2A)s_|T`BNPRP)((*co%Pg%Rv!d^=2#sMgk%Pk9kjuz1_e
zM?h5<BygNy<^Yi*v}mc7e-AO$<Nmi)6|`w!FpK{u5Z_<zsH-NO-xWgpuNyR-sZNN|
zFk;C>Cg)2vm>{2`sn3=!eec1Bv{#Mh^|g(mU6PuLFx2o9b(AtYR^&PZI?}>pW=8TG
zJQf^xi*3s*5C!BTQOa}H_&8M_g75U$;z~DAm^^8ws|iw3fy4!30jTesl$XtM<7x0C
zQT5E=_ShWiKB4cpP$0G8m@E)%9Mf!nocjUtKGE@WPssu0p%fM7*OhVUT~#((T>8S&
zco=`~0q5mDqC~|4E*zaQMa~oC29*fkJb%wAqB#!5R3y;-0v`v7&!v7EQHhhj_q#L-
z6KN$A#)~EhViRUhQGq-=tWigb&Y!*`y<k2)(po+}nqL2)f<SpTXsKDjd<4pr`<8;4
ze0szLzbBKHxYX~3>hzk2uq$nm;JV@;xnNmW1OIlQB)w>2q6&kL04Th>>Wl-kgJd}c
zz1g%_X1kJ*YiKA;3`fVoHlY@X=Ig%!bOUDOR6Rc<PMoyOB{Lt;@u#;QM_JC?#ngbz
zE}iyf^fBu_M2Ve-5gFHe$c?&#kf5Eo$s7(h7TQ+lGu7+IjkL&$ZPxw6ExLRs<;Y7I
zfq$mFBRR2x5h)2fWBGXUE^lNM8y^ZVNP;FZO#v%f5Ph%G{PF^4@Co{l{Cp+{&N%mv
zl}qEBNK^_|QMI?@xa}h+G2*^4DI>)7Xu1LMN>VGXQv?IvDBPkvbqPUM+{rDK=#2eF
z6hm0}@GX@M3ls)VR0APD(Fz5b+HW7o7{7~|&Zmd}1W`S#cX^rJec%~u_;2PkdPz}M
z!1MFt@7;6Ky=3Qzt5t&79$<gp_LyRXxy>yi1QuTc+Te7Dkf%<QrpD-Nz*;S6<L~=0
zwBws8C-b*=C~7Diege1`>hRM=62*$BAKImG(nQX~d(6{9va;a7DM*5Q|K0!+5TOHo
zxaR2)lT`y8a$MnTI6p*w^Zv`Y3@yMkUwh8PkJ6}74X#B==jDte#~0w=cfgmZPfxWl
znKkq+B2r5zLdfA{zVDQi%+1uT&*#~R$2Q4z&*S>crZ#!Cl*uNc<DFp7>RH+1qH)!b
zt8%NL?3%#{|22-+(}-AWtsyLs5y%YB=fm%^;wTVBIZUg)Q<AX6I)haOEjB$JY^Q4%
zj#ucLn8+5(OA1?^mr3nX5>)OrjB!eXxU}GHU==aspw7pgEMfrWz#56;3d6+w2f#&m
zXHf}KCIsfNuX$Rp>F50Se~8)9c{cq5%)W=u^2IfW4lBuddlq^>9=yI}&mc6pBTD6~
zXZJ#0#+_58x9SLSRMR*tn4EvjSggpj=R+aj_ckNj)6OEu0c3FVkI!vvbP9z3DV<vZ
z$`@4|fQjj-!f2ZOI2M6XuRm~|v1!CGvH|cvo{(38NUOO??!h6$SV1_5j?H9jml441
zWDMgFJuv$RYw|C^5BQ-}JQs8sXfP7l8qhCWdJV{{2IQkFK9m%j2o_I3ZbMH5;4bKx
z)&)}8=0(Sqd{2S@Hv%!u-_*PTA)a4~hW@<HDsp&r2tS^?-z|wX1%)eV5ol7gT@d`a
z19ie>+~qx9ys&<q;G|DcPW%RgpEIkcwlHalv_22lQ1#KUN1whZr8IxT{{F=o8Mt%_
z#szrEegIgp=N)d~ALe(v0EX+_o(5gNC_ZE))P!n>pjwRL%Ej9JMzr9B+AW(gv_LSe
z5PLvxA$jz`!QHV(%&+=evpED{E)_TZ!%uem55&rGwEtV;0?+KvK!4<2-K?g((>S8;
z=fuR<{VE;ECYd#6pPp-c66RYNn6-gMOZ$MiJ(zHy_n*Bchz|fBJUP#|)07|v_x!>i
zSC0!l$W=-P(vB==z<qnof43rWCV~NYAdd71oTv-do-nSGoWByxyW=CuB}otj#G=K1
zT7?VHSKmP<-k{#B5yp5RHb#sE6`bQ=4vxh=NDP;>7oq!g$)_kf*rbjV#3FvzqR%A3
z%rN}$>V-c@P78mw!|&0fn4NW@&$^tUde&+;G5ELh-sR65!yJFZ`uZ>pZ!-viseIQp
zY@BIho!Xp;`)WI$cgtDaH=cS4HXFlQq9u_~V<z%XU#`v<;o0WhR!9OENslhQLR1By
zHDo5M^g@owksXBSKgYBmo{l>c&AUM55`E#{FTf?gZ>l-w+4vsM^ssC1&7u{$vQ?rl
z6Sg*Ba(8S@s)B!;DOwBHXxH?;*-gQ}C4+oij@qa;OXKA+M%JSC6452A{OGD>TPx%K
z>a=7SA#DAtrxxRCjZD=?z`cN$h4P)?o8*7QAi*&Rs@YP7*t|R}G3#c}<)>s@clqWp
znU4_Ee%xMFcPSK9!s9bC7}`WoOkc<!A!0s#Ty99Na*o-u+m?0w8gq`cg?Jffl_BOS
zH_GRYiE-z+{grM>yq%!jLk~Lhtyroq-db)T_e*{To_T!w?)Qm+yi<Pwsz5TC%@8c2
zjgzeIzcy40Idq?o3t|GD9WNIb7j3-1KAy7i@$p&1!orM&OH8h&(CJY0i4~QU-bj{j
zJg$2oW86GF6P9F|XN^U}Ih;?GYx48+RY^%ny`_rcE&4|!7X$?bfAseDrf@l*id5KJ
z2$7ku)|+IJ%VkU7kpxZQFEsIQcZPJY5y-D(PcW|7$~|sjrb2O9Ezw|6jb7~S?t<FO
zZ#nKHCZdfGeB7TrX+!ueQSkD1@-DfX&gP2_{PF63In2n$pwqsNA2r5b(bwT}IhWX`
zaRedqqu-uLW7c7_+r-UZJ`-K8(YxX_8AE%OvUD~zHN^qb!{F)o4Wb%gGB4}-NSPFD
z*wx$V`PAicyFY4rG?jIC&}Lu&-2SfiO|ws5@fdu(piG&!>wd&#t<1j`^To#dq2T}^
z1WV~}+l^LxG{fFg#L!gzO=_R_n-CRdELKZpUcJ(*?ypZq<eGce;~77!$!Dg*E=-0f
z9A?uAL|H&+K%2XOfB+%YVk1>HJBg!g3he3-Y_cHLyga_y&E@5#pNWYHi<$s_rvq3#
zPSKeY*K9hgm7%;ev+L!?ODsGT*7J3chtJ2uG9wfN8IuC1=Bj^gIM45G0avgEyivS=
z1kk>6GBPreGP)YP*KO~Bt8Z;^d~B`>U+{d8qL&Vj&2pTM6l2tgRZM9uGUoxn>NVoH
zj2%I%%Syy|%eD0p2p_f|V*O5Ev-K*I<v=L1Dud0xzs|~DUOd`eUTI0lL!3#YBO`=%
zSab{wu~3sn&)F`BbnZJr7+y$KGNVaD_8%lTkx|&Qe?><|N6R2-0KQXWtQK>DVc?D4
zGj+I&K_J%Q&PP5Ei)tz>C+x8mtRzB$gc>cjco!`o6m)aGC5uenBdZ=tJobE#+bCfc
z$1`~>q}1a2E}Wi^l_d=1^VK@sCTB}k<Az2?tK=~C_4R%9x*eFmKi}QuPUVSe8n$mC
zJEor?2iSf|ND$iM$D}M<uTkKWQgi%yb?R4yZ6=A5;UW=tOgGyd2zywIUW+)ii|gm2
zov+ejH(xCOF|HN^H0(837U9$!GKNJf50vNr&aR6i?f{%Qi`z3jY=avcd~eDRe7Fau
z<M|TA2(5M(+Pi6#G3X~TdB>5kk?Vxj7P~DVg-1G)J}s2K8~<#%N`+w@Y-sH)({JCF
z-m_%TBVm67Y<}<eq-ve^Y(BSZ{r8)_;m$zLYVVI%6~3DRRL`3un@xQXC<KDag2`Zb
zoVCk;?Ja^R-zvW2>jPl*`~ip~u^$0XsQrVu-A+oxXr^5?H2Ue=?t0}Nn2y{=5>k#7
zA#9I)dwY9&U^7w_Q3#=IQwfiYV)zxwVi(@J?Q*fU=rIyYgkb|X?vF5gq{l)78yy{$
z4l9y6F+hU>hi9XX4P=Tou^@DFb7SDd)L;b?b#?^Ok{w!$3YBN9m@)dFfE1@8nKOb3
zb%Y#8(07@ycKdv7^Ljo$ulQf3nPrb&&K1G>3Aj9*E;4}9(0fw5U+e5tW%!4lJY2MF
zHTS+fbLq?gzEQtBf}c<d!4wQxe1k5OOp(@zGxjIv&wZMIY0h}V8oc9Iq(6iET1i2m
zBS!GLFDPlMhwXdjz?NASSgWqc81hibWg7*H4Fn*ZH9&H?O`3H`k+HF1NW`O!sTm~D
zUWfTV0ql00fyoq_v;IanAe`WYC-D@TeS0zdQzGj5WE6VyR0xkqpb}-afQAJZC@N52
z_rdTV(hEQB(I|uIyFkc&?fL?tHF%yS_^mxI)>wnC&nbLTZZfA`p#81C!ANIre*Oa&
z2a^)TuY2tP@tJ*%fPt14=PV2!3JL_5yw>aGRzae6weME@r*5gY@qBBCmV}g4eS0>S
zGnG<*Y1GI2c?e3B6==48WByhI20a8=(}y8|fPj$XC{H-VTq6eDcV$Kqg~$e2Zv(-H
z%}~?zN|pOLXsmuJV7LPco-2!j-&4(4mv<v7i4~lp=baW-AH#DCMWbHpYp=Q+>E*6f
zE=)+%FUB32xdbnWD$12d_!K)867{>`&)Z{&O(Zjua%z#7ZeyR>1nPjSmWuOIrN*1P
zRmp_koyxGBRE!|_2?o*J0iv7F8<0-Bl_6pX;q=W`CW9@=ET@U4kPHzPml|8@Yd=Bm
z5~c?TiO`cP7_hw)LO@mkYa~)=IJ4r4d$qXY$_61eRBJkwIXYH=sXhH^Py$2=?Rvlc
z)joou>*g1h&LTfjFT4?hFdUm|t|5D*t_vj`f?)EL+bd1u_KnN3<J@O(27rbOCVaEq
zgj$#{gkW%9{z>@}Ev19^0p`JFbaaZEZ@&9deFL7_pW|oq`*?R#t5t{AH#88DkwIKr
z_qFz`tNPFrGx~-6<Xb?b4MYkfp0B%Eg^rB&C@~Ra8xCEvs_BFv@O~x&)_@2Z3TU<1
zR;k560o19Ft@`{7@p&15Q)5ZgdEca<inMY_ay|E-aPJR642j`;4gD7&Aib=bhBRL$
zTfT0eeYH|&)EO%z8mBuPFfRSyfv{AGS05Gnesz;Sy{4F$7>BwVJQw`sN^X_{B|&^n
zj@(bymH%(oDf8Qy%O!4$7#JALwAvfxGV3UHG`yFUl|A%`Z|B*sH`{1g@jTE^LUA|<
z5X*z{Db|$285||4=^AX4BF%q*AuFrDn%clxYd3XwcgIwX1bO_B&gQ`iRhfq+Tn{eE
z@lFpTyhrkflEM=v>e<nXU;!62p`=$Na=RTRU)|1iFeWNW+5Vx`1pf>ggUdPR`OVyn
zg>N^gM=Xo-L753y1`O@T4byxPMF-m7)&7%LKEl~Tfz2%Zq|NaNw06fFXqOa#Pl0Jf
z%pliyGGD^WZo7dQ!Q|oMv<*buqM5n>k6X9CjjMgS!5=*6OfU}YdobTE@3$x{;bUx3
zn<w|X!>C=_N3%`Ot4^ya4uY_l9Pd}kJ?#dw>E`e{7TYi&OnFLGP{M1puY^Tn$Z64S
zvtcFeHf1yb$xk83p)97#IbJ}BiGQ@-uJa*TCGuzWK`%u72-gQ8;krFvkQ3f1oT9FU
zEg1(#YMnh-ASG;hh8`SJAfo8D6_IZY9Njlhw{BEvwL~6HX0-G|SV#tAc?r(W75y@*
zZ4jmC%NB!ie7oN1*G+sJCh&2q)@&*#u>ZYo0hLW1tbl!x_xI#;XJ_ZH(V1tw>`TKq
z!FAUY<awxewc9t^u7ZPudwV{fTL?RP<FHwC_y+QX-8af+ahU`L2dkd1HBmzh8;h^I
z3lTx(B0I77nwvKa2R1n8RMtQ<C+aaM!~EwGnw6ZJx%3en3ZTHCj?C+bR+E!6;&vsn
z#1RGOQ9wZyA{$a`<9@9{<bxW6ix#C&mNs$;g5)4EOhyI}hg?VFR!@HmigZ||@A)<U
zJt}lv7v{!;vDXBhLz)aCm5JojBA_6^<aWIsSy@?G`;8HdRJBIK2zuwff*0#8^ujvC
zF={>iVcg&NHKt_l3rXNr3&BmDr6+!R3;B+7ju;B$gB&&lptxX3THSwO@JK0mR18?@
z@$>WlC^F*XEGL4mc6VXPTnX>=uU4}Y%E~FvZ6K71CmNRB+AE<rA3HcWP|1Vx!1G&#
zn|28c+`qkbAoGYPO|Yet2h&1caIqAE@<))&oUX(DhwA5!H$4Ez@cvdqlVDTizA+e#
z;8tc>I!Yw4g!?H~q9h>m3>U`Vg35K*)+y$jDct7#_zN;we}5xNk}?EMM7@U9e-i2L
zn@$<G-4gX$f9H{g`yek6Y<b;H+T&`S^L(o=!EYq6iQX;6oo@|Bw}9Q4aH)>D=V}+X
zudp*!Z?VnV`)efTgbN=g`vfTx?fj!HO)iB_2h;*)SN6CC-gwo3?3I1fd?x)wJ$fmM
z_!pfh73sN$dPIIMep@PzAL7B4HRQEM35EPVk4S{30=bC?aS{n02Or-j`eIPNBL<pD
zCl~`a#9#i+f?~BAUGlofZBc`w+;8H1TP8p%YLGsEd+f`^WkO%et_&s!Vci>!nGO#P
z4Hdm%_FbSDvuo!kEa!$_iYlK447VckJ@=@7Ri^N{-|qiZ?7l?jz=?eq{})%QTfsdy
znZd60`F=NTzk(@cy}k9q1K&o%s@d)R5wPNxJ@PSEke^Q{oW-rkfKVJQQAd0&kA{ve
z^<pB}R7!1m)5_{}Jj2X$RKTQ~{4Ky5k!)LiJ^=q-l0=tIIK8F%lE2pe)>km<OkN>k
zx}~Ua75VJCU!G)d_z1q)d+kxU37CV`)%p?cK!$}v#^ImhUI(#QIwNL;x$??YSzYdY
zKIuH$T|+tr@nih_0-x4D9K`y^d&qt*@K;H5@?(w2r-(n7`rQt6=Ew7Yrw4!iVST^m
zx8MHP<jWeVEq%LN;9R?oso42!N!6#P{?_3Tv2^~_kEd2x7^i`A_1zyd9RcOrFTwJS
z63p}*enhIW=ld)X%>2*>dC!5LdI$7B55n&w9^)W^Fxsqv%FHD2=jP<pY$J|<(xQ}B
zEjF}Cbq4SgYB-&}1FUp1r@;l(e#13?`U>_EO%T+I6_|Yb1{IM?`!HilPY}r0%yU0L
z7Ml2RWuXtsdHM)In>F7+F0^B>e>W>F30;2%9{xZler8d%SNM)VZ6r40=F^v0f!9ZX
zHhI=^0ZM-1A(jLo)Xwq&GEvg4o9j<iMV*cq=69F>OGGQj_LtZ5x6#w-1sA}8RJMx#
z{Vt?)E3H4iLZc^Z^sN(Ju7cz9ce!7I@y}%n6#@l|elhJPq*yONMM56|AeIFjgql&i
zi2VQmL6B#Df=?-*@1OuPKelV`zSG*x_PaW4^{e`Na7={}CTKV37SbAHe!=<yQaaN^
z%}0P}<u7Sl-xnQ-1ybx8(w~b&vhHKlg*EPd@)lBuf8<*Nuckb0SkUx>vPJhn6t4`Z
zHm9_$ya_aFpvhMQv6S+|CGNKtV{dJ!Uq8P4eWnNKi!2n(UK4EO-Yre$I6PZ*cSsp+
z9fYXRzqCb2>0X>kRuAo0ZO%Ys+3>BFcy$Wdz<89U4B!6NyWy*~78T3MvTJ#4eGR(r
zSi3a4v;5;g9XTP$JSSIqi9}Zw4x57SS)B2vhUttK13Bca!}zjZ@-dS2mDvF4e1Yh8
zwNtZ6aQzMYvU^v~J^}_ly`H02smn_ZpSt6-wo<Biwe|y{0%0P5xtg8b<^ulZuY?3%
zl2&T}3C<$tTfWJ@O+dJPyU7Tsr#q|~;u1gFS`*UkojkOz(5+|xg;5^sFqEnv#?e;g
z&&9kB2n6d&#lvX4OD--Cwy>Jq%{UlJy&8I(g%rO-)Ln{Nbx~!uIpdVUELvU4P|?4i
zqMGrv;~tOV@%***$BR8ikG-Vg?P7F+aP~%P56-vx18_C{0r=+f>hj8RDl9Hz{YIm;
zp)2;I=htU2c<hDgf;`XS>KA2FlwXx^z+fjFIFvNFTg4VXLW@D(S8LuzJdL+96p=<m
zbVwo{NPlIz5UsNHG%s?dQWY`TA!je^{17FQ$kCtflk?;(l4jw71!f&}NC5djpHl9b
zcQiZRhIfp*QQ=qGI87HYK8K-YZ1FGfXBZP1Au7<=)9ZUivZRy^Z+H^D-u^S`=&2mO
zuaf`Q|E>OudFum^!4l;^HddbdkN+y|`g;4bBJf#;-#TrkP*ORzrbaFxlgW9}bL@~8
z(x2&z%T?wAylQRX0ueKt1DDRk*x`m2bbI%*seGzHui5`(j{Z!U*5lrvc~ul?y*SD_
zNl~Q6Al97-sOd(<`4lT5@#Y;?zZ}@+vL}Or$&+8uN2~84pzbK|7ED~aamGgy{bYf@
z1D$<|!jYl@Kw%tC7E%zNB`1i|*I54f098K(kRxAff%YAv(lk^7qQo7v>+d%d$9f2Y
zkO!AbEjm?t8d=OHYcVJAJa)HNSo%)sqgzE1rqz{Mr>5S87~pLj-R&CAUzjc4nORd2
z6whX0&Bp%X*gNmq1VgF0uo$!Oq^DSQ{c-a0+U!CvWnDIMIV&Wn#}`nb)~KUMZ)NnT
zqYSAe4&$B$zWnL?^z!L@kTg@K#It{JFdvejw%8O$L7HcTo5_{r5<&?;UWXDtAPZWw
zirceUQ>B+{ko>5nJzwvoQO$MA4Q}E;2f0Iha1Bde8H6SNy&xqb`v}RBzE9uwCK?(Q
zPq>d{+oQoZ2We{k7K-GW`srmQU*Yuo-U<3R3WTXFRfC^Gr=o!dvwAkwmsw+%;@NXt
zzb~OKGEO$l5myQ+6eeutmeqU;zLc(9sYtO)<aPV5v*QrF)iGFOD+Phf*TQ~6R!5IV
zyAM2!!1k)n;)!$dxa{m#Fv?MZnrni6uxJ6Ok2g!N<LX}$71ZWW1w04{=Kt%rA@=};
zMuY@WS?POxW;@3d)C$Fle4JDM|MK$n>AU#;>5I3w$Fc7ZDHekr7r1dHa3qVj`u*ZN
z%6Io=dhm&8B$VMS>F(Zhujwd!g!qnEkD}~9s7nSQX?~Iz2`B-JOI}3IS29%&36*G3
zYxdkOpYI;GGra^0fSF?~atBzkYf6D>5gBHyqfjI{H={M+421xws41TIXq6$s(!*U+
zfV#*+I52CdzELu)9uG2^17?$AP?1m06?r0O9-XY)9%c+_zyXv<Q6WJCpj<NRMjhQE
zVM?63DZ*u&+SNso=2we8KwnLV`RYZm<wA|1Dt6*lm(Y{KMCLYp4JJ27%`;bH_1BWM
ziKfa<Ynm9}t9wPAE$kp<@}Khib9umz*(qhE*P}Ip>#I6`eM$SYm-irPIwGQMzHeV(
zDRs0REB5=<3Hz6;;zawFulHtjoV%HVwhD$X8mYgOH8-*im2i$Z+NvF$us<N|L{P?%
zcI#u|bO+r<^vmy~>Pl5ZXR@#Wby#*{-G?xVuc$2%Ag^|YZ<Fknn<~`9%<#?{b?g6R
z))I7$#JMq16MRYXBsi%;3f2q*!tTll6(6c;l~<~n^?}`A(PFusw%XmFzsw~tZjShD
zY>SinI;BxsIU68NWQt8xfqI4x1ravakJ_<`VxT6c<@tsjwfR$QRI=kdWtYqp)=~I6
zEb`Y-kj*dIYmba&#JBAB;`^QFC>|6ev{jy?hAh=<+$W98h0Y_(bPgDKzfBZSpDrt(
zp6=OC-=jH2dCYWV%xy%ScIV(klL{4jo~NH10+$}V<OEYWa=);+T^4kpg_c(z34ZEg
zePQmS>zbhiWvHd<q)QbDHAxNl%;Jd0Ys1)mav>ruxV*e~bmp2(<NtovKMirS0Oab@
zKPcs$Pg$H6Z*G27LIQJCD*~QB`Gqg43_-R)#6&Bon+V<djvJE!nkr>g<g&P2`GF<j
ziM0n6wlh3ZfGb%m7~$a$fFH#Y)xP19f^v%tBR1aZDD>u)=NRYL4JBuo#{%?Z#|DXT
zmfb^P=t5z$?$tV`8IL0@>*YN_2Zq;>M;6Agr0T)-V?kmU&FX(gnLa(4aCU`YOMeQq
z-@bj`8?YFErM*@`VgR*d+60{4W(|ytmpxh1*$qBukW@4g;d)00;I_M$Fym~C5sI4y
z)wWeEq#_AmLbMy&v0Qj;Cs`znLlM}4XTp3r19kJ*l~(;6cq6~K^=NJ9JkIh!xSh^y
z9(%IhJaYjJWJO^Nx1q~LBr*a|%9B?p^M&Dtgc;XGbT5(PNII9@itO_oXh7U3r}`z&
zw*po~D)a2_YAKR-H!8WN0ZGZJX4RZlb)@dq*&%_}s;Pu``(4A=^KeIQR^{w=A4P5t
zL6tBG|4r`nr|-8NPYMeQ8<iB!;aNHyld)G_GO_MX{!R22eA6>^6+fNHspS6OW&<Qj
z0HJGw$r)3ED~N=>v?4!R(!XW`{dDXlf_t^7zKwLhnw|z~452$@NmV2SuNs1PE<3wU
zkC6!#13+N=!}0o)IEVc%I&f;UbH3-c*IMrPgxL#RNiR_}e|k%>Fl0!bXC{|3>QJQQ
z&TtobPRON6c`5s}Yo+z2V~#QD>7obYi7u1~bJj`vE@js3%}Y|;ry*-BRQT|0WI5eC
zRa&sn_SnB5CG?NfuY*M|_|@I@wr?1FyFgrNKDws$=HuHPsTD&)#)ok#whDJm_L;AX
z_-`M=Zvn;Jq8e3=R1q<Dj2DZs9#t@DF%lSV;y^JX#Cx}3@76sH+WPkZ<iB%9+NtYD
z(-0s?6ek>};n!ba$Y`wiBQX>#A;${d<HfHb4gy$Tj&&~{5S#HiWISjySGd4fLg@Bk
zqnN5Awcx?{syO;zh=ypY{Ycc-O&1cQ>+?$WAy$@1UMo8exWNe_fgAsAlJFEM@r}iZ
zo4lE~P!ZZA$B>--0Gj|abM*W_mE89`8weN&aH$gWqG*&8qei8g);RPkwwNWYQd^CZ
zqOqx35mlo^a!QA*k!r2ft}WJ4L4rq}Q9{kMwiZE*t9$Op{&Ii9`+T48^FHtMe4aPT
zi7A6pbaASeMuiVRy?IfXhpY4xseWF>;;Sgb3;5o6%H+{Zd11Q}JpGP&wR!#_pqNi0
zdUA4d!eOUr^wTQHgi}!&eKP?KWoXETc4L><W;mp!-K3sEHwcbQ-~s6XfMx=Rmuv20
z+P+YfxInyEsp0&%Q>UZ^@N5{#RNk63(3osVa)nMFgbkM1UUf@wLQ)A3v5rg3X$`Fy
zF=eq2O<^GF8mbeQhbqRJb`Jr#XNQ1Dw}!H&r5&#~hX9~t(j$c54llQgAPY&kE}qv>
z?PIyWj=O_TjxBB4Y13)h#hzr03|T3=HeQ*?Gaw{38zrkP7=C(la}JnbKl1xUxUPIC
zJI)eqYm{HJ0xCjq>l=3pKvzeB{SLh{Nv5f2u8pl4LdZr&w_ZjrIV_$%hT8P9Vv}w+
zSmFaa$GwFRhqn1V?wPMEO$*)SYbh7@%RA~O-c$49gH8}B8%oF|U<D{cK)E@YiY!Jl
zM*VB2f-3GEk<6=szM)3kbZ2QHQJvf~)xiPGJc~e@mJxDqe)dM`lxzX?iG9iyxj*^j
zdy=%<`)0Eqz8VW06gKi^A%%gh4f^|=O#`YuYwvN|CP~Qf;I6;%P!O7kVB)!NSx3W*
zRaX(4C%t6FVA|v;&Q=~?md-rh49!WWs;H^7!NnWd4>yRA^B;f0uANWV^<W8$j2W_g
z@YGa}dSiWY5d{%R^Y<LDy3VKO$uVXeM0j#GEJ1uo+FrX8mk;1xFLV5*_gf*+CRllF
zEyi%q2e+|nG)({PnlRLWkl`N5qAce~JuNIMWnZSHz^gbiahHVaWW?AFBc#J`?qxVo
z>sMeZ<)ZfV7ap`)$Mu$`rEj{BxFicTN>@VHM~^z0-7!OWj;d8bw;1XYRlGni*2jlG
z-9AM{;`T+~w@48GbbvakYPmp*<IEPtw{|MEpJoeN6=meo^U1lM=Z~Ba&t<+YD6@_f
z_`z?UyO|Q}a?Sm&C%iN>|EqBa*j&y8cDDYM9f!6EJ<7?>zG?07NxsB%p5F`)g@LZ_
z><x8t@+<w4Ae5tTr`y?y>JO}+WA*5k7kdqv!&)Q3qCqQ#iudqPAX^rVG!QU3EKE_z
z=D>d#DSzQL?cIXsTlBMQpx(wV0^R%A7z^$K@08oO`wlY@1{#l-3X0?Lwy5n<68|&P
zu+!5WqNTMLE^tm<M)Vc<zOE>b3c_Lu1q$GI^~20!;tVNao5#h<r7SXZJvrSqf=o6}
ziTm1?OMaym&|0R4u;#?%Fc{L#KNinAi@lc)_*J1TxNG#5rT^sCIY8C!<WVKHC<!G*
z8OU+j?@Hl*yKr|FTz$~b7fYqc)jDnmLm4H9zTv~80Wl88FQX;Axjshr2zYY18nD=3
zi|t9@_56Tswi$}oXdEs~59P^+?AVh1XFdx}tt}bCizirp;3^VW%7)SlZ(Ev2bHO_3
zncgCb2f{&>%AS@J5QB)s{s(rcG~KIkXh_THZsz~gy6?jOJ8Q^VWbmu$+Gwm<p&KbP
zSg-D?n%Xu`tMx`N2%>p8O(jq@4Z}poB~IcN>bBj_eP1%>A0h9UEdGmLt4)vJ#zce+
zyg0<u4nCKm-K%vzf2YjND+mT1$7@>EZ0sLXvw*UhjnAozXX60!N-QH9fnU>4du~+@
zmbHDK>P-IwT-p;uZY)sWO`b2RQMPCf!**REG{{7g)fkVf?QQ4-D4YFxa1m_Hgt)d8
zR@q_$agR>ZIyBj`g)>O+iLf7YEPrCg&?O0Q_73#xs$D2I$uq9*l!Hj4YlH-#!lOIQ
sc|F8m(BpWV(J-M^IX<R!jEn`aeNpc;Yl2GVpS-p)MOYe^>AS}L0}v>7asU7T
index 4c2b12e75aaec3dce3037eed259a87184fdf89c7..cddb001295e0d607078e6f51c6f206c6862667ff
GIT binary patch
literal 16825
zc${pzWmH{3(<OW_7k77emk>0_#a#jfcM0z97Tn$4-GjRacXtSG!F_n1cjo)ntTjJQ
zpZ?Y7ba&OR+SR+m6y+t5;PK%B005Gdq^Q#8d;9ZIgoXZW0f+91pDmt~n7Wg)?N29H
z0|yg;kg=_y38|E|fvJg-iGi`Z{iq2a03f6#B`T!iwtD6b<Au3!|B-f{v2hDe2NpgO
ziwER!2?>dUfkm{m@Gd*owb$7PWc2v~`Yf>U;k5ANwD7npu#%S?QNM1D8>rS?-w)TT
z8ruD@Jl}I-4mZ92vahsS|DAlx_L$O+K6F>)M`u^7jAz^_ByUMKURqn$s7%)W!M}L|
zXz%5mx)R^8ynXRMGUFMxf7_dzt0>U?&1b=p*7K9IAuwK)*)&8Y4=_<Avr&!!zkA)~
z>s`^cdA4<*3ges2s3s}SK#rv`%c_B|)4-`IEsInf_%p%!rkD$+rpWSvd3_2b@bdC;
zG|J(e(~TTMBzyQSxcH8!mey7if0axR#T|+6qR9JTh~(PJThsCWdwFLY=2sBia7e|E
zPE2@r=uVP^Q7@qqt~2&DSpvIEpQo41m-BaLnytELA-*cJi#PM8yV|FA2_D!YK@NKZ
z6p7|UF<KY?FR#6kg;$WQYfKZ>uj9=hhKGkX?-C8CBZFT`r+@Sk2zI&m=5rv4qUw4S
zE0+LQTD@KHDwAL9PfpB{+uu4i4AB6Jj0ygdj5ZmBBp+eY^ke+7-KN`)Gz#y#Hm=h;
zYrI3EblFNJq8md&qgbR^6ef0PnC+nNW-whdR<kJ<U6pgG*iCKBPn0@({51@&cvt66
zZ-fp_q-W1vktCe@jfW4#u0DYQMM-k<k12ZI6+yDpSzE=<Cy}9c&V>sWgKK*_m=Q2>
zl8C%nU3s@kPtxOBe7+Z;1A%Q%B88Z{(=EK>^#t!h&u<+c5RC5jjsSq3FO{$6VRc;v
z7JN~K9-s{>r2na*YZF!?CVBH|y*t=zck6HaW!Es*!d9imgAVo)+f=3}w8E5boY`_8
znQ(rAZ%&mb^9|1yU#ITWWcO?RaIU#oX_xzLRMl~_X4QS-)7cG6L_Rsio<uZZwMBVM
zM~p6e=m7ddgPoMOxIg5fuK6ZcH5w4tZi&L;!=t;>OAduREF1<o-oX}<ZgM5UouCd1
z5LY#$e`vg(i{}XOOf}2*g^G-aLbmu<L(^gJ<hN~$Q9}do?>F2e_A>I2QYWIh0tk&b
z;=4sC-<*%z7)F0WVc4~*COz-LTledz-v`+8%i_VMrbL=xswbZSxNVy*6G?ans7rN|
zibZ3-G89f~6o_1{YDWqO=qK(J1k+*8HZGUN)g`MZ;MU+(O(R}?UkzJIhuk?^X~;R5
z=XrsGAqfVf33+L^(9{(Et33QDvaQ^)<|M!+;80ZcIB9j=bU)PKdhF}}VcR?<+dXL0
z95`bbG_q_4n<A4pV+9qF74n?U8#{&-mxgy7gN2>asPVe0_3+|%RhK8y-r(D%?Tx!d
zhT@U|^4|k6pc9|W1uKPMO{rEO#cK{gdta=s{##hO8xiV|fxU^e*>Tbb6p}5RTG?$+
zUoWWNCQ$o93;C^NmR(zgj{~K2h!kDvj-@FHk@ddLweaIGHp_W1Oq=2FcCXc2|CK8c
z_uB62x`;qxUu!hSBEiC1F&=X#VVrL!vZFW}gKt5I+L^ACF;&q0lUrwZ@(9Pwz>a-i
zrDb!(acqE+>Z8})7rSChO31AYN7Uv7L^~8!Jn7Ne9;n-kEn9RnkTS154aB(xnF=rg
zYJMeziJMZJ2nThc-(rL8GEsf#&_+?2mHW%m*@YL6LCOgek)&woJ<;~(LZ&k!Wxr)%
zg}oZ)aqcwKl_VK=MLK8Pa%V0^l8p$;2$!bv6szf*G>Z))f>efkg)$&J#NB6y#LWh}
z?yzrwt{Dc>qkGzh`;rN`H1dIAECS!}<QBvxJhFO|C7yQZM{|G8m%>%?(nN|~j0hDP
z7s9~-)d?qnTUbJ=vC9_Q%XLOq?xMLW^knVr_}Jc<%RRYd&Aml3DY<oZz)0~8eMsh%
znXdLwZW8~g$R6ckQK2Q|G|~j=oiKL<{rirmX?k6#pOn~#3OOJ-XQV=Enk^+o6_rr(
zQ@&<ykLN~gf5Q-gKngswGZ$n+7q)CMSW3)5Yr<Iy;_%5ITs**q9qCxIJckxAjRUvP
z$PB9ii*ynsPk8<4v$z-6M@k`&8eICLBzISqPZIn;;?_K@j%$&+L$7fU1g8a5Bv|D6
zXI`Y+voxrpA`_YG5*R<jIx};57nH}hhd{Z_5J=HnaJ0Fi^iF@$$n~N(h9b4my<IKO
zFWj9$cuKdZ+J6ypJ$pMj7w1ICWs)CM`QRUN<niHc;uZOMn}t9E78NGV@&tX=nD%R`
z<(;4nncUv>?NJPSUGEt)F0!Co`M;9xl(Hvo4AOpvZqAnkc2as|W=j_J5O-4EbC>XP
zZ|BHqUM2*s9o^`_^hj`nbfM)~4`19rt?iFd7tiW(eE<kORJh@3i9W&|`ru&m`mO3@
zu`VGJQXnd>ySBv4eh0-U=gM<(>gb4z#@AdO;h2IH!*PTf0^o*s#Q`S_8CS3M;B(%8
zJ&1Ht5-=&#-}BDjB^_i}%T#26`{smm|54xG9b8&E5ZSgm%R2w$u-Yh{W<H!IzkNDi
zL=jz-lA6WaNU|G@*kei9csUQ0C;kT2wyG%^s*vhl_KH4%DsCLQh6Zr=Vuk^c>K1%l
z=YE`XW)rDq@E-+k_-@fqd|CZ%*QHgb_1jLG<jh68n@S08UGQZN&9<A}IivfrY{5M6
z_c=>8F|QM9><hxry0gbiq0_FwB@=-|D|JAu8y?$_5~E!+7gZGG*6nC1jA0b9i{=8g
zDXZve<u2dVdUpmXbWO>V-gAD@uX?}-S$u@}SskDWlhx}ZU}iEPe(+2vj2PZn>SS-U
zSVL7-Bw;#g?e;vGW_X?NM2rOnGXkASAJ{2(NMs^AdXju)H?<O5Dh=pd@PnL&hHfXL
z1su1r02XosV8tLyi|7}J#-3_K(%$2@qZjJ!a=UbJCQ~d3iZzPrW9Cfig$y2tl)0JJ
z=#y-6$3-*vC88g4MXs>a8Qqgq$DGoHd-rv-_r%i=XazH@6zw}4L{P7UKH8gaw6!5a
z$?I@Ol~l8l@NIwVV0(pUnAVM&ZoXa|fK$;)a;AkD;|knhSP!2M_3!cyVi(wlm4!mc
zO;?SP5^cl$*BprTpEK$CsDTZdAwhJu5s{IK1moC4Pq1E`?XHYOE(ECD6WASUnXl)(
zje*|n4*^PfDr3g=YaM__P*{y<)<%zv6&eyw#3`y9Ghnx2t+E%0i;<NpFCzzxAE%-m
zT+2f5SOyZ?CsICfR?X#}8H)HJe>EJi+dmVBb=eR^19&T2ia=R?=)-23w{*M-F@yzj
zt4#eA*lgt0)%h_-!tW9=HaaRyj<u8_Me8OnEA998f>QrVx<DSh#md+BVR&qSsYWnn
zzf6@Ybgd&A7>K%q8w5eZ$PK6Om4Pe^1x$cq-d&DrvHvA;GH2GrU9B{-mDR2P63zEk
zn-`ee-derdLt$!<%l~MJ6$c&jkPRx^p;I(14@r6GMurL|@0RxlgbL@e0Lsp~@4FCV
z4!PId_*{|sV!9)msEEURuhmIje(o|tARPS7{}SlaHbJSeph=F0D=rEk9j3d`1P30H
zXIQHhZE)&Pr{J`TnMBB@8x035ZU&twO+4r3$E_d}LL`Du$bj7XUQyNm9JUh_^g=Q4
zX_)L2ndAa$MU0Ib*MFvf*`yT`*x!*kF;EzMHG$?EMtF~i;*eXeY<89x-mJ9F<hZd3
z4EyxtM_K&~<=Lv3`~`c4%Lu>Ok%RTocn-s0XTVFae9)L8dj(0QBtya?Vo<;Hj*byj
zc-?TOVVyP_w9wQQLmJsw(P$8%dwc~t_ku5$nzU9aXz-9ps(}qFh*9Dcdz8GL$oTk;
zih6n|n%1C50#AZQi>z9wzx*V0f{#}h92cCwtzYV-6g!9n#@u7D*{-PBZUgcB+q5z`
zV~2)T>FBl2`Pxkp$bILr%W?&J(y3o~-S)SY2m^TR>)2w~N^lsxZ$$blJ&VBxLS&ej
zNxd@#Fe&m`yw~A|_5-h9doQ=@iT&flAvlNrTqOta1<nBKLScy6!13_87Xo)LA-Vsc
z^H#Bm(2zmUw}Cp}Zgl%{#x}%pr@6oC_X%>DdY3QpK@;W=u@I^wdeT2Yrz^O#0GvCb
zotbOlf4sy02C2FgU6L<iH}M=uT=uLHsseGj&k$nrBcg&w(c{d#+a%YAH$ZY}N+I4;
zVj)KL+SCjM^&MkhP0=Fe#BQgfu+645T%icYL6+j$qYHK#SG|pgS*oFzTL=I$W7#9j
zXpqb;ph%zFvlpU&@2`k+JV-$E4!aTeVBZVFQxGyxOF?*JY6Lb~Wyq=QH+(B!fAAE!
z*!7n5)Bq4f*aApxwno@TJ{kj?_aCZ~;$UK^4Q$bp8M_T7_>WIgv)I=}>%@Q0!4Pq&
zQH}kuL`(gCMg!11_XqGf>@V3H4IdPqI3w?)ztma7q{>o58c=BH=2cfCTUc7=mY3t#
zJ365HF)4A`JX;j9pljX{&)-@Jz}darIWBisEOihxh6dVeOpX?vPX?xTEpSv-t85vK
z>iqi`kCRfF+VL@RJaBu<$@-FA7P-4;TUuIPUHH1B>wf&lCVh}9_R+}`_v<nC<NMrH
zUS1oaG3^3c$Q%bgq=|DIGyq2=6fDH^^73?b);ZPioWuevR0^*QtuC}vc!Al4%i>yl
zg&k9>{<96z6!9>Co3-O3doc$NHG-}vO-bk9m*Lf0YYF=M6G>;!dwl_9ZhHp88`|iG
z)7Xkundz*By~gr=cZLmtI^?ude+4WqUQu+8t0c;I?JSZxq{1=(DaY(rKD)<m<F%K7
zwv(&Wn5e(3E$Tl5e{n-fG$Kl(6MTk~qb5GDx&!Of=^HZK6?5K<`AM8&P^&CFy|XON
zCKX!Cf&jW8oE4u7J`N5X%)@zLpeKsZ3$qTNh<rlg06xhNwBCb#zvDEi=~k`!Ll28n
zTo*!qH@LfD`u#}GJRn_H_kLVRj(LUBSYEvng2(=(Qx4L|Ijk2F64D5qvuwxwSF_yQ
zT!50&d2Due8a74-Lq)}eX@ZGaip&1-wH*sIF<(YlYNpe@$#2{YFStn$x%m)=rH25a
z5;znT686h9HCI<2HAVsNXGSM*-P>}S@JsyRJ16w8++3!V&~_MZBAojvCoi0+D5Ipc
zDrWznqK2oGqN?pY+ZfH8xjpt}hdmjhyDt!tL~s+-*BGReYusxO`!^U+F#wMoml7!V
zaW0^~@!>rZX@+2X>j`zS_J+DoCV>DC&b&b`;|KT!qQCSLc<UMDpYWW!FH$ocat@#d
z;kfhUZooArk36cG0+#f`klHRoAyFys-lF)rv6~LQeTQuwX#YuKYM+UIldr8?)?*rb
zOCj@WLX@M^Jwg=_H5~I=7v?+xLGs=B`Q!djD0t(K?`;6<7y7OWm2!PUg0xGzohsJT
zy^X-^0ibG6;d+RMz;}gRABR>#UjlGd^hJ2W8$`LEJ#`|j+gZQC0Upd(tuwoaKok+x
zi|@<7-7x}I5#OHgU80GQ2o<2QPN7%;=aC560=mdzI49f1_B#9zk8j0uc6EyVx7-<W
zv}K}VLoR9|3?65j-l;&V!^te!EV~x3*g~z@kDn2EjMxZ?+8wZ2?M^{QsUwqrSUEJ3
zQiV;OqmqK`HT=G7bwVbKN;E9MLN{QaLBm<a=%S=4R38#~&}pmd_Uc%B+m~pl`zGgh
z*|wd|9CC?Dh=<Q<Qu_hJV6u+6bcWAd-Vc_}1>j0S@I4aSPxk%LE&kmoUH&G_phWm0
zWH{Vc?p&c76T(lDEpmL_Njj5ea30&N|1TH@H?)kOa}f<q2rv?uopNQN$JIx-XP%lV
zNF*@&2Fokj7#M>V8R!z}XDAYe>gPoInO3m?^cjBOS71;@{F+;BU}gHS;Wq8qHrBD(
z{KNK=zG-AGa@F*=<;Mp14C}vn)HM3PMC}@$nWeVqF2(x;{n7uTe}oGB!}#)Le|pU&
z;#`{<Cl6Y}X@E%$GWW}wkh#UUii8M--A1?1RSG1oaAsv?zuVD1sB8G|#|U@i8vNt9
zqliYfd7q=A?>=E;g<-HC8KI;=d1YllC@jPL{5)&y6EVfAg4lJ{A{^@95XbOM>I6J7
z)mF_CuGe*Px;j^HXQpM%W@v}~_@elhOf1_%okRIj_TBwC3sN?EL<@pg3<FQmFtiTh
zxx9&=Cfc#L#kH&@lTK&TR7a}?R09L$xmN*0=Am^6K(i)|)schvRL<k$*qm;dU5wq)
zt&yIeoEggv7`1r7UI7X_bSi3UVR3PBMDzqiE`T*Bja}w?1WstwKr5m+(_DzB?iOBS
zl=Im~pKS-}i|Z)~39BLX=F}JR@t6YXX@h~S?ZAmO{quVetGhZU---a1yzh;egHKEs
zG<ksf#mu@$yCCe)lcbl|{hRNXN#{f5n!dl24OzsJLGX(F5Cs}XHf-tmEA5<QKz6Q^
zUh?=}({IQk2l?y}Y>PNo1>!MI5U8yRRH1_ws5cOG|1uBw*4?jc9y<<c^bf4{(J5Y1
zZv3@lTT*4+vi_)Qmgi1t4zK3^245V;(XjJemO8!3${)5Y@Qd!|eW$e94Z1=0)CFE8
zEK}|fowh{`1jg41V$pQH$M(NV;Z1FYX_)jx_yVf#1T-8PH4`@-!f8#%+=t)43uQH?
zK17zwtYX5+8?&pGG%uu2wj<K5=f@yloqKVU7}bW=$=~EmFmH#$Xhr+CFL@1$TfW?k
zxfOju6nH+O;N;Pw2p!1<AI>LAy1nbkKs~UU{J|`(t`4rR|FRp53^|j++v(G$O|6zA
z=osCKKe8$XjpJqGRY$nz1u4KjIZZJv9{>w9sMENEZDZ-gNUbbV{p+U|Ot-yOBM<%&
zL@ZBO_G=NZZo3C=l3gT{1W=V6y1dLC8WtA(ohzzuk2)u1!2PwoW6LupBBns<jO^H^
zE)E+>-FjeDjQQ$oKyRUu-wem1XOBprsqHPq(N>khW>)D)Xve)Hi3T!EjILV8Srt@<
zW@Au}pu2Ob=56yi#h)pW;XDx>Vb$h-Q(e!!9S^zwFM5J`-_VY{oVn5xpIHNy@XmD;
zF>4ir02B6x(+kOgqT~{H(qydrExp4#?fXQ+m6C*<FKnCSquT`#NiFQjj;!ZL{HQb$
zLGWElJ-zF@G`V~uFTmJ8lY%#x^Xe8F1i-r^p+?y$o*^eO<i!W9uxHUPIw&s(=ig8@
zl<Ul)6<<G)p=>|CMqr>&or^P}BW;}5CJZ*P_?q2vey=&d{8K>jQ7jv}L%B4X6NmIt
zRrO;|vhT&V`r=utpwA|(gV`wjtN5S+ajLY_rIOAi1h5@^wx8udB(DjxS;7_bw`OBF
zC0HSk+(vW=YZtw)uI^0sr@1B^O&si-Ki%kct|G1edAb5A4a1KhmdmBt`hO^^#m(-K
znP(-@IRWGM=c!G~ba#tYLebv)M^av+9Hc^ZUDeh1pz>2Jp(;t5%JFCS6HzJ<VOafL
z)6dc}dPm-+bALkA%LE1{rh+@AtA3O%k!G6>#mkD2JdqF~cQGET)kZk@h;ZDc(}fDI
zOdd~Y@yHf5X&L$v!EyIDBR=-jmOIW(O8+LUO@L=-W>^%@lB@95e19AV^mY_{ZN`Al
zdy{XCK$Pptx031w6ujCWIyGUH>$gnH@oPj9<Z*)kE}n)NEG^m^EfQ2EpUy2$3|(1t
zHVYR<w(NFi6EaB+e<Lv41*ND%WAD!zjyLn35sO4mJNA%m!2xoO8btPR$7rsEkm!bG
zOS#jv!_`su*#XiZhKu>X?pQ6P(1an_&Is+^>~E2v?>Uei%YOR@kW(Kj;pEhl8xABK
z4TLpv3Ev1S9Jnu@A<t4y++e^R!oFRcY~=-B<@9X9%0r^EP59%==giH4>SVw&X=L)u
z>7S4!$#01#u)4V{DGlx1q`LjrLa3|!+eX{Bb(HD&1oRdbe=uI|PC-dY+}A{n^RiQn
zMoA0Oie(+DEJ@NqyqG6u+<A^K`(T~B>+qCpuc5BTre<uMByB4Z2JJ@L@QaFxkkC|I
z)U|UfLk+uFf)fjW5oQ{+u)Mb478Kz@jl}cJ+kX29jXWDjE-4&|w_GJgn{QgMU^$VA
znHaUsX7syR+WkJXhfQ|t)Gy;wZ2fD+JsqtmZq#WrX8v*nT-JgfN1=;moLpvKIV9H4
z`9AhV0$jXxkk$&iA*=F;Z^e<g@v-cb_oJ>RHS;LCKAb*&(CDfKw#-=xd7JN{)2_H>
z<aTLdK`ZKDRQT8~h`b1DartN8yd>4g2E|}E+^{d*@pSk;tvwvh&kyeChiN?ND<>@4
z?BXWu?|dH(pG5dGq5`y0d^}0u`ejlm)%Yw9zFM~k+d3ieVbC*b?=cDe;s)jGd@sUQ
zukxjMq`E#k4J48E1~FMtb=wf`I{s~UJ9$2E?+_i5MBteU8Df4yhN@$a`I7|ZyU*yC
z?*X^Fdd0LaE_~;SnQJ0#Qn+RCYE&zB`@ob5Es1XPQFi}uS&r}SOc}Ng&R^ln_Y{P@
zk(fK?)cRUT*wI^iOieLX5x`N!UMpR%Q85Jp#6m35&5mB*4X7}2cox{%@Dkig7UC=O
zGq|!2L+vz}c&k<l4OaQ9jtiTz8ao)t1Pp?e@<OdjOO1=&%O$2*sEGQ1T9#JVXorC@
z7>8W6gtB;Z=isKeN$vS@NbykJ4@+$}b~#G%qK2o4zqxn;xs!gi)a}V5#Y+~U&13Uq
znsX$q4cOGBHvYhB53OHhZH?6KnNYXNdfHFvm@K`%Li+f@3gx2@Un!`iD5(Af>-?Bs
zuw|ufZ1%NYO4p(6%sETmb@BjK@IlP5Vo8gtWPGLJd5+KlO40qFV;hd;*84+B#@WY?
zNe<#o_x*I=!saUu#Lckas?W=>Ru)|z`~Y3MWsL8RgBHi=GYi2K$Ca|Lm=fA1-0_1#
zd9pY7Ikx&cl2eYE+OoTphBFX$0guUp&VFm>+h108TiK(1ASTN;KK7sd>?o@*yU@t%
zj-X8{%WG7aE=O(=I-e5j7X6ee_F#NmYpjLTKrB;xX>?oR`GocY;o{)9NrNV~xz0d5
z9^9p$eqJ9{Fz;82#PAY*4{U(e8Ml4$PD=EWoS4e2p9$t9*&5ul9m78nGTjSoHHY%a
z($`{aF(D7NXGs6CaWiDZYGp#J|D}Vd81^2%Q7h~^j-k9p#-xxkbxfsF{Jrz~BTC2d
zWY4HD_SdE3apM@(4%_2wKHOFibE=*+V4$rvC98&ZNcX(m$|eJmC*BM%Kr)<A#LKy}
z1;7B8qWgm*WH5T<fp?c7KmRCL?E3h4H#M1Q2mab`_ap$~yYl7RU*afxhoHhBa`gNn
z1667n4FaZ_VrXTAhEeQ84boE_l*hCFz!vJv+mAXoaC5u@rgmQJ4jGIoA1Qk>!1f>m
zVm@=!wUU~rOyk;5J=t{_)CMqq(74fmE`XEiCBRz$xO~QsDxUYH;zE<naTgB0dliJ&
zSM!OPuuMSkrRyr<qqbVw)kR=8?8}Eleqt!n=;q(mwpzQ4`fG%pG~XtUG``im9ne~B
zpL>5@uE<CFYZth)6$w)a1&YMAe(zOOR#W4DoBXE9E@)lI^=h{A&ozA4&~UdzHf`CM
zZ@XB`5s5r(xU{!ugB7cgJB!)sxyJ~RnE&GdKxKCm;dn=yT<_M?xRW4MtkU-+N5Z=Y
ztnvuVN^msF_Tq5k(-*h$2o@#}xj`EAgIM}eLqj*8@-^nB4ta1|DGe}xING+C=LUuy
z1oe^NqAb@bdzO|}MSbkgIkT6@W$oLuSGwJFrV)Mn9T5`|WnF(Dhj2OP+Ioy^M$0#v
zH7zFOa;cl$5y{5B)3fQl-eV(G>ph4OY=F|a51fl`&i>*=;LN^HL?1+~E^($wvvL2|
zQ(y00_XvBXC#b}vuNlGg*jD$dT8}SRn6FJsmaE0MG5|V*la!d1f)OcEiHgvcd+*Ty
zD%rA;08LvMVwtL*f6|sh+l=wrbV4>FS3rSIK4=#xa_#49#;5Q60|}9c7Zsiv6LuF!
zg+4P&76{!FP1K&AJZYyILN+{KW_;BbG195(g{xS6bA$0c6}_HT7d;qK9)+c=72S>R
zbxtr?LZ~?L>+k<o(!<)QY0-06l>*b76kn~XWCJtUCF*cIFGShqH7&gXN1bq;ooK+L
ztns>8b=-8$*f6=AY)up~aWYu*B&a(nZ+0S9OcdO3nAgBv;3)?_bu=<Qx1R`e%U&ML
zB|-SQ?Qm^gAa|Sm)BEw<56jGJzcNrujt`F*B~iA|5pgWG7lBz%^Qv}z<}{k*z)h=`
z5+CMBrbi(7-#3v6;)EAF2Eq5+QM|blk3FCmx;?p=@YiJy2pFTbdL&s3LF|02@A{2t
zsOhTHt4#vLur<BnhtoS=_g%}9=8(TeRdN$))d@(lwLwrr!o5Ti;rV{gE;^q^5WEZg
zh;{3cF~NGxe%)#%6M+_X7{j)@X3SEaQ_?@2)L|5qYzhr?l|@u9b>C6LRJ$9L#V_kk
zVJPlJYt6duLUt+XrD-+7_H3Ru3%KF_n?SAbPtu#i`L0yvkN(=CHA2^Ft(5QSBip7M
zn5hPe$@Xfy##^0wea;@9^4DPCWPad+X_p^H@tiPDE(**%1jKX*z2ZuYe3k#VH3ehq
z^*M9+O71(dOmn`&Jls6D9!0)f+vkE^;Em5(6XwDO4^uq4{s2<{_N79%zT5pVkKM^W
z9k+WMz~yqK$?0MpriK=K%oc-r>kq*rAd`v5-^dE;hYEpE_GE4lrLm+{9B4wO2(h>-
z3m(=&sP*xP7MI@x)9d9<+<;FXNe@)0(Yny`@@-PThiu=+?Oyq@OTf-fZ2Q0uUpFvO
z>(Q{g>I1pbl<CUsaHW#T!g1*Rr4yNo1V@*a_|p;|B?dt@t5<{ZiH*M#T;E+->y%5P
zuh!=r@dk&t6qQ`c;{O2`b=<2)Qm|tcl7;^E8*Q&wWaQo}vC;O0N``~?Xe^d2EwZdo
zmA}&F&aJMne&p2DJ^yVIt|msShOZ6idmjRoBD*sMaFUSd_!q$<XGH7X|3tw@f$H3x
zjHff3YbHvI5ylUPK^z3Vf4}y_m;L_zyU~zBPDA^{4Et^%Obl36)pbPB>rdCt-ckk;
zisZJxmS$h;!DI|0k0H9y&n8wbO>?n4#jlH&%e)F-WETr~AJ+DZrZ1m{b5FhZ_(^5E
zSkV4#R{YYpf!!y^u65M?!+rDEe`T<Q6^ovXIOXb&j<0ZJV6@@tLo6D@2=5Zcq)&9r
z#KzTola*sU-_=+b*<_CM0{Mm>gyYGh|Nkx8-{|aCG68DU%oSd!#z$GF;w>klfB{hT
zqfa+jn{pb}ExNNA*mi@`hvqiNgJOb4`$H1Vt`FtgOg{9sBDD(bPTwYpP&r#)x_wS>
z;=_eL=}-M3OdJd%NI$+KB17GYh)!5ueF0e4><$!xi(BTxprW4H>WH2B-UhoNCskOm
zAvY!pEf({>O^w;`NhuXQtvO@RF^y^O_Z$0O2pWn1`A?W3&_$F58^-9`7l)9l(8z#F
zsha+7)tbN}y?4Zz4Nlz6iy3TWpU0p7IGM-6neb!$yaBeaq_~F^*Y?*pj(CSB&clR{
z^-CM_efZeON^!WCVz6M5f@r1=8&S56LR&zCByf!L75?wkFT+Zf?UGH7K{#-sU6Nt^
zj%Xjaq+rpAb?=Pvv9TZK%rPj6d?5U*Bp)de`i?WbmTeVGmfYAUuZFBZa4)f5oLu_^
z%unADEEI5eH7qE&@#wh!=dj##*v5W?!>GPe&M^P+epj1hID9WPI85sK`WVDoJGCR?
zNaEYl*2QebN9sSR=BhkWD9ff)w#zRA6*vr%1}kesdbFY&@3Q)n4I_1JU;C-Pu+4LQ
zp`{kkAB{h!U3c6OG9!}<KzE3h1~IaoU7<+i*H7tcLmn)`FN)U|b$0X$d5Zq}A265n
zRx<Q>eY3SB7>e4&*U-VxX!~bW`}=ru7pVNa;nLCA(IN8^ofee1RnS3y|5B1|HfynO
z%WZ!wC65{xGc>i>(=e!7s(N%9iy_^+TkDR<12F}Z7Uc|?hNZ64I?o{T7*>}^q%h;#
zCLYr@RTqwRULD7aSt8o)!J;BSB;e;Y%q5hxil?q;`Y(VxJzIQCxb;YyaMM#A)WuCP
z`IsHnV_}Riss4VcD2w#lTS5NQ|1Ib7@J-}T#cu3*#DBB$$`!*fQsS$gW21mC;iOwG
z?hgyYK_<rLl3s(1^+SO;kh!whl*H3B`kkZ}bbsu$t+h$~V;1S8YU;C-K<$ezKu?rG
zkT5OrRZJ*MWOSrv<6(acwt18Xp(9%+Xzvt1Y6t`6k$SjubF+8iY3EMOkv!2tHJh>H
zVsLfC*1L4{U2px>6Wp<tui*V}3G%Ni?uL=)q1Ht=Ii@;a?sHX3YrNeGdfom>U!0W(
z`<25!m4O;gv?#SpMlY{|uYxr#@ifh6Z2h>r3mgQsX`>SdvOErglwdJ{S5uKN#(;so
z<3@VWdjnjNT$kVb@k&Dp<Ruvs71dyDY^<UbHupm>fHuKBy1cx6V0KmsYmw>c?O_XK
zSVHW1R#(mKzn0gs1Thuakte^X&x-r!+RNp5wn#Qxz0qu@;r2{H@a?ui&2Bd29;O32
z-qZ8T$9_Biimy?Am_m-7MHB{le0)4#LKlzu{n?65T>gqPtSA;1*44bSLeo&!XpX5c
zlwhk`jjk&>Senfiq+5X?%r^3iWUkI=IHRWhqAk(;<$k9A#xUm6;qSOxp$n+CN`5(H
z;NgYf@f$J_FJx-bezU_pP4dZSbbS2R7@F-C)|V6nF$;PgM)H=Ozi69S_?NFPEB{g=
zU?L;8_eOr?%^hDBx`Ai$K0@8VA5Ki4Dde1O_ZuhLR?Ts7h7J63vDrqOvyojitxd~L
zFiZN$Uc;0?1}(OymxFc;F~8X$+P2pXZXk_(CT{Ki_05!Ej^9nxcg@TktL*lZSRb2y
zzKi=c+Yj<o3V}SGZ-%(^+^!dd7!B2&Gbf=xE20e9K)iSE_h%ZKvD&jmGAVfbnaPrr
zblhO0)02~~Yp6T~TDHWHhcsbpMWP3p3^pTiZCTmz(4(Ux**`|twv?Q0KaqiPm2s&w
zy<avGQ%fg`L*+gVZ#4>r@&N@xvCjE)F*1%q!ULPWQm<P8bb~2CZVuM$^tgjGhBTHn
z`bOt`afStd{2Ycs)AHMTtuGjffI9j=#r)!$?spGERaNY5ub<BAr-@~g*L%Zce0-S^
z5fOn30#C+$jplQUFCf-9MS1P8WXUJrCOQs|B#le?9D$AfsP+_fxWs8>qUHR(2ppE@
zjLwy`=K+FZvru$KS2*Bud`}>`2)=x39R~-8UV8_+>~M5wDDLSWqn|$Idv)A&m~Yo)
z>}h!-HHUGenL|Q+VJ6|)i^Gcpcyn`e-$+e%YrUu&n4y86k>(12i=?)T*ulYJWGWp>
zKxl)zxxT)kVMTLkj4h<LmeoZ(8oP14^I?;Kln2eegeQ!U(=1EC`xzi@17xP-0`$XW
zHEQ;6iDqSHBF>d4m|{AO##3e2`ZnLpSW2<O+k|7T+3yY2A*)rY_hwE)<e<oVog_TF
zC~dB?T(7F{%bVX`afi*JS~Zi?XkW(f*$!IL*<9_ArjXX@yPSR+Y=yFymzQaqD+GyB
z*;d!v{aVgzcEW9!5sKjJRn)SC?OCAXaqt9`UIOWVg1hS==tTPkL@u!#i-4TPYS4$g
z?<3-Qe>U2Z&OGw&x8?n?!Tp7i%ymDS$gz!3QTx~I>@2vSVzO7i9H9&`5C-KQky*+;
zV31BSGd9dFgUj~ftH<q8LKh%W*~FJBxrfVgkr5hm*O(HY<5`hg4>0Szl|eq3(j_jI
znXu~icDDoqA1Os|Y>icmL^lI@==^IrfGL0wP@ihw_6O5(Z`d69WB8SBw@~!4uF4wr
zrI@t7@T4m}>|>|}zs!R$vfW`g+9CH7#DC&yHyTRlO{fH_{lIxFD?7cy;jdqi+;-c5
zF%%^^Uc-S<z}RJ(atSW8nZPWe>9rqo(vU9|B3e&l<JV+~OMlj&wql7O^1otj#y&ni
zDOulKSA!Ap92Swla0vXp$m_Wl3*}hjY3wkXjb=jszB1}{5r#)ZfR>v~4*>GUdK+<n
zy6#sk{Rl&vgsho#JC^65H)11*WIANrxsi^2M&O3YV64TSD3jaDkhSu*rWMbib6#|>
z*W;gyUq68_K}d~r`>k~lQtvx1T*SM>Ho_oCH}C~S%;yHZWeuYlH{b4R>vmezOg)*(
z27*UG$SW*_%(=Wu`*zW?7jAexohK5Me?<{f3x)Z0DOL*h-;p=^m0L=8$~#SQU@mqd
z#b~YX$NSYMT<C=e@&k;mR#Mt0vc9DNLwG&+qPRxtF;#T$JAuA?6Q6Df&&)1p8L^tl
z<M>k%`Gn#b9kyGzN3JJB&N;>Ydu)Ve)jdPuv*s3WD$Y4Hsept%#-F<+ZKTgM;Umrs
ztdb<({d`hU6-~@vE}BJh(Y4kZi|?CYKPdTB)A8>Q7O=%=7#WwxfpXnxPR`iL0O4Fp
zkkW3(3#ZMgV@oOj%g5`X;EGqtGc7d2AEmBtWLV0FX9pNP)})jacGa^Sua&FO1RBt-
z#9y$S0#4)c8nOnzw+8<~JMy>iY(9;Ob#KMBkuZ0@Gf1z8-pWWSDn2AwG_(&CX%6=P
zgsA3wn8w`ahSL?(93r2Kb)K0tcGKKXi1#yv(OnDLTVxa@@GsG6cPS)kL-MxrneCup
zeLl@%ri*5)r^$AM(DgW`g4X4N9i{$vx1<Nd(FbYw6`g3*O*sDufu*BIv?s^s`Pf0%
zSIAp>Nza$RLS{+owvh8}?9l<dgcjYl%B`ZB#x_)?7M^9mYEG-R6^`=AabMyXhy+s<
ztSW?>dz}fNy+p)!u)kl}qAI2hwy?FreiXj;TT<cMHj3fr1i-bFnv5mOMi#Tb6`wYu
zj&ytJ>Slwrog4)q^p>i1_>+}AYzv2<9Kk1nQXHug<Dq}gJKS$lcjCda=dEJX`T$Cr
zyn!WAY37g+Vvo>cpM5nl?~C7SHW-gDUOc2cMBY54_5$T1!MO1ma9;Dpwj|7~&+&V9
zkSpAY8*^p+9xEfOX(*tY67<ud=i{cPrae1AXyTDJ_7D05;V0NlWHkuV-y00n)Wrm0
z0iU4%e9<(b$hZ9=%tz{wiP({2mHrCJoqh|MOXBnBk0)~UFcd}5kIksgI@2V$?H`1I
zqx;_@q{1heOw0GzCt|i_ZCOLL{fO?MgiQ`$+`m%9JDEH0L3O>Jt$p|x!;Bm>Kp9XE
zSxlNC&+RiQAikbfv%*Y`EffZ!CsB3!58zk?uKue!rPxi^@z93!XAuzSLh_H%<qXdd
zgY99_A^i8drKM%jcyyp^wxXh9c&{HFR*Hl#CV`3o%Lq?Cvij39s@6I^T@~5!{vyds
zNgYe;556>z#-2WZsLLdLCi`yZ!=RrODHZtq9=CWZ8TrlDYl}hLORG(muG^V-(jJ;q
z+59ohW;6LdH-9J2Pft%9yx)FZ>_bOsxjIf+=kQYpNc;UFA#YUK<X_qdCggh5?m^l1
z<IU_T*SGv@W`a1{VEjE_YAzA>*f;ABI#eD(KIiMrar4+wfg}I=ufoDYl@ha|SFa#g
zWX*?CS3LKwKHfbHbo5nJ*f@;eWu>L5ei|fy4-fT@wz@xjIzGDghkHAO`a@7+dU+ci
zdOG1rlUgVO@)?r%B!7Vc7bR_*3!I;RZ0YR_&b$&E9UVQ8oHzdQ<Hy$(4!8Mr=OrEd
zSE3-%Rq&I#e3#GL^RHsSfi3s7M%2N~9fYV<N=3jVXG*qQFrjaISa)6grX7|1BjuMW
zXh+sIB%0oi$F3|GbsXQfrcpi*K#FqrY|-`?v;=Bqhyp)RSv~%kcN(xEvHhqMy^OP0
z`nsBiMw$4<B2rGEi2OW~o-kK)i-bxTH9s(?C&c9VRPhCp<rDSYtS?bQ5g~!3f-Yz3
z-!MOvj(I+_xlYrC@*iifw{r?Hug|A7Yx&&tH2HJ$<knnVH$Upk!qRNXzt0PLzg`am
zmGV+slYU+M`M-c5RLB5GumTGQV3!rF4K<AzY6J(VS>p<A2J_!}?_VK=lndvM`JQ!h
z{UZ)G!u2iWoV|Lg@jgQga^|u}p&bt_7*FH-#>0WGP@rKIlvwxMBgFl8B47AVBHiJ#
z2mBt+>)-anwOOIMu`%&C&0K3sip}%waf!0B^0(YaJegmye_k$7B)d+EXESWOTKhj%
zBUrkQDtw{$1s}HqMMhoSif%)GQN(S!aEvxV&j}LJVfhlE!u}9Y{SG{^BZ5;;?u%oF
zMv%bgbF+g^HkSz|fV9Z8tg=ADbE@sU5&U?)3CgYT|0GS3cKuBRD3ZvWdNdh}2k}?3
z%Jqj&tMaVfpI)fHe(+4gc5ks|;<&b-&gPSMOCtSg5#74*z^iV`H?A`jTxl}EyGifi
z=Lqu0`qzHsFjMR3L4#BT-(l_tK(o=!7j9q(OUGTH6bj-e0Z_=FMtyxUEV1RwCI13Z
z|GW<#o+Q#A{Kg=Jy@vkfTXWz=XT1;}7MyrP&>%>fGX6<rX#;r>^oivtabbL-GyqW=
z2RCdHt9Z;^O?px?4X7|Ww166?ASGBo-=|-^dcGfSV7+d-L6BygXX_rY-^g%98ZR71
z^th<InJC8%?24HC;!B_raBXGHOU#-m40x5HcIC^30wx|~pqRO8_<8RES7sZL&wD1r
zy!L=PfZHL^s&;P+Cdx=(Y&zQiOqWVI;o8sZ$_-qk^k)}1DmiD&NBZ<d=i1M>qpscX
z^hgudj|>nTukbGhrqQtj#x9YTI2OYZF|m>J*5Q-hetu657iC1%nDoIor?55z@VJ#o
znMd~MIG028KOZRi-#xTjmMkZa{>#FWIyZ1bmOV$k3OdbKd}~JH+O61~Y&Wo6VAvoi
zJYW#C3b6;I`_4zIb%;;-pLr2p)l33E=G}S}KX-~H>;3Hi^vn$Ia`65$HqjMJj+q=y
z)j1<Ay{5(QR07Gs0=J&@a{N*;@JU4lSQ^<Q1BpdX)1of*5(OW{>?Q){mU~A>Z`4IY
z?sJhujun#qgd^%cJZE$Mvn(G_<g`oS83+#Q5W5wX=bH&)_DOeU&#4B)dgBd9yd<H~
z$$JAQBstl-L<{u?-z!ETIUCZ5&Zx}~DW54bg@NfZDQ!P+FbDQT-|niOpZ$<{hxs0F
zj9Z1jXrh&k#0QVgE<@ThCZ^)c!c0)F{gtyt)|FYh&}qrxnce)5n4+fH^Y!orON*k=
zU8(<{BK?aS`ju)I9e5(mYxv}5dfW{hp8cp70khs@sWyE&u|YE3$sywS=OyJXs?yem
ze^oAQ!n&Gc37ve~zw*7a_16_Q>$l1YpQEg`EWIGyFIJ)rrz2uYrLzk?y?PG<e%`*5
zIM*q=T8&3ZS!;(hfeZ0^syh5gG#gJnVPWK{gR{TAhodilI-h2HlKM`8J6<Ec`Tm~^
zBjHv=js!T=YJMt+oOQ~5f5{2Ylj`p8!^Lk}>|-wQHA>i+ESz=fZ!(ZlVD!v<dn~Pd
zd-Qx(jHbVSRoUWu9$I{N&+&dY`L1GY{5lfX|3mIB?qS9fI!=9eg@m<iiZ*t{STX$}
z%2E{IvF_mtSoP6(N+%XY$MObK(mjaBlJ~cyHph7j$s1dKUFN|{;os5yK?;M}FKLE^
zXTG5+6x51t)j^alhpn@Pw?M;Xt3`irKq8N5{!i7e*2xw+6Y|;cI3%mhX(P$Ffn4Ok
zp^E-)7;81S-7QC9s8yVT0(cW&7YQ+@L}YiqGUxgSg~$*?rAAsgUm_h#>9BGpEvr4E
zwnTJM{$()a|G$fYAx4N>r3RUkvH0tgy>s5fSS4)2e@zd5y!>sI;XYT2M$%GK^J3UP
z&S|YVC?O`sIZAgUpk8YGZCiXg1<MWxzdz3i=Tc2m2|6lBd04?tBdyNvUwcxpZUXVW
z-|_rn3{u(~be}(a(sZ5-4r*&xUIOnGHn;s5w{iKMwz?8N;j34g&-Qr9f-r#Iz{zSD
zvsBrlhq4JU40rzJ+;B~}ksSU$`TU__(~fv%4$VL0YAkO08xPEh96q-egYi$!O$cXn
zB*mPjprQgeKaYZIaKT1g6a-G8gSKFZaBKOzMOrWucKtn%S%TjZt-|UuY}9h|rlG*L
z4ZAFzd!|ezp*i~AfH~{+AWeB!SzD<_4g2!)q|pE4DnnTI+^!k&V>N8w^t<2WtzMm=
zeipRH{dmCa?3ZWKivR02K+4Rp;;jTJexlN&9hF0e^A=>{XexiESSBoPgt|Xu4VtP?
z9o!=e1n1u%PtOn$`dQyF+U0jY`lIw|a<p=}CVi+K-rmU4#jAg@z6K$jscpx)rEDJE
zauoN#^39*%^3$ww`#;>NOE2FScPgt;`l00Fa&;OeAm&Z0$`h+n%BSbIE@DU3e#ecy
zFvQ(bQ%qN)AFqC4RVaMLe)O&1$Yx;2?eUv0nznjx`eXQWt8=V#??r2&%7_LJ&I_Ny
z*Fa%rw~u5<V28zfdd61%eYO^RRsu}@*YBS23Z(xZ$ME$9S6TY@oK+GNI`k4HP)C!5
zuiHx0WUpBHf~{lUfX!B$((%8r<2~#=QLw%g4Dlxn1r&Z&tZA&h-UEq#Ly*R9fT8lB
zjioA!Q6uUtNDZdWBWONeV^WB2b)S#W1<;eukT>LeZEO>n$XXYC(O*HT0auKuOs5i{
zremAcay$a2E$hr{&Fuv|^{g=Ilj;oEP^n^!t;ZiPe7I{`Nn7?{H7NN@JZY!?pQ8GD
z1$dg(GaiQupc8BtL<CjMtVJ5LGA(Yodo+Q0@>rsNz0lzGA0(k3n77N#Nk@A$((nO8
zN*Rr;t<1xT-(vwRje^@v&4T*QKbU-Pm*JRcXb{3w2(|cR4hIS$m%BemKlv_`;UiK%
z#VboP@et3ddUQWC5Gnk!@im6DFYMQ%G}<Ah-?cR_clV2VeUBJnI~rH?)iTRhO{VAy
z%zv(jEX!RK3OPwhP3v%AywW>ECbJ2T7`0j>Sr~Pm6KgY)EI6!S>D24JH#=F+*&1aQ
z7%TAZ&ee{e%6)VdyZ(WlDFK762Z7Dj7m)ly)_p7_nsmTC*PPR_Q7NIC%Fk(q<}}I*
zO&Lni@r%PKzzW+D*5^6YG;ZQ|#jH&RbHZ4}I>~v{NFk3)n|&5kxeUi?V7U0tc}uih
zNF@}w9^js(Q&I}(zX)mP+d~19vWq$%77^vYF3_oeoI!&BbAufU9sxctw-oV{g0?uF
z%!jFAMmQcmV88kZT0$hMVAis!1~+5w<3&P;9+>%p4^t2T&JVs`-2l}20EZd09aep?
z;BpiDCDm)|I@7%{mR=xY@AiIDp~2Rp00^1xM%lLw<~NQl+^*2A5|Bdgk}^%;_+{6&
zwi?O@_lD_{IG;V2sg+gjP7wEC;Br3;&`sg!SbddE4i!C}6WbLaC#exD>+d?u?`P9s
zPDuK$v1yXt5IT5F?r|i(Kh0~YsCDblK~cSL0eg<}C|ED3zZp%ELP=R9zv;X0Wa!~R
zkm^09LT$hEKgwn=zm#g&p4UN7vWMf%SWa`)M6Yxhq=f@gWl>h-5=+dBXi+^OSKkh9
zh}J*WTPy+X7g=K`huyVmimF(}w{yTcV!ayINrz_77%un1rJE>PUW-6G>q!Z{`DKU!
zLuxf8onVW)2Duy;x4KP=>&5dG5O$_Er5~<&jZJjJDQcDtQ@BU@u=$VC8`U;%L!vKB
zpd5M|r%+0ZZHA~TU+ra#Rgx>;&&}%S;G4)53LHZ0bpLa~d>B4hqL34WO#7SUo3h!~
z^?5oQ3^L*LS5qZaH+@CE#L6*8JbWV|i-vlgGI~oExHnI6q6V+o9Bk8T39iY&_ANaK
z>tU2TzpJ63{+$;nL1@>32E21nPc}ir_V%*KG{rsdqschu$n$TOdCV7Ub(ViTW4-<S
z{K2WJbXQ{&YpK<4rT46s7+!+8Owd4>#&7<MUy#DIq3zz1Zlzq+zN3R<=O4KKy=u-U
zUk;R~@MV~&6P65g(59%-1LBrr7_U<Z)T>W%T19KGAL9f$>#8-j5zbNE<jzr+oqLv%
zX5!*@8<XMm!Mj4H&vHwnwU>H68y5)>_Hkg5ZJuren8rPtK8?pd6Tke8R!aS=JwNEq
zWP5O(EOOECLx8AhFitRIKnWM$Ab7k-)`$oV?LX&F_Q4fUBoq>V6Pt=)&Ip=FJcfSu
zOF<g-9bOln!2xL<fKod!;CY=g`3`bqpBjEZ=kNVmPAG<-q8HiP$()dSmeE=ZQ5Z-R
z3P^EfhMRR6VO;;w!7AZU(Ga^Nx>gF`#^uDuk%esj*0MTuXocnA&Zn?xB?lxKphznl
z74zcb`=7qw1$I+@hU!<nWs<AMTr~DL5L1B;Ke1YfNC=v5APT2#VAC2(&%VLRmGO%T
z_uB-{=+lZfQl{ftlY}G6+57*TVJ*DWu>Frdba%3un?DvFE7t>3ykUC7@GH*)%-8=*
zANo$7hkJ_f2t^E7%|jR3hs>318LwQ5CgkSb#Z7guNKgxgN}I_im6@rvsyilENo7zc
zuo_Lb)q&x5#o5kkr`WNhDREpsAtt|8Ty6VJ%#!K4d;{;7Ge8Y@slKE`Nt_tjC_flh
zBe-Adt2A`uYN(3$r(V!+(IbbEN0Uj~mPahH;h@9lqcm4ubKFyWfyz4km*Hs(Z)eq_
z)24|e+~=O3U!t@i^2qAGw8k)o1WME}=-w{|$T6)3+z(6|WQa!pKlGE<|J6@QJa`(^
zfL#;nVp-W~lV-Au0^S*yT20b$oth3v<3@z&Rbdf%Y_9AdncYJ^-u+a$g8`#{Biokz
z?QgS4hFDBlwml?fh9t;Ghd8bF9}|j}ZTpaVwN3f^N{#wksk7YbTWXXi7^6=7e(W9I
zFyxly%T3;R@4g`c&A#b_VIlD@1=wN17cR@AyDKSzUp+EPm+oB;X5xI6sR!)hPxq%r
zg5MSw%gxtApDyn7-U`1PG>ht{u!-Rp?6RWBQnk63RlAmH{Rf6Wv+!3--^2N)XEM<5
z@>7nuq>L^oEr<5K(wl>r4$t@NKk4brRjY+qN<J^?ZOa=B$z0|f|F|++ZYfjFzeBvE
z?xz*#{cl}i8)Cfi2$}~n_rB{ppt0v?X+WJU1N`r=vpphJd9tP5Pm01rcqYBc97+BX
z-H1aRmbf^^2<Us@c^V*rCHS91z@aa_7#c=IqT}Z7ftz*u`i^>1zx@);cAz5BB_LGo
zXljXC+&NL<2i1_>pVZJY)j;?1jRO}{21?Q&qe8zhRwK9j>vNQddJz!M|65z2l|ZX#
zqgH*}EDyQ&{cQsQtUnpKFB{*DHia2Mxzu~Vf8*hBw&zwiR25iGEN;r+9-?&rq^p>4
zYL25S{s=YQ&-+LQc;@I;U1+Es+b<wqeFp7c2-Bce{pBC4D1&mLxoXnJ<81?r9yZQx
zl!Q0Y+$~gh+mEe~y&*9^VK@CeIt)8Ru3`RK7!wiD%0wuD2PEcQ2iK2+dpma%r}hDj
zKW<H$SUAw+X#+(A1vbADhTWuUY6P{Om~9W$6o~}oQ9l6~f0Kk&n5gUMh>HLRZ(KYx
zo}3nVbL#Hyewa#d(&O)_XKdQN`KNbcrQz=!VUqUfpBHhq_5TXed=FS?f}iv}&GHo9
z7kge8L94botPg_>!o976+jr~Ql73XA-O{8<t-4w#KNczK8qxn=Z}IfUWgl|4rVdCA
z<U?)$ijpds?4J-d(fzrGCm{$toWJn>=LP0QUvm9l0c-%1|KA9aSagFjR@GOkmUm?O
zh2DJ1SZhG3)$s$ryVtg$tARuN1G){)*XsU&DJ0?hTsrM?Nq84%0d(+P=z{sB1i<X<
s?A*)sPh#xVzRN4MiNnU){C@%r0GNdA>m4ji-v9sr07*qoM6N<$g7oZ~ivR!s
index 6cc4c90e4b619d2043bc041805d4b99b2c5e2fb1..b99f2e93b925ccd8f45ff395614114e482f612b8
GIT binary patch
literal 72850
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
--- a/browser/themes/winstripe/browser/browser.css
+++ b/browser/themes/winstripe/browser/browser.css
@@ -156,41 +156,24 @@ menuitem.bookmark-item {
 .bookmark-item[container] {
   -moz-image-region: rect(0px, 32px, 16px, 16px);
 }
 
 .bookmark-item[container][open] {
   -moz-image-region: rect(16px, 32px, 32px, 16px);
 }
 
-/* livemarks have the same layout as folder-item, but in the browser-only livemark-item.png */
-/* only the folder icon has any effect for now, item icon is unused */
 .bookmark-item[container][livemark] { 
   list-style-image: url("chrome://browser/skin/livemark-folder.png");
-  -moz-image-region: rect(0px, 16px, 16px, 0px);
-}
-
-.bookmark-item[container][livemark][chromedir="rtl"] { 
-  list-style-image: url("chrome://browser/skin/livemark-folder-rtl.png");
-  -moz-image-region: rect(0px, 16px, 16px, 0px);
+  -moz-image-region: auto;
 }
 
-.bookmark-item[container][livemark][open],
-.bookmark-item[container][livemark][open][chromedir="rtl"] { 
-  -moz-image-region: rect(16px, 16px, 32px, 0px);
-}
-
-.bookmark-item[type="menu"][livemark],
-.bookmark-item[type="menu"][livemark][chromedir="rtl"] { 
-  -moz-image-region: rect(0px, 32px, 16px, 16px);
-}
-
-.bookmark-item[type="menu"][livemark][open],
-.bookmark-item[type="menu"][livemark][open][chromedir="rtl"] { 
-  -moz-image-region: rect(16px, 32px, 32px, 16px);
+.bookmark-item[container][livemark] .bookmark-item {
+  list-style-image: url("chrome://browser/skin/livemark-item.png");
+  -moz-image-region: auto;
 }
 
 .bookmark-item[container][tagContainer] {
   list-style-image: url("chrome://mozapps/skin/places/tagContainerIcon.png");
   -moz-image-region: auto;
 }
 
 .bookmark-item[container][query] {
@@ -231,123 +214,123 @@ toolbar[iconsize="large"][mode="icons"] 
   -moz-appearance: none;
   border: none;
   padding: 0;
 }
 
 /* unified back button with keyhole icons */
 
 toolbar[iconsize="large"][mode="icons"] #back-button {
-  -moz-image-region: rect(0px 394px 34px 360px);
+  -moz-image-region: rect(0px 398px 34px 360px);
   -moz-padding-start: 2px;
 }
 toolbar[iconsize="large"][mode="icons"] #back-button:not([disabled="true"]):hover {
-  -moz-image-region: rect(34px 394px 68px 360px);
+  -moz-image-region: rect(34px 398px 68px 360px);
 }
 toolbar[iconsize="large"][mode="icons"] #back-button[disabled="true"] {
-  -moz-image-region: rect(68px 394px 102px 360px);
+  -moz-image-region: rect(68px 398px 102px 360px);
 }
 toolbar[iconsize="large"][mode="icons"] #back-button:not([disabled="true"]):active {
-  -moz-image-region: rect(102px 394px 136px 360px);
+  -moz-image-region: rect(102px 398px 136px 360px);
 }
 
 /* unified back button with keyhole icons, RTL version */
 
 toolbar[iconsize="large"][mode="icons"] #back-button[chromedir="rtl"] {
-  -moz-image-region: rect(0px 504px 34px 470px);
+  -moz-image-region: rect(0px 516px 34px 478px);
 }
 toolbar[iconsize="large"][mode="icons"] #back-button[chromedir="rtl"]:not([disabled="true"]):hover {
-  -moz-image-region: rect(34px 504px 68px 470px);
+  -moz-image-region: rect(34px 516px 68px 478px);
 }
 toolbar[iconsize="large"][mode="icons"] #back-button[chromedir="rtl"][disabled="true"] {
-  -moz-image-region: rect(68px 504px 102px 470px);
+  -moz-image-region: rect(68px 516px 102px 478px);
 }
 toolbar[iconsize="large"][mode="icons"] #back-button[chromedir="rtl"]:not([disabled="true"]):active {
-  -moz-image-region: rect(102px 504px 136px 470px);
+  -moz-image-region: rect(102px 516px 136px 478px);
 }
 
 /* unified forward button with keyhole icons */
 
 toolbar[iconsize="large"][mode="icons"] #forward-button {
-  -moz-image-region: rect(3px 420px 31px 394px);
+  -moz-image-region: rect(3px 424px 31px 398px);
 }
 toolbar[iconsize="large"][mode="icons"] #forward-button:not([disabled="true"]):hover {
-  -moz-image-region: rect(37px 420px 65px 394px);
+  -moz-image-region: rect(37px 424px 65px 398px);
 }
 toolbar[iconsize="large"][mode="icons"] #forward-button[disabled="true"] {
-  -moz-image-region: rect(71px 420px 99px 394px);
+  -moz-image-region: rect(71px 424px 99px 398px);
 }
 toolbar[iconsize="large"][mode="icons"] #forward-button:not([disabled="true"]):active {
-  -moz-image-region: rect(105px 420px 133px 394px);
+  -moz-image-region: rect(105px 424px 133px 398px);
 }
 
 /* unified forward button with keyhole icons, RTL version */
 
 toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"] {
-  -moz-image-region: rect(3px 470px 31px 444px);
+  -moz-image-region: rect(3px 478px 31px 452px);
 }
 toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"]:not([disabled="true"]):hover {
-  -moz-image-region: rect(37px 470px 65px 444px);
+  -moz-image-region: rect(37px 478px 65px 452px);
 }
 toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"][disabled="true"] {
-  -moz-image-region: rect(71px 470px 99px 444px);
+  -moz-image-region: rect(71px 478px 99px 452px);
 }
 toolbar[iconsize="large"][mode="icons"] #forward-button[chromedir="rtl"]:not([disabled="true"]):active {
-  -moz-image-region: rect(105px 470px 133px 444px);
+  -moz-image-region: rect(105px 478px 133px 452px);
 }
 
 /* dropmarker for unified back and forward buttons with keyhole icons */
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker {
   -moz-appearance: none;
   list-style-image: url("chrome://browser/skin/Toolbar.png");
-  -moz-image-region: rect(3px 432px 31px 420px);
+  -moz-image-region: rect(3px 438px 31px 424px);
   padding: 0;
   -moz-padding-end: 2px;
   border: none;
 }
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker > image {
   display: -moz-box;
   margin: 0;
   padding-top: 1px;
 }
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker > dropmarker {
   display: none;
 }
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker:not([disabled="true"]):hover {
-  -moz-image-region: rect(37px 432px 65px 420px);
+  -moz-image-region: rect(37px 438px 65px 424px);
 }
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[disabled="true"] {
-  -moz-image-region: rect(71px 432px 99px 420px);
+  -moz-image-region: rect(71px 438px 99px 424px);
 }
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker:not([disabled="true"]):active {
-  -moz-image-region: rect(105px 432px 133px 420px);
+  -moz-image-region: rect(105px 438px 133px 424px);
 }
 
 /* unified dropmarker with keyhole icons, RTL version */
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[chromedir="rtl"] {
-  -moz-image-region: rect(3px 444px 31px 432px);
+  -moz-image-region: rect(3px 452px 31px 438px);
 }
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[chromedir="rtl"]:not([disabled="true"]):hover {
-  -moz-image-region: rect(37px 444px 65px 432px);
+  -moz-image-region: rect(37px 452px 65px 438px);
 }
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[chromedir="rtl"][disabled="true"] {
-  -moz-image-region: rect(71px 444px 99px 432px);
+  -moz-image-region: rect(71px 452px 99px 438px);
 }
 
 toolbar[iconsize="large"][mode="icons"] #back-forward-dropmarker[chromedir="rtl"]:not([disabled="true"]):active {
-  -moz-image-region: rect(105px 444px 133px 432px);
+  -moz-image-region: rect(105px 452px 133px 438px);
 }
 
 /* ::::: 24px primary toolbar buttons ::::: */
 
 toolbar:not([iconsize="small"]) .toolbarbutton-1 .toolbarbutton-icon {
   padding-top: 1px;
 }
 
@@ -606,21 +589,16 @@ toolbar:not([iconsize="small"]) #new-win
 /* ::::: 16px primary toolbar buttons ::::: */
 
 toolbar[iconsize="small"] .toolbarbutton-1 {
   -moz-box-orient: vertical;
   min-width: 0;
   list-style-image: url("chrome://browser/skin/Toolbar-small.png");
 }
 
-.unified-nav-back[_moz-menuactive] ,
-.unified-nav-forward[_moz-menuactive] {
-  list-style-image: url("chrome://browser/skin/Toolbar-small.png") !important;
-}
-
 toolbar[iconsize="small"] .toolbarbutton-1 .toolbarbutton-icon {
   -moz-margin-end: 0px;
 }
 
 toolbar[iconsize="small"] .toolbarbutton-1[type="menu-button"] {
   border: 0 !important;
 }
 
@@ -628,76 +606,80 @@ toolbar[iconsize="small"] .toolbarbutton
 
 toolbar[iconsize="small"] #back-button .toolbarbutton-icon {
   padding-right: 1px;
 }
 toolbar[iconsize="small"] #back-button {
   -moz-image-region: rect(0px 16px 16px 0px);
 }
 toolbar[iconsize="small"] #back-button:not([disabled="true"]):hover,
-toolbar[iconsize="small"] #back-button[buttonover="true"] ,
-.unified-nav-back[_moz-menuactive] {
+toolbar[iconsize="small"] #back-button[buttonover="true"] {
   -moz-image-region: rect(16px 16px 32px 0px);
 }
 toolbar[iconsize="small"] #back-button[disabled="true"] {
   -moz-image-region: rect(32px 16px 48px 0px);
 }
 toolbar[iconsize="small"] #back-button:not([disabled="true"]):hover:active {
   -moz-image-region: rect(64px 16px 80px 0px);
 }
 
 toolbar[iconsize="small"] #back-button[chromedir="rtl"] {
   -moz-image-region: rect(0px 32px 16px 16px);
 }
 toolbar[iconsize="small"] #back-button[chromedir="rtl"]:not([disabled="true"]):hover,
-toolbar[iconsize="small"] #back-button[chromedir="rtl"][buttonover="true"] ,
-menupopup[chromedir="rtl"] > .unified-nav-back[_moz-menuactive] {
+toolbar[iconsize="small"] #back-button[chromedir="rtl"][buttonover="true"] {
   -moz-image-region: rect(16px 32px 32px 16px);
 }
 toolbar[iconsize="small"] #back-button[chromedir="rtl"][disabled="true"] {
   -moz-image-region: rect(32px 32px 48px 16px);
 }
 toolbar[iconsize="small"] #back-button[chromedir="rtl"]:not([disabled="true"]):hover:active {
   -moz-image-region: rect(64px 32px 80px 16px);
 }
+.unified-nav-back[_moz-menuactive],
+menupopup[chromedir="rtl"] > .unified-nav-forward[_moz-menuactive] {
+  list-style-image: url("chrome://browser/skin/menu-back.png") !important;
+}
 
 /* forward button */
 
 toolbar[iconsize="small"] #forward-button .toolbarbutton-icon {
   padding-right: 1px;
 }
 toolbar[iconsize="small"] #forward-button {
   -moz-image-region: rect(0px 32px 16px 16px);
 }
 toolbar[iconsize="small"] #forward-button:not([disabled="true"]):hover,
-toolbar[iconsize="small"] #forward-button[buttonover="true"] ,
-.unified-nav-forward[_moz-menuactive] {
+toolbar[iconsize="small"] #forward-button[buttonover="true"] {
   -moz-image-region: rect(16px 32px 32px 16px);
 }
 toolbar[iconsize="small"] #forward-button[disabled="true"] {
   -moz-image-region: rect(32px 32px 48px 16px);
 }
 toolbar[iconsize="small"] #forward-button:not([disabled="true"]):hover:active {
   -moz-image-region: rect(64px 32px 80px 16px);
 }
 
 toolbar[iconsize="small"] #forward-button[chromedir="rtl"] {
   -moz-image-region: rect(0px 16px 16px 0px);
 }
 toolbar[iconsize="small"] #forward-button[chromedir="rtl"]:not([disabled="true"]):hover,
-toolbar[iconsize="small"] #forward-button[chromedir="rtl"][buttonover="true"] ,
-menupopup[chromedir="rtl"] > .unified-nav-forward[_moz-menuactive] {
+toolbar[iconsize="small"] #forward-button[chromedir="rtl"][buttonover="true"] {
   -moz-image-region: rect(16px 16px 32px 0px);
 }
 toolbar[iconsize="small"] #forward-button[chromedir="rtl"][disabled="true"] {
   -moz-image-region: rect(32px 16px 48px 0px);
 }
 toolbar[iconsize="small"] #forward-button[chromedir="rtl"]:not([disabled="true"]):hover:active {
   -moz-image-region: rect(64px 16px 80px 0px);
 }
+.unified-nav-forward[_moz-menuactive],
+menupopup[chromedir="rtl"] > .unified-nav-back[_moz-menuactive] {
+  list-style-image: url("chrome://browser/skin/menu-forward.png") !important;
+}
 
 /* stop button */
 
 toolbar[iconsize="small"] #stop-button .toolbarbutton-icon {
   padding-left: 1px;
 }
 toolbar[iconsize="small"] #stop-button {
   -moz-image-region: rect(0px 48px 16px 32px);
@@ -1083,33 +1065,25 @@ statusbarpanel#statusbar-display {
   border-top: 1px solid GrayText;
 }
 
 /* ::::: go button ::::: */
 
 #go-button {
   padding: 3px 2px 2px 2px;
   list-style-image: url("chrome://browser/skin/Go-arrow.png");
-  -moz-image-region: rect(0px 11px 13px 0px);
+  -moz-image-region: rect(0px 16px 16px 0px);
 }
 
 #go-button[chromedir="rtl"] {
   list-style-image: url("chrome://browser/skin/Go-arrow-rtl.png");
 }
 
 #go-button:hover {
-  -moz-image-region: rect(0px 22px 13px 11px);
-}
-
-#go-button:hover:active {
-  -moz-image-region: rect(0px 44px 13px 33px);
-}
-
-#go-button[disabled="true"] {
-  -moz-image-region: rect(0px 33px 13px 22px);
+  -moz-image-region: rect(16px 16px 32px 0px);
 }
 
 /* star button */
 #star-button {
   padding: 1px;
   list-style-image: url("chrome://browser/skin/places/starPage.png");
 }
 
@@ -1148,31 +1122,24 @@ statusbarpanel#statusbar-display {
 
 #security-button {
   list-style-image: none;
   min-width: 20px;
   -moz-box-direction: reverse;
   display: none;
 }
 
-#security-button[level="high"] {
-  list-style-image: url("chrome://browser/skin/Secure.png");
-  -moz-image-region: rect(36px, 18px, 54px, 0px);
-  display: -moz-box;
-}
-
+#security-button[level="high"],
 #security-button[level="low"] {
   list-style-image: url("chrome://browser/skin/Secure.png");
-  -moz-image-region: rect(36px, 18px, 54px, 0px);
   display: -moz-box;
 }
 
 #security-button[level="broken"] {
   list-style-image: url("chrome://browser/skin/Security-broken.png");
-  -moz-image-region: rect(36px, 18px, 54px, 0px);
   display: -moz-box;
 }
 
 /* XXXsw prevent margins of a value-less label from shifting the image */
 #security-button > label:not([value]) {
   display: none;
 }
 
@@ -1585,30 +1552,31 @@ toolbar[mode="text"] > #window-controls 
   padding: 0;
   background-color: transparent;
   border: none;
   width: auto;
 }
 
 #urlbar > .autocomplete-history-dropmarker:hover ,
 #urlbar > .autocomplete-history-dropmarker[open="true"] {
-  background-color: -moz-dialog !important;
-  -moz-appearance: toolbox;
-  outline: 1px solid ThreeDShadow;
-  -moz-margin-start: 1px;
+  background: ButtonFace url(chrome://browser/skin/tabbrowser/tab-active-bkgnd.png) repeat-x !important;
 }
 
 #urlbar > .autocomplete-history-dropmarker > .dropmarker-icon {
-  -moz-margin-start: 6px;
-  -moz-margin-end: 5px;
+  margin: 0 5px;
 }
 
-#urlbar > .autocomplete-history-dropmarker:hover > .dropmarker-icon ,
-#urlbar > .autocomplete-history-dropmarker[open="true"] > .dropmarker-icon {
-  -moz-margin-start: 5px;
+#urlbar[chromedir="ltr"] > .autocomplete-history-dropmarker {
+  border-left: 1px solid;
+  -moz-border-left-colors: transparent;
+}
+
+#urlbar[chromedir="ltr"] > .autocomplete-history-dropmarker:hover ,
+#urlbar[chromedir="ltr"] > .autocomplete-history-dropmarker[open="true"] {
+  -moz-border-left-colors: ButtonShadow;
 }
 
 /* Feed icon */
 #feed-button, #feed-button > .button-box,
 #feed-button:hover:active > .button-box {
   padding: 0px;
   margin: 0px;
   border: 0px; 
@@ -1623,38 +1591,17 @@ toolbar[mode="text"] > #window-controls 
 #feed-button {
   -moz-binding: url("chrome://global/content/bindings/button.xml#menu");
   -moz-appearance: none; 
   min-width: 0px; 
   margin-right: 1px !important;
 }
 
 #feed-button[feeds] {
-  -moz-image-region: rect(0px, 36px, 18px, 18px);
-  list-style-image: url("chrome://browser/skin/livemark-item.png");
-}
-#feed-button[chromedir="rtl"][feeds] {
-  -moz-image-region: rect(0px, 36px, 18px, 18px);
-  list-style-image: url("chrome://browser/skin/livemark-item.png");
-}
-#feed-button[feeds]:hover {
-  -moz-image-region: rect(18px, 36px, 36px, 18px);
-  list-style-image: url("chrome://browser/skin/livemark-item.png");
-}
-#feed-button[chromedir="rtl"][feeds]:hover {
-  -moz-image-region: rect(18px, 36px, 36px, 18px);
-  list-style-image: url("chrome://browser/skin/livemark-item.png");
-}
-#feed-button[feeds]:active {
-  -moz-image-region: rect(54px, 36px, 72px, 18px);
-  list-style-image: url("chrome://browser/skin/livemark-item.png");
-}
-#feed-button[chromedir="rtl"][feeds]:active {
-  -moz-image-region: rect(54px, 36px, 72px, 18px);
-  list-style-image: url("chrome://browser/skin/livemark-item.png");
+  list-style-image: url("chrome://browser/skin/feeds/feedIcon16.png");
 }
 
 /* ::::: About Popup Blocking dialog ::::: */
 #pageReportFirstTime statusbarpanel.statusbar-resizerpanel {
   visibility: collapse;
 }
 
 #checkForUpdates[loading="true"] {
@@ -1706,133 +1653,151 @@ toolbarbutton.bookmark-item[dragover="tr
   height: 2px;
   -moz-margin-end: -4em;
   background-color: Highlight;
 }
 
 /* ::::: Identity Indicator Styling ::::: */
 /* Location bar visuals*/
 
-#urlbar .autocomplete-textbox-container {
+#urlbar[chromedir="ltr"] {
+  -moz-margin-start: 4px;
+  /*-moz-margin-start: 6px;*/
+}
+
+#urlbar > .autocomplete-textbox-container {
   -moz-box-align: stretch;
 }
 
-#identity-box {
-  background-color: -moz-dialog;
+#identity-box {  
+  overflow: -moz-hidden-unscrollable;
+}
+
+#urlbar[chromedir="ltr"] > #identity-box {
+  -moz-margin-start: -4px;
+  /*-moz-margin-start: -6px;*/
+}
+
+#identity-box > hbox {
+  background: ButtonFace url(chrome://browser/skin/tabbrowser/tab-active-bkgnd.png) repeat-x;
   color: -moz-dialogtext;
-  -moz-appearance: toolbox;
-  outline: 1px solid ThreeDShadow;
-  -moz-margin-start: -1px;
-  /* currently, the identity box is always LTR */
-  -moz-outline-radius-topleft: 2px;
-  -moz-outline-radius-bottomleft: 2px;
+}
+
+#urlbar[chromedir="rtl"] > #identity-box > hbox {
+  border-right: 1px solid ButtonShadow;
+  border-left: 1px solid ButtonShadow;
+  padding: 0 3px;
+}
+
+#urlbar[chromedir="ltr"] > #identity-box > hbox {
+  border: 1px solid ButtonShadow;
+  border-right-style: none;
+  margin: -11px -10px -11px 0;
+  padding: 10px 12px 10px 4px;
+  background-position: 0 10px;
+  -moz-border-radius-topleft: 21px;
+  -moz-border-radius-bottomleft: 21px;
+  /*margin: -4px 0;
+  padding: 3px 2px 3px 4px;
+  background-position: 0 3px;
+  -moz-border-radius-topleft: 14px;
+  -moz-border-radius-bottomleft: 14px;*/
+}
+
+#urlbar[chromedir="ltr"] > .autocomplete-textbox-container > .textbox-input-box {
+  border-left: 1px solid ButtonShadow;
+  margin-left: 0;
+  padding-left: 3px;
+}
+
+#identity-box.verifiedIdentity > hbox {
+  background-color: #7c8;
+  color: #000;
 }
 
 #identity-box:focus {
   outline: 1px dotted -moz-DialogText;
-}
-
-#identity-box:hover {
-  outline-color: ThreeDDarkShadow;
+  outline-offset: -3px;
 }
 
 #identity-icon-label {
   padding: 0 2px;
   margin: 0;
 }
 
 #identity-icon-label[value=""] {
-    display: none;
-}
-
-#identity-box.verifiedIdentity > hbox {
-  background-color: rgba(0, 255, 0, 0.25);
+  display: none;
 }
 
 /* Popup Icons */
 #identity-popup-icon {
-    height: 64px;
-    width: 64px;
-    padding: 0;
-    list-style-image: url("chrome://browser/skin/identity.png");
-    -moz-image-region: rect(0px, 64px, 64px, 0px);
+  height: 64px;
+  width: 64px;
+  padding: 0;
+  list-style-image: url("chrome://browser/skin/identity.png");
+  -moz-image-region: rect(0px, 64px, 64px, 0px);
 }
 
-.verifiedDomain > #identity-popup-container > #identity-popup-icon {
-    -moz-image-region: rect(64px, 64px, 128px, 0px);
+#identity-popup.verifiedDomain > #identity-popup-container > #identity-popup-icon {
+  -moz-image-region: rect(64px, 64px, 128px, 0px);
 }
 
-.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
-    -moz-image-region: rect(128px, 64px, 192px, 0px);
+#identity-popup.verifiedIdentity > #identity-popup-container > #identity-popup-icon {
+  -moz-image-region: rect(128px, 64px, 192px, 0px);
 }
 
 /* Popup Body Text */
-.unknownIdentity > #identity-popup-connectedToLabel,
-.unknownIdentity > #identity-popup-runByLabel,
-.unknownIdentity > #identity-popup-content-host,
-.unknownIdentity > #identity-popup-content-owner {
-    display: none;
-}
-
-.verifiedIdentity > #identity-popup-connectedToLabel2,
-.verifiedDomain > #identity-popup-connectedToLabel2 {
-    display: none;
-}
-
 #identity-popup-content-box > description,
 #identity-popup-encryption-label {
-    white-space: -moz-pre-wrap;
-    color: black;
-    padding-left: 15px;
-    margin: 2px 0 4px;
+  white-space: pre-wrap;
+  color: black;
+  padding-left: 15px;
+  margin: 2px 0 4px;
 }
 
 #identity-popup-content-box > label {
-    white-space: -moz-pre-wrap;
-    padding-left: 15px;
-    margin: 0;
+  white-space: pre-wrap;
+  padding-left: 15px;
+  margin: 0;
 }
 
-#identity-popup-content-host {
-   font-weight: bold;
-   max-width: 300px;
+#identity-popup-content-host ,
+#identity-popup-content-owner {
+  font-weight: bold;
+  max-width: 300px;
+}
+
+#identity-popup-content-host ,
+#identity-popup-content-box.verifiedIdentity > #identity-popup-content-owner {
+  font-size: 140%;
 }
 
 #identity-popup-content-owner {
-   font-weight: bold;
-   max-width: 300px;
-   margin-bottom: 0 !important;
-}
-
-.verifiedIdentity > #identity-popup-content-owner,
-.verifiedIdentity > #identity-popup-content-host,
-.verifiedDomain > #identity-popup-content-host {
-   font-size: 140%;
+  margin-bottom: 0 !important;
 }
 
 #identity-popup-content-verifier {
   margin: 4px 0 2px;
 }
 
-.verifiedIdentity > #identity-popup-encryption,
-.verifiedDomain > #identity-popup-encryption {
+#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-encryption {
   margin-top: 10px;
   margin-left: -18px;
 }
 
-.verifiedIdentity > #identity-popup-encryption > * > #identity-popup-encryption-icon,
-.verifiedDomain > #identity-popup-encryption > * >#identity-popup-encryption-icon {
-  list-style-image: url("chrome://browser/skin/Secure.png");
-  -moz-image-region: rect(0px, 18px, 18px, 0px);
+#identity-popup-content-box.verifiedIdentity > #identity-popup-encryption > vbox > #identity-popup-encryption-icon ,
+#identity-popup-content-box.verifiedDomain > #identity-popup-encryption > vbox > #identity-popup-encryption-icon {
+  list-style-image: url("chrome://browser/skin/Secure24.png");
 }
 
 /* Popup Bounding Box */
 #identity-popup-container {
-    background-image: none;
-    background-color: white;
-    min-width: 280px;
-    padding: 10px;
+  background-image: none;
+  background-color: white;
+  min-width: 280px;
+  padding: 10px;
 }
 
 #download-monitor {
   list-style-image: url("chrome://browser/skin/Toolbar-small.png");
   -moz-image-region: rect(0px 96px 16px 80px);
 }
index eb7c91d98a5b6de5d5ae754bd758857e28b68d44..dc5f4c42440269c3b0aba2bfcad0f4f2d065bf8b
GIT binary patch
literal 767
zc$@+M0s#GqP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!p-DtRRCwBylS^z&Q5eU6=g!<tO+DI*
zN{ErtR0t`hA|YujRuW-LLqj6nNRY7ZRIs<St6f(@JQ9yc<Iz|&MT)A0szoc+M|7CS
zopaCeojYT&bdr0&bI<+$|L=eP=R0b+o!&$p=~x03lwQ$9LOE8x%P*aS+$`yxgSJnN
z9>K2ZI*Z@XSo&*?#885kxyFW}#G)((GIwhsCi|VKfqu5#qB9;<_6$`mT^LC+i__?D
z<AgJBAwP$TNF2BzBn9CtNWM?3DiYNZcd}eHt2|V4C2C1M@l{*!8uz0=Jt3TUgc4vx
zB+4RnL5|-e9&Jo2{CtomELuo5;5Y3fmTJS>bO>A5j2^j;m!B3-v^)l*%)bOqqVi&>
zVg~zdio(=ORBaRfuH&$BBWm|K!WUPG1ycfXJ{0~CM9!Lks`ksWo<V;d#e9BBn3*6L
zOru(RP^mqHTTfBE+f7U@NKIWK@O~?>&du8Oc+Cg#_Ff=Nu0>Birf}yZdio7&^%hL?
zQNmm{GW!pK8)8uY-gy=WPLq3m3zMkD-`@ut598@M!e_l0EubCUg#KE|=U)XTJ4f*8
z5qfNZ+|6$C4=>?tigyUGT2##pVI~J5u?&+sfRVPa_Ado`W(>crhnh35NOWFA4_~AB
z?l!i%4mKYX$<iwm^6gNmy-{CLJ_yg5XmSh0TDoERI^x?;xn{$R-VlI6HMTpCQS<LH
z#$xN6BEpIS6)$ygFw&2n|3ZGKKa$AzkA&G-tY0I^J}UPWvNN*%vTbDrYWxIt>4p+x
zC=KSou_OpCO43=^>f*<W@<m#d=Lal&K)2rKN<1@3I#`t3=nL4f+EStexp}2hsc^Kt
xpn!fnsfOI~DQApQs>59j{%^Q$dj3m*0RRhHNGw}!BEA3s002ovPDHLkV1h-xTO<Gg
index 73e065b016d4f3570a5c151583fb744835631503..271235be7093de55727a1f175c0ba02d1d5edac0
GIT binary patch
literal 763
zc$@+I0tEeuP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!ok>JNRCwByQ{PKeK^Q%=_pZC^?yB3$
zN)e|0FjDJ5ilTgw3Mw$D(25>|(D0!L|9~`+9*Q2L$6h2TjLLr4lL`71lvyUEzKFPr
zQSR<-@7;Uv%=FEylF~~Je9X+9`<?H6XU?#x%VjsiTPu2ua1j4Aqy+y}$T~}zd-acV
zy{1a8JbeX5yb98HAh`=rNWVa9+IuSUfZBUDgl7?eRR)G0#@MK-DjV?>N)KM6L?1l6
z0B?B`?)(`1A9H}<RF&(>(kEcyA^;yokSRVbre@{lA)G7%rAe5n1|8vj7f_gagZ#up
z2y0n`NX~T;Av_A9J1PS30x~bVK$Ku4Y7yFX5+$|A3FI7t+nQjF+=83_sFNjynl&>T
zfpq|87~s|tQ6EQcq!*c?PI&1LFv_bDKXnJeRHIIoLV<WRZvapNm7jfpMB4yj$GTxA
z_rPD7Ms~Ox&bQYHL=uRf=mU!+wGQwV3$d92H3g%h2I2ZPl(*hTq@j&;$-#Qp4|m}`
zomC@x<a)6U;b|s+0O)#FhdPjX(LohoftAD%J=%>(V>^LlV2$3^LPtmwGg(J0R2yP5
zfV6+YTbZJYeXz#w>ci;aE|`g(@D@M8nHdHPMiAP2=5Gy@fl8aMV#}pLL=Sbso)~~L
z{aiB%@4u)M?5SruAym^`yam1qz(%O96@ge4X>guABaokbq<<*c(F{qmxAa9{omp8|
zya~CX1(02xuTQ~qi?BaGA(cJw@3XW|YubzjAyyaQug({r0|_qIjKt<{Y|q4Yr^ws%
zK@^Rmd!$f6(qCKi^)n8~<^?AW<G`ToH`S{mK0Seup|4VjqkhsN@wK&f-ujt<Yr}Xu
ti&5nuCh3uog<I6a!2b<pgt6ZO3;-UIkE=7T??eCq002ovPDHLkV1k6SSv>#%
index 816249567ad3dccb4ec046cdbd5cc20128202180..0630c0690a299a0f6b37d8b98d97a7b766560b3f
GIT binary patch
literal 15314
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
index 3a330e680ff450e12556de28e13ca07d6cb7f78f..5f2a754eb9d25c018ff6f87f804c7ac34d1e7eee
GIT binary patch
literal 16453
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
--- a/browser/themes/winstripe/browser/jar.mn
+++ b/browser/themes/winstripe/browser/jar.mn
@@ -1,69 +1,150 @@
 classic.jar:
-% skin browser classic/1.0 %skin/classic/browser/
-*       skin/classic/browser/browser.css                        (browser.css)
+% skin browser classic/1.0 %skin/classic/browser/ os=WINNT osversion<6
+% skin browser classic/1.0 %skin/classic/aero/browser/ os=WINNT osversion>=6
+% skin browser classic/1.0 %skin/classic/browser/ os!=WINNT
+*       skin/classic/browser/browser.css                             (browser.css)
+*       skin/classic/aero/browser/browser.css                        (browser.css)
         skin/classic/browser/browser.xml
-*       skin/classic/browser/engineManager.css                  (engineManager.css)
+        skin/classic/aero/browser/browser.xml
+*       skin/classic/browser/engineManager.css                       (engineManager.css)
+*       skin/classic/aero/browser/engineManager.css                  (engineManager.css)
         skin/classic/browser/Info.png
-        skin/classic/browser/identity.png
+        skin/classic/aero/browser/Info.png
+        skin/classic/browser/identity.png                            (identity.png)
+        skin/classic/aero/browser/identity.png                       (identity-aero.png)
         skin/classic/browser/pageInfo.css
+        skin/classic/aero/browser/pageInfo.css
         skin/classic/browser/pageInfo.png
-        skin/classic/browser/page-livemarks.png
-        skin/classic/browser/livemark-item.png
-        skin/classic/browser/livemark-item-rtl.png
-        skin/classic/browser/livemark-folder.png
-        skin/classic/browser/livemark-folder-rtl.png
-        skin/classic/browser/Secure.png
-        skin/classic/browser/Security-broken.png
+        skin/classic/aero/browser/pageInfo.png
+        skin/classic/browser/page-livemarks.png                      (feeds/feedIcon16.png)
+        skin/classic/aero/browser/page-livemarks.png                 (feeds/feedIcon16-aero.png)
+        skin/classic/browser/livemark-item.png                       (livemark-item.png)
+        skin/classic/aero/browser/livemark-item.png                  (livemark-item-aero.png)
+        skin/classic/browser/livemark-folder.png                     (livemark-folder.png)
+        skin/classic/aero/browser/livemark-folder.png                (livemark-folder-aero.png)
+        skin/classic/browser/Secure.png                              (Secure.png)
+        skin/classic/aero/browser/Secure.png                         (Secure-aero.png)
+        skin/classic/browser/Secure24.png                            (Secure24.png)
+        skin/classic/aero/browser/Secure24.png                       (Secure24-aero.png)
+        skin/classic/browser/Security-broken.png                     (Security-broken.png)
+        skin/classic/aero/browser/Security-broken.png                (Security-broken-aero.png)
         skin/classic/browser/Throbber.gif
+        skin/classic/aero/browser/Throbber.gif
         skin/classic/browser/Throbber.png
+        skin/classic/aero/browser/Throbber.png
         skin/classic/browser/Throbber-small.png
-        skin/classic/browser/Toolbar.png
-        skin/classic/browser/Toolbar-small.png
-        skin/classic/browser/Go-arrow.png
-        skin/classic/browser/Go-arrow-rtl.png
-*       skin/classic/browser/searchbar.css                      (searchbar.css)
+        skin/classic/aero/browser/Throbber-small.png
+        skin/classic/browser/Toolbar.png                             (Toolbar.png)
+        skin/classic/aero/browser/Toolbar.png                        (Toolbar-aero.png)
+        skin/classic/browser/Toolbar-small.png                       (Toolbar-small.png)
+        skin/classic/aero/browser/Toolbar-small.png                  (Toolbar-small-aero.png)
+        skin/classic/browser/Go-arrow.png                            (Go-arrow.png)
+        skin/classic/aero/browser/Go-arrow.png                       (Go-arrow-aero.png)
+        skin/classic/browser/Go-arrow-rtl.png                        (Go-arrow-rtl.png)
+        skin/classic/aero/browser/Go-arrow-rtl.png                   (Go-arrow-rtl-aero.png)
+*       skin/classic/browser/searchbar.css                           (searchbar.css)
+*       skin/classic/aero/browser/searchbar.css                      (searchbar.css)
         skin/classic/browser/Search-glass.png
+        skin/classic/aero/browser/Search-glass.png
         skin/classic/browser/Search-glass-rtl.png
+        skin/classic/aero/browser/Search-glass-rtl.png
         skin/classic/browser/Search-addengines.png
+        skin/classic/aero/browser/Search-addengines.png
         skin/classic/browser/setDesktopBackground.css
+        skin/classic/aero/browser/setDesktopBackground.css
+        skin/classic/browser/menu-back.png                           (menu-back.png)
+        skin/classic/aero/browser/menu-back.png                      (menu-back-aero.png)
+        skin/classic/browser/menu-forward.png                        (menu-forward.png)
+        skin/classic/aero/browser/menu-forward.png                   (menu-forward-aero.png)
         skin/classic/browser/monitor.png
+        skin/classic/aero/browser/monitor.png
         skin/classic/browser/monitor_16-10.png
+        skin/classic/aero/browser/monitor_16-10.png
         skin/classic/browser/wrench.png
-        skin/classic/browser/feeds/feedIcon.png                 (feeds/feedIcon.png)
-        skin/classic/browser/feeds/feedIcon16.png               (feeds/feedIcon16.png)
-        skin/classic/browser/feeds/videoFeedIcon.png            (feeds/videoFeedIcon.png)
-        skin/classic/browser/feeds/videoFeedIcon16.png          (feeds/videoFeedIcon16.png)
-        skin/classic/browser/feeds/audioFeedIcon.png            (feeds/audioFeedIcon.png)
-        skin/classic/browser/feeds/audioFeedIcon16.png          (feeds/audioFeedIcon16.png)
-        skin/classic/browser/feeds/subscribe.css                (feeds/subscribe.css)
-        skin/classic/browser/places/places.css                  (places/places.css)
-        skin/classic/browser/places/organizer.css               (places/organizer.css)
-        skin/classic/browser/places/query.png                   (places/query.png)
-        skin/classic/browser/places/bookmarksMenu.png           (places/bookmarksMenu.png)
-        skin/classic/browser/places/bookmarksToolbar.png        (places/bookmarksToolbar.png)
-        skin/classic/browser/places/toolbarDropMarker.png       (places/toolbarDropMarker.png)
-        skin/classic/browser/places/editBookmarkOverlay.css     (places/editBookmarkOverlay.css)
-        skin/classic/browser/places/starPage.png                (places/starPage.png)
-        skin/classic/browser/places/pageStarred.png             (places/pageStarred.png)
-        skin/classic/browser/places/starred48.png               (places/starred48.png)
-        skin/classic/browser/places/unstarred48.png             (places/unstarred48.png)
-        skin/classic/browser/places/tag.png                     (places/tag.png)
-        skin/classic/browser/places/bookmarkProperties.css      (places/bookmarkProperties.css)
-        skin/classic/browser/places/organizer-toolbar.png       (bookmarks/Bookmarks-toolbar.png)
-        skin/classic/browser/preferences/alwaysAsk.png          (preferences/alwaysAsk.png)
-        skin/classic/browser/preferences/application.png        (preferences/application.png)
-        skin/classic/browser/preferences/Options.png            (preferences/Options.png)
-        skin/classic/browser/preferences/plugin.png             (preferences/plugin.png)
-        skin/classic/browser/preferences/preferences.css        (preferences/preferences.css)
-        skin/classic/browser/preferences/applications.css       (preferences/applications.css)
-        skin/classic/browser/tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png   (tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png)
-        skin/classic/browser/tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png (tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png)
-        skin/classic/browser/tabbrowser/tab-arrow-end.png                  (tabbrowser/tab-arrow-end.png)
-        skin/classic/browser/tabbrowser/tab-arrow-start.png                (tabbrowser/tab-arrow-start.png)
-        skin/classic/browser/tabbrowser/tabbrowser-tabs-bkgnd.png          (tabbrowser/tabbrowser-tabs-bkgnd.png)
-        skin/classic/browser/tabbrowser/tabDragIndicator.png               (tabbrowser/tabDragIndicator.png)
-        skin/classic/browser/tabbrowser/tab-bkgnd.png                      (tabbrowser/tab-bkgnd.png)
-        skin/classic/browser/tabbrowser/tab-active-bkgnd.png               (tabbrowser/tab-active-bkgnd.png)
-        skin/classic/browser/tabbrowser/tabstrip-bottom.png                (tabbrowser/tabstrip-bottom.png)
+        skin/classic/aero/browser/wrench.png
+        skin/classic/browser/feeds/feedIcon.png                      (feeds/feedIcon.png)
+        skin/classic/aero/browser/feeds/feedIcon.png                 (feeds/feedIcon-aero.png)
+        skin/classic/browser/feeds/feedIcon16.png                    (feeds/feedIcon16.png)
+        skin/classic/aero/browser/feeds/feedIcon16.png               (feeds/feedIcon16-aero.png)
+        skin/classic/browser/feeds/videoFeedIcon.png                 (feeds/videoFeedIcon.png)
+        skin/classic/aero/browser/feeds/videoFeedIcon.png            (feeds/videoFeedIcon-aero.png)
+        skin/classic/browser/feeds/videoFeedIcon16.png               (feeds/videoFeedIcon16.png)
+        skin/classic/aero/browser/feeds/videoFeedIcon16.png          (feeds/videoFeedIcon16-aero.png)
+        skin/classic/browser/feeds/audioFeedIcon.png                 (feeds/audioFeedIcon.png)
+        skin/classic/aero/browser/feeds/audioFeedIcon.png            (feeds/audioFeedIcon-aero.png)
+        skin/classic/browser/feeds/audioFeedIcon16.png               (feeds/audioFeedIcon16.png)
+        skin/classic/aero/browser/feeds/audioFeedIcon16.png          (feeds/audioFeedIcon16-aero.png)
+        skin/classic/browser/feeds/subscribe.css                     (feeds/subscribe.css)
+        skin/classic/aero/browser/feeds/subscribe.css                (feeds/subscribe.css)
+        skin/classic/browser/places/places.css                       (places/places.css)
+        skin/classic/aero/browser/places/places.css                  (places/places.css)
+        skin/classic/browser/places/organizer.css                    (places/organizer.css)
+        skin/classic/aero/browser/places/organizer.css               (places/organizer.css)
+        skin/classic/browser/places/query.png                        (places/query.png)
+        skin/classic/aero/browser/places/query.png                   (places/query.png)
+        skin/classic/browser/places/bookmarksMenu.png                (places/bookmarksMenu.png)
+        skin/classic/aero/browser/places/bookmarksMenu.png           (places/bookmarksMenu.png)
+        skin/classic/browser/places/bookmarksToolbar.png             (places/bookmarksToolbar.png)
+        skin/classic/aero/browser/places/bookmarksToolbar.png        (places/bookmarksToolbar.png)
+        skin/classic/browser/places/toolbarDropMarker.png            (places/toolbarDropMarker.png)
+        skin/classic/aero/browser/places/toolbarDropMarker.png       (places/toolbarDropMarker.png)
+        skin/classic/browser/places/editBookmarkOverlay.css          (places/editBookmarkOverlay.css)
+        skin/classic/aero/browser/places/editBookmarkOverlay.css     (places/editBookmarkOverlay.css)
+        skin/classic/browser/places/starPage.png                     (places/starPage.png)
+        skin/classic/aero/browser/places/starPage.png                (places/starPage-aero.png)
+        skin/classic/browser/places/pageStarred.png                  (places/pageStarred.png)
+        skin/classic/aero/browser/places/pageStarred.png             (places/pageStarred-aero.png)
+        skin/classic/browser/places/starred48.png                    (places/starred48.png)
+        skin/classic/aero/browser/places/starred48.png               (places/starred48-aero.png)
+        skin/classic/browser/places/unstarred48.png                  (places/unstarred48.png)
+        skin/classic/aero/browser/places/unstarred48.png             (places/unstarred48.png)
+        skin/classic/browser/places/tag.png                          (places/tag.png)
+        skin/classic/aero/browser/places/tag.png                     (places/tag-aero.png)
+        skin/classic/browser/places/collapse.png                     (places/collapse.png)
+        skin/classic/aero/browser/places/collapse.png                (places/collapse-aero.png)
+        skin/classic/browser/places/expand.png                       (places/expand.png)
+        skin/classic/aero/browser/places/expand.png                  (places/expand-aero.png)
+        skin/classic/browser/places/history.png                      (places/history.png)
+        skin/classic/aero/browser/places/history.png                 (places/history-aero.png)
+        skin/classic/browser/places/importAndBackup.png              (places/importAndBackup.png)
+        skin/classic/aero/browser/places/importAndBackup.png         (places/importAndBackup-aero.png)
+        skin/classic/browser/places/minus.png                        (places/minus.png)
+        skin/classic/aero/browser/places/minus.png                   (places/minus-aero.png)
+        skin/classic/browser/places/plus.png                         (places/plus.png)
+        skin/classic/aero/browser/places/plus.png                    (places/plus-aero.png)
+        skin/classic/browser/places/bookmarkProperties.css           (places/bookmarkProperties.css)
+        skin/classic/aero/browser/places/bookmarkProperties.css      (places/bookmarkProperties.css)
+        skin/classic/browser/places/organizer-toolbar.png            (bookmarks/Bookmarks-toolbar.png)
+        skin/classic/aero/browser/places/organizer-toolbar.png       (bookmarks/Bookmarks-toolbar.png)
+        skin/classic/browser/preferences/alwaysAsk.png               (preferences/alwaysAsk.png)
+        skin/classic/aero/browser/preferences/alwaysAsk.png          (preferences/alwaysAsk-aero.png)
+        skin/classic/browser/preferences/application.png             (preferences/application.png)
+        skin/classic/aero/browser/preferences/application.png        (preferences/application.png)
+        skin/classic/browser/preferences/Options.png                 (preferences/Options.png)
+        skin/classic/aero/browser/preferences/Options.png            (preferences/Options-aero.png)
+        skin/classic/browser/preferences/plugin.png                  (preferences/plugin.png)
+        skin/classic/aero/browser/preferences/plugin.png             (preferences/plugin-aero.png)
+        skin/classic/browser/preferences/preferences.css             (preferences/preferences.css)
+        skin/classic/aero/browser/preferences/preferences.css        (preferences/preferences.css)
+        skin/classic/browser/preferences/applications.css            (preferences/applications.css)
+        skin/classic/aero/browser/preferences/applications.css       (preferences/applications.css)
+        skin/classic/browser/tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png        (tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png)
+        skin/classic/aero/browser/tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png   (tabbrowser/alltabs-box-overflow-end-bkgnd-animate.png)
+        skin/classic/browser/tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png      (tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png)
+        skin/classic/aero/browser/tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png (tabbrowser/alltabs-box-overflow-start-bkgnd-animate.png)
+        skin/classic/browser/tabbrowser/tab-arrow-end.png                       (tabbrowser/tab-arrow-end.png)
+        skin/classic/aero/browser/tabbrowser/tab-arrow-end.png                  (tabbrowser/tab-arrow-end-aero.png)
+        skin/classic/browser/tabbrowser/tab-arrow-start.png                     (tabbrowser/tab-arrow-start.png)
+        skin/classic/aero/browser/tabbrowser/tab-arrow-start.png                (tabbrowser/tab-arrow-start-aero.png)
+        skin/classic/browser/tabbrowser/tabbrowser-tabs-bkgnd.png               (tabbrowser/tabbrowser-tabs-bkgnd.png)
+        skin/classic/aero/browser/tabbrowser/tabbrowser-tabs-bkgnd.png          (tabbrowser/tabbrowser-tabs-bkgnd.png)
+        skin/classic/browser/tabbrowser/tabDragIndicator.png                    (tabbrowser/tabDragIndicator.png)
+        skin/classic/aero/browser/tabbrowser/tabDragIndicator.png               (tabbrowser/tabDragIndicator-aero.png)
+        skin/classic/browser/tabbrowser/tab-bkgnd.png                           (tabbrowser/tab-bkgnd.png)
+        skin/classic/aero/browser/tabbrowser/tab-bkgnd.png                      (tabbrowser/tab-bkgnd.png)
+        skin/classic/browser/tabbrowser/tab-active-bkgnd.png                    (tabbrowser/tab-active-bkgnd.png)
+        skin/classic/aero/browser/tabbrowser/tab-active-bkgnd.png               (tabbrowser/tab-active-bkgnd.png)
+        skin/classic/browser/tabbrowser/tabstrip-bottom.png                     (tabbrowser/tabstrip-bottom.png)
+        skin/classic/aero/browser/tabbrowser/tabstrip-bottom.png                (tabbrowser/tabstrip-bottom.png)
         icon.png
         preview.png
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..333f6bf2428fd03634fed6bdbf5998bec74de6d8
GIT binary patch
literal 556
zc$@(&0@MA8P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz&PhZ;RCwBql3gf6VHn5%XFK~awjE_G
zpBF5RP?QTHE0Ix3NxN|C*4(>vZ#VA6h1|GON^&L3M?MmgNW1XaY&Nrvo%4G4?wBKo
z?Wwo(^gi$NKfmXLBZS~=sd^TG7rD*X;0a7AFF09%ILD?{GdRrz9uGaRwYYG;JOe7g
zDdQUCW8B{%KI;*Q9xlz4$smfvv@c0H1VoZamLQABiCQ@>k=z8qg?Vs#J#_YR80#F+
zRaAf^=464K1QN6sD^j6nyd58~W2|+csG}=i0TF_Gi1i`$9K_qn5#r~k__)7=Ffhmj
zN*cS_#FXRIC<!8)8;Bk5fz$D@boM~#b3;ld5MEn_7z)8w-3sTxB$PX&Q4%BrH+bFg
zBe=B4N-$K`z}nLbDHcQ2zeOoT_9OKY(ugA-h9BMcBf9IS<q((}n^EAXNBr`FmU9bT
zi5=>TL<z)~Fh!0-aP`xNrFcEqhZu>#)X>D9B(AP96siK0Ah^1M@a8&FPY*D+wS$N$
zB(5*P7nz|o72^Hj?$<PaG%<T=Fo3rR^lM}U=@>5*Gs=H@Ku|U|p4mRO!vwbB(d?25
uU9RtyR}t`SFZ;a6(~7IizAyh%fB^s@md*yy!H{wQ0000<MNUMnLSTZ&toZr>
deleted file mode 100644
index d7e710e60c96905c2d803f7293ec43bdab7a0154..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
index 0fcd4a5bada1366ae74aded7df95e92913e3af3c..a94ac2fc2c3798c11591e7a2bb7d5579076048d5
GIT binary patch
literal 582
zc$@)70=fN(P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz=t)FDRCwB?lg(=rK^Vq=o9s4mO}g8X
zwqR{RM60P31qBaPsTjnAA7B+){{fHjuka)Wyy?N4A|4cqRI2Dfi1<+j@vF9a5UE<5
zk~Ah;%}&<YNtzfWJ(w5Xotd3yp7)*SomcZbk5){7d%gdn9FuEcQt`3R=bG-mxz^{c
zWz~I}x$cvA<;!HQUO{UMVQlCnymbJhccTgr8{Ch~ve`XTiU3h2XxX?+OB7!`S03In
zKxE$my5hsi@hP;w&w9MOc|NJHF74wd)#zpxDZZS>dHssg*Lkd?C&>PoX^g8;A@oID
z{kMGYF2RmY!rQjfe&{fvO`FM0PLQ3rMd#^pg6$TXakhbH@qK@lpitn~r#Z@wLm~Z$
z$ez8JLp!k!Cdf`rl7Da?J8?t?z0f2B*CjSOCN;>AfBKmGleDia=HL+Pq!!NX45j%m
z7~MVps2EV+l8cZ6mWvMdNCG3)&Cls)h+GaczC%G)KF%tfA56JFuMr5B%$?h0A5P&e
zED+tb8&3#U=02dC5rXD=et-WaaY7yxb)q_fsHbGKp+_wOp%5a!EP(=DmbeyKxD~uC
zeM1#`PMxWWQz>@WvC*1X_V9?Ddo|%2dcl89=^K}l|I<hvebJQGYBvUG(f$Z903Gq_
U>K#h_{Qv*}07*qoM6N<$f}!9J#sB~S
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0c70347f6f675917554f969ae2d420a407d37040
GIT binary patch
literal 574
zc$@(~0>S->P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz;7LS5RCwB)le=paQ51*2nZ2`dO~foJ
z*ob04@bM2QL?c+ZjeUwmNH12YEJTS2DXi@@Oh_b(pn@s1P>>)t8jA&mWeXpyD7v_0
z&Ccwc>%Fs+VcdtHhk<+N+;hMAoyRy@Ykc3={G*l2Wyh{6<46xJ6#JMEiNtz{U0U$+
zc@}*?ja6A{5Ckbe$C`Aq*YRc12|Qz}UtAnT_kI?z_0C{`^*8UI$MLq4+jErM{z+W3
ziurQPMA9^}=4KMd9ovik^@Db0h1Ti?HlJNVH|t#mvQ?WQDcHlpnd@;t=X;f~a+mP^
zL!vKl@J`P`@eqzVlOBMZ1+<=DWpjPOU`O$e&yt^-L$|&XJe`G~pAfN1h5&4qo!S%H
zYx8W}DG|P1z}+{Ack;4H;{)NV8>X#7Qr>=ml{PxP%C>X2af$~C)~*@IEdx1)J8>4N
zJx1#5^a#kN08yg`?FJ*In>f3U5WbuzYJSE&HiL8mr1}W{)`gA5DOwMviR!OWCoZ84
zEP8hjb{>F25&8H6hA9v+`ALY5%rq8u8wH1PMs^^LYB%rk33SlxtHB?WICk+{JSeu(
zR%m{v67Ow?awR_<?STMKDI$@c@lE=k{9JY_l~RKNOUujrkNp;40Hm`cq!FM<W&i*H
M07*qoM6N<$f=8AFvH$=8
deleted file mode 100755
index 007003a33cd5f0cbe6dd0734f78f779b0865f017..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
index c1431ded33bdd794f5ade02d022ea077f5ebfc05..bf4aaca0f71dbb055b87458c82f664004c506ea0
GIT binary patch
literal 577
zc$@)20>1r;P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz<4Ht8RCwB)l21rfQ5431@AaIS#F#Ll
z#k5ia$)JtUs)j-$+O()eM1z}hQSB2FY^Ajb$(4&DXh4J^2%<vV6a*%=5M>}KB$Am3
zg;8g8{`l^_-Fx3eD!zfb@ZP!qzVCeJ+|N-;kxr)-|2R^qlw+dzXXE148=;q_rk4_g
zP9}t6xc`nJU>8ASum<XAz(VdmZ%AN(QaLueof{RR0fGBQ%kr90Z6}b&lE}7GI%7S%
zi5l$hQQ+=esFnm&3Xq+^d3Ou<{XOJHE-1ldmjO|z0+oDdv#G*2oa{Kxmkg2I3|nVM
z@msqrfiG0J0;Y#x;RVubp>leFa&iPVSBXybA=j5JcyABfzYWvBA0Kc(kKko4abW&A
zwZu6}XCC7emua4UpzBxm+n+$carN>msu!Li;>Ynm4dcx}rIP5O+<t|~(retGvsy)%
z0#p0icSL!E&GTbyx1J<2^9WVUQS7>n(%NHRUxq6%^~K&^Cpvi(e$7$pz7Mq$O^X?-
zhdS^N9wnOp7?c{;1F==K^X=#nYKOHKB5~ZcB}-n7cj^n}@MkpA3cZWgt_ENXlfRa=
z`=;~xo=jk-Ff03l`sJY0W*s=sSXtIRp!=luAy`>msXQ6H8{<F5Zvh4XpA8jvo;&bT
P00000NkvXXu0mjfrELqG
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..c827809f6717a78fccd440dd2d16cdd573898d2c
GIT binary patch
literal 473
zc$@**0Ve*5P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzdr3q=RCwBA{Qv(y0|6ig#L7VY9f<D&
z@n;lSkO6qG7!VgI*1h<Zz4F67AlnCsd6CsH;&B1U=4i#bmt9|f{bvCQgc)((pAyC&
z1Y}--DPqE_x#n5d*YAH=82<iaVEp%wVf&@8GC*-oWQ8m^HCI0F`t}22Gb1Ad12;S4
zpSvxxWzcYd19UHdH7k`o?E3oiFWhi$cBVh~dK5sKmjdxCTrL1>R?fcz)yxPAVyI>%
zteVjc&{fX5-u30jKNdztkgFIW&Yq~=i%T<R82tXt!1((wSTo2BMkXdgX#^z}F5jK4
zSH{Ei?+?ST-wX_YeldLg^n*nu;cPL;Yfvv@0IY$i8g&8~eScYCGTa=@f9@=|z#0zN
z5)#Caki%VHe;@@W(2(0}Y)gThWypr$N{J9d0`>u2@(&(PJe<tGZ*6e22QrTnN{JvF
zmfqgrRL0Hn{}1DzKfnO~!{BKt@&uZxNXtxW9@~HAwO$}OGZB@Y0RjvF=GFGrCZsL5
P00000NkvXXu0mjfA^Odg
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0b263996e1126c3371fd3051a1ef1d530330c195
GIT binary patch
literal 458
zc$@*s0X6=KP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzY)M2xRCwBA{Qv(y10{fo7)8mo$1j8x
z9nK-kfS9^dmzbpl_4(xl`vY<hW|3q-SmlWeOyc~yKUi5Aeljw#urM<wqpM-W6$bt#
z$Ii3M2pTZ3vobLJ{LS$5$@>c%d#ntJGQcD6@L4ulAtRXPUyt9N+cC-37@I{H1~_CK
zJi{t0WX!+;)coT&!|%uM&K{UyZ-UF4C<a(Y?>xn#EN;rc!@<Dt_aDQbXYWrRpKNW0
zFPvDAIVUc?`^xl}i-A$#9|OamzYPB#e)>vMI{1G%(((Vp4+ogO{b68XV`pHI6n0>;
z+`J#30ayc(*=EOn4s}TfCSDGPf1iIa{J8o2z~3Vtjzk*(0;~@E_j7AXIj{f?`2#fM
z>-A>`ejjjjBsw916o0$*?f~OY1_mw>K?XhzIR{45eY;6YiNE$*I)1wG=D^<%zZm{~
z{r8K3nQbP9B9IpdVFt?+yMZ_an;avh*%=_f04$xoyZox--~a#s07*qoM6N<$g16Yn
AS^xk5
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..d9af793b093d747401fa0cf6d8a81979f6ac319c
GIT binary patch
literal 464
zc$@*y0WbcEP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUza!Eu%RCwBA{Qv(y0~+83Vr3xa1me3u
z{E7h|02zRUd4bp`d*z3Figho30oesWEQY2A1v8?#z#wPU$91dDeOCl=xY-#0+;0*u
z12UK5atRX}pL6@AuQH7P{xLB8{m1b2`yUp?nrB@=@n|3x!)5@w3qXpZlqw&0fBpHN
z1ti4?6yV|jx};qet4kQM1R}_gXr+<|U0;9xV}S{Bvors>*CUT%2sQ%{hUDLd8Uk|1
ze+C|)A$KRLpcsP70GJ^~%30TnLEZrw@c%y}0}lt&pS#mEJ%Dn1L5f%y2mr?4e;62l
z{$l{@1-b)h88b5jp)i1ZK_%gA*VpfVSwKF3*?woCF+ndtG)JE3`ugK9*oB}F;O1oh
zb9<Qu!9WB@qiV?EZir?`;Bj*RHLtNHDjF@-0`?#L^8GI>Jo-49{@mW+gflgwr^N4`
zmLg9WKmqsX4+A&Lf4rJ;W~RK>3-{DKwv&~aNY2gx0R{je8U)8)IdK>O0000<MNUMn
GLSTX+|H4QB
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..725146c21fb36d8bf9b9a79119faeb5f318cdad1
GIT binary patch
literal 454
zc$@*o0XhDOP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzXh}ptRCwBA{Qv(y10{e7n_yVc;hf~!
z;}^&>ARzZ(7QdWeKeLpeeoWn|OC%e>!pxZblaYz#2P-QBlQ_R_Smg=4E@8wL2L2_-
z&a=x18ZfZ4GBEu7&G7Td`wJU;tPF`Z00cbp4xeR{6*7Vu^6T-tb2}#48WU{*2smUM
zJi{t0WX!+;G~~x`hTo6hojowa-h^N*zyL_`mlvN-|M>Nf0Td>G#rTaaqj#P{2{S^W
zeDcPpuT0<BK%vX<|HD^?e^=jqCE5i{mYespND4c!u(2~Refz`k|KW!N|1U>666FGB
zn;rW(wd5R_csUsUeg47l``)_)|Bm}QVnjPO&8!al_w(v1I<NpW{{d?LarfPUzehYA
ziAqR}ru%mDX~;Qni3l<<{$ybIcI(}N-v=BWiO&nnY%~9T{rBtdhhGezZoE10Yp<mv
w-cSam19Z$_c_IXecVm-7$BdL_XMg|$0Da`Qt>cBK*#H0l07*qoM6N<$f|5zkcmMzZ
deleted file mode 100644
index 22ae2e55800a908ea0d867981db34046f526825e..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index c3670a4704d4695b5870887fc803ddbc0dab733a..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..7c9a7f4ac4df5612a77615e69e45fead8a4e67df
GIT binary patch
literal 441
zc$@*b0Y?6bP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzTS-JgRCwC#ls{{OP!PaREm52uGUQV@
zW^!|L%8<@tmVSk1O20y<EZLeNli(milW!5ooFRjOM8W^jdJlZ0iim}FD0y(ad++Xk
z+@0QIilTtuSj+?bx8T?L{H5F`r6@f)yHYl9i^Y3&@l<n|JWr>}Xf*0YJsywB$9j!w
zD_9v0hv57E_p%rUIF2Lw?RJBD`!J?nWgScc(=?@LmSsT@1TamLoHb2@D2gD@bLuk~
z3>sB5z*&|-k|Y!=iXvE+1+&?V++pUbszMM16wdQ}1I)I8amP$-+Xh|NsU3B^L)*P?
zCm7oh$1%y)aU2R=tyV-TINHz$eeYY>nK3TIFvz}KE@3<#6G8pn)|PQ=kFVD&?Du=p
zQ~XO#rxUTuvJ8jAfqdl4<<cLF;(1;pAPhrrUAGa_1>T*{XGM~vUIS9bRMXcA-h6Ji
j@Y9igJe&Un{3XBusoL39W^KIg00000NkvXXu0mjf=bys|
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..f3bf57dcb8147694fee135aac20cda247bb11f6d
GIT binary patch
literal 469
zc$@*%0V@89P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzcS%G+RCwBA{Qv(y11$g(1C79_!EnHW
z%$YiCbGE1me~6T%umd|AD^Ujg{PmmR+4HvtUcdRcCOge{DprF<g!w}3ZS@?41bG>l
znThkv-@pGD-o5|qaNy8Iu-mX2EFmuBAi&SVz{tqR@b4dS$q=L#qz9xIXHc-Rvfwmy
z*VT_;+D)4utKlHMI1T;>%q)Mg7`pq~Cx-4FFQ94|7+kgZFx31*%V;d9;q@OJX2@XA
z_0J5wyI#WiAPYb~a?#{vK-Y`g#sB`JDA)yZ=}w5DrS9SogMs|Et<M>L|M|z@hU9Ye
z;A6rt7>ZY%{mhWC<Q>D+*Q^Z5b`lKE8oXc(VuQp$av(J@_2>qp2F1UB@Sq6N;{s#k
zWQ9*0q!*{bKYsjX`1SiQ(P<djaFAY{LGk?My92<)&hQ&(_&=!k2w{*~kRFg;oGyOz
z=EIt!$1XF7iwQcg5t*fb0kibWSMLwJefMz<O4=SR=!dSs009O7T?yg2OJ+B&00000
LNkvXXu0mjf&pP0!
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..d1ab51f83982a32ab4086ae41231e39d5dc22a10
GIT binary patch
literal 425
zc$@*L0apHrP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzOG!jQRCwC#l)q|&P!z_GQVekxaqt~7
z3K`Ug$dGOU-TDg6ls<ypbZ&<1f<u#saS_QNF8)pGcd3CYf(F{5<iNq>cfb4N+<U!p
z*XxyjBe)0nZ^5tI?Mw4mHEB-doSHnm?RM|2@YFG^p4V$rRn<w<FbvI){T}5Y*i;mS
z(lng}#+>dd`L3z1Ybwi<utl@kjOOz>@jTCTBx-0Fg9l#d-ROa<s-mJOh~qetWtk*N
zBH#B(5CoQ}p<xUjcrj-*IL~u(U6*OLZBq~gEKwsc2G0<<yT@#4n1H8Y802{#S(Zhc
z&F1ETrt3N-NkW&)g?UGJoMjoE&u3aLm$%N_PN888p3xn*;5JZennsS}uy@pP9RE15
zyTC1cu~@J=ilW|EFa~^TmT2PChe8y^o`!AtzI}t>!{_lx_g?A8Z}XpkzXTWn^FrT`
T5i({i00000NkvXXu0mjf0p!E4
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..83fa2a8188bdb5abd193ed35249b5c8ddb886096
GIT binary patch
literal 470
zc$@*&0V)28P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzcu7P-RCwBA{Qv(y11$jKsKN9#c<QXp
z*`gx+AySgU4(x2KL>ch&*KdYr&)*(+{pRDE>@?r0a0!sXFuY>Tf&DLDz5oB~_n-fN
z|NSEhgVcibfb=4p#e!_Rgt(A{06z}{BO@aNP!Dll2C4<=0qI2+M=_X{m4zfjkqrmw
z#cA+Apcno^4c&e16GQio7hra&hXjMG79U>me`tvS#o)hxfd>Em2WC5|^8j5g&d|H-
zCD<UCFF<?{D0UMEtAVKp>Ba5hfB#VwII8h5{QmQgp?l{`hPJKG;o_z4;$S&swdlcz
zX)u}sXANG4ci$Nqiq^gb^ZSB@fnq!u>hKy2Og?b0A%h@2E(R7BHZa>yiv_D1kY1by
z|M>Bn;n(lK49v_-7#h7bn4tz>rWlY#Aic-{#f0ZC-yL}O{xidGpy42|5raW$L3%)X
zak}`;n-6P_9=psSE+*)}Mr4-$1<cYfU%fx@_T9%dqs8VhF&H4g01XH?&GM5#>Hq)$
M07*qoM6N<$g7Ik9U;qFB
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..f67ba61b88e107862d728dfa4158e0a8d1c2ad15
GIT binary patch
literal 743
zc$@*}0vP>?P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!iAh93RCwB?Q(aHfU=)7ZwOw1bb+92T
z8?XyL3}B*O0{#|A1cO`|6YtcU$zPBFYT!S}o!kg=Z;&iP#$X?Sbfd^<w{=_bv}Tit
z-snl*q<zmh&w0*s&dXd~UEzO>`~Bke;?nJaqD(3QWt``^L7NIxDwW;u7Z;o5a(Q)b
zX8P;(c;-5T#kcP!M@L2y@xHzumSthvHfr@6EUN~yTtWUQpUq}6FJ`A7uHFD}lE=r!
z7S%|^yMJ(iLZJX%*C~R5q69#U5bEf_siswu$>eMkgmq~zEe{P34=2>FF7Hk<iQ?HA
zx??d^D;E0u`=P2)lu9M!kB<=!hsAh2{)%!2TL6B)e=6SF+mp^@Kz-uwz5D2nMqOsS
zAR-tFVQBOY48z0$#k98vW0E9IwE&3T1jqBxh<0aJ1eXL-qMko~+QLaeL$y{%y>8={
z+6}8}p+^6~pz@#v!13Gwsf=Q=h}_8uC6`feG+YKEFVNv3ivk)o3#MU!A%WZ4d;=|j
zO0|mp!$bTOlmX}QfMZ=3j&ga3q8DC4fWUE%rf??2Iv-5{>U*zIZ$OgUp!ogpkkfA1
zc=7T%KCG`}Yjev@@cVoS&@>#sVVZlt7?|Y^hn9m}&`#m;IF%U4vW)rp1m3T$LHl-!
zY%UA0mzWTnb6wwP0a!I_#WXH+k}Od&i{$oaoM{@;sT7X$c|3di1nG2&nq$xz4nfnj
z95GnAu}INaY(bJ`$r+bTA`+<U3kHL3RcDb*(<pC$*?HVtq#LUoQPo5!)Y0SIv#f^>
z0}r((&@{AymQAJh|GdggTUdTGB#Ppsq9_wSpKs97f~xN7`uV15nyYh<X8!(|{>6R>
ZFaRetERq{0xIO>?002ovPDHLkV1hj=TFd|d
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..cc3b067c08058d1c8178d0002c485216cbe0e5bb
GIT binary patch
literal 871
zc$@)e1DO1YP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#2}wjjRCwA{liy1eQ546&b7yB~Mt2=|
zUEQQYZCQW!P@qLW9)g12qVS=YprVH?f{OCJ7a=2i)0e=1KmsFrh+ZOzvPk+t5+#{f
zLb|%YbZ6$yo$1_37rG2H+`0FB&pDrSjuHd`w%5G}<ErlmM{8=#Gx1n$zhUSZd2ZXz
ze5t%KW83y4MNwYfzA-4aZIo?+yZ6VMqfu?Bt#$W>x_HduoJ06q;&g{G6{S+Su=IO*
zg3d;UZeCfg3P|I4ymq`JyXTY;0-Ox3h6LiehE0dV6#>>)*T8%!q~OQT#i>fAGAKpV
zS}Uz;ns%qBD|_B?IcgFXdiU+cjvZ+X50B!&@snt2ZAL1c2Bm>=v4n(Wbry<6b^6uJ
zb4EEIX=~YaNeCaYWIeijyP&FSmCM}hJ8<s94-|BCcOsr_0QUr%8k;Ur^hX#08?dap
znCtt<c4p~f0FT53?d9@?2Py8j9vS**?`(%q7)-;AMWfLHMzs4lg`P+y!N{|qd?_l3
zEx0VAh5sbbjS7cpYQ%@4AjpPp^f5!%Gah-<0tt^iD?!yjt{2aqLQ$1alm|WxEdo_W
zMSEhGVd1qPtW>!Eg->ZvxT%zd#f1gDe=|$<Qs_~_JMvssPufJNIpzsL$_^L;I`H|w
z2pm`7;?--|fAAxoJ$a1Hii5+44uk?6EcD1dKF_E$Z)KCLujJr4B2<->Wh9k~hxVRs
z96oje8^t`*^)<*BY~*vfkQX_B%jh*(DwoStPkjIS4VucJQ=XJ=$V65}dOmmdG#oDQ
z;nNo|V&J+?+4J}$qr9e<el0(g`Q=wuG52{+wkH}BCNgOYZH;wktT(Y**u?bfSrk`S
zz^IICYdL8%9k%kw=vcF9n&Z27?mWfGi=cL`OD2i7Ao@OBs3@%Epm-isN_QpqXUcKx
zu$8OBBt;^T$Pjhd1=BDrmwLkws}n%7XN<vioWlBgZbJBCgeG$NziHeaXWAdtb^VMU
x)%zn6EfZ2F+Kz3{&^H|CTh}jF$N8@S0{~r<y9fBid1U|q002ovPDHLkV1lrXm=^#5
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..ebbd7d4f545a5169bb9ed00bde7e3111ac3179ad
GIT binary patch
literal 825
zc$@(_1IGM`P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!+et)0RCwBilUqm>Q5eVnXKuT?>n(L%
zQ`QYbs3fnISV353L^mSnp~n@Yq#g=-?5XG>5K6YNAPRz@d{QeYf+Q_bv-Cj?%uBnj
zm(_J$-JRK)ojILd2-48Lmow+g_y3*may~*S#oyN7QZ8_u<Obnj=t^Vd#eo<$F>d{V
zu7>OEB_~`t#Rpuvs?^~>wg%91uTYRIIrUjP_w(6Bc3w=j)c4%qC2R&D{Vf&Qx+dqd
zRB~a^gSnL#t~sj8C8#6#)!nPk439Q}kWYkQh8G2IMMJ-T4Pf9&bz4?Z%~5k&zDcyE
z!J3@`0Y3m^1u<E}%DfCMybL)Uhz2Gm-<7#~PpwHoSEHjQt7OV9-iGu7Kp>-lwg4!z
z5a>8Ea_3<yvBGSDN!Rqze^Tgm?`Cx{?mDWfuh@$0B2m0RY>`0}7%>g6gJyJj2$lKF
zm_jtgx9S<33Xi)NqqFTfDfUJZZ)4xXQi*V4>yDbjla{m)yIlv>DcnD0_)rOrs#uCH
zE=8#l?{0=-tQtOf`hzI))rl_bx%6EnoS+ht%91hzRvX^TD@<Ggg{8A)s<XFk?3MHV
zREOiM|MQuE7MM3lQmtY{xI~Nk9+V16sp*cS%w!n64M9&Bg9|3aBn^jc({P5;$q}_A
zavDPti>7)yGGSK{h0bZ_1b`aUDWynxEB+AXMkbb*yi1R2S*)I%fy?{0J1s%WTwd58
zc0$5Jgs$Eo1_j|+uslctz=?ty3533lbq;-0Wv#jD>R`{IXXSKqW*BmNU)*c!b<tt=
zHN=AP!WTT}%?waBd0ziQ*3ZHpvo#3@6B5Exa00o*3G|lNrAOlboG*lP4Db>>ZQk&i
zG6$LCX)=R&7^E9KICgU?JFjKm&G8{%ud{1ofIxM^lXfOJ&Pv_EAhU_d;bD*G&&0Rc
zu62_L$W7+>m<f-u)y4LE6GD!@W#XrC@%UMt{uW>W+K4X00EItl00000NkvXXu0mjf
DlKp=K
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..2fa2e92552e964d39969699499aeae630c289706
GIT binary patch
literal 796
zc$@(o1LOROP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!zDYzuRCwBiQ%y)zQ4~J+y*J~GIby~*
zqc-NkVlv5}F)hN7!i><`1TBM{3JD3?wP{tf2!a^OelS|pCR|yhxsra!betB2NLVR}
zIx6Zo&b)W;efQnY8wt|T4jc~e-Sd6tyXTxsq?GWtMIVMVMN#faARsMqx%SeC30s)5
z@rPhWv#+AQ%~u|36O1;)e{3DW;N76+$j%LW%Nta0aG&aMyThL%RoYerB>Eua6(-#&
zrBw*RYACEacD3Y4ixc=bOup@BGourCh^oCKgv_WKnF?Ku&aWegb=CLemsK2h=M`l+
zw&j7x>jTZ91Mn#@lasJAJq0XffRPk*DbD(<!_iZJ6KHtPF;}jqwP1e;KN)~N2SCx;
z9B4`k@&ir)Nnmy~oh3{;_RkfD?pG=x;dY>|s>2uD<sf_&tFNFhfizcPgb5f(fSgbj
zYJf;F&W9-HU6iptgV77b9^-Iljgt`Q4jwIQ&Dr5V6{`rQ&_gZgrE7gQg@|*`CFRU-
zP$mpcU+V^K%$y!*k1?VsOc6=UOrS0bF;hYxf<0K^(2wLG<7^LtcN>(p=!{MyxD^$s
z8G_-?TFvR!O57d=ENa5S&oq2pTHBwqssS|#rgp?qX#`jX<A*T@&;i|@nX$BFX_ku=
zugn<`|DH-L&+|un2|%FO*<QLGau&0oSWiQ#&e#HF^ct$L!GL`r83IKkES)qzkB=k<
zxM4*OcEkq5u_nn(ZYKdPkVP$~aJ^~%vTQfL^10tdDXShkzxa`Cd<%c<+;AhxWyB`H
zinq{j44nR!w$Fl3^3NEYz2Mx8Y`Uff<vKPk8-c%cN<Uy!DxdjtQF;@OF~U(DPUiil
z1e8;Oz?TR(iQrclXKgjO2mTD$6gM%gdkY2hIyUSv#uEr`Lp62iNMQD2<)=0{e#Ml(
a1sDM8#IIDKl&}f_0000<MNUMnLSTX=w_$+*
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..15f9d4c282aac7ff4804ca157b5779da27937a10
GIT binary patch
literal 334
zc$@)F0kQsxP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUy@JU2LRCwBA{Qv(y11$jKsKN9#xTdx?
z8%Tu!u>*<b901}qEzQkSVFD~@3PK_yA{=C7WJogg$&)7z%U7%bF>xB~AR!^a@cHv+
zk_-mvLH8xP!3=-@{$=?6`!`7jv$3&Zh+!D~=g%L8U%!5V*{rOr3|w4X3@j`x7;3(K
z`v!LaJ3BjR26J<BGe}BGVs+)?$B!Ale*Fs9L(pK5D}Mg`31{O1gw)}6@w<2L7;fLb
zjp0?0fgm}UI-*>RY%qu>CWVk}FtLCbgAcrY`_@53M1&-RfqG!M52wLv_U+%#KyH>E
gEjEXV!2kgU0FN7@IE;&T9{>OV07*qoM6N<$g7S%nuK)l5
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..2589d285243d38e2e9c842f87ff0c0affb993131
GIT binary patch
literal 387
zc$@))0et?6P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzB}qg<RCwBA{Qv(y11$jKsKN9#c<QXp
z*`gx+AySgU4(x2KL>ch&*KdYr&)*(+{pRDE>@?r0a0!sXFuY>Tf&DLDz5oB~_n-fN
z|NSEhgVcibfb=4p#e!_Rgt(A{06z}{BO@aNP!Dll2C4<=0qI2+M=_X{m4zfjkqrmw
z#cA+ApcnrBBQG-lp(O$oga7^o8vOSkiUQAxcd#0?Jzs?ZT`z7I|ND=j;OFmuSPe#3
zhaP;G2BRt1f#x!}!T(4w7?^x8f`V88(u>pJA3uIG{QCWufti_!G(&-o0qI2sC?-6A
z`R>5G_n#Sl0}TgxjTj743(^D9i_^t#-h5bd^w?zvaWO#$HX^h1FJP8_`Re_Fx9>i#
h87(%4iNOE?1_0YB3~`+;ya50J002ovPDHLkV1i4Hs4V~h
index 65c58981ef47dfb565a7c9c7c63801e3b9b373b5..3539f3f57ff0875a1c675431c66ab54048e0953c
GIT binary patch
literal 760
zc$@+F0tfwxP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!nn^@KRCwBqQ_oKmQ4s##?zY=@ffg!-
zl>}oYRf3TK#TbnT<H>^uO}xl~#Dfyl6XD2T;87)kgNccrOt^S91`Z@b3t}1rh!Pbn
zU@iT<?f!ILfkd<#U-I@%X1?!xGxKJd<2b0b;*(L?v8^ZEW`cOD?{=(G3n$?(%Qh;5
z!IROO-2Sl=o2Fy37EY+;j7{|UnB*E&doDxmxdbLjqulr30=B6S1lmt^c!Mgu!4LxN
zkq+B52L4$>Y@*le*!EGXy916h($aMfa14s*2zB)${qg<C+~e*qf*`IzVBey5;###o
zl-dwuY=DVko7-2fx)i^sq4gMAyDw7MtO{_U<kBqiTbs~}#j;V-lD2Ja(nZhN{CIb~
zt^Zo@k<JT{m<Hyes+djO5)m!h`ywKpRvxxqgat2lme-MdJGUT!v9a&VGn!e-f%$@f
zL9bPz>`WpVJ7g~drFkGX0~F&BJQ?VPZKPHc1Y%>1&%ylonX7Ik@FH?$NcQ>_ppYQ)
z8r_)M??bg(Kxsy?P>&C<7Ai)me4~GO@g+MLBoetU`<tIe&Y!6Bi0eeAGMKnWtiBh6
zrYl&T-74sX(jbwi4n1T4@VlvUHl5J6SN6yz37h<+J{XjRWuTnOpi<Bh2joKnv59Cv
za!Fy2OfG{+q6?^R+}qqHpGUSKxx_HX)*2+g<Ysj)FO5cB1JD#gJ||Q+x4DnUIEG{Y
z7$nDb!m{G_Noo*U)<*J866y8bZ60en-q@mcHo>d<AS;@$QqscY{`}j|<eV1VA~u%N
z*je4x&5HF%l!OO7l3GiTX1-?cg(8h^j^SAPygno#h{95Ct2mw6$bVuYdwBNl!s0LG
qjnKqCOD0nH1xW~V>_OnC00RI<6&iej<@z500000<MNUMnLSTX#Kx!xe
index db2dd2ce1dd0ee840fd1fc53664604d3b517209e..5c898250cfc94793d3aaf8ce5f61efd2442b982a
GIT binary patch
literal 752
zc$@+70uTL(P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!l1W5CRCwBqQ_o9OQ562}eQ)N?Jja}}
z($T1#1|hZZ$5>zmL2cUvZE_(5l?koHW&eVkK+r`H)GBb(U*M)i&S;Wllts$u=rl9x
zjQW1x+j$N~<`iA{c=w%qzVCd8doGhwqS{JNBsD3#X8;4^{9ez4lvOQH#b1_i?1B13
z$6X1D!s5p%3QbhY<JE$x@gAM2>PW2X2AVEj23PoqANy|s;oAMt(`||H@iPe5A4Oer
zb3(Xo|36zujdzEo5KYu~0#Xh)v|j_Hxrc_<GuT+p48I-gS>_yzU~Dz{FlG2WM%D%y
zWBp7~n}an+V!@hdsJ8Je8ZY#bl_KEg0Oto*-+w?kw*}jDO~;a1DdY<AU#imc?#Gf>
zx=*zAK~;3HfJSi}u<}IS0K6^2Hk!^yfpZ+5<%B%jYsoE{Eo<LRos*p>`A>6(Q(6Yo
zwuzeo%%w_YuRz~Ta!?{cI&)npLHad46tcGAbD2K}(_@{t0($sW>&>g0UQd;*U9xZN
zRfa?G$^;q%Cb3g=@MUJlavX7|cQE~$?GMuQSl4YW5_;Zxy*(1DRmh1iKyV3yTB3O{
zwj6w(+1a*DG0^)cJ$c|7dxvHx&9XUf6tYC5-rY*?G*JX9A_dH{3(FAm`{V-xsqth~
z4Jz@FPRY*hud2Rn2tk4#LSY6qz~X*xwLz*Qfk+^T3K0V3b(3K2?fqCll~7d{@pBIi
z65VTD)48r{3`WsHc5xTQHEZ2}Ovg^D4Y5-S!Zm;vf^J!e6J_a72OXR<Wadj)c(ZBe
zSFBNbhn<X}Gr#7HF1)ks%vT4z!ss~UfGcdSRIsNubMhPG?CGVU^z3iq!_@bSY(_lh
i3gRR(w}0?cfB^u-{xtra<?sIh0000<MNUMnLSTXw*<o4$
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..ca3f019f2a4e91730de0890b8a3a9d3a80c3fae0
GIT binary patch
literal 397
zc$@)^0doF{P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzFG)l}RCwC#luc@bKorMciXWgGK^F=h
zW)6`>dWK%1S*2I#8Jb1T(Buv--3Yo6MK_}27uFY;!7(+7g?3T$;4y#R$8Vma<Erm_
z_zhb<z<&#V-ELooWj#1q$T<yuc-!sXX+W41te-a<V%zp2Y7hkEW4}i^3nr#%LY8G*
zP!I%=B<ZZ{x`wuGxjgnvpK=O@uIr#_8ZIWwGU&Q~)=?BeS(aR$Zh94r)8JHSq9}r*
zD4=N?%cI84i=toy;Kqx<s;YuzS>I0Q`#$7(&U$Wwaf+&{n4Ys+bx(5>qo-*KuIqAV
ziW*~>qjh&pJU$9s@e3I@dY%Vi7+&-&0#l3Q7#zo8dYZond`gmp7>03CIDVn%V;g$t
r?VAN3K95KE>6L!`Hvb9uOMn3YF2&F+JPgM;00000NkvXXu0mjf;TNU$
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..19d8304649a436cafa6c4a688780252c85edbdb8
GIT binary patch
literal 418
zc$@*E0bTxyP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUzL`g(JRCwBA{Qv(y11$g(1C79_!EnHW
z%$YiCbGE1me~6T%umd|AD^Ujg{PmmR+4HvtUcdRcCOge{DprF<g!w}3ZS@?41bG>l
znThkv-@pGD-o5|qaNy8Iu-mX2EFmuBAi&SVz{tqR@b4dS$q=L#qz9xIXHc-Rvfwn-
zx#uRB-dm!M)o_qroCf~`W|qGMT#8HnA6iCZK@G3};4ni5o)hn&@ZI`uf$8n}Dh%j)
zal826e+&gbfB(Y~X{hSZgAdbSGzB}LE)y?@xb$VG8rC4eYw+KH|1g3A26%Y*;K>Vn
z*#E<A@Q)wA8Gil#i!}{juMou<c_7O`dU0my=P%zK048>Z-$27bULyvB)PnSY^x|~!
zn>QcU96ffKL0nAGfsM#4{R^0-U%q;O;O)DQYf#emXhA=84F(7>0L9k7r)36gp#T5?
M07*qoM6N<$f@+z-1poj5
index 0590d8184f9389d659bf2a8d3d93486e55a56b2a..2de9f51b8493eeb59ea7555bb4ac2f91d4b4346b
GIT binary patch
literal 686
zc$@*Q0#W^mP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!P)S5VRCwBqQ_G7|VH7{=HT5z+7izW9
z%b=SO32`Utzc7o0W-$;XEs7Q~D;X6<H?5*p2|-W`U9@v+C~kZ}CWD}*AW{;d_(-mb
zkIuQEXk*X^hkL%?`JMOuM4Qb9j-7BgEL*SF??@Mm#gFhlKgMI=A7`;xT-fdQhoo03
zl`MYV9^;9RfuT@{Wf<nt<MDvo?FP~b`|kjl{oHD`p6c~_Fc=I#I$_7SqU{WV!Jq<r
zzO!1bP7!<M_xr6J#|gG(vk8erqAn7No=YT>?>Lj6kw}CW0$^!R5I9G}U8PcaTdh{h
zO(qk#T&`UfN|MXvpxti6Xf&ElCX+5E`hoaI29?Ly>wSmA0aB?HWHOoHggESP$m{h2
zRtU4%OpfiC3x$F?pU<;2gR646%#X)o!Fjn{3PNNO3Pg9F=V3mdgF>Nz!C*j};jyJF
zNj97PmQJUu^?LoxY&J6*jfRFOIFa)<5LH7JQX9!+az33-A4H?k^lpfOK;TTP)xP)n
zd?z}cPH^5oI3wuwdXP$`e&ZZ2VzJn#gEbP+@At2}-7a8hyUbf5i~<aY!|Sc{K>*x_
zMlP3gScOnNRYqA!NGFWi!#Q!py%7LOY8=oB%d$c?TrIR(EkQ^pjBLaq?v1yAWpXN&
zip75csEuN=2#rSL7uhTpi^1u1g3)LM;^4;U4{QJZnC{V(GnoujtJMYW`wiY-lA%_s
zU1B9qZ8qC2;t&_*^FaW7Fkd^JP8NwR)L+Nr@h^M9Utr%KN~O{>48Re0YxpC;07cC`
UB6BV(Z~y=R07*qoM6N<$g3@X>2><{9
index 4d2b8010ea93e0ea883dc1e2ce866bfeb07e711d..66eb265c1f187c2ca3b1ff0040c850337a7d3e0c
GIT binary patch
literal 624
zc$@)n0+0QPP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!5=lfsRCwBqQ^BheVGy5PSIZ?$L6qtu
zD&iqQLIedx@IQEm4tWSVb*Pg(Q1PjVAn3799Xd$;2_8J<dI`l$Q&1?B0t>weuDCr#
zx0wfu_0-qEz_;`JeZQIcW|om<84g)GoxZi%Y~IqDW!Y!=eR+t-!4X?7mrq?T*Aq(6
zZnp&ty*b2V4+T@H6wh(oc`z6RaynD&zXdRR*x_*4j7B4vOeV0~?Y7lw6+YQQGMQ9k
z&-d5swGGRT_<X({$?Nq(x7&@xVzD1s%{PW&er7Tmi7*CBdyauH0uQuW?LD1NciU_>
zgWvDp3D7%KDis(GhcKJXe$VIgUzliw@%Kz3k@yq}g&w)xZcwY$pin5_lwo@yNfOj*
zHK<mrO%}6XG#U*_6vZ1alc`iHzzU$%YDqZW3xyyEUrVLZmtL=TX0=*5jYe})U^E&*
zu~@vsgpae?Z0V{$@_0OcRwxw2$z&oQv+;N==ks}yxZ8U>0rF@x`Vn9Ir~qNa*}uc?
zEsqW#(PA(dj+Rdtafo|uk#Gm@@;rYBN4dK|V<X=hVZ<TswMD|9MX%TMG)nB1Mg*Ns
zXH1yW=`;lbfvc?~&U8ApVEFsLKhr~{QVHd98S3@=a<N#v#*q~WXf~VY{eJ(2$Kz2E
zhq&k;{t`f-Js1oGBo1&ZU*&SS&wJt#T=jQ2@|P%TA?_CVBftQ8-7_c!^Cr#!0000<
KMNUMnLSTY}xD;Ff
new file mode 100755
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..9804a65e3f579ba51fbd30483315705344089fc5
GIT binary patch
literal 2131
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
JPDHLkV1h8+|K<Py
index 8940b57596cb6dc4c7374cbb459f8eced40a99fa..95ec5d23b11ef5ae882e4b07b4a4f63092ad27e4
GIT binary patch
literal 1985
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
TOlE5U00000NkvXXu0mjf6c)q|
index a0ec9b6543e1a99de242628a91ccda8fb76d15b5..ef353684f9e2498775845813bed30026e6a6fa0f
GIT binary patch
literal 9248
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
UAa&HUF5u--kWrPclQe<+A7TUA-2eap
index ef0f41f7ec1fe40f34bc71955316625c6258a6b3..abd1e1adaeeea0e2cffb0f398002de66130b61dd
GIT binary patch
literal 9440
zc$`gl1yEee*7ab6OOW91!QBV<-~<RkgAML(gS!MLgfKV>uECuUAh`SB?(RSLzW=@Y
zPSxq%wRW$y*RJY1-6u+2RUQ+K1PuTHU@9ueXud|+>nni*d>s+Ee6e2xv74-(o0g-c
zo2RLZ1whi=@v{Y$qP?k=g{Fn6xwrFxg(v_(7py2FsqM9JXo&nxd%Ef6ID5s)!_vyv
z>|<JdG(G{PUVbn=2|<($#?0KJbX-&hky+PD<Yx+?-wZVJ_gg!Y&oneBLxUAno$!mE
z#j~GQgm%)JYDHRjYL)4{JABiIvKLRpZXQQ(UIv>e`z}OFWZ9mEibqw&jikADGL9}W
zYCjm43Rt5#eTtIJSOIfZvus+ubU8KuQf&&D45vJAZ)kNcYbq)5_&LwF|JNUrGS>dS
zJp}W2#tAxlY>pt=%%~OHJ;P;=_NX=kphCZX-#B<M44qK(g_2|^_b25K5ZbXrJLzy5
zMYJoBh;*)A^3m1$M9lqW6T6i-+1>5Y@`UL`RNlG#lj9Fy_BeXVZ$txbz`!m@K?X~T
zbq+PCqT+Z&Y|V4y+w&J5hxx~&j^-88nGurGS(1RQDqr?>Yqr!_B&s*qQbQ}M;3aa%
zz5c8(AKwRM`Ip`7z~|DFtr}StBc@B?5#;FLWA>MW(HG~l^|f#EA~G9-1p<E4A9Tsj
zT`5Mm1E2jm{R!2c0fLXDPyNnR@4>XkOM-RrU5j2=da8Ps<M+sE>>4xu6E0%NeaV8m
zVtRfk$0LAG`Wr-J-f*WETa()@X!S3K!VV)}-j1?@Pokth#bEn9YM{u6ZGWC13|cma
z|22#>f?L~fa@1H*TIhK$g8kmdX(h?N^09Q^_rjLv;OQC0A|^J@EP9AYQlgqa?gS~a
zhGm+g_PF$&lsSq$^%r+)FA@?O8@es+^F^#T$8dO8kPNfS)Yx31a~K6cASV+9b(0pv
z#)gJ=Jwxx4$OHS<UvhJN*EHknu7-?R^C8Vd;QeW<mnx^xDgYCKqJ+z)fP+Ni<aQV^
zVs=BWPpg~XXpV9;>}vgl%=(z}`E-d7d_Bdvzqi0r*}A?*i3@>ug(Bi8js8J*@5&W#
zO(lTKfTxA0UWrqw#5Q(CzC|Oi@)t8&$eFxKAkoFDeaCm&i|jiYAg&^Y`jUFf^8Wk@
z_2|Pl!dtYV@*9Gw?2ib)ZRT3-DP``W)HPk`V!x`R@VAhQAs_`ou$!Bkp>1uLK^Kx^
zvJGoJ3B2>Lt*cS|)^G9z>|%R_Z9?uiaR;iu>JATl-F(evQxvZ}+H1;SSL!%MWkh^F
zc;&g!yOxup6d(5(eu3M!trusKj*8A*X7@*)e9a6ii-PblQ#;motZt8kpZRne$Pcq(
z3sy#T%UW6EaZI?rUb2^~#voB;r~q|4DXXDRA-YD-d0pTsaXp>mk2qL;0cSC#IxlbQ
zlT$}oUzn2x0N!uRIm(Ur$|3~s%8+OPu9n}`sHwL6$q@}O7AWx{QpKSxk+?ewHO}yy
z-fzWu<i8sNbD8eOY)l%1$ddvdbiECIMHT`@KozSeStbnklq#}!<EpH8Wc3#|pTCi|
zKYtBw<|^)<8h3||gDn&j92fWAA-2@wxCPaZQOqNv$iNn_`dg2eKR&ohm<)fEiU@8`
z{^dU#aKCvEp8;~eR2GA~{wXB>B*<!CDTE5L(ephAzSVmvCKahzsVgj8mzT9jhpPNa
z*nG0#y_A*ht57PPMpRf}2RjHi;*~#RN*Pv9e`cScIW<Gnw=1IAJzZO2FBu1?O~tbt
zs>2%K;7u$X9dBvUwsf$R;m^@fGdTQ3Pg*Zvz21Zanw&YfaWc<G%uGY5nt=zu;%YV-
zulk~JHOeF;?@@>H<#kadHYY|ukUK<Nv8Y0_pL-=tNR|^LuQn?XY{X#W=T7rUYOWyQ
zfnSEleJ1X0!#rX#gIdu3KFQq^-f2*;i`U%CaLCy65qHLYzQx%6{CtmqggQQ3VpJ}(
zrmgJ_QehZSaC;ZE#Z1(FHHESg{btpwdp<BOEPpb+z5%FqbkS$qvUvS6#{&;&KV2vI
zyDmE_maf2AYaRM7eG)CdKV`*Z=g2X(vgC9|$lxubJ~qBeP>;2{j<&b)-IbxE!0c@L
zsC$!L!G=_SP2`p6&EIpRzo$%04x&^FmDktTrenO4_s-rlILg@3oT6x&Cvwns{O?*)
zwma32;&wU)Sm@#zyg$D4Duv_WOX?J?$edGa{Hd0hSxePBuP$Q}dPx2Hm82w%xrIuR
zOC9OQM~Q8sOIF76{++Eqcc<L669ImdUWTBVk(%)pZ|5Uzu;US35_U*}g1uYbcBOH|
z^)@#3N{g(Zcm^cqC^UIn95HC79+vGV;CD7S;H|I4FG2VFg~E(dMX|b)vaT2RZ0~9s
zi!;MMj-JPuB1PwSzJag5eOEZh7|OqULx7d+qlx0zI<{VN6<};$I%FX}Xfg)r->4GK
zo<aX&j!0gVQ^y3yCdWx~DW4k>KVi)WoyI$rG&c5PS!gv9zHy&zl@q(WMDiN}&^0ed
z7KDz?HHwaQ56}cF`3kf)7Imb6SWoc^SJKKwEW{FZ%hE5q$FHWjpXfRfDY)HlzpWE>
zMJC^~LE>-=ivirNm<VxeVMpAzGGp8CYr)%Oc1IX=%y}243sIw~@99i0BCsJ0HCVsN
zy+MM?mGBJXn1(H@5V6I_)4s)ou5UT*08(QRabtIml=LDIc;O!F{h32V5yN(&{OX~f
z8_H*bez!Qi7^l?8P}3?+ZLrfqx&CGA0JR~;ht&KetWUnibY#KcU}p>jzZmPU?Kq0<
z;-62;^}M}jlRg<Ohaz@sNbKQY7Uq@|peTys?Oq8_keG1+rE&#Bdz=+|lRN2%S?9w%
z2hOs-`&dfe)X%nRD!}<C$tk})-X9nRUPUpE22xv*Cz49yF@}?B&}<?b=mZIB3=ZfO
zOspx8Q=lkOWpX;lN(@)gb^A~<{-uv$>_6w$6Z}ZI$xY&ZY8G&+7-KiKjz3G?AJpC0
zcg}sPXDxo|dml>zYh23dvCFqI(UmS~L$+%W?yP$kMKbRB;+F}jblB#Ay6(IK`@NvL
zsN9s`mXwr+8ZLe{IhrgEE_VQh*1HBx)JYYqAur3l<rVd%yRN_(XU$tDJ0PjHyV3ig
z^H;tbuHY+%N}uP6jm*_wTqn9@vTVj%8#Hus<rrmytusMav?M=cj;5`8Hiv`_-fSIo
z3j&7{;w|c_nqm&1e><Jbn_H)BTh7EWK4yIc-fX%f-O>#}w&Ssw^6DoI&3#ZFv=cN9
zo{?S*T5%RwI^9X2418=&JH&MgrIBk0cG2diRa*F<SD4g$(?iw;O-i!_$v2!23uKwz
zoo{U-_M9EG)o<5J{u%~tkrA`DDi9;(W6%RqHjv9plPz`gcL*^=zJaSuWoLnR!y$fH
zG^iiDhN(x9xy~`rBud-gKHObX+J$IrWcM~(SI<Gq_xuGvZ{LlDb<Q?CiBu70j@3Gi
zO;4d!PvA7h*j05%V{`3mk5PAiW%W?t=9O6|)4TE;$UQv#`xZHg8_r}siu&dNGhDJb
zS0aXqCcVSPC20OL>o5KHFsCudW#f+$+HXH)Q)&YIi1W6?#wN2MZN9$h@;LMuL1siW
zRCOp&-tV0BvUqV+KV}gc(T^-D;2%Dhr^!L4-WUoK#in_>-Lgx}`cg5zZX-B=_qgmA
zWs66<wLbHBl_h3a)b2)TCWZ)>xfqTv#Lcc9aCkDC%+5NlDA}=Dm<hYU^Y@wXP;^;y
z_e!8wc8EyGgh!G8j1%4Wr2;R4$wu%@2A)s-t&VXuRsO<Y6zuM__U(8vQ<)k4!H*K<
zp?mr-5UJ&N%OH8R(vgGgH55W6TST#GASUJ_w6OpKK9{Q3r-5q0n>NW$EqK`$K14&g
z!jyws!c$8ih2kSnA0$VT*Jp!VJ0E>XL!JZ$V6iy%dHs=+tfr>_5*HBtn?##ZA;&U&
z<wIq@^Mm}u)+%_M&&bB{AREj}!tT+;YQnku=Y9eWdup0M%1W2a!+#a&i#kzvE|Uz6
zGw6+#)NQa_{)$a~CR6e}ik`lbJ>@}EodzvRDjjm0Keb?0r7vH*jw*i2mOKL-eXSom
z00S{3(>T=)!EbxIk<UuhgUI5FP?!@O;mKOOX1XFMe&;`%5KmiyBIhCIL<5#tw#OmI
znY}^npN(|W;cbYV<T1YPK34&SZ59Ko0Gb{RXcx3aFqAAf!hK3+=@m6@6rE&B4}L$y
zms=5}E_GZ>0{N(sh%4ubwa8IPNIZ!bHwnWKFMM|2HeyRpm;@M@9}nO1eMxH(2VgFP
z^V=1Uswfqs89SVGp}Cg|VgpvHTG(b5N^Jl2QX@NRys+d4&8?_#i&{K#`aCH3b0&nz
z3O=Zk6dojgc@=*9^x$iRjg-%#G40rwjo^c<MTRw$7p-)1$NnpOVh<7ZZ@%vgjnXKT
zaB&jv(tmdD9-!ZLSlvHr;W7mm_TBRqUt17F$d4oRw*uKO#;BkHn-GGkaA!w1#E70W
z!nkjfRIm=5WcI$@oqQYA@Gh9>)bDN<5W%j`K)@VgCNi&QdzSHzWN_KgsY(oS^#m2-
z$RUlvuD8=uH)&)}cXR9*7u=+d{6zx)KEs8HU%%6)HUtxH%!HFlF<Jt(&JhKb>BBE`
zzkxa78F7*0<3Xhp&2@$@h9|lo5$IW~+5T%LjO5})WWvHNxh;%JMo0_ktG_Cf-S`;|
zm%Y@msCqjaU*cZ^{9A`CjP(pOCEVKmeOsu>FeDw-675&KVY6y4rfdFBSYnYyHx(V%
z)8!is+RsH*V?Vl<0a-HS$a#p3JV$$|Wxkiyt|y~Im_h#H1|X6r$oJO|o^{PWq|xto
zO+JDEg8#GNGhrSVFV3=(bm1?IcQMm^;pHjoC)-70or-BHs$h%M4~0KUG9>5Vzgv#}
ze1j<%j7YEzXxDB3%c9RPt3XVqM~+R&Gy`^r&bq+rtaBUHv4gO94(G42ONg|Ps?{UM
zUayRtx0gDYngr{edJNR}*3v!&2pA0L<6!_e`rPqjsccWX#uNA;M}DBnyceA9QCy{z
z=y$}naSVF*VrnPq!*f*b9igeKYOeDvvu@Z0vO0M`&XyIl^GH^U+U~B%lv#ME7$r0Z
z(_?su-7v_w8UdBpQ8vtzChStd?x+`-u0W)wA?O6PQURV0Y(*8bx1OYXw!4N7TMDg4
zGKuu?pdettnq}{|db1q-Trt+0vlVRaDZMxCK#Zt@xa6EsB?z)Rma#v-ay=j;83dB!
zh+8U$(rd=ZjrtepA~V<zqR3!WYYRUW;v+|7rXZI6EKls}r$RiVIn^7d%^5(U)ljXW
zOm~s3LhJVjjdM524Z<`qt4(&C$=5VFNtddMi&4G`qveJiK%Q3p(E5LW?bI?4;V!tK
z$2sbKy);$kJ}{k9_;c$Ws*del)pTUU@!;@~$dO=(AuEb|cYV+U*3G;JJKQTvA1P1t
zpOLHcHj0Irj1m87Nm{6yR1M<j9F>eAhKocf&1P2?n|Kk`DQ%kDsu8|a2;|vyAKU1u
z2&41hsme7uyes>uO?B=kNG39CUTqs`8)@1JmLiw`@t}}Da5`$jG((ZV(CpZLca)tV
z>N2yQ3->4P?`Yicyl@*oBZ=?%rcV=>@>ER3d#<89M-A?NS7ukSp)-Va_0&2w@K~mq
z)|tCU#649PgJch5msvwktP5k+?u@U7aeGI9!jn2@MK8kJI47|Ik>Hd0_qnz*p%=&Z
z?Wt3S7Vepw*tqaDLWzYi2~?)BkpzLm@Q?jdos6WP%+dF&d2C@zc_;=CFewxUB;JXV
zu<_lmy{F;FQnW;{F|wzk!qsl>V}$y3ZV=WerS~qLq~p4qBT{p7z)X7CsoUZRf>jvl
zwkk`+%#6<5qzj_m;vF3L+5sWGB74cqsszw|@8dL;4e#K{Tpci>9|8|aG2Y;f<;C%_
zzANa1)+f+XO$rr3kd#H}_5g~atXE$A(E<Gf!tsxCnu&1|rautei6Vo!-)PUGP6)oU
z{T=LROPjky{1huY62ns3=EK^>r%y7S6Mor17WU-F3a3F6rK->sPZldAvhK`~Hx9O=
z1LT-$JdH&%XH@m9be(?-Q8~YA@vK+rS;4mV5P%n_0ob?!n&O30>_Adb0s4N*K|l%w
ziTSj8ou41mB(KRB4Pk>x10M6}?fm!(JpO{^<oPLIXcsodrCeTB$0+u=7yfU`N33g0
z@9>Ry5v)i1MMUPQYPJnfYO>njGK9Q6FGLV<`M?>)t&9n?8aKh$jm?ITmjw`y3%9eU
ziWKhU8@8H_v;kyg#2-4WL;q9V2s`sTpv=ByH(qNl=+r{2H)D_z#03`D0$OFc+@2<(
zm7c<f=n-QN@8OT8B;gix40PbU0+Z)s0To}a7EtmZHY@r)0{L+-Q&V*%>a2KfNg^l=
z)_&Y`fLB_9dDTRFWkkJ=1#g&IX>i(Wx>XBcu#&D9g>tmO&!NhqgE-Q7{B?;(+8&Zp
z*M-dEE<-U%nMrZ?x1ti&+<}8ONU88YVq#(l7`%=6d(eaaXkH@caF1`S5PU$1QIoPL
z&UIle>|UzG7)qkgkg7}yDBk@vXgwU=6GGRKIhBbsbVxNTKDL7ORv-IK0lGWT>~#KS
z8AmowH9@eo?|qk-LSJtZC+A0!m}dc+cI)%MF51yFQb-4G3CphJ+V4fV%nUdD#aG7Q
zYvaqqN89Jv8c8@!ziH4eh$&KiXS!qJe&c`ghc-01^+o7#mcY`ms1Ha(Ao{(MQTRB?
z+Klmw?<_T%m1{FJvIol&LGR6QY$)w!=2;CUn+Td{D6Y+w9G9wg!NA*%6ZxMM85q0O
zne3QDp%D#SGS_c5vZv%Uqv1GKu{nT_oYIY)!Xi(lc&H64=2G}mmhU{8?XYU+C1?yd
z-&ULRes!~SqgX=3G7o}zg=jch${ujdyf}%($|aA@5}ro{k6#nzLEFS~vzzuHX#Qck
zqD+-IpIUdZll?3v<XGY2aD`nH1Gwj8OwQ26w1GK9)Ja&4Ziz)INk(Di)$2k$dnUKH
zZN~O8ZAQVny!y&-z!(%Ym3>>?&)gp!lXj~m#F^)fqYr+Tmf|gl2<H}B5c;i7VRWhE
zSmw9@V{^Rf$npoy5J(ZyTyAeS;>#Hx$a%CP!Cl*)E*;v@I%qHiVu*{-k<ad<C3=e0
zNA~@l*3J-X-Ew`|47dQYXgSOg6Dg{E$%t)_V$$_9#2<kq_LHP4CY%|Pwwy`3*kzv;
zDpCtsZsNQ+?L;Yd(Cy4RGh?yrhul>{fAF~1fd05D^2X%HqboWv1WBaRU5>B+401X-
zmK+U1o;0ey4J?6(ukY@jdYAreOjjNflb7vw9)mVOvJVvmrsl}fhQ^Pj_0h?(F19>c
z6npaGNp(>vYC=USt{d8ief5ReyS?Pu`a2HSyyxRMzeyRd-{B{EjpGLW(onMEMPd6!
zNGb@VvUU@iGZkb<l2WDkn3xxrG?g5jk}7P{oT9ZGe4a8vPyZwH2YO`Pi6ne%I1!c7
z^ajGh7^Y7;p&spipVKEMrR>`LQuOw@#y7!1IA82?)rp>Kj_pf+QXsjT^&^BCeZ^8l
z)(!dsi7}P!cxT=YLfze_Ck*e#W)g;3Q*TR5-9bXdF$FZ!WAg^USKAg*lGMwRmGbvv
zJGPxw&g7h!#%NdK4nTFDQTY8(q`XbMU9r(FYL*9mkxuXvt}qrBo83<)yu-N$*)?v2
zc^i)2VYKI=!9msCy>rQdsF0k4CPMZ;wfJSm_Ljgl2kf6A`Bhuf5MiRjPrRQnc16Q>
zi~^5XJV9qukFjZESq?rIBdB<#BYnTK)HxLvDk<DGMfc}$qc*=sP=aci)dXbj^*|tc
zpsXrO9P$nU^!-4;42|Ua`mO;J6H17`(EM#r@%uYX93EtA?UVz7TY+I14Y8#cNJVK-
zI*eOEqNNo6s2B-&b$(srGA1l$;_R!wwWwYhJN!+hdm|rj7lqFi(z8VknLLO+-I+BC
zyA%I}Va7;Ct*J&0#9t+({q4|A_1(%^TxaUTN9Vu+F*up~GuR09!v2||{&3hdvxvb8
zNR@srvTjwN^MY0Kp#zDW1Mr<Qp`#KBOO2eZbF_nn&FfJ;bwR_T#6g+rO&qq$^)CLh
zb`6gr@_Q~`JB)!9X#?-O7@aoNUv&<4^Lv8PNXlyOzR<amD|7!^tRNQ8y<ahYc3Dn=
zh&SVws|l@Vr^(_me8@IdHz{7PMxoPK6!;paAkY8B=faD;c-495VJJ~uzxgoNJ9i22
zhnb0Sw0K<2XaYfKpt7&<QW}IL@ra`@+~WBO8qtaYV(!dPkc7$@a<m08UA6JvqwWp0
zx)`ibZQz~N@36PS+3|~vMS3)<L<)nM$DmC?ez8obRn>|>Uf@>Qh8h*F?c{8hNq_ti
zr|n48rqOr*&%}>gM*^@sS>2w@9kx)!eyABZGuV<_DckREf%?G8GTV@*&HKO)!A&AM
z`296v;fGAa7hI>n`*QVk=vY(X)=L{<W1hZ=l`$Q6vNUq17c0=mmb@`ZT3(RYFxlju
zOI4Os2{0;yiqv-$PrzJ4>|W+EIl>BinAD5uYqXmxNorC}CxDA*aKIF$i}AY-9#h0@
zY{MF~;W5UE>K#ew%fJCb2g-iYL@TX1wR!PIUv6<ukh+^R=qobj%04uTdEh0*|2nh*
zab7npuC!g{Mr;S9hhUX}%g{EIqvPN0S)mnZBE<Bs%S7b5KpAT+lGRCmu0}!v9Kr&m
z-8a9JCZs1zDlz+58Bt{YiOEOfR_x@zTz_g@Pt?zqznrg_PIStvP{(f;e&m#eJEYU8
z8JH76(|JA<5`191FkLG6fg_zglE>lzIf^7f>Y@IKhAXC6_Lq;NfG1<wHZW<rwE@<E
z?cMxhB((4MlwK<PE^B_DP4kIk1{09ul6iQuB@9cTT!9`)vPN!JtoXa}TDU)93fHQS
zbrYeh#Kl>|OC^Om(=}D0g>E>OvXDT35kl`V)*dr~fP6N>w6vz3W;8p9xa*flbXsyZ
zV8KO_gbmeOjaa~;xj-hl!iOUJMxLHEpE)TqG{hju6XTF6>=;9$6w)}lu{$vCCw*A8
zB<pr|OKtTP%K&|nEPPRS(W#<~=61^3$EZdsxU2cqcnNXukJzRUadBpSkuNFV(;e)-
zh$D9uN@S6wGs3Bf1~LdBrWy3VjmbuCXIIWE^a2Id`MaeoqMbBID81m9XW<L~Dy|}m
z|LTF!`h2c@x?RfAHONOP8PtOE)8=3Rgu$p`x28G46zdml?j?l(^R0@c9DQOk0&wi)
zC=d^FV<bhP`I|ZO_eUU%<Ry*d<qtXT>6b5JW(O=92o(U`v~lci1->=04Uh1AV_cfk
z(>YNi{{3Bb#u9?hr(+enns$LWdF~uQgz+KP83k|AH1qrW?m+4L&0j{97i5*QAL5bc
zaj!#0;%E&*h2OlBh8M382^j~x%_3Nn#m>%df669r|5ZmaY@RS1P&Qybb^l~a_WSa)
z1AdAc=JDfxY2|svlpcl_T-qhsN4P&Xz5~$5?u<sm+}T1V=09tOE*#mGkTorQ?fXd0
z@Pk#KgYu6jZys(7fP+p_-&o?^_KuFi5v43UPa^heE%Edhb`HYQwiyIJFQEQ-AeW>q
z>^)AP6<$tjb!&efBC%1DBj?-_P*D^%BJO#|gD)uylO(QGio^H2J^KrGk<aI1s)+{@
z^6(-}FUWOqDNL9ki+cRosN%qFRM};uC4qaB%zP?ANo?VYgPq(Rg4VN}^bI%k_P|2d
zxc>foMMbAIcoBU!oF8;`7z|tPxL2OoYFIUgy7v}#+VE~JdBNC5QP>4ADUcGR@7~LC
z=Ak~wo`Ew)uwD*4mp~8OpB#PrXU6w(!bYOR4R1ktIleCNR9UOYsX!%(sSqwj{$jX1
zR;Ekgu#Wf-7;+X{Ybu<a!r?nwnkmYADYy`e)3Yf6IYwX(PrBm@%sC|Xb0|Dj+p)<*
zz})l_hJGCCbNd?4?Z7BI?acefLqSAYEP7H?^^l~%SOet0c1T;P_<@gHo%VVNOT^)D
zyxM3PCI<;$R^i0Y9r0idk@D5ECpLRfv{q7Rtvwjcrop58cU;!Qs@2yQHQs&glc4V)
zO<%z!H2GSSgAu^l{o#3xE_5Ev`fkD2sGb^CP$hpn(NmF#=qEtG7`b#lR(wGQgI9)$
z3Z{INbc;341%BYgXt%%~?hzaCUFU_hVKKwqy-D;<v(nfwbIDU7%bGx#%+trG?bOl{
zHj2mHd%2U&tbwn*)k^{|eW9U~8&eWQ0wklv@wbpVJWZd#>eF?Cm-m8`YHYmLgN%E=
zX^n<^@33k5{i3%(BCkLsGkO18IGgAyX_Ol&ley${9(|ldWP{baG1x8+*vAQM6@6lz
zM|%B<ka%>voeZEiI~Zb4ZUY)9xM1?Fb=9;=O#?u~1|0Hgl7l&h?~Fo5sz<Dv#IE=B
z0()pleVRkY4O<pg<~k~EU3tIa<kvHCZ@aFpR1CL##cm&;B#8W6+(ALUaVA`pU;B4(
z<^bae89#6}@a5@lmZ_W`H)g9QkRByO2Ka3=2_|_KM5{P@VCA*;L)#6b7z#btlZn19
zEdcox<UbOJ`2v(D>2N(o8vM~I15eqP+U$h%j*vJ_2Qd)4MNAfFR8B8Q)ANipX~ic`
zt-r!LMDW9KH{_AE5EKkYGO?GsPLOOFv6%;%iFeo=(HlP!4sumTbOUMOrDNheg_SV{
z=W>~u%3ZtEMvCysQIs)gLTTPHyq9c=lq}X_F`~6qG4dR?)sHT!6v)Kv4PLvDHQ5=N
z=}%`9*@@3`@T<i_*2x-{W2{g%cKq|JxX|pm2Rmolub=$nDWIF~{u(}kJdi^>!R_Y2
zvE^tv0q5xNOA8b?JIn2{Nu6s?1}rj$=I`&{+eQ`fotZ{26l!Z)L5;vi9xAYN+Ik+d
zc^?;&+`-KdqGlbLYtFoE%=qTfKc!nZOI0JBV;TuZPJ`BZWgc;r&kiBK57-gtL$LoP
zE>VKxF#~S|psT_BxV^1x`ukfG=USxM7FF<@Ah|L*MdTEv_MuB0pT^53S#Es$XT#37
z)9?x9*>S-d;idAU-2N2stA5o1^h39izR0QtVQXR!!pv%CKD&cblI}o+JSb-L7wkP+
zor3*}QtO}*iW)5x7qT!8{%pP@<cHt#-DiU#$UZaNipNH07IhI))mWFCs!PXGU0`G+
z?G_xr?v=$UHxmO{R%ee+%H@cCmtpmC_G0Xdb5Rwk1T-||PH@AUNr!zFlXd7PRX91R
zblzPebnsa}mrLTUa=HP+3#x21xT{AMU0KOg`^lX88gE(}-X6bz7Cry>`yi{8If+>H
zZUqM)8D30*97N%`YMamR$l~5gPfCy>QOgcS;>H&}u%UDPrg0`w|GwN&y0*W*kIIbB
z1EjsaAP>|Sl%NGRU*xUoRtalWxj*H|>DQN`B>Jx&#<n9>9euMy#wS>y!m*sZ6yGB?
z8dM*s{8jA)jR-`~Aq}mpwkR}L1G&Sk?A(!7yj(=Q9u8p&v%YuL{iB#Ma`{fIUw5TV
zXoXE!zaC244m4N{ZHK+?itJBcNwDp@EfMJMuCZc**A1}5wVTcdS)R?38kTN`dS*35
z+Yj-m8Sr~M?ZUL_M%*EnQE33=^&9QNRTsKa0}>Jv&?G6F?gmzUl})hS*?aT=b-iyw
zAPbG(Fp;qugoMaIJHgSg@-K6IkO1IV-NEtB!m-T7Y7oA&Kn=~0aw00w83}6+ExGq&
z)CDKx_(O&7=9k*0EJvdjvzr@xJSVa1YeY|0-`n>ee}XQ@S`D8Pi0jNgOeX)3J#;F?
zfjGqWZwO%RcwvCt4$X$rIaWo!ZOG~((xV|AQNtSt;&89`Uc4}18Y4mVxzl=5DH8{|
zcaJMs;`tMPl;+snOpR!5BfE*j<xB`~>|9hVQVcTKzhv)!9L5%m&D%!SzCieS2Z!yd
z@o$`dg#7p)_&~@f4*g2Wsr8!MMw3v#K)}+OdW6^nNc@Yd4`Y`w*#vaLX-d7$wvqoT
zl)Yw~_FortN`6=Q7t{W~s)vD%|FQ%Hkv?1?1ivbmm;9T2CG=?jR~cr?`fsFq%>_2T
z((tdf{#8-@k3|C6VeAa<xYGa6{GXS(j*(Xh=znYev+N&J`mZ2D%zxazYW*`~PW?|U
z_5YfCtsn4@Dx0YCe@NJVuh6qt-mAss{^I}B2JO^8<7<&aPc}Yr6CKq5^ti2?|F091
zXVy=zI+mHQ7#4KvzwS;s3I6NSi|Bt|w1=oU{^?xnSq%aQ(9p$bEWi8C33z=JWmRP=
Iq)dYUA22uji~s-t
index 6ca5c4ccc92cce3f14b9cd773e17555aeb0d2d16..980280604a69ebe6e9dfe1db3169ecbf2ae990ef
GIT binary patch
literal 594
zc$@)J0<HatP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz^hrcPRCwBylTU8bKorKmnQ>~@NmG}I
zkWg5l2rN{@f)xucfP|n&Kr9jB9BeBgBsNG~0nWe~P%9Ql1+@qoY&T95d;aidoVaa3
zQF*e*&u{#G{^lE-8DnrZp1(WT$xifRo3~f_$2ZUVFR>)p9Psq@;kH!f)xnP>Znqk)
zmW@hW?L~WxGo`cvV}P&&u=D;!@2yR|Im!3MHkUfy|31d=bmD5!dVm|(qg!4>V<Lfu
z0Jve$5D#g30T6ftUjq;BU&An&QpKR#3Gwq+jxS$_=tMq}tU&j23wLgJ`}4jUu<CmQ
z4u)2<fz95U18~Nnq=qaRK}HAz50|14&CnbC1sGfr{RMj*WOHK;_u`uv(;CJFEu}Q%
zP2K^T=K&u+eTKEuda7wqv>Z*w(J`x2PPLLIwDY}t9-vj#j2XmrX}e97I*@Tdd(ZT#
z&Kgiob=Ab+-ejDLN=bFC0FJ9qza4Ie{@o{AS_LR38Yj6zeq16=OC(9*&W!T>Sh~3h
zol*wah#zg$3dTqKVLqb9(Uc}Dxic~U3{DEB>9?>3NX5nQXbM%7wg1b)C}~?o4Il$O
zN%D1RaFMVI$YAe`iGmp&k~#W907lOmBUt@2iIw%<N;{5?QDU}%OZyoUs>pVCRgoUD
g#ozgV<BtFX0LX_1#F{Kvwg3PC07*qoM6N<$f`#4(EC2ui
index 69e07fb93334f76d6d08d9826f8a1703f6b15815..7935222913ff5f862498c721816294c649ccb4e5
GIT binary patch
literal 586
zc$@)B0=4~#P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0000PbVXQnQ*UN;
zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz>`6pHRCwByQ_W7>KoI_B?b@kLo1g%4
z4m5{IH5F2C@CsF>s^!pU;Mfay4xD=7z_HKKm*^uvrBWe^C?Z92)I@5$Kb=`)%McZ*
zBae4HyZg;IpLfYQhqfIaULH-S?ybaWN}u=k1|RT%Q4Mf#aJ6HM{&;<To~LQzbJOVz
zYirNG5-DS?g;E3}lBuKp{p^zjVT}~W(T>(Czqq(TQGEBgZnuZ^_2Kg{w3yEcG7<%_
zHh#_1_W|Nj6h+wH-eQ2l=lcCV#^W*0&c317dxFX2H&#|MY;3$3)cYEMPUrDR*exxk
z$g)+RQwq>p<Mfmm<cimH7-$(u5{(uBxW7S?EQ&N7uCl+nlbg-ZUjR5h{=)q!7-PL_
zEpEJ5--dP2>?O)lV|VxcU4Sr*{OFwZu9QY4xMk76An>Dek|ZoJFuX!0tBQuJ7+*<T
za@BX)#7*n+8oYeBsZ{5dzVY;{4eeMrEdh_PoWI#@7|ed1Cvu)d@p_|FYsYnEK5X1t
zh(E=Tqyf-I1=T`(OWU+ux5TUjB@z~4&;VG2u%cT2vuCL+o8?H0u>6EA5d*#x5sMi6
zlylm<NaUPU^A&w%BKboJ=L2dkQxJ8t=xLtwVxi^mu<?Bg%zSckV&=t9x__Pj*ZvAH
Y06vONf5+lFTmS$707*qoM6N<$f(kSj0ssI2
--- a/browser/themes/winstripe/browser/searchbar.css
+++ b/browser/themes/winstripe/browser/searchbar.css
@@ -19,32 +19,30 @@
   -moz-margin-start: 3px;
 }
 
 .searchbar-engine-button {
   -moz-appearance: none;
   min-width: 0;
   margin: 0;
   -moz-margin-end: 3px;
-  padding: 2px 0;
-  border: 0;
+  padding: 0;
+  height: 1.23em;
+  min-height: 20px;
   -moz-box-align: center;
-  background-color: -moz-dialog;
-  -moz-appearance: toolbox;
-  outline: 1px solid ThreeDShadow;
-  -moz-margin-start: -1px;
-  -moz-outline-radius-topleft: 2px;
-  -moz-outline-radius-bottomleft: 2px;
+  background: ButtonFace url(chrome://browser/skin/tabbrowser/tab-active-bkgnd.png) repeat-x;
+  border: 0 solid;
+  border-right-width: 1px;
+  -moz-border-right-colors: ButtonShadow;
 }
 
 .searchbar-engine-button[chromedir="rtl"] {
-  -moz-outline-radius-topleft: 0;
-  -moz-outline-radius-bottomleft: 0;
-  -moz-outline-radius-topright: 2px;
-  -moz-outline-radius-bottomright: 2px;
+  border-right-width: 0;
+  border-left-width: 1px;
+  -moz-border-left-colors: ButtonShadow;
 }
 
 .searchbar-engine-button:hover {
   outline-color: ThreeDDarkShadow;
 }
 
 .searchbar-engine-button > .button-box {
   -moz-appearance: none;
@@ -52,17 +50,17 @@
   -moz-padding-end: 3px;
   border: 0;
 }
 
 .searchbar-engine-button[addengines="true"] > .button-box {
   background: transparent url(chrome://browser/skin/Search-addengines.png) no-repeat right center;
 }
 
-.searchbar-engine-button[addengines="true"][chromedir="rtl"] {
+.searchbar-engine-button[addengines="true"][chromedir="rtl"] > .button-box {
   background-position: left center;
 }
 
 .searchbar-dropmarker-image {
   list-style-image: url("chrome://global/skin/arrow/arrow-dn.gif");
   -moz-margin-start: 3px;
 }
 
--- a/build/pgo/automation.py.in
+++ b/build/pgo/automation.py.in
@@ -183,16 +183,18 @@ def initializeProfile(profileDir):
   part = """\
 user_pref("browser.dom.window.dump.enabled", true);
 user_pref("dom.disable_open_during_load", false);
 user_pref("dom.max_script_run_time", 0); // no slow script dialogs
 user_pref("signed.applets.codebase_principal_support", true);
 user_pref("security.warn_submit_insecure", false);
 user_pref("browser.shell.checkDefaultBrowser", false);
 user_pref("browser.warnOnQuit", false);
+user_pref("accessibility.typeaheadfind.autostart", false);
+user_pref("javascript.options.showInConsole", true);
 """
   prefs.append(part)
 
   # Grant God-power to all the servers on which tests can run.
   for (i, server) in itertools.izip(itertools.count(1), servers):
     part = """
 user_pref("capability.principal.codebase.p%(i)d.granted",
           "UniversalXPConnect UniversalBrowserRead UniversalBrowserWrite \
--- a/build/wince/shunt/include/mozce_defs.h
+++ b/build/wince/shunt/include/mozce_defs.h
@@ -786,9 +786,20 @@ typedef struct
                                     //        to the background of the images
 } SHDRAGIMAGE, *LPSHDRAGIMAGE;
 
 #ifndef max
 #define max(a,b) (((a) > (b)) ? (a) : (b))
 #endif
 
 #define SHGetSpecialFolderPathW SHGetSpecialFolderPath
+
+// On Windows CE, there are some functions that are wide, but there
+// isn't a function named "functionW".
+
+#define SHGetPathFromIDListW SHGetPathFromIDList 
+#define GetUserNameW         GetUserName
+#define RemovePropW          RemoveProp
+#define GetPropW             GetProp
+#define SetPropW             SetProp
+#define FONTENUMPROCW        FONTENUMPROC
+#define GetLongPathNameW     GetLongPathName
 #endif // _MOZCE_DEFS
--- a/build/wince/shunt/include/mozce_shunt.h
+++ b/build/wince/shunt/include/mozce_shunt.h
@@ -120,49 +120,20 @@
 #define CreateDialogIndirectParamA CreateDialogIndirectParamW
 #define SystemParametersInfoA      SystemParametersInfoW
 #define DispatchMessageA           DispatchMessageW
 #define CallWindowProcA            CallWindowProcW
 #define GetWindowLongA             GetWindowLongW
 #define SetWindowLongA             SetWindowLongW
 #define GetMonitorInfoW           GetMonitorInfo
 
-#if 0
-#define GetProp                   GetPropA
-#define SetProp                   SetPropA
-#define RemoveProp                RemovePropA
-
-
-#define SetWorldTransform         SetWorldTransform
-#define GetWorldTransform         GetWorldTransform
-#define SetGraphicsMode           SetGraphicsMode
-
-#define ScriptFreeCache           ScriptFreeCache
-
-#undef GetProcAddress
+#undef  GetProcAddress
 #define GetProcAddress            GetProcAddressA
 
 
-
-// OutlineTextMetrics are tricky. It is a pain to convert W->A text metrics,
-// and we have no A functions. Because we do not define UNICODE, headers specify A function versions
-// We can override the function defines here, but can't override the typedefs (typedef TEXTMETRICW TEXTMETRIC)
-// A define is a hack around this, but it might fail elsewhere.
-// dougt code review
-#undef GetOutlineTextMetrics
-#define GetOutlineTextMetrics     GetOutlineTextMetricsW
-#undef GetTextMetrics
-#define GetTextMetrics            GetTextMetricsW
-#define OUTLINETEXTMETRIC         OUTLINETEXTMETRICW
-#define TEXTMETRIC                TEXTMETRICW
-#undef wsprintf
-#define wsprintf                wsprintfW
-
-#endif  //if 0
-
 //still need these
 #define GetCurrentDirectory       GetCurrentDirectoryW
 #define OpenSemaphore             OpenSemaphoreW
 #define SetCurrentDirectoryW      SetCurrentDirectoryW
 
 #endif // MOZCE_SHUNT_EXPORTS
 
 //////////////////////////////////////////////////////////
@@ -206,16 +177,19 @@ extern "C" {
   // From signal.cpp
   MOZCE_SHUNT_API int raise(int inSignal);
   MOZCE_SHUNT_API _sigsig signal(int inSignal, _sigsig inFunc);
 
   // From stat.cpp
   MOZCE_SHUNT_API int stat(const char *inPath, struct stat * outStat);
 
   // From stdio.cpp
+
+  MOZCE_SHUNT_API int _waccess(const wchar_t *path, int mode);
+
   MOZCE_SHUNT_API int access(const char *path, int mode);
   MOZCE_SHUNT_API void rewind(FILE* inStream);
   MOZCE_SHUNT_API FILE* fdopen(int inFD, const char* inMode);
   MOZCE_SHUNT_API void perror(const char* inString);
   MOZCE_SHUNT_API int remove(const char* inPath);
 
   MOZCE_SHUNT_API char* getcwd(char* buff, size_t size);
 
@@ -302,16 +276,18 @@ extern "C" {
   MOZCE_SHUNT_API DWORD GetShortPathName(LPCTSTR inLongPath, LPTSTR outShortPath, DWORD inBufferSize);
   MOZCE_SHUNT_API DWORD GetShortPathNameW(LPCWSTR aLPATH, LPWSTR aSPATH, DWORD aLen);
 
   MOZCE_SHUNT_API DWORD GetEnvironmentVariable(LPCSTR lpName, LPCSTR lpBuffer, DWORD nSize);
   MOZCE_SHUNT_API DWORD GetEnvironmentVariableW(LPCWSTR lpName, LPWSTR lpBuffer, DWORD nSize);
   MOZCE_SHUNT_API void GetSystemTimeAsFileTime(LPFILETIME lpSystemTimeAsFileTime);
 
 
+  MOZCE_SHUNT_API DWORD GetLongPathNameW(LPCWSTR lpszShortPath, LPCWSTR lpszLongPath, DWORD cchBuffer);
+
   #define GetFullPathNameW GetFullPathName
   MOZCE_SHUNT_API DWORD GetFullPathName(const char* lpFileName, DWORD nBufferLength, const char* lpBuffer, const char** lpFilePart);
 
 //dd  MOZCE_SHUNT_API UINT GetACP(void);
 
   MOZCE_SHUNT_API BOOL mozce_PeekMessage(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg);
   MOZCE_SHUNT_API BOOL mozce_GetMessage(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax);
   MOZCE_SHUNT_API LONG GetMessageTime(void);
--- a/build/wince/shunt/stdio.cpp
+++ b/build/wince/shunt/stdio.cpp
@@ -88,22 +88,30 @@ int
         if(_fdtab[i].fd == -1)
             return i;
     }
     
     return -1;
 }
 
 
+MOZCE_SHUNT_API int _waccess(const wchar_t *path, int mode)
+{
+#ifdef API_LOGGING
+    mozce_printf("-- _waccess called\n");
+#endif
+    
+    return 0;
+}
 
 
 MOZCE_SHUNT_API int access(const char *path, int mode)
 {
 #ifdef API_LOGGING
-        mozce_printf("-- access called\n");
+    mozce_printf("-- access called\n");
 #endif
     
     return 0;
 }
 
 MOZCE_SHUNT_API void rewind(FILE* inStream)
 {
 #ifdef API_LOGGING
--- a/build/wince/shunt/win32.cpp
+++ b/build/wince/shunt/win32.cpp
@@ -547,24 +547,24 @@ MOZCE_SHUNT_API void GetSystemTimeAsFile
     mozce_printf("GetSystemTimeAsFileTime called\n");
 #endif
 
     SYSTEMTIME st;
     GetSystemTime(&st);
     SystemTimeToFileTime(&st,lpSystemTimeAsFileTime);
 }
 
-#ifndef MIN
-#define MIN(a,b) (((a)<(b)) ? (a) : (b))
+MOZCE_SHUNT_API DWORD GetLongPathNameW(LPCWSTR lpszShortPath, LPCWSTR lpszLongPath, DWORD cchBuffer)
+{
+#ifdef API_LOGGING
+    mozce_printf("GetLongPathNameW called\n");
 #endif
 
-
-#ifndef MAX
-#define MAX(a,b) (((a)>(b)) ? (a) : (b))
-#endif
+    return 0;
+}
 
 MOZCE_SHUNT_API DWORD GetFullPathName(const char* lpFileName,
                                       DWORD nBufferLength,
                                       const char* lpBuffer,
                                       const char** lpFilePart)
 {
 #ifdef API_LOGGING
     mozce_printf("GetFullPathName called\n");
--- a/config/config.mk
+++ b/config/config.mk
@@ -242,16 +242,17 @@ OS_CXXFLAGS += -FR
 endif
 else # ! MOZ_DEBUG
 
 # MOZ_DEBUG_SYMBOLS generates debug symbols in separate PDB files.
 # Used for generating an optimized build with debugging symbols.
 # Used in the Windows nightlies to generate symbols for crash reporting.
 ifdef MOZ_DEBUG_SYMBOLS
 OS_CXXFLAGS += -Zi -UDEBUG -DNDEBUG
+OS_CFLAGS += -Zi -UDEBUG -DNDEBUG
 OS_LDFLAGS += -DEBUG -OPT:REF -OPT:nowin98
 endif
 
 ifdef MOZ_QUANTIFY
 # -FIXED:NO is needed for Quantify to work, but it increases the size
 # of executables, so only use it if building for Quantify.
 WIN32_EXE_LDFLAGS += -FIXED:NO
 
--- a/configure.in
+++ b/configure.in
@@ -426,43 +426,54 @@ case "$target" in
 
         AC_LANG_CPLUSPLUS
         AC_TRY_COMPILE([#include <new.h>],
             [ unsigned *test = new unsigned(42); ],,
             AC_MSG_ERROR([\$(CXX) test failed.  You must have MS VC++ in your path to build.]) )
         AC_LANG_RESTORE
         
         changequote(,)
-        _MSVC_VER_FILTER='s|.* \([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*|\1|p'
+        _MSVC_VER_FILTER='s|.* ([0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?).*|\1|p'
         changequote([,])
         
         # Determine compiler version
-        CC_VERSION=`"${CC}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
+        CC_VERSION=`"${CC}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
         _CC_MAJOR_VERSION=`echo ${CC_VERSION} | $AWK -F\. '{ print $1 }'`
         _CC_MINOR_VERSION=`echo ${CC_VERSION} | $AWK -F\. '{ print $2 }'`
+        _CC_RELEASE=`echo ${CC_VERSION} | $AWK -F\. '{ print $3 }'`
+        _CC_BUILD=`echo ${CC_VERSION} | $AWK -F\. '{ print $4 }'`
         _MSC_VER=${_CC_MAJOR_VERSION}${_CC_MINOR_VERSION}
 
-        CXX_VERSION=`"${CXX}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
+        CXX_VERSION=`"${CXX}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
         _CXX_MAJOR_VERSION=`echo ${CXX_VERSION} | $AWK -F\. '{ print $1 }'`
 
         if test "$_CC_MAJOR_VERSION" != "$_CXX_MAJOR_VERSION"; then
             AC_MSG_ERROR([The major versions of \$CC and \$CXX do not match.])
         fi
         if test "$_CC_MAJOR_VERSION" = "12"; then
             _CC_SUITE=6
         elif test "$_CC_MAJOR_VERSION" = "13"; then
             _CC_SUITE=7
         elif test "$_CC_MAJOR_VERSION" = "14"; then
             _CC_SUITE=8
             CXXFLAGS="$CXXFLAGS -Zc:wchar_t-"
+            dnl -DYNAMICBASE is only supported on VC8SP1 or newer,
+            dnl so be very specific here!
+            dnl VC8 is 14.00.50727.42, VC8SP1 is 14.00.50727.762
+            if test $_CC_RELEASE -gt 50727; then
+               _USE_DYNAMICBASE=1
+            elif test $_CC_BUILD -ge 762; then
+               _USE_DYNAMICBASE=1
+            fi
             AC_DEFINE(_CRT_SECURE_NO_DEPRECATE)
             AC_DEFINE(_CRT_NONSTDC_NO_DEPRECATE)
         elif test "$_CC_MAJOR_VERSION" = "15"; then
             _CC_SUITE=9
             CXXFLAGS="$CXXFLAGS -Zc:wchar_t-"
+            _USE_DYNAMICBASE=1
             AC_DEFINE(_CRT_SECURE_NO_WARNINGS)
             AC_DEFINE(_CRT_NONSTDC_NO_WARNINGS)
         else
             AC_MSG_ERROR([This version of the MSVC compiler, $CC_VERSION , is unsupported.])
         fi
 
         _MOZ_RTTI_FLAGS_ON='-GR'
         _MOZ_RTTI_FLAGS_OFF='-GR-'
@@ -489,25 +500,25 @@ case "$target" in
                         MSMANIFEST_TOOL=1
                         unset MSMT_TOOL
                 else
                         AC_MSG_ERROR([Microsoft (R) Manifest Tool must be in your \$PATH.])
                 fi
         fi
 
         # Check linker version
-        _LD_FULL_VERSION=`"${LD}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
+        _LD_FULL_VERSION=`"${LD}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
         _LD_MAJOR_VERSION=`echo ${_LD_FULL_VERSION} | $AWK -F\. '{ print $1 }'`
         if test "$_LD_MAJOR_VERSION" != "$_CC_SUITE"; then
             AC_MSG_ERROR([The linker major version, $_LD_FULL_VERSION,  does not match the compiler suite version, $_CC_SUITE.])
         fi
         INCREMENTAL_LINKER=1
 
         # Check midl version
-        _MIDL_FULL_VERSION=`"${MIDL}" -v 2>&1 | sed -ne "$_MSVC_VER_FILTER"`
+        _MIDL_FULL_VERSION=`"${MIDL}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"`
         _MIDL_MAJOR_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $1 }'`
         _MIDL_MINOR_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $2 }'`
         _MIDL_REV_VERSION=`echo ${_MIDL_FULL_VERSION} | $AWK -F\. '{ print $3 }'`
          # Add flags if necessary
          AC_MSG_CHECKING([for midl flags])
          if test \( "$_MIDL_MAJOR_VERSION" -gt "6" \) -o \( "$_MIDL_MAJOR_VERSION" = "6" -a "$_MIDL_MINOR_VERSION" -gt "0" \) -o \( "$_MIDL_MAJOR_VERSION" = "6" -a "$_MIDL_MINOR_VERSION" = "00" -a "$_MIDL_REV_VERSION" -gt "359" \); then
              # Starting with MIDL version 6.0.359, the MIDL compiler
              # generates /Oicf /robust stubs by default, which is not
@@ -1612,16 +1623,17 @@ case "$target" in
     CFLAGS="$CFLAGS -fpascal-strings -fno-common"
     CXXFLAGS="$CXXFLAGS -fpascal-strings -fno-common"
     DLL_SUFFIX=".dylib"
     DSO_LDOPTS=''
     STRIP="$STRIP -x -S"
     _PLATFORM_DEFAULT_TOOLKIT='cairo-cocoa'
     MOZ_ENABLE_POSTSCRIPT=
     TARGET_NSPR_MDCPUCFG='\"md/_darwin.cfg\"'
+    LDFLAGS="$LDFLAGS -framework Cocoa"
     # set MACOSX to generate lib/mac/MoreFiles/Makefile
     MACOSX=1
 
     dnl check for the presence of the -dead_strip linker flag
     AC_MSG_CHECKING([for -dead_strip option to ld])
     _SAVE_LDFLAGS=$LDFLAGS
     LDFLAGS="$LDFLAGS -Wl,-dead_strip"
     AC_TRY_LINK(,[return 0;],_HAVE_DEAD_STRIP=1,_HAVE_DEAD_STRIP=)
@@ -1902,22 +1914,25 @@ case "$target" in
         MOZ_FIX_LINK_PATHS=
         DYNAMIC_XPCOM_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xpcom_core.lib'
         XPCOM_FROZEN_LDOPTS='$(LIBXUL_DIST)/lib/xpcom.lib'
         LIBXUL_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xul.lib'
         MOZ_COMPONENT_NSPR_LIBS='$(NSPR_LIBS)'
         MOZ_XPCOM_OBSOLETE_LIBS='$(LIBXUL_DIST)/lib/xpcom_compat.lib'
         if test $_MSC_VER -ge 1400; then
             LDFLAGS="$LDFLAGS -NXCOMPAT -SAFESEH"
-            # For profile-guided optimization
+            dnl For profile-guided optimization
             PROFILE_GEN_CFLAGS="-GL"
             PROFILE_GEN_LDFLAGS="-LTCG:PGINSTRUMENT"
             PROFILE_USE_CFLAGS="-GL"
-            #XXX: should be -LTCG:PGOPTIMIZE, but that fails on libxul
+            dnl XXX: should be -LTCG:PGOPTIMIZE, but that fails on libxul
             PROFILE_USE_LDFLAGS="-LTCG:PGUPDATE"
+            if test -n "$_USE_DYNAMICBASE"; then
+               LDFLAGS="$LDFLAGS -DYNAMICBASE"
+            fi
         fi
     fi
     MOZ_JPEG_LIBS='$(call EXPAND_LIBNAME_PATH,jpeg$(MOZ_BITS)$(VERSION_NUMBER),$(DEPTH)/jpeg)'
     MOZ_PNG_LIBS='$(call EXPAND_LIBNAME_PATH,png,$(DEPTH)/modules/libimg/png)'
     AC_DEFINE(HAVE_SNPRINTF)
     AC_DEFINE(_WINDOWS)
     AC_DEFINE(_WIN32)
     AC_DEFINE(WIN32)
--- a/content/base/public/nsContentPolicyUtils.h
+++ b/content/base/public/nsContentPolicyUtils.h
@@ -134,16 +134,17 @@ NS_CP_ContentTypeName(PRUint32 contentTy
     CASE_RETURN( TYPE_OBJECT            );
     CASE_RETURN( TYPE_DOCUMENT          );
     CASE_RETURN( TYPE_SUBDOCUMENT       );
     CASE_RETURN( TYPE_REFRESH           );
     CASE_RETURN( TYPE_XBL               );
     CASE_RETURN( TYPE_PING              );
     CASE_RETURN( TYPE_XMLHTTPREQUEST    );
     CASE_RETURN( TYPE_OBJECT_SUBREQUEST );
+    CASE_RETURN( TYPE_DTD               );
    default:
     return "<Unknown Type>";
   }
 }
 
 #endif // defined(PR_LOGGING)
 
 #undef CASE_RETURN
--- a/content/base/public/nsIContentPolicy.idl
+++ b/content/base/public/nsIContentPolicy.idl
@@ -46,17 +46,17 @@ interface nsIDOMNode;
  * Interface for content policy mechanism.  Implementations of this
  * interface can be used to control loading of various types of out-of-line
  * content, or processing of certain types of in-line content.
  *
  * WARNING: do not block the caller from shouldLoad or shouldProcess (e.g.,
  * by launching a dialog to prompt the user for something).
  */
 
-[scriptable,uuid(a32a984a-7a6b-ea92-75fe-1166be801a0e)]
+[scriptable,uuid(58cf9dca-40b3-6211-a508-7351f437a53e)]
 interface nsIContentPolicy : nsISupports
 {
   const unsigned long TYPE_OTHER       = 1;
 
   /**
    * Indicates an executable script (such as JavaScript).
    */
   const unsigned long TYPE_SCRIPT      = 2;
@@ -116,16 +116,21 @@ interface nsIContentPolicy : nsISupports
    */
   const unsigned long TYPE_XMLHTTPREQUEST = 11;
 
   /**
    * Indicates a request by a plugin.
    */
   const unsigned long TYPE_OBJECT_SUBREQUEST = 12;
 
+  /**
+   * Indicates a DTD loaded by an XML document.
+   */
+  const unsigned long TYPE_DTD = 13;
+
   //////////////////////////////////////////////////////////////////////
 
   /**
    * Returned from shouldLoad or shouldProcess if the load or process request
    * is rejected based on details of the request.
    */
   const short REJECT_REQUEST = -1;
 
--- a/content/base/src/nsCommentNode.cpp
+++ b/content/base/src/nsCommentNode.cpp
@@ -173,17 +173,17 @@ nsCommentNode::CloneDataNode(nsINodeInfo
 
 #ifdef DEBUG
 void
 nsCommentNode::List(FILE* out, PRInt32 aIndent) const
 {
   PRInt32 indx;
   for (indx = aIndent; --indx >= 0; ) fputs("  ", out);
 
-  fprintf(out, "Comment@%p refcount=%d<!--", this, mRefCnt.get());
+  fprintf(out, "Comment@%p refcount=%d<!--", (void*)this, mRefCnt.get());
 
   nsAutoString tmp;
   ToCString(tmp, 0, mText.GetLength());
   fputs(NS_LossyConvertUTF16toASCII(tmp).get(), out);
 
   fputs("-->\n", out);
 }
 #endif
--- a/content/base/src/nsContentSink.cpp
+++ b/content/base/src/nsContentSink.cpp
@@ -149,20 +149,35 @@ nsScriptLoaderObserverProxy::ScriptEvalu
 
 NS_IMPL_CYCLE_COLLECTING_ADDREF(nsContentSink)
 NS_IMPL_CYCLE_COLLECTING_RELEASE(nsContentSink)
 
 NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsContentSink)
   NS_INTERFACE_MAP_ENTRY(nsICSSLoaderObserver)
   NS_INTERFACE_MAP_ENTRY(nsISupportsWeakReference)
   NS_INTERFACE_MAP_ENTRY(nsIScriptLoaderObserver)
+  NS_INTERFACE_MAP_ENTRY(nsIDocumentObserver)
+  NS_INTERFACE_MAP_ENTRY(nsIMutationObserver)
+  NS_INTERFACE_MAP_ENTRY(nsITimerCallback)
   NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIScriptLoaderObserver)
 NS_INTERFACE_MAP_END
 
-NS_IMPL_CYCLE_COLLECTION_2(nsContentSink, mDocument, mParser)
+NS_IMPL_CYCLE_COLLECTION_CLASS(nsContentSink)
+NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsContentSink)
+  if (tmp->mDocument) {
+    tmp->mDocument->RemoveObserver(tmp);
+  }
+NS_IMPL_CYCLE_COLLECTION_UNLINK_NSCOMPTR(mDocument)
+NS_IMPL_CYCLE_COLLECTION_UNLINK_NSCOMPTR(mParser)
+NS_IMPL_CYCLE_COLLECTION_UNLINK_END
+NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsContentSink)
+NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMPTR(mDocument)
+NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMPTR(mParser)
+NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
+
 
 nsContentSink::nsContentSink()
 {
   // We have a zeroing operator new
   NS_ASSERTION(mLayoutStarted == PR_FALSE, "What?");
   NS_ASSERTION(mDynamicLowerValue == PR_FALSE, "What?");
   NS_ASSERTION(mParsing == PR_FALSE, "What?");
   NS_ASSERTION(mLastSampledUserEventTime == 0, "What?");
@@ -176,16 +191,21 @@ nsContentSink::nsContentSink()
   if (!gContentSinkLogModuleInfo) {
     gContentSinkLogModuleInfo = PR_NewLogModule("nscontentsink");
   }
 #endif
 }
 
 nsContentSink::~nsContentSink()
 {
+  if (mDocument) {
+    // Remove ourselves just to be safe, though we really should have
+    // been removed in DidBuildModel if everything worked right.
+    mDocument->RemoveObserver(this);
+  }
 }
 
 nsresult
 nsContentSink::Init(nsIDocument* aDoc,
                     nsIURI* aURI,
                     nsISupports* aContainer,
                     nsIChannel* aChannel)
 {
--- a/content/base/src/nsDataDocumentContentPolicy.cpp
+++ b/content/base/src/nsDataDocumentContentPolicy.cpp
@@ -67,17 +67,17 @@ nsDataDocumentContentPolicy::ShouldLoad(
   } else {
     nsCOMPtr<nsIDOMWindow> window = do_QueryInterface(aRequestingContext);
     if (window) {
       nsCOMPtr<nsIDOMDocument> domDoc;
       window->GetDocument(getter_AddRefs(domDoc));
       doc = do_QueryInterface(domDoc);
     }
   }
-  if (doc && doc->IsLoadedAsData()) {
+  if (aContentType != nsIContentPolicy::TYPE_DTD && doc && doc->IsLoadedAsData()) {
     *aDecision = nsIContentPolicy::REJECT_TYPE;
   }
 
   return NS_OK;
 }
 
 NS_IMETHODIMP
 nsDataDocumentContentPolicy::ShouldProcess(PRUint32 aContentType,
--- a/content/base/src/nsGenericElement.cpp
+++ b/content/base/src/nsGenericElement.cpp
@@ -3743,21 +3743,24 @@ nsGenericElement::SetAttrAndNotify(PRInt
                                                    aNamespaceID,
                                                    getter_AddRefs(ni));
     NS_ENSURE_SUCCESS(rv, rv);
 
     rv = mAttrsAndChildren.SetAndTakeAttr(ni, aParsedValue);
   }
   NS_ENSURE_SUCCESS(rv, rv);
 
-  if (document) {
-    nsRefPtr<nsXBLBinding> binding =
-      document->BindingManager()->GetBinding(this);
-    if (binding) {
-      binding->AttributeChanged(aName, aNamespaceID, PR_FALSE, aNotify);
+  if (document || HasFlag(NODE_FORCE_XBL_BINDINGS)) {
+    nsIDocument* ownerDoc = GetOwnerDoc();
+    if (ownerDoc) {
+      nsRefPtr<nsXBLBinding> binding =
+        ownerDoc->BindingManager()->GetBinding(this);
+      if (binding) {
+        binding->AttributeChanged(aName, aNamespaceID, PR_FALSE, aNotify);
+      }
     }
   }
 
   if (aNotify) {
     stateMask = stateMask ^ PRUint32(IntrinsicState());
     if (stateMask && document) {
       MOZ_AUTO_DOC_UPDATE(document, UPDATE_CONTENT_STATE, aNotify);
       document->ContentStatesChanged(this, nsnull, stateMask);
@@ -3993,21 +3996,25 @@ nsGenericElement::UnsetAttr(PRInt32 aNam
   if (slots && slots->mAttributeMap) {
     slots->mAttributeMap->DropAttribute(aNameSpaceID, aName);
   }
 
   nsAttrValue oldValue;
   rv = mAttrsAndChildren.RemoveAttrAt(index, oldValue);
   NS_ENSURE_SUCCESS(rv, rv);
 
-  if (document) {
-    nsRefPtr<nsXBLBinding> binding =
-      document->BindingManager()->GetBinding(this);
-    if (binding)
-      binding->AttributeChanged(aName, aNameSpaceID, PR_TRUE, aNotify);
+  if (document || HasFlag(NODE_FORCE_XBL_BINDINGS)) {
+    nsIDocument* ownerDoc = GetOwnerDoc();
+    if (ownerDoc) {
+      nsRefPtr<nsXBLBinding> binding =
+        ownerDoc->BindingManager()->GetBinding(this);
+      if (binding) {
+        binding->AttributeChanged(aName, aNameSpaceID, PR_TRUE, aNotify);
+      }
+    }
   }
 
   if (aNotify) {
     stateMask = stateMask ^ PRUint32(IntrinsicState());
     if (stateMask && document) {
       MOZ_AUTO_DOC_UPDATE(document, UPDATE_CONTENT_STATE, aNotify);
       document->ContentStatesChanged(this, nsnull, stateMask);
     }
--- a/content/base/test/Makefile.in
+++ b/content/base/test/Makefile.in
@@ -169,16 +169,17 @@ include $(topsrcdir)/config/rules.mk
 		test_bug413974.html \
 		test_bug415860.html \
 		test_bug414190.html \
 		test_bug414796.html \
 		test_bug416383.html \
 		test_bug417255.html \
 		test_bug417384.html \
 		test_bug418214.html \
+		test_bug420609.xhtml \
 		$(NULL)
 
 libs:: $(_TEST_FILES)
 	$(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
 
 check::
 	@$(EXIT_ON_ERROR) \
 	for f in $(subst .cpp,,$(CPP_UNIT_TESTS)); do \
new file mode 100644
--- /dev/null
+++ b/content/base/test/test_bug420609.xhtml
@@ -0,0 +1,35 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=420609
+-->
+<head>
+  <title>Test for Bug 420609</title>
+  <script type="text/javascript" src="/MochiKit/packed.js"></script>
+  <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
+  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
+</head>
+<body>
+<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=420609">Mozilla Bug 420609</a>
+<p id="display"></p>
+<div id="content" style="display: none">
+&nbsp;&mdash;&sup1;&hellip;
+</div>
+<pre id="test">
+<script class="testbody" type="text/javascript">
+<![CDATA[
+
+/** Test for Bug 420609 **/
+    var request = new XMLHttpRequest();
+    request.open("GET", window.location.href, false);
+    request.send(null);
+
+    ok(request.responseXML && request.responseXML.documentElement.tagName == "html", "XMLHttpRequest should load XHTML document with entities");
+    is(document.getElementById("content").textContent, request.responseXML.getElementById("content").textContent, "Entities should be expanded in the document loaded by XMLHttpRequest");
+]]>
+</script>
+</pre>
+</body>
+</html>
+
--- a/content/events/src/nsDOMUIEvent.cpp
+++ b/content/events/src/nsDOMUIEvent.cpp
@@ -149,17 +149,17 @@ nsPoint nsDOMUIEvent::GetClientPoint() {
        mEvent->eventStructType != NS_MOUSE_SCROLL_EVENT &&
        !NS_IS_DRAG_EVENT(mEvent)) ||
       !mPresContext ||
       !((nsGUIEvent*)mEvent)->widget) {
     return mClientPoint;
   }
 
   nsPoint pt(0, 0);
-  nsIPresShell* shell = mPresContext->PresShell();
+  nsIPresShell* shell = mPresContext->GetPresShell();
   if (!shell) {
     return pt;
   }
   nsIFrame* rootFrame = shell->GetRootFrame();
   if (rootFrame)
     pt = nsLayoutUtils::GetEventCoordinatesRelativeTo(mEvent, rootFrame);
 
   return nsPoint(nsPresContext::AppUnitsToIntCSSPixels(pt.x),
@@ -195,17 +195,17 @@ nsDOMUIEvent::InitUIEvent(const nsAStrin
 
 // ---- nsDOMNSUIEvent implementation -------------------
 nsPoint
 nsDOMUIEvent::GetPagePoint()
 {
   if (((nsGUIEvent*)mEvent)->widget) {
     // Native event; calculate using presentation
     nsPoint pt(0, 0);
-    nsIPresShell* shell = mPresContext->PresShell();
+    nsIPresShell* shell = mPresContext->GetPresShell();
     if (!shell) {
       return pt;
     }
     nsIScrollableFrame* scrollframe = shell->GetRootScrollFrameAsScrollable();
 
     if (scrollframe)
       pt += scrollframe->GetScrollPosition();
     nsIFrame* rootFrame = shell->GetRootFrame();
--- a/content/html/document/src/nsHTMLContentSink.cpp
+++ b/content/html/document/src/nsHTMLContentSink.cpp
@@ -1565,21 +1565,16 @@ HTMLContentSink::HTMLContentSink()
 }
 
 HTMLContentSink::~HTMLContentSink()
 {
   NS_IF_RELEASE(mHead);
   NS_IF_RELEASE(mBody);
   NS_IF_RELEASE(mRoot);
 
-  if (mDocument) {
-    // Remove ourselves just to be safe, though we really should have
-    // been removed in DidBuildModel if everything worked right.
-    mDocument->RemoveObserver(this);
-  }
   NS_IF_RELEASE(mHTMLDocument);
 
   if (mNotificationTimer) {
     mNotificationTimer->Cancel();
   }
 
   PRInt32 numContexts = mContextStack.Count();
 
@@ -1610,32 +1605,26 @@ HTMLContentSink::~HTMLContentSink()
   delete mHeadContext;
 
   for (i = 0; PRUint32(i) < NS_ARRAY_LENGTH(mNodeInfoCache); ++i) {
     NS_IF_RELEASE(mNodeInfoCache[i]);
   }
 }
 
 #if DEBUG
-NS_IMPL_ISUPPORTS_INHERITED6(HTMLContentSink,
+NS_IMPL_ISUPPORTS_INHERITED3(HTMLContentSink,
                              nsContentSink,
                              nsIContentSink,
                              nsIHTMLContentSink,
-                             nsITimerCallback,
-                             nsIDocumentObserver,
-                             nsIMutationObserver,
                              nsIDebugDumpContent)
 #else
-NS_IMPL_ISUPPORTS_INHERITED5(HTMLContentSink,
+NS_IMPL_ISUPPORTS_INHERITED2(HTMLContentSink,
                              nsContentSink,
                              nsIContentSink,
-                             nsIHTMLContentSink,
-                             nsITimerCallback,
-                             nsIDocumentObserver,
-                             nsIMutationObserver)
+                             nsIHTMLContentSink)
 #endif
 
 static PRBool
 IsScriptEnabled(nsIDocument *aDoc, nsIDocShell *aContainer)
 {
   NS_ENSURE_TRUE(aDoc && aContainer, PR_TRUE);
 
   nsCOMPtr<nsIScriptGlobalObject> globalObject = aDoc->GetScriptGlobalObject();
new file mode 100644
--- /dev/null
+++ b/content/xml/content/crashtest/420429.xul
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+
+<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+        onload="boom();">
+
+<?xml-stylesheet?>
+
+<script type="text/javascript">
+
+function boom()
+{
+  window.addEventListener("DOMCharacterDataModified", function(){}, false);
+  document.documentElement.cloneNode(true).getElementsByTagName("*").length;
+}
+
+</script>
+
+</window>
new file mode 100644
--- /dev/null
+++ b/content/xml/content/crashtest/crashtests.list
@@ -0,0 +1,1 @@
+load 420429.xul
--- a/content/xml/content/src/nsXMLProcessingInstruction.cpp
+++ b/content/xml/content/src/nsXMLProcessingInstruction.cpp
@@ -76,17 +76,19 @@ NS_NewXMLProcessingInstruction(nsIConten
 }
 
 nsXMLProcessingInstruction::nsXMLProcessingInstruction(nsINodeInfo *aNodeInfo,
                                                        const nsAString& aTarget,
                                                        const nsAString& aData)
   : nsGenericDOMDataNode(aNodeInfo),
     mTarget(aTarget)
 {
-  nsGenericDOMDataNode::SetData(aData);
+  SetTextInternal(0, mText.GetLength(),
+                  aData.BeginReading(), aData.Length(),
+                  PR_FALSE);  // Don't notify (bug 420429).
 }
 
 nsXMLProcessingInstruction::~nsXMLProcessingInstruction()
 {
 }
 
 
 // QueryInterface implementation for nsXMLProcessingInstruction
--- a/content/xml/document/src/nsXMLContentSink.cpp
+++ b/content/xml/document/src/nsXMLContentSink.cpp
@@ -140,22 +140,16 @@ nsXMLContentSink::nsXMLContentSink()
   : mConstrainSize(PR_TRUE),
     mPrettyPrintXML(PR_TRUE),
     mAllowAutoXLinks(PR_TRUE)
 {
 }
 
 nsXMLContentSink::~nsXMLContentSink()
 {
-  if (mDocument) {
-    // Remove ourselves just to be safe, though we really should have
-    // been removed in DidBuildModel if everything worked right.
-    mDocument->RemoveObserver(this);
-  }
-
   NS_IF_RELEASE(mDocElement);
   if (mText) {
     PR_Free(mText);  //  Doesn't null out, unlike PR_FREEIF
   }
 }
 
 nsresult
 nsXMLContentSink::Init(nsIDocument* aDoc,
@@ -184,19 +178,16 @@ nsXMLContentSink::Init(nsIDocument* aDoc
   MOZ_TIMER_STOP(mWatch);
   return NS_OK;
 }
 
 NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsXMLContentSink)
   NS_INTERFACE_MAP_ENTRY(nsIContentSink)
   NS_INTERFACE_MAP_ENTRY(nsIXMLContentSink)
   NS_INTERFACE_MAP_ENTRY(nsIExpatSink)
-  NS_INTERFACE_MAP_ENTRY(nsITimerCallback)
-  NS_INTERFACE_MAP_ENTRY(nsIDocumentObserver)
-  NS_INTERFACE_MAP_ENTRY(nsIMutationObserver)
   NS_INTERFACE_MAP_ENTRY(nsITransformObserver)
 NS_INTERFACE_MAP_END_INHERITING(nsContentSink)
 
 NS_IMPL_ADDREF_INHERITED(nsXMLContentSink, nsContentSink)
 NS_IMPL_RELEASE_INHERITED(nsXMLContentSink, nsContentSink)
 
 NS_IMPL_CYCLE_COLLECTION_CLASS(nsXMLContentSink)
 
--- a/content/xul/document/src/nsXULDocument.cpp
+++ b/content/xul/document/src/nsXULDocument.cpp
@@ -2987,45 +2987,31 @@ nsXULDocument::ResumeWalk()
         // If we're not already, mark us as now processing overlays.
         mState = eState_Overlay;
 
         // If there are no overlay URIs, then we're done.
         PRUint32 count = mUnloadedOverlays.Count();
         if (! count)
             break;
 
-        nsCOMPtr<nsIURI> overlayURI = mCurrentPrototype->GetURI();
         nsCOMPtr<nsIURI> uri = mUnloadedOverlays[count-1];
         mUnloadedOverlays.RemoveObjectAt(count-1);
 
         PRBool shouldReturn, failureFromContent;
         rv = LoadOverlayInternal(uri, PR_FALSE, &shouldReturn,
                                  &failureFromContent);
         if (failureFromContent)
             // The failure |rv| was the result of a problem in the content
             // rather than an unexpected problem in our implementation, so
             // just continue with the next overlay.
             continue;
         if (NS_FAILED(rv))
             return rv;
-        if (shouldReturn) {
-            if (mOverlayLoadObservers.IsInitialized()) {
-                nsIObserver *obs = mOverlayLoadObservers.GetWeak(overlayURI);
-                if (obs) {
-                    // This overlay has an unloaded overlay, so it will never
-                    // notify. The best we can do is to notify for the unloaded
-                    // overlay instead, assuming nobody is already notifiable
-                    // for it. Note that this will confuse the observer.
-                    if (!mOverlayLoadObservers.GetWeak(uri))
-                        mOverlayLoadObservers.Put(uri, obs);
-                    mOverlayLoadObservers.Remove(overlayURI);
-                }
-            }
+        if (shouldReturn)
             return NS_OK;
-        }
     }
 
     // If we get here, there is nothing left for us to walk. The content
     // model is built and ready for layout.
     rv = ResolveForwardReferences();
     if (NS_FAILED(rv)) return rv;
 
     rv = ApplyPersistentAttributes();
--- a/dom/src/base/nsDOMClassInfo.cpp
+++ b/dom/src/base/nsDOMClassInfo.cpp
@@ -57,19 +57,21 @@
 #include "nsUnicharUtils.h"
 #include "xptcall.h"
 #include "prprf.h"
 #include "nsTArray.h"
 #include "nsCSSValue.h"
 
 // JavaScript includes
 #include "jsapi.h"
-#include "jsnum.h"
+#include "jsprvtd.h"    // we are using private JS typedefs...
+#include "jscntxt.h"
 #include "jsdbgapi.h"
-#include "jscntxt.h"
+#include "jsnum.h"
+#include "jsscope.h"
 
 // General helper includes
 #include "nsGlobalWindow.h"
 #include "nsIContent.h"
 #include "nsIAttribute.h"
 #include "nsIDocument.h"
 #include "nsIDOMDocument.h"
 #include "nsIDOM3Document.h"
@@ -6170,18 +6172,80 @@ nsWindowSH::NewResolve(nsIXPConnectWrapp
 
           return NS_OK;
         }
       }
     }
 #endif
   }
 
-  return nsEventReceiverSH::NewResolve(wrapper, cx, obj, id, flags, objp,
-                                       _retval);
+  JSObject *oldobj = *objp;
+  rv = nsEventReceiverSH::NewResolve(wrapper, cx, obj, id, flags, objp,
+                                     _retval);
+
+  if (NS_FAILED(rv) || *objp != oldobj) {
+    // Something went wrong, or the property got resolved. Return.
+    return rv;
+  }
+
+  // Make a fast expando if we're assigning to (not declaring or
+  // binding a name) a new undefined property that's not already
+  // defined on our prototype chain. This way we can access this
+  // expando w/o ever getting back into XPConnect.
+  if ((flags & (JSRESOLVE_ASSIGNING)) && (JSOp)*cx->fp->pc != JSOP_BINDNAME &&
+      win->IsInnerWindow()) {
+    JSObject *realObj;
+    wrapper->GetJSObject(&realObj);
+
+    if (obj == realObj) {
+      JSObject *proto = STOBJ_GET_PROTO(obj);
+      if (proto) {
+        jsid interned_id;
+        JSProperty *prop = nsnull;
+
+        if (!::JS_ValueToId(cx, id, &interned_id) ||
+            !OBJ_LOOKUP_PROPERTY(cx, proto, interned_id, objp, &prop)) {
+          *_retval = JS_FALSE;
+
+          return NS_OK;
+        }
+
+        if (prop) {
+          // A property was found on the prototype chain, and *objp is
+          // already set to point to the prototype where the property
+          // was found.
+          OBJ_DROP_PROPERTY(cx, proto, prop);
+
+          return NS_OK;
+        }
+      }
+
+      // Define a fast expando, the key here is to use JS_PropertyStub
+      // as the getter/setter, which makes us stay out of XPConnect
+      // when using this property.
+      //
+      // We don't need to worry about property attributes here as we
+      // know here we're dealing with an undefined property set, so
+      // we're not declaring readonly or permanent properties.
+
+      JSString *str = JSVAL_TO_STRING(id);
+      if (!::JS_DefineUCProperty(cx, obj, ::JS_GetStringChars(str),
+                                 ::JS_GetStringLength(str), JSVAL_VOID,
+                                 JS_PropertyStub, JS_PropertyStub,
+                                 JSPROP_ENUMERATE)) {
+        *_retval = JS_FALSE;
+
+        return NS_OK;
+      }
+
+      *objp = obj;
+    }
+  }
+
+  return NS_OK;
 }
 
 NS_IMETHODIMP
 nsWindowSH::NewEnumerate(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
                          JSObject *obj, PRUint32 enum_op, jsval *statep,
                          jsid *idp, PRBool *_retval)
 {
   switch ((JSIterateOp)enum_op) {
@@ -6289,49 +6353,64 @@ nsWindowSH::Equality(nsIXPConnectWrapped
 
   return NS_OK;
 }
 
 NS_IMETHODIMP
 nsWindowSH::OuterObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx,
                         JSObject * obj, JSObject * *_retval)
 {
-  nsGlobalWindow *win =
-    nsGlobalWindow::FromWrapper(wrapper)->GetOuterWindowInternal();
+  nsGlobalWindow *origWin = nsGlobalWindow::FromWrapper(wrapper);
+  nsGlobalWindow *win = origWin->GetOuterWindowInternal();
 
   if (!win) {
     // If we no longer have an outer window. No code should ever be
     // running on a window w/o an outer, which means this hook should
     // never be called when we have no outer. But just in case, return
     // null to prevent leaking an inner window to code in a different
     // window.
 
     *_retval = nsnull;
 
     return NS_ERROR_UNEXPECTED;
   }
 
   // Return the outer window.
 
+  // FIXME bug 420372: Our window should always have a JS object here. It
+  // doesn't because of nsJSContext::FindXPCNativeWrapperClass.
   nsresult rv;
   if (win->IsChromeWindow()) {
     // Chrome windows don't get XOW wrapping.
-    *_retval = win->GetGlobalJSObject();
+    JSObject *outerObj = win->GetGlobalJSObject();
+    if (!outerObj) {
+      NS_ASSERTION(origWin->IsOuterWindow(), "What window is this?");
+      *_retval = obj;
+    } else {
+      *_retval = outerObj;
+    }
+
     rv = NS_OK;
   } else {
     JSObject *winObj = win->GetGlobalJSObject();
-    JSObject *scope = JS_GetScopeChain(cx);
-    if (!scope) {
-      *_retval = nsnull;
-      return NS_ERROR_FAILURE;
-    }
-    scope = ::JS_GetGlobalForObject(cx, scope);
-    jsval v;
-    rv = sXPConnect->GetXOWForObject(cx, scope, winObj, &v);
-    *_retval = NS_SUCCEEDED(rv) ? JSVAL_TO_OBJECT(v) : nsnull;
+    if (!winObj) {
+      NS_ASSERTION(origWin->IsOuterWindow(), "What window is this?");
+      *_retval = obj;
+      rv = NS_OK;
+    } else {
+      JSObject *scope = JS_GetScopeChain(cx);
+      if (!scope) {
+        *_retval = nsnull;
+        return NS_ERROR_FAILURE;
+      }
+      scope = ::JS_GetGlobalForObject(cx, scope);
+      jsval v;
+      rv = sXPConnect->GetXOWForObject(cx, scope, winObj, &v);
+      *_retval = NS_SUCCEEDED(rv) ? JSVAL_TO_OBJECT(v) : nsnull;
+    }
   }
 
   return rv;
 }
 
 NS_IMETHODIMP
 nsWindowSH::InnerObject(nsIXPConnectWrappedNative *wrapper, JSContext * cx,
                         JSObject * obj, JSObject * *_retval)
@@ -7650,17 +7729,17 @@ nsDocumentSH::PostCreate(nsIXPConnectWra
   if (!win) {
     // No window, nothing else to do here
     return NS_OK;
   }
 
   nsIDOMDocument* currentDoc = win->GetExtantDocument();
 
   if (SameCOMIdentity(doc, currentDoc)) {
-    jsval winVal, docVal;
+    jsval winVal;
 
     nsCOMPtr<nsIXPConnectJSObjectHolder> holder;
     rv = WrapNative(cx, obj, win, NS_GET_IID(nsIDOMWindow), &winVal,
                     getter_AddRefs(holder));
     NS_ENSURE_SUCCESS(rv, rv);
 
     NS_NAMED_LITERAL_STRING(doc_str, "document");
 
--- a/dom/src/base/nsJSEnvironment.cpp
+++ b/dom/src/base/nsJSEnvironment.cpp
@@ -3311,17 +3311,17 @@ void
 nsJSContext::SetGCOnDestruction(PRBool aGCOnDestruction)
 {
   mGCOnDestruction = aGCOnDestruction;
 }
 
 NS_IMETHODIMP
 nsJSContext::ScriptExecuted()
 {
-  ScriptEvaluated(PR_FALSE);
+  ScriptEvaluated(!::JS_IsRunning(mContext));
 
   return NS_OK;
 }
 
 NS_IMETHODIMP
 nsJSContext::PreserveWrapper(nsIXPConnectWrappedNative *aWrapper)
 {
   return nsDOMClassInfo::PreserveNodeWrapper(aWrapper);
--- a/embedding/componentlib/Makefile.in
+++ b/embedding/componentlib/Makefile.in
@@ -87,24 +87,20 @@ EXTRA_DSO_LDOPTS += \
 	$(EXTRA_DSO_LIBS) \
 	$(STATIC_EXTRA_LIBS) \
 	$(MOZ_JS_LIBS) \
 	$(MOZ_UNICHARUTIL_LIBS) \
 	$(MOZ_COMPONENT_LIBS) \
 	$(TK_LIBS) \
 	$(NULL)
 
-ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
+ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
 OS_LIBS	+= -framework QuickTime
 endif
 
-ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
-OS_LIBS	+= -framework Cocoa
-endif
-
 ifeq ($(OS_ARCH),Darwin)
 
 # A limitation exists in the Mach-O format which causes "scattered" relocation
 # entries in shared libraries to be limited to a 24-bit address space (16 MB).
 # The high 8 bits of the address are dropped.  This can cause problems in
 # a mozcomps build, particularly non-optimized builds.  To avoid the problem,
 # we move the data segment before the code segment in the libraray.  The data
 # segment is relatively small, and all of the relocations in question
--- a/embedding/components/printingui/src/mac/nsPrintingPromptServiceX.mm
+++ b/embedding/components/printingui/src/mac/nsPrintingPromptServiceX.mm
@@ -35,16 +35,17 @@
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #include "nsPrintingPromptService.h"
 
 #include "nsCOMPtr.h"
+#include "nsObjCExceptions.h"
 
 #include "nsIPrintingPromptService.h"
 #include "nsIFactory.h"
 #include "nsIDOMWindow.h"
 #include "nsReadableUtils.h"
 #include "nsIEmbeddingSiteWindow.h"
 #include "nsIServiceManager.h"
 #include "nsIWebBrowserChrome.h"
@@ -57,26 +58,26 @@
 
 #include "nsPDECommon.h"
 
 // Printing Progress Includes
 #include "nsPrintProgress.h"
 #include "nsPrintProgressParams.h"
 #include "nsIWebProgressListener.h"
 
-// OS includes
-#include <PMApplication.h>
-#include <CFPlugIn.h>
+#import <Carbon/Carbon.h>
 
 //-----------------------------------------------------------------------------
 // Static Helpers
 //-----------------------------------------------------------------------------
 
 static nsresult LoadPDEPlugIn()
 {
+    NS_OBJC_BEGIN_TRY_ABORT_BLOCK_NSRESULT;
+
     static CFPlugInRef gPDEPlugIn = nsnull;
 
     if (!gPDEPlugIn) {
 
         CFURLRef pluginsURL = ::CFBundleCopyBuiltInPlugInsURL(CFBundleGetMainBundle());
         if (pluginsURL) {
             CFURLRef thePluginURL = ::CFURLCreateCopyAppendingPathComponent(nsnull,
                                                                           pluginsURL,
@@ -85,21 +86,25 @@ static nsresult LoadPDEPlugIn()
             if (thePluginURL) {
                 gPDEPlugIn = ::CFPlugInCreate(nsnull, thePluginURL);
                 ::CFRelease(thePluginURL);
             }
             ::CFRelease(pluginsURL);
         }
     }
     return gPDEPlugIn ? NS_OK : NS_ERROR_FAILURE;
+
+    NS_OBJC_END_TRY_ABORT_BLOCK_NSRESULT;
 }
 
 static CFDictionaryRef ExtractCustomSettingsDict(PMPrintSettings nativePrintSettings)
 {
-    CFDictionaryRef resultDict = nsnull;
+    NS_OBJC_BEGIN_TRY_ABORT_BLOCK_RETURN;
+
+    CFDictionaryRef resultDict = NULL;
     UInt32 bytesNeeded;
     
     OSStatus status = ::PMGetPrintSettingsExtendedData(nativePrintSettings, kAppPrintDialogAppOnlyKey, &bytesNeeded, NULL);
     if (status == noErr) {
         nsAutoTArray<UInt8, 512> dataBuffer;
         if (dataBuffer.SetLength(bytesNeeded)) {           
             status = ::PMGetPrintSettingsExtendedData(nativePrintSettings, kAppPrintDialogAppOnlyKey, &bytesNeeded, dataBuffer.Elements());
             if (status == noErr) {
@@ -112,67 +117,85 @@ static CFDictionaryRef ExtractCustomSett
                                                         NULL);
                     CFRelease(xmlData);
                 }
             }
         }
     }
     NS_ASSERTION(resultDict, "Failed to get custom print settings dict");
     return resultDict;
+
+    NS_OBJC_END_TRY_ABORT_BLOCK_RETURN(NULL);
 }
 
 static PRBool
 GetDictionaryStringValue(CFDictionaryRef aDictionary, CFStringRef aKey, nsAString& aResult)
 {
+    NS_OBJC_BEGIN_TRY_ABORT_BLOCK_RETURN;
+
     aResult.Truncate();
     CFTypeRef dictValue;
     if ((dictValue = CFDictionaryGetValue(aDictionary, aKey)) &&
         (CFGetTypeID(dictValue) == CFStringGetTypeID()))
     {
         CFIndex stringLen = CFStringGetLength((CFStringRef)dictValue);
 
         nsAutoTArray<UniChar, 256> stringBuffer;
         if (stringBuffer.SetLength(stringLen + 1)) {
             ::CFStringGetCharacters((CFStringRef)dictValue, CFRangeMake(0, stringLen), stringBuffer.Elements());
             aResult.Assign(stringBuffer.Elements(), stringLen);
             return PR_TRUE;
         }
     }
     return PR_FALSE;
+
+    NS_OBJC_END_TRY_ABORT_BLOCK_RETURN(PR_FALSE);
 }
 
 // returns success or failure (not the read value)
 static PRBool
 GetDictionaryBooleanValue(CFDictionaryRef aDictionary, CFStringRef aKey, PRBool& aResult)
 {
+    NS_OBJC_BEGIN_TRY_ABORT_BLOCK_RETURN;
+
     aResult = PR_FALSE;
     CFTypeRef dictValue;
     if ((dictValue = CFDictionaryGetValue(aDictionary, aKey)) &&
         (CFGetTypeID(dictValue) == CFBooleanGetTypeID()))
     {
       aResult = CFBooleanGetValue((CFBooleanRef)dictValue);
       return PR_TRUE;
     }
     return PR_FALSE;
+
+    NS_OBJC_END_TRY_ABORT_BLOCK_RETURN(PR_FALSE);
 }
 
 static void
 SetDictionaryStringValue(CFMutableDictionaryRef aDictionary, CFStringRef aKey, const nsXPIDLString& aValue)
 {
+    NS_OBJC_BEGIN_TRY_ABORT_BLOCK;
+
     CFStringRef cfString = CFStringCreateWithCharacters(NULL, aValue.get(), aValue.Length());
     if (cfString) {
         CFDictionaryAddValue(aDictionary, aKey, cfString);
         CFRelease(cfString);
     }
+
+    NS_OBJC_END_TRY_ABORT_BLOCK;
 }
 
 static void
 SetDictionaryBooleanvalue(CFMutableDictionaryRef aDictionary, CFStringRef aKey, PRBool aValue)
 {
+    NS_OBJC_BEGIN_TRY_ABORT_BLOCK;
+
     CFDictionaryAddValue(aDictionary, aKey, aValue ? kCFBooleanTrue : kCFBooleanFalse);
+
+    NS_OBJC_END_TRY_ABORT_BLOCK;
 }
 
 //*****************************************************************************
 // nsPrintingPromptService
 //*****************************************************************************   
 
 NS_IMPL_ISUPPORTS2(nsPrintingPromptService, nsIPrintingPromptService, nsIWebProgressListener)
 
@@ -192,16 +215,18 @@ nsresult nsPrintingPromptService::Init()
 
 //*****************************************************************************
 // nsPrintingPromptService::nsIPrintingPromptService
 //*****************************************************************************   
 
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowPrintDialog(nsIDOMWindow *parent, nsIWebBrowserPrint *webBrowserPrint, nsIPrintSettings *printSettings)
 {
+    NS_OBJC_BEGIN_TRY_ABORT_BLOCK_NSRESULT;
+
     nsresult rv;
     OSStatus status;
       
     nsCOMPtr<nsIPrintSettingsX> printSettingsX(do_QueryInterface(printSettings));
     if (!printSettingsX)
         return NS_ERROR_NO_INTERFACE;
     
     PMPrintSession  printSession;
@@ -407,16 +432,18 @@ nsPrintingPromptService::ShowPrintDialog
         
     if (!accepted)
         return NS_ERROR_ABORT;
 
     if (status != noErr)
         return NS_ERROR_FAILURE;
 
     return NS_OK;
+
+    NS_OBJC_END_TRY_ABORT_BLOCK_NSRESULT;
 }
 
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowProgress(nsIDOMWindow*            parent, 
                                       nsIWebBrowserPrint*      webBrowserPrint,    // ok to be null
                                       nsIPrintSettings*        printSettings,      // ok to be null
                                       nsIObserver*             openDialogObserver, // ok to be null
                                       PRBool                   isForPrinting,
@@ -425,16 +452,18 @@ nsPrintingPromptService::ShowProgress(ns
                                       PRBool*                  notifyOnOpen)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowPageSetup(nsIDOMWindow *parent, nsIPrintSettings *printSettings, nsIObserver *aObs)
 {
+  NS_OBJC_BEGIN_TRY_ABORT_BLOCK_NSRESULT;
+
   nsCOMPtr<nsIPrintSettingsX> printSettingsX(do_QueryInterface(printSettings));
   if (!printSettingsX)
     return NS_ERROR_NO_INTERFACE;
   
   OSStatus status;
     
   PMPrintSession printSession;
   status = ::PMCreateSession(&printSession);
@@ -460,16 +489,18 @@ nsPrintingPromptService::ShowPageSetup(n
     status = tempStatus;
     
   if (status != noErr)
     return NS_ERROR_FAILURE;    
   if (!accepted)
     return NS_ERROR_ABORT;
 
   return NS_OK;
+
+  NS_OBJC_END_TRY_ABORT_BLOCK_NSRESULT;
 }
 
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowPrinterProperties(nsIDOMWindow *parent, const PRUnichar *printerName, nsIPrintSettings *printSettings)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
--- a/extensions/permissions/nsContentBlocker.cpp
+++ b/extensions/permissions/nsContentBlocker.cpp
@@ -59,17 +59,18 @@ static const char *kTypeString[NUMBER_OF
                                                    "stylesheet",
                                                    "object",
                                                    "document",
                                                    "subdocument",
                                                    "refresh",
                                                    "xbl",
                                                    "ping",
                                                    "xmlhttprequest",
-                                                   "objectsubrequest"};
+                                                   "objectsubrequest",
+                                                   "dtd"};
 
 
 NS_IMPL_ISUPPORTS3(nsContentBlocker, 
                    nsIContentPolicy,
                    nsIObserver,
                    nsSupportsWeakReference)
 
 nsContentBlocker::nsContentBlocker()
--- a/extensions/permissions/nsContentBlocker.h
+++ b/extensions/permissions/nsContentBlocker.h
@@ -42,17 +42,17 @@
 #include "nsIPermissionManager.h"
 #include "nsIPrefBranch2.h"
 
 class nsIPrefBranch;
 
 ////////////////////////////////////////////////////////////////////////////////
 
 // number of permission types in nsIContentPolicy
-#define NUMBER_OF_TYPES 12
+#define NUMBER_OF_TYPES 13
 
 class nsContentBlocker : public nsIContentPolicy,
                          public nsIObserver,
                          public nsSupportsWeakReference
 {
 public:
 
   // nsISupports
--- a/extensions/spellcheck/src/Makefile.in
+++ b/extensions/spellcheck/src/Makefile.in
@@ -91,15 +91,8 @@ EXTRA_DSO_LDOPTS = \
 		$(MOZ_HUNSPELL_LIBS) \
 		$(NULL)
 
 include $(topsrcdir)/config/rules.mk
 
 LOCAL_INCLUDES += \
 	-I$(topsrcdir)/xpcom/io \
 	$(NULL)
-
-ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
-LDFLAGS	+= \
-	-framework Cocoa \
-	-framework Foundation \
-	$(NULL)
-endif
--- a/gfx/cairo/README
+++ b/gfx/cairo/README
@@ -2,17 +2,17 @@ Snapshots of cairo and glitz for mozilla
 
 We only include the relevant parts of each release (generally, src/*.[ch]),
 as we have Makefile.in's that integrate into the Mozilla build system.  For
 documentation and similar, please see the official tarballs at
 http://www.cairographics.org/.
 
 VERSIONS:
 
-  cairo (1.5.x - 1.5.8-87-g21049a9)
+  cairo (1.5.x - 1.5.12-14-gd89edde)
   pixman (0.9.x - pixman-0.9.6-37-g8d79c48)
   glitz 0.5.2 (cvs - 2006-01-10)
 
 ***** NOTE FOR VISUAL C++ 6.0 *****
 
 VC6 is not supported.  Please upgrade to VC8.
 
 ==== Patches ====
@@ -20,18 +20,14 @@ VC6 is not supported.  Please upgrade to
 Some specific things:
 
 max-font-size.patch: Clamp freetype font size to 1000 to avoid overflow issues
 
 win32-logical-font-scale.patch: set CAIRO_WIN32_LOGICAL_FONT_SCALE to 1
 
 nonfatal-assertions.patch: Make assertions non-fatal
 
+buggy-repeat.patch: Unconditionally turn on buggy-repeat handling to bandaid bug 413583.
+
+==== pixman patches ====
+
 endian.patch: include cairo-platform.h for endian macros
 
-fixed-24-8.patch: Switch fixed point mode from 16.16 to 24.8
-
-quartz-get-image-surface.patch: Add cairo_quartz_get_image_surface API analogous to the win32 one
-
-buggy-repeat.patch: Unconditionally turn on buggy-repeat handling to bandaid bug 413583.
-
-windows-8bit.patch: Initial important bits to get something drawing on 8bpp win32
-
--- a/gfx/cairo/buggy-repeat.patch
+++ b/gfx/cairo/buggy-repeat.patch
@@ -1,13 +1,30 @@
 diff --git a/gfx/cairo/cairo/src/cairo-xlib-display.c b/gfx/cairo/cairo/src/cairo-xlib-display.c
 --- a/gfx/cairo/cairo/src/cairo-xlib-display.c
 +++ b/gfx/cairo/cairo/src/cairo-xlib-display.c
-@@ -302,6 +302,9 @@ _cairo_xlib_display_get (Display *dpy)
+@@ -63,6 +63,8 @@ struct _cairo_xlib_job {
+ };
+ 
+ static cairo_xlib_display_t *_cairo_xlib_display_list;
++
++static int buggy_repeat_force = -1;
+ 
+ static void
+ _cairo_xlib_call_close_display_hooks (cairo_xlib_display_t *display)
+@@ -302,6 +304,17 @@ _cairo_xlib_display_get (Display *dpy)
  	    display->buggy_repeat = TRUE;
      }
  
 +    /* XXX workaround; see https://bugzilla.mozilla.org/show_bug.cgi?id=413583 */
-+    display->buggy_repeat = TRUE;
++    if (buggy_repeat_force == -1) {
++        if (getenv("MOZ_CAIRO_NO_BUGGY_REPEAT"))
++            buggy_repeat_force = 0;
++        else
++            buggy_repeat_force = 1;
++    }
++
++    if (buggy_repeat_force)
++        display->buggy_repeat = TRUE;
 +
      display->next = _cairo_xlib_display_list;
      _cairo_xlib_display_list = display;
  
--- a/gfx/cairo/cairo/src/cairo-analysis-surface.c
+++ b/gfx/cairo/cairo/src/cairo-analysis-surface.c
@@ -66,21 +66,38 @@ static cairo_int_status_t
 _cairo_analysis_surface_analyze_meta_surface_pattern (cairo_analysis_surface_t *surface,
 						      cairo_pattern_t	       *pattern)
 {
     cairo_surface_t *analysis = &surface->base;
     cairo_surface_pattern_t *surface_pattern;
     cairo_status_t status;
     cairo_bool_t old_has_ctm;
     cairo_matrix_t old_ctm, p2d;
+    cairo_rectangle_int_t old_clip;
+    cairo_rectangle_int_t meta_extents;
+    int old_width;
+    int old_height;
 
     assert (pattern->type == CAIRO_PATTERN_TYPE_SURFACE);
     surface_pattern = (cairo_surface_pattern_t *) pattern;
     assert (_cairo_surface_is_meta (surface_pattern->surface));
 
+    old_width = surface->width;
+    old_height = surface->height;
+    old_clip = surface->current_clip;
+    status = _cairo_surface_get_extents (surface_pattern->surface, &meta_extents);
+    if (status)
+	return status;
+
+    surface->width = meta_extents.width;
+    surface->height = meta_extents.height;
+    surface->current_clip.x = 0;
+    surface->current_clip.y = 0;
+    surface->current_clip.width = surface->width;
+    surface->current_clip.height = surface->height;
     old_ctm = surface->ctm;
     old_has_ctm = surface->has_ctm;
     p2d = pattern->matrix;
     status = cairo_matrix_invert (&p2d);
     /* _cairo_pattern_set_matrix guarantees invertibility */
     assert (status == CAIRO_STATUS_SUCCESS);
 
     cairo_matrix_multiply (&surface->ctm, &p2d, &surface->ctm);
@@ -88,16 +105,19 @@ static cairo_int_status_t
 
     status = _cairo_meta_surface_replay_and_create_regions (surface_pattern->surface,
 							    analysis);
     if (status == CAIRO_STATUS_SUCCESS)
 	status = analysis->status;
 
     surface->ctm = old_ctm;
     surface->has_ctm = old_has_ctm;
+    surface->current_clip = old_clip;
+    surface->width = old_width;
+    surface->height = old_height;
 
     return status;
 }
 
 static cairo_int_status_t
 _cairo_analysis_surface_add_operation  (cairo_analysis_surface_t *surface,
 					cairo_rectangle_int_t    *rect,
 					cairo_int_status_t        backend_status)
@@ -223,31 +243,35 @@ static cairo_int_status_t
     cairo_rectangle_int_t   extent;
 
     if (path == NULL) {
 	surface->current_clip.x = 0;
 	surface->current_clip.y = 0;
 	surface->current_clip.width  = surface->width;
 	surface->current_clip.height = surface->height;
     } else {
-	_cairo_path_fixed_bounds (path, &x1, &y1, &x2, &y2, tolerance);
+	cairo_status_t status;
+
+	status = _cairo_path_fixed_bounds (path, &x1, &y1, &x2, &y2, tolerance);
+	if (status)
+	    return status;
 
 	extent.x = floor (x1);
 	extent.y = floor (y1);
 	extent.width  = ceil (x2) - extent.x;
 	extent.height = ceil (y2) - extent.y;
 
 	_cairo_rectangle_intersect (&surface->current_clip, &extent);
     }
 
     return CAIRO_STATUS_SUCCESS;
 }
 
 static cairo_int_status_t
-_cairo_analysis_surface_get_extents (void	 		*abstract_surface,
+_cairo_analysis_surface_get_extents (void			*abstract_surface,
 				     cairo_rectangle_int_t	*rectangle)
 {
     cairo_analysis_surface_t *surface = abstract_surface;
 
     return _cairo_surface_get_extents (surface->target, rectangle);
 }
 
 static cairo_int_status_t
--- a/gfx/cairo/cairo/src/cairo-compiler-private.h
+++ b/gfx/cairo/cairo/src/cairo-compiler-private.h
@@ -106,18 +106,21 @@ CAIRO_BEGIN_DECLS
 #else
 # define CAIRO_FUNCTION_ALIAS(old, new)
 #endif
 
 #ifndef __GNUC__
 #define __attribute__(x)
 #endif
 
+#if defined(__WIN32__) || defined(_MSC_VER)
+#define snprintf _snprintf
+#endif
+
 #ifdef _MSC_VER
-#define snprintf _snprintf
 #undef inline
 #define inline __inline
 #endif
 
 #ifdef __STRICT_ANSI__
 #undef inline
 #define inline __inline__
 #endif
--- a/gfx/cairo/cairo/src/cairo-directfb-surface.c
+++ b/gfx/cairo/cairo/src/cairo-directfb-surface.c
@@ -670,17 +670,17 @@ static cairo_status_t
                 len  = width;
             } else {
                 dst += src_x * 4;
                 src += src_x * 4;
                 len  = width * 4;
             }
             
             for (i = 0; i < height; i++) {
-                direct_memcpy (dst+src_x, src+src_x, len);
+                direct_memcpy (dst, src, len);
                 dst += pitch;
                 src += image_src->stride;
             }
         }
         
         clone->dfbsurface->Unlock (clone->dfbsurface);
         
         *clone_out = &clone->base;
--- a/gfx/cairo/cairo/src/cairo-features.h.in
+++ b/gfx/cairo/cairo/src/cairo-features.h.in
@@ -48,19 +48,19 @@
 #endif
 
 #ifndef cairo_public
 # define cairo_public
 #endif
 
 #define CAIRO_VERSION_MAJOR 1
 #define CAIRO_VERSION_MINOR 5
-#define CAIRO_VERSION_MICRO 5
+#define CAIRO_VERSION_MICRO 12
 
-#define CAIRO_VERSION_STRING "1.5.5"
+#define CAIRO_VERSION_STRING "1.5.12"
 
 @PS_SURFACE_FEATURE@
 
 @PDF_SURFACE_FEATURE@
 
 @SVG_SURFACE_FEATURE@
 
 @XLIB_SURFACE_FEATURE@
--- a/gfx/cairo/cairo/src/cairo-fixed-private.h
+++ b/gfx/cairo/cairo/src/cairo-fixed-private.h
@@ -181,17 +181,17 @@ static inline cairo_fixed_16_16_t
 #if (CAIRO_FIXED_FRAC_BITS == 16) && (CAIRO_FIXED_BITS == 32)
     return f;
 #elif CAIRO_FIXED_FRAC_BITS > 16
     /* We're just dropping the low bits, so we won't ever got over/underflow here */
     return f >> (CAIRO_FIXED_FRAC_BITS - 16);
 #else
     cairo_fixed_16_16_t x;
 
-    /* Handle overflow/underflow by claping to the lowest/highest
+    /* Handle overflow/underflow by clamping to the lowest/highest
      * value representable as 16.16
      */
     if ((f >> CAIRO_FIXED_FRAC_BITS) < INT16_MIN) {
 	x = INT32_MIN;
     } else if ((f >> CAIRO_FIXED_FRAC_BITS) > INT16_MAX) {
 	x = INT32_MAX;
     } else {
 	x = f << (16 - CAIRO_FIXED_FRAC_BITS);
--- a/gfx/cairo/cairo/src/cairo-ft-font.c
+++ b/gfx/cairo/cairo/src/cairo-ft-font.c
@@ -593,42 +593,50 @@ void
 }
 slim_hidden_def (cairo_ft_scaled_font_unlock_face);
 
 static cairo_status_t
 _compute_transform (cairo_ft_font_transform_t *sf,
 		    cairo_matrix_t      *scale)
 {
     cairo_status_t status;
+    double x_scale, y_scale;
     cairo_matrix_t normalized = *scale;
 
     /* The font matrix has x and y "scale" components which we extract and
      * use as character scale values. These influence the way freetype
      * chooses hints, as well as selecting different bitmaps in
      * hand-rendered fonts. We also copy the normalized matrix to
      * freetype's transformation.
      */
 
-    status = _cairo_matrix_compute_scale_factors (&normalized,
-						  &sf->x_scale, &sf->y_scale,
+    status = _cairo_matrix_compute_scale_factors (scale,
+						  &x_scale, &y_scale,
 						  /* XXX */ 1);
     if (status)
 	return status;
 
-    if (sf->x_scale != 0 && sf->y_scale != 0) {
-	cairo_matrix_scale (&normalized, 1.0 / sf->x_scale, 1.0 / sf->y_scale);
-
-	_cairo_matrix_get_affine (&normalized,
-				  &sf->shape[0][0], &sf->shape[0][1],
-				  &sf->shape[1][0], &sf->shape[1][1],
-				  NULL, NULL);
-    } else {
-	sf->shape[0][0] = sf->shape[1][1] = 1.0;
-	sf->shape[0][1] = sf->shape[1][0] = 0.0;
-    }
+    /* FreeType docs say this about x_scale and y_scale:
+     * "A character width or height smaller than 1pt is set to 1pt;"
+     * So, we cap them from below at 1.0 and let the FT transform
+     * take care of sub-1.0 scaling. */
+    if (x_scale < 1.0)
+      x_scale = 1.0;
+    if (y_scale < 1.0)
+      y_scale = 1.0;
+
+    sf->x_scale = x_scale;
+    sf->y_scale = y_scale;
+
+    cairo_matrix_scale (&normalized, 1.0 / x_scale, 1.0 / y_scale);
+
+    _cairo_matrix_get_affine (&normalized,
+			      &sf->shape[0][0], &sf->shape[0][1],
+			      &sf->shape[1][0], &sf->shape[1][1],
+			      NULL, NULL);
 
     return CAIRO_STATUS_SUCCESS;
 }
 
 /* Temporarily scales an unscaled font to the give scale. We catch
  * scaling to the same size, since changing a FT_Face is expensive.
  */
 static cairo_status_t
@@ -673,28 +681,21 @@ static cairo_status_t
     cairo_matrix_init (&unscaled->current_shape,
 		       sf.shape[0][0], sf.shape[0][1],
 		       sf.shape[1][0], sf.shape[1][1],
 		       0.0, 0.0);
 
     FT_Set_Transform(unscaled->face, &mat, NULL);
 
     if ((unscaled->face->face_flags & FT_FACE_FLAG_SCALABLE) != 0) {
-        double x_scale = sf.x_scale;
-        double y_scale = sf.y_scale;
-        if (x_scale > MAX_FONT_SIZE) {
-            x_scale = MAX_FONT_SIZE;
-        }
-        if (y_scale > MAX_FONT_SIZE) {
-            y_scale = MAX_FONT_SIZE;
-        }
-
+	double x_scale = MIN(sf.x_scale, MAX_FONT_SIZE);
+	double y_scale = MIN(sf.y_scale, MAX_FONT_SIZE);
 	error = FT_Set_Char_Size (unscaled->face,
-				  x_scale * 64.0,
-				  y_scale * 64.0,
+				  x_scale * 64.0 + .5,
+				  y_scale * 64.0 + .5,
 				  0, 0);
 	if (error)
 	    return _cairo_error (CAIRO_STATUS_NO_MEMORY);
     } else {
 	double min_distance = DBL_MAX;
 	int i;
 	int best_i = 0;
 
--- a/gfx/cairo/cairo/src/cairo-gstate.c
+++ b/gfx/cairo/cairo/src/cairo-gstate.c
@@ -37,17 +37,17 @@
 
 #define _GNU_SOURCE
 
 #include "cairoint.h"
 
 #include "cairo-clip-private.h"
 #include "cairo-gstate-private.h"
 
-#if _XOPEN_SOURCE >= 600 || defined(_ISOC99_SOURCE) 
+#if _XOPEN_SOURCE >= 600 || defined (_ISOC99_SOURCE)
 #define ISFINITE(x) isfinite (x)
 #else
 #define ISFINITE(x) ((x) * (x) >= 0.) /* check for NaNs */
 #endif
 
 static cairo_status_t
 _cairo_gstate_init_copy (cairo_gstate_t *gstate, cairo_gstate_t *other);
 
@@ -201,74 +201,71 @@ void
 
     cairo_pattern_destroy (gstate->source);
     gstate->source = NULL;
 }
 
 static void
 _cairo_gstate_destroy (cairo_gstate_t *gstate)
 {
-    if (gstate == NULL)
-	return;
-
     _cairo_gstate_fini (gstate);
     free (gstate);
 }
 
 /**
  * _cairo_gstate_clone:
  * @other: a #cairo_gstate_t to be copied, not %NULL.
  *
  * Create a new #cairo_gstate_t setting all graphics state parameters
  * to the same values as contained in @other. gstate->next will be set
  * to %NULL and may be used by the caller to chain #cairo_gstate_t
  * objects together.
  *
  * Return value: a new #cairo_gstate_t or %NULL if there is insufficient
  * memory.
  **/
-static cairo_gstate_t*
-_cairo_gstate_clone (cairo_gstate_t *other)
+static cairo_status_t
+_cairo_gstate_clone (cairo_gstate_t *other, cairo_gstate_t **out)
 {
     cairo_status_t status;
     cairo_gstate_t *gstate;
 
     assert (other != NULL);
 
     gstate = malloc (sizeof (cairo_gstate_t));
-    if (gstate == NULL) {
-	_cairo_error_throw (CAIRO_STATUS_NO_MEMORY);
-	return NULL;
-    }
+    if (gstate == NULL)
+	return _cairo_error (CAIRO_STATUS_NO_MEMORY);
 
     status = _cairo_gstate_init_copy (gstate, other);
     if (status) {
 	free (gstate);
-	return NULL;
+	return status;
     }
 
-    return gstate;
+    *out = gstate;
+    return CAIRO_STATUS_SUCCESS;
 }
 
 /**
  * _cairo_gstate_save:
  * @gstate: input/output gstate pointer
  *
  * Makes a copy of the current state of @gstate and saves it
  * to @gstate->next, then put the address of the newly allcated
  * copy into @gstate.  _cairo_gstate_restore() reverses this.
  **/
 cairo_status_t
 _cairo_gstate_save (cairo_gstate_t **gstate)
 {
     cairo_gstate_t *top;
+    cairo_status_t status;
 
-    top = _cairo_gstate_clone (*gstate);
-    if (top == NULL)
-	return _cairo_error (CAIRO_STATUS_NO_MEMORY);
+    status = _cairo_gstate_clone (*gstate, &top);
+    if (status)
+	return status;
 
     top->next = *gstate;
     *gstate = top;
 
     return CAIRO_STATUS_SUCCESS;
 }
 
 /**
@@ -443,19 +440,16 @@ cairo_status_t
     gstate->source_ctm_inverse = gstate->ctm_inverse;
 
     return CAIRO_STATUS_SUCCESS;
 }
 
 cairo_pattern_t *
 _cairo_gstate_get_source (cairo_gstate_t *gstate)
 {
-    if (gstate == NULL)
-	return NULL;
-
     return gstate->source;
 }
 
 cairo_status_t
 _cairo_gstate_set_operator (cairo_gstate_t *gstate, cairo_operator_t op)
 {
     gstate->op = op;
 
@@ -813,25 +807,31 @@ cairo_status_t
 {
     cairo_status_t status;
 
     _cairo_pen_init (&gstate);
     return CAIRO_STATUS_SUCCESS;
 }
 */
 
-void
+cairo_status_t
 _cairo_gstate_path_extents (cairo_gstate_t     *gstate,
 			    cairo_path_fixed_t *path,
 			    double *x1, double *y1,
 			    double *x2, double *y2)
 {
-    _cairo_path_fixed_bounds (path, x1, y1, x2, y2, gstate->tolerance);
-    
+    cairo_status_t status;
+
+    status = _cairo_path_fixed_bounds (path, x1, y1, x2, y2, gstate->tolerance);
+    if (status)
+	return status;
+
     _cairo_gstate_backend_to_user_rectangle (gstate, x1, y1, x2, y2, NULL);
+
+    return CAIRO_STATUS_SUCCESS;
 }
 
 static cairo_status_t
 _cairo_gstate_copy_transformed_pattern (cairo_gstate_t  *gstate,
 					cairo_pattern_t *pattern,
 					cairo_pattern_t *original,
 					cairo_matrix_t  *ctm_inverse)
 {
--- a/gfx/cairo/cairo/src/cairo-image-surface.c
+++ b/gfx/cairo/cairo/src/cairo-image-surface.c
@@ -284,27 +284,27 @@ void
 cairo_surface_t *
 _cairo_image_surface_create_with_masks (unsigned char	       *data,
 					cairo_format_masks_t   *masks,
 					int			width,
 					int			height,
 					int			stride)
 {
     pixman_format_code_t pixman_format;
-    
+
     pixman_format = _pixman_format_from_masks (masks);
 
     return _cairo_image_surface_create_with_pixman_format (data,
 							   pixman_format,
 							   width,
 							   height,
 							   stride);
 }
 
-static pixman_format_code_t 
+static pixman_format_code_t
 _cairo_format_to_pixman_format_code (cairo_format_t format)
 {
     pixman_format_code_t ret;
     switch (format) {
     case CAIRO_FORMAT_A1:
 	ret = PIXMAN_a1;
 	break;
     case CAIRO_FORMAT_A8:
@@ -479,17 +479,17 @@ cairo_image_surface_create_for_data (uns
 				     cairo_format_t	format,
 				     int		width,
 				     int		height,
 				     int		stride)
 {
     pixman_format_code_t pixman_format;
 
     if (! CAIRO_FORMAT_VALID (format))
-	return _cairo_surface_create_in_error (_cairo_error(CAIRO_STATUS_INVALID_FORMAT));
+	return _cairo_surface_create_in_error (_cairo_error (CAIRO_STATUS_INVALID_FORMAT));
 
     if ((stride & (STRIDE_ALIGNMENT-1)) != 0)
 	return _cairo_surface_create_in_error (_cairo_error (CAIRO_STATUS_INVALID_STRIDE));
 
     pixman_format = _cairo_format_to_pixman_format_code (format);
 
     return _cairo_image_surface_create_with_pixman_format (data, pixman_format,
 							   width, height, stride);
@@ -523,17 +523,17 @@ cairo_surface_t *
  *
  * Since: 1.2
  **/
 unsigned char *
 cairo_image_surface_get_data (cairo_surface_t *surface)
 {
     cairo_image_surface_t *image_surface = (cairo_image_surface_t *) surface;
 
-    if (!_cairo_surface_is_image (surface)) {
+    if (! _cairo_surface_is_image (surface)) {
 	_cairo_error_throw (CAIRO_STATUS_SURFACE_TYPE_MISMATCH);
 	return NULL;
     }
 
     return image_surface->data;
 }
 
 /**
@@ -546,17 +546,17 @@ cairo_image_surface_get_data (cairo_surf
  *
  * Since: 1.2
  **/
 cairo_format_t
 cairo_image_surface_get_format (cairo_surface_t *surface)
 {
     cairo_image_surface_t *image_surface = (cairo_image_surface_t *) surface;
 
-    if (!_cairo_surface_is_image (surface)) {
+    if (! _cairo_surface_is_image (surface)) {
 	_cairo_error_throw (CAIRO_STATUS_SURFACE_TYPE_MISMATCH);
 	return 0;
     }
 
     assert (CAIRO_FORMAT_VALID (image_surface->format));
 
     return image_surface->format;
 }
@@ -569,17 +569,17 @@ cairo_image_surface_get_format (cairo_su
  *
  * Return value: the width of the surface in pixels.
  **/
 int
 cairo_image_surface_get_width (cairo_surface_t *surface)
 {
     cairo_image_surface_t *image_surface = (cairo_image_surface_t *) surface;
 
-    if (!_cairo_surface_is_image (surface)) {
+    if (! _cairo_surface_is_image (surface)) {
 	_cairo_error_throw (CAIRO_STATUS_SURFACE_TYPE_MISMATCH);
 	return 0;
     }
 
     return image_surface->width;
 }
 slim_hidden_def (cairo_image_surface_get_width);
 
@@ -591,17 +591,17 @@ slim_hidden_def (cairo_image_surface_get
  *
  * Return value: the height of the surface in pixels.
  **/
 int
 cairo_image_surface_get_height (cairo_surface_t *surface)
 {
     cairo_image_surface_t *image_surface = (cairo_image_surface_t *) surface;
 
-    if (!_cairo_surface_is_image (surface)) {
+    if (! _cairo_surface_is_image (surface)) {
 	_cairo_error_throw (CAIRO_STATUS_SURFACE_TYPE_MISMATCH);
 	return 0;
     }
 
     return image_surface->height;
 }
 slim_hidden_def (cairo_image_surface_get_height);
 
@@ -619,17 +619,17 @@ slim_hidden_def (cairo_image_surface_get
  * Since: 1.2
  **/
 int
 cairo_image_surface_get_stride (cairo_surface_t *surface)
 {
 
     cairo_image_surface_t *image_surface = (cairo_image_surface_t *) surface;
 
-    if (!_cairo_surface_is_image (surface)) {
+    if (! _cairo_surface_is_image (surface)) {
 	_cairo_error_throw (CAIRO_STATUS_SURFACE_TYPE_MISMATCH);
 	return 0;
     }
 
     return image_surface->stride;
 }
 
 cairo_format_t
@@ -789,17 +789,17 @@ static cairo_status_t
 static cairo_status_t
 _cairo_image_surface_set_matrix (cairo_image_surface_t	*surface,
 				 const cairo_matrix_t	*matrix)
 {
     pixman_transform_t pixman_transform;
 
     _cairo_matrix_to_pixman_matrix (matrix, &pixman_transform);
 
-    if (!pixman_image_set_transform (surface->pixman_image, &pixman_transform))
+    if (! pixman_image_set_transform (surface->pixman_image, &pixman_transform))
 	return _cairo_error (CAIRO_STATUS_NO_MEMORY);
 
     return CAIRO_STATUS_SUCCESS;
 }
 
 static void
 _cairo_image_surface_set_filter (cairo_image_surface_t *surface, cairo_filter_t filter)
 {
@@ -969,17 +969,17 @@ static cairo_int_status_t
 				dst->pixman_image,
 				src_x + src_attr.x_offset,
 				src_y + src_attr.y_offset,
 				0, 0,
 				dst_x, dst_y,
 				width, height);
     }
 
-    if (!_cairo_operator_bounded_by_source (op))
+    if (! _cairo_operator_bounded_by_source (op))
 	status = _cairo_surface_composite_fixup_unbounded (&dst->base,
 							   &src_attr, src->width, src->height,
 							   mask ? &mask_attr : NULL,
 							   mask ? mask->width : 0,
 							   mask ? mask->height : 0,
 							   src_x, src_y,
 							   mask_x, mask_y,
 							   dst_x, dst_y, width, height);
@@ -1009,31 +1009,31 @@ static cairo_int_status_t
 
     cairo_int_status_t status = CAIRO_STATUS_SUCCESS;
 
     pixman_color.red   = color->red_short;
     pixman_color.green = color->green_short;
     pixman_color.blue  = color->blue_short;
     pixman_color.alpha = color->alpha_short;
 
-    if (num_rects > ARRAY_LENGTH(stack_rects)) {
-	pixman_rects = _cairo_malloc_ab (num_rects, sizeof(pixman_rectangle16_t));
+    if (num_rects > ARRAY_LENGTH (stack_rects)) {
+	pixman_rects = _cairo_malloc_ab (num_rects, sizeof (pixman_rectangle16_t));
 	if (pixman_rects == NULL)
 	    return _cairo_error (CAIRO_STATUS_NO_MEMORY);
-    }		 
+    }
 
     for (i = 0; i < num_rects; i++) {
 	pixman_rects[i].x = rects[i].x;
 	pixman_rects[i].y = rects[i].y;
 	pixman_rects[i].width = rects[i].width;
 	pixman_rects[i].height = rects[i].height;
     }
 
     /* XXX: pixman_fill_rectangles() should be implemented */
-    if (!pixman_image_fill_rectangles (_pixman_operator(op),
+    if (! pixman_image_fill_rectangles (_pixman_operator (op),
 				       surface->pixman_image,
 				       &pixman_color,
 				       num_rects,
 				       pixman_rects)) {
 	status = _cairo_error (CAIRO_STATUS_NO_MEMORY);
     }
 
     if (pixman_rects != stack_rects)
@@ -1068,18 +1068,18 @@ static cairo_int_status_t
     int				 mask_stride;
     int				 mask_bpp;
     int				 ret, i;
 
     if (height == 0 || width == 0)
 	return CAIRO_STATUS_SUCCESS;
 
     /* Convert traps to pixman traps */
-    if (num_traps > ARRAY_LENGTH(stack_traps)) {
-	pixman_traps = _cairo_malloc_ab (num_traps, sizeof(pixman_trapezoid_t));
+    if (num_traps > ARRAY_LENGTH (stack_traps)) {
+	pixman_traps = _cairo_malloc_ab (num_traps, sizeof (pixman_trapezoid_t));
 	if (pixman_traps == NULL)
 	    return _cairo_error (CAIRO_STATUS_NO_MEMORY);
     }
 
     for (i = 0; i < num_traps; i++) {
 	pixman_traps[i].top = _cairo_fixed_to_16_16 (traps[i].top);
 	pixman_traps[i].bottom = _cairo_fixed_to_16_16 (traps[i].bottom);
 	pixman_traps[i].left.p1.x = _cairo_fixed_to_16_16 (traps[i].left.p1.x);
@@ -1103,17 +1103,17 @@ static cairo_int_status_t
      * functioning, since pixman_add_trapezoids() doesn't obey the
      * surface clip, which is a libpixman bug , but there's no harm in
      * falling through to the general case when the surface is clipped
      * since libpixman would have to generate an intermediate mask anyways.
      */
     if (op == CAIRO_OPERATOR_ADD &&
 	_cairo_pattern_is_opaque_solid (pattern) &&
 	dst->base.content == CAIRO_CONTENT_ALPHA &&
-	!dst->has_clip &&
+	! dst->has_clip &&
 	antialias != CAIRO_ANTIALIAS_NONE)
     {
 	pixman_add_trapezoids (dst->pixman_image, 0, 0,
 			       num_traps, pixman_traps);
 	status = CAIRO_STATUS_SUCCESS;
 	goto finish;
     }
 
@@ -1129,26 +1129,26 @@ static cairo_int_status_t
 	goto CLEANUP_SOURCE;
 
     switch (antialias) {
     case CAIRO_ANTIALIAS_NONE:
 	format = PIXMAN_a1;
 	ret = 1;
 	mask_stride = ((width + 31) / 8) & ~0x03;
 	mask_bpp = 1;
- 	break;
+	break;
     case CAIRO_ANTIALIAS_GRAY:
     case CAIRO_ANTIALIAS_SUBPIXEL:
     case CAIRO_ANTIALIAS_DEFAULT:
     default:
 	format = PIXMAN_a8;
 	ret = 1;
 	mask_stride = (width + 3) & ~3;
 	mask_bpp = 8;
- 	break;
+	break;
     }
 
     /* The image must be initially transparent */
     mask_data = calloc (mask_stride, height);
     if (mask_data == NULL) {
 	status = _cairo_error (CAIRO_STATUS_NO_MEMORY);
 	goto CLEANUP_SOURCE;
     }
@@ -1168,17 +1168,17 @@ static cairo_int_status_t
 			    mask,
 			    dst->pixman_image,
 			    src_x + attributes.x_offset,
 			    src_y + attributes.y_offset,
 			    0, 0,
 			    dst_x, dst_y,
 			    width, height);
 
-    if (!_cairo_operator_bounded_by_mask (op))
+    if (! _cairo_operator_bounded_by_mask (op))
 	status = _cairo_surface_composite_shape_fixup_unbounded (&dst->base,
 								 &attributes, src->width, src->height,
 								 width, height,
 								 src_x, src_y,
 								 0, 0,
 								 dst_x, dst_y, width, height);
     pixman_image_unref (mask);
 
@@ -1196,17 +1196,17 @@ static cairo_int_status_t
 }
 
 cairo_int_status_t
 _cairo_image_surface_set_clip_region (void *abstract_surface,
 				      cairo_region_t *region)
 {
     cairo_image_surface_t *surface = (cairo_image_surface_t *) abstract_surface;
 
-    if (!pixman_image_set_clip_region (surface->pixman_image, &region->rgn))
+    if (! pixman_image_set_clip_region (surface->pixman_image, &region->rgn))
 	return _cairo_error (CAIRO_STATUS_NO_MEMORY);
 
     surface->has_clip = region != NULL;
 
     return CAIRO_STATUS_SUCCESS;
 }
 
 static cairo_int_status_t
--- a/gfx/cairo/cairo/src/cairo-matrix.c
+++ b/gfx/cairo/cairo/src/cairo-matrix.c
@@ -33,17 +33,17 @@
  * Contributor(s):
  *	Carl D. Worth <cworth@cworth.org>
  */
 
 #define _GNU_SOURCE
 
 #include "cairoint.h"
 
-#if _XOPEN_SOURCE >= 600 || defined(_ISOC99_SOURCE)
+#if _XOPEN_SOURCE >= 600 || defined (_ISOC99_SOURCE)
 #define ISFINITE(x) isfinite (x)
 #else
 #define ISFINITE(x) ((x) * (x) >= 0.) /* check for NaNs */
 #endif
 
 static void
 _cairo_matrix_scalar_multiply (cairo_matrix_t *matrix, double scalar);
 
--- a/gfx/cairo/cairo/src/cairo-meta-surface.c
+++ b/gfx/cairo/cairo/src/cairo-meta-surface.c
@@ -1,8 +1,9 @@
+/* -*- Mode: c; tab-width: 8; c-basic-offset: 4; indent-tabs-mode: t; -*- */
 /* cairo - a vector graphics library with display and print output
  *
  * Copyright © 2005 Red Hat, Inc
  * Copyright © 2007 Adrian Johnson
  *
  * This library is free software; you can redistribute it and/or
  * modify it either under the terms of the GNU Lesser General Public
  * License version 2.1 as published by the Free Software Foundation
@@ -657,17 +658,16 @@ static cairo_status_t
     cairo_meta_surface_t *meta;
     cairo_command_t *command, **elements;
     int i, num_elements;
     cairo_int_status_t status;
     cairo_clip_t clip;
     cairo_bool_t has_device_transform = _cairo_surface_has_device_transform (target);
     cairo_matrix_t *device_transform = &target->device_transform;
     cairo_path_fixed_t path_copy, *dev_path;
-    double tolerance_multiplier = _cairo_matrix_transformed_circle_major_axis (device_transform, 1.0);
 
     if (surface->status)
 	return surface->status;
 
     if (target->status)
 	return _cairo_surface_set_error (surface, target->status);
 
     meta = (cairo_meta_surface_t *) surface;
@@ -730,17 +730,17 @@ static cairo_status_t
 
 	    status = _cairo_surface_stroke (target,
 					    command->stroke.op,
 					    &command->stroke.source.base,
 					    dev_path,
 					    &command->stroke.style,
 					    &dev_ctm,
 					    &dev_ctm_inverse,
-					    command->stroke.tolerance * tolerance_multiplier,
+					    command->stroke.tolerance,
 					    command->stroke.antialias);
 	    break;
 	}
 	case CAIRO_COMMAND_FILL:
 	{
 	    cairo_command_t *stroke_command;
 
 	    stroke_command = (i < num_elements - 1) ? elements[i + 1] : NULL;
@@ -767,85 +767,90 @@ static cairo_status_t
 		    assert (status == CAIRO_STATUS_SUCCESS);
 		    cairo_matrix_multiply (&dev_ctm_inverse, &tmp, &dev_ctm_inverse);
 		}
 
 		status = _cairo_surface_fill_stroke (target,
 						     command->fill.op,
 						     &command->fill.source.base,
 						     command->fill.fill_rule,
-						     command->fill.tolerance * tolerance_multiplier,
+						     command->fill.tolerance,
 						     command->fill.antialias,
 						     dev_path,
 						     stroke_command->stroke.op,
 						     &stroke_command->stroke.source.base,
 						     &stroke_command->stroke.style,
 						     &dev_ctm,
 						     &dev_ctm_inverse,
-						     stroke_command->stroke.tolerance * tolerance_multiplier,
+						     stroke_command->stroke.tolerance,
 						     stroke_command->stroke.antialias);
 		i++;
 		if (type == CAIRO_META_CREATE_REGIONS) {
 		    if (status == CAIRO_STATUS_SUCCESS) {
 			stroke_command->header.region = CAIRO_META_REGION_NATIVE;
 		    } else if (status == CAIRO_INT_STATUS_IMAGE_FALLBACK) {
 			stroke_command->header.region = CAIRO_META_REGION_IMAGE_FALLBACK;
 			status = CAIRO_STATUS_SUCCESS;
 		    }
 		}
 	    } else
 		status = _cairo_surface_fill (target,
 					      command->fill.op,
 					      &command->fill.source.base,
 					      dev_path,
 					      command->fill.fill_rule,
-					      command->fill.tolerance * tolerance_multiplier,
+					      command->fill.tolerance,
 					      command->fill.antialias);
 	    break;
 	}
 	case CAIRO_COMMAND_SHOW_GLYPHS:
 	{
 	    cairo_glyph_t *glyphs = command->show_glyphs.glyphs;
-	    cairo_glyph_t *dev_glyphs = glyphs;
+	    cairo_glyph_t *dev_glyphs;
 	    int i, num_glyphs = command->show_glyphs.num_glyphs;
 
+            /* show_glyphs is special because _cairo_surface_show_glyphs is allowed
+	     * to modify the glyph array that's passed in.  We must always
+	     * copy the array before handing it to the backend.
+	     */
+	    dev_glyphs = _cairo_malloc_ab (num_glyphs, sizeof (cairo_glyph_t));
+	    if (dev_glyphs == NULL) {
+		status = _cairo_error (CAIRO_STATUS_NO_MEMORY);
+		break;
+	    }
+
 	    if (has_device_transform) {
-		dev_glyphs = _cairo_malloc_ab (num_glyphs, sizeof (cairo_glyph_t));
-		if (dev_glyphs == NULL) {
-		    status = _cairo_error (CAIRO_STATUS_NO_MEMORY);
-		    break;
-		}
 		for (i = 0; i < num_glyphs; i++) {
 		    dev_glyphs[i] = glyphs[i];
 		    cairo_matrix_transform_point (device_transform,
 						  &dev_glyphs[i].x,
 						  &dev_glyphs[i].y);
 		}
+	    } else {
+		memcpy (dev_glyphs, glyphs, sizeof (cairo_glyph_t) * num_glyphs);
 	    }
 
 	    status = _cairo_surface_show_glyphs	(target,
 						 command->show_glyphs.op,
 						 &command->show_glyphs.source.base,
 						 dev_glyphs, num_glyphs,
 						 command->show_glyphs.scaled_font);
 
-	    if (dev_glyphs != glyphs)
-		free (dev_glyphs);
-
+	    free (dev_glyphs);
 	    break;
 	}
 	case CAIRO_COMMAND_INTERSECT_CLIP_PATH:
 	    /* XXX Meta surface clipping is broken and requires some
 	     * cairo-gstate.c rewriting.  Work around it for now. */
 	    if (dev_path == NULL)
 		_cairo_clip_reset (&clip);
 	    else
 		status = _cairo_clip_clip (&clip, dev_path,
 					   command->intersect_clip_path.fill_rule,
-					   command->intersect_clip_path.tolerance * tolerance_multiplier,
+					   command->intersect_clip_path.tolerance,
 					   command->intersect_clip_path.antialias,
 					   target);
             assert (status == 0);
 	    break;
 	default:
 	    ASSERT_NOT_REACHED;
 	}
 
--- a/gfx/cairo/cairo/src/cairo-output-stream.c
+++ b/gfx/cairo/cairo/src/cairo-output-stream.c
@@ -31,26 +31,23 @@
  *
  * Author(s):
  *	Kristian H√łgsberg <krh@redhat.com>
  */
 
 #include "cairoint.h"
 
 #include "cairo-output-stream-private.h"
+#include "cairo-compiler-private.h"
 
 #include <stdio.h>
 #include <locale.h>
 #include <ctype.h>
 #include <errno.h>
 
-#ifdef _MSC_VER
-#define snprintf _snprintf
-#endif /* _MSC_VER */
-
 
 void
 _cairo_output_stream_init (cairo_output_stream_t            *stream,
 			   cairo_output_stream_write_func_t  write_func,
 			   cairo_output_stream_close_func_t  close_func)
 {
     stream->write_func = write_func;
     stream->close_func = close_func;
--- a/gfx/cairo/cairo/src/cairo-paginated-surface.c
+++ b/gfx/cairo/cairo/src/cairo-paginated-surface.c
@@ -329,16 +329,17 @@ static cairo_int_status_t
             has_finegrained_fallback = _cairo_analysis_surface_has_unsupported (analysis);
             break;
 
 	case CAIRO_SURFACE_TYPE_IMAGE:
 	case CAIRO_SURFACE_TYPE_XLIB:
 	case CAIRO_SURFACE_TYPE_XCB:
 	case CAIRO_SURFACE_TYPE_GLITZ:
 	case CAIRO_SURFACE_TYPE_QUARTZ:
+	case CAIRO_SURFACE_TYPE_QUARTZ_IMAGE:
 	case CAIRO_SURFACE_TYPE_WIN32:
 	case CAIRO_SURFACE_TYPE_BEOS:
 	case CAIRO_SURFACE_TYPE_DIRECTFB:
 	case CAIRO_SURFACE_TYPE_SVG:
 	case CAIRO_SURFACE_TYPE_OS2:
         default:
             if (_cairo_analysis_surface_has_unsupported (analysis)) {
                 has_supported = FALSE;
--- a/gfx/cairo/cairo/src/cairo-path-bounds.c
+++ b/gfx/cairo/cairo/src/cairo-path-bounds.c
@@ -133,42 +133,42 @@ static cairo_status_t
 
 static cairo_status_t
 _cairo_path_bounder_close_path (void *closure)
 {
     return CAIRO_STATUS_SUCCESS;
 }
 
 /* XXX: Perhaps this should compute a PixRegion rather than 4 doubles */
-void
+cairo_status_t
 _cairo_path_fixed_bounds (cairo_path_fixed_t *path,
 			  double *x1, double *y1,
 			  double *x2, double *y2,
 			  double tolerance)
 {
+    cairo_path_bounder_t bounder;
     cairo_status_t status;
 
-    cairo_path_bounder_t bounder;
-
     _cairo_path_bounder_init (&bounder);
 
     status = _cairo_path_fixed_interpret_flat (path, CAIRO_DIRECTION_FORWARD,
 					       _cairo_path_bounder_move_to,
 					       _cairo_path_bounder_line_to,
 					       _cairo_path_bounder_close_path,
 					       &bounder,
 					       tolerance);
-    assert (status == CAIRO_STATUS_SUCCESS);
 
-    if (bounder.has_point) {
+    if (status == CAIRO_STATUS_SUCCESS && bounder.has_point) {
 	*x1 = _cairo_fixed_to_double (bounder.min_x);
 	*y1 = _cairo_fixed_to_double (bounder.min_y);
 	*x2 = _cairo_fixed_to_double (bounder.max_x);
 	*y2 = _cairo_fixed_to_double (bounder.max_y);
     } else {
 	*x1 = 0.0;
 	*y1 = 0.0;
 	*x2 = 0.0;
 	*y2 = 0.0;
     }
 
     _cairo_path_bounder_fini (&bounder);
+
+    return status;
 }
--- a/gfx/cairo/cairo/src/cairo-path-fill.c
+++ b/gfx/cairo/cairo/src/cairo-path-fill.c
@@ -209,77 +209,15 @@ BAIL:
  *
  * If the path described anything but a device-axis aligned rectangle,
  * this function will return %CAIRO_INT_STATUS_UNSUPPORTED.
  */
 static cairo_int_status_t
 _cairo_path_fixed_fill_rectangle (cairo_path_fixed_t	*path,
 				  cairo_traps_t		*traps)
 {
-    cairo_path_buf_t *buf = &path->buf_head.base;
-    int final;
-
-    /* Ensure the path has the operators we expect for a rectangular path.
-     */
-    if (buf == NULL || buf->num_ops < 5)
-	return CAIRO_INT_STATUS_UNSUPPORTED;
-
-    if (buf->op[0] != CAIRO_PATH_OP_MOVE_TO ||
-	buf->op[1] != CAIRO_PATH_OP_LINE_TO ||
-	buf->op[2] != CAIRO_PATH_OP_LINE_TO ||
-	buf->op[3] != CAIRO_PATH_OP_LINE_TO)
-    {
-	return CAIRO_INT_STATUS_UNSUPPORTED;
-    }
-
-    /* Now, there are choices. The rectangle might end with a LINE_TO
-     * (to the original point), but this isn't required. If it
-     * doesn't, then it must end with a CLOSE_PATH. */
-    if (buf->op[4] == CAIRO_PATH_OP_LINE_TO) {
-	if (buf->points[4].x != buf->points[0].x ||
-	    buf->points[4].y != buf->points[0].y)
-	{
-	    return CAIRO_INT_STATUS_UNSUPPORTED;
-	}
-    } else if (buf->op[4] != CAIRO_PATH_OP_CLOSE_PATH) {
-	return CAIRO_INT_STATUS_UNSUPPORTED;
-    }
-
-    /* Finally, a trailing CLOSE_PATH or MOVE_TO after the rectangle
-     * is fine. But anything more than that means we must return
-     * unsupported. */
-    final = 5;
-    if (final < buf->num_ops &&
-	buf->op[final] == CAIRO_PATH_OP_CLOSE_PATH)
-    {
-	final++;
-    }
-    if (final < buf->num_ops &&
-	buf->op[final] == CAIRO_PATH_OP_MOVE_TO)
-    {
-	final++;
-    }
-    if (final < buf->num_ops)
-	return CAIRO_INT_STATUS_UNSUPPORTED;
-
-    /* Now that we've verified the operators, we must ensure that the
-     * path coordinates are consistent with a rectangle. There are two
-     * choices here. */
-    if (buf->points[0].y == buf->points[1].y &&
-	buf->points[1].x == buf->points[2].x &&
-	buf->points[2].y == buf->points[3].y &&
-	buf->points[3].x == buf->points[0].x)
-    {
+    if (_cairo_path_fixed_is_box (path, NULL)) {
 	return _cairo_traps_tessellate_convex_quad (traps,
-						    buf->points);
-    }
-
-    if (buf->points[0].x == buf->points[1].x &&
-	buf->points[1].y == buf->points[2].y &&
-	buf->points[2].x == buf->points[3].x &&
-	buf->points[3].y == buf->points[0].y)
-    {
-	return _cairo_traps_tessellate_convex_quad (traps,
-						    buf->points);
+                                                    path->buf_head.base.points);
     }
 
     return CAIRO_INT_STATUS_UNSUPPORTED;
 }
--- a/gfx/cairo/cairo/src/cairo-path-fixed.c
+++ b/gfx/cairo/cairo/src/cairo-path-fixed.c
@@ -716,8 +716,113 @@ cairo_status_t
     flattener.closure = closure;
     return _cairo_path_fixed_interpret (path, dir,
 					_cpf_move_to,
 					_cpf_line_to,
 					_cpf_curve_to,
 					_cpf_close_path,
 					&flattener);
 }
+
+cairo_bool_t
+_cairo_path_fixed_is_empty (cairo_path_fixed_t *path)
+{
+    if (path->buf_head.base.num_ops == 0)
+	return TRUE;
+
+    return FALSE;
+}
+
+/**
+ * Check whether the given path contains a single rectangle.
+ */
+cairo_bool_t
+_cairo_path_fixed_is_box (cairo_path_fixed_t *path,
+			  cairo_box_t *box)
+{
+    cairo_path_buf_t *buf = &path->buf_head.base;
+
+    /* We can't have more than one buf for this check */
+    if (buf->next != NULL)
+	return FALSE;
+
+    /* Do we have the right number of ops? */
+    if (buf->num_ops != 5 && buf->num_ops != 6)
+	return FALSE;
+
+    /* Check whether the ops are those that would be used for a rectangle */
+    if (buf->op[0] != CAIRO_PATH_OP_MOVE_TO ||
+	buf->op[1] != CAIRO_PATH_OP_LINE_TO ||
+	buf->op[2] != CAIRO_PATH_OP_LINE_TO ||
+	buf->op[3] != CAIRO_PATH_OP_LINE_TO)
+    {
+	return FALSE;
+    }
+
+    /* Now, there are choices. The rectangle might end with a LINE_TO
+     * (to the original point), but this isn't required. If it
+     * doesn't, then it must end with a CLOSE_PATH. */
+    if (buf->op[4] == CAIRO_PATH_OP_LINE_TO) {
+	if (buf->points[4].x != buf->points[0].x ||
+	    buf->points[4].y != buf->points[0].y)
+	    return FALSE;
+    } else if (buf->op[4] != CAIRO_PATH_OP_CLOSE_PATH) {
+	return FALSE;
+    }
+
+    if (buf->num_ops == 6) {
+	/* A trailing CLOSE_PATH or MOVE_TO is ok */
+	if (buf->op[5] != CAIRO_PATH_OP_MOVE_TO &&
+	    buf->op[5] != CAIRO_PATH_OP_CLOSE_PATH)
+	    return FALSE;
+    }
+
+    /* Ok, we may have a box, if the points line up */
+    if (buf->points[0].y == buf->points[1].y &&
+	buf->points[1].x == buf->points[2].x &&
+	buf->points[2].y == buf->points[3].y &&
+	buf->points[3].x == buf->points[0].x)
+    {
+	if (box) {
+	    box->p1 = buf->points[0];
+	    box->p2 = buf->points[2];
+	}
+	return TRUE;
+    }
+
+    if (buf->points[0].x == buf->points[1].x &&
+	buf->points[1].y == buf->points[2].y &&
+	buf->points[2].x == buf->points[3].x &&
+	buf->points[3].y == buf->points[0].y)
+    {
+	if (box) {
+	    box->p1 = buf->points[0];
+	    box->p2 = buf->points[2];
+	}
+	return TRUE;
+    }
+
+    return FALSE;
+}
+
+/**
+ * Check whether the given path contains a single rectangle
+ * that is logically equivalent to:
+ *   cairo_move_to (cr, x, y);
+ *   cairo_rel_line_to (cr, width, 0);
+ *   cairo_rel_line_to (cr, 0, height);
+ *   cairo_rel_line_to (cr, -width, 0);
+ *   cairo_close_path (cr);
+ */
+cairo_bool_t
+_cairo_path_fixed_is_rectangle (cairo_path_fixed_t *path,
+				cairo_box_t        *box)
+{
+    cairo_path_buf_t *buf = &path->buf_head.base;
+
+    if (!_cairo_path_fixed_is_box (path, box))
+	return FALSE;
+
+    if (buf->points[0].y == buf->points[1].y)
+	return TRUE;
+
+    return FALSE;
+}
--- a/gfx/cairo/cairo/src/cairo-path-stroke.c
+++ b/gfx/cairo/cairo/src/cairo-path-stroke.c
@@ -230,17 +230,17 @@ static void
 static int
 _cairo_stroker_face_clockwise (cairo_stroke_face_t *in, cairo_stroke_face_t *out)
 {
     cairo_slope_t in_slope, out_slope;
 
     _cairo_slope_init (&in_slope, &in->point, &in->cw);
     _cairo_slope_init (&out_slope, &out->point, &out->cw);
 
-    return _cairo_slope_clockwise (&in_slope, &out_slope);
+    return _cairo_slope_compare (&in_slope, &out_slope) < 0;
 }
 
 /**
  * _cairo_slope_compare_sgn
  *
  * Return -1, 0 or 1 depending on the relative slopes of
  * two lines.
  */
--- a/gfx/cairo/cairo/src/cairo-pdf-operators-private.h
+++ b/gfx/cairo/cairo/src/cairo-pdf-operators-private.h
@@ -92,17 +92,17 @@ cairo_private cairo_int_status_t
 			     cairo_matrix_t		*ctm,
 			     cairo_matrix_t		*ctm_inverse);
 
 cairo_private cairo_int_status_t
 _cairo_pdf_operators_fill (cairo_pdf_operators_t 	*pdf_operators,
 			   cairo_path_fixed_t		*path,
 			   cairo_fill_rule_t	 	fill_rule);
 
-cairo_int_status_t
+cairo_private cairo_int_status_t
 _cairo_pdf_operators_fill_stroke (cairo_pdf_operators_t 	*pdf_operators,
 				  cairo_path_fixed_t		*path,
 				  cairo_fill_rule_t	 	 fill_rule,
 				  cairo_stroke_style_t	        *style,
 				  cairo_matrix_t		*ctm,
 				  cairo_matrix_t		*ctm_inverse);
 
 cairo_private cairo_int_status_t
--- a/gfx/cairo/cairo/src/cairo-pdf-operators.c
+++ b/gfx/cairo/cairo/src/cairo-pdf-operators.c
@@ -318,17 +318,34 @@ static cairo_status_t
 
     if (info->line_cap != CAIRO_LINE_CAP_ROUND &&
 	! info->has_sub_path)
     {
 	return CAIRO_STATUS_SUCCESS;
     }
 
     _cairo_output_stream_printf (info->output,
-				 "h\r\n");
+				 "h\n");
+
+    return _cairo_output_stream_get_status (info->output);
+}
+
+static cairo_status_t
+_cairo_pdf_path_rectangle (pdf_path_info_t *info, cairo_box_t *box)
+{
+    double x1 = _cairo_fixed_to_double (box->p1.x);
+    double y1 = _cairo_fixed_to_double (box->p1.y);
+    double x2 = _cairo_fixed_to_double (box->p2.x);
+    double y2 = _cairo_fixed_to_double (box->p2.y);
+
+    cairo_matrix_transform_point (info->path_transform, &x1, &y1);
+    cairo_matrix_transform_point (info->path_transform, &x2, &y2);
+    _cairo_output_stream_printf (info->output,
+				 "%f %f %f %f re ",
+				 x1, y1, x2 - x1, y2 - y1);
 
     return _cairo_output_stream_get_status (info->output);
 }
 
 /* The line cap value is needed to workaround the fact that PostScript
  * and PDF semantics for stroking degenerate sub-paths do not match
  * cairo semantics. (PostScript draws something for any line cap
  * value, while cairo draws something only for round caps).
@@ -341,32 +358,37 @@ static cairo_status_t
 _cairo_pdf_operators_emit_path (cairo_pdf_operators_t 	*pdf_operators,
 				cairo_path_fixed_t      *path,
 				cairo_matrix_t          *path_transform,
 				cairo_line_cap_t         line_cap)
 {
     cairo_output_stream_t *word_wrap;
     cairo_status_t status, status2;
     pdf_path_info_t info;
+    cairo_box_t box;
 
     word_wrap = _word_wrap_stream_create (pdf_operators->stream, 79);
     status = _cairo_output_stream_get_status (word_wrap);
     if (status)
 	return status;
 
     info.output = word_wrap;
     info.path_transform = path_transform;
     info.line_cap = line_cap;
-    status = _cairo_path_fixed_interpret (path,
-					  CAIRO_DIRECTION_FORWARD,
-					  _cairo_pdf_path_move_to,
-					  _cairo_pdf_path_line_to,
-					  _cairo_pdf_path_curve_to,
-					  _cairo_pdf_path_close_path,
-					  &info);
+    if (_cairo_path_fixed_is_rectangle (path, &box)) {
+	status = _cairo_pdf_path_rectangle (&info, &box);
+    } else {
+	status = _cairo_path_fixed_interpret (path,
+					      CAIRO_DIRECTION_FORWARD,
+					      _cairo_pdf_path_move_to,
+					      _cairo_pdf_path_line_to,
+					      _cairo_pdf_path_curve_to,
+					      _cairo_pdf_path_close_path,
+					      &info);
+    }
 
     status2 = _cairo_output_stream_destroy (word_wrap);
     if (status == CAIRO_STATUS_SUCCESS)
 	status = status2;
 
     return status;
 }
 
@@ -397,17 +419,17 @@ cairo_int_status_t
     case CAIRO_FILL_RULE_EVEN_ODD:
 	pdf_operator = "W*";
 	break;
     default:
 	ASSERT_NOT_REACHED;
     }
 
     _cairo_output_stream_printf (pdf_operators->stream,
-				 "%s n\r\n",
+				 "%s n\n",
 				 pdf_operator);
 
     return _cairo_output_stream_get_status (pdf_operators->stream);
 }
 
 static int
 _cairo_pdf_line_cap (cairo_line_cap_t cap)
 {
@@ -507,37 +529,37 @@ static cairo_int_status_t
 		 * Set i to -2 so it will get incremented to 0. */
 		if (i == 2)
 		    i = -2;
 	    }
 	}
     }
 
     _cairo_output_stream_printf (pdf_operators->stream,
-				 "%f w\r\n",
+				 "%f w\n",
 				 style->line_width);
 
     _cairo_output_stream_printf (pdf_operators->stream,
-				 "%d J\r\n",
+				 "%d J\n",
 				 _cairo_pdf_line_cap (style->line_cap));
 
     _cairo_output_stream_printf (pdf_operators->stream,
-				 "%d j\r\n",
+				 "%d j\n",
 				 _cairo_pdf_line_join (style->line_join));
 
     if (num_dashes) {
 	int d;
 
 	_cairo_output_stream_printf (pdf_operators->stream, "[");
 	for (d = 0; d < num_dashes; d++)
 	    _cairo_output_stream_printf (pdf_operators->stream, " %f", dash[d]);
-	_cairo_output_stream_printf (pdf_operators->stream, "] %f d\r\n",
+	_cairo_output_stream_printf (pdf_operators->stream, "] %f d\n",
 				     dash_offset);
     } else {
-	_cairo_output_stream_printf (pdf_operators->stream, "[] 0.0 d\r\n");
+	_cairo_output_stream_printf (pdf_operators->stream, "[] 0.0 d\n");
     }
     if (dash != style->dash)
         free (dash);
 
     _cairo_output_stream_printf (pdf_operators->stream,
 				 "%f M ",
 				 style->miter_limit < 1.0 ? 1.0 : style->miter_limit);
 
@@ -558,28 +580,28 @@ cairo_int_status_t
     status = _cairo_pdf_operators_emit_stroke_style (pdf_operators, style);
     if (status == CAIRO_INT_STATUS_NOTHING_TO_DO)
 	return CAIRO_STATUS_SUCCESS;
     if (status)
 	return status;
 
     cairo_matrix_multiply (&m, ctm, &pdf_operators->cairo_to_pdf);
     _cairo_output_stream_printf (pdf_operators->stream,
-				 "q %f %f %f %f %f %f cm\r\n",
+				 "q %f %f %f %f %f %f cm\n",
 				 m.xx, m.yx, m.xy, m.yy,
 				 m.x0, m.y0);
 
     status = _cairo_pdf_operators_emit_path (pdf_operators,
 					     path,
 					     ctm_inverse,
 					     style->line_cap);
     if (status)
 	return status;
 
-    _cairo_output_stream_printf (pdf_operators->stream, "S Q\r\n");
+    _cairo_output_stream_printf (pdf_operators->stream, "S Q\n");
 
     return _cairo_output_stream_get_status (pdf_operators->stream);
 }
 
 cairo_int_status_t
 _cairo_pdf_operators_fill (cairo_pdf_operators_t	*pdf_operators,
 			   cairo_path_fixed_t		*path,
 			   cairo_fill_rule_t		fill_rule)
@@ -601,17 +623,17 @@ cairo_int_status_t
     case CAIRO_FILL_RULE_EVEN_ODD:
 	pdf_operator = "f*";
 	break;
     default:
 	ASSERT_NOT_REACHED;
     }
 
     _cairo_output_stream_printf (pdf_operators->stream,
-				 "%s\r\n",
+				 "%s\n",
 				 pdf_operator);
 
     return _cairo_output_stream_get_status (pdf_operators->stream);
 }
 
 cairo_int_status_t
 _cairo_pdf_operators_fill_stroke (cairo_pdf_operators_t 	*pdf_operators,
 				  cairo_path_fixed_t		*path,
@@ -627,17 +649,17 @@ cairo_int_status_t
     status = _cairo_pdf_operators_emit_stroke_style (pdf_operators, style);
     if (status == CAIRO_INT_STATUS_NOTHING_TO_DO)
 	return CAIRO_STATUS_SUCCESS;
     if (status)
 	return status;
 
     cairo_matrix_multiply (&m, ctm, &pdf_operators->cairo_to_pdf);
     _cairo_output_stream_printf (pdf_operators->stream,
-				 "q %f %f %f %f %f %f cm\r\n",
+				 "q %f %f %f %f %f %f cm\n",
 				 m.xx, m.yx, m.xy, m.yy,
 				 m.x0, m.y0);
 
     status = _cairo_pdf_operators_emit_path (pdf_operators,
 					     path,
 					     ctm_inverse,
 					     style->line_cap);
     if (status)
@@ -650,97 +672,101 @@ cairo_int_status_t
     case CAIRO_FILL_RULE_EVEN_ODD:
 	pdf_operator = "B*";
 	break;
     default:
 	ASSERT_NOT_REACHED;
     }
 
     _cairo_output_stream_printf (pdf_operators->stream,
-				 "%s Q\r\n",
+				 "%s Q\n",
 				 pdf_operator);
 
     return _cairo_output_stream_get_status (pdf_operators->stream);
 }
 
 #define GLYPH_POSITION_TOLERANCE 0.001
 
 cairo_int_status_t
 _cairo_pdf_operators_show_glyphs (cairo_pdf_operators_t		*pdf_operators,
 				  cairo_glyph_t			*glyphs,
 				  int				 num_glyphs,
 				  cairo_scaled_font_t		*scaled_font)
 {
     unsigned int current_subset_id = (unsigned int)-1;
     cairo_scaled_font_subsets_glyph_t subset_glyph;
     cairo_bool_t diagonal, in_TJ;
-    cairo_status_t status;
+    cairo_status_t status, status_ignored;
     double Tlm_x = 0, Tlm_y = 0;
     double Tm_x = 0, y;
     int i, hex_width;
     cairo_output_stream_t *word_wrap_stream;
 
     for (i = 0; i < num_glyphs; i++)
 	cairo_matrix_transform_point (&pdf_operators->cairo_to_pdf, &glyphs[i].x, &glyphs[i].y);
 
     word_wrap_stream = _word_wrap_stream_create (pdf_operators->stream, 79);
     status = _cairo_output_stream_get_status (word_wrap_stream);
     if (status)
 	return status;
 
     _cairo_output_stream_printf (word_wrap_stream,
-				 "BT\r\n");
+				 "BT\n");
 
     if (scaled_font->scale.xy == 0.0 &&
         scaled_font->scale.yx == 0.0)
         diagonal = TRUE;
     else
         diagonal = FALSE;
 
     in_TJ = FALSE;
     for (i = 0; i < num_glyphs; i++) {
         status = _cairo_scaled_font_subsets_map_glyph (pdf_operators->font_subsets,
                                                        scaled_font, glyphs[i].index,
                                                        &subset_glyph);
-	if (status)
+	if (status) {
+	    status_ignored = _cairo_output_stream_destroy (word_wrap_stream);
             return status;
+	}
 
         if (subset_glyph.is_composite)
             hex_width = 4;
         else
             hex_width = 2;
 
         if (subset_glyph.is_scaled == FALSE) {
             y = 0.0;
             cairo_matrix_transform_distance (&scaled_font->scale,
                                              &subset_glyph.x_advance,
                                              &y);
         }
 
 	if (subset_glyph.subset_id != current_subset_id) {
             if (in_TJ) {
-                _cairo_output_stream_printf (word_wrap_stream, ">] TJ\r\n");
+                _cairo_output_stream_printf (word_wrap_stream, ">] TJ\n");
                 in_TJ = FALSE;
             }
 	    _cairo_output_stream_printf (word_wrap_stream,
-					 "/f-%d-%d 1 Tf\r\n",
+					 "/f-%d-%d 1 Tf\n",
 					 subset_glyph.font_id,
 					 subset_glyph.subset_id);
 	    if (pdf_operators->use_font_subset) {
 		status = pdf_operators->use_font_subset (subset_glyph.font_id,
 							 subset_glyph.subset_id,
 							 pdf_operators->use_font_subset_closure);
-		if (status)
+		if (status) {
+		    status_ignored = _cairo_output_stream_destroy (word_wrap_stream);
 		    return status;
+		}
 	    }
         }
 
         if (subset_glyph.subset_id != current_subset_id || !diagonal) {
             _cairo_output_stream_printf (word_wrap_stream,
-                                         "%f %f %f %f %f %f Tm\r\n",
+                                         "%f %f %f %f %f %f Tm\n",
                                          scaled_font->scale.xx,
                                          -scaled_font->scale.yx,
                                          -scaled_font->scale.xy,
                                          scaled_font->scale.yy,
                                          glyphs[i].x,
                                          glyphs[i].y);
             current_subset_id = subset_glyph.subset_id;
             Tlm_x = glyphs[i].x;
@@ -751,17 +777,17 @@ cairo_int_status_t
         if (diagonal) {
             if (i < num_glyphs - 1 &&
                 fabs((glyphs[i].y - glyphs[i+1].y)/scaled_font->scale.yy) < GLYPH_POSITION_TOLERANCE &&
                 fabs((glyphs[i].x - glyphs[i+1].x)/scaled_font->scale.xx) < 10)
             {
                 if (!in_TJ) {
                     if (i != 0) {
                         _cairo_output_stream_printf (word_wrap_stream,
-                                                     "%f %f Td\r\n",
+                                                     "%f %f Td\n",
                                                      (glyphs[i].x - Tlm_x)/scaled_font->scale.xx,
                                                      (glyphs[i].y - Tlm_y)/scaled_font->scale.yy);
 
                         Tlm_x = glyphs[i].x;
                         Tlm_y = glyphs[i].y;
                         Tm_x = Tlm_x;
                     }
                     _cairo_output_stream_printf (word_wrap_stream,
@@ -793,17 +819,17 @@ cairo_int_status_t
                         double delta = glyphs[i].x - Tm_x;
 
                         _cairo_output_stream_printf (word_wrap_stream,
                                                      "> %f <",
                                                      -1000.0*delta/scaled_font->scale.xx);
                         Tm_x += delta;
                     }
                     _cairo_output_stream_printf (word_wrap_stream,
-                                                 "%0*x>] TJ\r\n",
+                                                 "%0*x>] TJ\n",
                                                  hex_width,
                                                  subset_glyph.subset_glyph_index);
                     Tm_x += subset_glyph.x_advance;
                     in_TJ = FALSE;
                 } else {
                     if (i != 0) {
                         _cairo_output_stream_printf (word_wrap_stream,
                                                      "%f %f Td ",
@@ -817,23 +843,23 @@ cairo_int_status_t
                                                  "<%0*x> Tj ",
                                                  hex_width,
                                                  subset_glyph.subset_glyph_index);
                     Tm_x += subset_glyph.x_advance;
                 }
             }
         } else {
             _cairo_output_stream_printf (word_wrap_stream,
-                                         "<%0*x> Tj\r\n",
+                                         "<%0*x> Tj\n",
                                          hex_width,
                                          subset_glyph.subset_glyph_index);
         }
     }
 
     _cairo_output_stream_printf (word_wrap_stream,
-				 "ET\r\n");
+				 "ET\n");
 
     status = _cairo_output_stream_destroy (word_wrap_stream);
     if (status)
 	return status;
 
     return _cairo_output_stream_get_status (pdf_operators->stream);
 }
--- a/gfx/cairo/cairo/src/cairo-pdf-surface.c
+++ b/gfx/cairo/cairo/src/cairo-pdf-surface.c
@@ -274,19 +274,19 @@ static cairo_surface_t *
 			       &surface->cairo_to_pdf,
 			       surface->font_subsets);
     _cairo_pdf_operators_set_font_subsets_callback (&surface->pdf_operators,
 						    _cairo_pdf_surface_add_font,
 						    surface);
 
     /* Document header */
     _cairo_output_stream_printf (surface->output,
-				 "%%PDF-1.4\r\n");
+				 "%%PDF-1.4\n");
     _cairo_output_stream_printf (surface->output,
-				 "%%%c%c%c%c\r\n", 181, 237, 174, 251);
+				 "%%%c%c%c%c\n", 181, 237, 174, 251);
 
     surface->paginated_surface =  _cairo_paginated_surface_create (
 	                                  &surface->base,
 					  CAIRO_CONTENT_COLOR_ALPHA,
 					  width, height,
 					  &cairo_pdf_surface_paginated_backend);
     status = surface->paginated_surface->status;
     if (status == CAIRO_STATUS_SUCCESS)
@@ -613,89 +613,89 @@ static void
 _cairo_pdf_surface_emit_group_resources (cairo_pdf_surface_t         *surface,
 					 cairo_pdf_group_resources_t *res)
 {
     int num_alphas, num_smasks, num_resources, i;
     double alpha;
     cairo_pdf_resource_t *smask, *pattern, *xobject;
     cairo_pdf_font_t *font;
 
-    _cairo_output_stream_printf (surface->output, "<<\r\n");
+    _cairo_output_stream_printf (surface->output, "<<\n");
 
     num_alphas = _cairo_array_num_elements (&res->alphas);
     num_smasks = _cairo_array_num_elements (&res->smasks);
     if (num_alphas > 0 || num_smasks > 0) {
 	_cairo_output_stream_printf (surface->output,
-				     "   /ExtGState <<\r\n");
+				     "   /ExtGState <<\n");
 
 	for (i = 0; i < num_alphas; i++) {
 	    _cairo_array_copy_element (&res->alphas, i, &alpha);
 	    _cairo_output_stream_printf (surface->output,
-					 "      /a%d << /CA %f /ca %f >>\r\n",
+					 "      /a%d << /CA %f /ca %f >>\n",
 					 i, alpha, alpha);
 	}
 
 	for (i = 0; i < num_smasks; i++) {
 	    smask = _cairo_array_index (&res->smasks, i);
 	    _cairo_output_stream_printf (surface->output,
-					 "      /s%d %d 0 R\r\n",
+					 "      /s%d %d 0 R\n",
 					 smask->id, smask->id);
 	}
 
 	_cairo_output_stream_printf (surface->output,
-				     "   >>\r\n");
+				     "   >>\n");
     }
 
     num_resources = _cairo_array_num_elements (&res->patterns);
     if (num_resources > 0) {
 	_cairo_output_stream_printf (surface->output,
 				     "   /Pattern <<");
 	for (i = 0; i < num_resources; i++) {
 	    pattern = _cairo_array_index (&res->patterns, i);
 	    _cairo_output_stream_printf (surface->output,
 					 " /p%d %d 0 R",
 					 pattern->id, pattern->id);
 	}
 
 	_cairo_output_stream_printf (surface->output,
-				     " >>\r\n");
+				     " >>\n");
     }
 
     num_resources = _cairo_array_num_elements (&res->xobjects);
     if (num_resources > 0) {
 	_cairo_output_stream_printf (surface->output,
 				     "   /XObject <<");
 
 	for (i = 0; i < num_resources; i++) {
 	    xobject = _cairo_array_index (&res->xobjects, i);
 	    _cairo_output_stream_printf (surface->output,
 					 " /x%d %d 0 R",
 					 xobject->id, xobject->id);
 	}
 
 	_cairo_output_stream_printf (surface->output,
-				     " >>\r\n");
+				     " >>\n");
     }
 
     num_resources = _cairo_array_num_elements (&res->fonts);
     if (num_resources > 0) {
-	_cairo_output_stream_printf (surface->output,"   /Font <<\r\n");
+	_cairo_output_stream_printf (surface->output,"   /Font <<\n");
 	for (i = 0; i < num_resources; i++) {
 	    font = _cairo_array_index (&res->fonts, i);
 	    _cairo_output_stream_printf (surface->output,
-					 "      /f-%d-%d %d 0 R\r\n",
+					 "      /f-%d-%d %d 0 R\n",
 					 font->font_id,
 					 font->subset_id,
 					 font->subset_resource.id);
 	}
-	_cairo_output_stream_printf (surface->output, "   >>\r\n");
+	_cairo_output_stream_printf (surface->output, "   >>\n");
     }
 
     _cairo_output_stream_printf (surface->output,
-				 ">>\r\n");
+				 ">>\n");
 }
 
 static cairo_pdf_smask_group_t *
 _cairo_pdf_surface_create_smask_group (cairo_pdf_surface_t	*surface)
 {
     cairo_pdf_smask_group_t	*group;
 
     group = calloc (1, sizeof (cairo_pdf_smask_group_t));
@@ -830,33 +830,33 @@ static cairo_status_t
     }
 
     surface->pdf_stream.active = TRUE;
     surface->pdf_stream.self = self;
     surface->pdf_stream.length = length;
     surface->pdf_stream.compressed = compressed;
 
     _cairo_output_stream_printf (surface->output,
-				 "%d 0 obj\r\n"
-				 "<< /Length %d 0 R\r\n",
+				 "%d 0 obj\n"
+				 "<< /Length %d 0 R\n",
 				 surface->pdf_stream.self.id,
 				 surface->pdf_stream.length.id);
     if (compressed)
 	_cairo_output_stream_printf (surface->output,
-				     "   /Filter /FlateDecode\r\n");
+				     "   /Filter /FlateDecode\n");
 
     if (fmt != NULL) {
 	va_start (ap, fmt);
 	_cairo_output_stream_vprintf (surface->output, fmt, ap);
 	va_end (ap);
     }
 
     _cairo_output_stream_printf (surface->output,
-				 ">>\r\n"
-				 "stream\r\n");
+				 ">>\n"
+				 "stream\n");
 
     surface->pdf_stream.start_offset = _cairo_output_stream_get_position (surface->output);
 
     if (compressed) {
 	assert (surface->pdf_stream.old_output == NULL);
         surface->pdf_stream.old_output = surface->output;
         surface->output = output;
 	_cairo_pdf_operators_set_stream (&surface->pdf_operators, surface->output);
@@ -875,31 +875,31 @@ static cairo_status_t
 	return CAIRO_STATUS_SUCCESS;
 
     if (surface->pdf_stream.compressed) {
 	status = _cairo_output_stream_destroy (surface->output);
 	surface->output = surface->pdf_stream.old_output;
 	_cairo_pdf_operators_set_stream (&surface->pdf_operators, surface->output);
 	surface->pdf_stream.old_output = NULL;
 	_cairo_output_stream_printf (surface->output,
-				     "\r\n");
+				     "\n");
     }
 
     length = _cairo_output_stream_get_position (surface->output) -
 	surface->pdf_stream.start_offset;
     _cairo_output_stream_printf (surface->output,
-				 "endstream\r\n"
-				 "endobj\r\n");
+				 "endstream\n"
+				 "endobj\n");
 
     _cairo_pdf_surface_update_object (surface,
 				      surface->pdf_stream.length);
     _cairo_output_stream_printf (surface->output,
-				 "%d 0 obj\r\n"
-				 "   %ld\r\n"
-				 "endobj\r\n",
+				 "%d 0 obj\n"
+				 "   %ld\n"
+				 "endobj\n",
 				 surface->pdf_stream.length.id,
 				 length);
 
     surface->pdf_stream.active = FALSE;
 
     if (status == CAIRO_STATUS_SUCCESS)
 	status = _cairo_output_stream_get_status (surface->output);
 
@@ -911,52 +911,52 @@ static void
 					cairo_output_stream_t       *mem_stream,
 					cairo_pdf_resource_t         resource,
 					cairo_pdf_group_resources_t *resources,
 					cairo_bool_t                 is_knockout_group)
 {
     _cairo_pdf_surface_update_object (surface, resource);
 
     _cairo_output_stream_printf (surface->output,
-				 "%d 0 obj\r\n"
-				 "<< /Type /XObject\r\n"
-				 "   /Length %d\r\n",
+				 "%d 0 obj\n"
+				 "<< /Type /XObject\n"
+				 "   /Length %d\n",
 				 resource.id,
 				 _cairo_memory_stream_length (mem_stream));
 
     if (surface->compress_content) {
 	_cairo_output_stream_printf (surface->output,
-				     "   /Filter /FlateDecode\r\n");
+				     "   /Filter /FlateDecode\n");
     }
 
     _cairo_output_stream_printf (surface->output,
-				 "   /Subtype /Form\r\n"
-				 "   /BBox [ 0 0 %f %f ]\r\n"
-				 "   /Group <<\r\n"
-				 "      /Type /Group\r\n"
-				 "      /S /Transparency\r\n"
-				 "      /CS /DeviceRGB\r\n",
+				 "   /Subtype /Form\n"
+				 "   /BBox [ 0 0 %f %f ]\n"
+				 "   /Group <<\n"
+				 "      /Type /Group\n"
+				 "      /S /Transparency\n"
+				 "      /CS /DeviceRGB\n",
 				 surface->width,
 				 surface->height);
 
     if (is_knockout_group)
         _cairo_output_stream_printf (surface->output,
-                                     "      /K true\r\n");
+                                     "      /K true\n");
 
     _cairo_output_stream_printf (surface->output,
-				 "   >>\r\n"
-				 "   /Resources\r\n");
+				 "   >>\n"
+				 "   /Resources\n");
     _cairo_pdf_surface_emit_group_resources (surface, resources);
     _cairo_output_stream_printf (surface->output,
-				 ">>\r\n"
-				 "stream\r\n");
+				 ">>\n"
+				 "stream\n");
     _cairo_memory_stream_copy (mem_stream, surface->output);
     _cairo_output_stream_printf (surface->output,
-				 "endstream\r\n"
-				 "endobj\r\n");
+				 "endstream\n"
+				 "endobj\n");
 }
 
 static cairo_status_t
 _cairo_pdf_surface_open_group (cairo_pdf_surface_t  *surface,
 			       cairo_pdf_resource_t *resource)
 {
     cairo_status_t status;
 
@@ -1015,17 +1015,17 @@ static cairo_status_t
     assert (surface->pdf_stream.active == FALSE);
     assert (surface->group_stream.active == TRUE);
 
     if (surface->compress_content) {
 	status = _cairo_output_stream_destroy (surface->group_stream.stream);
 	surface->group_stream.stream = NULL;
 
 	_cairo_output_stream_printf (surface->group_stream.mem_stream,
-				     "\r\n");
+				     "\n");
     }
     surface->output = surface->group_stream.old_output;
     _cairo_pdf_operators_set_stream (&surface->pdf_operators, surface->output);
     surface->group_stream.active = FALSE;
     _cairo_pdf_surface_write_memory_stream (surface,
 					    surface->group_stream.mem_stream,
 					    surface->group_stream.resource,
 					    &surface->resources,
@@ -1056,65 +1056,65 @@ static cairo_status_t
     if (surface->content_resources.id == 0)
 	return _cairo_error (CAIRO_STATUS_NO_MEMORY);
 
     if (is_form) {
 	status =
 	    _cairo_pdf_surface_open_stream (surface,
 					    NULL,
 					    surface->compress_content,
-					    "   /Type /XObject\r\n"
-					    "   /Subtype /Form\r\n"
-					    "   /BBox [ 0 0 %f %f ]\r\n"
-					    "   /Group <<\r\n"
-					    "      /Type /Group\r\n"
-					    "      /S /Transparency\r\n"
-					    "      /CS /DeviceRGB\r\n"
-					    "   >>\r\n"
-					    "   /Resources %d 0 R\r\n",
+					    "   /Type /XObject\n"
+					    "   /Subtype /Form\n"
+					    "   /BBox [ 0 0 %f %f ]\n"
+					    "   /Group <<\n"
+					    "      /Type /Group\n"
+					    "      /S /Transparency\n"
+					    "      /CS /DeviceRGB\n"
+					    "   >>\n"
+					    "   /Resources %d 0 R\n",
 					    surface->width,
 					    surface->height,
 					    surface->content_resources.id);
     } else {
 	status =
 	    _cairo_pdf_surface_open_stream (surface,
 					    NULL,
 					    surface->compress_content,
 					    NULL);
     }
     if (status)
 	return status;
 
     surface->content = surface->pdf_stream.self;
 
-    _cairo_output_stream_printf (surface->output, "q\r\n");
+    _cairo_output_stream_printf (surface->output, "q\n");
 
     return _cairo_output_stream_get_status (surface->output);
 }
 
 static cairo_status_t
 _cairo_pdf_surface_close_content_stream (cairo_pdf_surface_t *surface)
 {
     cairo_status_t status;
 
     assert (surface->pdf_stream.active == TRUE);
     assert (surface->group_stream.active == FALSE);
 
-    _cairo_output_stream_printf (surface->output, "Q\r\n");
+    _cairo_output_stream_printf (surface->output, "Q\n");
     status = _cairo_pdf_surface_close_stream (surface);
     if (status)
 	return status;
 
     _cairo_pdf_surface_update_object (surface, surface->content_resources);
     _cairo_output_stream_printf (surface->output,
-				 "%d 0 obj\r\n",
+				 "%d 0 obj\n",
 				 surface->content_resources.id);
     _cairo_pdf_surface_emit_group_resources (surface, &surface->resources);
     _cairo_output_stream_printf (surface->output,
-				 "endobj\r\n");
+				 "endobj\n");
 
     return _cairo_output_stream_get_status (surface->output);
 }
 
 static cairo_surface_t *
 _cairo_pdf_surface_create_similar (void			*abstract_surface,
 				   cairo_content_t	 content,
 				   int			 width,
@@ -1143,29 +1143,29 @@ static cairo_status_t
 
     catalog = _cairo_pdf_surface_write_catalog (surface);
     if (catalog.id == 0 && status == CAIRO_STATUS_SUCCESS)
 	status = _cairo_error (CAIRO_STATUS_NO_MEMORY);
 
     offset = _cairo_pdf_surface_write_xref (surface);
 
     _cairo_output_stream_printf (surface->output,
-				 "trailer\r\n"
-				 "<< /Size %d\r\n"
-				 "   /Root %d 0 R\r\n"
-				 "   /Info %d 0 R\r\n"
-				 ">>\r\n",
+				 "trailer\n"
+				 "<< /Size %d\n"
+				 "   /Root %d 0 R\n"
+				 "   /Info %d 0 R\n"
+				 ">>\n",
 				 surface->next_available_resource.id,
 				 catalog.id,
 				 info.id);
 
     _cairo_output_stream_printf (surface->output,
-				 "startxref\r\n"
-				 "%ld\r\n"
-				 "%%%%EOF\r\n",
+				 "startxref\n"
+				 "%ld\n"
+				 "%%%%EOF\n",
 				 offset);
 
      _cairo_pdf_operators_fini (&surface->pdf_operators);
 
     /* close any active streams still open due to fatal errors */
     status2 = _cairo_pdf_surface_close_stream (surface);
     if (status == CAIRO_STATUS_SUCCESS)
 	status = status2;
@@ -1317,22 +1317,22 @@ static cairo_status_t
 
     /* Bail out without emitting smask if it's all opaque. */
     if (opaque)
 	goto CLEANUP_ALPHA;
 
     status = _cairo_pdf_surface_open_stream (surface,
 					     NULL,
 					     TRUE,
-					     "   /Type /XObject\r\n"
-					     "   /Subtype /Image\r\n"
-					     "   /Width %d\r\n"
-					     "   /Height %d\r\n"
-					     "   /ColorSpace /DeviceGray\r\n"
-					     "   /BitsPerComponent %d\r\n",
+					     "   /Type /XObject\n"
+					     "   /Subtype /Image\n"
+					     "   /Width %d\n"
+					     "   /Height %d\n"
+					     "   /ColorSpace /DeviceGray\n"
+					     "   /BitsPerComponent %d\n",
 					     image->width, image->height,
 					     image->format == CAIRO_FORMAT_A1 ? 1 : 8);
     if (status)
 	goto CLEANUP_ALPHA;
 
     *stream_ret = surface->pdf_stream.self;
     _cairo_output_stream_write (surface->output, alpha, alpha_size);
     status = _cairo_pdf_surface_close_stream (surface);
@@ -1416,29 +1416,29 @@ static cairo_status_t
 	status = _cairo_pdf_surface_emit_smask (surface, image, &smask);
 	if (status)
 	    goto CLEANUP_RGB;
 
 	if (smask.id)
 	    need_smask = TRUE;
     }
 
-#define IMAGE_DICTIONARY	"   /Type /XObject\r\n"		\
-				"   /Subtype /Image\r\n"	\
-				"   /Width %d\r\n"		\
-				"   /Height %d\r\n"		\
-				"   /ColorSpace /DeviceRGB\r\n"	\
-				"   /BitsPerComponent 8\r\n"
+#define IMAGE_DICTIONARY	"   /Type /XObject\n"		\
+				"   /Subtype /Image\n"	\
+				"   /Width %d\n"		\
+				"   /Height %d\n"		\
+				"   /ColorSpace /DeviceRGB\n"	\
+				"   /BitsPerComponent 8\n"
 
     if (need_smask)
 	status = _cairo_pdf_surface_open_stream (surface,
 						 NULL,
 						 TRUE,
 						 IMAGE_DICTIONARY
-						 "   /SMask %d 0 R\r\n",
+						 "   /SMask %d 0 R\n",
 						 image->width, image->height,
 						 smask.id);
     else
 	status = _cairo_pdf_surface_open_stream (surface,
 						 NULL,
 						 TRUE,
 						 IMAGE_DICTIONARY,
 						 image->width, image->height);
@@ -1523,17 +1523,17 @@ static cairo_status_t
 
     *resource = surface->content;
     if (cairo_surface_get_content (meta_surface) == CAIRO_CONTENT_COLOR) {
 	status = _cairo_pdf_surface_add_alpha (surface, 1.0, &alpha);
 	if (status)
 	    goto CLEANUP_GROUP;
 
 	_cairo_output_stream_printf (surface->output,
-				     "q /a%d gs 0 0 0 rg 0 0 %f %f re f Q\r\n",
+				     "q /a%d gs 0 0 0 rg 0 0 %f %f re f Q\n",
 				     alpha,
 				     surface->width,
 				     surface->height);
     }
 
     status = _cairo_meta_surface_replay_region (meta_surface, &surface->base,
 						CAIRO_META_REGION_NATIVE);
     assert (status != CAIRO_INT_STATUS_UNSUPPORTED);
@@ -1688,65 +1688,65 @@ static cairo_status_t
     cairo_matrix_multiply (&pdf_p2d, &cairo_p2d, &pdf_p2d);
     cairo_matrix_translate (&pdf_p2d, 0.0, pattern_height);
     cair