<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>93111</bug_id>
          
          <creation_ts>2012-08-03 07:05:57 -0700</creation_ts>
          <short_desc>Implement the find-in-page match rects API</short_desc>
          <delta_ts>2012-08-21 08:31:55 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit API</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>93110</dependson>
          <blocked>66687</blocked>
    
    <blocked>93817</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Leandro Graciá Gil">leandrogracia</reporter>
          <assigned_to name="Leandro Graciá Gil">leandrogracia</assigned_to>
          <cc>abarth</cc>
    
    <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>finnur.webkit</cc>
    
    <cc>fishd</cc>
    
    <cc>hans</cc>
    
    <cc>jamesr</cc>
    
    <cc>jchaffraix</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yutak</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>686676</commentid>
    <comment_count>0</comment_count>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-03 07:05:57 -0700</bug_when>
    <thetext>The Android port allows tapping on the find-in-page result tickmarks taking the user to the corresponding matches. The required new methods should be added as stubs by bug 93110. This patch implements the functionality of such methods.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>686942</commentid>
    <comment_count>1</comment_count>
      <attachid>156414</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-03 10:46:45 -0700</bug_when>
    <thetext>Created attachment 156414
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>686945</commentid>
    <comment_count>2</comment_count>
      <attachid>156414</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-03 10:48:22 -0700</bug_when>
    <thetext>Comment on attachment 156414
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=156414&amp;action=review

&gt; Source/WebKit/chromium/public/WebFrame.h:580
&gt; +    // Returns a counter that is incremented when the find-in-page markers are

This patch needs to be rebased over the stubs introduced by 93110. Therefore, there will be no WebFrame.h changes. This will go away in the next update.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>686947</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-03 10:49:10 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>686951</commentid>
    <comment_count>4</comment_count>
      <attachid>156414</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2012-08-03 10:52:00 -0700</bug_when>
    <thetext>Comment on attachment 156414
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=156414&amp;action=review

&gt; Source/WebCore/platform/chromium/FindInPageCoordinates.cpp:50
&gt; +static FloatRect toNormalizedRect(const FloatRect&amp; absoluteRect, const RenderObject* renderer, FloatRect* containerBoundingBox = 0)

code in WebCore/platform is not allowed to depend on code in WebCore/rendering</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>686959</commentid>
    <comment_count>5</comment_count>
      <attachid>156414</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-03 10:57:30 -0700</bug_when>
    <thetext>Comment on attachment 156414
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=156414&amp;action=review

&gt;&gt; Source/WebCore/platform/chromium/FindInPageCoordinates.cpp:50
&gt;&gt; +static FloatRect toNormalizedRect(const FloatRect&amp; absoluteRect, const RenderObject* renderer, FloatRect* containerBoundingBox = 0)
&gt; 
&gt; code in WebCore/platform is not allowed to depend on code in WebCore/rendering

Np, I will move it. Where do you think I should add a file like this, that is only expected to be used for now by the chromium port? Perhaps something like page/chromium or rendering/chromium?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>686972</commentid>
    <comment_count>6</comment_count>
      <attachid>156414</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-03 11:19:16 -0700</bug_when>
    <thetext>Comment on attachment 156414
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=156414&amp;action=review

&gt;&gt;&gt; Source/WebCore/platform/chromium/FindInPageCoordinates.cpp:50
&gt;&gt;&gt; +static FloatRect toNormalizedRect(const FloatRect&amp; absoluteRect, const RenderObject* renderer, FloatRect* containerBoundingBox = 0)
&gt;&gt; 
&gt;&gt; code in WebCore/platform is not allowed to depend on code in WebCore/rendering
&gt; 
&gt; Np, I will move it. Where do you think I should add a file like this, that is only expected to be used for now by the chromium port? Perhaps something like page/chromium or rendering/chromium?

There&apos;s nothing Chromium-specific about this file.  Perhaps just in WebCore/rendering?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687015</commentid>
    <comment_count>7</comment_count>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-03 12:00:46 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 156414 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=156414&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebCore/platform/chromium/FindInPageCoordinates.cpp:50
&gt; &gt;&gt;&gt; +static FloatRect toNormalizedRect(const FloatRect&amp; absoluteRect, const RenderObject* renderer, FloatRect* containerBoundingBox = 0)
&gt; &gt;&gt; 
&gt; &gt;&gt; code in WebCore/platform is not allowed to depend on code in WebCore/rendering
&gt; &gt; 
&gt; &gt; Np, I will move it. Where do you think I should add a file like this, that is only expected to be used for now by the chromium port? Perhaps something like page/chromium or rendering/chromium?
&gt; 
&gt; There&apos;s nothing Chromium-specific about this file.  Perhaps just in WebCore/rendering?

Sounds good to me. Should it be done as part of this patch (In reply to comment #6)
&gt; (From update of attachment 156414 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=156414&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebCore/platform/chromium/FindInPageCoordinates.cpp:50
&gt; &gt;&gt;&gt; +static FloatRect toNormalizedRect(const FloatRect&amp; absoluteRect, const RenderObject* renderer, FloatRect* containerBoundingBox = 0)
&gt; &gt;&gt; 
&gt; &gt;&gt; code in WebCore/platform is not allowed to depend on code in WebCore/rendering
&gt; &gt; 
&gt; &gt; Np, I will move it. Where do you think I should add a file like this, that is only expected to be used for now by the chromium port? Perhaps something like page/chromium or rendering/chromium?
&gt; 
&gt; There&apos;s nothing Chromium-specific about this file.  Perhaps just in WebCore/rendering?

Sounds good to me. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687067</commentid>
    <comment_count>8</comment_count>
      <attachid>156440</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-03 12:58:10 -0700</bug_when>
    <thetext>Created attachment 156440
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687097</commentid>
    <comment_count>9</comment_count>
      <attachid>156440</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-03 13:25:47 -0700</bug_when>
    <thetext>Comment on attachment 156440
Patch

Attachment 156440 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13421922</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687164</commentid>
    <comment_count>10</comment_count>
      <attachid>156440</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-03 14:38:32 -0700</bug_when>
    <thetext>Comment on attachment 156440
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=156440&amp;action=review

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:523
&gt; +    , m_rect(0, 0, 0, 0)

Presumably m_rect will initialize itself to zeros automatically.

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2003
&gt; +            it-&gt;m_rect = FloatRect(0, 0, 0, 0);

FloatRect(0, 0, 0, 0) -&gt; FloatRect()

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2278
&gt; +    , m_contentsSizeForCurrentFindMatchRects(0, 0)

m_contentsSizeForCurrentFindMatchRects will probably init itself.

&gt; Source/WebKit/chromium/src/WebFrameImpl.h:279
&gt; +    PassRefPtr&lt;WebCore::Range&gt; activeMatch() const { return m_activeMatch; }

This should just return a WebCore::Range*</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687165</commentid>
    <comment_count>11</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-03 14:39:06 -0700</bug_when>
    <thetext>@fishd: Who should review this patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688074</commentid>
    <comment_count>12</comment_count>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-06 06:20:33 -0700</bug_when>
    <thetext>Adding Hans as he&apos;s looking for patches to do informal reviews.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688188</commentid>
    <comment_count>13</comment_count>
      <attachid>156703</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-06 09:21:39 -0700</bug_when>
    <thetext>Created attachment 156703
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688189</commentid>
    <comment_count>14</comment_count>
      <attachid>156440</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-06 09:22:11 -0700</bug_when>
    <thetext>Comment on attachment 156440
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=156440&amp;action=review

Also fixing the unit test.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:523
&gt;&gt; +    , m_rect(0, 0, 0, 0)
&gt; 
&gt; Presumably m_rect will initialize itself to zeros automatically.

Good point. Fixed.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2003
&gt;&gt; +            it-&gt;m_rect = FloatRect(0, 0, 0, 0);
&gt; 
&gt; FloatRect(0, 0, 0, 0) -&gt; FloatRect()

Fixed.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2278
&gt;&gt; +    , m_contentsSizeForCurrentFindMatchRects(0, 0)
&gt; 
&gt; m_contentsSizeForCurrentFindMatchRects will probably init itself.

Fixed.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.h:279
&gt;&gt; +    PassRefPtr&lt;WebCore::Range&gt; activeMatch() const { return m_activeMatch; }
&gt; 
&gt; This should just return a WebCore::Range*

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>689684</commentid>
    <comment_count>15</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-08-07 18:01:34 -0700</bug_when>
    <thetext>Maybe Finnur would like to do an informal review?  He implemented the find-in-page functions years ago.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>689685</commentid>
    <comment_count>16</comment_count>
      <attachid>156703</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-08-07 18:02:51 -0700</bug_when>
    <thetext>Comment on attachment 156703
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=156703&amp;action=review

Just some style nits.

&gt; Source/WebCore/ChangeLog:35
&gt; +        * rendering/FindInPageCoordinates.cpp: Added.
&gt; +        (WebCore):
&gt; +        (WebCore::toNormalizedRect):
&gt; +        (WebCore::FindInPageCoordinates::fromAbsoluteRect):
&gt; +        (WebCore::FindInPageCoordinates::fromRange):

Please fill in some details here.

&gt; Source/WebKit/chromium/ChangeLog:20
&gt; +        (WebKit::WebFrameImpl::find):
&gt; +        (WebKit::WebFrameImpl::stopFinding):
&gt; +        (WebKit::WebFrameImpl::scopeStringMatches):
&gt; +        (WebKit::WebFrameImpl::increaseMatchCount):

This would benefit from some comments as well.

&gt; Source/WebCore/dom/Range.cpp:1953
&gt; +    if (quads.isEmpty())
&gt; +        return FloatRect();

Nit: Is the early return necessary? Looks like we&apos;ll get the same result without this check.

&gt; Source/WebCore/dom/Range.h:129
&gt; +    FloatRect enclosingBoundingBox() const;
&gt;      FloatRect boundingRect() const;

Nit: It would be nice if the names of these functions explained how they are different. Also, it&apos;s a bit weird that one is a BoundingBox and one is a BoundingRect.  Maybe you could just merge into a single function that takes an enum param for whether or not to include border?

&gt; Source/WebCore/rendering/FindInPageCoordinates.h:51
&gt; +class FindInPageCoordinates {
&gt; +public:

Nit: I would remove the class. I don&apos;t think it&apos;s common for utility methods to be in a class in WebCore (I only see this pattern in some Chromium code).  Maybe try to make the function names something like findInPageRectFrom(...)?

&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:818
&gt; +    virtual void reportFindInPageMatchCount(int requestId, int count, bool finalUpdate) OVERRIDE

Nit: WebKit style is to omit unused parameters (in this case, requestId and count).

&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:858
&gt; +    EXPECT_EQ(webMatchRects.size(), static_cast&lt;size_t&gt;(kNumResults));

Nit: This should probably be an ASSERT_EQ since if you get the wrong size, we&apos;ll crash below.

&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:885
&gt; +    // All results after the first two ones should be below between them in scroll-independent normalized main frame coordinates.
&gt; +    // This is because results 2 to 9 are inside an iframe located between results 0 and 1. This applies to the fixed div too.
&gt; +    EXPECT_TRUE(webMatchRects[0].y &lt; webMatchRects[1].y);
&gt; +    EXPECT_TRUE(webMatchRects[0].y &lt; webMatchRects[2].y);

Nit: I might use some loops for this, but this is also OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690346</commentid>
    <comment_count>17</comment_count>
      <attachid>156703</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-08 08:19:39 -0700</bug_when>
    <thetext>Comment on attachment 156703
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=156703&amp;action=review

&gt;&gt; Source/WebCore/ChangeLog:35
&gt;&gt; +        (WebCore::FindInPageCoordinates::fromRange):
&gt; 
&gt; Please fill in some details here.

Done.

&gt;&gt; Source/WebKit/chromium/ChangeLog:20
&gt;&gt; +        (WebKit::WebFrameImpl::increaseMatchCount):
&gt; 
&gt; This would benefit from some comments as well.

Done.

&gt;&gt; Source/WebCore/dom/Range.cpp:1953
&gt;&gt; +        return FloatRect();
&gt; 
&gt; Nit: Is the early return necessary? Looks like we&apos;ll get the same result without this check.

Fixed.

&gt;&gt; Source/WebCore/dom/Range.h:129
&gt;&gt;      FloatRect boundingRect() const;
&gt; 
&gt; Nit: It would be nice if the names of these functions explained how they are different. Also, it&apos;s a bit weird that one is a BoundingBox and one is a BoundingRect.  Maybe you could just merge into a single function that takes an enum param for whether or not to include border?

I&apos;ve considered merging them, but they seem to return different coordinate systems and units. boundingRect calls Document::adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale which as the name suggests involves scrolling positions, zoom and the page scale factor, while enclosingBoundingBox does nothing of the sort and it&apos;s simply the union of the absolute quads from the text. Since this latter behaviour is just the transform-friendly equivalent of boundingBox I&apos;m merging these two and adding a boolean value to use transforms defaulting to false as other existing code in WebCore does.

&gt;&gt; Source/WebCore/rendering/FindInPageCoordinates.h:51
&gt;&gt; +public:
&gt; 
&gt; Nit: I would remove the class. I don&apos;t think it&apos;s common for utility methods to be in a class in WebCore (I only see this pattern in some Chromium code).  Maybe try to make the function names something like findInPageRectFrom(...)?

Done as suggested.

&gt;&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:818
&gt;&gt; +    virtual void reportFindInPageMatchCount(int requestId, int count, bool finalUpdate) OVERRIDE
&gt; 
&gt; Nit: WebKit style is to omit unused parameters (in this case, requestId and count).

Fixed.

&gt;&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:858
&gt;&gt; +    EXPECT_EQ(webMatchRects.size(), static_cast&lt;size_t&gt;(kNumResults));
&gt; 
&gt; Nit: This should probably be an ASSERT_EQ since if you get the wrong size, we&apos;ll crash below.

Fixed.

&gt;&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:885
&gt;&gt; +    EXPECT_TRUE(webMatchRects[0].y &lt; webMatchRects[2].y);
&gt; 
&gt; Nit: I might use some loops for this, but this is also OK.

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690347</commentid>
    <comment_count>18</comment_count>
      <attachid>157223</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-08 08:20:11 -0700</bug_when>
    <thetext>Created attachment 157223
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690396</commentid>
    <comment_count>19</comment_count>
    <who name="Finnur Thorarinsson">finnur.webkit</who>
    <bug_when>2012-08-08 09:25:01 -0700</bug_when>
    <thetext>Intriguing. I like the general idea of being able to click on a tickmark and jump to it. 

I took a look at this from a high level point of view, and I&apos;m fine with adding this (from a Chrome Find in page standpoint). Unfortunately, my WebKit foo is getting a bit rusty, so I&apos;m not reviewing the patch for correctness (and besides, I&apos;m not a WebKit reviewer so my LG isn&apos;t worth much here). :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690443</commentid>
    <comment_count>20</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-08 10:07:24 -0700</bug_when>
    <thetext>Thanks Finnur.  I appreciate your taking a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690643</commentid>
    <comment_count>21</comment_count>
      <attachid>157223</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-08 13:06:23 -0700</bug_when>
    <thetext>Comment on attachment 157223
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157223&amp;action=review

&gt; Source/WebCore/dom/Range.h:128
&gt; +    // FIXME: eventually useTransforms should flip to true by default.
&gt; +    IntRect boundingBox(bool useTransforms = false) const;

Can we use an enum rather than a raw boolean here?  Raw boolean parameters are hard to read at call sites.

&gt; Source/WebCore/rendering/FindInPageCoordinates.h:56
&gt; +FloatRect findInPageRectFromRange(PassRefPtr&lt;Range&gt;);

PassRefPtr&lt;Range&gt;  -&gt;  Range*

This function doesn&apos;t need to take ownership of the Range so there&apos;s no advantage to using PassRefPtr.  http://www.webkit.org/coding/RefPtr.html has some more information about RefPtr and PassRefPtr if you&apos;re interested.

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:1996
&gt; +    const WebFrameImpl* mainFrameImpl = viewImpl()-&gt;mainFrameImpl();
&gt; +    const WebFrameImpl* activeMatchFrame = mainFrameImpl-&gt;activeMatchFrame();

We usually don&apos;t bother with the const in &quot;const WebFrameImpl&quot;.  It&apos;s not really sensible for a WebFrameImpl to be const.

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:1998
&gt; +            &amp;&amp; activeMatchFrame-&gt;frame()-&gt;tree()-&gt;isDescendantOf(mainFrameImpl-&gt;frame());

four-space indent.

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2009
&gt; +    unsigned deadMatches = 0;

unsigned -&gt; size_t

It looks like this number can be as large as Vector&lt;...&gt;::size(), which is a size_t.

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2035
&gt; +    if (!m_findMatchRectsAreValid)
&gt; +        for (WebFrame* child = firstChild(); child; child = child-&gt;nextSibling())
&gt; +            static_cast&lt;WebFrameImpl*&gt;(child)-&gt;m_findMatchRectsAreValid = false;

Do we need to do a recursive walk of all the subframes?

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2042
&gt; +    // This function should only be called on the mainframe.

This comment is redundant with the line below.  :)

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2053
&gt; +    // This function should only be called on the mainframe.

ditto

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2075
&gt; +    // This function should only be called on the mainframe.

ditto

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2142
&gt; +        // Clear any user selection, to make sure Find Next continues on from the match we just activated.
&gt; +        executeCommand(WebString::fromUTF8(&quot;Unselect&quot;));

Is there a more direct way to do this?  It seems odd to have to go back through the API with a string like this.

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2145
&gt; +        if (frame()-&gt;document())

frame()-&gt;document() shouldn&apos;t ever be 0

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2365
&gt; +void WebFrameImpl::didChangeContentsSize(const IntSize&amp; size)

Do we need to call the base class here?

&gt; Source/WebKit/chromium/src/WebFrameImpl.h:252
&gt; +    // Called when the size of the contained document changes.

This comment doesn&apos;t add any value and should be removed.

&gt; Source/WebKit/chromium/src/WebFrameImpl.h:253
&gt; +    void didChangeContentsSize(const WebCore::IntSize&amp;);

I couldn&apos;t find the call site for this function.  Is it a virtual function override?  If so, we should mark it virtual and add the OVERRIDE keyword.

&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:847
&gt; +    { }

Technically these brackets should be on separate lines.

&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:934
&gt; +    // Resizing should update the rects version.
&gt; +    mainFrame-&gt;didChangeContentsSize(WebSize(800, 600));

Shouldn&apos;t we call resize on the view and have this function called automatically?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690644</commentid>
    <comment_count>22</comment_count>
      <attachid>157223</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-08 13:09:36 -0700</bug_when>
    <thetext>Comment on attachment 157223
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157223&amp;action=review

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2135
&gt; +        viewImpl()-&gt;mainFrameImpl()-&gt;m_currentActiveMatchFrame = this;

This looks like it might become a dangling pointer given that no one appears to clear this pointer if/when |this| is destroyed.  However, that bug appears to already exist regardless of your patch.  Would you be willing to file a bug on this issue so we don&apos;t forget to fix it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690648</commentid>
    <comment_count>23</comment_count>
      <attachid>157223</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-08 13:13:00 -0700</bug_when>
    <thetext>Comment on attachment 157223
Patch

I don&apos;t feel confident in FindInPageCoordinates.* ...  I&apos;m going to ask someone more expert in the rendering tree to take a look.

Modulo that and the minor comments above, I&apos;m ok with this patch.  After we get the chromium-android branch upstream, we should spend some time factoring find-in-page out of WebFrameImpl.cpp.  I&apos;m happy to help with that, and I don&apos;t think it should hold up this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>691720</commentid>
    <comment_count>24</comment_count>
      <attachid>157223</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2012-08-09 13:08:15 -0700</bug_when>
    <thetext>Comment on attachment 157223
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157223&amp;action=review

&gt;&gt; Source/WebCore/dom/Range.h:128
&gt;&gt; +    IntRect boundingBox(bool useTransforms = false) const;
&gt; 
&gt; Can we use an enum rather than a raw boolean here?  Raw boolean parameters are hard to read at call sites.

Or how about just a completely separate function?  The implementation of
useTransforms=true and useTransforms=false share no code!

&gt; Source/WebCore/rendering/FindInPageCoordinates.h:44
&gt; +// This coordinate system is designed to give consistent tickmarks in cases where find matches

The &quot;tickmarks&quot; feature corresponds to the Chromium UI feature of decorating
the scrollbars with tickmarks.  This is probably not a well known feature to
non-Chromium folks hacking WebCore.  Can we avoid mentioning it here?

I would probably put this file in WebKit/chromium/src instead since it is only
needed by code at that level.  It isn&apos;t needed by WebCore.

&gt; Source/WebKit/chromium/src/WebFrameImpl.h:349
&gt; +    int nearestFindMatch(const WebFloatPoint&amp;, float&amp; distanceSquared);

WebFloatPoint -&gt; FloatPoint

&gt; Source/WebKit/chromium/src/WebFrameImpl.h:355
&gt; +    int selectFindMatch(unsigned index, WebRect* selectionRect);

WebRect -&gt; IntRect

&gt; Source/WebKit/chromium/src/WebFrameImpl.h:363
&gt; +    void appendFindMatchRects(Vector&lt;WebFloatRect&gt;&amp; frameRects);

internal functions should really use non-WebKit API types.  you should use FloatRect instead of WebFloatRect unless you are implementation an API function.

&gt; Source/WebKit/chromium/src/WebFrameImpl.h:477
&gt; +    WebSize m_contentsSizeForCurrentFindMatchRects;

WebSize -&gt; IntSize


Is this patch missing some changes to WebFrame.h?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>691734</commentid>
    <comment_count>25</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-09 13:15:11 -0700</bug_when>
    <thetext>&gt; I would probably put this file in WebKit/chromium/src instead since it is only
&gt; needed by code at that level.  It isn&apos;t needed by WebCore.

That&apos;s where the code is in the chromium-android branch.  I asked Leandro to move it into WebCore, but perhaps keeping it in the WebKit layer is best.

&gt; Is this patch missing some changes to WebFrame.h?

We landed those as stubs in a separate patch:

http://trac.webkit.org/changeset/124640</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>691748</commentid>
    <comment_count>26</comment_count>
      <attachid>157223</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-09 13:25:32 -0700</bug_when>
    <thetext>Comment on attachment 157223
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157223&amp;action=review

Replying to a few comments. Taking care of the rest tomorrow.

&gt;&gt; Source/WebCore/rendering/FindInPageCoordinates.h:44
&gt;&gt; +// This coordinate system is designed to give consistent tickmarks in cases where find matches
&gt; 
&gt; The &quot;tickmarks&quot; feature corresponds to the Chromium UI feature of decorating
&gt; the scrollbars with tickmarks.  This is probably not a well known feature to
&gt; non-Chromium folks hacking WebCore.  Can we avoid mentioning it here?
&gt; 
&gt; I would probably put this file in WebKit/chromium/src instead since it is only
&gt; needed by code at that level.  It isn&apos;t needed by WebCore.

This file was originally in WebKit (in downstream code), but we found that it was composed only of WebCore dependencies. Structurally makes more sense in WebCore more than in WebKit, although I agree that chromium is the only port requiring it now. I&apos;m happy to take whatever approach.

Adam, what do you think about this? I think you were one who suggested moving this to WebCore.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.h:477
&gt;&gt; +    WebSize m_contentsSizeForCurrentFindMatchRects;
&gt; 
&gt; WebSize -&gt; IntSize
&gt; 
&gt; 
&gt; Is this patch missing some changes to WebFrame.h?

These were added separately by bug 93110 in order to achieve WebKit API compatibility for the Android port.

&gt;&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:934
&gt;&gt; +    mainFrame-&gt;didChangeContentsSize(WebSize(800, 600));
&gt; 
&gt; Shouldn&apos;t we call resize on the view and have this function called automatically?

Actually, it&apos;s not automatically called when calling resize upstream. It seems that the difference in enabled features of the Android port might be preventing it. Since other tests in this file explicitly call methods like this one I did the same for the sake of simplicity.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>691752</commentid>
    <comment_count>27</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-09 13:28:30 -0700</bug_when>
    <thetext>&gt; Adam, what do you think about this? I think you were one who suggested moving this to WebCore.

I don&apos;t have a strong opinion.  If fishd thinks this code should be in the WebKit layer, let&apos;s put it there.

&gt; &gt;&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:934
&gt; &gt;&gt; +    mainFrame-&gt;didChangeContentsSize(WebSize(800, 600));
&gt; &gt; 
&gt; &gt; Shouldn&apos;t we call resize on the view and have this function called automatically?
&gt; 
&gt; Actually, it&apos;s not automatically called when calling resize upstream. It seems that the difference in enabled features of the Android port might be preventing it. Since other tests in this file explicitly call methods like this one I did the same for the sake of simplicity.

Ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>692805</commentid>
    <comment_count>28</comment_count>
      <attachid>157223</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-10 12:33:42 -0700</bug_when>
    <thetext>Comment on attachment 157223
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157223&amp;action=review

&gt;&gt;&gt; Source/WebCore/dom/Range.h:128
&gt;&gt;&gt; +    IntRect boundingBox(bool useTransforms = false) const;
&gt;&gt; 
&gt;&gt; Can we use an enum rather than a raw boolean here?  Raw boolean parameters are hard to read at call sites.
&gt; 
&gt; Or how about just a completely separate function?  The implementation of
&gt; useTransforms=true and useTransforms=false share no code!

Done.

&gt;&gt;&gt; Source/WebCore/rendering/FindInPageCoordinates.h:44
&gt;&gt;&gt; +// This coordinate system is designed to give consistent tickmarks in cases where find matches
&gt;&gt; 
&gt;&gt; The &quot;tickmarks&quot; feature corresponds to the Chromium UI feature of decorating
&gt;&gt; the scrollbars with tickmarks.  This is probably not a well known feature to
&gt;&gt; non-Chromium folks hacking WebCore.  Can we avoid mentioning it here?
&gt;&gt; 
&gt;&gt; I would probably put this file in WebKit/chromium/src instead since it is only
&gt;&gt; needed by code at that level.  It isn&apos;t needed by WebCore.
&gt; 
&gt; This file was originally in WebKit (in downstream code), but we found that it was composed only of WebCore dependencies. Structurally makes more sense in WebCore more than in WebKit, although I agree that chromium is the only port requiring it now. I&apos;m happy to take whatever approach.
&gt; 
&gt; Adam, what do you think about this? I think you were one who suggested moving this to WebCore.

Moved back to WebKit/chromium/src.

&gt;&gt; Source/WebCore/rendering/FindInPageCoordinates.h:56
&gt;&gt; +FloatRect findInPageRectFromRange(PassRefPtr&lt;Range&gt;);
&gt; 
&gt; PassRefPtr&lt;Range&gt;  -&gt;  Range*
&gt; 
&gt; This function doesn&apos;t need to take ownership of the Range so there&apos;s no advantage to using PassRefPtr.  http://www.webkit.org/coding/RefPtr.html has some more information about RefPtr and PassRefPtr if you&apos;re interested.

Done.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:1996
&gt;&gt; +    const WebFrameImpl* activeMatchFrame = mainFrameImpl-&gt;activeMatchFrame();
&gt; 
&gt; We usually don&apos;t bother with the const in &quot;const WebFrameImpl&quot;.  It&apos;s not really sensible for a WebFrameImpl to be const.

Fixed.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:1998
&gt;&gt; +            &amp;&amp; activeMatchFrame-&gt;frame()-&gt;tree()-&gt;isDescendantOf(mainFrameImpl-&gt;frame());
&gt; 
&gt; four-space indent.

Fixed.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2009
&gt;&gt; +    unsigned deadMatches = 0;
&gt; 
&gt; unsigned -&gt; size_t
&gt; 
&gt; It looks like this number can be as large as Vector&lt;...&gt;::size(), which is a size_t.

Fixed.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2035
&gt;&gt; +            static_cast&lt;WebFrameImpl*&gt;(child)-&gt;m_findMatchRectsAreValid = false;
&gt; 
&gt; Do we need to do a recursive walk of all the subframes?

No, we only need to update these with an invalidated ancestor. It&apos;s done this way in order to avoid repeating operations unnecessarily.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2042
&gt;&gt; +    // This function should only be called on the mainframe.
&gt; 
&gt; This comment is redundant with the line below.  :)

Removing it. This came verbatim from other similar find-in-page methods.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2053
&gt;&gt; +    // This function should only be called on the mainframe.
&gt; 
&gt; ditto

Done.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2075
&gt;&gt; +    // This function should only be called on the mainframe.
&gt; 
&gt; ditto

Done.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2135
&gt;&gt; +        viewImpl()-&gt;mainFrameImpl()-&gt;m_currentActiveMatchFrame = this;
&gt; 
&gt; This looks like it might become a dangling pointer given that no one appears to clear this pointer if/when |this| is destroyed.  However, that bug appears to already exist regardless of your patch.  Would you be willing to file a bug on this issue so we don&apos;t forget to fix it?

Sure. Here you go: https://bugs.webkit.org/show_bug.cgi?id=93732 .

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2142
&gt;&gt; +        executeCommand(WebString::fromUTF8(&quot;Unselect&quot;));
&gt; 
&gt; Is there a more direct way to do this?  It seems odd to have to go back through the API with a string like this.

This was probably based in some early WebFrameImpl::find code. I&apos;ll be updating it to frame()-&gt;selection-&gt;clear().

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2145
&gt;&gt; +        if (frame()-&gt;document())
&gt; 
&gt; frame()-&gt;document() shouldn&apos;t ever be 0

Fixed.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:2365
&gt;&gt; +void WebFrameImpl::didChangeContentsSize(const IntSize&amp; size)
&gt; 
&gt; Do we need to call the base class here?

No base class related: it&apos;s called from ChromeClientImpl (see below).

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.h:252
&gt;&gt; +    // Called when the size of the contained document changes.
&gt; 
&gt; This comment doesn&apos;t add any value and should be removed.

Done.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.h:253
&gt;&gt; +    void didChangeContentsSize(const WebCore::IntSize&amp;);
&gt; 
&gt; I couldn&apos;t find the call site for this function.  Is it a virtual function override?  If so, we should mark it virtual and add the OVERRIDE keyword.

Found it. I was missing a one-line change in ChromeClientImpl.cpp. That&apos;s the one calling this method directly to WebFrameImpl.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.h:349
&gt;&gt; +    int nearestFindMatch(const WebFloatPoint&amp;, float&amp; distanceSquared);
&gt; 
&gt; WebFloatPoint -&gt; FloatPoint

Done.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.h:355
&gt;&gt; +    int selectFindMatch(unsigned index, WebRect* selectionRect);
&gt; 
&gt; WebRect -&gt; IntRect

This one is providing the output of the API function selectNearestFindMatch. Using IntRect leads to an incompatible pointer that enforces a pointless local conversion.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.h:363
&gt;&gt; +    void appendFindMatchRects(Vector&lt;WebFloatRect&gt;&amp; frameRects);
&gt; 
&gt; internal functions should really use non-WebKit API types.  you should use FloatRect instead of WebFloatRect unless you are implementation an API function.

This one should use WebFloatRect. The reason is that this method appends the local results of the frame to the global result of the API function findMatchRects. If we use FloatRect here we will enforce a pointless conversion of all the rects on every frame.

&gt;&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.h:477
&gt;&gt;&gt; +    WebSize m_contentsSizeForCurrentFindMatchRects;
&gt;&gt; 
&gt;&gt; WebSize -&gt; IntSize
&gt;&gt; 
&gt;&gt; 
&gt;&gt; Is this patch missing some changes to WebFrame.h?
&gt; 
&gt; These were added separately by bug 93110 in order to achieve WebKit API compatibility for the Android port.

WebSize -&gt; IntSize changed.

&gt;&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:847
&gt;&gt; +    { }
&gt; 
&gt; Technically these brackets should be on separate lines.

Fixed.

&gt;&gt;&gt; Source/WebKit/chromium/tests/WebFrameTest.cpp:934
&gt;&gt;&gt; +    mainFrame-&gt;didChangeContentsSize(WebSize(800, 600));
&gt;&gt; 
&gt;&gt; Shouldn&apos;t we call resize on the view and have this function called automatically?
&gt; 
&gt; Actually, it&apos;s not automatically called when calling resize upstream. It seems that the difference in enabled features of the Android port might be preventing it. Since other tests in this file explicitly call methods like this one I did the same for the sake of simplicity.

Fixed the issue: a one-line change was missing in ChromeClientImpl. It should be working with Resize now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>692809</commentid>
    <comment_count>29</comment_count>
      <attachid>157791</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-10 12:38:02 -0700</bug_when>
    <thetext>Created attachment 157791
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>692928</commentid>
    <comment_count>30</comment_count>
      <attachid>157791</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-10 15:47:49 -0700</bug_when>
    <thetext>Comment on attachment 157791
Patch

Attachment 157791 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13481014

New failing tests:
WebFrameTest.FindInPageMatchRects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>692929</commentid>
    <comment_count>31</comment_count>
      <attachid>157824</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-10 15:47:54 -0700</bug_when>
    <thetext>Created attachment 157824
Archive of layout-test-results from gce-cr-linux-08

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: gce-cr-linux-08  Port: &lt;class &apos;webkitpy.common.config.ports.ChromiumXVFBPort&apos;&gt;  Platform: Linux-2.6.39-gcg-201203291735-x86_64-with-Ubuntu-10.04-lucid</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>692962</commentid>
    <comment_count>32</comment_count>
      <attachid>157834</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-10 16:39:53 -0700</bug_when>
    <thetext>Created attachment 157834
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>692963</commentid>
    <comment_count>33</comment_count>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-10 16:43:12 -0700</bug_when>
    <thetext>(In reply to comment #32)
&gt; Created an attachment (id=157834) [details]
&gt; Patch

I can&apos;t reproduce the unit test failure locally. I&apos;m adding an extra webkit_support::RunAllPendingMessages() after resizing just in case. If this doesn&apos;t solve the problem I&apos;ll revert to calling WebFrameImpl::didChangeContentsSize directly as done in previous patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693287</commentid>
    <comment_count>34</comment_count>
      <attachid>157834</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-12 10:31:22 -0700</bug_when>
    <thetext>Comment on attachment 157834
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157834&amp;action=review

Below are a few minor comments.  Thanks for being so patient with this patch.  In the interest of making progress, I&apos;m inclined to land this version of the patch and then iterate on these details.  Would you be willing to post a follow up patch addressing these comments (and/or post a comment explaining why I&apos;m from outer space)?

Thanks again for the patch.

&gt; Source/WebCore/dom/Range.cpp:1964
&gt; +FloatRect Range::transformFriendlyBoundingBox() const

Why don&apos;t we need to call updateLayoutIgnorePendingStylesheets like we do above?

&gt; Source/WebCore/dom/Range.cpp:1966
&gt; +    FloatRect result;

nit: Idiomatically, we&apos;d put this declaration right above the loop that populates it.

&gt; Source/WebCore/dom/Range.cpp:1971
&gt; +    const size_t n = quads.size();
&gt; +    for (size_t i = 0; i &lt; n; ++i)

nit: You can merge these lines.  There&apos;s no advantage to moving the size() call out of the loop.

&gt; Source/WebCore/dom/Range.h:129
&gt;      FloatRect boundingRect() const;
&gt; +    FloatRect transformFriendlyBoundingBox() const;

This is a bit confusing.  boundingRect() is already listed in the &quot;Transform-friendly&quot; section, so it&apos;s unclear how it differs from transformFriendlyBoundingBox().

&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:51
&gt; +static FloatRect toNormalizedRect(const FloatRect&amp; absoluteRect, const RenderObject* renderer, FloatRect* containerBoundingBox = 0)

nit: WebKit typically uses references for out parameters.

&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:1675
&gt; +#if OS(ANDROID)
&gt; +    viewImpl()-&gt;zoomToFindInPageRect(frameView()-&gt;contentsToWindow(enclosingIntRect(m_activeMatch-&gt;transformFriendlyBoundingBox)));
&gt; +#endif

OS(ANDROID) is likely the wrong ifdef to have here.  For example, if there as an OS(IOS) configuration of PLATFORM(CHROMIUM), we&apos;d likely want this code there too.  I&apos;m not sure what better to suggest, however.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693292</commentid>
    <comment_count>35</comment_count>
      <attachid>157834</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-12 11:05:36 -0700</bug_when>
    <thetext>Comment on attachment 157834
Patch

Clearing flags on attachment: 157834

Committed r125379: &lt;http://trac.webkit.org/changeset/125379&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693293</commentid>
    <comment_count>36</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-12 11:05:43 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693356</commentid>
    <comment_count>37</comment_count>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2012-08-12 20:56:58 -0700</bug_when>
    <thetext>Android build fix commited: http://trac.webkit.org/changeset/125385</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693521</commentid>
    <comment_count>38</comment_count>
      <attachid>157834</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-13 04:07:08 -0700</bug_when>
    <thetext>Comment on attachment 157834
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157834&amp;action=review

Here&apos;s the new CL for the pending nits. Let&apos;s continue the review there: https://bugs.webkit.org/show_bug.cgi?id=93817

&gt;&gt; Source/WebCore/dom/Range.cpp:1964
&gt;&gt; +FloatRect Range::transformFriendlyBoundingBox() const
&gt; 
&gt; Why don&apos;t we need to call updateLayoutIgnorePendingStylesheets like we do above?

Adding it sounds good to me. I&apos;ll fix it.

&gt;&gt; Source/WebCore/dom/Range.cpp:1966
&gt;&gt; +    FloatRect result;
&gt; 
&gt; nit: Idiomatically, we&apos;d put this declaration right above the loop that populates it.

Fixing it in the next iteration of the patch.

&gt;&gt; Source/WebCore/dom/Range.cpp:1971
&gt;&gt; +    for (size_t i = 0; i &lt; n; ++i)
&gt; 
&gt; nit: You can merge these lines.  There&apos;s no advantage to moving the size() call out of the loop.

Fixing it in the next iteration of the patch.

&gt;&gt; Source/WebCore/dom/Range.h:129
&gt;&gt; +    FloatRect transformFriendlyBoundingBox() const;
&gt; 
&gt; This is a bit confusing.  boundingRect() is already listed in the &quot;Transform-friendly&quot; section, so it&apos;s unclear how it differs from transformFriendlyBoundingBox().

IMO the problem here is not the name of &quot;transformFriendlyBoundingBox&quot;, as that&apos;s exactly what it does. The confusion here comes from the rather ambiguous name of boundingRect. The main difference between both is that boundingRect uses getBorderAndTextQuads, which involves Document::adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale. This latter method involves the visible rect of the view, the frame scale factor and the zoom, therefore returning something very different to what the usual bounding box methods return across different WebCore objects (just raw absolute coordinates without any view or scale consideration).

I&apos;m not sure if the correct solution would be to rename boundingRect, given the fact that I&apos;m not sure what ports actually use it or for what exact purpose. I&apos;m also not sure what a proper name for it would be. Any suggestions?

&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:51
&gt;&gt; +static FloatRect toNormalizedRect(const FloatRect&amp; absoluteRect, const RenderObject* renderer, FloatRect* containerBoundingBox = 0)
&gt; 
&gt; nit: WebKit typically uses references for out parameters.

I guess it&apos;s fine to change it now. In previous iterations, where this method was exposed to WebFrameImpl, the output parameter was optional and therefore a pointer. I&apos;ll fix it.

&gt;&gt; Source/WebKit/chromium/src/WebFrameImpl.cpp:1675
&gt;&gt; +#endif
&gt; 
&gt; OS(ANDROID) is likely the wrong ifdef to have here.  For example, if there as an OS(IOS) configuration of PLATFORM(CHROMIUM), we&apos;d likely want this code there too.  I&apos;m not sure what better to suggest, however.

Me neither. I&apos;m happy to change this if anybody has a better suggestion. In any case we still could add more cases to the #if if we need so.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>693795</commentid>
    <comment_count>39</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-13 10:30:52 -0700</bug_when>
    <thetext>&gt; &gt;&gt; Source/WebCore/dom/Range.h:129
&gt; &gt;&gt; +    FloatRect transformFriendlyBoundingBox() const;
&gt; &gt; 
&gt; &gt; This is a bit confusing.  boundingRect() is already listed in the &quot;Transform-friendly&quot; section, so it&apos;s unclear how it differs from transformFriendlyBoundingBox().
&gt; 
&gt; IMO the problem here is not the name of &quot;transformFriendlyBoundingBox&quot;, as that&apos;s exactly what it does. The confusion here comes from the rather ambiguous name of boundingRect. The main difference between both is that boundingRect uses getBorderAndTextQuads, which involves Document::adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale. This latter method involves the visible rect of the view, the frame scale factor and the zoom, therefore returning something very different to what the usual bounding box methods return across different WebCore objects (just raw absolute coordinates without any view or scale consideration).
&gt; 
&gt; I&apos;m not sure if the correct solution would be to rename boundingRect, given the fact that I&apos;m not sure what ports actually use it or for what exact purpose. I&apos;m also not sure what a proper name for it would be. Any suggestions?

Perhaps rniwa has a suggestion here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>695907</commentid>
    <comment_count>40</comment_count>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-15 04:24:50 -0700</bug_when>
    <thetext>rniwa: this patch added a transformFriendlyBoundingBox method to Range as we require it to achieve CSS transform compatibility in other features of this patch. However we found an existing method called boundingRect which despite its ambiguous name involves page scaling, zooming and the view rect. We were wondering what do you think it should be the correct naming approach for these two.

Note that transformFriendlyBoundingBox is just the same as boundingBox but using quads and its enclosing rect. Also note that boundingRect was not provided by this patch and we&apos;re not sure which ports use it, in case a rename is appropriate.

I&apos;ll address any suggestions you might have in a new patch.
Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>696386</commentid>
    <comment_count>41</comment_count>
      <attachid>157834</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-08-15 14:34:35 -0700</bug_when>
    <thetext>Comment on attachment 157834
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157834&amp;action=review

Sorry for not looking at this change sooner. Overall, it&apos;s OK but there are some rough edges or cases that would need more attention.

I believe your logic to work with different writing-modes or direction. Unfortunately the testing doesn&apos;t cover these cases so it would need to be extended.

&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:55
&gt; +    const RenderObject* container = renderer-&gt;container();

I think this should use containingBlock and not container. The difference in behavior is subtle (it has to do with container being used for invalidations vs containingBlock when you need your CSS &apos;containing block&apos;). The other difference is that containingBlock doesn&apos;t work on unrooted tree which shouldn&apos;t be an issue here.

Using containingBlock() would also simplify the code as:
* you can ASSERT that you have a containing block (or that you are the RenderView).
* containingBlock returns a RenderBlock so no need to actually to check if it&apos;s a RenderBox.

&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:58
&gt; +        if (containerBoundingBox)
&gt; +            *containerBoundingBox = FloatRect();

The containingBoundingBox logic is pretty confusing. You clear it here but then if you have no container, it&apos;s probably that you are the RenderView which means you will reset the value in the while loop below.

&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:89
&gt; +    // Fixed positions do not make sense in this coordinate system, but need to leave consistent tickmarks.
&gt; +    // So, use their position when the view is not scrolled, like an absolute position.

Doesn&apos;t that mean that fixed positioned object&apos;s tickmarks are badly placed?

&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:106
&gt; +    renderer = renderer-&gt;container();

Let&apos;s avoid parameter re-use, it makes the code less readable IMHO. On top of that, you have lost the original renderer.

&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:112
&gt; +        for (const RenderObject* container = renderer-&gt;container(); container; renderer = container, container = container-&gt;container()) {

As part of this loop, you will skip any &lt;iframe&gt; (as you never actually call toNormalizedRect on the frame owner). Is the &lt;iframe&gt; case properly handled? Ideally this should be tested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>696424</commentid>
    <comment_count>42</comment_count>
      <attachid>157834</attachid>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-15 15:23:11 -0700</bug_when>
    <thetext>Comment on attachment 157834
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157834&amp;action=review

Thanks for your comments regarding the coordinates code. One detail that you should know: there has been a small follow-up patch to address Adam&apos;s comments. It should not affect very much your review, but in any case you can find it here: https://bugs.webkit.org/show_bug.cgi?id=93817

&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:55
&gt;&gt; +    const RenderObject* container = renderer-&gt;container();
&gt; 
&gt; I think this should use containingBlock and not container. The difference in behavior is subtle (it has to do with container being used for invalidations vs containingBlock when you need your CSS &apos;containing block&apos;). The other difference is that containingBlock doesn&apos;t work on unrooted tree which shouldn&apos;t be an issue here.
&gt; 
&gt; Using containingBlock() would also simplify the code as:
&gt; * you can ASSERT that you have a containing block (or that you are the RenderView).
&gt; * containingBlock returns a RenderBlock so no need to actually to check if it&apos;s a RenderBox.

Sounds good to me. Just one question: overflows are defined in RenderBox rather than RenderBlock so, is it possible that going up the render tree using containingBlock might skip a RenderBox that is not a RenderBlock?

&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:58
&gt;&gt; +            *containerBoundingBox = FloatRect();
&gt; 
&gt; The containingBoundingBox logic is pretty confusing. You clear it here but then if you have no container, it&apos;s probably that you are the RenderView which means you will reset the value in the while loop below.

The while loop below should prevent you to call toNormalizedRect if you don&apos;t have a container. This is just a safeguard.

&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:89
&gt;&gt; +    // So, use their position when the view is not scrolled, like an absolute position.
&gt; 
&gt; Doesn&apos;t that mean that fixed positioned object&apos;s tickmarks are badly placed?

It means that fixed positions would change as the scroll does, but that implies that we should send new tickmarks on every scroll change. We do not want to do that as our approach is to get the tickmarks from the moment we asked for them. However, we still want to have consistent tickmarks in the meaning that while finding next any active match should appear in the positions expected for the find results (assuming no dynamic changes in the page).

So, to prevent the active rect not matching its expected tickmark for fixed positions we treat these as a special case by always providing the tickmark for the no scroll case.

&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:106
&gt;&gt; +    renderer = renderer-&gt;container();
&gt; 
&gt; Let&apos;s avoid parameter re-use, it makes the code less readable IMHO. On top of that, you have lost the original renderer.

In this case it simply means that the starting renderer in the loop is the container of the original one, but I can change it if you want. Maybe rename this original renderer and use a for loop with a local variable?

&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:112
&gt;&gt; +        for (const RenderObject* container = renderer-&gt;container(); container; renderer = container, container = container-&gt;container()) {
&gt; 
&gt; As part of this loop, you will skip any &lt;iframe&gt; (as you never actually call toNormalizedRect on the frame owner). Is the &lt;iframe&gt; case properly handled? Ideally this should be tested.

The &lt;iframe&gt; is precisely one of the tested cases. Could you elaborate the details of the problem?

When reaching the frame&apos;s RenderView it should go up to the owner renderer, which (and please correct me if I&apos;m wrong) should be the one corresponding to the &lt;iframe&gt; element in the parent frame. There it will call toNormalizedRect to compose the results form the &lt;iframe&gt; with the container of the &lt;iframe&gt; element renderer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>697315</commentid>
    <comment_count>43</comment_count>
      <attachid>157834</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2012-08-16 11:39:26 -0700</bug_when>
    <thetext>Comment on attachment 157834
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157834&amp;action=review

&gt;&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:55
&gt;&gt;&gt; +    const RenderObject* container = renderer-&gt;container();
&gt;&gt; 
&gt;&gt; I think this should use containingBlock and not container. The difference in behavior is subtle (it has to do with container being used for invalidations vs containingBlock when you need your CSS &apos;containing block&apos;). The other difference is that containingBlock doesn&apos;t work on unrooted tree which shouldn&apos;t be an issue here.
&gt;&gt; 
&gt;&gt; Using containingBlock() would also simplify the code as:
&gt;&gt; * you can ASSERT that you have a containing block (or that you are the RenderView).
&gt;&gt; * containingBlock returns a RenderBlock so no need to actually to check if it&apos;s a RenderBox.
&gt; 
&gt; Sounds good to me. Just one question: overflows are defined in RenderBox rather than RenderBlock so, is it possible that going up the render tree using containingBlock might skip a RenderBox that is not a RenderBlock?

It&apos;s possible in theory to skip a RenderBox. I can only think of a table context where this can happen and it would be good in this case (table parts are laid out relative to the containing table, which should be the one tracking the overflow). In CSS &apos;overflow&apos; applies to blocks as it only makes sense to track the overflow on them.

Btw you don&apos;t test tables which would be a good addition to your testing as they tend to work differently.

&gt;&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:106
&gt;&gt;&gt; +    renderer = renderer-&gt;container();
&gt;&gt; 
&gt;&gt; Let&apos;s avoid parameter re-use, it makes the code less readable IMHO. On top of that, you have lost the original renderer.
&gt; 
&gt; In this case it simply means that the starting renderer in the loop is the container of the original one, but I can change it if you want. Maybe rename this original renderer and use a for loop with a local variable?

Sounds good to me.

&gt;&gt;&gt; Source/WebKit/chromium/src/FindInPageCoordinates.cpp:112
&gt;&gt;&gt; +        for (const RenderObject* container = renderer-&gt;container(); container; renderer = container, container = container-&gt;container()) {
&gt;&gt; 
&gt;&gt; As part of this loop, you will skip any &lt;iframe&gt; (as you never actually call toNormalizedRect on the frame owner). Is the &lt;iframe&gt; case properly handled? Ideally this should be tested.
&gt; 
&gt; The &lt;iframe&gt; is precisely one of the tested cases. Could you elaborate the details of the problem?
&gt; 
&gt; When reaching the frame&apos;s RenderView it should go up to the owner renderer, which (and please correct me if I&apos;m wrong) should be the one corresponding to the &lt;iframe&gt; element in the parent frame. There it will call toNormalizedRect to compose the results form the &lt;iframe&gt; with the container of the &lt;iframe&gt; element renderer.

OK, I missed the iframe case. I thought you would need to call toNormalizedRect on the frame owner but it seems to work as expected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>698447</commentid>
    <comment_count>44</comment_count>
      <attachid>157834</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-08-17 10:09:44 -0700</bug_when>
    <thetext>Comment on attachment 157834
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=157834&amp;action=review

&gt;&gt;&gt; Source/WebCore/dom/Range.h:129
&gt;&gt;&gt; +    FloatRect transformFriendlyBoundingBox() const;
&gt;&gt; 
&gt;&gt; This is a bit confusing.  boundingRect() is already listed in the &quot;Transform-friendly&quot; section, so it&apos;s unclear how it differs from transformFriendlyBoundingBox().
&gt; 
&gt; IMO the problem here is not the name of &quot;transformFriendlyBoundingBox&quot;, as that&apos;s exactly what it does. The confusion here comes from the rather ambiguous name of boundingRect. The main difference between both is that boundingRect uses getBorderAndTextQuads, which involves Document::adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale. This latter method involves the visible rect of the view, the frame scale factor and the zoom, therefore returning something very different to what the usual bounding box methods return across different WebCore objects (just raw absolute coordinates without any view or scale consideration).
&gt; 
&gt; I&apos;m not sure if the correct solution would be to rename boundingRect, given the fact that I&apos;m not sure what ports actually use it or for what exact purpose. I&apos;m also not sure what a proper name for it would be. Any suggestions?

Why are we adding a new bounding box to Range? We&apos;re trying to get rid of renderer dependencies from Range :(
This is horrible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>698451</commentid>
    <comment_count>45</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-08-17 10:10:41 -0700</bug_when>
    <thetext>Please don&apos;t put [chromium] if you&apos;re modifying WebCore code at all. I had ignored this bug because I thought it only affected code in Source/WebKit/chromium.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>698452</commentid>
    <comment_count>46</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-08-17 10:13:31 -0700</bug_when>
    <thetext>+smfr for the bounding rect change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>700301</commentid>
    <comment_count>47</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-08-20 18:21:38 -0700</bug_when>
    <thetext>What does “transform-friendly” mean? Does it mean “transformed”?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>700302</commentid>
    <comment_count>48</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-08-20 18:21:55 -0700</bug_when>
    <thetext>I think the use of the term “friendly” here is confusing and “unfriendly”.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>700314</commentid>
    <comment_count>49</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-08-20 18:38:05 -0700</bug_when>
    <thetext>I hate &quot;friendly&quot; too. It means &quot;respecting CSS transforms, which should be the default behavior most of the time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>700328</commentid>
    <comment_count>50</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-20 18:59:24 -0700</bug_when>
    <thetext>The function was moved/renamed in http://trac.webkit.org/changeset/126074

The term &quot;transform-friendly&quot; term still exists in the comment block above these functions however.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>700793</commentid>
    <comment_count>51</comment_count>
    <who name="Leandro Graciá Gil">leandrogracia</who>
    <bug_when>2012-08-21 08:31:55 -0700</bug_when>
    <thetext>(In reply to comment #50)
&gt; The function was moved/renamed in http://trac.webkit.org/changeset/126074
&gt; 
&gt; The term &quot;transform-friendly&quot; term still exists in the comment block above these functions however.

That comment was not introduced by this patch. In fact it was one of the reasons why the method was originally named &quot;transformFriendlyBoundingBox&quot;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156414</attachid>
            <date>2012-08-03 10:46:45 -0700</date>
            <delta_ts>2012-08-03 12:58:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93111-20120803184624.patch</filename>
            <type>text/plain</type>
            <size>44153</size>
            <attacher name="Leandro Graciá Gil">leandrogracia</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0NjI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDQ0MzdiOWYyODM5M2Jm
NzA2MDcyZDVjZjVkNWMyOWNlMGI4OTYzZC4uMDRlMTRiMzgwODM0NmNhN2Y1MTVhN2ViNTAwZjE5
N2EzY2VkNWQ0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEyLTA4LTAzICBMZWFu
ZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KKworICAgICAgICBb
Q2hyb21pdW1dIEltcGxlbWVudCB0aGUgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzIEFQSQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRyb2R1Y2UgdGhl
IGZpbmQtaW4tcGFnZSBjb29yZGluYXRlIHN5c3RlbS4gVGhpcyBzeXN0ZW0gdHJpZXMgdG8gc29s
dmUKKyAgICAgICAgdGhlIHVuaW50dWl0aXZlIHRpY2ttYXJrIHJlc3VsdHMgcHJlc2VudGVkIGlu
IHBhZ2VzIHdpdGggbXVsdGlwbGUgZnJhbWVzCisgICAgICAgIGFuZCBzY3JvbGxlZCBjb250ZW50
cyB3aGVyZSB0aGUgZmluZCByZXN1bHRzIG1pZ2h0IG5vdCBiZSBpbiB0aGUgdmlzaWJsZQorICAg
ICAgICBhcmVhIG9mIGEgZnJhbWUsIHdoaWNoIG1pZ2h0IGxlYWQgdG8gdGlja21hcmtzIGJlbG93
IHRoZSBjb250YWluZXIgZnJhbWUuCisKKyAgICAgICAgVG8gYWNoaWV2ZSB0aGlzLCB0aGlzIGNv
b3JkaW5hdGUgc3lzdGVtIGdvZXMgdXAgdGhlIHJlbmRlciB0cmVlCisgICAgICAgIG5vcm1hbGl6
aW5nIHRoZSBjb29yZGluYXRlcyBieSB0aGUgYWN0dWFsIGNvbnRlbnRzIHNpemUgb2YgaXRzIGNv
bnRhaW5lci4KKyAgICAgICAgVGhpcyBsZWFkcyB0byB0aWNrbWFya3Mgc2NhbGVkIHRvIHRoZSB2
aXNpYmxlIHNpemUgb2YgdGhlaXIgZnJhbWUKKyAgICAgICAgaW5kZXBlbmRlbnRseSBvZiBpdHMg
c2Nyb2xsLiBUaGlzIGNvb3JkaW5hdGUgc3lzdGVtIHN1cHBvcnRzIGFsc28gQ1NTCisgICAgICAg
IHNjcm9sbDpvdmVyZmxvdywgdHJhbnNmb3JtcyBhbmQgdGhlIGRpZmZlcmVudCBwb3NpdGlvbnMu
CisKKyAgICAgICAgQWxzbyBhZGQgYW4gYXV4aWxpYXJ5IG1ldGhvZCB0byBSYW5nZSBpbiBvcmRl
ciB0byBwcm92aWRlIGEgdHJhbnNmb3JtCisgICAgICAgIGZyaWVuZGx5IHdheSB0byByZXRyaWV2
ZSB0aGUgYWJzb2x1dGUgY29vcmRpbmF0ZXMgb2YgdGhlIGVuY2xvc2luZworICAgICAgICBib3Vu
ZGluZyBib3ggd2l0aG91dCB0aGUgYWRqdXN0bWVudCBvcGVyYXRpb25zIHRoYXQgdGhlIGV4aXN0
aW5nCisgICAgICAgIGVuY2xvc2luZ1JlY3QgbWV0aG9kIGRvZXMuCisKKyAgICAgICAgVGVzdGVk
IGJ5IFdlYkZyYW1lVGVzdCBXZWJLaXQgdW5pdCB0ZXN0LgorCisgICAgICAgICogV2ViQ29yZS5n
eXBpOgorICAgICAgICAqIGRvbS9SYW5nZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSYW5nZTo6
ZW5jbG9zaW5nQm91bmRpbmdCb3gpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogZG9t
L1JhbmdlLmg6CisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vRmluZEluUGFnZUNvb3JkaW5h
dGVzLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OnRv
Tm9ybWFsaXplZFJlY3QpOgorICAgICAgICAoV2ViQ29yZTo6RmluZEluUGFnZUNvb3JkaW5hdGVz
Ojpmcm9tQWJzb2x1dGVSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZpbmRJblBhZ2VDb29yZGlu
YXRlczo6ZnJvbVJhbmdlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9GaW5kSW5QYWdl
Q29vcmRpbmF0ZXMuaDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKEZpbmRJ
blBhZ2VDb29yZGluYXRlcyk6CisKIDIwMTItMDctMjAgIEpvbiBMZWUgIDxqb25sZWVAYXBwbGUu
Y29tPgogCiAgICAgICAgIENyYXNoIGluIE5vdGlmaWNhdGlvbiB3aGVuIHNldHRpbmcgYSBub24t
b2JqZWN0IGFzIGFuIGV2ZW50IGxpc3RlbmVyICg5MTg4MSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cKaW5kZXggY2ExMjhhOGUzYTcyM2RkYmQ4ODA2MDI3ZWQxYzdlN2U1MjkwNDdmOS4uY2ZmZTAz
N2NkOTdhMGVlZDc1OWUyMmNkODI3YWFhMmQyMDFlNDE0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSw0NyBAQAorMjAxMi0wOC0wMyAgTGVhbmRybyBHcmFjaWEgR2lsICA8
bGVhbmRyb2dyYWNpYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Nocm9taXVtXSBJbXBsZW1l
bnQgdGhlIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMTExCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHRoZSBmdW5jaW9uYWxpdHkgb2Yg
dGhlIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyBBUEkgaW4gV2ViRnJhbWUuCisgICAgICAgIFRo
ZXNlIG1ldGhvZHMga2VlcCBhIGNhY2hlIG9mIHRoZSBtYXRjaCByZWN0cyBpbiBhIHNwZWNpYWwg
Y29vcmRpbmF0ZSBzeXN0ZW0KKyAgICAgICAgKGZpbmQtaW4tcGFnZSBjb29yZGluYXRlcykgYW5k
IHVwZGF0ZSB0aGVtIG9uIHNpemUgY2hhbmdlcy4gVGhleSBhbHNvIGFsbG93CisgICAgICAgIHRv
IHJlY292ZXIgdGhlIG1hdGNoIGNsb3Nlc3QgdG8gYSBnaXZlbiBwb2ludCwgdGhlcmVmb3JlIGVu
YWJsaW5nIHRvIG1vdmUKKyAgICAgICAgdG8gZmluZCBtYXRjaGVzIHdoZW4gdGFwcGluZyBvbiB0
aGVpciBjb3JyZXNwb25kaW5nIHRpY2ttYXJrcy4KKworICAgICAgICAqIHB1YmxpYy9XZWJGcmFt
ZS5oOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYkZyYW1lKToKKyAgICAgICAgKiBz
cmMvV2ViRnJhbWVJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpGaW5k
TWF0Y2g6OkZpbmRNYXRjaCk6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZUltcGw6OmZpbmQpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OnN0b3BG
aW5kaW5nKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpzY29wZVN0cmluZ01hdGNo
ZXMpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmluY3JlYXNlTWF0Y2hDb3VudCk6
CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6cmVzZXRNYXRjaENvdW50KToKKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpmaW5kTWF0Y2hNYXJrZXJzVmVyc2lvbik6CisgICAg
ICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6Y2xlYXJGaW5kTWF0Y2hlc0NhY2hlKToKKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjppc0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCk6CisgICAg
ICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6dXBkYXRlRmluZE1hdGNoUmVjdHMpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFjdGl2ZUZpbmRNYXRjaFJlY3QpOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUltcGw6OmZpbmRNYXRjaFJlY3RzKToKKyAgICAgICAgKFdlYktpdDo6
V2ViRnJhbWVJbXBsOjphcHBlbmRGaW5kTWF0Y2hSZWN0cyk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkZyYW1lSW1wbDo6c2VsZWN0TmVhcmVzdEZpbmRNYXRjaCk6CisgICAgICAgIChXZWJLaXQ6Oldl
YkZyYW1lSW1wbDo6bmVhcmVzdEZpbmRNYXRjaCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1l
SW1wbDo6c2VsZWN0RmluZE1hdGNoKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpX
ZWJGcmFtZUltcGwpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmRpZENoYW5nZUNv
bnRlbnRzU2l6ZSk6CisgICAgICAgICogc3JjL1dlYkZyYW1lSW1wbC5oOgorICAgICAgICAoV2Vi
RnJhbWVJbXBsKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjphY3RpdmVNYXRjaCk6
CisgICAgICAgIChGaW5kTWF0Y2gpOgorICAgICAgICAqIHRlc3RzL1dlYkZyYW1lVGVzdC5jcHA6
CisgICAgICAgICogdGVzdHMvZGF0YS9maW5kX2luX3BhZ2UuaHRtbDogQWRkZWQuCisgICAgICAg
ICogdGVzdHMvZGF0YS9maW5kX2luX3BhZ2VfZnJhbWUuaHRtbDogQWRkZWQuCisKIDIwMTItMDgt
MDMgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdl
YiBJbnNwZWN0b3I6IGVsaW1pbmF0ZSB2aXNpdEJhc2VDbGFzcyBtZXRob2QgZnJvbSBOTUkuIEl0
IGludHJvZHVjZXMgdW5uZWNlc3NhcnkgY29tcGxleGl0eS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCBm
YzQwNDNmZGM4YzAwMjYxMzVjMTcxMzFhMWNjZDI1MTA5OTY0Njg5Li40OTNmZDc5NGM1YTIxYjUw
YWFlOGJkOTQ4NGZlNGVlNTRkMzFhMWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmd5cGkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0zMzk3LDYgKzMz
OTcsOCBAQAogICAgICAgICAgICAgJ3BsYXRmb3JtL2Nocm9taXVtL0ZpbGVTeXN0ZW1DaHJvbWl1
bUxpbnV4LmNwcCcsCiAgICAgICAgICAgICAncGxhdGZvcm0vY2hyb21pdW0vRmlsZVN5c3RlbUNo
cm9taXVtTWFjLm1tJywKICAgICAgICAgICAgICdwbGF0Zm9ybS9jaHJvbWl1bS9GaWxlU3lzdGVt
Q2hyb21pdW1XaW4uY3BwJywKKyAgICAgICAgICAgICdwbGF0Zm9ybS9jaHJvbWl1bS9GaW5kSW5Q
YWdlQ29vcmRpbmF0ZXMuY3BwJywKKyAgICAgICAgICAgICdwbGF0Zm9ybS9jaHJvbWl1bS9GaW5k
SW5QYWdlQ29vcmRpbmF0ZXMuaCcsCiAgICAgICAgICAgICAncGxhdGZvcm0vY2hyb21pdW0vRnJh
bWVsZXNzU2Nyb2xsVmlldy5jcHAnLAogICAgICAgICAgICAgJ3BsYXRmb3JtL2Nocm9taXVtL0Zy
YW1lbGVzc1Njcm9sbFZpZXcuaCcsCiAgICAgICAgICAgICAncGxhdGZvcm0vY2hyb21pdW0vRnJh
bWVsZXNzU2Nyb2xsVmlld0NsaWVudC5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9SYW5nZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCmluZGV4IGU5NDNjZjVk
OTVlY2I0NGQwOThjNzNmZTRkMmU4Nzg0ODRjYWFiNTcuLjFmYjFmZGFiOGI0NmEzNTAwY2EyZDQ5
MDUyOGY1NjAxOWNkYTdlY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcApAQCAtMTk0Miw3ICsxOTQyLDIz
IEBAIHZvaWQgUmFuZ2U6OmdldEJvcmRlckFuZFRleHRRdWFkcyhWZWN0b3I8RmxvYXRRdWFkPiYg
cXVhZHMpIGNvbnN0CiAgICAgfQogfQogCi0gICAgCitGbG9hdFJlY3QgUmFuZ2U6OmVuY2xvc2lu
Z0JvdW5kaW5nQm94KCkgY29uc3QKK3sKKyAgICBpZiAoIW1fc3RhcnQuY29udGFpbmVyKCkpCisg
ICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAgIFZlY3RvcjxGbG9hdFF1YWQ+IHF1YWRz
OworICAgIHRleHRRdWFkcyhxdWFkcyk7CisgICAgaWYgKHF1YWRzLmlzRW1wdHkoKSkKKyAgICAg
ICAgcmV0dXJuIEZsb2F0UmVjdCgpOworCisgICAgRmxvYXRSZWN0IHJlc3VsdDsKKyAgICBmb3Ig
KHNpemVfdCBpID0gMDsgaSA8IHF1YWRzLnNpemUoKTsgKytpKQorICAgICAgICByZXN1bHQudW5p
dGUocXVhZHNbaV0uYm91bmRpbmdCb3goKSk7CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiBG
bG9hdFJlY3QgUmFuZ2U6OmJvdW5kaW5nUmVjdCgpIGNvbnN0CiB7CiAgICAgaWYgKCFtX3N0YXJ0
LmNvbnRhaW5lcigpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmggYi9T
b3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaAppbmRleCBiODRiZDYxNDU0MDlkM2ExOWIxMzU0ZjM1
Nzc4Njg1Zjg4MGUyOWMyLi5lODBjYTZkYTcyNzUxODAwNGZhMjA0YzRiNmZkZjk5NTcyMjI1NDdl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vUmFuZ2UuaApAQCAtMTI1LDYgKzEyNSw3IEBAIHB1YmxpYzoKICAgICAvLyBUcmFu
c2Zvcm0tZnJpZW5kbHkKICAgICB2b2lkIHRleHRRdWFkcyhWZWN0b3I8RmxvYXRRdWFkPiYsIGJv
b2wgdXNlU2VsZWN0aW9uSGVpZ2h0ID0gZmFsc2UsIFJhbmdlSW5GaXhlZFBvc2l0aW9uKiA9IDAp
IGNvbnN0OwogICAgIHZvaWQgZ2V0Qm9yZGVyQW5kVGV4dFF1YWRzKFZlY3RvcjxGbG9hdFF1YWQ+
JikgY29uc3Q7CisgICAgRmxvYXRSZWN0IGVuY2xvc2luZ0JvdW5kaW5nQm94KCkgY29uc3Q7CiAg
ICAgRmxvYXRSZWN0IGJvdW5kaW5nUmVjdCgpIGNvbnN0OwogCiAgICAgdm9pZCBub2RlQ2hpbGRy
ZW5DaGFuZ2VkKENvbnRhaW5lck5vZGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2Nocm9taXVtL0ZpbmRJblBhZ2VDb29yZGluYXRlcy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9jaHJvbWl1bS9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuY3BwCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LmI2NzAwZDQ4Y2RiNDM2ZTg5ZTFiNGI1OGE4OGYxMjg4OWQwY2YzYTMKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9GaW5kSW5QYWdlQ29vcmRpbmF0
ZXMuY3BwCkBAIC0wLDAgKzEsMTQ0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAq
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRo
ZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
KyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZp
bmRJblBhZ2VDb29yZGluYXRlcy5oIgorCisjaW5jbHVkZSAiRmxvYXRQb2ludC5oIgorI2luY2x1
ZGUgIkZsb2F0UXVhZC5oIgorI2luY2x1ZGUgIkZsb2F0UmVjdC5oIgorI2luY2x1ZGUgIkZyYW1l
LmgiCisjaW5jbHVkZSAiSW50UG9pbnQuaCIKKyNpbmNsdWRlICJOb2RlLmgiCisjaW5jbHVkZSAi
UmFuZ2UuaCIKKyNpbmNsdWRlICJSZW5kZXJCb3guaCIKKyNpbmNsdWRlICJSZW5kZXJPYmplY3Qu
aCIKKyNpbmNsdWRlICJSZW5kZXJQYXJ0LmgiCisjaW5jbHVkZSAiUmVuZGVyU3R5bGUuaCIKKyNp
bmNsdWRlICJSZW5kZXJWaWV3LmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3Bh
Y2UgV2ViQ29yZSB7CisKK3N0YXRpYyBGbG9hdFJlY3QgdG9Ob3JtYWxpemVkUmVjdChjb25zdCBG
bG9hdFJlY3QmIGFic29sdXRlUmVjdCwgY29uc3QgUmVuZGVyT2JqZWN0KiByZW5kZXJlciwgRmxv
YXRSZWN0KiBjb250YWluZXJCb3VuZGluZ0JveCA9IDApCit7CisgICAgQVNTRVJUKHJlbmRlcmVy
KTsKKworICAgIGNvbnN0IFJlbmRlck9iamVjdCogY29udGFpbmVyID0gcmVuZGVyZXItPmNvbnRh
aW5lcigpOworICAgIGlmICghY29udGFpbmVyKSB7CisgICAgICAgIGlmIChjb250YWluZXJCb3Vu
ZGluZ0JveCkKKyAgICAgICAgICAgICpjb250YWluZXJCb3VuZGluZ0JveCA9IEZsb2F0UmVjdCgp
OworICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7CisgICAgfQorCisgICAgRmxvYXRSZWN0IG5v
cm1hbGl6ZWRSZWN0ID0gYWJzb2x1dGVSZWN0OworICAgIEZsb2F0UmVjdCBjb250YWluZXJSZWN0
ID0gY29udGFpbmVyLT5hYnNvbHV0ZUJvdW5kaW5nQm94UmVjdCgpOworICAgIGlmIChjb250YWlu
ZXJCb3VuZGluZ0JveCkKKyAgICAgICAgKmNvbnRhaW5lckJvdW5kaW5nQm94ID0gY29udGFpbmVy
UmVjdDsKKworICAgIC8vIEZvciBSZW5kZXJCb3hlcyB3ZSB3YW50IHRvIG5vcm1hbGl6ZSBieSB0
aGUgbWF4IGxheW91dCBvdmVyZmxvdyBzaXplIGluc3RlYWQgb2Ygb25seSB0aGUgdmlzaWJsZSBi
b3VuZGluZyBib3guCisgICAgLy8gUXVhZHMgYW5kIHRoZWlyIGVuY2xvc2luZyBib3VuZGluZyBi
b3hlcyBuZWVkIHRvIGJlIHVzZWQgaW4gb3JkZXIgdG8ga2VlcCByZXN1bHRzIHRyYW5zZm9ybS1m
cmllbmRseS4KKyAgICBpZiAoY29udGFpbmVyLT5pc0JveCgpKSB7CisgICAgICAgIGNvbnN0IFJl
bmRlckJveCogY29udGFpbmVyQm94ID0gdG9SZW5kZXJCb3goY29udGFpbmVyKTsKKyAgICAgICAg
RmxvYXRQb2ludCBzY3JvbGxlZE9yaWdpbjsKKworICAgICAgICAvLyBGb3Igb3ZlcmZsb3c6c2Ny
b2xsIHdlIG5lZWQgdG8gZ2V0IHdoZXJlIHRoZSBhY3R1YWwgb3JpZ2luIGlzIGluZGVwZW5kZW50
bHkgb2YgdGhlIHNjcm9sbC4KKyAgICAgICAgaWYgKGNvbnRhaW5lci0+aGFzT3ZlcmZsb3dDbGlw
KCkpCisgICAgICAgICAgICBzY3JvbGxlZE9yaWdpbiA9IC1JbnRQb2ludChjb250YWluZXJCb3gt
PnNjcm9sbGVkQ29udGVudE9mZnNldCgpKTsKKworICAgICAgICBGbG9hdFJlY3Qgb3ZlcmZsb3dS
ZWN0KHNjcm9sbGVkT3JpZ2luLCBjb250YWluZXJCb3gtPm1heExheW91dE92ZXJmbG93KCkpOwor
ICAgICAgICBjb250YWluZXJSZWN0ID0gY29udGFpbmVyQm94LT5sb2NhbFRvQWJzb2x1dGVRdWFk
KEZsb2F0UXVhZChvdmVyZmxvd1JlY3QpLCBmYWxzZSkuZW5jbG9zaW5nQm91bmRpbmdCb3goKTsK
KyAgICB9CisKKyAgICBpZiAoY29udGFpbmVyUmVjdC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVy
biBGbG9hdFJlY3QoKTsKKworICAgIC8vIE1ha2UgdGhlIGNvb3JkaW5hdGVzIHJlbGF0aXZlIHRv
IHRoZSBjb250YWluZXIgZW5jbG9zaW5nIGJvdW5kaW5nIGJveC4KKyAgICAvLyBTaW5jZSB3ZSB3
b3JrIHdpdGggcmVjdHMgZW5jbG9zaW5nIHF1YWQgdW5pb25zIHRoaXMgaXMgc3RpbGwgdHJhbnNm
b3JtLWZyaWVuZGx5LgorICAgIG5vcm1hbGl6ZWRSZWN0Lm1vdmVCeSgtY29udGFpbmVyUmVjdC5s
b2NhdGlvbigpKTsKKworICAgIC8vIEZpeGVkIHBvc2l0aW9ucyBkbyBub3QgbWFrZSBzZW5zZSBp
biB0aGlzIGNvb3JkaW5hdGUgc3lzdGVtLCBidXQgbmVlZCB0byBsZWF2ZSBjb25zaXN0ZW50IHRp
Y2ttYXJrcy4KKyAgICAvLyBTbywgdXNlIHRoZWlyIHBvc2l0aW9uIHdoZW4gdGhlIHZpZXcgaXMg
bm90IHNjcm9sbGVkLCBsaWtlIGFuIGFic29sdXRlIHBvc2l0aW9uLgorICAgIGlmIChyZW5kZXJl
ci0+c3R5bGUoKS0+cG9zaXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uICYmIGNvbnRhaW5lci0+aXNS
ZW5kZXJWaWV3KCkpCisgICAgICAgIG5vcm1hbGl6ZWRSZWN0Lm1vdmUoLXRvUmVuZGVyVmlldyhj
b250YWluZXIpLT5mcmFtZVZpZXcoKS0+c2Nyb2xsT2Zmc2V0Rm9yRml4ZWRQb3NpdGlvbigpKTsK
KworICAgIG5vcm1hbGl6ZWRSZWN0LnNjYWxlKDEgLyBjb250YWluZXJSZWN0LndpZHRoKCksIDEg
LyBjb250YWluZXJSZWN0LmhlaWdodCgpKTsKKworICAgIHJldHVybiBub3JtYWxpemVkUmVjdDsK
K30KKworRmxvYXRSZWN0IEZpbmRJblBhZ2VDb29yZGluYXRlczo6ZnJvbUFic29sdXRlUmVjdChj
b25zdCBGbG9hdFJlY3QmIGlucHV0UmVjdCwgY29uc3QgUmVuZGVyT2JqZWN0KiByZW5kZXJlcikK
K3sKKyAgICBpZiAoIXJlbmRlcmVyIHx8IGlucHV0UmVjdC5pc0VtcHR5KCkpCisgICAgICAgIHJl
dHVybiBGbG9hdFJlY3QoKTsKKworICAgIC8vIE5vcm1hbGl6ZSB0aGUgaW5wdXQgcmVjdCB0byBp
dHMgY29udGFpbmVyLCBzYXZpbmcgdGhlIGNvbnRhaW5lciBib3VuZGluZyBib3ggZm9yIHRoZSBp
bmNvbWluZyBsb29wLgorICAgIEZsb2F0UmVjdCByZW5kZXJlckJvdW5kaW5nQm94OworICAgIEZs
b2F0UmVjdCBub3JtYWxpemVkUmVjdCA9IHRvTm9ybWFsaXplZFJlY3QoaW5wdXRSZWN0LCByZW5k
ZXJlciwgJnJlbmRlcmVyQm91bmRpbmdCb3gpOworICAgIHJlbmRlcmVyID0gcmVuZGVyZXItPmNv
bnRhaW5lcigpOworCisgICAgLy8gR28gdXAgYWNyb3NzIGZyYW1lcy4KKyAgICB3aGlsZSAocmVu
ZGVyZXIpIHsKKworICAgICAgICAvLyBHbyB1cCB0aGUgcmVuZGVyIHRyZWUgdW50aWwgd2UgcmVh
Y2ggdGhlIHJvb3Qgb2YgdGhlIGN1cnJlbnQgZnJhbWUgKHRoZSBSZW5kZXJWaWV3KS4KKyAgICAg
ICAgZm9yIChjb25zdCBSZW5kZXJPYmplY3QqIGNvbnRhaW5lciA9IHJlbmRlcmVyLT5jb250YWlu
ZXIoKTsgY29udGFpbmVyOyByZW5kZXJlciA9IGNvbnRhaW5lciwgY29udGFpbmVyID0gY29udGFp
bmVyLT5jb250YWluZXIoKSkgeworCisgICAgICAgICAgICAvLyBDb21wb3NlIHRoZSBub3JtYWxp
emVkIHJlY3RzLiBUaGUgYWJzb2x1dGUgYm91bmRpbmcgYm94IG9mIHRoZSBjb250YWluZXIgaXMg
Y2FsY3VsYXRlZCBpbiB0b05vcm1hbGl6ZWRSZWN0CisgICAgICAgICAgICAvLyBhbmQgY2FuIGJl
IHJldXNlZCBmb3IgdGhlIG5leHQgaXRlcmF0aW9uIG9mIHRoZSBsb29wLgorICAgICAgICAgICAg
RmxvYXRSZWN0IG5vcm1hbGl6ZWRCb3hSZWN0ID0gdG9Ob3JtYWxpemVkUmVjdChyZW5kZXJlckJv
dW5kaW5nQm94LCByZW5kZXJlciwgJnJlbmRlcmVyQm91bmRpbmdCb3gpOworICAgICAgICAgICAg
bm9ybWFsaXplZFJlY3Quc2NhbGUobm9ybWFsaXplZEJveFJlY3Qud2lkdGgoKSwgbm9ybWFsaXpl
ZEJveFJlY3QuaGVpZ2h0KCkpOworICAgICAgICAgICAgbm9ybWFsaXplZFJlY3QubW92ZUJ5KG5v
cm1hbGl6ZWRCb3hSZWN0LmxvY2F0aW9uKCkpOworCisgICAgICAgICAgICBpZiAobm9ybWFsaXpl
ZFJlY3QuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIHJldHVybiBub3JtYWxpemVkUmVjdDsK
KyAgICAgICAgfQorCisgICAgICAgIC8vIEp1bXAgdG8gdGhlIHJlbmRlcmVyIG93bmluZyB0aGUg
ZnJhbWUsIGlmIGFueS4KKyAgICAgICAgQVNTRVJUKHJlbmRlcmVyLT5pc1JlbmRlclZpZXcoKSk7
CisgICAgICAgIHJlbmRlcmVyID0gcmVuZGVyZXItPmZyYW1lKCkgPyByZW5kZXJlci0+ZnJhbWUo
KS0+b3duZXJSZW5kZXJlcigpIDogMDsKKworICAgICAgICAvLyBVcGRhdGUgdGhlIGFic29sdXRl
IGNvb3JkaW5hdGVzIHRvIHRoZSBuZXcgZnJhbWUuCisgICAgICAgIGlmIChyZW5kZXJlcikKKyAg
ICAgICAgICAgIHJlbmRlcmVyQm91bmRpbmdCb3ggPSByZW5kZXJlci0+YWJzb2x1dGVCb3VuZGlu
Z0JveFJlY3QoKTsKKyAgICB9CisKKyAgICByZXR1cm4gbm9ybWFsaXplZFJlY3Q7Cit9CisKK0Zs
b2F0UmVjdCBGaW5kSW5QYWdlQ29vcmRpbmF0ZXM6OmZyb21SYW5nZShQYXNzUmVmUHRyPFJhbmdl
PiBpbnB1dFJhbmdlKQoreworICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSBpbnB1dFJhbmdlOwor
ICAgIGlmICghcmFuZ2UgfHwgIXJhbmdlLT5maXJzdE5vZGUoKSkKKyAgICAgICAgcmV0dXJuIEZs
b2F0UmVjdCgpOworCisgICAgcmV0dXJuIGZyb21BYnNvbHV0ZVJlY3QocmFuZ2UtPmVuY2xvc2lu
Z0JvdW5kaW5nQm94KCksIHJhbmdlLT5maXJzdE5vZGUoKS0+cmVuZGVyZXIoKSk7Cit9CisKK30g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2Nocm9taXVtL0ZpbmRJblBhZ2VDb29yZGluYXRlcy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vY2hyb21pdW0vRmluZEluUGFnZUNvb3JkaW5hdGVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMGNlZjA0NmNl
ZjM0ZWFiZDU3YjFhZDQ4ODQ4NDg0NmRiMDA1Yjk0OQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0ZpbmRJblBhZ2VDb29yZGluYXRlcy5oCkBAIC0w
LDAgKzEsNTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1l
dDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
cgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaWZuZGVmIEZpbmRJblBhZ2VDb29yZGluYXRlc19oCisjZGVmaW5lIEZpbmRJ
blBhZ2VDb29yZGluYXRlc19oCisKKyNpbmNsdWRlICJGbG9hdFJlY3QuaCIKKyNpbmNsdWRlIDx3
dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFJhbmdlOwor
Y2xhc3MgUmVuZGVyT2JqZWN0OworCisvLyBDb252ZXJ0cyBjb29yZGluYXRlcyB0byB0aGUgZmlu
ZC1pbi1wYWdlIGNvb3JkaW5hdGUgc3lzdGVtLgorLy8gVGhpcyBjb29yZGluYXRlIHN5c3RlbSBp
cyBkZXNpZ25lZCB0byBnaXZlIGNvbnNpc3RlbnQgdGlja21hcmsgcmVzdWx0cyBpbiBtdWx0aXBs
ZSBmcmFtZQorLy8gcGFnZXMgd2hlcmUgdGhlIGNvbnRlbnRzIG9mIHN1YmZyYW1lcyB0aGF0IG1p
Z2h0IGhhdmUgZmluZCBtYXRjaGVzIG5lZWQgdG8gYmUgc2Nyb2xsZWQuCisvLyBUaGV5IGFyZSBy
ZXByZXNlbnRlZCBhcyBub3JtYWxpemVkIGZyYWN0aW9ucyBvZiB0aGUgbWFpbiBwYWdlIGRvY3Vt
ZW50IHdpdGggdGhlIHByb3BlcnR5CisvLyB0aGF0IHRoZXkgYXJlIGJ1aWx0IGJ5IGNvbXBvc2lu
ZyB0aGUgcmVsYXRpdmUgcG9zaXRpb24gb2YgZWFjaCByZW5kZXJlciB0byB0aGUgZnVsbCBlZmZl
Y3RpdmUKKy8vIGxheW91dCBzaXplIG9mIGl0cyBjb250YWluZXIgYWxsIHRoZSB3YXkgdXAgdGhl
IHJlbmRlciB0cmVlLiBUaGVyZWZvcmUsIHRoZXNlIGNvb3JkaW5hdGVzCisvLyBhcmUgc2Nyb2xs
LWluZGVwZW5kZW50IGFuZCBhbHdheXMgcmVwcmVzZW50IHNjcm9sbGVkIGNvbnRlbnRzIHNjYWxl
ZCB0byB0aGVpciB2aXNpYmxlIGxheW91dC4KKy8vIFRoZSBwcm92aWRlZCBtZXRob2RzIHN1cHBv
cnQgc2Nyb2xsOm92ZXJmbG93IGFuZCBhcmUgQ1NTIHBvc2l0aW9uIGFuZCB0cmFuc2Zvcm0tZnJp
ZW5kbHkuCitjbGFzcyBGaW5kSW5QYWdlQ29vcmRpbmF0ZXMgeworcHVibGljOgorICAgIHN0YXRp
YyBGbG9hdFJlY3QgZnJvbUFic29sdXRlUmVjdChjb25zdCBGbG9hdFJlY3QmLCBjb25zdCBSZW5k
ZXJPYmplY3QqKTsKKyAgICBzdGF0aWMgRmxvYXRSZWN0IGZyb21SYW5nZShQYXNzUmVmUHRyPFJh
bmdlPik7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJhbWUuaCBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYkZyYW1lLmgKaW5kZXggMDM5YWQ2Zjk5NjlmYjYxMTI5OGEy
NzkwOTljMDI1NjAwNzFiZTc2Ni4uOWE5OTM1NTRmYzRlMDQ1ODI2YWVkOWQ4MmJmMTBhODY3YWZj
OGMzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRnJhbWUu
aAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGcmFtZS5oCkBAIC03NSw2
ICs3NSw4IEBAIGNsYXNzIFdlYlVSTFJlcXVlc3Q7CiBjbGFzcyBXZWJWaWV3Owogc3RydWN0IFdl
YkNvbnNvbGVNZXNzYWdlOwogc3RydWN0IFdlYkZpbmRPcHRpb25zOworc3RydWN0IFdlYkZsb2F0
UG9pbnQ7CitzdHJ1Y3QgV2ViRmxvYXRSZWN0Owogc3RydWN0IFdlYlBvaW50Owogc3RydWN0IFdl
YlByaW50UGFyYW1zOwogc3RydWN0IFdlYlJlY3Q7CkBAIC01NzUsNiArNTc3LDMwIEBAIHB1Ymxp
YzoKICAgICAvLyBvZiBtYXRjaGVzIGZvdW5kIGR1cmluZyB0aGUgc2NvcGluZyBlZmZvcnQuCiAg
ICAgdmlydHVhbCB2b2lkIHJlc2V0TWF0Y2hDb3VudCgpID0gMDsKIAorICAgIC8vIFJldHVybnMg
YSBjb3VudGVyIHRoYXQgaXMgaW5jcmVtZW50ZWQgd2hlbiB0aGUgZmluZC1pbi1wYWdlIG1hcmtl
cnMgYXJlCisgICAgLy8gY2hhbmdlZCBvbiBhbnkgZnJhbWUuIFN3aXRjaGluZyB0aGUgYWN0aXZl
IG1hcmtlciBkb2Vzbid0IGNoYW5nZSB0aGUKKyAgICAvLyBjdXJyZW50IHZlcnNpb24uIFNob3Vs
ZCBiZSBjYWxsZWQgb25seSBvbiB0aGUgbWFpbiBmcmFtZS4KKyAgICB2aXJ0dWFsIGludCBmaW5k
TWF0Y2hNYXJrZXJzVmVyc2lvbigpIGNvbnN0ID0gMDsKKworICAgIC8vIFJldHVybnMgdGhlIGJv
dW5kaW5nIGJveCBvZiB0aGUgYWN0aXZlIGZpbmQtaW4tcGFnZSBtYXRjaCBtYXJrZXIgb3IgYW4K
KyAgICAvLyBlbXB0eSByZWN0IGlmIG5vIHN1Y2ggbWFya2VyIGV4aXN0cy4gVGhlIHJlY3QgaXMg
cmV0dXJuZWQgaW4gZmluZC1pbi1wYWdlCisgICAgLy8gY29vcmRpbmF0ZXMgd2hhdGV2ZXIgZnJh
bWUgdGhlIGFjdGl2ZSBtYXJrZXIgaXMuCisgICAgLy8gU2hvdWxkIGJlIGNhbGxlZCBvbmx5IG9u
IHRoZSBtYWluIGZyYW1lLgorICAgIHZpcnR1YWwgV2ViRmxvYXRSZWN0IGFjdGl2ZUZpbmRNYXRj
aFJlY3QoKSA9IDA7CisKKyAgICAvLyBTd2FwcyB0aGUgY29udGVudHMgb2YgdGhlIHByb3ZpZGVk
IHZlY3RvciB3aXRoIHRoZSBib3VuZGluZyBib3hlcyBvZiB0aGUKKyAgICAvLyBmaW5kLWluLXBh
Z2UgbWF0Y2ggbWFya2VycyBmcm9tIGFsbCBmcmFtZXMuIFRoZSBib3VuZGluZyBib3hlcyBhcmUg
cmV0dXJuZWQKKyAgICAvLyBpbiBmaW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMuIFRoaXMgbWV0aG9k
IHNob3VsZCBiZSBjYWxsZWQgb25seSBvbiB0aGUgbWFpbiBmcmFtZS4KKyAgICB2aXJ0dWFsIHZv
aWQgZmluZE1hdGNoUmVjdHMoV2ViVmVjdG9yPFdlYkZsb2F0UmVjdD4mKSA9IDA7CisKKyAgICAv
LyBTZWxlY3RzIHRoZSBmaW5kLWluLXBhZ2UgbWF0Y2ggaW4gdGhlIGFwcHJvcHJpYXRlIGZyYW1l
IGNsb3Nlc3QgdG8gdGhlCisgICAgLy8gcHJvdmlkZWQgcG9pbnQgaW4gZmluZC1pbi1wYWdlIGNv
b3JkaW5hdGVzLiBSZXR1cm5zIHRoZSBvcmRpbmFsIG9mIHN1Y2gKKyAgICAvLyBtYXRjaCBvciAt
MSBpZiBub25lIGNvdWxkIGJlIGZvdW5kLiBJZiBub3QgbnVsbCwgc2VsZWN0aW9uUmVjdCBpcyBz
ZXQgdG8KKyAgICAvLyB0aGUgYm91bmRpbmcgYm94IG9mIHRoZSBzZWxlY3RlZCBtYXRjaCBpbiB3
aW5kb3cgY29vcmRpbmF0ZXMuCisgICAgLy8gVGhpcyBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCBv
bmx5IG9uIHRoZSBtYWluIGZyYW1lLgorICAgIHZpcnR1YWwgaW50IHNlbGVjdE5lYXJlc3RGaW5k
TWF0Y2goY29uc3QgV2ViRmxvYXRQb2ludCYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBXZWJSZWN0KiBzZWxlY3Rpb25SZWN0KSA9IDA7CisKICAgICAvLyBPcmllbnRh
dGlvbkNoYW5nZSBldmVudCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0KIAogICAgIC8vIE9yaWVudGF0aW9uIGlzIHRoZSBpbnRlcmZhY2Ugb3JpZW50YXRpb24g
aW4gZGVncmVlcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZy
YW1lSW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3Bw
CmluZGV4IDllMmJhMmM0Y2NhOTg5ZDI3ZTIyY2Q3NTFmYjg1ZjE1NzFjMzRlNmUuLjI5MjFhZjhi
MDRjYzJhNzUzZmEzNTY4MGE0ZGFkNDM4MTVhOGYyMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcApAQCAtODksNiArODksNyBAQAogI2luY2x1ZGUgIkV2
ZW50SGFuZGxlci5oIgogI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXJXcmFwcGVyLmgiCiAjaW5jbHVk
ZSAiRmlsZVN5c3RlbVR5cGUuaCIKKyNpbmNsdWRlICJGaW5kSW5QYWdlQ29vcmRpbmF0ZXMuaCIK
ICNpbmNsdWRlICJGb2N1c0NvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJGb250Q2FjaGUuaCIKICNp
bmNsdWRlICJGb3JtU3RhdGUuaCIKQEAgLTExOCw2ICsxMTksNyBAQAogI2luY2x1ZGUgIlBsYXRm
b3JtU3VwcG9ydC5oIgogI2luY2x1ZGUgIlBsdWdpbkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiUHJp
bnRDb250ZXh0LmgiCisjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAjaW5jbHVkZSAiUmVuZGVyRnJh
bWUuaCIKICNpbmNsdWRlICJSZW5kZXJMYXllci5oIgogI2luY2x1ZGUgIlJlbmRlck9iamVjdC5o
IgpAQCAtMTY5LDEwICsxNzEsMTEgQEAKICNpbmNsdWRlICJYUGF0aFJlc3VsdC5oIgogI2luY2x1
ZGUgIm1hcmt1cC5oIgogI2luY2x1ZGUgInBhaW50aW5nL0dyYXBoaWNzQ29udGV4dEJ1aWxkZXIu
aCIKKyNpbmNsdWRlICJwbGF0Zm9ybS9XZWJGbG9hdFBvaW50LmgiCisjaW5jbHVkZSAicGxhdGZv
cm0vV2ViRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViUG9pbnQuaCIKICNpbmNs
dWRlICJwbGF0Zm9ybS9XZWJSZWN0LmgiCiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViU2VyaWFsaXpl
ZFNjcmlwdFZhbHVlLmgiCi0jaW5jbHVkZSAicGxhdGZvcm0vV2ViU2l6ZS5oIgogI2luY2x1ZGUg
InBsYXRmb3JtL1dlYlVSTEVycm9yLmgiCiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViVmVjdG9yLmgi
CiAKQEAgLTUxNCw2ICs1MTcsMTMgQEAgc3RhdGljIFdlYkRhdGFTb3VyY2UqIERhdGFTb3VyY2VG
b3JEb2NMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICByZXR1cm4gbG9hZGVyID8g
V2ViRGF0YVNvdXJjZUltcGw6OmZyb21Eb2N1bWVudExvYWRlcihsb2FkZXIpIDogMDsKIH0KIAor
V2ViRnJhbWVJbXBsOjpGaW5kTWF0Y2g6OkZpbmRNYXRjaChQYXNzUmVmUHRyPFJhbmdlPiByYW5n
ZSwgaW50IG9yZGluYWwpCisgICAgOiBtX3JhbmdlKHJhbmdlKQorICAgICwgbV9vcmRpbmFsKG9y
ZGluYWwpCisgICAgLCBtX3JlY3QoMCwgMCwgMCwgMCkKK3sKK30KKwogLy8gV2ViRnJhbWUgLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQogCiBjbGFzcyBXZWJGcmFtZUltcGw6OkRlZmVycmVkU2NvcGVTdHJpbmdNYXRjaGVz
IHsKQEAgLTE2MzUsNiArMTY0NSwxMCBAQCBib29sIFdlYkZyYW1lSW1wbDo6ZmluZChpbnQgaWRl
bnRpZmllciwKICAgICBtX2FjdGl2ZU1hdGNoID0gZnJhbWUoKS0+ZWRpdG9yKCktPmZpbmRTdHJp
bmdBbmRTY3JvbGxUb1Zpc2libGUoc2VhcmNoVGV4dCwgbV9hY3RpdmVNYXRjaC5nZXQoKSwgZmlu
ZE9wdGlvbnMpOwogCiAgICAgaWYgKCFtX2FjdGl2ZU1hdGNoKSB7CisgICAgICAgIC8vIElmIHdl
J3JlIGZpbmRpbmcgbmV4dCB0aGUgbmV4dCBhY3RpdmUgbWF0Y2ggbWlnaHQgbm90IGJlIGluIHRo
ZSBjdXJyZW50IGZyYW1lLgorICAgICAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZG9uJ3Qgd2FudCB0
byBjbGVhciB0aGUgbWF0Y2hlcyBjYWNoZS4KKyAgICAgICAgaWYgKCFvcHRpb25zLmZpbmROZXh0
KQorICAgICAgICAgICAgY2xlYXJGaW5kTWF0Y2hlc0NhY2hlKCk7CiAgICAgICAgIGludmFsaWRh
dGVBcmVhKEludmFsaWRhdGVBbGwpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQpAQCAt
MTY4Niw2ICsxNzAwLDcgQEAgdm9pZCBXZWJGcmFtZUltcGw6OnN0b3BGaW5kaW5nKGJvb2wgY2xl
YXJTZWxlY3Rpb24pCiAgICAgLy8gUmVtb3ZlIGFsbCBtYXJrZXJzIGZvciBtYXRjaGVzIGZvdW5k
IGFuZCB0dXJuIG9mZiB0aGUgaGlnaGxpZ2h0aW5nLgogICAgIGZyYW1lKCktPmRvY3VtZW50KCkt
Pm1hcmtlcnMoKS0+cmVtb3ZlTWFya2VycyhEb2N1bWVudE1hcmtlcjo6VGV4dE1hdGNoKTsKICAg
ICBmcmFtZSgpLT5lZGl0b3IoKS0+c2V0TWFya2VkVGV4dE1hdGNoZXNBcmVIaWdobGlnaHRlZChm
YWxzZSk7CisgICAgY2xlYXJGaW5kTWF0Y2hlc0NhY2hlKCk7CiAKICAgICAvLyBMZXQgdGhlIGZy
YW1lIGtub3cgdGhhdCB3ZSBkb24ndCB3YW50IHRpY2ttYXJrcyBvciBoaWdobGlnaHRpbmcgYW55
bW9yZS4KICAgICBpbnZhbGlkYXRlQXJlYShJbnZhbGlkYXRlQWxsKTsKQEAgLTE3MDgsNiArMTcy
MywxMCBAQCB2b2lkIFdlYkZyYW1lSW1wbDo6c2NvcGVTdHJpbmdNYXRjaGVzKGludCBpZGVudGlm
aWVyLAogICAgICAgICAvLyBDbGVhciBoaWdobGlnaHRpbmcgZm9yIHRoaXMgZnJhbWUuCiAgICAg
ICAgIGlmIChmcmFtZSgpLT5lZGl0b3IoKS0+bWFya2VkVGV4dE1hdGNoZXNBcmVIaWdobGlnaHRl
ZCgpKQogICAgICAgICAgICAgZnJhbWUoKS0+cGFnZSgpLT51bm1hcmtBbGxUZXh0TWF0Y2hlcygp
OworCisgICAgICAgIC8vIENsZWFyIHRoZSB0aWNrbWFya3MgYW5kIHJlc3VsdHMgY2FjaGUuCisg
ICAgICAgIGNsZWFyRmluZE1hdGNoZXNDYWNoZSgpOworCiAgICAgICAgIC8vIENsZWFyIHRoZSBj
b3VudGVycyBmcm9tIGxhc3Qgb3BlcmF0aW9uLgogICAgICAgICBtX2xhc3RNYXRjaENvdW50ID0g
MDsKICAgICAgICAgbV9uZXh0SW52YWxpZGF0ZUFmdGVyID0gMDsKQEAgLTE4MDYsNiArMTgyNSw4
IEBAIHZvaWQgV2ViRnJhbWVJbXBsOjpzY29wZVN0cmluZ01hdGNoZXMoaW50IGlkZW50aWZpZXIs
CiAKICAgICAgICAgYWRkTWFya2VyKHJlc3VsdFJhbmdlLmdldCgpLCBmb3VuZEFjdGl2ZU1hdGNo
KTsKIAorICAgICAgICBtX2ZpbmRNYXRjaGVzQ2FjaGUuYXBwZW5kKEZpbmRNYXRjaChyZXN1bHRS
YW5nZS5nZXQoKSwgbV9sYXN0TWF0Y2hDb3VudCArIG1hdGNoQ291bnQpKTsKKwogICAgICAgICAv
LyBTZXQgdGhlIG5ldyBzdGFydCBmb3IgdGhlIHNlYXJjaCByYW5nZSB0byBiZSB0aGUgZW5kIG9m
IHRoZSBwcmV2aW91cwogICAgICAgICAvLyByZXN1bHQgcmFuZ2UuIFRoZXJlIGlzIG5vIG5lZWQg
dG8gdXNlIGEgVmlzaWJsZVBvc2l0aW9uIGhlcmUsCiAgICAgICAgIC8vIHNpbmNlIGZpbmRQbGFp
blRleHQgd2lsbCB1c2UgYSBUZXh0SXRlcmF0b3IgdG8gZ28gb3ZlciB0aGUgdmlzaWJsZQpAQCAt
MTg3Niw2ICsxODk3LDkgQEAgdm9pZCBXZWJGcmFtZUltcGw6OmluY3JlYXNlTWF0Y2hDb3VudChp
bnQgY291bnQsIGludCBpZGVudGlmaWVyKQogICAgIC8vIFRoaXMgZnVuY3Rpb24gc2hvdWxkIG9u
bHkgYmUgY2FsbGVkIG9uIHRoZSBtYWluZnJhbWUuCiAgICAgQVNTRVJUKCFwYXJlbnQoKSk7CiAK
KyAgICBpZiAoY291bnQpCisgICAgICAgICsrbV9maW5kTWF0Y2hNYXJrZXJzVmVyc2lvbjsKKwog
ICAgIG1fdG90YWxNYXRjaENvdW50ICs9IGNvdW50OwogCiAgICAgLy8gVXBkYXRlIHRoZSBVSSB3
aXRoIHRoZSBsYXRlc3QgZmluZGluZ3MuCkBAIC0xODk0LDYgKzE5MTgsOSBAQCB2b2lkIFdlYkZy
YW1lSW1wbDo6cmVwb3J0RmluZEluUGFnZVNlbGVjdGlvbihjb25zdCBXZWJSZWN0JiBzZWxlY3Rp
b25SZWN0LAogCiB2b2lkIFdlYkZyYW1lSW1wbDo6cmVzZXRNYXRjaENvdW50KCkKIHsKKyAgICBp
ZiAobV90b3RhbE1hdGNoQ291bnQgPiAwKQorICAgICAgICArK21fZmluZE1hdGNoTWFya2Vyc1Zl
cnNpb247CisKICAgICBtX3RvdGFsTWF0Y2hDb3VudCA9IDA7CiAgICAgbV9mcmFtZXNTY29waW5n
Q291bnQgPSAwOwogfQpAQCAtMTkzOCw2ICsxOTY1LDE5NyBAQCB2b2lkIFdlYkZyYW1lSW1wbDo6
ZGlzcGF0Y2hNZXNzYWdlRXZlbnRXaXRoT3JpZ2luQ2hlY2soY29uc3QgV2ViU2VjdXJpdHlPcmln
aW4mCiAgICAgbV9mcmFtZS0+ZG9tV2luZG93KCktPmRpc3BhdGNoTWVzc2FnZUV2ZW50V2l0aE9y
aWdpbkNoZWNrKGludGVuZGVkVGFyZ2V0T3JpZ2luLmdldCgpLCBldmVudCwgMCk7CiB9CiAKK2lu
dCBXZWJGcmFtZUltcGw6OmZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKCkgY29uc3QKK3sKKyAgICAv
LyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBvbiB0aGUgbWFpbmZyYW1lLgor
ICAgIEFTU0VSVCghcGFyZW50KCkpOworICAgIHJldHVybiBtX2ZpbmRNYXRjaE1hcmtlcnNWZXJz
aW9uOworfQorCit2b2lkIFdlYkZyYW1lSW1wbDo6Y2xlYXJGaW5kTWF0Y2hlc0NhY2hlKCkKK3sK
KyAgICBpZiAoIW1fZmluZE1hdGNoZXNDYWNoZS5pc0VtcHR5KCkpCisgICAgICAgIHZpZXdJbXBs
KCktPm1haW5GcmFtZUltcGwoKS0+bV9maW5kTWF0Y2hNYXJrZXJzVmVyc2lvbisrOworCisgICAg
bV9maW5kTWF0Y2hlc0NhY2hlLmNsZWFyKCk7CisgICAgbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlk
ID0gZmFsc2U7Cit9CisKK2Jvb2wgV2ViRnJhbWVJbXBsOjppc0FjdGl2ZU1hdGNoRnJhbWVWYWxp
ZCgpIGNvbnN0Cit7CisgICAgY29uc3QgV2ViRnJhbWVJbXBsKiBtYWluRnJhbWVJbXBsID0gdmll
d0ltcGwoKS0+bWFpbkZyYW1lSW1wbCgpOworICAgIGNvbnN0IFdlYkZyYW1lSW1wbCogYWN0aXZl
TWF0Y2hGcmFtZSA9IG1haW5GcmFtZUltcGwtPmFjdGl2ZU1hdGNoRnJhbWUoKTsKKyAgICByZXR1
cm4gYWN0aXZlTWF0Y2hGcmFtZSAmJiBhY3RpdmVNYXRjaEZyYW1lLT5tX2FjdGl2ZU1hdGNoCisg
ICAgICAgICAgICAmJiBhY3RpdmVNYXRjaEZyYW1lLT5mcmFtZSgpLT50cmVlKCktPmlzRGVzY2Vu
ZGFudE9mKG1haW5GcmFtZUltcGwtPmZyYW1lKCkpOworfQorCit2b2lkIFdlYkZyYW1lSW1wbDo6
dXBkYXRlRmluZE1hdGNoUmVjdHMoKQoreworICAgIFdlYlNpemUgY3VycmVudENvbnRlbnRzU2l6
ZSA9IGNvbnRlbnRzU2l6ZSgpOworICAgIGlmIChtX2NvbnRlbnRzU2l6ZUZvckN1cnJlbnRGaW5k
TWF0Y2hSZWN0cyAhPSBjdXJyZW50Q29udGVudHNTaXplKSB7CisgICAgICAgIG1fY29udGVudHNT
aXplRm9yQ3VycmVudEZpbmRNYXRjaFJlY3RzID0gY3VycmVudENvbnRlbnRzU2l6ZTsKKyAgICAg
ICAgbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFsc2U7CisgICAgfQorCisgICAgdW5zaWdu
ZWQgZGVhZE1hdGNoZXMgPSAwOworICAgIGZvciAoVmVjdG9yPEZpbmRNYXRjaD46Oml0ZXJhdG9y
IGl0ID0gbV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2luKCk7IGl0ICE9IG1fZmluZE1hdGNoZXNDYWNo
ZS5lbmQoKTsgKytpdCkgeworICAgICAgICBpZiAoIWl0LT5tX3JhbmdlLT5ib3VuZGFyeVBvaW50
c1ZhbGlkKCkgfHwgIWl0LT5tX3JhbmdlLT5zdGFydENvbnRhaW5lcigpLT5pbkRvY3VtZW50KCkp
CisgICAgICAgICAgICBpdC0+bV9yZWN0ID0gRmxvYXRSZWN0KDAsIDAsIDAsIDApOworICAgICAg
ICBlbHNlIGlmICghbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkKQorICAgICAgICAgICAgaXQtPm1f
cmVjdCA9IEZpbmRJblBhZ2VDb29yZGluYXRlczo6ZnJvbVJhbmdlKGl0LT5tX3JhbmdlKTsKKwor
ICAgICAgICBpZiAoaXQtPm1fcmVjdC5pc0VtcHR5KCkpCisgICAgICAgICAgICArK2RlYWRNYXRj
aGVzOworICAgIH0KKworICAgIC8vIFJlbW92ZSBhbnkgaW52YWxpZCBtYXRjaGVzIGZyb20gdGhl
IGNhY2hlLgorICAgIGlmIChkZWFkTWF0Y2hlcykgeworICAgICAgICBWZWN0b3I8RmluZE1hdGNo
PiBmaWx0ZXJlZE1hdGNoZXM7CisgICAgICAgIGZpbHRlcmVkTWF0Y2hlcy5yZXNlcnZlQ2FwYWNp
dHkobV9maW5kTWF0Y2hlc0NhY2hlLnNpemUoKSAtIGRlYWRNYXRjaGVzKTsKKworICAgICAgICBm
b3IgKFZlY3RvcjxGaW5kTWF0Y2g+Ojpjb25zdF9pdGVyYXRvciBpdCA9IG1fZmluZE1hdGNoZXND
YWNoZS5iZWdpbigpOyBpdCAhPSBtX2ZpbmRNYXRjaGVzQ2FjaGUuZW5kKCk7ICsraXQpCisgICAg
ICAgICAgICBpZiAoIWl0LT5tX3JlY3QuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGZpbHRl
cmVkTWF0Y2hlcy5hcHBlbmQoKml0KTsKKworICAgICAgICBtX2ZpbmRNYXRjaGVzQ2FjaGUuc3dh
cChmaWx0ZXJlZE1hdGNoZXMpOworICAgIH0KKworICAgIC8vIEludmFsaWRhdGUgdGhlIHJlY3Rz
IGluIGNoaWxkIGZyYW1lcy4gV2lsbCBiZSB1cGRhdGVkIGxhdGVyIGR1cmluZyB0cmF2ZXJzYWwu
CisgICAgaWYgKCFtX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQpCisgICAgICAgIGZvciAoV2ViRnJh
bWUqIGNoaWxkID0gZmlyc3RDaGlsZCgpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+bmV4dFNpYmxp
bmcoKSkKKyAgICAgICAgICAgIHN0YXRpY19jYXN0PFdlYkZyYW1lSW1wbCo+KGNoaWxkKS0+bV9m
aW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFsc2U7CisKKyAgICBtX2ZpbmRNYXRjaFJlY3RzQXJl
VmFsaWQgPSB0cnVlOworfQorCitXZWJGbG9hdFJlY3QgV2ViRnJhbWVJbXBsOjphY3RpdmVGaW5k
TWF0Y2hSZWN0KCkKK3sKKyAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxl
ZCBvbiB0aGUgbWFpbmZyYW1lLgorICAgIEFTU0VSVCghcGFyZW50KCkpOworCisgICAgaWYgKCFp
c0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCgpKQorICAgICAgICByZXR1cm4gV2ViRmxvYXRSZWN0KCk7
CisKKyAgICByZXR1cm4gV2ViRmxvYXRSZWN0KEZpbmRJblBhZ2VDb29yZGluYXRlczo6ZnJvbVJh
bmdlKG1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWUtPm1fYWN0aXZlTWF0Y2gpKTsKK30KKwordm9p
ZCBXZWJGcmFtZUltcGw6OmZpbmRNYXRjaFJlY3RzKFdlYlZlY3RvcjxXZWJGbG9hdFJlY3Q+JiBv
dXRwdXRSZWN0cykKK3sKKyAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxl
ZCBvbiB0aGUgbWFpbmZyYW1lLgorICAgIEFTU0VSVCghcGFyZW50KCkpOworCisgICAgVmVjdG9y
PFdlYkZsb2F0UmVjdD4gbWF0Y2hSZWN0czsKKyAgICBmb3IgKFdlYkZyYW1lSW1wbCogZnJhbWUg
PSB0aGlzOyBmcmFtZTsgZnJhbWUgPSBzdGF0aWNfY2FzdDxXZWJGcmFtZUltcGwqPihmcmFtZS0+
dHJhdmVyc2VOZXh0KGZhbHNlKSkpCisgICAgICAgIGZyYW1lLT5hcHBlbmRGaW5kTWF0Y2hSZWN0
cyhtYXRjaFJlY3RzKTsKKworICAgIG91dHB1dFJlY3RzID0gbWF0Y2hSZWN0czsKK30KKwordm9p
ZCBXZWJGcmFtZUltcGw6OmFwcGVuZEZpbmRNYXRjaFJlY3RzKFZlY3RvcjxXZWJGbG9hdFJlY3Q+
JiBmcmFtZVJlY3RzKQoreworICAgIHVwZGF0ZUZpbmRNYXRjaFJlY3RzKCk7CisgICAgZnJhbWVS
ZWN0cy5yZXNlcnZlQ2FwYWNpdHkoZnJhbWVSZWN0cy5zaXplKCkgKyBtX2ZpbmRNYXRjaGVzQ2Fj
aGUuc2l6ZSgpKTsKKyAgICBmb3IgKFZlY3RvcjxGaW5kTWF0Y2g+Ojpjb25zdF9pdGVyYXRvciBp
dCA9IG1fZmluZE1hdGNoZXNDYWNoZS5iZWdpbigpOyBpdCAhPSBtX2ZpbmRNYXRjaGVzQ2FjaGUu
ZW5kKCk7ICsraXQpIHsKKyAgICAgICAgQVNTRVJUKCFpdC0+bV9yZWN0LmlzRW1wdHkoKSk7Cisg
ICAgICAgIGZyYW1lUmVjdHMuYXBwZW5kKGl0LT5tX3JlY3QpOworICAgIH0KK30KKworaW50IFdl
YkZyYW1lSW1wbDo6c2VsZWN0TmVhcmVzdEZpbmRNYXRjaChjb25zdCBXZWJGbG9hdFBvaW50JiBw
b2ludCwgV2ViUmVjdCogc2VsZWN0aW9uUmVjdCkKK3sKKyAgICAvLyBUaGlzIGZ1bmN0aW9uIHNo
b3VsZCBvbmx5IGJlIGNhbGxlZCBvbiB0aGUgbWFpbmZyYW1lLgorICAgIEFTU0VSVCghcGFyZW50
KCkpOworCisgICAgV2ViRnJhbWVJbXBsKiBiZXN0RnJhbWUgPSAwOworICAgIGludCBpbmRleElu
QmVzdEZyYW1lID0gLTE7CisgICAgZmxvYXQgZGlzdGFuY2VJbkJlc3RGcmFtZSA9IEZMVF9NQVg7
CisKKyAgICBmb3IgKFdlYkZyYW1lSW1wbCogZnJhbWUgPSB0aGlzOyBmcmFtZTsgZnJhbWUgPSBz
dGF0aWNfY2FzdDxXZWJGcmFtZUltcGwqPihmcmFtZS0+dHJhdmVyc2VOZXh0KGZhbHNlKSkpIHsK
KyAgICAgICAgZmxvYXQgZGlzdGFuY2VJbkZyYW1lOworICAgICAgICBpbnQgaW5kZXhJbkZyYW1l
ID0gZnJhbWUtPm5lYXJlc3RGaW5kTWF0Y2gocG9pbnQsIGRpc3RhbmNlSW5GcmFtZSk7CisgICAg
ICAgIGlmIChkaXN0YW5jZUluRnJhbWUgPCBkaXN0YW5jZUluQmVzdEZyYW1lKSB7CisgICAgICAg
ICAgICBiZXN0RnJhbWUgPSBmcmFtZTsKKyAgICAgICAgICAgIGluZGV4SW5CZXN0RnJhbWUgPSBp
bmRleEluRnJhbWU7CisgICAgICAgICAgICBkaXN0YW5jZUluQmVzdEZyYW1lID0gZGlzdGFuY2VJ
bkZyYW1lOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKGluZGV4SW5CZXN0RnJhbWUgIT0g
LTEpCisgICAgICAgIHJldHVybiBiZXN0RnJhbWUtPnNlbGVjdEZpbmRNYXRjaChzdGF0aWNfY2Fz
dDx1bnNpZ25lZD4oaW5kZXhJbkJlc3RGcmFtZSksIHNlbGVjdGlvblJlY3QpOworCisgICAgcmV0
dXJuIC0xOworfQorCitpbnQgV2ViRnJhbWVJbXBsOjpuZWFyZXN0RmluZE1hdGNoKGNvbnN0IFdl
YkZsb2F0UG9pbnQmIHBvaW50LCBmbG9hdCYgZGlzdGFuY2VTcXVhcmVkKQoreworICAgIHVwZGF0
ZUZpbmRNYXRjaFJlY3RzKCk7CisKKyAgICBpbnQgbmVhcmVzdCA9IC0xOworICAgIGRpc3RhbmNl
U3F1YXJlZCA9IEZMVF9NQVg7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2ZpbmRNYXRj
aGVzQ2FjaGUuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKCFtX2ZpbmRNYXRjaGVzQ2Fj
aGVbaV0ubV9yZWN0LmlzRW1wdHkoKSk7CisgICAgICAgIEZsb2F0U2l6ZSBvZmZzZXQgPSBwb2lu
dCAtIG1fZmluZE1hdGNoZXNDYWNoZVtpXS5tX3JlY3QuY2VudGVyKCk7CisgICAgICAgIGZsb2F0
IHdpZHRoID0gb2Zmc2V0LndpZHRoKCk7CisgICAgICAgIGZsb2F0IGhlaWdodCA9IG9mZnNldC5o
ZWlnaHQoKTsKKyAgICAgICAgZmxvYXQgY3VycmVudERpc3RhbmNlU3F1YXJlZCA9IHdpZHRoICog
d2lkdGggKyBoZWlnaHQgKiBoZWlnaHQ7CisgICAgICAgIGlmIChjdXJyZW50RGlzdGFuY2VTcXVh
cmVkIDwgZGlzdGFuY2VTcXVhcmVkKSB7CisgICAgICAgICAgICBuZWFyZXN0ID0gaTsKKyAgICAg
ICAgICAgIGRpc3RhbmNlU3F1YXJlZCA9IGN1cnJlbnREaXN0YW5jZVNxdWFyZWQ7CisgICAgICAg
IH0KKyAgICB9CisgICAgcmV0dXJuIG5lYXJlc3Q7Cit9CisKK2ludCBXZWJGcmFtZUltcGw6OnNl
bGVjdEZpbmRNYXRjaCh1bnNpZ25lZCBpbmRleCwgV2ViUmVjdCogc2VsZWN0aW9uUmVjdCkKK3sK
KyAgICBBU1NFUlQoaW5kZXggPCBtX2ZpbmRNYXRjaGVzQ2FjaGUuc2l6ZSgpKTsKKworICAgIFJl
ZlB0cjxSYW5nZT4gcmFuZ2UgPSBtX2ZpbmRNYXRjaGVzQ2FjaGVbaW5kZXhdLm1fcmFuZ2U7Cisg
ICAgaWYgKCFyYW5nZS0+Ym91bmRhcnlQb2ludHNWYWxpZCgpIHx8ICFyYW5nZS0+c3RhcnRDb250
YWluZXIoKS0+aW5Eb2N1bWVudCgpKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICAvLyBDaGVj
ayBpZiB0aGUgbWF0Y2ggaXMgYWxyZWFkeSBzZWxlY3RlZC4KKyAgICBXZWJGcmFtZUltcGwqIGFj
dGl2ZU1hdGNoRnJhbWUgPSB2aWV3SW1wbCgpLT5tYWluRnJhbWVJbXBsKCktPm1fY3VycmVudEFj
dGl2ZU1hdGNoRnJhbWU7CisgICAgaWYgKHRoaXMgIT0gYWN0aXZlTWF0Y2hGcmFtZSB8fCAhbV9h
Y3RpdmVNYXRjaCB8fCAhYXJlUmFuZ2VzRXF1YWwobV9hY3RpdmVNYXRjaC5nZXQoKSwgcmFuZ2Uu
Z2V0KCkpKSB7CisgICAgICAgIGlmIChpc0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCgpKQorICAgICAg
ICAgICAgYWN0aXZlTWF0Y2hGcmFtZS0+c2V0TWFya2VyQWN0aXZlKGFjdGl2ZU1hdGNoRnJhbWUt
Pm1fYWN0aXZlTWF0Y2guZ2V0KCksIGZhbHNlKTsKKworICAgICAgICBtX2FjdGl2ZU1hdGNoSW5k
ZXhJbkN1cnJlbnRGcmFtZSA9IG1fZmluZE1hdGNoZXNDYWNoZVtpbmRleF0ubV9vcmRpbmFsIC0g
MTsKKworICAgICAgICAvLyBTZXQgdGhpcyBmcmFtZSBhcyB0aGUgYWN0aXZlIGZyYW1lICh0aGUg
b25lIHdpdGggdGhlIGFjdGl2ZSBoaWdobGlnaHQpLgorICAgICAgICB2aWV3SW1wbCgpLT5tYWlu
RnJhbWVJbXBsKCktPm1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWUgPSB0aGlzOworICAgICAgICB2
aWV3SW1wbCgpLT5zZXRGb2N1c2VkRnJhbWUodGhpcyk7CisKKyAgICAgICAgbV9hY3RpdmVNYXRj
aCA9IHJhbmdlLnJlbGVhc2UoKTsKKyAgICAgICAgc2V0TWFya2VyQWN0aXZlKG1fYWN0aXZlTWF0
Y2guZ2V0KCksIHRydWUpOworCisgICAgICAgIC8vIENsZWFyIGFueSB1c2VyIHNlbGVjdGlvbiwg
dG8gbWFrZSBzdXJlIEZpbmQgTmV4dCBjb250aW51ZXMgb24gZnJvbSB0aGUgbWF0Y2ggd2UganVz
dCBhY3RpdmF0ZWQuCisgICAgICAgIGV4ZWN1dGVDb21tYW5kKFdlYlN0cmluZzo6ZnJvbVVURjgo
IlVuc2VsZWN0IikpOworCisgICAgICAgIC8vIE1ha2Ugc3VyZSBubyBub2RlIGlzIGZvY3VzZWQu
IFNlZSBodHRwOi8vY3JidWcuY29tLzM4NzAwLgorICAgICAgICBpZiAoZnJhbWUoKS0+ZG9jdW1l
bnQoKSkKKyAgICAgICAgICAgIGZyYW1lKCktPmRvY3VtZW50KCktPnNldEZvY3VzZWROb2RlKDAp
OworICAgIH0KKworICAgIEludFJlY3QgYWN0aXZlTWF0Y2hSZWN0OworICAgIEludFJlY3QgYWN0
aXZlTWF0Y2hCb3VuZGluZ0JveCA9IGVuY2xvc2luZ0ludFJlY3QobV9hY3RpdmVNYXRjaC0+ZW5j
bG9zaW5nQm91bmRpbmdCb3goKSk7CisKKyAgICBpZiAoIWFjdGl2ZU1hdGNoQm91bmRpbmdCb3gu
aXNFbXB0eSgpKSB7CisgICAgICAgIGlmIChtX2FjdGl2ZU1hdGNoLT5maXJzdE5vZGUoKSAmJiBt
X2FjdGl2ZU1hdGNoLT5maXJzdE5vZGUoKS0+cmVuZGVyZXIoKSkKKyAgICAgICAgICAgIG1fYWN0
aXZlTWF0Y2gtPmZpcnN0Tm9kZSgpLT5yZW5kZXJlcigpLT5zY3JvbGxSZWN0VG9WaXNpYmxlKGFj
dGl2ZU1hdGNoQm91bmRpbmdCb3gsCisgICAgICAgICAgICAgICAgICAgIFNjcm9sbEFsaWdubWVu
dDo6YWxpZ25DZW50ZXJJZk5lZWRlZCwgU2Nyb2xsQWxpZ25tZW50OjphbGlnbkNlbnRlcklmTmVl
ZGVkKTsKKworICAgICAgICAvLyBab29tIHRvIHRoZSBhY3RpdmUgbWF0Y2guCisgICAgICAgIGFj
dGl2ZU1hdGNoUmVjdCA9IGZyYW1lVmlldygpLT5jb250ZW50c1RvV2luZG93KGFjdGl2ZU1hdGNo
Qm91bmRpbmdCb3gpOworICAgICAgICB2aWV3SW1wbCgpLT56b29tVG9GaW5kSW5QYWdlUmVjdChh
Y3RpdmVNYXRjaFJlY3QpOworICAgIH0KKworICAgIGlmIChzZWxlY3Rpb25SZWN0KQorICAgICAg
ICAqc2VsZWN0aW9uUmVjdCA9IGFjdGl2ZU1hdGNoUmVjdDsKKworICAgIHJldHVybiBvcmRpbmFs
T2ZGaXJzdE1hdGNoRm9yRnJhbWUodGhpcykgKyBtX2FjdGl2ZU1hdGNoSW5kZXhJbkN1cnJlbnRG
cmFtZSArIDE7Cit9CisKIHZvaWQgV2ViRnJhbWVJbXBsOjpkZWxpdmVySW50ZW50KGNvbnN0IFdl
YkludGVudCYgaW50ZW50LCBXZWJNZXNzYWdlUG9ydENoYW5uZWxBcnJheSogcG9ydHMsIFdlYkRl
bGl2ZXJlZEludGVudENsaWVudCogaW50ZW50Q2xpZW50KQogewogI2lmIEVOQUJMRShXRUJfSU5U
RU5UUykKQEAgLTIwNTUsNiArMjI3Myw5IEBAIFdlYkZyYW1lSW1wbDo6V2ViRnJhbWVJbXBsKFdl
YkZyYW1lQ2xpZW50KiBjbGllbnQpCiAgICAgLCBtX2ZyYW1lc1Njb3BpbmdDb3VudCgtMSkKICAg
ICAsIG1fc2NvcGluZ0NvbXBsZXRlKGZhbHNlKQogICAgICwgbV9uZXh0SW52YWxpZGF0ZUFmdGVy
KDApCisgICAgLCBtX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKDApCisgICAgLCBtX2ZpbmRNYXRj
aFJlY3RzQXJlVmFsaWQoZmFsc2UpCisgICAgLCBtX2NvbnRlbnRzU2l6ZUZvckN1cnJlbnRGaW5k
TWF0Y2hSZWN0cygwLCAwKQogICAgICwgbV9hbmltYXRpb25Db250cm9sbGVyKHRoaXMpCiAgICAg
LCBtX2lkZW50aWZpZXIoZ2VuZXJhdGVGcmFtZUlkZW50aWZpZXIoKSkKICAgICAsIG1faW5TYW1l
RG9jdW1lbnRIaXN0b3J5TG9hZChmYWxzZSkKQEAgLTIxMzAsNiArMjM1MSwxNSBAQCBQYXNzUmVm
UHRyPEZyYW1lPiBXZWJGcmFtZUltcGw6OmNyZWF0ZUNoaWxkRnJhbWUoCiAgICAgcmV0dXJuIGNo
aWxkRnJhbWUucmVsZWFzZSgpOwogfQogCit2b2lkIFdlYkZyYW1lSW1wbDo6ZGlkQ2hhbmdlQ29u
dGVudHNTaXplKGNvbnN0IEludFNpemUmIHNpemUpCit7CisgICAgLy8gVGhpcyBpcyBvbmx5IHBv
c3NpYmxlIG9uIHRoZSBtYWluIGZyYW1lLgorICAgIGlmIChtX3RvdGFsTWF0Y2hDb3VudCA+IDAp
IHsKKyAgICAgICAgQVNTRVJUKCFwYXJlbnQoKSk7CisgICAgICAgICsrbV9maW5kTWF0Y2hNYXJr
ZXJzVmVyc2lvbjsKKyAgICB9Cit9CisKIHZvaWQgV2ViRnJhbWVJbXBsOjpjcmVhdGVGcmFtZVZp
ZXcoKQogewogICAgIEFTU0VSVChtX2ZyYW1lKTsgLy8gSWYgbV9mcmFtZSBkb2Vzbid0IGV4aXN0
LCB3ZSBwcm9iYWJseSBkaWRuJ3QgaW5pdCBwcm9wZXJseS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViRnJhbWVJbXBsLmgKaW5kZXggMDA2YThmNTM0NjRkNDU1ZmI1MjU5NDUzZTY0ZTNi
MjYzZTBhMjUxNC4uMDliZjEyODU3MmFiMDhkNzc0Njg0MjM0ZDc0MTFlOGQ0NWIzM2MxYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmgKKysrIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmgKQEAgLTM3LDYgKzM3LDcg
QEAKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyQ2xpZW50SW1wbC5o
IgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisjaW5jbHVkZSAicGxhdGZvcm0vV2ViU2l6
ZS5oIgogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5oPgogI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4K
ICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtMjEwLDYgKzIxMSwxMCBAQCBwdWJsaWM6
CiAgICAgdmlydHVhbCB2b2lkIGNhbmNlbFBlbmRpbmdTY29waW5nRWZmb3J0KCk7CiAgICAgdmly
dHVhbCB2b2lkIGluY3JlYXNlTWF0Y2hDb3VudChpbnQgY291bnQsIGludCBpZGVudGlmaWVyKTsK
ICAgICB2aXJ0dWFsIHZvaWQgcmVzZXRNYXRjaENvdW50KCk7CisgICAgdmlydHVhbCBpbnQgZmlu
ZE1hdGNoTWFya2Vyc1ZlcnNpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIFdlYkZsb2F0UmVjdCBh
Y3RpdmVGaW5kTWF0Y2hSZWN0KCk7CisgICAgdmlydHVhbCB2b2lkIGZpbmRNYXRjaFJlY3RzKFdl
YlZlY3RvcjxXZWJGbG9hdFJlY3Q+Jik7CisgICAgdmlydHVhbCBpbnQgc2VsZWN0TmVhcmVzdEZp
bmRNYXRjaChjb25zdCBXZWJGbG9hdFBvaW50JiwgV2ViUmVjdCogc2VsZWN0aW9uUmVjdCk7CiAK
ICAgICB2aXJ0dWFsIHZvaWQgc2VuZE9yaWVudGF0aW9uQ2hhbmdlRXZlbnQoaW50IG9yaWVudGF0
aW9uKTsKIApAQCAtMjQyLDYgKzI0Nyw5IEBAIHB1YmxpYzoKICAgICBQYXNzUmVmUHRyPFdlYkNv
cmU6OkZyYW1lPiBjcmVhdGVDaGlsZEZyYW1lKAogICAgICAgICBjb25zdCBXZWJDb3JlOjpGcmFt
ZUxvYWRSZXF1ZXN0JiwgV2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50Kik7CiAKKyAgICAv
LyBDYWxsZWQgd2hlbiB0aGUgc2l6ZSBvZiB0aGUgY29udGFpbmVkIGRvY3VtZW50IGNoYW5nZXMu
CisgICAgdm9pZCBkaWRDaGFuZ2VDb250ZW50c1NpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYp
OworCiAgICAgdm9pZCBjcmVhdGVGcmFtZVZpZXcoKTsKIAogICAgIHN0YXRpYyBXZWJGcmFtZUlt
cGwqIGZyb21GcmFtZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpOwpAQCAtMjY2LDYgKzI3NCwxMCBA
QCBwdWJsaWM6CiAgICAgLy8gdmFsdWUgY2FuIGJlIDAgaWYgbm8gZnJhbWUgaGFzIGFuIGFjdGl2
ZSBtYXRjaC4KICAgICBjb25zdCBXZWJGcmFtZUltcGwqIGFjdGl2ZU1hdGNoRnJhbWUoKSBjb25z
dCB7IHJldHVybiBtX2N1cnJlbnRBY3RpdmVNYXRjaEZyYW1lOyB9CiAKKyAgICAvLyBSZXR1cm5z
IHRoZSBhY3RpdmUgbWF0Y2ggaW4gdGhlIGN1cnJlbnQgZnJhbWUuIENvdWxkIGJlIGEgbnVsbCBy
YW5nZSBpZgorICAgIC8vIHRoZSBsb2NhbCBmcmFtZSBoYXMgbm8gYWN0aXZlIG1hdGNoLgorICAg
IFBhc3NSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IGFjdGl2ZU1hdGNoKCkgY29uc3QgeyByZXR1cm4g
bV9hY3RpdmVNYXRjaDsgfQorCiAgICAgLy8gV2hlbiBhIEZpbmQgb3BlcmF0aW9uIGVuZHMsIHdl
IHdhbnQgdG8gc2V0IHRoZSBzZWxlY3Rpb24gdG8gd2hhdCB3YXMgYWN0aXZlCiAgICAgLy8gYW5k
IHNldCBmb2N1cyB0byB0aGUgZmlyc3QgZm9jdXNhYmxlIG5vZGUgd2UgZmluZCAoc3RhcnRpbmcg
d2l0aCB0aGUgZmlyc3QKICAgICAvLyBub2RlIGluIHRoZSBtYXRjaGVkIHJhbmdlIGFuZCBnb2lu
ZyB1cCB0aGUgaW5oZXJpdGFuY2UgY2hhaW4pLiBJZiB3ZSBmaW5kCkBAIC0yOTEsNiArMzAzLDE5
IEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIERlZmVycmVkU2NvcGVTdHJpbmdNYXRjaGVz
OwogICAgIGZyaWVuZCBjbGFzcyBGcmFtZUxvYWRlckNsaWVudEltcGw7CiAKKyAgICBzdHJ1Y3Qg
RmluZE1hdGNoIHsKKyAgICAgICAgUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiBtX3JhbmdlOworCisg
ICAgICAgIC8vIDEtYmFzZWQgaW5kZXggd2l0aGluIHRoaXMgZnJhbWUuCisgICAgICAgIGludCBt
X29yZGluYWw7CisKKyAgICAgICAgLy8gSW4gZmluZC1pbi1wYWdlIGNvb3JkaW5hdGVzLgorICAg
ICAgICAvLyBMYXppbHkgY2FsY3VsYXRlZCBieSB1cGRhdGVGaW5kTWF0Y2hSZWN0cy4KKyAgICAg
ICAgV2ViQ29yZTo6RmxvYXRSZWN0IG1fcmVjdDsKKworICAgICAgICBGaW5kTWF0Y2goUGFzc1Jl
ZlB0cjxXZWJDb3JlOjpSYW5nZT4sIGludCBvcmRpbmFsKTsKKyAgICB9OworCiAgICAgLy8gQSBi
aXQgbWFzayBzcGVjaWZ5aW5nIGFyZWEgb2YgdGhlIGZyYW1lIHRvIGludmFsaWRhdGUuCiAgICAg
ZW51bSBBcmVhVG9JbnZhbGlkYXRlIHsKICAgICAgIEludmFsaWRhdGVOb3RoaW5nLApAQCAtMzA5
LDYgKzMzNCwzMiBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVwb3J0RmluZEluUGFnZVNlbGVjdGlv
bigKICAgICAgICAgY29uc3QgV2ViUmVjdCYgc2VsZWN0aW9uUmVjdCwgaW50IGFjdGl2ZU1hdGNo
T3JkaW5hbCwgaW50IGlkZW50aWZpZXIpOwogCisgICAgLy8gQ2xlYXIgdGhlIGZpbmQtaW4tcGFn
ZSBtYXRjaGVzIGNhY2hlIGZvcmNpbmcgcmVjdHMgdG8gYmUgZnVsbHkKKyAgICAvLyBjYWxjdWxh
dGVkIGFnYWluIG5leHQgdGltZSB1cGRhdGVGaW5kTWF0Y2hSZWN0cyBpcyBjYWxsZWQuCisgICAg
dm9pZCBjbGVhckZpbmRNYXRjaGVzQ2FjaGUoKTsKKworICAgIC8vIENoZWNrIGlmIHRoZSBhY3Rp
dmVNYXRjaEZyYW1lIHN0aWxsIGV4aXN0cyBpbiB0aGUgZnJhbWUgdHJlZS4KKyAgICBib29sIGlz
QWN0aXZlTWF0Y2hGcmFtZVZhbGlkKCkgY29uc3Q7CisKKyAgICAvLyBSZXR1cm4gdGhlIGluZGV4
IGluIHRoZSBmaW5kLWluLXBhZ2UgY2FjaGUgb2YgdGhlIG1hdGNoIGNsb3Nlc3QgdG8gdGhlCisg
ICAgLy8gcHJvdmlkZWQgcG9pbnQgaW4gZmluZC1pbi1wYWdlIGNvb3JkaW5hdGVzLCBvciAtMSBp
biBjYXNlIG9mIGVycm9yLgorICAgIC8vIFRoZSBzcXVhcmVkIGRpc3RhbmNlIHRvIHRoZSBjbG9z
ZXN0IG1hdGNoIGlzIHJldHVybmVkIGluIHRoZSBkaXN0YW5jZVNxdWFyZWQgcGFyYW1ldGVyLgor
ICAgIGludCBuZWFyZXN0RmluZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9pbnQmLCBmbG9hdCYgZGlz
dGFuY2VTcXVhcmVkKTsKKworICAgIC8vIFNlbGVjdCBhIGZpbmQtaW4tcGFnZSBtYXRjaCBtYXJr
ZXIgaW4gdGhlIGN1cnJlbnQgZnJhbWUgdXNpbmcgYSBjYWNoZQorICAgIC8vIG1hdGNoIGluZGV4
IHJldHVybmVkIGJ5IG5lYXJlc3RGaW5kTWF0Y2guIFJldHVybnMgdGhlIG9yZGluYWwgb2YgdGhl
IG5ldworICAgIC8vIHNlbGVjdGVkIG1hdGNoIG9yIC0xIGluIGNhc2Ugb2YgZXJyb3IuIEFsc28g
cHJvdmlkZXMgdGhlIGJvdW5kaW5nIGJveCBvZgorICAgIC8vIHRoZSBtYXJrZXIgaW4gd2luZG93
IGNvb3JkaW5hdGVzIGlmIHNlbGVjdGlvblJlY3QgaXMgbm90IG51bGwuCisgICAgaW50IHNlbGVj
dEZpbmRNYXRjaCh1bnNpZ25lZCBpbmRleCwgV2ViUmVjdCogc2VsZWN0aW9uUmVjdCk7CisKKyAg
ICAvLyBDb21wdXRlIGFuZCBjYWNoZSB0aGUgcmVjdHMgZm9yIEZpbmRNYXRjaGVzIGlmIHJlcXVp
cmVkLgorICAgIC8vIFJlY3RzIGFyZSBhdXRvbWF0aWNhbGx5IGludmFsaWRhdGVkIGluIGNhc2Ug
b2YgY29udGVudCBzaXplIGNoYW5nZXMsCisgICAgLy8gcHJvcGFnYXRpbmcgdGhlIGludmFsaWRh
dGlvbiB0byBjaGlsZCBmcmFtZXMuCisgICAgdm9pZCB1cGRhdGVGaW5kTWF0Y2hSZWN0cygpOwor
CisgICAgLy8gQXBwZW5kIHRoZSBmaW5kLWluLXBhZ2UgbWF0Y2ggcmVjdHMgb2YgdGhlIGN1cnJl
bnQgZnJhbWUgdG8gdGhlIHByb3ZpZGVkIHZlY3Rvci4KKyAgICB2b2lkIGFwcGVuZEZpbmRNYXRj
aFJlY3RzKFZlY3RvcjxXZWJGbG9hdFJlY3Q+JiBmcmFtZVJlY3RzKTsKKwogICAgIC8vIEludmFs
aWRhdGVzIGEgY2VydGFpbiBhcmVhIHdpdGhpbiB0aGUgZnJhbWUuCiAgICAgdm9pZCBpbnZhbGlk
YXRlQXJlYShBcmVhVG9JbnZhbGlkYXRlKTsKIApAQCAtNDA4LDYgKzQ1OSwyMSBAQCBwcml2YXRl
OgogICAgIC8vIEEgbGlzdCBvZiBhbGwgb2YgdGhlIHBlbmRpbmcgY2FsbHMgdG8gc2NvcGVTdHJp
bmdNYXRjaGVzLgogICAgIFZlY3RvcjxEZWZlcnJlZFNjb3BlU3RyaW5nTWF0Y2hlcyo+IG1fZGVm
ZXJyZWRTY29waW5nV29yazsKIAorICAgIC8vIFZlcnNpb24gbnVtYmVyIGluY3JlbWVudGVkIG9u
IHRoZSBtYWluIGZyYW1lIG9ubHkgd2hlbmV2ZXIgdGhlIGRvY3VtZW50CisgICAgLy8gZmluZC1p
bi1wYWdlIG1hdGNoIG1hcmtlcnMgY2hhbmdlLiBJdCBzaG91bGQgYmUgMCBmb3IgYWxsIG90aGVy
IGZyYW1lcy4KKyAgICBpbnQgbV9maW5kTWF0Y2hNYXJrZXJzVmVyc2lvbjsKKworICAgIC8vIExv
Y2FsIGNhY2hlIG9mIHRoZSBmaW5kIG1hdGNoIG1hcmtlcnMgY3VycmVudGx5IGRpc3BsYXllZCBm
b3IgdGhpcyBmcmFtZS4KKyAgICBWZWN0b3I8RmluZE1hdGNoPiBtX2ZpbmRNYXRjaGVzQ2FjaGU7
CisKKyAgICAvLyBEZXRlcm1pbmVzIGlmIHRoZSByZWN0cyBpbiB0aGUgZmluZC1pbi1wYWdlIG1h
dGNoZXMgY2FjaGUgb2YgdGhpcyBmcmFtZQorICAgIC8vIGFyZSBpbnZhbGlkIGFuZCBzaG91bGQg
YmUgcmVjb21wdXRlZC4KKyAgICBib29sIG1fZmluZE1hdGNoUmVjdHNBcmVWYWxpZDsKKworICAg
IC8vIENvbnRlbnRzIHNpemUgd2hlbiBmaW5kLWluLXBhZ2UgbWF0Y2ggcmVjdHMgd2VyZSBsYXN0
IGNvbXB1dGVkIGZvciB0aGlzCisgICAgLy8gZnJhbWUncyBjYWNoZS4KKyAgICBXZWJTaXplIG1f
Y29udGVudHNTaXplRm9yQ3VycmVudEZpbmRNYXRjaFJlY3RzOworCiAgICAgLy8gVmFsaWQgYmV0
d2VlbiBjYWxscyB0byBCZWdpblByaW50KCkgYW5kIEVuZFByaW50KCkuIENvbnRhaW50cyB0aGUg
cHJpbnQKICAgICAvLyBpbmZvcm1hdGlvbi4gSXMgdXNlZCBieSBQcmludFBhZ2UoKS4KICAgICBP
d25QdHI8Q2hyb21lUHJpbnRDb250ZXh0PiBtX3ByaW50Q29udGV4dDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcCBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAppbmRleCA5Yjc0NWUwMjlhMzMyYjlh
OTZiYjdiYmJjY2M4ZWM0ZDg0NDIzZjQ0Li4wNWI4Njc0YzA0ZDcyZGUwOGVjZmMzNDk1ZjIzMjM3
OTA0NDU1NjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZy
YW1lVGVzdC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRl
c3QuY3BwCkBAIC0zMiw5ICszMiwxMSBAQAogCiAjaW5jbHVkZSAiV2ViRnJhbWUuaCIKIAorI2lu
Y2x1ZGUgIkZsb2F0UmVjdC5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVU
ZXN0SGVscGVycy5oIgogI2luY2x1ZGUgIkZyYW1lVmlldy5oIgorI2luY2x1ZGUgIlJhbmdlLmgi
CiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgogI2luY2x1ZGUgIlVSTFRlc3RIZWxwZXJzLmgi
CiAjaW5jbHVkZSAiV2ViRGF0YVNvdXJjZS5oIgpAQCAtNTEsMTEgKzUzLDE0IEBACiAjaW5jbHVk
ZSAiV2ViU2V0dGluZ3MuaCIKICNpbmNsdWRlICJXZWJWaWV3Q2xpZW50LmgiCiAjaW5jbHVkZSAi
V2ViVmlld0ltcGwuaCIKKyNpbmNsdWRlICJwbGF0Zm9ybS9XZWJGbG9hdFJlY3QuaCIKICNpbmNs
dWRlICJ2OC5oIgogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAjaW5jbHVkZSA8d2Via2l0L3N1
cHBvcnQvd2Via2l0X3N1cHBvcnQuaD4KIAogdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKK3VzaW5n
IFdlYkNvcmU6OkZsb2F0UmVjdDsKK3VzaW5nIFdlYkNvcmU6OlJhbmdlOwogdXNpbmcgV2ViS2l0
OjpVUkxUZXN0SGVscGVyczo6dG9LVVJMOwogCiBuYW1lc3BhY2UgewpAQCAtODA0LDQgKzgwOSwx
MTQgQEAgVEVTVF9GKFdlYkZyYW1lVGVzdCwgR2V0RnVsbEh0bWxPZlBhZ2UpCiAgICAgRVhQRUNU
X1RSVUUoc2VsZWN0aW9uSHRtbC5pc0VtcHR5KCkpOwogfQogCitjbGFzcyBGaW5kVXBkYXRlV2Vi
RnJhbWVDbGllbnQgOiBwdWJsaWMgV2ViRnJhbWVDbGllbnQgeworcHVibGljOgorICAgIEZpbmRV
cGRhdGVXZWJGcmFtZUNsaWVudCgpCisgICAgICAgIDogbV9maW5kUmVzdWx0c0FyZVJlYWR5KGZh
bHNlKQorICAgIHsgfQorCisgICAgdmlydHVhbCB2b2lkIHJlcG9ydEZpbmRJblBhZ2VNYXRjaENv
dW50KGludCByZXF1ZXN0SWQsIGludCBjb3VudCwgYm9vbCBmaW5hbFVwZGF0ZSkgT1ZFUlJJREUK
KyAgICB7CisgICAgICAgIGlmIChmaW5hbFVwZGF0ZSkKKyAgICAgICAgICAgIG1fZmluZFJlc3Vs
dHNBcmVSZWFkeSA9IHRydWU7CisgICAgfQorCisgICAgYm9vbCBmaW5kUmVzdWx0c0FyZVJlYWR5
KCkgY29uc3QgeyByZXR1cm4gbV9maW5kUmVzdWx0c0FyZVJlYWR5OyB9CisKK3ByaXZhdGU6Cisg
ICAgYm9vbCBtX2ZpbmRSZXN1bHRzQXJlUmVhZHk7Cit9OworCitURVNUX0YoV2ViRnJhbWVUZXN0
LCBGaW5kSW5QYWdlTWF0Y2hSZWN0cykKK3sKKyAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2Fk
KCJmaW5kX2luX3BhZ2UuaHRtbCIpOworICAgIHJlZ2lzdGVyTW9ja2VkSHR0cFVSTExvYWQoImZp
bmRfaW5fcGFnZV9mcmFtZS5odG1sIik7CisKKyAgICBGaW5kVXBkYXRlV2ViRnJhbWVDbGllbnQg
Y2xpZW50OworICAgIFdlYlZpZXcqIHdlYlZpZXcgPSBGcmFtZVRlc3RIZWxwZXJzOjpjcmVhdGVX
ZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAiZmluZF9pbl9wYWdlLmh0bWwiLCB0cnVlLCAmY2xp
ZW50KTsKKyAgICB3ZWJWaWV3LT5yZXNpemUoV2ViU2l6ZSg0MDAsIDUwMCkpOworICAgIHdlYlZp
ZXctPmxheW91dCgpOworICAgIHdlYmtpdF9zdXBwb3J0OjpSdW5BbGxQZW5kaW5nTWVzc2FnZXMo
KTsKKworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBrRmluZFN0cmluZyA9ICJyZXN1bHQiOworICAg
IHN0YXRpYyBjb25zdCBpbnQga0ZpbmRJZGVudGlmaWVyID0gMTIzNDU7CisgICAgc3RhdGljIGNv
bnN0IGludCBrTnVtUmVzdWx0cyA9IDEwOworCisgICAgV2ViRmluZE9wdGlvbnMgb3B0aW9uczsK
KyAgICBXZWJTdHJpbmcgc2VhcmNoVGV4dCA9IFdlYlN0cmluZzo6ZnJvbVVURjgoa0ZpbmRTdHJp
bmcpOworICAgIFdlYkZyYW1lSW1wbCogbWFpbkZyYW1lID0gc3RhdGljX2Nhc3Q8V2ViRnJhbWVJ
bXBsKj4od2ViVmlldy0+bWFpbkZyYW1lKCkpOworICAgIEVYUEVDVF9UUlVFKG1haW5GcmFtZS0+
ZmluZChrRmluZElkZW50aWZpZXIsIHNlYXJjaFRleHQsIG9wdGlvbnMsIGZhbHNlLCAwKSk7CisK
KyAgICBmb3IgKFdlYkZyYW1lKiBmcmFtZSA9IG1haW5GcmFtZTsgZnJhbWU7IGZyYW1lID0gZnJh
bWUtPnRyYXZlcnNlTmV4dChmYWxzZSkpCisgICAgICAgIGZyYW1lLT5zY29wZVN0cmluZ01hdGNo
ZXMoa0ZpbmRJZGVudGlmaWVyLCBzZWFyY2hUZXh0LCBvcHRpb25zLCB0cnVlKTsKKworICAgIHdl
YmtpdF9zdXBwb3J0OjpSdW5BbGxQZW5kaW5nTWVzc2FnZXMoKTsKKyAgICBFWFBFQ1RfVFJVRShj
bGllbnQuZmluZFJlc3VsdHNBcmVSZWFkeSgpKTsKKworICAgIFdlYlZlY3RvcjxXZWJGbG9hdFJl
Y3Q+IHdlYk1hdGNoUmVjdHM7CisgICAgbWFpbkZyYW1lLT5maW5kTWF0Y2hSZWN0cyh3ZWJNYXRj
aFJlY3RzKTsKKyAgICBFWFBFQ1RfRVEod2ViTWF0Y2hSZWN0cy5zaXplKCksIGtOdW1SZXN1bHRz
KTsKKyAgICBpbnQgcmVjdHNWZXJzaW9uID0gbWFpbkZyYW1lLT5maW5kTWF0Y2hNYXJrZXJzVmVy
c2lvbigpOworCisgICAgZm9yIChpbnQgcmVzdWx0SW5kZXggPSAwOyByZXN1bHRJbmRleCA8IGtO
dW1SZXN1bHRzOyArK3Jlc3VsdEluZGV4KSB7CisgICAgICAgIEZsb2F0UmVjdCByZXN1bHRSZWN0
ID0gc3RhdGljX2Nhc3Q8RmxvYXRSZWN0Pih3ZWJNYXRjaFJlY3RzW3Jlc3VsdEluZGV4XSk7CisK
KyAgICAgICAgLy8gU2VsZWN0IHRoZSBtYXRjaCBieSB0aGUgY2VudGVyIG9mIGl0cyByZWN0Lgor
ICAgICAgICBFWFBFQ1RfRVEobWFpbkZyYW1lLT5zZWxlY3ROZWFyZXN0RmluZE1hdGNoKHJlc3Vs
dFJlY3QuY2VudGVyKCksIDApLCByZXN1bHRJbmRleCArIDEpOworCisgICAgICAgIC8vIENoZWNr
IHRoYXQgdGhlIGZpbmQgcmVzdWx0IG9yZGVyaW5nIG1hdGNoZXMgd2l0aCBvdXIgZXhwZWN0YXRp
b25zLgorICAgICAgICBSZWZQdHI8UmFuZ2U+IHJlc3VsdCA9IG1haW5GcmFtZS0+YWN0aXZlTWF0
Y2hGcmFtZSgpLT5hY3RpdmVNYXRjaCgpOworICAgICAgICByZXN1bHQtPnNldEVuZChyZXN1bHQt
PmVuZENvbnRhaW5lcigpLCByZXN1bHQtPmVuZE9mZnNldCgpICsgMik7CisgICAgICAgIEVYUEVD
VF9FUShyZXN1bHQtPnRleHQoKSwgU3RyaW5nOjpmb3JtYXQoIiVzICVkIiwga0ZpbmRTdHJpbmcs
IHJlc3VsdEluZGV4KSk7CisKKyAgICAgICAgLy8gVmVyaWZ5IHRoYXQgdGhlIGV4cGVjdGVkIG1h
dGNoIHJlY3QgYWxzbyBtYXRjaGVzIHRoZSBjdXJyZW50bHkgYWN0aXZlIG1hdGNoLgorICAgICAg
ICAvLyBDb21wYXJlIHRoZSBlbmNsb3NpbmcgcmVjdHMgdG8gcHJldmVudCBwcmVjaXNpb24gaXNz
dWVzIGNhdXNlZCBieSBDU1MgdHJhbnNmb3Jtcy4KKyAgICAgICAgRmxvYXRSZWN0IGFjdGl2ZU1h
dGNoID0gbWFpbkZyYW1lLT5hY3RpdmVGaW5kTWF0Y2hSZWN0KCk7CisgICAgICAgIEVYUEVDVF9F
UShlbmNsb3NpbmdJbnRSZWN0KGFjdGl2ZU1hdGNoKSwgZW5jbG9zaW5nSW50UmVjdChyZXN1bHRS
ZWN0KSk7CisKKyAgICAgICAgLy8gVGhlIHJlY3RzIHZlcnNpb24gc2hvdWxkIG5vdCBoYXZlIGNo
YW5nZWQuCisgICAgICAgIEVYUEVDVF9FUShtYWluRnJhbWUtPmZpbmRNYXRjaE1hcmtlcnNWZXJz
aW9uKCksIHJlY3RzVmVyc2lvbik7CisgICAgfQorCisgICAgLy8gQWxsIHJlc3VsdHMgYWZ0ZXIg
dGhlIGZpcnN0IHR3byBvbmVzIHNob3VsZCBiZSBiZWxvdyBiZXR3ZWVuIHRoZW0gaW4gc2Nyb2xs
LWluZGVwZW5kZW50IG5vcm1hbGl6ZWQgbWFpbiBmcmFtZSBjb29yZGluYXRlcy4KKyAgICAvLyBU
aGlzIGlzIGJlY2F1c2UgcmVzdWx0cyAyIHRvIDkgYXJlIGluc2lkZSBhbiBpZnJhbWUgbG9jYXRl
ZCBiZXR3ZWVuIHJlc3VsdHMgMCBhbmQgMS4gVGhpcyBhcHBsaWVzIHRvIHRoZSBmaXhlZCBkaXYg
dG9vLgorICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMF0ueSA8IHdlYk1hdGNoUmVjdHNb
MV0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1swXS55IDwgd2ViTWF0Y2hSZWN0
c1syXS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzBdLnkgPCB3ZWJNYXRjaFJl
Y3RzWzNdLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMF0ueSA8IHdlYk1hdGNo
UmVjdHNbNF0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1swXS55IDwgd2ViTWF0
Y2hSZWN0c1s1XS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzBdLnkgPCB3ZWJN
YXRjaFJlY3RzWzZdLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMF0ueSA8IHdl
Yk1hdGNoUmVjdHNbN10ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1swXS55IDwg
d2ViTWF0Y2hSZWN0c1s4XS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzBdLnkg
PCB3ZWJNYXRjaFJlY3RzWzldLnkpOworCisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1sx
XS55ID4gd2ViTWF0Y2hSZWN0c1syXS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3Rz
WzFdLnkgPiB3ZWJNYXRjaFJlY3RzWzNdLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVj
dHNbMV0ueSA+IHdlYk1hdGNoUmVjdHNbNF0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hS
ZWN0c1sxXS55ID4gd2ViTWF0Y2hSZWN0c1s1XS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRj
aFJlY3RzWzFdLnkgPiB3ZWJNYXRjaFJlY3RzWzZdLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1h
dGNoUmVjdHNbMV0ueSA+IHdlYk1hdGNoUmVjdHNbN10ueSk7CisgICAgRVhQRUNUX1RSVUUod2Vi
TWF0Y2hSZWN0c1sxXS55ID4gd2ViTWF0Y2hSZWN0c1s4XS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3
ZWJNYXRjaFJlY3RzWzFdLnkgPiB3ZWJNYXRjaFJlY3RzWzldLnkpOworCisgICAgLy8gUmVzdWx0
IDMgc2hvdWxkIGJlIGJlbG93IGJvdGggMiBhbmQgNC4gVGhpcyBpcyBjYXVzZWQgYnkgdGhlIENT
UyB0cmFuc2Zvcm0gaW4gdGhlIGNvbnRhaW5pbmcgZGl2LgorICAgIC8vIElmIHRoZSB0cmFuc2Zv
cm0gZG9lc24ndCB3b3JrIHRoZW4gMyB3aWxsIGJlIGJldHdlZW4gMiBhbmQgNC4KKyAgICBFWFBF
Q1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzNdLnkgPiB3ZWJNYXRjaFJlY3RzWzJdLnkpOworICAgIEVY
UEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbM10ueSA+IHdlYk1hdGNoUmVjdHNbNF0ueSk7CisKKyAg
ICAvLyBSZXN1bHRzIDYsIDcsIDggYW5kIDkgc2hvdWxkIGJlIG9uZSBiZWxvdyB0aGUgb3RoZXIg
aW4gdGhhdCBzYW1lIG9yZGVyLgorICAgIC8vIElmIG92ZXJmbG93OnNjcm9sbCBpcyBub3QgcHJv
cGVybHkgaGFuZGxlZCB0aGVuIHJlc3VsdCA4IHdvdWxkIGJlIGJlbG93IHJlc3VsdCA5IG9yCisg
ICAgLy8gcmVzdWx0IDcgYWJvdmUgcmVzdWx0IDYgZGVwZW5kaW5nIG9uIHRoZSBzY3JvbGwuCisg
ICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1s2XS55IDwgd2ViTWF0Y2hSZWN0c1s3XS55KTsK
KyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzddLnkgPCB3ZWJNYXRjaFJlY3RzWzhdLnkp
OworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbOF0ueSA8IHdlYk1hdGNoUmVjdHNbOV0u
eSk7CisKKyAgICAvLyBSZXNpemluZyBzaG91bGQgdXBkYXRlIHRoZSByZWN0cyB2ZXJzaW9uLgor
ICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKDgwMCwgNjAwKSk7CisgICAgd2Via2l0X3N1cHBv
cnQ6OlJ1bkFsbFBlbmRpbmdNZXNzYWdlcygpOworICAgIEVYUEVDVF9UUlVFKG1haW5GcmFtZS0+
ZmluZE1hdGNoTWFya2Vyc1ZlcnNpb24oKSAhPSByZWN0c1ZlcnNpb24pOworCisgICAgd2ViVmll
dy0+Y2xvc2UoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vdGVzdHMvZGF0YS9maW5kX2luX3BhZ2UuaHRtbCBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vdGVzdHMvZGF0YS9maW5kX2luX3BhZ2UuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jMDljOWRk
MDYwNTU5NTFhYzJmMjcyZjI4ZTlhMTUxOGZhZmQ3ZmFkCi0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9kYXRhL2ZpbmRfaW5fcGFnZS5odG1sCkBAIC0wLDAg
KzEsMTMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIG5hbWU9InZp
ZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wLCBt
YXhpbXVtLXNjYWxlPTEuMCwgdXNlci1zY2FsYWJsZT1ubyIgLz4KKzwvaGVhZD4KKzxib2R5Pgor
VGhpcyBhIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0IHRlc3QuPC9icj4KK3Jlc3VsdCAwPC9icj4K
KzxpZnJhbWUgc3JjPSJmaW5kX2luX3BhZ2VfZnJhbWUuaHRtbCIgaGVpZ2h0PSIzMDAiIHNjcm9s
bGluZz0ieWVzIj48L2lmcmFtZT4KKzwvYnI+CityZXN1bHQgMQorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9kYXRhL2ZpbmRfaW5fcGFn
ZV9mcmFtZS5odG1sIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9kYXRhL2ZpbmRfaW5f
cGFnZV9mcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ3ZDI5YWUwZmRkMzc4NjA2ZjdlMTJjOWJkOTk3
ZGUzYjYwMzdmMjgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rl
c3RzL2RhdGEvZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWwKQEAgLTAsMCArMSw1OCBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9
IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIG1heGltdW0tc2NhbGU9MS4w
LCB1c2VyLXNjYWxhYmxlPW5vIiAvPgorPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KK2Rpdi50cmFu
c2Zvcm0geworICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBGRjAwOworICB3aWR0aDogMTAwcHg7Cisg
IGhlaWdodDogMTAwcHg7CisgIHBhZGRpbmctbGVmdDogMzBweDsKKyAgcGFkZGluZy10b3A6IDIw
cHg7CisgIC13ZWJraXQtdHJhbnNmb3JtOm1hdHJpeCgwLjg2NiwwLjUsLTAuNSwwLjg2NiwxMjAs
MTUwKTsKK30KK2Rpdi5zY3JvbGwgeworICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBGRkZGOworICB3
aWR0aDogMTAwcHg7CisgIGhlaWdodDogMTAwcHg7CisgIG92ZXJmbG93OiBzY3JvbGw7Cit9Citk
aXYuZml4ZWQgeworICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkYwMDAwOworICBsZWZ0OiAyMDBweDsK
KyAgdG9wOiA1MHB4OworICB3aWR0aDogMTAwcHg7CisgIGhlaWdodDogMTAwcHg7CisgIHBvc2l0
aW9uOiBmaXhlZDsKK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KK1RoaXMgaXMgYSB0ZXN0
LgorPC9icj48L2JyPgorPC9icj48L2JyPgorPC9icj48L2JyPgorRm9vIGJhci4KKzwvYnI+PC9i
cj4KKzwvYnI+PC9icj4KKzwvYnI+PC9icj4KK3Jlc3VsdCAyCis8ZGl2IGNsYXNzPSJ0cmFuc2Zv
cm0iPgorcmVzdWx0IDMKKzwvZGl2PgorcmVzdWx0IDQKKzxkaXYgY2xhc3M9ImZpeGVkIj4KK3Jl
c3VsdCA1Cis8L2Rpdj4KK3Jlc3VsdCA2Cis8ZGl2IGNsYXNzPSJzY3JvbGwiPgorcmVzdWx0IDcK
K0ZvbyBiYXIuCis8L2JyPjwvYnI+Cis8L2JyPjwvYnI+Cis8L2JyPjwvYnI+CityZXN1bHQgOAor
PC9kaXY+CityZXN1bHQgOQorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156440</attachid>
            <date>2012-08-03 12:58:10 -0700</date>
            <delta_ts>2012-08-06 09:22:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93111-20120803205749.patch</filename>
            <type>text/plain</type>
            <size>41424</size>
            <attacher name="Leandro Graciá Gil">leandrogracia</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0NjQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTY5OTk4ZDI1ZTZkYmUw
MjVhZDRlZTM4YzI3YzdhMDc3YzUyYmUwMC4uYjZiMTcxZTQ5Mzk4MGE2ZGRlZWM3ZTg0MjkzNjU0
YjE2N2UzZTk1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEyLTA4LTAzICBMZWFu
ZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KKworICAgICAgICBb
Q2hyb21pdW1dIEltcGxlbWVudCB0aGUgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzIEFQSQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRyb2R1Y2UgdGhl
IGZpbmQtaW4tcGFnZSBjb29yZGluYXRlIHN5c3RlbS4gVGhpcyBzeXN0ZW0gdHJpZXMgdG8gc29s
dmUKKyAgICAgICAgdGhlIHVuaW50dWl0aXZlIHRpY2ttYXJrIHJlc3VsdHMgcHJlc2VudGVkIGlu
IHBhZ2VzIHdpdGggbXVsdGlwbGUgZnJhbWVzCisgICAgICAgIGFuZCBzY3JvbGxlZCBjb250ZW50
cyB3aGVyZSB0aGUgZmluZCByZXN1bHRzIG1pZ2h0IG5vdCBiZSBpbiB0aGUgdmlzaWJsZQorICAg
ICAgICBhcmVhIG9mIGEgZnJhbWUsIHdoaWNoIG1pZ2h0IGxlYWQgdG8gdGlja21hcmtzIGJlbG93
IHRoZSBjb250YWluZXIgZnJhbWUuCisKKyAgICAgICAgVG8gYWNoaWV2ZSB0aGlzLCB0aGlzIGNv
b3JkaW5hdGUgc3lzdGVtIGdvZXMgdXAgdGhlIHJlbmRlciB0cmVlCisgICAgICAgIG5vcm1hbGl6
aW5nIHRoZSBjb29yZGluYXRlcyBieSB0aGUgYWN0dWFsIGNvbnRlbnRzIHNpemUgb2YgaXRzIGNv
bnRhaW5lci4KKyAgICAgICAgVGhpcyBsZWFkcyB0byB0aWNrbWFya3Mgc2NhbGVkIHRvIHRoZSB2
aXNpYmxlIHNpemUgb2YgdGhlaXIgZnJhbWUKKyAgICAgICAgaW5kZXBlbmRlbnRseSBvZiBpdHMg
c2Nyb2xsLiBUaGlzIGNvb3JkaW5hdGUgc3lzdGVtIHN1cHBvcnRzIGFsc28gQ1NTCisgICAgICAg
IHNjcm9sbDpvdmVyZmxvdywgdHJhbnNmb3JtcyBhbmQgdGhlIGRpZmZlcmVudCBwb3NpdGlvbnMu
CisKKyAgICAgICAgQWxzbyBhZGQgYW4gYXV4aWxpYXJ5IG1ldGhvZCB0byBSYW5nZSBpbiBvcmRl
ciB0byBwcm92aWRlIGEgdHJhbnNmb3JtCisgICAgICAgIGZyaWVuZGx5IHdheSB0byByZXRyaWV2
ZSB0aGUgYWJzb2x1dGUgY29vcmRpbmF0ZXMgb2YgdGhlIGVuY2xvc2luZworICAgICAgICBib3Vu
ZGluZyBib3ggd2l0aG91dCB0aGUgYWRqdXN0bWVudCBvcGVyYXRpb25zIHRoYXQgdGhlIGV4aXN0
aW5nCisgICAgICAgIGVuY2xvc2luZ1JlY3QgbWV0aG9kIGRvZXMuCisKKyAgICAgICAgVGVzdGVk
IGJ5IFdlYkZyYW1lVGVzdCBXZWJLaXQgdW5pdCB0ZXN0LgorCisgICAgICAgICogV2ViQ29yZS5n
eXBpOgorICAgICAgICAqIGRvbS9SYW5nZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSYW5nZTo6
ZW5jbG9zaW5nQm91bmRpbmdCb3gpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogZG9t
L1JhbmdlLmg6CisgICAgICAgICogcmVuZGVyaW5nL0ZpbmRJblBhZ2VDb29yZGluYXRlcy5jcHA6
IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjp0b05vcm1hbGl6
ZWRSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZpbmRJblBhZ2VDb29yZGluYXRlczo6ZnJvbUFi
c29sdXRlUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpGaW5kSW5QYWdlQ29vcmRpbmF0ZXM6OmZy
b21SYW5nZSk6CisgICAgICAgICogcmVuZGVyaW5nL0ZpbmRJblBhZ2VDb29yZGluYXRlcy5oOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoRmluZEluUGFnZUNvb3JkaW5hdGVz
KToKKwogMjAxMi0wOC0wMyAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5j
b20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjEyNDQ3NSBhbmQgcjEyNDQ5
Ni4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggNGZlOTM4MjU4ODAyNzAzYjdiZjVlYjg1
YjZlNmJmOTgwMWY5NGM1ZC4uYmRmY2JhZThkNzA1MjA5MzI3NGU4NWRjYmJhM2MyYmMzMTI1NTRj
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsNSArMSw0NiBAQAogMjAxMi0wOC0w
MyAgTGVhbmRybyBHcmFjaWEgR2lsICA8bGVhbmRyb2dyYWNpYUBjaHJvbWl1bS5vcmc+CiAKKyAg
ICAgICAgW0Nocm9taXVtXSBJbXBsZW1lbnQgdGhlIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyBB
UEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMTEx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVt
ZW50IHRoZSBmdW5jaW9uYWxpdHkgb2YgdGhlIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyBBUEkg
aW4gV2ViRnJhbWUuCisgICAgICAgIFRoZXNlIG1ldGhvZHMga2VlcCBhIGNhY2hlIG9mIHRoZSBt
YXRjaCByZWN0cyBpbiBhIHNwZWNpYWwgY29vcmRpbmF0ZSBzeXN0ZW0KKyAgICAgICAgKGZpbmQt
aW4tcGFnZSBjb29yZGluYXRlcykgYW5kIHVwZGF0ZSB0aGVtIG9uIHNpemUgY2hhbmdlcy4gVGhl
eSBhbHNvIGFsbG93CisgICAgICAgIHRvIHJlY292ZXIgdGhlIG1hdGNoIGNsb3Nlc3QgdG8gYSBn
aXZlbiBwb2ludCwgdGhlcmVmb3JlIGVuYWJsaW5nIHRvIG1vdmUKKyAgICAgICAgdG8gZmluZCBt
YXRjaGVzIHdoZW4gdGFwcGluZyBvbiB0aGVpciBjb3JyZXNwb25kaW5nIHRpY2ttYXJrcy4KKwor
ICAgICAgICAqIHNyYy9XZWJGcmFtZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFt
ZUltcGw6OkZpbmRNYXRjaDo6RmluZE1hdGNoKToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAg
IChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6ZmluZCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1l
SW1wbDo6c3RvcEZpbmRpbmcpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OnNjb3Bl
U3RyaW5nTWF0Y2hlcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6aW5jcmVhc2VN
YXRjaENvdW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpyZXNldE1hdGNoQ291
bnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmZpbmRNYXRjaE1hcmtlcnNWZXJz
aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpjbGVhckZpbmRNYXRjaGVzQ2Fj
aGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmlzQWN0aXZlTWF0Y2hGcmFtZVZh
bGlkKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjp1cGRhdGVGaW5kTWF0Y2hSZWN0
cyk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6YWN0aXZlRmluZE1hdGNoUmVjdCk6
CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6ZmluZE1hdGNoUmVjdHMpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFwcGVuZEZpbmRNYXRjaFJlY3RzKToKKyAgICAgICAg
KFdlYktpdDo6V2ViRnJhbWVJbXBsOjpzZWxlY3ROZWFyZXN0RmluZE1hdGNoKToKKyAgICAgICAg
KFdlYktpdDo6V2ViRnJhbWVJbXBsOjpuZWFyZXN0RmluZE1hdGNoKToKKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVJbXBsOjpzZWxlY3RGaW5kTWF0Y2gpOgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUltcGw6OldlYkZyYW1lSW1wbCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6
ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAgICAgKiBzcmMvV2ViRnJhbWVJbXBsLmg6Cisg
ICAgICAgIChXZWJGcmFtZUltcGwpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFj
dGl2ZU1hdGNoKToKKyAgICAgICAgKEZpbmRNYXRjaCk6CisgICAgICAgICogdGVzdHMvV2ViRnJh
bWVUZXN0LmNwcDoKKyAgICAgICAgKiB0ZXN0cy9kYXRhL2ZpbmRfaW5fcGFnZS5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiB0ZXN0cy9kYXRhL2ZpbmRfaW5fcGFnZV9mcmFtZS5odG1sOiBBZGRlZC4K
KworMjAxMi0wOC0wMyAgTGVhbmRybyBHcmFjaWEgR2lsICA8bGVhbmRyb2dyYWNpYUBjaHJvbWl1
bS5vcmc+CisKICAgICAgICAgW0Nocm9taXVtXSBBZGQgc3R1YnMgZm9yIHRoZSBmaW5kLWluLXBh
Z2UgbWF0Y2ggcmVjdHMgQVBJCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD05MzExMAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5
cGkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggMWJmZmNmYTk5MzkwOTQxZGZm
ODFiNjE5ZTcwNjcwYmQ4YjRkOWY3ZC4uMmU5YzhhNjc5NmNmMTU2MzdhZWNiM2ZhMDk5MzRmYzMz
OTljNDJhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtNDY1OSw2ICs0NjU5LDggQEAKICAgICAgICAg
ICAgICdyZW5kZXJpbmcvRWxsaXBzaXNCb3guaCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL0Zp
bHRlckVmZmVjdFJlbmRlcmVyLmNwcCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL0ZpbHRlckVm
ZmVjdFJlbmRlcmVyLmgnLAorICAgICAgICAgICAgJ3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRp
bmF0ZXMuY3BwJywKKyAgICAgICAgICAgICdyZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVz
LmgnLAogICAgICAgICAgICAgJ3JlbmRlcmluZy9GaXhlZFRhYmxlTGF5b3V0LmNwcCcsCiAgICAg
ICAgICAgICAncmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuaCcsCiAgICAgICAgICAgICAncmVu
ZGVyaW5nL0Zsb3dUaHJlYWRDb250cm9sbGVyLmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vUmFuZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcAppbmRleCBl
OTQzY2Y1ZDk1ZWNiNDRkMDk4YzczZmU0ZDJlODc4NDg0Y2FhYjU3Li4xZmIxZmRhYjhiNDZhMzUw
MGNhMmQ0OTA1MjhmNTYwMTljZGE3ZWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
UmFuZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5jcHAKQEAgLTE5NDIsNyAr
MTk0MiwyMyBAQCB2b2lkIFJhbmdlOjpnZXRCb3JkZXJBbmRUZXh0UXVhZHMoVmVjdG9yPEZsb2F0
UXVhZD4mIHF1YWRzKSBjb25zdAogICAgIH0KIH0KIAotICAgIAorRmxvYXRSZWN0IFJhbmdlOjpl
bmNsb3NpbmdCb3VuZGluZ0JveCgpIGNvbnN0Cit7CisgICAgaWYgKCFtX3N0YXJ0LmNvbnRhaW5l
cigpKQorICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7CisKKyAgICBWZWN0b3I8RmxvYXRRdWFk
PiBxdWFkczsKKyAgICB0ZXh0UXVhZHMocXVhZHMpOworICAgIGlmIChxdWFkcy5pc0VtcHR5KCkp
CisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAgIEZsb2F0UmVjdCByZXN1bHQ7Cisg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBxdWFkcy5zaXplKCk7ICsraSkKKyAgICAgICAgcmVz
dWx0LnVuaXRlKHF1YWRzW2ldLmJvdW5kaW5nQm94KCkpOworCisgICAgcmV0dXJuIHJlc3VsdDsK
K30KKwogRmxvYXRSZWN0IFJhbmdlOjpib3VuZGluZ1JlY3QoKSBjb25zdAogewogICAgIGlmICgh
bV9zdGFydC5jb250YWluZXIoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5n
ZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKaW5kZXggYjg0YmQ2MTQ1NDA5ZDNhMTli
MTM1NGYzNTc3ODY4NWY4ODBlMjljMi4uZTgwY2E2ZGE3Mjc1MTgwMDRmYTIwNGM0YjZmZGY5OTU3
MjIyNTQ3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKQEAgLTEyNSw2ICsxMjUsNyBAQCBwdWJsaWM6CiAgICAg
Ly8gVHJhbnNmb3JtLWZyaWVuZGx5CiAgICAgdm9pZCB0ZXh0UXVhZHMoVmVjdG9yPEZsb2F0UXVh
ZD4mLCBib29sIHVzZVNlbGVjdGlvbkhlaWdodCA9IGZhbHNlLCBSYW5nZUluRml4ZWRQb3NpdGlv
biogPSAwKSBjb25zdDsKICAgICB2b2lkIGdldEJvcmRlckFuZFRleHRRdWFkcyhWZWN0b3I8Rmxv
YXRRdWFkPiYpIGNvbnN0OworICAgIEZsb2F0UmVjdCBlbmNsb3NpbmdCb3VuZGluZ0JveCgpIGNv
bnN0OwogICAgIEZsb2F0UmVjdCBib3VuZGluZ1JlY3QoKSBjb25zdDsKIAogICAgIHZvaWQgbm9k
ZUNoaWxkcmVuQ2hhbmdlZChDb250YWluZXJOb2RlKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2NzAwZDQ4
Y2RiNDM2ZTg5ZTFiNGI1OGE4OGYxMjg4OWQwY2YzYTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVzLmNwcApAQCAtMCwwICsx
LDE0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaW5kSW5QYWdlQ29vcmRpbmF0
ZXMuaCIKKworI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJGbG9hdFF1YWQuaCIK
KyNpbmNsdWRlICJGbG9hdFJlY3QuaCIKKyNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIklu
dFBvaW50LmgiCisjaW5jbHVkZSAiTm9kZS5oIgorI2luY2x1ZGUgIlJhbmdlLmgiCisjaW5jbHVk
ZSAiUmVuZGVyQm94LmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCisjaW5jbHVkZSAiUmVu
ZGVyUGFydC5oIgorI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCisjaW5jbHVkZSAiUmVuZGVyVmll
dy5oIgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitz
dGF0aWMgRmxvYXRSZWN0IHRvTm9ybWFsaXplZFJlY3QoY29uc3QgRmxvYXRSZWN0JiBhYnNvbHV0
ZVJlY3QsIGNvbnN0IFJlbmRlck9iamVjdCogcmVuZGVyZXIsIEZsb2F0UmVjdCogY29udGFpbmVy
Qm91bmRpbmdCb3ggPSAwKQoreworICAgIEFTU0VSVChyZW5kZXJlcik7CisKKyAgICBjb25zdCBS
ZW5kZXJPYmplY3QqIGNvbnRhaW5lciA9IHJlbmRlcmVyLT5jb250YWluZXIoKTsKKyAgICBpZiAo
IWNvbnRhaW5lcikgeworICAgICAgICBpZiAoY29udGFpbmVyQm91bmRpbmdCb3gpCisgICAgICAg
ICAgICAqY29udGFpbmVyQm91bmRpbmdCb3ggPSBGbG9hdFJlY3QoKTsKKyAgICAgICAgcmV0dXJu
IEZsb2F0UmVjdCgpOworICAgIH0KKworICAgIEZsb2F0UmVjdCBub3JtYWxpemVkUmVjdCA9IGFi
c29sdXRlUmVjdDsKKyAgICBGbG9hdFJlY3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lci0+YWJz
b2x1dGVCb3VuZGluZ0JveFJlY3QoKTsKKyAgICBpZiAoY29udGFpbmVyQm91bmRpbmdCb3gpCisg
ICAgICAgICpjb250YWluZXJCb3VuZGluZ0JveCA9IGNvbnRhaW5lclJlY3Q7CisKKyAgICAvLyBG
b3IgUmVuZGVyQm94ZXMgd2Ugd2FudCB0byBub3JtYWxpemUgYnkgdGhlIG1heCBsYXlvdXQgb3Zl
cmZsb3cgc2l6ZSBpbnN0ZWFkIG9mIG9ubHkgdGhlIHZpc2libGUgYm91bmRpbmcgYm94LgorICAg
IC8vIFF1YWRzIGFuZCB0aGVpciBlbmNsb3NpbmcgYm91bmRpbmcgYm94ZXMgbmVlZCB0byBiZSB1
c2VkIGluIG9yZGVyIHRvIGtlZXAgcmVzdWx0cyB0cmFuc2Zvcm0tZnJpZW5kbHkuCisgICAgaWYg
KGNvbnRhaW5lci0+aXNCb3goKSkgeworICAgICAgICBjb25zdCBSZW5kZXJCb3gqIGNvbnRhaW5l
ckJveCA9IHRvUmVuZGVyQm94KGNvbnRhaW5lcik7CisgICAgICAgIEZsb2F0UG9pbnQgc2Nyb2xs
ZWRPcmlnaW47CisKKyAgICAgICAgLy8gRm9yIG92ZXJmbG93OnNjcm9sbCB3ZSBuZWVkIHRvIGdl
dCB3aGVyZSB0aGUgYWN0dWFsIG9yaWdpbiBpcyBpbmRlcGVuZGVudGx5IG9mIHRoZSBzY3JvbGwu
CisgICAgICAgIGlmIChjb250YWluZXItPmhhc092ZXJmbG93Q2xpcCgpKQorICAgICAgICAgICAg
c2Nyb2xsZWRPcmlnaW4gPSAtSW50UG9pbnQoY29udGFpbmVyQm94LT5zY3JvbGxlZENvbnRlbnRP
ZmZzZXQoKSk7CisKKyAgICAgICAgRmxvYXRSZWN0IG92ZXJmbG93UmVjdChzY3JvbGxlZE9yaWdp
biwgY29udGFpbmVyQm94LT5tYXhMYXlvdXRPdmVyZmxvdygpKTsKKyAgICAgICAgY29udGFpbmVy
UmVjdCA9IGNvbnRhaW5lckJveC0+bG9jYWxUb0Fic29sdXRlUXVhZChGbG9hdFF1YWQob3ZlcmZs
b3dSZWN0KSwgZmFsc2UpLmVuY2xvc2luZ0JvdW5kaW5nQm94KCk7CisgICAgfQorCisgICAgaWYg
KGNvbnRhaW5lclJlY3QuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7CisK
KyAgICAvLyBNYWtlIHRoZSBjb29yZGluYXRlcyByZWxhdGl2ZSB0byB0aGUgY29udGFpbmVyIGVu
Y2xvc2luZyBib3VuZGluZyBib3guCisgICAgLy8gU2luY2Ugd2Ugd29yayB3aXRoIHJlY3RzIGVu
Y2xvc2luZyBxdWFkIHVuaW9ucyB0aGlzIGlzIHN0aWxsIHRyYW5zZm9ybS1mcmllbmRseS4KKyAg
ICBub3JtYWxpemVkUmVjdC5tb3ZlQnkoLWNvbnRhaW5lclJlY3QubG9jYXRpb24oKSk7CisKKyAg
ICAvLyBGaXhlZCBwb3NpdGlvbnMgZG8gbm90IG1ha2Ugc2Vuc2UgaW4gdGhpcyBjb29yZGluYXRl
IHN5c3RlbSwgYnV0IG5lZWQgdG8gbGVhdmUgY29uc2lzdGVudCB0aWNrbWFya3MuCisgICAgLy8g
U28sIHVzZSB0aGVpciBwb3NpdGlvbiB3aGVuIHRoZSB2aWV3IGlzIG5vdCBzY3JvbGxlZCwgbGlr
ZSBhbiBhYnNvbHV0ZSBwb3NpdGlvbi4KKyAgICBpZiAocmVuZGVyZXItPnN0eWxlKCktPnBvc2l0
aW9uKCkgPT0gRml4ZWRQb3NpdGlvbiAmJiBjb250YWluZXItPmlzUmVuZGVyVmlldygpKQorICAg
ICAgICBub3JtYWxpemVkUmVjdC5tb3ZlKC10b1JlbmRlclZpZXcoY29udGFpbmVyKS0+ZnJhbWVW
aWV3KCktPnNjcm9sbE9mZnNldEZvckZpeGVkUG9zaXRpb24oKSk7CisKKyAgICBub3JtYWxpemVk
UmVjdC5zY2FsZSgxIC8gY29udGFpbmVyUmVjdC53aWR0aCgpLCAxIC8gY29udGFpbmVyUmVjdC5o
ZWlnaHQoKSk7CisKKyAgICByZXR1cm4gbm9ybWFsaXplZFJlY3Q7Cit9CisKK0Zsb2F0UmVjdCBG
aW5kSW5QYWdlQ29vcmRpbmF0ZXM6OmZyb21BYnNvbHV0ZVJlY3QoY29uc3QgRmxvYXRSZWN0JiBp
bnB1dFJlY3QsIGNvbnN0IFJlbmRlck9iamVjdCogcmVuZGVyZXIpCit7CisgICAgaWYgKCFyZW5k
ZXJlciB8fCBpbnB1dFJlY3QuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7
CisKKyAgICAvLyBOb3JtYWxpemUgdGhlIGlucHV0IHJlY3QgdG8gaXRzIGNvbnRhaW5lciwgc2F2
aW5nIHRoZSBjb250YWluZXIgYm91bmRpbmcgYm94IGZvciB0aGUgaW5jb21pbmcgbG9vcC4KKyAg
ICBGbG9hdFJlY3QgcmVuZGVyZXJCb3VuZGluZ0JveDsKKyAgICBGbG9hdFJlY3Qgbm9ybWFsaXpl
ZFJlY3QgPSB0b05vcm1hbGl6ZWRSZWN0KGlucHV0UmVjdCwgcmVuZGVyZXIsICZyZW5kZXJlckJv
dW5kaW5nQm94KTsKKyAgICByZW5kZXJlciA9IHJlbmRlcmVyLT5jb250YWluZXIoKTsKKworICAg
IC8vIEdvIHVwIGFjcm9zcyBmcmFtZXMuCisgICAgd2hpbGUgKHJlbmRlcmVyKSB7CisKKyAgICAg
ICAgLy8gR28gdXAgdGhlIHJlbmRlciB0cmVlIHVudGlsIHdlIHJlYWNoIHRoZSByb290IG9mIHRo
ZSBjdXJyZW50IGZyYW1lICh0aGUgUmVuZGVyVmlldykuCisgICAgICAgIGZvciAoY29uc3QgUmVu
ZGVyT2JqZWN0KiBjb250YWluZXIgPSByZW5kZXJlci0+Y29udGFpbmVyKCk7IGNvbnRhaW5lcjsg
cmVuZGVyZXIgPSBjb250YWluZXIsIGNvbnRhaW5lciA9IGNvbnRhaW5lci0+Y29udGFpbmVyKCkp
IHsKKworICAgICAgICAgICAgLy8gQ29tcG9zZSB0aGUgbm9ybWFsaXplZCByZWN0cy4gVGhlIGFi
c29sdXRlIGJvdW5kaW5nIGJveCBvZiB0aGUgY29udGFpbmVyIGlzIGNhbGN1bGF0ZWQgaW4gdG9O
b3JtYWxpemVkUmVjdAorICAgICAgICAgICAgLy8gYW5kIGNhbiBiZSByZXVzZWQgZm9yIHRoZSBu
ZXh0IGl0ZXJhdGlvbiBvZiB0aGUgbG9vcC4KKyAgICAgICAgICAgIEZsb2F0UmVjdCBub3JtYWxp
emVkQm94UmVjdCA9IHRvTm9ybWFsaXplZFJlY3QocmVuZGVyZXJCb3VuZGluZ0JveCwgcmVuZGVy
ZXIsICZyZW5kZXJlckJvdW5kaW5nQm94KTsKKyAgICAgICAgICAgIG5vcm1hbGl6ZWRSZWN0LnNj
YWxlKG5vcm1hbGl6ZWRCb3hSZWN0LndpZHRoKCksIG5vcm1hbGl6ZWRCb3hSZWN0LmhlaWdodCgp
KTsKKyAgICAgICAgICAgIG5vcm1hbGl6ZWRSZWN0Lm1vdmVCeShub3JtYWxpemVkQm94UmVjdC5s
b2NhdGlvbigpKTsKKworICAgICAgICAgICAgaWYgKG5vcm1hbGl6ZWRSZWN0LmlzRW1wdHkoKSkK
KyAgICAgICAgICAgICAgICByZXR1cm4gbm9ybWFsaXplZFJlY3Q7CisgICAgICAgIH0KKworICAg
ICAgICAvLyBKdW1wIHRvIHRoZSByZW5kZXJlciBvd25pbmcgdGhlIGZyYW1lLCBpZiBhbnkuCisg
ICAgICAgIEFTU0VSVChyZW5kZXJlci0+aXNSZW5kZXJWaWV3KCkpOworICAgICAgICByZW5kZXJl
ciA9IHJlbmRlcmVyLT5mcmFtZSgpID8gcmVuZGVyZXItPmZyYW1lKCktPm93bmVyUmVuZGVyZXIo
KSA6IDA7CisKKyAgICAgICAgLy8gVXBkYXRlIHRoZSBhYnNvbHV0ZSBjb29yZGluYXRlcyB0byB0
aGUgbmV3IGZyYW1lLgorICAgICAgICBpZiAocmVuZGVyZXIpCisgICAgICAgICAgICByZW5kZXJl
ckJvdW5kaW5nQm94ID0gcmVuZGVyZXItPmFic29sdXRlQm91bmRpbmdCb3hSZWN0KCk7CisgICAg
fQorCisgICAgcmV0dXJuIG5vcm1hbGl6ZWRSZWN0OworfQorCitGbG9hdFJlY3QgRmluZEluUGFn
ZUNvb3JkaW5hdGVzOjpmcm9tUmFuZ2UoUGFzc1JlZlB0cjxSYW5nZT4gaW5wdXRSYW5nZSkKK3sK
KyAgICBSZWZQdHI8UmFuZ2U+IHJhbmdlID0gaW5wdXRSYW5nZTsKKyAgICBpZiAoIXJhbmdlIHx8
ICFyYW5nZS0+Zmlyc3ROb2RlKCkpCisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAg
IHJldHVybiBmcm9tQWJzb2x1dGVSZWN0KHJhbmdlLT5lbmNsb3NpbmdCb3VuZGluZ0JveCgpLCBy
YW5nZS0+Zmlyc3ROb2RlKCktPnJlbmRlcmVyKCkpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmluZEluUGFnZUNvb3Jk
aW5hdGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVz
LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uMGNlZjA0NmNlZjM0ZWFiZDU3YjFhZDQ4ODQ4NDg0NmRiMDA1Yjk0OQot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaW5kSW5QYWdlQ29v
cmRpbmF0ZXMuaApAQCAtMCwwICsxLDU4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdv
b2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAq
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
KyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5l
aXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNv
bnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVy
aXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENP
UFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBGaW5kSW5QYWdlQ29vcmRpbmF0ZXNf
aAorI2RlZmluZSBGaW5kSW5QYWdlQ29vcmRpbmF0ZXNfaAorCisjaW5jbHVkZSAiRmxvYXRSZWN0
LmgiCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitjbGFzcyBSYW5nZTsKK2NsYXNzIFJlbmRlck9iamVjdDsKKworLy8gQ29udmVydHMgY29vcmRp
bmF0ZXMgdG8gdGhlIGZpbmQtaW4tcGFnZSBjb29yZGluYXRlIHN5c3RlbS4KKy8vIFRoaXMgY29v
cmRpbmF0ZSBzeXN0ZW0gaXMgZGVzaWduZWQgdG8gZ2l2ZSBjb25zaXN0ZW50IHRpY2ttYXJrIHJl
c3VsdHMgaW4gbXVsdGlwbGUgZnJhbWUKKy8vIHBhZ2VzIHdoZXJlIHRoZSBjb250ZW50cyBvZiBz
dWJmcmFtZXMgdGhhdCBtaWdodCBoYXZlIGZpbmQgbWF0Y2hlcyBuZWVkIHRvIGJlIHNjcm9sbGVk
LgorLy8gVGhleSBhcmUgcmVwcmVzZW50ZWQgYXMgbm9ybWFsaXplZCBmcmFjdGlvbnMgb2YgdGhl
IG1haW4gcGFnZSBkb2N1bWVudCB3aXRoIHRoZSBwcm9wZXJ0eQorLy8gdGhhdCB0aGV5IGFyZSBi
dWlsdCBieSBjb21wb3NpbmcgdGhlIHJlbGF0aXZlIHBvc2l0aW9uIG9mIGVhY2ggcmVuZGVyZXIg
dG8gdGhlIGZ1bGwgZWZmZWN0aXZlCisvLyBsYXlvdXQgc2l6ZSBvZiBpdHMgY29udGFpbmVyIGFs
bCB0aGUgd2F5IHVwIHRoZSByZW5kZXIgdHJlZS4gVGhlcmVmb3JlLCB0aGVzZSBjb29yZGluYXRl
cworLy8gYXJlIHNjcm9sbC1pbmRlcGVuZGVudCBhbmQgYWx3YXlzIHJlcHJlc2VudCBzY3JvbGxl
ZCBjb250ZW50cyBzY2FsZWQgdG8gdGhlaXIgdmlzaWJsZSBsYXlvdXQuCisvLyBUaGUgcHJvdmlk
ZWQgbWV0aG9kcyBzdXBwb3J0IHNjcm9sbDpvdmVyZmxvdyBhbmQgYXJlIENTUyBwb3NpdGlvbiBh
bmQgdHJhbnNmb3JtLWZyaWVuZGx5LgorY2xhc3MgRmluZEluUGFnZUNvb3JkaW5hdGVzIHsKK3B1
YmxpYzoKKyAgICBzdGF0aWMgRmxvYXRSZWN0IGZyb21BYnNvbHV0ZVJlY3QoY29uc3QgRmxvYXRS
ZWN0JiwgY29uc3QgUmVuZGVyT2JqZWN0Kik7CisgICAgc3RhdGljIEZsb2F0UmVjdCBmcm9tUmFu
Z2UoUGFzc1JlZlB0cjxSYW5nZT4pOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1w
bC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCmluZGV4
IGI4OTM5ZGYwNGNhM2JkODM0YWExMDExOTkzOGNhZjdlNWEwYTFjNjMuLjI5MjFhZjhiMDRjYzJh
NzUzZmEzNTY4MGE0ZGFkNDM4MTVhOGYyMzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViRnJhbWVJbXBsLmNwcApAQCAtODksNiArODksNyBAQAogI2luY2x1ZGUgIkV2ZW50SGFu
ZGxlci5oIgogI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXJXcmFwcGVyLmgiCiAjaW5jbHVkZSAiRmls
ZVN5c3RlbVR5cGUuaCIKKyNpbmNsdWRlICJGaW5kSW5QYWdlQ29vcmRpbmF0ZXMuaCIKICNpbmNs
dWRlICJGb2N1c0NvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJGb250Q2FjaGUuaCIKICNpbmNsdWRl
ICJGb3JtU3RhdGUuaCIKQEAgLTExOCw2ICsxMTksNyBAQAogI2luY2x1ZGUgIlBsYXRmb3JtU3Vw
cG9ydC5oIgogI2luY2x1ZGUgIlBsdWdpbkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiUHJpbnRDb250
ZXh0LmgiCisjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAjaW5jbHVkZSAiUmVuZGVyRnJhbWUuaCIK
ICNpbmNsdWRlICJSZW5kZXJMYXllci5oIgogI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgpAQCAt
MTc0LDcgKzE3Niw2IEBACiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViUG9pbnQuaCIKICNpbmNsdWRl
ICJwbGF0Zm9ybS9XZWJSZWN0LmgiCiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViU2VyaWFsaXplZFNj
cmlwdFZhbHVlLmgiCi0jaW5jbHVkZSAicGxhdGZvcm0vV2ViU2l6ZS5oIgogI2luY2x1ZGUgInBs
YXRmb3JtL1dlYlVSTEVycm9yLmgiCiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViVmVjdG9yLmgiCiAK
QEAgLTUxNiw2ICs1MTcsMTMgQEAgc3RhdGljIFdlYkRhdGFTb3VyY2UqIERhdGFTb3VyY2VGb3JE
b2NMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICByZXR1cm4gbG9hZGVyID8gV2Vi
RGF0YVNvdXJjZUltcGw6OmZyb21Eb2N1bWVudExvYWRlcihsb2FkZXIpIDogMDsKIH0KIAorV2Vi
RnJhbWVJbXBsOjpGaW5kTWF0Y2g6OkZpbmRNYXRjaChQYXNzUmVmUHRyPFJhbmdlPiByYW5nZSwg
aW50IG9yZGluYWwpCisgICAgOiBtX3JhbmdlKHJhbmdlKQorICAgICwgbV9vcmRpbmFsKG9yZGlu
YWwpCisgICAgLCBtX3JlY3QoMCwgMCwgMCwgMCkKK3sKK30KKwogLy8gV2ViRnJhbWUgLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQogCiBjbGFzcyBXZWJGcmFtZUltcGw6OkRlZmVycmVkU2NvcGVTdHJpbmdNYXRjaGVzIHsK
QEAgLTE2MzcsNiArMTY0NSwxMCBAQCBib29sIFdlYkZyYW1lSW1wbDo6ZmluZChpbnQgaWRlbnRp
ZmllciwKICAgICBtX2FjdGl2ZU1hdGNoID0gZnJhbWUoKS0+ZWRpdG9yKCktPmZpbmRTdHJpbmdB
bmRTY3JvbGxUb1Zpc2libGUoc2VhcmNoVGV4dCwgbV9hY3RpdmVNYXRjaC5nZXQoKSwgZmluZE9w
dGlvbnMpOwogCiAgICAgaWYgKCFtX2FjdGl2ZU1hdGNoKSB7CisgICAgICAgIC8vIElmIHdlJ3Jl
IGZpbmRpbmcgbmV4dCB0aGUgbmV4dCBhY3RpdmUgbWF0Y2ggbWlnaHQgbm90IGJlIGluIHRoZSBj
dXJyZW50IGZyYW1lLgorICAgICAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZG9uJ3Qgd2FudCB0byBj
bGVhciB0aGUgbWF0Y2hlcyBjYWNoZS4KKyAgICAgICAgaWYgKCFvcHRpb25zLmZpbmROZXh0KQor
ICAgICAgICAgICAgY2xlYXJGaW5kTWF0Y2hlc0NhY2hlKCk7CiAgICAgICAgIGludmFsaWRhdGVB
cmVhKEludmFsaWRhdGVBbGwpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQpAQCAtMTY4
OCw2ICsxNzAwLDcgQEAgdm9pZCBXZWJGcmFtZUltcGw6OnN0b3BGaW5kaW5nKGJvb2wgY2xlYXJT
ZWxlY3Rpb24pCiAgICAgLy8gUmVtb3ZlIGFsbCBtYXJrZXJzIGZvciBtYXRjaGVzIGZvdW5kIGFu
ZCB0dXJuIG9mZiB0aGUgaGlnaGxpZ2h0aW5nLgogICAgIGZyYW1lKCktPmRvY3VtZW50KCktPm1h
cmtlcnMoKS0+cmVtb3ZlTWFya2VycyhEb2N1bWVudE1hcmtlcjo6VGV4dE1hdGNoKTsKICAgICBm
cmFtZSgpLT5lZGl0b3IoKS0+c2V0TWFya2VkVGV4dE1hdGNoZXNBcmVIaWdobGlnaHRlZChmYWxz
ZSk7CisgICAgY2xlYXJGaW5kTWF0Y2hlc0NhY2hlKCk7CiAKICAgICAvLyBMZXQgdGhlIGZyYW1l
IGtub3cgdGhhdCB3ZSBkb24ndCB3YW50IHRpY2ttYXJrcyBvciBoaWdobGlnaHRpbmcgYW55bW9y
ZS4KICAgICBpbnZhbGlkYXRlQXJlYShJbnZhbGlkYXRlQWxsKTsKQEAgLTE3MTAsNiArMTcyMywx
MCBAQCB2b2lkIFdlYkZyYW1lSW1wbDo6c2NvcGVTdHJpbmdNYXRjaGVzKGludCBpZGVudGlmaWVy
LAogICAgICAgICAvLyBDbGVhciBoaWdobGlnaHRpbmcgZm9yIHRoaXMgZnJhbWUuCiAgICAgICAg
IGlmIChmcmFtZSgpLT5lZGl0b3IoKS0+bWFya2VkVGV4dE1hdGNoZXNBcmVIaWdobGlnaHRlZCgp
KQogICAgICAgICAgICAgZnJhbWUoKS0+cGFnZSgpLT51bm1hcmtBbGxUZXh0TWF0Y2hlcygpOwor
CisgICAgICAgIC8vIENsZWFyIHRoZSB0aWNrbWFya3MgYW5kIHJlc3VsdHMgY2FjaGUuCisgICAg
ICAgIGNsZWFyRmluZE1hdGNoZXNDYWNoZSgpOworCiAgICAgICAgIC8vIENsZWFyIHRoZSBjb3Vu
dGVycyBmcm9tIGxhc3Qgb3BlcmF0aW9uLgogICAgICAgICBtX2xhc3RNYXRjaENvdW50ID0gMDsK
ICAgICAgICAgbV9uZXh0SW52YWxpZGF0ZUFmdGVyID0gMDsKQEAgLTE4MDgsNiArMTgyNSw4IEBA
IHZvaWQgV2ViRnJhbWVJbXBsOjpzY29wZVN0cmluZ01hdGNoZXMoaW50IGlkZW50aWZpZXIsCiAK
ICAgICAgICAgYWRkTWFya2VyKHJlc3VsdFJhbmdlLmdldCgpLCBmb3VuZEFjdGl2ZU1hdGNoKTsK
IAorICAgICAgICBtX2ZpbmRNYXRjaGVzQ2FjaGUuYXBwZW5kKEZpbmRNYXRjaChyZXN1bHRSYW5n
ZS5nZXQoKSwgbV9sYXN0TWF0Y2hDb3VudCArIG1hdGNoQ291bnQpKTsKKwogICAgICAgICAvLyBT
ZXQgdGhlIG5ldyBzdGFydCBmb3IgdGhlIHNlYXJjaCByYW5nZSB0byBiZSB0aGUgZW5kIG9mIHRo
ZSBwcmV2aW91cwogICAgICAgICAvLyByZXN1bHQgcmFuZ2UuIFRoZXJlIGlzIG5vIG5lZWQgdG8g
dXNlIGEgVmlzaWJsZVBvc2l0aW9uIGhlcmUsCiAgICAgICAgIC8vIHNpbmNlIGZpbmRQbGFpblRl
eHQgd2lsbCB1c2UgYSBUZXh0SXRlcmF0b3IgdG8gZ28gb3ZlciB0aGUgdmlzaWJsZQpAQCAtMTg3
OCw2ICsxODk3LDkgQEAgdm9pZCBXZWJGcmFtZUltcGw6OmluY3JlYXNlTWF0Y2hDb3VudChpbnQg
Y291bnQsIGludCBpZGVudGlmaWVyKQogICAgIC8vIFRoaXMgZnVuY3Rpb24gc2hvdWxkIG9ubHkg
YmUgY2FsbGVkIG9uIHRoZSBtYWluZnJhbWUuCiAgICAgQVNTRVJUKCFwYXJlbnQoKSk7CiAKKyAg
ICBpZiAoY291bnQpCisgICAgICAgICsrbV9maW5kTWF0Y2hNYXJrZXJzVmVyc2lvbjsKKwogICAg
IG1fdG90YWxNYXRjaENvdW50ICs9IGNvdW50OwogCiAgICAgLy8gVXBkYXRlIHRoZSBVSSB3aXRo
IHRoZSBsYXRlc3QgZmluZGluZ3MuCkBAIC0xODk2LDYgKzE5MTgsOSBAQCB2b2lkIFdlYkZyYW1l
SW1wbDo6cmVwb3J0RmluZEluUGFnZVNlbGVjdGlvbihjb25zdCBXZWJSZWN0JiBzZWxlY3Rpb25S
ZWN0LAogCiB2b2lkIFdlYkZyYW1lSW1wbDo6cmVzZXRNYXRjaENvdW50KCkKIHsKKyAgICBpZiAo
bV90b3RhbE1hdGNoQ291bnQgPiAwKQorICAgICAgICArK21fZmluZE1hdGNoTWFya2Vyc1ZlcnNp
b247CisKICAgICBtX3RvdGFsTWF0Y2hDb3VudCA9IDA7CiAgICAgbV9mcmFtZXNTY29waW5nQ291
bnQgPSAwOwogfQpAQCAtMTk0MiwyNSArMTk2NywxOTMgQEAgdm9pZCBXZWJGcmFtZUltcGw6OmRp
c3BhdGNoTWVzc2FnZUV2ZW50V2l0aE9yaWdpbkNoZWNrKGNvbnN0IFdlYlNlY3VyaXR5T3JpZ2lu
JgogCiBpbnQgV2ViRnJhbWVJbXBsOjpmaW5kTWF0Y2hNYXJrZXJzVmVyc2lvbigpIGNvbnN0CiB7
Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzIGFzIHBhcnQgb2YgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMTExLgotICAgIHJldHVybiAwOworICAgIC8vIFRo
aXMgZnVuY3Rpb24gc2hvdWxkIG9ubHkgYmUgY2FsbGVkIG9uIHRoZSBtYWluZnJhbWUuCisgICAg
QVNTRVJUKCFwYXJlbnQoKSk7CisgICAgcmV0dXJuIG1fZmluZE1hdGNoTWFya2Vyc1ZlcnNpb247
Cit9CisKK3ZvaWQgV2ViRnJhbWVJbXBsOjpjbGVhckZpbmRNYXRjaGVzQ2FjaGUoKQoreworICAg
IGlmICghbV9maW5kTWF0Y2hlc0NhY2hlLmlzRW1wdHkoKSkKKyAgICAgICAgdmlld0ltcGwoKS0+
bWFpbkZyYW1lSW1wbCgpLT5tX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKys7CisKKyAgICBtX2Zp
bmRNYXRjaGVzQ2FjaGUuY2xlYXIoKTsKKyAgICBtX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQgPSBm
YWxzZTsKK30KKworYm9vbCBXZWJGcmFtZUltcGw6OmlzQWN0aXZlTWF0Y2hGcmFtZVZhbGlkKCkg
Y29uc3QKK3sKKyAgICBjb25zdCBXZWJGcmFtZUltcGwqIG1haW5GcmFtZUltcGwgPSB2aWV3SW1w
bCgpLT5tYWluRnJhbWVJbXBsKCk7CisgICAgY29uc3QgV2ViRnJhbWVJbXBsKiBhY3RpdmVNYXRj
aEZyYW1lID0gbWFpbkZyYW1lSW1wbC0+YWN0aXZlTWF0Y2hGcmFtZSgpOworICAgIHJldHVybiBh
Y3RpdmVNYXRjaEZyYW1lICYmIGFjdGl2ZU1hdGNoRnJhbWUtPm1fYWN0aXZlTWF0Y2gKKyAgICAg
ICAgICAgICYmIGFjdGl2ZU1hdGNoRnJhbWUtPmZyYW1lKCktPnRyZWUoKS0+aXNEZXNjZW5kYW50
T2YobWFpbkZyYW1lSW1wbC0+ZnJhbWUoKSk7Cit9CisKK3ZvaWQgV2ViRnJhbWVJbXBsOjp1cGRh
dGVGaW5kTWF0Y2hSZWN0cygpCit7CisgICAgV2ViU2l6ZSBjdXJyZW50Q29udGVudHNTaXplID0g
Y29udGVudHNTaXplKCk7CisgICAgaWYgKG1fY29udGVudHNTaXplRm9yQ3VycmVudEZpbmRNYXRj
aFJlY3RzICE9IGN1cnJlbnRDb250ZW50c1NpemUpIHsKKyAgICAgICAgbV9jb250ZW50c1NpemVG
b3JDdXJyZW50RmluZE1hdGNoUmVjdHMgPSBjdXJyZW50Q29udGVudHNTaXplOworICAgICAgICBt
X2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQgPSBmYWxzZTsKKyAgICB9CisKKyAgICB1bnNpZ25lZCBk
ZWFkTWF0Y2hlcyA9IDA7CisgICAgZm9yIChWZWN0b3I8RmluZE1hdGNoPjo6aXRlcmF0b3IgaXQg
PSBtX2ZpbmRNYXRjaGVzQ2FjaGUuYmVnaW4oKTsgaXQgIT0gbV9maW5kTWF0Y2hlc0NhY2hlLmVu
ZCgpOyArK2l0KSB7CisgICAgICAgIGlmICghaXQtPm1fcmFuZ2UtPmJvdW5kYXJ5UG9pbnRzVmFs
aWQoKSB8fCAhaXQtPm1fcmFuZ2UtPnN0YXJ0Q29udGFpbmVyKCktPmluRG9jdW1lbnQoKSkKKyAg
ICAgICAgICAgIGl0LT5tX3JlY3QgPSBGbG9hdFJlY3QoMCwgMCwgMCwgMCk7CisgICAgICAgIGVs
c2UgaWYgKCFtX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQpCisgICAgICAgICAgICBpdC0+bV9yZWN0
ID0gRmluZEluUGFnZUNvb3JkaW5hdGVzOjpmcm9tUmFuZ2UoaXQtPm1fcmFuZ2UpOworCisgICAg
ICAgIGlmIChpdC0+bV9yZWN0LmlzRW1wdHkoKSkKKyAgICAgICAgICAgICsrZGVhZE1hdGNoZXM7
CisgICAgfQorCisgICAgLy8gUmVtb3ZlIGFueSBpbnZhbGlkIG1hdGNoZXMgZnJvbSB0aGUgY2Fj
aGUuCisgICAgaWYgKGRlYWRNYXRjaGVzKSB7CisgICAgICAgIFZlY3RvcjxGaW5kTWF0Y2g+IGZp
bHRlcmVkTWF0Y2hlczsKKyAgICAgICAgZmlsdGVyZWRNYXRjaGVzLnJlc2VydmVDYXBhY2l0eSht
X2ZpbmRNYXRjaGVzQ2FjaGUuc2l6ZSgpIC0gZGVhZE1hdGNoZXMpOworCisgICAgICAgIGZvciAo
VmVjdG9yPEZpbmRNYXRjaD46OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9maW5kTWF0Y2hlc0NhY2hl
LmJlZ2luKCk7IGl0ICE9IG1fZmluZE1hdGNoZXNDYWNoZS5lbmQoKTsgKytpdCkKKyAgICAgICAg
ICAgIGlmICghaXQtPm1fcmVjdC5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgZmlsdGVyZWRN
YXRjaGVzLmFwcGVuZCgqaXQpOworCisgICAgICAgIG1fZmluZE1hdGNoZXNDYWNoZS5zd2FwKGZp
bHRlcmVkTWF0Y2hlcyk7CisgICAgfQorCisgICAgLy8gSW52YWxpZGF0ZSB0aGUgcmVjdHMgaW4g
Y2hpbGQgZnJhbWVzLiBXaWxsIGJlIHVwZGF0ZWQgbGF0ZXIgZHVyaW5nIHRyYXZlcnNhbC4KKyAg
ICBpZiAoIW1fZmluZE1hdGNoUmVjdHNBcmVWYWxpZCkKKyAgICAgICAgZm9yIChXZWJGcmFtZSog
Y2hpbGQgPSBmaXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygp
KQorICAgICAgICAgICAgc3RhdGljX2Nhc3Q8V2ViRnJhbWVJbXBsKj4oY2hpbGQpLT5tX2ZpbmRN
YXRjaFJlY3RzQXJlVmFsaWQgPSBmYWxzZTsKKworICAgIG1fZmluZE1hdGNoUmVjdHNBcmVWYWxp
ZCA9IHRydWU7CiB9CiAKIFdlYkZsb2F0UmVjdCBXZWJGcmFtZUltcGw6OmFjdGl2ZUZpbmRNYXRj
aFJlY3QoKQogewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcyBhcyBwYXJ0IG9mIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzExMS4KLSAgICByZXR1cm4gV2Vi
RmxvYXRSZWN0KCk7CisgICAgLy8gVGhpcyBmdW5jdGlvbiBzaG91bGQgb25seSBiZSBjYWxsZWQg
b24gdGhlIG1haW5mcmFtZS4KKyAgICBBU1NFUlQoIXBhcmVudCgpKTsKKworICAgIGlmICghaXNB
Y3RpdmVNYXRjaEZyYW1lVmFsaWQoKSkKKyAgICAgICAgcmV0dXJuIFdlYkZsb2F0UmVjdCgpOwor
CisgICAgcmV0dXJuIFdlYkZsb2F0UmVjdChGaW5kSW5QYWdlQ29vcmRpbmF0ZXM6OmZyb21SYW5n
ZShtX2N1cnJlbnRBY3RpdmVNYXRjaEZyYW1lLT5tX2FjdGl2ZU1hdGNoKSk7CiB9CiAKIHZvaWQg
V2ViRnJhbWVJbXBsOjpmaW5kTWF0Y2hSZWN0cyhXZWJWZWN0b3I8V2ViRmxvYXRSZWN0PiYgb3V0
cHV0UmVjdHMpCiB7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzIGFzIHBhcnQgb2YgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMTExLgorICAgIC8vIFRoaXMg
ZnVuY3Rpb24gc2hvdWxkIG9ubHkgYmUgY2FsbGVkIG9uIHRoZSBtYWluZnJhbWUuCisgICAgQVNT
RVJUKCFwYXJlbnQoKSk7CisKKyAgICBWZWN0b3I8V2ViRmxvYXRSZWN0PiBtYXRjaFJlY3RzOwor
ICAgIGZvciAoV2ViRnJhbWVJbXBsKiBmcmFtZSA9IHRoaXM7IGZyYW1lOyBmcmFtZSA9IHN0YXRp
Y19jYXN0PFdlYkZyYW1lSW1wbCo+KGZyYW1lLT50cmF2ZXJzZU5leHQoZmFsc2UpKSkKKyAgICAg
ICAgZnJhbWUtPmFwcGVuZEZpbmRNYXRjaFJlY3RzKG1hdGNoUmVjdHMpOworCisgICAgb3V0cHV0
UmVjdHMgPSBtYXRjaFJlY3RzOworfQorCit2b2lkIFdlYkZyYW1lSW1wbDo6YXBwZW5kRmluZE1h
dGNoUmVjdHMoVmVjdG9yPFdlYkZsb2F0UmVjdD4mIGZyYW1lUmVjdHMpCit7CisgICAgdXBkYXRl
RmluZE1hdGNoUmVjdHMoKTsKKyAgICBmcmFtZVJlY3RzLnJlc2VydmVDYXBhY2l0eShmcmFtZVJl
Y3RzLnNpemUoKSArIG1fZmluZE1hdGNoZXNDYWNoZS5zaXplKCkpOworICAgIGZvciAoVmVjdG9y
PEZpbmRNYXRjaD46OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2lu
KCk7IGl0ICE9IG1fZmluZE1hdGNoZXNDYWNoZS5lbmQoKTsgKytpdCkgeworICAgICAgICBBU1NF
UlQoIWl0LT5tX3JlY3QuaXNFbXB0eSgpKTsKKyAgICAgICAgZnJhbWVSZWN0cy5hcHBlbmQoaXQt
Pm1fcmVjdCk7CisgICAgfQogfQogCiBpbnQgV2ViRnJhbWVJbXBsOjpzZWxlY3ROZWFyZXN0Rmlu
ZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9pbnQmIHBvaW50LCBXZWJSZWN0KiBzZWxlY3Rpb25SZWN0
KQogewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzExMS4KLSAgICByZXR1cm4gMDsKKyAgICAv
LyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBvbiB0aGUgbWFpbmZyYW1lLgor
ICAgIEFTU0VSVCghcGFyZW50KCkpOworCisgICAgV2ViRnJhbWVJbXBsKiBiZXN0RnJhbWUgPSAw
OworICAgIGludCBpbmRleEluQmVzdEZyYW1lID0gLTE7CisgICAgZmxvYXQgZGlzdGFuY2VJbkJl
c3RGcmFtZSA9IEZMVF9NQVg7CisKKyAgICBmb3IgKFdlYkZyYW1lSW1wbCogZnJhbWUgPSB0aGlz
OyBmcmFtZTsgZnJhbWUgPSBzdGF0aWNfY2FzdDxXZWJGcmFtZUltcGwqPihmcmFtZS0+dHJhdmVy
c2VOZXh0KGZhbHNlKSkpIHsKKyAgICAgICAgZmxvYXQgZGlzdGFuY2VJbkZyYW1lOworICAgICAg
ICBpbnQgaW5kZXhJbkZyYW1lID0gZnJhbWUtPm5lYXJlc3RGaW5kTWF0Y2gocG9pbnQsIGRpc3Rh
bmNlSW5GcmFtZSk7CisgICAgICAgIGlmIChkaXN0YW5jZUluRnJhbWUgPCBkaXN0YW5jZUluQmVz
dEZyYW1lKSB7CisgICAgICAgICAgICBiZXN0RnJhbWUgPSBmcmFtZTsKKyAgICAgICAgICAgIGlu
ZGV4SW5CZXN0RnJhbWUgPSBpbmRleEluRnJhbWU7CisgICAgICAgICAgICBkaXN0YW5jZUluQmVz
dEZyYW1lID0gZGlzdGFuY2VJbkZyYW1lOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKGlu
ZGV4SW5CZXN0RnJhbWUgIT0gLTEpCisgICAgICAgIHJldHVybiBiZXN0RnJhbWUtPnNlbGVjdEZp
bmRNYXRjaChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oaW5kZXhJbkJlc3RGcmFtZSksIHNlbGVjdGlv
blJlY3QpOworCisgICAgcmV0dXJuIC0xOworfQorCitpbnQgV2ViRnJhbWVJbXBsOjpuZWFyZXN0
RmluZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9pbnQmIHBvaW50LCBmbG9hdCYgZGlzdGFuY2VTcXVh
cmVkKQoreworICAgIHVwZGF0ZUZpbmRNYXRjaFJlY3RzKCk7CisKKyAgICBpbnQgbmVhcmVzdCA9
IC0xOworICAgIGRpc3RhbmNlU3F1YXJlZCA9IEZMVF9NQVg7CisgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBtX2ZpbmRNYXRjaGVzQ2FjaGUuc2l6ZSgpOyArK2kpIHsKKyAgICAgICAgQVNTRVJU
KCFtX2ZpbmRNYXRjaGVzQ2FjaGVbaV0ubV9yZWN0LmlzRW1wdHkoKSk7CisgICAgICAgIEZsb2F0
U2l6ZSBvZmZzZXQgPSBwb2ludCAtIG1fZmluZE1hdGNoZXNDYWNoZVtpXS5tX3JlY3QuY2VudGVy
KCk7CisgICAgICAgIGZsb2F0IHdpZHRoID0gb2Zmc2V0LndpZHRoKCk7CisgICAgICAgIGZsb2F0
IGhlaWdodCA9IG9mZnNldC5oZWlnaHQoKTsKKyAgICAgICAgZmxvYXQgY3VycmVudERpc3RhbmNl
U3F1YXJlZCA9IHdpZHRoICogd2lkdGggKyBoZWlnaHQgKiBoZWlnaHQ7CisgICAgICAgIGlmIChj
dXJyZW50RGlzdGFuY2VTcXVhcmVkIDwgZGlzdGFuY2VTcXVhcmVkKSB7CisgICAgICAgICAgICBu
ZWFyZXN0ID0gaTsKKyAgICAgICAgICAgIGRpc3RhbmNlU3F1YXJlZCA9IGN1cnJlbnREaXN0YW5j
ZVNxdWFyZWQ7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIG5lYXJlc3Q7Cit9CisKK2lu
dCBXZWJGcmFtZUltcGw6OnNlbGVjdEZpbmRNYXRjaCh1bnNpZ25lZCBpbmRleCwgV2ViUmVjdCog
c2VsZWN0aW9uUmVjdCkKK3sKKyAgICBBU1NFUlQoaW5kZXggPCBtX2ZpbmRNYXRjaGVzQ2FjaGUu
c2l6ZSgpKTsKKworICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSBtX2ZpbmRNYXRjaGVzQ2FjaGVb
aW5kZXhdLm1fcmFuZ2U7CisgICAgaWYgKCFyYW5nZS0+Ym91bmRhcnlQb2ludHNWYWxpZCgpIHx8
ICFyYW5nZS0+c3RhcnRDb250YWluZXIoKS0+aW5Eb2N1bWVudCgpKQorICAgICAgICByZXR1cm4g
LTE7CisKKyAgICAvLyBDaGVjayBpZiB0aGUgbWF0Y2ggaXMgYWxyZWFkeSBzZWxlY3RlZC4KKyAg
ICBXZWJGcmFtZUltcGwqIGFjdGl2ZU1hdGNoRnJhbWUgPSB2aWV3SW1wbCgpLT5tYWluRnJhbWVJ
bXBsKCktPm1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWU7CisgICAgaWYgKHRoaXMgIT0gYWN0aXZl
TWF0Y2hGcmFtZSB8fCAhbV9hY3RpdmVNYXRjaCB8fCAhYXJlUmFuZ2VzRXF1YWwobV9hY3RpdmVN
YXRjaC5nZXQoKSwgcmFuZ2UuZ2V0KCkpKSB7CisgICAgICAgIGlmIChpc0FjdGl2ZU1hdGNoRnJh
bWVWYWxpZCgpKQorICAgICAgICAgICAgYWN0aXZlTWF0Y2hGcmFtZS0+c2V0TWFya2VyQWN0aXZl
KGFjdGl2ZU1hdGNoRnJhbWUtPm1fYWN0aXZlTWF0Y2guZ2V0KCksIGZhbHNlKTsKKworICAgICAg
ICBtX2FjdGl2ZU1hdGNoSW5kZXhJbkN1cnJlbnRGcmFtZSA9IG1fZmluZE1hdGNoZXNDYWNoZVtp
bmRleF0ubV9vcmRpbmFsIC0gMTsKKworICAgICAgICAvLyBTZXQgdGhpcyBmcmFtZSBhcyB0aGUg
YWN0aXZlIGZyYW1lICh0aGUgb25lIHdpdGggdGhlIGFjdGl2ZSBoaWdobGlnaHQpLgorICAgICAg
ICB2aWV3SW1wbCgpLT5tYWluRnJhbWVJbXBsKCktPm1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWUg
PSB0aGlzOworICAgICAgICB2aWV3SW1wbCgpLT5zZXRGb2N1c2VkRnJhbWUodGhpcyk7CisKKyAg
ICAgICAgbV9hY3RpdmVNYXRjaCA9IHJhbmdlLnJlbGVhc2UoKTsKKyAgICAgICAgc2V0TWFya2Vy
QWN0aXZlKG1fYWN0aXZlTWF0Y2guZ2V0KCksIHRydWUpOworCisgICAgICAgIC8vIENsZWFyIGFu
eSB1c2VyIHNlbGVjdGlvbiwgdG8gbWFrZSBzdXJlIEZpbmQgTmV4dCBjb250aW51ZXMgb24gZnJv
bSB0aGUgbWF0Y2ggd2UganVzdCBhY3RpdmF0ZWQuCisgICAgICAgIGV4ZWN1dGVDb21tYW5kKFdl
YlN0cmluZzo6ZnJvbVVURjgoIlVuc2VsZWN0IikpOworCisgICAgICAgIC8vIE1ha2Ugc3VyZSBu
byBub2RlIGlzIGZvY3VzZWQuIFNlZSBodHRwOi8vY3JidWcuY29tLzM4NzAwLgorICAgICAgICBp
ZiAoZnJhbWUoKS0+ZG9jdW1lbnQoKSkKKyAgICAgICAgICAgIGZyYW1lKCktPmRvY3VtZW50KCkt
PnNldEZvY3VzZWROb2RlKDApOworICAgIH0KKworICAgIEludFJlY3QgYWN0aXZlTWF0Y2hSZWN0
OworICAgIEludFJlY3QgYWN0aXZlTWF0Y2hCb3VuZGluZ0JveCA9IGVuY2xvc2luZ0ludFJlY3Qo
bV9hY3RpdmVNYXRjaC0+ZW5jbG9zaW5nQm91bmRpbmdCb3goKSk7CisKKyAgICBpZiAoIWFjdGl2
ZU1hdGNoQm91bmRpbmdCb3guaXNFbXB0eSgpKSB7CisgICAgICAgIGlmIChtX2FjdGl2ZU1hdGNo
LT5maXJzdE5vZGUoKSAmJiBtX2FjdGl2ZU1hdGNoLT5maXJzdE5vZGUoKS0+cmVuZGVyZXIoKSkK
KyAgICAgICAgICAgIG1fYWN0aXZlTWF0Y2gtPmZpcnN0Tm9kZSgpLT5yZW5kZXJlcigpLT5zY3Jv
bGxSZWN0VG9WaXNpYmxlKGFjdGl2ZU1hdGNoQm91bmRpbmdCb3gsCisgICAgICAgICAgICAgICAg
ICAgIFNjcm9sbEFsaWdubWVudDo6YWxpZ25DZW50ZXJJZk5lZWRlZCwgU2Nyb2xsQWxpZ25tZW50
OjphbGlnbkNlbnRlcklmTmVlZGVkKTsKKworICAgICAgICAvLyBab29tIHRvIHRoZSBhY3RpdmUg
bWF0Y2guCisgICAgICAgIGFjdGl2ZU1hdGNoUmVjdCA9IGZyYW1lVmlldygpLT5jb250ZW50c1Rv
V2luZG93KGFjdGl2ZU1hdGNoQm91bmRpbmdCb3gpOworICAgICAgICB2aWV3SW1wbCgpLT56b29t
VG9GaW5kSW5QYWdlUmVjdChhY3RpdmVNYXRjaFJlY3QpOworICAgIH0KKworICAgIGlmIChzZWxl
Y3Rpb25SZWN0KQorICAgICAgICAqc2VsZWN0aW9uUmVjdCA9IGFjdGl2ZU1hdGNoUmVjdDsKKwor
ICAgIHJldHVybiBvcmRpbmFsT2ZGaXJzdE1hdGNoRm9yRnJhbWUodGhpcykgKyBtX2FjdGl2ZU1h
dGNoSW5kZXhJbkN1cnJlbnRGcmFtZSArIDE7CiB9CiAKIHZvaWQgV2ViRnJhbWVJbXBsOjpkZWxp
dmVySW50ZW50KGNvbnN0IFdlYkludGVudCYgaW50ZW50LCBXZWJNZXNzYWdlUG9ydENoYW5uZWxB
cnJheSogcG9ydHMsIFdlYkRlbGl2ZXJlZEludGVudENsaWVudCogaW50ZW50Q2xpZW50KQpAQCAt
MjA4MCw2ICsyMjczLDkgQEAgV2ViRnJhbWVJbXBsOjpXZWJGcmFtZUltcGwoV2ViRnJhbWVDbGll
bnQqIGNsaWVudCkKICAgICAsIG1fZnJhbWVzU2NvcGluZ0NvdW50KC0xKQogICAgICwgbV9zY29w
aW5nQ29tcGxldGUoZmFsc2UpCiAgICAgLCBtX25leHRJbnZhbGlkYXRlQWZ0ZXIoMCkKKyAgICAs
IG1fZmluZE1hdGNoTWFya2Vyc1ZlcnNpb24oMCkKKyAgICAsIG1fZmluZE1hdGNoUmVjdHNBcmVW
YWxpZChmYWxzZSkKKyAgICAsIG1fY29udGVudHNTaXplRm9yQ3VycmVudEZpbmRNYXRjaFJlY3Rz
KDAsIDApCiAgICAgLCBtX2FuaW1hdGlvbkNvbnRyb2xsZXIodGhpcykKICAgICAsIG1faWRlbnRp
ZmllcihnZW5lcmF0ZUZyYW1lSWRlbnRpZmllcigpKQogICAgICwgbV9pblNhbWVEb2N1bWVudEhp
c3RvcnlMb2FkKGZhbHNlKQpAQCAtMjE1NSw2ICsyMzUxLDE1IEBAIFBhc3NSZWZQdHI8RnJhbWU+
IFdlYkZyYW1lSW1wbDo6Y3JlYXRlQ2hpbGRGcmFtZSgKICAgICByZXR1cm4gY2hpbGRGcmFtZS5y
ZWxlYXNlKCk7CiB9CiAKK3ZvaWQgV2ViRnJhbWVJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUo
Y29uc3QgSW50U2l6ZSYgc2l6ZSkKK3sKKyAgICAvLyBUaGlzIGlzIG9ubHkgcG9zc2libGUgb24g
dGhlIG1haW4gZnJhbWUuCisgICAgaWYgKG1fdG90YWxNYXRjaENvdW50ID4gMCkgeworICAgICAg
ICBBU1NFUlQoIXBhcmVudCgpKTsKKyAgICAgICAgKyttX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9u
OworICAgIH0KK30KKwogdm9pZCBXZWJGcmFtZUltcGw6OmNyZWF0ZUZyYW1lVmlldygpCiB7CiAg
ICAgQVNTRVJUKG1fZnJhbWUpOyAvLyBJZiBtX2ZyYW1lIGRvZXNuJ3QgZXhpc3QsIHdlIHByb2Jh
Ymx5IGRpZG4ndCBpbml0IHByb3Blcmx5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViRnJhbWVJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJG
cmFtZUltcGwuaAppbmRleCA1ZmNhOGRkNjgzMzExOWU1MDJjZjBmMTE0OTg1OWM5MGJhODQ0M2Yx
Li4wOWJmMTI4NTcyYWIwOGQ3NzQ2ODQyMzRkNzQxMWU4ZDQ1YjMzYzFhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaApAQCAtMzcsNiArMzcsNyBAQAogI2luY2x1
ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnRJbXBsLmgiCiAjaW5jbHVk
ZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlICJwbGF0Zm9ybS9XZWJTaXplLmgiCiAjaW5j
bHVkZSA8d3RmL0NvbXBpbGVyLmg+CiAjaW5jbHVkZSA8d3RmL093blB0ci5oPgogI2luY2x1ZGUg
PHd0Zi9SZWZDb3VudGVkLmg+CkBAIC0yNDYsNiArMjQ3LDkgQEAgcHVibGljOgogICAgIFBhc3NS
ZWZQdHI8V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUNoaWxkRnJhbWUoCiAgICAgICAgIGNvbnN0IFdl
YkNvcmU6OkZyYW1lTG9hZFJlcXVlc3QmLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25lckVsZW1lbnQq
KTsKIAorICAgIC8vIENhbGxlZCB3aGVuIHRoZSBzaXplIG9mIHRoZSBjb250YWluZWQgZG9jdW1l
bnQgY2hhbmdlcy4KKyAgICB2b2lkIGRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3Jl
OjpJbnRTaXplJik7CisKICAgICB2b2lkIGNyZWF0ZUZyYW1lVmlldygpOwogCiAgICAgc3RhdGlj
IFdlYkZyYW1lSW1wbCogZnJvbUZyYW1lKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSk7CkBAIC0yNzAs
NiArMjc0LDEwIEBAIHB1YmxpYzoKICAgICAvLyB2YWx1ZSBjYW4gYmUgMCBpZiBubyBmcmFtZSBo
YXMgYW4gYWN0aXZlIG1hdGNoLgogICAgIGNvbnN0IFdlYkZyYW1lSW1wbCogYWN0aXZlTWF0Y2hG
cmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWU7IH0KIAorICAg
IC8vIFJldHVybnMgdGhlIGFjdGl2ZSBtYXRjaCBpbiB0aGUgY3VycmVudCBmcmFtZS4gQ291bGQg
YmUgYSBudWxsIHJhbmdlIGlmCisgICAgLy8gdGhlIGxvY2FsIGZyYW1lIGhhcyBubyBhY3RpdmUg
bWF0Y2guCisgICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4gYWN0aXZlTWF0Y2goKSBjb25z
dCB7IHJldHVybiBtX2FjdGl2ZU1hdGNoOyB9CisKICAgICAvLyBXaGVuIGEgRmluZCBvcGVyYXRp
b24gZW5kcywgd2Ugd2FudCB0byBzZXQgdGhlIHNlbGVjdGlvbiB0byB3aGF0IHdhcyBhY3RpdmUK
ICAgICAvLyBhbmQgc2V0IGZvY3VzIHRvIHRoZSBmaXJzdCBmb2N1c2FibGUgbm9kZSB3ZSBmaW5k
IChzdGFydGluZyB3aXRoIHRoZSBmaXJzdAogICAgIC8vIG5vZGUgaW4gdGhlIG1hdGNoZWQgcmFu
Z2UgYW5kIGdvaW5nIHVwIHRoZSBpbmhlcml0YW5jZSBjaGFpbikuIElmIHdlIGZpbmQKQEAgLTI5
NSw2ICszMDMsMTkgQEAgcHJpdmF0ZToKICAgICBmcmllbmQgY2xhc3MgRGVmZXJyZWRTY29wZVN0
cmluZ01hdGNoZXM7CiAgICAgZnJpZW5kIGNsYXNzIEZyYW1lTG9hZGVyQ2xpZW50SW1wbDsKIAor
ICAgIHN0cnVjdCBGaW5kTWF0Y2ggeworICAgICAgICBSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IG1f
cmFuZ2U7CisKKyAgICAgICAgLy8gMS1iYXNlZCBpbmRleCB3aXRoaW4gdGhpcyBmcmFtZS4KKyAg
ICAgICAgaW50IG1fb3JkaW5hbDsKKworICAgICAgICAvLyBJbiBmaW5kLWluLXBhZ2UgY29vcmRp
bmF0ZXMuCisgICAgICAgIC8vIExhemlseSBjYWxjdWxhdGVkIGJ5IHVwZGF0ZUZpbmRNYXRjaFJl
Y3RzLgorICAgICAgICBXZWJDb3JlOjpGbG9hdFJlY3QgbV9yZWN0OworCisgICAgICAgIEZpbmRN
YXRjaChQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiwgaW50IG9yZGluYWwpOworICAgIH07CisK
ICAgICAvLyBBIGJpdCBtYXNrIHNwZWNpZnlpbmcgYXJlYSBvZiB0aGUgZnJhbWUgdG8gaW52YWxp
ZGF0ZS4KICAgICBlbnVtIEFyZWFUb0ludmFsaWRhdGUgewogICAgICAgSW52YWxpZGF0ZU5vdGhp
bmcsCkBAIC0zMTMsNiArMzM0LDMyIEBAIHByaXZhdGU6CiAgICAgdm9pZCByZXBvcnRGaW5kSW5Q
YWdlU2VsZWN0aW9uKAogICAgICAgICBjb25zdCBXZWJSZWN0JiBzZWxlY3Rpb25SZWN0LCBpbnQg
YWN0aXZlTWF0Y2hPcmRpbmFsLCBpbnQgaWRlbnRpZmllcik7CiAKKyAgICAvLyBDbGVhciB0aGUg
ZmluZC1pbi1wYWdlIG1hdGNoZXMgY2FjaGUgZm9yY2luZyByZWN0cyB0byBiZSBmdWxseQorICAg
IC8vIGNhbGN1bGF0ZWQgYWdhaW4gbmV4dCB0aW1lIHVwZGF0ZUZpbmRNYXRjaFJlY3RzIGlzIGNh
bGxlZC4KKyAgICB2b2lkIGNsZWFyRmluZE1hdGNoZXNDYWNoZSgpOworCisgICAgLy8gQ2hlY2sg
aWYgdGhlIGFjdGl2ZU1hdGNoRnJhbWUgc3RpbGwgZXhpc3RzIGluIHRoZSBmcmFtZSB0cmVlLgor
ICAgIGJvb2wgaXNBY3RpdmVNYXRjaEZyYW1lVmFsaWQoKSBjb25zdDsKKworICAgIC8vIFJldHVy
biB0aGUgaW5kZXggaW4gdGhlIGZpbmQtaW4tcGFnZSBjYWNoZSBvZiB0aGUgbWF0Y2ggY2xvc2Vz
dCB0byB0aGUKKyAgICAvLyBwcm92aWRlZCBwb2ludCBpbiBmaW5kLWluLXBhZ2UgY29vcmRpbmF0
ZXMsIG9yIC0xIGluIGNhc2Ugb2YgZXJyb3IuCisgICAgLy8gVGhlIHNxdWFyZWQgZGlzdGFuY2Ug
dG8gdGhlIGNsb3Nlc3QgbWF0Y2ggaXMgcmV0dXJuZWQgaW4gdGhlIGRpc3RhbmNlU3F1YXJlZCBw
YXJhbWV0ZXIuCisgICAgaW50IG5lYXJlc3RGaW5kTWF0Y2goY29uc3QgV2ViRmxvYXRQb2ludCYs
IGZsb2F0JiBkaXN0YW5jZVNxdWFyZWQpOworCisgICAgLy8gU2VsZWN0IGEgZmluZC1pbi1wYWdl
IG1hdGNoIG1hcmtlciBpbiB0aGUgY3VycmVudCBmcmFtZSB1c2luZyBhIGNhY2hlCisgICAgLy8g
bWF0Y2ggaW5kZXggcmV0dXJuZWQgYnkgbmVhcmVzdEZpbmRNYXRjaC4gUmV0dXJucyB0aGUgb3Jk
aW5hbCBvZiB0aGUgbmV3CisgICAgLy8gc2VsZWN0ZWQgbWF0Y2ggb3IgLTEgaW4gY2FzZSBvZiBl
cnJvci4gQWxzbyBwcm92aWRlcyB0aGUgYm91bmRpbmcgYm94IG9mCisgICAgLy8gdGhlIG1hcmtl
ciBpbiB3aW5kb3cgY29vcmRpbmF0ZXMgaWYgc2VsZWN0aW9uUmVjdCBpcyBub3QgbnVsbC4KKyAg
ICBpbnQgc2VsZWN0RmluZE1hdGNoKHVuc2lnbmVkIGluZGV4LCBXZWJSZWN0KiBzZWxlY3Rpb25S
ZWN0KTsKKworICAgIC8vIENvbXB1dGUgYW5kIGNhY2hlIHRoZSByZWN0cyBmb3IgRmluZE1hdGNo
ZXMgaWYgcmVxdWlyZWQuCisgICAgLy8gUmVjdHMgYXJlIGF1dG9tYXRpY2FsbHkgaW52YWxpZGF0
ZWQgaW4gY2FzZSBvZiBjb250ZW50IHNpemUgY2hhbmdlcywKKyAgICAvLyBwcm9wYWdhdGluZyB0
aGUgaW52YWxpZGF0aW9uIHRvIGNoaWxkIGZyYW1lcy4KKyAgICB2b2lkIHVwZGF0ZUZpbmRNYXRj
aFJlY3RzKCk7CisKKyAgICAvLyBBcHBlbmQgdGhlIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyBv
ZiB0aGUgY3VycmVudCBmcmFtZSB0byB0aGUgcHJvdmlkZWQgdmVjdG9yLgorICAgIHZvaWQgYXBw
ZW5kRmluZE1hdGNoUmVjdHMoVmVjdG9yPFdlYkZsb2F0UmVjdD4mIGZyYW1lUmVjdHMpOworCiAg
ICAgLy8gSW52YWxpZGF0ZXMgYSBjZXJ0YWluIGFyZWEgd2l0aGluIHRoZSBmcmFtZS4KICAgICB2
b2lkIGludmFsaWRhdGVBcmVhKEFyZWFUb0ludmFsaWRhdGUpOwogCkBAIC00MTIsNiArNDU5LDIx
IEBAIHByaXZhdGU6CiAgICAgLy8gQSBsaXN0IG9mIGFsbCBvZiB0aGUgcGVuZGluZyBjYWxscyB0
byBzY29wZVN0cmluZ01hdGNoZXMuCiAgICAgVmVjdG9yPERlZmVycmVkU2NvcGVTdHJpbmdNYXRj
aGVzKj4gbV9kZWZlcnJlZFNjb3BpbmdXb3JrOwogCisgICAgLy8gVmVyc2lvbiBudW1iZXIgaW5j
cmVtZW50ZWQgb24gdGhlIG1haW4gZnJhbWUgb25seSB3aGVuZXZlciB0aGUgZG9jdW1lbnQKKyAg
ICAvLyBmaW5kLWluLXBhZ2UgbWF0Y2ggbWFya2VycyBjaGFuZ2UuIEl0IHNob3VsZCBiZSAwIGZv
ciBhbGwgb3RoZXIgZnJhbWVzLgorICAgIGludCBtX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOwor
CisgICAgLy8gTG9jYWwgY2FjaGUgb2YgdGhlIGZpbmQgbWF0Y2ggbWFya2VycyBjdXJyZW50bHkg
ZGlzcGxheWVkIGZvciB0aGlzIGZyYW1lLgorICAgIFZlY3RvcjxGaW5kTWF0Y2g+IG1fZmluZE1h
dGNoZXNDYWNoZTsKKworICAgIC8vIERldGVybWluZXMgaWYgdGhlIHJlY3RzIGluIHRoZSBmaW5k
LWluLXBhZ2UgbWF0Y2hlcyBjYWNoZSBvZiB0aGlzIGZyYW1lCisgICAgLy8gYXJlIGludmFsaWQg
YW5kIHNob3VsZCBiZSByZWNvbXB1dGVkLgorICAgIGJvb2wgbV9maW5kTWF0Y2hSZWN0c0FyZVZh
bGlkOworCisgICAgLy8gQ29udGVudHMgc2l6ZSB3aGVuIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0
cyB3ZXJlIGxhc3QgY29tcHV0ZWQgZm9yIHRoaXMKKyAgICAvLyBmcmFtZSdzIGNhY2hlLgorICAg
IFdlYlNpemUgbV9jb250ZW50c1NpemVGb3JDdXJyZW50RmluZE1hdGNoUmVjdHM7CisKICAgICAv
LyBWYWxpZCBiZXR3ZWVuIGNhbGxzIHRvIEJlZ2luUHJpbnQoKSBhbmQgRW5kUHJpbnQoKS4gQ29u
dGFpbnRzIHRoZSBwcmludAogICAgIC8vIGluZm9ybWF0aW9uLiBJcyB1c2VkIGJ5IFByaW50UGFn
ZSgpLgogICAgIE93blB0cjxDaHJvbWVQcmludENvbnRleHQ+IG1fcHJpbnRDb250ZXh0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwCmluZGV4IGJiZjI2
MzY1NzNmMGZjYjk1NWZiOTM1ZjY1Njk4ZjFjZmEwMTkyODcuLmRkZjE4MzE2ZDhlN2FhMzNhYzc4
OTIyMzMzZDMwZjgzNmQwZjIyNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
dGVzdHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3Rz
L1dlYkZyYW1lVGVzdC5jcHAKQEAgLTMyLDkgKzMyLDExIEBACiAKICNpbmNsdWRlICJXZWJGcmFt
ZS5oIgogCisjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNs
dWRlICJGcmFtZVRlc3RIZWxwZXJzLmgiCiAjaW5jbHVkZSAiRnJhbWVWaWV3LmgiCisjaW5jbHVk
ZSAiUmFuZ2UuaCIKICNpbmNsdWRlICJSZXNvdXJjZUVycm9yLmgiCiAjaW5jbHVkZSAiVVJMVGVz
dEhlbHBlcnMuaCIKICNpbmNsdWRlICJXZWJEYXRhU291cmNlLmgiCkBAIC01MSwxMSArNTMsMTQg
QEAKICNpbmNsdWRlICJXZWJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIldlYlZpZXdDbGllbnQuaCIK
ICNpbmNsdWRlICJXZWJWaWV3SW1wbC5oIgorI2luY2x1ZGUgInBsYXRmb3JtL1dlYkZsb2F0UmVj
dC5oIgogI2luY2x1ZGUgInY4LmgiCiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KICNpbmNsdWRl
IDx3ZWJraXQvc3VwcG9ydC93ZWJraXRfc3VwcG9ydC5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2Vi
S2l0OwordXNpbmcgV2ViQ29yZTo6RmxvYXRSZWN0OwordXNpbmcgV2ViQ29yZTo6UmFuZ2U7CiB1
c2luZyBXZWJLaXQ6OlVSTFRlc3RIZWxwZXJzOjp0b0tVUkw7CiAKIG5hbWVzcGFjZSB7CkBAIC04
MzgsNCArODQzLDExNCBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBTZWxlY3RSYW5nZSkKICAgICBF
WFBFQ1RfRVEoInNvbWUgdGVzdCB0ZXh0IGZvciB0ZXN0aW5nIiwgc3RkOjpzdHJpbmcoc3ViZnJh
bWUtPnNlbGVjdGlvbkFzVGV4dCgpLnV0ZjgoKS5kYXRhKCkpKTsKIH0KIAorY2xhc3MgRmluZFVw
ZGF0ZVdlYkZyYW1lQ2xpZW50IDogcHVibGljIFdlYkZyYW1lQ2xpZW50IHsKK3B1YmxpYzoKKyAg
ICBGaW5kVXBkYXRlV2ViRnJhbWVDbGllbnQoKQorICAgICAgICA6IG1fZmluZFJlc3VsdHNBcmVS
ZWFkeShmYWxzZSkKKyAgICB7IH0KKworICAgIHZpcnR1YWwgdm9pZCByZXBvcnRGaW5kSW5QYWdl
TWF0Y2hDb3VudChpbnQgcmVxdWVzdElkLCBpbnQgY291bnQsIGJvb2wgZmluYWxVcGRhdGUpIE9W
RVJSSURFCisgICAgeworICAgICAgICBpZiAoZmluYWxVcGRhdGUpCisgICAgICAgICAgICBtX2Zp
bmRSZXN1bHRzQXJlUmVhZHkgPSB0cnVlOworICAgIH0KKworICAgIGJvb2wgZmluZFJlc3VsdHNB
cmVSZWFkeSgpIGNvbnN0IHsgcmV0dXJuIG1fZmluZFJlc3VsdHNBcmVSZWFkeTsgfQorCitwcml2
YXRlOgorICAgIGJvb2wgbV9maW5kUmVzdWx0c0FyZVJlYWR5OworfTsKKworVEVTVF9GKFdlYkZy
YW1lVGVzdCwgRmluZEluUGFnZU1hdGNoUmVjdHMpCit7CisgICAgcmVnaXN0ZXJNb2NrZWRIdHRw
VVJMTG9hZCgiZmluZF9pbl9wYWdlLmh0bWwiKTsKKyAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxM
b2FkKCJmaW5kX2luX3BhZ2VfZnJhbWUuaHRtbCIpOworCisgICAgRmluZFVwZGF0ZVdlYkZyYW1l
Q2xpZW50IGNsaWVudDsKKyAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gRnJhbWVUZXN0SGVscGVyczo6
Y3JlYXRlV2ViVmlld0FuZExvYWQobV9iYXNlVVJMICsgImZpbmRfaW5fcGFnZS5odG1sIiwgdHJ1
ZSwgJmNsaWVudCk7CisgICAgd2ViVmlldy0+cmVzaXplKFdlYlNpemUoNDAwLCA1MDApKTsKKyAg
ICB3ZWJWaWV3LT5sYXlvdXQoKTsKKyAgICB3ZWJraXRfc3VwcG9ydDo6UnVuQWxsUGVuZGluZ01l
c3NhZ2VzKCk7CisKKyAgICBzdGF0aWMgY29uc3QgY2hhcioga0ZpbmRTdHJpbmcgPSAicmVzdWx0
IjsKKyAgICBzdGF0aWMgY29uc3QgaW50IGtGaW5kSWRlbnRpZmllciA9IDEyMzQ1OworICAgIHN0
YXRpYyBjb25zdCBpbnQga051bVJlc3VsdHMgPSAxMDsKKworICAgIFdlYkZpbmRPcHRpb25zIG9w
dGlvbnM7CisgICAgV2ViU3RyaW5nIHNlYXJjaFRleHQgPSBXZWJTdHJpbmc6OmZyb21VVEY4KGtG
aW5kU3RyaW5nKTsKKyAgICBXZWJGcmFtZUltcGwqIG1haW5GcmFtZSA9IHN0YXRpY19jYXN0PFdl
YkZyYW1lSW1wbCo+KHdlYlZpZXctPm1haW5GcmFtZSgpKTsKKyAgICBFWFBFQ1RfVFJVRShtYWlu
RnJhbWUtPmZpbmQoa0ZpbmRJZGVudGlmaWVyLCBzZWFyY2hUZXh0LCBvcHRpb25zLCBmYWxzZSwg
MCkpOworCisgICAgZm9yIChXZWJGcmFtZSogZnJhbWUgPSBtYWluRnJhbWU7IGZyYW1lOyBmcmFt
ZSA9IGZyYW1lLT50cmF2ZXJzZU5leHQoZmFsc2UpKQorICAgICAgICBmcmFtZS0+c2NvcGVTdHJp
bmdNYXRjaGVzKGtGaW5kSWRlbnRpZmllciwgc2VhcmNoVGV4dCwgb3B0aW9ucywgdHJ1ZSk7CisK
KyAgICB3ZWJraXRfc3VwcG9ydDo6UnVuQWxsUGVuZGluZ01lc3NhZ2VzKCk7CisgICAgRVhQRUNU
X1RSVUUoY2xpZW50LmZpbmRSZXN1bHRzQXJlUmVhZHkoKSk7CisKKyAgICBXZWJWZWN0b3I8V2Vi
RmxvYXRSZWN0PiB3ZWJNYXRjaFJlY3RzOworICAgIG1haW5GcmFtZS0+ZmluZE1hdGNoUmVjdHMo
d2ViTWF0Y2hSZWN0cyk7CisgICAgRVhQRUNUX0VRKHdlYk1hdGNoUmVjdHMuc2l6ZSgpLCBrTnVt
UmVzdWx0cyk7CisgICAgaW50IHJlY3RzVmVyc2lvbiA9IG1haW5GcmFtZS0+ZmluZE1hdGNoTWFy
a2Vyc1ZlcnNpb24oKTsKKworICAgIGZvciAoaW50IHJlc3VsdEluZGV4ID0gMDsgcmVzdWx0SW5k
ZXggPCBrTnVtUmVzdWx0czsgKytyZXN1bHRJbmRleCkgeworICAgICAgICBGbG9hdFJlY3QgcmVz
dWx0UmVjdCA9IHN0YXRpY19jYXN0PEZsb2F0UmVjdD4od2ViTWF0Y2hSZWN0c1tyZXN1bHRJbmRl
eF0pOworCisgICAgICAgIC8vIFNlbGVjdCB0aGUgbWF0Y2ggYnkgdGhlIGNlbnRlciBvZiBpdHMg
cmVjdC4KKyAgICAgICAgRVhQRUNUX0VRKG1haW5GcmFtZS0+c2VsZWN0TmVhcmVzdEZpbmRNYXRj
aChyZXN1bHRSZWN0LmNlbnRlcigpLCAwKSwgcmVzdWx0SW5kZXggKyAxKTsKKworICAgICAgICAv
LyBDaGVjayB0aGF0IHRoZSBmaW5kIHJlc3VsdCBvcmRlcmluZyBtYXRjaGVzIHdpdGggb3VyIGV4
cGVjdGF0aW9ucy4KKyAgICAgICAgUmVmUHRyPFJhbmdlPiByZXN1bHQgPSBtYWluRnJhbWUtPmFj
dGl2ZU1hdGNoRnJhbWUoKS0+YWN0aXZlTWF0Y2goKTsKKyAgICAgICAgcmVzdWx0LT5zZXRFbmQo
cmVzdWx0LT5lbmRDb250YWluZXIoKSwgcmVzdWx0LT5lbmRPZmZzZXQoKSArIDIpOworICAgICAg
ICBFWFBFQ1RfRVEocmVzdWx0LT50ZXh0KCksIFN0cmluZzo6Zm9ybWF0KCIlcyAlZCIsIGtGaW5k
U3RyaW5nLCByZXN1bHRJbmRleCkpOworCisgICAgICAgIC8vIFZlcmlmeSB0aGF0IHRoZSBleHBl
Y3RlZCBtYXRjaCByZWN0IGFsc28gbWF0Y2hlcyB0aGUgY3VycmVudGx5IGFjdGl2ZSBtYXRjaC4K
KyAgICAgICAgLy8gQ29tcGFyZSB0aGUgZW5jbG9zaW5nIHJlY3RzIHRvIHByZXZlbnQgcHJlY2lz
aW9uIGlzc3VlcyBjYXVzZWQgYnkgQ1NTIHRyYW5zZm9ybXMuCisgICAgICAgIEZsb2F0UmVjdCBh
Y3RpdmVNYXRjaCA9IG1haW5GcmFtZS0+YWN0aXZlRmluZE1hdGNoUmVjdCgpOworICAgICAgICBF
WFBFQ1RfRVEoZW5jbG9zaW5nSW50UmVjdChhY3RpdmVNYXRjaCksIGVuY2xvc2luZ0ludFJlY3Qo
cmVzdWx0UmVjdCkpOworCisgICAgICAgIC8vIFRoZSByZWN0cyB2ZXJzaW9uIHNob3VsZCBub3Qg
aGF2ZSBjaGFuZ2VkLgorICAgICAgICBFWFBFQ1RfRVEobWFpbkZyYW1lLT5maW5kTWF0Y2hNYXJr
ZXJzVmVyc2lvbigpLCByZWN0c1ZlcnNpb24pOworICAgIH0KKworICAgIC8vIEFsbCByZXN1bHRz
IGFmdGVyIHRoZSBmaXJzdCB0d28gb25lcyBzaG91bGQgYmUgYmVsb3cgYmV0d2VlbiB0aGVtIGlu
IHNjcm9sbC1pbmRlcGVuZGVudCBub3JtYWxpemVkIG1haW4gZnJhbWUgY29vcmRpbmF0ZXMuCisg
ICAgLy8gVGhpcyBpcyBiZWNhdXNlIHJlc3VsdHMgMiB0byA5IGFyZSBpbnNpZGUgYW4gaWZyYW1l
IGxvY2F0ZWQgYmV0d2VlbiByZXN1bHRzIDAgYW5kIDEuIFRoaXMgYXBwbGllcyB0byB0aGUgZml4
ZWQgZGl2IHRvby4KKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzBdLnkgPCB3ZWJNYXRj
aFJlY3RzWzFdLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMF0ueSA8IHdlYk1h
dGNoUmVjdHNbMl0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1swXS55IDwgd2Vi
TWF0Y2hSZWN0c1szXS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzBdLnkgPCB3
ZWJNYXRjaFJlY3RzWzRdLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMF0ueSA8
IHdlYk1hdGNoUmVjdHNbNV0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1swXS55
IDwgd2ViTWF0Y2hSZWN0c1s2XS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzBd
LnkgPCB3ZWJNYXRjaFJlY3RzWzddLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNb
MF0ueSA8IHdlYk1hdGNoUmVjdHNbOF0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0
c1swXS55IDwgd2ViTWF0Y2hSZWN0c1s5XS55KTsKKworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNo
UmVjdHNbMV0ueSA+IHdlYk1hdGNoUmVjdHNbMl0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0
Y2hSZWN0c1sxXS55ID4gd2ViTWF0Y2hSZWN0c1szXS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJN
YXRjaFJlY3RzWzFdLnkgPiB3ZWJNYXRjaFJlY3RzWzRdLnkpOworICAgIEVYUEVDVF9UUlVFKHdl
Yk1hdGNoUmVjdHNbMV0ueSA+IHdlYk1hdGNoUmVjdHNbNV0ueSk7CisgICAgRVhQRUNUX1RSVUUo
d2ViTWF0Y2hSZWN0c1sxXS55ID4gd2ViTWF0Y2hSZWN0c1s2XS55KTsKKyAgICBFWFBFQ1RfVFJV
RSh3ZWJNYXRjaFJlY3RzWzFdLnkgPiB3ZWJNYXRjaFJlY3RzWzddLnkpOworICAgIEVYUEVDVF9U
UlVFKHdlYk1hdGNoUmVjdHNbMV0ueSA+IHdlYk1hdGNoUmVjdHNbOF0ueSk7CisgICAgRVhQRUNU
X1RSVUUod2ViTWF0Y2hSZWN0c1sxXS55ID4gd2ViTWF0Y2hSZWN0c1s5XS55KTsKKworICAgIC8v
IFJlc3VsdCAzIHNob3VsZCBiZSBiZWxvdyBib3RoIDIgYW5kIDQuIFRoaXMgaXMgY2F1c2VkIGJ5
IHRoZSBDU1MgdHJhbnNmb3JtIGluIHRoZSBjb250YWluaW5nIGRpdi4KKyAgICAvLyBJZiB0aGUg
dHJhbnNmb3JtIGRvZXNuJ3Qgd29yayB0aGVuIDMgd2lsbCBiZSBiZXR3ZWVuIDIgYW5kIDQuCisg
ICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1szXS55ID4gd2ViTWF0Y2hSZWN0c1syXS55KTsK
KyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzNdLnkgPiB3ZWJNYXRjaFJlY3RzWzRdLnkp
OworCisgICAgLy8gUmVzdWx0cyA2LCA3LCA4IGFuZCA5IHNob3VsZCBiZSBvbmUgYmVsb3cgdGhl
IG90aGVyIGluIHRoYXQgc2FtZSBvcmRlci4KKyAgICAvLyBJZiBvdmVyZmxvdzpzY3JvbGwgaXMg
bm90IHByb3Blcmx5IGhhbmRsZWQgdGhlbiByZXN1bHQgOCB3b3VsZCBiZSBiZWxvdyByZXN1bHQg
OSBvcgorICAgIC8vIHJlc3VsdCA3IGFib3ZlIHJlc3VsdCA2IGRlcGVuZGluZyBvbiB0aGUgc2Ny
b2xsLgorICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbNl0ueSA8IHdlYk1hdGNoUmVjdHNb
N10ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1s3XS55IDwgd2ViTWF0Y2hSZWN0
c1s4XS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzhdLnkgPCB3ZWJNYXRjaFJl
Y3RzWzldLnkpOworCisgICAgLy8gUmVzaXppbmcgc2hvdWxkIHVwZGF0ZSB0aGUgcmVjdHMgdmVy
c2lvbi4KKyAgICB3ZWJWaWV3LT5yZXNpemUoV2ViU2l6ZSg4MDAsIDYwMCkpOworICAgIHdlYmtp
dF9zdXBwb3J0OjpSdW5BbGxQZW5kaW5nTWVzc2FnZXMoKTsKKyAgICBFWFBFQ1RfVFJVRShtYWlu
RnJhbWUtPmZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKCkgIT0gcmVjdHNWZXJzaW9uKTsKKworICAg
IHdlYlZpZXctPmNsb3NlKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlLmh0bWwgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
YzA5YzlkZDA2MDU1OTUxYWMyZjI3MmYyOGU5YTE1MThmYWZkN2ZhZAotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9maW5kX2luX3BhZ2UuaHRtbApA
QCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBu
YW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxl
PTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9bm8iIC8+Cis8L2hlYWQ+Cis8
Ym9keT4KK1RoaXMgYSBmaW5kLWluLXBhZ2UgbWF0Y2ggcmVjdCB0ZXN0LjwvYnI+CityZXN1bHQg
MDwvYnI+Cis8aWZyYW1lIHNyYz0iZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWwiIGhlaWdodD0iMzAw
IiBzY3JvbGxpbmc9InllcyI+PC9pZnJhbWU+Cis8L2JyPgorcmVzdWx0IDEKKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9maW5k
X2luX3BhZ2VfZnJhbWUuaHRtbCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9m
aW5kX2luX3BhZ2VfZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40N2QyOWFlMGZkZDM3ODYwNmY3ZTEy
YzliZDk5N2RlM2I2MDM3ZjI4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS90ZXN0cy9kYXRhL2ZpbmRfaW5fcGFnZV9mcmFtZS5odG1sCkBAIC0wLDAgKzEsNTggQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIG5hbWU9InZpZXdwb3J0IiBj
b250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wLCBtYXhpbXVtLXNj
YWxlPTEuMCwgdXNlci1zY2FsYWJsZT1ubyIgLz4KKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Citk
aXYudHJhbnNmb3JtIHsKKyAgYmFja2dyb3VuZC1jb2xvcjogIzAwRkYwMDsKKyAgd2lkdGg6IDEw
MHB4OworICBoZWlnaHQ6IDEwMHB4OworICBwYWRkaW5nLWxlZnQ6IDMwcHg7CisgIHBhZGRpbmct
dG9wOiAyMHB4OworICAtd2Via2l0LXRyYW5zZm9ybTptYXRyaXgoMC44NjYsMC41LC0wLjUsMC44
NjYsMTIwLDE1MCk7Cit9CitkaXYuc2Nyb2xsIHsKKyAgYmFja2dyb3VuZC1jb2xvcjogIzAwRkZG
RjsKKyAgd2lkdGg6IDEwMHB4OworICBoZWlnaHQ6IDEwMHB4OworICBvdmVyZmxvdzogc2Nyb2xs
OworfQorZGl2LmZpeGVkIHsKKyAgYmFja2dyb3VuZC1jb2xvcjogI0ZGMDAwMDsKKyAgbGVmdDog
MjAwcHg7CisgIHRvcDogNTBweDsKKyAgd2lkdGg6IDEwMHB4OworICBoZWlnaHQ6IDEwMHB4Owor
ICBwb3NpdGlvbjogZml4ZWQ7Cit9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CitUaGlzIGlz
IGEgdGVzdC4KKzwvYnI+PC9icj4KKzwvYnI+PC9icj4KKzwvYnI+PC9icj4KK0ZvbyBiYXIuCis8
L2JyPjwvYnI+Cis8L2JyPjwvYnI+Cis8L2JyPjwvYnI+CityZXN1bHQgMgorPGRpdiBjbGFzcz0i
dHJhbnNmb3JtIj4KK3Jlc3VsdCAzCis8L2Rpdj4KK3Jlc3VsdCA0Cis8ZGl2IGNsYXNzPSJmaXhl
ZCI+CityZXN1bHQgNQorPC9kaXY+CityZXN1bHQgNgorPGRpdiBjbGFzcz0ic2Nyb2xsIj4KK3Jl
c3VsdCA3CitGb28gYmFyLgorPC9icj48L2JyPgorPC9icj48L2JyPgorPC9icj48L2JyPgorcmVz
dWx0IDgKKzwvZGl2PgorcmVzdWx0IDkKKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156703</attachid>
            <date>2012-08-06 09:21:39 -0700</date>
            <delta_ts>2012-08-08 08:20:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93111-20120806172115.patch</filename>
            <type>text/plain</type>
            <size>41233</size>
            <attacher name="Leandro Graciá Gil">leandrogracia</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI0NzYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2VhZWY5NGQ2MzhlMTVj
ZTg5YTg1ZTIzZTFlMDcyODhiOWIyMTUxMi4uNjQzMDM1ZmE0ZDc2ZDBhN2YwODM4NTZhMTE0NGJh
NjFlMzYwNTYwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEyLTA4LTAzICBMZWFu
ZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KKworICAgICAgICBb
Q2hyb21pdW1dIEltcGxlbWVudCB0aGUgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzIEFQSQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRyb2R1Y2UgdGhl
IGZpbmQtaW4tcGFnZSBjb29yZGluYXRlIHN5c3RlbS4gVGhpcyBzeXN0ZW0gdHJpZXMgdG8gc29s
dmUKKyAgICAgICAgdGhlIHVuaW50dWl0aXZlIHRpY2ttYXJrIHJlc3VsdHMgcHJlc2VudGVkIGlu
IHBhZ2VzIHdpdGggbXVsdGlwbGUgZnJhbWVzCisgICAgICAgIGFuZCBzY3JvbGxlZCBjb250ZW50
cyB3aGVyZSB0aGUgZmluZCByZXN1bHRzIG1pZ2h0IG5vdCBiZSBpbiB0aGUgdmlzaWJsZQorICAg
ICAgICBhcmVhIG9mIGEgZnJhbWUsIHdoaWNoIG1pZ2h0IGxlYWQgdG8gdGlja21hcmtzIGJlbG93
IHRoZSBjb250YWluZXIgZnJhbWUuCisKKyAgICAgICAgVG8gYWNoaWV2ZSB0aGlzLCB0aGlzIGNv
b3JkaW5hdGUgc3lzdGVtIGdvZXMgdXAgdGhlIHJlbmRlciB0cmVlCisgICAgICAgIG5vcm1hbGl6
aW5nIHRoZSBjb29yZGluYXRlcyBieSB0aGUgYWN0dWFsIGNvbnRlbnRzIHNpemUgb2YgaXRzIGNv
bnRhaW5lci4KKyAgICAgICAgVGhpcyBsZWFkcyB0byB0aWNrbWFya3Mgc2NhbGVkIHRvIHRoZSB2
aXNpYmxlIHNpemUgb2YgdGhlaXIgZnJhbWUKKyAgICAgICAgaW5kZXBlbmRlbnRseSBvZiBpdHMg
c2Nyb2xsLiBUaGlzIGNvb3JkaW5hdGUgc3lzdGVtIHN1cHBvcnRzIGFsc28gQ1NTCisgICAgICAg
IHNjcm9sbDpvdmVyZmxvdywgdHJhbnNmb3JtcyBhbmQgdGhlIGRpZmZlcmVudCBwb3NpdGlvbnMu
CisKKyAgICAgICAgQWxzbyBhZGQgYW4gYXV4aWxpYXJ5IG1ldGhvZCB0byBSYW5nZSBpbiBvcmRl
ciB0byBwcm92aWRlIGEgdHJhbnNmb3JtCisgICAgICAgIGZyaWVuZGx5IHdheSB0byByZXRyaWV2
ZSB0aGUgYWJzb2x1dGUgY29vcmRpbmF0ZXMgb2YgdGhlIGVuY2xvc2luZworICAgICAgICBib3Vu
ZGluZyBib3ggd2l0aG91dCB0aGUgYWRqdXN0bWVudCBvcGVyYXRpb25zIHRoYXQgdGhlIGV4aXN0
aW5nCisgICAgICAgIGVuY2xvc2luZ1JlY3QgbWV0aG9kIGRvZXMuCisKKyAgICAgICAgVGVzdGVk
IGJ5IFdlYkZyYW1lVGVzdCBXZWJLaXQgdW5pdCB0ZXN0LgorCisgICAgICAgICogV2ViQ29yZS5n
eXBpOgorICAgICAgICAqIGRvbS9SYW5nZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSYW5nZTo6
ZW5jbG9zaW5nQm91bmRpbmdCb3gpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogZG9t
L1JhbmdlLmg6CisgICAgICAgICogcmVuZGVyaW5nL0ZpbmRJblBhZ2VDb29yZGluYXRlcy5jcHA6
IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjp0b05vcm1hbGl6
ZWRSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZpbmRJblBhZ2VDb29yZGluYXRlczo6ZnJvbUFi
c29sdXRlUmVjdCk6CisgICAgICAgIChXZWJDb3JlOjpGaW5kSW5QYWdlQ29vcmRpbmF0ZXM6OmZy
b21SYW5nZSk6CisgICAgICAgICogcmVuZGVyaW5nL0ZpbmRJblBhZ2VDb29yZGluYXRlcy5oOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoRmluZEluUGFnZUNvb3JkaW5hdGVz
KToKKwogMjAxMi0wOC0wNiAgQW5kcmVhcyBLbGluZyAgPGtsaW5nQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgUGFzcyBwcmVzZW50YXRpb25hbCBhdHRyaWJ1dGUgU3R5bGVQcm9wZXJ0eVNldHMgYnkg
Y29uc3QgcG9pbnRlciB3aGVyZSBwb3NzaWJsZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5k
ZXggNzk5MzRhYzY2MTI4YTg2M2EyMjc5MGEzMGUwZGVjZjU1NDc2MTNkNi4uZWExODllYzc0ZGU1
YjI5NDBjZWZhNjE3ZDkxMWJiODI2ZDk1YmUwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSw0NCBAQAorMjAxMi0wOC0wMyAgTGVhbmRybyBHcmFjaWEgR2lsICA8bGVhbmRy
b2dyYWNpYUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Nocm9taXVtXSBJbXBsZW1lbnQgdGhl
IGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyBBUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMTExCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IHRoZSBmdW5jaW9uYWxpdHkgb2YgdGhlIGZp
bmQtaW4tcGFnZSBtYXRjaCByZWN0cyBBUEkgaW4gV2ViRnJhbWUuCisgICAgICAgIFRoZXNlIG1l
dGhvZHMga2VlcCBhIGNhY2hlIG9mIHRoZSBtYXRjaCByZWN0cyBpbiBhIHNwZWNpYWwgY29vcmRp
bmF0ZSBzeXN0ZW0KKyAgICAgICAgKGZpbmQtaW4tcGFnZSBjb29yZGluYXRlcykgYW5kIHVwZGF0
ZSB0aGVtIG9uIHNpemUgY2hhbmdlcy4gVGhleSBhbHNvIGFsbG93CisgICAgICAgIHRvIHJlY292
ZXIgdGhlIG1hdGNoIGNsb3Nlc3QgdG8gYSBnaXZlbiBwb2ludCwgdGhlcmVmb3JlIGVuYWJsaW5n
IHRvIG1vdmUKKyAgICAgICAgdG8gZmluZCBtYXRjaGVzIHdoZW4gdGFwcGluZyBvbiB0aGVpciBj
b3JyZXNwb25kaW5nIHRpY2ttYXJrcy4KKworICAgICAgICAqIHNyYy9XZWJGcmFtZUltcGwuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OkZpbmRNYXRjaDo6RmluZE1hdGNoKToK
KyAgICAgICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6ZmluZCk6
CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6c3RvcEZpbmRpbmcpOgorICAgICAgICAo
V2ViS2l0OjpXZWJGcmFtZUltcGw6OnNjb3BlU3RyaW5nTWF0Y2hlcyk6CisgICAgICAgIChXZWJL
aXQ6OldlYkZyYW1lSW1wbDo6aW5jcmVhc2VNYXRjaENvdW50KToKKyAgICAgICAgKFdlYktpdDo6
V2ViRnJhbWVJbXBsOjpyZXNldE1hdGNoQ291bnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFt
ZUltcGw6OmZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJh
bWVJbXBsOjpjbGVhckZpbmRNYXRjaGVzQ2FjaGUpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFt
ZUltcGw6OmlzQWN0aXZlTWF0Y2hGcmFtZVZhbGlkKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJh
bWVJbXBsOjp1cGRhdGVGaW5kTWF0Y2hSZWN0cyk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1l
SW1wbDo6YWN0aXZlRmluZE1hdGNoUmVjdCk6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1w
bDo6ZmluZE1hdGNoUmVjdHMpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFwcGVu
ZEZpbmRNYXRjaFJlY3RzKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpzZWxlY3RO
ZWFyZXN0RmluZE1hdGNoKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpuZWFyZXN0
RmluZE1hdGNoKToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpzZWxlY3RGaW5kTWF0
Y2gpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OldlYkZyYW1lSW1wbCk6CisgICAg
ICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAg
ICAgKiBzcmMvV2ViRnJhbWVJbXBsLmg6CisgICAgICAgIChXZWJGcmFtZUltcGwpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFjdGl2ZU1hdGNoKToKKyAgICAgICAgKEZpbmRNYXRj
aCk6CisgICAgICAgICogdGVzdHMvV2ViRnJhbWVUZXN0LmNwcDoKKyAgICAgICAgKiB0ZXN0cy9k
YXRhL2ZpbmRfaW5fcGFnZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9kYXRhL2ZpbmRf
aW5fcGFnZV9mcmFtZS5odG1sOiBBZGRlZC4KKwogMjAxMi0wOC0wNiAgS2Vpc2hpIEhhdHRvcmkg
IDxrZWlzaGlAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgbWluaW11bSB3aW5kb3cgc2l6
ZSBmb3IgUGFnZVBvcHVwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggNWNjYWViNGIxMDRmYTFiNmE3OTg1
ZDZkYjQxMDJlODJhOGJmNTY4NC4uMDcxYzY4MTg1MmVjY2FmYTliM2I3ODM3NjNhNmU4MWQ3MjQ3
ZDNkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtNDY2MCw2ICs0NjYwLDggQEAKICAgICAgICAgICAg
ICdyZW5kZXJpbmcvRWxsaXBzaXNCb3guaCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL0ZpbHRl
ckVmZmVjdFJlbmRlcmVyLmNwcCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL0ZpbHRlckVmZmVj
dFJlbmRlcmVyLmgnLAorICAgICAgICAgICAgJ3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRpbmF0
ZXMuY3BwJywKKyAgICAgICAgICAgICdyZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVzLmgn
LAogICAgICAgICAgICAgJ3JlbmRlcmluZy9GaXhlZFRhYmxlTGF5b3V0LmNwcCcsCiAgICAgICAg
ICAgICAncmVuZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuaCcsCiAgICAgICAgICAgICAncmVuZGVy
aW5nL0Zsb3dUaHJlYWRDb250cm9sbGVyLmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9kb20vUmFuZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcAppbmRleCBlOTQz
Y2Y1ZDk1ZWNiNDRkMDk4YzczZmU0ZDJlODc4NDg0Y2FhYjU3Li4xZmIxZmRhYjhiNDZhMzUwMGNh
MmQ0OTA1MjhmNTYwMTljZGE3ZWNkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFu
Z2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5jcHAKQEAgLTE5NDIsNyArMTk0
MiwyMyBAQCB2b2lkIFJhbmdlOjpnZXRCb3JkZXJBbmRUZXh0UXVhZHMoVmVjdG9yPEZsb2F0UXVh
ZD4mIHF1YWRzKSBjb25zdAogICAgIH0KIH0KIAotICAgIAorRmxvYXRSZWN0IFJhbmdlOjplbmNs
b3NpbmdCb3VuZGluZ0JveCgpIGNvbnN0Cit7CisgICAgaWYgKCFtX3N0YXJ0LmNvbnRhaW5lcigp
KQorICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7CisKKyAgICBWZWN0b3I8RmxvYXRRdWFkPiBx
dWFkczsKKyAgICB0ZXh0UXVhZHMocXVhZHMpOworICAgIGlmIChxdWFkcy5pc0VtcHR5KCkpCisg
ICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAgIEZsb2F0UmVjdCByZXN1bHQ7CisgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBxdWFkcy5zaXplKCk7ICsraSkKKyAgICAgICAgcmVzdWx0
LnVuaXRlKHF1YWRzW2ldLmJvdW5kaW5nQm94KCkpOworCisgICAgcmV0dXJuIHJlc3VsdDsKK30K
KwogRmxvYXRSZWN0IFJhbmdlOjpib3VuZGluZ1JlY3QoKSBjb25zdAogewogICAgIGlmICghbV9z
dGFydC5jb250YWluZXIoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5o
IGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKaW5kZXggYjg0YmQ2MTQ1NDA5ZDNhMTliMTM1
NGYzNTc3ODY4NWY4ODBlMjljMi4uZTgwY2E2ZGE3Mjc1MTgwMDRmYTIwNGM0YjZmZGY5OTU3MjIy
NTQ3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvZG9tL1JhbmdlLmgKQEAgLTEyNSw2ICsxMjUsNyBAQCBwdWJsaWM6CiAgICAgLy8g
VHJhbnNmb3JtLWZyaWVuZGx5CiAgICAgdm9pZCB0ZXh0UXVhZHMoVmVjdG9yPEZsb2F0UXVhZD4m
LCBib29sIHVzZVNlbGVjdGlvbkhlaWdodCA9IGZhbHNlLCBSYW5nZUluRml4ZWRQb3NpdGlvbiog
PSAwKSBjb25zdDsKICAgICB2b2lkIGdldEJvcmRlckFuZFRleHRRdWFkcyhWZWN0b3I8RmxvYXRR
dWFkPiYpIGNvbnN0OworICAgIEZsb2F0UmVjdCBlbmNsb3NpbmdCb3VuZGluZ0JveCgpIGNvbnN0
OwogICAgIEZsb2F0UmVjdCBib3VuZGluZ1JlY3QoKSBjb25zdDsKIAogICAgIHZvaWQgbm9kZUNo
aWxkcmVuQ2hhbmdlZChDb250YWluZXJOb2RlKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI2NzAwZDQ4Y2Ri
NDM2ZTg5ZTFiNGI1OGE4OGYxMjg4OWQwY2YzYTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVzLmNwcApAQCAtMCwwICsxLDE0
NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoK
KyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2ds
ZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09O
VFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAor
ICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9S
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICov
CisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaW5kSW5QYWdlQ29vcmRpbmF0ZXMu
aCIKKworI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJGbG9hdFF1YWQuaCIKKyNp
bmNsdWRlICJGbG9hdFJlY3QuaCIKKyNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIkludFBv
aW50LmgiCisjaW5jbHVkZSAiTm9kZS5oIgorI2luY2x1ZGUgIlJhbmdlLmgiCisjaW5jbHVkZSAi
UmVuZGVyQm94LmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCisjaW5jbHVkZSAiUmVuZGVy
UGFydC5oIgorI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCisjaW5jbHVkZSAiUmVuZGVyVmlldy5o
IgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0
aWMgRmxvYXRSZWN0IHRvTm9ybWFsaXplZFJlY3QoY29uc3QgRmxvYXRSZWN0JiBhYnNvbHV0ZVJl
Y3QsIGNvbnN0IFJlbmRlck9iamVjdCogcmVuZGVyZXIsIEZsb2F0UmVjdCogY29udGFpbmVyQm91
bmRpbmdCb3ggPSAwKQoreworICAgIEFTU0VSVChyZW5kZXJlcik7CisKKyAgICBjb25zdCBSZW5k
ZXJPYmplY3QqIGNvbnRhaW5lciA9IHJlbmRlcmVyLT5jb250YWluZXIoKTsKKyAgICBpZiAoIWNv
bnRhaW5lcikgeworICAgICAgICBpZiAoY29udGFpbmVyQm91bmRpbmdCb3gpCisgICAgICAgICAg
ICAqY29udGFpbmVyQm91bmRpbmdCb3ggPSBGbG9hdFJlY3QoKTsKKyAgICAgICAgcmV0dXJuIEZs
b2F0UmVjdCgpOworICAgIH0KKworICAgIEZsb2F0UmVjdCBub3JtYWxpemVkUmVjdCA9IGFic29s
dXRlUmVjdDsKKyAgICBGbG9hdFJlY3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lci0+YWJzb2x1
dGVCb3VuZGluZ0JveFJlY3QoKTsKKyAgICBpZiAoY29udGFpbmVyQm91bmRpbmdCb3gpCisgICAg
ICAgICpjb250YWluZXJCb3VuZGluZ0JveCA9IGNvbnRhaW5lclJlY3Q7CisKKyAgICAvLyBGb3Ig
UmVuZGVyQm94ZXMgd2Ugd2FudCB0byBub3JtYWxpemUgYnkgdGhlIG1heCBsYXlvdXQgb3ZlcmZs
b3cgc2l6ZSBpbnN0ZWFkIG9mIG9ubHkgdGhlIHZpc2libGUgYm91bmRpbmcgYm94LgorICAgIC8v
IFF1YWRzIGFuZCB0aGVpciBlbmNsb3NpbmcgYm91bmRpbmcgYm94ZXMgbmVlZCB0byBiZSB1c2Vk
IGluIG9yZGVyIHRvIGtlZXAgcmVzdWx0cyB0cmFuc2Zvcm0tZnJpZW5kbHkuCisgICAgaWYgKGNv
bnRhaW5lci0+aXNCb3goKSkgeworICAgICAgICBjb25zdCBSZW5kZXJCb3gqIGNvbnRhaW5lckJv
eCA9IHRvUmVuZGVyQm94KGNvbnRhaW5lcik7CisgICAgICAgIEZsb2F0UG9pbnQgc2Nyb2xsZWRP
cmlnaW47CisKKyAgICAgICAgLy8gRm9yIG92ZXJmbG93OnNjcm9sbCB3ZSBuZWVkIHRvIGdldCB3
aGVyZSB0aGUgYWN0dWFsIG9yaWdpbiBpcyBpbmRlcGVuZGVudGx5IG9mIHRoZSBzY3JvbGwuCisg
ICAgICAgIGlmIChjb250YWluZXItPmhhc092ZXJmbG93Q2xpcCgpKQorICAgICAgICAgICAgc2Ny
b2xsZWRPcmlnaW4gPSAtSW50UG9pbnQoY29udGFpbmVyQm94LT5zY3JvbGxlZENvbnRlbnRPZmZz
ZXQoKSk7CisKKyAgICAgICAgRmxvYXRSZWN0IG92ZXJmbG93UmVjdChzY3JvbGxlZE9yaWdpbiwg
Y29udGFpbmVyQm94LT5tYXhMYXlvdXRPdmVyZmxvdygpKTsKKyAgICAgICAgY29udGFpbmVyUmVj
dCA9IGNvbnRhaW5lckJveC0+bG9jYWxUb0Fic29sdXRlUXVhZChGbG9hdFF1YWQob3ZlcmZsb3dS
ZWN0KSwgZmFsc2UpLmVuY2xvc2luZ0JvdW5kaW5nQm94KCk7CisgICAgfQorCisgICAgaWYgKGNv
bnRhaW5lclJlY3QuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7CisKKyAg
ICAvLyBNYWtlIHRoZSBjb29yZGluYXRlcyByZWxhdGl2ZSB0byB0aGUgY29udGFpbmVyIGVuY2xv
c2luZyBib3VuZGluZyBib3guCisgICAgLy8gU2luY2Ugd2Ugd29yayB3aXRoIHJlY3RzIGVuY2xv
c2luZyBxdWFkIHVuaW9ucyB0aGlzIGlzIHN0aWxsIHRyYW5zZm9ybS1mcmllbmRseS4KKyAgICBu
b3JtYWxpemVkUmVjdC5tb3ZlQnkoLWNvbnRhaW5lclJlY3QubG9jYXRpb24oKSk7CisKKyAgICAv
LyBGaXhlZCBwb3NpdGlvbnMgZG8gbm90IG1ha2Ugc2Vuc2UgaW4gdGhpcyBjb29yZGluYXRlIHN5
c3RlbSwgYnV0IG5lZWQgdG8gbGVhdmUgY29uc2lzdGVudCB0aWNrbWFya3MuCisgICAgLy8gU28s
IHVzZSB0aGVpciBwb3NpdGlvbiB3aGVuIHRoZSB2aWV3IGlzIG5vdCBzY3JvbGxlZCwgbGlrZSBh
biBhYnNvbHV0ZSBwb3NpdGlvbi4KKyAgICBpZiAocmVuZGVyZXItPnN0eWxlKCktPnBvc2l0aW9u
KCkgPT0gRml4ZWRQb3NpdGlvbiAmJiBjb250YWluZXItPmlzUmVuZGVyVmlldygpKQorICAgICAg
ICBub3JtYWxpemVkUmVjdC5tb3ZlKC10b1JlbmRlclZpZXcoY29udGFpbmVyKS0+ZnJhbWVWaWV3
KCktPnNjcm9sbE9mZnNldEZvckZpeGVkUG9zaXRpb24oKSk7CisKKyAgICBub3JtYWxpemVkUmVj
dC5zY2FsZSgxIC8gY29udGFpbmVyUmVjdC53aWR0aCgpLCAxIC8gY29udGFpbmVyUmVjdC5oZWln
aHQoKSk7CisKKyAgICByZXR1cm4gbm9ybWFsaXplZFJlY3Q7Cit9CisKK0Zsb2F0UmVjdCBGaW5k
SW5QYWdlQ29vcmRpbmF0ZXM6OmZyb21BYnNvbHV0ZVJlY3QoY29uc3QgRmxvYXRSZWN0JiBpbnB1
dFJlY3QsIGNvbnN0IFJlbmRlck9iamVjdCogcmVuZGVyZXIpCit7CisgICAgaWYgKCFyZW5kZXJl
ciB8fCBpbnB1dFJlY3QuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7CisK
KyAgICAvLyBOb3JtYWxpemUgdGhlIGlucHV0IHJlY3QgdG8gaXRzIGNvbnRhaW5lciwgc2F2aW5n
IHRoZSBjb250YWluZXIgYm91bmRpbmcgYm94IGZvciB0aGUgaW5jb21pbmcgbG9vcC4KKyAgICBG
bG9hdFJlY3QgcmVuZGVyZXJCb3VuZGluZ0JveDsKKyAgICBGbG9hdFJlY3Qgbm9ybWFsaXplZFJl
Y3QgPSB0b05vcm1hbGl6ZWRSZWN0KGlucHV0UmVjdCwgcmVuZGVyZXIsICZyZW5kZXJlckJvdW5k
aW5nQm94KTsKKyAgICByZW5kZXJlciA9IHJlbmRlcmVyLT5jb250YWluZXIoKTsKKworICAgIC8v
IEdvIHVwIGFjcm9zcyBmcmFtZXMuCisgICAgd2hpbGUgKHJlbmRlcmVyKSB7CisKKyAgICAgICAg
Ly8gR28gdXAgdGhlIHJlbmRlciB0cmVlIHVudGlsIHdlIHJlYWNoIHRoZSByb290IG9mIHRoZSBj
dXJyZW50IGZyYW1lICh0aGUgUmVuZGVyVmlldykuCisgICAgICAgIGZvciAoY29uc3QgUmVuZGVy
T2JqZWN0KiBjb250YWluZXIgPSByZW5kZXJlci0+Y29udGFpbmVyKCk7IGNvbnRhaW5lcjsgcmVu
ZGVyZXIgPSBjb250YWluZXIsIGNvbnRhaW5lciA9IGNvbnRhaW5lci0+Y29udGFpbmVyKCkpIHsK
KworICAgICAgICAgICAgLy8gQ29tcG9zZSB0aGUgbm9ybWFsaXplZCByZWN0cy4gVGhlIGFic29s
dXRlIGJvdW5kaW5nIGJveCBvZiB0aGUgY29udGFpbmVyIGlzIGNhbGN1bGF0ZWQgaW4gdG9Ob3Jt
YWxpemVkUmVjdAorICAgICAgICAgICAgLy8gYW5kIGNhbiBiZSByZXVzZWQgZm9yIHRoZSBuZXh0
IGl0ZXJhdGlvbiBvZiB0aGUgbG9vcC4KKyAgICAgICAgICAgIEZsb2F0UmVjdCBub3JtYWxpemVk
Qm94UmVjdCA9IHRvTm9ybWFsaXplZFJlY3QocmVuZGVyZXJCb3VuZGluZ0JveCwgcmVuZGVyZXIs
ICZyZW5kZXJlckJvdW5kaW5nQm94KTsKKyAgICAgICAgICAgIG5vcm1hbGl6ZWRSZWN0LnNjYWxl
KG5vcm1hbGl6ZWRCb3hSZWN0LndpZHRoKCksIG5vcm1hbGl6ZWRCb3hSZWN0LmhlaWdodCgpKTsK
KyAgICAgICAgICAgIG5vcm1hbGl6ZWRSZWN0Lm1vdmVCeShub3JtYWxpemVkQm94UmVjdC5sb2Nh
dGlvbigpKTsKKworICAgICAgICAgICAgaWYgKG5vcm1hbGl6ZWRSZWN0LmlzRW1wdHkoKSkKKyAg
ICAgICAgICAgICAgICByZXR1cm4gbm9ybWFsaXplZFJlY3Q7CisgICAgICAgIH0KKworICAgICAg
ICAvLyBKdW1wIHRvIHRoZSByZW5kZXJlciBvd25pbmcgdGhlIGZyYW1lLCBpZiBhbnkuCisgICAg
ICAgIEFTU0VSVChyZW5kZXJlci0+aXNSZW5kZXJWaWV3KCkpOworICAgICAgICByZW5kZXJlciA9
IHJlbmRlcmVyLT5mcmFtZSgpID8gcmVuZGVyZXItPmZyYW1lKCktPm93bmVyUmVuZGVyZXIoKSA6
IDA7CisKKyAgICAgICAgLy8gVXBkYXRlIHRoZSBhYnNvbHV0ZSBjb29yZGluYXRlcyB0byB0aGUg
bmV3IGZyYW1lLgorICAgICAgICBpZiAocmVuZGVyZXIpCisgICAgICAgICAgICByZW5kZXJlckJv
dW5kaW5nQm94ID0gcmVuZGVyZXItPmFic29sdXRlQm91bmRpbmdCb3hSZWN0KCk7CisgICAgfQor
CisgICAgcmV0dXJuIG5vcm1hbGl6ZWRSZWN0OworfQorCitGbG9hdFJlY3QgRmluZEluUGFnZUNv
b3JkaW5hdGVzOjpmcm9tUmFuZ2UoUGFzc1JlZlB0cjxSYW5nZT4gaW5wdXRSYW5nZSkKK3sKKyAg
ICBSZWZQdHI8UmFuZ2U+IHJhbmdlID0gaW5wdXRSYW5nZTsKKyAgICBpZiAoIXJhbmdlIHx8ICFy
YW5nZS0+Zmlyc3ROb2RlKCkpCisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAgIHJl
dHVybiBmcm9tQWJzb2x1dGVSZWN0KHJhbmdlLT5lbmNsb3NpbmdCb3VuZGluZ0JveCgpLCByYW5n
ZS0+Zmlyc3ROb2RlKCktPnJlbmRlcmVyKCkpOworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5h
dGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVzLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMGNlZjA0NmNlZjM0ZWFiZDU3YjFhZDQ4ODQ4NDg0NmRiMDA1Yjk0OQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRp
bmF0ZXMuaApAQCAtMCwwICsxLDU4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAq
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRo
ZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
KyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBGaW5kSW5QYWdlQ29vcmRpbmF0ZXNfaAor
I2RlZmluZSBGaW5kSW5QYWdlQ29vcmRpbmF0ZXNfaAorCisjaW5jbHVkZSAiRmxvYXRSZWN0Lmgi
CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitj
bGFzcyBSYW5nZTsKK2NsYXNzIFJlbmRlck9iamVjdDsKKworLy8gQ29udmVydHMgY29vcmRpbmF0
ZXMgdG8gdGhlIGZpbmQtaW4tcGFnZSBjb29yZGluYXRlIHN5c3RlbS4KKy8vIFRoaXMgY29vcmRp
bmF0ZSBzeXN0ZW0gaXMgZGVzaWduZWQgdG8gZ2l2ZSBjb25zaXN0ZW50IHRpY2ttYXJrIHJlc3Vs
dHMgaW4gbXVsdGlwbGUgZnJhbWUKKy8vIHBhZ2VzIHdoZXJlIHRoZSBjb250ZW50cyBvZiBzdWJm
cmFtZXMgdGhhdCBtaWdodCBoYXZlIGZpbmQgbWF0Y2hlcyBuZWVkIHRvIGJlIHNjcm9sbGVkLgor
Ly8gVGhleSBhcmUgcmVwcmVzZW50ZWQgYXMgbm9ybWFsaXplZCBmcmFjdGlvbnMgb2YgdGhlIG1h
aW4gcGFnZSBkb2N1bWVudCB3aXRoIHRoZSBwcm9wZXJ0eQorLy8gdGhhdCB0aGV5IGFyZSBidWls
dCBieSBjb21wb3NpbmcgdGhlIHJlbGF0aXZlIHBvc2l0aW9uIG9mIGVhY2ggcmVuZGVyZXIgdG8g
dGhlIGZ1bGwgZWZmZWN0aXZlCisvLyBsYXlvdXQgc2l6ZSBvZiBpdHMgY29udGFpbmVyIGFsbCB0
aGUgd2F5IHVwIHRoZSByZW5kZXIgdHJlZS4gVGhlcmVmb3JlLCB0aGVzZSBjb29yZGluYXRlcwor
Ly8gYXJlIHNjcm9sbC1pbmRlcGVuZGVudCBhbmQgYWx3YXlzIHJlcHJlc2VudCBzY3JvbGxlZCBj
b250ZW50cyBzY2FsZWQgdG8gdGhlaXIgdmlzaWJsZSBsYXlvdXQuCisvLyBUaGUgcHJvdmlkZWQg
bWV0aG9kcyBzdXBwb3J0IHNjcm9sbDpvdmVyZmxvdyBhbmQgYXJlIENTUyBwb3NpdGlvbiBhbmQg
dHJhbnNmb3JtLWZyaWVuZGx5LgorY2xhc3MgRmluZEluUGFnZUNvb3JkaW5hdGVzIHsKK3B1Ymxp
YzoKKyAgICBzdGF0aWMgRmxvYXRSZWN0IGZyb21BYnNvbHV0ZVJlY3QoY29uc3QgRmxvYXRSZWN0
JiwgY29uc3QgUmVuZGVyT2JqZWN0Kik7CisgICAgc3RhdGljIEZsb2F0UmVjdCBmcm9tUmFuZ2Uo
UGFzc1JlZlB0cjxSYW5nZT4pOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5j
cHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCmluZGV4IGI4
OTM5ZGYwNGNhM2JkODM0YWExMDExOTkzOGNhZjdlNWEwYTFjNjMuLmZjMTM2NTZiYTE0ZmY4MGQ5
YWU1MjZmMTE2ZTg3YmQ2Y2EwOWYxZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViRnJhbWVJbXBsLmNwcApAQCAtODksNiArODksNyBAQAogI2luY2x1ZGUgIkV2ZW50SGFuZGxl
ci5oIgogI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXJXcmFwcGVyLmgiCiAjaW5jbHVkZSAiRmlsZVN5
c3RlbVR5cGUuaCIKKyNpbmNsdWRlICJGaW5kSW5QYWdlQ29vcmRpbmF0ZXMuaCIKICNpbmNsdWRl
ICJGb2N1c0NvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJGb250Q2FjaGUuaCIKICNpbmNsdWRlICJG
b3JtU3RhdGUuaCIKQEAgLTExOCw2ICsxMTksNyBAQAogI2luY2x1ZGUgIlBsYXRmb3JtU3VwcG9y
dC5oIgogI2luY2x1ZGUgIlBsdWdpbkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiUHJpbnRDb250ZXh0
LmgiCisjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAjaW5jbHVkZSAiUmVuZGVyRnJhbWUuaCIKICNp
bmNsdWRlICJSZW5kZXJMYXllci5oIgogI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgpAQCAtMTc0
LDcgKzE3Niw2IEBACiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViUG9pbnQuaCIKICNpbmNsdWRlICJw
bGF0Zm9ybS9XZWJSZWN0LmgiCiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViU2VyaWFsaXplZFNjcmlw
dFZhbHVlLmgiCi0jaW5jbHVkZSAicGxhdGZvcm0vV2ViU2l6ZS5oIgogI2luY2x1ZGUgInBsYXRm
b3JtL1dlYlVSTEVycm9yLmgiCiAjaW5jbHVkZSAicGxhdGZvcm0vV2ViVmVjdG9yLmgiCiAKQEAg
LTUxNiw2ICs1MTcsMTIgQEAgc3RhdGljIFdlYkRhdGFTb3VyY2UqIERhdGFTb3VyY2VGb3JEb2NM
b2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikKICAgICByZXR1cm4gbG9hZGVyID8gV2ViRGF0
YVNvdXJjZUltcGw6OmZyb21Eb2N1bWVudExvYWRlcihsb2FkZXIpIDogMDsKIH0KIAorV2ViRnJh
bWVJbXBsOjpGaW5kTWF0Y2g6OkZpbmRNYXRjaChQYXNzUmVmUHRyPFJhbmdlPiByYW5nZSwgaW50
IG9yZGluYWwpCisgICAgOiBtX3JhbmdlKHJhbmdlKQorICAgICwgbV9vcmRpbmFsKG9yZGluYWwp
Cit7Cit9CisKIC8vIFdlYkZyYW1lIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogY2xhc3MgV2ViRnJhbWVJbXBsOjpE
ZWZlcnJlZFNjb3BlU3RyaW5nTWF0Y2hlcyB7CkBAIC0xNjM3LDYgKzE2NDQsMTAgQEAgYm9vbCBX
ZWJGcmFtZUltcGw6OmZpbmQoaW50IGlkZW50aWZpZXIsCiAgICAgbV9hY3RpdmVNYXRjaCA9IGZy
YW1lKCktPmVkaXRvcigpLT5maW5kU3RyaW5nQW5kU2Nyb2xsVG9WaXNpYmxlKHNlYXJjaFRleHQs
IG1fYWN0aXZlTWF0Y2guZ2V0KCksIGZpbmRPcHRpb25zKTsKIAogICAgIGlmICghbV9hY3RpdmVN
YXRjaCkgeworICAgICAgICAvLyBJZiB3ZSdyZSBmaW5kaW5nIG5leHQgdGhlIG5leHQgYWN0aXZl
IG1hdGNoIG1pZ2h0IG5vdCBiZSBpbiB0aGUgY3VycmVudCBmcmFtZS4KKyAgICAgICAgLy8gSW4g
dGhpcyBjYXNlIHdlIGRvbid0IHdhbnQgdG8gY2xlYXIgdGhlIG1hdGNoZXMgY2FjaGUuCisgICAg
ICAgIGlmICghb3B0aW9ucy5maW5kTmV4dCkKKyAgICAgICAgICAgIGNsZWFyRmluZE1hdGNoZXND
YWNoZSgpOwogICAgICAgICBpbnZhbGlkYXRlQXJlYShJbnZhbGlkYXRlQWxsKTsKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgIH0KQEAgLTE2ODgsNiArMTY5OSw3IEBAIHZvaWQgV2ViRnJhbWVJ
bXBsOjpzdG9wRmluZGluZyhib29sIGNsZWFyU2VsZWN0aW9uKQogICAgIC8vIFJlbW92ZSBhbGwg
bWFya2VycyBmb3IgbWF0Y2hlcyBmb3VuZCBhbmQgdHVybiBvZmYgdGhlIGhpZ2hsaWdodGluZy4K
ICAgICBmcmFtZSgpLT5kb2N1bWVudCgpLT5tYXJrZXJzKCktPnJlbW92ZU1hcmtlcnMoRG9jdW1l
bnRNYXJrZXI6OlRleHRNYXRjaCk7CiAgICAgZnJhbWUoKS0+ZWRpdG9yKCktPnNldE1hcmtlZFRl
eHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoZmFsc2UpOworICAgIGNsZWFyRmluZE1hdGNoZXNDYWNo
ZSgpOwogCiAgICAgLy8gTGV0IHRoZSBmcmFtZSBrbm93IHRoYXQgd2UgZG9uJ3Qgd2FudCB0aWNr
bWFya3Mgb3IgaGlnaGxpZ2h0aW5nIGFueW1vcmUuCiAgICAgaW52YWxpZGF0ZUFyZWEoSW52YWxp
ZGF0ZUFsbCk7CkBAIC0xNzEwLDYgKzE3MjIsMTAgQEAgdm9pZCBXZWJGcmFtZUltcGw6OnNjb3Bl
U3RyaW5nTWF0Y2hlcyhpbnQgaWRlbnRpZmllciwKICAgICAgICAgLy8gQ2xlYXIgaGlnaGxpZ2h0
aW5nIGZvciB0aGlzIGZyYW1lLgogICAgICAgICBpZiAoZnJhbWUoKS0+ZWRpdG9yKCktPm1hcmtl
ZFRleHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoKSkKICAgICAgICAgICAgIGZyYW1lKCktPnBhZ2Uo
KS0+dW5tYXJrQWxsVGV4dE1hdGNoZXMoKTsKKworICAgICAgICAvLyBDbGVhciB0aGUgdGlja21h
cmtzIGFuZCByZXN1bHRzIGNhY2hlLgorICAgICAgICBjbGVhckZpbmRNYXRjaGVzQ2FjaGUoKTsK
KwogICAgICAgICAvLyBDbGVhciB0aGUgY291bnRlcnMgZnJvbSBsYXN0IG9wZXJhdGlvbi4KICAg
ICAgICAgbV9sYXN0TWF0Y2hDb3VudCA9IDA7CiAgICAgICAgIG1fbmV4dEludmFsaWRhdGVBZnRl
ciA9IDA7CkBAIC0xODA4LDYgKzE4MjQsOCBAQCB2b2lkIFdlYkZyYW1lSW1wbDo6c2NvcGVTdHJp
bmdNYXRjaGVzKGludCBpZGVudGlmaWVyLAogCiAgICAgICAgIGFkZE1hcmtlcihyZXN1bHRSYW5n
ZS5nZXQoKSwgZm91bmRBY3RpdmVNYXRjaCk7CiAKKyAgICAgICAgbV9maW5kTWF0Y2hlc0NhY2hl
LmFwcGVuZChGaW5kTWF0Y2gocmVzdWx0UmFuZ2UuZ2V0KCksIG1fbGFzdE1hdGNoQ291bnQgKyBt
YXRjaENvdW50KSk7CisKICAgICAgICAgLy8gU2V0IHRoZSBuZXcgc3RhcnQgZm9yIHRoZSBzZWFy
Y2ggcmFuZ2UgdG8gYmUgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMKICAgICAgICAgLy8gcmVzdWx0
IHJhbmdlLiBUaGVyZSBpcyBubyBuZWVkIHRvIHVzZSBhIFZpc2libGVQb3NpdGlvbiBoZXJlLAog
ICAgICAgICAvLyBzaW5jZSBmaW5kUGxhaW5UZXh0IHdpbGwgdXNlIGEgVGV4dEl0ZXJhdG9yIHRv
IGdvIG92ZXIgdGhlIHZpc2libGUKQEAgLTE4NzgsNiArMTg5Niw5IEBAIHZvaWQgV2ViRnJhbWVJ
bXBsOjppbmNyZWFzZU1hdGNoQ291bnQoaW50IGNvdW50LCBpbnQgaWRlbnRpZmllcikKICAgICAv
LyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBvbiB0aGUgbWFpbmZyYW1lLgog
ICAgIEFTU0VSVCghcGFyZW50KCkpOwogCisgICAgaWYgKGNvdW50KQorICAgICAgICArK21fZmlu
ZE1hdGNoTWFya2Vyc1ZlcnNpb247CisKICAgICBtX3RvdGFsTWF0Y2hDb3VudCArPSBjb3VudDsK
IAogICAgIC8vIFVwZGF0ZSB0aGUgVUkgd2l0aCB0aGUgbGF0ZXN0IGZpbmRpbmdzLgpAQCAtMTg5
Niw2ICsxOTE3LDkgQEAgdm9pZCBXZWJGcmFtZUltcGw6OnJlcG9ydEZpbmRJblBhZ2VTZWxlY3Rp
b24oY29uc3QgV2ViUmVjdCYgc2VsZWN0aW9uUmVjdCwKIAogdm9pZCBXZWJGcmFtZUltcGw6OnJl
c2V0TWF0Y2hDb3VudCgpCiB7CisgICAgaWYgKG1fdG90YWxNYXRjaENvdW50ID4gMCkKKyAgICAg
ICAgKyttX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOworCiAgICAgbV90b3RhbE1hdGNoQ291bnQg
PSAwOwogICAgIG1fZnJhbWVzU2NvcGluZ0NvdW50ID0gMDsKIH0KQEAgLTE5NDIsMjUgKzE5NjYs
MTkzIEBAIHZvaWQgV2ViRnJhbWVJbXBsOjpkaXNwYXRjaE1lc3NhZ2VFdmVudFdpdGhPcmlnaW5D
aGVjayhjb25zdCBXZWJTZWN1cml0eU9yaWdpbiYKIAogaW50IFdlYkZyYW1lSW1wbDo6ZmluZE1h
dGNoTWFya2Vyc1ZlcnNpb24oKSBjb25zdAogewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhp
cyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzEx
MS4KLSAgICByZXR1cm4gMDsKKyAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNh
bGxlZCBvbiB0aGUgbWFpbmZyYW1lLgorICAgIEFTU0VSVCghcGFyZW50KCkpOworICAgIHJldHVy
biBtX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOworfQorCit2b2lkIFdlYkZyYW1lSW1wbDo6Y2xl
YXJGaW5kTWF0Y2hlc0NhY2hlKCkKK3sKKyAgICBpZiAoIW1fZmluZE1hdGNoZXNDYWNoZS5pc0Vt
cHR5KCkpCisgICAgICAgIHZpZXdJbXBsKCktPm1haW5GcmFtZUltcGwoKS0+bV9maW5kTWF0Y2hN
YXJrZXJzVmVyc2lvbisrOworCisgICAgbV9maW5kTWF0Y2hlc0NhY2hlLmNsZWFyKCk7CisgICAg
bV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFsc2U7Cit9CisKK2Jvb2wgV2ViRnJhbWVJbXBs
Ojppc0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCgpIGNvbnN0Cit7CisgICAgY29uc3QgV2ViRnJhbWVJ
bXBsKiBtYWluRnJhbWVJbXBsID0gdmlld0ltcGwoKS0+bWFpbkZyYW1lSW1wbCgpOworICAgIGNv
bnN0IFdlYkZyYW1lSW1wbCogYWN0aXZlTWF0Y2hGcmFtZSA9IG1haW5GcmFtZUltcGwtPmFjdGl2
ZU1hdGNoRnJhbWUoKTsKKyAgICByZXR1cm4gYWN0aXZlTWF0Y2hGcmFtZSAmJiBhY3RpdmVNYXRj
aEZyYW1lLT5tX2FjdGl2ZU1hdGNoCisgICAgICAgICAgICAmJiBhY3RpdmVNYXRjaEZyYW1lLT5m
cmFtZSgpLT50cmVlKCktPmlzRGVzY2VuZGFudE9mKG1haW5GcmFtZUltcGwtPmZyYW1lKCkpOwor
fQorCit2b2lkIFdlYkZyYW1lSW1wbDo6dXBkYXRlRmluZE1hdGNoUmVjdHMoKQoreworICAgIFdl
YlNpemUgY3VycmVudENvbnRlbnRzU2l6ZSA9IGNvbnRlbnRzU2l6ZSgpOworICAgIGlmIChtX2Nv
bnRlbnRzU2l6ZUZvckN1cnJlbnRGaW5kTWF0Y2hSZWN0cyAhPSBjdXJyZW50Q29udGVudHNTaXpl
KSB7CisgICAgICAgIG1fY29udGVudHNTaXplRm9yQ3VycmVudEZpbmRNYXRjaFJlY3RzID0gY3Vy
cmVudENvbnRlbnRzU2l6ZTsKKyAgICAgICAgbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFs
c2U7CisgICAgfQorCisgICAgdW5zaWduZWQgZGVhZE1hdGNoZXMgPSAwOworICAgIGZvciAoVmVj
dG9yPEZpbmRNYXRjaD46Oml0ZXJhdG9yIGl0ID0gbV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2luKCk7
IGl0ICE9IG1fZmluZE1hdGNoZXNDYWNoZS5lbmQoKTsgKytpdCkgeworICAgICAgICBpZiAoIWl0
LT5tX3JhbmdlLT5ib3VuZGFyeVBvaW50c1ZhbGlkKCkgfHwgIWl0LT5tX3JhbmdlLT5zdGFydENv
bnRhaW5lcigpLT5pbkRvY3VtZW50KCkpCisgICAgICAgICAgICBpdC0+bV9yZWN0ID0gRmxvYXRS
ZWN0KCk7CisgICAgICAgIGVsc2UgaWYgKCFtX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQpCisgICAg
ICAgICAgICBpdC0+bV9yZWN0ID0gRmluZEluUGFnZUNvb3JkaW5hdGVzOjpmcm9tUmFuZ2UoaXQt
Pm1fcmFuZ2UpOworCisgICAgICAgIGlmIChpdC0+bV9yZWN0LmlzRW1wdHkoKSkKKyAgICAgICAg
ICAgICsrZGVhZE1hdGNoZXM7CisgICAgfQorCisgICAgLy8gUmVtb3ZlIGFueSBpbnZhbGlkIG1h
dGNoZXMgZnJvbSB0aGUgY2FjaGUuCisgICAgaWYgKGRlYWRNYXRjaGVzKSB7CisgICAgICAgIFZl
Y3RvcjxGaW5kTWF0Y2g+IGZpbHRlcmVkTWF0Y2hlczsKKyAgICAgICAgZmlsdGVyZWRNYXRjaGVz
LnJlc2VydmVDYXBhY2l0eShtX2ZpbmRNYXRjaGVzQ2FjaGUuc2l6ZSgpIC0gZGVhZE1hdGNoZXMp
OworCisgICAgICAgIGZvciAoVmVjdG9yPEZpbmRNYXRjaD46OmNvbnN0X2l0ZXJhdG9yIGl0ID0g
bV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2luKCk7IGl0ICE9IG1fZmluZE1hdGNoZXNDYWNoZS5lbmQo
KTsgKytpdCkKKyAgICAgICAgICAgIGlmICghaXQtPm1fcmVjdC5pc0VtcHR5KCkpCisgICAgICAg
ICAgICAgICAgZmlsdGVyZWRNYXRjaGVzLmFwcGVuZCgqaXQpOworCisgICAgICAgIG1fZmluZE1h
dGNoZXNDYWNoZS5zd2FwKGZpbHRlcmVkTWF0Y2hlcyk7CisgICAgfQorCisgICAgLy8gSW52YWxp
ZGF0ZSB0aGUgcmVjdHMgaW4gY2hpbGQgZnJhbWVzLiBXaWxsIGJlIHVwZGF0ZWQgbGF0ZXIgZHVy
aW5nIHRyYXZlcnNhbC4KKyAgICBpZiAoIW1fZmluZE1hdGNoUmVjdHNBcmVWYWxpZCkKKyAgICAg
ICAgZm9yIChXZWJGcmFtZSogY2hpbGQgPSBmaXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNo
aWxkLT5uZXh0U2libGluZygpKQorICAgICAgICAgICAgc3RhdGljX2Nhc3Q8V2ViRnJhbWVJbXBs
Kj4oY2hpbGQpLT5tX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQgPSBmYWxzZTsKKworICAgIG1fZmlu
ZE1hdGNoUmVjdHNBcmVWYWxpZCA9IHRydWU7CiB9CiAKIFdlYkZsb2F0UmVjdCBXZWJGcmFtZUlt
cGw6OmFjdGl2ZUZpbmRNYXRjaFJlY3QoKQogewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhp
cyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzEx
MS4KLSAgICByZXR1cm4gV2ViRmxvYXRSZWN0KCk7CisgICAgLy8gVGhpcyBmdW5jdGlvbiBzaG91
bGQgb25seSBiZSBjYWxsZWQgb24gdGhlIG1haW5mcmFtZS4KKyAgICBBU1NFUlQoIXBhcmVudCgp
KTsKKworICAgIGlmICghaXNBY3RpdmVNYXRjaEZyYW1lVmFsaWQoKSkKKyAgICAgICAgcmV0dXJu
IFdlYkZsb2F0UmVjdCgpOworCisgICAgcmV0dXJuIFdlYkZsb2F0UmVjdChGaW5kSW5QYWdlQ29v
cmRpbmF0ZXM6OmZyb21SYW5nZShtX2N1cnJlbnRBY3RpdmVNYXRjaEZyYW1lLT5tX2FjdGl2ZU1h
dGNoKSk7CiB9CiAKIHZvaWQgV2ViRnJhbWVJbXBsOjpmaW5kTWF0Y2hSZWN0cyhXZWJWZWN0b3I8
V2ViRmxvYXRSZWN0PiYgb3V0cHV0UmVjdHMpCiB7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCB0
aGlzIGFzIHBhcnQgb2YgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkz
MTExLgorICAgIC8vIFRoaXMgZnVuY3Rpb24gc2hvdWxkIG9ubHkgYmUgY2FsbGVkIG9uIHRoZSBt
YWluZnJhbWUuCisgICAgQVNTRVJUKCFwYXJlbnQoKSk7CisKKyAgICBWZWN0b3I8V2ViRmxvYXRS
ZWN0PiBtYXRjaFJlY3RzOworICAgIGZvciAoV2ViRnJhbWVJbXBsKiBmcmFtZSA9IHRoaXM7IGZy
YW1lOyBmcmFtZSA9IHN0YXRpY19jYXN0PFdlYkZyYW1lSW1wbCo+KGZyYW1lLT50cmF2ZXJzZU5l
eHQoZmFsc2UpKSkKKyAgICAgICAgZnJhbWUtPmFwcGVuZEZpbmRNYXRjaFJlY3RzKG1hdGNoUmVj
dHMpOworCisgICAgb3V0cHV0UmVjdHMgPSBtYXRjaFJlY3RzOworfQorCit2b2lkIFdlYkZyYW1l
SW1wbDo6YXBwZW5kRmluZE1hdGNoUmVjdHMoVmVjdG9yPFdlYkZsb2F0UmVjdD4mIGZyYW1lUmVj
dHMpCit7CisgICAgdXBkYXRlRmluZE1hdGNoUmVjdHMoKTsKKyAgICBmcmFtZVJlY3RzLnJlc2Vy
dmVDYXBhY2l0eShmcmFtZVJlY3RzLnNpemUoKSArIG1fZmluZE1hdGNoZXNDYWNoZS5zaXplKCkp
OworICAgIGZvciAoVmVjdG9yPEZpbmRNYXRjaD46OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9maW5k
TWF0Y2hlc0NhY2hlLmJlZ2luKCk7IGl0ICE9IG1fZmluZE1hdGNoZXNDYWNoZS5lbmQoKTsgKytp
dCkgeworICAgICAgICBBU1NFUlQoIWl0LT5tX3JlY3QuaXNFbXB0eSgpKTsKKyAgICAgICAgZnJh
bWVSZWN0cy5hcHBlbmQoaXQtPm1fcmVjdCk7CisgICAgfQogfQogCiBpbnQgV2ViRnJhbWVJbXBs
OjpzZWxlY3ROZWFyZXN0RmluZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9pbnQmIHBvaW50LCBXZWJS
ZWN0KiBzZWxlY3Rpb25SZWN0KQogewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcyBhcyBw
YXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzExMS4KLSAg
ICByZXR1cm4gMDsKKyAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBv
biB0aGUgbWFpbmZyYW1lLgorICAgIEFTU0VSVCghcGFyZW50KCkpOworCisgICAgV2ViRnJhbWVJ
bXBsKiBiZXN0RnJhbWUgPSAwOworICAgIGludCBpbmRleEluQmVzdEZyYW1lID0gLTE7CisgICAg
ZmxvYXQgZGlzdGFuY2VJbkJlc3RGcmFtZSA9IEZMVF9NQVg7CisKKyAgICBmb3IgKFdlYkZyYW1l
SW1wbCogZnJhbWUgPSB0aGlzOyBmcmFtZTsgZnJhbWUgPSBzdGF0aWNfY2FzdDxXZWJGcmFtZUlt
cGwqPihmcmFtZS0+dHJhdmVyc2VOZXh0KGZhbHNlKSkpIHsKKyAgICAgICAgZmxvYXQgZGlzdGFu
Y2VJbkZyYW1lOworICAgICAgICBpbnQgaW5kZXhJbkZyYW1lID0gZnJhbWUtPm5lYXJlc3RGaW5k
TWF0Y2gocG9pbnQsIGRpc3RhbmNlSW5GcmFtZSk7CisgICAgICAgIGlmIChkaXN0YW5jZUluRnJh
bWUgPCBkaXN0YW5jZUluQmVzdEZyYW1lKSB7CisgICAgICAgICAgICBiZXN0RnJhbWUgPSBmcmFt
ZTsKKyAgICAgICAgICAgIGluZGV4SW5CZXN0RnJhbWUgPSBpbmRleEluRnJhbWU7CisgICAgICAg
ICAgICBkaXN0YW5jZUluQmVzdEZyYW1lID0gZGlzdGFuY2VJbkZyYW1lOworICAgICAgICB9Cisg
ICAgfQorCisgICAgaWYgKGluZGV4SW5CZXN0RnJhbWUgIT0gLTEpCisgICAgICAgIHJldHVybiBi
ZXN0RnJhbWUtPnNlbGVjdEZpbmRNYXRjaChzdGF0aWNfY2FzdDx1bnNpZ25lZD4oaW5kZXhJbkJl
c3RGcmFtZSksIHNlbGVjdGlvblJlY3QpOworCisgICAgcmV0dXJuIC0xOworfQorCitpbnQgV2Vi
RnJhbWVJbXBsOjpuZWFyZXN0RmluZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9pbnQmIHBvaW50LCBm
bG9hdCYgZGlzdGFuY2VTcXVhcmVkKQoreworICAgIHVwZGF0ZUZpbmRNYXRjaFJlY3RzKCk7CisK
KyAgICBpbnQgbmVhcmVzdCA9IC0xOworICAgIGRpc3RhbmNlU3F1YXJlZCA9IEZMVF9NQVg7Cisg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2ZpbmRNYXRjaGVzQ2FjaGUuc2l6ZSgpOyArK2kp
IHsKKyAgICAgICAgQVNTRVJUKCFtX2ZpbmRNYXRjaGVzQ2FjaGVbaV0ubV9yZWN0LmlzRW1wdHko
KSk7CisgICAgICAgIEZsb2F0U2l6ZSBvZmZzZXQgPSBwb2ludCAtIG1fZmluZE1hdGNoZXNDYWNo
ZVtpXS5tX3JlY3QuY2VudGVyKCk7CisgICAgICAgIGZsb2F0IHdpZHRoID0gb2Zmc2V0LndpZHRo
KCk7CisgICAgICAgIGZsb2F0IGhlaWdodCA9IG9mZnNldC5oZWlnaHQoKTsKKyAgICAgICAgZmxv
YXQgY3VycmVudERpc3RhbmNlU3F1YXJlZCA9IHdpZHRoICogd2lkdGggKyBoZWlnaHQgKiBoZWln
aHQ7CisgICAgICAgIGlmIChjdXJyZW50RGlzdGFuY2VTcXVhcmVkIDwgZGlzdGFuY2VTcXVhcmVk
KSB7CisgICAgICAgICAgICBuZWFyZXN0ID0gaTsKKyAgICAgICAgICAgIGRpc3RhbmNlU3F1YXJl
ZCA9IGN1cnJlbnREaXN0YW5jZVNxdWFyZWQ7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJu
IG5lYXJlc3Q7Cit9CisKK2ludCBXZWJGcmFtZUltcGw6OnNlbGVjdEZpbmRNYXRjaCh1bnNpZ25l
ZCBpbmRleCwgV2ViUmVjdCogc2VsZWN0aW9uUmVjdCkKK3sKKyAgICBBU1NFUlQoaW5kZXggPCBt
X2ZpbmRNYXRjaGVzQ2FjaGUuc2l6ZSgpKTsKKworICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSBt
X2ZpbmRNYXRjaGVzQ2FjaGVbaW5kZXhdLm1fcmFuZ2U7CisgICAgaWYgKCFyYW5nZS0+Ym91bmRh
cnlQb2ludHNWYWxpZCgpIHx8ICFyYW5nZS0+c3RhcnRDb250YWluZXIoKS0+aW5Eb2N1bWVudCgp
KQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICAvLyBDaGVjayBpZiB0aGUgbWF0Y2ggaXMgYWxy
ZWFkeSBzZWxlY3RlZC4KKyAgICBXZWJGcmFtZUltcGwqIGFjdGl2ZU1hdGNoRnJhbWUgPSB2aWV3
SW1wbCgpLT5tYWluRnJhbWVJbXBsKCktPm1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWU7CisgICAg
aWYgKHRoaXMgIT0gYWN0aXZlTWF0Y2hGcmFtZSB8fCAhbV9hY3RpdmVNYXRjaCB8fCAhYXJlUmFu
Z2VzRXF1YWwobV9hY3RpdmVNYXRjaC5nZXQoKSwgcmFuZ2UuZ2V0KCkpKSB7CisgICAgICAgIGlm
IChpc0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCgpKQorICAgICAgICAgICAgYWN0aXZlTWF0Y2hGcmFt
ZS0+c2V0TWFya2VyQWN0aXZlKGFjdGl2ZU1hdGNoRnJhbWUtPm1fYWN0aXZlTWF0Y2guZ2V0KCks
IGZhbHNlKTsKKworICAgICAgICBtX2FjdGl2ZU1hdGNoSW5kZXhJbkN1cnJlbnRGcmFtZSA9IG1f
ZmluZE1hdGNoZXNDYWNoZVtpbmRleF0ubV9vcmRpbmFsIC0gMTsKKworICAgICAgICAvLyBTZXQg
dGhpcyBmcmFtZSBhcyB0aGUgYWN0aXZlIGZyYW1lICh0aGUgb25lIHdpdGggdGhlIGFjdGl2ZSBo
aWdobGlnaHQpLgorICAgICAgICB2aWV3SW1wbCgpLT5tYWluRnJhbWVJbXBsKCktPm1fY3VycmVu
dEFjdGl2ZU1hdGNoRnJhbWUgPSB0aGlzOworICAgICAgICB2aWV3SW1wbCgpLT5zZXRGb2N1c2Vk
RnJhbWUodGhpcyk7CisKKyAgICAgICAgbV9hY3RpdmVNYXRjaCA9IHJhbmdlLnJlbGVhc2UoKTsK
KyAgICAgICAgc2V0TWFya2VyQWN0aXZlKG1fYWN0aXZlTWF0Y2guZ2V0KCksIHRydWUpOworCisg
ICAgICAgIC8vIENsZWFyIGFueSB1c2VyIHNlbGVjdGlvbiwgdG8gbWFrZSBzdXJlIEZpbmQgTmV4
dCBjb250aW51ZXMgb24gZnJvbSB0aGUgbWF0Y2ggd2UganVzdCBhY3RpdmF0ZWQuCisgICAgICAg
IGV4ZWN1dGVDb21tYW5kKFdlYlN0cmluZzo6ZnJvbVVURjgoIlVuc2VsZWN0IikpOworCisgICAg
ICAgIC8vIE1ha2Ugc3VyZSBubyBub2RlIGlzIGZvY3VzZWQuIFNlZSBodHRwOi8vY3JidWcuY29t
LzM4NzAwLgorICAgICAgICBpZiAoZnJhbWUoKS0+ZG9jdW1lbnQoKSkKKyAgICAgICAgICAgIGZy
YW1lKCktPmRvY3VtZW50KCktPnNldEZvY3VzZWROb2RlKDApOworICAgIH0KKworICAgIEludFJl
Y3QgYWN0aXZlTWF0Y2hSZWN0OworICAgIEludFJlY3QgYWN0aXZlTWF0Y2hCb3VuZGluZ0JveCA9
IGVuY2xvc2luZ0ludFJlY3QobV9hY3RpdmVNYXRjaC0+ZW5jbG9zaW5nQm91bmRpbmdCb3goKSk7
CisKKyAgICBpZiAoIWFjdGl2ZU1hdGNoQm91bmRpbmdCb3guaXNFbXB0eSgpKSB7CisgICAgICAg
IGlmIChtX2FjdGl2ZU1hdGNoLT5maXJzdE5vZGUoKSAmJiBtX2FjdGl2ZU1hdGNoLT5maXJzdE5v
ZGUoKS0+cmVuZGVyZXIoKSkKKyAgICAgICAgICAgIG1fYWN0aXZlTWF0Y2gtPmZpcnN0Tm9kZSgp
LT5yZW5kZXJlcigpLT5zY3JvbGxSZWN0VG9WaXNpYmxlKGFjdGl2ZU1hdGNoQm91bmRpbmdCb3gs
CisgICAgICAgICAgICAgICAgICAgIFNjcm9sbEFsaWdubWVudDo6YWxpZ25DZW50ZXJJZk5lZWRl
ZCwgU2Nyb2xsQWxpZ25tZW50OjphbGlnbkNlbnRlcklmTmVlZGVkKTsKKworICAgICAgICAvLyBa
b29tIHRvIHRoZSBhY3RpdmUgbWF0Y2guCisgICAgICAgIGFjdGl2ZU1hdGNoUmVjdCA9IGZyYW1l
VmlldygpLT5jb250ZW50c1RvV2luZG93KGFjdGl2ZU1hdGNoQm91bmRpbmdCb3gpOworICAgICAg
ICB2aWV3SW1wbCgpLT56b29tVG9GaW5kSW5QYWdlUmVjdChhY3RpdmVNYXRjaFJlY3QpOworICAg
IH0KKworICAgIGlmIChzZWxlY3Rpb25SZWN0KQorICAgICAgICAqc2VsZWN0aW9uUmVjdCA9IGFj
dGl2ZU1hdGNoUmVjdDsKKworICAgIHJldHVybiBvcmRpbmFsT2ZGaXJzdE1hdGNoRm9yRnJhbWUo
dGhpcykgKyBtX2FjdGl2ZU1hdGNoSW5kZXhJbkN1cnJlbnRGcmFtZSArIDE7CiB9CiAKIHZvaWQg
V2ViRnJhbWVJbXBsOjpkZWxpdmVySW50ZW50KGNvbnN0IFdlYkludGVudCYgaW50ZW50LCBXZWJN
ZXNzYWdlUG9ydENoYW5uZWxBcnJheSogcG9ydHMsIFdlYkRlbGl2ZXJlZEludGVudENsaWVudCog
aW50ZW50Q2xpZW50KQpAQCAtMjA4MCw2ICsyMjcyLDggQEAgV2ViRnJhbWVJbXBsOjpXZWJGcmFt
ZUltcGwoV2ViRnJhbWVDbGllbnQqIGNsaWVudCkKICAgICAsIG1fZnJhbWVzU2NvcGluZ0NvdW50
KC0xKQogICAgICwgbV9zY29waW5nQ29tcGxldGUoZmFsc2UpCiAgICAgLCBtX25leHRJbnZhbGlk
YXRlQWZ0ZXIoMCkKKyAgICAsIG1fZmluZE1hdGNoTWFya2Vyc1ZlcnNpb24oMCkKKyAgICAsIG1f
ZmluZE1hdGNoUmVjdHNBcmVWYWxpZChmYWxzZSkKICAgICAsIG1fYW5pbWF0aW9uQ29udHJvbGxl
cih0aGlzKQogICAgICwgbV9pZGVudGlmaWVyKGdlbmVyYXRlRnJhbWVJZGVudGlmaWVyKCkpCiAg
ICAgLCBtX2luU2FtZURvY3VtZW50SGlzdG9yeUxvYWQoZmFsc2UpCkBAIC0yMTU1LDYgKzIzNDks
MTUgQEAgUGFzc1JlZlB0cjxGcmFtZT4gV2ViRnJhbWVJbXBsOjpjcmVhdGVDaGlsZEZyYW1lKAog
ICAgIHJldHVybiBjaGlsZEZyYW1lLnJlbGVhc2UoKTsKIH0KIAordm9pZCBXZWJGcmFtZUltcGw6
OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBJbnRTaXplJiBzaXplKQoreworICAgIC8vIFRo
aXMgaXMgb25seSBwb3NzaWJsZSBvbiB0aGUgbWFpbiBmcmFtZS4KKyAgICBpZiAobV90b3RhbE1h
dGNoQ291bnQgPiAwKSB7CisgICAgICAgIEFTU0VSVCghcGFyZW50KCkpOworICAgICAgICArK21f
ZmluZE1hdGNoTWFya2Vyc1ZlcnNpb247CisgICAgfQorfQorCiB2b2lkIFdlYkZyYW1lSW1wbDo6
Y3JlYXRlRnJhbWVWaWV3KCkKIHsKICAgICBBU1NFUlQobV9mcmFtZSk7IC8vIElmIG1fZnJhbWUg
ZG9lc24ndCBleGlzdCwgd2UgcHJvYmFibHkgZGlkbid0IGluaXQgcHJvcGVybHkuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaCBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5oCmluZGV4IDVmY2E4ZGQ2ODMzMTE5ZTUw
MmNmMGYxMTQ5ODU5YzkwYmE4NDQzZjEuLjRlNGFiM2RjYWVhOTA3ZmY5YmY4YjY4Y2U1ZmY3ZWEx
MWNjZTg5ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1l
SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5oCkBA
IC0zNyw2ICszNyw3IEBACiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRl
ckNsaWVudEltcGwuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorI2luY2x1ZGUgInBs
YXRmb3JtL1dlYlNpemUuaCIKICNpbmNsdWRlIDx3dGYvQ29tcGlsZXIuaD4KICNpbmNsdWRlIDx3
dGYvT3duUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KQEAgLTI0Niw2ICsyNDcs
OSBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlQ2hpbGRG
cmFtZSgKICAgICAgICAgY29uc3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIFdlYkNvcmU6
OkhUTUxGcmFtZU93bmVyRWxlbWVudCopOwogCisgICAgLy8gQ2FsbGVkIHdoZW4gdGhlIHNpemUg
b2YgdGhlIGNvbnRhaW5lZCBkb2N1bWVudCBjaGFuZ2VzLgorICAgIHZvaWQgZGlkQ2hhbmdlQ29u
dGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKTsKKwogICAgIHZvaWQgY3JlYXRlRnJh
bWVWaWV3KCk7CiAKICAgICBzdGF0aWMgV2ViRnJhbWVJbXBsKiBmcm9tRnJhbWUoV2ViQ29yZTo6
RnJhbWUqIGZyYW1lKTsKQEAgLTI3MCw2ICsyNzQsMTAgQEAgcHVibGljOgogICAgIC8vIHZhbHVl
IGNhbiBiZSAwIGlmIG5vIGZyYW1lIGhhcyBhbiBhY3RpdmUgbWF0Y2guCiAgICAgY29uc3QgV2Vi
RnJhbWVJbXBsKiBhY3RpdmVNYXRjaEZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9jdXJyZW50QWN0
aXZlTWF0Y2hGcmFtZTsgfQogCisgICAgLy8gUmV0dXJucyB0aGUgYWN0aXZlIG1hdGNoIGluIHRo
ZSBjdXJyZW50IGZyYW1lLiBDb3VsZCBiZSBhIG51bGwgcmFuZ2UgaWYKKyAgICAvLyB0aGUgbG9j
YWwgZnJhbWUgaGFzIG5vIGFjdGl2ZSBtYXRjaC4KKyAgICBXZWJDb3JlOjpSYW5nZSogYWN0aXZl
TWF0Y2goKSBjb25zdCB7IHJldHVybiBtX2FjdGl2ZU1hdGNoLmdldCgpOyB9CisKICAgICAvLyBX
aGVuIGEgRmluZCBvcGVyYXRpb24gZW5kcywgd2Ugd2FudCB0byBzZXQgdGhlIHNlbGVjdGlvbiB0
byB3aGF0IHdhcyBhY3RpdmUKICAgICAvLyBhbmQgc2V0IGZvY3VzIHRvIHRoZSBmaXJzdCBmb2N1
c2FibGUgbm9kZSB3ZSBmaW5kIChzdGFydGluZyB3aXRoIHRoZSBmaXJzdAogICAgIC8vIG5vZGUg
aW4gdGhlIG1hdGNoZWQgcmFuZ2UgYW5kIGdvaW5nIHVwIHRoZSBpbmhlcml0YW5jZSBjaGFpbiku
IElmIHdlIGZpbmQKQEAgLTI5NSw2ICszMDMsMTkgQEAgcHJpdmF0ZToKICAgICBmcmllbmQgY2xh
c3MgRGVmZXJyZWRTY29wZVN0cmluZ01hdGNoZXM7CiAgICAgZnJpZW5kIGNsYXNzIEZyYW1lTG9h
ZGVyQ2xpZW50SW1wbDsKIAorICAgIHN0cnVjdCBGaW5kTWF0Y2ggeworICAgICAgICBSZWZQdHI8
V2ViQ29yZTo6UmFuZ2U+IG1fcmFuZ2U7CisKKyAgICAgICAgLy8gMS1iYXNlZCBpbmRleCB3aXRo
aW4gdGhpcyBmcmFtZS4KKyAgICAgICAgaW50IG1fb3JkaW5hbDsKKworICAgICAgICAvLyBJbiBm
aW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMuCisgICAgICAgIC8vIExhemlseSBjYWxjdWxhdGVkIGJ5
IHVwZGF0ZUZpbmRNYXRjaFJlY3RzLgorICAgICAgICBXZWJDb3JlOjpGbG9hdFJlY3QgbV9yZWN0
OworCisgICAgICAgIEZpbmRNYXRjaChQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiwgaW50IG9y
ZGluYWwpOworICAgIH07CisKICAgICAvLyBBIGJpdCBtYXNrIHNwZWNpZnlpbmcgYXJlYSBvZiB0
aGUgZnJhbWUgdG8gaW52YWxpZGF0ZS4KICAgICBlbnVtIEFyZWFUb0ludmFsaWRhdGUgewogICAg
ICAgSW52YWxpZGF0ZU5vdGhpbmcsCkBAIC0zMTMsNiArMzM0LDMyIEBAIHByaXZhdGU6CiAgICAg
dm9pZCByZXBvcnRGaW5kSW5QYWdlU2VsZWN0aW9uKAogICAgICAgICBjb25zdCBXZWJSZWN0JiBz
ZWxlY3Rpb25SZWN0LCBpbnQgYWN0aXZlTWF0Y2hPcmRpbmFsLCBpbnQgaWRlbnRpZmllcik7CiAK
KyAgICAvLyBDbGVhciB0aGUgZmluZC1pbi1wYWdlIG1hdGNoZXMgY2FjaGUgZm9yY2luZyByZWN0
cyB0byBiZSBmdWxseQorICAgIC8vIGNhbGN1bGF0ZWQgYWdhaW4gbmV4dCB0aW1lIHVwZGF0ZUZp
bmRNYXRjaFJlY3RzIGlzIGNhbGxlZC4KKyAgICB2b2lkIGNsZWFyRmluZE1hdGNoZXNDYWNoZSgp
OworCisgICAgLy8gQ2hlY2sgaWYgdGhlIGFjdGl2ZU1hdGNoRnJhbWUgc3RpbGwgZXhpc3RzIGlu
IHRoZSBmcmFtZSB0cmVlLgorICAgIGJvb2wgaXNBY3RpdmVNYXRjaEZyYW1lVmFsaWQoKSBjb25z
dDsKKworICAgIC8vIFJldHVybiB0aGUgaW5kZXggaW4gdGhlIGZpbmQtaW4tcGFnZSBjYWNoZSBv
ZiB0aGUgbWF0Y2ggY2xvc2VzdCB0byB0aGUKKyAgICAvLyBwcm92aWRlZCBwb2ludCBpbiBmaW5k
LWluLXBhZ2UgY29vcmRpbmF0ZXMsIG9yIC0xIGluIGNhc2Ugb2YgZXJyb3IuCisgICAgLy8gVGhl
IHNxdWFyZWQgZGlzdGFuY2UgdG8gdGhlIGNsb3Nlc3QgbWF0Y2ggaXMgcmV0dXJuZWQgaW4gdGhl
IGRpc3RhbmNlU3F1YXJlZCBwYXJhbWV0ZXIuCisgICAgaW50IG5lYXJlc3RGaW5kTWF0Y2goY29u
c3QgV2ViRmxvYXRQb2ludCYsIGZsb2F0JiBkaXN0YW5jZVNxdWFyZWQpOworCisgICAgLy8gU2Vs
ZWN0IGEgZmluZC1pbi1wYWdlIG1hdGNoIG1hcmtlciBpbiB0aGUgY3VycmVudCBmcmFtZSB1c2lu
ZyBhIGNhY2hlCisgICAgLy8gbWF0Y2ggaW5kZXggcmV0dXJuZWQgYnkgbmVhcmVzdEZpbmRNYXRj
aC4gUmV0dXJucyB0aGUgb3JkaW5hbCBvZiB0aGUgbmV3CisgICAgLy8gc2VsZWN0ZWQgbWF0Y2gg
b3IgLTEgaW4gY2FzZSBvZiBlcnJvci4gQWxzbyBwcm92aWRlcyB0aGUgYm91bmRpbmcgYm94IG9m
CisgICAgLy8gdGhlIG1hcmtlciBpbiB3aW5kb3cgY29vcmRpbmF0ZXMgaWYgc2VsZWN0aW9uUmVj
dCBpcyBub3QgbnVsbC4KKyAgICBpbnQgc2VsZWN0RmluZE1hdGNoKHVuc2lnbmVkIGluZGV4LCBX
ZWJSZWN0KiBzZWxlY3Rpb25SZWN0KTsKKworICAgIC8vIENvbXB1dGUgYW5kIGNhY2hlIHRoZSBy
ZWN0cyBmb3IgRmluZE1hdGNoZXMgaWYgcmVxdWlyZWQuCisgICAgLy8gUmVjdHMgYXJlIGF1dG9t
YXRpY2FsbHkgaW52YWxpZGF0ZWQgaW4gY2FzZSBvZiBjb250ZW50IHNpemUgY2hhbmdlcywKKyAg
ICAvLyBwcm9wYWdhdGluZyB0aGUgaW52YWxpZGF0aW9uIHRvIGNoaWxkIGZyYW1lcy4KKyAgICB2
b2lkIHVwZGF0ZUZpbmRNYXRjaFJlY3RzKCk7CisKKyAgICAvLyBBcHBlbmQgdGhlIGZpbmQtaW4t
cGFnZSBtYXRjaCByZWN0cyBvZiB0aGUgY3VycmVudCBmcmFtZSB0byB0aGUgcHJvdmlkZWQgdmVj
dG9yLgorICAgIHZvaWQgYXBwZW5kRmluZE1hdGNoUmVjdHMoVmVjdG9yPFdlYkZsb2F0UmVjdD4m
IGZyYW1lUmVjdHMpOworCiAgICAgLy8gSW52YWxpZGF0ZXMgYSBjZXJ0YWluIGFyZWEgd2l0aGlu
IHRoZSBmcmFtZS4KICAgICB2b2lkIGludmFsaWRhdGVBcmVhKEFyZWFUb0ludmFsaWRhdGUpOwog
CkBAIC00MTIsNiArNDU5LDIxIEBAIHByaXZhdGU6CiAgICAgLy8gQSBsaXN0IG9mIGFsbCBvZiB0
aGUgcGVuZGluZyBjYWxscyB0byBzY29wZVN0cmluZ01hdGNoZXMuCiAgICAgVmVjdG9yPERlZmVy
cmVkU2NvcGVTdHJpbmdNYXRjaGVzKj4gbV9kZWZlcnJlZFNjb3BpbmdXb3JrOwogCisgICAgLy8g
VmVyc2lvbiBudW1iZXIgaW5jcmVtZW50ZWQgb24gdGhlIG1haW4gZnJhbWUgb25seSB3aGVuZXZl
ciB0aGUgZG9jdW1lbnQKKyAgICAvLyBmaW5kLWluLXBhZ2UgbWF0Y2ggbWFya2VycyBjaGFuZ2Uu
IEl0IHNob3VsZCBiZSAwIGZvciBhbGwgb3RoZXIgZnJhbWVzLgorICAgIGludCBtX2ZpbmRNYXRj
aE1hcmtlcnNWZXJzaW9uOworCisgICAgLy8gTG9jYWwgY2FjaGUgb2YgdGhlIGZpbmQgbWF0Y2gg
bWFya2VycyBjdXJyZW50bHkgZGlzcGxheWVkIGZvciB0aGlzIGZyYW1lLgorICAgIFZlY3RvcjxG
aW5kTWF0Y2g+IG1fZmluZE1hdGNoZXNDYWNoZTsKKworICAgIC8vIERldGVybWluZXMgaWYgdGhl
IHJlY3RzIGluIHRoZSBmaW5kLWluLXBhZ2UgbWF0Y2hlcyBjYWNoZSBvZiB0aGlzIGZyYW1lCisg
ICAgLy8gYXJlIGludmFsaWQgYW5kIHNob3VsZCBiZSByZWNvbXB1dGVkLgorICAgIGJvb2wgbV9m
aW5kTWF0Y2hSZWN0c0FyZVZhbGlkOworCisgICAgLy8gQ29udGVudHMgc2l6ZSB3aGVuIGZpbmQt
aW4tcGFnZSBtYXRjaCByZWN0cyB3ZXJlIGxhc3QgY29tcHV0ZWQgZm9yIHRoaXMKKyAgICAvLyBm
cmFtZSdzIGNhY2hlLgorICAgIFdlYlNpemUgbV9jb250ZW50c1NpemVGb3JDdXJyZW50RmluZE1h
dGNoUmVjdHM7CisKICAgICAvLyBWYWxpZCBiZXR3ZWVuIGNhbGxzIHRvIEJlZ2luUHJpbnQoKSBh
bmQgRW5kUHJpbnQoKS4gQ29udGFpbnRzIHRoZSBwcmludAogICAgIC8vIGluZm9ybWF0aW9uLiBJ
cyB1c2VkIGJ5IFByaW50UGFnZSgpLgogICAgIE93blB0cjxDaHJvbWVQcmludENvbnRleHQ+IG1f
cHJpbnRDb250ZXh0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9X
ZWJGcmFtZVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRl
c3QuY3BwCmluZGV4IDliNzQ1ZTAyOWEzMzJiOWE5NmJiN2JiYmNjYzhlYzRkODQ0MjNmNDQuLmNk
ZTk2OTYyMzVmNGMxMmM4NDA5YzE1OGIxNDgyZjUwZWZjZWRiMDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKQEAgLTMyLDkgKzMyLDExIEBACiAK
ICNpbmNsdWRlICJXZWJGcmFtZS5oIgogCisjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVk
ZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZVRlc3RIZWxwZXJzLmgiCiAjaW5jbHVkZSAiRnJh
bWVWaWV3LmgiCisjaW5jbHVkZSAiUmFuZ2UuaCIKICNpbmNsdWRlICJSZXNvdXJjZUVycm9yLmgi
CiAjaW5jbHVkZSAiVVJMVGVzdEhlbHBlcnMuaCIKICNpbmNsdWRlICJXZWJEYXRhU291cmNlLmgi
CkBAIC01MSwxMSArNTMsMTQgQEAKICNpbmNsdWRlICJXZWJTZXR0aW5ncy5oIgogI2luY2x1ZGUg
IldlYlZpZXdDbGllbnQuaCIKICNpbmNsdWRlICJXZWJWaWV3SW1wbC5oIgorI2luY2x1ZGUgInBs
YXRmb3JtL1dlYkZsb2F0UmVjdC5oIgogI2luY2x1ZGUgInY4LmgiCiAjaW5jbHVkZSA8Z3Rlc3Qv
Z3Rlc3QuaD4KICNpbmNsdWRlIDx3ZWJraXQvc3VwcG9ydC93ZWJraXRfc3VwcG9ydC5oPgogCiB1
c2luZyBuYW1lc3BhY2UgV2ViS2l0OwordXNpbmcgV2ViQ29yZTo6RmxvYXRSZWN0OwordXNpbmcg
V2ViQ29yZTo6UmFuZ2U7CiB1c2luZyBXZWJLaXQ6OlVSTFRlc3RIZWxwZXJzOjp0b0tVUkw7CiAK
IG5hbWVzcGFjZSB7CkBAIC04MDQsNCArODA5LDExNCBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBH
ZXRGdWxsSHRtbE9mUGFnZSkKICAgICBFWFBFQ1RfVFJVRShzZWxlY3Rpb25IdG1sLmlzRW1wdHko
KSk7CiB9CiAKK2NsYXNzIEZpbmRVcGRhdGVXZWJGcmFtZUNsaWVudCA6IHB1YmxpYyBXZWJGcmFt
ZUNsaWVudCB7CitwdWJsaWM6CisgICAgRmluZFVwZGF0ZVdlYkZyYW1lQ2xpZW50KCkKKyAgICAg
ICAgOiBtX2ZpbmRSZXN1bHRzQXJlUmVhZHkoZmFsc2UpCisgICAgeyB9CisKKyAgICB2aXJ0dWFs
IHZvaWQgcmVwb3J0RmluZEluUGFnZU1hdGNoQ291bnQoaW50IHJlcXVlc3RJZCwgaW50IGNvdW50
LCBib29sIGZpbmFsVXBkYXRlKSBPVkVSUklERQorICAgIHsKKyAgICAgICAgaWYgKGZpbmFsVXBk
YXRlKQorICAgICAgICAgICAgbV9maW5kUmVzdWx0c0FyZVJlYWR5ID0gdHJ1ZTsKKyAgICB9CisK
KyAgICBib29sIGZpbmRSZXN1bHRzQXJlUmVhZHkoKSBjb25zdCB7IHJldHVybiBtX2ZpbmRSZXN1
bHRzQXJlUmVhZHk7IH0KKworcHJpdmF0ZToKKyAgICBib29sIG1fZmluZFJlc3VsdHNBcmVSZWFk
eTsKK307CisKK1RFU1RfRihXZWJGcmFtZVRlc3QsIEZpbmRJblBhZ2VNYXRjaFJlY3RzKQorewor
ICAgIHJlZ2lzdGVyTW9ja2VkSHR0cFVSTExvYWQoImZpbmRfaW5fcGFnZS5odG1sIik7CisgICAg
cmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgiZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWwiKTsKKwor
ICAgIEZpbmRVcGRhdGVXZWJGcmFtZUNsaWVudCBjbGllbnQ7CisgICAgV2ViVmlldyogd2ViVmll
dyA9IEZyYW1lVGVzdEhlbHBlcnM6OmNyZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJm
aW5kX2luX3BhZ2UuaHRtbCIsIHRydWUsICZjbGllbnQpOworICAgIHdlYlZpZXctPnJlc2l6ZShX
ZWJTaXplKDY0MCwgNDgwKSk7CisgICAgd2ViVmlldy0+bGF5b3V0KCk7CisgICAgd2Via2l0X3N1
cHBvcnQ6OlJ1bkFsbFBlbmRpbmdNZXNzYWdlcygpOworCisgICAgc3RhdGljIGNvbnN0IGNoYXIq
IGtGaW5kU3RyaW5nID0gInJlc3VsdCI7CisgICAgc3RhdGljIGNvbnN0IGludCBrRmluZElkZW50
aWZpZXIgPSAxMjM0NTsKKyAgICBzdGF0aWMgY29uc3QgaW50IGtOdW1SZXN1bHRzID0gMTA7CisK
KyAgICBXZWJGaW5kT3B0aW9ucyBvcHRpb25zOworICAgIFdlYlN0cmluZyBzZWFyY2hUZXh0ID0g
V2ViU3RyaW5nOjpmcm9tVVRGOChrRmluZFN0cmluZyk7CisgICAgV2ViRnJhbWVJbXBsKiBtYWlu
RnJhbWUgPSBzdGF0aWNfY2FzdDxXZWJGcmFtZUltcGwqPih3ZWJWaWV3LT5tYWluRnJhbWUoKSk7
CisgICAgRVhQRUNUX1RSVUUobWFpbkZyYW1lLT5maW5kKGtGaW5kSWRlbnRpZmllciwgc2VhcmNo
VGV4dCwgb3B0aW9ucywgZmFsc2UsIDApKTsKKworICAgIGZvciAoV2ViRnJhbWUqIGZyYW1lID0g
bWFpbkZyYW1lOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJhdmVyc2VOZXh0KGZhbHNlKSkKKyAg
ICAgICAgZnJhbWUtPnNjb3BlU3RyaW5nTWF0Y2hlcyhrRmluZElkZW50aWZpZXIsIHNlYXJjaFRl
eHQsIG9wdGlvbnMsIHRydWUpOworCisgICAgd2Via2l0X3N1cHBvcnQ6OlJ1bkFsbFBlbmRpbmdN
ZXNzYWdlcygpOworICAgIEVYUEVDVF9UUlVFKGNsaWVudC5maW5kUmVzdWx0c0FyZVJlYWR5KCkp
OworCisgICAgV2ViVmVjdG9yPFdlYkZsb2F0UmVjdD4gd2ViTWF0Y2hSZWN0czsKKyAgICBtYWlu
RnJhbWUtPmZpbmRNYXRjaFJlY3RzKHdlYk1hdGNoUmVjdHMpOworICAgIEVYUEVDVF9FUSh3ZWJN
YXRjaFJlY3RzLnNpemUoKSwgc3RhdGljX2Nhc3Q8c2l6ZV90PihrTnVtUmVzdWx0cykpOworICAg
IGludCByZWN0c1ZlcnNpb24gPSBtYWluRnJhbWUtPmZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKCk7
CisKKyAgICBmb3IgKGludCByZXN1bHRJbmRleCA9IDA7IHJlc3VsdEluZGV4IDwga051bVJlc3Vs
dHM7ICsrcmVzdWx0SW5kZXgpIHsKKyAgICAgICAgRmxvYXRSZWN0IHJlc3VsdFJlY3QgPSBzdGF0
aWNfY2FzdDxGbG9hdFJlY3Q+KHdlYk1hdGNoUmVjdHNbcmVzdWx0SW5kZXhdKTsKKworICAgICAg
ICAvLyBTZWxlY3QgdGhlIG1hdGNoIGJ5IHRoZSBjZW50ZXIgb2YgaXRzIHJlY3QuCisgICAgICAg
IEVYUEVDVF9FUShtYWluRnJhbWUtPnNlbGVjdE5lYXJlc3RGaW5kTWF0Y2gocmVzdWx0UmVjdC5j
ZW50ZXIoKSwgMCksIHJlc3VsdEluZGV4ICsgMSk7CisKKyAgICAgICAgLy8gQ2hlY2sgdGhhdCB0
aGUgZmluZCByZXN1bHQgb3JkZXJpbmcgbWF0Y2hlcyB3aXRoIG91ciBleHBlY3RhdGlvbnMuCisg
ICAgICAgIFJhbmdlKiByZXN1bHQgPSBtYWluRnJhbWUtPmFjdGl2ZU1hdGNoRnJhbWUoKS0+YWN0
aXZlTWF0Y2goKTsKKyAgICAgICAgRVhQRUNUX1RSVUUocmVzdWx0KTsKKyAgICAgICAgcmVzdWx0
LT5zZXRFbmQocmVzdWx0LT5lbmRDb250YWluZXIoKSwgcmVzdWx0LT5lbmRPZmZzZXQoKSArIDIp
OworICAgICAgICBFWFBFQ1RfRVEocmVzdWx0LT50ZXh0KCksIFN0cmluZzo6Zm9ybWF0KCIlcyAl
ZCIsIGtGaW5kU3RyaW5nLCByZXN1bHRJbmRleCkpOworCisgICAgICAgIC8vIFZlcmlmeSB0aGF0
IHRoZSBleHBlY3RlZCBtYXRjaCByZWN0IGFsc28gbWF0Y2hlcyB0aGUgY3VycmVudGx5IGFjdGl2
ZSBtYXRjaC4KKyAgICAgICAgLy8gQ29tcGFyZSB0aGUgZW5jbG9zaW5nIHJlY3RzIHRvIHByZXZl
bnQgcHJlY2lzaW9uIGlzc3VlcyBjYXVzZWQgYnkgQ1NTIHRyYW5zZm9ybXMuCisgICAgICAgIEZs
b2F0UmVjdCBhY3RpdmVNYXRjaCA9IG1haW5GcmFtZS0+YWN0aXZlRmluZE1hdGNoUmVjdCgpOwor
ICAgICAgICBFWFBFQ1RfRVEoZW5jbG9zaW5nSW50UmVjdChhY3RpdmVNYXRjaCksIGVuY2xvc2lu
Z0ludFJlY3QocmVzdWx0UmVjdCkpOworCisgICAgICAgIC8vIFRoZSByZWN0cyB2ZXJzaW9uIHNo
b3VsZCBub3QgaGF2ZSBjaGFuZ2VkLgorICAgICAgICBFWFBFQ1RfRVEobWFpbkZyYW1lLT5maW5k
TWF0Y2hNYXJrZXJzVmVyc2lvbigpLCByZWN0c1ZlcnNpb24pOworICAgIH0KKworICAgIC8vIEFs
bCByZXN1bHRzIGFmdGVyIHRoZSBmaXJzdCB0d28gb25lcyBzaG91bGQgYmUgYmVsb3cgYmV0d2Vl
biB0aGVtIGluIHNjcm9sbC1pbmRlcGVuZGVudCBub3JtYWxpemVkIG1haW4gZnJhbWUgY29vcmRp
bmF0ZXMuCisgICAgLy8gVGhpcyBpcyBiZWNhdXNlIHJlc3VsdHMgMiB0byA5IGFyZSBpbnNpZGUg
YW4gaWZyYW1lIGxvY2F0ZWQgYmV0d2VlbiByZXN1bHRzIDAgYW5kIDEuIFRoaXMgYXBwbGllcyB0
byB0aGUgZml4ZWQgZGl2IHRvby4KKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzBdLnkg
PCB3ZWJNYXRjaFJlY3RzWzFdLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMF0u
eSA8IHdlYk1hdGNoUmVjdHNbMl0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1sw
XS55IDwgd2ViTWF0Y2hSZWN0c1szXS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3Rz
WzBdLnkgPCB3ZWJNYXRjaFJlY3RzWzRdLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVj
dHNbMF0ueSA8IHdlYk1hdGNoUmVjdHNbNV0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hS
ZWN0c1swXS55IDwgd2ViTWF0Y2hSZWN0c1s2XS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRj
aFJlY3RzWzBdLnkgPCB3ZWJNYXRjaFJlY3RzWzddLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1h
dGNoUmVjdHNbMF0ueSA8IHdlYk1hdGNoUmVjdHNbOF0ueSk7CisgICAgRVhQRUNUX1RSVUUod2Vi
TWF0Y2hSZWN0c1swXS55IDwgd2ViTWF0Y2hSZWN0c1s5XS55KTsKKworICAgIEVYUEVDVF9UUlVF
KHdlYk1hdGNoUmVjdHNbMV0ueSA+IHdlYk1hdGNoUmVjdHNbMl0ueSk7CisgICAgRVhQRUNUX1RS
VUUod2ViTWF0Y2hSZWN0c1sxXS55ID4gd2ViTWF0Y2hSZWN0c1szXS55KTsKKyAgICBFWFBFQ1Rf
VFJVRSh3ZWJNYXRjaFJlY3RzWzFdLnkgPiB3ZWJNYXRjaFJlY3RzWzRdLnkpOworICAgIEVYUEVD
VF9UUlVFKHdlYk1hdGNoUmVjdHNbMV0ueSA+IHdlYk1hdGNoUmVjdHNbNV0ueSk7CisgICAgRVhQ
RUNUX1RSVUUod2ViTWF0Y2hSZWN0c1sxXS55ID4gd2ViTWF0Y2hSZWN0c1s2XS55KTsKKyAgICBF
WFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzFdLnkgPiB3ZWJNYXRjaFJlY3RzWzddLnkpOworICAg
IEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMV0ueSA+IHdlYk1hdGNoUmVjdHNbOF0ueSk7Cisg
ICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1sxXS55ID4gd2ViTWF0Y2hSZWN0c1s5XS55KTsK
KworICAgIC8vIFJlc3VsdCAzIHNob3VsZCBiZSBiZWxvdyBib3RoIDIgYW5kIDQuIFRoaXMgaXMg
Y2F1c2VkIGJ5IHRoZSBDU1MgdHJhbnNmb3JtIGluIHRoZSBjb250YWluaW5nIGRpdi4KKyAgICAv
LyBJZiB0aGUgdHJhbnNmb3JtIGRvZXNuJ3Qgd29yayB0aGVuIDMgd2lsbCBiZSBiZXR3ZWVuIDIg
YW5kIDQuCisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1szXS55ID4gd2ViTWF0Y2hSZWN0
c1syXS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzNdLnkgPiB3ZWJNYXRjaFJl
Y3RzWzRdLnkpOworCisgICAgLy8gUmVzdWx0cyA2LCA3LCA4IGFuZCA5IHNob3VsZCBiZSBvbmUg
YmVsb3cgdGhlIG90aGVyIGluIHRoYXQgc2FtZSBvcmRlci4KKyAgICAvLyBJZiBvdmVyZmxvdzpz
Y3JvbGwgaXMgbm90IHByb3Blcmx5IGhhbmRsZWQgdGhlbiByZXN1bHQgOCB3b3VsZCBiZSBiZWxv
dyByZXN1bHQgOSBvcgorICAgIC8vIHJlc3VsdCA3IGFib3ZlIHJlc3VsdCA2IGRlcGVuZGluZyBv
biB0aGUgc2Nyb2xsLgorICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbNl0ueSA8IHdlYk1h
dGNoUmVjdHNbN10ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1s3XS55IDwgd2Vi
TWF0Y2hSZWN0c1s4XS55KTsKKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzhdLnkgPCB3
ZWJNYXRjaFJlY3RzWzldLnkpOworCisgICAgLy8gUmVzaXppbmcgc2hvdWxkIHVwZGF0ZSB0aGUg
cmVjdHMgdmVyc2lvbi4KKyAgICBtYWluRnJhbWUtPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShXZWJT
aXplKDgwMCwgNjAwKSk7CisgICAgRVhQRUNUX1RSVUUobWFpbkZyYW1lLT5maW5kTWF0Y2hNYXJr
ZXJzVmVyc2lvbigpICE9IHJlY3RzVmVyc2lvbik7CisKKyAgICB3ZWJWaWV3LT5jbG9zZSgpOwor
fQorCiB9IC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90
ZXN0cy9kYXRhL2ZpbmRfaW5fcGFnZS5odG1sIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0
cy9kYXRhL2ZpbmRfaW5fcGFnZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwOWM5ZGQwNjA1NTk1MWFjMmYy
NzJmMjhlOWExNTE4ZmFmZDdmYWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRl
bnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIG1heGltdW0tc2NhbGU9
MS4wLCB1c2VyLXNjYWxhYmxlPW5vIiAvPgorPC9oZWFkPgorPGJvZHk+CitUaGlzIGEgZmluZC1p
bi1wYWdlIG1hdGNoIHJlY3QgdGVzdC48L2JyPgorcmVzdWx0IDA8L2JyPgorPGlmcmFtZSBzcmM9
ImZpbmRfaW5fcGFnZV9mcmFtZS5odG1sIiBoZWlnaHQ9IjMwMCIgc2Nyb2xsaW5nPSJ5ZXMiPjwv
aWZyYW1lPgorPC9icj4KK3Jlc3VsdCAxCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWwg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlX2ZyYW1lLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNDdkMjlhZTBmZGQzNzg2MDZmN2UxMmM5YmQ5OTdkZTNiNjAzN2YyOAot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9maW5k
X2luX3BhZ2VfZnJhbWUuaHRtbApAQCAtMCwwICsxLDU4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorPGhlYWQ+Cis8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNl
LXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFi
bGU9bm8iIC8+Cis8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorZGl2LnRyYW5zZm9ybSB7CisgIGJh
Y2tncm91bmQtY29sb3I6ICMwMEZGMDA7CisgIHdpZHRoOiAxMDBweDsKKyAgaGVpZ2h0OiAxMDBw
eDsKKyAgcGFkZGluZy1sZWZ0OiAzMHB4OworICBwYWRkaW5nLXRvcDogMjBweDsKKyAgLXdlYmtp
dC10cmFuc2Zvcm06bWF0cml4KDAuODY2LDAuNSwtMC41LDAuODY2LDEyMCwxNTApOworfQorZGl2
LnNjcm9sbCB7CisgIGJhY2tncm91bmQtY29sb3I6ICMwMEZGRkY7CisgIHdpZHRoOiAxMDBweDsK
KyAgaGVpZ2h0OiAxMDBweDsKKyAgb3ZlcmZsb3c6IHNjcm9sbDsKK30KK2Rpdi5maXhlZCB7Cisg
IGJhY2tncm91bmQtY29sb3I6ICNGRjAwMDA7CisgIGxlZnQ6IDIwMHB4OworICB0b3A6IDUwcHg7
CisgIHdpZHRoOiAxMDBweDsKKyAgaGVpZ2h0OiAxMDBweDsKKyAgcG9zaXRpb246IGZpeGVkOwor
fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorVGhpcyBpcyBhIHRlc3QuCis8L2JyPjwvYnI+
Cis8L2JyPjwvYnI+Cis8L2JyPjwvYnI+CitGb28gYmFyLgorPC9icj48L2JyPgorPC9icj48L2Jy
PgorPC9icj48L2JyPgorcmVzdWx0IDIKKzxkaXYgY2xhc3M9InRyYW5zZm9ybSI+CityZXN1bHQg
MworPC9kaXY+CityZXN1bHQgNAorPGRpdiBjbGFzcz0iZml4ZWQiPgorcmVzdWx0IDUKKzwvZGl2
PgorcmVzdWx0IDYKKzxkaXYgY2xhc3M9InNjcm9sbCI+CityZXN1bHQgNworRm9vIGJhci4KKzwv
YnI+PC9icj4KKzwvYnI+PC9icj4KKzwvYnI+PC9icj4KK3Jlc3VsdCA4Cis8L2Rpdj4KK3Jlc3Vs
dCA5Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>157223</attachid>
            <date>2012-08-08 08:20:11 -0700</date>
            <delta_ts>2012-08-10 12:34:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93111-20120808161945.patch</filename>
            <type>text/plain</type>
            <size>42412</size>
            <attacher name="Leandro Graciá Gil">leandrogracia</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI1MDMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWExZmEyMzVjZjRlMDk3
NDMzZTFhYTAyODJhM2MyODRiYjE1M2VhNC4uZDU0YjkxOTJlODRkN2M5MzI5ODE4ZTdjOTJiMDMw
MTY3MzgxMjMwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEyLTA4LTA4ICBMZWFu
ZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KKworICAgICAgICBb
Q2hyb21pdW1dIEltcGxlbWVudCB0aGUgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzIEFQSQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRyb2R1Y2UgdGhl
IGZpbmQtaW4tcGFnZSBjb29yZGluYXRlIHN5c3RlbS4gVGhpcyBzeXN0ZW0gdHJpZXMgdG8gc29s
dmUKKyAgICAgICAgdGhlIHVuaW50dWl0aXZlIHRpY2ttYXJrIHJlc3VsdHMgcHJlc2VudGVkIGlu
IHBhZ2VzIHdpdGggbXVsdGlwbGUgZnJhbWVzCisgICAgICAgIGFuZCBzY3JvbGxlZCBjb250ZW50
cyB3aGVyZSB0aGUgZmluZCByZXN1bHRzIG1pZ2h0IG5vdCBiZSBpbiB0aGUgdmlzaWJsZQorICAg
ICAgICBhcmVhIG9mIGEgZnJhbWUsIHdoaWNoIG1pZ2h0IGxlYWQgdG8gdGlja21hcmtzIGJlbG93
IHRoZSBjb250YWluZXIgZnJhbWUuCisKKyAgICAgICAgVG8gYWNoaWV2ZSB0aGlzLCB0aGlzIGNv
b3JkaW5hdGUgc3lzdGVtIGdvZXMgdXAgdGhlIHJlbmRlciB0cmVlCisgICAgICAgIG5vcm1hbGl6
aW5nIHRoZSBjb29yZGluYXRlcyBieSB0aGUgYWN0dWFsIGNvbnRlbnRzIHNpemUgb2YgaXRzIGNv
bnRhaW5lci4KKyAgICAgICAgVGhpcyBsZWFkcyB0byB0aWNrbWFya3Mgc2NhbGVkIHRvIHRoZSB2
aXNpYmxlIHNpemUgb2YgdGhlaXIgZnJhbWUKKyAgICAgICAgaW5kZXBlbmRlbnRseSBvZiBpdHMg
c2Nyb2xsLiBUaGlzIGNvb3JkaW5hdGUgc3lzdGVtIHN1cHBvcnRzIGFsc28gQ1NTCisgICAgICAg
IHNjcm9sbDpvdmVyZmxvdywgdHJhbnNmb3JtcyBhbmQgdGhlIGRpZmZlcmVudCBwb3NpdGlvbnMu
CisKKyAgICAgICAgQWxzbyBhZGQgYW4gYXV4aWxpYXJ5IG1ldGhvZCB0byBSYW5nZSBpbiBvcmRl
ciB0byBwcm92aWRlIGEgdHJhbnNmb3JtCisgICAgICAgIGZyaWVuZGx5IHdheSB0byByZXRyaWV2
ZSB0aGUgYWJzb2x1dGUgY29vcmRpbmF0ZXMgb2YgdGhlIGVuY2xvc2luZworICAgICAgICBib3Vu
ZGluZyBib3ggd2l0aG91dCB0aGUgYWRqdXN0bWVudCBvcGVyYXRpb25zIHRoYXQgdGhlIGV4aXN0
aW5nCisgICAgICAgIGVuY2xvc2luZ1JlY3QgbWV0aG9kIGRvZXMuCisKKyAgICAgICAgVGVzdGVk
IGJ5IFdlYkZyYW1lVGVzdCBXZWJLaXQgdW5pdCB0ZXN0LgorCisgICAgICAgICogV2ViQ29yZS5n
eXBpOiBhZGRpbmcgRmluZEluUGFnZUNvb3JkaW5hdGVzLmgvY3BwCisgICAgICAgICogZG9tL1Jh
bmdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlOjpib3VuZGluZ0JveCk6IGFsbG93IHRo
ZSBtZXRob2QgdG8gYmUgdHJhbnNmb3JtLWZyaWVuZGx5IGlmIHJlcXVlc3RlZC4KKyAgICAgICAg
KiBkb20vUmFuZ2UuaDogYWRkIGFuIG9wdGlvbmFsIHVzZVRyYW5zZm9ybXMgYXJndW1lbnQgdG8g
Ym91bmRpbmdCb3guCisgICAgICAgIChSYW5nZSk6CisgICAgICAgICogcmVuZGVyaW5nL0ZpbmRJ
blBhZ2VDb29yZGluYXRlcy5jcHA6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
IChXZWJDb3JlOjp0b05vcm1hbGl6ZWRSZWN0KTogYXV4aWxpYXJ5IGludGVybmFsIGZ1bmN0aW9u
LgorICAgICAgICAoV2ViQ29yZTo6ZmluZEluUGFnZVJlY3RGcm9tQWJzb2x1dGVSZWN0KTogbWFp
biBjb29yZGluYXRlIGNvbnZlcnNpb24gZnVuY3Rpb24uCisgICAgICAgIChXZWJDb3JlOjpmaW5k
SW5QYWdlUmVjdEZyb21SYW5nZSk6IGNvbnZlbmllbmNlIGNvbnZlcnNpb24gZnVuY3Rpb24gZm9y
IFJhbmdlcy4KKyAgICAgICAgKiByZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVzLmg6IEFk
ZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisKIDIwMTItMDgtMDggIEFsZXhhbmRlciBQYXZsb3Yg
IDxhcGF2bG92QGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBtb3ZlIHNl
dFRvdWNoRXZlbnRFbXVsYXRpb25FbmFibGVkIGZyb20gRE9NQWdlbnQgdG8gUGFnZUFnZW50CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDM3OTEwMzVmMzM4OTU0NzM3YjEyYzNkZGYxNGE4
Yjc0NjczZThhNWEuLjc3Y2E4MTk4NzBhNzk4Yzk0NzY4NTg2ZDk0NTQ4YjkxZDhmMDhmMjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDQgQEAKKzIwMTItMDgtMDggIExl
YW5kcm8gR3JhY2lhIEdpbCAgPGxlYW5kcm9ncmFjaWFAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFtDaHJvbWl1bV0gSW1wbGVtZW50IHRoZSBmaW5kLWluLXBhZ2UgbWF0Y2ggcmVjdHMgQVBJCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzExMQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB0
aGUgZnVuY2lvbmFsaXR5IG9mIHRoZSBmaW5kLWluLXBhZ2UgbWF0Y2ggcmVjdHMgQVBJIGluIFdl
YkZyYW1lLgorICAgICAgICBUaGVzZSBtZXRob2RzIGtlZXAgYSBjYWNoZSBvZiB0aGUgbWF0Y2gg
cmVjdHMgaW4gYSBzcGVjaWFsIGNvb3JkaW5hdGUgc3lzdGVtCisgICAgICAgIChmaW5kLWluLXBh
Z2UgY29vcmRpbmF0ZXMpIGFuZCB1cGRhdGUgdGhlbSBvbiBzaXplIGNoYW5nZXMuIFRoZXkgYWxz
byBhbGxvdworICAgICAgICB0byByZWNvdmVyIHRoZSBtYXRjaCBjbG9zZXN0IHRvIGEgZ2l2ZW4g
cG9pbnQsIHRoZXJlZm9yZSBlbmFibGluZyB0byBtb3ZlCisgICAgICAgIHRvIGZpbmQgbWF0Y2hl
cyB3aGVuIHRhcHBpbmcgb24gdGhlaXIgY29ycmVzcG9uZGluZyB0aWNrbWFya3MuCisKKyAgICAg
ICAgKiBzcmMvV2ViRnJhbWVJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBs
OjpGaW5kTWF0Y2g6OkZpbmRNYXRjaCk6IGNhY2hlIHN0cnVjdHVyZSBmb3IgZmluZCBtYXRjaGVz
LgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpmaW5k
KTogY2xlYXIgbWF0Y2ggY2FjaGUgd2hlbiBhcHByb3ByaWF0ZS4KKyAgICAgICAgKFdlYktpdDo6
V2ViRnJhbWVJbXBsOjpzdG9wRmluZGluZyk6IGNsZWFyIG1hdGNoZXMgY2FjaGUuCisgICAgICAg
IChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6c2NvcGVTdHJpbmdNYXRjaGVzKTogYWRkIG5ldyByZXN1
bHRzIHRvIHRoZSBtYXRjaGVzIGNhY2hlLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6
OmluY3JlYXNlTWF0Y2hDb3VudCk6IHVwZGF0ZSB0aGUgbWF0Y2hlcyBjYWNoZSB2ZXJzaW9uLgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OnJlc2V0TWF0Y2hDb3VudCk6IHVwZGF0ZSB0
aGUgbWF0Y2hlcyBjYWNoZSB2ZXJzaW9uLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6
OmZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKTogbmV3IEFQSSBwcm92aWRpbmcgdGhlIG1hdGNoZXMg
Y2FjaGUgdmVyc2lvbi4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpjbGVhckZpbmRN
YXRjaGVzQ2FjaGUpOiBpbnRlcm5hbCB1dGlsaXR5IG1ldGhvZCB0byByZXNldCB0aGUgbWF0Y2hl
cyBjYWNoZS4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjppc0FjdGl2ZU1hdGNoRnJh
bWVWYWxpZCk6IGludGVybmFsIHV0aWxpdHkgbWV0aG9kIHRvIGNoZWNrIGlmIHRoZSBsb2NhbCBm
cmFtZSBpcyBzdGlsbCBpbiB0aGUgZnJhbWUgdHJlZS4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJh
bWVJbXBsOjp1cGRhdGVGaW5kTWF0Y2hSZWN0cyk6IGludGVybmFsIHV0aWxpdHkgbWV0aG9kIHRv
IHVwZGF0ZSB0aGUgbWF0Y2ggcmVzdWx0IHJlY3RzIGlmIHJlcXVpcmVkLgorICAgICAgICAoV2Vi
S2l0OjpXZWJGcmFtZUltcGw6OmFjdGl2ZUZpbmRNYXRjaFJlY3QpOiBuZXcgQVBJIHByb3ZpZGlu
ZyB0aGUgYWN0aXZlIGZpbmQgbWF0Y2ggcmVjdCBpbiBmaW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMu
CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6ZmluZE1hdGNoUmVjdHMpOiBuZXcgQVBJ
IHJldHVybmluZyB0aGUgdmFsaWQgbWF0Y2ggcmVjdHMgaW4gZmluZC1pbi1wYWdlIGNvb3JkaW5h
dGVzLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFwcGVuZEZpbmRNYXRjaFJlY3Rz
KTogaW50ZXJuYWwgdXRpbGl0eSBtZXRob2QgdG8gY29uY2F0ZW5hdGUgdGhlIG1hdGNoIHJlc3Vs
dHMgb2YgbXVsdGlwbGUgZnJhbWVzLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OnNl
bGVjdE5lYXJlc3RGaW5kTWF0Y2gpOiBuZXcgQVBJIHNlbGVjdGluZyB0aGUgZmluZCBtYXRjaCBj
bG9zZXIgdG8gYSBwb2ludCBpbiBmaW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMuCisgICAgICAgIChX
ZWJLaXQ6OldlYkZyYW1lSW1wbDo6bmVhcmVzdEZpbmRNYXRjaCk6IGludGVybmFsIHV0aWxpdHkg
bWV0aG9kIHRvIGZpbmQgdGhlIG5lYXJlc3QgZmluZCBtYXRjaCB0byBhIHBvaW50IGluIGEgZnJh
bWUuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6c2VsZWN0RmluZE1hdGNoKTogaW50
ZXJuYWwgdXRpbGl0eSBtZXRob2QgdG8gc2VsZWN0IGEgbWF0Y2ggaW4gdGhlIGNhY2hlLgorICAg
ICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OldlYkZyYW1lSW1wbCk6IGluaXRpYWxpemF0aW9u
IG9mIG5ldyB2YXJpYWJsZXMuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6ZGlkQ2hh
bmdlQ29udGVudHNTaXplKTogaW52YWxpZGF0ZSB0aGUgY2FjaGVkIG1hdGNoIHJlY3QgY29vcmRp
bmF0ZXMgb24gZnJhbWUgY29udGVudCBzaXplIGNoYW5nZXMuCisgICAgICAgICogc3JjL1dlYkZy
YW1lSW1wbC5oOgorICAgICAgICAoV2ViRnJhbWVJbXBsKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
RnJhbWVJbXBsOjphY3RpdmVNYXRjaCk6IGV4cG9zZSB0aGUgcmFuZ2Ugb2YgdGhlIGFjdGl2ZSBt
YXRjaCB0byBhbGxvdyB0ZXN0aW5nLgorICAgICAgICAoRmluZE1hdGNoKToKKyAgICAgICAgKiB0
ZXN0cy9XZWJGcmFtZVRlc3QuY3BwOgorICAgICAgICAqIHRlc3RzL2RhdGEvZmluZF9pbl9wYWdl
Lmh0bWw6IEFkZGVkLiBUZXN0IGNhc2UgbGF5b3V0LgorICAgICAgICAqIHRlc3RzL2RhdGEvZmlu
ZF9pbl9wYWdlX2ZyYW1lLmh0bWw6IEFkZGVkLiBUZXN0IGNhc2UgbGF5b3V0LgorCiAyMDEyLTA4
LTA3ICBKb3NodWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgTGF5b3V0
IFRlc3Qgc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1vbWl0LXBhcmFtZXRlci5odG1sIGlz
IGZsYWt5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLmd5cGkKaW5kZXggOWZiNjQ5ODFlMjA1MGY2NDA4NDVjNTlkNTExMmMz
ZTI5MWY5YmMzYi4uZmYyZjQ1Mzc5MmY2MTAyYzdlMTI3M2ZjYTM2ZDEzN2QzZDJlNWY3MCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUuZ3lwaQpAQCAtNDY3Myw2ICs0NjczLDggQEAKICAgICAgICAgICAgICdyZW5kZXJp
bmcvRWxsaXBzaXNCb3guaCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJl
bmRlcmVyLmNwcCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL0ZpbHRlckVmZmVjdFJlbmRlcmVy
LmgnLAorICAgICAgICAgICAgJ3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuY3BwJywK
KyAgICAgICAgICAgICdyZW5kZXJpbmcvRmluZEluUGFnZUNvb3JkaW5hdGVzLmgnLAogICAgICAg
ICAgICAgJ3JlbmRlcmluZy9GaXhlZFRhYmxlTGF5b3V0LmNwcCcsCiAgICAgICAgICAgICAncmVu
ZGVyaW5nL0ZpeGVkVGFibGVMYXlvdXQuaCcsCiAgICAgICAgICAgICAncmVuZGVyaW5nL0Zsb3dU
aHJlYWRDb250cm9sbGVyLmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFu
Z2UuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcAppbmRleCBlOTQzY2Y1ZDk1ZWNi
NDRkMDk4YzczZmU0ZDJlODc4NDg0Y2FhYjU3Li5kMzg2OWFmZGMyYzkwNzIwMTZkNzYxZmQ5M2Q2
ZWYzZDViZTk2NzgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5jcHAKQEAgLTE1NzYsOSArMTU3NiwxOSBAQCBO
b2RlKiBSYW5nZTo6cGFzdExhc3ROb2RlKCkgY29uc3QKICAgICByZXR1cm4gbV9lbmQuY29udGFp
bmVyKCktPnRyYXZlcnNlTmV4dFNpYmxpbmcoKTsKIH0KIAotSW50UmVjdCBSYW5nZTo6Ym91bmRp
bmdCb3goKSBjb25zdAorSW50UmVjdCBSYW5nZTo6Ym91bmRpbmdCb3goYm9vbCB1c2VUcmFuc2Zv
cm1zKSBjb25zdAogewogICAgIEludFJlY3QgcmVzdWx0OworCisgICAgaWYgKHVzZVRyYW5zZm9y
bXMpIHsKKyAgICAgICAgVmVjdG9yPEZsb2F0UXVhZD4gcXVhZHM7CisgICAgICAgIHRleHRRdWFk
cyhxdWFkcyk7CisgICAgICAgIGNvbnN0IHNpemVfdCBuID0gcXVhZHMuc2l6ZSgpOworICAgICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG47ICsraSkKKyAgICAgICAgICAgIHJlc3VsdC51bml0
ZShxdWFkc1tpXS5lbmNsb3NpbmdCb3VuZGluZ0JveCgpKTsKKyAgICAgICAgcmV0dXJuIHJlc3Vs
dDsKKyAgICB9CisKICAgICBWZWN0b3I8SW50UmVjdD4gcmVjdHM7CiAgICAgdGV4dFJlY3RzKHJl
Y3RzKTsKICAgICBjb25zdCBzaXplX3QgbiA9IHJlY3RzLnNpemUoKTsKQEAgLTE5NDIsNyArMTk1
Miw2IEBAIHZvaWQgUmFuZ2U6OmdldEJvcmRlckFuZFRleHRRdWFkcyhWZWN0b3I8RmxvYXRRdWFk
PiYgcXVhZHMpIGNvbnN0CiAgICAgfQogfQogCi0gICAgCiBGbG9hdFJlY3QgUmFuZ2U6OmJvdW5k
aW5nUmVjdCgpIGNvbnN0CiB7CiAgICAgaWYgKCFtX3N0YXJ0LmNvbnRhaW5lcigpKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFu
Z2UuaAppbmRleCBiODRiZDYxNDU0MDlkM2ExOWIxMzU0ZjM1Nzc4Njg1Zjg4MGUyOWMyLi42ODQ5
OWFhZDY2MmU1YjZmOGIzOGU5NGE2MjliNzU4NmFlODljYjE5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vUmFuZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuaApAQCAt
MTEyLDggKzExMiw2IEBAIHB1YmxpYzoKIAogICAgIFNoYWRvd1Jvb3QqIHNoYWRvd1Jvb3QoKSBj
b25zdDsKIAotICAgIEludFJlY3QgYm91bmRpbmdCb3goKSBjb25zdDsKLSAgICAKICAgICBlbnVt
IFJhbmdlSW5GaXhlZFBvc2l0aW9uIHsKICAgICAgICAgTm90Rml4ZWRQb3NpdGlvbiwKICAgICAg
ICAgUGFydGlhbGx5Rml4ZWRQb3NpdGlvbiwKQEAgLTEyNiw2ICsxMjQsOCBAQCBwdWJsaWM6CiAg
ICAgdm9pZCB0ZXh0UXVhZHMoVmVjdG9yPEZsb2F0UXVhZD4mLCBib29sIHVzZVNlbGVjdGlvbkhl
aWdodCA9IGZhbHNlLCBSYW5nZUluRml4ZWRQb3NpdGlvbiogPSAwKSBjb25zdDsKICAgICB2b2lk
IGdldEJvcmRlckFuZFRleHRRdWFkcyhWZWN0b3I8RmxvYXRRdWFkPiYpIGNvbnN0OwogICAgIEZs
b2F0UmVjdCBib3VuZGluZ1JlY3QoKSBjb25zdDsKKyAgICAvLyBGSVhNRTogZXZlbnR1YWxseSB1
c2VUcmFuc2Zvcm1zIHNob3VsZCBmbGlwIHRvIHRydWUgYnkgZGVmYXVsdC4KKyAgICBJbnRSZWN0
IGJvdW5kaW5nQm94KGJvb2wgdXNlVHJhbnNmb3JtcyA9IGZhbHNlKSBjb25zdDsKIAogICAgIHZv
aWQgbm9kZUNoaWxkcmVuQ2hhbmdlZChDb250YWluZXJOb2RlKik7CiAgICAgdm9pZCBub2RlQ2hp
bGRyZW5XaWxsQmVSZW1vdmVkKENvbnRhaW5lck5vZGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL0ZpbmRJblBhZ2VDb29yZGluYXRlcy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTVkYWRm
YzFhY2RjMDM3NzhlMjlmOTA4ZGQxOWE0MTkyYTM1MzhkNQotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuY3BwCkBAIC0wLDAg
KzEsMTQ0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6
CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIK
KyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2Yg
R29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElD
VUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJ
R0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkZpbmRJblBhZ2VDb29yZGlu
YXRlcy5oIgorCisjaW5jbHVkZSAiRmxvYXRQb2ludC5oIgorI2luY2x1ZGUgIkZsb2F0UXVhZC5o
IgorI2luY2x1ZGUgIkZsb2F0UmVjdC5oIgorI2luY2x1ZGUgIkZyYW1lLmgiCisjaW5jbHVkZSAi
SW50UG9pbnQuaCIKKyNpbmNsdWRlICJOb2RlLmgiCisjaW5jbHVkZSAiUmFuZ2UuaCIKKyNpbmNs
dWRlICJSZW5kZXJCb3guaCIKKyNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKKyNpbmNsdWRlICJS
ZW5kZXJQYXJ0LmgiCisjaW5jbHVkZSAiUmVuZGVyU3R5bGUuaCIKKyNpbmNsdWRlICJSZW5kZXJW
aWV3LmgiCisjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisK
K3N0YXRpYyBGbG9hdFJlY3QgdG9Ob3JtYWxpemVkUmVjdChjb25zdCBGbG9hdFJlY3QmIGFic29s
dXRlUmVjdCwgY29uc3QgUmVuZGVyT2JqZWN0KiByZW5kZXJlciwgRmxvYXRSZWN0KiBjb250YWlu
ZXJCb3VuZGluZ0JveCA9IDApCit7CisgICAgQVNTRVJUKHJlbmRlcmVyKTsKKworICAgIGNvbnN0
IFJlbmRlck9iamVjdCogY29udGFpbmVyID0gcmVuZGVyZXItPmNvbnRhaW5lcigpOworICAgIGlm
ICghY29udGFpbmVyKSB7CisgICAgICAgIGlmIChjb250YWluZXJCb3VuZGluZ0JveCkKKyAgICAg
ICAgICAgICpjb250YWluZXJCb3VuZGluZ0JveCA9IEZsb2F0UmVjdCgpOworICAgICAgICByZXR1
cm4gRmxvYXRSZWN0KCk7CisgICAgfQorCisgICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRSZWN0ID0g
YWJzb2x1dGVSZWN0OworICAgIEZsb2F0UmVjdCBjb250YWluZXJSZWN0ID0gY29udGFpbmVyLT5h
YnNvbHV0ZUJvdW5kaW5nQm94UmVjdCgpOworICAgIGlmIChjb250YWluZXJCb3VuZGluZ0JveCkK
KyAgICAgICAgKmNvbnRhaW5lckJvdW5kaW5nQm94ID0gY29udGFpbmVyUmVjdDsKKworICAgIC8v
IEZvciBSZW5kZXJCb3hlcyB3ZSB3YW50IHRvIG5vcm1hbGl6ZSBieSB0aGUgbWF4IGxheW91dCBv
dmVyZmxvdyBzaXplIGluc3RlYWQgb2Ygb25seSB0aGUgdmlzaWJsZSBib3VuZGluZyBib3guCisg
ICAgLy8gUXVhZHMgYW5kIHRoZWlyIGVuY2xvc2luZyBib3VuZGluZyBib3hlcyBuZWVkIHRvIGJl
IHVzZWQgaW4gb3JkZXIgdG8ga2VlcCByZXN1bHRzIHRyYW5zZm9ybS1mcmllbmRseS4KKyAgICBp
ZiAoY29udGFpbmVyLT5pc0JveCgpKSB7CisgICAgICAgIGNvbnN0IFJlbmRlckJveCogY29udGFp
bmVyQm94ID0gdG9SZW5kZXJCb3goY29udGFpbmVyKTsKKyAgICAgICAgRmxvYXRQb2ludCBzY3Jv
bGxlZE9yaWdpbjsKKworICAgICAgICAvLyBGb3Igb3ZlcmZsb3c6c2Nyb2xsIHdlIG5lZWQgdG8g
Z2V0IHdoZXJlIHRoZSBhY3R1YWwgb3JpZ2luIGlzIGluZGVwZW5kZW50bHkgb2YgdGhlIHNjcm9s
bC4KKyAgICAgICAgaWYgKGNvbnRhaW5lci0+aGFzT3ZlcmZsb3dDbGlwKCkpCisgICAgICAgICAg
ICBzY3JvbGxlZE9yaWdpbiA9IC1JbnRQb2ludChjb250YWluZXJCb3gtPnNjcm9sbGVkQ29udGVu
dE9mZnNldCgpKTsKKworICAgICAgICBGbG9hdFJlY3Qgb3ZlcmZsb3dSZWN0KHNjcm9sbGVkT3Jp
Z2luLCBjb250YWluZXJCb3gtPm1heExheW91dE92ZXJmbG93KCkpOworICAgICAgICBjb250YWlu
ZXJSZWN0ID0gY29udGFpbmVyQm94LT5sb2NhbFRvQWJzb2x1dGVRdWFkKEZsb2F0UXVhZChvdmVy
Zmxvd1JlY3QpLCBmYWxzZSkuZW5jbG9zaW5nQm91bmRpbmdCb3goKTsKKyAgICB9CisKKyAgICBp
ZiAoY29udGFpbmVyUmVjdC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsK
KworICAgIC8vIE1ha2UgdGhlIGNvb3JkaW5hdGVzIHJlbGF0aXZlIHRvIHRoZSBjb250YWluZXIg
ZW5jbG9zaW5nIGJvdW5kaW5nIGJveC4KKyAgICAvLyBTaW5jZSB3ZSB3b3JrIHdpdGggcmVjdHMg
ZW5jbG9zaW5nIHF1YWQgdW5pb25zIHRoaXMgaXMgc3RpbGwgdHJhbnNmb3JtLWZyaWVuZGx5Lgor
ICAgIG5vcm1hbGl6ZWRSZWN0Lm1vdmVCeSgtY29udGFpbmVyUmVjdC5sb2NhdGlvbigpKTsKKwor
ICAgIC8vIEZpeGVkIHBvc2l0aW9ucyBkbyBub3QgbWFrZSBzZW5zZSBpbiB0aGlzIGNvb3JkaW5h
dGUgc3lzdGVtLCBidXQgbmVlZCB0byBsZWF2ZSBjb25zaXN0ZW50IHRpY2ttYXJrcy4KKyAgICAv
LyBTbywgdXNlIHRoZWlyIHBvc2l0aW9uIHdoZW4gdGhlIHZpZXcgaXMgbm90IHNjcm9sbGVkLCBs
aWtlIGFuIGFic29sdXRlIHBvc2l0aW9uLgorICAgIGlmIChyZW5kZXJlci0+c3R5bGUoKS0+cG9z
aXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uICYmIGNvbnRhaW5lci0+aXNSZW5kZXJWaWV3KCkpCisg
ICAgICAgIG5vcm1hbGl6ZWRSZWN0Lm1vdmUoLXRvUmVuZGVyVmlldyhjb250YWluZXIpLT5mcmFt
ZVZpZXcoKS0+c2Nyb2xsT2Zmc2V0Rm9yRml4ZWRQb3NpdGlvbigpKTsKKworICAgIG5vcm1hbGl6
ZWRSZWN0LnNjYWxlKDEgLyBjb250YWluZXJSZWN0LndpZHRoKCksIDEgLyBjb250YWluZXJSZWN0
LmhlaWdodCgpKTsKKworICAgIHJldHVybiBub3JtYWxpemVkUmVjdDsKK30KKworRmxvYXRSZWN0
IGZpbmRJblBhZ2VSZWN0RnJvbUFic29sdXRlUmVjdChjb25zdCBGbG9hdFJlY3QmIGlucHV0UmVj
dCwgY29uc3QgUmVuZGVyT2JqZWN0KiByZW5kZXJlcikKK3sKKyAgICBpZiAoIXJlbmRlcmVyIHx8
IGlucHV0UmVjdC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAg
IC8vIE5vcm1hbGl6ZSB0aGUgaW5wdXQgcmVjdCB0byBpdHMgY29udGFpbmVyLCBzYXZpbmcgdGhl
IGNvbnRhaW5lciBib3VuZGluZyBib3ggZm9yIHRoZSBpbmNvbWluZyBsb29wLgorICAgIEZsb2F0
UmVjdCByZW5kZXJlckJvdW5kaW5nQm94OworICAgIEZsb2F0UmVjdCBub3JtYWxpemVkUmVjdCA9
IHRvTm9ybWFsaXplZFJlY3QoaW5wdXRSZWN0LCByZW5kZXJlciwgJnJlbmRlcmVyQm91bmRpbmdC
b3gpOworICAgIHJlbmRlcmVyID0gcmVuZGVyZXItPmNvbnRhaW5lcigpOworCisgICAgLy8gR28g
dXAgYWNyb3NzIGZyYW1lcy4KKyAgICB3aGlsZSAocmVuZGVyZXIpIHsKKworICAgICAgICAvLyBH
byB1cCB0aGUgcmVuZGVyIHRyZWUgdW50aWwgd2UgcmVhY2ggdGhlIHJvb3Qgb2YgdGhlIGN1cnJl
bnQgZnJhbWUgKHRoZSBSZW5kZXJWaWV3KS4KKyAgICAgICAgZm9yIChjb25zdCBSZW5kZXJPYmpl
Y3QqIGNvbnRhaW5lciA9IHJlbmRlcmVyLT5jb250YWluZXIoKTsgY29udGFpbmVyOyByZW5kZXJl
ciA9IGNvbnRhaW5lciwgY29udGFpbmVyID0gY29udGFpbmVyLT5jb250YWluZXIoKSkgeworCisg
ICAgICAgICAgICAvLyBDb21wb3NlIHRoZSBub3JtYWxpemVkIHJlY3RzLiBUaGUgYWJzb2x1dGUg
Ym91bmRpbmcgYm94IG9mIHRoZSBjb250YWluZXIgaXMgY2FsY3VsYXRlZCBpbiB0b05vcm1hbGl6
ZWRSZWN0CisgICAgICAgICAgICAvLyBhbmQgY2FuIGJlIHJldXNlZCBmb3IgdGhlIG5leHQgaXRl
cmF0aW9uIG9mIHRoZSBsb29wLgorICAgICAgICAgICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRCb3hS
ZWN0ID0gdG9Ob3JtYWxpemVkUmVjdChyZW5kZXJlckJvdW5kaW5nQm94LCByZW5kZXJlciwgJnJl
bmRlcmVyQm91bmRpbmdCb3gpOworICAgICAgICAgICAgbm9ybWFsaXplZFJlY3Quc2NhbGUobm9y
bWFsaXplZEJveFJlY3Qud2lkdGgoKSwgbm9ybWFsaXplZEJveFJlY3QuaGVpZ2h0KCkpOworICAg
ICAgICAgICAgbm9ybWFsaXplZFJlY3QubW92ZUJ5KG5vcm1hbGl6ZWRCb3hSZWN0LmxvY2F0aW9u
KCkpOworCisgICAgICAgICAgICBpZiAobm9ybWFsaXplZFJlY3QuaXNFbXB0eSgpKQorICAgICAg
ICAgICAgICAgIHJldHVybiBub3JtYWxpemVkUmVjdDsKKyAgICAgICAgfQorCisgICAgICAgIC8v
IEp1bXAgdG8gdGhlIHJlbmRlcmVyIG93bmluZyB0aGUgZnJhbWUsIGlmIGFueS4KKyAgICAgICAg
QVNTRVJUKHJlbmRlcmVyLT5pc1JlbmRlclZpZXcoKSk7CisgICAgICAgIHJlbmRlcmVyID0gcmVu
ZGVyZXItPmZyYW1lKCkgPyByZW5kZXJlci0+ZnJhbWUoKS0+b3duZXJSZW5kZXJlcigpIDogMDsK
KworICAgICAgICAvLyBVcGRhdGUgdGhlIGFic29sdXRlIGNvb3JkaW5hdGVzIHRvIHRoZSBuZXcg
ZnJhbWUuCisgICAgICAgIGlmIChyZW5kZXJlcikKKyAgICAgICAgICAgIHJlbmRlcmVyQm91bmRp
bmdCb3ggPSByZW5kZXJlci0+YWJzb2x1dGVCb3VuZGluZ0JveFJlY3QoKTsKKyAgICB9CisKKyAg
ICByZXR1cm4gbm9ybWFsaXplZFJlY3Q7Cit9CisKK0Zsb2F0UmVjdCBmaW5kSW5QYWdlUmVjdEZy
b21SYW5nZShQYXNzUmVmUHRyPFJhbmdlPiBpbnB1dFJhbmdlKQoreworICAgIFJlZlB0cjxSYW5n
ZT4gcmFuZ2UgPSBpbnB1dFJhbmdlOworICAgIGlmICghcmFuZ2UgfHwgIXJhbmdlLT5maXJzdE5v
ZGUoKSkKKyAgICAgICAgcmV0dXJuIEZsb2F0UmVjdCgpOworCisgICAgcmV0dXJuIGZpbmRJblBh
Z2VSZWN0RnJvbUFic29sdXRlUmVjdChyYW5nZS0+Ym91bmRpbmdCb3godHJ1ZSksIHJhbmdlLT5m
aXJzdE5vZGUoKS0+cmVuZGVyZXIoKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMu
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5lMDExNDkyZjA1NWU4ZGNmM2FiYTc1YThhNWIwYzIyMzczNWExNThlCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0ZpbmRJblBhZ2VDb29yZGluYXRl
cy5oCkBAIC0wLDAgKzEsNjAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBh
cmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0
aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0
b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZy
b20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgor
ICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICog
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEZpbmRJblBhZ2VDb29yZGluYXRlc19oCisjZGVm
aW5lIEZpbmRJblBhZ2VDb29yZGluYXRlc19oCisKKyNpbmNsdWRlICJGbG9hdFJlY3QuaCIKKyNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNz
IFJhbmdlOworY2xhc3MgUmVuZGVyT2JqZWN0OworCisvLyBGaW5kLWluLXBhZ2UgY29vcmRpbmF0
ZSBjb252ZXJzaW9uIG1ldGhvZHMuCisvLworLy8gVGhpcyBjb29yZGluYXRlIHN5c3RlbSBpcyBk
ZXNpZ25lZCB0byBnaXZlIGNvbnNpc3RlbnQgdGlja21hcmtzIGluIGNhc2VzIHdoZXJlIGZpbmQg
bWF0Y2hlcworLy8gYXJlIGluIHNjcm9sbGFibGUgYXJlYXMgYnV0IG1pZ2h0IG5vdCBiZSB2aXNp
YmxlIChlLmcuIGNoaWxkIGZyYW1lcywgc2Nyb2xsOm92ZXJmbG93KS4KKy8vIEluIHRoZXNlIGNh
c2VzLCB1c2luZyBhYnNvbHV0ZSBwb3NpdGlvbnMgbWlnaHQgbGVhZCB0byB0aWNrbWFya3MgcG9p
bnRpbmcgb3V0c2lkZSB0aGUgdmlzaWJsZQorLy8gYXJlYSBvZiBpdHMgY29udGFpbmVyLCB3aGlj
aCBpcyBjb3VudGVyLWludHVpdGl2ZSBmb3IgdXNlcnMuCisvLworLy8gRmluZC1pbi1wYWdlIGNv
b3JkaW5hdGVzIGFyZSByZXByZXNlbnRlZCBhcyBub3JtYWxpemVkIGZyYWN0aW9ucyBvZiB0aGUg
bWFpbiBmcmFtZSBkb2N1bWVudCB3aXRoCisvLyB0aGUgcHJvcGVydHkgdGhhdCB0aGV5IGFyZSBi
dWlsdCBieSBjb21wb3NpbmcgdGhlIHJlbGF0aXZlIHBvc2l0aW9uIG9mIGVhY2ggcmVuZGVyZXIg
dG8gdGhlIG1heGltdW0KKy8vIGVmZmVjdGl2ZSBsYXlvdXQgc2l6ZSBvZiBpdHMgY29udGFpbmVy
IGFsbCB0aGUgd2F5IHVwIHRoZSByZW5kZXIgdHJlZS4gVGhlIHJlc3VsdGluZyBjb29yZGluYXRl
cworLy8gYXJlIHNjcm9sbC1pbmRlcGVuZGVudCwgcmVwcmVzZW50aW5nIGFueSBjb250ZW50cyBz
Y2FsZWQgdG8gdGhlIHZpc2libGUgYXJlYSBvZiB0aGVpciBjb250YWluZXIuCisvLyBUaGUgcHJv
dmlkZWQgbWV0aG9kcyBzdXBwb3J0IHNjcm9sbDpvdmVyZmxvdyBhbmQgYXJlIENTUyBwb3NpdGlv
biBhbmQgdHJhbnNmb3JtLWZyaWVuZGx5LgorCitGbG9hdFJlY3QgZmluZEluUGFnZVJlY3RGcm9t
QWJzb2x1dGVSZWN0KGNvbnN0IEZsb2F0UmVjdCYsIGNvbnN0IFJlbmRlck9iamVjdCopOworRmxv
YXRSZWN0IGZpbmRJblBhZ2VSZWN0RnJvbVJhbmdlKFBhc3NSZWZQdHI8UmFuZ2U+KTsKKworfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJGcmFtZUltcGwuY3BwCmluZGV4IDYyZWEyZWU3MDcwZWU2NjdlNmUwNGEzMGRkMGNkYzNi
YzkwZDZmMWUuLjQxNDEyOWNlNDliZTAzMWE2ZDA1OWQxZDMxNzhkMTJkMWI2ZTZjYWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcApAQCAtODksNiArODks
NyBAQAogI2luY2x1ZGUgIkV2ZW50SGFuZGxlci5oIgogI2luY2x1ZGUgIkV2ZW50TGlzdGVuZXJX
cmFwcGVyLmgiCiAjaW5jbHVkZSAiRmlsZVN5c3RlbVR5cGUuaCIKKyNpbmNsdWRlICJGaW5kSW5Q
YWdlQ29vcmRpbmF0ZXMuaCIKICNpbmNsdWRlICJGb2N1c0NvbnRyb2xsZXIuaCIKICNpbmNsdWRl
ICJGb250Q2FjaGUuaCIKICNpbmNsdWRlICJGb3JtU3RhdGUuaCIKQEAgLTExOCw2ICsxMTksNyBA
QAogI2luY2x1ZGUgIlBsYXRmb3JtU3VwcG9ydC5oIgogI2luY2x1ZGUgIlBsdWdpbkRvY3VtZW50
LmgiCiAjaW5jbHVkZSAiUHJpbnRDb250ZXh0LmgiCisjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAj
aW5jbHVkZSAiUmVuZGVyRnJhbWUuaCIKICNpbmNsdWRlICJSZW5kZXJMYXllci5oIgogI2luY2x1
ZGUgIlJlbmRlck9iamVjdC5oIgpAQCAtMTc0LDcgKzE3Niw2IEBACiAjaW5jbHVkZSAicGxhdGZv
cm0vV2ViUG9pbnQuaCIKICNpbmNsdWRlICJwbGF0Zm9ybS9XZWJSZWN0LmgiCiAjaW5jbHVkZSAi
cGxhdGZvcm0vV2ViU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgiCi0jaW5jbHVkZSAicGxhdGZvcm0v
V2ViU2l6ZS5oIgogI2luY2x1ZGUgInBsYXRmb3JtL1dlYlVSTEVycm9yLmgiCiAjaW5jbHVkZSAi
cGxhdGZvcm0vV2ViVmVjdG9yLmgiCiAKQEAgLTUxNiw2ICs1MTcsMTIgQEAgc3RhdGljIFdlYkRh
dGFTb3VyY2UqIERhdGFTb3VyY2VGb3JEb2NMb2FkZXIoRG9jdW1lbnRMb2FkZXIqIGxvYWRlcikK
ICAgICByZXR1cm4gbG9hZGVyID8gV2ViRGF0YVNvdXJjZUltcGw6OmZyb21Eb2N1bWVudExvYWRl
cihsb2FkZXIpIDogMDsKIH0KIAorV2ViRnJhbWVJbXBsOjpGaW5kTWF0Y2g6OkZpbmRNYXRjaChQ
YXNzUmVmUHRyPFJhbmdlPiByYW5nZSwgaW50IG9yZGluYWwpCisgICAgOiBtX3JhbmdlKHJhbmdl
KQorICAgICwgbV9vcmRpbmFsKG9yZGluYWwpCit7Cit9CisKIC8vIFdlYkZyYW1lIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KIAogY2xhc3MgV2ViRnJhbWVJbXBsOjpEZWZlcnJlZFNjb3BlU3RyaW5nTWF0Y2hlcyB7CkBA
IC0xNjQ3LDYgKzE2NTQsMTAgQEAgYm9vbCBXZWJGcmFtZUltcGw6OmZpbmQoaW50IGlkZW50aWZp
ZXIsCiAgICAgbV9hY3RpdmVNYXRjaCA9IGZyYW1lKCktPmVkaXRvcigpLT5maW5kU3RyaW5nQW5k
U2Nyb2xsVG9WaXNpYmxlKHNlYXJjaFRleHQsIG1fYWN0aXZlTWF0Y2guZ2V0KCksIGZpbmRPcHRp
b25zKTsKIAogICAgIGlmICghbV9hY3RpdmVNYXRjaCkgeworICAgICAgICAvLyBJZiB3ZSdyZSBm
aW5kaW5nIG5leHQgdGhlIG5leHQgYWN0aXZlIG1hdGNoIG1pZ2h0IG5vdCBiZSBpbiB0aGUgY3Vy
cmVudCBmcmFtZS4KKyAgICAgICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRvbid0IHdhbnQgdG8gY2xl
YXIgdGhlIG1hdGNoZXMgY2FjaGUuCisgICAgICAgIGlmICghb3B0aW9ucy5maW5kTmV4dCkKKyAg
ICAgICAgICAgIGNsZWFyRmluZE1hdGNoZXNDYWNoZSgpOwogICAgICAgICBpbnZhbGlkYXRlQXJl
YShJbnZhbGlkYXRlQWxsKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KQEAgLTE2OTgs
NiArMTcwOSw3IEBAIHZvaWQgV2ViRnJhbWVJbXBsOjpzdG9wRmluZGluZyhib29sIGNsZWFyU2Vs
ZWN0aW9uKQogICAgIC8vIFJlbW92ZSBhbGwgbWFya2VycyBmb3IgbWF0Y2hlcyBmb3VuZCBhbmQg
dHVybiBvZmYgdGhlIGhpZ2hsaWdodGluZy4KICAgICBmcmFtZSgpLT5kb2N1bWVudCgpLT5tYXJr
ZXJzKCktPnJlbW92ZU1hcmtlcnMoRG9jdW1lbnRNYXJrZXI6OlRleHRNYXRjaCk7CiAgICAgZnJh
bWUoKS0+ZWRpdG9yKCktPnNldE1hcmtlZFRleHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoZmFsc2Up
OworICAgIGNsZWFyRmluZE1hdGNoZXNDYWNoZSgpOwogCiAgICAgLy8gTGV0IHRoZSBmcmFtZSBr
bm93IHRoYXQgd2UgZG9uJ3Qgd2FudCB0aWNrbWFya3Mgb3IgaGlnaGxpZ2h0aW5nIGFueW1vcmUu
CiAgICAgaW52YWxpZGF0ZUFyZWEoSW52YWxpZGF0ZUFsbCk7CkBAIC0xNzIwLDYgKzE3MzIsMTAg
QEAgdm9pZCBXZWJGcmFtZUltcGw6OnNjb3BlU3RyaW5nTWF0Y2hlcyhpbnQgaWRlbnRpZmllciwK
ICAgICAgICAgLy8gQ2xlYXIgaGlnaGxpZ2h0aW5nIGZvciB0aGlzIGZyYW1lLgogICAgICAgICBp
ZiAoZnJhbWUoKS0+ZWRpdG9yKCktPm1hcmtlZFRleHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoKSkK
ICAgICAgICAgICAgIGZyYW1lKCktPnBhZ2UoKS0+dW5tYXJrQWxsVGV4dE1hdGNoZXMoKTsKKwor
ICAgICAgICAvLyBDbGVhciB0aGUgdGlja21hcmtzIGFuZCByZXN1bHRzIGNhY2hlLgorICAgICAg
ICBjbGVhckZpbmRNYXRjaGVzQ2FjaGUoKTsKKwogICAgICAgICAvLyBDbGVhciB0aGUgY291bnRl
cnMgZnJvbSBsYXN0IG9wZXJhdGlvbi4KICAgICAgICAgbV9sYXN0TWF0Y2hDb3VudCA9IDA7CiAg
ICAgICAgIG1fbmV4dEludmFsaWRhdGVBZnRlciA9IDA7CkBAIC0xODE4LDYgKzE4MzQsOCBAQCB2
b2lkIFdlYkZyYW1lSW1wbDo6c2NvcGVTdHJpbmdNYXRjaGVzKGludCBpZGVudGlmaWVyLAogCiAg
ICAgICAgIGFkZE1hcmtlcihyZXN1bHRSYW5nZS5nZXQoKSwgZm91bmRBY3RpdmVNYXRjaCk7CiAK
KyAgICAgICAgbV9maW5kTWF0Y2hlc0NhY2hlLmFwcGVuZChGaW5kTWF0Y2gocmVzdWx0UmFuZ2Uu
Z2V0KCksIG1fbGFzdE1hdGNoQ291bnQgKyBtYXRjaENvdW50KSk7CisKICAgICAgICAgLy8gU2V0
IHRoZSBuZXcgc3RhcnQgZm9yIHRoZSBzZWFyY2ggcmFuZ2UgdG8gYmUgdGhlIGVuZCBvZiB0aGUg
cHJldmlvdXMKICAgICAgICAgLy8gcmVzdWx0IHJhbmdlLiBUaGVyZSBpcyBubyBuZWVkIHRvIHVz
ZSBhIFZpc2libGVQb3NpdGlvbiBoZXJlLAogICAgICAgICAvLyBzaW5jZSBmaW5kUGxhaW5UZXh0
IHdpbGwgdXNlIGEgVGV4dEl0ZXJhdG9yIHRvIGdvIG92ZXIgdGhlIHZpc2libGUKQEAgLTE4ODgs
NiArMTkwNiw5IEBAIHZvaWQgV2ViRnJhbWVJbXBsOjppbmNyZWFzZU1hdGNoQ291bnQoaW50IGNv
dW50LCBpbnQgaWRlbnRpZmllcikKICAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJl
IGNhbGxlZCBvbiB0aGUgbWFpbmZyYW1lLgogICAgIEFTU0VSVCghcGFyZW50KCkpOwogCisgICAg
aWYgKGNvdW50KQorICAgICAgICArK21fZmluZE1hdGNoTWFya2Vyc1ZlcnNpb247CisKICAgICBt
X3RvdGFsTWF0Y2hDb3VudCArPSBjb3VudDsKIAogICAgIC8vIFVwZGF0ZSB0aGUgVUkgd2l0aCB0
aGUgbGF0ZXN0IGZpbmRpbmdzLgpAQCAtMTkwNiw2ICsxOTI3LDkgQEAgdm9pZCBXZWJGcmFtZUlt
cGw6OnJlcG9ydEZpbmRJblBhZ2VTZWxlY3Rpb24oY29uc3QgV2ViUmVjdCYgc2VsZWN0aW9uUmVj
dCwKIAogdm9pZCBXZWJGcmFtZUltcGw6OnJlc2V0TWF0Y2hDb3VudCgpCiB7CisgICAgaWYgKG1f
dG90YWxNYXRjaENvdW50ID4gMCkKKyAgICAgICAgKyttX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9u
OworCiAgICAgbV90b3RhbE1hdGNoQ291bnQgPSAwOwogICAgIG1fZnJhbWVzU2NvcGluZ0NvdW50
ID0gMDsKIH0KQEAgLTE5NTIsMjUgKzE5NzYsMTkzIEBAIHZvaWQgV2ViRnJhbWVJbXBsOjpkaXNw
YXRjaE1lc3NhZ2VFdmVudFdpdGhPcmlnaW5DaGVjayhjb25zdCBXZWJTZWN1cml0eU9yaWdpbiYK
IAogaW50IFdlYkZyYW1lSW1wbDo6ZmluZE1hdGNoTWFya2Vyc1ZlcnNpb24oKSBjb25zdAogewot
ICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzExMS4KLSAgICByZXR1cm4gMDsKKyAgICAvLyBUaGlz
IGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBvbiB0aGUgbWFpbmZyYW1lLgorICAgIEFT
U0VSVCghcGFyZW50KCkpOworICAgIHJldHVybiBtX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOwor
fQorCit2b2lkIFdlYkZyYW1lSW1wbDo6Y2xlYXJGaW5kTWF0Y2hlc0NhY2hlKCkKK3sKKyAgICBp
ZiAoIW1fZmluZE1hdGNoZXNDYWNoZS5pc0VtcHR5KCkpCisgICAgICAgIHZpZXdJbXBsKCktPm1h
aW5GcmFtZUltcGwoKS0+bV9maW5kTWF0Y2hNYXJrZXJzVmVyc2lvbisrOworCisgICAgbV9maW5k
TWF0Y2hlc0NhY2hlLmNsZWFyKCk7CisgICAgbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFs
c2U7Cit9CisKK2Jvb2wgV2ViRnJhbWVJbXBsOjppc0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCgpIGNv
bnN0Cit7CisgICAgY29uc3QgV2ViRnJhbWVJbXBsKiBtYWluRnJhbWVJbXBsID0gdmlld0ltcGwo
KS0+bWFpbkZyYW1lSW1wbCgpOworICAgIGNvbnN0IFdlYkZyYW1lSW1wbCogYWN0aXZlTWF0Y2hG
cmFtZSA9IG1haW5GcmFtZUltcGwtPmFjdGl2ZU1hdGNoRnJhbWUoKTsKKyAgICByZXR1cm4gYWN0
aXZlTWF0Y2hGcmFtZSAmJiBhY3RpdmVNYXRjaEZyYW1lLT5tX2FjdGl2ZU1hdGNoCisgICAgICAg
ICAgICAmJiBhY3RpdmVNYXRjaEZyYW1lLT5mcmFtZSgpLT50cmVlKCktPmlzRGVzY2VuZGFudE9m
KG1haW5GcmFtZUltcGwtPmZyYW1lKCkpOworfQorCit2b2lkIFdlYkZyYW1lSW1wbDo6dXBkYXRl
RmluZE1hdGNoUmVjdHMoKQoreworICAgIFdlYlNpemUgY3VycmVudENvbnRlbnRzU2l6ZSA9IGNv
bnRlbnRzU2l6ZSgpOworICAgIGlmIChtX2NvbnRlbnRzU2l6ZUZvckN1cnJlbnRGaW5kTWF0Y2hS
ZWN0cyAhPSBjdXJyZW50Q29udGVudHNTaXplKSB7CisgICAgICAgIG1fY29udGVudHNTaXplRm9y
Q3VycmVudEZpbmRNYXRjaFJlY3RzID0gY3VycmVudENvbnRlbnRzU2l6ZTsKKyAgICAgICAgbV9m
aW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFsc2U7CisgICAgfQorCisgICAgdW5zaWduZWQgZGVh
ZE1hdGNoZXMgPSAwOworICAgIGZvciAoVmVjdG9yPEZpbmRNYXRjaD46Oml0ZXJhdG9yIGl0ID0g
bV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2luKCk7IGl0ICE9IG1fZmluZE1hdGNoZXNDYWNoZS5lbmQo
KTsgKytpdCkgeworICAgICAgICBpZiAoIWl0LT5tX3JhbmdlLT5ib3VuZGFyeVBvaW50c1ZhbGlk
KCkgfHwgIWl0LT5tX3JhbmdlLT5zdGFydENvbnRhaW5lcigpLT5pbkRvY3VtZW50KCkpCisgICAg
ICAgICAgICBpdC0+bV9yZWN0ID0gRmxvYXRSZWN0KCk7CisgICAgICAgIGVsc2UgaWYgKCFtX2Zp
bmRNYXRjaFJlY3RzQXJlVmFsaWQpCisgICAgICAgICAgICBpdC0+bV9yZWN0ID0gZmluZEluUGFn
ZVJlY3RGcm9tUmFuZ2UoaXQtPm1fcmFuZ2UpOworCisgICAgICAgIGlmIChpdC0+bV9yZWN0Lmlz
RW1wdHkoKSkKKyAgICAgICAgICAgICsrZGVhZE1hdGNoZXM7CisgICAgfQorCisgICAgLy8gUmVt
b3ZlIGFueSBpbnZhbGlkIG1hdGNoZXMgZnJvbSB0aGUgY2FjaGUuCisgICAgaWYgKGRlYWRNYXRj
aGVzKSB7CisgICAgICAgIFZlY3RvcjxGaW5kTWF0Y2g+IGZpbHRlcmVkTWF0Y2hlczsKKyAgICAg
ICAgZmlsdGVyZWRNYXRjaGVzLnJlc2VydmVDYXBhY2l0eShtX2ZpbmRNYXRjaGVzQ2FjaGUuc2l6
ZSgpIC0gZGVhZE1hdGNoZXMpOworCisgICAgICAgIGZvciAoVmVjdG9yPEZpbmRNYXRjaD46OmNv
bnN0X2l0ZXJhdG9yIGl0ID0gbV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2luKCk7IGl0ICE9IG1fZmlu
ZE1hdGNoZXNDYWNoZS5lbmQoKTsgKytpdCkKKyAgICAgICAgICAgIGlmICghaXQtPm1fcmVjdC5p
c0VtcHR5KCkpCisgICAgICAgICAgICAgICAgZmlsdGVyZWRNYXRjaGVzLmFwcGVuZCgqaXQpOwor
CisgICAgICAgIG1fZmluZE1hdGNoZXNDYWNoZS5zd2FwKGZpbHRlcmVkTWF0Y2hlcyk7CisgICAg
fQorCisgICAgLy8gSW52YWxpZGF0ZSB0aGUgcmVjdHMgaW4gY2hpbGQgZnJhbWVzLiBXaWxsIGJl
IHVwZGF0ZWQgbGF0ZXIgZHVyaW5nIHRyYXZlcnNhbC4KKyAgICBpZiAoIW1fZmluZE1hdGNoUmVj
dHNBcmVWYWxpZCkKKyAgICAgICAgZm9yIChXZWJGcmFtZSogY2hpbGQgPSBmaXJzdENoaWxkKCk7
IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpKQorICAgICAgICAgICAgc3RhdGlj
X2Nhc3Q8V2ViRnJhbWVJbXBsKj4oY2hpbGQpLT5tX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQgPSBm
YWxzZTsKKworICAgIG1fZmluZE1hdGNoUmVjdHNBcmVWYWxpZCA9IHRydWU7CiB9CiAKIFdlYkZs
b2F0UmVjdCBXZWJGcmFtZUltcGw6OmFjdGl2ZUZpbmRNYXRjaFJlY3QoKQogewotICAgIC8vIEZJ
WE1FOiBJbXBsZW1lbnQgdGhpcyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD05MzExMS4KLSAgICByZXR1cm4gV2ViRmxvYXRSZWN0KCk7CisgICAgLy8g
VGhpcyBmdW5jdGlvbiBzaG91bGQgb25seSBiZSBjYWxsZWQgb24gdGhlIG1haW5mcmFtZS4KKyAg
ICBBU1NFUlQoIXBhcmVudCgpKTsKKworICAgIGlmICghaXNBY3RpdmVNYXRjaEZyYW1lVmFsaWQo
KSkKKyAgICAgICAgcmV0dXJuIFdlYkZsb2F0UmVjdCgpOworCisgICAgcmV0dXJuIFdlYkZsb2F0
UmVjdChmaW5kSW5QYWdlUmVjdEZyb21SYW5nZShtX2N1cnJlbnRBY3RpdmVNYXRjaEZyYW1lLT5t
X2FjdGl2ZU1hdGNoKSk7CiB9CiAKIHZvaWQgV2ViRnJhbWVJbXBsOjpmaW5kTWF0Y2hSZWN0cyhX
ZWJWZWN0b3I8V2ViRmxvYXRSZWN0PiYgb3V0cHV0UmVjdHMpCiB7Ci0gICAgLy8gRklYTUU6IElt
cGxlbWVudCB0aGlzIGFzIHBhcnQgb2YgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTkzMTExLgorICAgIC8vIFRoaXMgZnVuY3Rpb24gc2hvdWxkIG9ubHkgYmUgY2FsbGVk
IG9uIHRoZSBtYWluZnJhbWUuCisgICAgQVNTRVJUKCFwYXJlbnQoKSk7CisKKyAgICBWZWN0b3I8
V2ViRmxvYXRSZWN0PiBtYXRjaFJlY3RzOworICAgIGZvciAoV2ViRnJhbWVJbXBsKiBmcmFtZSA9
IHRoaXM7IGZyYW1lOyBmcmFtZSA9IHN0YXRpY19jYXN0PFdlYkZyYW1lSW1wbCo+KGZyYW1lLT50
cmF2ZXJzZU5leHQoZmFsc2UpKSkKKyAgICAgICAgZnJhbWUtPmFwcGVuZEZpbmRNYXRjaFJlY3Rz
KG1hdGNoUmVjdHMpOworCisgICAgb3V0cHV0UmVjdHMgPSBtYXRjaFJlY3RzOworfQorCit2b2lk
IFdlYkZyYW1lSW1wbDo6YXBwZW5kRmluZE1hdGNoUmVjdHMoVmVjdG9yPFdlYkZsb2F0UmVjdD4m
IGZyYW1lUmVjdHMpCit7CisgICAgdXBkYXRlRmluZE1hdGNoUmVjdHMoKTsKKyAgICBmcmFtZVJl
Y3RzLnJlc2VydmVDYXBhY2l0eShmcmFtZVJlY3RzLnNpemUoKSArIG1fZmluZE1hdGNoZXNDYWNo
ZS5zaXplKCkpOworICAgIGZvciAoVmVjdG9yPEZpbmRNYXRjaD46OmNvbnN0X2l0ZXJhdG9yIGl0
ID0gbV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2luKCk7IGl0ICE9IG1fZmluZE1hdGNoZXNDYWNoZS5l
bmQoKTsgKytpdCkgeworICAgICAgICBBU1NFUlQoIWl0LT5tX3JlY3QuaXNFbXB0eSgpKTsKKyAg
ICAgICAgZnJhbWVSZWN0cy5hcHBlbmQoaXQtPm1fcmVjdCk7CisgICAgfQogfQogCiBpbnQgV2Vi
RnJhbWVJbXBsOjpzZWxlY3ROZWFyZXN0RmluZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9pbnQmIHBv
aW50LCBXZWJSZWN0KiBzZWxlY3Rpb25SZWN0KQogewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQg
dGhpcyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05
MzExMS4KLSAgICByZXR1cm4gMDsKKyAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJl
IGNhbGxlZCBvbiB0aGUgbWFpbmZyYW1lLgorICAgIEFTU0VSVCghcGFyZW50KCkpOworCisgICAg
V2ViRnJhbWVJbXBsKiBiZXN0RnJhbWUgPSAwOworICAgIGludCBpbmRleEluQmVzdEZyYW1lID0g
LTE7CisgICAgZmxvYXQgZGlzdGFuY2VJbkJlc3RGcmFtZSA9IEZMVF9NQVg7CisKKyAgICBmb3Ig
KFdlYkZyYW1lSW1wbCogZnJhbWUgPSB0aGlzOyBmcmFtZTsgZnJhbWUgPSBzdGF0aWNfY2FzdDxX
ZWJGcmFtZUltcGwqPihmcmFtZS0+dHJhdmVyc2VOZXh0KGZhbHNlKSkpIHsKKyAgICAgICAgZmxv
YXQgZGlzdGFuY2VJbkZyYW1lOworICAgICAgICBpbnQgaW5kZXhJbkZyYW1lID0gZnJhbWUtPm5l
YXJlc3RGaW5kTWF0Y2gocG9pbnQsIGRpc3RhbmNlSW5GcmFtZSk7CisgICAgICAgIGlmIChkaXN0
YW5jZUluRnJhbWUgPCBkaXN0YW5jZUluQmVzdEZyYW1lKSB7CisgICAgICAgICAgICBiZXN0RnJh
bWUgPSBmcmFtZTsKKyAgICAgICAgICAgIGluZGV4SW5CZXN0RnJhbWUgPSBpbmRleEluRnJhbWU7
CisgICAgICAgICAgICBkaXN0YW5jZUluQmVzdEZyYW1lID0gZGlzdGFuY2VJbkZyYW1lOworICAg
ICAgICB9CisgICAgfQorCisgICAgaWYgKGluZGV4SW5CZXN0RnJhbWUgIT0gLTEpCisgICAgICAg
IHJldHVybiBiZXN0RnJhbWUtPnNlbGVjdEZpbmRNYXRjaChzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
aW5kZXhJbkJlc3RGcmFtZSksIHNlbGVjdGlvblJlY3QpOworCisgICAgcmV0dXJuIC0xOworfQor
CitpbnQgV2ViRnJhbWVJbXBsOjpuZWFyZXN0RmluZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9pbnQm
IHBvaW50LCBmbG9hdCYgZGlzdGFuY2VTcXVhcmVkKQoreworICAgIHVwZGF0ZUZpbmRNYXRjaFJl
Y3RzKCk7CisKKyAgICBpbnQgbmVhcmVzdCA9IC0xOworICAgIGRpc3RhbmNlU3F1YXJlZCA9IEZM
VF9NQVg7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBtX2ZpbmRNYXRjaGVzQ2FjaGUuc2l6
ZSgpOyArK2kpIHsKKyAgICAgICAgQVNTRVJUKCFtX2ZpbmRNYXRjaGVzQ2FjaGVbaV0ubV9yZWN0
LmlzRW1wdHkoKSk7CisgICAgICAgIEZsb2F0U2l6ZSBvZmZzZXQgPSBwb2ludCAtIG1fZmluZE1h
dGNoZXNDYWNoZVtpXS5tX3JlY3QuY2VudGVyKCk7CisgICAgICAgIGZsb2F0IHdpZHRoID0gb2Zm
c2V0LndpZHRoKCk7CisgICAgICAgIGZsb2F0IGhlaWdodCA9IG9mZnNldC5oZWlnaHQoKTsKKyAg
ICAgICAgZmxvYXQgY3VycmVudERpc3RhbmNlU3F1YXJlZCA9IHdpZHRoICogd2lkdGggKyBoZWln
aHQgKiBoZWlnaHQ7CisgICAgICAgIGlmIChjdXJyZW50RGlzdGFuY2VTcXVhcmVkIDwgZGlzdGFu
Y2VTcXVhcmVkKSB7CisgICAgICAgICAgICBuZWFyZXN0ID0gaTsKKyAgICAgICAgICAgIGRpc3Rh
bmNlU3F1YXJlZCA9IGN1cnJlbnREaXN0YW5jZVNxdWFyZWQ7CisgICAgICAgIH0KKyAgICB9Cisg
ICAgcmV0dXJuIG5lYXJlc3Q7Cit9CisKK2ludCBXZWJGcmFtZUltcGw6OnNlbGVjdEZpbmRNYXRj
aCh1bnNpZ25lZCBpbmRleCwgV2ViUmVjdCogc2VsZWN0aW9uUmVjdCkKK3sKKyAgICBBU1NFUlQo
aW5kZXggPCBtX2ZpbmRNYXRjaGVzQ2FjaGUuc2l6ZSgpKTsKKworICAgIFJlZlB0cjxSYW5nZT4g
cmFuZ2UgPSBtX2ZpbmRNYXRjaGVzQ2FjaGVbaW5kZXhdLm1fcmFuZ2U7CisgICAgaWYgKCFyYW5n
ZS0+Ym91bmRhcnlQb2ludHNWYWxpZCgpIHx8ICFyYW5nZS0+c3RhcnRDb250YWluZXIoKS0+aW5E
b2N1bWVudCgpKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICAvLyBDaGVjayBpZiB0aGUgbWF0
Y2ggaXMgYWxyZWFkeSBzZWxlY3RlZC4KKyAgICBXZWJGcmFtZUltcGwqIGFjdGl2ZU1hdGNoRnJh
bWUgPSB2aWV3SW1wbCgpLT5tYWluRnJhbWVJbXBsKCktPm1fY3VycmVudEFjdGl2ZU1hdGNoRnJh
bWU7CisgICAgaWYgKHRoaXMgIT0gYWN0aXZlTWF0Y2hGcmFtZSB8fCAhbV9hY3RpdmVNYXRjaCB8
fCAhYXJlUmFuZ2VzRXF1YWwobV9hY3RpdmVNYXRjaC5nZXQoKSwgcmFuZ2UuZ2V0KCkpKSB7Cisg
ICAgICAgIGlmIChpc0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCgpKQorICAgICAgICAgICAgYWN0aXZl
TWF0Y2hGcmFtZS0+c2V0TWFya2VyQWN0aXZlKGFjdGl2ZU1hdGNoRnJhbWUtPm1fYWN0aXZlTWF0
Y2guZ2V0KCksIGZhbHNlKTsKKworICAgICAgICBtX2FjdGl2ZU1hdGNoSW5kZXhJbkN1cnJlbnRG
cmFtZSA9IG1fZmluZE1hdGNoZXNDYWNoZVtpbmRleF0ubV9vcmRpbmFsIC0gMTsKKworICAgICAg
ICAvLyBTZXQgdGhpcyBmcmFtZSBhcyB0aGUgYWN0aXZlIGZyYW1lICh0aGUgb25lIHdpdGggdGhl
IGFjdGl2ZSBoaWdobGlnaHQpLgorICAgICAgICB2aWV3SW1wbCgpLT5tYWluRnJhbWVJbXBsKCkt
Pm1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWUgPSB0aGlzOworICAgICAgICB2aWV3SW1wbCgpLT5z
ZXRGb2N1c2VkRnJhbWUodGhpcyk7CisKKyAgICAgICAgbV9hY3RpdmVNYXRjaCA9IHJhbmdlLnJl
bGVhc2UoKTsKKyAgICAgICAgc2V0TWFya2VyQWN0aXZlKG1fYWN0aXZlTWF0Y2guZ2V0KCksIHRy
dWUpOworCisgICAgICAgIC8vIENsZWFyIGFueSB1c2VyIHNlbGVjdGlvbiwgdG8gbWFrZSBzdXJl
IEZpbmQgTmV4dCBjb250aW51ZXMgb24gZnJvbSB0aGUgbWF0Y2ggd2UganVzdCBhY3RpdmF0ZWQu
CisgICAgICAgIGV4ZWN1dGVDb21tYW5kKFdlYlN0cmluZzo6ZnJvbVVURjgoIlVuc2VsZWN0Iikp
OworCisgICAgICAgIC8vIE1ha2Ugc3VyZSBubyBub2RlIGlzIGZvY3VzZWQuIFNlZSBodHRwOi8v
Y3JidWcuY29tLzM4NzAwLgorICAgICAgICBpZiAoZnJhbWUoKS0+ZG9jdW1lbnQoKSkKKyAgICAg
ICAgICAgIGZyYW1lKCktPmRvY3VtZW50KCktPnNldEZvY3VzZWROb2RlKDApOworICAgIH0KKwor
ICAgIEludFJlY3QgYWN0aXZlTWF0Y2hSZWN0OworICAgIEludFJlY3QgYWN0aXZlTWF0Y2hCb3Vu
ZGluZ0JveCA9IG1fYWN0aXZlTWF0Y2gtPmJvdW5kaW5nQm94KHRydWUpOworCisgICAgaWYgKCFh
Y3RpdmVNYXRjaEJvdW5kaW5nQm94LmlzRW1wdHkoKSkgeworICAgICAgICBpZiAobV9hY3RpdmVN
YXRjaC0+Zmlyc3ROb2RlKCkgJiYgbV9hY3RpdmVNYXRjaC0+Zmlyc3ROb2RlKCktPnJlbmRlcmVy
KCkpCisgICAgICAgICAgICBtX2FjdGl2ZU1hdGNoLT5maXJzdE5vZGUoKS0+cmVuZGVyZXIoKS0+
c2Nyb2xsUmVjdFRvVmlzaWJsZShhY3RpdmVNYXRjaEJvdW5kaW5nQm94LAorICAgICAgICAgICAg
ICAgICAgICBTY3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOZWVkZWQsIFNjcm9sbEFsaWdu
bWVudDo6YWxpZ25DZW50ZXJJZk5lZWRlZCk7CisKKyAgICAgICAgLy8gWm9vbSB0byB0aGUgYWN0
aXZlIG1hdGNoLgorICAgICAgICBhY3RpdmVNYXRjaFJlY3QgPSBmcmFtZVZpZXcoKS0+Y29udGVu
dHNUb1dpbmRvdyhhY3RpdmVNYXRjaEJvdW5kaW5nQm94KTsKKyAgICAgICAgdmlld0ltcGwoKS0+
em9vbVRvRmluZEluUGFnZVJlY3QoYWN0aXZlTWF0Y2hSZWN0KTsKKyAgICB9CisKKyAgICBpZiAo
c2VsZWN0aW9uUmVjdCkKKyAgICAgICAgKnNlbGVjdGlvblJlY3QgPSBhY3RpdmVNYXRjaFJlY3Q7
CisKKyAgICByZXR1cm4gb3JkaW5hbE9mRmlyc3RNYXRjaEZvckZyYW1lKHRoaXMpICsgbV9hY3Rp
dmVNYXRjaEluZGV4SW5DdXJyZW50RnJhbWUgKyAxOwogfQogCiB2b2lkIFdlYkZyYW1lSW1wbDo6
ZGVsaXZlckludGVudChjb25zdCBXZWJJbnRlbnQmIGludGVudCwgV2ViTWVzc2FnZVBvcnRDaGFu
bmVsQXJyYXkqIHBvcnRzLCBXZWJEZWxpdmVyZWRJbnRlbnRDbGllbnQqIGludGVudENsaWVudCkK
QEAgLTIwOTAsNiArMjI4Miw4IEBAIFdlYkZyYW1lSW1wbDo6V2ViRnJhbWVJbXBsKFdlYkZyYW1l
Q2xpZW50KiBjbGllbnQpCiAgICAgLCBtX2ZyYW1lc1Njb3BpbmdDb3VudCgtMSkKICAgICAsIG1f
c2NvcGluZ0NvbXBsZXRlKGZhbHNlKQogICAgICwgbV9uZXh0SW52YWxpZGF0ZUFmdGVyKDApCisg
ICAgLCBtX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKDApCisgICAgLCBtX2ZpbmRNYXRjaFJlY3Rz
QXJlVmFsaWQoZmFsc2UpCiAgICAgLCBtX2FuaW1hdGlvbkNvbnRyb2xsZXIodGhpcykKICAgICAs
IG1faWRlbnRpZmllcihnZW5lcmF0ZUZyYW1lSWRlbnRpZmllcigpKQogICAgICwgbV9pblNhbWVE
b2N1bWVudEhpc3RvcnlMb2FkKGZhbHNlKQpAQCAtMjE2OCw2ICsyMzYyLDE1IEBAIFBhc3NSZWZQ
dHI8RnJhbWU+IFdlYkZyYW1lSW1wbDo6Y3JlYXRlQ2hpbGRGcmFtZSgKICAgICByZXR1cm4gY2hp
bGRGcmFtZS5yZWxlYXNlKCk7CiB9CiAKK3ZvaWQgV2ViRnJhbWVJbXBsOjpkaWRDaGFuZ2VDb250
ZW50c1NpemUoY29uc3QgSW50U2l6ZSYgc2l6ZSkKK3sKKyAgICAvLyBUaGlzIGlzIG9ubHkgcG9z
c2libGUgb24gdGhlIG1haW4gZnJhbWUuCisgICAgaWYgKG1fdG90YWxNYXRjaENvdW50ID4gMCkg
eworICAgICAgICBBU1NFUlQoIXBhcmVudCgpKTsKKyAgICAgICAgKyttX2ZpbmRNYXRjaE1hcmtl
cnNWZXJzaW9uOworICAgIH0KK30KKwogdm9pZCBXZWJGcmFtZUltcGw6OmNyZWF0ZUZyYW1lVmll
dygpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUpOyAvLyBJZiBtX2ZyYW1lIGRvZXNuJ3QgZXhpc3Qs
IHdlIHByb2JhYmx5IGRpZG4ndCBpbml0IHByb3Blcmx5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJGcmFtZUltcGwuaAppbmRleCAwYWJhNTZmNGMxYWZiMTU4MTU1MDg1N2VjZWZiZjY3
ZDZmYTg1M2JiLi5kOWQ3MjBlNWUxYTNjYTI5MzIxNGE4YTg3MmQ5YzhhM2U3ZjQ4ZDg1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaApAQCAtMzcsNiArMzcsNyBA
QAogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVMb2FkZXJDbGllbnRJbXBsLmgi
CiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlICJwbGF0Zm9ybS9XZWJTaXpl
LmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBpbGVyLmg+CiAjaW5jbHVkZSA8d3RmL093blB0ci5oPgog
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC0yNDgsNiArMjQ5LDkgQEAgcHVibGljOgog
ICAgIFBhc3NSZWZQdHI8V2ViQ29yZTo6RnJhbWU+IGNyZWF0ZUNoaWxkRnJhbWUoCiAgICAgICAg
IGNvbnN0IFdlYkNvcmU6OkZyYW1lTG9hZFJlcXVlc3QmLCBXZWJDb3JlOjpIVE1MRnJhbWVPd25l
ckVsZW1lbnQqKTsKIAorICAgIC8vIENhbGxlZCB3aGVuIHRoZSBzaXplIG9mIHRoZSBjb250YWlu
ZWQgZG9jdW1lbnQgY2hhbmdlcy4KKyAgICB2b2lkIGRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25z
dCBXZWJDb3JlOjpJbnRTaXplJik7CisKICAgICB2b2lkIGNyZWF0ZUZyYW1lVmlldygpOwogCiAg
ICAgc3RhdGljIFdlYkZyYW1lSW1wbCogZnJvbUZyYW1lKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSk7
CkBAIC0yNzIsNiArMjc2LDEwIEBAIHB1YmxpYzoKICAgICAvLyB2YWx1ZSBjYW4gYmUgMCBpZiBu
byBmcmFtZSBoYXMgYW4gYWN0aXZlIG1hdGNoLgogICAgIGNvbnN0IFdlYkZyYW1lSW1wbCogYWN0
aXZlTWF0Y2hGcmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWU7
IH0KIAorICAgIC8vIFJldHVybnMgdGhlIGFjdGl2ZSBtYXRjaCBpbiB0aGUgY3VycmVudCBmcmFt
ZS4gQ291bGQgYmUgYSBudWxsIHJhbmdlIGlmCisgICAgLy8gdGhlIGxvY2FsIGZyYW1lIGhhcyBu
byBhY3RpdmUgbWF0Y2guCisgICAgV2ViQ29yZTo6UmFuZ2UqIGFjdGl2ZU1hdGNoKCkgY29uc3Qg
eyByZXR1cm4gbV9hY3RpdmVNYXRjaC5nZXQoKTsgfQorCiAgICAgLy8gV2hlbiBhIEZpbmQgb3Bl
cmF0aW9uIGVuZHMsIHdlIHdhbnQgdG8gc2V0IHRoZSBzZWxlY3Rpb24gdG8gd2hhdCB3YXMgYWN0
aXZlCiAgICAgLy8gYW5kIHNldCBmb2N1cyB0byB0aGUgZmlyc3QgZm9jdXNhYmxlIG5vZGUgd2Ug
ZmluZCAoc3RhcnRpbmcgd2l0aCB0aGUgZmlyc3QKICAgICAvLyBub2RlIGluIHRoZSBtYXRjaGVk
IHJhbmdlIGFuZCBnb2luZyB1cCB0aGUgaW5oZXJpdGFuY2UgY2hhaW4pLiBJZiB3ZSBmaW5kCkBA
IC0yOTcsNiArMzA1LDE5IEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIERlZmVycmVkU2Nv
cGVTdHJpbmdNYXRjaGVzOwogICAgIGZyaWVuZCBjbGFzcyBGcmFtZUxvYWRlckNsaWVudEltcGw7
CiAKKyAgICBzdHJ1Y3QgRmluZE1hdGNoIHsKKyAgICAgICAgUmVmUHRyPFdlYkNvcmU6OlJhbmdl
PiBtX3JhbmdlOworCisgICAgICAgIC8vIDEtYmFzZWQgaW5kZXggd2l0aGluIHRoaXMgZnJhbWUu
CisgICAgICAgIGludCBtX29yZGluYWw7CisKKyAgICAgICAgLy8gSW4gZmluZC1pbi1wYWdlIGNv
b3JkaW5hdGVzLgorICAgICAgICAvLyBMYXppbHkgY2FsY3VsYXRlZCBieSB1cGRhdGVGaW5kTWF0
Y2hSZWN0cy4KKyAgICAgICAgV2ViQ29yZTo6RmxvYXRSZWN0IG1fcmVjdDsKKworICAgICAgICBG
aW5kTWF0Y2goUGFzc1JlZlB0cjxXZWJDb3JlOjpSYW5nZT4sIGludCBvcmRpbmFsKTsKKyAgICB9
OworCiAgICAgLy8gQSBiaXQgbWFzayBzcGVjaWZ5aW5nIGFyZWEgb2YgdGhlIGZyYW1lIHRvIGlu
dmFsaWRhdGUuCiAgICAgZW51bSBBcmVhVG9JbnZhbGlkYXRlIHsKICAgICAgIEludmFsaWRhdGVO
b3RoaW5nLApAQCAtMzE1LDYgKzMzNiwzMiBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVwb3J0Rmlu
ZEluUGFnZVNlbGVjdGlvbigKICAgICAgICAgY29uc3QgV2ViUmVjdCYgc2VsZWN0aW9uUmVjdCwg
aW50IGFjdGl2ZU1hdGNoT3JkaW5hbCwgaW50IGlkZW50aWZpZXIpOwogCisgICAgLy8gQ2xlYXIg
dGhlIGZpbmQtaW4tcGFnZSBtYXRjaGVzIGNhY2hlIGZvcmNpbmcgcmVjdHMgdG8gYmUgZnVsbHkK
KyAgICAvLyBjYWxjdWxhdGVkIGFnYWluIG5leHQgdGltZSB1cGRhdGVGaW5kTWF0Y2hSZWN0cyBp
cyBjYWxsZWQuCisgICAgdm9pZCBjbGVhckZpbmRNYXRjaGVzQ2FjaGUoKTsKKworICAgIC8vIENo
ZWNrIGlmIHRoZSBhY3RpdmVNYXRjaEZyYW1lIHN0aWxsIGV4aXN0cyBpbiB0aGUgZnJhbWUgdHJl
ZS4KKyAgICBib29sIGlzQWN0aXZlTWF0Y2hGcmFtZVZhbGlkKCkgY29uc3Q7CisKKyAgICAvLyBS
ZXR1cm4gdGhlIGluZGV4IGluIHRoZSBmaW5kLWluLXBhZ2UgY2FjaGUgb2YgdGhlIG1hdGNoIGNs
b3Nlc3QgdG8gdGhlCisgICAgLy8gcHJvdmlkZWQgcG9pbnQgaW4gZmluZC1pbi1wYWdlIGNvb3Jk
aW5hdGVzLCBvciAtMSBpbiBjYXNlIG9mIGVycm9yLgorICAgIC8vIFRoZSBzcXVhcmVkIGRpc3Rh
bmNlIHRvIHRoZSBjbG9zZXN0IG1hdGNoIGlzIHJldHVybmVkIGluIHRoZSBkaXN0YW5jZVNxdWFy
ZWQgcGFyYW1ldGVyLgorICAgIGludCBuZWFyZXN0RmluZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9p
bnQmLCBmbG9hdCYgZGlzdGFuY2VTcXVhcmVkKTsKKworICAgIC8vIFNlbGVjdCBhIGZpbmQtaW4t
cGFnZSBtYXRjaCBtYXJrZXIgaW4gdGhlIGN1cnJlbnQgZnJhbWUgdXNpbmcgYSBjYWNoZQorICAg
IC8vIG1hdGNoIGluZGV4IHJldHVybmVkIGJ5IG5lYXJlc3RGaW5kTWF0Y2guIFJldHVybnMgdGhl
IG9yZGluYWwgb2YgdGhlIG5ldworICAgIC8vIHNlbGVjdGVkIG1hdGNoIG9yIC0xIGluIGNhc2Ug
b2YgZXJyb3IuIEFsc28gcHJvdmlkZXMgdGhlIGJvdW5kaW5nIGJveCBvZgorICAgIC8vIHRoZSBt
YXJrZXIgaW4gd2luZG93IGNvb3JkaW5hdGVzIGlmIHNlbGVjdGlvblJlY3QgaXMgbm90IG51bGwu
CisgICAgaW50IHNlbGVjdEZpbmRNYXRjaCh1bnNpZ25lZCBpbmRleCwgV2ViUmVjdCogc2VsZWN0
aW9uUmVjdCk7CisKKyAgICAvLyBDb21wdXRlIGFuZCBjYWNoZSB0aGUgcmVjdHMgZm9yIEZpbmRN
YXRjaGVzIGlmIHJlcXVpcmVkLgorICAgIC8vIFJlY3RzIGFyZSBhdXRvbWF0aWNhbGx5IGludmFs
aWRhdGVkIGluIGNhc2Ugb2YgY29udGVudCBzaXplIGNoYW5nZXMsCisgICAgLy8gcHJvcGFnYXRp
bmcgdGhlIGludmFsaWRhdGlvbiB0byBjaGlsZCBmcmFtZXMuCisgICAgdm9pZCB1cGRhdGVGaW5k
TWF0Y2hSZWN0cygpOworCisgICAgLy8gQXBwZW5kIHRoZSBmaW5kLWluLXBhZ2UgbWF0Y2ggcmVj
dHMgb2YgdGhlIGN1cnJlbnQgZnJhbWUgdG8gdGhlIHByb3ZpZGVkIHZlY3Rvci4KKyAgICB2b2lk
IGFwcGVuZEZpbmRNYXRjaFJlY3RzKFZlY3RvcjxXZWJGbG9hdFJlY3Q+JiBmcmFtZVJlY3RzKTsK
KwogICAgIC8vIEludmFsaWRhdGVzIGEgY2VydGFpbiBhcmVhIHdpdGhpbiB0aGUgZnJhbWUuCiAg
ICAgdm9pZCBpbnZhbGlkYXRlQXJlYShBcmVhVG9JbnZhbGlkYXRlKTsKIApAQCAtNDE0LDYgKzQ2
MSwyMSBAQCBwcml2YXRlOgogICAgIC8vIEEgbGlzdCBvZiBhbGwgb2YgdGhlIHBlbmRpbmcgY2Fs
bHMgdG8gc2NvcGVTdHJpbmdNYXRjaGVzLgogICAgIFZlY3RvcjxEZWZlcnJlZFNjb3BlU3RyaW5n
TWF0Y2hlcyo+IG1fZGVmZXJyZWRTY29waW5nV29yazsKIAorICAgIC8vIFZlcnNpb24gbnVtYmVy
IGluY3JlbWVudGVkIG9uIHRoZSBtYWluIGZyYW1lIG9ubHkgd2hlbmV2ZXIgdGhlIGRvY3VtZW50
CisgICAgLy8gZmluZC1pbi1wYWdlIG1hdGNoIG1hcmtlcnMgY2hhbmdlLiBJdCBzaG91bGQgYmUg
MCBmb3IgYWxsIG90aGVyIGZyYW1lcy4KKyAgICBpbnQgbV9maW5kTWF0Y2hNYXJrZXJzVmVyc2lv
bjsKKworICAgIC8vIExvY2FsIGNhY2hlIG9mIHRoZSBmaW5kIG1hdGNoIG1hcmtlcnMgY3VycmVu
dGx5IGRpc3BsYXllZCBmb3IgdGhpcyBmcmFtZS4KKyAgICBWZWN0b3I8RmluZE1hdGNoPiBtX2Zp
bmRNYXRjaGVzQ2FjaGU7CisKKyAgICAvLyBEZXRlcm1pbmVzIGlmIHRoZSByZWN0cyBpbiB0aGUg
ZmluZC1pbi1wYWdlIG1hdGNoZXMgY2FjaGUgb2YgdGhpcyBmcmFtZQorICAgIC8vIGFyZSBpbnZh
bGlkIGFuZCBzaG91bGQgYmUgcmVjb21wdXRlZC4KKyAgICBib29sIG1fZmluZE1hdGNoUmVjdHNB
cmVWYWxpZDsKKworICAgIC8vIENvbnRlbnRzIHNpemUgd2hlbiBmaW5kLWluLXBhZ2UgbWF0Y2gg
cmVjdHMgd2VyZSBsYXN0IGNvbXB1dGVkIGZvciB0aGlzCisgICAgLy8gZnJhbWUncyBjYWNoZS4K
KyAgICBXZWJTaXplIG1fY29udGVudHNTaXplRm9yQ3VycmVudEZpbmRNYXRjaFJlY3RzOworCiAg
ICAgLy8gVmFsaWQgYmV0d2VlbiBjYWxscyB0byBCZWdpblByaW50KCkgYW5kIEVuZFByaW50KCku
IENvbnRhaW50cyB0aGUgcHJpbnQKICAgICAvLyBpbmZvcm1hdGlvbi4gSXMgdXNlZCBieSBQcmlu
dFBhZ2UoKS4KICAgICBPd25QdHI8Q2hyb21lUHJpbnRDb250ZXh0PiBtX3ByaW50Q29udGV4dDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNw
cCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAppbmRleCBj
NjI4ZDAwYWZiMmMyNDNlZTVkNDEwOWRjZDliMjlhMDY2MzA1YWYzLi5hMDI1MDM5YTM1NjAzZjlh
NjQ0Y2U1YzE0OWE3YTdjM2NkODQ5OTFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90
ZXN0cy9XZWJGcmFtZVRlc3QuY3BwCkBAIC0zMiw5ICszMiwxMSBAQAogCiAjaW5jbHVkZSAiV2Vi
RnJhbWUuaCIKIAorI2luY2x1ZGUgIkZsb2F0UmVjdC5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAj
aW5jbHVkZSAiRnJhbWVUZXN0SGVscGVycy5oIgogI2luY2x1ZGUgIkZyYW1lVmlldy5oIgorI2lu
Y2x1ZGUgIlJhbmdlLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJvci5oIgogI2luY2x1ZGUgIlVS
TFRlc3RIZWxwZXJzLmgiCiAjaW5jbHVkZSAiV2ViRGF0YVNvdXJjZS5oIgpAQCAtNTEsMTEgKzUz
LDE0IEBACiAjaW5jbHVkZSAiV2ViU2V0dGluZ3MuaCIKICNpbmNsdWRlICJXZWJWaWV3Q2xpZW50
LmgiCiAjaW5jbHVkZSAiV2ViVmlld0ltcGwuaCIKKyNpbmNsdWRlICJwbGF0Zm9ybS9XZWJGbG9h
dFJlY3QuaCIKICNpbmNsdWRlICJ2OC5oIgogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAjaW5j
bHVkZSA8d2Via2l0L3N1cHBvcnQvd2Via2l0X3N1cHBvcnQuaD4KIAogdXNpbmcgbmFtZXNwYWNl
IFdlYktpdDsKK3VzaW5nIFdlYkNvcmU6OkZsb2F0UmVjdDsKK3VzaW5nIFdlYkNvcmU6OlJhbmdl
OwogdXNpbmcgV2ViS2l0OjpVUkxUZXN0SGVscGVyczo6dG9LVVJMOwogCiBuYW1lc3BhY2UgewpA
QCAtODM1LDQgKzg0MCwxMDEgQEAgVEVTVF9GKFdlYkZyYW1lVGVzdCwgRGlkQ3JlYXRlRnJhbWUp
CiAgICAgRVhQRUNUX0VRKHdlYkZyYW1lQ2xpZW50Lm1fcGFyZW50LCB3ZWJWaWV3LT5tYWluRnJh
bWUoKSk7CiB9CiAKK2NsYXNzIEZpbmRVcGRhdGVXZWJGcmFtZUNsaWVudCA6IHB1YmxpYyBXZWJG
cmFtZUNsaWVudCB7CitwdWJsaWM6CisgICAgRmluZFVwZGF0ZVdlYkZyYW1lQ2xpZW50KCkKKyAg
ICAgICAgOiBtX2ZpbmRSZXN1bHRzQXJlUmVhZHkoZmFsc2UpCisgICAgeyB9CisKKyAgICB2aXJ0
dWFsIHZvaWQgcmVwb3J0RmluZEluUGFnZU1hdGNoQ291bnQoaW50LCBpbnQsIGJvb2wgZmluYWxV
cGRhdGUpIE9WRVJSSURFCisgICAgeworICAgICAgICBpZiAoZmluYWxVcGRhdGUpCisgICAgICAg
ICAgICBtX2ZpbmRSZXN1bHRzQXJlUmVhZHkgPSB0cnVlOworICAgIH0KKworICAgIGJvb2wgZmlu
ZFJlc3VsdHNBcmVSZWFkeSgpIGNvbnN0IHsgcmV0dXJuIG1fZmluZFJlc3VsdHNBcmVSZWFkeTsg
fQorCitwcml2YXRlOgorICAgIGJvb2wgbV9maW5kUmVzdWx0c0FyZVJlYWR5OworfTsKKworVEVT
VF9GKFdlYkZyYW1lVGVzdCwgRmluZEluUGFnZU1hdGNoUmVjdHMpCit7CisgICAgcmVnaXN0ZXJN
b2NrZWRIdHRwVVJMTG9hZCgiZmluZF9pbl9wYWdlLmh0bWwiKTsKKyAgICByZWdpc3Rlck1vY2tl
ZEh0dHBVUkxMb2FkKCJmaW5kX2luX3BhZ2VfZnJhbWUuaHRtbCIpOworCisgICAgRmluZFVwZGF0
ZVdlYkZyYW1lQ2xpZW50IGNsaWVudDsKKyAgICBXZWJWaWV3KiB3ZWJWaWV3ID0gRnJhbWVUZXN0
SGVscGVyczo6Y3JlYXRlV2ViVmlld0FuZExvYWQobV9iYXNlVVJMICsgImZpbmRfaW5fcGFnZS5o
dG1sIiwgdHJ1ZSwgJmNsaWVudCk7CisgICAgd2ViVmlldy0+cmVzaXplKFdlYlNpemUoNjQwLCA0
ODApKTsKKyAgICB3ZWJWaWV3LT5sYXlvdXQoKTsKKyAgICB3ZWJraXRfc3VwcG9ydDo6UnVuQWxs
UGVuZGluZ01lc3NhZ2VzKCk7CisKKyAgICBzdGF0aWMgY29uc3QgY2hhcioga0ZpbmRTdHJpbmcg
PSAicmVzdWx0IjsKKyAgICBzdGF0aWMgY29uc3QgaW50IGtGaW5kSWRlbnRpZmllciA9IDEyMzQ1
OworICAgIHN0YXRpYyBjb25zdCBpbnQga051bVJlc3VsdHMgPSAxMDsKKworICAgIFdlYkZpbmRP
cHRpb25zIG9wdGlvbnM7CisgICAgV2ViU3RyaW5nIHNlYXJjaFRleHQgPSBXZWJTdHJpbmc6OmZy
b21VVEY4KGtGaW5kU3RyaW5nKTsKKyAgICBXZWJGcmFtZUltcGwqIG1haW5GcmFtZSA9IHN0YXRp
Y19jYXN0PFdlYkZyYW1lSW1wbCo+KHdlYlZpZXctPm1haW5GcmFtZSgpKTsKKyAgICBFWFBFQ1Rf
VFJVRShtYWluRnJhbWUtPmZpbmQoa0ZpbmRJZGVudGlmaWVyLCBzZWFyY2hUZXh0LCBvcHRpb25z
LCBmYWxzZSwgMCkpOworCisgICAgZm9yIChXZWJGcmFtZSogZnJhbWUgPSBtYWluRnJhbWU7IGZy
YW1lOyBmcmFtZSA9IGZyYW1lLT50cmF2ZXJzZU5leHQoZmFsc2UpKQorICAgICAgICBmcmFtZS0+
c2NvcGVTdHJpbmdNYXRjaGVzKGtGaW5kSWRlbnRpZmllciwgc2VhcmNoVGV4dCwgb3B0aW9ucywg
dHJ1ZSk7CisKKyAgICB3ZWJraXRfc3VwcG9ydDo6UnVuQWxsUGVuZGluZ01lc3NhZ2VzKCk7Cisg
ICAgRVhQRUNUX1RSVUUoY2xpZW50LmZpbmRSZXN1bHRzQXJlUmVhZHkoKSk7CisKKyAgICBXZWJW
ZWN0b3I8V2ViRmxvYXRSZWN0PiB3ZWJNYXRjaFJlY3RzOworICAgIG1haW5GcmFtZS0+ZmluZE1h
dGNoUmVjdHMod2ViTWF0Y2hSZWN0cyk7CisgICAgQVNTRVJUX0VRKHdlYk1hdGNoUmVjdHMuc2l6
ZSgpLCBzdGF0aWNfY2FzdDxzaXplX3Q+KGtOdW1SZXN1bHRzKSk7CisgICAgaW50IHJlY3RzVmVy
c2lvbiA9IG1haW5GcmFtZS0+ZmluZE1hdGNoTWFya2Vyc1ZlcnNpb24oKTsKKworICAgIGZvciAo
aW50IHJlc3VsdEluZGV4ID0gMDsgcmVzdWx0SW5kZXggPCBrTnVtUmVzdWx0czsgKytyZXN1bHRJ
bmRleCkgeworICAgICAgICBGbG9hdFJlY3QgcmVzdWx0UmVjdCA9IHN0YXRpY19jYXN0PEZsb2F0
UmVjdD4od2ViTWF0Y2hSZWN0c1tyZXN1bHRJbmRleF0pOworCisgICAgICAgIC8vIFNlbGVjdCB0
aGUgbWF0Y2ggYnkgdGhlIGNlbnRlciBvZiBpdHMgcmVjdC4KKyAgICAgICAgRVhQRUNUX0VRKG1h
aW5GcmFtZS0+c2VsZWN0TmVhcmVzdEZpbmRNYXRjaChyZXN1bHRSZWN0LmNlbnRlcigpLCAwKSwg
cmVzdWx0SW5kZXggKyAxKTsKKworICAgICAgICAvLyBDaGVjayB0aGF0IHRoZSBmaW5kIHJlc3Vs
dCBvcmRlcmluZyBtYXRjaGVzIHdpdGggb3VyIGV4cGVjdGF0aW9ucy4KKyAgICAgICAgUmFuZ2Uq
IHJlc3VsdCA9IG1haW5GcmFtZS0+YWN0aXZlTWF0Y2hGcmFtZSgpLT5hY3RpdmVNYXRjaCgpOwor
ICAgICAgICBBU1NFUlRfVFJVRShyZXN1bHQpOworICAgICAgICByZXN1bHQtPnNldEVuZChyZXN1
bHQtPmVuZENvbnRhaW5lcigpLCByZXN1bHQtPmVuZE9mZnNldCgpICsgMik7CisgICAgICAgIEVY
UEVDVF9FUShyZXN1bHQtPnRleHQoKSwgU3RyaW5nOjpmb3JtYXQoIiVzICVkIiwga0ZpbmRTdHJp
bmcsIHJlc3VsdEluZGV4KSk7CisKKyAgICAgICAgLy8gVmVyaWZ5IHRoYXQgdGhlIGV4cGVjdGVk
IG1hdGNoIHJlY3QgYWxzbyBtYXRjaGVzIHRoZSBjdXJyZW50bHkgYWN0aXZlIG1hdGNoLgorICAg
ICAgICAvLyBDb21wYXJlIHRoZSBlbmNsb3NpbmcgcmVjdHMgdG8gcHJldmVudCBwcmVjaXNpb24g
aXNzdWVzIGNhdXNlZCBieSBDU1MgdHJhbnNmb3Jtcy4KKyAgICAgICAgRmxvYXRSZWN0IGFjdGl2
ZU1hdGNoID0gbWFpbkZyYW1lLT5hY3RpdmVGaW5kTWF0Y2hSZWN0KCk7CisgICAgICAgIEVYUEVD
VF9FUShlbmNsb3NpbmdJbnRSZWN0KGFjdGl2ZU1hdGNoKSwgZW5jbG9zaW5nSW50UmVjdChyZXN1
bHRSZWN0KSk7CisKKyAgICAgICAgLy8gVGhlIHJlY3RzIHZlcnNpb24gc2hvdWxkIG5vdCBoYXZl
IGNoYW5nZWQuCisgICAgICAgIEVYUEVDVF9FUShtYWluRnJhbWUtPmZpbmRNYXRjaE1hcmtlcnNW
ZXJzaW9uKCksIHJlY3RzVmVyc2lvbik7CisgICAgfQorCisgICAgLy8gQWxsIHJlc3VsdHMgYWZ0
ZXIgdGhlIGZpcnN0IHR3byBvbmVzIHNob3VsZCBiZSBiZWxvdyBiZXR3ZWVuIHRoZW0gaW4gZmlu
ZC1pbi1wYWdlIGNvb3JkaW5hdGVzLgorICAgIC8vIFRoaXMgaXMgYmVjYXVzZSByZXN1bHRzIDIg
dG8gOSBhcmUgaW5zaWRlIGFuIGlmcmFtZSBsb2NhdGVkIGJldHdlZW4gcmVzdWx0cyAwIGFuZCAx
LiBUaGlzIGFwcGxpZXMgdG8gdGhlIGZpeGVkIGRpdiB0b28uCisgICAgRVhQRUNUX1RSVUUod2Vi
TWF0Y2hSZWN0c1swXS55IDwgd2ViTWF0Y2hSZWN0c1sxXS55KTsKKyAgICBmb3IgKGludCByZXN1
bHRJbmRleCA9IDI7IHJlc3VsdEluZGV4IDwga051bVJlc3VsdHM7ICsrcmVzdWx0SW5kZXgpIHsK
KyAgICAgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1swXS55IDwgd2ViTWF0Y2hSZWN0c1ty
ZXN1bHRJbmRleF0ueSk7CisgICAgICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMV0ueSA+
IHdlYk1hdGNoUmVjdHNbcmVzdWx0SW5kZXhdLnkpOworICAgIH0KKworICAgIC8vIFJlc3VsdCAz
IHNob3VsZCBiZSBiZWxvdyBib3RoIDIgYW5kIDQuIFRoaXMgaXMgY2F1c2VkIGJ5IHRoZSBDU1Mg
dHJhbnNmb3JtIGluIHRoZSBjb250YWluaW5nIGRpdi4KKyAgICAvLyBJZiB0aGUgdHJhbnNmb3Jt
IGRvZXNuJ3Qgd29yayB0aGVuIDMgd2lsbCBiZSBiZXR3ZWVuIDIgYW5kIDQuCisgICAgRVhQRUNU
X1RSVUUod2ViTWF0Y2hSZWN0c1szXS55ID4gd2ViTWF0Y2hSZWN0c1syXS55KTsKKyAgICBFWFBF
Q1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzNdLnkgPiB3ZWJNYXRjaFJlY3RzWzRdLnkpOworCisgICAg
Ly8gUmVzdWx0cyA2LCA3LCA4IGFuZCA5IHNob3VsZCBiZSBvbmUgYmVsb3cgdGhlIG90aGVyIGlu
IHRoYXQgc2FtZSBvcmRlci4KKyAgICAvLyBJZiBvdmVyZmxvdzpzY3JvbGwgaXMgbm90IHByb3Bl
cmx5IGhhbmRsZWQgdGhlbiByZXN1bHQgOCB3b3VsZCBiZSBiZWxvdyByZXN1bHQgOSBvcgorICAg
IC8vIHJlc3VsdCA3IGFib3ZlIHJlc3VsdCA2IGRlcGVuZGluZyBvbiB0aGUgc2Nyb2xsLgorICAg
IEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbNl0ueSA8IHdlYk1hdGNoUmVjdHNbN10ueSk7Cisg
ICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1s3XS55IDwgd2ViTWF0Y2hSZWN0c1s4XS55KTsK
KyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzhdLnkgPCB3ZWJNYXRjaFJlY3RzWzldLnkp
OworCisgICAgLy8gUmVzaXppbmcgc2hvdWxkIHVwZGF0ZSB0aGUgcmVjdHMgdmVyc2lvbi4KKyAg
ICBtYWluRnJhbWUtPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShXZWJTaXplKDgwMCwgNjAwKSk7Cisg
ICAgRVhQRUNUX1RSVUUobWFpbkZyYW1lLT5maW5kTWF0Y2hNYXJrZXJzVmVyc2lvbigpICE9IHJl
Y3RzVmVyc2lvbik7CisKKyAgICB3ZWJWaWV3LT5jbG9zZSgpOworfQorCiB9IC8vIG5hbWVzcGFj
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9kYXRhL2ZpbmRfaW5f
cGFnZS5odG1sIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9kYXRhL2ZpbmRfaW5fcGFn
ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmMwOWM5ZGQwNjA1NTk1MWFjMmYyNzJmMjhlOWExNTE4ZmFmZDdm
YWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEv
ZmluZF9pbl9wYWdlLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13
aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIG1heGltdW0tc2NhbGU9MS4wLCB1c2VyLXNjYWxhYmxl
PW5vIiAvPgorPC9oZWFkPgorPGJvZHk+CitUaGlzIGEgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3Qg
dGVzdC48L2JyPgorcmVzdWx0IDA8L2JyPgorPGlmcmFtZSBzcmM9ImZpbmRfaW5fcGFnZV9mcmFt
ZS5odG1sIiBoZWlnaHQ9IjMwMCIgc2Nyb2xsaW5nPSJ5ZXMiPjwvaWZyYW1lPgorPC9icj4KK3Jl
c3VsdCAxCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWwgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDdk
MjlhZTBmZGQzNzg2MDZmN2UxMmM5YmQ5OTdkZTNiNjAzN2YyOAotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9maW5kX2luX3BhZ2VfZnJhbWUuaHRt
bApAQCAtMCwwICsxLDU4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0
YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNj
YWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9bm8iIC8+Cis8c3R5bGUg
dHlwZT0idGV4dC9jc3MiPgorZGl2LnRyYW5zZm9ybSB7CisgIGJhY2tncm91bmQtY29sb3I6ICMw
MEZGMDA7CisgIHdpZHRoOiAxMDBweDsKKyAgaGVpZ2h0OiAxMDBweDsKKyAgcGFkZGluZy1sZWZ0
OiAzMHB4OworICBwYWRkaW5nLXRvcDogMjBweDsKKyAgLXdlYmtpdC10cmFuc2Zvcm06bWF0cml4
KDAuODY2LDAuNSwtMC41LDAuODY2LDEyMCwxNTApOworfQorZGl2LnNjcm9sbCB7CisgIGJhY2tn
cm91bmQtY29sb3I6ICMwMEZGRkY7CisgIHdpZHRoOiAxMDBweDsKKyAgaGVpZ2h0OiAxMDBweDsK
KyAgb3ZlcmZsb3c6IHNjcm9sbDsKK30KK2Rpdi5maXhlZCB7CisgIGJhY2tncm91bmQtY29sb3I6
ICNGRjAwMDA7CisgIGxlZnQ6IDIwMHB4OworICB0b3A6IDUwcHg7CisgIHdpZHRoOiAxMDBweDsK
KyAgaGVpZ2h0OiAxMDBweDsKKyAgcG9zaXRpb246IGZpeGVkOworfQorPC9zdHlsZT4KKzwvaGVh
ZD4KKzxib2R5PgorVGhpcyBpcyBhIHRlc3QuCis8L2JyPjwvYnI+Cis8L2JyPjwvYnI+Cis8L2Jy
PjwvYnI+CitGb28gYmFyLgorPC9icj48L2JyPgorPC9icj48L2JyPgorPC9icj48L2JyPgorcmVz
dWx0IDIKKzxkaXYgY2xhc3M9InRyYW5zZm9ybSI+CityZXN1bHQgMworPC9kaXY+CityZXN1bHQg
NAorPGRpdiBjbGFzcz0iZml4ZWQiPgorcmVzdWx0IDUKKzwvZGl2PgorcmVzdWx0IDYKKzxkaXYg
Y2xhc3M9InNjcm9sbCI+CityZXN1bHQgNworRm9vIGJhci4KKzwvYnI+PC9icj4KKzwvYnI+PC9i
cj4KKzwvYnI+PC9icj4KK3Jlc3VsdCA4Cis8L2Rpdj4KK3Jlc3VsdCA5Cis8L2JvZHk+Cis8L2h0
bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>157791</attachid>
            <date>2012-08-10 12:38:02 -0700</date>
            <delta_ts>2012-08-10 16:39:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93111-20120810203733.patch</filename>
            <type>text/plain</type>
            <size>43344</size>
            <attacher name="Leandro Graciá Gil">leandrogracia</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI1MzAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmYwMDk4OGI1ODk3Yzkz
ZjliNDgwN2ZiMWU2OTVmMDM1MWVlMDI2Yi4uNGVhMzVhMzE4YTc0NmEwNTVkMTZiNmFmNjY2ZWUx
YzIyZGZhZmY5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTA4LTEwICBMZWFu
ZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KKworICAgICAgICBb
Q2hyb21pdW1dIEltcGxlbWVudCB0aGUgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzIEFQSQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRyb2R1Y2UgdGhl
IGZpbmQtaW4tcGFnZSBjb29yZGluYXRlIHN5c3RlbS4gVGhpcyBzeXN0ZW0gdHJpZXMgdG8gc29s
dmUKKyAgICAgICAgdGhlIHVuaW50dWl0aXZlIHRpY2ttYXJrIHJlc3VsdHMgcHJlc2VudGVkIGlu
IHBhZ2VzIHdpdGggbXVsdGlwbGUgZnJhbWVzCisgICAgICAgIGFuZCBzY3JvbGxlZCBjb250ZW50
cyB3aGVyZSB0aGUgZmluZCByZXN1bHRzIG1pZ2h0IG5vdCBiZSBpbiB0aGUgdmlzaWJsZQorICAg
ICAgICBhcmVhIG9mIGEgZnJhbWUsIHdoaWNoIG1pZ2h0IGxlYWQgdG8gdGlja21hcmtzIGJlbG93
IHRoZSBjb250YWluZXIgZnJhbWUuCisKKyAgICAgICAgVG8gYWNoaWV2ZSB0aGlzLCB0aGlzIGNv
b3JkaW5hdGUgc3lzdGVtIGdvZXMgdXAgdGhlIHJlbmRlciB0cmVlCisgICAgICAgIG5vcm1hbGl6
aW5nIHRoZSBjb29yZGluYXRlcyBieSB0aGUgYWN0dWFsIGNvbnRlbnRzIHNpemUgb2YgaXRzIGNv
bnRhaW5lci4KKyAgICAgICAgVGhpcyBsZWFkcyB0byB0aWNrbWFya3Mgc2NhbGVkIHRvIHRoZSB2
aXNpYmxlIHNpemUgb2YgdGhlaXIgZnJhbWUKKyAgICAgICAgaW5kZXBlbmRlbnRseSBvZiBpdHMg
c2Nyb2xsLiBUaGlzIGNvb3JkaW5hdGUgc3lzdGVtIHN1cHBvcnRzIGFsc28gQ1NTCisgICAgICAg
IHNjcm9sbDpvdmVyZmxvdywgdHJhbnNmb3JtcyBhbmQgdGhlIGRpZmZlcmVudCBwb3NpdGlvbnMu
CisKKyAgICAgICAgQWxzbyBhZGQgYW4gYXV4aWxpYXJ5IG1ldGhvZCB0byBSYW5nZSBpbiBvcmRl
ciB0byBwcm92aWRlIGEgdHJhbnNmb3JtCisgICAgICAgIGZyaWVuZGx5IHdheSB0byByZXRyaWV2
ZSB0aGUgYWJzb2x1dGUgY29vcmRpbmF0ZXMgb2YgdGhlIGVuY2xvc2luZworICAgICAgICBib3Vu
ZGluZyBib3ggd2l0aG91dCB0aGUgYWRqdXN0bWVudCBvcGVyYXRpb25zIHRoYXQgdGhlIGV4aXN0
aW5nCisgICAgICAgIGVuY2xvc2luZ1JlY3QgbWV0aG9kIGRvZXMuCisKKyAgICAgICAgVGVzdGVk
IGJ5IFdlYkZyYW1lVGVzdCBXZWJLaXQgdW5pdCB0ZXN0LgorCisgICAgICAgICogZG9tL1Jhbmdl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlOjp0cmFuc2Zvcm1GcmllbmRseUJvdW5kaW5n
Qm94KTogYWRkIGEgdHJhbnNmb3JtLWZyaWVuZGx5IGVxdWl2YWxlbnQgb2YgYm91bmRpbmdCb3gu
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vUmFuZ2UuaDogbW92ZSBib3VuZGlu
Z0JveCB0byB0aGUgZ3JvdXAgb2Ygbm9uLXRyYW5zZm9ybS1mcmllbmRseSBtZXRob2RzLgorICAg
ICAgICAoUmFuZ2UpOgorCiAyMDEyLTA4LTEwICBEYW4gQmVybnN0ZWluICA8bWl0ekBhcHBsZS5j
b20+CiAKICAgICAgICAgUmVuYW1lZCB0aGUg4oCcTW9kdWxlcy93ZWJhdWRpb+KAnSBncm91cCBp
biB0aGUgWGNvZGUgcHJvamVjdCB0byDigJx3ZWJhdWRpb+KAnSBhbmQgbW92ZWQgaXQgaW50bwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCA5YTE3ZjI3NTU5ZmRhNjM4OTMyZmVhM2I1Y2Jl
MDQwMGIzMWZmNjc4Li4wYjM1OTIzMjE2MzMxYWQ0M2VjMTUzYWI3OTNlMjdkYzQ4ODE5ZDVhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU3IEBACisyMDEyLTA4LTEwICBM
ZWFuZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBbQ2hyb21pdW1dIEltcGxlbWVudCB0aGUgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzIEFQSQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnQg
dGhlIGZ1bmNpb25hbGl0eSBvZiB0aGUgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzIEFQSSBpbiBX
ZWJGcmFtZS4KKyAgICAgICAgVGhlc2UgbWV0aG9kcyBrZWVwIGEgY2FjaGUgb2YgdGhlIG1hdGNo
IHJlY3RzIGluIGEgc3BlY2lhbCBjb29yZGluYXRlIHN5c3RlbQorICAgICAgICAoZmluZC1pbi1w
YWdlIGNvb3JkaW5hdGVzKSBhbmQgdXBkYXRlIHRoZW0gb24gc2l6ZSBjaGFuZ2VzLiBUaGV5IGFs
c28gYWxsb3cKKyAgICAgICAgdG8gcmVjb3ZlciB0aGUgbWF0Y2ggY2xvc2VzdCB0byBhIGdpdmVu
IHBvaW50LCB0aGVyZWZvcmUgZW5hYmxpbmcgdG8gbW92ZQorICAgICAgICB0byBmaW5kIG1hdGNo
ZXMgd2hlbiB0YXBwaW5nIG9uIHRoZWlyIGNvcnJlc3BvbmRpbmcgdGlja21hcmtzLgorCisgICAg
ICAgICogV2ViS2l0Lmd5cDogYWRkIEZpbmRJblBhZ2VDb29yZGluYXRlcy5oIC8gY3BwLgorICAg
ICAgICAqIHNyYy9DaHJvbWVDbGllbnRJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6Q2hyb21l
Q2xpZW50SW1wbDo6Y29udGVudHNTaXplQ2hhbmdlZCk6IHByb3BhZ2F0ZSBkaWRDaGFuZ2VDb250
ZW50c1NpemUgdG8gV2ViRnJhbWVJbXBsLgorICAgICAgICAqIHNyYy9GaW5kSW5QYWdlQ29vcmRp
bmF0ZXMuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdCk6CisgICAgICAgIChXZWJLaXQ6OnRv
Tm9ybWFsaXplZFJlY3QpOiBhdXhpbGlhcnkgaW50ZXJuYWwgZnVuY3Rpb24uCisgICAgICAgIChX
ZWJLaXQ6OmZpbmRJblBhZ2VSZWN0RnJvbUFic29sdXRlUmVjdCk6IG1haW4gY29vcmRpbmF0ZSBj
b252ZXJzaW9uIGZ1bmN0aW9uLgorICAgICAgICAoV2ViS2l0OjpmaW5kSW5QYWdlUmVjdEZyb21S
YW5nZSk6IGNvbnZlbmllbmNlIGNvbnZlcnNpb24gZnVuY3Rpb24gZm9yIFJhbmdlcy4KKyAgICAg
ICAgKiBzcmMvRmluZEluUGFnZUNvb3JkaW5hdGVzLmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29y
ZSk6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJGcmFtZUltcGwuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OkZpbmRNYXRjaDo6RmluZE1hdGNoKTogZmlu
ZCBtYXRjaGVzIGNhY2hlIGNvbnN0cnVjdG9yLgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAg
KFdlYktpdDo6V2ViRnJhbWVJbXBsOjpmaW5kKTogY2xlYXIgbWF0Y2ggY2FjaGUgd2hlbiBhcHBy
b3ByaWF0ZSBhbmQgem9vbSBpbnRvIHJlc3VsdHMgb24gdGhlIEFuZHJvaWQgcG9ydC4KKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpzdG9wRmluZGluZyk6IGNsZWFyIG1hdGNoZXMgY2Fj
aGUuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6c2NvcGVTdHJpbmdNYXRjaGVzKTog
YWRkIG5ldyByZXN1bHRzIHRvIHRoZSBtYXRjaGVzIGNhY2hlLgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZUltcGw6OmluY3JlYXNlTWF0Y2hDb3VudCk6IHVwZGF0ZSB0aGUgbWF0Y2hlcyBjYWNo
ZSB2ZXJzaW9uLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OnJlc2V0TWF0Y2hDb3Vu
dCk6IHVwZGF0ZSB0aGUgbWF0Y2hlcyBjYWNoZSB2ZXJzaW9uLgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZUltcGw6OmZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKTogbmV3IEFQSSBwcm92aWRpbmcg
dGhlIG1hdGNoZXMgY2FjaGUgdmVyc2lvbi4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBs
OjpjbGVhckZpbmRNYXRjaGVzQ2FjaGUpOiBpbnRlcm5hbCB1dGlsaXR5IG1ldGhvZCB0byByZXNl
dCB0aGUgbWF0Y2hlcyBjYWNoZS4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjppc0Fj
dGl2ZU1hdGNoRnJhbWVWYWxpZCk6IGludGVybmFsIHV0aWxpdHkgbWV0aG9kIHRvIGNoZWNrIGlm
IHRoZSBsb2NhbCBmcmFtZSBpcyBzdGlsbCBpbiB0aGUgZnJhbWUgdHJlZS4KKyAgICAgICAgKFdl
YktpdDo6V2ViRnJhbWVJbXBsOjp1cGRhdGVGaW5kTWF0Y2hSZWN0cyk6IGludGVybmFsIHV0aWxp
dHkgbWV0aG9kIHRvIHVwZGF0ZSB0aGUgbWF0Y2ggcmVzdWx0IHJlY3RzIGlmIHJlcXVpcmVkLgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFjdGl2ZUZpbmRNYXRjaFJlY3QpOiBuZXcg
QVBJIHByb3ZpZGluZyB0aGUgYWN0aXZlIGZpbmQgbWF0Y2ggcmVjdCBpbiBmaW5kLWluLXBhZ2Ug
Y29vcmRpbmF0ZXMuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6ZmluZE1hdGNoUmVj
dHMpOiBuZXcgQVBJIHJldHVybmluZyB0aGUgdmFsaWQgbWF0Y2ggcmVjdHMgaW4gZmluZC1pbi1w
YWdlIGNvb3JkaW5hdGVzLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFwcGVuZEZp
bmRNYXRjaFJlY3RzKTogaW50ZXJuYWwgdXRpbGl0eSBtZXRob2QgdG8gY29uY2F0ZW5hdGUgdGhl
IG1hdGNoIHJlc3VsdHMgb2YgbXVsdGlwbGUgZnJhbWVzLgorICAgICAgICAoV2ViS2l0OjpXZWJG
cmFtZUltcGw6OnNlbGVjdE5lYXJlc3RGaW5kTWF0Y2gpOiBuZXcgQVBJIHNlbGVjdGluZyB0aGUg
ZmluZCBtYXRjaCBjbG9zZXIgdG8gYSBwb2ludCBpbiBmaW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMu
CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6bmVhcmVzdEZpbmRNYXRjaCk6IGludGVy
bmFsIHV0aWxpdHkgbWV0aG9kIHRvIGZpbmQgdGhlIG5lYXJlc3QgZmluZCBtYXRjaCB0byBhIHBv
aW50IGluIGEgZnJhbWUuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6c2VsZWN0Rmlu
ZE1hdGNoKTogaW50ZXJuYWwgdXRpbGl0eSBtZXRob2QgdG8gc2VsZWN0IGEgbWF0Y2ggaW4gdGhl
IGNhY2hlLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OldlYkZyYW1lSW1wbCk6IGlu
aXRpYWxpemF0aW9uIG9mIG5ldyB2YXJpYWJsZXMuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1l
SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKTogaW52YWxpZGF0ZSB0aGUgY2FjaGVkIG1hdGNo
IHJlY3QgY29vcmRpbmF0ZXMgb24gZnJhbWUgY29udGVudCBzaXplIGNoYW5nZXMuCisgICAgICAg
ICogc3JjL1dlYkZyYW1lSW1wbC5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJG
cmFtZUltcGwpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFjdGl2ZU1hdGNoRnJh
bWUpOiByZW1vdmUgdW5yZXF1aXJlZCBjb25zdC4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJ
bXBsOjphY3RpdmVNYXRjaCk6IGV4cG9zZSB0aGUgcmFuZ2Ugb2YgdGhlIGFjdGl2ZSBtYXRjaCB0
byBhbGxvdyB0ZXN0aW5nLgorICAgICAgICAoRmluZE1hdGNoKTogY2FjaGUgc3RydWN0dXJlIGZv
ciBmaW5kIG1hdGNoZXMuCisgICAgICAgICogdGVzdHMvV2ViRnJhbWVUZXN0LmNwcDogbmV3IHRl
c3QgY2FzZSBmb3IgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzLgorICAgICAgICAqIHRlc3RzL2Rh
dGEvZmluZF9pbl9wYWdlLmh0bWw6IEFkZGVkLiBUZXN0IGNhc2UgbGF5b3V0LgorICAgICAgICAq
IHRlc3RzL2RhdGEvZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWw6IEFkZGVkLiBUZXN0IGNhc2UgbGF5
b3V0LgorCiAyMDEyLTA4LTEwICBEYW5hIEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFtjaHJvbWl1bV0gUmVtb3ZlIHNjaXNzb3IgZnJvbSB0aGUgbmFtaW5ncyBpbiBD
Q09jY2x1c2lvblRyYWNrZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCmluZGV4IGU5NDNjZjVkOTVlY2I0NGQw
OThjNzNmZTRkMmU4Nzg0ODRjYWFiNTcuLmFkZmI0OGViODI5MzFiN2I4NDQwZDFhYzE2YWE2YWMz
NTM3ODVlNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcApAQCAtMTk0Miw3ICsxOTQyLDYgQEAgdm9pZCBS
YW5nZTo6Z2V0Qm9yZGVyQW5kVGV4dFF1YWRzKFZlY3RvcjxGbG9hdFF1YWQ+JiBxdWFkcykgY29u
c3QKICAgICB9CiB9CiAKLSAgICAKIEZsb2F0UmVjdCBSYW5nZTo6Ym91bmRpbmdSZWN0KCkgY29u
c3QKIHsKICAgICBpZiAoIW1fc3RhcnQuY29udGFpbmVyKCkpCkBAIC0xOTYyLDYgKzE5NjEsMTkg
QEAgRmxvYXRSZWN0IFJhbmdlOjpib3VuZGluZ1JlY3QoKSBjb25zdAogICAgIHJldHVybiByZXN1
bHQ7CiB9CiAKK0Zsb2F0UmVjdCBSYW5nZTo6dHJhbnNmb3JtRnJpZW5kbHlCb3VuZGluZ0JveCgp
IGNvbnN0Cit7CisgICAgRmxvYXRSZWN0IHJlc3VsdDsKKyAgICBWZWN0b3I8RmxvYXRRdWFkPiBx
dWFkczsKKyAgICB0ZXh0UXVhZHMocXVhZHMpOworCisgICAgY29uc3Qgc2l6ZV90IG4gPSBxdWFk
cy5zaXplKCk7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBuOyArK2kpCisgICAgICAgIHJl
c3VsdC51bml0ZShxdWFkc1tpXS5ib3VuZGluZ0JveCgpKTsKKworICAgIHJldHVybiByZXN1bHQ7
Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2lmbmRlZiBOREVCVUcKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1Jhbmdl
LmgKaW5kZXggYjg0YmQ2MTQ1NDA5ZDNhMTliMTM1NGYzNTc3ODY4NWY4ODBlMjljMi4uMzMwMWQz
ZDdiZTE0MTg5ZjNlNWQxNzE0ZGE0N2JkYzdmNGQxNTFjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZG9tL1JhbmdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKQEAgLTEx
Miw4ICsxMTIsNiBAQCBwdWJsaWM6CiAKICAgICBTaGFkb3dSb290KiBzaGFkb3dSb290KCkgY29u
c3Q7CiAKLSAgICBJbnRSZWN0IGJvdW5kaW5nQm94KCkgY29uc3Q7Ci0gICAgCiAgICAgZW51bSBS
YW5nZUluRml4ZWRQb3NpdGlvbiB7CiAgICAgICAgIE5vdEZpeGVkUG9zaXRpb24sCiAgICAgICAg
IFBhcnRpYWxseUZpeGVkUG9zaXRpb24sCkBAIC0xMjIsMTAgKzEyMCwxMyBAQCBwdWJsaWM6CiAg
ICAgCiAgICAgLy8gTm90IHRyYW5zZm9ybS1mcmllbmRseQogICAgIHZvaWQgdGV4dFJlY3RzKFZl
Y3RvcjxJbnRSZWN0PiYsIGJvb2wgdXNlU2VsZWN0aW9uSGVpZ2h0ID0gZmFsc2UsIFJhbmdlSW5G
aXhlZFBvc2l0aW9uKiA9IDApIGNvbnN0OworICAgIEludFJlY3QgYm91bmRpbmdCb3goKSBjb25z
dDsKKwogICAgIC8vIFRyYW5zZm9ybS1mcmllbmRseQogICAgIHZvaWQgdGV4dFF1YWRzKFZlY3Rv
cjxGbG9hdFF1YWQ+JiwgYm9vbCB1c2VTZWxlY3Rpb25IZWlnaHQgPSBmYWxzZSwgUmFuZ2VJbkZp
eGVkUG9zaXRpb24qID0gMCkgY29uc3Q7CiAgICAgdm9pZCBnZXRCb3JkZXJBbmRUZXh0UXVhZHMo
VmVjdG9yPEZsb2F0UXVhZD4mKSBjb25zdDsKICAgICBGbG9hdFJlY3QgYm91bmRpbmdSZWN0KCkg
Y29uc3Q7CisgICAgRmxvYXRSZWN0IHRyYW5zZm9ybUZyaWVuZGx5Qm91bmRpbmdCb3goKSBjb25z
dDsKIAogICAgIHZvaWQgbm9kZUNoaWxkcmVuQ2hhbmdlZChDb250YWluZXJOb2RlKik7CiAgICAg
dm9pZCBub2RlQ2hpbGRyZW5XaWxsQmVSZW1vdmVkKENvbnRhaW5lck5vZGUqKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cCBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vV2ViS2l0Lmd5cAppbmRleCA5MWY4NTIxYjM1ZDlhMzNiZGE0MGVkMTI2OThlZmEyNDg2
MzBiZGQwLi45MjU1OWYxMTRiOGJhOGQyMjRhMTAyMzliY2FkZjllMjEyOTA2YTY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9XZWJLaXQuZ3lwCkBAIC0zOTQsNiArMzk0LDggQEAKICAgICAgICAgICAgICAg
ICAnc3JjL0V2ZW50TGlzdGVuZXJXcmFwcGVyLmgnLAogICAgICAgICAgICAgICAgICdzcmMvRXh0
ZXJuYWxQb3B1cE1lbnUuY3BwJywKICAgICAgICAgICAgICAgICAnc3JjL0V4dGVybmFsUG9wdXBN
ZW51LmgnLAorICAgICAgICAgICAgICAgICdzcmMvRmluZEluUGFnZUNvb3JkaW5hdGVzLmNwcCcs
CisgICAgICAgICAgICAgICAgJ3NyYy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuaCcsCiAgICAgICAg
ICAgICAgICAgJ3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3BwJywKICAgICAgICAgICAgICAg
ICAnc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oJywKICAgICAgICAgICAgICAgICAnc3JjL0Zy
YW1lTmV0d29ya2luZ0NvbnRleHRJbXBsLmgnLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcAppbmRleCBhZDEwMDBlNjNhMWZkNzVhOGE3OGM2MzJm
NDIwYzk4M2Q3MzNmMjYxLi4zMjlhOTlmMTljZTg2NzgwYjAzMjljYTE0MTZkNzdlZTE2OTgzMzRk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBs
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNw
cApAQCAtNTc1LDYgKzU3NSw3IEBAIHZvaWQgQ2hyb21lQ2xpZW50SW1wbDo6Y29udGVudHNTaXpl
Q2hhbmdlZChGcmFtZSogZnJhbWUsIGNvbnN0IEludFNpemUmIHNpemUpIGNvCiAgICAgbV93ZWJW
aWV3LT5kaWRDaGFuZ2VDb250ZW50c1NpemUoKTsKIAogICAgIFdlYkZyYW1lSW1wbCogd2ViZnJh
bWUgPSBXZWJGcmFtZUltcGw6OmZyb21GcmFtZShmcmFtZSk7CisgICAgd2ViZnJhbWUtPmRpZENo
YW5nZUNvbnRlbnRzU2l6ZShzaXplKTsKICAgICBpZiAod2ViZnJhbWUtPmNsaWVudCgpKQogICAg
ICAgICB3ZWJmcmFtZS0+Y2xpZW50KCktPmRpZENoYW5nZUNvbnRlbnRzU2l6ZSh3ZWJmcmFtZSwg
c2l6ZSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GaW5kSW5Q
YWdlQ29vcmRpbmF0ZXMuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRmluZEluUGFn
ZUNvb3JkaW5hdGVzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MmRhN2FmNTk0YTEzODc3ZmJiM2EzODJhNDc4
YmQxMjMyNGFhOWQxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvRmluZEluUGFnZUNvb3JkaW5hdGVzLmNwcApAQCAtMCwwICsxLDE0NCBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJj
b25maWcuaCIKKyNpbmNsdWRlICJGaW5kSW5QYWdlQ29vcmRpbmF0ZXMuaCIKKworI2luY2x1ZGUg
IkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJGbG9hdFF1YWQuaCIKKyNpbmNsdWRlICJGbG9hdFJl
Y3QuaCIKKyNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIkludFBvaW50LmgiCisjaW5jbHVk
ZSAiTm9kZS5oIgorI2luY2x1ZGUgIlJhbmdlLmgiCisjaW5jbHVkZSAiUmVuZGVyQm94LmgiCisj
aW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCisjaW5jbHVkZSAiUmVuZGVyUGFydC5oIgorI2luY2x1
ZGUgIlJlbmRlclN0eWxlLmgiCisjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgorCit1c2luZyBuYW1l
c3BhY2UgV2ViQ29yZTsKKworbmFtZXNwYWNlIFdlYktpdCB7CisKK3N0YXRpYyBGbG9hdFJlY3Qg
dG9Ob3JtYWxpemVkUmVjdChjb25zdCBGbG9hdFJlY3QmIGFic29sdXRlUmVjdCwgY29uc3QgUmVu
ZGVyT2JqZWN0KiByZW5kZXJlciwgRmxvYXRSZWN0KiBjb250YWluZXJCb3VuZGluZ0JveCA9IDAp
Cit7CisgICAgQVNTRVJUKHJlbmRlcmVyKTsKKworICAgIGNvbnN0IFJlbmRlck9iamVjdCogY29u
dGFpbmVyID0gcmVuZGVyZXItPmNvbnRhaW5lcigpOworICAgIGlmICghY29udGFpbmVyKSB7Cisg
ICAgICAgIGlmIChjb250YWluZXJCb3VuZGluZ0JveCkKKyAgICAgICAgICAgICpjb250YWluZXJC
b3VuZGluZ0JveCA9IEZsb2F0UmVjdCgpOworICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7Cisg
ICAgfQorCisgICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRSZWN0ID0gYWJzb2x1dGVSZWN0OworICAg
IEZsb2F0UmVjdCBjb250YWluZXJSZWN0ID0gY29udGFpbmVyLT5hYnNvbHV0ZUJvdW5kaW5nQm94
UmVjdCgpOworICAgIGlmIChjb250YWluZXJCb3VuZGluZ0JveCkKKyAgICAgICAgKmNvbnRhaW5l
ckJvdW5kaW5nQm94ID0gY29udGFpbmVyUmVjdDsKKworICAgIC8vIEZvciBSZW5kZXJCb3hlcyB3
ZSB3YW50IHRvIG5vcm1hbGl6ZSBieSB0aGUgbWF4IGxheW91dCBvdmVyZmxvdyBzaXplIGluc3Rl
YWQgb2Ygb25seSB0aGUgdmlzaWJsZSBib3VuZGluZyBib3guCisgICAgLy8gUXVhZHMgYW5kIHRo
ZWlyIGVuY2xvc2luZyBib3VuZGluZyBib3hlcyBuZWVkIHRvIGJlIHVzZWQgaW4gb3JkZXIgdG8g
a2VlcCByZXN1bHRzIHRyYW5zZm9ybS1mcmllbmRseS4KKyAgICBpZiAoY29udGFpbmVyLT5pc0Jv
eCgpKSB7CisgICAgICAgIGNvbnN0IFJlbmRlckJveCogY29udGFpbmVyQm94ID0gdG9SZW5kZXJC
b3goY29udGFpbmVyKTsKKyAgICAgICAgRmxvYXRQb2ludCBzY3JvbGxlZE9yaWdpbjsKKworICAg
ICAgICAvLyBGb3Igb3ZlcmZsb3c6c2Nyb2xsIHdlIG5lZWQgdG8gZ2V0IHdoZXJlIHRoZSBhY3R1
YWwgb3JpZ2luIGlzIGluZGVwZW5kZW50bHkgb2YgdGhlIHNjcm9sbC4KKyAgICAgICAgaWYgKGNv
bnRhaW5lci0+aGFzT3ZlcmZsb3dDbGlwKCkpCisgICAgICAgICAgICBzY3JvbGxlZE9yaWdpbiA9
IC1JbnRQb2ludChjb250YWluZXJCb3gtPnNjcm9sbGVkQ29udGVudE9mZnNldCgpKTsKKworICAg
ICAgICBGbG9hdFJlY3Qgb3ZlcmZsb3dSZWN0KHNjcm9sbGVkT3JpZ2luLCBjb250YWluZXJCb3gt
Pm1heExheW91dE92ZXJmbG93KCkpOworICAgICAgICBjb250YWluZXJSZWN0ID0gY29udGFpbmVy
Qm94LT5sb2NhbFRvQWJzb2x1dGVRdWFkKEZsb2F0UXVhZChvdmVyZmxvd1JlY3QpLCBmYWxzZSku
ZW5jbG9zaW5nQm91bmRpbmdCb3goKTsKKyAgICB9CisKKyAgICBpZiAoY29udGFpbmVyUmVjdC5p
c0VtcHR5KCkpCisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAgIC8vIE1ha2UgdGhl
IGNvb3JkaW5hdGVzIHJlbGF0aXZlIHRvIHRoZSBjb250YWluZXIgZW5jbG9zaW5nIGJvdW5kaW5n
IGJveC4KKyAgICAvLyBTaW5jZSB3ZSB3b3JrIHdpdGggcmVjdHMgZW5jbG9zaW5nIHF1YWQgdW5p
b25zIHRoaXMgaXMgc3RpbGwgdHJhbnNmb3JtLWZyaWVuZGx5LgorICAgIG5vcm1hbGl6ZWRSZWN0
Lm1vdmVCeSgtY29udGFpbmVyUmVjdC5sb2NhdGlvbigpKTsKKworICAgIC8vIEZpeGVkIHBvc2l0
aW9ucyBkbyBub3QgbWFrZSBzZW5zZSBpbiB0aGlzIGNvb3JkaW5hdGUgc3lzdGVtLCBidXQgbmVl
ZCB0byBsZWF2ZSBjb25zaXN0ZW50IHRpY2ttYXJrcy4KKyAgICAvLyBTbywgdXNlIHRoZWlyIHBv
c2l0aW9uIHdoZW4gdGhlIHZpZXcgaXMgbm90IHNjcm9sbGVkLCBsaWtlIGFuIGFic29sdXRlIHBv
c2l0aW9uLgorICAgIGlmIChyZW5kZXJlci0+c3R5bGUoKS0+cG9zaXRpb24oKSA9PSBGaXhlZFBv
c2l0aW9uICYmIGNvbnRhaW5lci0+aXNSZW5kZXJWaWV3KCkpCisgICAgICAgIG5vcm1hbGl6ZWRS
ZWN0Lm1vdmUoLXRvUmVuZGVyVmlldyhjb250YWluZXIpLT5mcmFtZVZpZXcoKS0+c2Nyb2xsT2Zm
c2V0Rm9yRml4ZWRQb3NpdGlvbigpKTsKKworICAgIG5vcm1hbGl6ZWRSZWN0LnNjYWxlKDEgLyBj
b250YWluZXJSZWN0LndpZHRoKCksIDEgLyBjb250YWluZXJSZWN0LmhlaWdodCgpKTsKKworICAg
IHJldHVybiBub3JtYWxpemVkUmVjdDsKK30KKworRmxvYXRSZWN0IGZpbmRJblBhZ2VSZWN0RnJv
bUFic29sdXRlUmVjdChjb25zdCBGbG9hdFJlY3QmIGlucHV0UmVjdCwgY29uc3QgUmVuZGVyT2Jq
ZWN0KiByZW5kZXJlcikKK3sKKyAgICBpZiAoIXJlbmRlcmVyIHx8IGlucHV0UmVjdC5pc0VtcHR5
KCkpCisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAgIC8vIE5vcm1hbGl6ZSB0aGUg
aW5wdXQgcmVjdCB0byBpdHMgY29udGFpbmVyLCBzYXZpbmcgdGhlIGNvbnRhaW5lciBib3VuZGlu
ZyBib3ggZm9yIHRoZSBpbmNvbWluZyBsb29wLgorICAgIEZsb2F0UmVjdCByZW5kZXJlckJvdW5k
aW5nQm94OworICAgIEZsb2F0UmVjdCBub3JtYWxpemVkUmVjdCA9IHRvTm9ybWFsaXplZFJlY3Qo
aW5wdXRSZWN0LCByZW5kZXJlciwgJnJlbmRlcmVyQm91bmRpbmdCb3gpOworICAgIHJlbmRlcmVy
ID0gcmVuZGVyZXItPmNvbnRhaW5lcigpOworCisgICAgLy8gR28gdXAgYWNyb3NzIGZyYW1lcy4K
KyAgICB3aGlsZSAocmVuZGVyZXIpIHsKKworICAgICAgICAvLyBHbyB1cCB0aGUgcmVuZGVyIHRy
ZWUgdW50aWwgd2UgcmVhY2ggdGhlIHJvb3Qgb2YgdGhlIGN1cnJlbnQgZnJhbWUgKHRoZSBSZW5k
ZXJWaWV3KS4KKyAgICAgICAgZm9yIChjb25zdCBSZW5kZXJPYmplY3QqIGNvbnRhaW5lciA9IHJl
bmRlcmVyLT5jb250YWluZXIoKTsgY29udGFpbmVyOyByZW5kZXJlciA9IGNvbnRhaW5lciwgY29u
dGFpbmVyID0gY29udGFpbmVyLT5jb250YWluZXIoKSkgeworCisgICAgICAgICAgICAvLyBDb21w
b3NlIHRoZSBub3JtYWxpemVkIHJlY3RzLiBUaGUgYWJzb2x1dGUgYm91bmRpbmcgYm94IG9mIHRo
ZSBjb250YWluZXIgaXMgY2FsY3VsYXRlZCBpbiB0b05vcm1hbGl6ZWRSZWN0CisgICAgICAgICAg
ICAvLyBhbmQgY2FuIGJlIHJldXNlZCBmb3IgdGhlIG5leHQgaXRlcmF0aW9uIG9mIHRoZSBsb29w
LgorICAgICAgICAgICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRCb3hSZWN0ID0gdG9Ob3JtYWxpemVk
UmVjdChyZW5kZXJlckJvdW5kaW5nQm94LCByZW5kZXJlciwgJnJlbmRlcmVyQm91bmRpbmdCb3gp
OworICAgICAgICAgICAgbm9ybWFsaXplZFJlY3Quc2NhbGUobm9ybWFsaXplZEJveFJlY3Qud2lk
dGgoKSwgbm9ybWFsaXplZEJveFJlY3QuaGVpZ2h0KCkpOworICAgICAgICAgICAgbm9ybWFsaXpl
ZFJlY3QubW92ZUJ5KG5vcm1hbGl6ZWRCb3hSZWN0LmxvY2F0aW9uKCkpOworCisgICAgICAgICAg
ICBpZiAobm9ybWFsaXplZFJlY3QuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIHJldHVybiBu
b3JtYWxpemVkUmVjdDsKKyAgICAgICAgfQorCisgICAgICAgIC8vIEp1bXAgdG8gdGhlIHJlbmRl
cmVyIG93bmluZyB0aGUgZnJhbWUsIGlmIGFueS4KKyAgICAgICAgQVNTRVJUKHJlbmRlcmVyLT5p
c1JlbmRlclZpZXcoKSk7CisgICAgICAgIHJlbmRlcmVyID0gcmVuZGVyZXItPmZyYW1lKCkgPyBy
ZW5kZXJlci0+ZnJhbWUoKS0+b3duZXJSZW5kZXJlcigpIDogMDsKKworICAgICAgICAvLyBVcGRh
dGUgdGhlIGFic29sdXRlIGNvb3JkaW5hdGVzIHRvIHRoZSBuZXcgZnJhbWUuCisgICAgICAgIGlm
IChyZW5kZXJlcikKKyAgICAgICAgICAgIHJlbmRlcmVyQm91bmRpbmdCb3ggPSByZW5kZXJlci0+
YWJzb2x1dGVCb3VuZGluZ0JveFJlY3QoKTsKKyAgICB9CisKKyAgICByZXR1cm4gbm9ybWFsaXpl
ZFJlY3Q7Cit9CisKK0Zsb2F0UmVjdCBmaW5kSW5QYWdlUmVjdEZyb21SYW5nZShSYW5nZSogcmFu
Z2UpCit7CisgICAgaWYgKCFyYW5nZSB8fCAhcmFuZ2UtPmZpcnN0Tm9kZSgpKQorICAgICAgICBy
ZXR1cm4gRmxvYXRSZWN0KCk7CisKKyAgICByZXR1cm4gZmluZEluUGFnZVJlY3RGcm9tQWJzb2x1
dGVSZWN0KHJhbmdlLT50cmFuc2Zvcm1GcmllbmRseUJvdW5kaW5nQm94KCksIHJhbmdlLT5maXJz
dE5vZGUoKS0+cmVuZGVyZXIoKSk7Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRmluZEluUGFnZUNvb3JkaW5hdGVzLmgg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4zNTQ2NWViMDJmZDg2OTI2NWIzMjNlYzlmM2I0ZjA0Y2NhYmUxYWE1Ci0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRmluZEluUGFnZUNvb3JkaW5h
dGVzLmgKQEAgLTAsMCArMSw2MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
IGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVy
IHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg
ZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
CisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgRmluZEluUGFnZUNvb3JkaW5hdGVzX2gKKyNk
ZWZpbmUgRmluZEluUGFnZUNvb3JkaW5hdGVzX2gKKworI2luY2x1ZGUgIkZsb2F0UmVjdC5oIgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CitjbGFzcyBSYW5nZTsKK2NsYXNzIFJlbmRlck9iamVjdDsK
K30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKKy8vIEZpbmQtaW4tcGFnZSBjb29yZGluYXRlIGNv
bnZlcnNpb24gbWV0aG9kcy4KKy8vCisvLyBUaGlzIGNvb3JkaW5hdGUgc3lzdGVtIGlzIGRlc2ln
bmVkIHRvIGdpdmUgY29uc2lzdGVudCB0aWNrbWFya3MgaW4gY2FzZXMgd2hlcmUgZmluZCBtYXRj
aGVzCisvLyBhcmUgaW4gc2Nyb2xsYWJsZSBhcmVhcyBidXQgbWlnaHQgbm90IGJlIHZpc2libGUg
KGUuZy4gY2hpbGQgZnJhbWVzLCBzY3JvbGw6b3ZlcmZsb3cpLgorLy8gSW4gdGhlc2UgY2FzZXMs
IHVzaW5nIGFic29sdXRlIHBvc2l0aW9ucyBtaWdodCBsZWFkIHRvIHRpY2ttYXJrcyBwb2ludGlu
ZyBvdXRzaWRlIHRoZSB2aXNpYmxlCisvLyBhcmVhIG9mIGl0cyBjb250YWluZXIsIHdoaWNoIGlz
IGNvdW50ZXItaW50dWl0aXZlIGZvciB1c2Vycy4KKy8vCisvLyBGaW5kLWluLXBhZ2UgY29vcmRp
bmF0ZXMgYXJlIHJlcHJlc2VudGVkIGFzIG5vcm1hbGl6ZWQgZnJhY3Rpb25zIG9mIHRoZSBtYWlu
IGZyYW1lIGRvY3VtZW50IHdpdGgKKy8vIHRoZSBwcm9wZXJ0eSB0aGF0IHRoZXkgYXJlIGJ1aWx0
IGJ5IGNvbXBvc2luZyB0aGUgcmVsYXRpdmUgcG9zaXRpb24gb2YgZWFjaCByZW5kZXJlciB0byB0
aGUgbWF4aW11bQorLy8gZWZmZWN0aXZlIGxheW91dCBzaXplIG9mIGl0cyBjb250YWluZXIgYWxs
IHRoZSB3YXkgdXAgdGhlIHJlbmRlciB0cmVlLiBUaGUgcmVzdWx0aW5nIGNvb3JkaW5hdGVzCisv
LyBhcmUgc2Nyb2xsLWluZGVwZW5kZW50LCByZXByZXNlbnRpbmcgYW55IGNvbnRlbnRzIHNjYWxl
ZCB0byB0aGUgdmlzaWJsZSBhcmVhIG9mIHRoZWlyIGNvbnRhaW5lci4KKy8vIFRoZSBwcm92aWRl
ZCBtZXRob2RzIHN1cHBvcnQgc2Nyb2xsOm92ZXJmbG93IGFuZCBhcmUgQ1NTIHBvc2l0aW9uIGFu
ZCB0cmFuc2Zvcm0tZnJpZW5kbHkuCisKK1dlYkNvcmU6OkZsb2F0UmVjdCBmaW5kSW5QYWdlUmVj
dEZyb21BYnNvbHV0ZVJlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0JiwgY29uc3QgV2ViQ29y
ZTo6UmVuZGVyT2JqZWN0Kik7CitXZWJDb3JlOjpGbG9hdFJlY3QgZmluZEluUGFnZVJlY3RGcm9t
UmFuZ2UoV2ViQ29yZTo6UmFuZ2UqKTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNw
cCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1lSW1wbC5jcHAKaW5kZXggNjJl
YTJlZTcwNzBlZTY2N2U2ZTA0YTMwZGQwY2RjM2JjOTBkNmYxZS4uNmE0NTI2MDZjYTRlYjgzZjNh
YTk1NDI2NzRlZWQ4Y2QyMWVkNjdiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViRnJhbWVJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJGcmFtZUltcGwuY3BwCkBAIC04OSw2ICs4OSw3IEBACiAjaW5jbHVkZSAiRXZlbnRIYW5kbGVy
LmgiCiAjaW5jbHVkZSAiRXZlbnRMaXN0ZW5lcldyYXBwZXIuaCIKICNpbmNsdWRlICJGaWxlU3lz
dGVtVHlwZS5oIgorI2luY2x1ZGUgIkZpbmRJblBhZ2VDb29yZGluYXRlcy5oIgogI2luY2x1ZGUg
IkZvY3VzQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkZvbnRDYWNoZS5oIgogI2luY2x1ZGUgIkZv
cm1TdGF0ZS5oIgpAQCAtMTE4LDYgKzExOSw3IEBACiAjaW5jbHVkZSAiUGxhdGZvcm1TdXBwb3J0
LmgiCiAjaW5jbHVkZSAiUGx1Z2luRG9jdW1lbnQuaCIKICNpbmNsdWRlICJQcmludENvbnRleHQu
aCIKKyNpbmNsdWRlICJSZW5kZXJCb3guaCIKICNpbmNsdWRlICJSZW5kZXJGcmFtZS5oIgogI2lu
Y2x1ZGUgIlJlbmRlckxheWVyLmgiCiAjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCkBAIC01MTYs
NiArNTE4LDEyIEBAIHN0YXRpYyBXZWJEYXRhU291cmNlKiBEYXRhU291cmNlRm9yRG9jTG9hZGVy
KERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgcmV0dXJuIGxvYWRlciA/IFdlYkRhdGFTb3Vy
Y2VJbXBsOjpmcm9tRG9jdW1lbnRMb2FkZXIobG9hZGVyKSA6IDA7CiB9CiAKK1dlYkZyYW1lSW1w
bDo6RmluZE1hdGNoOjpGaW5kTWF0Y2goUGFzc1JlZlB0cjxSYW5nZT4gcmFuZ2UsIGludCBvcmRp
bmFsKQorICAgIDogbV9yYW5nZShyYW5nZSkKKyAgICAsIG1fb3JkaW5hbChvcmRpbmFsKQorewor
fQorCiAvLyBXZWJGcmFtZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIGNsYXNzIFdlYkZyYW1lSW1wbDo6RGVmZXJy
ZWRTY29wZVN0cmluZ01hdGNoZXMgewpAQCAtMTY0NywxMCArMTY1NSwxOCBAQCBib29sIFdlYkZy
YW1lSW1wbDo6ZmluZChpbnQgaWRlbnRpZmllciwKICAgICBtX2FjdGl2ZU1hdGNoID0gZnJhbWUo
KS0+ZWRpdG9yKCktPmZpbmRTdHJpbmdBbmRTY3JvbGxUb1Zpc2libGUoc2VhcmNoVGV4dCwgbV9h
Y3RpdmVNYXRjaC5nZXQoKSwgZmluZE9wdGlvbnMpOwogCiAgICAgaWYgKCFtX2FjdGl2ZU1hdGNo
KSB7CisgICAgICAgIC8vIElmIHdlJ3JlIGZpbmRpbmcgbmV4dCB0aGUgbmV4dCBhY3RpdmUgbWF0
Y2ggbWlnaHQgbm90IGJlIGluIHRoZSBjdXJyZW50IGZyYW1lLgorICAgICAgICAvLyBJbiB0aGlz
IGNhc2Ugd2UgZG9uJ3Qgd2FudCB0byBjbGVhciB0aGUgbWF0Y2hlcyBjYWNoZS4KKyAgICAgICAg
aWYgKCFvcHRpb25zLmZpbmROZXh0KQorICAgICAgICAgICAgY2xlYXJGaW5kTWF0Y2hlc0NhY2hl
KCk7CiAgICAgICAgIGludmFsaWRhdGVBcmVhKEludmFsaWRhdGVBbGwpOwogICAgICAgICByZXR1
cm4gZmFsc2U7CiAgICAgfQogCisjaWYgT1MoQU5EUk9JRCkKKyAgICB2aWV3SW1wbCgpLT56b29t
VG9GaW5kSW5QYWdlUmVjdChmcmFtZVZpZXcoKS0+Y29udGVudHNUb1dpbmRvdyhlbmNsb3NpbmdJ
bnRSZWN0KG1fYWN0aXZlTWF0Y2gtPnRyYW5zZm9ybUZyaWVuZGx5Qm91bmRpbmdCb3gpKSk7Cisj
ZW5kaWYKKwogICAgIHNldE1hcmtlckFjdGl2ZShtX2FjdGl2ZU1hdGNoLmdldCgpLCB0cnVlKTsK
ICAgICBXZWJGcmFtZUltcGwqIG9sZEFjdGl2ZUZyYW1lID0gbWFpbkZyYW1lSW1wbC0+bV9jdXJy
ZW50QWN0aXZlTWF0Y2hGcmFtZTsKICAgICBtYWluRnJhbWVJbXBsLT5tX2N1cnJlbnRBY3RpdmVN
YXRjaEZyYW1lID0gdGhpczsKQEAgLTE2OTgsNiArMTcxNCw3IEBAIHZvaWQgV2ViRnJhbWVJbXBs
OjpzdG9wRmluZGluZyhib29sIGNsZWFyU2VsZWN0aW9uKQogICAgIC8vIFJlbW92ZSBhbGwgbWFy
a2VycyBmb3IgbWF0Y2hlcyBmb3VuZCBhbmQgdHVybiBvZmYgdGhlIGhpZ2hsaWdodGluZy4KICAg
ICBmcmFtZSgpLT5kb2N1bWVudCgpLT5tYXJrZXJzKCktPnJlbW92ZU1hcmtlcnMoRG9jdW1lbnRN
YXJrZXI6OlRleHRNYXRjaCk7CiAgICAgZnJhbWUoKS0+ZWRpdG9yKCktPnNldE1hcmtlZFRleHRN
YXRjaGVzQXJlSGlnaGxpZ2h0ZWQoZmFsc2UpOworICAgIGNsZWFyRmluZE1hdGNoZXNDYWNoZSgp
OwogCiAgICAgLy8gTGV0IHRoZSBmcmFtZSBrbm93IHRoYXQgd2UgZG9uJ3Qgd2FudCB0aWNrbWFy
a3Mgb3IgaGlnaGxpZ2h0aW5nIGFueW1vcmUuCiAgICAgaW52YWxpZGF0ZUFyZWEoSW52YWxpZGF0
ZUFsbCk7CkBAIC0xNzIwLDYgKzE3MzcsMTAgQEAgdm9pZCBXZWJGcmFtZUltcGw6OnNjb3BlU3Ry
aW5nTWF0Y2hlcyhpbnQgaWRlbnRpZmllciwKICAgICAgICAgLy8gQ2xlYXIgaGlnaGxpZ2h0aW5n
IGZvciB0aGlzIGZyYW1lLgogICAgICAgICBpZiAoZnJhbWUoKS0+ZWRpdG9yKCktPm1hcmtlZFRl
eHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoKSkKICAgICAgICAgICAgIGZyYW1lKCktPnBhZ2UoKS0+
dW5tYXJrQWxsVGV4dE1hdGNoZXMoKTsKKworICAgICAgICAvLyBDbGVhciB0aGUgdGlja21hcmtz
IGFuZCByZXN1bHRzIGNhY2hlLgorICAgICAgICBjbGVhckZpbmRNYXRjaGVzQ2FjaGUoKTsKKwog
ICAgICAgICAvLyBDbGVhciB0aGUgY291bnRlcnMgZnJvbSBsYXN0IG9wZXJhdGlvbi4KICAgICAg
ICAgbV9sYXN0TWF0Y2hDb3VudCA9IDA7CiAgICAgICAgIG1fbmV4dEludmFsaWRhdGVBZnRlciA9
IDA7CkBAIC0xODE4LDYgKzE4MzksOCBAQCB2b2lkIFdlYkZyYW1lSW1wbDo6c2NvcGVTdHJpbmdN
YXRjaGVzKGludCBpZGVudGlmaWVyLAogCiAgICAgICAgIGFkZE1hcmtlcihyZXN1bHRSYW5nZS5n
ZXQoKSwgZm91bmRBY3RpdmVNYXRjaCk7CiAKKyAgICAgICAgbV9maW5kTWF0Y2hlc0NhY2hlLmFw
cGVuZChGaW5kTWF0Y2gocmVzdWx0UmFuZ2UuZ2V0KCksIG1fbGFzdE1hdGNoQ291bnQgKyBtYXRj
aENvdW50KSk7CisKICAgICAgICAgLy8gU2V0IHRoZSBuZXcgc3RhcnQgZm9yIHRoZSBzZWFyY2gg
cmFuZ2UgdG8gYmUgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMKICAgICAgICAgLy8gcmVzdWx0IHJh
bmdlLiBUaGVyZSBpcyBubyBuZWVkIHRvIHVzZSBhIFZpc2libGVQb3NpdGlvbiBoZXJlLAogICAg
ICAgICAvLyBzaW5jZSBmaW5kUGxhaW5UZXh0IHdpbGwgdXNlIGEgVGV4dEl0ZXJhdG9yIHRvIGdv
IG92ZXIgdGhlIHZpc2libGUKQEAgLTE4ODgsNiArMTkxMSw5IEBAIHZvaWQgV2ViRnJhbWVJbXBs
OjppbmNyZWFzZU1hdGNoQ291bnQoaW50IGNvdW50LCBpbnQgaWRlbnRpZmllcikKICAgICAvLyBU
aGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBvbiB0aGUgbWFpbmZyYW1lLgogICAg
IEFTU0VSVCghcGFyZW50KCkpOwogCisgICAgaWYgKGNvdW50KQorICAgICAgICArK21fZmluZE1h
dGNoTWFya2Vyc1ZlcnNpb247CisKICAgICBtX3RvdGFsTWF0Y2hDb3VudCArPSBjb3VudDsKIAog
ICAgIC8vIFVwZGF0ZSB0aGUgVUkgd2l0aCB0aGUgbGF0ZXN0IGZpbmRpbmdzLgpAQCAtMTkwNiw2
ICsxOTMyLDkgQEAgdm9pZCBXZWJGcmFtZUltcGw6OnJlcG9ydEZpbmRJblBhZ2VTZWxlY3Rpb24o
Y29uc3QgV2ViUmVjdCYgc2VsZWN0aW9uUmVjdCwKIAogdm9pZCBXZWJGcmFtZUltcGw6OnJlc2V0
TWF0Y2hDb3VudCgpCiB7CisgICAgaWYgKG1fdG90YWxNYXRjaENvdW50ID4gMCkKKyAgICAgICAg
KyttX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOworCiAgICAgbV90b3RhbE1hdGNoQ291bnQgPSAw
OwogICAgIG1fZnJhbWVzU2NvcGluZ0NvdW50ID0gMDsKIH0KQEAgLTE5NTIsMjUgKzE5ODEsMTg4
IEBAIHZvaWQgV2ViRnJhbWVJbXBsOjpkaXNwYXRjaE1lc3NhZ2VFdmVudFdpdGhPcmlnaW5DaGVj
ayhjb25zdCBXZWJTZWN1cml0eU9yaWdpbiYKIAogaW50IFdlYkZyYW1lSW1wbDo6ZmluZE1hdGNo
TWFya2Vyc1ZlcnNpb24oKSBjb25zdAogewotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcyBh
cyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzExMS4K
LSAgICByZXR1cm4gMDsKKyAgICBBU1NFUlQoIXBhcmVudCgpKTsKKyAgICByZXR1cm4gbV9maW5k
TWF0Y2hNYXJrZXJzVmVyc2lvbjsKK30KKwordm9pZCBXZWJGcmFtZUltcGw6OmNsZWFyRmluZE1h
dGNoZXNDYWNoZSgpCit7CisgICAgaWYgKCFtX2ZpbmRNYXRjaGVzQ2FjaGUuaXNFbXB0eSgpKQor
ICAgICAgICB2aWV3SW1wbCgpLT5tYWluRnJhbWVJbXBsKCktPm1fZmluZE1hdGNoTWFya2Vyc1Zl
cnNpb24rKzsKKworICAgIG1fZmluZE1hdGNoZXNDYWNoZS5jbGVhcigpOworICAgIG1fZmluZE1h
dGNoUmVjdHNBcmVWYWxpZCA9IGZhbHNlOworfQorCitib29sIFdlYkZyYW1lSW1wbDo6aXNBY3Rp
dmVNYXRjaEZyYW1lVmFsaWQoKSBjb25zdAoreworICAgIFdlYkZyYW1lSW1wbCogbWFpbkZyYW1l
SW1wbCA9IHZpZXdJbXBsKCktPm1haW5GcmFtZUltcGwoKTsKKyAgICBXZWJGcmFtZUltcGwqIGFj
dGl2ZU1hdGNoRnJhbWUgPSBtYWluRnJhbWVJbXBsLT5hY3RpdmVNYXRjaEZyYW1lKCk7CisgICAg
cmV0dXJuIGFjdGl2ZU1hdGNoRnJhbWUgJiYgYWN0aXZlTWF0Y2hGcmFtZS0+bV9hY3RpdmVNYXRj
aAorICAgICAgICAmJiBhY3RpdmVNYXRjaEZyYW1lLT5mcmFtZSgpLT50cmVlKCktPmlzRGVzY2Vu
ZGFudE9mKG1haW5GcmFtZUltcGwtPmZyYW1lKCkpOworfQorCit2b2lkIFdlYkZyYW1lSW1wbDo6
dXBkYXRlRmluZE1hdGNoUmVjdHMoKQoreworICAgIEludFNpemUgY3VycmVudENvbnRlbnRzU2l6
ZSA9IGNvbnRlbnRzU2l6ZSgpOworICAgIGlmIChtX2NvbnRlbnRzU2l6ZUZvckN1cnJlbnRGaW5k
TWF0Y2hSZWN0cyAhPSBjdXJyZW50Q29udGVudHNTaXplKSB7CisgICAgICAgIG1fY29udGVudHNT
aXplRm9yQ3VycmVudEZpbmRNYXRjaFJlY3RzID0gY3VycmVudENvbnRlbnRzU2l6ZTsKKyAgICAg
ICAgbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFsc2U7CisgICAgfQorCisgICAgc2l6ZV90
IGRlYWRNYXRjaGVzID0gMDsKKyAgICBmb3IgKFZlY3RvcjxGaW5kTWF0Y2g+OjppdGVyYXRvciBp
dCA9IG1fZmluZE1hdGNoZXNDYWNoZS5iZWdpbigpOyBpdCAhPSBtX2ZpbmRNYXRjaGVzQ2FjaGUu
ZW5kKCk7ICsraXQpIHsKKyAgICAgICAgaWYgKCFpdC0+bV9yYW5nZS0+Ym91bmRhcnlQb2ludHNW
YWxpZCgpIHx8ICFpdC0+bV9yYW5nZS0+c3RhcnRDb250YWluZXIoKS0+aW5Eb2N1bWVudCgpKQor
ICAgICAgICAgICAgaXQtPm1fcmVjdCA9IEZsb2F0UmVjdCgpOworICAgICAgICBlbHNlIGlmICgh
bV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkKQorICAgICAgICAgICAgaXQtPm1fcmVjdCA9IGZpbmRJ
blBhZ2VSZWN0RnJvbVJhbmdlKGl0LT5tX3JhbmdlLmdldCgpKTsKKworICAgICAgICBpZiAoaXQt
Pm1fcmVjdC5pc0VtcHR5KCkpCisgICAgICAgICAgICArK2RlYWRNYXRjaGVzOworICAgIH0KKwor
ICAgIC8vIFJlbW92ZSBhbnkgaW52YWxpZCBtYXRjaGVzIGZyb20gdGhlIGNhY2hlLgorICAgIGlm
IChkZWFkTWF0Y2hlcykgeworICAgICAgICBWZWN0b3I8RmluZE1hdGNoPiBmaWx0ZXJlZE1hdGNo
ZXM7CisgICAgICAgIGZpbHRlcmVkTWF0Y2hlcy5yZXNlcnZlQ2FwYWNpdHkobV9maW5kTWF0Y2hl
c0NhY2hlLnNpemUoKSAtIGRlYWRNYXRjaGVzKTsKKworICAgICAgICBmb3IgKFZlY3RvcjxGaW5k
TWF0Y2g+Ojpjb25zdF9pdGVyYXRvciBpdCA9IG1fZmluZE1hdGNoZXNDYWNoZS5iZWdpbigpOyBp
dCAhPSBtX2ZpbmRNYXRjaGVzQ2FjaGUuZW5kKCk7ICsraXQpCisgICAgICAgICAgICBpZiAoIWl0
LT5tX3JlY3QuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGZpbHRlcmVkTWF0Y2hlcy5hcHBl
bmQoKml0KTsKKworICAgICAgICBtX2ZpbmRNYXRjaGVzQ2FjaGUuc3dhcChmaWx0ZXJlZE1hdGNo
ZXMpOworICAgIH0KKworICAgIC8vIEludmFsaWRhdGUgdGhlIHJlY3RzIGluIGNoaWxkIGZyYW1l
cy4gV2lsbCBiZSB1cGRhdGVkIGxhdGVyIGR1cmluZyB0cmF2ZXJzYWwuCisgICAgaWYgKCFtX2Zp
bmRNYXRjaFJlY3RzQXJlVmFsaWQpCisgICAgICAgIGZvciAoV2ViRnJhbWUqIGNoaWxkID0gZmly
c3RDaGlsZCgpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+bmV4dFNpYmxpbmcoKSkKKyAgICAgICAg
ICAgIHN0YXRpY19jYXN0PFdlYkZyYW1lSW1wbCo+KGNoaWxkKS0+bV9maW5kTWF0Y2hSZWN0c0Fy
ZVZhbGlkID0gZmFsc2U7CisKKyAgICBtX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQgPSB0cnVlOwog
fQogCiBXZWJGbG9hdFJlY3QgV2ViRnJhbWVJbXBsOjphY3RpdmVGaW5kTWF0Y2hSZWN0KCkKIHsK
LSAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMgYXMgcGFydCBvZiBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEuCi0gICAgcmV0dXJuIFdlYkZsb2F0UmVjdCgp
OworICAgIEFTU0VSVCghcGFyZW50KCkpOworCisgICAgaWYgKCFpc0FjdGl2ZU1hdGNoRnJhbWVW
YWxpZCgpKQorICAgICAgICByZXR1cm4gV2ViRmxvYXRSZWN0KCk7CisKKyAgICByZXR1cm4gV2Vi
RmxvYXRSZWN0KGZpbmRJblBhZ2VSZWN0RnJvbVJhbmdlKG1fY3VycmVudEFjdGl2ZU1hdGNoRnJh
bWUtPm1fYWN0aXZlTWF0Y2guZ2V0KCkpKTsKIH0KIAogdm9pZCBXZWJGcmFtZUltcGw6OmZpbmRN
YXRjaFJlY3RzKFdlYlZlY3RvcjxXZWJGbG9hdFJlY3Q+JiBvdXRwdXRSZWN0cykKIHsKLSAgICAv
LyBGSVhNRTogSW1wbGVtZW50IHRoaXMgYXMgcGFydCBvZiBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEuCisgICAgQVNTRVJUKCFwYXJlbnQoKSk7CisKKyAgICBW
ZWN0b3I8V2ViRmxvYXRSZWN0PiBtYXRjaFJlY3RzOworICAgIGZvciAoV2ViRnJhbWVJbXBsKiBm
cmFtZSA9IHRoaXM7IGZyYW1lOyBmcmFtZSA9IHN0YXRpY19jYXN0PFdlYkZyYW1lSW1wbCo+KGZy
YW1lLT50cmF2ZXJzZU5leHQoZmFsc2UpKSkKKyAgICAgICAgZnJhbWUtPmFwcGVuZEZpbmRNYXRj
aFJlY3RzKG1hdGNoUmVjdHMpOworCisgICAgb3V0cHV0UmVjdHMgPSBtYXRjaFJlY3RzOworfQor
Cit2b2lkIFdlYkZyYW1lSW1wbDo6YXBwZW5kRmluZE1hdGNoUmVjdHMoVmVjdG9yPFdlYkZsb2F0
UmVjdD4mIGZyYW1lUmVjdHMpCit7CisgICAgdXBkYXRlRmluZE1hdGNoUmVjdHMoKTsKKyAgICBm
cmFtZVJlY3RzLnJlc2VydmVDYXBhY2l0eShmcmFtZVJlY3RzLnNpemUoKSArIG1fZmluZE1hdGNo
ZXNDYWNoZS5zaXplKCkpOworICAgIGZvciAoVmVjdG9yPEZpbmRNYXRjaD46OmNvbnN0X2l0ZXJh
dG9yIGl0ID0gbV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2luKCk7IGl0ICE9IG1fZmluZE1hdGNoZXND
YWNoZS5lbmQoKTsgKytpdCkgeworICAgICAgICBBU1NFUlQoIWl0LT5tX3JlY3QuaXNFbXB0eSgp
KTsKKyAgICAgICAgZnJhbWVSZWN0cy5hcHBlbmQoaXQtPm1fcmVjdCk7CisgICAgfQogfQogCiBp
bnQgV2ViRnJhbWVJbXBsOjpzZWxlY3ROZWFyZXN0RmluZE1hdGNoKGNvbnN0IFdlYkZsb2F0UG9p
bnQmIHBvaW50LCBXZWJSZWN0KiBzZWxlY3Rpb25SZWN0KQogewotICAgIC8vIEZJWE1FOiBJbXBs
ZW1lbnQgdGhpcyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05MzExMS4KLSAgICByZXR1cm4gMDsKKyAgICBBU1NFUlQoIXBhcmVudCgpKTsKKworICAg
IFdlYkZyYW1lSW1wbCogYmVzdEZyYW1lID0gMDsKKyAgICBpbnQgaW5kZXhJbkJlc3RGcmFtZSA9
IC0xOworICAgIGZsb2F0IGRpc3RhbmNlSW5CZXN0RnJhbWUgPSBGTFRfTUFYOworCisgICAgZm9y
IChXZWJGcmFtZUltcGwqIGZyYW1lID0gdGhpczsgZnJhbWU7IGZyYW1lID0gc3RhdGljX2Nhc3Q8
V2ViRnJhbWVJbXBsKj4oZnJhbWUtPnRyYXZlcnNlTmV4dChmYWxzZSkpKSB7CisgICAgICAgIGZs
b2F0IGRpc3RhbmNlSW5GcmFtZTsKKyAgICAgICAgaW50IGluZGV4SW5GcmFtZSA9IGZyYW1lLT5u
ZWFyZXN0RmluZE1hdGNoKHBvaW50LCBkaXN0YW5jZUluRnJhbWUpOworICAgICAgICBpZiAoZGlz
dGFuY2VJbkZyYW1lIDwgZGlzdGFuY2VJbkJlc3RGcmFtZSkgeworICAgICAgICAgICAgYmVzdEZy
YW1lID0gZnJhbWU7CisgICAgICAgICAgICBpbmRleEluQmVzdEZyYW1lID0gaW5kZXhJbkZyYW1l
OworICAgICAgICAgICAgZGlzdGFuY2VJbkJlc3RGcmFtZSA9IGRpc3RhbmNlSW5GcmFtZTsKKyAg
ICAgICAgfQorICAgIH0KKworICAgIGlmIChpbmRleEluQmVzdEZyYW1lICE9IC0xKQorICAgICAg
ICByZXR1cm4gYmVzdEZyYW1lLT5zZWxlY3RGaW5kTWF0Y2goc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KGluZGV4SW5CZXN0RnJhbWUpLCBzZWxlY3Rpb25SZWN0KTsKKworICAgIHJldHVybiAtMTsKK30K
KworaW50IFdlYkZyYW1lSW1wbDo6bmVhcmVzdEZpbmRNYXRjaChjb25zdCBGbG9hdFBvaW50JiBw
b2ludCwgZmxvYXQmIGRpc3RhbmNlU3F1YXJlZCkKK3sKKyAgICB1cGRhdGVGaW5kTWF0Y2hSZWN0
cygpOworCisgICAgaW50IG5lYXJlc3QgPSAtMTsKKyAgICBkaXN0YW5jZVNxdWFyZWQgPSBGTFRf
TUFYOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9maW5kTWF0Y2hlc0NhY2hlLnNpemUo
KTsgKytpKSB7CisgICAgICAgIEFTU0VSVCghbV9maW5kTWF0Y2hlc0NhY2hlW2ldLm1fcmVjdC5p
c0VtcHR5KCkpOworICAgICAgICBGbG9hdFNpemUgb2Zmc2V0ID0gcG9pbnQgLSBtX2ZpbmRNYXRj
aGVzQ2FjaGVbaV0ubV9yZWN0LmNlbnRlcigpOworICAgICAgICBmbG9hdCB3aWR0aCA9IG9mZnNl
dC53aWR0aCgpOworICAgICAgICBmbG9hdCBoZWlnaHQgPSBvZmZzZXQuaGVpZ2h0KCk7CisgICAg
ICAgIGZsb2F0IGN1cnJlbnREaXN0YW5jZVNxdWFyZWQgPSB3aWR0aCAqIHdpZHRoICsgaGVpZ2h0
ICogaGVpZ2h0OworICAgICAgICBpZiAoY3VycmVudERpc3RhbmNlU3F1YXJlZCA8IGRpc3RhbmNl
U3F1YXJlZCkgeworICAgICAgICAgICAgbmVhcmVzdCA9IGk7CisgICAgICAgICAgICBkaXN0YW5j
ZVNxdWFyZWQgPSBjdXJyZW50RGlzdGFuY2VTcXVhcmVkOworICAgICAgICB9CisgICAgfQorICAg
IHJldHVybiBuZWFyZXN0OworfQorCitpbnQgV2ViRnJhbWVJbXBsOjpzZWxlY3RGaW5kTWF0Y2go
dW5zaWduZWQgaW5kZXgsIFdlYlJlY3QqIHNlbGVjdGlvblJlY3QpCit7CisgICAgQVNTRVJUKGlu
ZGV4IDwgbV9maW5kTWF0Y2hlc0NhY2hlLnNpemUoKSk7CisKKyAgICBSZWZQdHI8UmFuZ2U+IHJh
bmdlID0gbV9maW5kTWF0Y2hlc0NhY2hlW2luZGV4XS5tX3JhbmdlOworICAgIGlmICghcmFuZ2Ut
PmJvdW5kYXJ5UG9pbnRzVmFsaWQoKSB8fCAhcmFuZ2UtPnN0YXJ0Q29udGFpbmVyKCktPmluRG9j
dW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgLy8gQ2hlY2sgaWYgdGhlIG1hdGNo
IGlzIGFscmVhZHkgc2VsZWN0ZWQuCisgICAgV2ViRnJhbWVJbXBsKiBhY3RpdmVNYXRjaEZyYW1l
ID0gdmlld0ltcGwoKS0+bWFpbkZyYW1lSW1wbCgpLT5tX2N1cnJlbnRBY3RpdmVNYXRjaEZyYW1l
OworICAgIGlmICh0aGlzICE9IGFjdGl2ZU1hdGNoRnJhbWUgfHwgIW1fYWN0aXZlTWF0Y2ggfHwg
IWFyZVJhbmdlc0VxdWFsKG1fYWN0aXZlTWF0Y2guZ2V0KCksIHJhbmdlLmdldCgpKSkgeworICAg
ICAgICBpZiAoaXNBY3RpdmVNYXRjaEZyYW1lVmFsaWQoKSkKKyAgICAgICAgICAgIGFjdGl2ZU1h
dGNoRnJhbWUtPnNldE1hcmtlckFjdGl2ZShhY3RpdmVNYXRjaEZyYW1lLT5tX2FjdGl2ZU1hdGNo
LmdldCgpLCBmYWxzZSk7CisKKyAgICAgICAgbV9hY3RpdmVNYXRjaEluZGV4SW5DdXJyZW50RnJh
bWUgPSBtX2ZpbmRNYXRjaGVzQ2FjaGVbaW5kZXhdLm1fb3JkaW5hbCAtIDE7CisKKyAgICAgICAg
Ly8gU2V0IHRoaXMgZnJhbWUgYXMgdGhlIGFjdGl2ZSBmcmFtZSAodGhlIG9uZSB3aXRoIHRoZSBh
Y3RpdmUgaGlnaGxpZ2h0KS4KKyAgICAgICAgdmlld0ltcGwoKS0+bWFpbkZyYW1lSW1wbCgpLT5t
X2N1cnJlbnRBY3RpdmVNYXRjaEZyYW1lID0gdGhpczsKKyAgICAgICAgdmlld0ltcGwoKS0+c2V0
Rm9jdXNlZEZyYW1lKHRoaXMpOworCisgICAgICAgIG1fYWN0aXZlTWF0Y2ggPSByYW5nZS5yZWxl
YXNlKCk7CisgICAgICAgIHNldE1hcmtlckFjdGl2ZShtX2FjdGl2ZU1hdGNoLmdldCgpLCB0cnVl
KTsKKworICAgICAgICAvLyBDbGVhciBhbnkgdXNlciBzZWxlY3Rpb24sIHRvIG1ha2Ugc3VyZSBG
aW5kIE5leHQgY29udGludWVzIG9uIGZyb20gdGhlIG1hdGNoIHdlIGp1c3QgYWN0aXZhdGVkLgor
ICAgICAgICBmcmFtZSgpLT5zZWxlY3Rpb24oKS0+Y2xlYXIoKTsKKworICAgICAgICAvLyBNYWtl
IHN1cmUgbm8gbm9kZSBpcyBmb2N1c2VkLiBTZWUgaHR0cDovL2NyYnVnLmNvbS8zODcwMC4KKyAg
ICAgICAgZnJhbWUoKS0+ZG9jdW1lbnQoKS0+c2V0Rm9jdXNlZE5vZGUoMCk7CisgICAgfQorCisg
ICAgSW50UmVjdCBhY3RpdmVNYXRjaFJlY3Q7CisgICAgSW50UmVjdCBhY3RpdmVNYXRjaEJvdW5k
aW5nQm94ID0gZW5jbG9zaW5nSW50UmVjdChtX2FjdGl2ZU1hdGNoLT50cmFuc2Zvcm1GcmllbmRs
eUJvdW5kaW5nQm94KCkpOworCisgICAgaWYgKCFhY3RpdmVNYXRjaEJvdW5kaW5nQm94LmlzRW1w
dHkoKSkgeworICAgICAgICBpZiAobV9hY3RpdmVNYXRjaC0+Zmlyc3ROb2RlKCkgJiYgbV9hY3Rp
dmVNYXRjaC0+Zmlyc3ROb2RlKCktPnJlbmRlcmVyKCkpCisgICAgICAgICAgICBtX2FjdGl2ZU1h
dGNoLT5maXJzdE5vZGUoKS0+cmVuZGVyZXIoKS0+c2Nyb2xsUmVjdFRvVmlzaWJsZShhY3RpdmVN
YXRjaEJvdW5kaW5nQm94LAorICAgICAgICAgICAgICAgICAgICBTY3JvbGxBbGlnbm1lbnQ6OmFs
aWduQ2VudGVySWZOZWVkZWQsIFNjcm9sbEFsaWdubWVudDo6YWxpZ25DZW50ZXJJZk5lZWRlZCk7
CisKKyAgICAgICAgLy8gWm9vbSB0byB0aGUgYWN0aXZlIG1hdGNoLgorICAgICAgICBhY3RpdmVN
YXRjaFJlY3QgPSBmcmFtZVZpZXcoKS0+Y29udGVudHNUb1dpbmRvdyhhY3RpdmVNYXRjaEJvdW5k
aW5nQm94KTsKKyAgICAgICAgdmlld0ltcGwoKS0+em9vbVRvRmluZEluUGFnZVJlY3QoYWN0aXZl
TWF0Y2hSZWN0KTsKKyAgICB9CisKKyAgICBpZiAoc2VsZWN0aW9uUmVjdCkKKyAgICAgICAgKnNl
bGVjdGlvblJlY3QgPSBhY3RpdmVNYXRjaFJlY3Q7CisKKyAgICByZXR1cm4gb3JkaW5hbE9mRmly
c3RNYXRjaEZvckZyYW1lKHRoaXMpICsgbV9hY3RpdmVNYXRjaEluZGV4SW5DdXJyZW50RnJhbWUg
KyAxOwogfQogCiB2b2lkIFdlYkZyYW1lSW1wbDo6ZGVsaXZlckludGVudChjb25zdCBXZWJJbnRl
bnQmIGludGVudCwgV2ViTWVzc2FnZVBvcnRDaGFubmVsQXJyYXkqIHBvcnRzLCBXZWJEZWxpdmVy
ZWRJbnRlbnRDbGllbnQqIGludGVudENsaWVudCkKQEAgLTIwOTAsNiArMjI4Miw4IEBAIFdlYkZy
YW1lSW1wbDo6V2ViRnJhbWVJbXBsKFdlYkZyYW1lQ2xpZW50KiBjbGllbnQpCiAgICAgLCBtX2Zy
YW1lc1Njb3BpbmdDb3VudCgtMSkKICAgICAsIG1fc2NvcGluZ0NvbXBsZXRlKGZhbHNlKQogICAg
ICwgbV9uZXh0SW52YWxpZGF0ZUFmdGVyKDApCisgICAgLCBtX2ZpbmRNYXRjaE1hcmtlcnNWZXJz
aW9uKDApCisgICAgLCBtX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQoZmFsc2UpCiAgICAgLCBtX2Fu
aW1hdGlvbkNvbnRyb2xsZXIodGhpcykKICAgICAsIG1faWRlbnRpZmllcihnZW5lcmF0ZUZyYW1l
SWRlbnRpZmllcigpKQogICAgICwgbV9pblNhbWVEb2N1bWVudEhpc3RvcnlMb2FkKGZhbHNlKQpA
QCAtMjE2OCw2ICsyMzYyLDE1IEBAIFBhc3NSZWZQdHI8RnJhbWU+IFdlYkZyYW1lSW1wbDo6Y3Jl
YXRlQ2hpbGRGcmFtZSgKICAgICByZXR1cm4gY2hpbGRGcmFtZS5yZWxlYXNlKCk7CiB9CiAKK3Zv
aWQgV2ViRnJhbWVJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUoY29uc3QgSW50U2l6ZSYgc2l6
ZSkKK3sKKyAgICAvLyBUaGlzIGlzIG9ubHkgcG9zc2libGUgb24gdGhlIG1haW4gZnJhbWUuCisg
ICAgaWYgKG1fdG90YWxNYXRjaENvdW50ID4gMCkgeworICAgICAgICBBU1NFUlQoIXBhcmVudCgp
KTsKKyAgICAgICAgKyttX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOworICAgIH0KK30KKwogdm9p
ZCBXZWJGcmFtZUltcGw6OmNyZWF0ZUZyYW1lVmlldygpCiB7CiAgICAgQVNTRVJUKG1fZnJhbWUp
OyAvLyBJZiBtX2ZyYW1lIGRvZXNuJ3QgZXhpc3QsIHdlIHByb2JhYmx5IGRpZG4ndCBpbml0IHBy
b3Blcmx5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJ
bXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaAppbmRleCAw
YWJhNTZmNGMxYWZiMTU4MTU1MDg1N2VjZWZiZjY3ZDZmYTg1M2JiLi5lODNiM2IwZjc0ODhjNzFi
MWE0OWM0OThjZjJmY2QxMGE4MDk3ZjYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJGcmFtZUltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJGcmFtZUltcGwuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFz
cyBHcmFwaGljc0NvbnRleHQ7CiBjbGFzcyBIVE1MSW5wdXRFbGVtZW50OwogY2xhc3MgSGlzdG9y
eUl0ZW07CitjbGFzcyBJbnRTaXplOwogY2xhc3MgS1VSTDsKIGNsYXNzIE5vZGU7CiBjbGFzcyBS
YW5nZTsKQEAgLTI0OCw2ICsyNDksOCBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0cjxXZWJDb3Jl
OjpGcmFtZT4gY3JlYXRlQ2hpbGRGcmFtZSgKICAgICAgICAgY29uc3QgV2ViQ29yZTo6RnJhbWVM
b2FkUmVxdWVzdCYsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCopOwogCisgICAgdm9p
ZCBkaWRDaGFuZ2VDb250ZW50c1NpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYpOworCiAgICAg
dm9pZCBjcmVhdGVGcmFtZVZpZXcoKTsKIAogICAgIHN0YXRpYyBXZWJGcmFtZUltcGwqIGZyb21G
cmFtZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpOwpAQCAtMjcwLDcgKzI3MywxMSBAQCBwdWJsaWM6
CiAgICAgLy8gUmV0dXJucyB3aGljaCBmcmFtZSBoYXMgYW4gYWN0aXZlIG1hdGNoLiBUaGlzIGZ1
bmN0aW9uIHNob3VsZCBvbmx5IGJlCiAgICAgLy8gY2FsbGVkIG9uIHRoZSBtYWluIGZyYW1lLCBh
cyBpdCBpcyB0aGUgb25seSBmcmFtZSBrZWVwaW5nIHRyYWNrLiBSZXR1cm5lZAogICAgIC8vIHZh
bHVlIGNhbiBiZSAwIGlmIG5vIGZyYW1lIGhhcyBhbiBhY3RpdmUgbWF0Y2guCi0gICAgY29uc3Qg
V2ViRnJhbWVJbXBsKiBhY3RpdmVNYXRjaEZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9jdXJyZW50
QWN0aXZlTWF0Y2hGcmFtZTsgfQorICAgIFdlYkZyYW1lSW1wbCogYWN0aXZlTWF0Y2hGcmFtZSgp
IGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudEFjdGl2ZU1hdGNoRnJhbWU7IH0KKworICAgIC8vIFJl
dHVybnMgdGhlIGFjdGl2ZSBtYXRjaCBpbiB0aGUgY3VycmVudCBmcmFtZS4gQ291bGQgYmUgYSBu
dWxsIHJhbmdlIGlmCisgICAgLy8gdGhlIGxvY2FsIGZyYW1lIGhhcyBubyBhY3RpdmUgbWF0Y2gu
CisgICAgV2ViQ29yZTo6UmFuZ2UqIGFjdGl2ZU1hdGNoKCkgY29uc3QgeyByZXR1cm4gbV9hY3Rp
dmVNYXRjaC5nZXQoKTsgfQogCiAgICAgLy8gV2hlbiBhIEZpbmQgb3BlcmF0aW9uIGVuZHMsIHdl
IHdhbnQgdG8gc2V0IHRoZSBzZWxlY3Rpb24gdG8gd2hhdCB3YXMgYWN0aXZlCiAgICAgLy8gYW5k
IHNldCBmb2N1cyB0byB0aGUgZmlyc3QgZm9jdXNhYmxlIG5vZGUgd2UgZmluZCAoc3RhcnRpbmcg
d2l0aCB0aGUgZmlyc3QKQEAgLTI5Nyw2ICszMDQsMTkgQEAgcHJpdmF0ZToKICAgICBmcmllbmQg
Y2xhc3MgRGVmZXJyZWRTY29wZVN0cmluZ01hdGNoZXM7CiAgICAgZnJpZW5kIGNsYXNzIEZyYW1l
TG9hZGVyQ2xpZW50SW1wbDsKIAorICAgIHN0cnVjdCBGaW5kTWF0Y2ggeworICAgICAgICBSZWZQ
dHI8V2ViQ29yZTo6UmFuZ2U+IG1fcmFuZ2U7CisKKyAgICAgICAgLy8gMS1iYXNlZCBpbmRleCB3
aXRoaW4gdGhpcyBmcmFtZS4KKyAgICAgICAgaW50IG1fb3JkaW5hbDsKKworICAgICAgICAvLyBJ
biBmaW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMuCisgICAgICAgIC8vIExhemlseSBjYWxjdWxhdGVk
IGJ5IHVwZGF0ZUZpbmRNYXRjaFJlY3RzLgorICAgICAgICBXZWJDb3JlOjpGbG9hdFJlY3QgbV9y
ZWN0OworCisgICAgICAgIEZpbmRNYXRjaChQYXNzUmVmUHRyPFdlYkNvcmU6OlJhbmdlPiwgaW50
IG9yZGluYWwpOworICAgIH07CisKICAgICAvLyBBIGJpdCBtYXNrIHNwZWNpZnlpbmcgYXJlYSBv
ZiB0aGUgZnJhbWUgdG8gaW52YWxpZGF0ZS4KICAgICBlbnVtIEFyZWFUb0ludmFsaWRhdGUgewog
ICAgICAgSW52YWxpZGF0ZU5vdGhpbmcsCkBAIC0zMTUsNiArMzM1LDMyIEBAIHByaXZhdGU6CiAg
ICAgdm9pZCByZXBvcnRGaW5kSW5QYWdlU2VsZWN0aW9uKAogICAgICAgICBjb25zdCBXZWJSZWN0
JiBzZWxlY3Rpb25SZWN0LCBpbnQgYWN0aXZlTWF0Y2hPcmRpbmFsLCBpbnQgaWRlbnRpZmllcik7
CiAKKyAgICAvLyBDbGVhciB0aGUgZmluZC1pbi1wYWdlIG1hdGNoZXMgY2FjaGUgZm9yY2luZyBy
ZWN0cyB0byBiZSBmdWxseQorICAgIC8vIGNhbGN1bGF0ZWQgYWdhaW4gbmV4dCB0aW1lIHVwZGF0
ZUZpbmRNYXRjaFJlY3RzIGlzIGNhbGxlZC4KKyAgICB2b2lkIGNsZWFyRmluZE1hdGNoZXNDYWNo
ZSgpOworCisgICAgLy8gQ2hlY2sgaWYgdGhlIGFjdGl2ZU1hdGNoRnJhbWUgc3RpbGwgZXhpc3Rz
IGluIHRoZSBmcmFtZSB0cmVlLgorICAgIGJvb2wgaXNBY3RpdmVNYXRjaEZyYW1lVmFsaWQoKSBj
b25zdDsKKworICAgIC8vIFJldHVybiB0aGUgaW5kZXggaW4gdGhlIGZpbmQtaW4tcGFnZSBjYWNo
ZSBvZiB0aGUgbWF0Y2ggY2xvc2VzdCB0byB0aGUKKyAgICAvLyBwcm92aWRlZCBwb2ludCBpbiBm
aW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMsIG9yIC0xIGluIGNhc2Ugb2YgZXJyb3IuCisgICAgLy8g
VGhlIHNxdWFyZWQgZGlzdGFuY2UgdG8gdGhlIGNsb3Nlc3QgbWF0Y2ggaXMgcmV0dXJuZWQgaW4g
dGhlIGRpc3RhbmNlU3F1YXJlZCBwYXJhbWV0ZXIuCisgICAgaW50IG5lYXJlc3RGaW5kTWF0Y2go
Y29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYsIGZsb2F0JiBkaXN0YW5jZVNxdWFyZWQpOworCisg
ICAgLy8gU2VsZWN0IGEgZmluZC1pbi1wYWdlIG1hdGNoIG1hcmtlciBpbiB0aGUgY3VycmVudCBm
cmFtZSB1c2luZyBhIGNhY2hlCisgICAgLy8gbWF0Y2ggaW5kZXggcmV0dXJuZWQgYnkgbmVhcmVz
dEZpbmRNYXRjaC4gUmV0dXJucyB0aGUgb3JkaW5hbCBvZiB0aGUgbmV3CisgICAgLy8gc2VsZWN0
ZWQgbWF0Y2ggb3IgLTEgaW4gY2FzZSBvZiBlcnJvci4gQWxzbyBwcm92aWRlcyB0aGUgYm91bmRp
bmcgYm94IG9mCisgICAgLy8gdGhlIG1hcmtlciBpbiB3aW5kb3cgY29vcmRpbmF0ZXMgaWYgc2Vs
ZWN0aW9uUmVjdCBpcyBub3QgbnVsbC4KKyAgICBpbnQgc2VsZWN0RmluZE1hdGNoKHVuc2lnbmVk
IGluZGV4LCBXZWJSZWN0KiBzZWxlY3Rpb25SZWN0KTsKKworICAgIC8vIENvbXB1dGUgYW5kIGNh
Y2hlIHRoZSByZWN0cyBmb3IgRmluZE1hdGNoZXMgaWYgcmVxdWlyZWQuCisgICAgLy8gUmVjdHMg
YXJlIGF1dG9tYXRpY2FsbHkgaW52YWxpZGF0ZWQgaW4gY2FzZSBvZiBjb250ZW50IHNpemUgY2hh
bmdlcywKKyAgICAvLyBwcm9wYWdhdGluZyB0aGUgaW52YWxpZGF0aW9uIHRvIGNoaWxkIGZyYW1l
cy4KKyAgICB2b2lkIHVwZGF0ZUZpbmRNYXRjaFJlY3RzKCk7CisKKyAgICAvLyBBcHBlbmQgdGhl
IGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyBvZiB0aGUgY3VycmVudCBmcmFtZSB0byB0aGUgcHJv
dmlkZWQgdmVjdG9yLgorICAgIHZvaWQgYXBwZW5kRmluZE1hdGNoUmVjdHMoVmVjdG9yPFdlYkZs
b2F0UmVjdD4mIGZyYW1lUmVjdHMpOworCiAgICAgLy8gSW52YWxpZGF0ZXMgYSBjZXJ0YWluIGFy
ZWEgd2l0aGluIHRoZSBmcmFtZS4KICAgICB2b2lkIGludmFsaWRhdGVBcmVhKEFyZWFUb0ludmFs
aWRhdGUpOwogCkBAIC00MTQsNiArNDYwLDIxIEBAIHByaXZhdGU6CiAgICAgLy8gQSBsaXN0IG9m
IGFsbCBvZiB0aGUgcGVuZGluZyBjYWxscyB0byBzY29wZVN0cmluZ01hdGNoZXMuCiAgICAgVmVj
dG9yPERlZmVycmVkU2NvcGVTdHJpbmdNYXRjaGVzKj4gbV9kZWZlcnJlZFNjb3BpbmdXb3JrOwog
CisgICAgLy8gVmVyc2lvbiBudW1iZXIgaW5jcmVtZW50ZWQgb24gdGhlIG1haW4gZnJhbWUgb25s
eSB3aGVuZXZlciB0aGUgZG9jdW1lbnQKKyAgICAvLyBmaW5kLWluLXBhZ2UgbWF0Y2ggbWFya2Vy
cyBjaGFuZ2UuIEl0IHNob3VsZCBiZSAwIGZvciBhbGwgb3RoZXIgZnJhbWVzLgorICAgIGludCBt
X2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOworCisgICAgLy8gTG9jYWwgY2FjaGUgb2YgdGhlIGZp
bmQgbWF0Y2ggbWFya2VycyBjdXJyZW50bHkgZGlzcGxheWVkIGZvciB0aGlzIGZyYW1lLgorICAg
IFZlY3RvcjxGaW5kTWF0Y2g+IG1fZmluZE1hdGNoZXNDYWNoZTsKKworICAgIC8vIERldGVybWlu
ZXMgaWYgdGhlIHJlY3RzIGluIHRoZSBmaW5kLWluLXBhZ2UgbWF0Y2hlcyBjYWNoZSBvZiB0aGlz
IGZyYW1lCisgICAgLy8gYXJlIGludmFsaWQgYW5kIHNob3VsZCBiZSByZWNvbXB1dGVkLgorICAg
IGJvb2wgbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkOworCisgICAgLy8gQ29udGVudHMgc2l6ZSB3
aGVuIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyB3ZXJlIGxhc3QgY29tcHV0ZWQgZm9yIHRoaXMK
KyAgICAvLyBmcmFtZSdzIGNhY2hlLgorICAgIFdlYkNvcmU6OkludFNpemUgbV9jb250ZW50c1Np
emVGb3JDdXJyZW50RmluZE1hdGNoUmVjdHM7CisKICAgICAvLyBWYWxpZCBiZXR3ZWVuIGNhbGxz
IHRvIEJlZ2luUHJpbnQoKSBhbmQgRW5kUHJpbnQoKS4gQ29udGFpbnRzIHRoZSBwcmludAogICAg
IC8vIGluZm9ybWF0aW9uLiBJcyB1c2VkIGJ5IFByaW50UGFnZSgpLgogICAgIE93blB0cjxDaHJv
bWVQcmludENvbnRleHQ+IG1fcHJpbnRDb250ZXh0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwCmluZGV4IGNkMjNkNjI2ODBkZGMxOWM5OTM1YTUzMTAz
ZDc1NzMwZDkyY2E2MjYuLmU0NmM1ODdlNTE4YWEyMzVhOTMxOTJhYTEyNDRiNjk2MGY3Y2YxOWIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKQEAg
LTMyLDkgKzMyLDExIEBACiAKICNpbmNsdWRlICJXZWJGcmFtZS5oIgogCisjaW5jbHVkZSAiRmxv
YXRSZWN0LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZVRlc3RIZWxwZXJz
LmgiCiAjaW5jbHVkZSAiRnJhbWVWaWV3LmgiCisjaW5jbHVkZSAiUmFuZ2UuaCIKICNpbmNsdWRl
ICJSZXNvdXJjZUVycm9yLmgiCiAjaW5jbHVkZSAiVVJMVGVzdEhlbHBlcnMuaCIKICNpbmNsdWRl
ICJXZWJEYXRhU291cmNlLmgiCkBAIC01MSwxMSArNTMsMTQgQEAKICNpbmNsdWRlICJXZWJTZXR0
aW5ncy5oIgogI2luY2x1ZGUgIldlYlZpZXdDbGllbnQuaCIKICNpbmNsdWRlICJXZWJWaWV3SW1w
bC5oIgorI2luY2x1ZGUgInBsYXRmb3JtL1dlYkZsb2F0UmVjdC5oIgogI2luY2x1ZGUgInY4Lmgi
CiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KICNpbmNsdWRlIDx3ZWJraXQvc3VwcG9ydC93ZWJr
aXRfc3VwcG9ydC5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwordXNpbmcgV2ViQ29yZTo6
RmxvYXRSZWN0OwordXNpbmcgV2ViQ29yZTo6UmFuZ2U7CiB1c2luZyBXZWJLaXQ6OlVSTFRlc3RI
ZWxwZXJzOjp0b0tVUkw7CiAKIG5hbWVzcGFjZSB7CkBAIC04NTQsNCArODU5LDEwMiBAQCBURVNU
X0YoV2ViRnJhbWVUZXN0LCBEaWRDcmVhdGVGcmFtZSkKICAgICBFWFBFQ1RfRVEod2ViRnJhbWVD
bGllbnQubV9wYXJlbnQsIHdlYlZpZXctPm1haW5GcmFtZSgpKTsKIH0KIAorY2xhc3MgRmluZFVw
ZGF0ZVdlYkZyYW1lQ2xpZW50IDogcHVibGljIFdlYkZyYW1lQ2xpZW50IHsKK3B1YmxpYzoKKyAg
ICBGaW5kVXBkYXRlV2ViRnJhbWVDbGllbnQoKQorICAgICAgICA6IG1fZmluZFJlc3VsdHNBcmVS
ZWFkeShmYWxzZSkKKyAgICB7CisgICAgfQorCisgICAgdmlydHVhbCB2b2lkIHJlcG9ydEZpbmRJ
blBhZ2VNYXRjaENvdW50KGludCwgaW50LCBib29sIGZpbmFsVXBkYXRlKSBPVkVSUklERQorICAg
IHsKKyAgICAgICAgaWYgKGZpbmFsVXBkYXRlKQorICAgICAgICAgICAgbV9maW5kUmVzdWx0c0Fy
ZVJlYWR5ID0gdHJ1ZTsKKyAgICB9CisKKyAgICBib29sIGZpbmRSZXN1bHRzQXJlUmVhZHkoKSBj
b25zdCB7IHJldHVybiBtX2ZpbmRSZXN1bHRzQXJlUmVhZHk7IH0KKworcHJpdmF0ZToKKyAgICBi
b29sIG1fZmluZFJlc3VsdHNBcmVSZWFkeTsKK307CisKK1RFU1RfRihXZWJGcmFtZVRlc3QsIEZp
bmRJblBhZ2VNYXRjaFJlY3RzKQoreworICAgIHJlZ2lzdGVyTW9ja2VkSHR0cFVSTExvYWQoImZp
bmRfaW5fcGFnZS5odG1sIik7CisgICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgiZmluZF9p
bl9wYWdlX2ZyYW1lLmh0bWwiKTsKKworICAgIEZpbmRVcGRhdGVXZWJGcmFtZUNsaWVudCBjbGll
bnQ7CisgICAgV2ViVmlldyogd2ViVmlldyA9IEZyYW1lVGVzdEhlbHBlcnM6OmNyZWF0ZVdlYlZp
ZXdBbmRMb2FkKG1fYmFzZVVSTCArICJmaW5kX2luX3BhZ2UuaHRtbCIsIHRydWUsICZjbGllbnQp
OworICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKDY0MCwgNDgwKSk7CisgICAgd2ViVmlldy0+
bGF5b3V0KCk7CisgICAgd2Via2l0X3N1cHBvcnQ6OlJ1bkFsbFBlbmRpbmdNZXNzYWdlcygpOwor
CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGtGaW5kU3RyaW5nID0gInJlc3VsdCI7CisgICAgc3Rh
dGljIGNvbnN0IGludCBrRmluZElkZW50aWZpZXIgPSAxMjM0NTsKKyAgICBzdGF0aWMgY29uc3Qg
aW50IGtOdW1SZXN1bHRzID0gMTA7CisKKyAgICBXZWJGaW5kT3B0aW9ucyBvcHRpb25zOworICAg
IFdlYlN0cmluZyBzZWFyY2hUZXh0ID0gV2ViU3RyaW5nOjpmcm9tVVRGOChrRmluZFN0cmluZyk7
CisgICAgV2ViRnJhbWVJbXBsKiBtYWluRnJhbWUgPSBzdGF0aWNfY2FzdDxXZWJGcmFtZUltcGwq
Pih3ZWJWaWV3LT5tYWluRnJhbWUoKSk7CisgICAgRVhQRUNUX1RSVUUobWFpbkZyYW1lLT5maW5k
KGtGaW5kSWRlbnRpZmllciwgc2VhcmNoVGV4dCwgb3B0aW9ucywgZmFsc2UsIDApKTsKKworICAg
IGZvciAoV2ViRnJhbWUqIGZyYW1lID0gbWFpbkZyYW1lOyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+
dHJhdmVyc2VOZXh0KGZhbHNlKSkKKyAgICAgICAgZnJhbWUtPnNjb3BlU3RyaW5nTWF0Y2hlcyhr
RmluZElkZW50aWZpZXIsIHNlYXJjaFRleHQsIG9wdGlvbnMsIHRydWUpOworCisgICAgd2Via2l0
X3N1cHBvcnQ6OlJ1bkFsbFBlbmRpbmdNZXNzYWdlcygpOworICAgIEVYUEVDVF9UUlVFKGNsaWVu
dC5maW5kUmVzdWx0c0FyZVJlYWR5KCkpOworCisgICAgV2ViVmVjdG9yPFdlYkZsb2F0UmVjdD4g
d2ViTWF0Y2hSZWN0czsKKyAgICBtYWluRnJhbWUtPmZpbmRNYXRjaFJlY3RzKHdlYk1hdGNoUmVj
dHMpOworICAgIEFTU0VSVF9FUSh3ZWJNYXRjaFJlY3RzLnNpemUoKSwgc3RhdGljX2Nhc3Q8c2l6
ZV90PihrTnVtUmVzdWx0cykpOworICAgIGludCByZWN0c1ZlcnNpb24gPSBtYWluRnJhbWUtPmZp
bmRNYXRjaE1hcmtlcnNWZXJzaW9uKCk7CisKKyAgICBmb3IgKGludCByZXN1bHRJbmRleCA9IDA7
IHJlc3VsdEluZGV4IDwga051bVJlc3VsdHM7ICsrcmVzdWx0SW5kZXgpIHsKKyAgICAgICAgRmxv
YXRSZWN0IHJlc3VsdFJlY3QgPSBzdGF0aWNfY2FzdDxGbG9hdFJlY3Q+KHdlYk1hdGNoUmVjdHNb
cmVzdWx0SW5kZXhdKTsKKworICAgICAgICAvLyBTZWxlY3QgdGhlIG1hdGNoIGJ5IHRoZSBjZW50
ZXIgb2YgaXRzIHJlY3QuCisgICAgICAgIEVYUEVDVF9FUShtYWluRnJhbWUtPnNlbGVjdE5lYXJl
c3RGaW5kTWF0Y2gocmVzdWx0UmVjdC5jZW50ZXIoKSwgMCksIHJlc3VsdEluZGV4ICsgMSk7CisK
KyAgICAgICAgLy8gQ2hlY2sgdGhhdCB0aGUgZmluZCByZXN1bHQgb3JkZXJpbmcgbWF0Y2hlcyB3
aXRoIG91ciBleHBlY3RhdGlvbnMuCisgICAgICAgIFJhbmdlKiByZXN1bHQgPSBtYWluRnJhbWUt
PmFjdGl2ZU1hdGNoRnJhbWUoKS0+YWN0aXZlTWF0Y2goKTsKKyAgICAgICAgQVNTRVJUX1RSVUUo
cmVzdWx0KTsKKyAgICAgICAgcmVzdWx0LT5zZXRFbmQocmVzdWx0LT5lbmRDb250YWluZXIoKSwg
cmVzdWx0LT5lbmRPZmZzZXQoKSArIDIpOworICAgICAgICBFWFBFQ1RfRVEocmVzdWx0LT50ZXh0
KCksIFN0cmluZzo6Zm9ybWF0KCIlcyAlZCIsIGtGaW5kU3RyaW5nLCByZXN1bHRJbmRleCkpOwor
CisgICAgICAgIC8vIFZlcmlmeSB0aGF0IHRoZSBleHBlY3RlZCBtYXRjaCByZWN0IGFsc28gbWF0
Y2hlcyB0aGUgY3VycmVudGx5IGFjdGl2ZSBtYXRjaC4KKyAgICAgICAgLy8gQ29tcGFyZSB0aGUg
ZW5jbG9zaW5nIHJlY3RzIHRvIHByZXZlbnQgcHJlY2lzaW9uIGlzc3VlcyBjYXVzZWQgYnkgQ1NT
IHRyYW5zZm9ybXMuCisgICAgICAgIEZsb2F0UmVjdCBhY3RpdmVNYXRjaCA9IG1haW5GcmFtZS0+
YWN0aXZlRmluZE1hdGNoUmVjdCgpOworICAgICAgICBFWFBFQ1RfRVEoZW5jbG9zaW5nSW50UmVj
dChhY3RpdmVNYXRjaCksIGVuY2xvc2luZ0ludFJlY3QocmVzdWx0UmVjdCkpOworCisgICAgICAg
IC8vIFRoZSByZWN0cyB2ZXJzaW9uIHNob3VsZCBub3QgaGF2ZSBjaGFuZ2VkLgorICAgICAgICBF
WFBFQ1RfRVEobWFpbkZyYW1lLT5maW5kTWF0Y2hNYXJrZXJzVmVyc2lvbigpLCByZWN0c1ZlcnNp
b24pOworICAgIH0KKworICAgIC8vIEFsbCByZXN1bHRzIGFmdGVyIHRoZSBmaXJzdCB0d28gb25l
cyBzaG91bGQgYmUgYmVsb3cgYmV0d2VlbiB0aGVtIGluIGZpbmQtaW4tcGFnZSBjb29yZGluYXRl
cy4KKyAgICAvLyBUaGlzIGlzIGJlY2F1c2UgcmVzdWx0cyAyIHRvIDkgYXJlIGluc2lkZSBhbiBp
ZnJhbWUgbG9jYXRlZCBiZXR3ZWVuIHJlc3VsdHMgMCBhbmQgMS4gVGhpcyBhcHBsaWVzIHRvIHRo
ZSBmaXhlZCBkaXYgdG9vLgorICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMF0ueSA8IHdl
Yk1hdGNoUmVjdHNbMV0ueSk7CisgICAgZm9yIChpbnQgcmVzdWx0SW5kZXggPSAyOyByZXN1bHRJ
bmRleCA8IGtOdW1SZXN1bHRzOyArK3Jlc3VsdEluZGV4KSB7CisgICAgICAgIEVYUEVDVF9UUlVF
KHdlYk1hdGNoUmVjdHNbMF0ueSA8IHdlYk1hdGNoUmVjdHNbcmVzdWx0SW5kZXhdLnkpOworICAg
ICAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzFdLnkgPiB3ZWJNYXRjaFJlY3RzW3Jlc3Vs
dEluZGV4XS55KTsKKyAgICB9CisKKyAgICAvLyBSZXN1bHQgMyBzaG91bGQgYmUgYmVsb3cgYm90
aCAyIGFuZCA0LiBUaGlzIGlzIGNhdXNlZCBieSB0aGUgQ1NTIHRyYW5zZm9ybSBpbiB0aGUgY29u
dGFpbmluZyBkaXYuCisgICAgLy8gSWYgdGhlIHRyYW5zZm9ybSBkb2Vzbid0IHdvcmsgdGhlbiAz
IHdpbGwgYmUgYmV0d2VlbiAyIGFuZCA0LgorICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNb
M10ueSA+IHdlYk1hdGNoUmVjdHNbMl0ueSk7CisgICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0
c1szXS55ID4gd2ViTWF0Y2hSZWN0c1s0XS55KTsKKworICAgIC8vIFJlc3VsdHMgNiwgNywgOCBh
bmQgOSBzaG91bGQgYmUgb25lIGJlbG93IHRoZSBvdGhlciBpbiB0aGF0IHNhbWUgb3JkZXIuCisg
ICAgLy8gSWYgb3ZlcmZsb3c6c2Nyb2xsIGlzIG5vdCBwcm9wZXJseSBoYW5kbGVkIHRoZW4gcmVz
dWx0IDggd291bGQgYmUgYmVsb3cgcmVzdWx0IDkgb3IKKyAgICAvLyByZXN1bHQgNyBhYm92ZSBy
ZXN1bHQgNiBkZXBlbmRpbmcgb24gdGhlIHNjcm9sbC4KKyAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRj
aFJlY3RzWzZdLnkgPCB3ZWJNYXRjaFJlY3RzWzddLnkpOworICAgIEVYUEVDVF9UUlVFKHdlYk1h
dGNoUmVjdHNbN10ueSA8IHdlYk1hdGNoUmVjdHNbOF0ueSk7CisgICAgRVhQRUNUX1RSVUUod2Vi
TWF0Y2hSZWN0c1s4XS55IDwgd2ViTWF0Y2hSZWN0c1s5XS55KTsKKworICAgIC8vIFJlc2l6aW5n
IHNob3VsZCB1cGRhdGUgdGhlIHJlY3RzIHZlcnNpb24uCisgICAgd2ViVmlldy0+cmVzaXplKFdl
YlNpemUoODAwLCA2MDApKTsKKyAgICBFWFBFQ1RfVFJVRShtYWluRnJhbWUtPmZpbmRNYXRjaE1h
cmtlcnNWZXJzaW9uKCkgIT0gcmVjdHNWZXJzaW9uKTsKKworICAgIHdlYlZpZXctPmNsb3NlKCk7
Cit9CisKIH0gLy8gbmFtZXNwYWNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlLmh0bWwgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rl
c3RzL2RhdGEvZmluZF9pbl9wYWdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYzA5YzlkZDA2MDU1OTUxYWMy
ZjI3MmYyOGU5YTE1MThmYWZkN2ZhZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vdGVzdHMvZGF0YS9maW5kX2luX3BhZ2UuaHRtbApAQCAtMCwwICsxLDEzIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29u
dGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2Fs
ZT0xLjAsIHVzZXItc2NhbGFibGU9bm8iIC8+Cis8L2hlYWQ+Cis8Ym9keT4KK1RoaXMgYSBmaW5k
LWluLXBhZ2UgbWF0Y2ggcmVjdCB0ZXN0LjwvYnI+CityZXN1bHQgMDwvYnI+Cis8aWZyYW1lIHNy
Yz0iZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWwiIGhlaWdodD0iMzAwIiBzY3JvbGxpbmc9InllcyI+
PC9pZnJhbWU+Cis8L2JyPgorcmVzdWx0IDEKKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9maW5kX2luX3BhZ2VfZnJhbWUuaHRt
bCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvZGF0YS9maW5kX2luX3BhZ2VfZnJhbWUu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi40N2QyOWFlMGZkZDM3ODYwNmY3ZTEyYzliZDk5N2RlM2I2MDM3ZjI4
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9kYXRhL2Zp
bmRfaW5fcGFnZV9mcmFtZS5odG1sCkBAIC0wLDAgKzEsNTggQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8aGVhZD4KKzxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZp
Y2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wLCBtYXhpbXVtLXNjYWxlPTEuMCwgdXNlci1zY2Fs
YWJsZT1ubyIgLz4KKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CitkaXYudHJhbnNmb3JtIHsKKyAg
YmFja2dyb3VuZC1jb2xvcjogIzAwRkYwMDsKKyAgd2lkdGg6IDEwMHB4OworICBoZWlnaHQ6IDEw
MHB4OworICBwYWRkaW5nLWxlZnQ6IDMwcHg7CisgIHBhZGRpbmctdG9wOiAyMHB4OworICAtd2Vi
a2l0LXRyYW5zZm9ybTptYXRyaXgoMC44NjYsMC41LC0wLjUsMC44NjYsMTIwLDE1MCk7Cit9Citk
aXYuc2Nyb2xsIHsKKyAgYmFja2dyb3VuZC1jb2xvcjogIzAwRkZGRjsKKyAgd2lkdGg6IDEwMHB4
OworICBoZWlnaHQ6IDEwMHB4OworICBvdmVyZmxvdzogc2Nyb2xsOworfQorZGl2LmZpeGVkIHsK
KyAgYmFja2dyb3VuZC1jb2xvcjogI0ZGMDAwMDsKKyAgbGVmdDogMjAwcHg7CisgIHRvcDogNTBw
eDsKKyAgd2lkdGg6IDEwMHB4OworICBoZWlnaHQ6IDEwMHB4OworICBwb3NpdGlvbjogZml4ZWQ7
Cit9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+CitUaGlzIGlzIGEgdGVzdC4KKzwvYnI+PC9i
cj4KKzwvYnI+PC9icj4KKzwvYnI+PC9icj4KK0ZvbyBiYXIuCis8L2JyPjwvYnI+Cis8L2JyPjwv
YnI+Cis8L2JyPjwvYnI+CityZXN1bHQgMgorPGRpdiBjbGFzcz0idHJhbnNmb3JtIj4KK3Jlc3Vs
dCAzCis8L2Rpdj4KK3Jlc3VsdCA0Cis8ZGl2IGNsYXNzPSJmaXhlZCI+CityZXN1bHQgNQorPC9k
aXY+CityZXN1bHQgNgorPGRpdiBjbGFzcz0ic2Nyb2xsIj4KK3Jlc3VsdCA3CitGb28gYmFyLgor
PC9icj48L2JyPgorPC9icj48L2JyPgorPC9icj48L2JyPgorcmVzdWx0IDgKKzwvZGl2PgorcmVz
dWx0IDkKKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>157824</attachid>
            <date>2012-08-10 15:47:54 -0700</date>
            <delta_ts>2012-08-10 15:47:54 -0700</delta_ts>
            <desc>Archive of layout-test-results from gce-cr-linux-08</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>365849</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">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
oHI7tUltz9Zge5ey7HNp2qu2OwxvnMTUGvRGWntKYxyrfI9VVZAwqPY3EFtjDuJYbcXG6vJ2owug
rTEn9PWJR8pAfXRhi8yrDqpB+OHHpxgUPdJHqVgPaRbJKZI0qejmDn3AI1XZxgP2B6NtcVGpKfhE
6G/olJh8par0KRNGhTuYO+AmmHkTWVWybHAnqjXXTe7Ctx+i1qvRjmp4BdLnWtFKYA4HsEd1YhKP
iiTRv8PVsEWefjusQRQV6wLSqzJVPO6R2lY0PoZXH/0OVHxRbbceHvH87Cz+nadsDbH5v2kqdNKQ
9b2zTyW8OA0j4+oKBQ2kPPX0oM8gUcWRrM/s22BUp41oCKpn7Mt0t4FoekDciqhChuWNMpKaoIyz
KgMpRx4t+1CoI2YfyMOo2YeToYPZm0WEQWwajv6zT5MCnINKnmZwV6Xc7dJ1tPVDDNrkO2taOx8R
/kKyq6GabW9SFi9plwzgE7Wt4EcIIO7YgkbbSKq491YMjYd0QVPLKuLHZL5ohTwR3Ce4NezH3FhX
0M7UrbOuQZaJCPZv46fHuzshsd8l5DZ/8O3Y47gz+d9pypaMz4pILtGOX3f/cqDgUREv6nCgzGrK
Thy1S6zrTli3qcgyO6WcAaklhcIyh8bnQx5py7B88bkp8iONVZmnOv3coHTR8xpdAtw+lkurtIBd
K7U7fk/zlYj9YH0Dd5diuYI9RjWQnLlzmuibTr4w4UmyV+mKNjKuo3X6NrHlA9++90P23//1/1BL
AwQKAAAAAACBrApBAAAAAAAAAAAAAAAAHQAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2NzczMv
VVQJAAPCfiVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQKAAAAAACBrApBAAAAAAAAAAAAAAAAJQAc
AHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2NzczMvZmlsdGVycy9VVAkAA8J+JVAOhyVQdXgLAAEE
6AMAAAToAwAAUEsDBAoAAAAAAIGsCkEAAAAAAAAAAAAAAAAsABwAdG1wL2xheW91dC10ZXN0LXJl
c3VsdHMvY3NzMy9maWx0ZXJzL2N1c3RvbS9VVAkAA8J+JVAOhyVQdXgLAAEE6AMAAAToAwAAUEsD
BBQAAgAIAC+wCkFsDboXiQAAAJMAAABiABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvY3NzMy9m
aWx0ZXJzL2N1c3RvbS9jdXN0b20tZmlsdGVyLWNzcy1rZXl3b3JkLWFzLXBhcmFtZXRlci1uYW1l
LXN0ZGVyci50eHRVVAkAA7qEJVDCfiVQdXgLAAEE6AMAAAToAwAALcexCsIwFEDR3a94oy6laRLE
bEGqONhKEBxESpq8toE0lSQO/r0dXC7nPikhey7+ZRWpGGcHQksmaqVaJUaPqerMbDuLZrEYC2O2
nBC6e8GtVqdWXWVzrOEhVXNpzgJkztH1n4xQgktgXdK9R1vAfVp30gmSG8PgjA4Z3hiHJc46GFwd
tM/fzQ9QSwMEFAACAAgAV7EKQXdwkU25vgAApKkFACYAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0
cy90ZXN0c19ydW4xLnR4dFVUCQAD5YYlUHN+JVB1eAsAAQToAwAABOgDAAC1vdua4zayLng/rzIf
XSJI6nDptt2rvcdu91S5d681N/VRIiTRSZEySWWm/PSDAMAzDhHM2vvQzhL+HwQicAgEAkB6OvGm
yY95kbfPT+n4X0F1/IOf2iDjbXq68uy7a3sr/q90Ssj+SE+8bINTVbZ5+UjbvCqb4JQ+Gh6kTcNr
+CE4p3nxqLkxh/J0reqgyMsXngVpWZXPW/VogmNRnV6CU502VyOtztNAlOr0cqze1R+WEgIwy5v0
WDgAV17c7Yl5lvEyeNyztOVNkBZFxhtR6ywt28bDsiYX6ZEX7lRR4KPQQhnk5f3RorCvvK7zDApJ
+kbTps/gLW+vub3A95o3QtNSw2kR1FXBrdiap1lVFk87QLDtomtOIr04prX1K6e0fE1FLcc/llXG
VZO1M4wpounKJnxNy4tog2XV5uf8JCuqWnJjb4eazLO8hRbWtZUsf8Wg1f/K1uv/EiRAZ+T1LS/z
8hL0kgzeruKbUp+dmuw5gJpFHXnBb1DrRvxxakUnsjLkp0RRL6IdBrfU2E+yXGTWyL6fl6fikfHA
00e6LilHDlGJBuQenKvTQ/5uprzqRhqoUaPxCi173AtQJQg5L0C3mbndiZ6Q35u8CVr+bhTeOa+b
Nih4K+QvQUFbp2VzruqbtxTQsEB4eZNfyqo2j0MqKWjuYkCtA60eY1nzW3rhcsQUmYr/cClDO1Lo
LHSmBm3eQjv0VCO/iYZQtLIpQO8WzS4XAyIU2AqHJnp8tK3oSppqhA7V6CcRM04MhME5xxRWQlUV
xZdNENVhuo4AHcf40aJKM+gD+blOb0JBolE3k0ECQernjve25kZp3cSgkPadwYwoH0LrTauLoMYr
b0luj6LNVS9X7Jrfq7qFwbPNX3lQ3W3MkjdiqBLjyrMSorRKuqxk36rFEORqtWJmD8pUflJpxZHh
aACGIvOS18Y870Xayh5YCiEbAdNJqyufGgTlYGNjCUxVvzQw/WqlBO3zbh48an4TM6/BepFjjq+l
duxx6+9bpY+sFAsMMYe35uKpWeZWZaNpzZafwpaVHO6OVfZ0gTwAKWR+uwtTsr0Ki8BbGRhWwZyT
c5oW/Hi6tBJl95LzVNvWuRhvOAy3mrT4qDIFPt2FdvK7+GjTNp9Y9p22EKa2iw975qLdd+OfDVzw
tP4s1PR/i5GrgD++S4v7Nd18l6zkEVnHtMlPOBIJexK/I6GXojqmhSw+iXGqbveqEdMMklXyixxj
sPCqPAtjCp39PW2vSGhzFe3oDQnubQkk/i9eV25oLzfdVE/V/UljCEtJ9Ck1XqRtdV/P7lYVa7hV
t/JZRRbrIRq7yC/Xlkpqqkd94iuEpIlU+WgaWTQdjyyV9wpNgCGB0tYAv7alzbl4Oc6ZBFEuqARp
ApfYwoCyon2NaDSp0NvWmEWUBb5dqdngezl/jJfyK4hiDBfyL1fwM35OH0W7gglT8QqaNJTX8tbX
MxfYIs9WMGtYkiB5qnKEsUIRVg4WSzK6Xyyp+N5h4OL7iCLTBgzFoY8YEx5RNOQxY0qjCgQ/alR3
XquF8SltYCUofvUahwY2reMPvHMluga9sBdO/9RVtBLZUsjM8lEUzeN8zt/JVILqBtKjrPmpupR5
w7FDTFPBcEQYKhRh5VCxJKP7w5KK7xQGLl68ikwbKhSHPlRMeETRkIeKKY0qEPxQIVdg97QG3zmh
oY1pK5ubLQu0ZG0Z4IVszQEv73EWtGY4ZtIbo4G9SnDkhmkirxMXvpE+yhN8Q4yb0qAktNMZc2VT
deSCFvosD6rOzHS82gY+2f6cUz8sxA/YpPNM1otxpQk3ZFBW0k/73q6T5UD/sDzNWa2QyZDRerku
8lgj224Nt0qyHfnDcjVltEIiXTbrZTrLwS/Rqs6gwONNSgs2q9O3n2VXiNL6goQmeOgBoH7n+owA
EhdSoFKa/C9O4Sh5Ej+kSIRP+b3/I2wpxqVWqDy9lxcq55KfqRRRd5/FMrAQDqgR2LdJMoKiNjsG
/Lmo0lapAclQg31ewpcKLj4kt+ew5IGGI3SbMV9kEf/BwSxkH+B+gPp9mf0nzzybN8ssoDNRKXlN
ZJA0iNuxGuPf6hTbAMEVgIR6d8IGaMOL83chBYxtJLhtswH/VlflBbbxkXjYZiN1diAg1EnYme2h
3nGkR6L2QAc0qkH1cK/eeyRiA7TH4hTZw73bn4D80j4LjnLdDWjwvDX8lo+XZwRm5fOaT/H0r2jP
fNPWuWdaXHC8zX5giCI1YjZ61LJkuDZqYuqIylVcHRVD4l75e0QlbGmEpghCMoORGRGZEZMZCZlB
l9WpSG/3FRJTPLaSF63kkWWY0quW0muVrhVjulaO6VpBpuslqYjJWiKxbQosrYz9nih/D9cS2Vpi
tJa4uo7JWuJ2LXG3lrhfRySP5GMmW82MVjPj1cxkNXO7lpmuF266UroQA7zyq5L6ga9G66nrtFpf
jiurCky2mhmtZq6vZ7KauV3N3K1lpuvVkq7XS7peMel6zaTrVZMSJQw6WWMEDTy2khet5MUreQmZ
Vz5uZM6d1yf8qrPnpWuVkK7VQgrVW/M9oK342mrByLX/moIqIltLjNYSaQ20eb0QKwcMWq2aZ9Ny
WlseeVCIxRsz3cW88LbbyePvedM2eLT4SFpf0ITmmtYel8cI/SjzPx9ul86lTrMcmrPfzd9Dc5F7
fa+KtMXs2Bhpp6qoHvVa3sqPynNu94LTmdWjbfJsDfGV10V6Z6uZdKLfxWikvcJB/FNa0JnSo+3b
4+uZcIwzrZE+5TlrcAKHK3lsJS/C8fTpctgFS2tO4wgpNoithAVPu0MpHG1nUXrhlFmdzw2nfbPm
7cMTaz6nqDOxOAr8N4WAp5J/d+TXvMzW8PC9fMKr2ra60Xmnp2hnGa/pzHNdYVU+ponp487DlTxG
5/lCSeYk/ucDOwJpRl6CysIVHLaCE5E4qF22BYk2MGqWnqDCNSSaINrqcbqGdMqKr9CkTZ4bFjy2
kucupwyo+DFtUzHCczGchYjtsiUHmkTu6RtLlncXdE5hKwrHVhWOfVcIw5cTOaguZaChOtWSV1cP
zzyy5LR5+SRSCGqCTWGKigAvF9YEfMHLi2cLf0qgildz7jUXJjmBU9UwWfqtfxPr1N+ZQSCJxTCd
U71RPuQ/DzfF69gRYkcYMTFrGSPRa+NPWYR+APBHmZ7PwujjGYFE6Didtdx6QukXjDItaYR7DSeZ
2pw3NB7qWokFy2eGLwn+yJAFR4yCXPRwtG7gMjJKNwU8ZVQDvDfaaQaXY21GYlRNQ8Bned0+qR1z
INL65cCrhYLCVSxGZhH6G5DUhTIkoVOnEsnxxSRO4d74tCmcPDApEiayacrBhR6CZ+K7U3r/Du7M
wiFPReU7SNljMQe7e7AY50oc0m9I9dBGrAFrpAywZfX2ZAnTgYAI5B9VXn535K+8QGKxKpBgtA4k
+pb7wtIHLE5hEnpP67Qo0BVEKlhikbVTFUtPj5Zjwfz9xHnG0ZmjJa3g8CfPLujiVMf20aDRNUSh
i0GjQDNIhR9f3ulCP8r+sjcX7E3GyqMFqODNKS04Jt52xPF/4JY3jTBpvPsocuBP69N3SsghBcwo
4JgC3uLAGKn1YP9mzgD1dNseiDJsBnRVEgqBm/V7uGxGWP0pMFJ/cLZA7m00YPaGa0jYL4FLFf0F
CSblHFHAMQWc4MDtW3XP0TXUaEZCRyQ0spLSxg0JWIbHguvwgRukfq++O4nJ8gRLgpDMYHhGofe6
QjplxVciLIWXzaPmzeMofwvX0dAFJA1ugCcNWIKgRiEsWPYz7MjcE5o2rVsspXdfj66F9bMInaND
I3Rw5Je8/JdvWaahf+W8/uFRv3LxAb/PwEAitywXnVHphJYzJSrbicySLcNLks4UJc2QhGZINNIY
kNhhLsXhkSv0gfCWl3D1MrqqHR5VWbHQk00ZXeOOUPI3afaSKO/tXYz5CEmp60DUMhTZbcYUiowl
DxO/MqA7CadZRmSIjiiGMpyxZiaytUTEXIbZGVPA5l+gx5/VMAj2ApGC7rwmGiPT5CBDZuWXFTXz
rrhNHFznm5IIQ/OUiHHdGmjdHEKkYTe6nVS2nhpRqY8S4f4y8LoO56XBsIm3BjSabAYYeQzNI4zV
HQPfHuEkLF4CGo2KhxwTxAyFbrMdBV+HPx9pBhcAnojW3YJH1qwnB7Yih4/UG2vpLYk4Y6/G3Ssw
YLHdV4Jh2RISsAyJxS/RNBzfVmv8LQcDfur1wXHQI1rd32EQUsCMAo4o4JgCTihghP+zaevqhWMn
dY1GG6Aaf68fwvhG2ScTBrZzTElVXWLspykJujmRg1tRTCg1qj1rihyrQhqc4eEv/A0NpixRegrK
9zHzlSCHzhlLbgijOv+MiJ2m5b1n6BuuOoKqDCLufErw3zs+xQ933eE53r3wKRx5FU9/YR4y3r7D
55QbrqYkb4DCFI6I0JkScOE5HUdGZTy1ykM6hVEosoAhmYH7xj0FcxoeRbvzFGnSmIjyFsBwNXNV
YZFrxhG1qvPuoSpKf12S8X1XcVeKd61w14p2zIvoPLpCFPF9pWDeV3/xufKLT9IXO3GmDQmPMtLG
BPTgOMIjLqOfsWhDZE9C3kOPWLHpu85UVGSIhzI8NMJDYzw0QUG7V9Ua/cvfikeN8n56MvBHfzgz
WE//oSqqj9Wgy+GjZVjP/02d0vtIJfosPlwKdAZHUBw8VoEGF55LBDVWT5r+wOQp3j/YTvHjO/vC
lTxUr5d7UyEaic8TNZAMV9GGNDijwVGF4aV8Erg6n3GlGeEZAf9OwD4x2P5QGbpR9gx0s+wZ5IZp
ZKLklSOvc57A0TXSyyRvSMUUrl5BxRPI4lrSULLSZ6k7/+Z/r+D8D4EjuxXxOx0H9x2EkamhvdcC
21CmK34CgaxMExGlTu1aQpdQ4yGcPSTiKeWRkdchlUD+Amq0xu5gLuCe4rTy/osUXgJoWrHQ/u6Y
tzePC3hJ8h4sWlKGq2OIPN8p/iVl/JbeGuYP3cT62/AwGCkb8Cj/QBYqsP5Xla/5mP9W9iVPhrz/
kov/EIneDaMlZbTcWENURv4apjKs//sD3P+hctv09LKGk/E7Xa5yWFnTrcDP/H2RX8oVvL+lDfdu
mhio+HDKJRmcE/XZu4qR8kBeCj8CI8azHot9hHtBwT1MMaKhtnPHeNT27IiA6Mk9FnER/QiNu4p+
REBs5M7RjISOSOiYhE4QaPxF+tDFgtNDtPtbALNfUFRpFpzqtLl6ecJMhD6N/YyGY1wXIzgSfOyG
CXRpega6QD0DiYdHJnQt4IZCz/7ynAKxGEVL59RtQeIU/NySCLX3YZc5QwXCUyujWPjq9OqRw+WR
t54heWDKcFL/GD4j3NJ3ZQodvWctbUzocWffO1c2sv++FhuzuaVFsYrpPXA+I+K1J+HIkIERiyjA
Dl5WbV7e0wuZqHcicKwX9RBc2eRN67sSbmCpl88ozRG9xF1QKAKXiyP08CrRs5vCfZwbTyHOTx80
RVZnSvJvd80sQ3VJDIFQV9JezPIa4cAyc3G2k5krb7sqmxVM76tSdhrKODTT/SPGlKa8iAjdm2iI
IdFEQ0X0GJlrBKOZa9qAopJFytvfexN5VV3HGawq+GCi55kYCXNaH23npV/JXl90ebEquVEOVNyX
X6s8813L2b/cKqydhpfKD+yHy3HRF8g03FM82mc/phk8e0Bn+YICjDxMNIGR+CjzU+Xycp+FzXME
d4lHjT3O31N6aCn+6ZpCux1f3wWvHa7m4OVnmXJNIOFuv8IUm+Vi2ndfUzsl9FtPSLx7tb/AStc+
Et44W+MUi3ANNPz0qGFAytI2/ffnnx1IuHBttJ3utYXmhAsngPOsoIEb7wVsc5YyzzJ+ym9pQaW5
7n23MZy2mYX0fqdSrvydSvnjUb5QObe8dN0dYCZVp5YuariFzvMespnofRvBQivoFVtVPtE9Baa8
rBH/2zX3vhJtZtI6Sc3Phb7YT048FHGOuKTuPOVRy+t5hnFOaCijkgB/3/2LPnJM2JQBZEYkjSNT
LmU4mTBJo8qESWvdEypxjJlwiUPNlEsfcSZ88sAzZRerK/2RQq8bjSZZrBmUJhnQ+nrj3oxrqx+l
TfPLd2Jd/LgJhTSubQ8TnNHgEQZ+rC6Pxn2YZAB7jawB+sedX3yhKzP0vRYDWP1UdnmDpsG1+Lk/
7tvCKqu2fNyOLreThalDeTx3FA/konoTHREixtPmlOc0indFNZAQp4kG8F0sQdWhnXeC3O+uhesU
RlcqLrB8wPufWJHNO+Pug0kS5HuhSINa5/VDEuRepkvIva7aytP1ILXm92IYxPReshgaP+XnWnyl
+XQU8rrxoN9mzgK1Bg40wMvUx0HvPcXOGH1E/RTIDaLbMMGgSM2prvptDzdDvzLlL1hZCjMtGKVp
DltDitaQAtHI0mffbElcO0duV5IY5/wdBCd/rkovXBdeW9TBWbS/++CbchHuz0Dk71OmhufluImC
oGovp+ajrm2HASg419UtGM3ZHnhbIcH1KVAXFjug5Wve5MeC+2XdIyd9NLgOUaEEVnPtIzPwLDtB
6ETMaqDScWvzVb7g6SsntU9dnMWw4GVMRg9nE10Mad5PEAbBERQ70qqVYFeWcUyHESyPpgXpGXp+
UcENrrrSx7R2fgWatqNbqUwCNUD0Djnxt5gd3WO4Zl4EJzuJOcovpV5LVqSu53QaeiJGiY44QmbV
Sdq99poMJDXOib8r+c1RdJkBnpcQyBB0OgG2+MNVKlnongBbkw0SbIfBBWgTyTjGXStnXCQ7rRJL
JmHgBkfevnFeBumxqYpHa5pHfRQHQ8tdaWHqzDHAm37Y1hvY41BCE/5a5+WLr/n0HSCQizfrSKdC
4Br93wA27Y2DTyuXrNDAGli/ll0DDsyTWAeHwSC4Pi7cVt4JEAovLSLxq72HyKrJ6b/ptQOmQDmK
37TA5cZmMPwSlFUwvj7TRhM/PIpUVHbGX9Le+PFSqP8NYM/mIm9ID06jaF8LWhRlvKi0ovT7ObBn
lAshiTmwzNwc7eYzlvevQEYmfOp2mIO/AnibrvNBNU346Vi9fx0eN/kkBJ59BRveDjmOox2s6V8n
7+f5YF8n+vWi30bR4zgw9gNjVXpQ2CyRsFEInRtEyRApqQGKzXwcv+dBkbJEFniExWY/dnN5UNgs
h5cQnRhCdsjq90hs1rhscVmeCrjz2Z38VUyRqaN9YJK/aoOoESX62vB6eHvJyril9aU/jmJFVeVX
cDP1+dvxV+5u5r7vqXTvUDiBeeWv0UiYe1gZgbAZ1hiRIHu+Bjv70YDxZndPs9FNbHaAVyFTHPa7
aJxbJ2MUOkuPViYwdKZOvYxA3gynw0/06Zjls+UO/Ar/E9yqrOFFEEW2hMSWsLUl7EYJ8njCmaft
oxZ2OW/BTGrAVdeMG44NJ8xXMU5OkS/w59galNb+5n0THG/3EU5/I5BFK9urXIuO0pUl/1dVwap2
fJsPJGo3enDMheTyspGPdAc6UsGC0qD0mtZV6UONNyEABOUI5K07zXfvI7mmxenTqK69q24pQQUt
qtNLcEubl36RLKsWwCYEbxdwOQ8FkxcVZonLX987E3ieBP8T8Lqu6kVe0oALrk1hThieiBwSQG3q
ldigi2NqDKDRsKJ/lE3pVpXVeEtvmqrdgKk049PCijElzH+78BaOg4pFbCZP8ARqAA30buq0XSmG
ro5ax4glU3Vf1Cy/XYwlKPi79AJcat400BCSXbIPA4bERTjcAgWOjdnkrJNmU3L3a17e0ndLY+hX
R/P5Q6dbfh4WXtJVAQIPpkZmD+xrs2Vst52nNznsYwXwd2NLG3wh0JksKFXLeWILN1cEumtBGzTU
RWGMJVBJMlwiOPGiWAKGBbdc6DMfIPIBYh/Ant4EGb/DKL3sGCPQPOkV5inxl9oTGk8DeQGXwX4S
LSBQfxvngA4GF9d0ODgYoj1deiuowTMMyLHL8AHfD9S1kCAU6Utpa85pPBR6JHvnZ6SPR9dk4o9a
oq5vQQP/L29PVwOIy9MkgRTN9c0NcKRKW6cUHS+QbyVDXZy5LfEoMC5PO0ZI/Cg9bq6MOpALUQpN
Na0nGwWyIzJhtAXaXejKaYSzg8TE8lROtSsGZYdcHzxQR0GcOQ0wOyYvobM7s1EQe3rnlnTloTF2
gJg9IHb6JIbWdwhcTgsM1vXJASWHemf77bF2SAO2r0/iHciB4Pc8decBCEOyHkuGUU7uk8IbdObs
HHjpUV3HIlEwYFwpKCXGltMOUbO7XpEtptgZWK/rnnarx0bolkDTs3wIhh9pRwjry1X30XYuFC3j
jbCSs7RsXYzZendAyM0Q9cWRzeYGGlK7UyN6Pm1Mm0djvN7M1f80AODKp1MNO1xdjjd+q+pn8GhS
40StitaIwemelplZBXprGGEXNdfqUWSii4iBd77nPt4HmnCUTYvIXd088Km7gMDf6o0EgQhe+PNN
DJ5BKl0C6Y1DwigiypsJvm+46f6eguJjeTCRgwjS05UTOTV/NA5Ob3jAylLkfnrxY9VnertIvwSL
5WV5AyuWDIvvFd0gGXZY31b1jruuCIQlucpjpilDhkqzw3VTCkxatLO08L0ssW4/Vu+f5Pqp30UP
5j6uHiYmy+etejSBdhDx+sKX844ZbUI82kr7A4LsKTrsxJc1QSn/QGNIBk9Sk/8FtRUL6QD8BeDx
cEMNiSrIZBafMQEI4dzE2CrLM3OqDBgV66ErBe88LwNpJgS4+T5I3/NmwJlgAjQ4Zg0A0X3u4KbT
/wbfZ3CZeOo6JPxXLJgvVS0Kd+tk5gfKutjVMEXbAdDQjtN7nSwoJW83ZthmtwCcVQOA9q8t3VIG
bCMW0bO17xLUOyXeajVT3oZAajPFlijjVTytfwAu/KxLyPTyYTNGf8rZyhdoJ2Z03b0HaO97A2jp
1VtgbGnCprsF3m4+QKFruCTwhxhc8/NzFk20gBVVebmmZWaa3ce4spK915bsVK/LghjjpPvfng4j
Rx8pBS3AggPxGJOqVBq06t8ehCUTHf8mi7twTFpBbowxtQGHgroDy5KD5MMdGHezyKS9L0HdiKVH
f9Hk/4K4vcI+iFm4CCQ8duWEqW/a9Dfg/O13wNb8FV7XktJwjd8WhqO/DQwdRCfGnXPuLI0hTS+l
7CO08qNLm8uszKpur9UF9nFUs+oveTENWt2sYR//hn0bPbV4QNJmCf585PULBmmGgAs9P8mouPHs
AwtRODsU9GObid7tCXrNwLt0Q8GCWm4QN8EgOgTaAOnjRFtHh5mGrI5TDMGU4+S2fohUearBrPmJ
qEbpcsuz0SbaOYW9V4jrm2ayBFkW/UtgP9J2onei1cLaA/nLVzgZxDnevuawGVbV4k/4cbIDHyJx
DImLUiQwRuISJG6LxO2wuCMSuEfiDliNbLBArO7CCAuM0cAjGnlCI9FtNuZYZIIGoiuEbWghtqWF
ezQwRSPR1dmj9YNuwAfsxxm2qTP0MBWivx1iK86wYx/D9jOG7WcM237ZDg1M0Ui0KPdoIDrLAxqI
zTLCNrYI29gi9KSIbRgRtmFE2IYRYYerCNuCIqy2owMamKKRaG0fsN07DtFAtG3D0EB0lhEaiBVR
HKOB+CzRUkfP9nGCBqKLmaCLuUUDsR9P0JYvtuIJtpAJtkdusWPlFtt5ttguscU29C1Wjlv0EmKL
BmKVvcWOqlvsqLrF6nCH1eGOoYHYau8iNBCdZYwGorNM0EB0luhlKLoJ7dArVrTBttujgegssc1y
j22W+xANRC/VGRqIzhLb0vfYlrHfoYHoQu7RQHSWWH0fNmgg3qeA91Og19bxAY9EFzRB+3IStDMn
YWgkWkwJ3k+SpHgoXk5og0xA0W4itF0kkPiibvFFRXuAEnQzRZtwIdqGC9FGXIi2kAQS3U7QNpJA
4jPd45H4TPHCRy9pQ7SdJpCETI946AkPRfe9HX6cwFtXAoovK95Pi29VeBMrRNtYIdp0Eki8Axjf
VtCGVog2dsJ9jP88fi9hj99M2ON3E/b47YR9PN6Vf835272q29H5vaDg5aW9NormAEDg1pdZ/OmH
8nu9zm/I+QZZfrOcIMzmmxfvNjlM+LG83r598d6QOZnS1EncWWASNRPT0bmsuql2XfBXXoSfTlXN
P3X3XIk2Kf6ECyLLKmszBEPvg5+uKZyQ5TV/P/E7bHOfap62XCBqfg6/VUYfz+eeh98iE0ce19NX
uMAXbnLTl5qFJDQjoSMSOiahExJ660dLXAkBGCEFjJDIqahKaLMck7HUYafqc51ehrsO/DyIJYMP
MSrBj1eR7PkrF43vgcCf87ppR/E7Lqzo2TLXEA9F1PCaNoOa/HAVjnfkZ/FbSIMzGjyiwWMaPKHB
tzT4zg8vUrTihxMyTpRopHCrZ15e4IEeBAHeQCr66ckFVQesoYngsr7X/DWvHg2pPOq8E3a4HaEZ
Bi3vSsZnPsARuTf4ntnge2Zz56f8nPMMOZZM8SrMztO6+tkR3tVREwH8tYoEhgeNq67ehr+O/JKX
fUgckdyfLaDyhEXAs0ZZX6tyEFVW7JQstyGTW55lBSdQ6YLuy0ngyIsMwXjldT0U9lQ9xDgweVDv
A7lV8kH1i5xj62+U2wcLp0bxb1W4eW4fLJwelr6VIkbZfYvKLrL7YPGax1E9hvct6tpn1uWjivjR
3NbLrWsYcugjjn0Dmzb2DTzyoDNS7orBesSmlXhMHA/X1TmtL98kH+JQOsqILEPoEsKEQkznU1rX
2HTJV/MxxOqmnQj6Lze8W4GpZVI6vMOEJ634Dm3dN+VOrsUjUQyPeeL4uNXj0n+DxncXbR6fYqqH
xQJmsnfx26pNi49mgmhtI7o8NHHrzh+iaXVVEWTr8Qn17Tf8ttl9k9y0fMNvmZkvr9tUK/q+xhLO
wzQILVno3sWgjfl+8xB1tdIsK/kbUvwdp2mqU55KS5LCU8usnoNo9B1RKoJcTtHme4K/4VtIfhUM
RP3X6D0/NGcYC1YT09OJNw2UucibdnU2ZXVL++OGK/hyaZ0WeO2KTChVhxcEh0YkDEwky9LJw4/R
Uezee8RocCS6PcMJaKwklDOI1pNmHPmmiuqUa+jovqgNyJ4I1zUMJ4VxZPkcmTDoqBU2ky+EUasW
U24uUoR5MHrikMQUNPr3KJ2pWTvavdVVeelmUH/TEz0ILvlQDQFKl8GJ3RDHgrUAkiJxUJFbeu9d
9aPnBTG8y+hzeBZxWBpT0T14QpIvLlZnxF7EmDbTAIUozIpS+cIzTuXJvZs1HwTX/xqevyGPOc0q
lY9Z6quIzmrLoL2K0XT0dCKVD2OjsJCIJaB1YyCNtkBJYPk/qApOeaJwuLXrjHdRDgT/SDjj6Zke
fvUvLGdcIX9V5vx87oRKywD+WQozrq0wqhiP3Mj5bcFDCmhMQcplTME0SwHD7q5OsaQmOdAQZrok
wF77MIGfqnvOMyTtnBYNh8dk78/hNVkvSzRdvYnoH8Q6Dvwhv0bAwyUSSDhACbVQfqpJK2hINFyr
HBFwbXJEQLbIuf8MXzgTE1dKE5NYXOKIMKbRakevFaE2/QqH1o5GNFxlRgRcXUYEZFVEn8bGryzg
uGEANi5Tygd6NDr/UdgEFY/+RvVW8ho/ec4Z6O/Mwi7WcHDfIgQNLeDIEX0cTkNDk6yrMZFsJo3J
6+wkUw5Yg3LCJRlZcyZuRBmzan7WGi1lccmV7TNAtbdCuiyEZPifj7QYnmdGcZDRD2ZOdZYmld/7
OKGL1S++kLTV5ISEXElqTlun8qo3XGWGmC8KFqfPUfAWCUxaAI14uFqMCFWR0dv3OGqMhiaPPGPy
upHHlAN25JlwSSPPnInV5MBapZluC5ZgPnYUXAk7NE57HRppZ0nYJsQCGRYYYYExFphggVsscIcF
7n1AfbMtzV3b0wj+WtDuOFiIEnE05ypO9Wir8xHcqY2fLl+tg9ezYZgX09fkFU4XsbkXeQt/nKtH
TYD3D3Og0O21f+AIh3+r/GjpKKxuaf3yuJvQTKHV9s733SDwzy/mdjhB/6hHVHMDM0J/F4OAuc8w
3+5BaT5WwZz7B17S1KcvpxoYqHws47Jdb+N9hMt8XHNX9VfT1FndLIEcNYfu2sY5VPyv6EGfOv3+
BP/8QZhem9CJl7jfUziNgUCrNiQ5BCRDIyM0MkYjEycS7rqHbXdMnaZYRsBGBGxMwFLqtiVgdwTs
noA94LGedj7FEvQWEvQWuvUGV+Bj2s2AY0gc9rsxEpcgcZY2Iv/+/n4veNv8UBX6yUsH9h+///rL
9+XpWtU/qandJiELmpHQEQkdk9AJCb0loXck9J6EPlDQtr5mQZN0GZJ0GZJ0GXp1Kdssug1O0IyE
jkhoWrkTEnpLQu9I6D0JfaCg/W1wgvbqUlgAaL2PsIyAjQjYmIBNCNgtAbsjYH2a/ttnrHT/ljZ8
DZYhsH+vypaS9xhPzd+n7b9V2RNdlhGWEbCUMsQEbELAbgnYHQG7J2APeKx3XBljCXrzzmt/e7Rt
VaJbxARNyzsioWMSOiGhtyT0joT2tY/BMPUKewRleGiEh8Z4aIKHbvHQHR5KkOsBDfX2uhEUry1v
n/tRvrNT1eiB+Mf8FQ0FXyUa3Hnk0ECGBUZYYIwFJljgDgvcY4EHJNDbnnogVuAhVuAhVuAhVuAh
VuDhFgvEaibEaibEaoZhNcOwmmFYzTCsZhhWMwyrGYbVDPNpBjuiYE0DrFGANQewhgDWBMBO/thp
H2sSYs1BrCmINQOxjg2sS6PDIfURIvURIvURIvURIvXBkPpgSH0wpD4YUh8MqQ+G1AdD6gM7bjCk
PhhSHxFSHxFSHxFSHxFSHxFSHxFSHxFSHxFSHxFSHxFSHzFSHzFSHzFSHzFSHzFSHzFSHzFSHzFS
HzFSHzFSHwlSHwlSHwlSHwlSHwlSHwlSHwlSHwlSHwlSHwlSH1ukPrZIfWyR+tgi9bFF6mOL1McW
qY8tUh9bpD62SH3skPrYIfWxQ+pjh9THDqmPHVIfO6Q+dkh97JD62CH1sUfqY4/Uxx6pjz1SH3uk
PvZIfeyR+tgj9bFH6mOP1McBqY8DUh8HpD4OSH0ckPo4IPVxQOrjgNTHAamPA3o9iF0QYlfoIXaJ
HmLX6CF2kR5iV+khdpkeYtfpIXahHqJX6vilOlYz6MU6erWOXq6j1+voBTt6xY5esmPX7CF20R4y
tBcFqxnsuj3ELtxD7Mo9xC7dQ+zaPcQu3kPs6j3ELt9D7Po9jNAOLqxmsEv4ELuGD7GL+BC7ig+x
y/gQu44PsQv5ELuSD7FL+TBG+x6xmvGu5v+e8yL7gg+9muN9VaMEflCCPigBH3+v6hu+DAOWEbCU
MsQEbELAbgnYHQG7J2APeKzXbPh7nd7QEUkTMKOAIwo4poATCnhLAe8o4D0FfMCAKQPGDO9TzT/Q
8WoDEp9nhEb6FP0PnmbokgpsXl5WwhkNHtHgMQ2e0OC+Rv0P8QdWLD+TxoOfSQPCz6QR4WfSkPAz
aUz4mTQo/EwaFX4mDQs/k8aFCdo7tE/RXl3C41doxY/BjAKOKOCYAk4o4C0FvKOA9xTwgQD263sM
pmjQ6wn4ubw/0JPRBEzKOaKAYwo4oYC3FPCOAt5TwAcC2N82xmCKBkltI6RoMKRoMKRoMKRoMKRo
MKRoMKRokFE0yCga9HqTfm5+hgPs6P49hRNz97WQX37GlmNA+orwS3rkaAtoAiblHFHAvsb/C7/w
Em38TtGMhI5IaG+58/IFXeoRlhGwEQFLKW9CwG4J2B0BuydgfePLr+kdq4oR1KeJX3n5QGfL23QN
lhGwEQHraw2/VuguN4IyPDTCQ31l/e0XQgj+BMwoYF+Jfzv+wU/4ckzQjISmlSQmoRMSektC70jo
PQl9oKC9VuIUTdJlSNJlSNJlSNJlSNJlSNJlSNJlSNJlSNKl11787d7+V1090DPAHM/8+Bx/om+K
puUdkdAxCZ2Q0FsSekdC70noAwrdEI4BLhmMzIjIjJjMSMiMLZnh09y/0jq91On9im3+QLitAjMK
OKKAfaL/V412B/6/j6pdB/ZV78upzu9o62KKpuUdkdAxCZ2Q0FsS2tdWv/CCYJ9N0YyEjkjomIRO
SOgtCU2T4J6EPlDQXvtsiibpMiTpMiTpMiTpMiTpMiTpMiTpMiTpMiTp0muffWmfBXrMnIAZBexT
5O/pseA/pCRjTnF4UawmMCohohJiKiGhErZUwo5K2FMJByLBO+AsCFRNh1RNh1RNh1RNh1RNh1RN
h1RNh1RNh1RNM6qmGVXTjKppRtU0o2qaUTXNqJpmVE0zqqYZVdMRTtMVcfCuiGN3RRy6K+LIXREH
7oo4blfEYbsijtoVcdCuiGN2RRyyK9qITWo8pJZDajakNkNqMKTWQmoqpHZCaiSkFkJqHmvaRkjR
YEjRYEjRYEjRYEjRYEjRYEjRIKNokFE0yCgaZBQNMooGGUWDjKJBRtEgo2iQUTQYUTQYUTQYUTQY
UTQYUTQYUTQYUTQYUTQYUTQYUTQYozT4uXojTYUjPCPiIyI+JuITIn5LxO+I+D0Rf6DhQ6J+Q6J+
Q6J+Q6J+Q6J+Q6J+Q6J+Q6J+Q6J+Q6J+GVG/uGn0i9ohIvX5GYet4EQrOPEKTrKCs13B2a3g7Fdw
DnQOblyYcVa0g3BFOwhXtINwRTsIV7SDcEU7CFe0g3BFOwhXtAO2oh2sGUPYinbAVrQDtqIdsBXt
gK1oB2xFO2Ar2gFb0Q6iFe3Ab9Dz95ZyKf8cz4j4iIiPifiEiN8S8Tsifk/EH2h4/xwxwxP1GxL1
GxL1GxL1658P8hbvE/w3JXD139jA1VS+heLMT0MQuUR+SOyHJH6IqyOkQgHu+gCA+QCRD+CqyTFt
+Lny6OlYZU83QN5dj4EwPyTyQ2I/JPFDtn7Izg/Z+yGu0SeDi9adksuqkzP9mjZ/52n7qDkWxnCw
CAeLcbAEB3MppZIBss5aagjzQyI/JPZDEj9k54fs/ZCDF+KctDTEL7rQL7rQL7rQLzrnnNOCzeVU
tEIwLyLyImIvYutF7LyIvRdx8CGcClYIrzz8Ug+9dQm9dQm9dWHeujCv9pm3tsyrfebVPvNKjHnb
B/PKlHllyrwyjbwyjbwyjbwyjbwyjbwyjbwyjbwyjbwyjbwyjbwyjb0yjb0yjb0yjb0yjb0yjb0y
jb0yjb0yjb0yjb0yTbwyTbwyTbwy7e6QhkeH8/LyKeMFl3+wJGIsCJ2pzJlqzXkbbra7xJ63Tmee
dFv+8X673e5Ca+ouCbubWZeph3DLInvZ4gNjUXeP8iI12URs093GbEg9HKKNrdRJGCbbTWhNFbW2
5xzGcRgdrBJLwu0+6W5JXaaKMkdhaK1zl27Nne1Y3I0AhtTDJunGumVqtNlEu4M1dXvYbKyp8WbP
ujvLDalRtN/aW3CXbq1VvI+inbVW8SHZMasuk3i721pTd+yw3Vtz3se7KNrYy63TreXeHzbbvU3e
2w3bRpFNZsf09NLc0xMP0tcqz4J7zU8c7lgKGgimtrBOVVGk94YHb9e85YofJfudaM3BOX+3sOQf
Arjd7GNRHRwwTpBAoVg/cCdGgh0GuN9s9lGMASYizwgD3Cb7BJPjge2jDabWh+QQbxE5xptoLzoO
Big6QISoTHqqq6YJIBlmlOBUlS0v2+BYPcosrXPeWBszPgf24RwiTw7nlteBaL1l8NYEm01IgzMa
3FeYogha/t4Gean+e4a7MIO0aXg9PLNtZZdZcCp4Wj7ufqCQT+VBtcG9O+k3FqhfRlYiW0uM1hLj
tcRkLXG7lrhbS9yvJR5WEsPNWqK/5TRtWrdBVQe8zNzgIz9XtfhPUZ1eghwu9PKNNwYGIzDkEOPB
S6AehRBdZYFnRHxExMcY/I3XF06uxYLFVrGiVax19UpWsbarWLtVrP0q1mENy9erLaxVbSNc1TbC
VW0jXNU2wlVtI1zVNsJVbSNc1TbCVW2DrWobbFXbYKvaBlvVNtiqtsFQbQM7XfwJNwIERQrfqM7n
hreNh1UjhuQaMQDXiOG2RgyuNWIorREDZ40YJmvEoFgjhsAaMeDViOGtRgxmNWLoqsHmL9KmDfRK
hheFhyK3TwNYvF9qMLK0SVNWpa/ZPYO3qs4QragHeqoIpe07iAd6FabhCZZF3s9DhvnlUT0a1NqM
3+7tE9Ptznkt5Axby0He8psbfK3d6Uro3sJ1MIaDRTiYp2fmJSwcG2hdaiWq2oybJBshaEmuQv3S
LNR93CgVFflFbmSTkAyNjHzIEvXlEvXVEv/FGIVKUKgtCrVDofYo1AGD8g2mGoWSfYiSfYiSfYiS
fYiSfYiSfYiR/bHm6Uu3vBRjN6/h56wbQwk5tG+cl8N6WwyVeXsNmvTGnd7bcVZiqY3svWOwV0lN
C6MrJtse6cnzlr8LGS28fd4vlFXW+eJ+/O3Xf4p/fea36pV7PAyNvNJEeuW8n5hgGQEbYbC5mOj9
RZCuE2lTeoCPuq7EoMnvae6Z3YSg/R9WIIYBRRhQ7AUVJJOjrWSrrc5DN/EStI4Q819bp3mBnQCn
YI/IpO11rqubGCFkX86CLH/1cBrw3D/u/qKMkAyNjNBIpxJBAqNR7F5zYai88mYYCoVqi8rWOMWo
+ZYK2SwNP5fdPGO98CcKaAEJ4+g1b/Jj8dTfr6vKNm73pqbVQ6mWmGnbNdSsOj1u9olAwbP8fOY1
jICydTROsMj4t/O/PO1fQfMSeoyslFrKhjQ4c8LLSmjdiRicx7Lxp1km2kdDoVy3ehoEuXjK46LS
iBS0nPTKC4VyX12nCTNay0TyZHMYPBsU1jVUn8vyGl3BOXENjVy9a0hBi+ENB9fGm5gkykb8KHcy
++W9M4tHKdBi6BRThNyJd4JHG/aOogn7SBpOrlmtFHZJcwOzwzlWjuXRD/b/5G8w0FspTSPnv5Ev
wDHTCzhMP3bpOeeTe/0oYUpSJqISUkjA2tpqLa1MsDd/qG432HZVW7kWePOS38WkUqe31CHzsbzx
MIaDRThYjIHNN+cR2/pIvpOtfxZjQQM0W78ZzAVbdqohVY02MGyo550Hk+1+5dBlNLwFPe2q80ap
/DvwV8j2e2ZLjNluv53HgY2S9/Fmu7WzVeSc/dsdwJ7DITls5tFz4+StWPJvHB/QAOsHEtG+4zi0
Jyf7cBsFXoD9A2GyjTehAxDt9vvYWsUkDvf7g/37SbhJIjs7iQ8H5tBAB2A+QGQFbDe7zdb1CQ1g
PoDjE3uIdHR9QgGYD2D/xH4TiUI4PqEB9k8cDnG833gBtuRtuIkjl5g0wJq83RzinUMPGmBN3m2i
/c7RkjXAlqw9UmpgyuEdpYCr44dWhvJDDTtZimuyBwbSSUzPbSDG1nwZ1jSgBi92finzc35KxZQu
46JOddpcbbR+woB0X/F7cF4q95YfLmys0bAcuqAwD6mVkVi4NzYkHDEMmvwvLsO36kaZ3mKisIRg
Dkz1VxBtk3hvigI0IQ/JfodBQkhjuMUh95vkgELut5EpRnOJ3AtbJEZ9fZ+EIa7uh80uZpivj5vw
0sRawtWyHY1jHpzuhKI9vgS+PI+XAJqPD1UjqmHaMzaDIgwoxoASDGiLAe0woD0GdPCDUukZlHGd
KLlO8IyIR0hbjrwZriw9lhGwlDLEBGxCwG4JWF9rGHahxYpU7wfzFv7tnFo6dnXr5q7RVOAhiRkA
oSCFYihUhELFKFSCQm1RqB0KtUehDhhUuEGhULIPUbIPUbIPUbIPUbIPUbIPUbIPUbIPUbJnKNkz
lOwZSvYMJXuGkj1DyZ6hZM98sleWIGA8QGm4YgYiGQfSaK9a8I7iDM4472A0gjI8NMJDYzw0QUOV
9QZbiXICBbcbLBrw/H4XZumfdNBgmZJxYY3VNzRn2N2tHq2kaz9ntywh5AR/t5W0HeSabAWV1nwG
nmh/Noc/it/pyksFJ+8xz3Ipprry9SO1QhOl02uw6uQhGLe7LSiGQkUolK8fyEUvyehcMhiZEWEY
o92/c53eeMNbVDsayIj1iwRL736pdg0aH+Ga5oOR1yAEBrlX4O4oT4Ww7cTK2xBJMbCG3Wsb4vYo
2vxeqLCZRnf1uTt6gN8hou+vSiz8e3eAHdp1oW7UEB9oVXRA4ycN/c4uFCOakdARBd2FGgbhKpa1
ZDWfH3Mbp90Leei11Tv5/RbD005pH3UJoQP90SBZCtfgNeII5DXPMl6qg30Ixk3AC4gLx35Cdl0Z
CYQAq81Pe4QRjsTWkCIPSRLUXTg+n5w+uixnfbXjBnNwasVrx5qjtj2CeRGRB5Gq3Ue3A2aKtUQU
L+EoO0WDYZ7JODhSb5W2UhoSZQpurmlWvX1Ksz8ejfJyam9n14P0Xqx2rQYKb8zjWBXCQHvLT14g
jLaGbxk2FP0MEn5cGyMRHAKpGA06r4A0yfWg7KjRzNgTRnwlpoFUdhE4CylRlkFJZzGPqpdfzvKm
rfPjAz4vYx8NE/KUryKUnOLPqoco46nITy+BKN+Na++JLqX9E/ydn056/zsvM9iXd39JtcSqlvEM
smT2zCGaQM7WIMcaCgYEI7TOL9d2Rfl1KOBcWSr1Wlm+NjLtz0FV369p96lloJiJ4sOqUg+UshLD
wfu9qhc2RnPnRaFubCilISUG00fQPC5i6SgbqwWu+n4gxwv54+nKQXbns4Ugpmeh5Vr2Hhm86MGJ
//8iWqwHJa1+C0Zt2nzt/v3VneOoEuk9N2rcBG2e5Sm4Pdp0uVdlx6uJSJnESA4C1upu7YeqvbuG
p/Xpiq2pWl+Z4yaseD/szwd/IGANF8DyJNrmzQVWM5+WA4ySp2teZHiGGCnLC/fhhytRugh7w6pj
SbumTfe3aoo+wsjh44NCAQwLjiVQfRmmbvlUrqfRAuMBu6sQWS/WLCmCMEuGHcpPMYs2h7lrTicd
wu1+vzMlJZtwtw0XoRnTRGZOjLf75XVS00QLc5sc5i7jLmkfs9icJWP70Ja0OyTMmJTeYQWoAi/7
meM234AcsM9h9QdR6P0aUgbi2UnqA39UYjqT3UEtmFX0nqnzj6jtVVidl6s78FgRVHSv+tbCPDVB
mB8S+SGxH5L4IVsfRBhfFzAm7AIboQ0n+jUGrFkViyqW8mqwMSruJLpyf1ZYmONuuVrRjISOSOiY
hE5I6C0JvSOh9yT0gYI2DxtWNEmXIUmXoVGX1vWaTD3n70ENLVJFmIBxOTpNZWv2ckQ6w1z4KA0e
3gnolhfdYn+5JTog5fgWmlNrffYDTh+XS+tJoq76zKnyWcqV//ycrgYKm78Auz+Yu5+daFNiLm05
sXQoqjRT0hJT7QkLFXPsOxb7lpdGqApRUg0AjPlU/LP2IoWMYHCvH5ZMX9Miz2xeRwWSq/zz0+ok
fTdwbukL147buovIrfViRZXP9KVSpl553a2yDCdbFPL+aGCQfSt10RHA/HYXy7+8A3cOF8OK0U30
gEfCN0KFnVs/HfFdCiXWvrDu90axd2iw3GDFMQSTycnHNqO4CIxKiKiE2ExQaybpvcM55CdE7XDx
yl/D9ZE67V0cH5FZ+lonxOGQmg5Rn5xvAAtgFRlHkoPdyg9OuSiOnCiUKK+ctygOoUwmTHOrquY6
2FkhBmRsgfrA03YfJomM+7PmZgAyF/Cw2W0MMYcT0OGw3x+YG9Q7GJ0FG6EYChWhUDEKldhR/Spj
6Ky9K1MewLFSAX9qmp7X+7FMDD0TOCH8dq9qKLDcALHaMrLEGT8JrJyImjY12zN6ezKzVAKSR9l0
+3BiAQVGlXn33sd8lI2YZVpVW+Oeh85hNHHY2s0MwxAYY5t5lHJB4+jRlq4sKvO4K29k5zlVx2Bt
UbV+QoQkyBM2cqyjENR+np+h1EOpxYzByIwIy6DUfMQYV/2cNu2ntMxvsnmK8VoYK0JE/S/Koxmc
0vLEC7aCQ6JkvE1P164zsA9wadRHLR1pVZbSypuP/L1Iyi1X+xdpfZGOl4bEbvOb+Dm93YUxm72C
gFfSSTQYtcHVlBYF2KYU7gg7mLUN7MWLZe7op0D9EjRX0WyF1Zi5iTchPrmXg0Q3L8JavCjzVF26
pj/oJpo56sgpmK08W8P3cKrP8o8fqhqWTz8U+d1NEFNv0/mwJ8K00MAyH/3wRfyzG9ZQWEbARgRs
TMAmBOyWgN0RsHsC9oDHdi4nFJagt5Cgt5Cgt5Cgt5Cgt5Cgt5Cgt5Cgt5CgN0bQGyPojRH0Jg23
YRjwDY8yB+1YUteJi8VaLaPSOI3jAhvGJ+kceE2LB28wTO0gckH/4nU1TgfXAbznl58+baaj2ySF
WVMia0psTUmsKVtrys6asremHGwp07FjkmKVQWiVQWiVQWiVQWiVQWiVQWitaWitKbPWlNlqmmbS
h1zytBYNtyqfN7hpcuRkWjBUmOsM2231j9acC+JNReifheWUQRBr9Van9+BcVOnE3ptRrnzwRS/S
77w+gdtKgbroc1w9/nzk9UvgzF5BZh+5CDsnG+2341jzi5kWrNFaO6hbK6p+lCdlSdpB8jRWMFyY
AHJeSlh6qYr0KRbfn5THXegnb6oi7S4R6QK5YMFkrO84C+1wPFbv8nv36SkyC2l0/VV1/EM1orSg
ETuSbMIgRXjRFJFFb4be0ndbMxjjhyijYT/F/xUTC+aGIr0beUJ+eh751O12lS0OeSme92uDw+qw
3wyF9oGkaxubI6Y+o7aEzXZEeYUIzlNa4ClIJK0sPtRwRbEdM8z1cn/KB7cWUK8Mu9eKjLP/EsMQ
mAiBiRGYBIHZ+jGGuX6JQdQ9RNQ9RJQ5xJR5h8DsEZiDH8MQ8mEI+TCEfBhCPgwhH4aQD0PIhyHk
EyHkEyHkEyHkEyH6ToToOxFCzhFChhFChhFChjFChjFChjFChjFChjFChjFChgkGg2jPCUIXCUIX
CUIXW4QMt34ZhpsNAhMiMAyBwZTHr1O1TpGXyah1QOOljExCSFgSOosY9hNMc+g0nXnSI0967ElP
POlbT/rOk773pB/c6Ya5eJrukV/okV/okV/okV/okV/okV/okV/okV/okR/zyI955Mc88mMe+TGP
/JhHfswjP+aRH/PIj3nkF3nkF3nkF3nkF3nkF3nkF3nkF3nkF3nkF3nkF3nkF3vkF3vkF3vkF3vk
F3vkF3vkF3vkF3vkF3vkF3vkl3jkl3jkl3jkl3jkl3jkl3jkl3jkl3jkl3jkl3jkt/XIb+uR39Yt
v/TYdA7Dfn1f+BhVIQ/c3O9w0XAGpxMsi30jL+/jIou2v9yZRopWkKiUui3ohQNStIYUryBRKXLP
Z40oFBH9ReX0626OlEeYIaIZSeblBc57n2FXPtjK/4Nj9vdw9cHFNJ5oyeCTPFVlA28zlDyj8eUO
QhU0p7qCYAiklKWPWd7yc5THXAPpOG9WkuGw76n1kcc1VufqZehWIIPOYAAYAXQTMPt4J/k+4DZ0
5edXZ6Sru9wFPFZtW92cXHVSSeh8WrNRlm56dbsX/L3bbYAGR2ENlYXdm1mI0JKn3lqQL3foaPab
PF1l9TsiyE7OWb51MzRvGc3Es2UUjY/ZCKI81K6P/7KPkAlcGVvYdYvg+Lg4uboNjU9n2pB5pk9O
wvxlarceettCXBJsI3UB6vPdnpq7R5HOfa73E4rpRbZWkjqAMi7taL/O39cKfm71sl30MvWXkyC3
JYc+JfcenYTeCSDqFKAqNTCk+kSSE67Cnn4RFdERUL+L4UKNYiuI8nTkSQwdtxJL7lWe+/uRida6
O/pd7ynrMcmNHRqC3AheNYO6B3XVQPVbCP4GNtqhRvTDXiaU+XNCEtV+s+xTuzndoKsEt5KMoxkm
xenBK0cGUp36UMooHx2RiunyfS5itOrHZJRuRN/3jJKoz2s5d3fbyQG+lX3WO72DgbuYEbwMCMjP
T5NJZDzaruA7KerNtPxSVnJ6XkRCGxnwAbhiBcJtF+EC8GPTVjUmE12zYZJ/luktPzmpo9fPZnV1
07qHx1RsBEyBTvxbXsL9IrZp+ZSWr2nz6Y0fL8Wn//Djf/3ygzIQfnqdjnsTYFrX6VOYAmANLZqf
Hfma87fuZOSVw7ydNnDMddKHMXQ3XI1hj9NUeQbghbfSxoUI3htvr1XWRWL4ebIzn9X5msYNv/Gm
SeXzQDJC3A2G4a2GPtpwj/gbWikAri7jktOhF9xOp3ID6FHmrWyAbpzWnoqthqt9ztNbHw00ecmH
mDR1mJBeVRb5Lbd/65hmQ+z9vF9MkapAx1xeKOrFZWmbBuOGaMOrfwQsC+S/ZSDPo+YeuKsEGgIx
kKMjvQacWAzBlQdcXhihbA47toQRzy7I7nah/qqVJkiL+zUVS5e7PFnJy1NeiI7T5mmRp9585MF3
eRNWCa9Aqa45HeaMPAmtnjxz9/kOXlQN2HcwZNvHkzHYjrk/BzGqAeJx1P9i9qzhFBw/vog+odVW
w7uc9kF0QbABZQP0D34DzNWksjp9U625wY0ektCbOmiKGOi6ju8ojRjrKrjsD840OYZGaeMjsjs/
ypO6tk3dPqiOxYFFYC2rnANOak3gyFl0ZzlezIcmD4eX6hBg+bj5oRrTOEBQWjit48HApWJi+K4e
9Yl7kFI6DsxdWH6F7FS5AyW6i3PQERC4m6iqb7dUfPE9Pr86oBD9JvqflrUc/fKmmcaUOzlenILd
q7xs7eP5pWjky7TyHHtpl2RentSRns650i3hjvyavuZCC3ZmJsos4+JUcxJjTy7vAc/yk726S5q+
bUIMz7qXwIgFAwI6CyEXuDtKzEdVFYjqPsmFkJ8XA7CYpzLPTDnn2nHKOBcjjqv3dFdf/Pv3vweT
HW8jCswwWMykYlCx167RSrQByocw3LF6lmDdAfqxwwbWmaqn44RcvbmLqV/fL/VUE7VLVvJ2pNQ9
GokJO9MdX4gJ7qsr4DIax4JAPVqp214u7EIwDf5yVlO/c1nLCVYsNrKq9o3ValjT52kzuFcmPYkW
2tjtfM0QEjrljTy7OLpRdgm3z/ra/TZfjqzNqLMQLsdkm3w8kzSOJzvNa7NJksmG7ops1rLVv6QJ
8zGhTDP6kGBmWX1EOENWH8vhW8jm24jlm0hkLflVLJCrDwqjz+NDwhhy+YgwZC44cjeLgDUqPV2P
C6LTya/o+3jkOxrPu1v48tZR/wQN2El19Cq8wRJwuNPjCAGNd1e2PwOS/Sj/86PoaL87JrgO7sHA
6r1bHIC8fVCtk0YoiYspAl4JUNtTrrV7R1Z3pYnp+ZwXCDDsfrZeXHmvvBUcv7OsJ/1+BrevpMVM
nZYXR0nhQgphDwu7svEtlLo2rabXLoZA+/l9JJqXCN587uvmLBRM77AsFcpUXlPR9+5ebSrPj6pI
Z3DWo7sjbYzuJTI+bEe7fAdGkhusvDcen5SC8vcTv49ulLbhmrswq84TP7cBNesd/bvhmZvWy18a
6lxeie6nVurKXKsrpGk+wV2E0nneyPjnd2sac6RFjrTYkZY40raOtJ01bfgT2oO6eQSBVU9hY4DN
Kb1zVJ5dgxcG9gTdtPnp5dmfBBsFJcDvM/Xom9vESphn6jDo/LpsM7Tml7xpVXTG/M51L8MFk/8J
7g1/ZJUTN/pHoO7kTR/ttbvps8FzWwgRQcOljNBofXOf/tfs/n4EX8WvoOH0D3SX+sl/oVmwu2Gk
vKZiojoK8X/SQVbz6IkZ6AGxTPqWpSboE6wEOW03pnFmjFGxSqfnqeBOlHzpYXSTpAGWcbH4rHk2
iixQl/t1ECtT37YgqIsbGubAxcWLRtTowtEaSsVnTjIj3HR3hRkpSxnM341wEtQvimmFS2eJMBde
eeFRiRAzP0uDYWoCT0D+CjVw7Sj3fKu/e8jdliAs5DwLz5ghmu4msMAHFX91IQH+WvTSFUNIXvph
jxIGfD4oZKHFrLp9+l6M7Z+UG0dHzHT3eJq3inqOHshA7Xkqpwh1g+Fc9yMCdG19lzrE4PlA2qC0
YnWzg7sGgCAbqqqCLI0Ykkxl+eHLly/QsX7kpyJVlwd29S8qMBRFa4fbRGsxmNXtE8EG+HTwCEQv
vyGZ+kO5lEoD+84lTM+vHMknfVAdaFNuPkoVZedQRkPHkndKNzPuj7/9+lNnvH6SIQz9P13Iz9CU
UMj//lfaXlFIUc62kqughSN5gZXRmbAQO/El7GcYPKBHaJnLe8R/1Nf7B735FYhZgUqWboEHeMOz
6jTzCWAy+B2qh//uP37/9Zf+223eFv7v9eGy2ALmk3+K4UH8mS/amOD9+/Mvn7onVvpdBpH2qIug
30ec0/hrfuK/VqM6BXwWKLPAlVUg3wQ0jSMTYCUbQ1qoLEcd00j6rc77SqeZuvyal2LwkcaA4Uo/
M1VZ2PCl1NSiF3hvrcdgVRE1Jpbpa37BfaN/LUM9ROnF+yU8Q8MrPde6KiFeV5YR8Q3YwlnYTWbs
ekU+7jCd+HE6qssygnZ9TCvr+2759M8v7uFiSvtJz8OddWUcb80UKgFbMDEIQFOVj7Wru4lnAVVz
tBpq4FG1aciTBVdUTRdRPA/ZdTG6+8oJxJpDPbwwOUjCPr0XCQcSuG2UtKBrfnpI75wNz9O6ePZP
yejdNhu4ayfixzTvolvlszRvzeBSsrGVWmUMJld+IpccYYfyObrz2YRQj4LOb30ygX5QRp/c0S2y
H1wMpZDeBlGtuNF6Wl5R6+LKqMNupJMXuLqJUjg9wXC+YcL5Ia15K+2av4v54F8Q6fBp7inwEk7L
32BFL1+3lTsZ8lgIJcfu1MYQiF/1nj5KPp16zSLXw4oMJFT+Q7njIaf75YAxRqu3xR5w9xdYwy6k
WDbBkxx1OrlEYQwT9iusavps5aVmo/dULIThGQsLoJyeeBgDMtGOymZkJ4Nd/yj1ZntmYXVLLlEZ
8NenhQU3O1SkL78dXxG/oIix6/vRm21gb02WGUvbbMT8G4SZCYX9UMDU9xnCIsSvw78aTDty5mfH
jr5iAcGTkaCK4FpZFZar00HwepgbAit/uMSDmxa8M2ht1/8I0Xi+KOqo9W5twArYvW1XO1G3yW1w
y3S5ONfPk2b83fNN2WktiFFOZut+ANY3udNj9Dz0KDnuI5qy5dBT9lSnPims4Z1ACx5AxvsWJ9BS
vYLqGKngKFD+ruO5rbNwh27EsoErW/qou4owcXJlsJxaX+Pz0P2sEbghfGxMs6JhpvrPzPc7QUwG
KhiioN37BqkJS8XBVIVdviO0x+b9STbsz51bVVo8VSmsMePmHDD+i1fdXuinLhBeTnsuYLdOtDYN
I1gMtl0Q1vI8qYsFzv2Wm06w4lkukrwp6S1tT9d+2ZJnxt4/pmVwOgsmNl7LW/whVr0oqjc4mFbV
g82lr8JvVmVFI4mBLf82n1c5uTh5IyRbqnAFtYRJC2lg00gf+6YDrIKoXdmpMPKR9n1YR/otfc9v
D2HfXlxloijF5Z6Y4uCRLPmIp+kRCQNcGHu1dq88SsN6aQyXRRDmknydTr7gMdYYohrL1qmbCVLw
dr5PJXZm8zAtSd3cpq3ujSotJzFd2GFLu14uMMbImgu11vAanK/WA5JSkoHll43eap0OrzDv6v7U
DcG+8VN/CdkO/OWCdg0HTXD5dejZTfEWmAchH1FxYHyF0Y455RcyyQ184N+Xp2tV94tJ+S/55KDs
nI9yabl7WVi8sJ277xC+MrC8DDihcoXz58Oy17AmW/KaJe+KkZ6Jt1yOoXmGpTWKe0/b62ruSvkI
2176rkUHPi5XAMgsqrY6VcUarnqTfg3T6geRbDGy980PrkHPmyIv4RLx06NRTrp7W1v71t+EJDp6
P0mDePozbCbSo22rsneyaM/l0pG6xModAWj05t70Y54W1WVwzsC/4Mi5yaCx4s32jxVucCwr7Gsv
VjjO4Sh053jToa+dd8i4G2Mg/GT0yU2Ag0u5KFA46R5Wh/qMO/xm1r14zO5AtWNlMGNa2HdrJjQp
i0Jt2uv40+Pj8ldeFGm42U+uNVxwYYjMhwe4AjiEdpE7ZDdntcR4+HfZCYaP23rBguPCwHczuYM/
rDVuhnnOQnKhugNSarc+EFNJnhHwj/KlhJd4VVQG97cr236JAeRp+7AN7O8h6pIVcIUvrqxaYuWe
y8nT4hVqcPPPDnua8UWJy1fgvDlPfOdZXqs7h/SYqOOK+vdCqfwhvIbKlJ+U4VHLywPQGRA4xt0V
O0Gb0rART+YuqmbctCLwsUwMTkduze8NMeLH0T0+7DktYBcAhe1DB1Ho/iFGfYGL+hSZ1dYPNEmf
nui5+ncinVROzcGUEjB+2R0zV3sYdqaCywmHW1yFaMc6QHlZ8hp+GN4Nts56Awc2LL7P/kjh8i5J
litaV2GkQwoeVO1fPs443E0DJyuUE0+Hz8KxJJPHalVmH8hjeT0RLQcHEUx2X2METCcRZPs1UDzN
VzEgqEms3OF/72KNvjxXbKaNgog9WEQp9DAo1hHDroCTc+dFIbc7HSAZ1VgsgxgA83ehuj4z2MIy
HYIYwPWt7/KZkFIAZ9xri5gm6KaphNnbjq8z0xfXyTP6fT5Cu3kRftPcmCe33jTPuFxY6LsOXF6p
eRZ9KcC3mpd9KIuHBqnyGdg+BEqUXlTqIrfRPOQhLl7MyOecG2fyMUFaDipmTBhY7RvnQ0FNQ9Y/
eJr1JYWj+rZ2tgDKhbQK2JVLcgwRrIufS/glRCMZGhmhkTEamZiQ4pe+XT3uRX6CKEZ5+W6nZFt7
GlPlUMBNMVOAlGdK+9ltuIVMGN06HFUFBGZ5c7esryZZ6FO/RWszXg1o5d+vKzGzOhq7hQiGhXF6
N+LLi5hPTsOtv2LJhKW+NfXJvrwyUMpULP3F6lwtuKyLLQMTvkQvol6Yq56sTg7hieCN7q+3eDPs
OS+48qQEFNUEhLPYg29K9FjY4JPH0bRNZLQCpjShLa5PdessUJRsyglMIXcL5tC/uq5VWhxHE9r0
SzW3tI0l5ZpnGbe7hQwMf8dacryTsIkjWg/szcmoXjXwZiuYOIpcBhLEhmziY6KSAXhhb0cs2iWx
5meYWIdYle7ExPyEUUf4f/jzwnvf64v8lwH2S3rkxdCOIUSmgJ98UOViRkElyLHenuVb3z5B2KNp
Bv1FzMl9WeVZB6FDeXOXMXhjTumcyU5BjwnSBtDXUAxfgphMeM3xXZ4iaNfmgeGJr8jtRXW88Mq7
eym7b8uMS5gsux/ym2WLBJ33x7LDQWECZXho50u7G+6H9lHn1aPUCPEp/RV9yYTh9gYTqQvbHpXt
VD28TQkC1DjE6yhxIErXM7qzQVg8TpsjOKUw/bVpKhitQfL8MGVIdEGYajUFIQxoZueaxDPlDWG3
VL5AC6fYM71yUNfH6i4GZ0ULXn80M9nScHmNBhsD8lfRGvoVFW/T0f2lZjSvR3CIo7nfeVpLv4pY
ZN7T0zLqD8GEY1SiF4iWzF/FL8gcZLhkWj/NJ4wsJGmh4aC+NY6DApMXjXFL65fHncbR953AdTna
WrKZc45MVPyl3GKgVxQHlh6oxw2poe4B9dmNMQ6GGj2Vv126eefXTni5OOz4/RIfQ1+PLe/Rc+yN
/ib37np3cj+cy4Mu+iZgUMq7j9ptoOhdh8z7Lb1rmDaBzTFrxOMM4ClV1gVM1LZSsQi2hjalvaow
36v6j8uCnvKk5aiPl0l/kr2xGog2k/M36WsaHBXdqYMuTNzq5poStcuqN9uxBMuaa4qVt5srvPId
2liPdrz0rG6yEtLb3VYvohFZ9hemPEiv5C/9SNk1QjV9ZiuykGsx40lZDFs2S/MUhKAah04Pz8D4
F0zfvGmGlWMGA8EtL1MVPSRTg80m/AiZIcg9HB4hUt547QPBl77PwzZzWgmeydDLs06JXiZiTsPl
ody+a/OgUDxzy5wnz910XOcM8+VU5/d22Gx4lie9j6wvMRn/ZDHeTXl0993IJCSnKp0LFhNFhmB4
sfJ+H2KRFIdUJEVR+feToNk9aiIi6wJXA+mgVhXJY5knprS8+ffnX753+DOmcLm8ycuAUHu9JlpF
sq5ApmgtWqV6WItgGRk/VXIlrdZZet0mJjW5uja6iI35wNmR0ZHWkr/f1XkL/s5PD8veoDEnqUHj
PQlWSs3JX5FXeCGqpyKk9LYiPPgjqmRtjtI/Pgvs7EOguusEh9ACfxbSmyg9m/Je+rKyDqlTor5M
CPYh9RMvGfd/DoyXY/WuC2j17k5JKjSvMh4SW6K1kSUjl1A10RkHI7vR4YnxcqXa1YVASkbeTHQ/
HMJShdEHU5w8RQseXO1OQNZHy1b9h2fSJQ3BnEHIDjFbR++a2Co2lfQbUtMd3hqoYYEr+7u/e1O9
3TSy5fU6zVgAMDqmYTny1g65yCjhzhlzoxnTjC4kZc0gHVLE7DwuqUluitgVYa0f254lFmxzPlvB
GPezlWzA/g5Lrh+qYuikcpBUK7FHo54eLay7oZLeD7K8KLoXGF3bGlNSVXy5p6UXJm/s+CG9W4b7
CVjdf5Ke8iwKtok8I1sbzTE7a4tl6d5RT67KNCLhQhUfpv2bsCG4Ffa5ehsLG4NT5fuBG8OMJfiL
GtF9xRQjxviMh1olwzgCpz1mhH+KJQRc1gX//awW4j8Z1tMSpt9zbPRTbiaIsF1TMTKPD17LkNXu
uKWJc67Ti1rD6SAOE0hfKm123ypE89Ofj7T453JNJJP7CJFj8ahNgOEuA7UinL0lsMQZEn8R49Cn
ZMeSTbLXb8Y0J16mdV4FIRHPiPjIhpfxavCv0Q0RppOyPUEuhv+pb8luOAUNoTvyrsLapknJmV3s
KMvUqGnPfOXUwIRDFMcnHDrX+462KJye0l8dKbnqQUQ8HqYw6fjUN9bhWNrzubQ1XHjD8ZQlXHZR
cI723YbROV7G0H97VWHqLsYXYaocF2aZ7X67oBoSjBHw8lKiT2G02WyMKVG43cfGFDU7NA8xxz9K
fYvCcnmlsNIWPSRsZ0yFXVoxcv5N7yDJ65GaRXd2YZkZqwShTwWLoWtQqV6wwVqmXsy4WPajBKfY
cJIbHnBdGIO+zIzw7moKee9+wMtMvvNllu23umTIkZsRqWZTOeypKagXj2nRojiWCUglqsqqOC9n
axoD1SXwDpRqL4ZJy4CSrckFk1pUdwVN4yGN+0JjqtJoXy9NO+c1d4hLq992XcoUdJ/efLwEwOWs
rb0E7CNkAtcP/cGPHDW+hsNNS63sJj8YHsR2UeFpcsOuzBQO7zZAJ1JN3XLJjJ3iAjayxf1cfraO
zAp4E6bw+YmQoFgaws0E+r3t7vJpF2M4k5JOY24bl2Z1QEZRDLtMdjTtUqUFx3E3ksYqZ4I0dISc
5H1Drc1q6Shwg2QlCtKH6C8vMNLQ+Qynros/y6sZZZ2b14uN1DVly2y2gKnr5fpYCuOwL9e0XyA8
Sd5efeNwarozdOzY/h5ifXClfhRDrO9bDREgNYKt4qKqNzjSok3L8mUFD0OR63WGRt5zAX7Ho9FY
bAmGeDaUTC8nRVMsjbaX6SLdjP1njk+DOTuC611f1T6UtjuzQrcAU481ZDD6JjYXWCF3F1z+51oV
/PflIPt7zfl/0uKF16M/g5PoEXCd7rKFjPBwi6tecZ3zYrnRP4KqdHWHqx0F91Dk1UOO17+IdHmB
6mduuPTcQPqSH+E5+5735SW/21n9BZViQHPnPyAbkaOYAxo0eIb7j7zS5dPf0vrn8lzpjQd1fN8c
G6AJ8rKIKnv+1O/Cyqth5OT/S3dZtzVIbZTJ3+FbX3j7oYz+VTzkrGZOFdOFfOlq+WDEGNRWx+DY
VqktGa7lGE69mFHAD+7wclhrBqhLf8y39fSQqlFPs42ejRjuF9eXK6zjKuFauKJyFVxLbrkefgYz
3effQR5NW93G0mpcQPlY2XBx8KN+FauRZnlUR5O680UmV5mG9GEuoxIEnurzJmHBpaiOaWEprRxk
uePG8wH3q7x/K/vhy5fPD4h4swZT2SmT+K1pMEhDywRHljWXN5HAAGB2uGhsXyrz/ToadavkhSF6
18rg+dM43Txh62Vy77tVviV/66CquGaYvFRF7k6oZ7nuweMuilGZLkkeU+zhAh2qvl/TcrhO0HTh
l4beK/AAiWRprNr1/+eD188v+rjT90VBUFwt5vC6D/iTl+bZgNIw768fs5dGz84GX5IGwBWuOpuy
sl7ntwTrnVCLQ3rAt6MHVOCKZzgYC3eOZc4e3BSiRTwmG1yBvFRU6SlvZHz43TYBGOli4oTd9xYO
rS7PKtmZZmAv++6Ur3zUy46t1cChfUp9zIHlrlBNfOPHlxwWyvAYvMltYcX9W8Ym/5I+rXOT7naW
6cXNucMZCtEP9E16NjWM75jLXK20Aw6b7X0UAoo2HGCVm7+lbTYzELogTCzBjVOz5eh8mL/wM4oT
rDbsRr3p/VqTCG6wciWroA+Ok726agvcC+fuaTXYX3Jz9IykO7MK4pVPn/PMq7ueXNK5Bb+kp6eu
Z/cMjZvR3ZnVXePvsah6WvUiZihksXSUt/LLKJmY7jyakUrTdVkzzF1tBMmTrZX5znArA4HTB6ms
s+sYLFuIjICp2mu3LsHR/KjlWaEpCObubuqePfrsA9fpEw9XzuqM87tiEonGe+t8pJrL4JC1H3Wj
h5Emk0/7jDeasEzxX/mgt68bDG+VwJxiNezmaPVqJ7TD0teiDBx9Mz2R5oR3UV/4UUaHoEAYjnK4
uq0wCwteIff3Ks2yOJlNWCdE2DNwCwhyhlGX2yPr573ncAp/t8xzYviVUaqf0is8r1LVl4BfTOlH
Ick0F5IJ/rjLY3FpY87oKAaxvOxEGDzac7j144wIsfB+kXcALQOoTaA2NZYcno3qo3GtgO5fNoCM
ULiHLAldCL2kckFeqnwfPFyIR5mfpq6/JcQm1Q7w/oDgvKUfaAA2+vlMODN1syJ0djriZuyYNeP8
WYmRsvBgbMnywKkDI5UMTjS4ql+7IgBtxqoYond1eUyn/XcjVEfjgJ3+WomBPgv+SO9iZdxw+wfU
g9tCuqqBGiGP08vivtAh9V0Yb/D8nF4VdRU3FfFcVHXK3+/y8EVtbF3KdOqqLX42gcSiTpg3OXgP
LhELzicG28JGZH65BsdcjOFwUtbYKTr/wr9//3uwn2xhmCEugHrs9/hsuTTB5ZrjcZtvQi5o7zdj
W+u11/0S3PJ3E1BVDhbj8i8T5JbmRVuJNvcmbCHomOaKyLPMjrYr0+EgQzV5sGGRbh8JO8T8Rc4F
QDYgYzO65c1NOdZgI9k2oAqUNPeleGFk7d53tYH1rfpyH2YS7tajhkggP6KtCl7P7KUBVvUDDQS0
w/ZQfgpGByDMpP4ATQAXbJkxbXBt23vA/3zkr65pSwdGw6nNJgg3XgjzQyI/JPZDEj9k64fs/JC9
H3LYIESHwCDkG/oFbEzXh77lOG4xDO76aLTLeNC+TdGX5FtIxg2eORj6FfOkR5702J1uSv3zUcEr
iK4xxN9RREWdOUC69E5k+SU3diC4sxku8VcwCL1Pm1OeG6FiuA23Yh6C69WzPC0dIAhzKbgHJya9
ITObZbQElhVA323Iyac9uU6xtozfbxCpIpaNwxQ2u9xlBC0Cr90IIDl3DabeAvNMr/J2FLP99oQb
SpuWOdLGSfIY2vh2vUbfNTA6pmbxLJq46qUOMku5F6k0dUqEzJrjGw8BHs7orr2mfkwFPLzw5wqm
8n9QeWCWnYveUYonyvim0cvwZH51Vxfa0Zn96WgiUSy++ekK0VjVpdSlVm/tfCgLainE/67RFGxo
v5BZb/x4KfrXhVawX3I4S5Xf0lWV1RnQ2oncdco+wcXJ6uTSTYyYmaHftdXjdNWPqKulhvxFn5YV
Y/Itn0Y1o3huPAQoyust/AQdOT2C2pDDk9ZjijqNMduuQPJIDBuYC+HMatB4sJkGL6JAJuCx0C91
9YAVd5vWcCepjSLHGxla2X3iIuYmCCaZOzsnNO2d6wLbbtUDbicQPalRfw9uTeuXG1hUVaV+ts2p
xza9B7DELuCGVPkYZW2FyjroR17mN3sakN2JwVrHyDZ3WHbK53DcxFNV1VnjfjnaQOuP8c6ukTNA
9f0PbpUrqL5ZU6z3/mhGrXXmTbYSPZgWAm9lZKez1yi0am++QWKMtWF0Q/zUjbKifz1gHQuX9CqF
UZntWxWchZZhpTN52dfIRnWEOTg7FiS8u8106HuaDf1SdhgfY9qXdXfN8tdVPHcTdFLv0ycn8cTm
+kS2DzNdtOu36X7cOS+4mDqr+oWLKVRfRqL+GbwK+/BYVMfZBuWUorHw8PWzR8P5menWupEEB4IU
R16egYej0ZBCyFzCTeinGDdu3YUwd32qsDGj9D50/0Mw2VwdAVWwUlULC7xsxf8KoT3q3IxVFZFB
Jt3TnrNhZw5G5im3lAeCAwl+NziMqosxv4ljDpfpomEcq1qdasnLBxqf8Xt7RYL9sMWca8FdTrJ5
+YHCnCzVvdfvYj7J7ATdAvo3Zwwbd2YGeCm7yCjrU3hmat09Je1FwgOUNZyK+GsWwWOB1znsX18m
Xu4xtAAP1j2dP4kzgqgLqXXMFDS46V7jCOl5I3eEFIs7YcQ/rYkw8zratkZ0rdsJWkR2TCFg4FkT
5QDTd3kHzJMLBA7K2zrm+0pW4PxSditwua04gmLK3+Q3ed0OPJwwv156CetfOpddS0XxoAgeELxH
BPdkd80GVIcruJkLuBU0d4uyU10tQLPEn3exsp/WpqpvzafpBX3db8zwW2T4LTb8lhh+2xp+2y1+
27PJfoL6MQxjtvw0S8Jk+Wu8Zft4c1j8vrhE8qu8pd1QdRuSoZERGhmjkQkauUUjdwhkd9EPI2Aj
AnYB/d/6assv0vlmaptzBPMglD/2p9mNOSbkPYXQxvJXvWEJk93jDge6veWcMT1oeT70N+3axGD/
DZd1Y8D6YNny7QETWgwPd2SJ26r6pZJHX++T4GYX1nBtixH+vPNe4ny2EeAlzNYZBri8duVXbU35
29MMzmjwiAaPafCEBt/S4HsafDnGahsN9gfk/YJFYTp8MccakuR7XirMrn/Cwp5TlkmkjgGs5uEb
A0ojxnclw6EG6ayf7SQtSPpKM3lcPD+NvM1GUn89mq00Dzj5I19Q4MZEderHdL/VHKP+V9pE1cyA
nyH1GzpN0133Or+1ZE5YvKEyB8hlrbFPLTEMgYkQmBiBSRCYLQKzQ2D2DkxvrdoVqbz2ylHaWFKl
4myJqqnZUrsxuFm+uKlhRVq+WD8Pt0vKANz+iMISI7mBfDbclnhKS1ibHXmgriu34uQFmj/+9qsN
0AWazeMAJiDYFq4X3sYJpL9f0BByMwHKayPFv0fnZOxQOPonT8gJxT8aa/mGyCUbAkKAG2sixCvB
RdfOGjbaHoDtPG4HyXFgtg8whTyOt9wqHnWD3+JtgSkGPMdyh212QfYE9XaFi1tl3RaQk2jBbVC3
y5le72OPR/RgtIU0c31oCj+9dBObceyaI5gXEXkRsQexcEabQN2eh3oEo5nFxY4Y0G+Hd0f697mf
hufdZizVAyeXsdvBXW+cXyk/gxnux9KI0cNz8vilWHG3T1t23fPXRX4PKpvtPEZZEzv3RSA914v3
AjX4UTfykuSgfyG3iz7vLhGxcboOvkjPhBjgQoNpgzW3U3WVtlL13+uqexDUgJPXH8le1h16zpsc
yntc9urJi2CqORjeEphh5U5kBjd0my2eHtiIFic33EyLhBFKXiqjW+X8prkefC/Sp3x2DAbhrg2B
TXKs0nrZhPtur66Ant9eZQIZkm/6jG139syim+oB8j3PToPpxFrGqum3140LIAmB/d7qbAd18QXm
7tA1HtGpZ6He0/T5yyWT1CYY3WZYqaludC245f48nYW8mWy6rTRO6eolloMXiEjo1L+EW0LN+lR5
qtNuQY2m+8ZqSJ37h4F1H5bzWtOYaiaf5YW4NrNN0ycX/AJb791ltA841gTno4MecTRLv09XD5aW
FaxBWhmVIA/giPTMRRIcMfilS2HJX7ut+I5gRuV6gS5R8hK72bFljYUmzsw/dz1YNBzRK+cbyROg
Hnjbar6POUYN92WZB5A5ytpzNFDdRaQOTFowetZRY4003cxAw6/QU8z2oErLMnVv5fyk8xhTdpcg
yHvNVHZCF+qm2sV1sWPm4i3t5U1zY3jfpe1PXZvg5uTRkfF+HLE0dAvcC1SHeb2wOs3yariG1YZX
jc893Uqo3KrsxyOGAXVX6iqPgFwlPUoE0QLJaxme7NFAV5ULr268NRgiEiW3qORd82ndMgQmQmDs
EOiOoh/lltpfc7hm19Eb9Lu7yi9km9YUsgyEzOUb7Nny9ZwJEExL9eSBcUdwgMqrRh51IfVjGn4B
NEwaXXza4nbKAa1umh71Pb3SkedkUAT9grEVL1obs6ZE1hRjQln1hoC78em4JHy1FgRHtfRrzQrB
S7PBoEH6+YtFsmpHlqkX9sLyU+6c//NSKBeaSlrAEqs/i2wAjt+s0g8tz57lNSANqXIh0r1XIq/i
uMxiBDRQboWDWaK6iwthSxvWhccX89J/AewWeniCzdhbIPVQBiuc+WUrFoZ5Ql7ALMu6Be6Wvi+e
FrFA4Vo6UdYf9VkGL96092xGmt6YsUDl4i4v8haR7fxBhQkMvJR5YVfSMRWlyktbG3O6qrrn2vVD
leYljAKp9astsVszutqdXo3p13d68/CS3uGlFgupm0LFsJRCFKrRKFBQZSJrN5YK4sms0LqBhYG8
IQUWcAicBXKFuHR4eds2ko0eq7c46TqIHvL0/T4yotSG7Vx68PADBBS5NFdAaLA++9Xoy7dsTaHv
ZaI4vHs82irGKVp0O4coB6xrt3aGtaXnpYDYEpfP9oyTtZVxGuxAafDoH+xzqmZXgXqR2arpu/gB
XuqaPPg6BcgtaFsquDOuVQHhzfo1XWhWBiPXiUegZUeBCc86mI/Rw3AWhDQ4o8EjC3zYoxED4iKK
2IjMcmGrZT6U2QM1A7kmM+1NU8fv1cF/435ph5ZetW4XxY3S517kdQ79Hc/WoX4YU6/zl8mmsFb2
bO39DJzCFGD1UKdv6pNbAlYRtXADT6OnAAfocZf/ASemBWVemeg0+ZCVdo03pl2wBa56tD7geN5y
4aSDywXwDWsSpDewndOtBKqBBpWnjhEv+Fk2vNkllUs43Eclu4W+p9xd7zcx4sjLmx0g6WHsPHDm
QJbBLtcOq8gPUS7nfhfc7HF2sqTP3E9xIZRu89JpxskurC6xtyB0N0vhPOBfqaOnueZ6mZY26mVq
xEyrPJvKBh+dTu8POnWTnTyXC+8+OFYz6LzAufUN86PRXWhXmo0oX5DUX3HNEhJn+4r2Kr7yYPDk
g/MQbmyCDvsM+lV/+5afODoLZTX3OWF5lm1OG1q+EnV8aleuNQTBQp+6NbAsOkMvC419wUjQIUXS
bwl3HizuPPWwdfhvt8GKJXb7bualTqNecjR63brEkWm1wBTg5oFod4OHrUj/ml8Bqe5uhVHQ4DDU
OyuOGLEOIY+V3MSnQY5Vnf9VSbeN5ZVpOxcucYUnH+lMuYWgt1zUUm1cEFc24z1OG6a5yTe8xh8k
fkus4OUmfHeQPi8XE6eBpF6WPeZZbnEmdRB1I7stzmRAGbbju0SxTNJvlpoNxg5njSPoH8LVV91J
aXWvyS6v4TeRIJ5m7PebXeozo6jipo6yDiYz82OsCDADUrgSJTg967wQBhMCal53LHEXsax+QeA8
WlHToUUzcGBUHRM3NYA+tW8BKtzBAZzGENgDLHtGmdZ19WaZIAdUZQ8pGYN6U6Mq+6AIO0Gb3EYT
tgehglF69NCu5s89L4Dy7aZKr95NvXzAOsLABpD0MfVGkr3x9gxPy5hudiwBefkfyOBf6sYkQ3p3
X1h+0wE1Nb+I79ZmG7c/T2cpdffu93yjB26J1iI32/Q9c9YmGxURCEcfDJzJG2c1F1PPsm+X/CKf
lvtFtIx/mBsG3B8/CvAFMz8zmQSo7R1h3fO6izc1WwJi7l+eDVMpXYSO/s/sYu0ZSAVtWPyWPapz
EoifYZ1jAE5euzYNyD3EGi0wQUhf7xKiOnJXKnXFhvUES4ee3HjuxubyzWx51YSasNLCDjXFS+lE
ea4nEPq9yf01m/OkD2YXUl0edB1DFhcDTlPFl+7dEUDPxxRWhnmaozwnj4abpgsNUOtZiJ1QtVVa
yWCd8EeDJLlhfvk9WuXFk1FC/XLqnOam7RR9J9woZkOPVmY9w2FY6fpQ/qHZtoYdvvDBNvz0qE37
RMrD4w5R014gGNvkxKS9uqa4HO14Hu3wmqJqTSiGQi39NeOqykMizkDUMVotKaXNPhh+p6ouDaPL
mOfcBx4D83IUgGmNdxkzSt3ozUPPxA+v91pmD6ctgc14v92L9EtN9t07d5dOvbky3MrJLQGrMkZE
+bZg1Ah9AEMjgY5Xv/K/i3/9+IB4zc+8ybNHWnwxikaFCfXxyHqx4olylqThpWO5z2ac06bAtytc
GTcNSO9espP3JoiW1ArLe5mNPrqnw2Aae3NTRqgeKI2L+ZqrU+fI7LrjxM7+a4QxA0w2PvvmcpOq
l++kKdI/722uh94BSY8NNCztPVreKjQBT0CBZXYzYuV0aAglMoKVzdxc57fmmyi4MaHj6G0Gp7NF
Y3Xst5hUCz4rn8zGJH7N7BZS1hiFATgEYqMUoMNzsNg+V7t7sNsIG2/syYlaT/02gunEiE6S6rMS
+9MqdkjvMJLuEeNAp5FwrZU1HxVboFZ9piahHA3SD2Zyg/WeCJOLRidC2PNFvbNq9DT1MEu4R5cu
DzYNmdlw8vp3WNE/hRVfV6Vtz2F6CqD3iUwfP3BBIZi4go09WRyYoYhED1xlLsAdL++WazaHrYeP
LeecaIXL13v1FoFyvzrFN4bLybpfucKQbqOpMzn6RRsx855t2xY9vjth0schOaDD2KIGVDF9VMWr
naG2TK2eQA1TJxCMIcETRLfm8qLk3rd5Ba6h/hOFGqg86Y059KfH5K18hsN2kKjDwRU7o/5tXDZp
rLROoBmqOwbNW0pzrGwm7op3rVu5ILRKXQNNR+hbX1kpsmUm1SRMrJEG39L3wLJ53SG6b/cB7KpD
SNHI0zny350jp5AnxEWTc3Ywb6Y2ogwd+nn6xPQUUJm9MV3Mx12/Mq6nCas1pdDq3JE8xNZY3Akd
tNs06O6vK6+8zlueIQk2mBrh4CiIKK1Vje4D/T1IHdTyoRo+UlC/mm6CeOrO8eVhS9Q3mPsGJqsf
qE9vldfQBdDhbr7BawTVo3073n5cQTNHgPl5yyuwMEQ/3opwdFLz4rnzAMqTZnLXox8Cy8rfNEa8
Unrh2tyKFesAsVAVg+qx5m82kHKdn6uyDdwNqtuuVHdVqTf62ked2roerAjlBKS8Vj6U2TUwbEL0
n3VgTM/3zTFiOVi38nUQx3qkA78Jq/JiXIorjFTdDQK1jM2g/UHeB9SfqrYfDFli5Xu43GzSzLBL
hLpIARb/Ip+7fGl6CSrk452myKjJif7gWFcvvFzczGuCKisGg7SE901Bd3hJ0HSSfwqTL6vLnwrT
wcApuK3Uiwyja1Ew39A0iA4eLj2yfQscDzDx9e4Y2yVJTfs4n2E5enNZiNJcdW7h6x2z7o4CYQCY
l4kKNj151zhh3WH56Vkx9TMY3CAdSHc4AbHZiZpJT3iX7YqMbJQyL/Q6Xq2CbUOSQgtdy7tKhlkc
nvhtHHC4VNYndRW9kTamQl4u8rKSbu9ARhV0O1I++CK9TY/KD2TyoIvEY97drrW8JbgH9RYlXELE
DQawOmvVv63tOOSkvIf6aGQOt2qWcF+MZW03QfcOgUddG0wZA7YP5jKDlfr7iGAHUp/dMN5CoPc8
uoBHRy6u/W4AfC8mIceeax8+Y3a7DMnwSuRko7fRzzh3h69JXAd4dOLHFGswAGUshPHF6RlydjuJ
VZYKXE8ejJ2lTjZnhOWWqnOz/M3obepp17TOZEwEVMkS1NKDuwWzuinGumwe4d3tSIL6j+sHv1xI
zOq0h9tjq3uIVzxglqpFmS3wegTNhpsB9R6E84qcUXwYbAJ6y4LeKDMynLtaRkZ3W4Ej/tTIc2+L
WSmWAd0Ed55m8TEYjgFN8m5ylfRo0cnlhVWOJqjbztUzwg17pGikD6JeAZR7yrK3IvBGW3+A9VOM
3hf0DG2jl0fHM7tHy4IlF+bGY8tjlA63N0e2LIHeoPOBos1Jd5eFP3yDS1uneYEahOXC1hIE0YPM
sXVDMgyh7m6nDID529jz9OFiHevx4gGsL+l7tF5MbetLCqRfDxGz69ViLihcIX7Upv5b2shzGcZT
iwOjrOQUcxRCenHA+mgoudtna9oa+2itCtWIzkN31Bdt2WIulxQHRF7souNQZOS9ybkM8O60ozwC
q866q1Awu20sfSuyi2p9PeTGaw3P9pqbnqrR/DYjWzxCh4aJsd+yl1EFQf/Ek4waCddTl0P7KC6/
f/jevmFiQJt7iwGYl3LClKcBZu/AWjky2M1yusAMt+1VmdFdjCgSLkMs0FiTu8yMtUY/GeCug1YD
/FeFNiDUk8ywMDoXudzj0VEizi3FibcwGFZLC+BbXhTWgyvvjVh5PESLBLdAxZvO8gvUbZTtcrqS
YSPNJ/WyGgTXDZtMKqJkPg3NCZf8rPdQzudm+m6Whh7TLLhPht4uYe5n7n5/yPU1BM3JWshhRM2b
S/Dp9nwJ/rhzvZMjF3tgmM4u5tfoDIKwq2cfLzO8FmnAVr34lIcEntqA6so1t6Gict66Z2eIwpmf
S9MQfjvybKgUGNDpBYaWLBddpZE7FWKMVe8dmHwxXT7vYm7Xdcj1HSGmy540HEqtNo7VxZD1/KBj
h6vTp3rcDC/SEUdoGUXJRecINhLUWFLlY+y5qdXoZtk0UX/H2+wlhQlQOUVdCHnL0N2eqt4Cd+Uw
enMUevvSFTVB38BMklaG0EZeZPXEE7uA9m6wxcPbVqgrO4hSsaRD8mnqIpsnd09iS4NPX0/qgA+G
lzq+qM2WxXTu4sFjcfM1owePQjpAi01NDUD3iSFIwz2KFmDbwFzdN2WZ8GM3GPygQ55tdGh3cCpC
lkm7/+vTEij3V3VoYwWrAcdYoQcwYwDQFNJCFLQbqF/B1sEolkHxnr9DeLd8V1Rf6jTMQuOXO9WR
DRhqDJmALSZHRXB9WQSGHaAE7qso+1eR1de0uF/Tr/bxSL59Aw4Uua0FG+6P89k0U9WXoxpV9ePM
stqNA6fc/Fl15PLyM3kaabJhNiIMNYP50FM9vYktn1QEk5zS5mSjhgD46a5Wlyo9rvo8p7aQZZIv
Vx9PAc41538ZPtu7ontf18QSt6KWGNHc7t10alX583Q81Xhxq8BA2VFnW5V/NJ++r2H+zBv532nS
//ry2z8DeajA8Lu6v1YYqV1kRD0F/aZMCHV9nTEp42cxFv9L+fCmb20NoFnchkj4vfqnvBxg+qt+
y0HeiaOY3XawWDGcOWzhWAlw8qqapcoHGU6wIn0uU2AVWsPtRvnrPFf51KAwwsUAPCv38IgSGKTz
cBgJAE2MT/PIZ+RP09NGPZDLU1Rw8q4xbn0PQEMlZIJoLe1CjipF3u+6uMJjSK+EWidXYPRJ16rg
xmKojX55o03eva5iB07b/TStOhuTWhkXJ8fuN2FdGvP+o5KvxV6CMExYbEKAe+Vn+Mpvxq9MLbX+
Z9mEpBq6EJOLvpvr/cQn55qmFOl0uFu6gMLVPHucuD3l88xfOkqWESzSFLA2t6a6cfPvECchCz/1
BE0R+iTfD9UNYm+sMDFslu3c49BD2kpfhg2bUaAhJ0jdXjicOzWClTuRn+At5mX5m2a6nwa/vRaL
IVn8fBRL2Xujr0lJL4vEt7xRp73EMCKsBTmiZTNUJS8Sle/IdVfunqq6lmFscs06x4seJKbnbrwA
b3OWn5bVOFbvvDu8BUPS9FJDAIDDL/j+y8/Tn08qKoHD8vZymqfBuXY5iBmk0b/62I+tKm5T+hQW
y9g/5LMJEBsw+7GQISmdw1MZTaK2hpEOjvtduLxJBK6iLGHu1K/LgQFY8/e7mfDHLBZklFRUoNGi
usioetizsgDvnN9hNBNYgbSAuvKIzjuslC5FdRR5y0h2P28OgK6UNzCR3bvx/SJn0RqBNNV7CZsj
yqaS8bGlntaXd0Jr2HAuW++ECnuiNsDSsl28mD1OM9xOPE4+V4UlFWbGTr6LVxnHoKo2B7lMMYsE
+RJsoHpOr095lHOZCRzNCErRVSFkpKrmbVc9tSvjI/qx3gSZ1CbQd7TqH1/TeRFl7NfYSpiX6wlR
XSabRqdAZH1bfWnrhYClj/nHL7/DiBOEh93GkHzML4FVfj1CDGo3IcurIdlNztJnA15u+LppP6DD
dSfWXV+SlitcFKesrtmt/z1Kn/ELbnDvRSNsvnJuOmgczPAy+l6eXH+tToapRUJh2oVlbmpKfLQn
GVA0C6GHZH6E2J65WAQyVVcNwDQyvzteIjgc5oY3QdS55kU91emtftCGifPG2+WXJEwZLo0+OdAY
MZiRTkObZ9mm78ak9gqj7GNe2vMFLrWX/snSYOnL9N6WFiNQ2l1a6MfB+Q91vqhqwDbLWxJHtEf1
6IcplBNPJ5C8UBdADS/yyPziaeQF+JaDNeHNEyO3SeC/C/goxQSuwoDtGpRGubKpM55mS8gRDMur
2uubPurYAZ5SZdLoNrU2afT0vQPuw32DC/7u1cKi6tH6VhEv9gxLbrgXV6yT78JOgrEbLimXJgUY
jQ1MD6p9NN3vhnzAax60bxC9AmOnMJ8MglUzPUQ5lsN8AsuS8b/FvFiJjlcHb9D7jhWcpa5F0ywn
sG+SOTLf0Zzf3VcspSMdW2pDVglILDUu3JfDYNi1umX4GHDBi8XE1mA50bfXXL6EJSygMltMSgC0
z+bg8dQtWS5TC2U4i9k9h/iC5mOZrWQrp+3ylDA5j6VTCcs3sGDKPqcQeXGCAx3lyQRSRpBeYrfX
Wl43VizXXhawB7RMhoFH3pAJA7MYvxwI6KRL508PsS5Ke0TXKGTIgnGk1Us+OO0lhlm1r6oGme7B
UI1wNWsNea2kZfDXX0uEZfUPSdI/FDGLDmXqNramPprrMAgaAFUN9/W/g9cdhpGmM+TKTEZbQvhl
14HBdQJmESzqljnBR1T4CUQxHI2mxAijm8ip4UaYo/nY2o1u7yPXn7Avb3x5jbAHLyaXiCHgWFw3
i0vXhZh420eNKY1nYl/glQdKRRUtVz92CgKnHptHAOWZSHl6CG7BrqUzRo4U0jBCZiB5MO+LBqli
JBt9MGZ9BhQmun31jEeJqmbXkawAntYFuBJFC7HXtbedskr5qx1lvaXl07xeGDDD/LLYy5oCHyXc
jaemZm2SSVMJQ7Bg1KN8F1BWdTJh2r1lYBNJ4daeFjEwl/qD5cFLCQ8d2lY4kqBk0EfSmZwyU6wx
jV/0LZW35RUJA0qfy7Db9wOGInUDZwm7yRCId1NCZ5oN0+Lx0SrLMjCa3HppahBF7zMYbSUsUdXx
Na/UU3LajXVODSgQk6gc7HfkMlpITzByq1Cb6DapKBPZZpz2bsf/o+b8R76C+0AlXY5m00I5U/R2
q+6a9pan0E37OI4WWzKu04B9yOk8z1QHlu6YtqpTed1F8bxV9f2anyg8F3bYw7GoeoCK1czKAi2Z
VjRYMU1nqfByZNwYKcenNI2EuW01j/Q9GZ0dPyqydBdr8zKtn16qfnHy5OSo45Yjv4AKHZbB2P2G
iNxvsbYW7cFWl53yP5eAFi4Srs7n0bQJi8VhQ3hJeTiGfZl2KtLbnWd6wJ5cfDBSjcW7ssjBDLFO
Lo9+dtHX5ssbjqRRNywnEDR5kla2G7Nk5wQbYjZt2W2MB2WWe7imuTfw1/8xGrWbvOBykJhvKQ2t
b9x709N16Q6XVqMe5vXurr5wc2FRVfpuLNFu4RWV/opHC6zhtxyCNkpL+nD5rQXXqsNWcKDUuk57
wHNM2hGe3kz7eXPI5WRCqZcKg39//tngW4aYo7zfNjJ58fifj3T2ihj8KvsDxFflc+e9TFK3O5lK
86rWf7CRCpOtdC8HvK7n+wkS+MKf8qzA6xAjYUDpC/8XLUAmKveCyQKWyRBwDT76WVKnk6Db8DNV
pQeJJS8Mp6a5dAAp09jQ86YQgZA39MrT1JENOUT+qoN6MC5WQVEsbKqBom49Fr00789F2KCNULpo
NtAkjnlZ3RuGRvqBNoRUVKkPSUCjQwFBh3onWm9MY2jTDXD57IBt/jBnUPI3K6x+KtuqeOrHC0yt
u4ePtuDrfk/9tXMxdgGzMiNLFk1XsrwMui3+hR74Sd+lCKGACy105e1a+zJA74/Re9DKgOveuAvq
5pqfZ80OeoQoTvpaQexzN041RpAKaDAmQblNg6NO1hfTGtOgYxuk1mu+N0dA2A/ld9NPJlhGZBfV
ghR9IrMkqVANsCi4E9J1286wtX9svHeuT+x1/vc6PXEES19xpF0Lt9siIGTwFIy2NWW7wmH9CHU7
uWj78vJFdMaNHSIWSHmhQwvNARQT/4eKnumui5pd+bAAdyYow4C0u27pX+nhs9u75km2cg+WUMZV
cG5V+6CWdGFzQhRU7tBWF33QrS71Nkbjg6vrna684V5obzjBiLg4ui0oemV0l2elYCVjX82OoYsU
fVcH/GceS6XXPfZQDQ0YiW5+J+EA6hZTMFI/Llc5chiBMGzNX96E1JsYkUUuwXxQvsJ281tpOksv
UrungsXn4WoFeQRpFFBkMGpmDIg2MaH6MNDeYheKamH/Q6yc4FHQOV6/LSqHNDmz9YKRBroFrkEQ
ueGCyyKc5HZKX7LGjBGQ//71l3+07f0zWCRze3gE6waLOUA55CDsjd+WXxEtSSwhWnlft9Wm6A4F
gTRUhJGOWX+Ub4sZowNrUxmmN7MtnDf/6jr3PPi1W1rpdiz9zF0Qo5KsCT8OpuqeH1mOtdpGV6Ob
jsbJvsqfpkAVyjossRbJTfururFmJoFCrGdP8rGd6uUh94tMs9eMo/eRhbQMwYS3tB3d3mtInP1i
9ZJ2r4Wo8wWwmmrTy/R9gRGqzVsXqpKPE8BJp2WCoROqQ6Zy9BPdlNdw39g8y/5efj2dG47yC5h6
k7YX6qCiOUz6X6U5a5tI9KUxAlCk5eWx8HYN6fficZHBtMuaSVcvtwSQler6pL60BiNvBmmMqXr2
mg/78h6/Wz5MPEHaH81ZvHIh8f2RBUPQnhpxr/LVKL3KngOk70a+o1zzx9za0MmwhdqfEjci2uqn
93sllo8Q1WlBfLF/H65hf5/3uz5NNIdTbmgP+h2Ykyl8fEiE+IslWctMhQ9D60yN6V3AhfbmLAKA
ZjBTuNpYO8pdZBs0FkhbaP8C2Fa/wG44N4lYPcDWzyjLBqk2yOWyrZAvGapliLGrKuwiNlH+/HdY
oBl+/7k0/VoH1/xyVdFV0ELFZDW3SzXu/SY34BvLomDsVO5FO4c0rWhgRvXAXdH2pBYula4Xbo3+
/E63g7Xcmeosoj4iEuYnY1Rkj1RnUBZNtUv/uflJHdpZ+GPFTAKhRcoVeoGldr2Yc4YQT2nfmXwc
3TmL1uzRHCeL4cJkLIjVohi9xVoRXkeRw3VjBEBjs00aHaQqRtd/L1viADP+bqmBSlMDYgMnBpeH
sEYg2SbVe72dW35+6H9KEAvCxjildBi5GuR+hDEtE2U1aU0mipEM7hjIhoK7CmJCz98l9qCr2lxK
sRTqIvHUxVfc3EjAP1Nm3WEw5YOyaQyMM8OOa5eqV4CBuv29WxOY2xVYcYH5CUITyJisohDgxC+3
fGWIMId9q7QYSc6Mr5SQDYZpjyiD4+1uTVNbNjBLy5tA7ZlYBtsRAp5czJ72BXMPrfmdz4d8nWg2
nnSivPxE7XAFZ/F/HCBvt5MwNbqq/YMsuD7vV24Ro2gZOpjaWjrYplBrVZPFpEHda2LOZtuBnJ+T
VwvoEGXnwCn9cD+oce17GR/5NxkE8Lu8TXOBv8JcbjqsprSm/Z7B6828qu2WUoFeXTWWNf4Mp5Zp
LsgiDY5kq6nLVFoZ4qwC0OH+F7VeTY/QLuRFqzO0Ohtu3eyYXEXfwEkBZ7q+231upBtRM4g0paAc
3dtNVW06DS0POKqlqWFzUp2SrII/wHdheoBowHTBQI0hVdkH86gWHRlp+uykk4iWspgYFEKZAIvW
3ztOA/10qHYhmwoPd4fq/QWj+0y/OtqfHVwaWhrR3cgdqCzNILUbJ01mw66I3oYUg0jewtk0gy2m
IXITRpoRy93c7qCpPLBs7vka4jP8BphnPaCBndc4cqaONhdN+lAO0CI/QS8TQ/wtLYyb6h2yqltz
wr2QjbYEF8fy7O4EpcPaDPPxBKbP7p4WTvEO9Tg2rVmn8FaiKeGrlsosTW0AHMUYCuFcsyxHlwGr
0WuWDIFt7mW5aoYqqrM/5jyDVD9DwMK/f17G5PZuapjzpGp+O5tenR9D4TYoWD1YkuFROLV5qK9c
NKyIB7B5f6pPBxeheV+7h+ilPWxPgLfHgtJLs2711p+1k4ZJYyH16xxLussA6EGwicqLZiHNZiYB
+QBa14tVQNqMAk6+XG+nyRenhgASQ/cT2b/mI6f+IrenGoyNXDFCgPfbHjHQI7ooF4N5ozGm5TDs
tz7gIhxEUMEoBmsIhVyW6FHKRYdszN2upuHg76OUe7xqKThN6hpav38nzan5DU0G4DJVvXzQqMPk
y7LOIeZwF4GCr+gYZXnO2QzoW7PlNOAC15+79AH1D1PUGz+e5MUHeo7rd2FmMEQckjrBFHTbwcEV
dmlkWMejnm/D6SdMYXafGFEwhn4aXtn9NH3KcZnKnKmRMzV2pibO1K0zdedM3TtTD67UcONMdcoq
dMoqdMoqdMoqdMoqdMoqdMoqdMoqdMqKOWXFnLJiTlkxp6yYU1bMKSvmlBVzyoo5ZcWcsopcsiqP
zV29ZSsfoNbXyjcuhjIPVZRHWckrlOV+3XRaWdIk8lRAKO155jW2gOVMo/YC1eckJJi/0T1n3+uO
BWtPD7CLWpGvL073Zk1wVS64Og1WAiiweqIal/PwSJnhXScrS92C3alk4cKf88T/SiNGhjnKn4SB
8WhEDgYLaU6Gx0IGN+kxbabLLpHni5itJpdqzI3hDpPBMQ15I6v6RV67BVdOcANYXRWogWU1n4U7
mPKCQ1wvxHE9ZhLsUN3yXO48wnElAwb2q2/S8cKV/WjA6OLMbqGZp8ptjJnr1IRxJBt3j5YguUqZ
zLkzjLrxs5AvRXFHXhCO0ywtzhnqcmKuRHvazEKapbqaQQdZhqXNENJsVI93TZ5ImsH6vWE7pFtD
L4Nz/BzRjc92lHZczb0Sc1R/OOi2uMF5Bu2fDJce9leXhk2vi88h+Y1Pb6nvAfDOg9wlufd6zjkM
cid5Zfqn/5W+pqp2n4RZE3/HgrC7o9yLY0hchMTFSFyCwrHghKjJNkhQqC0SxVCoCIWKEahwI6qZ
56jSdVhMGUOGy5Lhcou8uYXfhd/FwQaBSoINKjfAMQzuaxzEQUrCRmjsEVdWjcWX4UTI90TINyPk
m5HyjQjYGIVNBBZXWtHlCEhcrXboPHeoPOPvQlTLBhxD4xgSFyFxMRKXIHFbFC5C1hcr5whZ3/i7
FPllQDI0Ev/1GI1M0MgtGrlDI/do5AEv+Q0eitdSiFdTSGgleEWFeE2FeFWFOF0lyPacIFtzghnX
IwEMMYOlAjIsEP3pGAf0TyfsOwYZImHMCxM22QbxUQmLcLAdDrbHwQ7IKmyQOGRdcaJjONH5Z0EN
Q0l4h/lojAMxDCjCgGIMKMGAthjQDgPaY0AHlDA3KBROMSihe4f+RHRxMWagUAzRyQckQyMjJBL7
bQqSoZERGhmjkQkauUUjd2jkHo084CW/wUMJ+sSrKcTrKcQrKsRrKsSrKsTrKsQpK0J30QjdRSN0
joyAxH47RucZE/KM0MgYjUzQyC0auUMj92jkAS/5DR6K11JIUD1eTyFeUSFeUyFeVSFeVyFeWSFe
WwyvLUboU3htMby2GF5bDK8thtcWw2uL4bXF8NqK8NqK8NqKCEMgXlsRXlsRXlsRXlsRXlsRXlsR
XlsxXlsxXlsxXlsxYcbCayvGayvGayvGayvGayvGayvBayvBayvBayvBayshGBh4bSV4bSV4bSV4
bSV4bW3x2tritbXFa2uL19YWr60twR7Ea2uL19YWr60tXls7vLZ2eG3t8Nra4bW1w2trh9fWjmC+
47W1w2trh9fWHq+tPV5be7y29ngV7PEq2ONVsMfLdY+X6wEv1wNerge8XA/4XnDAq+CAl+sB37QP
hLUpZXFKWJ1uCMvTDWF9uiEsUDeEFeqGsETdENaoG8IidUNYpW4IeiN5FQh6o/gVKI4FimeB4lqg
+BYozgWKd4HgXggJ/oWQUdxBBL0RXAwhwccQEpwMIcHLEBLcDCHBzxASHA0hwdMQElwNYUTx4xH0
RvA2hAR3Q0jwN4QEh0NI8DiEBJdDSPA5hASnQ0jwOoQxxQFL0BvB8RASPA8hwfUQEnwPIcH5EBK8
DyHB/RAS/A8hwQERJhTPOUFvBB9ESHBChAQvREhwQ4QEP0RIcESEBE9ESHBFhARfRLilbHkQ9EZw
R4QEf0RIcEiEBI9ESHBJhASfREhwSoQEr0RIcEuEO8peFUFvBM9ESHBNhATfREjwOIQEP0JIcCSE
e8oGH0FmBLdDSPA7hATHQ0jwPIQE10NI8D2EB4LeCI6KkOCpCA+UnVnK1ixhb5bgq2AEXwUj+CoY
wVfBCL4KRvBVMIKvghF8FYzgq2AhZU+doDeCr4IRfBWM4KtgBF8FI/gqGMFXwQi+CkYJhaDEQpCC
IXB6i9FhWDE6DCtG5xijc8Qc7FLYBF2jBF2jBJ0jQyMjNBIrzy265lt0zbfoHCMCkqGRERoZo5EJ
GrlFI3do5B6NPOAlv8FDCfrEqynE6ynEKgrf7GO0SrERjTt0V9qhu9IOmeMe/e09+tt7ZI4H9LcP
6G8fkDmijuaMoAwLReeJzDHElzMMCLmi84wpUIaHRnhojIcmeOgWD93hoXs89EBQwYaApaiWoLCQ
oLGQoLKQoLOQoLSQoLWQoLaQoDdG0Buj9DOC3hhBb4ygN0bQGyPoDbk5GOLPXYX4g1chw+cZUaAM
D43w0BgPTfDQLR66w0P3eOiBoIINAUtRLUFhIUFjIUFlIUFnIUFpIUFrIUFtIUFvjKA3RulnBL0x
gt4YQW+MoDdG0Bt2ZMQfdwvx590kNMJC0Z9nFCjDQyM8NMZDEzx0i4fu8NA9HnogqGBDwFJUS1BY
SNBYSFBZSNBZSFBaSNBaSFBbSNAbI+gNO4jinbQh3ksLZ+7xuYaUXCM8NMZDEyyU4avF8NVi+Gox
fLUYpVpbLDTCSyDCSyDCSyDCSwBjBkf6FhhEtXpohIdiCoC71iH6LkZuQHRIhkTiv84IeUZoZIxG
JmjkFo3coZF7NPKARO7Rkt+jJX9A53lA5ylm6yM6Wwkm5RxRwDEFjG0wYYKvXoKvHGaLK0ZfKhOj
L5WJ0ZfKdMgYjUzQyC0auUMgY6yx0kMZFhqiBBVjzYoemuChWzx0h4fu8dADHopYPwzYkIAlKCwk
aCwkqCwk6CwkKC1Eq4LhmzjDN3GGb+IM38QZvokzfBNn+CbOAoJcDwQVbAhYgr5CgsJCgsZCgspC
gs5CgiZITZygC4bWRYTvOhG+60T4rhPhu06E7zoRvutE+K4T4btOhO86EaHrRISuExG6TkToOhGh
60SErhMRZoeI0M0iQjeLCN0sInUzRulnBL0xgt4YQW+MoDdGkC9DyzfGD00xfmiK8UNTjB+aYvzQ
FOOHphg/NMX4oSkOKCrYELAEfeGHpgTfDJKAkGuEh8Z4aIKHbvHQHR66x0MPBBVsCFiCvkjNgKCx
kKCykKCzkKC0kKC1kKC2kKA3RtAbo/Qzgt4YQW+MoDdG0BsjyJcR5BsR5BsR5BtRBjK0fLf4oXRH
gTI8NMJDYzw0wUPRnXKPl8AeL4E9XgJ7vAT2+GF/jx/294Rh/4CX1gEvrQNeWge8tA749nLAz9IH
fNM64NV1wKvrQFMXQV9pQAIzCjiigGMKOKGAtyRp0GRHkMeRIukjpYrHIKflnQeMBo9o8JgGJ1Z1
S4PvaPA9UZDEujJiZRmxtoxWXWrDobYcatOhth1q46G2HmrzobafnDIHKH1tqASihslNgtAmQsKO
ZYjeskzwG6FJQMgVvRGa4DdCE/xGaILfCE3wG6EJfiM0wW+EJoSN0ISwEZoQNkITwkZoQtgITQgb
oQlhIzTBb24m+M3NBL+5meA3NxP85maC39xM8JubCX5zM8FvbiaEzc2EsLmZEDY3E8LmZkLY3EwI
m5sJYXMzIWxuJoTNzYSwuZngNzcT/OZmgt/cTPCbmwl+czPBb24m+M3NBL+5meA3NxPC5mZC2NxM
CJubCWFzMyFsbiaEzc2EsLmZEDY3E8LmZkLY3EwIm5sJYXMzIWxuJoTNzYSwuZkQNjcT3PmjAUvQ
GyPojaH1FuOHvBg/5MX4IS/GD3kxfsiL8UNejB/yYvyQFwcUFWwIWLS+koAAZXhohIfGeGiCh27x
0B0eusdDDwQVbAhYimoJCgsJGgsJKgsJOgsJSgsJWgsJagsJemMEvTFKPyPojRH0xgh6YwS9MYJ8
GUG+EUG+EUG+EWUgQ8t3ix9Kt/ihdBsQChDjoQkeiu6VO7wEdngJ7PAS2OElsMeXdY8v6x5f1j2l
rAkeusVDd3joHg89EFSwIWAJ+koDEphRwBEFHFPACQW8JUmDJjuCPI4USRO2Czs4o8EjGjymwRMa
fEuD72jwPVGQxLoyYmUZsbaMVl1qw6G2HGrTobYdauOhth5q86G2n5wyrJO2CwcCUcPkJkFoEwd8
3ujIoy1+s3CL3yzc4r0zW7zLZYt3uWzxLpct3uWyxbtctngnxhbvxNjinRhbvBNji3dibPFOjC3e
8t7iLe8t3vLe4i1vgBKqdaRU7ESYJ3o8I+LRItnji7LHl2JPKUCMhyZ46BYP3eGhe4JcNwQsQQkh
QQtYf9kOP+rv8KP+Dj/q7/A++R1+gtjhJ4gdfoLY4SeIHX6C2OF98ju8T36Hn3Z2+Glnh592dvhp
Z4efdnb4aWeHn3Z2+Glnh592dvhpZ4cP6N/hZ6gdZYbaEWeoHXGG2hFnqB1+htrhZ6gdfoba4Weo
HX6G2uFnqB1+htrhZ6gdYYbaEWaoHWGG2hFmqD1+htrjZ6g9foba42eoPX6G2uNnqD1+htrjZ6g9
foba42eoPX7a2eOnnT1+2tnjp509ftrZ46edPX7a2eOnnT1+2tnjp509ftrZU+aSPXEu2RPnkj1+
btjj54Y9fm7Y4+eGPX5u2OPnhj1+btjj54Y9fn9kT5hG9oRpZE+YRg74qeGAnxoO+KnhgJ8aDvip
4YCfGg74qeGAnxoO+KnhgJ8aDvip4YCfGg74qeGAnxoO+KnhgJ8aDvhongM+mueAHwwP+MHwgB8M
D/jB8IAfDA/4wfBA2ekDMGVu6vGMhid84ECBMjw0wkNx+mMb9IjLNugRV0BjfK4xJdcID43x0AQP
3eKhOzx0j4UmeLkmeLkmeLkmeLkmeLkmeLlu8RLY4iWwxUtgi5fAFi+BLUUCOzwU3bIOeLke8HI9
4OVKGLMOeLke8HLFn1yXYMKcM+AZDU/4QLghYRkBGxGwSB2G+HknxM87IX7eCfHzToifd0L8vBPi
550QP++E+HknxM87IX7eCfHzToifd0L8vBPi550QP++EaEtfQtFy3eHlusPLdYeX6w4v1x1erju8
XHd4ue4ocj1goWDdhxQwo4DRijjgC3HAF+FAKUCMhyZ46BYPPVJkcKKB8XNpSJyse3xExKPlHRIm
y5AwW+Ln9pA0t4cbfAMJN/gWEm7wg4XAIkcLhrdFGN4WYXhbhOFtEYa3RRjeFmF4W4ThbRGGt0UY
3hZheFuE4W0RhrdFGN4WYXhbhOFtEYa3RRjeFmF4W4ThbRGGt0UY3hZheFuE4W0RhrdFGN4WYXhb
hFFsEUaxRRjFFmF4A4PhDQyGNzAY3sBgeAODUQwMRjEwGNHAYEQDgxENDEY0MBjBwGAEA4MRDAxG
MDAYwcBgBAODEQwMhjUwcLNV8h3cwZWRsIyAjZBYfGkxU2uC32JI8FsMGhricw0puUZ4aIyHJnjo
Fg/dYaExXlgxXlgxXlgxXlgxXlgxXlgYA3MQ1oaAJUg2JIg2JMg2JAg3JIgspMjsQGhhBPkySssl
yJcRZMYIHY0RZMYIMosIMosoXZggh4jQMyNCO4sI8o0I8o0I8o0J8o0JbTIm6CKmjKcEvcUEvcUE
vcUEvcUEvcUEvSUEvSUEvSUEvSUEvSWUiZCgt4Sgt4Sgt4Sgt4Sgty1Gb/B/GdLU67AMjY0I+Uak
fCMCNiZgEwJ2S8DuCNg9GrsjyHdHkO+OIF+MU2n3HaYlAIphUN+FuNy+C1H5YWz3A6xKUQutDskQ
SNFXI2SmGorMNcbniiurMNi3GNAOpRsJZFhghAXGWCBmFR7iti1C3JZFiHs2OsS9GS2WOeF3IbJ8
Gsrw0AgPJZQ1wUO3eOgOD93joQcs9BLidXAJ8Uq4hHgtXEK8Gi6MUF5GKC8jlJeRyotuN5eYULeY
ULeYULeYULeEUN6EUN6EUN4toQxbQhm2pDLEBGxCwG4JWNRIgp0UvsNOC99hJ4bvIuynI+ynI/yn
Y+ynkyBF3QqmwUc8eIu6Bq6HMiz0iM/1SMk1wkNjHHSHl8CeBmV4aISHxnhogoOGIbZWYYitVBhi
6xSG2CqFIaFGWzRyh0bu0cgDXvIbPBSvpRCvphCvpxCvqBCnqa/CGiIMVz2c0eARFh6he7gGMwoY
WYw4wHZICWV4aFeAsrnzU1vVn/h7y8smr8pm9GeQ3nMk8JHlLR1/qkQhyzZQJaRQcViRf1MVHAfm
r2mxqkRAxCFL3r5V9QsOfE9Ljsy35kWVZlhsUz3qE0eKsMkzfkzrObh+lG1+491/g1NaFH9/lKdW
kH4rfegLb/9VV3det/myHHNwUYnMv4iU9EJkNj34+b/T4rFoB037LHjzKc0yoZm3oH4UPMjLIi8F
FZKCU3O3cE7V7ZaLZsIL+bMN1TRBkb/ygIs2a8FAUtD/qj7cXDm34c+VUF5wb/gjqwQ6bW3VEqIC
CYxyDFqhWAs6L/8Q//Z/vkj/eopecrs/Wp4puAV5EzVLgz8fvDaoqse0dX5qgmP1LlraX3l5sQCr
V17XoilCx+S8BLDtu/e0bnjwaM97ke3NBuK1EOQteJRCit0/qnNw4/UlPQrVp7Ip29h11VanSgwX
DXSoix5sbre0zGxVBVXcdWsUBRMfTh2Caa7VW/BoeB2IVl92erGB5X8CaMfHIi1f+u/48XkpBq88
IzC6nuJGntLyxAvZ7u1K7bDXtBRdu6yEet+uecGRNNUFsVjVYNs6PXmKnuWNbAF5eRVNV5Bw8PYq
mqWqCoGQiQGkpRB4Kf/u+kMZPFIy202QA1LfUtOzMCP6ZuJXPHSktPVr5Jo34kdPe8vPdXrzfLAr
muiOYvh8hXHe00+gBX//r5/doEHAd+t8M2WoaTWA6aPR0wiegEJW57MYRTzYxz0Tc0Jwrqtb8IcP
Wxfw+Zf8bFOEHB8R3b7HeQYSidMdHgPt22FbXS7ur8u5Ts/HrpnucQ+y6q0MyocY7GHyEYO2aj2N
lQEiFV3pUYt2Ldg3GEdEA2mWht+M0l7FVNEW3SAi58RPMAi9qP+V84wwEE59qzVAhFhrfqsUzIWS
fzkA6o+XvLQWByzmNi1ba2FECYLbo5VDiuidl5uYnTDYQSFOnAtS8ksqhQXGnSjl7e5EV+0VtNVW
QnhlxmsXWCEAnpelGO/6LzQolgPUwP+MpwULSi7XAv6et07YLW8ae2OSkHsq7IagKv2ZNZy/+Erf
VDXMm0cuBnYOk8k9bU9XGyXj5/RRtIGYAer8+Gi5HQjzXtejRNd9WJXpaq7C2rk8UjmW8DMX+jhx
O7S+IJoOLKQCMfSLMaTmafb8MljYFrAcaUV1oCeQOE19QuBvYBaJxqxHTaGKpxyMnX1dkoQKLhcx
SMlPOvSsZCdMtjuYvNYWr4egPx/56aV42lDQz4OhixRimkdAM6GU+iFH7lOdNlcXRf5lLeUbP762
ItvTZrMJ+O3ePhHIUC4XEEA2LCmcuAhUNJrYneA4uKWX/BRcRVuwD1MjQqKh0gR2jL8jylZqA+yZ
Nj/nvMaUa6fHUUFDoPfQt0Qra4BxFQYL5hOHngQMPyHcQO6ag4CHekGEVEUYwVDUIjOPA2F4Xkqc
BsIkuFdNDj3M0RVH+K3Kncjayar2JARjr78jeyOVfJBNZFiMu8Bs04PVJxGUEAx6HJTBFJoPZroT
HIkuV7/Y55wRNPbPGSN0EpyKtGnw2W+D1yo/YcS3U8OZywYcoffBo2we97uavp3FgTE6yMGRkYo5
pjfC7kXawmru00nYsLf8cQOnl2ob5UW7oUa/yDln9jMfj8Cr8hO9HVZi56J606tBMZE/u1FyVZZ9
ftc8g/Xdt85W56cMuhHsG+b9rcta8PSVY8p6TpsWMr2BPyutT1cxWNzFgkpO2vYiSRpYIbz+dBLN
TDSM1xxsGLDJWjVGO7kwOPU/idZ8EpbjvchPkJN0P3dF70YtVz7nqpQj3eNdTCb1TQwwf3E/S46P
wkqpXnjwlrdXYQnUmb3Kqpe9ihm3gvqJznmExUWgvKJZdXoM84abDXbZo5YmLggNQ1FalSPteOnh
JjWnVPlTkGV8zev2kRafxBIXrJFs0vBe8yY/5kXePsc/y6X2kBSIepVidKrOZ1jf89bRhLBfm3Tq
j2Ym+5kqMOwGqL2hj2Y6qn8/Tsqle9nInvV/JP9vmGl+gwWXFE0TZM8yveWn/0PZf8Nsm/x2Bx2m
5WvasMw9hK7PX3Wl/0OZi+n9Ukwzf1zysvmUnk5cGB3KV3sH+ckFVfUcFK+BbSvm+N6RpUBTiHbO
veUZDM3SNyYG2pfxuqyHQoKcVPKmgf+qhOCc1+AtE2viS7+w7Tj6m10Ryvtdrmaro9x+kgPrOS2K
o3ZGjTucKwMzpisPrLZPOlczEjaV2vppThT/y9Nb0L71hlqP0GNkUN15OU3it6Po1r0jpOlWFiaU
+Av2tpQQTAC1RG90haSXXXWUZoqW21ivw15n//ujKPTOWZdFVkl3xbBx3GFB7crSfNTFMukMGzTG
lD/6WANzuprtRW18QHBLt9e0hT2Lfr9aOU66RiVaSlHIvY1C2DHmLGRj0haO+rYDNyqTVvvQoA20
YWdOskshX9kUZVMztklBg4/VXIwIJy73RZ8mRFmJFfpz8DXrBtYKcwvc1lPK1ISVRWnezsZia4zu
EseL9HjPINL3CT9JR58YaISBVPI5CBzEogZCYHkhfbvaOTjsHSuXE8zshhZNyWDOVFs9t7yrrPp3
H64QwLZpMxuOpnm88OexEqIM+Cvv3dxdoqhx9YDdeF0i2eRgecRBMOn5LCrTdcKpV63LwfXpWwWO
WTWads2y8iL1107CRq8bvcExMnPHBFUl0UPfeSZmFDvElCKde7Aw6L4oB86REaXBj6LNYTLSP0xT
y/Q1F91TjE6go9+fdzHuFby8tLOZoxRdDIY19SXVSuZZiVYgTN9+KuvAupN6OKIXqknRAtCZ3dJ7
kKVtCopo6pMbPOyJqumWv5/4famLOU2M+295KfquMsgZBT3DVvamP0Pe9YT6RxO81eldlHswCTo7
QX3wUS6ngH44E0OSnE3EMi+H9ewUpr+hp6ixehb9QkOr8iwGtEbu9oDkTFYFTKXa7qgaqKyUhqyz
qa/0kSEyfuAmFhHVrDZ3cMhk+VluELSyXsrbPIOpCvQjrjRBxCjwJkYLN1IOE7A8gzV/JieHcfyY
jQZT2BdeZp+5mAyaVk4iRsZobjI1ao3S/vnmcTR0W2XfpOKren9Y23fdqrmZw6FOnakAyrgvjY0p
SDROIwbWeHpDRU2OwtrTBlVnksmhBprceIoi5JNVvClh2H6FxfnUajNm03WPaeJkZNG5TRET2TWm
xqtb69IcVAliemu+qp++3lPRpb5CrOa873ZxbMdazGaip3Ylkt779mmDy73bZbseAHrTTbcX6FHi
P0NE3ZPEu6ZNxwu0WIXh3vCPZiJqQMvDpCgPpfHXubO7deFEF02LHAu3omAwXSyJhnTokXnZjvZp
AogryNNiEthiJt5ngjQsAwbC6Aui2UAog2EO6cGqY+nmeH6Up8YD1fvAHtRZ2H+PmrtRttT+LxtA
9xo5WAxz32DcmAdKHN/GqSGuDzZe75YxZoCO4wFtGIgeeVvYGWoqhrjYl0/Hx+WwiQ6hMt9kjNdo
CJqMUGMa/E+QFnL3Wf7Sm9oLVLezDVvQcva6WZBCOB1WW7dqRtK73SgigjGyY4d4cytCdP/8dVhp
jWHjf1hy0v+Av7VbROValYolDJQWRRv9oqawiR0uVnrS+SPXslzNtaK38fRljugWcfDvWZKYf7vg
dbV6H8/GPeghxqn6t/O/DGnDV7WBmL5W3c6vEVS8pU9XJm66XvN5UIZ1qAGl/SeevG5pLVdSVVGk
9z6KxoSs6rvQmzJ8xGQvhj0v1g6wZ3ASo0Ub6EVntydjB4qhAk51wA9Xnl+urR0qTDOVa3MVqS92
oDSrhWyDt6o2CkTFc6pFkk8ZI6wpWcbXQ8T0EAtmAMxXuGPEPyFk7+9V/ZMaLv72/HlRZvhDrxzG
g1+fruLm1SatEJBsN5D1DNdZNDAOdT/KvbMZTloS6u95Sg5L5bTkYjTqzexAaDhtp5syA6G8FCoc
VKyPGjXiHoVA7oU8ISCWqO1bZezWYOq2pyusYuW+mrF5iHYIujY3s7+q6iZGntmeT5cqlMa+C5cj
xGazQSNDNJKhkREaGXuRejzCVKmHhniov1J6EOsLIJYjFayP6ubTMW3yU9D/sEgXS+oWAsq6X7Tr
s4SdBWn+js5pjGg6NDxz5Dx1MA4fkH2L0eA29ADTa+hGj4kLArji5FGRIePqdszLdLSEHcH7be6F
fMzl6fHI/NWfQd0WYhYIju14a2YBU2cKxoaRpRTDx4+PtrV/VxZPughh/atGC2FOT3dNzCz4Lhgx
NT/X3FmErE4vwqwUZoNqUyqK0v+JS51mOdgivjpqiayrSF6KUVUsjqZ7/0boTbQ1MbHIz5TVPW1a
7kRDDA/YkVJRXUdBMxzAqga5pJ7iVm8Q8KUjjHntFeM9rUHWEFqR6S0JmCpqjAq0XSHgGTi0vfj+
L/gohA1JT4aP1kCD6xTFM492lZ2tG0dZ6W9C6d6uvDsWiWdpvDpEKBaWGX/nWXYUS4W/ctE15RFA
ub03XZM6CI9WmPRC4Gq9I9MbH+mYZsELf97Tzh1uh0p3vxekQmlkQvAo8z8fnETRs0TLL6KFiYI1
SLb2vbcws8mpaQ1R+Zj79beD+6gb2FDoXMbjTKqyi0RG85Fw7errznEgNazIXph2Somxt3eS2MGq
UatNUB/2UlRHMR4OFrgdqpoAzLjQU/pwKhTNLwjRmkT1/nzkqoc0XcC/1LpIJPP1uVzlih7OQBBy
uD/ApF71cUldWXIfXruZkC3H6Ar2wlVn6UQ4GbqguGL0g73aEupJylHbMWPfpI8pidDt/Xh57Al6
SDCKtHPgweEFLV8MSYThBXQL7lNcJcBjBoOOitdSh4RRpDc4SkpmjY+GuJBSDTIBiR0pw8fQzmHt
yUqPVd2SKFPwGz82fxZdlJEGBuJfwjoT6n40KDw4uzojFmJjCljvmuduYwZmiPQadEeSxJJauiqa
1gjuG5pyH8pl5jiaZgZXLjl5XH9YX88x7/z0gMXan0UgzOzGBZKYE/iFGzkJSh+OO/t+574rehNc
0vqofEHFxOliY46bL4h+2FRVCmzwdCNSdtpuV9AMmfZyaVfIfeR+K7GpCmUEV3WRrckCwVHadLWl
Kb7pQ6rwHHUSfiSyQIUgXOp+A3jG//NRQSQDhPQvTF4NgTFFeTUXw5EOCHuUs1BcUw4TnqDItYow
6MUkBq1hbpNpKrRZFWwBcSFWiHKQn6rMhulaeYckqN7G9YCbh4r4IH1qxjGCYHiBCfkqVoV/WSQ+
bgJ9Afo9ocmyC0FElHzMo4vYzvbCcWJ+BV+wWLik9ak7/D+k/Cf6Ifg53P/z00UMTvUvv38OHsd/
grtaJFoBv+kQEgvo8++/uHNRAHsu8uhAKqZDIQz9UfWvn8qMgP5VujAIBGE8iLnah4eKEcozgiML
NGLgSgTyxBdoQCPLMxAQxelvASFqzsLDFNFCpRaWIEULj1xYkmQhmk0dSzPDPP13ivF0Pk8vnmIc
eTX3tBw++pMO3pYeYOnPem+9JNkbiJyuRHIDXh+xX8Mt2noVD1dWWbO1hTWQcaU1EHHFVcrudYgv
6oyIK+bQ/NZ8rONRvrVOD0vu2m/itKCWHfARP0jkOAF9+d//FYTfhZ/SMr+Bsw6iSIINC1oEKkKh
YhQqQaG2KNQOhdqjUAcMKtygUCEKhZJ9iJJ9iJJ9iJJ9iJJ9iJJ9iJJ9iJI9Q8meoWTPWHBEoFCy
ZyjZM5TsGUr2DCV7hpI9O2AkEaFkH6FkH6HafYSSfYSSfYSSaoSSaoRqqzFKXjFKXjGqjjGqjglK
9ltU6beo0m9xX0Rpe4uSxBbV07YoeW1RbWKL6mlbVMvZoWS/Q5VrhyrXHvXFPUrbe5S29yht71Ha
3tu0ra44vNfVOdiEwdmNuQPm6MUwRD6RtTxVncHlmuI/8DUMirlR0h3kKvkYhcsrQqFiFCpBobZu
1KOEu699ddQohkJFbhQEBcJJZO9HByDDAm2flifTMrkFJ8z4E7c32XNetHC4+VgAwVrEDqZaJgLW
3UFjrcsYCqrDZFq++isC2yIQgo4ANuo0sBfJ31N5BYC3hGdl+vtgl/TRNH6YuozBC1Pbb95KaFjs
gd0gpNqfm7oN1V84OEHzKNLan2ObYyTcPuojIi+Jso2ucAUNxEQ0J/sopjCdOv0YTD62zjrGxAhM
gvjWFoHZOb91KZ7QENwV06AIA4qdoBdel3ZRywMcaR+pYW8BPRAOIVtbU4/SEa9+oAyCwOMYEhf5
cBAabheLvD4Ybvaxl2wEYX5I5IfE/rIkfsjOA3nUub9OEsQwIFsDvaXNi7p4tq0re6vqYPBfe7E6
VCVmXLg4xguUO2lIFEOhIhQqRqESmzB4m8qdZO+0KENTIcMz3BdibcUzGMPBIhwsxsESXxVgt4Q7
Bp4FkGGBkQ+o4pARYtYXpPkF3QEZFhhhgTEWuLMC22ujIhUc9RgwDIGxS3jAxIh8EgRmi8Bg6r5H
YA5+jNXBPMYgZBhGCAxChlaX8b3h9as0juvUsQ6ZwRgOFuFgMQ6W4GBbHGyHg+1xsAMKJloFCobT
QojTQojTQojTQojTQojTQojTQojTQujVgugRrTZ4zUg95oOh3tgHwimKoVARCrVFoXYo1N6NutTV
4954RdHBbOXXF4joYFZrbjMYw8EiHMzWdJtrCpcxnfL6VDjm5xmMuWG8KPJ748+ux3ny621gJ0pG
sftA96p4XqoShUNlCJvQSJC1lvJ2FnAiOdylExAqp8gNyvi58X7OuVYdYxgCEyEwMQKTIDBbNwae
KPFWXoEYBhRhQDEGlGBAWzdIDkje6mmUR3Ma5alg7xDEoDxf1CjcF2MUKkF9cYvKa4dC7VGoAwZl
NZQ1qnnejlXh7aaPxq8giYkQGLtAn/I05snlRZ6AGAYUYUA2//EEhCr41gPSwY3+Gt7hwlur0FXU
o3xlwZrTGMMQmAiBiRGYBIHZIjB7N6bVHlhn9TN+qjwQ5al1S1pjGAITuTAea2SMcWpMYyIEJkZ8
K3Fh3P48dYc9+AbLiwcl/wcDifwQZ60UJPFDtn7Izg9xttO25mdfpdX9NFiUzQWnUffUNyS8+Vr7
m6upywtY5RHtH3/7dfqlY9rmL9121acz/z0fhXrPEuV/P6t3TmcY7bCV/zUjpN+t+dTdCPFLfstb
M0QvSf8lBlNYpH4v39T7DKezvncS1HcxmGZ8A0F3hSyCNsPIByGKqrz8Lv74rfwXHOg3IJobvIoM
I40pFf7nexkKz9zJkTvZlvqjGE1rebSN+SE2xE/yzmPmTo7cybbUv/MUHrawCue/YMr4bbgu4x9w
SEpIMy1sjF/ktTHMnWxNVfcUW1KVlpk7OXInf4E4CGt1//XDj9///r01Vbdb5gNY0/tnTJkfYkN8
Uc8QG1JfgXhKi9/H4d6j9PdbIavfpwkD7FNa193VvmIBnVVvk1Q4AnZRNyoqA1kkDCe9AKHdFPIi
5+bFmtGpyO9yYrQC+lgRldjtK82+NkdNQtuNCHW9mtqMm2Umjy+DFXqBy8XlKbfuSpT3KbJR72Pf
5P2lWX93SJestqOVhPTt8tNCKYAp6cLbH/TLyFKzaqqYfV9ZbqNrawKpE/m2JpyOnqKnz/Gqw4nj
TzoVdUvfJ3eXjX9X15cxW0JkSZj93B1F1tctTE5PaoxsKf39RXqzyFBYZ4uSjiBEJhLXPJuW35TI
ZuJsTrm6qPUUqLsbm2lhdTuDI71dMxtnr5PV4ffGlDS61QlK+7CD+udXVeDNFNfCBT9jYUxLKRuX
PoJvELn47/BShr4wHm4vaoZzzEakfOq9Ht3LN4Z1TkftvDV8VtpPg5KW2lH2spJB13RGCsqq2ydh
an0WOtQ3Eip9ivLAEw71e5+ZRn6RvtoO213p3TzLk6wUCt5dRPoO5klafNbPYzSf1Z0jmT443r1O
gMqygONFNYfD38JwPVNJKLxAy9PAx8fxWGBLVnN138F4XnPhISDsKoz4BRgaYIftXkSHRqJapr5+
9ru5Zic0BYUXZ2U84wis3kDq7goCYvcukrrusnvayUn5Xn9HujWhDqpJoCn6LTU8SaT3n4I4XxJL
f83L+0HO0ONynt79ZTSwnmtY9SqS7ki9eYqna+Gc3qmC6YjPlcR6LY9UVzGeghkr7K1z8YC3lpvg
mre/CyNgMk47qN3nJ93iG+Qnhad/+7cMifYrfpZFp4JJLn6pznL5UKWkTTKuEqarLEhPKknXHNNo
TTxEm/1JTcXUYcBEe66ikdq5ib+utDW9tIQhxMJ8rmV+REhdFquLXSOK/fef/gZHBMYSzkvmF7GR
t4om31WnEnUNoajUKvbUtUxZYAT3B1h7/JoKw/qdLiYLGbyPH6CrC9lWZkASnJ0vq/ChHHQtUHnc
7sJILtvf5RzCJ4M6uCPy9pEhBerIib+rtA9nJAPE4RaiD+ekT3J8NJumqO4fl08La4P/TWh7rrye
HyyQbkSD9j/SjnRmfQP4BnkNbeAbZKabwTfISbWEb5DRuDF8i+yehGKBH3HFVGfhrqa+hOup6wv8
Eq2nxqup4P6WrxeuyYA2zdvpH2ELZX2E/aGSC5V9hB1/hN0rDpVH+VoVr3xpcRzzFDnm23LI8te8
wbYfWyY8u/BfK+xUb8sF2+VtfDgNxwv1+7fICRbUaovtY7mpY2sfyuLebTAX92u6Pivd9mSrWd3u
dCZdw/loPn3b+WhG2HHIkcWkBX2bzEaN6KMZqnb00VymTQmR24/qbPgvsMmVl5fp4CGTfqjkA8ko
e9iRG67/OzIo9G96K+9jmTWP+pye+JdTWvAPZNUF5M3KBu7E9bL/ppn1/Xmqyw9niOuP7jwmSkDl
pq4ngDx+Te8rjFFnDh/MoMG3JWse7z9c01KMK19kuBa2lVuze3677GjWpC+Tj+fRfLDRdE7muYQ+
nONzXY7QK2U3mXhZ/spvD5yBYstClOJVRUmszKRb8uuirKxNZw70pcHkIyBf5Gb3ZFZCWX8W7nM9
Fzk+GLld2AN64nLl0p2lX59Pm/3IX3N8q1jk0k0q7+vU2NGfH6Ln5YfoE518g4w6tXwoq7FmEBn9
vaiqyX7AGX7AtzMLn9DCJjl01tCoFBS6FsK4DlQZTLIgaOS/4PqhPC3/Vjxqeqe3sakdDZUPXEa/
Ih9Sp/kZgveMK9QhBBpToUk+8xXKKCtEkX7l9YX/U6wk6epZUEmy+BVufxKN8fJc8WUjl+LVM+eg
IuPW8T9Y+RUOLmsmuhqIFv2bdMXTzQAD77mOh1P4lEeaJs3U52oqTsH/gofAF0YjSrZm6nM99a91
VHy4iIP9/BD7Lwz7i773bb1zxJVDd6scxVuDye8nwvasM79HTfG32LL6mMPFluu3zU0/aSYz/TJ+
JpGaEaknezJZtI9vl+VPhA1cX5ajVoLKrVoOIwUc6BJZi5ry7+UT5qj2ZsjpDv29+b797w/n8D8f
zuH/W53Dup5crZwVjMznauZfq5i6NS1bwpo21dmtfWP4Bpn8z7fI5P/7SCbrOm+1fuq1kZ8fIaMm
XjhJSp9sxyzSQPz7oz4+Coi0HX+0fNx+O7XpKy6Kx5xHw3n2AXabt6crVOsDRcBGEC3ZWoYjOayS
Zdd8QRQfymAkjY/kgwyhkSeWJ54WfYYZowsLGRlYvqSrI21rmPdaDqmvfPW31em4FcT3NaQnldQ5
kHrt+BenTv5/U9vGPIP/+VAGyFMDxhx0K1lHnjWUdZmotrKO+76S98Ty/tXV8Iswp7O0zr7vjgE2
KzqZLzf98PQ3yo3UCX2ZvX+rjJ7fIqNVjReRoVbAt8uQ1LgR+b1/w7wwnaCqhYjL3+SdFasmF1sG
pGMf1lywTdzGf/8A97mSS227jjw+LkRiM3Vk8f4xOqIx/tfq9vNfH5HbYpsE2/a/zf7KIpePFR7Z
Yxa89xWcJ5FD7BnfbN/JlNF6KdO6lIn6vo6G6EK/5OX6tjQnvyNi9BccRuc8V3znSfzOGq0b+O8h
TQcdja2iPdd97Yn8Wlr/l76lYizZ7uaK3/szxyhBuzNDLjTtGWHbooXNPsJ+fujbz9Xf1upcKmSl
dmf5Idd0zryw/cGeAftgBs+PlgDTW36VL1pMjuzKX/6BtBRsfGS3sNH/g5vrl3R17dIaZs3P/72S
9z9UXnfYeCxqoqomWSAbvCOH/+DmfGMOSubIDQxHDr+jXJXGDKTyVlP/ZyW14a26bu/3StXe64zz
ZvNoK0wuzcsas37Og7vFflB3qKH76zKHldQ3bBef0t7plCeNQrTlDdSFXNdmsp79hu3PC+b7KhbC
gp/fP0OyWA03z1D5cP/Xml5joOrLTml9x54PwSC1Z7K+FMieaGC+r2I9ySxilzSzTUr7WFYEu9WZ
z4fKguzpZvL7WiKmv6sXRdZ3+Sl/Va/Xj5V8qAzFBxfbn4VxnhamBRTmTicH+/kR9vlD3z5/6Nsr
FuL+zJDjnz2jei2ZcAWVO4PnBzM4f7QE54+WYMWKHpUfcoR05oWIBf+8cq/o80e2iD6v2xn6TN8Q
+kzfB/q8fvvn8wd3fT6v3uz5vGqP5/OqrR15QdtKzY+4awT0+2d+pl+CCheOUw8qLDhPOkfdUvx9
9sejaelsmmDm5KoVSfSPDrfcr+Di57Y5dYVCiPogHPww0Z6raJMGsCaD1W2g46tmsObTo5awio6f
Dg3sdVpCKOnf09s3YfxAbAgYWIzMIuny34vbL1VRKRUcEdkaor3AvXKbT2mZ3+TLBHd17W+TZ3xQ
vvgdSKML0UdUfU350FKqOr/kJZz1oBHkPnL38kB/9bs5jztcRje5hVddv2hGw/3fk4uIG3n7r6ws
lmHGqYd5cnmJvXpllSQ7k9CkjnndPpEUitjGpVKvY8GD5J2t+h2eoms7MN7yU/apBvuqyf+CAz+X
Os9GhZDpOulcpC9iado0Mzo8MhGM80jnGSwQRyMCrrCQF7/PHxYJaXA2gv9VVTf1wEl6bKoCHiUQ
ZRBCyarTQ/a3shI51VVRHNN6eFzBz3OSal6otxgoJPgrOFVVnTXBa87foFVM34SaYa/5e86DW/4u
PrHZ7L97X1R6BFPPLMhX5auMF4IQG+UkKdCRzkWVtsFR38OUZvK5AviEvHRRNDF1Sb+wYqEJV6+8
Fow31UVHjzlo9DVvW3XHNjxXVSgyv93b54kXRePHFvyVY3DVowUPih9Yt4Uf1LR13+I1rkifUo7q
JSr5xkrQ/RaEeCibQG/VX+Kj6afj49J8ipMtC+3JaSZ69ol/zW+XvPl6qm52qPifLUvc6XEYhF4E
8yB27vRk40zfbQ7udObO/7CNPOluGYSbJPEIIdxsdxiIW1BhuI18uYT7vRvA2MYHiD2AracMbOcD
HLZuQLTxSCIKPdWMI081452nmvvNxgdgXkDjQxw8gHDv0zhAmB8S+SGxH5L4IR7V7plbc2zj6e5s
4+mPLGTuyjK23XkAngbK4u3BA9gdPIqTEOaHRH6IW3Es8bQyloSe6iZ7j8i3e08ZdolH5DvPKMx2
Ow9gv9/65CkgbsDBMxexQ+Kp6GHrKcPBV4/D3jenSojvMwd3TaJN5JuSJMT9mSjcRB7AwfMRtt34
AJ5PRBtfX5MQT01ij2ajrVcvEuL5zM4zc0WHnVtx8ebglkfMPJ0xjvbMB3D39zj22FQC4B5z4mQT
egAeQ0UAIh/AU8hk5x4O4l3kqcXe0/zjfexreABxAhKfTZckkQew8wwGAuDNwVPIfZT4AO5PbENP
s91GGw8g9gG2HqNvF4bM08clhHkgzDdS7KLYk0fsMaJ3u9BdF9E0fXWREHc59pHH2hdq9QDiMBwv
/Rfp+8TdMPYHj0V42HiWLIfNzl3LgzAZPbKSEE8uYuHjywUgnlz2XtMx3Gx8C4fNJtp6Eb482NZf
EsAwH+aw9edz2HrzSbwr8W3kWedAgT2IiPnW2NE+/tMP8az9wkPsW2iDX86zVt/6ENHe9xWf/0Qs
1zfeVajEMB8m3GAwvqX/JvEhfN6BKPSs3wTC66OIfZKNEl9bi8PE28MkJvJ5O5gPcfAYZGHCPGuf
MEl8LTY5+PrfdhN6WsCWJR7ELow2PqlJjD+fvQ/h61+7JPYi9h65CtPJ5waKY58zKvHMouF+u/U5
eA6Jp2cdNlvfDKcwHskfosTTMw6Jx+BkG2GTehB7jz3IxHDjyUMsXz3+KrYJPXkwFns9EwqTIkAR
BuPLKAk92UQ+k4lFYeLxUohBKfEhfPKPDgePDmPmcdQysdb0OdG2nqWiQGx97rz9fuPzw228nrqd
F+FzYSWRz7uZbH2+tm2487T6rVh0evx1m8jndWZiVemzu9k+in2Ig8+nvPfNS8J8SfZerxtgfPmE
PkfnIQp9LsSIed2Untk82jCPmzHaRN71ocJ4HFqb2OfR2iSJr7Tbg+8rB49LKhIDceIrq8RECIzv
W7HHVorYPva5JMPIk0e098zHomd4PFhR7PMNiZnY47GO9gfP/kB0YJ41RLzx7fuIVnTwOPxY6LGk
YqEXjz8u8q16hSm98bpPk9jTcxTG4/gT85LPzer3ccLmM/NjPIgo8TlbY8+8I6bQrW8EVRiGwEQI
TOLHeBARosQRosTxfuPNBzC+fLZeL5TC+PI5ePxhAuFZycU70Q98rm/mlZ7E+PLZe2yvRMwOvgAL
hWEeP/rGM+ImYehZZyWhL5okYb5eDQh3XxIm3MHXohTGU2MYut0IGIQ8mwu+bRSBiD01TrYeKz5J
dnvPBsOWeXaMkm3sk/w28Vi+yS7yrCYEYufbK9l7W73EePZL4o3PPkvEOtqz47HZeFZ6W7HkOHgQ
vnU0IDwxXJuDx8LbCrF6Ys12e48HY7sT5rcvHk10CeZDeHbDtgefJbI9RHuf9hTGsw3EwDf07tpI
8rmrdzDeuBH70GMCCvVuvZtJ4SHy7EiJdYtvI0BhfHtSO48xst/6wtz2253HuS6W85GvMSmMp7T7
xLc9xUKP2Xpg23jn3X3aewwesQj2hjpGHh0KhK+sXrfqYRftPXnsfe73gxhPIh/C55rdbHzVDTeh
b9oREN+2crgRGvbHiEoQw4AiDMhXpijxOes329DrFdEg5g1uPXj37vahb8tyH/n84JvDJvZuAYol
r3cP0Nv3NYhhQL4SRbEv6DY8+MY8aKieWVhAIt8mAIv2W98enWjvPsjOF2MZsj1j3k24DfPu4kgQ
AvI1P9fpjXuQ0S7x7lUrkK9YkXf4icQ46O1eCsQwIE8ri/Y75ts5PYi5ylsiCWIYUIQBeRpkLNYG
zLu5ufN2VwXy5JTEO48XP4SVig9yCDf+fcPEO0QfYl9ki5gm9zvPtkMolk7eXa6t3xGvQL59rE3i
CTxhLNztfY1Mg7ybZpH3Yyz2BnuzfezLZQcx5e+u/ZCDb1IRrc93mobtdhtf+LBYOHo/tLfEb37l
73BfL8++ntO8gJOhn06V+P3e5OXlqzqtpZ2xzGbvE/P4FuXYovOo+afhQF9DoZ3SOxxFa8I1JLaG
FJFIVfG1uaclI5KI9amKx62kya0qz0V+akmkRl+Wjy5dVt0+pfc7L7Mf4MDfStpnfnzkRbaCXRWr
SP8l2uGdwszLhtft78cqe/70LtSdrSQTa3pL69e81F1H979AnWGEA5bfIBfZsALol/dvldvH84FD
8i/Nx/Opq7dvVTWR1YczWZXBWR4EPl5WkeWx1Ca45hn/CL+5rqz9vWpyeZD4g212ns9HW60xv2+R
08da3DIzWjYS91Wupr6mx+qVr6cfefGRr1/h4oVmPb+4foBcf4T8WuXZB9ir690dtf+qzZBvkYcY
fdrWfJCcnJUYQzJefsOsvq4YEy0ZFvzcfpOM5HUW3ySntrp/KJ8sr9vn15qfV3ZDY0Zf62+Z2cf1
N80O7KMPZffN2lWX0TcrUf2hXJr2Kf6pxUSfQ325fW3yYwHXgHyzXD/azOaZffsSfryNLLP7JiP3
NNsPN8Bldt9Elm32NS3yy7cYMEVW+uqsrxlPT23+mrb8ozm+qtJ9g+lvyOwm+nLxrUq2cnqoHwL8
FdwH69miP61hN/3Upmqwcs6dZ7O2ATVy6Gru6Qk8U/cTMY93U23eP5CBqgcxh6qQa4Wv8kbSr/d3
In9p7q/nK3v/A3y5zv1QBh+pvl5vrM8AFhzr2fWH2K/rC6+6NDz1sZ4th5P1dDmeSPpwUV2UfZLv
twe39H6Hq7KiLJj80G9AUTjqkr1mDVOMwIX6ewW7e1QviDI6WzHe+DF9ZHn16VRl/CTvDGs+vVb1
MRf/OdbBbvNyvDdBHL9c/8IxDlsqI2R7FOUtff3E4mPeBowJJDwKm97u3dTnoUwzz+UrCSKdHwP9
d5Dec2d6xotcqOspvvtoOArqBOnW68Tk5Wv1woXi6haBc0Kq4x/BqSqbtn6c2qp2Ymsx6KaZB3Iv
dP1EH4MLBHn9ib+LxAb2KgZp/v9QSwMEFAACAAgAZLEKQT+BYxvyrAAAuwcFACYAHAB0bXAvbGF5
b3V0LXRlc3QtcmVzdWx0cy90ZXN0c19ydW4yLnR4dFVUCQAD/IYlUHN+JVB1eAsAAQToAwAABOgD
AACsnVlv47jShu/PX/mgSUitvuwl850GZtKNJHOWK0OWaFtoWTJEOUv/+lOUZFu2KPJlMsCgpzt8
qlTiW9xpJ62KXdoWdSVv0jwv2uJZeG2TVnJdNzsvPZX+tm135T/SEX38q0d2nngWVSu9ovK2aZWX
ojHwq7rJRePVz6JZl/WLgczqqm3qktx5edN66b4wwVJ6zaGk8N/2whRvXjQi6yMvW9FUaSu8hl6g
kQKyGlhvXZSlt6tzQe/c5C9p805zJ6vjo7x6n2ZF+/YuYyejqq7eZ9gWu6LaeOtD1f1c/j1eXIwR
1sT0OeftDmVb7Cmzfoq3dZPuzNllTVRRDe3Fy4Wk/H6jcCtqEcZGczaS25oeUVDmWlvm0CqzRlCO
G7ht0XotxXJu+QBsQE7Bub8n/a8pXr1KbNKuL5JZShV/qPqfGwzVY6uyqAS9biq3BrKrQNVNeRVp
6XW9EYSrHqspckpHCG/EjixyhDUxbUpyO9fjiyizmt5Opuu0mWbjqth4Td2m2hawqvO3Pvq0nKnN
jKLejBpEV5VWag6oSTX107ny84Ak2zdKh/zQqD7hBE7t6t2qHpl1ryr+r0smK9z9rTTy+0Mr8j6Y
aXFT00i0TmlcWKXZz01THygZqHhjZvtRseM8WR+azIiXBTXXvjasrl/E6ic12l0qf9JjXt0M9HB+
2JdFlqpasORA/kY/LrI+VrkVovXKOtU2IrHbt2+GbDkPuKQTDSS55ABjQM79VEYitd1QV1St2Gia
1tlqV0jZDUlNTclSQwEDQ8gZnus4xoR+fDsT8z35/LyjKzlUkiTaN/VeNG2hiXMjKtGQoMPrT8qL
3V4NUPp+oy+c/PhYK5PRnuOo4ZVnbWZJGjTr3S71pNinjUpzA1lU66KiVDKNySPaIefOVvWh9er1
zFh1xtT8d754UqKGy60oNtvW0JeWdbXpxrOrypuAw9Ct7civ28xJK2lDZ8tPop5zldrFnqY6ur7F
ZGV9sXnbWZaGzgO5XhcN9dNHQxtdpkb42Iecf2YPfWozz8wnymk6losyna45hrWIbuE4YffpQc7N
0fbkXE14qC11WG4i5EHuRWVCJkWyUO+aVqI+yGFiVYp1i3DznUsfTdqep+hTpA+V0lMediMthgk6
zM+CSMVb+77OSdEvjMnnOUqGoxxH/Ql6qPp/zE6tXoq83XqHrsmIY9ehpmO1ekK1uSHpaQ7VrXfI
gAa0V/LVlw7Pv9IRNx564OdCvLiaykxtYrhaHdQc3yHeqvZGpWr6Q/2UkKKhZuvnVvPjdswQbbfY
KdM9ZEfcdeIBFtm2KHOvK8RtymK/P/XvgMGp/kTe6d85EPm77N1CvR7iDCb98sTP4UofNKK5SVvQ
Gu2wz0/dnclqn1bf+yfIL2n1nNojo84t+6nSSW3Fidf2GCEt0GULVOOcvdXwtAj7NW+yLw+bQk0q
6VXKQlXBUm3qTMFGrMt+t+dil4L6pW4ufSw0G6rF3DrNhLct8lxUuJ3oF+I09aUx9kiJHHYwbtXD
gtgx9FyIffk2aDaykmazfj12/on3UlD3q1aFZju1vqOOMhe12hBGg1R+L6LzujnysbrMxpNXo8ae
bVUXWBdV627bD0Oudt2CuZfI1VT9d7Eh7mA63gnGzWTxS7wz2FGnyD9g62hqxkePKPC8eV+2ja3U
ikw7IM0YHMd3Qvh7jGw2auugO5LBK64zQXFTP2bpT86zVKD/6vqP/k/1+q1u5B0zXd80jAQX+2eX
BrJYFSW1loteVU0MzkVee2gqeq96vab150a0W/2zT66GAaEYLdtmyH6Q637Q1SGNibreaWQxCmtU
5aa5hc0Yteh3IruIpTfs4r3HFrU5JlY3MeGzsy2jcZ8K77F8EatNeWEpJbvJUpmluTj+fznaf7ko
77e10pOWXRmt5mWxVrukakKTF3J/WjvrALWjuxyte8zMcrQvayGPnQcEq8PTefBlSxm0pHlkdgHV
lcpFGnHFzbDrulQVTzYr9fy0keeOSxmsKfGX502U7t+W4uWa8q98s1FqULMyV3WshZ7TpkjtUb10
u2cjai/FIa9v+tnH9OfdflAp2lbMFhaVmBYd92iW/b+XohS789bBmLwClkW1lEL1snUzpg9V0aqp
ZVk3y+7vk7JSVJt2O1NIlZCRe0rBGaA79bhUvS84NOWU/iWaWp3qpKdpplpuX3rmv7Gb9nbhZWHI
o8wb2pN3e+uJKya45V4WM2/9kntD8ilsjWAMwziG+RgWaDH5RhX8OhfSsZQbS31jqfm5obE0mpSG
ZJGxSJ1SUm7k1Hp04ugoBlFcQ1E6sNArcqkelZqKmdZazRVEaahqDcS91TXEbr2Mh17f9jxR7vp3
zyYcI471XLdC6WrIK4wc9Qg/tTWpoRhEcYjyJ1Skkpf5NM3a9ttTBOoiG3E0OW7VwDCHDYi3ymmt
RsvGFYETzCdvzBsOlsjRdf0n9N5ZwLi3/dUdcCpkkg2JchOGt8pRs6GFyIBtZrkLbIbig7fG4m3E
MZDj2GN9DAvAp4YgF5m5c6VkCMYUZqX4pEVNGX+W8YfgV2ZFfQ+hgsFZadF9xDGQ4yDnY+EFoLsQ
5CIzd66VDMFMwp+peeHPzLzw4RC8GiLmYwq9I7SyQ9TPzoZ9ZLghoJ7w9XUUdFDkFdQhGjqgCcYw
jBsx5Jnx4Gy+05twDOQ4yPlYeIHZ3fktMgTTJ+s1NZ2RTRl/lkmG4FdmCUYYTVoQjGPeTBW7GLDS
ovuIYyDHQQ4ML1B1Mu8OfIuLl7BS87qfGdLdm3kezSH78I1REeUA6bupS0YXdtgR9NoNTcvaF/2c
awKpatrYMY748g1QMQornaF476oxxj6CTLGPMI748g1QMQprLna/d7Uyxj6CTLGPMI748g1QMQpr
Lvagd1UaYx9BpthHGEd8+QaoGIU1F3vYuwIZU+Rnaj7wcIjJUE9R7yYzBRQNboxQ3DuSukXpmSnO
0JyjZGihGDNdjZ6Zwu5oMTQpjJl/2JnhBqawPozfDu0EY2YDIqawOxo6wxJj5h92ZriBKewPG3q4
+Xw9EYamcWLmg+HnhnEdykIhATXnddllTm4sZ14+CeOSmE7RL8t9S3lgLl8X9ig7xhrpS5PudVso
GmjWF1VtqLhVmXX7Sfl0/qDhmD78I5SVc9PnS6zud8QsoW1femdGqKjKCnnmcTln5Q4lElt/+cwe
3sAxkOMg51u5IUVWM1CEyRUZdGC39FrpSqoDWS/ruriVheBWwrcSgZUIrURkJWIrkViJhYbgXbX6
3il/VppqvYIYAnEtRF1S4HvNvvRWq1d9M7+gCjNFDwzMoYfvgPTvl1BQgVdWxz1cbUyXEEMgjkC+
DuKqztU1faEb9y6LmbmYm4t9c3FgLg7NxZG5ODYXJ+bihbGYmauFmauFmauFmauFmauFTY6wxsXS
Iri0KC4tkkuL5tIiurSoLi2yS4vu0iK8tCgvLdJLi/bSIr60qC8t8kulf2Ysj6+nPlfliSZ/1Eb5
vixErk+fUTHTPH1UzDUPD86fI5su5K7K9e77DxnOGA+FTPvkpq7b6+knFaiOPWL9xxG7I3n9e3eY
32PqiglKsTkq6Klit9EPOQMW9pgan+efGB0/TVn2x7Hpxs5ppncsUD8NffpDXavQrF9Yd/ofUF5u
hntOuqjC7pSAlkHqhonX33vRc2p8pvlAx/WfBdViKngaezvsOW30UKSgsIdeWj0TKyYanvcLYzR7
pxqKQ5Q/3elmavOaqLintCFdAMwGcBvg24DABoQ2ILIBsQ1IbMDCArBpHxF1+R3EXlHlotKfEU2h
aXfSXQ+g6ae6QdT3RpqpVweFQeS1r62XlsVwNDehVBsImPdCnZcn93MxXVNsnuJefz/L5u2C0/tT
DY9aO71Bd2FTv2lPnGp7Efe623Xnx16v0NhtQLknu89iruY68gtqpkloGAYwHGCmW7DUKZLlT/Gm
6l7X300IpiUoXVIp5uyPpZNRbygVMkv3Qs6bnwBmAyYD8zXg2zwENiC0vUVk8xDbgGQGKI4tOzMV
M3MxNxf75uLAXByaiyNzcWwuTszFC2MxM9caM9caM9ca09da6KWtajpzmX0uZ5ZyPlvefauSwX9f
zizlNv++pTyYKZ+/FnZZzszlTG+vbhDG3ZcBdF+lc4tRumf5qlnQVFm80sBR6U/3z9R++yZP3CzV
iHLkbKPhKGtoZBmu6xo4anQ0pz40RX9LRodQy6LJ+WluO+MoMt5b9akBnssn9yhvuepaqCWob03Z
D/d2p1R3j4aWf93t9L5X11xoVBBnXpq1xbPXbxlrr1oO3LrODhLgtupzWhYur3cD1y0UitpGcT3V
VYea4XdfI9B9u5GuQvp1qZri9xxNN0xc5O2luqeqPmGl6+qj224l43Ov/3zDjA5Rf5nZP97MTPWT
jaibJBwvl5JmUl9zV1yR6zHSvr/tybzn9nxla7Kbrdasxzviw6cm+1laPUH7VRnvtkLVHdTZs5H+
wabTpwuC6fbiLwiuP3S4YHzNYdoV0ydjboeY/XllpZviaCB/DjoeSBwv2GwsWDO3adz1Xupa76qs
s58vs1vCvm7TG8CYFusvE/fZsB0OhlI9FQaB+uqOuauFGqzfii6snA9ygZlLaHRQ7dfyFokStH/X
DKB0d7o0GMcwf2Z3/goL9PvzqqeSWT23ozQq1m6InYu5udg3Fwe6PTNl1H/ET33Lz9yenaqAoZ8y
U6MPrWmYoB87Q+q1VxvTBtSEmu6InCjqezb9Z/lMvkaU7mDnxNEMbtOImVXwhGIAtZf600wdx0CO
g5wPcgHIhUau2zNcF6+5vrM8cbQy3Bx3Ow3uTpi5lmkZuVm/ztZy3H2EQ310Q30EsMza/u5UjmAM
wziG+RgWYFiIYRGGxRiWYNgCwhimAsNUYJgKDFOBYSowTAWGqcAwFRimAsNU4JgKHFOBYypwTAWO
qcAxFTimAsdU4JgKHFPBx1TwMRV8TAUfU8HHVPAxFXxMBR9TwcdU8DEVAkyFAFMhwFQIMBUCTIUA
UyHAVAgwFQJMhQBTIcRUCDEVQkyFEFMhxFQIMRVCTIUQUyHEVAgxFSJMhQhTIcJUiDAVIkyFCFMh
wlSIMBUiTIUIUyHGVIgxFWJMhRhTIcZUiDEVYkyFGFMhxlSIMRUSTIUEUyHBVEgwFRJMhQRTIcFU
SDAVEkyFBFNhgamwwFRYYCosMBUWmAoLTIUFpsICU2GBqbAYq+DfnL6Qxb95VT+9UT9V38mtvmaC
/fYKcRzkfJRLQTAAuRDkIpCLUW4FggnILUCO3aIgqjFDxWMBDK5gMoPJHCYFSoYwCL8QmmgMzTSW
wGAKk/DrJLA+cAIv0IdzNNU53J0x+NkMfXGO9pEcbWccbWcczV8ew2AKk3BVJjAIu1zAIOrSR5PN
R5PNhwdPePREE8NHE8NHuysfzSAfVdtfwGAKk7DaC7R5BwwG4bkNh0HYpQ+DaBUFAQziLuFah0f7
IIRBOMwQDjOCQfjhaEML0IYWoA0tRLvAEG0TIZrpIZq/IbwwQPMiRDUMYxhExQ5RaSJUmgiVJkKl
iVBpIlSaCF60RTCI1niEihihzStCNYxRDWMOg+hrxz4Mwi4DGIRdhjAIu4QX/nAKxfAeAdwPxAkM
wi7RtEzQtEwYDMKbIxwGYZdopidoZiQxDMJBJjAIu0T1XtzCIPrsBZoZC1TvBariIoBB+G3QXmgR
wSD87BgGYZfwDiScaws41+AFGbu9xUncKcNJ3CnHSdypj5O40wAncachTuJOI5zEncY4iTtNcBJ3
iu/+4y3K4aQAb1H4qQLDWxTjOIk79XESdxrgJO40xEncaYSTuNMYJ3GncIvCzxjgowMGnx0weKOf
wTv9RMLVBJ8KEIk7DXESdxrhJO40xkncaYKTuFM8S/HOHD6eIBJ3ih8R4505fOxBJO7Ux0ncaYCT
uNMQJ3GnEU7iTmOcxJ0mOIk7XeAkfvPgFidxpwwncaccJ3Gn+K0PvEUF+A2RMMVR/PkR7hVvKEGM
e8VbCnx+w+ADHCLhx8OHPQw+7WHwcQ+Dz3sYfODDQvw2D558IZ58IXxsSCh8mQk+niISDzXCQ4VH
iRBOaPjYi8HnXgw++GLwqRKRcJ7A50pE4k4TnMSd4pUPX7xg8NkWkQ5OVzia4Sjc9mI4p2KOvxU+
Rsc+7hUfpOMA94rPe2O8T8VP7wjFdcVvXuItED/CY/AZHoOP5ojEr3Ti7Qo+yGPw+RyDj91Ygqdf
gqdfgl8kTvCbxAl+lTgJ1h2a17sb+by5KcWzKIncp+325lPbNsXq0IrlfZ0L+RsBELgkj5UB/9J/
GZTN65fz785d3r3uGyFl94u0IYNvXzFum8rfRdoeGrH0nS3Ebt++OVtVh7LEjAr5eNir7w8SORrd
2MQhvLGZOb67/rfn2sT70dSZEqzaLL9Vsm0O3e8yt1k9iVer5//8oD/vntPykFJaf0lle8tQepk1
JII4Z9Py2/2/Pv3x7evy7j8/Hu4eH799v1/ePTy839/9pz/vHn98+nKn3Cw/EtmVJ/4BT4/vt61q
d/P7xwch6/JZNMvUlEo247zODirXPu5hSFrYkej/Jj6aHic/F2K+w/z70/Lxrx8/vj883X19n4un
//5458P//fD9/v+XX79/+evPu/un9/lwlnJiCUp4ztz3V57Gh3sdaJyglWAwxWph1ALKuv552N+n
O9H9avq/Hr4tK/Ur7fOdbLOPuTlY27bZAb3lunj9kAuaaFjsyfpQtmj2D/SqrkuRVv+iyhfLdVpK
8Q47GvNAs6IimYv8WysalfuPrVL80/1/u6g/6OKv++8PX+8eKPHvv3+9+6jHz9+//3H36f6jbn7/
9vD4tPw7A7v/68/Pdw8f9XIR0benu4dPT9//XqeP959+PP6TOqQPOn18evhGHdIHvVwlx9/1xldu
3/POnT9xr6aDxyH48enTk0MbLoaQOh8ffc3qsFuJpmvXmEHT/e/pbQ/yaqJcCjXz7TuPDzXda2cf
am6ySvdyW7ck8c6Qy8hw4Oix+x73d7g0pd+y+xUlf7dT93f/Q1SbdvvhvuHK3ccbHq3UKHkuE73f
NuhM+E1WN+Kmn2efVv33j+oiXPcZfhP/dZjDqLtoMKyakLoQaDDYZksCi7YQshG7+llUNEXIqf3v
KslQSylaF7OOraiF7dL90Aeq38pityOT41xu3aQb9f9KLcLL4tcHrbndmnpntYPiXksnU5dqInaU
Iupenx6mP6tW3hwVv1P/HJb1ZouOfEqbjcD4YXGr/uHEcgfWd2ADBza0sOp7UtM222Jvd0lzJ9p3
ogMn2u0tIyc6dqITJ3rhQltbwiXtpCVz0pLZtCyqosUy6kxymMSfHsBkCJOz2dP9/Z9Pf/7xqcq2
dTMsuedrYIbnjrzvyAeOfOjIu9ZP7MgnjvzCjZ9vZTO8o77MUV/mqC8D9N3vS9E65OcFzx1535F3
jT905CNHPnbkE0d+4cYj+XnBA/rSfMEhG0Y0d6J9JzpwokMnOnKiYyfarv/nB7y2P6dSvI/mEP17
XbVu/scW7s+w58DnOn9ziGhEcyfaLZLAiQ6d6MiJjp3oxIleuNBATzSmnbQERsnPh7atK4dMueBd
/fuOfODIh4585MjHjrw9b77UpbohQqt7oPJHMHeBfRc4cIFDFzhygWMX2KmeFw4w0DpHsIuCQNv8
WjTd5SGHjvxr8ewAq98a7IAfdxAdUI6jPo4GOBriaIyjCY4uYBTItROKS8BwCRguAcMlYLgELIJR
jr8Wx1+L46/F8dfiDq9lT0K8weKjND4+4yMzPibjozE+DuMjMD5rw2ds+GwNn6nhOxn4HsaRhDVi
sEYM1ojBGjFYIw5rxGGNOKwRhzXisEb8f7W9WZvjtq42en/+ynmULslT1WXSSfbKd5Kd7HTWXmt9
N/XIFm0rLUuOhhry6w8BkBo52qyLpF3iC4jiAIIgCDj3UeLcR+7SJnHuo8S5j1bOfbRy7qOVcx+t
nPto5dxHK+c+Wjn30cq5j1bOfbRy7qO1cx+tnfto7dxHa+c+Wjv30dq5j9bOfbR27qO1cx+tnfto
49xHG+c+2jj30ca5jzbOfbRx7qONcx9tnPto49xHG+c+2jr30da5j7bOfbR17qOtcx9tnfto69xH
W+c+2jr30da5j3bOfbRz7qOdcx/tnPto59xHO+c+2jn30c65j3bOfbRz7qNH5z56dO6jR+c+enTu
o0fnPnp07qNH5z56dO6jR+c+enTuoyfnPnpy7qMn5z56cu6jJ+c+enLuoyfnPnpy7qMn5z568tjD
um9i3S0NsbupIXa3NcTuxobY3doQu5sbYnd7Q+xucIg9LA4+Jgf33vIwOnhYHTzMDh52Bw/Dg4fl
wcP04G57iN2ND3HiYSFy7y13+0PsboCI3S0QsbsJIna3QcTuRojY3QoRu5shYnc7RLzyMOi595a7
KSJ2t0XE7saI2N0aEbubI2J3e0TsbpCI3S0SsbtJIl572F/de8vBKvFjzorsi4/H2ZzC/pF+fix+
Pix+/is/VvXFpyYDOvFC+9Vk7YXeeKG3XuidF/rRC/3kg3ZQTX6s04uH+9UEnvjBV37wtR984wff
+sF3fvBHN7ifxJhR2Fv/Hx5eeAPWh+/KA2vvz3+wNPOoMUfn5elmgsSXYOVLsPYl2PgS2EfxP/gP
9yb6yVMc/OQpD37yFAg/eUqEnzxFwk+eMuEnT6Hwk6dUmOKf/PAO0n6Kd+jfS3ryGQ5jeOIHX/nB
137wjR986wff+cEf/eBPXnCXUTCG+/Wqg1nip/LaeSxrE7gn95UffO0H3/jBt37wnR/80Q/+5AV3
GTNjuF+veo6Z2K9XY79ejf16Nfbr1divV2O/Xo39ejXx69XEr1cdTF4/NT+VGXvzkAVTAu832EfO
zz+512bA2ivyc7pnHnrWBO7JfeUHt0+Pn9mJlR6K9xSfeOJXnniH+uflV4/aj9CJF3rlhfar98YL
vfVC77zQj15ou0T6Jb26d84IbO+bX1jZebBmbXobOvFCr7zQ9lHyS+UxNUfgxAe88gHb6/zrz16X
FybwxA9ur/mv+z/Zwac2E3ziifetz9oTv/HEbz3xO0/8oyf+yQ/voJlO8Z79G3v2b+zZv7Fn/8ae
/Rt79m/s2b+xZ//Gnv3roKP+em3/q646j1VkTpG4UOQ+Ny2neF/+K0/82hO/8cRvPfE7T/yjJ/7J
Ed94XdBc0iQ30KxuoFnfQLO5gWZ7A429L39L6/RUp9ez+/QAksuN8MQPvvKD27vit9rD4Pk/XdXe
Crd/6JdDnV89NJcp3pf/yhO/9sRvPPFbT7x9JH/BgP8e7TnBJ574lSd+7YnfeOK3nnjf9nz0xD/5
4R00wSnes39jz/6NPfs39uzf2LN/Y8/+jT37N/bs39izfx00wS/te+EhbSfwxA9u79w/0n3BPqee
iiNRsaK4gyTxJ1n5k6z9STb+JFt/kp0/yaM/yZM3iYOAWpD4937s3/uxf+/H/r0f+/d+7N/7sX/v
x/69H/v3fuLf+4l/7yf+vZ/4937i3/uJf+8n/r2f+Pd+4t/7iX/vr1x7v/IW/JW33K+8xX7lLfUr
b6Ffecv8ylvkV94Sv/IW+JW3vK+8xX3lK+09B5XniPIcTp5jyXMgeY4izyHkOX48B4/nyPEcNreN
mdivV2O/Xo39ejX269XYr1djv16N/Xo18evVxK9XE79eTfx6NfHr1cSvVxO/Xk38ejXx69XEr1dX
fr268uvVlV+vrvx6deXXqyu/Xl359erKr1dXfr268uvVtWOv/l69ei6tI4rEm2LlTbH2pth4U2y9
KXbeFI/eFE++FLF3n8fefR5793ns3eexd5/H3n0ee/d57N3nsXefx959nnj3ueuy/IXOzzylw4wq
uYlqdRPV+iaqzU1U25uodjdRPd5E9XQLlasEmVHdNDbim8ZGfNPYiG8aG/FNYyO+aWzEN42N+Kax
Ed80NpKbxsZt0ia5aWwkN42N5Kaxkdw0NpKbxkZy09hIbhobyU1jY3XT2HDZSrC31i+1xZwi8aZY
eVOsvSk23hRbb4qdN8WjN8WTL4XLCjOj8O7z2LvPY+8+j7373GU1yVsfS+c//ZyQ/+nuhJxiNiIL
TwFy4rRyAa1dQBsXkHmypLxTbN8GkMQOWdkh5q/apw07Vtb+21fZuw2CuR/cQIkLaOUCWruANi6g
rQto5wJ6dAGZJVcGyQksbZlVBwvinDY/srTtauYOTFyBK1fg2hW4cQWau6pC92fLFwtQ4gJauYDW
LqCNC2jnAnp0AT05gCwLogC5NGbs0pixS2PGLo1pWc9a0Pcsg4AwiQNm5YBZO2C2DpidA+bRAfNk
x1g6nzAO7ePSF7HDd8UO3xU7fFfi8F2Jw9hIHL49cRgbicPYSBzaMHEYP4lDOycO7Zw4tPPKoZ1X
Du28cmjnlUM7rxzaeeXQziuHdl45tPPKoZ1XDu28dmjntUM7rx3aee3QzmuHdl47tPPaoZ3XDu28
dmjntUM7bxzaeePQzhuHdu5Dx0NG87w8fcrh7v+nA1fa2yhto/bMIpadWFQdowPX0PmuCZBA+o0r
HRap0Fn+Eh3zummjwzkvsqjuCuaJbvn2EjYYKgJZUax4mpesjl7z9hy9VnUWvdbpNaLU8Sra/AJk
l2vV5GCriQ4FS+trzQClxJcNq1vkeuVPo+aaHuBbjBWs0Ks4uqa8nbprlFWvpQo2Lo+aQ10VRaPG
NQ1+G+Pbvwj+KquMJe7QlTvUjoQPNyBbFhW8S/a8ab7ydmqrCBJT52lRvEfnPMuYuemIAyAiVkKo
LOpazojVh3Na8hYr2Su8QUVd82mQFhGNVj5CL13R5gB2GeN6Yu3QlSRT5hHveyyPXvjYyQ/w7X7U
1ApO1PDQ84WSxOUtNCwj3o046/Mj9m5E3ZtiJ0FbZSLHlks7+7I0DZclr6u87hY1DH63VX1fPV9y
9nqtuAywTeeGS5LDmYsyxoXYoU4bGLZRxpr8VF40E6bBKxQRb32SRKIbL6w9V5magHdyWnSjQZby
T8s4n5Z5EByr+jWtbyBs36+GCWEiMvYjXN6IxATPuhomvuIlOGL3Fa/4p93TZqMtfIzXmyg2Fyfm
4pW2OH7artcG7lSuZ7962m0fd/ry9cNum2x3kR2xsiH05ck6SZ5Whq8QCH35dhU/mb5iu44fVgb6
3Xr9wHea2vLHB95Ka0P5+mG7Nbz/KUl2fJeqL189PD1uTS0gEIkVYfjKp/V6t3swvoUQpresdxBJ
W1/++LQztNTm4WG72z0ZypNHXgdD+Sp5eNoYyreb7YOpfBc/7EwzQiBM5RveTKbyx93K8IXxas05
GMo32/VDbOilTbLebOInU/lutTbQrx53m51+tG/Wu8dk82Aof3zY8X2jtnyTxMnK0Ifbh3jzaJrv
m+12kzwZvnC3jTcr00iWCEM/7/ikftoZeRBCz4N/yON2o59x6UuV8+W3ur7DGgInC6RB7tPD11Nd
dWWmJd2nWXQtuH5/roqM1XpcUR2+0paA1Q3XRw+sadL6XUtwKPIr/ooOXdNWl+/TNtWDZ+og35wY
mkOBNmCv79gOTQHKCTYL6w5mPCkyhH1r67RkVddwjaqt833XMgdiMyTLG97m73zLVlqYMTrco7rw
7z4W+aHFTu67lj8uuL53rKsLbiPNDHNUgWlrg1qbGV52oKWduU554JuRxgwm3XqfZ7kL7lhUaesC
hMEw3s+YaWrWVMULa6KuLiz1bVqup6VFBbsdiBfq0nVzGjMa93SzqYjdZSF7raLhGWqSDZ/WtN3/
aqaFt1UdKPuXC9dHad5aPgyHe3qAKQ1jq5+6MGfp7QZalrbsl7T+yncJfGDxjdU3bxpoR/ua6OFB
LwwzfCWfcs2R8Z1Byy5NlPHdDf9fdeU7mtYgcsy0x9wwN8ykTQvKuRcxDairH5UR+4eE8v0GdsyJ
/tUToZQ5sIwjS1bnBydBP1C5o9/FMOPjrbnyWurhFZd5La5UUVf2i0iEW6HGIPLNhHoy6ELcK0I3
iklu2gXraWFjdg8DOmK7gQNSZ4yv00cIhO0AzhHIJeGRC8OzZfKPyHDryheI5uX0Df/PBa3e3yoJ
4PzdAXapspwvTA2aHhzwbRXhTOLi3gHNUVhnRyiKbhxjZgLqVt506R5k775Iy68u3UV0/BPmKg1n
lTvQkymFz1UdIwO5EInY20YU9jQK7vTwV5fzMWVtEuzu8qsZQQbPF15bzjDPGDsewS5kG65aSmca
B6BcRamB86rU0mAbYmegQc7S7IimqQM/G7HqGvGNNA6hMQ5epcfzNYGmA34FF81gjeNf5UWAxVqK
nIvfGjzh+HegWmb+YvmxYCCMLSicbmPlmP/x4kLzkjf5Pi/yVtrbDUR4tgHnLy19Q1uZJYLCDG/8
kCV65YXWb/kvrOa49MhphA3TUBEFOPEAW6BgWo4dMIkDZuWAWTtgNg4Y1FP+gpBmLmC+STJtegYk
rG1O32pcBAcYLQKJK9KC43uWunX/dIIba1qyBlYdZNnQFKQFwqQK6IjM21AxLbikpN0ubhtBGvI9
rzzRZHryqhydrgHIsp9Z4LVIlMZ/V9XFgABO64fVZrt+5J/5Zkc+gonbCfm027kgaU4LSU0nDsKm
YCPkbd2kcIz5N7NB+6MmOCONjlVRVK/Q0+/yxW6v3LNjVeN6gtsIG7ofzwZJtIAm7tCVO5Ra2WGG
LSl5ww3Hd3ge6E4sGuyW9+K6d1u7zElXt5Oubya1EB5gIIIqU9uQYm0kvQA9GKSbRPM1vw59Y2NT
dSCyxzLutj5CFZXvpIt3/r+DDX2GfaHQ+RsLFluQ3OnNGs8IPvoQUs7kWTJ4uEdmU9aIjXBdYUVh
HWgzvAVN0gWdJhqjXUkJT/zgKz/42g++8YNv/eA7P/ijH/zJCx4/WOFN69SbCEvcYCs3mK3XLml7
EDYBhypO0baallWD4WGNe/IZFD3eZn5vWrSF6cjiZ/FE6PGwg+GaUlnB0ZAzvGvQjol+IMZDkOEE
wN7WhLK1cc0u1Qu6WpjtK4SWGpA4Eor94La6kJizf5nEufJbOeFAvNrWDKu9fgJL3GArN9jaDbZx
g23dYDs32KMb7MkJZpWHAubWC7FbL8RuvRC79ULs1guxWy/Ebr0Qu/VC7NQL4Oeb7mHf4TreJxSJ
N4VT+1sMliPkYKqOEk/8yhO/9sRv/PAWdFfWXJNgNVezaQWx4NE2CHZulxUQa8FZd2WWcgXXpT7S
VAyqv+mUUKDRgyJb7Gz4Kui8RXizLfiwvLHLFayhYPE4plzQ4wl0ZDN2Smo6rbLCYDRbQehrAHbo
/IXcKaKlK/OYrGZcO3iBjua9LA7+jfuMmvZMdAYpuiEyzGE4xPjawEkTeOAaFvWaoUZEGx6+D8Qf
qEBMhiFaPczHFkLXke4c+lc2FzC+9adQFhyNB5O8muISR9wKDqbBD5z33jlvGd4AcKV1xK0dcRtH
3NYRt3PE6RcXkmq9w01jBmZ9r1/QS0KP7vZ0cAu9X+JZlL5feZ+0h7Rh0dPG8EUoWe1nWHymVagS
zgZ5Y6DoR/9+NjPpWKVl6Ib+CaQOOl3DY/lUXH0pWAtmM8XMmfNo8oP4c/EZU+gxLzNhjbt0rRP8
Czp3DK0EB1DQGJmZcPQBdVvYP2JCgSJxD/bshQvdlKrGoyEutXG0cQGHn4RWw4KVp9b4SqjX5LWT
YnuVgX5oFiu8Pad5dOjqhvOG0bO0+MI4+7R+2Dytk4Vb5qQsUZZtV7uNimqz2j2udytVyXbzuEt2
qpLd6nG3fVSUVPX1nJa9dtF/erTvTqvkUVNzO1VyE9XqJqq1gorP1ao/4mvTw1mHaa5FLjy1lnee
lDChNfFOn19AG8GXqtRQ2L7jRbPFQiYQuOAemoZv8asrq7leAxNAPNczxsUbTiFQ427PrBQ0BrQ4
FKY1XagiUDWQ3eD4qpgFSA//E63b8MkGJHgnRAc9VJd9Dn0o7M9qYaDF62CO3FyY/IvLKB1iepPG
+jrTxZsBJdyWeiFH5+JaNF9+SrIeKZ0u5khd6SVvmisrQNdpdBihusMAoptyeYPuaHyc1KY6CmWO
Ggm01LoZz1onsldDN8ynzZHX81PacWHMmvxvNvopbhSOTF5zLC6y6qK2q8uoOh6j4dkIOHi2Np+m
NRmXpGV+SeFopHk5RSlXvtPmqwY6dm0u8utow2KCQhnvKNhE5pdrMdk0GOnyooj+ZnWFh9fj+W2i
ysszq3NxAgJy105SsPQrOmmhH2dVS3dPBxo7sKrzE4zGqmqnh60mov6kK/bAXtO66be5ThT4pxMJ
F8IsRdfla4djZRDtJrLmXNVc+eC/Zq7WX2DkG5mcPot70exzdX3XoeBCBfrQpoOvHSxF6QkfcPUM
Gl5LDV4kXFBkedeIVXM8ki6GDjaSaojkTW8WnfPTueD/obzKS74e5TqiE7wDN9Gugw8mMBf8b8YP
QFBfIR0I7hzDjB09lK7kHhROo4b32QG8xEDNl0eZ5vkyNhbQnV3+zSOAhgxn4ng2iOHCJ0TiT6Kh
GPS/+XUQHYFV+KIkHM+tmbAHG4u4DJRmmYhesBCaIxSsk6R1ZbSJ4QIEWh0vzFdvrDFSCzDOa6za
a57BTRh4rYZEqotYM7GI9h1neheuk3BAdeJzjrOoj0X1usAS31u/SvjDIJOaCYEtiDQkRfrO66N7
oZpG+PNx5ej9AleXFC2DhMnNlAvCksFQfYEjzxqWIvIio0VgeMrKTE9JJALJhdWJq1vgy1xHXOk/
zKaoI+mCRLCKzgwlY8Ya/icae8dNrGkdD+Il7awpxM0cbNLJxx7S4nA7Nd+030xsJaRmvoFkPjrA
X8zIprtmKZyf59m1ysHP+wheK9IoaZpi6CA410QnJYm2ZKUtWWtLNtqSrbZkpy151JY86Urk8aGi
RNsGsbYNYm0bxNo2iLVtEGvbINa2Qaxtg1jbBom2DRJtGyTaNki0bZBo2yDRtkGi/dJE+z0r7fes
tN+z0n7PSvs9K+33rHTfs47Xm81q89kw+fA+cloemBTcctnmKlraehLB5buDnUgl90YYkBr4pxA4
LNOg9yKwEoUmSVxQGox8kXjvUFVohoK9cT1UR1mkFzgkrHGVGV2UVSChlvKAoa1QQWIoLEWgKBSX
QGHkABbmXPsSNC6C2XnfVEUHrjZibzfb1S1ohFUtiyb3BDUk2XuZXvJD1JXUYNeaHWkMaAj621Jo
tAONrRARq0xNxr/zGTSu5z3j+t0zPmx02GnPGVG8zeFLkWtUtWe+Fjvw5msh/TijMXV0hGwjuIIz
lQ1tV0t0aFQyx6cHfpQlnjzle1iuk9tJV7eTbm4nvaWpxvRGSj6PcCcjdMjhLFyHR9MO3XnAzQPt
aVz6U25iZBCyuUgwzq6BBdhhm4WJYw5tKOoR2c/RNlsXXngzGK//gqxy+fIpHPvnVAtX+8GhRkeL
kl2qr+eqE/u9wcNRSwhx+PISriTKmw9CD/UjSfxJVv4kazUJ/2j6ds23QmddGfUwqfD21YBLqrob
rcFgOoDGFdNtuD0OR7aHnmESlp0jt8XUHm3zTCPPysdZxMw5ie03Mll85GJRTj6Eawimx/yNZWHr
OWVp5YiLJphsX3Ptcs5H/18dY3zq13mJLlMUX8e4mvcmSbE4W6dEmdY1l8x0ZAhKmw432zmbNE5x
+wQhBn2FYN9KG893eCEv8QHrsFW/Xoz0bcNALyvsENEKZOnis4331sE0QixkWioUg6TwXnhTmla/
8XfQa3qbD4Q8aSAY7LFh2vFgpXegmwq3qSyjGZAE4eLMZDwTFwLCt0YOzG7iNZUI99RKxcmBUQuR
LW3gyU5FqBwzdU1DPVx6dZhg4BuZgx1XCk5wP66aSG8e01MkrhRULY9XSALdG2pWkAx0Ed/DocgJ
Z3t+jcA9t81PU1+zJaFK3ts36wMZ31kaZQptVuFj3qtOp+7K0LToQmUDk4VE2EpJzKjXh9F6NLyh
LpRmUj028cCuPLBrD+zGA7t1xk6n+mzVhuPf0WHcp/npLbTi5B6WO5nna5LbXpN4vmYFq1QBgYT5
pPN92eq2Oq4867i+p47r2+q49qzj5p46bm6r48azjtt76ri9rY5bzzru7qnj7rY67jzr+Hjbax49
X/N022ue/F4TP9z0mulJFEVP+fRwfZORVPiWmExYpAubwYpSCC05VxOmRU+ptixWkuE+Et1USCt7
F+49fM3l2r0HhQpK7jtpCakA8nTuNjVFkSeZ8CvTw0DHSIzF+kL6stmio0BM3I5s4KIqT+B7ZcPx
FmvwpJ6vuMwGri78M+n0oylmqp4Sj70Vkb2OfMEcScipStjEeo2gqG8gdyOxocgHzo6Ct+/fZV85
f3ZdtaAr9k6INjx2lyc8i6Q7mRvcjqrTy94FCPZNuL23MAMo0TCywCbegF9B6cAeCSrwGHZlb50+
TdXV9vHd1t3l2lhn5AW12LS4nlM9SHgTHvL6YJqIEkbbnwijvjmgRWO2jRWb5ccjq4dz3geTYBI0
fLmBXZEHMnFGrqzIcweuUQvHRCVWSJS5C5kGC5PZJh4EWOF/q8S5SSYBRtdQKUtgy3x1eQUeNYtH
Dl0ygSd+8JUffK2HN+c0q14jrk2CNLRMKBGXFttSj6Lxq/BRm8B+x3d9WxRfkCn/8bmqS42iM6ao
D42hdQn0fdqcWeYKS9xgKzfY2g22scGqtnX5BIIlbrCVG2ztBnP8hK0V1lEmTSdY4gZbucHWbrCN
G8zxS3dusEc32JMF9l8o0K3NK2C25v0JhLOV2U/kXf957nutgP6Kct7K8fc8O9k/4kvF3+qISpxQ
KyeUahgNC7q4FaPdx4lgaXG/2dOvqmId1e7QopEV7wZyHxIFlhSu6WJBa0rihXYDK1D96eB4KVLg
RDy5EQ6SCejAXYtNgIrk8iRjhqJzMDxQ0/Yi3CQ2KQrj8sRSvrKUry3lKtEmti1jnVuBIvu9fli/
sv1XuKGj2T6DXjWz+YpHyfLRavlovXy0WT7aLh/tlo8el4+eFo8m5hzxaFn7eFn7eFn7eFn7eFn7
eFn7eFF7OpHGdAjoznN4/8wfz1H98BSHakqMPHCb7WJmUPBaPcxdyoenifLppAlwW8R3pVXdjP+A
uzjHrlzcrxdE1decNZ/gPmxBodoPaQm3iyNRNAY388uX9CRZPFktnqwXTzaLJ9vFk93iyePsyecv
X36r8wveBvhfzI/H3g4M04TOq/4LuVz8jGddf7CmnZX/X1ZXv9LVrZ/htL9JbIBZeX/ATJceUPzN
LnMI96jRWWM9VecnfMQqgQ5Q6HubuCJ1uGtFx8xwjZOLK/XrD3mWRFe+NBSqkvkzDItPgXjPMNbl
BfVR4sE5ycShi5NSICDwtFlc/EX89Sp8TfjgvDYRGkfzMuMrcjvRhBDcXIEXRvGQls6Zm8oCJra7
6Bq76FRcbiLprwP+VgXcAl5e6EN0C8FansFeyXk9Y2TGBaStFRtsWYTJn8T1bdBvGPjjSK/lspLv
nd8/1JALZ8zbGQhCTLdjwlEkqFE0AiMY8pXcWiP2xmXf7eTn9ytcsb+ZHiN43kxdM4hdAjNfnKdX
KGy/nWb9MnEA0ez4+q6tUGNSTCnL9XcVBPu2MYC6GoTJ/GboDEV6sbhC3bCuLvTYspJ3teerVqO+
BL482NAh+ZyG4xJTuwwXvsWt5khRWYy7/EX0za/l5ypjPygFA81jVmb9lHSYOnimBDK1Jp/a+ZXJ
Obw6oXkU9kVDbPNRsTgDogRv/YWOiSvwCLg4PxuVLVKZqQEY98CKwvxvjhxpWRmHJZrjhH7FW6q/
EGgETrcYRmgfGUbZWbNDEpmeGy78yvOrRkMD290IFoRCJIHvj/M0BKCFiBTe1Sg7tbFieEdyejd2
VEz2RbRYLgBv0qCZ9gkrFDsPCc3/lrkDIR5LIy5k4U0bmUlgIOhO68ftw+CbN741mlVMhkChQBg6
9WbBZXwDWlI3BvK25aNFOd4P6eEM1/3PjIHfXgOxSZSjlGsmKFmoHZe+hmIH21K4PWc6E3jmOuj2
hqUvsw45KKl+b1jQzcGN+qwPC8/s8BXqx5cGCFIjZOQCBf3aC1AIxZIf4GoTuA+osaSN8q1NL04h
ZKcqkgMSofsu+eYtr9sQQqyaeB5MO/s+j9AUBek7VAy46vvfEPBhnBHn967QDC+U6oeKr7HzYAzD
HRclzTLCxlCGcSeUJYsLkVR0wRVDpBuAlJ0wHvibWV2mhRN6CYJNiEwvoO4NUSZ1UXVpwXcaHa4h
MMDguKvES+JTp0o1Ba9pKtPas3ECHT2NqExaFO/g98wyHwLaFnmRiEseNhJUJmwgPj+ZDXOhELJc
hRQWJzQR2MnEFQUbrqymmVb1SLQqzgOE6uFkdLTAv1/O1L7gX5zBZxE6Qw366aKaT3BPskOnpc/K
+duVrcI3GMvk1VdKYizDG2IoMC6CMoXwkBR9SB1KnMHXObyEqdDBe5K8pON2jNi/aH3MtPosVMNn
XDHH/lmIaZr4WURbe6bFHWIfP6v3tPy/JGrem5ZdMJ9HsyxfQeAbLs2jJFEVlopYLJNCZUfLwrb6
ygXBJDCzHqQSPoDBN2DEPlijIWxRqvpQ/MAjQGutHG8gbeuV64hNlOjLFCVf2TvFrlMabSYIsdpp
Xj+DYQhTZzS9/PdO1U4DtivZ25XMQkuFcxRjEVJwzsS1iu9gjWDsyqUBGWdNQNVqiOXtFKP97AVy
icH0hKgfaspU/lKiHKL6isiS/X5B7i7maBIKmAvnTamjZvwTKIlzzXeZVUlZxJWftoRCAOwjBn2k
TZU4X5n6HiEpO6ZcuGPqbYyTOQpLPAJRGELd8M8Y3wYccJE9gscPbBhGIZfgDh2YSA98+XlbHB0p
GAC9yc6RsRdwpxpb++aIYxnJT8M2VgmBIV0k9BfendFDSjZNhSZSLyqbI395vhZd81ymL8+wi9k9
7eb29awD7TZt2bD9BOsttDAJi3QhDPQkc6AwJAl1+1CkTaOByGs0GpW8h+EnD3arvzpWz0c0GTzQ
1bddmuGpFNM4gYVo5lo0IJb57WcAEVcAN4KKtifQEHFPrY4QargBTSpzcxExazXAkf/xuBp30KoI
DL1GAOWiJ4qW9iEqENoeBdXTNRt6F/2RzpdAkaBv38EZvZq6rtEBmWzo4HA/B7yJ/RDOxZe0zpfD
G3M5oh1UDIF64v9GED586M6mqhoYwRtvSiNmUQqtLmwQ4hViEuclxld1JjAADb03iac9D5Om/p4R
AcFgc41juq6Kxk7Et/B5i8aqDBMMy8RJPoQm2DgatBoxmid4jmTE0nXTY//bCjYBrK8b+VkKl0dr
syxJRD4kG6FSt5kgrnCY26WKJXoaMJ5BjLeucABS+ADVLnYCRNvPUhWaYr6Kq5BcDsz8UhdYSswq
swFYW2bIv6xGQXuLgIW0CvW+Qno8VoGLoYqi/ktb4TT+oTO5EsgbArLBmuc72ORogNBVTFr/rrxL
xI5qBK64RhhhOgGaVMtOGxC4HceqvtYY2BlDjEpzsQOdHiLt5qrNpgKmNK8rcCqlD9cC3Fehuj0L
hTxFYJ7xrs4VsWjVQD1gpBUaQBi2A76gK3PMCFqrBH9PIH5dcr6PAWJYoRXtJ+EQKIXL41SlvY1R
eEjNG/CrFoP2mwLUjAYujzN9ywxhJtLDQsNXwvjX5C5IbBoKs+jWWgMlF1KtvMmgfxPXdkuYbVoA
8TEUw4EjU531DaCmPmgO8EeYlxMKBhwZqPXooe9le2YQMWFfwXEFrKYHLdq4tR7DMMlTRt1ugHUY
LR6bFY1NhnGBUFp0a17f2gB9Jf0V/R9MzfTKxYK2kCJYgdnqK3tXo3Aa7bucj5KyMUDEWZwBcc35
rmaUhFcJGmKD1unhK18OT516xvX7rmudV7ViycKdZr/1v+RvmsPrGVC0K9hEjUBlIZxEao5EAfAL
A5v/zE0Nz2aVS/NAMXVJZBgiHXbzRtpn2UTPJddUlV2DFeZyAgNmqHXYE2t/BPUOXb9+rOp/losW
5JDfxKvIQYzqaUPN/fMAk/fp2ug8UFWjc4wnQuKURrpnzEHYjZxNQ/4kXOO4LCBvn+m2ZvN9foLD
z7nfK6LI4+qA522Q0kldjj5acE50wBNMI0hlaiVE0+01u38qJ5eWeVFTKFUE/jxVF0A2OTJggWVQ
f4yTQ0YC0qfkGdOob5QHWEaSOfZUYqJ4UPHgCG9eTO4IrO29x9QKxwKnLMdz+0ixcmHxH3nBhOPh
ohgsQBG5G6AOgIahslJ3hoAjpmanmuElwyiON08Paihp0gZmz3Dy8Kz25entU9GfTX/wOsf0GvfI
JsyXODzRdcHWqeilBZgSQgsvF4rOXrP0qxo34qgzq2G2Yt6VaX04j3VzHUTs+Kqiu5RKWUFdhme+
/aqnh6AeuCgm16SRiyT/EOzYaA8RqFi7EHWSRhwz9UuVuoaEna6l0UghNxBxEaac4bJ8PBrpO5d7
KInF2IjoUEvbKLX75QIt0rSMvOf+6lipaGWiE966MvWGwhrfI7n2I+zmpk8cb/oWaqsEYQOoPHcE
gLamqEQuD41UmJUdM0PAeZbuyHfwAXWnUWJnHm+9kXgJhmuTg86iGmOEwcWTb7DxKMKAK7vLHnQa
dOzjb70qUSSE+d8KaYL2Sg+ToBavx+HtZwyIoYUYbAgjFMns5pzWSwGFMAeTBNpF/++voCmpjrML
rkYe3iOZ6WRxdQgx6JE+2OjQYrE4eB+buzOQVhecVHtUnS9p/a7af09s5DBOVCrdGKRRe8cQRTKO
OUSRZGgGUZRwKdyf0ht8ZGHvHqUFetK0E00mdkYmzsiVM3LtjNyokDLPJc52FQCuyIE71pml2aJc
qMZyoJaVcor3MMp/jT4LCoiwMC2KKO2f6jQTZdkz7lbUyl1RndDtsl9D+cIL/nvLdeySlu/kRtCY
HaJk9oyqpVPf+tKrMCpvLQNcqQHLAJ9VUaS8VWXgPT4/hni8C7TOdVQUt9VVVkDtooWHSRjRAtRk
raPvJeU1fjPfV0LYW2Q/1wWUmLa4w9acJ49gioPEnkpZiHY5POCMGKwd84SnMyQu87yB9IXNoWas
/J5d2/NvXO5CSqtyqeTAUbfD98vYo0IRuqYlKitgV0Z7szt+gWxEwH3NCK6y/PgedalYltGS/mf6
kiqPI/l4kTrUfPr1904LpnKC6ot1DkIiUu00KS58nDqk5ZhErldLH9hBRWzUtLhyimCbqpMlAcO1
BL98Hp9hDOqK4UxDsUcVMNpoUK4IMbEzxRVSpAANUHcCXFI4a0izCZ3LDl+FQ/d86PctrpnwQzn6
5qKXLbtqQaW+RPZxCs2QXrTACvKEmT2JBnBXgl6hdEgXmqLc05PXXOIAmkHQa9GqtNGNabs2JvUs
1VGmTNT7DJay5llZGXnXGjxlqPfBjbgxwWSGVA1GeAmz4tjniJDH8AqwXu2REJE8IC9As1TfY5BQ
VLhbrZ+ShFHs65+XK35/IVezxRM7ezCiiPzjtQahWxdhYLBIEXFLbxIlEhmfDRTa/uqoHt7mF4xs
a1ot+0E6cyDXwRq4J8FbB+csnsyBlE8P7VKWjGlU95HG5cIZ3IBgzSG9MtM7uHjia0iemyCapWCC
odkLc870toYP2uqETlRpbvz2Wc6GcTH5u/Amh0H3rgGNXV34lpa/s6u1VaP7iynmG4QAdjDWHbEa
1BXH5/J4cbgVy7VqLjXOaZM3JgzNluVCLUHCQkAb+0tVtYqjoas4TMVZo97SS8ho68FnFwghNfBL
j/uRv/nLcjXrJ5oc6KCCqiSQBILC22sG4j7fEHy9K0Ery4/5Qsca05OxQSQ1V1yYUZAJH8nLSV4j
xwMyWZpinuE3lg01UvMh9/tSZqGcg6Si0y+9UNtFso4xlGHU96WqJG9hqfpwdPlbimOuHlYLZVNk
R8fDR7j3JhoWLfJcp3thBV0bh6PLOSmtp3zjpS4gXwI4DGdqgHQAWMY8WAASG2BlA6zVAKv5WuJs
PpFTnPDWVN0WEcCRl4sm7MsILHOU91dllbNnitWVEgNtmw+AxAwoK2H0ZHpmywsQokB4MBkqWjPY
jsP4xbtvXGfRvkUFTdyhK3fo2h26cYduXaFcr76ium8hANOkDtSCKRazNeWgqfR+x9rW1RNo2tgy
wCzDSxavzcU7U7F60zSBmJtSeFn3nqEKgzUaiyK5OcBj9PnizaVJhjsQYkrHoqASp4rWMYITH/DK
B7z2AW8WYBltIYMUBzLmgnKhWS5ffV5BMHHhDru35CtWtAU9bMG1Drt6tNjSo2IgjybJACCFtvom
4B0cA3Dq/bRGaayQpgn3EmcOY1Lp8hANidm8a6Tkd2tvmJjdxeQm4juHVoAxpWDxlbGr+jKeD5sF
aW+dxvvay60HIFBMokZZVQoOkwtbi2IhLqTK1l9LVxjQKM6RMP6BW9nhK26j5LV4RR+oCNQgEUgi
fcsbNUAcdNLV68WbTnulnYk/T+UNVcV6M5ytqiPFQLipwQI3vUKgEpAcjmqn4it5UcvXyZy9gv/A
vLTD6FYH9Q1eWap44yTCTqoJyDO9PEgmizmEQmVkkEjuUOmKNfekhV8ZX56EA5nCpZcwbd4qqMGf
Ynz5TAUQHocNOmeK2+7qFhldTVR6MfYAcOntanXHzy+OLcunLhp8F857SO0sxesM9jMIAqasMF7T
dYtOoMLOIX914FskwoMMLjZzGOwg5aF7/xVoOI7dockCisY39OKN9jlYrBcIYMPK7oI32EYeTEqg
4aC1v9oL5wZWnHAsmIwz1eEEodv0ZNqWjr0p+UCi/VpZZb3t502LZyUqZSRKhhNp1YyxElV00/4+
Ym0jTKgbdqjKzLfCCyqvGmupLVWmlRQNaF8USK4Vqxa3cQhTGapICbEdVolcZniKOFwphagnV3HA
htfNPaicoHiF15P9AI898YkLXokZ3B2UrgELkNIhQGyf+2tYqpCFcEsXlkU85eHT9CVtlF5vo3ep
He5HgP6eaYvOlKj4oQTyItGCVQWTe16jnUpjB4sJREPanVLhbzLOXT2ysS033Fpg4gpcuQLXrsCN
K3CrBoJzLAVosUQxliS9cZgVRX5t8gbDD7ghZbJ7N7R6cqixozEJBnVWe5P9yfXo/PjuTVewo38d
a4VnmprKCKLuoyt7uNU5V0Vm+fYxjcomrECrEP3Jkk4TNZ4/YWEDtiANYb/tEkqZAvO5v+b8Q3Zi
n9OlN+/ARBr10WNB4YA9IPuTWzhwrdF/QXnNY6CYRJagHakTVgvirXnS6tuj/ShGBFAVk7GMjpf1
R18j6OzUWgt87rcXmtBC8gohRSThu9kODEeqYcaR4KSbFiJEsWq57MqvZfVazhzMdVfY4IYpRg3S
tFxXF+iNhynaS3GUPsfAkRZc2lEpxnTeZb5rRPt46dyIoRcoIJwSLGNEklCQsTXAawNcgeQK5EOQ
+BKsfAnWvgQbX4KtL8HOl+DRl+DJSCDC9Byq67viIrQS3OhAN65vHvTqhc6DgWLF86BWLX1DHIHB
DRZFIW30Gz1co1HISJLoz3xeRgYTyg6JyDSDJlEj6HB2kM3y8HuVKWe0oJJRtxoTSMYvH86MYJPt
QsElujg/AkV4GsJGRSXjxkR9mJaCnZY+Uir8qavtbHFbY0dlC4uKCjSHQD6cVsTGou3IfOy/cpWV
DuLJJUF4u0qfKaUJDGnI4MSHZj2/xPV2KTCgXERXDvHASXEPBGCjBWHYzJeVsAa+ORJc6+rA0Bvb
QkK+yc5weXxgRmFdDUzRtWMUiFu4zs09NTWwdyUMYk0pj/2wWNzk4Wv06URq5iIheo/tryWpCvNe
PGuvGiGOD66O94QyegcChvvjC+1CHGLMMnEMTxPl07Xy6Ub5dKt8ulM+fVQ+fVI9nWR6GZ4qvyJW
fsUk5cvwVPltserbNo+7ZLtTvbE/imurPgizGnaGmLpTZ8ehdBqqiQJQFdVE3uvA/VH93KNPEgwO
2UyeDszFdw8lDzCMVCACas88WXokCsJxFLRutuDrkPMERjocWrAdcLMzpQEGATl6T1yMHTKEd6Xo
sBrSLK+lzzQe+hQsXZhkJHYacgsvraFezVfBr8rmmEa30l3x69EUsErjxzVF4X0JUgV0lZWf1Mej
GLWIqHzajF8WJUHYaJlQBKmM758o5jv00jXlG8u5D/mUDFJ1Q6qUGrU4aDy1rCO0OIBN9/B/rFTi
jtUiwR7FN2GvXJ9MHEA6CB7fVuOD6cQZqgDyefFZhCTmcqmu3hUhiSWW9rTiKKt3X1mm4UnuoNWS
SksEBBvTyiOEwgCZR4GTAGGq4K2i9pkZcBjkQNSXLNzXtKb5PQrBrCX9NvszhT3NMkuHGvePP375
uVfuyObcOBFZQX+ohdaf/4MXytKSy1ejjKfFRW5JLLBhoolZqRx0tIGp2VHf6TircOtA18TkUqSA
8vWNunWfZnxFUzUb17FYjU2cVQdjeX45GctLVUgACbumGLqIvaCDCpfVszOOHtePf5mGoa2kT7Wm
eXsSoUMuFMc5ECxpvA0vfdDuUcFBP8cHVzbtGwa14Mx3vQVdfZzvNntwy0fX4T+4vtElABzao6gg
eiJlCTokHg4Y0mZ2MXjmm93TdPu2ZoxsVngha5IrzUABl0mWPjpzFIaY74ERVX6yP5hT9NEDrUhx
fgmXKa217Up4v3LCUQjq6rJXL1BjA6eiGDxgVNfWZflrXoKrifQKwu3Pnu8n5jaMGV4PZCUFNPv0
X9/9f59++Ofn6PN/60rBZsomh3nTYq4Us+i0/wpSG+w5Ex1rCi05TlvYnPbJarJbUJY/PugQZvrT
/hmKIxP9V11R3lRRXkebRx3gLWIdXzRLfbmGe9Zdrt9ikPFPXXuM4i0M9n11GdK09dAz45rb66fH
x81T9BgpO2QKya0QA+DQ/PTlV0A9/mRA0T8GgGi5eGV6l7h8P0aAgG8+bR422238tCwQ8ukre6eb
ixmjJJkKZCaXC5liiS9Q3Wx5kVjaE4qg03DUpcWIYFA4wbi8f5vIGAmFa4tQR/RDnGW0mWDK9AUu
i01ltUTwfQmvkAzjC25TdPBaVxC1BYxW+XTO9XTCQwG2P7A5izBTjQiIioZGjFvG24NCZr9N407c
wec+LmMzkp4cA9Sr1Co9CZrsDm2IJnBhpWDUtRWNGdyscQyaVo1ArnzRL1yockrLgKmK+ofTWCxL
Fg0f9wXFUmrgDhhvND4qwSbdGOlwnOGh1/CuhbfGgmxZBrY92ouKgQ6hM9KJ4UUiaTvQlejTlGYV
DPxuTx/dVtKlzY0Qqg8NJegbGxX/vafLy6b5OKWBqK7SY975RaNK2aBDtAWPSsktc4mhoJ3fJcjy
FkSqDUybBsMXF10t3AWkNkKjcFSw1PMlMeY/zOrq+gPGMowY/vMt7d50eBLz/RQdx8pakkAIXQy4
iAsJWWom9CqSK9znhelDvlYKCO0daLxqVhCB6U+7qnL4vdit9TSM76UzJtoNKyru8kFuIWHvpmhL
YInEqJeqCebDiKvGCgaYUA3PukG7ZjoEhp43w3IwD4CVUldIlaQV14wR4fF1ILrS2PDRwNSM+L//
/g/MS7TZw8TRyTKIJkp5VyDsNKYVP7L6J75G/zzNNSbxIq2VSBQWZR0F/K6rqwb8htY0rtHMPVhm
oKrEngZTHXWkFsonWTfoKtc+uZZGKgjzS0XeQS0eYPLRwQoaLv3aswwDJhnIDFUiI5H5m8ksLLWy
qCemUxXtp9H9BaoS3171KTozM3ZZmu0LGiVcVv4Aj37WSgDhD8RXTvhb9Sq8niZzEdL3Y6i+F1X8
h54GQwBVNQzD1KTTSIuH4Ldn1AX0UFmdKQGMK63222O5PG8oQyt1Gx/nBjQYVqTzE4XK4dMH3Nlf
zG9pK0fkD8a2y190crYfUWKZ+ZHL+N+qXPkqOjoUMQMwnrxQrOk0g+s8qbYG1QWj9qKphLWUh6ku
3tHDFscVtX3aiO/NlDzAEkdmRS45y7bqaz90LxiY1L5xPRtYvyrYkFNmc03DglQGGQcTciLGKJSG
IjqbkvKY1xSqGP83C5CkpMBUL0gATczX0G4eU1lNJjXAcV0tRJpiEgXfq4e0rNlcqkP2Y0a9p253
HaEOOs4wpVWCEIpvNvVGn56ZlUphTqAy0ulpWD67ejAukpdISInTgIS5rawyXQ1oMWsWZ41jDK5q
FPsKVAgdqup3EWrECdNeoBIE+qzym/mgoslYLzZHJua8mBbOHHdCU3+sEervauEIvixNjKUrY+na
WLpZlgoZJDeyjTgYYm8HdlUryHLJYqmpHGXAPGbnAjEkG7hALActVK4jbfWlVYs4qYKAM7JQrX7g
mubMk2gC7jcEGI8ctrP4A7Knd43h03o6Oj4WS7kVfUkhpAwmO9DM2xnB8m6gGrcMAzvBNbgujAZ+
pkPS5qXRFtfT4NWTQrRU67sHJwb1jowDxnc3pVog49gZdNjXM86qmnyJxIeQJ5+G9lpdcXOhW+gQ
JGwZVH2tsF1AFZAiPcHqDotYRfditFDalIzSBSYuIB1GbMzhDwbHX2o5i1jecv8sKfvHj2rtXsCm
J099GTibC2sLXScSu37c8+u/xE6moEL8aBeng8jkSGhskcNFB8ag6enlggc/Rrait4/pVzaaNTo0
3JDTsDvxF9WM/S12VUtroYJGtFa1/xPMG1U5O1mboWinp64erqggdMDjEEWApr3zC90Ul+ec9Fi9
TA2DWyY1X561LqEYEw8khAnVqAu/snfcVht3SiRZpEP/LFEnapZccXhhZnKaU7AV6pNr6isGBC62
fkL2g8SDPSaYLdkLJc6Da7tonUWReABntkJFqAp9syhMTIUrU+HaVKhQL/7Esxiyi9gUBzi0EWMv
L8VioRPzKqzatD4dP8OqohkKsoVjfVGvjcAJjh4mLenRWJ47wIUR4XsyKegJwG0end8t9Si7y5UL
WzNIriTqpYGjhH5FckfmE9S3oeOXE0y4/CjNij1IvlO9xhXpnhU6OUw+zlI6UKWULyMgAXIZKBdO
o4SbtN5GgpY02Zjon4FKjlatkKYUTI+BR+U2TFXSSWZFDpKUhjkzVmlKLm6uoquZSgec4PHsQoEZ
TMha4UWYrOrwbnKNJyBEMd5R0aFlSUbNjFHCOLwQJUqm96WmvHED3B+v4flPewY5qR6+SiodTPS+
WDx1KBqL41mjmwyENwWAHAOpoYSuhHE5BF6pVQ/SbHRyNHh3GAie8/LZhqOzIlrlccePzoAWIjxI
Z6lunk4x+gOoHofGQ7WFgTDo3KhZJQaE5Je4gDSY7krDh96W6FHSNGKs1ghnmMPQBVJw0ek+2Ntx
ZLRV19tvDQolZ9GHbxUTUNjnqqswiqVweUcup8ndLBQM+hyllFvC6tvQ28fFCYGIvCRCCyWeBEu4
iEBGjSdmsfK21BQvDiw1mztw0IEzTFChy9YwLEdAPHNB3VQJEy9UbwKwwkIXV15aEDjKy/pvkZ/1
PwpASbuy/rj7gM6UuWZucjjUvtbsO6pSbl1Rls1uy81B17Rp4PKUxt+hx5lP6noY5eWyMRNrzLW6
dlcjrJ1fNZ5DKMExXvS2vNPg1MEx2FTq6wg9iGZZqyvkcxFrM7tX1iMoUPW+2+/VxupKuEiQwO9P
3dCNjw9FLqsh9QlkEfWjlQ4BVmqQKVwxe80NmBJXWjhjVFvoKumxAFOwftcCRAA1Eej+opa+Aisj
WZDlgv91qGptDdG48lktRbgKR2njtL3Imwkifps6SUxScJPBKwaYagXMIAYwms3B2Ww8zw140NC0
nmk9SggnRYz9GVJRcmVyXac1NS2NGtxwA5gWKZHqOroolYwZ2gBwNfX0BDIk3XBbSSjiS5orGQfS
Av3BB71ZJ1Y1eA1wdGc5l9YwqMjCoddIgwufFwX0dkrLtiPhOC6EloCrFa84ls+gEMHYg/HNN9qp
+vx6QaOA3OSioKLCCxWnCBL4jrzeArG4Ks+9bDzurMI9r3+/8/3vd1bg/f5ueA/QDXc2g1srgFcC
nMZpVfMpQlXOVZz+dhOKWj5x0FuNPGN6NfhGWoqpg8uWjgPe9+odYkHUiniLOvmmodJYd3RwtCaI
CjtRnXO4Hvy+TDWgJ8n7Hfc07ZWdoj44wQ32fQW64zpPhzuVsYMJuExpXOWMPMyL0JJSrOewttvw
dDcSAkinpZn54C0Ddl7d0jnFt/lFuRUmGPozih2AzjQpbLCR3bFgcqxETpRwK4l0fs3EgmQxNWQG
kwZDLa6ge9Map1KxcRXpsUqdZ6KA2bxY++DHGL32XDXa0xaB7MPyR9KgkTF29YCT3Vft8K0l0uwP
dHgbknYn9M3iqEhFgverdEJWXr/SWrNgNKUFGT9w+IkttgKJBn3j2SeqiCNXVI2avoAJyeOH1tne
Fng9EItpZ0jfhW7Sewwq+KYlAP89ujwpp6IIuWb0kZfEZAQaRf7QQgXzCr3bxM7Liib2fPORQkXT
ojpZKCCzkp4ragLp1AW333HQSYKWFoJZiJtHpSsRpA0X9nmNdBfiUXt8IcoHU49aUPT3VWUiZV23
zXC4dPc6hg5Pudn279HoPtVstHiQWqGKEw0HIqU8mYGEMYJmhxBI+dFSeTEITddrxvBKrnmpDSmb
8CY47PIqEZRLP7ikX0Be2jb+AxZW4U5ZGdgGjudiJAyUVamToPmlo5VV3jXgy7EDTmY6NiHx5qH6
YgPddDL7EmFwRf4l7ufbo0NK8keQOgvTur+hO2N+wTPNdrKl12Dl5SRh+JEekuhVNJj7wCjDbuEg
7wG1KmcwePrbyOggY+TYkbpdiTCyQeS1VuYi0cl9WKjo4gGln8AWVp4LDi4eOmV7QOjEMy6L2pNH
LBWH6njlbhFIdATEiBGwoqElpmBmvrgWi8rh3FFO+xkQw/gvUZSC52eMYfBjVf8jb/9Qmn1Ge2LK
60SBmPGquNhR0AUIIykEUqvq/G8Ih1QMp5OYg6wtbKSW/fsU3AcldHjL6KCoEYMrcYPZUOKymRZG
Bl8LSJwGxDZAYgOsbIC1DbCxAbY2wM4GeLQBnqwN9WBFWNsytjZmbG3N2NqcsbU9Y2uDDt7fuEK3
bW2laN75/HsTyVC1RG9NIV0al1e5UVuXd65GtHRBgWsC6QUuUvc/IK7qJAuRFojZaVOuYk/MxFp4
xrdzp/KXyg09T6SjB4KlDLacmA/diwL0+jp3rI8gcsaiIcavTkjiXanrNEqeFnx+v7Ia98rOtRpI
fGrVU7mA85KrqfnY5WoRdtuBlmJxu9HMYpppkRewdqRvLlDSdlyQ2kg9WgqKG+uCbLj2B1EOwXHe
B9/Uh2kQKS1FvxZShnOMeHULnXAjuYVUVPoGUg8SPEf1GfJqG62EY/t+Ivs3bi5Fkw9DHkr42Gwj
rmTnehYykwj/s7etzEKsawngfVSFRuUZNaMj/J6lXDWit12cwTbgIS05mGIi86E9P23W0iisxUqs
MFI0sFujbRwEVnR5C7WOuOdkA3d1MZ6WJ8jF0YffEKF14fb6dSIZRrBxlnv5OALPtQYtgJSxrnGn
VSL7693x9U1kDTHjMiYjizoyXjgsKTCt5aWYj3uRzGQEbJqVCAOO+955UlYt0gDqm3wZKXiGhBUj
hUSYYE7qy6x4stY4U8FffBfUV2tu/DPDm8QdunKHGpAYNRqEC8P86ZOdrRYrmsap1loiFxqnDxli
6Fpwsk/I3o6uF+IOrmFK9VSVzI0hXU71XYu+alyluZgnn/g6yjGgkS8iPaD5y8TEQ1fAvu36is+c
DM9pDeEoP8EfkE+wOmDAv4Zv3xtxtUqFhlvyr6jv8NaaOOpJCB62l2lh4CJXYzCMHvk3Q9Tpycm9
CWiC/f3332SzUoD4c1hIFCVNio0rk0FyDseZF06PnNtRFZgWw6mVeDtV1wBovKdvgltLEPa+m3o3
nPPsmn/a15hchZaG/ECXJq65GUfWcThtU4NhHYtEKioNRETVoBOsY4o3Kq7pNPwDIcUlSz7SmkVZ
P/SoRnR8o0jUS2hxU4xhtIdh2TXgRmvzMt+uASxi5MuYdrMw9lZCE3a8lFNm2byZaKtGCoevGMNJ
KBjQIhywOiHxHCxy58xF4BxmfWnfrDIHEn+StecFxTSXr3ocvvBJXckARY16vKJDyqeRj00fsSF6
ydNIOA47kqhhrxiyiA6TZn4vEiW9foQHbNVHRVN4/phpdBuynqrqHVtlXKRSXXPprINw+RmzwG7R
ebp6KWlFgKDopeG6ARftoC7baNAHYRbpbGmNV5LeUsU5jbmGlJ7CAJB3I8hQz7cRXY0aAqzmBrL+
9RT9z9wtXPMQ6bhyaJn38nCuq7LqGj3N88LvSgLm23Fdo/HlBg8ScG7kujHfoLOs3NDmMrGOCE3f
p8n0p7x2zXl+9DeQvrCGDgaFbtan4+S7RVeCC9OgweMJRPiRC54zika6GK9rA5nPaJwVgmTpXDkQ
BGq7Afz6lIpo5330DEqcvXAdEGAIwChU0kXtEAGHLAXTMsAbU5pCTAJD11zUuZIRhfFF4YT1tPwY
KqtnLiNUhHtAit81Tg0xx0FUgpwLdIiwSK5ZsR2SmCDytwO3KdTItekuF4jJHdMmfr6QaOEuoMSP
p1M9V348Vy6gtR/PtQto48dz4wLa+vHcuoB2fjx3LqBHP56PLqAnP55PToP4wXPQP7igHObnFKod
9zJNQHRhtcK9aooVPiykR+pR0wvVk0K53RdxQkSqDuNbF8cTk9I+5gNuKmf3MyZIuu62OEqZYpSO
yBOIcOOILeXaBscLbtg1sR3iwGVlh2iFCSyysakwMRWuTIXGd25MhVtT4SgasQ6muPc+KZ/4MsdO
qMSC8ljg5hSOuMSbs2udV96cV464tTfntSNu481544jbenPeOuLcxpuj1JbbkwncBp559U0wktFw
o9bEUXMpkjDkuijUV436jEESZy6DWCASH8gdS843DhXfok/99RB5zE/ge4RhpNQvoRyg2lKwwR4x
jSa+cxQyRLkczW22GEdkT47pLSRCWBJUeF9K/fozSzNDKZjKrtpSCvkCni+zU8h58bxIvRVBdwa+
Jx7l2VlCmjZffiOsqbpaypyvluKFS7GiNL3MYnQTBtKhjxOnzgF8B6t7e9ld9hhk3NwPIjja4kRj
XEg2O7HsH1Nw11sKD7504Tm3IQk34SiTKR4gtRBFBp2ccLepw2OOJVMz0FkG3t9DN0KKDw+RffIj
HgcMCUkWSp0I/C+v5lFwXmloX6KFb6WmNYUvPwQQoMBYVdngJaGJeRhPKpek5JU8OHDOEeCKquym
3pd0GfqTyjGwAsRLkN7P8JFzlMzo3qaLSYAOZhFvf4r+PSrGodF8ukLHd3nLPs1sHqTazrKv9g+T
5cNkk+x2ka5g+bjPPTZKDEZJ8XJKx13LB260Ql+3E2MeLj7gv6veRDxddUI9Ca9F78J9NQ2GUm6O
orhSpJjLlU/Pt0mHSYLRK8Euj7lQqTaYyK5RNaSSyAIbNRBfa9HiNJWVkgjtOiV7nbSGuIVDr1oS
YeLRn6EWP1b1T6UGVKevX0C0ZD/AYkawxhX3L16Bf31ZotkMk5cQUVrBVgwLpZhSQMRBlnRttlHA
pBb9BsnLVF5Ic5I3kaxuyEK5CBzqSGKkGEktyIi4CC1tpFCkonbBvzvitTBSLcnbjg6VImW+zRnV
eMSKPtGCRey3iJLm0rwzsycdTOTrHL9q4UozpaOEin2XSbEzdYebkfRnrVqI1D7Mdb6mWSayH4Aq
25AIQ+dEPY2sKbjs8OXiVGqhfSA3YWZ2+bahBtH+etHCXutUhBEX9nHxKUsCCP0o71hRqCnBAut+
EfcVirZGRbhuC+pDxdDACQIvvoq01EuI0KFk+ED+wiwtVfJGAmUbzpQNgRIidTKeFMyE/yldt6lP
uRIzSHipErL2lbH+oCiTOo+R+Of8yOAAZYlZRO2DNy2zMQp08xV96MYplkcLrhOeMs5Arl1FyzXK
JeK73xUfR0d7vBte0/cmEplUpDjic+IIAXkpzahuOvW3XbAvqfv3VdtOdjZ/Np++ZuzTt3Wdvi8f
f1dVoB0sC74XOTH+M43mL0p/gEsEy8f/jZuD5fNf544o4vlvNd+jgta4LPqdnX54uy6fU/RyHcM+
LQVfJSsV27RpxLBvloWHtFHwFLGnJhaIWVGiLLpSkjtVGR9xUDTRqYdCdS364KLPi+NjiUE1KdYV
KGpJAYmWz3FVUTyG5I/sGZRN/k9X5wrIi+qj2EteRIqW6G+xPKtvOM5hik6DUL+g/hbqImSuylYy
x4wa2IDSNf0prfe4m10W8V1olxftc8/jCqPeAddWzTxUv4S2rNY01Z8yVtrE2rgoXC8LC+RaKNqo
4H0amfrgkqra5JJtVIMRHiuGIi0P1DhqkTBHGBoIzpVT3pOKuoKHroL5wFXXxQNC04EakYMOAprR
J9I0xapxI8oSVdlLWsMsLJ7BNWZafM0Pn4RrQQoyXzibiGx5WqwMVqw8k59CT3imzrU3HKYp5klH
wnmjLGma+XH8FIWXifpodYJIi+47JGrP6H0obktrCcQlfgw7OIp5tsSLOG2notrzkV8pFhtEDQ2g
GbWAgsthwlCqGKwSIdwh3t61bxN5Sa4VePSB2wnIqukFUoEEfUbWbFRKW3dMqkvp6MlJiDRCPkgx
MI8Cjz5T0e947vgzEgrVRWpczZIIfTxrzBpE9NNmXqKwN8BdbXYCaEQucYOzDH2ifq8sCOS+C/db
f4t0isVssy6wxFJ64YzC5y3il0wIRsCm2+MzO3SJKNmJFF0RncDQ+qJPha0mtgESG2BlA6wVgIou
rIAIm8U8gVP2Pq1Q3513ssjVQ8zE45zW2SvfxqFoLJYras+ivnApICgX7lcCxbWXA3Tx0hw1A+hn
mkT0TaLo2nlYTIgtEjV8Jh8Ug3tif0SnrLqqhDv0cscmiMR5mo+IECRVWfDKn/NGEJOY0MExTan4
ChFrQgVFJ13ip80aLcB90uU+oIKcq/tuCLIw7I+1HNBBse3ZaHHYOn1vRZqpTeDvyBQ5DEJeTR0B
ZEVHd3cctboBRc7JGh7ya0fdKEb9Igm0oPibbP36ES4A4qKstrzOs6r82hVTR1JMa1R/SvewncWQ
chGl2VqITgJS9hSKlCA8nzGmKxm6MHqcgugMuh1dwlLxRPsd+WjCKkjSY+ydrKDBnRPZKsj9Wvi5
jpIkqahwN9/n+/7+118+01D8GdM7LSkwqWJXczUbtljwplmMaC2ueTkpYH0GSkaKgjSX9/FdDDQy
vyydJMPLYi904oVeeaHXCjRdLZDh0DC7+9TnfOY1LehYWnN5JWJxzHL1SAjqbeyyB/FXH4b0UAro
G107EoEmo3/+/rPqtrBAz87QVYB6EspeeucT90ZJcBG+yDVecBFO4CKa46Q9iml6ywkHuCzQQOBu
OT3GYed17TQnHWcQm8Y5cCCYxSBYULQRlyI11wSXdy0lVo4YeeYlfM4hcx61xDzy+ECIWULYyISe
FjpcLwtESDTwgCC9BPLjkle2jhZGkyC7gcTjTeL8ZxrUCa+yKMOSC1L0HemD1h1hl8mEMVIB5itg
Juzhg9krwthjTd/6SzpYAMZROOkSggNOuUfVgBUIcf+hlw4l+jIsgfkoaQxmxM4puyEdVr3p8Pxj
Oz4wQVMf7lRoFgpxs87cGdPMaQNyqQdJPGX7ksshBVEGoYQEjCqjWkAHH8HpGpM4Q63Ac84V7Zov
xQe0KfG2UkvIGVmuTuBjBPdqqeq2v6CEf34qfxPOIKpyqOfnL18o2hX+qUP9H16LL1QLOxgC3kjn
EMxjVfM9+9wvbEKR/0hiADM0OLxBZBe24rgCQRpTBjcfQZ3g/ylw5K0xIPFvxTSYi0WbtO7xoOAt
iy8pxHyVGgF0L6yNlAq2pah1in67MK4nycs2L838VoxAlRijQNyC5YtL0+YtJn9UTlZMkVizvzqI
20ZLy2teFF/4buJ3erqkqcqRQDJnl+wpRPIIWOzPfM7j987v4UzB16rID+9RfoI8kg74WbUp+eMd
ZAu/4p6uW1xEjJaHEVa0AntNeR0gvtT8rp0AoJjM8gaENh+840vTikZH+wCbHWrJsgJGIJ2tLmOd
SBD1AGxRT3isRyq33E1hnFuV3j8sFkIFkpqW+rN7VYZcX8Cvu7/zl3jBVeDxWJJfosKhO8X0pp0y
U5QgEGF2wGJbdKe81H3czLAl9diszzUB03WRbcKRWEEBAUHbtGQVpumleC2LG6ISjIFUpyEyVajq
CtrJC6a+SQuddOr7TC5MfbzitL88rHmDpKTFDeL8gLnAAERrwjx94QCCOSbyH1BidJTSfMf35oFO
lKxlNiFqtmOaF0w7sMczH0OXjSwFdrQRoS0cIpJRoHHVsJpDtYipCqKFLS7QTov1YaZ6HCwKWVeQ
mwt6B9BSpBuTsGKi1UB6s8NsaAp1L9RigVft+KEQ1JQr78OIj6lpek4JauRNoYicdaeD4CC8fBVz
Qru4XHVtJhoLMydNNQtMZneoisFDoqhlnCPpfIRJPuatrCbk+8Gv6k2HEs//7i5c6iAZed+lfBwf
HOooSA/gtU2kNe9q1zc6YTEYYpS+VHkGu3k3uCxyQ4umZWI3+OZH5YaGGCcHp+47YX5tvgkQByg2
vNyTocFcxh5G3yzRmXNnaSUXQUg9Y+0U7Lkxe6EO2Oi4OLgWeYtBpKWD2dyxeElYFzdOBiD0mQwc
f+tkGEi9JsNA5oT1mQw93Gky9GivybCgckM7TgaO95oMHB9gMnAuHpOBo6HnFrdNtUjvaVMXTtOm
rNr8mFOrNpO/+kwZU51KT9BMcv3MI9470jlS8C0PX+bfRWLHRToUIyllT4D7wI4U03w1C93ORFpW
GFDKEb0M8mlET+J9m5C9CgGN5VN98gFmtTBgj6jkAd/scsrocaJ+vPrmTfF0rQZv1I+36sc79eNH
1WOxD6UxvjgyH+K4j68yRu3em1U/HyeMJqrzwIgmNwV17A/0VUhxWfThYRocV0ow8nqHY2G+0ZIH
o33N4DBdy/RHmLa/89d+5q9XogYfFXqNItRYD5aHVos0Az2CJDtcO2PFcJCvQi4jxMxHcg8VbT+4
xdABuxoqTBd98yjiF/RoGX9LJhg581YvZmGJB7A4UfidjB/q6UMe6EV6UTZ2UfFmro4RnHKjTb4c
XKdVeJl6S/oFwaZYno0q8eMxMVgV5NUuO8k8r8cSRh2s8KpQQFU3L5YwMdaJMZwRSU+LxR0eX9rV
HbRGUrj4IPpOlbZeTdCLjkWobjPeBjSWO3UUZXcWM8cGFm50Kg+oJVge5vKvHl1tSrkOczjPTJJL
4rfJ5adl+fvyMvEC9KwXVf30ILk3eMSYJPXIUlfMVdEe1F8S+RC5PspjhjltZ5rPHCe02JFXFQmT
UVYvA3U/aGGCDOuonuJ3zEj33TxB/QwFQrxvyoXHlQIsDaNKlAzxjeg/4JYQrt3m1kHTKNy7vk9b
0PPxURVIp58KWSWuTnNcOUhqgQSa3g/rkV3J966Hczp2KJt5SPFBCeMdFvzxb97Vr+irxD/tMgkf
LWxaE18XyD7AKRZnKQOWQprhmQdccW8OaVlifMuyccFrcfPbl6MSOHpWlsyMoUOB8QsajNcOV1kp
nSsDe/pldvBnhhu564tm28mhpAO/Zgzt3vRNNQLW7Ch0mgYudg9zDTUzWaYhkB6dwzOltB+TyHgH
I5JL2nxdLKVjGvEbTpIvJxckns5WF9636Nc5bRoNXhU/QAOFCsORK368M7xrp4GTTWg7rFwswBqg
PiGjhgDXFjjP00LR7WDc1IYeIXl1YJPFdwJgaU1BH0xcqtOpcH/nKOb4MHakc/q0cU/s7VNaoG8b
ep+L2yR83wt3nyGj3nxIIIXC6Z9K1NesRFldQSIa8vRIi2KmQhMoqzCr4eI5ufPxIZetosftsvhw
gSMQ/jNibxhwe/md0nGGAn3AQWWRNkvYJS3ETQXGG+GqYEQHlZDfC6Yy6Gu8yefa4wC9pnDPBR0m
OKxVdQH11pk1irddDzWjrdp6UfZXl5YthUHu+2TJQRzpUvjx17TI2EXRwuMEUkseXZnDrcDPXIT+
VDYMPfJfZt0npWgfHgO9mjDTO978malQRgoqVKDpBuwwr0VgaVoMtVRyZT9Klxy+hxNlMng1H5Hv
5HZ3Bz0lVL6LhdhdeXKAqHZzJd+BzoB+ZfuvufB1wpZeuvj0JE0zfMoyRaeEDUEOT1I0Y8xvdGsd
GXA9SRXwPvyBYgQmnngnuHbgcfH7BgEoeoxCdEsk7GW4wHiHaIt9AEodsr/8ADnYLK1nIHBC60Di
i3BAkaeC8etGJix5LX983368odi3N/KwN4Qrh9vI7VTD/tmDHnLige7ISnDeEdbFRQwQLQV682gG
84m1/eTdv8tqJs5I6jZ1jxkpJvtECwV0SlTUngTKMaAmUAB7E+l8l7kAaGd/ftnXcKggREnUnvlm
M2u0swSPsyBbSK+Op6MriOjX/ZLWOSqVFKJGL8dhRYBjsD7qhAIjQ4FQKimTHOvXW/SPynH8zlYv
C5VzxXsiEctqz/qtfnMbI7DJBGNGNs0bCCkhxVlqn/cxoFhRwmjZx3yfWjn9GSiIyWEoL4XrP5NC
Hw5nNXDa4J7olgD4CumwiwgzfOMBK2tBARzzMu2X/MaHHrroNnq0J7t2jILenVYaGsZGL78RuQi+
04j7c5hq6TBM51uJ28KPgUhhx8VOWpbDIHCk9q3uLTWUZxG3NdCS+r73z9tJM329+bjx4KMXrVGw
y68jUhl8W8TvzS91YVWtl3BhyXClQrn2Qp6OIgyXkVQIKjpqAXqIWUurtW6VFiRyT9L7ZMwvu1rw
YKqv86XRTU0kdD6qp+Vj5kQQn9hKJDR68QLLt/dLCnp+6XFDUFXYBFmY0mJBYmge+DS5jcxG5QSi
029f1vLM2pMM3aMUsdr1YJEKa2GNlXjMKCA3n10D1hOihijFCgoRjta+Y6Xoe2/991rxLye4UjBK
vANBpauCLJQaAjmWXbAY/6DPnGgCv1/21UwYiWr3t6MklhQr+jIc7SopNwaR1i0vp84cMPQEtt3v
kqKBzIpq5049kXmDrMe7gFWY6rqw1TUMQqTp9xrS8gQkwmtt+EhxogepniykA5Bu0hapaau2pOxK
VMPAQcTxZU0fiEPuL2HeNxZSEhSmbZQKrXyTpXf9+dzDxEKrNyeOUSS+IGrPLBKGEbzIsm5C62Ej
4SCuMGc4kjQLqY6qNJlbdUTinAnNr9nsNMqd0rOmdFPGh6DCmxzuFG7INwqr7159Mv9TQIfeKpmx
NzditLxqLP9LOBiQ9FYjNd6n/+U51SzBn54Aw9vnehV3SeHMGs6v/HtDmOedsNKZzJk52jIXYdRm
+LmaahU2OqsGOShNbmUsAsBHI0PAPBupIwfctaBnofB8gph7GMeX/7sI+urNlEwJwAsDF2NM4pn7
Zt3t3z+R0pJVrFG4mSICfSgarqtgaC6+45mnTyEUuQaTTm5kR0AHCJ2km4C0akOXw0aM5B8UKGuI
YNy56hCD362oAd5UsTQPZZqYRL6X/NUEwusMfs+L+i8ZaYZ8KYHHRXqN/eCJA1wLGTm32V+vACdW
8BxAVsf6uniuaNg5BgtwnFLuNhE9XSZ0U3YD0WA/4xxQlwsDGex2YDtC/njC5DDxhlcsDzYuSqxY
0NSM8gLucE/DNy1LE2Ppyli6NpZujKVbY+nOWHqoLvu81LRJb/u6rxt0bEzgudf3AFhElR0VASVJ
dWV5Pxf0A1NodGWFw9oAURd15dJMMy4lO16jLVYWUKZuxRQdlSqLKI65azeN0eQlvNhpTrGg9ul4
CadQVeH3v/4inDeiPg5d7ApMXIErK9ACgE+MHTCJA0ZbGenipn9Tj0isCFtbzoHOHG3VNzbVCLN4
4SzjDliJRlkXlEs1JVy+XM9pk4+nS3Nl7HD+tO/2e7VVTwDEmdz87qAopQhRkCEircnxGAPxg08r
AhwoGgZRmbwo8Pl+7p8+gXP9Gf/UROSaYaGRRLArExBOyDHWKGipCm+iCRgbXubdmvn2LoEu3zQC
osu6CgeRnhs8AgIKUq7pPBUR0fT69ZKDhEHWHrJCGGFYXxn+Z1BLF7c/p2SyNZuuoEucuMqxsupO
fCugCJmvIiefa1PtaAEFl1y0AuIzRc4PSYT8+M4F/YpMAHa5pIbiPrRK+pq+L1PNG+EGHP194twu
aR1ZK0l/11xWnEqRacefZOFxaSVBCodX0ZULGdl/jGy5cDsx+a84IALfwEVDdvvomr+x4hNJ3VF0
YdW1mAE+ceyCyGPdHgsg4Mchn10LXJDRnBJ74aZM5/eMRgQijMDyLtKAOUI0m+5KMUrommOUgmtj
KnxsRC4hNTFuK8XlI3QhmTeEgWzcXHk5XGGykVBqIUE480ZfEPRZi/o2nuYFHQjGl+HHmT2BhZ3A
9slLsEIC9mgR3obS4ai87gfocJmMbCOQD6cZ8ufpWxQdXqojnlKZXyGRoAkTdMgCqYrFPlAOLv7N
5KOjrDK3LRHWcO5+Tl/wNB8eLLYKSgq+FzilV3WNZomDLnmWjS5NqT9fXu0dfiF/5TQZvxWrNLsM
L58limcrxbO14tlG8WyreLZTPHtUPHtaPpuklJfPFN8RK74jVnxHrPiOWPEdseI7YsV3xIrvSBR1
ThR1ThR1ThR1ThR1ThR1ThR1TnYq801fqHj2aCJQfa2i11aKFlgpWmClaIGVogVWihZYbQwVXSma
Z6VontVuiPggH5kaYKVogJWiAdYPBiZrReusl60TPzxIozVKroXZmmC9SZkET6rIPyaAWW8lnXmw
L6Eok2qRZRFDlpNNGp5Dppr8ZUnT86SKCEPIkHBvSXEF3yaSyomxdFkIBvNxA2napg8D0KdxqwpK
Ty0CSy8MOiNCGWBkfNlZ26s6igVwYicBfZzqJ9MP4+klrVbKmolti3A2XhQf0vKFK3JC4UJtBn/h
RyvQVxFJnxICCnBaZjfRUcsO1I50jRbHSgwL0/T2t/62sJZEhuRbAmAK9ZNFPe4Rc6jSgjWz6Fij
cvChAacq6sdL3oxTP1Jk1UPT3Eo7Dvo4IuQK+VEo3OLoce5NMgKLk6TplfuhfH7oKkowzlHJ0jqa
TeUltJLvQE2MvfH/ZyoUDQjYTLCMso2IbtKDFaEIZojenxH/bBZRxnr4oCaiC85IlGrhv+Tlv/DD
tPN8BlSV8yFNNRUeF6NHCjheAf65OsHb6N1CfjKWNV9IKvzO4KbnkhgH21zwKlg6UupmDoJpzH5H
4oeSNTWL28hjApFxS16G5R/w3TxSmR5Ot7ek0Oa08+SZY1JJVNAnS1lNMjKjlvzMIJyDoRnRZP2Z
BFnigFnZMRrEsBmRfv6apQKu7LWDm/miXKYqFpMe5iPTXT4WFPlLRMsDTqNluXBGldJ0pDOQxHxz
oRCGW0dCXvnlFnSKGUy742N8TavRLWTjiGbZiWn3STQQcT0X69rfrK5A55nm7R6j1UJFnAwqvJTH
5Y2xxwhDX2PRLGjOQCoI9BY/VIoqEWbhejUunOhLBTgbRVKYqquoIBOX4TmdeuSOSfCm9rA4GrET
BUuIV/mneq3SUsvFFHko40X5MFBpxG6UlCyH2vl2LoR6HdYPOx/hmWpUoCXbwUcFzTk0GrRrpIlq
CZZOHqrXi7I/4K/fIB3Xd6oc8QIM191uVM4caZdSTBJSu976Wiu14cUYm+XmF9uoNS+mtGu0cZnF
LiHUKCCeRuM75Vycw6oMOb1Vwh8Bv1evMGoSY+mykPcjsP6xqn+CewH/g1nlteNVCV+ghFbRixu4
VKplqQAvMKP7ejIM6uB2n/jBQY9QUODuG3tsEVV/AukZTszD6Ixt2cSLs+qFYUFGXmx0FCjyBdks
GM8EN5qSGlifahA56gUEydiaxoxmLSOMWhhic+BLqmPPRnhPXemCplgmp6FkiPqSvvUiu2WnUTjO
JTQvBRQ0QJFvTynUp0iNB8wciklk3Lgi1My2+jsvijTad6f4IXnaRjPDduxNsRz5/Y1rIUsaGU3x
zRG5cmW5dgVuXIGGOs5MSzCiFlxlwLspVN0VZbVfbq7kIPvHPLQSFctzkJFHK1DUoFNo1MxpXRpt
OY4gzJLMIKaNVlSq8UtYjaESQEjZ7BN/dVVLfiNRSre6FkemBKxxQzjadGKwNlgSaemEXCAKIrJQ
DD684nxrFgNSh9btO5ZIRbxLCSXPmKy/p8hbRPV5InSjZeMgUrwKLSQX8S5UQmyCtCNU6nw9RCul
5k/sECXiZuXHlXg5dTklZVjlK7G48JYx5QvUNja5aGBmWZHpWjsvFOAlpi1oRRqPA91aT6HaIQMW
XGMi00PshFp2kZwyN6u+PgyWHUGui8/YNEvWvNV+pWX5d6aD4PW/Xo7QAbcQFmLsEqlGTyAG/UmH
/BoRT1ZD06YcfarzTAMQJzjkb4nnA7J1dFBe2yumeFymKJ7i+g8lb39pODJVYzgjQr2qO1mBqKo5
4GRr6bGTQxJLI0wdT9HTaRGEdYyXlipTlGQFXpyVDYmtTSR41jDtx3lyAxve9Mlj3XninjsdwtZX
2lmoJLgPAwdi9xbyGRVL86rMpD4xBmtt2EsudDVVxoG+gY9M+EFpWaXjECm9sDwr5PuIeu5SPQGI
8zex6W6sGtKUDA8rbiNuZCoSbATjnKggmXpH7royppFJxMpTUMzjTYt1f8sN/3Sh6JVtVwoNRK6v
7fuVNSJVqBNUu7wrwBrMGSwkzGWg9Ivp1EYIt+zTK4b8EcfHf4GFo5nnOr2FlR/5re/VgsfGBzAk
z1Y6DR3ELpKL0DSeyxgFc91DiCvgpvkzsmsoxaftVXbZrdTPPRjYaZ3bxUdyL/AOazqesdwr7JFJ
daHtF8bLsYunepIaIlJrmwN0IvcMOBT2iQ1gKlffvNLd5XEk7y9ZetPrsHz/0p/etrUDSj9dJQL2
ZOAGda1snScpjK09Abm34oRMh4GdstUaKLDGOmLdxFGQaW4RcBEkytxKpi9w7OeGtxsELGLj/LCQ
X1lzQIv//wm/57Pm/GBi/Jj57/YIWnWO+bF97xeUmmGicSVP2HIec1Zkvdl7gelKvKdH6w+cFjS0
qimAXbOwvSzX+Jn1sze3wxWbPzvFsYGGYIF7Fb4nyhOS18ExZVGGx92KI9+cwTEGKSDgm7D6BHvZ
T7IXcGMrnIwdsYkJSxtloWVa+CI2b9nFD7l2Rm40SJnbjleyz7OIW2xMQEGpPGTgR33NFFwWdxmE
W7YbtfAAu/Kpy8dnW/m9W0Gd3EV9X83Xd1Fv7qLe3kX9eA91fFerxd6tNvKs0Y+Wl7ToGGQT78q8
bT7h/yPh8f7/5HDVENIKfEq7DIrpH67tlKyIjl0prigIcWJEl5UQrnqyjO27E186KSEqLfeXtORU
tRYK4dvRrB6BaTytMwyGDj/k2qUiEsoxphXP+twASuT1ncz2cJFZZktUAOUPzFL/kg4OQIk/iQNF
11Zi/43XAMdpBOzUQ/M2uNSL91Ni93FmaBMTUKxzYbKsu9KNoGBkeSP/wSIaneKYSBk4dt9CI1Oq
w8LtQIJ+r1HDO93hBWXVZ68C/nYChMFmCas2TqzjRAV6ZW2aNTMSyC8jn2DI/uE4y4l4doXRSFNX
ELCNEhi/2/E0xiJM0+HUdNRYjQMQoiMO0gPTaDhQtQycex2BvX5rR74wh+nYdA0ehOI0hGg7Fxnq
VU9LN7Stg4izGk12PU64ZRK74Ua3Akq3YMGfABOb8CkjdG89dzl7aWSh8mOYjbP8ty7VlysK3qjN
Cz0QEmxB0C59p/ARXIrUtfBTixvNSplo0dQRi0lsI6hTvueuOr6AR4fetqbCYUI73g3s0NGmu985
KNCif9FDkW8SJ2dMerjQfB07Y0EE2YmqwuMtFDbBGW8DNiUEyG7RRllYwJBmtpA5V6vaikbVxopq
qnq4za/CMZEualjfhElitOmg0WDgMRZ8ehiNKZEPCmJrOUFtoK4u5BG6HgoSsT3XGAphOsv1o6nL
x9NgMBCY6jSl0cIWAkwoqmTa0JK9nRXz4M+/Ola/f4JD9nzftWz6+NCnT5cPmikgS9t0+oAduaCV
UlI+zC+QAqoXteLxKK6HeDK+Vy8e8QkP4QH7UXhhWZ5++tfqMyrpFVwz+4037B/vVzb+/Yw7EErQ
/VzxMdo+gztPegnD5Rmsb8/QS4fmOf4Anokfz3116ppnOLrxo7uw9lxlz3ia1fiRNt0VUjWy7JmP
m+eykjW/pjDvuAzwbRc7Q12jdDVcvP9SH0Y/n/G6wnN+BE5NffAhBdcVpEZZ9kyOac80NZ9H9/Vu
4ibSqvrWSeqoxr5CHYf+/zwEWjWhRHSQZxDgvOX5kKShNBbaJnq3amHoGfqHv6kESeiOfOY76S4t
3AmEqPYmcH8RZgvNBuHnCPZ9AR/1qddLJIHfi0aBi9yw7uzxYLbvSO/+mZLD/7TrgIJu1iZenTZw
oC/m4xxt9Q6kqDK7N5HjZPCbCe5NJZAerD1aQkDdmUN+5PHxqiPY+IKSta9V/fULWBImfzxnmJLT
Ngf09DnEV/J/rZPMJNOP+Of5mBZNX1/9iJkStXU30AzmigURGTXkv47VmxGJzLHNMxj4ntE260lI
684tlLi6etKYRauWrLzt2wafaC8SbEx9b8O53DuNr+Gn7HDjMutCaZTSRgY2QetAbO4eIwOj6FNT
GuexmsRpknAVD/4bTQ65zeLd20qFchr+zsrDPAQHOAYVeYbo0/gy/mLYBeqFHZwn3L+duo2LeTsV
gGfyATxXfjz1WzQznXgbKSTxHbTJHbSe32rcVppJb9hW3sswCc3Qs7W4avAMtwhyPlVB6sf3kSf3
kd9Z+fV95Jv7yLca8lssBCZSfwuBBzeDhcDExbIkEanNQrBE+VkIlvRu1XKwEOiRGvVfT6DRbawE
7i/S60BGsO8LdHqSlcDvRQaFwctCoCDxsRBYyTW6n5bO2UJg5GC2EChITRYCFdxtMvjNBPemMlsI
VAQeLWG2ECgo9BYCI9j4gtstBDZ6zc7CRuYkMz0tBCoiq4VAEPlZCNREDhYCC6HBQmChVFoILDRm
0eptIbCSlbeQaC0ERHuLhcCd0iilb7QQOBObu+cWC4GJ0jiPb7IQEOl9FgIND/MQvM1CwMpD/Q5h
4iPl39EBrofL62PRK9tfbqb2IqxKXtVZ09iIxpkQ3CjA15CGnQ8V+TaOKei5DJXTfPrj80MfC9uA
SKyIlRWxtiI2VsTWiniyIWLr18bWr42t3xJbv0VG0NYjEutbEjuPRyvC2mIygrUBYW3TlbVNV9YR
tLK2x8ra6ivrCFpZ23RlbdOVtU3X1m/ZWNt0Y23TjbVNN/Z6WNt0Y22PjbU9ttav3Vq/dmv92q31
a7fWr91aR9DWOoK21hbbWltsZ52VO2ub7qxturO26c7apjtrm+6sbbqztunO2qY7a5s+Wtv00dqm
j9Y2fbS26aO1TR+tbfpobdNHa5s+Wtv00dqmT9Y2fbK26ZO1TZ+sbfok2pRreS34hn468M3DJe8u
n0b3nCHzTsvq5tMQOi+iR9G+6GqIVxWlbzJl2n2sunYIfXUPJxcO16I75ZQ8mH5GaXE9p7eRltU9
1GKT0F+OWNLj9UthRcl4H0ZZ9VqC8vvP3392oUFHcbiAAddr2wtrmvTEjITwqIEbYFVN/48a8Fht
KFlyfvgK94b6VHN3s4K4VBghIRzL9rUKzZIC4x7qqij2qcv3y74GPl3NJrscE7pFH2i6VF+k5VeR
1T3xoqSodoIUhujoOtiSxUtet11afDpdO5Em4tP1nBf59RNc8ms+Jdk39Pgbmd0vBCdMz6RvPxdW
Be+D3/n0+X+5AIBIDu03OBUfvtl8CNegPDH/WwiWATlBGrYgjE5FtU8Lo1y8gZ8UpUHGzDcy6FIY
ZlV5BKNUGG7XtD0HYdSc+Xx9DcKq5dKuGeLs3skNIgncw6gfCUKcwPXakPwgDl5e0lXatM/HF553
Xn4U5/5y4Qew7m8jhuFdQPyLsCzFvZ3QXSfYhu01wTRwh0mugfvqrQrEDpaacLMWuH3MnJ1zDtX3
c77Bun/BONgIAM5B5yowDD5TR0xD9lXoWTrmGbSHQs1Q0rm+RR1OTP6PYXvF27dlcO4ZO6Zd0Qbn
Cyp8cKYY0+RjuH5U+4p0c8H51hCtLwhXatRgqwyx+5BlZsk6kOxaMg4lwRScQ8kxYh1yqSGOodea
CdegHRZ4tZkyDdtNodYbcM+g1JWHtGEN3FC/d3uu4B1yURi4HisuvkI3w4mFruaZz6hiSPQQjC94
Ljfd8Zi/BWYcbKgOLLuyZofqVOZ9JKc7WTcVLILBFhli9yGLzJJ1IJm1ZBxKcCk4hxoSxDrkIkMc
Qy8yE65BOyzwIjNlGrabQi0yaMW8pnBHI9yUHTP9kImre0Gg0aBjH2pgaPmHGiPjF4Sc0GO+oae1
gvcHdGfgKa5i/RGdGGq6d+UB6sdXety0B5vxM74fMukN7wg0UGZvCDsK1cxDDcSBe+A9/pzxB3ft
h+3756/4qM79kO3qwL6sRIzsj+jhgfkH97L6RcH7YnjNR/X24g3he1xaKz+gvyXrD+5t1WuC94R8
yUf19Iz/vf1c1Rk0BcOERXdwyur0FTMxf7NK61MQRptQjJ6A0b3OODN2MIZ434RlCNlFwnGkERK0
ksQyWDXv9UMacSr5egfJTNJreQrL8ZQfwzIEd8+7VPOB593HfyNW97mYjRgFcAYbuB2LKm3HIRTu
5Edq0ZCY/ZvRldd7WQ9MQ7CTbnBf8OP/gblokg/j/GGMvy2zfw354AK9AIRlWIZ5HZRfwBEbwoNx
zG1IvHQvq+6u4/aB0Z1elQOjhhXHb+JwrMJMtxAOmgO317oqT8P13zu5gbtnwEUE2N099IN5YveM
7lzbej4BPJMHXgGmdc/szhnU87nbLbnnFGLQ98zudEoGPl8g7V2AQ+aBF5wCN+ySj82jwfhW9/nv
TLmFrqHwL4KUuncp2wuOd4q1gR//2IZrohTzK4gcUfGl9KXZB3AWSc4Dcj6zt1VYdtuQ7JoiigPz
SwLzWwXmtw7MbxOYX+j+PRTp5Rq8l4lr8iFcVx/CNXC/p6GbNA3dmunHdH36MX2ffkznpx/V+8R2
8zFsg8oAzink1/dezuwt/hi2ycewXX0M2w9q283HsN1+DNvdx7B9/Ai2gXWeMd/kg/iuPojv+oP4
bj6I7/Zj+KYfNSDSDxkRkKPtQ2qMjD+sxquPYvwRo7g+7T+kiYFv8kF8Vx/E96Pad/NBfLcfxHf3
MXzTjxpo6UeNtPSjhlr6UWMt/ajBlgYdFTDKwm/aBq7Jh3BdfQjX9Ydw3QTmWnaXwByvEJ0qkMW4
55p+zLBKP2ZcpdCs4esKTIPX9IO6C08iwjcBsU0+hu3qY9iGFATNyyloowK/kK3ZvDctCylRRmdQ
QT98zPeeBjixVnrQjuOQ38+LVzCtT4HYNee0vutYaMSrK/O/unuO2051muUgcu51oeoZYUjEa1VA
0op7fQOVTCGIYFd/DNcPqfClK9r8WrDQfCGsZ56FZ/vC6iK9Jh/ENzTbe4/ZlUx5Vdv8kBah+aJv
zX2etz3fIi9ZWgfxQZnzHBw/4g/hmnwI11UIrtX+T/Q2qi6wIIXkyHu+udtNa8FVOBuE4yj2o+Gk
7JRvdTw2LGR9a9Z2d8XfmTMcJ1y6jyH8m8LFyJJ9s2fnvMzCcw21Aky4Vm1bXUJzPbzzGZuxOjTf
Y12FmQBjplxJu7L4Q7gmobned8lqzpL91YVZ9wS/vIQhGgfnmATnuArIMYCX6YJlyIVe8BQqZBye
ZcjuaavucI5DMwxew5DjJ7AGtuCafAjXe1oAL/V8D0nODjXjC3B8t8vnkuMks1kgnnf6Nc8ZJsE/
O/mAz06+KSD6fVCOAUSmgmkAobnkiokxgnJs8/I9KMNgwxKcz8MNSeCGZv5g3ApWnu66ODFlF3bA
CI7Xml26IhhHzMZ7t3FNxZPv+prALOvTPjTH6jVcJe+NhzrlJu5NBRVlI773W/yUbO+0SE15BpNk
wKwr0+ORb8pZFoxlMMEoLTDtXeGUFvzKtAzJTmRmzVkTkmuAVDULnveZhZbs7r3ZtODI13zG14ZA
Y/HatQFFOHALt0oDtzvvW86YoVaSBeRXNU0wbhkneA8rtAe2IWX2wLXmAzL+AJ5JYJ7BpC2wvFRZ
fswDDqOwyh5yvO8+/ZTZnTeCp8wCL6XE8v7bk1OOIS7Gw7nQN4f0+s2+a9sQfA5FdV84457T/UH9
e1Z8VS9D8Ll3K9szav7q7jsw6zmFaaM7VwhkIq6a383nzyovv9mzF1YE4RRmQCKrQCMSeV3y+0Ii
DZxCDG5kdE3rtCgCNXuQqYKcgrQ5NXd66FoWhhV7OzCWsUAVCzSyiBn8ZNkp0IdW+7ZrAvGqIT4S
XwSLQPwCNhokK83vnkddacif68rkFaNH3btBGbEKNLqIWXNIC3Z/WJERx/5IhAWq4r1fe8mbhm+H
7/RiRIU0rQ/f0ICPw7FKwrFah2O1DcHq/oHVs7rXSXNgdNdC1rMJsGUeeFVlsM8Lsa/rmaF0CDPW
iVWQsQ6xzdCzsAHTVByeZZhagsNLoNohq4C1WoVjtQ7HahOCVftaXfNA7S54JQF5rQLyCtL0aKWK
g3FKQnECB4suxIL9R/XNgW88DmCIjAPzS0LxK4RHbxyaYfAarsIwZGXT1azp9vgs/gimgT494EIP
3AIuz5wdraphWKEMPnT1C4uDc0xCcgyjwfXsmjat2zAM+72PSIsXgmcwAS153d0Xe3bKy9/uM9AL
Rn/nrP4MA4RX7t4tsoJlYCljYp6EZR5MTkzZ0nY/ME+cRXeyxCNXGgFxQF5JEF5BNmfIadhjhOAW
5FxrYPealxn4DcRBuQXogqphKG4C9YNkV7JXNDMFZPjWXrlueHfvUlIxOuoIIhbHDMONGuR6/93G
gZccM2mWBeXHhTRfmkMYC9Rsk49he7eufb/3M7FpfoNR/RMt+rBDC8owkNhXMU0CM8WFLzDP/BS8
Re88L1JxDCF6pyyDqThTtvc7HSmYSi0vKNMwF12MjJOPYrwKy7gr7z7YV3CVAvVOpqAkhNqfCF6B
NyZKrkkgrsG0Gskv1LyHGPOh+kXwChCvYsyOa5iBJIdkGKrt/urSDBLXH4LuvhdcA49zC/8kOP+P
a+8wO/El2xCb8TpE9pqBUxjRjqzA9BcH45QE4RTKQCyYhZIYdagsPQO36SlpCI6BVui6z7ITh2OV
hGO1CsdqHY7VJhyru71FmrauvrIw2wzBK5BhQnC71l3JQux9J/zCiMYpy6ou79+jTlnC4hKUYwi7
24RhHUAiCYa4MschmSWhmH1lr4FYhTMC9gwDnHjNzs+CqCAznnhtI8CSM2MbZuOAmbEDZe6V7KgR
746+NWVHaWhDcRuyv4fieOc9mimzIEkm+/TzQWKhSW55uMy9U5Z3XuaaMrv7PuqUXYjLqJIj3qt7
F9MjDs0wCccQPz0OzC9E/a4pmIbKqmZXlgbZNqrYHqqqzuIP4vsBzRDECj1iXNUQdkgsYaGkx5J1
KLlOnD9kSHzMgPiY4TDmugrNNfQQI7ZvH9Jdbx9U2/cPqe17wNrKIZA2AbkF2CaP2QVa7Efcmu54
zN/C8Qy55Pcs+Z6xOpX5fRvwu+24Imc1xcOIQzFKQjFahWK0DsVoE4BRyzXSfccfiyffFV0dwFvC
wv7em2xG9h/F/HNVVB/ZNpL/x9b/o7j/SjGdP655+hd88BcEYr+HoXjOT+f7WQk1995AQVNu96oL
U27jzPTxh3ANIMfRGzMOxCdUfQIsK2DzqBo424pDMktCMgvwmaxM9wUTEysQs+p4DNFoI25JMG5v
wTi938+pj/cbSAr1/ALJoZ5fYEmk5Bugj8m+EKgxiVmglhSWyjvvU02ZscOd14Am7AJ38ZJpgP4V
KS6kS8S/g3P8TzCOKKGD1lFyDFHHu+0PglF/qBRmyk0PRoKxCzy0VWwDDG5x0hno2wU3iPoVB+UW
7ksxYFMcll3g2gVQsMK4YS+Y3fWhLab3Sl9YzR9VNR90eXu5y5dlyfLOKKdLhkNuw6Bc70txs2R4
Kqp9Wnx7r0DU8P0sdf9fr6y+9xrw8iXgOPM58EAAnv+nysNX9F8YvykkV4zu9XPO/wnK9k5/yyXD
kV0uPFuyaIXnS5agf38Y5/+E5dymh6/hOWbsGnos4HIVXjCCw8y3RX4qg3P9Lm3YnR56CsahYiMs
WcPpUH0sqte7uEIv/R7C833E6u41tudEq8vdavyc4WCqCsI0gC/8mFsA7/URu7ulfM9JKHtBeA0a
YxB2d3vBz3klAXmtAvJaB+S1uZsXiff74x2C+I0OHZdrlwg036io0iw61GlzvpPrNymuFWGqKJjd
fyo1YhaE1V4uXYG+s+cX6FN7fkG4ZXX6KlrvwMr7QlDPGcIFqaINzbFui4AcC3ZsA7LDgMYB+VFk
qbCNSDxDNWM/HFGx2LP2LsVn4IvxLO7Vo2bsLukbbSj3dwYj1/EFeXtMD+wDWN+bMlDHt7mkRfEB
fO/MXTJjG2q0IrMgN1dGPIN2umRWVm1eXtNTYLbCdS0Ez694GaEqm7xp78uiPvBsrlDJcNM+kMF9
wTDcEELjZCBVA3ld07oJpmxcWArX4wOFoFewvNcPdWYToByHwdjVFVoKsry++yBWzTnE/lTNGdML
l01wvq/1XbZjPdMAG38183tXoilTOt+/eyaomN69xKuYBrhWqOQbvrsE3/AzghgHHgas/aM3u3xA
G4/Zf0CTDCajPONrdx5SBrfzdvkQ3h/VKAWIjMDTe2AcotYvVZ7VrO3qm5cjeVcWrpQ0rCSfk3uZ
4Up+3z1NyWpysWKfZmV6YaF53ne/RMn1/msrSrZdmR+q2z15jnx/t4eDrrsGdc/lXlnXMyr5n7er
z9Jd/lAV1e1HpJJLzcD7KsnoYCgIs3vObaacspxvNeo7dlhTdr1jZhBu95yILDihy1UQZs0dEmPK
6e7DlYYduhoW2Cxt03/+/tPNfCDP+OjuxZ17xjm7EwvGKs+KkKyaO/OOz3nSBjljh/ySFmGZskto
fnfsjjUs365hGZ7ZW1iGf3bl17AcL3l5eyIYNcvq0IYePJASnuxfQdleWX24Q9xrmBahG/QDvpyL
bo4pT+EH1OuZq/AfUOOQYq5mx4JC7rWoVoYbAiPOAUX9lGvYloDYp1kodk24lZKz+lb+FXpFmvAO
tzDN2AZcn6acwy1TE74BV6sJ35AyZsI46No14Rx0CZtyDr2STbgHXtCmvIsPauyPa46PWOUmLwi/
2E3Yh5T0zT0usm31Pe7Qfv4mrU/dhQ+x5nY3OBWzJCSz1f3M9tWpa+6JczewunMzOjD688pO9101
m/G61nxRrd/JTtQEYvoXx+b3hg7S8Cyrtuwu+9uPMTV8xYXAOi1PATq8qF65GIaQRGlzyPOQDO+0
dw4s7w4KObC6lqdvKELiW7CRdL3dUD5lEnqIh4hrNHAD+Y5y+lZOIKAydk9sSmTB3nL++04W7R2Z
I5HFPUcZyOBaV211l9AG2ppxQrmgNy+nT/9afY6+/O9/RfE3cfTlh08wluqIv+saPWwivil7Oalh
VZ01UVZdooc4OrrAEjfYyg22tsK4NGkb4LfXAY95AQHpoyMfY/gdViRefDfWcYbc6JEYDT89tBEm
SGE1sNW2N9fzvnJVL+rq3FhRDEUHQBCAdVUYG6oHcyHyFSqwM2Hbs70jrw2rX+Dz4awhineGik6Q
yYMDUpwTGJt/CTZ8f9PWHW9/+Kg4tsK6hjnDjC99L7CDmsZSOcJda9YY25w/gi+AkPXGuYjXA3IY
FcBu7wIzCIAx7MnCra3Z0TgRCcV3GqW5alyA9TLHBWVotRFq5cRr7YTaOKG2TvVSz8Yk+iMv38ej
rYZzpiavSmiW1pck8ScZyymKOM4fN5/Sw6G7dODtEL2kRcc/Az39oh4yLDpjqixDL4ToyJexqK38
iKC5ov27K9ynXvzn/6ZFhJp+o4XA12JS4x/4GsL3Z9+qm0YgD2lx+IWruFFzBdd5XnMj4zkc7/Lw
GmVRWtfpe1Sw8tSev3nz4YHN7Ple0TVeNJ5w6hkzCaomPWGWN4e61w2NNOD8HfHhC2fpoxvQdhqn
xkJ4fdqnN9VtHGjEiHatfvbOVc38EHXXDP7sjST/3SugGkLSgrg8iLK6dUCunJFrZ+TGGbl1Ru6c
kY/OyCdXZPzgjIydkc59FDv3UezcR7FzH8XOfRQ791Hs3EexUx+V2TBDorK7sJpPHa5zHfLGtDIs
aG1IsTxM1gojjVwOv7L3P/KLRTRK155o5rSigeflmX9nizoobPVY3b5bCLheLSrvAiwrByz/si8o
/M3fBoi07kVq1C/me9NKq6U63EJlpmlaccvWgBJbLAqYT52blqcC1kn6YWwDI3VnWWqnxG7vg+2e
6EwjkAyWy4XPbdjqqI1EWLX+efT5EH1pfAh+LqL/fYn+cfah+Z+/oj9aH4LD56j5whsQ9qJen1P8
HL38b3T+hzstdqhNkwU0urXxwcPY32a24DhA2kabW3QGoWTQ8Dfpoai3DLMwSQ2TZY7de2APHtjM
gP2lwu7owbEH1vhxC/DeB3zwAZu+r79kEPXbNrx+4EDAt1t4scLYJku4E1go3P3qB6b3tKa12Iee
Ktg3RdNd/MmdKKSdyWnhHcjohhLfxsF9ZLIAOr0O0rj92xn5HyfkcElBhZYKzh9gmFB+HKZFY7BR
ZrBhfj3n0PRUXp7kRgqkTpTcyeBmcvIEuuP9xMBEPlambv0GOw97PVq4TNYuqMGuY9T1MnZkXOhn
YtnXrSZye0m5oAYFGM43aB1IVOPITuZA1U+y6DVvz1XXYp+9SGeWGTEHHhjarijmDtgh0Y5VM1pr
Z02kZML1GJydTXTJG/7woKwnGWJIFRwWYxUQEHDpkfdDlDayoRVIed0iWgpsi1SbUcIz2IHovlAF
tw3Xnga1/KFGZkVkTtUrPb3eZ/qaGZEKW46XPzfT4FT9UjEVomOoLRNbucnw4c/zJqq7stS1M13A
/76rI3R8edNj0OxvrVeT4w5AmDTNX9lc8qKvd1m1QoxMogOZSIRMIfvjJc0NbylY+lXaoNKieIcO
4S+SnLhwadPyAC47ik/qGSzgvNbfkXz+nR09aZ3getRUHdYLK/5n1L5KbZz1jI0Uv4FWXr+wb5sr
O7S/Q8FoSMXqdn450e5vNIPYCdQlsAN4knhQ4FEdJ+GUviQeb/F/iaAwffy+qnhnly5Ny/iu9AZc
4ohbOeLWjriNI27riNs54h4dcU+u7fzgCnTuOdcuibV9AgfzJ1ip7cNhCdW+XmgLgyHrXc9WgfXh
u/LArj2wGw/s1hUrd1+xL0HiS7DyJbC2zWBewgdgzvoHG2KCeRH+2p5ZfQPdKGayA50IFEMKhL3N
NXTJjXQrZzphJOQCfuwd6UB4fUMLwsWTgF0aX4o3XwqdAqUluOnTrwdfAnKw72NPuRO2vgRvzgR8
YzDSPp3JwP3rj95bzoHAcAI9wKVuOdWf1aodkUz3hLZ5NkMnXuiVF3rthdYKfDE9Hb5wgUyckStn
5NqMdO0NJVpb35kNX8sVLQmuVVCBtTWAMFUuTGc4LT8K5+HCcYGUcR5QiTcd6PA/B4OOw5tU4OUL
hAPmcI4Kgf/kBJWF+/wUgWtyFtGTKFlAyDsDb7+AMyUcxow34gOMy8u85CzAJCXYNQvYkX1XwHmx
XAQv4Of+tqj0kc4ofkl5o75F4m4FWjIUHMdQyXdpMTDjUehZsCJFkRnUpG1Xj23IapgQsirQ5VqV
XLSSnYu3J17pWZwszSgg/HiU1rzpLxCAtP8ucMfRvQVDlqvKypeqeGE/0oh4jzBWaGNAztqSlql/
+xL8x04gQ25FEHmRFf/kSxtpff++g9bnvRhd79++BC5vQMWQ75zqtCAiOw2Yz/jEf8mbSoX+Pm/Q
xR3W6V/SqzBagQu8chjN4CqGdXX9QhbkptvX7KSeXgNMUfhfadc0eVpCWg8jlzFQUfwTupUL2ZaN
DOK8HYWaVONdag3l9Iwgz7RA+vuf6ENf7f/kPL+D6cBF/XfVWwQXT3CDpAGEYds1rP4CAvjX8p8N
c+I5JQlTTzNPx0oW5B1DASXFsbkW3Nu8qZ8a3lGi57QklEBOOaQEYGJoxPRCWmzNMO7QgUlRlRpZ
D3AwgfbtY8CjRZ0+TovqZ0lDdZ/aSLngYLTkvuTs1dSVdj4OpFqImElpRkbL6oC3NK3w3uVMTEj8
EjiqkkOEtLMQbHyZ2PCEakzCoxcvjizzEn2AxYrvRNKfkrrBawZHbqVXJ4lhiiYgVxqnT8AFDNTP
2fZxwP0MliO8JaIB/MJq6O664pi8vHatDqN6XtXXM9fJTu+DupRmedeYsVhrLfBXnZL4hc+1rkhr
/CSYgUK45Uw1fv7IC0WVSSNLj/D/YcnTtA2BMQqbpgyDV0QnXTHsYejXEfyz4RqpHom3VnTlvWIR
5U3TaT+My08umLSfUov1ipg0OlhTdXDerV8ICEZ3H3QLEP77O2tifVGiL1rpizQlLPuJ8t3OSvt1
h0EjH855kfEl9L1SDHTynScM/0UyEMLAiV5cENRMkPRqlGgasSAtlEThPtCPiwXHAYCr+2gnuIRi
L1EGwUVZt/8dlxs+Lwe9wgCDNZBhOHIDCI4kCbTsBDyyHDy1QDmdzaqqZvmp/BUVp0/pvqkKWCnk
IItEudCsREfNDHVTHmAaOJHbE++EDGbJOR37Oc7gVcZ3Yj2NpmJDzMVlWZY3aQGXzDNUT0q+826i
tImEKibHjYbz8VewMfCJ/D5SOWpW0DaHt0MkYyw50etRx/yNZUPDGtuQw8UQlrzFoqxnP8Pf+i0K
NlZwdQz8djVDHRnNQ11LTlpdw+KSNl91DHpVfToTGh2+rMSGlMTUy0l+Ncx5oFGoGhMGIL3ykrZ5
EV51zsu0ZdoXwisky/mw17xiQuJYrdFFz/ENzikIVPVrVbeysaTUmI71c97Cbv3TTLYohIBEQoVZ
wWUA13zBokDenyJjw9uC8RiOjeGC1JTmJcTW6Adim+4LC9QEucLBY3nSlPJl5oqeMLMvVIMhvQu6
Eem4IQC6ZM93T2oMbCXkkQfqweSpusCibiiOSPhWgndpetW9e4yldcAR3PzV8VmvRr/l7NMh5a2S
sU8PcDsYGqb85k0DSGYlEKEVzawNUJsKk8Vrha+TirAvSbQlK23JWluy0ZZsZyWsrqtaUTP5PNE8
X2me6/jvNM8fNc+f1M/jB81zTf1jTf1jTf3hkhvaAdWFmucbzXNNY8Tqxsi6y/Xb5g8uJhV9q4DM
3wp37UGC0ECbjcFxYWIqXM0LIbCEatDL54nm+byFL7CQGp6vNc83mudbzfOd5vmj+vliRMnn8++V
sTAUTXGtqwNrGgyUwZXHQvGVCsjaDpl/O+nDY0RsRSRWxGohsRSY1MpmvWBDyxF60Cqq2tIw1jxO
1I8Xw1M+TzX4/fy53MwoXs0XM+3TRCUYRNHsqVgxFayGEj3NSluy1pRclx6ihner0UN9hDr3af8+
mG2HRpelh7w+FIrnzaHOr20E4ZDqcux2PwOMQ/wril/rvNVyVzznmgj5ykfHNOebVKb0VIEIKJDJ
uf8RDRtUUkB7xVEJzUs4xiWVj1QecQDbeNKZ4RXfQNeXqmlveJWaFjTpenTTf3Qx6x4uSRAuq5u4
lBFKG7rc+mbuYguLvmXvY3POsww0yruY8BFeFcWdTF7yJp9uIcSecOSMIJ70bS8R0jqKdhoLSFdM
oa3OsNebGbqnCNzhgmWG1PUFqJ824vBCHORQ6Kr00DpTuAF/g42ntDcsSGCPT5UVlvzhQt8ciltd
xM+sqLQd+yT3Z7B60iN5S3COHO9u0vqA18/59qaJ+uXXRIFeR4LEjaLp9hTHS0+FCyueZmE4pt4e
te9G7vgI2udZHrHLnuH9juVx0wCqGZ7sC8/PAqPxLVHYrGl5OFe1kRvi/upY/a4qhFrPuPOVLK0j
PrnSxV0MLGeXRm1IotI3Uynm2cajnD2D2Yv74+iI1291SMgWpLj7NUO1Fe82GIqqKk9WtX6ivo27
51S8X3GOUh/DpId7b2xubUHwOT+d+VSp22ZUsSlEnNFh62cMBtfoFl+z8NNBGnA5WQwuGovfZn92
XMDRXGKczTjGEuLknT9AgNEWBCCdtqhxtvGKljr4yAibZlopmLP7y7Wnh7mrGKgSphpm8lS7ry/d
YVbUWCKxxoTqY5X2ILTwZJjIffqehkG0fHoPf4iAGemA+FlM/Gt6QHHE5w3cw421LDUEiS/Bypdg
7UzQ1qw9nD2+QRAkvgQrXwLXb/i2zP4LxmDj3SFLyuRmytXNlDd8p2enLSmTmylXN1Oqv/ON7vnG
psLEVLgyFRrfiSoVCR/z+8fAxBW4cgUq64hSdzjcQ//Z+YIwILOq4zosV7gOX3XM0Jei0bPgi8ZV
zQIt2yAYlx8/Klrpi8TOczMXrANkRstVzbotSCirFlgA/F1xSU9LOrndzr6MFKACjjwm8S0XhYmp
cGUqXJsKN6bCraawxcVUW2FUJhQF+6I6fJ0cF6saI2OHSscar6hXMHPbd1VxhQf8Vfl+qbpGnBcq
X4LISdZsRTnE3ZUY9cuaafTNRWGiLOwDd40UDwXsDJoUbA1fQDfjmsHULWUGVDxXBHQdCi95Rnor
xGJsUXVagvoNKp2H5Y1G+UAwbk00HYdl/JUZ3OGFwaXCjNQwoS2Nx4qCoA+aAWJqoq8rqjc+Q22U
g0Ku7JpvIDcv/YCgcs4+LQ5KeUDHpfA/zRuobGUoWyv7kso2hrKtoWxnKHtU1wWPfDXfIFYQW/E4
TO+4GOMBq2lf5ITgu8X8bzB7aKfEi2ZKvGpn7Ktuuv7Ghy56DzffqeYIjuzBGVbZ79Bc7AVmPKyq
rGS1ckzjt8voJ3rZgLATa+FeA9+GZX/0Sk0PhFXn0zU9scF7h26+9Cf8ZSXsUvt0dHPFTmck6h07
fIhwhRzpEGRHavNibEu2wBstUsSFB1sQbFynQ2uGlb4Hc5cUNWxmXZ6BeP9Il/PPBQj73wH8pqsm
2vMjPKeKxudaStjsnCaantPMSPLLKVKcD0RNd0WvjFjbdGjtQtE6GN61HShSDGRRf/AYobt5JA4u
VTRk4h935tQ9CE0iKX8sTX66mrowshHjOLKByCvFhurfa+eJBqpoT6ay3hFEj2/P/PtOZ+keg585
mapRoh8KTgxuIO/ayt7EKspzd7r1paCZ1OBZc9OLhwFtef1IhggQevI0ny7V31wXTeHGYJFe4YT3
mXqx+cRVqXWcbBN5gdWDYu1BESe7h/WDhqBmn7i2XcF91pMBQtxMgLdn3kB9dCMV5pBe8bamAcG1
x+czBkYwoariebCb6RDoydw8w5h7HoKguqJ/lMnaPQh+k46ErjReBEefGh09a3N1BHO+7o0pwa5t
OcL/5lkfH/zRozpHv6oYm/HC9/a5afRf8uagL6VD81gP4LuZ57p61QN4oWXe4LPnY93HgteDrLOU
YHVXMCuIWlCJyriQpbs5n6sisUB+r16bH974F2qaaUD+AY7jNigll/rMZVLzO9t3fIPphP1y5mrN
Vw9oYoNWRWyHOHBZ2SH/xZfAa+yIs70S+sOx5QDq1nAeXYdQawUooCX2h43tApq4QH1qILBWvqIH
mtgV6MDRhZkTn5UDZu2A2VgwLvN9QFq7AR99X12UAC69X/JS3E95zvm+6s0BV6TvkG5KGiLtBP0J
JfmB2wma/EJXgfdws5APIW8artFfIBQfHyW30fpS8XXottfpVjc9iRHOhcMz/wIrpoX/21HHqmrt
qDOTYQjVKKNyO2Cw/Z7RQPoMGxSN4qEmgLP1/PjuQVGwY+sBr4fQZha886e+EGeI6AueBl40Vdua
Z/WcguzPPhRtdXWCo6rzfD20PmijpBnpbGLT5452YCwN+8/k4fbcZh40bfYsrJTPGUsPbf6StsxO
D4qq69CeU9hG6hxvHaojPZaTFK5Q7MDGFT0cRRiwjV+jND4t0ng1R/O8P+EJ7nP6V5d6wp/r096D
ZF9wse6L935Hxzzhnm84dodzk6f+FJ7vOdXpuyfc+w2Mlb54z3cU+YV5wj3fwJ9WVelN4PmWMn15
94R7vqEq8hfmi/d8x7WrrwXzJvB8S80yP7Qn/yYvXpyk5pTA8y0tSwtPuOcbXs95y3zxnu94Z3Al
3pvA9S2opTw/uENjd2jiDl05QIXN+rnXJL1pLJqhpOENKE91vNA2XXJEIbwWXNBF2jQOOHF5wgGZ
u0xu0Mq4vltWkALDAY9+FA44roZ6ak49haPy1ONd9SdOwGeObfczgM/MnbFz+3Esb3L3SrwOEaTN
0LN3e5892/vs295nn/Y+e7T32acNz85tKLZ+dPzojjfv6NAE4dw1Y/Q5dcY6WBfGcGuPj7D23iaj
jlNtPSwKUwKrOWECt9sSJnDbcpF51TvzqHTmUePMtbpgFHMfcWO0rQ9HWJcRN4JbR9wIax9xCHar
rU/PTQjsnTeGO/TfGG7rwrNXvc8elT571PjsXF2Weiz3Y7StD0dYlxE3gltH3AhrH3EIdqutV8+N
CRw6bwR36b8R3NaFtZ+9qPawFdWedqLa3UZU+9mHai/bUO1tF6rdbUK1nz2o9rAF1Z52oNrdBlT7
2X9qH9tP7Wv3qd1tPrWfvaf2sPXUnnae2sfGU/vad2pn207tZdepfWw6ta89p3a35dR+dpzaw4ZT
e9pvah/bTe1rt6m9FpLaYxWpPZaQ2nH9eFtabaAab84EwN8FTWYSF2SeOcHIoGFEVsVUuXEEg7bg
BpWqjRsaNRs3KCk2NizupG2g+Wh0xTsMhAEtRqQj2jpmpKcgGuwckW+OwJoVNqTCYcCHwmH8qDwM
PEhcRtLSx8CJwGVMqb0MvIicRpfKz8CHxGGczT0NPOC2gSSiU9oQ7uNsDLeOgDHY3v2EHnStC/OA
w4rogCZ/C1cgHfM7oy3Tn7DjgwMvtHVoDBTy4MAL7crfuoaOXVZeKstKSmAn0MRPwxXu2IP2hXzk
+ezYUk5rgsLE6wy3yXiVkdcVb5/bCzOvHe0wdhBnGw4IcugypdnYncK+PqgMx85428owPwVzw1oH
ReYzIjLn4ZC5j4XMQ8hn7hI+cxlfwzGeBSYOlCwo20jtD/csKHkkZYE5jPnMb8BnPqM98xnqmcc4
p0M2I2h5MOEMt04JxdGEK94+MRaHE3a0wzhGnG30IchhzCgPO9wpHEaO4rjDGW8dP2ePcXF2HhRn
nxFxdh4OZ/excPaQk2d3OXl2GV9nNzl5dpKTZ+tIPTvJybObnDy7jPmz34A/+4z2s89QP3uMcwc5
uTxOc4bbp8TyQM0V7zAx5kdqdrTLOAacdfQByGXMqI7o3ClcRs7ykM4Zbx0/tce4qJ0HRe0zImrn
4VC7j4XaQ07W7nKydhlftXVw1S4jq/YbVrXPmKp9BlRtHk3P7A0CjbDsWYTuxoAFzaen3TZ+Utn4
dQQQ5gDC+fuSbDZR4ksUJ4/eJNu1L0my9a7Ydr3zJdklG0+SZL17inyJVrylvUm22yi+hSi5hWh1
C9H6FqKbGmJ7C9HuFqLHW4ieburch5uobhoT8U2DIr5pVMQ3DYv4tgly08CIbxoZsffQ2Hi/aJ08
+bbe9mnl2027OPYnSWJvybJL1r7veVw/+U6mp0cukWP/1XLtv1wm3uONt/TKu27x09p3NvCvedj5
twJSeS+063jzdAPV+tFbp9k9Jt4t/rjbeffs08b7PUm88ZYISRInvu2WrB699Zpk/fj44D0aks3u
wftNu6enlfdYSJ4eNo/+ikqSPGz8dSKk8l6TVrvHtbfwfvCWd+vNNvH9ovU22T56f9F6F299a7eJ
Hx5859Jm+5D41m3zuH5IvMfD5inZ+NJs44d14j2GiMr7XZvVzptm9xRvblhoV0/eK/pqm/jK48eH
3da/HR43D97r5uPTylsjfOK7LF/59ZTwXaP3eHhKHrePzzfoHLuN/7aeL5veG+6H7Wq19Sd62noT
JY+PO28ivh9OHrz3nFwbeNxsPMwouOI+8GkoXiSTFjWfVhkkUcW0dpDWEELnHNMDi+RDZ4KyGqUI
d6U+VBcMdMQyD5JrkZZpLfJGpRdWpzYa+C0j2jbRKrPhr6zGuLcQkRWSPV2ZlaSu2nT8GYkvgfge
zLfsSTrCY8yoZpw9ffRYhRsDouZc1e0Z4ueOglJP8BR2FqLRd82Icok8pOWBFWaISLoFSQ6aKOsw
PrGRAPNumQBggB1/0BCnxYTiQ0Pk584nHa3D1yJMswJaV00THdOMLQJOm8HUrjpgt88P0Z79nXNM
H2CfMmc4gimbkiu6OadZ7zpuR7+cPPkPSdMWBOImedTmFxgOx648qPs6Y0V/m2X0mP3V5XxEQQzx
RYRwKaI0o4e98b+MiGPB3swTCrNAHNNLXry7jGiYATTxZzMRor4v4Xl5ZjWf9FV7huDPdXVttCBV
QcvquruOktYZKzfgMTkc/5zUAuQyKT3wac9FMvx2Yg40hVlQYFhxY7Nf0vZwlm/ED5MDRwXOy+iS
vkV46BnRObOFfd7IN9DUkElnHJAWxhC+HZKGK8ognUV6hBSLxsYhyTUROJQZzvhiBZUbgUNnSKhT
C0gwJcSYUywJSnaiUOkaASBCLI4n09/jKI1jqIwIPsJqFj6Zi220Vo5iTkyAV4aD/5jj7F+kOlJQ
UCpJ24zRCeVh0RariLG9B7QZxuvkKieall0bu8BuugYi7royhTjsjkMCsaavEbltMlgVTIyGqlVX
SmeFk9kFyNcWE5bGTMbbNL3muqG7RJoxQiBHmLkSEymMvo7ptbgRD0BRnhEQwiI9Tq6SbGqiPrOj
I0GfetYVj8koHcEy32Q+DlztSiTzXzqSjW5y26C9iHuIvSkSb4qVN8XakWKcrdsKHlLGuuEb1o7y
MFnhBg1SiX/ls18lPEfgfiPmxlu/+RqB+IzEuR5dz2lj/jaorkjhTDtBkVLGRDMIc7tEscpnyBcN
a1CRl191a9VEEYSvU+upUxh+DqREpcfYHrxnbiHDZcmFsOraqCtzGZf+/wdQSwMECgAAAAAAGq0K
QQAAAAAAAAAAAAAAAB0AHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L1VUCQAD438lUA6H
JVB1eAsAAQToAwAABOgDAABQSwMECgAAAAAA+KwKQQAAAAAAAAAAAAAAACQAHAB0bXAvbGF5b3V0
LXRlc3QtcmVzdWx0cy9mYXN0L2xvYWRlci9VVAkAA6N/JVAOhyVQdXgLAAEE6AMAAAToAwAAUEsD
BBQAAgAIAKmwCkFBOn/TmgcAAPgXAABDABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9s
b2FkZXIvbG9hZEluUHJvZ3Jlc3MtcHJldHR5LWRpZmYuaHRtbFVUCQADnYUlUKN/JVB1eAsAAQTo
AwAABOgDAAClWG1v2zYQ/p5fQSToAhSVbMd2F9uthy5x1gHtNizZp2EoKImy2FCiRlJJnG3/fcc3
WZKlJMNatJL5cryX55476l2mcrY+epcRnMBDqh0j66Mlo8XtG7S8o5IqkqC/jhD8UeRBBQmJucCK
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
hxX/P8HqPEwSQqaYD/7/AlBLAwQKAAIAAACpsApB1tHaeS4AAAAuAAAAPwAcAHRtcC9sYXlvdXQt
dGVzdC1yZXN1bHRzL2Zhc3QvbG9hZGVyL2xvYWRJblByb2dyZXNzLWV4cGVjdGVkLnR4dFVUCQAD
nYUlUJ2FJVB1eAsAAQToAwAABOgDAABBTEVSVDogVGVzdCBwYXNzZWQ6IFtvYmplY3QgSFRNTEZv
cm1FbGVtZW50XQoKUEsDBBQAAgAIAKmwCkFsoyryvgAAAPAAAAA9ABwAdG1wL2xheW91dC10ZXN0
LXJlc3VsdHMvZmFzdC9sb2FkZXIvbG9hZEluUHJvZ3Jlc3Mtd2RpZmYuaHRtbFVUCQADnYUlUKN/
JVB1eAsAAQToAwAABOgDAABdjjFPwzAUhPf8ipMYujUzxkSqKheGlEokTIjh1X5pAde2np0hQvx3
XHVjO+nuuzt9ZnKdzmXx3K0de/zgSPb7JHEOTuFuInrAL9bk3H+Lpqul2xus21tVkqpzogDrKefH
Cnbbw8tw6A32Zhg2T0bBfwbGvcJbsDSfzgXjktiIRFHYUgixIHNBkphYyoJVFrtCnBBm7+tire+a
TW9eR4WRc03WKa6n3uPxi23B87jvd1EuxvOFQ/loGt1en/0BUEsDBBQAAgAIAKmwCkEpJndpdAAA
AH0AAAA9ABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9sb2FkZXIvbG9hZEluUHJvZ3Jl
c3MtYWN0dWFsLnR4dFVUCQADnYUlUJ2FJVB1eAsAAQToAwAABOgDAAANyjsOwjAQBcA+p3hdzoC7
KDJQOETCpkIUxiw/OV5rvSlye5h6xvnkZ2cxWe+HgzXIn0LYGVxKiuvrrQhbJSvCYjDGUljRSFGF
K4lu6JukHvxEWXPuBmfPwSBQ+5fYGj0Mrnz/UlIcw+T2LIvNtFDRW9f9AFBLAwQUAAIACACpsApB
NF0G5sUAAAAaAQAAOwAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvbG9hZGVyL2xvYWRJ
blByb2dyZXNzLWRpZmYudHh0VVQJAAOdhSVQnYUlUHV4CwABBOgDAAAE6AMAAJ2PvU7DMBRGdz/F
t3VITVSY8JSqMj9SShEJE2Iwye0Pcmzr+lpq3p4I3oDpDJ909B2tNWqZUu3dHItooSyaKRcvuT66
LLWPbiT+xXN45Xha1qzpmmgQGm/kKlBVVf3L4gYpzv85mgZ6s75FtVnfoWlUtTu8dIfWYm+7bvto
DfwlEO4N3sPgyuks6OdEljmywc6FEAWZBIljIpYZq8zDCvGIULxX2Lb2rTfol29ILmcaDT7i1/fS
gad+3z5EnqyniYJ8KqgfUEsDBAoAAAAAABqtCkEAAAAAAAAAAAAAAAAhABwAdG1wL2xheW91dC10
ZXN0LXJlc3VsdHMvZmFzdC94c2wvVVQJAAPkfyVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQUAAIA
CADLsApBgUp3rUsAAACsAAAATAAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QveHNsL3hz
bHQtdHJhbnNmb3JtLXRvLWZyYWdtZW50LWNyYXNoLXN0ZGVyci50eHRVVAkAA96FJVDkfyVQdXgL
AAEE6AMAAAToAwAAtcyxDYAwDETRPlPcCrRs48AFWXJsZCzmR6JgA+qv97eYp5qUhoOZkSuGGgFT
JxbQOOmFW1KlG1ty51DXV8TAYdHFvo7iVW375foAUEsDBBQAAgAIAMuwCkFQXUg3jAAAAPgAAAA4
ABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC94c2wveHNsdC1kb2MtZW5jLXN0ZGVyci50
eHRVVAkAA92FJVDjfyVQdXgLAAEE6AMAAAToAwAArY7BDcMwDAP/nUILuHr0lxn67AKKozRCZSuQ
ZaTdvkmzQj8EyQMIZiurKIVYBXY3H2AW5Z8MiFhq4FMCNx5fEikvbkV6Sbw1vNPHejy4RcOZWuC7
KTo36565HSnSSFOSsppH6i7XvQOVynADVi5cA0562clwWhigVxr3E2GgRtM/zlRrPS/HEAWpXr5Q
SwMEFAACAAgAy7AKQVBdSDeMAAAA+AAAAD8AHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0
L3hzbC94c2x0LWJhZC1pbXBvcnQtdXJpLXN0ZGVyci50eHRVVAkAA92FJVDjfyVQdXgLAAEE6AMA
AAToAwAArY7BDcMwDAP/nUILuHr0lxn67AKKozRCZSuQZaTdvkmzQj8EyQMIZiurKIVYBXY3H2AW
5Z8MiFhq4FMCNx5fEikvbkV6Sbw1vNPHejy4RcOZWuC7KTo36565HSnSSFOSsppH6i7XvQOVynAD
Vi5cA0562clwWhigVxr3E2GgRtM/zlRrPS/HEAWpXr5QSwMEFAACAAgAy7AKQW1H1F6FAAAA8QAA
AD0AHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L3hzbC90cmFuc2Zvcm0teGhyLWRvYy1z
dGRlcnIudHh0VVQJAAPdhSVQ438lUHV4CwABBOgDAAAE6AMAAK2OsQ3DMAwEe0/BBRQW6TRDyiwg
y3RMRBINkoKd7e3EK6R5PP6Luyx15ZKcpQGpikaYudAvIiLW5vhix43GN3vIi0rlXgNtho/0ke5P
MjeckznuVlDJpGsmw33RMEm+nSsUbgR3oEKVmgPXVdSH84lXhQi9pfEEu0CRNP1RIFwImr4mwwFQ
SwMECgAAAAAAwKwKQQAAAAAAAAAAAAAAACQAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0
L2NhbnZhcy9VVAkAAzh/JVAOhyVQdXgLAAEE6AMAAAToAwAAUEsDBAoAAAAAAG+wCkEAAAAAAAAA
AAAAAAAqABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMvd2ViZ2wvVVQJAAMy
hSVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQUAAIACABvsApBXa+rf8YAAADgAQAASgAcAHRtcC9s
YXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmdsL3NoYWRlci1wcmVjaXNpb24tZm9y
bWF0LWRpZmYudHh0VVQJAAMyhSVQMoUlUHV4CwABBOgDAAAE6AMAAK3Pv2rDMBDH8V1Pcbt6USkt
nQIOwZ0aarBf4CKfE4P8B92pdd6+oSb1EtoMWTR9f59DiAhOu9EFOg1JUVkUI0sKKq4hUeep/yRx
X7w/BCdHqjniGNm30g49NkPsSJGnkb1yvdJJwVhr74GS10RhJrMM8OXx4Rns+X2FLDNQbMoS5m1x
mb79LFeR+gPv2h7W6+vF05K0AhoT3+DR9K93Tm7xfr/6B7g0F9HOYvKeRZoUwqmgKFwvJ42t8rKC
7ceueM+r3FjzDVBLAwQUAAIACABxsApBQ1ydiIoAAACTAAAAUgAcAHRtcC9sYXlvdXQtdGVzdC1y
ZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmdsL3VuaWZvcm0tYXJyYXktbGVuZ3RoLW92ZXJmbG93LXN0
ZGVyci50eHRVVAkAAzWFJVA+fyVQdXgLAAEE6AMAAAToAwAALcexDoIwFEDR3a94oy6EAlXp1hA0
DoJpTByMIaV9QJNSTFsH/14Gl5tznzkhB8r+LTKS749pSdOyYLUQrWCjxZB1atadRrVo9IlSW0pI
vnvBrRanVlx5U9Xw4KK5NGcGPEZv+k9ESMEE0CbI3qJO4D6tO8kAwYxuMEq6CG/0w+Jn6RSudtLG
7+YHUEsDBBQAAgAIAG+wCkEfGWN5+wEAAA4MAABOABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMv
ZmFzdC9jYW52YXMvd2ViZ2wvc2hhZGVyLXByZWNpc2lvbi1mb3JtYXQtZXhwZWN0ZWQudHh0VVQJ
AAMyhSVQMoUlUHV4CwABBOgDAAAE6AMAAL2WUWviQBDH3/spBp+uUKQtReTAg3BGDSQqmtZ7kzWO
Se7WXdnd1Prtb5LW84TEy/YwLyGQmfn/9r+7M1ngauiDTtgaFewURqlOpYCNVFtmwKA27ZubiQCd
RRFqfQcHmcE+5Rw0IjB6qhQ1yA20ps583oItRbEYKXIjOZd7XMPqAK3QnYfwfRJMfTd0W1QzpNIa
TEIqi5xhXiBMjwSDd4CIM62BiTXEaMpD9lL9onpFwfd6laEKTaYE1bskKVc/McpXna8HYt6uKveF
vr24s9D9sZyPnL47u8uj/cliOfAnTngLqdCGiQjJnAt6KbmgMvykXOD2veegScWRNxw1qZcb6o2b
tbMxvcLMK6kNZs4wcMdhY6ezTPDa57NM87ontMrWBnfxuqe00tJP6NXpyiZRcp83eUClpKLpYhKS
eWU8XcOOKbZFg0rX7MhH0gL77MLdEoJAxQyNJHzbUZOnFxp+hepX8MYvju/1l+74OWj/DX5hmcSY
0fRjCmkQCp2uOB4xdVlCWzERY5AK+NaDh/NduZTA3monnGY4ZXTrS3wwPVlDPVlTPdzbYnUebbHq
ZZxjdWyxurZUXTuoXg+srbIx92MH7xug6lhTdf6DyuZn0CR0eanH0EsqYsBXVAeIGOc1bzIJl0Y8
nkJslv6vchRi60tFvVPMH9t+A1BLAwQUAAIACABusApBdBs6NasAAADfAgAAUQAcAHRtcC9sYXlv
dXQtdGVzdC1yZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmdsL2dsLXZlcnRleC1hdHRyaWItemVyby1p
c3N1ZXMtc3RkZXJyLnR4dFVUCQADL4UlUDl/JVB1eAsAAQToAwAABOgDAADN0T0PgjAYBODdX/GO
uhDa0gLdiEHjIJjGxMEYUtoCTfgwtA7+exkc3WW53G1PcneCUEz5NyOMCMM0xphingtRCt72xuFK
DbrSRk3azIFSW4oQ2T3gkotDKc5Zsc/hloniVBw5ZN7Ptn55AyFYB9o6WfdGB3DtltlJB862Y2OV
HD08zdxM8yBHZZY+yt6/N/dfpISFabIuUhojEq+KxMIkYus6jqGUpuRvpA9QSwMEFAACAAgAbrAK
QYnjE4HbAAAAOAEAAEUAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93ZWJn
bC9pbmRleC12YWxpZGF0aW9uLXN0ZGVyci50eHRVVAkAAzCFJVA6fyVQdXgLAAEE6AMAAAToAwAA
jY9BT4NAFITv/RVz1EvDQqm6N2KRkCCYTaOHxpDt8qCbwNLsvmr896LRmwcvk5nJHL45JELcpPJH
N7FItkl6u9nGkcyVapQcRgpxa6au7cjMHfm1MVepEMn1K55y9dCox6y+z/GSqbqsC4mM2dvjhQkR
bEBngz6O1K2xPy3xpAOCHVxvjXaMM/l+9pN2hhbv9Mgfq8OfSGkk7v6BVFT4HkEWVVvWz1lV7tpm
Ac32ZVNDYhh3Xr/nI03kOEhoZprODJ6hjaEQMF8Ycw+v3UB4I892qWHd1/T32eoTUEsDBBQAAgAI
AG+wCkEZS4sTtQcAAMEbAABSABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMv
d2ViZ2wvc2hhZGVyLXByZWNpc2lvbi1mb3JtYXQtcHJldHR5LWRpZmYuaHRtbFVUCQADMoUlUDx/
JVB1eAsAAQToAwAABOgDAADdWVtv2zYUfs+vEBJ0AYZKtmM7i+3Gw5YL9rBuBZL3gpIoiw0laiTl
2N3233d4kyVZsr21w4CtWG2Lt3P5zvcdqu9SmdHl2bsUoxg+hNxSvDybU5K/vPXmayKIxLH3+5kH
/0m8kX6MI8aRJCyfeznL8UIPhYzHmPshk5Jlc29UbLwYvuN4cfbnmdnObhIxyvjcuxiOZ3oseCQU
35MkseMhil5WnJV57LupyY36Uz/InCAYJbF3EcexGUtYLv0EZYRu517GciYKFFkDM8RXBEwe4cwb
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
dmFzL3dlYmdsL2RyYXctYXJyYXlzLW91dC1vZi1ib3VuZHMtc3RkZXJyLnR4dFVUCQADLoUlUDh/
JVB1eAsAAQToAwAABOgDAADN1L0KwjAQAODdp7hRF+klTdJmK1SkUKwUcREpMY2loFbSqPj2/uDo
A9xyw3HDx/3tOKIS+hdjhlwiF0qpWC/quqp1d3Ija+y5bVpnh9b5ubVTgchne1iW8C0CvSybYrXN
yiJvqvWizjZFtQIN3Sn35pF5b56jBhOCO18DhAGMtW4cYbgFGI7gzaVzcHc+9O809JdPqe8Pt+Ag
muz+EhMZRcSJKUaSNlFiLFPqxCSm3kWG1M9FiVQo4kQpOfFBv9+iYsSJCUvp7OILUEsDBBQAAgAI
AG6wCkGQW1jqigAAAAEBAABEABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMv
d2ViZ2wvZXJyb3ItcmVwb3J0aW5nLXN0ZGVyci50eHRVVAkAAy+FJVA4fyVQdXgLAAEE6AMAAATo
AwAAizY2NDQ3tYKSJkaGxmZAlpGJqaWVa1CQf5BVek5qsVF8cm5KfEpqcn5KapFecrKGqaGhsWas
gruPAliRgpW7T7ynX5ijj6dLPJAMdVWwUkjPcU8tcUwuySxLdSwpKcpMslLIzEtJrVDILy1RyE9T
KErMS0/lisZqv7GJgSEV7Q/Ny0zLL8rF6gAAUEsDBBQAAgAIAG+wCkE5aca6DAIAAD0MAABMABwA
dG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMvd2ViZ2wvc2hhZGVyLXByZWNpc2lv
bi1mb3JtYXQtYWN0dWFsLnR4dFVUCQADMoUlUDKFJVB1eAsAAQToAwAABOgDAAC9llFr4kAQx9/9
FINPVyjSliJy4EE4owYSFZPWe5M1jknu1o3sbmr99jeJFSskXraHeZGAM/P/7X93Z3aBq5ELKmZr
lLCTGCYqSQVsUrllGjQq3Wm1pgJUFoao1D0c0gz2CeegEIHRr0xQQbqB9szy/TZsKYpFSJGblPN0
j2tYHaAd2H4AP6fezLUDu001AyqtQMekssgZ/AJhdiIYHgFCzpQCJtYQoS4P2afyD9UrCh7rVYZK
1JkUVO+aZLr6jWG+6nw9EPFOVblv9N+rPQ/sX0t/bA3s+X0e7U4Xy6E7tYI7SITSTIRI5lzRS8gF
meEX5Tx74Lx4TSqOndG4Sb3cUGfSrJ2N6RVm3khtOLdGnj0JGjudZYK3Pp9lmrc9oVW2NriLtz2l
lZZ+Qa9OV9axTPd5kweUMpU0XXRMMm+MJ2vYMcm2qFGqmh35RFpgX1y4O0IQKJmmkYTvO2ry9EHD
r1D9Ds7k1XKdwdKevHidz+BXlkmMGU0/JpEGoVDJiuMJU5UldCQTEXqJgB99eLzclWsJ7L12wnmG
U0avvsQH07Mx1LMx1eODKVb3yRSrXsYlVtcUq2dK1TOD6vfB2CoTcz928KEBqq4xVfc/qEwegzqm
y0s9hj4SEQG+oTxAyDiveZNJuDTi6RxisvR/laMQU18q6p1jLgseX/qbjPPDjElFTfJs6+dXfKv1
F1BLAwQUAAIACABvsApBt+S7yMwAAACoAQAASgAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zh
c3QvY2FudmFzL3dlYmdsL3ByZW11bHRpcGx5YWxwaGEtdGVzdC1zdGRlcnIudHh0VVQJAAMyhSVQ
MoUlUHV4CwABBOgDAAAE6AMAAM2QsWrDMBRF93zFG5slRLKcgDa3cY3BdYJo2iEU8/Kk2AJFLpJa
6N/HJB0zdOxyuBfucLiHjLF1Ln8pOMtWQnDOWS5LpbZK9s5E3tFZd9rQqE1YED3kjGXzD9iV6nmr
Xor2qYT3QrV1W0koUgr2+JUMLMFG0Dbi0Rm9gNdhqgNGiLb3J0voE3yacBrDGT2ZKXt06Wd2uK8k
RPbPlFY8/8tLVQPXEciq6er2rWjqTTdxX4KE3j1ar2+CzUiY7Ogl1P4bndVAAwakZMLsAlBLAwQU
AAIACABtsApBr/QkIQABAADVCQAAUAAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvY2Fu
dmFzL3dlYmdsL2RyYXctZWxlbWVudHMtb3V0LW9mLWJvdW5kcy1zdGRlcnIudHh0VVQJAAMuhSVQ
OH8lUHV4CwABBOgDAAAE6AMAAM3WPWvDMBAG4L2/4sZmKT592JK2QEwwhLiY0iUUY8uyMdhWkeX2
7zf92rKW3nKDuOHhPe7QhSNm0vxUwZCnKHiCWpi8qsrKDJNbWW3nru6c9Z0LD9beS0S+e4HjCb6a
wBxPdXF+3p+KQ10+5tX+qSjPYGCYDqF5zyc3uyWuBkKzDA78FsH30Ppt6VbofYB263sX7i63MVol
ZDAoMSODYSzhZDCCKUUHkyIhjBZ0tikVmtHBqIxOMlmq/mSbmhjd/Bohemisdev6C/tWvrkQx+sz
jMtnaxjbLTpIbiOFvp5DKokJnXFFPTGZoOT0kTJl9JFa0h83poLMb0Eypv8D8wFQSwMEFAACAAgA
cbAKQa/Rl+46AQAAoQwAAEkAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93
ZWJnbC90eXBlLWNvbnZlcnNpb24tdGVzdC1zdGRlcnIudHh0VVQJAAM1hSVQPn8lUHV4CwABBOgD
AAAE6AMAAM2WTUvDQBCG7/6KOeql7NfsJrkFjaFQUwm2HoqEdLNNF9KNJFvRf2/9OCr0IGYvwywM
zLMz7wuz4ZQqTL6jYJRLFfGISJVkZbksk7YzI6v0oakao/vGDDOtL5FSfvUE91l5uyzv0uI6g8e0
LOZFnkDq/WC3R2+AgB2hsWO97Uwzg4f96bmvRxht63ZW187Dsxl2/XConTan3NWdf7vY/IzEWRwc
kgpuSoKcM6V8AZ9FkOSLal6s08X8pjrFVQYJtF1ufKq9fTFflAlY15hX6I8e+h0MtWvNb/0lkj/s
v3L24+PnAwjkNAprJwKR8uCQeBwckiITKlegQj6lclFJFGHtBFUkSWhIMWfBIcWBmQkjwnhwSEgn
9DdGTE7qb6kIDUwmUjFKg0OKWWhInMrgkISY0ExSIfuvM+8dUEsDBBQAAgAIAG+wCkFlk5kfWwIA
AN0MAABMABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMvd2ViZ2wvc2hhZGVy
LXByZWNpc2lvbi1mb3JtYXQtd2RpZmYuaHRtbFVUCQADMoUlUDx/JVB1eAsAAQToAwAABOgDAAC9
V+9r4kAQ/e5fMXhwXKHEthSRNgpyRisYFU3b+yZrMvlxXRPZ3dRKuf/9JgmS9k49k8N8CSE7897b
t7szWd1H5nR0qbYcO5qDHN5hyewXT0Rx6NzBF5exe/gFGnOcP4eYmwzpjSxZb2RQa4GdZ1wORiB9
5qAA+mAHMohCcCOxYgoUSqXVapMQZGzbKOUlbKMYNgHnIBGB0VMEKCFyoT7tzud1WFEU85Ai3Yjz
aIMOLLdQt4y5Bd8n5nRkWEadMC2ClqB8Ykk1zFMJ052CfibA5kxKYKEDHqr9IZtIvBBeCpjhHQwV
qGIREt4xymj5E+1k1sl8wOPaIbhvNPZkzCzjx2L+0O0Zs8skejR5XvRHk651AUEoFQttJHOO8AXk
goixJJ1p9IaPZpWMD8PBQ5V8iaHDcbV2VsaXmnkmtv6sOzCNsVXZ7txHeO79uY/zvDv0kK0VruJ5
d+lBS0vwnVKVlS+iTVLkAYWIBHUX5RPNK+OBA2sm2AoVCnliRd4pTWV/OnAXJCFEwRS1JHxbU5Gn
F2p+KesdDMdP3dGwtzDGj6b2UfiRaZLGmLofE0iNMJTBkuNOptyXoAkWemgGIXz11H0brj8vzLEc
9lYkJ+/kWVLrdKJc3G0Zdbdl5F1fldDXvCmh77Skv/Q1S+hrlZDXKqau3YYyzhWxO1/Zq2q0Ncto
a/6HtiJ/jsqnk04FiV6C0AN8RbEFm3F+4rEn4r0RN3lIkdn/C45CivpyAC+P2QHqck0lO/1Bb9OV
o5MRZNcEN+Z8O2VCUoXNbf54BaC7CKV3ajW9kVxDfgNQSwMEFAACAAgAbrAKQXi90F+rAAAAlAIA
AFQAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93ZWJnbC9pbmRleC12YWxp
ZGF0aW9uLWNvcGllcy1pbmRpY2VzLXN0ZGVyci50eHRVVAkAAzCFJVA6fyVQdXgLAAEE6AMAAATo
AwAAzZG9CoMwFEb3PsUd26UYE7VmExQRRIuULlIkjbciqCnx2r5+f+jYB3D5hsMZDnw1Zyzw5G+F
y7jPBeNBeJBJVZWV7Aac3UaPbdOiNi3avdZbjzG+u0Caw1cCmeZNVpyjPIub8phU0SkrC5DQDbFV
z2TAESeaJSgiHO8EZEBpjfMMZiEwN7Bq6hAeaKl/Y+inj2r760IIzqb+Gyk8wVcf6Tmhv/pI33XX
dPcLUEsDBBQAAgAIAG6wCkFrE9YrnwAAAEoBAABfABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMv
ZmFzdC9jYW52YXMvd2ViZ2wvaW5kZXgtdmFsaWRhdGlvbi12ZXJpZmllcy10b28tbWFueS1pbmRp
Y2VzLXN0ZGVyci50eHRVVAkAAzCFJVA6fyVQdXgLAAEE6AMAAAToAwAAzY7LCoJAFED3fcVd1iYc
RzNnJygiiMYQbSRkGm8iqBMz1/r9HrTsA9qcxeEsTsMZi0LxZeAzvuNB7PGAi0zKWop+ROe3eura
DrXp0G61XoeM8c0Z8hI+EYi8bIvqlJRF2taHTCbHoq5AQD+mVj2yESecyQlQRDjdCMiA0hqdA7MQ
mCtYNfcId7Q0vDQM8zu1w2UhBG/V/J6M99EfTT4BUEsDBBQAAgAIAG6wCkEK49k0mAAAAAICAABE
ABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMvd2ViZ2wvZ2V0LWFjdGl2ZS10
ZXN0LXN0ZGVyci50eHRVVAkAAy+FJVA4fyVQdXgLAAEE6AMAAAToAwAAizY2NDQ3tYKSJkaGxmaG
lgbGJqZGVq5BQf5BVuk5qcVG8cm5KfEpqcn5KalFesnJGqaGhsaasQruPgpgRQpW7j7xnn5hjj6e
LvFAMtRVwUohPcc9tcQxuSSzLDU0LzMtvyjXSiEzLyW1QiG/tEQhP02hKDEvPZUrGqsDTIwMDAbU
AZZGlhZUdIBjSUlRZhIp9pubmdPHfgBQSwMEFAACAAgAbrAKQR++2l+VAAAAJgEAAFEAHAB0bXAv
bGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93ZWJnbC9nbC1iaW5kLWF0dHJpYi1sb2Nh
dGlvbi10ZXN0LXN0ZGVyci50eHRVVAkAAy+FJVA4fyVQdXgLAAEE6AMAAAToAwAAxY69DoIwGAB3
n+IbdSGUyl83YtA4CKYxcSCGlPYDmkAxbR18exkc3V0ud9s1lJA0Zl/uI0ITkqdZTHNWcl5zNkzo
olbOqlUoF4U2kHIbE0J3D7iW/FjzS1EdSrgXvDpXJwaF91Z3L48QgnagtBPdhCqA27jmKBw4PZhe
S2E8PNH2i52Fkbi6EZN/b5pfSxnNkvBvSx9QSwMEFAACAAgAwawKQa9PIrTQAAAAqAEAAEoAHAB0
bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93ZWJnbC9pbnZhbGlkLXBhc3NlZC1w
YXJhbXMtc3RkZXJyLnR4dFVUCQADOn8lUDp/JVB1eAsAAQToAwAABOgDAAC1kEFrwkAUhO/9Fe/Y
XsQ1TWL2Fm0aAmksS20PIuH5dk0W1k3ZXQX/vaFeFbz0MszAwHzMhkVJFvOrRq8sm0dpPJ+yNOGF
ECvBO6P8rKWDbKWiQSo3IXqOGYtetlDW8FcCXtZt1XzndfXWjrougENnFtrKPASnd/VAGPRgOVT2
hEZLoB4dUlDuaXObIImzBwg+C/G+Eh95syzgJxdN1ZQcrpvHoGAK2oPUHndGyQl89WPs0YPXnd1r
QhvgV7n94A5oSY3eognne0jpQ6f8D9IFUEsDBBQAAgAIAG+wCkFIikhBVgAAAGEAAABKABwAdG1w
L2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMvd2ViZ2wvbnVsbC1vYmplY3QtYmVoYXZp
b3VyLXN0ZGVyci50eHRVVAkAAzGFJVA6fyVQdXgLAAEE6AMAAAToAwAAizY2NDQ3tYKSJkaGxmbG
FiBkaOUaFOQfZJWek1psFJ+cmxKfkpqcn5JapJecrGFqaGisGavg7qMAVqRg5e4T7+kX5ujj6RLv
H+Aa5Bji6e+nYAWEXABQSwMECgAAAAAA26wKQQAAAAAAAAAAAAAAACgAHAB0bXAvbGF5b3V0LXRl
c3QtcmVzdWx0cy9mYXN0L2ZpbGVzeXN0ZW0vVVQJAANtfyVQDoclUHV4CwABBOgDAAAE6AMAAFBL
AwQUAAIACACLsApByQBmW2YAAABxAAAAOgAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3Qv
ZmlsZXN5c3RlbS9vcC1jb3B5LXN0ZGVyci50eHRVVAkAA2WFJVBsfyVQdXgLAAEE6AMAAAToAwAA
izY2NDQ3tYKSJkaGJoZmxuYGlkYmVq5BQf5BVmmZOanxxZXFJam58SmZRanJJflFlfEpiSWJSYnF
qXrJyRoWpqaasQrOiXnqJQpFqbn5ZakKiQpwpQrlmSUZCskZmTkpRal5elwAUEsDBBQAAgAIAIuw
CkGIp71PZgAAAHEAAAA6ABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9maWxlc3lzdGVt
L29wLW1vdmUtc3RkZXJyLnR4dFVUCQADZYUlUG1/JVB1eAsAAQToAwAABOgDAACLNjY0NDe1gpIm
RoYmhmZmxuZm5kZWrkFB/kFWaZk5qfHFlcUlqbnxKZlFqckl+UWV8SmJJYlJicWpesnJGhamppqx
Cs6JeeolCkWpufllqQqJCnClCuWZJRkKyRmZOSlFqXl6XABQSwMEFAACAAgAi7AKQVqTiLBmAAAA
cQAAADwAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2ZpbGVzeXN0ZW0vb3AtcmVtb3Zl
LXN0ZGVyci50eHRVVAkAA2WFJVBtfyVQdXgLAAEE6AMAAAToAwAAizY2NDQ3tYKSJkaGJoZm5gYW
xhYGVq5BQf5BVmmZOanxxZXFJam58SmZRanJJflFlfEpiSWJSYnFqXrJyRoWpqaasQrOiXnqJQpF
qbn5ZakKiQpwpQrlmSUZCskZmTkpRal5elwAUEsDBBQAAgAIAJOwCkEYoCj/CQEAAI8CAABDABwA
dG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcHl3ZWJzb2NrZXQud3MubG9nLTEwQXVnMjAxMi0yMjAw
MTAtb3V0LnR4dFVUCQADdoUlUGqEJVB1eAsAAQToAwAABOgDAAC1kEtPg0AUhfeT8B/Ym+qg4IOE
BS+Lpa08U8IOZiYwoDOVmQjt//F/atWlJjWNd3dy7813zgmyLLrQzjVVg5qajlSilrJGjQYuOeJP
QgH5thkqTEx1JLXgqCdSAS5njCBJOTPV770CUoJmG1KnnzczGyGylaYa6uUjdsRDnid2tBMGD4vd
GZ57kENLAW+mAhQAgv92Ea3Wl231vIqKlMtB3Fy9Ym8dINtzYuu3n+JjZEsFFePAWXOQJ5j9mTE5
ZcXSKcT7yej8FHsBc19iONf9QztHwE4txij3Re0OwzK8rpIkyvpi4ZZ4Gd9BZB2Z9g+01oehBzu5
0fRbp1vfy95fGI3MGmp/0d4BUEsDBBQAAgAIAGWxCkGZDnddZUkBAESlDwAmABwAdG1wL2xheW91
dC10ZXN0LXJlc3VsdHMvYWNjZXNzX2xvZy50eHRVVAkAA/6GJVBxfiVQdXgLAAEE6AMAAAToAwAA
7F1tb9u4lv6+v6K4QPpll434orcBgmKm095b4O6d4ra7WGCxKBSJttnKkkaSk3h//SUlObEt0qZF
SolbT4GMoxh6zhvJw3MODyHy3zj8H3wF+L//hc71r6v5NXIg+gXBXzD5hZBX/+7w//7v1V/++v7L
q+uoKOIoXtDr6DYva9B8BnmW5PdZmkcJy+ZgGWVsRqsaEIe8WdTL9NXfvnz5dA3fwL+8Qo7zCmIn
/Dc4GLikVb4qY1rpkrD5ZYsM/vgVgY4BFVHMKajAHYtASRNW0rh+UyyKLQzs+K+AHT4lWDK5Qg+P
hicRYoPpTomIudpMRBqXUbUA9wuagSy6Y/OoFsYS3UdrUIuHt1H8XSZZ3ydW2ByKT6bEV2ja9Z+V
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
L38ukTz7FcfeJVcPJnkxKNpB9Mfbu7tloqfbPAIdUYFsGquMHGlrQMowjiIlxuWPwaIEy7ouN/Jq
30K3dW20oWGqF7qhMPgbXmKy4B19bwCe6hr/Db1Anda+S8/UJ359Vn7Wwg+hOrdUMSumZRtv/+rF
QRS/M0bc7UrpZ8c/hywA8aWy2TQbDypoLNXMqlkhVqw/YJvWlaFKexrteMjB3Mk9jZzhfCMJAduX
sSrWCO0XMOoYPGRC969ySVPVi21g/g9QSwMECgAAAAAACa0KQQAAAAAAAAAAAAAAACEAHAB0bXAv
bGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9VVAkAA8F/JVAOhyVQdXgLAAEE6AMAAAToAwAA
UEsDBAoAAAAAAGOtCkEAAAAAAAAAAAAAAAAqABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxh
dGZvcm0vY2hyb21pdW0vVVQJAANqgCVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQKAAAAAABjrQpB
AAAAAAAAAAAAAAAAMgAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVt
L3ZpcnR1YWwvVVQJAANqgCVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQKAAAAAABjrQpBAAAAAAAA
AAAAAAAANgAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1
YWwvZ3B1L1VUCQADaoAlUA6HJVB1eAsAAQToAwAABOgDAABQSwMECgAAAAAAY60KQQAAAAAAAAAA
AAAAADsAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFs
L2dwdS9mYXN0L1VUCQADaoAlUA6HJVB1eAsAAQToAwAABOgDAABQSwMECgAAAAAAY60KQQAAAAAA
AAAAAAAAAEIAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92aXJ0
dWFsL2dwdS9mYXN0L2NhbnZhcy9VVAkAA2qAJVAOhyVQdXgLAAEE6AMAAAToAwAAUEsDBAoAAAAA
AGatCkEAAAAAAAAAAAAAAABIABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZvcm0vY2hy
b21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvVVQJAANwgCVQDoclUHV4CwABBOgD
AAAE6AMAAFBLAwQUAAIACAATsQpBLZppK9gAAAAcAgAAaAAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1
bHRzL3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL3NoYWRl
ci1wcmVjaXNpb24tZm9ybWF0LWRpZmYudHh0VVQJAANmhiVQZoYlUHV4CwABBOgDAAAE6AMAALWP
sU7DMBCGdz+Fd+MeQiCmSkEoTFRESl7gcC6pJSexfOeSvj0tUcmCoAvLTd/3/TprrQYZIgQ8Tlms
EItNxDkIQwwo3ZQGcPs0DT4PcPBJMgboY4YOWcDheECGD3rvA/AeW0o2JnKe/TTas4xiaY7khNqN
zKKVMeb/J9GdpWWwKLR9uL251+Z0H3VRKF091bVe3OqivnyZm4RjTzs/6u32Z+JuRTxrSZmu6OH8
Z++EXNP7fvWX4MpcimYpZueIucshHCtMTO06qUxT1o1+fttVr2VTKqM+AVBLAwQUAAIACAAVsQpB
LwyC4IkAAACRAAAAcAAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVt
L3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL3VuaWZvcm0tYXJyYXktbGVuZ3RoLW92ZXJm
bG93LXN0ZGVyci50eHRVVAkAA2mGJVBwgCVQdXgLAAEE6AMAAAToAwAAHcdBC4IwGIDhe7/iO9ZF
3NQNdpOw6NCMEXSIkLl96kBnbOvQv0+6vDzvk3LKxD9FSQnjFSvLiueiUapVYpwx0s4strNoVosh
M2ZfEVIcXnBr1KlV11oeG3jUSl7kWUCdUnD9JyHk4CJYF3U/o83gPm076QjRjX5wRvsEbwzDGhbt
DW72ek7f3Q9QSwMEFAACAAgAE7EKQR8ZY3n7AQAADgwAAGwAHAB0bXAvbGF5b3V0LXRlc3QtcmVz
dWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL2dwdS9mYXN0L2NhbnZhcy93ZWJnbC9zaGFk
ZXItcHJlY2lzaW9uLWZvcm1hdC1leHBlY3RlZC50eHRVVAkAA2aGJVBmhiVQdXgLAAEE6AMAAATo
AwAAvZZRa+JAEMff+ykGn65QpC1F5MCDcEYNJCqa1nuTNY5J7tZd2d3U+u1vktbzhMTL9jAvIZCZ
+f/2v7szWeBq6INO2BoV7BRGqU6lgI1UW2bAoDbtm5uJAJ1FEWp9BweZwT7lHDQiMHqqFDXIDbSm
znzegi1FsRgpciM5l3tcw+oArdCdh/B9Ekx9N3RbVDOk0hpMQiqLnGFeIEyPBIN3gIgzrYGJNcRo
ykP2Uv2iekXB93qVoQpNpgTVuyQpVz8xyledrwdi3q4q94W+vbiz0P2xnI+cvju7y6P9yWI58CdO
eAup0IaJCMmcC3opuaAy/KRc4Pa956BJxZE3HDWplxvqjZu1szG9wswrqQ1mzjBwx2Fjp7NM8Nrn
s0zzuie0ytYGd/G6p7TS0k/o1enKJlFynzd5QKWkouliEpJ5ZTxdw44ptkWDStfsyEfSAvvswt0S
gkDFDI0kfNtRk6cXGn6F6lfwxi+O7/WX7vg5aP8NfmGZxJjR9GMKaRAKna44HjF1WUJbMRFjkAr4
1oOH8125lMDeaiecZjhldOtLfDA9WUM9WVM93NtidR5tseplnGN1bLG6tlRdO6heD6ytsjH3Ywfv
G6DqWFN1/oPK5mfQJHR5qcfQSypiwFdUB4gY5zVvMgmXRjyeQmyW/q9yFGLrS0W9U8wf234DUEsD
BBQAAgAIABKxCkGpD5MgqgAAANUCAABvABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZv
cm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvZ2wtdmVydGV4LWF0dHJp
Yi16ZXJvLWlzc3Vlcy1zdGRlcnIudHh0VVQJAANjhiVQa4AlUHV4CwABBOgDAAAE6AMAAM3RvQ6C
MBwE8N2n+I+6kLbUAt2IQeMgmMbEgRhS2gJN+DC0Dr69xNUHkOVyt/2SK0lEGP9GSAlmEUIJjinh
mRCF4G1vHKnUoCtt1KTNHCi13WMc7h5wzcSxEJc0P2RwT0V+zk8cUu9nW7+8AQTWgbZO1r3RAdy6
ZXbSgbPt2FglRw9PMzfTPMhRmaWPsvfvTfkDwiiKQ7QmEMGIxmsChRSxVV1Go4Sxv4E+UEsDBBQA
AgAIABKxCkGLY/nV2wAAADQBAABjABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZvcm0v
Y2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvaW5kZXgtdmFsaWRhdGlvbi1z
dGRlcnIudHh0VVQJAANkhiVQbIAlUHV4CwABBOgDAAAE6AMAAI2PPWvDMBiE9/yKG9slWMqHqTbT
uMaQ2kWEdgjFKPJrR2DLQXrT0n9fN9CpS5fj7rjhuaNM5VbdZLWWYpsKIR7Wm1TlWtda9QNF2dix
bVqyU0thae3dRojV/Ttecv1U6+eseszxlumqrAqFjDm405UJCVxE66I5DdQucTjP8Wwiout956zx
jAuFbgqj8ZZm783AX4vjXyCZyOQ/QMUetxFUsW/K6jXbl7umnjGzQ1lXUOiHXTCf+UAjeY4KhpnG
C4MnGGspRkxXxtQhGN8TPiiwm2s4/zP9/bX4BlBLAwQUAAIACAATsQpBdTYwi80HAADfGwAAcAAc
AHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zh
c3QvY2FudmFzL3dlYmdsL3NoYWRlci1wcmVjaXNpb24tZm9ybWF0LXByZXR0eS1kaWZmLmh0bWxV
VAkAA2aGJVBugCVQdXgLAAEE6AMAAAToAwAA3Vlbb+M2Fn7PrxASzAYoRpId29nYnnjR5oJ96LQD
JO8DSqIsTihRS1KOPd3973t4kyVZsr3bFgtsBx1L5CF5Lt/5zqHmUyZzurr4lGGUwI+QO4pXFwtK
ireP3mJDBJE48X678OA/ibfST3DMOJKEFQuvYAVe6qmI8QRzP2JSsnzhjcutl8AzTpYX/7ow29lN
YkYZX3hXo8lczwXPhOJHkqZ2PkLx25qzqkh8J5reqT/Ng8wJglGSeFdJkpi5lBXST1FO6G7h5axg
okSxVTBHfE1A5THOvZEZKhkYp+3gmIJFG6wVysYdTSeTSc/+AhXCF5iTtDEpyHesz2ge6lOcyoU3
CmZuPCGipAg2kSii2I8xpWbinSQygw1Gow9WR5QkpFjXq41+NjzqqR0hqzIpMlBM1uIZ22DesWo2
my2HHI6xcUWg4vIznCXs4pQyBKZwss5kO3pK6gFcgEhRH8XA/USCmaMTZlsrfb1vy1PvGVjn6zgq
uL1zVO41e8Gxit8gcPTiNmy6kLG4dX4HUI3KrTnhaVtCiGF/MA1/9AL107VwUD1BEhzt1N+eVvUn
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
Ar0p6nx7yIp8VZe7dZXt83ILGtp+5c0z8968Jg0mBDfcAoQRjLVummC8Bxgv4M21dfBwPnSfGrrr
d+q78z04iGbHP0DBUdAGppiQBqaIEW2gkowyUEWSIWVgKhBpAyVTjDaQ+sWKEwK+AVBLAwQUAAIA
CAARsQpBZYemWIkAAAD9AAAAYgAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2No
cm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL2Vycm9yLXJlcG9ydGluZy1zdGRl
cnIudHh0VVQJAANihiVQaoAlUHV4CwABBOgDAAAE6AMAAIs2MjcyswITxiZGhmZmlkBsbmRg5RoU
5B9klZ6TWmwUn5ybEp+Smpyfklqkl5ysYWpoaKwZq+DuowBWpGDl7hPv6Rfm6OPpEg8kQ10VrBTS
c9xTSxyTSzLLUh1LSooyk6wUMvNSUisU8ktLFPLTFIoS89JTuaKx2G5uaUxN20PzMtPyi3KxWg8A
UEsDBBQAAgAIABOxCkE5aca6DAIAAD0MAABqABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxh
dGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvc2hhZGVyLXByZWNp
c2lvbi1mb3JtYXQtYWN0dWFsLnR4dFVUCQADZoYlUGaGJVB1eAsAAQToAwAABOgDAAC9llFr4kAQ
x9/9FINPVyjSliJy4EE4owYSFZPWe5M1jknu1o3sbmr99jeJFSskXraHeZGAM/P/7X93Z3aBq5EL
KmZrlLCTGCYqSQVsUrllGjQq3Wm1pgJUFoao1D0c0gz2CeegEIHRr0xQQbqB9szy/TZsKYpFSJGb
lPN0j2tYHaAd2H4AP6fezLUDu001AyqtQMekssgZ/AJhdiIYHgFCzpQCJtYQoS4P2afyD9UrCh7r
VYZK1JkUVO+aZLr6jWG+6nw9EPFOVblv9N+rPQ/sX0t/bA3s+X0e7U4Xy6E7tYI7SITSTIRI5lzR
S8gFmeEX5Tx74Lx4TSqOndG4Sb3cUGfSrJ2N6RVm3khtOLdGnj0JGjudZYK3Pp9lmrc9oVW2NriL
tz2llZZ+Qa9OV9axTPd5kweUMpU0XXRMMm+MJ2vYMcm2qFGqmh35RFpgX1y4O0IQKJmmkYTvO2ry
9EHDr1D9Ds7k1XKdwdKevHidz+BXlkmMGU0/JpEGoVDJiuMJU5UldCQTEXqJgB99eLzclWsJ7L12
wnmGU0avvsQH07Mx1LMx1eODKVb3yRSrXsYlVtcUq2dK1TOD6vfB2CoTcz928KEBqq4xVfc/qEwe
gzqmy0s9hj4SEQG+oTxAyDiveZNJuDTi6RxisvR/laMQU18q6p1jLgseX/qbjPPDjElFTfJs6+dX
fKv1F1BLAwQUAAIACAATsQpB2/Skp84AAACiAQAAaAAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRz
L3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL3ByZW11bHRp
cGx5YWxwaGEtdGVzdC1zdGRlcnIudHh0VVQJAANlhiVQbYAlUHV4CwABBOgDAAAE6AMAAM2OvW7C
MBRGd57ijmVBjYH8eAsQokhpQBa0A0LR5dokloxT2W6lvj0RXTswdjn6jvQN58QSFvMH5gsWxUmU
pstkkfFCiJ3gnVGetXSTrVQ0SOVmRC/LKJpPz7AvxHYn3vJmXcBHLpqqKTnkITh9+QoKXkF7kNrj
xSg5g0M/ao8evO7sVRPaAJ/KXQd3Q0tq3BZN+Jmc/giK2Wj/JyjL4iR9Jqis4XECXtZt1bzndbVp
Rx4L4NCZlbbyN68eCIMeLIfKfqPREqhHhxSUm9wBUEsDBBQAAgAIABGxCkGnul9M/QAAALMJAABu
ABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUv
ZmFzdC9jYW52YXMvd2ViZ2wvZHJhdy1lbGVtZW50cy1vdXQtb2YtYm91bmRzLXN0ZGVyci50eHRV
VAkAA2KGJVBqgCVQdXgLAAEE6AMAAAToAwAAzdS9SsRAFAXg3qe4pTYy/zOZbmHDEggbCWKzSEgm
kxBIMjKZ6OurK3bbire5xeUUH6c4F6aZstfDBaNKGSM1YczmdV3Vdpz9xhq39E3vXeh9fHTuXlLK
H17hVMI1BPZUNsX55VAWx6Z6yuvDc1GdwcI4H2P7kc9+8WvaLMR2HT2EPUEYoAv72m8whAjdPgw+
3l1uUAylBgtFKyyUTHKJg6KYJlgonFGChWIkFooUQmChZIIioaiMZH9BaVPyy1uCFKB1zm/bL+vH
+O5jmr7eMK3f0Th1e/JAbhEN4ULjaMtQQinytqjkGjmREc6wE6XA3iLnGZIRMYKa/1j5T1BLAwQU
AAIACAAUsQpBP1kxpz8BAABzDAAAZwAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3Jt
L2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL3R5cGUtY29udmVyc2lvbi10
ZXN0LXN0ZGVyci50eHRVVAkAA2iGJVBwgCVQdXgLAAEE6AMAAAToAwAAzZY9T8MwEIZ3fsWNsFT+
Tu0tghBVKimKKAwVilLHTS2lDkpcBP8et6wdOiDi5WRLlt7Hd+/ZtyEJEeocKCNYJJzOKcZCZWW5
KlXbmZFU+tBUjdF9Y4aZ1rccY3r3Ds9Z+bgqn9LiPoO3tCwWRa4g9X6w26M3gMCO0Nix3nammcHL
Pmz39Qijbd3O6tp5+DDDrh8OtdMmrF3d+e+bzSUgKnhkQJLFBcQYugIoX8L5EKh8WS2K13S5eKhC
XGegoO1y41Pt7af5ZVRgXWO+oD966Hcw1K41l9WF5H+ovnb2dOmr5aVMkpiqIRGOyx4SEYIiA+Js
Mr9KxIiczK8MEcZwRNUIQHMq4wKSFEUGJGlUQBRF9UefgBiZqqODOknQdB2NMZnHNKAEIMZxXEAc
R5YhHtebF4CEmKyBME7of41wP1BLAwQUAAIACAATsQpBZZOZH1sCAADdDAAAagAcAHRtcC9sYXlv
dXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFz
L3dlYmdsL3NoYWRlci1wcmVjaXNpb24tZm9ybWF0LXdkaWZmLmh0bWxVVAkAA2aGJVBugCVQdXgL
AAEE6AMAAAToAwAAvVfva+JAEP3uXzF4cFyhxLYUkTYKckYrGBVN2/smazL5cV0T2d3USrn//SYJ
kvZOPZPDfAkhO/Pe27e7M1ndR+Z0dKm2HDuagxzeYcnsF09EcejcwReXsXv4BRpznD+HmJsM6Y0s
WW9kUGuBnWdcDkYgfeagAPpgBzKIQnAjsWIKFEql1WqTEGRs2yjlJWyjGDYB5yARgdFTBCghcqE+
7c7ndVhRFPOQIt2I82iDDiy3ULeMuQXfJ+Z0ZFhGnTAtgpagfGJJNcxTCdOdgn4mwOZMSmChAx6q
/SGbSLwQXgqY4R0MFahiERLeMcpo+RPtZNbJfMDj2iG4bzT2ZMws48di/tDtGbPLJHo0eV70R5Ou
dQFBKBULbSRzjvAF5IKIsSSdafSGj2aVjA/DwUOVfImhw3G1dlbGl5p5Jrb+rDswjbFV2e7cR3ju
/bmP87w79JCtFa7ieXfpQUtL8J1SlZUvok1S5AGFiAR1F+UTzSvjgQNrJtgKFQp5YkXeKU1lfzpw
FyQhRMEUtSR8W1ORpxdqfinrHQzHT93RsLcwxo+m9lH4kWmSxpi6HxNIjTCUwZLjTqbcl6AJFnpo
BiF89dR9G64/L8yxHPZWJCfv5FlS63SiXNxtGXW3ZeRdX5XQ17wpoe+0pL/0NUvoa5WQ1yqmrt2G
Ms4VsTtf2atqtDXLaGv+h7Yif47Kp5NOBYlegtADfEWxBZtxfuKxJ+K9ETd5SJHZ/wuOQor6cgAv
j9kB6nJNJTv9QW/TlaOTEWTXBDfmfDtlQlKFzW3+eAWguwild2o1vZFcQ34DUEsDBBQAAgAIABKx
CkEKiHwiqQAAAIwCAAByABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZvcm0vY2hyb21p
dW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvaW5kZXgtdmFsaWRhdGlvbi1jb3BpZXMt
aW5kaWNlcy1zdGRlcnIudHh0VVQJAANkhiVQbIAlUHV4CwABBOgDAAAE6AMAAM2QvQqDMBRG9z7F
HdulaIwJzSYoIoiWULpIERtvRfCnJNf29ds69wFcvuFwhsNXMcmEWifgzBfSO/HgFHgq0brUqhvQ
sdqMbd2imVu0R2P2oe8HhxukOawSqDSvs+Ia5Vlcl+dER5esLEBBN8S2eScDjjiRU9AQ4fgkoBka
Y9A5mBeC+QG2mTqEF1rqvxj66afa/r4Qgrer/iRysfnEUAq28UQh+ZZe/ABQSwMEFAACAAgAErEK
QdYziI6fAAAARgEAAH0AHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1
bS92aXJ0dWFsL2dwdS9mYXN0L2NhbnZhcy93ZWJnbC9pbmRleC12YWxpZGF0aW9uLXZlcmlmaWVz
LXRvby1tYW55LWluZGljZXMtc3RkZXJyLnR4dFVUCQADZIYlUGyAJVB1eAsAAQToAwAABOgDAADN
jsEKgkAURfd9xVvWJpyxDGcnKCKIxhBtJIZpfImgTsw86/czt/1Amwvnchan4SceiXXCA2fRiQUs
jhbKpKyl6Ab0XJmxVS0a26LbG7M9MhbubpCXsEog8lIV1TUpi1TV50wml6KuQEA3pE6/swFHnMgL
0EQ4PgnIgjYGvQc7E9gHOD11CC901C839NNXdf19JoRg0/wm8iBk8R8lfgBQSwMEFAACAAgAEbEK
QRgCHHGXAAAA+gEAAGIAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1
bS92aXJ0dWFsL2dwdS9mYXN0L2NhbnZhcy93ZWJnbC9nZXQtYWN0aXZlLXRlc3Qtc3RkZXJyLnR4
dFVUCQADYoYlUGqAJVB1eAsAAQToAwAABOgDAADFzbEKwjAUQNHdr3ijLkKSNm2yBSylUBQKdSkS
NHktgbaBGMXPVzo7OIgud7pwOppRLpewhBLOBUtzThNZNM2hkcOIV6rNZLVF4y2GrTHrlBC2OUFZ
wzKBLGtd7Y+qrnb61bYACcNYYlQmuju2s+t9mCS42eID/C2C7yGc5wFX3Rte5Cz9H88zRsUXeRVj
cJfPdcHJb/QnUEsDBBQAAgAIABGxCkGZoDfrlgAAACIBAABvABwAdG1wL2xheW91dC10ZXN0LXJl
c3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvZ2wt
YmluZC1hdHRyaWItbG9jYXRpb24tdGVzdC1zdGRlcnIudHh0VVQJAANihiVQaoAlUHV4CwABBOgD
AAAE6AMAAMWOvQ6CMBgAd5/iG3UhtvxJN0LQOAimMXEghpT2A5pAMW0dfHuJqw/gcrnbrqEpTdgX
YURJkmQROcRZxErOa86GCR1t5axahXJRaAMptzEh4e4B15Ifa37Jq6KEe86rc3VikHtvdffyCHvQ
DpR2optQBXAb1xyFA6cH02spjIcn2n6xszASVzdi8u9N8ztEaZqlfxv6AFBLAwQUAAIACAASsQpB
vaTmdFkAAABfAAAAaAAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVt
L3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL251bGwtb2JqZWN0LWJlaGF2aW91ci1zdGRl
cnIudHh0VVQJAANkhiVQbIAlUHV4CwABBOgDAAAE6AMAAIs2MjcyswITxiZGhmbmhiaGpgaWhlau
QUH+QVbpOanFRvHJuSnxKanJ+SmpRXrJyRqmhobGmrEK7j4KYEUKVu4+8Z5+YY4+ni7x/gGuQY4h
nv5+ClZAyAUAUEsDBAoAAAAAAAmtCkEAAAAAAAAAAAAAAAAvABwAdG1wL2xheW91dC10ZXN0LXJl
c3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vaHR0cC9VVAkAA8F/JVAOhyVQdXgLAAEE6AMAAAToAwAA
UEsDBAoAAAAAAAmtCkEAAAAAAAAAAAAAAAA1ABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxh
dGZvcm0vY2hyb21pdW0vaHR0cC90ZXN0cy9VVAkAA8F/JVAOhyVQdXgLAAEE6AMAAAToAwAAUEsD
BAoAAAAAAAmtCkEAAAAAAAAAAAAAAAA+ABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZv
cm0vY2hyb21pdW0vaHR0cC90ZXN0cy9zZWN1cml0eS9VVAkAA8F/JVAOhyVQdXgLAAEE6AMAAATo
AwAAUEsDBAoAAAAAAAmtCkEAAAAAAAAAAAAAAABLABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMv
cGxhdGZvcm0vY2hyb21pdW0vaHR0cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvVVQJAAPB
fyVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQUAAIACAC2sApB81fYcmkAAABuAAAAewAcAHRtcC9s
YXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL2h0dHAvdGVzdHMvc2VjdXJpdHkv
bWl4ZWRDb250ZW50L2luc2VjdXJlLWlmcmFtZS1pbi1tYWluLWZyYW1lLWFsbG93ZWQtc3RkZXJy
LnR4dFVUCQADuIUlUMF/JVB1eAsAAQToAwAABOgDAACLNjU0tTI1NrYyNjEyNLG0NDIytwCKuAYF
+QdZJacWlcSXpRZlplXGFxTlJ8fnFRfrJSdrmJuYaMYqOLsGhcQHeHtGhIFVOAMVK6TlFykYGpnr
GQChoUJaYmZOaopCalGRra6FoYUhFwBQSwMEFAACAAgAWbEKQYix6prZWwAAoGkCACYAHAB0bXAv
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
YXlvdXQtdGVzdC1yZXN1bHRzL2FuaW1hdGlvbnMvc3VzcGVuZC1yZXN1bWUtYW5pbWF0aW9uLWV2
ZW50cy1hY3R1YWwudHh0VVQJAAOPhCVQj4QlUHV4CwABBOgDAAAE6AMAAF2OQQrDMAwE73qFXtBf
9NZjP6CiJTbEUrGVlP6+tlMI7UnssDvousOi8QJDlYCyVLDm9lzlDb3wPaGDlnxblR9gt55CajDG
cuYcY5vdvkxMJ0e/k/xpzGOo5Ed0fvBKMI7UC5bL4c2NK9pW+kdEN1+IjunZKL6D6ANQSwMEFAAC
AAgAGLAKQaK4GW5yBwAA7xkAAFMAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9hbmltYXRpb25z
L3N1c3BlbmQtcmVzdW1lLWFuaW1hdGlvbi1ldmVudHMtcHJldHR5LWRpZmYuaHRtbFVUCQADj4Ql
UI+EJVB1eAsAAQToAwAABOgDAADFWW1v2zYQ/p5fISToAhSRbNd2Gttthi0v2IduGJB+DyiRsthQ
okZSSZxt/33HN1mSJdvDCmzFalt8e+7uubuH6qdM5ez65FNGEIYPqTaMXJ8sGS2eLoLlM5VUERz8
eRLAf4q8qhCThAukKC+WQcELsjJDMReYiDDmSvF8GUzK1wDDd4JXJ3+f2O3cJglnXCyDs/F0Ycai
e8rILU1TNx6j5GkteFXg0E9Nr/Sf5kH2BMkZxcEZxtiOpbxQYYpyyjbLIOcFlyVKHMAciTUFyBOS
B2P7qORgnLFDEAYWPRMDKJt0kE6n0579JSpkKImgaWNQ0jdizmgeGjKSqmUwjub+OaayZAg2UShm
JEwIY3bghWKVwQbj8TuHEWFMi3W92uJz4dHf2hFykGmRATBVT8/4MxEdq+bz+WrI4YRYV0Q6Ll/g
LOkWp4wjMEXQdaba0dOzbsAFiBb1URzcTxWYOT5gtrMyNPu2PPWSgXWhiaOm24tA5RbZA0l0/AaJ
Yxa3adOljOOt9zuQaly+2hPuXksIMewPppGLINIfXQsH4UmKSbzRfwcG6s+MJ0+/I6EiMHWZUiFV
mGSU4UHH6uMeYP3Fvs0EySG0FwfOc2d499MC6EPCWE9p0W7uWQdsUTRBLESMriE/FO8xSxDN9l9Q
gRnx7nD7aBfq3xmxAd3yOamE1KHRsLtZiGKITuUjBmfWxLEJZODtQ9Hi+S4d1oJsVh1iRvND8bIu
DiLFD7o5SgXPO852NVKfob3+W5XHRACbSJNd9qkHvltKHWsXi1YR9OnSVwp9Js9ms07u7Ua/rjF6
o7lNAZsGddF3PHD07KOIhdui09QVrIbhxsTegmMbxaBb9hUpjdD5zhcSRxhvQytNS0FCm6hmCFxp
foIJgqCnUD+w+9IcrUkrKMvgQ+3rmCHtQD0xgaoAGCCq7lvQNXkbkKvZYrDspiTd5r5mFOxYd8dG
IvcsxSluL4U4y+HpC7JY7Wvp9U6uwDRxuIQY7tYY72wQYMKGV5DFQTSj98FDVZZcKGi0wpEYnJrn
pFAyeD+C81ClMm79bZux1jJAeAUUTXykzAIzZ6D913M0GASUMJN9Jbv0nNaVBjF24xH0zv5g21iO
XsNWZ+87Bny8d886gevM3dmyuz7iJbHdMXwh8RNVoRI6u6zVFmQQfZCrBuSZM/BMKqQq+XMVQ6uu
216kM6UXDiyJOd6YMSd7fAWb+ZZ6pjhnMRLtDTy2mJts3T7P+Zt/WJeoqU1pp6j0V68Z9PdhcThU
P/aKui1DUvrqKpS3IUJFAmxzysubOm7bGSEjUGwi7rb4FwrVQnTI6I4KgreQFpi8QhnbY/G2SzYg
9JnrylWr9125OldomC6le/sWnAeBOAj0cgt0Yhu+71D2lwHrvtftzf2sAdeyrXU0TQXKLcKORm5r
jEZm3QzU4l3fbECI8hcnBAgDVQlhPaJrXS7ut6xzdB8YNI5oj9UaE+9q57ZydntY9+1Se1AvYF+J
7TE/+VLi70Lj5uhX30U7l5bLj77k7cLckzuN65DMkRX6zapccAGPVwO1ydmv9ZnsOxy5rLPpPu6d
skSpzy7Tlgsw5zT4KzhdndTtuNHEu6sZAonO01BtStK71aldlxFmKmItMpEWmQMN6CwnUnpVMeii
Po82iP1gKvMxfQ56CqidZ8oreVM/AZH6RoqbRifsa+JeT3R7SrObQGKGKdOZPzGBdAW7+cyRydWB
qb9bHYXKRReEDFGa1q1G4LTdgLJrNti4gsQomqXDN3FMn5cpT5wveaV0yjczKGaV6RFuCOiQAhZo
TRNvSLNLml1AqHzNiD1p5FrsGvBrGxQPFIzFdrZjkgyeKdJlVf3quAFgY8FfIPAgATIEa53yoSrS
Sqe2YzZ3Kr3WG+63T3CtVvX/43Z79K9tuho+pxhuUS5CklSYP9rr1SN5BqSPjSK8rbrvWlLkXbtv
Nq90pnyFk4mr0poB0t/ee7oOqDku0TMEF1xMOr2nue9OOwwn0dQKr+3bEy8ceoJ8dnt72ygJZ1f3
t/fz+94aBhK1P13u7u76UC9JXqpNm11ODHVmRvAVkLoS4zZdXI2vXG1LGEHi0UgIf6HQT8y9K9NT
Po3cq7tPMhG0BNKI5PNpplQpl6MR+oZeozXna1hUUqlzwzwbMRrL0bc/KiI2o0k0iz64H1FOi+ib
PL2Gfc1+10F754RjEuoYkheY9yNQSQfz82zaWAKg3GtFLQ3hAxIOcCMpP5/7+8S5fvc4uR6pvBwB
A8BNoSJQeYF4FVNyhAq4hhkRNZKVBD2LzVBOwnokNOyUIaiYCrFIQR+Dgyft8xrvi853R8w9fui5
vt8HMgMljjtT9A0naL0X0hOgGhV+hnkjsFUS59dT8A6MX7dmQWE4PAf68/n1F752g+BcQPKf8cyO
wDMbxvN9wcyPADMfBgOZBJGqeWFeMnUBmo8mzEZmaXPM8K4xx5HEXnYPkqQxb687Lo9wxw9FLMvV
sE+gPdrL9AG/fBfAH78DYMjw/zOE3yvPr45wxeXxefVvbO58mNoLBdH8O88/UEsDBBQAAgAIABiw
CkH10BV9gAAAAPoAAABPABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvYW5pbWF0aW9ucy9zdXNw
ZW5kLXJlc3VtZS1hbmltYXRpb24tZXZlbnRzLWV4cGVjdGVkLnR4dFVUCQADj4QlUI+EJVB1eAsA
AQToAwAABOgDAABdjlEKwzAMQ/99Cp9gt9jfPncBj4gm0NgjcTt2+yXtIDRfRs+S0H2HeuUFiiKO
wFLAIdX3Kl+EGz8jGqjRtjXwC2zalEtxRk8eOnnPJtM/Ew0HR7sHmWrUvFfJpWgs+EQoe2wGTfns
TZUL6pbbIqKHLURndDiy7aAxZHr0JROiH1BLAwQUAAIACAAYsApBMZWMc8UAAABtAQAATQAcAHRt
cC9sYXlvdXQtdGVzdC1yZXN1bHRzL2FuaW1hdGlvbnMvc3VzcGVuZC1yZXN1bWUtYW5pbWF0aW9u
LWV2ZW50cy13ZGlmZi5odG1sVVQJAAOPhCVQj4QlUHV4CwABBOgDAAAE6AMAAF1Qu27DMAzc9RUE
utt7q2jLlrE/wISMJUSmDFFOEBT990h2ACOeCN4Lh7OekZzV8ozsOuIIf3DGy23IaRb6hq8r4g/8
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
/jttdOqnZlA3ThFnj8tlNuajHrTGXeG9ca9bD36ITnEL5o4E8FXr8Yfw/pivdJq99uOz0FXEeVDu
8UmI4zW4n9EM0GYenau/nOeHQosWm+AWL8uxPrLx0vxKyjCYhSW5PSMXppbZqdvtVfscIhPt16s/
6RVl+GagBtvsbdEDbg5rNSoih1zgjh25pfQrjgcffMPxN4JWLh2PMAkTHjdwElaPGTiSt08JJj7T
Ik3c3Pglb7VhVcTum7wlACvgUgaS6CvvnUp3YeeVpsqh9aQN2QpcSG9lKWpJ5mBVZ7L73QPSTzzQ
DzdkYWd871Y7Z/Ks+xMFjmV1kxc2u6noK/3cAdNFzN9RV+Qu5esxXiHLRdTWw8OczvLZ/1we//un
46vrmw/H1z9eHP3d/Of15cHhcXvgJYAHz83I/HTyS2/xVk+Cec4vvpGFN15S4h+uzhpsvh93Gib+
H1BLAwQKAAAAAABZrApBAAAAAAAAAAAAAAAAHQAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0
dHAvVVQJAAN6fiVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQKAAAAAADOrApBAAAAAAAAAAAAAAAA
IwAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvVVQJAANUfyVQDoclUHV4CwAB
BOgDAAAE6AMAAFBLAwQKAAAAAABZrApBAAAAAAAAAAAAAAAAKQAcAHRtcC9sYXlvdXQtdGVzdC1y
ZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUvVVQJAAN6fiVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQU
AAIACAAJsApB/sGlHUABAABaAgAARQAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVz
dHMvY2FjaGUvcG9zdC1yZWRpcmVjdC1nZXQtYWN0dWFsLnR4dFVUCQADcoQlUHKEJVB1eAsAAQTo
AwAABOgDAACN0V1LwzAUBuD7/YrDvJjC6LKPfjAQYTpQUQY6FK8kTU7XuJiMJF1bh//dzFmHwmBX
IYfnPTlJJK3RAHVwSrrkDKz4QEgIqSJCWgAPqDiaJ4HlASKPiE+kZkvYXM/v7z4P0l+seQ2byezq
ZWeTbvJj42RUhcno2zZ6jpWDzYnzy//WcRxV/bjhAFsDplB7Vgru8q0bQ/vGdSystLUilQiZ9ncC
WzCG1maFBINrKgWnTmgFTgOjhUXANSpnt/tMGARbK5YbrXRhZR3As6/kupBcdRwwQ20OIgOtEHQG
Ltf7BtbplW+TY/vQtP0wbOYdRsTPKzXlATwiQu7cyo57vbRY2KDEdClcoM2i588uX30xYAtxIfh5
PIijQQDtY9+PVOQPnb6nyDnyWfqGzIdmk9vp5XyX8jN1B01w6P+0H5LWF1BLAwQKAAIAAAAJsApB
nOmndQYAAAAGAAAARwAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUv
cG9zdC1yZWRpcmVjdC1nZXQtZXhwZWN0ZWQudHh0VVQJAANyhCVQcoQlUHV4CwABBOgDAAAE6AMA
AFBBU1MKClBLAwQUAAIACAAJsApBVzVCW5kBAAAXAwAAQwAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1
bHRzL2h0dHAvdGVzdHMvY2FjaGUvcG9zdC1yZWRpcmVjdC1nZXQtZGlmZi50eHRVVAkAA3KEJVBy
hCVQdXgLAAEE6AMAAAToAwAApZJRb9MwEMff8ylO5WGgxInTrU00CVEKkwAxFdEKxBNy7Etj5sVV
fF5Tqn13HEo3gVRpEk+2z7/7+3/nY4xBRrebzIid9cQIHbEOnTfksoZokw0Rl0khG8w29vet0h1K
Ymskhv0mbFGl1BNEcRz/l5qQ5IU5aM1mwPJkDHGe5Bxms4h9er1cRiyKgzh2IAie84S/AKd/IpSc
91POoxjgM7YKuy8at6eYJwnMjZU3sH+3uv54f5p9oK3awX6+ePvtAJdJ+Qcuyot+Ul4c4CO+wlDi
/hmF5V/xopj2efHAAwwQdL595LZaUTOAlzB6T2cOQiedrgxCbUNd4LyU6FztDXR4J4xWgrRtgSxI
4R0C3mFLbjjXofngdq1sOtta78wuha8h0lhvVHtGIDvhGtA12BbB1kCNfRRwZDdBpsHRSbv5ZHI0
fD7lwbCxQqWwRIRhINxlllV+7dItVjeaUtuts/D49nsIpnKtX2n1shgX03EKoye3kPf8b/bqtkKl
UC2qH2HUYL+Yf7h6szqkBVfJ+Jh5Hn42n/DoF1BLAwQUAAIACAAJsApBucePJtsfAACoKwAARQAc
AHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUvcG9zdC1yZWRpcmVjdC1n
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
CkGNpXyKjwEAAOgCAABFABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvaHR0cC90ZXN0cy9jYWNo
ZS9wb3N0LXJlZGlyZWN0LWdldC13ZGlmZi5odG1sVVQJAANyhCVQen4lUHV4CwABBOgDAAAE6AMA
AI2SX0/bMBTF3/kUV+WBIVWJW2gTdaET3ZDYtKkTrUB7mhz7pjH17MjXockqvvuclYJAqsST7Xt/
5/j4T1Yil9OMfKtxGknUsIWci/XK2drICRwXnH+ER4i4lG9bvOhaWbwTZ/HOqnJhThU3IDQnugie
05+Xi0XgQvFVK3hONW/RAffwgfXZKZD6i5Ay1owZOwK4QSPR3SrcHEDeI59pK9awvV7++P54EH2G
rWxhO5t/+bVj0376xCbpeTNKz/+ze3qJjYftsQ/DW+skGTeDZI8DdAy42rxgGyV92XET6H31JwSV
JVK5RihsOBNQLQQSFbUGhw9cK8m9sga8BcFrQsAHNJ66daEcArVGlM4aW5NuI7gLldLWWpoTD8Jx
KkEVYA2CLcCX9sWAvK2CTYm9Q2kHo9E+79mYhbzachnBAhFK7yuaxHFeryjaYL5WPrJuFYe9N79D
MRIr9UnJi2SYjIcR9N57f6xhr9CrPzlKiXKe36MIovns29Xn5U4VMvWHe+FZeNPBiD39t6Ms7n7k
P1BLAwQKAAIAAAAJsApBnOmndQYAAAAGAAAAUwAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0
dHAvdGVzdHMvY2FjaGUvcG9zdC13aXRoLWNhY2hlZC1zdWJyZXNvdXJjZXMtZXhwZWN0ZWQudHh0
VVQJAANyhCVQcoQlUHV4CwABBOgDAAAE6AMAAFBBU1MKClBLAwQUAAIACAAJsApB1fYdYpAIAAAb
HwAAVwAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUvcG9zdC13aXRo
LWNhY2hlZC1zdWJyZXNvdXJjZXMtcHJldHR5LWRpZmYuaHRtbFVUCQADcoQlUHp+JVB1eAsAAQTo
AwAABOgDAADVWWtv20YW/e5fMbCRui1MirIkW4/EReMHukW7KdbBLvaTMSSH4sQkR50Z2lKy/e97
50WRFCm52ADuNmhEzuPOue8zzNtU5tnV0duU4Bh+hNxk5OpontHi8QzNn6igksToyxGC/yRZSy8m
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
OR2vJ9PxKypwsV8Bp4K5tZyoibYTLi8v1sPL19Th8pAO5osX4mWxxa6plAI/R9/8XjK5+Js8FYr6
CKpYo/r6hYERRtDtRFJmUM+fgL7F+oOZYpgRLgVBmrAJ9Z5QTpDYFFHKWQGUO9v46F8wkrIyi4tT
iSKORQoXbOCdwD0ToJxsK0AAo1IslBgsr2jM6Z825nAyceYcXQTOnEChYh/dE4IcOQrLpfDNlcZn
fDkA0zw/wKAfLekPNH53eX55ce6jV7fA7H9OiWD9mjVpGLxMgVtYHsck/hB+ArKGvnx4//Pt9Uej
Czjy7NypM4IyO5wEB2lGjTwrUqKn62u3P5qnAnHU/yb+X1BLAwQUAAIACAAJsApBjaV8io8BAADo
AgAAUQAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUvcG9zdC13aXRo
LWNhY2hlZC1zdWJyZXNvdXJjZXMtd2RpZmYuaHRtbFVUCQADcoQlUHp+JVB1eAsAAQToAwAABOgD
AACNkl9P2zAUxd/5FFflgSFViVtoE3WhE92Q2LSpE61Ae5oc+6Yx9ezI16HJKr77nJWCQKrEk+17
f+f4+E9WIpfTjHyrcRpJ1LCFnIv1ytnayAkcF5x/hEeIuJRvW7zoWlm8E2fxzqpyYU4VNyA0J7oI
ntOfl4tF4ELxVSt4TjVv0QH38IH12SmQ+ouQMtaMGTsCuEEj0d0q3BxA3iOfaSvWsL1e/vj+eBB9
hq1sYTubf/m1Y9N++sQm6XkzSs//s3t6iY2H7bEPw1vrJBk3g2SPA3QMuNq8YBslfdlxE+h99ScE
lSVSuUYobDgTUC0EEhW1BocPXCvJvbIGvAXBa0LABzSeunWhHAK1RpTOGluTbiO4C5XS1lqaEw/C
cSpBFWANgi3Al/bFgLytgk2JvUNpB6PRPu/ZmIW82nIZwQIRSu8rmsRxXq8o2mC+Vj6ybhWHvTe/
QzESK/VJyYtkmIyHEfTee3+sYa/Qqz85Solynt+jCKL57NvV5+VOFTL1h3vhWXjTwYg9/bejLO5+
5D9QSwMEFAACAAgACbAKQbnHjybbHwAAqCsAAFEAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9o
dHRwL3Rlc3RzL2NhY2hlL3Bvc3Qtd2l0aC1jYWNoZWQtc3VicmVzb3VyY2VzLWFjdHVhbC5wbmdV
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
YWtQFegWQVdAtX4UsKQ7L1Pj5KTddDY7Gj6fc2+40YWMYY0I4+ewl0lSuq2NeyxvFMXabBPfvP/u
k7HYqldKvsym2Xwaw+TJK+QD/5u9ui1RSpSr8of/ubBfLT9cvdkcyryraHqsPPcvm8548AtQSwME
FAACAAgACbAKQf7BpR1AAQAAWgIAAFEAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9odHRwL3Rl
c3RzL2NhY2hlL3Bvc3Qtd2l0aC1jYWNoZWQtc3VicmVzb3VyY2VzLWFjdHVhbC50eHRVVAkAA3KE
JVByhCVQdXgLAAEE6AMAAAToAwAAjdFdS8MwFAbg+/2Kw7yYwuiyj34wEGE6UFEGOhSvJE1O17iY
jCRdW4f/3cxZh8JgVyGH5z05SSSt0QB1cEq65Ays+EBICKkiQloAD6g4mieB5QEij4hPpGZL2FzP
7+8+D9JfrHkNm8ns6mVnk27yY+NkVIXJ6Ns2eo6Vg82J88v/1nEcVf244QBbA6ZQe1YK7vKtG0P7
xnUsrLS1IpUImfZ3AlswhtZmhQSDayoFp05oBU4Do4VFwDUqZ7f7TBgEWyuWG610YWUdwLOv5LqQ
XHUcMENtDiIDrRB0Bi7X+wbW6ZVvk2P70LT9MGzmHUbEzys15QE8IkLu3MqOe720WNigxHQpXKDN
oufPLl99MWALcSH4eTyIo0EA7WPfj1TkD52+p8g58ln6hsyHZpPb6eV8l/IzdQdNcOj/tB+S1hdQ
SwMECgAAAAAAsqwKQQAAAAAAAAAAAAAAACgAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9odHRw
L3Rlc3RzL21pc2MvVVQJAAMffyVQDoclUHV4CwABBOgDAAAE6AMAAFBLAwQUAAIACABhsApBFTU1
knoAAAC8AAAAQgAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvbWlzYy94c2x0
LWJhZC1pbXBvcnQtc3RkZXJyLnR4dFVUCQADFYUlUB9/JVB1eAsAAQToAwAABOgDAACNjkEOwyAM
BO95hT9AIO2hFb8hxFUsGYyMkfr8EuUD1V5WO4fZLKURJyOpgKqiET7ECKdZi95vj9caZrb4DiH4
Qj17xS5DM3b/7WxuT4ej0kTNDaV1bsBUEZ6AjAWrwU2XSeJdIcKoaZ8aE2BJx3+6Kn3k87qXLDEv
P1BLAwQUAAIACABTsApBMt+AJm0AAAByAAAARwAcAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0
dHAvdGVzdHMvbWlzYy9kbnMtcHJlZmV0Y2gtY29udHJvbC1zdGRlcnIudHh0VVQJAAP9hCVQBn8l
UHV4CwABBOgDAAAE6AMAAIs2NjQ0s7QyNjQ1M7AyNjEyBPLNTc3NDUytXIOC/IOsklOLSuLLUosy
0yrjC4ryk+Pziov1kpM1zE1MNGMVnF2DQuIDvD0jwsAqnIGKFdLyixQMjcz1DIDQUCEtMTMnNUUh
tajIVtfC0MKQCwBQSwMECgAAAAAA1KwKQQAAAAAAAAAAAAAAACwAHAB0bXAvbGF5b3V0LXRlc3Qt
cmVzdWx0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L1VUCQADYH8lUA6HJVB1eAsAAQToAwAABOgDAABQ
SwMEFAACAAgAe7AKQVZwUmliAAAAjgAAAFUAHAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9odHRw
L3Rlc3RzL3NlY3VyaXR5L3hzcy1ERU5JRUQteG1sLWV4dGVybmFsLWVudGl0eS1zdGRlcnIudHh0
VVQJAANKhSVQVH8lUHV4CwABBOgDAAAE6AMAAI3MMQrDMAwF0N2n+FuWguhqOvYG3QvC+Q4B2zKK
AuntS2/QA7xX98YsIowiV29SNLTZlu8ZU/2gg+7myHhaOTtHYD/APuOT0jvVv/kr1AOhG3hNluB6
w/JYMCxQ7Rzrr/sCUEsDBBQAAgAIAHuwCkFgS2YQkQAAAPsBAABdABwAdG1wL2xheW91dC10ZXN0
LXJlc3VsdHMvaHR0cC90ZXN0cy9zZWN1cml0eS94c3MtREVOSUVELXhzbC1kb2N1bWVudC1zZWN1
cml0eU9yaWdpbi1zdGRlcnIudHh0VVQJAANKhSVQVH8lUHV4CwABBOgDAAAE6AMAAO2OMQ6DMAxF
d07hC4QEllaZYejSngEFUyKZJLKdCm5fOvQGHau/vq/3Qt5KpEljToDMmT0skRBW1eKt7fpL6851
/uqcs4KhctTD7iJmGO+3cTC7kJlzqBsmNV/gwfEZU7tvBBQTQg9I+CFA9CCUFVGb8+lfyHK6PeRE
B3StgwUnrYwCEyNILSWz4tyEf+iPQ99QSwMECgAAAAAA1KwKQQAAAAAAAAAAAAAAAEIAHAB0bXAv
bGF5b3V0LXRlc3QtcmVzdWx0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBv
bGljeS9VVAkAA2B/JVAOhyVQdXgLAAEE6AMAAAToAwAAUEsDBBQAAgAIAIOwCkFjqqxsggAAAKgA
AABqABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kveHNsLXVuYWZmZWN0ZWQtYnktc3R5bGUtc3JjLTItc3RkZXJyLnR4dFVU
CQADVoUlUGB/JVB1eAsAAQToAwAABOgDAAAtjUEKwzAMBO95hV4QO72k+BWFviC4G2JQLCMppf59
TSl7WobZzXK2wpsXqQRV0UR7YdDh3lIIy22d48iS7jHGYMiXFu8hS3VUf/77Q7jkHhQml2ZYMO+M
+WNMXCpoJTDOIdAP2AH4NGh6Q21cJ5LKnZY50o7NrzFEm4Lsak3U8Zq+UEsDBBQAAgAIAIOwCkFj
qqxsggAAAKgAAABYABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9jb250ZW50U2VjdXJpdHlQb2xpY3kveHNsLWFsbG93ZWQtc3RkZXJyLnR4dFVUCQADVYUlUGB/
JVB1eAsAAQToAwAABOgDAAAtjUEKwzAMBO95hV4QO72k+BWFviC4G2JQLCMppf59TSl7WobZzXK2
wpsXqQRV0UR7YdDh3lIIy22d48iS7jHGYMiXFu8hS3VUf/77Q7jkHhQml2ZYMO+M+WNMXCpoJTDO
IdAP2AH4NGh6Q21cJ5LKnZY50o7NrzFEm4Lsak3U8Zq+UEsDBAoAAAAAALGtCkEAAAAAAAAAAAAA
AAAgABwAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcmV0cmllcy9VVAkAA/2AJVAOhyVQdXgLAAEE
6AMAAAToAwAAUEsDBBQAAgAIAGyxCkEJocyGxgAAAIIBAAAuABwAdG1wL2xheW91dC10ZXN0LXJl
c3VsdHMvcmV0cmllcy90ZXN0c19ydW4wLnR4dFVUCQADC4clUP2AJVB1eAsAAQToAwAABOgDAACV
j0FuxDAIRfe9C+Uc3fUKxCG2NTb2AE6rnr5OIlWRupoVfP8HHyf3js7mht+1pKmUn2Nq/GFtUFii
J1C23sT4PXktbyS5kuf5gDass6wHMCrDnwO8s7hd/EZzXSDZyfCLl1jQEq2sMLNCtgPfms7BG37N
45qtk4cElc0oMphrlggrOd3oTWkCMyMkXuFUENoQZ71RpR2pZ/mQT21xXm3//SFHc54EvZkDLW04
LIXkcdG9kB82hqSt5lFxz+qDCsY+8MXv/gJQSwECHgMKAAAAAABtsQpBAAAAAAAAAAAAAAAAGAAY
AAAAAAAAABAA7UEAAAAAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvVVQFAAMNhyVQdXgLAAEE6AMA
AAToAwAAUEsBAh4DFAACAAgAfa8KQefZzZXoNgAA5pACADQAGAAAAAAAAQAAAKSBUgAAAHRtcC9s
YXlvdXQtdGVzdC1yZXN1bHRzL3dlYmtpdF91bml0X3Rlc3RzX291dHB1dC54bWxVVAUAA16EJVB1
eAsAAQToAwAABOgDAABQSwECHgMKAAAAAACBrApBAAAAAAAAAAAAAAAAHQAYAAAAAAAAABAA7UGo
NwAAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvY3NzMy9VVAUAA8J+JVB1eAsAAQToAwAABOgDAABQ
SwECHgMKAAAAAACBrApBAAAAAAAAAAAAAAAAJQAYAAAAAAAAABAA7UH/NwAAdG1wL2xheW91dC10
ZXN0LXJlc3VsdHMvY3NzMy9maWx0ZXJzL1VUBQADwn4lUHV4CwABBOgDAAAE6AMAAFBLAQIeAwoA
AAAAAIGsCkEAAAAAAAAAAAAAAAAsABgAAAAAAAAAEADtQV44AAB0bXAvbGF5b3V0LXRlc3QtcmVz
dWx0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL1VUBQADwn4lUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQA
AgAIAC+wCkFsDboXiQAAAJMAAABiABgAAAAAAAEAAACkgcQ4AAB0bXAvbGF5b3V0LXRlc3QtcmVz
dWx0cy9jc3MzL2ZpbHRlcnMvY3VzdG9tL2N1c3RvbS1maWx0ZXItY3NzLWtleXdvcmQtYXMtcGFy
YW1ldGVyLW5hbWUtc3RkZXJyLnR4dFVUBQADuoQlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAI
AFexCkF3cJFNub4AAKSpBQAmABgAAAAAAAEAAACkgek5AAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0
cy90ZXN0c19ydW4xLnR4dFVUBQAD5YYlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAGSxCkE/
gWMb8qwAALsHBQAmABgAAAAAAAEAAACkgQL5AAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy90ZXN0
c19ydW4yLnR4dFVUBQAD/IYlUHV4CwABBOgDAAAE6AMAAFBLAQIeAwoAAAAAABqtCkEAAAAAAAAA
AAAAAAAdABgAAAAAAAAAEADtQVSmAQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L1VUBQAD
438lUHV4CwABBOgDAAAE6AMAAFBLAQIeAwoAAAAAAPisCkEAAAAAAAAAAAAAAAAkABgAAAAAAAAA
EADtQaumAQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2xvYWRlci9VVAUAA6N/JVB1eAsA
AQToAwAABOgDAABQSwECHgMUAAIACACpsApBQTp/05oHAAD4FwAAQwAYAAAAAAABAAAApIEJpwEA
dG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9sb2FkZXIvbG9hZEluUHJvZ3Jlc3MtcHJldHR5
LWRpZmYuaHRtbFVUBQADnYUlUHV4CwABBOgDAAAE6AMAAFBLAQIeAwoAAgAAAKmwCkHW0dp5LgAA
AC4AAAA/ABgAAAAAAAEAAACkgSCvAQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2xvYWRl
ci9sb2FkSW5Qcm9ncmVzcy1leHBlY3RlZC50eHRVVAUAA52FJVB1eAsAAQToAwAABOgDAABQSwEC
HgMUAAIACACpsApBbKMq8r4AAADwAAAAPQAYAAAAAAABAAAApIHHrwEAdG1wL2xheW91dC10ZXN0
LXJlc3VsdHMvZmFzdC9sb2FkZXIvbG9hZEluUHJvZ3Jlc3Mtd2RpZmYuaHRtbFVUBQADnYUlUHV4
CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAKmwCkEpJndpdAAAAH0AAAA9ABgAAAAAAAEAAACkgfyw
AQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2xvYWRlci9sb2FkSW5Qcm9ncmVzcy1hY3R1
YWwudHh0VVQFAAOdhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAqbAKQTRdBubFAAAAGgEA
ADsAGAAAAAAAAQAAAKSB57EBAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvbG9hZGVyL2xv
YWRJblByb2dyZXNzLWRpZmYudHh0VVQFAAOdhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4DCgAAAAAA
Gq0KQQAAAAAAAAAAAAAAACEAGAAAAAAAAAAQAO1BIbMBAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRz
L2Zhc3QveHNsL1VUBQAD5H8lUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAMuwCkGBSnetSwAA
AKwAAABMABgAAAAAAAEAAACkgXyzAQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L3hzbC94
c2x0LXRyYW5zZm9ybS10by1mcmFnbWVudC1jcmFzaC1zdGRlcnIudHh0VVQFAAPehSVQdXgLAAEE
6AMAAAToAwAAUEsBAh4DFAACAAgAy7AKQVBdSDeMAAAA+AAAADgAGAAAAAAAAQAAAKSBTbQBAHRt
cC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QveHNsL3hzbHQtZG9jLWVuYy1zdGRlcnIudHh0VVQF
AAPdhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAy7AKQVBdSDeMAAAA+AAAAD8AGAAAAAAA
AQAAAKSBS7UBAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QveHNsL3hzbHQtYmFkLWltcG9y
dC11cmktc3RkZXJyLnR4dFVUBQAD3YUlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAMuwCkFt
R9RehQAAAPEAAAA9ABgAAAAAAAEAAACkgVC2AQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0
L3hzbC90cmFuc2Zvcm0teGhyLWRvYy1zdGRlcnIudHh0VVQFAAPdhSVQdXgLAAEE6AMAAAToAwAA
UEsBAh4DCgAAAAAAwKwKQQAAAAAAAAAAAAAAACQAGAAAAAAAAAAQAO1BTLcBAHRtcC9sYXlvdXQt
dGVzdC1yZXN1bHRzL2Zhc3QvY2FudmFzL1VUBQADOH8lUHV4CwABBOgDAAAE6AMAAFBLAQIeAwoA
AAAAAG+wCkEAAAAAAAAAAAAAAAAqABgAAAAAAAAAEADtQaq3AQB0bXAvbGF5b3V0LXRlc3QtcmVz
dWx0cy9mYXN0L2NhbnZhcy93ZWJnbC9VVAUAAzKFJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIA
CABvsApBXa+rf8YAAADgAQAASgAYAAAAAAABAAAApIEOuAEAdG1wL2xheW91dC10ZXN0LXJlc3Vs
dHMvZmFzdC9jYW52YXMvd2ViZ2wvc2hhZGVyLXByZWNpc2lvbi1mb3JtYXQtZGlmZi50eHRVVAUA
AzKFJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACABxsApBQ1ydiIoAAACTAAAAUgAYAAAAAAAB
AAAApIFYuQEAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMvd2ViZ2wvdW5pZm9y
bS1hcnJheS1sZW5ndGgtb3ZlcmZsb3ctc3RkZXJyLnR4dFVUBQADNYUlUHV4CwABBOgDAAAE6AMA
AFBLAQIeAxQAAgAIAG+wCkEfGWN5+wEAAA4MAABOABgAAAAAAAEAAACkgW66AQB0bXAvbGF5b3V0
LXRlc3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93ZWJnbC9zaGFkZXItcHJlY2lzaW9uLWZvcm1hdC1l
eHBlY3RlZC50eHRVVAUAAzKFJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACABusApBdBs6NasA
AADfAgAAUQAYAAAAAAABAAAApIHxvAEAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52
YXMvd2ViZ2wvZ2wtdmVydGV4LWF0dHJpYi16ZXJvLWlzc3Vlcy1zdGRlcnIudHh0VVQFAAMvhSVQ
dXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAbrAKQYnjE4HbAAAAOAEAAEUAGAAAAAAAAQAAAKSB
J74BAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmdsL2luZGV4LXZhbGlk
YXRpb24tc3RkZXJyLnR4dFVUBQADMIUlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAG+wCkEZ
S4sTtQcAAMEbAABSABgAAAAAAAEAAACkgYG/AQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0
L2NhbnZhcy93ZWJnbC9zaGFkZXItcHJlY2lzaW9uLWZvcm1hdC1wcmV0dHktZGlmZi5odG1sVVQF
AAMyhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAbbAKQQAfgq/KAAAAXgYAAE4AGAAAAAAA
AQAAAKSBwscBAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmdsL2RyYXct
YXJyYXlzLW91dC1vZi1ib3VuZHMtc3RkZXJyLnR4dFVUBQADLoUlUHV4CwABBOgDAAAE6AMAAFBL
AQIeAxQAAgAIAG6wCkGQW1jqigAAAAEBAABEABgAAAAAAAEAAACkgRTJAQB0bXAvbGF5b3V0LXRl
c3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93ZWJnbC9lcnJvci1yZXBvcnRpbmctc3RkZXJyLnR4dFVU
BQADL4UlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAG+wCkE5aca6DAIAAD0MAABMABgAAAAA
AAEAAACkgRzKAQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93ZWJnbC9zaGFk
ZXItcHJlY2lzaW9uLWZvcm1hdC1hY3R1YWwudHh0VVQFAAMyhSVQdXgLAAEE6AMAAAToAwAAUEsB
Ah4DFAACAAgAb7AKQbfku8jMAAAAqAEAAEoAGAAAAAAAAQAAAKSBrswBAHRtcC9sYXlvdXQtdGVz
dC1yZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmdsL3ByZW11bHRpcGx5YWxwaGEtdGVzdC1zdGRlcnIu
dHh0VVQFAAMyhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAbbAKQa/0JCEAAQAA1QkAAFAA
GAAAAAAAAQAAAKSB/s0BAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmds
L2RyYXctZWxlbWVudHMtb3V0LW9mLWJvdW5kcy1zdGRlcnIudHh0VVQFAAMuhSVQdXgLAAEE6AMA
AAToAwAAUEsBAh4DFAACAAgAcbAKQa/Rl+46AQAAoQwAAEkAGAAAAAAAAQAAAKSBiM8BAHRtcC9s
YXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmdsL3R5cGUtY29udmVyc2lvbi10ZXN0
LXN0ZGVyci50eHRVVAUAAzWFJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACABvsApBZZOZH1sC
AADdDAAATAAYAAAAAAABAAAApIFF0QEAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52
YXMvd2ViZ2wvc2hhZGVyLXByZWNpc2lvbi1mb3JtYXQtd2RpZmYuaHRtbFVUBQADMoUlUHV4CwAB
BOgDAAAE6AMAAFBLAQIeAxQAAgAIAG6wCkF4vdBfqwAAAJQCAABUABgAAAAAAAEAAACkgSbUAQB0
bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2NhbnZhcy93ZWJnbC9pbmRleC12YWxpZGF0aW9u
LWNvcGllcy1pbmRpY2VzLXN0ZGVyci50eHRVVAUAAzCFJVB1eAsAAQToAwAABOgDAABQSwECHgMU
AAIACABusApBaxPWK58AAABKAQAAXwAYAAAAAAABAAAApIFf1QEAdG1wL2xheW91dC10ZXN0LXJl
c3VsdHMvZmFzdC9jYW52YXMvd2ViZ2wvaW5kZXgtdmFsaWRhdGlvbi12ZXJpZmllcy10b28tbWFu
eS1pbmRpY2VzLXN0ZGVyci50eHRVVAUAAzCFJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACABu
sApBCuPZNJgAAAACAgAARAAYAAAAAAABAAAApIGX1gEAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMv
ZmFzdC9jYW52YXMvd2ViZ2wvZ2V0LWFjdGl2ZS10ZXN0LXN0ZGVyci50eHRVVAUAAy+FJVB1eAsA
AQToAwAABOgDAABQSwECHgMUAAIACABusApBH77aX5UAAAAmAQAAUQAYAAAAAAABAAAApIGt1wEA
dG1wL2xheW91dC10ZXN0LXJlc3VsdHMvZmFzdC9jYW52YXMvd2ViZ2wvZ2wtYmluZC1hdHRyaWIt
bG9jYXRpb24tdGVzdC1zdGRlcnIudHh0VVQFAAMvhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAAC
AAgAwawKQa9PIrTQAAAAqAEAAEoAGAAAAAAAAQAAAKSBzdgBAHRtcC9sYXlvdXQtdGVzdC1yZXN1
bHRzL2Zhc3QvY2FudmFzL3dlYmdsL2ludmFsaWQtcGFzc2VkLXBhcmFtcy1zdGRlcnIudHh0VVQF
AAM6fyVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAb7AKQUiKSEFWAAAAYQAAAEoAGAAAAAAA
AQAAAKSBIdoBAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvY2FudmFzL3dlYmdsL251bGwt
b2JqZWN0LWJlaGF2aW91ci1zdGRlcnIudHh0VVQFAAMxhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4D
CgAAAAAA26wKQQAAAAAAAAAAAAAAACgAGAAAAAAAAAAQAO1B+9oBAHRtcC9sYXlvdXQtdGVzdC1y
ZXN1bHRzL2Zhc3QvZmlsZXN5c3RlbS9VVAUAA21/JVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIA
CACLsApByQBmW2YAAABxAAAAOgAYAAAAAAABAAAApIFd2wEAdG1wL2xheW91dC10ZXN0LXJlc3Vs
dHMvZmFzdC9maWxlc3lzdGVtL29wLWNvcHktc3RkZXJyLnR4dFVUBQADZYUlUHV4CwABBOgDAAAE
6AMAAFBLAQIeAxQAAgAIAIuwCkGIp71PZgAAAHEAAAA6ABgAAAAAAAEAAACkgTfcAQB0bXAvbGF5
b3V0LXRlc3QtcmVzdWx0cy9mYXN0L2ZpbGVzeXN0ZW0vb3AtbW92ZS1zdGRlcnIudHh0VVQFAANl
hSVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAi7AKQVqTiLBmAAAAcQAAADwAGAAAAAAAAQAA
AKSBEd0BAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2Zhc3QvZmlsZXN5c3RlbS9vcC1yZW1vdmUt
c3RkZXJyLnR4dFVUBQADZYUlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAJOwCkEYoCj/CQEA
AI8CAABDABgAAAAAAAEAAACkge3dAQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9weXdlYnNvY2tl
dC53cy5sb2ctMTBBdWcyMDEyLTIyMDAxMC1vdXQudHh0VVQFAAN2hSVQdXgLAAEE6AMAAAToAwAA
UEsBAh4DFAACAAgAZbEKQZkOd11lSQEARKUPACYAGAAAAAAAAQAAAKSBc98BAHRtcC9sYXlvdXQt
dGVzdC1yZXN1bHRzL2FjY2Vzc19sb2cudHh0VVQFAAP+hiVQdXgLAAEE6AMAAAToAwAAUEsBAh4D
FAACAAgAV7EKQUZb4D71pQAAG0EEACYAGAAAAAAAAQAAAKSBOCkDAHRtcC9sYXlvdXQtdGVzdC1y
ZXN1bHRzL3Rlc3RzX3J1bjMudHh0VVQFAAPmhiVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgA
ZbEKQSBwGnBmNgAABqYFACUAGAAAAAAAAQAAAKSBjc8DAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRz
L2Vycm9yX2xvZy50eHRVVAUAA/6GJVB1eAsAAQToAwAABOgDAABQSwECHgMKAAAAAAAJrQpBAAAA
AAAAAAAAAAAAIQAYAAAAAAAAABAA7UFSBgQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZv
cm0vVVQFAAPBfyVQdXgLAAEE6AMAAAToAwAAUEsBAh4DCgAAAAAAY60KQQAAAAAAAAAAAAAAACoA
GAAAAAAAAAAQAO1BrQYEAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVt
L1VUBQADaoAlUHV4CwABBOgDAAAE6AMAAFBLAQIeAwoAAAAAAGOtCkEAAAAAAAAAAAAAAAAyABgA
AAAAAAAAEADtQREHBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92
aXJ0dWFsL1VUBQADaoAlUHV4CwABBOgDAAAE6AMAAFBLAQIeAwoAAAAAAGOtCkEAAAAAAAAAAAAA
AAA2ABgAAAAAAAAAEADtQX0HBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJv
bWl1bS92aXJ0dWFsL2dwdS9VVAUAA2qAJVB1eAsAAQToAwAABOgDAABQSwECHgMKAAAAAABjrQpB
AAAAAAAAAAAAAAAAOwAYAAAAAAAAABAA7UHtBwQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxh
dGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9VVAUAA2qAJVB1eAsAAQToAwAABOgDAABQ
SwECHgMKAAAAAABjrQpBAAAAAAAAAAAAAAAAQgAYAAAAAAAAABAA7UFiCAQAdG1wL2xheW91dC10
ZXN0LXJlc3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvVVQF
AANqgCVQdXgLAAEE6AMAAAToAwAAUEsBAh4DCgAAAAAAZq0KQQAAAAAAAAAAAAAAAEgAGAAAAAAA
AAAQAO1B3ggEAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1
YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL1VUBQADcIAlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQA
AgAIABOxCkEtmmkr2AAAABwCAABoABgAAAAAAAEAAACkgWAJBAB0bXAvbGF5b3V0LXRlc3QtcmVz
dWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL2dwdS9mYXN0L2NhbnZhcy93ZWJnbC9zaGFk
ZXItcHJlY2lzaW9uLWZvcm1hdC1kaWZmLnR4dFVUBQADZoYlUHV4CwABBOgDAAAE6AMAAFBLAQIe
AxQAAgAIABWxCkEvDILgiQAAAJEAAABwABgAAAAAAAEAAACkgdoKBAB0bXAvbGF5b3V0LXRlc3Qt
cmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL2dwdS9mYXN0L2NhbnZhcy93ZWJnbC91
bmlmb3JtLWFycmF5LWxlbmd0aC1vdmVyZmxvdy1zdGRlcnIudHh0VVQFAANphiVQdXgLAAEE6AMA
AAToAwAAUEsBAh4DFAACAAgAE7EKQR8ZY3n7AQAADgwAAGwAGAAAAAAAAQAAAKSBDQwEAHRtcC9s
YXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2Fu
dmFzL3dlYmdsL3NoYWRlci1wcmVjaXNpb24tZm9ybWF0LWV4cGVjdGVkLnR4dFVUBQADZoYlUHV4
CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIABKxCkGpD5MgqgAAANUCAABvABgAAAAAAAEAAACkga4O
BAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL2dwdS9m
YXN0L2NhbnZhcy93ZWJnbC9nbC12ZXJ0ZXgtYXR0cmliLXplcm8taXNzdWVzLXN0ZGVyci50eHRV
VAUAA2OGJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACAASsQpBi2P51dsAAAA0AQAAYwAYAAAA
AAABAAAApIEBEAQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vdmly
dHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvaW5kZXgtdmFsaWRhdGlvbi1zdGRlcnIudHh0VVQF
AANkhiVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAE7EKQXU2MIvNBwAA3xsAAHAAGAAAAAAA
AQAAAKSBeREEAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1
YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL3NoYWRlci1wcmVjaXNpb24tZm9ybWF0LXByZXR0eS1k
aWZmLmh0bWxVVAUAA2aGJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACAARsQpBSbpVYMQAAABK
BgAAbAAYAAAAAAABAAAApIHwGQQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZvcm0vY2hy
b21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvZHJhdy1hcnJheXMtb3V0LW9mLWJv
dW5kcy1zdGRlcnIudHh0VVQFAANihiVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAEbEKQWWH
pliJAAAA/QAAAGIAGAAAAAAAAQAAAKSBWhsEAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRm
b3JtL2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL2Vycm9yLXJlcG9ydGlu
Zy1zdGRlcnIudHh0VVQFAANihiVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAE7EKQTlpxroM
AgAAPQwAAGoAGAAAAAAAAQAAAKSBfxwEAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL3BsYXRmb3Jt
L2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFzL3dlYmdsL3NoYWRlci1wcmVjaXNpb24t
Zm9ybWF0LWFjdHVhbC50eHRVVAUAA2aGJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACAATsQpB
2/Skp84AAACiAQAAaAAYAAAAAAABAAAApIEvHwQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxh
dGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvcHJlbXVsdGlwbHlh
bHBoYS10ZXN0LXN0ZGVyci50eHRVVAUAA2WGJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACAAR
sQpBp7pfTP0AAACzCQAAbgAYAAAAAAABAAAApIGfIAQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMv
cGxhdGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvZHJhdy1lbGVt
ZW50cy1vdXQtb2YtYm91bmRzLXN0ZGVyci50eHRVVAUAA2KGJVB1eAsAAQToAwAABOgDAABQSwEC
HgMUAAIACAAUsQpBP1kxpz8BAABzDAAAZwAYAAAAAAABAAAApIFEIgQAdG1wL2xheW91dC10ZXN0
LXJlc3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wv
dHlwZS1jb252ZXJzaW9uLXRlc3Qtc3RkZXJyLnR4dFVUBQADaIYlUHV4CwABBOgDAAAE6AMAAFBL
AQIeAxQAAgAIABOxCkFlk5kfWwIAAN0MAABqABgAAAAAAAEAAACkgSQkBAB0bXAvbGF5b3V0LXRl
c3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL2dwdS9mYXN0L2NhbnZhcy93ZWJn
bC9zaGFkZXItcHJlY2lzaW9uLWZvcm1hdC13ZGlmZi5odG1sVVQFAANmhiVQdXgLAAEE6AMAAATo
AwAAUEsBAh4DFAACAAgAErEKQQqIfCKpAAAAjAIAAHIAGAAAAAAAAQAAAKSBIycEAHRtcC9sYXlv
dXQtdGVzdC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL3ZpcnR1YWwvZ3B1L2Zhc3QvY2FudmFz
L3dlYmdsL2luZGV4LXZhbGlkYXRpb24tY29waWVzLWluZGljZXMtc3RkZXJyLnR4dFVUBQADZIYl
UHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIABKxCkHWM4iOnwAAAEYBAAB9ABgAAAAAAAEAAACk
gXgoBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL2dw
dS9mYXN0L2NhbnZhcy93ZWJnbC9pbmRleC12YWxpZGF0aW9uLXZlcmlmaWVzLXRvby1tYW55LWlu
ZGljZXMtc3RkZXJyLnR4dFVUBQADZIYlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIABGxCkEY
AhxxlwAAAPoBAABiABgAAAAAAAEAAACkgc4pBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0
Zm9ybS9jaHJvbWl1bS92aXJ0dWFsL2dwdS9mYXN0L2NhbnZhcy93ZWJnbC9nZXQtYWN0aXZlLXRl
c3Qtc3RkZXJyLnR4dFVUBQADYoYlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIABGxCkGZoDfr
lgAAACIBAABvABgAAAAAAAEAAACkgQErBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9wbGF0Zm9y
bS9jaHJvbWl1bS92aXJ0dWFsL2dwdS9mYXN0L2NhbnZhcy93ZWJnbC9nbC1iaW5kLWF0dHJpYi1s
b2NhdGlvbi10ZXN0LXN0ZGVyci50eHRVVAUAA2KGJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIA
CAASsQpBvaTmdFkAAABfAAAAaAAYAAAAAAABAAAApIFALAQAdG1wL2xheW91dC10ZXN0LXJlc3Vs
dHMvcGxhdGZvcm0vY2hyb21pdW0vdmlydHVhbC9ncHUvZmFzdC9jYW52YXMvd2ViZ2wvbnVsbC1v
YmplY3QtYmVoYXZpb3VyLXN0ZGVyci50eHRVVAUAA2SGJVB1eAsAAQToAwAABOgDAABQSwECHgMK
AAAAAAAJrQpBAAAAAAAAAAAAAAAALwAYAAAAAAAAABAA7UE7LQQAdG1wL2xheW91dC10ZXN0LXJl
c3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vaHR0cC9VVAUAA8F/JVB1eAsAAQToAwAABOgDAABQSwEC
HgMKAAAAAAAJrQpBAAAAAAAAAAAAAAAANQAYAAAAAAAAABAA7UGkLQQAdG1wL2xheW91dC10ZXN0
LXJlc3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vaHR0cC90ZXN0cy9VVAUAA8F/JVB1eAsAAQToAwAA
BOgDAABQSwECHgMKAAAAAAAJrQpBAAAAAAAAAAAAAAAAPgAYAAAAAAAAABAA7UETLgQAdG1wL2xh
eW91dC10ZXN0LXJlc3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vaHR0cC90ZXN0cy9zZWN1cml0eS9V
VAUAA8F/JVB1eAsAAQToAwAABOgDAABQSwECHgMKAAAAAAAJrQpBAAAAAAAAAAAAAAAASwAYAAAA
AAAAABAA7UGLLgQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcGxhdGZvcm0vY2hyb21pdW0vaHR0
cC90ZXN0cy9zZWN1cml0eS9taXhlZENvbnRlbnQvVVQFAAPBfyVQdXgLAAEE6AMAAAToAwAAUEsB
Ah4DFAACAAgAtrAKQfNX2HJpAAAAbgAAAHsAGAAAAAAAAQAAAKSBEC8EAHRtcC9sYXlvdXQtdGVz
dC1yZXN1bHRzL3BsYXRmb3JtL2Nocm9taXVtL2h0dHAvdGVzdHMvc2VjdXJpdHkvbWl4ZWRDb250
ZW50L2luc2VjdXJlLWlmcmFtZS1pbi1tYWluLWZyYW1lLWFsbG93ZWQtc3RkZXJyLnR4dFVUBQAD
uIUlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAFmxCkGIseqa2VsAAKBpAgAmABgAAAAAAAEA
AACkgS4wBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy90ZXN0c19ydW4wLnR4dFVUBQAD6oYlUHV4
CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAG2xCkG3mqGb8CQAAIOdAAAkABgAAAAAAAEAAACkgWeM
BAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9yZXN1bHRzLmh0bWxVVAUAAw2HJVB1eAsAAQToAwAA
BOgDAABQSwECHgMKAAAAAABkrQpBAAAAAAAAAAAAAAAAIAAYAAAAAAAAABAA7UG1sQQAdG1wL2xh
eW91dC10ZXN0LXJlc3VsdHMvcGx1Z2lucy9VVAUAA2uAJVB1eAsAAQToAwAABOgDAABQSwECHgMU
AAIACAATsQpBH3W9Qu8AAABZAQAARAAYAAAAAAABAAAApIEPsgQAdG1wL2xheW91dC10ZXN0LXJl
c3VsdHMvcGx1Z2lucy9udWxsLW5wcC1nZXR2YWx1ZS1wb2ludGVyLXN0ZGVyci50eHRVVAUAA2WG
JVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACACXsApB+d6eDVwDAABHFQAAQwAYAAAAAAABAAAA
pIF8swQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcHl3ZWJzb2NrZXQud3MubG9nLTEwQXVnMjAx
Mi0yMjAwMTAtZXJyLnR4dFVUBQADfYUlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAG2xCkEt
M5HIBAIAAAoFAAApABgAAAAAAAEAAACkgVW3BAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9mdWxs
X3Jlc3VsdHMuanNvblVUBQADDYclUHV4CwABBOgDAAAE6AMAAFBLAQIeAwoAAAAAABiwCkEAAAAA
AAAAAAAAAAAjABgAAAAAAAAAEADtQby5BAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9hbmltYXRp
b25zL1VUBQADj4QlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIABiwCkEhH8jWfwAAAAcBAABL
ABgAAAAAAAEAAACkgRm6BAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9hbmltYXRpb25zL3N1c3Bl
bmQtcmVzdW1lLWFuaW1hdGlvbi1ldmVudHMtZGlmZi50eHRVVAUAA4+EJVB1eAsAAQToAwAABOgD
AABQSwECHgMUAAIACAAYsApBAJRCD3kAAADOAAAATQAYAAAAAAABAAAApIEduwQAdG1wL2xheW91
dC10ZXN0LXJlc3VsdHMvYW5pbWF0aW9ucy9zdXNwZW5kLXJlc3VtZS1hbmltYXRpb24tZXZlbnRz
LWFjdHVhbC50eHRVVAUAA4+EJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACAAYsApBorgZbnIH
AADvGQAAUwAYAAAAAAABAAAApIEdvAQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvYW5pbWF0aW9u
cy9zdXNwZW5kLXJlc3VtZS1hbmltYXRpb24tZXZlbnRzLXByZXR0eS1kaWZmLmh0bWxVVAUAA4+E
JVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACAAYsApB9dAVfYAAAAD6AAAATwAYAAAAAAABAAAA
pIEcxAQAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvYW5pbWF0aW9ucy9zdXNwZW5kLXJlc3VtZS1h
bmltYXRpb24tZXZlbnRzLWV4cGVjdGVkLnR4dFVUBQADj4QlUHV4CwABBOgDAAAE6AMAAFBLAQIe
AxQAAgAIABiwCkExlYxzxQAAAG0BAABNABgAAAAAAAEAAACkgSXFBAB0bXAvbGF5b3V0LXRlc3Qt
cmVzdWx0cy9hbmltYXRpb25zL3N1c3BlbmQtcmVzdW1lLWFuaW1hdGlvbi1ldmVudHMtd2RpZmYu
aHRtbFVUBQADj4QlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAGSxCkGR7GaBGiQAAG9hAAAi
ABgAAAAAAAEAAACkgXHGBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9odHRwZC5jb25mVVQFAAP8
hiVQdXgLAAEE6AMAAAToAwAAUEsBAh4DCgAAAAAAWawKQQAAAAAAAAAAAAAAAB0AGAAAAAAAAAAQ
AO1B5+oEAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvVVQFAAN6fiVQdXgLAAEE6AMAAATo
AwAAUEsBAh4DCgAAAAAAzqwKQQAAAAAAAAAAAAAAACMAGAAAAAAAAAAQAO1BPusEAHRtcC9sYXlv
dXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvVVQFAANUfyVQdXgLAAEE6AMAAAToAwAAUEsBAh4D
CgAAAAAAWawKQQAAAAAAAAAAAAAAACkAGAAAAAAAAAAQAO1Bm+sEAHRtcC9sYXlvdXQtdGVzdC1y
ZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUvVVQFAAN6fiVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAAC
AAgACbAKQf7BpR1AAQAAWgIAAEUAGAAAAAAAAQAAAKSB/usEAHRtcC9sYXlvdXQtdGVzdC1yZXN1
bHRzL2h0dHAvdGVzdHMvY2FjaGUvcG9zdC1yZWRpcmVjdC1nZXQtYWN0dWFsLnR4dFVUBQADcoQl
UHV4CwABBOgDAAAE6AMAAFBLAQIeAwoAAgAAAAmwCkGc6ad1BgAAAAYAAABHABgAAAAAAAEAAACk
gb3tBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9odHRwL3Rlc3RzL2NhY2hlL3Bvc3QtcmVkaXJl
Y3QtZ2V0LWV4cGVjdGVkLnR4dFVUBQADcoQlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAAmw
CkFXNUJbmQEAABcDAABDABgAAAAAAAEAAACkgUTuBAB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9o
dHRwL3Rlc3RzL2NhY2hlL3Bvc3QtcmVkaXJlY3QtZ2V0LWRpZmYudHh0VVQFAANyhCVQdXgLAAEE
6AMAAAToAwAAUEsBAh4DFAACAAgACbAKQbnHjybbHwAAqCsAAEUAGAAAAAAAAAAAAKSBWvAEAHRt
cC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUvcG9zdC1yZWRpcmVjdC1nZXQt
YWN0dWFsLnBuZ1VUBQADcoQlUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAAmwCkGNpXyKjwEA
AOgCAABFABgAAAAAAAEAAACkgbQQBQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9odHRwL3Rlc3Rz
L2NhY2hlL3Bvc3QtcmVkaXJlY3QtZ2V0LXdkaWZmLmh0bWxVVAUAA3KEJVB1eAsAAQToAwAABOgD
AABQSwECHgMKAAIAAAAJsApBnOmndQYAAAAGAAAAUwAYAAAAAAABAAAApIHCEgUAdG1wL2xheW91
dC10ZXN0LXJlc3VsdHMvaHR0cC90ZXN0cy9jYWNoZS9wb3N0LXdpdGgtY2FjaGVkLXN1YnJlc291
cmNlcy1leHBlY3RlZC50eHRVVAUAA3KEJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACAAJsApB
1fYdYpAIAAAbHwAAVwAYAAAAAAABAAAApIFVEwUAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvaHR0
cC90ZXN0cy9jYWNoZS9wb3N0LXdpdGgtY2FjaGVkLXN1YnJlc291cmNlcy1wcmV0dHktZGlmZi5o
dG1sVVQFAANyhCVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgACbAKQY2lfIqPAQAA6AIAAFEA
GAAAAAAAAQAAAKSBdhwFAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUv
cG9zdC13aXRoLWNhY2hlZC1zdWJyZXNvdXJjZXMtd2RpZmYuaHRtbFVUBQADcoQlUHV4CwABBOgD
AAAE6AMAAFBLAQIeAxQAAgAIAAmwCkG5x48m2x8AAKgrAABRABgAAAAAAAAAAACkgZAeBQB0bXAv
bGF5b3V0LXRlc3QtcmVzdWx0cy9odHRwL3Rlc3RzL2NhY2hlL3Bvc3Qtd2l0aC1jYWNoZWQtc3Vi
cmVzb3VyY2VzLWFjdHVhbC5wbmdVVAUAA3KEJVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACAAJ
sApBnEKPLYkIAAAPHwAASwAYAAAAAAABAAAApIH2PgUAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMv
aHR0cC90ZXN0cy9jYWNoZS9wb3N0LXJlZGlyZWN0LWdldC1wcmV0dHktZGlmZi5odG1sVVQFAANy
hCVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgACbAKQdsolAOhAQAALwMAAE8AGAAAAAAAAQAA
AKSBBEgFAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvY2FjaGUvcG9zdC13aXRo
LWNhY2hlZC1zdWJyZXNvdXJjZXMtZGlmZi50eHRVVAUAA3KEJVB1eAsAAQToAwAABOgDAABQSwEC
HgMUAAIACAAJsApB/sGlHUABAABaAgAAUQAYAAAAAAABAAAApIEuSgUAdG1wL2xheW91dC10ZXN0
LXJlc3VsdHMvaHR0cC90ZXN0cy9jYWNoZS9wb3N0LXdpdGgtY2FjaGVkLXN1YnJlc291cmNlcy1h
Y3R1YWwudHh0VVQFAANyhCVQdXgLAAEE6AMAAAToAwAAUEsBAh4DCgAAAAAAsqwKQQAAAAAAAAAA
AAAAACgAGAAAAAAAAAAQAO1B+UsFAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMv
bWlzYy9VVAUAAx9/JVB1eAsAAQToAwAABOgDAABQSwECHgMUAAIACABhsApBFTU1knoAAAC8AAAA
QgAYAAAAAAABAAAApIFbTAUAdG1wL2xheW91dC10ZXN0LXJlc3VsdHMvaHR0cC90ZXN0cy9taXNj
L3hzbHQtYmFkLWltcG9ydC1zdGRlcnIudHh0VVQFAAMVhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4D
FAACAAgAU7AKQTLfgCZtAAAAcgAAAEcAGAAAAAAAAQAAAKSBUU0FAHRtcC9sYXlvdXQtdGVzdC1y
ZXN1bHRzL2h0dHAvdGVzdHMvbWlzYy9kbnMtcHJlZmV0Y2gtY29udHJvbC1zdGRlcnIudHh0VVQF
AAP9hCVQdXgLAAEE6AMAAAToAwAAUEsBAh4DCgAAAAAA1KwKQQAAAAAAAAAAAAAAACwAGAAAAAAA
AAAQAO1BP04FAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvc2VjdXJpdHkvVVQF
AANgfyVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAe7AKQVZwUmliAAAAjgAAAFUAGAAAAAAA
AQAAAKSBpU4FAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvc2VjdXJpdHkveHNz
LURFTklFRC14bWwtZXh0ZXJuYWwtZW50aXR5LXN0ZGVyci50eHRVVAUAA0qFJVB1eAsAAQToAwAA
BOgDAABQSwECHgMUAAIACAB7sApBYEtmEJEAAAD7AQAAXQAYAAAAAAABAAAApIGWTwUAdG1wL2xh
eW91dC10ZXN0LXJlc3VsdHMvaHR0cC90ZXN0cy9zZWN1cml0eS94c3MtREVOSUVELXhzbC1kb2N1
bWVudC1zZWN1cml0eU9yaWdpbi1zdGRlcnIudHh0VVQFAANKhSVQdXgLAAEE6AMAAAToAwAAUEsB
Ah4DCgAAAAAA1KwKQQAAAAAAAAAAAAAAAEIAGAAAAAAAAAAQAO1BvlAFAHRtcC9sYXlvdXQtdGVz
dC1yZXN1bHRzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L1VUBQAD
YH8lUHV4CwABBOgDAAAE6AMAAFBLAQIeAxQAAgAIAIOwCkFjqqxsggAAAKgAAABqABgAAAAAAAEA
AACkgTpRBQB0bXAvbGF5b3V0LXRlc3QtcmVzdWx0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS94c2wtdW5hZmZlY3RlZC1ieS1zdHlsZS1zcmMtMi1zdGRlcnIudHh0
VVQFAANWhSVQdXgLAAEE6AMAAAToAwAAUEsBAh4DFAACAAgAg7AKQWOqrGyCAAAAqAAAAFgAGAAA
AAAAAQAAAKSBYFIFAHRtcC9sYXlvdXQtdGVzdC1yZXN1bHRzL2h0dHAvdGVzdHMvc2VjdXJpdHkv
Y29udGVudFNlY3VyaXR5UG9saWN5L3hzbC1hbGxvd2VkLXN0ZGVyci50eHRVVAUAA1WFJVB1eAsA
AQToAwAABOgDAABQSwECHgMKAAAAAACxrQpBAAAAAAAAAAAAAAAAIAAYAAAAAAAAABAA7UF0UwUA
dG1wL2xheW91dC10ZXN0LXJlc3VsdHMvcmV0cmllcy9VVAUAA/2AJVB1eAsAAQToAwAABOgDAABQ
SwECHgMUAAIACABssQpBCaHMhsYAAACCAQAALgAYAAAAAAABAAAApIHOUwUAdG1wL2xheW91dC10
ZXN0LXJlc3VsdHMvcmV0cmllcy90ZXN0c19ydW4wLnR4dFVUBQADC4clUHV4CwABBOgDAAAE6AMA
AFBLBQYAAAAAdgB2AAdAAAD8VAUAAAA=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>157834</attachid>
            <date>2012-08-10 16:39:53 -0700</date>
            <delta_ts>2012-08-17 10:09:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-93111-20120811003924.patch</filename>
            <type>text/plain</type>
            <size>43351</size>
            <attacher name="Leandro Graciá Gil">leandrogracia</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI1MzM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGJmNDczYTY2MTJkMzQy
NmZjNzA3ZjQ2NGFlYjNiYjY4ZmYzYjFlMC4uY2YyMDJlYWI1OGQ3NzM2YTQ1NDlmZTVlYjY2MmRi
ODBjOWNmYzZmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDEyLTA4LTEwICBMZWFu
ZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNocm9taXVtLm9yZz4KKworICAgICAgICBb
Q2hyb21pdW1dIEltcGxlbWVudCB0aGUgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3RzIEFQSQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnRyb2R1Y2UgdGhl
IGZpbmQtaW4tcGFnZSBjb29yZGluYXRlIHN5c3RlbS4gVGhpcyBzeXN0ZW0gdHJpZXMgdG8gc29s
dmUKKyAgICAgICAgdGhlIHVuaW50dWl0aXZlIHRpY2ttYXJrIHJlc3VsdHMgcHJlc2VudGVkIGlu
IHBhZ2VzIHdpdGggbXVsdGlwbGUgZnJhbWVzCisgICAgICAgIGFuZCBzY3JvbGxlZCBjb250ZW50
cyB3aGVyZSB0aGUgZmluZCByZXN1bHRzIG1pZ2h0IG5vdCBiZSBpbiB0aGUgdmlzaWJsZQorICAg
ICAgICBhcmVhIG9mIGEgZnJhbWUsIHdoaWNoIG1pZ2h0IGxlYWQgdG8gdGlja21hcmtzIGJlbG93
IHRoZSBjb250YWluZXIgZnJhbWUuCisKKyAgICAgICAgVG8gYWNoaWV2ZSB0aGlzLCB0aGlzIGNv
b3JkaW5hdGUgc3lzdGVtIGdvZXMgdXAgdGhlIHJlbmRlciB0cmVlCisgICAgICAgIG5vcm1hbGl6
aW5nIHRoZSBjb29yZGluYXRlcyBieSB0aGUgYWN0dWFsIGNvbnRlbnRzIHNpemUgb2YgaXRzIGNv
bnRhaW5lci4KKyAgICAgICAgVGhpcyBsZWFkcyB0byB0aWNrbWFya3Mgc2NhbGVkIHRvIHRoZSB2
aXNpYmxlIHNpemUgb2YgdGhlaXIgZnJhbWUKKyAgICAgICAgaW5kZXBlbmRlbnRseSBvZiBpdHMg
c2Nyb2xsLiBUaGlzIGNvb3JkaW5hdGUgc3lzdGVtIHN1cHBvcnRzIGFsc28gQ1NTCisgICAgICAg
IHNjcm9sbDpvdmVyZmxvdywgdHJhbnNmb3JtcyBhbmQgdGhlIGRpZmZlcmVudCBwb3NpdGlvbnMu
CisKKyAgICAgICAgQWxzbyBhZGQgYW4gYXV4aWxpYXJ5IG1ldGhvZCB0byBSYW5nZSBpbiBvcmRl
ciB0byBwcm92aWRlIGEgdHJhbnNmb3JtCisgICAgICAgIGZyaWVuZGx5IHdheSB0byByZXRyaWV2
ZSB0aGUgYWJzb2x1dGUgY29vcmRpbmF0ZXMgb2YgdGhlIGVuY2xvc2luZworICAgICAgICBib3Vu
ZGluZyBib3ggd2l0aG91dCB0aGUgYWRqdXN0bWVudCBvcGVyYXRpb25zIHRoYXQgdGhlIGV4aXN0
aW5nCisgICAgICAgIGVuY2xvc2luZ1JlY3QgbWV0aG9kIGRvZXMuCisKKyAgICAgICAgVGVzdGVk
IGJ5IFdlYkZyYW1lVGVzdCBXZWJLaXQgdW5pdCB0ZXN0LgorCisgICAgICAgICogZG9tL1Jhbmdl
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlOjp0cmFuc2Zvcm1GcmllbmRseUJvdW5kaW5n
Qm94KTogYWRkIGEgdHJhbnNmb3JtLWZyaWVuZGx5IGVxdWl2YWxlbnQgb2YgYm91bmRpbmdCb3gu
CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBkb20vUmFuZ2UuaDogbW92ZSBib3VuZGlu
Z0JveCB0byB0aGUgZ3JvdXAgb2Ygbm9uLXRyYW5zZm9ybS1mcmllbmRseSBtZXRob2RzLgorICAg
ICAgICAoUmFuZ2UpOgorCiAyMDEyLTA4LTA5ICBKZWZmcmV5IFBmYXUgIDxqcGZhdUBhcHBsZS5j
b20+CiAKICAgICAgICAgQWxsb3cgYmxvY2tpbmcgb2YgdGhpcmQtcGFydHkgbG9jYWxTdG9yYWdl
IGFuZCBzZXNzaW9uU3RvcmFnZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBkMWQ4YTY5
YWEwYzhkMjQ4YzQ1MGM5OWMwNDVmZjlhOGUzODFlNTliLi43N2IyNjQ2NWVkYjZlZGJmOTdjZDAw
N2IyMDc2MTY5ODI4YjM2MzFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDU3IEBACisyMDEyLTA4LTEwICBMZWFuZHJvIEdyYWNpYSBHaWwgIDxsZWFuZHJvZ3JhY2lhQGNo
cm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dIEltcGxlbWVudCB0aGUgZmluZC1pbi1w
YWdlIG1hdGNoIHJlY3RzIEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTMxMTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBJbXBsZW1lbnQgdGhlIGZ1bmNpb25hbGl0eSBvZiB0aGUgZmluZC1pbi1wYWdl
IG1hdGNoIHJlY3RzIEFQSSBpbiBXZWJGcmFtZS4KKyAgICAgICAgVGhlc2UgbWV0aG9kcyBrZWVw
IGEgY2FjaGUgb2YgdGhlIG1hdGNoIHJlY3RzIGluIGEgc3BlY2lhbCBjb29yZGluYXRlIHN5c3Rl
bQorICAgICAgICAoZmluZC1pbi1wYWdlIGNvb3JkaW5hdGVzKSBhbmQgdXBkYXRlIHRoZW0gb24g
c2l6ZSBjaGFuZ2VzLiBUaGV5IGFsc28gYWxsb3cKKyAgICAgICAgdG8gcmVjb3ZlciB0aGUgbWF0
Y2ggY2xvc2VzdCB0byBhIGdpdmVuIHBvaW50LCB0aGVyZWZvcmUgZW5hYmxpbmcgdG8gbW92ZQor
ICAgICAgICB0byBmaW5kIG1hdGNoZXMgd2hlbiB0YXBwaW5nIG9uIHRoZWlyIGNvcnJlc3BvbmRp
bmcgdGlja21hcmtzLgorCisgICAgICAgICogV2ViS2l0Lmd5cDogYWRkIEZpbmRJblBhZ2VDb29y
ZGluYXRlcy5oIC8gY3BwLgorICAgICAgICAqIHNyYy9DaHJvbWVDbGllbnRJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6Q2hyb21lQ2xpZW50SW1wbDo6Y29udGVudHNTaXplQ2hhbmdlZCk6IHBy
b3BhZ2F0ZSBkaWRDaGFuZ2VDb250ZW50c1NpemUgdG8gV2ViRnJhbWVJbXBsLgorICAgICAgICAq
IHNyYy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYktpdCk6
CisgICAgICAgIChXZWJLaXQ6OnRvTm9ybWFsaXplZFJlY3QpOiBhdXhpbGlhcnkgaW50ZXJuYWwg
ZnVuY3Rpb24uCisgICAgICAgIChXZWJLaXQ6OmZpbmRJblBhZ2VSZWN0RnJvbUFic29sdXRlUmVj
dCk6IG1haW4gY29vcmRpbmF0ZSBjb252ZXJzaW9uIGZ1bmN0aW9uLgorICAgICAgICAoV2ViS2l0
OjpmaW5kSW5QYWdlUmVjdEZyb21SYW5nZSk6IGNvbnZlbmllbmNlIGNvbnZlcnNpb24gZnVuY3Rp
b24gZm9yIFJhbmdlcy4KKyAgICAgICAgKiBzcmMvRmluZEluUGFnZUNvb3JkaW5hdGVzLmg6IEFk
ZGVkLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIHNy
Yy9XZWJGcmFtZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OkZpbmRN
YXRjaDo6RmluZE1hdGNoKTogZmluZCBtYXRjaGVzIGNhY2hlIGNvbnN0cnVjdG9yLgorICAgICAg
ICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpmaW5kKTogY2xlYXIg
bWF0Y2ggY2FjaGUgd2hlbiBhcHByb3ByaWF0ZSBhbmQgem9vbSBpbnRvIHJlc3VsdHMgb24gdGhl
IEFuZHJvaWQgcG9ydC4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjpzdG9wRmluZGlu
Zyk6IGNsZWFyIG1hdGNoZXMgY2FjaGUuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6
c2NvcGVTdHJpbmdNYXRjaGVzKTogYWRkIG5ldyByZXN1bHRzIHRvIHRoZSBtYXRjaGVzIGNhY2hl
LgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmluY3JlYXNlTWF0Y2hDb3VudCk6IHVw
ZGF0ZSB0aGUgbWF0Y2hlcyBjYWNoZSB2ZXJzaW9uLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFt
ZUltcGw6OnJlc2V0TWF0Y2hDb3VudCk6IHVwZGF0ZSB0aGUgbWF0Y2hlcyBjYWNoZSB2ZXJzaW9u
LgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmZpbmRNYXRjaE1hcmtlcnNWZXJzaW9u
KTogbmV3IEFQSSBwcm92aWRpbmcgdGhlIG1hdGNoZXMgY2FjaGUgdmVyc2lvbi4KKyAgICAgICAg
KFdlYktpdDo6V2ViRnJhbWVJbXBsOjpjbGVhckZpbmRNYXRjaGVzQ2FjaGUpOiBpbnRlcm5hbCB1
dGlsaXR5IG1ldGhvZCB0byByZXNldCB0aGUgbWF0Y2hlcyBjYWNoZS4KKyAgICAgICAgKFdlYktp
dDo6V2ViRnJhbWVJbXBsOjppc0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCk6IGludGVybmFsIHV0aWxp
dHkgbWV0aG9kIHRvIGNoZWNrIGlmIHRoZSBsb2NhbCBmcmFtZSBpcyBzdGlsbCBpbiB0aGUgZnJh
bWUgdHJlZS4KKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjp1cGRhdGVGaW5kTWF0Y2hS
ZWN0cyk6IGludGVybmFsIHV0aWxpdHkgbWV0aG9kIHRvIHVwZGF0ZSB0aGUgbWF0Y2ggcmVzdWx0
IHJlY3RzIGlmIHJlcXVpcmVkLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OmFjdGl2
ZUZpbmRNYXRjaFJlY3QpOiBuZXcgQVBJIHByb3ZpZGluZyB0aGUgYWN0aXZlIGZpbmQgbWF0Y2gg
cmVjdCBpbiBmaW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMuCisgICAgICAgIChXZWJLaXQ6OldlYkZy
YW1lSW1wbDo6ZmluZE1hdGNoUmVjdHMpOiBuZXcgQVBJIHJldHVybmluZyB0aGUgdmFsaWQgbWF0
Y2ggcmVjdHMgaW4gZmluZC1pbi1wYWdlIGNvb3JkaW5hdGVzLgorICAgICAgICAoV2ViS2l0OjpX
ZWJGcmFtZUltcGw6OmFwcGVuZEZpbmRNYXRjaFJlY3RzKTogaW50ZXJuYWwgdXRpbGl0eSBtZXRo
b2QgdG8gY29uY2F0ZW5hdGUgdGhlIG1hdGNoIHJlc3VsdHMgb2YgbXVsdGlwbGUgZnJhbWVzLgor
ICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUltcGw6OnNlbGVjdE5lYXJlc3RGaW5kTWF0Y2gpOiBu
ZXcgQVBJIHNlbGVjdGluZyB0aGUgZmluZCBtYXRjaCBjbG9zZXIgdG8gYSBwb2ludCBpbiBmaW5k
LWluLXBhZ2UgY29vcmRpbmF0ZXMuCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6bmVh
cmVzdEZpbmRNYXRjaCk6IGludGVybmFsIHV0aWxpdHkgbWV0aG9kIHRvIGZpbmQgdGhlIG5lYXJl
c3QgZmluZCBtYXRjaCB0byBhIHBvaW50IGluIGEgZnJhbWUuCisgICAgICAgIChXZWJLaXQ6Oldl
YkZyYW1lSW1wbDo6c2VsZWN0RmluZE1hdGNoKTogaW50ZXJuYWwgdXRpbGl0eSBtZXRob2QgdG8g
c2VsZWN0IGEgbWF0Y2ggaW4gdGhlIGNhY2hlLgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFtZUlt
cGw6OldlYkZyYW1lSW1wbCk6IGluaXRpYWxpemF0aW9uIG9mIG5ldyB2YXJpYWJsZXMuCisgICAg
ICAgIChXZWJLaXQ6OldlYkZyYW1lSW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKTogaW52YWxp
ZGF0ZSB0aGUgY2FjaGVkIG1hdGNoIHJlY3QgY29vcmRpbmF0ZXMgb24gZnJhbWUgY29udGVudCBz
aXplIGNoYW5nZXMuCisgICAgICAgICogc3JjL1dlYkZyYW1lSW1wbC5oOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJGcmFtZUltcGwpOgorICAgICAgICAoV2ViS2l0OjpXZWJGcmFt
ZUltcGw6OmFjdGl2ZU1hdGNoRnJhbWUpOiByZW1vdmUgdW5yZXF1aXJlZCBjb25zdC4KKyAgICAg
ICAgKFdlYktpdDo6V2ViRnJhbWVJbXBsOjphY3RpdmVNYXRjaCk6IGV4cG9zZSB0aGUgcmFuZ2Ug
b2YgdGhlIGFjdGl2ZSBtYXRjaCB0byBhbGxvdyB0ZXN0aW5nLgorICAgICAgICAoRmluZE1hdGNo
KTogY2FjaGUgc3RydWN0dXJlIGZvciBmaW5kIG1hdGNoZXMuCisgICAgICAgICogdGVzdHMvV2Vi
RnJhbWVUZXN0LmNwcDogbmV3IHRlc3QgY2FzZSBmb3IgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3Rz
LgorICAgICAgICAqIHRlc3RzL2RhdGEvZmluZF9pbl9wYWdlLmh0bWw6IEFkZGVkLiBUZXN0IGNh
c2UgbGF5b3V0LgorICAgICAgICAqIHRlc3RzL2RhdGEvZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWw6
IEFkZGVkLiBUZXN0IGNhc2UgbGF5b3V0LgorCiAyMDEyLTA4LTEwICBJYWluIE1lcnJpY2sgIDxo
dXNreUBnb29nbGUuY29tPgogCiAgICAgICAgIFtjaHJvbWl1bV0gVXBzdHJlYW0gQW5kcm9pZCBj
aGFuZ2VzIHRvIFdlYkZyYW1lSW1wbDo6c2VsZWN0UmFuZ2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9SYW5nZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCmluZGV4
IGU5NDNjZjVkOTVlY2I0NGQwOThjNzNmZTRkMmU4Nzg0ODRjYWFiNTcuLmFkZmI0OGViODI5MzFi
N2I4NDQwZDFhYzE2YWE2YWMzNTM3ODVlNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9SYW5nZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcApAQCAtMTk0Miw3
ICsxOTQyLDYgQEAgdm9pZCBSYW5nZTo6Z2V0Qm9yZGVyQW5kVGV4dFF1YWRzKFZlY3RvcjxGbG9h
dFF1YWQ+JiBxdWFkcykgY29uc3QKICAgICB9CiB9CiAKLSAgICAKIEZsb2F0UmVjdCBSYW5nZTo6
Ym91bmRpbmdSZWN0KCkgY29uc3QKIHsKICAgICBpZiAoIW1fc3RhcnQuY29udGFpbmVyKCkpCkBA
IC0xOTYyLDYgKzE5NjEsMTkgQEAgRmxvYXRSZWN0IFJhbmdlOjpib3VuZGluZ1JlY3QoKSBjb25z
dAogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKK0Zsb2F0UmVjdCBSYW5nZTo6dHJhbnNmb3JtRnJp
ZW5kbHlCb3VuZGluZ0JveCgpIGNvbnN0Cit7CisgICAgRmxvYXRSZWN0IHJlc3VsdDsKKyAgICBW
ZWN0b3I8RmxvYXRRdWFkPiBxdWFkczsKKyAgICB0ZXh0UXVhZHMocXVhZHMpOworCisgICAgY29u
c3Qgc2l6ZV90IG4gPSBxdWFkcy5zaXplKCk7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBu
OyArK2kpCisgICAgICAgIHJlc3VsdC51bml0ZShxdWFkc1tpXS5ib3VuZGluZ0JveCgpKTsKKwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2lmbmRl
ZiBOREVCVUcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZS5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL1JhbmdlLmgKaW5kZXggYjg0YmQ2MTQ1NDA5ZDNhMTliMTM1NGYzNTc3ODY4
NWY4ODBlMjljMi4uMzMwMWQzZDdiZTE0MTg5ZjNlNWQxNzE0ZGE0N2JkYzdmNGQxNTFjOSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1JhbmdlLmgKQEAgLTExMiw4ICsxMTIsNiBAQCBwdWJsaWM6CiAKICAgICBTaGFkb3dSb290
KiBzaGFkb3dSb290KCkgY29uc3Q7CiAKLSAgICBJbnRSZWN0IGJvdW5kaW5nQm94KCkgY29uc3Q7
Ci0gICAgCiAgICAgZW51bSBSYW5nZUluRml4ZWRQb3NpdGlvbiB7CiAgICAgICAgIE5vdEZpeGVk
UG9zaXRpb24sCiAgICAgICAgIFBhcnRpYWxseUZpeGVkUG9zaXRpb24sCkBAIC0xMjIsMTAgKzEy
MCwxMyBAQCBwdWJsaWM6CiAgICAgCiAgICAgLy8gTm90IHRyYW5zZm9ybS1mcmllbmRseQogICAg
IHZvaWQgdGV4dFJlY3RzKFZlY3RvcjxJbnRSZWN0PiYsIGJvb2wgdXNlU2VsZWN0aW9uSGVpZ2h0
ID0gZmFsc2UsIFJhbmdlSW5GaXhlZFBvc2l0aW9uKiA9IDApIGNvbnN0OworICAgIEludFJlY3Qg
Ym91bmRpbmdCb3goKSBjb25zdDsKKwogICAgIC8vIFRyYW5zZm9ybS1mcmllbmRseQogICAgIHZv
aWQgdGV4dFF1YWRzKFZlY3RvcjxGbG9hdFF1YWQ+JiwgYm9vbCB1c2VTZWxlY3Rpb25IZWlnaHQg
PSBmYWxzZSwgUmFuZ2VJbkZpeGVkUG9zaXRpb24qID0gMCkgY29uc3Q7CiAgICAgdm9pZCBnZXRC
b3JkZXJBbmRUZXh0UXVhZHMoVmVjdG9yPEZsb2F0UXVhZD4mKSBjb25zdDsKICAgICBGbG9hdFJl
Y3QgYm91bmRpbmdSZWN0KCkgY29uc3Q7CisgICAgRmxvYXRSZWN0IHRyYW5zZm9ybUZyaWVuZGx5
Qm91bmRpbmdCb3goKSBjb25zdDsKIAogICAgIHZvaWQgbm9kZUNoaWxkcmVuQ2hhbmdlZChDb250
YWluZXJOb2RlKik7CiAgICAgdm9pZCBub2RlQ2hpbGRyZW5XaWxsQmVSZW1vdmVkKENvbnRhaW5l
ck5vZGUqKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cCBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cAppbmRleCA5MWY4NTIxYjM1ZDlhMzNi
ZGE0MGVkMTI2OThlZmEyNDg2MzBiZGQwLi45MjU1OWYxMTRiOGJhOGQyMjRhMTAyMzliY2FkZjll
MjEyOTA2YTY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwCkBAIC0zOTQsNiArMzk0LDgg
QEAKICAgICAgICAgICAgICAgICAnc3JjL0V2ZW50TGlzdGVuZXJXcmFwcGVyLmgnLAogICAgICAg
ICAgICAgICAgICdzcmMvRXh0ZXJuYWxQb3B1cE1lbnUuY3BwJywKICAgICAgICAgICAgICAgICAn
c3JjL0V4dGVybmFsUG9wdXBNZW51LmgnLAorICAgICAgICAgICAgICAgICdzcmMvRmluZEluUGFn
ZUNvb3JkaW5hdGVzLmNwcCcsCisgICAgICAgICAgICAgICAgJ3NyYy9GaW5kSW5QYWdlQ29vcmRp
bmF0ZXMuaCcsCiAgICAgICAgICAgICAgICAgJ3NyYy9GcmFtZUxvYWRlckNsaWVudEltcGwuY3Bw
JywKICAgICAgICAgICAgICAgICAnc3JjL0ZyYW1lTG9hZGVyQ2xpZW50SW1wbC5oJywKICAgICAg
ICAgICAgICAgICAnc3JjL0ZyYW1lTmV0d29ya2luZ0NvbnRleHRJbXBsLmgnLApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcAppbmRleCBhZDEwMDBl
NjNhMWZkNzVhOGE3OGM2MzJmNDIwYzk4M2Q3MzNmMjYxLi4zMjlhOTlmMTljZTg2NzgwYjAzMjlj
YTE0MTZkNzdlZTE2OTgzMzRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9DaHJvbWVDbGllbnRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9D
aHJvbWVDbGllbnRJbXBsLmNwcApAQCAtNTc1LDYgKzU3NSw3IEBAIHZvaWQgQ2hyb21lQ2xpZW50
SW1wbDo6Y29udGVudHNTaXplQ2hhbmdlZChGcmFtZSogZnJhbWUsIGNvbnN0IEludFNpemUmIHNp
emUpIGNvCiAgICAgbV93ZWJWaWV3LT5kaWRDaGFuZ2VDb250ZW50c1NpemUoKTsKIAogICAgIFdl
YkZyYW1lSW1wbCogd2ViZnJhbWUgPSBXZWJGcmFtZUltcGw6OmZyb21GcmFtZShmcmFtZSk7Cisg
ICAgd2ViZnJhbWUtPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShzaXplKTsKICAgICBpZiAod2ViZnJh
bWUtPmNsaWVudCgpKQogICAgICAgICB3ZWJmcmFtZS0+Y2xpZW50KCktPmRpZENoYW5nZUNvbnRl
bnRzU2l6ZSh3ZWJmcmFtZSwgc2l6ZSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9GaW5kSW5QYWdlQ29vcmRpbmF0ZXMuY3BwIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvRmluZEluUGFnZUNvb3JkaW5hdGVzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MmRhN2FmNTk0
YTEzODc3ZmJiM2EzODJhNDc4YmQxMjMyNGFhOWQxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvRmluZEluUGFnZUNvb3JkaW5hdGVzLmNwcApAQCAtMCwwICsx
LDE0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0Ogor
ICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisg
KiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdv
b2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdI
VAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJGaW5kSW5QYWdlQ29vcmRpbmF0
ZXMuaCIKKworI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJGbG9hdFF1YWQuaCIK
KyNpbmNsdWRlICJGbG9hdFJlY3QuaCIKKyNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIklu
dFBvaW50LmgiCisjaW5jbHVkZSAiTm9kZS5oIgorI2luY2x1ZGUgIlJhbmdlLmgiCisjaW5jbHVk
ZSAiUmVuZGVyQm94LmgiCisjaW5jbHVkZSAiUmVuZGVyT2JqZWN0LmgiCisjaW5jbHVkZSAiUmVu
ZGVyUGFydC5oIgorI2luY2x1ZGUgIlJlbmRlclN0eWxlLmgiCisjaW5jbHVkZSAiUmVuZGVyVmll
dy5oIgorCit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKKworbmFtZXNwYWNlIFdlYktpdCB7CisK
K3N0YXRpYyBGbG9hdFJlY3QgdG9Ob3JtYWxpemVkUmVjdChjb25zdCBGbG9hdFJlY3QmIGFic29s
dXRlUmVjdCwgY29uc3QgUmVuZGVyT2JqZWN0KiByZW5kZXJlciwgRmxvYXRSZWN0KiBjb250YWlu
ZXJCb3VuZGluZ0JveCA9IDApCit7CisgICAgQVNTRVJUKHJlbmRlcmVyKTsKKworICAgIGNvbnN0
IFJlbmRlck9iamVjdCogY29udGFpbmVyID0gcmVuZGVyZXItPmNvbnRhaW5lcigpOworICAgIGlm
ICghY29udGFpbmVyKSB7CisgICAgICAgIGlmIChjb250YWluZXJCb3VuZGluZ0JveCkKKyAgICAg
ICAgICAgICpjb250YWluZXJCb3VuZGluZ0JveCA9IEZsb2F0UmVjdCgpOworICAgICAgICByZXR1
cm4gRmxvYXRSZWN0KCk7CisgICAgfQorCisgICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRSZWN0ID0g
YWJzb2x1dGVSZWN0OworICAgIEZsb2F0UmVjdCBjb250YWluZXJSZWN0ID0gY29udGFpbmVyLT5h
YnNvbHV0ZUJvdW5kaW5nQm94UmVjdCgpOworICAgIGlmIChjb250YWluZXJCb3VuZGluZ0JveCkK
KyAgICAgICAgKmNvbnRhaW5lckJvdW5kaW5nQm94ID0gY29udGFpbmVyUmVjdDsKKworICAgIC8v
IEZvciBSZW5kZXJCb3hlcyB3ZSB3YW50IHRvIG5vcm1hbGl6ZSBieSB0aGUgbWF4IGxheW91dCBv
dmVyZmxvdyBzaXplIGluc3RlYWQgb2Ygb25seSB0aGUgdmlzaWJsZSBib3VuZGluZyBib3guCisg
ICAgLy8gUXVhZHMgYW5kIHRoZWlyIGVuY2xvc2luZyBib3VuZGluZyBib3hlcyBuZWVkIHRvIGJl
IHVzZWQgaW4gb3JkZXIgdG8ga2VlcCByZXN1bHRzIHRyYW5zZm9ybS1mcmllbmRseS4KKyAgICBp
ZiAoY29udGFpbmVyLT5pc0JveCgpKSB7CisgICAgICAgIGNvbnN0IFJlbmRlckJveCogY29udGFp
bmVyQm94ID0gdG9SZW5kZXJCb3goY29udGFpbmVyKTsKKyAgICAgICAgRmxvYXRQb2ludCBzY3Jv
bGxlZE9yaWdpbjsKKworICAgICAgICAvLyBGb3Igb3ZlcmZsb3c6c2Nyb2xsIHdlIG5lZWQgdG8g
Z2V0IHdoZXJlIHRoZSBhY3R1YWwgb3JpZ2luIGlzIGluZGVwZW5kZW50bHkgb2YgdGhlIHNjcm9s
bC4KKyAgICAgICAgaWYgKGNvbnRhaW5lci0+aGFzT3ZlcmZsb3dDbGlwKCkpCisgICAgICAgICAg
ICBzY3JvbGxlZE9yaWdpbiA9IC1JbnRQb2ludChjb250YWluZXJCb3gtPnNjcm9sbGVkQ29udGVu
dE9mZnNldCgpKTsKKworICAgICAgICBGbG9hdFJlY3Qgb3ZlcmZsb3dSZWN0KHNjcm9sbGVkT3Jp
Z2luLCBjb250YWluZXJCb3gtPm1heExheW91dE92ZXJmbG93KCkpOworICAgICAgICBjb250YWlu
ZXJSZWN0ID0gY29udGFpbmVyQm94LT5sb2NhbFRvQWJzb2x1dGVRdWFkKEZsb2F0UXVhZChvdmVy
Zmxvd1JlY3QpLCBmYWxzZSkuZW5jbG9zaW5nQm91bmRpbmdCb3goKTsKKyAgICB9CisKKyAgICBp
ZiAoY29udGFpbmVyUmVjdC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsK
KworICAgIC8vIE1ha2UgdGhlIGNvb3JkaW5hdGVzIHJlbGF0aXZlIHRvIHRoZSBjb250YWluZXIg
ZW5jbG9zaW5nIGJvdW5kaW5nIGJveC4KKyAgICAvLyBTaW5jZSB3ZSB3b3JrIHdpdGggcmVjdHMg
ZW5jbG9zaW5nIHF1YWQgdW5pb25zIHRoaXMgaXMgc3RpbGwgdHJhbnNmb3JtLWZyaWVuZGx5Lgor
ICAgIG5vcm1hbGl6ZWRSZWN0Lm1vdmVCeSgtY29udGFpbmVyUmVjdC5sb2NhdGlvbigpKTsKKwor
ICAgIC8vIEZpeGVkIHBvc2l0aW9ucyBkbyBub3QgbWFrZSBzZW5zZSBpbiB0aGlzIGNvb3JkaW5h
dGUgc3lzdGVtLCBidXQgbmVlZCB0byBsZWF2ZSBjb25zaXN0ZW50IHRpY2ttYXJrcy4KKyAgICAv
LyBTbywgdXNlIHRoZWlyIHBvc2l0aW9uIHdoZW4gdGhlIHZpZXcgaXMgbm90IHNjcm9sbGVkLCBs
aWtlIGFuIGFic29sdXRlIHBvc2l0aW9uLgorICAgIGlmIChyZW5kZXJlci0+c3R5bGUoKS0+cG9z
aXRpb24oKSA9PSBGaXhlZFBvc2l0aW9uICYmIGNvbnRhaW5lci0+aXNSZW5kZXJWaWV3KCkpCisg
ICAgICAgIG5vcm1hbGl6ZWRSZWN0Lm1vdmUoLXRvUmVuZGVyVmlldyhjb250YWluZXIpLT5mcmFt
ZVZpZXcoKS0+c2Nyb2xsT2Zmc2V0Rm9yRml4ZWRQb3NpdGlvbigpKTsKKworICAgIG5vcm1hbGl6
ZWRSZWN0LnNjYWxlKDEgLyBjb250YWluZXJSZWN0LndpZHRoKCksIDEgLyBjb250YWluZXJSZWN0
LmhlaWdodCgpKTsKKworICAgIHJldHVybiBub3JtYWxpemVkUmVjdDsKK30KKworRmxvYXRSZWN0
IGZpbmRJblBhZ2VSZWN0RnJvbUFic29sdXRlUmVjdChjb25zdCBGbG9hdFJlY3QmIGlucHV0UmVj
dCwgY29uc3QgUmVuZGVyT2JqZWN0KiByZW5kZXJlcikKK3sKKyAgICBpZiAoIXJlbmRlcmVyIHx8
IGlucHV0UmVjdC5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBGbG9hdFJlY3QoKTsKKworICAg
IC8vIE5vcm1hbGl6ZSB0aGUgaW5wdXQgcmVjdCB0byBpdHMgY29udGFpbmVyLCBzYXZpbmcgdGhl
IGNvbnRhaW5lciBib3VuZGluZyBib3ggZm9yIHRoZSBpbmNvbWluZyBsb29wLgorICAgIEZsb2F0
UmVjdCByZW5kZXJlckJvdW5kaW5nQm94OworICAgIEZsb2F0UmVjdCBub3JtYWxpemVkUmVjdCA9
IHRvTm9ybWFsaXplZFJlY3QoaW5wdXRSZWN0LCByZW5kZXJlciwgJnJlbmRlcmVyQm91bmRpbmdC
b3gpOworICAgIHJlbmRlcmVyID0gcmVuZGVyZXItPmNvbnRhaW5lcigpOworCisgICAgLy8gR28g
dXAgYWNyb3NzIGZyYW1lcy4KKyAgICB3aGlsZSAocmVuZGVyZXIpIHsKKworICAgICAgICAvLyBH
byB1cCB0aGUgcmVuZGVyIHRyZWUgdW50aWwgd2UgcmVhY2ggdGhlIHJvb3Qgb2YgdGhlIGN1cnJl
bnQgZnJhbWUgKHRoZSBSZW5kZXJWaWV3KS4KKyAgICAgICAgZm9yIChjb25zdCBSZW5kZXJPYmpl
Y3QqIGNvbnRhaW5lciA9IHJlbmRlcmVyLT5jb250YWluZXIoKTsgY29udGFpbmVyOyByZW5kZXJl
ciA9IGNvbnRhaW5lciwgY29udGFpbmVyID0gY29udGFpbmVyLT5jb250YWluZXIoKSkgeworCisg
ICAgICAgICAgICAvLyBDb21wb3NlIHRoZSBub3JtYWxpemVkIHJlY3RzLiBUaGUgYWJzb2x1dGUg
Ym91bmRpbmcgYm94IG9mIHRoZSBjb250YWluZXIgaXMgY2FsY3VsYXRlZCBpbiB0b05vcm1hbGl6
ZWRSZWN0CisgICAgICAgICAgICAvLyBhbmQgY2FuIGJlIHJldXNlZCBmb3IgdGhlIG5leHQgaXRl
cmF0aW9uIG9mIHRoZSBsb29wLgorICAgICAgICAgICAgRmxvYXRSZWN0IG5vcm1hbGl6ZWRCb3hS
ZWN0ID0gdG9Ob3JtYWxpemVkUmVjdChyZW5kZXJlckJvdW5kaW5nQm94LCByZW5kZXJlciwgJnJl
bmRlcmVyQm91bmRpbmdCb3gpOworICAgICAgICAgICAgbm9ybWFsaXplZFJlY3Quc2NhbGUobm9y
bWFsaXplZEJveFJlY3Qud2lkdGgoKSwgbm9ybWFsaXplZEJveFJlY3QuaGVpZ2h0KCkpOworICAg
ICAgICAgICAgbm9ybWFsaXplZFJlY3QubW92ZUJ5KG5vcm1hbGl6ZWRCb3hSZWN0LmxvY2F0aW9u
KCkpOworCisgICAgICAgICAgICBpZiAobm9ybWFsaXplZFJlY3QuaXNFbXB0eSgpKQorICAgICAg
ICAgICAgICAgIHJldHVybiBub3JtYWxpemVkUmVjdDsKKyAgICAgICAgfQorCisgICAgICAgIC8v
IEp1bXAgdG8gdGhlIHJlbmRlcmVyIG93bmluZyB0aGUgZnJhbWUsIGlmIGFueS4KKyAgICAgICAg
QVNTRVJUKHJlbmRlcmVyLT5pc1JlbmRlclZpZXcoKSk7CisgICAgICAgIHJlbmRlcmVyID0gcmVu
ZGVyZXItPmZyYW1lKCkgPyByZW5kZXJlci0+ZnJhbWUoKS0+b3duZXJSZW5kZXJlcigpIDogMDsK
KworICAgICAgICAvLyBVcGRhdGUgdGhlIGFic29sdXRlIGNvb3JkaW5hdGVzIHRvIHRoZSBuZXcg
ZnJhbWUuCisgICAgICAgIGlmIChyZW5kZXJlcikKKyAgICAgICAgICAgIHJlbmRlcmVyQm91bmRp
bmdCb3ggPSByZW5kZXJlci0+YWJzb2x1dGVCb3VuZGluZ0JveFJlY3QoKTsKKyAgICB9CisKKyAg
ICByZXR1cm4gbm9ybWFsaXplZFJlY3Q7Cit9CisKK0Zsb2F0UmVjdCBmaW5kSW5QYWdlUmVjdEZy
b21SYW5nZShSYW5nZSogcmFuZ2UpCit7CisgICAgaWYgKCFyYW5nZSB8fCAhcmFuZ2UtPmZpcnN0
Tm9kZSgpKQorICAgICAgICByZXR1cm4gRmxvYXRSZWN0KCk7CisKKyAgICByZXR1cm4gZmluZElu
UGFnZVJlY3RGcm9tQWJzb2x1dGVSZWN0KHJhbmdlLT50cmFuc2Zvcm1GcmllbmRseUJvdW5kaW5n
Qm94KCksIHJhbmdlLT5maXJzdE5vZGUoKS0+cmVuZGVyZXIoKSk7Cit9CisKK30gLy8gbmFtZXNw
YWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvRmluZElu
UGFnZUNvb3JkaW5hdGVzLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9GaW5kSW5QYWdl
Q29vcmRpbmF0ZXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNTQ2NWViMDJmZDg2OTI2NWIzMjNlYzlmM2I0ZjA0
Y2NhYmUxYWE1Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
RmluZEluUGFnZUNvb3JkaW5hdGVzLmgKQEAgLTAsMCArMSw2MSBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxMiBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24u
CisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMg
b2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmlj
IHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMi
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAor
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgRmluZEluUGFn
ZUNvb3JkaW5hdGVzX2gKKyNkZWZpbmUgRmluZEluUGFnZUNvb3JkaW5hdGVzX2gKKworI2luY2x1
ZGUgIkZsb2F0UmVjdC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CitjbGFzcyBSYW5nZTsKK2Ns
YXNzIFJlbmRlck9iamVjdDsKK30KKworbmFtZXNwYWNlIFdlYktpdCB7CisKKy8vIEZpbmQtaW4t
cGFnZSBjb29yZGluYXRlIGNvbnZlcnNpb24gbWV0aG9kcy4KKy8vCisvLyBUaGlzIGNvb3JkaW5h
dGUgc3lzdGVtIGlzIGRlc2lnbmVkIHRvIGdpdmUgY29uc2lzdGVudCB0aWNrbWFya3MgaW4gY2Fz
ZXMgd2hlcmUgZmluZCBtYXRjaGVzCisvLyBhcmUgaW4gc2Nyb2xsYWJsZSBhcmVhcyBidXQgbWln
aHQgbm90IGJlIHZpc2libGUgKGUuZy4gY2hpbGQgZnJhbWVzLCBzY3JvbGw6b3ZlcmZsb3cpLgor
Ly8gSW4gdGhlc2UgY2FzZXMsIHVzaW5nIGFic29sdXRlIHBvc2l0aW9ucyBtaWdodCBsZWFkIHRv
IHRpY2ttYXJrcyBwb2ludGluZyBvdXRzaWRlIHRoZSB2aXNpYmxlCisvLyBhcmVhIG9mIGl0cyBj
b250YWluZXIsIHdoaWNoIGlzIGNvdW50ZXItaW50dWl0aXZlIGZvciB1c2Vycy4KKy8vCisvLyBG
aW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMgYXJlIHJlcHJlc2VudGVkIGFzIG5vcm1hbGl6ZWQgZnJh
Y3Rpb25zIG9mIHRoZSBtYWluIGZyYW1lIGRvY3VtZW50IHdpdGgKKy8vIHRoZSBwcm9wZXJ0eSB0
aGF0IHRoZXkgYXJlIGJ1aWx0IGJ5IGNvbXBvc2luZyB0aGUgcmVsYXRpdmUgcG9zaXRpb24gb2Yg
ZWFjaCByZW5kZXJlciB0byB0aGUgbWF4aW11bQorLy8gZWZmZWN0aXZlIGxheW91dCBzaXplIG9m
IGl0cyBjb250YWluZXIgYWxsIHRoZSB3YXkgdXAgdGhlIHJlbmRlciB0cmVlLiBUaGUgcmVzdWx0
aW5nIGNvb3JkaW5hdGVzCisvLyBhcmUgc2Nyb2xsLWluZGVwZW5kZW50LCByZXByZXNlbnRpbmcg
YW55IGNvbnRlbnRzIHNjYWxlZCB0byB0aGUgdmlzaWJsZSBhcmVhIG9mIHRoZWlyIGNvbnRhaW5l
ci4KKy8vIFRoZSBwcm92aWRlZCBtZXRob2RzIHN1cHBvcnQgc2Nyb2xsOm92ZXJmbG93IGFuZCBh
cmUgQ1NTIHBvc2l0aW9uIGFuZCB0cmFuc2Zvcm0tZnJpZW5kbHkuCisKK1dlYkNvcmU6OkZsb2F0
UmVjdCBmaW5kSW5QYWdlUmVjdEZyb21BYnNvbHV0ZVJlY3QoY29uc3QgV2ViQ29yZTo6RmxvYXRS
ZWN0JiwgY29uc3QgV2ViQ29yZTo6UmVuZGVyT2JqZWN0Kik7CitXZWJDb3JlOjpGbG9hdFJlY3Qg
ZmluZEluUGFnZVJlY3RGcm9tUmFuZ2UoV2ViQ29yZTo6UmFuZ2UqKTsKKworfSAvLyBuYW1lc3Bh
Y2UgV2ViS2l0CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViRnJhbWVJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZyYW1l
SW1wbC5jcHAKaW5kZXggZmIyYTI5NTQwYzBiOWNiMGExNGU0MmUzZDdjNjlkOGZhYjFhNjE4ZS4u
MGM1ZDM0MTBiOWY2NTY1NjlkYzE1MTNkN2UzOGQyZWFiNWEyY2U0ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRnJhbWVJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuY3BwCkBAIC04OSw2ICs4OSw3IEBACiAjaW5j
bHVkZSAiRXZlbnRIYW5kbGVyLmgiCiAjaW5jbHVkZSAiRXZlbnRMaXN0ZW5lcldyYXBwZXIuaCIK
ICNpbmNsdWRlICJGaWxlU3lzdGVtVHlwZS5oIgorI2luY2x1ZGUgIkZpbmRJblBhZ2VDb29yZGlu
YXRlcy5oIgogI2luY2x1ZGUgIkZvY3VzQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkZvbnRDYWNo
ZS5oIgogI2luY2x1ZGUgIkZvcm1TdGF0ZS5oIgpAQCAtMTE4LDYgKzExOSw3IEBACiAjaW5jbHVk
ZSAiUGxhdGZvcm1TdXBwb3J0LmgiCiAjaW5jbHVkZSAiUGx1Z2luRG9jdW1lbnQuaCIKICNpbmNs
dWRlICJQcmludENvbnRleHQuaCIKKyNpbmNsdWRlICJSZW5kZXJCb3guaCIKICNpbmNsdWRlICJS
ZW5kZXJGcmFtZS5oIgogI2luY2x1ZGUgIlJlbmRlckxheWVyLmgiCiAjaW5jbHVkZSAiUmVuZGVy
T2JqZWN0LmgiCkBAIC01MTYsNiArNTE4LDEyIEBAIHN0YXRpYyBXZWJEYXRhU291cmNlKiBEYXRh
U291cmNlRm9yRG9jTG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgcmV0dXJuIGxv
YWRlciA/IFdlYkRhdGFTb3VyY2VJbXBsOjpmcm9tRG9jdW1lbnRMb2FkZXIobG9hZGVyKSA6IDA7
CiB9CiAKK1dlYkZyYW1lSW1wbDo6RmluZE1hdGNoOjpGaW5kTWF0Y2goUGFzc1JlZlB0cjxSYW5n
ZT4gcmFuZ2UsIGludCBvcmRpbmFsKQorICAgIDogbV9yYW5nZShyYW5nZSkKKyAgICAsIG1fb3Jk
aW5hbChvcmRpbmFsKQoreworfQorCiAvLyBXZWJGcmFtZSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIGNsYXNzIFdl
YkZyYW1lSW1wbDo6RGVmZXJyZWRTY29wZVN0cmluZ01hdGNoZXMgewpAQCAtMTY1NCwxMCArMTY2
MiwxOCBAQCBib29sIFdlYkZyYW1lSW1wbDo6ZmluZChpbnQgaWRlbnRpZmllciwKICAgICBtX2Fj
dGl2ZU1hdGNoID0gZnJhbWUoKS0+ZWRpdG9yKCktPmZpbmRTdHJpbmdBbmRTY3JvbGxUb1Zpc2li
bGUoc2VhcmNoVGV4dCwgbV9hY3RpdmVNYXRjaC5nZXQoKSwgZmluZE9wdGlvbnMpOwogCiAgICAg
aWYgKCFtX2FjdGl2ZU1hdGNoKSB7CisgICAgICAgIC8vIElmIHdlJ3JlIGZpbmRpbmcgbmV4dCB0
aGUgbmV4dCBhY3RpdmUgbWF0Y2ggbWlnaHQgbm90IGJlIGluIHRoZSBjdXJyZW50IGZyYW1lLgor
ICAgICAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZG9uJ3Qgd2FudCB0byBjbGVhciB0aGUgbWF0Y2hl
cyBjYWNoZS4KKyAgICAgICAgaWYgKCFvcHRpb25zLmZpbmROZXh0KQorICAgICAgICAgICAgY2xl
YXJGaW5kTWF0Y2hlc0NhY2hlKCk7CiAgICAgICAgIGludmFsaWRhdGVBcmVhKEludmFsaWRhdGVB
bGwpOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCisjaWYgT1MoQU5EUk9JRCkKKyAg
ICB2aWV3SW1wbCgpLT56b29tVG9GaW5kSW5QYWdlUmVjdChmcmFtZVZpZXcoKS0+Y29udGVudHNU
b1dpbmRvdyhlbmNsb3NpbmdJbnRSZWN0KG1fYWN0aXZlTWF0Y2gtPnRyYW5zZm9ybUZyaWVuZGx5
Qm91bmRpbmdCb3gpKSk7CisjZW5kaWYKKwogICAgIHNldE1hcmtlckFjdGl2ZShtX2FjdGl2ZU1h
dGNoLmdldCgpLCB0cnVlKTsKICAgICBXZWJGcmFtZUltcGwqIG9sZEFjdGl2ZUZyYW1lID0gbWFp
bkZyYW1lSW1wbC0+bV9jdXJyZW50QWN0aXZlTWF0Y2hGcmFtZTsKICAgICBtYWluRnJhbWVJbXBs
LT5tX2N1cnJlbnRBY3RpdmVNYXRjaEZyYW1lID0gdGhpczsKQEAgLTE3MDUsNiArMTcyMSw3IEBA
IHZvaWQgV2ViRnJhbWVJbXBsOjpzdG9wRmluZGluZyhib29sIGNsZWFyU2VsZWN0aW9uKQogICAg
IC8vIFJlbW92ZSBhbGwgbWFya2VycyBmb3IgbWF0Y2hlcyBmb3VuZCBhbmQgdHVybiBvZmYgdGhl
IGhpZ2hsaWdodGluZy4KICAgICBmcmFtZSgpLT5kb2N1bWVudCgpLT5tYXJrZXJzKCktPnJlbW92
ZU1hcmtlcnMoRG9jdW1lbnRNYXJrZXI6OlRleHRNYXRjaCk7CiAgICAgZnJhbWUoKS0+ZWRpdG9y
KCktPnNldE1hcmtlZFRleHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoZmFsc2UpOworICAgIGNsZWFy
RmluZE1hdGNoZXNDYWNoZSgpOwogCiAgICAgLy8gTGV0IHRoZSBmcmFtZSBrbm93IHRoYXQgd2Ug
ZG9uJ3Qgd2FudCB0aWNrbWFya3Mgb3IgaGlnaGxpZ2h0aW5nIGFueW1vcmUuCiAgICAgaW52YWxp
ZGF0ZUFyZWEoSW52YWxpZGF0ZUFsbCk7CkBAIC0xNzI3LDYgKzE3NDQsMTAgQEAgdm9pZCBXZWJG
cmFtZUltcGw6OnNjb3BlU3RyaW5nTWF0Y2hlcyhpbnQgaWRlbnRpZmllciwKICAgICAgICAgLy8g
Q2xlYXIgaGlnaGxpZ2h0aW5nIGZvciB0aGlzIGZyYW1lLgogICAgICAgICBpZiAoZnJhbWUoKS0+
ZWRpdG9yKCktPm1hcmtlZFRleHRNYXRjaGVzQXJlSGlnaGxpZ2h0ZWQoKSkKICAgICAgICAgICAg
IGZyYW1lKCktPnBhZ2UoKS0+dW5tYXJrQWxsVGV4dE1hdGNoZXMoKTsKKworICAgICAgICAvLyBD
bGVhciB0aGUgdGlja21hcmtzIGFuZCByZXN1bHRzIGNhY2hlLgorICAgICAgICBjbGVhckZpbmRN
YXRjaGVzQ2FjaGUoKTsKKwogICAgICAgICAvLyBDbGVhciB0aGUgY291bnRlcnMgZnJvbSBsYXN0
IG9wZXJhdGlvbi4KICAgICAgICAgbV9sYXN0TWF0Y2hDb3VudCA9IDA7CiAgICAgICAgIG1fbmV4
dEludmFsaWRhdGVBZnRlciA9IDA7CkBAIC0xODI1LDYgKzE4NDYsOCBAQCB2b2lkIFdlYkZyYW1l
SW1wbDo6c2NvcGVTdHJpbmdNYXRjaGVzKGludCBpZGVudGlmaWVyLAogCiAgICAgICAgIGFkZE1h
cmtlcihyZXN1bHRSYW5nZS5nZXQoKSwgZm91bmRBY3RpdmVNYXRjaCk7CiAKKyAgICAgICAgbV9m
aW5kTWF0Y2hlc0NhY2hlLmFwcGVuZChGaW5kTWF0Y2gocmVzdWx0UmFuZ2UuZ2V0KCksIG1fbGFz
dE1hdGNoQ291bnQgKyBtYXRjaENvdW50KSk7CisKICAgICAgICAgLy8gU2V0IHRoZSBuZXcgc3Rh
cnQgZm9yIHRoZSBzZWFyY2ggcmFuZ2UgdG8gYmUgdGhlIGVuZCBvZiB0aGUgcHJldmlvdXMKICAg
ICAgICAgLy8gcmVzdWx0IHJhbmdlLiBUaGVyZSBpcyBubyBuZWVkIHRvIHVzZSBhIFZpc2libGVQ
b3NpdGlvbiBoZXJlLAogICAgICAgICAvLyBzaW5jZSBmaW5kUGxhaW5UZXh0IHdpbGwgdXNlIGEg
VGV4dEl0ZXJhdG9yIHRvIGdvIG92ZXIgdGhlIHZpc2libGUKQEAgLTE4OTUsNiArMTkxOCw5IEBA
IHZvaWQgV2ViRnJhbWVJbXBsOjppbmNyZWFzZU1hdGNoQ291bnQoaW50IGNvdW50LCBpbnQgaWRl
bnRpZmllcikKICAgICAvLyBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBvbiB0
aGUgbWFpbmZyYW1lLgogICAgIEFTU0VSVCghcGFyZW50KCkpOwogCisgICAgaWYgKGNvdW50KQor
ICAgICAgICArK21fZmluZE1hdGNoTWFya2Vyc1ZlcnNpb247CisKICAgICBtX3RvdGFsTWF0Y2hD
b3VudCArPSBjb3VudDsKIAogICAgIC8vIFVwZGF0ZSB0aGUgVUkgd2l0aCB0aGUgbGF0ZXN0IGZp
bmRpbmdzLgpAQCAtMTkxMyw2ICsxOTM5LDkgQEAgdm9pZCBXZWJGcmFtZUltcGw6OnJlcG9ydEZp
bmRJblBhZ2VTZWxlY3Rpb24oY29uc3QgV2ViUmVjdCYgc2VsZWN0aW9uUmVjdCwKIAogdm9pZCBX
ZWJGcmFtZUltcGw6OnJlc2V0TWF0Y2hDb3VudCgpCiB7CisgICAgaWYgKG1fdG90YWxNYXRjaENv
dW50ID4gMCkKKyAgICAgICAgKyttX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOworCiAgICAgbV90
b3RhbE1hdGNoQ291bnQgPSAwOwogICAgIG1fZnJhbWVzU2NvcGluZ0NvdW50ID0gMDsKIH0KQEAg
LTE5NTksMjUgKzE5ODgsMTg4IEBAIHZvaWQgV2ViRnJhbWVJbXBsOjpkaXNwYXRjaE1lc3NhZ2VF
dmVudFdpdGhPcmlnaW5DaGVjayhjb25zdCBXZWJTZWN1cml0eU9yaWdpbiYKIAogaW50IFdlYkZy
YW1lSW1wbDo6ZmluZE1hdGNoTWFya2Vyc1ZlcnNpb24oKSBjb25zdAogewotICAgIC8vIEZJWE1F
OiBJbXBsZW1lbnQgdGhpcyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD05MzExMS4KLSAgICByZXR1cm4gMDsKKyAgICBBU1NFUlQoIXBhcmVudCgpKTsK
KyAgICByZXR1cm4gbV9maW5kTWF0Y2hNYXJrZXJzVmVyc2lvbjsKK30KKwordm9pZCBXZWJGcmFt
ZUltcGw6OmNsZWFyRmluZE1hdGNoZXNDYWNoZSgpCit7CisgICAgaWYgKCFtX2ZpbmRNYXRjaGVz
Q2FjaGUuaXNFbXB0eSgpKQorICAgICAgICB2aWV3SW1wbCgpLT5tYWluRnJhbWVJbXBsKCktPm1f
ZmluZE1hdGNoTWFya2Vyc1ZlcnNpb24rKzsKKworICAgIG1fZmluZE1hdGNoZXNDYWNoZS5jbGVh
cigpOworICAgIG1fZmluZE1hdGNoUmVjdHNBcmVWYWxpZCA9IGZhbHNlOworfQorCitib29sIFdl
YkZyYW1lSW1wbDo6aXNBY3RpdmVNYXRjaEZyYW1lVmFsaWQoKSBjb25zdAoreworICAgIFdlYkZy
YW1lSW1wbCogbWFpbkZyYW1lSW1wbCA9IHZpZXdJbXBsKCktPm1haW5GcmFtZUltcGwoKTsKKyAg
ICBXZWJGcmFtZUltcGwqIGFjdGl2ZU1hdGNoRnJhbWUgPSBtYWluRnJhbWVJbXBsLT5hY3RpdmVN
YXRjaEZyYW1lKCk7CisgICAgcmV0dXJuIGFjdGl2ZU1hdGNoRnJhbWUgJiYgYWN0aXZlTWF0Y2hG
cmFtZS0+bV9hY3RpdmVNYXRjaAorICAgICAgICAmJiBhY3RpdmVNYXRjaEZyYW1lLT5mcmFtZSgp
LT50cmVlKCktPmlzRGVzY2VuZGFudE9mKG1haW5GcmFtZUltcGwtPmZyYW1lKCkpOworfQorCit2
b2lkIFdlYkZyYW1lSW1wbDo6dXBkYXRlRmluZE1hdGNoUmVjdHMoKQoreworICAgIEludFNpemUg
Y3VycmVudENvbnRlbnRzU2l6ZSA9IGNvbnRlbnRzU2l6ZSgpOworICAgIGlmIChtX2NvbnRlbnRz
U2l6ZUZvckN1cnJlbnRGaW5kTWF0Y2hSZWN0cyAhPSBjdXJyZW50Q29udGVudHNTaXplKSB7Cisg
ICAgICAgIG1fY29udGVudHNTaXplRm9yQ3VycmVudEZpbmRNYXRjaFJlY3RzID0gY3VycmVudENv
bnRlbnRzU2l6ZTsKKyAgICAgICAgbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFsc2U7Cisg
ICAgfQorCisgICAgc2l6ZV90IGRlYWRNYXRjaGVzID0gMDsKKyAgICBmb3IgKFZlY3RvcjxGaW5k
TWF0Y2g+OjppdGVyYXRvciBpdCA9IG1fZmluZE1hdGNoZXNDYWNoZS5iZWdpbigpOyBpdCAhPSBt
X2ZpbmRNYXRjaGVzQ2FjaGUuZW5kKCk7ICsraXQpIHsKKyAgICAgICAgaWYgKCFpdC0+bV9yYW5n
ZS0+Ym91bmRhcnlQb2ludHNWYWxpZCgpIHx8ICFpdC0+bV9yYW5nZS0+c3RhcnRDb250YWluZXIo
KS0+aW5Eb2N1bWVudCgpKQorICAgICAgICAgICAgaXQtPm1fcmVjdCA9IEZsb2F0UmVjdCgpOwor
ICAgICAgICBlbHNlIGlmICghbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkKQorICAgICAgICAgICAg
aXQtPm1fcmVjdCA9IGZpbmRJblBhZ2VSZWN0RnJvbVJhbmdlKGl0LT5tX3JhbmdlLmdldCgpKTsK
KworICAgICAgICBpZiAoaXQtPm1fcmVjdC5pc0VtcHR5KCkpCisgICAgICAgICAgICArK2RlYWRN
YXRjaGVzOworICAgIH0KKworICAgIC8vIFJlbW92ZSBhbnkgaW52YWxpZCBtYXRjaGVzIGZyb20g
dGhlIGNhY2hlLgorICAgIGlmIChkZWFkTWF0Y2hlcykgeworICAgICAgICBWZWN0b3I8RmluZE1h
dGNoPiBmaWx0ZXJlZE1hdGNoZXM7CisgICAgICAgIGZpbHRlcmVkTWF0Y2hlcy5yZXNlcnZlQ2Fw
YWNpdHkobV9maW5kTWF0Y2hlc0NhY2hlLnNpemUoKSAtIGRlYWRNYXRjaGVzKTsKKworICAgICAg
ICBmb3IgKFZlY3RvcjxGaW5kTWF0Y2g+Ojpjb25zdF9pdGVyYXRvciBpdCA9IG1fZmluZE1hdGNo
ZXNDYWNoZS5iZWdpbigpOyBpdCAhPSBtX2ZpbmRNYXRjaGVzQ2FjaGUuZW5kKCk7ICsraXQpCisg
ICAgICAgICAgICBpZiAoIWl0LT5tX3JlY3QuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIGZp
bHRlcmVkTWF0Y2hlcy5hcHBlbmQoKml0KTsKKworICAgICAgICBtX2ZpbmRNYXRjaGVzQ2FjaGUu
c3dhcChmaWx0ZXJlZE1hdGNoZXMpOworICAgIH0KKworICAgIC8vIEludmFsaWRhdGUgdGhlIHJl
Y3RzIGluIGNoaWxkIGZyYW1lcy4gV2lsbCBiZSB1cGRhdGVkIGxhdGVyIGR1cmluZyB0cmF2ZXJz
YWwuCisgICAgaWYgKCFtX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQpCisgICAgICAgIGZvciAoV2Vi
RnJhbWUqIGNoaWxkID0gZmlyc3RDaGlsZCgpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+bmV4dFNp
YmxpbmcoKSkKKyAgICAgICAgICAgIHN0YXRpY19jYXN0PFdlYkZyYW1lSW1wbCo+KGNoaWxkKS0+
bV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkID0gZmFsc2U7CisKKyAgICBtX2ZpbmRNYXRjaFJlY3Rz
QXJlVmFsaWQgPSB0cnVlOwogfQogCiBXZWJGbG9hdFJlY3QgV2ViRnJhbWVJbXBsOjphY3RpdmVG
aW5kTWF0Y2hSZWN0KCkKIHsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMgYXMgcGFydCBv
ZiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEuCi0gICAgcmV0
dXJuIFdlYkZsb2F0UmVjdCgpOworICAgIEFTU0VSVCghcGFyZW50KCkpOworCisgICAgaWYgKCFp
c0FjdGl2ZU1hdGNoRnJhbWVWYWxpZCgpKQorICAgICAgICByZXR1cm4gV2ViRmxvYXRSZWN0KCk7
CisKKyAgICByZXR1cm4gV2ViRmxvYXRSZWN0KGZpbmRJblBhZ2VSZWN0RnJvbVJhbmdlKG1fY3Vy
cmVudEFjdGl2ZU1hdGNoRnJhbWUtPm1fYWN0aXZlTWF0Y2guZ2V0KCkpKTsKIH0KIAogdm9pZCBX
ZWJGcmFtZUltcGw6OmZpbmRNYXRjaFJlY3RzKFdlYlZlY3RvcjxXZWJGbG9hdFJlY3Q+JiBvdXRw
dXRSZWN0cykKIHsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMgYXMgcGFydCBvZiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMxMTEuCisgICAgQVNTRVJUKCFw
YXJlbnQoKSk7CisKKyAgICBWZWN0b3I8V2ViRmxvYXRSZWN0PiBtYXRjaFJlY3RzOworICAgIGZv
ciAoV2ViRnJhbWVJbXBsKiBmcmFtZSA9IHRoaXM7IGZyYW1lOyBmcmFtZSA9IHN0YXRpY19jYXN0
PFdlYkZyYW1lSW1wbCo+KGZyYW1lLT50cmF2ZXJzZU5leHQoZmFsc2UpKSkKKyAgICAgICAgZnJh
bWUtPmFwcGVuZEZpbmRNYXRjaFJlY3RzKG1hdGNoUmVjdHMpOworCisgICAgb3V0cHV0UmVjdHMg
PSBtYXRjaFJlY3RzOworfQorCit2b2lkIFdlYkZyYW1lSW1wbDo6YXBwZW5kRmluZE1hdGNoUmVj
dHMoVmVjdG9yPFdlYkZsb2F0UmVjdD4mIGZyYW1lUmVjdHMpCit7CisgICAgdXBkYXRlRmluZE1h
dGNoUmVjdHMoKTsKKyAgICBmcmFtZVJlY3RzLnJlc2VydmVDYXBhY2l0eShmcmFtZVJlY3RzLnNp
emUoKSArIG1fZmluZE1hdGNoZXNDYWNoZS5zaXplKCkpOworICAgIGZvciAoVmVjdG9yPEZpbmRN
YXRjaD46OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV9maW5kTWF0Y2hlc0NhY2hlLmJlZ2luKCk7IGl0
ICE9IG1fZmluZE1hdGNoZXNDYWNoZS5lbmQoKTsgKytpdCkgeworICAgICAgICBBU1NFUlQoIWl0
LT5tX3JlY3QuaXNFbXB0eSgpKTsKKyAgICAgICAgZnJhbWVSZWN0cy5hcHBlbmQoaXQtPm1fcmVj
dCk7CisgICAgfQogfQogCiBpbnQgV2ViRnJhbWVJbXBsOjpzZWxlY3ROZWFyZXN0RmluZE1hdGNo
KGNvbnN0IFdlYkZsb2F0UG9pbnQmIHBvaW50LCBXZWJSZWN0KiBzZWxlY3Rpb25SZWN0KQogewot
ICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcyBhcyBwYXJ0IG9mIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzExMS4KLSAgICByZXR1cm4gMDsKKyAgICBBU1NFUlQo
IXBhcmVudCgpKTsKKworICAgIFdlYkZyYW1lSW1wbCogYmVzdEZyYW1lID0gMDsKKyAgICBpbnQg
aW5kZXhJbkJlc3RGcmFtZSA9IC0xOworICAgIGZsb2F0IGRpc3RhbmNlSW5CZXN0RnJhbWUgPSBG
TFRfTUFYOworCisgICAgZm9yIChXZWJGcmFtZUltcGwqIGZyYW1lID0gdGhpczsgZnJhbWU7IGZy
YW1lID0gc3RhdGljX2Nhc3Q8V2ViRnJhbWVJbXBsKj4oZnJhbWUtPnRyYXZlcnNlTmV4dChmYWxz
ZSkpKSB7CisgICAgICAgIGZsb2F0IGRpc3RhbmNlSW5GcmFtZTsKKyAgICAgICAgaW50IGluZGV4
SW5GcmFtZSA9IGZyYW1lLT5uZWFyZXN0RmluZE1hdGNoKHBvaW50LCBkaXN0YW5jZUluRnJhbWUp
OworICAgICAgICBpZiAoZGlzdGFuY2VJbkZyYW1lIDwgZGlzdGFuY2VJbkJlc3RGcmFtZSkgewor
ICAgICAgICAgICAgYmVzdEZyYW1lID0gZnJhbWU7CisgICAgICAgICAgICBpbmRleEluQmVzdEZy
YW1lID0gaW5kZXhJbkZyYW1lOworICAgICAgICAgICAgZGlzdGFuY2VJbkJlc3RGcmFtZSA9IGRp
c3RhbmNlSW5GcmFtZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChpbmRleEluQmVzdEZy
YW1lICE9IC0xKQorICAgICAgICByZXR1cm4gYmVzdEZyYW1lLT5zZWxlY3RGaW5kTWF0Y2goc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KGluZGV4SW5CZXN0RnJhbWUpLCBzZWxlY3Rpb25SZWN0KTsKKwor
ICAgIHJldHVybiAtMTsKK30KKworaW50IFdlYkZyYW1lSW1wbDo6bmVhcmVzdEZpbmRNYXRjaChj
b25zdCBGbG9hdFBvaW50JiBwb2ludCwgZmxvYXQmIGRpc3RhbmNlU3F1YXJlZCkKK3sKKyAgICB1
cGRhdGVGaW5kTWF0Y2hSZWN0cygpOworCisgICAgaW50IG5lYXJlc3QgPSAtMTsKKyAgICBkaXN0
YW5jZVNxdWFyZWQgPSBGTFRfTUFYOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbV9maW5k
TWF0Y2hlc0NhY2hlLnNpemUoKTsgKytpKSB7CisgICAgICAgIEFTU0VSVCghbV9maW5kTWF0Y2hl
c0NhY2hlW2ldLm1fcmVjdC5pc0VtcHR5KCkpOworICAgICAgICBGbG9hdFNpemUgb2Zmc2V0ID0g
cG9pbnQgLSBtX2ZpbmRNYXRjaGVzQ2FjaGVbaV0ubV9yZWN0LmNlbnRlcigpOworICAgICAgICBm
bG9hdCB3aWR0aCA9IG9mZnNldC53aWR0aCgpOworICAgICAgICBmbG9hdCBoZWlnaHQgPSBvZmZz
ZXQuaGVpZ2h0KCk7CisgICAgICAgIGZsb2F0IGN1cnJlbnREaXN0YW5jZVNxdWFyZWQgPSB3aWR0
aCAqIHdpZHRoICsgaGVpZ2h0ICogaGVpZ2h0OworICAgICAgICBpZiAoY3VycmVudERpc3RhbmNl
U3F1YXJlZCA8IGRpc3RhbmNlU3F1YXJlZCkgeworICAgICAgICAgICAgbmVhcmVzdCA9IGk7Cisg
ICAgICAgICAgICBkaXN0YW5jZVNxdWFyZWQgPSBjdXJyZW50RGlzdGFuY2VTcXVhcmVkOworICAg
ICAgICB9CisgICAgfQorICAgIHJldHVybiBuZWFyZXN0OworfQorCitpbnQgV2ViRnJhbWVJbXBs
OjpzZWxlY3RGaW5kTWF0Y2godW5zaWduZWQgaW5kZXgsIFdlYlJlY3QqIHNlbGVjdGlvblJlY3Qp
Cit7CisgICAgQVNTRVJUKGluZGV4IDwgbV9maW5kTWF0Y2hlc0NhY2hlLnNpemUoKSk7CisKKyAg
ICBSZWZQdHI8UmFuZ2U+IHJhbmdlID0gbV9maW5kTWF0Y2hlc0NhY2hlW2luZGV4XS5tX3Jhbmdl
OworICAgIGlmICghcmFuZ2UtPmJvdW5kYXJ5UG9pbnRzVmFsaWQoKSB8fCAhcmFuZ2UtPnN0YXJ0
Q29udGFpbmVyKCktPmluRG9jdW1lbnQoKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgLy8g
Q2hlY2sgaWYgdGhlIG1hdGNoIGlzIGFscmVhZHkgc2VsZWN0ZWQuCisgICAgV2ViRnJhbWVJbXBs
KiBhY3RpdmVNYXRjaEZyYW1lID0gdmlld0ltcGwoKS0+bWFpbkZyYW1lSW1wbCgpLT5tX2N1cnJl
bnRBY3RpdmVNYXRjaEZyYW1lOworICAgIGlmICh0aGlzICE9IGFjdGl2ZU1hdGNoRnJhbWUgfHwg
IW1fYWN0aXZlTWF0Y2ggfHwgIWFyZVJhbmdlc0VxdWFsKG1fYWN0aXZlTWF0Y2guZ2V0KCksIHJh
bmdlLmdldCgpKSkgeworICAgICAgICBpZiAoaXNBY3RpdmVNYXRjaEZyYW1lVmFsaWQoKSkKKyAg
ICAgICAgICAgIGFjdGl2ZU1hdGNoRnJhbWUtPnNldE1hcmtlckFjdGl2ZShhY3RpdmVNYXRjaEZy
YW1lLT5tX2FjdGl2ZU1hdGNoLmdldCgpLCBmYWxzZSk7CisKKyAgICAgICAgbV9hY3RpdmVNYXRj
aEluZGV4SW5DdXJyZW50RnJhbWUgPSBtX2ZpbmRNYXRjaGVzQ2FjaGVbaW5kZXhdLm1fb3JkaW5h
bCAtIDE7CisKKyAgICAgICAgLy8gU2V0IHRoaXMgZnJhbWUgYXMgdGhlIGFjdGl2ZSBmcmFtZSAo
dGhlIG9uZSB3aXRoIHRoZSBhY3RpdmUgaGlnaGxpZ2h0KS4KKyAgICAgICAgdmlld0ltcGwoKS0+
bWFpbkZyYW1lSW1wbCgpLT5tX2N1cnJlbnRBY3RpdmVNYXRjaEZyYW1lID0gdGhpczsKKyAgICAg
ICAgdmlld0ltcGwoKS0+c2V0Rm9jdXNlZEZyYW1lKHRoaXMpOworCisgICAgICAgIG1fYWN0aXZl
TWF0Y2ggPSByYW5nZS5yZWxlYXNlKCk7CisgICAgICAgIHNldE1hcmtlckFjdGl2ZShtX2FjdGl2
ZU1hdGNoLmdldCgpLCB0cnVlKTsKKworICAgICAgICAvLyBDbGVhciBhbnkgdXNlciBzZWxlY3Rp
b24sIHRvIG1ha2Ugc3VyZSBGaW5kIE5leHQgY29udGludWVzIG9uIGZyb20gdGhlIG1hdGNoIHdl
IGp1c3QgYWN0aXZhdGVkLgorICAgICAgICBmcmFtZSgpLT5zZWxlY3Rpb24oKS0+Y2xlYXIoKTsK
KworICAgICAgICAvLyBNYWtlIHN1cmUgbm8gbm9kZSBpcyBmb2N1c2VkLiBTZWUgaHR0cDovL2Ny
YnVnLmNvbS8zODcwMC4KKyAgICAgICAgZnJhbWUoKS0+ZG9jdW1lbnQoKS0+c2V0Rm9jdXNlZE5v
ZGUoMCk7CisgICAgfQorCisgICAgSW50UmVjdCBhY3RpdmVNYXRjaFJlY3Q7CisgICAgSW50UmVj
dCBhY3RpdmVNYXRjaEJvdW5kaW5nQm94ID0gZW5jbG9zaW5nSW50UmVjdChtX2FjdGl2ZU1hdGNo
LT50cmFuc2Zvcm1GcmllbmRseUJvdW5kaW5nQm94KCkpOworCisgICAgaWYgKCFhY3RpdmVNYXRj
aEJvdW5kaW5nQm94LmlzRW1wdHkoKSkgeworICAgICAgICBpZiAobV9hY3RpdmVNYXRjaC0+Zmly
c3ROb2RlKCkgJiYgbV9hY3RpdmVNYXRjaC0+Zmlyc3ROb2RlKCktPnJlbmRlcmVyKCkpCisgICAg
ICAgICAgICBtX2FjdGl2ZU1hdGNoLT5maXJzdE5vZGUoKS0+cmVuZGVyZXIoKS0+c2Nyb2xsUmVj
dFRvVmlzaWJsZShhY3RpdmVNYXRjaEJvdW5kaW5nQm94LAorICAgICAgICAgICAgICAgICAgICBT
Y3JvbGxBbGlnbm1lbnQ6OmFsaWduQ2VudGVySWZOZWVkZWQsIFNjcm9sbEFsaWdubWVudDo6YWxp
Z25DZW50ZXJJZk5lZWRlZCk7CisKKyAgICAgICAgLy8gWm9vbSB0byB0aGUgYWN0aXZlIG1hdGNo
LgorICAgICAgICBhY3RpdmVNYXRjaFJlY3QgPSBmcmFtZVZpZXcoKS0+Y29udGVudHNUb1dpbmRv
dyhhY3RpdmVNYXRjaEJvdW5kaW5nQm94KTsKKyAgICAgICAgdmlld0ltcGwoKS0+em9vbVRvRmlu
ZEluUGFnZVJlY3QoYWN0aXZlTWF0Y2hSZWN0KTsKKyAgICB9CisKKyAgICBpZiAoc2VsZWN0aW9u
UmVjdCkKKyAgICAgICAgKnNlbGVjdGlvblJlY3QgPSBhY3RpdmVNYXRjaFJlY3Q7CisKKyAgICBy
ZXR1cm4gb3JkaW5hbE9mRmlyc3RNYXRjaEZvckZyYW1lKHRoaXMpICsgbV9hY3RpdmVNYXRjaElu
ZGV4SW5DdXJyZW50RnJhbWUgKyAxOwogfQogCiB2b2lkIFdlYkZyYW1lSW1wbDo6ZGVsaXZlcklu
dGVudChjb25zdCBXZWJJbnRlbnQmIGludGVudCwgV2ViTWVzc2FnZVBvcnRDaGFubmVsQXJyYXkq
IHBvcnRzLCBXZWJEZWxpdmVyZWRJbnRlbnRDbGllbnQqIGludGVudENsaWVudCkKQEAgLTIwOTcs
NiArMjI4OSw4IEBAIFdlYkZyYW1lSW1wbDo6V2ViRnJhbWVJbXBsKFdlYkZyYW1lQ2xpZW50KiBj
bGllbnQpCiAgICAgLCBtX2ZyYW1lc1Njb3BpbmdDb3VudCgtMSkKICAgICAsIG1fc2NvcGluZ0Nv
bXBsZXRlKGZhbHNlKQogICAgICwgbV9uZXh0SW52YWxpZGF0ZUFmdGVyKDApCisgICAgLCBtX2Zp
bmRNYXRjaE1hcmtlcnNWZXJzaW9uKDApCisgICAgLCBtX2ZpbmRNYXRjaFJlY3RzQXJlVmFsaWQo
ZmFsc2UpCiAgICAgLCBtX2FuaW1hdGlvbkNvbnRyb2xsZXIodGhpcykKICAgICAsIG1faWRlbnRp
ZmllcihnZW5lcmF0ZUZyYW1lSWRlbnRpZmllcigpKQogICAgICwgbV9pblNhbWVEb2N1bWVudEhp
c3RvcnlMb2FkKGZhbHNlKQpAQCAtMjE3NSw2ICsyMzY5LDE1IEBAIFBhc3NSZWZQdHI8RnJhbWU+
IFdlYkZyYW1lSW1wbDo6Y3JlYXRlQ2hpbGRGcmFtZSgKICAgICByZXR1cm4gY2hpbGRGcmFtZS5y
ZWxlYXNlKCk7CiB9CiAKK3ZvaWQgV2ViRnJhbWVJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUo
Y29uc3QgSW50U2l6ZSYgc2l6ZSkKK3sKKyAgICAvLyBUaGlzIGlzIG9ubHkgcG9zc2libGUgb24g
dGhlIG1haW4gZnJhbWUuCisgICAgaWYgKG1fdG90YWxNYXRjaENvdW50ID4gMCkgeworICAgICAg
ICBBU1NFUlQoIXBhcmVudCgpKTsKKyAgICAgICAgKyttX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9u
OworICAgIH0KK30KKwogdm9pZCBXZWJGcmFtZUltcGw6OmNyZWF0ZUZyYW1lVmlldygpCiB7CiAg
ICAgQVNTRVJUKG1fZnJhbWUpOyAvLyBJZiBtX2ZyYW1lIGRvZXNuJ3QgZXhpc3QsIHdlIHByb2Jh
Ymx5IGRpZG4ndCBpbml0IHByb3Blcmx5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViRnJhbWVJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJG
cmFtZUltcGwuaAppbmRleCAwYWJhNTZmNGMxYWZiMTU4MTU1MDg1N2VjZWZiZjY3ZDZmYTg1M2Ji
Li5lODNiM2IwZjc0ODhjNzFiMWE0OWM0OThjZjJmY2QxMGE4MDk3ZjYyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJGcmFtZUltcGwuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiBjbGFzcyBHcmFwaGljc0NvbnRleHQ7CiBjbGFzcyBIVE1MSW5wdXRFbGVt
ZW50OwogY2xhc3MgSGlzdG9yeUl0ZW07CitjbGFzcyBJbnRTaXplOwogY2xhc3MgS1VSTDsKIGNs
YXNzIE5vZGU7CiBjbGFzcyBSYW5nZTsKQEAgLTI0OCw2ICsyNDksOCBAQCBwdWJsaWM6CiAgICAg
UGFzc1JlZlB0cjxXZWJDb3JlOjpGcmFtZT4gY3JlYXRlQ2hpbGRGcmFtZSgKICAgICAgICAgY29u
c3QgV2ViQ29yZTo6RnJhbWVMb2FkUmVxdWVzdCYsIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxl
bWVudCopOwogCisgICAgdm9pZCBkaWRDaGFuZ2VDb250ZW50c1NpemUoY29uc3QgV2ViQ29yZTo6
SW50U2l6ZSYpOworCiAgICAgdm9pZCBjcmVhdGVGcmFtZVZpZXcoKTsKIAogICAgIHN0YXRpYyBX
ZWJGcmFtZUltcGwqIGZyb21GcmFtZShXZWJDb3JlOjpGcmFtZSogZnJhbWUpOwpAQCAtMjcwLDcg
KzI3MywxMSBAQCBwdWJsaWM6CiAgICAgLy8gUmV0dXJucyB3aGljaCBmcmFtZSBoYXMgYW4gYWN0
aXZlIG1hdGNoLiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBvbmx5IGJlCiAgICAgLy8gY2FsbGVkIG9u
IHRoZSBtYWluIGZyYW1lLCBhcyBpdCBpcyB0aGUgb25seSBmcmFtZSBrZWVwaW5nIHRyYWNrLiBS
ZXR1cm5lZAogICAgIC8vIHZhbHVlIGNhbiBiZSAwIGlmIG5vIGZyYW1lIGhhcyBhbiBhY3RpdmUg
bWF0Y2guCi0gICAgY29uc3QgV2ViRnJhbWVJbXBsKiBhY3RpdmVNYXRjaEZyYW1lKCkgY29uc3Qg
eyByZXR1cm4gbV9jdXJyZW50QWN0aXZlTWF0Y2hGcmFtZTsgfQorICAgIFdlYkZyYW1lSW1wbCog
YWN0aXZlTWF0Y2hGcmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudEFjdGl2ZU1hdGNoRnJh
bWU7IH0KKworICAgIC8vIFJldHVybnMgdGhlIGFjdGl2ZSBtYXRjaCBpbiB0aGUgY3VycmVudCBm
cmFtZS4gQ291bGQgYmUgYSBudWxsIHJhbmdlIGlmCisgICAgLy8gdGhlIGxvY2FsIGZyYW1lIGhh
cyBubyBhY3RpdmUgbWF0Y2guCisgICAgV2ViQ29yZTo6UmFuZ2UqIGFjdGl2ZU1hdGNoKCkgY29u
c3QgeyByZXR1cm4gbV9hY3RpdmVNYXRjaC5nZXQoKTsgfQogCiAgICAgLy8gV2hlbiBhIEZpbmQg
b3BlcmF0aW9uIGVuZHMsIHdlIHdhbnQgdG8gc2V0IHRoZSBzZWxlY3Rpb24gdG8gd2hhdCB3YXMg
YWN0aXZlCiAgICAgLy8gYW5kIHNldCBmb2N1cyB0byB0aGUgZmlyc3QgZm9jdXNhYmxlIG5vZGUg
d2UgZmluZCAoc3RhcnRpbmcgd2l0aCB0aGUgZmlyc3QKQEAgLTI5Nyw2ICszMDQsMTkgQEAgcHJp
dmF0ZToKICAgICBmcmllbmQgY2xhc3MgRGVmZXJyZWRTY29wZVN0cmluZ01hdGNoZXM7CiAgICAg
ZnJpZW5kIGNsYXNzIEZyYW1lTG9hZGVyQ2xpZW50SW1wbDsKIAorICAgIHN0cnVjdCBGaW5kTWF0
Y2ggeworICAgICAgICBSZWZQdHI8V2ViQ29yZTo6UmFuZ2U+IG1fcmFuZ2U7CisKKyAgICAgICAg
Ly8gMS1iYXNlZCBpbmRleCB3aXRoaW4gdGhpcyBmcmFtZS4KKyAgICAgICAgaW50IG1fb3JkaW5h
bDsKKworICAgICAgICAvLyBJbiBmaW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMuCisgICAgICAgIC8v
IExhemlseSBjYWxjdWxhdGVkIGJ5IHVwZGF0ZUZpbmRNYXRjaFJlY3RzLgorICAgICAgICBXZWJD
b3JlOjpGbG9hdFJlY3QgbV9yZWN0OworCisgICAgICAgIEZpbmRNYXRjaChQYXNzUmVmUHRyPFdl
YkNvcmU6OlJhbmdlPiwgaW50IG9yZGluYWwpOworICAgIH07CisKICAgICAvLyBBIGJpdCBtYXNr
IHNwZWNpZnlpbmcgYXJlYSBvZiB0aGUgZnJhbWUgdG8gaW52YWxpZGF0ZS4KICAgICBlbnVtIEFy
ZWFUb0ludmFsaWRhdGUgewogICAgICAgSW52YWxpZGF0ZU5vdGhpbmcsCkBAIC0zMTUsNiArMzM1
LDMyIEBAIHByaXZhdGU6CiAgICAgdm9pZCByZXBvcnRGaW5kSW5QYWdlU2VsZWN0aW9uKAogICAg
ICAgICBjb25zdCBXZWJSZWN0JiBzZWxlY3Rpb25SZWN0LCBpbnQgYWN0aXZlTWF0Y2hPcmRpbmFs
LCBpbnQgaWRlbnRpZmllcik7CiAKKyAgICAvLyBDbGVhciB0aGUgZmluZC1pbi1wYWdlIG1hdGNo
ZXMgY2FjaGUgZm9yY2luZyByZWN0cyB0byBiZSBmdWxseQorICAgIC8vIGNhbGN1bGF0ZWQgYWdh
aW4gbmV4dCB0aW1lIHVwZGF0ZUZpbmRNYXRjaFJlY3RzIGlzIGNhbGxlZC4KKyAgICB2b2lkIGNs
ZWFyRmluZE1hdGNoZXNDYWNoZSgpOworCisgICAgLy8gQ2hlY2sgaWYgdGhlIGFjdGl2ZU1hdGNo
RnJhbWUgc3RpbGwgZXhpc3RzIGluIHRoZSBmcmFtZSB0cmVlLgorICAgIGJvb2wgaXNBY3RpdmVN
YXRjaEZyYW1lVmFsaWQoKSBjb25zdDsKKworICAgIC8vIFJldHVybiB0aGUgaW5kZXggaW4gdGhl
IGZpbmQtaW4tcGFnZSBjYWNoZSBvZiB0aGUgbWF0Y2ggY2xvc2VzdCB0byB0aGUKKyAgICAvLyBw
cm92aWRlZCBwb2ludCBpbiBmaW5kLWluLXBhZ2UgY29vcmRpbmF0ZXMsIG9yIC0xIGluIGNhc2Ug
b2YgZXJyb3IuCisgICAgLy8gVGhlIHNxdWFyZWQgZGlzdGFuY2UgdG8gdGhlIGNsb3Nlc3QgbWF0
Y2ggaXMgcmV0dXJuZWQgaW4gdGhlIGRpc3RhbmNlU3F1YXJlZCBwYXJhbWV0ZXIuCisgICAgaW50
IG5lYXJlc3RGaW5kTWF0Y2goY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYsIGZsb2F0JiBkaXN0
YW5jZVNxdWFyZWQpOworCisgICAgLy8gU2VsZWN0IGEgZmluZC1pbi1wYWdlIG1hdGNoIG1hcmtl
ciBpbiB0aGUgY3VycmVudCBmcmFtZSB1c2luZyBhIGNhY2hlCisgICAgLy8gbWF0Y2ggaW5kZXgg
cmV0dXJuZWQgYnkgbmVhcmVzdEZpbmRNYXRjaC4gUmV0dXJucyB0aGUgb3JkaW5hbCBvZiB0aGUg
bmV3CisgICAgLy8gc2VsZWN0ZWQgbWF0Y2ggb3IgLTEgaW4gY2FzZSBvZiBlcnJvci4gQWxzbyBw
cm92aWRlcyB0aGUgYm91bmRpbmcgYm94IG9mCisgICAgLy8gdGhlIG1hcmtlciBpbiB3aW5kb3cg
Y29vcmRpbmF0ZXMgaWYgc2VsZWN0aW9uUmVjdCBpcyBub3QgbnVsbC4KKyAgICBpbnQgc2VsZWN0
RmluZE1hdGNoKHVuc2lnbmVkIGluZGV4LCBXZWJSZWN0KiBzZWxlY3Rpb25SZWN0KTsKKworICAg
IC8vIENvbXB1dGUgYW5kIGNhY2hlIHRoZSByZWN0cyBmb3IgRmluZE1hdGNoZXMgaWYgcmVxdWly
ZWQuCisgICAgLy8gUmVjdHMgYXJlIGF1dG9tYXRpY2FsbHkgaW52YWxpZGF0ZWQgaW4gY2FzZSBv
ZiBjb250ZW50IHNpemUgY2hhbmdlcywKKyAgICAvLyBwcm9wYWdhdGluZyB0aGUgaW52YWxpZGF0
aW9uIHRvIGNoaWxkIGZyYW1lcy4KKyAgICB2b2lkIHVwZGF0ZUZpbmRNYXRjaFJlY3RzKCk7CisK
KyAgICAvLyBBcHBlbmQgdGhlIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyBvZiB0aGUgY3VycmVu
dCBmcmFtZSB0byB0aGUgcHJvdmlkZWQgdmVjdG9yLgorICAgIHZvaWQgYXBwZW5kRmluZE1hdGNo
UmVjdHMoVmVjdG9yPFdlYkZsb2F0UmVjdD4mIGZyYW1lUmVjdHMpOworCiAgICAgLy8gSW52YWxp
ZGF0ZXMgYSBjZXJ0YWluIGFyZWEgd2l0aGluIHRoZSBmcmFtZS4KICAgICB2b2lkIGludmFsaWRh
dGVBcmVhKEFyZWFUb0ludmFsaWRhdGUpOwogCkBAIC00MTQsNiArNDYwLDIxIEBAIHByaXZhdGU6
CiAgICAgLy8gQSBsaXN0IG9mIGFsbCBvZiB0aGUgcGVuZGluZyBjYWxscyB0byBzY29wZVN0cmlu
Z01hdGNoZXMuCiAgICAgVmVjdG9yPERlZmVycmVkU2NvcGVTdHJpbmdNYXRjaGVzKj4gbV9kZWZl
cnJlZFNjb3BpbmdXb3JrOwogCisgICAgLy8gVmVyc2lvbiBudW1iZXIgaW5jcmVtZW50ZWQgb24g
dGhlIG1haW4gZnJhbWUgb25seSB3aGVuZXZlciB0aGUgZG9jdW1lbnQKKyAgICAvLyBmaW5kLWlu
LXBhZ2UgbWF0Y2ggbWFya2VycyBjaGFuZ2UuIEl0IHNob3VsZCBiZSAwIGZvciBhbGwgb3RoZXIg
ZnJhbWVzLgorICAgIGludCBtX2ZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uOworCisgICAgLy8gTG9j
YWwgY2FjaGUgb2YgdGhlIGZpbmQgbWF0Y2ggbWFya2VycyBjdXJyZW50bHkgZGlzcGxheWVkIGZv
ciB0aGlzIGZyYW1lLgorICAgIFZlY3RvcjxGaW5kTWF0Y2g+IG1fZmluZE1hdGNoZXNDYWNoZTsK
KworICAgIC8vIERldGVybWluZXMgaWYgdGhlIHJlY3RzIGluIHRoZSBmaW5kLWluLXBhZ2UgbWF0
Y2hlcyBjYWNoZSBvZiB0aGlzIGZyYW1lCisgICAgLy8gYXJlIGludmFsaWQgYW5kIHNob3VsZCBi
ZSByZWNvbXB1dGVkLgorICAgIGJvb2wgbV9maW5kTWF0Y2hSZWN0c0FyZVZhbGlkOworCisgICAg
Ly8gQ29udGVudHMgc2l6ZSB3aGVuIGZpbmQtaW4tcGFnZSBtYXRjaCByZWN0cyB3ZXJlIGxhc3Qg
Y29tcHV0ZWQgZm9yIHRoaXMKKyAgICAvLyBmcmFtZSdzIGNhY2hlLgorICAgIFdlYkNvcmU6Oklu
dFNpemUgbV9jb250ZW50c1NpemVGb3JDdXJyZW50RmluZE1hdGNoUmVjdHM7CisKICAgICAvLyBW
YWxpZCBiZXR3ZWVuIGNhbGxzIHRvIEJlZ2luUHJpbnQoKSBhbmQgRW5kUHJpbnQoKS4gQ29udGFp
bnRzIHRoZSBwcmludAogICAgIC8vIGluZm9ybWF0aW9uLiBJcyB1c2VkIGJ5IFByaW50UGFnZSgp
LgogICAgIE93blB0cjxDaHJvbWVQcmludENvbnRleHQ+IG1fcHJpbnRDb250ZXh0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwCmluZGV4IGNkMjNkNjI2
ODBkZGMxOWM5OTM1YTUzMTAzZDc1NzMwZDkyY2E2MjYuLjBiNDBjMWQ5MGMwMTQ2NjQ5YmNkYzZm
YmE0NzUzOWExMjE5MWY1Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVz
dHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dl
YkZyYW1lVGVzdC5jcHAKQEAgLTMyLDkgKzMyLDExIEBACiAKICNpbmNsdWRlICJXZWJGcmFtZS5o
IgogCisjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRl
ICJGcmFtZVRlc3RIZWxwZXJzLmgiCiAjaW5jbHVkZSAiRnJhbWVWaWV3LmgiCisjaW5jbHVkZSAi
UmFuZ2UuaCIKICNpbmNsdWRlICJSZXNvdXJjZUVycm9yLmgiCiAjaW5jbHVkZSAiVVJMVGVzdEhl
bHBlcnMuaCIKICNpbmNsdWRlICJXZWJEYXRhU291cmNlLmgiCkBAIC01MSwxMSArNTMsMTQgQEAK
ICNpbmNsdWRlICJXZWJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIldlYlZpZXdDbGllbnQuaCIKICNp
bmNsdWRlICJXZWJWaWV3SW1wbC5oIgorI2luY2x1ZGUgInBsYXRmb3JtL1dlYkZsb2F0UmVjdC5o
IgogI2luY2x1ZGUgInY4LmgiCiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KICNpbmNsdWRlIDx3
ZWJraXQvc3VwcG9ydC93ZWJraXRfc3VwcG9ydC5oPgogCiB1c2luZyBuYW1lc3BhY2UgV2ViS2l0
OwordXNpbmcgV2ViQ29yZTo6RmxvYXRSZWN0OwordXNpbmcgV2ViQ29yZTo6UmFuZ2U7CiB1c2lu
ZyBXZWJLaXQ6OlVSTFRlc3RIZWxwZXJzOjp0b0tVUkw7CiAKIG5hbWVzcGFjZSB7CkBAIC04NTQs
NCArODU5LDEwMyBAQCBURVNUX0YoV2ViRnJhbWVUZXN0LCBEaWRDcmVhdGVGcmFtZSkKICAgICBF
WFBFQ1RfRVEod2ViRnJhbWVDbGllbnQubV9wYXJlbnQsIHdlYlZpZXctPm1haW5GcmFtZSgpKTsK
IH0KIAorY2xhc3MgRmluZFVwZGF0ZVdlYkZyYW1lQ2xpZW50IDogcHVibGljIFdlYkZyYW1lQ2xp
ZW50IHsKK3B1YmxpYzoKKyAgICBGaW5kVXBkYXRlV2ViRnJhbWVDbGllbnQoKQorICAgICAgICA6
IG1fZmluZFJlc3VsdHNBcmVSZWFkeShmYWxzZSkKKyAgICB7CisgICAgfQorCisgICAgdmlydHVh
bCB2b2lkIHJlcG9ydEZpbmRJblBhZ2VNYXRjaENvdW50KGludCwgaW50LCBib29sIGZpbmFsVXBk
YXRlKSBPVkVSUklERQorICAgIHsKKyAgICAgICAgaWYgKGZpbmFsVXBkYXRlKQorICAgICAgICAg
ICAgbV9maW5kUmVzdWx0c0FyZVJlYWR5ID0gdHJ1ZTsKKyAgICB9CisKKyAgICBib29sIGZpbmRS
ZXN1bHRzQXJlUmVhZHkoKSBjb25zdCB7IHJldHVybiBtX2ZpbmRSZXN1bHRzQXJlUmVhZHk7IH0K
KworcHJpdmF0ZToKKyAgICBib29sIG1fZmluZFJlc3VsdHNBcmVSZWFkeTsKK307CisKK1RFU1Rf
RihXZWJGcmFtZVRlc3QsIEZpbmRJblBhZ2VNYXRjaFJlY3RzKQoreworICAgIHJlZ2lzdGVyTW9j
a2VkSHR0cFVSTExvYWQoImZpbmRfaW5fcGFnZS5odG1sIik7CisgICAgcmVnaXN0ZXJNb2NrZWRI
dHRwVVJMTG9hZCgiZmluZF9pbl9wYWdlX2ZyYW1lLmh0bWwiKTsKKworICAgIEZpbmRVcGRhdGVX
ZWJGcmFtZUNsaWVudCBjbGllbnQ7CisgICAgV2ViVmlldyogd2ViVmlldyA9IEZyYW1lVGVzdEhl
bHBlcnM6OmNyZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJmaW5kX2luX3BhZ2UuaHRt
bCIsIHRydWUsICZjbGllbnQpOworICAgIHdlYlZpZXctPnJlc2l6ZShXZWJTaXplKDY0MCwgNDgw
KSk7CisgICAgd2ViVmlldy0+bGF5b3V0KCk7CisgICAgd2Via2l0X3N1cHBvcnQ6OlJ1bkFsbFBl
bmRpbmdNZXNzYWdlcygpOworCisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGtGaW5kU3RyaW5nID0g
InJlc3VsdCI7CisgICAgc3RhdGljIGNvbnN0IGludCBrRmluZElkZW50aWZpZXIgPSAxMjM0NTsK
KyAgICBzdGF0aWMgY29uc3QgaW50IGtOdW1SZXN1bHRzID0gMTA7CisKKyAgICBXZWJGaW5kT3B0
aW9ucyBvcHRpb25zOworICAgIFdlYlN0cmluZyBzZWFyY2hUZXh0ID0gV2ViU3RyaW5nOjpmcm9t
VVRGOChrRmluZFN0cmluZyk7CisgICAgV2ViRnJhbWVJbXBsKiBtYWluRnJhbWUgPSBzdGF0aWNf
Y2FzdDxXZWJGcmFtZUltcGwqPih3ZWJWaWV3LT5tYWluRnJhbWUoKSk7CisgICAgRVhQRUNUX1RS
VUUobWFpbkZyYW1lLT5maW5kKGtGaW5kSWRlbnRpZmllciwgc2VhcmNoVGV4dCwgb3B0aW9ucywg
ZmFsc2UsIDApKTsKKworICAgIGZvciAoV2ViRnJhbWUqIGZyYW1lID0gbWFpbkZyYW1lOyBmcmFt
ZTsgZnJhbWUgPSBmcmFtZS0+dHJhdmVyc2VOZXh0KGZhbHNlKSkKKyAgICAgICAgZnJhbWUtPnNj
b3BlU3RyaW5nTWF0Y2hlcyhrRmluZElkZW50aWZpZXIsIHNlYXJjaFRleHQsIG9wdGlvbnMsIHRy
dWUpOworCisgICAgd2Via2l0X3N1cHBvcnQ6OlJ1bkFsbFBlbmRpbmdNZXNzYWdlcygpOworICAg
IEVYUEVDVF9UUlVFKGNsaWVudC5maW5kUmVzdWx0c0FyZVJlYWR5KCkpOworCisgICAgV2ViVmVj
dG9yPFdlYkZsb2F0UmVjdD4gd2ViTWF0Y2hSZWN0czsKKyAgICBtYWluRnJhbWUtPmZpbmRNYXRj
aFJlY3RzKHdlYk1hdGNoUmVjdHMpOworICAgIEFTU0VSVF9FUSh3ZWJNYXRjaFJlY3RzLnNpemUo
KSwgc3RhdGljX2Nhc3Q8c2l6ZV90PihrTnVtUmVzdWx0cykpOworICAgIGludCByZWN0c1ZlcnNp
b24gPSBtYWluRnJhbWUtPmZpbmRNYXRjaE1hcmtlcnNWZXJzaW9uKCk7CisKKyAgICBmb3IgKGlu
dCByZXN1bHRJbmRleCA9IDA7IHJlc3VsdEluZGV4IDwga051bVJlc3VsdHM7ICsrcmVzdWx0SW5k
ZXgpIHsKKyAgICAgICAgRmxvYXRSZWN0IHJlc3VsdFJlY3QgPSBzdGF0aWNfY2FzdDxGbG9hdFJl
Y3Q+KHdlYk1hdGNoUmVjdHNbcmVzdWx0SW5kZXhdKTsKKworICAgICAgICAvLyBTZWxlY3QgdGhl
IG1hdGNoIGJ5IHRoZSBjZW50ZXIgb2YgaXRzIHJlY3QuCisgICAgICAgIEVYUEVDVF9FUShtYWlu
RnJhbWUtPnNlbGVjdE5lYXJlc3RGaW5kTWF0Y2gocmVzdWx0UmVjdC5jZW50ZXIoKSwgMCksIHJl
c3VsdEluZGV4ICsgMSk7CisKKyAgICAgICAgLy8gQ2hlY2sgdGhhdCB0aGUgZmluZCByZXN1bHQg
b3JkZXJpbmcgbWF0Y2hlcyB3aXRoIG91ciBleHBlY3RhdGlvbnMuCisgICAgICAgIFJhbmdlKiBy
ZXN1bHQgPSBtYWluRnJhbWUtPmFjdGl2ZU1hdGNoRnJhbWUoKS0+YWN0aXZlTWF0Y2goKTsKKyAg
ICAgICAgQVNTRVJUX1RSVUUocmVzdWx0KTsKKyAgICAgICAgcmVzdWx0LT5zZXRFbmQocmVzdWx0
LT5lbmRDb250YWluZXIoKSwgcmVzdWx0LT5lbmRPZmZzZXQoKSArIDIpOworICAgICAgICBFWFBF
Q1RfRVEocmVzdWx0LT50ZXh0KCksIFN0cmluZzo6Zm9ybWF0KCIlcyAlZCIsIGtGaW5kU3RyaW5n
LCByZXN1bHRJbmRleCkpOworCisgICAgICAgIC8vIFZlcmlmeSB0aGF0IHRoZSBleHBlY3RlZCBt
YXRjaCByZWN0IGFsc28gbWF0Y2hlcyB0aGUgY3VycmVudGx5IGFjdGl2ZSBtYXRjaC4KKyAgICAg
ICAgLy8gQ29tcGFyZSB0aGUgZW5jbG9zaW5nIHJlY3RzIHRvIHByZXZlbnQgcHJlY2lzaW9uIGlz
c3VlcyBjYXVzZWQgYnkgQ1NTIHRyYW5zZm9ybXMuCisgICAgICAgIEZsb2F0UmVjdCBhY3RpdmVN
YXRjaCA9IG1haW5GcmFtZS0+YWN0aXZlRmluZE1hdGNoUmVjdCgpOworICAgICAgICBFWFBFQ1Rf
RVEoZW5jbG9zaW5nSW50UmVjdChhY3RpdmVNYXRjaCksIGVuY2xvc2luZ0ludFJlY3QocmVzdWx0
UmVjdCkpOworCisgICAgICAgIC8vIFRoZSByZWN0cyB2ZXJzaW9uIHNob3VsZCBub3QgaGF2ZSBj
aGFuZ2VkLgorICAgICAgICBFWFBFQ1RfRVEobWFpbkZyYW1lLT5maW5kTWF0Y2hNYXJrZXJzVmVy
c2lvbigpLCByZWN0c1ZlcnNpb24pOworICAgIH0KKworICAgIC8vIEFsbCByZXN1bHRzIGFmdGVy
IHRoZSBmaXJzdCB0d28gb25lcyBzaG91bGQgYmUgYmVsb3cgYmV0d2VlbiB0aGVtIGluIGZpbmQt
aW4tcGFnZSBjb29yZGluYXRlcy4KKyAgICAvLyBUaGlzIGlzIGJlY2F1c2UgcmVzdWx0cyAyIHRv
IDkgYXJlIGluc2lkZSBhbiBpZnJhbWUgbG9jYXRlZCBiZXR3ZWVuIHJlc3VsdHMgMCBhbmQgMS4g
VGhpcyBhcHBsaWVzIHRvIHRoZSBmaXhlZCBkaXYgdG9vLgorICAgIEVYUEVDVF9UUlVFKHdlYk1h
dGNoUmVjdHNbMF0ueSA8IHdlYk1hdGNoUmVjdHNbMV0ueSk7CisgICAgZm9yIChpbnQgcmVzdWx0
SW5kZXggPSAyOyByZXN1bHRJbmRleCA8IGtOdW1SZXN1bHRzOyArK3Jlc3VsdEluZGV4KSB7Cisg
ICAgICAgIEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbMF0ueSA8IHdlYk1hdGNoUmVjdHNbcmVz
dWx0SW5kZXhdLnkpOworICAgICAgICBFWFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzFdLnkgPiB3
ZWJNYXRjaFJlY3RzW3Jlc3VsdEluZGV4XS55KTsKKyAgICB9CisKKyAgICAvLyBSZXN1bHQgMyBz
aG91bGQgYmUgYmVsb3cgYm90aCAyIGFuZCA0LiBUaGlzIGlzIGNhdXNlZCBieSB0aGUgQ1NTIHRy
YW5zZm9ybSBpbiB0aGUgY29udGFpbmluZyBkaXYuCisgICAgLy8gSWYgdGhlIHRyYW5zZm9ybSBk
b2Vzbid0IHdvcmsgdGhlbiAzIHdpbGwgYmUgYmV0d2VlbiAyIGFuZCA0LgorICAgIEVYUEVDVF9U
UlVFKHdlYk1hdGNoUmVjdHNbM10ueSA+IHdlYk1hdGNoUmVjdHNbMl0ueSk7CisgICAgRVhQRUNU
X1RSVUUod2ViTWF0Y2hSZWN0c1szXS55ID4gd2ViTWF0Y2hSZWN0c1s0XS55KTsKKworICAgIC8v
IFJlc3VsdHMgNiwgNywgOCBhbmQgOSBzaG91bGQgYmUgb25lIGJlbG93IHRoZSBvdGhlciBpbiB0
aGF0IHNhbWUgb3JkZXIuCisgICAgLy8gSWYgb3ZlcmZsb3c6c2Nyb2xsIGlzIG5vdCBwcm9wZXJs
eSBoYW5kbGVkIHRoZW4gcmVzdWx0IDggd291bGQgYmUgYmVsb3cgcmVzdWx0IDkgb3IKKyAgICAv
LyByZXN1bHQgNyBhYm92ZSByZXN1bHQgNiBkZXBlbmRpbmcgb24gdGhlIHNjcm9sbC4KKyAgICBF
WFBFQ1RfVFJVRSh3ZWJNYXRjaFJlY3RzWzZdLnkgPCB3ZWJNYXRjaFJlY3RzWzddLnkpOworICAg
IEVYUEVDVF9UUlVFKHdlYk1hdGNoUmVjdHNbN10ueSA8IHdlYk1hdGNoUmVjdHNbOF0ueSk7Cisg
ICAgRVhQRUNUX1RSVUUod2ViTWF0Y2hSZWN0c1s4XS55IDwgd2ViTWF0Y2hSZWN0c1s5XS55KTsK
KworICAgIC8vIFJlc2l6aW5nIHNob3VsZCB1cGRhdGUgdGhlIHJlY3RzIHZlcnNpb24uCisgICAg
d2ViVmlldy0+cmVzaXplKFdlYlNpemUoODAwLCA2MDApKTsKKyAgICB3ZWJraXRfc3VwcG9ydDo6
UnVuQWxsUGVuZGluZ01lc3NhZ2VzKCk7CisgICAgRVhQRUNUX1RSVUUobWFpbkZyYW1lLT5maW5k
TWF0Y2hNYXJrZXJzVmVyc2lvbigpICE9IHJlY3RzVmVyc2lvbik7CisKKyAgICB3ZWJWaWV3LT5j
bG9zZSgpOworfQorCiB9IC8vIG5hbWVzcGFjZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS90ZXN0cy9kYXRhL2ZpbmRfaW5fcGFnZS5odG1sIGIvU291cmNlL1dlYktpdC9jaHJv
bWl1bS90ZXN0cy9kYXRhL2ZpbmRfaW5fcGFnZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmMwOWM5ZGQwNjA1
NTk1MWFjMmYyNzJmMjhlOWExNTE4ZmFmZDdmYWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlLmh0bWwKQEAgLTAsMCArMSwx
MyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPG1ldGEgbmFtZT0idmlld3Bv
cnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAsIG1heGlt
dW0tc2NhbGU9MS4wLCB1c2VyLXNjYWxhYmxlPW5vIiAvPgorPC9oZWFkPgorPGJvZHk+CitUaGlz
IGEgZmluZC1pbi1wYWdlIG1hdGNoIHJlY3QgdGVzdC48L2JyPgorcmVzdWx0IDA8L2JyPgorPGlm
cmFtZSBzcmM9ImZpbmRfaW5fcGFnZV9mcmFtZS5odG1sIiBoZWlnaHQ9IjMwMCIgc2Nyb2xsaW5n
PSJ5ZXMiPjwvaWZyYW1lPgorPC9icj4KK3Jlc3VsdCAxCis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdlX2Zy
YW1lLmh0bWwgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL2RhdGEvZmluZF9pbl9wYWdl
X2ZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDdkMjlhZTBmZGQzNzg2MDZmN2UxMmM5YmQ5OTdkZTNi
NjAzN2YyOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
ZGF0YS9maW5kX2luX3BhZ2VfZnJhbWUuaHRtbApAQCAtMCwwICsxLDU4IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lk
dGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVz
ZXItc2NhbGFibGU9bm8iIC8+Cis8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorZGl2LnRyYW5zZm9y
bSB7CisgIGJhY2tncm91bmQtY29sb3I6ICMwMEZGMDA7CisgIHdpZHRoOiAxMDBweDsKKyAgaGVp
Z2h0OiAxMDBweDsKKyAgcGFkZGluZy1sZWZ0OiAzMHB4OworICBwYWRkaW5nLXRvcDogMjBweDsK
KyAgLXdlYmtpdC10cmFuc2Zvcm06bWF0cml4KDAuODY2LDAuNSwtMC41LDAuODY2LDEyMCwxNTAp
OworfQorZGl2LnNjcm9sbCB7CisgIGJhY2tncm91bmQtY29sb3I6ICMwMEZGRkY7CisgIHdpZHRo
OiAxMDBweDsKKyAgaGVpZ2h0OiAxMDBweDsKKyAgb3ZlcmZsb3c6IHNjcm9sbDsKK30KK2Rpdi5m
aXhlZCB7CisgIGJhY2tncm91bmQtY29sb3I6ICNGRjAwMDA7CisgIGxlZnQ6IDIwMHB4OworICB0
b3A6IDUwcHg7CisgIHdpZHRoOiAxMDBweDsKKyAgaGVpZ2h0OiAxMDBweDsKKyAgcG9zaXRpb246
IGZpeGVkOworfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorVGhpcyBpcyBhIHRlc3QuCis8
L2JyPjwvYnI+Cis8L2JyPjwvYnI+Cis8L2JyPjwvYnI+CitGb28gYmFyLgorPC9icj48L2JyPgor
PC9icj48L2JyPgorPC9icj48L2JyPgorcmVzdWx0IDIKKzxkaXYgY2xhc3M9InRyYW5zZm9ybSI+
CityZXN1bHQgMworPC9kaXY+CityZXN1bHQgNAorPGRpdiBjbGFzcz0iZml4ZWQiPgorcmVzdWx0
IDUKKzwvZGl2PgorcmVzdWx0IDYKKzxkaXYgY2xhc3M9InNjcm9sbCI+CityZXN1bHQgNworRm9v
IGJhci4KKzwvYnI+PC9icj4KKzwvYnI+PC9icj4KKzwvYnI+PC9icj4KK3Jlc3VsdCA4Cis8L2Rp
dj4KK3Jlc3VsdCA5Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>