<?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>142102</bug_id>
          
          <creation_ts>2015-02-27 13:54:36 -0800</creation_ts>
          <short_desc>Move scroll animating functions from ScrollAnimator to ScrollController</short_desc>
          <delta_ts>2015-03-03 17:37:12 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>142205</dependson>
          <blocked>141973</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>buildbot</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jamesr</cc>
    
    <cc>luiz</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1072823</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-02-27 13:54:36 -0800</bug_when>
    <thetext>This is part of a refactoring of the various scrolling classes. It does the following:

1. Consolidates the animation timers to simplify the implementation.
2. Moves code from ScrollAnimator/ScrollAnimatorMac -&gt; ScrollController.
3. Moves ScrollController from platform/mac to platform/cocoa so it can be shared with iOS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073366</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-03-02 10:22:37 -0800</bug_when>
    <thetext>&lt;rdar://problem/20007161&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073373</commentid>
    <comment_count>2</comment_count>
      <attachid>247680</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 10:43:03 -0800</bug_when>
    <thetext>Created attachment 247680
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073387</commentid>
    <comment_count>3</comment_count>
      <attachid>247682</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 11:18:06 -0800</bug_when>
    <thetext>Created attachment 247682
Patch v2 (Add missing copy-header command. Fix iOS build)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073397</commentid>
    <comment_count>4</comment_count>
      <attachid>247682</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2015-03-02 11:36:01 -0800</bug_when>
    <thetext>Comment on attachment 247682
Patch v2 (Add missing copy-header command. Fix iOS build)

Attachment 247682 did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/5529067688296448

New failing tests:
fast/events/wheelevent-basic.html
fast/events/platform-wheelevent-in-scrolling-div.html
fast/events/continuous-platform-wheelevent-in-scrolling-div.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073398</commentid>
    <comment_count>5</comment_count>
      <attachid>247685</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2015-03-02 11:36:05 -0800</bug_when>
    <thetext>Created attachment 247685
Archive of layout-test-results from ews101 for mac-mavericks

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101  Port: mac-mavericks  Platform: Mac OS X 10.9.5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073407</commentid>
    <comment_count>6</comment_count>
      <attachid>247689</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 11:57:45 -0800</bug_when>
    <thetext>Created attachment 247689
Patch v3 (Fix WK2 build error, attempt to fix iOS build error).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073413</commentid>
    <comment_count>7</comment_count>
      <attachid>247690</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 12:25:52 -0800</bug_when>
    <thetext>Created attachment 247690
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073414</commentid>
    <comment_count>8</comment_count>
      <attachid>247691</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 12:27:54 -0800</bug_when>
    <thetext>Created attachment 247691
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073419</commentid>
    <comment_count>9</comment_count>
      <attachid>247694</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 12:43:53 -0800</bug_when>
    <thetext>Created attachment 247694
Patch v6 (Fix build on all platforms, fix tests)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073430</commentid>
    <comment_count>10</comment_count>
      <attachid>247696</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 13:17:50 -0800</bug_when>
    <thetext>Created attachment 247696
Patch v7 (Hopefully final iOS fix). All tests should pass.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073440</commentid>
    <comment_count>11</comment_count>
      <attachid>247698</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 14:13:14 -0800</bug_when>
    <thetext>Created attachment 247698
Patch v8 (one more #ifdef needed).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073459</commentid>
    <comment_count>12</comment_count>
      <attachid>247698</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-03-02 15:01:26 -0800</bug_when>
    <thetext>Comment on attachment 247698
Patch v8 (one more #ifdef needed).

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

&gt; Source/WebCore/page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:83
&gt; +    virtual LayoutUnit scrollOffsetOnAxis(ScrollEventAxis);
&gt; +    virtual void immediateScrollOnAxis(ScrollEventAxis, float delta);

override?

&gt; Source/WebCore/page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:519
&gt; +    return LayoutUnit();

return 0.

&gt; Source/WebCore/platform/ScrollAnimator.cpp:54
&gt; +#if (ENABLE(CSS_SCROLL_SNAP) || ENABLE(RUBBER_BANDING)) &amp;&amp; PLATFORM(MAC)
&gt; +    , m_scrollController(this)
&gt; +#endif

Don&apos;t we want this on iOS?

&gt; Source/WebCore/platform/cocoa/ScrollController.h:29
&gt; +#if ENABLE(RUBBER_BANDING)

Is that defined on iOS?

&gt; Source/WebCore/platform/cocoa/ScrollController.mm:57
&gt; +static NSTimeInterval systemUptime()
&gt; +{
&gt; +    if ([[NSProcessInfo processInfo] respondsToSelector:@selector(systemUptime)])
&gt; +        return [[NSProcessInfo processInfo] systemUptime];
&gt; +
&gt; +    // Get how long system has been up. Found by looking getting &quot;boottime&quot; from the kernel.
&gt; +    static struct timeval boottime = {0, 0};
&gt; +    if (!boottime.tv_sec) {
&gt; +        int mib[2] = {CTL_KERN, KERN_BOOTTIME};
&gt; +        size_t size = sizeof(boottime);
&gt; +        if (-1 == sysctl(mib, 2, &amp;boottime, &amp;size, 0, 0))
&gt; +            boottime.tv_sec = 0;
&gt; +    }
&gt; +    struct timeval now;
&gt; +    if (boottime.tv_sec &amp;&amp; -1 != gettimeofday(&amp;now, 0)) {
&gt; +        struct timeval uptime;
&gt; +        timersub(&amp;now, &amp;boottime, &amp;uptime);
&gt; +        NSTimeInterval result = uptime.tv_sec + (uptime.tv_usec / 1E+6);
&gt; +        return result;
&gt; +    }
&gt; +    return 0;
&gt; +}

Still no idea if we need this!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073471</commentid>
    <comment_count>13</comment_count>
      <attachid>247698</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 15:26:35 -0800</bug_when>
    <thetext>Comment on attachment 247698
Patch v8 (one more #ifdef needed).

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

&gt;&gt; Source/WebCore/page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:83
&gt;&gt; +    virtual void immediateScrollOnAxis(ScrollEventAxis, float delta);
&gt; 
&gt; override?

OK!

&gt;&gt; Source/WebCore/page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:519
&gt;&gt; +    return LayoutUnit();
&gt; 
&gt; return 0.

OK!

&gt;&gt; Source/WebCore/platform/ScrollAnimator.cpp:54
&gt;&gt; +#endif
&gt; 
&gt; Don&apos;t we want this on iOS?

No, or at least not yet. The code in this class was only being used on Mac. Everything was in ScrollAnimatorMac surrounded with &quot;ENABLE(CSS_SCROLL_SNAP) &amp;&amp; PLATFORM(MAC)&quot;. I&apos;m going to review the iOS functionality and see if it needs to be turned on. But for now, the goal is &quot;no behavior changes&quot; with this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073473</commentid>
    <comment_count>14</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 15:29:42 -0800</bug_when>
    <thetext>(In reply to comment #13)

&gt; &gt; Don&apos;t we want this on iOS?
&gt; 
&gt; No, or at least not yet. The code in this class was only being used on Mac.
&gt; Everything was in ScrollAnimatorMac surrounded with &quot;ENABLE(CSS_SCROLL_SNAP)
&gt; &amp;&amp; PLATFORM(MAC)&quot;. I&apos;m going to review the iOS functionality and see if it
&gt; needs to be turned on. But for now, the goal is &quot;no behavior changes&quot; with
&gt; this patch.

I meant everything was in ScrollAnimator.cpp surrounded with &quot;ENABLE(CSS_SCROLL_SNAP) &amp;&amp; PLATFORM(MAC)&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073486</commentid>
    <comment_count>15</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-02 15:49:44 -0800</bug_when>
    <thetext>Committed r180902: &lt;http://trac.webkit.org/changeset/180902&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073558</commentid>
    <comment_count>16</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2015-03-02 18:34:25 -0800</bug_when>
    <thetext>This appears to have caused bug 142202.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073576</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-02 19:24:33 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 142205</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073585</commentid>
    <comment_count>18</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2015-03-02 19:37:17 -0800</bug_when>
    <thetext>This was rolled out in r180915 since it broke scrolling.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073599</commentid>
    <comment_count>19</comment_count>
      <attachid>247698</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-03-02 20:05:20 -0800</bug_when>
    <thetext>Comment on attachment 247698
Patch v8 (one more #ifdef needed).

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

&gt; Source/WebCore/platform/cocoa/ScrollController.h:105
&gt; +    void startScrollSnapTimer(ScrollEventAxis);

This overrides a virtual function without an override keyword, breaking some builds.

&gt; Source/WebCore/platform/cocoa/ScrollController.h:106
&gt; +    void stopScrollSnapTimer(ScrollEventAxis);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073692</commentid>
    <comment_count>20</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-03 09:42:36 -0800</bug_when>
    <thetext>Mark identified a failure case with this change, due to some state in ScrollingTreeFrameScrollingNodeMac not getting updated properly after this refactoring.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073710</commentid>
    <comment_count>21</comment_count>
      <attachid>247769</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-03 10:45:04 -0800</bug_when>
    <thetext>Created attachment 247769
Patch v9 (Resolves Bug 142205).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073724</commentid>
    <comment_count>22</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-03 11:25:15 -0800</bug_when>
    <thetext>A second patch will provide a test covering Bug 142205.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073726</commentid>
    <comment_count>23</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-03 11:27:26 -0800</bug_when>
    <thetext>wk2 test failures do not seem to be related to this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073882</commentid>
    <comment_count>24</comment_count>
      <attachid>247817</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-03 16:58:46 -0800</bug_when>
    <thetext>Created attachment 247817
Patch v10 (Includes new test)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073890</commentid>
    <comment_count>25</comment_count>
      <attachid>247817</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-03-03 17:06:13 -0800</bug_when>
    <thetext>Comment on attachment 247817
Patch v10 (Includes new test)

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

&gt; Source/WebCore/platform/cocoa/ScrollController.h:95
&gt; +class ScrollController : public AxisScrollSnapAnimatorClient {

Is the long-term goal to make ScrollController not a AxisScrollSnapAnimatorClient, and just fold the snapping logic into this class?

&gt; LayoutTests/platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-mainframe-zoom.html:1
&gt; +&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD HTML 4.01//EN&quot;&gt;

Just &lt;!DOCTYPE html&gt;

&gt; LayoutTests/platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-mainframe-zoom.html:4
&gt; +        &lt;link rel=&quot;help&quot; href=&quot;http://www.w3.org/TR/DOM-Level-3-Events/#events-WheelEvent&quot;&gt;

Remove.

&gt; LayoutTests/platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-mainframe-zoom.html:7
&gt; +        &lt;title&gt;&lt;/title&gt;

Remove

&gt; LayoutTests/platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-mainframe-zoom.html:8
&gt; +    &lt;/head&gt;

Another /head!

&gt; LayoutTests/platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-mainframe-zoom.html:49
&gt; +                var selectTarget = document.getElementById(&apos;target&apos;);
&gt; +                var startPosX = Math.round(selectTarget.offsetLeft) + 20;
&gt; +                var startPosY = Math.round(selectTarget.offsetTop) - 42; // Slightly more than one wheel scroll away from the IFrame

I think this is all cruft.

&gt; LayoutTests/platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-mainframe-zoom.html:144
&gt; +        &lt;div id=&quot;parent&quot; style=&quot;height: 2000px;&quot;&gt;
&gt; +            &lt;div id=&quot;source&quot; style=&quot;height: 100px&quot;&gt;
&gt; +                Put mouse here and flick downwards
&gt; +            &lt;/div&gt;
&gt; +            &lt;div id=&quot;target&quot;&gt;
&gt; +                TOP TOP TOP TOP TOP TOP TOP TOP TOP TOP TOP TOP TOP TOP&lt;br&gt;
&gt; +                &lt;br&gt;
&gt; +                This should still be visible inside the frame after you scroll down&lt;br&gt;
&gt; +                &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&gt; +                &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&gt; +                &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&gt; +                &lt;br&gt;&lt;br&gt;
&gt; +                This should NOT be visible inside the frame after you scroll down&lt;br&gt;
&gt; +                &lt;br&gt;
&gt; +                END END END END END END END END END END END END END
&gt; +            &lt;/div&gt;
&gt; +        &lt;/div&gt;

All cruft?

&gt; LayoutTests/platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-mainframe-zoom.html:147
&gt; +            setupTopLevel();
&gt; +        &lt;/script&gt;

This should just be a window.addEventListener(&apos;load&quot;, startTest, false);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073899</commentid>
    <comment_count>26</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2015-03-03 17:37:12 -0800</bug_when>
    <thetext>Committed r180974: &lt;http://trac.webkit.org/changeset/180974&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247680</attachid>
            <date>2015-03-02 10:43:03 -0800</date>
            <delta_ts>2015-03-02 11:18:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-142102-20150302104246.patch</filename>
            <type>text/plain</type>
            <size>83364</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDg4OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE1LTAzLTAyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorICAg
ICAgICAKKyAgICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxp
bmcgY2xhc3NlczoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1
bkxvb3A6OlRpbWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgor
ICAgICAgICAgICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQ
b2ludCBhbmQgUnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENv
bnRyb2xsZXIgZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNo
YXJpbmcgd2l0aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9y
e01hY30gLT4gU2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNl
dEluQXhpcyAtPiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0
ZVNjcm9sbEluQXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdw
bGF0Zm9ybS9jb2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1h
a2Ugc3VyZSB0aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9s
bAorICAgICAgICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFu
ZGxlZCIgY2FzZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0
aW1lciBhbmQgc29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxD
b250cm9sbGVyIGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRv
IGNsZWFuIHVwIHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyk6IEFkZCB0ZW1w
b3Jhcnkgc3R1YiBuZWVkZWQKKyAgICAgICAgdW50aWwgQnVnIDE0MTk3MyBpcyBjb21wbGV0ZWQu
KS4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6U2Nyb2xsQW5pbWF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnBy
b2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEp1c3QgY2FsbCB0aGUgU2Nyb2xsQ29udHJv
bGxlciBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyk6IFJlbmFtZWQgZnJvbSBzY3JvbGxPZmZz
ZXRJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0
SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMpOiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmg6IENvcGllZCBmcm9tIHBsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmguCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5tbTogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIu
bW0uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVy
KTogVXBkYXRlIHRvIGluaXRpYWxpemUgbmV3IHRpbWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOiBVcGRhdGUgdG8gaGFuZGxlIFNjcm9s
bCBTbmFwIFBvaW50IGV2ZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBNYW5hZ2UgYW5pbWF0aW9u
IHRpbWVycyBsb2NhbGx5LCBkbyBub3QKKyAgICAgICAgcmVxdWlyZSBjbGllbnQgdG8gbWFpbnRh
aW4gdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEFkZGVkLiAoTW92ZWQgZnJvbSBTY3JvbGxBbmlt
YXRvck1hYykKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6
OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEaXR0by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIpOiAg
RGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
OiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW06IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFj
OjpTY3JvbGxBbmltYXRvck1hYyk6IFJlbW92ZSB1bnVzZWQgUnViYmVyYmFuZCB0aW1lcnMgKG5v
dyB0aGF0IHRoaXMgaXMKKyAgICAgICAgY29udHJvbGxlZCBpbiB0aGUgU2Nyb2xsQ29udHJvbGxl
cikKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmg6IFJlbW92ZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06IFJlbW92ZWQuCisKIDIwMTUtMDMt
MDIgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVyZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRl
IGluIEdyYXBoaWNzTGF5ZXJDQS5oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODA3NzQpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkK
QEAgLTc4Niw4ICs3ODYsNiBAQAogCQkxQTkyN0ZEMzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTky
N0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5ODk1NkIwQUE3OEY4MDAwNUVGNUVG
IC8qIFVSTENGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBOTg5NTZBMEFBNzhGODAwMDVFRjVFRiAvKiBVUkxDRi5jcHAgKi87IH07Ci0JCTFBQTg0
RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07Ci0JCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1
MyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFB
QTg3OTkwMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJhdGVneS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODc5OEYxMUNCRTg0NjAwM0M2NjRG
IC8qIFBsdWdpblN0cmF0ZWd5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMUFBQUREQTMxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQURE
QTExNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovOyB9OwogCQkxQUFBRERB
NDE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMjQ0NSw2ICsyNDQzLDggQEAKIAkJN0E3NEVDQkQxMDE4MzlEQTAwQkY5MzlFIC8q
IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNzRFQ0JDMTAxODM5REEwMEJGOTM5RSAvKiBKU0lu
c3BlY3RvckZyb250ZW5kSG9zdEN1c3RvbS5jcHAgKi87IH07CiAJCTdBOTM4Njg1MThEQ0MxNDUw
MEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgyMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNw
cCAqLzsgfTsKIAkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThEQ0Mx
NDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87IH07CisJCTdBOUFERkYzMUFBMTE2MzgwMEQy
NzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJv
bGxlci5oICovOyB9OworCQk3QTlBREZGNDFBQTExNjNCMDBEMjczM0MgLyogU2Nyb2xsQ29udHJv
bGxlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
RkZBNDEyMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3JvbGxDb250cm9sbGVyLm1tICovOyB9OwogCQk3
QUEzQTY5OTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBM0E2OTUxOTRBNjRFNzAwMUNC
RDI0IC8qIFRpbGVDb250cm9sbGVyLmNwcCAqLzsgfTsKIAkJN0FBM0E2OUExOTRBNjRFNzAwMUNC
RDI0IC8qIFRpbGVDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QUEzQTY5NjE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRyb2xsZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QUEz
QTY5QjE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUdyaWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBM0E2OTcxOTRBNjRFNzAwMUNCRDI0IC8qIFRp
bGVHcmlkLmNwcCAqLzsgfTsKQEAgLTc4MDgsOCArNzgwOCw2IEBACiAJCTFBOTI3RkQwMTQxNkEx
NUIwMDNBODNDOCAvKiBucHJ1bnRpbWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gbnBydW50aW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBOTI3RkQxMTQx
NkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IG5wdHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE5ODk1NkEwQUE3
OEY4MDAwNUVGNUVGIC8qIFVSTENGLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBVUkxDRi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTFBQTg0RjAy
MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRy
b2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUE4Nzk4RjExQ0JFODQ2MDAzQzY2
NEYgLyogUGx1Z2luU3RyYXRlZ3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UGx1Z2luU3RyYXRlZ3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQUREQTEx
NERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTFBQUFEREEyMTREQjQwOUYwMEFGNjRCMyAvKiBTY3JvbGxpbmdUcmVlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1RyZWUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTk2NjYsNiArOTY2NCw4IEBACiAJCTdBRjlCMjA5MThDRkI1
RjIwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1ZUVFJlZ2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUY5QjIw
QTE4Q0ZCNUYzMDBDNjRCRUYgLyogSlNWVFRSZWdpb25MaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVlRUUmVnaW9uTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTdBRjlCMjBCMThDRkI1RjMwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbkxp
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNWVFRSZWdpb25MaXN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBRkZBNDExMUFBMTAzOUQwMEYwMTI1QiAv
KiBTY3JvbGxDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNj
cm9sbENvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FGRkE0MTIx
QUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3QzJCREQzQjE3QzdGOThCMDAzOEZGMTUgLyogSlNET01HbG9iYWxP
YmplY3RUYXNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9N
R2xvYmFsT2JqZWN0VGFzay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDMkJE
RDNDMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDM0I3OTZGMTkwODc1N0IwMEI0N0EyRCAvKiBVc2VyTWVz
c2FnZUhhbmRsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVXNl
ck1lc3NhZ2VIYW5kbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2NTg2
LDggKzE2NTg2LDYgQEAKIAkJCQlCQzUxMTU2RDEyQjE3NDlDMDBDOTY3NTQgLyogU2Nyb2xsQW5p
bWF0b3JNYWMubW0gKi8sCiAJCQkJQkM4Qjg1M0MwRTdDN0YxMTAwQUI2OTg0IC8qIFNjcm9sbGJh
clRoZW1lTWFjLmggKi8sCiAJCQkJQkNFRjg2OUUwRTg0NEU5RDAwQTg1Q0Q1IC8qIFNjcm9sbGJh
clRoZW1lTWFjLm1tICovLAotCQkJCTFBQTg0RjAzMTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxD
b250cm9sbGVyLmggKi8sCi0JCQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENv
bnRyb2xsZXIubW0gKi8sCiAJCQkJOTM1MzY3NkEwOUFFRDg4QjAwRDM1Q0Q2IC8qIFNjcm9sbFZp
ZXdNYWMubW0gKi8sCiAJCQkJMDc3QUYxNDExOEY0QjFCQjAwMDFFRDYxIC8qIFNlcmlhbGl6ZWRQ
bGF0Zm9ybVJlcHJlc2VudGF0aW9uTWFjLmggKi8sCiAJCQkJMDc3QUYxNDIxOEY0QjFCQjAwMDFF
RDYxIC8qIFNlcmlhbGl6ZWRQbGF0Zm9ybVJlcHJlc2VudGF0aW9uTWFjLm1tICovLApAQCAtMTg2
OTcsNiArMTg2OTUsOCBAQAogCQkJCTFBMDQwOUYyMUE0MzY3NUMwMDlFNDdGMyAvKiBNYWNoU2Vu
ZFJpZ2h0LmNwcCAqLywKIAkJCQkxQTA0MDlEQjFBNDM2MEI1MDA5RTQ3RjMgLyogTWFjaFNlbmRS
aWdodC5oICovLAogCQkJCUFEQjZCMjk3MThGQjkwMjQwMDgxOTYzRSAvKiBNZW1vcnlQcmVzc3Vy
ZUhhbmRsZXJDb2NvYS5tbSAqLywKKwkJCQk3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Ny
b2xsQ29udHJvbGxlci5oICovLAorCQkJCTdBRkZBNDEyMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3Jv
bGxDb250cm9sbGVyLm1tICovLAogCQkJCTVENTk3NUIxMTk2MzVGMTEwMEQwMDg3OCAvKiBTeXN0
ZW1WZXJzaW9uLmggKi8sCiAJCQkJNUQ1OTc1QjIxOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZl
cnNpb24ubW0gKi8sCiAJCQkJN0NDNTY0QjkxOEJBQzcyMDAwMUI5NjUyIC8qIFRlbGVwaG9uZU51
bWJlckRldGVjdG9yQ29jb2EuY3BwICovLApAQCAtMjQzMTYsNiArMjQzMTYsNyBAQAogCQkJCTg1
OTg5REQxMEFDQzhCQkQwMEEwQkM1MSAvKiBET01XaGVlbEV2ZW50SW50ZXJuYWwuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTE0MDNCOTk3MDlFQjEzQUYwMDc5N0M3RiAvKiBET01XaW5kb3cuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUZDOUEwRjc1MTY0MDk0Q0YwMDNENkI4RCAvKiBET01XaW5kb3dDU1Mu
aCBpbiBIZWFkZXJzICovLAorCQkJCTdBOUFERkYzMUFBMTE2MzgwMEQyNzMzQyAvKiBTY3JvbGxD
b250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MUZBMkQ3ODE1MjEzMkIzMDBDMUJBMEIg
LyogRE9NV2luZG93RXh0ZW5zaW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQk1MUQ3MTlCNzE4MTEw
NkUwMDAxNkRDNTEgLyogRE9NV2luZG93SW5kZXhlZERhdGFiYXNlLmggaW4gSGVhZGVycyAqLywK
IAkJCQk5N0IzOEUyNzE1MUM0MjcxMDA0NjIyRTkgLyogRE9NV2luZG93Tm90aWZpY2F0aW9ucy5o
IGluIEhlYWRlcnMgKi8sCkBAIC0yNjA5OSw3ICsyNjEwMCw2IEBACiAJCQkJQkM4Qjg1M0UwRTdD
N0YxMTAwQUI2OTg0IC8qIFNjcm9sbGJhclRoZW1lTWFjLmggaW4gSGVhZGVycyAqLywKIAkJCQkw
RkU3MTQwNjE0MjE3MEI4MDBEQjMzQkEgLyogU2Nyb2xsYmFyVGhlbWVNb2NrLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk1RDkyNUI2ODBGNjRENEREMDBCODQ3RjAgLyogU2Nyb2xsQmVoYXZpb3IuaCBp
biBIZWFkZXJzICovLAotCQkJCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250
cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQkwRjYwNUFFRDE1Rjk0ODQ4MDA0REYwQzAgLyog
U2Nyb2xsaW5nQ29uc3RyYWludHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBRjYyRUU4MTREQTIy
QTcwMDQxNTU2QyAvKiBTY3JvbGxpbmdDb29yZGluYXRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MEZDNEU0MEQxODdGODJFMTAwNDU4ODJDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9ySU9TLmggaW4g
SGVhZGVycyAqLywKQEAgLTI3NDk0LDYgKzI3NDk0LDcgQEAKIAkJCQlFMTlBQzNGNDE4MjREQzc5
MDAzNDk0MjYgLyogQ3J5cHRvQWxnb3JpdGhtU0hBNTEyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CUUxRkUxMzY0MTgzNDM1MTEwMDg5MkYxMyAvKiBDcnlwdG9EaWdlc3RNYWMuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJRTE1N0E4RTQxODE3M0EzQTAwOUY4MjFEIC8qIENyeXB0b0tleS5jcHAgaW4g
U291cmNlcyAqLywKKwkJCQk3QTlBREZGNDFBQTExNjNCMDBEMjczM0MgLyogU2Nyb2xsQ29udHJv
bGxlci5tbSBpbiBTb3VyY2VzICovLAogCQkJCUUxMjVGODREMTgyNDI4OUQwMEQ4NENEOSAvKiBD
cnlwdG9LZXlBRVMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTEyNUY4NjMxODJDMzAzQTAwRDg0
Q0Q5IC8qIENyeXB0b0tleURhdGFPY3RldFNlcXVlbmNlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CUUxQzI2NkRFMTgzMTlGMzEwMDNGOEIzMyAvKiBDcnlwdG9LZXlEYXRhUlNBQ29tcG9uZW50cy5j
cHAgaW4gU291cmNlcyAqLywKQEAgLTI5NTA2LDcgKzI5NTA3LDYgQEAKIAkJCQlCQ0VGODY5RjBF
ODQ0RTlEMDBBODVDRDUgLyogU2Nyb2xsYmFyVGhlbWVNYWMubW0gaW4gU291cmNlcyAqLywKIAkJ
CQkwRkU3MTQwNTE0MjE3MEI4MDBEQjMzQkEgLyogU2Nyb2xsYmFyVGhlbWVNb2NrLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTVEOTI1QjY3MEY2NEQ0REQwMEI4NDdGMCAvKiBTY3JvbGxCZWhhdmlv
ci5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkxQUE4NEYwNDE0M0JBN0JEMDA1MUQxNTMgLyogU2Ny
b2xsQ29udHJvbGxlci5tbSBpbiBTb3VyY2VzICovLAogCQkJCTBGNjA1QUVDMTVGOTQ4NDgwMDRE
RjBDMCAvKiBTY3JvbGxpbmdDb25zdHJhaW50cy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkxQUY2
MkVFNzE0REEyMkE3MDA0MTU1NkMgLyogU2Nyb2xsaW5nQ29vcmRpbmF0b3IuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMEZDNEU0MEUxODdGODJFMTAwNDU4ODJDIC8qIFNjcm9sbGluZ0Nvb3JkaW5h
dG9ySU9TLm1tIGluIFNvdXJjZXMgKi8sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9F
dmVudEhhbmRsZXJNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9tYWMv
RXZlbnRIYW5kbGVyTWFjLm1tCShyZXZpc2lvbiAxODA3NzQpCisrKyBTb3VyY2UvV2ViQ29yZS9w
YWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTk2MSw2ICs5NjEs
MTIgQEAgYm9vbCBFdmVudEhhbmRsZXI6OnBsYXRmb3JtQ29tcGxldGVXaGVlbAogICAgIAogICAg
IGJvb2wgZGlkSGFuZGxlRXZlbnQgPSB2aWV3ID8gdmlldy0+d2hlZWxFdmVudCh3aGVlbEV2ZW50
KSA6IGZhbHNlOwogICAgIG1faXNIYW5kbGluZ1doZWVsRXZlbnQgPSBmYWxzZTsKKyAgICAKKyNp
ZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgIGlmIChzY3JvbGxhYmxlQXJlYSkKKyAgICAg
ICAgcGxhdGZvcm1Ob3RpZnlTbmFwSWZOZWNlc3Nhcnkod2hlZWxFdmVudCwgKnNjcm9sbGFibGVB
cmVhKTsKKyNlbmRpZgorCiAgICAgcmV0dXJuIGRpZEhhbmRsZUV2ZW50OwogfQogCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xs
aW5nTm9kZU1hYy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmgJKHJldmlzaW9uIDE4MDc3
NCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJh
bWVTY3JvbGxpbmdOb2RlTWFjLmgJKHdvcmtpbmcgY29weSkKQEAgLTYxLDggKzYxLDYgQEAgcHJp
dmF0ZToKICAgICB2aXJ0dWFsIEludFBvaW50IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSBvdmVy
cmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRTaXpl
Jikgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENv
bnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgb3ZlcnJpZGU7Ci0gICAgdmly
dHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpIG92ZXJyaWRlOwotICAgIHZpcnR1
YWwgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwg
dm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSBvdmVycmlkZTsK
IAogICAgIHZpcnR1YWwgRmxvYXRQb2ludCBzY3JvbGxQb3NpdGlvbigpIGNvbnN0IG92ZXJyaWRl
OwpAQCAtODAsMTAgKzc4LDE0IEBAIHByaXZhdGU6CiAKICAgICBib29sIGlzQWxyZWFkeVBpbm5l
ZEluRGlyZWN0aW9uT2ZHZXN0dXJlKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYsIFNjcm9sbEV2
ZW50QXhpcyk7CiAKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMp
CisgICAgdmlydHVhbCBMYXlvdXRVbml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4
aXMpOworICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRB
eGlzLCBmbG9hdCBkZWx0YSk7CisjZW5kaWYKKwogICAgIHZvaWQgbG9nRXhwb3NlZFVuZmlsbGVk
QXJlYSgpOwogCiAgICAgU2Nyb2xsQ29udHJvbGxlciBtX3Njcm9sbENvbnRyb2xsZXI7Ci0gICAg
UmV0YWluUHRyPENGUnVuTG9vcFRpbWVyUmVmPiBtX3NuYXBSdWJiZXJiYW5kVGltZXI7CiAKICAg
ICBSZXRhaW5QdHI8Q0FMYXllcj4gbV9zY3JvbGxMYXllcjsKICAgICBSZXRhaW5QdHI8Q0FMYXll
cj4gbV9zY3JvbGxlZENvbnRlbnRzTGF5ZXI7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL3Nj
cm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5tbQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZy
YW1lU2Nyb2xsaW5nTm9kZU1hYy5tbQkocmV2aXNpb24gMTgwNzc0KQorKysgU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMu
bW0JKHdvcmtpbmcgY29weSkKQEAgLTY2LDggKzY2LDYgQEAgU2Nyb2xsaW5nVHJlZUZyYW1lU2Ny
b2xsaW5nTm9kZU1hYzo6U2NybwogCiBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFj
Ojp+U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYygpCiB7Ci0gICAgaWYgKG1fc25h
cFJ1YmJlcmJhbmRUaW1lcikKLSAgICAgICAgQ0ZSdW5Mb29wVGltZXJJbnZhbGlkYXRlKG1fc25h
cFJ1YmJlcmJhbmRUaW1lci5nZXQoKSk7CiB9CiAKIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Ny
b2xsaW5nTm9kZU1hYzo6dXBkYXRlQmVmb3JlQ2hpbGRyZW4oY29uc3QgU2Nyb2xsaW5nU3RhdGVO
b2RlJiBzdGF0ZU5vZGUpCkBAIC0yOTYsMzIgKzI5NCw2IEBAIHZvaWQgU2Nyb2xsaW5nVHJlZUZy
YW1lU2Nyb2xsaW5nTm9kZU1hYzoKICAgICBzY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0
cmFpbnRzKG9mZnNldCk7CiB9CiAKLXZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9k
ZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkKLXsKLSAgICBBU1NFUlQoIW1fc25hcFJ1
YmJlcmJhbmRUaW1lcik7Ci0KLSAgICBDRlRpbWVJbnRlcnZhbCB0aW1lckludGVydmFsID0gMS4w
IC8gNjAuMDsKLQotICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lciA9IGFkb3B0Q0YoQ0ZSdW5Mb29w
VGltZXJDcmVhdGVXaXRoSGFuZGxlcihrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBDRkFic29sdXRlVGlt
ZUdldEN1cnJlbnQoKSArIHRpbWVySW50ZXJ2YWwsIHRpbWVySW50ZXJ2YWwsIDAsIDAsIF4oQ0ZS
dW5Mb29wVGltZXJSZWYpIHsKLSAgICAgICAgbV9zY3JvbGxDb250cm9sbGVyLnNuYXBSdWJiZXJC
YW5kVGltZXJGaXJlZCgpOwotICAgIH0pKTsKLSAgICBDRlJ1bkxvb3BBZGRUaW1lcihDRlJ1bkxv
b3BHZXRDdXJyZW50KCksIG1fc25hcFJ1YmJlcmJhbmRUaW1lci5nZXQoKSwga0NGUnVuTG9vcERl
ZmF1bHRNb2RlKTsKLX0KLQotdm9pZCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFj
OjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgaWYgKCFtX3NuYXBSdWJiZXJiYW5k
VGltZXIpCi0gICAgICAgIHJldHVybjsKLQotICAgIHNjcm9sbGluZ1RyZWUoKS5zZXRNYWluRnJh
bWVJc1J1YmJlckJhbmRpbmcoZmFsc2UpOwotCi0gICAgLy8gU2luY2UgdGhlIHJ1YmJlcmJhbmQg
dGltZXIgaGFzIHN0b3BwZWQsIHRvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFuZCBjYW4gYmUg
c3luY2hyb25pemVkIHdpdGggdG90YWxDb250ZW50c1NpemUuCi0gICAgc2V0VG90YWxDb250ZW50
c1NpemVGb3JSdWJiZXJCYW5kKHRvdGFsQ29udGVudHNTaXplKCkpOwotCi0gICAgQ0ZSdW5Mb29w
VGltZXJJbnZhbGlkYXRlKG1fc25hcFJ1YmJlcmJhbmRUaW1lci5nZXQoKSk7Ci0gICAgbV9zbmFw
UnViYmVyYmFuZFRpbWVyID0gbnVsbHB0cjsKLX0KLQogdm9pZCBTY3JvbGxpbmdUcmVlRnJhbWVT
Y3JvbGxpbmdOb2RlTWFjOjphZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3Nhcnko
KQogewogICAgIEZsb2F0UG9pbnQgY3VycmVudFNjcm9sbFBvc2l0aW9uID0gYWJzb2x1dGVTY3Jv
bGxQb3NpdGlvbigpOwpAQCAtNTQwLDYgKzUxMiwxOSBAQCB2b2lkIGxvZ1doZWVsRXZlbnRIYW5k
bGVyQ291bnRDaGFuZ2VkKHVuCiAgICAgV1RGTG9nQWx3YXlzKCJTQ1JPTExJTkc6IFdoZWVsIGV2
ZW50IGhhbmRsZXIgY291bnQgY2hhbmdlZC4gVGltZTogJWYgQ291bnQ6ICV1XG4iLCBXVEY6Om1v
bm90b25pY2FsbHlJbmNyZWFzaW5nVGltZSgpLCBjb3VudCk7CiB9CiAKKyNpZiBFTkFCTEUoQ1NT
X1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCitMYXlvdXRVbml0IFNjcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMp
Cit7CisgICAgLy8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDovL3dlYmtpdC5vcmcvYi8xNDE5
NzMuCisgICAgcmV0dXJuIExheW91dFVuaXQoKTsKK30KKwordm9pZCBTY3JvbGxpbmdUcmVlRnJh
bWVTY3JvbGxpbmdOb2RlTWFjOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlz
LCBmbG9hdCkKK3sKKyAgICAvLyBUZW1wb3Jhcnkgc3R1YiB1bnRpbCBodHRwOi8vd2Via2l0Lm9y
Zy9iLzE0MTk3My4KK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRp
ZiAvLyBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKSAmJiBQTEFURk9STShNQUMpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCShyZXZpc2lvbiAxODA3NzQp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTQ5LDYgKzQ5LDkgQEAgUGFzc093blB0cjxTY3JvbGxBbmltYXRvcj4gU2Nyb2xs
QW5pbWF0bwogCiBTY3JvbGxBbmltYXRvcjo6U2Nyb2xsQW5pbWF0b3IoU2Nyb2xsYWJsZUFyZWEm
IHNjcm9sbGFibGVBcmVhKQogICAgIDogbV9zY3JvbGxhYmxlQXJlYShzY3JvbGxhYmxlQXJlYSkK
KyNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpIHx8IEVOQUJMRShDU1NfU0NST0xMX1NOQVApCisg
ICAgLCBtX3Njcm9sbENvbnRyb2xsZXIodGhpcykKKyNlbmRpZgogICAgICwgbV9jdXJyZW50UG9z
WCgwKQogICAgICwgbV9jdXJyZW50UG9zWSgwKQogewpAQCAtODMsMjYgKzg2LDE0IEBAIHZvaWQg
U2Nyb2xsQW5pbWF0b3I6OnNjcm9sbFRvT2Zmc2V0V2l0aG8KICNpZiBFTkFCTEUoQ1NTX1NDUk9M
TF9TTkFQKSAmJiBQTEFURk9STShNQUMpCiB2b2lkIFNjcm9sbEFuaW1hdG9yOjpwcm9jZXNzV2hl
ZWxFdmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50
KQogewotICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKQotICAgICAgICBtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOwot
ICAgIGlmIChtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IpCi0gICAgICAgIG1faG9yaXpv
bnRhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKKyAg
ICBtX3Njcm9sbENvbnRyb2xsZXIucHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKHdoZWVs
RXZlbnQpOwogfQogI2VuZGlmCiAKIGJvb2wgU2Nyb2xsQW5pbWF0b3I6OmhhbmRsZVdoZWVsRXZl
bnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiBlKQogewogI2lmIEVOQUJMRShDU1NfU0NST0xM
X1NOQVApICYmIFBMQVRGT1JNKE1BQykKLSAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmlt
YXRvcikgewotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVl
bEV2ZW50KGUpOwotICAgICAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hv
dWxkT3ZlcnJpZGVXaGVlbEV2ZW50KGUpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAg
IH0KLSAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7Ci0gICAgICAgIG1f
aG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudChlKTsKLSAgICAg
ICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVl
bEV2ZW50KGUpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KKyAgICBtX3Njcm9s
bENvbnRyb2xsZXIuaGFuZGxlV2hlZWxFdmVudChlKTsKICNlbmRpZgogI2lmIFBMQVRGT1JNKENP
Q09BKQogICAgIC8vIEV2ZW50cyBpbiB0aGUgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VNYXlCZWdp
biBwaGFzZSBoYXZlIG5vIGRlbHRhcywgYW5kIHRoZXJlZm9yZSBuZXZlciBwYXNzZXMgdGhyb3Vn
aCB0aGUgc2Nyb2xsIGhhbmRsaW5nIGxvZ2ljIGJlbG93LgpAQCAtMTgzLDMwICsxNzQsMTUgQEAg
dm9pZCBTY3JvbGxBbmltYXRvcjo6bm90aWZ5UG9zaXRpb25DaGFuZwogI2lmIEVOQUJMRShDU1Nf
U0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycygpCiB7Ci0gICAgLy8gRklYTUU6IEN1cnJlbnRseSwg
c2Nyb2xsIHNuYXAgYW5pbWF0b3JzIGFyZSByZWNyZWF0ZWQgZXZlbiB0aG91Z2ggdGhlIHNuYXAg
b2Zmc2V0cyBhbG9uZSBjYW4gYmUgdXBkYXRlZC4KLSAgICBpZiAobV9zY3JvbGxhYmxlQXJlYS5o
b3Jpem9udGFsU25hcE9mZnNldHMoKSkgewotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFw
QW5pbWF0b3IgPSBzdGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMs
IG1fc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRzKCksIFNjcm9sbEV2ZW50QXhp
czo6SG9yaXpvbnRhbCk7Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA9IHN0
ZDo6bWFrZV91bmlxdWU8VGltZXI+KCp0aGlzLCAmU2Nyb2xsQW5pbWF0b3I6Omhvcml6b250YWxT
Y3JvbGxTbmFwVGltZXJGaXJlZCk7Ci0gICAgfSBlbHNlIGlmIChtX2hvcml6b250YWxTY3JvbGxT
bmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0g
bnVsbHB0cjsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyID0gbnVsbHB0cjsK
LSAgICB9Ci0gICAgaWYgKG1fc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFwT2Zmc2V0cygpKSB7
Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBzdGQ6Om1ha2VfdW5pcXVl
PEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMsIG1fc2Nyb2xsYWJsZUFyZWEudmVydGljYWxT
bmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6OlZlcnRpY2FsKTsKLSAgICAgICAgbV92ZXJ0
aWNhbFNjcm9sbFNuYXBUaW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KCp0aGlzLCAmU2Ny
b2xsQW5pbWF0b3I6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOwotICAgIH0gZWxzZSBp
ZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikgewotICAgICAgICBtX3ZlcnRpY2FsU2Ny
b2xsU25hcEFuaW1hdG9yID0gbnVsbHB0cjsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBU
aW1lciA9IG51bGxwdHI7Ci0gICAgfQorICAgIG1fc2Nyb2xsQ29udHJvbGxlci51cGRhdGVTY3Jv
bGxBbmltYXRvcnNBbmRUaW1lcnMobV9zY3JvbGxhYmxlQXJlYSk7CiB9CiAKLUxheW91dFVuaXQg
U2Nyb2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldEluQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcykK
K0xheW91dFVuaXQgU2Nyb2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVu
dEF4aXMgYXhpcykKIHsKLSAgICBGbG9hdFBvaW50IGN1cnJlbnRQb3NpdGlvbiA9IHRoaXMtPmN1
cnJlbnRQb3NpdGlvbigpOwotICAgIHJldHVybiBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9y
aXpvbnRhbCA/IGN1cnJlbnRQb3NpdGlvbi54KCkgOiBjdXJyZW50UG9zaXRpb24ueSgpOworICAg
IHJldHVybiBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1fY3VycmVudFBv
c1ggOiBtX2N1cnJlbnRQb3NZOwogfQogCi12b2lkIFNjcm9sbEFuaW1hdG9yOjppbW1lZGlhdGVT
Y3JvbGxJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMsIGZsb2F0IGRlbHRhKQordm9pZCBTY3Jv
bGxBbmltYXRvcjo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzLCBm
bG9hdCBkZWx0YSkKIHsKICAgICBGbG9hdFBvaW50IGN1cnJlbnRQb3NpdGlvbiA9IHRoaXMtPmN1
cnJlbnRQb3NpdGlvbigpOwogICAgIGlmIChheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpv
bnRhbCkKQEAgLTIxNCwzMCArMTkwLDYgQEAgdm9pZCBTY3JvbGxBbmltYXRvcjo6aW1tZWRpYXRl
U2Nyb2xsSW5BeAogICAgIGVsc2UKICAgICAgICAgc2Nyb2xsVG9PZmZzZXRXaXRob3V0QW5pbWF0
aW9uKEZsb2F0UG9pbnQoY3VycmVudFBvc2l0aW9uLngoKSwgY3VycmVudFBvc2l0aW9uLnkoKSAr
IGRlbHRhKSk7CiB9Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnN0YXJ0U2Nyb2xsU25hcFRpbWVy
KFNjcm9sbEV2ZW50QXhpcyBheGlzKQotewotICAgIFRpbWVyKiBzY3JvbGxTbmFwVGltZXIgPSBh
eGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9sbFNu
YXBUaW1lci5nZXQoKSA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIuZ2V0KCk7Ci0gICAgaWYg
KCFzY3JvbGxTbmFwVGltZXItPmlzQWN0aXZlKCkpCi0gICAgICAgIHNjcm9sbFNuYXBUaW1lci0+
c3RhcnRSZXBlYXRpbmcoMS4wIC8gNjAuMCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCi17Ci0gICAgVGltZXIqIHNj
cm9sbFNuYXBUaW1lciA9IGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9o
b3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyLmdldCgpIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1l
ci5nZXQoKTsKLSAgICBpZiAoc2Nyb2xsU25hcFRpbWVyLT5pc0FjdGl2ZSgpKQotICAgICAgICBz
Y3JvbGxTbmFwVGltZXItPnN0b3AoKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvcjo6aG9yaXpv
bnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKLXsKLSAgICBtX2hvcml6b250YWxTY3JvbGxTbmFw
QW5pbWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKLX0KLQotdm9pZCBTY3JvbGxB
bmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpCi17Ci0gICAgbV92ZXJ0aWNh
bFNjcm9sbFNuYXBBbmltYXRvci0+c2Nyb2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOwotfQogI2Vu
ZGlmCiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbEFuaW1hdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsQW5pbWF0b3IuaAkocmV2aXNpb24gMTgwNzc0KQorKysgU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMzMsMTQgKzMzLDE0
IEBACiAjZGVmaW5lIFNjcm9sbEFuaW1hdG9yX2gKIAogI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgor
I2luY2x1ZGUgIkxheW91dFVuaXQuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdoZWVsRXZlbnQuaCIK
ICNpbmNsdWRlICJTY3JvbGxUeXBlcy5oIgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAj
aW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KIAotI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYm
IFBMQVRGT1JNKE1BQykKLSNpbmNsdWRlICJBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgiCi0jaW5j
bHVkZSAiVGltZXIuaCIKKyNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpIHx8IEVOQUJMRShDU1Nf
U0NST0xMX1NOQVApCisjaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgogI2VuZGlmCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDggKzUwLDggQEAgY2xhc3MgUGxhdGZvcm1Ub3VjaEV2
ZW50OwogY2xhc3MgU2Nyb2xsYWJsZUFyZWE7CiBjbGFzcyBTY3JvbGxiYXI7CiAKLSNpZiBFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi1jbGFzcyBTY3JvbGxBbmltYXRv
ciA6IHB1YmxpYyBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50IHsKKyNpZiAoRU5BQkxFKENT
U19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKSkgfHwgRU5BQkxFKFJVQkJFUl9CQU5ESU5H
KQorY2xhc3MgU2Nyb2xsQW5pbWF0b3IgOiBwcml2YXRlIFNjcm9sbENvbnRyb2xsZXJDbGllbnQg
ewogI2Vsc2UKIGNsYXNzIFNjcm9sbEFuaW1hdG9yIHsKICNlbmRpZgpAQCAtMTE4LDExICsxMTgs
MTAgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0o
TUFDKQogICAgIHZvaWQgcHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRm
b3JtV2hlZWxFdmVudCYpOworCiAgICAgdm9pZCB1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1l
cnMoKTsKLSAgICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2
ZW50QXhpcykgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEluQXhp
cyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IGRlbHRhKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZv
aWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKSBvdmVycmlkZTsKLSAgICB2
aXJ0dWFsIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRl
OworICAgIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3Zl
cnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBm
bG9hdCBkZWx0YSkgb3ZlcnJpZGU7CiAjZW5kaWYKIAogcHJvdGVjdGVkOgpAQCAtMTMwLDIyICsx
MjksMTIgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeVBvc2l0aW9uQ2hh
bmdlZChjb25zdCBGbG9hdFNpemUmIGRlbHRhKTsKIAotI2lmIEVOQUJMRShDU1NfU0NST0xMX1NO
QVApICYmIFBMQVRGT1JNKE1BQykKLSAgICAvLyBUcml2aWFsIHdyYXBwZXJzIGFyb3VuZCB0aGUg
YWN0dWFsIHVwZGF0ZSBsb29wIGluIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3IsIHNpbmNlIFdlYkNv
cmUgVGltZXIgcmVxdWlyZXMgYSBUaW1lciBhcmd1bWVudC4KLSAgICB2b2lkIGhvcml6b250YWxT
Y3JvbGxTbmFwVGltZXJGaXJlZCgpOwotICAgIHZvaWQgdmVydGljYWxTY3JvbGxTbmFwVGltZXJG
aXJlZCgpOwotI2VuZGlmCi0KICAgICBTY3JvbGxhYmxlQXJlYSYgbV9zY3JvbGxhYmxlQXJlYTsK
KyNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpIHx8IEVOQUJMRShDU1NfU0NST0xMX1NOQVApCisg
ICAgU2Nyb2xsQ29udHJvbGxlciBtX3Njcm9sbENvbnRyb2xsZXI7CisjZW5kaWYKICAgICBmbG9h
dCBtX2N1cnJlbnRQb3NYOyAvLyBXZSBhdm9pZCB1c2luZyBhIEZsb2F0UG9pbnQgaW4gb3JkZXIg
dG8gcmVkdWNlCiAgICAgZmxvYXQgbV9jdXJyZW50UG9zWTsgLy8gc3ViY2xhc3MgY29kZSBjb21w
bGV4aXR5LgotI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLSAg
ICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4gbV9ob3Jpem9udGFsU2Ny
b2xsU25hcEFuaW1hdG9yOwotICAgIHN0ZDo6dW5pcXVlX3B0cjxUaW1lcj4gbV9ob3Jpem9udGFs
U2Nyb2xsU25hcFRpbWVyOwotICAgIC8vIEZJWE1FOiBGaW5kIGEgd2F5IHRvIGNvbnNvbGlkYXRl
IGJvdGggdGltZXJzIGludG8gb25lIHZhcmlhYmxlLgotICAgIHN0ZDo6dW5pcXVlX3B0cjxBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yPiBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yOwotICAgIHN0
ZDo6dW5pcXVlX3B0cjxUaW1lcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKLSNlbmRpZgog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAkocmV2aXNpb24gMTgwNzAyKQkoZnJv
bSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5oOjE4MDcwMikK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDEwNyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgU2Nyb2xs
Q29udHJvbGxlcl9oCisjZGVmaW5lIFNjcm9sbENvbnRyb2xsZXJfaAorCisjaWYgRU5BQkxFKFJV
QkJFUl9CQU5ESU5HKQorCisjaW5jbHVkZSAiRmxvYXRQb2ludC5oIgorI2luY2x1ZGUgIkZsb2F0
U2l6ZS5oIgorI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCisjaW5jbHVkZSA8d3RmL05vbmNvcHlh
YmxlLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50
OworCitjbGFzcyBTY3JvbGxDb250cm9sbGVyQ2xpZW50IHsKK3Byb3RlY3RlZDoKKyAgICB2aXJ0
dWFsIH5TY3JvbGxDb250cm9sbGVyQ2xpZW50KCkgeyB9CisKK3B1YmxpYzoKKyAgICB2aXJ0dWFs
IGJvb2wgYWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50
JikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcoY29uc3Qg
UGxhdGZvcm1XaGVlbEV2ZW50JikgPSAwOworICAgIHZpcnR1YWwgSW50U2l6ZSBzdHJldGNoQW1v
dW50KCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBwaW5uZWRJbkRpcmVjdGlvbihjb25zdCBGbG9h
dFNpemUmKSA9IDA7CisgICAgdmlydHVhbCBib29sIGNhblNjcm9sbEhvcml6b250YWxseSgpID0g
MDsKKyAgICB2aXJ0dWFsIGJvb2wgY2FuU2Nyb2xsVmVydGljYWxseSgpID0gMDsKKyAgICB2aXJ0
dWFsIGJvb2wgc2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbERpcmVjdGlvbikgPSAw
OworCisgICAgLy8gUmV0dXJuIHRoZSBhYnNvbHV0ZSBzY3JvbGwgcG9zaXRpb24sIG5vdCByZWxh
dGl2ZSB0byB0aGUgc2Nyb2xsIG9yaWdpbi4KKyAgICB2aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50
IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSA9IDA7CisKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpbW1l
ZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6
ZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKKworICAg
IC8vIElmIHRoZSBjdXJyZW50IHNjcm9sbCBwb3NpdGlvbiBpcyB3aXRoaW4gdGhlIG92ZXJoYW5n
IGFyZWEsIHRoaXMgZnVuY3Rpb24gd2lsbCBjYXVzZQorICAgIC8vIHRoZSBwYWdlIHRvIHNjcm9s
bCB0byB0aGUgbmVhcmVzdCBib3VuZGFyeSBwb2ludC4KKyAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0
U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgPSAwOworfTsKKworY2xhc3MgU2Ny
b2xsQ29udHJvbGxlciB7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoU2Nyb2xsQ29udHJvbGxl
cik7CisKK3B1YmxpYzoKKyAgICBleHBsaWNpdCBTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRy
b2xsZXJDbGllbnQqKTsKKworICAgIGJvb2wgaGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9y
bVdoZWVsRXZlbnQmKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOworCisg
ICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3Q7CisKK3ByaXZhdGU6CisgICAg
dm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworICAgIHZvaWQgc25hcFJ1YmJlckJhbmQo
KTsKKworICAgIGJvb2wgc2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25z
dCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKworICAgIFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIG1f
Y2xpZW50OworCisgICAgYm9vbCBtX2luU2Nyb2xsR2VzdHVyZTsKKyAgICBib29sIG1fbW9tZW50
dW1TY3JvbGxJblByb2dyZXNzOworICAgIGJvb2wgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHM7Cisg
ICAgCisgICAgQ0ZUaW1lSW50ZXJ2YWwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Cisg
ICAgRmxvYXRTaXplIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YTsKKyAgICBGbG9hdFNpemUgbV9zdHJl
dGNoU2Nyb2xsRm9yY2U7CisgICAgRmxvYXRTaXplIG1fbW9tZW50dW1WZWxvY2l0eTsKKworICAg
IC8vIFJ1YmJlciBiYW5kIHN0YXRlLgorICAgIENGVGltZUludGVydmFsIG1fc3RhcnRUaW1lOwor
ICAgIEZsb2F0U2l6ZSBtX3N0YXJ0U3RyZXRjaDsKKyAgICBGbG9hdFBvaW50IG1fb3JpZ09yaWdp
bjsKKyAgICBGbG9hdFNpemUgbV9vcmlnVmVsb2NpdHk7CisKKyAgICBib29sIG1fc25hcFJ1YmJl
cmJhbmRUaW1lcklzQWN0aXZlOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQorCisjZW5kaWYgLy8gU2Nyb2xsQ29udHJvbGxl
cl9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29u
dHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2Nv
YS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzIsMTAgKzMyLDE2IEBA
CiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCiAjaW5jbHVkZSAiU2Nyb2xsVHlwZXMuaCIKICNpbmNs
dWRlIDx3dGYvTm9uY29weWFibGUuaD4KKyNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgorCisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyNpbmNsdWRlICJBeGlzU2Nyb2xsU25hcEFuaW1hdG9y
LmgiCisjZW5kaWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBQbGF0Zm9ybVdoZWVs
RXZlbnQ7CitjbGFzcyBTY3JvbGxhYmxlQXJlYTsKIAogY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNs
aWVudCB7CiBwcm90ZWN0ZWQ6CkBAIC01NSwzNiArNjEsNTUgQEAgcHVibGljOgogCiAgICAgdmly
dHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50
cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJl
cmJhbmRUaW1lcigpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKSA9IDA7CiAKICAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0
aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKICAgICAvLyB0
aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCiAgICAgdmly
dHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsK
KworI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAgICB2aXJ0
dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBm
bG9hdCBkZWx0YSkgPSAwOworI2VuZGlmCiB9OwogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05B
UCkKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXIgOiBwdWJsaWMgQXhpc1Njcm9sbFNuYXBBbmltYXRv
ckNsaWVudCB7CisjZWxzZQogY2xhc3MgU2Nyb2xsQ29udHJvbGxlciB7CisjZW5kaWYKICAgICBX
VEZfTUFLRV9OT05DT1BZQUJMRShTY3JvbGxDb250cm9sbGVyKTsKIAogcHVibGljOgogICAgIGV4
cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCopOwogCiAgICAg
Ym9vbCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOwotICAgIHZv
aWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIGlzUnViYmVyQmFuZElu
UHJvZ3Jlc3MoKSBjb25zdDsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRG
T1JNKE1BQykKKyAgICB2b2lkIHByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcChjb25zdCBQ
bGF0Zm9ybVdoZWVsRXZlbnQmKTsKKyAgICB2b2lkIHVwZGF0ZVNjcm9sbEFuaW1hdG9yc0FuZFRp
bWVycyhjb25zdCBTY3JvbGxhYmxlQXJlYSYpOworI2VuZGlmCisKIHByaXZhdGU6CisgICAgdm9p
ZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICB2b2lkIHN0b3BTbmFwUnViYmVyYmFu
ZFRpbWVyKCk7CiAgICAgdm9pZCBzbmFwUnViYmVyQmFuZCgpOworICAgIHZvaWQgc25hcFJ1YmJl
ckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIHNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250
YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CiAKLSAgICBTY3JvbGxDb250
cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCisgICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsK
KyAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsKKyAgICB2b2lkIHN0YXJ0
U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyk7CisgICAgdm9pZCBzdG9wU2Nyb2xsU25h
cFRpbWVyKFNjcm9sbEV2ZW50QXhpcyk7CisKKyAgICBMYXlvdXRVbml0IHNjcm9sbE9mZnNldE9u
QXhpcyhTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIHZvaWQgaW1tZWRpYXRlU2Nyb2xs
T25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEpIG92ZXJyaWRlOworI2VuZGlmCiAK
LSAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOwotICAgIGJvb2wgbV9tb21lbnR1bVNjcm9sbElu
UHJvZ3Jlc3M7Ci0gICAgYm9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xsczsKKyAgICBTY3JvbGxD
b250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKICAgICAKICAgICBDRlRpbWVJbnRlcnZhbCBtX2xh
c3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKICAgICBGbG9hdFNpemUgbV9vdmVyZmxvd1Njcm9s
bERlbHRhOwpAQCAtOTYsNyArMTIxLDE5IEBAIHByaXZhdGU6CiAgICAgRmxvYXRTaXplIG1fc3Rh
cnRTdHJldGNoOwogICAgIEZsb2F0UG9pbnQgbV9vcmlnT3JpZ2luOwogICAgIEZsb2F0U2l6ZSBt
X29yaWdWZWxvY2l0eTsKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiBtX3Nu
YXBSdWJiZXJiYW5kVGltZXI7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyAg
ICAvLyBGSVhNRTogRmluZCBhIHdheSB0byBjb25zb2xpZGF0ZSBib3RoIHRpbWVycyBpbnRvIG9u
ZSB2YXJpYWJsZS4KKyAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4g
bV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yOworICAgIHN0ZDo6dW5pcXVlX3B0cjxBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yPiBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yOworICAgIFJ1
bkxvb3A6OlRpbWVyPFNjcm9sbENvbnRyb2xsZXI+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1l
cjsKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiBtX3ZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyOworI2VuZGlmCiAKKyAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOworICAgIGJv
b2wgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3M7CisgICAgYm9vbCBtX2lnbm9yZU1vbWVudHVt
U2Nyb2xsczsKICAgICBib29sIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlOwogfTsKIApJ
bmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9s
bGVyLm1tCShyZXZpc2lvbiAxODA3MDIpCShmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9TY3JvbGxDb250cm9sbGVyLm1tOjE4MDcwMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0MDYg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEsIDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRl
ICJTY3JvbGxDb250cm9sbGVyLmgiCisKKyNpbmNsdWRlICJQbGF0Zm9ybVdoZWVsRXZlbnQuaCIK
KyNpbmNsdWRlICJXZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgiCisjaW5jbHVkZSA8c3lzL3N5c2N0
bC5oPgorI2luY2x1ZGUgPHN5cy90aW1lLmg+CisKKyNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcp
CisKK3N0YXRpYyBOU1RpbWVJbnRlcnZhbCBzeXN0ZW1VcHRpbWUoKQoreworICAgIGlmIChbW05T
UHJvY2Vzc0luZm8gcHJvY2Vzc0luZm9dIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc3lz
dGVtVXB0aW1lKV0pCisgICAgICAgIHJldHVybiBbW05TUHJvY2Vzc0luZm8gcHJvY2Vzc0luZm9d
IHN5c3RlbVVwdGltZV07CisKKyAgICAvLyBHZXQgaG93IGxvbmcgc3lzdGVtIGhhcyBiZWVuIHVw
LiBGb3VuZCBieSBsb29raW5nIGdldHRpbmcgImJvb3R0aW1lIiBmcm9tIHRoZSBrZXJuZWwuCisg
ICAgc3RhdGljIHN0cnVjdCB0aW1ldmFsIGJvb3R0aW1lID0gezAsIDB9OworICAgIGlmICghYm9v
dHRpbWUudHZfc2VjKSB7CisgICAgICAgIGludCBtaWJbMl0gPSB7Q1RMX0tFUk4sIEtFUk5fQk9P
VFRJTUV9OworICAgICAgICBzaXplX3Qgc2l6ZSA9IHNpemVvZihib290dGltZSk7CisgICAgICAg
IGlmICgtMSA9PSBzeXNjdGwobWliLCAyLCAmYm9vdHRpbWUsICZzaXplLCAwLCAwKSkKKyAgICAg
ICAgICAgIGJvb3R0aW1lLnR2X3NlYyA9IDA7CisgICAgfQorICAgIHN0cnVjdCB0aW1ldmFsIG5v
dzsKKyAgICBpZiAoYm9vdHRpbWUudHZfc2VjICYmIC0xICE9IGdldHRpbWVvZmRheSgmbm93LCAw
KSkgeworICAgICAgICBzdHJ1Y3QgdGltZXZhbCB1cHRpbWU7CisgICAgICAgIHRpbWVyc3ViKCZu
b3csICZib290dGltZSwgJnVwdGltZSk7CisgICAgICAgIE5TVGltZUludGVydmFsIHJlc3VsdCA9
IHVwdGltZS50dl9zZWMgKyAodXB0aW1lLnR2X3VzZWMgLyAxRSs2KTsKKyAgICAgICAgcmV0dXJu
IHJlc3VsdDsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKKworbmFtZXNwYWNlIFdlYkNvcmUg
eworCitzdGF0aWMgY29uc3QgZmxvYXQgc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCA9IDAu
MTBmOworc3RhdGljIGNvbnN0IGZsb2F0IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJh
dGlvID0gMTsKK3N0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVs
dGFCZWZvcmVTdHJldGNoID0gMTA7CisKK3N0YXRpYyBmbG9hdCBlbGFzdGljRGVsdGFGb3JUaW1l
RGVsdGEoZmxvYXQgaW5pdGlhbFBvc2l0aW9uLCBmbG9hdCBpbml0aWFsVmVsb2NpdHksIGZsb2F0
IGVsYXBzZWRUaW1lKQoreworICAgIHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yVGltZURlbHRh
KGluaXRpYWxQb3NpdGlvbiwgaW5pdGlhbFZlbG9jaXR5LCBlbGFwc2VkVGltZSk7Cit9CisKK3N0
YXRpYyBmbG9hdCBlbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEoZmxvYXQgZGVsdGEpCit7Cisg
ICAgcmV0dXJuIHdrTlNFbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEoZGVsdGEpOworfQorCitz
dGF0aWMgZmxvYXQgcmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKGZsb2F0IGRlbHRhKQorewor
ICAgIHJldHVybiB3a05TUmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKGRlbHRhKTsKK30KKwor
c3RhdGljIGZsb2F0IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpCit7CisgICAgc3RhdGljIGZsb2F0
IG11bHRpcGxpZXIgPSAtMTsKKyAgICBpZiAobXVsdGlwbGllciA8IDApIHsKKyAgICAgICAgbXVs
dGlwbGllciA9IFtbTlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdIGZsb2F0Rm9y
S2V5OkAiTlNTY3JvbGxXaGVlbE11bHRpcGxpZXIiXTsKKyAgICAgICAgaWYgKG11bHRpcGxpZXIg
PD0gMCkKKyAgICAgICAgICAgIG11bHRpcGxpZXIgPSAxOworICAgIH0KKyAgICByZXR1cm4gbXVs
dGlwbGllcjsKK30KKworU2Nyb2xsQ29udHJvbGxlcjo6U2Nyb2xsQ29udHJvbGxlcihTY3JvbGxD
b250cm9sbGVyQ2xpZW50KiBjbGllbnQpCisgICAgOiBtX2NsaWVudChjbGllbnQpCisgICAgLCBt
X2luU2Nyb2xsR2VzdHVyZShmYWxzZSkKKyAgICAsIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNz
KGZhbHNlKQorICAgICwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMoZmFsc2UpCisgICAgLCBtX2xh
c3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQorICAgICwgbV9zdGFydFRpbWUoMCkKKyAgICAs
IG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKGZhbHNlKQoreworfQorCitib29sIFNjcm9s
bENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3
aGVlbEV2ZW50KQoreworICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVl
bEV2ZW50UGhhc2VCZWdhbikgeworICAgICAgICAvLyBGaXJzdCwgY2hlY2sgaWYgd2Ugc2hvdWxk
IHJ1YmJlci1iYW5kIGF0IGFsbC4KKyAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVj
dGlvbihGbG9hdFNpemUoLXdoZWVsRXZlbnQuZGVsdGFYKCksIDApKQorICAgICAgICAgICAgJiYg
IXNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24od2hlZWxFdmVudCkpCisgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgbV9pblNjcm9sbEdlc3R1cmUgPSB0cnVl
OworICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOworICAgICAgICBt
X2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOworICAgICAgICBtX2xhc3RNb21lbnR1bVNj
cm9sbFRpbWVzdGFtcCA9IDA7CisgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6
ZSgpOworCisgICAgICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50LT5zdHJldGNo
QW1vdW50KCk7CisgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldFdpZHRoKHJlYm91bmRE
ZWx0YUZvckVsYXN0aWNEZWx0YShzdHJldGNoQW1vdW50LndpZHRoKCkpKTsKKyAgICAgICAgbV9z
dHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShz
dHJldGNoQW1vdW50LmhlaWdodCgpKSk7CisgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YSA9
IEZsb2F0U2l6ZSgpOworCisgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgaWYgKHdoZWVsRXZlbnQucGhhc2UoKSA9
PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVkKSB7CisgICAgICAgIHNuYXBSdWJiZXJCYW5k
KCk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAgIGJvb2wgaXNNb21lbnR1bVNj
cm9sbEV2ZW50ID0gKHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpICE9IFBsYXRmb3JtV2hlZWxF
dmVudFBoYXNlTm9uZSk7CisgICAgaWYgKG1faWdub3JlTW9tZW50dW1TY3JvbGxzICYmIChpc01v
bWVudHVtU2Nyb2xsRXZlbnQgfHwgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpKSB7Cisg
ICAgICAgIGlmICh3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZl
bnRQaGFzZUVuZGVkKSB7CisgICAgICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZh
bHNlOworICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgIH0KKworICAgIGZsb2F0IGRlbHRhWCA9IG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YS53aWR0aCgpOworICAgIGZsb2F0IGRlbHRhWSA9IG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWln
aHQoKTsKKworICAgIC8vIFJlc2V0IG92ZXJmbG93IHZhbHVlcyBiZWNhdXNlIHdlIG1heSBkZWNp
ZGUgdG8gcmVtb3ZlIGRlbHRhIGF0IHZhcmlvdXMgcG9pbnRzIGFuZCBwdXQgaXQgaW50byBvdmVy
Zmxvdy4KKyAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKKworICAgIElu
dFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7CisgICAgYm9v
bCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgPSBzdHJldGNoQW1vdW50LmhlaWdodCgpOworICAgIGJv
b2wgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgPSBzdHJldGNoQW1vdW50LndpZHRoKCk7CisKKyAg
ICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWDsKKyAgICBmbG9hdCBldmVudENvYWxlc2NlZERl
bHRhWTsKKworICAgIGlmIChpc1ZlcnRpY2FsbHlTdHJldGNoZWQgfHwgaXNIb3Jpem9udGFsbHlT
dHJldGNoZWQpIHsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAtd2hlZWxFdmVudC51
bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFYKCk7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVs
dGFZID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWSgpOworICAgIH0g
ZWxzZSB7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gLXdoZWVsRXZlbnQuZGVsdGFY
KCk7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gLXdoZWVsRXZlbnQuZGVsdGFZKCk7
CisgICAgfQorCisgICAgZGVsdGFYICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFYOworICAgIGRlbHRh
WSArPSBldmVudENvYWxlc2NlZERlbHRhWTsKKworICAgIC8vIFNsaWdodGx5IHByZWZlciBzY3Jv
bGxpbmcgdmVydGljYWxseSBieSBhcHBseWluZyB0aGUgPSBjYXNlIHRvIGRlbHRhWQorICAgIGlm
IChmYWJzZihkZWx0YVkpID49IGZhYnNmKGRlbHRhWCkpCisgICAgICAgIGRlbHRhWCA9IDA7Cisg
ICAgZWxzZQorICAgICAgICBkZWx0YVkgPSAwOworCisgICAgYm9vbCBzaG91bGRTdHJldGNoID0g
ZmFsc2U7CisKKyAgICBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlID0gd2hl
ZWxFdmVudC5tb21lbnR1bVBoYXNlKCk7CisKKyAgICAvLyBJZiB3ZSBhcmUgc3RhcnRpbmcgbW9t
ZW50dW0gc2Nyb2xsaW5nIHRoZW4gZG8gc29tZSBzZXR1cC4KKyAgICBpZiAoIW1fbW9tZW50dW1T
Y3JvbGxJblByb2dyZXNzICYmIChtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBo
YXNlQmVnYW4gfHwgbW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUNoYW5n
ZWQpKQorICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IHRydWU7CisKKyAgICBD
RlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSB3aGVlbEV2ZW50LnRpbWVzdGFtcCgpIC0gbV9sYXN0
TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7CisgICAgaWYgKG1faW5TY3JvbGxHZXN0dXJlIHx8IG1f
bW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7CisgICAgICAgIGlmIChtX2xhc3RNb21lbnR1bVNj
cm9sbFRpbWVzdGFtcCAmJiB0aW1lRGVsdGEgPiAwICYmIHRpbWVEZWx0YSA8IHNjcm9sbFZlbG9j
aXR5WmVyb2luZ1RpbWVvdXQpIHsKKyAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eS5zZXRX
aWR0aChldmVudENvYWxlc2NlZERlbHRhWCAvIChmbG9hdCl0aW1lRGVsdGEpOworICAgICAgICAg
ICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldEhlaWdodChldmVudENvYWxlc2NlZERlbHRhWSAvIChm
bG9hdCl0aW1lRGVsdGEpOworICAgICAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3Rh
bXAgPSB3aGVlbEV2ZW50LnRpbWVzdGFtcCgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSB3aGVlbEV2ZW50LnRpbWVzdGFtcCgp
OworICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisgICAgICAg
IH0KKworICAgICAgICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRjaGVkKSB7CisgICAgICAgICAgICBp
ZiAoIWlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkICYmIG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlv
bihGbG9hdFNpemUoZGVsdGFYLCAwKSkpIHsKKyAgICAgICAgICAgICAgICAvLyBTdHJldGNoaW5n
IG9ubHkgaW4gdGhlIHZlcnRpY2FsLgorICAgICAgICAgICAgICAgIGlmIChkZWx0YVkgJiYgKGZh
YnNmKGRlbHRhWCAvIGRlbHRhWSkgPCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRp
bykpCisgICAgICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICAgICAgZWxz
ZSBpZiAoZmFic2YoZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9y
ZVN0cmV0Y2gpIHsKKyAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNl
dFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKKyAgICAgICAg
ICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAg
ICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3Jv
bGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNl
IGlmIChpc0hvcml6b250YWxseVN0cmV0Y2hlZCkgeworICAgICAgICAgICAgLy8gU3RyZXRjaGlu
ZyBvbmx5IGluIHRoZSBob3Jpem9udGFsLgorICAgICAgICAgICAgaWYgKG1fY2xpZW50LT5waW5u
ZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkpIHsKKyAgICAgICAgICAgICAgICBp
ZiAoZGVsdGFYICYmIChmYWJzZihkZWx0YVkgLyBkZWx0YVgpIDwgcnViYmVyYmFuZERpcmVjdGlv
bkxvY2tTdHJldGNoUmF0aW8pKQorICAgICAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOworICAg
ICAgICAgICAgICAgIGVsc2UgaWYgKGZhYnNmKGRlbHRhWSkgPCBydWJiZXJiYW5kTWluaW11bVJl
cXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7CisgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZs
b3dTY3JvbGxEZWx0YS5zZXRIZWlnaHQobV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpICsg
ZGVsdGFZKTsKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAgICAgICAgICAgICAg
ICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldEhl
aWdodChtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBkZWx0YVkpOworICAgICAgICAg
ICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgLy8gTm90IHN0cmV0Y2hpbmcgYXQg
YWxsIHlldC4KKyAgICAgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxv
YXRTaXplKGRlbHRhWCwgZGVsdGFZKSkpIHsKKyAgICAgICAgICAgICAgICBpZiAoZmFic2YoZGVs
dGFZKSA+PSBmYWJzZihkZWx0YVgpKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChmYWJzZihk
ZWx0YVgpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgewor
ICAgICAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1f
b3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAg
ICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dT
Y3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgc2hvdWxkU3RyZXRjaCA9IHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgIH0K
KyAgICB9CisKKyAgICBpZiAoZGVsdGFYIHx8IGRlbHRhWSkgeworICAgICAgICBpZiAoIShzaG91
bGRTdHJldGNoIHx8IGlzVmVydGljYWxseVN0cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0cmV0
Y2hlZCkpIHsKKyAgICAgICAgICAgIGlmIChkZWx0YVkpIHsKKyAgICAgICAgICAgICAgICBkZWx0
YVkgKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7CisgICAgICAgICAgICAgICAgbV9jbGllbnQt
PmltbWVkaWF0ZVNjcm9sbEJ5KEZsb2F0U2l6ZSgwLCBkZWx0YVkpKTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIGlmIChkZWx0YVgpIHsKKyAgICAgICAgICAgICAgICBkZWx0YVggKj0gc2Ny
b2xsV2hlZWxNdWx0aXBsaWVyKCk7CisgICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0
ZVNjcm9sbEJ5KEZsb2F0U2l6ZShkZWx0YVgsIDApKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmFsbG93c0hvcml6b250YWxTdHJl
dGNoaW5nKHdoZWVsRXZlbnQpKSB7CisgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAg
ICAgICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9IDA7CisgICAgICAgICAgICB9IGVsc2Ug
aWYgKGRlbHRhWCAmJiAhaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYgIW1fY2xpZW50LT5waW5u
ZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCAwKSkpIHsKKyAgICAgICAgICAgICAgICBk
ZWx0YVggKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7CisKKyAgICAgICAgICAgICAgICBtX2Ns
aWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9h
dFNpemUoZGVsdGFYLCAwKSk7CisgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+YWxsb3dzVmVydGljYWxTdHJldGNo
aW5nKHdoZWVsRXZlbnQpKSB7CisgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAgICAgICAg
ICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IDA7CisgICAgICAgICAgICB9IGVsc2UgaWYg
KGRlbHRhWSAmJiAhaXNWZXJ0aWNhbGx5U3RyZXRjaGVkICYmICFtX2NsaWVudC0+cGlubmVkSW5E
aXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkpKSB7CisgICAgICAgICAgICAgICAgZGVsdGFZ
ICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOworCisgICAgICAgICAgICAgICAgbV9jbGllbnQt
PmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoRmxvYXRTaXpl
KDAsIGRlbHRhWSkpOworICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50LT5zdHJldGNo
QW1vdW50KCk7CisKKyAgICAgICAgICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykg
eworICAgICAgICAgICAgICAgIGlmICgobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0
U2l6ZShldmVudENvYWxlc2NlZERlbHRhWCwgZXZlbnRDb2FsZXNjZWREZWx0YVkpKSB8fCAoZmFi
c2YoZXZlbnRDb2FsZXNjZWREZWx0YVgpICsgZmFic2YoZXZlbnRDb2FsZXNjZWREZWx0YVkpIDw9
IDApKSAmJiBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCkgeworICAgICAgICAgICAgICAg
ICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IHRydWU7CisgICAgICAgICAgICAgICAgICAg
IG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gZmFsc2U7CisgICAgICAgICAgICAgICAgICAg
IHNuYXBSdWJiZXJCYW5kKCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorCisg
ICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChtX3N0cmV0Y2hTY3JvbGxG
b3JjZS53aWR0aCgpICsgZGVsdGFYKTsKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNl
LnNldEhlaWdodChtX3N0cmV0Y2hTY3JvbGxGb3JjZS5oZWlnaHQoKSArIGRlbHRhWSk7CisKKyAg
ICAgICAgICAgIEZsb2F0U2l6ZSBkYW1wZWREZWx0YShjZWlsZihlbGFzdGljRGVsdGFGb3JSZWJv
dW5kRGVsdGEobV9zdHJldGNoU2Nyb2xsRm9yY2Uud2lkdGgoKSkpLCBjZWlsZihlbGFzdGljRGVs
dGFGb3JSZWJvdW5kRGVsdGEobV9zdHJldGNoU2Nyb2xsRm9yY2UuaGVpZ2h0KCkpKSk7CisKKyAg
ICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNv
bnN0cmFpbnRzKGRhbXBlZERlbHRhIC0gc3RyZXRjaEFtb3VudCk7CisgICAgICAgIH0KKyAgICB9
CisKKyAgICBpZiAobV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgbW9tZW50dW1QaGFzZSA9
PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVkKSB7CisgICAgICAgIG1fbW9tZW50dW1TY3Jv
bGxJblByb2dyZXNzID0gZmFsc2U7CisgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0g
ZmFsc2U7CisgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gMDsKKyAgICB9
CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRvd2Fy
ZFplcm8oZmxvYXQgbnVtKQoreworICAgIHJldHVybiBudW0gPiAwID8gY2VpbGYobnVtIC0gMC41
ZikgOiBmbG9vcmYobnVtICsgMC41Zik7Cit9CisKK3N0YXRpYyBpbmxpbmUgZmxvYXQgcm91bmRU
b0RldmljZVBpeGVsVG93YXJkWmVybyhmbG9hdCBudW0pCit7CisgICAgZmxvYXQgcm91bmRlZE51
bSA9IHJvdW5kZihudW0pOworICAgIGlmIChmYWJzKG51bSAtIHJvdW5kZWROdW0pIDwgMC4xMjUp
CisgICAgICAgIG51bSA9IHJvdW5kZWROdW07CisKKyAgICByZXR1cm4gcm91bmRUb3dhcmRaZXJv
KG51bSk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJhbmRUaW1lckZp
cmVkKCkKK3sKKyAgICBpZiAoIW1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzIHx8IG1faWdub3Jl
TW9tZW50dW1TY3JvbGxzKSB7CisgICAgICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IFtO
U0RhdGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXSAtIG1fc3RhcnRUaW1lOworCisg
ICAgICAgIGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNpemUoKSkgeworICAgICAgICAgICAg
bV9zdGFydFN0cmV0Y2ggPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworICAgICAgICAgICAg
aWYgKG1fc3RhcnRTdHJldGNoID09IEZsb2F0U2l6ZSgpKSB7CisgICAgICAgICAgICAgICAgc3Rv
cFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKworICAgICAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9s
bEZvcmNlID0gRmxvYXRTaXplKCk7CisgICAgICAgICAgICAgICAgbV9zdGFydFRpbWUgPSAwOwor
ICAgICAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7CisgICAgICAgICAg
ICAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOworICAgICAgICAgICAgICAgIG1fb3Jp
Z1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICAgICAgfQorCisgICAgICAgICAgICBtX29yaWdPcmlnaW4gPSBtX2NsaWVudC0+YWJzb2x1dGVT
Y3JvbGxQb3NpdGlvbigpIC0gbV9zdGFydFN0cmV0Y2g7CisgICAgICAgICAgICBtX29yaWdWZWxv
Y2l0eSA9IG1fbW9tZW50dW1WZWxvY2l0eTsKKworICAgICAgICAgICAgLy8gSnVzdCBsaWtlIG5v
cm1hbCBzY3JvbGxpbmcsIHByZWZlciB2ZXJ0aWNhbCBydWJiZXJiYW5kaW5nCisgICAgICAgICAg
ICBpZiAoZmFic2YobV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCkpID49IGZhYnNmKG1fb3JpZ1ZlbG9j
aXR5LndpZHRoKCkpKQorICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldFdpZHRoKDAp
OworCisgICAgICAgICAgICAvLyBEb24ndCBydWJiZXItYmFuZCBob3Jpem9udGFsbHkgaWYgaXQn
cyBub3QgcG9zc2libGUgdG8gc2Nyb2xsIGhvcml6b250YWxseQorICAgICAgICAgICAgaWYgKCFt
X2NsaWVudC0+Y2FuU2Nyb2xsSG9yaXpvbnRhbGx5KCkpCisgICAgICAgICAgICAgICAgbV9vcmln
VmVsb2NpdHkuc2V0V2lkdGgoMCk7CisKKyAgICAgICAgICAgIC8vIERvbid0IHJ1YmJlci1iYW5k
IHZlcnRpY2FsbHkgaWYgaXQncyBub3QgcG9zc2libGUgdG8gc2Nyb2xsIHZlcnRpY2FsbHkKKyAg
ICAgICAgICAgIGlmICghbV9jbGllbnQtPmNhblNjcm9sbFZlcnRpY2FsbHkoKSkKKyAgICAgICAg
ICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRIZWlnaHQoMCk7CisgICAgICAgIH0KKworICAgICAg
ICBGbG9hdFBvaW50IGRlbHRhKHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZWxhc3RpY0Rl
bHRhRm9yVGltZURlbHRhKG1fc3RhcnRTdHJldGNoLndpZHRoKCksIC1tX29yaWdWZWxvY2l0eS53
aWR0aCgpLCAoZmxvYXQpdGltZURlbHRhKSksCisgICAgICAgICAgICByb3VuZFRvRGV2aWNlUGl4
ZWxUb3dhcmRaZXJvKGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShtX3N0YXJ0U3RyZXRjaC5oZWln
aHQoKSwgLW1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgpLCAoZmxvYXQpdGltZURlbHRhKSkpOworCisg
ICAgICAgIGlmIChmYWJzKGRlbHRhLngoKSkgPj0gMSB8fCBmYWJzKGRlbHRhLnkoKSkgPj0gMSkg
eworICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRF
ZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKGRlbHRhLngoKSwgZGVsdGEueSgpKSAtIG1fY2xpZW50
LT5zdHJldGNoQW1vdW50KCkpOworCisgICAgICAgICAgICBGbG9hdFNpemUgbmV3U3RyZXRjaCA9
IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7CisKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9s
bEZvcmNlLnNldFdpZHRoKHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJldGNoLndp
ZHRoKCkpKTsKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJv
dW5kRGVsdGFGb3JFbGFzdGljRGVsdGEobmV3U3RyZXRjaC5oZWlnaHQoKSkpOworICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgbV9jbGllbnQtPmFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3Vu
ZHNJZk5lY2Vzc2FyeSgpOworCisgICAgICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigp
OworICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2UgPSBGbG9hdFNpemUoKTsKKyAgICAg
ICAgICAgIG1fc3RhcnRUaW1lID0gMDsKKyAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0gRmxv
YXRTaXplKCk7CisgICAgICAgICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CisgICAg
ICAgICAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworICAgICAgICB9CisgICAgfSBl
bHNlIHsKKyAgICAgICAgbV9zdGFydFRpbWUgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVm
ZXJlbmNlRGF0ZV07CisgICAgICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7CisgICAg
fQorfQorCitib29sIFNjcm9sbENvbnRyb2xsZXI6OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBj
b25zdAoreworICAgIGlmICghbV9pblNjcm9sbEdlc3R1cmUgJiYgIW1fbW9tZW50dW1TY3JvbGxJ
blByb2dyZXNzICYmICFtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworCisgICAgcmV0dXJuICFtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpLmlzWmVy
bygpOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVy
KCkKK3sKKyAgICBtX2NsaWVudC0+c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBtX3Nu
YXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IGZhbHNlOworfQorCit2b2lkIFNjcm9sbENvbnRy
b2xsZXI6OnNuYXBSdWJiZXJCYW5kKCkKK3sKKyAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEg
PSBzeXN0ZW1VcHRpbWUoKSAtIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOworICAgIGlm
IChtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCAmJiB0aW1lRGVsdGEgPj0gc2Nyb2xsVmVs
b2NpdHlaZXJvaW5nVGltZW91dCkKKyAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRT
aXplKCk7CisKKyAgICBtX2luU2Nyb2xsR2VzdHVyZSA9IGZhbHNlOworCisgICAgaWYgKG1fc25h
cFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKQorICAgICAgICByZXR1cm47CisKKyAgICBtX3N0YXJ0
VGltZSA9IFtOU0RhdGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKKyAgICBtX3N0
YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQo
KTsKKyAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworCisgICAgbV9jbGllbnQtPnN0
YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpOworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0
aXZlID0gdHJ1ZTsKK30KKworYm9vbCBTY3JvbGxDb250cm9sbGVyOjpzaG91bGRSdWJiZXJCYW5k
SW5Ib3Jpem9udGFsRGlyZWN0aW9uKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVu
dCkKK3sKKyAgICBpZiAod2hlZWxFdmVudC5kZWx0YVgoKSA+IDApCisgICAgICAgIHJldHVybiBt
X2NsaWVudC0+c2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbExlZnQpOworICAgIGlm
ICh3aGVlbEV2ZW50LmRlbHRhWCgpIDwgMCkKKyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5zaG91
bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsUmlnaHQpOworCisgICAgcmV0dXJuIHRydWU7
Cit9CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJf
QkFORElORykKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRy
b2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Ny
b2xsQ29udHJvbGxlci5tbQkod29ya2luZyBjb3B5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQkod29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEs
MTEgQEAKICNpbmNsdWRlIDxzeXMvc3lzY3RsLmg+CiAjaW5jbHVkZSA8c3lzL3RpbWUuaD4KIAor
I2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApCisjaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmlt
YXRvci5oIgorI2luY2x1ZGUgIlNjcm9sbGFibGVBcmVhLmgiCisjZW5kaWYKKwogI2lmIEVOQUJM
RShSVUJCRVJfQkFORElORykKIAogc3RhdGljIE5TVGltZUludGVydmFsIHN5c3RlbVVwdGltZSgp
CkBAIC05MSwxNyArOTYsMzQgQEAgc3RhdGljIGZsb2F0IHNjcm9sbFdoZWVsTXVsdGlwbGllcigp
CiAKIFNjcm9sbENvbnRyb2xsZXI6OlNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNs
aWVudCogY2xpZW50KQogICAgIDogbV9jbGllbnQoY2xpZW50KQorICAgICwgbV9sYXN0TW9tZW50
dW1TY3JvbGxUaW1lc3RhbXAoMCkKKyAgICAsIG1fc3RhcnRUaW1lKDApCisgICAgLCBtX3NuYXBS
dWJiZXJiYW5kVGltZXIoUnVuTG9vcDo6Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJvbGxl
cjo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKQorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVAp
CisgICAgLCBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIoUnVuTG9vcDo6Y3VycmVudCgpLCB0
aGlzLCAmU2Nyb2xsQ29udHJvbGxlcjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKQor
ICAgICwgbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcihSdW5Mb29wOjpjdXJyZW50KCksIHRoaXMs
ICZTY3JvbGxDb250cm9sbGVyOjp2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKQorI2VuZGlm
CiAgICAgLCBtX2luU2Nyb2xsR2VzdHVyZShmYWxzZSkKICAgICAsIG1fbW9tZW50dW1TY3JvbGxJ
blByb2dyZXNzKGZhbHNlKQogICAgICwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMoZmFsc2UpCi0g
ICAgLCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQotICAgICwgbV9zdGFydFRpbWUo
MCkKICAgICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKGZhbHNlKQogewogfQogCiBi
b29sIFNjcm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVl
bEV2ZW50JiB3aGVlbEV2ZW50KQogeworI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBM
QVRGT1JNKE1BQykKKyAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikgeworICAg
ICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVs
RXZlbnQpOworICAgICAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hvdWxk
T3ZlcnJpZGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgIH0KKyAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7CisgICAg
ICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVl
bEV2ZW50KTsKKyAgICAgICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hv
dWxkT3ZlcnJpZGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgIH0KKyNlbmRpZgogICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZv
cm1XaGVlbEV2ZW50UGhhc2VCZWdhbikgewogICAgICAgICAvLyBGaXJzdCwgY2hlY2sgaWYgd2Ug
c2hvdWxkIHJ1YmJlci1iYW5kIGF0IGFsbC4KICAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJ
bkRpcmVjdGlvbihGbG9hdFNpemUoLXdoZWVsRXZlbnQuZGVsdGFYKCksIDApKQpAQCAtMzY1LDkg
KzM4NywxNCBAQCBib29sIFNjcm9sbENvbnRyb2xsZXI6OmlzUnViYmVyQmFuZEluUHJvCiAgICAg
cmV0dXJuICFtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpLmlzWmVybygpOwogfQogCit2b2lkIFNj
cm9sbENvbnRyb2xsZXI6OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpCit7CisgICAgbV9zbmFw
UnViYmVyYmFuZFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjApOworfQorCiB2b2lkIFNj
cm9sbENvbnRyb2xsZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKIHsKLSAgICBtX2NsaWVu
dC0+c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXIu
c3RvcCgpOwogICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFsc2U7CiB9CiAK
QEAgLTM4Nyw3ICs0MTQsNyBAQCB2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5k
KCkKICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CiAgICAgbV9vcmlnVmVsb2NpdHkg
PSBGbG9hdFNpemUoKTsKIAotICAgIG1fY2xpZW50LT5zdGFydFNuYXBSdWJiZXJiYW5kVGltZXIo
KTsKKyAgICBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICBtX3NuYXBSdWJiZXJiYW5k
VGltZXJJc0FjdGl2ZSA9IHRydWU7CiB9CiAKQEAgLTQwMSw2ICs0MjgsNjUgQEAgYm9vbCBTY3Jv
bGxDb250cm9sbGVyOjpzaG91bGRSdWJiZXJCYW5kSQogICAgIHJldHVybiB0cnVlOwogfQogCisj
aWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6cHJvY2Vz
c1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxF
dmVudCkKK3sKKyAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAgICAg
bV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50
KTsKKyAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX2hv
cml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7
Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6dXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5kVGlt
ZXJzKGNvbnN0IFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkKK3sKKyAgICAvLyBGSVhN
RTogQ3VycmVudGx5LCBzY3JvbGwgc25hcCBhbmltYXRvcnMgYXJlIHJlY3JlYXRlZCBldmVuIHRo
b3VnaCB0aGUgc25hcCBvZmZzZXRzIGFsb25lIGNhbiBiZSB1cGRhdGVkLgorICAgIGlmIChzY3Jv
bGxhYmxlQXJlYS5ob3Jpem9udGFsU25hcE9mZnNldHMoKSkKKyAgICAgICAgbV9ob3Jpem9udGFs
U2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yPih0aGlzLCBzY3JvbGxhYmxlQXJlYS5ob3Jpem9udGFsU25hcE9mZnNldHMoKSwgU2Nyb2xs
RXZlbnRBeGlzOjpIb3Jpem9udGFsKTsKKyAgICBlbHNlIGlmIChtX2hvcml6b250YWxTY3JvbGxT
bmFwQW5pbWF0b3IpCisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51
bGxwdHI7CisKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFwT2Zmc2V0cygpKQor
ICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxB
eGlzU2Nyb2xsU25hcEFuaW1hdG9yPih0aGlzLCBzY3JvbGxhYmxlQXJlYS52ZXJ0aWNhbFNuYXBP
ZmZzZXRzKCksIFNjcm9sbEV2ZW50QXhpczo6VmVydGljYWwpOworICAgIGVsc2UgaWYgKG1fdmVy
dGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5p
bWF0b3IgPSBudWxscHRyOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0YXJ0U2Nyb2xs
U25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyBheGlzKQoreworICAgIFJ1bkxvb3A6OlRpbWVyPFNj
cm9sbENvbnRyb2xsZXI+JiBzY3JvbGxTbmFwVGltZXIgPSBheGlzID09IFNjcm9sbEV2ZW50QXhp
czo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA6IG1fdmVydGljYWxT
Y3JvbGxTbmFwVGltZXI7CisgICAgaWYgKCFzY3JvbGxTbmFwVGltZXIuaXNBY3RpdmUoKSkKKyAg
ICAgICAgc2Nyb2xsU25hcFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjApOworfQorCit2
b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlz
IGF4aXMpCit7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4mIHNjcm9sbFNu
YXBUaW1lciA9IGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9ob3Jpem9u
dGFsU2Nyb2xsU25hcFRpbWVyIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKKyAgICBzY3Jv
bGxTbmFwVGltZXIuc3RvcCgpOworfQorICAgIAordm9pZCBTY3JvbGxDb250cm9sbGVyOjpob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQoreworICAgIGlmIChtX2hvcml6b250YWxTY3Jv
bGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+
c2Nyb2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6
OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQoreworICAgIGlmIChtX3ZlcnRpY2FsU2Ny
b2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5z
Y3JvbGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Cit9CisKK0xheW91dFVuaXQgU2Nyb2xsQ29udHJv
bGxlcjo6c2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzKQoreworICAgIHJl
dHVybiBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKGF4aXMpOworfQorCit2b2lkIFNjcm9s
bENvbnRyb2xsZXI6OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcywg
ZmxvYXQgZGVsdGEpCit7CisgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbE9uQXhpcyhheGlz
LCBkZWx0YSk7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYg
Ly8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oCShyZXZpc2lvbiAxODA3NzQp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
CSh3b3JraW5nIGNvcHkpCkBAIC01Nyw4ICs1Nyw4IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFs
IH5BeGlzU2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50KCkgeyB9CiAKIHB1YmxpYzoKLSAgICB2aXJ0
dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykgPSAwOwot
ICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBm
bG9hdCB2ZWxvY2l0eSkgPSAwOworICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRP
bkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNj
cm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IHZlbG9jaXR5KSA9IDA7CiAgICAgdmly
dHVhbCB2b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykgPSAwOwogICAg
IHZpcnR1YWwgdm9pZCBzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykgPSAwOwog
fTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFuaW1h
dG9yLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Ny
b2xsU25hcEFuaW1hdG9yLm1tCShyZXZpc2lvbiAxODA3NzQpCisrKyBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5tbQkod29ya2luZyBjb3B5KQpAQCAt
MTE3LDcgKzExNyw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6aGFuZGxlV2hlZWwK
ICAgICAgICAgLy8gQmVnaW4gdHJhY2tpbmcgd2hlZWwgZGVsdGFzIGZvciBnbGlkZSBwcmVkaWN0
aW9uLgogICAgICAgICBlbmRTY3JvbGxTbmFwQW5pbWF0aW9uKFNjcm9sbFNuYXBTdGF0ZTo6VXNl
ckludGVyYWN0aW9uKTsKICAgICAgICAgcHVzaEluaXRpYWxXaGVlbERlbHRhKHdoZWVsRGVsdGEp
OwotICAgICAgICBtX2JlZ2luVHJhY2tpbmdXaGVlbERlbHRhT2Zmc2V0ID0gbV9jbGllbnQtPnNj
cm9sbE9mZnNldEluQXhpcyhtX2F4aXMpOworICAgICAgICBtX2JlZ2luVHJhY2tpbmdXaGVlbERl
bHRhT2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4aXMpOwogICAgICAg
ICBicmVhazsKIAogICAgIGNhc2UgV2hlZWxFdmVudFN0YXR1czo6SW5lcnRpYWxTY3JvbGxpbmc6
CkBAIC0xNTMsNyArMTUzLDcgQEAgdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpzY3JvbGxT
bmFwQQogICAgIEFTU0VSVChtX2N1cnJlbnRTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRp
bmcgfHwgbV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyk7CiAgICAg
ZmxvYXQgZGVsdGEgPSBtX2N1cnJlbnRTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OlNuYXBwaW5n
ID8gY29tcHV0ZVNuYXBEZWx0YSgpIDogY29tcHV0ZUdsaWRlRGVsdGEoKTsKICAgICBpZiAoZGVs
dGEpCi0gICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxJbkF4aXMobV9heGlzLCBkZWx0
YSk7CisgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxPbkF4aXMobV9heGlzLCBkZWx0
YSk7CiAgICAgZWxzZQogICAgICAgICBlbmRTY3JvbGxTbmFwQW5pbWF0aW9uKFNjcm9sbFNuYXBT
dGF0ZTo6RGVzdGluYXRpb25SZWFjaGVkKTsKIH0KQEAgLTE2MSw3ICsxNjEsNyBAQCB2b2lkIEF4
aXNTY3JvbGxTbmFwQW5pbWF0b3I6OnNjcm9sbFNuYXBBCiB2b2lkIEF4aXNTY3JvbGxTbmFwQW5p
bWF0b3I6OmJlZ2luU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3RhdGUgbmV3U3RhdGUp
CiB7CiAgICAgQVNTRVJUKG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xpZGluZyB8fCBu
ZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OlNuYXBwaW5nKTsKLSAgICBMYXlvdXRVbml0IG9m
ZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAgICBMYXlvdXRV
bml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlzKTsKICAgICBm
bG9hdCBpbml0aWFsV2hlZWxEZWx0YSA9IG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xp
ZGluZyA/IGF2ZXJhZ2VJbml0aWFsV2hlZWxEZWx0YSgpIDogMDsKICAgICBMYXlvdXRVbml0IHBy
b2plY3RlZFNjcm9sbERlc3RpbmF0aW9uID0gbmV3U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpH
bGlkaW5nID8gbV9iZWdpblRyYWNraW5nV2hlZWxEZWx0YU9mZnNldCArIExheW91dFVuaXQocHJv
amVjdGVkSW5lcnRpYWxTY3JvbGxEaXN0YW5jZShpbml0aWFsV2hlZWxEZWx0YSkpIDogb2Zmc2V0
OwogICAgIHByb2plY3RlZFNjcm9sbERlc3RpbmF0aW9uID0gc3RkOjptaW4oc3RkOjptYXgocHJv
amVjdGVkU2Nyb2xsRGVzdGluYXRpb24sIG1fc25hcE9mZnNldHMtPmZpcnN0KCkpLCBtX3NuYXBP
ZmZzZXRzLT5sYXN0KCkpOwpAQCAtMjAzLDcgKzIwMyw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBB
bmltYXRvcjo6ZW5kU2Nyb2xsU24KIC8vIHJlbGF0aW9uc2hpcCBvZiB0aGUgZGlzdGFuY2UgdHJh
dmVsZWQsIGNsYW1wZWQgYnkgYXJiaXRyYXJ5IG1pbiBhbmQgbWF4IHZhbHVlcy4KIGZsb2F0IEF4
aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmNvbXB1dGVTbmFwRGVsdGEoKSBjb25zdAogewotICAgIExh
eW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldEluQXhpcyhtX2F4aXMpOwor
ICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4
aXMpOwogICAgIGJvb2wgY2FuQ29tcHV0ZVNuYXAgPSAgKG1faW5pdGlhbE9mZnNldCA8PSBvZmZz
ZXQgJiYgb2Zmc2V0IDwgbV90YXJnZXRPZmZzZXQpIHx8IChtX3RhcmdldE9mZnNldCA8IG9mZnNl
dCAmJiBvZmZzZXQgPD0gbV9pbml0aWFsT2Zmc2V0KTsKICAgICBpZiAobV9jdXJyZW50U3RhdGUg
IT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyB8fCAhY2FuQ29tcHV0ZVNuYXApCiAgICAgICAg
IHJldHVybiAwOwpAQCAtMjM3LDcgKzIzNyw3IEBAIGZsb2F0IEF4aXNTY3JvbGxTbmFwQW5pbWF0
b3I6OmNvbXB1dGVTbmEKIC8vIGFuZCBWRi4gVGh1cywgd2UgY2FuIGV4cHJlc3Mgb3VyIGdsaWRp
bmcgZXF1YXRpb24gYWxsIGluIHRlcm1zIG9mIFYwLCBWRiBhbmQgdC4KIGZsb2F0IEF4aXNTY3Jv
bGxTbmFwQW5pbWF0b3I6OmNvbXB1dGVHbGlkZURlbHRhKCkgY29uc3QKIHsKLSAgICBMYXlvdXRV
bml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAgICBM
YXlvdXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlzKTsK
ICAgICBib29sIGNhbkNvbXB1dGVHbGlkZSA9IChtX2luaXRpYWxPZmZzZXQgPD0gb2Zmc2V0ICYm
IG9mZnNldCA8IG1fdGFyZ2V0T2Zmc2V0KSB8fCAobV90YXJnZXRPZmZzZXQgPCBvZmZzZXQgJiYg
b2Zmc2V0IDw9IG1faW5pdGlhbE9mZnNldCk7CiAgICAgaWYgKG1fY3VycmVudFN0YXRlICE9IFNj
cm9sbFNuYXBTdGF0ZTo6R2xpZGluZyB8fCAhY2FuQ29tcHV0ZUdsaWRlKQogICAgICAgICByZXR1
cm4gMDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1h
Yy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmlt
YXRvck1hYy5oCShyZXZpc2lvbiAxODA3NzQpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvU2Nyb2xsQW5pbWF0b3JNYWMuaAkod29ya2luZyBjb3B5KQpAQCAtMzIsNyArMzIsNiBAQAog
I2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKICNpbmNsdWRl
ICJTY3JvbGxBbmltYXRvci5oIgotI2luY2x1ZGUgIlNjcm9sbENvbnRyb2xsZXIuaCIKICNpbmNs
dWRlICJUaW1lci5oIgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIApAQCAtNDIsMTUgKzQx
LDExIEBAIE9CSkNfQ0xBU1MgV2ViU2Nyb2xsYmFyUGFpbnRlckRlbGVnYXRlOwogCiB0eXBlZGVm
IGlkIFNjcm9sbGJhclBhaW50ZXJDb250cm9sbGVyOwogCi0jaWYgIUVOQUJMRShSVUJCRVJfQkFO
RElORykKLWNsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgeyB9OwotI2VuZGlmCi0KIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgU2Nyb2xsYmFyOwogCi1jbGFzcyBTY3JvbGxBbmltYXRv
ck1hYyA6IHB1YmxpYyBTY3JvbGxBbmltYXRvciwgcHJpdmF0ZSBTY3JvbGxDb250cm9sbGVyQ2xp
ZW50IHsKK2NsYXNzIFNjcm9sbEFuaW1hdG9yTWFjIDogcHVibGljIFNjcm9sbEFuaW1hdG9yIHsK
IAogcHVibGljOgogICAgIFNjcm9sbEFuaW1hdG9yTWFjKFNjcm9sbGFibGVBcmVhJik7CkBAIC0x
NTAsMTcgKzE0NSwxMSBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgV2ViQ29yZTo6SW50UG9pbnQg
YWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBpbW1l
ZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6
ZSYpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBG
bG9hdFNpemUmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTbmFwUnViYmVyYmFu
ZFRpbWVyKCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRp
bWVyKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9C
b3VuZHNJZk5lY2Vzc2FyeSgpIG92ZXJyaWRlOwogCiAgICAgYm9vbCBwaW5uZWRJbkRpcmVjdGlv
bihmbG9hdCBkZWx0YVgsIGZsb2F0IGRlbHRhWSk7Ci0gICAgdm9pZCBzbmFwUnViYmVyQmFuZFRp
bWVyRmlyZWQoKTsKIAogICAgIGJvb2wgaXNBbHJlYWR5UGlubmVkSW5EaXJlY3Rpb25PZkdlc3R1
cmUoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiwgU2Nyb2xsRXZlbnRBeGlzKTsKLQotICAgIFNj
cm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOwotICAgIFRpbWVyIG1fc25hcFJ1YmJl
ckJhbmRUaW1lcjsKICNlbmRpZgogCiAgICAgYm9vbCBtX2hhdmVTY3JvbGxlZFNpbmNlUGFnZUxv
YWQ7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1h
dG9yTWFjLm1tCShyZXZpc2lvbiAxODA3NzQpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTY0MywxMCArNjQzLDYg
QEAgU2Nyb2xsQW5pbWF0b3JNYWM6OlNjcm9sbEFuaW1hdG9yTWFjKFNjcgogICAgIDogU2Nyb2xs
QW5pbWF0b3Ioc2Nyb2xsYWJsZUFyZWEpCiAgICAgLCBtX2luaXRpYWxTY3JvbGxiYXJQYWludFRp
bWVyKCp0aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6OmluaXRpYWxTY3JvbGxiYXJQYWludFRpbWVy
RmlyZWQpCiAgICAgLCBtX3NlbmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXIoKnRoaXMsICZTY3Jv
bGxBbmltYXRvck1hYzo6c2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lckZpcmVkKQotI2lmIEVO
QUJMRShSVUJCRVJfQkFORElORykKLSAgICAsIG1fc2Nyb2xsQ29udHJvbGxlcih0aGlzKQotICAg
ICwgbV9zbmFwUnViYmVyQmFuZFRpbWVyKCp0aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6OnNuYXBS
dWJiZXJCYW5kVGltZXJGaXJlZCkKLSNlbmRpZgogICAgICwgbV9oYXZlU2Nyb2xsZWRTaW5jZVBh
Z2VMb2FkKGZhbHNlKQogICAgICwgbV9uZWVkc1Njcm9sbGVyU3R5bGVVcGRhdGUoZmFsc2UpCiB7
CkBAIC0xMjcwLDIxICsxMjY2LDYgQEAgdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6aW1tZWRpYXRl
U2Nyb2xsQgogICAgIG1fY3VycmVudFBvc1kgPSBuZXdQb3MueSgpOwogICAgIG5vdGlmeVBvc2l0
aW9uQ2hhbmdlZChhZGp1c3RlZERlbHRhKTsKIH0KLQotdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6
c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkKLXsKLSAgICBtX3NuYXBSdWJiZXJCYW5kVGltZXIu
c3RhcnRSZXBlYXRpbmcoMS4wIC8gNjAuMCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKLXsKLSAgICBtX3NuYXBSdWJiZXJCYW5kVGltZXIu
c3RvcCgpOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVy
RmlyZWQoKQotewotICAgIG1fc2Nyb2xsQ29udHJvbGxlci5zbmFwUnViYmVyQmFuZFRpbWVyRmly
ZWQoKTsKLX0KICNlbmRpZgogCiB2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjp1cGRhdGVTY3JvbGxl
clN0eWxlKCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9s
bGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENv
bnRyb2xsZXIuaAkocmV2aXNpb24gMTgwNzc0KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbENvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMSwxMDcgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVN
RU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgotICovCi0KLSNpZm5kZWYgU2Nyb2xsQ29udHJvbGxlcl9oCi0jZGVmaW5lIFNjcm9sbENv
bnRyb2xsZXJfaAotCi0jaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotCi0jaW5jbHVkZSAiRmxv
YXRQb2ludC5oIgotI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgotI2luY2x1ZGUgIlNjcm9sbFR5cGVz
LmgiCi0jaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsK
LQotY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50OwotCi1jbGFzcyBTY3JvbGxDb250cm9sbGVyQ2xp
ZW50IHsKLXByb3RlY3RlZDoKLSAgICB2aXJ0dWFsIH5TY3JvbGxDb250cm9sbGVyQ2xpZW50KCkg
eyB9Ci0KLXB1YmxpYzoKLSAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hp
bmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JikgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBhbGxv
d3NWZXJ0aWNhbFN0cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JikgPSAwOwotICAg
IHZpcnR1YWwgSW50U2l6ZSBzdHJldGNoQW1vdW50KCkgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBw
aW5uZWRJbkRpcmVjdGlvbihjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCBib29s
IGNhblNjcm9sbEhvcml6b250YWxseSgpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgY2FuU2Nyb2xs
VmVydGljYWxseSgpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUnViYmVyQmFuZEluRGly
ZWN0aW9uKFNjcm9sbERpcmVjdGlvbikgPSAwOwotCi0gICAgLy8gUmV0dXJuIHRoZSBhYnNvbHV0
ZSBzY3JvbGwgcG9zaXRpb24sIG5vdCByZWxhdGl2ZSB0byB0aGUgc2Nyb2xsIG9yaWdpbi4KLSAg
ICB2aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSA9IDA7
Ci0KLSAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJikg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRn
ZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgc3Rh
cnRTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1
YmJlcmJhbmRUaW1lcigpID0gMDsKLQotICAgIC8vIElmIHRoZSBjdXJyZW50IHNjcm9sbCBwb3Np
dGlvbiBpcyB3aXRoaW4gdGhlIG92ZXJoYW5nIGFyZWEsIHRoaXMgZnVuY3Rpb24gd2lsbCBjYXVz
ZQotICAgIC8vIHRoZSBwYWdlIHRvIHNjcm9sbCB0byB0aGUgbmVhcmVzdCBib3VuZGFyeSBwb2lu
dC4KLSAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNz
YXJ5KCkgPSAwOwotfTsKLQotY2xhc3MgU2Nyb2xsQ29udHJvbGxlciB7Ci0gICAgV1RGX01BS0Vf
Tk9OQ09QWUFCTEUoU2Nyb2xsQ29udHJvbGxlcik7Ci0KLXB1YmxpYzoKLSAgICBleHBsaWNpdCBT
Y3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqKTsKLQotICAgIGJvb2wgaGFu
ZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKLSAgICB2b2lkIHNuYXBS
dWJiZXJCYW5kVGltZXJGaXJlZCgpOwotCi0gICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNz
KCkgY29uc3Q7Ci0KLXByaXZhdGU6Ci0gICAgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigp
OwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmQoKTsKLQotICAgIGJvb2wgc2hvdWxkUnViYmVyQmFu
ZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKLQotICAg
IFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIG1fY2xpZW50OwotCi0gICAgYm9vbCBtX2luU2Nyb2xs
R2VzdHVyZTsKLSAgICBib29sIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzOwotICAgIGJvb2wg
bV9pZ25vcmVNb21lbnR1bVNjcm9sbHM7Ci0gICAgCi0gICAgQ0ZUaW1lSW50ZXJ2YWwgbV9sYXN0
TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Ci0gICAgRmxvYXRTaXplIG1fb3ZlcmZsb3dTY3JvbGxE
ZWx0YTsKLSAgICBGbG9hdFNpemUgbV9zdHJldGNoU2Nyb2xsRm9yY2U7Ci0gICAgRmxvYXRTaXpl
IG1fbW9tZW50dW1WZWxvY2l0eTsKLQotICAgIC8vIFJ1YmJlciBiYW5kIHN0YXRlLgotICAgIENG
VGltZUludGVydmFsIG1fc3RhcnRUaW1lOwotICAgIEZsb2F0U2l6ZSBtX3N0YXJ0U3RyZXRjaDsK
LSAgICBGbG9hdFBvaW50IG1fb3JpZ09yaWdpbjsKLSAgICBGbG9hdFNpemUgbV9vcmlnVmVsb2Np
dHk7Ci0KLSAgICBib29sIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlOwotfTsKLQotfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQot
Ci0jZW5kaWYgLy8gU2Nyb2xsQ29udHJvbGxlcl9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbQkocmV2aXNpb24gMTgwNzc0KQorKysg
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW0JKHdvcmtpbmcg
Y29weSkKQEAgLTEsNDA2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEsIDIwMTQt
MjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRl
ICJjb25maWcuaCIKLSNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCi0KLSNpbmNsdWRlICJQ
bGF0Zm9ybVdoZWVsRXZlbnQuaCIKLSNpbmNsdWRlICJXZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgi
Ci0jaW5jbHVkZSA8c3lzL3N5c2N0bC5oPgotI2luY2x1ZGUgPHN5cy90aW1lLmg+Ci0KLSNpZiBF
TkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0KLXN0YXRpYyBOU1RpbWVJbnRlcnZhbCBzeXN0ZW1VcHRp
bWUoKQotewotICAgIGlmIChbW05TUHJvY2Vzc0luZm8gcHJvY2Vzc0luZm9dIHJlc3BvbmRzVG9T
ZWxlY3RvcjpAc2VsZWN0b3Ioc3lzdGVtVXB0aW1lKV0pCi0gICAgICAgIHJldHVybiBbW05TUHJv
Y2Vzc0luZm8gcHJvY2Vzc0luZm9dIHN5c3RlbVVwdGltZV07Ci0KLSAgICAvLyBHZXQgaG93IGxv
bmcgc3lzdGVtIGhhcyBiZWVuIHVwLiBGb3VuZCBieSBsb29raW5nIGdldHRpbmcgImJvb3R0aW1l
IiBmcm9tIHRoZSBrZXJuZWwuCi0gICAgc3RhdGljIHN0cnVjdCB0aW1ldmFsIGJvb3R0aW1lID0g
ezAsIDB9OwotICAgIGlmICghYm9vdHRpbWUudHZfc2VjKSB7Ci0gICAgICAgIGludCBtaWJbMl0g
PSB7Q1RMX0tFUk4sIEtFUk5fQk9PVFRJTUV9OwotICAgICAgICBzaXplX3Qgc2l6ZSA9IHNpemVv
Zihib290dGltZSk7Ci0gICAgICAgIGlmICgtMSA9PSBzeXNjdGwobWliLCAyLCAmYm9vdHRpbWUs
ICZzaXplLCAwLCAwKSkKLSAgICAgICAgICAgIGJvb3R0aW1lLnR2X3NlYyA9IDA7Ci0gICAgfQot
ICAgIHN0cnVjdCB0aW1ldmFsIG5vdzsKLSAgICBpZiAoYm9vdHRpbWUudHZfc2VjICYmIC0xICE9
IGdldHRpbWVvZmRheSgmbm93LCAwKSkgewotICAgICAgICBzdHJ1Y3QgdGltZXZhbCB1cHRpbWU7
Ci0gICAgICAgIHRpbWVyc3ViKCZub3csICZib290dGltZSwgJnVwdGltZSk7Ci0gICAgICAgIE5T
VGltZUludGVydmFsIHJlc3VsdCA9IHVwdGltZS50dl9zZWMgKyAodXB0aW1lLnR2X3VzZWMgLyAx
RSs2KTsKLSAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICB9Ci0gICAgcmV0dXJuIDA7Ci19Ci0K
LQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdGF0aWMgY29uc3QgZmxvYXQgc2Nyb2xsVmVsb2Np
dHlaZXJvaW5nVGltZW91dCA9IDAuMTBmOwotc3RhdGljIGNvbnN0IGZsb2F0IHJ1YmJlcmJhbmRE
aXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvID0gMTsKLXN0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJi
YW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoID0gMTA7Ci0KLXN0YXRpYyBmbG9h
dCBlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEoZmxvYXQgaW5pdGlhbFBvc2l0aW9uLCBmbG9hdCBp
bml0aWFsVmVsb2NpdHksIGZsb2F0IGVsYXBzZWRUaW1lKQotewotICAgIHJldHVybiB3a05TRWxh
c3RpY0RlbHRhRm9yVGltZURlbHRhKGluaXRpYWxQb3NpdGlvbiwgaW5pdGlhbFZlbG9jaXR5LCBl
bGFwc2VkVGltZSk7Ci19Ci0KLXN0YXRpYyBmbG9hdCBlbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVs
dGEoZmxvYXQgZGVsdGEpCi17Ci0gICAgcmV0dXJuIHdrTlNFbGFzdGljRGVsdGFGb3JSZWJvdW5k
RGVsdGEoZGVsdGEpOwotfQotCi1zdGF0aWMgZmxvYXQgcmVib3VuZERlbHRhRm9yRWxhc3RpY0Rl
bHRhKGZsb2F0IGRlbHRhKQotewotICAgIHJldHVybiB3a05TUmVib3VuZERlbHRhRm9yRWxhc3Rp
Y0RlbHRhKGRlbHRhKTsKLX0KLQotc3RhdGljIGZsb2F0IHNjcm9sbFdoZWVsTXVsdGlwbGllcigp
Ci17Ci0gICAgc3RhdGljIGZsb2F0IG11bHRpcGxpZXIgPSAtMTsKLSAgICBpZiAobXVsdGlwbGll
ciA8IDApIHsKLSAgICAgICAgbXVsdGlwbGllciA9IFtbTlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRV
c2VyRGVmYXVsdHNdIGZsb2F0Rm9yS2V5OkAiTlNTY3JvbGxXaGVlbE11bHRpcGxpZXIiXTsKLSAg
ICAgICAgaWYgKG11bHRpcGxpZXIgPD0gMCkKLSAgICAgICAgICAgIG11bHRpcGxpZXIgPSAxOwot
ICAgIH0KLSAgICByZXR1cm4gbXVsdGlwbGllcjsKLX0KLQotU2Nyb2xsQ29udHJvbGxlcjo6U2Ny
b2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBjbGllbnQpCi0gICAgOiBtX2Ns
aWVudChjbGllbnQpCi0gICAgLCBtX2luU2Nyb2xsR2VzdHVyZShmYWxzZSkKLSAgICAsIG1fbW9t
ZW50dW1TY3JvbGxJblByb2dyZXNzKGZhbHNlKQotICAgICwgbV9pZ25vcmVNb21lbnR1bVNjcm9s
bHMoZmFsc2UpCi0gICAgLCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQotICAgICwg
bV9zdGFydFRpbWUoMCkKLSAgICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKGZhbHNl
KQotewotfQotCi1ib29sIFNjcm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQoY29uc3Qg
UGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQotewotICAgIGlmICh3aGVlbEV2ZW50LnBo
YXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbikgewotICAgICAgICAvLyBGaXJz
dCwgY2hlY2sgaWYgd2Ugc2hvdWxkIHJ1YmJlci1iYW5kIGF0IGFsbC4KLSAgICAgICAgaWYgKG1f
Y2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoLXdoZWVsRXZlbnQuZGVsdGFYKCks
IDApKQotICAgICAgICAgICAgJiYgIXNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rp
b24od2hlZWxFdmVudCkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAgICAgbV9p
blNjcm9sbEdlc3R1cmUgPSB0cnVlOwotICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVz
cyA9IGZhbHNlOwotICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOwotICAg
ICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IDA7Ci0gICAgICAgIG1fbW9tZW50
dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgICAgIEludFNpemUgc3RyZXRjaEFtb3Vu
dCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0gICAgICAgIG1fc3RyZXRjaFNjcm9sbEZv
cmNlLnNldFdpZHRoKHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShzdHJldGNoQW1vdW50Lndp
ZHRoKCkpKTsKLSAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91bmRE
ZWx0YUZvckVsYXN0aWNEZWx0YShzdHJldGNoQW1vdW50LmhlaWdodCgpKSk7Ci0gICAgICAgIG1f
b3ZlcmZsb3dTY3JvbGxEZWx0YSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgICAgIHN0b3BTbmFwUnVi
YmVyYmFuZFRpbWVyKCk7Ci0KLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotCi0gICAgaWYg
KHdoZWVsRXZlbnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVkKSB7Ci0g
ICAgICAgIHNuYXBSdWJiZXJCYW5kKCk7Ci0gICAgICAgIHJldHVybiB0cnVlOwotICAgIH0KLQot
ICAgIGJvb2wgaXNNb21lbnR1bVNjcm9sbEV2ZW50ID0gKHdoZWVsRXZlbnQubW9tZW50dW1QaGFz
ZSgpICE9IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlTm9uZSk7Ci0gICAgaWYgKG1faWdub3JlTW9t
ZW50dW1TY3JvbGxzICYmIChpc01vbWVudHVtU2Nyb2xsRXZlbnQgfHwgbV9zbmFwUnViYmVyYmFu
ZFRpbWVySXNBY3RpdmUpKSB7Ci0gICAgICAgIGlmICh3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2Uo
KSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVkKSB7Ci0gICAgICAgICAgICBtX2lnbm9y
ZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOwotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAg
ICAgIH0KLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIGZsb2F0IGRlbHRhWCA9
IG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpOwotICAgIGZsb2F0IGRlbHRhWSA9IG1fb3Zl
cmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKTsKLQotICAgIC8vIFJlc2V0IG92ZXJmbG93IHZhbHVl
cyBiZWNhdXNlIHdlIG1heSBkZWNpZGUgdG8gcmVtb3ZlIGRlbHRhIGF0IHZhcmlvdXMgcG9pbnRz
IGFuZCBwdXQgaXQgaW50byBvdmVyZmxvdy4KLSAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEgPSBG
bG9hdFNpemUoKTsKLQotICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50LT5zdHJl
dGNoQW1vdW50KCk7Ci0gICAgYm9vbCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgPSBzdHJldGNoQW1v
dW50LmhlaWdodCgpOwotICAgIGJvb2wgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgPSBzdHJldGNo
QW1vdW50LndpZHRoKCk7Ci0KLSAgICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWDsKLSAgICBm
bG9hdCBldmVudENvYWxlc2NlZERlbHRhWTsKLQotICAgIGlmIChpc1ZlcnRpY2FsbHlTdHJldGNo
ZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWRE
ZWx0YVggPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFYKCk7Ci0gICAg
ICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNjcm9s
bGluZ0RlbHRhWSgpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFY
ID0gLXdoZWVsRXZlbnQuZGVsdGFYKCk7Ci0gICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0g
LXdoZWVsRXZlbnQuZGVsdGFZKCk7Ci0gICAgfQotCi0gICAgZGVsdGFYICs9IGV2ZW50Q29hbGVz
Y2VkRGVsdGFYOwotICAgIGRlbHRhWSArPSBldmVudENvYWxlc2NlZERlbHRhWTsKLQotICAgIC8v
IFNsaWdodGx5IHByZWZlciBzY3JvbGxpbmcgdmVydGljYWxseSBieSBhcHBseWluZyB0aGUgPSBj
YXNlIHRvIGRlbHRhWQotICAgIGlmIChmYWJzZihkZWx0YVkpID49IGZhYnNmKGRlbHRhWCkpCi0g
ICAgICAgIGRlbHRhWCA9IDA7Ci0gICAgZWxzZQotICAgICAgICBkZWx0YVkgPSAwOwotCi0gICAg
Ym9vbCBzaG91bGRTdHJldGNoID0gZmFsc2U7Ci0KLSAgICBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFz
ZSBtb21lbnR1bVBoYXNlID0gd2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCk7Ci0KLSAgICAvLyBJ
ZiB3ZSBhcmUgc3RhcnRpbmcgbW9tZW50dW0gc2Nyb2xsaW5nIHRoZW4gZG8gc29tZSBzZXR1cC4K
LSAgICBpZiAoIW1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzICYmIChtb21lbnR1bVBoYXNlID09
IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4gfHwgbW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9y
bVdoZWVsRXZlbnRQaGFzZUNoYW5nZWQpKQotICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9n
cmVzcyA9IHRydWU7Ci0KLSAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSB3aGVlbEV2ZW50
LnRpbWVzdGFtcCgpIC0gbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Ci0gICAgaWYgKG1f
aW5TY3JvbGxHZXN0dXJlIHx8IG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7Ci0gICAgICAg
IGlmIChtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCAmJiB0aW1lRGVsdGEgPiAwICYmIHRp
bWVEZWx0YSA8IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQpIHsKLSAgICAgICAgICAgIG1f
bW9tZW50dW1WZWxvY2l0eS5zZXRXaWR0aChldmVudENvYWxlc2NlZERlbHRhWCAvIChmbG9hdCl0
aW1lRGVsdGEpOwotICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldEhlaWdodChldmVu
dENvYWxlc2NlZERlbHRhWSAvIChmbG9hdCl0aW1lRGVsdGEpOwotICAgICAgICAgICAgbV9sYXN0
TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSB3aGVlbEV2ZW50LnRpbWVzdGFtcCgpOwotICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSB3
aGVlbEV2ZW50LnRpbWVzdGFtcCgpOwotICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5ID0g
RmxvYXRTaXplKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRj
aGVkKSB7Ci0gICAgICAgICAgICBpZiAoIWlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkICYmIG1fY2xp
ZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCAwKSkpIHsKLSAgICAgICAg
ICAgICAgICAvLyBTdHJldGNoaW5nIG9ubHkgaW4gdGhlIHZlcnRpY2FsLgotICAgICAgICAgICAg
ICAgIGlmIChkZWx0YVkgJiYgKGZhYnNmKGRlbHRhWCAvIGRlbHRhWSkgPCBydWJiZXJiYW5kRGly
ZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbykpCi0gICAgICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7
Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5p
bXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKLSAgICAgICAgICAgICAgICAgICAgbV9v
dmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgp
ICsgZGVsdGFYKTsKLSAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAg
ICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNl
dFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfSBlbHNlIGlmIChpc0hvcml6b250YWxseVN0cmV0Y2hlZCkgewotICAg
ICAgICAgICAgLy8gU3RyZXRjaGluZyBvbmx5IGluIHRoZSBob3Jpem9udGFsLgotICAgICAgICAg
ICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkp
IHsKLSAgICAgICAgICAgICAgICBpZiAoZGVsdGFYICYmIChmYWJzZihkZWx0YVkgLyBkZWx0YVgp
IDwgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8pKQotICAgICAgICAgICAgICAg
ICAgICBkZWx0YVkgPSAwOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZhYnNmKGRlbHRhWSkg
PCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0gICAgICAg
ICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRIZWlnaHQobV9vdmVyZmxvd1Nj
cm9sbERlbHRhLmhlaWdodCgpICsgZGVsdGFZKTsKLSAgICAgICAgICAgICAgICAgICAgZGVsdGFZ
ID0gMDsKLSAgICAgICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgbV9vdmVy
Zmxvd1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkg
KyBkZWx0YVkpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAg
Ly8gTm90IHN0cmV0Y2hpbmcgYXQgYWxsIHlldC4KLSAgICAgICAgICAgIGlmIChtX2NsaWVudC0+
cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgZGVsdGFZKSkpIHsKLSAgICAgICAg
ICAgICAgICBpZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJzZihkZWx0YVgpKSB7Ci0gICAgICAgICAg
ICAgICAgICAgIGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERl
bHRhQmVmb3JlU3RyZXRjaCkgewotICAgICAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Nj
cm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFY
KTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7Ci0gICAgICAgICAgICAgICAg
ICAgIH0gZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRh
LnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKLSAgICAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgc2hvdWxkU3RyZXRjaCA9IHRydWU7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoZGVsdGFYIHx8IGRlbHRhWSkg
ewotICAgICAgICBpZiAoIShzaG91bGRTdHJldGNoIHx8IGlzVmVydGljYWxseVN0cmV0Y2hlZCB8
fCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCkpIHsKLSAgICAgICAgICAgIGlmIChkZWx0YVkpIHsK
LSAgICAgICAgICAgICAgICBkZWx0YVkgKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7Ci0gICAg
ICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5KEZsb2F0U2l6ZSgwLCBkZWx0
YVkpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChkZWx0YVgpIHsKLSAgICAgICAg
ICAgICAgICBkZWx0YVggKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7Ci0gICAgICAgICAgICAg
ICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5KEZsb2F0U2l6ZShkZWx0YVgsIDApKTsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlmICghbV9jbGllbnQt
PmFsbG93c0hvcml6b250YWxTdHJldGNoaW5nKHdoZWVsRXZlbnQpKSB7Ci0gICAgICAgICAgICAg
ICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9IDA7
Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKGRlbHRhWCAmJiAhaXNIb3Jpem9udGFsbHlTdHJldGNo
ZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCAwKSkp
IHsKLSAgICAgICAgICAgICAgICBkZWx0YVggKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7Ci0K
LSAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVu
dEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGFYLCAwKSk7Ci0gICAgICAgICAgICAgICAg
ZGVsdGFYID0gMDsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+
YWxsb3dzVmVydGljYWxTdHJldGNoaW5nKHdoZWVsRXZlbnQpKSB7Ci0gICAgICAgICAgICAgICAg
ZGVsdGFZID0gMDsKLSAgICAgICAgICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IDA7Ci0g
ICAgICAgICAgICB9IGVsc2UgaWYgKGRlbHRhWSAmJiAhaXNWZXJ0aWNhbGx5U3RyZXRjaGVkICYm
ICFtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkpKSB7Ci0g
ICAgICAgICAgICAgICAgZGVsdGFZICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotCi0gICAg
ICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdl
Q29uc3RyYWludHMoRmxvYXRTaXplKDAsIGRlbHRhWSkpOwotICAgICAgICAgICAgICAgIGRlbHRh
WSA9IDA7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIEludFNpemUgc3RyZXRjaEFtb3Vu
dCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0KLSAgICAgICAgICAgIGlmIChtX21vbWVu
dHVtU2Nyb2xsSW5Qcm9ncmVzcykgewotICAgICAgICAgICAgICAgIGlmICgobV9jbGllbnQtPnBp
bm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShldmVudENvYWxlc2NlZERlbHRhWCwgZXZlbnRDb2Fs
ZXNjZWREZWx0YVkpKSB8fCAoZmFic2YoZXZlbnRDb2FsZXNjZWREZWx0YVgpICsgZmFic2YoZXZl
bnRDb2FsZXNjZWREZWx0YVkpIDw9IDApKSAmJiBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCkgewotICAgICAgICAgICAgICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IHRydWU7
Ci0gICAgICAgICAgICAgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gZmFsc2U7
Ci0gICAgICAgICAgICAgICAgICAgIHNuYXBSdWJiZXJCYW5kKCk7Ci0gICAgICAgICAgICAgICAg
fQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRX
aWR0aChtX3N0cmV0Y2hTY3JvbGxGb3JjZS53aWR0aCgpICsgZGVsdGFYKTsKLSAgICAgICAgICAg
IG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChtX3N0cmV0Y2hTY3JvbGxGb3JjZS5oZWln
aHQoKSArIGRlbHRhWSk7Ci0KLSAgICAgICAgICAgIEZsb2F0U2l6ZSBkYW1wZWREZWx0YShjZWls
ZihlbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEobV9zdHJldGNoU2Nyb2xsRm9yY2Uud2lkdGgo
KSkpLCBjZWlsZihlbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEobV9zdHJldGNoU2Nyb2xsRm9y
Y2UuaGVpZ2h0KCkpKSk7Ci0KLSAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxC
eVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGRhbXBlZERlbHRhIC0gc3RyZXRjaEFtb3Vu
dCk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAobV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jl
c3MgJiYgbW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVkKSB7Ci0g
ICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gZmFsc2U7Ci0gICAgICAgIG1faWdu
b3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7Ci0gICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xs
VGltZXN0YW1wID0gMDsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotc3RhdGljIGlu
bGluZSBmbG9hdCByb3VuZFRvd2FyZFplcm8oZmxvYXQgbnVtKQotewotICAgIHJldHVybiBudW0g
PiAwID8gY2VpbGYobnVtIC0gMC41ZikgOiBmbG9vcmYobnVtICsgMC41Zik7Ci19Ci0KLXN0YXRp
YyBpbmxpbmUgZmxvYXQgcm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhmbG9hdCBudW0pCi17
Ci0gICAgZmxvYXQgcm91bmRlZE51bSA9IHJvdW5kZihudW0pOwotICAgIGlmIChmYWJzKG51bSAt
IHJvdW5kZWROdW0pIDwgMC4xMjUpCi0gICAgICAgIG51bSA9IHJvdW5kZWROdW07Ci0KLSAgICBy
ZXR1cm4gcm91bmRUb3dhcmRaZXJvKG51bSk7Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6
c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCkKLXsKLSAgICBpZiAoIW1fbW9tZW50dW1TY3JvbGxJ
blByb2dyZXNzIHx8IG1faWdub3JlTW9tZW50dW1TY3JvbGxzKSB7Ci0gICAgICAgIENGVGltZUlu
dGVydmFsIHRpbWVEZWx0YSA9IFtOU0RhdGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRl
XSAtIG1fc3RhcnRUaW1lOwotCi0gICAgICAgIGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNp
emUoKSkgewotICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBtX2NsaWVudC0+c3RyZXRjaEFt
b3VudCgpOwotICAgICAgICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZsb2F0U2l6ZSgpKSB7
Ci0gICAgICAgICAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLQotICAgICAgICAg
ICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlID0gRmxvYXRTaXplKCk7Ci0gICAgICAgICAgICAg
ICAgbV9zdGFydFRpbWUgPSAwOwotICAgICAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0gRmxv
YXRTaXplKCk7Ci0gICAgICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOwot
ICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0gICAgICAgICAg
ICAgICAgcmV0dXJuOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBtX29yaWdPcmlnaW4g
PSBtX2NsaWVudC0+YWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpIC0gbV9zdGFydFN0cmV0Y2g7Ci0g
ICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IG1fbW9tZW50dW1WZWxvY2l0eTsKLQotICAgICAg
ICAgICAgLy8gSnVzdCBsaWtlIG5vcm1hbCBzY3JvbGxpbmcsIHByZWZlciB2ZXJ0aWNhbCBydWJi
ZXJiYW5kaW5nCi0gICAgICAgICAgICBpZiAoZmFic2YobV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCkp
ID49IGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LndpZHRoKCkpKQotICAgICAgICAgICAgICAgIG1fb3Jp
Z1ZlbG9jaXR5LnNldFdpZHRoKDApOwotCi0gICAgICAgICAgICAvLyBEb24ndCBydWJiZXItYmFu
ZCBob3Jpem9udGFsbHkgaWYgaXQncyBub3QgcG9zc2libGUgdG8gc2Nyb2xsIGhvcml6b250YWxs
eQotICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Nyb2xsSG9yaXpvbnRhbGx5KCkpCi0g
ICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7Ci0KLSAgICAgICAgICAg
IC8vIERvbid0IHJ1YmJlci1iYW5kIHZlcnRpY2FsbHkgaWYgaXQncyBub3QgcG9zc2libGUgdG8g
c2Nyb2xsIHZlcnRpY2FsbHkKLSAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmNhblNjcm9sbFZl
cnRpY2FsbHkoKSkKLSAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRIZWlnaHQoMCk7
Ci0gICAgICAgIH0KLQotICAgICAgICBGbG9hdFBvaW50IGRlbHRhKHJvdW5kVG9EZXZpY2VQaXhl
bFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKG1fc3RhcnRTdHJldGNoLndpZHRo
KCksIC1tX29yaWdWZWxvY2l0eS53aWR0aCgpLCAoZmxvYXQpdGltZURlbHRhKSksCi0gICAgICAg
ICAgICByb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0
YShtX3N0YXJ0U3RyZXRjaC5oZWlnaHQoKSwgLW1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgpLCAoZmxv
YXQpdGltZURlbHRhKSkpOwotCi0gICAgICAgIGlmIChmYWJzKGRlbHRhLngoKSkgPj0gMSB8fCBm
YWJzKGRlbHRhLnkoKSkgPj0gMSkgewotICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNj
cm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKGRlbHRhLngoKSwg
ZGVsdGEueSgpKSAtIG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCkpOwotCi0gICAgICAgICAgICBG
bG9hdFNpemUgbmV3U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0KLSAgICAg
ICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldFdpZHRoKHJlYm91bmREZWx0YUZvckVsYXN0
aWNEZWx0YShuZXdTdHJldGNoLndpZHRoKCkpKTsKLSAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9s
bEZvcmNlLnNldEhlaWdodChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEobmV3U3RyZXRjaC5o
ZWlnaHQoKSkpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgbV9jbGllbnQtPmFkanVz
dFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpOwotCi0gICAgICAgICAgICBzdG9w
U25hcFJ1YmJlcmJhbmRUaW1lcigpOwotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Ug
PSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAgIG1fc3RhcnRUaW1lID0gMDsKLSAgICAgICAgICAg
IG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7Ci0gICAgICAgICAgICBtX29yaWdPcmlnaW4g
PSBGbG9hdFBvaW50KCk7Ci0gICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgp
OwotICAgICAgICB9Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgbV9zdGFydFRpbWUgPSBbTlNEYXRl
IHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07Ci0gICAgICAgIG1fc3RhcnRTdHJldGNo
ID0gRmxvYXRTaXplKCk7Ci0gICAgfQotfQotCi1ib29sIFNjcm9sbENvbnRyb2xsZXI6OmlzUnVi
YmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdAotewotICAgIGlmICghbV9pblNjcm9sbEdlc3R1cmUg
JiYgIW1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzICYmICFtX3NuYXBSdWJiZXJiYW5kVGltZXJJ
c0FjdGl2ZSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgcmV0dXJuICFtX2NsaWVudC0+
c3RyZXRjaEFtb3VudCgpLmlzWmVybygpOwotfQotCi12b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0
b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKLXsKLSAgICBtX2NsaWVudC0+c3RvcFNuYXBSdWJiZXJi
YW5kVGltZXIoKTsKLSAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IGZhbHNlOwot
fQotCi12b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kKCkKLXsKLSAgICBDRlRp
bWVJbnRlcnZhbCB0aW1lRGVsdGEgPSBzeXN0ZW1VcHRpbWUoKSAtIG1fbGFzdE1vbWVudHVtU2Ny
b2xsVGltZXN0YW1wOwotICAgIGlmIChtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCAmJiB0
aW1lRGVsdGEgPj0gc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCkKLSAgICAgICAgbV9tb21l
bnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0KLSAgICBtX2luU2Nyb2xsR2VzdHVyZSA9IGZh
bHNlOwotCi0gICAgaWYgKG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICBtX3N0YXJ0VGltZSA9IFtOU0RhdGUgdGltZUludGVydmFsU2luY2VSZWZl
cmVuY2VEYXRlXTsKLSAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOwotICAgIG1fb3Jp
Z09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKLSAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgp
OwotCi0gICAgbV9jbGllbnQtPnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpOwotICAgIG1fc25h
cFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gdHJ1ZTsKLX0KLQotYm9vbCBTY3JvbGxDb250cm9s
bGVyOjpzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYgd2hlZWxFdmVudCkKLXsKLSAgICBpZiAod2hlZWxFdmVudC5kZWx0YVgoKSA+
IDApCi0gICAgICAgIHJldHVybiBtX2NsaWVudC0+c2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9u
KFNjcm9sbExlZnQpOwotICAgIGlmICh3aGVlbEV2ZW50LmRlbHRhWCgpIDwgMCkKLSAgICAgICAg
cmV0dXJuIG1fY2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsUmlnaHQp
OwotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2Vu
ZGlmIC8vIEVOQUJMRShSVUJCRVJfQkFORElORykK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247682</attachid>
            <date>2015-03-02 11:18:06 -0800</date>
            <delta_ts>2015-03-02 11:57:41 -0800</delta_ts>
            <desc>Patch v2 (Add missing copy-header command. Fix iOS build)</desc>
            <filename>bug-142102-20150302111749.patch</filename>
            <type>text/plain</type>
            <size>83347</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE1LTAzLTAyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorICAg
ICAgICAKKyAgICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxp
bmcgY2xhc3NlczoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1
bkxvb3A6OlRpbWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgor
ICAgICAgICAgICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQ
b2ludCBhbmQgUnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENv
bnRyb2xsZXIgZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNo
YXJpbmcgd2l0aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9y
e01hY30gLT4gU2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNl
dEluQXhpcyAtPiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0
ZVNjcm9sbEluQXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdw
bGF0Zm9ybS9jb2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1h
a2Ugc3VyZSB0aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9s
bAorICAgICAgICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFu
ZGxlZCIgY2FzZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0
aW1lciBhbmQgc29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxD
b250cm9sbGVyIGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRv
IGNsZWFuIHVwIHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyk6IEFkZCB0ZW1w
b3Jhcnkgc3R1YiBuZWVkZWQKKyAgICAgICAgdW50aWwgQnVnIDE0MTk3MyBpcyBjb21wbGV0ZWQu
KS4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6U2Nyb2xsQW5pbWF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnBy
b2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEp1c3QgY2FsbCB0aGUgU2Nyb2xsQ29udHJv
bGxlciBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyk6IFJlbmFtZWQgZnJvbSBzY3JvbGxPZmZz
ZXRJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0
SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMpOiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmg6IENvcGllZCBmcm9tIHBsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmguCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5tbTogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIu
bW0uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVy
KTogVXBkYXRlIHRvIGluaXRpYWxpemUgbmV3IHRpbWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOiBVcGRhdGUgdG8gaGFuZGxlIFNjcm9s
bCBTbmFwIFBvaW50IGV2ZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBNYW5hZ2UgYW5pbWF0aW9u
IHRpbWVycyBsb2NhbGx5LCBkbyBub3QKKyAgICAgICAgcmVxdWlyZSBjbGllbnQgdG8gbWFpbnRh
aW4gdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEFkZGVkLiAoTW92ZWQgZnJvbSBTY3JvbGxBbmlt
YXRvck1hYykKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6
OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEaXR0by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIpOiAg
RGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
OiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW06IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFj
OjpTY3JvbGxBbmltYXRvck1hYyk6IFJlbW92ZSB1bnVzZWQgUnViYmVyYmFuZCB0aW1lcnMgKG5v
dyB0aGF0IHRoaXMgaXMKKyAgICAgICAgY29udHJvbGxlZCBpbiB0aGUgU2Nyb2xsQ29udHJvbGxl
cikKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmg6IFJlbW92ZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06IFJlbW92ZWQuCisKIDIwMTUtMDMt
MDIgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVyZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRl
IGluIEdyYXBoaWNzTGF5ZXJDQS5oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkK
QEAgLTc4Niw4ICs3ODYsNiBAQAogCQkxQTkyN0ZEMzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTky
N0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5ODk1NkIwQUE3OEY4MDAwNUVGNUVG
IC8qIFVSTENGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBOTg5NTZBMEFBNzhGODAwMDVFRjVFRiAvKiBVUkxDRi5jcHAgKi87IH07Ci0JCTFBQTg0
RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07Ci0JCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1
MyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFB
QTg3OTkwMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJhdGVneS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODc5OEYxMUNCRTg0NjAwM0M2NjRG
IC8qIFBsdWdpblN0cmF0ZWd5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMUFBQUREQTMxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQURE
QTExNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovOyB9OwogCQkxQUFBRERB
NDE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMjQ0NSw2ICsyNDQzLDggQEAKIAkJN0E3NEVDQkQxMDE4MzlEQTAwQkY5MzlFIC8q
IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNzRFQ0JDMTAxODM5REEwMEJGOTM5RSAvKiBKU0lu
c3BlY3RvckZyb250ZW5kSG9zdEN1c3RvbS5jcHAgKi87IH07CiAJCTdBOTM4Njg1MThEQ0MxNDUw
MEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgyMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNw
cCAqLzsgfTsKIAkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThEQ0Mx
NDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87IH07CisJCTdBOUFERkYzMUFBMTE2MzgwMEQy
NzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJv
bGxlci5oICovOyB9OworCQk3QTlBREZGNDFBQTExNjNCMDBEMjczM0MgLyogU2Nyb2xsQ29udHJv
bGxlci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
RkZBNDEyMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3JvbGxDb250cm9sbGVyLm1tICovOyB9OwogCQk3
QUEzQTY5OTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBM0E2OTUxOTRBNjRFNzAwMUNC
RDI0IC8qIFRpbGVDb250cm9sbGVyLmNwcCAqLzsgfTsKIAkJN0FBM0E2OUExOTRBNjRFNzAwMUNC
RDI0IC8qIFRpbGVDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA3QUEzQTY5NjE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRyb2xsZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk3QUEz
QTY5QjE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUdyaWQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FBM0E2OTcxOTRBNjRFNzAwMUNCRDI0IC8qIFRp
bGVHcmlkLmNwcCAqLzsgfTsKQEAgLTc4MDksOCArNzgwOSw2IEBACiAJCTFBOTI3RkQwMTQxNkEx
NUIwMDNBODNDOCAvKiBucHJ1bnRpbWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gbnBydW50aW1lLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBOTI3RkQxMTQx
NkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IG5wdHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE5ODk1NkEwQUE3
OEY4MDAwNUVGNUVGIC8qIFVSTENGLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBVUkxDRi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTFBQTg0RjAy
MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAub2JqY3BwOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxlci5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRy
b2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUE4Nzk4RjExQ0JFODQ2MDAzQzY2
NEYgLyogUGx1Z2luU3RyYXRlZ3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UGx1Z2luU3RyYXRlZ3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQUREQTEx
NERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTFBQUFEREEyMTREQjQwOUYwMEFGNjRCMyAvKiBTY3JvbGxpbmdUcmVlLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1RyZWUuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTk2NjcsNiArOTY2NSw4IEBACiAJCTdBRjlCMjA5MThDRkI1
RjIwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBKU1ZUVFJlZ2lvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3QUY5QjIw
QTE4Q0ZCNUYzMDBDNjRCRUYgLyogSlNWVFRSZWdpb25MaXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVlRUUmVnaW9uTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTdBRjlCMjBCMThDRkI1RjMwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbkxp
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNWVFRSZWdpb25MaXN0Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTdBRkZBNDExMUFBMTAzOUQwMEYwMTI1QiAv
KiBTY3JvbGxDb250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNj
cm9sbENvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FGRkE0MTIx
QUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk3QzJCREQzQjE3QzdGOThCMDAzOEZGMTUgLyogSlNET01HbG9iYWxP
YmplY3RUYXNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRE9N
R2xvYmFsT2JqZWN0VGFzay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDMkJE
RDNDMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDM0I3OTZGMTkwODc1N0IwMEI0N0EyRCAvKiBVc2VyTWVz
c2FnZUhhbmRsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVXNl
ck1lc3NhZ2VIYW5kbGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2NTg3
LDggKzE2NTg3LDYgQEAKIAkJCQlCQzUxMTU2RDEyQjE3NDlDMDBDOTY3NTQgLyogU2Nyb2xsQW5p
bWF0b3JNYWMubW0gKi8sCiAJCQkJQkM4Qjg1M0MwRTdDN0YxMTAwQUI2OTg0IC8qIFNjcm9sbGJh
clRoZW1lTWFjLmggKi8sCiAJCQkJQkNFRjg2OUUwRTg0NEU5RDAwQTg1Q0Q1IC8qIFNjcm9sbGJh
clRoZW1lTWFjLm1tICovLAotCQkJCTFBQTg0RjAzMTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxD
b250cm9sbGVyLmggKi8sCi0JCQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENv
bnRyb2xsZXIubW0gKi8sCiAJCQkJOTM1MzY3NkEwOUFFRDg4QjAwRDM1Q0Q2IC8qIFNjcm9sbFZp
ZXdNYWMubW0gKi8sCiAJCQkJMDc3QUYxNDExOEY0QjFCQjAwMDFFRDYxIC8qIFNlcmlhbGl6ZWRQ
bGF0Zm9ybVJlcHJlc2VudGF0aW9uTWFjLmggKi8sCiAJCQkJMDc3QUYxNDIxOEY0QjFCQjAwMDFF
RDYxIC8qIFNlcmlhbGl6ZWRQbGF0Zm9ybVJlcHJlc2VudGF0aW9uTWFjLm1tICovLApAQCAtMTg2
OTgsNiArMTg2OTYsOCBAQAogCQkJCTFBMDQwOUYyMUE0MzY3NUMwMDlFNDdGMyAvKiBNYWNoU2Vu
ZFJpZ2h0LmNwcCAqLywKIAkJCQkxQTA0MDlEQjFBNDM2MEI1MDA5RTQ3RjMgLyogTWFjaFNlbmRS
aWdodC5oICovLAogCQkJCUFEQjZCMjk3MThGQjkwMjQwMDgxOTYzRSAvKiBNZW1vcnlQcmVzc3Vy
ZUhhbmRsZXJDb2NvYS5tbSAqLywKKwkJCQk3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Ny
b2xsQ29udHJvbGxlci5oICovLAorCQkJCTdBRkZBNDEyMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3Jv
bGxDb250cm9sbGVyLm1tICovLAogCQkJCTVENTk3NUIxMTk2MzVGMTEwMEQwMDg3OCAvKiBTeXN0
ZW1WZXJzaW9uLmggKi8sCiAJCQkJNUQ1OTc1QjIxOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZl
cnNpb24ubW0gKi8sCiAJCQkJN0NDNTY0QjkxOEJBQzcyMDAwMUI5NjUyIC8qIFRlbGVwaG9uZU51
bWJlckRldGVjdG9yQ29jb2EuY3BwICovLApAQCAtMjQ2NDgsNiArMjQ2NDgsNyBAQAogCQkJCUE4
RUE3Q0I1MEExOTJCOUMwMEE4RUY1RiAvKiBIVE1MUGFyYWdyYXBoRWxlbWVudC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQTg3MUQ0NTgwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxQYXJhbUVsZW1lbnQu
aCBpbiBIZWFkZXJzICovLAogCQkJCTkzRTJBMzA3MTIzRTlEQzAwMDlGRTEyQSAvKiBIVE1MUGFy
c2VySWRpb21zLmggaW4gSGVhZGVycyAqLywKKwkJCQk3QTlBREZGMzFBQTExNjM4MDBEMjczM0Mg
LyogU2Nyb2xsQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTczRjQxOEExNjlCOTVG
RjAwMDZCRjYwIC8qIEhUTUxQYXJzZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzdC
Mzg3MTEyMjg4M0U5MDBCODFGRjggLyogSFRNTFBhcnNlclNjaGVkdWxlci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQTg3MUQ0NTYwQTEyN0NCQzAwQjEyQTY4IC8qIEhUTUxQbHVnSW5FbGVtZW50Lmgg
aW4gSGVhZGVycyAqLywKQEAgLTI2MTAxLDcgKzI2MTAyLDYgQEAKIAkJCQlCQzhCODUzRTBFN0M3
RjExMDBBQjY5ODQgLyogU2Nyb2xsYmFyVGhlbWVNYWMuaCBpbiBIZWFkZXJzICovLAogCQkJCTBG
RTcxNDA2MTQyMTcwQjgwMERCMzNCQSAvKiBTY3JvbGxiYXJUaGVtZU1vY2suaCBpbiBIZWFkZXJz
ICovLAogCQkJCTVEOTI1QjY4MEY2NEQ0REQwMEI4NDdGMCAvKiBTY3JvbGxCZWhhdmlvci5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJMUFBODRGMDUxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGNjA1QUVEMTVGOTQ4NDgwMDRERjBDMCAvKiBT
Y3JvbGxpbmdDb25zdHJhaW50cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUFGNjJFRTgxNERBMjJB
NzAwNDE1NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQkw
RkM0RTQwRDE4N0Y4MkUxMDA0NTg4MkMgLyogU2Nyb2xsaW5nQ29vcmRpbmF0b3JJT1MuaCBpbiBI
ZWFkZXJzICovLApAQCAtMjc0OTYsNiArMjc0OTYsNyBAQAogCQkJCUUxOUFDM0Y0MTgyNERDNzkw
MDM0OTQyNiAvKiBDcnlwdG9BbGdvcml0aG1TSEE1MTIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
RTFGRTEzNjQxODM0MzUxMTAwODkyRjEzIC8qIENyeXB0b0RpZ2VzdE1hYy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlFMTU3QThFNDE4MTczQTNBMDA5RjgyMUQgLyogQ3J5cHRvS2V5LmNwcCBpbiBT
b3VyY2VzICovLAorCQkJCTdBOUFERkY0MUFBMTE2M0IwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9s
bGVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJRTEyNUY4NEQxODI0Mjg5RDAwRDg0Q0Q5IC8qIENy
eXB0b0tleUFFUy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMTI1Rjg2MzE4MkMzMDNBMDBEODRD
RDkgLyogQ3J5cHRvS2V5RGF0YU9jdGV0U2VxdWVuY2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
RTFDMjY2REUxODMxOUYzMTAwM0Y4QjMzIC8qIENyeXB0b0tleURhdGFSU0FDb21wb25lbnRzLmNw
cCBpbiBTb3VyY2VzICovLApAQCAtMjk1MDgsNyArMjk1MDksNiBAQAogCQkJCUJDRUY4NjlGMEU4
NDRFOUQwMEE4NUNENSAvKiBTY3JvbGxiYXJUaGVtZU1hYy5tbSBpbiBTb3VyY2VzICovLAogCQkJ
CTBGRTcxNDA1MTQyMTcwQjgwMERCMzNCQSAvKiBTY3JvbGxiYXJUaGVtZU1vY2suY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJNUQ5MjVCNjcwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEJlaGF2aW9y
LmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTFBQTg0RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3Jv
bGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEY2MDVBRUMxNUY5NDg0ODAwNERG
MEMwIC8qIFNjcm9sbGluZ0NvbnN0cmFpbnRzLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBRjYy
RUU3MTREQTIyQTcwMDQxNTU2QyAvKiBTY3JvbGxpbmdDb29yZGluYXRvci5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkwRkM0RTQwRTE4N0Y4MkUxMDA0NTg4MkMgLyogU2Nyb2xsaW5nQ29vcmRpbmF0
b3JJT1MubW0gaW4gU291cmNlcyAqLywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0V2
ZW50SGFuZGxlck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9F
dmVudEhhbmRsZXJNYWMubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtOTYxLDYgKzk2MSwx
MiBAQCBib29sIEV2ZW50SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsCiAgICAgCiAgICAg
Ym9vbCBkaWRIYW5kbGVFdmVudCA9IHZpZXcgPyB2aWV3LT53aGVlbEV2ZW50KHdoZWVsRXZlbnQp
IDogZmFsc2U7CiAgICAgbV9pc0hhbmRsaW5nV2hlZWxFdmVudCA9IGZhbHNlOworICAgIAorI2lm
IEVOQUJMRShDU1NfU0NST0xMX1NOQVApCisgICAgaWYgKHNjcm9sbGFibGVBcmVhKQorICAgICAg
ICBwbGF0Zm9ybU5vdGlmeVNuYXBJZk5lY2Vzc2FyeSh3aGVlbEV2ZW50LCAqc2Nyb2xsYWJsZUFy
ZWEpOworI2VuZGlmCisKICAgICByZXR1cm4gZGlkSGFuZGxlRXZlbnQ7CiB9CiAKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxp
bmdOb2RlTWFjLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcv
bWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaAkocmV2aXNpb24gMTgwODg5
KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFt
ZVNjcm9sbGluZ05vZGVNYWMuaAkod29ya2luZyBjb3B5KQpAQCAtNjEsOCArNjEsNiBAQCBwcml2
YXRlOgogICAgIHZpcnR1YWwgSW50UG9pbnQgYWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpIG92ZXJy
aWRlOwogICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUm
KSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29u
dGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSBvdmVycmlkZTsKLSAgICB2aXJ0
dWFsIHZvaWQgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2
b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpIG92ZXJyaWRlOwog
CiAgICAgdmlydHVhbCBGbG9hdFBvaW50IHNjcm9sbFBvc2l0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7
CkBAIC04MCwxMCArNzgsMTQgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgaXNBbHJlYWR5UGlubmVk
SW5EaXJlY3Rpb25PZkdlc3R1cmUoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiwgU2Nyb2xsRXZl
bnRBeGlzKTsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykK
KyAgICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhp
cyk7CisgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4
aXMsIGZsb2F0IGRlbHRhKTsKKyNlbmRpZgorCiAgICAgdm9pZCBsb2dFeHBvc2VkVW5maWxsZWRB
cmVhKCk7CiAKICAgICBTY3JvbGxDb250cm9sbGVyIG1fc2Nyb2xsQ29udHJvbGxlcjsKLSAgICBS
ZXRhaW5QdHI8Q0ZSdW5Mb29wVGltZXJSZWY+IG1fc25hcFJ1YmJlcmJhbmRUaW1lcjsKIAogICAg
IFJldGFpblB0cjxDQUxheWVyPiBtX3Njcm9sbExheWVyOwogICAgIFJldGFpblB0cjxDQUxheWVy
PiBtX3Njcm9sbGVkQ29udGVudHNMYXllcjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJh
bWVTY3JvbGxpbmdOb2RlTWFjLm1tCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5t
bQkod29ya2luZyBjb3B5KQpAQCAtNjYsOCArNjYsNiBAQCBTY3JvbGxpbmdUcmVlRnJhbWVTY3Jv
bGxpbmdOb2RlTWFjOjpTY3JvCiAKIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
On5TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjKCkKIHsKLSAgICBpZiAobV9zbmFw
UnViYmVyYmFuZFRpbWVyKQotICAgICAgICBDRlJ1bkxvb3BUaW1lckludmFsaWRhdGUobV9zbmFw
UnViYmVyYmFuZFRpbWVyLmdldCgpKTsKIH0KIAogdm9pZCBTY3JvbGxpbmdUcmVlRnJhbWVTY3Jv
bGxpbmdOb2RlTWFjOjp1cGRhdGVCZWZvcmVDaGlsZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5v
ZGUmIHN0YXRlTm9kZSkKQEAgLTI5NiwzMiArMjk0LDYgQEAgdm9pZCBTY3JvbGxpbmdUcmVlRnJh
bWVTY3JvbGxpbmdOb2RlTWFjOgogICAgIHNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3Ry
YWludHMob2Zmc2V0KTsKIH0KIAotdm9pZCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2Rl
TWFjOjpzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKQotewotICAgIEFTU0VSVCghbV9zbmFwUnVi
YmVyYmFuZFRpbWVyKTsKLQotICAgIENGVGltZUludGVydmFsIHRpbWVySW50ZXJ2YWwgPSAxLjAg
LyA2MC4wOwotCi0gICAgbV9zbmFwUnViYmVyYmFuZFRpbWVyID0gYWRvcHRDRihDRlJ1bkxvb3BU
aW1lckNyZWF0ZVdpdGhIYW5kbGVyKGtDRkFsbG9jYXRvckRlZmF1bHQsIENGQWJzb2x1dGVUaW1l
R2V0Q3VycmVudCgpICsgdGltZXJJbnRlcnZhbCwgdGltZXJJbnRlcnZhbCwgMCwgMCwgXihDRlJ1
bkxvb3BUaW1lclJlZikgewotICAgICAgICBtX3Njcm9sbENvbnRyb2xsZXIuc25hcFJ1YmJlckJh
bmRUaW1lckZpcmVkKCk7Ci0gICAgfSkpOwotICAgIENGUnVuTG9vcEFkZFRpbWVyKENGUnVuTG9v
cEdldEN1cnJlbnQoKSwgbV9zbmFwUnViYmVyYmFuZFRpbWVyLmdldCgpLCBrQ0ZSdW5Mb29wRGVm
YXVsdE1vZGUpOwotfQotCi12b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKLXsKLSAgICBpZiAoIW1fc25hcFJ1YmJlcmJhbmRU
aW1lcikKLSAgICAgICAgcmV0dXJuOwotCi0gICAgc2Nyb2xsaW5nVHJlZSgpLnNldE1haW5GcmFt
ZUlzUnViYmVyQmFuZGluZyhmYWxzZSk7Ci0KLSAgICAvLyBTaW5jZSB0aGUgcnViYmVyYmFuZCB0
aW1lciBoYXMgc3RvcHBlZCwgdG90YWxDb250ZW50c1NpemVGb3JSdWJiZXJCYW5kIGNhbiBiZSBz
eW5jaHJvbml6ZWQgd2l0aCB0b3RhbENvbnRlbnRzU2l6ZS4KLSAgICBzZXRUb3RhbENvbnRlbnRz
U2l6ZUZvclJ1YmJlckJhbmQodG90YWxDb250ZW50c1NpemUoKSk7Ci0KLSAgICBDRlJ1bkxvb3BU
aW1lckludmFsaWRhdGUobV9zbmFwUnViYmVyYmFuZFRpbWVyLmdldCgpKTsKLSAgICBtX3NuYXBS
dWJiZXJiYW5kVGltZXIgPSBudWxscHRyOwotfQotCiB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNj
cm9sbGluZ05vZGVNYWM6OmFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgp
CiB7CiAgICAgRmxvYXRQb2ludCBjdXJyZW50U2Nyb2xsUG9zaXRpb24gPSBhYnNvbHV0ZVNjcm9s
bFBvc2l0aW9uKCk7CkBAIC01NDAsNiArNTEyLDE5IEBAIHZvaWQgbG9nV2hlZWxFdmVudEhhbmRs
ZXJDb3VudENoYW5nZWQodW4KICAgICBXVEZMb2dBbHdheXMoIlNDUk9MTElORzogV2hlZWwgZXZl
bnQgaGFuZGxlciBjb3VudCBjaGFuZ2VkLiBUaW1lOiAlZiBDb3VudDogJXVcbiIsIFdURjo6bW9u
b3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCksIGNvdW50KTsKIH0KIAorI2lmIEVOQUJMRShDU1Nf
U0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKK0xheW91dFVuaXQgU2Nyb2xsaW5nVHJlZUZy
YW1lU2Nyb2xsaW5nTm9kZU1hYzo6c2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcykK
K3sKKyAgICAvLyBUZW1wb3Jhcnkgc3R1YiB1bnRpbCBodHRwOi8vd2Via2l0Lm9yZy9iLzE0MTk3
My4KKyAgICByZXR1cm4gTGF5b3V0VW5pdCgpOworfQorCit2b2lkIFNjcm9sbGluZ1RyZWVGcmFt
ZVNjcm9sbGluZ05vZGVNYWM6OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMs
IGZsb2F0KQoreworICAgIC8vIFRlbXBvcmFyeSBzdHViIHVudGlsIGh0dHA6Ly93ZWJraXQub3Jn
L2IvMTQxOTczLgorfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlm
IC8vIEVOQUJMRShBU1lOQ19TQ1JPTExJTkcpICYmIFBMQVRGT1JNKE1BQykKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAJKHJldmlzaW9uIDE4MDg4OSkK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNDksNiArNDksOSBAQCBzdGQ6OnVuaXF1ZV9wdHI8U2Nyb2xsQW5pbWF0b3I+IFNj
cm9sbEFuCiAKIFNjcm9sbEFuaW1hdG9yOjpTY3JvbGxBbmltYXRvcihTY3JvbGxhYmxlQXJlYSYg
c2Nyb2xsYWJsZUFyZWEpCiAgICAgOiBtX3Njcm9sbGFibGVBcmVhKHNjcm9sbGFibGVBcmVhKQor
I2lmIEVOQUJMRShSVUJCRVJfQkFORElORykgfHwgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyAg
ICAsIG1fc2Nyb2xsQ29udHJvbGxlcih0aGlzKQorI2VuZGlmCiAgICAgLCBtX2N1cnJlbnRQb3NY
KDApCiAgICAgLCBtX2N1cnJlbnRQb3NZKDApCiB7CkBAIC04MywyNiArODYsMTQgQEAgdm9pZCBT
Y3JvbGxBbmltYXRvcjo6c2Nyb2xsVG9PZmZzZXRXaXRobwogI2lmIEVOQUJMRShDU1NfU0NST0xM
X1NOQVApICYmIFBMQVRGT1JNKE1BQykKIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OnByb2Nlc3NXaGVl
bEV2ZW50Rm9yU2Nyb2xsU25hcChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQp
CiB7Ci0gICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCi0gICAgICAgIG1fdmVy
dGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7Ci0g
ICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKLSAgICAgICAgbV9ob3Jpem9u
dGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworICAg
IG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAod2hlZWxF
dmVudCk7CiB9CiAjZW5kaWYKIAogYm9vbCBTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hlZWxFdmVu
dChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIGUpCiB7CiAjaWYgRU5BQkxFKENTU19TQ1JPTExf
U05BUCkgJiYgUExBVEZPUk0oTUFDKQotICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1h
dG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVs
RXZlbnQoZSk7Ci0gICAgICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91
bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
fQotICAgIGlmIChtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV9o
b3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KGUpOwotICAgICAg
ICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVs
RXZlbnQoZSkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQorICAgIG1fc2Nyb2xs
Q29udHJvbGxlci5oYW5kbGVXaGVlbEV2ZW50KGUpOwogI2VuZGlmCiAjaWYgUExBVEZPUk0oQ09D
T0EpCiAgICAgLy8gRXZlbnRzIGluIHRoZSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZU1heUJlZ2lu
IHBoYXNlIGhhdmUgbm8gZGVsdGFzLCBhbmQgdGhlcmVmb3JlIG5ldmVyIHBhc3NlcyB0aHJvdWdo
IHRoZSBzY3JvbGwgaGFuZGxpbmcgbG9naWMgYmVsb3cuCkBAIC0xODMsMzAgKzE3NCwxNSBAQCB2
b2lkIFNjcm9sbEFuaW1hdG9yOjpub3RpZnlQb3NpdGlvbkNoYW5nCiAjaWYgRU5BQkxFKENTU19T
Q1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQogdm9pZCBTY3JvbGxBbmltYXRvcjo6dXBkYXRl
U2Nyb2xsQW5pbWF0b3JzQW5kVGltZXJzKCkKIHsKLSAgICAvLyBGSVhNRTogQ3VycmVudGx5LCBz
Y3JvbGwgc25hcCBhbmltYXRvcnMgYXJlIHJlY3JlYXRlZCBldmVuIHRob3VnaCB0aGUgc25hcCBv
ZmZzZXRzIGFsb25lIGNhbiBiZSB1cGRhdGVkLgotICAgIGlmIChtX3Njcm9sbGFibGVBcmVhLmhv
cml6b250YWxTbmFwT2Zmc2V0cygpKSB7Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBB
bmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywg
bV9zY3JvbGxhYmxlQXJlYS5ob3Jpem9udGFsU25hcE9mZnNldHMoKSwgU2Nyb2xsRXZlbnRBeGlz
OjpIb3Jpem9udGFsKTsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyID0gc3Rk
OjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZTY3JvbGxBbmltYXRvcjo6aG9yaXpvbnRhbFNj
cm9sbFNuYXBUaW1lckZpcmVkKTsKLSAgICB9IGVsc2UgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNu
YXBBbmltYXRvcikgewotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBu
dWxscHRyOwotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgPSBudWxscHRyOwot
ICAgIH0KLSAgICBpZiAobV9zY3JvbGxhYmxlQXJlYS52ZXJ0aWNhbFNuYXBPZmZzZXRzKCkpIHsK
LSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8
QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywgbV9zY3JvbGxhYmxlQXJlYS52ZXJ0aWNhbFNu
YXBPZmZzZXRzKCksIFNjcm9sbEV2ZW50QXhpczo6VmVydGljYWwpOwotICAgICAgICBtX3ZlcnRp
Y2FsU2Nyb2xsU25hcFRpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZTY3Jv
bGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk7Ci0gICAgfSBlbHNlIGlm
IChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxTY3Jv
bGxTbmFwQW5pbWF0b3IgPSBudWxscHRyOwotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRp
bWVyID0gbnVsbHB0cjsKLSAgICB9CisgICAgbV9zY3JvbGxDb250cm9sbGVyLnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyhtX3Njcm9sbGFibGVBcmVhKTsKIH0KIAotTGF5b3V0VW5pdCBT
Y3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzKQor
TGF5b3V0VW5pdCBTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50
QXhpcyBheGlzKQogewotICAgIEZsb2F0UG9pbnQgY3VycmVudFBvc2l0aW9uID0gdGhpcy0+Y3Vy
cmVudFBvc2l0aW9uKCk7Ci0gICAgcmV0dXJuIGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jp
em9udGFsID8gY3VycmVudFBvc2l0aW9uLngoKSA6IGN1cnJlbnRQb3NpdGlvbi55KCk7CisgICAg
cmV0dXJuIGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9jdXJyZW50UG9z
WCA6IG1fY3VycmVudFBvc1k7CiB9CiAKLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNj
cm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcywgZmxvYXQgZGVsdGEpCit2b2lkIFNjcm9s
bEFuaW1hdG9yOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMsIGZs
b2F0IGRlbHRhKQogewogICAgIEZsb2F0UG9pbnQgY3VycmVudFBvc2l0aW9uID0gdGhpcy0+Y3Vy
cmVudFBvc2l0aW9uKCk7CiAgICAgaWYgKGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9u
dGFsKQpAQCAtMjE0LDMwICsxOTAsNiBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjppbW1lZGlhdGVT
Y3JvbGxJbkF4CiAgICAgZWxzZQogICAgICAgICBzY3JvbGxUb09mZnNldFdpdGhvdXRBbmltYXRp
b24oRmxvYXRQb2ludChjdXJyZW50UG9zaXRpb24ueCgpLCBjdXJyZW50UG9zaXRpb24ueSgpICsg
ZGVsdGEpKTsKIH0KLQotdm9pZCBTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxTbmFwVGltZXIo
U2Nyb2xsRXZlbnRBeGlzIGF4aXMpCi17Ci0gICAgVGltZXIqIHNjcm9sbFNuYXBUaW1lciA9IGF4
aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9ob3Jpem9udGFsU2Nyb2xsU25h
cFRpbWVyLmdldCgpIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lci5nZXQoKTsKLSAgICBpZiAo
IXNjcm9sbFNuYXBUaW1lci0+aXNBY3RpdmUoKSkKLSAgICAgICAgc2Nyb2xsU25hcFRpbWVyLT5z
dGFydFJlcGVhdGluZygxLjAgLyA2MC4wKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvcjo6c3Rv
cFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMgYXhpcykKLXsKLSAgICBUaW1lciogc2Ny
b2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hv
cml6b250YWxTY3JvbGxTbmFwVGltZXIuZ2V0KCkgOiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVy
LmdldCgpOwotICAgIGlmIChzY3JvbGxTbmFwVGltZXItPmlzQWN0aXZlKCkpCi0gICAgICAgIHNj
cm9sbFNuYXBUaW1lci0+c3RvcCgpOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpob3Jpem9u
dGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQotewotICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBB
bmltYXRvci0+c2Nyb2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOwotfQotCi12b2lkIFNjcm9sbEFu
aW1hdG9yOjp2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKLXsKLSAgICBtX3ZlcnRpY2Fs
U2Nyb2xsU25hcEFuaW1hdG9yLT5zY3JvbGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Ci19CiAjZW5k
aWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsQW5pbWF0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9TY3JvbGxBbmltYXRvci5oCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMywxNCArMzMsMTQg
QEAKICNkZWZpbmUgU2Nyb2xsQW5pbWF0b3JfaAogCiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCisj
aW5jbHVkZSAiTGF5b3V0VW5pdC5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgog
I2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNp
bmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogCi0jaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYg
UExBVEZPUk0oTUFDKQotI2luY2x1ZGUgIkF4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaCIKLSNpbmNs
dWRlICJUaW1lci5oIgorI2lmIChFTkFCTEUoUlVCQkVSX0JBTkRJTkcpIHx8IEVOQUJMRShDU1Nf
U0NST0xMX1NOQVApKSAmJiBQTEFURk9STShNQUMpCisjaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxl
ci5oIgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDggKzUwLDggQEAgY2xh
c3MgUGxhdGZvcm1Ub3VjaEV2ZW50OwogY2xhc3MgU2Nyb2xsYWJsZUFyZWE7CiBjbGFzcyBTY3Jv
bGxiYXI7CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi1j
bGFzcyBTY3JvbGxBbmltYXRvciA6IHB1YmxpYyBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50
IHsKKyNpZiAoRU5BQkxFKENTU19TQ1JPTExfU05BUCkgfHwgRU5BQkxFKFJVQkJFUl9CQU5ESU5H
KSAmJiBQTEFURk9STShNQUMpKQorY2xhc3MgU2Nyb2xsQW5pbWF0b3IgOiBwcml2YXRlIFNjcm9s
bENvbnRyb2xsZXJDbGllbnQgewogI2Vsc2UKIGNsYXNzIFNjcm9sbEFuaW1hdG9yIHsKICNlbmRp
ZgpAQCAtMTE5LDMyICsxMTksMjEgQEAgcHVibGljOgogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExf
U05BUCkgJiYgUExBVEZPUk0oTUFDKQogICAgIHZvaWQgcHJvY2Vzc1doZWVsRXZlbnRGb3JTY3Jv
bGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworCiAgICAgdm9pZCB1cGRhdGVTY3Jv
bGxBbmltYXRvcnNBbmRUaW1lcnMoKTsKLSAgICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zm
c2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIGlt
bWVkaWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IGRlbHRhKSBvdmVycmlk
ZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlz
KSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxF
dmVudEF4aXMpIG92ZXJyaWRlOworICAgIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNj
cm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMo
U2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7CiAjZW5kaWYKIAogcHJvdGVj
dGVkOgogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlQb3NpdGlvbkNoYW5nZWQoY29uc3QgRmxvYXRT
aXplJiBkZWx0YSk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShN
QUMpCi0gICAgLy8gVHJpdmlhbCB3cmFwcGVycyBhcm91bmQgdGhlIGFjdHVhbCB1cGRhdGUgbG9v
cCBpbiBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLCBzaW5jZSBXZWJDb3JlIFRpbWVyIHJlcXVpcmVz
IGEgVGltZXIgYXJndW1lbnQuCi0gICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmly
ZWQoKTsKLSAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsKLSNlbmRpZgot
CiAgICAgU2Nyb2xsYWJsZUFyZWEmIG1fc2Nyb2xsYWJsZUFyZWE7CisjaWYgRU5BQkxFKFJVQkJF
Ul9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgIFNjcm9sbENvbnRyb2xs
ZXIgbV9zY3JvbGxDb250cm9sbGVyOworI2VuZGlmCiAgICAgZmxvYXQgbV9jdXJyZW50UG9zWDsg
Ly8gV2UgYXZvaWQgdXNpbmcgYSBGbG9hdFBvaW50IGluIG9yZGVyIHRvIHJlZHVjZQogICAgIGZs
b2F0IG1fY3VycmVudFBvc1k7IC8vIHN1YmNsYXNzIGNvZGUgY29tcGxleGl0eS4KLSNpZiBFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi0gICAgc3RkOjp1bmlxdWVfcHRy
PEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcjsK
LSAgICBzdGQ6OnVuaXF1ZV9wdHI8VGltZXI+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lcjsK
LSAgICAvLyBGSVhNRTogRmluZCBhIHdheSB0byBjb25zb2xpZGF0ZSBib3RoIHRpbWVycyBpbnRv
IG9uZSB2YXJpYWJsZS4KLSAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBBbmltYXRv
cj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8VGlt
ZXI+IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7Ci0jZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENv
bnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9T
Y3JvbGxDb250cm9sbGVyLmgJKHJldmlzaW9uIDE4MDcwMikJKGZyb20gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIuaDoxODA3MDIpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwxMDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFNjcm9sbENvbnRyb2xsZXJfaAorI2Rl
ZmluZSBTY3JvbGxDb250cm9sbGVyX2gKKworI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKKwor
I2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJGbG9hdFNpemUuaCIKKyNpbmNsdWRl
ICJTY3JvbGxUeXBlcy5oIgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorCituYW1lc3Bh
Y2UgV2ViQ29yZSB7CisKK2NsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKKworY2xhc3MgU2Nyb2xs
Q29udHJvbGxlckNsaWVudCB7Citwcm90ZWN0ZWQ6CisgICAgdmlydHVhbCB+U2Nyb2xsQ29udHJv
bGxlckNsaWVudCgpIHsgfQorCitwdWJsaWM6CisgICAgdmlydHVhbCBib29sIGFsbG93c0hvcml6
b250YWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKKyAgICB2aXJ0
dWFsIGJvb2wgYWxsb3dzVmVydGljYWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVu
dCYpID0gMDsKKyAgICB2aXJ0dWFsIEludFNpemUgc3RyZXRjaEFtb3VudCgpID0gMDsKKyAgICB2
aXJ0dWFsIGJvb2wgcGlubmVkSW5EaXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikgPSAwOworICAg
IHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxIb3Jpem9udGFsbHkoKSA9IDA7CisgICAgdmlydHVhbCBi
b29sIGNhblNjcm9sbFZlcnRpY2FsbHkoKSA9IDA7CisgICAgdmlydHVhbCBib29sIHNob3VsZFJ1
YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxEaXJlY3Rpb24pID0gMDsKKworICAgIC8vIFJldHVy
biB0aGUgYWJzb2x1dGUgc2Nyb2xsIHBvc2l0aW9uLCBub3QgcmVsYXRpdmUgdG8gdGhlIHNjcm9s
bCBvcmlnaW4uCisgICAgdmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBv
c2l0aW9uKCkgPSAwOworCisgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0
IEZsb2F0U2l6ZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRo
b3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7CisgICAgdmly
dHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKKyAgICB2aXJ0dWFsIHZv
aWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7CisKKyAgICAvLyBJZiB0aGUgY3VycmVu
dCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0
aW9uIHdpbGwgY2F1c2UKKyAgICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3Qg
Ym91bmRhcnkgcG9pbnQuCisgICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9C
b3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsKK307CisKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXIgewor
ICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFNjcm9sbENvbnRyb2xsZXIpOworCitwdWJsaWM6Cisg
ICAgZXhwbGljaXQgU2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50Kik7CisK
KyAgICBib29sIGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Cisg
ICAgdm9pZCBzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKKworICAgIGJvb2wgaXNSdWJiZXJC
YW5kSW5Qcm9ncmVzcygpIGNvbnN0OworCitwcml2YXRlOgorICAgIHZvaWQgc3RvcFNuYXBSdWJi
ZXJiYW5kVGltZXIoKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kKCk7CisKKyAgICBib29sIHNo
b3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2
ZW50Jik7CisKKyAgICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKKworICAgIGJv
b2wgbV9pblNjcm9sbEdlc3R1cmU7CisgICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVz
czsKKyAgICBib29sIG1faWdub3JlTW9tZW50dW1TY3JvbGxzOworICAgIAorICAgIENGVGltZUlu
dGVydmFsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOworICAgIEZsb2F0U2l6ZSBtX292
ZXJmbG93U2Nyb2xsRGVsdGE7CisgICAgRmxvYXRTaXplIG1fc3RyZXRjaFNjcm9sbEZvcmNlOwor
ICAgIEZsb2F0U2l6ZSBtX21vbWVudHVtVmVsb2NpdHk7CisKKyAgICAvLyBSdWJiZXIgYmFuZCBz
dGF0ZS4KKyAgICBDRlRpbWVJbnRlcnZhbCBtX3N0YXJ0VGltZTsKKyAgICBGbG9hdFNpemUgbV9z
dGFydFN0cmV0Y2g7CisgICAgRmxvYXRQb2ludCBtX29yaWdPcmlnaW47CisgICAgRmxvYXRTaXpl
IG1fb3JpZ1ZlbG9jaXR5OworCisgICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2
ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShSVUJC
RVJfQkFORElORykKKworI2VuZGlmIC8vIFNjcm9sbENvbnRyb2xsZXJfaApJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAkod29ya2lu
ZyBjb3B5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTEsIDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMyLDEwICszMiwxNiBAQAogI2luY2x1ZGUgIkZsb2F0
U2l6ZS5oIgogI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSA8d3RmL05vbmNvcHlh
YmxlLmg+CisjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KKworI2lmIEVOQUJMRShDU1NfU0NST0xM
X1NOQVApCisjaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgorI2VuZGlmCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50OworY2xhc3MgU2Ny
b2xsYWJsZUFyZWE7CiAKIGNsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewogcHJvdGVjdGVk
OgpAQCAtNTUsMzYgKzYxLDU1IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlh
dGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGltbWVk
aWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXpl
JikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7
Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwogCiAgICAg
Ly8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlzIHdpdGhpbiB0aGUgb3Zlcmhhbmcg
YXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNhdXNlCiAgICAgLy8gdGhlIHBhZ2UgdG8gc2Nyb2xs
IHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBvaW50LgogICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RT
Y3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSA9IDA7CisKKyNpZiBFTkFCTEUoQ1NT
X1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdmlydHVhbCBMYXlvdXRVbml0IHNj
cm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQg
aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEpID0gMDsK
KyNlbmRpZgogfTsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApCitjbGFzcyBTY3JvbGxD
b250cm9sbGVyIDogcHVibGljIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQgeworI2Vsc2UK
IGNsYXNzIFNjcm9sbENvbnRyb2xsZXIgeworI2VuZGlmCiAgICAgV1RGX01BS0VfTk9OQ09QWUFC
TEUoU2Nyb2xsQ29udHJvbGxlcik7CiAKIHB1YmxpYzoKICAgICBleHBsaWNpdCBTY3JvbGxDb250
cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqKTsKIAogICAgIGJvb2wgaGFuZGxlV2hlZWxF
dmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKLSAgICB2b2lkIHNuYXBSdWJiZXJCYW5k
VGltZXJGaXJlZCgpOwogCiAgICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3Q7
CiAKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdm9p
ZCBwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50
Jik7CisgICAgdm9pZCB1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoY29uc3QgU2Nyb2xs
YWJsZUFyZWEmKTsKKyNlbmRpZgorCiBwcml2YXRlOgorICAgIHZvaWQgc3RhcnRTbmFwUnViYmVy
YmFuZFRpbWVyKCk7CiAgICAgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwogICAgIHZv
aWQgc25hcFJ1YmJlckJhbmQoKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgp
OwogCiAgICAgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKGNvbnN0
IFBsYXRmb3JtV2hlZWxFdmVudCYpOwogCi0gICAgU2Nyb2xsQ29udHJvbGxlckNsaWVudCogbV9j
bGllbnQ7CisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAg
IHZvaWQgaG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCk7CisgICAgdm9pZCB2ZXJ0aWNh
bFNjcm9sbFNuYXBUaW1lckZpcmVkKCk7CisgICAgdm9pZCBzdGFydFNjcm9sbFNuYXBUaW1lcihT
Y3JvbGxFdmVudEF4aXMpOworICAgIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVu
dEF4aXMpOworCisgICAgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRB
eGlzKSBvdmVycmlkZTsKKyAgICB2b2lkIGltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVu
dEF4aXMsIGZsb2F0IGRlbHRhKSBvdmVycmlkZTsKKyNlbmRpZgogCi0gICAgYm9vbCBtX2luU2Ny
b2xsR2VzdHVyZTsKLSAgICBib29sIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzOwotICAgIGJv
b2wgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHM7CisgICAgU2Nyb2xsQ29udHJvbGxlckNsaWVudCog
bV9jbGllbnQ7CiAgICAgCiAgICAgQ0ZUaW1lSW50ZXJ2YWwgbV9sYXN0TW9tZW50dW1TY3JvbGxU
aW1lc3RhbXA7CiAgICAgRmxvYXRTaXplIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YTsKQEAgLTk2LDcg
KzEyMSwxOSBAQCBwcml2YXRlOgogICAgIEZsb2F0U2l6ZSBtX3N0YXJ0U3RyZXRjaDsKICAgICBG
bG9hdFBvaW50IG1fb3JpZ09yaWdpbjsKICAgICBGbG9hdFNpemUgbV9vcmlnVmVsb2NpdHk7Cisg
ICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4gbV9zbmFwUnViYmVyYmFuZFRpbWVy
OworICAgIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApCisgICAgLy8gRklYTUU6IEZpbmQg
YSB3YXkgdG8gY29uc29saWRhdGUgYm90aCB0aW1lcnMgaW50byBvbmUgdmFyaWFibGUuCisgICAg
c3RkOjp1bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1faG9yaXpvbnRhbFNjcm9s
bFNuYXBBbmltYXRvcjsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBBbmltYXRv
cj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcjsKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3Jv
bGxDb250cm9sbGVyPiBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXI7CisgICAgUnVuTG9vcDo6
VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKKyNlbmRp
ZgogCisgICAgYm9vbCBtX2luU2Nyb2xsR2VzdHVyZTsKKyAgICBib29sIG1fbW9tZW50dW1TY3Jv
bGxJblByb2dyZXNzOworICAgIGJvb2wgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHM7CiAgICAgYm9v
bCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKIH07CiAKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQkocmV2aXNpb24g
MTgwNzAyKQkoZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxl
ci5tbToxODA3MDIpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250
cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDA2IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDExLCAyMDE0LTIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxl
ci5oIgorCisjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCisjaW5jbHVkZSAiV2ViQ29y
ZVN5c3RlbUludGVyZmFjZS5oIgorI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KKyNpbmNsdWRlIDxz
eXMvdGltZS5oPgorCisjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQorCitzdGF0aWMgTlNUaW1l
SW50ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKK3sKKyAgICBpZiAoW1tOU1Byb2Nlc3NJbmZvIHByb2Nl
c3NJbmZvXSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHN5c3RlbVVwdGltZSldKQorICAg
ICAgICByZXR1cm4gW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSBzeXN0ZW1VcHRpbWVdOwor
CisgICAgLy8gR2V0IGhvdyBsb25nIHN5c3RlbSBoYXMgYmVlbiB1cC4gRm91bmQgYnkgbG9va2lu
ZyBnZXR0aW5nICJib290dGltZSIgZnJvbSB0aGUga2VybmVsLgorICAgIHN0YXRpYyBzdHJ1Y3Qg
dGltZXZhbCBib290dGltZSA9IHswLCAwfTsKKyAgICBpZiAoIWJvb3R0aW1lLnR2X3NlYykgewor
ICAgICAgICBpbnQgbWliWzJdID0ge0NUTF9LRVJOLCBLRVJOX0JPT1RUSU1FfTsKKyAgICAgICAg
c2l6ZV90IHNpemUgPSBzaXplb2YoYm9vdHRpbWUpOworICAgICAgICBpZiAoLTEgPT0gc3lzY3Rs
KG1pYiwgMiwgJmJvb3R0aW1lLCAmc2l6ZSwgMCwgMCkpCisgICAgICAgICAgICBib290dGltZS50
dl9zZWMgPSAwOworICAgIH0KKyAgICBzdHJ1Y3QgdGltZXZhbCBub3c7CisgICAgaWYgKGJvb3R0
aW1lLnR2X3NlYyAmJiAtMSAhPSBnZXR0aW1lb2ZkYXkoJm5vdywgMCkpIHsKKyAgICAgICAgc3Ry
dWN0IHRpbWV2YWwgdXB0aW1lOworICAgICAgICB0aW1lcnN1Yigmbm93LCAmYm9vdHRpbWUsICZ1
cHRpbWUpOworICAgICAgICBOU1RpbWVJbnRlcnZhbCByZXN1bHQgPSB1cHRpbWUudHZfc2VjICsg
KHVwdGltZS50dl91c2VjIC8gMUUrNik7CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgfQor
ICAgIHJldHVybiAwOworfQorCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIGNvbnN0
IGZsb2F0IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQgPSAwLjEwZjsKK3N0YXRpYyBjb25z
dCBmbG9hdCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbyA9IDE7CitzdGF0aWMg
Y29uc3QgZmxvYXQgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCA9
IDEwOworCitzdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKGZsb2F0IGluaXRp
YWxQb3NpdGlvbiwgZmxvYXQgaW5pdGlhbFZlbG9jaXR5LCBmbG9hdCBlbGFwc2VkVGltZSkKK3sK
KyAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShpbml0aWFsUG9zaXRpb24s
IGluaXRpYWxWZWxvY2l0eSwgZWxhcHNlZFRpbWUpOworfQorCitzdGF0aWMgZmxvYXQgZWxhc3Rp
Y0RlbHRhRm9yUmVib3VuZERlbHRhKGZsb2F0IGRlbHRhKQoreworICAgIHJldHVybiB3a05TRWxh
c3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGRlbHRhKTsKK30KKworc3RhdGljIGZsb2F0IHJlYm91
bmREZWx0YUZvckVsYXN0aWNEZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAgICByZXR1cm4gd2tOU1Jl
Ym91bmREZWx0YUZvckVsYXN0aWNEZWx0YShkZWx0YSk7Cit9CisKK3N0YXRpYyBmbG9hdCBzY3Jv
bGxXaGVlbE11bHRpcGxpZXIoKQoreworICAgIHN0YXRpYyBmbG9hdCBtdWx0aXBsaWVyID0gLTE7
CisgICAgaWYgKG11bHRpcGxpZXIgPCAwKSB7CisgICAgICAgIG11bHRpcGxpZXIgPSBbW05TVXNl
ckRlZmF1bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBmbG9hdEZvcktleTpAIk5TU2Nyb2xsV2hl
ZWxNdWx0aXBsaWVyIl07CisgICAgICAgIGlmIChtdWx0aXBsaWVyIDw9IDApCisgICAgICAgICAg
ICBtdWx0aXBsaWVyID0gMTsKKyAgICB9CisgICAgcmV0dXJuIG11bHRpcGxpZXI7Cit9CisKK1Nj
cm9sbENvbnRyb2xsZXI6OlNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCog
Y2xpZW50KQorICAgIDogbV9jbGllbnQoY2xpZW50KQorICAgICwgbV9pblNjcm9sbEdlc3R1cmUo
ZmFsc2UpCisgICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxzZSkKKyAgICAsIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzKGZhbHNlKQorICAgICwgbV9sYXN0TW9tZW50dW1TY3JvbGxU
aW1lc3RhbXAoMCkKKyAgICAsIG1fc3RhcnRUaW1lKDApCisgICAgLCBtX3NuYXBSdWJiZXJiYW5k
VGltZXJJc0FjdGl2ZShmYWxzZSkKK3sKK30KKworYm9vbCBTY3JvbGxDb250cm9sbGVyOjpoYW5k
bGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKK3sKKyAg
ICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4p
IHsKKyAgICAgICAgLy8gRmlyc3QsIGNoZWNrIGlmIHdlIHNob3VsZCBydWJiZXItYmFuZCBhdCBh
bGwuCisgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKC13
aGVlbEV2ZW50LmRlbHRhWCgpLCAwKSkKKyAgICAgICAgICAgICYmICFzaG91bGRSdWJiZXJCYW5k
SW5Ib3Jpem9udGFsRGlyZWN0aW9uKHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgICAgIG1faW5TY3JvbGxHZXN0dXJlID0gdHJ1ZTsKKyAgICAgICAgbV9tb21l
bnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNj
cm9sbHMgPSBmYWxzZTsKKyAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAw
OworICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKworICAgICAgICBJ
bnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworICAgICAg
ICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVs
dGEoc3RyZXRjaEFtb3VudC53aWR0aCgpKSk7CisgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNl
LnNldEhlaWdodChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC5oZWln
aHQoKSkpOworICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKKwor
ICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworCisgICAgICAgIHJldHVybiB0cnVl
OworICAgIH0KKworICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2
ZW50UGhhc2VFbmRlZCkgeworICAgICAgICBzbmFwUnViYmVyQmFuZCgpOworICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICB9CisKKyAgICBib29sIGlzTW9tZW50dW1TY3JvbGxFdmVudCA9ICh3aGVl
bEV2ZW50Lm1vbWVudHVtUGhhc2UoKSAhPSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZU5vbmUpOwor
ICAgIGlmIChtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyAmJiAoaXNNb21lbnR1bVNjcm9sbEV2ZW50
IHx8IG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKSkgeworICAgICAgICBpZiAod2hlZWxF
dmVudC5tb21lbnR1bVBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewor
ICAgICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKKyAgICAgICAgICAg
IHJldHVybiB0cnVlOworICAgICAgICB9CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisK
KyAgICBmbG9hdCBkZWx0YVggPSBtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKTsKKyAgICBm
bG9hdCBkZWx0YVkgPSBtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCk7CisKKyAgICAvLyBS
ZXNldCBvdmVyZmxvdyB2YWx1ZXMgYmVjYXVzZSB3ZSBtYXkgZGVjaWRlIHRvIHJlbW92ZSBkZWx0
YSBhdCB2YXJpb3VzIHBvaW50cyBhbmQgcHV0IGl0IGludG8gb3ZlcmZsb3cuCisgICAgbV9vdmVy
Zmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7CisKKyAgICBJbnRTaXplIHN0cmV0Y2hBbW91
bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworICAgIGJvb2wgaXNWZXJ0aWNhbGx5U3Ry
ZXRjaGVkID0gc3RyZXRjaEFtb3VudC5oZWlnaHQoKTsKKyAgICBib29sIGlzSG9yaXpvbnRhbGx5
U3RyZXRjaGVkID0gc3RyZXRjaEFtb3VudC53aWR0aCgpOworCisgICAgZmxvYXQgZXZlbnRDb2Fs
ZXNjZWREZWx0YVg7CisgICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVk7CisKKyAgICBpZiAo
aXNWZXJ0aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7CisgICAg
ICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNjcm9s
bGluZ0RlbHRhWCgpOworICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50
LnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVkoKTsKKyAgICB9IGVsc2UgeworICAgICAgICBl
dmVudENvYWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LmRlbHRhWCgpOworICAgICAgICBldmVu
dENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LmRlbHRhWSgpOworICAgIH0KKworICAgIGRl
bHRhWCArPSBldmVudENvYWxlc2NlZERlbHRhWDsKKyAgICBkZWx0YVkgKz0gZXZlbnRDb2FsZXNj
ZWREZWx0YVk7CisKKyAgICAvLyBTbGlnaHRseSBwcmVmZXIgc2Nyb2xsaW5nIHZlcnRpY2FsbHkg
YnkgYXBwbHlpbmcgdGhlID0gY2FzZSB0byBkZWx0YVkKKyAgICBpZiAoZmFic2YoZGVsdGFZKSA+
PSBmYWJzZihkZWx0YVgpKQorICAgICAgICBkZWx0YVggPSAwOworICAgIGVsc2UKKyAgICAgICAg
ZGVsdGFZID0gMDsKKworICAgIGJvb2wgc2hvdWxkU3RyZXRjaCA9IGZhbHNlOworCisgICAgUGxh
dGZvcm1XaGVlbEV2ZW50UGhhc2UgbW9tZW50dW1QaGFzZSA9IHdoZWVsRXZlbnQubW9tZW50dW1Q
aGFzZSgpOworCisgICAgLy8gSWYgd2UgYXJlIHN0YXJ0aW5nIG1vbWVudHVtIHNjcm9sbGluZyB0
aGVuIGRvIHNvbWUgc2V0dXAuCisgICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAm
JiAobW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuIHx8IG1vbWVu
dHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VDaGFuZ2VkKSkKKyAgICAgICAgbV9t
b21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSB0cnVlOworCisgICAgQ0ZUaW1lSW50ZXJ2YWwgdGlt
ZURlbHRhID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKSAtIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGlt
ZXN0YW1wOworICAgIGlmIChtX2luU2Nyb2xsR2VzdHVyZSB8fCBtX21vbWVudHVtU2Nyb2xsSW5Q
cm9ncmVzcykgeworICAgICAgICBpZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYg
dGltZURlbHRhID4gMCAmJiB0aW1lRGVsdGEgPCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0
KSB7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkuc2V0V2lkdGgoZXZlbnRDb2FsZXNj
ZWREZWx0YVggLyAoZmxvYXQpdGltZURlbHRhKTsKKyAgICAgICAgICAgIG1fbW9tZW50dW1WZWxv
Y2l0eS5zZXRIZWlnaHQoZXZlbnRDb2FsZXNjZWREZWx0YVkgLyAoZmxvYXQpdGltZURlbHRhKTsK
KyAgICAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50
aW1lc3RhbXAoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG1fbGFzdE1vbWVudHVt
U2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsKKyAgICAgICAgICAgIG1f
bW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworICAgICAgICB9CisKKyAgICAgICAgaWYg
KGlzVmVydGljYWxseVN0cmV0Y2hlZCkgeworICAgICAgICAgICAgaWYgKCFpc0hvcml6b250YWxs
eVN0cmV0Y2hlZCAmJiBtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRh
WCwgMCkpKSB7CisgICAgICAgICAgICAgICAgLy8gU3RyZXRjaGluZyBvbmx5IGluIHRoZSB2ZXJ0
aWNhbC4KKyAgICAgICAgICAgICAgICBpZiAoZGVsdGFZICYmIChmYWJzZihkZWx0YVggLyBkZWx0
YVkpIDwgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8pKQorICAgICAgICAgICAg
ICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZhYnNmKGRlbHRh
WCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7CisgICAg
ICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93
U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAgICAgIGRlbHRh
WCA9IDA7CisgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAgIG1fb3Zl
cmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSAr
IGRlbHRhWCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSBpZiAoaXNIb3Jpem9udGFs
bHlTdHJldGNoZWQpIHsKKyAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgaG9y
aXpvbnRhbC4KKyAgICAgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxv
YXRTaXplKDAsIGRlbHRhWSkpKSB7CisgICAgICAgICAgICAgICAgaWYgKGRlbHRhWCAmJiAoZmFi
c2YoZGVsdGFZIC8gZGVsdGFYKSA8IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlv
KSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAgICAgICAgICAgICAgICBlbHNl
IGlmIChmYWJzZihkZWx0YVkpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3Jl
U3RyZXRjaCkgeworICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0
SGVpZ2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7CisgICAgICAg
ICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAg
ICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRIZWlnaHQobV9vdmVyZmxvd1Nj
cm9sbERlbHRhLmhlaWdodCgpICsgZGVsdGFZKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgIC8vIE5vdCBzdHJldGNoaW5nIGF0IGFsbCB5ZXQuCisgICAgICAg
ICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIGRl
bHRhWSkpKSB7CisgICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVs
dGFYKSkgeworICAgICAgICAgICAgICAgICAgICBpZiAoZmFic2YoZGVsdGFYKSA8IHJ1YmJlcmJh
bmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVs
dGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAw
OworICAgICAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgIG1f
b3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgo
KSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHNob3VsZFN0
cmV0Y2ggPSB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgaWYg
KGRlbHRhWCB8fCBkZWx0YVkpIHsKKyAgICAgICAgaWYgKCEoc2hvdWxkU3RyZXRjaCB8fCBpc1Zl
cnRpY2FsbHlTdHJldGNoZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpKSB7CisgICAgICAg
ICAgICBpZiAoZGVsdGFZKSB7CisgICAgICAgICAgICAgICAgZGVsdGFZICo9IHNjcm9sbFdoZWVs
TXVsdGlwbGllcigpOworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxC
eShGbG9hdFNpemUoMCwgZGVsdGFZKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAo
ZGVsdGFYKSB7CisgICAgICAgICAgICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGll
cigpOworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNp
emUoZGVsdGFYLCAwKSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICBpZiAoIW1fY2xpZW50LT5hbGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyh3aGVlbEV2ZW50
KSkgeworICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICAgICAgZXZlbnRD
b2FsZXNjZWREZWx0YVggPSAwOworICAgICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVggJiYgIWlz
SG9yaXpvbnRhbGx5U3RyZXRjaGVkICYmICFtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxv
YXRTaXplKGRlbHRhWCwgMCkpKSB7CisgICAgICAgICAgICAgICAgZGVsdGFYICo9IHNjcm9sbFdo
ZWVsTXVsdGlwbGllcigpOworCisgICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNj
cm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKGRlbHRhWCwgMCkp
OworICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIGlmICghbV9jbGllbnQtPmFsbG93c1ZlcnRpY2FsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkg
eworICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAgICAgZXZlbnRDb2Fs
ZXNjZWREZWx0YVkgPSAwOworICAgICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVkgJiYgIWlzVmVy
dGljYWxseVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6
ZSgwLCBkZWx0YVkpKSkgeworICAgICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11
bHRpcGxpZXIoKTsKKworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxC
eVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKTsKKyAg
ICAgICAgICAgICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBJ
bnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworCisgICAg
ICAgICAgICBpZiAobV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKKyAgICAgICAgICAgICAg
ICBpZiAoKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZXZlbnRDb2FsZXNj
ZWREZWx0YVgsIGV2ZW50Q29hbGVzY2VkRGVsdGFZKSkgfHwgKGZhYnNmKGV2ZW50Q29hbGVzY2Vk
RGVsdGFYKSArIGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFZKSA8PSAwKSkgJiYgbV9sYXN0TW9t
ZW50dW1TY3JvbGxUaW1lc3RhbXApIHsKKyAgICAgICAgICAgICAgICAgICAgbV9pZ25vcmVNb21l
bnR1bVNjcm9sbHMgPSB0cnVlOworICAgICAgICAgICAgICAgICAgICBtX21vbWVudHVtU2Nyb2xs
SW5Qcm9ncmVzcyA9IGZhbHNlOworICAgICAgICAgICAgICAgICAgICBzbmFwUnViYmVyQmFuZCgp
OworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgbV9zdHJl
dGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgobV9zdHJldGNoU2Nyb2xsRm9yY2Uud2lkdGgoKSArIGRl
bHRhWCk7CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQobV9zdHJl
dGNoU2Nyb2xsRm9yY2UuaGVpZ2h0KCkgKyBkZWx0YVkpOworCisgICAgICAgICAgICBGbG9hdFNp
emUgZGFtcGVkRGVsdGEoY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRj
aFNjcm9sbEZvcmNlLndpZHRoKCkpKSwgY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRh
KG1fc3RyZXRjaFNjcm9sbEZvcmNlLmhlaWdodCgpKSkpOworCisgICAgICAgICAgICBtX2NsaWVu
dC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhkYW1wZWRE
ZWx0YSAtIHN0cmV0Y2hBbW91bnQpOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKG1fbW9t
ZW50dW1TY3JvbGxJblByb2dyZXNzICYmIG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2
ZW50UGhhc2VFbmRlZCkgeworICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZh
bHNlOworICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOworICAgICAgICBt
X2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IDA7CisgICAgfQorCisgICAgcmV0dXJuIHRy
dWU7Cit9CisKK3N0YXRpYyBpbmxpbmUgZmxvYXQgcm91bmRUb3dhcmRaZXJvKGZsb2F0IG51bSkK
K3sKKyAgICByZXR1cm4gbnVtID4gMCA/IGNlaWxmKG51bSAtIDAuNWYpIDogZmxvb3JmKG51bSAr
IDAuNWYpOworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0IHJvdW5kVG9EZXZpY2VQaXhlbFRvd2Fy
ZFplcm8oZmxvYXQgbnVtKQoreworICAgIGZsb2F0IHJvdW5kZWROdW0gPSByb3VuZGYobnVtKTsK
KyAgICBpZiAoZmFicyhudW0gLSByb3VuZGVkTnVtKSA8IDAuMTI1KQorICAgICAgICBudW0gPSBy
b3VuZGVkTnVtOworCisgICAgcmV0dXJuIHJvdW5kVG93YXJkWmVybyhudW0pOworfQorCit2b2lk
IFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCit7CisgICAgaWYg
KCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyB8fCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscykg
eworICAgICAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSBbTlNEYXRlIHRpbWVJbnRlcnZh
bFNpbmNlUmVmZXJlbmNlRGF0ZV0gLSBtX3N0YXJ0VGltZTsKKworICAgICAgICBpZiAobV9zdGFy
dFN0cmV0Y2ggPT0gRmxvYXRTaXplKCkpIHsKKyAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0g
bV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKyAgICAgICAgICAgIGlmIChtX3N0YXJ0U3RyZXRj
aCA9PSBGbG9hdFNpemUoKSkgeworICAgICAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRp
bWVyKCk7CisKKyAgICAgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6
ZSgpOworICAgICAgICAgICAgICAgIG1fc3RhcnRUaW1lID0gMDsKKyAgICAgICAgICAgICAgICBt
X3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgICAgIG1fb3JpZ09yaWdp
biA9IEZsb2F0UG9pbnQoKTsKKyAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0
U2l6ZSgpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgbV9vcmlnT3JpZ2luID0gbV9jbGllbnQtPmFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSAt
IG1fc3RhcnRTdHJldGNoOworICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBtX21vbWVudHVt
VmVsb2NpdHk7CisKKyAgICAgICAgICAgIC8vIEp1c3QgbGlrZSBub3JtYWwgc2Nyb2xsaW5nLCBw
cmVmZXIgdmVydGljYWwgcnViYmVyYmFuZGluZworICAgICAgICAgICAgaWYgKGZhYnNmKG1fb3Jp
Z1ZlbG9jaXR5LmhlaWdodCgpKSA+PSBmYWJzZihtX29yaWdWZWxvY2l0eS53aWR0aCgpKSkKKyAg
ICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgwKTsKKworICAgICAgICAgICAg
Ly8gRG9uJ3QgcnViYmVyLWJhbmQgaG9yaXpvbnRhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRv
IHNjcm9sbCBob3Jpem9udGFsbHkKKyAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmNhblNjcm9s
bEhvcml6b250YWxseSgpKQorICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldFdpZHRo
KDApOworCisgICAgICAgICAgICAvLyBEb24ndCBydWJiZXItYmFuZCB2ZXJ0aWNhbGx5IGlmIGl0
J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5CisgICAgICAgICAgICBpZiAoIW1f
Y2xpZW50LT5jYW5TY3JvbGxWZXJ0aWNhbGx5KCkpCisgICAgICAgICAgICAgICAgbV9vcmlnVmVs
b2NpdHkuc2V0SGVpZ2h0KDApOworICAgICAgICB9CisKKyAgICAgICAgRmxvYXRQb2ludCBkZWx0
YShyb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YSht
X3N0YXJ0U3RyZXRjaC53aWR0aCgpLCAtbV9vcmlnVmVsb2NpdHkud2lkdGgoKSwgKGZsb2F0KXRp
bWVEZWx0YSkpLAorICAgICAgICAgICAgcm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFz
dGljRGVsdGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2guaGVpZ2h0KCksIC1tX29yaWdWZWxv
Y2l0eS5oZWlnaHQoKSwgKGZsb2F0KXRpbWVEZWx0YSkpKTsKKworICAgICAgICBpZiAoZmFicyhk
ZWx0YS54KCkpID49IDEgfHwgZmFicyhkZWx0YS55KCkpID49IDEpIHsKKyAgICAgICAgICAgIG1f
Y2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZs
b2F0U2l6ZShkZWx0YS54KCksIGRlbHRhLnkoKSkgLSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgp
KTsKKworICAgICAgICAgICAgRmxvYXRTaXplIG5ld1N0cmV0Y2ggPSBtX2NsaWVudC0+c3RyZXRj
aEFtb3VudCgpOworCisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChy
ZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEobmV3U3RyZXRjaC53aWR0aCgpKSk7CisgICAgICAg
ICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3Rp
Y0RlbHRhKG5ld1N0cmV0Y2guaGVpZ2h0KCkpKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIG1fY2xpZW50LT5hZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKTsK
KworICAgICAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICAgICAgICAgIG1f
c3RyZXRjaFNjcm9sbEZvcmNlID0gRmxvYXRTaXplKCk7CisgICAgICAgICAgICBtX3N0YXJ0VGlt
ZSA9IDA7CisgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgICAg
ICAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOworICAgICAgICAgICAgbV9vcmlnVmVs
b2NpdHkgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIG1f
c3RhcnRUaW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOworICAg
ICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgIH0KK30KKworYm9vbCBTY3Jv
bGxDb250cm9sbGVyOjppc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3QKK3sKKyAgICBpZiAo
IW1faW5TY3JvbGxHZXN0dXJlICYmICFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAhbV9z
bmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAg
IHJldHVybiAhbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKS5pc1plcm8oKTsKK30KKwordm9pZCBT
Y3JvbGxDb250cm9sbGVyOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCit7CisgICAgbV9jbGll
bnQtPnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVy
SXNBY3RpdmUgPSBmYWxzZTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVy
QmFuZCgpCit7CisgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gc3lzdGVtVXB0aW1lKCkg
LSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBpZiAobV9sYXN0TW9tZW50dW1T
Y3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID49IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVv
dXQpCisgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworCisgICAgbV9p
blNjcm9sbEdlc3R1cmUgPSBmYWxzZTsKKworICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXJJ
c0FjdGl2ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9zdGFydFRpbWUgPSBbTlNEYXRlIHRp
bWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07CisgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9h
dFNpemUoKTsKKyAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CisgICAgbV9vcmlnVmVs
b2NpdHkgPSBGbG9hdFNpemUoKTsKKworICAgIG1fY2xpZW50LT5zdGFydFNuYXBSdWJiZXJiYW5k
VGltZXIoKTsKKyAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7Cit9CisK
K2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6c2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVj
dGlvbihjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCit7CisgICAgaWYgKHdo
ZWVsRXZlbnQuZGVsdGFYKCkgPiAwKQorICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1
YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxMZWZ0KTsKKyAgICBpZiAod2hlZWxFdmVudC5kZWx0
YVgoKSA8IDApCisgICAgICAgIHJldHVybiBtX2NsaWVudC0+c2hvdWxkUnViYmVyQmFuZEluRGly
ZWN0aW9uKFNjcm9sbFJpZ2h0KTsKKworICAgIHJldHVybiB0cnVlOworfQorCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0J
KHdvcmtpbmcgY29weSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENv
bnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTMxLDYgKzMxLDExIEBACiAjaW5jbHVkZSA8
c3lzL3N5c2N0bC5oPgogI2luY2x1ZGUgPHN5cy90aW1lLmg+CiAKKyNpZiBFTkFCTEUoQ1NTX1ND
Uk9MTF9TTkFQKQorI2luY2x1ZGUgIkF4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaCIKKyNpbmNsdWRl
ICJTY3JvbGxhYmxlQXJlYS5oIgorI2VuZGlmCisKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcp
CiAKIHN0YXRpYyBOU1RpbWVJbnRlcnZhbCBzeXN0ZW1VcHRpbWUoKQpAQCAtOTEsMTcgKzk2LDM0
IEBAIHN0YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKQogCiBTY3JvbGxDb250cm9s
bGVyOjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIGNsaWVudCkKICAg
ICA6IG1fY2xpZW50KGNsaWVudCkKKyAgICAsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1w
KDApCisgICAgLCBtX3N0YXJ0VGltZSgwKQorICAgICwgbV9zbmFwUnViYmVyYmFuZFRpbWVyKFJ1
bkxvb3A6OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5k
VGltZXJGaXJlZCkKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgICwgbV9ob3Jpem9u
dGFsU2Nyb2xsU25hcFRpbWVyKFJ1bkxvb3A6OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENvbnRy
b2xsZXI6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCkKKyAgICAsIG1fdmVydGljYWxT
Y3JvbGxTbmFwVGltZXIoUnVuTG9vcDo6Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJvbGxl
cjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCkKKyNlbmRpZgogICAgICwgbV9pblNjcm9s
bEdlc3R1cmUoZmFsc2UpCiAgICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxzZSkK
ICAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxzKGZhbHNlKQotICAgICwgbV9sYXN0TW9tZW50
dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAgICAsIG1fc3RhcnRUaW1lKDApCiAgICAgLCBtX3NuYXBS
dWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkKIHsKIH0KIAogYm9vbCBTY3JvbGxDb250cm9s
bGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVu
dCkKIHsKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAg
aWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpIHsKKyAgICAgICAgbV92ZXJ0aWNhbFNj
cm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKKyAgICAgICAg
aWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNob3VsZE92ZXJyaWRlV2hlZWxFdmVu
dCh3aGVlbEV2ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgaWYg
KG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikgeworICAgICAgICBtX2hvcml6b250YWxT
Y3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CisgICAgICAg
IGlmIChtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNob3VsZE92ZXJyaWRlV2hlZWxF
dmVudCh3aGVlbEV2ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisjZW5k
aWYKICAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNl
QmVnYW4pIHsKICAgICAgICAgLy8gRmlyc3QsIGNoZWNrIGlmIHdlIHNob3VsZCBydWJiZXItYmFu
ZCBhdCBhbGwuCiAgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRT
aXplKC13aGVlbEV2ZW50LmRlbHRhWCgpLCAwKSkKQEAgLTM2NSw5ICszODcsMTQgQEAgYm9vbCBT
Y3JvbGxDb250cm9sbGVyOjppc1J1YmJlckJhbmRJblBybwogICAgIHJldHVybiAhbV9jbGllbnQt
PnN0cmV0Y2hBbW91bnQoKS5pc1plcm8oKTsKIH0KIAordm9pZCBTY3JvbGxDb250cm9sbGVyOjpz
dGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKQoreworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lci5z
dGFydFJlcGVhdGluZygxLjAgLyA2MC4wKTsKK30KKwogdm9pZCBTY3JvbGxDb250cm9sbGVyOjpz
dG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCiB7Ci0gICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVy
YmFuZFRpbWVyKCk7CisgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVyLnN0b3AoKTsKICAgICBtX3Nu
YXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IGZhbHNlOwogfQogCkBAIC0zODcsNyArNDE0LDcg
QEAgdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCiAgICAgbV9vcmlnT3Jp
Z2luID0gRmxvYXRQb2ludCgpOwogICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CiAK
LSAgICBtX2NsaWVudC0+c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgc3RhcnRTbmFw
UnViYmVyYmFuZFRpbWVyKCk7CiAgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSB0
cnVlOwogfQogCkBAIC00MDEsNiArNDI4LDY1IEBAIGJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6c2hv
dWxkUnViYmVyQmFuZEkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorI2lmIEVOQUJMRShDU1NfU0NS
T0xMX1NOQVApCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Ny
b2xsU25hcChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCit7CisgICAgaWYg
KG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1fdmVydGljYWxTY3JvbGxT
bmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CisgICAgaWYgKG1faG9y
aXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25h
cEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworfQorCit2b2lkIFNjcm9s
bENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyhjb25zdCBTY3JvbGxh
YmxlQXJlYSYgc2Nyb2xsYWJsZUFyZWEpCit7CisgICAgLy8gRklYTUU6IEN1cnJlbnRseSwgc2Ny
b2xsIHNuYXAgYW5pbWF0b3JzIGFyZSByZWNyZWF0ZWQgZXZlbiB0aG91Z2ggdGhlIHNuYXAgb2Zm
c2V0cyBhbG9uZSBjYW4gYmUgdXBkYXRlZC4KKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEuaG9yaXpv
bnRhbFNuYXBPZmZzZXRzKCkpCisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRv
ciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywgc2Nyb2xs
YWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRzKCksIFNjcm9sbEV2ZW50QXhpczo6SG9yaXpv
bnRhbCk7CisgICAgZWxzZSBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAg
ICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxscHRyOworCisgICAgaWYg
KHNjcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSkKKyAgICAgICAgbV92ZXJ0aWNh
bFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmlt
YXRvcj4odGhpcywgc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxF
dmVudEF4aXM6OlZlcnRpY2FsKTsKKyAgICBlbHNlIGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFu
aW1hdG9yKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gbnVsbHB0cjsK
K30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxF
dmVudEF4aXMgYXhpcykKK3sKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiYg
c2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBt
X2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgOiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyOwor
ICAgIGlmICghc2Nyb2xsU25hcFRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIHNjcm9sbFNuYXBU
aW1lci5zdGFydFJlcGVhdGluZygxLjAgLyA2MC4wKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9s
bGVyOjpzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyBheGlzKQoreworICAgIFJ1
bkxvb3A6OlRpbWVyPFNjcm9sbENvbnRyb2xsZXI+JiBzY3JvbGxTbmFwVGltZXIgPSBheGlzID09
IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1l
ciA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7CisgICAgc2Nyb2xsU25hcFRpbWVyLnN0b3Ao
KTsKK30KKyAgICAKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBU
aW1lckZpcmVkKCkKK3sKKyAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKQor
ICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNjcm9sbFNuYXBBbmltYXRp
b25VcGRhdGUoKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjp2ZXJ0aWNhbFNjcm9sbFNu
YXBUaW1lckZpcmVkKCkKK3sKKyAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikK
KyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+c2Nyb2xsU25hcEFuaW1hdGlv
blVwZGF0ZSgpOworfQorCitMYXlvdXRVbml0IFNjcm9sbENvbnRyb2xsZXI6OnNjcm9sbE9mZnNl
dE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICByZXR1cm4gbV9jbGllbnQtPnNj
cm9sbE9mZnNldE9uQXhpcyhheGlzKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMsIGZsb2F0IGRlbHRhKQorewor
ICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxPbkF4aXMoYXhpcywgZGVsdGEpOworfQorI2Vu
ZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJf
QkFORElORykKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25h
cEFuaW1hdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4
aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAkod29ya2luZyBjb3B5KQpA
QCAtNTcsOCArNTcsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB+QXhpc1Njcm9sbFNuYXBB
bmltYXRvckNsaWVudCgpIHsgfQogCiBwdWJsaWM6Ci0gICAgdmlydHVhbCBMYXlvdXRVbml0IHNj
cm9sbE9mZnNldEluQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQg
aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgdmVsb2NpdHkpID0g
MDsKKyAgICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50
QXhpcykgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xs
RXZlbnRBeGlzLCBmbG9hdCB2ZWxvY2l0eSkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzdGFydFNj
cm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc3Rv
cFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpID0gMDsKIH07CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5t
bQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4aXNT
Y3JvbGxTbmFwQW5pbWF0b3IubW0JKHdvcmtpbmcgY29weSkKQEAgLTExNyw3ICsxMTcsNyBAQCB2
b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmhhbmRsZVdoZWVsCiAgICAgICAgIC8vIEJlZ2lu
IHRyYWNraW5nIHdoZWVsIGRlbHRhcyBmb3IgZ2xpZGUgcHJlZGljdGlvbi4KICAgICAgICAgZW5k
U2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3RhdGU6OlVzZXJJbnRlcmFjdGlvbik7CiAg
ICAgICAgIHB1c2hJbml0aWFsV2hlZWxEZWx0YSh3aGVlbERlbHRhKTsKLSAgICAgICAgbV9iZWdp
blRyYWNraW5nV2hlZWxEZWx0YU9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMo
bV9heGlzKTsKKyAgICAgICAgbV9iZWdpblRyYWNraW5nV2hlZWxEZWx0YU9mZnNldCA9IG1fY2xp
ZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlzKTsKICAgICAgICAgYnJlYWs7CiAKICAgICBj
YXNlIFdoZWVsRXZlbnRTdGF0dXM6OkluZXJ0aWFsU2Nyb2xsaW5nOgpAQCAtMTUzLDcgKzE1Myw3
IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6c2Nyb2xsU25hcEEKICAgICBBU1NFUlQo
bV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5nIHx8IG1fY3VycmVudFN0
YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcpOwogICAgIGZsb2F0IGRlbHRhID0gbV9j
dXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyA/IGNvbXB1dGVTbmFwRGVs
dGEoKSA6IGNvbXB1dGVHbGlkZURlbHRhKCk7CiAgICAgaWYgKGRlbHRhKQotICAgICAgICBtX2Ns
aWVudC0+aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKG1fYXhpcywgZGVsdGEpOworICAgICAgICBtX2Ns
aWVudC0+aW1tZWRpYXRlU2Nyb2xsT25BeGlzKG1fYXhpcywgZGVsdGEpOwogICAgIGVsc2UKICAg
ICAgICAgZW5kU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3RhdGU6OkRlc3RpbmF0aW9u
UmVhY2hlZCk7CiB9CkBAIC0xNjEsNyArMTYxLDcgQEAgdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yOjpzY3JvbGxTbmFwQQogdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpiZWdpblNjcm9s
bFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlIG5ld1N0YXRlKQogewogICAgIEFTU0VSVChu
ZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgfHwgbmV3U3RhdGUgPT0gU2Nyb2xs
U25hcFN0YXRlOjpTbmFwcGluZyk7Ci0gICAgTGF5b3V0VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+
c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5b3V0VW5pdCBvZmZzZXQgPSBtX2Ns
aWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgZmxvYXQgaW5pdGlhbFdoZWVs
RGVsdGEgPSBuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgPyBhdmVyYWdlSW5p
dGlhbFdoZWVsRGVsdGEoKSA6IDA7CiAgICAgTGF5b3V0VW5pdCBwcm9qZWN0ZWRTY3JvbGxEZXN0
aW5hdGlvbiA9IG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xpZGluZyA/IG1fYmVnaW5U
cmFja2luZ1doZWVsRGVsdGFPZmZzZXQgKyBMYXlvdXRVbml0KHByb2plY3RlZEluZXJ0aWFsU2Ny
b2xsRGlzdGFuY2UoaW5pdGlhbFdoZWVsRGVsdGEpKSA6IG9mZnNldDsKICAgICBwcm9qZWN0ZWRT
Y3JvbGxEZXN0aW5hdGlvbiA9IHN0ZDo6bWluKHN0ZDo6bWF4KHByb2plY3RlZFNjcm9sbERlc3Rp
bmF0aW9uLCBtX3NuYXBPZmZzZXRzLT5maXJzdCgpKSwgbV9zbmFwT2Zmc2V0cy0+bGFzdCgpKTsK
QEAgLTIwMyw3ICsyMDMsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmVuZFNjcm9s
bFNuCiAvLyByZWxhdGlvbnNoaXAgb2YgdGhlIGRpc3RhbmNlIHRyYXZlbGVkLCBjbGFtcGVkIGJ5
IGFyYml0cmFyeSBtaW4gYW5kIG1heCB2YWx1ZXMuCiBmbG9hdCBBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yOjpjb21wdXRlU25hcERlbHRhKCkgY29uc3QKIHsKLSAgICBMYXlvdXRVbml0IG9mZnNldCA9
IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAgICBMYXlvdXRVbml0IG9m
ZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlzKTsKICAgICBib29sIGNh
bkNvbXB1dGVTbmFwID0gIChtX2luaXRpYWxPZmZzZXQgPD0gb2Zmc2V0ICYmIG9mZnNldCA8IG1f
dGFyZ2V0T2Zmc2V0KSB8fCAobV90YXJnZXRPZmZzZXQgPCBvZmZzZXQgJiYgb2Zmc2V0IDw9IG1f
aW5pdGlhbE9mZnNldCk7CiAgICAgaWYgKG1fY3VycmVudFN0YXRlICE9IFNjcm9sbFNuYXBTdGF0
ZTo6U25hcHBpbmcgfHwgIWNhbkNvbXB1dGVTbmFwKQogICAgICAgICByZXR1cm4gMDsKQEAgLTIz
Nyw3ICsyMzcsNyBAQCBmbG9hdCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpjb21wdXRlU25hCiAv
LyBhbmQgVkYuIFRodXMsIHdlIGNhbiBleHByZXNzIG91ciBnbGlkaW5nIGVxdWF0aW9uIGFsbCBp
biB0ZXJtcyBvZiBWMCwgVkYgYW5kIHQuCiBmbG9hdCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpj
b21wdXRlR2xpZGVEZWx0YSgpIGNvbnN0CiB7Ci0gICAgTGF5b3V0VW5pdCBvZmZzZXQgPSBtX2Ns
aWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5b3V0VW5pdCBvZmZzZXQg
PSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgYm9vbCBjYW5Db21w
dXRlR2xpZGUgPSAobV9pbml0aWFsT2Zmc2V0IDw9IG9mZnNldCAmJiBvZmZzZXQgPCBtX3Rhcmdl
dE9mZnNldCkgfHwgKG1fdGFyZ2V0T2Zmc2V0IDwgb2Zmc2V0ICYmIG9mZnNldCA8PSBtX2luaXRp
YWxPZmZzZXQpOwogICAgIGlmIChtX2N1cnJlbnRTdGF0ZSAhPSBTY3JvbGxTbmFwU3RhdGU6Okds
aWRpbmcgfHwgIWNhbkNvbXB1dGVHbGlkZSkKICAgICAgICAgcmV0dXJuIDA7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMuaAkocmV2aXNp
b24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9y
TWFjLmgJKHdvcmtpbmcgY29weSkKQEAgLTMyLDcgKzMyLDYgQEAKICNpbmNsdWRlICJGbG9hdFBv
aW50LmgiCiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCiAjaW5jbHVkZSAiU2Nyb2xsQW5pbWF0b3Iu
aCIKLSNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiVGltZXIuaCIKICNp
bmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKQEAgLTQyLDE1ICs0MSwxMSBAQCBPQkpDX0NMQVNT
IFdlYlNjcm9sbGJhclBhaW50ZXJEZWxlZ2F0ZTsKIAogdHlwZWRlZiBpZCBTY3JvbGxiYXJQYWlu
dGVyQ29udHJvbGxlcjsKIAotI2lmICFFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi1jbGFzcyBTY3Jv
bGxDb250cm9sbGVyQ2xpZW50IHsgfTsKLSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IGNsYXNzIFNjcm9sbGJhcjsKIAotY2xhc3MgU2Nyb2xsQW5pbWF0b3JNYWMgOiBwdWJsaWMgU2Ny
b2xsQW5pbWF0b3IsIHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7CitjbGFzcyBTY3Jv
bGxBbmltYXRvck1hYyA6IHB1YmxpYyBTY3JvbGxBbmltYXRvciB7CiAKIHB1YmxpYzoKICAgICBT
Y3JvbGxBbmltYXRvck1hYyhTY3JvbGxhYmxlQXJlYSYpOwpAQCAtMTUwLDE3ICsxNDUsMTEgQEAg
cHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50IGFic29sdXRlU2Nyb2xsUG9z
aXRpb24oKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRo
b3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSBvdmVycmlkZTsKICAg
ICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJikgb3ZlcnJp
ZGU7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpIG92ZXJyaWRl
OwotICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpIG92ZXJyaWRlOwog
ICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3Nhcnko
KSBvdmVycmlkZTsKIAogICAgIGJvb2wgcGlubmVkSW5EaXJlY3Rpb24oZmxvYXQgZGVsdGFYLCBm
bG9hdCBkZWx0YVkpOwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAg
ICBib29sIGlzQWxyZWFkeVBpbm5lZEluRGlyZWN0aW9uT2ZHZXN0dXJlKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYsIFNjcm9sbEV2ZW50QXhpcyk7Ci0KLSAgICBTY3JvbGxDb250cm9sbGVyIG1f
c2Nyb2xsQ29udHJvbGxlcjsKLSAgICBUaW1lciBtX3NuYXBSdWJiZXJCYW5kVGltZXI7CiAjZW5k
aWYKIAogICAgIGJvb2wgbV9oYXZlU2Nyb2xsZWRTaW5jZVBhZ2VMb2FkOwpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQkocmV2aXNp
b24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9y
TWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC02NDMsMTAgKzY0Myw2IEBAIFNjcm9sbEFuaW1hdG9y
TWFjOjpTY3JvbGxBbmltYXRvck1hYyhTY3IKICAgICA6IFNjcm9sbEFuaW1hdG9yKHNjcm9sbGFi
bGVBcmVhKQogICAgICwgbV9pbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1lcigqdGhpcywgJlNjcm9s
bEFuaW1hdG9yTWFjOjppbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1lckZpcmVkKQogICAgICwgbV9z
ZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyKCp0aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6OnNl
bmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXJGaXJlZCkKLSNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJ
TkcpCi0gICAgLCBtX3Njcm9sbENvbnRyb2xsZXIodGhpcykKLSAgICAsIG1fc25hcFJ1YmJlckJh
bmRUaW1lcigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmly
ZWQpCi0jZW5kaWYKICAgICAsIG1faGF2ZVNjcm9sbGVkU2luY2VQYWdlTG9hZChmYWxzZSkKICAg
ICAsIG1fbmVlZHNTY3JvbGxlclN0eWxlVXBkYXRlKGZhbHNlKQogewpAQCAtMTI3MCwyMSArMTI2
Niw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OmltbWVkaWF0ZVNjcm9sbEIKICAgICBtX2N1
cnJlbnRQb3NZID0gbmV3UG9zLnkoKTsKICAgICBub3RpZnlQb3NpdGlvbkNoYW5nZWQoYWRqdXN0
ZWREZWx0YSk7CiB9Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnN0YXJ0U25hcFJ1YmJlcmJh
bmRUaW1lcigpCi17Ci0gICAgbV9zbmFwUnViYmVyQmFuZFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEu
MCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpzdG9wU25hcFJ1YmJlcmJh
bmRUaW1lcigpCi17Ci0gICAgbV9zbmFwUnViYmVyQmFuZFRpbWVyLnN0b3AoKTsKLX0KLQotdm9p
ZCBTY3JvbGxBbmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCkKLXsKLSAgICBt
X3Njcm9sbENvbnRyb2xsZXIuc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7Ci19CiAjZW5kaWYK
IAogdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6dXBkYXRlU2Nyb2xsZXJTdHlsZSgpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmgJKHJldmlz
aW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9s
bGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsMTA3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZu
ZGVmIFNjcm9sbENvbnRyb2xsZXJfaAotI2RlZmluZSBTY3JvbGxDb250cm9sbGVyX2gKLQotI2lm
IEVOQUJMRShSVUJCRVJfQkFORElORykKLQotI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKLSNpbmNs
dWRlICJGbG9hdFNpemUuaCIKLSNpbmNsdWRlICJTY3JvbGxUeXBlcy5oIgotI2luY2x1ZGUgPHd0
Zi9Ob25jb3B5YWJsZS5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIFBsYXRmb3Jt
V2hlZWxFdmVudDsKLQotY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7Ci1wcm90ZWN0ZWQ6
Ci0gICAgdmlydHVhbCB+U2Nyb2xsQ29udHJvbGxlckNsaWVudCgpIHsgfQotCi1wdWJsaWM6Ci0g
ICAgdmlydHVhbCBib29sIGFsbG93c0hvcml6b250YWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzVmVydGljYWxTdHJldGNo
aW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKLSAgICB2aXJ0dWFsIEludFNpemUg
c3RyZXRjaEFtb3VudCgpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgcGlubmVkSW5EaXJlY3Rpb24o
Y29uc3QgRmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxIb3Jpem9u
dGFsbHkoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIGNhblNjcm9sbFZlcnRpY2FsbHkoKSA9IDA7
Ci0gICAgdmlydHVhbCBib29sIHNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxEaXJl
Y3Rpb24pID0gMDsKLQotICAgIC8vIFJldHVybiB0aGUgYWJzb2x1dGUgc2Nyb2xsIHBvc2l0aW9u
LCBub3QgcmVsYXRpdmUgdG8gdGhlIHNjcm9sbCBvcmlnaW4uCi0gICAgdmlydHVhbCBXZWJDb3Jl
OjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgPSAwOwotCi0gICAgdmlydHVhbCB2
b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFs
IHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25z
dCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRU
aW1lcigpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9
IDA7Ci0KLSAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0aGluIHRo
ZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKLSAgICAvLyB0aGUgcGFn
ZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCi0gICAgdmlydHVhbCB2
b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsKLX07Ci0K
LWNsYXNzIFNjcm9sbENvbnRyb2xsZXIgewotICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFNjcm9s
bENvbnRyb2xsZXIpOwotCi1wdWJsaWM6Ci0gICAgZXhwbGljaXQgU2Nyb2xsQ29udHJvbGxlcihT
Y3JvbGxDb250cm9sbGVyQ2xpZW50Kik7Ci0KLSAgICBib29sIGhhbmRsZVdoZWVsRXZlbnQoY29u
c3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0gICAgdm9pZCBzbmFwUnViYmVyQmFuZFRpbWVyRmly
ZWQoKTsKLQotICAgIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0OwotCi1wcml2
YXRlOgotICAgIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLSAgICB2b2lkIHNuYXBS
dWJiZXJCYW5kKCk7Ci0KLSAgICBib29sIHNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJl
Y3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0KLSAgICBTY3JvbGxDb250cm9sbGVy
Q2xpZW50KiBtX2NsaWVudDsKLQotICAgIGJvb2wgbV9pblNjcm9sbEdlc3R1cmU7Ci0gICAgYm9v
bCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsKLSAgICBib29sIG1faWdub3JlTW9tZW50dW1T
Y3JvbGxzOwotICAgIAotICAgIENGVGltZUludGVydmFsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGlt
ZXN0YW1wOwotICAgIEZsb2F0U2l6ZSBtX292ZXJmbG93U2Nyb2xsRGVsdGE7Ci0gICAgRmxvYXRT
aXplIG1fc3RyZXRjaFNjcm9sbEZvcmNlOwotICAgIEZsb2F0U2l6ZSBtX21vbWVudHVtVmVsb2Np
dHk7Ci0KLSAgICAvLyBSdWJiZXIgYmFuZCBzdGF0ZS4KLSAgICBDRlRpbWVJbnRlcnZhbCBtX3N0
YXJ0VGltZTsKLSAgICBGbG9hdFNpemUgbV9zdGFydFN0cmV0Y2g7Ci0gICAgRmxvYXRQb2ludCBt
X29yaWdPcmlnaW47Ci0gICAgRmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5OwotCi0gICAgYm9vbCBt
X3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJfQkFORElORykKLQotI2VuZGlmIC8vIFNjcm9s
bENvbnRyb2xsZXJfaApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENv
bnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Nj
cm9sbENvbnRyb2xsZXIubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQwNiAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDE0LTIwMTUgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBh
cmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5j
bHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgotCi0jaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50
LmgiCi0jaW5jbHVkZSAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIgotI2luY2x1ZGUgPHN5cy9z
eXNjdGwuaD4KLSNpbmNsdWRlIDxzeXMvdGltZS5oPgotCi0jaWYgRU5BQkxFKFJVQkJFUl9CQU5E
SU5HKQotCi1zdGF0aWMgTlNUaW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKLXsKLSAgICBpZiAo
W1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9y
KHN5c3RlbVVwdGltZSldKQotICAgICAgICByZXR1cm4gW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJ
bmZvXSBzeXN0ZW1VcHRpbWVdOwotCi0gICAgLy8gR2V0IGhvdyBsb25nIHN5c3RlbSBoYXMgYmVl
biB1cC4gRm91bmQgYnkgbG9va2luZyBnZXR0aW5nICJib290dGltZSIgZnJvbSB0aGUga2VybmVs
LgotICAgIHN0YXRpYyBzdHJ1Y3QgdGltZXZhbCBib290dGltZSA9IHswLCAwfTsKLSAgICBpZiAo
IWJvb3R0aW1lLnR2X3NlYykgewotICAgICAgICBpbnQgbWliWzJdID0ge0NUTF9LRVJOLCBLRVJO
X0JPT1RUSU1FfTsKLSAgICAgICAgc2l6ZV90IHNpemUgPSBzaXplb2YoYm9vdHRpbWUpOwotICAg
ICAgICBpZiAoLTEgPT0gc3lzY3RsKG1pYiwgMiwgJmJvb3R0aW1lLCAmc2l6ZSwgMCwgMCkpCi0g
ICAgICAgICAgICBib290dGltZS50dl9zZWMgPSAwOwotICAgIH0KLSAgICBzdHJ1Y3QgdGltZXZh
bCBub3c7Ci0gICAgaWYgKGJvb3R0aW1lLnR2X3NlYyAmJiAtMSAhPSBnZXR0aW1lb2ZkYXkoJm5v
dywgMCkpIHsKLSAgICAgICAgc3RydWN0IHRpbWV2YWwgdXB0aW1lOwotICAgICAgICB0aW1lcnN1
Yigmbm93LCAmYm9vdHRpbWUsICZ1cHRpbWUpOwotICAgICAgICBOU1RpbWVJbnRlcnZhbCByZXN1
bHQgPSB1cHRpbWUudHZfc2VjICsgKHVwdGltZS50dl91c2VjIC8gMUUrNik7Ci0gICAgICAgIHJl
dHVybiByZXN1bHQ7Ci0gICAgfQotICAgIHJldHVybiAwOwotfQotCi0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotc3RhdGljIGNvbnN0IGZsb2F0IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQg
PSAwLjEwZjsKLXN0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0
Y2hSYXRpbyA9IDE7Ci1zdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJl
ZERlbHRhQmVmb3JlU3RyZXRjaCA9IDEwOwotCi1zdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9y
VGltZURlbHRhKGZsb2F0IGluaXRpYWxQb3NpdGlvbiwgZmxvYXQgaW5pdGlhbFZlbG9jaXR5LCBm
bG9hdCBlbGFwc2VkVGltZSkKLXsKLSAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVE
ZWx0YShpbml0aWFsUG9zaXRpb24sIGluaXRpYWxWZWxvY2l0eSwgZWxhcHNlZFRpbWUpOwotfQot
Ci1zdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGZsb2F0IGRlbHRhKQot
ewotICAgIHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGRlbHRhKTsKLX0K
LQotc3RhdGljIGZsb2F0IHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShmbG9hdCBkZWx0YSkK
LXsKLSAgICByZXR1cm4gd2tOU1JlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShkZWx0YSk7Ci19
Ci0KLXN0YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKQotewotICAgIHN0YXRpYyBm
bG9hdCBtdWx0aXBsaWVyID0gLTE7Ci0gICAgaWYgKG11bHRpcGxpZXIgPCAwKSB7Ci0gICAgICAg
IG11bHRpcGxpZXIgPSBbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBmbG9h
dEZvcktleTpAIk5TU2Nyb2xsV2hlZWxNdWx0aXBsaWVyIl07Ci0gICAgICAgIGlmIChtdWx0aXBs
aWVyIDw9IDApCi0gICAgICAgICAgICBtdWx0aXBsaWVyID0gMTsKLSAgICB9Ci0gICAgcmV0dXJu
IG11bHRpcGxpZXI7Ci19Ci0KLVNjcm9sbENvbnRyb2xsZXI6OlNjcm9sbENvbnRyb2xsZXIoU2Ny
b2xsQ29udHJvbGxlckNsaWVudCogY2xpZW50KQotICAgIDogbV9jbGllbnQoY2xpZW50KQotICAg
ICwgbV9pblNjcm9sbEdlc3R1cmUoZmFsc2UpCi0gICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9n
cmVzcyhmYWxzZSkKLSAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxzKGZhbHNlKQotICAgICwg
bV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAgICAsIG1fc3RhcnRUaW1lKDApCi0g
ICAgLCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkKLXsKLX0KLQotYm9vbCBT
Y3JvbGxDb250cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVu
dCYgd2hlZWxFdmVudCkKLXsKLSAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3Jt
V2hlZWxFdmVudFBoYXNlQmVnYW4pIHsKLSAgICAgICAgLy8gRmlyc3QsIGNoZWNrIGlmIHdlIHNo
b3VsZCBydWJiZXItYmFuZCBhdCBhbGwuCi0gICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5E
aXJlY3Rpb24oRmxvYXRTaXplKC13aGVlbEV2ZW50LmRlbHRhWCgpLCAwKSkKLSAgICAgICAgICAg
ICYmICFzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKHdoZWVsRXZlbnQpKQot
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgIG1faW5TY3JvbGxHZXN0dXJlID0g
dHJ1ZTsKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKLSAgICAg
ICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAgICAgICAgbV9sYXN0TW9tZW50
dW1TY3JvbGxUaW1lc3RhbXAgPSAwOwotICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9h
dFNpemUoKTsKLQotICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3Ry
ZXRjaEFtb3VudCgpOwotICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJv
dW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC53aWR0aCgpKSk7Ci0gICAgICAg
IG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVs
dGEoc3RyZXRjaEFtb3VudC5oZWlnaHQoKSkpOwotICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVs
dGEgPSBGbG9hdFNpemUoKTsKLQotICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwot
Ci0gICAgICAgIHJldHVybiB0cnVlOwotICAgIH0KLQotICAgIGlmICh3aGVlbEV2ZW50LnBoYXNl
KCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAgICAgICBzbmFwUnViYmVy
QmFuZCgpOwotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0KLSAgICBib29sIGlzTW9tZW50
dW1TY3JvbGxFdmVudCA9ICh3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKSAhPSBQbGF0Zm9ybVdo
ZWVsRXZlbnRQaGFzZU5vbmUpOwotICAgIGlmIChtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyAmJiAo
aXNNb21lbnR1bVNjcm9sbEV2ZW50IHx8IG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKSkg
ewotICAgICAgICBpZiAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCkgPT0gUGxhdGZvcm1XaGVl
bEV2ZW50UGhhc2VFbmRlZCkgewotICAgICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMg
PSBmYWxzZTsKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICB9Ci0gICAgICAgIHJl
dHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICBmbG9hdCBkZWx0YVggPSBtX292ZXJmbG93U2Nyb2xs
RGVsdGEud2lkdGgoKTsKLSAgICBmbG9hdCBkZWx0YVkgPSBtX292ZXJmbG93U2Nyb2xsRGVsdGEu
aGVpZ2h0KCk7Ci0KLSAgICAvLyBSZXNldCBvdmVyZmxvdyB2YWx1ZXMgYmVjYXVzZSB3ZSBtYXkg
ZGVjaWRlIHRvIHJlbW92ZSBkZWx0YSBhdCB2YXJpb3VzIHBvaW50cyBhbmQgcHV0IGl0IGludG8g
b3ZlcmZsb3cuCi0gICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7Ci0KLSAg
ICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotICAg
IGJvb2wgaXNWZXJ0aWNhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFtb3VudC5oZWlnaHQoKTsKLSAg
ICBib29sIGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFtb3VudC53aWR0aCgpOwot
Ci0gICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVg7Ci0gICAgZmxvYXQgZXZlbnRDb2FsZXNj
ZWREZWx0YVk7Ci0KLSAgICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRh
bGx5U3RyZXRjaGVkKSB7Ci0gICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gLXdoZWVsRXZl
bnQudW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWCgpOwotICAgICAgICBldmVudENvYWxlc2Nl
ZERlbHRhWSA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVkoKTsKLSAg
ICB9IGVsc2UgewotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LmRl
bHRhWCgpOwotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LmRlbHRh
WSgpOwotICAgIH0KLQotICAgIGRlbHRhWCArPSBldmVudENvYWxlc2NlZERlbHRhWDsKLSAgICBk
ZWx0YVkgKz0gZXZlbnRDb2FsZXNjZWREZWx0YVk7Ci0KLSAgICAvLyBTbGlnaHRseSBwcmVmZXIg
c2Nyb2xsaW5nIHZlcnRpY2FsbHkgYnkgYXBwbHlpbmcgdGhlID0gY2FzZSB0byBkZWx0YVkKLSAg
ICBpZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJzZihkZWx0YVgpKQotICAgICAgICBkZWx0YVggPSAw
OwotICAgIGVsc2UKLSAgICAgICAgZGVsdGFZID0gMDsKLQotICAgIGJvb2wgc2hvdWxkU3RyZXRj
aCA9IGZhbHNlOwotCi0gICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2UgbW9tZW50dW1QaGFzZSA9
IHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpOwotCi0gICAgLy8gSWYgd2UgYXJlIHN0YXJ0aW5n
IG1vbWVudHVtIHNjcm9sbGluZyB0aGVuIGRvIHNvbWUgc2V0dXAuCi0gICAgaWYgKCFtX21vbWVu
dHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAobW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZl
bnRQaGFzZUJlZ2FuIHx8IG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VD
aGFuZ2VkKSkKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSB0cnVlOwotCi0g
ICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKSAtIG1f
bGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOwotICAgIGlmIChtX2luU2Nyb2xsR2VzdHVyZSB8
fCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykgewotICAgICAgICBpZiAobV9sYXN0TW9tZW50
dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID4gMCAmJiB0aW1lRGVsdGEgPCBzY3JvbGxW
ZWxvY2l0eVplcm9pbmdUaW1lb3V0KSB7Ci0gICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHku
c2V0V2lkdGgoZXZlbnRDb2FsZXNjZWREZWx0YVggLyAoZmxvYXQpdGltZURlbHRhKTsKLSAgICAg
ICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eS5zZXRIZWlnaHQoZXZlbnRDb2FsZXNjZWREZWx0YVkg
LyAoZmxvYXQpdGltZURlbHRhKTsKLSAgICAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGlt
ZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAg
ICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3Rh
bXAoKTsKLSAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotICAg
ICAgICB9Ci0KLSAgICAgICAgaWYgKGlzVmVydGljYWxseVN0cmV0Y2hlZCkgewotICAgICAgICAg
ICAgaWYgKCFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiBtX2NsaWVudC0+cGlubmVkSW5EaXJl
Y3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7Ci0gICAgICAgICAgICAgICAgLy8gU3RyZXRj
aGluZyBvbmx5IGluIHRoZSB2ZXJ0aWNhbC4KLSAgICAgICAgICAgICAgICBpZiAoZGVsdGFZICYm
IChmYWJzZihkZWx0YVggLyBkZWx0YVkpIDwgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNo
UmF0aW8pKQotICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAg
IGVsc2UgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFC
ZWZvcmVTdHJldGNoKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAg
ICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7Ci0gICAgICAgICAgICAgICAgfSBlbHNlCi0gICAg
ICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93
U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0g
ZWxzZSBpZiAoaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKLSAgICAgICAgICAgIC8vIFN0cmV0
Y2hpbmcgb25seSBpbiB0aGUgaG9yaXpvbnRhbC4KLSAgICAgICAgICAgIGlmIChtX2NsaWVudC0+
cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkpKSB7Ci0gICAgICAgICAgICAg
ICAgaWYgKGRlbHRhWCAmJiAoZmFic2YoZGVsdGFZIC8gZGVsdGFYKSA8IHJ1YmJlcmJhbmREaXJl
Y3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKLSAgICAgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsK
LSAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVkpIDwgcnViYmVyYmFuZE1pbmlt
dW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgewotICAgICAgICAgICAgICAgICAgICBtX292
ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQo
KSArIGRlbHRhWSk7Ci0gICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7Ci0gICAgICAgICAg
ICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5z
ZXRIZWlnaHQobV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpICsgZGVsdGFZKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIC8vIE5vdCBzdHJldGNoaW5n
IGF0IGFsbCB5ZXQuCi0gICAgICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9u
KEZsb2F0U2l6ZShkZWx0YVgsIGRlbHRhWSkpKSB7Ci0gICAgICAgICAgICAgICAgaWYgKGZhYnNm
KGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkgewotICAgICAgICAgICAgICAgICAgICBpZiAoZmFi
c2YoZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gp
IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0
aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAgICAg
ICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAgICAgICB9IGVsc2UKLSAgICAg
ICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJm
bG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAgICAgICAgfQotICAg
ICAgICAgICAgICAgIHNob3VsZFN0cmV0Y2ggPSB0cnVlOwotICAgICAgICAgICAgfQotICAgICAg
ICB9Ci0gICAgfQotCi0gICAgaWYgKGRlbHRhWCB8fCBkZWx0YVkpIHsKLSAgICAgICAgaWYgKCEo
c2hvdWxkU3RyZXRjaCB8fCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgfHwgaXNIb3Jpem9udGFsbHlT
dHJldGNoZWQpKSB7Ci0gICAgICAgICAgICBpZiAoZGVsdGFZKSB7Ci0gICAgICAgICAgICAgICAg
ZGVsdGFZICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotICAgICAgICAgICAgICAgIG1fY2xp
ZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoMCwgZGVsdGFZKSk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgICAgICBpZiAoZGVsdGFYKSB7Ci0gICAgICAgICAgICAgICAgZGVsdGFYICo9
IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1l
ZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoZGVsdGFYLCAwKSk7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5hbGxvd3NIb3Jpem9udGFs
U3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgewotICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7Ci0g
ICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAwOwotICAgICAgICAgICAgfSBl
bHNlIGlmIChkZWx0YVggJiYgIWlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkICYmICFtX2NsaWVudC0+
cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7Ci0gICAgICAgICAgICAg
ICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotCi0gICAgICAgICAgICAgICAg
bV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMo
RmxvYXRTaXplKGRlbHRhWCwgMCkpOwotICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7Ci0gICAg
ICAgICAgICB9Ci0KLSAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmFsbG93c1ZlcnRpY2FsU3Ry
ZXRjaGluZyh3aGVlbEV2ZW50KSkgewotICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7Ci0gICAg
ICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAwOwotICAgICAgICAgICAgfSBlbHNl
IGlmIChkZWx0YVkgJiYgIWlzVmVydGljYWxseVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5l
ZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgewotICAgICAgICAgICAgICAgIGRl
bHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLQotICAgICAgICAgICAgICAgIG1fY2xp
ZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0
U2l6ZSgwLCBkZWx0YVkpKTsKLSAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOwotICAgICAgICAg
ICAgfQotCi0gICAgICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3Ry
ZXRjaEFtb3VudCgpOwotCi0gICAgICAgICAgICBpZiAobV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jl
c3MpIHsKLSAgICAgICAgICAgICAgICBpZiAoKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihG
bG9hdFNpemUoZXZlbnRDb2FsZXNjZWREZWx0YVgsIGV2ZW50Q29hbGVzY2VkRGVsdGFZKSkgfHwg
KGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFYKSArIGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFZ
KSA8PSAwKSkgJiYgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXApIHsKLSAgICAgICAgICAg
ICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSB0cnVlOwotICAgICAgICAgICAgICAg
ICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOwotICAgICAgICAgICAgICAg
ICAgICBzbmFwUnViYmVyQmFuZCgpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0K
LQotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgobV9zdHJldGNoU2Ny
b2xsRm9yY2Uud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZS5zZXRIZWlnaHQobV9zdHJldGNoU2Nyb2xsRm9yY2UuaGVpZ2h0KCkgKyBkZWx0YVkpOwot
Ci0gICAgICAgICAgICBGbG9hdFNpemUgZGFtcGVkRGVsdGEoY2VpbGYoZWxhc3RpY0RlbHRhRm9y
UmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkpKSwgY2VpbGYoZWxhc3Rp
Y0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLmhlaWdodCgpKSkpOwot
Ci0gICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVk
Z2VDb25zdHJhaW50cyhkYW1wZWREZWx0YSAtIHN0cmV0Y2hBbW91bnQpOwotICAgICAgICB9Ci0g
ICAgfQotCi0gICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzICYmIG1vbWVudHVtUGhh
c2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAgICAgICBtX21vbWVudHVt
U2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOwotICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xs
cyA9IGZhbHNlOwotICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IDA7Ci0g
ICAgfQotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgZmxvYXQgcm91bmRU
b3dhcmRaZXJvKGZsb2F0IG51bSkKLXsKLSAgICByZXR1cm4gbnVtID4gMCA/IGNlaWxmKG51bSAt
IDAuNWYpIDogZmxvb3JmKG51bSArIDAuNWYpOwotfQotCi1zdGF0aWMgaW5saW5lIGZsb2F0IHJv
dW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZmxvYXQgbnVtKQotewotICAgIGZsb2F0IHJvdW5k
ZWROdW0gPSByb3VuZGYobnVtKTsKLSAgICBpZiAoZmFicyhudW0gLSByb3VuZGVkTnVtKSA8IDAu
MTI1KQotICAgICAgICBudW0gPSByb3VuZGVkTnVtOwotCi0gICAgcmV0dXJuIHJvdW5kVG93YXJk
WmVybyhudW0pOwotfQotCi12b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kVGlt
ZXJGaXJlZCgpCi17Ci0gICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyB8fCBtX2ln
bm9yZU1vbWVudHVtU2Nyb2xscykgewotICAgICAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEg
PSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV0gLSBtX3N0YXJ0VGltZTsK
LQotICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXplKCkpIHsKLSAgICAgICAg
ICAgIG1fc3RhcnRTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLSAgICAgICAg
ICAgIGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNpemUoKSkgewotICAgICAgICAgICAgICAg
IHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0KLSAgICAgICAgICAgICAgICBtX3N0cmV0Y2hT
Y3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgICAgIG1fc3RhcnRUaW1lID0g
MDsKLSAgICAgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOwotICAgICAg
ICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKLSAgICAgICAgICAgICAgICBt
X29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgICAgIHJldHVybjsKLSAg
ICAgICAgICAgIH0KLQotICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0gbV9jbGllbnQtPmFic29s
dXRlU2Nyb2xsUG9zaXRpb24oKSAtIG1fc3RhcnRTdHJldGNoOwotICAgICAgICAgICAgbV9vcmln
VmVsb2NpdHkgPSBtX21vbWVudHVtVmVsb2NpdHk7Ci0KLSAgICAgICAgICAgIC8vIEp1c3QgbGlr
ZSBub3JtYWwgc2Nyb2xsaW5nLCBwcmVmZXIgdmVydGljYWwgcnViYmVyYmFuZGluZwotICAgICAg
ICAgICAgaWYgKGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgpKSA+PSBmYWJzZihtX29yaWdW
ZWxvY2l0eS53aWR0aCgpKSkKLSAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0
aCgwKTsKLQotICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQgaG9yaXpvbnRhbGx5IGlm
IGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCBob3Jpem9udGFsbHkKLSAgICAgICAgICAgIGlm
ICghbV9jbGllbnQtPmNhblNjcm9sbEhvcml6b250YWxseSgpKQotICAgICAgICAgICAgICAgIG1f
b3JpZ1ZlbG9jaXR5LnNldFdpZHRoKDApOwotCi0gICAgICAgICAgICAvLyBEb24ndCBydWJiZXIt
YmFuZCB2ZXJ0aWNhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5
Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxWZXJ0aWNhbGx5KCkpCi0gICAg
ICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0SGVpZ2h0KDApOwotICAgICAgICB9Ci0KLSAg
ICAgICAgRmxvYXRQb2ludCBkZWx0YShyb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGVsYXN0
aWNEZWx0YUZvclRpbWVEZWx0YShtX3N0YXJ0U3RyZXRjaC53aWR0aCgpLCAtbV9vcmlnVmVsb2Np
dHkud2lkdGgoKSwgKGZsb2F0KXRpbWVEZWx0YSkpLAotICAgICAgICAgICAgcm91bmRUb0Rldmlj
ZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2gu
aGVpZ2h0KCksIC1tX29yaWdWZWxvY2l0eS5oZWlnaHQoKSwgKGZsb2F0KXRpbWVEZWx0YSkpKTsK
LQotICAgICAgICBpZiAoZmFicyhkZWx0YS54KCkpID49IDEgfHwgZmFicyhkZWx0YS55KCkpID49
IDEpIHsKLSAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250
ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YS54KCksIGRlbHRhLnkoKSkgLSBtX2Ns
aWVudC0+c3RyZXRjaEFtb3VudCgpKTsKLQotICAgICAgICAgICAgRmxvYXRTaXplIG5ld1N0cmV0
Y2ggPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotCi0gICAgICAgICAgICBtX3N0cmV0Y2hT
Y3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEobmV3U3RyZXRj
aC53aWR0aCgpKSk7Ci0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQo
cmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2guaGVpZ2h0KCkpKTsKLSAgICAg
ICAgfSBlbHNlIHsKLSAgICAgICAgICAgIG1fY2xpZW50LT5hZGp1c3RTY3JvbGxQb3NpdGlvblRv
Qm91bmRzSWZOZWNlc3NhcnkoKTsKLQotICAgICAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKTsKLSAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlID0gRmxvYXRTaXplKCk7Ci0g
ICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7Ci0gICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9
IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOwot
ICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLSAgICAgICAgfQotICAg
IH0gZWxzZSB7Ci0gICAgICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5j
ZVJlZmVyZW5jZURhdGVdOwotICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOwot
ICAgIH0KLX0KLQotYm9vbCBTY3JvbGxDb250cm9sbGVyOjppc1J1YmJlckJhbmRJblByb2dyZXNz
KCkgY29uc3QKLXsKLSAgICBpZiAoIW1faW5TY3JvbGxHZXN0dXJlICYmICFtX21vbWVudHVtU2Ny
b2xsSW5Qcm9ncmVzcyAmJiAhbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQotICAgIHJldHVybiAhbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKS5p
c1plcm8oKTsKLX0KLQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU25hcFJ1YmJlcmJhbmRU
aW1lcigpCi17Ci0gICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0gICAg
bV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSBmYWxzZTsKLX0KLQotdm9pZCBTY3JvbGxD
b250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCi17Ci0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURl
bHRhID0gc3lzdGVtVXB0aW1lKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKLSAg
ICBpZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID49IHNjcm9s
bFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQpCi0gICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZs
b2F0U2l6ZSgpOwotCi0gICAgbV9pblNjcm9sbEdlc3R1cmUgPSBmYWxzZTsKLQotICAgIGlmICht
X3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgbV9z
dGFydFRpbWUgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07Ci0gICAg
bV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBv
aW50KCk7Ci0gICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLQotICAgIG1fY2xpZW50
LT5zdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLSAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJ
c0FjdGl2ZSA9IHRydWU7Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6c2hvdWxkUnViYmVy
QmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVs
RXZlbnQpCi17Ci0gICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPiAwKQotICAgICAgICByZXR1
cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxMZWZ0KTsKLSAg
ICBpZiAod2hlZWxFdmVudC5kZWx0YVgoKSA8IDApCi0gICAgICAgIHJldHVybiBtX2NsaWVudC0+
c2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbFJpZ2h0KTsKLQotICAgIHJldHVybiB0
cnVlOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoUlVC
QkVSX0JBTkRJTkcpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>247685</attachid>
            <date>2015-03-02 11:36:05 -0800</date>
            <delta_ts>2015-03-02 11:58:35 -0800</delta_ts>
            <desc>Archive of layout-test-results from ews101 for mac-mavericks</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>801210</size>
            <attacher name="Build Bot">buildbot</attacher>
            
              <data encoding="base64">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
wfEoCI4HQXAkguCYCoJDEwSHIQiOmiA4LgTB8Z8gOHRBcDQFwVEXBEdDEByqIDhEsUe1jnaco33w
aB8swa6mC501iyfRXpsmHDh4RVfEmQsLjzzp8t93geda05V0/CwJ77Y+iTsLTcV8SZgKiaeixMpD
6NvIc2qfsNjJa3jutnbyYHquzUuztGsseJJxJhs3m4RYd6qz0+DHGDa3fVlXgVx0kCKY+BKdVmED
byEyHTxg+jZ8+wF8fTEfTJYtHY/T+57RU4jPNviNcZi6enfV7d5cV/CW42yvKr20mKy0YJSJQRab
+g4lkRcrPVpakhYEhBdbSbJbfr2c3g9XuileJGfl5JW+DgLPGtKWp8y9yml1oFpe9vfygOPBO2i0
OwEeen3MOXfled94ICWLBzk00MvVXwunEFmPfjGFpkISi4xRSG0D/YNmnN2RkF4YzreJ7xL7Ejgg
FqYX3F0Qoh902GDAQr8w/+CphIkDib0lKX6g8HFG8ei1lcC/CwMnzC0hVYyaZ3MtZkA6UCiv28Dn
aVdfUONhhYEC0dF66x1ob0UjSg39HZCxPiDMqL8HCmiUBPuRR0RNewdErHGMblxqs96AerpFvkuW
OXEGsdS9/fzHzbdfP0rRYBLTlNx28Oj/9D9QSwMECgAAAAAAA1tiRgAAAAAAAAAAAAAAAAUAHABm
YXN0L1VUCQAD1bj0VJq59FR1eAsAAQT1AQAABFAAAABQSwMECgAAAAAAEltiRgAAAAAAAAAAAAAA
AAwAHABmYXN0L2V2ZW50cy9VVAkAA/O49FSaufRUdXgLAAEE9QEAAARQAAAAUEsDBBQAAgAIAANb
YkauD6VedwAAAPoAAABGABwAZmFzdC9ldmVudHMvY29udGludW91cy1wbGF0Zm9ybS13aGVlbGV2
ZW50LWluLXNjcm9sbGluZy1kaXYtYWN0dWFsLnR4dFVUCQAD1bj0VNW49FR1eAsAAQT1AQAABFAA
AAALcAwOVkgtS80r0SvPSE3NcUnNKUmMVMgsVijPzEvJL9dLrShITS5JTQlOLsrPyQnJL9DSNeYK
wKYrAqcun9S0EpzaCNnl5ujpo5CSWaZXDBNVKM7IL81JUUhKVTAyMNBTCE8sVjABMtCVgqxFUmsI
UwvSxMUFAFBLAwQUAAIACAADW2JGrC1nk/gAAACMAgAARAAcAGZhc3QvZXZlbnRzL2NvbnRpbnVv
dXMtcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2LWRpZmYudHh0VVQJAAPVuPRU
1bj0VHV4CwABBPUBAAAEUAAAAMWPwU7DMBBE7/mKPRM2bgFxTlFBQvSACCJwdJMNteTaUXbdlL8n
saiQqNIeudgre97MLCKCevM2bInVUotW92WhSlo/Gfm57oKxtXohS5pJWf3lg6AQC3bEwQqrRrMo
2pEb5so7MS74wNhaLY3vtthvaKDHfzQOueq8tcZ9Ym12SPuWKqE6k70kaZr+bxtdSdA2dslzwPnl
LaTjkecJPC+KAiKXRYslWdEfYBh642rfZ4dVimj56tsLvJ7A3iexFTUyzZ1Lw0gNm2R8eD6FHOnH
9JPVkvRh8bj6k8AbH2wNa4Kr2SyDUjPcDMORNrr/iucH8UglkHwDUEsDBBQAAgAIAANbYkajZC01
WQAAAAMBAABIABwAZmFzdC9ldmVudHMvY29udGludW91cy1wbGF0Zm9ybS13aGVlbGV2ZW50LWlu
LXNjcm9sbGluZy1kaXYtZXhwZWN0ZWQudHh0VVQJAAPVuPRU1bj0VHV4CwABBPUBAAAEUAAAAAtw
DA5WSC1LzSvRK89ITc1xSc0pSYxUyCxWKM/MS8kv10utKEhNLklNCU4uys/JCckv0NI15grApisC
py6f1LQSnNqIsisls0yvGCaKTwe6cpDVeN3FxQUAUEsDBBQAAgAIAANbYkYBANKuKggAADgdAABM
ABwAZmFzdC9ldmVudHMvY29udGludW91cy1wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGlu
Zy1kaXYtcHJldHR5LWRpZmYuaHRtbFVUCQAD1bj0VNW49FR1eAsAAQT1AQAABFAAAAC9WWtv27wV
/p5fISTYAhSRZMd2FjuphzYXbFg3FEuxbp8GSqIsNpSokZTt9H3333d4kyVZcpy1W4NGEq/nOec5
FzK3mczp8uQ2wyiBR44l8uIMcYHl+/NKpv71OTQL+ULx8mRBSfF84S3WRBCJE++XEw/+SbyVfoJj
xpEkrFh4BSvwje6KGE8w9yMmJcsX3rjcegm84+Tm5N8nZjm7SMwo4wvvbDSZ677gkVB8T9LU9kco
fl5xVhWJ74am1+qnuZHZQTBKEu8sSRLTl7JC+inKCX1ZeDkrmChRbAXMEV8REHmMc29kmkoG4DQO
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
Xx6D+38aeX5Wmrw6QqtXB7T6A5g7D13yQD2h/2D6H1BLAwQUAAIACAALW2JGKCc/tXwAAAAAAQAA
OwAcAGZhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtaW4tc2Nyb2xsaW5nLWRpdi1hY3R1
YWwudHh0VVQJAAPmuPRU5rj0VHV4CwABBPUBAAAEUAAAAAtwDA5WSC1LzSvRK89ITc1xSc0pSYxU
yCxWKM/MS8kv10utKEhNLklNCU4uys/JCckv0NI1NDLgCsCmLwKnPp/UtBI8Ggnb5+bo6aOQklmm
VwwTVyjOyC/NSVFISlUwMjDQUwhPLFYwATLQlYKsRlILNAyi1sjQVI+LCwBQSwMEFAACAAgAC1ti
Ri4MYqYGAQAAsAIAADkAHABmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9s
bGluZy1kaXYtZGlmZi50eHRVVAkAA+a49FTnuPRUdXgLAAEE9QEAAARQAAAAxY9BT8MwDIXv/RU5
U5y0FXDu0EBC7DDRicIxa10WkTVV46zl39OGTUhM7Y5cEsv2994zADDxarTboxVLSVI85JnIcfus
6PjdO6VL8YIapUWh5ZdxBISWoEXrNFlRSUsCD1gPdaMlVabdQ7fDARmboGqwRWu0VvUHlOoA2DdY
EJacegrCMPyHCLIgJ7UPkKYM4us7Fo5PmgZsvcgy5jnuJZaoSb4zZVmn6tJ0/JQ/85Ib01xBnEQT
4NskuMKK5sjLjuC54R5uT4NZ6DhoVI/arrHNR6+NKj7PlMZs88GntcLHxdPqTyq7M06XbIssiSLO
cmnZzVCc7Xrf3+XhyJ/lJL7lAQu+AVBLAwQUAAIACAALW2JG2UobvW4AAAA9AQAAPQAcAGZhc3Qv
ZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQtaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHRV
VAkAA+a49FTmuPRUdXgLAAEE9QEAAARQAAAAC3AMDlZILUvNK9Erz0hNzXFJzSlJjFTILFYoz8xL
yS/XS60oSE0uSU0JTi7Kz8kJyS/Q0jU0MuAKwKYvAqc+n9S0EjwaibQvJbNMrxgmjlcPVKIgsyI1
pzggtSgcZFVIZnI2ukEgh+F3NW6juABQSwMEFAACAAgADFtiRsUmjIc5CAAAZx0AAEEAHABmYXN0
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
BFAAAAC1kE9Pg0AQxe98irnjskQ9tBdDlTVphJQIkeKlWWCakqximFltv71A/4REPXrZnbz35veS
EUKAfGmNfUOSoWYtVZ7KHMunhk/fvW1MLZ/RoCaURh9ay4KRWHRI1jDJrSaW+Inv/fy1wz45zKLU
1FQC9x9YMdYe79lxXfef63TFVpuxLAhAXN9czcEd3yBwIFmkKQwwNax4NRrWr9AQ+L97cVvjYOdD
zVEPV/EmVFG22CTLtYpOe2N6DXfgD3HuLDpiavTi+RDhqDju42IZnW3atdbUUCLMfA9yTXDre1N0
8Re6+IEupuhiip4f0bMLmmxVIdHWGnNIdEdYXyrAgUylGTys4iRSmXK+AVBLAwQUAAIACAASW2JG
sT5r21QBAAARBAAAKQAcAGZhc3QvZXZlbnRzL3doZWVsZXZlbnQtYmFzaWMtZXhwZWN0ZWQudHh0
VVQJAAPzuPRU87j0VHV4CwABBPUBAAAEUAAAAM2S32qDMBTG7/MUB6+HuD3AoMwwCloFhbW7kdQc
14BNiom1vv0StWz9y7arXSTI+X5fTs5n8iSF/PeLZGWj6hq2qtUI3QaxBrXHBjbY4P8T6SKEPyyS
ozYazAZhzbQooWplaYSSrBamB1UNkjZMctbwqSvuURpCEgm6LUvU+gF61UIn7O00IjC7NwK1s3vp
LMs82FqKfaAlKzuD6pDDugcvp1kOL0mcRjSnnk8IcTi8uTbUdfF3jTLK9Dv0i2L4LgoQGmIXwhlx
4Q2TuAhplM+KdL6kkfMFhyC4w0XzBZ2wx3vHzV6P2NOIdUJy1flKjglZTbZ1PWpcle3WHXBVNfYH
hGJ/Wxybn0x/LZ+bhp8G92XlWBv2Pgx4VYoVx7NrnEU9De7gJTxD4GjTtHhStzU87LA0yMOh8k1d
3XCtLlyrUZ1eYmWj61PWaPvAjm5y8soI+QRQSwMEFAACAAgAEltiRgZVkNFaCAAAdB8AAC0AHABm
YXN0L2V2ZW50cy93aGVlbGV2ZW50LWJhc2ljLXByZXR0eS1kaWZmLmh0bWxVVAkAA/O49FTzuPRU
dXgLAAEE9QEAAARQAAAA3Vltb9s4Ev6eXyEkuA2wiCQ7tlO/pD60sYNbXHobXILr9r4UlERZbCjR
J1KJ09v97zd8kyVZsn3XYoG9LrqSyCH5zMwzL3SvE5HS+cl1glEEjxQL5IQJyjkWb88LEbvjcxjm
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
BFAAAABQSwMEFAACAAgAaFtiRq4PpV53AAAA+gAAAE4AHAByZXRyaWVzL2Zhc3QvZXZlbnRzL2Nv
bnRpbnVvdXMtcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2LWFjdHVhbC50eHRV
VAkAA5S59FSUufRUdXgLAAEE9QEAAARQAAAAC3AMDlZILUvNK9Erz0hNzXFJzSlJjFTILFYoz8xL
yS/XS60oSE0uSU0JTi7Kz8kJyS/Q0jXmCsCmKwKnLp/UtBKc2gjZ5ebo6aOQklmmVwwTVSjOyC/N
SVFISlUwMjDQUwhPLFYwATLQlYKsRVJrCFML0sTFBQBQSwMEFAACAAgAaFtiRkemSPD9AAAAnAIA
AEwAHAByZXRyaWVzL2Zhc3QvZXZlbnRzL2NvbnRpbnVvdXMtcGxhdGZvcm0td2hlZWxldmVudC1p
bi1zY3JvbGxpbmctZGl2LWRpZmYudHh0VVQJAAOUufRUlLn0VHV4CwABBPUBAAAEUAAAAM2PwU7D
MBBE7/mKPRM2bgFxTlFBQvSACCJwdJMNteTaUXbdlL8nsaiQqNJeudjWet7MLCKCevM2bInVUotW
92WhSlo/Gfm57oKxtXohS5pJWf3lg6AQC3bEwQqrjqQzA99oFkU7csOs8k6MCz4wtlZL47st9hsa
XMZ/NA656ry1xn1ibXZI+5YqoTqTvSRpmv6PVrqSoG3slOeA88tbSMcjzxN4XhQFRC6LFkuyoj/A
MPTG1b7PDisV0fLVtxd4PYG9T2IramSaO5eGkRo2yfgwPoUc6cf0k9WS9GHxuPqTwBsfbA1rgqvZ
LINSM9wMjyNtdP8Vzw/ikUog+QZQSwMEFAACAAgAaFtiRqNkLTVZAAAAAwEAAFAAHAByZXRyaWVz
L2Zhc3QvZXZlbnRzL2NvbnRpbnVvdXMtcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmct
ZGl2LWV4cGVjdGVkLnR4dFVUCQADlLn0VJS59FR1eAsAAQT1AQAABFAAAAALcAwOVkgtS80r0SvP
SE3NcUnNKUmMVMgsVijPzEvJL9dLrShITS5JTQlOLsrPyQnJL9DSNeYKwKYrAqcun9S0EpzaiLIr
JbNMrxgmik8HunKQ1XjdxcUFAFBLAwQUAAIACABoW2JGcDh8hS8IAABAHQAAVAAcAHJldHJpZXMv
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
lSLkWHIC81MIuyFeK96HygFIUUEY8IFdEkr+3N9kGFZR/VCR+CAoo1Sd9UA0H0qcCtFAbiUIPm7L
27guOt/v0cf4oXZ1vPdEBvV20hmizjZe61pIX59CqnUj9IXArso4X45Bu9C/bI0Cv399DOTu8+Xn
D09PnoYfaE3cYyrRPzwiwOWLhG3U+VnXNk9aM19Y+c6f2OXAnCD7DyO4PALB5RsR/H0QwScoUX46
hMkRECZvhPBGG+hHE0YjQpwvbfc+2OPIao7br5K1Me6guqZHqOu3RSTKm2Gd3cLZf/kZEMFDv4MO
zRckj3UgnKo83UkaA51aG037Gradb2HJsehn/y/0iur/DXw1rx//HsnaNIHs+jpH7KCDKjoAnx3B
JKMiKOOWj7eheuj3D3/8ZL66BFFtImMVhfoLq4uTwPuKGhOFNx2NGt+BfX8TOX4q7NkPwjbMaOMe
9+C+PAb3/zTy/Kw0eXWEVq8OaPUHMHceuvSBekL/4fQ/UEsDBBQAAgAIAGhbYkYoJz+1fAAAAAAB
AABDABwAcmV0cmllcy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGlu
Zy1kaXYtYWN0dWFsLnR4dFVUCQADlLn0VJS59FR1eAsAAQT1AQAABFAAAAALcAwOVkgtS80r0SvP
SE3NcUnNKUmMVMgsVijPzEvJL9dLrShITS5JTQlOLsrPyQnJL9DSNTQy4ArApi8Cpz6f1LQSPBoJ
2+fm6OmjkJJZplcME1cozsgvzUlRSEpVMDIw0FMITyxWMAEy0JWCrEZSCzQMotbI0FSPiwsAUEsD
BBQAAgAIAGhbYkbUNszSCgEAAMACAABBABwAcmV0cmllcy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13
aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYtZGlmZi50eHRVVAkAA5S59FSUufRUdXgLAAEE9QEA
AARQAAAAxY9BT8MwDIXv/RU5U5y0FXDu0EBC7DDRicIxa10WkTVV4q7l39OGTUhM7Y5c4sj2994z
ADDxanS7RyeWkqR4yDOR4/ZZ0bHct0qX4gU1SodCyy/TEhA6Aouu1eSERbJq4CvpSOAB66HXaEmV
sXvodjigYxNUDa6wRmtVf0CpDoB9gwVhyamnIAzDf4wiC2ql9kHSlEF8fcfC8UnTgK0XWcY8x73E
EjXJd6Yc61Rdmo6f7si85MY0VxAn0QT4NgmusKI58rIjeG64h7vTYBY6DhrVo3ZrtPnotVHF55nS
mG0++LRW+Lh4Wv1J5Xam1SXbIkuiiLNcOnYzfM52ve/v8nDkz3IS3/KABd9QSwMEFAACAAgAaFti
RtlKG71uAAAAPQEAAEUAHAByZXRyaWVzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdoZWVsZXZlbnQt
aW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHRVVAkAA5S59FSUufRUdXgLAAEE9QEAAARQAAAA
C3AMDlZILUvNK9Erz0hNzXFJzSlJjFTILFYoz8xLyS/XS60oSE0uSU0JTi7Kz8kJyS/Q0jU0MuAK
wKYvAqc+n9S0EjwaibQvJbNMrxgmjlcPVKIgsyI1pzggtSgcZFVIZnI2ukEgh+F3NW6juABQSwME
FAACAAgAaFtiRpwg0Z0/CAAAbx0AAEkAHAByZXRyaWVzL2Zhc3QvZXZlbnRzL3BsYXRmb3JtLXdo
ZWVsZXZlbnQtaW4tc2Nyb2xsaW5nLWRpdi1wcmV0dHktZGlmZi5odG1sVVQJAAOUufRUlLn0VHV4
CwABBPUBAAAEUAAAAL1Z+2/buhX+PX+FkGALUESSHdtZbKce2jyw4XZDsRTr9tNASZTFhhJ1SfqR
3u1/3+FLlmTJdtZ716CRxOd5fOecj8xdJnO6OLvLMErgkWOJvDhDXGD5/nIlU//2EpqFfKV4cTaj
pHi58mZrIojEiffLmQf/JN5KP8Ex40gSVsy8ghV4rrsixhPM/YhJyfKZNyy3XgLvOJmf/efMLGcX
iRllfOZdDEZT3Rc8EYofSJra/gjFL0vOVkXiu6Hprfqpb2R2EIySxLtIksT0payQfopyQl9nXs4K
JkoUWwFzxJcERB7i3BuYppKBcloPjilotMZaoGzYknQ0GnWsL1AhfIE5SWudgnzHeo/6pj7FqZx5
g2Di2hMiSopgEVKAZayEG5LIDCYPBr+z8qEkIcWymmlks65Rb03vWHFJkYFQshqesTXmLY0mk8m8
z9gYGzMEyiefYC9hJ6eUIVCDk2Umm55To+5BfQS6uK0YmJ5IUHHQUlmiiGI/xpQ2tPT1ug0rbTLQ
ztc+VFDbcFTuJHvGsfJdL2j05CZk2nCxmHV2B0ANyq3Z4XFbgnthfVANX3mBerQ17BVPkARHr+q3
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
axh0XQssu85IaOvY0ioYdcn+9t4mdOf4HGIybz7ULBBICbftDDwJPSArN6gspyO2IfVQKufR0yCs
zkaOw+1Veoo5lhi38ajXwzefVa+lr60ZuJot2bDa+dIw2aziC0wCZC0ZLikpSzxXMbiuOWqNHJvi
P7n66jEgcoAXzOqvfyMJorojJvYsYq9KviSWhtbgWsgdBDRaQ/cU2ymeIGMGooQdYkDMqFhATO5m
4bMsazgl/IN/RBl5zXY9T+Ccej5hcA7gheSE9Szl2ORBsOP23x731+Dw+uKr86MMz2OjjsFsamhp
qAe2lVR8jLWPlKht2FoITtv8uQKLtSQrGWoX+5QcDw2DZ+aJrY3PF1BCQqJtIaRb+jWpXGdN6ciF
jz3HzGtB/tssV2J1jZ+z5q1R3z1MNg4Mb3MFcydUbKeF0rpiI6Oh4+56wW95VFqMJVXxW0rChC/y
KsyX/bo/HlP37JrVP43sjeW+JGtTzJmx9zI5Gc0iXIhJt0ieFW1x2f/3++z3Pskm3ghc1pS192DC
p1qMbGZWXaZA+jJNE3S/elrLrz7JbcrswPIsxze/+jyNzDSkzjsPblrCht4z8X+f72iH2iIbzYZO
7nEFSXnIxVb90GkuBLiaGd5+fUAGrOWbWQQPJRp+CHPM93f2H3/O5kqtFXAmZv/iabT6tgrxuPMx
wTpUx3Cpat957JgSL7UZ1TF+PHG8n8IEpzRvmdgpANLUc9jlx2U83FOG+C5xLjk8Qvs2u4y2Wp4Y
Y1kI0CLU+8kV+HJ2peerVkNTxZmjT7fZWpbryFgeXGAw3zGMp3dWCZ9/fgjdrJJpLMNEBykmdNnP
TufjL2QMnhjK03xR8v5rAER+n1XdNzncMkidlYlnRNyXpVKnFoTu2UbC7zQpizsbyxLgHFWTJ9FV
pTxVXMBZbrM+9f6Lx/173SJLVxYQUVT7vPr5UMC+MkUX7SEHxDb3nCInsufJBpUXYm21FR0JjflA
xbhk/LwUWUYwPZ4vXlh7tXaQsywdj6TLnS2D7fyh3paGk0z3Sqih28M2DzL8z9v873eX2W3Dvrub
2E72afbs+/H4kAHpcv5hhM2cUrFaBYPu2Dwl00/7IRTUvyztEDFnuv4OepE8ndPh8fwUdHOYoxzh
sQ2NPSYqhHLnnHsoWQ9itCSNHdZwdzHNmmXXsa0aN9UDoMmU4wLXAu4DZuRpDov25ytwYDEtgjXD
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
lOccxIAczvm88EUFvge3cFmIdwloxv55pLa0s5GXVVmVyyvWW7NoG496V0dN/KQT075TNjI8PDp9
SehatJMgZvL1kIRAGRKiEgzsqQn9OMWN0KjzHy1msz9QSwECHgMUAAIACABOW2JGYUR4qI7NAQDe
ABUADgAYAAAAAAABAAAApIEAAAAAYWNjZXNzX2xvZy50eHRVVAUAA2S59FR1eAsAAQT1AQAABFAA
AABQSwECHgMKAAAAAAAKW2JGAAAAAAAAAAAAAAAADAAYAAAAAAAAABAA7UHWzQEAY29tcG9zaXRp
bmcvVVQFAAPkuPRUdXgLAAEE9QEAAARQAAAAUEsBAh4DCgAAAAAACltiRgAAAAAAAAAAAAAAABUA
GAAAAAAAAAAQAO1BHM4BAGNvbXBvc2l0aW5nL292ZXJmbG93L1VUBQAD5Lj0VHV4CwABBPUBAAAE
UAAAAFBLAQIeAxQAAgAIAGlbYkanLO1kFkEAAFsGAQBCABgAAAAAAAEAAACkgWvOAQBjb21wb3Np
dGluZy9vdmVyZmxvdy9vdmVyZmxvdy1jb21wb3NpdGluZy1kZXNjZW5kYW50LWNyYXNoLWxvZy50
eHRVVAUAA5a59FR1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACABmW2JG7iFRRl4dAACIZwEADQAY
AAAAAAABAAAApIH9DwIAZXJyb3JfbG9nLnR4dFVUBQADkLn0VHV4CwABBPUBAAAEUAAAAFBLAQIe
AwoAAAAAAANbYkYAAAAAAAAAAAAAAAAFABgAAAAAAAAAEADtQaItAgBmYXN0L1VUBQAD1bj0VHV4
CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAABJbYkYAAAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQeEt
AgBmYXN0L2V2ZW50cy9VVAUAA/O49FR1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAADW2JGrg+l
XncAAAD6AAAARgAYAAAAAAABAAAApIEnLgIAZmFzdC9ldmVudHMvY29udGludW91cy1wbGF0Zm9y
bS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYtYWN0dWFsLnR4dFVUBQAD1bj0VHV4CwABBPUB
AAAEUAAAAFBLAQIeAxQAAgAIAANbYkasLWeT+AAAAIwCAABEABgAAAAAAAEAAACkgR4vAgBmYXN0
L2V2ZW50cy9jb250aW51b3VzLXBsYXRmb3JtLXdoZWVsZXZlbnQtaW4tc2Nyb2xsaW5nLWRpdi1k
aWZmLnR4dFVUBQAD1bj0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAANbYkajZC01WQAAAAMB
AABIABgAAAAAAAEAAACkgZQwAgBmYXN0L2V2ZW50cy9jb250aW51b3VzLXBsYXRmb3JtLXdoZWVs
ZXZlbnQtaW4tc2Nyb2xsaW5nLWRpdi1leHBlY3RlZC50eHRVVAUAA9W49FR1eAsAAQT1AQAABFAA
AABQSwECHgMUAAIACAADW2JGAQDSrioIAAA4HQAATAAYAAAAAAABAAAApIFvMQIAZmFzdC9ldmVu
dHMvY29udGludW91cy1wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYtcHJldHR5
LWRpZmYuaHRtbFVUBQAD1bj0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAAtbYkYoJz+1fAAA
AAABAAA7ABgAAAAAAAEAAACkgR86AgBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LWlu
LXNjcm9sbGluZy1kaXYtYWN0dWFsLnR4dFVUBQAD5rj0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQA
AgAIAAtbYkYuDGKmBgEAALACAAA5ABgAAAAAAAEAAACkgRA7AgBmYXN0L2V2ZW50cy9wbGF0Zm9y
bS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYtZGlmZi50eHRVVAUAA+a49FR1eAsAAQT1AQAA
BFAAAABQSwECHgMUAAIACAALW2JG2UobvW4AAAA9AQAAPQAYAAAAAAABAAAApIGJPAIAZmFzdC9l
dmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1pbi1zY3JvbGxpbmctZGl2LWV4cGVjdGVkLnR4dFVU
BQAD5rj0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAAxbYkbFJoyHOQgAAGcdAABBABgAAAAA
AAEAAACkgW49AgBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1k
aXYtcHJldHR5LWRpZmYuaHRtbFVUBQAD57j0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIABJb
YkaDBLGkYwEAABkEAAAnABgAAAAAAAEAAACkgSJGAgBmYXN0L2V2ZW50cy93aGVlbGV2ZW50LWJh
c2ljLWFjdHVhbC50eHRVVAUAA/O49FR1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAASW2JGMK+4
cgoBAAAqAgAAJQAYAAAAAAABAAAApIHmRwIAZmFzdC9ldmVudHMvd2hlZWxldmVudC1iYXNpYy1k
aWZmLnR4dFVUBQAD87j0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIABJbYkaxPmvbVAEAABEE
AAApABgAAAAAAAEAAACkgU9JAgBmYXN0L2V2ZW50cy93aGVlbGV2ZW50LWJhc2ljLWV4cGVjdGVk
LnR4dFVUBQAD87j0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIABJbYkYGVZDRWggAAHQfAAAt
ABgAAAAAAAEAAACkgQZLAgBmYXN0L2V2ZW50cy93aGVlbGV2ZW50LWJhc2ljLXByZXR0eS1kaWZm
Lmh0bWxVVAUAA/O49FR1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAABIWmJGAAAAAAAAAAAAAAAA
DAAYAAAAAAAAABAA7UHHUwIAZmFzdC9pbWFnZXMvVVQFAAN4t/RUdXgLAAEE9QEAAARQAAAAUEsB
Ah4DFAACAAgADFtiRiGPvTgyAAAAMwAAACwAGAAAAAAAAQAAAKSBDVQCAGZhc3QvaW1hZ2VzL3Bk
Zi1hcy1pbWFnZS1jcm9wLWJveC1zdGRlcnIudHh0VVQFAAPnuPRUdXgLAAEE9QEAAARQAAAAUEsB
Ah4DCgAAAAAAT1piRgAAAAAAAAAAAAAAAAkAGAAAAAAAAAAQAO1BpVQCAGZhc3QveHNsL1VUBQAD
hbf0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIABNbYkZy/WXyhQAAAOkAAAAlABgAAAAAAAEA
AACkgehUAgBmYXN0L3hzbC90cmFuc2Zvcm0teGhyLWRvYy1zdGRlcnIudHh0VVQFAAP2uPRUdXgL
AAEE9QEAAARQAAAAUEsBAh4DFAACAAgAFFtiRokfIf6XAAAAwAMAACcAGAAAAAAAAQAAAKSBzFUC
AGZhc3QveHNsL3hzbHQtYmFkLWltcG9ydC11cmktc3RkZXJyLnR4dFVUBQAD97j0VHV4CwABBPUB
AAAEUAAAAFBLAQIeAxQAAgAIABRbYkbPj2YOUAAAAKAAAAAkABgAAAAAAAEAAACkgcRWAgBmYXN0
L3hzbC94c2x0LWNvbnRlbnRUeXBlLXN0ZGVyci50eHRVVAUAA/e49FR1eAsAAQT1AQAABFAAAABQ
SwECHgMUAAIACAAUW2JGgUp3rUsAAACsAAAANAAYAAAAAAABAAAApIFyVwIAZmFzdC94c2wveHNs
dC10cmFuc2Zvcm0tdG8tZnJhZ21lbnQtY3Jhc2gtc3RkZXJyLnR4dFVUBQAD97j0VHV4CwABBPUB
AAAEUAAAAFBLAQIeAxQAAgAIAGpbYkaCyVK1sgEAANoDAAARABgAAAAAAAEAAACkgStYAgBmdWxs
X3Jlc3VsdHMuanNvblVUBQADl7n0VHV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAFtaYkYAAAAA
AAAAAAAAAAAFABgAAAAAAAAAEADtQShaAgBodHRwL1VUBQADnbf0VHV4CwABBPUBAAAEUAAAAFBL
AQIeAwoAAAAAAGhaYkYAAAAAAAAAAAAAAAALABgAAAAAAAAAEADtQWdaAgBodHRwL3Rlc3RzL1VU
BQADtLf0VHV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAGhaYkYAAAAAAAAAAAAAAAAQABgAAAAA
AAAAEADtQaxaAgBodHRwL3Rlc3RzL21pc2MvVVQFAAO0t/RUdXgLAAEE9QEAAARQAAAAUEsBAh4D
FAACAAgALVtiRhU1NZJ6AAAAvAAAACoAGAAAAAAAAQAAAKSB9loCAGh0dHAvdGVzdHMvbWlzYy94
c2x0LWJhZC1pbXBvcnQtc3RkZXJyLnR4dFVUBQADJbn0VHV4CwABBPUBAAAEUAAAAFBLAQIeAwoA
AAAAAFtaYkYAAAAAAAAAAAAAAAAUABgAAAAAAAAAEADtQdRbAgBodHRwL3Rlc3RzL3NlY3VyaXR5
L1VUBQADnbf0VHV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAFtaYkYAAAAAAAAAAAAAAAAqABgA
AAAAAAAAEADtQSJcAgBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9V
VAUAA5239FR1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACAAiW2JGY6qsbIIAAACoAAAAQAAYAAAA
AAABAAAApIGGXAIAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kveHNs
LWFsbG93ZWQtc3RkZXJyLnR4dFVUBQADELn0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIACJb
YkZjqqxsggAAAKgAAABSABgAAAAAAAEAAACkgYJdAgBodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRl
bnRTZWN1cml0eVBvbGljeS94c2wtdW5hZmZlY3RlZC1ieS1zdHlsZS1zcmMtMi1zdGRlcnIudHh0
VVQFAAMQufRUdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAIVtiRmBLZhCRAAAA+wEAAEUAGAAA
AAAAAQAAAKSBkF4CAGh0dHAvdGVzdHMvc2VjdXJpdHkveHNzLURFTklFRC14c2wtZG9jdW1lbnQt
c2VjdXJpdHlPcmlnaW4tc3RkZXJyLnR4dFVUBQADDbn0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQA
AgAIAOhaYkbqinxCYQUAAAUPAAAKABgAAAAAAAEAAACkgaBfAgBodHRwZC5jb25mVVQFAAOjuPRU
dXgLAAEE9QEAAARQAAAAUEsBAh4DCgAAAAAAZltiRgAAAAAAAAAAAAAAAAYAGAAAAAAAAAAQAO1B
RWUCAG1lZGlhL1VUBQADj7n0VHV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAIlaYkYAAAAAAAAA
AAAAAAAMABgAAAAAAAAAEADtQYVlAgBtZWRpYS90cmFjay9VVAUAA/K39FR1eAsAAQT1AQAABFAA
AABQSwECHgMUAAIACABPW2JGaZTRjfAAAAB3AQAAKgAYAAAAAAABAAAApIHLZQIAbWVkaWEvdHJh
Y2svdHJhY2staW4tYmFuZC1zdHlsZS1hY3R1YWwudHh0VVQFAANlufRUdXgLAAEE9QEAAARQAAAA
UEsBAh4DFAACAAgAT1tiRg1/+IScAQAA/gIAACgAGAAAAAAAAQAAAKSBH2cCAG1lZGlhL3RyYWNr
L3RyYWNrLWluLWJhbmQtc3R5bGUtZGlmZi50eHRVVAUAA2W59FR1eAsAAQT1AQAABFAAAABQSwEC
HgMUAAIACABPW2JGDPrk6jYBAAAzAgAALAAYAAAAAAABAAAApIEdaQIAbWVkaWEvdHJhY2svdHJh
Y2staW4tYmFuZC1zdHlsZS1leHBlY3RlZC50eHRVVAUAA2W59FR1eAsAAQT1AQAABFAAAABQSwEC
HgMUAAIACABPW2JGBnDX5dIIAADXIgAAMAAYAAAAAAABAAAApIG5agIAbWVkaWEvdHJhY2svdHJh
Y2staW4tYmFuZC1zdHlsZS1wcmV0dHktZGlmZi5odG1sVVQFAANlufRUdXgLAAEE9QEAAARQAAAA
UEsBAh4DFAACAAgAaVtiRkh2gEPPSAAA5lIBACcAGAAAAAAAAQAAAKSB9XMCAG1lZGlhL3ZpZGVv
LXpvb20tY29udHJvbHMtY3Jhc2gtbG9nLnR4dFVUBQADlrn0VHV4CwABBPUBAAAEUAAAAFBLAQIe
AxQAAgAIAC5bYkZSvnB3YAIAAJUQAAArABgAAAAAAAEAAACkgSW9AgBweXdlYnNvY2tldC53cy5s
b2ctMDJNYXIyMDE1LTExMjMxNi1lcnIudHh0VVQFAAMoufRUdXgLAAEE9QEAAARQAAAAUEsBAh4D
FAACAAgAHVtiRsGzNW8JAQAAjwIAACsAGAAAAAAAAQAAAKSB6r8CAHB5d2Vic29ja2V0LndzLmxv
Zy0wMk1hcjIwMTUtMTEyMzE2LW91dC50eHRVVAUAAwq59FR1eAsAAQT1AQAABFAAAABQSwECHgMU
AAIACABqW2JGeCzR4ZwmAACYpAAADAAYAAAAAAABAAAApIFYwQIAcmVzdWx0cy5odG1sVVQFAAOY
ufRUdXgLAAEE9QEAAARQAAAAUEsBAh4DCgAAAAAAaVtiRgAAAAAAAAAAAAAAAAgAGAAAAAAAAAAQ
AO1BOugCAHJldHJpZXMvVVQFAAOVufRUdXgLAAEE9QEAAARQAAAAUEsBAh4DCgAAAAAAaFtiRgAA
AAAAAAAAAAAAABQAGAAAAAAAAAAQAO1BfOgCAHJldHJpZXMvY29tcG9zaXRpbmcvVVQFAAOTufRU
dXgLAAEE9QEAAARQAAAAUEsBAh4DCgAAAAAAaFtiRgAAAAAAAAAAAAAAAB0AGAAAAAAAAAAQAO1B
yugCAHJldHJpZXMvY29tcG9zaXRpbmcvb3ZlcmZsb3cvVVQFAAOTufRUdXgLAAEE9QEAAARQAAAA
UEsBAh4DFAACAAgAaFtiRnGfCfgPGwAAA0EAAEcAGAAAAAAAAAAAAKSBIekCAHJldHJpZXMvY29t
cG9zaXRpbmcvb3ZlcmZsb3cvb3ZlcmZsb3ctY29tcG9zaXRpbmctZGVzY2VuZGFudC1hY3R1YWwu
cG5nVVQFAAOTufRUdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAaFtiRmZpGGjIDgAAixUAAEUA
GAAAAAAAAAAAAKSBsQQDAHJldHJpZXMvY29tcG9zaXRpbmcvb3ZlcmZsb3cvb3ZlcmZsb3ctY29t
cG9zaXRpbmctZGVzY2VuZGFudC1kaWZmLnBuZ1VUBQADk7n0VHV4CwABBPUBAAAEUAAAAFBLAQIe
AxQAAgAIAGhbYkadAmLhkwUAAEMSAABHABgAAAAAAAEAAACkgfgTAwByZXRyaWVzL2NvbXBvc2l0
aW5nL292ZXJmbG93L292ZXJmbG93LWNvbXBvc2l0aW5nLWRlc2NlbmRhbnQtZGlmZnMuaHRtbFVU
BQADk7n0VHV4CwABBPUBAAAEUAAAAFBLAQIeAxQAAgAIAGhbYkaKzOvUcT8AAEtiAABJABgAAAAA
AAAAAACkgQwaAwByZXRyaWVzL2NvbXBvc2l0aW5nL292ZXJmbG93L292ZXJmbG93LWNvbXBvc2l0
aW5nLWRlc2NlbmRhbnQtZXhwZWN0ZWQucG5nVVQFAAOTufRUdXgLAAEE9QEAAARQAAAAUEsBAh4D
CgAAAAAAaFtiRgAAAAAAAAAAAAAAAA0AGAAAAAAAAAAQAO1BAFoDAHJldHJpZXMvZmFzdC9VVAUA
A5S59FR1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAABoW2JGAAAAAAAAAAAAAAAAFAAYAAAAAAAA
ABAA7UFHWgMAcmV0cmllcy9mYXN0L2V2ZW50cy9VVAUAA5S59FR1eAsAAQT1AQAABFAAAABQSwEC
HgMUAAIACABoW2JGrg+lXncAAAD6AAAATgAYAAAAAAABAAAApIGVWgMAcmV0cmllcy9mYXN0L2V2
ZW50cy9jb250aW51b3VzLXBsYXRmb3JtLXdoZWVsZXZlbnQtaW4tc2Nyb2xsaW5nLWRpdi1hY3R1
YWwudHh0VVQFAAOUufRUdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAaFtiRkemSPD9AAAAnAIA
AEwAGAAAAAAAAQAAAKSBlFsDAHJldHJpZXMvZmFzdC9ldmVudHMvY29udGludW91cy1wbGF0Zm9y
bS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYtZGlmZi50eHRVVAUAA5S59FR1eAsAAQT1AQAA
BFAAAABQSwECHgMUAAIACABoW2JGo2QtNVkAAAADAQAAUAAYAAAAAAABAAAApIEXXQMAcmV0cmll
cy9mYXN0L2V2ZW50cy9jb250aW51b3VzLXBsYXRmb3JtLXdoZWVsZXZlbnQtaW4tc2Nyb2xsaW5n
LWRpdi1leHBlY3RlZC50eHRVVAUAA5S59FR1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACABoW2JG
cDh8hS8IAABAHQAAVAAYAAAAAAABAAAApIH6XQMAcmV0cmllcy9mYXN0L2V2ZW50cy9jb250aW51
b3VzLXBsYXRmb3JtLXdoZWVsZXZlbnQtaW4tc2Nyb2xsaW5nLWRpdi1wcmV0dHktZGlmZi5odG1s
VVQFAAOUufRUdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAaFtiRignP7V8AAAAAAEAAEMAGAAA
AAAAAQAAAKSBt2YDAHJldHJpZXMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1pbi1z
Y3JvbGxpbmctZGl2LWFjdHVhbC50eHRVVAUAA5S59FR1eAsAAQT1AQAABFAAAABQSwECHgMUAAIA
CABoW2JG1DbM0goBAADAAgAAQQAYAAAAAAABAAAApIGwZwMAcmV0cmllcy9mYXN0L2V2ZW50cy9w
bGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYtZGlmZi50eHRVVAUAA5S59FR1eAsA
AQT1AQAABFAAAABQSwECHgMUAAIACABoW2JG2UobvW4AAAA9AQAARQAYAAAAAAABAAAApIE1aQMA
cmV0cmllcy9mYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LWluLXNjcm9sbGluZy1kaXYt
ZXhwZWN0ZWQudHh0VVQFAAOUufRUdXgLAAEE9QEAAARQAAAAUEsBAh4DFAACAAgAaFtiRpwg0Z0/
CAAAbx0AAEkAGAAAAAAAAQAAAKSBImoDAHJldHJpZXMvZmFzdC9ldmVudHMvcGxhdGZvcm0td2hl
ZWxldmVudC1pbi1zY3JvbGxpbmctZGl2LXByZXR0eS1kaWZmLmh0bWxVVAUAA5S59FR1eAsAAQT1
AQAABFAAAABQSwECHgMUAAIACABoW2JGgwSxpGMBAAAZBAAALwAYAAAAAAABAAAApIHkcgMAcmV0
cmllcy9mYXN0L2V2ZW50cy93aGVlbGV2ZW50LWJhc2ljLWFjdHVhbC50eHRVVAUAA5S59FR1eAsA
AQT1AQAABFAAAABQSwECHgMUAAIACABoW2JGy0UjEQ4BAAA6AgAALQAYAAAAAAABAAAApIGwdAMA
cmV0cmllcy9mYXN0L2V2ZW50cy93aGVlbGV2ZW50LWJhc2ljLWRpZmYudHh0VVQFAAOUufRUdXgL
AAEE9QEAAARQAAAAUEsBAh4DFAACAAgAaFtiRrE+a9tUAQAAEQQAADEAGAAAAAAAAQAAAKSBJXYD
AHJldHJpZXMvZmFzdC9ldmVudHMvd2hlZWxldmVudC1iYXNpYy1leHBlY3RlZC50eHRVVAUAA5S5
9FR1eAsAAQT1AQAABFAAAABQSwECHgMUAAIACABoW2JGE0KM8mAIAAB8HwAANQAYAAAAAAABAAAA
pIHkdwMAcmV0cmllcy9mYXN0L2V2ZW50cy93aGVlbGV2ZW50LWJhc2ljLXByZXR0eS1kaWZmLmh0
bWxVVAUAA5S59FR1eAsAAQT1AQAABFAAAABQSwECHgMKAAAAAABpW2JGAAAAAAAAAAAAAAAADgAY
AAAAAAAAABAA7UGzgAMAcmV0cmllcy9tZWRpYS9VVAUAA5W59FR1eAsAAQT1AQAABFAAAABQSwEC
HgMUAAIACABpW2JGtpxgHRTfAABO+wAALAAYAAAAAAAAAAAApIH7gAMAcmV0cmllcy9tZWRpYS92
aWRlby16b29tLWNvbnRyb2xzLWFjdHVhbC5wbmdVVAUAA5W59FR1eAsAAQT1AQAABFAAAABQSwEC
HgMUAAIACABpW2JG3w6fg+M0AACcOQAAKgAYAAAAAAAAAAAApIF1YAQAcmV0cmllcy9tZWRpYS92
aWRlby16b29tLWNvbnRyb2xzLWRpZmYucG5nVVQFAAOVufRUdXgLAAEE9QEAAARQAAAAUEsBAh4D
FAACAAgAaVtiRr/nJI6KBQAAHBIAACwAGAAAAAAAAQAAAKSBvJUEAHJldHJpZXMvbWVkaWEvdmlk
ZW8tem9vbS1jb250cm9scy1kaWZmcy5odG1sVVQFAAOVufRUdXgLAAEE9QEAAARQAAAAUEsBAh4D
FAACAAgAaVtiRjGqRutP0gAAN+wAAC4AGAAAAAAAAAAAAKSBrJsEAHJldHJpZXMvbWVkaWEvdmlk
ZW8tem9vbS1jb250cm9scy1leHBlY3RlZC5wbmdVVAUAA5W59FR1eAsAAQT1AQAABFAAAABQSwEC
HgMUAAIACABqW2JGOuh17CKoBgDctCYACgAYAAAAAAABAAAApIFjbgUAc3RhdHMuanNvblVUBQAD
l7n0VHV4CwABBPUBAAAEUAAAAFBLAQIeAwoAAAAAAHpaYkYAAAAAAAAAAAAAAAAEABgAAAAAAAAA
EADtQckWDABzdmcvVVQFAAPYt/RUdXgLAAEE9QEAAARQAAAAUEsBAh4DCgAAAAAAelpiRgAAAAAA
AAAAAAAAAAsAGAAAAAAAAAAQAO1BBxcMAHN2Zy9zdHJva2UvVVQFAAPYt/RUdXgLAAEE9QEAAARQ
AAAAUEsBAh4DFAACAAgAQFtiRk/TVdt+AAAAjQAAACUAGAAAAAAAAQAAAKSBTBcMAHN2Zy9zdHJv
a2UvemVyby13aWR0aC1oYW5nLXN0ZGVyci50eHRVVAUAA0e59FR1eAsAAQT1AQAABFAAAABQSwUG
AAAAAE0ATQB7IQAAKRgMAAAA
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247689</attachid>
            <date>2015-03-02 11:57:45 -0800</date>
            <delta_ts>2015-03-02 12:25:47 -0800</delta_ts>
            <desc>Patch v3 (Fix WK2 build error, attempt to fix iOS build error).</desc>
            <filename>bug-142102-20150302115728.patch</filename>
            <type>text/plain</type>
            <size>83456</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE1LTAzLTAyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorICAg
ICAgICAKKyAgICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxp
bmcgY2xhc3NlczoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1
bkxvb3A6OlRpbWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgor
ICAgICAgICAgICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQ
b2ludCBhbmQgUnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENv
bnRyb2xsZXIgZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNo
YXJpbmcgd2l0aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9y
e01hY30gLT4gU2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNl
dEluQXhpcyAtPiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0
ZVNjcm9sbEluQXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdw
bGF0Zm9ybS9jb2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1h
a2Ugc3VyZSB0aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9s
bAorICAgICAgICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFu
ZGxlZCIgY2FzZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0
aW1lciBhbmQgc29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxD
b250cm9sbGVyIGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRv
IGNsZWFuIHVwIHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyk6IEFkZCB0ZW1w
b3Jhcnkgc3R1YiBuZWVkZWQKKyAgICAgICAgdW50aWwgQnVnIDE0MTk3MyBpcyBjb21wbGV0ZWQu
KS4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6U2Nyb2xsQW5pbWF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnBy
b2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEp1c3QgY2FsbCB0aGUgU2Nyb2xsQ29udHJv
bGxlciBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyk6IFJlbmFtZWQgZnJvbSBzY3JvbGxPZmZz
ZXRJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0
SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMpOiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmg6IENvcGllZCBmcm9tIHBsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmguCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5tbTogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIu
bW0uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVy
KTogVXBkYXRlIHRvIGluaXRpYWxpemUgbmV3IHRpbWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOiBVcGRhdGUgdG8gaGFuZGxlIFNjcm9s
bCBTbmFwIFBvaW50IGV2ZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBNYW5hZ2UgYW5pbWF0aW9u
IHRpbWVycyBsb2NhbGx5LCBkbyBub3QKKyAgICAgICAgcmVxdWlyZSBjbGllbnQgdG8gbWFpbnRh
aW4gdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEFkZGVkLiAoTW92ZWQgZnJvbSBTY3JvbGxBbmlt
YXRvck1hYykKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6
OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEaXR0by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIpOiAg
RGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
OiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW06IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFj
OjpTY3JvbGxBbmltYXRvck1hYyk6IFJlbW92ZSB1bnVzZWQgUnViYmVyYmFuZCB0aW1lcnMgKG5v
dyB0aGF0IHRoaXMgaXMKKyAgICAgICAgY29udHJvbGxlZCBpbiB0aGUgU2Nyb2xsQ29udHJvbGxl
cikKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmg6IFJlbW92ZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06IFJlbW92ZWQuCisKIDIwMTUtMDMt
MDIgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVyZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRl
IGluIEdyYXBoaWNzTGF5ZXJDQS5oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkK
QEAgLTc4Niw4ICs3ODYsNiBAQAogCQkxQTkyN0ZEMzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTky
N0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5ODk1NkIwQUE3OEY4MDAwNUVGNUVG
IC8qIFVSTENGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBOTg5NTZBMEFBNzhGODAwMDVFRjVFRiAvKiBVUkxDRi5jcHAgKi87IH07Ci0JCTFBQTg0
RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07Ci0JCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1
MyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFB
QTg3OTkwMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJhdGVneS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODc5OEYxMUNCRTg0NjAwM0M2NjRG
IC8qIFBsdWdpblN0cmF0ZWd5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMUFBQUREQTMxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQURE
QTExNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovOyB9OwogCQkxQUFBRERB
NDE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMjQ0NSw2ICsyNDQzLDggQEAKIAkJN0E3NEVDQkQxMDE4MzlEQTAwQkY5MzlFIC8q
IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNzRFQ0JDMTAxODM5REEwMEJGOTM5RSAvKiBKU0lu
c3BlY3RvckZyb250ZW5kSG9zdEN1c3RvbS5jcHAgKi87IH07CiAJCTdBOTM4Njg1MThEQ0MxNDUw
MEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgyMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNw
cCAqLzsgfTsKIAkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThEQ0Mx
NDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87IH07CisJCTdBOUFERkYzMUFBMTE2MzgwMEQy
NzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJv
bGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTdBOUFERkY0MUFBMTE2M0IwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGRkE0MTIxQUExMDM5RDAw
RjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07CiAJCTdBQTNBNjk5MTk0QTY0RTcw
MDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTY5NTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuY3BwICovOyB9OwogCQk3QUEzQTY5QTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
QTNBNjk2MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdBQTNBNjlCMTk0QTY0RTcwMDFD
QkQyNCAvKiBUaWxlR3JpZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QUEzQTY5NzE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUdyaWQuY3BwICovOyB9
OwpAQCAtNzgwOSw4ICs3ODA5LDYgQEAKIAkJMUE5MjdGRDAxNDE2QTE1QjAwM0E4M0M4IC8qIG5w
cnVudGltZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBucHJ1bnRpbWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE5MjdGRDExNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gbnB0eXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTk4OTU2QTBBQTc4RjgwMDA1RUY1RUYgLyog
VVJMQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVSTENGLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQkxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTFBQTg3OThGMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJh
dGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbHVnaW5TdHJhdGVneS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUFBRERBMTE0REI0MDlGMDBBRjY0QjMg
LyogU2Nyb2xsaW5nVHJlZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTY3JvbGxpbmdUcmVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQURE
QTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtOTY2Nyw2ICs5NjY1LDggQEAKIAkJN0FGOUIyMDkxOENGQjVGMjAwQzY0QkVGIC8qIEpT
VlRUUmVnaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVlRUUmVnaW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRjlCMjBBMThDRkI1RjMwMEM2NEJF
RiAvKiBKU1ZUVFJlZ2lvbkxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNWVFRSZWdpb25MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0FGOUIyMEIxOENGQjVGMzAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uTGlzdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZUVFJlZ2lvbkxpc3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0FGRkE0MTExQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xs
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUZGQTQxMjFBQTEwMzlEMDBGMDEyNUIg
LyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IFNjcm9sbENvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdDMkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0MyQkREM0MxN0M3Rjk4QjAwMzhG
RjE1IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0RPTUdsb2JhbE9iamVjdFRhc2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0MzQjc5NkYxOTA4NzU3QjAwQjQ3QTJEIC8qIFVzZXJNZXNzYWdlSGFuZGxlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1ODcsOCArMTY1ODcsNiBAQAog
CQkJCUJDNTExNTZEMTJCMTc0OUMwMEM5Njc1NCAvKiBTY3JvbGxBbmltYXRvck1hYy5tbSAqLywK
IAkJCQlCQzhCODUzQzBFN0M3RjExMDBBQjY5ODQgLyogU2Nyb2xsYmFyVGhlbWVNYWMuaCAqLywK
IAkJCQlCQ0VGODY5RTBFODQ0RTlEMDBBODVDRDUgLyogU2Nyb2xsYmFyVGhlbWVNYWMubW0gKi8s
Ci0JCQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIuaCAqLywK
LQkJCQkxQUE4NEYwMjE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLywK
IAkJCQk5MzUzNjc2QTA5QUVEODhCMDBEMzVDRDYgLyogU2Nyb2xsVmlld01hYy5tbSAqLywKIAkJ
CQkwNzdBRjE0MTE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXplZFBsYXRmb3JtUmVwcmVzZW50
YXRpb25NYWMuaCAqLywKIAkJCQkwNzdBRjE0MjE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXpl
ZFBsYXRmb3JtUmVwcmVzZW50YXRpb25NYWMubW0gKi8sCkBAIC0xODY5OCw2ICsxODY5Niw4IEBA
CiAJCQkJMUEwNDA5RjIxQTQzNjc1QzAwOUU0N0YzIC8qIE1hY2hTZW5kUmlnaHQuY3BwICovLAog
CQkJCTFBMDQwOURCMUE0MzYwQjUwMDlFNDdGMyAvKiBNYWNoU2VuZFJpZ2h0LmggKi8sCiAJCQkJ
QURCNkIyOTcxOEZCOTAyNDAwODE5NjNFIC8qIE1lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1t
ICovLAorCQkJCTdBRkZBNDExMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3JvbGxDb250cm9sbGVyLmgg
Ki8sCisJCQkJN0FGRkE0MTIxQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
Ki8sCiAJCQkJNUQ1OTc1QjExOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNpb24uaCAqLywK
IAkJCQk1RDU5NzVCMjE5NjM1RjExMDBEMDA4NzggLyogU3lzdGVtVmVyc2lvbi5tbSAqLywKIAkJ
CQk3Q0M1NjRCOTE4QkFDNzIwMDAxQjk2NTIgLyogVGVsZXBob25lTnVtYmVyRGV0ZWN0b3JDb2Nv
YS5jcHAgKi8sCkBAIC0yNDY0OCw2ICsyNDY0OCw3IEBACiAJCQkJQThFQTdDQjUwQTE5MkI5QzAw
QThFRjVGIC8qIEhUTUxQYXJhZ3JhcGhFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcx
RDQ1ODBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBhcmFtRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJOTNFMkEzMDcxMjNFOURDMDAwOUZFMTJBIC8qIEhUTUxQYXJzZXJJZGlvbXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTdBOUFERkYzMUFBMTE2MzgwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzNGNDE4QTE2OUI5NUZGMDAwNkJGNjAgLyogSFRN
TFBhcnNlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3N0IzODcxMTIyODgzRTkwMEI4
MUZGOCAvKiBIVE1MUGFyc2VyU2NoZWR1bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxRDQ1
NjBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLApA
QCAtMjYxMDEsNyArMjYxMDIsNiBAQAogCQkJCUJDOEI4NTNFMEU3QzdGMTEwMEFCNjk4NCAvKiBT
Y3JvbGxiYXJUaGVtZU1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZFNzE0MDYxNDIxNzBCODAw
REIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUQ5MjVC
NjgwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEJlaGF2aW9yLmggaW4gSGVhZGVycyAqLywKLQkJ
CQkxQUE4NEYwNTE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMEY2MDVBRUQxNUY5NDg0ODAwNERGMEMwIC8qIFNjcm9sbGluZ0NvbnN0cmFp
bnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUY2MkVFODE0REEyMkE3MDA0MTU1NkMgLyogU2Ny
b2xsaW5nQ29vcmRpbmF0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQzRFNDBEMTg3RjgyRTEw
MDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5oIGluIEhlYWRlcnMgKi8sCkBAIC0y
NzQ5Niw2ICsyNzQ5Niw3IEBACiAJCQkJRTE5QUMzRjQxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0
b0FsZ29yaXRobVNIQTUxMi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTEx
MDA4OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxNTdB
OEU0MTgxNzNBM0EwMDlGODIxRCAvKiBDcnlwdG9LZXkuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
N0E5QURGRjQxQUExMTYzQjAwRDI3MzNDIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gaW4gU291cmNl
cyAqLywKIAkJCQlFMTI1Rjg0RDE4MjQyODlEMDBEODRDRDkgLyogQ3J5cHRvS2V5QUVTLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUUxMjVGODYzMTgyQzMwM0EwMEQ4NENEOSAvKiBDcnlwdG9LZXlE
YXRhT2N0ZXRTZXF1ZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUMyNjZERTE4MzE5RjMx
MDAzRjhCMzMgLyogQ3J5cHRvS2V5RGF0YVJTQUNvbXBvbmVudHMuY3BwIGluIFNvdXJjZXMgKi8s
CkBAIC0yOTUwOCw3ICsyOTUwOSw2IEBACiAJCQkJQkNFRjg2OUYwRTg0NEU5RDAwQTg1Q0Q1IC8q
IFNjcm9sbGJhclRoZW1lTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZFNzE0MDUxNDIxNzBC
ODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1
RDkyNUI2NzBGNjRENEREMDBCODQ3RjAgLyogU2Nyb2xsQmVoYXZpb3IuY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJMUFBODRGMDQxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
aW4gU291cmNlcyAqLywKIAkJCQkwRjYwNUFFQzE1Rjk0ODQ4MDA0REYwQzAgLyogU2Nyb2xsaW5n
Q29uc3RyYWludHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFGNjJFRTcxNERBMjJBNzAwNDE1
NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGQzRF
NDBFMTg3RjgyRTEwMDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5tbSBpbiBTb3Vy
Y2VzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5t
bQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5k
bGVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05NjEsNiArOTYxLDEyIEBAIGJvb2wgRXZlbnRI
YW5kbGVyOjpwbGF0Zm9ybUNvbXBsZXRlV2hlZWwKICAgICAKICAgICBib29sIGRpZEhhbmRsZUV2
ZW50ID0gdmlldyA/IHZpZXctPndoZWVsRXZlbnQod2hlZWxFdmVudCkgOiBmYWxzZTsKICAgICBt
X2lzSGFuZGxpbmdXaGVlbEV2ZW50ID0gZmFsc2U7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JP
TExfU05BUCkKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEpCisgICAgICAgIHBsYXRmb3JtTm90aWZ5
U25hcElmTmVjZXNzYXJ5KHdoZWVsRXZlbnQsICpzY3JvbGxhYmxlQXJlYSk7CisjZW5kaWYKKwog
ICAgIHJldHVybiBkaWRIYW5kbGVFdmVudDsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJl
ZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yy5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw4ICs2MSw2IEBAIHByaXZhdGU6CiAgICAgdmlydHVh
bCBJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFp
bnRzKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNu
YXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBS
dWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xs
UG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICB2aXJ0dWFsIEZs
b2F0UG9pbnQgc2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKQEAgLTgwLDEwICs3OCwx
NCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2Vz
dHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwogCisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZpcnR1YWwgTGF5
b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKTsKKyAgICB2aXJ0dWFs
IHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEp
OworI2VuZGlmCisKICAgICB2b2lkIGxvZ0V4cG9zZWRVbmZpbGxlZEFyZWEoKTsKIAogICAgIFNj
cm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOwotICAgIFJldGFpblB0cjxDRlJ1bkxv
b3BUaW1lclJlZj4gbV9zbmFwUnViYmVyYmFuZFRpbWVyOwogCiAgICAgUmV0YWluUHRyPENBTGF5
ZXI+IG1fc2Nyb2xsTGF5ZXI7CiAgICAgUmV0YWluUHRyPENBTGF5ZXI+IG1fc2Nyb2xsZWRDb250
ZW50c0xheWVyOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9s
bGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWMubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC02Niw4ICs2Niw2IEBAIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OlNj
cm8KIAogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6flNjcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVNYWMoKQogewotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXIp
Ci0gICAgICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZShtX3NuYXBSdWJiZXJiYW5kVGltZXIu
Z2V0KCkpOwogfQogCiB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnVw
ZGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQpA
QCAtMjk2LDMyICsyOTQsNiBAQCB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWM6CiAgICAgc2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhvZmZzZXQpOwog
fQogCi12b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnN0YXJ0U25hcFJ1
YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgQVNTRVJUKCFtX3NuYXBSdWJiZXJiYW5kVGltZXIpOwot
Ci0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZXJJbnRlcnZhbCA9IDEuMCAvIDYwLjA7Ci0KLSAgICBt
X3NuYXBSdWJiZXJiYW5kVGltZXIgPSBhZG9wdENGKENGUnVuTG9vcFRpbWVyQ3JlYXRlV2l0aEhh
bmRsZXIoa0NGQWxsb2NhdG9yRGVmYXVsdCwgQ0ZBYnNvbHV0ZVRpbWVHZXRDdXJyZW50KCkgKyB0
aW1lckludGVydmFsLCB0aW1lckludGVydmFsLCAwLCAwLCBeKENGUnVuTG9vcFRpbWVyUmVmKSB7
Ci0gICAgICAgIG1fc2Nyb2xsQ29udHJvbGxlci5zbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsK
LSAgICB9KSk7Ci0gICAgQ0ZSdW5Mb29wQWRkVGltZXIoQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBt
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCksIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci19Ci0K
LXZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RvcFNuYXBSdWJiZXJi
YW5kVGltZXIoKQotewotICAgIGlmICghbV9zbmFwUnViYmVyYmFuZFRpbWVyKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICBzY3JvbGxpbmdUcmVlKCkuc2V0TWFpbkZyYW1lSXNSdWJiZXJCYW5kaW5n
KGZhbHNlKTsKLQotICAgIC8vIFNpbmNlIHRoZSBydWJiZXJiYW5kIHRpbWVyIGhhcyBzdG9wcGVk
LCB0b3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQgY2FuIGJlIHN5bmNocm9uaXplZCB3aXRo
IHRvdGFsQ29udGVudHNTaXplLgotICAgIHNldFRvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFu
ZCh0b3RhbENvbnRlbnRzU2l6ZSgpKTsKLQotICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZSht
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCkpOwotICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lciA9
IG51bGxwdHI7Ci19Ci0KIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6
YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkKIHsKICAgICBGbG9hdFBv
aW50IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKTsKQEAg
LTU0MCw2ICs1MTIsMTkgQEAgdm9pZCBsb2dXaGVlbEV2ZW50SGFuZGxlckNvdW50Q2hhbmdlZCh1
bgogICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5HOiBXaGVlbCBldmVudCBoYW5kbGVyIGNvdW50
IGNoYW5nZWQuIFRpbWU6ICVmIENvdW50OiAldVxuIiwgV1RGOjptb25vdG9uaWNhbGx5SW5jcmVh
c2luZ1RpbWUoKSwgY291bnQpOwogfQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYg
UExBVEZPUk0oTUFDKQorTGF5b3V0VW5pdCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2Rl
TWFjOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKQoreworICAgIC8vIFRlbXBv
cmFyeSBzdHViIHVudGlsIGh0dHA6Ly93ZWJraXQub3JnL2IvMTQxOTczLgorICAgIHJldHVybiBM
YXlvdXRVbml0KCk7Cit9CisKK3ZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yzo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQpCit7CisgICAg
Ly8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDovL3dlYmtpdC5vcmcvYi8xNDE5NzMuCit9Cisj
ZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKEFTWU5D
X1NDUk9MTElORykgJiYgUExBVEZPUk0oTUFDKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsQW5pbWF0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw2ICs0
OSw5IEBAIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxBbmltYXRvcj4gU2Nyb2xsQW4KIAogU2Nyb2xs
QW5pbWF0b3I6OlNjcm9sbEFuaW1hdG9yKFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkK
ICAgICA6IG1fc2Nyb2xsYWJsZUFyZWEoc2Nyb2xsYWJsZUFyZWEpCisjaWYgRU5BQkxFKFJVQkJF
Ul9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgICwgbV9zY3JvbGxDb250
cm9sbGVyKHRoaXMpCisjZW5kaWYKICAgICAsIG1fY3VycmVudFBvc1goMCkKICAgICAsIG1fY3Vy
cmVudFBvc1koMCkKIHsKQEAgLTgzLDI2ICs4NiwxNCBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjpz
Y3JvbGxUb09mZnNldFdpdGhvCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZP
Uk0oTUFDKQogdm9pZCBTY3JvbGxBbmltYXRvcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxT
bmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKIHsKLSAgICBpZiAobV92
ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBB
bmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKLSAgICBpZiAobV9ob3Jpem9u
dGFsU2Nyb2xsU25hcEFuaW1hdG9yKQotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5p
bWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CisgICAgbV9zY3JvbGxDb250cm9s
bGVyLnByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCh3aGVlbEV2ZW50KTsKIH0KICNlbmRp
ZgogCiBib29sIFNjcm9sbEFuaW1hdG9yOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYgZSkKIHsKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9S
TShNQUMpCi0gICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAg
bV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudChlKTsKLSAgICAg
ICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNob3VsZE92ZXJyaWRlV2hlZWxF
dmVudChlKSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0gICAgaWYgKG1faG9y
aXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikgewotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxT
bmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQoZSk7Ci0gICAgICAgIGlmIChtX2hvcml6b250
YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNob3VsZE92ZXJyaWRlV2hlZWxFdmVudChlKSkKLSAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9CisgICAgbV9zY3JvbGxDb250cm9sbGVyLmhhbmRs
ZVdoZWVsRXZlbnQoZSk7CiAjZW5kaWYKICNpZiBQTEFURk9STShDT0NPQSkKICAgICAvLyBFdmVu
dHMgaW4gdGhlIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlTWF5QmVnaW4gcGhhc2UgaGF2ZSBubyBk
ZWx0YXMsIGFuZCB0aGVyZWZvcmUgbmV2ZXIgcGFzc2VzIHRocm91Z2ggdGhlIHNjcm9sbCBoYW5k
bGluZyBsb2dpYyBiZWxvdy4KQEAgLTE4MywzMCArMTc0LDE1IEBAIHZvaWQgU2Nyb2xsQW5pbWF0
b3I6Om5vdGlmeVBvc2l0aW9uQ2hhbmcKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCiB2b2lkIFNjcm9sbEFuaW1hdG9yOjp1cGRhdGVTY3JvbGxBbmltYXRvcnNB
bmRUaW1lcnMoKQogewotICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBzbmFwIGFuaW1h
dG9ycyBhcmUgcmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMgYWxvbmUgY2Fu
IGJlIHVwZGF0ZWQuCi0gICAgaWYgKG1fc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZz
ZXRzKCkpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjpt
YWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVBcmVh
Lmhvcml6b250YWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwpOwot
ICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRp
bWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmly
ZWQpOwotICAgIH0gZWxzZSBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7Ci0g
ICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51bGxwdHI7Ci0gICAgICAg
IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA9IG51bGxwdHI7Ci0gICAgfQotICAgIGlmICht
X3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSkgewotICAgICAgICBtX3ZlcnRp
Y2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25hcEFu
aW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSwgU2Ny
b2xsRXZlbnRBeGlzOjpWZXJ0aWNhbCk7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwVGlt
ZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjp2ZXJ0
aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKLSAgICB9IGVsc2UgaWYgKG1fdmVydGljYWxTY3Jv
bGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9
IG51bGxwdHI7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIgPSBudWxscHRyOwot
ICAgIH0KKyAgICBtX3Njcm9sbENvbnRyb2xsZXIudXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5kVGlt
ZXJzKG1fc2Nyb2xsYWJsZUFyZWEpOwogfQogCi1MYXlvdXRVbml0IFNjcm9sbEFuaW1hdG9yOjpz
Y3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCitMYXlvdXRVbml0IFNjcm9s
bEFuaW1hdG9yOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCiB7Ci0g
ICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24oKTsK
LSAgICByZXR1cm4gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBjdXJyZW50
UG9zaXRpb24ueCgpIDogY3VycmVudFBvc2l0aW9uLnkoKTsKKyAgICByZXR1cm4gYXhpcyA9PSBT
Y3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2N1cnJlbnRQb3NYIDogbV9jdXJyZW50UG9z
WTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRvcjo6aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNjcm9s
bEV2ZW50QXhpcyBheGlzLCBmbG9hdCBkZWx0YSkKK3ZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVk
aWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcywgZmxvYXQgZGVsdGEpCiB7CiAg
ICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24oKTsK
ICAgICBpZiAoYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwpCkBAIC0yMTQsMzAg
KzE5MCw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXgKICAgICBl
bHNlCiAgICAgICAgIHNjcm9sbFRvT2Zmc2V0V2l0aG91dEFuaW1hdGlvbihGbG9hdFBvaW50KGN1
cnJlbnRQb3NpdGlvbi54KCksIGN1cnJlbnRQb3NpdGlvbi55KCkgKyBkZWx0YSkpOwogfQotCi12
b2lkIFNjcm9sbEFuaW1hdG9yOjpzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMg
YXhpcykKLXsKLSAgICBUaW1lciogc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxFdmVu
dEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIuZ2V0KCkgOiBt
X3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyLmdldCgpOwotICAgIGlmICghc2Nyb2xsU25hcFRpbWVy
LT5pc0FjdGl2ZSgpKQotICAgICAgICBzY3JvbGxTbmFwVGltZXItPnN0YXJ0UmVwZWF0aW5nKDEu
MCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdG9wU2Nyb2xsU25hcFRpbWVy
KFNjcm9sbEV2ZW50QXhpcyBheGlzKQotewotICAgIFRpbWVyKiBzY3JvbGxTbmFwVGltZXIgPSBh
eGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9sbFNu
YXBUaW1lci5nZXQoKSA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIuZ2V0KCk7Ci0gICAgaWYg
KHNjcm9sbFNuYXBUaW1lci0+aXNBY3RpdmUoKSkKLSAgICAgICAgc2Nyb2xsU25hcFRpbWVyLT5z
dG9wKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGlt
ZXJGaXJlZCgpCi17Ci0gICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3JvbGxT
bmFwQW5pbWF0aW9uVXBkYXRlKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnZlcnRpY2Fs
U2Nyb2xsU25hcFRpbWVyRmlyZWQoKQotewotICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0
b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKLX0KICNlbmRpZgogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRv
ci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9y
LmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFu
aW1hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDE0ICszMywxNCBAQAogI2RlZmluZSBTY3Jv
bGxBbmltYXRvcl9oCiAKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKKyNpbmNsdWRlICJMYXlvdXRV
bml0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCiAjaW5jbHVkZSAiU2Nyb2xs
VHlwZXMuaCIKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9Gb3J3
YXJkLmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi0j
aW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgotI2luY2x1ZGUgIlRpbWVyLmgiCisj
aWYgKEVOQUJMRShSVUJCRVJfQkFORElORykgfHwgRU5BQkxFKENTU19TQ1JPTExfU05BUCkpICYm
IFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjZW5kaWYKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTAsOCArNTAsOCBAQCBjbGFzcyBQbGF0Zm9ybVRvdWNo
RXZlbnQ7CiBjbGFzcyBTY3JvbGxhYmxlQXJlYTsKIGNsYXNzIFNjcm9sbGJhcjsKIAotI2lmIEVO
QUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLWNsYXNzIFNjcm9sbEFuaW1h
dG9yIDogcHVibGljIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQgeworI2lmIChFTkFCTEUo
Q1NTX1NDUk9MTF9TTkFQKSB8fCBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpICYmIFBMQVRGT1JNKE1B
QykpCitjbGFzcyBTY3JvbGxBbmltYXRvciA6IHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNsaWVu
dCB7CiAjZWxzZQogY2xhc3MgU2Nyb2xsQW5pbWF0b3IgewogI2VuZGlmCkBAIC0xMTksMzIgKzEx
OSwyMSBAQCBwdWJsaWM6CiAKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9S
TShNQUMpCiAgICAgdm9pZCBwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxh
dGZvcm1XaGVlbEV2ZW50Jik7CisKICAgICB2b2lkIHVwZGF0ZVNjcm9sbEFuaW1hdG9yc0FuZFRp
bWVycygpOwotICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xs
RXZlbnRBeGlzKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsSW5B
eGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwg
dm9pZCBzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOwotICAg
IHZpcnR1YWwgdm9pZCBzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJp
ZGU7CisgICAgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSBv
dmVycmlkZTsKKyAgICB2b2lkIGltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMs
IGZsb2F0IGRlbHRhKSBvdmVycmlkZTsKICNlbmRpZgogCiBwcm90ZWN0ZWQ6CiAgICAgdmlydHVh
bCB2b2lkIG5vdGlmeVBvc2l0aW9uQ2hhbmdlZChjb25zdCBGbG9hdFNpemUmIGRlbHRhKTsKIAot
I2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLSAgICAvLyBUcml2
aWFsIHdyYXBwZXJzIGFyb3VuZCB0aGUgYWN0dWFsIHVwZGF0ZSBsb29wIGluIEF4aXNTY3JvbGxT
bmFwQW5pbWF0b3IsIHNpbmNlIFdlYkNvcmUgVGltZXIgcmVxdWlyZXMgYSBUaW1lciBhcmd1bWVu
dC4KLSAgICB2b2lkIGhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpOwotICAgIHZvaWQg
dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpOwotI2VuZGlmCi0KICAgICBTY3JvbGxhYmxl
QXJlYSYgbV9zY3JvbGxhYmxlQXJlYTsKKyNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpIHx8IEVO
QUJMRShDU1NfU0NST0xMX1NOQVApCisgICAgU2Nyb2xsQ29udHJvbGxlciBtX3Njcm9sbENvbnRy
b2xsZXI7CisjZW5kaWYKICAgICBmbG9hdCBtX2N1cnJlbnRQb3NYOyAvLyBXZSBhdm9pZCB1c2lu
ZyBhIEZsb2F0UG9pbnQgaW4gb3JkZXIgdG8gcmVkdWNlCiAgICAgZmxvYXQgbV9jdXJyZW50UG9z
WTsgLy8gc3ViY2xhc3MgY29kZSBjb21wbGV4aXR5LgotI2lmIEVOQUJMRShDU1NfU0NST0xMX1NO
QVApICYmIFBMQVRGT1JNKE1BQykKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBB
bmltYXRvcj4gbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yOwotICAgIHN0ZDo6dW5pcXVl
X3B0cjxUaW1lcj4gbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyOwotICAgIC8vIEZJWE1FOiBG
aW5kIGEgd2F5IHRvIGNvbnNvbGlkYXRlIGJvdGggdGltZXJzIGludG8gb25lIHZhcmlhYmxlLgot
ICAgIHN0ZDo6dW5pcXVlX3B0cjxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPiBtX3ZlcnRpY2FsU2Ny
b2xsU25hcEFuaW1hdG9yOwotICAgIHN0ZDo6dW5pcXVlX3B0cjxUaW1lcj4gbV92ZXJ0aWNhbFNj
cm9sbFNuYXBUaW1lcjsKLSNlbmRpZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRl
eDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIu
aAkocmV2aXNpb24gMTgwNzAyKQkoZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Ny
b2xsQ29udHJvbGxlci5oOjE4MDcwMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1Njcm9sbENvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEwNyBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFO
RCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpZm5kZWYgU2Nyb2xsQ29udHJvbGxlcl9oCisjZGVmaW5lIFNjcm9sbENvbnRy
b2xsZXJfaAorCisjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQorCisjaW5jbHVkZSAiRmxvYXRQ
b2ludC5oIgorI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgorI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgi
CisjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKwor
Y2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50OworCitjbGFzcyBTY3JvbGxDb250cm9sbGVyQ2xpZW50
IHsKK3Byb3RlY3RlZDoKKyAgICB2aXJ0dWFsIH5TY3JvbGxDb250cm9sbGVyQ2xpZW50KCkgeyB9
CisKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hpbmco
Y29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NW
ZXJ0aWNhbFN0cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JikgPSAwOworICAgIHZp
cnR1YWwgSW50U2l6ZSBzdHJldGNoQW1vdW50KCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBwaW5u
ZWRJbkRpcmVjdGlvbihjb25zdCBGbG9hdFNpemUmKSA9IDA7CisgICAgdmlydHVhbCBib29sIGNh
blNjcm9sbEhvcml6b250YWxseSgpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgY2FuU2Nyb2xsVmVy
dGljYWxseSgpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUnViYmVyQmFuZEluRGlyZWN0
aW9uKFNjcm9sbERpcmVjdGlvbikgPSAwOworCisgICAgLy8gUmV0dXJuIHRoZSBhYnNvbHV0ZSBz
Y3JvbGwgcG9zaXRpb24sIG5vdCByZWxhdGl2ZSB0byB0aGUgc2Nyb2xsIG9yaWdpbi4KKyAgICB2
aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSA9IDA7CisK
KyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJikgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNv
bnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc3RhcnRT
bmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1YmJl
cmJhbmRUaW1lcigpID0gMDsKKworICAgIC8vIElmIHRoZSBjdXJyZW50IHNjcm9sbCBwb3NpdGlv
biBpcyB3aXRoaW4gdGhlIG92ZXJoYW5nIGFyZWEsIHRoaXMgZnVuY3Rpb24gd2lsbCBjYXVzZQor
ICAgIC8vIHRoZSBwYWdlIHRvIHNjcm9sbCB0byB0aGUgbmVhcmVzdCBib3VuZGFyeSBwb2ludC4K
KyAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5
KCkgPSAwOworfTsKKworY2xhc3MgU2Nyb2xsQ29udHJvbGxlciB7CisgICAgV1RGX01BS0VfTk9O
Q09QWUFCTEUoU2Nyb2xsQ29udHJvbGxlcik7CisKK3B1YmxpYzoKKyAgICBleHBsaWNpdCBTY3Jv
bGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqKTsKKworICAgIGJvb2wgaGFuZGxl
V2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKyAgICB2b2lkIHNuYXBSdWJi
ZXJCYW5kVGltZXJGaXJlZCgpOworCisgICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkg
Y29uc3Q7CisKK3ByaXZhdGU6CisgICAgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwor
ICAgIHZvaWQgc25hcFJ1YmJlckJhbmQoKTsKKworICAgIGJvb2wgc2hvdWxkUnViYmVyQmFuZElu
SG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKworICAgIFNj
cm9sbENvbnRyb2xsZXJDbGllbnQqIG1fY2xpZW50OworCisgICAgYm9vbCBtX2luU2Nyb2xsR2Vz
dHVyZTsKKyAgICBib29sIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzOworICAgIGJvb2wgbV9p
Z25vcmVNb21lbnR1bVNjcm9sbHM7CisgICAgCisgICAgQ0ZUaW1lSW50ZXJ2YWwgbV9sYXN0TW9t
ZW50dW1TY3JvbGxUaW1lc3RhbXA7CisgICAgRmxvYXRTaXplIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YTsKKyAgICBGbG9hdFNpemUgbV9zdHJldGNoU2Nyb2xsRm9yY2U7CisgICAgRmxvYXRTaXplIG1f
bW9tZW50dW1WZWxvY2l0eTsKKworICAgIC8vIFJ1YmJlciBiYW5kIHN0YXRlLgorICAgIENGVGlt
ZUludGVydmFsIG1fc3RhcnRUaW1lOworICAgIEZsb2F0U2l6ZSBtX3N0YXJ0U3RyZXRjaDsKKyAg
ICBGbG9hdFBvaW50IG1fb3JpZ09yaWdpbjsKKyAgICBGbG9hdFNpemUgbV9vcmlnVmVsb2NpdHk7
CisKKyAgICBib29sIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlOworfTsKKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQorCisj
ZW5kaWYgLy8gU2Nyb2xsQ29udHJvbGxlcl9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAxNC0yMDE1IEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwpAQCAtMzIsMTAgKzMyLDE2IEBACiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCiAjaW5jbHVk
ZSAiU2Nyb2xsVHlwZXMuaCIKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KKyNpbmNsdWRl
IDx3dGYvUnVuTG9vcC5oPgorCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyNpbmNsdWRl
ICJBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgiCisjZW5kaWYKIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBjbGFzcyBQbGF0Zm9ybVdoZWVsRXZlbnQ7CitjbGFzcyBTY3JvbGxhYmxlQXJlYTsKIAog
Y2xhc3MgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7CiBwcm90ZWN0ZWQ6CkBAIC01NSwzNiArNjEs
NTUgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0
IEZsb2F0U2l6ZSYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRo
b3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmly
dHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKLSAgICB2aXJ0dWFsIHZv
aWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7CiAKICAgICAvLyBJZiB0aGUgY3VycmVu
dCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0
aW9uIHdpbGwgY2F1c2UKICAgICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3Qg
Ym91bmRhcnkgcG9pbnQuCiAgICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9C
b3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsKKworI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYm
IFBMQVRGT1JNKE1BQykKKyAgICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlz
KFNjcm9sbEV2ZW50QXhpcykgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxP
bkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgPSAwOworI2VuZGlmCiB9OwogCisj
aWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorY2xhc3MgU2Nyb2xs
Q29udHJvbGxlciA6IHB1YmxpYyBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50IHsKKyNlbHNl
CiBjbGFzcyBTY3JvbGxDb250cm9sbGVyIHsKKyNlbmRpZgogICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKFNjcm9sbENvbnRyb2xsZXIpOwogCiBwdWJsaWM6CiAgICAgZXhwbGljaXQgU2Nyb2xsQ29u
dHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50Kik7CiAKICAgICBib29sIGhhbmRsZVdoZWVs
RXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0gICAgdm9pZCBzbmFwUnViYmVyQmFu
ZFRpbWVyRmlyZWQoKTsKIAogICAgIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0
OwogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZv
aWQgcHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVu
dCYpOworICAgIHZvaWQgdXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5kVGltZXJzKGNvbnN0IFNjcm9s
bGFibGVBcmVhJik7CisjZW5kaWYKKwogcHJpdmF0ZToKKyAgICB2b2lkIHN0YXJ0U25hcFJ1YmJl
cmJhbmRUaW1lcigpOwogICAgIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICB2
b2lkIHNuYXBSdWJiZXJCYW5kKCk7CisgICAgdm9pZCBzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQo
KTsKIAogICAgIGJvb2wgc2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25z
dCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKIAotICAgIFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIG1f
Y2xpZW50OworI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAg
ICB2b2lkIGhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpOworICAgIHZvaWQgdmVydGlj
YWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpOworICAgIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIo
U2Nyb2xsRXZlbnRBeGlzKTsKKyAgICB2b2lkIHN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZl
bnRBeGlzKTsKKworICAgIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50
QXhpcykgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZl
bnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7CisjZW5kaWYKIAotICAgIGJvb2wgbV9pblNj
cm9sbEdlc3R1cmU7Ci0gICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsKLSAgICBi
b29sIG1faWdub3JlTW9tZW50dW1TY3JvbGxzOworICAgIFNjcm9sbENvbnRyb2xsZXJDbGllbnQq
IG1fY2xpZW50OwogICAgIAogICAgIENGVGltZUludGVydmFsIG1fbGFzdE1vbWVudHVtU2Nyb2xs
VGltZXN0YW1wOwogICAgIEZsb2F0U2l6ZSBtX292ZXJmbG93U2Nyb2xsRGVsdGE7CkBAIC05Niw3
ICsxMjEsMTkgQEAgcHJpdmF0ZToKICAgICBGbG9hdFNpemUgbV9zdGFydFN0cmV0Y2g7CiAgICAg
RmxvYXRQb2ludCBtX29yaWdPcmlnaW47CiAgICAgRmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5Owor
ICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9sbENvbnRyb2xsZXI+IG1fc25hcFJ1YmJlcmJhbmRUaW1l
cjsKKyAgICAKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisg
ICAgLy8gRklYTUU6IEZpbmQgYSB3YXkgdG8gY29uc29saWRhdGUgYm90aCB0aW1lcnMgaW50byBv
bmUgdmFyaWFibGUuCisgICAgc3RkOjp1bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+
IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcjsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhp
c1Njcm9sbFNuYXBBbmltYXRvcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcjsKKyAgICBS
dW5Mb29wOjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiBtX2hvcml6b250YWxTY3JvbGxTbmFwVGlt
ZXI7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4gbV92ZXJ0aWNhbFNjcm9s
bFNuYXBUaW1lcjsKKyNlbmRpZgogCisgICAgYm9vbCBtX2luU2Nyb2xsR2VzdHVyZTsKKyAgICBi
b29sIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzOworICAgIGJvb2wgbV9pZ25vcmVNb21lbnR1
bVNjcm9sbHM7CiAgICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKIH07CiAK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJv
bGxlci5tbQkocmV2aXNpb24gMTgwNzAyKQkoZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvU2Nyb2xsQ29udHJvbGxlci5tbToxODA3MDIpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDA2
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDE0LTIwMTUgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiU2Nyb2xsQ29udHJvbGxlci5oIgorCisjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50Lmgi
CisjaW5jbHVkZSAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIgorI2luY2x1ZGUgPHN5cy9zeXNj
dGwuaD4KKyNpbmNsdWRlIDxzeXMvdGltZS5oPgorCisjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5H
KQorCitzdGF0aWMgTlNUaW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKK3sKKyAgICBpZiAoW1tO
U1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHN5
c3RlbVVwdGltZSldKQorICAgICAgICByZXR1cm4gW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZv
XSBzeXN0ZW1VcHRpbWVdOworCisgICAgLy8gR2V0IGhvdyBsb25nIHN5c3RlbSBoYXMgYmVlbiB1
cC4gRm91bmQgYnkgbG9va2luZyBnZXR0aW5nICJib290dGltZSIgZnJvbSB0aGUga2VybmVsLgor
ICAgIHN0YXRpYyBzdHJ1Y3QgdGltZXZhbCBib290dGltZSA9IHswLCAwfTsKKyAgICBpZiAoIWJv
b3R0aW1lLnR2X3NlYykgeworICAgICAgICBpbnQgbWliWzJdID0ge0NUTF9LRVJOLCBLRVJOX0JP
T1RUSU1FfTsKKyAgICAgICAgc2l6ZV90IHNpemUgPSBzaXplb2YoYm9vdHRpbWUpOworICAgICAg
ICBpZiAoLTEgPT0gc3lzY3RsKG1pYiwgMiwgJmJvb3R0aW1lLCAmc2l6ZSwgMCwgMCkpCisgICAg
ICAgICAgICBib290dGltZS50dl9zZWMgPSAwOworICAgIH0KKyAgICBzdHJ1Y3QgdGltZXZhbCBu
b3c7CisgICAgaWYgKGJvb3R0aW1lLnR2X3NlYyAmJiAtMSAhPSBnZXR0aW1lb2ZkYXkoJm5vdywg
MCkpIHsKKyAgICAgICAgc3RydWN0IHRpbWV2YWwgdXB0aW1lOworICAgICAgICB0aW1lcnN1Yigm
bm93LCAmYm9vdHRpbWUsICZ1cHRpbWUpOworICAgICAgICBOU1RpbWVJbnRlcnZhbCByZXN1bHQg
PSB1cHRpbWUudHZfc2VjICsgKHVwdGltZS50dl91c2VjIC8gMUUrNik7CisgICAgICAgIHJldHVy
biByZXN1bHQ7CisgICAgfQorICAgIHJldHVybiAwOworfQorCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworc3RhdGljIGNvbnN0IGZsb2F0IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQgPSAw
LjEwZjsKK3N0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hS
YXRpbyA9IDE7CitzdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERl
bHRhQmVmb3JlU3RyZXRjaCA9IDEwOworCitzdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yVGlt
ZURlbHRhKGZsb2F0IGluaXRpYWxQb3NpdGlvbiwgZmxvYXQgaW5pdGlhbFZlbG9jaXR5LCBmbG9h
dCBlbGFwc2VkVGltZSkKK3sKKyAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVEZWx0
YShpbml0aWFsUG9zaXRpb24sIGluaXRpYWxWZWxvY2l0eSwgZWxhcHNlZFRpbWUpOworfQorCitz
dGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGZsb2F0IGRlbHRhKQorewor
ICAgIHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGRlbHRhKTsKK30KKwor
c3RhdGljIGZsb2F0IHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShmbG9hdCBkZWx0YSkKK3sK
KyAgICByZXR1cm4gd2tOU1JlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShkZWx0YSk7Cit9CisK
K3N0YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKQoreworICAgIHN0YXRpYyBmbG9h
dCBtdWx0aXBsaWVyID0gLTE7CisgICAgaWYgKG11bHRpcGxpZXIgPCAwKSB7CisgICAgICAgIG11
bHRpcGxpZXIgPSBbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBmbG9hdEZv
cktleTpAIk5TU2Nyb2xsV2hlZWxNdWx0aXBsaWVyIl07CisgICAgICAgIGlmIChtdWx0aXBsaWVy
IDw9IDApCisgICAgICAgICAgICBtdWx0aXBsaWVyID0gMTsKKyAgICB9CisgICAgcmV0dXJuIG11
bHRpcGxpZXI7Cit9CisKK1Njcm9sbENvbnRyb2xsZXI6OlNjcm9sbENvbnRyb2xsZXIoU2Nyb2xs
Q29udHJvbGxlckNsaWVudCogY2xpZW50KQorICAgIDogbV9jbGllbnQoY2xpZW50KQorICAgICwg
bV9pblNjcm9sbEdlc3R1cmUoZmFsc2UpCisgICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVz
cyhmYWxzZSkKKyAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxzKGZhbHNlKQorICAgICwgbV9s
YXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKKyAgICAsIG1fc3RhcnRUaW1lKDApCisgICAg
LCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkKK3sKK30KKworYm9vbCBTY3Jv
bGxDb250cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYg
d2hlZWxFdmVudCkKK3sKKyAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hl
ZWxFdmVudFBoYXNlQmVnYW4pIHsKKyAgICAgICAgLy8gRmlyc3QsIGNoZWNrIGlmIHdlIHNob3Vs
ZCBydWJiZXItYmFuZCBhdCBhbGwuCisgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJl
Y3Rpb24oRmxvYXRTaXplKC13aGVlbEV2ZW50LmRlbHRhWCgpLCAwKSkKKyAgICAgICAgICAgICYm
ICFzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKHdoZWVsRXZlbnQpKQorICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIG1faW5TY3JvbGxHZXN0dXJlID0gdHJ1
ZTsKKyAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAg
bV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKKyAgICAgICAgbV9sYXN0TW9tZW50dW1T
Y3JvbGxUaW1lc3RhbXAgPSAwOworICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNp
emUoKTsKKworICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRj
aEFtb3VudCgpOworICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5k
RGVsdGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC53aWR0aCgpKSk7CisgICAgICAgIG1f
c3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEo
c3RyZXRjaEFtb3VudC5oZWlnaHQoKSkpOworICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEg
PSBGbG9hdFNpemUoKTsKKworICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworCisg
ICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkg
PT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgeworICAgICAgICBzbmFwUnViYmVyQmFu
ZCgpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAgICBib29sIGlzTW9tZW50dW1T
Y3JvbGxFdmVudCA9ICh3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKSAhPSBQbGF0Zm9ybVdoZWVs
RXZlbnRQaGFzZU5vbmUpOworICAgIGlmIChtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyAmJiAoaXNN
b21lbnR1bVNjcm9sbEV2ZW50IHx8IG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKSkgewor
ICAgICAgICBpZiAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2
ZW50UGhhc2VFbmRlZCkgeworICAgICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBm
YWxzZTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICB9CisgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICB9CisKKyAgICBmbG9hdCBkZWx0YVggPSBtX292ZXJmbG93U2Nyb2xsRGVs
dGEud2lkdGgoKTsKKyAgICBmbG9hdCBkZWx0YVkgPSBtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVp
Z2h0KCk7CisKKyAgICAvLyBSZXNldCBvdmVyZmxvdyB2YWx1ZXMgYmVjYXVzZSB3ZSBtYXkgZGVj
aWRlIHRvIHJlbW92ZSBkZWx0YSBhdCB2YXJpb3VzIHBvaW50cyBhbmQgcHV0IGl0IGludG8gb3Zl
cmZsb3cuCisgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7CisKKyAgICBJ
bnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworICAgIGJv
b2wgaXNWZXJ0aWNhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFtb3VudC5oZWlnaHQoKTsKKyAgICBi
b29sIGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFtb3VudC53aWR0aCgpOworCisg
ICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVg7CisgICAgZmxvYXQgZXZlbnRDb2FsZXNjZWRE
ZWx0YVk7CisKKyAgICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRhbGx5
U3RyZXRjaGVkKSB7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gLXdoZWVsRXZlbnQu
dW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWCgpOworICAgICAgICBldmVudENvYWxlc2NlZERl
bHRhWSA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVkoKTsKKyAgICB9
IGVsc2UgeworICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LmRlbHRh
WCgpOworICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LmRlbHRhWSgp
OworICAgIH0KKworICAgIGRlbHRhWCArPSBldmVudENvYWxlc2NlZERlbHRhWDsKKyAgICBkZWx0
YVkgKz0gZXZlbnRDb2FsZXNjZWREZWx0YVk7CisKKyAgICAvLyBTbGlnaHRseSBwcmVmZXIgc2Ny
b2xsaW5nIHZlcnRpY2FsbHkgYnkgYXBwbHlpbmcgdGhlID0gY2FzZSB0byBkZWx0YVkKKyAgICBp
ZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJzZihkZWx0YVgpKQorICAgICAgICBkZWx0YVggPSAwOwor
ICAgIGVsc2UKKyAgICAgICAgZGVsdGFZID0gMDsKKworICAgIGJvb2wgc2hvdWxkU3RyZXRjaCA9
IGZhbHNlOworCisgICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2UgbW9tZW50dW1QaGFzZSA9IHdo
ZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpOworCisgICAgLy8gSWYgd2UgYXJlIHN0YXJ0aW5nIG1v
bWVudHVtIHNjcm9sbGluZyB0aGVuIGRvIHNvbWUgc2V0dXAuCisgICAgaWYgKCFtX21vbWVudHVt
U2Nyb2xsSW5Qcm9ncmVzcyAmJiAobW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQ
aGFzZUJlZ2FuIHx8IG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VDaGFu
Z2VkKSkKKyAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSB0cnVlOworCisgICAg
Q0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKSAtIG1fbGFz
dE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOworICAgIGlmIChtX2luU2Nyb2xsR2VzdHVyZSB8fCBt
X21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykgeworICAgICAgICBpZiAobV9sYXN0TW9tZW50dW1T
Y3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID4gMCAmJiB0aW1lRGVsdGEgPCBzY3JvbGxWZWxv
Y2l0eVplcm9pbmdUaW1lb3V0KSB7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkuc2V0
V2lkdGgoZXZlbnRDb2FsZXNjZWREZWx0YVggLyAoZmxvYXQpdGltZURlbHRhKTsKKyAgICAgICAg
ICAgIG1fbW9tZW50dW1WZWxvY2l0eS5zZXRIZWlnaHQoZXZlbnRDb2FsZXNjZWREZWx0YVkgLyAo
ZmxvYXQpdGltZURlbHRhKTsKKyAgICAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0
YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAo
KTsKKyAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworICAgICAg
ICB9CisKKyAgICAgICAgaWYgKGlzVmVydGljYWxseVN0cmV0Y2hlZCkgeworICAgICAgICAgICAg
aWYgKCFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiBtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rp
b24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7CisgICAgICAgICAgICAgICAgLy8gU3RyZXRjaGlu
ZyBvbmx5IGluIHRoZSB2ZXJ0aWNhbC4KKyAgICAgICAgICAgICAgICBpZiAoZGVsdGFZICYmIChm
YWJzZihkZWx0YVggLyBkZWx0YVkpIDwgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0
aW8pKQorICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgIGVs
c2UgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZv
cmVTdHJldGNoKSB7CisgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5z
ZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAg
ICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAg
ICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Ny
b2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxz
ZSBpZiAoaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKKyAgICAgICAgICAgIC8vIFN0cmV0Y2hp
bmcgb25seSBpbiB0aGUgaG9yaXpvbnRhbC4KKyAgICAgICAgICAgIGlmIChtX2NsaWVudC0+cGlu
bmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkpKSB7CisgICAgICAgICAgICAgICAg
aWYgKGRlbHRhWCAmJiAoZmFic2YoZGVsdGFZIC8gZGVsdGFYKSA8IHJ1YmJlcmJhbmREaXJlY3Rp
b25Mb2NrU3RyZXRjaFJhdGlvKSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAg
ICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVkpIDwgcnViYmVyYmFuZE1pbmltdW1S
ZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgeworICAgICAgICAgICAgICAgICAgICBtX292ZXJm
bG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKSAr
IGRlbHRhWSk7CisgICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAg
ICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRI
ZWlnaHQobV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpICsgZGVsdGFZKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8vIE5vdCBzdHJldGNoaW5nIGF0
IGFsbCB5ZXQuCisgICAgICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZs
b2F0U2l6ZShkZWx0YVgsIGRlbHRhWSkpKSB7CisgICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRl
bHRhWSkgPj0gZmFic2YoZGVsdGFYKSkgeworICAgICAgICAgICAgICAgICAgICBpZiAoZmFic2Yo
ZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsK
KyAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aCht
X292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAg
ICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAg
ICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93
U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgIHNob3VsZFN0cmV0Y2ggPSB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgfQorCisgICAgaWYgKGRlbHRhWCB8fCBkZWx0YVkpIHsKKyAgICAgICAgaWYgKCEoc2hv
dWxkU3RyZXRjaCB8fCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJl
dGNoZWQpKSB7CisgICAgICAgICAgICBpZiAoZGVsdGFZKSB7CisgICAgICAgICAgICAgICAgZGVs
dGFZICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOworICAgICAgICAgICAgICAgIG1fY2xpZW50
LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoMCwgZGVsdGFZKSk7CisgICAgICAgICAgICB9
CisgICAgICAgICAgICBpZiAoZGVsdGFYKSB7CisgICAgICAgICAgICAgICAgZGVsdGFYICo9IHNj
cm9sbFdoZWVsTXVsdGlwbGllcigpOworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlh
dGVTY3JvbGxCeShGbG9hdFNpemUoZGVsdGFYLCAwKSk7CisgICAgICAgICAgICB9CisgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5hbGxvd3NIb3Jpem9udGFsU3Ry
ZXRjaGluZyh3aGVlbEV2ZW50KSkgeworICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAg
ICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAwOworICAgICAgICAgICAgfSBlbHNl
IGlmIChkZWx0YVggJiYgIWlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkICYmICFtX2NsaWVudC0+cGlu
bmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7CisgICAgICAgICAgICAgICAg
ZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOworCisgICAgICAgICAgICAgICAgbV9j
bGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoRmxv
YXRTaXplKGRlbHRhWCwgMCkpOworICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmFsbG93c1ZlcnRpY2FsU3RyZXRj
aGluZyh3aGVlbEV2ZW50KSkgeworICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAg
ICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAwOworICAgICAgICAgICAgfSBlbHNlIGlm
IChkZWx0YVkgJiYgIWlzVmVydGljYWxseVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZElu
RGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgeworICAgICAgICAgICAgICAgIGRlbHRh
WSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKKworICAgICAgICAgICAgICAgIG1fY2xpZW50
LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6
ZSgwLCBkZWx0YVkpKTsKKyAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAg
fQorCisgICAgICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRj
aEFtb3VudCgpOworCisgICAgICAgICAgICBpZiAobV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3Mp
IHsKKyAgICAgICAgICAgICAgICBpZiAoKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9h
dFNpemUoZXZlbnRDb2FsZXNjZWREZWx0YVgsIGV2ZW50Q29hbGVzY2VkRGVsdGFZKSkgfHwgKGZh
YnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFYKSArIGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFZKSA8
PSAwKSkgJiYgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXApIHsKKyAgICAgICAgICAgICAg
ICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSB0cnVlOworICAgICAgICAgICAgICAgICAg
ICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOworICAgICAgICAgICAgICAgICAg
ICBzbmFwUnViYmVyQmFuZCgpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgobV9zdHJldGNoU2Nyb2xs
Rm9yY2Uud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3Jj
ZS5zZXRIZWlnaHQobV9zdHJldGNoU2Nyb2xsRm9yY2UuaGVpZ2h0KCkgKyBkZWx0YVkpOworCisg
ICAgICAgICAgICBGbG9hdFNpemUgZGFtcGVkRGVsdGEoY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVi
b3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkpKSwgY2VpbGYoZWxhc3RpY0Rl
bHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLmhlaWdodCgpKSkpOworCisg
ICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VD
b25zdHJhaW50cyhkYW1wZWREZWx0YSAtIHN0cmV0Y2hBbW91bnQpOworICAgICAgICB9CisgICAg
fQorCisgICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzICYmIG1vbWVudHVtUGhhc2Ug
PT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgeworICAgICAgICBtX21vbWVudHVtU2Ny
b2xsSW5Qcm9ncmVzcyA9IGZhbHNlOworICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9
IGZhbHNlOworICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IDA7CisgICAg
fQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBpbmxpbmUgZmxvYXQgcm91bmRUb3dh
cmRaZXJvKGZsb2F0IG51bSkKK3sKKyAgICByZXR1cm4gbnVtID4gMCA/IGNlaWxmKG51bSAtIDAu
NWYpIDogZmxvb3JmKG51bSArIDAuNWYpOworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0IHJvdW5k
VG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZmxvYXQgbnVtKQoreworICAgIGZsb2F0IHJvdW5kZWRO
dW0gPSByb3VuZGYobnVtKTsKKyAgICBpZiAoZmFicyhudW0gLSByb3VuZGVkTnVtKSA8IDAuMTI1
KQorICAgICAgICBudW0gPSByb3VuZGVkTnVtOworCisgICAgcmV0dXJuIHJvdW5kVG93YXJkWmVy
byhudW0pOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kVGltZXJG
aXJlZCgpCit7CisgICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyB8fCBtX2lnbm9y
ZU1vbWVudHVtU2Nyb2xscykgeworICAgICAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSBb
TlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV0gLSBtX3N0YXJ0VGltZTsKKwor
ICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXplKCkpIHsKKyAgICAgICAgICAg
IG1fc3RhcnRTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKyAgICAgICAgICAg
IGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNpemUoKSkgeworICAgICAgICAgICAgICAgIHN0
b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisKKyAgICAgICAgICAgICAgICBtX3N0cmV0Y2hTY3Jv
bGxGb3JjZSA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgICAgIG1fc3RhcnRUaW1lID0gMDsK
KyAgICAgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgICAgICAg
ICAgICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKKyAgICAgICAgICAgICAgICBtX29y
aWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAg
ICAgICAgIH0KKworICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0gbV9jbGllbnQtPmFic29sdXRl
U2Nyb2xsUG9zaXRpb24oKSAtIG1fc3RhcnRTdHJldGNoOworICAgICAgICAgICAgbV9vcmlnVmVs
b2NpdHkgPSBtX21vbWVudHVtVmVsb2NpdHk7CisKKyAgICAgICAgICAgIC8vIEp1c3QgbGlrZSBu
b3JtYWwgc2Nyb2xsaW5nLCBwcmVmZXIgdmVydGljYWwgcnViYmVyYmFuZGluZworICAgICAgICAg
ICAgaWYgKGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgpKSA+PSBmYWJzZihtX29yaWdWZWxv
Y2l0eS53aWR0aCgpKSkKKyAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgw
KTsKKworICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQgaG9yaXpvbnRhbGx5IGlmIGl0
J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCBob3Jpem9udGFsbHkKKyAgICAgICAgICAgIGlmICgh
bV9jbGllbnQtPmNhblNjcm9sbEhvcml6b250YWxseSgpKQorICAgICAgICAgICAgICAgIG1fb3Jp
Z1ZlbG9jaXR5LnNldFdpZHRoKDApOworCisgICAgICAgICAgICAvLyBEb24ndCBydWJiZXItYmFu
ZCB2ZXJ0aWNhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5Cisg
ICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxWZXJ0aWNhbGx5KCkpCisgICAgICAg
ICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0SGVpZ2h0KDApOworICAgICAgICB9CisKKyAgICAg
ICAgRmxvYXRQb2ludCBkZWx0YShyb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGVsYXN0aWNE
ZWx0YUZvclRpbWVEZWx0YShtX3N0YXJ0U3RyZXRjaC53aWR0aCgpLCAtbV9vcmlnVmVsb2NpdHku
d2lkdGgoKSwgKGZsb2F0KXRpbWVEZWx0YSkpLAorICAgICAgICAgICAgcm91bmRUb0RldmljZVBp
eGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2guaGVp
Z2h0KCksIC1tX29yaWdWZWxvY2l0eS5oZWlnaHQoKSwgKGZsb2F0KXRpbWVEZWx0YSkpKTsKKwor
ICAgICAgICBpZiAoZmFicyhkZWx0YS54KCkpID49IDEgfHwgZmFicyhkZWx0YS55KCkpID49IDEp
IHsKKyAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50
RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YS54KCksIGRlbHRhLnkoKSkgLSBtX2NsaWVu
dC0+c3RyZXRjaEFtb3VudCgpKTsKKworICAgICAgICAgICAgRmxvYXRTaXplIG5ld1N0cmV0Y2gg
PSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworCisgICAgICAgICAgICBtX3N0cmV0Y2hTY3Jv
bGxGb3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEobmV3U3RyZXRjaC53
aWR0aCgpKSk7CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVi
b3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2guaGVpZ2h0KCkpKTsKKyAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgIG1fY2xpZW50LT5hZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91
bmRzSWZOZWNlc3NhcnkoKTsKKworICAgICAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIo
KTsKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlID0gRmxvYXRTaXplKCk7CisgICAg
ICAgICAgICBtX3N0YXJ0VGltZSA9IDA7CisgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZs
b2F0U2l6ZSgpOworICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOworICAg
ICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgfQorICAgIH0g
ZWxzZSB7CisgICAgICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJl
ZmVyZW5jZURhdGVdOworICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAg
IH0KK30KKworYm9vbCBTY3JvbGxDb250cm9sbGVyOjppc1J1YmJlckJhbmRJblByb2dyZXNzKCkg
Y29uc3QKK3sKKyAgICBpZiAoIW1faW5TY3JvbGxHZXN0dXJlICYmICFtX21vbWVudHVtU2Nyb2xs
SW5Qcm9ncmVzcyAmJiAhbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIHJldHVybiAhbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKS5pc1pl
cm8oKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1l
cigpCit7CisgICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgbV9z
bmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSBmYWxzZTsKK30KKwordm9pZCBTY3JvbGxDb250
cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCit7CisgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRh
ID0gc3lzdGVtVXB0aW1lKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBp
ZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID49IHNjcm9sbFZl
bG9jaXR5WmVyb2luZ1RpbWVvdXQpCisgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0
U2l6ZSgpOworCisgICAgbV9pblNjcm9sbEdlc3R1cmUgPSBmYWxzZTsKKworICAgIGlmIChtX3Nu
YXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9zdGFy
dFRpbWUgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07CisgICAgbV9z
dGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50
KCk7CisgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKworICAgIG1fY2xpZW50LT5z
dGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0Fj
dGl2ZSA9IHRydWU7Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6c2hvdWxkUnViYmVyQmFu
ZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZl
bnQpCit7CisgICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPiAwKQorICAgICAgICByZXR1cm4g
bV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxMZWZ0KTsKKyAgICBp
ZiAod2hlZWxFdmVudC5kZWx0YVgoKSA8IDApCisgICAgICAgIHJldHVybiBtX2NsaWVudC0+c2hv
dWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbFJpZ2h0KTsKKworICAgIHJldHVybiB0cnVl
OworfQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoUlVCQkVS
X0JBTkRJTkcpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250
cm9sbGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Nj
cm9sbENvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTMxLDYgKzMx
LDExIEBACiAjaW5jbHVkZSA8c3lzL3N5c2N0bC5oPgogI2luY2x1ZGUgPHN5cy90aW1lLmg+CiAK
KyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorI2luY2x1ZGUgIkF4aXNTY3JvbGxTbmFwQW5p
bWF0b3IuaCIKKyNpbmNsdWRlICJTY3JvbGxhYmxlQXJlYS5oIgorI2VuZGlmCisKICNpZiBFTkFC
TEUoUlVCQkVSX0JBTkRJTkcpCiAKIHN0YXRpYyBOU1RpbWVJbnRlcnZhbCBzeXN0ZW1VcHRpbWUo
KQpAQCAtOTEsMTcgKzk2LDM0IEBAIHN0YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIo
KQogCiBTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJD
bGllbnQqIGNsaWVudCkKICAgICA6IG1fY2xpZW50KGNsaWVudCkKKyAgICAsIG1fbGFzdE1vbWVu
dHVtU2Nyb2xsVGltZXN0YW1wKDApCisgICAgLCBtX3N0YXJ0VGltZSgwKQorICAgICwgbV9zbmFw
UnViYmVyYmFuZFRpbWVyKFJ1bkxvb3A6OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENvbnRyb2xs
ZXI6OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCkKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQ
KSAmJiBQTEFURk9STShNQUMpCisgICAgLCBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIoUnVu
TG9vcDo6Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJvbGxlcjo6aG9yaXpvbnRhbFNjcm9s
bFNuYXBUaW1lckZpcmVkKQorICAgICwgbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcihSdW5Mb29w
OjpjdXJyZW50KCksIHRoaXMsICZTY3JvbGxDb250cm9sbGVyOjp2ZXJ0aWNhbFNjcm9sbFNuYXBU
aW1lckZpcmVkKQorI2VuZGlmCiAgICAgLCBtX2luU2Nyb2xsR2VzdHVyZShmYWxzZSkKICAgICAs
IG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKGZhbHNlKQogICAgICwgbV9pZ25vcmVNb21lbnR1
bVNjcm9sbHMoZmFsc2UpCi0gICAgLCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQot
ICAgICwgbV9zdGFydFRpbWUoMCkKICAgICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZl
KGZhbHNlKQogewogfQogCiBib29sIFNjcm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQo
Y29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQogeworI2lmIEVOQUJMRShDU1Nf
U0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNu
YXBBbmltYXRvcikgeworICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5k
bGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworICAgICAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNu
YXBBbmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpKQorICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25h
cEFuaW1hdG9yKSB7CisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFu
ZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKKyAgICAgICAgaWYgKG1faG9yaXpvbnRhbFNjcm9s
bFNuYXBBbmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpKQorICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyNlbmRpZgogICAgIGlmICh3aGVlbEV2ZW50
LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbikgewogICAgICAgICAvLyBG
aXJzdCwgY2hlY2sgaWYgd2Ugc2hvdWxkIHJ1YmJlci1iYW5kIGF0IGFsbC4KICAgICAgICAgaWYg
KG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoLXdoZWVsRXZlbnQuZGVsdGFY
KCksIDApKQpAQCAtMzY1LDkgKzM4NywxNCBAQCBib29sIFNjcm9sbENvbnRyb2xsZXI6OmlzUnVi
YmVyQmFuZEluUHJvCiAgICAgcmV0dXJuICFtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpLmlzWmVy
bygpOwogfQogCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1l
cigpCit7CisgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEuMCAvIDYw
LjApOworfQorCiB2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVy
KCkKIHsKLSAgICBtX2NsaWVudC0+c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBtX3Nu
YXBSdWJiZXJiYW5kVGltZXIuc3RvcCgpOwogICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0
aXZlID0gZmFsc2U7CiB9CiAKQEAgLTM4Nyw3ICs0MTQsNyBAQCB2b2lkIFNjcm9sbENvbnRyb2xs
ZXI6OnNuYXBSdWJiZXJCYW5kKCkKICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CiAg
ICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKIAotICAgIG1fY2xpZW50LT5zdGFydFNu
YXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAg
ICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7CiB9CiAKQEAgLTQwMSw2ICs0
MjgsNjUgQEAgYm9vbCBTY3JvbGxDb250cm9sbGVyOjpzaG91bGRSdWJiZXJCYW5kSQogICAgIHJl
dHVybiB0cnVlOwogfQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0o
TUFDKQordm9pZCBTY3JvbGxDb250cm9sbGVyOjpwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNu
YXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQoreworICAgIGlmIChtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFu
aW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworICAgIGlmIChtX2hvcml6b250
YWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmlt
YXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKK30KKwordm9pZCBTY3JvbGxDb250
cm9sbGVyOjp1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoY29uc3QgU2Nyb2xsYWJsZUFy
ZWEmIHNjcm9sbGFibGVBcmVhKQoreworICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBz
bmFwIGFuaW1hdG9ycyBhcmUgcmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMg
YWxvbmUgY2FuIGJlIHVwZGF0ZWQuCisgICAgaWYgKHNjcm9sbGFibGVBcmVhLmhvcml6b250YWxT
bmFwT2Zmc2V0cygpKQorICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBz
dGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMsIHNjcm9sbGFibGVB
cmVhLmhvcml6b250YWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwp
OworICAgIGVsc2UgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAgICAg
bV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gbnVsbHB0cjsKKworICAgIGlmIChzY3Jv
bGxhYmxlQXJlYS52ZXJ0aWNhbFNuYXBPZmZzZXRzKCkpCisgICAgICAgIG1fdmVydGljYWxTY3Jv
bGxTbmFwQW5pbWF0b3IgPSBzdGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+
KHRoaXMsIHNjcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSwgU2Nyb2xsRXZlbnRB
eGlzOjpWZXJ0aWNhbCk7CisgICAgZWxzZSBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRv
cikKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51bGxwdHI7Cit9CisK
K3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRB
eGlzIGF4aXMpCit7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4mIHNjcm9s
bFNuYXBUaW1lciA9IGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9ob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKKyAgICBp
ZiAoIXNjcm9sbFNuYXBUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBzY3JvbGxTbmFwVGltZXIu
c3RhcnRSZXBlYXRpbmcoMS4wIC8gNjAuMCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6
c3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICBSdW5Mb29w
OjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiYgc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3Jv
bGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgOiBt
X3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyOworICAgIHNjcm9sbFNuYXBUaW1lci5zdG9wKCk7Cit9
CisgICAgCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJG
aXJlZCgpCit7CisgICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAg
ICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3JvbGxTbmFwQW5pbWF0aW9uVXBk
YXRlKCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6dmVydGljYWxTY3JvbGxTbmFwVGlt
ZXJGaXJlZCgpCit7CisgICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAg
ICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRh
dGUoKTsKK30KKworTGF5b3V0VW5pdCBTY3JvbGxDb250cm9sbGVyOjpzY3JvbGxPZmZzZXRPbkF4
aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCit7CisgICAgcmV0dXJuIG1fY2xpZW50LT5zY3JvbGxP
ZmZzZXRPbkF4aXMoYXhpcyk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6aW1tZWRpYXRl
U2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzLCBmbG9hdCBkZWx0YSkKK3sKKyAgICBt
X2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsT25BeGlzKGF4aXMsIGRlbHRhKTsKK30KKyNlbmRpZgor
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJ
TkcpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmlt
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Ny
b2xsU25hcEFuaW1hdG9yLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3
LDggKzU3LDggQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgfkF4aXNTY3JvbGxTbmFwQW5pbWF0
b3JDbGllbnQoKSB7IH0KIAogcHVibGljOgotICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxP
ZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGltbWVk
aWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IHZlbG9jaXR5KSA9IDA7Cisg
ICAgdmlydHVhbCBMYXlvdXRVbml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMp
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50
QXhpcywgZmxvYXQgdmVsb2NpdHkpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxT
bmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BTY3Jv
bGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7CiB9OwpJbmRleDogU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0JKHJl
dmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xs
U25hcEFuaW1hdG9yLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBB
eGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpoYW5kbGVXaGVlbAogICAgICAgICAvLyBCZWdpbiB0cmFj
a2luZyB3aGVlbCBkZWx0YXMgZm9yIGdsaWRlIHByZWRpY3Rpb24uCiAgICAgICAgIGVuZFNjcm9s
bFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlOjpVc2VySW50ZXJhY3Rpb24pOwogICAgICAg
ICBwdXNoSW5pdGlhbFdoZWVsRGVsdGEod2hlZWxEZWx0YSk7Ci0gICAgICAgIG1fYmVnaW5UcmFj
a2luZ1doZWVsRGVsdGFPZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhp
cyk7CisgICAgICAgIG1fYmVnaW5UcmFja2luZ1doZWVsRGVsdGFPZmZzZXQgPSBtX2NsaWVudC0+
c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBX
aGVlbEV2ZW50U3RhdHVzOjpJbmVydGlhbFNjcm9sbGluZzoKQEAgLTE1Myw3ICsxNTMsNyBAQCB2
b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OnNjcm9sbFNuYXBBCiAgICAgQVNTRVJUKG1fY3Vy
cmVudFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xpZGluZyB8fCBtX2N1cnJlbnRTdGF0ZSA9
PSBTY3JvbGxTbmFwU3RhdGU6OlNuYXBwaW5nKTsKICAgICBmbG9hdCBkZWx0YSA9IG1fY3VycmVu
dFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcgPyBjb21wdXRlU25hcERlbHRhKCkg
OiBjb21wdXRlR2xpZGVEZWx0YSgpOwogICAgIGlmIChkZWx0YSkKLSAgICAgICAgbV9jbGllbnQt
PmltbWVkaWF0ZVNjcm9sbEluQXhpcyhtX2F4aXMsIGRlbHRhKTsKKyAgICAgICAgbV9jbGllbnQt
PmltbWVkaWF0ZVNjcm9sbE9uQXhpcyhtX2F4aXMsIGRlbHRhKTsKICAgICBlbHNlCiAgICAgICAg
IGVuZFNjcm9sbFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlOjpEZXN0aW5hdGlvblJlYWNo
ZWQpOwogfQpAQCAtMTYxLDcgKzE2MSw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6
c2Nyb2xsU25hcEEKIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6YmVnaW5TY3JvbGxTbmFw
QW5pbWF0aW9uKFNjcm9sbFNuYXBTdGF0ZSBuZXdTdGF0ZSkKIHsKICAgICBBU1NFUlQobmV3U3Rh
dGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5nIHx8IG5ld1N0YXRlID09IFNjcm9sbFNuYXBT
dGF0ZTo6U25hcHBpbmcpOwotICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9s
bE9mZnNldEluQXhpcyhtX2F4aXMpOworICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQt
PnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4aXMpOwogICAgIGZsb2F0IGluaXRpYWxXaGVlbERlbHRh
ID0gbmV3U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5nID8gYXZlcmFnZUluaXRpYWxX
aGVlbERlbHRhKCkgOiAwOwogICAgIExheW91dFVuaXQgcHJvamVjdGVkU2Nyb2xsRGVzdGluYXRp
b24gPSBuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgPyBtX2JlZ2luVHJhY2tp
bmdXaGVlbERlbHRhT2Zmc2V0ICsgTGF5b3V0VW5pdChwcm9qZWN0ZWRJbmVydGlhbFNjcm9sbERp
c3RhbmNlKGluaXRpYWxXaGVlbERlbHRhKSkgOiBvZmZzZXQ7CiAgICAgcHJvamVjdGVkU2Nyb2xs
RGVzdGluYXRpb24gPSBzdGQ6Om1pbihzdGQ6Om1heChwcm9qZWN0ZWRTY3JvbGxEZXN0aW5hdGlv
biwgbV9zbmFwT2Zmc2V0cy0+Zmlyc3QoKSksIG1fc25hcE9mZnNldHMtPmxhc3QoKSk7CkBAIC0y
MDMsNyArMjAzLDcgQEAgdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjplbmRTY3JvbGxTbgog
Ly8gcmVsYXRpb25zaGlwIG9mIHRoZSBkaXN0YW5jZSB0cmF2ZWxlZCwgY2xhbXBlZCBieSBhcmJp
dHJhcnkgbWluIGFuZCBtYXggdmFsdWVzLgogZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6
Y29tcHV0ZVNuYXBEZWx0YSgpIGNvbnN0CiB7Ci0gICAgTGF5b3V0VW5pdCBvZmZzZXQgPSBtX2Ns
aWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5b3V0VW5pdCBvZmZzZXQg
PSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgYm9vbCBjYW5Db21w
dXRlU25hcCA9ICAobV9pbml0aWFsT2Zmc2V0IDw9IG9mZnNldCAmJiBvZmZzZXQgPCBtX3Rhcmdl
dE9mZnNldCkgfHwgKG1fdGFyZ2V0T2Zmc2V0IDwgb2Zmc2V0ICYmIG9mZnNldCA8PSBtX2luaXRp
YWxPZmZzZXQpOwogICAgIGlmIChtX2N1cnJlbnRTdGF0ZSAhPSBTY3JvbGxTbmFwU3RhdGU6OlNu
YXBwaW5nIHx8ICFjYW5Db21wdXRlU25hcCkKICAgICAgICAgcmV0dXJuIDA7CkBAIC0yMzcsNyAr
MjM3LDcgQEAgZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZVNuYQogLy8gYW5k
IFZGLiBUaHVzLCB3ZSBjYW4gZXhwcmVzcyBvdXIgZ2xpZGluZyBlcXVhdGlvbiBhbGwgaW4gdGVy
bXMgb2YgVjAsIFZGIGFuZCB0LgogZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0
ZUdsaWRlRGVsdGEoKSBjb25zdAogewotICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQt
PnNjcm9sbE9mZnNldEluQXhpcyhtX2F4aXMpOworICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9j
bGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4aXMpOwogICAgIGJvb2wgY2FuQ29tcHV0ZUds
aWRlID0gKG1faW5pdGlhbE9mZnNldCA8PSBvZmZzZXQgJiYgb2Zmc2V0IDwgbV90YXJnZXRPZmZz
ZXQpIHx8IChtX3RhcmdldE9mZnNldCA8IG9mZnNldCAmJiBvZmZzZXQgPD0gbV9pbml0aWFsT2Zm
c2V0KTsKICAgICBpZiAobV9jdXJyZW50U3RhdGUgIT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5n
IHx8ICFjYW5Db21wdXRlR2xpZGUpCiAgICAgICAgIHJldHVybiAwOwpJbmRleDogU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLmgJKHJldmlzaW9uIDE4
MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5o
CSh3b3JraW5nIGNvcHkpCkBAIC0zMiw3ICszMiw2IEBACiAjaW5jbHVkZSAiRmxvYXRQb2ludC5o
IgogI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgogI2luY2x1ZGUgIlNjcm9sbEFuaW1hdG9yLmgiCi0j
aW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVk
ZSA8d3RmL1JldGFpblB0ci5oPgogCkBAIC00MiwxNSArNDEsMTEgQEAgT0JKQ19DTEFTUyBXZWJT
Y3JvbGxiYXJQYWludGVyRGVsZWdhdGU7CiAKIHR5cGVkZWYgaWQgU2Nyb2xsYmFyUGFpbnRlckNv
bnRyb2xsZXI7CiAKLSNpZiAhRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotY2xhc3MgU2Nyb2xsQ29u
dHJvbGxlckNsaWVudCB7IH07Ci0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFz
cyBTY3JvbGxiYXI7CiAKLWNsYXNzIFNjcm9sbEFuaW1hdG9yTWFjIDogcHVibGljIFNjcm9sbEFu
aW1hdG9yLCBwcml2YXRlIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgeworY2xhc3MgU2Nyb2xsQW5p
bWF0b3JNYWMgOiBwdWJsaWMgU2Nyb2xsQW5pbWF0b3IgewogCiBwdWJsaWM6CiAgICAgU2Nyb2xs
QW5pbWF0b3JNYWMoU2Nyb2xsYWJsZUFyZWEmKTsKQEAgLTE1MCwxNyArMTQ1LDExIEBAIHByaXZh
dGU6CiAgICAgdmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9u
KCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENv
bnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgb3ZlcnJpZGU7CiAgICAgdmly
dHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwot
ICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKLSAg
ICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAgICB2
aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3Zl
cnJpZGU7CiAKICAgICBib29sIHBpbm5lZEluRGlyZWN0aW9uKGZsb2F0IGRlbHRhWCwgZmxvYXQg
ZGVsdGFZKTsKLSAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwogCiAgICAgYm9v
bCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2VzdHVyZShjb25zdCBQbGF0Zm9ybVdoZWVs
RXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwotCi0gICAgU2Nyb2xsQ29udHJvbGxlciBtX3Njcm9s
bENvbnRyb2xsZXI7Ci0gICAgVGltZXIgbV9zbmFwUnViYmVyQmFuZFRpbWVyOwogI2VuZGlmCiAK
ICAgICBib29sIG1faGF2ZVNjcm9sbGVkU2luY2VQYWdlTG9hZDsKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0JKHJldmlzaW9uIDE4
MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5t
bQkod29ya2luZyBjb3B5KQpAQCAtNjQzLDEwICs2NDMsNiBAQCBTY3JvbGxBbmltYXRvck1hYzo6
U2Nyb2xsQW5pbWF0b3JNYWMoU2NyCiAgICAgOiBTY3JvbGxBbmltYXRvcihzY3JvbGxhYmxlQXJl
YSkKICAgICAsIG1faW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXIoKnRoaXMsICZTY3JvbGxBbmlt
YXRvck1hYzo6aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZCkKICAgICAsIG1fc2VuZENv
bnRlbnRBcmVhU2Nyb2xsZWRUaW1lcigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29u
dGVudEFyZWFTY3JvbGxlZFRpbWVyRmlyZWQpCi0jaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQot
ICAgICwgbV9zY3JvbGxDb250cm9sbGVyKHRoaXMpCi0gICAgLCBtX3NuYXBSdWJiZXJCYW5kVGlt
ZXIoKnRoaXMsICZTY3JvbGxBbmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKQot
I2VuZGlmCiAgICAgLCBtX2hhdmVTY3JvbGxlZFNpbmNlUGFnZUxvYWQoZmFsc2UpCiAgICAgLCBt
X25lZWRzU2Nyb2xsZXJTdHlsZVVwZGF0ZShmYWxzZSkKIHsKQEAgLTEyNzAsMjEgKzEyNjYsNiBA
QCB2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjppbW1lZGlhdGVTY3JvbGxCCiAgICAgbV9jdXJyZW50
UG9zWSA9IG5ld1Bvcy55KCk7CiAgICAgbm90aWZ5UG9zaXRpb25DaGFuZ2VkKGFkanVzdGVkRGVs
dGEpOwogfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKQotewotICAgIG1fc25hcFJ1YmJlckJhbmRUaW1lci5zdGFydFJlcGVhdGluZygxLjAgLyA2
MC4wKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6c3RvcFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKQotewotICAgIG1fc25hcFJ1YmJlckJhbmRUaW1lci5zdG9wKCk7Ci19Ci0KLXZvaWQgU2Ny
b2xsQW5pbWF0b3JNYWM6OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCi17Ci0gICAgbV9zY3Jv
bGxDb250cm9sbGVyLnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwotfQogI2VuZGlmCiAKIHZv
aWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnVwZGF0ZVNjcm9sbGVyU3R5bGUoKQpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5oCShyZXZpc2lvbiAx
ODA4ODkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDEwNyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBT
Y3JvbGxDb250cm9sbGVyX2gKLSNkZWZpbmUgU2Nyb2xsQ29udHJvbGxlcl9oCi0KLSNpZiBFTkFC
TEUoUlVCQkVSX0JBTkRJTkcpCi0KLSNpbmNsdWRlICJGbG9hdFBvaW50LmgiCi0jaW5jbHVkZSAi
RmxvYXRTaXplLmgiCi0jaW5jbHVkZSAiU2Nyb2xsVHlwZXMuaCIKLSNpbmNsdWRlIDx3dGYvTm9u
Y29weWFibGUuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBQbGF0Zm9ybVdoZWVs
RXZlbnQ7Ci0KLWNsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewotcHJvdGVjdGVkOgotICAg
IHZpcnR1YWwgflNjcm9sbENvbnRyb2xsZXJDbGllbnQoKSB7IH0KLQotcHVibGljOgotICAgIHZp
cnR1YWwgYm9vbCBhbGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9ybVdoZWVs
RXZlbnQmKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIGFsbG93c1ZlcnRpY2FsU3RyZXRjaGluZyhj
b25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSA9IDA7Ci0gICAgdmlydHVhbCBJbnRTaXplIHN0cmV0
Y2hBbW91bnQoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIHBpbm5lZEluRGlyZWN0aW9uKGNvbnN0
IEZsb2F0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgY2FuU2Nyb2xsSG9yaXpvbnRhbGx5
KCkgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxWZXJ0aWNhbGx5KCkgPSAwOwotICAg
IHZpcnR1YWwgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsRGlyZWN0aW9u
KSA9IDA7Ci0KLSAgICAvLyBSZXR1cm4gdGhlIGFic29sdXRlIHNjcm9sbCBwb3NpdGlvbiwgbm90
IHJlbGF0aXZlIHRvIHRoZSBzY3JvbGwgb3JpZ2luLgotICAgIHZpcnR1YWwgV2ViQ29yZTo6SW50
UG9pbnQgYWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpID0gMDsKLQotICAgIHZpcnR1YWwgdm9pZCBp
bW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lk
IGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxv
YXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIo
KSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwot
Ci0gICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlzIHdpdGhpbiB0aGUgb3Zl
cmhhbmcgYXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNhdXNlCi0gICAgLy8gdGhlIHBhZ2UgdG8g
c2Nyb2xsIHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBvaW50LgotICAgIHZpcnR1YWwgdm9pZCBh
ZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSA9IDA7Ci19OwotCi1jbGFz
cyBTY3JvbGxDb250cm9sbGVyIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShTY3JvbGxDb250
cm9sbGVyKTsKLQotcHVibGljOgotICAgIGV4cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xs
Q29udHJvbGxlckNsaWVudCopOwotCi0gICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBs
YXRmb3JtV2hlZWxFdmVudCYpOwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7
Ci0KLSAgICBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdDsKLQotcHJpdmF0ZToK
LSAgICB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0gICAgdm9pZCBzbmFwUnViYmVy
QmFuZCgpOwotCi0gICAgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9u
KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOwotCi0gICAgU2Nyb2xsQ29udHJvbGxlckNsaWVu
dCogbV9jbGllbnQ7Ci0KLSAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOwotICAgIGJvb2wgbV9t
b21lbnR1bVNjcm9sbEluUHJvZ3Jlc3M7Ci0gICAgYm9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xs
czsKLSAgICAKLSAgICBDRlRpbWVJbnRlcnZhbCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cDsKLSAgICBGbG9hdFNpemUgbV9vdmVyZmxvd1Njcm9sbERlbHRhOwotICAgIEZsb2F0U2l6ZSBt
X3N0cmV0Y2hTY3JvbGxGb3JjZTsKLSAgICBGbG9hdFNpemUgbV9tb21lbnR1bVZlbG9jaXR5Owot
Ci0gICAgLy8gUnViYmVyIGJhbmQgc3RhdGUuCi0gICAgQ0ZUaW1lSW50ZXJ2YWwgbV9zdGFydFRp
bWU7Ci0gICAgRmxvYXRTaXplIG1fc3RhcnRTdHJldGNoOwotICAgIEZsb2F0UG9pbnQgbV9vcmln
T3JpZ2luOwotICAgIEZsb2F0U2l6ZSBtX29yaWdWZWxvY2l0eTsKLQotICAgIGJvb2wgbV9zbmFw
UnViYmVyYmFuZFRpbWVySXNBY3RpdmU7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0KLSNlbmRpZiAvLyBTY3JvbGxDb250
cm9sbGVyX2gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9s
bGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxD
b250cm9sbGVyLm1tCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbQkod29ya2luZyBjb3B5KQpAQCAtMSw0MDYgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
IlNjcm9sbENvbnRyb2xsZXIuaCIKLQotI2luY2x1ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgot
I2luY2x1ZGUgIldlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaCIKLSNpbmNsdWRlIDxzeXMvc3lzY3Rs
Lmg+Ci0jaW5jbHVkZSA8c3lzL3RpbWUuaD4KLQotI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykK
LQotc3RhdGljIE5TVGltZUludGVydmFsIHN5c3RlbVVwdGltZSgpCi17Ci0gICAgaWYgKFtbTlNQ
cm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzeXN0
ZW1VcHRpbWUpXSkKLSAgICAgICAgcmV0dXJuIFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10g
c3lzdGVtVXB0aW1lXTsKLQotICAgIC8vIEdldCBob3cgbG9uZyBzeXN0ZW0gaGFzIGJlZW4gdXAu
IEZvdW5kIGJ5IGxvb2tpbmcgZ2V0dGluZyAiYm9vdHRpbWUiIGZyb20gdGhlIGtlcm5lbC4KLSAg
ICBzdGF0aWMgc3RydWN0IHRpbWV2YWwgYm9vdHRpbWUgPSB7MCwgMH07Ci0gICAgaWYgKCFib290
dGltZS50dl9zZWMpIHsKLSAgICAgICAgaW50IG1pYlsyXSA9IHtDVExfS0VSTiwgS0VSTl9CT09U
VElNRX07Ci0gICAgICAgIHNpemVfdCBzaXplID0gc2l6ZW9mKGJvb3R0aW1lKTsKLSAgICAgICAg
aWYgKC0xID09IHN5c2N0bChtaWIsIDIsICZib290dGltZSwgJnNpemUsIDAsIDApKQotICAgICAg
ICAgICAgYm9vdHRpbWUudHZfc2VjID0gMDsKLSAgICB9Ci0gICAgc3RydWN0IHRpbWV2YWwgbm93
OwotICAgIGlmIChib290dGltZS50dl9zZWMgJiYgLTEgIT0gZ2V0dGltZW9mZGF5KCZub3csIDAp
KSB7Ci0gICAgICAgIHN0cnVjdCB0aW1ldmFsIHVwdGltZTsKLSAgICAgICAgdGltZXJzdWIoJm5v
dywgJmJvb3R0aW1lLCAmdXB0aW1lKTsKLSAgICAgICAgTlNUaW1lSW50ZXJ2YWwgcmVzdWx0ID0g
dXB0aW1lLnR2X3NlYyArICh1cHRpbWUudHZfdXNlYyAvIDFFKzYpOwotICAgICAgICByZXR1cm4g
cmVzdWx0OwotICAgIH0KLSAgICByZXR1cm4gMDsKLX0KLQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLXN0YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0ID0gMC4x
MGY7Ci1zdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0
aW8gPSAxOwotc3RhdGljIGNvbnN0IGZsb2F0IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0
YUJlZm9yZVN0cmV0Y2ggPSAxMDsKLQotc3RhdGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclRpbWVE
ZWx0YShmbG9hdCBpbml0aWFsUG9zaXRpb24sIGZsb2F0IGluaXRpYWxWZWxvY2l0eSwgZmxvYXQg
ZWxhcHNlZFRpbWUpCi17Ci0gICAgcmV0dXJuIHdrTlNFbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEo
aW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsVmVsb2NpdHksIGVsYXBzZWRUaW1lKTsKLX0KLQotc3Rh
dGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShmbG9hdCBkZWx0YSkKLXsKLSAg
ICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShkZWx0YSk7Ci19Ci0KLXN0
YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoZmxvYXQgZGVsdGEpCi17Ci0g
ICAgcmV0dXJuIHdrTlNSZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoZGVsdGEpOwotfQotCi1z
dGF0aWMgZmxvYXQgc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCkKLXsKLSAgICBzdGF0aWMgZmxvYXQg
bXVsdGlwbGllciA9IC0xOwotICAgIGlmIChtdWx0aXBsaWVyIDwgMCkgewotICAgICAgICBtdWx0
aXBsaWVyID0gW1tOU1VzZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c10gZmxvYXRGb3JL
ZXk6QCJOU1Njcm9sbFdoZWVsTXVsdGlwbGllciJdOwotICAgICAgICBpZiAobXVsdGlwbGllciA8
PSAwKQotICAgICAgICAgICAgbXVsdGlwbGllciA9IDE7Ci0gICAgfQotICAgIHJldHVybiBtdWx0
aXBsaWVyOwotfQotCi1TY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENv
bnRyb2xsZXJDbGllbnQqIGNsaWVudCkKLSAgICA6IG1fY2xpZW50KGNsaWVudCkKLSAgICAsIG1f
aW5TY3JvbGxHZXN0dXJlKGZhbHNlKQotICAgICwgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3Mo
ZmFsc2UpCi0gICAgLCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyhmYWxzZSkKLSAgICAsIG1fbGFz
dE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCi0gICAgLCBtX3N0YXJ0VGltZSgwKQotICAgICwg
bV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUoZmFsc2UpCi17Ci19Ci0KLWJvb2wgU2Nyb2xs
Q29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdo
ZWVsRXZlbnQpCi17Ci0gICAgaWYgKHdoZWVsRXZlbnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVs
RXZlbnRQaGFzZUJlZ2FuKSB7Ci0gICAgICAgIC8vIEZpcnN0LCBjaGVjayBpZiB3ZSBzaG91bGQg
cnViYmVyLWJhbmQgYXQgYWxsLgotICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0
aW9uKEZsb2F0U2l6ZSgtd2hlZWxFdmVudC5kZWx0YVgoKSwgMCkpCi0gICAgICAgICAgICAmJiAh
c2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbih3aGVlbEV2ZW50KSkKLSAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAgICBtX2luU2Nyb2xsR2VzdHVyZSA9IHRydWU7
Ci0gICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gZmFsc2U7Ci0gICAgICAgIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7Ci0gICAgICAgIG1fbGFzdE1vbWVudHVtU2Ny
b2xsVGltZXN0YW1wID0gMDsKLSAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXpl
KCk7Ci0KLSAgICAgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hB
bW91bnQoKTsKLSAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERl
bHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQud2lkdGgoKSkpOwotICAgICAgICBtX3N0
cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0
cmV0Y2hBbW91bnQuaGVpZ2h0KCkpKTsKLSAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0g
RmxvYXRTaXplKCk7Ci0KLSAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLQotICAg
ICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0KLSAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09
IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKLSAgICAgICAgc25hcFJ1YmJlckJhbmQo
KTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotCi0gICAgYm9vbCBpc01vbWVudHVtU2Ny
b2xsRXZlbnQgPSAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCkgIT0gUGxhdGZvcm1XaGVlbEV2
ZW50UGhhc2VOb25lKTsKLSAgICBpZiAobV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgJiYgKGlzTW9t
ZW50dW1TY3JvbGxFdmVudCB8fCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkpIHsKLSAg
ICAgICAgaWYgKHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVu
dFBoYXNlRW5kZWQpIHsKLSAgICAgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFs
c2U7Ci0gICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgfQotCi0gICAgZmxvYXQgZGVsdGFYID0gbV9vdmVyZmxvd1Njcm9sbERlbHRh
LndpZHRoKCk7Ci0gICAgZmxvYXQgZGVsdGFZID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdo
dCgpOwotCi0gICAgLy8gUmVzZXQgb3ZlcmZsb3cgdmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lk
ZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBwb2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJm
bG93LgotICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgSW50
U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLSAgICBib29s
IGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IHN0cmV0Y2hBbW91bnQuaGVpZ2h0KCk7Ci0gICAgYm9v
bCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0cmV0Y2hBbW91bnQud2lkdGgoKTsKLQotICAg
IGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFYOwotICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVs
dGFZOwotCi0gICAgaWYgKGlzVmVydGljYWxseVN0cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0
cmV0Y2hlZCkgewotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LnVu
YWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoKTsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0
YVkgPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZKCk7Ci0gICAgfSBl
bHNlIHsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAtd2hlZWxFdmVudC5kZWx0YVgo
KTsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC5kZWx0YVkoKTsK
LSAgICB9Ci0KLSAgICBkZWx0YVggKz0gZXZlbnRDb2FsZXNjZWREZWx0YVg7Ci0gICAgZGVsdGFZ
ICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFZOwotCi0gICAgLy8gU2xpZ2h0bHkgcHJlZmVyIHNjcm9s
bGluZyB2ZXJ0aWNhbGx5IGJ5IGFwcGx5aW5nIHRoZSA9IGNhc2UgdG8gZGVsdGFZCi0gICAgaWYg
KGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkKLSAgICAgICAgZGVsdGFYID0gMDsKLSAg
ICBlbHNlCi0gICAgICAgIGRlbHRhWSA9IDA7Ci0KLSAgICBib29sIHNob3VsZFN0cmV0Y2ggPSBm
YWxzZTsKLQotICAgIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlIG1vbWVudHVtUGhhc2UgPSB3aGVl
bEV2ZW50Lm1vbWVudHVtUGhhc2UoKTsKLQotICAgIC8vIElmIHdlIGFyZSBzdGFydGluZyBtb21l
bnR1bSBzY3JvbGxpbmcgdGhlbiBkbyBzb21lIHNldHVwLgotICAgIGlmICghbV9tb21lbnR1bVNj
cm9sbEluUHJvZ3Jlc3MgJiYgKG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhh
c2VCZWdhbiB8fCBtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQ2hhbmdl
ZCkpCi0gICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gdHJ1ZTsKLQotICAgIENG
VGltZUludGVydmFsIHRpbWVEZWx0YSA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCkgLSBtX2xhc3RN
b21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKLSAgICBpZiAobV9pblNjcm9sbEdlc3R1cmUgfHwgbV9t
b21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKLSAgICAgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Ny
b2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+IDAgJiYgdGltZURlbHRhIDwgc2Nyb2xsVmVsb2Np
dHlaZXJvaW5nVGltZW91dCkgewotICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldFdp
ZHRoKGV2ZW50Q29hbGVzY2VkRGVsdGFYIC8gKGZsb2F0KXRpbWVEZWx0YSk7Ci0gICAgICAgICAg
ICBtX21vbWVudHVtVmVsb2NpdHkuc2V0SGVpZ2h0KGV2ZW50Q29hbGVzY2VkRGVsdGFZIC8gKGZs
b2F0KXRpbWVEZWx0YSk7Ci0gICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7
Ci0gICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLSAgICAgICAg
fQotCi0gICAgICAgIGlmIChpc1ZlcnRpY2FsbHlTdHJldGNoZWQpIHsKLSAgICAgICAgICAgIGlm
ICghaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYgbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9u
KEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgewotICAgICAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcg
b25seSBpbiB0aGUgdmVydGljYWwuCi0gICAgICAgICAgICAgICAgaWYgKGRlbHRhWSAmJiAoZmFi
c2YoZGVsdGFYIC8gZGVsdGFZKSA8IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlv
KSkKLSAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgICAgICBlbHNl
IGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3Jl
U3RyZXRjaCkgewotICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0
V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAg
ICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAgIH0gZWxzZQotICAgICAgICAg
ICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9s
bERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2Ug
aWYgKGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7Ci0gICAgICAgICAgICAvLyBTdHJldGNoaW5n
IG9ubHkgaW4gdGhlIGhvcml6b250YWwuCi0gICAgICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5l
ZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgewotICAgICAgICAgICAgICAgIGlm
IChkZWx0YVggJiYgKGZhYnNmKGRlbHRhWSAvIGRlbHRhWCkgPCBydWJiZXJiYW5kRGlyZWN0aW9u
TG9ja1N0cmV0Y2hSYXRpbykpCi0gICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7Ci0gICAg
ICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVsdGFZKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVx
dWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKLSAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxv
d1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBk
ZWx0YVkpOwotICAgICAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOwotICAgICAgICAgICAgICAg
IH0gZWxzZQotICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVp
Z2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAvLyBOb3Qgc3RyZXRjaGluZyBhdCBh
bGwgeWV0LgotICAgICAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9h
dFNpemUoZGVsdGFYLCBkZWx0YVkpKSkgewotICAgICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0
YVkpID49IGZhYnNmKGRlbHRhWCkpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRl
bHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9v
dmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgICAgICAg
ICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAg
ICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Nj
cm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICBzaG91bGRTdHJldGNoID0gdHJ1ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQot
ICAgIH0KLQotICAgIGlmIChkZWx0YVggfHwgZGVsdGFZKSB7Ci0gICAgICAgIGlmICghKHNob3Vs
ZFN0cmV0Y2ggfHwgaXNWZXJ0aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRj
aGVkKSkgewotICAgICAgICAgICAgaWYgKGRlbHRhWSkgewotICAgICAgICAgICAgICAgIGRlbHRh
WSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+
aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKDAsIGRlbHRhWSkpOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgaWYgKGRlbHRhWCkgewotICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3Jv
bGxXaGVlbE11bHRpcGxpZXIoKTsKLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRl
U2Nyb2xsQnkoRmxvYXRTaXplKGRlbHRhWCwgMCkpOwotICAgICAgICAgICAgfQotICAgICAgICB9
IGVsc2UgewotICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+YWxsb3dzSG9yaXpvbnRhbFN0cmV0
Y2hpbmcod2hlZWxFdmVudCkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAg
ICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gMDsKLSAgICAgICAgICAgIH0gZWxzZSBp
ZiAoZGVsdGFYICYmICFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5l
ZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgewotICAgICAgICAgICAgICAgIGRl
bHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLQotICAgICAgICAgICAgICAgIG1fY2xp
ZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0
U2l6ZShkZWx0YVgsIDApKTsKLSAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAg
ICAgfQotCi0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5hbGxvd3NWZXJ0aWNhbFN0cmV0Y2hp
bmcod2hlZWxFdmVudCkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOwotICAgICAgICAg
ICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gMDsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAo
ZGVsdGFZICYmICFpc1ZlcnRpY2FsbHlTdHJldGNoZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRp
cmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVkg
Kj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7Ci0KLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+
aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUo
MCwgZGVsdGFZKSk7Ci0gICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKLSAgICAgICAgICAgIH0K
LQotICAgICAgICAgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hB
bW91bnQoKTsKLQotICAgICAgICAgICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7
Ci0gICAgICAgICAgICAgICAgaWYgKChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRT
aXplKGV2ZW50Q29hbGVzY2VkRGVsdGFYLCBldmVudENvYWxlc2NlZERlbHRhWSkpIHx8IChmYWJz
ZihldmVudENvYWxlc2NlZERlbHRhWCkgKyBmYWJzZihldmVudENvYWxlc2NlZERlbHRhWSkgPD0g
MCkpICYmIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKSB7Ci0gICAgICAgICAgICAgICAg
ICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAg
bV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAg
c25hcFJ1YmJlckJhbmQoKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0KLSAg
ICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldFdpZHRoKG1fc3RyZXRjaFNjcm9sbEZv
cmNlLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uu
c2V0SGVpZ2h0KG1fc3RyZXRjaFNjcm9sbEZvcmNlLmhlaWdodCgpICsgZGVsdGFZKTsKLQotICAg
ICAgICAgICAgRmxvYXRTaXplIGRhbXBlZERlbHRhKGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91
bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS53aWR0aCgpKSksIGNlaWxmKGVsYXN0aWNEZWx0
YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS5oZWlnaHQoKSkpKTsKLQotICAg
ICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29u
c3RyYWludHMoZGFtcGVkRGVsdGEgLSBzdHJldGNoQW1vdW50KTsKLSAgICAgICAgfQotICAgIH0K
LQotICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiBtb21lbnR1bVBoYXNlID09
IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKLSAgICAgICAgbV9tb21lbnR1bVNjcm9s
bEluUHJvZ3Jlc3MgPSBmYWxzZTsKLSAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBm
YWxzZTsKLSAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAwOwotICAgIH0K
LQotICAgIHJldHVybiB0cnVlOwotfQotCi1zdGF0aWMgaW5saW5lIGZsb2F0IHJvdW5kVG93YXJk
WmVybyhmbG9hdCBudW0pCi17Ci0gICAgcmV0dXJuIG51bSA+IDAgPyBjZWlsZihudW0gLSAwLjVm
KSA6IGZsb29yZihudW0gKyAwLjVmKTsKLX0KLQotc3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRv
RGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGZsb2F0IG51bSkKLXsKLSAgICBmbG9hdCByb3VuZGVkTnVt
ID0gcm91bmRmKG51bSk7Ci0gICAgaWYgKGZhYnMobnVtIC0gcm91bmRlZE51bSkgPCAwLjEyNSkK
LSAgICAgICAgbnVtID0gcm91bmRlZE51bTsKLQotICAgIHJldHVybiByb3VuZFRvd2FyZFplcm8o
bnVtKTsKLX0KLQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmly
ZWQoKQotewotICAgIGlmICghbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgfHwgbV9pZ25vcmVN
b21lbnR1bVNjcm9sbHMpIHsKLSAgICAgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gW05T
RGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdIC0gbV9zdGFydFRpbWU7Ci0KLSAg
ICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZsb2F0U2l6ZSgpKSB7Ci0gICAgICAgICAgICBt
X3N0YXJ0U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0gICAgICAgICAgICBp
ZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXplKCkpIHsKLSAgICAgICAgICAgICAgICBzdG9w
U25hcFJ1YmJlcmJhbmRUaW1lcigpOwotCi0gICAgICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2UgPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7Ci0g
ICAgICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAg
ICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7Ci0gICAgICAgICAgICAgICAgbV9vcmln
VmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IG1fY2xpZW50LT5hYnNvbHV0ZVNj
cm9sbFBvc2l0aW9uKCkgLSBtX3N0YXJ0U3RyZXRjaDsKLSAgICAgICAgICAgIG1fb3JpZ1ZlbG9j
aXR5ID0gbV9tb21lbnR1bVZlbG9jaXR5OwotCi0gICAgICAgICAgICAvLyBKdXN0IGxpa2Ugbm9y
bWFsIHNjcm9sbGluZywgcHJlZmVyIHZlcnRpY2FsIHJ1YmJlcmJhbmRpbmcKLSAgICAgICAgICAg
IGlmIChmYWJzZihtX29yaWdWZWxvY2l0eS5oZWlnaHQoKSkgPj0gZmFic2YobV9vcmlnVmVsb2Np
dHkud2lkdGgoKSkpCi0gICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7
Ci0KLSAgICAgICAgICAgIC8vIERvbid0IHJ1YmJlci1iYW5kIGhvcml6b250YWxseSBpZiBpdCdz
IG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgaG9yaXpvbnRhbGx5Ci0gICAgICAgICAgICBpZiAoIW1f
Y2xpZW50LT5jYW5TY3JvbGxIb3Jpem9udGFsbHkoKSkKLSAgICAgICAgICAgICAgICBtX29yaWdW
ZWxvY2l0eS5zZXRXaWR0aCgwKTsKLQotICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQg
dmVydGljYWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgdmVydGljYWxseQotICAg
ICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Nyb2xsVmVydGljYWxseSgpKQotICAgICAgICAg
ICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldEhlaWdodCgwKTsKLSAgICAgICAgfQotCi0gICAgICAg
IEZsb2F0UG9pbnQgZGVsdGEocm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVs
dGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2gud2lkdGgoKSwgLW1fb3JpZ1ZlbG9jaXR5Lndp
ZHRoKCksIChmbG9hdCl0aW1lRGVsdGEpKSwKLSAgICAgICAgICAgIHJvdW5kVG9EZXZpY2VQaXhl
bFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKG1fc3RhcnRTdHJldGNoLmhlaWdo
dCgpLCAtbV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCksIChmbG9hdCl0aW1lRGVsdGEpKSk7Ci0KLSAg
ICAgICAgaWYgKGZhYnMoZGVsdGEueCgpKSA+PSAxIHx8IGZhYnMoZGVsdGEueSgpKSA+PSAxKSB7
Ci0gICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVk
Z2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGEueCgpLCBkZWx0YS55KCkpIC0gbV9jbGllbnQt
PnN0cmV0Y2hBbW91bnQoKSk7Ci0KLSAgICAgICAgICAgIEZsb2F0U2l6ZSBuZXdTdHJldGNoID0g
bV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLQotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2gud2lk
dGgoKSkpOwotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91
bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJldGNoLmhlaWdodCgpKSk7Ci0gICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICBtX2NsaWVudC0+YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5k
c0lmTmVjZXNzYXJ5KCk7Ci0KLSAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7
Ci0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOwotICAgICAg
ICAgICAgbV9zdGFydFRpbWUgPSAwOwotICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9h
dFNpemUoKTsKLSAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKLSAgICAg
ICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0gICAgICAgIH0KLSAgICB9IGVs
c2UgewotICAgICAgICBtX3N0YXJ0VGltZSA9IFtOU0RhdGUgdGltZUludGVydmFsU2luY2VSZWZl
cmVuY2VEYXRlXTsKLSAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICB9
Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNv
bnN0Ci17Ci0gICAgaWYgKCFtX2luU2Nyb2xsR2VzdHVyZSAmJiAhbV9tb21lbnR1bVNjcm9sbElu
UHJvZ3Jlc3MgJiYgIW1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0KLSAgICByZXR1cm4gIW1fY2xpZW50LT5zdHJldGNoQW1vdW50KCkuaXNaZXJv
KCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIo
KQotewotICAgIG1fY2xpZW50LT5zdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwotICAgIG1fc25h
cFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFsc2U7Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJv
bGxlcjo6c25hcFJ1YmJlckJhbmQoKQotewotICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9
IHN5c3RlbVVwdGltZSgpIC0gbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Ci0gICAgaWYg
KG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+PSBzY3JvbGxWZWxv
Y2l0eVplcm9pbmdUaW1lb3V0KQotICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNp
emUoKTsKLQotICAgIG1faW5TY3JvbGxHZXN0dXJlID0gZmFsc2U7Ci0KLSAgICBpZiAobV9zbmFw
UnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCi0gICAgICAgIHJldHVybjsKLQotICAgIG1fc3RhcnRU
aW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOwotICAgIG1fc3Rh
cnRTdHJldGNoID0gRmxvYXRTaXplKCk7Ci0gICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgp
OwotICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0KLSAgICBtX2NsaWVudC0+c3Rh
cnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0gICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3Rp
dmUgPSB0cnVlOwotfQotCi1ib29sIFNjcm9sbENvbnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJ
bkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50
KQotewotICAgIGlmICh3aGVlbEV2ZW50LmRlbHRhWCgpID4gMCkKLSAgICAgICAgcmV0dXJuIG1f
Y2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsTGVmdCk7Ci0gICAgaWYg
KHdoZWVsRXZlbnQuZGVsdGFYKCkgPCAwKQotICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3Vs
ZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxSaWdodCk7Ci0KLSAgICByZXR1cm4gdHJ1ZTsK
LX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9C
QU5ESU5HKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247690</attachid>
            <date>2015-03-02 12:25:52 -0800</date>
            <delta_ts>2015-03-02 12:27:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-142102-20150302122535.patch</filename>
            <type>text/plain</type>
            <size>83969</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE1LTAzLTAyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorICAg
ICAgICAKKyAgICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxp
bmcgY2xhc3NlczoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1
bkxvb3A6OlRpbWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgor
ICAgICAgICAgICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQ
b2ludCBhbmQgUnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENv
bnRyb2xsZXIgZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNo
YXJpbmcgd2l0aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9y
e01hY30gLT4gU2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNl
dEluQXhpcyAtPiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0
ZVNjcm9sbEluQXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdw
bGF0Zm9ybS9jb2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1h
a2Ugc3VyZSB0aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9s
bAorICAgICAgICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFu
ZGxlZCIgY2FzZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0
aW1lciBhbmQgc29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxD
b250cm9sbGVyIGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRv
IGNsZWFuIHVwIHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyk6IEFkZCB0ZW1w
b3Jhcnkgc3R1YiBuZWVkZWQKKyAgICAgICAgdW50aWwgQnVnIDE0MTk3MyBpcyBjb21wbGV0ZWQu
KS4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6U2Nyb2xsQW5pbWF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnBy
b2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEp1c3QgY2FsbCB0aGUgU2Nyb2xsQ29udHJv
bGxlciBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyk6IFJlbmFtZWQgZnJvbSBzY3JvbGxPZmZz
ZXRJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0
SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMpOiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmg6IENvcGllZCBmcm9tIHBsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmguCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5tbTogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIu
bW0uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVy
KTogVXBkYXRlIHRvIGluaXRpYWxpemUgbmV3IHRpbWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOiBVcGRhdGUgdG8gaGFuZGxlIFNjcm9s
bCBTbmFwIFBvaW50IGV2ZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBNYW5hZ2UgYW5pbWF0aW9u
IHRpbWVycyBsb2NhbGx5LCBkbyBub3QKKyAgICAgICAgcmVxdWlyZSBjbGllbnQgdG8gbWFpbnRh
aW4gdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEFkZGVkLiAoTW92ZWQgZnJvbSBTY3JvbGxBbmlt
YXRvck1hYykKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6
OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEaXR0by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIpOiAg
RGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
OiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW06IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFj
OjpTY3JvbGxBbmltYXRvck1hYyk6IFJlbW92ZSB1bnVzZWQgUnViYmVyYmFuZCB0aW1lcnMgKG5v
dyB0aGF0IHRoaXMgaXMKKyAgICAgICAgY29udHJvbGxlZCBpbiB0aGUgU2Nyb2xsQ29udHJvbGxl
cikKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmg6IFJlbW92ZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06IFJlbW92ZWQuCisKIDIwMTUtMDMt
MDIgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVyZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRl
IGluIEdyYXBoaWNzTGF5ZXJDQS5oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkK
QEAgLTc4Niw4ICs3ODYsNiBAQAogCQkxQTkyN0ZEMzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTky
N0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5ODk1NkIwQUE3OEY4MDAwNUVGNUVG
IC8qIFVSTENGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBOTg5NTZBMEFBNzhGODAwMDVFRjVFRiAvKiBVUkxDRi5jcHAgKi87IH07Ci0JCTFBQTg0
RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07Ci0JCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1
MyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFB
QTg3OTkwMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJhdGVneS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODc5OEYxMUNCRTg0NjAwM0M2NjRG
IC8qIFBsdWdpblN0cmF0ZWd5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMUFBQUREQTMxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQURE
QTExNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovOyB9OwogCQkxQUFBRERB
NDE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMjQ0NSw2ICsyNDQzLDggQEAKIAkJN0E3NEVDQkQxMDE4MzlEQTAwQkY5MzlFIC8q
IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNzRFQ0JDMTAxODM5REEwMEJGOTM5RSAvKiBKU0lu
c3BlY3RvckZyb250ZW5kSG9zdEN1c3RvbS5jcHAgKi87IH07CiAJCTdBOTM4Njg1MThEQ0MxNDUw
MEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgyMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNw
cCAqLzsgfTsKIAkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThEQ0Mx
NDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87IH07CisJCTdBOUFERkYzMUFBMTE2MzgwMEQy
NzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJv
bGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTdBOUFERkY0MUFBMTE2M0IwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGRkE0MTIxQUExMDM5RDAw
RjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07CiAJCTdBQTNBNjk5MTk0QTY0RTcw
MDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTY5NTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuY3BwICovOyB9OwogCQk3QUEzQTY5QTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
QTNBNjk2MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdBQTNBNjlCMTk0QTY0RTcwMDFD
QkQyNCAvKiBUaWxlR3JpZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QUEzQTY5NzE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUdyaWQuY3BwICovOyB9
OwpAQCAtNzgwOSw4ICs3ODA5LDYgQEAKIAkJMUE5MjdGRDAxNDE2QTE1QjAwM0E4M0M4IC8qIG5w
cnVudGltZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBucHJ1bnRpbWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE5MjdGRDExNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gbnB0eXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTk4OTU2QTBBQTc4RjgwMDA1RUY1RUYgLyog
VVJMQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVSTENGLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQkxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTFBQTg3OThGMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJh
dGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbHVnaW5TdHJhdGVneS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUFBRERBMTE0REI0MDlGMDBBRjY0QjMg
LyogU2Nyb2xsaW5nVHJlZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTY3JvbGxpbmdUcmVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQURE
QTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtOTY2Nyw2ICs5NjY1LDggQEAKIAkJN0FGOUIyMDkxOENGQjVGMjAwQzY0QkVGIC8qIEpT
VlRUUmVnaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVlRUUmVnaW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRjlCMjBBMThDRkI1RjMwMEM2NEJF
RiAvKiBKU1ZUVFJlZ2lvbkxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNWVFRSZWdpb25MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0FGOUIyMEIxOENGQjVGMzAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uTGlzdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZUVFJlZ2lvbkxpc3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0FGRkE0MTExQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xs
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUZGQTQxMjFBQTEwMzlEMDBGMDEyNUIg
LyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IFNjcm9sbENvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdDMkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0MyQkREM0MxN0M3Rjk4QjAwMzhG
RjE1IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0RPTUdsb2JhbE9iamVjdFRhc2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0MzQjc5NkYxOTA4NzU3QjAwQjQ3QTJEIC8qIFVzZXJNZXNzYWdlSGFuZGxlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1ODcsOCArMTY1ODcsNiBAQAog
CQkJCUJDNTExNTZEMTJCMTc0OUMwMEM5Njc1NCAvKiBTY3JvbGxBbmltYXRvck1hYy5tbSAqLywK
IAkJCQlCQzhCODUzQzBFN0M3RjExMDBBQjY5ODQgLyogU2Nyb2xsYmFyVGhlbWVNYWMuaCAqLywK
IAkJCQlCQ0VGODY5RTBFODQ0RTlEMDBBODVDRDUgLyogU2Nyb2xsYmFyVGhlbWVNYWMubW0gKi8s
Ci0JCQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIuaCAqLywK
LQkJCQkxQUE4NEYwMjE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLywK
IAkJCQk5MzUzNjc2QTA5QUVEODhCMDBEMzVDRDYgLyogU2Nyb2xsVmlld01hYy5tbSAqLywKIAkJ
CQkwNzdBRjE0MTE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXplZFBsYXRmb3JtUmVwcmVzZW50
YXRpb25NYWMuaCAqLywKIAkJCQkwNzdBRjE0MjE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXpl
ZFBsYXRmb3JtUmVwcmVzZW50YXRpb25NYWMubW0gKi8sCkBAIC0xODY5OCw2ICsxODY5Niw4IEBA
CiAJCQkJMUEwNDA5RjIxQTQzNjc1QzAwOUU0N0YzIC8qIE1hY2hTZW5kUmlnaHQuY3BwICovLAog
CQkJCTFBMDQwOURCMUE0MzYwQjUwMDlFNDdGMyAvKiBNYWNoU2VuZFJpZ2h0LmggKi8sCiAJCQkJ
QURCNkIyOTcxOEZCOTAyNDAwODE5NjNFIC8qIE1lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1t
ICovLAorCQkJCTdBRkZBNDExMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3JvbGxDb250cm9sbGVyLmgg
Ki8sCisJCQkJN0FGRkE0MTIxQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
Ki8sCiAJCQkJNUQ1OTc1QjExOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNpb24uaCAqLywK
IAkJCQk1RDU5NzVCMjE5NjM1RjExMDBEMDA4NzggLyogU3lzdGVtVmVyc2lvbi5tbSAqLywKIAkJ
CQk3Q0M1NjRCOTE4QkFDNzIwMDAxQjk2NTIgLyogVGVsZXBob25lTnVtYmVyRGV0ZWN0b3JDb2Nv
YS5jcHAgKi8sCkBAIC0yNDY0OCw2ICsyNDY0OCw3IEBACiAJCQkJQThFQTdDQjUwQTE5MkI5QzAw
QThFRjVGIC8qIEhUTUxQYXJhZ3JhcGhFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcx
RDQ1ODBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBhcmFtRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJOTNFMkEzMDcxMjNFOURDMDAwOUZFMTJBIC8qIEhUTUxQYXJzZXJJZGlvbXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTdBOUFERkYzMUFBMTE2MzgwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzNGNDE4QTE2OUI5NUZGMDAwNkJGNjAgLyogSFRN
TFBhcnNlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3N0IzODcxMTIyODgzRTkwMEI4
MUZGOCAvKiBIVE1MUGFyc2VyU2NoZWR1bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxRDQ1
NjBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLApA
QCAtMjYxMDEsNyArMjYxMDIsNiBAQAogCQkJCUJDOEI4NTNFMEU3QzdGMTEwMEFCNjk4NCAvKiBT
Y3JvbGxiYXJUaGVtZU1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZFNzE0MDYxNDIxNzBCODAw
REIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUQ5MjVC
NjgwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEJlaGF2aW9yLmggaW4gSGVhZGVycyAqLywKLQkJ
CQkxQUE4NEYwNTE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMEY2MDVBRUQxNUY5NDg0ODAwNERGMEMwIC8qIFNjcm9sbGluZ0NvbnN0cmFp
bnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUY2MkVFODE0REEyMkE3MDA0MTU1NkMgLyogU2Ny
b2xsaW5nQ29vcmRpbmF0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQzRFNDBEMTg3RjgyRTEw
MDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5oIGluIEhlYWRlcnMgKi8sCkBAIC0y
NzQ5Niw2ICsyNzQ5Niw3IEBACiAJCQkJRTE5QUMzRjQxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0
b0FsZ29yaXRobVNIQTUxMi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTEx
MDA4OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxNTdB
OEU0MTgxNzNBM0EwMDlGODIxRCAvKiBDcnlwdG9LZXkuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
N0E5QURGRjQxQUExMTYzQjAwRDI3MzNDIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gaW4gU291cmNl
cyAqLywKIAkJCQlFMTI1Rjg0RDE4MjQyODlEMDBEODRDRDkgLyogQ3J5cHRvS2V5QUVTLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUUxMjVGODYzMTgyQzMwM0EwMEQ4NENEOSAvKiBDcnlwdG9LZXlE
YXRhT2N0ZXRTZXF1ZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUMyNjZERTE4MzE5RjMx
MDAzRjhCMzMgLyogQ3J5cHRvS2V5RGF0YVJTQUNvbXBvbmVudHMuY3BwIGluIFNvdXJjZXMgKi8s
CkBAIC0yOTUwOCw3ICsyOTUwOSw2IEBACiAJCQkJQkNFRjg2OUYwRTg0NEU5RDAwQTg1Q0Q1IC8q
IFNjcm9sbGJhclRoZW1lTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZFNzE0MDUxNDIxNzBC
ODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1
RDkyNUI2NzBGNjRENEREMDBCODQ3RjAgLyogU2Nyb2xsQmVoYXZpb3IuY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJMUFBODRGMDQxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
aW4gU291cmNlcyAqLywKIAkJCQkwRjYwNUFFQzE1Rjk0ODQ4MDA0REYwQzAgLyogU2Nyb2xsaW5n
Q29uc3RyYWludHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFGNjJFRTcxNERBMjJBNzAwNDE1
NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGQzRF
NDBFMTg3RjgyRTEwMDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5tbSBpbiBTb3Vy
Y2VzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5t
bQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5k
bGVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05NjEsNiArOTYxLDEyIEBAIGJvb2wgRXZlbnRI
YW5kbGVyOjpwbGF0Zm9ybUNvbXBsZXRlV2hlZWwKICAgICAKICAgICBib29sIGRpZEhhbmRsZUV2
ZW50ID0gdmlldyA/IHZpZXctPndoZWVsRXZlbnQod2hlZWxFdmVudCkgOiBmYWxzZTsKICAgICBt
X2lzSGFuZGxpbmdXaGVlbEV2ZW50ID0gZmFsc2U7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JP
TExfU05BUCkKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEpCisgICAgICAgIHBsYXRmb3JtTm90aWZ5
U25hcElmTmVjZXNzYXJ5KHdoZWVsRXZlbnQsICpzY3JvbGxhYmxlQXJlYSk7CisjZW5kaWYKKwog
ICAgIHJldHVybiBkaWRIYW5kbGVFdmVudDsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJl
ZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yy5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw4ICs2MSw2IEBAIHByaXZhdGU6CiAgICAgdmlydHVh
bCBJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFp
bnRzKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNu
YXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBS
dWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xs
UG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICB2aXJ0dWFsIEZs
b2F0UG9pbnQgc2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKQEAgLTgwLDEwICs3OCwx
NCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2Vz
dHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwogCisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZpcnR1YWwgTGF5
b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKTsKKyAgICB2aXJ0dWFs
IHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEp
OworI2VuZGlmCisKICAgICB2b2lkIGxvZ0V4cG9zZWRVbmZpbGxlZEFyZWEoKTsKIAogICAgIFNj
cm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOwotICAgIFJldGFpblB0cjxDRlJ1bkxv
b3BUaW1lclJlZj4gbV9zbmFwUnViYmVyYmFuZFRpbWVyOwogCiAgICAgUmV0YWluUHRyPENBTGF5
ZXI+IG1fc2Nyb2xsTGF5ZXI7CiAgICAgUmV0YWluUHRyPENBTGF5ZXI+IG1fc2Nyb2xsZWRDb250
ZW50c0xheWVyOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9s
bGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWMubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC02Niw4ICs2Niw2IEBAIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OlNj
cm8KIAogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6flNjcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVNYWMoKQogewotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXIp
Ci0gICAgICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZShtX3NuYXBSdWJiZXJiYW5kVGltZXIu
Z2V0KCkpOwogfQogCiB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnVw
ZGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQpA
QCAtMjk2LDMyICsyOTQsNiBAQCB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWM6CiAgICAgc2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhvZmZzZXQpOwog
fQogCi12b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnN0YXJ0U25hcFJ1
YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgQVNTRVJUKCFtX3NuYXBSdWJiZXJiYW5kVGltZXIpOwot
Ci0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZXJJbnRlcnZhbCA9IDEuMCAvIDYwLjA7Ci0KLSAgICBt
X3NuYXBSdWJiZXJiYW5kVGltZXIgPSBhZG9wdENGKENGUnVuTG9vcFRpbWVyQ3JlYXRlV2l0aEhh
bmRsZXIoa0NGQWxsb2NhdG9yRGVmYXVsdCwgQ0ZBYnNvbHV0ZVRpbWVHZXRDdXJyZW50KCkgKyB0
aW1lckludGVydmFsLCB0aW1lckludGVydmFsLCAwLCAwLCBeKENGUnVuTG9vcFRpbWVyUmVmKSB7
Ci0gICAgICAgIG1fc2Nyb2xsQ29udHJvbGxlci5zbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsK
LSAgICB9KSk7Ci0gICAgQ0ZSdW5Mb29wQWRkVGltZXIoQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBt
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCksIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci19Ci0K
LXZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RvcFNuYXBSdWJiZXJi
YW5kVGltZXIoKQotewotICAgIGlmICghbV9zbmFwUnViYmVyYmFuZFRpbWVyKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICBzY3JvbGxpbmdUcmVlKCkuc2V0TWFpbkZyYW1lSXNSdWJiZXJCYW5kaW5n
KGZhbHNlKTsKLQotICAgIC8vIFNpbmNlIHRoZSBydWJiZXJiYW5kIHRpbWVyIGhhcyBzdG9wcGVk
LCB0b3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQgY2FuIGJlIHN5bmNocm9uaXplZCB3aXRo
IHRvdGFsQ29udGVudHNTaXplLgotICAgIHNldFRvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFu
ZCh0b3RhbENvbnRlbnRzU2l6ZSgpKTsKLQotICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZSht
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCkpOwotICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lciA9
IG51bGxwdHI7Ci19Ci0KIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6
YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkKIHsKICAgICBGbG9hdFBv
aW50IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKTsKQEAg
LTU0MCw2ICs1MTIsMTkgQEAgdm9pZCBsb2dXaGVlbEV2ZW50SGFuZGxlckNvdW50Q2hhbmdlZCh1
bgogICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5HOiBXaGVlbCBldmVudCBoYW5kbGVyIGNvdW50
IGNoYW5nZWQuIFRpbWU6ICVmIENvdW50OiAldVxuIiwgV1RGOjptb25vdG9uaWNhbGx5SW5jcmVh
c2luZ1RpbWUoKSwgY291bnQpOwogfQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYg
UExBVEZPUk0oTUFDKQorTGF5b3V0VW5pdCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2Rl
TWFjOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKQoreworICAgIC8vIFRlbXBv
cmFyeSBzdHViIHVudGlsIGh0dHA6Ly93ZWJraXQub3JnL2IvMTQxOTczLgorICAgIHJldHVybiBM
YXlvdXRVbml0KCk7Cit9CisKK3ZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yzo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQpCit7CisgICAg
Ly8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDovL3dlYmtpdC5vcmcvYi8xNDE5NzMuCit9Cisj
ZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKEFTWU5D
X1NDUk9MTElORykgJiYgUExBVEZPUk0oTUFDKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsQW5pbWF0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw2ICs0
OSw5IEBAIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxBbmltYXRvcj4gU2Nyb2xsQW4KIAogU2Nyb2xs
QW5pbWF0b3I6OlNjcm9sbEFuaW1hdG9yKFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkK
ICAgICA6IG1fc2Nyb2xsYWJsZUFyZWEoc2Nyb2xsYWJsZUFyZWEpCisjaWYgRU5BQkxFKFJVQkJF
Ul9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgICwgbV9zY3JvbGxDb250
cm9sbGVyKHRoaXMpCisjZW5kaWYKICAgICAsIG1fY3VycmVudFBvc1goMCkKICAgICAsIG1fY3Vy
cmVudFBvc1koMCkKIHsKQEAgLTgxLDI4ICs4NCwxNiBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjpz
Y3JvbGxUb09mZnNldFdpdGhvCiB9CiAKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpwcm9jZXNzV2hlZWxFdmVudEZvclNj
cm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQorYm9vbCBTY3Jv
bGxBbmltYXRvcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYgd2hlZWxFdmVudCkKIHsKLSAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBB
bmltYXRvcikKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hl
ZWxFdmVudCh3aGVlbEV2ZW50KTsKLSAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1h
dG9yKQotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVs
RXZlbnQod2hlZWxFdmVudCk7CisgICAgcmV0dXJuIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNz
V2hlZWxFdmVudEZvclNjcm9sbFNuYXAod2hlZWxFdmVudCk7CiB9CiAjZW5kaWYKIAogYm9vbCBT
Y3JvbGxBbmltYXRvcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQm
IGUpCiB7CiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQotICAg
IGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQoZSk7Ci0gICAgICAgIGlmIChtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0g
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIGlmIChtX2hvcml6b250YWxTY3Jv
bGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9y
LT5oYW5kbGVXaGVlbEV2ZW50KGUpOwotICAgICAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25h
cEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0gICAgICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgfQorICAgIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNzV2hlZWxFdmVu
dEZvclNjcm9sbFNuYXAoZSk7CiAjZW5kaWYKICNpZiBQTEFURk9STShDT0NPQSkKICAgICAvLyBF
dmVudHMgaW4gdGhlIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlTWF5QmVnaW4gcGhhc2UgaGF2ZSBu
byBkZWx0YXMsIGFuZCB0aGVyZWZvcmUgbmV2ZXIgcGFzc2VzIHRocm91Z2ggdGhlIHNjcm9sbCBo
YW5kbGluZyBsb2dpYyBiZWxvdy4KQEAgLTE4MywzMCArMTc0LDE1IEBAIHZvaWQgU2Nyb2xsQW5p
bWF0b3I6Om5vdGlmeVBvc2l0aW9uQ2hhbmcKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAm
JiBQTEFURk9STShNQUMpCiB2b2lkIFNjcm9sbEFuaW1hdG9yOjp1cGRhdGVTY3JvbGxBbmltYXRv
cnNBbmRUaW1lcnMoKQogewotICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBzbmFwIGFu
aW1hdG9ycyBhcmUgcmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMgYWxvbmUg
Y2FuIGJlIHVwZGF0ZWQuCi0gICAgaWYgKG1fc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBP
ZmZzZXRzKCkpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3Rk
OjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVB
cmVhLmhvcml6b250YWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwp
OwotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVl
PFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVy
RmlyZWQpOwotICAgIH0gZWxzZSBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7
Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51bGxwdHI7Ci0gICAg
ICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA9IG51bGxwdHI7Ci0gICAgfQotICAgIGlm
IChtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSkgewotICAgICAgICBtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25h
cEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSwg
U2Nyb2xsRXZlbnRBeGlzOjpWZXJ0aWNhbCk7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFw
VGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjp2
ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKLSAgICB9IGVsc2UgaWYgKG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRv
ciA9IG51bGxwdHI7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIgPSBudWxscHRy
OwotICAgIH0KKyAgICBtX3Njcm9sbENvbnRyb2xsZXIudXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5k
VGltZXJzKG1fc2Nyb2xsYWJsZUFyZWEpOwogfQogCi1MYXlvdXRVbml0IFNjcm9sbEFuaW1hdG9y
OjpzY3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCitMYXlvdXRVbml0IFNj
cm9sbEFuaW1hdG9yOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCiB7
Ci0gICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24o
KTsKLSAgICByZXR1cm4gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBjdXJy
ZW50UG9zaXRpb24ueCgpIDogY3VycmVudFBvc2l0aW9uLnkoKTsKKyAgICByZXR1cm4gYXhpcyA9
PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2N1cnJlbnRQb3NYIDogbV9jdXJyZW50
UG9zWTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRvcjo6aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNj
cm9sbEV2ZW50QXhpcyBheGlzLCBmbG9hdCBkZWx0YSkKK3ZvaWQgU2Nyb2xsQW5pbWF0b3I6Omlt
bWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcywgZmxvYXQgZGVsdGEpCiB7
CiAgICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24o
KTsKICAgICBpZiAoYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwpCkBAIC0yMTQs
MzAgKzE5MCw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXgKICAg
ICBlbHNlCiAgICAgICAgIHNjcm9sbFRvT2Zmc2V0V2l0aG91dEFuaW1hdGlvbihGbG9hdFBvaW50
KGN1cnJlbnRQb3NpdGlvbi54KCksIGN1cnJlbnRQb3NpdGlvbi55KCkgKyBkZWx0YSkpOwogfQot
Ci12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4
aXMgYXhpcykKLXsKLSAgICBUaW1lciogc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxF
dmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIuZ2V0KCkg
OiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyLmdldCgpOwotICAgIGlmICghc2Nyb2xsU25hcFRp
bWVyLT5pc0FjdGl2ZSgpKQotICAgICAgICBzY3JvbGxTbmFwVGltZXItPnN0YXJ0UmVwZWF0aW5n
KDEuMCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdG9wU2Nyb2xsU25hcFRp
bWVyKFNjcm9sbEV2ZW50QXhpcyBheGlzKQotewotICAgIFRpbWVyKiBzY3JvbGxTbmFwVGltZXIg
PSBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9s
bFNuYXBUaW1lci5nZXQoKSA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIuZ2V0KCk7Ci0gICAg
aWYgKHNjcm9sbFNuYXBUaW1lci0+aXNBY3RpdmUoKSkKLSAgICAgICAgc2Nyb2xsU25hcFRpbWVy
LT5zdG9wKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFw
VGltZXJGaXJlZCgpCi17Ci0gICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3Jv
bGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnZlcnRp
Y2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQotewotICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5p
bWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKLX0KICNlbmRpZgogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmlt
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1h
dG9yLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9s
bEFuaW1hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDE0ICszMywxNCBAQAogI2RlZmluZSBT
Y3JvbGxBbmltYXRvcl9oCiAKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKKyNpbmNsdWRlICJMYXlv
dXRVbml0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCiAjaW5jbHVkZSAiU2Ny
b2xsVHlwZXMuaCIKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9G
b3J3YXJkLmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMp
Ci0jaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgotI2luY2x1ZGUgIlRpbWVyLmgi
CisjaWYgKEVOQUJMRShSVUJCRVJfQkFORElORykgfHwgRU5BQkxFKENTU19TQ1JPTExfU05BUCkp
ICYmIFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjZW5kaWYK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTAsOCArNTAsOCBAQCBjbGFzcyBQbGF0Zm9ybVRv
dWNoRXZlbnQ7CiBjbGFzcyBTY3JvbGxhYmxlQXJlYTsKIGNsYXNzIFNjcm9sbGJhcjsKIAotI2lm
IEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLWNsYXNzIFNjcm9sbEFu
aW1hdG9yIDogcHVibGljIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQgeworI2lmIChFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKSB8fCBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpICYmIFBMQVRGT1JN
KE1BQykpCitjbGFzcyBTY3JvbGxBbmltYXRvciA6IHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNs
aWVudCB7CiAjZWxzZQogY2xhc3MgU2Nyb2xsQW5pbWF0b3IgewogI2VuZGlmCkBAIC0xMTgsMzMg
KzExOCwyMiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jl
c3MoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05B
UCkgJiYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgcHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxT
bmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworICAgIGJvb2wgcHJvY2Vzc1doZWVsRXZl
bnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworCiAgICAgdm9pZCB1
cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoKTsKLSAgICB2aXJ0dWFsIExheW91dFVuaXQg
c2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IGRlbHRh
KSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xs
RXZlbnRBeGlzKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1l
cihTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0
T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3Jv
bGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7CiAjZW5kaWYK
IAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlQb3NpdGlvbkNoYW5nZWQoY29u
c3QgRmxvYXRTaXplJiBkZWx0YSk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCi0gICAgLy8gVHJpdmlhbCB3cmFwcGVycyBhcm91bmQgdGhlIGFjdHVhbCB1
cGRhdGUgbG9vcCBpbiBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLCBzaW5jZSBXZWJDb3JlIFRpbWVy
IHJlcXVpcmVzIGEgVGltZXIgYXJndW1lbnQuCi0gICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25h
cFRpbWVyRmlyZWQoKTsKLSAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsK
LSNlbmRpZgotCiAgICAgU2Nyb2xsYWJsZUFyZWEmIG1fc2Nyb2xsYWJsZUFyZWE7CisjaWYgRU5B
QkxFKFJVQkJFUl9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgIFNjcm9s
bENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOworI2VuZGlmCiAgICAgZmxvYXQgbV9jdXJy
ZW50UG9zWDsgLy8gV2UgYXZvaWQgdXNpbmcgYSBGbG9hdFBvaW50IGluIG9yZGVyIHRvIHJlZHVj
ZQogICAgIGZsb2F0IG1fY3VycmVudFBvc1k7IC8vIHN1YmNsYXNzIGNvZGUgY29tcGxleGl0eS4K
LSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi0gICAgc3RkOjp1
bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBB
bmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8VGltZXI+IG1faG9yaXpvbnRhbFNjcm9sbFNu
YXBUaW1lcjsKLSAgICAvLyBGSVhNRTogRmluZCBhIHdheSB0byBjb25zb2xpZGF0ZSBib3RoIHRp
bWVycyBpbnRvIG9uZSB2YXJpYWJsZS4KLSAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNu
YXBBbmltYXRvcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1
ZV9wdHI8VGltZXI+IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7Ci0jZW5kaWYKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1Njcm9sbENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHJldmlzaW9uIDE4MDcwMikJKGZyb20gU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIuaDoxODA3MDIpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwxMDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFNjcm9sbENvbnRyb2xs
ZXJfaAorI2RlZmluZSBTY3JvbGxDb250cm9sbGVyX2gKKworI2lmIEVOQUJMRShSVUJCRVJfQkFO
RElORykKKworI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJGbG9hdFNpemUuaCIK
KyNpbmNsdWRlICJTY3JvbGxUeXBlcy5oIgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKKworY2xh
c3MgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7Citwcm90ZWN0ZWQ6CisgICAgdmlydHVhbCB+U2Ny
b2xsQ29udHJvbGxlckNsaWVudCgpIHsgfQorCitwdWJsaWM6CisgICAgdmlydHVhbCBib29sIGFs
bG93c0hvcml6b250YWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsK
KyAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzVmVydGljYWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYpID0gMDsKKyAgICB2aXJ0dWFsIEludFNpemUgc3RyZXRjaEFtb3VudCgpID0g
MDsKKyAgICB2aXJ0dWFsIGJvb2wgcGlubmVkSW5EaXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikg
PSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxIb3Jpem9udGFsbHkoKSA9IDA7CisgICAg
dmlydHVhbCBib29sIGNhblNjcm9sbFZlcnRpY2FsbHkoKSA9IDA7CisgICAgdmlydHVhbCBib29s
IHNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxEaXJlY3Rpb24pID0gMDsKKworICAg
IC8vIFJldHVybiB0aGUgYWJzb2x1dGUgc2Nyb2xsIHBvc2l0aW9uLCBub3QgcmVsYXRpdmUgdG8g
dGhlIHNjcm9sbCBvcmlnaW4uCisgICAgdmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0
ZVNjcm9sbFBvc2l0aW9uKCkgPSAwOworCisgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9s
bEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Ny
b2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7
CisgICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7CisKKyAgICAvLyBJZiB0
aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0
aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKKyAgICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhl
IG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCisgICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBv
c2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsKK307CisKK2NsYXNzIFNjcm9sbENvbnRy
b2xsZXIgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFNjcm9sbENvbnRyb2xsZXIpOworCitw
dWJsaWM6CisgICAgZXhwbGljaXQgU2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xp
ZW50Kik7CisKKyAgICBib29sIGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2
ZW50Jik7CisgICAgdm9pZCBzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKKworICAgIGJvb2wg
aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0OworCitwcml2YXRlOgorICAgIHZvaWQgc3Rv
cFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kKCk7CisKKyAg
ICBib29sIHNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZv
cm1XaGVlbEV2ZW50Jik7CisKKyAgICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsK
KworICAgIGJvb2wgbV9pblNjcm9sbEdlc3R1cmU7CisgICAgYm9vbCBtX21vbWVudHVtU2Nyb2xs
SW5Qcm9ncmVzczsKKyAgICBib29sIG1faWdub3JlTW9tZW50dW1TY3JvbGxzOworICAgIAorICAg
IENGVGltZUludGVydmFsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOworICAgIEZsb2F0
U2l6ZSBtX292ZXJmbG93U2Nyb2xsRGVsdGE7CisgICAgRmxvYXRTaXplIG1fc3RyZXRjaFNjcm9s
bEZvcmNlOworICAgIEZsb2F0U2l6ZSBtX21vbWVudHVtVmVsb2NpdHk7CisKKyAgICAvLyBSdWJi
ZXIgYmFuZCBzdGF0ZS4KKyAgICBDRlRpbWVJbnRlcnZhbCBtX3N0YXJ0VGltZTsKKyAgICBGbG9h
dFNpemUgbV9zdGFydFN0cmV0Y2g7CisgICAgRmxvYXRQb2ludCBtX29yaWdPcmlnaW47CisgICAg
RmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5OworCisgICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGlt
ZXJJc0FjdGl2ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVO
QUJMRShSVUJCRVJfQkFORElORykKKworI2VuZGlmIC8vIFNjcm9sbENvbnRyb2xsZXJfaApJbmRl
eDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIu
aAkod29ya2luZyBjb3B5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMTEsIDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMyLDEwICszMiwxNiBAQAogI2luY2x1
ZGUgIkZsb2F0U2l6ZS5oIgogI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSA8d3Rm
L05vbmNvcHlhYmxlLmg+CisjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KKworI2lmIEVOQUJMRShD
U1NfU0NST0xMX1NOQVApCisjaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgorI2Vu
ZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50Owor
Y2xhc3MgU2Nyb2xsYWJsZUFyZWE7CiAKIGNsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewog
cHJvdGVjdGVkOgpAQCAtNTUsMzYgKzYxLDU1IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9p
ZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3Qg
RmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAw
OwogCiAgICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlzIHdpdGhpbiB0aGUg
b3ZlcmhhbmcgYXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNhdXNlCiAgICAgLy8gdGhlIHBhZ2Ug
dG8gc2Nyb2xsIHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBvaW50LgogICAgIHZpcnR1YWwgdm9p
ZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSA9IDA7CisKKyNpZiBF
TkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdmlydHVhbCBMYXlv
dXRVbml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKKyAgICB2aXJ0
dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVs
dGEpID0gMDsKKyNlbmRpZgogfTsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBM
QVRGT1JNKE1BQykKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXIgOiBwdWJsaWMgQXhpc1Njcm9sbFNu
YXBBbmltYXRvckNsaWVudCB7CisjZWxzZQogY2xhc3MgU2Nyb2xsQ29udHJvbGxlciB7CisjZW5k
aWYKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShTY3JvbGxDb250cm9sbGVyKTsKIAogcHVibGlj
OgogICAgIGV4cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCop
OwogCiAgICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYp
OwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIGlzUnVi
YmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdDsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVAp
ICYmIFBMQVRGT1JNKE1BQykKKyAgICBib29sIHByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25h
cChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKyAgICB2b2lkIHVwZGF0ZVNjcm9sbEFuaW1h
dG9yc0FuZFRpbWVycyhjb25zdCBTY3JvbGxhYmxlQXJlYSYpOworI2VuZGlmCisKIHByaXZhdGU6
CisgICAgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICB2b2lkIHN0b3BTbmFw
UnViYmVyYmFuZFRpbWVyKCk7CiAgICAgdm9pZCBzbmFwUnViYmVyQmFuZCgpOworICAgIHZvaWQg
c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIHNob3VsZFJ1YmJlckJhbmRJ
bkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CiAKLSAgICBT
Y3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9T
TkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVy
RmlyZWQoKTsKKyAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsKKyAgICB2
b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyk7CisgICAgdm9pZCBzdG9w
U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyk7CisKKyAgICBMYXlvdXRVbml0IHNjcm9s
bE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEpIG92ZXJyaWRlOwor
I2VuZGlmCiAKLSAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOwotICAgIGJvb2wgbV9tb21lbnR1
bVNjcm9sbEluUHJvZ3Jlc3M7Ci0gICAgYm9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xsczsKKyAg
ICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKICAgICAKICAgICBDRlRpbWVJbnRl
cnZhbCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKICAgICBGbG9hdFNpemUgbV9vdmVy
Zmxvd1Njcm9sbERlbHRhOwpAQCAtOTYsNyArMTIxLDE5IEBAIHByaXZhdGU6CiAgICAgRmxvYXRT
aXplIG1fc3RhcnRTdHJldGNoOwogICAgIEZsb2F0UG9pbnQgbV9vcmlnT3JpZ2luOwogICAgIEZs
b2F0U2l6ZSBtX29yaWdWZWxvY2l0eTsKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250cm9s
bGVyPiBtX3NuYXBSdWJiZXJiYW5kVGltZXI7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JPTExf
U05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIC8vIEZJWE1FOiBGaW5kIGEgd2F5IHRvIGNvbnNv
bGlkYXRlIGJvdGggdGltZXJzIGludG8gb25lIHZhcmlhYmxlLgorICAgIHN0ZDo6dW5pcXVlX3B0
cjxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPiBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3I7
CisgICAgc3RkOjp1bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3I7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4g
bV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyOworICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9sbENv
bnRyb2xsZXI+IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7CisjZW5kaWYKIAorICAgIGJvb2wg
bV9pblNjcm9sbEdlc3R1cmU7CisgICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsK
KyAgICBib29sIG1faWdub3JlTW9tZW50dW1TY3JvbGxzOwogICAgIGJvb2wgbV9zbmFwUnViYmVy
YmFuZFRpbWVySXNBY3RpdmU7CiB9OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9j
b2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0JKHJldmlzaW9uIDE4MDcwMikJKGZyb20g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06MTgwNzAyKQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDQwNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSwg
MjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlNjcm9sbENvbnRyb2xsZXIuaCIKKworI2luY2x1
ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgorI2luY2x1ZGUgIldlYkNvcmVTeXN0ZW1JbnRlcmZh
Y2UuaCIKKyNpbmNsdWRlIDxzeXMvc3lzY3RsLmg+CisjaW5jbHVkZSA8c3lzL3RpbWUuaD4KKwor
I2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKKworc3RhdGljIE5TVGltZUludGVydmFsIHN5c3Rl
bVVwdGltZSgpCit7CisgICAgaWYgKFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcmVzcG9u
ZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzeXN0ZW1VcHRpbWUpXSkKKyAgICAgICAgcmV0dXJuIFtb
TlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gc3lzdGVtVXB0aW1lXTsKKworICAgIC8vIEdldCBo
b3cgbG9uZyBzeXN0ZW0gaGFzIGJlZW4gdXAuIEZvdW5kIGJ5IGxvb2tpbmcgZ2V0dGluZyAiYm9v
dHRpbWUiIGZyb20gdGhlIGtlcm5lbC4KKyAgICBzdGF0aWMgc3RydWN0IHRpbWV2YWwgYm9vdHRp
bWUgPSB7MCwgMH07CisgICAgaWYgKCFib290dGltZS50dl9zZWMpIHsKKyAgICAgICAgaW50IG1p
YlsyXSA9IHtDVExfS0VSTiwgS0VSTl9CT09UVElNRX07CisgICAgICAgIHNpemVfdCBzaXplID0g
c2l6ZW9mKGJvb3R0aW1lKTsKKyAgICAgICAgaWYgKC0xID09IHN5c2N0bChtaWIsIDIsICZib290
dGltZSwgJnNpemUsIDAsIDApKQorICAgICAgICAgICAgYm9vdHRpbWUudHZfc2VjID0gMDsKKyAg
ICB9CisgICAgc3RydWN0IHRpbWV2YWwgbm93OworICAgIGlmIChib290dGltZS50dl9zZWMgJiYg
LTEgIT0gZ2V0dGltZW9mZGF5KCZub3csIDApKSB7CisgICAgICAgIHN0cnVjdCB0aW1ldmFsIHVw
dGltZTsKKyAgICAgICAgdGltZXJzdWIoJm5vdywgJmJvb3R0aW1lLCAmdXB0aW1lKTsKKyAgICAg
ICAgTlNUaW1lSW50ZXJ2YWwgcmVzdWx0ID0gdXB0aW1lLnR2X3NlYyArICh1cHRpbWUudHZfdXNl
YyAvIDFFKzYpOworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0KKyAgICByZXR1cm4gMDsK
K30KKworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxW
ZWxvY2l0eVplcm9pbmdUaW1lb3V0ID0gMC4xMGY7CitzdGF0aWMgY29uc3QgZmxvYXQgcnViYmVy
YmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8gPSAxOworc3RhdGljIGNvbnN0IGZsb2F0IHJ1
YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2ggPSAxMDsKKworc3RhdGlj
IGZsb2F0IGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShmbG9hdCBpbml0aWFsUG9zaXRpb24sIGZs
b2F0IGluaXRpYWxWZWxvY2l0eSwgZmxvYXQgZWxhcHNlZFRpbWUpCit7CisgICAgcmV0dXJuIHdr
TlNFbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEoaW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsVmVsb2Np
dHksIGVsYXBzZWRUaW1lKTsKK30KKworc3RhdGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclJlYm91
bmREZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclJl
Ym91bmREZWx0YShkZWx0YSk7Cit9CisKK3N0YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JFbGFz
dGljRGVsdGEoZmxvYXQgZGVsdGEpCit7CisgICAgcmV0dXJuIHdrTlNSZWJvdW5kRGVsdGFGb3JF
bGFzdGljRGVsdGEoZGVsdGEpOworfQorCitzdGF0aWMgZmxvYXQgc2Nyb2xsV2hlZWxNdWx0aXBs
aWVyKCkKK3sKKyAgICBzdGF0aWMgZmxvYXQgbXVsdGlwbGllciA9IC0xOworICAgIGlmIChtdWx0
aXBsaWVyIDwgMCkgeworICAgICAgICBtdWx0aXBsaWVyID0gW1tOU1VzZXJEZWZhdWx0cyBzdGFu
ZGFyZFVzZXJEZWZhdWx0c10gZmxvYXRGb3JLZXk6QCJOU1Njcm9sbFdoZWVsTXVsdGlwbGllciJd
OworICAgICAgICBpZiAobXVsdGlwbGllciA8PSAwKQorICAgICAgICAgICAgbXVsdGlwbGllciA9
IDE7CisgICAgfQorICAgIHJldHVybiBtdWx0aXBsaWVyOworfQorCitTY3JvbGxDb250cm9sbGVy
OjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIGNsaWVudCkKKyAgICA6
IG1fY2xpZW50KGNsaWVudCkKKyAgICAsIG1faW5TY3JvbGxHZXN0dXJlKGZhbHNlKQorICAgICwg
bV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MoZmFsc2UpCisgICAgLCBtX2lnbm9yZU1vbWVudHVt
U2Nyb2xscyhmYWxzZSkKKyAgICAsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCisg
ICAgLCBtX3N0YXJ0VGltZSgwKQorICAgICwgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUo
ZmFsc2UpCit7Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChj
b25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCit7CisgICAgaWYgKHdoZWVsRXZl
bnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuKSB7CisgICAgICAgIC8v
IEZpcnN0LCBjaGVjayBpZiB3ZSBzaG91bGQgcnViYmVyLWJhbmQgYXQgYWxsLgorICAgICAgICBp
ZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgtd2hlZWxFdmVudC5kZWx0
YVgoKSwgMCkpCisgICAgICAgICAgICAmJiAhc2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERp
cmVjdGlvbih3aGVlbEV2ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAg
ICBtX2luU2Nyb2xsR2VzdHVyZSA9IHRydWU7CisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblBy
b2dyZXNzID0gZmFsc2U7CisgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7
CisgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gMDsKKyAgICAgICAgbV9t
b21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisKKyAgICAgICAgSW50U2l6ZSBzdHJldGNo
QW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKyAgICAgICAgbV9zdHJldGNoU2Ny
b2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91
bnQud2lkdGgoKSkpOworICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVi
b3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQuaGVpZ2h0KCkpKTsKKyAgICAg
ICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7CisKKyAgICAgICAgc3RvcFNu
YXBSdWJiZXJiYW5kVGltZXIoKTsKKworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAg
ICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQp
IHsKKyAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAg
fQorCisgICAgYm9vbCBpc01vbWVudHVtU2Nyb2xsRXZlbnQgPSAod2hlZWxFdmVudC5tb21lbnR1
bVBoYXNlKCkgIT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKTsKKyAgICBpZiAobV9pZ25v
cmVNb21lbnR1bVNjcm9sbHMgJiYgKGlzTW9tZW50dW1TY3JvbGxFdmVudCB8fCBtX3NuYXBSdWJi
ZXJiYW5kVGltZXJJc0FjdGl2ZSkpIHsKKyAgICAgICAgaWYgKHdoZWVsRXZlbnQubW9tZW50dW1Q
aGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKKyAgICAgICAgICAgIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
KyAgICAgICAgfQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgZmxvYXQgZGVs
dGFYID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCk7CisgICAgZmxvYXQgZGVsdGFZID0g
bV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpOworCisgICAgLy8gUmVzZXQgb3ZlcmZsb3cg
dmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lkZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBw
b2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJmbG93LgorICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YSA9IEZsb2F0U2l6ZSgpOworCisgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQt
PnN0cmV0Y2hBbW91bnQoKTsKKyAgICBib29sIGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IHN0cmV0
Y2hBbW91bnQuaGVpZ2h0KCk7CisgICAgYm9vbCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0
cmV0Y2hBbW91bnQud2lkdGgoKTsKKworICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFYOwor
ICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFZOworCisgICAgaWYgKGlzVmVydGljYWxseVN0
cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCkgeworICAgICAgICBldmVudENvYWxl
c2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoKTsK
KyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVk
U2Nyb2xsaW5nRGVsdGFZKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWRE
ZWx0YVggPSAtd2hlZWxFdmVudC5kZWx0YVgoKTsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0
YVkgPSAtd2hlZWxFdmVudC5kZWx0YVkoKTsKKyAgICB9CisKKyAgICBkZWx0YVggKz0gZXZlbnRD
b2FsZXNjZWREZWx0YVg7CisgICAgZGVsdGFZICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFZOworCisg
ICAgLy8gU2xpZ2h0bHkgcHJlZmVyIHNjcm9sbGluZyB2ZXJ0aWNhbGx5IGJ5IGFwcGx5aW5nIHRo
ZSA9IGNhc2UgdG8gZGVsdGFZCisgICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFY
KSkKKyAgICAgICAgZGVsdGFYID0gMDsKKyAgICBlbHNlCisgICAgICAgIGRlbHRhWSA9IDA7CisK
KyAgICBib29sIHNob3VsZFN0cmV0Y2ggPSBmYWxzZTsKKworICAgIFBsYXRmb3JtV2hlZWxFdmVu
dFBoYXNlIG1vbWVudHVtUGhhc2UgPSB3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKTsKKworICAg
IC8vIElmIHdlIGFyZSBzdGFydGluZyBtb21lbnR1bSBzY3JvbGxpbmcgdGhlbiBkbyBzb21lIHNl
dHVwLgorICAgIGlmICghbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgKG1vbWVudHVtUGhh
c2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbiB8fCBtb21lbnR1bVBoYXNlID09IFBs
YXRmb3JtV2hlZWxFdmVudFBoYXNlQ2hhbmdlZCkpCisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJ
blByb2dyZXNzID0gdHJ1ZTsKKworICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IHdoZWVs
RXZlbnQudGltZXN0YW1wKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBp
ZiAobV9pblNjcm9sbEdlc3R1cmUgfHwgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKKyAg
ICAgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+IDAg
JiYgdGltZURlbHRhIDwgc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCkgeworICAgICAgICAg
ICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldFdpZHRoKGV2ZW50Q29hbGVzY2VkRGVsdGFYIC8gKGZs
b2F0KXRpbWVEZWx0YSk7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkuc2V0SGVpZ2h0
KGV2ZW50Q29hbGVzY2VkRGVsdGFZIC8gKGZsb2F0KXRpbWVEZWx0YSk7CisgICAgICAgICAgICBt
X2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7Cisg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2Np
dHkgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChpc1ZlcnRpY2FsbHlT
dHJldGNoZWQpIHsKKyAgICAgICAgICAgIGlmICghaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYg
bV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgeworICAg
ICAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgdmVydGljYWwuCisgICAgICAg
ICAgICAgICAgaWYgKGRlbHRhWSAmJiAoZmFic2YoZGVsdGFYIC8gZGVsdGFZKSA8IHJ1YmJlcmJh
bmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFY
ID0gMDsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFu
ZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgeworICAgICAgICAgICAgICAgICAg
ICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndp
ZHRoKCkgKyBkZWx0YVgpOworICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOworICAgICAg
ICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVs
dGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOworICAg
ICAgICAgICAgfQorICAgICAgICB9IGVsc2UgaWYgKGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7
CisgICAgICAgICAgICAvLyBTdHJldGNoaW5nIG9ubHkgaW4gdGhlIGhvcml6b250YWwuCisgICAg
ICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0
YVkpKSkgeworICAgICAgICAgICAgICAgIGlmIChkZWx0YVggJiYgKGZhYnNmKGRlbHRhWSAvIGRl
bHRhWCkgPCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbykpCisgICAgICAgICAg
ICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVs
dGFZKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKKyAg
ICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJm
bG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBkZWx0YVkpOworICAgICAgICAgICAgICAgICAgICBk
ZWx0YVkgPSAwOworICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBt
X292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWln
aHQoKSArIGRlbHRhWSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICAvLyBOb3Qgc3RyZXRjaGluZyBhdCBhbGwgeWV0LgorICAgICAgICAgICAgaWYgKG1fY2xp
ZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCBkZWx0YVkpKSkgeworICAg
ICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0YVkpID49IGZhYnNmKGRlbHRhWCkpIHsKKyAgICAg
ICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVp
cmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJm
bG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBk
ZWx0YVgpOworICAgICAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAgICAg
ICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xs
RGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBzaG91bGRTdHJldGNoID0gdHJ1ZTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChkZWx0YVggfHwgZGVs
dGFZKSB7CisgICAgICAgIGlmICghKHNob3VsZFN0cmV0Y2ggfHwgaXNWZXJ0aWNhbGx5U3RyZXRj
aGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSkgeworICAgICAgICAgICAgaWYgKGRlbHRh
WSkgeworICAgICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsK
KyAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKDAs
IGRlbHRhWSkpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGRlbHRhWCkgeworICAg
ICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKKyAgICAgICAg
ICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKGRlbHRhWCwgMCkp
OworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKCFtX2Ns
aWVudC0+YWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsKKyAgICAgICAg
ICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFY
ID0gMDsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFYICYmICFpc0hvcml6b250YWxseVN0
cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgs
IDApKSkgeworICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIo
KTsKKworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRD
b250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YVgsIDApKTsKKyAgICAgICAgICAg
ICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAoIW1fY2xp
ZW50LT5hbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsKKyAgICAgICAgICAg
ICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0g
MDsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFZICYmICFpc1ZlcnRpY2FsbHlTdHJldGNo
ZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkp
IHsKKyAgICAgICAgICAgICAgICBkZWx0YVkgKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7CisK
KyAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVu
dEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoMCwgZGVsdGFZKSk7CisgICAgICAgICAgICAgICAg
ZGVsdGFZID0gMDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgSW50U2l6ZSBzdHJldGNo
QW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKworICAgICAgICAgICAgaWYgKG1f
bW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7CisgICAgICAgICAgICAgICAgaWYgKChtX2NsaWVu
dC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGV2ZW50Q29hbGVzY2VkRGVsdGFYLCBldmVu
dENvYWxlc2NlZERlbHRhWSkpIHx8IChmYWJzZihldmVudENvYWxlc2NlZERlbHRhWCkgKyBmYWJz
ZihldmVudENvYWxlc2NlZERlbHRhWSkgPD0gMCkpICYmIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGlt
ZXN0YW1wKSB7CisgICAgICAgICAgICAgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0g
dHJ1ZTsKKyAgICAgICAgICAgICAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBm
YWxzZTsKKyAgICAgICAgICAgICAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNl
LnNldFdpZHRoKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkgKyBkZWx0YVgpOworICAgICAg
ICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KG1fc3RyZXRjaFNjcm9sbEZvcmNl
LmhlaWdodCgpICsgZGVsdGFZKTsKKworICAgICAgICAgICAgRmxvYXRTaXplIGRhbXBlZERlbHRh
KGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS53
aWR0aCgpKSksIGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3Jv
bGxGb3JjZS5oZWlnaHQoKSkpKTsKKworICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNj
cm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoZGFtcGVkRGVsdGEgLSBzdHJldGNo
QW1vdW50KTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Q
cm9ncmVzcyAmJiBtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQp
IHsKKyAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAg
bV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKKyAgICAgICAgbV9sYXN0TW9tZW50dW1T
Y3JvbGxUaW1lc3RhbXAgPSAwOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorCitzdGF0
aWMgaW5saW5lIGZsb2F0IHJvdW5kVG93YXJkWmVybyhmbG9hdCBudW0pCit7CisgICAgcmV0dXJu
IG51bSA+IDAgPyBjZWlsZihudW0gLSAwLjVmKSA6IGZsb29yZihudW0gKyAwLjVmKTsKK30KKwor
c3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGZsb2F0IG51
bSkKK3sKKyAgICBmbG9hdCByb3VuZGVkTnVtID0gcm91bmRmKG51bSk7CisgICAgaWYgKGZhYnMo
bnVtIC0gcm91bmRlZE51bSkgPCAwLjEyNSkKKyAgICAgICAgbnVtID0gcm91bmRlZE51bTsKKwor
ICAgIHJldHVybiByb3VuZFRvd2FyZFplcm8obnVtKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9s
bGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKQoreworICAgIGlmICghbV9tb21lbnR1bVNj
cm9sbEluUHJvZ3Jlc3MgfHwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMpIHsKKyAgICAgICAgQ0ZU
aW1lSW50ZXJ2YWwgdGltZURlbHRhID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5j
ZURhdGVdIC0gbV9zdGFydFRpbWU7CisKKyAgICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZs
b2F0U2l6ZSgpKSB7CisgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJl
dGNoQW1vdW50KCk7CisgICAgICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXpl
KCkpIHsKKyAgICAgICAgICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworCisgICAg
ICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2UgPSBGbG9hdFNpemUoKTsKKyAgICAgICAg
ICAgICAgICBtX3N0YXJ0VGltZSA9IDA7CisgICAgICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2gg
PSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50
KCk7CisgICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKyAgICAg
ICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIG1fb3JpZ09y
aWdpbiA9IG1fY2xpZW50LT5hYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgLSBtX3N0YXJ0U3RyZXRj
aDsKKyAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gbV9tb21lbnR1bVZlbG9jaXR5OworCisg
ICAgICAgICAgICAvLyBKdXN0IGxpa2Ugbm9ybWFsIHNjcm9sbGluZywgcHJlZmVyIHZlcnRpY2Fs
IHJ1YmJlcmJhbmRpbmcKKyAgICAgICAgICAgIGlmIChmYWJzZihtX29yaWdWZWxvY2l0eS5oZWln
aHQoKSkgPj0gZmFic2YobV9vcmlnVmVsb2NpdHkud2lkdGgoKSkpCisgICAgICAgICAgICAgICAg
bV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7CisKKyAgICAgICAgICAgIC8vIERvbid0IHJ1YmJl
ci1iYW5kIGhvcml6b250YWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgaG9yaXpv
bnRhbGx5CisgICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxIb3Jpem9udGFsbHko
KSkKKyAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgwKTsKKworICAgICAg
ICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQgdmVydGljYWxseSBpZiBpdCdzIG5vdCBwb3NzaWJs
ZSB0byBzY3JvbGwgdmVydGljYWxseQorICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Ny
b2xsVmVydGljYWxseSgpKQorICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldEhlaWdo
dCgwKTsKKyAgICAgICAgfQorCisgICAgICAgIEZsb2F0UG9pbnQgZGVsdGEocm91bmRUb0Rldmlj
ZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2gu
d2lkdGgoKSwgLW1fb3JpZ1ZlbG9jaXR5LndpZHRoKCksIChmbG9hdCl0aW1lRGVsdGEpKSwKKyAg
ICAgICAgICAgIHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGlt
ZURlbHRhKG1fc3RhcnRTdHJldGNoLmhlaWdodCgpLCAtbV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCks
IChmbG9hdCl0aW1lRGVsdGEpKSk7CisKKyAgICAgICAgaWYgKGZhYnMoZGVsdGEueCgpKSA+PSAx
IHx8IGZhYnMoZGVsdGEueSgpKSA+PSAxKSB7CisgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRp
YXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGEu
eCgpLCBkZWx0YS55KCkpIC0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKSk7CisKKyAgICAgICAg
ICAgIEZsb2F0U2l6ZSBuZXdTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKwor
ICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9y
RWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2gud2lkdGgoKSkpOworICAgICAgICAgICAgbV9zdHJldGNo
U2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJl
dGNoLmhlaWdodCgpKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBtX2NsaWVudC0+
YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCk7CisKKyAgICAgICAgICAg
IHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZSA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgbV9zdGFydFRpbWUgPSAwOworICAgICAg
ICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgIG1fb3JpZ09y
aWdpbiA9IEZsb2F0UG9pbnQoKTsKKyAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRT
aXplKCk7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICBtX3N0YXJ0VGltZSA9IFtO
U0RhdGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKKyAgICAgICAgbV9zdGFydFN0
cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICB9Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6
aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0Cit7CisgICAgaWYgKCFtX2luU2Nyb2xsR2Vz
dHVyZSAmJiAhbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgIW1fc25hcFJ1YmJlcmJhbmRU
aW1lcklzQWN0aXZlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gIW1fY2xp
ZW50LT5zdHJldGNoQW1vdW50KCkuaXNaZXJvKCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxl
cjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQoreworICAgIG1fY2xpZW50LT5zdG9wU25hcFJ1
YmJlcmJhbmRUaW1lcigpOworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFs
c2U7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJhbmQoKQoreworICAg
IENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IHN5c3RlbVVwdGltZSgpIC0gbV9sYXN0TW9tZW50
dW1TY3JvbGxUaW1lc3RhbXA7CisgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1w
ICYmIHRpbWVEZWx0YSA+PSBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0KQorICAgICAgICBt
X21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKworICAgIG1faW5TY3JvbGxHZXN0dXJl
ID0gZmFsc2U7CisKKyAgICBpZiAobV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCisgICAg
ICAgIHJldHVybjsKKworICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5j
ZVJlZmVyZW5jZURhdGVdOworICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7CisgICAg
bV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOworICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRT
aXplKCk7CisKKyAgICBtX2NsaWVudC0+c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAg
bV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSB0cnVlOworfQorCitib29sIFNjcm9sbENv
bnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxh
dGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQoreworICAgIGlmICh3aGVlbEV2ZW50LmRlbHRh
WCgpID4gMCkKKyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJl
Y3Rpb24oU2Nyb2xsTGVmdCk7CisgICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPCAwKQorICAg
ICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxS
aWdodCk7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQor
CisjZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQpJbmRleDogU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0zMSw2ICszMSwxMSBAQAogI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4K
ICNpbmNsdWRlIDxzeXMvdGltZS5oPgogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyNp
bmNsdWRlICJBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgiCisjaW5jbHVkZSAiU2Nyb2xsYWJsZUFy
ZWEuaCIKKyNlbmRpZgorCiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQogCiBzdGF0aWMgTlNU
aW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKQEAgLTkxLDE3ICs5NiwzNCBAQCBzdGF0aWMgZmxv
YXQgc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCkKIAogU2Nyb2xsQ29udHJvbGxlcjo6U2Nyb2xsQ29u
dHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBjbGllbnQpCiAgICAgOiBtX2NsaWVudChj
bGllbnQpCisgICAgLCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQorICAgICwgbV9z
dGFydFRpbWUoMCkKKyAgICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcihSdW5Mb29wOjpjdXJyZW50
KCksIHRoaXMsICZTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpCisj
aWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgICwgbV9ob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyKFJ1bkxvb3A6OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENv
bnRyb2xsZXI6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCkKKyAgICAsIG1fdmVydGlj
YWxTY3JvbGxTbmFwVGltZXIoUnVuTG9vcDo6Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJv
bGxlcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCkKKyNlbmRpZgogICAgICwgbV9pblNj
cm9sbEdlc3R1cmUoZmFsc2UpCiAgICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxz
ZSkKICAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxzKGZhbHNlKQotICAgICwgbV9sYXN0TW9t
ZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAgICAsIG1fc3RhcnRUaW1lKDApCiAgICAgLCBtX3Nu
YXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkKIHsKIH0KIAogYm9vbCBTY3JvbGxDb250
cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxF
dmVudCkKIHsKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisg
ICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpIHsKKyAgICAgICAgbV92ZXJ0aWNh
bFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKKyAgICAg
ICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNob3VsZE92ZXJyaWRlV2hlZWxF
dmVudCh3aGVlbEV2ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAg
aWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikgeworICAgICAgICBtX2hvcml6b250
YWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CisgICAg
ICAgIGlmIChtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNob3VsZE92ZXJyaWRlV2hl
ZWxFdmVudCh3aGVlbEV2ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9Cisj
ZW5kaWYKICAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBo
YXNlQmVnYW4pIHsKICAgICAgICAgLy8gRmlyc3QsIGNoZWNrIGlmIHdlIHNob3VsZCBydWJiZXIt
YmFuZCBhdCBhbGwuCiAgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxv
YXRTaXplKC13aGVlbEV2ZW50LmRlbHRhWCgpLCAwKSkKQEAgLTM2NSw5ICszODcsMTQgQEAgYm9v
bCBTY3JvbGxDb250cm9sbGVyOjppc1J1YmJlckJhbmRJblBybwogICAgIHJldHVybiAhbV9jbGll
bnQtPnN0cmV0Y2hBbW91bnQoKS5pc1plcm8oKTsKIH0KIAordm9pZCBTY3JvbGxDb250cm9sbGVy
OjpzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKQoreworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1l
ci5zdGFydFJlcGVhdGluZygxLjAgLyA2MC4wKTsKK30KKwogdm9pZCBTY3JvbGxDb250cm9sbGVy
OjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCiB7Ci0gICAgbV9jbGllbnQtPnN0b3BTbmFwUnVi
YmVyYmFuZFRpbWVyKCk7CisgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVyLnN0b3AoKTsKICAgICBt
X3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IGZhbHNlOwogfQogCkBAIC0zODcsNyArNDE0
LDcgQEAgdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCiAgICAgbV9vcmln
T3JpZ2luID0gRmxvYXRQb2ludCgpOwogICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7
CiAKLSAgICBtX2NsaWVudC0+c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgc3RhcnRT
bmFwUnViYmVyYmFuZFRpbWVyKCk7CiAgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUg
PSB0cnVlOwogfQogCkBAIC00MDEsNiArNDI4LDczIEBAIGJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6
c2hvdWxkUnViYmVyQmFuZEkKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorI2lmIEVOQUJMRShDU1Nf
U0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6cHJv
Y2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hl
ZWxFdmVudCkKK3sKKyAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikgeworICAg
ICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVs
RXZlbnQpOworICAgICAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hvdWxk
T3ZlcnJpZGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgIH0KKyAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7CisgICAg
ICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVl
bEV2ZW50KTsKKyAgICAgICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hv
dWxkT3ZlcnJpZGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorICAgIAordm9pZCBTY3JvbGxDb250
cm9sbGVyOjp1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoY29uc3QgU2Nyb2xsYWJsZUFy
ZWEmIHNjcm9sbGFibGVBcmVhKQoreworICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBz
bmFwIGFuaW1hdG9ycyBhcmUgcmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMg
YWxvbmUgY2FuIGJlIHVwZGF0ZWQuCisgICAgaWYgKHNjcm9sbGFibGVBcmVhLmhvcml6b250YWxT
bmFwT2Zmc2V0cygpKQorICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBz
dGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMsIHNjcm9sbGFibGVB
cmVhLmhvcml6b250YWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwp
OworICAgIGVsc2UgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAgICAg
bV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gbnVsbHB0cjsKKworICAgIGlmIChzY3Jv
bGxhYmxlQXJlYS52ZXJ0aWNhbFNuYXBPZmZzZXRzKCkpCisgICAgICAgIG1fdmVydGljYWxTY3Jv
bGxTbmFwQW5pbWF0b3IgPSBzdGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+
KHRoaXMsIHNjcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSwgU2Nyb2xsRXZlbnRB
eGlzOjpWZXJ0aWNhbCk7CisgICAgZWxzZSBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRv
cikKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51bGxwdHI7Cit9CisK
K3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRB
eGlzIGF4aXMpCit7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4mIHNjcm9s
bFNuYXBUaW1lciA9IGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9ob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKKyAgICBp
ZiAoIXNjcm9sbFNuYXBUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBzY3JvbGxTbmFwVGltZXIu
c3RhcnRSZXBlYXRpbmcoMS4wIC8gNjAuMCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6
c3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICBSdW5Mb29w
OjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiYgc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3Jv
bGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgOiBt
X3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyOworICAgIHNjcm9sbFNuYXBUaW1lci5zdG9wKCk7Cit9
CisgICAgCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJG
aXJlZCgpCit7CisgICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAg
ICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3JvbGxTbmFwQW5pbWF0aW9uVXBk
YXRlKCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6dmVydGljYWxTY3JvbGxTbmFwVGlt
ZXJGaXJlZCgpCit7CisgICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAg
ICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRh
dGUoKTsKK30KKworTGF5b3V0VW5pdCBTY3JvbGxDb250cm9sbGVyOjpzY3JvbGxPZmZzZXRPbkF4
aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCit7CisgICAgcmV0dXJuIG1fY2xpZW50LT5zY3JvbGxP
ZmZzZXRPbkF4aXMoYXhpcyk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6aW1tZWRpYXRl
U2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzLCBmbG9hdCBkZWx0YSkKK3sKKyAgICBt
X2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsT25BeGlzKGF4aXMsIGRlbHRhKTsKK30KKyNlbmRpZgor
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJ
TkcpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmlt
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Ny
b2xsU25hcEFuaW1hdG9yLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3
LDggKzU3LDggQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgfkF4aXNTY3JvbGxTbmFwQW5pbWF0
b3JDbGllbnQoKSB7IH0KIAogcHVibGljOgotICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxP
ZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGltbWVk
aWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IHZlbG9jaXR5KSA9IDA7Cisg
ICAgdmlydHVhbCBMYXlvdXRVbml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMp
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50
QXhpcywgZmxvYXQgdmVsb2NpdHkpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxT
bmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BTY3Jv
bGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7CiB9OwpJbmRleDogU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0JKHJl
dmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xs
U25hcEFuaW1hdG9yLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBB
eGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpoYW5kbGVXaGVlbAogICAgICAgICAvLyBCZWdpbiB0cmFj
a2luZyB3aGVlbCBkZWx0YXMgZm9yIGdsaWRlIHByZWRpY3Rpb24uCiAgICAgICAgIGVuZFNjcm9s
bFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlOjpVc2VySW50ZXJhY3Rpb24pOwogICAgICAg
ICBwdXNoSW5pdGlhbFdoZWVsRGVsdGEod2hlZWxEZWx0YSk7Ci0gICAgICAgIG1fYmVnaW5UcmFj
a2luZ1doZWVsRGVsdGFPZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhp
cyk7CisgICAgICAgIG1fYmVnaW5UcmFja2luZ1doZWVsRGVsdGFPZmZzZXQgPSBtX2NsaWVudC0+
c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBX
aGVlbEV2ZW50U3RhdHVzOjpJbmVydGlhbFNjcm9sbGluZzoKQEAgLTE1Myw3ICsxNTMsNyBAQCB2
b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OnNjcm9sbFNuYXBBCiAgICAgQVNTRVJUKG1fY3Vy
cmVudFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xpZGluZyB8fCBtX2N1cnJlbnRTdGF0ZSA9
PSBTY3JvbGxTbmFwU3RhdGU6OlNuYXBwaW5nKTsKICAgICBmbG9hdCBkZWx0YSA9IG1fY3VycmVu
dFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcgPyBjb21wdXRlU25hcERlbHRhKCkg
OiBjb21wdXRlR2xpZGVEZWx0YSgpOwogICAgIGlmIChkZWx0YSkKLSAgICAgICAgbV9jbGllbnQt
PmltbWVkaWF0ZVNjcm9sbEluQXhpcyhtX2F4aXMsIGRlbHRhKTsKKyAgICAgICAgbV9jbGllbnQt
PmltbWVkaWF0ZVNjcm9sbE9uQXhpcyhtX2F4aXMsIGRlbHRhKTsKICAgICBlbHNlCiAgICAgICAg
IGVuZFNjcm9sbFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlOjpEZXN0aW5hdGlvblJlYWNo
ZWQpOwogfQpAQCAtMTYxLDcgKzE2MSw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6
c2Nyb2xsU25hcEEKIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6YmVnaW5TY3JvbGxTbmFw
QW5pbWF0aW9uKFNjcm9sbFNuYXBTdGF0ZSBuZXdTdGF0ZSkKIHsKICAgICBBU1NFUlQobmV3U3Rh
dGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5nIHx8IG5ld1N0YXRlID09IFNjcm9sbFNuYXBT
dGF0ZTo6U25hcHBpbmcpOwotICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9s
bE9mZnNldEluQXhpcyhtX2F4aXMpOworICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQt
PnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4aXMpOwogICAgIGZsb2F0IGluaXRpYWxXaGVlbERlbHRh
ID0gbmV3U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5nID8gYXZlcmFnZUluaXRpYWxX
aGVlbERlbHRhKCkgOiAwOwogICAgIExheW91dFVuaXQgcHJvamVjdGVkU2Nyb2xsRGVzdGluYXRp
b24gPSBuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgPyBtX2JlZ2luVHJhY2tp
bmdXaGVlbERlbHRhT2Zmc2V0ICsgTGF5b3V0VW5pdChwcm9qZWN0ZWRJbmVydGlhbFNjcm9sbERp
c3RhbmNlKGluaXRpYWxXaGVlbERlbHRhKSkgOiBvZmZzZXQ7CiAgICAgcHJvamVjdGVkU2Nyb2xs
RGVzdGluYXRpb24gPSBzdGQ6Om1pbihzdGQ6Om1heChwcm9qZWN0ZWRTY3JvbGxEZXN0aW5hdGlv
biwgbV9zbmFwT2Zmc2V0cy0+Zmlyc3QoKSksIG1fc25hcE9mZnNldHMtPmxhc3QoKSk7CkBAIC0y
MDMsNyArMjAzLDcgQEAgdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjplbmRTY3JvbGxTbgog
Ly8gcmVsYXRpb25zaGlwIG9mIHRoZSBkaXN0YW5jZSB0cmF2ZWxlZCwgY2xhbXBlZCBieSBhcmJp
dHJhcnkgbWluIGFuZCBtYXggdmFsdWVzLgogZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6
Y29tcHV0ZVNuYXBEZWx0YSgpIGNvbnN0CiB7Ci0gICAgTGF5b3V0VW5pdCBvZmZzZXQgPSBtX2Ns
aWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5b3V0VW5pdCBvZmZzZXQg
PSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgYm9vbCBjYW5Db21w
dXRlU25hcCA9ICAobV9pbml0aWFsT2Zmc2V0IDw9IG9mZnNldCAmJiBvZmZzZXQgPCBtX3Rhcmdl
dE9mZnNldCkgfHwgKG1fdGFyZ2V0T2Zmc2V0IDwgb2Zmc2V0ICYmIG9mZnNldCA8PSBtX2luaXRp
YWxPZmZzZXQpOwogICAgIGlmIChtX2N1cnJlbnRTdGF0ZSAhPSBTY3JvbGxTbmFwU3RhdGU6OlNu
YXBwaW5nIHx8ICFjYW5Db21wdXRlU25hcCkKICAgICAgICAgcmV0dXJuIDA7CkBAIC0yMzcsNyAr
MjM3LDcgQEAgZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZVNuYQogLy8gYW5k
IFZGLiBUaHVzLCB3ZSBjYW4gZXhwcmVzcyBvdXIgZ2xpZGluZyBlcXVhdGlvbiBhbGwgaW4gdGVy
bXMgb2YgVjAsIFZGIGFuZCB0LgogZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0
ZUdsaWRlRGVsdGEoKSBjb25zdAogewotICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQt
PnNjcm9sbE9mZnNldEluQXhpcyhtX2F4aXMpOworICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9j
bGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4aXMpOwogICAgIGJvb2wgY2FuQ29tcHV0ZUds
aWRlID0gKG1faW5pdGlhbE9mZnNldCA8PSBvZmZzZXQgJiYgb2Zmc2V0IDwgbV90YXJnZXRPZmZz
ZXQpIHx8IChtX3RhcmdldE9mZnNldCA8IG9mZnNldCAmJiBvZmZzZXQgPD0gbV9pbml0aWFsT2Zm
c2V0KTsKICAgICBpZiAobV9jdXJyZW50U3RhdGUgIT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5n
IHx8ICFjYW5Db21wdXRlR2xpZGUpCiAgICAgICAgIHJldHVybiAwOwpJbmRleDogU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLmgJKHJldmlzaW9uIDE4
MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5o
CSh3b3JraW5nIGNvcHkpCkBAIC0zMiw3ICszMiw2IEBACiAjaW5jbHVkZSAiRmxvYXRQb2ludC5o
IgogI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgogI2luY2x1ZGUgIlNjcm9sbEFuaW1hdG9yLmgiCi0j
aW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVk
ZSA8d3RmL1JldGFpblB0ci5oPgogCkBAIC00MiwxNSArNDEsMTEgQEAgT0JKQ19DTEFTUyBXZWJT
Y3JvbGxiYXJQYWludGVyRGVsZWdhdGU7CiAKIHR5cGVkZWYgaWQgU2Nyb2xsYmFyUGFpbnRlckNv
bnRyb2xsZXI7CiAKLSNpZiAhRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotY2xhc3MgU2Nyb2xsQ29u
dHJvbGxlckNsaWVudCB7IH07Ci0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFz
cyBTY3JvbGxiYXI7CiAKLWNsYXNzIFNjcm9sbEFuaW1hdG9yTWFjIDogcHVibGljIFNjcm9sbEFu
aW1hdG9yLCBwcml2YXRlIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgeworY2xhc3MgU2Nyb2xsQW5p
bWF0b3JNYWMgOiBwdWJsaWMgU2Nyb2xsQW5pbWF0b3IgewogCiBwdWJsaWM6CiAgICAgU2Nyb2xs
QW5pbWF0b3JNYWMoU2Nyb2xsYWJsZUFyZWEmKTsKQEAgLTE1MCwxNyArMTQ1LDExIEBAIHByaXZh
dGU6CiAgICAgdmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9u
KCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENv
bnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgb3ZlcnJpZGU7CiAgICAgdmly
dHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwot
ICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKLSAg
ICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAgICB2
aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3Zl
cnJpZGU7CiAKICAgICBib29sIHBpbm5lZEluRGlyZWN0aW9uKGZsb2F0IGRlbHRhWCwgZmxvYXQg
ZGVsdGFZKTsKLSAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwogCiAgICAgYm9v
bCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2VzdHVyZShjb25zdCBQbGF0Zm9ybVdoZWVs
RXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwotCi0gICAgU2Nyb2xsQ29udHJvbGxlciBtX3Njcm9s
bENvbnRyb2xsZXI7Ci0gICAgVGltZXIgbV9zbmFwUnViYmVyQmFuZFRpbWVyOwogI2VuZGlmCiAK
ICAgICBib29sIG1faGF2ZVNjcm9sbGVkU2luY2VQYWdlTG9hZDsKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0JKHJldmlzaW9uIDE4
MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5t
bQkod29ya2luZyBjb3B5KQpAQCAtNjQzLDEwICs2NDMsNiBAQCBTY3JvbGxBbmltYXRvck1hYzo6
U2Nyb2xsQW5pbWF0b3JNYWMoU2NyCiAgICAgOiBTY3JvbGxBbmltYXRvcihzY3JvbGxhYmxlQXJl
YSkKICAgICAsIG1faW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXIoKnRoaXMsICZTY3JvbGxBbmlt
YXRvck1hYzo6aW5pdGlhbFNjcm9sbGJhclBhaW50VGltZXJGaXJlZCkKICAgICAsIG1fc2VuZENv
bnRlbnRBcmVhU2Nyb2xsZWRUaW1lcigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29u
dGVudEFyZWFTY3JvbGxlZFRpbWVyRmlyZWQpCi0jaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQot
ICAgICwgbV9zY3JvbGxDb250cm9sbGVyKHRoaXMpCi0gICAgLCBtX3NuYXBSdWJiZXJCYW5kVGlt
ZXIoKnRoaXMsICZTY3JvbGxBbmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKQot
I2VuZGlmCiAgICAgLCBtX2hhdmVTY3JvbGxlZFNpbmNlUGFnZUxvYWQoZmFsc2UpCiAgICAgLCBt
X25lZWRzU2Nyb2xsZXJTdHlsZVVwZGF0ZShmYWxzZSkKIHsKQEAgLTEyNzAsMjEgKzEyNjYsNiBA
QCB2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjppbW1lZGlhdGVTY3JvbGxCCiAgICAgbV9jdXJyZW50
UG9zWSA9IG5ld1Bvcy55KCk7CiAgICAgbm90aWZ5UG9zaXRpb25DaGFuZ2VkKGFkanVzdGVkRGVs
dGEpOwogfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKQotewotICAgIG1fc25hcFJ1YmJlckJhbmRUaW1lci5zdGFydFJlcGVhdGluZygxLjAgLyA2
MC4wKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6c3RvcFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKQotewotICAgIG1fc25hcFJ1YmJlckJhbmRUaW1lci5zdG9wKCk7Ci19Ci0KLXZvaWQgU2Ny
b2xsQW5pbWF0b3JNYWM6OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCi17Ci0gICAgbV9zY3Jv
bGxDb250cm9sbGVyLnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwotfQogI2VuZGlmCiAKIHZv
aWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnVwZGF0ZVNjcm9sbGVyU3R5bGUoKQpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5oCShyZXZpc2lvbiAx
ODA4ODkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDEwNyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBT
Y3JvbGxDb250cm9sbGVyX2gKLSNkZWZpbmUgU2Nyb2xsQ29udHJvbGxlcl9oCi0KLSNpZiBFTkFC
TEUoUlVCQkVSX0JBTkRJTkcpCi0KLSNpbmNsdWRlICJGbG9hdFBvaW50LmgiCi0jaW5jbHVkZSAi
RmxvYXRTaXplLmgiCi0jaW5jbHVkZSAiU2Nyb2xsVHlwZXMuaCIKLSNpbmNsdWRlIDx3dGYvTm9u
Y29weWFibGUuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBQbGF0Zm9ybVdoZWVs
RXZlbnQ7Ci0KLWNsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewotcHJvdGVjdGVkOgotICAg
IHZpcnR1YWwgflNjcm9sbENvbnRyb2xsZXJDbGllbnQoKSB7IH0KLQotcHVibGljOgotICAgIHZp
cnR1YWwgYm9vbCBhbGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9ybVdoZWVs
RXZlbnQmKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIGFsbG93c1ZlcnRpY2FsU3RyZXRjaGluZyhj
b25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSA9IDA7Ci0gICAgdmlydHVhbCBJbnRTaXplIHN0cmV0
Y2hBbW91bnQoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIHBpbm5lZEluRGlyZWN0aW9uKGNvbnN0
IEZsb2F0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgY2FuU2Nyb2xsSG9yaXpvbnRhbGx5
KCkgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxWZXJ0aWNhbGx5KCkgPSAwOwotICAg
IHZpcnR1YWwgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsRGlyZWN0aW9u
KSA9IDA7Ci0KLSAgICAvLyBSZXR1cm4gdGhlIGFic29sdXRlIHNjcm9sbCBwb3NpdGlvbiwgbm90
IHJlbGF0aXZlIHRvIHRoZSBzY3JvbGwgb3JpZ2luLgotICAgIHZpcnR1YWwgV2ViQ29yZTo6SW50
UG9pbnQgYWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpID0gMDsKLQotICAgIHZpcnR1YWwgdm9pZCBp
bW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lk
IGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxv
YXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIo
KSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwot
Ci0gICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlzIHdpdGhpbiB0aGUgb3Zl
cmhhbmcgYXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNhdXNlCi0gICAgLy8gdGhlIHBhZ2UgdG8g
c2Nyb2xsIHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBvaW50LgotICAgIHZpcnR1YWwgdm9pZCBh
ZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSA9IDA7Ci19OwotCi1jbGFz
cyBTY3JvbGxDb250cm9sbGVyIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShTY3JvbGxDb250
cm9sbGVyKTsKLQotcHVibGljOgotICAgIGV4cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xs
Q29udHJvbGxlckNsaWVudCopOwotCi0gICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBs
YXRmb3JtV2hlZWxFdmVudCYpOwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7
Ci0KLSAgICBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdDsKLQotcHJpdmF0ZToK
LSAgICB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0gICAgdm9pZCBzbmFwUnViYmVy
QmFuZCgpOwotCi0gICAgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9u
KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOwotCi0gICAgU2Nyb2xsQ29udHJvbGxlckNsaWVu
dCogbV9jbGllbnQ7Ci0KLSAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOwotICAgIGJvb2wgbV9t
b21lbnR1bVNjcm9sbEluUHJvZ3Jlc3M7Ci0gICAgYm9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xs
czsKLSAgICAKLSAgICBDRlRpbWVJbnRlcnZhbCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cDsKLSAgICBGbG9hdFNpemUgbV9vdmVyZmxvd1Njcm9sbERlbHRhOwotICAgIEZsb2F0U2l6ZSBt
X3N0cmV0Y2hTY3JvbGxGb3JjZTsKLSAgICBGbG9hdFNpemUgbV9tb21lbnR1bVZlbG9jaXR5Owot
Ci0gICAgLy8gUnViYmVyIGJhbmQgc3RhdGUuCi0gICAgQ0ZUaW1lSW50ZXJ2YWwgbV9zdGFydFRp
bWU7Ci0gICAgRmxvYXRTaXplIG1fc3RhcnRTdHJldGNoOwotICAgIEZsb2F0UG9pbnQgbV9vcmln
T3JpZ2luOwotICAgIEZsb2F0U2l6ZSBtX29yaWdWZWxvY2l0eTsKLQotICAgIGJvb2wgbV9zbmFw
UnViYmVyYmFuZFRpbWVySXNBY3RpdmU7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0KLSNlbmRpZiAvLyBTY3JvbGxDb250
cm9sbGVyX2gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9s
bGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxD
b250cm9sbGVyLm1tCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbQkod29ya2luZyBjb3B5KQpAQCAtMSw0MDYgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1l
dDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUg
IlNjcm9sbENvbnRyb2xsZXIuaCIKLQotI2luY2x1ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgot
I2luY2x1ZGUgIldlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaCIKLSNpbmNsdWRlIDxzeXMvc3lzY3Rs
Lmg+Ci0jaW5jbHVkZSA8c3lzL3RpbWUuaD4KLQotI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykK
LQotc3RhdGljIE5TVGltZUludGVydmFsIHN5c3RlbVVwdGltZSgpCi17Ci0gICAgaWYgKFtbTlNQ
cm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzeXN0
ZW1VcHRpbWUpXSkKLSAgICAgICAgcmV0dXJuIFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10g
c3lzdGVtVXB0aW1lXTsKLQotICAgIC8vIEdldCBob3cgbG9uZyBzeXN0ZW0gaGFzIGJlZW4gdXAu
IEZvdW5kIGJ5IGxvb2tpbmcgZ2V0dGluZyAiYm9vdHRpbWUiIGZyb20gdGhlIGtlcm5lbC4KLSAg
ICBzdGF0aWMgc3RydWN0IHRpbWV2YWwgYm9vdHRpbWUgPSB7MCwgMH07Ci0gICAgaWYgKCFib290
dGltZS50dl9zZWMpIHsKLSAgICAgICAgaW50IG1pYlsyXSA9IHtDVExfS0VSTiwgS0VSTl9CT09U
VElNRX07Ci0gICAgICAgIHNpemVfdCBzaXplID0gc2l6ZW9mKGJvb3R0aW1lKTsKLSAgICAgICAg
aWYgKC0xID09IHN5c2N0bChtaWIsIDIsICZib290dGltZSwgJnNpemUsIDAsIDApKQotICAgICAg
ICAgICAgYm9vdHRpbWUudHZfc2VjID0gMDsKLSAgICB9Ci0gICAgc3RydWN0IHRpbWV2YWwgbm93
OwotICAgIGlmIChib290dGltZS50dl9zZWMgJiYgLTEgIT0gZ2V0dGltZW9mZGF5KCZub3csIDAp
KSB7Ci0gICAgICAgIHN0cnVjdCB0aW1ldmFsIHVwdGltZTsKLSAgICAgICAgdGltZXJzdWIoJm5v
dywgJmJvb3R0aW1lLCAmdXB0aW1lKTsKLSAgICAgICAgTlNUaW1lSW50ZXJ2YWwgcmVzdWx0ID0g
dXB0aW1lLnR2X3NlYyArICh1cHRpbWUudHZfdXNlYyAvIDFFKzYpOwotICAgICAgICByZXR1cm4g
cmVzdWx0OwotICAgIH0KLSAgICByZXR1cm4gMDsKLX0KLQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLXN0YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0ID0gMC4x
MGY7Ci1zdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0
aW8gPSAxOwotc3RhdGljIGNvbnN0IGZsb2F0IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0
YUJlZm9yZVN0cmV0Y2ggPSAxMDsKLQotc3RhdGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclRpbWVE
ZWx0YShmbG9hdCBpbml0aWFsUG9zaXRpb24sIGZsb2F0IGluaXRpYWxWZWxvY2l0eSwgZmxvYXQg
ZWxhcHNlZFRpbWUpCi17Ci0gICAgcmV0dXJuIHdrTlNFbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEo
aW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsVmVsb2NpdHksIGVsYXBzZWRUaW1lKTsKLX0KLQotc3Rh
dGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShmbG9hdCBkZWx0YSkKLXsKLSAg
ICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShkZWx0YSk7Ci19Ci0KLXN0
YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoZmxvYXQgZGVsdGEpCi17Ci0g
ICAgcmV0dXJuIHdrTlNSZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoZGVsdGEpOwotfQotCi1z
dGF0aWMgZmxvYXQgc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCkKLXsKLSAgICBzdGF0aWMgZmxvYXQg
bXVsdGlwbGllciA9IC0xOwotICAgIGlmIChtdWx0aXBsaWVyIDwgMCkgewotICAgICAgICBtdWx0
aXBsaWVyID0gW1tOU1VzZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c10gZmxvYXRGb3JL
ZXk6QCJOU1Njcm9sbFdoZWVsTXVsdGlwbGllciJdOwotICAgICAgICBpZiAobXVsdGlwbGllciA8
PSAwKQotICAgICAgICAgICAgbXVsdGlwbGllciA9IDE7Ci0gICAgfQotICAgIHJldHVybiBtdWx0
aXBsaWVyOwotfQotCi1TY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENv
bnRyb2xsZXJDbGllbnQqIGNsaWVudCkKLSAgICA6IG1fY2xpZW50KGNsaWVudCkKLSAgICAsIG1f
aW5TY3JvbGxHZXN0dXJlKGZhbHNlKQotICAgICwgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3Mo
ZmFsc2UpCi0gICAgLCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyhmYWxzZSkKLSAgICAsIG1fbGFz
dE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCi0gICAgLCBtX3N0YXJ0VGltZSgwKQotICAgICwg
bV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUoZmFsc2UpCi17Ci19Ci0KLWJvb2wgU2Nyb2xs
Q29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdo
ZWVsRXZlbnQpCi17Ci0gICAgaWYgKHdoZWVsRXZlbnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVs
RXZlbnRQaGFzZUJlZ2FuKSB7Ci0gICAgICAgIC8vIEZpcnN0LCBjaGVjayBpZiB3ZSBzaG91bGQg
cnViYmVyLWJhbmQgYXQgYWxsLgotICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0
aW9uKEZsb2F0U2l6ZSgtd2hlZWxFdmVudC5kZWx0YVgoKSwgMCkpCi0gICAgICAgICAgICAmJiAh
c2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbih3aGVlbEV2ZW50KSkKLSAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAgICBtX2luU2Nyb2xsR2VzdHVyZSA9IHRydWU7
Ci0gICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gZmFsc2U7Ci0gICAgICAgIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7Ci0gICAgICAgIG1fbGFzdE1vbWVudHVtU2Ny
b2xsVGltZXN0YW1wID0gMDsKLSAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXpl
KCk7Ci0KLSAgICAgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hB
bW91bnQoKTsKLSAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERl
bHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQud2lkdGgoKSkpOwotICAgICAgICBtX3N0
cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0
cmV0Y2hBbW91bnQuaGVpZ2h0KCkpKTsKLSAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0g
RmxvYXRTaXplKCk7Ci0KLSAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLQotICAg
ICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0KLSAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09
IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKLSAgICAgICAgc25hcFJ1YmJlckJhbmQo
KTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotCi0gICAgYm9vbCBpc01vbWVudHVtU2Ny
b2xsRXZlbnQgPSAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCkgIT0gUGxhdGZvcm1XaGVlbEV2
ZW50UGhhc2VOb25lKTsKLSAgICBpZiAobV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgJiYgKGlzTW9t
ZW50dW1TY3JvbGxFdmVudCB8fCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkpIHsKLSAg
ICAgICAgaWYgKHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVu
dFBoYXNlRW5kZWQpIHsKLSAgICAgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFs
c2U7Ci0gICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgfQotCi0gICAgZmxvYXQgZGVsdGFYID0gbV9vdmVyZmxvd1Njcm9sbERlbHRh
LndpZHRoKCk7Ci0gICAgZmxvYXQgZGVsdGFZID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdo
dCgpOwotCi0gICAgLy8gUmVzZXQgb3ZlcmZsb3cgdmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lk
ZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBwb2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJm
bG93LgotICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgSW50
U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLSAgICBib29s
IGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IHN0cmV0Y2hBbW91bnQuaGVpZ2h0KCk7Ci0gICAgYm9v
bCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0cmV0Y2hBbW91bnQud2lkdGgoKTsKLQotICAg
IGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFYOwotICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVs
dGFZOwotCi0gICAgaWYgKGlzVmVydGljYWxseVN0cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0
cmV0Y2hlZCkgewotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LnVu
YWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoKTsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0
YVkgPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZKCk7Ci0gICAgfSBl
bHNlIHsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAtd2hlZWxFdmVudC5kZWx0YVgo
KTsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC5kZWx0YVkoKTsK
LSAgICB9Ci0KLSAgICBkZWx0YVggKz0gZXZlbnRDb2FsZXNjZWREZWx0YVg7Ci0gICAgZGVsdGFZ
ICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFZOwotCi0gICAgLy8gU2xpZ2h0bHkgcHJlZmVyIHNjcm9s
bGluZyB2ZXJ0aWNhbGx5IGJ5IGFwcGx5aW5nIHRoZSA9IGNhc2UgdG8gZGVsdGFZCi0gICAgaWYg
KGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkKLSAgICAgICAgZGVsdGFYID0gMDsKLSAg
ICBlbHNlCi0gICAgICAgIGRlbHRhWSA9IDA7Ci0KLSAgICBib29sIHNob3VsZFN0cmV0Y2ggPSBm
YWxzZTsKLQotICAgIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlIG1vbWVudHVtUGhhc2UgPSB3aGVl
bEV2ZW50Lm1vbWVudHVtUGhhc2UoKTsKLQotICAgIC8vIElmIHdlIGFyZSBzdGFydGluZyBtb21l
bnR1bSBzY3JvbGxpbmcgdGhlbiBkbyBzb21lIHNldHVwLgotICAgIGlmICghbV9tb21lbnR1bVNj
cm9sbEluUHJvZ3Jlc3MgJiYgKG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhh
c2VCZWdhbiB8fCBtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQ2hhbmdl
ZCkpCi0gICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gdHJ1ZTsKLQotICAgIENG
VGltZUludGVydmFsIHRpbWVEZWx0YSA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCkgLSBtX2xhc3RN
b21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKLSAgICBpZiAobV9pblNjcm9sbEdlc3R1cmUgfHwgbV9t
b21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKLSAgICAgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Ny
b2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+IDAgJiYgdGltZURlbHRhIDwgc2Nyb2xsVmVsb2Np
dHlaZXJvaW5nVGltZW91dCkgewotICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldFdp
ZHRoKGV2ZW50Q29hbGVzY2VkRGVsdGFYIC8gKGZsb2F0KXRpbWVEZWx0YSk7Ci0gICAgICAgICAg
ICBtX21vbWVudHVtVmVsb2NpdHkuc2V0SGVpZ2h0KGV2ZW50Q29hbGVzY2VkRGVsdGFZIC8gKGZs
b2F0KXRpbWVEZWx0YSk7Ci0gICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7
Ci0gICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLSAgICAgICAg
fQotCi0gICAgICAgIGlmIChpc1ZlcnRpY2FsbHlTdHJldGNoZWQpIHsKLSAgICAgICAgICAgIGlm
ICghaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYgbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9u
KEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgewotICAgICAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcg
b25seSBpbiB0aGUgdmVydGljYWwuCi0gICAgICAgICAgICAgICAgaWYgKGRlbHRhWSAmJiAoZmFi
c2YoZGVsdGFYIC8gZGVsdGFZKSA8IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlv
KSkKLSAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgICAgICBlbHNl
IGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3Jl
U3RyZXRjaCkgewotICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0
V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAg
ICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAgIH0gZWxzZQotICAgICAgICAg
ICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9s
bERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2Ug
aWYgKGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7Ci0gICAgICAgICAgICAvLyBTdHJldGNoaW5n
IG9ubHkgaW4gdGhlIGhvcml6b250YWwuCi0gICAgICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5l
ZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgewotICAgICAgICAgICAgICAgIGlm
IChkZWx0YVggJiYgKGZhYnNmKGRlbHRhWSAvIGRlbHRhWCkgPCBydWJiZXJiYW5kRGlyZWN0aW9u
TG9ja1N0cmV0Y2hSYXRpbykpCi0gICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7Ci0gICAg
ICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVsdGFZKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVx
dWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKLSAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxv
d1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBk
ZWx0YVkpOwotICAgICAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOwotICAgICAgICAgICAgICAg
IH0gZWxzZQotICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVp
Z2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAvLyBOb3Qgc3RyZXRjaGluZyBhdCBh
bGwgeWV0LgotICAgICAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9h
dFNpemUoZGVsdGFYLCBkZWx0YVkpKSkgewotICAgICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0
YVkpID49IGZhYnNmKGRlbHRhWCkpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRl
bHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0g
ICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9v
dmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgICAgICAg
ICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAg
ICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Nj
cm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgICAgICBzaG91bGRTdHJldGNoID0gdHJ1ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQot
ICAgIH0KLQotICAgIGlmIChkZWx0YVggfHwgZGVsdGFZKSB7Ci0gICAgICAgIGlmICghKHNob3Vs
ZFN0cmV0Y2ggfHwgaXNWZXJ0aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRj
aGVkKSkgewotICAgICAgICAgICAgaWYgKGRlbHRhWSkgewotICAgICAgICAgICAgICAgIGRlbHRh
WSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+
aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKDAsIGRlbHRhWSkpOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgaWYgKGRlbHRhWCkgewotICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3Jv
bGxXaGVlbE11bHRpcGxpZXIoKTsKLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRl
U2Nyb2xsQnkoRmxvYXRTaXplKGRlbHRhWCwgMCkpOwotICAgICAgICAgICAgfQotICAgICAgICB9
IGVsc2UgewotICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+YWxsb3dzSG9yaXpvbnRhbFN0cmV0
Y2hpbmcod2hlZWxFdmVudCkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAg
ICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gMDsKLSAgICAgICAgICAgIH0gZWxzZSBp
ZiAoZGVsdGFYICYmICFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5l
ZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgewotICAgICAgICAgICAgICAgIGRl
bHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLQotICAgICAgICAgICAgICAgIG1fY2xp
ZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0
U2l6ZShkZWx0YVgsIDApKTsKLSAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAg
ICAgfQotCi0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5hbGxvd3NWZXJ0aWNhbFN0cmV0Y2hp
bmcod2hlZWxFdmVudCkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOwotICAgICAgICAg
ICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gMDsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAo
ZGVsdGFZICYmICFpc1ZlcnRpY2FsbHlTdHJldGNoZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRp
cmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVkg
Kj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7Ci0KLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+
aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUo
MCwgZGVsdGFZKSk7Ci0gICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKLSAgICAgICAgICAgIH0K
LQotICAgICAgICAgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hB
bW91bnQoKTsKLQotICAgICAgICAgICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7
Ci0gICAgICAgICAgICAgICAgaWYgKChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRT
aXplKGV2ZW50Q29hbGVzY2VkRGVsdGFYLCBldmVudENvYWxlc2NlZERlbHRhWSkpIHx8IChmYWJz
ZihldmVudENvYWxlc2NlZERlbHRhWCkgKyBmYWJzZihldmVudENvYWxlc2NlZERlbHRhWSkgPD0g
MCkpICYmIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKSB7Ci0gICAgICAgICAgICAgICAg
ICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAg
bV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAg
c25hcFJ1YmJlckJhbmQoKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0KLSAg
ICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldFdpZHRoKG1fc3RyZXRjaFNjcm9sbEZv
cmNlLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uu
c2V0SGVpZ2h0KG1fc3RyZXRjaFNjcm9sbEZvcmNlLmhlaWdodCgpICsgZGVsdGFZKTsKLQotICAg
ICAgICAgICAgRmxvYXRTaXplIGRhbXBlZERlbHRhKGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91
bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS53aWR0aCgpKSksIGNlaWxmKGVsYXN0aWNEZWx0
YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS5oZWlnaHQoKSkpKTsKLQotICAg
ICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29u
c3RyYWludHMoZGFtcGVkRGVsdGEgLSBzdHJldGNoQW1vdW50KTsKLSAgICAgICAgfQotICAgIH0K
LQotICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiBtb21lbnR1bVBoYXNlID09
IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKLSAgICAgICAgbV9tb21lbnR1bVNjcm9s
bEluUHJvZ3Jlc3MgPSBmYWxzZTsKLSAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBm
YWxzZTsKLSAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAwOwotICAgIH0K
LQotICAgIHJldHVybiB0cnVlOwotfQotCi1zdGF0aWMgaW5saW5lIGZsb2F0IHJvdW5kVG93YXJk
WmVybyhmbG9hdCBudW0pCi17Ci0gICAgcmV0dXJuIG51bSA+IDAgPyBjZWlsZihudW0gLSAwLjVm
KSA6IGZsb29yZihudW0gKyAwLjVmKTsKLX0KLQotc3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRv
RGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGZsb2F0IG51bSkKLXsKLSAgICBmbG9hdCByb3VuZGVkTnVt
ID0gcm91bmRmKG51bSk7Ci0gICAgaWYgKGZhYnMobnVtIC0gcm91bmRlZE51bSkgPCAwLjEyNSkK
LSAgICAgICAgbnVtID0gcm91bmRlZE51bTsKLQotICAgIHJldHVybiByb3VuZFRvd2FyZFplcm8o
bnVtKTsKLX0KLQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmly
ZWQoKQotewotICAgIGlmICghbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgfHwgbV9pZ25vcmVN
b21lbnR1bVNjcm9sbHMpIHsKLSAgICAgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gW05T
RGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdIC0gbV9zdGFydFRpbWU7Ci0KLSAg
ICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZsb2F0U2l6ZSgpKSB7Ci0gICAgICAgICAgICBt
X3N0YXJ0U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0gICAgICAgICAgICBp
ZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXplKCkpIHsKLSAgICAgICAgICAgICAgICBzdG9w
U25hcFJ1YmJlcmJhbmRUaW1lcigpOwotCi0gICAgICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2UgPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7Ci0g
ICAgICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAg
ICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7Ci0gICAgICAgICAgICAgICAgbV9vcmln
VmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
ICAgICB9Ci0KLSAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IG1fY2xpZW50LT5hYnNvbHV0ZVNj
cm9sbFBvc2l0aW9uKCkgLSBtX3N0YXJ0U3RyZXRjaDsKLSAgICAgICAgICAgIG1fb3JpZ1ZlbG9j
aXR5ID0gbV9tb21lbnR1bVZlbG9jaXR5OwotCi0gICAgICAgICAgICAvLyBKdXN0IGxpa2Ugbm9y
bWFsIHNjcm9sbGluZywgcHJlZmVyIHZlcnRpY2FsIHJ1YmJlcmJhbmRpbmcKLSAgICAgICAgICAg
IGlmIChmYWJzZihtX29yaWdWZWxvY2l0eS5oZWlnaHQoKSkgPj0gZmFic2YobV9vcmlnVmVsb2Np
dHkud2lkdGgoKSkpCi0gICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7
Ci0KLSAgICAgICAgICAgIC8vIERvbid0IHJ1YmJlci1iYW5kIGhvcml6b250YWxseSBpZiBpdCdz
IG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgaG9yaXpvbnRhbGx5Ci0gICAgICAgICAgICBpZiAoIW1f
Y2xpZW50LT5jYW5TY3JvbGxIb3Jpem9udGFsbHkoKSkKLSAgICAgICAgICAgICAgICBtX29yaWdW
ZWxvY2l0eS5zZXRXaWR0aCgwKTsKLQotICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQg
dmVydGljYWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgdmVydGljYWxseQotICAg
ICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Nyb2xsVmVydGljYWxseSgpKQotICAgICAgICAg
ICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldEhlaWdodCgwKTsKLSAgICAgICAgfQotCi0gICAgICAg
IEZsb2F0UG9pbnQgZGVsdGEocm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVs
dGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2gud2lkdGgoKSwgLW1fb3JpZ1ZlbG9jaXR5Lndp
ZHRoKCksIChmbG9hdCl0aW1lRGVsdGEpKSwKLSAgICAgICAgICAgIHJvdW5kVG9EZXZpY2VQaXhl
bFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKG1fc3RhcnRTdHJldGNoLmhlaWdo
dCgpLCAtbV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCksIChmbG9hdCl0aW1lRGVsdGEpKSk7Ci0KLSAg
ICAgICAgaWYgKGZhYnMoZGVsdGEueCgpKSA+PSAxIHx8IGZhYnMoZGVsdGEueSgpKSA+PSAxKSB7
Ci0gICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVk
Z2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGEueCgpLCBkZWx0YS55KCkpIC0gbV9jbGllbnQt
PnN0cmV0Y2hBbW91bnQoKSk7Ci0KLSAgICAgICAgICAgIEZsb2F0U2l6ZSBuZXdTdHJldGNoID0g
bV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLQotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2gud2lk
dGgoKSkpOwotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91
bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJldGNoLmhlaWdodCgpKSk7Ci0gICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICBtX2NsaWVudC0+YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5k
c0lmTmVjZXNzYXJ5KCk7Ci0KLSAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7
Ci0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOwotICAgICAg
ICAgICAgbV9zdGFydFRpbWUgPSAwOwotICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9h
dFNpemUoKTsKLSAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKLSAgICAg
ICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0gICAgICAgIH0KLSAgICB9IGVs
c2UgewotICAgICAgICBtX3N0YXJ0VGltZSA9IFtOU0RhdGUgdGltZUludGVydmFsU2luY2VSZWZl
cmVuY2VEYXRlXTsKLSAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICB9
Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNv
bnN0Ci17Ci0gICAgaWYgKCFtX2luU2Nyb2xsR2VzdHVyZSAmJiAhbV9tb21lbnR1bVNjcm9sbElu
UHJvZ3Jlc3MgJiYgIW1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKQotICAgICAgICByZXR1
cm4gZmFsc2U7Ci0KLSAgICByZXR1cm4gIW1fY2xpZW50LT5zdHJldGNoQW1vdW50KCkuaXNaZXJv
KCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIo
KQotewotICAgIG1fY2xpZW50LT5zdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwotICAgIG1fc25h
cFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFsc2U7Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJv
bGxlcjo6c25hcFJ1YmJlckJhbmQoKQotewotICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9
IHN5c3RlbVVwdGltZSgpIC0gbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Ci0gICAgaWYg
KG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+PSBzY3JvbGxWZWxv
Y2l0eVplcm9pbmdUaW1lb3V0KQotICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNp
emUoKTsKLQotICAgIG1faW5TY3JvbGxHZXN0dXJlID0gZmFsc2U7Ci0KLSAgICBpZiAobV9zbmFw
UnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCi0gICAgICAgIHJldHVybjsKLQotICAgIG1fc3RhcnRU
aW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOwotICAgIG1fc3Rh
cnRTdHJldGNoID0gRmxvYXRTaXplKCk7Ci0gICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgp
OwotICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0KLSAgICBtX2NsaWVudC0+c3Rh
cnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0gICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3Rp
dmUgPSB0cnVlOwotfQotCi1ib29sIFNjcm9sbENvbnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJ
bkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50
KQotewotICAgIGlmICh3aGVlbEV2ZW50LmRlbHRhWCgpID4gMCkKLSAgICAgICAgcmV0dXJuIG1f
Y2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsTGVmdCk7Ci0gICAgaWYg
KHdoZWVsRXZlbnQuZGVsdGFYKCkgPCAwKQotICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3Vs
ZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxSaWdodCk7Ci0KLSAgICByZXR1cm4gdHJ1ZTsK
LX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9C
QU5ESU5HKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247691</attachid>
            <date>2015-03-02 12:27:54 -0800</date>
            <delta_ts>2015-03-02 12:43:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-142102-20150302122737.patch</filename>
            <type>text/plain</type>
            <size>83590</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE1LTAzLTAyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorICAg
ICAgICAKKyAgICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxp
bmcgY2xhc3NlczoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1
bkxvb3A6OlRpbWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgor
ICAgICAgICAgICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQ
b2ludCBhbmQgUnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENv
bnRyb2xsZXIgZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNo
YXJpbmcgd2l0aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9y
e01hY30gLT4gU2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNl
dEluQXhpcyAtPiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0
ZVNjcm9sbEluQXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdw
bGF0Zm9ybS9jb2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1h
a2Ugc3VyZSB0aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9s
bAorICAgICAgICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFu
ZGxlZCIgY2FzZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0
aW1lciBhbmQgc29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxD
b250cm9sbGVyIGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRv
IGNsZWFuIHVwIHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyk6IEFkZCB0ZW1w
b3Jhcnkgc3R1YiBuZWVkZWQKKyAgICAgICAgdW50aWwgQnVnIDE0MTk3MyBpcyBjb21wbGV0ZWQu
KS4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6U2Nyb2xsQW5pbWF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnBy
b2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEp1c3QgY2FsbCB0aGUgU2Nyb2xsQ29udHJv
bGxlciBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyk6IFJlbmFtZWQgZnJvbSBzY3JvbGxPZmZz
ZXRJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0
SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMpOiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmg6IENvcGllZCBmcm9tIHBsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmguCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5tbTogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIu
bW0uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVy
KTogVXBkYXRlIHRvIGluaXRpYWxpemUgbmV3IHRpbWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOiBVcGRhdGUgdG8gaGFuZGxlIFNjcm9s
bCBTbmFwIFBvaW50IGV2ZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBNYW5hZ2UgYW5pbWF0aW9u
IHRpbWVycyBsb2NhbGx5LCBkbyBub3QKKyAgICAgICAgcmVxdWlyZSBjbGllbnQgdG8gbWFpbnRh
aW4gdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEFkZGVkLiAoTW92ZWQgZnJvbSBTY3JvbGxBbmlt
YXRvck1hYykKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6
OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEaXR0by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIpOiAg
RGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
OiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW06IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFj
OjpTY3JvbGxBbmltYXRvck1hYyk6IFJlbW92ZSB1bnVzZWQgUnViYmVyYmFuZCB0aW1lcnMgKG5v
dyB0aGF0IHRoaXMgaXMKKyAgICAgICAgY29udHJvbGxlZCBpbiB0aGUgU2Nyb2xsQ29udHJvbGxl
cikKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmg6IFJlbW92ZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06IFJlbW92ZWQuCisKIDIwMTUtMDMt
MDIgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVyZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRl
IGluIEdyYXBoaWNzTGF5ZXJDQS5oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkK
QEAgLTc4Niw4ICs3ODYsNiBAQAogCQkxQTkyN0ZEMzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTky
N0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5ODk1NkIwQUE3OEY4MDAwNUVGNUVG
IC8qIFVSTENGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBOTg5NTZBMEFBNzhGODAwMDVFRjVFRiAvKiBVUkxDRi5jcHAgKi87IH07Ci0JCTFBQTg0
RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07Ci0JCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1
MyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFB
QTg3OTkwMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJhdGVneS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODc5OEYxMUNCRTg0NjAwM0M2NjRG
IC8qIFBsdWdpblN0cmF0ZWd5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMUFBQUREQTMxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQURE
QTExNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovOyB9OwogCQkxQUFBRERB
NDE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMjQ0NSw2ICsyNDQzLDggQEAKIAkJN0E3NEVDQkQxMDE4MzlEQTAwQkY5MzlFIC8q
IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNzRFQ0JDMTAxODM5REEwMEJGOTM5RSAvKiBKU0lu
c3BlY3RvckZyb250ZW5kSG9zdEN1c3RvbS5jcHAgKi87IH07CiAJCTdBOTM4Njg1MThEQ0MxNDUw
MEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgyMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNw
cCAqLzsgfTsKIAkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThEQ0Mx
NDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87IH07CisJCTdBOUFERkYzMUFBMTE2MzgwMEQy
NzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJv
bGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTdBOUFERkY0MUFBMTE2M0IwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGRkE0MTIxQUExMDM5RDAw
RjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07CiAJCTdBQTNBNjk5MTk0QTY0RTcw
MDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTY5NTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuY3BwICovOyB9OwogCQk3QUEzQTY5QTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
QTNBNjk2MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdBQTNBNjlCMTk0QTY0RTcwMDFD
QkQyNCAvKiBUaWxlR3JpZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QUEzQTY5NzE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUdyaWQuY3BwICovOyB9
OwpAQCAtNzgwOSw4ICs3ODA5LDYgQEAKIAkJMUE5MjdGRDAxNDE2QTE1QjAwM0E4M0M4IC8qIG5w
cnVudGltZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBucHJ1bnRpbWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE5MjdGRDExNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gbnB0eXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTk4OTU2QTBBQTc4RjgwMDA1RUY1RUYgLyog
VVJMQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVSTENGLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQkxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTFBQTg3OThGMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJh
dGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbHVnaW5TdHJhdGVneS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUFBRERBMTE0REI0MDlGMDBBRjY0QjMg
LyogU2Nyb2xsaW5nVHJlZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTY3JvbGxpbmdUcmVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQURE
QTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtOTY2Nyw2ICs5NjY1LDggQEAKIAkJN0FGOUIyMDkxOENGQjVGMjAwQzY0QkVGIC8qIEpT
VlRUUmVnaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVlRUUmVnaW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRjlCMjBBMThDRkI1RjMwMEM2NEJF
RiAvKiBKU1ZUVFJlZ2lvbkxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNWVFRSZWdpb25MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0FGOUIyMEIxOENGQjVGMzAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uTGlzdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZUVFJlZ2lvbkxpc3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0FGRkE0MTExQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xs
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUZGQTQxMjFBQTEwMzlEMDBGMDEyNUIg
LyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IFNjcm9sbENvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdDMkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0MyQkREM0MxN0M3Rjk4QjAwMzhG
RjE1IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0RPTUdsb2JhbE9iamVjdFRhc2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0MzQjc5NkYxOTA4NzU3QjAwQjQ3QTJEIC8qIFVzZXJNZXNzYWdlSGFuZGxlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1ODcsOCArMTY1ODcsNiBAQAog
CQkJCUJDNTExNTZEMTJCMTc0OUMwMEM5Njc1NCAvKiBTY3JvbGxBbmltYXRvck1hYy5tbSAqLywK
IAkJCQlCQzhCODUzQzBFN0M3RjExMDBBQjY5ODQgLyogU2Nyb2xsYmFyVGhlbWVNYWMuaCAqLywK
IAkJCQlCQ0VGODY5RTBFODQ0RTlEMDBBODVDRDUgLyogU2Nyb2xsYmFyVGhlbWVNYWMubW0gKi8s
Ci0JCQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIuaCAqLywK
LQkJCQkxQUE4NEYwMjE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLywK
IAkJCQk5MzUzNjc2QTA5QUVEODhCMDBEMzVDRDYgLyogU2Nyb2xsVmlld01hYy5tbSAqLywKIAkJ
CQkwNzdBRjE0MTE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXplZFBsYXRmb3JtUmVwcmVzZW50
YXRpb25NYWMuaCAqLywKIAkJCQkwNzdBRjE0MjE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXpl
ZFBsYXRmb3JtUmVwcmVzZW50YXRpb25NYWMubW0gKi8sCkBAIC0xODY5OCw2ICsxODY5Niw4IEBA
CiAJCQkJMUEwNDA5RjIxQTQzNjc1QzAwOUU0N0YzIC8qIE1hY2hTZW5kUmlnaHQuY3BwICovLAog
CQkJCTFBMDQwOURCMUE0MzYwQjUwMDlFNDdGMyAvKiBNYWNoU2VuZFJpZ2h0LmggKi8sCiAJCQkJ
QURCNkIyOTcxOEZCOTAyNDAwODE5NjNFIC8qIE1lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1t
ICovLAorCQkJCTdBRkZBNDExMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3JvbGxDb250cm9sbGVyLmgg
Ki8sCisJCQkJN0FGRkE0MTIxQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
Ki8sCiAJCQkJNUQ1OTc1QjExOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNpb24uaCAqLywK
IAkJCQk1RDU5NzVCMjE5NjM1RjExMDBEMDA4NzggLyogU3lzdGVtVmVyc2lvbi5tbSAqLywKIAkJ
CQk3Q0M1NjRCOTE4QkFDNzIwMDAxQjk2NTIgLyogVGVsZXBob25lTnVtYmVyRGV0ZWN0b3JDb2Nv
YS5jcHAgKi8sCkBAIC0yNDY0OCw2ICsyNDY0OCw3IEBACiAJCQkJQThFQTdDQjUwQTE5MkI5QzAw
QThFRjVGIC8qIEhUTUxQYXJhZ3JhcGhFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcx
RDQ1ODBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBhcmFtRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJOTNFMkEzMDcxMjNFOURDMDAwOUZFMTJBIC8qIEhUTUxQYXJzZXJJZGlvbXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTdBOUFERkYzMUFBMTE2MzgwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzNGNDE4QTE2OUI5NUZGMDAwNkJGNjAgLyogSFRN
TFBhcnNlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3N0IzODcxMTIyODgzRTkwMEI4
MUZGOCAvKiBIVE1MUGFyc2VyU2NoZWR1bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxRDQ1
NjBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLApA
QCAtMjYxMDEsNyArMjYxMDIsNiBAQAogCQkJCUJDOEI4NTNFMEU3QzdGMTEwMEFCNjk4NCAvKiBT
Y3JvbGxiYXJUaGVtZU1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZFNzE0MDYxNDIxNzBCODAw
REIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUQ5MjVC
NjgwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEJlaGF2aW9yLmggaW4gSGVhZGVycyAqLywKLQkJ
CQkxQUE4NEYwNTE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMEY2MDVBRUQxNUY5NDg0ODAwNERGMEMwIC8qIFNjcm9sbGluZ0NvbnN0cmFp
bnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUY2MkVFODE0REEyMkE3MDA0MTU1NkMgLyogU2Ny
b2xsaW5nQ29vcmRpbmF0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQzRFNDBEMTg3RjgyRTEw
MDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5oIGluIEhlYWRlcnMgKi8sCkBAIC0y
NzQ5Niw2ICsyNzQ5Niw3IEBACiAJCQkJRTE5QUMzRjQxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0
b0FsZ29yaXRobVNIQTUxMi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTEx
MDA4OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxNTdB
OEU0MTgxNzNBM0EwMDlGODIxRCAvKiBDcnlwdG9LZXkuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
N0E5QURGRjQxQUExMTYzQjAwRDI3MzNDIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gaW4gU291cmNl
cyAqLywKIAkJCQlFMTI1Rjg0RDE4MjQyODlEMDBEODRDRDkgLyogQ3J5cHRvS2V5QUVTLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUUxMjVGODYzMTgyQzMwM0EwMEQ4NENEOSAvKiBDcnlwdG9LZXlE
YXRhT2N0ZXRTZXF1ZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUMyNjZERTE4MzE5RjMx
MDAzRjhCMzMgLyogQ3J5cHRvS2V5RGF0YVJTQUNvbXBvbmVudHMuY3BwIGluIFNvdXJjZXMgKi8s
CkBAIC0yOTUwOCw3ICsyOTUwOSw2IEBACiAJCQkJQkNFRjg2OUYwRTg0NEU5RDAwQTg1Q0Q1IC8q
IFNjcm9sbGJhclRoZW1lTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZFNzE0MDUxNDIxNzBC
ODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1
RDkyNUI2NzBGNjRENEREMDBCODQ3RjAgLyogU2Nyb2xsQmVoYXZpb3IuY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJMUFBODRGMDQxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
aW4gU291cmNlcyAqLywKIAkJCQkwRjYwNUFFQzE1Rjk0ODQ4MDA0REYwQzAgLyogU2Nyb2xsaW5n
Q29uc3RyYWludHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFGNjJFRTcxNERBMjJBNzAwNDE1
NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGQzRF
NDBFMTg3RjgyRTEwMDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5tbSBpbiBTb3Vy
Y2VzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5t
bQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5k
bGVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05NjEsNiArOTYxLDEyIEBAIGJvb2wgRXZlbnRI
YW5kbGVyOjpwbGF0Zm9ybUNvbXBsZXRlV2hlZWwKICAgICAKICAgICBib29sIGRpZEhhbmRsZUV2
ZW50ID0gdmlldyA/IHZpZXctPndoZWVsRXZlbnQod2hlZWxFdmVudCkgOiBmYWxzZTsKICAgICBt
X2lzSGFuZGxpbmdXaGVlbEV2ZW50ID0gZmFsc2U7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JP
TExfU05BUCkKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEpCisgICAgICAgIHBsYXRmb3JtTm90aWZ5
U25hcElmTmVjZXNzYXJ5KHdoZWVsRXZlbnQsICpzY3JvbGxhYmxlQXJlYSk7CisjZW5kaWYKKwog
ICAgIHJldHVybiBkaWRIYW5kbGVFdmVudDsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJl
ZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yy5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw4ICs2MSw2IEBAIHByaXZhdGU6CiAgICAgdmlydHVh
bCBJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFp
bnRzKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNu
YXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBS
dWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xs
UG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICB2aXJ0dWFsIEZs
b2F0UG9pbnQgc2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKQEAgLTgwLDEwICs3OCwx
NCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2Vz
dHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwogCisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZpcnR1YWwgTGF5
b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKTsKKyAgICB2aXJ0dWFs
IHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEp
OworI2VuZGlmCisKICAgICB2b2lkIGxvZ0V4cG9zZWRVbmZpbGxlZEFyZWEoKTsKIAogICAgIFNj
cm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOwotICAgIFJldGFpblB0cjxDRlJ1bkxv
b3BUaW1lclJlZj4gbV9zbmFwUnViYmVyYmFuZFRpbWVyOwogCiAgICAgUmV0YWluUHRyPENBTGF5
ZXI+IG1fc2Nyb2xsTGF5ZXI7CiAgICAgUmV0YWluUHRyPENBTGF5ZXI+IG1fc2Nyb2xsZWRDb250
ZW50c0xheWVyOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9s
bGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWMubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC02Niw4ICs2Niw2IEBAIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OlNj
cm8KIAogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6flNjcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVNYWMoKQogewotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXIp
Ci0gICAgICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZShtX3NuYXBSdWJiZXJiYW5kVGltZXIu
Z2V0KCkpOwogfQogCiB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnVw
ZGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQpA
QCAtMjk2LDMyICsyOTQsNiBAQCB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWM6CiAgICAgc2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhvZmZzZXQpOwog
fQogCi12b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnN0YXJ0U25hcFJ1
YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgQVNTRVJUKCFtX3NuYXBSdWJiZXJiYW5kVGltZXIpOwot
Ci0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZXJJbnRlcnZhbCA9IDEuMCAvIDYwLjA7Ci0KLSAgICBt
X3NuYXBSdWJiZXJiYW5kVGltZXIgPSBhZG9wdENGKENGUnVuTG9vcFRpbWVyQ3JlYXRlV2l0aEhh
bmRsZXIoa0NGQWxsb2NhdG9yRGVmYXVsdCwgQ0ZBYnNvbHV0ZVRpbWVHZXRDdXJyZW50KCkgKyB0
aW1lckludGVydmFsLCB0aW1lckludGVydmFsLCAwLCAwLCBeKENGUnVuTG9vcFRpbWVyUmVmKSB7
Ci0gICAgICAgIG1fc2Nyb2xsQ29udHJvbGxlci5zbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsK
LSAgICB9KSk7Ci0gICAgQ0ZSdW5Mb29wQWRkVGltZXIoQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBt
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCksIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci19Ci0K
LXZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RvcFNuYXBSdWJiZXJi
YW5kVGltZXIoKQotewotICAgIGlmICghbV9zbmFwUnViYmVyYmFuZFRpbWVyKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICBzY3JvbGxpbmdUcmVlKCkuc2V0TWFpbkZyYW1lSXNSdWJiZXJCYW5kaW5n
KGZhbHNlKTsKLQotICAgIC8vIFNpbmNlIHRoZSBydWJiZXJiYW5kIHRpbWVyIGhhcyBzdG9wcGVk
LCB0b3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQgY2FuIGJlIHN5bmNocm9uaXplZCB3aXRo
IHRvdGFsQ29udGVudHNTaXplLgotICAgIHNldFRvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFu
ZCh0b3RhbENvbnRlbnRzU2l6ZSgpKTsKLQotICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZSht
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCkpOwotICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lciA9
IG51bGxwdHI7Ci19Ci0KIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6
YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkKIHsKICAgICBGbG9hdFBv
aW50IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKTsKQEAg
LTU0MCw2ICs1MTIsMTkgQEAgdm9pZCBsb2dXaGVlbEV2ZW50SGFuZGxlckNvdW50Q2hhbmdlZCh1
bgogICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5HOiBXaGVlbCBldmVudCBoYW5kbGVyIGNvdW50
IGNoYW5nZWQuIFRpbWU6ICVmIENvdW50OiAldVxuIiwgV1RGOjptb25vdG9uaWNhbGx5SW5jcmVh
c2luZ1RpbWUoKSwgY291bnQpOwogfQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYg
UExBVEZPUk0oTUFDKQorTGF5b3V0VW5pdCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2Rl
TWFjOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKQoreworICAgIC8vIFRlbXBv
cmFyeSBzdHViIHVudGlsIGh0dHA6Ly93ZWJraXQub3JnL2IvMTQxOTczLgorICAgIHJldHVybiBM
YXlvdXRVbml0KCk7Cit9CisKK3ZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yzo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQpCit7CisgICAg
Ly8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDovL3dlYmtpdC5vcmcvYi8xNDE5NzMuCit9Cisj
ZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKEFTWU5D
X1NDUk9MTElORykgJiYgUExBVEZPUk0oTUFDKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsQW5pbWF0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw2ICs0
OSw5IEBAIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxBbmltYXRvcj4gU2Nyb2xsQW4KIAogU2Nyb2xs
QW5pbWF0b3I6OlNjcm9sbEFuaW1hdG9yKFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkK
ICAgICA6IG1fc2Nyb2xsYWJsZUFyZWEoc2Nyb2xsYWJsZUFyZWEpCisjaWYgRU5BQkxFKFJVQkJF
Ul9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgICwgbV9zY3JvbGxDb250
cm9sbGVyKHRoaXMpCisjZW5kaWYKICAgICAsIG1fY3VycmVudFBvc1goMCkKICAgICAsIG1fY3Vy
cmVudFBvc1koMCkKIHsKQEAgLTgxLDI4ICs4NCwxNiBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjpz
Y3JvbGxUb09mZnNldFdpdGhvCiB9CiAKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpwcm9jZXNzV2hlZWxFdmVudEZvclNj
cm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQorYm9vbCBTY3Jv
bGxBbmltYXRvcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYgd2hlZWxFdmVudCkKIHsKLSAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBB
bmltYXRvcikKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hl
ZWxFdmVudCh3aGVlbEV2ZW50KTsKLSAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1h
dG9yKQotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVs
RXZlbnQod2hlZWxFdmVudCk7CisgICAgcmV0dXJuIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNz
V2hlZWxFdmVudEZvclNjcm9sbFNuYXAod2hlZWxFdmVudCk7CiB9CiAjZW5kaWYKIAogYm9vbCBT
Y3JvbGxBbmltYXRvcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQm
IGUpCiB7CiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQotICAg
IGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQoZSk7Ci0gICAgICAgIGlmIChtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0g
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIGlmIChtX2hvcml6b250YWxTY3Jv
bGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9y
LT5oYW5kbGVXaGVlbEV2ZW50KGUpOwotICAgICAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25h
cEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0gICAgICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgfQorICAgIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNzV2hlZWxFdmVu
dEZvclNjcm9sbFNuYXAoZSk7CiAjZW5kaWYKICNpZiBQTEFURk9STShDT0NPQSkKICAgICAvLyBF
dmVudHMgaW4gdGhlIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlTWF5QmVnaW4gcGhhc2UgaGF2ZSBu
byBkZWx0YXMsIGFuZCB0aGVyZWZvcmUgbmV2ZXIgcGFzc2VzIHRocm91Z2ggdGhlIHNjcm9sbCBo
YW5kbGluZyBsb2dpYyBiZWxvdy4KQEAgLTE4MywzMCArMTc0LDE1IEBAIHZvaWQgU2Nyb2xsQW5p
bWF0b3I6Om5vdGlmeVBvc2l0aW9uQ2hhbmcKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAm
JiBQTEFURk9STShNQUMpCiB2b2lkIFNjcm9sbEFuaW1hdG9yOjp1cGRhdGVTY3JvbGxBbmltYXRv
cnNBbmRUaW1lcnMoKQogewotICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBzbmFwIGFu
aW1hdG9ycyBhcmUgcmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMgYWxvbmUg
Y2FuIGJlIHVwZGF0ZWQuCi0gICAgaWYgKG1fc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBP
ZmZzZXRzKCkpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3Rk
OjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVB
cmVhLmhvcml6b250YWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwp
OwotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVl
PFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVy
RmlyZWQpOwotICAgIH0gZWxzZSBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7
Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51bGxwdHI7Ci0gICAg
ICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA9IG51bGxwdHI7Ci0gICAgfQotICAgIGlm
IChtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSkgewotICAgICAgICBtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25h
cEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSwg
U2Nyb2xsRXZlbnRBeGlzOjpWZXJ0aWNhbCk7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFw
VGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjp2
ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKLSAgICB9IGVsc2UgaWYgKG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRv
ciA9IG51bGxwdHI7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIgPSBudWxscHRy
OwotICAgIH0KKyAgICBtX3Njcm9sbENvbnRyb2xsZXIudXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5k
VGltZXJzKG1fc2Nyb2xsYWJsZUFyZWEpOwogfQogCi1MYXlvdXRVbml0IFNjcm9sbEFuaW1hdG9y
OjpzY3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCitMYXlvdXRVbml0IFNj
cm9sbEFuaW1hdG9yOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCiB7
Ci0gICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24o
KTsKLSAgICByZXR1cm4gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBjdXJy
ZW50UG9zaXRpb24ueCgpIDogY3VycmVudFBvc2l0aW9uLnkoKTsKKyAgICByZXR1cm4gYXhpcyA9
PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2N1cnJlbnRQb3NYIDogbV9jdXJyZW50
UG9zWTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRvcjo6aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNj
cm9sbEV2ZW50QXhpcyBheGlzLCBmbG9hdCBkZWx0YSkKK3ZvaWQgU2Nyb2xsQW5pbWF0b3I6Omlt
bWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcywgZmxvYXQgZGVsdGEpCiB7
CiAgICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24o
KTsKICAgICBpZiAoYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwpCkBAIC0yMTQs
MzAgKzE5MCw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXgKICAg
ICBlbHNlCiAgICAgICAgIHNjcm9sbFRvT2Zmc2V0V2l0aG91dEFuaW1hdGlvbihGbG9hdFBvaW50
KGN1cnJlbnRQb3NpdGlvbi54KCksIGN1cnJlbnRQb3NpdGlvbi55KCkgKyBkZWx0YSkpOwogfQot
Ci12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4
aXMgYXhpcykKLXsKLSAgICBUaW1lciogc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxF
dmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIuZ2V0KCkg
OiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyLmdldCgpOwotICAgIGlmICghc2Nyb2xsU25hcFRp
bWVyLT5pc0FjdGl2ZSgpKQotICAgICAgICBzY3JvbGxTbmFwVGltZXItPnN0YXJ0UmVwZWF0aW5n
KDEuMCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdG9wU2Nyb2xsU25hcFRp
bWVyKFNjcm9sbEV2ZW50QXhpcyBheGlzKQotewotICAgIFRpbWVyKiBzY3JvbGxTbmFwVGltZXIg
PSBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9s
bFNuYXBUaW1lci5nZXQoKSA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIuZ2V0KCk7Ci0gICAg
aWYgKHNjcm9sbFNuYXBUaW1lci0+aXNBY3RpdmUoKSkKLSAgICAgICAgc2Nyb2xsU25hcFRpbWVy
LT5zdG9wKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFw
VGltZXJGaXJlZCgpCi17Ci0gICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3Jv
bGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnZlcnRp
Y2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQotewotICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5p
bWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKLX0KICNlbmRpZgogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmlt
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1h
dG9yLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9s
bEFuaW1hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDE0ICszMywxNCBAQAogI2RlZmluZSBT
Y3JvbGxBbmltYXRvcl9oCiAKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKKyNpbmNsdWRlICJMYXlv
dXRVbml0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCiAjaW5jbHVkZSAiU2Ny
b2xsVHlwZXMuaCIKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9G
b3J3YXJkLmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMp
Ci0jaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgotI2luY2x1ZGUgIlRpbWVyLmgi
CisjaWYgKEVOQUJMRShSVUJCRVJfQkFORElORykgfHwgRU5BQkxFKENTU19TQ1JPTExfU05BUCkp
ICYmIFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjZW5kaWYK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTAsOCArNTAsOCBAQCBjbGFzcyBQbGF0Zm9ybVRv
dWNoRXZlbnQ7CiBjbGFzcyBTY3JvbGxhYmxlQXJlYTsKIGNsYXNzIFNjcm9sbGJhcjsKIAotI2lm
IEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLWNsYXNzIFNjcm9sbEFu
aW1hdG9yIDogcHVibGljIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQgeworI2lmIChFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKSB8fCBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpICYmIFBMQVRGT1JN
KE1BQykpCitjbGFzcyBTY3JvbGxBbmltYXRvciA6IHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNs
aWVudCB7CiAjZWxzZQogY2xhc3MgU2Nyb2xsQW5pbWF0b3IgewogI2VuZGlmCkBAIC0xMTgsMzMg
KzExOCwyMiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jl
c3MoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05B
UCkgJiYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgcHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxT
bmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworICAgIGJvb2wgcHJvY2Vzc1doZWVsRXZl
bnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworCiAgICAgdm9pZCB1
cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoKTsKLSAgICB2aXJ0dWFsIExheW91dFVuaXQg
c2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IGRlbHRh
KSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xs
RXZlbnRBeGlzKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1l
cihTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0
T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3Jv
bGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7CiAjZW5kaWYK
IAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlQb3NpdGlvbkNoYW5nZWQoY29u
c3QgRmxvYXRTaXplJiBkZWx0YSk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCi0gICAgLy8gVHJpdmlhbCB3cmFwcGVycyBhcm91bmQgdGhlIGFjdHVhbCB1
cGRhdGUgbG9vcCBpbiBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLCBzaW5jZSBXZWJDb3JlIFRpbWVy
IHJlcXVpcmVzIGEgVGltZXIgYXJndW1lbnQuCi0gICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25h
cFRpbWVyRmlyZWQoKTsKLSAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsK
LSNlbmRpZgotCiAgICAgU2Nyb2xsYWJsZUFyZWEmIG1fc2Nyb2xsYWJsZUFyZWE7CisjaWYgRU5B
QkxFKFJVQkJFUl9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgIFNjcm9s
bENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOworI2VuZGlmCiAgICAgZmxvYXQgbV9jdXJy
ZW50UG9zWDsgLy8gV2UgYXZvaWQgdXNpbmcgYSBGbG9hdFBvaW50IGluIG9yZGVyIHRvIHJlZHVj
ZQogICAgIGZsb2F0IG1fY3VycmVudFBvc1k7IC8vIHN1YmNsYXNzIGNvZGUgY29tcGxleGl0eS4K
LSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi0gICAgc3RkOjp1
bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBB
bmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8VGltZXI+IG1faG9yaXpvbnRhbFNjcm9sbFNu
YXBUaW1lcjsKLSAgICAvLyBGSVhNRTogRmluZCBhIHdheSB0byBjb25zb2xpZGF0ZSBib3RoIHRp
bWVycyBpbnRvIG9uZSB2YXJpYWJsZS4KLSAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNu
YXBBbmltYXRvcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1
ZV9wdHI8VGltZXI+IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7Ci0jZW5kaWYKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1Njcm9sbENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHJldmlzaW9uIDE4MDcwMikJKGZyb20gU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIuaDoxODA3MDIpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwxMDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFNjcm9sbENvbnRyb2xs
ZXJfaAorI2RlZmluZSBTY3JvbGxDb250cm9sbGVyX2gKKworI2lmIEVOQUJMRShSVUJCRVJfQkFO
RElORykKKworI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJGbG9hdFNpemUuaCIK
KyNpbmNsdWRlICJTY3JvbGxUeXBlcy5oIgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKKworY2xh
c3MgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7Citwcm90ZWN0ZWQ6CisgICAgdmlydHVhbCB+U2Ny
b2xsQ29udHJvbGxlckNsaWVudCgpIHsgfQorCitwdWJsaWM6CisgICAgdmlydHVhbCBib29sIGFs
bG93c0hvcml6b250YWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsK
KyAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzVmVydGljYWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYpID0gMDsKKyAgICB2aXJ0dWFsIEludFNpemUgc3RyZXRjaEFtb3VudCgpID0g
MDsKKyAgICB2aXJ0dWFsIGJvb2wgcGlubmVkSW5EaXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikg
PSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxIb3Jpem9udGFsbHkoKSA9IDA7CisgICAg
dmlydHVhbCBib29sIGNhblNjcm9sbFZlcnRpY2FsbHkoKSA9IDA7CisgICAgdmlydHVhbCBib29s
IHNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxEaXJlY3Rpb24pID0gMDsKKworICAg
IC8vIFJldHVybiB0aGUgYWJzb2x1dGUgc2Nyb2xsIHBvc2l0aW9uLCBub3QgcmVsYXRpdmUgdG8g
dGhlIHNjcm9sbCBvcmlnaW4uCisgICAgdmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0
ZVNjcm9sbFBvc2l0aW9uKCkgPSAwOworCisgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9s
bEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Ny
b2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7
CisgICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7CisKKyAgICAvLyBJZiB0
aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0
aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKKyAgICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhl
IG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCisgICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBv
c2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsKK307CisKK2NsYXNzIFNjcm9sbENvbnRy
b2xsZXIgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFNjcm9sbENvbnRyb2xsZXIpOworCitw
dWJsaWM6CisgICAgZXhwbGljaXQgU2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xp
ZW50Kik7CisKKyAgICBib29sIGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2
ZW50Jik7CisgICAgdm9pZCBzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKKworICAgIGJvb2wg
aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0OworCitwcml2YXRlOgorICAgIHZvaWQgc3Rv
cFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kKCk7CisKKyAg
ICBib29sIHNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZv
cm1XaGVlbEV2ZW50Jik7CisKKyAgICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsK
KworICAgIGJvb2wgbV9pblNjcm9sbEdlc3R1cmU7CisgICAgYm9vbCBtX21vbWVudHVtU2Nyb2xs
SW5Qcm9ncmVzczsKKyAgICBib29sIG1faWdub3JlTW9tZW50dW1TY3JvbGxzOworICAgIAorICAg
IENGVGltZUludGVydmFsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOworICAgIEZsb2F0
U2l6ZSBtX292ZXJmbG93U2Nyb2xsRGVsdGE7CisgICAgRmxvYXRTaXplIG1fc3RyZXRjaFNjcm9s
bEZvcmNlOworICAgIEZsb2F0U2l6ZSBtX21vbWVudHVtVmVsb2NpdHk7CisKKyAgICAvLyBSdWJi
ZXIgYmFuZCBzdGF0ZS4KKyAgICBDRlRpbWVJbnRlcnZhbCBtX3N0YXJ0VGltZTsKKyAgICBGbG9h
dFNpemUgbV9zdGFydFN0cmV0Y2g7CisgICAgRmxvYXRQb2ludCBtX29yaWdPcmlnaW47CisgICAg
RmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5OworCisgICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGlt
ZXJJc0FjdGl2ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVO
QUJMRShSVUJCRVJfQkFORElORykKKworI2VuZGlmIC8vIFNjcm9sbENvbnRyb2xsZXJfaApJbmRl
eDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIu
aAkod29ya2luZyBjb3B5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMTEsIDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMyLDEwICszMiwxNiBAQAogI2luY2x1
ZGUgIkZsb2F0U2l6ZS5oIgogI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSA8d3Rm
L05vbmNvcHlhYmxlLmg+CisjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KKworI2lmIEVOQUJMRShD
U1NfU0NST0xMX1NOQVApCisjaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgorI2Vu
ZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50Owor
Y2xhc3MgU2Nyb2xsYWJsZUFyZWE7CiAKIGNsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewog
cHJvdGVjdGVkOgpAQCAtNTUsMzYgKzYxLDU1IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9p
ZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3Qg
RmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAw
OwogCiAgICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlzIHdpdGhpbiB0aGUg
b3ZlcmhhbmcgYXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNhdXNlCiAgICAgLy8gdGhlIHBhZ2Ug
dG8gc2Nyb2xsIHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBvaW50LgogICAgIHZpcnR1YWwgdm9p
ZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSA9IDA7CisKKyNpZiBF
TkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdmlydHVhbCBMYXlv
dXRVbml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKKyAgICB2aXJ0
dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVs
dGEpID0gMDsKKyNlbmRpZgogfTsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBM
QVRGT1JNKE1BQykKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXIgOiBwdWJsaWMgQXhpc1Njcm9sbFNu
YXBBbmltYXRvckNsaWVudCB7CisjZWxzZQogY2xhc3MgU2Nyb2xsQ29udHJvbGxlciB7CisjZW5k
aWYKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShTY3JvbGxDb250cm9sbGVyKTsKIAogcHVibGlj
OgogICAgIGV4cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCop
OwogCiAgICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYp
OwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIGlzUnVi
YmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdDsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVAp
ICYmIFBMQVRGT1JNKE1BQykKKyAgICBib29sIHByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25h
cChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKyAgICB2b2lkIHVwZGF0ZVNjcm9sbEFuaW1h
dG9yc0FuZFRpbWVycyhjb25zdCBTY3JvbGxhYmxlQXJlYSYpOworI2VuZGlmCisKIHByaXZhdGU6
CisgICAgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICB2b2lkIHN0b3BTbmFw
UnViYmVyYmFuZFRpbWVyKCk7CiAgICAgdm9pZCBzbmFwUnViYmVyQmFuZCgpOworICAgIHZvaWQg
c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIHNob3VsZFJ1YmJlckJhbmRJ
bkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CiAKLSAgICBT
Y3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9T
TkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVy
RmlyZWQoKTsKKyAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsKKyAgICB2
b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyk7CisgICAgdm9pZCBzdG9w
U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyk7CisKKyAgICBMYXlvdXRVbml0IHNjcm9s
bE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEpIG92ZXJyaWRlOwor
I2VuZGlmCiAKLSAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOwotICAgIGJvb2wgbV9tb21lbnR1
bVNjcm9sbEluUHJvZ3Jlc3M7Ci0gICAgYm9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xsczsKKyAg
ICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKICAgICAKICAgICBDRlRpbWVJbnRl
cnZhbCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKICAgICBGbG9hdFNpemUgbV9vdmVy
Zmxvd1Njcm9sbERlbHRhOwpAQCAtOTYsNyArMTIxLDE5IEBAIHByaXZhdGU6CiAgICAgRmxvYXRT
aXplIG1fc3RhcnRTdHJldGNoOwogICAgIEZsb2F0UG9pbnQgbV9vcmlnT3JpZ2luOwogICAgIEZs
b2F0U2l6ZSBtX29yaWdWZWxvY2l0eTsKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250cm9s
bGVyPiBtX3NuYXBSdWJiZXJiYW5kVGltZXI7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JPTExf
U05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIC8vIEZJWE1FOiBGaW5kIGEgd2F5IHRvIGNvbnNv
bGlkYXRlIGJvdGggdGltZXJzIGludG8gb25lIHZhcmlhYmxlLgorICAgIHN0ZDo6dW5pcXVlX3B0
cjxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPiBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3I7
CisgICAgc3RkOjp1bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3I7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4g
bV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyOworICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9sbENv
bnRyb2xsZXI+IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7CisjZW5kaWYKIAorICAgIGJvb2wg
bV9pblNjcm9sbEdlc3R1cmU7CisgICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsK
KyAgICBib29sIG1faWdub3JlTW9tZW50dW1TY3JvbGxzOwogICAgIGJvb2wgbV9zbmFwUnViYmVy
YmFuZFRpbWVySXNBY3RpdmU7CiB9OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9j
b2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0JKHJldmlzaW9uIDE4MDcwMikJKGZyb20g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06MTgwNzAyKQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDQwNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSwg
MjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlNjcm9sbENvbnRyb2xsZXIuaCIKKworI2luY2x1
ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgorI2luY2x1ZGUgIldlYkNvcmVTeXN0ZW1JbnRlcmZh
Y2UuaCIKKyNpbmNsdWRlIDxzeXMvc3lzY3RsLmg+CisjaW5jbHVkZSA8c3lzL3RpbWUuaD4KKwor
I2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKKworc3RhdGljIE5TVGltZUludGVydmFsIHN5c3Rl
bVVwdGltZSgpCit7CisgICAgaWYgKFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcmVzcG9u
ZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzeXN0ZW1VcHRpbWUpXSkKKyAgICAgICAgcmV0dXJuIFtb
TlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gc3lzdGVtVXB0aW1lXTsKKworICAgIC8vIEdldCBo
b3cgbG9uZyBzeXN0ZW0gaGFzIGJlZW4gdXAuIEZvdW5kIGJ5IGxvb2tpbmcgZ2V0dGluZyAiYm9v
dHRpbWUiIGZyb20gdGhlIGtlcm5lbC4KKyAgICBzdGF0aWMgc3RydWN0IHRpbWV2YWwgYm9vdHRp
bWUgPSB7MCwgMH07CisgICAgaWYgKCFib290dGltZS50dl9zZWMpIHsKKyAgICAgICAgaW50IG1p
YlsyXSA9IHtDVExfS0VSTiwgS0VSTl9CT09UVElNRX07CisgICAgICAgIHNpemVfdCBzaXplID0g
c2l6ZW9mKGJvb3R0aW1lKTsKKyAgICAgICAgaWYgKC0xID09IHN5c2N0bChtaWIsIDIsICZib290
dGltZSwgJnNpemUsIDAsIDApKQorICAgICAgICAgICAgYm9vdHRpbWUudHZfc2VjID0gMDsKKyAg
ICB9CisgICAgc3RydWN0IHRpbWV2YWwgbm93OworICAgIGlmIChib290dGltZS50dl9zZWMgJiYg
LTEgIT0gZ2V0dGltZW9mZGF5KCZub3csIDApKSB7CisgICAgICAgIHN0cnVjdCB0aW1ldmFsIHVw
dGltZTsKKyAgICAgICAgdGltZXJzdWIoJm5vdywgJmJvb3R0aW1lLCAmdXB0aW1lKTsKKyAgICAg
ICAgTlNUaW1lSW50ZXJ2YWwgcmVzdWx0ID0gdXB0aW1lLnR2X3NlYyArICh1cHRpbWUudHZfdXNl
YyAvIDFFKzYpOworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0KKyAgICByZXR1cm4gMDsK
K30KKworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxW
ZWxvY2l0eVplcm9pbmdUaW1lb3V0ID0gMC4xMGY7CitzdGF0aWMgY29uc3QgZmxvYXQgcnViYmVy
YmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8gPSAxOworc3RhdGljIGNvbnN0IGZsb2F0IHJ1
YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2ggPSAxMDsKKworc3RhdGlj
IGZsb2F0IGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShmbG9hdCBpbml0aWFsUG9zaXRpb24sIGZs
b2F0IGluaXRpYWxWZWxvY2l0eSwgZmxvYXQgZWxhcHNlZFRpbWUpCit7CisgICAgcmV0dXJuIHdr
TlNFbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEoaW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsVmVsb2Np
dHksIGVsYXBzZWRUaW1lKTsKK30KKworc3RhdGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclJlYm91
bmREZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclJl
Ym91bmREZWx0YShkZWx0YSk7Cit9CisKK3N0YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JFbGFz
dGljRGVsdGEoZmxvYXQgZGVsdGEpCit7CisgICAgcmV0dXJuIHdrTlNSZWJvdW5kRGVsdGFGb3JF
bGFzdGljRGVsdGEoZGVsdGEpOworfQorCitzdGF0aWMgZmxvYXQgc2Nyb2xsV2hlZWxNdWx0aXBs
aWVyKCkKK3sKKyAgICBzdGF0aWMgZmxvYXQgbXVsdGlwbGllciA9IC0xOworICAgIGlmIChtdWx0
aXBsaWVyIDwgMCkgeworICAgICAgICBtdWx0aXBsaWVyID0gW1tOU1VzZXJEZWZhdWx0cyBzdGFu
ZGFyZFVzZXJEZWZhdWx0c10gZmxvYXRGb3JLZXk6QCJOU1Njcm9sbFdoZWVsTXVsdGlwbGllciJd
OworICAgICAgICBpZiAobXVsdGlwbGllciA8PSAwKQorICAgICAgICAgICAgbXVsdGlwbGllciA9
IDE7CisgICAgfQorICAgIHJldHVybiBtdWx0aXBsaWVyOworfQorCitTY3JvbGxDb250cm9sbGVy
OjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIGNsaWVudCkKKyAgICA6
IG1fY2xpZW50KGNsaWVudCkKKyAgICAsIG1faW5TY3JvbGxHZXN0dXJlKGZhbHNlKQorICAgICwg
bV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MoZmFsc2UpCisgICAgLCBtX2lnbm9yZU1vbWVudHVt
U2Nyb2xscyhmYWxzZSkKKyAgICAsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCisg
ICAgLCBtX3N0YXJ0VGltZSgwKQorICAgICwgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUo
ZmFsc2UpCit7Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChj
b25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCit7CisgICAgaWYgKHdoZWVsRXZl
bnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuKSB7CisgICAgICAgIC8v
IEZpcnN0LCBjaGVjayBpZiB3ZSBzaG91bGQgcnViYmVyLWJhbmQgYXQgYWxsLgorICAgICAgICBp
ZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgtd2hlZWxFdmVudC5kZWx0
YVgoKSwgMCkpCisgICAgICAgICAgICAmJiAhc2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERp
cmVjdGlvbih3aGVlbEV2ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAg
ICBtX2luU2Nyb2xsR2VzdHVyZSA9IHRydWU7CisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblBy
b2dyZXNzID0gZmFsc2U7CisgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7
CisgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gMDsKKyAgICAgICAgbV9t
b21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisKKyAgICAgICAgSW50U2l6ZSBzdHJldGNo
QW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKyAgICAgICAgbV9zdHJldGNoU2Ny
b2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91
bnQud2lkdGgoKSkpOworICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVi
b3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQuaGVpZ2h0KCkpKTsKKyAgICAg
ICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7CisKKyAgICAgICAgc3RvcFNu
YXBSdWJiZXJiYW5kVGltZXIoKTsKKworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAg
ICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQp
IHsKKyAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAg
fQorCisgICAgYm9vbCBpc01vbWVudHVtU2Nyb2xsRXZlbnQgPSAod2hlZWxFdmVudC5tb21lbnR1
bVBoYXNlKCkgIT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKTsKKyAgICBpZiAobV9pZ25v
cmVNb21lbnR1bVNjcm9sbHMgJiYgKGlzTW9tZW50dW1TY3JvbGxFdmVudCB8fCBtX3NuYXBSdWJi
ZXJiYW5kVGltZXJJc0FjdGl2ZSkpIHsKKyAgICAgICAgaWYgKHdoZWVsRXZlbnQubW9tZW50dW1Q
aGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKKyAgICAgICAgICAgIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
KyAgICAgICAgfQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgZmxvYXQgZGVs
dGFYID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCk7CisgICAgZmxvYXQgZGVsdGFZID0g
bV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpOworCisgICAgLy8gUmVzZXQgb3ZlcmZsb3cg
dmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lkZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBw
b2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJmbG93LgorICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YSA9IEZsb2F0U2l6ZSgpOworCisgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQt
PnN0cmV0Y2hBbW91bnQoKTsKKyAgICBib29sIGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IHN0cmV0
Y2hBbW91bnQuaGVpZ2h0KCk7CisgICAgYm9vbCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0
cmV0Y2hBbW91bnQud2lkdGgoKTsKKworICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFYOwor
ICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFZOworCisgICAgaWYgKGlzVmVydGljYWxseVN0
cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCkgeworICAgICAgICBldmVudENvYWxl
c2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoKTsK
KyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVk
U2Nyb2xsaW5nRGVsdGFZKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWRE
ZWx0YVggPSAtd2hlZWxFdmVudC5kZWx0YVgoKTsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0
YVkgPSAtd2hlZWxFdmVudC5kZWx0YVkoKTsKKyAgICB9CisKKyAgICBkZWx0YVggKz0gZXZlbnRD
b2FsZXNjZWREZWx0YVg7CisgICAgZGVsdGFZICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFZOworCisg
ICAgLy8gU2xpZ2h0bHkgcHJlZmVyIHNjcm9sbGluZyB2ZXJ0aWNhbGx5IGJ5IGFwcGx5aW5nIHRo
ZSA9IGNhc2UgdG8gZGVsdGFZCisgICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFY
KSkKKyAgICAgICAgZGVsdGFYID0gMDsKKyAgICBlbHNlCisgICAgICAgIGRlbHRhWSA9IDA7CisK
KyAgICBib29sIHNob3VsZFN0cmV0Y2ggPSBmYWxzZTsKKworICAgIFBsYXRmb3JtV2hlZWxFdmVu
dFBoYXNlIG1vbWVudHVtUGhhc2UgPSB3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKTsKKworICAg
IC8vIElmIHdlIGFyZSBzdGFydGluZyBtb21lbnR1bSBzY3JvbGxpbmcgdGhlbiBkbyBzb21lIHNl
dHVwLgorICAgIGlmICghbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgKG1vbWVudHVtUGhh
c2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbiB8fCBtb21lbnR1bVBoYXNlID09IFBs
YXRmb3JtV2hlZWxFdmVudFBoYXNlQ2hhbmdlZCkpCisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJ
blByb2dyZXNzID0gdHJ1ZTsKKworICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IHdoZWVs
RXZlbnQudGltZXN0YW1wKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBp
ZiAobV9pblNjcm9sbEdlc3R1cmUgfHwgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKKyAg
ICAgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+IDAg
JiYgdGltZURlbHRhIDwgc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCkgeworICAgICAgICAg
ICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldFdpZHRoKGV2ZW50Q29hbGVzY2VkRGVsdGFYIC8gKGZs
b2F0KXRpbWVEZWx0YSk7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkuc2V0SGVpZ2h0
KGV2ZW50Q29hbGVzY2VkRGVsdGFZIC8gKGZsb2F0KXRpbWVEZWx0YSk7CisgICAgICAgICAgICBt
X2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7Cisg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2Np
dHkgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChpc1ZlcnRpY2FsbHlT
dHJldGNoZWQpIHsKKyAgICAgICAgICAgIGlmICghaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYg
bV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgeworICAg
ICAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgdmVydGljYWwuCisgICAgICAg
ICAgICAgICAgaWYgKGRlbHRhWSAmJiAoZmFic2YoZGVsdGFYIC8gZGVsdGFZKSA8IHJ1YmJlcmJh
bmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFY
ID0gMDsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFu
ZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgeworICAgICAgICAgICAgICAgICAg
ICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndp
ZHRoKCkgKyBkZWx0YVgpOworICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOworICAgICAg
ICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVs
dGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOworICAg
ICAgICAgICAgfQorICAgICAgICB9IGVsc2UgaWYgKGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7
CisgICAgICAgICAgICAvLyBTdHJldGNoaW5nIG9ubHkgaW4gdGhlIGhvcml6b250YWwuCisgICAg
ICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0
YVkpKSkgeworICAgICAgICAgICAgICAgIGlmIChkZWx0YVggJiYgKGZhYnNmKGRlbHRhWSAvIGRl
bHRhWCkgPCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbykpCisgICAgICAgICAg
ICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVs
dGFZKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKKyAg
ICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJm
bG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBkZWx0YVkpOworICAgICAgICAgICAgICAgICAgICBk
ZWx0YVkgPSAwOworICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBt
X292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWln
aHQoKSArIGRlbHRhWSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICAvLyBOb3Qgc3RyZXRjaGluZyBhdCBhbGwgeWV0LgorICAgICAgICAgICAgaWYgKG1fY2xp
ZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCBkZWx0YVkpKSkgeworICAg
ICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0YVkpID49IGZhYnNmKGRlbHRhWCkpIHsKKyAgICAg
ICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVp
cmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJm
bG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBk
ZWx0YVgpOworICAgICAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAgICAg
ICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xs
RGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBzaG91bGRTdHJldGNoID0gdHJ1ZTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChkZWx0YVggfHwgZGVs
dGFZKSB7CisgICAgICAgIGlmICghKHNob3VsZFN0cmV0Y2ggfHwgaXNWZXJ0aWNhbGx5U3RyZXRj
aGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSkgeworICAgICAgICAgICAgaWYgKGRlbHRh
WSkgeworICAgICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsK
KyAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKDAs
IGRlbHRhWSkpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGRlbHRhWCkgeworICAg
ICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKKyAgICAgICAg
ICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKGRlbHRhWCwgMCkp
OworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKCFtX2Ns
aWVudC0+YWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsKKyAgICAgICAg
ICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFY
ID0gMDsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFYICYmICFpc0hvcml6b250YWxseVN0
cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgs
IDApKSkgeworICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIo
KTsKKworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRD
b250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YVgsIDApKTsKKyAgICAgICAgICAg
ICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAoIW1fY2xp
ZW50LT5hbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsKKyAgICAgICAgICAg
ICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0g
MDsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFZICYmICFpc1ZlcnRpY2FsbHlTdHJldGNo
ZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkp
IHsKKyAgICAgICAgICAgICAgICBkZWx0YVkgKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7CisK
KyAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVu
dEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoMCwgZGVsdGFZKSk7CisgICAgICAgICAgICAgICAg
ZGVsdGFZID0gMDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgSW50U2l6ZSBzdHJldGNo
QW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKworICAgICAgICAgICAgaWYgKG1f
bW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7CisgICAgICAgICAgICAgICAgaWYgKChtX2NsaWVu
dC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGV2ZW50Q29hbGVzY2VkRGVsdGFYLCBldmVu
dENvYWxlc2NlZERlbHRhWSkpIHx8IChmYWJzZihldmVudENvYWxlc2NlZERlbHRhWCkgKyBmYWJz
ZihldmVudENvYWxlc2NlZERlbHRhWSkgPD0gMCkpICYmIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGlt
ZXN0YW1wKSB7CisgICAgICAgICAgICAgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0g
dHJ1ZTsKKyAgICAgICAgICAgICAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBm
YWxzZTsKKyAgICAgICAgICAgICAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNl
LnNldFdpZHRoKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkgKyBkZWx0YVgpOworICAgICAg
ICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KG1fc3RyZXRjaFNjcm9sbEZvcmNl
LmhlaWdodCgpICsgZGVsdGFZKTsKKworICAgICAgICAgICAgRmxvYXRTaXplIGRhbXBlZERlbHRh
KGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS53
aWR0aCgpKSksIGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3Jv
bGxGb3JjZS5oZWlnaHQoKSkpKTsKKworICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNj
cm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoZGFtcGVkRGVsdGEgLSBzdHJldGNo
QW1vdW50KTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Q
cm9ncmVzcyAmJiBtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQp
IHsKKyAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAg
bV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKKyAgICAgICAgbV9sYXN0TW9tZW50dW1T
Y3JvbGxUaW1lc3RhbXAgPSAwOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorCitzdGF0
aWMgaW5saW5lIGZsb2F0IHJvdW5kVG93YXJkWmVybyhmbG9hdCBudW0pCit7CisgICAgcmV0dXJu
IG51bSA+IDAgPyBjZWlsZihudW0gLSAwLjVmKSA6IGZsb29yZihudW0gKyAwLjVmKTsKK30KKwor
c3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGZsb2F0IG51
bSkKK3sKKyAgICBmbG9hdCByb3VuZGVkTnVtID0gcm91bmRmKG51bSk7CisgICAgaWYgKGZhYnMo
bnVtIC0gcm91bmRlZE51bSkgPCAwLjEyNSkKKyAgICAgICAgbnVtID0gcm91bmRlZE51bTsKKwor
ICAgIHJldHVybiByb3VuZFRvd2FyZFplcm8obnVtKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9s
bGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKQoreworICAgIGlmICghbV9tb21lbnR1bVNj
cm9sbEluUHJvZ3Jlc3MgfHwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMpIHsKKyAgICAgICAgQ0ZU
aW1lSW50ZXJ2YWwgdGltZURlbHRhID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5j
ZURhdGVdIC0gbV9zdGFydFRpbWU7CisKKyAgICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZs
b2F0U2l6ZSgpKSB7CisgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJl
dGNoQW1vdW50KCk7CisgICAgICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXpl
KCkpIHsKKyAgICAgICAgICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworCisgICAg
ICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2UgPSBGbG9hdFNpemUoKTsKKyAgICAgICAg
ICAgICAgICBtX3N0YXJ0VGltZSA9IDA7CisgICAgICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2gg
PSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50
KCk7CisgICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKyAgICAg
ICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIG1fb3JpZ09y
aWdpbiA9IG1fY2xpZW50LT5hYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgLSBtX3N0YXJ0U3RyZXRj
aDsKKyAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gbV9tb21lbnR1bVZlbG9jaXR5OworCisg
ICAgICAgICAgICAvLyBKdXN0IGxpa2Ugbm9ybWFsIHNjcm9sbGluZywgcHJlZmVyIHZlcnRpY2Fs
IHJ1YmJlcmJhbmRpbmcKKyAgICAgICAgICAgIGlmIChmYWJzZihtX29yaWdWZWxvY2l0eS5oZWln
aHQoKSkgPj0gZmFic2YobV9vcmlnVmVsb2NpdHkud2lkdGgoKSkpCisgICAgICAgICAgICAgICAg
bV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7CisKKyAgICAgICAgICAgIC8vIERvbid0IHJ1YmJl
ci1iYW5kIGhvcml6b250YWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgaG9yaXpv
bnRhbGx5CisgICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxIb3Jpem9udGFsbHko
KSkKKyAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgwKTsKKworICAgICAg
ICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQgdmVydGljYWxseSBpZiBpdCdzIG5vdCBwb3NzaWJs
ZSB0byBzY3JvbGwgdmVydGljYWxseQorICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Ny
b2xsVmVydGljYWxseSgpKQorICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldEhlaWdo
dCgwKTsKKyAgICAgICAgfQorCisgICAgICAgIEZsb2F0UG9pbnQgZGVsdGEocm91bmRUb0Rldmlj
ZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2gu
d2lkdGgoKSwgLW1fb3JpZ1ZlbG9jaXR5LndpZHRoKCksIChmbG9hdCl0aW1lRGVsdGEpKSwKKyAg
ICAgICAgICAgIHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGlt
ZURlbHRhKG1fc3RhcnRTdHJldGNoLmhlaWdodCgpLCAtbV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCks
IChmbG9hdCl0aW1lRGVsdGEpKSk7CisKKyAgICAgICAgaWYgKGZhYnMoZGVsdGEueCgpKSA+PSAx
IHx8IGZhYnMoZGVsdGEueSgpKSA+PSAxKSB7CisgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRp
YXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGEu
eCgpLCBkZWx0YS55KCkpIC0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKSk7CisKKyAgICAgICAg
ICAgIEZsb2F0U2l6ZSBuZXdTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKwor
ICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9y
RWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2gud2lkdGgoKSkpOworICAgICAgICAgICAgbV9zdHJldGNo
U2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJl
dGNoLmhlaWdodCgpKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBtX2NsaWVudC0+
YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCk7CisKKyAgICAgICAgICAg
IHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZSA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgbV9zdGFydFRpbWUgPSAwOworICAgICAg
ICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgIG1fb3JpZ09y
aWdpbiA9IEZsb2F0UG9pbnQoKTsKKyAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRT
aXplKCk7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICBtX3N0YXJ0VGltZSA9IFtO
U0RhdGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKKyAgICAgICAgbV9zdGFydFN0
cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICB9Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6
aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0Cit7CisgICAgaWYgKCFtX2luU2Nyb2xsR2Vz
dHVyZSAmJiAhbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgIW1fc25hcFJ1YmJlcmJhbmRU
aW1lcklzQWN0aXZlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gIW1fY2xp
ZW50LT5zdHJldGNoQW1vdW50KCkuaXNaZXJvKCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxl
cjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQoreworICAgIG1fY2xpZW50LT5zdG9wU25hcFJ1
YmJlcmJhbmRUaW1lcigpOworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFs
c2U7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJhbmQoKQoreworICAg
IENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IHN5c3RlbVVwdGltZSgpIC0gbV9sYXN0TW9tZW50
dW1TY3JvbGxUaW1lc3RhbXA7CisgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1w
ICYmIHRpbWVEZWx0YSA+PSBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0KQorICAgICAgICBt
X21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKworICAgIG1faW5TY3JvbGxHZXN0dXJl
ID0gZmFsc2U7CisKKyAgICBpZiAobV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCisgICAg
ICAgIHJldHVybjsKKworICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5j
ZVJlZmVyZW5jZURhdGVdOworICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7CisgICAg
bV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOworICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRT
aXplKCk7CisKKyAgICBtX2NsaWVudC0+c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAg
bV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSB0cnVlOworfQorCitib29sIFNjcm9sbENv
bnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxh
dGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQoreworICAgIGlmICh3aGVlbEV2ZW50LmRlbHRh
WCgpID4gMCkKKyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJl
Y3Rpb24oU2Nyb2xsTGVmdCk7CisgICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPCAwKQorICAg
ICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxS
aWdodCk7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQor
CisjZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQpJbmRleDogU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0zMSw2ICszMSwxMSBAQAogI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4K
ICNpbmNsdWRlIDxzeXMvdGltZS5oPgogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyNp
bmNsdWRlICJBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgiCisjaW5jbHVkZSAiU2Nyb2xsYWJsZUFy
ZWEuaCIKKyNlbmRpZgorCiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQogCiBzdGF0aWMgTlNU
aW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKQEAgLTkxLDE3ICs5NiwyNiBAQCBzdGF0aWMgZmxv
YXQgc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCkKIAogU2Nyb2xsQ29udHJvbGxlcjo6U2Nyb2xsQ29u
dHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBjbGllbnQpCiAgICAgOiBtX2NsaWVudChj
bGllbnQpCisgICAgLCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQorICAgICwgbV9z
dGFydFRpbWUoMCkKKyAgICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcihSdW5Mb29wOjpjdXJyZW50
KCksIHRoaXMsICZTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpCisj
aWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgICwgbV9ob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyKFJ1bkxvb3A6OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENv
bnRyb2xsZXI6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCkKKyAgICAsIG1fdmVydGlj
YWxTY3JvbGxTbmFwVGltZXIoUnVuTG9vcDo6Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJv
bGxlcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCkKKyNlbmRpZgogICAgICwgbV9pblNj
cm9sbEdlc3R1cmUoZmFsc2UpCiAgICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxz
ZSkKICAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxzKGZhbHNlKQotICAgICwgbV9sYXN0TW9t
ZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAgICAsIG1fc3RhcnRUaW1lKDApCiAgICAgLCBtX3Nu
YXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkKIHsKIH0KIAogYm9vbCBTY3JvbGxDb250
cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxF
dmVudCkKIHsKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisg
ICAgaWYgKCFwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAod2hlZWxFdmVudCkpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgogICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0g
UGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbikgewogICAgICAgICAvLyBGaXJzdCwgY2hlY2sg
aWYgd2Ugc2hvdWxkIHJ1YmJlci1iYW5kIGF0IGFsbC4KICAgICAgICAgaWYgKG1fY2xpZW50LT5w
aW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoLXdoZWVsRXZlbnQuZGVsdGFYKCksIDApKQpAQCAt
MzY1LDkgKzM3OSwxNCBAQCBib29sIFNjcm9sbENvbnRyb2xsZXI6OmlzUnViYmVyQmFuZEluUHJv
CiAgICAgcmV0dXJuICFtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpLmlzWmVybygpOwogfQogCit2
b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpCit7CisgICAg
bV9zbmFwUnViYmVyYmFuZFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjApOworfQorCiB2
b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKIHsKLSAgICBt
X2NsaWVudC0+c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBtX3NuYXBSdWJiZXJiYW5k
VGltZXIuc3RvcCgpOwogICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFsc2U7
CiB9CiAKQEAgLTM4Nyw3ICs0MDYsNyBAQCB2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJi
ZXJCYW5kKCkKICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CiAgICAgbV9vcmlnVmVs
b2NpdHkgPSBGbG9hdFNpemUoKTsKIAotICAgIG1fY2xpZW50LT5zdGFydFNuYXBSdWJiZXJiYW5k
VGltZXIoKTsKKyAgICBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICBtX3NuYXBSdWJi
ZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7CiB9CiAKQEAgLTQwMSw2ICs0MjAsNzMgQEAgYm9v
bCBTY3JvbGxDb250cm9sbGVyOjpzaG91bGRSdWJiZXJCYW5kSQogICAgIHJldHVybiB0cnVlOwog
fQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorYm9vbCBT
Y3JvbGxDb250cm9sbGVyOjpwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxh
dGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQoreworICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xs
U25hcEFuaW1hdG9yKSB7CisgICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhh
bmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CisgICAgICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xs
U25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQod2hlZWxFdmVudCkpCisgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIGlmIChtX2hvcml6b250YWxTY3JvbGxT
bmFwQW5pbWF0b3IpIHsKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5o
YW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworICAgICAgICBpZiAobV9ob3Jpem9udGFsU2Ny
b2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQod2hlZWxFdmVudCkpCisg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9Cisg
ICAgCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVy
cyhjb25zdCBTY3JvbGxhYmxlQXJlYSYgc2Nyb2xsYWJsZUFyZWEpCit7CisgICAgLy8gRklYTUU6
IEN1cnJlbnRseSwgc2Nyb2xsIHNuYXAgYW5pbWF0b3JzIGFyZSByZWNyZWF0ZWQgZXZlbiB0aG91
Z2ggdGhlIHNuYXAgb2Zmc2V0cyBhbG9uZSBjYW4gYmUgdXBkYXRlZC4KKyAgICBpZiAoc2Nyb2xs
YWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRzKCkpCisgICAgICAgIG1faG9yaXpvbnRhbFNj
cm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmltYXRv
cj4odGhpcywgc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRzKCksIFNjcm9sbEV2
ZW50QXhpczo6SG9yaXpvbnRhbCk7CisgICAgZWxzZSBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25h
cEFuaW1hdG9yKQorICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxs
cHRyOworCisgICAgaWYgKHNjcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSkKKyAg
ICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhp
c1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywgc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFwT2Zm
c2V0cygpLCBTY3JvbGxFdmVudEF4aXM6OlZlcnRpY2FsKTsKKyAgICBlbHNlIGlmIChtX3ZlcnRp
Y2FsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1h
dG9yID0gbnVsbHB0cjsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdGFydFNjcm9sbFNu
YXBUaW1lcihTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3Jv
bGxDb250cm9sbGVyPiYgc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6
Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgOiBtX3ZlcnRpY2FsU2Ny
b2xsU25hcFRpbWVyOworICAgIGlmICghc2Nyb2xsU25hcFRpbWVyLmlzQWN0aXZlKCkpCisgICAg
ICAgIHNjcm9sbFNuYXBUaW1lci5zdGFydFJlcGVhdGluZygxLjAgLyA2MC4wKTsKK30KKwordm9p
ZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyBh
eGlzKQoreworICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9sbENvbnRyb2xsZXI+JiBzY3JvbGxTbmFw
VGltZXIgPSBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRh
bFNjcm9sbFNuYXBUaW1lciA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7CisgICAgc2Nyb2xs
U25hcFRpbWVyLnN0b3AoKTsKK30KKyAgICAKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6aG9yaXpv
bnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKK3sKKyAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xs
U25hcEFuaW1hdG9yKQorICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNj
cm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjp2
ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKK3sKKyAgICBpZiAobV92ZXJ0aWNhbFNjcm9s
bFNuYXBBbmltYXRvcikKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+c2Ny
b2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOworfQorCitMYXlvdXRVbml0IFNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICByZXR1
cm4gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhheGlzKTsKK30KKwordm9pZCBTY3JvbGxD
b250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMsIGZs
b2F0IGRlbHRhKQoreworICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxPbkF4aXMoYXhpcywg
ZGVsdGEpOworfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8v
IEVOQUJMRShSVUJCRVJfQkFORElORykKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9BeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAkocmV2aXNpb24gMTgwODg5KQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAko
d29ya2luZyBjb3B5KQpAQCAtNTcsOCArNTcsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB+
QXhpc1Njcm9sbFNuYXBBbmltYXRvckNsaWVudCgpIHsgfQogCiBwdWJsaWM6Ci0gICAgdmlydHVh
bCBMYXlvdXRVbml0IHNjcm9sbE9mZnNldEluQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKLSAg
ICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxv
YXQgdmVsb2NpdHkpID0gMDsKKyAgICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25B
eGlzKFNjcm9sbEV2ZW50QXhpcykgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3Jv
bGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCB2ZWxvY2l0eSkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpID0gMDsKIH07
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRv
ci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9s
bFNuYXBBbmltYXRvci5tbQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0JKHdvcmtpbmcgY29weSkKQEAgLTEx
Nyw3ICsxMTcsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmhhbmRsZVdoZWVsCiAg
ICAgICAgIC8vIEJlZ2luIHRyYWNraW5nIHdoZWVsIGRlbHRhcyBmb3IgZ2xpZGUgcHJlZGljdGlv
bi4KICAgICAgICAgZW5kU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3RhdGU6OlVzZXJJ
bnRlcmFjdGlvbik7CiAgICAgICAgIHB1c2hJbml0aWFsV2hlZWxEZWx0YSh3aGVlbERlbHRhKTsK
LSAgICAgICAgbV9iZWdpblRyYWNraW5nV2hlZWxEZWx0YU9mZnNldCA9IG1fY2xpZW50LT5zY3Jv
bGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAgICAgICAgbV9iZWdpblRyYWNraW5nV2hlZWxEZWx0
YU9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlzKTsKICAgICAgICAg
YnJlYWs7CiAKICAgICBjYXNlIFdoZWVsRXZlbnRTdGF0dXM6OkluZXJ0aWFsU2Nyb2xsaW5nOgpA
QCAtMTUzLDcgKzE1Myw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6c2Nyb2xsU25h
cEEKICAgICBBU1NFUlQobV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5n
IHx8IG1fY3VycmVudFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcpOwogICAgIGZs
b2F0IGRlbHRhID0gbV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyA/
IGNvbXB1dGVTbmFwRGVsdGEoKSA6IGNvbXB1dGVHbGlkZURlbHRhKCk7CiAgICAgaWYgKGRlbHRh
KQotICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKG1fYXhpcywgZGVsdGEp
OworICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsT25BeGlzKG1fYXhpcywgZGVsdGEp
OwogICAgIGVsc2UKICAgICAgICAgZW5kU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3Rh
dGU6OkRlc3RpbmF0aW9uUmVhY2hlZCk7CiB9CkBAIC0xNjEsNyArMTYxLDcgQEAgdm9pZCBBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yOjpzY3JvbGxTbmFwQQogdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yOjpiZWdpblNjcm9sbFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlIG5ld1N0YXRlKQog
ewogICAgIEFTU0VSVChuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgfHwgbmV3
U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyk7Ci0gICAgTGF5b3V0VW5pdCBvZmZz
ZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5b3V0VW5p
dCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgZmxv
YXQgaW5pdGlhbFdoZWVsRGVsdGEgPSBuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRp
bmcgPyBhdmVyYWdlSW5pdGlhbFdoZWVsRGVsdGEoKSA6IDA7CiAgICAgTGF5b3V0VW5pdCBwcm9q
ZWN0ZWRTY3JvbGxEZXN0aW5hdGlvbiA9IG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xp
ZGluZyA/IG1fYmVnaW5UcmFja2luZ1doZWVsRGVsdGFPZmZzZXQgKyBMYXlvdXRVbml0KHByb2pl
Y3RlZEluZXJ0aWFsU2Nyb2xsRGlzdGFuY2UoaW5pdGlhbFdoZWVsRGVsdGEpKSA6IG9mZnNldDsK
ICAgICBwcm9qZWN0ZWRTY3JvbGxEZXN0aW5hdGlvbiA9IHN0ZDo6bWluKHN0ZDo6bWF4KHByb2pl
Y3RlZFNjcm9sbERlc3RpbmF0aW9uLCBtX3NuYXBPZmZzZXRzLT5maXJzdCgpKSwgbV9zbmFwT2Zm
c2V0cy0+bGFzdCgpKTsKQEAgLTIwMyw3ICsyMDMsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFwQW5p
bWF0b3I6OmVuZFNjcm9sbFNuCiAvLyByZWxhdGlvbnNoaXAgb2YgdGhlIGRpc3RhbmNlIHRyYXZl
bGVkLCBjbGFtcGVkIGJ5IGFyYml0cmFyeSBtaW4gYW5kIG1heCB2YWx1ZXMuCiBmbG9hdCBBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yOjpjb21wdXRlU25hcERlbHRhKCkgY29uc3QKIHsKLSAgICBMYXlv
dXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAg
ICBMYXlvdXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlz
KTsKICAgICBib29sIGNhbkNvbXB1dGVTbmFwID0gIChtX2luaXRpYWxPZmZzZXQgPD0gb2Zmc2V0
ICYmIG9mZnNldCA8IG1fdGFyZ2V0T2Zmc2V0KSB8fCAobV90YXJnZXRPZmZzZXQgPCBvZmZzZXQg
JiYgb2Zmc2V0IDw9IG1faW5pdGlhbE9mZnNldCk7CiAgICAgaWYgKG1fY3VycmVudFN0YXRlICE9
IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcgfHwgIWNhbkNvbXB1dGVTbmFwKQogICAgICAgICBy
ZXR1cm4gMDsKQEAgLTIzNyw3ICsyMzcsNyBAQCBmbG9hdCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9y
Ojpjb21wdXRlU25hCiAvLyBhbmQgVkYuIFRodXMsIHdlIGNhbiBleHByZXNzIG91ciBnbGlkaW5n
IGVxdWF0aW9uIGFsbCBpbiB0ZXJtcyBvZiBWMCwgVkYgYW5kIHQuCiBmbG9hdCBBeGlzU2Nyb2xs
U25hcEFuaW1hdG9yOjpjb21wdXRlR2xpZGVEZWx0YSgpIGNvbnN0CiB7Ci0gICAgTGF5b3V0VW5p
dCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5
b3V0VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAg
ICAgYm9vbCBjYW5Db21wdXRlR2xpZGUgPSAobV9pbml0aWFsT2Zmc2V0IDw9IG9mZnNldCAmJiBv
ZmZzZXQgPCBtX3RhcmdldE9mZnNldCkgfHwgKG1fdGFyZ2V0T2Zmc2V0IDwgb2Zmc2V0ICYmIG9m
ZnNldCA8PSBtX2luaXRpYWxPZmZzZXQpOwogICAgIGlmIChtX2N1cnJlbnRTdGF0ZSAhPSBTY3Jv
bGxTbmFwU3RhdGU6OkdsaWRpbmcgfHwgIWNhbkNvbXB1dGVHbGlkZSkKICAgICAgICAgcmV0dXJu
IDA7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0
b3JNYWMuaAkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1Njcm9sbEFuaW1hdG9yTWFjLmgJKHdvcmtpbmcgY29weSkKQEAgLTMyLDcgKzMyLDYgQEAKICNp
bmNsdWRlICJGbG9hdFBvaW50LmgiCiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCiAjaW5jbHVkZSAi
U2Nyb2xsQW5pbWF0b3IuaCIKLSNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjaW5jbHVk
ZSAiVGltZXIuaCIKICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKQEAgLTQyLDE1ICs0MSwx
MSBAQCBPQkpDX0NMQVNTIFdlYlNjcm9sbGJhclBhaW50ZXJEZWxlZ2F0ZTsKIAogdHlwZWRlZiBp
ZCBTY3JvbGxiYXJQYWludGVyQ29udHJvbGxlcjsKIAotI2lmICFFTkFCTEUoUlVCQkVSX0JBTkRJ
TkcpCi1jbGFzcyBTY3JvbGxDb250cm9sbGVyQ2xpZW50IHsgfTsKLSNlbmRpZgotCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIGNsYXNzIFNjcm9sbGJhcjsKIAotY2xhc3MgU2Nyb2xsQW5pbWF0b3JN
YWMgOiBwdWJsaWMgU2Nyb2xsQW5pbWF0b3IsIHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNsaWVu
dCB7CitjbGFzcyBTY3JvbGxBbmltYXRvck1hYyA6IHB1YmxpYyBTY3JvbGxBbmltYXRvciB7CiAK
IHB1YmxpYzoKICAgICBTY3JvbGxBbmltYXRvck1hYyhTY3JvbGxhYmxlQXJlYSYpOwpAQCAtMTUw
LDE3ICsxNDUsMTEgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50IGFi
c29sdXRlU2Nyb2xsUG9zaXRpb24oKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUm
KSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxv
YXRTaXplJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRU
aW1lcigpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1l
cigpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91
bmRzSWZOZWNlc3NhcnkoKSBvdmVycmlkZTsKIAogICAgIGJvb2wgcGlubmVkSW5EaXJlY3Rpb24o
ZmxvYXQgZGVsdGFYLCBmbG9hdCBkZWx0YVkpOwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1l
ckZpcmVkKCk7CiAKICAgICBib29sIGlzQWxyZWFkeVBpbm5lZEluRGlyZWN0aW9uT2ZHZXN0dXJl
KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYsIFNjcm9sbEV2ZW50QXhpcyk7Ci0KLSAgICBTY3Jv
bGxDb250cm9sbGVyIG1fc2Nyb2xsQ29udHJvbGxlcjsKLSAgICBUaW1lciBtX3NuYXBSdWJiZXJC
YW5kVGltZXI7CiAjZW5kaWYKIAogICAgIGJvb2wgbV9oYXZlU2Nyb2xsZWRTaW5jZVBhZ2VMb2Fk
OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRv
ck1hYy5tbQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1Njcm9sbEFuaW1hdG9yTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC02NDMsMTAgKzY0Myw2IEBA
IFNjcm9sbEFuaW1hdG9yTWFjOjpTY3JvbGxBbmltYXRvck1hYyhTY3IKICAgICA6IFNjcm9sbEFu
aW1hdG9yKHNjcm9sbGFibGVBcmVhKQogICAgICwgbV9pbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1l
cigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjppbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1lckZp
cmVkKQogICAgICwgbV9zZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyKCp0aGlzLCAmU2Nyb2xs
QW5pbWF0b3JNYWM6OnNlbmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXJGaXJlZCkKLSNpZiBFTkFC
TEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgLCBtX3Njcm9sbENvbnRyb2xsZXIodGhpcykKLSAgICAs
IG1fc25hcFJ1YmJlckJhbmRUaW1lcigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjpzbmFwUnVi
YmVyQmFuZFRpbWVyRmlyZWQpCi0jZW5kaWYKICAgICAsIG1faGF2ZVNjcm9sbGVkU2luY2VQYWdl
TG9hZChmYWxzZSkKICAgICAsIG1fbmVlZHNTY3JvbGxlclN0eWxlVXBkYXRlKGZhbHNlKQogewpA
QCAtMTI3MCwyMSArMTI2Niw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OmltbWVkaWF0ZVNj
cm9sbEIKICAgICBtX2N1cnJlbnRQb3NZID0gbmV3UG9zLnkoKTsKICAgICBub3RpZnlQb3NpdGlv
bkNoYW5nZWQoYWRqdXN0ZWREZWx0YSk7CiB9Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnN0
YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9zbmFwUnViYmVyQmFuZFRpbWVyLnN0
YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpz
dG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9zbmFwUnViYmVyQmFuZFRpbWVyLnN0
b3AoKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZp
cmVkKCkKLXsKLSAgICBtX3Njcm9sbENvbnRyb2xsZXIuc25hcFJ1YmJlckJhbmRUaW1lckZpcmVk
KCk7Ci19CiAjZW5kaWYKIAogdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6dXBkYXRlU2Nyb2xsZXJT
dHlsZSgpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxl
ci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250
cm9sbGVyLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsMTA3ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaWZuZGVmIFNjcm9sbENvbnRyb2xsZXJfaAotI2RlZmluZSBTY3JvbGxDb250
cm9sbGVyX2gKLQotI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLQotI2luY2x1ZGUgIkZsb2F0
UG9pbnQuaCIKLSNpbmNsdWRlICJGbG9hdFNpemUuaCIKLSNpbmNsdWRlICJTY3JvbGxUeXBlcy5o
IgotI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0K
LWNsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKLQotY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNsaWVu
dCB7Ci1wcm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+U2Nyb2xsQ29udHJvbGxlckNsaWVudCgpIHsg
fQotCi1wdWJsaWM6Ci0gICAgdmlydHVhbCBib29sIGFsbG93c0hvcml6b250YWxTdHJldGNoaW5n
KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgYWxsb3dz
VmVydGljYWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKLSAgICB2
aXJ0dWFsIEludFNpemUgc3RyZXRjaEFtb3VudCgpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgcGlu
bmVkSW5EaXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBj
YW5TY3JvbGxIb3Jpem9udGFsbHkoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIGNhblNjcm9sbFZl
cnRpY2FsbHkoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIHNob3VsZFJ1YmJlckJhbmRJbkRpcmVj
dGlvbihTY3JvbGxEaXJlY3Rpb24pID0gMDsKLQotICAgIC8vIFJldHVybiB0aGUgYWJzb2x1dGUg
c2Nyb2xsIHBvc2l0aW9uLCBub3QgcmVsYXRpdmUgdG8gdGhlIHNjcm9sbCBvcmlnaW4uCi0gICAg
dmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgPSAwOwot
Ci0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0g
MDsKLSAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VD
b25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0
U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJi
ZXJiYW5kVGltZXIoKSA9IDA7Ci0KLSAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRp
b24gaXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UK
LSAgICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9pbnQu
Ci0gICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2Fy
eSgpID0gMDsKLX07Ci0KLWNsYXNzIFNjcm9sbENvbnRyb2xsZXIgewotICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKFNjcm9sbENvbnRyb2xsZXIpOwotCi1wdWJsaWM6Ci0gICAgZXhwbGljaXQgU2Ny
b2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50Kik7Ci0KLSAgICBib29sIGhhbmRs
ZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0gICAgdm9pZCBzbmFwUnVi
YmVyQmFuZFRpbWVyRmlyZWQoKTsKLQotICAgIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygp
IGNvbnN0OwotCi1wcml2YXRlOgotICAgIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsK
LSAgICB2b2lkIHNuYXBSdWJiZXJCYW5kKCk7Ci0KLSAgICBib29sIHNob3VsZFJ1YmJlckJhbmRJ
bkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0KLSAgICBT
Y3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKLQotICAgIGJvb2wgbV9pblNjcm9sbEdl
c3R1cmU7Ci0gICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsKLSAgICBib29sIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzOwotICAgIAotICAgIENGVGltZUludGVydmFsIG1fbGFzdE1v
bWVudHVtU2Nyb2xsVGltZXN0YW1wOwotICAgIEZsb2F0U2l6ZSBtX292ZXJmbG93U2Nyb2xsRGVs
dGE7Ci0gICAgRmxvYXRTaXplIG1fc3RyZXRjaFNjcm9sbEZvcmNlOwotICAgIEZsb2F0U2l6ZSBt
X21vbWVudHVtVmVsb2NpdHk7Ci0KLSAgICAvLyBSdWJiZXIgYmFuZCBzdGF0ZS4KLSAgICBDRlRp
bWVJbnRlcnZhbCBtX3N0YXJ0VGltZTsKLSAgICBGbG9hdFNpemUgbV9zdGFydFN0cmV0Y2g7Ci0g
ICAgRmxvYXRQb2ludCBtX29yaWdPcmlnaW47Ci0gICAgRmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5
OwotCi0gICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJfQkFORElORykKLQot
I2VuZGlmIC8vIFNjcm9sbENvbnRyb2xsZXJfaApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDQwNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDE0LTIw
MTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgotCi0jaW5jbHVkZSAiUGxh
dGZvcm1XaGVlbEV2ZW50LmgiCi0jaW5jbHVkZSAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIgot
I2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KLSNpbmNsdWRlIDxzeXMvdGltZS5oPgotCi0jaWYgRU5B
QkxFKFJVQkJFUl9CQU5ESU5HKQotCi1zdGF0aWMgTlNUaW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1l
KCkKLXsKLSAgICBpZiAoW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSByZXNwb25kc1RvU2Vs
ZWN0b3I6QHNlbGVjdG9yKHN5c3RlbVVwdGltZSldKQotICAgICAgICByZXR1cm4gW1tOU1Byb2Nl
c3NJbmZvIHByb2Nlc3NJbmZvXSBzeXN0ZW1VcHRpbWVdOwotCi0gICAgLy8gR2V0IGhvdyBsb25n
IHN5c3RlbSBoYXMgYmVlbiB1cC4gRm91bmQgYnkgbG9va2luZyBnZXR0aW5nICJib290dGltZSIg
ZnJvbSB0aGUga2VybmVsLgotICAgIHN0YXRpYyBzdHJ1Y3QgdGltZXZhbCBib290dGltZSA9IHsw
LCAwfTsKLSAgICBpZiAoIWJvb3R0aW1lLnR2X3NlYykgewotICAgICAgICBpbnQgbWliWzJdID0g
e0NUTF9LRVJOLCBLRVJOX0JPT1RUSU1FfTsKLSAgICAgICAgc2l6ZV90IHNpemUgPSBzaXplb2Yo
Ym9vdHRpbWUpOwotICAgICAgICBpZiAoLTEgPT0gc3lzY3RsKG1pYiwgMiwgJmJvb3R0aW1lLCAm
c2l6ZSwgMCwgMCkpCi0gICAgICAgICAgICBib290dGltZS50dl9zZWMgPSAwOwotICAgIH0KLSAg
ICBzdHJ1Y3QgdGltZXZhbCBub3c7Ci0gICAgaWYgKGJvb3R0aW1lLnR2X3NlYyAmJiAtMSAhPSBn
ZXR0aW1lb2ZkYXkoJm5vdywgMCkpIHsKLSAgICAgICAgc3RydWN0IHRpbWV2YWwgdXB0aW1lOwot
ICAgICAgICB0aW1lcnN1Yigmbm93LCAmYm9vdHRpbWUsICZ1cHRpbWUpOwotICAgICAgICBOU1Rp
bWVJbnRlcnZhbCByZXN1bHQgPSB1cHRpbWUudHZfc2VjICsgKHVwdGltZS50dl91c2VjIC8gMUUr
Nik7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAgfQotICAgIHJldHVybiAwOwotfQotCi0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotc3RhdGljIGNvbnN0IGZsb2F0IHNjcm9sbFZlbG9jaXR5
WmVyb2luZ1RpbWVvdXQgPSAwLjEwZjsKLXN0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5kRGly
ZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbyA9IDE7Ci1zdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFu
ZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCA9IDEwOwotCi1zdGF0aWMgZmxvYXQg
ZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKGZsb2F0IGluaXRpYWxQb3NpdGlvbiwgZmxvYXQgaW5p
dGlhbFZlbG9jaXR5LCBmbG9hdCBlbGFwc2VkVGltZSkKLXsKLSAgICByZXR1cm4gd2tOU0VsYXN0
aWNEZWx0YUZvclRpbWVEZWx0YShpbml0aWFsUG9zaXRpb24sIGluaXRpYWxWZWxvY2l0eSwgZWxh
cHNlZFRpbWUpOwotfQotCi1zdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRh
KGZsb2F0IGRlbHRhKQotewotICAgIHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERl
bHRhKGRlbHRhKTsKLX0KLQotc3RhdGljIGZsb2F0IHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0
YShmbG9hdCBkZWx0YSkKLXsKLSAgICByZXR1cm4gd2tOU1JlYm91bmREZWx0YUZvckVsYXN0aWNE
ZWx0YShkZWx0YSk7Ci19Ci0KLXN0YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKQot
ewotICAgIHN0YXRpYyBmbG9hdCBtdWx0aXBsaWVyID0gLTE7Ci0gICAgaWYgKG11bHRpcGxpZXIg
PCAwKSB7Ci0gICAgICAgIG11bHRpcGxpZXIgPSBbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNl
ckRlZmF1bHRzXSBmbG9hdEZvcktleTpAIk5TU2Nyb2xsV2hlZWxNdWx0aXBsaWVyIl07Ci0gICAg
ICAgIGlmIChtdWx0aXBsaWVyIDw9IDApCi0gICAgICAgICAgICBtdWx0aXBsaWVyID0gMTsKLSAg
ICB9Ci0gICAgcmV0dXJuIG11bHRpcGxpZXI7Ci19Ci0KLVNjcm9sbENvbnRyb2xsZXI6OlNjcm9s
bENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCogY2xpZW50KQotICAgIDogbV9jbGll
bnQoY2xpZW50KQotICAgICwgbV9pblNjcm9sbEdlc3R1cmUoZmFsc2UpCi0gICAgLCBtX21vbWVu
dHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxzZSkKLSAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxz
KGZhbHNlKQotICAgICwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAgICAsIG1f
c3RhcnRUaW1lKDApCi0gICAgLCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkK
LXsKLX0KLQotYm9vbCBTY3JvbGxDb250cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBs
YXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKLXsKLSAgICBpZiAod2hlZWxFdmVudC5waGFz
ZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4pIHsKLSAgICAgICAgLy8gRmlyc3Qs
IGNoZWNrIGlmIHdlIHNob3VsZCBydWJiZXItYmFuZCBhdCBhbGwuCi0gICAgICAgIGlmIChtX2Ns
aWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKC13aGVlbEV2ZW50LmRlbHRhWCgpLCAw
KSkKLSAgICAgICAgICAgICYmICFzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9u
KHdoZWVsRXZlbnQpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgIG1faW5T
Y3JvbGxHZXN0dXJlID0gdHJ1ZTsKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3Mg
PSBmYWxzZTsKLSAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAgICAg
ICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAwOwotICAgICAgICBtX21vbWVudHVt
VmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLQotICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQg
PSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3Jj
ZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC53aWR0
aCgpKSk7Ci0gICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJvdW5kRGVs
dGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC5oZWlnaHQoKSkpOwotICAgICAgICBtX292
ZXJmbG93U2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKLQotICAgICAgICBzdG9wU25hcFJ1YmJl
cmJhbmRUaW1lcigpOwotCi0gICAgICAgIHJldHVybiB0cnVlOwotICAgIH0KLQotICAgIGlmICh3
aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAg
ICAgICBzbmFwUnViYmVyQmFuZCgpOwotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0KLSAg
ICBib29sIGlzTW9tZW50dW1TY3JvbGxFdmVudCA9ICh3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2Uo
KSAhPSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZU5vbmUpOwotICAgIGlmIChtX2lnbm9yZU1vbWVu
dHVtU2Nyb2xscyAmJiAoaXNNb21lbnR1bVNjcm9sbEV2ZW50IHx8IG1fc25hcFJ1YmJlcmJhbmRU
aW1lcklzQWN0aXZlKSkgewotICAgICAgICBpZiAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCkg
PT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAgICAgICAgICAgbV9pZ25vcmVN
b21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAg
ICB9Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICBmbG9hdCBkZWx0YVggPSBt
X292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKTsKLSAgICBmbG9hdCBkZWx0YVkgPSBtX292ZXJm
bG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCk7Ci0KLSAgICAvLyBSZXNldCBvdmVyZmxvdyB2YWx1ZXMg
YmVjYXVzZSB3ZSBtYXkgZGVjaWRlIHRvIHJlbW92ZSBkZWx0YSBhdCB2YXJpb3VzIHBvaW50cyBh
bmQgcHV0IGl0IGludG8gb3ZlcmZsb3cuCi0gICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxv
YXRTaXplKCk7Ci0KLSAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRj
aEFtb3VudCgpOwotICAgIGJvb2wgaXNWZXJ0aWNhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFtb3Vu
dC5oZWlnaHQoKTsKLSAgICBib29sIGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFt
b3VudC53aWR0aCgpOwotCi0gICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVg7Ci0gICAgZmxv
YXQgZXZlbnRDb2FsZXNjZWREZWx0YVk7Ci0KLSAgICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRjaGVk
IHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7Ci0gICAgICAgIGV2ZW50Q29hbGVzY2VkRGVs
dGFYID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWCgpOwotICAgICAg
ICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxp
bmdEZWx0YVkoKTsKLSAgICB9IGVsc2UgewotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9
IC13aGVlbEV2ZW50LmRlbHRhWCgpOwotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13
aGVlbEV2ZW50LmRlbHRhWSgpOwotICAgIH0KLQotICAgIGRlbHRhWCArPSBldmVudENvYWxlc2Nl
ZERlbHRhWDsKLSAgICBkZWx0YVkgKz0gZXZlbnRDb2FsZXNjZWREZWx0YVk7Ci0KLSAgICAvLyBT
bGlnaHRseSBwcmVmZXIgc2Nyb2xsaW5nIHZlcnRpY2FsbHkgYnkgYXBwbHlpbmcgdGhlID0gY2Fz
ZSB0byBkZWx0YVkKLSAgICBpZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJzZihkZWx0YVgpKQotICAg
ICAgICBkZWx0YVggPSAwOwotICAgIGVsc2UKLSAgICAgICAgZGVsdGFZID0gMDsKLQotICAgIGJv
b2wgc2hvdWxkU3RyZXRjaCA9IGZhbHNlOwotCi0gICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2Ug
bW9tZW50dW1QaGFzZSA9IHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpOwotCi0gICAgLy8gSWYg
d2UgYXJlIHN0YXJ0aW5nIG1vbWVudHVtIHNjcm9sbGluZyB0aGVuIGRvIHNvbWUgc2V0dXAuCi0g
ICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAobW9tZW50dW1QaGFzZSA9PSBQ
bGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuIHx8IG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1X
aGVlbEV2ZW50UGhhc2VDaGFuZ2VkKSkKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jl
c3MgPSB0cnVlOwotCi0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gd2hlZWxFdmVudC50
aW1lc3RhbXAoKSAtIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOwotICAgIGlmIChtX2lu
U2Nyb2xsR2VzdHVyZSB8fCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykgewotICAgICAgICBp
ZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID4gMCAmJiB0aW1l
RGVsdGEgPCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0KSB7Ci0gICAgICAgICAgICBtX21v
bWVudHVtVmVsb2NpdHkuc2V0V2lkdGgoZXZlbnRDb2FsZXNjZWREZWx0YVggLyAoZmxvYXQpdGlt
ZURlbHRhKTsKLSAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eS5zZXRIZWlnaHQoZXZlbnRD
b2FsZXNjZWREZWx0YVkgLyAoZmxvYXQpdGltZURlbHRhKTsKLSAgICAgICAgICAgIG1fbGFzdE1v
bWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsKLSAgICAgICAg
fSBlbHNlIHsKLSAgICAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hl
ZWxFdmVudC50aW1lc3RhbXAoKTsKLSAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZs
b2F0U2l6ZSgpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGlzVmVydGljYWxseVN0cmV0Y2hl
ZCkgewotICAgICAgICAgICAgaWYgKCFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiBtX2NsaWVu
dC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7Ci0gICAgICAgICAg
ICAgICAgLy8gU3RyZXRjaGluZyBvbmx5IGluIHRoZSB2ZXJ0aWNhbC4KLSAgICAgICAgICAgICAg
ICBpZiAoZGVsdGFZICYmIChmYWJzZihkZWx0YVggLyBkZWx0YVkpIDwgcnViYmVyYmFuZERpcmVj
dGlvbkxvY2tTdHJldGNoUmF0aW8pKQotICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwot
ICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11
bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1fb3Zl
cmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSAr
IGRlbHRhWCk7Ci0gICAgICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7Ci0gICAgICAgICAgICAg
ICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRX
aWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIH0gZWxzZSBpZiAoaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKLSAgICAg
ICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgaG9yaXpvbnRhbC4KLSAgICAgICAgICAg
IGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkpKSB7
Ci0gICAgICAgICAgICAgICAgaWYgKGRlbHRhWCAmJiAoZmFic2YoZGVsdGFZIC8gZGVsdGFYKSA8
IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKLSAgICAgICAgICAgICAgICAg
ICAgZGVsdGFZID0gMDsKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVkpIDwg
cnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgewotICAgICAgICAg
ICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3Jv
bGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7Ci0gICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9
IDA7Ci0gICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZs
b3dTY3JvbGxEZWx0YS5zZXRIZWlnaHQobV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpICsg
ZGVsdGFZKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIC8v
IE5vdCBzdHJldGNoaW5nIGF0IGFsbCB5ZXQuCi0gICAgICAgICAgICBpZiAobV9jbGllbnQtPnBp
bm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIGRlbHRhWSkpKSB7Ci0gICAgICAgICAg
ICAgICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkgewotICAgICAgICAgICAg
ICAgICAgICBpZiAoZmFic2YoZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0
YUJlZm9yZVN0cmV0Y2gpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3Jv
bGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAgICAg
ICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5z
ZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgICAgIHNob3VsZFN0cmV0Y2ggPSB0cnVlOwotICAgICAg
ICAgICAgfQotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGRlbHRhWCB8fCBkZWx0YVkpIHsK
LSAgICAgICAgaWYgKCEoc2hvdWxkU3RyZXRjaCB8fCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgfHwg
aXNIb3Jpem9udGFsbHlTdHJldGNoZWQpKSB7Ci0gICAgICAgICAgICBpZiAoZGVsdGFZKSB7Ci0g
ICAgICAgICAgICAgICAgZGVsdGFZICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotICAgICAg
ICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoMCwgZGVsdGFZ
KSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoZGVsdGFYKSB7Ci0gICAgICAgICAg
ICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotICAgICAgICAgICAgICAg
IG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoZGVsdGFYLCAwKSk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5h
bGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgewotICAgICAgICAgICAgICAg
IGRlbHRhWCA9IDA7Ci0gICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAwOwot
ICAgICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVggJiYgIWlzSG9yaXpvbnRhbGx5U3RyZXRjaGVk
ICYmICFtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7
Ci0gICAgICAgICAgICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotCi0g
ICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRF
ZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKGRlbHRhWCwgMCkpOwotICAgICAgICAgICAgICAgIGRl
bHRhWCA9IDA7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmFs
bG93c1ZlcnRpY2FsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgewotICAgICAgICAgICAgICAgIGRl
bHRhWSA9IDA7Ci0gICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAwOwotICAg
ICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVkgJiYgIWlzVmVydGljYWxseVN0cmV0Y2hlZCAmJiAh
bV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgewotICAg
ICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLQotICAgICAg
ICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNv
bnN0cmFpbnRzKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKTsKLSAgICAgICAgICAgICAgICBkZWx0YVkg
PSAwOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQg
PSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotCi0gICAgICAgICAgICBpZiAobV9tb21lbnR1
bVNjcm9sbEluUHJvZ3Jlc3MpIHsKLSAgICAgICAgICAgICAgICBpZiAoKG1fY2xpZW50LT5waW5u
ZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZXZlbnRDb2FsZXNjZWREZWx0YVgsIGV2ZW50Q29hbGVz
Y2VkRGVsdGFZKSkgfHwgKGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFYKSArIGZhYnNmKGV2ZW50
Q29hbGVzY2VkRGVsdGFZKSA8PSAwKSkgJiYgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAp
IHsKLSAgICAgICAgICAgICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSB0cnVlOwot
ICAgICAgICAgICAgICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOwot
ICAgICAgICAgICAgICAgICAgICBzbmFwUnViYmVyQmFuZCgpOwotICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lk
dGgobV9zdHJldGNoU2Nyb2xsRm9yY2Uud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAgICBt
X3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQobV9zdHJldGNoU2Nyb2xsRm9yY2UuaGVpZ2h0
KCkgKyBkZWx0YVkpOwotCi0gICAgICAgICAgICBGbG9hdFNpemUgZGFtcGVkRGVsdGEoY2VpbGYo
ZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkp
KSwgY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNl
LmhlaWdodCgpKSkpOwotCi0gICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlX
aXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhkYW1wZWREZWx0YSAtIHN0cmV0Y2hBbW91bnQp
OwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNz
ICYmIG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAg
ICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOwotICAgICAgICBtX2lnbm9y
ZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOwotICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRp
bWVzdGFtcCA9IDA7Ci0gICAgfQotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXN0YXRpYyBpbmxp
bmUgZmxvYXQgcm91bmRUb3dhcmRaZXJvKGZsb2F0IG51bSkKLXsKLSAgICByZXR1cm4gbnVtID4g
MCA/IGNlaWxmKG51bSAtIDAuNWYpIDogZmxvb3JmKG51bSArIDAuNWYpOwotfQotCi1zdGF0aWMg
aW5saW5lIGZsb2F0IHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZmxvYXQgbnVtKQotewot
ICAgIGZsb2F0IHJvdW5kZWROdW0gPSByb3VuZGYobnVtKTsKLSAgICBpZiAoZmFicyhudW0gLSBy
b3VuZGVkTnVtKSA8IDAuMTI1KQotICAgICAgICBudW0gPSByb3VuZGVkTnVtOwotCi0gICAgcmV0
dXJuIHJvdW5kVG93YXJkWmVybyhudW0pOwotfQotCi12b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNu
YXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCi17Ci0gICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Q
cm9ncmVzcyB8fCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscykgewotICAgICAgICBDRlRpbWVJbnRl
cnZhbCB0aW1lRGVsdGEgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV0g
LSBtX3N0YXJ0VGltZTsKLQotICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXpl
KCkpIHsKLSAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91
bnQoKTsKLSAgICAgICAgICAgIGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNpemUoKSkgewot
ICAgICAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0KLSAgICAgICAgICAg
ICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgICAg
IG1fc3RhcnRUaW1lID0gMDsKLSAgICAgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0
U2l6ZSgpOwotICAgICAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKLSAg
ICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAg
ICAgIHJldHVybjsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0g
bV9jbGllbnQtPmFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSAtIG1fc3RhcnRTdHJldGNoOwotICAg
ICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBtX21vbWVudHVtVmVsb2NpdHk7Ci0KLSAgICAgICAg
ICAgIC8vIEp1c3QgbGlrZSBub3JtYWwgc2Nyb2xsaW5nLCBwcmVmZXIgdmVydGljYWwgcnViYmVy
YmFuZGluZwotICAgICAgICAgICAgaWYgKGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgpKSA+
PSBmYWJzZihtX29yaWdWZWxvY2l0eS53aWR0aCgpKSkKLSAgICAgICAgICAgICAgICBtX29yaWdW
ZWxvY2l0eS5zZXRXaWR0aCgwKTsKLQotICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQg
aG9yaXpvbnRhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCBob3Jpem9udGFsbHkK
LSAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmNhblNjcm9sbEhvcml6b250YWxseSgpKQotICAg
ICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldFdpZHRoKDApOwotCi0gICAgICAgICAgICAv
LyBEb24ndCBydWJiZXItYmFuZCB2ZXJ0aWNhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNj
cm9sbCB2ZXJ0aWNhbGx5Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxWZXJ0
aWNhbGx5KCkpCi0gICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0SGVpZ2h0KDApOwot
ICAgICAgICB9Ci0KLSAgICAgICAgRmxvYXRQb2ludCBkZWx0YShyb3VuZFRvRGV2aWNlUGl4ZWxU
b3dhcmRaZXJvKGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShtX3N0YXJ0U3RyZXRjaC53aWR0aCgp
LCAtbV9vcmlnVmVsb2NpdHkud2lkdGgoKSwgKGZsb2F0KXRpbWVEZWx0YSkpLAotICAgICAgICAg
ICAgcm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEo
bV9zdGFydFN0cmV0Y2guaGVpZ2h0KCksIC1tX29yaWdWZWxvY2l0eS5oZWlnaHQoKSwgKGZsb2F0
KXRpbWVEZWx0YSkpKTsKLQotICAgICAgICBpZiAoZmFicyhkZWx0YS54KCkpID49IDEgfHwgZmFi
cyhkZWx0YS55KCkpID49IDEpIHsKLSAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3Jv
bGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YS54KCksIGRl
bHRhLnkoKSkgLSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpKTsKLQotICAgICAgICAgICAgRmxv
YXRTaXplIG5ld1N0cmV0Y2ggPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotCi0gICAgICAg
ICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGlj
RGVsdGEobmV3U3RyZXRjaC53aWR0aCgpKSk7Ci0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZS5zZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2guaGVp
Z2h0KCkpKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIG1fY2xpZW50LT5hZGp1c3RT
Y3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKTsKLQotICAgICAgICAgICAgc3RvcFNu
YXBSdWJiZXJiYW5kVGltZXIoKTsKLSAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlID0g
RmxvYXRTaXplKCk7Ci0gICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7Ci0gICAgICAgICAgICBt
X3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0g
RmxvYXRQb2ludCgpOwotICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsK
LSAgICAgICAgfQotICAgIH0gZWxzZSB7Ci0gICAgICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0
aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOwotICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9
IEZsb2F0U2l6ZSgpOwotICAgIH0KLX0KLQotYm9vbCBTY3JvbGxDb250cm9sbGVyOjppc1J1YmJl
ckJhbmRJblByb2dyZXNzKCkgY29uc3QKLXsKLSAgICBpZiAoIW1faW5TY3JvbGxHZXN0dXJlICYm
ICFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAhbV9zbmFwUnViYmVyYmFuZFRpbWVySXNB
Y3RpdmUpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJldHVybiAhbV9jbGllbnQtPnN0
cmV0Y2hBbW91bnQoKS5pc1plcm8oKTsKLX0KLQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9w
U25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVyYmFu
ZFRpbWVyKCk7Ci0gICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSBmYWxzZTsKLX0K
LQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCi17Ci0gICAgQ0ZUaW1l
SW50ZXJ2YWwgdGltZURlbHRhID0gc3lzdGVtVXB0aW1lKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9s
bFRpbWVzdGFtcDsKLSAgICBpZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGlt
ZURlbHRhID49IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQpCi0gICAgICAgIG1fbW9tZW50
dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgbV9pblNjcm9sbEdlc3R1cmUgPSBmYWxz
ZTsKLQotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkKLSAgICAgICAgcmV0
dXJuOwotCi0gICAgbV9zdGFydFRpbWUgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJl
bmNlRGF0ZV07Ci0gICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICBtX29yaWdP
cmlnaW4gPSBGbG9hdFBvaW50KCk7Ci0gICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsK
LQotICAgIG1fY2xpZW50LT5zdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLSAgICBtX3NuYXBS
dWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJvbGxl
cjo6c2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdo
ZWVsRXZlbnQmIHdoZWVsRXZlbnQpCi17Ci0gICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPiAw
KQotICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihT
Y3JvbGxMZWZ0KTsKLSAgICBpZiAod2hlZWxFdmVudC5kZWx0YVgoKSA8IDApCi0gICAgICAgIHJl
dHVybiBtX2NsaWVudC0+c2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbFJpZ2h0KTsK
LQotICAgIHJldHVybiB0cnVlOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247694</attachid>
            <date>2015-03-02 12:43:53 -0800</date>
            <delta_ts>2015-03-02 13:17:46 -0800</delta_ts>
            <desc>Patch v6 (Fix build on all platforms, fix tests)</desc>
            <filename>bug-142102-20150302124336.patch</filename>
            <type>text/plain</type>
            <size>83590</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE1LTAzLTAyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorICAg
ICAgICAKKyAgICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxp
bmcgY2xhc3NlczoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1
bkxvb3A6OlRpbWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgor
ICAgICAgICAgICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQ
b2ludCBhbmQgUnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENv
bnRyb2xsZXIgZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNo
YXJpbmcgd2l0aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9y
e01hY30gLT4gU2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNl
dEluQXhpcyAtPiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0
ZVNjcm9sbEluQXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdw
bGF0Zm9ybS9jb2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1h
a2Ugc3VyZSB0aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9s
bAorICAgICAgICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFu
ZGxlZCIgY2FzZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0
aW1lciBhbmQgc29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxD
b250cm9sbGVyIGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRv
IGNsZWFuIHVwIHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyk6IEFkZCB0ZW1w
b3Jhcnkgc3R1YiBuZWVkZWQKKyAgICAgICAgdW50aWwgQnVnIDE0MTk3MyBpcyBjb21wbGV0ZWQu
KS4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6U2Nyb2xsQW5pbWF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnBy
b2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEp1c3QgY2FsbCB0aGUgU2Nyb2xsQ29udHJv
bGxlciBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyk6IFJlbmFtZWQgZnJvbSBzY3JvbGxPZmZz
ZXRJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0
SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMpOiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmg6IENvcGllZCBmcm9tIHBsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmguCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5tbTogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIu
bW0uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVy
KTogVXBkYXRlIHRvIGluaXRpYWxpemUgbmV3IHRpbWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOiBVcGRhdGUgdG8gaGFuZGxlIFNjcm9s
bCBTbmFwIFBvaW50IGV2ZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBNYW5hZ2UgYW5pbWF0aW9u
IHRpbWVycyBsb2NhbGx5LCBkbyBub3QKKyAgICAgICAgcmVxdWlyZSBjbGllbnQgdG8gbWFpbnRh
aW4gdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEFkZGVkLiAoTW92ZWQgZnJvbSBTY3JvbGxBbmlt
YXRvck1hYykKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6
OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEaXR0by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIpOiAg
RGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
OiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW06IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFj
OjpTY3JvbGxBbmltYXRvck1hYyk6IFJlbW92ZSB1bnVzZWQgUnViYmVyYmFuZCB0aW1lcnMgKG5v
dyB0aGF0IHRoaXMgaXMKKyAgICAgICAgY29udHJvbGxlZCBpbiB0aGUgU2Nyb2xsQ29udHJvbGxl
cikKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmg6IFJlbW92ZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06IFJlbW92ZWQuCisKIDIwMTUtMDMt
MDIgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVyZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRl
IGluIEdyYXBoaWNzTGF5ZXJDQS5oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkK
QEAgLTc4Niw4ICs3ODYsNiBAQAogCQkxQTkyN0ZEMzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTky
N0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5ODk1NkIwQUE3OEY4MDAwNUVGNUVG
IC8qIFVSTENGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBOTg5NTZBMEFBNzhGODAwMDVFRjVFRiAvKiBVUkxDRi5jcHAgKi87IH07Ci0JCTFBQTg0
RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07Ci0JCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1
MyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFB
QTg3OTkwMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJhdGVneS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODc5OEYxMUNCRTg0NjAwM0M2NjRG
IC8qIFBsdWdpblN0cmF0ZWd5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMUFBQUREQTMxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQURE
QTExNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovOyB9OwogCQkxQUFBRERB
NDE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMjQ0NSw2ICsyNDQzLDggQEAKIAkJN0E3NEVDQkQxMDE4MzlEQTAwQkY5MzlFIC8q
IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNzRFQ0JDMTAxODM5REEwMEJGOTM5RSAvKiBKU0lu
c3BlY3RvckZyb250ZW5kSG9zdEN1c3RvbS5jcHAgKi87IH07CiAJCTdBOTM4Njg1MThEQ0MxNDUw
MEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgyMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNw
cCAqLzsgfTsKIAkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThEQ0Mx
NDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87IH07CisJCTdBOUFERkYzMUFBMTE2MzgwMEQy
NzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJv
bGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTdBOUFERkY0MUFBMTE2M0IwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGRkE0MTIxQUExMDM5RDAw
RjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07CiAJCTdBQTNBNjk5MTk0QTY0RTcw
MDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTY5NTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuY3BwICovOyB9OwogCQk3QUEzQTY5QTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
QTNBNjk2MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdBQTNBNjlCMTk0QTY0RTcwMDFD
QkQyNCAvKiBUaWxlR3JpZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QUEzQTY5NzE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUdyaWQuY3BwICovOyB9
OwpAQCAtNzgwOSw4ICs3ODA5LDYgQEAKIAkJMUE5MjdGRDAxNDE2QTE1QjAwM0E4M0M4IC8qIG5w
cnVudGltZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBucHJ1bnRpbWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE5MjdGRDExNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gbnB0eXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTk4OTU2QTBBQTc4RjgwMDA1RUY1RUYgLyog
VVJMQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVSTENGLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQkxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTFBQTg3OThGMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJh
dGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbHVnaW5TdHJhdGVneS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUFBRERBMTE0REI0MDlGMDBBRjY0QjMg
LyogU2Nyb2xsaW5nVHJlZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTY3JvbGxpbmdUcmVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQURE
QTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtOTY2Nyw2ICs5NjY1LDggQEAKIAkJN0FGOUIyMDkxOENGQjVGMjAwQzY0QkVGIC8qIEpT
VlRUUmVnaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVlRUUmVnaW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRjlCMjBBMThDRkI1RjMwMEM2NEJF
RiAvKiBKU1ZUVFJlZ2lvbkxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNWVFRSZWdpb25MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0FGOUIyMEIxOENGQjVGMzAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uTGlzdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZUVFJlZ2lvbkxpc3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0FGRkE0MTExQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xs
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUZGQTQxMjFBQTEwMzlEMDBGMDEyNUIg
LyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IFNjcm9sbENvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdDMkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0MyQkREM0MxN0M3Rjk4QjAwMzhG
RjE1IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0RPTUdsb2JhbE9iamVjdFRhc2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0MzQjc5NkYxOTA4NzU3QjAwQjQ3QTJEIC8qIFVzZXJNZXNzYWdlSGFuZGxlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1ODcsOCArMTY1ODcsNiBAQAog
CQkJCUJDNTExNTZEMTJCMTc0OUMwMEM5Njc1NCAvKiBTY3JvbGxBbmltYXRvck1hYy5tbSAqLywK
IAkJCQlCQzhCODUzQzBFN0M3RjExMDBBQjY5ODQgLyogU2Nyb2xsYmFyVGhlbWVNYWMuaCAqLywK
IAkJCQlCQ0VGODY5RTBFODQ0RTlEMDBBODVDRDUgLyogU2Nyb2xsYmFyVGhlbWVNYWMubW0gKi8s
Ci0JCQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIuaCAqLywK
LQkJCQkxQUE4NEYwMjE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLywK
IAkJCQk5MzUzNjc2QTA5QUVEODhCMDBEMzVDRDYgLyogU2Nyb2xsVmlld01hYy5tbSAqLywKIAkJ
CQkwNzdBRjE0MTE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXplZFBsYXRmb3JtUmVwcmVzZW50
YXRpb25NYWMuaCAqLywKIAkJCQkwNzdBRjE0MjE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXpl
ZFBsYXRmb3JtUmVwcmVzZW50YXRpb25NYWMubW0gKi8sCkBAIC0xODY5OCw2ICsxODY5Niw4IEBA
CiAJCQkJMUEwNDA5RjIxQTQzNjc1QzAwOUU0N0YzIC8qIE1hY2hTZW5kUmlnaHQuY3BwICovLAog
CQkJCTFBMDQwOURCMUE0MzYwQjUwMDlFNDdGMyAvKiBNYWNoU2VuZFJpZ2h0LmggKi8sCiAJCQkJ
QURCNkIyOTcxOEZCOTAyNDAwODE5NjNFIC8qIE1lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1t
ICovLAorCQkJCTdBRkZBNDExMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3JvbGxDb250cm9sbGVyLmgg
Ki8sCisJCQkJN0FGRkE0MTIxQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
Ki8sCiAJCQkJNUQ1OTc1QjExOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNpb24uaCAqLywK
IAkJCQk1RDU5NzVCMjE5NjM1RjExMDBEMDA4NzggLyogU3lzdGVtVmVyc2lvbi5tbSAqLywKIAkJ
CQk3Q0M1NjRCOTE4QkFDNzIwMDAxQjk2NTIgLyogVGVsZXBob25lTnVtYmVyRGV0ZWN0b3JDb2Nv
YS5jcHAgKi8sCkBAIC0yNDY0OCw2ICsyNDY0OCw3IEBACiAJCQkJQThFQTdDQjUwQTE5MkI5QzAw
QThFRjVGIC8qIEhUTUxQYXJhZ3JhcGhFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcx
RDQ1ODBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBhcmFtRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJOTNFMkEzMDcxMjNFOURDMDAwOUZFMTJBIC8qIEhUTUxQYXJzZXJJZGlvbXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTdBOUFERkYzMUFBMTE2MzgwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzNGNDE4QTE2OUI5NUZGMDAwNkJGNjAgLyogSFRN
TFBhcnNlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3N0IzODcxMTIyODgzRTkwMEI4
MUZGOCAvKiBIVE1MUGFyc2VyU2NoZWR1bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxRDQ1
NjBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLApA
QCAtMjYxMDEsNyArMjYxMDIsNiBAQAogCQkJCUJDOEI4NTNFMEU3QzdGMTEwMEFCNjk4NCAvKiBT
Y3JvbGxiYXJUaGVtZU1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZFNzE0MDYxNDIxNzBCODAw
REIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUQ5MjVC
NjgwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEJlaGF2aW9yLmggaW4gSGVhZGVycyAqLywKLQkJ
CQkxQUE4NEYwNTE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMEY2MDVBRUQxNUY5NDg0ODAwNERGMEMwIC8qIFNjcm9sbGluZ0NvbnN0cmFp
bnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUY2MkVFODE0REEyMkE3MDA0MTU1NkMgLyogU2Ny
b2xsaW5nQ29vcmRpbmF0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQzRFNDBEMTg3RjgyRTEw
MDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5oIGluIEhlYWRlcnMgKi8sCkBAIC0y
NzQ5Niw2ICsyNzQ5Niw3IEBACiAJCQkJRTE5QUMzRjQxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0
b0FsZ29yaXRobVNIQTUxMi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTEx
MDA4OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxNTdB
OEU0MTgxNzNBM0EwMDlGODIxRCAvKiBDcnlwdG9LZXkuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
N0E5QURGRjQxQUExMTYzQjAwRDI3MzNDIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gaW4gU291cmNl
cyAqLywKIAkJCQlFMTI1Rjg0RDE4MjQyODlEMDBEODRDRDkgLyogQ3J5cHRvS2V5QUVTLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUUxMjVGODYzMTgyQzMwM0EwMEQ4NENEOSAvKiBDcnlwdG9LZXlE
YXRhT2N0ZXRTZXF1ZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUMyNjZERTE4MzE5RjMx
MDAzRjhCMzMgLyogQ3J5cHRvS2V5RGF0YVJTQUNvbXBvbmVudHMuY3BwIGluIFNvdXJjZXMgKi8s
CkBAIC0yOTUwOCw3ICsyOTUwOSw2IEBACiAJCQkJQkNFRjg2OUYwRTg0NEU5RDAwQTg1Q0Q1IC8q
IFNjcm9sbGJhclRoZW1lTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZFNzE0MDUxNDIxNzBC
ODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1
RDkyNUI2NzBGNjRENEREMDBCODQ3RjAgLyogU2Nyb2xsQmVoYXZpb3IuY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJMUFBODRGMDQxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
aW4gU291cmNlcyAqLywKIAkJCQkwRjYwNUFFQzE1Rjk0ODQ4MDA0REYwQzAgLyogU2Nyb2xsaW5n
Q29uc3RyYWludHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFGNjJFRTcxNERBMjJBNzAwNDE1
NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGQzRF
NDBFMTg3RjgyRTEwMDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5tbSBpbiBTb3Vy
Y2VzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5t
bQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5k
bGVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05NjEsNiArOTYxLDEyIEBAIGJvb2wgRXZlbnRI
YW5kbGVyOjpwbGF0Zm9ybUNvbXBsZXRlV2hlZWwKICAgICAKICAgICBib29sIGRpZEhhbmRsZUV2
ZW50ID0gdmlldyA/IHZpZXctPndoZWVsRXZlbnQod2hlZWxFdmVudCkgOiBmYWxzZTsKICAgICBt
X2lzSGFuZGxpbmdXaGVlbEV2ZW50ID0gZmFsc2U7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JP
TExfU05BUCkKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEpCisgICAgICAgIHBsYXRmb3JtTm90aWZ5
U25hcElmTmVjZXNzYXJ5KHdoZWVsRXZlbnQsICpzY3JvbGxhYmxlQXJlYSk7CisjZW5kaWYKKwog
ICAgIHJldHVybiBkaWRIYW5kbGVFdmVudDsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJl
ZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yy5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw4ICs2MSw2IEBAIHByaXZhdGU6CiAgICAgdmlydHVh
bCBJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFp
bnRzKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNu
YXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBS
dWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xs
UG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICB2aXJ0dWFsIEZs
b2F0UG9pbnQgc2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKQEAgLTgwLDEwICs3OCwx
NCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2Vz
dHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwogCisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZpcnR1YWwgTGF5
b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKTsKKyAgICB2aXJ0dWFs
IHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEp
OworI2VuZGlmCisKICAgICB2b2lkIGxvZ0V4cG9zZWRVbmZpbGxlZEFyZWEoKTsKIAogICAgIFNj
cm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOwotICAgIFJldGFpblB0cjxDRlJ1bkxv
b3BUaW1lclJlZj4gbV9zbmFwUnViYmVyYmFuZFRpbWVyOwogCiAgICAgUmV0YWluUHRyPENBTGF5
ZXI+IG1fc2Nyb2xsTGF5ZXI7CiAgICAgUmV0YWluUHRyPENBTGF5ZXI+IG1fc2Nyb2xsZWRDb250
ZW50c0xheWVyOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9s
bGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWMubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC02Niw4ICs2Niw2IEBAIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OlNj
cm8KIAogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6flNjcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVNYWMoKQogewotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXIp
Ci0gICAgICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZShtX3NuYXBSdWJiZXJiYW5kVGltZXIu
Z2V0KCkpOwogfQogCiB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnVw
ZGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQpA
QCAtMjk2LDMyICsyOTQsNiBAQCB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWM6CiAgICAgc2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhvZmZzZXQpOwog
fQogCi12b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnN0YXJ0U25hcFJ1
YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgQVNTRVJUKCFtX3NuYXBSdWJiZXJiYW5kVGltZXIpOwot
Ci0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZXJJbnRlcnZhbCA9IDEuMCAvIDYwLjA7Ci0KLSAgICBt
X3NuYXBSdWJiZXJiYW5kVGltZXIgPSBhZG9wdENGKENGUnVuTG9vcFRpbWVyQ3JlYXRlV2l0aEhh
bmRsZXIoa0NGQWxsb2NhdG9yRGVmYXVsdCwgQ0ZBYnNvbHV0ZVRpbWVHZXRDdXJyZW50KCkgKyB0
aW1lckludGVydmFsLCB0aW1lckludGVydmFsLCAwLCAwLCBeKENGUnVuTG9vcFRpbWVyUmVmKSB7
Ci0gICAgICAgIG1fc2Nyb2xsQ29udHJvbGxlci5zbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsK
LSAgICB9KSk7Ci0gICAgQ0ZSdW5Mb29wQWRkVGltZXIoQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBt
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCksIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci19Ci0K
LXZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RvcFNuYXBSdWJiZXJi
YW5kVGltZXIoKQotewotICAgIGlmICghbV9zbmFwUnViYmVyYmFuZFRpbWVyKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICBzY3JvbGxpbmdUcmVlKCkuc2V0TWFpbkZyYW1lSXNSdWJiZXJCYW5kaW5n
KGZhbHNlKTsKLQotICAgIC8vIFNpbmNlIHRoZSBydWJiZXJiYW5kIHRpbWVyIGhhcyBzdG9wcGVk
LCB0b3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQgY2FuIGJlIHN5bmNocm9uaXplZCB3aXRo
IHRvdGFsQ29udGVudHNTaXplLgotICAgIHNldFRvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFu
ZCh0b3RhbENvbnRlbnRzU2l6ZSgpKTsKLQotICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZSht
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCkpOwotICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lciA9
IG51bGxwdHI7Ci19Ci0KIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6
YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkKIHsKICAgICBGbG9hdFBv
aW50IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKTsKQEAg
LTU0MCw2ICs1MTIsMTkgQEAgdm9pZCBsb2dXaGVlbEV2ZW50SGFuZGxlckNvdW50Q2hhbmdlZCh1
bgogICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5HOiBXaGVlbCBldmVudCBoYW5kbGVyIGNvdW50
IGNoYW5nZWQuIFRpbWU6ICVmIENvdW50OiAldVxuIiwgV1RGOjptb25vdG9uaWNhbGx5SW5jcmVh
c2luZ1RpbWUoKSwgY291bnQpOwogfQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYg
UExBVEZPUk0oTUFDKQorTGF5b3V0VW5pdCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2Rl
TWFjOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKQoreworICAgIC8vIFRlbXBv
cmFyeSBzdHViIHVudGlsIGh0dHA6Ly93ZWJraXQub3JnL2IvMTQxOTczLgorICAgIHJldHVybiBM
YXlvdXRVbml0KCk7Cit9CisKK3ZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yzo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQpCit7CisgICAg
Ly8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDovL3dlYmtpdC5vcmcvYi8xNDE5NzMuCit9Cisj
ZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKEFTWU5D
X1NDUk9MTElORykgJiYgUExBVEZPUk0oTUFDKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsQW5pbWF0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw2ICs0
OSw5IEBAIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxBbmltYXRvcj4gU2Nyb2xsQW4KIAogU2Nyb2xs
QW5pbWF0b3I6OlNjcm9sbEFuaW1hdG9yKFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkK
ICAgICA6IG1fc2Nyb2xsYWJsZUFyZWEoc2Nyb2xsYWJsZUFyZWEpCisjaWYgRU5BQkxFKFJVQkJF
Ul9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgICwgbV9zY3JvbGxDb250
cm9sbGVyKHRoaXMpCisjZW5kaWYKICAgICAsIG1fY3VycmVudFBvc1goMCkKICAgICAsIG1fY3Vy
cmVudFBvc1koMCkKIHsKQEAgLTgxLDI4ICs4NCwxNiBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjpz
Y3JvbGxUb09mZnNldFdpdGhvCiB9CiAKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpwcm9jZXNzV2hlZWxFdmVudEZvclNj
cm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQorYm9vbCBTY3Jv
bGxBbmltYXRvcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYgd2hlZWxFdmVudCkKIHsKLSAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBB
bmltYXRvcikKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hl
ZWxFdmVudCh3aGVlbEV2ZW50KTsKLSAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1h
dG9yKQotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVs
RXZlbnQod2hlZWxFdmVudCk7CisgICAgcmV0dXJuIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNz
V2hlZWxFdmVudEZvclNjcm9sbFNuYXAod2hlZWxFdmVudCk7CiB9CiAjZW5kaWYKIAogYm9vbCBT
Y3JvbGxBbmltYXRvcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQm
IGUpCiB7CiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQotICAg
IGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQoZSk7Ci0gICAgICAgIGlmIChtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0g
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIGlmIChtX2hvcml6b250YWxTY3Jv
bGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9y
LT5oYW5kbGVXaGVlbEV2ZW50KGUpOwotICAgICAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25h
cEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0gICAgICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgfQorICAgIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNzV2hlZWxFdmVu
dEZvclNjcm9sbFNuYXAoZSk7CiAjZW5kaWYKICNpZiBQTEFURk9STShDT0NPQSkKICAgICAvLyBF
dmVudHMgaW4gdGhlIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlTWF5QmVnaW4gcGhhc2UgaGF2ZSBu
byBkZWx0YXMsIGFuZCB0aGVyZWZvcmUgbmV2ZXIgcGFzc2VzIHRocm91Z2ggdGhlIHNjcm9sbCBo
YW5kbGluZyBsb2dpYyBiZWxvdy4KQEAgLTE4MywzMCArMTc0LDE1IEBAIHZvaWQgU2Nyb2xsQW5p
bWF0b3I6Om5vdGlmeVBvc2l0aW9uQ2hhbmcKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAm
JiBQTEFURk9STShNQUMpCiB2b2lkIFNjcm9sbEFuaW1hdG9yOjp1cGRhdGVTY3JvbGxBbmltYXRv
cnNBbmRUaW1lcnMoKQogewotICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBzbmFwIGFu
aW1hdG9ycyBhcmUgcmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMgYWxvbmUg
Y2FuIGJlIHVwZGF0ZWQuCi0gICAgaWYgKG1fc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBP
ZmZzZXRzKCkpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3Rk
OjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVB
cmVhLmhvcml6b250YWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwp
OwotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVl
PFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVy
RmlyZWQpOwotICAgIH0gZWxzZSBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7
Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51bGxwdHI7Ci0gICAg
ICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA9IG51bGxwdHI7Ci0gICAgfQotICAgIGlm
IChtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSkgewotICAgICAgICBtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25h
cEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSwg
U2Nyb2xsRXZlbnRBeGlzOjpWZXJ0aWNhbCk7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFw
VGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjp2
ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKLSAgICB9IGVsc2UgaWYgKG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRv
ciA9IG51bGxwdHI7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIgPSBudWxscHRy
OwotICAgIH0KKyAgICBtX3Njcm9sbENvbnRyb2xsZXIudXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5k
VGltZXJzKG1fc2Nyb2xsYWJsZUFyZWEpOwogfQogCi1MYXlvdXRVbml0IFNjcm9sbEFuaW1hdG9y
OjpzY3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCitMYXlvdXRVbml0IFNj
cm9sbEFuaW1hdG9yOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCiB7
Ci0gICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24o
KTsKLSAgICByZXR1cm4gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBjdXJy
ZW50UG9zaXRpb24ueCgpIDogY3VycmVudFBvc2l0aW9uLnkoKTsKKyAgICByZXR1cm4gYXhpcyA9
PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2N1cnJlbnRQb3NYIDogbV9jdXJyZW50
UG9zWTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRvcjo6aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNj
cm9sbEV2ZW50QXhpcyBheGlzLCBmbG9hdCBkZWx0YSkKK3ZvaWQgU2Nyb2xsQW5pbWF0b3I6Omlt
bWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcywgZmxvYXQgZGVsdGEpCiB7
CiAgICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24o
KTsKICAgICBpZiAoYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwpCkBAIC0yMTQs
MzAgKzE5MCw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXgKICAg
ICBlbHNlCiAgICAgICAgIHNjcm9sbFRvT2Zmc2V0V2l0aG91dEFuaW1hdGlvbihGbG9hdFBvaW50
KGN1cnJlbnRQb3NpdGlvbi54KCksIGN1cnJlbnRQb3NpdGlvbi55KCkgKyBkZWx0YSkpOwogfQot
Ci12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4
aXMgYXhpcykKLXsKLSAgICBUaW1lciogc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxF
dmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIuZ2V0KCkg
OiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyLmdldCgpOwotICAgIGlmICghc2Nyb2xsU25hcFRp
bWVyLT5pc0FjdGl2ZSgpKQotICAgICAgICBzY3JvbGxTbmFwVGltZXItPnN0YXJ0UmVwZWF0aW5n
KDEuMCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdG9wU2Nyb2xsU25hcFRp
bWVyKFNjcm9sbEV2ZW50QXhpcyBheGlzKQotewotICAgIFRpbWVyKiBzY3JvbGxTbmFwVGltZXIg
PSBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9s
bFNuYXBUaW1lci5nZXQoKSA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIuZ2V0KCk7Ci0gICAg
aWYgKHNjcm9sbFNuYXBUaW1lci0+aXNBY3RpdmUoKSkKLSAgICAgICAgc2Nyb2xsU25hcFRpbWVy
LT5zdG9wKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFw
VGltZXJGaXJlZCgpCi17Ci0gICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3Jv
bGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnZlcnRp
Y2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQotewotICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5p
bWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKLX0KICNlbmRpZgogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmlt
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1h
dG9yLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9s
bEFuaW1hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDE0ICszMywxNCBAQAogI2RlZmluZSBT
Y3JvbGxBbmltYXRvcl9oCiAKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKKyNpbmNsdWRlICJMYXlv
dXRVbml0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCiAjaW5jbHVkZSAiU2Ny
b2xsVHlwZXMuaCIKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9G
b3J3YXJkLmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMp
Ci0jaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgotI2luY2x1ZGUgIlRpbWVyLmgi
CisjaWYgKEVOQUJMRShSVUJCRVJfQkFORElORykgfHwgRU5BQkxFKENTU19TQ1JPTExfU05BUCkp
ICYmIFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjZW5kaWYK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTAsOCArNTAsOCBAQCBjbGFzcyBQbGF0Zm9ybVRv
dWNoRXZlbnQ7CiBjbGFzcyBTY3JvbGxhYmxlQXJlYTsKIGNsYXNzIFNjcm9sbGJhcjsKIAotI2lm
IEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLWNsYXNzIFNjcm9sbEFu
aW1hdG9yIDogcHVibGljIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQgeworI2lmIChFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKSB8fCBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpKSAmJiBQTEFURk9S
TShNQUMpCitjbGFzcyBTY3JvbGxBbmltYXRvciA6IHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNs
aWVudCB7CiAjZWxzZQogY2xhc3MgU2Nyb2xsQW5pbWF0b3IgewogI2VuZGlmCkBAIC0xMTgsMzMg
KzExOCwyMiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jl
c3MoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05B
UCkgJiYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgcHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxT
bmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworICAgIGJvb2wgcHJvY2Vzc1doZWVsRXZl
bnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworCiAgICAgdm9pZCB1
cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoKTsKLSAgICB2aXJ0dWFsIExheW91dFVuaXQg
c2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IGRlbHRh
KSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xs
RXZlbnRBeGlzKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1l
cihTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0
T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3Jv
bGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7CiAjZW5kaWYK
IAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlQb3NpdGlvbkNoYW5nZWQoY29u
c3QgRmxvYXRTaXplJiBkZWx0YSk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCi0gICAgLy8gVHJpdmlhbCB3cmFwcGVycyBhcm91bmQgdGhlIGFjdHVhbCB1
cGRhdGUgbG9vcCBpbiBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLCBzaW5jZSBXZWJDb3JlIFRpbWVy
IHJlcXVpcmVzIGEgVGltZXIgYXJndW1lbnQuCi0gICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25h
cFRpbWVyRmlyZWQoKTsKLSAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsK
LSNlbmRpZgotCiAgICAgU2Nyb2xsYWJsZUFyZWEmIG1fc2Nyb2xsYWJsZUFyZWE7CisjaWYgRU5B
QkxFKFJVQkJFUl9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgIFNjcm9s
bENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOworI2VuZGlmCiAgICAgZmxvYXQgbV9jdXJy
ZW50UG9zWDsgLy8gV2UgYXZvaWQgdXNpbmcgYSBGbG9hdFBvaW50IGluIG9yZGVyIHRvIHJlZHVj
ZQogICAgIGZsb2F0IG1fY3VycmVudFBvc1k7IC8vIHN1YmNsYXNzIGNvZGUgY29tcGxleGl0eS4K
LSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi0gICAgc3RkOjp1
bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBB
bmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8VGltZXI+IG1faG9yaXpvbnRhbFNjcm9sbFNu
YXBUaW1lcjsKLSAgICAvLyBGSVhNRTogRmluZCBhIHdheSB0byBjb25zb2xpZGF0ZSBib3RoIHRp
bWVycyBpbnRvIG9uZSB2YXJpYWJsZS4KLSAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNu
YXBBbmltYXRvcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1
ZV9wdHI8VGltZXI+IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7Ci0jZW5kaWYKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1Njcm9sbENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHJldmlzaW9uIDE4MDcwMikJKGZyb20gU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIuaDoxODA3MDIpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwxMDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFNjcm9sbENvbnRyb2xs
ZXJfaAorI2RlZmluZSBTY3JvbGxDb250cm9sbGVyX2gKKworI2lmIEVOQUJMRShSVUJCRVJfQkFO
RElORykKKworI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKKyNpbmNsdWRlICJGbG9hdFNpemUuaCIK
KyNpbmNsdWRlICJTY3JvbGxUeXBlcy5oIgorI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKKworY2xh
c3MgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7Citwcm90ZWN0ZWQ6CisgICAgdmlydHVhbCB+U2Ny
b2xsQ29udHJvbGxlckNsaWVudCgpIHsgfQorCitwdWJsaWM6CisgICAgdmlydHVhbCBib29sIGFs
bG93c0hvcml6b250YWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsK
KyAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzVmVydGljYWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYpID0gMDsKKyAgICB2aXJ0dWFsIEludFNpemUgc3RyZXRjaEFtb3VudCgpID0g
MDsKKyAgICB2aXJ0dWFsIGJvb2wgcGlubmVkSW5EaXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikg
PSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxIb3Jpem9udGFsbHkoKSA9IDA7CisgICAg
dmlydHVhbCBib29sIGNhblNjcm9sbFZlcnRpY2FsbHkoKSA9IDA7CisgICAgdmlydHVhbCBib29s
IHNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxEaXJlY3Rpb24pID0gMDsKKworICAg
IC8vIFJldHVybiB0aGUgYWJzb2x1dGUgc2Nyb2xsIHBvc2l0aW9uLCBub3QgcmVsYXRpdmUgdG8g
dGhlIHNjcm9sbCBvcmlnaW4uCisgICAgdmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0
ZVNjcm9sbFBvc2l0aW9uKCkgPSAwOworCisgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9s
bEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Ny
b2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7
CisgICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKKyAgICB2
aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7CisKKyAgICAvLyBJZiB0
aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0
aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKKyAgICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhl
IG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCisgICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBv
c2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsKK307CisKK2NsYXNzIFNjcm9sbENvbnRy
b2xsZXIgeworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFNjcm9sbENvbnRyb2xsZXIpOworCitw
dWJsaWM6CisgICAgZXhwbGljaXQgU2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xp
ZW50Kik7CisKKyAgICBib29sIGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2
ZW50Jik7CisgICAgdm9pZCBzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKKworICAgIGJvb2wg
aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0OworCitwcml2YXRlOgorICAgIHZvaWQgc3Rv
cFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kKCk7CisKKyAg
ICBib29sIHNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZv
cm1XaGVlbEV2ZW50Jik7CisKKyAgICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsK
KworICAgIGJvb2wgbV9pblNjcm9sbEdlc3R1cmU7CisgICAgYm9vbCBtX21vbWVudHVtU2Nyb2xs
SW5Qcm9ncmVzczsKKyAgICBib29sIG1faWdub3JlTW9tZW50dW1TY3JvbGxzOworICAgIAorICAg
IENGVGltZUludGVydmFsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOworICAgIEZsb2F0
U2l6ZSBtX292ZXJmbG93U2Nyb2xsRGVsdGE7CisgICAgRmxvYXRTaXplIG1fc3RyZXRjaFNjcm9s
bEZvcmNlOworICAgIEZsb2F0U2l6ZSBtX21vbWVudHVtVmVsb2NpdHk7CisKKyAgICAvLyBSdWJi
ZXIgYmFuZCBzdGF0ZS4KKyAgICBDRlRpbWVJbnRlcnZhbCBtX3N0YXJ0VGltZTsKKyAgICBGbG9h
dFNpemUgbV9zdGFydFN0cmV0Y2g7CisgICAgRmxvYXRQb2ludCBtX29yaWdPcmlnaW47CisgICAg
RmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5OworCisgICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGlt
ZXJJc0FjdGl2ZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVO
QUJMRShSVUJCRVJfQkFORElORykKKworI2VuZGlmIC8vIFNjcm9sbENvbnRyb2xsZXJfaApJbmRl
eDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIu
aAkod29ya2luZyBjb3B5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHly
aWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmln
aHQgKEMpIDIwMTEsIDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTMyLDEwICszMiwxNiBAQAogI2luY2x1
ZGUgIkZsb2F0U2l6ZS5oIgogI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSA8d3Rm
L05vbmNvcHlhYmxlLmg+CisjaW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KKworI2lmIEVOQUJMRShD
U1NfU0NST0xMX1NOQVApCisjaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgorI2Vu
ZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50Owor
Y2xhc3MgU2Nyb2xsYWJsZUFyZWE7CiAKIGNsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewog
cHJvdGVjdGVkOgpAQCAtNTUsMzYgKzYxLDU1IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9p
ZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3Qg
RmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAw
OwogCiAgICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlzIHdpdGhpbiB0aGUg
b3ZlcmhhbmcgYXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNhdXNlCiAgICAgLy8gdGhlIHBhZ2Ug
dG8gc2Nyb2xsIHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBvaW50LgogICAgIHZpcnR1YWwgdm9p
ZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSA9IDA7CisKKyNpZiBF
TkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdmlydHVhbCBMYXlv
dXRVbml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKKyAgICB2aXJ0
dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVs
dGEpID0gMDsKKyNlbmRpZgogfTsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBM
QVRGT1JNKE1BQykKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXIgOiBwdWJsaWMgQXhpc1Njcm9sbFNu
YXBBbmltYXRvckNsaWVudCB7CisjZWxzZQogY2xhc3MgU2Nyb2xsQ29udHJvbGxlciB7CisjZW5k
aWYKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShTY3JvbGxDb250cm9sbGVyKTsKIAogcHVibGlj
OgogICAgIGV4cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCop
OwogCiAgICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYp
OwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIGlzUnVi
YmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdDsKIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVAp
ICYmIFBMQVRGT1JNKE1BQykKKyAgICBib29sIHByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25h
cChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKyAgICB2b2lkIHVwZGF0ZVNjcm9sbEFuaW1h
dG9yc0FuZFRpbWVycyhjb25zdCBTY3JvbGxhYmxlQXJlYSYpOworI2VuZGlmCisKIHByaXZhdGU6
CisgICAgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICB2b2lkIHN0b3BTbmFw
UnViYmVyYmFuZFRpbWVyKCk7CiAgICAgdm9pZCBzbmFwUnViYmVyQmFuZCgpOworICAgIHZvaWQg
c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIHNob3VsZFJ1YmJlckJhbmRJ
bkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CiAKLSAgICBT
Y3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9T
TkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVy
RmlyZWQoKTsKKyAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsKKyAgICB2
b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyk7CisgICAgdm9pZCBzdG9w
U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyk7CisKKyAgICBMYXlvdXRVbml0IHNjcm9s
bE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEpIG92ZXJyaWRlOwor
I2VuZGlmCiAKLSAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOwotICAgIGJvb2wgbV9tb21lbnR1
bVNjcm9sbEluUHJvZ3Jlc3M7Ci0gICAgYm9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xsczsKKyAg
ICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKICAgICAKICAgICBDRlRpbWVJbnRl
cnZhbCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKICAgICBGbG9hdFNpemUgbV9vdmVy
Zmxvd1Njcm9sbERlbHRhOwpAQCAtOTYsNyArMTIxLDE5IEBAIHByaXZhdGU6CiAgICAgRmxvYXRT
aXplIG1fc3RhcnRTdHJldGNoOwogICAgIEZsb2F0UG9pbnQgbV9vcmlnT3JpZ2luOwogICAgIEZs
b2F0U2l6ZSBtX29yaWdWZWxvY2l0eTsKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250cm9s
bGVyPiBtX3NuYXBSdWJiZXJiYW5kVGltZXI7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JPTExf
U05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIC8vIEZJWE1FOiBGaW5kIGEgd2F5IHRvIGNvbnNv
bGlkYXRlIGJvdGggdGltZXJzIGludG8gb25lIHZhcmlhYmxlLgorICAgIHN0ZDo6dW5pcXVlX3B0
cjxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPiBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3I7
CisgICAgc3RkOjp1bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3I7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4g
bV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyOworICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9sbENv
bnRyb2xsZXI+IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7CisjZW5kaWYKIAorICAgIGJvb2wg
bV9pblNjcm9sbEdlc3R1cmU7CisgICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsK
KyAgICBib29sIG1faWdub3JlTW9tZW50dW1TY3JvbGxzOwogICAgIGJvb2wgbV9zbmFwUnViYmVy
YmFuZFRpbWVySXNBY3RpdmU7CiB9OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9j
b2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0JKHJldmlzaW9uIDE4MDcwMikJKGZyb20g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06MTgwNzAyKQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDQwNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSwg
MjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIlNjcm9sbENvbnRyb2xsZXIuaCIKKworI2luY2x1
ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgorI2luY2x1ZGUgIldlYkNvcmVTeXN0ZW1JbnRlcmZh
Y2UuaCIKKyNpbmNsdWRlIDxzeXMvc3lzY3RsLmg+CisjaW5jbHVkZSA8c3lzL3RpbWUuaD4KKwor
I2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKKworc3RhdGljIE5TVGltZUludGVydmFsIHN5c3Rl
bVVwdGltZSgpCit7CisgICAgaWYgKFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcmVzcG9u
ZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzeXN0ZW1VcHRpbWUpXSkKKyAgICAgICAgcmV0dXJuIFtb
TlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gc3lzdGVtVXB0aW1lXTsKKworICAgIC8vIEdldCBo
b3cgbG9uZyBzeXN0ZW0gaGFzIGJlZW4gdXAuIEZvdW5kIGJ5IGxvb2tpbmcgZ2V0dGluZyAiYm9v
dHRpbWUiIGZyb20gdGhlIGtlcm5lbC4KKyAgICBzdGF0aWMgc3RydWN0IHRpbWV2YWwgYm9vdHRp
bWUgPSB7MCwgMH07CisgICAgaWYgKCFib290dGltZS50dl9zZWMpIHsKKyAgICAgICAgaW50IG1p
YlsyXSA9IHtDVExfS0VSTiwgS0VSTl9CT09UVElNRX07CisgICAgICAgIHNpemVfdCBzaXplID0g
c2l6ZW9mKGJvb3R0aW1lKTsKKyAgICAgICAgaWYgKC0xID09IHN5c2N0bChtaWIsIDIsICZib290
dGltZSwgJnNpemUsIDAsIDApKQorICAgICAgICAgICAgYm9vdHRpbWUudHZfc2VjID0gMDsKKyAg
ICB9CisgICAgc3RydWN0IHRpbWV2YWwgbm93OworICAgIGlmIChib290dGltZS50dl9zZWMgJiYg
LTEgIT0gZ2V0dGltZW9mZGF5KCZub3csIDApKSB7CisgICAgICAgIHN0cnVjdCB0aW1ldmFsIHVw
dGltZTsKKyAgICAgICAgdGltZXJzdWIoJm5vdywgJmJvb3R0aW1lLCAmdXB0aW1lKTsKKyAgICAg
ICAgTlNUaW1lSW50ZXJ2YWwgcmVzdWx0ID0gdXB0aW1lLnR2X3NlYyArICh1cHRpbWUudHZfdXNl
YyAvIDFFKzYpOworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0KKyAgICByZXR1cm4gMDsK
K30KKworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxW
ZWxvY2l0eVplcm9pbmdUaW1lb3V0ID0gMC4xMGY7CitzdGF0aWMgY29uc3QgZmxvYXQgcnViYmVy
YmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8gPSAxOworc3RhdGljIGNvbnN0IGZsb2F0IHJ1
YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2ggPSAxMDsKKworc3RhdGlj
IGZsb2F0IGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShmbG9hdCBpbml0aWFsUG9zaXRpb24sIGZs
b2F0IGluaXRpYWxWZWxvY2l0eSwgZmxvYXQgZWxhcHNlZFRpbWUpCit7CisgICAgcmV0dXJuIHdr
TlNFbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEoaW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsVmVsb2Np
dHksIGVsYXBzZWRUaW1lKTsKK30KKworc3RhdGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclJlYm91
bmREZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclJl
Ym91bmREZWx0YShkZWx0YSk7Cit9CisKK3N0YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JFbGFz
dGljRGVsdGEoZmxvYXQgZGVsdGEpCit7CisgICAgcmV0dXJuIHdrTlNSZWJvdW5kRGVsdGFGb3JF
bGFzdGljRGVsdGEoZGVsdGEpOworfQorCitzdGF0aWMgZmxvYXQgc2Nyb2xsV2hlZWxNdWx0aXBs
aWVyKCkKK3sKKyAgICBzdGF0aWMgZmxvYXQgbXVsdGlwbGllciA9IC0xOworICAgIGlmIChtdWx0
aXBsaWVyIDwgMCkgeworICAgICAgICBtdWx0aXBsaWVyID0gW1tOU1VzZXJEZWZhdWx0cyBzdGFu
ZGFyZFVzZXJEZWZhdWx0c10gZmxvYXRGb3JLZXk6QCJOU1Njcm9sbFdoZWVsTXVsdGlwbGllciJd
OworICAgICAgICBpZiAobXVsdGlwbGllciA8PSAwKQorICAgICAgICAgICAgbXVsdGlwbGllciA9
IDE7CisgICAgfQorICAgIHJldHVybiBtdWx0aXBsaWVyOworfQorCitTY3JvbGxDb250cm9sbGVy
OjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIGNsaWVudCkKKyAgICA6
IG1fY2xpZW50KGNsaWVudCkKKyAgICAsIG1faW5TY3JvbGxHZXN0dXJlKGZhbHNlKQorICAgICwg
bV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MoZmFsc2UpCisgICAgLCBtX2lnbm9yZU1vbWVudHVt
U2Nyb2xscyhmYWxzZSkKKyAgICAsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCisg
ICAgLCBtX3N0YXJ0VGltZSgwKQorICAgICwgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUo
ZmFsc2UpCit7Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChj
b25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCit7CisgICAgaWYgKHdoZWVsRXZl
bnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuKSB7CisgICAgICAgIC8v
IEZpcnN0LCBjaGVjayBpZiB3ZSBzaG91bGQgcnViYmVyLWJhbmQgYXQgYWxsLgorICAgICAgICBp
ZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgtd2hlZWxFdmVudC5kZWx0
YVgoKSwgMCkpCisgICAgICAgICAgICAmJiAhc2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERp
cmVjdGlvbih3aGVlbEV2ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAg
ICBtX2luU2Nyb2xsR2VzdHVyZSA9IHRydWU7CisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblBy
b2dyZXNzID0gZmFsc2U7CisgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7
CisgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gMDsKKyAgICAgICAgbV9t
b21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisKKyAgICAgICAgSW50U2l6ZSBzdHJldGNo
QW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKyAgICAgICAgbV9zdHJldGNoU2Ny
b2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91
bnQud2lkdGgoKSkpOworICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVi
b3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQuaGVpZ2h0KCkpKTsKKyAgICAg
ICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7CisKKyAgICAgICAgc3RvcFNu
YXBSdWJiZXJiYW5kVGltZXIoKTsKKworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAg
ICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQp
IHsKKyAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAg
fQorCisgICAgYm9vbCBpc01vbWVudHVtU2Nyb2xsRXZlbnQgPSAod2hlZWxFdmVudC5tb21lbnR1
bVBoYXNlKCkgIT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKTsKKyAgICBpZiAobV9pZ25v
cmVNb21lbnR1bVNjcm9sbHMgJiYgKGlzTW9tZW50dW1TY3JvbGxFdmVudCB8fCBtX3NuYXBSdWJi
ZXJiYW5kVGltZXJJc0FjdGl2ZSkpIHsKKyAgICAgICAgaWYgKHdoZWVsRXZlbnQubW9tZW50dW1Q
aGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKKyAgICAgICAgICAgIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsK
KyAgICAgICAgfQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgZmxvYXQgZGVs
dGFYID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCk7CisgICAgZmxvYXQgZGVsdGFZID0g
bV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpOworCisgICAgLy8gUmVzZXQgb3ZlcmZsb3cg
dmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lkZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBw
b2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJmbG93LgorICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YSA9IEZsb2F0U2l6ZSgpOworCisgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQt
PnN0cmV0Y2hBbW91bnQoKTsKKyAgICBib29sIGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IHN0cmV0
Y2hBbW91bnQuaGVpZ2h0KCk7CisgICAgYm9vbCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0
cmV0Y2hBbW91bnQud2lkdGgoKTsKKworICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFYOwor
ICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFZOworCisgICAgaWYgKGlzVmVydGljYWxseVN0
cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCkgeworICAgICAgICBldmVudENvYWxl
c2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoKTsK
KyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVk
U2Nyb2xsaW5nRGVsdGFZKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWRE
ZWx0YVggPSAtd2hlZWxFdmVudC5kZWx0YVgoKTsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0
YVkgPSAtd2hlZWxFdmVudC5kZWx0YVkoKTsKKyAgICB9CisKKyAgICBkZWx0YVggKz0gZXZlbnRD
b2FsZXNjZWREZWx0YVg7CisgICAgZGVsdGFZICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFZOworCisg
ICAgLy8gU2xpZ2h0bHkgcHJlZmVyIHNjcm9sbGluZyB2ZXJ0aWNhbGx5IGJ5IGFwcGx5aW5nIHRo
ZSA9IGNhc2UgdG8gZGVsdGFZCisgICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFY
KSkKKyAgICAgICAgZGVsdGFYID0gMDsKKyAgICBlbHNlCisgICAgICAgIGRlbHRhWSA9IDA7CisK
KyAgICBib29sIHNob3VsZFN0cmV0Y2ggPSBmYWxzZTsKKworICAgIFBsYXRmb3JtV2hlZWxFdmVu
dFBoYXNlIG1vbWVudHVtUGhhc2UgPSB3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKTsKKworICAg
IC8vIElmIHdlIGFyZSBzdGFydGluZyBtb21lbnR1bSBzY3JvbGxpbmcgdGhlbiBkbyBzb21lIHNl
dHVwLgorICAgIGlmICghbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgKG1vbWVudHVtUGhh
c2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbiB8fCBtb21lbnR1bVBoYXNlID09IFBs
YXRmb3JtV2hlZWxFdmVudFBoYXNlQ2hhbmdlZCkpCisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJ
blByb2dyZXNzID0gdHJ1ZTsKKworICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IHdoZWVs
RXZlbnQudGltZXN0YW1wKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBp
ZiAobV9pblNjcm9sbEdlc3R1cmUgfHwgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKKyAg
ICAgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+IDAg
JiYgdGltZURlbHRhIDwgc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCkgeworICAgICAgICAg
ICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldFdpZHRoKGV2ZW50Q29hbGVzY2VkRGVsdGFYIC8gKGZs
b2F0KXRpbWVEZWx0YSk7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkuc2V0SGVpZ2h0
KGV2ZW50Q29hbGVzY2VkRGVsdGFZIC8gKGZsb2F0KXRpbWVEZWx0YSk7CisgICAgICAgICAgICBt
X2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7Cisg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2Np
dHkgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChpc1ZlcnRpY2FsbHlT
dHJldGNoZWQpIHsKKyAgICAgICAgICAgIGlmICghaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYg
bV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgeworICAg
ICAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgdmVydGljYWwuCisgICAgICAg
ICAgICAgICAgaWYgKGRlbHRhWSAmJiAoZmFic2YoZGVsdGFYIC8gZGVsdGFZKSA8IHJ1YmJlcmJh
bmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFY
ID0gMDsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFu
ZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgeworICAgICAgICAgICAgICAgICAg
ICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndp
ZHRoKCkgKyBkZWx0YVgpOworICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOworICAgICAg
ICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVs
dGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOworICAg
ICAgICAgICAgfQorICAgICAgICB9IGVsc2UgaWYgKGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7
CisgICAgICAgICAgICAvLyBTdHJldGNoaW5nIG9ubHkgaW4gdGhlIGhvcml6b250YWwuCisgICAg
ICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0
YVkpKSkgeworICAgICAgICAgICAgICAgIGlmIChkZWx0YVggJiYgKGZhYnNmKGRlbHRhWSAvIGRl
bHRhWCkgPCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbykpCisgICAgICAgICAg
ICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVs
dGFZKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKKyAg
ICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJm
bG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBkZWx0YVkpOworICAgICAgICAgICAgICAgICAgICBk
ZWx0YVkgPSAwOworICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBt
X292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWln
aHQoKSArIGRlbHRhWSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICAvLyBOb3Qgc3RyZXRjaGluZyBhdCBhbGwgeWV0LgorICAgICAgICAgICAgaWYgKG1fY2xp
ZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCBkZWx0YVkpKSkgeworICAg
ICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0YVkpID49IGZhYnNmKGRlbHRhWCkpIHsKKyAgICAg
ICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVp
cmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJm
bG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBk
ZWx0YVgpOworICAgICAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAgICAg
ICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xs
RGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBzaG91bGRTdHJldGNoID0gdHJ1ZTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChkZWx0YVggfHwgZGVs
dGFZKSB7CisgICAgICAgIGlmICghKHNob3VsZFN0cmV0Y2ggfHwgaXNWZXJ0aWNhbGx5U3RyZXRj
aGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSkgeworICAgICAgICAgICAgaWYgKGRlbHRh
WSkgeworICAgICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsK
KyAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKDAs
IGRlbHRhWSkpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGRlbHRhWCkgeworICAg
ICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKKyAgICAgICAg
ICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKGRlbHRhWCwgMCkp
OworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKCFtX2Ns
aWVudC0+YWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsKKyAgICAgICAg
ICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFY
ID0gMDsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFYICYmICFpc0hvcml6b250YWxseVN0
cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgs
IDApKSkgeworICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIo
KTsKKworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRD
b250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YVgsIDApKTsKKyAgICAgICAgICAg
ICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBpZiAoIW1fY2xp
ZW50LT5hbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsKKyAgICAgICAgICAg
ICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0g
MDsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFZICYmICFpc1ZlcnRpY2FsbHlTdHJldGNo
ZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkp
IHsKKyAgICAgICAgICAgICAgICBkZWx0YVkgKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7CisK
KyAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVu
dEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoMCwgZGVsdGFZKSk7CisgICAgICAgICAgICAgICAg
ZGVsdGFZID0gMDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgSW50U2l6ZSBzdHJldGNo
QW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKworICAgICAgICAgICAgaWYgKG1f
bW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7CisgICAgICAgICAgICAgICAgaWYgKChtX2NsaWVu
dC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGV2ZW50Q29hbGVzY2VkRGVsdGFYLCBldmVu
dENvYWxlc2NlZERlbHRhWSkpIHx8IChmYWJzZihldmVudENvYWxlc2NlZERlbHRhWCkgKyBmYWJz
ZihldmVudENvYWxlc2NlZERlbHRhWSkgPD0gMCkpICYmIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGlt
ZXN0YW1wKSB7CisgICAgICAgICAgICAgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0g
dHJ1ZTsKKyAgICAgICAgICAgICAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBm
YWxzZTsKKyAgICAgICAgICAgICAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNl
LnNldFdpZHRoKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkgKyBkZWx0YVgpOworICAgICAg
ICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KG1fc3RyZXRjaFNjcm9sbEZvcmNl
LmhlaWdodCgpICsgZGVsdGFZKTsKKworICAgICAgICAgICAgRmxvYXRTaXplIGRhbXBlZERlbHRh
KGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS53
aWR0aCgpKSksIGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3Jv
bGxGb3JjZS5oZWlnaHQoKSkpKTsKKworICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNj
cm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoZGFtcGVkRGVsdGEgLSBzdHJldGNo
QW1vdW50KTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Q
cm9ncmVzcyAmJiBtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQp
IHsKKyAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAg
bV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKKyAgICAgICAgbV9sYXN0TW9tZW50dW1T
Y3JvbGxUaW1lc3RhbXAgPSAwOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQorCitzdGF0
aWMgaW5saW5lIGZsb2F0IHJvdW5kVG93YXJkWmVybyhmbG9hdCBudW0pCit7CisgICAgcmV0dXJu
IG51bSA+IDAgPyBjZWlsZihudW0gLSAwLjVmKSA6IGZsb29yZihudW0gKyAwLjVmKTsKK30KKwor
c3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGZsb2F0IG51
bSkKK3sKKyAgICBmbG9hdCByb3VuZGVkTnVtID0gcm91bmRmKG51bSk7CisgICAgaWYgKGZhYnMo
bnVtIC0gcm91bmRlZE51bSkgPCAwLjEyNSkKKyAgICAgICAgbnVtID0gcm91bmRlZE51bTsKKwor
ICAgIHJldHVybiByb3VuZFRvd2FyZFplcm8obnVtKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9s
bGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKQoreworICAgIGlmICghbV9tb21lbnR1bVNj
cm9sbEluUHJvZ3Jlc3MgfHwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMpIHsKKyAgICAgICAgQ0ZU
aW1lSW50ZXJ2YWwgdGltZURlbHRhID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5j
ZURhdGVdIC0gbV9zdGFydFRpbWU7CisKKyAgICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZs
b2F0U2l6ZSgpKSB7CisgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJl
dGNoQW1vdW50KCk7CisgICAgICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXpl
KCkpIHsKKyAgICAgICAgICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworCisgICAg
ICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2UgPSBGbG9hdFNpemUoKTsKKyAgICAgICAg
ICAgICAgICBtX3N0YXJ0VGltZSA9IDA7CisgICAgICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2gg
PSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50
KCk7CisgICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKyAgICAg
ICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIG1fb3JpZ09y
aWdpbiA9IG1fY2xpZW50LT5hYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgLSBtX3N0YXJ0U3RyZXRj
aDsKKyAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gbV9tb21lbnR1bVZlbG9jaXR5OworCisg
ICAgICAgICAgICAvLyBKdXN0IGxpa2Ugbm9ybWFsIHNjcm9sbGluZywgcHJlZmVyIHZlcnRpY2Fs
IHJ1YmJlcmJhbmRpbmcKKyAgICAgICAgICAgIGlmIChmYWJzZihtX29yaWdWZWxvY2l0eS5oZWln
aHQoKSkgPj0gZmFic2YobV9vcmlnVmVsb2NpdHkud2lkdGgoKSkpCisgICAgICAgICAgICAgICAg
bV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7CisKKyAgICAgICAgICAgIC8vIERvbid0IHJ1YmJl
ci1iYW5kIGhvcml6b250YWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgaG9yaXpv
bnRhbGx5CisgICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxIb3Jpem9udGFsbHko
KSkKKyAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgwKTsKKworICAgICAg
ICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQgdmVydGljYWxseSBpZiBpdCdzIG5vdCBwb3NzaWJs
ZSB0byBzY3JvbGwgdmVydGljYWxseQorICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Ny
b2xsVmVydGljYWxseSgpKQorICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldEhlaWdo
dCgwKTsKKyAgICAgICAgfQorCisgICAgICAgIEZsb2F0UG9pbnQgZGVsdGEocm91bmRUb0Rldmlj
ZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2gu
d2lkdGgoKSwgLW1fb3JpZ1ZlbG9jaXR5LndpZHRoKCksIChmbG9hdCl0aW1lRGVsdGEpKSwKKyAg
ICAgICAgICAgIHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGlt
ZURlbHRhKG1fc3RhcnRTdHJldGNoLmhlaWdodCgpLCAtbV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCks
IChmbG9hdCl0aW1lRGVsdGEpKSk7CisKKyAgICAgICAgaWYgKGZhYnMoZGVsdGEueCgpKSA+PSAx
IHx8IGZhYnMoZGVsdGEueSgpKSA+PSAxKSB7CisgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRp
YXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGEu
eCgpLCBkZWx0YS55KCkpIC0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKSk7CisKKyAgICAgICAg
ICAgIEZsb2F0U2l6ZSBuZXdTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKwor
ICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9y
RWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2gud2lkdGgoKSkpOworICAgICAgICAgICAgbV9zdHJldGNo
U2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJl
dGNoLmhlaWdodCgpKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBtX2NsaWVudC0+
YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCk7CisKKyAgICAgICAgICAg
IHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZSA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgbV9zdGFydFRpbWUgPSAwOworICAgICAg
ICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgIG1fb3JpZ09y
aWdpbiA9IEZsb2F0UG9pbnQoKTsKKyAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRT
aXplKCk7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICBtX3N0YXJ0VGltZSA9IFtO
U0RhdGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKKyAgICAgICAgbV9zdGFydFN0
cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICB9Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6
aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0Cit7CisgICAgaWYgKCFtX2luU2Nyb2xsR2Vz
dHVyZSAmJiAhbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgIW1fc25hcFJ1YmJlcmJhbmRU
aW1lcklzQWN0aXZlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gIW1fY2xp
ZW50LT5zdHJldGNoQW1vdW50KCkuaXNaZXJvKCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxl
cjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQoreworICAgIG1fY2xpZW50LT5zdG9wU25hcFJ1
YmJlcmJhbmRUaW1lcigpOworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFs
c2U7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJhbmQoKQoreworICAg
IENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IHN5c3RlbVVwdGltZSgpIC0gbV9sYXN0TW9tZW50
dW1TY3JvbGxUaW1lc3RhbXA7CisgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1w
ICYmIHRpbWVEZWx0YSA+PSBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0KQorICAgICAgICBt
X21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKworICAgIG1faW5TY3JvbGxHZXN0dXJl
ID0gZmFsc2U7CisKKyAgICBpZiAobV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCisgICAg
ICAgIHJldHVybjsKKworICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5j
ZVJlZmVyZW5jZURhdGVdOworICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7CisgICAg
bV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOworICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRT
aXplKCk7CisKKyAgICBtX2NsaWVudC0+c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAg
bV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSB0cnVlOworfQorCitib29sIFNjcm9sbENv
bnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxh
dGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQoreworICAgIGlmICh3aGVlbEV2ZW50LmRlbHRh
WCgpID4gMCkKKyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJl
Y3Rpb24oU2Nyb2xsTGVmdCk7CisgICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPCAwKQorICAg
ICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxS
aWdodCk7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQor
CisjZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQpJbmRleDogU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0zMSw2ICszMSwxMSBAQAogI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4K
ICNpbmNsdWRlIDxzeXMvdGltZS5oPgogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyNp
bmNsdWRlICJBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgiCisjaW5jbHVkZSAiU2Nyb2xsYWJsZUFy
ZWEuaCIKKyNlbmRpZgorCiAjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQogCiBzdGF0aWMgTlNU
aW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKQEAgLTkxLDE3ICs5NiwyNiBAQCBzdGF0aWMgZmxv
YXQgc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCkKIAogU2Nyb2xsQ29udHJvbGxlcjo6U2Nyb2xsQ29u
dHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBjbGllbnQpCiAgICAgOiBtX2NsaWVudChj
bGllbnQpCisgICAgLCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQorICAgICwgbV9z
dGFydFRpbWUoMCkKKyAgICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcihSdW5Mb29wOjpjdXJyZW50
KCksIHRoaXMsICZTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpCisj
aWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgICwgbV9ob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyKFJ1bkxvb3A6OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENv
bnRyb2xsZXI6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCkKKyAgICAsIG1fdmVydGlj
YWxTY3JvbGxTbmFwVGltZXIoUnVuTG9vcDo6Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJv
bGxlcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCkKKyNlbmRpZgogICAgICwgbV9pblNj
cm9sbEdlc3R1cmUoZmFsc2UpCiAgICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxz
ZSkKICAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxzKGZhbHNlKQotICAgICwgbV9sYXN0TW9t
ZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAgICAsIG1fc3RhcnRUaW1lKDApCiAgICAgLCBtX3Nu
YXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkKIHsKIH0KIAogYm9vbCBTY3JvbGxDb250
cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxF
dmVudCkKIHsKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisg
ICAgaWYgKCFwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAod2hlZWxFdmVudCkpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgogICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0g
UGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbikgewogICAgICAgICAvLyBGaXJzdCwgY2hlY2sg
aWYgd2Ugc2hvdWxkIHJ1YmJlci1iYW5kIGF0IGFsbC4KICAgICAgICAgaWYgKG1fY2xpZW50LT5w
aW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoLXdoZWVsRXZlbnQuZGVsdGFYKCksIDApKQpAQCAt
MzY1LDkgKzM3OSwxNCBAQCBib29sIFNjcm9sbENvbnRyb2xsZXI6OmlzUnViYmVyQmFuZEluUHJv
CiAgICAgcmV0dXJuICFtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpLmlzWmVybygpOwogfQogCit2
b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpCit7CisgICAg
bV9zbmFwUnViYmVyYmFuZFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjApOworfQorCiB2
b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKIHsKLSAgICBt
X2NsaWVudC0+c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBtX3NuYXBSdWJiZXJiYW5k
VGltZXIuc3RvcCgpOwogICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFsc2U7
CiB9CiAKQEAgLTM4Nyw3ICs0MDYsNyBAQCB2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJi
ZXJCYW5kKCkKICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CiAgICAgbV9vcmlnVmVs
b2NpdHkgPSBGbG9hdFNpemUoKTsKIAotICAgIG1fY2xpZW50LT5zdGFydFNuYXBSdWJiZXJiYW5k
VGltZXIoKTsKKyAgICBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICBtX3NuYXBSdWJi
ZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7CiB9CiAKQEAgLTQwMSw2ICs0MjAsNzMgQEAgYm9v
bCBTY3JvbGxDb250cm9sbGVyOjpzaG91bGRSdWJiZXJCYW5kSQogICAgIHJldHVybiB0cnVlOwog
fQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorYm9vbCBT
Y3JvbGxDb250cm9sbGVyOjpwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxh
dGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQoreworICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xs
U25hcEFuaW1hdG9yKSB7CisgICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhh
bmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CisgICAgICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xs
U25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQod2hlZWxFdmVudCkpCisgICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIGlmIChtX2hvcml6b250YWxTY3JvbGxT
bmFwQW5pbWF0b3IpIHsKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5o
YW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworICAgICAgICBpZiAobV9ob3Jpem9udGFsU2Ny
b2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQod2hlZWxFdmVudCkpCisg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9Cisg
ICAgCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVy
cyhjb25zdCBTY3JvbGxhYmxlQXJlYSYgc2Nyb2xsYWJsZUFyZWEpCit7CisgICAgLy8gRklYTUU6
IEN1cnJlbnRseSwgc2Nyb2xsIHNuYXAgYW5pbWF0b3JzIGFyZSByZWNyZWF0ZWQgZXZlbiB0aG91
Z2ggdGhlIHNuYXAgb2Zmc2V0cyBhbG9uZSBjYW4gYmUgdXBkYXRlZC4KKyAgICBpZiAoc2Nyb2xs
YWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRzKCkpCisgICAgICAgIG1faG9yaXpvbnRhbFNj
cm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmltYXRv
cj4odGhpcywgc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRzKCksIFNjcm9sbEV2
ZW50QXhpczo6SG9yaXpvbnRhbCk7CisgICAgZWxzZSBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25h
cEFuaW1hdG9yKQorICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxs
cHRyOworCisgICAgaWYgKHNjcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSkKKyAg
ICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhp
c1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywgc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFwT2Zm
c2V0cygpLCBTY3JvbGxFdmVudEF4aXM6OlZlcnRpY2FsKTsKKyAgICBlbHNlIGlmIChtX3ZlcnRp
Y2FsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1h
dG9yID0gbnVsbHB0cjsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdGFydFNjcm9sbFNu
YXBUaW1lcihTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3Jv
bGxDb250cm9sbGVyPiYgc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6
Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgOiBtX3ZlcnRpY2FsU2Ny
b2xsU25hcFRpbWVyOworICAgIGlmICghc2Nyb2xsU25hcFRpbWVyLmlzQWN0aXZlKCkpCisgICAg
ICAgIHNjcm9sbFNuYXBUaW1lci5zdGFydFJlcGVhdGluZygxLjAgLyA2MC4wKTsKK30KKwordm9p
ZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyBh
eGlzKQoreworICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9sbENvbnRyb2xsZXI+JiBzY3JvbGxTbmFw
VGltZXIgPSBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRh
bFNjcm9sbFNuYXBUaW1lciA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7CisgICAgc2Nyb2xs
U25hcFRpbWVyLnN0b3AoKTsKK30KKyAgICAKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6aG9yaXpv
bnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKK3sKKyAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xs
U25hcEFuaW1hdG9yKQorICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNj
cm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjp2
ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKK3sKKyAgICBpZiAobV92ZXJ0aWNhbFNjcm9s
bFNuYXBBbmltYXRvcikKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+c2Ny
b2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOworfQorCitMYXlvdXRVbml0IFNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICByZXR1
cm4gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhheGlzKTsKK30KKwordm9pZCBTY3JvbGxD
b250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMsIGZs
b2F0IGRlbHRhKQoreworICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxPbkF4aXMoYXhpcywg
ZGVsdGEpOworfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8v
IEVOQUJMRShSVUJCRVJfQkFORElORykKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9BeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAkocmV2aXNpb24gMTgwODg5KQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAko
d29ya2luZyBjb3B5KQpAQCAtNTcsOCArNTcsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB+
QXhpc1Njcm9sbFNuYXBBbmltYXRvckNsaWVudCgpIHsgfQogCiBwdWJsaWM6Ci0gICAgdmlydHVh
bCBMYXlvdXRVbml0IHNjcm9sbE9mZnNldEluQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKLSAg
ICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxv
YXQgdmVsb2NpdHkpID0gMDsKKyAgICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25B
eGlzKFNjcm9sbEV2ZW50QXhpcykgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3Jv
bGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCB2ZWxvY2l0eSkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpID0gMDsKIH07
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRv
ci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9s
bFNuYXBBbmltYXRvci5tbQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0JKHdvcmtpbmcgY29weSkKQEAgLTEx
Nyw3ICsxMTcsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmhhbmRsZVdoZWVsCiAg
ICAgICAgIC8vIEJlZ2luIHRyYWNraW5nIHdoZWVsIGRlbHRhcyBmb3IgZ2xpZGUgcHJlZGljdGlv
bi4KICAgICAgICAgZW5kU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3RhdGU6OlVzZXJJ
bnRlcmFjdGlvbik7CiAgICAgICAgIHB1c2hJbml0aWFsV2hlZWxEZWx0YSh3aGVlbERlbHRhKTsK
LSAgICAgICAgbV9iZWdpblRyYWNraW5nV2hlZWxEZWx0YU9mZnNldCA9IG1fY2xpZW50LT5zY3Jv
bGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAgICAgICAgbV9iZWdpblRyYWNraW5nV2hlZWxEZWx0
YU9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlzKTsKICAgICAgICAg
YnJlYWs7CiAKICAgICBjYXNlIFdoZWVsRXZlbnRTdGF0dXM6OkluZXJ0aWFsU2Nyb2xsaW5nOgpA
QCAtMTUzLDcgKzE1Myw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6c2Nyb2xsU25h
cEEKICAgICBBU1NFUlQobV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5n
IHx8IG1fY3VycmVudFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcpOwogICAgIGZs
b2F0IGRlbHRhID0gbV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyA/
IGNvbXB1dGVTbmFwRGVsdGEoKSA6IGNvbXB1dGVHbGlkZURlbHRhKCk7CiAgICAgaWYgKGRlbHRh
KQotICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKG1fYXhpcywgZGVsdGEp
OworICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsT25BeGlzKG1fYXhpcywgZGVsdGEp
OwogICAgIGVsc2UKICAgICAgICAgZW5kU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3Rh
dGU6OkRlc3RpbmF0aW9uUmVhY2hlZCk7CiB9CkBAIC0xNjEsNyArMTYxLDcgQEAgdm9pZCBBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yOjpzY3JvbGxTbmFwQQogdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yOjpiZWdpblNjcm9sbFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlIG5ld1N0YXRlKQog
ewogICAgIEFTU0VSVChuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgfHwgbmV3
U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyk7Ci0gICAgTGF5b3V0VW5pdCBvZmZz
ZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5b3V0VW5p
dCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgZmxv
YXQgaW5pdGlhbFdoZWVsRGVsdGEgPSBuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRp
bmcgPyBhdmVyYWdlSW5pdGlhbFdoZWVsRGVsdGEoKSA6IDA7CiAgICAgTGF5b3V0VW5pdCBwcm9q
ZWN0ZWRTY3JvbGxEZXN0aW5hdGlvbiA9IG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xp
ZGluZyA/IG1fYmVnaW5UcmFja2luZ1doZWVsRGVsdGFPZmZzZXQgKyBMYXlvdXRVbml0KHByb2pl
Y3RlZEluZXJ0aWFsU2Nyb2xsRGlzdGFuY2UoaW5pdGlhbFdoZWVsRGVsdGEpKSA6IG9mZnNldDsK
ICAgICBwcm9qZWN0ZWRTY3JvbGxEZXN0aW5hdGlvbiA9IHN0ZDo6bWluKHN0ZDo6bWF4KHByb2pl
Y3RlZFNjcm9sbERlc3RpbmF0aW9uLCBtX3NuYXBPZmZzZXRzLT5maXJzdCgpKSwgbV9zbmFwT2Zm
c2V0cy0+bGFzdCgpKTsKQEAgLTIwMyw3ICsyMDMsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFwQW5p
bWF0b3I6OmVuZFNjcm9sbFNuCiAvLyByZWxhdGlvbnNoaXAgb2YgdGhlIGRpc3RhbmNlIHRyYXZl
bGVkLCBjbGFtcGVkIGJ5IGFyYml0cmFyeSBtaW4gYW5kIG1heCB2YWx1ZXMuCiBmbG9hdCBBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yOjpjb21wdXRlU25hcERlbHRhKCkgY29uc3QKIHsKLSAgICBMYXlv
dXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAg
ICBMYXlvdXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlz
KTsKICAgICBib29sIGNhbkNvbXB1dGVTbmFwID0gIChtX2luaXRpYWxPZmZzZXQgPD0gb2Zmc2V0
ICYmIG9mZnNldCA8IG1fdGFyZ2V0T2Zmc2V0KSB8fCAobV90YXJnZXRPZmZzZXQgPCBvZmZzZXQg
JiYgb2Zmc2V0IDw9IG1faW5pdGlhbE9mZnNldCk7CiAgICAgaWYgKG1fY3VycmVudFN0YXRlICE9
IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcgfHwgIWNhbkNvbXB1dGVTbmFwKQogICAgICAgICBy
ZXR1cm4gMDsKQEAgLTIzNyw3ICsyMzcsNyBAQCBmbG9hdCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9y
Ojpjb21wdXRlU25hCiAvLyBhbmQgVkYuIFRodXMsIHdlIGNhbiBleHByZXNzIG91ciBnbGlkaW5n
IGVxdWF0aW9uIGFsbCBpbiB0ZXJtcyBvZiBWMCwgVkYgYW5kIHQuCiBmbG9hdCBBeGlzU2Nyb2xs
U25hcEFuaW1hdG9yOjpjb21wdXRlR2xpZGVEZWx0YSgpIGNvbnN0CiB7Ci0gICAgTGF5b3V0VW5p
dCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5
b3V0VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAg
ICAgYm9vbCBjYW5Db21wdXRlR2xpZGUgPSAobV9pbml0aWFsT2Zmc2V0IDw9IG9mZnNldCAmJiBv
ZmZzZXQgPCBtX3RhcmdldE9mZnNldCkgfHwgKG1fdGFyZ2V0T2Zmc2V0IDwgb2Zmc2V0ICYmIG9m
ZnNldCA8PSBtX2luaXRpYWxPZmZzZXQpOwogICAgIGlmIChtX2N1cnJlbnRTdGF0ZSAhPSBTY3Jv
bGxTbmFwU3RhdGU6OkdsaWRpbmcgfHwgIWNhbkNvbXB1dGVHbGlkZSkKICAgICAgICAgcmV0dXJu
IDA7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0
b3JNYWMuaAkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1Njcm9sbEFuaW1hdG9yTWFjLmgJKHdvcmtpbmcgY29weSkKQEAgLTMyLDcgKzMyLDYgQEAKICNp
bmNsdWRlICJGbG9hdFBvaW50LmgiCiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCiAjaW5jbHVkZSAi
U2Nyb2xsQW5pbWF0b3IuaCIKLSNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjaW5jbHVk
ZSAiVGltZXIuaCIKICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKQEAgLTQyLDE1ICs0MSwx
MSBAQCBPQkpDX0NMQVNTIFdlYlNjcm9sbGJhclBhaW50ZXJEZWxlZ2F0ZTsKIAogdHlwZWRlZiBp
ZCBTY3JvbGxiYXJQYWludGVyQ29udHJvbGxlcjsKIAotI2lmICFFTkFCTEUoUlVCQkVSX0JBTkRJ
TkcpCi1jbGFzcyBTY3JvbGxDb250cm9sbGVyQ2xpZW50IHsgfTsKLSNlbmRpZgotCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIGNsYXNzIFNjcm9sbGJhcjsKIAotY2xhc3MgU2Nyb2xsQW5pbWF0b3JN
YWMgOiBwdWJsaWMgU2Nyb2xsQW5pbWF0b3IsIHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNsaWVu
dCB7CitjbGFzcyBTY3JvbGxBbmltYXRvck1hYyA6IHB1YmxpYyBTY3JvbGxBbmltYXRvciB7CiAK
IHB1YmxpYzoKICAgICBTY3JvbGxBbmltYXRvck1hYyhTY3JvbGxhYmxlQXJlYSYpOwpAQCAtMTUw
LDE3ICsxNDUsMTEgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50IGFi
c29sdXRlU2Nyb2xsUG9zaXRpb24oKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUm
KSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxv
YXRTaXplJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRU
aW1lcigpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1l
cigpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91
bmRzSWZOZWNlc3NhcnkoKSBvdmVycmlkZTsKIAogICAgIGJvb2wgcGlubmVkSW5EaXJlY3Rpb24o
ZmxvYXQgZGVsdGFYLCBmbG9hdCBkZWx0YVkpOwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1l
ckZpcmVkKCk7CiAKICAgICBib29sIGlzQWxyZWFkeVBpbm5lZEluRGlyZWN0aW9uT2ZHZXN0dXJl
KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYsIFNjcm9sbEV2ZW50QXhpcyk7Ci0KLSAgICBTY3Jv
bGxDb250cm9sbGVyIG1fc2Nyb2xsQ29udHJvbGxlcjsKLSAgICBUaW1lciBtX3NuYXBSdWJiZXJC
YW5kVGltZXI7CiAjZW5kaWYKIAogICAgIGJvb2wgbV9oYXZlU2Nyb2xsZWRTaW5jZVBhZ2VMb2Fk
OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRv
ck1hYy5tbQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1Njcm9sbEFuaW1hdG9yTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC02NDMsMTAgKzY0Myw2IEBA
IFNjcm9sbEFuaW1hdG9yTWFjOjpTY3JvbGxBbmltYXRvck1hYyhTY3IKICAgICA6IFNjcm9sbEFu
aW1hdG9yKHNjcm9sbGFibGVBcmVhKQogICAgICwgbV9pbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1l
cigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjppbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1lckZp
cmVkKQogICAgICwgbV9zZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyKCp0aGlzLCAmU2Nyb2xs
QW5pbWF0b3JNYWM6OnNlbmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXJGaXJlZCkKLSNpZiBFTkFC
TEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgLCBtX3Njcm9sbENvbnRyb2xsZXIodGhpcykKLSAgICAs
IG1fc25hcFJ1YmJlckJhbmRUaW1lcigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjpzbmFwUnVi
YmVyQmFuZFRpbWVyRmlyZWQpCi0jZW5kaWYKICAgICAsIG1faGF2ZVNjcm9sbGVkU2luY2VQYWdl
TG9hZChmYWxzZSkKICAgICAsIG1fbmVlZHNTY3JvbGxlclN0eWxlVXBkYXRlKGZhbHNlKQogewpA
QCAtMTI3MCwyMSArMTI2Niw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OmltbWVkaWF0ZVNj
cm9sbEIKICAgICBtX2N1cnJlbnRQb3NZID0gbmV3UG9zLnkoKTsKICAgICBub3RpZnlQb3NpdGlv
bkNoYW5nZWQoYWRqdXN0ZWREZWx0YSk7CiB9Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnN0
YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9zbmFwUnViYmVyQmFuZFRpbWVyLnN0
YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpz
dG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9zbmFwUnViYmVyQmFuZFRpbWVyLnN0
b3AoKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZp
cmVkKCkKLXsKLSAgICBtX3Njcm9sbENvbnRyb2xsZXIuc25hcFJ1YmJlckJhbmRUaW1lckZpcmVk
KCk7Ci19CiAjZW5kaWYKIAogdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6dXBkYXRlU2Nyb2xsZXJT
dHlsZSgpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxl
ci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250
cm9sbGVyLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsMTA3ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBB
TkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KLSAqLwotCi0jaWZuZGVmIFNjcm9sbENvbnRyb2xsZXJfaAotI2RlZmluZSBTY3JvbGxDb250
cm9sbGVyX2gKLQotI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLQotI2luY2x1ZGUgIkZsb2F0
UG9pbnQuaCIKLSNpbmNsdWRlICJGbG9hdFNpemUuaCIKLSNpbmNsdWRlICJTY3JvbGxUeXBlcy5o
IgotI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0K
LWNsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKLQotY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNsaWVu
dCB7Ci1wcm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+U2Nyb2xsQ29udHJvbGxlckNsaWVudCgpIHsg
fQotCi1wdWJsaWM6Ci0gICAgdmlydHVhbCBib29sIGFsbG93c0hvcml6b250YWxTdHJldGNoaW5n
KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgYWxsb3dz
VmVydGljYWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKLSAgICB2
aXJ0dWFsIEludFNpemUgc3RyZXRjaEFtb3VudCgpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgcGlu
bmVkSW5EaXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBj
YW5TY3JvbGxIb3Jpem9udGFsbHkoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIGNhblNjcm9sbFZl
cnRpY2FsbHkoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIHNob3VsZFJ1YmJlckJhbmRJbkRpcmVj
dGlvbihTY3JvbGxEaXJlY3Rpb24pID0gMDsKLQotICAgIC8vIFJldHVybiB0aGUgYWJzb2x1dGUg
c2Nyb2xsIHBvc2l0aW9uLCBub3QgcmVsYXRpdmUgdG8gdGhlIHNjcm9sbCBvcmlnaW4uCi0gICAg
dmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgPSAwOwot
Ci0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0g
MDsKLSAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VD
b25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0
U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJi
ZXJiYW5kVGltZXIoKSA9IDA7Ci0KLSAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRp
b24gaXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UK
LSAgICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9pbnQu
Ci0gICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2Fy
eSgpID0gMDsKLX07Ci0KLWNsYXNzIFNjcm9sbENvbnRyb2xsZXIgewotICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKFNjcm9sbENvbnRyb2xsZXIpOwotCi1wdWJsaWM6Ci0gICAgZXhwbGljaXQgU2Ny
b2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50Kik7Ci0KLSAgICBib29sIGhhbmRs
ZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0gICAgdm9pZCBzbmFwUnVi
YmVyQmFuZFRpbWVyRmlyZWQoKTsKLQotICAgIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygp
IGNvbnN0OwotCi1wcml2YXRlOgotICAgIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsK
LSAgICB2b2lkIHNuYXBSdWJiZXJCYW5kKCk7Ci0KLSAgICBib29sIHNob3VsZFJ1YmJlckJhbmRJ
bkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0KLSAgICBT
Y3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKLQotICAgIGJvb2wgbV9pblNjcm9sbEdl
c3R1cmU7Ci0gICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsKLSAgICBib29sIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzOwotICAgIAotICAgIENGVGltZUludGVydmFsIG1fbGFzdE1v
bWVudHVtU2Nyb2xsVGltZXN0YW1wOwotICAgIEZsb2F0U2l6ZSBtX292ZXJmbG93U2Nyb2xsRGVs
dGE7Ci0gICAgRmxvYXRTaXplIG1fc3RyZXRjaFNjcm9sbEZvcmNlOwotICAgIEZsb2F0U2l6ZSBt
X21vbWVudHVtVmVsb2NpdHk7Ci0KLSAgICAvLyBSdWJiZXIgYmFuZCBzdGF0ZS4KLSAgICBDRlRp
bWVJbnRlcnZhbCBtX3N0YXJ0VGltZTsKLSAgICBGbG9hdFNpemUgbV9zdGFydFN0cmV0Y2g7Ci0g
ICAgRmxvYXRQb2ludCBtX29yaWdPcmlnaW47Ci0gICAgRmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5
OwotCi0gICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJfQkFORElORykKLQot
I2VuZGlmIC8vIFNjcm9sbENvbnRyb2xsZXJfaApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDQwNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDE0LTIw
MTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAi
Y29uZmlnLmgiCi0jaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgotCi0jaW5jbHVkZSAiUGxh
dGZvcm1XaGVlbEV2ZW50LmgiCi0jaW5jbHVkZSAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIgot
I2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KLSNpbmNsdWRlIDxzeXMvdGltZS5oPgotCi0jaWYgRU5B
QkxFKFJVQkJFUl9CQU5ESU5HKQotCi1zdGF0aWMgTlNUaW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1l
KCkKLXsKLSAgICBpZiAoW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSByZXNwb25kc1RvU2Vs
ZWN0b3I6QHNlbGVjdG9yKHN5c3RlbVVwdGltZSldKQotICAgICAgICByZXR1cm4gW1tOU1Byb2Nl
c3NJbmZvIHByb2Nlc3NJbmZvXSBzeXN0ZW1VcHRpbWVdOwotCi0gICAgLy8gR2V0IGhvdyBsb25n
IHN5c3RlbSBoYXMgYmVlbiB1cC4gRm91bmQgYnkgbG9va2luZyBnZXR0aW5nICJib290dGltZSIg
ZnJvbSB0aGUga2VybmVsLgotICAgIHN0YXRpYyBzdHJ1Y3QgdGltZXZhbCBib290dGltZSA9IHsw
LCAwfTsKLSAgICBpZiAoIWJvb3R0aW1lLnR2X3NlYykgewotICAgICAgICBpbnQgbWliWzJdID0g
e0NUTF9LRVJOLCBLRVJOX0JPT1RUSU1FfTsKLSAgICAgICAgc2l6ZV90IHNpemUgPSBzaXplb2Yo
Ym9vdHRpbWUpOwotICAgICAgICBpZiAoLTEgPT0gc3lzY3RsKG1pYiwgMiwgJmJvb3R0aW1lLCAm
c2l6ZSwgMCwgMCkpCi0gICAgICAgICAgICBib290dGltZS50dl9zZWMgPSAwOwotICAgIH0KLSAg
ICBzdHJ1Y3QgdGltZXZhbCBub3c7Ci0gICAgaWYgKGJvb3R0aW1lLnR2X3NlYyAmJiAtMSAhPSBn
ZXR0aW1lb2ZkYXkoJm5vdywgMCkpIHsKLSAgICAgICAgc3RydWN0IHRpbWV2YWwgdXB0aW1lOwot
ICAgICAgICB0aW1lcnN1Yigmbm93LCAmYm9vdHRpbWUsICZ1cHRpbWUpOwotICAgICAgICBOU1Rp
bWVJbnRlcnZhbCByZXN1bHQgPSB1cHRpbWUudHZfc2VjICsgKHVwdGltZS50dl91c2VjIC8gMUUr
Nik7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAgfQotICAgIHJldHVybiAwOwotfQotCi0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotc3RhdGljIGNvbnN0IGZsb2F0IHNjcm9sbFZlbG9jaXR5
WmVyb2luZ1RpbWVvdXQgPSAwLjEwZjsKLXN0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5kRGly
ZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbyA9IDE7Ci1zdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFu
ZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCA9IDEwOwotCi1zdGF0aWMgZmxvYXQg
ZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKGZsb2F0IGluaXRpYWxQb3NpdGlvbiwgZmxvYXQgaW5p
dGlhbFZlbG9jaXR5LCBmbG9hdCBlbGFwc2VkVGltZSkKLXsKLSAgICByZXR1cm4gd2tOU0VsYXN0
aWNEZWx0YUZvclRpbWVEZWx0YShpbml0aWFsUG9zaXRpb24sIGluaXRpYWxWZWxvY2l0eSwgZWxh
cHNlZFRpbWUpOwotfQotCi1zdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRh
KGZsb2F0IGRlbHRhKQotewotICAgIHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERl
bHRhKGRlbHRhKTsKLX0KLQotc3RhdGljIGZsb2F0IHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0
YShmbG9hdCBkZWx0YSkKLXsKLSAgICByZXR1cm4gd2tOU1JlYm91bmREZWx0YUZvckVsYXN0aWNE
ZWx0YShkZWx0YSk7Ci19Ci0KLXN0YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKQot
ewotICAgIHN0YXRpYyBmbG9hdCBtdWx0aXBsaWVyID0gLTE7Ci0gICAgaWYgKG11bHRpcGxpZXIg
PCAwKSB7Ci0gICAgICAgIG11bHRpcGxpZXIgPSBbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNl
ckRlZmF1bHRzXSBmbG9hdEZvcktleTpAIk5TU2Nyb2xsV2hlZWxNdWx0aXBsaWVyIl07Ci0gICAg
ICAgIGlmIChtdWx0aXBsaWVyIDw9IDApCi0gICAgICAgICAgICBtdWx0aXBsaWVyID0gMTsKLSAg
ICB9Ci0gICAgcmV0dXJuIG11bHRpcGxpZXI7Ci19Ci0KLVNjcm9sbENvbnRyb2xsZXI6OlNjcm9s
bENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCogY2xpZW50KQotICAgIDogbV9jbGll
bnQoY2xpZW50KQotICAgICwgbV9pblNjcm9sbEdlc3R1cmUoZmFsc2UpCi0gICAgLCBtX21vbWVu
dHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxzZSkKLSAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxz
KGZhbHNlKQotICAgICwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAgICAsIG1f
c3RhcnRUaW1lKDApCi0gICAgLCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkK
LXsKLX0KLQotYm9vbCBTY3JvbGxDb250cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBs
YXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKLXsKLSAgICBpZiAod2hlZWxFdmVudC5waGFz
ZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4pIHsKLSAgICAgICAgLy8gRmlyc3Qs
IGNoZWNrIGlmIHdlIHNob3VsZCBydWJiZXItYmFuZCBhdCBhbGwuCi0gICAgICAgIGlmIChtX2Ns
aWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKC13aGVlbEV2ZW50LmRlbHRhWCgpLCAw
KSkKLSAgICAgICAgICAgICYmICFzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9u
KHdoZWVsRXZlbnQpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgIG1faW5T
Y3JvbGxHZXN0dXJlID0gdHJ1ZTsKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3Mg
PSBmYWxzZTsKLSAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAgICAg
ICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAwOwotICAgICAgICBtX21vbWVudHVt
VmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLQotICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQg
PSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3Jj
ZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC53aWR0
aCgpKSk7Ci0gICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJvdW5kRGVs
dGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC5oZWlnaHQoKSkpOwotICAgICAgICBtX292
ZXJmbG93U2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKLQotICAgICAgICBzdG9wU25hcFJ1YmJl
cmJhbmRUaW1lcigpOwotCi0gICAgICAgIHJldHVybiB0cnVlOwotICAgIH0KLQotICAgIGlmICh3
aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAg
ICAgICBzbmFwUnViYmVyQmFuZCgpOwotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0KLSAg
ICBib29sIGlzTW9tZW50dW1TY3JvbGxFdmVudCA9ICh3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2Uo
KSAhPSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZU5vbmUpOwotICAgIGlmIChtX2lnbm9yZU1vbWVu
dHVtU2Nyb2xscyAmJiAoaXNNb21lbnR1bVNjcm9sbEV2ZW50IHx8IG1fc25hcFJ1YmJlcmJhbmRU
aW1lcklzQWN0aXZlKSkgewotICAgICAgICBpZiAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCkg
PT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAgICAgICAgICAgbV9pZ25vcmVN
b21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAg
ICB9Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICBmbG9hdCBkZWx0YVggPSBt
X292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKTsKLSAgICBmbG9hdCBkZWx0YVkgPSBtX292ZXJm
bG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCk7Ci0KLSAgICAvLyBSZXNldCBvdmVyZmxvdyB2YWx1ZXMg
YmVjYXVzZSB3ZSBtYXkgZGVjaWRlIHRvIHJlbW92ZSBkZWx0YSBhdCB2YXJpb3VzIHBvaW50cyBh
bmQgcHV0IGl0IGludG8gb3ZlcmZsb3cuCi0gICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxv
YXRTaXplKCk7Ci0KLSAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRj
aEFtb3VudCgpOwotICAgIGJvb2wgaXNWZXJ0aWNhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFtb3Vu
dC5oZWlnaHQoKTsKLSAgICBib29sIGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFt
b3VudC53aWR0aCgpOwotCi0gICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVg7Ci0gICAgZmxv
YXQgZXZlbnRDb2FsZXNjZWREZWx0YVk7Ci0KLSAgICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRjaGVk
IHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7Ci0gICAgICAgIGV2ZW50Q29hbGVzY2VkRGVs
dGFYID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWCgpOwotICAgICAg
ICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxp
bmdEZWx0YVkoKTsKLSAgICB9IGVsc2UgewotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9
IC13aGVlbEV2ZW50LmRlbHRhWCgpOwotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13
aGVlbEV2ZW50LmRlbHRhWSgpOwotICAgIH0KLQotICAgIGRlbHRhWCArPSBldmVudENvYWxlc2Nl
ZERlbHRhWDsKLSAgICBkZWx0YVkgKz0gZXZlbnRDb2FsZXNjZWREZWx0YVk7Ci0KLSAgICAvLyBT
bGlnaHRseSBwcmVmZXIgc2Nyb2xsaW5nIHZlcnRpY2FsbHkgYnkgYXBwbHlpbmcgdGhlID0gY2Fz
ZSB0byBkZWx0YVkKLSAgICBpZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJzZihkZWx0YVgpKQotICAg
ICAgICBkZWx0YVggPSAwOwotICAgIGVsc2UKLSAgICAgICAgZGVsdGFZID0gMDsKLQotICAgIGJv
b2wgc2hvdWxkU3RyZXRjaCA9IGZhbHNlOwotCi0gICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2Ug
bW9tZW50dW1QaGFzZSA9IHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpOwotCi0gICAgLy8gSWYg
d2UgYXJlIHN0YXJ0aW5nIG1vbWVudHVtIHNjcm9sbGluZyB0aGVuIGRvIHNvbWUgc2V0dXAuCi0g
ICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAobW9tZW50dW1QaGFzZSA9PSBQ
bGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuIHx8IG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1X
aGVlbEV2ZW50UGhhc2VDaGFuZ2VkKSkKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jl
c3MgPSB0cnVlOwotCi0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gd2hlZWxFdmVudC50
aW1lc3RhbXAoKSAtIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOwotICAgIGlmIChtX2lu
U2Nyb2xsR2VzdHVyZSB8fCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykgewotICAgICAgICBp
ZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID4gMCAmJiB0aW1l
RGVsdGEgPCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0KSB7Ci0gICAgICAgICAgICBtX21v
bWVudHVtVmVsb2NpdHkuc2V0V2lkdGgoZXZlbnRDb2FsZXNjZWREZWx0YVggLyAoZmxvYXQpdGlt
ZURlbHRhKTsKLSAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eS5zZXRIZWlnaHQoZXZlbnRD
b2FsZXNjZWREZWx0YVkgLyAoZmxvYXQpdGltZURlbHRhKTsKLSAgICAgICAgICAgIG1fbGFzdE1v
bWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsKLSAgICAgICAg
fSBlbHNlIHsKLSAgICAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hl
ZWxFdmVudC50aW1lc3RhbXAoKTsKLSAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZs
b2F0U2l6ZSgpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGlzVmVydGljYWxseVN0cmV0Y2hl
ZCkgewotICAgICAgICAgICAgaWYgKCFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiBtX2NsaWVu
dC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7Ci0gICAgICAgICAg
ICAgICAgLy8gU3RyZXRjaGluZyBvbmx5IGluIHRoZSB2ZXJ0aWNhbC4KLSAgICAgICAgICAgICAg
ICBpZiAoZGVsdGFZICYmIChmYWJzZihkZWx0YVggLyBkZWx0YVkpIDwgcnViYmVyYmFuZERpcmVj
dGlvbkxvY2tTdHJldGNoUmF0aW8pKQotICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwot
ICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11
bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1fb3Zl
cmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSAr
IGRlbHRhWCk7Ci0gICAgICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7Ci0gICAgICAgICAgICAg
ICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRX
aWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAg
ICB9Ci0gICAgICAgIH0gZWxzZSBpZiAoaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKLSAgICAg
ICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgaG9yaXpvbnRhbC4KLSAgICAgICAgICAg
IGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkpKSB7
Ci0gICAgICAgICAgICAgICAgaWYgKGRlbHRhWCAmJiAoZmFic2YoZGVsdGFZIC8gZGVsdGFYKSA8
IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKLSAgICAgICAgICAgICAgICAg
ICAgZGVsdGFZID0gMDsKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVkpIDwg
cnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgewotICAgICAgICAg
ICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3Jv
bGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7Ci0gICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9
IDA7Ci0gICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZs
b3dTY3JvbGxEZWx0YS5zZXRIZWlnaHQobV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpICsg
ZGVsdGFZKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIC8v
IE5vdCBzdHJldGNoaW5nIGF0IGFsbCB5ZXQuCi0gICAgICAgICAgICBpZiAobV9jbGllbnQtPnBp
bm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIGRlbHRhWSkpKSB7Ci0gICAgICAgICAg
ICAgICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkgewotICAgICAgICAgICAg
ICAgICAgICBpZiAoZmFic2YoZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0
YUJlZm9yZVN0cmV0Y2gpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3Jv
bGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7
Ci0gICAgICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAgICAg
ICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5z
ZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAg
ICAgICAgICAgfQotICAgICAgICAgICAgICAgIHNob3VsZFN0cmV0Y2ggPSB0cnVlOwotICAgICAg
ICAgICAgfQotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGRlbHRhWCB8fCBkZWx0YVkpIHsK
LSAgICAgICAgaWYgKCEoc2hvdWxkU3RyZXRjaCB8fCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgfHwg
aXNIb3Jpem9udGFsbHlTdHJldGNoZWQpKSB7Ci0gICAgICAgICAgICBpZiAoZGVsdGFZKSB7Ci0g
ICAgICAgICAgICAgICAgZGVsdGFZICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotICAgICAg
ICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoMCwgZGVsdGFZ
KSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoZGVsdGFYKSB7Ci0gICAgICAgICAg
ICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotICAgICAgICAgICAgICAg
IG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoZGVsdGFYLCAwKSk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5h
bGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgewotICAgICAgICAgICAgICAg
IGRlbHRhWCA9IDA7Ci0gICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAwOwot
ICAgICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVggJiYgIWlzSG9yaXpvbnRhbGx5U3RyZXRjaGVk
ICYmICFtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7
Ci0gICAgICAgICAgICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotCi0g
ICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRF
ZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKGRlbHRhWCwgMCkpOwotICAgICAgICAgICAgICAgIGRl
bHRhWCA9IDA7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmFs
bG93c1ZlcnRpY2FsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgewotICAgICAgICAgICAgICAgIGRl
bHRhWSA9IDA7Ci0gICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAwOwotICAg
ICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVkgJiYgIWlzVmVydGljYWxseVN0cmV0Y2hlZCAmJiAh
bV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgewotICAg
ICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLQotICAgICAg
ICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNv
bnN0cmFpbnRzKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKTsKLSAgICAgICAgICAgICAgICBkZWx0YVkg
PSAwOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQg
PSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotCi0gICAgICAgICAgICBpZiAobV9tb21lbnR1
bVNjcm9sbEluUHJvZ3Jlc3MpIHsKLSAgICAgICAgICAgICAgICBpZiAoKG1fY2xpZW50LT5waW5u
ZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZXZlbnRDb2FsZXNjZWREZWx0YVgsIGV2ZW50Q29hbGVz
Y2VkRGVsdGFZKSkgfHwgKGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFYKSArIGZhYnNmKGV2ZW50
Q29hbGVzY2VkRGVsdGFZKSA8PSAwKSkgJiYgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAp
IHsKLSAgICAgICAgICAgICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSB0cnVlOwot
ICAgICAgICAgICAgICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOwot
ICAgICAgICAgICAgICAgICAgICBzbmFwUnViYmVyQmFuZCgpOwotICAgICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lk
dGgobV9zdHJldGNoU2Nyb2xsRm9yY2Uud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAgICBt
X3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQobV9zdHJldGNoU2Nyb2xsRm9yY2UuaGVpZ2h0
KCkgKyBkZWx0YVkpOwotCi0gICAgICAgICAgICBGbG9hdFNpemUgZGFtcGVkRGVsdGEoY2VpbGYo
ZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkp
KSwgY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNl
LmhlaWdodCgpKSkpOwotCi0gICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlX
aXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhkYW1wZWREZWx0YSAtIHN0cmV0Y2hBbW91bnQp
OwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNz
ICYmIG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAg
ICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOwotICAgICAgICBtX2lnbm9y
ZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOwotICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRp
bWVzdGFtcCA9IDA7Ci0gICAgfQotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXN0YXRpYyBpbmxp
bmUgZmxvYXQgcm91bmRUb3dhcmRaZXJvKGZsb2F0IG51bSkKLXsKLSAgICByZXR1cm4gbnVtID4g
MCA/IGNlaWxmKG51bSAtIDAuNWYpIDogZmxvb3JmKG51bSArIDAuNWYpOwotfQotCi1zdGF0aWMg
aW5saW5lIGZsb2F0IHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZmxvYXQgbnVtKQotewot
ICAgIGZsb2F0IHJvdW5kZWROdW0gPSByb3VuZGYobnVtKTsKLSAgICBpZiAoZmFicyhudW0gLSBy
b3VuZGVkTnVtKSA8IDAuMTI1KQotICAgICAgICBudW0gPSByb3VuZGVkTnVtOwotCi0gICAgcmV0
dXJuIHJvdW5kVG93YXJkWmVybyhudW0pOwotfQotCi12b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNu
YXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCi17Ci0gICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Q
cm9ncmVzcyB8fCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscykgewotICAgICAgICBDRlRpbWVJbnRl
cnZhbCB0aW1lRGVsdGEgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV0g
LSBtX3N0YXJ0VGltZTsKLQotICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXpl
KCkpIHsKLSAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91
bnQoKTsKLSAgICAgICAgICAgIGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNpemUoKSkgewot
ICAgICAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0KLSAgICAgICAgICAg
ICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgICAg
IG1fc3RhcnRUaW1lID0gMDsKLSAgICAgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0
U2l6ZSgpOwotICAgICAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKLSAg
ICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAg
ICAgIHJldHVybjsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0g
bV9jbGllbnQtPmFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSAtIG1fc3RhcnRTdHJldGNoOwotICAg
ICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBtX21vbWVudHVtVmVsb2NpdHk7Ci0KLSAgICAgICAg
ICAgIC8vIEp1c3QgbGlrZSBub3JtYWwgc2Nyb2xsaW5nLCBwcmVmZXIgdmVydGljYWwgcnViYmVy
YmFuZGluZwotICAgICAgICAgICAgaWYgKGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgpKSA+
PSBmYWJzZihtX29yaWdWZWxvY2l0eS53aWR0aCgpKSkKLSAgICAgICAgICAgICAgICBtX29yaWdW
ZWxvY2l0eS5zZXRXaWR0aCgwKTsKLQotICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQg
aG9yaXpvbnRhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCBob3Jpem9udGFsbHkK
LSAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmNhblNjcm9sbEhvcml6b250YWxseSgpKQotICAg
ICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldFdpZHRoKDApOwotCi0gICAgICAgICAgICAv
LyBEb24ndCBydWJiZXItYmFuZCB2ZXJ0aWNhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNj
cm9sbCB2ZXJ0aWNhbGx5Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxWZXJ0
aWNhbGx5KCkpCi0gICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0SGVpZ2h0KDApOwot
ICAgICAgICB9Ci0KLSAgICAgICAgRmxvYXRQb2ludCBkZWx0YShyb3VuZFRvRGV2aWNlUGl4ZWxU
b3dhcmRaZXJvKGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShtX3N0YXJ0U3RyZXRjaC53aWR0aCgp
LCAtbV9vcmlnVmVsb2NpdHkud2lkdGgoKSwgKGZsb2F0KXRpbWVEZWx0YSkpLAotICAgICAgICAg
ICAgcm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEo
bV9zdGFydFN0cmV0Y2guaGVpZ2h0KCksIC1tX29yaWdWZWxvY2l0eS5oZWlnaHQoKSwgKGZsb2F0
KXRpbWVEZWx0YSkpKTsKLQotICAgICAgICBpZiAoZmFicyhkZWx0YS54KCkpID49IDEgfHwgZmFi
cyhkZWx0YS55KCkpID49IDEpIHsKLSAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3Jv
bGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YS54KCksIGRl
bHRhLnkoKSkgLSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpKTsKLQotICAgICAgICAgICAgRmxv
YXRTaXplIG5ld1N0cmV0Y2ggPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotCi0gICAgICAg
ICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGlj
RGVsdGEobmV3U3RyZXRjaC53aWR0aCgpKSk7Ci0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZS5zZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2guaGVp
Z2h0KCkpKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIG1fY2xpZW50LT5hZGp1c3RT
Y3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKTsKLQotICAgICAgICAgICAgc3RvcFNu
YXBSdWJiZXJiYW5kVGltZXIoKTsKLSAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlID0g
RmxvYXRTaXplKCk7Ci0gICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7Ci0gICAgICAgICAgICBt
X3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0g
RmxvYXRQb2ludCgpOwotICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsK
LSAgICAgICAgfQotICAgIH0gZWxzZSB7Ci0gICAgICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0
aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOwotICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9
IEZsb2F0U2l6ZSgpOwotICAgIH0KLX0KLQotYm9vbCBTY3JvbGxDb250cm9sbGVyOjppc1J1YmJl
ckJhbmRJblByb2dyZXNzKCkgY29uc3QKLXsKLSAgICBpZiAoIW1faW5TY3JvbGxHZXN0dXJlICYm
ICFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAhbV9zbmFwUnViYmVyYmFuZFRpbWVySXNB
Y3RpdmUpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJldHVybiAhbV9jbGllbnQtPnN0
cmV0Y2hBbW91bnQoKS5pc1plcm8oKTsKLX0KLQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9w
U25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVyYmFu
ZFRpbWVyKCk7Ci0gICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSBmYWxzZTsKLX0K
LQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCi17Ci0gICAgQ0ZUaW1l
SW50ZXJ2YWwgdGltZURlbHRhID0gc3lzdGVtVXB0aW1lKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9s
bFRpbWVzdGFtcDsKLSAgICBpZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGlt
ZURlbHRhID49IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQpCi0gICAgICAgIG1fbW9tZW50
dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgbV9pblNjcm9sbEdlc3R1cmUgPSBmYWxz
ZTsKLQotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkKLSAgICAgICAgcmV0
dXJuOwotCi0gICAgbV9zdGFydFRpbWUgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJl
bmNlRGF0ZV07Ci0gICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICBtX29yaWdP
cmlnaW4gPSBGbG9hdFBvaW50KCk7Ci0gICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsK
LQotICAgIG1fY2xpZW50LT5zdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLSAgICBtX3NuYXBS
dWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJvbGxl
cjo6c2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdo
ZWVsRXZlbnQmIHdoZWVsRXZlbnQpCi17Ci0gICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPiAw
KQotICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihT
Y3JvbGxMZWZ0KTsKLSAgICBpZiAod2hlZWxFdmVudC5kZWx0YVgoKSA8IDApCi0gICAgICAgIHJl
dHVybiBtX2NsaWVudC0+c2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbFJpZ2h0KTsK
LQotICAgIHJldHVybiB0cnVlOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247696</attachid>
            <date>2015-03-02 13:17:50 -0800</date>
            <delta_ts>2015-03-02 14:13:10 -0800</delta_ts>
            <desc>Patch v7 (Hopefully final iOS fix). All tests should pass.</desc>
            <filename>bug-142102-20150302131733.patch</filename>
            <type>text/plain</type>
            <size>83609</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE1LTAzLTAyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorICAg
ICAgICAKKyAgICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxp
bmcgY2xhc3NlczoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1
bkxvb3A6OlRpbWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgor
ICAgICAgICAgICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQ
b2ludCBhbmQgUnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENv
bnRyb2xsZXIgZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNo
YXJpbmcgd2l0aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9y
e01hY30gLT4gU2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNl
dEluQXhpcyAtPiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0
ZVNjcm9sbEluQXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdw
bGF0Zm9ybS9jb2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1h
a2Ugc3VyZSB0aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9s
bAorICAgICAgICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFu
ZGxlZCIgY2FzZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0
aW1lciBhbmQgc29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxD
b250cm9sbGVyIGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRv
IGNsZWFuIHVwIHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyk6IEFkZCB0ZW1w
b3Jhcnkgc3R1YiBuZWVkZWQKKyAgICAgICAgdW50aWwgQnVnIDE0MTk3MyBpcyBjb21wbGV0ZWQu
KS4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6U2Nyb2xsQW5pbWF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnBy
b2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEp1c3QgY2FsbCB0aGUgU2Nyb2xsQ29udHJv
bGxlciBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyk6IFJlbmFtZWQgZnJvbSBzY3JvbGxPZmZz
ZXRJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0
SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMpOiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmg6IENvcGllZCBmcm9tIHBsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmguCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5tbTogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIu
bW0uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVy
KTogVXBkYXRlIHRvIGluaXRpYWxpemUgbmV3IHRpbWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOiBVcGRhdGUgdG8gaGFuZGxlIFNjcm9s
bCBTbmFwIFBvaW50IGV2ZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBNYW5hZ2UgYW5pbWF0aW9u
IHRpbWVycyBsb2NhbGx5LCBkbyBub3QKKyAgICAgICAgcmVxdWlyZSBjbGllbnQgdG8gbWFpbnRh
aW4gdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEFkZGVkLiAoTW92ZWQgZnJvbSBTY3JvbGxBbmlt
YXRvck1hYykKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6
OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEaXR0by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIpOiAg
RGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
OiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW06IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFj
OjpTY3JvbGxBbmltYXRvck1hYyk6IFJlbW92ZSB1bnVzZWQgUnViYmVyYmFuZCB0aW1lcnMgKG5v
dyB0aGF0IHRoaXMgaXMKKyAgICAgICAgY29udHJvbGxlZCBpbiB0aGUgU2Nyb2xsQ29udHJvbGxl
cikKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmg6IFJlbW92ZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06IFJlbW92ZWQuCisKIDIwMTUtMDMt
MDIgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OIChyMTgwODgyKTogQnVpbGQgZmFpbHVyZTogTWV0aG9kcyBub3QgbWFya2VkIG92ZXJyaWRl
IGluIEdyYXBoaWNzTGF5ZXJDQS5oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkK
QEAgLTc4Niw4ICs3ODYsNiBAQAogCQkxQTkyN0ZEMzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTky
N0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBucHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUE5ODk1NkIwQUE3OEY4MDAwNUVGNUVG
IC8qIFVSTENGLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDFBOTg5NTZBMEFBNzhGODAwMDVFRjVFRiAvKiBVUkxDRi5jcHAgKi87IH07Ci0JCTFBQTg0
RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07Ci0JCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1
MyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxl
ci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFB
QTg3OTkwMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJhdGVneS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBODc5OEYxMUNCRTg0NjAwM0M2NjRG
IC8qIFBsdWdpblN0cmF0ZWd5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKIAkJMUFBQUREQTMxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQURE
QTExNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwICovOyB9OwogCQkxQUFBRERB
NDE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMjQ0NSw2ICsyNDQzLDggQEAKIAkJN0E3NEVDQkQxMDE4MzlEQTAwQkY5MzlFIC8q
IEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNzRFQ0JDMTAxODM5REEwMEJGOTM5RSAvKiBKU0lu
c3BlY3RvckZyb250ZW5kSG9zdEN1c3RvbS5jcHAgKi87IH07CiAJCTdBOTM4Njg1MThEQ0MxNDUw
MEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgyMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNw
cCAqLzsgfTsKIAkJN0E5Mzg2ODYxOERDQzE0NTAwQjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThEQ0Mx
NDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87IH07CisJCTdBOUFERkYzMUFBMTE2MzgwMEQy
NzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA3QUZGQTQxMTFBQTEwMzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJv
bGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJ
CTdBOUFERkY0MUFBMTE2M0IwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gN0FGRkE0MTIxQUExMDM5RDAw
RjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07CiAJCTdBQTNBNjk5MTk0QTY0RTcw
MDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTY5NTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuY3BwICovOyB9OwogCQk3QUEzQTY5QTE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRy
b2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdB
QTNBNjk2MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTdBQTNBNjlCMTk0QTY0RTcwMDFD
QkQyNCAvKiBUaWxlR3JpZC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3QUEzQTY5NzE5NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUdyaWQuY3BwICovOyB9
OwpAQCAtNzgwOSw4ICs3ODA5LDYgQEAKIAkJMUE5MjdGRDAxNDE2QTE1QjAwM0E4M0M4IC8qIG5w
cnVudGltZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBucHJ1bnRpbWUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE5MjdGRDExNDE2QTE1QjAwM0E4M0M4IC8q
IG5wdHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gbnB0eXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTk4OTU2QTBBQTc4RjgwMDA1RUY1RUYgLyog
VVJMQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFVSTENGLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQkxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTFBQTg3OThGMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJh
dGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbHVnaW5TdHJhdGVneS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUFBRERBMTE0REI0MDlGMDBBRjY0QjMg
LyogU2Nyb2xsaW5nVHJlZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBTY3JvbGxpbmdUcmVlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQURE
QTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtOTY2Nyw2ICs5NjY1LDggQEAKIAkJN0FGOUIyMDkxOENGQjVGMjAwQzY0QkVGIC8qIEpT
VlRUUmVnaW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVlRUUmVnaW9u
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdBRjlCMjBBMThDRkI1RjMwMEM2NEJF
RiAvKiBKU1ZUVFJlZ2lvbkxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNWVFRSZWdpb25MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
N0FGOUIyMEIxOENGQjVGMzAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uTGlzdC5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZUVFJlZ2lvbkxpc3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJN0FGRkE0MTExQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xs
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsQ29udHJvbGxlci5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3QUZGQTQxMjFBQTEwMzlEMDBGMDEyNUIg
LyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IFNjcm9sbENvbnRyb2xsZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTdDMkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBKU0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNr
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0MyQkREM0MxN0M3Rjk4QjAwMzhG
RjE1IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0RPTUdsb2JhbE9iamVjdFRhc2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0MzQjc5NkYxOTA4NzU3QjAwQjQ3QTJEIC8qIFVzZXJNZXNzYWdlSGFuZGxlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXIu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY1ODcsOCArMTY1ODcsNiBAQAog
CQkJCUJDNTExNTZEMTJCMTc0OUMwMEM5Njc1NCAvKiBTY3JvbGxBbmltYXRvck1hYy5tbSAqLywK
IAkJCQlCQzhCODUzQzBFN0M3RjExMDBBQjY5ODQgLyogU2Nyb2xsYmFyVGhlbWVNYWMuaCAqLywK
IAkJCQlCQ0VGODY5RTBFODQ0RTlEMDBBODVDRDUgLyogU2Nyb2xsYmFyVGhlbWVNYWMubW0gKi8s
Ci0JCQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIuaCAqLywK
LQkJCQkxQUE4NEYwMjE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLywK
IAkJCQk5MzUzNjc2QTA5QUVEODhCMDBEMzVDRDYgLyogU2Nyb2xsVmlld01hYy5tbSAqLywKIAkJ
CQkwNzdBRjE0MTE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXplZFBsYXRmb3JtUmVwcmVzZW50
YXRpb25NYWMuaCAqLywKIAkJCQkwNzdBRjE0MjE4RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXpl
ZFBsYXRmb3JtUmVwcmVzZW50YXRpb25NYWMubW0gKi8sCkBAIC0xODY5OCw2ICsxODY5Niw4IEBA
CiAJCQkJMUEwNDA5RjIxQTQzNjc1QzAwOUU0N0YzIC8qIE1hY2hTZW5kUmlnaHQuY3BwICovLAog
CQkJCTFBMDQwOURCMUE0MzYwQjUwMDlFNDdGMyAvKiBNYWNoU2VuZFJpZ2h0LmggKi8sCiAJCQkJ
QURCNkIyOTcxOEZCOTAyNDAwODE5NjNFIC8qIE1lbW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1t
ICovLAorCQkJCTdBRkZBNDExMUFBMTAzOUQwMEYwMTI1QiAvKiBTY3JvbGxDb250cm9sbGVyLmgg
Ki8sCisJCQkJN0FGRkE0MTIxQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
Ki8sCiAJCQkJNUQ1OTc1QjExOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNpb24uaCAqLywK
IAkJCQk1RDU5NzVCMjE5NjM1RjExMDBEMDA4NzggLyogU3lzdGVtVmVyc2lvbi5tbSAqLywKIAkJ
CQk3Q0M1NjRCOTE4QkFDNzIwMDAxQjk2NTIgLyogVGVsZXBob25lTnVtYmVyRGV0ZWN0b3JDb2Nv
YS5jcHAgKi8sCkBAIC0yNDY0OCw2ICsyNDY0OCw3IEBACiAJCQkJQThFQTdDQjUwQTE5MkI5QzAw
QThFRjVGIC8qIEhUTUxQYXJhZ3JhcGhFbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcx
RDQ1ODBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBhcmFtRWxlbWVudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJOTNFMkEzMDcxMjNFOURDMDAwOUZFMTJBIC8qIEhUTUxQYXJzZXJJZGlvbXMuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTdBOUFERkYzMUFBMTE2MzgwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzNGNDE4QTE2OUI5NUZGMDAwNkJGNjAgLyogSFRN
TFBhcnNlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3N0IzODcxMTIyODgzRTkwMEI4
MUZGOCAvKiBIVE1MUGFyc2VyU2NoZWR1bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxRDQ1
NjBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJbkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLApA
QCAtMjYxMDEsNyArMjYxMDIsNiBAQAogCQkJCUJDOEI4NTNFMEU3QzdGMTEwMEFCNjk4NCAvKiBT
Y3JvbGxiYXJUaGVtZU1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEZFNzE0MDYxNDIxNzBCODAw
REIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUQ5MjVC
NjgwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEJlaGF2aW9yLmggaW4gSGVhZGVycyAqLywKLQkJ
CQkxQUE4NEYwNTE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMEY2MDVBRUQxNUY5NDg0ODAwNERGMEMwIC8qIFNjcm9sbGluZ0NvbnN0cmFp
bnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUY2MkVFODE0REEyMkE3MDA0MTU1NkMgLyogU2Ny
b2xsaW5nQ29vcmRpbmF0b3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTBGQzRFNDBEMTg3RjgyRTEw
MDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5oIGluIEhlYWRlcnMgKi8sCkBAIC0y
NzQ5Niw2ICsyNzQ5Niw3IEBACiAJCQkJRTE5QUMzRjQxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0
b0FsZ29yaXRobVNIQTUxMi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTEx
MDA4OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxNTdB
OEU0MTgxNzNBM0EwMDlGODIxRCAvKiBDcnlwdG9LZXkuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
N0E5QURGRjQxQUExMTYzQjAwRDI3MzNDIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gaW4gU291cmNl
cyAqLywKIAkJCQlFMTI1Rjg0RDE4MjQyODlEMDBEODRDRDkgLyogQ3J5cHRvS2V5QUVTLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUUxMjVGODYzMTgyQzMwM0EwMEQ4NENEOSAvKiBDcnlwdG9LZXlE
YXRhT2N0ZXRTZXF1ZW5jZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlFMUMyNjZERTE4MzE5RjMx
MDAzRjhCMzMgLyogQ3J5cHRvS2V5RGF0YVJTQUNvbXBvbmVudHMuY3BwIGluIFNvdXJjZXMgKi8s
CkBAIC0yOTUwOCw3ICsyOTUwOSw2IEBACiAJCQkJQkNFRjg2OUYwRTg0NEU5RDAwQTg1Q0Q1IC8q
IFNjcm9sbGJhclRoZW1lTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMEZFNzE0MDUxNDIxNzBC
ODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1
RDkyNUI2NzBGNjRENEREMDBCODQ3RjAgLyogU2Nyb2xsQmVoYXZpb3IuY3BwIGluIFNvdXJjZXMg
Ki8sCi0JCQkJMUFBODRGMDQxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
aW4gU291cmNlcyAqLywKIAkJCQkwRjYwNUFFQzE1Rjk0ODQ4MDA0REYwQzAgLyogU2Nyb2xsaW5n
Q29uc3RyYWludHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMUFGNjJFRTcxNERBMjJBNzAwNDE1
NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTBGQzRF
NDBFMTg3RjgyRTEwMDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRvcklPUy5tbSBpbiBTb3Vy
Y2VzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5t
bQkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5k
bGVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05NjEsNiArOTYxLDEyIEBAIGJvb2wgRXZlbnRI
YW5kbGVyOjpwbGF0Zm9ybUNvbXBsZXRlV2hlZWwKICAgICAKICAgICBib29sIGRpZEhhbmRsZUV2
ZW50ID0gdmlldyA/IHZpZXctPndoZWVsRXZlbnQod2hlZWxFdmVudCkgOiBmYWxzZTsKICAgICBt
X2lzSGFuZGxpbmdXaGVlbEV2ZW50ID0gZmFsc2U7CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JP
TExfU05BUCkKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEpCisgICAgICAgIHBsYXRmb3JtTm90aWZ5
U25hcElmTmVjZXNzYXJ5KHdoZWVsRXZlbnQsICpzY3JvbGxhYmxlQXJlYSk7CisjZW5kaWYKKwog
ICAgIHJldHVybiBkaWRIYW5kbGVFdmVudDsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJl
ZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yy5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw4ICs2MSw2IEBAIHByaXZhdGU6CiAgICAgdmlydHVh
bCBJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFp
bnRzKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNu
YXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBS
dWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xs
UG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICB2aXJ0dWFsIEZs
b2F0UG9pbnQgc2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKQEAgLTgwLDEwICs3OCwx
NCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2Vz
dHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwogCisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZpcnR1YWwgTGF5
b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKTsKKyAgICB2aXJ0dWFs
IHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEp
OworI2VuZGlmCisKICAgICB2b2lkIGxvZ0V4cG9zZWRVbmZpbGxlZEFyZWEoKTsKIAogICAgIFNj
cm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOwotICAgIFJldGFpblB0cjxDRlJ1bkxv
b3BUaW1lclJlZj4gbV9zbmFwUnViYmVyYmFuZFRpbWVyOwogCiAgICAgUmV0YWluUHRyPENBTGF5
ZXI+IG1fc2Nyb2xsTGF5ZXI7CiAgICAgUmV0YWluUHRyPENBTGF5ZXI+IG1fc2Nyb2xsZWRDb250
ZW50c0xheWVyOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9s
bGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWMubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC02Niw4ICs2Niw2IEBAIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OlNj
cm8KIAogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6flNjcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVNYWMoKQogewotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXIp
Ci0gICAgICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZShtX3NuYXBSdWJiZXJiYW5kVGltZXIu
Z2V0KCkpOwogfQogCiB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnVw
ZGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQpA
QCAtMjk2LDMyICsyOTQsNiBAQCB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVN
YWM6CiAgICAgc2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhvZmZzZXQpOwog
fQogCi12b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnN0YXJ0U25hcFJ1
YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgQVNTRVJUKCFtX3NuYXBSdWJiZXJiYW5kVGltZXIpOwot
Ci0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZXJJbnRlcnZhbCA9IDEuMCAvIDYwLjA7Ci0KLSAgICBt
X3NuYXBSdWJiZXJiYW5kVGltZXIgPSBhZG9wdENGKENGUnVuTG9vcFRpbWVyQ3JlYXRlV2l0aEhh
bmRsZXIoa0NGQWxsb2NhdG9yRGVmYXVsdCwgQ0ZBYnNvbHV0ZVRpbWVHZXRDdXJyZW50KCkgKyB0
aW1lckludGVydmFsLCB0aW1lckludGVydmFsLCAwLCAwLCBeKENGUnVuTG9vcFRpbWVyUmVmKSB7
Ci0gICAgICAgIG1fc2Nyb2xsQ29udHJvbGxlci5zbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsK
LSAgICB9KSk7Ci0gICAgQ0ZSdW5Mb29wQWRkVGltZXIoQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBt
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCksIGtDRlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci19Ci0K
LXZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RvcFNuYXBSdWJiZXJi
YW5kVGltZXIoKQotewotICAgIGlmICghbV9zbmFwUnViYmVyYmFuZFRpbWVyKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICBzY3JvbGxpbmdUcmVlKCkuc2V0TWFpbkZyYW1lSXNSdWJiZXJCYW5kaW5n
KGZhbHNlKTsKLQotICAgIC8vIFNpbmNlIHRoZSBydWJiZXJiYW5kIHRpbWVyIGhhcyBzdG9wcGVk
LCB0b3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQgY2FuIGJlIHN5bmNocm9uaXplZCB3aXRo
IHRvdGFsQ29udGVudHNTaXplLgotICAgIHNldFRvdGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFu
ZCh0b3RhbENvbnRlbnRzU2l6ZSgpKTsKLQotICAgIENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZSht
X3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCkpOwotICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lciA9
IG51bGxwdHI7Ci19Ci0KIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6
YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkKIHsKICAgICBGbG9hdFBv
aW50IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKTsKQEAg
LTU0MCw2ICs1MTIsMTkgQEAgdm9pZCBsb2dXaGVlbEV2ZW50SGFuZGxlckNvdW50Q2hhbmdlZCh1
bgogICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5HOiBXaGVlbCBldmVudCBoYW5kbGVyIGNvdW50
IGNoYW5nZWQuIFRpbWU6ICVmIENvdW50OiAldVxuIiwgV1RGOjptb25vdG9uaWNhbGx5SW5jcmVh
c2luZ1RpbWUoKSwgY291bnQpOwogfQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYg
UExBVEZPUk0oTUFDKQorTGF5b3V0VW5pdCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2Rl
TWFjOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKQoreworICAgIC8vIFRlbXBv
cmFyeSBzdHViIHVudGlsIGh0dHA6Ly93ZWJraXQub3JnL2IvMTQxOTczLgorICAgIHJldHVybiBM
YXlvdXRVbml0KCk7Cit9CisKK3ZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1h
Yzo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQpCit7CisgICAg
Ly8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDovL3dlYmtpdC5vcmcvYi8xNDE5NzMuCit9Cisj
ZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKEFTWU5D
X1NDUk9MTElORykgJiYgUExBVEZPUk0oTUFDKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsQW5pbWF0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkocmV2aXNpb24gMTgwODg5KQorKysgU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OSw2ICs0
OSw5IEBAIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxBbmltYXRvcj4gU2Nyb2xsQW4KIAogU2Nyb2xs
QW5pbWF0b3I6OlNjcm9sbEFuaW1hdG9yKFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkK
ICAgICA6IG1fc2Nyb2xsYWJsZUFyZWEoc2Nyb2xsYWJsZUFyZWEpCisjaWYgRU5BQkxFKFJVQkJF
Ul9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgICwgbV9zY3JvbGxDb250
cm9sbGVyKHRoaXMpCisjZW5kaWYKICAgICAsIG1fY3VycmVudFBvc1goMCkKICAgICAsIG1fY3Vy
cmVudFBvc1koMCkKIHsKQEAgLTgxLDI4ICs4NCwxNiBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjpz
Y3JvbGxUb09mZnNldFdpdGhvCiB9CiAKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpwcm9jZXNzV2hlZWxFdmVudEZvclNj
cm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQorYm9vbCBTY3Jv
bGxBbmltYXRvcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3Jt
V2hlZWxFdmVudCYgd2hlZWxFdmVudCkKIHsKLSAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBB
bmltYXRvcikKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hl
ZWxFdmVudCh3aGVlbEV2ZW50KTsKLSAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1h
dG9yKQotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVs
RXZlbnQod2hlZWxFdmVudCk7CisgICAgcmV0dXJuIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNz
V2hlZWxFdmVudEZvclNjcm9sbFNuYXAod2hlZWxFdmVudCk7CiB9CiAjZW5kaWYKIAogYm9vbCBT
Y3JvbGxBbmltYXRvcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQm
IGUpCiB7CiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQotICAg
IGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQoZSk7Ci0gICAgICAgIGlmIChtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0g
ICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotICAgIGlmIChtX2hvcml6b250YWxTY3Jv
bGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9y
LT5oYW5kbGVXaGVlbEV2ZW50KGUpOwotICAgICAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25h
cEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0gICAgICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgfQorICAgIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNzV2hlZWxFdmVu
dEZvclNjcm9sbFNuYXAoZSk7CiAjZW5kaWYKICNpZiBQTEFURk9STShDT0NPQSkKICAgICAvLyBF
dmVudHMgaW4gdGhlIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlTWF5QmVnaW4gcGhhc2UgaGF2ZSBu
byBkZWx0YXMsIGFuZCB0aGVyZWZvcmUgbmV2ZXIgcGFzc2VzIHRocm91Z2ggdGhlIHNjcm9sbCBo
YW5kbGluZyBsb2dpYyBiZWxvdy4KQEAgLTE4MywzMCArMTc0LDE1IEBAIHZvaWQgU2Nyb2xsQW5p
bWF0b3I6Om5vdGlmeVBvc2l0aW9uQ2hhbmcKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAm
JiBQTEFURk9STShNQUMpCiB2b2lkIFNjcm9sbEFuaW1hdG9yOjp1cGRhdGVTY3JvbGxBbmltYXRv
cnNBbmRUaW1lcnMoKQogewotICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBzbmFwIGFu
aW1hdG9ycyBhcmUgcmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMgYWxvbmUg
Y2FuIGJlIHVwZGF0ZWQuCi0gICAgaWYgKG1fc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBP
ZmZzZXRzKCkpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3Rk
OjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVB
cmVhLmhvcml6b250YWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwp
OwotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVl
PFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVy
RmlyZWQpOwotICAgIH0gZWxzZSBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7
Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51bGxwdHI7Ci0gICAg
ICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA9IG51bGxwdHI7Ci0gICAgfQotICAgIGlm
IChtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSkgewotICAgICAgICBtX3Zl
cnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25h
cEFuaW1hdG9yPih0aGlzLCBtX3Njcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSwg
U2Nyb2xsRXZlbnRBeGlzOjpWZXJ0aWNhbCk7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFw
VGltZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRpbWVyPigqdGhpcywgJlNjcm9sbEFuaW1hdG9yOjp2
ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKLSAgICB9IGVsc2UgaWYgKG1fdmVydGljYWxT
Y3JvbGxTbmFwQW5pbWF0b3IpIHsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRv
ciA9IG51bGxwdHI7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIgPSBudWxscHRy
OwotICAgIH0KKyAgICBtX3Njcm9sbENvbnRyb2xsZXIudXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5k
VGltZXJzKG1fc2Nyb2xsYWJsZUFyZWEpOwogfQogCi1MYXlvdXRVbml0IFNjcm9sbEFuaW1hdG9y
OjpzY3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCitMYXlvdXRVbml0IFNj
cm9sbEFuaW1hdG9yOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCiB7
Ci0gICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24o
KTsKLSAgICByZXR1cm4gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBjdXJy
ZW50UG9zaXRpb24ueCgpIDogY3VycmVudFBvc2l0aW9uLnkoKTsKKyAgICByZXR1cm4gYXhpcyA9
PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2N1cnJlbnRQb3NYIDogbV9jdXJyZW50
UG9zWTsKIH0KIAotdm9pZCBTY3JvbGxBbmltYXRvcjo6aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNj
cm9sbEV2ZW50QXhpcyBheGlzLCBmbG9hdCBkZWx0YSkKK3ZvaWQgU2Nyb2xsQW5pbWF0b3I6Omlt
bWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcywgZmxvYXQgZGVsdGEpCiB7
CiAgICAgRmxvYXRQb2ludCBjdXJyZW50UG9zaXRpb24gPSB0aGlzLT5jdXJyZW50UG9zaXRpb24o
KTsKICAgICBpZiAoYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwpCkBAIC0yMTQs
MzAgKzE5MCw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXgKICAg
ICBlbHNlCiAgICAgICAgIHNjcm9sbFRvT2Zmc2V0V2l0aG91dEFuaW1hdGlvbihGbG9hdFBvaW50
KGN1cnJlbnRQb3NpdGlvbi54KCksIGN1cnJlbnRQb3NpdGlvbi55KCkgKyBkZWx0YSkpOwogfQot
Ci12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4
aXMgYXhpcykKLXsKLSAgICBUaW1lciogc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxF
dmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIuZ2V0KCkg
OiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyLmdldCgpOwotICAgIGlmICghc2Nyb2xsU25hcFRp
bWVyLT5pc0FjdGl2ZSgpKQotICAgICAgICBzY3JvbGxTbmFwVGltZXItPnN0YXJ0UmVwZWF0aW5n
KDEuMCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpzdG9wU2Nyb2xsU25hcFRp
bWVyKFNjcm9sbEV2ZW50QXhpcyBheGlzKQotewotICAgIFRpbWVyKiBzY3JvbGxTbmFwVGltZXIg
PSBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9s
bFNuYXBUaW1lci5nZXQoKSA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIuZ2V0KCk7Ci0gICAg
aWYgKHNjcm9sbFNuYXBUaW1lci0+aXNBY3RpdmUoKSkKLSAgICAgICAgc2Nyb2xsU25hcFRpbWVy
LT5zdG9wKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFw
VGltZXJGaXJlZCgpCi17Ci0gICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3Jv
bGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnZlcnRp
Y2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQotewotICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5p
bWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKLX0KICNlbmRpZgogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmlt
YXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1h
dG9yLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9s
bEFuaW1hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTMzLDE0ICszMywxNCBAQAogI2RlZmluZSBT
Y3JvbGxBbmltYXRvcl9oCiAKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKKyNpbmNsdWRlICJMYXlv
dXRVbml0LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCiAjaW5jbHVkZSAiU2Ny
b2xsVHlwZXMuaCIKICNpbmNsdWRlIDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9G
b3J3YXJkLmg+CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMp
Ci0jaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgotI2luY2x1ZGUgIlRpbWVyLmgi
CisjaWYgKEVOQUJMRShSVUJCRVJfQkFORElORykgfHwgRU5BQkxFKENTU19TQ1JPTExfU05BUCkp
ICYmIFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjZW5kaWYK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTAsOCArNTAsOCBAQCBjbGFzcyBQbGF0Zm9ybVRv
dWNoRXZlbnQ7CiBjbGFzcyBTY3JvbGxhYmxlQXJlYTsKIGNsYXNzIFNjcm9sbGJhcjsKIAotI2lm
IEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLWNsYXNzIFNjcm9sbEFu
aW1hdG9yIDogcHVibGljIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQgeworI2lmIChFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKSB8fCBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpKSAmJiBQTEFURk9S
TShNQUMpCitjbGFzcyBTY3JvbGxBbmltYXRvciA6IHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNs
aWVudCB7CiAjZWxzZQogY2xhc3MgU2Nyb2xsQW5pbWF0b3IgewogI2VuZGlmCkBAIC0xMTgsMzMg
KzExOCwyMiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jl
c3MoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05B
UCkgJiYgUExBVEZPUk0oTUFDKQotICAgIHZvaWQgcHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxT
bmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworICAgIGJvb2wgcHJvY2Vzc1doZWVsRXZl
bnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworCiAgICAgdm9pZCB1
cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoKTsKLSAgICB2aXJ0dWFsIExheW91dFVuaXQg
c2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IGRlbHRh
KSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xs
RXZlbnRBeGlzKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1l
cihTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0
T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3Jv
bGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7CiAjZW5kaWYK
IAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlQb3NpdGlvbkNoYW5nZWQoY29u
c3QgRmxvYXRTaXplJiBkZWx0YSk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQ
TEFURk9STShNQUMpCi0gICAgLy8gVHJpdmlhbCB3cmFwcGVycyBhcm91bmQgdGhlIGFjdHVhbCB1
cGRhdGUgbG9vcCBpbiBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLCBzaW5jZSBXZWJDb3JlIFRpbWVy
IHJlcXVpcmVzIGEgVGltZXIgYXJndW1lbnQuCi0gICAgdm9pZCBob3Jpem9udGFsU2Nyb2xsU25h
cFRpbWVyRmlyZWQoKTsKLSAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsK
LSNlbmRpZgotCiAgICAgU2Nyb2xsYWJsZUFyZWEmIG1fc2Nyb2xsYWJsZUFyZWE7CisjaWYgKEVO
QUJMRShDU1NfU0NST0xMX1NOQVApIHx8IEVOQUJMRShSVUJCRVJfQkFORElORykpICYmIFBMQVRG
T1JNKE1BQykKKyAgICBTY3JvbGxDb250cm9sbGVyIG1fc2Nyb2xsQ29udHJvbGxlcjsKKyNlbmRp
ZgogICAgIGZsb2F0IG1fY3VycmVudFBvc1g7IC8vIFdlIGF2b2lkIHVzaW5nIGEgRmxvYXRQb2lu
dCBpbiBvcmRlciB0byByZWR1Y2UKICAgICBmbG9hdCBtX2N1cnJlbnRQb3NZOyAvLyBzdWJjbGFz
cyBjb2RlIGNvbXBsZXhpdHkuCi0jaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZP
Uk0oTUFDKQotICAgIHN0ZDo6dW5pcXVlX3B0cjxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPiBtX2hv
cml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3I7Ci0gICAgc3RkOjp1bmlxdWVfcHRyPFRpbWVyPiBt
X2hvcml6b250YWxTY3JvbGxTbmFwVGltZXI7Ci0gICAgLy8gRklYTUU6IEZpbmQgYSB3YXkgdG8g
Y29uc29saWRhdGUgYm90aCB0aW1lcnMgaW50byBvbmUgdmFyaWFibGUuCi0gICAgc3RkOjp1bmlx
dWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0
b3I7Ci0gICAgc3RkOjp1bmlxdWVfcHRyPFRpbWVyPiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVy
OwotI2VuZGlmCiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCShyZXZpc2lvbiAx
ODA3MDIpCShmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVy
Lmg6MTgwNzAyKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJv
bGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTA3IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
bmRlZiBTY3JvbGxDb250cm9sbGVyX2gKKyNkZWZpbmUgU2Nyb2xsQ29udHJvbGxlcl9oCisKKyNp
ZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCisKKyNpbmNsdWRlICJGbG9hdFBvaW50LmgiCisjaW5j
bHVkZSAiRmxvYXRTaXplLmgiCisjaW5jbHVkZSAiU2Nyb2xsVHlwZXMuaCIKKyNpbmNsdWRlIDx3
dGYvTm9uY29weWFibGUuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBQbGF0Zm9y
bVdoZWVsRXZlbnQ7CisKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgeworcHJvdGVjdGVk
OgorICAgIHZpcnR1YWwgflNjcm9sbENvbnRyb2xsZXJDbGllbnQoKSB7IH0KKworcHVibGljOgor
ICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9y
bVdoZWVsRXZlbnQmKSA9IDA7CisgICAgdmlydHVhbCBib29sIGFsbG93c1ZlcnRpY2FsU3RyZXRj
aGluZyhjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSA9IDA7CisgICAgdmlydHVhbCBJbnRTaXpl
IHN0cmV0Y2hBbW91bnQoKSA9IDA7CisgICAgdmlydHVhbCBib29sIHBpbm5lZEluRGlyZWN0aW9u
KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgY2FuU2Nyb2xsSG9yaXpv
bnRhbGx5KCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxWZXJ0aWNhbGx5KCkgPSAw
OworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsRGly
ZWN0aW9uKSA9IDA7CisKKyAgICAvLyBSZXR1cm4gdGhlIGFic29sdXRlIHNjcm9sbCBwb3NpdGlv
biwgbm90IHJlbGF0aXZlIHRvIHRoZSBzY3JvbGwgb3JpZ2luLgorICAgIHZpcnR1YWwgV2ViQ29y
ZTo6SW50UG9pbnQgYWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpID0gMDsKKworICAgIHZpcnR1YWwg
dm9pZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSA9IDA7CisgICAgdmlydHVh
bCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29u
c3QgRmxvYXRTaXplJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5k
VGltZXIoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkg
PSAwOworCisgICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlzIHdpdGhpbiB0
aGUgb3ZlcmhhbmcgYXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNhdXNlCisgICAgLy8gdGhlIHBh
Z2UgdG8gc2Nyb2xsIHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBvaW50LgorICAgIHZpcnR1YWwg
dm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSA9IDA7Cit9Owor
CitjbGFzcyBTY3JvbGxDb250cm9sbGVyIHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShTY3Jv
bGxDb250cm9sbGVyKTsKKworcHVibGljOgorICAgIGV4cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIo
U2Nyb2xsQ29udHJvbGxlckNsaWVudCopOworCisgICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KGNv
bnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZp
cmVkKCk7CisKKyAgICBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdDsKKworcHJp
dmF0ZToKKyAgICB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgdm9pZCBzbmFw
UnViYmVyQmFuZCgpOworCisgICAgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGly
ZWN0aW9uKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworCisgICAgU2Nyb2xsQ29udHJvbGxl
ckNsaWVudCogbV9jbGllbnQ7CisKKyAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOworICAgIGJv
b2wgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3M7CisgICAgYm9vbCBtX2lnbm9yZU1vbWVudHVt
U2Nyb2xsczsKKyAgICAKKyAgICBDRlRpbWVJbnRlcnZhbCBtX2xhc3RNb21lbnR1bVNjcm9sbFRp
bWVzdGFtcDsKKyAgICBGbG9hdFNpemUgbV9vdmVyZmxvd1Njcm9sbERlbHRhOworICAgIEZsb2F0
U2l6ZSBtX3N0cmV0Y2hTY3JvbGxGb3JjZTsKKyAgICBGbG9hdFNpemUgbV9tb21lbnR1bVZlbG9j
aXR5OworCisgICAgLy8gUnViYmVyIGJhbmQgc3RhdGUuCisgICAgQ0ZUaW1lSW50ZXJ2YWwgbV9z
dGFydFRpbWU7CisgICAgRmxvYXRTaXplIG1fc3RhcnRTdHJldGNoOworICAgIEZsb2F0UG9pbnQg
bV9vcmlnT3JpZ2luOworICAgIEZsb2F0U2l6ZSBtX29yaWdWZWxvY2l0eTsKKworICAgIGJvb2wg
bV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmU7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCisKKyNlbmRpZiAvLyBTY3Jv
bGxDb250cm9sbGVyX2gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9s
bENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2Nv
YS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsx
LDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDE0LTIwMTUgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0zMiwx
MCArMzIsMTYgQEAKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKICNpbmNsdWRlICJTY3JvbGxUeXBl
cy5oIgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorI2luY2x1ZGUgPHd0Zi9SdW5Mb29w
Lmg+CisKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorI2luY2x1ZGUgIkF4aXNTY3JvbGxT
bmFwQW5pbWF0b3IuaCIKKyNlbmRpZgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFBs
YXRmb3JtV2hlZWxFdmVudDsKK2NsYXNzIFNjcm9sbGFibGVBcmVhOwogCiBjbGFzcyBTY3JvbGxD
b250cm9sbGVyQ2xpZW50IHsKIHByb3RlY3RlZDoKQEAgLTU1LDM2ICs2MSw1NSBAQCBwdWJsaWM6
CiAKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJikg
PSAwOwogICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRn
ZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgc3Rh
cnRTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1
YmJlcmJhbmRUaW1lcigpID0gMDsKIAogICAgIC8vIElmIHRoZSBjdXJyZW50IHNjcm9sbCBwb3Np
dGlvbiBpcyB3aXRoaW4gdGhlIG92ZXJoYW5nIGFyZWEsIHRoaXMgZnVuY3Rpb24gd2lsbCBjYXVz
ZQogICAgIC8vIHRoZSBwYWdlIHRvIHNjcm9sbCB0byB0aGUgbmVhcmVzdCBib3VuZGFyeSBwb2lu
dC4KICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNz
YXJ5KCkgPSAwOworCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFD
KQorICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRB
eGlzKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxF
dmVudEF4aXMsIGZsb2F0IGRlbHRhKSA9IDA7CisjZW5kaWYKIH07CiAKKyNpZiBFTkFCTEUoQ1NT
X1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCitjbGFzcyBTY3JvbGxDb250cm9sbGVyIDog
cHVibGljIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQgeworI2Vsc2UKIGNsYXNzIFNjcm9s
bENvbnRyb2xsZXIgeworI2VuZGlmCiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoU2Nyb2xsQ29u
dHJvbGxlcik7CiAKIHB1YmxpYzoKICAgICBleHBsaWNpdCBTY3JvbGxDb250cm9sbGVyKFNjcm9s
bENvbnRyb2xsZXJDbGllbnQqKTsKIAogICAgIGJvb2wgaGFuZGxlV2hlZWxFdmVudChjb25zdCBQ
bGF0Zm9ybVdoZWVsRXZlbnQmKTsKLSAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgp
OwogCiAgICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3Q7CiAKKyNpZiBFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgYm9vbCBwcm9jZXNzV2hl
ZWxFdmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CisgICAgdm9p
ZCB1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoY29uc3QgU2Nyb2xsYWJsZUFyZWEmKTsK
KyNlbmRpZgorCiBwcml2YXRlOgorICAgIHZvaWQgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7
CiAgICAgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwogICAgIHZvaWQgc25hcFJ1YmJl
ckJhbmQoKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwogCiAgICAgYm9v
bCBzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKGNvbnN0IFBsYXRmb3JtV2hl
ZWxFdmVudCYpOwogCi0gICAgU2Nyb2xsQ29udHJvbGxlckNsaWVudCogbV9jbGllbnQ7CisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZvaWQgaG9yaXpv
bnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCk7CisgICAgdm9pZCB2ZXJ0aWNhbFNjcm9sbFNuYXBU
aW1lckZpcmVkKCk7CisgICAgdm9pZCBzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4
aXMpOworICAgIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpOworCisg
ICAgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSBvdmVycmlk
ZTsKKyAgICB2b2lkIGltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0
IGRlbHRhKSBvdmVycmlkZTsKKyNlbmRpZgogCi0gICAgYm9vbCBtX2luU2Nyb2xsR2VzdHVyZTsK
LSAgICBib29sIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzOwotICAgIGJvb2wgbV9pZ25vcmVN
b21lbnR1bVNjcm9sbHM7CisgICAgU2Nyb2xsQ29udHJvbGxlckNsaWVudCogbV9jbGllbnQ7CiAg
ICAgCiAgICAgQ0ZUaW1lSW50ZXJ2YWwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7CiAg
ICAgRmxvYXRTaXplIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YTsKQEAgLTk2LDcgKzEyMSwxOSBAQCBw
cml2YXRlOgogICAgIEZsb2F0U2l6ZSBtX3N0YXJ0U3RyZXRjaDsKICAgICBGbG9hdFBvaW50IG1f
b3JpZ09yaWdpbjsKICAgICBGbG9hdFNpemUgbV9vcmlnVmVsb2NpdHk7CisgICAgUnVuTG9vcDo6
VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4gbV9zbmFwUnViYmVyYmFuZFRpbWVyOworICAgIAorI2lm
IEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAgICAvLyBGSVhNRTog
RmluZCBhIHdheSB0byBjb25zb2xpZGF0ZSBib3RoIHRpbWVycyBpbnRvIG9uZSB2YXJpYWJsZS4K
KyAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4gbV9ob3Jpem9udGFs
U2Nyb2xsU25hcEFuaW1hdG9yOworICAgIHN0ZDo6dW5pcXVlX3B0cjxBeGlzU2Nyb2xsU25hcEFu
aW1hdG9yPiBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yOworICAgIFJ1bkxvb3A6OlRpbWVy
PFNjcm9sbENvbnRyb2xsZXI+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lcjsKKyAgICBSdW5M
b29wOjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyOwor
I2VuZGlmCiAKKyAgICBib29sIG1faW5TY3JvbGxHZXN0dXJlOworICAgIGJvb2wgbV9tb21lbnR1
bVNjcm9sbEluUHJvZ3Jlc3M7CisgICAgYm9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xsczsKICAg
ICBib29sIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlOwogfTsKIApJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCShyZXZp
c2lvbiAxODA3MDIpCShmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250
cm9sbGVyLm1tOjE4MDcwMikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9s
bENvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0MDYgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTEsIDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJTY3JvbGxDb250
cm9sbGVyLmgiCisKKyNpbmNsdWRlICJQbGF0Zm9ybVdoZWVsRXZlbnQuaCIKKyNpbmNsdWRlICJX
ZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgiCisjaW5jbHVkZSA8c3lzL3N5c2N0bC5oPgorI2luY2x1
ZGUgPHN5cy90aW1lLmg+CisKKyNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCisKK3N0YXRpYyBO
U1RpbWVJbnRlcnZhbCBzeXN0ZW1VcHRpbWUoKQoreworICAgIGlmIChbW05TUHJvY2Vzc0luZm8g
cHJvY2Vzc0luZm9dIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc3lzdGVtVXB0aW1lKV0p
CisgICAgICAgIHJldHVybiBbW05TUHJvY2Vzc0luZm8gcHJvY2Vzc0luZm9dIHN5c3RlbVVwdGlt
ZV07CisKKyAgICAvLyBHZXQgaG93IGxvbmcgc3lzdGVtIGhhcyBiZWVuIHVwLiBGb3VuZCBieSBs
b29raW5nIGdldHRpbmcgImJvb3R0aW1lIiBmcm9tIHRoZSBrZXJuZWwuCisgICAgc3RhdGljIHN0
cnVjdCB0aW1ldmFsIGJvb3R0aW1lID0gezAsIDB9OworICAgIGlmICghYm9vdHRpbWUudHZfc2Vj
KSB7CisgICAgICAgIGludCBtaWJbMl0gPSB7Q1RMX0tFUk4sIEtFUk5fQk9PVFRJTUV9OworICAg
ICAgICBzaXplX3Qgc2l6ZSA9IHNpemVvZihib290dGltZSk7CisgICAgICAgIGlmICgtMSA9PSBz
eXNjdGwobWliLCAyLCAmYm9vdHRpbWUsICZzaXplLCAwLCAwKSkKKyAgICAgICAgICAgIGJvb3R0
aW1lLnR2X3NlYyA9IDA7CisgICAgfQorICAgIHN0cnVjdCB0aW1ldmFsIG5vdzsKKyAgICBpZiAo
Ym9vdHRpbWUudHZfc2VjICYmIC0xICE9IGdldHRpbWVvZmRheSgmbm93LCAwKSkgeworICAgICAg
ICBzdHJ1Y3QgdGltZXZhbCB1cHRpbWU7CisgICAgICAgIHRpbWVyc3ViKCZub3csICZib290dGlt
ZSwgJnVwdGltZSk7CisgICAgICAgIE5TVGltZUludGVydmFsIHJlc3VsdCA9IHVwdGltZS50dl9z
ZWMgKyAodXB0aW1lLnR2X3VzZWMgLyAxRSs2KTsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAg
ICB9CisgICAgcmV0dXJuIDA7Cit9CisKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0aWMg
Y29uc3QgZmxvYXQgc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCA9IDAuMTBmOworc3RhdGlj
IGNvbnN0IGZsb2F0IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvID0gMTsKK3N0
YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJl
dGNoID0gMTA7CisKK3N0YXRpYyBmbG9hdCBlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEoZmxvYXQg
aW5pdGlhbFBvc2l0aW9uLCBmbG9hdCBpbml0aWFsVmVsb2NpdHksIGZsb2F0IGVsYXBzZWRUaW1l
KQoreworICAgIHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKGluaXRpYWxQb3Np
dGlvbiwgaW5pdGlhbFZlbG9jaXR5LCBlbGFwc2VkVGltZSk7Cit9CisKK3N0YXRpYyBmbG9hdCBl
bGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEoZmxvYXQgZGVsdGEpCit7CisgICAgcmV0dXJuIHdr
TlNFbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEoZGVsdGEpOworfQorCitzdGF0aWMgZmxvYXQg
cmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKGZsb2F0IGRlbHRhKQoreworICAgIHJldHVybiB3
a05TUmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKGRlbHRhKTsKK30KKworc3RhdGljIGZsb2F0
IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpCit7CisgICAgc3RhdGljIGZsb2F0IG11bHRpcGxpZXIg
PSAtMTsKKyAgICBpZiAobXVsdGlwbGllciA8IDApIHsKKyAgICAgICAgbXVsdGlwbGllciA9IFtb
TlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRVc2VyRGVmYXVsdHNdIGZsb2F0Rm9yS2V5OkAiTlNTY3Jv
bGxXaGVlbE11bHRpcGxpZXIiXTsKKyAgICAgICAgaWYgKG11bHRpcGxpZXIgPD0gMCkKKyAgICAg
ICAgICAgIG11bHRpcGxpZXIgPSAxOworICAgIH0KKyAgICByZXR1cm4gbXVsdGlwbGllcjsKK30K
KworU2Nyb2xsQ29udHJvbGxlcjo6U2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xp
ZW50KiBjbGllbnQpCisgICAgOiBtX2NsaWVudChjbGllbnQpCisgICAgLCBtX2luU2Nyb2xsR2Vz
dHVyZShmYWxzZSkKKyAgICAsIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKGZhbHNlKQorICAg
ICwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMoZmFsc2UpCisgICAgLCBtX2xhc3RNb21lbnR1bVNj
cm9sbFRpbWVzdGFtcCgwKQorICAgICwgbV9zdGFydFRpbWUoMCkKKyAgICAsIG1fc25hcFJ1YmJl
cmJhbmRUaW1lcklzQWN0aXZlKGZhbHNlKQoreworfQorCitib29sIFNjcm9sbENvbnRyb2xsZXI6
OmhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQor
eworICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VC
ZWdhbikgeworICAgICAgICAvLyBGaXJzdCwgY2hlY2sgaWYgd2Ugc2hvdWxkIHJ1YmJlci1iYW5k
IGF0IGFsbC4KKyAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNp
emUoLXdoZWVsRXZlbnQuZGVsdGFYKCksIDApKQorICAgICAgICAgICAgJiYgIXNob3VsZFJ1YmJl
ckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24od2hlZWxFdmVudCkpCisgICAgICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyAgICAgICAgbV9pblNjcm9sbEdlc3R1cmUgPSB0cnVlOworICAgICAgICBt
X21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOworICAgICAgICBtX2lnbm9yZU1vbWVu
dHVtU2Nyb2xscyA9IGZhbHNlOworICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCA9IDA7CisgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworCisgICAg
ICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Cisg
ICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldFdpZHRoKHJlYm91bmREZWx0YUZvckVsYXN0
aWNEZWx0YShzdHJldGNoQW1vdW50LndpZHRoKCkpKTsKKyAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2Uuc2V0SGVpZ2h0KHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShzdHJldGNoQW1vdW50
LmhlaWdodCgpKSk7CisgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YSA9IEZsb2F0U2l6ZSgp
OworCisgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisKKyAgICAgICAgcmV0dXJu
IHRydWU7CisgICAgfQorCisgICAgaWYgKHdoZWVsRXZlbnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdo
ZWVsRXZlbnRQaGFzZUVuZGVkKSB7CisgICAgICAgIHNuYXBSdWJiZXJCYW5kKCk7CisgICAgICAg
IHJldHVybiB0cnVlOworICAgIH0KKworICAgIGJvb2wgaXNNb21lbnR1bVNjcm9sbEV2ZW50ID0g
KHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpICE9IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlTm9u
ZSk7CisgICAgaWYgKG1faWdub3JlTW9tZW50dW1TY3JvbGxzICYmIChpc01vbWVudHVtU2Nyb2xs
RXZlbnQgfHwgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpKSB7CisgICAgICAgIGlmICh3
aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVk
KSB7CisgICAgICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOworICAgICAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAg
IH0KKworICAgIGZsb2F0IGRlbHRhWCA9IG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpOwor
ICAgIGZsb2F0IGRlbHRhWSA9IG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKTsKKworICAg
IC8vIFJlc2V0IG92ZXJmbG93IHZhbHVlcyBiZWNhdXNlIHdlIG1heSBkZWNpZGUgdG8gcmVtb3Zl
IGRlbHRhIGF0IHZhcmlvdXMgcG9pbnRzIGFuZCBwdXQgaXQgaW50byBvdmVyZmxvdy4KKyAgICBt
X292ZXJmbG93U2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKKworICAgIEludFNpemUgc3RyZXRj
aEFtb3VudCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7CisgICAgYm9vbCBpc1ZlcnRpY2Fs
bHlTdHJldGNoZWQgPSBzdHJldGNoQW1vdW50LmhlaWdodCgpOworICAgIGJvb2wgaXNIb3Jpem9u
dGFsbHlTdHJldGNoZWQgPSBzdHJldGNoQW1vdW50LndpZHRoKCk7CisKKyAgICBmbG9hdCBldmVu
dENvYWxlc2NlZERlbHRhWDsKKyAgICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWTsKKworICAg
IGlmIChpc1ZlcnRpY2FsbHlTdHJldGNoZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsK
KyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVk
U2Nyb2xsaW5nRGVsdGFYKCk7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gLXdoZWVs
RXZlbnQudW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWSgpOworICAgIH0gZWxzZSB7CisgICAg
ICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gLXdoZWVsRXZlbnQuZGVsdGFYKCk7CisgICAgICAg
IGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gLXdoZWVsRXZlbnQuZGVsdGFZKCk7CisgICAgfQorCisg
ICAgZGVsdGFYICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFYOworICAgIGRlbHRhWSArPSBldmVudENv
YWxlc2NlZERlbHRhWTsKKworICAgIC8vIFNsaWdodGx5IHByZWZlciBzY3JvbGxpbmcgdmVydGlj
YWxseSBieSBhcHBseWluZyB0aGUgPSBjYXNlIHRvIGRlbHRhWQorICAgIGlmIChmYWJzZihkZWx0
YVkpID49IGZhYnNmKGRlbHRhWCkpCisgICAgICAgIGRlbHRhWCA9IDA7CisgICAgZWxzZQorICAg
ICAgICBkZWx0YVkgPSAwOworCisgICAgYm9vbCBzaG91bGRTdHJldGNoID0gZmFsc2U7CisKKyAg
ICBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZSBtb21lbnR1bVBoYXNlID0gd2hlZWxFdmVudC5tb21l
bnR1bVBoYXNlKCk7CisKKyAgICAvLyBJZiB3ZSBhcmUgc3RhcnRpbmcgbW9tZW50dW0gc2Nyb2xs
aW5nIHRoZW4gZG8gc29tZSBzZXR1cC4KKyAgICBpZiAoIW1fbW9tZW50dW1TY3JvbGxJblByb2dy
ZXNzICYmIChtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4gfHwg
bW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUNoYW5nZWQpKQorICAgICAg
ICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IHRydWU7CisKKyAgICBDRlRpbWVJbnRlcnZh
bCB0aW1lRGVsdGEgPSB3aGVlbEV2ZW50LnRpbWVzdGFtcCgpIC0gbV9sYXN0TW9tZW50dW1TY3Jv
bGxUaW1lc3RhbXA7CisgICAgaWYgKG1faW5TY3JvbGxHZXN0dXJlIHx8IG1fbW9tZW50dW1TY3Jv
bGxJblByb2dyZXNzKSB7CisgICAgICAgIGlmIChtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCAmJiB0aW1lRGVsdGEgPiAwICYmIHRpbWVEZWx0YSA8IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1Rp
bWVvdXQpIHsKKyAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eS5zZXRXaWR0aChldmVudENv
YWxlc2NlZERlbHRhWCAvIChmbG9hdCl0aW1lRGVsdGEpOworICAgICAgICAgICAgbV9tb21lbnR1
bVZlbG9jaXR5LnNldEhlaWdodChldmVudENvYWxlc2NlZERlbHRhWSAvIChmbG9hdCl0aW1lRGVs
dGEpOworICAgICAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSB3aGVlbEV2
ZW50LnRpbWVzdGFtcCgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgbV9sYXN0TW9t
ZW50dW1TY3JvbGxUaW1lc3RhbXAgPSB3aGVlbEV2ZW50LnRpbWVzdGFtcCgpOworICAgICAgICAg
ICAgbV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisgICAgICAgIH0KKworICAgICAg
ICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRjaGVkKSB7CisgICAgICAgICAgICBpZiAoIWlzSG9yaXpv
bnRhbGx5U3RyZXRjaGVkICYmIG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUo
ZGVsdGFYLCAwKSkpIHsKKyAgICAgICAgICAgICAgICAvLyBTdHJldGNoaW5nIG9ubHkgaW4gdGhl
IHZlcnRpY2FsLgorICAgICAgICAgICAgICAgIGlmIChkZWx0YVkgJiYgKGZhYnNmKGRlbHRhWCAv
IGRlbHRhWSkgPCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbykpCisgICAgICAg
ICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICAgICAgZWxzZSBpZiAoZmFic2Yo
ZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsK
KyAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3Zl
cmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKKyAgICAgICAgICAgICAgICAgICAg
ZGVsdGFYID0gMDsKKyAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAg
bV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0
aCgpICsgZGVsdGFYKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIGlmIChpc0hvcml6
b250YWxseVN0cmV0Y2hlZCkgeworICAgICAgICAgICAgLy8gU3RyZXRjaGluZyBvbmx5IGluIHRo
ZSBob3Jpem9udGFsLgorICAgICAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlv
bihGbG9hdFNpemUoMCwgZGVsdGFZKSkpIHsKKyAgICAgICAgICAgICAgICBpZiAoZGVsdGFYICYm
IChmYWJzZihkZWx0YVkgLyBkZWx0YVgpIDwgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNo
UmF0aW8pKQorICAgICAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAgICAg
IGVsc2UgaWYgKGZhYnNmKGRlbHRhWSkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFC
ZWZvcmVTdHJldGNoKSB7CisgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YS5zZXRIZWlnaHQobV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpICsgZGVsdGFZKTsKKyAg
ICAgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAgICAgICAgICAgICAgICB9IGVsc2UKKyAg
ICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJm
bG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBkZWx0YVkpOworICAgICAgICAgICAgfQorICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgLy8gTm90IHN0cmV0Y2hpbmcgYXQgYWxsIHlldC4KKyAg
ICAgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRh
WCwgZGVsdGFZKSkpIHsKKyAgICAgICAgICAgICAgICBpZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJz
ZihkZWx0YVgpKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0YVgpIDwgcnVi
YmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgeworICAgICAgICAgICAg
ICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3Jv
bGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRh
WCA9IDA7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICAg
ICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53
aWR0aCgpICsgZGVsdGFYKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgc2hv
dWxkU3RyZXRjaCA9IHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAg
ICBpZiAoZGVsdGFYIHx8IGRlbHRhWSkgeworICAgICAgICBpZiAoIShzaG91bGRTdHJldGNoIHx8
IGlzVmVydGljYWxseVN0cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCkpIHsKKyAg
ICAgICAgICAgIGlmIChkZWx0YVkpIHsKKyAgICAgICAgICAgICAgICBkZWx0YVkgKj0gc2Nyb2xs
V2hlZWxNdWx0aXBsaWVyKCk7CisgICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNj
cm9sbEJ5KEZsb2F0U2l6ZSgwLCBkZWx0YVkpKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IGlmIChkZWx0YVgpIHsKKyAgICAgICAgICAgICAgICBkZWx0YVggKj0gc2Nyb2xsV2hlZWxNdWx0
aXBsaWVyKCk7CisgICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5KEZs
b2F0U2l6ZShkZWx0YVgsIDApKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIGlmICghbV9jbGllbnQtPmFsbG93c0hvcml6b250YWxTdHJldGNoaW5nKHdoZWVs
RXZlbnQpKSB7CisgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAgICAgICAgICBl
dmVudENvYWxlc2NlZERlbHRhWCA9IDA7CisgICAgICAgICAgICB9IGVsc2UgaWYgKGRlbHRhWCAm
JiAhaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlv
bihGbG9hdFNpemUoZGVsdGFYLCAwKSkpIHsKKyAgICAgICAgICAgICAgICBkZWx0YVggKj0gc2Ny
b2xsV2hlZWxNdWx0aXBsaWVyKCk7CisKKyAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRp
YXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGFY
LCAwKSk7CisgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgaWYgKCFtX2NsaWVudC0+YWxsb3dzVmVydGljYWxTdHJldGNoaW5nKHdoZWVsRXZl
bnQpKSB7CisgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAgICAgICAgICAgICAgICBldmVu
dENvYWxlc2NlZERlbHRhWSA9IDA7CisgICAgICAgICAgICB9IGVsc2UgaWYgKGRlbHRhWSAmJiAh
aXNWZXJ0aWNhbGx5U3RyZXRjaGVkICYmICFtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxv
YXRTaXplKDAsIGRlbHRhWSkpKSB7CisgICAgICAgICAgICAgICAgZGVsdGFZICo9IHNjcm9sbFdo
ZWVsTXVsdGlwbGllcigpOworCisgICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNj
cm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKDAsIGRlbHRhWSkp
OworICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7CisK
KyAgICAgICAgICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykgeworICAgICAgICAg
ICAgICAgIGlmICgobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShldmVudENv
YWxlc2NlZERlbHRhWCwgZXZlbnRDb2FsZXNjZWREZWx0YVkpKSB8fCAoZmFic2YoZXZlbnRDb2Fs
ZXNjZWREZWx0YVgpICsgZmFic2YoZXZlbnRDb2FsZXNjZWREZWx0YVkpIDw9IDApKSAmJiBtX2xh
c3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCkgeworICAgICAgICAgICAgICAgICAgICBtX2lnbm9y
ZU1vbWVudHVtU2Nyb2xscyA9IHRydWU7CisgICAgICAgICAgICAgICAgICAgIG1fbW9tZW50dW1T
Y3JvbGxJblByb2dyZXNzID0gZmFsc2U7CisgICAgICAgICAgICAgICAgICAgIHNuYXBSdWJiZXJC
YW5kKCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorCisgICAgICAgICAgICBt
X3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChtX3N0cmV0Y2hTY3JvbGxGb3JjZS53aWR0aCgp
ICsgZGVsdGFYKTsKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodCht
X3N0cmV0Y2hTY3JvbGxGb3JjZS5oZWlnaHQoKSArIGRlbHRhWSk7CisKKyAgICAgICAgICAgIEZs
b2F0U2l6ZSBkYW1wZWREZWx0YShjZWlsZihlbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEobV9z
dHJldGNoU2Nyb2xsRm9yY2Uud2lkdGgoKSkpLCBjZWlsZihlbGFzdGljRGVsdGFGb3JSZWJvdW5k
RGVsdGEobV9zdHJldGNoU2Nyb2xsRm9yY2UuaGVpZ2h0KCkpKSk7CisKKyAgICAgICAgICAgIG1f
Y2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGRh
bXBlZERlbHRhIC0gc3RyZXRjaEFtb3VudCk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAo
bV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgbW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdo
ZWVsRXZlbnRQaGFzZUVuZGVkKSB7CisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNz
ID0gZmFsc2U7CisgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7CisgICAg
ICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gMDsKKyAgICB9CisKKyAgICByZXR1
cm4gdHJ1ZTsKK30KKworc3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRvd2FyZFplcm8oZmxvYXQg
bnVtKQoreworICAgIHJldHVybiBudW0gPiAwID8gY2VpbGYobnVtIC0gMC41ZikgOiBmbG9vcmYo
bnVtICsgMC41Zik7Cit9CisKK3N0YXRpYyBpbmxpbmUgZmxvYXQgcm91bmRUb0RldmljZVBpeGVs
VG93YXJkWmVybyhmbG9hdCBudW0pCit7CisgICAgZmxvYXQgcm91bmRlZE51bSA9IHJvdW5kZihu
dW0pOworICAgIGlmIChmYWJzKG51bSAtIHJvdW5kZWROdW0pIDwgMC4xMjUpCisgICAgICAgIG51
bSA9IHJvdW5kZWROdW07CisKKyAgICByZXR1cm4gcm91bmRUb3dhcmRaZXJvKG51bSk7Cit9CisK
K3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCkKK3sKKyAg
ICBpZiAoIW1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzIHx8IG1faWdub3JlTW9tZW50dW1TY3Jv
bGxzKSB7CisgICAgICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IFtOU0RhdGUgdGltZUlu
dGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXSAtIG1fc3RhcnRUaW1lOworCisgICAgICAgIGlmICht
X3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNpemUoKSkgeworICAgICAgICAgICAgbV9zdGFydFN0cmV0
Y2ggPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworICAgICAgICAgICAgaWYgKG1fc3RhcnRT
dHJldGNoID09IEZsb2F0U2l6ZSgpKSB7CisgICAgICAgICAgICAgICAgc3RvcFNuYXBSdWJiZXJi
YW5kVGltZXIoKTsKKworICAgICAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlID0gRmxv
YXRTaXplKCk7CisgICAgICAgICAgICAgICAgbV9zdGFydFRpbWUgPSAwOworICAgICAgICAgICAg
ICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7CisgICAgICAgICAgICAgICAgbV9vcmln
T3JpZ2luID0gRmxvYXRQb2ludCgpOworICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0g
RmxvYXRTaXplKCk7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorCisg
ICAgICAgICAgICBtX29yaWdPcmlnaW4gPSBtX2NsaWVudC0+YWJzb2x1dGVTY3JvbGxQb3NpdGlv
bigpIC0gbV9zdGFydFN0cmV0Y2g7CisgICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IG1fbW9t
ZW50dW1WZWxvY2l0eTsKKworICAgICAgICAgICAgLy8gSnVzdCBsaWtlIG5vcm1hbCBzY3JvbGxp
bmcsIHByZWZlciB2ZXJ0aWNhbCBydWJiZXJiYW5kaW5nCisgICAgICAgICAgICBpZiAoZmFic2Yo
bV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCkpID49IGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LndpZHRoKCkp
KQorICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldFdpZHRoKDApOworCisgICAgICAg
ICAgICAvLyBEb24ndCBydWJiZXItYmFuZCBob3Jpem9udGFsbHkgaWYgaXQncyBub3QgcG9zc2li
bGUgdG8gc2Nyb2xsIGhvcml6b250YWxseQorICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2Fu
U2Nyb2xsSG9yaXpvbnRhbGx5KCkpCisgICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0
V2lkdGgoMCk7CisKKyAgICAgICAgICAgIC8vIERvbid0IHJ1YmJlci1iYW5kIHZlcnRpY2FsbHkg
aWYgaXQncyBub3QgcG9zc2libGUgdG8gc2Nyb2xsIHZlcnRpY2FsbHkKKyAgICAgICAgICAgIGlm
ICghbV9jbGllbnQtPmNhblNjcm9sbFZlcnRpY2FsbHkoKSkKKyAgICAgICAgICAgICAgICBtX29y
aWdWZWxvY2l0eS5zZXRIZWlnaHQoMCk7CisgICAgICAgIH0KKworICAgICAgICBGbG9hdFBvaW50
IGRlbHRhKHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGltZURl
bHRhKG1fc3RhcnRTdHJldGNoLndpZHRoKCksIC1tX29yaWdWZWxvY2l0eS53aWR0aCgpLCAoZmxv
YXQpdGltZURlbHRhKSksCisgICAgICAgICAgICByb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJv
KGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShtX3N0YXJ0U3RyZXRjaC5oZWlnaHQoKSwgLW1fb3Jp
Z1ZlbG9jaXR5LmhlaWdodCgpLCAoZmxvYXQpdGltZURlbHRhKSkpOworCisgICAgICAgIGlmIChm
YWJzKGRlbHRhLngoKSkgPj0gMSB8fCBmYWJzKGRlbHRhLnkoKSkgPj0gMSkgeworICAgICAgICAg
ICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWlu
dHMoRmxvYXRTaXplKGRlbHRhLngoKSwgZGVsdGEueSgpKSAtIG1fY2xpZW50LT5zdHJldGNoQW1v
dW50KCkpOworCisgICAgICAgICAgICBGbG9hdFNpemUgbmV3U3RyZXRjaCA9IG1fY2xpZW50LT5z
dHJldGNoQW1vdW50KCk7CisKKyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldFdp
ZHRoKHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJldGNoLndpZHRoKCkpKTsKKyAg
ICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJvdW5kRGVsdGFGb3JF
bGFzdGljRGVsdGEobmV3U3RyZXRjaC5oZWlnaHQoKSkpOworICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgICAgbV9jbGllbnQtPmFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2Fy
eSgpOworCisgICAgICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworICAgICAgICAg
ICAgbV9zdHJldGNoU2Nyb2xsRm9yY2UgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgIG1fc3Rh
cnRUaW1lID0gMDsKKyAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7Cisg
ICAgICAgICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CisgICAgICAgICAgICBtX29y
aWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgbV9zdGFydFRpbWUgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07
CisgICAgICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7CisgICAgfQorfQorCitib29s
IFNjcm9sbENvbnRyb2xsZXI6OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdAoreworICAg
IGlmICghbV9pblNjcm9sbEdlc3R1cmUgJiYgIW1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzICYm
ICFtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
CisgICAgcmV0dXJuICFtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpLmlzWmVybygpOworfQorCit2
b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKK3sKKyAgICBt
X2NsaWVudC0+c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBtX3NuYXBSdWJiZXJiYW5k
VGltZXJJc0FjdGl2ZSA9IGZhbHNlOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBS
dWJiZXJCYW5kKCkKK3sKKyAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSBzeXN0ZW1VcHRp
bWUoKSAtIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOworICAgIGlmIChtX2xhc3RNb21l
bnR1bVNjcm9sbFRpbWVzdGFtcCAmJiB0aW1lRGVsdGEgPj0gc2Nyb2xsVmVsb2NpdHlaZXJvaW5n
VGltZW91dCkKKyAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisKKyAg
ICBtX2luU2Nyb2xsR2VzdHVyZSA9IGZhbHNlOworCisgICAgaWYgKG1fc25hcFJ1YmJlcmJhbmRU
aW1lcklzQWN0aXZlKQorICAgICAgICByZXR1cm47CisKKyAgICBtX3N0YXJ0VGltZSA9IFtOU0Rh
dGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKKyAgICBtX3N0YXJ0U3RyZXRjaCA9
IEZsb2F0U2l6ZSgpOworICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKKyAgICBtX29y
aWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworCisgICAgbV9jbGllbnQtPnN0YXJ0U25hcFJ1YmJl
cmJhbmRUaW1lcigpOworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gdHJ1ZTsK
K30KKworYm9vbCBTY3JvbGxDb250cm9sbGVyOjpzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFs
RGlyZWN0aW9uKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKK3sKKyAgICBp
ZiAod2hlZWxFdmVudC5kZWx0YVgoKSA+IDApCisgICAgICAgIHJldHVybiBtX2NsaWVudC0+c2hv
dWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbExlZnQpOworICAgIGlmICh3aGVlbEV2ZW50
LmRlbHRhWCgpIDwgMCkKKyAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5zaG91bGRSdWJiZXJCYW5k
SW5EaXJlY3Rpb24oU2Nyb2xsUmlnaHQpOworCisgICAgcmV0dXJuIHRydWU7Cit9CisKK30gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJfQkFORElORykKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxl
ci5tbQkod29ya2luZyBjb3B5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Ny
b2xsQ29udHJvbGxlci5tbQkod29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEsMTEgQEAKICNpbmNs
dWRlIDxzeXMvc3lzY3RsLmg+CiAjaW5jbHVkZSA8c3lzL3RpbWUuaD4KIAorI2lmIEVOQUJMRShD
U1NfU0NST0xMX1NOQVApCisjaW5jbHVkZSAiQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oIgorI2lu
Y2x1ZGUgIlNjcm9sbGFibGVBcmVhLmgiCisjZW5kaWYKKwogI2lmIEVOQUJMRShSVUJCRVJfQkFO
RElORykKIAogc3RhdGljIE5TVGltZUludGVydmFsIHN5c3RlbVVwdGltZSgpCkBAIC05MSwxNyAr
OTYsMjYgQEAgc3RhdGljIGZsb2F0IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpCiAKIFNjcm9sbENv
bnRyb2xsZXI6OlNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCogY2xpZW50
KQogICAgIDogbV9jbGllbnQoY2xpZW50KQorICAgICwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1l
c3RhbXAoMCkKKyAgICAsIG1fc3RhcnRUaW1lKDApCisgICAgLCBtX3NuYXBSdWJiZXJiYW5kVGlt
ZXIoUnVuTG9vcDo6Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmRUaW1lckZpcmVkKQorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JN
KE1BQykKKyAgICAsIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lcihSdW5Mb29wOjpjdXJyZW50
KCksIHRoaXMsICZTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmly
ZWQpCisgICAgLCBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyKFJ1bkxvb3A6OmN1cnJlbnQoKSwg
dGhpcywgJlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQpCisj
ZW5kaWYKICAgICAsIG1faW5TY3JvbGxHZXN0dXJlKGZhbHNlKQogICAgICwgbV9tb21lbnR1bVNj
cm9sbEluUHJvZ3Jlc3MoZmFsc2UpCiAgICAgLCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyhmYWxz
ZSkKLSAgICAsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCi0gICAgLCBtX3N0YXJ0
VGltZSgwKQogICAgICwgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUoZmFsc2UpCiB7CiB9
CiAKIGJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9y
bVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCiB7CisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkg
JiYgUExBVEZPUk0oTUFDKQorICAgIGlmICghcHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFw
KHdoZWVsRXZlbnQpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKICAgICBpZiAod2hl
ZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4pIHsKICAgICAg
ICAgLy8gRmlyc3QsIGNoZWNrIGlmIHdlIHNob3VsZCBydWJiZXItYmFuZCBhdCBhbGwuCiAgICAg
ICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKC13aGVlbEV2ZW50
LmRlbHRhWCgpLCAwKSkKQEAgLTM2NSw5ICszNzksMTQgQEAgYm9vbCBTY3JvbGxDb250cm9sbGVy
Ojppc1J1YmJlckJhbmRJblBybwogICAgIHJldHVybiAhbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQo
KS5pc1plcm8oKTsKIH0KIAordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIoKQoreworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lci5zdGFydFJlcGVhdGluZygx
LjAgLyA2MC4wKTsKK30KKwogdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU25hcFJ1YmJlcmJh
bmRUaW1lcigpCiB7Ci0gICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Cisg
ICAgbV9zbmFwUnViYmVyYmFuZFRpbWVyLnN0b3AoKTsKICAgICBtX3NuYXBSdWJiZXJiYW5kVGlt
ZXJJc0FjdGl2ZSA9IGZhbHNlOwogfQogCkBAIC0zODcsNyArNDA2LDcgQEAgdm9pZCBTY3JvbGxD
b250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCiAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2lu
dCgpOwogICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CiAKLSAgICBtX2NsaWVudC0+
c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVy
KCk7CiAgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSB0cnVlOwogfQogCkBAIC00
MDEsNiArNDIwLDczIEBAIGJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6c2hvdWxkUnViYmVyQmFuZEkK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBM
QVRGT1JNKE1BQykKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JT
Y3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKK3sKKyAgICBp
ZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikgeworICAgICAgICBtX3ZlcnRpY2FsU2Ny
b2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworICAgICAgICBp
ZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVlbEV2ZW50
KHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICBpZiAo
bV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7CisgICAgICAgIG1faG9yaXpvbnRhbFNj
cm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKKyAgICAgICAg
aWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVlbEV2
ZW50KHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAg
IHJldHVybiB0cnVlOworfQorICAgIAordm9pZCBTY3JvbGxDb250cm9sbGVyOjp1cGRhdGVTY3Jv
bGxBbmltYXRvcnNBbmRUaW1lcnMoY29uc3QgU2Nyb2xsYWJsZUFyZWEmIHNjcm9sbGFibGVBcmVh
KQoreworICAgIC8vIEZJWE1FOiBDdXJyZW50bHksIHNjcm9sbCBzbmFwIGFuaW1hdG9ycyBhcmUg
cmVjcmVhdGVkIGV2ZW4gdGhvdWdoIHRoZSBzbmFwIG9mZnNldHMgYWxvbmUgY2FuIGJlIHVwZGF0
ZWQuCisgICAgaWYgKHNjcm9sbGFibGVBcmVhLmhvcml6b250YWxTbmFwT2Zmc2V0cygpKQorICAg
ICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBzdGQ6Om1ha2VfdW5pcXVlPEF4
aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMsIHNjcm9sbGFibGVBcmVhLmhvcml6b250YWxTbmFw
T2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwpOworICAgIGVsc2UgaWYgKG1f
aG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xs
U25hcEFuaW1hdG9yID0gbnVsbHB0cjsKKworICAgIGlmIChzY3JvbGxhYmxlQXJlYS52ZXJ0aWNh
bFNuYXBPZmZzZXRzKCkpCisgICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBz
dGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMsIHNjcm9sbGFibGVB
cmVhLnZlcnRpY2FsU25hcE9mZnNldHMoKSwgU2Nyb2xsRXZlbnRBeGlzOjpWZXJ0aWNhbCk7Cisg
ICAgZWxzZSBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAgICAgbV92ZXJ0
aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9IG51bGxwdHI7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJv
bGxlcjo6c3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCit7CisgICAg
UnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4mIHNjcm9sbFNuYXBUaW1lciA9IGF4aXMg
PT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRp
bWVyIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKKyAgICBpZiAoIXNjcm9sbFNuYXBUaW1l
ci5pc0FjdGl2ZSgpKQorICAgICAgICBzY3JvbGxTbmFwVGltZXIuc3RhcnRSZXBlYXRpbmcoMS4w
IC8gNjAuMCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RvcFNjcm9sbFNuYXBUaW1l
cihTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250
cm9sbGVyPiYgc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6
b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgOiBtX3ZlcnRpY2FsU2Nyb2xsU25h
cFRpbWVyOworICAgIHNjcm9sbFNuYXBUaW1lci5zdG9wKCk7Cit9CisgICAgCit2b2lkIFNjcm9s
bENvbnRyb2xsZXI6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpCit7CisgICAgaWYg
KG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAgICAgbV9ob3Jpem9udGFsU2Ny
b2xsU25hcEFuaW1hdG9yLT5zY3JvbGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Cit9CisKK3ZvaWQg
U2Nyb2xsQ29udHJvbGxlcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpCit7CisgICAg
aWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1fdmVydGljYWxTY3Jv
bGxTbmFwQW5pbWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKK30KKworTGF5b3V0
VW5pdCBTY3JvbGxDb250cm9sbGVyOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlz
IGF4aXMpCit7CisgICAgcmV0dXJuIG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMoYXhpcyk7
Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9s
bEV2ZW50QXhpcyBheGlzLCBmbG9hdCBkZWx0YSkKK3sKKyAgICBtX2NsaWVudC0+aW1tZWRpYXRl
U2Nyb2xsT25BeGlzKGF4aXMsIGRlbHRhKTsKK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgJ
KHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Ny
b2xsU25hcEFuaW1hdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDggKzU3LDggQEAgcHJvdGVj
dGVkOgogICAgIHZpcnR1YWwgfkF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQoKSB7IH0KIAog
cHVibGljOgotICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xs
RXZlbnRBeGlzKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEluQXhpcyhT
Y3JvbGxFdmVudEF4aXMsIGZsb2F0IHZlbG9jaXR5KSA9IDA7CisgICAgdmlydHVhbCBMYXlvdXRV
bml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKKyAgICB2aXJ0dWFs
IHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgdmVsb2Np
dHkpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZl
bnRBeGlzKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xs
RXZlbnRBeGlzKSA9IDA7CiB9OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4
aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0JKHJldmlzaW9uIDE4MDg4OSkKKysr
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFuaW1hdG9yLm1tCSh3
b3JraW5nIGNvcHkpCkBAIC0xMTcsNyArMTE3LDcgQEAgdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yOjpoYW5kbGVXaGVlbAogICAgICAgICAvLyBCZWdpbiB0cmFja2luZyB3aGVlbCBkZWx0YXMg
Zm9yIGdsaWRlIHByZWRpY3Rpb24uCiAgICAgICAgIGVuZFNjcm9sbFNuYXBBbmltYXRpb24oU2Ny
b2xsU25hcFN0YXRlOjpVc2VySW50ZXJhY3Rpb24pOwogICAgICAgICBwdXNoSW5pdGlhbFdoZWVs
RGVsdGEod2hlZWxEZWx0YSk7Ci0gICAgICAgIG1fYmVnaW5UcmFja2luZ1doZWVsRGVsdGFPZmZz
ZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgICAgIG1fYmVn
aW5UcmFja2luZ1doZWVsRGVsdGFPZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlz
KG1fYXhpcyk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBXaGVlbEV2ZW50U3RhdHVzOjpJ
bmVydGlhbFNjcm9sbGluZzoKQEAgLTE1Myw3ICsxNTMsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFw
QW5pbWF0b3I6OnNjcm9sbFNuYXBBCiAgICAgQVNTRVJUKG1fY3VycmVudFN0YXRlID09IFNjcm9s
bFNuYXBTdGF0ZTo6R2xpZGluZyB8fCBtX2N1cnJlbnRTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6
OlNuYXBwaW5nKTsKICAgICBmbG9hdCBkZWx0YSA9IG1fY3VycmVudFN0YXRlID09IFNjcm9sbFNu
YXBTdGF0ZTo6U25hcHBpbmcgPyBjb21wdXRlU25hcERlbHRhKCkgOiBjb21wdXRlR2xpZGVEZWx0
YSgpOwogICAgIGlmIChkZWx0YSkKLSAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbElu
QXhpcyhtX2F4aXMsIGRlbHRhKTsKKyAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbE9u
QXhpcyhtX2F4aXMsIGRlbHRhKTsKICAgICBlbHNlCiAgICAgICAgIGVuZFNjcm9sbFNuYXBBbmlt
YXRpb24oU2Nyb2xsU25hcFN0YXRlOjpEZXN0aW5hdGlvblJlYWNoZWQpOwogfQpAQCAtMTYxLDcg
KzE2MSw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6c2Nyb2xsU25hcEEKIHZvaWQg
QXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6YmVnaW5TY3JvbGxTbmFwQW5pbWF0aW9uKFNjcm9sbFNu
YXBTdGF0ZSBuZXdTdGF0ZSkKIHsKICAgICBBU1NFUlQobmV3U3RhdGUgPT0gU2Nyb2xsU25hcFN0
YXRlOjpHbGlkaW5nIHx8IG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcpOwot
ICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldEluQXhpcyhtX2F4
aXMpOworICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhp
cyhtX2F4aXMpOwogICAgIGZsb2F0IGluaXRpYWxXaGVlbERlbHRhID0gbmV3U3RhdGUgPT0gU2Ny
b2xsU25hcFN0YXRlOjpHbGlkaW5nID8gYXZlcmFnZUluaXRpYWxXaGVlbERlbHRhKCkgOiAwOwog
ICAgIExheW91dFVuaXQgcHJvamVjdGVkU2Nyb2xsRGVzdGluYXRpb24gPSBuZXdTdGF0ZSA9PSBT
Y3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgPyBtX2JlZ2luVHJhY2tpbmdXaGVlbERlbHRhT2Zmc2V0
ICsgTGF5b3V0VW5pdChwcm9qZWN0ZWRJbmVydGlhbFNjcm9sbERpc3RhbmNlKGluaXRpYWxXaGVl
bERlbHRhKSkgOiBvZmZzZXQ7CiAgICAgcHJvamVjdGVkU2Nyb2xsRGVzdGluYXRpb24gPSBzdGQ6
Om1pbihzdGQ6Om1heChwcm9qZWN0ZWRTY3JvbGxEZXN0aW5hdGlvbiwgbV9zbmFwT2Zmc2V0cy0+
Zmlyc3QoKSksIG1fc25hcE9mZnNldHMtPmxhc3QoKSk7CkBAIC0yMDMsNyArMjAzLDcgQEAgdm9p
ZCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjplbmRTY3JvbGxTbgogLy8gcmVsYXRpb25zaGlwIG9m
IHRoZSBkaXN0YW5jZSB0cmF2ZWxlZCwgY2xhbXBlZCBieSBhcmJpdHJhcnkgbWluIGFuZCBtYXgg
dmFsdWVzLgogZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZVNuYXBEZWx0YSgp
IGNvbnN0CiB7Ci0gICAgTGF5b3V0VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0
SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5b3V0VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xs
T2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAgYm9vbCBjYW5Db21wdXRlU25hcCA9ICAobV9pbml0
aWFsT2Zmc2V0IDw9IG9mZnNldCAmJiBvZmZzZXQgPCBtX3RhcmdldE9mZnNldCkgfHwgKG1fdGFy
Z2V0T2Zmc2V0IDwgb2Zmc2V0ICYmIG9mZnNldCA8PSBtX2luaXRpYWxPZmZzZXQpOwogICAgIGlm
IChtX2N1cnJlbnRTdGF0ZSAhPSBTY3JvbGxTbmFwU3RhdGU6OlNuYXBwaW5nIHx8ICFjYW5Db21w
dXRlU25hcCkKICAgICAgICAgcmV0dXJuIDA7CkBAIC0yMzcsNyArMjM3LDcgQEAgZmxvYXQgQXhp
c1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZVNuYQogLy8gYW5kIFZGLiBUaHVzLCB3ZSBjYW4g
ZXhwcmVzcyBvdXIgZ2xpZGluZyBlcXVhdGlvbiBhbGwgaW4gdGVybXMgb2YgVjAsIFZGIGFuZCB0
LgogZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZUdsaWRlRGVsdGEoKSBjb25z
dAogewotICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldEluQXhp
cyhtX2F4aXMpOworICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNl
dE9uQXhpcyhtX2F4aXMpOwogICAgIGJvb2wgY2FuQ29tcHV0ZUdsaWRlID0gKG1faW5pdGlhbE9m
ZnNldCA8PSBvZmZzZXQgJiYgb2Zmc2V0IDwgbV90YXJnZXRPZmZzZXQpIHx8IChtX3RhcmdldE9m
ZnNldCA8IG9mZnNldCAmJiBvZmZzZXQgPD0gbV9pbml0aWFsT2Zmc2V0KTsKICAgICBpZiAobV9j
dXJyZW50U3RhdGUgIT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5nIHx8ICFjYW5Db21wdXRlR2xp
ZGUpCiAgICAgICAgIHJldHVybiAwOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1Njcm9sbEFuaW1hdG9yTWFjLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLmgJKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oCSh3b3JraW5nIGNvcHkpCkBA
IC0zMiw3ICszMiw2IEBACiAjaW5jbHVkZSAiRmxvYXRQb2ludC5oIgogI2luY2x1ZGUgIkZsb2F0
U2l6ZS5oIgogI2luY2x1ZGUgIlNjcm9sbEFuaW1hdG9yLmgiCi0jaW5jbHVkZSAiU2Nyb2xsQ29u
dHJvbGxlci5oIgogI2luY2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5o
PgogCkBAIC00MiwxNSArNDEsMTEgQEAgT0JKQ19DTEFTUyBXZWJTY3JvbGxiYXJQYWludGVyRGVs
ZWdhdGU7CiAKIHR5cGVkZWYgaWQgU2Nyb2xsYmFyUGFpbnRlckNvbnRyb2xsZXI7CiAKLSNpZiAh
RU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7IH07
Ci0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBTY3JvbGxiYXI7CiAKLWNs
YXNzIFNjcm9sbEFuaW1hdG9yTWFjIDogcHVibGljIFNjcm9sbEFuaW1hdG9yLCBwcml2YXRlIFNj
cm9sbENvbnRyb2xsZXJDbGllbnQgeworY2xhc3MgU2Nyb2xsQW5pbWF0b3JNYWMgOiBwdWJsaWMg
U2Nyb2xsQW5pbWF0b3IgewogCiBwdWJsaWM6CiAgICAgU2Nyb2xsQW5pbWF0b3JNYWMoU2Nyb2xs
YWJsZUFyZWEmKTsKQEAgLTE1MCwxNyArMTQ1LDExIEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBX
ZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CiAgICAg
dmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWlu
dHMoY29uc3QgRmxvYXRTaXplJikgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0
ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBz
dGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3Rv
cFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0
U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICBib29s
IHBpbm5lZEluRGlyZWN0aW9uKGZsb2F0IGRlbHRhWCwgZmxvYXQgZGVsdGFZKTsKLSAgICB2b2lk
IHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwogCiAgICAgYm9vbCBpc0FscmVhZHlQaW5uZWRJ
bkRpcmVjdGlvbk9mR2VzdHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmLCBTY3JvbGxFdmVu
dEF4aXMpOwotCi0gICAgU2Nyb2xsQ29udHJvbGxlciBtX3Njcm9sbENvbnRyb2xsZXI7Ci0gICAg
VGltZXIgbV9zbmFwUnViYmVyQmFuZFRpbWVyOwogI2VuZGlmCiAKICAgICBib29sIG1faGF2ZVNj
cm9sbGVkU2luY2VQYWdlTG9hZDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0JKHJldmlzaW9uIDE4MDg4OSkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQkod29ya2luZyBjb3B5KQpA
QCAtNjQzLDEwICs2NDMsNiBAQCBTY3JvbGxBbmltYXRvck1hYzo6U2Nyb2xsQW5pbWF0b3JNYWMo
U2NyCiAgICAgOiBTY3JvbGxBbmltYXRvcihzY3JvbGxhYmxlQXJlYSkKICAgICAsIG1faW5pdGlh
bFNjcm9sbGJhclBhaW50VGltZXIoKnRoaXMsICZTY3JvbGxBbmltYXRvck1hYzo6aW5pdGlhbFNj
cm9sbGJhclBhaW50VGltZXJGaXJlZCkKICAgICAsIG1fc2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRU
aW1lcigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29udGVudEFyZWFTY3JvbGxlZFRp
bWVyRmlyZWQpCi0jaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotICAgICwgbV9zY3JvbGxDb250
cm9sbGVyKHRoaXMpCi0gICAgLCBtX3NuYXBSdWJiZXJCYW5kVGltZXIoKnRoaXMsICZTY3JvbGxB
bmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKQotI2VuZGlmCiAgICAgLCBtX2hh
dmVTY3JvbGxlZFNpbmNlUGFnZUxvYWQoZmFsc2UpCiAgICAgLCBtX25lZWRzU2Nyb2xsZXJTdHls
ZVVwZGF0ZShmYWxzZSkKIHsKQEAgLTEyNzAsMjEgKzEyNjYsNiBAQCB2b2lkIFNjcm9sbEFuaW1h
dG9yTWFjOjppbW1lZGlhdGVTY3JvbGxCCiAgICAgbV9jdXJyZW50UG9zWSA9IG5ld1Bvcy55KCk7
CiAgICAgbm90aWZ5UG9zaXRpb25DaGFuZ2VkKGFkanVzdGVkRGVsdGEpOwogfQotCi12b2lkIFNj
cm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKQotewotICAgIG1fc25h
cFJ1YmJlckJhbmRUaW1lci5zdGFydFJlcGVhdGluZygxLjAgLyA2MC4wKTsKLX0KLQotdm9pZCBT
Y3JvbGxBbmltYXRvck1hYzo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQotewotICAgIG1fc25h
cFJ1YmJlckJhbmRUaW1lci5zdG9wKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnNu
YXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCi17Ci0gICAgbV9zY3JvbGxDb250cm9sbGVyLnNuYXBS
dWJiZXJCYW5kVGltZXJGaXJlZCgpOwotfQogI2VuZGlmCiAKIHZvaWQgU2Nyb2xsQW5pbWF0b3JN
YWM6OnVwZGF0ZVNjcm9sbGVyU3R5bGUoKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5oCShyZXZpc2lvbiAxODA4ODkpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDEwNyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJl
IG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBTY3JvbGxDb250cm9sbGVyX2gK
LSNkZWZpbmUgU2Nyb2xsQ29udHJvbGxlcl9oCi0KLSNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcp
Ci0KLSNpbmNsdWRlICJGbG9hdFBvaW50LmgiCi0jaW5jbHVkZSAiRmxvYXRTaXplLmgiCi0jaW5j
bHVkZSAiU2Nyb2xsVHlwZXMuaCIKLSNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KLQotbmFt
ZXNwYWNlIFdlYkNvcmUgewotCi1jbGFzcyBQbGF0Zm9ybVdoZWVsRXZlbnQ7Ci0KLWNsYXNzIFNj
cm9sbENvbnRyb2xsZXJDbGllbnQgewotcHJvdGVjdGVkOgotICAgIHZpcnR1YWwgflNjcm9sbENv
bnRyb2xsZXJDbGllbnQoKSB7IH0KLQotcHVibGljOgotICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NI
b3Jpem9udGFsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSA9IDA7Ci0gICAg
dmlydHVhbCBib29sIGFsbG93c1ZlcnRpY2FsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9ybVdoZWVs
RXZlbnQmKSA9IDA7Ci0gICAgdmlydHVhbCBJbnRTaXplIHN0cmV0Y2hBbW91bnQoKSA9IDA7Ci0g
ICAgdmlydHVhbCBib29sIHBpbm5lZEluRGlyZWN0aW9uKGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsK
LSAgICB2aXJ0dWFsIGJvb2wgY2FuU2Nyb2xsSG9yaXpvbnRhbGx5KCkgPSAwOwotICAgIHZpcnR1
YWwgYm9vbCBjYW5TY3JvbGxWZXJ0aWNhbGx5KCkgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBzaG91
bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsRGlyZWN0aW9uKSA9IDA7Ci0KLSAgICAvLyBS
ZXR1cm4gdGhlIGFic29sdXRlIHNjcm9sbCBwb3NpdGlvbiwgbm90IHJlbGF0aXZlIHRvIHRoZSBz
Y3JvbGwgb3JpZ2luLgotICAgIHZpcnR1YWwgV2ViQ29yZTo6SW50UG9pbnQgYWJzb2x1dGVTY3Jv
bGxQb3NpdGlvbigpID0gMDsKLQotICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShj
b25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5
V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgPSAwOwotICAg
IHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7Ci0gICAgdmlydHVh
bCB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwotCi0gICAgLy8gSWYgdGhlIGN1
cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlzIHdpdGhpbiB0aGUgb3ZlcmhhbmcgYXJlYSwgdGhpcyBm
dW5jdGlvbiB3aWxsIGNhdXNlCi0gICAgLy8gdGhlIHBhZ2UgdG8gc2Nyb2xsIHRvIHRoZSBuZWFy
ZXN0IGJvdW5kYXJ5IHBvaW50LgotICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlv
blRvQm91bmRzSWZOZWNlc3NhcnkoKSA9IDA7Ci19OwotCi1jbGFzcyBTY3JvbGxDb250cm9sbGVy
IHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShTY3JvbGxDb250cm9sbGVyKTsKLQotcHVibGlj
OgotICAgIGV4cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCop
OwotCi0gICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYp
OwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7Ci0KLSAgICBib29sIGlzUnVi
YmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdDsKLQotcHJpdmF0ZToKLSAgICB2b2lkIHN0b3BTbmFw
UnViYmVyYmFuZFRpbWVyKCk7Ci0gICAgdm9pZCBzbmFwUnViYmVyQmFuZCgpOwotCi0gICAgYm9v
bCBzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKGNvbnN0IFBsYXRmb3JtV2hl
ZWxFdmVudCYpOwotCi0gICAgU2Nyb2xsQ29udHJvbGxlckNsaWVudCogbV9jbGllbnQ7Ci0KLSAg
ICBib29sIG1faW5TY3JvbGxHZXN0dXJlOwotICAgIGJvb2wgbV9tb21lbnR1bVNjcm9sbEluUHJv
Z3Jlc3M7Ci0gICAgYm9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xsczsKLSAgICAKLSAgICBDRlRp
bWVJbnRlcnZhbCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKLSAgICBGbG9hdFNpemUg
bV9vdmVyZmxvd1Njcm9sbERlbHRhOwotICAgIEZsb2F0U2l6ZSBtX3N0cmV0Y2hTY3JvbGxGb3Jj
ZTsKLSAgICBGbG9hdFNpemUgbV9tb21lbnR1bVZlbG9jaXR5OwotCi0gICAgLy8gUnViYmVyIGJh
bmQgc3RhdGUuCi0gICAgQ0ZUaW1lSW50ZXJ2YWwgbV9zdGFydFRpbWU7Ci0gICAgRmxvYXRTaXpl
IG1fc3RhcnRTdHJldGNoOwotICAgIEZsb2F0UG9pbnQgbV9vcmlnT3JpZ2luOwotICAgIEZsb2F0
U2l6ZSBtX29yaWdWZWxvY2l0eTsKLQotICAgIGJvb2wgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNB
Y3RpdmU7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
UlVCQkVSX0JBTkRJTkcpCi0KLSNlbmRpZiAvLyBTY3JvbGxDb250cm9sbGVyX2gKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tCShyZXZp
c2lvbiAxODA4ODkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJv
bGxlci5tbQkod29ya2luZyBjb3B5KQpAQCAtMSw0MDYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
Ci0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0g
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
Ci0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlNjcm9sbENvbnRyb2xsZXIu
aCIKLQotI2luY2x1ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgotI2luY2x1ZGUgIldlYkNvcmVT
eXN0ZW1JbnRlcmZhY2UuaCIKLSNpbmNsdWRlIDxzeXMvc3lzY3RsLmg+Ci0jaW5jbHVkZSA8c3lz
L3RpbWUuaD4KLQotI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLQotc3RhdGljIE5TVGltZUlu
dGVydmFsIHN5c3RlbVVwdGltZSgpCi17Ci0gICAgaWYgKFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNz
SW5mb10gcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzeXN0ZW1VcHRpbWUpXSkKLSAgICAg
ICAgcmV0dXJuIFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gc3lzdGVtVXB0aW1lXTsKLQot
ICAgIC8vIEdldCBob3cgbG9uZyBzeXN0ZW0gaGFzIGJlZW4gdXAuIEZvdW5kIGJ5IGxvb2tpbmcg
Z2V0dGluZyAiYm9vdHRpbWUiIGZyb20gdGhlIGtlcm5lbC4KLSAgICBzdGF0aWMgc3RydWN0IHRp
bWV2YWwgYm9vdHRpbWUgPSB7MCwgMH07Ci0gICAgaWYgKCFib290dGltZS50dl9zZWMpIHsKLSAg
ICAgICAgaW50IG1pYlsyXSA9IHtDVExfS0VSTiwgS0VSTl9CT09UVElNRX07Ci0gICAgICAgIHNp
emVfdCBzaXplID0gc2l6ZW9mKGJvb3R0aW1lKTsKLSAgICAgICAgaWYgKC0xID09IHN5c2N0bCht
aWIsIDIsICZib290dGltZSwgJnNpemUsIDAsIDApKQotICAgICAgICAgICAgYm9vdHRpbWUudHZf
c2VjID0gMDsKLSAgICB9Ci0gICAgc3RydWN0IHRpbWV2YWwgbm93OwotICAgIGlmIChib290dGlt
ZS50dl9zZWMgJiYgLTEgIT0gZ2V0dGltZW9mZGF5KCZub3csIDApKSB7Ci0gICAgICAgIHN0cnVj
dCB0aW1ldmFsIHVwdGltZTsKLSAgICAgICAgdGltZXJzdWIoJm5vdywgJmJvb3R0aW1lLCAmdXB0
aW1lKTsKLSAgICAgICAgTlNUaW1lSW50ZXJ2YWwgcmVzdWx0ID0gdXB0aW1lLnR2X3NlYyArICh1
cHRpbWUudHZfdXNlYyAvIDFFKzYpOwotICAgICAgICByZXR1cm4gcmVzdWx0OwotICAgIH0KLSAg
ICByZXR1cm4gMDsKLX0KLQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXN0YXRpYyBjb25zdCBm
bG9hdCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0ID0gMC4xMGY7Ci1zdGF0aWMgY29uc3Qg
ZmxvYXQgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8gPSAxOwotc3RhdGljIGNv
bnN0IGZsb2F0IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2ggPSAx
MDsKLQotc3RhdGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShmbG9hdCBpbml0aWFs
UG9zaXRpb24sIGZsb2F0IGluaXRpYWxWZWxvY2l0eSwgZmxvYXQgZWxhcHNlZFRpbWUpCi17Ci0g
ICAgcmV0dXJuIHdrTlNFbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEoaW5pdGlhbFBvc2l0aW9uLCBp
bml0aWFsVmVsb2NpdHksIGVsYXBzZWRUaW1lKTsKLX0KLQotc3RhdGljIGZsb2F0IGVsYXN0aWNE
ZWx0YUZvclJlYm91bmREZWx0YShmbG9hdCBkZWx0YSkKLXsKLSAgICByZXR1cm4gd2tOU0VsYXN0
aWNEZWx0YUZvclJlYm91bmREZWx0YShkZWx0YSk7Ci19Ci0KLXN0YXRpYyBmbG9hdCByZWJvdW5k
RGVsdGFGb3JFbGFzdGljRGVsdGEoZmxvYXQgZGVsdGEpCi17Ci0gICAgcmV0dXJuIHdrTlNSZWJv
dW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoZGVsdGEpOwotfQotCi1zdGF0aWMgZmxvYXQgc2Nyb2xs
V2hlZWxNdWx0aXBsaWVyKCkKLXsKLSAgICBzdGF0aWMgZmxvYXQgbXVsdGlwbGllciA9IC0xOwot
ICAgIGlmIChtdWx0aXBsaWVyIDwgMCkgewotICAgICAgICBtdWx0aXBsaWVyID0gW1tOU1VzZXJE
ZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c10gZmxvYXRGb3JLZXk6QCJOU1Njcm9sbFdoZWVs
TXVsdGlwbGllciJdOwotICAgICAgICBpZiAobXVsdGlwbGllciA8PSAwKQotICAgICAgICAgICAg
bXVsdGlwbGllciA9IDE7Ci0gICAgfQotICAgIHJldHVybiBtdWx0aXBsaWVyOwotfQotCi1TY3Jv
bGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIGNs
aWVudCkKLSAgICA6IG1fY2xpZW50KGNsaWVudCkKLSAgICAsIG1faW5TY3JvbGxHZXN0dXJlKGZh
bHNlKQotICAgICwgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MoZmFsc2UpCi0gICAgLCBtX2ln
bm9yZU1vbWVudHVtU2Nyb2xscyhmYWxzZSkKLSAgICAsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGlt
ZXN0YW1wKDApCi0gICAgLCBtX3N0YXJ0VGltZSgwKQotICAgICwgbV9zbmFwUnViYmVyYmFuZFRp
bWVySXNBY3RpdmUoZmFsc2UpCi17Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aGFuZGxl
V2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCi17Ci0gICAg
aWYgKHdoZWVsRXZlbnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuKSB7
Ci0gICAgICAgIC8vIEZpcnN0LCBjaGVjayBpZiB3ZSBzaG91bGQgcnViYmVyLWJhbmQgYXQgYWxs
LgotICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgtd2hl
ZWxFdmVudC5kZWx0YVgoKSwgMCkpCi0gICAgICAgICAgICAmJiAhc2hvdWxkUnViYmVyQmFuZElu
SG9yaXpvbnRhbERpcmVjdGlvbih3aGVlbEV2ZW50KSkKLSAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLQotICAgICAgICBtX2luU2Nyb2xsR2VzdHVyZSA9IHRydWU7Ci0gICAgICAgIG1fbW9tZW50
dW1TY3JvbGxJblByb2dyZXNzID0gZmFsc2U7Ci0gICAgICAgIG1faWdub3JlTW9tZW50dW1TY3Jv
bGxzID0gZmFsc2U7Ci0gICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gMDsK
LSAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0KLSAgICAgICAgSW50
U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLSAgICAgICAg
bV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRh
KHN0cmV0Y2hBbW91bnQud2lkdGgoKSkpOwotICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5z
ZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQuaGVpZ2h0
KCkpKTsKLSAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7Ci0KLSAg
ICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLQotICAgICAgICByZXR1cm4gdHJ1ZTsK
LSAgICB9Ci0KLSAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVu
dFBoYXNlRW5kZWQpIHsKLSAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKLSAgICAgICAgcmV0dXJu
IHRydWU7Ci0gICAgfQotCi0gICAgYm9vbCBpc01vbWVudHVtU2Nyb2xsRXZlbnQgPSAod2hlZWxF
dmVudC5tb21lbnR1bVBoYXNlKCkgIT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKTsKLSAg
ICBpZiAobV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgJiYgKGlzTW9tZW50dW1TY3JvbGxFdmVudCB8
fCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkpIHsKLSAgICAgICAgaWYgKHdoZWVsRXZl
bnQubW9tZW50dW1QaGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKLSAg
ICAgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7Ci0gICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotCi0g
ICAgZmxvYXQgZGVsdGFYID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCk7Ci0gICAgZmxv
YXQgZGVsdGFZID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpOwotCi0gICAgLy8gUmVz
ZXQgb3ZlcmZsb3cgdmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lkZSB0byByZW1vdmUgZGVsdGEg
YXQgdmFyaW91cyBwb2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJmbG93LgotICAgIG1fb3ZlcmZs
b3dTY3JvbGxEZWx0YSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgSW50U2l6ZSBzdHJldGNoQW1vdW50
ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLSAgICBib29sIGlzVmVydGljYWxseVN0cmV0
Y2hlZCA9IHN0cmV0Y2hBbW91bnQuaGVpZ2h0KCk7Ci0gICAgYm9vbCBpc0hvcml6b250YWxseVN0
cmV0Y2hlZCA9IHN0cmV0Y2hBbW91bnQud2lkdGgoKTsKLQotICAgIGZsb2F0IGV2ZW50Q29hbGVz
Y2VkRGVsdGFYOwotICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFZOwotCi0gICAgaWYgKGlz
VmVydGljYWxseVN0cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCkgewotICAgICAg
ICBldmVudENvYWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxp
bmdEZWx0YVgoKTsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC51
bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZKCk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZXZl
bnRDb2FsZXNjZWREZWx0YVggPSAtd2hlZWxFdmVudC5kZWx0YVgoKTsKLSAgICAgICAgZXZlbnRD
b2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC5kZWx0YVkoKTsKLSAgICB9Ci0KLSAgICBkZWx0
YVggKz0gZXZlbnRDb2FsZXNjZWREZWx0YVg7Ci0gICAgZGVsdGFZICs9IGV2ZW50Q29hbGVzY2Vk
RGVsdGFZOwotCi0gICAgLy8gU2xpZ2h0bHkgcHJlZmVyIHNjcm9sbGluZyB2ZXJ0aWNhbGx5IGJ5
IGFwcGx5aW5nIHRoZSA9IGNhc2UgdG8gZGVsdGFZCi0gICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0g
ZmFic2YoZGVsdGFYKSkKLSAgICAgICAgZGVsdGFYID0gMDsKLSAgICBlbHNlCi0gICAgICAgIGRl
bHRhWSA9IDA7Ci0KLSAgICBib29sIHNob3VsZFN0cmV0Y2ggPSBmYWxzZTsKLQotICAgIFBsYXRm
b3JtV2hlZWxFdmVudFBoYXNlIG1vbWVudHVtUGhhc2UgPSB3aGVlbEV2ZW50Lm1vbWVudHVtUGhh
c2UoKTsKLQotICAgIC8vIElmIHdlIGFyZSBzdGFydGluZyBtb21lbnR1bSBzY3JvbGxpbmcgdGhl
biBkbyBzb21lIHNldHVwLgotICAgIGlmICghbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYg
KG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbiB8fCBtb21lbnR1
bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQ2hhbmdlZCkpCi0gICAgICAgIG1fbW9t
ZW50dW1TY3JvbGxJblByb2dyZXNzID0gdHJ1ZTsKLQotICAgIENGVGltZUludGVydmFsIHRpbWVE
ZWx0YSA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVz
dGFtcDsKLSAgICBpZiAobV9pblNjcm9sbEdlc3R1cmUgfHwgbV9tb21lbnR1bVNjcm9sbEluUHJv
Z3Jlc3MpIHsKLSAgICAgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYmIHRp
bWVEZWx0YSA+IDAgJiYgdGltZURlbHRhIDwgc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCkg
ewotICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldFdpZHRoKGV2ZW50Q29hbGVzY2Vk
RGVsdGFYIC8gKGZsb2F0KXRpbWVEZWx0YSk7Ci0gICAgICAgICAgICBtX21vbWVudHVtVmVsb2Np
dHkuc2V0SGVpZ2h0KGV2ZW50Q29hbGVzY2VkRGVsdGFZIC8gKGZsb2F0KXRpbWVEZWx0YSk7Ci0g
ICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGlt
ZXN0YW1wKCk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNj
cm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7Ci0gICAgICAgICAgICBtX21v
bWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLSAgICAgICAgfQotCi0gICAgICAgIGlmIChp
c1ZlcnRpY2FsbHlTdHJldGNoZWQpIHsKLSAgICAgICAgICAgIGlmICghaXNIb3Jpem9udGFsbHlT
dHJldGNoZWQgJiYgbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgs
IDApKSkgewotICAgICAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgdmVydGlj
YWwuCi0gICAgICAgICAgICAgICAgaWYgKGRlbHRhWSAmJiAoZmFic2YoZGVsdGFYIC8gZGVsdGFZ
KSA8IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKLSAgICAgICAgICAgICAg
ICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVgp
IDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgewotICAgICAg
ICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Nj
cm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgICAgICAgICBkZWx0YVgg
PSAwOwotICAgICAgICAgICAgICAgIH0gZWxzZQotICAgICAgICAgICAgICAgICAgICBtX292ZXJm
bG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBk
ZWx0YVgpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgaWYgKGlzSG9yaXpvbnRhbGx5
U3RyZXRjaGVkKSB7Ci0gICAgICAgICAgICAvLyBTdHJldGNoaW5nIG9ubHkgaW4gdGhlIGhvcml6
b250YWwuCi0gICAgICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0
U2l6ZSgwLCBkZWx0YVkpKSkgewotICAgICAgICAgICAgICAgIGlmIChkZWx0YVggJiYgKGZhYnNm
KGRlbHRhWSAvIGRlbHRhWCkgPCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbykp
Ci0gICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7Ci0gICAgICAgICAgICAgICAgZWxzZSBp
ZiAoZmFic2YoZGVsdGFZKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0
cmV0Y2gpIHsKLSAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldEhl
aWdodChtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBkZWx0YVkpOwotICAgICAgICAg
ICAgICAgICAgICBkZWx0YVkgPSAwOwotICAgICAgICAgICAgICAgIH0gZWxzZQotICAgICAgICAg
ICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3Jv
bGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxz
ZSB7Ci0gICAgICAgICAgICAvLyBOb3Qgc3RyZXRjaGluZyBhdCBhbGwgeWV0LgotICAgICAgICAg
ICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCBkZWx0
YVkpKSkgewotICAgICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0YVkpID49IGZhYnNmKGRlbHRh
WCkpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5k
TWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRh
LndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsK
LSAgICAgICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBtX292
ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkg
KyBkZWx0YVgpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBzaG91bGRTdHJl
dGNoID0gdHJ1ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChk
ZWx0YVggfHwgZGVsdGFZKSB7Ci0gICAgICAgIGlmICghKHNob3VsZFN0cmV0Y2ggfHwgaXNWZXJ0
aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSkgewotICAgICAgICAg
ICAgaWYgKGRlbHRhWSkgewotICAgICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11
bHRpcGxpZXIoKTsKLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnko
RmxvYXRTaXplKDAsIGRlbHRhWSkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKGRl
bHRhWCkgewotICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIo
KTsKLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXpl
KGRlbHRhWCwgMCkpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgewotICAgICAgICAg
ICAgaWYgKCFtX2NsaWVudC0+YWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkp
IHsKLSAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAgIGV2ZW50Q29h
bGVzY2VkRGVsdGFYID0gMDsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFYICYmICFpc0hv
cml6b250YWxseVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0
U2l6ZShkZWx0YVgsIDApKSkgewotICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVl
bE11bHRpcGxpZXIoKTsKLQotICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3Jv
bGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YVgsIDApKTsK
LSAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBpZiAoIW1fY2xpZW50LT5hbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsK
LSAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOwotICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVz
Y2VkRGVsdGFZID0gMDsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFZICYmICFpc1ZlcnRp
Y2FsbHlTdHJldGNoZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUo
MCwgZGVsdGFZKSkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVkgKj0gc2Nyb2xsV2hlZWxNdWx0
aXBsaWVyKCk7Ci0KLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlX
aXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoMCwgZGVsdGFZKSk7Ci0gICAg
ICAgICAgICAgICAgZGVsdGFZID0gMDsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgSW50
U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLQotICAgICAg
ICAgICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7Ci0gICAgICAgICAgICAgICAg
aWYgKChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGV2ZW50Q29hbGVzY2Vk
RGVsdGFYLCBldmVudENvYWxlc2NlZERlbHRhWSkpIHx8IChmYWJzZihldmVudENvYWxlc2NlZERl
bHRhWCkgKyBmYWJzZihldmVudENvYWxlc2NlZERlbHRhWSkgPD0gMCkpICYmIG1fbGFzdE1vbWVu
dHVtU2Nyb2xsVGltZXN0YW1wKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1faWdub3JlTW9tZW50
dW1TY3JvbGxzID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICAgICAgbV9tb21lbnR1bVNjcm9sbElu
UHJvZ3Jlc3MgPSBmYWxzZTsKLSAgICAgICAgICAgICAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsK
LSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIG1fc3RyZXRj
aFNjcm9sbEZvcmNlLnNldFdpZHRoKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkgKyBkZWx0
YVgpOwotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KG1fc3RyZXRj
aFNjcm9sbEZvcmNlLmhlaWdodCgpICsgZGVsdGFZKTsKLQotICAgICAgICAgICAgRmxvYXRTaXpl
IGRhbXBlZERlbHRhKGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hT
Y3JvbGxGb3JjZS53aWR0aCgpKSksIGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YSht
X3N0cmV0Y2hTY3JvbGxGb3JjZS5oZWlnaHQoKSkpKTsKLQotICAgICAgICAgICAgbV9jbGllbnQt
PmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoZGFtcGVkRGVs
dGEgLSBzdHJldGNoQW1vdW50KTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChtX21vbWVu
dHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiBtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVu
dFBoYXNlRW5kZWQpIHsKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxz
ZTsKLSAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAgICAgICAgbV9s
YXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAwOwotICAgIH0KLQotICAgIHJldHVybiB0cnVl
OwotfQotCi1zdGF0aWMgaW5saW5lIGZsb2F0IHJvdW5kVG93YXJkWmVybyhmbG9hdCBudW0pCi17
Ci0gICAgcmV0dXJuIG51bSA+IDAgPyBjZWlsZihudW0gLSAwLjVmKSA6IGZsb29yZihudW0gKyAw
LjVmKTsKLX0KLQotc3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRa
ZXJvKGZsb2F0IG51bSkKLXsKLSAgICBmbG9hdCByb3VuZGVkTnVtID0gcm91bmRmKG51bSk7Ci0g
ICAgaWYgKGZhYnMobnVtIC0gcm91bmRlZE51bSkgPCAwLjEyNSkKLSAgICAgICAgbnVtID0gcm91
bmRlZE51bTsKLQotICAgIHJldHVybiByb3VuZFRvd2FyZFplcm8obnVtKTsKLX0KLQotdm9pZCBT
Y3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKQotewotICAgIGlmICgh
bV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgfHwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMpIHsK
LSAgICAgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxT
aW5jZVJlZmVyZW5jZURhdGVdIC0gbV9zdGFydFRpbWU7Ci0KLSAgICAgICAgaWYgKG1fc3RhcnRT
dHJldGNoID09IEZsb2F0U2l6ZSgpKSB7Ci0gICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IG1f
Y2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0gICAgICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2gg
PT0gRmxvYXRTaXplKCkpIHsKLSAgICAgICAgICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1l
cigpOwotCi0gICAgICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2UgPSBGbG9hdFNpemUo
KTsKLSAgICAgICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7Ci0gICAgICAgICAgICAgICAgbV9z
dGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAgICAgICBtX29yaWdPcmlnaW4g
PSBGbG9hdFBvaW50KCk7Ci0gICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNp
emUoKTsKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAg
ICAgIG1fb3JpZ09yaWdpbiA9IG1fY2xpZW50LT5hYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgLSBt
X3N0YXJ0U3RyZXRjaDsKLSAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gbV9tb21lbnR1bVZl
bG9jaXR5OwotCi0gICAgICAgICAgICAvLyBKdXN0IGxpa2Ugbm9ybWFsIHNjcm9sbGluZywgcHJl
ZmVyIHZlcnRpY2FsIHJ1YmJlcmJhbmRpbmcKLSAgICAgICAgICAgIGlmIChmYWJzZihtX29yaWdW
ZWxvY2l0eS5oZWlnaHQoKSkgPj0gZmFic2YobV9vcmlnVmVsb2NpdHkud2lkdGgoKSkpCi0gICAg
ICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7Ci0KLSAgICAgICAgICAgIC8v
IERvbid0IHJ1YmJlci1iYW5kIGhvcml6b250YWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0byBz
Y3JvbGwgaG9yaXpvbnRhbGx5Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxI
b3Jpem9udGFsbHkoKSkKLSAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgw
KTsKLQotICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQgdmVydGljYWxseSBpZiBpdCdz
IG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgdmVydGljYWxseQotICAgICAgICAgICAgaWYgKCFtX2Ns
aWVudC0+Y2FuU2Nyb2xsVmVydGljYWxseSgpKQotICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9j
aXR5LnNldEhlaWdodCgwKTsKLSAgICAgICAgfQotCi0gICAgICAgIEZsb2F0UG9pbnQgZGVsdGEo
cm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEobV9z
dGFydFN0cmV0Y2gud2lkdGgoKSwgLW1fb3JpZ1ZlbG9jaXR5LndpZHRoKCksIChmbG9hdCl0aW1l
RGVsdGEpKSwKLSAgICAgICAgICAgIHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZWxhc3Rp
Y0RlbHRhRm9yVGltZURlbHRhKG1fc3RhcnRTdHJldGNoLmhlaWdodCgpLCAtbV9vcmlnVmVsb2Np
dHkuaGVpZ2h0KCksIChmbG9hdCl0aW1lRGVsdGEpKSk7Ci0KLSAgICAgICAgaWYgKGZhYnMoZGVs
dGEueCgpKSA+PSAxIHx8IGZhYnMoZGVsdGEueSgpKSA+PSAxKSB7Ci0gICAgICAgICAgICBtX2Ns
aWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9h
dFNpemUoZGVsdGEueCgpLCBkZWx0YS55KCkpIC0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKSk7
Ci0KLSAgICAgICAgICAgIEZsb2F0U2l6ZSBuZXdTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hB
bW91bnQoKTsKLQotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVi
b3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2gud2lkdGgoKSkpOwotICAgICAgICAg
ICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91bmREZWx0YUZvckVsYXN0aWNE
ZWx0YShuZXdTdHJldGNoLmhlaWdodCgpKSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICBtX2NsaWVudC0+YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCk7Ci0K
LSAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0gICAgICAgICAgICBtX3N0
cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgbV9zdGFydFRpbWUg
PSAwOwotICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICAgICAg
ICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKLSAgICAgICAgICAgIG1fb3JpZ1ZlbG9j
aXR5ID0gRmxvYXRTaXplKCk7Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgICBtX3N0
YXJ0VGltZSA9IFtOU0RhdGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKLSAgICAg
ICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICB9Ci19Ci0KLWJvb2wgU2Nyb2xs
Q29udHJvbGxlcjo6aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0Ci17Ci0gICAgaWYgKCFt
X2luU2Nyb2xsR2VzdHVyZSAmJiAhbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgIW1fc25h
cFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBy
ZXR1cm4gIW1fY2xpZW50LT5zdHJldGNoQW1vdW50KCkuaXNaZXJvKCk7Ci19Ci0KLXZvaWQgU2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQotewotICAgIG1fY2xpZW50
LT5zdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwotICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklz
QWN0aXZlID0gZmFsc2U7Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJh
bmQoKQotewotICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IHN5c3RlbVVwdGltZSgpIC0g
bV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Ci0gICAgaWYgKG1fbGFzdE1vbWVudHVtU2Ny
b2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+PSBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0
KQotICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLQotICAgIG1faW5T
Y3JvbGxHZXN0dXJlID0gZmFsc2U7Ci0KLSAgICBpZiAobV9zbmFwUnViYmVyYmFuZFRpbWVySXNB
Y3RpdmUpCi0gICAgICAgIHJldHVybjsKLQotICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0aW1l
SW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOwotICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRT
aXplKCk7Ci0gICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOwotICAgIG1fb3JpZ1ZlbG9j
aXR5ID0gRmxvYXRTaXplKCk7Ci0KLSAgICBtX2NsaWVudC0+c3RhcnRTbmFwUnViYmVyYmFuZFRp
bWVyKCk7Ci0gICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSB0cnVlOwotfQotCi1i
b29sIFNjcm9sbENvbnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rp
b24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQotewotICAgIGlmICh3aGVl
bEV2ZW50LmRlbHRhWCgpID4gMCkKLSAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5zaG91bGRSdWJi
ZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsTGVmdCk7Ci0gICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFY
KCkgPCAwKQotICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVj
dGlvbihTY3JvbGxSaWdodCk7Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247698</attachid>
            <date>2015-03-02 14:13:14 -0800</date>
            <delta_ts>2015-03-03 10:45:00 -0800</delta_ts>
            <desc>Patch v8 (one more #ifdef needed).</desc>
            <filename>bug-142102-20150302141257.patch</filename>
            <type>text/plain</type>
            <size>83598</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDg5NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDc3IEBACisyMDE1LTAzLTAyICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorICAg
ICAgICAKKyAgICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxp
bmcgY2xhc3NlczoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1
bkxvb3A6OlRpbWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgor
ICAgICAgICAgICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQ
b2ludCBhbmQgUnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENv
bnRyb2xsZXIgZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNo
YXJpbmcgd2l0aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9y
e01hY30gLT4gU2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNl
dEluQXhpcyAtPiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0
ZVNjcm9sbEluQXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdw
bGF0Zm9ybS9jb2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1h
a2Ugc3VyZSB0aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9s
bAorICAgICAgICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFu
ZGxlZCIgY2FzZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50
SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Ny
b2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0
aW1lciBhbmQgc29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxD
b250cm9sbGVyIGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3Jv
bGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRv
IGNsZWFuIHVwIHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyk6IEFkZCB0ZW1w
b3Jhcnkgc3R1YiBuZWVkZWQKKyAgICAgICAgdW50aWwgQnVnIDE0MTk3MyBpcyBjb21wbGV0ZWQu
KS4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6
OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6U2Nyb2xsQW5pbWF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnBy
b2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEp1c3QgY2FsbCB0aGUgU2Nyb2xsQ29udHJv
bGxlciBtZXRob2QuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnVwZGF0
ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyk6IFJlbmFtZWQgZnJvbSBzY3JvbGxPZmZz
ZXRJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0
SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1l
ZGlhdGVTY3JvbGxPbkF4aXMpOiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0
b3BTY3JvbGxTbmFwVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5p
bWF0b3I6Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk6
IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmg6IENvcGllZCBmcm9tIHBsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmguCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvU2Nyb2xs
Q29udHJvbGxlci5tbTogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIu
bW0uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVy
KTogVXBkYXRlIHRvIGluaXRpYWxpemUgbmV3IHRpbWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQpOiBVcGRhdGUgdG8gaGFuZGxlIFNjcm9s
bCBTbmFwIFBvaW50IGV2ZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBNYW5hZ2UgYW5pbWF0aW9u
IHRpbWVycyBsb2NhbGx5LCBkbyBub3QKKyAgICAgICAgcmVxdWlyZSBjbGllbnQgdG8gbWFpbnRh
aW4gdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJl
ckJhbmQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCk6IEFkZGVkLiAoTW92ZWQgZnJvbSBTY3JvbGxBbmlt
YXRvck1hYykKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9s
bEFuaW1hdG9yc0FuZFRpbWVycyk6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6
OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTY3JvbGxT
bmFwVGltZXIpOiBEaXR0by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIpOiAg
RGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xs
ZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5o
OiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IubW06IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1hYy5oOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9T
Y3JvbGxBbmltYXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFj
OjpTY3JvbGxBbmltYXRvck1hYyk6IFJlbW92ZSB1bnVzZWQgUnViYmVyYmFuZCB0aW1lcnMgKG5v
dyB0aGF0IHRoaXMgaXMKKyAgICAgICAgY29udHJvbGxlZCBpbiB0aGUgU2Nyb2xsQ29udHJvbGxl
cikKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6
OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAg
ICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLmg6IFJlbW92ZWQuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW06IFJlbW92ZWQuCisKIDIwMTUtMDMt
MDEgIFJvZ2VyIEZvbmcgIDxyb2dlcl9mb25nQGFwcGxlLmNvbT4KIAogICAgICAgICBVcGRhdGUg
aW5saW5lIG1lZGlhIGVsZW1lbnQgY29udHJvbHMgYXBwZWFyYW5jZSBQYXJ0IDEuCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShy
ZXZpc2lvbiAxODA4OTQpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTc4Niw4ICs3ODYsNiBAQAogCQkxQTkyN0ZE
MzE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50aW1lLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTkyN0ZEMDE0MTZBMTVCMDAzQTgzQzggLyogbnBydW50
aW1lLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
MUE5MjdGRDQxNDE2QTE1QjAwM0E4M0M4IC8qIG5wdHlwZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOTI3RkQxMTQxNkExNUIwMDNBODNDOCAvKiBu
cHR5cGVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsK
IAkJMUE5ODk1NkIwQUE3OEY4MDAwNUVGNUVGIC8qIFVSTENGLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOTg5NTZBMEFBNzhGODAwMDVFRjVFRiAv
KiBVUkxDRi5jcHAgKi87IH07Ci0JCTFBQTg0RjA0MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxD
b250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi87IH07
Ci0JCTFBQTg0RjA1MTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUE4NEYwMzE0M0JBN0JE
MDA1MUQxNTMgLyogU2Nyb2xsQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFBQTg3OTkwMTFDQkU4NDYwMDNDNjY0RiAvKiBQbHVn
aW5TdHJhdGVneS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMUFBODc5OEYxMUNCRTg0NjAwM0M2NjRGIC8qIFBsdWdpblN0cmF0ZWd5LmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUFBQUREQTMxNERCNDA5
RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQUREQTExNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGlu
Z1RyZWUuY3BwICovOyB9OwogCQkxQUFBRERBNDE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5n
VHJlZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFB
QUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMjQ0NSw2ICsyNDQzLDggQEAKIAkJ
N0E3NEVDQkQxMDE4MzlEQTAwQkY5MzlFIC8qIEpTSW5zcGVjdG9yRnJvbnRlbmRIb3N0Q3VzdG9t
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBNzRF
Q0JDMTAxODM5REEwMEJGOTM5RSAvKiBKU0luc3BlY3RvckZyb250ZW5kSG9zdEN1c3RvbS5jcHAg
Ki87IH07CiAJCTdBOTM4Njg1MThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBOTM4NjgyMThEQ0Mx
NDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmNwcCAqLzsgfTsKIAkJN0E5Mzg2ODYxOERDQzE0NTAw
QjgyNjNEIC8qIFZUVFNjYW5uZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDdBOTM4NjgzMThEQ0MxNDUwMEI4MjYzRCAvKiBWVFRTY2FubmVyLmggKi87
IH07CisJCTdBOUFERkYzMUFBMTE2MzgwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUZGQTQxMTFBQTEw
MzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTdBOUFERkY0MUFBMTE2M0IwMEQyNzMzQyAvKiBT
Y3JvbGxDb250cm9sbGVyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gN0FGRkE0MTIxQUExMDM5RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0g
Ki87IH07CiAJCTdBQTNBNjk5MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlQ29udHJvbGxlci5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTY5NTE5
NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRyb2xsZXIuY3BwICovOyB9OwogCQk3QUEzQTY5QTE5
NEE2NEU3MDAxQ0JEMjQgLyogVGlsZUNvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDdBQTNBNjk2MTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxl
Q29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTdBQTNBNjlCMTk0QTY0RTcwMDFDQkQyNCAvKiBUaWxlR3JpZC5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3QUEzQTY5NzE5NEE2NEU3MDAx
Q0JEMjQgLyogVGlsZUdyaWQuY3BwICovOyB9OwpAQCAtNzgwOSw4ICs3ODA5LDYgQEAKIAkJMUE5
MjdGRDAxNDE2QTE1QjAwM0E4M0M4IC8qIG5wcnVudGltZS5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBucHJ1bnRpbWUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUE5MjdGRDExNDE2QTE1QjAwM0E4M0M4IC8qIG5wdHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gbnB0eXBlcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkx
QTk4OTU2QTBBQTc4RjgwMDA1RUY1RUYgLyogVVJMQ0YuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuY3BwLmNwcDsgcGF0aCA9IFVSTENGLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBTY3JvbGxDb250cm9sbGVyLm1tOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyog
U2Nyb2xsQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTY3Jv
bGxDb250cm9sbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQTg3OThGMTFD
QkU4NDYwMDNDNjY0RiAvKiBQbHVnaW5TdHJhdGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQbHVnaW5TdHJhdGVneS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQkxQUFBRERBMTE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTY3JvbGxpbmdUcmVlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGlu
Z1RyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtOTY2Nyw2ICs5NjY1LDggQEAKIAkJN0FG
OUIyMDkxOENGQjVGMjAwQzY0QkVGIC8qIEpTVlRUUmVnaW9uLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTVlRUUmVnaW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTdBRjlCMjBBMThDRkI1RjMwMEM2NEJFRiAvKiBKU1ZUVFJlZ2lvbkxpc3QuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNWVFRSZWdpb25MaXN0LmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0FGOUIyMEIxOENGQjVGMzAwQzY0QkVGIC8qIEpT
VlRUUmVnaW9uTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1ZUVFJl
Z2lvbkxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJN0FGRkE0MTExQUExMDM5
RDAwRjAxMjVCIC8qIFNjcm9sbENvbnRyb2xsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU2Nyb2xsQ29udHJvbGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk3QUZGQTQxMjFBQTEwMzlEMDBGMDEyNUIgLyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFNjcm9sbENvbnRyb2xsZXIubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdDMkJERDNCMTdDN0Y5OEIwMDM4RkYxNSAvKiBK
U0RPTUdsb2JhbE9iamVjdFRhc2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gSlNET01HbG9iYWxPYmplY3RUYXNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJN0MyQkREM0MxN0M3Rjk4QjAwMzhGRjE1IC8qIEpTRE9NR2xvYmFsT2JqZWN0VGFzay5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0RPTUdsb2JhbE9iamVjdFRhc2su
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJN0MzQjc5NkYxOTA4NzU3QjAwQjQ3QTJE
IC8qIFVzZXJNZXNzYWdlSGFuZGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBVc2VyTWVzc2FnZUhhbmRsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtMTY1ODcsOCArMTY1ODcsNiBAQAogCQkJCUJDNTExNTZEMTJCMTc0OUMwMEM5Njc1NCAv
KiBTY3JvbGxBbmltYXRvck1hYy5tbSAqLywKIAkJCQlCQzhCODUzQzBFN0M3RjExMDBBQjY5ODQg
LyogU2Nyb2xsYmFyVGhlbWVNYWMuaCAqLywKIAkJCQlCQ0VGODY5RTBFODQ0RTlEMDBBODVDRDUg
LyogU2Nyb2xsYmFyVGhlbWVNYWMubW0gKi8sCi0JCQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUz
IC8qIFNjcm9sbENvbnRyb2xsZXIuaCAqLywKLQkJCQkxQUE4NEYwMjE0M0JBN0JEMDA1MUQxNTMg
LyogU2Nyb2xsQ29udHJvbGxlci5tbSAqLywKIAkJCQk5MzUzNjc2QTA5QUVEODhCMDBEMzVDRDYg
LyogU2Nyb2xsVmlld01hYy5tbSAqLywKIAkJCQkwNzdBRjE0MTE4RjRCMUJCMDAwMUVENjEgLyog
U2VyaWFsaXplZFBsYXRmb3JtUmVwcmVzZW50YXRpb25NYWMuaCAqLywKIAkJCQkwNzdBRjE0MjE4
RjRCMUJCMDAwMUVENjEgLyogU2VyaWFsaXplZFBsYXRmb3JtUmVwcmVzZW50YXRpb25NYWMubW0g
Ki8sCkBAIC0xODY5OCw2ICsxODY5Niw4IEBACiAJCQkJMUEwNDA5RjIxQTQzNjc1QzAwOUU0N0Yz
IC8qIE1hY2hTZW5kUmlnaHQuY3BwICovLAogCQkJCTFBMDQwOURCMUE0MzYwQjUwMDlFNDdGMyAv
KiBNYWNoU2VuZFJpZ2h0LmggKi8sCiAJCQkJQURCNkIyOTcxOEZCOTAyNDAwODE5NjNFIC8qIE1l
bW9yeVByZXNzdXJlSGFuZGxlckNvY29hLm1tICovLAorCQkJCTdBRkZBNDExMUFBMTAzOUQwMEYw
MTI1QiAvKiBTY3JvbGxDb250cm9sbGVyLmggKi8sCisJCQkJN0FGRkE0MTIxQUExMDM5RDAwRjAx
MjVCIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gKi8sCiAJCQkJNUQ1OTc1QjExOTYzNUYxMTAwRDAw
ODc4IC8qIFN5c3RlbVZlcnNpb24uaCAqLywKIAkJCQk1RDU5NzVCMjE5NjM1RjExMDBEMDA4Nzgg
LyogU3lzdGVtVmVyc2lvbi5tbSAqLywKIAkJCQk3Q0M1NjRCOTE4QkFDNzIwMDAxQjk2NTIgLyog
VGVsZXBob25lTnVtYmVyRGV0ZWN0b3JDb2NvYS5jcHAgKi8sCkBAIC0yNDY0OCw2ICsyNDY0OCw3
IEBACiAJCQkJQThFQTdDQjUwQTE5MkI5QzAwQThFRjVGIC8qIEhUTUxQYXJhZ3JhcGhFbGVtZW50
LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODcxRDQ1ODBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBh
cmFtRWxlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTNFMkEzMDcxMjNFOURDMDAwOUZFMTJB
IC8qIEhUTUxQYXJzZXJJZGlvbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTdBOUFERkYzMUFBMTE2
MzgwMEQyNzMzQyAvKiBTY3JvbGxDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk5NzNG
NDE4QTE2OUI5NUZGMDAwNkJGNjAgLyogSFRNTFBhcnNlck9wdGlvbnMuaCBpbiBIZWFkZXJzICov
LAogCQkJCTk3N0IzODcxMTIyODgzRTkwMEI4MUZGOCAvKiBIVE1MUGFyc2VyU2NoZWR1bGVyLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlBODcxRDQ1NjBBMTI3Q0JDMDBCMTJBNjggLyogSFRNTFBsdWdJ
bkVsZW1lbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjYxMDEsNyArMjYxMDIsNiBAQAogCQkJCUJD
OEI4NTNFMEU3QzdGMTEwMEFCNjk4NCAvKiBTY3JvbGxiYXJUaGVtZU1hYy5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMEZFNzE0MDYxNDIxNzBCODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9jay5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJNUQ5MjVCNjgwRjY0RDRERDAwQjg0N0YwIC8qIFNjcm9sbEJl
aGF2aW9yLmggaW4gSGVhZGVycyAqLywKLQkJCQkxQUE4NEYwNTE0M0JBN0JEMDA1MUQxNTMgLyog
U2Nyb2xsQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEY2MDVBRUQxNUY5NDg0ODAw
NERGMEMwIC8qIFNjcm9sbGluZ0NvbnN0cmFpbnRzLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQUY2
MkVFODE0REEyMkE3MDA0MTU1NkMgLyogU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTBGQzRFNDBEMTg3RjgyRTEwMDQ1ODgyQyAvKiBTY3JvbGxpbmdDb29yZGluYXRv
cklPUy5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNzQ5Niw2ICsyNzQ5Niw3IEBACiAJCQkJRTE5QUMz
RjQxODI0REM3OTAwMzQ5NDI2IC8qIENyeXB0b0FsZ29yaXRobVNIQTUxMi5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlFMUZFMTM2NDE4MzQzNTExMDA4OTJGMTMgLyogQ3J5cHRvRGlnZXN0TWFjLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCUUxNTdBOEU0MTgxNzNBM0EwMDlGODIxRCAvKiBDcnlwdG9L
ZXkuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJN0E5QURGRjQxQUExMTYzQjAwRDI3MzNDIC8qIFNj
cm9sbENvbnRyb2xsZXIubW0gaW4gU291cmNlcyAqLywKIAkJCQlFMTI1Rjg0RDE4MjQyODlEMDBE
ODRDRDkgLyogQ3J5cHRvS2V5QUVTLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUUxMjVGODYzMTgy
QzMwM0EwMEQ4NENEOSAvKiBDcnlwdG9LZXlEYXRhT2N0ZXRTZXF1ZW5jZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlFMUMyNjZERTE4MzE5RjMxMDAzRjhCMzMgLyogQ3J5cHRvS2V5RGF0YVJTQUNv
bXBvbmVudHMuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yOTUwOCw3ICsyOTUwOSw2IEBACiAJCQkJ
QkNFRjg2OUYwRTg0NEU5RDAwQTg1Q0Q1IC8qIFNjcm9sbGJhclRoZW1lTWFjLm1tIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMEZFNzE0MDUxNDIxNzBCODAwREIzM0JBIC8qIFNjcm9sbGJhclRoZW1lTW9j
ay5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1RDkyNUI2NzBGNjRENEREMDBCODQ3RjAgLyogU2Ny
b2xsQmVoYXZpb3IuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMUFBODRGMDQxNDNCQTdCRDAwNTFE
MTUzIC8qIFNjcm9sbENvbnRyb2xsZXIubW0gaW4gU291cmNlcyAqLywKIAkJCQkwRjYwNUFFQzE1
Rjk0ODQ4MDA0REYwQzAgLyogU2Nyb2xsaW5nQ29uc3RyYWludHMuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJMUFGNjJFRTcxNERBMjJBNzAwNDE1NTZDIC8qIFNjcm9sbGluZ0Nvb3JkaW5hdG9yLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTBGQzRFNDBFMTg3RjgyRTEwMDQ1ODgyQyAvKiBTY3JvbGxp
bmdDb29yZGluYXRvcklPUy5tbSBpbiBTb3VyY2VzICovLApJbmRleDogU291cmNlL1dlYkNvcmUv
cGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQkocmV2aXNpb24gMTgwODk0KQorKysgU291cmNl
L1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05
NjEsNiArOTYxLDEyIEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpwbGF0Zm9ybUNvbXBsZXRlV2hlZWwK
ICAgICAKICAgICBib29sIGRpZEhhbmRsZUV2ZW50ID0gdmlldyA/IHZpZXctPndoZWVsRXZlbnQo
d2hlZWxFdmVudCkgOiBmYWxzZTsKICAgICBtX2lzSGFuZGxpbmdXaGVlbEV2ZW50ID0gZmFsc2U7
CisgICAgCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyAgICBpZiAoc2Nyb2xsYWJsZUFy
ZWEpCisgICAgICAgIHBsYXRmb3JtTm90aWZ5U25hcElmTmVjZXNzYXJ5KHdoZWVsRXZlbnQsICpz
Y3JvbGxhYmxlQXJlYSk7CisjZW5kaWYKKwogICAgIHJldHVybiBkaWRIYW5kbGVFdmVudDsKIH0K
IApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVG
cmFtZVNjcm9sbGluZ05vZGVNYWMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdl
L3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oCShyZXZp
c2lvbiAxODA4OTQpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oCSh3b3JraW5nIGNvcHkpCkBAIC02MSw4ICs2
MSw2IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0
aW9uKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0
IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxC
eVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRl
OwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsK
LSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKICAg
ICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkg
b3ZlcnJpZGU7CiAKICAgICB2aXJ0dWFsIEZsb2F0UG9pbnQgc2Nyb2xsUG9zaXRpb24oKSBjb25z
dCBvdmVycmlkZTsKQEAgLTgwLDEwICs3OCwxNCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBpc0Fs
cmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2VzdHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQm
LCBTY3JvbGxFdmVudEF4aXMpOwogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExB
VEZPUk0oTUFDKQorICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Ny
b2xsRXZlbnRBeGlzKTsKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNj
cm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEpOworI2VuZGlmCisKICAgICB2b2lkIGxvZ0V4cG9z
ZWRVbmZpbGxlZEFyZWEoKTsKIAogICAgIFNjcm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9s
bGVyOwotICAgIFJldGFpblB0cjxDRlJ1bkxvb3BUaW1lclJlZj4gbV9zbmFwUnViYmVyYmFuZFRp
bWVyOwogCiAgICAgUmV0YWluUHRyPENBTGF5ZXI+IG1fc2Nyb2xsTGF5ZXI7CiAgICAgUmV0YWlu
UHRyPENBTGF5ZXI+IG1fc2Nyb2xsZWRDb250ZW50c0xheWVyOwpJbmRleDogU291cmNlL1dlYkNv
cmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9s
bGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW0JKHJldmlzaW9uIDE4MDg5NCkKKysrIFNv
dXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxp
bmdOb2RlTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC02Niw4ICs2Niw2IEBAIFNjcm9sbGluZ1Ry
ZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OlNjcm8KIAogU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xs
aW5nTm9kZU1hYzo6flNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMoKQogewotICAg
IGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXIpCi0gICAgICAgIENGUnVuTG9vcFRpbWVySW52YWxp
ZGF0ZShtX3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCkpOwogfQogCiB2b2lkIFNjcm9sbGluZ1Ry
ZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnVwZGF0ZUJlZm9yZUNoaWxkcmVuKGNvbnN0IFNjcm9s
bGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQpAQCAtMjk2LDMyICsyOTQsNiBAQCB2b2lkIFNjcm9s
bGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6CiAgICAgc2Nyb2xsQnlXaXRob3V0Q29udGVu
dEVkZ2VDb25zdHJhaW50cyhvZmZzZXQpOwogfQogCi12b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNj
cm9sbGluZ05vZGVNYWM6OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgQVNTRVJU
KCFtX3NuYXBSdWJiZXJiYW5kVGltZXIpOwotCi0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZXJJbnRl
cnZhbCA9IDEuMCAvIDYwLjA7Ci0KLSAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXIgPSBhZG9wdENG
KENGUnVuTG9vcFRpbWVyQ3JlYXRlV2l0aEhhbmRsZXIoa0NGQWxsb2NhdG9yRGVmYXVsdCwgQ0ZB
YnNvbHV0ZVRpbWVHZXRDdXJyZW50KCkgKyB0aW1lckludGVydmFsLCB0aW1lckludGVydmFsLCAw
LCAwLCBeKENGUnVuTG9vcFRpbWVyUmVmKSB7Ci0gICAgICAgIG1fc2Nyb2xsQ29udHJvbGxlci5z
bmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKLSAgICB9KSk7Ci0gICAgQ0ZSdW5Mb29wQWRkVGlt
ZXIoQ0ZSdW5Mb29wR2V0Q3VycmVudCgpLCBtX3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCksIGtD
RlJ1bkxvb3BEZWZhdWx0TW9kZSk7Ci19Ci0KLXZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xs
aW5nTm9kZU1hYzo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQotewotICAgIGlmICghbV9zbmFw
UnViYmVyYmFuZFRpbWVyKQotICAgICAgICByZXR1cm47Ci0KLSAgICBzY3JvbGxpbmdUcmVlKCku
c2V0TWFpbkZyYW1lSXNSdWJiZXJCYW5kaW5nKGZhbHNlKTsKLQotICAgIC8vIFNpbmNlIHRoZSBy
dWJiZXJiYW5kIHRpbWVyIGhhcyBzdG9wcGVkLCB0b3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJh
bmQgY2FuIGJlIHN5bmNocm9uaXplZCB3aXRoIHRvdGFsQ29udGVudHNTaXplLgotICAgIHNldFRv
dGFsQ29udGVudHNTaXplRm9yUnViYmVyQmFuZCh0b3RhbENvbnRlbnRzU2l6ZSgpKTsKLQotICAg
IENGUnVuTG9vcFRpbWVySW52YWxpZGF0ZShtX3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCkpOwot
ICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lciA9IG51bGxwdHI7Ci19Ci0KIHZvaWQgU2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lm
TmVjZXNzYXJ5KCkKIHsKICAgICBGbG9hdFBvaW50IGN1cnJlbnRTY3JvbGxQb3NpdGlvbiA9IGFi
c29sdXRlU2Nyb2xsUG9zaXRpb24oKTsKQEAgLTU0MCw2ICs1MTIsMTkgQEAgdm9pZCBsb2dXaGVl
bEV2ZW50SGFuZGxlckNvdW50Q2hhbmdlZCh1bgogICAgIFdURkxvZ0Fsd2F5cygiU0NST0xMSU5H
OiBXaGVlbCBldmVudCBoYW5kbGVyIGNvdW50IGNoYW5nZWQuIFRpbWU6ICVmIENvdW50OiAldVxu
IiwgV1RGOjptb25vdG9uaWNhbGx5SW5jcmVhc2luZ1RpbWUoKSwgY291bnQpOwogfQogCisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorTGF5b3V0VW5pdCBTY3Jv
bGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xs
RXZlbnRBeGlzKQoreworICAgIC8vIFRlbXBvcmFyeSBzdHViIHVudGlsIGh0dHA6Ly93ZWJraXQu
b3JnL2IvMTQxOTczLgorICAgIHJldHVybiBMYXlvdXRVbml0KCk7Cit9CisKK3ZvaWQgU2Nyb2xs
aW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9s
bEV2ZW50QXhpcywgZmxvYXQpCit7CisgICAgLy8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDov
L3dlYmtpdC5vcmcvYi8xNDE5NzMuCit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQogCiAjZW5kaWYgLy8gRU5BQkxFKEFTWU5DX1NDUk9MTElORykgJiYgUExBVEZPUk0oTUFDKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkocmV2aXNp
b24gMTgwODk0KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC00OSw2ICs0OSw5IEBAIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxB
bmltYXRvcj4gU2Nyb2xsQW4KIAogU2Nyb2xsQW5pbWF0b3I6OlNjcm9sbEFuaW1hdG9yKFNjcm9s
bGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkKICAgICA6IG1fc2Nyb2xsYWJsZUFyZWEoc2Nyb2xs
YWJsZUFyZWEpCisjaWYgKEVOQUJMRShDU1NfU0NST0xMX1NOQVApIHx8IEVOQUJMRShSVUJCRVJf
QkFORElORykpICYmIFBMQVRGT1JNKE1BQykKKyAgICAsIG1fc2Nyb2xsQ29udHJvbGxlcih0aGlz
KQorI2VuZGlmCiAgICAgLCBtX2N1cnJlbnRQb3NYKDApCiAgICAgLCBtX2N1cnJlbnRQb3NZKDAp
CiB7CkBAIC04MSwyOCArODQsMTYgQEAgdm9pZCBTY3JvbGxBbmltYXRvcjo6c2Nyb2xsVG9PZmZz
ZXRXaXRobwogfQogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFD
KQotdm9pZCBTY3JvbGxBbmltYXRvcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNv
bnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKK2Jvb2wgU2Nyb2xsQW5pbWF0b3I6
OnByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQm
IHdoZWVsRXZlbnQpCiB7Ci0gICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCi0g
ICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hl
ZWxFdmVudCk7Ci0gICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKLSAgICAg
ICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVs
RXZlbnQpOworICAgIHJldHVybiBtX3Njcm9sbENvbnRyb2xsZXIucHJvY2Vzc1doZWVsRXZlbnRG
b3JTY3JvbGxTbmFwKHdoZWVsRXZlbnQpOwogfQogI2VuZGlmCiAKIGJvb2wgU2Nyb2xsQW5pbWF0
b3I6OmhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiBlKQogewogI2lm
IEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLSAgICBpZiAobV92ZXJ0
aWNhbFNjcm9sbFNuYXBBbmltYXRvcikgewotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFu
aW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KGUpOwotICAgICAgICBpZiAobV92ZXJ0aWNhbFNjcm9s
bFNuYXBBbmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVlbEV2ZW50KGUpKQotICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwotICAgIH0KLSAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1h
dG9yKSB7Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hl
ZWxFdmVudChlKTsKLSAgICAgICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+
c2hvdWxkT3ZlcnJpZGVXaGVlbEV2ZW50KGUpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwot
ICAgIH0KKyAgICBtX3Njcm9sbENvbnRyb2xsZXIucHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxT
bmFwKGUpOwogI2VuZGlmCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgLy8gRXZlbnRzIGluIHRo
ZSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZU1heUJlZ2luIHBoYXNlIGhhdmUgbm8gZGVsdGFzLCBh
bmQgdGhlcmVmb3JlIG5ldmVyIHBhc3NlcyB0aHJvdWdoIHRoZSBzY3JvbGwgaGFuZGxpbmcgbG9n
aWMgYmVsb3cuCkBAIC0xODMsMzAgKzE3NCwxNSBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjpub3Rp
ZnlQb3NpdGlvbkNoYW5nCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0o
TUFDKQogdm9pZCBTY3JvbGxBbmltYXRvcjo6dXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5kVGltZXJz
KCkKIHsKLSAgICAvLyBGSVhNRTogQ3VycmVudGx5LCBzY3JvbGwgc25hcCBhbmltYXRvcnMgYXJl
IHJlY3JlYXRlZCBldmVuIHRob3VnaCB0aGUgc25hcCBvZmZzZXRzIGFsb25lIGNhbiBiZSB1cGRh
dGVkLgotICAgIGlmIChtX3Njcm9sbGFibGVBcmVhLmhvcml6b250YWxTbmFwT2Zmc2V0cygpKSB7
Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlx
dWU8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywgbV9zY3JvbGxhYmxlQXJlYS5ob3Jpem9u
dGFsU25hcE9mZnNldHMoKSwgU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsKTsKLSAgICAgICAg
bV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRo
aXMsICZTY3JvbGxBbmltYXRvcjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTsKLSAg
ICB9IGVsc2UgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikgewotICAgICAgICBt
X2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxscHRyOwotICAgICAgICBtX2hvcml6
b250YWxTY3JvbGxTbmFwVGltZXIgPSBudWxscHRyOwotICAgIH0KLSAgICBpZiAobV9zY3JvbGxh
YmxlQXJlYS52ZXJ0aWNhbFNuYXBPZmZzZXRzKCkpIHsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9s
bFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4o
dGhpcywgbV9zY3JvbGxhYmxlQXJlYS52ZXJ0aWNhbFNuYXBPZmZzZXRzKCksIFNjcm9sbEV2ZW50
QXhpczo6VmVydGljYWwpOwotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyID0gc3Rk
OjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZTY3JvbGxBbmltYXRvcjo6dmVydGljYWxTY3Jv
bGxTbmFwVGltZXJGaXJlZCk7Ci0gICAgfSBlbHNlIGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFu
aW1hdG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxscHRy
OwotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyID0gbnVsbHB0cjsKLSAgICB9Cisg
ICAgbV9zY3JvbGxDb250cm9sbGVyLnVwZGF0ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyhtX3Nj
cm9sbGFibGVBcmVhKTsKIH0KIAotTGF5b3V0VW5pdCBTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zm
c2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzKQorTGF5b3V0VW5pdCBTY3JvbGxBbmltYXRv
cjo6c2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzKQogewotICAgIEZsb2F0
UG9pbnQgY3VycmVudFBvc2l0aW9uID0gdGhpcy0+Y3VycmVudFBvc2l0aW9uKCk7Ci0gICAgcmV0
dXJuIGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gY3VycmVudFBvc2l0aW9u
LngoKSA6IGN1cnJlbnRQb3NpdGlvbi55KCk7CisgICAgcmV0dXJuIGF4aXMgPT0gU2Nyb2xsRXZl
bnRBeGlzOjpIb3Jpem9udGFsID8gbV9jdXJyZW50UG9zWCA6IG1fY3VycmVudFBvc1k7CiB9CiAK
LXZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4
aXMgYXhpcywgZmxvYXQgZGVsdGEpCit2b2lkIFNjcm9sbEFuaW1hdG9yOjppbW1lZGlhdGVTY3Jv
bGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMsIGZsb2F0IGRlbHRhKQogewogICAgIEZsb2F0
UG9pbnQgY3VycmVudFBvc2l0aW9uID0gdGhpcy0+Y3VycmVudFBvc2l0aW9uKCk7CiAgICAgaWYg
KGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsKQpAQCAtMjE0LDMwICsxOTAsNiBA
QCB2b2lkIFNjcm9sbEFuaW1hdG9yOjppbW1lZGlhdGVTY3JvbGxJbkF4CiAgICAgZWxzZQogICAg
ICAgICBzY3JvbGxUb09mZnNldFdpdGhvdXRBbmltYXRpb24oRmxvYXRQb2ludChjdXJyZW50UG9z
aXRpb24ueCgpLCBjdXJyZW50UG9zaXRpb24ueSgpICsgZGVsdGEpKTsKIH0KLQotdm9pZCBTY3Jv
bGxBbmltYXRvcjo6c3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCi17
Ci0gICAgVGltZXIqIHNjcm9sbFNuYXBUaW1lciA9IGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpI
b3Jpem9udGFsID8gbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyLmdldCgpIDogbV92ZXJ0aWNh
bFNjcm9sbFNuYXBUaW1lci5nZXQoKTsKLSAgICBpZiAoIXNjcm9sbFNuYXBUaW1lci0+aXNBY3Rp
dmUoKSkKLSAgICAgICAgc2Nyb2xsU25hcFRpbWVyLT5zdGFydFJlcGVhdGluZygxLjAgLyA2MC4w
KTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvcjo6c3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxF
dmVudEF4aXMgYXhpcykKLXsKLSAgICBUaW1lciogc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBT
Y3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIu
Z2V0KCkgOiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyLmdldCgpOwotICAgIGlmIChzY3JvbGxT
bmFwVGltZXItPmlzQWN0aXZlKCkpCi0gICAgICAgIHNjcm9sbFNuYXBUaW1lci0+c3RvcCgpOwot
fQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQo
KQotewotICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+c2Nyb2xsU25hcEFuaW1h
dGlvblVwZGF0ZSgpOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjp2ZXJ0aWNhbFNjcm9sbFNu
YXBUaW1lckZpcmVkKCkKLXsKLSAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zY3Jv
bGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Ci19CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oCShyZXZp
c2lvbiAxODA4OTQpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5o
CSh3b3JraW5nIGNvcHkpCkBAIC0zMywxNCArMzMsMTQgQEAKICNkZWZpbmUgU2Nyb2xsQW5pbWF0
b3JfaAogCiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCisjaW5jbHVkZSAiTGF5b3V0VW5pdC5oIgog
I2luY2x1ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgogI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgi
CiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgog
Ci0jaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQotI2luY2x1ZGUg
IkF4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaCIKLSNpbmNsdWRlICJUaW1lci5oIgorI2lmIChFTkFC
TEUoUlVCQkVSX0JBTkRJTkcpIHx8IEVOQUJMRShDU1NfU0NST0xMX1NOQVApKSAmJiBQTEFURk9S
TShNQUMpCisjaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgogI2VuZGlmCiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKQEAgLTUwLDggKzUwLDggQEAgY2xhc3MgUGxhdGZvcm1Ub3VjaEV2ZW50Owog
Y2xhc3MgU2Nyb2xsYWJsZUFyZWE7CiBjbGFzcyBTY3JvbGxiYXI7CiAKLSNpZiBFTkFCTEUoQ1NT
X1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi1jbGFzcyBTY3JvbGxBbmltYXRvciA6IHB1
YmxpYyBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50IHsKKyNpZiAoRU5BQkxFKENTU19TQ1JP
TExfU05BUCkgfHwgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKSkgJiYgUExBVEZPUk0oTUFDKQorY2xh
c3MgU2Nyb2xsQW5pbWF0b3IgOiBwcml2YXRlIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewogI2Vs
c2UKIGNsYXNzIFNjcm9sbEFuaW1hdG9yIHsKICNlbmRpZgpAQCAtMTE4LDMzICsxMTgsMjIgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KIAogI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRG
T1JNKE1BQykKLSAgICB2b2lkIHByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcChjb25zdCBQ
bGF0Zm9ybVdoZWVsRXZlbnQmKTsKKyAgICBib29sIHByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xs
U25hcChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKwogICAgIHZvaWQgdXBkYXRlU2Nyb2xs
QW5pbWF0b3JzQW5kVGltZXJzKCk7Ci0gICAgdmlydHVhbCBMYXlvdXRVbml0IHNjcm9sbE9mZnNl
dEluQXhpcyhTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBpbW1l
ZGlhdGVTY3JvbGxJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7
Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykg
b3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZl
bnRBeGlzKSBvdmVycmlkZTsKKyAgICBMYXlvdXRVbml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3Jv
bGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNj
cm9sbEV2ZW50QXhpcywgZmxvYXQgZGVsdGEpIG92ZXJyaWRlOwogI2VuZGlmCiAKIHByb3RlY3Rl
ZDoKICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5UG9zaXRpb25DaGFuZ2VkKGNvbnN0IEZsb2F0U2l6
ZSYgZGVsdGEpOwogCi0jaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFD
KQotICAgIC8vIFRyaXZpYWwgd3JhcHBlcnMgYXJvdW5kIHRoZSBhY3R1YWwgdXBkYXRlIGxvb3Ag
aW4gQXhpc1Njcm9sbFNuYXBBbmltYXRvciwgc2luY2UgV2ViQ29yZSBUaW1lciByZXF1aXJlcyBh
IFRpbWVyIGFyZ3VtZW50LgotICAgIHZvaWQgaG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVk
KCk7Ci0gICAgdm9pZCB2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCk7Ci0jZW5kaWYKLQog
ICAgIFNjcm9sbGFibGVBcmVhJiBtX3Njcm9sbGFibGVBcmVhOworI2lmIChFTkFCTEUoQ1NTX1ND
Uk9MTF9TTkFQKSB8fCBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpKSAmJiBQTEFURk9STShNQUMpCisg
ICAgU2Nyb2xsQ29udHJvbGxlciBtX3Njcm9sbENvbnRyb2xsZXI7CisjZW5kaWYKICAgICBmbG9h
dCBtX2N1cnJlbnRQb3NYOyAvLyBXZSBhdm9pZCB1c2luZyBhIEZsb2F0UG9pbnQgaW4gb3JkZXIg
dG8gcmVkdWNlCiAgICAgZmxvYXQgbV9jdXJyZW50UG9zWTsgLy8gc3ViY2xhc3MgY29kZSBjb21w
bGV4aXR5LgotI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLSAg
ICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4gbV9ob3Jpem9udGFsU2Ny
b2xsU25hcEFuaW1hdG9yOwotICAgIHN0ZDo6dW5pcXVlX3B0cjxUaW1lcj4gbV9ob3Jpem9udGFs
U2Nyb2xsU25hcFRpbWVyOwotICAgIC8vIEZJWE1FOiBGaW5kIGEgd2F5IHRvIGNvbnNvbGlkYXRl
IGJvdGggdGltZXJzIGludG8gb25lIHZhcmlhYmxlLgotICAgIHN0ZDo6dW5pcXVlX3B0cjxBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yPiBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yOwotICAgIHN0
ZDo6dW5pcXVlX3B0cjxUaW1lcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKLSNlbmRpZgog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAkocmV2aXNpb24gMTgwNzAyKQkoZnJv
bSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5oOjE4MDcwMikK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDEwNyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgU2Nyb2xs
Q29udHJvbGxlcl9oCisjZGVmaW5lIFNjcm9sbENvbnRyb2xsZXJfaAorCisjaWYgRU5BQkxFKFJV
QkJFUl9CQU5ESU5HKQorCisjaW5jbHVkZSAiRmxvYXRQb2ludC5oIgorI2luY2x1ZGUgIkZsb2F0
U2l6ZS5oIgorI2luY2x1ZGUgIlNjcm9sbFR5cGVzLmgiCisjaW5jbHVkZSA8d3RmL05vbmNvcHlh
YmxlLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50
OworCitjbGFzcyBTY3JvbGxDb250cm9sbGVyQ2xpZW50IHsKK3Byb3RlY3RlZDoKKyAgICB2aXJ0
dWFsIH5TY3JvbGxDb250cm9sbGVyQ2xpZW50KCkgeyB9CisKK3B1YmxpYzoKKyAgICB2aXJ0dWFs
IGJvb2wgYWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50
JikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcoY29uc3Qg
UGxhdGZvcm1XaGVlbEV2ZW50JikgPSAwOworICAgIHZpcnR1YWwgSW50U2l6ZSBzdHJldGNoQW1v
dW50KCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBwaW5uZWRJbkRpcmVjdGlvbihjb25zdCBGbG9h
dFNpemUmKSA9IDA7CisgICAgdmlydHVhbCBib29sIGNhblNjcm9sbEhvcml6b250YWxseSgpID0g
MDsKKyAgICB2aXJ0dWFsIGJvb2wgY2FuU2Nyb2xsVmVydGljYWxseSgpID0gMDsKKyAgICB2aXJ0
dWFsIGJvb2wgc2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbERpcmVjdGlvbikgPSAw
OworCisgICAgLy8gUmV0dXJuIHRoZSBhYnNvbHV0ZSBzY3JvbGwgcG9zaXRpb24sIG5vdCByZWxh
dGl2ZSB0byB0aGUgc2Nyb2xsIG9yaWdpbi4KKyAgICB2aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50
IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSA9IDA7CisKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBpbW1l
ZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6
ZSYpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKKworICAg
IC8vIElmIHRoZSBjdXJyZW50IHNjcm9sbCBwb3NpdGlvbiBpcyB3aXRoaW4gdGhlIG92ZXJoYW5n
IGFyZWEsIHRoaXMgZnVuY3Rpb24gd2lsbCBjYXVzZQorICAgIC8vIHRoZSBwYWdlIHRvIHNjcm9s
bCB0byB0aGUgbmVhcmVzdCBib3VuZGFyeSBwb2ludC4KKyAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0
U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgPSAwOworfTsKKworY2xhc3MgU2Ny
b2xsQ29udHJvbGxlciB7CisgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoU2Nyb2xsQ29udHJvbGxl
cik7CisKK3B1YmxpYzoKKyAgICBleHBsaWNpdCBTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRy
b2xsZXJDbGllbnQqKTsKKworICAgIGJvb2wgaGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9y
bVdoZWVsRXZlbnQmKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOworCisg
ICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3Q7CisKK3ByaXZhdGU6CisgICAg
dm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworICAgIHZvaWQgc25hcFJ1YmJlckJhbmQo
KTsKKworICAgIGJvb2wgc2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25z
dCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKworICAgIFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIG1f
Y2xpZW50OworCisgICAgYm9vbCBtX2luU2Nyb2xsR2VzdHVyZTsKKyAgICBib29sIG1fbW9tZW50
dW1TY3JvbGxJblByb2dyZXNzOworICAgIGJvb2wgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHM7Cisg
ICAgCisgICAgQ0ZUaW1lSW50ZXJ2YWwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Cisg
ICAgRmxvYXRTaXplIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YTsKKyAgICBGbG9hdFNpemUgbV9zdHJl
dGNoU2Nyb2xsRm9yY2U7CisgICAgRmxvYXRTaXplIG1fbW9tZW50dW1WZWxvY2l0eTsKKworICAg
IC8vIFJ1YmJlciBiYW5kIHN0YXRlLgorICAgIENGVGltZUludGVydmFsIG1fc3RhcnRUaW1lOwor
ICAgIEZsb2F0U2l6ZSBtX3N0YXJ0U3RyZXRjaDsKKyAgICBGbG9hdFBvaW50IG1fb3JpZ09yaWdp
bjsKKyAgICBGbG9hdFNpemUgbV9vcmlnVmVsb2NpdHk7CisKKyAgICBib29sIG1fc25hcFJ1YmJl
cmJhbmRUaW1lcklzQWN0aXZlOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQorCisjZW5kaWYgLy8gU2Nyb2xsQ29udHJvbGxl
cl9oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29u
dHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2Nv
YS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
IENvcHlyaWdodCAoQykgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMzIsMTAgKzMyLDE2IEBA
CiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCiAjaW5jbHVkZSAiU2Nyb2xsVHlwZXMuaCIKICNpbmNs
dWRlIDx3dGYvTm9uY29weWFibGUuaD4KKyNpbmNsdWRlIDx3dGYvUnVuTG9vcC5oPgorCisjaWYg
RU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyNpbmNsdWRlICJBeGlzU2Nyb2xsU25hcEFuaW1hdG9y
LmgiCisjZW5kaWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBQbGF0Zm9ybVdoZWVs
RXZlbnQ7CitjbGFzcyBTY3JvbGxhYmxlQXJlYTsKIAogY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNs
aWVudCB7CiBwcm90ZWN0ZWQ6CkBAIC01NSwzNiArNjEsNTUgQEAgcHVibGljOgogCiAgICAgdmly
dHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50
cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJl
cmJhbmRUaW1lcigpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGlt
ZXIoKSA9IDA7CiAKICAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0
aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKICAgICAvLyB0
aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCiAgICAgdmly
dHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsK
KworI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAgICB2aXJ0
dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBm
bG9hdCBkZWx0YSkgPSAwOworI2VuZGlmCiB9OwogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05B
UCkgJiYgUExBVEZPUk0oTUFDKQorY2xhc3MgU2Nyb2xsQ29udHJvbGxlciA6IHB1YmxpYyBBeGlz
U2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50IHsKKyNlbHNlCiBjbGFzcyBTY3JvbGxDb250cm9sbGVy
IHsKKyNlbmRpZgogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFNjcm9sbENvbnRyb2xsZXIpOwog
CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgU2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVy
Q2xpZW50Kik7CiAKICAgICBib29sIGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVl
bEV2ZW50Jik7Ci0gICAgdm9pZCBzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKIAogICAgIGJv
b2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0OwogCisjaWYgRU5BQkxFKENTU19TQ1JP
TExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIGJvb2wgcHJvY2Vzc1doZWVsRXZlbnRGb3JT
Y3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworICAgIHZvaWQgdXBkYXRlU2Ny
b2xsQW5pbWF0b3JzQW5kVGltZXJzKGNvbnN0IFNjcm9sbGFibGVBcmVhJik7CisjZW5kaWYKKwog
cHJpdmF0ZToKKyAgICB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpOwogICAgIHZvaWQg
c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAgICB2b2lkIHNuYXBSdWJiZXJCYW5kKCk7Cisg
ICAgdm9pZCBzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKIAogICAgIGJvb2wgc2hvdWxkUnVi
YmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsK
IAotICAgIFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIG1fY2xpZW50OworI2lmIEVOQUJMRShDU1Nf
U0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAgICB2b2lkIGhvcml6b250YWxTY3JvbGxT
bmFwVGltZXJGaXJlZCgpOworICAgIHZvaWQgdmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCgp
OworICAgIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKTsKKyAgICB2
b2lkIHN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKTsKKworICAgIExheW91dFVu
aXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgdm9p
ZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3Zl
cnJpZGU7CisjZW5kaWYKIAotICAgIGJvb2wgbV9pblNjcm9sbEdlc3R1cmU7Ci0gICAgYm9vbCBt
X21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsKLSAgICBib29sIG1faWdub3JlTW9tZW50dW1TY3Jv
bGxzOworICAgIFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIG1fY2xpZW50OwogICAgIAogICAgIENG
VGltZUludGVydmFsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOwogICAgIEZsb2F0U2l6
ZSBtX292ZXJmbG93U2Nyb2xsRGVsdGE7CkBAIC05Niw3ICsxMjEsMTkgQEAgcHJpdmF0ZToKICAg
ICBGbG9hdFNpemUgbV9zdGFydFN0cmV0Y2g7CiAgICAgRmxvYXRQb2ludCBtX29yaWdPcmlnaW47
CiAgICAgRmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5OworICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9s
bENvbnRyb2xsZXI+IG1fc25hcFJ1YmJlcmJhbmRUaW1lcjsKKyAgICAKKyNpZiBFTkFCTEUoQ1NT
X1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgLy8gRklYTUU6IEZpbmQgYSB3YXkg
dG8gY29uc29saWRhdGUgYm90aCB0aW1lcnMgaW50byBvbmUgdmFyaWFibGUuCisgICAgc3RkOjp1
bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBB
bmltYXRvcjsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4gbV92
ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcjsKKyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250
cm9sbGVyPiBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXI7CisgICAgUnVuTG9vcDo6VGltZXI8
U2Nyb2xsQ29udHJvbGxlcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKKyNlbmRpZgogCisg
ICAgYm9vbCBtX2luU2Nyb2xsR2VzdHVyZTsKKyAgICBib29sIG1fbW9tZW50dW1TY3JvbGxJblBy
b2dyZXNzOworICAgIGJvb2wgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHM7CiAgICAgYm9vbCBtX3Nu
YXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKIH07CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQkocmV2aXNpb24gMTgwNzAy
KQkoZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbTox
ODA3MDIpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVy
Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDA2IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDExLCAyMDE0LTIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgor
CisjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCisjaW5jbHVkZSAiV2ViQ29yZVN5c3Rl
bUludGVyZmFjZS5oIgorI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KKyNpbmNsdWRlIDxzeXMvdGlt
ZS5oPgorCisjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQorCitzdGF0aWMgTlNUaW1lSW50ZXJ2
YWwgc3lzdGVtVXB0aW1lKCkKK3sKKyAgICBpZiAoW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZv
XSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHN5c3RlbVVwdGltZSldKQorICAgICAgICBy
ZXR1cm4gW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSBzeXN0ZW1VcHRpbWVdOworCisgICAg
Ly8gR2V0IGhvdyBsb25nIHN5c3RlbSBoYXMgYmVlbiB1cC4gRm91bmQgYnkgbG9va2luZyBnZXR0
aW5nICJib290dGltZSIgZnJvbSB0aGUga2VybmVsLgorICAgIHN0YXRpYyBzdHJ1Y3QgdGltZXZh
bCBib290dGltZSA9IHswLCAwfTsKKyAgICBpZiAoIWJvb3R0aW1lLnR2X3NlYykgeworICAgICAg
ICBpbnQgbWliWzJdID0ge0NUTF9LRVJOLCBLRVJOX0JPT1RUSU1FfTsKKyAgICAgICAgc2l6ZV90
IHNpemUgPSBzaXplb2YoYm9vdHRpbWUpOworICAgICAgICBpZiAoLTEgPT0gc3lzY3RsKG1pYiwg
MiwgJmJvb3R0aW1lLCAmc2l6ZSwgMCwgMCkpCisgICAgICAgICAgICBib290dGltZS50dl9zZWMg
PSAwOworICAgIH0KKyAgICBzdHJ1Y3QgdGltZXZhbCBub3c7CisgICAgaWYgKGJvb3R0aW1lLnR2
X3NlYyAmJiAtMSAhPSBnZXR0aW1lb2ZkYXkoJm5vdywgMCkpIHsKKyAgICAgICAgc3RydWN0IHRp
bWV2YWwgdXB0aW1lOworICAgICAgICB0aW1lcnN1Yigmbm93LCAmYm9vdHRpbWUsICZ1cHRpbWUp
OworICAgICAgICBOU1RpbWVJbnRlcnZhbCByZXN1bHQgPSB1cHRpbWUudHZfc2VjICsgKHVwdGlt
ZS50dl91c2VjIC8gMUUrNik7CisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgfQorICAgIHJl
dHVybiAwOworfQorCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIGNvbnN0IGZsb2F0
IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQgPSAwLjEwZjsKK3N0YXRpYyBjb25zdCBmbG9h
dCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbyA9IDE7CitzdGF0aWMgY29uc3Qg
ZmxvYXQgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCA9IDEwOwor
CitzdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKGZsb2F0IGluaXRpYWxQb3Np
dGlvbiwgZmxvYXQgaW5pdGlhbFZlbG9jaXR5LCBmbG9hdCBlbGFwc2VkVGltZSkKK3sKKyAgICBy
ZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShpbml0aWFsUG9zaXRpb24sIGluaXRp
YWxWZWxvY2l0eSwgZWxhcHNlZFRpbWUpOworfQorCitzdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRh
Rm9yUmVib3VuZERlbHRhKGZsb2F0IGRlbHRhKQoreworICAgIHJldHVybiB3a05TRWxhc3RpY0Rl
bHRhRm9yUmVib3VuZERlbHRhKGRlbHRhKTsKK30KKworc3RhdGljIGZsb2F0IHJlYm91bmREZWx0
YUZvckVsYXN0aWNEZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAgICByZXR1cm4gd2tOU1JlYm91bmRE
ZWx0YUZvckVsYXN0aWNEZWx0YShkZWx0YSk7Cit9CisKK3N0YXRpYyBmbG9hdCBzY3JvbGxXaGVl
bE11bHRpcGxpZXIoKQoreworICAgIHN0YXRpYyBmbG9hdCBtdWx0aXBsaWVyID0gLTE7CisgICAg
aWYgKG11bHRpcGxpZXIgPCAwKSB7CisgICAgICAgIG11bHRpcGxpZXIgPSBbW05TVXNlckRlZmF1
bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBmbG9hdEZvcktleTpAIk5TU2Nyb2xsV2hlZWxNdWx0
aXBsaWVyIl07CisgICAgICAgIGlmIChtdWx0aXBsaWVyIDw9IDApCisgICAgICAgICAgICBtdWx0
aXBsaWVyID0gMTsKKyAgICB9CisgICAgcmV0dXJuIG11bHRpcGxpZXI7Cit9CisKK1Njcm9sbENv
bnRyb2xsZXI6OlNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCogY2xpZW50
KQorICAgIDogbV9jbGllbnQoY2xpZW50KQorICAgICwgbV9pblNjcm9sbEdlc3R1cmUoZmFsc2Up
CisgICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxzZSkKKyAgICAsIG1faWdub3Jl
TW9tZW50dW1TY3JvbGxzKGZhbHNlKQorICAgICwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3Rh
bXAoMCkKKyAgICAsIG1fc3RhcnRUaW1lKDApCisgICAgLCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJ
c0FjdGl2ZShmYWxzZSkKK3sKK30KKworYm9vbCBTY3JvbGxDb250cm9sbGVyOjpoYW5kbGVXaGVl
bEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKK3sKKyAgICBpZiAo
d2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4pIHsKKyAg
ICAgICAgLy8gRmlyc3QsIGNoZWNrIGlmIHdlIHNob3VsZCBydWJiZXItYmFuZCBhdCBhbGwuCisg
ICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKC13aGVlbEV2
ZW50LmRlbHRhWCgpLCAwKSkKKyAgICAgICAgICAgICYmICFzaG91bGRSdWJiZXJCYW5kSW5Ib3Jp
em9udGFsRGlyZWN0aW9uKHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwor
CisgICAgICAgIG1faW5TY3JvbGxHZXN0dXJlID0gdHJ1ZTsKKyAgICAgICAgbV9tb21lbnR1bVNj
cm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMg
PSBmYWxzZTsKKyAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAwOworICAg
ICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKworICAgICAgICBJbnRTaXpl
IHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworICAgICAgICBtX3N0
cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoc3Ry
ZXRjaEFtb3VudC53aWR0aCgpKSk7CisgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhl
aWdodChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC5oZWlnaHQoKSkp
OworICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKKworICAgICAg
ICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworCisgICAgICAgIHJldHVybiB0cnVlOworICAg
IH0KKworICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhh
c2VFbmRlZCkgeworICAgICAgICBzbmFwUnViYmVyQmFuZCgpOworICAgICAgICByZXR1cm4gdHJ1
ZTsKKyAgICB9CisKKyAgICBib29sIGlzTW9tZW50dW1TY3JvbGxFdmVudCA9ICh3aGVlbEV2ZW50
Lm1vbWVudHVtUGhhc2UoKSAhPSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZU5vbmUpOworICAgIGlm
IChtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyAmJiAoaXNNb21lbnR1bVNjcm9sbEV2ZW50IHx8IG1f
c25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKSkgeworICAgICAgICBpZiAod2hlZWxFdmVudC5t
b21lbnR1bVBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgeworICAgICAg
ICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKKyAgICAgICAgICAgIHJldHVy
biB0cnVlOworICAgICAgICB9CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBm
bG9hdCBkZWx0YVggPSBtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKTsKKyAgICBmbG9hdCBk
ZWx0YVkgPSBtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCk7CisKKyAgICAvLyBSZXNldCBv
dmVyZmxvdyB2YWx1ZXMgYmVjYXVzZSB3ZSBtYXkgZGVjaWRlIHRvIHJlbW92ZSBkZWx0YSBhdCB2
YXJpb3VzIHBvaW50cyBhbmQgcHV0IGl0IGludG8gb3ZlcmZsb3cuCisgICAgbV9vdmVyZmxvd1Nj
cm9sbERlbHRhID0gRmxvYXRTaXplKCk7CisKKyAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBt
X2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworICAgIGJvb2wgaXNWZXJ0aWNhbGx5U3RyZXRjaGVk
ID0gc3RyZXRjaEFtb3VudC5oZWlnaHQoKTsKKyAgICBib29sIGlzSG9yaXpvbnRhbGx5U3RyZXRj
aGVkID0gc3RyZXRjaEFtb3VudC53aWR0aCgpOworCisgICAgZmxvYXQgZXZlbnRDb2FsZXNjZWRE
ZWx0YVg7CisgICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVk7CisKKyAgICBpZiAoaXNWZXJ0
aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7CisgICAgICAgIGV2
ZW50Q29hbGVzY2VkRGVsdGFYID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNjcm9sbGluZ0Rl
bHRhWCgpOworICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LnVuYWNj
ZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVkoKTsKKyAgICB9IGVsc2UgeworICAgICAgICBldmVudENv
YWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LmRlbHRhWCgpOworICAgICAgICBldmVudENvYWxl
c2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LmRlbHRhWSgpOworICAgIH0KKworICAgIGRlbHRhWCAr
PSBldmVudENvYWxlc2NlZERlbHRhWDsKKyAgICBkZWx0YVkgKz0gZXZlbnRDb2FsZXNjZWREZWx0
YVk7CisKKyAgICAvLyBTbGlnaHRseSBwcmVmZXIgc2Nyb2xsaW5nIHZlcnRpY2FsbHkgYnkgYXBw
bHlpbmcgdGhlID0gY2FzZSB0byBkZWx0YVkKKyAgICBpZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJz
ZihkZWx0YVgpKQorICAgICAgICBkZWx0YVggPSAwOworICAgIGVsc2UKKyAgICAgICAgZGVsdGFZ
ID0gMDsKKworICAgIGJvb2wgc2hvdWxkU3RyZXRjaCA9IGZhbHNlOworCisgICAgUGxhdGZvcm1X
aGVlbEV2ZW50UGhhc2UgbW9tZW50dW1QaGFzZSA9IHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgp
OworCisgICAgLy8gSWYgd2UgYXJlIHN0YXJ0aW5nIG1vbWVudHVtIHNjcm9sbGluZyB0aGVuIGRv
IHNvbWUgc2V0dXAuCisgICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAobW9t
ZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuIHx8IG1vbWVudHVtUGhh
c2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VDaGFuZ2VkKSkKKyAgICAgICAgbV9tb21lbnR1
bVNjcm9sbEluUHJvZ3Jlc3MgPSB0cnVlOworCisgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRh
ID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKSAtIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1w
OworICAgIGlmIChtX2luU2Nyb2xsR2VzdHVyZSB8fCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVz
cykgeworICAgICAgICBpZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGltZURl
bHRhID4gMCAmJiB0aW1lRGVsdGEgPCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0KSB7Cisg
ICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkuc2V0V2lkdGgoZXZlbnRDb2FsZXNjZWREZWx0
YVggLyAoZmxvYXQpdGltZURlbHRhKTsKKyAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eS5z
ZXRIZWlnaHQoZXZlbnRDb2FsZXNjZWREZWx0YVkgLyAoZmxvYXQpdGltZURlbHRhKTsKKyAgICAg
ICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3Rh
bXAoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xs
VGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsKKyAgICAgICAgICAgIG1fbW9tZW50
dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKGlzVmVy
dGljYWxseVN0cmV0Y2hlZCkgeworICAgICAgICAgICAgaWYgKCFpc0hvcml6b250YWxseVN0cmV0
Y2hlZCAmJiBtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkp
KSB7CisgICAgICAgICAgICAgICAgLy8gU3RyZXRjaGluZyBvbmx5IGluIHRoZSB2ZXJ0aWNhbC4K
KyAgICAgICAgICAgICAgICBpZiAoZGVsdGFZICYmIChmYWJzZihkZWx0YVggLyBkZWx0YVkpIDwg
cnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8pKQorICAgICAgICAgICAgICAgICAg
ICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZhYnNmKGRlbHRhWCkgPCBy
dWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7CisgICAgICAgICAg
ICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xs
RGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7
CisgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dT
Y3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRh
WCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSBpZiAoaXNIb3Jpem9udGFsbHlTdHJl
dGNoZWQpIHsKKyAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgaG9yaXpvbnRh
bC4KKyAgICAgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXpl
KDAsIGRlbHRhWSkpKSB7CisgICAgICAgICAgICAgICAgaWYgKGRlbHRhWCAmJiAoZmFic2YoZGVs
dGFZIC8gZGVsdGFYKSA8IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKKyAg
ICAgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChm
YWJzZihkZWx0YVkpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRj
aCkgeworICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0
KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7CisgICAgICAgICAgICAg
ICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAg
ICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRIZWlnaHQobV9vdmVyZmxvd1Njcm9sbERl
bHRhLmhlaWdodCgpICsgZGVsdGFZKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsK
KyAgICAgICAgICAgIC8vIE5vdCBzdHJldGNoaW5nIGF0IGFsbCB5ZXQuCisgICAgICAgICAgICBp
ZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIGRlbHRhWSkp
KSB7CisgICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkg
eworICAgICAgICAgICAgICAgICAgICBpZiAoZmFic2YoZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5p
bXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKKyAgICAgICAgICAgICAgICAgICAgICAg
IG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lk
dGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOworICAg
ICAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZs
b3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRl
bHRhWCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHNob3VsZFN0cmV0Y2gg
PSB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgaWYgKGRlbHRh
WCB8fCBkZWx0YVkpIHsKKyAgICAgICAgaWYgKCEoc2hvdWxkU3RyZXRjaCB8fCBpc1ZlcnRpY2Fs
bHlTdHJldGNoZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpKSB7CisgICAgICAgICAgICBp
ZiAoZGVsdGFZKSB7CisgICAgICAgICAgICAgICAgZGVsdGFZICo9IHNjcm9sbFdoZWVsTXVsdGlw
bGllcigpOworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9h
dFNpemUoMCwgZGVsdGFZKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoZGVsdGFY
KSB7CisgICAgICAgICAgICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwor
ICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoZGVs
dGFYLCAwKSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBp
ZiAoIW1fY2xpZW50LT5hbGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgewor
ICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNj
ZWREZWx0YVggPSAwOworICAgICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVggJiYgIWlzSG9yaXpv
bnRhbGx5U3RyZXRjaGVkICYmICFtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXpl
KGRlbHRhWCwgMCkpKSB7CisgICAgICAgICAgICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVs
dGlwbGllcigpOworCisgICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5
V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKGRlbHRhWCwgMCkpOworICAg
ICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGlm
ICghbV9jbGllbnQtPmFsbG93c1ZlcnRpY2FsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgeworICAg
ICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWRE
ZWx0YVkgPSAwOworICAgICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVkgJiYgIWlzVmVydGljYWxs
eVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBk
ZWx0YVkpKSkgeworICAgICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxp
ZXIoKTsKKworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhv
dXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKTsKKyAgICAgICAg
ICAgICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBJbnRTaXpl
IHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworCisgICAgICAgICAg
ICBpZiAobV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKKyAgICAgICAgICAgICAgICBpZiAo
KG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZXZlbnRDb2FsZXNjZWREZWx0
YVgsIGV2ZW50Q29hbGVzY2VkRGVsdGFZKSkgfHwgKGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFY
KSArIGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFZKSA8PSAwKSkgJiYgbV9sYXN0TW9tZW50dW1T
Y3JvbGxUaW1lc3RhbXApIHsKKyAgICAgICAgICAgICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNj
cm9sbHMgPSB0cnVlOworICAgICAgICAgICAgICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9n
cmVzcyA9IGZhbHNlOworICAgICAgICAgICAgICAgICAgICBzbmFwUnViYmVyQmFuZCgpOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgbV9zdHJldGNoU2Ny
b2xsRm9yY2Uuc2V0V2lkdGgobV9zdHJldGNoU2Nyb2xsRm9yY2Uud2lkdGgoKSArIGRlbHRhWCk7
CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQobV9zdHJldGNoU2Ny
b2xsRm9yY2UuaGVpZ2h0KCkgKyBkZWx0YVkpOworCisgICAgICAgICAgICBGbG9hdFNpemUgZGFt
cGVkRGVsdGEoY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9s
bEZvcmNlLndpZHRoKCkpKSwgY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3Ry
ZXRjaFNjcm9sbEZvcmNlLmhlaWdodCgpKSkpOworCisgICAgICAgICAgICBtX2NsaWVudC0+aW1t
ZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhkYW1wZWREZWx0YSAt
IHN0cmV0Y2hBbW91bnQpOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKG1fbW9tZW50dW1T
Y3JvbGxJblByb2dyZXNzICYmIG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhh
c2VFbmRlZCkgeworICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOwor
ICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOworICAgICAgICBtX2xhc3RN
b21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IDA7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9
CisKK3N0YXRpYyBpbmxpbmUgZmxvYXQgcm91bmRUb3dhcmRaZXJvKGZsb2F0IG51bSkKK3sKKyAg
ICByZXR1cm4gbnVtID4gMCA/IGNlaWxmKG51bSAtIDAuNWYpIDogZmxvb3JmKG51bSArIDAuNWYp
OworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0IHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8o
ZmxvYXQgbnVtKQoreworICAgIGZsb2F0IHJvdW5kZWROdW0gPSByb3VuZGYobnVtKTsKKyAgICBp
ZiAoZmFicyhudW0gLSByb3VuZGVkTnVtKSA8IDAuMTI1KQorICAgICAgICBudW0gPSByb3VuZGVk
TnVtOworCisgICAgcmV0dXJuIHJvdW5kVG93YXJkWmVybyhudW0pOworfQorCit2b2lkIFNjcm9s
bENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCit7CisgICAgaWYgKCFtX21v
bWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyB8fCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscykgeworICAg
ICAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNl
UmVmZXJlbmNlRGF0ZV0gLSBtX3N0YXJ0VGltZTsKKworICAgICAgICBpZiAobV9zdGFydFN0cmV0
Y2ggPT0gRmxvYXRTaXplKCkpIHsKKyAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0gbV9jbGll
bnQtPnN0cmV0Y2hBbW91bnQoKTsKKyAgICAgICAgICAgIGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBG
bG9hdFNpemUoKSkgeworICAgICAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7
CisKKyAgICAgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOwor
ICAgICAgICAgICAgICAgIG1fc3RhcnRUaW1lID0gMDsKKyAgICAgICAgICAgICAgICBtX3N0YXJ0
U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IEZs
b2F0UG9pbnQoKTsKKyAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgp
OworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
bV9vcmlnT3JpZ2luID0gbV9jbGllbnQtPmFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSAtIG1fc3Rh
cnRTdHJldGNoOworICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBtX21vbWVudHVtVmVsb2Np
dHk7CisKKyAgICAgICAgICAgIC8vIEp1c3QgbGlrZSBub3JtYWwgc2Nyb2xsaW5nLCBwcmVmZXIg
dmVydGljYWwgcnViYmVyYmFuZGluZworICAgICAgICAgICAgaWYgKGZhYnNmKG1fb3JpZ1ZlbG9j
aXR5LmhlaWdodCgpKSA+PSBmYWJzZihtX29yaWdWZWxvY2l0eS53aWR0aCgpKSkKKyAgICAgICAg
ICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgwKTsKKworICAgICAgICAgICAgLy8gRG9u
J3QgcnViYmVyLWJhbmQgaG9yaXpvbnRhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9s
bCBob3Jpem9udGFsbHkKKyAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmNhblNjcm9sbEhvcml6
b250YWxseSgpKQorICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldFdpZHRoKDApOwor
CisgICAgICAgICAgICAvLyBEb24ndCBydWJiZXItYmFuZCB2ZXJ0aWNhbGx5IGlmIGl0J3Mgbm90
IHBvc3NpYmxlIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5CisgICAgICAgICAgICBpZiAoIW1fY2xpZW50
LT5jYW5TY3JvbGxWZXJ0aWNhbGx5KCkpCisgICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHku
c2V0SGVpZ2h0KDApOworICAgICAgICB9CisKKyAgICAgICAgRmxvYXRQb2ludCBkZWx0YShyb3Vu
ZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShtX3N0YXJ0
U3RyZXRjaC53aWR0aCgpLCAtbV9vcmlnVmVsb2NpdHkud2lkdGgoKSwgKGZsb2F0KXRpbWVEZWx0
YSkpLAorICAgICAgICAgICAgcm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVs
dGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2guaGVpZ2h0KCksIC1tX29yaWdWZWxvY2l0eS5o
ZWlnaHQoKSwgKGZsb2F0KXRpbWVEZWx0YSkpKTsKKworICAgICAgICBpZiAoZmFicyhkZWx0YS54
KCkpID49IDEgfHwgZmFicyhkZWx0YS55KCkpID49IDEpIHsKKyAgICAgICAgICAgIG1fY2xpZW50
LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6
ZShkZWx0YS54KCksIGRlbHRhLnkoKSkgLSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpKTsKKwor
ICAgICAgICAgICAgRmxvYXRTaXplIG5ld1N0cmV0Y2ggPSBtX2NsaWVudC0+c3RyZXRjaEFtb3Vu
dCgpOworCisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5k
RGVsdGFGb3JFbGFzdGljRGVsdGEobmV3U3RyZXRjaC53aWR0aCgpKSk7CisgICAgICAgICAgICBt
X3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRh
KG5ld1N0cmV0Y2guaGVpZ2h0KCkpKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG1f
Y2xpZW50LT5hZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKTsKKworICAg
ICAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICAgICAgICAgIG1fc3RyZXRj
aFNjcm9sbEZvcmNlID0gRmxvYXRTaXplKCk7CisgICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7
CisgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAg
bV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOworICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkg
PSBGbG9hdFNpemUoKTsKKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIG1fc3RhcnRU
aW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOworICAgICAgICBt
X3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgIH0KK30KKworYm9vbCBTY3JvbGxDb250
cm9sbGVyOjppc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3QKK3sKKyAgICBpZiAoIW1faW5T
Y3JvbGxHZXN0dXJlICYmICFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAhbV9zbmFwUnVi
YmVyYmFuZFRpbWVySXNBY3RpdmUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVy
biAhbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKS5pc1plcm8oKTsKK30KKwordm9pZCBTY3JvbGxD
b250cm9sbGVyOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCit7CisgICAgbV9jbGllbnQtPnN0
b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3Rp
dmUgPSBmYWxzZTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgp
Cit7CisgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gc3lzdGVtVXB0aW1lKCkgLSBtX2xh
c3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBpZiAobV9sYXN0TW9tZW50dW1TY3JvbGxU
aW1lc3RhbXAgJiYgdGltZURlbHRhID49IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQpCisg
ICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworCisgICAgbV9pblNjcm9s
bEdlc3R1cmUgPSBmYWxzZTsKKworICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2
ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9zdGFydFRpbWUgPSBbTlNEYXRlIHRpbWVJbnRl
cnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07CisgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUo
KTsKKyAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CisgICAgbV9vcmlnVmVsb2NpdHkg
PSBGbG9hdFNpemUoKTsKKworICAgIG1fY2xpZW50LT5zdGFydFNuYXBSdWJiZXJiYW5kVGltZXIo
KTsKKyAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7Cit9CisKK2Jvb2wg
U2Nyb2xsQ29udHJvbGxlcjo6c2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihj
b25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCit7CisgICAgaWYgKHdoZWVsRXZl
bnQuZGVsdGFYKCkgPiAwKQorICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJh
bmRJbkRpcmVjdGlvbihTY3JvbGxMZWZ0KTsKKyAgICBpZiAod2hlZWxFdmVudC5kZWx0YVgoKSA8
IDApCisgICAgICAgIHJldHVybiBtX2NsaWVudC0+c2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9u
KFNjcm9sbFJpZ2h0KTsKKworICAgIHJldHVybiB0cnVlOworfQorCit9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0JKHdvcmtp
bmcgY29weSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xs
ZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTMxLDYgKzMxLDExIEBACiAjaW5jbHVkZSA8c3lzL3N5
c2N0bC5oPgogI2luY2x1ZGUgPHN5cy90aW1lLmg+CiAKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9T
TkFQKQorI2luY2x1ZGUgIkF4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaCIKKyNpbmNsdWRlICJTY3Jv
bGxhYmxlQXJlYS5oIgorI2VuZGlmCisKICNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCiAKIHN0
YXRpYyBOU1RpbWVJbnRlcnZhbCBzeXN0ZW1VcHRpbWUoKQpAQCAtOTEsMTcgKzk2LDI2IEBAIHN0
YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKQogCiBTY3JvbGxDb250cm9sbGVyOjpT
Y3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIGNsaWVudCkKICAgICA6IG1f
Y2xpZW50KGNsaWVudCkKKyAgICAsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCisg
ICAgLCBtX3N0YXJ0VGltZSgwKQorICAgICwgbV9zbmFwUnViYmVyYmFuZFRpbWVyKFJ1bkxvb3A6
OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kVGltZXJG
aXJlZCkKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAg
LCBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIoUnVuTG9vcDo6Y3VycmVudCgpLCB0aGlzLCAm
U2Nyb2xsQ29udHJvbGxlcjo6aG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKQorICAgICwg
bV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcihSdW5Mb29wOjpjdXJyZW50KCksIHRoaXMsICZTY3Jv
bGxDb250cm9sbGVyOjp2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKQorI2VuZGlmCiAgICAg
LCBtX2luU2Nyb2xsR2VzdHVyZShmYWxzZSkKICAgICAsIG1fbW9tZW50dW1TY3JvbGxJblByb2dy
ZXNzKGZhbHNlKQogICAgICwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMoZmFsc2UpCi0gICAgLCBt
X2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQotICAgICwgbV9zdGFydFRpbWUoMCkKICAg
ICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKGZhbHNlKQogewogfQogCiBib29sIFNj
cm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50
JiB3aGVlbEV2ZW50KQogeworI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JN
KE1BQykKKyAgICBpZiAoIXByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcCh3aGVlbEV2ZW50
KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCiAgICAgaWYgKHdoZWVsRXZlbnQucGhh
c2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuKSB7CiAgICAgICAgIC8vIEZpcnN0
LCBjaGVjayBpZiB3ZSBzaG91bGQgcnViYmVyLWJhbmQgYXQgYWxsLgogICAgICAgICBpZiAobV9j
bGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgtd2hlZWxFdmVudC5kZWx0YVgoKSwg
MCkpCkBAIC0zNjUsOSArMzc5LDE0IEBAIGJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aXNSdWJiZXJC
YW5kSW5Qcm8KICAgICByZXR1cm4gIW1fY2xpZW50LT5zdHJldGNoQW1vdW50KCkuaXNaZXJvKCk7
CiB9CiAKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkK
K3sKKyAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXIuc3RhcnRSZXBlYXRpbmcoMS4wIC8gNjAuMCk7
Cit9CisKIHZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQog
ewotICAgIG1fY2xpZW50LT5zdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworICAgIG1fc25hcFJ1
YmJlcmJhbmRUaW1lci5zdG9wKCk7CiAgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUg
PSBmYWxzZTsKIH0KIApAQCAtMzg3LDcgKzQwNiw3IEBAIHZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6
c25hcFJ1YmJlckJhbmQoKQogICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKICAgICBt
X29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwogCi0gICAgbV9jbGllbnQtPnN0YXJ0U25hcFJ1
YmJlcmJhbmRUaW1lcigpOworICAgIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpOwogICAgIG1f
c25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gdHJ1ZTsKIH0KIApAQCAtNDAxLDYgKzQyMCw3
MyBAQCBib29sIFNjcm9sbENvbnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJCiAgICAgcmV0dXJu
IHRydWU7CiB9CiAKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMp
Citib29sIFNjcm9sbENvbnRyb2xsZXI6OnByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcChj
b25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCit7CisgICAgaWYgKG1fdmVydGlj
YWxTY3JvbGxTbmFwQW5pbWF0b3IpIHsKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmlt
YXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKKyAgICAgICAgaWYgKG1fdmVydGlj
YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNob3VsZE92ZXJyaWRlV2hlZWxFdmVudCh3aGVlbEV2ZW50
KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgaWYgKG1faG9yaXpvbnRh
bFNjcm9sbFNuYXBBbmltYXRvcikgeworICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5p
bWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CisgICAgICAgIGlmIChtX2hvcml6
b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPnNob3VsZE92ZXJyaWRlV2hlZWxFdmVudCh3aGVlbEV2
ZW50KSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1
ZTsKK30KKyAgICAKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6dXBkYXRlU2Nyb2xsQW5pbWF0b3Jz
QW5kVGltZXJzKGNvbnN0IFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkKK3sKKyAgICAv
LyBGSVhNRTogQ3VycmVudGx5LCBzY3JvbGwgc25hcCBhbmltYXRvcnMgYXJlIHJlY3JlYXRlZCBl
dmVuIHRob3VnaCB0aGUgc25hcCBvZmZzZXRzIGFsb25lIGNhbiBiZSB1cGRhdGVkLgorICAgIGlm
IChzY3JvbGxhYmxlQXJlYS5ob3Jpem9udGFsU25hcE9mZnNldHMoKSkKKyAgICAgICAgbV9ob3Jp
em9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xsU25h
cEFuaW1hdG9yPih0aGlzLCBzY3JvbGxhYmxlQXJlYS5ob3Jpem9udGFsU25hcE9mZnNldHMoKSwg
U2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsKTsKKyAgICBlbHNlIGlmIChtX2hvcml6b250YWxT
Y3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRv
ciA9IG51bGxwdHI7CisKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFwT2Zmc2V0
cygpKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3Vu
aXF1ZTxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPih0aGlzLCBzY3JvbGxhYmxlQXJlYS52ZXJ0aWNh
bFNuYXBPZmZzZXRzKCksIFNjcm9sbEV2ZW50QXhpczo6VmVydGljYWwpOworICAgIGVsc2UgaWYg
KG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1fdmVydGljYWxTY3JvbGxT
bmFwQW5pbWF0b3IgPSBudWxscHRyOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0YXJ0
U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyBheGlzKQoreworICAgIFJ1bkxvb3A6OlRp
bWVyPFNjcm9sbENvbnRyb2xsZXI+JiBzY3JvbGxTbmFwVGltZXIgPSBheGlzID09IFNjcm9sbEV2
ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA6IG1fdmVy
dGljYWxTY3JvbGxTbmFwVGltZXI7CisgICAgaWYgKCFzY3JvbGxTbmFwVGltZXIuaXNBY3RpdmUo
KSkKKyAgICAgICAgc2Nyb2xsU25hcFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjApOwor
fQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZl
bnRBeGlzIGF4aXMpCit7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4mIHNj
cm9sbFNuYXBUaW1lciA9IGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9o
b3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsKKyAg
ICBzY3JvbGxTbmFwVGltZXIuc3RvcCgpOworfQorICAgIAordm9pZCBTY3JvbGxDb250cm9sbGVy
Ojpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQoreworICAgIGlmIChtX2hvcml6b250
YWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmlt
YXRvci0+c2Nyb2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOworfQorCit2b2lkIFNjcm9sbENvbnRy
b2xsZXI6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQoreworICAgIGlmIChtX3ZlcnRp
Y2FsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1h
dG9yLT5zY3JvbGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Cit9CisKK0xheW91dFVuaXQgU2Nyb2xs
Q29udHJvbGxlcjo6c2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzKQorewor
ICAgIHJldHVybiBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKGF4aXMpOworfQorCit2b2lk
IFNjcm9sbENvbnRyb2xsZXI6OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMg
YXhpcywgZmxvYXQgZGVsdGEpCit7CisgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbE9uQXhp
cyhheGlzLCBkZWx0YSk7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAj
ZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oCShyZXZpc2lvbiAx
ODA4OTQpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmlt
YXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw4ICs1Nyw4IEBAIHByb3RlY3RlZDoKICAgICB2
aXJ0dWFsIH5BeGlzU2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50KCkgeyB9CiAKIHB1YmxpYzoKLSAg
ICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxJbkF4aXMoU2Nyb2xsRXZlbnRB
eGlzLCBmbG9hdCB2ZWxvY2l0eSkgPSAwOworICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxP
ZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGltbWVk
aWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IHZlbG9jaXR5KSA9IDA7CiAg
ICAgdmlydHVhbCB2b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykg
PSAwOwogfTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25h
cEFuaW1hdG9yLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9B
eGlzU2Nyb2xsU25hcEFuaW1hdG9yLm1tCShyZXZpc2lvbiAxODA4OTQpCisrKyBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5tbQkod29ya2luZyBjb3B5
KQpAQCAtMTE3LDcgKzExNyw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6aGFuZGxl
V2hlZWwKICAgICAgICAgLy8gQmVnaW4gdHJhY2tpbmcgd2hlZWwgZGVsdGFzIGZvciBnbGlkZSBw
cmVkaWN0aW9uLgogICAgICAgICBlbmRTY3JvbGxTbmFwQW5pbWF0aW9uKFNjcm9sbFNuYXBTdGF0
ZTo6VXNlckludGVyYWN0aW9uKTsKICAgICAgICAgcHVzaEluaXRpYWxXaGVlbERlbHRhKHdoZWVs
RGVsdGEpOwotICAgICAgICBtX2JlZ2luVHJhY2tpbmdXaGVlbERlbHRhT2Zmc2V0ID0gbV9jbGll
bnQtPnNjcm9sbE9mZnNldEluQXhpcyhtX2F4aXMpOworICAgICAgICBtX2JlZ2luVHJhY2tpbmdX
aGVlbERlbHRhT2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4aXMpOwog
ICAgICAgICBicmVhazsKIAogICAgIGNhc2UgV2hlZWxFdmVudFN0YXR1czo6SW5lcnRpYWxTY3Jv
bGxpbmc6CkBAIC0xNTMsNyArMTUzLDcgQEAgdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpz
Y3JvbGxTbmFwQQogICAgIEFTU0VSVChtX2N1cnJlbnRTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6
OkdsaWRpbmcgfHwgbV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyk7
CiAgICAgZmxvYXQgZGVsdGEgPSBtX2N1cnJlbnRTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OlNu
YXBwaW5nID8gY29tcHV0ZVNuYXBEZWx0YSgpIDogY29tcHV0ZUdsaWRlRGVsdGEoKTsKICAgICBp
ZiAoZGVsdGEpCi0gICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxJbkF4aXMobV9heGlz
LCBkZWx0YSk7CisgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxPbkF4aXMobV9heGlz
LCBkZWx0YSk7CiAgICAgZWxzZQogICAgICAgICBlbmRTY3JvbGxTbmFwQW5pbWF0aW9uKFNjcm9s
bFNuYXBTdGF0ZTo6RGVzdGluYXRpb25SZWFjaGVkKTsKIH0KQEAgLTE2MSw3ICsxNjEsNyBAQCB2
b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OnNjcm9sbFNuYXBBCiB2b2lkIEF4aXNTY3JvbGxT
bmFwQW5pbWF0b3I6OmJlZ2luU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3RhdGUgbmV3
U3RhdGUpCiB7CiAgICAgQVNTRVJUKG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xpZGlu
ZyB8fCBuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OlNuYXBwaW5nKTsKLSAgICBMYXlvdXRV
bml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAgICBM
YXlvdXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlzKTsK
ICAgICBmbG9hdCBpbml0aWFsV2hlZWxEZWx0YSA9IG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0
ZTo6R2xpZGluZyA/IGF2ZXJhZ2VJbml0aWFsV2hlZWxEZWx0YSgpIDogMDsKICAgICBMYXlvdXRV
bml0IHByb2plY3RlZFNjcm9sbERlc3RpbmF0aW9uID0gbmV3U3RhdGUgPT0gU2Nyb2xsU25hcFN0
YXRlOjpHbGlkaW5nID8gbV9iZWdpblRyYWNraW5nV2hlZWxEZWx0YU9mZnNldCArIExheW91dFVu
aXQocHJvamVjdGVkSW5lcnRpYWxTY3JvbGxEaXN0YW5jZShpbml0aWFsV2hlZWxEZWx0YSkpIDog
b2Zmc2V0OwogICAgIHByb2plY3RlZFNjcm9sbERlc3RpbmF0aW9uID0gc3RkOjptaW4oc3RkOjpt
YXgocHJvamVjdGVkU2Nyb2xsRGVzdGluYXRpb24sIG1fc25hcE9mZnNldHMtPmZpcnN0KCkpLCBt
X3NuYXBPZmZzZXRzLT5sYXN0KCkpOwpAQCAtMjAzLDcgKzIwMyw3IEBAIHZvaWQgQXhpc1Njcm9s
bFNuYXBBbmltYXRvcjo6ZW5kU2Nyb2xsU24KIC8vIHJlbGF0aW9uc2hpcCBvZiB0aGUgZGlzdGFu
Y2UgdHJhdmVsZWQsIGNsYW1wZWQgYnkgYXJiaXRyYXJ5IG1pbiBhbmQgbWF4IHZhbHVlcy4KIGZs
b2F0IEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmNvbXB1dGVTbmFwRGVsdGEoKSBjb25zdAogewot
ICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldEluQXhpcyhtX2F4
aXMpOworICAgIExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhp
cyhtX2F4aXMpOwogICAgIGJvb2wgY2FuQ29tcHV0ZVNuYXAgPSAgKG1faW5pdGlhbE9mZnNldCA8
PSBvZmZzZXQgJiYgb2Zmc2V0IDwgbV90YXJnZXRPZmZzZXQpIHx8IChtX3RhcmdldE9mZnNldCA8
IG9mZnNldCAmJiBvZmZzZXQgPD0gbV9pbml0aWFsT2Zmc2V0KTsKICAgICBpZiAobV9jdXJyZW50
U3RhdGUgIT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyB8fCAhY2FuQ29tcHV0ZVNuYXApCiAg
ICAgICAgIHJldHVybiAwOwpAQCAtMjM3LDcgKzIzNyw3IEBAIGZsb2F0IEF4aXNTY3JvbGxTbmFw
QW5pbWF0b3I6OmNvbXB1dGVTbmEKIC8vIGFuZCBWRi4gVGh1cywgd2UgY2FuIGV4cHJlc3Mgb3Vy
IGdsaWRpbmcgZXF1YXRpb24gYWxsIGluIHRlcm1zIG9mIFYwLCBWRiBhbmQgdC4KIGZsb2F0IEF4
aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmNvbXB1dGVHbGlkZURlbHRhKCkgY29uc3QKIHsKLSAgICBM
YXlvdXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsK
KyAgICBMYXlvdXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9h
eGlzKTsKICAgICBib29sIGNhbkNvbXB1dGVHbGlkZSA9IChtX2luaXRpYWxPZmZzZXQgPD0gb2Zm
c2V0ICYmIG9mZnNldCA8IG1fdGFyZ2V0T2Zmc2V0KSB8fCAobV90YXJnZXRPZmZzZXQgPCBvZmZz
ZXQgJiYgb2Zmc2V0IDw9IG1faW5pdGlhbE9mZnNldCk7CiAgICAgaWYgKG1fY3VycmVudFN0YXRl
ICE9IFNjcm9sbFNuYXBTdGF0ZTo6R2xpZGluZyB8fCAhY2FuQ29tcHV0ZUdsaWRlKQogICAgICAg
ICByZXR1cm4gMDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmlt
YXRvck1hYy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3Jv
bGxBbmltYXRvck1hYy5oCShyZXZpc2lvbiAxODA4OTQpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMuaAkod29ya2luZyBjb3B5KQpAQCAtMzIsNyArMzIs
NiBAQAogI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKICNp
bmNsdWRlICJTY3JvbGxBbmltYXRvci5oIgotI2luY2x1ZGUgIlNjcm9sbENvbnRyb2xsZXIuaCIK
ICNpbmNsdWRlICJUaW1lci5oIgogI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KIApAQCAtNDIs
MTUgKzQxLDExIEBAIE9CSkNfQ0xBU1MgV2ViU2Nyb2xsYmFyUGFpbnRlckRlbGVnYXRlOwogCiB0
eXBlZGVmIGlkIFNjcm9sbGJhclBhaW50ZXJDb250cm9sbGVyOwogCi0jaWYgIUVOQUJMRShSVUJC
RVJfQkFORElORykKLWNsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgeyB9OwotI2VuZGlmCi0K
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgU2Nyb2xsYmFyOwogCi1jbGFzcyBTY3JvbGxB
bmltYXRvck1hYyA6IHB1YmxpYyBTY3JvbGxBbmltYXRvciwgcHJpdmF0ZSBTY3JvbGxDb250cm9s
bGVyQ2xpZW50IHsKK2NsYXNzIFNjcm9sbEFuaW1hdG9yTWFjIDogcHVibGljIFNjcm9sbEFuaW1h
dG9yIHsKIAogcHVibGljOgogICAgIFNjcm9sbEFuaW1hdG9yTWFjKFNjcm9sbGFibGVBcmVhJik7
CkBAIC0xNTAsMTcgKzE0NSwxMSBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgV2ViQ29yZTo6SW50
UG9pbnQgYWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9p
ZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZs
b2F0U2l6ZSYpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShj
b25zdCBGbG9hdFNpemUmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTbmFwUnVi
YmVyYmFuZFRpbWVyKCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVy
YmFuZFRpbWVyKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0
aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpIG92ZXJyaWRlOwogCiAgICAgYm9vbCBwaW5uZWRJbkRp
cmVjdGlvbihmbG9hdCBkZWx0YVgsIGZsb2F0IGRlbHRhWSk7Ci0gICAgdm9pZCBzbmFwUnViYmVy
QmFuZFRpbWVyRmlyZWQoKTsKIAogICAgIGJvb2wgaXNBbHJlYWR5UGlubmVkSW5EaXJlY3Rpb25P
Zkdlc3R1cmUoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiwgU2Nyb2xsRXZlbnRBeGlzKTsKLQot
ICAgIFNjcm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVyOwotICAgIFRpbWVyIG1fc25h
cFJ1YmJlckJhbmRUaW1lcjsKICNlbmRpZgogCiAgICAgYm9vbCBtX2hhdmVTY3JvbGxlZFNpbmNl
UGFnZUxvYWQ7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0
b3JNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9s
bEFuaW1hdG9yTWFjLm1tCShyZXZpc2lvbiAxODA4OTQpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTY0MywxMCAr
NjQzLDYgQEAgU2Nyb2xsQW5pbWF0b3JNYWM6OlNjcm9sbEFuaW1hdG9yTWFjKFNjcgogICAgIDog
U2Nyb2xsQW5pbWF0b3Ioc2Nyb2xsYWJsZUFyZWEpCiAgICAgLCBtX2luaXRpYWxTY3JvbGxiYXJQ
YWludFRpbWVyKCp0aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6OmluaXRpYWxTY3JvbGxiYXJQYWlu
dFRpbWVyRmlyZWQpCiAgICAgLCBtX3NlbmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXIoKnRoaXMs
ICZTY3JvbGxBbmltYXRvck1hYzo6c2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lckZpcmVkKQot
I2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLSAgICAsIG1fc2Nyb2xsQ29udHJvbGxlcih0aGlz
KQotICAgICwgbV9zbmFwUnViYmVyQmFuZFRpbWVyKCp0aGlzLCAmU2Nyb2xsQW5pbWF0b3JNYWM6
OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCkKLSNlbmRpZgogICAgICwgbV9oYXZlU2Nyb2xsZWRT
aW5jZVBhZ2VMb2FkKGZhbHNlKQogICAgICwgbV9uZWVkc1Njcm9sbGVyU3R5bGVVcGRhdGUoZmFs
c2UpCiB7CkBAIC0xMjcwLDIxICsxMjY2LDYgQEAgdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6aW1t
ZWRpYXRlU2Nyb2xsQgogICAgIG1fY3VycmVudFBvc1kgPSBuZXdQb3MueSgpOwogICAgIG5vdGlm
eVBvc2l0aW9uQ2hhbmdlZChhZGp1c3RlZERlbHRhKTsKIH0KLQotdm9pZCBTY3JvbGxBbmltYXRv
ck1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkKLXsKLSAgICBtX3NuYXBSdWJiZXJCYW5k
VGltZXIuc3RhcnRSZXBlYXRpbmcoMS4wIC8gNjAuMCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0
b3JNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKLXsKLSAgICBtX3NuYXBSdWJiZXJCYW5k
VGltZXIuc3RvcCgpOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjpzbmFwUnViYmVyQmFu
ZFRpbWVyRmlyZWQoKQotewotICAgIG1fc2Nyb2xsQ29udHJvbGxlci5zbmFwUnViYmVyQmFuZFRp
bWVyRmlyZWQoKTsKLX0KICNlbmRpZgogCiB2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjp1cGRhdGVT
Y3JvbGxlclN0eWxlKCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxD
b250cm9sbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Nj
cm9sbENvbnRyb2xsZXIuaAkocmV2aXNpb24gMTgwODk0KQorKysgU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMSwxMDcgKzAs
MCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0g
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgU2Nyb2xsQ29udHJvbGxlcl9oCi0jZGVmaW5lIFNj
cm9sbENvbnRyb2xsZXJfaAotCi0jaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotCi0jaW5jbHVk
ZSAiRmxvYXRQb2ludC5oIgotI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgotI2luY2x1ZGUgIlNjcm9s
bFR5cGVzLmgiCi0jaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50OwotCi1jbGFzcyBTY3JvbGxDb250cm9s
bGVyQ2xpZW50IHsKLXByb3RlY3RlZDoKLSAgICB2aXJ0dWFsIH5TY3JvbGxDb250cm9sbGVyQ2xp
ZW50KCkgeyB9Ci0KLXB1YmxpYzoKLSAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzSG9yaXpvbnRhbFN0
cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JikgPSAwOwotICAgIHZpcnR1YWwgYm9v
bCBhbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JikgPSAw
OwotICAgIHZpcnR1YWwgSW50U2l6ZSBzdHJldGNoQW1vdW50KCkgPSAwOwotICAgIHZpcnR1YWwg
Ym9vbCBwaW5uZWRJbkRpcmVjdGlvbihjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVh
bCBib29sIGNhblNjcm9sbEhvcml6b250YWxseSgpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgY2Fu
U2Nyb2xsVmVydGljYWxseSgpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkUnViYmVyQmFu
ZEluRGlyZWN0aW9uKFNjcm9sbERpcmVjdGlvbikgPSAwOwotCi0gICAgLy8gUmV0dXJuIHRoZSBh
YnNvbHV0ZSBzY3JvbGwgcG9zaXRpb24sIG5vdCByZWxhdGl2ZSB0byB0aGUgc2Nyb2xsIG9yaWdp
bi4KLSAgICB2aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50IGFic29sdXRlU2Nyb2xsUG9zaXRpb24o
KSA9IDA7Ci0KLSAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRT
aXplJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250
ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFsIHZv
aWQgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBzdG9w
U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKLQotICAgIC8vIElmIHRoZSBjdXJyZW50IHNjcm9s
bCBwb3NpdGlvbiBpcyB3aXRoaW4gdGhlIG92ZXJoYW5nIGFyZWEsIHRoaXMgZnVuY3Rpb24gd2ls
bCBjYXVzZQotICAgIC8vIHRoZSBwYWdlIHRvIHNjcm9sbCB0byB0aGUgbmVhcmVzdCBib3VuZGFy
eSBwb2ludC4KLSAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lm
TmVjZXNzYXJ5KCkgPSAwOwotfTsKLQotY2xhc3MgU2Nyb2xsQ29udHJvbGxlciB7Ci0gICAgV1RG
X01BS0VfTk9OQ09QWUFCTEUoU2Nyb2xsQ29udHJvbGxlcik7Ci0KLXB1YmxpYzoKLSAgICBleHBs
aWNpdCBTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqKTsKLQotICAgIGJv
b2wgaGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKLSAgICB2b2lk
IHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwotCi0gICAgYm9vbCBpc1J1YmJlckJhbmRJblBy
b2dyZXNzKCkgY29uc3Q7Ci0KLXByaXZhdGU6Ci0gICAgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRU
aW1lcigpOwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmQoKTsKLQotICAgIGJvb2wgc2hvdWxkUnVi
YmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsK
LQotICAgIFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIG1fY2xpZW50OwotCi0gICAgYm9vbCBtX2lu
U2Nyb2xsR2VzdHVyZTsKLSAgICBib29sIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzOwotICAg
IGJvb2wgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHM7Ci0gICAgCi0gICAgQ0ZUaW1lSW50ZXJ2YWwg
bV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Ci0gICAgRmxvYXRTaXplIG1fb3ZlcmZsb3dT
Y3JvbGxEZWx0YTsKLSAgICBGbG9hdFNpemUgbV9zdHJldGNoU2Nyb2xsRm9yY2U7Ci0gICAgRmxv
YXRTaXplIG1fbW9tZW50dW1WZWxvY2l0eTsKLQotICAgIC8vIFJ1YmJlciBiYW5kIHN0YXRlLgot
ICAgIENGVGltZUludGVydmFsIG1fc3RhcnRUaW1lOwotICAgIEZsb2F0U2l6ZSBtX3N0YXJ0U3Ry
ZXRjaDsKLSAgICBGbG9hdFBvaW50IG1fb3JpZ09yaWdpbjsKLSAgICBGbG9hdFNpemUgbV9vcmln
VmVsb2NpdHk7Ci0KLSAgICBib29sIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlOwotfTsK
LQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5E
SU5HKQotCi0jZW5kaWYgLy8gU2Nyb2xsQ29udHJvbGxlcl9oCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbQkocmV2aXNpb24gMTgwODk0
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW0JKHdv
cmtpbmcgY29weSkKQEAgLTEsNDA2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEs
IDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdF
UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNp
bmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCi0KLSNpbmNs
dWRlICJQbGF0Zm9ybVdoZWVsRXZlbnQuaCIKLSNpbmNsdWRlICJXZWJDb3JlU3lzdGVtSW50ZXJm
YWNlLmgiCi0jaW5jbHVkZSA8c3lzL3N5c2N0bC5oPgotI2luY2x1ZGUgPHN5cy90aW1lLmg+Ci0K
LSNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0KLXN0YXRpYyBOU1RpbWVJbnRlcnZhbCBzeXN0
ZW1VcHRpbWUoKQotewotICAgIGlmIChbW05TUHJvY2Vzc0luZm8gcHJvY2Vzc0luZm9dIHJlc3Bv
bmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc3lzdGVtVXB0aW1lKV0pCi0gICAgICAgIHJldHVybiBb
W05TUHJvY2Vzc0luZm8gcHJvY2Vzc0luZm9dIHN5c3RlbVVwdGltZV07Ci0KLSAgICAvLyBHZXQg
aG93IGxvbmcgc3lzdGVtIGhhcyBiZWVuIHVwLiBGb3VuZCBieSBsb29raW5nIGdldHRpbmcgImJv
b3R0aW1lIiBmcm9tIHRoZSBrZXJuZWwuCi0gICAgc3RhdGljIHN0cnVjdCB0aW1ldmFsIGJvb3R0
aW1lID0gezAsIDB9OwotICAgIGlmICghYm9vdHRpbWUudHZfc2VjKSB7Ci0gICAgICAgIGludCBt
aWJbMl0gPSB7Q1RMX0tFUk4sIEtFUk5fQk9PVFRJTUV9OwotICAgICAgICBzaXplX3Qgc2l6ZSA9
IHNpemVvZihib290dGltZSk7Ci0gICAgICAgIGlmICgtMSA9PSBzeXNjdGwobWliLCAyLCAmYm9v
dHRpbWUsICZzaXplLCAwLCAwKSkKLSAgICAgICAgICAgIGJvb3R0aW1lLnR2X3NlYyA9IDA7Ci0g
ICAgfQotICAgIHN0cnVjdCB0aW1ldmFsIG5vdzsKLSAgICBpZiAoYm9vdHRpbWUudHZfc2VjICYm
IC0xICE9IGdldHRpbWVvZmRheSgmbm93LCAwKSkgewotICAgICAgICBzdHJ1Y3QgdGltZXZhbCB1
cHRpbWU7Ci0gICAgICAgIHRpbWVyc3ViKCZub3csICZib290dGltZSwgJnVwdGltZSk7Ci0gICAg
ICAgIE5TVGltZUludGVydmFsIHJlc3VsdCA9IHVwdGltZS50dl9zZWMgKyAodXB0aW1lLnR2X3Vz
ZWMgLyAxRSs2KTsKLSAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICB9Ci0gICAgcmV0dXJuIDA7
Ci19Ci0KLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1zdGF0aWMgY29uc3QgZmxvYXQgc2Nyb2xs
VmVsb2NpdHlaZXJvaW5nVGltZW91dCA9IDAuMTBmOwotc3RhdGljIGNvbnN0IGZsb2F0IHJ1YmJl
cmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvID0gMTsKLXN0YXRpYyBjb25zdCBmbG9hdCBy
dWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoID0gMTA7Ci0KLXN0YXRp
YyBmbG9hdCBlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEoZmxvYXQgaW5pdGlhbFBvc2l0aW9uLCBm
bG9hdCBpbml0aWFsVmVsb2NpdHksIGZsb2F0IGVsYXBzZWRUaW1lKQotewotICAgIHJldHVybiB3
a05TRWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKGluaXRpYWxQb3NpdGlvbiwgaW5pdGlhbFZlbG9j
aXR5LCBlbGFwc2VkVGltZSk7Ci19Ci0KLXN0YXRpYyBmbG9hdCBlbGFzdGljRGVsdGFGb3JSZWJv
dW5kRGVsdGEoZmxvYXQgZGVsdGEpCi17Ci0gICAgcmV0dXJuIHdrTlNFbGFzdGljRGVsdGFGb3JS
ZWJvdW5kRGVsdGEoZGVsdGEpOwotfQotCi1zdGF0aWMgZmxvYXQgcmVib3VuZERlbHRhRm9yRWxh
c3RpY0RlbHRhKGZsb2F0IGRlbHRhKQotewotICAgIHJldHVybiB3a05TUmVib3VuZERlbHRhRm9y
RWxhc3RpY0RlbHRhKGRlbHRhKTsKLX0KLQotc3RhdGljIGZsb2F0IHNjcm9sbFdoZWVsTXVsdGlw
bGllcigpCi17Ci0gICAgc3RhdGljIGZsb2F0IG11bHRpcGxpZXIgPSAtMTsKLSAgICBpZiAobXVs
dGlwbGllciA8IDApIHsKLSAgICAgICAgbXVsdGlwbGllciA9IFtbTlNVc2VyRGVmYXVsdHMgc3Rh
bmRhcmRVc2VyRGVmYXVsdHNdIGZsb2F0Rm9yS2V5OkAiTlNTY3JvbGxXaGVlbE11bHRpcGxpZXIi
XTsKLSAgICAgICAgaWYgKG11bHRpcGxpZXIgPD0gMCkKLSAgICAgICAgICAgIG11bHRpcGxpZXIg
PSAxOwotICAgIH0KLSAgICByZXR1cm4gbXVsdGlwbGllcjsKLX0KLQotU2Nyb2xsQ29udHJvbGxl
cjo6U2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBjbGllbnQpCi0gICAg
OiBtX2NsaWVudChjbGllbnQpCi0gICAgLCBtX2luU2Nyb2xsR2VzdHVyZShmYWxzZSkKLSAgICAs
IG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKGZhbHNlKQotICAgICwgbV9pZ25vcmVNb21lbnR1
bVNjcm9sbHMoZmFsc2UpCi0gICAgLCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQot
ICAgICwgbV9zdGFydFRpbWUoMCkKLSAgICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZl
KGZhbHNlKQotewotfQotCi1ib29sIFNjcm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQo
Y29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQotewotICAgIGlmICh3aGVlbEV2
ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbikgewotICAgICAgICAv
LyBGaXJzdCwgY2hlY2sgaWYgd2Ugc2hvdWxkIHJ1YmJlci1iYW5kIGF0IGFsbC4KLSAgICAgICAg
aWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoLXdoZWVsRXZlbnQuZGVs
dGFYKCksIDApKQotICAgICAgICAgICAgJiYgIXNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxE
aXJlY3Rpb24od2hlZWxFdmVudCkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICAg
ICAgbV9pblNjcm9sbEdlc3R1cmUgPSB0cnVlOwotICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Q
cm9ncmVzcyA9IGZhbHNlOwotICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNl
OwotICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IDA7Ci0gICAgICAgIG1f
bW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgICAgIEludFNpemUgc3RyZXRj
aEFtb3VudCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0gICAgICAgIG1fc3RyZXRjaFNj
cm9sbEZvcmNlLnNldFdpZHRoKHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShzdHJldGNoQW1v
dW50LndpZHRoKCkpKTsKLSAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJl
Ym91bmREZWx0YUZvckVsYXN0aWNEZWx0YShzdHJldGNoQW1vdW50LmhlaWdodCgpKSk7Ci0gICAg
ICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgICAgIHN0b3BT
bmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0KLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotCi0g
ICAgaWYgKHdoZWVsRXZlbnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVk
KSB7Ci0gICAgICAgIHNuYXBSdWJiZXJCYW5kKCk7Ci0gICAgICAgIHJldHVybiB0cnVlOwotICAg
IH0KLQotICAgIGJvb2wgaXNNb21lbnR1bVNjcm9sbEV2ZW50ID0gKHdoZWVsRXZlbnQubW9tZW50
dW1QaGFzZSgpICE9IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlTm9uZSk7Ci0gICAgaWYgKG1faWdu
b3JlTW9tZW50dW1TY3JvbGxzICYmIChpc01vbWVudHVtU2Nyb2xsRXZlbnQgfHwgbV9zbmFwUnVi
YmVyYmFuZFRpbWVySXNBY3RpdmUpKSB7Ci0gICAgICAgIGlmICh3aGVlbEV2ZW50Lm1vbWVudHVt
UGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVkKSB7Ci0gICAgICAgICAgICBt
X2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOwotICAgICAgICAgICAgcmV0dXJuIHRydWU7
Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0KLQotICAgIGZsb2F0IGRl
bHRhWCA9IG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpOwotICAgIGZsb2F0IGRlbHRhWSA9
IG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKTsKLQotICAgIC8vIFJlc2V0IG92ZXJmbG93
IHZhbHVlcyBiZWNhdXNlIHdlIG1heSBkZWNpZGUgdG8gcmVtb3ZlIGRlbHRhIGF0IHZhcmlvdXMg
cG9pbnRzIGFuZCBwdXQgaXQgaW50byBvdmVyZmxvdy4KLSAgICBtX292ZXJmbG93U2Nyb2xsRGVs
dGEgPSBGbG9hdFNpemUoKTsKLQotICAgIEludFNpemUgc3RyZXRjaEFtb3VudCA9IG1fY2xpZW50
LT5zdHJldGNoQW1vdW50KCk7Ci0gICAgYm9vbCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgPSBzdHJl
dGNoQW1vdW50LmhlaWdodCgpOwotICAgIGJvb2wgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgPSBz
dHJldGNoQW1vdW50LndpZHRoKCk7Ci0KLSAgICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWDsK
LSAgICBmbG9hdCBldmVudENvYWxlc2NlZERlbHRhWTsKLQotICAgIGlmIChpc1ZlcnRpY2FsbHlT
dHJldGNoZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKLSAgICAgICAgZXZlbnRDb2Fs
ZXNjZWREZWx0YVggPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFYKCk7
Ci0gICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRl
ZFNjcm9sbGluZ0RlbHRhWSgpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGV2ZW50Q29hbGVzY2Vk
RGVsdGFYID0gLXdoZWVsRXZlbnQuZGVsdGFYKCk7Ci0gICAgICAgIGV2ZW50Q29hbGVzY2VkRGVs
dGFZID0gLXdoZWVsRXZlbnQuZGVsdGFZKCk7Ci0gICAgfQotCi0gICAgZGVsdGFYICs9IGV2ZW50
Q29hbGVzY2VkRGVsdGFYOwotICAgIGRlbHRhWSArPSBldmVudENvYWxlc2NlZERlbHRhWTsKLQot
ICAgIC8vIFNsaWdodGx5IHByZWZlciBzY3JvbGxpbmcgdmVydGljYWxseSBieSBhcHBseWluZyB0
aGUgPSBjYXNlIHRvIGRlbHRhWQotICAgIGlmIChmYWJzZihkZWx0YVkpID49IGZhYnNmKGRlbHRh
WCkpCi0gICAgICAgIGRlbHRhWCA9IDA7Ci0gICAgZWxzZQotICAgICAgICBkZWx0YVkgPSAwOwot
Ci0gICAgYm9vbCBzaG91bGRTdHJldGNoID0gZmFsc2U7Ci0KLSAgICBQbGF0Zm9ybVdoZWVsRXZl
bnRQaGFzZSBtb21lbnR1bVBoYXNlID0gd2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCk7Ci0KLSAg
ICAvLyBJZiB3ZSBhcmUgc3RhcnRpbmcgbW9tZW50dW0gc2Nyb2xsaW5nIHRoZW4gZG8gc29tZSBz
ZXR1cC4KLSAgICBpZiAoIW1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzICYmIChtb21lbnR1bVBo
YXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4gfHwgbW9tZW50dW1QaGFzZSA9PSBQ
bGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUNoYW5nZWQpKQotICAgICAgICBtX21vbWVudHVtU2Nyb2xs
SW5Qcm9ncmVzcyA9IHRydWU7Ci0KLSAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSB3aGVl
bEV2ZW50LnRpbWVzdGFtcCgpIC0gbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7Ci0gICAg
aWYgKG1faW5TY3JvbGxHZXN0dXJlIHx8IG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7Ci0g
ICAgICAgIGlmIChtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCAmJiB0aW1lRGVsdGEgPiAw
ICYmIHRpbWVEZWx0YSA8IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQpIHsKLSAgICAgICAg
ICAgIG1fbW9tZW50dW1WZWxvY2l0eS5zZXRXaWR0aChldmVudENvYWxlc2NlZERlbHRhWCAvIChm
bG9hdCl0aW1lRGVsdGEpOwotICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldEhlaWdo
dChldmVudENvYWxlc2NlZERlbHRhWSAvIChmbG9hdCl0aW1lRGVsdGEpOwotICAgICAgICAgICAg
bV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSB3aGVlbEV2ZW50LnRpbWVzdGFtcCgpOwot
ICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3Rh
bXAgPSB3aGVlbEV2ZW50LnRpbWVzdGFtcCgpOwotICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9j
aXR5ID0gRmxvYXRTaXplKCk7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAoaXNWZXJ0aWNhbGx5
U3RyZXRjaGVkKSB7Ci0gICAgICAgICAgICBpZiAoIWlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkICYm
IG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCAwKSkpIHsKLSAg
ICAgICAgICAgICAgICAvLyBTdHJldGNoaW5nIG9ubHkgaW4gdGhlIHZlcnRpY2FsLgotICAgICAg
ICAgICAgICAgIGlmIChkZWx0YVkgJiYgKGZhYnNmKGRlbHRhWCAvIGRlbHRhWSkgPCBydWJiZXJi
YW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbykpCi0gICAgICAgICAgICAgICAgICAgIGRlbHRh
WCA9IDA7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVsdGFYKSA8IHJ1YmJlcmJh
bmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKLSAgICAgICAgICAgICAgICAg
ICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53
aWR0aCgpICsgZGVsdGFYKTsKLSAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKLSAgICAg
ICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERl
bHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIGlmIChpc0hvcml6b250YWxseVN0cmV0Y2hlZCkg
ewotICAgICAgICAgICAgLy8gU3RyZXRjaGluZyBvbmx5IGluIHRoZSBob3Jpem9udGFsLgotICAg
ICAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoMCwgZGVs
dGFZKSkpIHsKLSAgICAgICAgICAgICAgICBpZiAoZGVsdGFYICYmIChmYWJzZihkZWx0YVkgLyBk
ZWx0YVgpIDwgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8pKQotICAgICAgICAg
ICAgICAgICAgICBkZWx0YVkgPSAwOwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZhYnNmKGRl
bHRhWSkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRIZWlnaHQobV9vdmVy
Zmxvd1Njcm9sbERlbHRhLmhlaWdodCgpICsgZGVsdGFZKTsKLSAgICAgICAgICAgICAgICAgICAg
ZGVsdGFZID0gMDsKLSAgICAgICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAg
bV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVp
Z2h0KCkgKyBkZWx0YVkpOwotICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgewotICAgICAg
ICAgICAgLy8gTm90IHN0cmV0Y2hpbmcgYXQgYWxsIHlldC4KLSAgICAgICAgICAgIGlmIChtX2Ns
aWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgZGVsdGFZKSkpIHsKLSAg
ICAgICAgICAgICAgICBpZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJzZihkZWx0YVgpKSB7Ci0gICAg
ICAgICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1
aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgewotICAgICAgICAgICAgICAgICAgICAgICAgbV9vdmVy
Zmxvd1Njcm9sbERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsg
ZGVsdGFYKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7Ci0gICAgICAgICAg
ICAgICAgICAgIH0gZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9s
bERlbHRhLnNldFdpZHRoKG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS53aWR0aCgpICsgZGVsdGFYKTsK
LSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgc2hvdWxkU3RyZXRjaCA9IHRydWU7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoZGVsdGFYIHx8IGRl
bHRhWSkgewotICAgICAgICBpZiAoIShzaG91bGRTdHJldGNoIHx8IGlzVmVydGljYWxseVN0cmV0
Y2hlZCB8fCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCkpIHsKLSAgICAgICAgICAgIGlmIChkZWx0
YVkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVkgKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7
Ci0gICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5KEZsb2F0U2l6ZSgw
LCBkZWx0YVkpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChkZWx0YVgpIHsKLSAg
ICAgICAgICAgICAgICBkZWx0YVggKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7Ci0gICAgICAg
ICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5KEZsb2F0U2l6ZShkZWx0YVgsIDAp
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlmICghbV9j
bGllbnQtPmFsbG93c0hvcml6b250YWxTdHJldGNoaW5nKHdoZWVsRXZlbnQpKSB7Ci0gICAgICAg
ICAgICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgICAgICBldmVudENvYWxlc2NlZERlbHRh
WCA9IDA7Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKGRlbHRhWCAmJiAhaXNIb3Jpem9udGFsbHlT
dHJldGNoZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFY
LCAwKSkpIHsKLSAgICAgICAgICAgICAgICBkZWx0YVggKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVy
KCk7Ci0KLSAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0
Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGFYLCAwKSk7Ci0gICAgICAgICAg
ICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgaWYgKCFtX2Ns
aWVudC0+YWxsb3dzVmVydGljYWxTdHJldGNoaW5nKHdoZWVsRXZlbnQpKSB7Ci0gICAgICAgICAg
ICAgICAgZGVsdGFZID0gMDsKLSAgICAgICAgICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9
IDA7Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKGRlbHRhWSAmJiAhaXNWZXJ0aWNhbGx5U3RyZXRj
aGVkICYmICFtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkp
KSB7Ci0gICAgICAgICAgICAgICAgZGVsdGFZICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwot
Ci0gICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRl
bnRFZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKDAsIGRlbHRhWSkpOwotICAgICAgICAgICAgICAg
IGRlbHRhWSA9IDA7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIEludFNpemUgc3RyZXRj
aEFtb3VudCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0KLSAgICAgICAgICAgIGlmICht
X21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykgewotICAgICAgICAgICAgICAgIGlmICgobV9jbGll
bnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShldmVudENvYWxlc2NlZERlbHRhWCwgZXZl
bnRDb2FsZXNjZWREZWx0YVkpKSB8fCAoZmFic2YoZXZlbnRDb2FsZXNjZWREZWx0YVgpICsgZmFi
c2YoZXZlbnRDb2FsZXNjZWREZWx0YVkpIDw9IDApKSAmJiBtX2xhc3RNb21lbnR1bVNjcm9sbFRp
bWVzdGFtcCkgewotICAgICAgICAgICAgICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9
IHRydWU7Ci0gICAgICAgICAgICAgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0g
ZmFsc2U7Ci0gICAgICAgICAgICAgICAgICAgIHNuYXBSdWJiZXJCYW5kKCk7Ci0gICAgICAgICAg
ICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3Jj
ZS5zZXRXaWR0aChtX3N0cmV0Y2hTY3JvbGxGb3JjZS53aWR0aCgpICsgZGVsdGFYKTsKLSAgICAg
ICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChtX3N0cmV0Y2hTY3JvbGxGb3Jj
ZS5oZWlnaHQoKSArIGRlbHRhWSk7Ci0KLSAgICAgICAgICAgIEZsb2F0U2l6ZSBkYW1wZWREZWx0
YShjZWlsZihlbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEobV9zdHJldGNoU2Nyb2xsRm9yY2Uu
d2lkdGgoKSkpLCBjZWlsZihlbGFzdGljRGVsdGFGb3JSZWJvdW5kRGVsdGEobV9zdHJldGNoU2Ny
b2xsRm9yY2UuaGVpZ2h0KCkpKSk7Ci0KLSAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVT
Y3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGRhbXBlZERlbHRhIC0gc3RyZXRj
aEFtb3VudCk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAobV9tb21lbnR1bVNjcm9sbElu
UHJvZ3Jlc3MgJiYgbW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUVuZGVk
KSB7Ci0gICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gZmFsc2U7Ci0gICAgICAg
IG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7Ci0gICAgICAgIG1fbGFzdE1vbWVudHVt
U2Nyb2xsVGltZXN0YW1wID0gMDsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotc3Rh
dGljIGlubGluZSBmbG9hdCByb3VuZFRvd2FyZFplcm8oZmxvYXQgbnVtKQotewotICAgIHJldHVy
biBudW0gPiAwID8gY2VpbGYobnVtIC0gMC41ZikgOiBmbG9vcmYobnVtICsgMC41Zik7Ci19Ci0K
LXN0YXRpYyBpbmxpbmUgZmxvYXQgcm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhmbG9hdCBu
dW0pCi17Ci0gICAgZmxvYXQgcm91bmRlZE51bSA9IHJvdW5kZihudW0pOwotICAgIGlmIChmYWJz
KG51bSAtIHJvdW5kZWROdW0pIDwgMC4xMjUpCi0gICAgICAgIG51bSA9IHJvdW5kZWROdW07Ci0K
LSAgICByZXR1cm4gcm91bmRUb3dhcmRaZXJvKG51bSk7Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJv
bGxlcjo6c25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCkKLXsKLSAgICBpZiAoIW1fbW9tZW50dW1T
Y3JvbGxJblByb2dyZXNzIHx8IG1faWdub3JlTW9tZW50dW1TY3JvbGxzKSB7Ci0gICAgICAgIENG
VGltZUludGVydmFsIHRpbWVEZWx0YSA9IFtOU0RhdGUgdGltZUludGVydmFsU2luY2VSZWZlcmVu
Y2VEYXRlXSAtIG1fc3RhcnRUaW1lOwotCi0gICAgICAgIGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBG
bG9hdFNpemUoKSkgewotICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBtX2NsaWVudC0+c3Ry
ZXRjaEFtb3VudCgpOwotICAgICAgICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZsb2F0U2l6
ZSgpKSB7Ci0gICAgICAgICAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLQotICAg
ICAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlID0gRmxvYXRTaXplKCk7Ci0gICAgICAg
ICAgICAgICAgbV9zdGFydFRpbWUgPSAwOwotICAgICAgICAgICAgICAgIG1fc3RhcnRTdHJldGNo
ID0gRmxvYXRTaXplKCk7Ci0gICAgICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2lu
dCgpOwotICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBtX29yaWdP
cmlnaW4gPSBtX2NsaWVudC0+YWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpIC0gbV9zdGFydFN0cmV0
Y2g7Ci0gICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IG1fbW9tZW50dW1WZWxvY2l0eTsKLQot
ICAgICAgICAgICAgLy8gSnVzdCBsaWtlIG5vcm1hbCBzY3JvbGxpbmcsIHByZWZlciB2ZXJ0aWNh
bCBydWJiZXJiYW5kaW5nCi0gICAgICAgICAgICBpZiAoZmFic2YobV9vcmlnVmVsb2NpdHkuaGVp
Z2h0KCkpID49IGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LndpZHRoKCkpKQotICAgICAgICAgICAgICAg
IG1fb3JpZ1ZlbG9jaXR5LnNldFdpZHRoKDApOwotCi0gICAgICAgICAgICAvLyBEb24ndCBydWJi
ZXItYmFuZCBob3Jpem9udGFsbHkgaWYgaXQncyBub3QgcG9zc2libGUgdG8gc2Nyb2xsIGhvcml6
b250YWxseQotICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Nyb2xsSG9yaXpvbnRhbGx5
KCkpCi0gICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7Ci0KLSAgICAg
ICAgICAgIC8vIERvbid0IHJ1YmJlci1iYW5kIHZlcnRpY2FsbHkgaWYgaXQncyBub3QgcG9zc2li
bGUgdG8gc2Nyb2xsIHZlcnRpY2FsbHkKLSAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmNhblNj
cm9sbFZlcnRpY2FsbHkoKSkKLSAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRIZWln
aHQoMCk7Ci0gICAgICAgIH0KLQotICAgICAgICBGbG9hdFBvaW50IGRlbHRhKHJvdW5kVG9EZXZp
Y2VQaXhlbFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKG1fc3RhcnRTdHJldGNo
LndpZHRoKCksIC1tX29yaWdWZWxvY2l0eS53aWR0aCgpLCAoZmxvYXQpdGltZURlbHRhKSksCi0g
ICAgICAgICAgICByb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGVsYXN0aWNEZWx0YUZvclRp
bWVEZWx0YShtX3N0YXJ0U3RyZXRjaC5oZWlnaHQoKSwgLW1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgp
LCAoZmxvYXQpdGltZURlbHRhKSkpOwotCi0gICAgICAgIGlmIChmYWJzKGRlbHRhLngoKSkgPj0g
MSB8fCBmYWJzKGRlbHRhLnkoKSkgPj0gMSkgewotICAgICAgICAgICAgbV9jbGllbnQtPmltbWVk
aWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKGRlbHRh
LngoKSwgZGVsdGEueSgpKSAtIG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCkpOwotCi0gICAgICAg
ICAgICBGbG9hdFNpemUgbmV3U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7Ci0K
LSAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldFdpZHRoKHJlYm91bmREZWx0YUZv
ckVsYXN0aWNEZWx0YShuZXdTdHJldGNoLndpZHRoKCkpKTsKLSAgICAgICAgICAgIG1fc3RyZXRj
aFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEobmV3U3Ry
ZXRjaC5oZWlnaHQoKSkpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgbV9jbGllbnQt
PmFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpOwotCi0gICAgICAgICAg
ICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2UgPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAgIG1fc3RhcnRUaW1lID0gMDsKLSAgICAg
ICAgICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7Ci0gICAgICAgICAgICBtX29yaWdP
cmlnaW4gPSBGbG9hdFBvaW50KCk7Ci0gICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0
U2l6ZSgpOwotICAgICAgICB9Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgbV9zdGFydFRpbWUgPSBb
TlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07Ci0gICAgICAgIG1fc3RhcnRT
dHJldGNoID0gRmxvYXRTaXplKCk7Ci0gICAgfQotfQotCi1ib29sIFNjcm9sbENvbnRyb2xsZXI6
OmlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdAotewotICAgIGlmICghbV9pblNjcm9sbEdl
c3R1cmUgJiYgIW1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzICYmICFtX3NuYXBSdWJiZXJiYW5k
VGltZXJJc0FjdGl2ZSkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgcmV0dXJuICFtX2Ns
aWVudC0+c3RyZXRjaEFtb3VudCgpLmlzWmVybygpOwotfQotCi12b2lkIFNjcm9sbENvbnRyb2xs
ZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKLXsKLSAgICBtX2NsaWVudC0+c3RvcFNuYXBS
dWJiZXJiYW5kVGltZXIoKTsKLSAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IGZh
bHNlOwotfQotCi12b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kKCkKLXsKLSAg
ICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSBzeXN0ZW1VcHRpbWUoKSAtIG1fbGFzdE1vbWVu
dHVtU2Nyb2xsVGltZXN0YW1wOwotICAgIGlmIChtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCAmJiB0aW1lRGVsdGEgPj0gc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCkKLSAgICAgICAg
bV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0KLSAgICBtX2luU2Nyb2xsR2VzdHVy
ZSA9IGZhbHNlOwotCi0gICAgaWYgKG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKQotICAg
ICAgICByZXR1cm47Ci0KLSAgICBtX3N0YXJ0VGltZSA9IFtOU0RhdGUgdGltZUludGVydmFsU2lu
Y2VSZWZlcmVuY2VEYXRlXTsKLSAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOwotICAg
IG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKLSAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0
U2l6ZSgpOwotCi0gICAgbV9jbGllbnQtPnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpOwotICAg
IG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gdHJ1ZTsKLX0KLQotYm9vbCBTY3JvbGxD
b250cm9sbGVyOjpzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKGNvbnN0IFBs
YXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKLXsKLSAgICBpZiAod2hlZWxFdmVudC5kZWx0
YVgoKSA+IDApCi0gICAgICAgIHJldHVybiBtX2NsaWVudC0+c2hvdWxkUnViYmVyQmFuZEluRGly
ZWN0aW9uKFNjcm9sbExlZnQpOwotICAgIGlmICh3aGVlbEV2ZW50LmRlbHRhWCgpIDwgMCkKLSAg
ICAgICAgcmV0dXJuIG1fY2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xs
UmlnaHQpOwotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJfQkFORElORykK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247769</attachid>
            <date>2015-03-03 10:45:04 -0800</date>
            <delta_ts>2015-03-03 16:58:40 -0800</delta_ts>
            <desc>Patch v9 (Resolves Bug 142205).</desc>
            <filename>bug-142102-20150303104447.patch</filename>
            <type>text/plain</type>
            <size>80174</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDk0MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDg3IEBACisyMDE1LTAzLTAzICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIGNoYW5nZSBpbiBmdW5jdGlvbmFsaXR5LgorCisg
ICAgICAgIERvIHNvbWUgcmVmYWN0b3Jpbmcgb2YgdGhlIHZhcmlvdXMgc2Nyb2xsaW5nIGNsYXNz
ZXM6CisgICAgICAgIDEuIENvbnNvbGlkYXRlIGFuaW1hdGlvbiB0aW1lcyB0byBSdW5Mb29wOjpU
aW1lciBpbnN0ZWFkIG9mIGEgY29tYmluYXRpb24gb2YgV2ViQ29yZTo6VGltZXIKKyAgICAgICAg
ICAgYW5kIENGUnVuTG9vcFRpbWVycy4gRG8gdGhpcyBmb3IgU2Nyb2xsIFNuYXAgUG9pbnQgYW5k
IFJ1YmJlcmJhbmQgYW5pbWF0aW9ucy4KKyAgICAgICAgMi4gTW92ZSBTY3JvbGxDb250cm9sbGVy
IGZyb20gcGxhdGZvcm0vbWFjIHRvIHBsYXRmb3JtL2NvY29hIHRvIGVuYWJsZSBzaGFyaW5nIHdp
dGggaU9TLgorICAgICAgICAzLiBNb3ZlIGNvZGUgZnJvbSBTY3JvbGxBbmltYXRvcntNYWN9IC0+
IFNjcm9sbENvbnRyb2xsZXIuCisgICAgICAgIDQuIFJlbmFtZSBzY3JvbGxPZmZzZXRJbkF4aXMg
LT4gc2Nyb2xsT2Zmc2V0T25BeGlzCisgICAgICAgIDUuIFJlbmFtZSBpbW1lZGlhdGVTY3JvbGxJ
bkF4aXMgLT4gaW1tZWRpYXRlU2Nyb2xsT25BeGlzCisKKyAgICAgICAgKiBXZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2o6IE1vdmUgU2Nyb2xsQ29udHJvbGxlciB0byAncGxhdGZvcm0v
Y29jb2EnCisgICAgICAgICogcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tOiBNYWtlIHN1cmUg
dGhlIHNjcm9sbCBjb250cm9sbGVyIGlzIG5vdGlmaWVkIG9mIGVuZC1vZi1zY3JvbGwKKyAgICAg
ICAgZXZlbnRzLCBqdXN0IGFzIGlzIGRvbmUgZm9yIHRoZSAiZXZlbnQgbm90IGhhbmRsZWQiIGNh
c2UgaW4gRXZlbnRIYW5kbGVyLmNwcC4gCisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6
OnBsYXRmb3JtQ29tcGxldGVXaGVlbEV2ZW50KToKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9t
YWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oOiBSZW1vdmUgdGltZXIgYW5k
IHNvbWUgZGVsZWdhdGUKKyAgICAgICAgbWV0aG9kcywgbm93IHRoYXQgU2Nyb2xsQ29udHJvbGxl
ciBpcyBjb250cm9sbGluZyB0aGlzIHN0YXRlLgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL21h
Yy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tOgorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6flNjcm9sbGluZ1RyZWVGcmFt
ZVNjcm9sbGluZ05vZGVNYWMpOiBXZSBubyBsb25nZXIKKyAgICAgICAgbmVlZCB0byBjbGVhbiB1
cCB0aGUgQ0ZSdW5Mb29wVGltZXIuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJh
bWVTY3JvbGxpbmdOb2RlTWFjOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcik6IE1ha2Ugc3VyZSBz
Y3JvbGwKKyAgICAgICAgc3RhdGUgaXMgdXBkYXRlZCBhZnRlciBydWJiZXIgYmFuZCBzbmFwLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c2Ny
b2xsT2Zmc2V0T25BeGlzKTogQWRkIHRlbXBvcmFyeSBzdHViIG5lZWRlZAorICAgICAgICB1bnRp
bCBCdWcxOTczIGlzIGNvbXBsZXRlZC4pLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJl
ZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjpzdGFy
dFNuYXBSdWJiZXJiYW5kVGltZXIpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9s
bEFuaW1hdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpTY3JvbGxB
bmltYXRvcik6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6cHJvY2Vzc1doZWVs
RXZlbnRGb3JTY3JvbGxTbmFwKTogSnVzdCBjYWxsIHRoZSBTY3JvbGxDb250cm9sbGVyIG1ldGhv
ZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpoYW5kbGVXaGVlbEV2ZW50KTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6dXBkYXRlU2Nyb2xsQW5p
bWF0b3JzQW5kVGltZXJzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
cjo6c2Nyb2xsT2Zmc2V0T25BeGlzKTogUmVuYW1lZCBmcm9tIHNjcm9sbE9mZnNldEluQXhpcy4K
KyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMp
OiBSZW5hbWVkIGZyb20gaW1tZWRpYXRlU2Nyb2xsSW5BeGlzLgorICAgICAgICAoV2ViQ29yZTo6
U2Nyb2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldEluQXhpcyk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpzdGFydFNjcm9sbFNuYXBUaW1lcik6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6c3RvcFNjcm9sbFNu
YXBUaW1lcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvcjo6aG9y
aXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbEFuaW1hdG9yOjp2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTogRGVsZXRlZC4K
KyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5oOgorICAgICAgICAqIHBsYXRmb3Jt
L2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaDogQ29waWVkIGZyb20gcGxhdGZvcm0vbWFjL1Njcm9s
bENvbnRyb2xsZXIuaC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXJDbGllbnQ6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250
cm9sbGVyQ2xpZW50OjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcik6CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxDb250cm9sbGVyQ2xpZW50OjpzdGFydFNjcm9sbFNuYXBUaW1lcik6CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyQ2xpZW50OjpzdG9wU2Nyb2xsU25hcFRpbWVyKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tOiBDb3BpZWQgZnJv
bSBwbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbS4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OlNjcm9sbENvbnRyb2xsZXIpOiBVcGRhdGUgdG8gaW5pdGlhbGl6ZSBu
ZXcgdGltZXJzLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6aGFuZGxlV2hl
ZWxFdmVudCk6IFVwZGF0ZSB0byBoYW5kbGUgU2Nyb2xsIFNuYXAgUG9pbnQgZXZlbnRzLgorICAg
ICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVy
KTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpzdG9wU25hcFJ1
YmJlcmJhbmRUaW1lcik6IE1hbmFnZSBhbmltYXRpb24gdGltZXJzIGxvY2FsbHksIGRvIG5vdAor
ICAgICAgICByZXF1aXJlIGNsaWVudCB0byBtYWludGFpbiB0aW1lcnMuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCk6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFw
KTogQWRkZWQuIChNb3ZlZCBmcm9tIFNjcm9sbEFuaW1hdG9yTWFjKQorICAgICAgICAoV2ViQ29y
ZTo6U2Nyb2xsQ29udHJvbGxlcjo6dXBkYXRlU2Nyb2xsQW5pbWF0b3JzQW5kVGltZXJzKTogRGl0
dG8uIEFsc28gdXBkYXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxDb250cm9sbGVyOjpzdGFydFNjcm9sbFNuYXBUaW1lcik6IERpdHRvLiBBbHNvIHVw
ZGF0ZWQgdG8gdXNlIFJ1bkxvb3A6OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29u
dHJvbGxlcjo6c3RvcFNjcm9sbFNuYXBUaW1lcik6IERpdHRvLiBBbHNvIHVwZGF0ZWQgdG8gdXNl
IFJ1bkxvb3A6OlRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlcjo6aG9y
aXpvbnRhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxDb250cm9sbGVyOjp2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKTogRGl0dG8uCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpzY3JvbGxPZmZzZXRPbkF4aXMpOiBN
b3ZlZCBmcm9tIFNjcm9sbEFuaW1hdG9yTWFjLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29u
dHJvbGxlcjo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKTogRGl0dG8uCisgICAgICAgICogcGxhdGZv
cm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaDogUmVuYW1lIG1ldGhvZHMgZnJvbSAnSW5B
eGlzJyB0byAnT25BeGlzJworICAgICAgICAqIHBsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFu
aW1hdG9yLm1tOgorICAgICAgICAoV2ViQ29yZTo6QXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6aGFu
ZGxlV2hlZWxFdmVudCk6IFVwZGF0ZSBmb3IgJ0luQXhpcycgdG8gJ09uQXhpcycgcmVuYW1pbmcu
CisgICAgICAgIChXZWJDb3JlOjpBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpzY3JvbGxTbmFwQW5p
bWF0aW9uVXBkYXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBeGlzU2Nyb2xsU25hcEFu
aW1hdG9yOjpiZWdpblNjcm9sbFNuYXBBbmltYXRpb24pOiBEaXR0by4KKyAgICAgICAgKFdlYkNv
cmU6OkF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmNvbXB1dGVTbmFwRGVsdGEpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OkF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmNvbXB1dGVHbGlkZURlbHRh
KTogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tOgorICAgICAgICAoV2Vi
Q29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6OlNjcm9sbEFuaW1hdG9yTWFjKTogUmVtb3ZlIHVudXNl
ZCBSdWJiZXJiYW5kIHRpbWVycyAobm93IHRoYXQgdGhpcyBpcworICAgICAgICBjb250cm9sbGVk
IGluIHRoZSBTY3JvbGxDb250cm9sbGVyKQorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0
b3JNYWM6OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcik6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxBbmltYXRvck1hYzo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3JNYWM6OnNuYXBSdWJiZXJCYW5kVGlt
ZXJGaXJlZCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xs
ZXIuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5t
bTogUmVtb3ZlZC4KKwogMjAxNS0wMy0wMyAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29t
PgogCiAgICAgICAgIE1ha2UgQXVkaW9Db250ZXh0IHN1c3BlbmRhYmxlIHdoZW4gaXQgaXMgbm90
IHJlbmRlcmluZwpJbmRleDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMTgwOTM1KQorKysgU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xNjU4Nyw4
ICsxNjU4Nyw2IEBACiAJCQkJQkM1MTE1NkQxMkIxNzQ5QzAwQzk2NzU0IC8qIFNjcm9sbEFuaW1h
dG9yTWFjLm1tICovLAogCQkJCUJDOEI4NTNDMEU3QzdGMTEwMEFCNjk4NCAvKiBTY3JvbGxiYXJU
aGVtZU1hYy5oICovLAogCQkJCUJDRUY4NjlFMEU4NDRFOUQwMEE4NUNENSAvKiBTY3JvbGxiYXJU
aGVtZU1hYy5tbSAqLywKLQkJCQkxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xsQ29u
dHJvbGxlci5oICovLAotCQkJCTFBQTg0RjAyMTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250
cm9sbGVyLm1tICovLAogCQkJCTkzNTM2NzZBMDlBRUQ4OEIwMEQzNUNENiAvKiBTY3JvbGxWaWV3
TWFjLm1tICovLAogCQkJCTA3N0FGMTQxMThGNEIxQkIwMDAxRUQ2MSAvKiBTZXJpYWxpemVkUGxh
dGZvcm1SZXByZXNlbnRhdGlvbk1hYy5oICovLAogCQkJCTA3N0FGMTQyMThGNEIxQkIwMDAxRUQ2
MSAvKiBTZXJpYWxpemVkUGxhdGZvcm1SZXByZXNlbnRhdGlvbk1hYy5tbSAqLywKQEAgLTE4Njk4
LDYgKzE4Njk2LDggQEAKIAkJCQkxQTA0MDlGMjFBNDM2NzVDMDA5RTQ3RjMgLyogTWFjaFNlbmRS
aWdodC5jcHAgKi8sCiAJCQkJMUEwNDA5REIxQTQzNjBCNTAwOUU0N0YzIC8qIE1hY2hTZW5kUmln
aHQuaCAqLywKIAkJCQlBREI2QjI5NzE4RkI5MDI0MDA4MTk2M0UgLyogTWVtb3J5UHJlc3N1cmVI
YW5kbGVyQ29jb2EubW0gKi8sCisJCQkJMUFBODRGMDMxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9s
bENvbnRyb2xsZXIuaCAqLywKKwkJCQkxQUE4NEYwMjE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xs
Q29udHJvbGxlci5tbSAqLywKIAkJCQk1RDU5NzVCMTE5NjM1RjExMDBEMDA4NzggLyogU3lzdGVt
VmVyc2lvbi5oICovLAogCQkJCTVENTk3NUIyMTk2MzVGMTEwMEQwMDg3OCAvKiBTeXN0ZW1WZXJz
aW9uLm1tICovLAogCQkJCTdDQzU2NEI5MThCQUM3MjAwMDFCOTY1MiAvKiBUZWxlcGhvbmVOdW1i
ZXJEZXRlY3RvckNvY29hLmNwcCAqLywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0V2
ZW50SGFuZGxlck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL21hYy9F
dmVudEhhbmRsZXJNYWMubW0JKHJldmlzaW9uIDE4MDkzNSkKKysrIFNvdXJjZS9XZWJDb3JlL3Bh
Z2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtOTYxLDYgKzk2MSwx
MiBAQCBib29sIEV2ZW50SGFuZGxlcjo6cGxhdGZvcm1Db21wbGV0ZVdoZWVsCiAgICAgCiAgICAg
Ym9vbCBkaWRIYW5kbGVFdmVudCA9IHZpZXcgPyB2aWV3LT53aGVlbEV2ZW50KHdoZWVsRXZlbnQp
IDogZmFsc2U7CiAgICAgbV9pc0hhbmRsaW5nV2hlZWxFdmVudCA9IGZhbHNlOworCisjaWYgRU5B
QkxFKENTU19TQ1JPTExfU05BUCkKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEpCisgICAgICAgIHBs
YXRmb3JtTm90aWZ5U25hcElmTmVjZXNzYXJ5KHdoZWVsRXZlbnQsICpzY3JvbGxhYmxlQXJlYSk7
CisjZW5kaWYKKwogICAgIHJldHVybiBkaWRIYW5kbGVFdmVudDsKIH0KIApJbmRleDogU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMv
U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5oCShyZXZpc2lvbiAxODA5MzUpCisr
KyBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Ny
b2xsaW5nTm9kZU1hYy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENv
cHlyaWdodCAoQykgMjAxMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTIsIDIwMTQtMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTUxLDM5ICs1MSw0MiBAQCBwcml2
YXRlOgogICAgIHZpcnR1YWwgdm9pZCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hl
ZWxFdmVudCYpIG92ZXJyaWRlOwogCiAgICAgLy8gU2Nyb2xsQ29udHJvbGxlciBtZW1iZXIgZnVu
Y3Rpb25zLgotICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyhjb25z
dCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIGJvb2wgYWxsb3dz
VmVydGljYWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpIG92ZXJyaWRlOwot
ICAgIHZpcnR1YWwgSW50U2l6ZSBzdHJldGNoQW1vdW50KCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCBib29sIHBpbm5lZEluRGlyZWN0aW9uKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwotICAg
IHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxIb3Jpem9udGFsbHkoKSBvdmVycmlkZTsKLSAgICB2aXJ0
dWFsIGJvb2wgY2FuU2Nyb2xsVmVydGljYWxseSgpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgYm9v
bCBzaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsRGlyZWN0aW9uKSBvdmVycmlkZTsK
LSAgICB2aXJ0dWFsIEludFBvaW50IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSBvdmVycmlkZTsK
LSAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJikgb3Zl
cnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRF
ZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2
b2lkIHN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9p
ZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBh
ZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSBvdmVycmlkZTsKLQotICAg
IHZpcnR1YWwgRmxvYXRQb2ludCBzY3JvbGxQb3NpdGlvbigpIGNvbnN0IG92ZXJyaWRlOwotICAg
IHZpcnR1YWwgdm9pZCBzZXRTY3JvbGxQb3NpdGlvbihjb25zdCBGbG9hdFBvaW50Jikgb3ZlcnJp
ZGU7Ci0gICAgdmlydHVhbCB2b2lkIHNldFNjcm9sbFBvc2l0aW9uV2l0aG91dENvbnRlbnRFZGdl
Q29uc3RyYWludHMoY29uc3QgRmxvYXRQb2ludCYpIG92ZXJyaWRlOworICAgIGJvb2wgYWxsb3dz
SG9yaXpvbnRhbFN0cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jikgb3ZlcnJpZGU7
CisgICAgYm9vbCBhbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2
ZW50Jikgb3ZlcnJpZGU7CisgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50KCkgb3ZlcnJpZGU7Cisg
ICAgYm9vbCBwaW5uZWRJbkRpcmVjdGlvbihjb25zdCBGbG9hdFNpemUmKSBvdmVycmlkZTsKKyAg
ICBib29sIGNhblNjcm9sbEhvcml6b250YWxseSgpIG92ZXJyaWRlOworICAgIGJvb2wgY2FuU2Ny
b2xsVmVydGljYWxseSgpIG92ZXJyaWRlOworICAgIGJvb2wgc2hvdWxkUnViYmVyQmFuZEluRGly
ZWN0aW9uKFNjcm9sbERpcmVjdGlvbikgb3ZlcnJpZGU7CisgICAgSW50UG9pbnQgYWJzb2x1dGVT
Y3JvbGxQb3NpdGlvbigpIG92ZXJyaWRlOworICAgIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29u
c3QgRmxvYXRTaXplJikgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhv
dXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOworICAg
IHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKSBvdmVycmlkZTsKKyAgICB2b2lkIGFkanVz
dFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpIG92ZXJyaWRlOworCisgICAgRmxv
YXRQb2ludCBzY3JvbGxQb3NpdGlvbigpIGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgc2V0U2Ny
b2xsUG9zaXRpb24oY29uc3QgRmxvYXRQb2ludCYpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0U2Ny
b2xsUG9zaXRpb25XaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFBvaW50
Jikgb3ZlcnJpZGU7CiAKLSAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlTGF5ZXJzQWZ0ZXJWaWV3cG9y
dENoYW5nZShjb25zdCBGbG9hdFJlY3QmIGZpeGVkUG9zaXRpb25SZWN0LCBkb3VibGUgc2NhbGUp
IG92ZXJyaWRlOworICAgIHZvaWQgdXBkYXRlTGF5ZXJzQWZ0ZXJWaWV3cG9ydENoYW5nZShjb25z
dCBGbG9hdFJlY3QmIGZpeGVkUG9zaXRpb25SZWN0LCBkb3VibGUgc2NhbGUpIG92ZXJyaWRlOwog
Ci0gICAgdmlydHVhbCB2b2lkIHNldFNjcm9sbExheWVyUG9zaXRpb24oY29uc3QgRmxvYXRQb2lu
dCYpIG92ZXJyaWRlOworICAgIHZvaWQgc2V0U2Nyb2xsTGF5ZXJQb3NpdGlvbihjb25zdCBGbG9h
dFBvaW50Jikgb3ZlcnJpZGU7CiAKLSAgICB2aXJ0dWFsIEZsb2F0UG9pbnQgbWluaW11bVNjcm9s
bFBvc2l0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCBGbG9hdFBvaW50IG1heGlt
dW1TY3JvbGxQb3NpdGlvbigpIGNvbnN0IG92ZXJyaWRlOworICAgIEZsb2F0UG9pbnQgbWluaW11
bVNjcm9sbFBvc2l0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgRmxvYXRQb2ludCBtYXhpbXVt
U2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKIAogICAgIHZvaWQgdXBkYXRlTWFpbkZy
YW1lUGluU3RhdGUoY29uc3QgRmxvYXRQb2ludCYgc2Nyb2xsUG9zaXRpb24pOwogCiAgICAgYm9v
bCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2VzdHVyZShjb25zdCBQbGF0Zm9ybVdoZWVs
RXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkg
JiYgUExBVEZPUk0oTUFDKQorICAgIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9s
bEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Ny
b2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7CisjZW5kaWYKKwogICAgIHZvaWQg
bG9nRXhwb3NlZFVuZmlsbGVkQXJlYSgpOwogCiAgICAgU2Nyb2xsQ29udHJvbGxlciBtX3Njcm9s
bENvbnRyb2xsZXI7Ci0gICAgUmV0YWluUHRyPENGUnVuTG9vcFRpbWVyUmVmPiBtX3NuYXBSdWJi
ZXJiYW5kVGltZXI7CiAKICAgICBSZXRhaW5QdHI8Q0FMYXllcj4gbV9zY3JvbGxMYXllcjsKICAg
ICBSZXRhaW5QdHI8Q0FMYXllcj4gbV9zY3JvbGxlZENvbnRlbnRzTGF5ZXI7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5n
Tm9kZU1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9t
YWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYy5tbQkocmV2aXNpb24gMTgwOTM1
KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFjL1Njcm9sbGluZ1RyZWVGcmFt
ZVNjcm9sbGluZ05vZGVNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiAvKgot
ICogQ29weXJpZ2h0IChDKSAyMDEyLCAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMiwgMjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNjYsOCArNjYs
NiBAQCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjpTY3JvCiAKIFNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6On5TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdO
b2RlTWFjKCkKIHsKLSAgICBpZiAobV9zbmFwUnViYmVyYmFuZFRpbWVyKQotICAgICAgICBDRlJ1
bkxvb3BUaW1lckludmFsaWRhdGUobV9zbmFwUnViYmVyYmFuZFRpbWVyLmdldCgpKTsKIH0KIAog
dm9pZCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp1cGRhdGVCZWZvcmVDaGls
ZHJlbihjb25zdCBTY3JvbGxpbmdTdGF0ZU5vZGUmIHN0YXRlTm9kZSkKQEAgLTI5NiwzMCArMjk0
LDEyIEBAIHZvaWQgU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzoKICAgICBzY3Jv
bGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKG9mZnNldCk7CiB9CiAKLXZvaWQgU2Ny
b2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVy
KCkKLXsKLSAgICBBU1NFUlQoIW1fc25hcFJ1YmJlcmJhbmRUaW1lcik7Ci0KLSAgICBDRlRpbWVJ
bnRlcnZhbCB0aW1lckludGVydmFsID0gMS4wIC8gNjAuMDsKLQotICAgIG1fc25hcFJ1YmJlcmJh
bmRUaW1lciA9IGFkb3B0Q0YoQ0ZSdW5Mb29wVGltZXJDcmVhdGVXaXRoSGFuZGxlcihrQ0ZBbGxv
Y2F0b3JEZWZhdWx0LCBDRkFic29sdXRlVGltZUdldEN1cnJlbnQoKSArIHRpbWVySW50ZXJ2YWws
IHRpbWVySW50ZXJ2YWwsIDAsIDAsIF4oQ0ZSdW5Mb29wVGltZXJSZWYpIHsKLSAgICAgICAgbV9z
Y3JvbGxDb250cm9sbGVyLnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwotICAgIH0pKTsKLSAg
ICBDRlJ1bkxvb3BBZGRUaW1lcihDRlJ1bkxvb3BHZXRDdXJyZW50KCksIG1fc25hcFJ1YmJlcmJh
bmRUaW1lci5nZXQoKSwga0NGUnVuTG9vcERlZmF1bHRNb2RlKTsKLX0KLQogdm9pZCBTY3JvbGxp
bmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCiB7
Ci0gICAgaWYgKCFtX3NuYXBSdWJiZXJiYW5kVGltZXIpCi0gICAgICAgIHJldHVybjsKLQogICAg
IHNjcm9sbGluZ1RyZWUoKS5zZXRNYWluRnJhbWVJc1J1YmJlckJhbmRpbmcoZmFsc2UpOwogCiAg
ICAgLy8gU2luY2UgdGhlIHJ1YmJlcmJhbmQgdGltZXIgaGFzIHN0b3BwZWQsIHRvdGFsQ29udGVu
dHNTaXplRm9yUnViYmVyQmFuZCBjYW4gYmUgc3luY2hyb25pemVkIHdpdGggdG90YWxDb250ZW50
c1NpemUuCiAgICAgc2V0VG90YWxDb250ZW50c1NpemVGb3JSdWJiZXJCYW5kKHRvdGFsQ29udGVu
dHNTaXplKCkpOwotCi0gICAgQ0ZSdW5Mb29wVGltZXJJbnZhbGlkYXRlKG1fc25hcFJ1YmJlcmJh
bmRUaW1lci5nZXQoKSk7Ci0gICAgbV9zbmFwUnViYmVyYmFuZFRpbWVyID0gbnVsbHB0cjsKIH0K
IAogdm9pZCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjphZGp1c3RTY3JvbGxQ
b3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKQpAQCAtNTQwLDYgKzUyMCwxOSBAQCB2b2lkIGxv
Z1doZWVsRXZlbnRIYW5kbGVyQ291bnRDaGFuZ2VkKHVuCiAgICAgV1RGTG9nQWx3YXlzKCJTQ1JP
TExJTkc6IFdoZWVsIGV2ZW50IGhhbmRsZXIgY291bnQgY2hhbmdlZC4gVGltZTogJWYgQ291bnQ6
ICV1XG4iLCBXVEY6Om1vbm90b25pY2FsbHlJbmNyZWFzaW5nVGltZSgpLCBjb3VudCk7CiB9CiAK
KyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCitMYXlvdXRVbml0
IFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnNjcm9sbE9mZnNldE9uQXhpcyhT
Y3JvbGxFdmVudEF4aXMpCit7CisgICAgLy8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDovL3dl
YmtpdC5vcmcvYi8xNDE5NzMuCisgICAgcmV0dXJuIDA7Cit9CisKK3ZvaWQgU2Nyb2xsaW5nVHJl
ZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50
QXhpcywgZmxvYXQpCit7CisgICAgLy8gVGVtcG9yYXJ5IHN0dWIgdW50aWwgaHR0cDovL3dlYmtp
dC5vcmcvYi8xNDE5NzMuCit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAj
ZW5kaWYgLy8gRU5BQkxFKEFTWU5DX1NDUk9MTElORykgJiYgUExBVEZPUk0oTUFDKQpJbmRleDog
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmNwcAkocmV2aXNpb24gMTgw
OTM1KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC00OSw2ICs0OSw5IEBAIHN0ZDo6dW5pcXVlX3B0cjxTY3JvbGxBbmltYXRv
cj4gU2Nyb2xsQW4KIAogU2Nyb2xsQW5pbWF0b3I6OlNjcm9sbEFuaW1hdG9yKFNjcm9sbGFibGVB
cmVhJiBzY3JvbGxhYmxlQXJlYSkKICAgICA6IG1fc2Nyb2xsYWJsZUFyZWEoc2Nyb2xsYWJsZUFy
ZWEpCisjaWYgKEVOQUJMRShDU1NfU0NST0xMX1NOQVApIHx8IEVOQUJMRShSVUJCRVJfQkFORElO
RykpICYmIFBMQVRGT1JNKE1BQykKKyAgICAsIG1fc2Nyb2xsQ29udHJvbGxlcih0aGlzKQorI2Vu
ZGlmCiAgICAgLCBtX2N1cnJlbnRQb3NYKDApCiAgICAgLCBtX2N1cnJlbnRQb3NZKDApCiB7CkBA
IC04MSwyOCArODQsMTcgQEAgdm9pZCBTY3JvbGxBbmltYXRvcjo6c2Nyb2xsVG9PZmZzZXRXaXRo
bwogfQogCiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQotdm9p
ZCBTY3JvbGxBbmltYXRvcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBs
YXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKK2Jvb2wgU2Nyb2xsQW5pbWF0b3I6OnByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVs
RXZlbnQpCiB7Ci0gICAgaWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCi0gICAgICAg
IG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVu
dCk7Ci0gICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcikKLSAgICAgICAgbV9o
b3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQp
OworICAgIHJldHVybiBtX3Njcm9sbENvbnRyb2xsZXIucHJvY2Vzc1doZWVsRXZlbnRGb3JTY3Jv
bGxTbmFwKHdoZWVsRXZlbnQpOwogfQogI2VuZGlmCiAKIGJvb2wgU2Nyb2xsQW5pbWF0b3I6Omhh
bmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiBlKQogewogI2lmIEVOQUJM
RShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLSAgICBpZiAobV92ZXJ0aWNhbFNj
cm9sbFNuYXBBbmltYXRvcikgewotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9y
LT5oYW5kbGVXaGVlbEV2ZW50KGUpOwotICAgICAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBB
bmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVlbEV2ZW50KGUpKQotICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgIH0KLSAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7
Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVu
dChlKTsKLSAgICAgICAgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hvdWxk
T3ZlcnJpZGVXaGVlbEV2ZW50KGUpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIH0K
KyAgICBpZiAoIW1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNu
YXAoZSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKICNlbmRpZgogI2lmIFBMQVRGT1JNKENPQ09B
KQogICAgIC8vIEV2ZW50cyBpbiB0aGUgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VNYXlCZWdpbiBw
aGFzZSBoYXZlIG5vIGRlbHRhcywgYW5kIHRoZXJlZm9yZSBuZXZlciBwYXNzZXMgdGhyb3VnaCB0
aGUgc2Nyb2xsIGhhbmRsaW5nIGxvZ2ljIGJlbG93LgpAQCAtMTgzLDMwICsxNzUsMTUgQEAgdm9p
ZCBTY3JvbGxBbmltYXRvcjo6bm90aWZ5UG9zaXRpb25DaGFuZwogI2lmIEVOQUJMRShDU1NfU0NS
T0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKIHZvaWQgU2Nyb2xsQW5pbWF0b3I6OnVwZGF0ZVNj
cm9sbEFuaW1hdG9yc0FuZFRpbWVycygpCiB7Ci0gICAgLy8gRklYTUU6IEN1cnJlbnRseSwgc2Ny
b2xsIHNuYXAgYW5pbWF0b3JzIGFyZSByZWNyZWF0ZWQgZXZlbiB0aG91Z2ggdGhlIHNuYXAgb2Zm
c2V0cyBhbG9uZSBjYW4gYmUgdXBkYXRlZC4KLSAgICBpZiAobV9zY3JvbGxhYmxlQXJlYS5ob3Jp
em9udGFsU25hcE9mZnNldHMoKSkgewotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5p
bWF0b3IgPSBzdGQ6Om1ha2VfdW5pcXVlPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMsIG1f
c2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRzKCksIFNjcm9sbEV2ZW50QXhpczo6
SG9yaXpvbnRhbCk7Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA9IHN0ZDo6
bWFrZV91bmlxdWU8VGltZXI+KCp0aGlzLCAmU2Nyb2xsQW5pbWF0b3I6Omhvcml6b250YWxTY3Jv
bGxTbmFwVGltZXJGaXJlZCk7Ci0gICAgfSBlbHNlIGlmIChtX2hvcml6b250YWxTY3JvbGxTbmFw
QW5pbWF0b3IpIHsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gbnVs
bHB0cjsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyID0gbnVsbHB0cjsKLSAg
ICB9Ci0gICAgaWYgKG1fc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFwT2Zmc2V0cygpKSB7Ci0g
ICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBzdGQ6Om1ha2VfdW5pcXVlPEF4
aXNTY3JvbGxTbmFwQW5pbWF0b3I+KHRoaXMsIG1fc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFw
T2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6OlZlcnRpY2FsKTsKLSAgICAgICAgbV92ZXJ0aWNh
bFNjcm9sbFNuYXBUaW1lciA9IHN0ZDo6bWFrZV91bmlxdWU8VGltZXI+KCp0aGlzLCAmU2Nyb2xs
QW5pbWF0b3I6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOwotICAgIH0gZWxzZSBpZiAo
bV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikgewotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xs
U25hcEFuaW1hdG9yID0gbnVsbHB0cjsKLSAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1l
ciA9IG51bGxwdHI7Ci0gICAgfQorICAgIG1fc2Nyb2xsQ29udHJvbGxlci51cGRhdGVTY3JvbGxB
bmltYXRvcnNBbmRUaW1lcnMobV9zY3JvbGxhYmxlQXJlYSk7CiB9CiAKLUxheW91dFVuaXQgU2Ny
b2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldEluQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcykKK0xh
eW91dFVuaXQgU2Nyb2xsQW5pbWF0b3I6OnNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4
aXMgYXhpcykKIHsKLSAgICBGbG9hdFBvaW50IGN1cnJlbnRQb3NpdGlvbiA9IHRoaXMtPmN1cnJl
bnRQb3NpdGlvbigpOwotICAgIHJldHVybiBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpv
bnRhbCA/IGN1cnJlbnRQb3NpdGlvbi54KCkgOiBjdXJyZW50UG9zaXRpb24ueSgpOworICAgIHJl
dHVybiBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1fY3VycmVudFBvc1gg
OiBtX2N1cnJlbnRQb3NZOwogfQogCi12b2lkIFNjcm9sbEFuaW1hdG9yOjppbW1lZGlhdGVTY3Jv
bGxJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMsIGZsb2F0IGRlbHRhKQordm9pZCBTY3JvbGxB
bmltYXRvcjo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzLCBmbG9h
dCBkZWx0YSkKIHsKICAgICBGbG9hdFBvaW50IGN1cnJlbnRQb3NpdGlvbiA9IHRoaXMtPmN1cnJl
bnRQb3NpdGlvbigpOwogICAgIGlmIChheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRh
bCkKQEAgLTIxNCwzMCArMTkxLDYgQEAgdm9pZCBTY3JvbGxBbmltYXRvcjo6aW1tZWRpYXRlU2Ny
b2xsSW5BeAogICAgIGVsc2UKICAgICAgICAgc2Nyb2xsVG9PZmZzZXRXaXRob3V0QW5pbWF0aW9u
KEZsb2F0UG9pbnQoY3VycmVudFBvc2l0aW9uLngoKSwgY3VycmVudFBvc2l0aW9uLnkoKSArIGRl
bHRhKSk7CiB9Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNj
cm9sbEV2ZW50QXhpcyBheGlzKQotewotICAgIFRpbWVyKiBzY3JvbGxTbmFwVGltZXIgPSBheGlz
ID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBU
aW1lci5nZXQoKSA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIuZ2V0KCk7Ci0gICAgaWYgKCFz
Y3JvbGxTbmFwVGltZXItPmlzQWN0aXZlKCkpCi0gICAgICAgIHNjcm9sbFNuYXBUaW1lci0+c3Rh
cnRSZXBlYXRpbmcoMS4wIC8gNjAuMCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OnN0b3BT
Y3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCi17Ci0gICAgVGltZXIqIHNjcm9s
bFNuYXBUaW1lciA9IGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9ob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyLmdldCgpIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lci5n
ZXQoKTsKLSAgICBpZiAoc2Nyb2xsU25hcFRpbWVyLT5pc0FjdGl2ZSgpKQotICAgICAgICBzY3Jv
bGxTbmFwVGltZXItPnN0b3AoKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvcjo6aG9yaXpvbnRh
bFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKLXsKLSAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5p
bWF0b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKLX0KLQotdm9pZCBTY3JvbGxBbmlt
YXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpCi17Ci0gICAgbV92ZXJ0aWNhbFNj
cm9sbFNuYXBBbmltYXRvci0+c2Nyb2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOwotfQogI2VuZGlm
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1Njcm9sbEFuaW1hdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
U2Nyb2xsQW5pbWF0b3IuaAkocmV2aXNpb24gMTgwOTM1KQorKysgU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vU2Nyb2xsQW5pbWF0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMzMsMTQgKzMzLDE0IEBA
CiAjZGVmaW5lIFNjcm9sbEFuaW1hdG9yX2gKIAogI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgorI2lu
Y2x1ZGUgIkxheW91dFVuaXQuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVdoZWVsRXZlbnQuaCIKICNp
bmNsdWRlICJTY3JvbGxUeXBlcy5oIgogI2luY2x1ZGUgPHd0Zi9GYXN0TWFsbG9jLmg+CiAjaW5j
bHVkZSA8d3RmL0ZvcndhcmQuaD4KIAotI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBM
QVRGT1JNKE1BQykKLSNpbmNsdWRlICJBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgiCi0jaW5jbHVk
ZSAiVGltZXIuaCIKKyNpZiAoRU5BQkxFKFJVQkJFUl9CQU5ESU5HKSB8fCBFTkFCTEUoQ1NTX1ND
Uk9MTF9TTkFQKSkgJiYgUExBVEZPUk0oTUFDKQorI2luY2x1ZGUgIlNjcm9sbENvbnRyb2xsZXIu
aCIKICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC01MCw4ICs1MCw4IEBAIGNsYXNz
IFBsYXRmb3JtVG91Y2hFdmVudDsKIGNsYXNzIFNjcm9sbGFibGVBcmVhOwogY2xhc3MgU2Nyb2xs
YmFyOwogCi0jaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQotY2xh
c3MgU2Nyb2xsQW5pbWF0b3IgOiBwdWJsaWMgQXhpc1Njcm9sbFNuYXBBbmltYXRvckNsaWVudCB7
CisjaWYgKEVOQUJMRShDU1NfU0NST0xMX1NOQVApIHx8IEVOQUJMRShSVUJCRVJfQkFORElORykp
ICYmIFBMQVRGT1JNKE1BQykKK2NsYXNzIFNjcm9sbEFuaW1hdG9yIDogcHJpdmF0ZSBTY3JvbGxD
b250cm9sbGVyQ2xpZW50IHsKICNlbHNlCiBjbGFzcyBTY3JvbGxBbmltYXRvciB7CiAjZW5kaWYK
QEAgLTExOCwzMyArMTE4LDIxIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgaXNSdWJiZXJC
YW5kSW5Qcm9ncmVzcygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKICNpZiBFTkFCTEUoQ1NT
X1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi0gICAgdm9pZCBwcm9jZXNzV2hlZWxFdmVu
dEZvclNjcm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CisgICAgYm9vbCBwcm9j
ZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CiAg
ICAgdm9pZCB1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoKTsKLSAgICB2aXJ0dWFsIExh
eW91dFVuaXQgc2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7Ci0g
ICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZs
b2F0IGRlbHRhKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGlt
ZXIoU2Nyb2xsRXZlbnRBeGlzKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNjcm9s
bFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOworICAgIExheW91dFVuaXQgc2Ny
b2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1l
ZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkgb3ZlcnJpZGU7
CiAjZW5kaWYKIAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlQb3NpdGlvbkNo
YW5nZWQoY29uc3QgRmxvYXRTaXplJiBkZWx0YSk7CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9T
TkFQKSAmJiBQTEFURk9STShNQUMpCi0gICAgLy8gVHJpdmlhbCB3cmFwcGVycyBhcm91bmQgdGhl
IGFjdHVhbCB1cGRhdGUgbG9vcCBpbiBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yLCBzaW5jZSBXZWJD
b3JlIFRpbWVyIHJlcXVpcmVzIGEgVGltZXIgYXJndW1lbnQuCi0gICAgdm9pZCBob3Jpem9udGFs
U2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsKLSAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVy
RmlyZWQoKTsKLSNlbmRpZgotCiAgICAgU2Nyb2xsYWJsZUFyZWEmIG1fc2Nyb2xsYWJsZUFyZWE7
CisjaWYgKEVOQUJMRShDU1NfU0NST0xMX1NOQVApIHx8IEVOQUJMRShSVUJCRVJfQkFORElORykp
ICYmIFBMQVRGT1JNKE1BQykKKyAgICBTY3JvbGxDb250cm9sbGVyIG1fc2Nyb2xsQ29udHJvbGxl
cjsKKyNlbmRpZgogICAgIGZsb2F0IG1fY3VycmVudFBvc1g7IC8vIFdlIGF2b2lkIHVzaW5nIGEg
RmxvYXRQb2ludCBpbiBvcmRlciB0byByZWR1Y2UKICAgICBmbG9hdCBtX2N1cnJlbnRQb3NZOyAv
LyBzdWJjbGFzcyBjb2RlIGNvbXBsZXhpdHkuCi0jaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkg
JiYgUExBVEZPUk0oTUFDKQotICAgIHN0ZDo6dW5pcXVlX3B0cjxBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yPiBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3I7Ci0gICAgc3RkOjp1bmlxdWVfcHRy
PFRpbWVyPiBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXI7Ci0gICAgLy8gRklYTUU6IEZpbmQg
YSB3YXkgdG8gY29uc29saWRhdGUgYm90aCB0aW1lcnMgaW50byBvbmUgdmFyaWFibGUuCi0gICAg
c3RkOjp1bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1fdmVydGljYWxTY3JvbGxT
bmFwQW5pbWF0b3I7Ci0gICAgc3RkOjp1bmlxdWVfcHRyPFRpbWVyPiBtX3ZlcnRpY2FsU2Nyb2xs
U25hcFRpbWVyOwotI2VuZGlmCiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCShy
ZXZpc2lvbiAxODA5MzUpCShmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxD
b250cm9sbGVyLmg6MTgwOTM1KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Ny
b2xsQ29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMTA3IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2lmbmRlZiBTY3JvbGxDb250cm9sbGVyX2gKKyNkZWZpbmUgU2Nyb2xsQ29udHJvbGxl
cl9oCisKKyNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCisKKyNpbmNsdWRlICJGbG9hdFBvaW50
LmgiCisjaW5jbHVkZSAiRmxvYXRTaXplLmgiCisjaW5jbHVkZSAiU2Nyb2xsVHlwZXMuaCIKKyNp
bmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFz
cyBQbGF0Zm9ybVdoZWVsRXZlbnQ7CisKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewor
cHJvdGVjdGVkOgorICAgIHZpcnR1YWwgflNjcm9sbENvbnRyb2xsZXJDbGllbnQoKSB7IH0KKwor
cHVibGljOgorICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyhjb25z
dCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSA9IDA7CisgICAgdmlydHVhbCBib29sIGFsbG93c1ZlcnRp
Y2FsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSA9IDA7CisgICAgdmlydHVh
bCBJbnRTaXplIHN0cmV0Y2hBbW91bnQoKSA9IDA7CisgICAgdmlydHVhbCBib29sIHBpbm5lZElu
RGlyZWN0aW9uKGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgY2FuU2Ny
b2xsSG9yaXpvbnRhbGx5KCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5TY3JvbGxWZXJ0aWNh
bGx5KCkgPSAwOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24o
U2Nyb2xsRGlyZWN0aW9uKSA9IDA7CisKKyAgICAvLyBSZXR1cm4gdGhlIGFic29sdXRlIHNjcm9s
bCBwb3NpdGlvbiwgbm90IHJlbGF0aXZlIHRvIHRoZSBzY3JvbGwgb3JpZ2luLgorICAgIHZpcnR1
YWwgV2ViQ29yZTo6SW50UG9pbnQgYWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpID0gMDsKKworICAg
IHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSA9IDA7Cisg
ICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3Ry
YWludHMoY29uc3QgRmxvYXRTaXplJikgPSAwOworICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBS
dWJiZXJiYW5kVGltZXIoKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHN0b3BTbmFwUnViYmVyYmFu
ZFRpbWVyKCkgPSAwOworCisgICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uIGlz
IHdpdGhpbiB0aGUgb3ZlcmhhbmcgYXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNhdXNlCisgICAg
Ly8gdGhlIHBhZ2UgdG8gc2Nyb2xsIHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBvaW50LgorICAg
IHZpcnR1YWwgdm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKSA9
IDA7Cit9OworCitjbGFzcyBTY3JvbGxDb250cm9sbGVyIHsKKyAgICBXVEZfTUFLRV9OT05DT1BZ
QUJMRShTY3JvbGxDb250cm9sbGVyKTsKKworcHVibGljOgorICAgIGV4cGxpY2l0IFNjcm9sbENv
bnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCopOworCisgICAgYm9vbCBoYW5kbGVXaGVl
bEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworICAgIHZvaWQgc25hcFJ1YmJlckJh
bmRUaW1lckZpcmVkKCk7CisKKyAgICBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25z
dDsKKworcHJpdmF0ZToKKyAgICB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAg
dm9pZCBzbmFwUnViYmVyQmFuZCgpOworCisgICAgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5Ib3Jp
em9udGFsRGlyZWN0aW9uKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOworCisgICAgU2Nyb2xs
Q29udHJvbGxlckNsaWVudCogbV9jbGllbnQ7CisKKyAgICBib29sIG1faW5TY3JvbGxHZXN0dXJl
OworICAgIGJvb2wgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3M7CisgICAgYm9vbCBtX2lnbm9y
ZU1vbWVudHVtU2Nyb2xsczsKKyAgICAKKyAgICBDRlRpbWVJbnRlcnZhbCBtX2xhc3RNb21lbnR1
bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBGbG9hdFNpemUgbV9vdmVyZmxvd1Njcm9sbERlbHRhOwor
ICAgIEZsb2F0U2l6ZSBtX3N0cmV0Y2hTY3JvbGxGb3JjZTsKKyAgICBGbG9hdFNpemUgbV9tb21l
bnR1bVZlbG9jaXR5OworCisgICAgLy8gUnViYmVyIGJhbmQgc3RhdGUuCisgICAgQ0ZUaW1lSW50
ZXJ2YWwgbV9zdGFydFRpbWU7CisgICAgRmxvYXRTaXplIG1fc3RhcnRTdHJldGNoOworICAgIEZs
b2F0UG9pbnQgbV9vcmlnT3JpZ2luOworICAgIEZsb2F0U2l6ZSBtX29yaWdWZWxvY2l0eTsKKwor
ICAgIGJvb2wgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmU7Cit9OworCit9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCisKKyNlbmRp
ZiAvLyBTY3JvbGxDb250cm9sbGVyX2gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nv
Y29hL1Njcm9sbENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQpA
QCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDE0LTIwMTUgQXBwbGUg
SW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CkBAIC0zMiwxMCArMzIsMTYgQEAKICNpbmNsdWRlICJGbG9hdFNpemUuaCIKICNpbmNsdWRlICJT
Y3JvbGxUeXBlcy5oIgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorI2luY2x1ZGUgPHd0
Zi9SdW5Mb29wLmg+CisKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorI2luY2x1ZGUgIkF4
aXNTY3JvbGxTbmFwQW5pbWF0b3IuaCIKKyNlbmRpZgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IGNsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKK2NsYXNzIFNjcm9sbGFibGVBcmVhOwogCiBjbGFz
cyBTY3JvbGxDb250cm9sbGVyQ2xpZW50IHsKIHByb3RlY3RlZDoKQEAgLTU1LDM2ICs2MSw3NCBA
QCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3QgRmxv
YXRTaXplJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRD
b250ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFs
IHZvaWQgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBz
dG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKLQorICAgIHZpcnR1YWwgdm9pZCBzdGFydFNu
YXBSdWJiZXJiYW5kVGltZXIoKQorICAgIHsKKyAgICAgICAgLy8gT3ZlcnJpZGUgdG8gcGVyZm9y
bSBjbGllbnQtc3BlY2lmaWMgc25hcCBzdGFydCBsb2dpYworICAgIH0KKworICAgIHZpcnR1YWwg
dm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCisgICAgeworICAgICAgICAvLyBPdmVycmlk
ZSB0byBwZXJmb3JtIGNsaWVudC1zcGVjaWZpYyBzbmFwIGVuZCBsb2dpYworICAgIH0KKyAgICAK
ICAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gaXMgd2l0aGluIHRoZSBvdmVy
aGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKICAgICAvLyB0aGUgcGFnZSB0byBz
Y3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCiAgICAgdmlydHVhbCB2b2lkIGFk
anVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpID0gMDsKKworI2lmIEVOQUJM
RShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAgICB2aXJ0dWFsIExheW91dFVu
aXQgc2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcykgPSAwOworICAgIHZpcnR1YWwg
dm9pZCBpbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzLCBmbG9hdCBkZWx0YSkg
PSAwOworICAgIHZpcnR1YWwgdm9pZCBzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4
aXMpCisgICAgeworICAgICAgICAvLyBPdmVycmlkZSB0byBwZXJmb3JtIGNsaWVudC1zcGVjaWZp
YyBzY3JvbGwgc25hcCBwb2ludCBzdGFydCBsb2dpYworICAgIH0KKworICAgIHZpcnR1YWwgdm9p
ZCBzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykKKyAgICB7CisgICAgICAgIC8v
IE92ZXJyaWRlIHRvIHBlcmZvcm0gY2xpZW50LXNwZWNpZmljIHNjcm9sbCBzbmFwIHBvaW50IGVu
ZCBsb2dpYworICAgICAgICAKKyAgICB9CisjZW5kaWYKIH07CiAKKyNpZiBFTkFCTEUoQ1NTX1ND
Uk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCitjbGFzcyBTY3JvbGxDb250cm9sbGVyIDogcHVi
bGljIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQgeworI2Vsc2UKIGNsYXNzIFNjcm9sbENv
bnRyb2xsZXIgeworI2VuZGlmCiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoU2Nyb2xsQ29udHJv
bGxlcik7CiAKIHB1YmxpYzoKICAgICBleHBsaWNpdCBTY3JvbGxDb250cm9sbGVyKFNjcm9sbENv
bnRyb2xsZXJDbGllbnQqKTsKIAogICAgIGJvb2wgaGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0
Zm9ybVdoZWVsRXZlbnQmKTsKLSAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwog
CiAgICAgYm9vbCBpc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3Q7CiAKKyNpZiBFTkFCTEUo
Q1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgYm9vbCBwcm9jZXNzV2hlZWxF
dmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CisgICAgdm9pZCB1
cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMoY29uc3QgU2Nyb2xsYWJsZUFyZWEmKTsKKyNl
bmRpZgorCiBwcml2YXRlOgorICAgIHZvaWQgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CiAg
ICAgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwogICAgIHZvaWQgc25hcFJ1YmJlckJh
bmQoKTsKKyAgICB2b2lkIHNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpOwogCiAgICAgYm9vbCBz
aG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKGNvbnN0IFBsYXRmb3JtV2hlZWxF
dmVudCYpOwogCi0gICAgU2Nyb2xsQ29udHJvbGxlckNsaWVudCogbV9jbGllbnQ7CisjaWYgRU5B
QkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZvaWQgaG9yaXpvbnRh
bFNjcm9sbFNuYXBUaW1lckZpcmVkKCk7CisgICAgdm9pZCB2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1l
ckZpcmVkKCk7CisgICAgdm9pZCBzdGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMp
IG92ZXJyaWRlOworICAgIHZvaWQgc3RvcFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMp
IG92ZXJyaWRlOworCisgICAgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZl
bnRBeGlzKSBvdmVycmlkZTsKKyAgICB2b2lkIGltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxF
dmVudEF4aXMsIGZsb2F0IGRlbHRhKSBvdmVycmlkZTsKKyNlbmRpZgogCi0gICAgYm9vbCBtX2lu
U2Nyb2xsR2VzdHVyZTsKLSAgICBib29sIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzOwotICAg
IGJvb2wgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHM7CisgICAgU2Nyb2xsQ29udHJvbGxlckNsaWVu
dCogbV9jbGllbnQ7CiAgICAgCiAgICAgQ0ZUaW1lSW50ZXJ2YWwgbV9sYXN0TW9tZW50dW1TY3Jv
bGxUaW1lc3RhbXA7CiAgICAgRmxvYXRTaXplIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YTsKQEAgLTk2
LDcgKzE0MCwxOSBAQCBwcml2YXRlOgogICAgIEZsb2F0U2l6ZSBtX3N0YXJ0U3RyZXRjaDsKICAg
ICBGbG9hdFBvaW50IG1fb3JpZ09yaWdpbjsKICAgICBGbG9hdFNpemUgbV9vcmlnVmVsb2NpdHk7
CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4gbV9zbmFwUnViYmVyYmFuZFRp
bWVyOwogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAg
IC8vIEZJWE1FOiBGaW5kIGEgd2F5IHRvIGNvbnNvbGlkYXRlIGJvdGggdGltZXJzIGludG8gb25l
IHZhcmlhYmxlLgorICAgIHN0ZDo6dW5pcXVlX3B0cjxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPiBt
X2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3I7CisgICAgc3RkOjp1bmlxdWVfcHRyPEF4aXNT
Y3JvbGxTbmFwQW5pbWF0b3I+IG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3I7CisgICAgUnVu
TG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4gbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVy
OworICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9sbENvbnRyb2xsZXI+IG1fdmVydGljYWxTY3JvbGxT
bmFwVGltZXI7CisjZW5kaWYKKworICAgIGJvb2wgbV9pblNjcm9sbEdlc3R1cmU7CisgICAgYm9v
bCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsKKyAgICBib29sIG1faWdub3JlTW9tZW50dW1T
Y3JvbGxzOwogICAgIGJvb2wgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmU7CiB9OwogCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xs
ZXIubW0JKHJldmlzaW9uIDE4MDkzNSkJKGZyb20gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1Njcm9sbENvbnRyb2xsZXIubW06MTgwOTM1KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Y29jb2EvU2Nyb2xsQ29udHJvbGxlci5tbQkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQwNiBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZ
LCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUg
IlNjcm9sbENvbnRyb2xsZXIuaCIKKworI2luY2x1ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgor
I2luY2x1ZGUgIldlYkNvcmVTeXN0ZW1JbnRlcmZhY2UuaCIKKyNpbmNsdWRlIDxzeXMvc3lzY3Rs
Lmg+CisjaW5jbHVkZSA8c3lzL3RpbWUuaD4KKworI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykK
Kworc3RhdGljIE5TVGltZUludGVydmFsIHN5c3RlbVVwdGltZSgpCit7CisgICAgaWYgKFtbTlNQ
cm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzeXN0
ZW1VcHRpbWUpXSkKKyAgICAgICAgcmV0dXJuIFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10g
c3lzdGVtVXB0aW1lXTsKKworICAgIC8vIEdldCBob3cgbG9uZyBzeXN0ZW0gaGFzIGJlZW4gdXAu
IEZvdW5kIGJ5IGxvb2tpbmcgZ2V0dGluZyAiYm9vdHRpbWUiIGZyb20gdGhlIGtlcm5lbC4KKyAg
ICBzdGF0aWMgc3RydWN0IHRpbWV2YWwgYm9vdHRpbWUgPSB7MCwgMH07CisgICAgaWYgKCFib290
dGltZS50dl9zZWMpIHsKKyAgICAgICAgaW50IG1pYlsyXSA9IHtDVExfS0VSTiwgS0VSTl9CT09U
VElNRX07CisgICAgICAgIHNpemVfdCBzaXplID0gc2l6ZW9mKGJvb3R0aW1lKTsKKyAgICAgICAg
aWYgKC0xID09IHN5c2N0bChtaWIsIDIsICZib290dGltZSwgJnNpemUsIDAsIDApKQorICAgICAg
ICAgICAgYm9vdHRpbWUudHZfc2VjID0gMDsKKyAgICB9CisgICAgc3RydWN0IHRpbWV2YWwgbm93
OworICAgIGlmIChib290dGltZS50dl9zZWMgJiYgLTEgIT0gZ2V0dGltZW9mZGF5KCZub3csIDAp
KSB7CisgICAgICAgIHN0cnVjdCB0aW1ldmFsIHVwdGltZTsKKyAgICAgICAgdGltZXJzdWIoJm5v
dywgJmJvb3R0aW1lLCAmdXB0aW1lKTsKKyAgICAgICAgTlNUaW1lSW50ZXJ2YWwgcmVzdWx0ID0g
dXB0aW1lLnR2X3NlYyArICh1cHRpbWUudHZfdXNlYyAvIDFFKzYpOworICAgICAgICByZXR1cm4g
cmVzdWx0OworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworCituYW1lc3BhY2UgV2ViQ29yZSB7
CisKK3N0YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0ID0gMC4x
MGY7CitzdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0
aW8gPSAxOworc3RhdGljIGNvbnN0IGZsb2F0IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0
YUJlZm9yZVN0cmV0Y2ggPSAxMDsKKworc3RhdGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclRpbWVE
ZWx0YShmbG9hdCBpbml0aWFsUG9zaXRpb24sIGZsb2F0IGluaXRpYWxWZWxvY2l0eSwgZmxvYXQg
ZWxhcHNlZFRpbWUpCit7CisgICAgcmV0dXJuIHdrTlNFbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEo
aW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsVmVsb2NpdHksIGVsYXBzZWRUaW1lKTsKK30KKworc3Rh
dGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAg
ICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShkZWx0YSk7Cit9CisKK3N0
YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoZmxvYXQgZGVsdGEpCit7Cisg
ICAgcmV0dXJuIHdrTlNSZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoZGVsdGEpOworfQorCitz
dGF0aWMgZmxvYXQgc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCkKK3sKKyAgICBzdGF0aWMgZmxvYXQg
bXVsdGlwbGllciA9IC0xOworICAgIGlmIChtdWx0aXBsaWVyIDwgMCkgeworICAgICAgICBtdWx0
aXBsaWVyID0gW1tOU1VzZXJEZWZhdWx0cyBzdGFuZGFyZFVzZXJEZWZhdWx0c10gZmxvYXRGb3JL
ZXk6QCJOU1Njcm9sbFdoZWVsTXVsdGlwbGllciJdOworICAgICAgICBpZiAobXVsdGlwbGllciA8
PSAwKQorICAgICAgICAgICAgbXVsdGlwbGllciA9IDE7CisgICAgfQorICAgIHJldHVybiBtdWx0
aXBsaWVyOworfQorCitTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENv
bnRyb2xsZXJDbGllbnQqIGNsaWVudCkKKyAgICA6IG1fY2xpZW50KGNsaWVudCkKKyAgICAsIG1f
aW5TY3JvbGxHZXN0dXJlKGZhbHNlKQorICAgICwgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3Mo
ZmFsc2UpCisgICAgLCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyhmYWxzZSkKKyAgICAsIG1fbGFz
dE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCisgICAgLCBtX3N0YXJ0VGltZSgwKQorICAgICwg
bV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUoZmFsc2UpCit7Cit9CisKK2Jvb2wgU2Nyb2xs
Q29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdo
ZWVsRXZlbnQpCit7CisgICAgaWYgKHdoZWVsRXZlbnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVs
RXZlbnRQaGFzZUJlZ2FuKSB7CisgICAgICAgIC8vIEZpcnN0LCBjaGVjayBpZiB3ZSBzaG91bGQg
cnViYmVyLWJhbmQgYXQgYWxsLgorICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0
aW9uKEZsb2F0U2l6ZSgtd2hlZWxFdmVudC5kZWx0YVgoKSwgMCkpCisgICAgICAgICAgICAmJiAh
c2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbih3aGVlbEV2ZW50KSkKKyAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAgICBtX2luU2Nyb2xsR2VzdHVyZSA9IHRydWU7
CisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gZmFsc2U7CisgICAgICAgIG1f
aWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7CisgICAgICAgIG1fbGFzdE1vbWVudHVtU2Ny
b2xsVGltZXN0YW1wID0gMDsKKyAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5ID0gRmxvYXRTaXpl
KCk7CisKKyAgICAgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hB
bW91bnQoKTsKKyAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERl
bHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQud2lkdGgoKSkpOworICAgICAgICBtX3N0
cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0
cmV0Y2hBbW91bnQuaGVpZ2h0KCkpKTsKKyAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0g
RmxvYXRTaXplKCk7CisKKyAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKworICAg
ICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09
IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKKyAgICAgICAgc25hcFJ1YmJlckJhbmQo
KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgYm9vbCBpc01vbWVudHVtU2Ny
b2xsRXZlbnQgPSAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCkgIT0gUGxhdGZvcm1XaGVlbEV2
ZW50UGhhc2VOb25lKTsKKyAgICBpZiAobV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgJiYgKGlzTW9t
ZW50dW1TY3JvbGxFdmVudCB8fCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkpIHsKKyAg
ICAgICAgaWYgKHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVu
dFBoYXNlRW5kZWQpIHsKKyAgICAgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFs
c2U7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgfQorCisgICAgZmxvYXQgZGVsdGFYID0gbV9vdmVyZmxvd1Njcm9sbERlbHRh
LndpZHRoKCk7CisgICAgZmxvYXQgZGVsdGFZID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdo
dCgpOworCisgICAgLy8gUmVzZXQgb3ZlcmZsb3cgdmFsdWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lk
ZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBwb2ludHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJm
bG93LgorICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YSA9IEZsb2F0U2l6ZSgpOworCisgICAgSW50
U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKyAgICBib29s
IGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IHN0cmV0Y2hBbW91bnQuaGVpZ2h0KCk7CisgICAgYm9v
bCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0cmV0Y2hBbW91bnQud2lkdGgoKTsKKworICAg
IGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFYOworICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVs
dGFZOworCisgICAgaWYgKGlzVmVydGljYWxseVN0cmV0Y2hlZCB8fCBpc0hvcml6b250YWxseVN0
cmV0Y2hlZCkgeworICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LnVu
YWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoKTsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0
YVkgPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVkU2Nyb2xsaW5nRGVsdGFZKCk7CisgICAgfSBl
bHNlIHsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAtd2hlZWxFdmVudC5kZWx0YVgo
KTsKKyAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC5kZWx0YVkoKTsK
KyAgICB9CisKKyAgICBkZWx0YVggKz0gZXZlbnRDb2FsZXNjZWREZWx0YVg7CisgICAgZGVsdGFZ
ICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFZOworCisgICAgLy8gU2xpZ2h0bHkgcHJlZmVyIHNjcm9s
bGluZyB2ZXJ0aWNhbGx5IGJ5IGFwcGx5aW5nIHRoZSA9IGNhc2UgdG8gZGVsdGFZCisgICAgaWYg
KGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkKKyAgICAgICAgZGVsdGFYID0gMDsKKyAg
ICBlbHNlCisgICAgICAgIGRlbHRhWSA9IDA7CisKKyAgICBib29sIHNob3VsZFN0cmV0Y2ggPSBm
YWxzZTsKKworICAgIFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlIG1vbWVudHVtUGhhc2UgPSB3aGVl
bEV2ZW50Lm1vbWVudHVtUGhhc2UoKTsKKworICAgIC8vIElmIHdlIGFyZSBzdGFydGluZyBtb21l
bnR1bSBzY3JvbGxpbmcgdGhlbiBkbyBzb21lIHNldHVwLgorICAgIGlmICghbV9tb21lbnR1bVNj
cm9sbEluUHJvZ3Jlc3MgJiYgKG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhh
c2VCZWdhbiB8fCBtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQ2hhbmdl
ZCkpCisgICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzID0gdHJ1ZTsKKworICAgIENG
VGltZUludGVydmFsIHRpbWVEZWx0YSA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCkgLSBtX2xhc3RN
b21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBpZiAobV9pblNjcm9sbEdlc3R1cmUgfHwgbV9t
b21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKKyAgICAgICAgaWYgKG1fbGFzdE1vbWVudHVtU2Ny
b2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+IDAgJiYgdGltZURlbHRhIDwgc2Nyb2xsVmVsb2Np
dHlaZXJvaW5nVGltZW91dCkgeworICAgICAgICAgICAgbV9tb21lbnR1bVZlbG9jaXR5LnNldFdp
ZHRoKGV2ZW50Q29hbGVzY2VkRGVsdGFYIC8gKGZsb2F0KXRpbWVEZWx0YSk7CisgICAgICAgICAg
ICBtX21vbWVudHVtVmVsb2NpdHkuc2V0SGVpZ2h0KGV2ZW50Q29hbGVzY2VkRGVsdGFZIC8gKGZs
b2F0KXRpbWVEZWx0YSk7CisgICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFt
cCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7
CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKyAgICAgICAg
fQorCisgICAgICAgIGlmIChpc1ZlcnRpY2FsbHlTdHJldGNoZWQpIHsKKyAgICAgICAgICAgIGlm
ICghaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYgbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9u
KEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgeworICAgICAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcg
b25seSBpbiB0aGUgdmVydGljYWwuCisgICAgICAgICAgICAgICAgaWYgKGRlbHRhWSAmJiAoZmFi
c2YoZGVsdGFYIC8gZGVsdGFZKSA8IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlv
KSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAgICAgICAgICBlbHNl
IGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3Jl
U3RyZXRjaCkgeworICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0
V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOworICAgICAgICAg
ICAgICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAg
ICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9s
bERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2Ug
aWYgKGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7CisgICAgICAgICAgICAvLyBTdHJldGNoaW5n
IG9ubHkgaW4gdGhlIGhvcml6b250YWwuCisgICAgICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5l
ZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgeworICAgICAgICAgICAgICAgIGlm
IChkZWx0YVggJiYgKGZhYnNmKGRlbHRhWSAvIGRlbHRhWCkgPCBydWJiZXJiYW5kRGlyZWN0aW9u
TG9ja1N0cmV0Y2hSYXRpbykpCisgICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAg
ICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVsdGFZKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVx
dWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKKyAgICAgICAgICAgICAgICAgICAgbV9vdmVyZmxv
d1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBk
ZWx0YVkpOworICAgICAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAgICAg
IH0gZWxzZQorICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVp
Z2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7CisgICAgICAgICAg
ICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAvLyBOb3Qgc3RyZXRjaGluZyBhdCBh
bGwgeWV0LgorICAgICAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9h
dFNpemUoZGVsdGFYLCBkZWx0YVkpKSkgeworICAgICAgICAgICAgICAgIGlmIChmYWJzZihkZWx0
YVkpID49IGZhYnNmKGRlbHRhWCkpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRl
bHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9v
dmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOworICAgICAgICAgICAgICAgICAg
ICAgICAgZGVsdGFYID0gMDsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAg
ICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Nj
cm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICBzaG91bGRTdHJldGNoID0gdHJ1ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQor
ICAgIH0KKworICAgIGlmIChkZWx0YVggfHwgZGVsdGFZKSB7CisgICAgICAgIGlmICghKHNob3Vs
ZFN0cmV0Y2ggfHwgaXNWZXJ0aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRj
aGVkKSkgeworICAgICAgICAgICAgaWYgKGRlbHRhWSkgeworICAgICAgICAgICAgICAgIGRlbHRh
WSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKKyAgICAgICAgICAgICAgICBtX2NsaWVudC0+
aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKDAsIGRlbHRhWSkpOworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgaWYgKGRlbHRhWCkgeworICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3Jv
bGxXaGVlbE11bHRpcGxpZXIoKTsKKyAgICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRl
U2Nyb2xsQnkoRmxvYXRTaXplKGRlbHRhWCwgMCkpOworICAgICAgICAgICAgfQorICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+YWxsb3dzSG9yaXpvbnRhbFN0cmV0
Y2hpbmcod2hlZWxFdmVudCkpIHsKKyAgICAgICAgICAgICAgICBkZWx0YVggPSAwOworICAgICAg
ICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gMDsKKyAgICAgICAgICAgIH0gZWxzZSBp
ZiAoZGVsdGFYICYmICFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5l
ZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgeworICAgICAgICAgICAgICAgIGRl
bHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKKworICAgICAgICAgICAgICAgIG1fY2xp
ZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0
U2l6ZShkZWx0YVgsIDApKTsKKyAgICAgICAgICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAg
ICAgfQorCisgICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5hbGxvd3NWZXJ0aWNhbFN0cmV0Y2hp
bmcod2hlZWxFdmVudCkpIHsKKyAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOworICAgICAgICAg
ICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gMDsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAo
ZGVsdGFZICYmICFpc1ZlcnRpY2FsbHlTdHJldGNoZWQgJiYgIW1fY2xpZW50LT5waW5uZWRJbkRp
cmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkpIHsKKyAgICAgICAgICAgICAgICBkZWx0YVkg
Kj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7CisKKyAgICAgICAgICAgICAgICBtX2NsaWVudC0+
aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUo
MCwgZGVsdGFZKSk7CisgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAgICAgICAgICAgIH0K
KworICAgICAgICAgICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0cmV0Y2hB
bW91bnQoKTsKKworICAgICAgICAgICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzKSB7
CisgICAgICAgICAgICAgICAgaWYgKChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRT
aXplKGV2ZW50Q29hbGVzY2VkRGVsdGFYLCBldmVudENvYWxlc2NlZERlbHRhWSkpIHx8IChmYWJz
ZihldmVudENvYWxlc2NlZERlbHRhWCkgKyBmYWJzZihldmVudENvYWxlc2NlZERlbHRhWSkgPD0g
MCkpICYmIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKSB7CisgICAgICAgICAgICAgICAg
ICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgICAg
bV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAgICAgICAgICAgICAg
c25hcFJ1YmJlckJhbmQoKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldFdpZHRoKG1fc3RyZXRjaFNjcm9sbEZv
cmNlLndpZHRoKCkgKyBkZWx0YVgpOworICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uu
c2V0SGVpZ2h0KG1fc3RyZXRjaFNjcm9sbEZvcmNlLmhlaWdodCgpICsgZGVsdGFZKTsKKworICAg
ICAgICAgICAgRmxvYXRTaXplIGRhbXBlZERlbHRhKGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91
bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS53aWR0aCgpKSksIGNlaWxmKGVsYXN0aWNEZWx0
YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS5oZWlnaHQoKSkpKTsKKworICAg
ICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29u
c3RyYWludHMoZGFtcGVkRGVsdGEgLSBzdHJldGNoQW1vdW50KTsKKyAgICAgICAgfQorICAgIH0K
KworICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiBtb21lbnR1bVBoYXNlID09
IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKKyAgICAgICAgbV9tb21lbnR1bVNjcm9s
bEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBm
YWxzZTsKKyAgICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAwOworICAgIH0K
KworICAgIHJldHVybiB0cnVlOworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0IHJvdW5kVG93YXJk
WmVybyhmbG9hdCBudW0pCit7CisgICAgcmV0dXJuIG51bSA+IDAgPyBjZWlsZihudW0gLSAwLjVm
KSA6IGZsb29yZihudW0gKyAwLjVmKTsKK30KKworc3RhdGljIGlubGluZSBmbG9hdCByb3VuZFRv
RGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGZsb2F0IG51bSkKK3sKKyAgICBmbG9hdCByb3VuZGVkTnVt
ID0gcm91bmRmKG51bSk7CisgICAgaWYgKGZhYnMobnVtIC0gcm91bmRlZE51bSkgPCAwLjEyNSkK
KyAgICAgICAgbnVtID0gcm91bmRlZE51bTsKKworICAgIHJldHVybiByb3VuZFRvd2FyZFplcm8o
bnVtKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZFRpbWVyRmly
ZWQoKQoreworICAgIGlmICghbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgfHwgbV9pZ25vcmVN
b21lbnR1bVNjcm9sbHMpIHsKKyAgICAgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gW05T
RGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdIC0gbV9zdGFydFRpbWU7CisKKyAg
ICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZsb2F0U2l6ZSgpKSB7CisgICAgICAgICAgICBt
X3N0YXJ0U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJldGNoQW1vdW50KCk7CisgICAgICAgICAgICBp
ZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXplKCkpIHsKKyAgICAgICAgICAgICAgICBzdG9w
U25hcFJ1YmJlcmJhbmRUaW1lcigpOworCisgICAgICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2UgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7Cisg
ICAgICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAg
ICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7CisgICAgICAgICAgICAgICAgbV9vcmln
VmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IG1fY2xpZW50LT5hYnNvbHV0ZVNj
cm9sbFBvc2l0aW9uKCkgLSBtX3N0YXJ0U3RyZXRjaDsKKyAgICAgICAgICAgIG1fb3JpZ1ZlbG9j
aXR5ID0gbV9tb21lbnR1bVZlbG9jaXR5OworCisgICAgICAgICAgICAvLyBKdXN0IGxpa2Ugbm9y
bWFsIHNjcm9sbGluZywgcHJlZmVyIHZlcnRpY2FsIHJ1YmJlcmJhbmRpbmcKKyAgICAgICAgICAg
IGlmIChmYWJzZihtX29yaWdWZWxvY2l0eS5oZWlnaHQoKSkgPj0gZmFic2YobV9vcmlnVmVsb2Np
dHkud2lkdGgoKSkpCisgICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7
CisKKyAgICAgICAgICAgIC8vIERvbid0IHJ1YmJlci1iYW5kIGhvcml6b250YWxseSBpZiBpdCdz
IG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgaG9yaXpvbnRhbGx5CisgICAgICAgICAgICBpZiAoIW1f
Y2xpZW50LT5jYW5TY3JvbGxIb3Jpem9udGFsbHkoKSkKKyAgICAgICAgICAgICAgICBtX29yaWdW
ZWxvY2l0eS5zZXRXaWR0aCgwKTsKKworICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQg
dmVydGljYWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgdmVydGljYWxseQorICAg
ICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Nyb2xsVmVydGljYWxseSgpKQorICAgICAgICAg
ICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldEhlaWdodCgwKTsKKyAgICAgICAgfQorCisgICAgICAg
IEZsb2F0UG9pbnQgZGVsdGEocm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVs
dGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2gud2lkdGgoKSwgLW1fb3JpZ1ZlbG9jaXR5Lndp
ZHRoKCksIChmbG9hdCl0aW1lRGVsdGEpKSwKKyAgICAgICAgICAgIHJvdW5kVG9EZXZpY2VQaXhl
bFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKG1fc3RhcnRTdHJldGNoLmhlaWdo
dCgpLCAtbV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCksIChmbG9hdCl0aW1lRGVsdGEpKSk7CisKKyAg
ICAgICAgaWYgKGZhYnMoZGVsdGEueCgpKSA+PSAxIHx8IGZhYnMoZGVsdGEueSgpKSA+PSAxKSB7
CisgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVk
Z2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGEueCgpLCBkZWx0YS55KCkpIC0gbV9jbGllbnQt
PnN0cmV0Y2hBbW91bnQoKSk7CisKKyAgICAgICAgICAgIEZsb2F0U2l6ZSBuZXdTdHJldGNoID0g
bV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKworICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2gud2lk
dGgoKSkpOworICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91
bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJldGNoLmhlaWdodCgpKSk7CisgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgICBtX2NsaWVudC0+YWRqdXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5k
c0lmTmVjZXNzYXJ5KCk7CisKKyAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7
CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOworICAgICAg
ICAgICAgbV9zdGFydFRpbWUgPSAwOworICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9h
dFNpemUoKTsKKyAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKKyAgICAg
ICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisgICAgICAgIH0KKyAgICB9IGVs
c2UgeworICAgICAgICBtX3N0YXJ0VGltZSA9IFtOU0RhdGUgdGltZUludGVydmFsU2luY2VSZWZl
cmVuY2VEYXRlXTsKKyAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICB9
Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNv
bnN0Cit7CisgICAgaWYgKCFtX2luU2Nyb2xsR2VzdHVyZSAmJiAhbV9tb21lbnR1bVNjcm9sbElu
UHJvZ3Jlc3MgJiYgIW1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyAgICByZXR1cm4gIW1fY2xpZW50LT5zdHJldGNoQW1vdW50KCkuaXNaZXJv
KCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIo
KQoreworICAgIG1fY2xpZW50LT5zdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworICAgIG1fc25h
cFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFsc2U7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJv
bGxlcjo6c25hcFJ1YmJlckJhbmQoKQoreworICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9
IHN5c3RlbVVwdGltZSgpIC0gbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXA7CisgICAgaWYg
KG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+PSBzY3JvbGxWZWxv
Y2l0eVplcm9pbmdUaW1lb3V0KQorICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNp
emUoKTsKKworICAgIG1faW5TY3JvbGxHZXN0dXJlID0gZmFsc2U7CisKKyAgICBpZiAobV9zbmFw
UnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCisgICAgICAgIHJldHVybjsKKworICAgIG1fc3RhcnRU
aW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOworICAgIG1fc3Rh
cnRTdHJldGNoID0gRmxvYXRTaXplKCk7CisgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgp
OworICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CisKKyAgICBtX2NsaWVudC0+c3Rh
cnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3Rp
dmUgPSB0cnVlOworfQorCitib29sIFNjcm9sbENvbnRyb2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJ
bkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50
KQoreworICAgIGlmICh3aGVlbEV2ZW50LmRlbHRhWCgpID4gMCkKKyAgICAgICAgcmV0dXJuIG1f
Y2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rpb24oU2Nyb2xsTGVmdCk7CisgICAgaWYg
KHdoZWVsRXZlbnQuZGVsdGFYKCkgPCAwKQorICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3Vs
ZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxSaWdodCk7CisKKyAgICByZXR1cm4gdHJ1ZTsK
K30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9C
QU5ESU5HKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJv
bGxlci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3Jv
bGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw2ICszMSwx
MSBAQAogI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KICNpbmNsdWRlIDxzeXMvdGltZS5oPgogCisj
aWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKKyNpbmNsdWRlICJBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yLmgiCisjaW5jbHVkZSAiU2Nyb2xsYWJsZUFyZWEuaCIKKyNlbmRpZgorCiAjaWYgRU5BQkxF
KFJVQkJFUl9CQU5ESU5HKQogCiBzdGF0aWMgTlNUaW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1lKCkK
QEAgLTkxLDE3ICs5NiwyNiBAQCBzdGF0aWMgZmxvYXQgc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCkK
IAogU2Nyb2xsQ29udHJvbGxlcjo6U2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xp
ZW50KiBjbGllbnQpCiAgICAgOiBtX2NsaWVudChjbGllbnQpCisgICAgLCBtX2xhc3RNb21lbnR1
bVNjcm9sbFRpbWVzdGFtcCgwKQorICAgICwgbV9zdGFydFRpbWUoMCkKKyAgICAsIG1fc25hcFJ1
YmJlcmJhbmRUaW1lcihSdW5Mb29wOjpjdXJyZW50KCksIHRoaXMsICZTY3JvbGxDb250cm9sbGVy
OjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQpCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkg
JiYgUExBVEZPUk0oTUFDKQorICAgICwgbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyKFJ1bkxv
b3A6OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENvbnRyb2xsZXI6Omhvcml6b250YWxTY3JvbGxT
bmFwVGltZXJGaXJlZCkKKyAgICAsIG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXIoUnVuTG9vcDo6
Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJvbGxlcjo6dmVydGljYWxTY3JvbGxTbmFwVGlt
ZXJGaXJlZCkKKyNlbmRpZgogICAgICwgbV9pblNjcm9sbEdlc3R1cmUoZmFsc2UpCiAgICAgLCBt
X21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxzZSkKICAgICAsIG1faWdub3JlTW9tZW50dW1T
Y3JvbGxzKGZhbHNlKQotICAgICwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAg
ICAsIG1fc3RhcnRUaW1lKDApCiAgICAgLCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShm
YWxzZSkKIHsKIH0KIAogYm9vbCBTY3JvbGxDb250cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNv
bnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKIHsKKyNpZiBFTkFCTEUoQ1NTX1ND
Uk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgaWYgKCFwcm9jZXNzV2hlZWxFdmVudEZv
clNjcm9sbFNuYXAod2hlZWxFdmVudCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgog
ICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdh
bikgewogICAgICAgICAvLyBGaXJzdCwgY2hlY2sgaWYgd2Ugc2hvdWxkIHJ1YmJlci1iYW5kIGF0
IGFsbC4KICAgICAgICAgaWYgKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUo
LXdoZWVsRXZlbnQuZGVsdGFYKCksIDApKQpAQCAtMzY1LDkgKzM3OSwxNiBAQCBib29sIFNjcm9s
bENvbnRyb2xsZXI6OmlzUnViYmVyQmFuZEluUHJvCiAgICAgcmV0dXJuICFtX2NsaWVudC0+c3Ry
ZXRjaEFtb3VudCgpLmlzWmVybygpOwogfQogCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0YXJ0
U25hcFJ1YmJlcmJhbmRUaW1lcigpCit7CisgICAgbV9jbGllbnQtPnN0YXJ0U25hcFJ1YmJlcmJh
bmRUaW1lcigpOworICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lci5zdGFydFJlcGVhdGluZygxLjAg
LyA2MC4wKTsKK30KKwogdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU25hcFJ1YmJlcmJhbmRU
aW1lcigpCiB7CiAgICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAg
bV9zbmFwUnViYmVyYmFuZFRpbWVyLnN0b3AoKTsKICAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJ
c0FjdGl2ZSA9IGZhbHNlOwogfQogCkBAIC0zODcsNyArNDA4LDcgQEAgdm9pZCBTY3JvbGxDb250
cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCiAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgp
OwogICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXplKCk7CiAKLSAgICBtX2NsaWVudC0+c3Rh
cnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7
CiAgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSB0cnVlOwogfQogCkBAIC00MDEs
NiArNDIyLDczIEBAIGJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6c2hvdWxkUnViYmVyQmFuZEkKICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAorI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRG
T1JNKE1BQykKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6cHJvY2Vzc1doZWVsRXZlbnRGb3JTY3Jv
bGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKK3sKKyAgICBpZiAo
bV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikgeworICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xs
U25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworICAgICAgICBpZiAo
bV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVlbEV2ZW50KHdo
ZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICBpZiAobV9o
b3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKSB7CisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9s
bFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50KTsKKyAgICAgICAgaWYg
KG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvci0+c2hvdWxkT3ZlcnJpZGVXaGVlbEV2ZW50
KHdoZWVsRXZlbnQpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIHJl
dHVybiB0cnVlOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnVwZGF0ZVNjcm9sbEFuaW1h
dG9yc0FuZFRpbWVycyhjb25zdCBTY3JvbGxhYmxlQXJlYSYgc2Nyb2xsYWJsZUFyZWEpCit7Cisg
ICAgLy8gRklYTUU6IEN1cnJlbnRseSwgc2Nyb2xsIHNuYXAgYW5pbWF0b3JzIGFyZSByZWNyZWF0
ZWQgZXZlbiB0aG91Z2ggdGhlIHNuYXAgb2Zmc2V0cyBhbG9uZSBjYW4gYmUgdXBkYXRlZC4KKyAg
ICBpZiAoc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRzKCkpCisgICAgICAgIG1f
aG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9s
bFNuYXBBbmltYXRvcj4odGhpcywgc2Nyb2xsYWJsZUFyZWEuaG9yaXpvbnRhbFNuYXBPZmZzZXRz
KCksIFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCk7CisgICAgZWxzZSBpZiAobV9ob3Jpem9u
dGFsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5p
bWF0b3IgPSBudWxscHRyOworCisgICAgaWYgKHNjcm9sbGFibGVBcmVhLnZlcnRpY2FsU25hcE9m
ZnNldHMoKSkKKyAgICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFr
ZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywgc2Nyb2xsYWJsZUFyZWEudmVy
dGljYWxTbmFwT2Zmc2V0cygpLCBTY3JvbGxFdmVudEF4aXM6OlZlcnRpY2FsKTsKKyAgICBlbHNl
IGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX3ZlcnRpY2FsU2Ny
b2xsU25hcEFuaW1hdG9yID0gbnVsbHB0cjsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpz
dGFydFNjcm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMgYXhpcykKK3sKKyAgICBSdW5Mb29w
OjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiYgc2Nyb2xsU25hcFRpbWVyID0gYXhpcyA9PSBTY3Jv
bGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgOiBt
X3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyOworICAgIGlmICghc2Nyb2xsU25hcFRpbWVyLmlzQWN0
aXZlKCkpCisgICAgICAgIHNjcm9sbFNuYXBUaW1lci5zdGFydFJlcGVhdGluZygxLjAgLyA2MC4w
KTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9s
bEV2ZW50QXhpcyBheGlzKQoreworICAgIFJ1bkxvb3A6OlRpbWVyPFNjcm9sbENvbnRyb2xsZXI+
JiBzY3JvbGxTbmFwVGltZXIgPSBheGlzID09IFNjcm9sbEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/
IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA6IG1fdmVydGljYWxTY3JvbGxTbmFwVGltZXI7
CisgICAgc2Nyb2xsU25hcFRpbWVyLnN0b3AoKTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVy
Ojpob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQoreworICAgIGlmIChtX2hvcml6b250
YWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmlt
YXRvci0+c2Nyb2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOworfQorCit2b2lkIFNjcm9sbENvbnRy
b2xsZXI6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQoKQoreworICAgIGlmIChtX3ZlcnRp
Y2FsU2Nyb2xsU25hcEFuaW1hdG9yKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1h
dG9yLT5zY3JvbGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Cit9CisKK0xheW91dFVuaXQgU2Nyb2xs
Q29udHJvbGxlcjo6c2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzKQorewor
ICAgIHJldHVybiBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKGF4aXMpOworfQorCit2b2lk
IFNjcm9sbENvbnRyb2xsZXI6OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMg
YXhpcywgZmxvYXQgZGVsdGEpCit7CisgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbE9uQXhp
cyhheGlzLCBkZWx0YSk7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAj
ZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oCShyZXZpc2lvbiAx
ODA5MzUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmlt
YXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw4ICs1Nyw4IEBAIHByb3RlY3RlZDoKICAgICB2
aXJ0dWFsIH5BeGlzU2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50KCkgeyB9CiAKIHB1YmxpYzoKLSAg
ICB2aXJ0dWFsIExheW91dFVuaXQgc2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcykg
PSAwOwotICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxJbkF4aXMoU2Nyb2xsRXZlbnRB
eGlzLCBmbG9hdCB2ZWxvY2l0eSkgPSAwOworICAgIHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxP
ZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGltbWVk
aWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IHZlbG9jaXR5KSA9IDA7CiAg
ICAgdmlydHVhbCB2b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykgPSAw
OwogICAgIHZpcnR1YWwgdm9pZCBzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykg
PSAwOwogfTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25h
cEFuaW1hdG9yLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9B
eGlzU2Nyb2xsU25hcEFuaW1hdG9yLm1tCShyZXZpc2lvbiAxODA5MzUpCisrKyBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5tbQkod29ya2luZyBjb3B5
KQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDE0LTIwMTUgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC0xMTcsNyArMTE3LDcgQEAgdm9pZCBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpoYW5kbGVXaGVl
bAogICAgICAgICAvLyBCZWdpbiB0cmFja2luZyB3aGVlbCBkZWx0YXMgZm9yIGdsaWRlIHByZWRp
Y3Rpb24uCiAgICAgICAgIGVuZFNjcm9sbFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlOjpV
c2VySW50ZXJhY3Rpb24pOwogICAgICAgICBwdXNoSW5pdGlhbFdoZWVsRGVsdGEod2hlZWxEZWx0
YSk7Ci0gICAgICAgIG1fYmVnaW5UcmFja2luZ1doZWVsRGVsdGFPZmZzZXQgPSBtX2NsaWVudC0+
c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgICAgIG1fYmVnaW5UcmFja2luZ1doZWVs
RGVsdGFPZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAg
ICAgIGJyZWFrOwogCiAgICAgY2FzZSBXaGVlbEV2ZW50U3RhdHVzOjpJbmVydGlhbFNjcm9sbGlu
ZzoKQEAgLTE1Myw3ICsxNTMsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OnNjcm9s
bFNuYXBBCiAgICAgQVNTRVJUKG1fY3VycmVudFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6R2xp
ZGluZyB8fCBtX2N1cnJlbnRTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OlNuYXBwaW5nKTsKICAg
ICBmbG9hdCBkZWx0YSA9IG1fY3VycmVudFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBp
bmcgPyBjb21wdXRlU25hcERlbHRhKCkgOiBjb21wdXRlR2xpZGVEZWx0YSgpOwogICAgIGlmIChk
ZWx0YSkKLSAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEluQXhpcyhtX2F4aXMsIGRl
bHRhKTsKKyAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbE9uQXhpcyhtX2F4aXMsIGRl
bHRhKTsKICAgICBlbHNlCiAgICAgICAgIGVuZFNjcm9sbFNuYXBBbmltYXRpb24oU2Nyb2xsU25h
cFN0YXRlOjpEZXN0aW5hdGlvblJlYWNoZWQpOwogfQpAQCAtMTYxLDcgKzE2MSw3IEBAIHZvaWQg
QXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6c2Nyb2xsU25hcEEKIHZvaWQgQXhpc1Njcm9sbFNuYXBB
bmltYXRvcjo6YmVnaW5TY3JvbGxTbmFwQW5pbWF0aW9uKFNjcm9sbFNuYXBTdGF0ZSBuZXdTdGF0
ZSkKIHsKICAgICBBU1NFUlQobmV3U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5nIHx8
IG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcpOwotICAgIExheW91dFVuaXQg
b2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldEluQXhpcyhtX2F4aXMpOworICAgIExheW91
dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4aXMpOwogICAg
IGZsb2F0IGluaXRpYWxXaGVlbERlbHRhID0gbmV3U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpH
bGlkaW5nID8gYXZlcmFnZUluaXRpYWxXaGVlbERlbHRhKCkgOiAwOwogICAgIExheW91dFVuaXQg
cHJvamVjdGVkU2Nyb2xsRGVzdGluYXRpb24gPSBuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6
OkdsaWRpbmcgPyBtX2JlZ2luVHJhY2tpbmdXaGVlbERlbHRhT2Zmc2V0ICsgTGF5b3V0VW5pdChw
cm9qZWN0ZWRJbmVydGlhbFNjcm9sbERpc3RhbmNlKGluaXRpYWxXaGVlbERlbHRhKSkgOiBvZmZz
ZXQ7CiAgICAgcHJvamVjdGVkU2Nyb2xsRGVzdGluYXRpb24gPSBzdGQ6Om1pbihzdGQ6Om1heChw
cm9qZWN0ZWRTY3JvbGxEZXN0aW5hdGlvbiwgbV9zbmFwT2Zmc2V0cy0+Zmlyc3QoKSksIG1fc25h
cE9mZnNldHMtPmxhc3QoKSk7CkBAIC0yMDMsNyArMjAzLDcgQEAgdm9pZCBBeGlzU2Nyb2xsU25h
cEFuaW1hdG9yOjplbmRTY3JvbGxTbgogLy8gcmVsYXRpb25zaGlwIG9mIHRoZSBkaXN0YW5jZSB0
cmF2ZWxlZCwgY2xhbXBlZCBieSBhcmJpdHJhcnkgbWluIGFuZCBtYXggdmFsdWVzLgogZmxvYXQg
QXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZVNuYXBEZWx0YSgpIGNvbnN0CiB7Ci0gICAg
TGF5b3V0VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7
CisgICAgTGF5b3V0VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1f
YXhpcyk7CiAgICAgYm9vbCBjYW5Db21wdXRlU25hcCA9ICAobV9pbml0aWFsT2Zmc2V0IDw9IG9m
ZnNldCAmJiBvZmZzZXQgPCBtX3RhcmdldE9mZnNldCkgfHwgKG1fdGFyZ2V0T2Zmc2V0IDwgb2Zm
c2V0ICYmIG9mZnNldCA8PSBtX2luaXRpYWxPZmZzZXQpOwogICAgIGlmIChtX2N1cnJlbnRTdGF0
ZSAhPSBTY3JvbGxTbmFwU3RhdGU6OlNuYXBwaW5nIHx8ICFjYW5Db21wdXRlU25hcCkKICAgICAg
ICAgcmV0dXJuIDA7CkBAIC0yMzcsNyArMjM3LDcgQEAgZmxvYXQgQXhpc1Njcm9sbFNuYXBBbmlt
YXRvcjo6Y29tcHV0ZVNuYQogLy8gYW5kIFZGLiBUaHVzLCB3ZSBjYW4gZXhwcmVzcyBvdXIgZ2xp
ZGluZyBlcXVhdGlvbiBhbGwgaW4gdGVybXMgb2YgVjAsIFZGIGFuZCB0LgogZmxvYXQgQXhpc1Nj
cm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZUdsaWRlRGVsdGEoKSBjb25zdAogewotICAgIExheW91
dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldEluQXhpcyhtX2F4aXMpOworICAg
IExheW91dFVuaXQgb2Zmc2V0ID0gbV9jbGllbnQtPnNjcm9sbE9mZnNldE9uQXhpcyhtX2F4aXMp
OwogICAgIGJvb2wgY2FuQ29tcHV0ZUdsaWRlID0gKG1faW5pdGlhbE9mZnNldCA8PSBvZmZzZXQg
JiYgb2Zmc2V0IDwgbV90YXJnZXRPZmZzZXQpIHx8IChtX3RhcmdldE9mZnNldCA8IG9mZnNldCAm
JiBvZmZzZXQgPD0gbV9pbml0aWFsT2Zmc2V0KTsKICAgICBpZiAobV9jdXJyZW50U3RhdGUgIT0g
U2Nyb2xsU25hcFN0YXRlOjpHbGlkaW5nIHx8ICFjYW5Db21wdXRlR2xpZGUpCiAgICAgICAgIHJl
dHVybiAwOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9y
TWFjLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFu
aW1hdG9yTWFjLmgJKHJldmlzaW9uIDE4MDkzNSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9TY3JvbGxBbmltYXRvck1hYy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw3ICszMiw2IEBA
CiAjaW5jbHVkZSAiRmxvYXRQb2ludC5oIgogI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgogI2luY2x1
ZGUgIlNjcm9sbEFuaW1hdG9yLmgiCi0jaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgogI2lu
Y2x1ZGUgIlRpbWVyLmgiCiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogCkBAIC00MiwxNSAr
NDEsMTEgQEAgT0JKQ19DTEFTUyBXZWJTY3JvbGxiYXJQYWludGVyRGVsZWdhdGU7CiAKIHR5cGVk
ZWYgaWQgU2Nyb2xsYmFyUGFpbnRlckNvbnRyb2xsZXI7CiAKLSNpZiAhRU5BQkxFKFJVQkJFUl9C
QU5ESU5HKQotY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7IH07Ci0jZW5kaWYKLQogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBTY3JvbGxiYXI7CiAKLWNsYXNzIFNjcm9sbEFuaW1h
dG9yTWFjIDogcHVibGljIFNjcm9sbEFuaW1hdG9yLCBwcml2YXRlIFNjcm9sbENvbnRyb2xsZXJD
bGllbnQgeworY2xhc3MgU2Nyb2xsQW5pbWF0b3JNYWMgOiBwdWJsaWMgU2Nyb2xsQW5pbWF0b3Ig
ewogCiBwdWJsaWM6CiAgICAgU2Nyb2xsQW5pbWF0b3JNYWMoU2Nyb2xsYWJsZUFyZWEmKTsKQEAg
LTE1MCwxNyArMTQ1LDExIEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBXZWJDb3JlOjpJbnRQb2lu
dCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGlt
bWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRT
aXplJikgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0
IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNuYXBSdWJiZXJi
YW5kVGltZXIoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5k
VGltZXIoKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2Nyb2xsUG9zaXRpb25U
b0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CiAKICAgICBib29sIHBpbm5lZEluRGlyZWN0
aW9uKGZsb2F0IGRlbHRhWCwgZmxvYXQgZGVsdGFZKTsKLSAgICB2b2lkIHNuYXBSdWJiZXJCYW5k
VGltZXJGaXJlZCgpOwogCiAgICAgYm9vbCBpc0FscmVhZHlQaW5uZWRJbkRpcmVjdGlvbk9mR2Vz
dHVyZShjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmLCBTY3JvbGxFdmVudEF4aXMpOwotCi0gICAg
U2Nyb2xsQ29udHJvbGxlciBtX3Njcm9sbENvbnRyb2xsZXI7Ci0gICAgVGltZXIgbV9zbmFwUnVi
YmVyQmFuZFRpbWVyOwogI2VuZGlmCiAKICAgICBib29sIG1faGF2ZVNjcm9sbGVkU2luY2VQYWdl
TG9hZDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmltYXRvck1h
Yy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5p
bWF0b3JNYWMubW0JKHJldmlzaW9uIDE4MDkzNSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9TY3JvbGxBbmltYXRvck1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtNjQzLDEwICs2NDMs
NiBAQCBTY3JvbGxBbmltYXRvck1hYzo6U2Nyb2xsQW5pbWF0b3JNYWMoU2NyCiAgICAgOiBTY3Jv
bGxBbmltYXRvcihzY3JvbGxhYmxlQXJlYSkKICAgICAsIG1faW5pdGlhbFNjcm9sbGJhclBhaW50
VGltZXIoKnRoaXMsICZTY3JvbGxBbmltYXRvck1hYzo6aW5pdGlhbFNjcm9sbGJhclBhaW50VGlt
ZXJGaXJlZCkKICAgICAsIG1fc2VuZENvbnRlbnRBcmVhU2Nyb2xsZWRUaW1lcigqdGhpcywgJlNj
cm9sbEFuaW1hdG9yTWFjOjpzZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyRmlyZWQpCi0jaWYg
RU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotICAgICwgbV9zY3JvbGxDb250cm9sbGVyKHRoaXMpCi0g
ICAgLCBtX3NuYXBSdWJiZXJCYW5kVGltZXIoKnRoaXMsICZTY3JvbGxBbmltYXRvck1hYzo6c25h
cFJ1YmJlckJhbmRUaW1lckZpcmVkKQotI2VuZGlmCiAgICAgLCBtX2hhdmVTY3JvbGxlZFNpbmNl
UGFnZUxvYWQoZmFsc2UpCiAgICAgLCBtX25lZWRzU2Nyb2xsZXJTdHlsZVVwZGF0ZShmYWxzZSkK
IHsKQEAgLTEyNzAsMjEgKzEyNjYsNiBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yTWFjOjppbW1lZGlh
dGVTY3JvbGxCCiAgICAgbV9jdXJyZW50UG9zWSA9IG5ld1Bvcy55KCk7CiAgICAgbm90aWZ5UG9z
aXRpb25DaGFuZ2VkKGFkanVzdGVkRGVsdGEpOwogfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFj
OjpzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKQotewotICAgIG1fc25hcFJ1YmJlckJhbmRUaW1l
ci5zdGFydFJlcGVhdGluZygxLjAgLyA2MC4wKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvck1h
Yzo6c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQotewotICAgIG1fc25hcFJ1YmJlckJhbmRUaW1l
ci5zdG9wKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnNuYXBSdWJiZXJCYW5kVGlt
ZXJGaXJlZCgpCi17Ci0gICAgbV9zY3JvbGxDb250cm9sbGVyLnNuYXBSdWJiZXJCYW5kVGltZXJG
aXJlZCgpOwotfQogI2VuZGlmCiAKIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OnVwZGF0ZVNjcm9s
bGVyU3R5bGUoKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRy
b2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xs
Q29udHJvbGxlci5oCShyZXZpc2lvbiAxODA5MzUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvU2Nyb2xsQ29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDEwNyArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBTY3JvbGxDb250cm9sbGVyX2gKLSNkZWZpbmUgU2Nyb2xs
Q29udHJvbGxlcl9oCi0KLSNpZiBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0KLSNpbmNsdWRlICJG
bG9hdFBvaW50LmgiCi0jaW5jbHVkZSAiRmxvYXRTaXplLmgiCi0jaW5jbHVkZSAiU2Nyb2xsVHlw
ZXMuaCIKLSNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUg
ewotCi1jbGFzcyBQbGF0Zm9ybVdoZWVsRXZlbnQ7Ci0KLWNsYXNzIFNjcm9sbENvbnRyb2xsZXJD
bGllbnQgewotcHJvdGVjdGVkOgotICAgIHZpcnR1YWwgflNjcm9sbENvbnRyb2xsZXJDbGllbnQo
KSB7IH0KLQotcHVibGljOgotICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NIb3Jpem9udGFsU3RyZXRj
aGluZyhjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIGFs
bG93c1ZlcnRpY2FsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSA9IDA7Ci0g
ICAgdmlydHVhbCBJbnRTaXplIHN0cmV0Y2hBbW91bnQoKSA9IDA7Ci0gICAgdmlydHVhbCBib29s
IHBpbm5lZEluRGlyZWN0aW9uKGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKLSAgICB2aXJ0dWFsIGJv
b2wgY2FuU2Nyb2xsSG9yaXpvbnRhbGx5KCkgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBjYW5TY3Jv
bGxWZXJ0aWNhbGx5KCkgPSAwOwotICAgIHZpcnR1YWwgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5E
aXJlY3Rpb24oU2Nyb2xsRGlyZWN0aW9uKSA9IDA7Ci0KLSAgICAvLyBSZXR1cm4gdGhlIGFic29s
dXRlIHNjcm9sbCBwb3NpdGlvbiwgbm90IHJlbGF0aXZlIHRvIHRoZSBzY3JvbGwgb3JpZ2luLgot
ICAgIHZpcnR1YWwgV2ViQ29yZTo6SW50UG9pbnQgYWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpID0g
MDsKLQotICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUm
KSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRF
ZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBz
dGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0b3BTbmFw
UnViYmVyYmFuZFRpbWVyKCkgPSAwOwotCi0gICAgLy8gSWYgdGhlIGN1cnJlbnQgc2Nyb2xsIHBv
c2l0aW9uIGlzIHdpdGhpbiB0aGUgb3ZlcmhhbmcgYXJlYSwgdGhpcyBmdW5jdGlvbiB3aWxsIGNh
dXNlCi0gICAgLy8gdGhlIHBhZ2UgdG8gc2Nyb2xsIHRvIHRoZSBuZWFyZXN0IGJvdW5kYXJ5IHBv
aW50LgotICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNl
c3NhcnkoKSA9IDA7Ci19OwotCi1jbGFzcyBTY3JvbGxDb250cm9sbGVyIHsKLSAgICBXVEZfTUFL
RV9OT05DT1BZQUJMRShTY3JvbGxDb250cm9sbGVyKTsKLQotcHVibGljOgotICAgIGV4cGxpY2l0
IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCopOwotCi0gICAgYm9vbCBo
YW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOwotICAgIHZvaWQgc25h
cFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7Ci0KLSAgICBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jl
c3MoKSBjb25zdDsKLQotcHJpdmF0ZToKLSAgICB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVy
KCk7Ci0gICAgdm9pZCBzbmFwUnViYmVyQmFuZCgpOwotCi0gICAgYm9vbCBzaG91bGRSdWJiZXJC
YW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpOwotCi0g
ICAgU2Nyb2xsQ29udHJvbGxlckNsaWVudCogbV9jbGllbnQ7Ci0KLSAgICBib29sIG1faW5TY3Jv
bGxHZXN0dXJlOwotICAgIGJvb2wgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3M7Ci0gICAgYm9v
bCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xsczsKLSAgICAKLSAgICBDRlRpbWVJbnRlcnZhbCBtX2xh
c3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKLSAgICBGbG9hdFNpemUgbV9vdmVyZmxvd1Njcm9s
bERlbHRhOwotICAgIEZsb2F0U2l6ZSBtX3N0cmV0Y2hTY3JvbGxGb3JjZTsKLSAgICBGbG9hdFNp
emUgbV9tb21lbnR1bVZlbG9jaXR5OwotCi0gICAgLy8gUnViYmVyIGJhbmQgc3RhdGUuCi0gICAg
Q0ZUaW1lSW50ZXJ2YWwgbV9zdGFydFRpbWU7Ci0gICAgRmxvYXRTaXplIG1fc3RhcnRTdHJldGNo
OwotICAgIEZsb2F0UG9pbnQgbV9vcmlnT3JpZ2luOwotICAgIEZsb2F0U2l6ZSBtX29yaWdWZWxv
Y2l0eTsKLQotICAgIGJvb2wgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmU7Ci19OwotCi19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcp
Ci0KLSNlbmRpZiAvLyBTY3JvbGxDb250cm9sbGVyX2gKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tCShyZXZpc2lvbiAxODA5MzUpCisr
KyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxlci5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMSw0MDYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSwgMjAx
NC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1
ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlNjcm9sbENvbnRyb2xsZXIuaCIKLQotI2luY2x1ZGUg
IlBsYXRmb3JtV2hlZWxFdmVudC5oIgotI2luY2x1ZGUgIldlYkNvcmVTeXN0ZW1JbnRlcmZhY2Uu
aCIKLSNpbmNsdWRlIDxzeXMvc3lzY3RsLmg+Ci0jaW5jbHVkZSA8c3lzL3RpbWUuaD4KLQotI2lm
IEVOQUJMRShSVUJCRVJfQkFORElORykKLQotc3RhdGljIE5TVGltZUludGVydmFsIHN5c3RlbVVw
dGltZSgpCi17Ci0gICAgaWYgKFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gcmVzcG9uZHNU
b1NlbGVjdG9yOkBzZWxlY3RvcihzeXN0ZW1VcHRpbWUpXSkKLSAgICAgICAgcmV0dXJuIFtbTlNQ
cm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gc3lzdGVtVXB0aW1lXTsKLQotICAgIC8vIEdldCBob3cg
bG9uZyBzeXN0ZW0gaGFzIGJlZW4gdXAuIEZvdW5kIGJ5IGxvb2tpbmcgZ2V0dGluZyAiYm9vdHRp
bWUiIGZyb20gdGhlIGtlcm5lbC4KLSAgICBzdGF0aWMgc3RydWN0IHRpbWV2YWwgYm9vdHRpbWUg
PSB7MCwgMH07Ci0gICAgaWYgKCFib290dGltZS50dl9zZWMpIHsKLSAgICAgICAgaW50IG1pYlsy
XSA9IHtDVExfS0VSTiwgS0VSTl9CT09UVElNRX07Ci0gICAgICAgIHNpemVfdCBzaXplID0gc2l6
ZW9mKGJvb3R0aW1lKTsKLSAgICAgICAgaWYgKC0xID09IHN5c2N0bChtaWIsIDIsICZib290dGlt
ZSwgJnNpemUsIDAsIDApKQotICAgICAgICAgICAgYm9vdHRpbWUudHZfc2VjID0gMDsKLSAgICB9
Ci0gICAgc3RydWN0IHRpbWV2YWwgbm93OwotICAgIGlmIChib290dGltZS50dl9zZWMgJiYgLTEg
IT0gZ2V0dGltZW9mZGF5KCZub3csIDApKSB7Ci0gICAgICAgIHN0cnVjdCB0aW1ldmFsIHVwdGlt
ZTsKLSAgICAgICAgdGltZXJzdWIoJm5vdywgJmJvb3R0aW1lLCAmdXB0aW1lKTsKLSAgICAgICAg
TlNUaW1lSW50ZXJ2YWwgcmVzdWx0ID0gdXB0aW1lLnR2X3NlYyArICh1cHRpbWUudHZfdXNlYyAv
IDFFKzYpOwotICAgICAgICByZXR1cm4gcmVzdWx0OwotICAgIH0KLSAgICByZXR1cm4gMDsKLX0K
LQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLXN0YXRpYyBjb25zdCBmbG9hdCBzY3JvbGxWZWxv
Y2l0eVplcm9pbmdUaW1lb3V0ID0gMC4xMGY7Ci1zdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFu
ZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8gPSAxOwotc3RhdGljIGNvbnN0IGZsb2F0IHJ1YmJl
cmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2ggPSAxMDsKLQotc3RhdGljIGZs
b2F0IGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShmbG9hdCBpbml0aWFsUG9zaXRpb24sIGZsb2F0
IGluaXRpYWxWZWxvY2l0eSwgZmxvYXQgZWxhcHNlZFRpbWUpCi17Ci0gICAgcmV0dXJuIHdrTlNF
bGFzdGljRGVsdGFGb3JUaW1lRGVsdGEoaW5pdGlhbFBvc2l0aW9uLCBpbml0aWFsVmVsb2NpdHks
IGVsYXBzZWRUaW1lKTsKLX0KLQotc3RhdGljIGZsb2F0IGVsYXN0aWNEZWx0YUZvclJlYm91bmRE
ZWx0YShmbG9hdCBkZWx0YSkKLXsKLSAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclJlYm91
bmREZWx0YShkZWx0YSk7Ci19Ci0KLXN0YXRpYyBmbG9hdCByZWJvdW5kRGVsdGFGb3JFbGFzdGlj
RGVsdGEoZmxvYXQgZGVsdGEpCi17Ci0gICAgcmV0dXJuIHdrTlNSZWJvdW5kRGVsdGFGb3JFbGFz
dGljRGVsdGEoZGVsdGEpOwotfQotCi1zdGF0aWMgZmxvYXQgc2Nyb2xsV2hlZWxNdWx0aXBsaWVy
KCkKLXsKLSAgICBzdGF0aWMgZmxvYXQgbXVsdGlwbGllciA9IC0xOwotICAgIGlmIChtdWx0aXBs
aWVyIDwgMCkgewotICAgICAgICBtdWx0aXBsaWVyID0gW1tOU1VzZXJEZWZhdWx0cyBzdGFuZGFy
ZFVzZXJEZWZhdWx0c10gZmxvYXRGb3JLZXk6QCJOU1Njcm9sbFdoZWVsTXVsdGlwbGllciJdOwot
ICAgICAgICBpZiAobXVsdGlwbGllciA8PSAwKQotICAgICAgICAgICAgbXVsdGlwbGllciA9IDE7
Ci0gICAgfQotICAgIHJldHVybiBtdWx0aXBsaWVyOwotfQotCi1TY3JvbGxDb250cm9sbGVyOjpT
Y3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGllbnQqIGNsaWVudCkKLSAgICA6IG1f
Y2xpZW50KGNsaWVudCkKLSAgICAsIG1faW5TY3JvbGxHZXN0dXJlKGZhbHNlKQotICAgICwgbV9t
b21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MoZmFsc2UpCi0gICAgLCBtX2lnbm9yZU1vbWVudHVtU2Ny
b2xscyhmYWxzZSkKLSAgICAsIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wKDApCi0gICAg
LCBtX3N0YXJ0VGltZSgwKQotICAgICwgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUoZmFs
c2UpCi17Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aGFuZGxlV2hlZWxFdmVudChjb25z
dCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCi17Ci0gICAgaWYgKHdoZWVsRXZlbnQu
cGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuKSB7Ci0gICAgICAgIC8vIEZp
cnN0LCBjaGVjayBpZiB3ZSBzaG91bGQgcnViYmVyLWJhbmQgYXQgYWxsLgotICAgICAgICBpZiAo
bV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgtd2hlZWxFdmVudC5kZWx0YVgo
KSwgMCkpCi0gICAgICAgICAgICAmJiAhc2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVj
dGlvbih3aGVlbEV2ZW50KSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgICAgICBt
X2luU2Nyb2xsR2VzdHVyZSA9IHRydWU7Ci0gICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblByb2dy
ZXNzID0gZmFsc2U7Ci0gICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7Ci0g
ICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gMDsKLSAgICAgICAgbV9tb21l
bnR1bVZlbG9jaXR5ID0gRmxvYXRTaXplKCk7Ci0KLSAgICAgICAgSW50U2l6ZSBzdHJldGNoQW1v
dW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLSAgICAgICAgbV9zdHJldGNoU2Nyb2xs
Rm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQu
d2lkdGgoKSkpOwotICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVib3Vu
ZERlbHRhRm9yRWxhc3RpY0RlbHRhKHN0cmV0Y2hBbW91bnQuaGVpZ2h0KCkpKTsKLSAgICAgICAg
bV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7Ci0KLSAgICAgICAgc3RvcFNuYXBS
dWJiZXJiYW5kVGltZXIoKTsKLQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0KLSAgICBp
ZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsK
LSAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQot
Ci0gICAgYm9vbCBpc01vbWVudHVtU2Nyb2xsRXZlbnQgPSAod2hlZWxFdmVudC5tb21lbnR1bVBo
YXNlKCkgIT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VOb25lKTsKLSAgICBpZiAobV9pZ25vcmVN
b21lbnR1bVNjcm9sbHMgJiYgKGlzTW9tZW50dW1TY3JvbGxFdmVudCB8fCBtX3NuYXBSdWJiZXJi
YW5kVGltZXJJc0FjdGl2ZSkpIHsKLSAgICAgICAgaWYgKHdoZWVsRXZlbnQubW9tZW50dW1QaGFz
ZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsKLSAgICAgICAgICAgIG1faWdu
b3JlTW9tZW50dW1TY3JvbGxzID0gZmFsc2U7Ci0gICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAg
ICAgICAgfQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotCi0gICAgZmxvYXQgZGVsdGFY
ID0gbV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCk7Ci0gICAgZmxvYXQgZGVsdGFZID0gbV9v
dmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpOwotCi0gICAgLy8gUmVzZXQgb3ZlcmZsb3cgdmFs
dWVzIGJlY2F1c2Ugd2UgbWF5IGRlY2lkZSB0byByZW1vdmUgZGVsdGEgYXQgdmFyaW91cyBwb2lu
dHMgYW5kIHB1dCBpdCBpbnRvIG92ZXJmbG93LgotICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YSA9
IEZsb2F0U2l6ZSgpOwotCi0gICAgSW50U2l6ZSBzdHJldGNoQW1vdW50ID0gbV9jbGllbnQtPnN0
cmV0Y2hBbW91bnQoKTsKLSAgICBib29sIGlzVmVydGljYWxseVN0cmV0Y2hlZCA9IHN0cmV0Y2hB
bW91bnQuaGVpZ2h0KCk7Ci0gICAgYm9vbCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCA9IHN0cmV0
Y2hBbW91bnQud2lkdGgoKTsKLQotICAgIGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFYOwotICAg
IGZsb2F0IGV2ZW50Q29hbGVzY2VkRGVsdGFZOwotCi0gICAgaWYgKGlzVmVydGljYWxseVN0cmV0
Y2hlZCB8fCBpc0hvcml6b250YWxseVN0cmV0Y2hlZCkgewotICAgICAgICBldmVudENvYWxlc2Nl
ZERlbHRhWCA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVgoKTsKLSAg
ICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAtd2hlZWxFdmVudC51bmFjY2VsZXJhdGVkU2Ny
b2xsaW5nRGVsdGFZKCk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0
YVggPSAtd2hlZWxFdmVudC5kZWx0YVgoKTsKLSAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkg
PSAtd2hlZWxFdmVudC5kZWx0YVkoKTsKLSAgICB9Ci0KLSAgICBkZWx0YVggKz0gZXZlbnRDb2Fs
ZXNjZWREZWx0YVg7Ci0gICAgZGVsdGFZICs9IGV2ZW50Q29hbGVzY2VkRGVsdGFZOwotCi0gICAg
Ly8gU2xpZ2h0bHkgcHJlZmVyIHNjcm9sbGluZyB2ZXJ0aWNhbGx5IGJ5IGFwcGx5aW5nIHRoZSA9
IGNhc2UgdG8gZGVsdGFZCi0gICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkK
LSAgICAgICAgZGVsdGFYID0gMDsKLSAgICBlbHNlCi0gICAgICAgIGRlbHRhWSA9IDA7Ci0KLSAg
ICBib29sIHNob3VsZFN0cmV0Y2ggPSBmYWxzZTsKLQotICAgIFBsYXRmb3JtV2hlZWxFdmVudFBo
YXNlIG1vbWVudHVtUGhhc2UgPSB3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKTsKLQotICAgIC8v
IElmIHdlIGFyZSBzdGFydGluZyBtb21lbnR1bSBzY3JvbGxpbmcgdGhlbiBkbyBzb21lIHNldHVw
LgotICAgIGlmICghbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgKG1vbWVudHVtUGhhc2Ug
PT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VCZWdhbiB8fCBtb21lbnR1bVBoYXNlID09IFBsYXRm
b3JtV2hlZWxFdmVudFBoYXNlQ2hhbmdlZCkpCi0gICAgICAgIG1fbW9tZW50dW1TY3JvbGxJblBy
b2dyZXNzID0gdHJ1ZTsKLQotICAgIENGVGltZUludGVydmFsIHRpbWVEZWx0YSA9IHdoZWVsRXZl
bnQudGltZXN0YW1wKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKLSAgICBpZiAo
bV9pblNjcm9sbEdlc3R1cmUgfHwgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKLSAgICAg
ICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYmIHRpbWVEZWx0YSA+IDAgJiYg
dGltZURlbHRhIDwgc2Nyb2xsVmVsb2NpdHlaZXJvaW5nVGltZW91dCkgewotICAgICAgICAgICAg
bV9tb21lbnR1bVZlbG9jaXR5LnNldFdpZHRoKGV2ZW50Q29hbGVzY2VkRGVsdGFYIC8gKGZsb2F0
KXRpbWVEZWx0YSk7Ci0gICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkuc2V0SGVpZ2h0KGV2
ZW50Q29hbGVzY2VkRGVsdGFZIC8gKGZsb2F0KXRpbWVEZWx0YSk7Ci0gICAgICAgICAgICBtX2xh
c3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7Ci0gICAg
ICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9
IHdoZWVsRXZlbnQudGltZXN0YW1wKCk7Ci0gICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkg
PSBGbG9hdFNpemUoKTsKLSAgICAgICAgfQotCi0gICAgICAgIGlmIChpc1ZlcnRpY2FsbHlTdHJl
dGNoZWQpIHsKLSAgICAgICAgICAgIGlmICghaXNIb3Jpem9udGFsbHlTdHJldGNoZWQgJiYgbV9j
bGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIDApKSkgewotICAgICAg
ICAgICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgdmVydGljYWwuCi0gICAgICAgICAg
ICAgICAgaWYgKGRlbHRhWSAmJiAoZmFic2YoZGVsdGFYIC8gZGVsdGFZKSA8IHJ1YmJlcmJhbmRE
aXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKLSAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0g
MDsKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVgpIDwgcnViYmVyYmFuZE1p
bmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgewotICAgICAgICAgICAgICAgICAgICBt
X292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRo
KCkgKyBkZWx0YVgpOwotICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAg
ICAgICAgIH0gZWxzZQotICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEu
c2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAg
ICAgICAgfQotICAgICAgICB9IGVsc2UgaWYgKGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7Ci0g
ICAgICAgICAgICAvLyBTdHJldGNoaW5nIG9ubHkgaW4gdGhlIGhvcml6b250YWwuCi0gICAgICAg
ICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkp
KSkgewotICAgICAgICAgICAgICAgIGlmIChkZWx0YVggJiYgKGZhYnNmKGRlbHRhWSAvIGRlbHRh
WCkgPCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbykpCi0gICAgICAgICAgICAg
ICAgICAgIGRlbHRhWSA9IDA7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoZmFic2YoZGVsdGFZ
KSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKLSAgICAg
ICAgICAgICAgICAgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhLnNldEhlaWdodChtX292ZXJmbG93
U2Nyb2xsRGVsdGEuaGVpZ2h0KCkgKyBkZWx0YVkpOwotICAgICAgICAgICAgICAgICAgICBkZWx0
YVkgPSAwOwotICAgICAgICAgICAgICAgIH0gZWxzZQotICAgICAgICAgICAgICAgICAgICBtX292
ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQo
KSArIGRlbHRhWSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICAvLyBOb3Qgc3RyZXRjaGluZyBhdCBhbGwgeWV0LgotICAgICAgICAgICAgaWYgKG1fY2xpZW50
LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZGVsdGFYLCBkZWx0YVkpKSkgewotICAgICAg
ICAgICAgICAgIGlmIChmYWJzZihkZWx0YVkpID49IGZhYnNmKGRlbHRhWCkpIHsKLSAgICAgICAg
ICAgICAgICAgICAgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVk
RGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93
U2Nyb2xsRGVsdGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0
YVgpOwotICAgICAgICAgICAgICAgICAgICAgICAgZGVsdGFYID0gMDsKLSAgICAgICAgICAgICAg
ICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVs
dGEuc2V0V2lkdGgobV9vdmVyZmxvd1Njcm9sbERlbHRhLndpZHRoKCkgKyBkZWx0YVgpOwotICAg
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBzaG91bGRTdHJldGNoID0gdHJ1ZTsKLSAg
ICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChkZWx0YVggfHwgZGVsdGFZ
KSB7Ci0gICAgICAgIGlmICghKHNob3VsZFN0cmV0Y2ggfHwgaXNWZXJ0aWNhbGx5U3RyZXRjaGVk
IHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSkgewotICAgICAgICAgICAgaWYgKGRlbHRhWSkg
ewotICAgICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLSAg
ICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKDAsIGRl
bHRhWSkpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKGRlbHRhWCkgewotICAgICAg
ICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLSAgICAgICAgICAg
ICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnkoRmxvYXRTaXplKGRlbHRhWCwgMCkpOwot
ICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgaWYgKCFtX2NsaWVu
dC0+YWxsb3dzSG9yaXpvbnRhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsKLSAgICAgICAgICAg
ICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0g
MDsKLSAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFYICYmICFpc0hvcml6b250YWxseVN0cmV0
Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIDAp
KSkgewotICAgICAgICAgICAgICAgIGRlbHRhWCAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsK
LQotICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250
ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YVgsIDApKTsKLSAgICAgICAgICAgICAg
ICBkZWx0YVggPSAwOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBpZiAoIW1fY2xpZW50
LT5hbGxvd3NWZXJ0aWNhbFN0cmV0Y2hpbmcod2hlZWxFdmVudCkpIHsKLSAgICAgICAgICAgICAg
ICBkZWx0YVkgPSAwOwotICAgICAgICAgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFZID0gMDsK
LSAgICAgICAgICAgIH0gZWxzZSBpZiAoZGVsdGFZICYmICFpc1ZlcnRpY2FsbHlTdHJldGNoZWQg
JiYgIW1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoMCwgZGVsdGFZKSkpIHsK
LSAgICAgICAgICAgICAgICBkZWx0YVkgKj0gc2Nyb2xsV2hlZWxNdWx0aXBsaWVyKCk7Ci0KLSAg
ICAgICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVk
Z2VDb25zdHJhaW50cyhGbG9hdFNpemUoMCwgZGVsdGFZKSk7Ci0gICAgICAgICAgICAgICAgZGVs
dGFZID0gMDsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgSW50U2l6ZSBzdHJldGNoQW1v
dW50ID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLQotICAgICAgICAgICAgaWYgKG1fbW9t
ZW50dW1TY3JvbGxJblByb2dyZXNzKSB7Ci0gICAgICAgICAgICAgICAgaWYgKChtX2NsaWVudC0+
cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGV2ZW50Q29hbGVzY2VkRGVsdGFYLCBldmVudENv
YWxlc2NlZERlbHRhWSkpIHx8IChmYWJzZihldmVudENvYWxlc2NlZERlbHRhWCkgKyBmYWJzZihl
dmVudENvYWxlc2NlZERlbHRhWSkgPD0gMCkpICYmIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0
YW1wKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1faWdub3JlTW9tZW50dW1TY3JvbGxzID0gdHJ1
ZTsKLSAgICAgICAgICAgICAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxz
ZTsKLSAgICAgICAgICAgICAgICAgICAgc25hcFJ1YmJlckJhbmQoKTsKLSAgICAgICAgICAgICAg
ICB9Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNl
dFdpZHRoKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkgKyBkZWx0YVgpOwotICAgICAgICAg
ICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0SGVpZ2h0KG1fc3RyZXRjaFNjcm9sbEZvcmNlLmhl
aWdodCgpICsgZGVsdGFZKTsKLQotICAgICAgICAgICAgRmxvYXRTaXplIGRhbXBlZERlbHRhKGNl
aWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxGb3JjZS53aWR0
aCgpKSksIGNlaWxmKGVsYXN0aWNEZWx0YUZvclJlYm91bmREZWx0YShtX3N0cmV0Y2hTY3JvbGxG
b3JjZS5oZWlnaHQoKSkpKTsKLQotICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9s
bEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoZGFtcGVkRGVsdGEgLSBzdHJldGNoQW1v
dW50KTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChtX21vbWVudHVtU2Nyb2xsSW5Qcm9n
cmVzcyAmJiBtb21lbnR1bVBoYXNlID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlRW5kZWQpIHsK
LSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKLSAgICAgICAgbV9p
Z25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAgICAgICAgbV9sYXN0TW9tZW50dW1TY3Jv
bGxUaW1lc3RhbXAgPSAwOwotICAgIH0KLQotICAgIHJldHVybiB0cnVlOwotfQotCi1zdGF0aWMg
aW5saW5lIGZsb2F0IHJvdW5kVG93YXJkWmVybyhmbG9hdCBudW0pCi17Ci0gICAgcmV0dXJuIG51
bSA+IDAgPyBjZWlsZihudW0gLSAwLjVmKSA6IGZsb29yZihudW0gKyAwLjVmKTsKLX0KLQotc3Rh
dGljIGlubGluZSBmbG9hdCByb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGZsb2F0IG51bSkK
LXsKLSAgICBmbG9hdCByb3VuZGVkTnVtID0gcm91bmRmKG51bSk7Ci0gICAgaWYgKGZhYnMobnVt
IC0gcm91bmRlZE51bSkgPCAwLjEyNSkKLSAgICAgICAgbnVtID0gcm91bmRlZE51bTsKLQotICAg
IHJldHVybiByb3VuZFRvd2FyZFplcm8obnVtKTsKLX0KLQotdm9pZCBTY3JvbGxDb250cm9sbGVy
OjpzbmFwUnViYmVyQmFuZFRpbWVyRmlyZWQoKQotewotICAgIGlmICghbV9tb21lbnR1bVNjcm9s
bEluUHJvZ3Jlc3MgfHwgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMpIHsKLSAgICAgICAgQ0ZUaW1l
SW50ZXJ2YWwgdGltZURlbHRhID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURh
dGVdIC0gbV9zdGFydFRpbWU7Ci0KLSAgICAgICAgaWYgKG1fc3RhcnRTdHJldGNoID09IEZsb2F0
U2l6ZSgpKSB7Ci0gICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IG1fY2xpZW50LT5zdHJldGNo
QW1vdW50KCk7Ci0gICAgICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXplKCkp
IHsKLSAgICAgICAgICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOwotCi0gICAgICAg
ICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2UgPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAg
ICAgICBtX3N0YXJ0VGltZSA9IDA7Ci0gICAgICAgICAgICAgICAgbV9zdGFydFN0cmV0Y2ggPSBG
bG9hdFNpemUoKTsKLSAgICAgICAgICAgICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7
Ci0gICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLSAgICAgICAg
ICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIG1fb3JpZ09yaWdp
biA9IG1fY2xpZW50LT5hYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgLSBtX3N0YXJ0U3RyZXRjaDsK
LSAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gbV9tb21lbnR1bVZlbG9jaXR5OwotCi0gICAg
ICAgICAgICAvLyBKdXN0IGxpa2Ugbm9ybWFsIHNjcm9sbGluZywgcHJlZmVyIHZlcnRpY2FsIHJ1
YmJlcmJhbmRpbmcKLSAgICAgICAgICAgIGlmIChmYWJzZihtX29yaWdWZWxvY2l0eS5oZWlnaHQo
KSkgPj0gZmFic2YobV9vcmlnVmVsb2NpdHkud2lkdGgoKSkpCi0gICAgICAgICAgICAgICAgbV9v
cmlnVmVsb2NpdHkuc2V0V2lkdGgoMCk7Ci0KLSAgICAgICAgICAgIC8vIERvbid0IHJ1YmJlci1i
YW5kIGhvcml6b250YWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0byBzY3JvbGwgaG9yaXpvbnRh
bGx5Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxIb3Jpem9udGFsbHkoKSkK
LSAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgwKTsKLQotICAgICAgICAg
ICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQgdmVydGljYWxseSBpZiBpdCdzIG5vdCBwb3NzaWJsZSB0
byBzY3JvbGwgdmVydGljYWxseQotICAgICAgICAgICAgaWYgKCFtX2NsaWVudC0+Y2FuU2Nyb2xs
VmVydGljYWxseSgpKQotICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldEhlaWdodCgw
KTsKLSAgICAgICAgfQotCi0gICAgICAgIEZsb2F0UG9pbnQgZGVsdGEocm91bmRUb0RldmljZVBp
eGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2gud2lk
dGgoKSwgLW1fb3JpZ1ZlbG9jaXR5LndpZHRoKCksIChmbG9hdCl0aW1lRGVsdGEpKSwKLSAgICAg
ICAgICAgIHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZWxhc3RpY0RlbHRhRm9yVGltZURl
bHRhKG1fc3RhcnRTdHJldGNoLmhlaWdodCgpLCAtbV9vcmlnVmVsb2NpdHkuaGVpZ2h0KCksIChm
bG9hdCl0aW1lRGVsdGEpKSk7Ci0KLSAgICAgICAgaWYgKGZhYnMoZGVsdGEueCgpKSA+PSAxIHx8
IGZhYnMoZGVsdGEueSgpKSA+PSAxKSB7Ci0gICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRl
U2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhGbG9hdFNpemUoZGVsdGEueCgp
LCBkZWx0YS55KCkpIC0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKSk7Ci0KLSAgICAgICAgICAg
IEZsb2F0U2l6ZSBuZXdTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKLQotICAg
ICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgocmVib3VuZERlbHRhRm9yRWxh
c3RpY0RlbHRhKG5ld1N0cmV0Y2gud2lkdGgoKSkpOwotICAgICAgICAgICAgbV9zdHJldGNoU2Ny
b2xsRm9yY2Uuc2V0SGVpZ2h0KHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShuZXdTdHJldGNo
LmhlaWdodCgpKSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBtX2NsaWVudC0+YWRq
dXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCk7Ci0KLSAgICAgICAgICAgIHN0
b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0gICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3Jj
ZSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgbV9zdGFydFRpbWUgPSAwOwotICAgICAgICAg
ICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICAgICAgICAgIG1fb3JpZ09yaWdp
biA9IEZsb2F0UG9pbnQoKTsKLSAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXpl
KCk7Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgICBtX3N0YXJ0VGltZSA9IFtOU0Rh
dGUgdGltZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKLSAgICAgICAgbV9zdGFydFN0cmV0
Y2ggPSBGbG9hdFNpemUoKTsKLSAgICB9Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJvbGxlcjo6aXNS
dWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0Ci17Ci0gICAgaWYgKCFtX2luU2Nyb2xsR2VzdHVy
ZSAmJiAhbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgJiYgIW1fc25hcFJ1YmJlcmJhbmRUaW1l
cklzQWN0aXZlKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICByZXR1cm4gIW1fY2xpZW50
LT5zdHJldGNoQW1vdW50KCkuaXNaZXJvKCk7Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6
c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKQotewotICAgIG1fY2xpZW50LT5zdG9wU25hcFJ1YmJl
cmJhbmRUaW1lcigpOwotICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlID0gZmFsc2U7
Ci19Ci0KLXZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c25hcFJ1YmJlckJhbmQoKQotewotICAgIENG
VGltZUludGVydmFsIHRpbWVEZWx0YSA9IHN5c3RlbVVwdGltZSgpIC0gbV9sYXN0TW9tZW50dW1T
Y3JvbGxUaW1lc3RhbXA7Ci0gICAgaWYgKG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wICYm
IHRpbWVEZWx0YSA+PSBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0KQotICAgICAgICBtX21v
bWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLQotICAgIG1faW5TY3JvbGxHZXN0dXJlID0g
ZmFsc2U7Ci0KLSAgICBpZiAobV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCi0gICAgICAg
IHJldHVybjsKLQotICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJl
ZmVyZW5jZURhdGVdOwotICAgIG1fc3RhcnRTdHJldGNoID0gRmxvYXRTaXplKCk7Ci0gICAgbV9v
cmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOwotICAgIG1fb3JpZ1ZlbG9jaXR5ID0gRmxvYXRTaXpl
KCk7Ci0KLSAgICBtX2NsaWVudC0+c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0gICAgbV9z
bmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSB0cnVlOwotfQotCi1ib29sIFNjcm9sbENvbnRy
b2xsZXI6OnNob3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZv
cm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQotewotICAgIGlmICh3aGVlbEV2ZW50LmRlbHRhWCgp
ID4gMCkKLSAgICAgICAgcmV0dXJuIG1fY2xpZW50LT5zaG91bGRSdWJiZXJCYW5kSW5EaXJlY3Rp
b24oU2Nyb2xsTGVmdCk7Ci0gICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPCAwKQotICAgICAg
ICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxSaWdo
dCk7Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247817</attachid>
            <date>2015-03-03 16:58:46 -0800</date>
            <delta_ts>2015-03-03 17:06:13 -0800</delta_ts>
            <desc>Patch v10 (Includes new test)</desc>
            <filename>bug-142102-20150303165828.patch</filename>
            <type>text/plain</type>
            <size>91981</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MDk0MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDg3IEBACisyMDE1LTAzLTAzICBCcmVudCBG
dWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgc2Nyb2xsIGFuaW1h
dGluZyBmdW5jdGlvbnMgZnJvbSBTY3JvbGxBbmltYXRvciB0byBTY3JvbGxDb250cm9sbGVyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIxMDIKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIwMDA3MTYxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RlZCBieSBwbGF0Zm9ybS9tYWMtd2syL3RpbGVk
LWRyYXdpbmcvc2Nyb2xsaW5nL2Zhc3Qtc2Nyb2xsLW1haW5mcmFtZS16b29tLmh0bWwuCisKKyAg
ICAgICAgRG8gc29tZSByZWZhY3RvcmluZyBvZiB0aGUgdmFyaW91cyBzY3JvbGxpbmcgY2xhc3Nl
czoKKyAgICAgICAgMS4gQ29uc29saWRhdGUgYW5pbWF0aW9uIHRpbWVzIHRvIFJ1bkxvb3A6OlRp
bWVyIGluc3RlYWQgb2YgYSBjb21iaW5hdGlvbiBvZiBXZWJDb3JlOjpUaW1lcgorICAgICAgICAg
ICBhbmQgQ0ZSdW5Mb29wVGltZXJzLiBEbyB0aGlzIGZvciBTY3JvbGwgU25hcCBQb2ludCBhbmQg
UnViYmVyYmFuZCBhbmltYXRpb25zLgorICAgICAgICAyLiBNb3ZlIFNjcm9sbENvbnRyb2xsZXIg
ZnJvbSBwbGF0Zm9ybS9tYWMgdG8gcGxhdGZvcm0vY29jb2EgdG8gZW5hYmxlIHNoYXJpbmcgd2l0
aCBpT1MuCisgICAgICAgIDMuIE1vdmUgY29kZSBmcm9tIFNjcm9sbEFuaW1hdG9ye01hY30gLT4g
U2Nyb2xsQ29udHJvbGxlci4KKyAgICAgICAgNC4gUmVuYW1lIHNjcm9sbE9mZnNldEluQXhpcyAt
PiBzY3JvbGxPZmZzZXRPbkF4aXMKKyAgICAgICAgNS4gUmVuYW1lIGltbWVkaWF0ZVNjcm9sbElu
QXhpcyAtPiBpbW1lZGlhdGVTY3JvbGxPbkF4aXMKKworICAgICAgICAqIFdlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajogTW92ZSBTY3JvbGxDb250cm9sbGVyIHRvICdwbGF0Zm9ybS9j
b2NvYScKKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IE1ha2Ugc3VyZSB0
aGUgc2Nyb2xsIGNvbnRyb2xsZXIgaXMgbm90aWZpZWQgb2YgZW5kLW9mLXNjcm9sbAorICAgICAg
ICBldmVudHMsIGp1c3QgYXMgaXMgZG9uZSBmb3IgdGhlICJldmVudCBub3QgaGFuZGxlZCIgY2Fz
ZSBpbiBFdmVudEhhbmRsZXIuY3BwLiAKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6
cGxhdGZvcm1Db21wbGV0ZVdoZWVsRXZlbnQpOgorICAgICAgICAqIHBhZ2Uvc2Nyb2xsaW5nL21h
Yy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmg6IFJlbW92ZSB0aW1lciBhbmQg
c29tZSBkZWxlZ2F0ZQorICAgICAgICBtZXRob2RzLCBub3cgdGhhdCBTY3JvbGxDb250cm9sbGVy
IGlzIGNvbnRyb2xsaW5nIHRoaXMgc3RhdGUuCisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvbWFj
L1Njcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWMubW06CisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjp+U2Nyb2xsaW5nVHJlZUZyYW1l
U2Nyb2xsaW5nTm9kZU1hYyk6IFdlIG5vIGxvbmdlcgorICAgICAgICBuZWVkIHRvIGNsZWFuIHVw
IHRoZSBDRlJ1bkxvb3BUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFt
ZVNjcm9sbGluZ05vZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKTogTWFrZSBzdXJlIHNj
cm9sbAorICAgICAgICBzdGF0ZSBpcyB1cGRhdGVkIGFmdGVyIHJ1YmJlciBiYW5kIHNuYXAuCisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjpzY3Jv
bGxPZmZzZXRPbkF4aXMpOiBBZGQgdGVtcG9yYXJ5IHN0dWIgbmVlZGVkCisgICAgICAgIHVudGls
IEJ1ZzE5NzMgaXMgY29tcGxldGVkLikuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVl
RnJhbWVTY3JvbGxpbmdOb2RlTWFjOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnN0YXJ0
U25hcFJ1YmJlcmJhbmRUaW1lcik6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xs
QW5pbWF0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OlNjcm9sbEFu
aW1hdG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpwcm9jZXNzV2hlZWxF
dmVudEZvclNjcm9sbFNuYXApOiBKdXN0IGNhbGwgdGhlIFNjcm9sbENvbnRyb2xsZXIgbWV0aG9k
LgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmhhbmRsZVdoZWVsRXZlbnQpOiBE
aXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjp1cGRhdGVTY3JvbGxBbmlt
YXRvcnNBbmRUaW1lcnMpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9y
OjpzY3JvbGxPZmZzZXRPbkF4aXMpOiBSZW5hbWVkIGZyb20gc2Nyb2xsT2Zmc2V0SW5BeGlzLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9sbE9uQXhpcyk6
IFJlbmFtZWQgZnJvbSBpbW1lZGlhdGVTY3JvbGxJbkF4aXMuCisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0SW5BeGlzKTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OlNjcm9sbEFuaW1hdG9yOjppbW1lZGlhdGVTY3JvbGxJbkF4aXMpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQW5pbWF0b3I6OnN0YXJ0U2Nyb2xsU25hcFRpbWVyKTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpzdG9wU2Nyb2xsU25h
cFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbEFuaW1hdG9yOjpob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6
U2Nyb2xsQW5pbWF0b3I6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBEZWxldGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbEFuaW1hdG9yLmg6CisgICAgICAgICogcGxhdGZvcm0v
Y29jb2EvU2Nyb2xsQ29udHJvbGxlci5oOiBDb3BpZWQgZnJvbSBwbGF0Zm9ybS9tYWMvU2Nyb2xs
Q29udHJvbGxlci5oLgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsQ29udHJvbGxlckNsaWVudDo6
c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRy
b2xsZXJDbGllbnQ6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKToKKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbENvbnRyb2xsZXJDbGllbnQ6OnN0YXJ0U2Nyb2xsU25hcFRpbWVyKToKKyAgICAgICAg
KFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXJDbGllbnQ6OnN0b3BTY3JvbGxTbmFwVGltZXIpOgor
ICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW06IENvcGllZCBmcm9t
IHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tLgorICAgICAgICAoV2ViQ29yZTo6U2Ny
b2xsQ29udHJvbGxlcjo6U2Nyb2xsQ29udHJvbGxlcik6IFVwZGF0ZSB0byBpbml0aWFsaXplIG5l
dyB0aW1lcnMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpoYW5kbGVXaGVl
bEV2ZW50KTogVXBkYXRlIHRvIGhhbmRsZSBTY3JvbGwgU25hcCBQb2ludCBldmVudHMuCisgICAg
ICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIp
OiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnN0b3BTbmFwUnVi
YmVyYmFuZFRpbWVyKTogTWFuYWdlIGFuaW1hdGlvbiB0aW1lcnMgbG9jYWxseSwgZG8gbm90Cisg
ICAgICAgIHJlcXVpcmUgY2xpZW50IHRvIG1haW50YWluIHRpbWVycy4KKyAgICAgICAgKFdlYkNv
cmU6OlNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAp
OiBBZGRlZC4gKE1vdmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMpCisgICAgICAgIChXZWJDb3Jl
OjpTY3JvbGxDb250cm9sbGVyOjp1cGRhdGVTY3JvbGxBbmltYXRvcnNBbmRUaW1lcnMpOiBEaXR0
by4gQWxzbyB1cGRhdGVkIHRvIHVzZSBSdW5Mb29wOjpUaW1lci4KKyAgICAgICAgKFdlYkNvcmU6
OlNjcm9sbENvbnRyb2xsZXI6OnN0YXJ0U2Nyb2xsU25hcFRpbWVyKTogRGl0dG8uIEFsc28gdXBk
YXRlZCB0byB1c2UgUnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250
cm9sbGVyOjpzdG9wU2Nyb2xsU25hcFRpbWVyKTogRGl0dG8uIEFsc28gdXBkYXRlZCB0byB1c2Ug
UnVuTG9vcDo6VGltZXIuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250cm9sbGVyOjpob3Jp
em9udGFsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNj
cm9sbENvbnRyb2xsZXI6OnZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyRmlyZWQpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OlNjcm9sbENvbnRyb2xsZXI6OnNjcm9sbE9mZnNldE9uQXhpcyk6IE1v
dmVkIGZyb20gU2Nyb2xsQW5pbWF0b3JNYWMuCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxDb250
cm9sbGVyOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMpOiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9y
bS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oOiBSZW5hbWUgbWV0aG9kcyBmcm9tICdJbkF4
aXMnIHRvICdPbkF4aXMnCisgICAgICAgICogcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFwQW5p
bWF0b3IubW06CisgICAgICAgIChXZWJDb3JlOjpBeGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpoYW5k
bGVXaGVlbEV2ZW50KTogVXBkYXRlIGZvciAnSW5BeGlzJyB0byAnT25BeGlzJyByZW5hbWluZy4K
KyAgICAgICAgKFdlYkNvcmU6OkF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OnNjcm9sbFNuYXBBbmlt
YXRpb25VcGRhdGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkF4aXNTY3JvbGxTbmFwQW5p
bWF0b3I6OmJlZ2luU2Nyb2xsU25hcEFuaW1hdGlvbik6IERpdHRvLgorICAgICAgICAoV2ViQ29y
ZTo6QXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZVNuYXBEZWx0YSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6QXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6Y29tcHV0ZUdsaWRlRGVsdGEp
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMuaDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JNYWMubW06CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxBbmltYXRvck1hYzo6U2Nyb2xsQW5pbWF0b3JNYWMpOiBSZW1vdmUgdW51c2Vk
IFJ1YmJlcmJhbmQgdGltZXJzIChub3cgdGhhdCB0aGlzIGlzCisgICAgICAgIGNvbnRyb2xsZWQg
aW4gdGhlIFNjcm9sbENvbnRyb2xsZXIpCisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRv
ck1hYzo6c3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlNjcm9sbEFuaW1hdG9yTWFjOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcik6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxBbmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1l
ckZpcmVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJvbGxl
ci5oOiBSZW1vdmVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1t
OiBSZW1vdmVkLgorCiAyMDE1LTAzLTAzICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+
CiAKICAgICAgICAgTWFrZSBBdWRpb0NvbnRleHQgc3VzcGVuZGFibGUgd2hlbiBpdCBpcyBub3Qg
cmVuZGVyaW5nCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxODA5MzUpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTE2NTg3LDgg
KzE2NTg3LDYgQEAKIAkJCQlCQzUxMTU2RDEyQjE3NDlDMDBDOTY3NTQgLyogU2Nyb2xsQW5pbWF0
b3JNYWMubW0gKi8sCiAJCQkJQkM4Qjg1M0MwRTdDN0YxMTAwQUI2OTg0IC8qIFNjcm9sbGJhclRo
ZW1lTWFjLmggKi8sCiAJCQkJQkNFRjg2OUUwRTg0NEU5RDAwQTg1Q0Q1IC8qIFNjcm9sbGJhclRo
ZW1lTWFjLm1tICovLAotCQkJCTFBQTg0RjAzMTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxDb250
cm9sbGVyLmggKi8sCi0JCQkJMUFBODRGMDIxNDNCQTdCRDAwNTFEMTUzIC8qIFNjcm9sbENvbnRy
b2xsZXIubW0gKi8sCiAJCQkJOTM1MzY3NkEwOUFFRDg4QjAwRDM1Q0Q2IC8qIFNjcm9sbFZpZXdN
YWMubW0gKi8sCiAJCQkJMDc3QUYxNDExOEY0QjFCQjAwMDFFRDYxIC8qIFNlcmlhbGl6ZWRQbGF0
Zm9ybVJlcHJlc2VudGF0aW9uTWFjLmggKi8sCiAJCQkJMDc3QUYxNDIxOEY0QjFCQjAwMDFFRDYx
IC8qIFNlcmlhbGl6ZWRQbGF0Zm9ybVJlcHJlc2VudGF0aW9uTWFjLm1tICovLApAQCAtMTg2OTgs
NiArMTg2OTYsOCBAQAogCQkJCTFBMDQwOUYyMUE0MzY3NUMwMDlFNDdGMyAvKiBNYWNoU2VuZFJp
Z2h0LmNwcCAqLywKIAkJCQkxQTA0MDlEQjFBNDM2MEI1MDA5RTQ3RjMgLyogTWFjaFNlbmRSaWdo
dC5oICovLAogCQkJCUFEQjZCMjk3MThGQjkwMjQwMDgxOTYzRSAvKiBNZW1vcnlQcmVzc3VyZUhh
bmRsZXJDb2NvYS5tbSAqLywKKwkJCQkxQUE4NEYwMzE0M0JBN0JEMDA1MUQxNTMgLyogU2Nyb2xs
Q29udHJvbGxlci5oICovLAorCQkJCTFBQTg0RjAyMTQzQkE3QkQwMDUxRDE1MyAvKiBTY3JvbGxD
b250cm9sbGVyLm1tICovLAogCQkJCTVENTk3NUIxMTk2MzVGMTEwMEQwMDg3OCAvKiBTeXN0ZW1W
ZXJzaW9uLmggKi8sCiAJCQkJNUQ1OTc1QjIxOTYzNUYxMTAwRDAwODc4IC8qIFN5c3RlbVZlcnNp
b24ubW0gKi8sCiAJCQkJN0NDNTY0QjkxOEJBQzcyMDAwMUI5NjUyIC8qIFRlbGVwaG9uZU51bWJl
ckRldGVjdG9yQ29jb2EuY3BwICovLApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9tYWMvRXZl
bnRIYW5kbGVyTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvbWFjL0V2
ZW50SGFuZGxlck1hYy5tbQkocmV2aXNpb24gMTgwOTM1KQorKysgU291cmNlL1dlYkNvcmUvcGFn
ZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05NjEsNiArOTYxLDEy
IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpwbGF0Zm9ybUNvbXBsZXRlV2hlZWwKICAgICAKICAgICBi
b29sIGRpZEhhbmRsZUV2ZW50ID0gdmlldyA/IHZpZXctPndoZWVsRXZlbnQod2hlZWxFdmVudCkg
OiBmYWxzZTsKICAgICBtX2lzSGFuZGxpbmdXaGVlbEV2ZW50ID0gZmFsc2U7CisKKyNpZiBFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKQorICAgIGlmIChzY3JvbGxhYmxlQXJlYSkKKyAgICAgICAgcGxh
dGZvcm1Ob3RpZnlTbmFwSWZOZWNlc3Nhcnkod2hlZWxFdmVudCwgKnNjcm9sbGFibGVBcmVhKTsK
KyNlbmRpZgorCiAgICAgcmV0dXJuIGRpZEhhbmRsZUV2ZW50OwogfQogCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9k
ZU1hYy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9T
Y3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLmgJKHJldmlzaW9uIDE4MDkzNSkKKysr
IFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3Jv
bGxpbmdOb2RlTWFjLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAxMiwgMjAxNC0yMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
ICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNTEsMzkgKzUxLDQyIEBAIHByaXZh
dGU6CiAgICAgdmlydHVhbCB2b2lkIGhhbmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVl
bEV2ZW50Jikgb3ZlcnJpZGU7CiAKICAgICAvLyBTY3JvbGxDb250cm9sbGVyIG1lbWJlciBmdW5j
dGlvbnMuCi0gICAgdmlydHVhbCBib29sIGFsbG93c0hvcml6b250YWxTdHJldGNoaW5nKGNvbnN0
IFBsYXRmb3JtV2hlZWxFdmVudCYpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgYm9vbCBhbGxvd3NW
ZXJ0aWNhbFN0cmV0Y2hpbmcoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jikgb3ZlcnJpZGU7Ci0g
ICAgdmlydHVhbCBJbnRTaXplIHN0cmV0Y2hBbW91bnQoKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFs
IGJvb2wgcGlubmVkSW5EaXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikgb3ZlcnJpZGU7Ci0gICAg
dmlydHVhbCBib29sIGNhblNjcm9sbEhvcml6b250YWxseSgpIG92ZXJyaWRlOwotICAgIHZpcnR1
YWwgYm9vbCBjYW5TY3JvbGxWZXJ0aWNhbGx5KCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCBib29s
IHNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxEaXJlY3Rpb24pIG92ZXJyaWRlOwot
ICAgIHZpcnR1YWwgSW50UG9pbnQgYWJzb2x1dGVTY3JvbGxQb3NpdGlvbigpIG92ZXJyaWRlOwot
ICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9hdFNpemUmKSBvdmVy
cmlkZTsKLSAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVk
Z2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIHZv
aWQgc3RhcnRTbmFwUnViYmVyYmFuZFRpbWVyKCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lk
IHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIGFk
anVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpIG92ZXJyaWRlOwotCi0gICAg
dmlydHVhbCBGbG9hdFBvaW50IHNjcm9sbFBvc2l0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAg
dmlydHVhbCB2b2lkIHNldFNjcm9sbFBvc2l0aW9uKGNvbnN0IEZsb2F0UG9pbnQmKSBvdmVycmlk
ZTsKLSAgICB2aXJ0dWFsIHZvaWQgc2V0U2Nyb2xsUG9zaXRpb25XaXRob3V0Q29udGVudEVkZ2VD
b25zdHJhaW50cyhjb25zdCBGbG9hdFBvaW50Jikgb3ZlcnJpZGU7CisgICAgYm9vbCBhbGxvd3NI
b3Jpem9udGFsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKSBvdmVycmlkZTsK
KyAgICBib29sIGFsbG93c1ZlcnRpY2FsU3RyZXRjaGluZyhjb25zdCBQbGF0Zm9ybVdoZWVsRXZl
bnQmKSBvdmVycmlkZTsKKyAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQoKSBvdmVycmlkZTsKKyAg
ICBib29sIHBpbm5lZEluRGlyZWN0aW9uKGNvbnN0IEZsb2F0U2l6ZSYpIG92ZXJyaWRlOworICAg
IGJvb2wgY2FuU2Nyb2xsSG9yaXpvbnRhbGx5KCkgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5TY3Jv
bGxWZXJ0aWNhbGx5KCkgb3ZlcnJpZGU7CisgICAgYm9vbCBzaG91bGRSdWJiZXJCYW5kSW5EaXJl
Y3Rpb24oU2Nyb2xsRGlyZWN0aW9uKSBvdmVycmlkZTsKKyAgICBJbnRQb2ludCBhYnNvbHV0ZVNj
cm9sbFBvc2l0aW9uKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShjb25z
dCBGbG9hdFNpemUmKSBvdmVycmlkZTsKKyAgICB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91
dENvbnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgb3ZlcnJpZGU7CisgICAg
dm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpIG92ZXJyaWRlOworICAgIHZvaWQgYWRqdXN0
U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgb3ZlcnJpZGU7CisKKyAgICBGbG9h
dFBvaW50IHNjcm9sbFBvc2l0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRTY3Jv
bGxQb3NpdGlvbihjb25zdCBGbG9hdFBvaW50Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRTY3Jv
bGxQb3NpdGlvbldpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKGNvbnN0IEZsb2F0UG9pbnQm
KSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVMYXllcnNBZnRlclZpZXdwb3J0
Q2hhbmdlKGNvbnN0IEZsb2F0UmVjdCYgZml4ZWRQb3NpdGlvblJlY3QsIGRvdWJsZSBzY2FsZSkg
b3ZlcnJpZGU7CisgICAgdm9pZCB1cGRhdGVMYXllcnNBZnRlclZpZXdwb3J0Q2hhbmdlKGNvbnN0
IEZsb2F0UmVjdCYgZml4ZWRQb3NpdGlvblJlY3QsIGRvdWJsZSBzY2FsZSkgb3ZlcnJpZGU7CiAK
LSAgICB2aXJ0dWFsIHZvaWQgc2V0U2Nyb2xsTGF5ZXJQb3NpdGlvbihjb25zdCBGbG9hdFBvaW50
Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRTY3JvbGxMYXllclBvc2l0aW9uKGNvbnN0IEZsb2F0
UG9pbnQmKSBvdmVycmlkZTsKIAotICAgIHZpcnR1YWwgRmxvYXRQb2ludCBtaW5pbXVtU2Nyb2xs
UG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKLSAgICB2aXJ0dWFsIEZsb2F0UG9pbnQgbWF4aW11
bVNjcm9sbFBvc2l0aW9uKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgRmxvYXRQb2ludCBtaW5pbXVt
U2Nyb2xsUG9zaXRpb24oKSBjb25zdCBvdmVycmlkZTsKKyAgICBGbG9hdFBvaW50IG1heGltdW1T
Y3JvbGxQb3NpdGlvbigpIGNvbnN0IG92ZXJyaWRlOwogCiAgICAgdm9pZCB1cGRhdGVNYWluRnJh
bWVQaW5TdGF0ZShjb25zdCBGbG9hdFBvaW50JiBzY3JvbGxQb3NpdGlvbik7CiAKICAgICBib29s
IGlzQWxyZWFkeVBpbm5lZEluRGlyZWN0aW9uT2ZHZXN0dXJlKGNvbnN0IFBsYXRmb3JtV2hlZWxF
dmVudCYsIFNjcm9sbEV2ZW50QXhpcyk7CiAKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAm
JiBQTEFURk9STShNQUMpCisgICAgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xs
RXZlbnRBeGlzKSBvdmVycmlkZTsKKyAgICB2b2lkIGltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3Jv
bGxFdmVudEF4aXMsIGZsb2F0IGRlbHRhKSBvdmVycmlkZTsKKyNlbmRpZgorCiAgICAgdm9pZCBs
b2dFeHBvc2VkVW5maWxsZWRBcmVhKCk7CiAKICAgICBTY3JvbGxDb250cm9sbGVyIG1fc2Nyb2xs
Q29udHJvbGxlcjsKLSAgICBSZXRhaW5QdHI8Q0ZSdW5Mb29wVGltZXJSZWY+IG1fc25hcFJ1YmJl
cmJhbmRUaW1lcjsKIAogICAgIFJldGFpblB0cjxDQUxheWVyPiBtX3Njcm9sbExheWVyOwogICAg
IFJldGFpblB0cjxDQUxheWVyPiBtX3Njcm9sbGVkQ29udGVudHNMYXllcjsKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21hYy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdO
b2RlTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21h
Yy9TY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjLm1tCShyZXZpc2lvbiAxODA5MzUp
CisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZUZyYW1l
U2Nyb2xsaW5nTm9kZU1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTIsIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICogQ29weXJpZ2h0IChDKSAyMDEyLCAyMDE0LTIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC02Niw4ICs2Niw2
IEBAIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OlNjcm8KIAogU2Nyb2xsaW5n
VHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6flNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05v
ZGVNYWMoKQogewotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXIpCi0gICAgICAgIENGUnVu
TG9vcFRpbWVySW52YWxpZGF0ZShtX3NuYXBSdWJiZXJiYW5kVGltZXIuZ2V0KCkpOwogfQogCiB2
b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnVwZGF0ZUJlZm9yZUNoaWxk
cmVuKGNvbnN0IFNjcm9sbGluZ1N0YXRlTm9kZSYgc3RhdGVOb2RlKQpAQCAtMjk2LDMwICsyOTQs
MTIgQEAgdm9pZCBTY3JvbGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOgogICAgIHNjcm9s
bEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMob2Zmc2V0KTsKIH0KIAotdm9pZCBTY3Jv
bGxpbmdUcmVlRnJhbWVTY3JvbGxpbmdOb2RlTWFjOjpzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIo
KQotewotICAgIEFTU0VSVCghbV9zbmFwUnViYmVyYmFuZFRpbWVyKTsKLQotICAgIENGVGltZUlu
dGVydmFsIHRpbWVySW50ZXJ2YWwgPSAxLjAgLyA2MC4wOwotCi0gICAgbV9zbmFwUnViYmVyYmFu
ZFRpbWVyID0gYWRvcHRDRihDRlJ1bkxvb3BUaW1lckNyZWF0ZVdpdGhIYW5kbGVyKGtDRkFsbG9j
YXRvckRlZmF1bHQsIENGQWJzb2x1dGVUaW1lR2V0Q3VycmVudCgpICsgdGltZXJJbnRlcnZhbCwg
dGltZXJJbnRlcnZhbCwgMCwgMCwgXihDRlJ1bkxvb3BUaW1lclJlZikgewotICAgICAgICBtX3Nj
cm9sbENvbnRyb2xsZXIuc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7Ci0gICAgfSkpOwotICAg
IENGUnVuTG9vcEFkZFRpbWVyKENGUnVuTG9vcEdldEN1cnJlbnQoKSwgbV9zbmFwUnViYmVyYmFu
ZFRpbWVyLmdldCgpLCBrQ0ZSdW5Mb29wRGVmYXVsdE1vZGUpOwotfQotCiB2b2lkIFNjcm9sbGlu
Z1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKIHsK
LSAgICBpZiAoIW1fc25hcFJ1YmJlcmJhbmRUaW1lcikKLSAgICAgICAgcmV0dXJuOwotCiAgICAg
c2Nyb2xsaW5nVHJlZSgpLnNldE1haW5GcmFtZUlzUnViYmVyQmFuZGluZyhmYWxzZSk7CiAKICAg
ICAvLyBTaW5jZSB0aGUgcnViYmVyYmFuZCB0aW1lciBoYXMgc3RvcHBlZCwgdG90YWxDb250ZW50
c1NpemVGb3JSdWJiZXJCYW5kIGNhbiBiZSBzeW5jaHJvbml6ZWQgd2l0aCB0b3RhbENvbnRlbnRz
U2l6ZS4KICAgICBzZXRUb3RhbENvbnRlbnRzU2l6ZUZvclJ1YmJlckJhbmQodG90YWxDb250ZW50
c1NpemUoKSk7Ci0KLSAgICBDRlJ1bkxvb3BUaW1lckludmFsaWRhdGUobV9zbmFwUnViYmVyYmFu
ZFRpbWVyLmdldCgpKTsKLSAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXIgPSBudWxscHRyOwogfQog
CiB2b2lkIFNjcm9sbGluZ1RyZWVGcmFtZVNjcm9sbGluZ05vZGVNYWM6OmFkanVzdFNjcm9sbFBv
c2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpCkBAIC01NDAsNiArNTIwLDE5IEBAIHZvaWQgbG9n
V2hlZWxFdmVudEhhbmRsZXJDb3VudENoYW5nZWQodW4KICAgICBXVEZMb2dBbHdheXMoIlNDUk9M
TElORzogV2hlZWwgZXZlbnQgaGFuZGxlciBjb3VudCBjaGFuZ2VkLiBUaW1lOiAlZiBDb3VudDog
JXVcbiIsIFdURjo6bW9ub3RvbmljYWxseUluY3JlYXNpbmdUaW1lKCksIGNvdW50KTsKIH0KIAor
I2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKK0xheW91dFVuaXQg
U2Nyb2xsaW5nVHJlZUZyYW1lU2Nyb2xsaW5nTm9kZU1hYzo6c2Nyb2xsT2Zmc2V0T25BeGlzKFNj
cm9sbEV2ZW50QXhpcykKK3sKKyAgICAvLyBUZW1wb3Jhcnkgc3R1YiB1bnRpbCBodHRwOi8vd2Vi
a2l0Lm9yZy9iLzE0MTk3My4KKyAgICByZXR1cm4gMDsKK30KKwordm9pZCBTY3JvbGxpbmdUcmVl
RnJhbWVTY3JvbGxpbmdOb2RlTWFjOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRB
eGlzLCBmbG9hdCkKK3sKKyAgICAvLyBUZW1wb3Jhcnkgc3R1YiB1bnRpbCBodHRwOi8vd2Via2l0
Lm9yZy9iLzE0MTk3My4KK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNl
bmRpZiAvLyBFTkFCTEUoQVNZTkNfU0NST0xMSU5HKSAmJiBQTEFURk9STShNQUMpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsQW5pbWF0b3IuY3BwCShyZXZpc2lvbiAxODA5
MzUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxBbmltYXRvci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTQ5LDYgKzQ5LDkgQEAgc3RkOjp1bmlxdWVfcHRyPFNjcm9sbEFuaW1hdG9y
PiBTY3JvbGxBbgogCiBTY3JvbGxBbmltYXRvcjo6U2Nyb2xsQW5pbWF0b3IoU2Nyb2xsYWJsZUFy
ZWEmIHNjcm9sbGFibGVBcmVhKQogICAgIDogbV9zY3JvbGxhYmxlQXJlYShzY3JvbGxhYmxlQXJl
YSkKKyNpZiAoRU5BQkxFKENTU19TQ1JPTExfU05BUCkgfHwgRU5BQkxFKFJVQkJFUl9CQU5ESU5H
KSkgJiYgUExBVEZPUk0oTUFDKQorICAgICwgbV9zY3JvbGxDb250cm9sbGVyKHRoaXMpCisjZW5k
aWYKICAgICAsIG1fY3VycmVudFBvc1goMCkKICAgICAsIG1fY3VycmVudFBvc1koMCkKIHsKQEAg
LTgxLDI4ICs4NCwxNyBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjpzY3JvbGxUb09mZnNldFdpdGhv
CiB9CiAKICNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi12b2lk
IFNjcm9sbEFuaW1hdG9yOjpwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9sbFNuYXAoY29uc3QgUGxh
dGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQorYm9vbCBTY3JvbGxBbmltYXRvcjo6cHJvY2Vz
c1doZWVsRXZlbnRGb3JTY3JvbGxTbmFwKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxF
dmVudCkKIHsKLSAgICBpZiAobV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcikKLSAgICAgICAg
bV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvci0+aGFuZGxlV2hlZWxFdmVudCh3aGVlbEV2ZW50
KTsKLSAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yKQotICAgICAgICBtX2hv
cml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7
CisgICAgcmV0dXJuIG1fc2Nyb2xsQ29udHJvbGxlci5wcm9jZXNzV2hlZWxFdmVudEZvclNjcm9s
bFNuYXAod2hlZWxFdmVudCk7CiB9CiAjZW5kaWYKIAogYm9vbCBTY3JvbGxBbmltYXRvcjo6aGFu
ZGxlV2hlZWxFdmVudChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIGUpCiB7CiAjaWYgRU5BQkxF
KENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQotICAgIGlmIChtX3ZlcnRpY2FsU2Ny
b2xsU25hcEFuaW1hdG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3It
PmhhbmRsZVdoZWVsRXZlbnQoZSk7Ci0gICAgICAgIGlmIChtX3ZlcnRpY2FsU2Nyb2xsU25hcEFu
aW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQoZSkpCi0gICAgICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgfQotICAgIGlmIChtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IpIHsK
LSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50
KGUpOwotICAgICAgICBpZiAobV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91bGRP
dmVycmlkZVdoZWVsRXZlbnQoZSkpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQor
ICAgIGlmICghbV9zY3JvbGxDb250cm9sbGVyLnByb2Nlc3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25h
cChlKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwogI2VuZGlmCiAjaWYgUExBVEZPUk0oQ09DT0Ep
CiAgICAgLy8gRXZlbnRzIGluIHRoZSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZU1heUJlZ2luIHBo
YXNlIGhhdmUgbm8gZGVsdGFzLCBhbmQgdGhlcmVmb3JlIG5ldmVyIHBhc3NlcyB0aHJvdWdoIHRo
ZSBzY3JvbGwgaGFuZGxpbmcgbG9naWMgYmVsb3cuCkBAIC0xODMsMzAgKzE3NSwxNSBAQCB2b2lk
IFNjcm9sbEFuaW1hdG9yOjpub3RpZnlQb3NpdGlvbkNoYW5nCiAjaWYgRU5BQkxFKENTU19TQ1JP
TExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQogdm9pZCBTY3JvbGxBbmltYXRvcjo6dXBkYXRlU2Ny
b2xsQW5pbWF0b3JzQW5kVGltZXJzKCkKIHsKLSAgICAvLyBGSVhNRTogQ3VycmVudGx5LCBzY3Jv
bGwgc25hcCBhbmltYXRvcnMgYXJlIHJlY3JlYXRlZCBldmVuIHRob3VnaCB0aGUgc25hcCBvZmZz
ZXRzIGFsb25lIGNhbiBiZSB1cGRhdGVkLgotICAgIGlmIChtX3Njcm9sbGFibGVBcmVhLmhvcml6
b250YWxTbmFwT2Zmc2V0cygpKSB7Ci0gICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmlt
YXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywgbV9z
Y3JvbGxhYmxlQXJlYS5ob3Jpem9udGFsU25hcE9mZnNldHMoKSwgU2Nyb2xsRXZlbnRBeGlzOjpI
b3Jpem9udGFsKTsKLSAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyID0gc3RkOjpt
YWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZTY3JvbGxBbmltYXRvcjo6aG9yaXpvbnRhbFNjcm9s
bFNuYXBUaW1lckZpcmVkKTsKLSAgICB9IGVsc2UgaWYgKG1faG9yaXpvbnRhbFNjcm9sbFNuYXBB
bmltYXRvcikgewotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IgPSBudWxs
cHRyOwotICAgICAgICBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIgPSBudWxscHRyOwotICAg
IH0KLSAgICBpZiAobV9zY3JvbGxhYmxlQXJlYS52ZXJ0aWNhbFNuYXBPZmZzZXRzKCkpIHsKLSAg
ICAgICAgbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvciA9IHN0ZDo6bWFrZV91bmlxdWU8QXhp
c1Njcm9sbFNuYXBBbmltYXRvcj4odGhpcywgbV9zY3JvbGxhYmxlQXJlYS52ZXJ0aWNhbFNuYXBP
ZmZzZXRzKCksIFNjcm9sbEV2ZW50QXhpczo6VmVydGljYWwpOwotICAgICAgICBtX3ZlcnRpY2Fs
U2Nyb2xsU25hcFRpbWVyID0gc3RkOjptYWtlX3VuaXF1ZTxUaW1lcj4oKnRoaXMsICZTY3JvbGxB
bmltYXRvcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCk7Ci0gICAgfSBlbHNlIGlmICht
X3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKSB7Ci0gICAgICAgIG1fdmVydGljYWxTY3JvbGxT
bmFwQW5pbWF0b3IgPSBudWxscHRyOwotICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVy
ID0gbnVsbHB0cjsKLSAgICB9CisgICAgbV9zY3JvbGxDb250cm9sbGVyLnVwZGF0ZVNjcm9sbEFu
aW1hdG9yc0FuZFRpbWVycyhtX3Njcm9sbGFibGVBcmVhKTsKIH0KIAotTGF5b3V0VW5pdCBTY3Jv
bGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0SW5BeGlzKFNjcm9sbEV2ZW50QXhpcyBheGlzKQorTGF5
b3V0VW5pdCBTY3JvbGxBbmltYXRvcjo6c2Nyb2xsT2Zmc2V0T25BeGlzKFNjcm9sbEV2ZW50QXhp
cyBheGlzKQogewotICAgIEZsb2F0UG9pbnQgY3VycmVudFBvc2l0aW9uID0gdGhpcy0+Y3VycmVu
dFBvc2l0aW9uKCk7Ci0gICAgcmV0dXJuIGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9u
dGFsID8gY3VycmVudFBvc2l0aW9uLngoKSA6IGN1cnJlbnRQb3NpdGlvbi55KCk7CisgICAgcmV0
dXJuIGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9jdXJyZW50UG9zWCA6
IG1fY3VycmVudFBvc1k7CiB9CiAKLXZvaWQgU2Nyb2xsQW5pbWF0b3I6OmltbWVkaWF0ZVNjcm9s
bEluQXhpcyhTY3JvbGxFdmVudEF4aXMgYXhpcywgZmxvYXQgZGVsdGEpCit2b2lkIFNjcm9sbEFu
aW1hdG9yOjppbW1lZGlhdGVTY3JvbGxPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMsIGZsb2F0
IGRlbHRhKQogewogICAgIEZsb2F0UG9pbnQgY3VycmVudFBvc2l0aW9uID0gdGhpcy0+Y3VycmVu
dFBvc2l0aW9uKCk7CiAgICAgaWYgKGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFs
KQpAQCAtMjE0LDMwICsxOTEsNiBAQCB2b2lkIFNjcm9sbEFuaW1hdG9yOjppbW1lZGlhdGVTY3Jv
bGxJbkF4CiAgICAgZWxzZQogICAgICAgICBzY3JvbGxUb09mZnNldFdpdGhvdXRBbmltYXRpb24o
RmxvYXRQb2ludChjdXJyZW50UG9zaXRpb24ueCgpLCBjdXJyZW50UG9zaXRpb24ueSgpICsgZGVs
dGEpKTsKIH0KLQotdm9pZCBTY3JvbGxBbmltYXRvcjo6c3RhcnRTY3JvbGxTbmFwVGltZXIoU2Ny
b2xsRXZlbnRBeGlzIGF4aXMpCi17Ci0gICAgVGltZXIqIHNjcm9sbFNuYXBUaW1lciA9IGF4aXMg
PT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8gbV9ob3Jpem9udGFsU2Nyb2xsU25hcFRp
bWVyLmdldCgpIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lci5nZXQoKTsKLSAgICBpZiAoIXNj
cm9sbFNuYXBUaW1lci0+aXNBY3RpdmUoKSkKLSAgICAgICAgc2Nyb2xsU25hcFRpbWVyLT5zdGFy
dFJlcGVhdGluZygxLjAgLyA2MC4wKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvcjo6c3RvcFNj
cm9sbFNuYXBUaW1lcihTY3JvbGxFdmVudEF4aXMgYXhpcykKLXsKLSAgICBUaW1lciogc2Nyb2xs
U25hcFRpbWVyID0gYXhpcyA9PSBTY3JvbGxFdmVudEF4aXM6Okhvcml6b250YWwgPyBtX2hvcml6
b250YWxTY3JvbGxTbmFwVGltZXIuZ2V0KCkgOiBtX3ZlcnRpY2FsU2Nyb2xsU25hcFRpbWVyLmdl
dCgpOwotICAgIGlmIChzY3JvbGxTbmFwVGltZXItPmlzQWN0aXZlKCkpCi0gICAgICAgIHNjcm9s
bFNuYXBUaW1lci0+c3RvcCgpOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yOjpob3Jpem9udGFs
U2Nyb2xsU25hcFRpbWVyRmlyZWQoKQotewotICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmlt
YXRvci0+c2Nyb2xsU25hcEFuaW1hdGlvblVwZGF0ZSgpOwotfQotCi12b2lkIFNjcm9sbEFuaW1h
dG9yOjp2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lckZpcmVkKCkKLXsKLSAgICBtX3ZlcnRpY2FsU2Ny
b2xsU25hcEFuaW1hdG9yLT5zY3JvbGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Ci19CiAjZW5kaWYK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
U2Nyb2xsQW5pbWF0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9T
Y3JvbGxBbmltYXRvci5oCShyZXZpc2lvbiAxODA5MzUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9TY3JvbGxBbmltYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMywxNCArMzMsMTQgQEAK
ICNkZWZpbmUgU2Nyb2xsQW5pbWF0b3JfaAogCiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCisjaW5j
bHVkZSAiTGF5b3V0VW5pdC5oIgogI2luY2x1ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgogI2lu
Y2x1ZGUgIlNjcm9sbFR5cGVzLmgiCiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNpbmNs
dWRlIDx3dGYvRm9yd2FyZC5oPgogCi0jaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExB
VEZPUk0oTUFDKQotI2luY2x1ZGUgIkF4aXNTY3JvbGxTbmFwQW5pbWF0b3IuaCIKLSNpbmNsdWRl
ICJUaW1lci5oIgorI2lmIChFTkFCTEUoUlVCQkVSX0JBTkRJTkcpIHx8IEVOQUJMRShDU1NfU0NS
T0xMX1NOQVApKSAmJiBQTEFURk9STShNQUMpCisjaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5o
IgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTUwLDggKzUwLDggQEAgY2xhc3Mg
UGxhdGZvcm1Ub3VjaEV2ZW50OwogY2xhc3MgU2Nyb2xsYWJsZUFyZWE7CiBjbGFzcyBTY3JvbGxi
YXI7CiAKLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCi1jbGFz
cyBTY3JvbGxBbmltYXRvciA6IHB1YmxpYyBBeGlzU2Nyb2xsU25hcEFuaW1hdG9yQ2xpZW50IHsK
KyNpZiAoRU5BQkxFKENTU19TQ1JPTExfU05BUCkgfHwgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKSkg
JiYgUExBVEZPUk0oTUFDKQorY2xhc3MgU2Nyb2xsQW5pbWF0b3IgOiBwcml2YXRlIFNjcm9sbENv
bnRyb2xsZXJDbGllbnQgewogI2Vsc2UKIGNsYXNzIFNjcm9sbEFuaW1hdG9yIHsKICNlbmRpZgpA
QCAtMTE4LDMzICsxMTgsMjEgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc1J1YmJlckJh
bmRJblByb2dyZXNzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAogI2lmIEVOQUJMRShDU1Nf
U0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKLSAgICB2b2lkIHByb2Nlc3NXaGVlbEV2ZW50
Rm9yU2Nyb2xsU25hcChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKyAgICBib29sIHByb2Nl
c3NXaGVlbEV2ZW50Rm9yU2Nyb2xsU25hcChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKICAg
ICB2b2lkIHVwZGF0ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycygpOwotICAgIHZpcnR1YWwgTGF5
b3V0VW5pdCBzY3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSBvdmVycmlkZTsKLSAg
ICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsSW5BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxv
YXQgZGVsdGEpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdGFydFNjcm9sbFNuYXBUaW1l
cihTY3JvbGxFdmVudEF4aXMpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdG9wU2Nyb2xs
U25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykgb3ZlcnJpZGU7CisgICAgTGF5b3V0VW5pdCBzY3Jv
bGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSBvdmVycmlkZTsKKyAgICB2b2lkIGltbWVk
aWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IGRlbHRhKSBvdmVycmlkZTsK
ICNlbmRpZgogCiBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lkIG5vdGlmeVBvc2l0aW9uQ2hh
bmdlZChjb25zdCBGbG9hdFNpemUmIGRlbHRhKTsKIAotI2lmIEVOQUJMRShDU1NfU0NST0xMX1NO
QVApICYmIFBMQVRGT1JNKE1BQykKLSAgICAvLyBUcml2aWFsIHdyYXBwZXJzIGFyb3VuZCB0aGUg
YWN0dWFsIHVwZGF0ZSBsb29wIGluIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3IsIHNpbmNlIFdlYkNv
cmUgVGltZXIgcmVxdWlyZXMgYSBUaW1lciBhcmd1bWVudC4KLSAgICB2b2lkIGhvcml6b250YWxT
Y3JvbGxTbmFwVGltZXJGaXJlZCgpOwotICAgIHZvaWQgdmVydGljYWxTY3JvbGxTbmFwVGltZXJG
aXJlZCgpOwotI2VuZGlmCi0KICAgICBTY3JvbGxhYmxlQXJlYSYgbV9zY3JvbGxhYmxlQXJlYTsK
KyNpZiAoRU5BQkxFKENTU19TQ1JPTExfU05BUCkgfHwgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKSkg
JiYgUExBVEZPUk0oTUFDKQorICAgIFNjcm9sbENvbnRyb2xsZXIgbV9zY3JvbGxDb250cm9sbGVy
OworI2VuZGlmCiAgICAgZmxvYXQgbV9jdXJyZW50UG9zWDsgLy8gV2UgYXZvaWQgdXNpbmcgYSBG
bG9hdFBvaW50IGluIG9yZGVyIHRvIHJlZHVjZQogICAgIGZsb2F0IG1fY3VycmVudFBvc1k7IC8v
IHN1YmNsYXNzIGNvZGUgY29tcGxleGl0eS4KLSNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAm
JiBQTEFURk9STShNQUMpCi0gICAgc3RkOjp1bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0
b3I+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8
VGltZXI+IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lcjsKLSAgICAvLyBGSVhNRTogRmluZCBh
IHdheSB0byBjb25zb2xpZGF0ZSBib3RoIHRpbWVycyBpbnRvIG9uZSB2YXJpYWJsZS4KLSAgICBz
dGQ6OnVuaXF1ZV9wdHI8QXhpc1Njcm9sbFNuYXBBbmltYXRvcj4gbV92ZXJ0aWNhbFNjcm9sbFNu
YXBBbmltYXRvcjsKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8VGltZXI+IG1fdmVydGljYWxTY3JvbGxT
bmFwVGltZXI7Ci0jZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9sbGVyLmgJKHJl
dmlzaW9uIDE4MDkzNSkJKGZyb20gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbENv
bnRyb2xsZXIuaDoxODA5MzUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3Jv
bGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMDcgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaWZuZGVmIFNjcm9sbENvbnRyb2xsZXJfaAorI2RlZmluZSBTY3JvbGxDb250cm9sbGVy
X2gKKworI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKKworI2luY2x1ZGUgIkZsb2F0UG9pbnQu
aCIKKyNpbmNsdWRlICJGbG9hdFNpemUuaCIKKyNpbmNsdWRlICJTY3JvbGxUeXBlcy5oIgorI2lu
Y2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNz
IFBsYXRmb3JtV2hlZWxFdmVudDsKKworY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNsaWVudCB7Citw
cm90ZWN0ZWQ6CisgICAgdmlydHVhbCB+U2Nyb2xsQ29udHJvbGxlckNsaWVudCgpIHsgfQorCitw
dWJsaWM6CisgICAgdmlydHVhbCBib29sIGFsbG93c0hvcml6b250YWxTdHJldGNoaW5nKGNvbnN0
IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgYWxsb3dzVmVydGlj
YWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKKyAgICB2aXJ0dWFs
IEludFNpemUgc3RyZXRjaEFtb3VudCgpID0gMDsKKyAgICB2aXJ0dWFsIGJvb2wgcGlubmVkSW5E
aXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikgPSAwOworICAgIHZpcnR1YWwgYm9vbCBjYW5TY3Jv
bGxIb3Jpem9udGFsbHkoKSA9IDA7CisgICAgdmlydHVhbCBib29sIGNhblNjcm9sbFZlcnRpY2Fs
bHkoKSA9IDA7CisgICAgdmlydHVhbCBib29sIHNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihT
Y3JvbGxEaXJlY3Rpb24pID0gMDsKKworICAgIC8vIFJldHVybiB0aGUgYWJzb2x1dGUgc2Nyb2xs
IHBvc2l0aW9uLCBub3QgcmVsYXRpdmUgdG8gdGhlIHNjcm9sbCBvcmlnaW4uCisgICAgdmlydHVh
bCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgPSAwOworCisgICAg
dmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYpID0gMDsKKyAg
ICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJh
aW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1
YmJlcmJhbmRUaW1lcigpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5k
VGltZXIoKSA9IDA7CisKKyAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9zaXRpb24gaXMg
d2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1c2UKKyAgICAv
LyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9pbnQuCisgICAg
dmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vzc2FyeSgpID0g
MDsKK307CisKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXIgeworICAgIFdURl9NQUtFX05PTkNPUFlB
QkxFKFNjcm9sbENvbnRyb2xsZXIpOworCitwdWJsaWM6CisgICAgZXhwbGljaXQgU2Nyb2xsQ29u
dHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50Kik7CisKKyAgICBib29sIGhhbmRsZVdoZWVs
RXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CisgICAgdm9pZCBzbmFwUnViYmVyQmFu
ZFRpbWVyRmlyZWQoKTsKKworICAgIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVzcygpIGNvbnN0
OworCitwcml2YXRlOgorICAgIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICB2
b2lkIHNuYXBSdWJiZXJCYW5kKCk7CisKKyAgICBib29sIHNob3VsZFJ1YmJlckJhbmRJbkhvcml6
b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7CisKKyAgICBTY3JvbGxD
b250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKKworICAgIGJvb2wgbV9pblNjcm9sbEdlc3R1cmU7
CisgICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsKKyAgICBib29sIG1faWdub3Jl
TW9tZW50dW1TY3JvbGxzOworICAgIAorICAgIENGVGltZUludGVydmFsIG1fbGFzdE1vbWVudHVt
U2Nyb2xsVGltZXN0YW1wOworICAgIEZsb2F0U2l6ZSBtX292ZXJmbG93U2Nyb2xsRGVsdGE7Cisg
ICAgRmxvYXRTaXplIG1fc3RyZXRjaFNjcm9sbEZvcmNlOworICAgIEZsb2F0U2l6ZSBtX21vbWVu
dHVtVmVsb2NpdHk7CisKKyAgICAvLyBSdWJiZXIgYmFuZCBzdGF0ZS4KKyAgICBDRlRpbWVJbnRl
cnZhbCBtX3N0YXJ0VGltZTsKKyAgICBGbG9hdFNpemUgbV9zdGFydFN0cmV0Y2g7CisgICAgRmxv
YXRQb2ludCBtX29yaWdPcmlnaW47CisgICAgRmxvYXRTaXplIG1fb3JpZ1ZlbG9jaXR5OworCisg
ICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKK307CisKK30gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJfQkFORElORykKKworI2VuZGlm
IC8vIFNjcm9sbENvbnRyb2xsZXJfaApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29j
b2EvU2Nyb2xsQ29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5KQorKysgU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEsIDIwMTQtMjAxNSBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
QEAgLTMyLDEwICszMiwxNiBAQAogI2luY2x1ZGUgIkZsb2F0U2l6ZS5oIgogI2luY2x1ZGUgIlNj
cm9sbFR5cGVzLmgiCiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CisjaW5jbHVkZSA8d3Rm
L1J1bkxvb3AuaD4KKworI2lmIEVOQUJMRShDU1NfU0NST0xMX1NOQVApCisjaW5jbHVkZSAiQXhp
c1Njcm9sbFNuYXBBbmltYXRvci5oIgorI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
Y2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50OworY2xhc3MgU2Nyb2xsYWJsZUFyZWE7CiAKIGNsYXNz
IFNjcm9sbENvbnRyb2xsZXJDbGllbnQgewogcHJvdGVjdGVkOgpAQCAtNTUsMzYgKzYxLDc0IEBA
IHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBpbW1lZGlhdGVTY3JvbGxCeShjb25zdCBGbG9h
dFNpemUmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENv
bnRlbnRFZGdlQ29uc3RyYWludHMoY29uc3QgRmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwg
dm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0
b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkgPSAwOwotCisgICAgdmlydHVhbCB2b2lkIHN0YXJ0U25h
cFJ1YmJlcmJhbmRUaW1lcigpCisgICAgeworICAgICAgICAvLyBPdmVycmlkZSB0byBwZXJmb3Jt
IGNsaWVudC1zcGVjaWZpYyBzbmFwIHN0YXJ0IGxvZ2ljCisgICAgfQorCisgICAgdmlydHVhbCB2
b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCkKKyAgICB7CisgICAgICAgIC8vIE92ZXJyaWRl
IHRvIHBlcmZvcm0gY2xpZW50LXNwZWNpZmljIHNuYXAgZW5kIGxvZ2ljCisgICAgfQorICAgIAog
ICAgIC8vIElmIHRoZSBjdXJyZW50IHNjcm9sbCBwb3NpdGlvbiBpcyB3aXRoaW4gdGhlIG92ZXJo
YW5nIGFyZWEsIHRoaXMgZnVuY3Rpb24gd2lsbCBjYXVzZQogICAgIC8vIHRoZSBwYWdlIHRvIHNj
cm9sbCB0byB0aGUgbmVhcmVzdCBib3VuZGFyeSBwb2ludC4KICAgICB2aXJ0dWFsIHZvaWQgYWRq
dXN0U2Nyb2xsUG9zaXRpb25Ub0JvdW5kc0lmTmVjZXNzYXJ5KCkgPSAwOworCisjaWYgRU5BQkxF
KENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZPUk0oTUFDKQorICAgIHZpcnR1YWwgTGF5b3V0VW5p
dCBzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7CisgICAgdmlydHVhbCB2
b2lkIGltbWVkaWF0ZVNjcm9sbE9uQXhpcyhTY3JvbGxFdmVudEF4aXMsIGZsb2F0IGRlbHRhKSA9
IDA7CisgICAgdmlydHVhbCB2b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhp
cykKKyAgICB7CisgICAgICAgIC8vIE92ZXJyaWRlIHRvIHBlcmZvcm0gY2xpZW50LXNwZWNpZmlj
IHNjcm9sbCBzbmFwIHBvaW50IHN0YXJ0IGxvZ2ljCisgICAgfQorCisgICAgdmlydHVhbCB2b2lk
IHN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKQorICAgIHsKKyAgICAgICAgLy8g
T3ZlcnJpZGUgdG8gcGVyZm9ybSBjbGllbnQtc3BlY2lmaWMgc2Nyb2xsIHNuYXAgcG9pbnQgZW5k
IGxvZ2ljCisgICAgICAgIAorICAgIH0KKyNlbmRpZgogfTsKIAorI2lmIEVOQUJMRShDU1NfU0NS
T0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKK2NsYXNzIFNjcm9sbENvbnRyb2xsZXIgOiBwdWJs
aWMgQXhpc1Njcm9sbFNuYXBBbmltYXRvckNsaWVudCB7CisjZWxzZQogY2xhc3MgU2Nyb2xsQ29u
dHJvbGxlciB7CisjZW5kaWYKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShTY3JvbGxDb250cm9s
bGVyKTsKIAogcHVibGljOgogICAgIGV4cGxpY2l0IFNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29u
dHJvbGxlckNsaWVudCopOwogCiAgICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRm
b3JtV2hlZWxFdmVudCYpOwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAK
ICAgICBib29sIGlzUnViYmVyQmFuZEluUHJvZ3Jlc3MoKSBjb25zdDsKIAorI2lmIEVOQUJMRShD
U1NfU0NST0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAgICBib29sIHByb2Nlc3NXaGVlbEV2
ZW50Rm9yU2Nyb2xsU25hcChjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKKyAgICB2b2lkIHVw
ZGF0ZVNjcm9sbEFuaW1hdG9yc0FuZFRpbWVycyhjb25zdCBTY3JvbGxhYmxlQXJlYSYpOworI2Vu
ZGlmCisKIHByaXZhdGU6CisgICAgdm9pZCBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKICAg
ICB2b2lkIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CiAgICAgdm9pZCBzbmFwUnViYmVyQmFu
ZCgpOworICAgIHZvaWQgc25hcFJ1YmJlckJhbmRUaW1lckZpcmVkKCk7CiAKICAgICBib29sIHNo
b3VsZFJ1YmJlckJhbmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2
ZW50Jik7CiAKLSAgICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKKyNpZiBFTkFC
TEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAgdm9pZCBob3Jpem9udGFs
U2Nyb2xsU25hcFRpbWVyRmlyZWQoKTsKKyAgICB2b2lkIHZlcnRpY2FsU2Nyb2xsU25hcFRpbWVy
RmlyZWQoKTsKKyAgICB2b2lkIHN0YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykg
b3ZlcnJpZGU7CisgICAgdm9pZCBzdG9wU2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcykg
b3ZlcnJpZGU7CisKKyAgICBMYXlvdXRVbml0IHNjcm9sbE9mZnNldE9uQXhpcyhTY3JvbGxFdmVu
dEF4aXMpIG92ZXJyaWRlOworICAgIHZvaWQgaW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2
ZW50QXhpcywgZmxvYXQgZGVsdGEpIG92ZXJyaWRlOworI2VuZGlmCiAKLSAgICBib29sIG1faW5T
Y3JvbGxHZXN0dXJlOwotICAgIGJvb2wgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3M7Ci0gICAg
Ym9vbCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xsczsKKyAgICBTY3JvbGxDb250cm9sbGVyQ2xpZW50
KiBtX2NsaWVudDsKICAgICAKICAgICBDRlRpbWVJbnRlcnZhbCBtX2xhc3RNb21lbnR1bVNjcm9s
bFRpbWVzdGFtcDsKICAgICBGbG9hdFNpemUgbV9vdmVyZmxvd1Njcm9sbERlbHRhOwpAQCAtOTYs
NyArMTQwLDE5IEBAIHByaXZhdGU6CiAgICAgRmxvYXRTaXplIG1fc3RhcnRTdHJldGNoOwogICAg
IEZsb2F0UG9pbnQgbV9vcmlnT3JpZ2luOwogICAgIEZsb2F0U2l6ZSBtX29yaWdWZWxvY2l0eTsK
KyAgICBSdW5Mb29wOjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiBtX3NuYXBSdWJiZXJiYW5kVGlt
ZXI7CiAKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAmJiBQTEFURk9STShNQUMpCisgICAg
Ly8gRklYTUU6IEZpbmQgYSB3YXkgdG8gY29uc29saWRhdGUgYm90aCB0aW1lcnMgaW50byBvbmUg
dmFyaWFibGUuCisgICAgc3RkOjp1bmlxdWVfcHRyPEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I+IG1f
aG9yaXpvbnRhbFNjcm9sbFNuYXBBbmltYXRvcjsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8QXhpc1Nj
cm9sbFNuYXBBbmltYXRvcj4gbV92ZXJ0aWNhbFNjcm9sbFNuYXBBbmltYXRvcjsKKyAgICBSdW5M
b29wOjpUaW1lcjxTY3JvbGxDb250cm9sbGVyPiBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXI7
CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4gbV92ZXJ0aWNhbFNjcm9sbFNu
YXBUaW1lcjsKKyNlbmRpZgorCisgICAgYm9vbCBtX2luU2Nyb2xsR2VzdHVyZTsKKyAgICBib29s
IG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzOworICAgIGJvb2wgbV9pZ25vcmVNb21lbnR1bVNj
cm9sbHM7CiAgICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKIH07CiAKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvU2Nyb2xsQ29udHJvbGxl
ci5tbQkocmV2aXNpb24gMTgwOTM1KQkoZnJvbSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
U2Nyb2xsQ29udHJvbGxlci5tbToxODA5MzUpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9j
b2NvYS9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDA2IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDE0LTIwMTUgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAi
U2Nyb2xsQ29udHJvbGxlci5oIgorCisjaW5jbHVkZSAiUGxhdGZvcm1XaGVlbEV2ZW50LmgiCisj
aW5jbHVkZSAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5oIgorI2luY2x1ZGUgPHN5cy9zeXNjdGwu
aD4KKyNpbmNsdWRlIDxzeXMvdGltZS5oPgorCisjaWYgRU5BQkxFKFJVQkJFUl9CQU5ESU5HKQor
CitzdGF0aWMgTlNUaW1lSW50ZXJ2YWwgc3lzdGVtVXB0aW1lKCkKK3sKKyAgICBpZiAoW1tOU1By
b2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHN5c3Rl
bVVwdGltZSldKQorICAgICAgICByZXR1cm4gW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSBz
eXN0ZW1VcHRpbWVdOworCisgICAgLy8gR2V0IGhvdyBsb25nIHN5c3RlbSBoYXMgYmVlbiB1cC4g
Rm91bmQgYnkgbG9va2luZyBnZXR0aW5nICJib290dGltZSIgZnJvbSB0aGUga2VybmVsLgorICAg
IHN0YXRpYyBzdHJ1Y3QgdGltZXZhbCBib290dGltZSA9IHswLCAwfTsKKyAgICBpZiAoIWJvb3R0
aW1lLnR2X3NlYykgeworICAgICAgICBpbnQgbWliWzJdID0ge0NUTF9LRVJOLCBLRVJOX0JPT1RU
SU1FfTsKKyAgICAgICAgc2l6ZV90IHNpemUgPSBzaXplb2YoYm9vdHRpbWUpOworICAgICAgICBp
ZiAoLTEgPT0gc3lzY3RsKG1pYiwgMiwgJmJvb3R0aW1lLCAmc2l6ZSwgMCwgMCkpCisgICAgICAg
ICAgICBib290dGltZS50dl9zZWMgPSAwOworICAgIH0KKyAgICBzdHJ1Y3QgdGltZXZhbCBub3c7
CisgICAgaWYgKGJvb3R0aW1lLnR2X3NlYyAmJiAtMSAhPSBnZXR0aW1lb2ZkYXkoJm5vdywgMCkp
IHsKKyAgICAgICAgc3RydWN0IHRpbWV2YWwgdXB0aW1lOworICAgICAgICB0aW1lcnN1Yigmbm93
LCAmYm9vdHRpbWUsICZ1cHRpbWUpOworICAgICAgICBOU1RpbWVJbnRlcnZhbCByZXN1bHQgPSB1
cHRpbWUudHZfc2VjICsgKHVwdGltZS50dl91c2VjIC8gMUUrNik7CisgICAgICAgIHJldHVybiBy
ZXN1bHQ7CisgICAgfQorICAgIHJldHVybiAwOworfQorCisKK25hbWVzcGFjZSBXZWJDb3JlIHsK
Kworc3RhdGljIGNvbnN0IGZsb2F0IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQgPSAwLjEw
ZjsKK3N0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5kRGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRp
byA9IDE7CitzdGF0aWMgY29uc3QgZmxvYXQgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRh
QmVmb3JlU3RyZXRjaCA9IDEwOworCitzdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yVGltZURl
bHRhKGZsb2F0IGluaXRpYWxQb3NpdGlvbiwgZmxvYXQgaW5pdGlhbFZlbG9jaXR5LCBmbG9hdCBl
bGFwc2VkVGltZSkKK3sKKyAgICByZXR1cm4gd2tOU0VsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShp
bml0aWFsUG9zaXRpb24sIGluaXRpYWxWZWxvY2l0eSwgZWxhcHNlZFRpbWUpOworfQorCitzdGF0
aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGZsb2F0IGRlbHRhKQoreworICAg
IHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKGRlbHRhKTsKK30KKworc3Rh
dGljIGZsb2F0IHJlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShmbG9hdCBkZWx0YSkKK3sKKyAg
ICByZXR1cm4gd2tOU1JlYm91bmREZWx0YUZvckVsYXN0aWNEZWx0YShkZWx0YSk7Cit9CisKK3N0
YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKQoreworICAgIHN0YXRpYyBmbG9hdCBt
dWx0aXBsaWVyID0gLTE7CisgICAgaWYgKG11bHRpcGxpZXIgPCAwKSB7CisgICAgICAgIG11bHRp
cGxpZXIgPSBbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJkVXNlckRlZmF1bHRzXSBmbG9hdEZvcktl
eTpAIk5TU2Nyb2xsV2hlZWxNdWx0aXBsaWVyIl07CisgICAgICAgIGlmIChtdWx0aXBsaWVyIDw9
IDApCisgICAgICAgICAgICBtdWx0aXBsaWVyID0gMTsKKyAgICB9CisgICAgcmV0dXJuIG11bHRp
cGxpZXI7Cit9CisKK1Njcm9sbENvbnRyb2xsZXI6OlNjcm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29u
dHJvbGxlckNsaWVudCogY2xpZW50KQorICAgIDogbV9jbGllbnQoY2xpZW50KQorICAgICwgbV9p
blNjcm9sbEdlc3R1cmUoZmFsc2UpCisgICAgLCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhm
YWxzZSkKKyAgICAsIG1faWdub3JlTW9tZW50dW1TY3JvbGxzKGZhbHNlKQorICAgICwgbV9sYXN0
TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKKyAgICAsIG1fc3RhcnRUaW1lKDApCisgICAgLCBt
X3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxzZSkKK3sKK30KKworYm9vbCBTY3JvbGxD
b250cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hl
ZWxFdmVudCkKK3sKKyAgICBpZiAod2hlZWxFdmVudC5waGFzZSgpID09IFBsYXRmb3JtV2hlZWxF
dmVudFBoYXNlQmVnYW4pIHsKKyAgICAgICAgLy8gRmlyc3QsIGNoZWNrIGlmIHdlIHNob3VsZCBy
dWJiZXItYmFuZCBhdCBhbGwuCisgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rp
b24oRmxvYXRTaXplKC13aGVlbEV2ZW50LmRlbHRhWCgpLCAwKSkKKyAgICAgICAgICAgICYmICFz
aG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0aW9uKHdoZWVsRXZlbnQpKQorICAgICAg
ICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIG1faW5TY3JvbGxHZXN0dXJlID0gdHJ1ZTsK
KyAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSBmYWxzZTsKKyAgICAgICAgbV9p
Z25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKKyAgICAgICAgbV9sYXN0TW9tZW50dW1TY3Jv
bGxUaW1lc3RhbXAgPSAwOworICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkgPSBGbG9hdFNpemUo
KTsKKworICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFt
b3VudCgpOworICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5kRGVs
dGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC53aWR0aCgpKSk7CisgICAgICAgIG1fc3Ry
ZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoc3Ry
ZXRjaEFtb3VudC5oZWlnaHQoKSkpOworICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEgPSBG
bG9hdFNpemUoKTsKKworICAgICAgICBzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpOworCisgICAg
ICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAgIGlmICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0g
UGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgeworICAgICAgICBzbmFwUnViYmVyQmFuZCgp
OworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisKKyAgICBib29sIGlzTW9tZW50dW1TY3Jv
bGxFdmVudCA9ICh3aGVlbEV2ZW50Lm1vbWVudHVtUGhhc2UoKSAhPSBQbGF0Zm9ybVdoZWVsRXZl
bnRQaGFzZU5vbmUpOworICAgIGlmIChtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyAmJiAoaXNNb21l
bnR1bVNjcm9sbEV2ZW50IHx8IG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKSkgeworICAg
ICAgICBpZiAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50
UGhhc2VFbmRlZCkgeworICAgICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxz
ZTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICB9CisgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICB9CisKKyAgICBmbG9hdCBkZWx0YVggPSBtX292ZXJmbG93U2Nyb2xsRGVsdGEu
d2lkdGgoKTsKKyAgICBmbG9hdCBkZWx0YVkgPSBtX292ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0
KCk7CisKKyAgICAvLyBSZXNldCBvdmVyZmxvdyB2YWx1ZXMgYmVjYXVzZSB3ZSBtYXkgZGVjaWRl
IHRvIHJlbW92ZSBkZWx0YSBhdCB2YXJpb3VzIHBvaW50cyBhbmQgcHV0IGl0IGludG8gb3ZlcmZs
b3cuCisgICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0gRmxvYXRTaXplKCk7CisKKyAgICBJbnRT
aXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworICAgIGJvb2wg
aXNWZXJ0aWNhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFtb3VudC5oZWlnaHQoKTsKKyAgICBib29s
IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFtb3VudC53aWR0aCgpOworCisgICAg
ZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVg7CisgICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0
YVk7CisKKyAgICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRjaGVkIHx8IGlzSG9yaXpvbnRhbGx5U3Ry
ZXRjaGVkKSB7CisgICAgICAgIGV2ZW50Q29hbGVzY2VkRGVsdGFYID0gLXdoZWVsRXZlbnQudW5h
Y2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWCgpOworICAgICAgICBldmVudENvYWxlc2NlZERlbHRh
WSA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3JvbGxpbmdEZWx0YVkoKTsKKyAgICB9IGVs
c2UgeworICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWCA9IC13aGVlbEV2ZW50LmRlbHRhWCgp
OworICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LmRlbHRhWSgpOwor
ICAgIH0KKworICAgIGRlbHRhWCArPSBldmVudENvYWxlc2NlZERlbHRhWDsKKyAgICBkZWx0YVkg
Kz0gZXZlbnRDb2FsZXNjZWREZWx0YVk7CisKKyAgICAvLyBTbGlnaHRseSBwcmVmZXIgc2Nyb2xs
aW5nIHZlcnRpY2FsbHkgYnkgYXBwbHlpbmcgdGhlID0gY2FzZSB0byBkZWx0YVkKKyAgICBpZiAo
ZmFic2YoZGVsdGFZKSA+PSBmYWJzZihkZWx0YVgpKQorICAgICAgICBkZWx0YVggPSAwOworICAg
IGVsc2UKKyAgICAgICAgZGVsdGFZID0gMDsKKworICAgIGJvb2wgc2hvdWxkU3RyZXRjaCA9IGZh
bHNlOworCisgICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2UgbW9tZW50dW1QaGFzZSA9IHdoZWVs
RXZlbnQubW9tZW50dW1QaGFzZSgpOworCisgICAgLy8gSWYgd2UgYXJlIHN0YXJ0aW5nIG1vbWVu
dHVtIHNjcm9sbGluZyB0aGVuIGRvIHNvbWUgc2V0dXAuCisgICAgaWYgKCFtX21vbWVudHVtU2Ny
b2xsSW5Qcm9ncmVzcyAmJiAobW9tZW50dW1QaGFzZSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFz
ZUJlZ2FuIHx8IG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VDaGFuZ2Vk
KSkKKyAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MgPSB0cnVlOworCisgICAgQ0ZU
aW1lSW50ZXJ2YWwgdGltZURlbHRhID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKSAtIG1fbGFzdE1v
bWVudHVtU2Nyb2xsVGltZXN0YW1wOworICAgIGlmIChtX2luU2Nyb2xsR2VzdHVyZSB8fCBtX21v
bWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykgeworICAgICAgICBpZiAobV9sYXN0TW9tZW50dW1TY3Jv
bGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID4gMCAmJiB0aW1lRGVsdGEgPCBzY3JvbGxWZWxvY2l0
eVplcm9pbmdUaW1lb3V0KSB7CisgICAgICAgICAgICBtX21vbWVudHVtVmVsb2NpdHkuc2V0V2lk
dGgoZXZlbnRDb2FsZXNjZWREZWx0YVggLyAoZmxvYXQpdGltZURlbHRhKTsKKyAgICAgICAgICAg
IG1fbW9tZW50dW1WZWxvY2l0eS5zZXRIZWlnaHQoZXZlbnRDb2FsZXNjZWREZWx0YVkgLyAoZmxv
YXQpdGltZURlbHRhKTsKKyAgICAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1w
ID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAg
IG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsK
KyAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworICAgICAgICB9
CisKKyAgICAgICAgaWYgKGlzVmVydGljYWxseVN0cmV0Y2hlZCkgeworICAgICAgICAgICAgaWYg
KCFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiBtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24o
RmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7CisgICAgICAgICAgICAgICAgLy8gU3RyZXRjaGluZyBv
bmx5IGluIHRoZSB2ZXJ0aWNhbC4KKyAgICAgICAgICAgICAgICBpZiAoZGVsdGFZICYmIChmYWJz
ZihkZWx0YVggLyBkZWx0YVkpIDwgcnViYmVyYmFuZERpcmVjdGlvbkxvY2tTdHJldGNoUmF0aW8p
KQorICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgIGVsc2Ug
aWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWluaW11bVJlcXVpcmVkRGVsdGFCZWZvcmVT
dHJldGNoKSB7CisgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRX
aWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAg
ICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAg
ICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xs
RGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSBp
ZiAoaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKKyAgICAgICAgICAgIC8vIFN0cmV0Y2hpbmcg
b25seSBpbiB0aGUgaG9yaXpvbnRhbC4KKyAgICAgICAgICAgIGlmIChtX2NsaWVudC0+cGlubmVk
SW5EaXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkpKSB7CisgICAgICAgICAgICAgICAgaWYg
KGRlbHRhWCAmJiAoZmFic2YoZGVsdGFZIC8gZGVsdGFYKSA8IHJ1YmJlcmJhbmREaXJlY3Rpb25M
b2NrU3RyZXRjaFJhdGlvKSkKKyAgICAgICAgICAgICAgICAgICAgZGVsdGFZID0gMDsKKyAgICAg
ICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVkpIDwgcnViYmVyYmFuZE1pbmltdW1SZXF1
aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgeworICAgICAgICAgICAgICAgICAgICBtX292ZXJmbG93
U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5oZWlnaHQoKSArIGRl
bHRhWSk7CisgICAgICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAgICAgICAg
fSBlbHNlCisgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRIZWln
aHQobV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgpICsgZGVsdGFZKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8vIE5vdCBzdHJldGNoaW5nIGF0IGFs
bCB5ZXQuCisgICAgICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0
U2l6ZShkZWx0YVgsIGRlbHRhWSkpKSB7CisgICAgICAgICAgICAgICAgaWYgKGZhYnNmKGRlbHRh
WSkgPj0gZmFic2YoZGVsdGFYKSkgeworICAgICAgICAgICAgICAgICAgICBpZiAoZmFic2YoZGVs
dGFYKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWREZWx0YUJlZm9yZVN0cmV0Y2gpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292
ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAgICAg
ICAgICBkZWx0YVggPSAwOworICAgICAgICAgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAg
ICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Ny
b2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIHNob3VsZFN0cmV0Y2ggPSB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICB9Cisg
ICAgfQorCisgICAgaWYgKGRlbHRhWCB8fCBkZWx0YVkpIHsKKyAgICAgICAgaWYgKCEoc2hvdWxk
U3RyZXRjaCB8fCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQgfHwgaXNIb3Jpem9udGFsbHlTdHJldGNo
ZWQpKSB7CisgICAgICAgICAgICBpZiAoZGVsdGFZKSB7CisgICAgICAgICAgICAgICAgZGVsdGFZ
ICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5p
bW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoMCwgZGVsdGFZKSk7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBpZiAoZGVsdGFYKSB7CisgICAgICAgICAgICAgICAgZGVsdGFYICo9IHNjcm9s
bFdoZWVsTXVsdGlwbGllcigpOworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVT
Y3JvbGxCeShGbG9hdFNpemUoZGVsdGFYLCAwKSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5hbGxvd3NIb3Jpem9udGFsU3RyZXRj
aGluZyh3aGVlbEV2ZW50KSkgeworICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAg
ICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAwOworICAgICAgICAgICAgfSBlbHNlIGlm
IChkZWx0YVggJiYgIWlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkICYmICFtX2NsaWVudC0+cGlubmVk
SW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7CisgICAgICAgICAgICAgICAgZGVs
dGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOworCisgICAgICAgICAgICAgICAgbV9jbGll
bnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRlbnRFZGdlQ29uc3RyYWludHMoRmxvYXRT
aXplKGRlbHRhWCwgMCkpOworICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7CisgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmFsbG93c1ZlcnRpY2FsU3RyZXRjaGlu
Zyh3aGVlbEV2ZW50KSkgeworICAgICAgICAgICAgICAgIGRlbHRhWSA9IDA7CisgICAgICAgICAg
ICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAwOworICAgICAgICAgICAgfSBlbHNlIGlmIChk
ZWx0YVkgJiYgIWlzVmVydGljYWxseVN0cmV0Y2hlZCAmJiAhbV9jbGllbnQtPnBpbm5lZEluRGly
ZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgeworICAgICAgICAgICAgICAgIGRlbHRhWSAq
PSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKKworICAgICAgICAgICAgICAgIG1fY2xpZW50LT5p
bW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZSgw
LCBkZWx0YVkpKTsKKyAgICAgICAgICAgICAgICBkZWx0YVkgPSAwOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFt
b3VudCgpOworCisgICAgICAgICAgICBpZiAobV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsK
KyAgICAgICAgICAgICAgICBpZiAoKG1fY2xpZW50LT5waW5uZWRJbkRpcmVjdGlvbihGbG9hdFNp
emUoZXZlbnRDb2FsZXNjZWREZWx0YVgsIGV2ZW50Q29hbGVzY2VkRGVsdGFZKSkgfHwgKGZhYnNm
KGV2ZW50Q29hbGVzY2VkRGVsdGFYKSArIGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFZKSA8PSAw
KSkgJiYgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXApIHsKKyAgICAgICAgICAgICAgICAg
ICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSB0cnVlOworICAgICAgICAgICAgICAgICAgICBt
X21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOworICAgICAgICAgICAgICAgICAgICBz
bmFwUnViYmVyQmFuZCgpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0V2lkdGgobV9zdHJldGNoU2Nyb2xsRm9y
Y2Uud2lkdGgoKSArIGRlbHRhWCk7CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5z
ZXRIZWlnaHQobV9zdHJldGNoU2Nyb2xsRm9yY2UuaGVpZ2h0KCkgKyBkZWx0YVkpOworCisgICAg
ICAgICAgICBGbG9hdFNpemUgZGFtcGVkRGVsdGEoY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVib3Vu
ZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRoKCkpKSwgY2VpbGYoZWxhc3RpY0RlbHRh
Rm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLmhlaWdodCgpKSkpOworCisgICAg
ICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25z
dHJhaW50cyhkYW1wZWREZWx0YSAtIHN0cmV0Y2hBbW91bnQpOworICAgICAgICB9CisgICAgfQor
CisgICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dyZXNzICYmIG1vbWVudHVtUGhhc2UgPT0g
UGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgeworICAgICAgICBtX21vbWVudHVtU2Nyb2xs
SW5Qcm9ncmVzcyA9IGZhbHNlOworICAgICAgICBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscyA9IGZh
bHNlOworICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCA9IDA7CisgICAgfQor
CisgICAgcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBpbmxpbmUgZmxvYXQgcm91bmRUb3dhcmRa
ZXJvKGZsb2F0IG51bSkKK3sKKyAgICByZXR1cm4gbnVtID4gMCA/IGNlaWxmKG51bSAtIDAuNWYp
IDogZmxvb3JmKG51bSArIDAuNWYpOworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0IHJvdW5kVG9E
ZXZpY2VQaXhlbFRvd2FyZFplcm8oZmxvYXQgbnVtKQoreworICAgIGZsb2F0IHJvdW5kZWROdW0g
PSByb3VuZGYobnVtKTsKKyAgICBpZiAoZmFicyhudW0gLSByb3VuZGVkTnVtKSA8IDAuMTI1KQor
ICAgICAgICBudW0gPSByb3VuZGVkTnVtOworCisgICAgcmV0dXJuIHJvdW5kVG93YXJkWmVybyhu
dW0pOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJl
ZCgpCit7CisgICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyB8fCBtX2lnbm9yZU1v
bWVudHVtU2Nyb2xscykgeworICAgICAgICBDRlRpbWVJbnRlcnZhbCB0aW1lRGVsdGEgPSBbTlNE
YXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV0gLSBtX3N0YXJ0VGltZTsKKworICAg
ICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRTaXplKCkpIHsKKyAgICAgICAgICAgIG1f
c3RhcnRTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKTsKKyAgICAgICAgICAgIGlm
IChtX3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNpemUoKSkgeworICAgICAgICAgICAgICAgIHN0b3BT
bmFwUnViYmVyYmFuZFRpbWVyKCk7CisKKyAgICAgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZSA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgICAgIG1fc3RhcnRUaW1lID0gMDsKKyAg
ICAgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAg
ICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsKKyAgICAgICAgICAgICAgICBtX29yaWdW
ZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAg
ICAgIH0KKworICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0gbV9jbGllbnQtPmFic29sdXRlU2Ny
b2xsUG9zaXRpb24oKSAtIG1fc3RhcnRTdHJldGNoOworICAgICAgICAgICAgbV9vcmlnVmVsb2Np
dHkgPSBtX21vbWVudHVtVmVsb2NpdHk7CisKKyAgICAgICAgICAgIC8vIEp1c3QgbGlrZSBub3Jt
YWwgc2Nyb2xsaW5nLCBwcmVmZXIgdmVydGljYWwgcnViYmVyYmFuZGluZworICAgICAgICAgICAg
aWYgKGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgpKSA+PSBmYWJzZihtX29yaWdWZWxvY2l0
eS53aWR0aCgpKSkKKyAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eS5zZXRXaWR0aCgwKTsK
KworICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJhbmQgaG9yaXpvbnRhbGx5IGlmIGl0J3Mg
bm90IHBvc3NpYmxlIHRvIHNjcm9sbCBob3Jpem9udGFsbHkKKyAgICAgICAgICAgIGlmICghbV9j
bGllbnQtPmNhblNjcm9sbEhvcml6b250YWxseSgpKQorICAgICAgICAgICAgICAgIG1fb3JpZ1Zl
bG9jaXR5LnNldFdpZHRoKDApOworCisgICAgICAgICAgICAvLyBEb24ndCBydWJiZXItYmFuZCB2
ZXJ0aWNhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5CisgICAg
ICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxWZXJ0aWNhbGx5KCkpCisgICAgICAgICAg
ICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0SGVpZ2h0KDApOworICAgICAgICB9CisKKyAgICAgICAg
RmxvYXRQb2ludCBkZWx0YShyb3VuZFRvRGV2aWNlUGl4ZWxUb3dhcmRaZXJvKGVsYXN0aWNEZWx0
YUZvclRpbWVEZWx0YShtX3N0YXJ0U3RyZXRjaC53aWR0aCgpLCAtbV9vcmlnVmVsb2NpdHkud2lk
dGgoKSwgKGZsb2F0KXRpbWVEZWx0YSkpLAorICAgICAgICAgICAgcm91bmRUb0RldmljZVBpeGVs
VG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVsdGEobV9zdGFydFN0cmV0Y2guaGVpZ2h0
KCksIC1tX29yaWdWZWxvY2l0eS5oZWlnaHQoKSwgKGZsb2F0KXRpbWVEZWx0YSkpKTsKKworICAg
ICAgICBpZiAoZmFicyhkZWx0YS54KCkpID49IDEgfHwgZmFicyhkZWx0YS55KCkpID49IDEpIHsK
KyAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRn
ZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YS54KCksIGRlbHRhLnkoKSkgLSBtX2NsaWVudC0+
c3RyZXRjaEFtb3VudCgpKTsKKworICAgICAgICAgICAgRmxvYXRTaXplIG5ld1N0cmV0Y2ggPSBt
X2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOworCisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEobmV3U3RyZXRjaC53aWR0
aCgpKSk7CisgICAgICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQocmVib3Vu
ZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2guaGVpZ2h0KCkpKTsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgIG1fY2xpZW50LT5hZGp1c3RTY3JvbGxQb3NpdGlvblRvQm91bmRz
SWZOZWNlc3NhcnkoKTsKKworICAgICAgICAgICAgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsK
KyAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlID0gRmxvYXRTaXplKCk7CisgICAgICAg
ICAgICBtX3N0YXJ0VGltZSA9IDA7CisgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0
U2l6ZSgpOworICAgICAgICAgICAgbV9vcmlnT3JpZ2luID0gRmxvYXRQb2ludCgpOworICAgICAg
ICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKyAgICAgICAgfQorICAgIH0gZWxz
ZSB7CisgICAgICAgIG1fc3RhcnRUaW1lID0gW05TRGF0ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVy
ZW5jZURhdGVdOworICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOworICAgIH0K
K30KKworYm9vbCBTY3JvbGxDb250cm9sbGVyOjppc1J1YmJlckJhbmRJblByb2dyZXNzKCkgY29u
c3QKK3sKKyAgICBpZiAoIW1faW5TY3JvbGxHZXN0dXJlICYmICFtX21vbWVudHVtU2Nyb2xsSW5Q
cm9ncmVzcyAmJiAhbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUpCisgICAgICAgIHJldHVy
biBmYWxzZTsKKworICAgIHJldHVybiAhbV9jbGllbnQtPnN0cmV0Y2hBbW91bnQoKS5pc1plcm8o
KTsKK30KKwordm9pZCBTY3JvbGxDb250cm9sbGVyOjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigp
Cit7CisgICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7CisgICAgbV9zbmFw
UnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSBmYWxzZTsKK30KKwordm9pZCBTY3JvbGxDb250cm9s
bGVyOjpzbmFwUnViYmVyQmFuZCgpCit7CisgICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0g
c3lzdGVtVXB0aW1lKCkgLSBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcDsKKyAgICBpZiAo
bV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID49IHNjcm9sbFZlbG9j
aXR5WmVyb2luZ1RpbWVvdXQpCisgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6
ZSgpOworCisgICAgbV9pblNjcm9sbEdlc3R1cmUgPSBmYWxzZTsKKworICAgIGlmIChtX3NuYXBS
dWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9zdGFydFRp
bWUgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07CisgICAgbV9zdGFy
dFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKKyAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7
CisgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKKworICAgIG1fY2xpZW50LT5zdGFy
dFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2
ZSA9IHRydWU7Cit9CisKK2Jvb2wgU2Nyb2xsQ29udHJvbGxlcjo6c2hvdWxkUnViYmVyQmFuZElu
SG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9ybVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQp
Cit7CisgICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkgPiAwKQorICAgICAgICByZXR1cm4gbV9j
bGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlvbihTY3JvbGxMZWZ0KTsKKyAgICBpZiAo
d2hlZWxFdmVudC5kZWx0YVgoKSA8IDApCisgICAgICAgIHJldHVybiBtX2NsaWVudC0+c2hvdWxk
UnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbFJpZ2h0KTsKKworICAgIHJldHVybiB0cnVlOwor
fQorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JB
TkRJTkcpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9TY3JvbGxDb250cm9s
bGVyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Njcm9s
bENvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1Njcm9sbENvbnRyb2xsZXIubW0JKHdvcmtpbmcgY29weSkKQEAgLTMxLDYgKzMxLDEx
IEBACiAjaW5jbHVkZSA8c3lzL3N5c2N0bC5oPgogI2luY2x1ZGUgPHN5cy90aW1lLmg+CiAKKyNp
ZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQorI2luY2x1ZGUgIkF4aXNTY3JvbGxTbmFwQW5pbWF0
b3IuaCIKKyNpbmNsdWRlICJTY3JvbGxhYmxlQXJlYS5oIgorI2VuZGlmCisKICNpZiBFTkFCTEUo
UlVCQkVSX0JBTkRJTkcpCiAKIHN0YXRpYyBOU1RpbWVJbnRlcnZhbCBzeXN0ZW1VcHRpbWUoKQpA
QCAtOTEsMTcgKzk2LDI2IEBAIHN0YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKQog
CiBTY3JvbGxDb250cm9sbGVyOjpTY3JvbGxDb250cm9sbGVyKFNjcm9sbENvbnRyb2xsZXJDbGll
bnQqIGNsaWVudCkKICAgICA6IG1fY2xpZW50KGNsaWVudCkKKyAgICAsIG1fbGFzdE1vbWVudHVt
U2Nyb2xsVGltZXN0YW1wKDApCisgICAgLCBtX3N0YXJ0VGltZSgwKQorICAgICwgbV9zbmFwUnVi
YmVyYmFuZFRpbWVyKFJ1bkxvb3A6OmN1cnJlbnQoKSwgdGhpcywgJlNjcm9sbENvbnRyb2xsZXI6
OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCkKKyNpZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKSAm
JiBQTEFURk9STShNQUMpCisgICAgLCBtX2hvcml6b250YWxTY3JvbGxTbmFwVGltZXIoUnVuTG9v
cDo6Y3VycmVudCgpLCB0aGlzLCAmU2Nyb2xsQ29udHJvbGxlcjo6aG9yaXpvbnRhbFNjcm9sbFNu
YXBUaW1lckZpcmVkKQorICAgICwgbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcihSdW5Mb29wOjpj
dXJyZW50KCksIHRoaXMsICZTY3JvbGxDb250cm9sbGVyOjp2ZXJ0aWNhbFNjcm9sbFNuYXBUaW1l
ckZpcmVkKQorI2VuZGlmCiAgICAgLCBtX2luU2Nyb2xsR2VzdHVyZShmYWxzZSkKICAgICAsIG1f
bW9tZW50dW1TY3JvbGxJblByb2dyZXNzKGZhbHNlKQogICAgICwgbV9pZ25vcmVNb21lbnR1bVNj
cm9sbHMoZmFsc2UpCi0gICAgLCBtX2xhc3RNb21lbnR1bVNjcm9sbFRpbWVzdGFtcCgwKQotICAg
ICwgbV9zdGFydFRpbWUoMCkKICAgICAsIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklzQWN0aXZlKGZh
bHNlKQogewogfQogCiBib29sIFNjcm9sbENvbnRyb2xsZXI6OmhhbmRsZVdoZWVsRXZlbnQoY29u
c3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQogeworI2lmIEVOQUJMRShDU1NfU0NS
T0xMX1NOQVApICYmIFBMQVRGT1JNKE1BQykKKyAgICBpZiAoIXByb2Nlc3NXaGVlbEV2ZW50Rm9y
U2Nyb2xsU25hcCh3aGVlbEV2ZW50KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCiAg
ICAgaWYgKHdoZWVsRXZlbnQucGhhc2UoKSA9PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2Fu
KSB7CiAgICAgICAgIC8vIEZpcnN0LCBjaGVjayBpZiB3ZSBzaG91bGQgcnViYmVyLWJhbmQgYXQg
YWxsLgogICAgICAgICBpZiAobV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgt
d2hlZWxFdmVudC5kZWx0YVgoKSwgMCkpCkBAIC0zNjUsOSArMzc5LDE2IEBAIGJvb2wgU2Nyb2xs
Q29udHJvbGxlcjo6aXNSdWJiZXJCYW5kSW5Qcm8KICAgICByZXR1cm4gIW1fY2xpZW50LT5zdHJl
dGNoQW1vdW50KCkuaXNaZXJvKCk7CiB9CiAKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6c3RhcnRT
bmFwUnViYmVyYmFuZFRpbWVyKCkKK3sKKyAgICBtX2NsaWVudC0+c3RhcnRTbmFwUnViYmVyYmFu
ZFRpbWVyKCk7CisgICAgbV9zbmFwUnViYmVyYmFuZFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEuMCAv
IDYwLjApOworfQorCiB2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTbmFwUnViYmVyYmFuZFRp
bWVyKCkKIHsKICAgICBtX2NsaWVudC0+c3RvcFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBt
X3NuYXBSdWJiZXJiYW5kVGltZXIuc3RvcCgpOwogICAgIG1fc25hcFJ1YmJlcmJhbmRUaW1lcklz
QWN0aXZlID0gZmFsc2U7CiB9CiAKQEAgLTM4Nyw3ICs0MDgsNyBAQCB2b2lkIFNjcm9sbENvbnRy
b2xsZXI6OnNuYXBSdWJiZXJCYW5kKCkKICAgICBtX29yaWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7
CiAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKIAotICAgIG1fY2xpZW50LT5zdGFy
dFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKKyAgICBzdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsK
ICAgICBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7CiB9CiAKQEAgLTQwMSw2
ICs0MjIsNzMgQEAgYm9vbCBTY3JvbGxDb250cm9sbGVyOjpzaG91bGRSdWJiZXJCYW5kSQogICAg
IHJldHVybiB0cnVlOwogfQogCisjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkgJiYgUExBVEZP
Uk0oTUFDKQorYm9vbCBTY3JvbGxDb250cm9sbGVyOjpwcm9jZXNzV2hlZWxFdmVudEZvclNjcm9s
bFNuYXAoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50JiB3aGVlbEV2ZW50KQoreworICAgIGlmICht
X3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yKSB7CisgICAgICAgIG1fdmVydGljYWxTY3JvbGxT
bmFwQW5pbWF0b3ItPmhhbmRsZVdoZWVsRXZlbnQod2hlZWxFdmVudCk7CisgICAgICAgIGlmICht
X3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQod2hl
ZWxFdmVudCkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgIGlmIChtX2hv
cml6b250YWxTY3JvbGxTbmFwQW5pbWF0b3IpIHsKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xs
U25hcEFuaW1hdG9yLT5oYW5kbGVXaGVlbEV2ZW50KHdoZWVsRXZlbnQpOworICAgICAgICBpZiAo
bV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yLT5zaG91bGRPdmVycmlkZVdoZWVsRXZlbnQo
d2hlZWxFdmVudCkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0
dXJuIHRydWU7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJvbGxlcjo6dXBkYXRlU2Nyb2xsQW5pbWF0
b3JzQW5kVGltZXJzKGNvbnN0IFNjcm9sbGFibGVBcmVhJiBzY3JvbGxhYmxlQXJlYSkKK3sKKyAg
ICAvLyBGSVhNRTogQ3VycmVudGx5LCBzY3JvbGwgc25hcCBhbmltYXRvcnMgYXJlIHJlY3JlYXRl
ZCBldmVuIHRob3VnaCB0aGUgc25hcCBvZmZzZXRzIGFsb25lIGNhbiBiZSB1cGRhdGVkLgorICAg
IGlmIChzY3JvbGxhYmxlQXJlYS5ob3Jpem9udGFsU25hcE9mZnNldHMoKSkKKyAgICAgICAgbV9o
b3Jpem9udGFsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtlX3VuaXF1ZTxBeGlzU2Nyb2xs
U25hcEFuaW1hdG9yPih0aGlzLCBzY3JvbGxhYmxlQXJlYS5ob3Jpem9udGFsU25hcE9mZnNldHMo
KSwgU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsKTsKKyAgICBlbHNlIGlmIChtX2hvcml6b250
YWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1faG9yaXpvbnRhbFNjcm9sbFNuYXBBbmlt
YXRvciA9IG51bGxwdHI7CisKKyAgICBpZiAoc2Nyb2xsYWJsZUFyZWEudmVydGljYWxTbmFwT2Zm
c2V0cygpKQorICAgICAgICBtX3ZlcnRpY2FsU2Nyb2xsU25hcEFuaW1hdG9yID0gc3RkOjptYWtl
X3VuaXF1ZTxBeGlzU2Nyb2xsU25hcEFuaW1hdG9yPih0aGlzLCBzY3JvbGxhYmxlQXJlYS52ZXJ0
aWNhbFNuYXBPZmZzZXRzKCksIFNjcm9sbEV2ZW50QXhpczo6VmVydGljYWwpOworICAgIGVsc2Ug
aWYgKG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1fdmVydGljYWxTY3Jv
bGxTbmFwQW5pbWF0b3IgPSBudWxscHRyOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0
YXJ0U2Nyb2xsU25hcFRpbWVyKFNjcm9sbEV2ZW50QXhpcyBheGlzKQoreworICAgIFJ1bkxvb3A6
OlRpbWVyPFNjcm9sbENvbnRyb2xsZXI+JiBzY3JvbGxTbmFwVGltZXIgPSBheGlzID09IFNjcm9s
bEV2ZW50QXhpczo6SG9yaXpvbnRhbCA/IG1faG9yaXpvbnRhbFNjcm9sbFNuYXBUaW1lciA6IG1f
dmVydGljYWxTY3JvbGxTbmFwVGltZXI7CisgICAgaWYgKCFzY3JvbGxTbmFwVGltZXIuaXNBY3Rp
dmUoKSkKKyAgICAgICAgc2Nyb2xsU25hcFRpbWVyLnN0YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjAp
OworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6OnN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xs
RXZlbnRBeGlzIGF4aXMpCit7CisgICAgUnVuTG9vcDo6VGltZXI8U2Nyb2xsQ29udHJvbGxlcj4m
IHNjcm9sbFNuYXBUaW1lciA9IGF4aXMgPT0gU2Nyb2xsRXZlbnRBeGlzOjpIb3Jpem9udGFsID8g
bV9ob3Jpem9udGFsU2Nyb2xsU25hcFRpbWVyIDogbV92ZXJ0aWNhbFNjcm9sbFNuYXBUaW1lcjsK
KyAgICBzY3JvbGxTbmFwVGltZXIuc3RvcCgpOworfQorCit2b2lkIFNjcm9sbENvbnRyb2xsZXI6
Omhvcml6b250YWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpCit7CisgICAgaWYgKG1faG9yaXpvbnRh
bFNjcm9sbFNuYXBBbmltYXRvcikKKyAgICAgICAgbV9ob3Jpem9udGFsU2Nyb2xsU25hcEFuaW1h
dG9yLT5zY3JvbGxTbmFwQW5pbWF0aW9uVXBkYXRlKCk7Cit9CisKK3ZvaWQgU2Nyb2xsQ29udHJv
bGxlcjo6dmVydGljYWxTY3JvbGxTbmFwVGltZXJGaXJlZCgpCit7CisgICAgaWYgKG1fdmVydGlj
YWxTY3JvbGxTbmFwQW5pbWF0b3IpCisgICAgICAgIG1fdmVydGljYWxTY3JvbGxTbmFwQW5pbWF0
b3ItPnNjcm9sbFNuYXBBbmltYXRpb25VcGRhdGUoKTsKK30KKworTGF5b3V0VW5pdCBTY3JvbGxD
b250cm9sbGVyOjpzY3JvbGxPZmZzZXRPbkF4aXMoU2Nyb2xsRXZlbnRBeGlzIGF4aXMpCit7Cisg
ICAgcmV0dXJuIG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMoYXhpcyk7Cit9CisKK3ZvaWQg
U2Nyb2xsQ29udHJvbGxlcjo6aW1tZWRpYXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcyBh
eGlzLCBmbG9hdCBkZWx0YSkKK3sKKyAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsT25BeGlz
KGF4aXMsIGRlbHRhKTsKK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNl
bmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvQXhpc1Njcm9sbFNuYXBBbmltYXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFuaW1hdG9yLmgJKHJldmlzaW9uIDE4
MDkzNSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFuaW1h
dG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDggKzU3LDggQEAgcHJvdGVjdGVkOgogICAgIHZp
cnR1YWwgfkF4aXNTY3JvbGxTbmFwQW5pbWF0b3JDbGllbnQoKSB7IH0KIAogcHVibGljOgotICAg
IHZpcnR1YWwgTGF5b3V0VW5pdCBzY3JvbGxPZmZzZXRJbkF4aXMoU2Nyb2xsRXZlbnRBeGlzKSA9
IDA7Ci0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEluQXhpcyhTY3JvbGxFdmVudEF4
aXMsIGZsb2F0IHZlbG9jaXR5KSA9IDA7CisgICAgdmlydHVhbCBMYXlvdXRVbml0IHNjcm9sbE9m
ZnNldE9uQXhpcyhTY3JvbGxFdmVudEF4aXMpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW1tZWRp
YXRlU2Nyb2xsT25BeGlzKFNjcm9sbEV2ZW50QXhpcywgZmxvYXQgdmVsb2NpdHkpID0gMDsKICAg
ICB2aXJ0dWFsIHZvaWQgc3RhcnRTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIHN0b3BTY3JvbGxTbmFwVGltZXIoU2Nyb2xsRXZlbnRBeGlzKSA9
IDA7CiB9OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4aXNTY3JvbGxTbmFw
QW5pbWF0b3IubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0F4
aXNTY3JvbGxTbmFwQW5pbWF0b3IubW0JKHJldmlzaW9uIDE4MDkzNSkKKysrIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9BeGlzU2Nyb2xsU25hcEFuaW1hdG9yLm1tCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQtMjAxNSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAg
LTExNyw3ICsxMTcsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFwQW5pbWF0b3I6OmhhbmRsZVdoZWVs
CiAgICAgICAgIC8vIEJlZ2luIHRyYWNraW5nIHdoZWVsIGRlbHRhcyBmb3IgZ2xpZGUgcHJlZGlj
dGlvbi4KICAgICAgICAgZW5kU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFwU3RhdGU6OlVz
ZXJJbnRlcmFjdGlvbik7CiAgICAgICAgIHB1c2hJbml0aWFsV2hlZWxEZWx0YSh3aGVlbERlbHRh
KTsKLSAgICAgICAgbV9iZWdpblRyYWNraW5nV2hlZWxEZWx0YU9mZnNldCA9IG1fY2xpZW50LT5z
Y3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsKKyAgICAgICAgbV9iZWdpblRyYWNraW5nV2hlZWxE
ZWx0YU9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9heGlzKTsKICAgICAg
ICAgYnJlYWs7CiAKICAgICBjYXNlIFdoZWVsRXZlbnRTdGF0dXM6OkluZXJ0aWFsU2Nyb2xsaW5n
OgpAQCAtMTUzLDcgKzE1Myw3IEBAIHZvaWQgQXhpc1Njcm9sbFNuYXBBbmltYXRvcjo6c2Nyb2xs
U25hcEEKICAgICBBU1NFUlQobV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpHbGlk
aW5nIHx8IG1fY3VycmVudFN0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcpOwogICAg
IGZsb2F0IGRlbHRhID0gbV9jdXJyZW50U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGlu
ZyA/IGNvbXB1dGVTbmFwRGVsdGEoKSA6IGNvbXB1dGVHbGlkZURlbHRhKCk7CiAgICAgaWYgKGRl
bHRhKQotICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsSW5BeGlzKG1fYXhpcywgZGVs
dGEpOworICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xsT25BeGlzKG1fYXhpcywgZGVs
dGEpOwogICAgIGVsc2UKICAgICAgICAgZW5kU2Nyb2xsU25hcEFuaW1hdGlvbihTY3JvbGxTbmFw
U3RhdGU6OkRlc3RpbmF0aW9uUmVhY2hlZCk7CiB9CkBAIC0xNjEsNyArMTYxLDcgQEAgdm9pZCBB
eGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpzY3JvbGxTbmFwQQogdm9pZCBBeGlzU2Nyb2xsU25hcEFu
aW1hdG9yOjpiZWdpblNjcm9sbFNuYXBBbmltYXRpb24oU2Nyb2xsU25hcFN0YXRlIG5ld1N0YXRl
KQogewogICAgIEFTU0VSVChuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgfHwg
bmV3U3RhdGUgPT0gU2Nyb2xsU25hcFN0YXRlOjpTbmFwcGluZyk7Ci0gICAgTGF5b3V0VW5pdCBv
ZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAgTGF5b3V0
VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7CiAgICAg
ZmxvYXQgaW5pdGlhbFdoZWVsRGVsdGEgPSBuZXdTdGF0ZSA9PSBTY3JvbGxTbmFwU3RhdGU6Okds
aWRpbmcgPyBhdmVyYWdlSW5pdGlhbFdoZWVsRGVsdGEoKSA6IDA7CiAgICAgTGF5b3V0VW5pdCBw
cm9qZWN0ZWRTY3JvbGxEZXN0aW5hdGlvbiA9IG5ld1N0YXRlID09IFNjcm9sbFNuYXBTdGF0ZTo6
R2xpZGluZyA/IG1fYmVnaW5UcmFja2luZ1doZWVsRGVsdGFPZmZzZXQgKyBMYXlvdXRVbml0KHBy
b2plY3RlZEluZXJ0aWFsU2Nyb2xsRGlzdGFuY2UoaW5pdGlhbFdoZWVsRGVsdGEpKSA6IG9mZnNl
dDsKICAgICBwcm9qZWN0ZWRTY3JvbGxEZXN0aW5hdGlvbiA9IHN0ZDo6bWluKHN0ZDo6bWF4KHBy
b2plY3RlZFNjcm9sbERlc3RpbmF0aW9uLCBtX3NuYXBPZmZzZXRzLT5maXJzdCgpKSwgbV9zbmFw
T2Zmc2V0cy0+bGFzdCgpKTsKQEAgLTIwMyw3ICsyMDMsNyBAQCB2b2lkIEF4aXNTY3JvbGxTbmFw
QW5pbWF0b3I6OmVuZFNjcm9sbFNuCiAvLyByZWxhdGlvbnNoaXAgb2YgdGhlIGRpc3RhbmNlIHRy
YXZlbGVkLCBjbGFtcGVkIGJ5IGFyYml0cmFyeSBtaW4gYW5kIG1heCB2YWx1ZXMuCiBmbG9hdCBB
eGlzU2Nyb2xsU25hcEFuaW1hdG9yOjpjb21wdXRlU25hcERlbHRhKCkgY29uc3QKIHsKLSAgICBM
YXlvdXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRJbkF4aXMobV9heGlzKTsK
KyAgICBMYXlvdXRVbml0IG9mZnNldCA9IG1fY2xpZW50LT5zY3JvbGxPZmZzZXRPbkF4aXMobV9h
eGlzKTsKICAgICBib29sIGNhbkNvbXB1dGVTbmFwID0gIChtX2luaXRpYWxPZmZzZXQgPD0gb2Zm
c2V0ICYmIG9mZnNldCA8IG1fdGFyZ2V0T2Zmc2V0KSB8fCAobV90YXJnZXRPZmZzZXQgPCBvZmZz
ZXQgJiYgb2Zmc2V0IDw9IG1faW5pdGlhbE9mZnNldCk7CiAgICAgaWYgKG1fY3VycmVudFN0YXRl
ICE9IFNjcm9sbFNuYXBTdGF0ZTo6U25hcHBpbmcgfHwgIWNhbkNvbXB1dGVTbmFwKQogICAgICAg
ICByZXR1cm4gMDsKQEAgLTIzNyw3ICsyMzcsNyBAQCBmbG9hdCBBeGlzU2Nyb2xsU25hcEFuaW1h
dG9yOjpjb21wdXRlU25hCiAvLyBhbmQgVkYuIFRodXMsIHdlIGNhbiBleHByZXNzIG91ciBnbGlk
aW5nIGVxdWF0aW9uIGFsbCBpbiB0ZXJtcyBvZiBWMCwgVkYgYW5kIHQuCiBmbG9hdCBBeGlzU2Ny
b2xsU25hcEFuaW1hdG9yOjpjb21wdXRlR2xpZGVEZWx0YSgpIGNvbnN0CiB7Ci0gICAgTGF5b3V0
VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0SW5BeGlzKG1fYXhpcyk7CisgICAg
TGF5b3V0VW5pdCBvZmZzZXQgPSBtX2NsaWVudC0+c2Nyb2xsT2Zmc2V0T25BeGlzKG1fYXhpcyk7
CiAgICAgYm9vbCBjYW5Db21wdXRlR2xpZGUgPSAobV9pbml0aWFsT2Zmc2V0IDw9IG9mZnNldCAm
JiBvZmZzZXQgPCBtX3RhcmdldE9mZnNldCkgfHwgKG1fdGFyZ2V0T2Zmc2V0IDwgb2Zmc2V0ICYm
IG9mZnNldCA8PSBtX2luaXRpYWxPZmZzZXQpOwogICAgIGlmIChtX2N1cnJlbnRTdGF0ZSAhPSBT
Y3JvbGxTbmFwU3RhdGU6OkdsaWRpbmcgfHwgIWNhbkNvbXB1dGVHbGlkZSkKICAgICAgICAgcmV0
dXJuIDA7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5pbWF0b3JN
YWMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQW5p
bWF0b3JNYWMuaAkocmV2aXNpb24gMTgwOTM1KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbEFuaW1hdG9yTWFjLmgJKHdvcmtpbmcgY29weSkKQEAgLTMyLDcgKzMyLDYgQEAK
ICNpbmNsdWRlICJGbG9hdFBvaW50LmgiCiAjaW5jbHVkZSAiRmxvYXRTaXplLmgiCiAjaW5jbHVk
ZSAiU2Nyb2xsQW5pbWF0b3IuaCIKLSNpbmNsdWRlICJTY3JvbGxDb250cm9sbGVyLmgiCiAjaW5j
bHVkZSAiVGltZXIuaCIKICNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKQEAgLTQyLDE1ICs0
MSwxMSBAQCBPQkpDX0NMQVNTIFdlYlNjcm9sbGJhclBhaW50ZXJEZWxlZ2F0ZTsKIAogdHlwZWRl
ZiBpZCBTY3JvbGxiYXJQYWludGVyQ29udHJvbGxlcjsKIAotI2lmICFFTkFCTEUoUlVCQkVSX0JB
TkRJTkcpCi1jbGFzcyBTY3JvbGxDb250cm9sbGVyQ2xpZW50IHsgfTsKLSNlbmRpZgotCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFNjcm9sbGJhcjsKIAotY2xhc3MgU2Nyb2xsQW5pbWF0
b3JNYWMgOiBwdWJsaWMgU2Nyb2xsQW5pbWF0b3IsIHByaXZhdGUgU2Nyb2xsQ29udHJvbGxlckNs
aWVudCB7CitjbGFzcyBTY3JvbGxBbmltYXRvck1hYyA6IHB1YmxpYyBTY3JvbGxBbmltYXRvciB7
CiAKIHB1YmxpYzoKICAgICBTY3JvbGxBbmltYXRvck1hYyhTY3JvbGxhYmxlQXJlYSYpOwpAQCAt
MTUwLDE3ICsxNDUsMTEgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNvcmU6OkludFBvaW50
IGFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1t
ZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNp
emUmKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnkoY29uc3Qg
RmxvYXRTaXplJikgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCB2b2lkIHN0YXJ0U25hcFJ1YmJlcmJh
bmRUaW1lcigpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgdm9pZCBzdG9wU25hcFJ1YmJlcmJhbmRU
aW1lcigpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RTY3JvbGxQb3NpdGlvblRv
Qm91bmRzSWZOZWNlc3NhcnkoKSBvdmVycmlkZTsKIAogICAgIGJvb2wgcGlubmVkSW5EaXJlY3Rp
b24oZmxvYXQgZGVsdGFYLCBmbG9hdCBkZWx0YVkpOwotICAgIHZvaWQgc25hcFJ1YmJlckJhbmRU
aW1lckZpcmVkKCk7CiAKICAgICBib29sIGlzQWxyZWFkeVBpbm5lZEluRGlyZWN0aW9uT2ZHZXN0
dXJlKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYsIFNjcm9sbEV2ZW50QXhpcyk7Ci0KLSAgICBT
Y3JvbGxDb250cm9sbGVyIG1fc2Nyb2xsQ29udHJvbGxlcjsKLSAgICBUaW1lciBtX3NuYXBSdWJi
ZXJCYW5kVGltZXI7CiAjZW5kaWYKIAogICAgIGJvb2wgbV9oYXZlU2Nyb2xsZWRTaW5jZVBhZ2VM
b2FkOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Njcm9sbEFuaW1hdG9yTWFj
Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxBbmlt
YXRvck1hYy5tbQkocmV2aXNpb24gMTgwOTM1KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbEFuaW1hdG9yTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC02NDMsMTAgKzY0Myw2
IEBAIFNjcm9sbEFuaW1hdG9yTWFjOjpTY3JvbGxBbmltYXRvck1hYyhTY3IKICAgICA6IFNjcm9s
bEFuaW1hdG9yKHNjcm9sbGFibGVBcmVhKQogICAgICwgbV9pbml0aWFsU2Nyb2xsYmFyUGFpbnRU
aW1lcigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjppbml0aWFsU2Nyb2xsYmFyUGFpbnRUaW1l
ckZpcmVkKQogICAgICwgbV9zZW5kQ29udGVudEFyZWFTY3JvbGxlZFRpbWVyKCp0aGlzLCAmU2Ny
b2xsQW5pbWF0b3JNYWM6OnNlbmRDb250ZW50QXJlYVNjcm9sbGVkVGltZXJGaXJlZCkKLSNpZiBF
TkFCTEUoUlVCQkVSX0JBTkRJTkcpCi0gICAgLCBtX3Njcm9sbENvbnRyb2xsZXIodGhpcykKLSAg
ICAsIG1fc25hcFJ1YmJlckJhbmRUaW1lcigqdGhpcywgJlNjcm9sbEFuaW1hdG9yTWFjOjpzbmFw
UnViYmVyQmFuZFRpbWVyRmlyZWQpCi0jZW5kaWYKICAgICAsIG1faGF2ZVNjcm9sbGVkU2luY2VQ
YWdlTG9hZChmYWxzZSkKICAgICAsIG1fbmVlZHNTY3JvbGxlclN0eWxlVXBkYXRlKGZhbHNlKQog
ewpAQCAtMTI3MCwyMSArMTI2Niw2IEBAIHZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6OmltbWVkaWF0
ZVNjcm9sbEIKICAgICBtX2N1cnJlbnRQb3NZID0gbmV3UG9zLnkoKTsKICAgICBub3RpZnlQb3Np
dGlvbkNoYW5nZWQoYWRqdXN0ZWREZWx0YSk7CiB9Ci0KLXZvaWQgU2Nyb2xsQW5pbWF0b3JNYWM6
OnN0YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9zbmFwUnViYmVyQmFuZFRpbWVy
LnN0YXJ0UmVwZWF0aW5nKDEuMCAvIDYwLjApOwotfQotCi12b2lkIFNjcm9sbEFuaW1hdG9yTWFj
OjpzdG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9zbmFwUnViYmVyQmFuZFRpbWVy
LnN0b3AoKTsKLX0KLQotdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6c25hcFJ1YmJlckJhbmRUaW1l
ckZpcmVkKCkKLXsKLSAgICBtX3Njcm9sbENvbnRyb2xsZXIuc25hcFJ1YmJlckJhbmRUaW1lckZp
cmVkKCk7Ci19CiAjZW5kaWYKIAogdm9pZCBTY3JvbGxBbmltYXRvck1hYzo6dXBkYXRlU2Nyb2xs
ZXJTdHlsZSgpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsQ29udHJv
bGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxD
b250cm9sbGVyLmgJKHJldmlzaW9uIDE4MDkzNSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9TY3JvbGxDb250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTEsMTA3ICswLDAgQEAK
LS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5D
LiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KLSAqLwotCi0jaWZuZGVmIFNjcm9sbENvbnRyb2xsZXJfaAotI2RlZmluZSBTY3JvbGxD
b250cm9sbGVyX2gKLQotI2lmIEVOQUJMRShSVUJCRVJfQkFORElORykKLQotI2luY2x1ZGUgIkZs
b2F0UG9pbnQuaCIKLSNpbmNsdWRlICJGbG9hdFNpemUuaCIKLSNpbmNsdWRlICJTY3JvbGxUeXBl
cy5oIgotI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLWNsYXNzIFBsYXRmb3JtV2hlZWxFdmVudDsKLQotY2xhc3MgU2Nyb2xsQ29udHJvbGxlckNs
aWVudCB7Ci1wcm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+U2Nyb2xsQ29udHJvbGxlckNsaWVudCgp
IHsgfQotCi1wdWJsaWM6Ci0gICAgdmlydHVhbCBib29sIGFsbG93c0hvcml6b250YWxTdHJldGNo
aW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgYWxs
b3dzVmVydGljYWxTdHJldGNoaW5nKGNvbnN0IFBsYXRmb3JtV2hlZWxFdmVudCYpID0gMDsKLSAg
ICB2aXJ0dWFsIEludFNpemUgc3RyZXRjaEFtb3VudCgpID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wg
cGlubmVkSW5EaXJlY3Rpb24oY29uc3QgRmxvYXRTaXplJikgPSAwOwotICAgIHZpcnR1YWwgYm9v
bCBjYW5TY3JvbGxIb3Jpem9udGFsbHkoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIGNhblNjcm9s
bFZlcnRpY2FsbHkoKSA9IDA7Ci0gICAgdmlydHVhbCBib29sIHNob3VsZFJ1YmJlckJhbmRJbkRp
cmVjdGlvbihTY3JvbGxEaXJlY3Rpb24pID0gMDsKLQotICAgIC8vIFJldHVybiB0aGUgYWJzb2x1
dGUgc2Nyb2xsIHBvc2l0aW9uLCBub3QgcmVsYXRpdmUgdG8gdGhlIHNjcm9sbCBvcmlnaW4uCi0g
ICAgdmlydHVhbCBXZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZVNjcm9sbFBvc2l0aW9uKCkgPSAw
OwotCi0gICAgdmlydHVhbCB2b2lkIGltbWVkaWF0ZVNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYp
ID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgaW1tZWRpYXRlU2Nyb2xsQnlXaXRob3V0Q29udGVudEVk
Z2VDb25zdHJhaW50cyhjb25zdCBGbG9hdFNpemUmKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHN0
YXJ0U25hcFJ1YmJlcmJhbmRUaW1lcigpID0gMDsKLSAgICB2aXJ0dWFsIHZvaWQgc3RvcFNuYXBS
dWJiZXJiYW5kVGltZXIoKSA9IDA7Ci0KLSAgICAvLyBJZiB0aGUgY3VycmVudCBzY3JvbGwgcG9z
aXRpb24gaXMgd2l0aGluIHRoZSBvdmVyaGFuZyBhcmVhLCB0aGlzIGZ1bmN0aW9uIHdpbGwgY2F1
c2UKLSAgICAvLyB0aGUgcGFnZSB0byBzY3JvbGwgdG8gdGhlIG5lYXJlc3QgYm91bmRhcnkgcG9p
bnQuCi0gICAgdmlydHVhbCB2b2lkIGFkanVzdFNjcm9sbFBvc2l0aW9uVG9Cb3VuZHNJZk5lY2Vz
c2FyeSgpID0gMDsKLX07Ci0KLWNsYXNzIFNjcm9sbENvbnRyb2xsZXIgewotICAgIFdURl9NQUtF
X05PTkNPUFlBQkxFKFNjcm9sbENvbnRyb2xsZXIpOwotCi1wdWJsaWM6Ci0gICAgZXhwbGljaXQg
U2Nyb2xsQ29udHJvbGxlcihTY3JvbGxDb250cm9sbGVyQ2xpZW50Kik7Ci0KLSAgICBib29sIGhh
bmRsZVdoZWVsRXZlbnQoY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0gICAgdm9pZCBzbmFw
UnViYmVyQmFuZFRpbWVyRmlyZWQoKTsKLQotICAgIGJvb2wgaXNSdWJiZXJCYW5kSW5Qcm9ncmVz
cygpIGNvbnN0OwotCi1wcml2YXRlOgotICAgIHZvaWQgc3RvcFNuYXBSdWJiZXJiYW5kVGltZXIo
KTsKLSAgICB2b2lkIHNuYXBSdWJiZXJCYW5kKCk7Ci0KLSAgICBib29sIHNob3VsZFJ1YmJlckJh
bmRJbkhvcml6b250YWxEaXJlY3Rpb24oY29uc3QgUGxhdGZvcm1XaGVlbEV2ZW50Jik7Ci0KLSAg
ICBTY3JvbGxDb250cm9sbGVyQ2xpZW50KiBtX2NsaWVudDsKLQotICAgIGJvb2wgbV9pblNjcm9s
bEdlc3R1cmU7Ci0gICAgYm9vbCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzczsKLSAgICBib29s
IG1faWdub3JlTW9tZW50dW1TY3JvbGxzOwotICAgIAotICAgIENGVGltZUludGVydmFsIG1fbGFz
dE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOwotICAgIEZsb2F0U2l6ZSBtX292ZXJmbG93U2Nyb2xs
RGVsdGE7Ci0gICAgRmxvYXRTaXplIG1fc3RyZXRjaFNjcm9sbEZvcmNlOwotICAgIEZsb2F0U2l6
ZSBtX21vbWVudHVtVmVsb2NpdHk7Ci0KLSAgICAvLyBSdWJiZXIgYmFuZCBzdGF0ZS4KLSAgICBD
RlRpbWVJbnRlcnZhbCBtX3N0YXJ0VGltZTsKLSAgICBGbG9hdFNpemUgbV9zdGFydFN0cmV0Y2g7
Ci0gICAgRmxvYXRQb2ludCBtX29yaWdPcmlnaW47Ci0gICAgRmxvYXRTaXplIG1fb3JpZ1ZlbG9j
aXR5OwotCi0gICAgYm9vbCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZTsKLX07Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShSVUJCRVJfQkFORElORykK
LQotI2VuZGlmIC8vIFNjcm9sbENvbnRyb2xsZXJfaApJbmRleDogU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1Njcm9sbENvbnRyb2xsZXIubW0JKHJldmlzaW9uIDE4MDkzNSkKKysr
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxDb250cm9sbGVyLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDQwNiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExLCAyMDE0
LTIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU2Nyb2xsQ29udHJvbGxlci5oIgotCi0jaW5jbHVkZSAi
UGxhdGZvcm1XaGVlbEV2ZW50LmgiCi0jaW5jbHVkZSAiV2ViQ29yZVN5c3RlbUludGVyZmFjZS5o
IgotI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KLSNpbmNsdWRlIDxzeXMvdGltZS5oPgotCi0jaWYg
RU5BQkxFKFJVQkJFUl9CQU5ESU5HKQotCi1zdGF0aWMgTlNUaW1lSW50ZXJ2YWwgc3lzdGVtVXB0
aW1lKCkKLXsKLSAgICBpZiAoW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSByZXNwb25kc1Rv
U2VsZWN0b3I6QHNlbGVjdG9yKHN5c3RlbVVwdGltZSldKQotICAgICAgICByZXR1cm4gW1tOU1By
b2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSBzeXN0ZW1VcHRpbWVdOwotCi0gICAgLy8gR2V0IGhvdyBs
b25nIHN5c3RlbSBoYXMgYmVlbiB1cC4gRm91bmQgYnkgbG9va2luZyBnZXR0aW5nICJib290dGlt
ZSIgZnJvbSB0aGUga2VybmVsLgotICAgIHN0YXRpYyBzdHJ1Y3QgdGltZXZhbCBib290dGltZSA9
IHswLCAwfTsKLSAgICBpZiAoIWJvb3R0aW1lLnR2X3NlYykgewotICAgICAgICBpbnQgbWliWzJd
ID0ge0NUTF9LRVJOLCBLRVJOX0JPT1RUSU1FfTsKLSAgICAgICAgc2l6ZV90IHNpemUgPSBzaXpl
b2YoYm9vdHRpbWUpOwotICAgICAgICBpZiAoLTEgPT0gc3lzY3RsKG1pYiwgMiwgJmJvb3R0aW1l
LCAmc2l6ZSwgMCwgMCkpCi0gICAgICAgICAgICBib290dGltZS50dl9zZWMgPSAwOwotICAgIH0K
LSAgICBzdHJ1Y3QgdGltZXZhbCBub3c7Ci0gICAgaWYgKGJvb3R0aW1lLnR2X3NlYyAmJiAtMSAh
PSBnZXR0aW1lb2ZkYXkoJm5vdywgMCkpIHsKLSAgICAgICAgc3RydWN0IHRpbWV2YWwgdXB0aW1l
OwotICAgICAgICB0aW1lcnN1Yigmbm93LCAmYm9vdHRpbWUsICZ1cHRpbWUpOwotICAgICAgICBO
U1RpbWVJbnRlcnZhbCByZXN1bHQgPSB1cHRpbWUudHZfc2VjICsgKHVwdGltZS50dl91c2VjIC8g
MUUrNik7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAgfQotICAgIHJldHVybiAwOwotfQot
Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotc3RhdGljIGNvbnN0IGZsb2F0IHNjcm9sbFZlbG9j
aXR5WmVyb2luZ1RpbWVvdXQgPSAwLjEwZjsKLXN0YXRpYyBjb25zdCBmbG9hdCBydWJiZXJiYW5k
RGlyZWN0aW9uTG9ja1N0cmV0Y2hSYXRpbyA9IDE7Ci1zdGF0aWMgY29uc3QgZmxvYXQgcnViYmVy
YmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCA9IDEwOwotCi1zdGF0aWMgZmxv
YXQgZWxhc3RpY0RlbHRhRm9yVGltZURlbHRhKGZsb2F0IGluaXRpYWxQb3NpdGlvbiwgZmxvYXQg
aW5pdGlhbFZlbG9jaXR5LCBmbG9hdCBlbGFwc2VkVGltZSkKLXsKLSAgICByZXR1cm4gd2tOU0Vs
YXN0aWNEZWx0YUZvclRpbWVEZWx0YShpbml0aWFsUG9zaXRpb24sIGluaXRpYWxWZWxvY2l0eSwg
ZWxhcHNlZFRpbWUpOwotfQotCi1zdGF0aWMgZmxvYXQgZWxhc3RpY0RlbHRhRm9yUmVib3VuZERl
bHRhKGZsb2F0IGRlbHRhKQotewotICAgIHJldHVybiB3a05TRWxhc3RpY0RlbHRhRm9yUmVib3Vu
ZERlbHRhKGRlbHRhKTsKLX0KLQotc3RhdGljIGZsb2F0IHJlYm91bmREZWx0YUZvckVsYXN0aWNE
ZWx0YShmbG9hdCBkZWx0YSkKLXsKLSAgICByZXR1cm4gd2tOU1JlYm91bmREZWx0YUZvckVsYXN0
aWNEZWx0YShkZWx0YSk7Ci19Ci0KLXN0YXRpYyBmbG9hdCBzY3JvbGxXaGVlbE11bHRpcGxpZXIo
KQotewotICAgIHN0YXRpYyBmbG9hdCBtdWx0aXBsaWVyID0gLTE7Ci0gICAgaWYgKG11bHRpcGxp
ZXIgPCAwKSB7Ci0gICAgICAgIG11bHRpcGxpZXIgPSBbW05TVXNlckRlZmF1bHRzIHN0YW5kYXJk
VXNlckRlZmF1bHRzXSBmbG9hdEZvcktleTpAIk5TU2Nyb2xsV2hlZWxNdWx0aXBsaWVyIl07Ci0g
ICAgICAgIGlmIChtdWx0aXBsaWVyIDw9IDApCi0gICAgICAgICAgICBtdWx0aXBsaWVyID0gMTsK
LSAgICB9Ci0gICAgcmV0dXJuIG11bHRpcGxpZXI7Ci19Ci0KLVNjcm9sbENvbnRyb2xsZXI6OlNj
cm9sbENvbnRyb2xsZXIoU2Nyb2xsQ29udHJvbGxlckNsaWVudCogY2xpZW50KQotICAgIDogbV9j
bGllbnQoY2xpZW50KQotICAgICwgbV9pblNjcm9sbEdlc3R1cmUoZmFsc2UpCi0gICAgLCBtX21v
bWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyhmYWxzZSkKLSAgICAsIG1faWdub3JlTW9tZW50dW1TY3Jv
bGxzKGZhbHNlKQotICAgICwgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAoMCkKLSAgICAs
IG1fc3RhcnRUaW1lKDApCi0gICAgLCBtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZShmYWxz
ZSkKLXsKLX0KLQotYm9vbCBTY3JvbGxDb250cm9sbGVyOjpoYW5kbGVXaGVlbEV2ZW50KGNvbnN0
IFBsYXRmb3JtV2hlZWxFdmVudCYgd2hlZWxFdmVudCkKLXsKLSAgICBpZiAod2hlZWxFdmVudC5w
aGFzZSgpID09IFBsYXRmb3JtV2hlZWxFdmVudFBoYXNlQmVnYW4pIHsKLSAgICAgICAgLy8gRmly
c3QsIGNoZWNrIGlmIHdlIHNob3VsZCBydWJiZXItYmFuZCBhdCBhbGwuCi0gICAgICAgIGlmICht
X2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKC13aGVlbEV2ZW50LmRlbHRhWCgp
LCAwKSkKLSAgICAgICAgICAgICYmICFzaG91bGRSdWJiZXJCYW5kSW5Ib3Jpem9udGFsRGlyZWN0
aW9uKHdoZWVsRXZlbnQpKQotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgICAgIG1f
aW5TY3JvbGxHZXN0dXJlID0gdHJ1ZTsKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJvZ3Jl
c3MgPSBmYWxzZTsKLSAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAg
ICAgICAgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgPSAwOwotICAgICAgICBtX21vbWVu
dHVtVmVsb2NpdHkgPSBGbG9hdFNpemUoKTsKLQotICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91
bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotICAgICAgICBtX3N0cmV0Y2hTY3JvbGxG
b3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC53
aWR0aCgpKSk7Ci0gICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNlLnNldEhlaWdodChyZWJvdW5k
RGVsdGFGb3JFbGFzdGljRGVsdGEoc3RyZXRjaEFtb3VudC5oZWlnaHQoKSkpOwotICAgICAgICBt
X292ZXJmbG93U2Nyb2xsRGVsdGEgPSBGbG9hdFNpemUoKTsKLQotICAgICAgICBzdG9wU25hcFJ1
YmJlcmJhbmRUaW1lcigpOwotCi0gICAgICAgIHJldHVybiB0cnVlOwotICAgIH0KLQotICAgIGlm
ICh3aGVlbEV2ZW50LnBoYXNlKCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewot
ICAgICAgICBzbmFwUnViYmVyQmFuZCgpOwotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0K
LSAgICBib29sIGlzTW9tZW50dW1TY3JvbGxFdmVudCA9ICh3aGVlbEV2ZW50Lm1vbWVudHVtUGhh
c2UoKSAhPSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZU5vbmUpOwotICAgIGlmIChtX2lnbm9yZU1v
bWVudHVtU2Nyb2xscyAmJiAoaXNNb21lbnR1bVNjcm9sbEV2ZW50IHx8IG1fc25hcFJ1YmJlcmJh
bmRUaW1lcklzQWN0aXZlKSkgewotICAgICAgICBpZiAod2hlZWxFdmVudC5tb21lbnR1bVBoYXNl
KCkgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewotICAgICAgICAgICAgbV9pZ25v
cmVNb21lbnR1bVNjcm9sbHMgPSBmYWxzZTsKLSAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAg
ICAgICB9Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICBmbG9hdCBkZWx0YVgg
PSBtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKTsKLSAgICBmbG9hdCBkZWx0YVkgPSBtX292
ZXJmbG93U2Nyb2xsRGVsdGEuaGVpZ2h0KCk7Ci0KLSAgICAvLyBSZXNldCBvdmVyZmxvdyB2YWx1
ZXMgYmVjYXVzZSB3ZSBtYXkgZGVjaWRlIHRvIHJlbW92ZSBkZWx0YSBhdCB2YXJpb3VzIHBvaW50
cyBhbmQgcHV0IGl0IGludG8gb3ZlcmZsb3cuCi0gICAgbV9vdmVyZmxvd1Njcm9sbERlbHRhID0g
RmxvYXRTaXplKCk7Ci0KLSAgICBJbnRTaXplIHN0cmV0Y2hBbW91bnQgPSBtX2NsaWVudC0+c3Ry
ZXRjaEFtb3VudCgpOwotICAgIGJvb2wgaXNWZXJ0aWNhbGx5U3RyZXRjaGVkID0gc3RyZXRjaEFt
b3VudC5oZWlnaHQoKTsKLSAgICBib29sIGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkID0gc3RyZXRj
aEFtb3VudC53aWR0aCgpOwotCi0gICAgZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVg7Ci0gICAg
ZmxvYXQgZXZlbnRDb2FsZXNjZWREZWx0YVk7Ci0KLSAgICBpZiAoaXNWZXJ0aWNhbGx5U3RyZXRj
aGVkIHx8IGlzSG9yaXpvbnRhbGx5U3RyZXRjaGVkKSB7Ci0gICAgICAgIGV2ZW50Q29hbGVzY2Vk
RGVsdGFYID0gLXdoZWVsRXZlbnQudW5hY2NlbGVyYXRlZFNjcm9sbGluZ0RlbHRhWCgpOwotICAg
ICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9IC13aGVlbEV2ZW50LnVuYWNjZWxlcmF0ZWRTY3Jv
bGxpbmdEZWx0YVkoKTsKLSAgICB9IGVsc2UgewotICAgICAgICBldmVudENvYWxlc2NlZERlbHRh
WCA9IC13aGVlbEV2ZW50LmRlbHRhWCgpOwotICAgICAgICBldmVudENvYWxlc2NlZERlbHRhWSA9
IC13aGVlbEV2ZW50LmRlbHRhWSgpOwotICAgIH0KLQotICAgIGRlbHRhWCArPSBldmVudENvYWxl
c2NlZERlbHRhWDsKLSAgICBkZWx0YVkgKz0gZXZlbnRDb2FsZXNjZWREZWx0YVk7Ci0KLSAgICAv
LyBTbGlnaHRseSBwcmVmZXIgc2Nyb2xsaW5nIHZlcnRpY2FsbHkgYnkgYXBwbHlpbmcgdGhlID0g
Y2FzZSB0byBkZWx0YVkKLSAgICBpZiAoZmFic2YoZGVsdGFZKSA+PSBmYWJzZihkZWx0YVgpKQot
ICAgICAgICBkZWx0YVggPSAwOwotICAgIGVsc2UKLSAgICAgICAgZGVsdGFZID0gMDsKLQotICAg
IGJvb2wgc2hvdWxkU3RyZXRjaCA9IGZhbHNlOwotCi0gICAgUGxhdGZvcm1XaGVlbEV2ZW50UGhh
c2UgbW9tZW50dW1QaGFzZSA9IHdoZWVsRXZlbnQubW9tZW50dW1QaGFzZSgpOwotCi0gICAgLy8g
SWYgd2UgYXJlIHN0YXJ0aW5nIG1vbWVudHVtIHNjcm9sbGluZyB0aGVuIGRvIHNvbWUgc2V0dXAu
Ci0gICAgaWYgKCFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAobW9tZW50dW1QaGFzZSA9
PSBQbGF0Zm9ybVdoZWVsRXZlbnRQaGFzZUJlZ2FuIHx8IG1vbWVudHVtUGhhc2UgPT0gUGxhdGZv
cm1XaGVlbEV2ZW50UGhhc2VDaGFuZ2VkKSkKLSAgICAgICAgbV9tb21lbnR1bVNjcm9sbEluUHJv
Z3Jlc3MgPSB0cnVlOwotCi0gICAgQ0ZUaW1lSW50ZXJ2YWwgdGltZURlbHRhID0gd2hlZWxFdmVu
dC50aW1lc3RhbXAoKSAtIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wOwotICAgIGlmICht
X2luU2Nyb2xsR2VzdHVyZSB8fCBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcykgewotICAgICAg
ICBpZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYgdGltZURlbHRhID4gMCAmJiB0
aW1lRGVsdGEgPCBzY3JvbGxWZWxvY2l0eVplcm9pbmdUaW1lb3V0KSB7Ci0gICAgICAgICAgICBt
X21vbWVudHVtVmVsb2NpdHkuc2V0V2lkdGgoZXZlbnRDb2FsZXNjZWREZWx0YVggLyAoZmxvYXQp
dGltZURlbHRhKTsKLSAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eS5zZXRIZWlnaHQoZXZl
bnRDb2FsZXNjZWREZWx0YVkgLyAoZmxvYXQpdGltZURlbHRhKTsKLSAgICAgICAgICAgIG1fbGFz
dE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0gd2hlZWxFdmVudC50aW1lc3RhbXAoKTsKLSAgICAg
ICAgfSBlbHNlIHsKLSAgICAgICAgICAgIG1fbGFzdE1vbWVudHVtU2Nyb2xsVGltZXN0YW1wID0g
d2hlZWxFdmVudC50aW1lc3RhbXAoKTsKLSAgICAgICAgICAgIG1fbW9tZW50dW1WZWxvY2l0eSA9
IEZsb2F0U2l6ZSgpOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGlzVmVydGljYWxseVN0cmV0
Y2hlZCkgewotICAgICAgICAgICAgaWYgKCFpc0hvcml6b250YWxseVN0cmV0Y2hlZCAmJiBtX2Ns
aWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkpKSB7Ci0gICAgICAg
ICAgICAgICAgLy8gU3RyZXRjaGluZyBvbmx5IGluIHRoZSB2ZXJ0aWNhbC4KLSAgICAgICAgICAg
ICAgICBpZiAoZGVsdGFZICYmIChmYWJzZihkZWx0YVggLyBkZWx0YVkpIDwgcnViYmVyYmFuZERp
cmVjdGlvbkxvY2tTdHJldGNoUmF0aW8pKQotICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAw
OwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKGZhYnNmKGRlbHRhWCkgPCBydWJiZXJiYW5kTWlu
aW11bVJlcXVpcmVkRGVsdGFCZWZvcmVTdHJldGNoKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1f
b3ZlcmZsb3dTY3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgo
KSArIGRlbHRhWCk7Ci0gICAgICAgICAgICAgICAgICAgIGRlbHRhWCA9IDA7Ci0gICAgICAgICAg
ICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0YS5z
ZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgIH0gZWxzZSBpZiAoaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpIHsKLSAg
ICAgICAgICAgIC8vIFN0cmV0Y2hpbmcgb25seSBpbiB0aGUgaG9yaXpvbnRhbC4KLSAgICAgICAg
ICAgIGlmIChtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKDAsIGRlbHRhWSkp
KSB7Ci0gICAgICAgICAgICAgICAgaWYgKGRlbHRhWCAmJiAoZmFic2YoZGVsdGFZIC8gZGVsdGFY
KSA8IHJ1YmJlcmJhbmREaXJlY3Rpb25Mb2NrU3RyZXRjaFJhdGlvKSkKLSAgICAgICAgICAgICAg
ICAgICAgZGVsdGFZID0gMDsKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChmYWJzZihkZWx0YVkp
IDwgcnViYmVyYmFuZE1pbmltdW1SZXF1aXJlZERlbHRhQmVmb3JlU3RyZXRjaCkgewotICAgICAg
ICAgICAgICAgICAgICBtX292ZXJmbG93U2Nyb2xsRGVsdGEuc2V0SGVpZ2h0KG1fb3ZlcmZsb3dT
Y3JvbGxEZWx0YS5oZWlnaHQoKSArIGRlbHRhWSk7Ci0gICAgICAgICAgICAgICAgICAgIGRlbHRh
WSA9IDA7Ci0gICAgICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgICAgIG1fb3Zl
cmZsb3dTY3JvbGxEZWx0YS5zZXRIZWlnaHQobV9vdmVyZmxvd1Njcm9sbERlbHRhLmhlaWdodCgp
ICsgZGVsdGFZKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAg
IC8vIE5vdCBzdHJldGNoaW5nIGF0IGFsbCB5ZXQuCi0gICAgICAgICAgICBpZiAobV9jbGllbnQt
PnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZShkZWx0YVgsIGRlbHRhWSkpKSB7Ci0gICAgICAg
ICAgICAgICAgaWYgKGZhYnNmKGRlbHRhWSkgPj0gZmFic2YoZGVsdGFYKSkgewotICAgICAgICAg
ICAgICAgICAgICBpZiAoZmFic2YoZGVsdGFYKSA8IHJ1YmJlcmJhbmRNaW5pbXVtUmVxdWlyZWRE
ZWx0YUJlZm9yZVN0cmV0Y2gpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dT
Y3JvbGxEZWx0YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRh
WCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBkZWx0YVggPSAwOwotICAgICAgICAgICAgICAg
ICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIG1fb3ZlcmZsb3dTY3JvbGxEZWx0
YS5zZXRXaWR0aChtX292ZXJmbG93U2Nyb2xsRGVsdGEud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHNob3VsZFN0cmV0Y2ggPSB0cnVlOwotICAg
ICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGRlbHRhWCB8fCBkZWx0YVkp
IHsKLSAgICAgICAgaWYgKCEoc2hvdWxkU3RyZXRjaCB8fCBpc1ZlcnRpY2FsbHlTdHJldGNoZWQg
fHwgaXNIb3Jpem9udGFsbHlTdHJldGNoZWQpKSB7Ci0gICAgICAgICAgICBpZiAoZGVsdGFZKSB7
Ci0gICAgICAgICAgICAgICAgZGVsdGFZICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotICAg
ICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoMCwgZGVs
dGFZKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAoZGVsdGFYKSB7Ci0gICAgICAg
ICAgICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwotICAgICAgICAgICAg
ICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeShGbG9hdFNpemUoZGVsdGFYLCAwKSk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50
LT5hbGxvd3NIb3Jpem9udGFsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgewotICAgICAgICAgICAg
ICAgIGRlbHRhWCA9IDA7Ci0gICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVggPSAw
OwotICAgICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVggJiYgIWlzSG9yaXpvbnRhbGx5U3RyZXRj
aGVkICYmICFtX2NsaWVudC0+cGlubmVkSW5EaXJlY3Rpb24oRmxvYXRTaXplKGRlbHRhWCwgMCkp
KSB7Ci0gICAgICAgICAgICAgICAgZGVsdGFYICo9IHNjcm9sbFdoZWVsTXVsdGlwbGllcigpOwot
Ci0gICAgICAgICAgICAgICAgbV9jbGllbnQtPmltbWVkaWF0ZVNjcm9sbEJ5V2l0aG91dENvbnRl
bnRFZGdlQ29uc3RyYWludHMoRmxvYXRTaXplKGRlbHRhWCwgMCkpOwotICAgICAgICAgICAgICAg
IGRlbHRhWCA9IDA7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGlmICghbV9jbGllbnQt
PmFsbG93c1ZlcnRpY2FsU3RyZXRjaGluZyh3aGVlbEV2ZW50KSkgewotICAgICAgICAgICAgICAg
IGRlbHRhWSA9IDA7Ci0gICAgICAgICAgICAgICAgZXZlbnRDb2FsZXNjZWREZWx0YVkgPSAwOwot
ICAgICAgICAgICAgfSBlbHNlIGlmIChkZWx0YVkgJiYgIWlzVmVydGljYWxseVN0cmV0Y2hlZCAm
JiAhbV9jbGllbnQtPnBpbm5lZEluRGlyZWN0aW9uKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKSkgewot
ICAgICAgICAgICAgICAgIGRlbHRhWSAqPSBzY3JvbGxXaGVlbE11bHRpcGxpZXIoKTsKLQotICAg
ICAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVTY3JvbGxCeVdpdGhvdXRDb250ZW50RWRn
ZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZSgwLCBkZWx0YVkpKTsKLSAgICAgICAgICAgICAgICBkZWx0
YVkgPSAwOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBJbnRTaXplIHN0cmV0Y2hBbW91
bnQgPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotCi0gICAgICAgICAgICBpZiAobV9tb21l
bnR1bVNjcm9sbEluUHJvZ3Jlc3MpIHsKLSAgICAgICAgICAgICAgICBpZiAoKG1fY2xpZW50LT5w
aW5uZWRJbkRpcmVjdGlvbihGbG9hdFNpemUoZXZlbnRDb2FsZXNjZWREZWx0YVgsIGV2ZW50Q29h
bGVzY2VkRGVsdGFZKSkgfHwgKGZhYnNmKGV2ZW50Q29hbGVzY2VkRGVsdGFYKSArIGZhYnNmKGV2
ZW50Q29hbGVzY2VkRGVsdGFZKSA8PSAwKSkgJiYgbV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3Rh
bXApIHsKLSAgICAgICAgICAgICAgICAgICAgbV9pZ25vcmVNb21lbnR1bVNjcm9sbHMgPSB0cnVl
OwotICAgICAgICAgICAgICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNl
OwotICAgICAgICAgICAgICAgICAgICBzbmFwUnViYmVyQmFuZCgpOwotICAgICAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgbV9zdHJldGNoU2Nyb2xsRm9yY2Uuc2V0
V2lkdGgobV9zdHJldGNoU2Nyb2xsRm9yY2Uud2lkdGgoKSArIGRlbHRhWCk7Ci0gICAgICAgICAg
ICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRIZWlnaHQobV9zdHJldGNoU2Nyb2xsRm9yY2UuaGVp
Z2h0KCkgKyBkZWx0YVkpOwotCi0gICAgICAgICAgICBGbG9hdFNpemUgZGFtcGVkRGVsdGEoY2Vp
bGYoZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZvcmNlLndpZHRo
KCkpKSwgY2VpbGYoZWxhc3RpY0RlbHRhRm9yUmVib3VuZERlbHRhKG1fc3RyZXRjaFNjcm9sbEZv
cmNlLmhlaWdodCgpKSkpOwotCi0gICAgICAgICAgICBtX2NsaWVudC0+aW1tZWRpYXRlU2Nyb2xs
QnlXaXRob3V0Q29udGVudEVkZ2VDb25zdHJhaW50cyhkYW1wZWREZWx0YSAtIHN0cmV0Y2hBbW91
bnQpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKG1fbW9tZW50dW1TY3JvbGxJblByb2dy
ZXNzICYmIG1vbWVudHVtUGhhc2UgPT0gUGxhdGZvcm1XaGVlbEV2ZW50UGhhc2VFbmRlZCkgewot
ICAgICAgICBtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyA9IGZhbHNlOwotICAgICAgICBtX2ln
bm9yZU1vbWVudHVtU2Nyb2xscyA9IGZhbHNlOwotICAgICAgICBtX2xhc3RNb21lbnR1bVNjcm9s
bFRpbWVzdGFtcCA9IDA7Ci0gICAgfQotCi0gICAgcmV0dXJuIHRydWU7Ci19Ci0KLXN0YXRpYyBp
bmxpbmUgZmxvYXQgcm91bmRUb3dhcmRaZXJvKGZsb2F0IG51bSkKLXsKLSAgICByZXR1cm4gbnVt
ID4gMCA/IGNlaWxmKG51bSAtIDAuNWYpIDogZmxvb3JmKG51bSArIDAuNWYpOwotfQotCi1zdGF0
aWMgaW5saW5lIGZsb2F0IHJvdW5kVG9EZXZpY2VQaXhlbFRvd2FyZFplcm8oZmxvYXQgbnVtKQot
ewotICAgIGZsb2F0IHJvdW5kZWROdW0gPSByb3VuZGYobnVtKTsKLSAgICBpZiAoZmFicyhudW0g
LSByb3VuZGVkTnVtKSA8IDAuMTI1KQotICAgICAgICBudW0gPSByb3VuZGVkTnVtOwotCi0gICAg
cmV0dXJuIHJvdW5kVG93YXJkWmVybyhudW0pOwotfQotCi12b2lkIFNjcm9sbENvbnRyb2xsZXI6
OnNuYXBSdWJiZXJCYW5kVGltZXJGaXJlZCgpCi17Ci0gICAgaWYgKCFtX21vbWVudHVtU2Nyb2xs
SW5Qcm9ncmVzcyB8fCBtX2lnbm9yZU1vbWVudHVtU2Nyb2xscykgewotICAgICAgICBDRlRpbWVJ
bnRlcnZhbCB0aW1lRGVsdGEgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0
ZV0gLSBtX3N0YXJ0VGltZTsKLQotICAgICAgICBpZiAobV9zdGFydFN0cmV0Y2ggPT0gRmxvYXRT
aXplKCkpIHsKLSAgICAgICAgICAgIG1fc3RhcnRTdHJldGNoID0gbV9jbGllbnQtPnN0cmV0Y2hB
bW91bnQoKTsKLSAgICAgICAgICAgIGlmIChtX3N0YXJ0U3RyZXRjaCA9PSBGbG9hdFNpemUoKSkg
ewotICAgICAgICAgICAgICAgIHN0b3BTbmFwUnViYmVyYmFuZFRpbWVyKCk7Ci0KLSAgICAgICAg
ICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAg
ICAgIG1fc3RhcnRUaW1lID0gMDsKLSAgICAgICAgICAgICAgICBtX3N0YXJ0U3RyZXRjaCA9IEZs
b2F0U2l6ZSgpOwotICAgICAgICAgICAgICAgIG1fb3JpZ09yaWdpbiA9IEZsb2F0UG9pbnQoKTsK
LSAgICAgICAgICAgICAgICBtX29yaWdWZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAg
ICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgbV9vcmlnT3JpZ2lu
ID0gbV9jbGllbnQtPmFic29sdXRlU2Nyb2xsUG9zaXRpb24oKSAtIG1fc3RhcnRTdHJldGNoOwot
ICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBtX21vbWVudHVtVmVsb2NpdHk7Ci0KLSAgICAg
ICAgICAgIC8vIEp1c3QgbGlrZSBub3JtYWwgc2Nyb2xsaW5nLCBwcmVmZXIgdmVydGljYWwgcnVi
YmVyYmFuZGluZwotICAgICAgICAgICAgaWYgKGZhYnNmKG1fb3JpZ1ZlbG9jaXR5LmhlaWdodCgp
KSA+PSBmYWJzZihtX29yaWdWZWxvY2l0eS53aWR0aCgpKSkKLSAgICAgICAgICAgICAgICBtX29y
aWdWZWxvY2l0eS5zZXRXaWR0aCgwKTsKLQotICAgICAgICAgICAgLy8gRG9uJ3QgcnViYmVyLWJh
bmQgaG9yaXpvbnRhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHNjcm9sbCBob3Jpem9udGFs
bHkKLSAgICAgICAgICAgIGlmICghbV9jbGllbnQtPmNhblNjcm9sbEhvcml6b250YWxseSgpKQot
ICAgICAgICAgICAgICAgIG1fb3JpZ1ZlbG9jaXR5LnNldFdpZHRoKDApOwotCi0gICAgICAgICAg
ICAvLyBEb24ndCBydWJiZXItYmFuZCB2ZXJ0aWNhbGx5IGlmIGl0J3Mgbm90IHBvc3NpYmxlIHRv
IHNjcm9sbCB2ZXJ0aWNhbGx5Ci0gICAgICAgICAgICBpZiAoIW1fY2xpZW50LT5jYW5TY3JvbGxW
ZXJ0aWNhbGx5KCkpCi0gICAgICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkuc2V0SGVpZ2h0KDAp
OwotICAgICAgICB9Ci0KLSAgICAgICAgRmxvYXRQb2ludCBkZWx0YShyb3VuZFRvRGV2aWNlUGl4
ZWxUb3dhcmRaZXJvKGVsYXN0aWNEZWx0YUZvclRpbWVEZWx0YShtX3N0YXJ0U3RyZXRjaC53aWR0
aCgpLCAtbV9vcmlnVmVsb2NpdHkud2lkdGgoKSwgKGZsb2F0KXRpbWVEZWx0YSkpLAotICAgICAg
ICAgICAgcm91bmRUb0RldmljZVBpeGVsVG93YXJkWmVybyhlbGFzdGljRGVsdGFGb3JUaW1lRGVs
dGEobV9zdGFydFN0cmV0Y2guaGVpZ2h0KCksIC1tX29yaWdWZWxvY2l0eS5oZWlnaHQoKSwgKGZs
b2F0KXRpbWVEZWx0YSkpKTsKLQotICAgICAgICBpZiAoZmFicyhkZWx0YS54KCkpID49IDEgfHwg
ZmFicyhkZWx0YS55KCkpID49IDEpIHsKLSAgICAgICAgICAgIG1fY2xpZW50LT5pbW1lZGlhdGVT
Y3JvbGxCeVdpdGhvdXRDb250ZW50RWRnZUNvbnN0cmFpbnRzKEZsb2F0U2l6ZShkZWx0YS54KCks
IGRlbHRhLnkoKSkgLSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpKTsKLQotICAgICAgICAgICAg
RmxvYXRTaXplIG5ld1N0cmV0Y2ggPSBtX2NsaWVudC0+c3RyZXRjaEFtb3VudCgpOwotCi0gICAg
ICAgICAgICBtX3N0cmV0Y2hTY3JvbGxGb3JjZS5zZXRXaWR0aChyZWJvdW5kRGVsdGFGb3JFbGFz
dGljRGVsdGEobmV3U3RyZXRjaC53aWR0aCgpKSk7Ci0gICAgICAgICAgICBtX3N0cmV0Y2hTY3Jv
bGxGb3JjZS5zZXRIZWlnaHQocmVib3VuZERlbHRhRm9yRWxhc3RpY0RlbHRhKG5ld1N0cmV0Y2gu
aGVpZ2h0KCkpKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIG1fY2xpZW50LT5hZGp1
c3RTY3JvbGxQb3NpdGlvblRvQm91bmRzSWZOZWNlc3NhcnkoKTsKLQotICAgICAgICAgICAgc3Rv
cFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLSAgICAgICAgICAgIG1fc3RyZXRjaFNjcm9sbEZvcmNl
ID0gRmxvYXRTaXplKCk7Ci0gICAgICAgICAgICBtX3N0YXJ0VGltZSA9IDA7Ci0gICAgICAgICAg
ICBtX3N0YXJ0U3RyZXRjaCA9IEZsb2F0U2l6ZSgpOwotICAgICAgICAgICAgbV9vcmlnT3JpZ2lu
ID0gRmxvYXRQb2ludCgpOwotICAgICAgICAgICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUo
KTsKLSAgICAgICAgfQotICAgIH0gZWxzZSB7Ci0gICAgICAgIG1fc3RhcnRUaW1lID0gW05TRGF0
ZSB0aW1lSW50ZXJ2YWxTaW5jZVJlZmVyZW5jZURhdGVdOwotICAgICAgICBtX3N0YXJ0U3RyZXRj
aCA9IEZsb2F0U2l6ZSgpOwotICAgIH0KLX0KLQotYm9vbCBTY3JvbGxDb250cm9sbGVyOjppc1J1
YmJlckJhbmRJblByb2dyZXNzKCkgY29uc3QKLXsKLSAgICBpZiAoIW1faW5TY3JvbGxHZXN0dXJl
ICYmICFtX21vbWVudHVtU2Nyb2xsSW5Qcm9ncmVzcyAmJiAhbV9zbmFwUnViYmVyYmFuZFRpbWVy
SXNBY3RpdmUpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHJldHVybiAhbV9jbGllbnQt
PnN0cmV0Y2hBbW91bnQoKS5pc1plcm8oKTsKLX0KLQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpz
dG9wU25hcFJ1YmJlcmJhbmRUaW1lcigpCi17Ci0gICAgbV9jbGllbnQtPnN0b3BTbmFwUnViYmVy
YmFuZFRpbWVyKCk7Ci0gICAgbV9zbmFwUnViYmVyYmFuZFRpbWVySXNBY3RpdmUgPSBmYWxzZTsK
LX0KLQotdm9pZCBTY3JvbGxDb250cm9sbGVyOjpzbmFwUnViYmVyQmFuZCgpCi17Ci0gICAgQ0ZU
aW1lSW50ZXJ2YWwgdGltZURlbHRhID0gc3lzdGVtVXB0aW1lKCkgLSBtX2xhc3RNb21lbnR1bVNj
cm9sbFRpbWVzdGFtcDsKLSAgICBpZiAobV9sYXN0TW9tZW50dW1TY3JvbGxUaW1lc3RhbXAgJiYg
dGltZURlbHRhID49IHNjcm9sbFZlbG9jaXR5WmVyb2luZ1RpbWVvdXQpCi0gICAgICAgIG1fbW9t
ZW50dW1WZWxvY2l0eSA9IEZsb2F0U2l6ZSgpOwotCi0gICAgbV9pblNjcm9sbEdlc3R1cmUgPSBm
YWxzZTsKLQotICAgIGlmIChtX3NuYXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSkKLSAgICAgICAg
cmV0dXJuOwotCi0gICAgbV9zdGFydFRpbWUgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVm
ZXJlbmNlRGF0ZV07Ci0gICAgbV9zdGFydFN0cmV0Y2ggPSBGbG9hdFNpemUoKTsKLSAgICBtX29y
aWdPcmlnaW4gPSBGbG9hdFBvaW50KCk7Ci0gICAgbV9vcmlnVmVsb2NpdHkgPSBGbG9hdFNpemUo
KTsKLQotICAgIG1fY2xpZW50LT5zdGFydFNuYXBSdWJiZXJiYW5kVGltZXIoKTsKLSAgICBtX3Nu
YXBSdWJiZXJiYW5kVGltZXJJc0FjdGl2ZSA9IHRydWU7Ci19Ci0KLWJvb2wgU2Nyb2xsQ29udHJv
bGxlcjo6c2hvdWxkUnViYmVyQmFuZEluSG9yaXpvbnRhbERpcmVjdGlvbihjb25zdCBQbGF0Zm9y
bVdoZWVsRXZlbnQmIHdoZWVsRXZlbnQpCi17Ci0gICAgaWYgKHdoZWVsRXZlbnQuZGVsdGFYKCkg
PiAwKQotICAgICAgICByZXR1cm4gbV9jbGllbnQtPnNob3VsZFJ1YmJlckJhbmRJbkRpcmVjdGlv
bihTY3JvbGxMZWZ0KTsKLSAgICBpZiAod2hlZWxFdmVudC5kZWx0YVgoKSA8IDApCi0gICAgICAg
IHJldHVybiBtX2NsaWVudC0+c2hvdWxkUnViYmVyQmFuZEluRGlyZWN0aW9uKFNjcm9sbFJpZ2h0
KTsKLQotICAgIHJldHVybiB0cnVlOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoUlVCQkVSX0JBTkRJTkcpCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxODA5NjUp
CisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNyBA
QAorMjAxNS0wMy0wMyAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKworICAg
ICAgICBNb3ZlIHNjcm9sbCBhbmltYXRpbmcgZnVuY3Rpb25zIGZyb20gU2Nyb2xsQW5pbWF0b3Ig
dG8gU2Nyb2xsQ29udHJvbGxlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQyMTAyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yMDAwNzE2MT4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYSBuZXcg
dGVzdCB0aGF0IGNvbmZpcm1zIHRoYXQgcnViYmVyYmFuZCBzbmFwIGFuaW1hdGlvbnMgd29yayBw
cm9wZXJseSB3aGVuIGNvbWJpbmVkCisgICAgICAgIHdpdGggdGV4dCB6b29taW5nLgorCisgICAg
ICAgICogcGxhdGZvcm0vbWFjLXdrMi90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9s
bC1tYWluZnJhbWUtem9vbS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3Jt
L21hYy13azIvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtbWFpbmZyYW1lLXpv
b20uaHRtbDogQWRkZWQuCisKIDIwMTUtMDMtMDMgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUu
Y29tPgogCiAgICAgICAgIENvbnRyb2xzIHBhbmVsIHNob3VsZCBoYXZlIHN5c3RlbSBibHVycnkg
YmFja2dyb3VuZApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi90aWxlZC1kcmF3
aW5nL3Njcm9sbGluZy9mYXN0LXNjcm9sbC1tYWluZnJhbWUtem9vbS1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi90aWxlZC1kcmF3aW5nL3Nj
cm9sbGluZy9mYXN0LXNjcm9sbC1tYWluZnJhbWUtem9vbS1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3RpbGVkLWRyYXdpbmcvc2Nyb2xs
aW5nL2Zhc3Qtc2Nyb2xsLW1haW5mcmFtZS16b29tLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDY3IEBACitQdXQgbW91c2UgaGVyZSBhbmQgZmxpY2sgZG93bndhcmRzCitU
T1AgVE9QIFRPUCBUT1AgVE9QIFRPUCBUT1AgVE9QIFRPUCBUT1AgVE9QIFRPUCBUT1AgVE9QCisK
K1RoaXMgc2hvdWxkIHN0aWxsIGJlIHZpc2libGUgaW5zaWRlIHRoZSBmcmFtZSBhZnRlciB5b3Ug
c2Nyb2xsIGRvd24KKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKwor
CisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCitU
aGlzIHNob3VsZCBOT1QgYmUgdmlzaWJsZSBpbnNpZGUgdGhlIGZyYW1lIGFmdGVyIHlvdSBzY3Jv
bGwgZG93bgorCitFTkQgRU5EIEVORCBFTkQgRU5EIEVORCBFTkQgRU5EIEVORCBFTkQgRU5EIEVO
RCBFTkQKK1Rlc3RzIHRoYXQgc2Nyb2xsIGRpbWVuc2lvbnMgcmV0dXJuIHRvIGNvcnJlY3Qgc2l6
ZSBhZnRlciBydWJiZXIgYmFuZGluZyB3aGlsZSB6b29tZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKK1BBU1MgUGFnZSBwcm9wZXJseSBoYW5kbGVkIHJ1YmJlciBiYW5kaW5nIHN0YXRlLgor
VGhpcyBzaG91bGQgYmUgYXQgdGhlIHZlcnkgYm90dG9tIG9mIHRoZSBwYWdlLgpJbmRleDogTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi90aWxlZC1kcmF3aW5nL3Njcm9sbGluZy9mYXN0LXNj
cm9sbC1tYWluZnJhbWUtem9vbS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRm
b3JtL21hYy13azIvdGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtbWFpbmZyYW1l
LXpvb20uaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIv
dGlsZWQtZHJhd2luZy9zY3JvbGxpbmcvZmFzdC1zY3JvbGwtbWFpbmZyYW1lLXpvb20uaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDE1NiBAQAorPCFET0NUWVBFIGh0bWwgUFVCTElDICIt
Ly9XM0MvL0RURCBIVE1MIDQuMDEvL0VOIj4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8
bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHA6Ly93d3cudzMub3JnL1RSL0RPTS1MZXZlbC0zLUV2
ZW50cy8jZXZlbnRzLVdoZWVsRXZlbnQiPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPjwvc2Ny
aXB0PgorICAgIDwvaGVhZD4KKyAgICAgICAgPHRpdGxlPjwvdGl0bGU+CisgICAgPC9oZWFkPgor
ICAgIDxib2R5PgorICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAg
ICAgICAgICB2YXIgcGFnZVNjcm9sbFBvc2l0aW9uQmVmb3JlOworICAgICAgICAgICAgdmFyIHBh
Z2VTY3JvbGxIZWlnaHRCZWZvcmU7CisgICAgICAgICAgICB2YXIgY29udGludWVDb3VudCA9IDU7
CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNoZWNrRm9yU2Nyb2xsT2Zmc2V0KCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICB2YXIgcGFnZVNjcm9sbFBvc2l0aW9uQWZ0ZXIgPSBkb2N1
bWVudC5ib2R5LnNjcm9sbFRvcDsKKyAgICAgICAgICAgICAgICB2YXIgcGFnZVNjcm9sbEhlaWdo
dEFmdGVyID0gZG9jdW1lbnQuYm9keS5zY3JvbGxIZWlnaHQ7CisKKyAgICAgICAgICAgICAgICBp
ZiAocGFnZVNjcm9sbFBvc2l0aW9uQWZ0ZXIgKyAxMDAgPj0gcGFnZVNjcm9sbFBvc2l0aW9uQmVm
b3JlKQorICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJQYWdlIGRpZCBub3QgcHJvcGVy
bHkgaGFuZGxlIHJ1YmJlciBiYW5kaW5nIHN0YXRlLiIpOworICAgICAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgiUGFnZSBwcm9wZXJseSBoYW5kbGVkIHJ1
YmJlciBiYW5kaW5nIHN0YXRlLiIpOworCisgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3Rp
ZnlEb25lKCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHZhciB6b29tT3V0Q291bnQg
PSAwOworICAgICAgICAgICAgZnVuY3Rpb24gem9vbVBhZ2VPdXQoKQorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIGlmICghem9vbU91dENvdW50KSB7CisgICAgICAgICAgICAgICAgICAg
IHBhZ2VTY3JvbGxQb3NpdGlvbkJlZm9yZSA9IGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wOworICAg
ICAgICAgICAgICAgICAgICBwYWdlU2Nyb2xsSGVpZ2h0QmVmb3JlID0gZG9jdW1lbnQuYm9keS5z
Y3JvbGxIZWlnaHQ7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgZXZlbnRT
ZW5kZXIuem9vbVBhZ2VPdXQoKTsKKyAgICAgICAgICAgICAgICB6b29tT3V0Q291bnQgPSB6b29t
T3V0Q291bnQgKyAxOworICAgICAgICAgICAgICAgIGlmICh6b29tT3V0Q291bnQgPj0gMikKKyAg
ICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChjaGVja0ZvclNjcm9sbE9mZnNldCwgMTAwKTsK
KyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoem9v
bVBhZ2VPdXQsIDEwMCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIHNj
cm9sbERvd24oKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIC8vIFNjcm9sbCB0aGUg
I3NvdXJjZSB1bnRpbCB3ZSByZWFjaCB0aGUgI3RhcmdldC4KKyAgICAgICAgICAgICAgICB2YXIg
c2VsZWN0VGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RhcmdldCcpOworICAgICAg
ICAgICAgICAgIHZhciBzdGFydFBvc1ggPSBNYXRoLnJvdW5kKHNlbGVjdFRhcmdldC5vZmZzZXRM
ZWZ0KSArIDIwOworICAgICAgICAgICAgICAgIHZhciBzdGFydFBvc1kgPSBNYXRoLnJvdW5kKHNl
bGVjdFRhcmdldC5vZmZzZXRUb3ApIC0gNDI7IC8vIFNsaWdodGx5IG1vcmUgdGhhbiBvbmUgd2hl
ZWwgc2Nyb2xsIGF3YXkgZnJvbSB0aGUgSUZyYW1lCisgICAgICAgICAgICAgICAgZXZlbnRTZW5k
ZXIubW91c2VNb3ZlVG8oc3RhcnRQb3NYLCBzdGFydFBvc1kpOyAvLyBNYWtlIHN1cmUgd2UgYXJl
IGp1c3Qgb3V0c2lkZSB0aGUgaUZyYW1lCisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91
c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xLCAnYmVnYW4nLCAnbm9u
ZScsIHRydWUpOworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRo
V2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsK
KyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9t
ZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdub25lJywgdHJ1ZSk7CisgICAgICAgICAg
ICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2Vz
KDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRydWUpOworICAgICAgICAgICAgICAgIGV2ZW50
U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAsICdj
aGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3Vz
ZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdu
b25lJywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdp
dGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRydWUp
OworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRN
b21lbnR1bVBoYXNlcygwLCAtMTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsKKyAgICAgICAg
ICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFz
ZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdub25lJywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZXZl
bnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwg
J2NoYW5nZWQnLCAnbm9uZScsIHRydWUpOworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1v
dXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAsICdjaGFuZ2VkJywg
J25vbmUnLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5
V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdub25lJywgdHJ1
ZSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFu
ZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRydWUpOworICAgICAg
ICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBo
YXNlcygwLCAtMTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBl
dmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEw
LCAnY2hhbmdlZCcsICdub25lJywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIu
bW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQn
LCAnbm9uZScsIHRydWUpOworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xs
QnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0
cnVlKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVs
QW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdub25lJywgdHJ1ZSk7CisgICAg
ICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVt
UGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRydWUpOworICAgICAgICAgICAgICAg
IGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAt
MTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRl
ci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdl
ZCcsICdub25lJywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3Jv
bGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScs
IHRydWUpOworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hl
ZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsKKyAg
ICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50
dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdub25lJywgdHJ1ZSk7CisgICAgICAgICAgICAg
ICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAs
IC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRydWUpOworICAgICAgICAgICAgICAgIGV2ZW50U2Vu
ZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAsICdjaGFu
Z2VkJywgJ25vbmUnLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNj
cm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdub25l
JywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhX
aGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRydWUpOwor
ICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21l
bnR1bVBoYXNlcygwLCAtMTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsKKyAgICAgICAgICAg
ICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMo
MCwgLTEwLCAnY2hhbmdlZCcsICdub25lJywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZXZlbnRT
ZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwgJ2No
YW5nZWQnLCAnbm9uZScsIHRydWUpOworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNl
U2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAsICdjaGFuZ2VkJywgJ25v
bmUnLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0
aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdub25lJywgdHJ1ZSk7
CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1v
bWVudHVtUGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRydWUpOworICAgICAgICAg
ICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNl
cygwLCAtMTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBldmVu
dFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAn
Y2hhbmdlZCcsICdub25lJywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91
c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAn
bm9uZScsIHRydWUpOworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlX
aXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAsICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVl
KTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5tb3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5k
TW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcsICdub25lJywgdHJ1ZSk7CisgICAgICAg
ICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxCeVdpdGhXaGVlbEFuZE1vbWVudHVtUGhh
c2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRydWUpOworICAgICAgICAgICAgICAgIGV2
ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxBbmRNb21lbnR1bVBoYXNlcygwLCAtMTAs
ICdjaGFuZ2VkJywgJ25vbmUnLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBldmVudFNlbmRlci5t
b3VzZVNjcm9sbEJ5V2l0aFdoZWVsQW5kTW9tZW50dW1QaGFzZXMoMCwgLTEwLCAnY2hhbmdlZCcs
ICdub25lJywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VTY3JvbGxC
eVdpdGhXaGVlbEFuZE1vbWVudHVtUGhhc2VzKDAsIC0xMCwgJ2NoYW5nZWQnLCAnbm9uZScsIHRy
dWUpOworICAgICAgICAgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlU2Nyb2xsQnlXaXRoV2hlZWxB
bmRNb21lbnR1bVBoYXNlcygwLCAwLCAnZW5kZWQnLCAnbm9uZScsIHRydWUpOworICAgICAgICAg
ICAgICAgIAorICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoem9vbVBhZ2VPdXQsIDcwMCk7Cisg
ICAgICAgICAgICB9CisKKworICAgICAgICAgICAgdmFyIHpvb21JbkNvdW50ID0gMDsKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIHpvb21QYWdlSW4oKQorICAgICAgICAgICAgeworICAgICAgICAgICAg
ICAgIGV2ZW50U2VuZGVyLnpvb21QYWdlSW4oKTsKKyAgICAgICAgICAgICAgICB6b29tSW5Db3Vu
dCA9IHpvb21JbkNvdW50ICsgMTsKKyAgICAgICAgICAgICAgICBpZiAoem9vbUluQ291bnQgPj0g
MikKKyAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChzY3JvbGxEb3duLCAxMDApOworICAg
ICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCh6b29tUGFn
ZUluLCAxMDApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBzZXR1cFRv
cExldmVsKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LmV2ZW50
U2VuZGVyKSB7CisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
ICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKworICAgICAg
ICAgICAgICAgICAgICBzZXRUaW1lb3V0KHpvb21QYWdlSW4sIDApOworICAgICAgICAgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIHZhciBtZXNzYWdlTG9jYXRpb24gPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgncGFyZW50Jyk7CisgICAgICAgICAgICAgICAgICAgIHZhciBt
ZXNzYWdlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgICAgICAgICAgICAgICAg
ICAgIG1lc3NhZ2UuaW5uZXJIVE1MID0gIjxwPlRoaXMgdGVzdCBpcyBiZXR0ZXIgcnVuIHVuZGVy
IER1bXBSZW5kZXJUcmVlLiBUbyBtYW51YWxseSB0ZXN0IGl0LCBwbGFjZSB0aGUgbW91c2UgcG9p
bnRlcjxici8+IgorICAgICAgICAgICAgICAgICAgICAgICAgKyAiYXQgdGhlIHRvcCBvZiB0aGUg
cGFnZSwgcGVyZm9ybSB0d28gdGV4dCB6b29tcywgc2Nyb2xsIHRvIHRoZSBib3R0b20gb2YgdGhl
IHBhZ2UsIHRoZW4gem9vbSBiYWNrIG91dC48YnIvPiIKKyAgICAgICAgICAgICAgICAgICAgKyAi
VGhlIGJvdHRvbSBvZiB0aGUgdGVzdCBwYWdlIHNob3VsZCBub3QgYmUgb2Zmc2V0IGZyb20gdGhl
IGJvdHRvbSBvZiB0aGUgd2ViIHZpZXcuPFwvcD4iOworICAgICAgICAgICAgICAgICAgICBtZXNz
YWdlTG9jYXRpb24uYXBwZW5kQ2hpbGQobWVzc2FnZSk7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAgPGRpdiBpZD0icGFyZW50IiBz
dHlsZT0iaGVpZ2h0OiAyMDAwcHg7Ij4KKyAgICAgICAgICAgIDxkaXYgaWQ9InNvdXJjZSIgc3R5
bGU9ImhlaWdodDogMTAwcHgiPgorICAgICAgICAgICAgICAgIFB1dCBtb3VzZSBoZXJlIGFuZCBm
bGljayBkb3dud2FyZHMKKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICAgICAgPGRpdiBpZD0i
dGFyZ2V0Ij4KKyAgICAgICAgICAgICAgICBUT1AgVE9QIFRPUCBUT1AgVE9QIFRPUCBUT1AgVE9Q
IFRPUCBUT1AgVE9QIFRPUCBUT1AgVE9QPGJyPgorICAgICAgICAgICAgICAgIDxicj4KKyAgICAg
ICAgICAgICAgICBUaGlzIHNob3VsZCBzdGlsbCBiZSB2aXNpYmxlIGluc2lkZSB0aGUgZnJhbWUg
YWZ0ZXIgeW91IHNjcm9sbCBkb3duPGJyPgorICAgICAgICAgICAgICAgIDxicj48YnI+PGJyPjxi
cj48YnI+PGJyPjxicj48YnI+PGJyPjxicj48YnI+PGJyPjxicj48YnI+PGJyPjxicj4KKyAgICAg
ICAgICAgICAgICA8YnI+PGJyPjxicj48YnI+PGJyPjxicj48YnI+PGJyPjxicj48YnI+PGJyPjxi
cj48YnI+PGJyPjxicj48YnI+CisgICAgICAgICAgICAgICAgPGJyPjxicj48YnI+PGJyPjxicj48
YnI+PGJyPjxicj48YnI+PGJyPjxicj48YnI+PGJyPjxicj48YnI+PGJyPgorICAgICAgICAgICAg
ICAgIDxicj48YnI+CisgICAgICAgICAgICAgICAgVGhpcyBzaG91bGQgTk9UIGJlIHZpc2libGUg
aW5zaWRlIHRoZSBmcmFtZSBhZnRlciB5b3Ugc2Nyb2xsIGRvd248YnI+CisgICAgICAgICAgICAg
ICAgPGJyPgorICAgICAgICAgICAgICAgIEVORCBFTkQgRU5EIEVORCBFTkQgRU5EIEVORCBFTkQg
RU5EIEVORCBFTkQgRU5EIEVORAorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2Pgor
ICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBzZXR1
cFRvcExldmVsKCk7CisgICAgICAgIDwvc2NyaXB0PgorICAgICAgICA8ZGl2IGlkPSJjb25zb2xl
Ij48L2Rpdj48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CisgICAgICAgICAgICBkZXNj
cmlwdGlvbigiVGVzdHMgdGhhdCBzY3JvbGwgZGltZW5zaW9ucyByZXR1cm4gdG8gY29ycmVjdCBz
aXplIGFmdGVyIHJ1YmJlciBiYW5kaW5nIHdoaWxlIHpvb21lZC4iKTsKKyAgICAgICAgPC9zY3Jp
cHQ+CisgICAgICAgIDxkaXYgaWQ9ImJvdHRvbSI+CitUaGlzIHNob3VsZCBiZSBhdCB0aGUgdmVy
eSBib3R0b20gb2YgdGhlIHBhZ2UuCisgICAgICAgIDwvZGl2PgorICAgICAgICA8c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyIgdHlwZT0idGV4dC9qYXZh
c2NyaXB0Ij48L3NjcmlwdD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="272730"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>