<?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>124981</bug_id>
          
          <creation_ts>2013-11-28 10:24:40 -0800</creation_ts>
          <short_desc>Nix Upstream: Updating WebCore files</short_desc>
          <delta_ts>2013-12-04 10:00:07 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>124950</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Thiago de Barros Lacerda">thiago.lacerda</reporter>
          <assigned_to name="Thiago de Barros Lacerda">thiago.lacerda</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kling</cc>
    
    <cc>ossy</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>954778</commentid>
    <comment_count>0</comment_count>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-11-28 10:24:40 -0800</bug_when>
    <thetext>Just to sync our private repo files and the trunk, as part of the upstream process</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954783</commentid>
    <comment_count>1</comment_count>
      <attachid>218013</attachid>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-11-28 10:32:33 -0800</bug_when>
    <thetext>Created attachment 218013
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954903</commentid>
    <comment_count>2</comment_count>
      <attachid>218013</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2013-11-29 01:19:56 -0800</bug_when>
    <thetext>Comment on attachment 218013
Patch

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

The patch looks good to me in general, except some parts which add 
maybe intrusive Nix specific/only changes to platform independent 
code. I suggest extracting these parts from this patch and uploading 
for review as smaller patches:

- WorkerScriptController changes - it adds PLATFORM(NIX) ifdefs, but there weren&apos;t
  any platform ifdefs in these files before. I&apos;m not sure if it is a good idea.
- loader/HistoryController.cpp change - Can&apos;t we avoid platform specific behaviour here?
- adding Nix only handleSingleTap() to EventHandler
- texmap changes

&gt; Source/WebCore/css/mediaControlsNix.css:4
&gt; - * Copyright (C) 2009, 2010, 2011 Apple Inc.  All rights reserved.
&gt; - * Copyright (C) 2011 Samsung Electronics
&gt; - * Copyright (C) 2012-2013 Nokia Corporation and/or its subsidiary(-ies).
&gt; + * Copyright (C) 2009 Apple Inc.  All rights reserved.
&gt; + * Copyright (C) 2009 Google Inc.
&gt; + * Copyright (C) 2012, 2013 Nokia Corporation and/or its subsidiary(-ies).

Why did you change these copyright entries? Did you replaced the whole file?

&gt; Source/WebCore/page/EventHandler.cpp:2585
&gt; +    PlatformMouseEvent fakeMouseMove(targetPoint, point.screenPos(), NoButton, PlatformEvent::MouseMoved, /* clickCount */ 0,
&gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);

Do we really need this extra parameter notation?

&gt; Source/WebCore/page/EventHandler.cpp:2589
&gt; +    PlatformMouseEvent fakeMouseDown(targetPoint, point.screenPos(), LeftButton, PlatformEvent::MousePressed, 1 /* tapCount */,
&gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);

ditto

&gt; Source/WebCore/page/EventHandler.cpp:2593
&gt; +    PlatformMouseEvent fakeMouseUp(targetPoint, point.screenPos(), LeftButton, PlatformEvent::MouseReleased, 1 /* tapCount */,
&gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);

ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954999</commentid>
    <comment_count>3</comment_count>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-11-29 09:53:49 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 218013 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=218013&amp;action=review
&gt; 
&gt; The patch looks good to me in general, except some parts which add 
&gt; maybe intrusive Nix specific/only changes to platform independent 
&gt; code. I suggest extracting these parts from this patch and uploading 
&gt; for review as smaller patches:
&gt; 
&gt; - WorkerScriptController changes - it adds PLATFORM(NIX) ifdefs, but there weren&apos;t
&gt;   any platform ifdefs in these files before. I&apos;m not sure if it is a good idea.

This is a WIP in https://bugs.webkit.org/show_bug.cgi?id=117523, which we need in Nix. I will remove it now and wait for the patch to be approved.

&gt; - loader/HistoryController.cpp change - Can&apos;t we avoid platform specific behaviour here?

This is also a reported bug happening with fixed layout only (https://bugs.webkit.org/show_bug.cgi?id=119063), which I couldn&apos;t provide a LayoutTest for that. But we also need it in nix.

&gt; - adding Nix only handleSingleTap() to EventHandler

After the removal of gesture events, this was the only way we found to get touch adjustment working. We are the only port that supports touch adjustment (there was Qt too).

&gt; - texmap changes

This is related to ACCELERATED_OVERFLOW_SCROLLING, I will put in another patch

&gt; 
&gt; &gt; Source/WebCore/css/mediaControlsNix.css:4
&gt; &gt; - * Copyright (C) 2009, 2010, 2011 Apple Inc.  All rights reserved.
&gt; &gt; - * Copyright (C) 2011 Samsung Electronics
&gt; &gt; - * Copyright (C) 2012-2013 Nokia Corporation and/or its subsidiary(-ies).
&gt; &gt; + * Copyright (C) 2009 Apple Inc.  All rights reserved.
&gt; &gt; + * Copyright (C) 2009 Google Inc.
&gt; &gt; + * Copyright (C) 2012, 2013 Nokia Corporation and/or its subsidiary(-ies).
&gt; 
&gt; Why did you change these copyright entries? Did you replaced the whole file?

Yes, this file was copied from other and replaced it entirely.

&gt; 
&gt; &gt; Source/WebCore/page/EventHandler.cpp:2585
&gt; &gt; +    PlatformMouseEvent fakeMouseMove(targetPoint, point.screenPos(), NoButton, PlatformEvent::MouseMoved, /* clickCount */ 0,
&gt; &gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);
&gt; 
&gt; Do we really need this extra parameter notation?
&gt; 
&gt; &gt; Source/WebCore/page/EventHandler.cpp:2589
&gt; &gt; +    PlatformMouseEvent fakeMouseDown(targetPoint, point.screenPos(), LeftButton, PlatformEvent::MousePressed, 1 /* tapCount */,
&gt; &gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);
&gt; 
&gt; ditto
&gt; 
&gt; &gt; Source/WebCore/page/EventHandler.cpp:2593
&gt; &gt; +    PlatformMouseEvent fakeMouseUp(targetPoint, point.screenPos(), LeftButton, PlatformEvent::MouseReleased, 1 /* tapCount */,
&gt; &gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);
&gt; 
&gt; ditto

Those are only to improve code readability, instead of having a lot of &quot;false&quot; arguments with no meaning to whom is reading the code. Do you think we should remove them?

Thanks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>955361</commentid>
    <comment_count>4</comment_count>
      <attachid>218167</attachid>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-02 06:18:11 -0800</bug_when>
    <thetext>Created attachment 218167
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>955577</commentid>
    <comment_count>5</comment_count>
      <attachid>218167</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-12-02 14:20:19 -0800</bug_when>
    <thetext>Comment on attachment 218167
Patch

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

Most of it is great. Let&apos;s move the bug fix and new features in common code separate.

&gt; Source/WebCore/loader/HistoryController.cpp:156
&gt;  
&gt; +        double currentScaleFactor = m_currentItem-&gt;pageScaleFactor();
&gt; +        IntPoint currentScrollPoint = m_currentItem-&gt;scrollPoint();
&gt; +#if PLATFORM(NIX)
&gt; +        double previousScaleFactor = m_previousItem ? m_previousItem-&gt;pageScaleFactor() : currentScaleFactor;
&gt; +        IntPoint previousScrollPoint = m_previousItem ? m_previousItem-&gt;scrollPoint() : currentScrollPoint;
&gt; +
&gt; +        if (previousScaleFactor != currentScaleFactor || previousScrollPoint != currentScrollPoint) {
&gt; +#else
&gt;          if (!view-&gt;wasScrolledByUser()) {
&gt; -            if (page &amp;&amp; m_frame.isMainFrame() &amp;&amp; m_currentItem-&gt;pageScaleFactor())
&gt; -                page-&gt;setPageScaleFactor(m_currentItem-&gt;pageScaleFactor(), m_currentItem-&gt;scrollPoint());
&gt; +#endif // PLATFORM(NIX)
&gt; +            if (page &amp;&amp; m_frame.isMainFrame() &amp;&amp; currentScaleFactor)
&gt; +                page-&gt;setPageScaleFactor(currentScaleFactor, currentScrollPoint);
&gt;              else
&gt; -                view-&gt;setScrollPosition(m_currentItem-&gt;scrollPoint());
&gt; +                view-&gt;setScrollPosition(currentScrollPoint);
&gt;          }

Let&apos;s do this in a separate patch with tests.

&gt; Source/WebCore/page/EventHandler.cpp:2597
&gt; +#if PLATFORM(NIX)
&gt; +void EventHandler::handleSingleTap(double timestamp, const PlatformTouchPoint&amp; point)
&gt; +{
&gt; +    IntPoint targetPoint;
&gt; +#if ENABLE(TOUCH_ADJUSTMENT)
&gt; +    bool positionAdjusted = false;
&gt; +    if (m_frame.settings().touchAdjustmentEnabled()) {
&gt; +        Node* targetNode = 0;
&gt; +        positionAdjusted = bestClickableNodeForTouchPoint(point.pos(), IntSize(point.radiusX(), point.radiusY()), targetPoint, targetNode);
&gt; +    }
&gt; +    if (!positionAdjusted)
&gt; +        targetPoint = point.pos();
&gt; +#else
&gt; +    targetPoint = point.pos();
&gt; +#endif
&gt; +
&gt; +    PlatformMouseEvent fakeMouseMove(targetPoint, point.screenPos(), NoButton, PlatformEvent::MouseMoved, /* clickCount */ 0,
&gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);
&gt; +    mouseMoved(fakeMouseMove);
&gt; +
&gt; +    PlatformMouseEvent fakeMouseDown(targetPoint, point.screenPos(), LeftButton, PlatformEvent::MousePressed, 1 /* tapCount */,
&gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);
&gt; +    handleMousePressEvent(fakeMouseDown);
&gt; +
&gt; +    PlatformMouseEvent fakeMouseUp(targetPoint, point.screenPos(), LeftButton, PlatformEvent::MouseReleased, 1 /* tapCount */,
&gt; +    false /* shift */, false /* ctrl */, false /* alt */, false /* meta */, timestamp);
&gt; +    handleMouseReleaseEvent(fakeMouseUp);
&gt; +}
&gt; +#endif // PLATFORM(NIX)
&gt; +

Let&apos;s not do this here. Any code like this should be unified with the iOS code that was upstreamed recently.

&gt; Source/WebCore/page/EventHandler.h:75
&gt; +#if PLATFORM(NIX)
&gt; +class PlatformTouchPoint;
&gt; +#endif

Please remove this.

&gt; Source/WebCore/page/EventHandler.h:183
&gt; +#if PLATFORM(NIX)
&gt; +    void handleSingleTap(double timestamp, const PlatformTouchPoint&amp;);
&gt; +#endif

Please remove this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956082</commentid>
    <comment_count>6</comment_count>
      <attachid>218336</attachid>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-03 14:00:28 -0800</bug_when>
    <thetext>Created attachment 218336
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956083</commentid>
    <comment_count>7</comment_count>
      <attachid>218336</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-12-03 14:04:27 -0800</bug_when>
    <thetext>Comment on attachment 218336
Patch

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

&gt; Source/WebCore/platform/audio/nix/AudioBusNix.cpp:70
&gt; -    size_t bytesRead = fread(&amp;fileContents[0], fileContents.size(), 1, file);
&gt; +    size_t bytesRead = fread(&amp;fileContents[0], 1, fileContents.size(), file);

Silly fread() :)

&gt; Source/WebCore/platform/nix/RenderThemeNix.cpp:44
&gt; +#include &quot;UserAgentStyleSheets.h&quot;

You should put this just after PlatformContextCairo.h.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956085</commentid>
    <comment_count>8</comment_count>
      <attachid>218337</attachid>
    <who name="Thiago de Barros Lacerda">thiago.lacerda</who>
    <bug_when>2013-12-03 14:11:54 -0800</bug_when>
    <thetext>Created attachment 218337
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956137</commentid>
    <comment_count>9</comment_count>
      <attachid>218337</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-12-03 14:47:32 -0800</bug_when>
    <thetext>Comment on attachment 218337
Patch for landing

Clearing flags on attachment: 218337

Committed r160045: &lt;http://trac.webkit.org/changeset/160045&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218013</attachid>
            <date>2013-11-28 10:32:33 -0800</date>
            <delta_ts>2013-12-02 06:18:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-124981-20131128153231.patch</filename>
            <type>text/plain</type>
            <size>65057</size>
            <attacher name="Thiago de Barros Lacerda">thiago.lacerda</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU5ODQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWNlZWMwMGZjNDY1NzQ5
YmIzYjZjMWZjZTY0NGMyYmM1ZDI0ODgyMi4uOTljZDU3OWQxMjMxYzYzYjk2OWVlODJkZGZjZjk3
MzIwNWQwNWRkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyOSBAQAorMjAxMy0xMS0yOCAgVGhp
YWdvIGRlIEJhcnJvcyBMYWNlcmRhICA8dGhpYWdvLmxhY2VyZGFAb3BlbmJvc3NhLm9yZz4KKwor
ICAgICAgICBOaXggVXBzdHJlYW06IFVwZGF0aW5nIFdlYkNvcmUgZmlsZXMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDk4MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEp1c3QgdG8gc3luYyBvdXIgZ2l0
aHViIHJlcG8gZmlsZXMgYW5kIHRoZSB0cnVuaywgYXMgcGFydCBvZiB0aGUgdXBzdHJlYW0gcHJv
Y2VzcworCisgICAgICAgIE5vIG5ldyB0ZXN0cyBuZWVkZWQuCisKKyAgICAgICAgKiBQbGF0Zm9y
bU5peC5jbWFrZToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9Xb3JrZXJTY3JpcHRDb250cm9sbGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xsZXI6On5Xb3JrZXJT
Y3JpcHRDb250cm9sbGVyKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclNjcmlwdENvbnRyb2xs
ZXI6OmluaXRTY3JpcHQpOgorICAgICAgICAoV2ViQ29yZTo6V29ya2VyU2NyaXB0Q29udHJvbGxl
cjo6c2V0SW5pdFNjcmlwdENhbGxiYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OldvcmtlclNjcmlw
dENvbnRyb2xsZXI6OmluaXRTY3JpcHRDYWxsYmFjayk6CisgICAgICAgIChXZWJDb3JlOjpXb3Jr
ZXJTY3JpcHRDb250cm9sbGVyOjpzZXRUZXJtaW5hdGVTY3JpcHRDYWxsYmFjayk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyOjp0ZXJtaW5hdGVTY3JpcHRDYWxsYmFj
ayk6CisgICAgICAgICogYmluZGluZ3MvanMvV29ya2VyU2NyaXB0Q29udHJvbGxlci5oOgorICAg
ICAgICAqIGNzcy9tZWRpYUNvbnRyb2xzTml4LmNzczoKKyAgICAgICAgKGF1ZGlvKToKKyAgICAg
ICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzKToKKyAgICAgICAgKGF1ZGlvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtZW5jbG9zdXJlKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWVu
Y2xvc3VyZSk6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCwg
dmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwpOgorICAgICAgICAodmlkZW86LXdl
YmtpdC1mdWxsLXBhZ2UtbWVkaWEpOgorICAgICAgICAoYXVkaW86LXdlYmtpdC1mdWxsLXBhZ2Ut
bWVkaWEsIHZpZGVvOi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhKToKKyAgICAgICAgKGF1ZGlvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1j
b250cm9scy1tdXRlLWJ1dHRvbik6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1vdmVybGF5LXBsYXktYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1v
dmVybGF5LXBsYXktYnV0dG9uKToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLXBsYXktYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRv
bik6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZS1jb250
YWluZXIsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lLWNvbnRhaW5lcik6
CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lLXJlbWFpbmluZy1k
aXNwbGF5LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lLXJlbWFpbmluZy1kaXNw
bGF5KToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lLCB2
aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZSk6CisgICAgICAgIChhdWRpbzo6
LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVyLCB2aWRlbzo6LXdlYmtpdC1tZWRp
YS1jb250cm9scy12b2x1bWUtc2xpZGVyKToKKyAgICAgICAgKGlucHV0W3R5cGU9InJhbmdlIl06
Oi13ZWJraXQtbWVkaWEtc2xpZGVyLWNvbnRhaW5lcik6CisgICAgICAgIChpbnB1dFt0eXBlPSJy
YW5nZSJdOjotd2Via2l0LW1lZGlhLXNsaWRlci1jb250YWluZXIgPiBkaXYpOgorICAgICAgICAo
aW5wdXRbdHlwZT0icmFuZ2UiXTo6LXdlYmtpdC1tZWRpYS1zbGlkZXItdGh1bWIpOgorICAgICAg
ICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1iYWNrLWJ1dHRvbiwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1iYWNrLWJ1dHRvbik6CisgICAgICAgIChhdWRp
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1zZWVrLWZvcndhcmQtYnV0dG9uLCB2aWRlbzo6LXdl
YmtpdC1tZWRpYS1jb250cm9scy1zZWVrLWZvcndhcmQtYnV0dG9uKToKKyAgICAgICAgKGF1ZGlv
Ojotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uLCB2aWRlbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRvbik6CisgICAgICAgIChhdWRpbzo6LXdl
YmtpdC1tZWRpYS1jb250cm9scy10b2dnbGUtY2xvc2VkLWNhcHRpb25zLWJ1dHRvbiwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdG9nZ2xlLWNsb3NlZC1jYXB0aW9ucy1idXR0b24pOgor
ICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUt
c2xpZGVyLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1z
bGlkZXIpOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVl
bi12b2x1bWUtbWluLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNj
cmVlbi12b2x1bWUtbWluLWJ1dHRvbik6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1j
b250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgtYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRp
YS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgtYnV0dG9uKToKKyAgICAgICAgKHZpZGVv
Ojotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyKToKKyAgICAgICAgKHZpZGVvOjpj
dWUpOgorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1yZWdpb24pOgor
ICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1yZWdpb24tY29udGFpbmVy
KToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stcmVnaW9uLWNvbnRh
aW5lci5zY3JvbGxpbmcpOgorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFj
ay1kaXNwbGF5KToKKyAgICAgICAgKHZpZGVvOjpjdWUoOmZ1dHVyZSkpOgorICAgICAgICAodmlk
ZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIgYik6CisgICAgICAgICh2aWRl
bzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciB1KToKKyAgICAgICAgKHZpZGVv
Ojotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIGkpOgorICAgICAgICAqIGVkaXRp
bmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6Y3V0KToKKyAgICAgICAg
KFdlYkNvcmU6OkVkaXRvcjo6Y29weSk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmNvcHlJ
bWFnZSk6CisgICAgICAgICogZWRpdGluZy9FZGl0b3IuaDoKKyAgICAgICAgKiBodG1sL0hUTUxD
YW52YXNFbGVtZW50Lmg6CisgICAgICAgICogbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Okhpc3RvcnlDb250cm9sbGVyOjpyZXN0b3JlU2Nyb2xsUG9zaXRp
b25BbmRWaWV3U3RhdGUpOgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlU2luZ2xlVGFwKToKKyAgICAgICAgKiBw
YWdlL0V2ZW50SGFuZGxlci5oOgorICAgICAgICAqIHBsYXRmb3JtL0N1cnNvci5oOgorICAgICAg
ICAqIHBsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmg6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8v
bml4L0F1ZGlvQnVzTml4LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1ZGlvQnVzOjpsb2FkUGxh
dGZvcm1SZXNvdXJjZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0Lmg6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJMYXllci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlTWFwcGVyTGF5ZXI6OmdldEFuY2VzdG9yU2Ny
b2xsYWJsZUxheWVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVy
ZU1hcHBlckxheWVyLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3Jk
aW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpD
b29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSk6CisgICAg
ICAgIChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmNvbW1pdFBlbmRpbmdTdGF0
ZUNoYW5nZSk6CisgICAgICAgIChXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmNv
bW1pdFNjZW5lU3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lOjpzeW5jUmVtb3RlQ29udGVudCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdGV4
bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oOgorICAgICAgICAoV2Vi
Q29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpsb2NrU3RhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjp1bmxvY2tTdGF0ZSk6CisgICAgICAgICog
cGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDdXJzb3I6OmVu
c3VyZVBsYXRmb3JtQ3Vyc29yKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uaXgvR2FtZXBhZHNOaXgu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6c2FtcGxlR2FtZXBhZHMpOgorICAgICAgICAqIHBsYXRm
b3JtL25peC9SZW5kZXJUaGVtZU5peC5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0b0ludFNpemUp
OgorICAgICAgICAoV2ViQ29yZTo6dG9OaXhSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clRoZW1lTml4OjpwbGF0Zm9ybUFjdGl2ZVNlbGVjdGlvbkJhY2tncm91bmRDb2xvcik6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZVNlbGVjdGlvbkJh
Y2tncm91bmRDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxhdGZv
cm1BY3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyVGhlbWVOaXg6OnBsYXRmb3JtSW5hY3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0aXZlTGlzdEJveFNl
bGVjdGlvbkJhY2tncm91bmRDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5p
eDo6cGxhdGZvcm1JbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0aXZlTGlzdEJveFNlbGVj
dGlvbkZvcmVncm91bmRDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6
cGxhdGZvcm1JbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0aXZlVGV4dFNlYXJjaEhpZ2hs
aWdodENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUlu
YWN0aXZlVGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
clRoZW1lTml4OjpwbGF0Zm9ybUZvY3VzUmluZ0NvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclRoZW1lTml4OjpwbGF0Zm9ybVRhcEhpZ2hsaWdodENvbG9yKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclRoZW1lTml4OjpwYWludEJ1dHRvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUaGVtZU5peDo6cGFpbnRUZXh0RmllbGQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhl
bWVOaXg6OnBhaW50Q2hlY2tib3gpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6
OnNldENoZWNrYm94U2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFp
bnRSYWRpbyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6c2V0UmFkaW9TaXpl
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludE1lbnVMaXN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludFByb2dyZXNzQmFyKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludFNsaWRlclRyYWNrKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludFNsaWRlclRodW1iKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludElubmVyU3BpbkJ1dHRvbik6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRNZXRlcik6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJUaGVtZU5peDo6ZXh0cmFNZWRpYUNvbnRyb2xzU3R5bGVTaGVldCk6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVBsYXlCdXR0b24pOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50TWVkaWFNdXRlQnV0dG9uKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhU2Vla0JhY2tCdXR0b24pOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50TWVkaWFTZWVrRm9yd2FyZEJ1dHRv
bik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVNsaWRlclRy
YWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhVm9sdW1l
U2xpZGVyQ29udGFpbmVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWlu
dE1lZGlhVm9sdW1lU2xpZGVyVHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVO
aXg6OnBhaW50TWVkaWFSZXdpbmRCdXR0b24pOgorICAgICAgICAqIHBsYXRmb3JtL25peC9SZW5k
ZXJUaGVtZU5peC5oOgorICAgICAgICAqIHJlbmRlcmluZy9TaW1wbGVMaW5lTGF5b3V0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlNpbXBsZUxpbmVMYXlvdXQ6OmNhblVzZUZvcik6CisKIDIwMTMt
MTEtMjggIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92
ZSBmZWF0dXJlOiBDU1MgdmFyaWFibGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0
Zm9ybU5peC5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTml4LmNtYWtlCmluZGV4IDE5
NGI0MTUxMTg1MmU5ODI3NGFhZmY2ZmMwYTFmNjIzOTY3OGQ1ODkuLjkzYTdmYWE5MDgxZTMyZTZk
MDFkYWM0Njk3OTRmYWYwYmUxNjAyMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRm
b3JtTml4LmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTml4LmNtYWtlCkBAIC00
LDI0ICs0LDE1IEBAIGxpc3QoQVBQRU5EIFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAg
ICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlybyIKICAgICAiJHtXRUJDT1JF
X0RJUn0vcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3Bs
YXRmb3JtL2dyYXBoaWNzL2dseCIKLSAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0vZ3JhcGhp
Y3MvaGFyZmJ1enovIgotICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9oYXJm
YnV6ei9uZyIKICAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0vZ3JhcGhpY3Mvbml4IgotICAg
ICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9vcGVuZ2wiCiAgICAgIiR7V0VCQ09S
RV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL29wZW50eXBlIgogICAgICIke1dFQkNPUkVfRElSfS9w
bGF0Zm9ybS9ncmFwaGljcy9zdXJmYWNlcyIKLSAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0v
Z3JhcGhpY3MvdGV4bWFwIgogICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9saW51eCIKICAg
ICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0vbWVkaWFzdHJlYW0vZ3N0cmVhbWVyIgogICAgICIk
e1BMQVRGT1JNX0RJUn0vbml4LyIKICkKIAogbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCi0g
ICAgY3NzL1dlYktpdENTU0FycmF5RnVuY3Rpb25WYWx1ZS5jcHAKLSAgICBjc3MvV2ViS2l0Q1NT
TWF0RnVuY3Rpb25WYWx1ZS5jcHAKLSAgICBjc3MvV2ViS2l0Q1NTTWF0cml4LmNwcAotICAgIGNz
cy9XZWJLaXRDU1NNaXhGdW5jdGlvblZhbHVlLmNwcAotCiAgICAgZWRpdGluZy9TbWFydFJlcGxh
Y2VJQ1UuY3BwCiAKICAgICBodG1sL3NoYWRvdy9NZWRpYUNvbnRyb2xzTml4LmNwcApAQCAtMzQs
MTEgKzI1LDkgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vQ29u
dGV4dE1lbnVOb25lLmNwcAogICAgIHBsYXRmb3JtL0N1cnNvci5jcHAKICAgICBwbGF0Zm9ybS9M
b2NhbGl6ZWRTdHJpbmdzLmNwcAotICAgIHBsYXRmb3JtL1BsYXRmb3JtU3RyYXRlZ2llcy5jcHAK
IAogICAgIHBsYXRmb3JtL2NhaXJvL1dpZGdldEJhY2tpbmdTdG9yZUNhaXJvLmNwcAogCi0gICAg
cGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VTb3VyY2UuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mv
T3BlbkdMU2hpbXMuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuY3Bw
CiAKQEAgLTYyLDkgKzUxLDYgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvY2Fpcm8vVGlsZWRCYWNraW5nU3RvcmVCYWNrZW5kQ2Fpcm8uY3BwCiAg
ICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vVHJhbnNmb3JtYXRpb25NYXRyaXhDYWlyby5jcHAK
IAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRv
ci5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRl
ZFByb2dyYW0uY3BwCi0KICAgICBwbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q2FjaGVG
cmVlVHlwZS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxh
dGZvcm1EYXRhRnJlZVR5cGUuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9u
dFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcApAQCAtOTEsMjQgKzc3LDggQEAgbGlzdChBUFBFTkQg
V2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3RrL0xvZ2dpbmdHdGsuY3BwCiAgICAgcGxh
dGZvcm0vZ3RrL1NoYXJlZEJ1ZmZlckd0ay5jcHAKIAotICAgIHBsYXRmb3JtL2ltYWdlLWRlY29k
ZXJzL0ltYWdlRGVjb2Rlci5jcHAKLQotICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9C
TVBJbWFnZURlY29kZXIuY3BwCi0gICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUElt
YWdlUmVhZGVyLmNwcAotCiAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvY2Fpcm8vSW1hZ2VE
ZWNvZGVyQ2Fpcm8uY3BwCiAKLSAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1h
Z2VEZWNvZGVyLmNwcAotICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJl
YWRlci5jcHAKLQotICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2ljby9JQ09JbWFnZURlY29k
ZXIuY3BwCi0KLSAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29k
ZXIuY3BwCi0KLSAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVy
LmNwcAotCi0gICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvd2VicC9XRUJQSW1hZ2VEZWNvZGVy
LmNwcAotCiAgICAgcGxhdGZvcm0vbGludXgvR2FtZXBhZERldmljZUxpbnV4LmNwcAogCiAgICAg
cGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKQEAgLTEzMiwxNyArMTAyLDkgQEAgbGlzdChBUFBF
TkQgV2ViQ29yZV9TT1VSQ0VTCiAKICAgICBwbGF0Zm9ybS90ZXh0L25peC9UZXh0QnJlYWtJdGVy
YXRvckludGVybmFsSUNVTml4LmNwcAogCi0gICAgcGx1Z2lucy9QbHVnaW5EYXRhYmFzZS5jcHAK
LSAgICBwbHVnaW5zL1BsdWdpbkRlYnVnLmNwcAogICAgIHBsdWdpbnMvUGx1Z2luUGFja2FnZS5j
cHAKICAgICBwbHVnaW5zL1BsdWdpblBhY2thZ2VOb25lLmNwcAotICAgIHBsdWdpbnMvUGx1Z2lu
U3RyZWFtLmNwcAotICAgIHBsdWdpbnMvUGx1Z2luVmlldy5jcHAKICAgICBwbHVnaW5zL1BsdWdp
blZpZXdOb25lLmNwcAotCi0gICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmNw
cAotICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclByb2dyYW0uY3BwCi0gICAg
cmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNhY2hlLmNwcAogKQogCiBp
ZiAoV1RGX1VTRV9PUEVOR0xfRVNfMikKQEAgLTE3OSw4ICsxNDEsOCBAQCBpZiAoV1RGX1VTRV9F
R0wpCiAgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9MSUJSQVJJRVMgJHtFR0xfTElCUkFSWX0pCiBl
bHNlICgpCiAgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVTCi0gICAg
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL3N1cmZhY2VzL2dseAogICAgICAgICBwbGF0Zm9ybS9ncmFw
aGljcy9zdXJmYWNlcy9lZmwKKyAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mvc3VyZmFjZXMvZ2x4
CiAgICAgICAgICR7WDExX1gxMV9JTkNMVURFX1BBVEh9CiAgICAgKQogICAgIGxpc3QoQVBQRU5E
IFdlYkNvcmVfU09VUkNFUwpAQCAtMjM1LDE1ICsxOTcsMTUgQEAgbGlzdChBUFBFTkQgV2ViQ29y
ZV9MSUJSQVJJRVMKICkKIAogbGlzdChBUFBFTkQgV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVT
Ci0gICAgJHtGT05UQ09ORklHX0lOQ0xVREVfRElSfQogICAgICR7Q0FJUk9fSU5DTFVERV9ESVJT
fQorICAgICR7Rk9OVENPTkZJR19JTkNMVURFX0RJUn0KICAgICAke0ZSRUVUWVBFX0lOQ0xVREVf
RElSU30KKyAgICAke0dMSUJfSU5DTFVERV9ESVJTfQorICAgICR7SEFSRkJVWlpfSU5DTFVERV9E
SVJTfQogICAgICR7TElCWE1MMl9JTkNMVURFX0RJUn0KICAgICAke0xJQlhTTFRfSU5DTFVERV9E
SVJ9CiAgICAgJHtTUUxJVEVfSU5DTFVERV9ESVJ9Ci0gICAgJHtHTElCX0lOQ0xVREVfRElSU30K
ICAgICAke1pMSUJfSU5DTFVERV9ESVJTfQotICAgICR7SEFSRkJVWlpfSU5DTFVERV9ESVJTfQog
KQogCiBhZGRfZGVmaW5pdGlvbnMoLUREQVRBX0RJUj0iJHtDTUFLRV9JTlNUQUxMX1BSRUZJWH0v
JHtEQVRBX0lOU1RBTExfRElSfSIpCkBAIC0yNzcsNiArMjM5LDggQEAgaWYgKFdURl9VU0VfQ1VS
TCkKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL0Nvb2tpZU5vZGUuY3BwCiAgICAgICAg
IHBsYXRmb3JtL25ldHdvcmsvY3VybC9Db29raWVTdG9yYWdlQ3VybC5jcHAKICAgICAgICAgcGxh
dGZvcm0vbmV0d29yay9jdXJsL0NyZWRlbnRpYWxTdG9yYWdlQ3VybC5jcHAKKyAgICAgICAgcGxh
dGZvcm0vbmV0d29yay9jdXJsL0N1cmxDYWNoZUVudHJ5LmNwcAorICAgICAgICBwbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvQ3VybENhY2hlTWFuYWdlci5jcHAKICAgICAgICAgcGxhdGZvcm0vbmV0d29y
ay9jdXJsL0ROU0N1cmwuY3BwCiAgICAgICAgIHBsYXRmb3JtL25ldHdvcmsvY3VybC9Gb3JtRGF0
YVN0cmVhbUN1cmwuY3BwCiAgICAgICAgIHBsYXRmb3JtL25ldHdvcmsvY3VybC9NdWx0aXBhcnRI
YW5kbGUuY3BwCkBAIC0yODQsMTIgKzI0OCwxNCBAQCBpZiAoV1RGX1VTRV9DVVJMKQogICAgICAg
ICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUHJveHlTZXJ2ZXJDdXJsLmNwcAogICAgICAgICBwbGF0
Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsLmNwcAogICAgICAgICBwbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVNYW5hZ2VyLmNwcAorICAgICAgICBwbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvU1NMSGFuZGxlLmNwcAogICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvU29ja2V0U3RyZWFtSGFuZGxlQ3VybC5jcHAKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9j
dXJsL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50Q3VybC5jcHAKICAgICApCiAKICAgICBsaXN0KEFQ
UEVORCBXZWJDb3JlX0xJQlJBUklFUwogICAgICAgICAke0NVUkxfTElCUkFSSUVTfQorICAgICAg
ICAke09QRU5TU0xfTElCUkFSSUVTfQogICAgICkKIGVsc2UgKCkKICAgICBsaXN0KEFQUEVORCBX
ZWJDb3JlX1NPVVJDRVMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dv
cmtlclNjcmlwdENvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29y
a2VyU2NyaXB0Q29udHJvbGxlci5jcHAKaW5kZXggMjkwYjFmMTE0NDRhNmE0Y2IyM2U5NzdkMWRh
OGI3OTQ1YjBiNDM5OC4uNDQ4YjdlNGRhOTFkZTJkZTg5NWM1M2MwZjM3MjllNDY4YWM0YTdmZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyU2NyaXB0Q29udHJv
bGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyU2NyaXB0Q29u
dHJvbGxlci5jcHAKQEAgLTUyLDYgKzUyLDExIEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmIFBMQVRGT1JNKE5JWCkKK1dvcmtlclNjcmlwdENhbGxi
YWNrIFdvcmtlclNjcmlwdENvbnRyb2xsZXI6Om1faW5pdFNjcmlwdENhbGxiYWNrID0gMDsKK1dv
cmtlclNjcmlwdENhbGxiYWNrIFdvcmtlclNjcmlwdENvbnRyb2xsZXI6Om1fdGVybWluYXRlU2Ny
aXB0Q2FsbGJhY2sgPSAwOworI2VuZGlmIC8vIFBMQVRGT1JNKE5JWCkKKwogV29ya2VyU2NyaXB0
Q29udHJvbGxlcjo6V29ya2VyU2NyaXB0Q29udHJvbGxlcihXb3JrZXJHbG9iYWxTY29wZSogd29y
a2VyR2xvYmFsU2NvcGUpCiAgICAgOiBtX3ZtKFZNOjpjcmVhdGUoKSkKICAgICAsIG1fd29ya2Vy
R2xvYmFsU2NvcGUod29ya2VyR2xvYmFsU2NvcGUpCkBAIC02Myw2ICs2OCwxMSBAQCBXb3JrZXJT
Y3JpcHRDb250cm9sbGVyOjpXb3JrZXJTY3JpcHRDb250cm9sbGVyKFdvcmtlckdsb2JhbFNjb3Bl
KiB3b3JrZXJHbG9iYWxTYwogCiBXb3JrZXJTY3JpcHRDb250cm9sbGVyOjp+V29ya2VyU2NyaXB0
Q29udHJvbGxlcigpCiB7CisjaWYgUExBVEZPUk0oTklYKQorICAgIGlmICh0ZXJtaW5hdGVTY3Jp
cHRDYWxsYmFjaygpKQorICAgICAgICB0ZXJtaW5hdGVTY3JpcHRDYWxsYmFjaygpKG1fd29ya2Vy
R2xvYmFsU2NvcGVXcmFwcGVyLT5nbG9iYWxFeGVjKCksIG1fd29ya2VyR2xvYmFsU2NvcGUtPmlz
RGVkaWNhdGVkV29ya2VyR2xvYmFsU2NvcGUoKSk7CisjZW5kaWYgLy8gUExBVEZPUk0oTklYKQor
CiAgICAgSlNMb2NrSG9sZGVyIGxvY2sodm0oKSk7CiAgICAgbV93b3JrZXJHbG9iYWxTY29wZVdy
YXBwZXIuY2xlYXIoKTsKICAgICBtX3ZtLmNsZWFyKCk7CkBAIC0xMDYsNiArMTE2LDExIEBAIHZv
aWQgV29ya2VyU2NyaXB0Q29udHJvbGxlcjo6aW5pdFNjcmlwdCgpCiAgICAgfQogICAgIEFTU0VS
VChtX3dvcmtlckdsb2JhbFNjb3BlV3JhcHBlci0+Z2xvYmFsT2JqZWN0KCkgPT0gbV93b3JrZXJH
bG9iYWxTY29wZVdyYXBwZXIpOwogICAgIEFTU0VSVChhc09iamVjdChtX3dvcmtlckdsb2JhbFNj
b3BlV3JhcHBlci0+cHJvdG90eXBlKCkpLT5nbG9iYWxPYmplY3QoKSA9PSBtX3dvcmtlckdsb2Jh
bFNjb3BlV3JhcHBlcik7CisKKyNpZiBQTEFURk9STShOSVgpCisgICAgaWYgKGluaXRTY3JpcHRD
YWxsYmFjaygpKQorICAgICAgICBpbml0U2NyaXB0Q2FsbGJhY2soKShtX3dvcmtlckdsb2JhbFNj
b3BlV3JhcHBlci0+Z2xvYmFsRXhlYygpLCBtX3dvcmtlckdsb2JhbFNjb3BlLT5pc0RlZGljYXRl
ZFdvcmtlckdsb2JhbFNjb3BlKCkpOworI2VuZGlmIC8vIFBMQVRGT1JNKE5JWCkKIH0KIAogdm9p
ZCBXb3JrZXJTY3JpcHRDb250cm9sbGVyOjpldmFsdWF0ZShjb25zdCBTY3JpcHRTb3VyY2VDb2Rl
JiBzb3VyY2VDb2RlKQpAQCAtMjAzLDQgKzIxOCwyNiBAQCB2b2lkIFdvcmtlclNjcmlwdENvbnRy
b2xsZXI6OmRldGFjaERlYnVnZ2VyKEpTQzo6RGVidWdnZXIqIGRlYnVnZ2VyKQogICAgIGRlYnVn
Z2VyLT5kZXRhY2gobV93b3JrZXJHbG9iYWxTY29wZVdyYXBwZXItPmdsb2JhbE9iamVjdCgpKTsK
IH0KIAorI2lmIFBMQVRGT1JNKE5JWCkKK3ZvaWQgV29ya2VyU2NyaXB0Q29udHJvbGxlcjo6c2V0
SW5pdFNjcmlwdENhbGxiYWNrKFdvcmtlclNjcmlwdENhbGxiYWNrIGNhbGxiYWNrKQoreworICAg
IG1faW5pdFNjcmlwdENhbGxiYWNrID0gY2FsbGJhY2s7Cit9CisKK1dvcmtlclNjcmlwdENhbGxi
YWNrIFdvcmtlclNjcmlwdENvbnRyb2xsZXI6OmluaXRTY3JpcHRDYWxsYmFjaygpCit7CisgICAg
cmV0dXJuIG1faW5pdFNjcmlwdENhbGxiYWNrOworfQorCit2b2lkIFdvcmtlclNjcmlwdENvbnRy
b2xsZXI6OnNldFRlcm1pbmF0ZVNjcmlwdENhbGxiYWNrKFdvcmtlclNjcmlwdENhbGxiYWNrIGNh
bGxiYWNrKQoreworICAgIG1fdGVybWluYXRlU2NyaXB0Q2FsbGJhY2sgPSBjYWxsYmFjazsKK30K
KworV29ya2VyU2NyaXB0Q2FsbGJhY2sgV29ya2VyU2NyaXB0Q29udHJvbGxlcjo6dGVybWluYXRl
U2NyaXB0Q2FsbGJhY2soKQoreworICAgIHJldHVybiBtX3Rlcm1pbmF0ZVNjcmlwdENhbGxiYWNr
OworfQorI2VuZGlmIC8vIFBMQVRGT1JNKE5JWCkKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyU2NyaXB0Q29udHJv
bGxlci5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV29ya2VyU2NyaXB0Q29udHJvbGxl
ci5oCmluZGV4IDhiYjdmNDliMDg1ZmM1Y2RkODcyMjc3MTllMzMxNWYxYTI2YjhmODUuLmUyZjVm
ZmU5MDI1NTYxN2NkNTJlMmIwYmM0NzgyNmVjNWVkZjQ0MGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL1dvcmtlclNjcmlwdENvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9Xb3JrZXJTY3JpcHRDb250cm9sbGVyLmgKQEAgLTM5LDYgKzM5
LDEwIEBAIG5hbWVzcGFjZSBKU0MgewogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKyNpZiBQTEFU
Rk9STShOSVgpCisgICAgdHlwZWRlZiB2b2lkICgqV29ya2VyU2NyaXB0Q2FsbGJhY2spKEpTQzo6
RXhlY1N0YXRlKiwgYm9vbCk7CisjZW5kaWYgLy8gUExBVEZPUk0oTklYKQorCiAgICAgY2xhc3Mg
SlNXb3JrZXJHbG9iYWxTY29wZTsKICAgICBjbGFzcyBTY3JpcHRTb3VyY2VDb2RlOwogICAgIGNs
YXNzIFNjcmlwdFZhbHVlOwpAQCAtODEsNiArODUsMTIgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICB2b2lkIGF0dGFjaERlYnVnZ2VyKEpTQzo6RGVidWdnZXIqKTsKICAgICAgICAgdm9p
ZCBkZXRhY2hEZWJ1Z2dlcihKU0M6OkRlYnVnZ2VyKik7CiAKKyNpZiBQTEFURk9STShOSVgpCisg
ICAgICAgIHN0YXRpYyB2b2lkIHNldEluaXRTY3JpcHRDYWxsYmFjayhXb3JrZXJTY3JpcHRDYWxs
YmFjayk7CisgICAgICAgIHN0YXRpYyBXb3JrZXJTY3JpcHRDYWxsYmFjayBpbml0U2NyaXB0Q2Fs
bGJhY2soKTsKKyAgICAgICAgc3RhdGljIHZvaWQgc2V0VGVybWluYXRlU2NyaXB0Q2FsbGJhY2so
V29ya2VyU2NyaXB0Q2FsbGJhY2spOworICAgICAgICBzdGF0aWMgV29ya2VyU2NyaXB0Q2FsbGJh
Y2sgdGVybWluYXRlU2NyaXB0Q2FsbGJhY2soKTsKKyNlbmRpZiAvLyBQTEFURk9STShOSVgpCiAg
ICAgcHJpdmF0ZToKICAgICAgICAgdm9pZCBpbml0U2NyaXB0SWZOZWVkZWQoKQogICAgICAgICB7
CkBAIC05NCw2ICsxMDQsMTEgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBKU0M6OlN0
cm9uZzxKU1dvcmtlckdsb2JhbFNjb3BlPiBtX3dvcmtlckdsb2JhbFNjb3BlV3JhcHBlcjsKICAg
ICAgICAgYm9vbCBtX2V4ZWN1dGlvbkZvcmJpZGRlbjsKICAgICAgICAgbXV0YWJsZSBNdXRleCBt
X3NjaGVkdWxlZFRlcm1pbmF0aW9uTXV0ZXg7CisKKyNpZiBQTEFURk9STShOSVgpCisgICAgICAg
IHN0YXRpYyBXb3JrZXJTY3JpcHRDYWxsYmFjayBtX2luaXRTY3JpcHRDYWxsYmFjazsKKyAgICAg
ICAgc3RhdGljIFdvcmtlclNjcmlwdENhbGxiYWNrIG1fdGVybWluYXRlU2NyaXB0Q2FsbGJhY2s7
CisjZW5kaWYgLy8gUExBVEZPUk0oTklYKQogICAgIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9tZWRpYUNvbnRyb2xzTml4LmNzcyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9tZWRpYUNvbnRyb2xzTml4LmNzcwppbmRleCBiNWIzNjY1Mjdi
N2UwNTgxOTRjNTQxNzE1ZWY1Nzg4ZWQwMjc3NDliLi4wOTU2ODBjMmU0NDc0MmE1ZDUyZjA0ZGM2
Y2FkY2NlNGY5ZmY3NmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWVkaWFDb250
cm9sc05peC5jc3MKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNOaXguY3Nz
CkBAIC0xLDcgKzEsNyBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSwgMjAxMCwgMjAxMSBB
cHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDExIFNh
bXN1bmcgRWxlY3Ryb25pY3MKLSAqIENvcHlyaWdodCAoQykgMjAxMi0yMDEzIE5va2lhIENvcnBv
cmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqIENvcHlyaWdodCAoQykgMjAw
OSBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA5
IEdvb2dsZSBJbmMuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIsIDIwMTMgTm9raWEgQ29ycG9yYXRp
b24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC0yNCwxMjcgKzI0LDIxOCBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0vKiBO
aXhXZWJLaXQgbWVkaWEgY29udHJvbHMuIEV4dGVuZHMgbWVkaWFDb250cm9scy5jc3MgKi8KKy8q
IE5peCBkZWZhdWx0IG1lZGlhIGNvbnRyb2xzICovCiAKIGF1ZGlvIHsKICAgICB3aWR0aDogMzAw
cHg7Ci0gICAgaGVpZ2h0OiAyMHB4OworICAgIGhlaWdodDogMzBweDsKK30KKworYXVkaW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMsCit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scyB7Cisg
ICAgd2lkdGg6IGluaGVyaXQ7CisgICAgaGVpZ2h0OiBpbmhlcml0OworICAgIHBvc2l0aW9uOiBy
ZWxhdGl2ZTsKKyAgICBkaXJlY3Rpb246IGx0cjsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZs
ZXgtZGlyZWN0aW9uOiByb3c7CisgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKKyAgICBh
bGlnbi1pdGVtczogY2VudGVyOworfQorCithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1l
bmNsb3N1cmUsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSB7CisgICAg
d2lkdGg6IDEwMCU7CisgICAgbWF4LXdpZHRoOiA4MDBweDsKKyAgICBoZWlnaHQ6IDMwcHg7Cisg
ICAgZmxleC1zaHJpbms6IDA7CisgICAgYm90dG9tOiAwOworICAgIHRleHQtaW5kZW50OiAwOwor
ICAgIHBhZGRpbmc6IDA7CisgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKK30KKwordmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJlIHsKKyAgICBwYWRkaW5nOiAwcHggNXB4
IDVweCA1cHg7CisgICAgaGVpZ2h0OiAzNXB4OworICAgIGZsZXgtc2hyaW5rOiAwOwogfQogCiBh
dWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCwgdmlkZW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtcGFuZWwgewotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIC13ZWJraXQt
Ym94LW9yaWVudDogaG9yaXpvbnRhbDsKLSAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOwor
ICAgIGRpc3BsYXk6IGZsZXg7CisgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKKyAgICBhbGlnbi1p
dGVtczogY2VudGVyOworICAgIC8qIFdlIHVzZSBmbGV4LXN0YXJ0IGhlcmUgdG8gZW5zdXJlIHRo
YXQgdGhlIHBsYXkgYnV0dG9uIGlzIHZpc2libGUgZXZlbgorICAgICAqIGlmIHdlIGFyZSB0b28g
c21hbGwgdG8gc2hvdyBhbGwgY29udHJvbHMuCisgICAgICovCisgICAganVzdGlmeS1jb250ZW50
OiBmbGV4LXN0YXJ0OwogICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgcG9zaXRp
b246IHJlbGF0aXZlOwotICAgIGJvdHRvbTogMDsKICAgICB3aWR0aDogMTAwJTsKICAgICB6LWlu
ZGV4OiAwOwogICAgIG92ZXJmbG93OiBoaWRkZW47Ci0gICAgaGVpZ2h0OiAyMHB4OwogICAgIHRl
eHQtYWxpZ246IHJpZ2h0OworICAgIGJvdHRvbTogYXV0bzsKKyAgICBoZWlnaHQ6IDMwcHg7Cisg
ICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMCwgMjAsIDIwLCAwLjgpOworICAgIGJvcmRlci1y
YWRpdXM6IDVweDsKK30KKwordmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEgeworICAgIG1h
cmdpbjogYXV0bzsKKyAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgdG9wOiAwOworICAgIHJp
Z2h0OiAwOworICAgIGJvdHRvbTogMDsKKyAgICBsZWZ0OiAwOwogfQogCithdWRpbzotd2Via2l0
LWZ1bGwtcGFnZS1tZWRpYSwgdmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEgeworICAgIG1h
eC1oZWlnaHQ6IDEwMCU7CisgICAgbWF4LXdpZHRoOiAxMDAlOworfQorCithdWRpbzotd2Via2l0
LWZ1bGwtcGFnZS1tZWRpYTo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCwKIHZpZGVvOi13
ZWJraXQtZnVsbC1wYWdlLW1lZGlhOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsIHsKICAg
ICBib3R0b206IDBweDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1i
dXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9uIHsKICAgICAt
d2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLW11dGUtYnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJr
aXQtYm94OwotICAgIHdpZHRoOiAyMHB4OwotICAgIGhlaWdodDogMjBweDsKLSAgICBwb3NpdGlv
bjogcmVsYXRpdmU7Ci0gICAgei1pbmRleDogMjsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZs
ZXg6IG5vbmU7CisgICAgYm9yZGVyOiBub25lOworICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7
CisgICAgd2lkdGg6IDM1cHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxpbmUtaGVpZ2h0OiAz
MHB4OworICAgIG1hcmdpbjogMCA2cHggMCAwOworICAgIHBhZGRpbmc6IDA7CiAgICAgYmFja2dy
b3VuZC1jb2xvcjogaW5pdGlhbDsKLSAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGlu
aGVyaXQ7CiB9CiAKK2F1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW92ZXJsYXktcGxheS1i
dXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW92ZXJsYXktcGxheS1idXR0b24g
eworICAgIGRpc3BsYXk6IG5vbmU7Cit9CisKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xz
LXBsYXktYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiB7
CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1wbGF5LWJ1dHRvbjsKLSAgICBkaXNwbGF5
OiAtd2Via2l0LWJveDsKLSAgICB3aWR0aDogMjBweDsKLSAgICBoZWlnaHQ6IDIwcHg7CisgICAg
ZGlzcGxheTogZmxleDsKKyAgICBmbGV4OiBub25lOworICAgIGJvcmRlcjogbm9uZTsKKyAgICBi
b3gtc2l6aW5nOiBib3JkZXItYm94OworICAgIHdpZHRoOiAzMHB4OworICAgIGhlaWdodDogMzBw
eDsKKyAgICBsaW5lLWhlaWdodDogMzBweDsKKyAgICBtYXJnaW4tbGVmdDogOXB4OworICAgIG1h
cmdpbi1yaWdodDogOXB4OworICAgIHBhZGRpbmc6IDA7CiAgICAgYmFja2dyb3VuZC1jb2xvcjog
aW5pdGlhbDsKLSAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9CiAK
IGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lLWNvbnRhaW5lciwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUtY29udGFpbmVyIHsKICAgICAtd2Via2l0
LWFwcGVhcmFuY2U6IG1lZGlhLWNvbnRyb2xzLWJhY2tncm91bmQ7Ci0gICAgZGlzcGxheTogLXdl
YmtpdC1ib3g7Ci0gICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwotICAgIC13ZWJr
aXQtYm94LWFsaWduOiBjZW50ZXI7Ci0gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kOwotICAgIC13
ZWJraXQtYm94LWZsZXg6IDE7CisgICAgZGlzcGxheTogZmxleDsKKyAgICBmbGV4LWRpcmVjdGlv
bjogcm93OworICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CisgICAganVzdGlmeS1jb250ZW50OiBm
bGV4LWVuZDsKKyAgICBmbGV4OiAxIDE7CiAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsK
LSAgICBoZWlnaHQ6IDIwcHg7CisgICAgaGVpZ2h0OiAxNnB4OworICAgIG1pbi13aWR0aDogMDsK
IH0KIAotYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1lLWRpc3BsYXks
IHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNwbGF5IHsKK2F1
ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNwbGF5LCB2aWRlbzo6
LXdlYmtpdC1tZWRpYS1jb250cm9scy1jdXJyZW50LXRpbWUtZGlzcGxheSwKK2F1ZGlvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLXRpbWUtcmVtYWluaW5nLWRpc3BsYXksIHZpZGVvOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzLXRpbWUtcmVtYWluaW5nLWRpc3BsYXkgewogICAgIC13ZWJraXQtYXBw
ZWFyYW5jZTogbWVkaWEtY3VycmVudC10aW1lLWRpc3BsYXk7CiAgICAgLXdlYmtpdC11c2VyLXNl
bGVjdDogbm9uZTsKLSAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAgICBoZWlnaHQ6IDIwcHg7
CisgICAgLXdlYmtpdC1mbGV4OiBub25lOworICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKKyAg
ICBib3JkZXI6IG5vbmU7CisgICAgY3Vyc29yOiBkZWZhdWx0OwogCi0gICAgcGFkZGluZzogNHB4
OworICAgIGhlaWdodDogMzBweDsKKyAgICBtYXJnaW46IDAgOXB4IDAgMDsKKyAgICBwYWRkaW5n
OiAwOwogCi0gICAgdGV4dC1hbGlnbjogY2VudGVyOwotICAgIGZvbnQtc2l6ZTogMTBweDsKKyAg
ICBsaW5lLWhlaWdodDogMzBweDsKKyAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwg
c2Fucy1zZXJpZjsKKyAgICBmb250LXNpemU6IDEzcHg7CisgICAgZm9udC13ZWlnaHQ6IGJvbGQ7
CisgICAgZm9udC1zdHlsZTogbm9ybWFsOworICAgIGNvbG9yOiB3aGl0ZTsKIAotICAgIGNvbG9y
OiBibGFjazsKICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOwogICAgIHdvcmQtc3BhY2luZzog
bm9ybWFsOwotICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7CisgICAgdGV4dC1hbGlnbjogY2VudGVy
CiAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7CiAgICAgdGV4dC1pbmRlbnQ6IDA7CiAgICAgdGV4
dC1zaGFkb3c6IG5vbmU7CiAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwotICAgIGZvbnQtc3R5
bGU6IG5vcm1hbDsKLSAgICBmb250LXdlaWdodDogbm9ybWFsOwotICAgIGZvbnQtZmFtaWx5OiBz
ZXJpZjsKLX0KLQotYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmct
ZGlzcGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlz
cGxheSB7Ci0gICAgZGlzcGxheTogbm9uZTsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtdGltZWxpbmUsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lIHsK
ICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXNsaWRlcjsKLSAgICBkaXNwbGF5OiAtd2Vi
a2l0LWJveDsKLSAgICAtd2Via2l0LWJveC1mbGV4OiAxOwotICAgIGhlaWdodDogMjBweDsKLSAg
ICBwYWRkaW5nOiAwcHggMnB4OwotICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7CisgICAg
ZGlzcGxheTogZmxleDsKKyAgICBmbGV4OiAxIDEgYXV0bzsKKyAgICBoZWlnaHQ6IDhweDsKKyAg
ICBtYXJnaW46IDAgMTVweCAwIDA7CisgICAgcGFkZGluZzogMDsKKyAgICBiYWNrZ3JvdW5kLWNv
bG9yOiBibGFjazsKKyAgICBtaW4td2lkdGg6IDI1cHg7CiAgICAgYm9yZGVyOiBpbml0aWFsOwor
ICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICBjb2xvcjogaW5oZXJpdDsKLSAgICBtYXJnaW46
IGluaXRpYWw7Ci19Ci0KLWF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlk
ZXItY29udGFpbmVyLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVy
LWNvbnRhaW5lciB7Ci0gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS12b2x1bWUtc2xpZGVy
LWNvbnRhaW5lcjsKLSAgICBwb3NpdGlvbjogYWJzb2x1dGU7Ci0gICAgaGVpZ2h0OiAxMDBweDsK
LSAgICB3aWR0aDogMjBweDsKLSAgICBib3R0b206IDIwcHg7Ci0gICAgei1pbmRleDogMTsKIH0K
IAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciwgdmlkZW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciB7CiAgICAgLXdlYmtpdC1hcHBlYXJh
bmNlOiBtZWRpYS12b2x1bWUtc2xpZGVyOwotICAgIGRpc3BsYXk6IG5vbmU7Ci0gICAgYmFja2dy
b3VuZC1jb2xvcjogaW5pdGlhbDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIC8qIFRoZSAxLjkg
dmFsdWUgd2FzIGVtcGlyaWNhbGx5IGNob3NlbiB0byBtYXRjaCBvbGQtZmxleGJveCBiZWhhdmlv
dXIKKyAgICAgKiBhbmQgYmUgYWVzdGhldGljYWxseSBwbGVhc2luZy4KKyAgICAgKi8KKyAgICBm
bGV4OiAxIDEuOSBhdXRvOworICAgIGhlaWdodDogOHB4OworICAgIG1heC13aWR0aDogNzBweDsK
KyAgICBtYXJnaW46IDAgMTVweCAwIDA7CisgICAgcGFkZGluZzogMDsKKyAgICBtaW4td2lkdGg6
IDE1cHg7CiAgICAgYm9yZGVyOiBpbml0aWFsOwogICAgIGNvbG9yOiBpbmhlcml0OwotICAgIG1h
cmdpbjogaW5pdGlhbDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsKKyAgICBib3JkZXIt
cmFkaXVzOiA0cHg7Cit9CisKK2lucHV0W3R5cGU9InJhbmdlIl06Oi13ZWJraXQtbWVkaWEtc2xp
ZGVyLWNvbnRhaW5lciB7CisgICAgZGlzcGxheTogZmxleDsKKyAgICBhbGlnbi1pdGVtczogY2Vu
dGVyOworICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IC8qIFRoaXMgcHJvcGVydHkgaXMgdXBkYXRl
ZCBieSBDKysgY29kZS4gKi8KKyAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OworICAgIGhlaWdo
dDogMTAwJTsKKyAgICB3aWR0aDogMTAwJTsKKyAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIz
MCwgMjMwLCAyMzAsIDAuMzUpOworICAgIGJvcmRlci1yYWRpdXM6IDRweDsKKyAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogQmFja2dyb3VuZCBkcmF3aW5nIGlzIG1hbmFnZWQg
YnkgQysrIGNvZGUgdG8gZHJhdyByYW5nZXMuICovCit9CisKKy8qIFRoZSBuZWdhdGl2ZSByaWdo
dCBtYXJnaW4gY2F1c2VzIHRoZSB0cmFjayB0byBvdmVyZmxvdyBpdHMgY29udGFpbmVyLiAqLwor
aW5wdXRbdHlwZT0icmFuZ2UiXTo6LXdlYmtpdC1tZWRpYS1zbGlkZXItY29udGFpbmVyID4gZGl2
IHsKKyAgICBtYXJnaW4tcmlnaHQ6IC0xNHB4OworfQorCitpbnB1dFt0eXBlPSJyYW5nZSJdOjot
d2Via2l0LW1lZGlhLXNsaWRlci10aHVtYiB7CisgICAgbWFyZ2luLWxlZnQ6IC03cHg7CisgICAg
bWFyZ2luLXJpZ2h0OiAtN3B4OworICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOworICAgIGJv
cmRlci1yYWRpdXM6IDNweDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vl
ay1iYWNrLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1iYWNrLWJ1
dHRvbiB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1zZWVrLWJhY2stYnV0dG9uOwot
ICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIHdpZHRoOiAyMHB4OwotICAgIGhlaWdodDog
MjBweDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIHdpZHRoOiAxNnB4OworICAgIGhlaWdodDog
MTZweDsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOwogICAgIGJvcmRlcjogaW5pdGlh
bDsKICAgICBjb2xvcjogaW5oZXJpdDsKQEAgLTE1MiwyMSArMjQzLDI3IEBAIGF1ZGlvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstYmFjay1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlh
LWNvbnRyb2xzLXNlCiAKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstZm9yd2Fy
ZC1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstZm9yd2FyZC1idXR0
b24gewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEtc2Vlay1mb3J3YXJkLWJ1dHRvbjsK
LSAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAgICB3aWR0aDogMjBweDsKLSAgICBoZWlnaHQ6
IDIwcHg7CisgICAgZGlzcGxheTogZmxleDsKKyAgICB3aWR0aDogMTZweDsKKyAgICBoZWlnaHQ6
IDE2cHg7CiAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDsKICAgICBib3JkZXI6IGluaXRp
YWw7CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9CiAKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLWZ1bGxzY3JlZW4tYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxs
c2NyZWVuLWJ1dHRvbiB7Ci0gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1mdWxsc2NyZWVu
LWJ1dHRvbjsKLSAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAgICB3aWR0aDogMjBweDsKLSAg
ICBoZWlnaHQ6IDIwcHg7CisgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1lbnRlci1mdWxs
c2NyZWVuLWJ1dHRvbjsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXg6IG5vbmU7CisgICAg
Ym9yZGVyOiBub25lOworICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDMw
cHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdp
bi1sZWZ0OiAtNXB4OworICAgIG1hcmdpbi1yaWdodDogOXB4OworICAgIHBhZGRpbmc6IDA7CiAg
ICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDsKLSAgICBib3JkZXI6IGluaXRpYWw7CiAgICAg
Y29sb3I6IGluaGVyaXQ7CiB9CiAKQEAgLTE4NiwxMSArMjgzLDE3IEBAIGF1ZGlvOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzLXJldHVybi10by1yZWFsdGltZS1idXR0b24sIHZpZGVvOjotd2Via2l0
LW1lZGlhLWNvCiAKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRvZ2dsZS1jbG9zZWQt
Y2FwdGlvbnMtYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10b2dnbGUtY2xv
c2VkLWNhcHRpb25zLWJ1dHRvbiB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS10b2dn
bGUtY2xvc2VkLWNhcHRpb25zLWJ1dHRvbjsKLSAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAg
ICB3aWR0aDogMjBweDsKLSAgICBoZWlnaHQ6IDIwcHg7CisgICAgZGlzcGxheTogZmxleDsKKyAg
ICBmbGV4OiBub25lOworICAgIGJvcmRlcjogbm9uZTsKKyAgICBib3gtc2l6aW5nOiBib3JkZXIt
Ym94OworICAgIHdpZHRoOiAzMHB4OworICAgIGhlaWdodDogMzBweDsKKyAgICBsaW5lLWhlaWdo
dDogMzBweDsKKyAgICBtYXJnaW4tbGVmdDogLTVweDsKKyAgICBtYXJnaW4tcmlnaHQ6IDlweDsK
KyAgICBwYWRkaW5nOiAwOwogICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7Ci0gICAgYm9y
ZGVyOiBpbml0aWFsOwogICAgIGNvbG9yOiBpbmhlcml0OwogfQogCkBAIC0yMDEsMyArMzA0LDky
IEBAIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlkZXItbXV0ZS1idXR0
b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvCiAgICAgYm9yZGVyOiBpbml0aWFsOwogICAgIGNv
bG9yOiBpbmhlcml0OwogfQorCithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2Ny
ZWVuLXZvbHVtZS1zbGlkZXIsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3Jl
ZW4tdm9sdW1lLXNsaWRlciB7CisgICAgZGlzcGxheTogbm9uZTsKK30KKworYXVkaW86Oi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWluLWJ1dHRvbiwgdmlkZW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWluLWJ1dHRvbiB7CisgICAg
ZGlzcGxheTogbm9uZTsKK30KKworYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNj
cmVlbi12b2x1bWUtbWF4LWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVs
bHNjcmVlbi12b2x1bWUtbWF4LWJ1dHRvbiB7CisgICAgZGlzcGxheTogbm9uZTsKK30KKwordmlk
ZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIgeworICAgIHBvc2l0aW9uOiBy
ZWxhdGl2ZTsKKyAgICB3aWR0aDogMTAwJTsKKyAgICBvdmVyZmxvdzogaGlkZGVuOworICAgIHBh
ZGRpbmctYm90dG9tOiA1cHg7CisKKyAgICBmb250OiAyMnB4IHNhbnMtc2VyaWY7CisgICAgdGV4
dC1hbGlnbjogY2VudGVyOworICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpOworCisg
ICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsKKyAgICB3b3JkLXNwYWNpbmc6IG5vcm1hbDsKKyAg
ICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsKKyAgICB0ZXh0LWluZGVudDogMDsKKyAgICB0ZXh0LWRl
Y29yYXRpb246IG5vbmU7CisgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CisgICAgLXdlYmtpdC11
c2VyLXNlbGVjdDogbm9uZTsKKyAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkOworCisgICAgZmxl
eDogMSAxOworfQorCit2aWRlbzo6Y3VlIHsKKyAgICBkaXNwbGF5OiBpbmxpbmU7CisKKyAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7CisgICAgcGFkZGluZzogMnB4IDJw
eDsKK30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1yZWdpb24geworICAgIHBv
c2l0aW9uOiBhYnNvbHV0ZTsKKyAgICBsaW5lLWhlaWdodDogNS4zM3ZoOworICAgIHdyaXRpbmct
bW9kZTogaG9yaXpvbnRhbC10YjsKKyAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7
CisgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7CisgICAgd29yZC13cmFwOiBicmVh
ay13b3JkOworICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7CisgICAgb3ZlcmZsb3c6IGhp
ZGRlbjsKK30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1yZWdpb24tY29udGFp
bmVyIHsKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisKKyAgICBkaXNwbGF5OiBmbGV4OworICAg
IGZsZXgtZmxvdzogY29sdW1uOworICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Cit9CisKK3Zp
ZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stcmVnaW9uLWNvbnRhaW5lci5zY3JvbGxpbmcg
eworICAgIHRyYW5zaXRpb246IHRvcCA0MzNtcyBsaW5lYXI7Cit9CisKKwordmlkZW86Oi13ZWJr
aXQtbWVkaWEtdGV4dC10cmFjay1kaXNwbGF5IHsKKyAgICBwb3NpdGlvbjogYWJzb2x1dGU7Cisg
ICAgb3ZlcmZsb3c6IGhpZGRlbjsKKyAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7CisgICAgLXdl
YmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OworICAgIGZsZXg6IDAgMCBhdXRvOworfQordmlk
ZW86OmN1ZSg6ZnV0dXJlKSB7CisgICAgY29sb3I6IGdyYXk7Cit9CisKK3ZpZGVvOjotd2Via2l0
LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIGIgeworICAgIGZvbnQtd2VpZ2h0OiBib2xkOwor
fQorCit2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciB1IHsKKyAgICB0
ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsKK30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4
dC10cmFjay1jb250YWluZXIgaSB7CisgICAgZm9udC1zdHlsZTogaXRhbGljOworfQorCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0VkaXRvci5jcHAKaW5kZXggMmQ3MjA4ZDUwMDVlYzlhM2M0MjA5NjA5ODM5YmQ0
MWMwMzhlNTNhMi4uOGIyMjAxYjljN2Q5ZDhjOTk3NWRjODAzMzM3ZTAzZTA2MDM0OGQ3NyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcApAQCAtNDM1LDcgKzQzNSw3IEBAIFN0cmluZyBFZGl0
b3I6OnBsYWluVGV4dEZyb21QYXN0ZWJvYXJkKGNvbnN0IFBhc3RlYm9hcmRQbGFpblRleHQmIHRl
eHQpCiAKICNlbmRpZgogCi0jaWYgIVBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKEVGTCkKKyNp
ZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZPUk0oTklYKQogdm9p
ZCBFZGl0b3I6OnBhc3RlV2l0aFBhc3RlYm9hcmQoUGFzdGVib2FyZCogcGFzdGVib2FyZCwgYm9v
bCBhbGxvd1BsYWluVGV4dCkKIHsKICAgICBSZWZQdHI8UmFuZ2U+IHJhbmdlID0gc2VsZWN0ZWRS
YW5nZSgpOwpAQCAtMTA2MSw3ICsxMDYxLDcgQEAgdm9pZCBFZGl0b3I6OmN1dCgpCiAgICAgICAg
IGlmIChlbmNsb3NpbmdUZXh0Rm9ybUNvbnRyb2wobV9mcmFtZS5zZWxlY3Rpb24oKS5zdGFydCgp
KSkKICAgICAgICAgICAgIFBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0ZSgpLT53cml0
ZVBsYWluVGV4dChzZWxlY3RlZFRleHRGb3JDbGlwYm9hcmQoKSwgY2FuU21hcnRDb3B5T3JEZWxl
dGUoKSA/IFBhc3RlYm9hcmQ6OkNhblNtYXJ0UmVwbGFjZSA6IFBhc3RlYm9hcmQ6OkNhbm5vdFNt
YXJ0UmVwbGFjZSk7CiAgICAgICAgIGVsc2UgewotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZP
Uk0oRUZMKQorI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShO
SVgpCiAgICAgICAgICAgICB3cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgqUGFzdGVib2FyZDo6
Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCkpOwogI2Vsc2UKICAgICAgICAgICAgIC8vIEZJWE1FOiBD
b252ZXJ0IGFsbCBvdGhlciBwbGF0Zm9ybXMgdG8gbWF0Y2ggTWFjIGFuZCBkZWxldGUgdGhpcy4K
QEAgLTEwODgsMTMgKzEwODgsMTMgQEAgdm9pZCBFZGl0b3I6OmNvcHkoKQogICAgICAgICAgICAg
Y2FuU21hcnRDb3B5T3JEZWxldGUoKSA/IFBhc3RlYm9hcmQ6OkNhblNtYXJ0UmVwbGFjZSA6IFBh
c3RlYm9hcmQ6OkNhbm5vdFNtYXJ0UmVwbGFjZSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgaWYg
KEhUTUxJbWFnZUVsZW1lbnQqIGltYWdlRWxlbWVudCA9IGltYWdlRWxlbWVudEZyb21JbWFnZURv
Y3VtZW50KGRvY3VtZW50KCkpKSB7Ci0jaWYgKFBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKElP
UykpIHx8IFBMQVRGT1JNKEVGTCkKKyNpZiAoUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oSU9T
KSkgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCiAgICAgICAgICAgICB3cml0ZUlt
YWdlVG9QYXN0ZWJvYXJkKCpQYXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKSwgKmlt
YWdlRWxlbWVudCwgZG9jdW1lbnQoKS51cmwoKSwgZG9jdW1lbnQoKS50aXRsZSgpKTsKICNlbHNl
CiAgICAgICAgICAgICBQYXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKS0+d3JpdGVJ
bWFnZSgqaW1hZ2VFbGVtZW50LCBkb2N1bWVudCgpLnVybCgpLCBkb2N1bWVudCgpLnRpdGxlKCkp
OwogI2VuZGlmCiAgICAgICAgIH0gZWxzZSB7Ci0jaWYgKFBMQVRGT1JNKE1BQykgJiYgIVBMQVRG
T1JNKElPUykpIHx8IFBMQVRGT1JNKEVGTCkKKyNpZiAoUExBVEZPUk0oTUFDKSAmJiAhUExBVEZP
Uk0oSU9TKSkgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCiAgICAgICAgICAgICB3
cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgqUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBh
c3RlKCkpOwogI2Vsc2UKICAgICAgICAgICAgIC8vIEZJWE1FOiBDb252ZXJ0IGFsbCBvdGhlciBw
bGF0Zm9ybXMgdG8gbWF0Y2ggTWFjIGFuZCBkZWxldGUgdGhpcy4KQEAgLTExOTcsNyArMTE5Nyw3
IEBAIHZvaWQgRWRpdG9yOjpjb3B5SW1hZ2UoY29uc3QgSGl0VGVzdFJlc3VsdCYgcmVzdWx0KQog
ICAgIGlmICh1cmwuaXNFbXB0eSgpKQogICAgICAgICB1cmwgPSByZXN1bHQuYWJzb2x1dGVJbWFn
ZVVSTCgpOwogCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwpCisjaWYgUExBVEZP
Uk0oTUFDKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKICAgICB3cml0ZUltYWdl
VG9QYXN0ZWJvYXJkKCpQYXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKSwgKmVsZW1l
bnQsIHVybCwgcmVzdWx0LmFsdERpc3BsYXlTdHJpbmcoKSk7CiAjZWxzZQogICAgIFBhc3RlYm9h
cmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0ZSgpLT53cml0ZUltYWdlKCplbGVtZW50LCB1cmwsIHJl
c3VsdC5hbHREaXNwbGF5U3RyaW5nKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRp
dGluZy9FZGl0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgKaW5kZXggNzE3
MGI0MWEwNjFhZjkwMTc4YjQzODMxYmZiY2Y1YjBhYzkyZDliMC4uY2UwM2NjNTBmOGQ1YzE4OGUw
ZGNlNzMzN2RkNDZlMWFhODk4N2MyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9FZGl0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCkBAIC00MDks
NyArNDA5LDcgQEAgcHVibGljOgogICAgIFBhc3NSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gd2Vi
Q29udGVudEZyb21QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmLCBSYW5nZSYgY29udGV4dCwgYm9vbCBh
bGxvd1BsYWluVGV4dCwgYm9vbCYgY2hvc2VQbGFpblRleHQpOwogI2VuZGlmCiAKLSNpZiBQTEFU
Rk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JN
KEVGTCkgfHwgUExBVEZPUk0oTklYKQogICAgIHZvaWQgd3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9h
cmQoUGFzdGVib2FyZCYpOwogICAgIHZvaWQgd3JpdGVJbWFnZVRvUGFzdGVib2FyZChQYXN0ZWJv
YXJkJiwgRWxlbWVudCYgaW1hZ2VFbGVtZW50LCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHRp
dGxlKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFz
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oCmluZGV4
IGM0MjFhZWVjMDk5OTFhNjU3OWY2NWZmZDQ4OGJjNTQ5OWY5NTI1YTMuLjZiNTAzMTkyZjJhYTVl
NGMyZmIwNjljYzhkNWE0MThkMmZkM2NhYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTENhbnZhc0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52
YXNFbGVtZW50LmgKQEAgLTMzLDcgKzMzLDcgQEAKICNpbmNsdWRlICJJbnRTaXplLmgiCiAjaW5j
bHVkZSA8d3RmL0ZvcndhcmQuaD4KIAotI2lmIFVTRShDRykKKyNpZiBVU0UoQ0cpIHx8IFBMQVRG
T1JNKE5JWCkKICNkZWZpbmUgRGVmYXVsdEludGVycG9sYXRpb25RdWFsaXR5IEludGVycG9sYXRp
b25Mb3cKICNlbHNlCiAjZGVmaW5lIERlZmF1bHRJbnRlcnBvbGF0aW9uUXVhbGl0eSBJbnRlcnBv
bGF0aW9uRGVmYXVsdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlD
b250cm9sbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5j
cHAKaW5kZXggZDU2NTk4ZjQ5NDJhZGRjODEwMGJmZTA5NTcxMTM1NmViNTc3YjQxMS4uY2JkMmVm
MzUwZGZlMmRlNDllMzI1MWRkZDkzNjE0YWFjM2ZiNTczNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuY3BwCkBAIC0xMzksMTEgKzEzOSwyMCBAQCB2b2lkIEhp
c3RvcnlDb250cm9sbGVyOjpyZXN0b3JlU2Nyb2xsUG9zaXRpb25BbmRWaWV3U3RhdGUoKQogICAg
ICAgICAgICAgICAgIHNjcm9sbGluZ0Nvb3JkaW5hdG9yLT5mcmFtZVZpZXdSb290TGF5ZXJEaWRD
aGFuZ2Uodmlldyk7CiAgICAgICAgIH0KIAorICAgICAgICBkb3VibGUgY3VycmVudFNjYWxlRmFj
dG9yID0gbV9jdXJyZW50SXRlbS0+cGFnZVNjYWxlRmFjdG9yKCk7CisgICAgICAgIEludFBvaW50
IGN1cnJlbnRTY3JvbGxQb2ludCA9IG1fY3VycmVudEl0ZW0tPnNjcm9sbFBvaW50KCk7CisjaWYg
UExBVEZPUk0oTklYKQorICAgICAgICBkb3VibGUgcHJldmlvdXNTY2FsZUZhY3RvciA9IG1fcHJl
dmlvdXNJdGVtID8gbV9wcmV2aW91c0l0ZW0tPnBhZ2VTY2FsZUZhY3RvcigpIDogY3VycmVudFNj
YWxlRmFjdG9yOworICAgICAgICBJbnRQb2ludCBwcmV2aW91c1Njcm9sbFBvaW50ID0gbV9wcmV2
aW91c0l0ZW0gPyBtX3ByZXZpb3VzSXRlbS0+c2Nyb2xsUG9pbnQoKSA6IGN1cnJlbnRTY3JvbGxQ
b2ludDsKKworICAgICAgICBpZiAocHJldmlvdXNTY2FsZUZhY3RvciAhPSBjdXJyZW50U2NhbGVG
YWN0b3IgfHwgcHJldmlvdXNTY3JvbGxQb2ludCAhPSBjdXJyZW50U2Nyb2xsUG9pbnQpIHsKKyNl
bHNlCiAgICAgICAgIGlmICghdmlldy0+d2FzU2Nyb2xsZWRCeVVzZXIoKSkgewotICAgICAgICAg
ICAgaWYgKHBhZ2UgJiYgbV9mcmFtZS5pc01haW5GcmFtZSgpICYmIG1fY3VycmVudEl0ZW0tPnBh
Z2VTY2FsZUZhY3RvcigpKQotICAgICAgICAgICAgICAgIHBhZ2UtPnNldFBhZ2VTY2FsZUZhY3Rv
cihtX2N1cnJlbnRJdGVtLT5wYWdlU2NhbGVGYWN0b3IoKSwgbV9jdXJyZW50SXRlbS0+c2Nyb2xs
UG9pbnQoKSk7CisjZW5kaWYgLy8gUExBVEZPUk0oTklYKQorICAgICAgICAgICAgaWYgKHBhZ2Ug
JiYgbV9mcmFtZS5pc01haW5GcmFtZSgpICYmIGN1cnJlbnRTY2FsZUZhY3RvcikKKyAgICAgICAg
ICAgICAgICBwYWdlLT5zZXRQYWdlU2NhbGVGYWN0b3IoY3VycmVudFNjYWxlRmFjdG9yLCBjdXJy
ZW50U2Nyb2xsUG9pbnQpOwogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHZpZXct
PnNldFNjcm9sbFBvc2l0aW9uKG1fY3VycmVudEl0ZW0tPnNjcm9sbFBvaW50KCkpOworICAgICAg
ICAgICAgICAgIHZpZXctPnNldFNjcm9sbFBvc2l0aW9uKGN1cnJlbnRTY3JvbGxQb2ludCk7CiAg
ICAgICAgIH0KICAgICB9CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50
SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXgg
Y2QwYmY1MzQ2OTY2YmU5YzE1ZTBkZDIzZDdmNjY0YjIzMDk1NzY5Mi4uNDRhNjA1YWY4MmE5MGEx
YTQ2YTQ1NmM2OWI0ZTc0YzRlZTZiYjAyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVy
LmNwcApAQCAtMjU2NSw2ICsyNTY1LDM2IEBAIHZvaWQgRXZlbnRIYW5kbGVyOjpkZWZhdWx0V2hl
ZWxFdmVudEhhbmRsZXIoTm9kZSogc3RhcnROb2RlLCBXaGVlbEV2ZW50KiB3aGVlbEV2CiAgICAg
ICAgIG1fcHJldmlvdXNXaGVlbFNjcm9sbGVkRWxlbWVudCA9IHN0b3BFbGVtZW50OwogfQogCisj
aWYgUExBVEZPUk0oTklYKQordm9pZCBFdmVudEhhbmRsZXI6OmhhbmRsZVNpbmdsZVRhcChkb3Vi
bGUgdGltZXN0YW1wLCBjb25zdCBQbGF0Zm9ybVRvdWNoUG9pbnQmIHBvaW50KQoreworICAgIElu
dFBvaW50IHRhcmdldFBvaW50OworI2lmIEVOQUJMRShUT1VDSF9BREpVU1RNRU5UKQorICAgIGJv
b2wgcG9zaXRpb25BZGp1c3RlZCA9IGZhbHNlOworICAgIGlmIChtX2ZyYW1lLnNldHRpbmdzKCku
dG91Y2hBZGp1c3RtZW50RW5hYmxlZCgpKSB7CisgICAgICAgIE5vZGUqIHRhcmdldE5vZGUgPSAw
OworICAgICAgICBwb3NpdGlvbkFkanVzdGVkID0gYmVzdENsaWNrYWJsZU5vZGVGb3JUb3VjaFBv
aW50KHBvaW50LnBvcygpLCBJbnRTaXplKHBvaW50LnJhZGl1c1goKSwgcG9pbnQucmFkaXVzWSgp
KSwgdGFyZ2V0UG9pbnQsIHRhcmdldE5vZGUpOworICAgIH0KKyAgICBpZiAoIXBvc2l0aW9uQWRq
dXN0ZWQpCisgICAgICAgIHRhcmdldFBvaW50ID0gcG9pbnQucG9zKCk7CisjZWxzZQorICAgIHRh
cmdldFBvaW50ID0gcG9pbnQucG9zKCk7CisjZW5kaWYKKworICAgIFBsYXRmb3JtTW91c2VFdmVu
dCBmYWtlTW91c2VNb3ZlKHRhcmdldFBvaW50LCBwb2ludC5zY3JlZW5Qb3MoKSwgTm9CdXR0b24s
IFBsYXRmb3JtRXZlbnQ6Ok1vdXNlTW92ZWQsIC8qIGNsaWNrQ291bnQgKi8gMCwKKyAgICBmYWxz
ZSAvKiBzaGlmdCAqLywgZmFsc2UgLyogY3RybCAqLywgZmFsc2UgLyogYWx0ICovLCBmYWxzZSAv
KiBtZXRhICovLCB0aW1lc3RhbXApOworICAgIG1vdXNlTW92ZWQoZmFrZU1vdXNlTW92ZSk7CisK
KyAgICBQbGF0Zm9ybU1vdXNlRXZlbnQgZmFrZU1vdXNlRG93bih0YXJnZXRQb2ludCwgcG9pbnQu
c2NyZWVuUG9zKCksIExlZnRCdXR0b24sIFBsYXRmb3JtRXZlbnQ6Ok1vdXNlUHJlc3NlZCwgMSAv
KiB0YXBDb3VudCAqLywKKyAgICBmYWxzZSAvKiBzaGlmdCAqLywgZmFsc2UgLyogY3RybCAqLywg
ZmFsc2UgLyogYWx0ICovLCBmYWxzZSAvKiBtZXRhICovLCB0aW1lc3RhbXApOworICAgIGhhbmRs
ZU1vdXNlUHJlc3NFdmVudChmYWtlTW91c2VEb3duKTsKKworICAgIFBsYXRmb3JtTW91c2VFdmVu
dCBmYWtlTW91c2VVcCh0YXJnZXRQb2ludCwgcG9pbnQuc2NyZWVuUG9zKCksIExlZnRCdXR0b24s
IFBsYXRmb3JtRXZlbnQ6Ok1vdXNlUmVsZWFzZWQsIDEgLyogdGFwQ291bnQgKi8sCisgICAgZmFs
c2UgLyogc2hpZnQgKi8sIGZhbHNlIC8qIGN0cmwgKi8sIGZhbHNlIC8qIGFsdCAqLywgZmFsc2Ug
LyogbWV0YSAqLywgdGltZXN0YW1wKTsKKyAgICBoYW5kbGVNb3VzZVJlbGVhc2VFdmVudChmYWtl
TW91c2VVcCk7Cit9CisjZW5kaWYgLy8gUExBVEZPUk0oTklYKQorCiAjaWYgRU5BQkxFKFRPVUNI
X0FESlVTVE1FTlQpCiBib29sIEV2ZW50SGFuZGxlcjo6YmVzdENsaWNrYWJsZU5vZGVGb3JUb3Vj
aFBvaW50KGNvbnN0IEludFBvaW50JiB0b3VjaENlbnRlciwgY29uc3QgSW50U2l6ZSYgdG91Y2hS
YWRpdXMsIEludFBvaW50JiB0YXJnZXRQb2ludCwgTm9kZSomIHRhcmdldE5vZGUpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9FdmVudEhhbmRsZXIuaAppbmRleCAzNGMwMDk1OTQxZTgwMTk1OTE5MjgxN2YyMjIz
ODEzOGQzMzA5ZDY2Li45MWJkMmM3MjIzMmU3MDQ4ODE5NGFmOTg4NjI0NDE5N2VkMTY0MWQ1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKQEAgLTcwLDYgKzcwLDkgQEAgY2xhc3MgTm9k
ZTsKIGNsYXNzIE9wdGlvbmFsQ3Vyc29yOwogY2xhc3MgUGxhdGZvcm1LZXlib2FyZEV2ZW50Owog
Y2xhc3MgUGxhdGZvcm1Ub3VjaEV2ZW50OworI2lmIFBMQVRGT1JNKE5JWCkKK2NsYXNzIFBsYXRm
b3JtVG91Y2hQb2ludDsKKyNlbmRpZgogY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50OwogY2xhc3Mg
UmVuZGVyRWxlbWVudDsKIGNsYXNzIFJlbmRlckxheWVyOwpAQCAtMTc1LDYgKzE3OCw5IEBAIHB1
YmxpYzoKICAgICB2b2lkIGRlZmF1bHRXaGVlbEV2ZW50SGFuZGxlcihOb2RlKiwgV2hlZWxFdmVu
dCopOwogICAgIGJvb2wgaGFuZGxlUGFzdGVHbG9iYWxTZWxlY3Rpb24oY29uc3QgUGxhdGZvcm1N
b3VzZUV2ZW50Jik7CiAKKyNpZiBQTEFURk9STShOSVgpCisgICAgdm9pZCBoYW5kbGVTaW5nbGVU
YXAoZG91YmxlIHRpbWVzdGFtcCwgY29uc3QgUGxhdGZvcm1Ub3VjaFBvaW50Jik7CisjZW5kaWYK
ICNpZiBFTkFCTEUoVE9VQ0hfQURKVVNUTUVOVCkKICAgICBib29sIGJlc3RDbGlja2FibGVOb2Rl
Rm9yVG91Y2hQb2ludChjb25zdCBJbnRQb2ludCYgdG91Y2hDZW50ZXIsIGNvbnN0IEludFNpemUm
IHRvdWNoUmFkaXVzLCBJbnRQb2ludCYgdGFyZ2V0UG9pbnQsIE5vZGUqJiB0YXJnZXROb2RlKTsK
ICAgICBib29sIGJlc3RDb250ZXh0TWVudU5vZGVGb3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50
JiB0b3VjaENlbnRlciwgY29uc3QgSW50U2l6ZSYgdG91Y2hSYWRpdXMsIEludFBvaW50JiB0YXJn
ZXRQb2ludCwgTm9kZSomIHRhcmdldE5vZGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vQ3Vyc29yLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaAppbmRl
eCBmMjBmZGZhYjQ4YzFhMTdiZTY4ODhmNmM3ZjBhYTI1ZTg1NTdkZGU2Li4zMmNkZWRkYjhiMzJi
MTE1MTEyMTQ3YmQ0ZmM0NjFiMzNmMDBjZGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9DdXJzb3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaApA
QCAtNzcsOCArNzcsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIHR5cGVkZWYgTlNDdXJz
b3IgKlBsYXRmb3JtQ3Vyc29yOwogI2VsaWYgUExBVEZPUk0oR1RLKQogICAgIHR5cGVkZWYgR1Jl
ZlB0cjxHZGtDdXJzb3I+IFBsYXRmb3JtQ3Vyc29yOwotI2VsaWYgUExBVEZPUk0oRUZMKSB8fCBQ
TEFURk9STShOSVgpCisjZWxpZiBQTEFURk9STShFRkwpCiAgICAgdHlwZWRlZiBjb25zdCBjaGFy
KiBQbGF0Zm9ybUN1cnNvcjsKKyNlbGlmIFBMQVRGT1JNKE5JWCkKKyAgICB0eXBlZGVmIHVuc2ln
bmVkIFBsYXRmb3JtQ3Vyc29yOwogI2VsaWYgUExBVEZPUk0oQkxBQ0tCRVJSWSkKICAgICB0eXBl
ZGVmIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpCbGFja0JlcnJ5Q3Vyc29yIFBsYXRmb3JtQ3Vyc29y
OwogI2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZy
YW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5oCmluZGV4IDg5
NDhmN2M5MDQ0NDU1ZGRkNDJkMzNkYzAxZGQxM2VhMmVlY2Q2NWUuLjkyNGQ0NzQ5YTUyMDhmNjQw
OWM2MDkxNjkzMWFiZjM5YzZiMDUwY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2F1ZGlvL0ZGVEZyYW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
RkZURnJhbWUuaApAQCAtMTg0LDcgKzE4NCw2IEBAIHByaXZhdGU6CiAjZW5kaWYgLy8gVVNFKFdF
QkFVRElPX0lQUCkKIAogI2lmIFBMQVRGT1JNKE5JWCkKLSAgICB2b2lkIHNjYWxlUGxhbmFyRGF0
YShmbG9hdCBzY2FsZSk7CiAgICAgT3duUHRyPE5peDo6RkZURnJhbWU+IG1fZmZ0RnJhbWU7CiAj
ZW5kaWYgLy8gUExBVEZPUk0oTklYKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9hdWRpby9uaXgvQXVkaW9CdXNOaXguY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
YXVkaW8vbml4L0F1ZGlvQnVzTml4LmNwcAppbmRleCA3MjEwOTkzNTNhMTExMmY2ZjJlMTM2N2M1
YzQ0MWJmYzlmNDc1N2I5Li5hNGI3NjE3NGQ3YTU3MTcxNTY3YTkxY2Q4MTlmODU5MDUwMjBkYmRm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9uaXgvQXVkaW9CdXNO
aXguY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL25peC9BdWRpb0J1c05p
eC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJBdWRpb0J1cy5oIgogCiAjaW5jbHVk
ZSAiQXVkaW9GaWxlUmVhZGVyLmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbS5oIgogI2luY2x1ZGUg
PGNzdGRpbz4KICNpbmNsdWRlIDxwdWJsaWMvTXVsdGlDaGFubmVsUENNRGF0YS5oPgogI2luY2x1
ZGUgPHB1YmxpYy9QbGF0Zm9ybS5oPgpAQCAtNTMsOSArNTQsMTEgQEAgUGFzc1JlZlB0cjxBdWRp
b0J1cz4gQXVkaW9CdXM6OmxvYWRQbGF0Zm9ybVJlc291cmNlKGNvbnN0IGNoYXIqIG5hbWUsIGZs
b2F0IHNhbXAKIHsKICAgICAvLyBGSVhNRTogVGhpcyBhc3N1bWVzIHRoZSBmaWxlIHN5c3RlbSB1
c2VzIGxhdGluMSBvciBVVEYtOCBlbmNvZGluZywgYnV0IHRoaXMgY29tbWVudCBhbHNvIGFzc3Vt
ZXMKICAgICAvLyB0aGF0IG5vbi1hc2NpaSBmaWxlIG5hbWVzIHdvdWxkIGFwcGVhciBoZXJlLgot
ICAgIGNvbnN0IENTdHJpbmcgYWJzb2x1dGVGaWxlbmFtZShtYWtlU3RyaW5nKERBVEFfRElSLCAi
L3dlYmF1ZGlvL3Jlc291cmNlcy8iLCBuYW1lLCAiLndhdiIpLnV0ZjgoKSk7CisgICAgQ1N0cmlu
ZyBhYnNvbHV0ZUZpbGVuYW1lKG1ha2VTdHJpbmcoREFUQV9ESVIsICIvd2ViYXVkaW8vcmVzb3Vy
Y2VzLyIsIG5hbWUsICIud2F2IikudXRmOCgpKTsKICAgICBzdHJ1Y3Qgc3RhdCBzdGF0RGF0YTsK
ICAgICBpZiAoOjpzdGF0KGFic29sdXRlRmlsZW5hbWUuZGF0YSgpLCAmc3RhdERhdGEpID09IC0x
KQorICAgICAgICBhYnNvbHV0ZUZpbGVuYW1lID0gbWFrZVN0cmluZyhVTklOU1RBTExFRF9BVURJ
T19SRVNPVVJDRVNfRElSLCAiLyIsIG5hbWUsICIud2F2IikudXRmOCgpOworICAgIGlmICg6OnN0
YXQoYWJzb2x1dGVGaWxlbmFtZS5kYXRhKCksICZzdGF0RGF0YSkgPT0gLTEpCiAgICAgICAgIHJl
dHVybiBudWxscHRyOwogCiAgICAgRklMRSogZmlsZSA9IGZvcGVuKGFic29sdXRlRmlsZW5hbWUu
ZGF0YSgpLCAicmIiKTsKQEAgLTY0LDcgKzY3LDcgQEAgUGFzc1JlZlB0cjxBdWRpb0J1cz4gQXVk
aW9CdXM6OmxvYWRQbGF0Zm9ybVJlc291cmNlKGNvbnN0IGNoYXIqIG5hbWUsIGZsb2F0IHNhbXAK
IAogICAgIFdURjo6VmVjdG9yPGNoYXI+IGZpbGVDb250ZW50czsKICAgICBmaWxlQ29udGVudHMu
cmVzaXplKHN0YXREYXRhLnN0X3NpemUpOwotICAgIHNpemVfdCBieXRlc1JlYWQgPSBmcmVhZCgm
ZmlsZUNvbnRlbnRzWzBdLCBmaWxlQ29udGVudHMuc2l6ZSgpLCAxLCBmaWxlKTsKKyAgICBzaXpl
X3QgYnl0ZXNSZWFkID0gZnJlYWQoJmZpbGVDb250ZW50c1swXSwgMSwgZmlsZUNvbnRlbnRzLnNp
emUoKSwgZmlsZSk7CiAgICAgZmNsb3NlKGZpbGUpOwogICAgIGlmIChieXRlc1JlYWQgPCBmaWxl
Q29udGVudHMuc2l6ZSgpKQogICAgICAgICBmaWxlQ29udGVudHMucmVzaXplKGJ5dGVzUmVhZCk7
CkBAIC04OCwzICs5MSw0IEBAIFBhc3NSZWZQdHI8QXVkaW9CdXM+IGNyZWF0ZUJ1c0Zyb21Jbk1l
bW9yeUF1ZGlvRmlsZShjb25zdCB2b2lkKiBkYXRhLCBzaXplX3QgZGF0CiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVRElPKQorCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HTENvbnRleHQuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oCmluZGV4IDAzYjU3YjVlODI0NDQ4OGE1
ZjllNjIyZjcwNjQ1OThkNjI4ZjVmMjMuLjRlOWQzOWUzMTVkYTlhNTgyZjNiYTAwYWYzZWJhNGU2
ZjcxZDA3ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dM
Q29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4
dC5oCkBAIC0yNSw3ICsyNSw3IEBACiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAjaW5j
bHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KIAotI2lmIFVTRShFR0wpICYmICFQTEFURk9STShHVEsp
CisjaWYgVVNFKEVHTCkgJiYgIVBMQVRGT1JNKEdUSykgJiYgIVBMQVRGT1JNKE5JWCkKICNpbmNs
dWRlICJlZ2xwbGF0Zm9ybS5oIgogdHlwZWRlZiBFR0xOYXRpdmVXaW5kb3dUeXBlIEdMTmF0aXZl
V2luZG93VHlwZTsKICNlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90ZXhtYXAvVGV4dHVyZU1hcHBlckxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyTGF5ZXIuY3BwCmluZGV4IDdlN2Jh
YmJjZDBjOTFkZTRiMjcyMjYzODI1NWU2NDU1OWE3OWNiNzMuLjg5NzY4MDhmNGZkMzUzNmQyZDQ0
YTNlZDAyYTk5NGZiNTdjZDViYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyTGF5ZXIuY3BwCkBAIC03
MzYsNiArNzM2LDE4IEBAIHRlbXBsYXRlPGNsYXNzIEhpdFRlc3RDb25kaXRpb24+IFRleHR1cmVN
YXBwZXJMYXllciogVGV4dHVyZU1hcHBlckxheWVyOjpoaXRUZXN0CiAgICAgcmV0dXJuIGNvbmRp
dGlvbih0aGlzLCBwb2ludCkgPyB0aGlzIDogMDsKIH0KIAorI2lmIFBMQVRGT1JNKE5JWCkKK1Rl
eHR1cmVNYXBwZXJMYXllciogVGV4dHVyZU1hcHBlckxheWVyOjpnZXRBbmNlc3RvclNjcm9sbGFi
bGVMYXllcigpIGNvbnN0Cit7CisgICAgZm9yIChUZXh0dXJlTWFwcGVyTGF5ZXIqIHBhcmVudCA9
IG1fcGFyZW50OyBwYXJlbnQ7IHBhcmVudCA9IHBhcmVudC0+bV9wYXJlbnQpIHsKKyAgICAgICAg
aWYgKHBhcmVudC0+aXNTY3JvbGxhYmxlKCkpCisgICAgICAgICAgICByZXR1cm4gcGFyZW50Owor
ICAgIH0KKworICAgIHJldHVybiAwOworfQorI2VuZGlmIC8vIFBMQVRGT1JNKE5JWCkKKwogYm9v
bCBUZXh0dXJlTWFwcGVyTGF5ZXI6OnNjcm9sbGFibGVMYXllckhpdFRlc3RDb25kaXRpb24oVGV4
dHVyZU1hcHBlckxheWVyKiBsYXllciwgY29uc3QgRmxvYXRQb2ludCYgcG9pbnQpCiB7CiAgICAg
Ly8gc2Nyb2xsaW5nIGxheWVyJ3MgbV9wYXJlbnQtPm1fcGFyZW50LCB0aGUgcGFyZW50IG9mIHRo
ZSBzY3JvbGxpbmcgbGF5ZXMsIGlzIHRoZSBvbmUgdGhhdCBkZWZpbmVzIHRoZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVNYXBwZXJM
YXllci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL1RleHR1cmVN
YXBwZXJMYXllci5oCmluZGV4IDdiNjJiMGEwYjdkZWQxNDA4ODc3ODgzNzYxNTVjYzZlNTA4ZmEy
MmQuLjgzYjRjNDZmNTIwMTBmYjk0NTBlZDFiYTA0MGJlZjZjNDRmZmI4YjQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9UZXh0dXJlTWFwcGVyTGF5
ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvVGV4dHVy
ZU1hcHBlckxheWVyLmgKQEAgLTczLDYgKzczLDkgQEAgcHVibGljOgogICAgIHZvaWQgZGlkQ29t
bWl0U2Nyb2xsT2Zmc2V0KGNvbnN0IEludFNpemUmKTsKICAgICB2b2lkIHNldElzU2Nyb2xsYWJs
ZShib29sIGlzU2Nyb2xsYWJsZSkgeyBtX2lzU2Nyb2xsYWJsZSA9IGlzU2Nyb2xsYWJsZTsgfQog
ICAgIGJvb2wgaXNTY3JvbGxhYmxlKCkgY29uc3QgeyByZXR1cm4gbV9pc1Njcm9sbGFibGU7IH0K
KyNpZiBQTEFURk9STShOSVgpCisgICAgVGV4dHVyZU1hcHBlckxheWVyKiBnZXRBbmNlc3RvclNj
cm9sbGFibGVMYXllcigpIGNvbnN0OworI2VuZGlmIC8vIFBMQVRGT1JNKE5JWCkKIAogICAgIFRl
eHR1cmVNYXBwZXIqIHRleHR1cmVNYXBwZXIoKSBjb25zdDsKICAgICB2b2lkIHNldFRleHR1cmVN
YXBwZXIoVGV4dHVyZU1hcHBlciogdGV4bWFwKSB7IG1fdGV4dHVyZU1hcHBlciA9IHRleG1hcDsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nv
b3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1Nj
ZW5lLmNwcAppbmRleCA4NjYyNzg4Y2M5MzQ2OWM1ZmYyODdlOTQxZjY2ZmEwMTU3MmIxMDU1Li42
MGYzY2I1OTU2YWU1YzIwYjY5N2M5MDI5ZTc1ZWI5M2I2MTk0YWRmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0
ZWRHcmFwaGljc1NjZW5lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmNwcApAQCAtNjAs
NiArNjAsOSBAQCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OkNvb3JkaW5hdGVkR3JhcGhpY3NT
Y2VuZShDb29yZGluYXRlZEdyYXBoaWNzU2NlbmVDbGllbgogICAgICwgbV9yb290TGF5ZXJJRChJ
bnZhbGlkQ29vcmRpbmF0ZWRMYXllcklEKQogICAgICwgbV9iYWNrZ3JvdW5kQ29sb3IoQ29sb3I6
OndoaXRlKQogICAgICwgbV9zZXREcmF3c0JhY2tncm91bmQoZmFsc2UpCisjaWYgUExBVEZPUk0o
TklYKQorICAgICwgbV9zdGF0ZUxvY2tlZChmYWxzZSkKKyNlbmRpZiAvLyBQTEFURk9STShOSVgp
CiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIH0KQEAgLTYwNyw4ICs2MTAsMjcgQEAg
dm9pZCBDb29yZGluYXRlZEdyYXBoaWNzU2NlbmU6OmNvbW1pdFBlbmRpbmdCYWNraW5nU3RvcmVP
cGVyYXRpb25zKCkKICAgICBtX2JhY2tpbmdTdG9yZXNXaXRoUGVuZGluZ0J1ZmZlcnMuY2xlYXIo
KTsKIH0KIAorI2lmIFBMQVRGT1JNKE5JWCkKK3ZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5l
Ojpjb21taXRQZW5kaW5nU3RhdGVDaGFuZ2UoKQoreworICAgIGlmIChtX3N0YXRlTG9ja2VkIHx8
ICFtX3BlbmRpbmdTdGF0ZUNoYW5nZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgT3duUHRyPENv
b3JkaW5hdGVkR3JhcGhpY3NTdGF0ZT4gcGVuZGluZ0NoYW5nZSA9IG1fcGVuZGluZ1N0YXRlQ2hh
bmdlLnJlbGVhc2UoKTsKKyAgICBjb21taXRTY2VuZVN0YXRlKCpwZW5kaW5nQ2hhbmdlLmdldCgp
KTsKK30KKyNlbmRpZiAvLyBQTEFURk9STShOSVgpCisKIHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGlj
c1NjZW5lOjpjb21taXRTY2VuZVN0YXRlKGNvbnN0IENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZSYg
c3RhdGUpCiB7CisjaWYgUExBVEZPUk0oTklYKQorICAgIGlmIChtX3N0YXRlTG9ja2VkKSB7Cisg
ICAgICAgIEFTU0VSVCghbV9wZW5kaW5nU3RhdGVDaGFuZ2UpOworICAgICAgICBtX3BlbmRpbmdT
dGF0ZUNoYW5nZSA9IGFkb3B0UHRyKG5ldyBDb29yZGluYXRlZEdyYXBoaWNzU3RhdGUoc3RhdGUp
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyNlbmRpZiAvLyBQTEFURk9STShOSVgpCisKICAg
ICBtX3JlbmRlcmVkQ29udGVudHNTY3JvbGxQb3NpdGlvbiA9IHN0YXRlLnNjcm9sbFBvc2l0aW9u
OwogCiAgICAgY3JlYXRlTGF5ZXJzKHN0YXRlLmxheWVyc1RvQ3JlYXRlKTsKQEAgLTY1OSw2ICs2
ODEsOSBAQCB2b2lkIENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZTo6ZW5zdXJlUm9vdExheWVyKCkK
IHZvaWQgQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lOjpzeW5jUmVtb3RlQ29udGVudCgpCiB7CiAg
ICAgLy8gV2UgZW5xdWV1ZSBtZXNzYWdlcyBhbmQgZXhlY3V0ZSB0aGVtIGR1cmluZyBwYWludCwg
YXMgdGhleSByZXF1aXJlIGFuIGFjdGl2ZSBHTCBjb250ZXh0LgorI2lmIFBMQVRGT1JNKE5JWCkK
KyAgICBjb21taXRQZW5kaW5nU3RhdGVDaGFuZ2UoKTsKKyNlbmRpZiAvLyBQTEFURk9STShOSVgp
CiAgICAgZW5zdXJlUm9vdExheWVyKCk7CiAKICAgICBWZWN0b3I8RnVuY3Rpb248dm9pZCgpPiA+
IHJlbmRlclF1ZXVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvdGV4bWFwL2Nvb3JkaW5hdGVkL0Nvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZS5oCmluZGV4IDA3Y2Q1NjM0ZmNjN2Q5YTUxMTdlYWFiNzU2ZDllYzhlZTY5
YWVmODAuLjNmMGI1NzJiZDM2NTE4YmQ1NDFmMmUzYTE0OTVkNTk0NzlhZTVmYzMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcC9jb29yZGluYXRlZC9D
b29yZGluYXRlZEdyYXBoaWNzU2NlbmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy90ZXhtYXAvY29vcmRpbmF0ZWQvQ29vcmRpbmF0ZWRHcmFwaGljc1NjZW5lLmgKQEAg
LTg1LDYgKzg1LDExIEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEJhY2tncm91bmRDb2xvcihjb25z
dCBDb2xvciYpOwogICAgIHZvaWQgc2V0RHJhd3NCYWNrZ3JvdW5kKGJvb2wgZW5hYmxlKSB7IG1f
c2V0RHJhd3NCYWNrZ3JvdW5kID0gZW5hYmxlOyB9CiAKKyNpZiBQTEFURk9STShOSVgpCisgICAg
dm9pZCBsb2NrU3RhdGUoKSB7IG1fc3RhdGVMb2NrZWQgPSB0cnVlOyB9CisgICAgdm9pZCB1bmxv
Y2tTdGF0ZSgpIHsgbV9zdGF0ZUxvY2tlZCA9IGZhbHNlOyB9CisjZW5kaWYgLy8gUExBVEZPUk0o
TklYKQorCiBwcml2YXRlOgogICAgIHZvaWQgc2V0Um9vdExheWVySUQoQ29vcmRpbmF0ZWRMYXll
cklEKTsKICAgICB2b2lkIGNyZWF0ZUxheWVycyhjb25zdCBWZWN0b3I8Q29vcmRpbmF0ZWRMYXll
cklEPiYpOwpAQCAtMTUxLDYgKzE1Niw5IEBAIHByaXZhdGU6CiAgICAgdm9pZCBjcmVhdGVCYWNr
aW5nU3RvcmVJZk5lZWRlZChUZXh0dXJlTWFwcGVyTGF5ZXIqKTsKICAgICB2b2lkIHJlbW92ZUJh
Y2tpbmdTdG9yZUlmTmVlZGVkKFRleHR1cmVNYXBwZXJMYXllciopOwogICAgIHZvaWQgcmVzZXRC
YWNraW5nU3RvcmVTaXplVG9MYXllclNpemUoVGV4dHVyZU1hcHBlckxheWVyKik7CisjaWYgUExB
VEZPUk0oTklYKQorICAgIHZvaWQgY29tbWl0UGVuZGluZ1N0YXRlQ2hhbmdlKCk7CisjZW5kaWYg
Ly8gUExBVEZPUk0oTklYKQogCiAgICAgdm9pZCBkaXNwYXRjaENvbW1pdFNjcm9sbE9mZnNldCh1
aW50MzJfdCBsYXllcklELCBjb25zdCBJbnRTaXplJiBvZmZzZXQpOwogCkBAIC0xOTksNiArMjA3
LDExIEBAIHByaXZhdGU6CiAjZW5kaWYKIAogICAgIFRleHR1cmVNYXBwZXJGUFNDb3VudGVyIG1f
ZnBzQ291bnRlcjsKKworI2lmIFBMQVRGT1JNKE5JWCkKKyAgICBib29sIG1fc3RhdGVMb2NrZWQ7
CisgICAgT3duUHRyPENvb3JkaW5hdGVkR3JhcGhpY3NTdGF0ZT4gbV9wZW5kaW5nU3RhdGVDaGFu
Z2U7CisjZW5kaWYgLy8gUExBVEZPUk0oTklYKQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQpAQCAtMjA3LDQgKzIyMCwzIEBAIHByaXZhdGU6CiAKICNlbmRpZiAvLyBDb29yZGluYXRlZEdy
YXBoaWNzU2NlbmVfaAogCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25p
eC9DdXJzb3JOaXguY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L0N1cnNvck5peC5j
cHAKaW5kZXggMTc3ZWYwY2NlM2JlOTdmZWFhZDQ4ZjY3ODcwNTU2ZGI4YTExNTJjNC4uZWI4NGI5
YmNjMmM5MzkyYTFhM2NlMzYzYWRhODM2NzkzZTU0NTA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbml4L0N1cnNvck5peC5jcHAKQEAgLTYsNyArNiw3IEBACiAgKiBDb3B5cmlnaHQgKEMp
IDIwMDggS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4KICAqIENvcHlyaWdodCAoQykgMjAwOS0y
MDEwIFByb0ZVU0lPTiBlbWJlZGRlZCBzeXN0ZW1zCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDktMjAx
MCBTYW1zdW5nIEVsZWN0cm9uaWNzCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgTm9raWEgQ29ycG9y
YXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgorICogQ29weXJpZ2h0IChDKSAyMDEy
LCAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAq
CiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTM1LDggKzM1LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJDdXJzb3IuaCIKIAotI2luY2x1ZGUgIk5vdEltcGxlbWVu
dGVkLmgiCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ3Vyc29yOjpDdXJzb3IoY29uc3QgQ3Vy
c29yJiBvdGhlcikKQEAgLTYwLDYxICs1OCwxMiBAQCBDdXJzb3ImIEN1cnNvcjo6b3BlcmF0b3I9
KGNvbnN0IEN1cnNvciYgb3RoZXIpCiAgICAgcmV0dXJuICp0aGlzOwogfQogCi1zdGF0aWMgY29u
c3QgY2hhciogY3Vyc29yU3RyaW5nKEN1cnNvcjo6VHlwZSB0eXBlKQotewotICAgIHN0YXRpYyBj
b25zdCBjaGFyKiBjdXJzb3JTdHJpbmdzW10gPSB7Ci0gICAgICAgICJjdXJzb3IvcG9pbnRlciIs
Ci0gICAgICAgICJjdXJzb3IvY3Jvc3MiLAotICAgICAgICAiY3Vyc29yL2hhbmQiLAotICAgICAg
ICAiY3Vyc29yL2lfYmVhbSIsCi0gICAgICAgICJjdXJzb3Ivd2FpdCIsCi0gICAgICAgICJjdXJz
b3IvaGVscCIsCi0gICAgICAgICJjdXJzb3IvZWFzdF9yZXNpemUiLAotICAgICAgICAiY3Vyc29y
L25vcnRoX3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfZWFzdF9yZXNpemUiLAotICAg
ICAgICAiY3Vyc29yL25vcnRoX3dlc3RfcmVzaXplIiwKLSAgICAgICAgImN1cnNvci9zb3V0aF9y
ZXNpemUiLAotICAgICAgICAiY3Vyc29yL3NvdXRoX2Vhc3RfcmVzaXplIiwKLSAgICAgICAgImN1
cnNvci9zb3V0aF93ZXN0X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivd2VzdF9yZXNpemUiLAot
ICAgICAgICAiY3Vyc29yL25vcnRoX3NvdXRoX3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3IvZWFz
dF93ZXN0X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfZWFzdF9zb3V0aF93ZXN0X3Jl
c2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfd2VzdF9zb3V0aF9lYXN0X3Jlc2l6ZSIsCi0g
ICAgICAgICJjdXJzb3IvY29sdW1uX3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivcm93X3Jlc2l6
ZSIsCi0gICAgICAgICJjdXJzb3IvbWlkZGxlX3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29yL2Vh
c3RfcGFubmluZyIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfcGFubmluZyIsCi0gICAgICAgICJj
dXJzb3Ivbm9ydGhfZWFzdF9wYW5uaW5nIiwKLSAgICAgICAgImN1cnNvci9ub3J0aF93ZXN0X3Bh
bm5pbmciLAotICAgICAgICAiY3Vyc29yL3NvdXRoX3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29y
L3NvdXRoX2Vhc3RfcGFubmluZyIsCi0gICAgICAgICJjdXJzb3Ivc291dGhfd2VzdF9wYW5uaW5n
IiwKLSAgICAgICAgImN1cnNvci93ZXN0X3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29yL21vdmUi
LAotICAgICAgICAiY3Vyc29yL3ZlcnRpY2FsX3RleHQiLAotICAgICAgICAiY3Vyc29yL2NlbGwi
LAotICAgICAgICAiY3Vyc29yL2NvbnRleHRfbWVudSIsCi0gICAgICAgICJjdXJzb3IvYWxpYXMi
LAotICAgICAgICAiY3Vyc29yL3Byb2dyZXNzIiwKLSAgICAgICAgImN1cnNvci9ub19kcm9wIiwK
LSAgICAgICAgImN1cnNvci9jb3B5IiwKLSAgICAgICAgImN1cnNvci9ub25lIiwKLSAgICAgICAg
ImN1cnNvci9ub3RfYWxsb3dlZCIsCi0gICAgICAgICJjdXJzb3Ivem9vbV9pbiIsCi0gICAgICAg
ICJjdXJzb3Ivem9vbV9vdXQiLAotICAgICAgICAiY3Vyc29yL2dyYWIiLAotICAgICAgICAiY3Vy
c29yL2dyYWJiaW5nIiwKLSAgICAgICAgIiJ9OyAvLyBGSVhNRTogSnVzdCByZXR1cm4gIiIgZm9y
IGN1c3RvbSB0eXBlLiBXZSBkb24ndCBzdXBwb3J0IGl0IG5vdy4KLSAgICByZXR1cm4gY3Vyc29y
U3RyaW5nc1t0eXBlXTsKLX0KLQogdm9pZCBDdXJzb3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKCkg
Y29uc3QKIHsKICAgICBpZiAobV9wbGF0Zm9ybUN1cnNvcikKICAgICAgICAgcmV0dXJuOwotICAg
IG1fcGxhdGZvcm1DdXJzb3IgPSBjdXJzb3JTdHJpbmcobV90eXBlKTsKKyAgICBtX3BsYXRmb3Jt
Q3Vyc29yID0gbV90eXBlOwogfQogCi19Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9HYW1lcGFkc05peC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvR2FtZXBhZHNOaXguY3BwCmluZGV4IDdjYmI4YWQwMjVm
OTU2YzI0YjcxMTFkMzg3ODYwYjhhMTY0MTI3MGIuLjE0MGE1YWE2MmY5NzcyYmM0MjAxYzg1MTg0
YWM3OTBlZGFkY2JiZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9H
YW1lcGFkc05peC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L0dhbWVwYWRz
Tml4LmNwcApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTEsIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIsIDIwMTMg
Tm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CkBAIC00Nyw3ICs0OCw3IEBAIHZvaWQgc2Ft
cGxlR2FtZXBhZHMoR2FtZXBhZExpc3QqIGludG8pCiAgICAgICAgICAgICBSZWZQdHI8R2FtZXBh
ZD4gZ2FtZXBhZCA9IGludG8tPml0ZW0oaSk7CiAgICAgICAgICAgICBpZiAoIWdhbWVwYWQpCiAg
ICAgICAgICAgICAgICAgZ2FtZXBhZCA9IEdhbWVwYWQ6OmNyZWF0ZSgpOwotICAgICAgICAgICAg
Z2FtZXBhZC0+aWQobml4R2FtZXBhZC5pZCk7CisgICAgICAgICAgICBnYW1lcGFkLT5pZChTdHJp
bmc6OmZyb21VVEY4KG5peEdhbWVwYWQuaWQpKTsKICAgICAgICAgICAgIGdhbWVwYWQtPmluZGV4
KGkpOwogICAgICAgICAgICAgZ2FtZXBhZC0+dGltZXN0YW1wKG5peEdhbWVwYWQudGltZXN0YW1w
KTsKICAgICAgICAgICAgIGdhbWVwYWQtPmF4ZXMobml4R2FtZXBhZC5heGVzTGVuZ3RoLCBuaXhH
YW1lcGFkLmF4ZXMpOwpAQCAtNTgsNiArNTksNyBAQCB2b2lkIHNhbXBsZUdhbWVwYWRzKEdhbWVw
YWRMaXN0KiBpbnRvKQogICAgIH0KIH0KIAotfQorfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisj
ZW5kaWYgLy8gRU5BQkxFKEdBTUVQQUQpCiAKLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbml4L1JlbmRlclRoZW1lTml4LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5jcHAKaW5kZXggODA4ZjAwYjkyMmZmZWU1ZGQ5YWFi
Mzc4MzM2ZjA0MjZiMGMxM2U1ZC4uMjU1NTI1NjdiNTU3NTU5ZTY2NjEwMDQyZDczM2JmNmEyYzI0
OWRhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L1JlbmRlclRoZW1l
Tml4LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXgu
Y3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMi0yMDEzIE5va2lh
IENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqIENvcHlyaWdodCAo
QykgMjAxMiwgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWll
cykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI2LDYgKzI2LDcgQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJSZW5kZXJUaGVtZU5peC5oIgogCisjaW5jbHVk
ZSAiSFRNTE1lZGlhRWxlbWVudC5oIgogI2luY2x1ZGUgIklucHV0VHlwZU5hbWVzLmgiCiAjaW5j
bHVkZSAiUGFpbnRJbmZvLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1Db250ZXh0Q2Fpcm8uaCIKQEAg
LTQwLDExICs0MSwxMCBAQAogI2luY2x1ZGUgIkhUTUxNZXRlckVsZW1lbnQuaCIKICNpbmNsdWRl
ICJSZW5kZXJNZXRlci5oIgogI2VuZGlmCisjaW5jbHVkZSAiVXNlckFnZW50U3R5bGVTaGVldHMu
aCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0aWMgY29uc3QgdW5zaWduZWQgZGVmYXVs
dEJ1dHRvbkJhY2tncm91bmRDb2xvciA9IDB4ZmZkZGRkZGQ7Ci0KIHN0YXRpYyB2b2lkIHNldFNp
emVJZkF1dG8oUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25zdCBJbnRTaXplJiBzaXplKQogewogICAg
IGlmIChzdHlsZS0+d2lkdGgoKS5pc0ludHJpbnNpY09yQXV0bygpKQpAQCAtNTMsMTEgKzUzLDYg
QEAgc3RhdGljIHZvaWQgc2V0U2l6ZUlmQXV0byhSZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IElu
dFNpemUmIHNpemUpCiAgICAgICAgIHN0eWxlLT5zZXRIZWlnaHQoTGVuZ3RoKHNpemUuaGVpZ2h0
KCksIEZpeGVkKSk7CiB9CiAKLUNvbG9yIHRvQ29sb3IoY29uc3QgTml4OjpDb2xvciYgY29sb3Ip
Ci17Ci0gICAgcmV0dXJuIFdlYkNvcmU6OkNvbG9yKFJHQkEzMihjb2xvcikpOwotfQotCiBzdGF0
aWMgTml4OjpUaGVtZUVuZ2luZSogdGhlbWVFbmdpbmUoKQogewogICAgIHJldHVybiBOaXg6OlBs
YXRmb3JtOjpjdXJyZW50KCktPnRoZW1lRW5naW5lKCk7CkBAIC02OCw2ICs2MywxNiBAQCBzdGF0
aWMgTml4OjpDYW52YXMqIHdlYkNhbnZhcyhjb25zdCBQYWludEluZm8mIGluZm8pCiAgICAgcmV0
dXJuIGluZm8uY29udGV4dC0+cGxhdGZvcm1Db250ZXh0KCktPmNyKCk7CiB9CiAKK3N0YXRpYyBJ
bnRTaXplIHRvSW50U2l6ZShjb25zdCBOaXg6OlNpemUmIHNpemUpCit7CisgICAgcmV0dXJuIElu
dFNpemUoc2l6ZS53aWR0aCwgc2l6ZS5oZWlnaHQpOworfQorCitzdGF0aWMgTml4OjpSZWN0IHRv
Tml4UmVjdChjb25zdCBJbnRSZWN0JiByZWN0KQoreworICAgIHJldHVybiBOaXg6OlJlY3QocmVj
dC54KCksIHJlY3QueSgpLCByZWN0LndpZHRoKCksIHJlY3QuaGVpZ2h0KCkpOworfQorCiBQYXNz
UmVmUHRyPFJlbmRlclRoZW1lPiBSZW5kZXJUaGVtZTo6dGhlbWVGb3JQYWdlKFBhZ2UqKQogewog
ICAgIHJldHVybiBSZW5kZXJUaGVtZU5peDo6Y3JlYXRlKCk7CkBAIC0xMDUsNjMgKzExMCw2MyBA
QCBTdHJpbmcgUmVuZGVyVGhlbWVOaXg6OmV4dHJhUGx1Z0luc1N0eWxlU2hlZXQoKQogCiBDb2xv
ciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3Io
KSBjb25zdAogewotICAgIHJldHVybiB0b0NvbG9yKHRoZW1lRW5naW5lKCktPmFjdGl2ZVNlbGVj
dGlvbkJhY2tncm91bmRDb2xvcigpKTsKKyAgICByZXR1cm4gdGhlbWVFbmdpbmUoKS0+YWN0aXZl
U2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJlbmRlclRo
ZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZlU2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKCkgY29uc3QK
IHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZVNlbGVjdGlvbkJh
Y2tncm91bmRDb2xvcigpKTsKKyAgICByZXR1cm4gdGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVTZWxl
Y3Rpb25CYWNrZ3JvdW5kQ29sb3IoKS5hcmdiMzIoKTsKIH0KIAogQ29sb3IgUmVuZGVyVGhlbWVO
aXg6OnBsYXRmb3JtQWN0aXZlU2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAg
ICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5hY3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5k
Q29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmFjdGl2ZVNlbGVjdGlvbkZvcmVn
cm91bmRDb2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZv
cm1JbmFjdGl2ZVNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IHRvQ29sb3IodGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3Io
KSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmluYWN0aXZlU2VsZWN0aW9uRm9yZWdyb3Vu
ZENvbG9yKCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUFj
dGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKSBjb25zdAogewotICAgIHJldHVy
biB0b0NvbG9yKHRoZW1lRW5naW5lKCktPmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5k
Q29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmFjdGl2ZUxpc3RCb3hTZWxlY3Rp
b25CYWNrZ3JvdW5kQ29sb3IoKS5hcmdiMzIoKTsKIH0KIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6
OnBsYXRmb3JtSW5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKCkgY29uc3QK
IHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZUxpc3RCb3hTZWxl
Y3Rpb25CYWNrZ3JvdW5kQ29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmluYWN0
aXZlTGlzdEJveFNlbGVjdGlvbkJhY2tncm91bmRDb2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xv
ciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3Vu
ZENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5hY3Rp
dmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkpOworICAgIHJldHVybiB0aGVtZUVu
Z2luZSgpLT5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkuYXJnYjMyKCk7
CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZlTGlzdEJveFNlbGVj
dGlvbkZvcmVncm91bmRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVF
bmdpbmUoKS0+aW5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkpOworICAg
IHJldHVybiB0aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25Gb3JlZ3JvdW5k
Q29sb3IoKS5hcmdiMzIoKTsKIH0KIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0
aXZlVGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xv
cih0aGVtZUVuZ2luZSgpLT5hY3RpdmVUZXh0U2VhcmNoSGlnaGxpZ2h0Q29sb3IoKSk7CisgICAg
cmV0dXJuIHRoZW1lRW5naW5lKCktPmFjdGl2ZVRleHRTZWFyY2hIaWdobGlnaHRDb2xvcigpLmFy
Z2IzMigpOwogfQogCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZVRleHRT
ZWFyY2hIaWdobGlnaHRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVF
bmdpbmUoKS0+aW5hY3RpdmVUZXh0U2VhcmNoSGlnaGxpZ2h0Q29sb3IoKSk7CisgICAgcmV0dXJu
IHRoZW1lRW5naW5lKCktPmluYWN0aXZlVGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKCkuYXJnYjMy
KCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUZvY3VzUmluZ0NvbG9yKCkg
Y29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5mb2N1c1JpbmdDb2xv
cigpKTsKKyAgICByZXR1cm4gdGhlbWVFbmdpbmUoKS0+Zm9jdXNSaW5nQ29sb3IoKS5hcmdiMzIo
KTsKIH0KIAogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6
cGxhdGZvcm1UYXBIaWdobGlnaHRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3Io
dGhlbWVFbmdpbmUoKS0+dGFwSGlnaGxpZ2h0Q29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5n
aW5lKCktPnRhcEhpZ2hsaWdodENvbG9yKCkuYXJnYjMyKCk7CiB9CiAjZW5kaWYKIApAQCAtMTg2
LDExICsxOTEsNyBAQCBib29sIFJlbmRlclRoZW1lTml4OjpwYWludEJ1dHRvbihSZW5kZXJPYmpl
Y3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UgogICAgIE5peDo6VGhlbWVFbmdp
bmU6OkJ1dHRvbkV4dHJhUGFyYW1zIGV4dHJhUGFyYW1zOwogICAgIGV4dHJhUGFyYW1zLmlzRGVm
YXVsdCA9IGlzRGVmYXVsdChvKTsKICAgICBleHRyYVBhcmFtcy5oYXNCb3JkZXIgPSB0cnVlOwot
ICAgIGV4dHJhUGFyYW1zLmJhY2tncm91bmRDb2xvciA9IGRlZmF1bHRCdXR0b25CYWNrZ3JvdW5k
Q29sb3I7Ci0gICAgaWYgKG8tPmhhc0JhY2tncm91bmQoKSkKLSAgICAgICAgZXh0cmFQYXJhbXMu
YmFja2dyb3VuZENvbG9yID0gby0+c3R5bGUoKS0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1By
b3BlcnR5QmFja2dyb3VuZENvbG9yKS5yZ2IoKTsKLQotICAgIHRoZW1lRW5naW5lKCktPnBhaW50
QnV0dG9uKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0
KHJlY3QpLCBleHRyYVBhcmFtcyk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRCdXR0b24od2Vi
Q2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4
dHJhUGFyYW1zKTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTE5OCwxMCArMTk5LDEwIEBA
IGJvb2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50VGV4dEZpZWxkKFJlbmRlck9iamVjdCogbywgY29u
c3QgUGFpbnRJbmZvJiBpLCBjb25zdCBJCiB7CiAgICAgLy8gV2ViVGhlbWVFbmdpbmUgZG9lcyBu
b3QgaGFuZGxlIGJvcmRlciByb3VuZGVkIGNvcm5lciBhbmQgYmFja2dyb3VuZCBpbWFnZQogICAg
IC8vIHNvIHJldHVybiB0cnVlIHRvIGRyYXcgQ1NTIGJvcmRlciBhbmQgYmFja2dyb3VuZC4KLSAg
ICBpZiAoby0+c3R5bGUoKS0+aGFzQm9yZGVyUmFkaXVzKCkgfHwgby0+c3R5bGUoKS0+aGFzQmFj
a2dyb3VuZEltYWdlKCkpCisgICAgaWYgKG8tPnN0eWxlKCkuaGFzQm9yZGVyUmFkaXVzKCkgfHwg
by0+c3R5bGUoKS5oYXNCYWNrZ3JvdW5kSW1hZ2UoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAK
LSAgICB0aGVtZUVuZ2luZSgpLT5wYWludFRleHRGaWVsZCh3ZWJDYW52YXMoaSksIGdldFdlYlRo
ZW1lU3RhdGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0KSk7CisgICAgdGhlbWVFbmdpbmUoKS0+
cGFpbnRUZXh0RmllbGQod2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0
b05peFJlY3QocmVjdCkpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtMjE2LDcgKzIxNyw3
IEBAIGJvb2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50Q2hlY2tib3goUmVuZGVyT2JqZWN0KiBvLCBj
b25zdCBQYWludEluZm8mIGksIGNvbnN0IEluCiAgICAgZXh0cmFQYXJhbXMuY2hlY2tlZCA9IGlz
Q2hlY2tlZChvKTsKICAgICBleHRyYVBhcmFtcy5pbmRldGVybWluYXRlID0gaXNJbmRldGVybWlu
YXRlKG8pOwogCi0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRDaGVja2JveCh3ZWJDYW52YXMoaSks
IGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0KSwgZXh0cmFQYXJhbXMp
OworICAgIHRoZW1lRW5naW5lKCktPnBhaW50Q2hlY2tib3god2ViQ2FudmFzKGkpLCBnZXRXZWJU
aGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKICAgICBy
ZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTIyNiw3ICsyMjcsNyBAQCB2b2lkIFJlbmRlclRoZW1lTml4
OjpzZXRDaGVja2JveFNpemUoUmVuZGVyU3R5bGUqIHN0eWxlKSBjb25zdAogICAgIGlmICghc3R5
bGUtPndpZHRoKCkuaXNJbnRyaW5zaWNPckF1dG8oKSAmJiAhc3R5bGUtPmhlaWdodCgpLmlzQXV0
bygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBJbnRTaXplIHNpemUgPSB0aGVtZUVuZ2luZSgp
LT5nZXRDaGVja2JveFNpemUoKTsKKyAgICBJbnRTaXplIHNpemUgPSB0b0ludFNpemUodGhlbWVF
bmdpbmUoKS0+Z2V0Q2hlY2tib3hTaXplKCkpOwogICAgIHNldFNpemVJZkF1dG8oc3R5bGUsIHNp
emUpOwogfQogCkBAIC0yMzYsNyArMjM3LDcgQEAgYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRS
YWRpbyhSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UmUKICAg
ICBleHRyYVBhcmFtcy5jaGVja2VkID0gaXNDaGVja2VkKG8pOwogICAgIGV4dHJhUGFyYW1zLmlu
ZGV0ZXJtaW5hdGUgPSBpc0luZGV0ZXJtaW5hdGUobyk7CiAKLSAgICB0aGVtZUVuZ2luZSgpLT5w
YWludFJhZGlvKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpS
ZWN0KHJlY3QpLCBleHRyYVBhcmFtcyk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRSYWRpbyh3
ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIHRvTml4UmVjdChyZWN0KSwg
ZXh0cmFQYXJhbXMpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtMjQ2LDEzICsyNDcsMTMg
QEAgdm9pZCBSZW5kZXJUaGVtZU5peDo6c2V0UmFkaW9TaXplKFJlbmRlclN0eWxlKiBzdHlsZSkg
Y29uc3QKICAgICBpZiAoIXN0eWxlLT53aWR0aCgpLmlzSW50cmluc2ljT3JBdXRvKCkgJiYgIXN0
eWxlLT5oZWlnaHQoKS5pc0F1dG8oKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgSW50U2l6ZSBz
aXplID0gdGhlbWVFbmdpbmUoKS0+Z2V0UmFkaW9TaXplKCk7CisgICAgSW50U2l6ZSBzaXplID0g
dG9JbnRTaXplKHRoZW1lRW5naW5lKCktPmdldFJhZGlvU2l6ZSgpKTsKICAgICBzZXRTaXplSWZB
dXRvKHN0eWxlLCBzaXplKTsKIH0KIAogYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZW51TGlz
dChSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UmVjdCYgcmVj
dCkKIHsKLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludE1lbnVMaXN0KHdlYkNhbnZhcyhpKSwgZ2V0
V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0KHJlY3QpKTsKKyAgICB0aGVtZUVuZ2lu
ZSgpLT5wYWludE1lbnVMaXN0KHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBv
KSwgdG9OaXhSZWN0KHJlY3QpKTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTI4Niw3ICsy
ODcsNyBAQCBib29sIFJlbmRlclRoZW1lTml4OjpwYWludFByb2dyZXNzQmFyKFJlbmRlck9iamVj
dCogbywgY29uc3QgUGFpbnRJbmZvJiBpLCBjb25zdAogICAgIGV4dHJhUGFyYW1zLnBvc2l0aW9u
ID0gcmVuZGVyUHJvZ3Jlc3MtPnBvc2l0aW9uKCk7CiAgICAgZXh0cmFQYXJhbXMuYW5pbWF0aW9u
UHJvZ3Jlc3MgPSByZW5kZXJQcm9ncmVzcy0+YW5pbWF0aW9uUHJvZ3Jlc3MoKTsKICAgICBleHRy
YVBhcmFtcy5hbmltYXRpb25TdGFydFRpbWUgPSByZW5kZXJQcm9ncmVzcy0+YW5pbWF0aW9uU3Rh
cnRUaW1lKCk7Ci0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRQcm9ncmVzc0Jhcih3ZWJDYW52YXMo
aSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0KSwgZXh0cmFQYXJh
bXMpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50UHJvZ3Jlc3NCYXIod2ViQ2FudmFzKGkpLCBn
ZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsK
IAogICAgIHJldHVybiBmYWxzZTsKIH0KQEAgLTMwNCw3ICszMDUsNyBAQCBkb3VibGUgUmVuZGVy
VGhlbWVOaXg6OmFuaW1hdGlvbkR1cmF0aW9uRm9yUHJvZ3Jlc3NCYXIoUmVuZGVyUHJvZ3Jlc3Mq
KSBjb25zdAogCiBib29sIFJlbmRlclRoZW1lTml4OjpwYWludFNsaWRlclRyYWNrKFJlbmRlck9i
amVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIGluZm8sIGNvbnN0IEludFJlY3QmIHJlY3Qp
CiB7Ci0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRTbGlkZXJUcmFjayh3ZWJDYW52YXMoaW5mbyks
IGdldFdlYlRoZW1lU3RhdGUodGhpcywgb2JqZWN0KSwgcmVjdCk7CisgICAgdGhlbWVFbmdpbmUo
KS0+cGFpbnRTbGlkZXJUcmFjayh3ZWJDYW52YXMoaW5mbyksIGdldFdlYlRoZW1lU3RhdGUodGhp
cywgb2JqZWN0KSwgdG9OaXhSZWN0KHJlY3QpKTsKICNpZiBFTkFCTEUoREFUQUxJU1RfRUxFTUVO
VCkKICAgICBwYWludFNsaWRlclRpY2tzKG9iamVjdCwgaW5mbywgcmVjdCk7CiAjZW5kaWYKQEAg
LTMxOCw3ICszMTksNyBAQCB2b2lkIFJlbmRlclRoZW1lTml4OjphZGp1c3RTbGlkZXJUcmFja1N0
eWxlKFN0eWxlUmVzb2x2ZXIqLCBSZW5kZXJTdHlsZSogc3R5bGUsCiAKIGJvb2wgUmVuZGVyVGhl
bWVOaXg6OnBhaW50U2xpZGVyVGh1bWIoUmVuZGVyT2JqZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50
SW5mbyYgaW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkKIHsKLSAgICB0aGVtZUVuZ2luZSgpLT5w
YWludFNsaWRlclRodW1iKHdlYkNhbnZhcyhpbmZvKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBv
YmplY3QpLCByZWN0KTsKKyAgICB0aGVtZUVuZ2luZSgpLT5wYWludFNsaWRlclRodW1iKHdlYkNh
bnZhcyhpbmZvKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvYmplY3QpLCB0b05peFJlY3QocmVj
dCkpOwogCiAgICAgcmV0dXJuIGZhbHNlOwogfQpAQCAtMzg4LDcgKzM4OSw3IEBAIGJvb2wgUmVu
ZGVyVGhlbWVOaXg6OnBhaW50SW5uZXJTcGluQnV0dG9uKFJlbmRlck9iamVjdCogbywgY29uc3Qg
UGFpbnRJbmZvJiBpLCBjCiAgICAgZXh0cmFQYXJhbXMuc3BpblVwID0gaXNTcGluVXBCdXR0b25Q
YXJ0UHJlc3NlZChvKTsKICAgICBleHRyYVBhcmFtcy5yZWFkT25seSA9IGlzUmVhZE9ubHlDb250
cm9sKG8pOwogCi0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRJbm5lclNwaW5CdXR0b24od2ViQ2Fu
dmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCBOaXg6OlJlY3QocmVjdCksIGV4dHJh
UGFyYW1zKTsKKyAgICB0aGVtZUVuZ2luZSgpLT5wYWludElubmVyU3BpbkJ1dHRvbih3ZWJDYW52
YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIHRvTml4UmVjdChyZWN0KSwgZXh0cmFQ
YXJhbXMpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtNDMyLDEwICs0MzMsNjUgQEAgYm9v
bCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZXRlcihSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50
SW5mbyYgaSwgY29uc3QgSW50UmUKICAgICBleHRyYVBhcmFtcy5oaWdoID0gZS0+aGlnaCgpOwog
ICAgIGV4dHJhUGFyYW1zLm9wdGltdW0gPSBlLT5vcHRpbXVtKCk7CiAKLSAgICB0aGVtZUVuZ2lu
ZSgpLT5wYWludE1ldGVyKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwg
cmVjdCwgZXh0cmFQYXJhbXMpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWV0ZXIod2ViQ2Fu
dmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJh
UGFyYW1zKTsKIAogICAgIHJldHVybiBmYWxzZTsKIH0KICNlbmRpZgogCisjaWYgRU5BQkxFKFZJ
REVPKQorU3RyaW5nIFJlbmRlclRoZW1lTml4OjpleHRyYU1lZGlhQ29udHJvbHNTdHlsZVNoZWV0
KCkKK3sKKyAgICByZXR1cm4gU3RyaW5nKG1lZGlhQ29udHJvbHNOaXhVc2VyQWdlbnRTdHlsZVNo
ZWV0LCBzaXplb2YobWVkaWFDb250cm9sc05peFVzZXJBZ2VudFN0eWxlU2hlZXQpKTsKK30KKwor
Ym9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVBsYXlCdXR0b24oUmVuZGVyT2JqZWN0KiBv
LCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0IEludFJlY3QmIHJlY3QpCit7CisgICAgYXV0byBz
dGF0ZSA9IHRvSFRNTE1lZGlhRWxlbWVudChvLT5ub2RlKCktPnNoYWRvd0hvc3QoKSktPmNhblBs
YXkoKSA/IE5peDo6VGhlbWVFbmdpbmU6OlN0YXRlUGF1c2VkIDogTml4OjpUaGVtZUVuZ2luZTo6
U3RhdGVQbGF5aW5nOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWVkaWFQbGF5QnV0dG9uKHdl
YkNhbnZhcyhpKSwgc3RhdGUsIHRvTml4UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOwor
fQorCitib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhTXV0ZUJ1dHRvbihSZW5kZXJPYmpl
Y3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UmVjdCYgcmVjdCkKK3sKKyAgICBh
dXRvIHN0YXRlID0gdG9IVE1MTWVkaWFFbGVtZW50KG8tPm5vZGUoKS0+c2hhZG93SG9zdCgpKS0+
bXV0ZWQoKSA/IE5peDo6VGhlbWVFbmdpbmU6OlN0YXRlTXV0ZWQgOiBOaXg6OlRoZW1lRW5naW5l
OjpTdGF0ZU5vdE11dGVkOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWVkaWFNdXRlQnV0dG9u
KHdlYkNhbnZhcyhpKSwgc3RhdGUsIHRvTml4UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNl
OworfQorCitib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhU2Vla0JhY2tCdXR0b24oUmVu
ZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiBpLCBjb25zdCBJbnRSZWN0JiByZWN0KQorewor
ICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWVkaWFTZWVrQmFja0J1dHRvbih3ZWJDYW52YXMoaSks
IHRvTml4UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIFJlbmRlclRo
ZW1lTml4OjpwYWludE1lZGlhU2Vla0ZvcndhcmRCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3Qg
UGFpbnRJbmZvJiBpLCBjb25zdCBJbnRSZWN0JiByZWN0KQoreworICAgIHRoZW1lRW5naW5lKCkt
PnBhaW50TWVkaWFTZWVrRm9yd2FyZEJ1dHRvbih3ZWJDYW52YXMoaSksIHRvTml4UmVjdChyZWN0
KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1l
ZGlhU2xpZGVyVHJhY2soUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50
UmVjdCYpCit7CisgICAgcmV0dXJuIGZhbHNlOwogfQorCitib29sIFJlbmRlclRoZW1lTml4Ojpw
YWludE1lZGlhVm9sdW1lU2xpZGVyQ29udGFpbmVyKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50
SW5mbyYsIGNvbnN0IEludFJlY3QmKQoreworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBS
ZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVZvbHVtZVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCos
IGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKQoreworICAgIHJldHVybiBmYWxzZTsK
K30KKworYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVJld2luZEJ1dHRvbihSZW5kZXJP
YmplY3QqLCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0IEludFJlY3QmIHJlY3QpCit7CisgICAg
dGhlbWVFbmdpbmUoKS0+cGFpbnRNZWRpYVJld2luZEJ1dHRvbih3ZWJDYW52YXMoaSksIHRvTml4
UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorI2VuZGlmIC8vIEVOQUJMRShWSURF
TykKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXguaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25peC9SZW5kZXJUaGVtZU5peC5oCmluZGV4IGY0MWQ1MDcwODZhZDk2MzA1ZjMxZDlhNmNiOTVm
MmUzZmUxNWQwZjcuLjYxZTVkMDM5ZmUwZmI2YzAwYjI1NDdiZWJjNTJhNzgyNTA3MWJkMTYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5oCkBAIC0xLDUg
KzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMi0yMDEzIE5va2lhIENvcnBvcmF0aW9u
IGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqIENvcHlyaWdodCAoQykgMjAxMiwgMjAx
MyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTEwMyw2ICsxMDMsMjIgQEAgcHJvdGVjdGVkOgog
ICAgIHZpcnR1YWwgYm9vbCBwYWludE1ldGVyKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5m
byYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsKICNlbmRpZgogCisjaWYgRU5BQkxFKFZJREVP
KQorICAgIHZpcnR1YWwgU3RyaW5nIGV4dHJhTWVkaWFDb250cm9sc1N0eWxlU2hlZXQoKSBPVkVS
UklERTsKKyAgICB2aXJ0dWFsIGJvb2wgdXNlc1ZlcnRpY2FsVm9sdW1lU2xpZGVyKCkgY29uc3Qg
T1ZFUlJJREUgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgdXNlc01lZGlhQ29u
dHJvbFN0YXR1c0Rpc3BsYXkoKSBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9CisgICAgdmlydHVh
bCBib29sIHVzZXNNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXIoKSBjb25zdCBPVkVSUklERSB7IHJl
dHVybiBmYWxzZTsgfQorCisgICAgdmlydHVhbCBib29sIHBhaW50TWVkaWFQbGF5QnV0dG9uKFJl
bmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsK
KyAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYU11dGVCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29u
c3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9v
bCBwYWludE1lZGlhU2Vla0JhY2tCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZv
JiwgY29uc3QgSW50UmVjdCYpIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlh
U2Vla0ZvcndhcmRCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3Qg
SW50UmVjdCYpIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhU2xpZGVyVHJh
Y2soUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpIE9WRVJS
SURFOworICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhVm9sdW1lU2xpZGVyQ29udGFpbmVyKFJl
bmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsK
KyAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYVZvbHVtZVNsaWRlclRyYWNrKFJlbmRlck9iamVj
dCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsKKyAgICB2aXJ0
dWFsIGJvb2wgcGFpbnRNZWRpYVJld2luZEJ1dHRvbihSZW5kZXJPYmplY3QqLCBjb25zdCBQYWlu
dEluZm8mLCBjb25zdCBJbnRSZWN0JikgT1ZFUlJJREU7CisjZW5kaWYKKwogICAgIHZpcnR1YWwg
Ym9vbCBwYWludFNsaWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNv
bnN0IEludFJlY3QmKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2xpZGVyVHJh
Y2tTdHlsZShTdHlsZVJlc29sdmVyKiwgUmVuZGVyU3R5bGUqLCBFbGVtZW50KikgY29uc3QgT1ZF
UlJJREU7CiAKQEAgLTEyMyw2ICsxMzksNiBAQCBwcml2YXRlOgogICAgIFJlbmRlclRoZW1lTml4
KCk7CiB9OwogCi19Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBSZW5kZXJU
aGVtZU5peF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGlu
ZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dC5j
cHAKaW5kZXggOTAyMTcxMTRiNDU5MTZlOWM1NDYwODM5MWRmZDdjOTFhMmJiNTZiMS4uOTcwNzJk
MTFmZDUwODJlMjZmMzZjNzk5ZWM3YmU4MWU1ZGQ5Zjg4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9TaW1wbGVMaW5lTGF5b3V0LmNwcApAQCAtOTAsNyArOTAsNyBAQCBzdGF0aWMg
Ym9vbCBjYW5Vc2VGb3JUZXh0KGNvbnN0IFJlbmRlclRleHQmIHRleHRSZW5kZXJlciwgY29uc3Qg
U2ltcGxlRm9udERhdGEmCiAKIGJvb2wgY2FuVXNlRm9yKGNvbnN0IFJlbmRlckJsb2NrRmxvdyYg
ZmxvdykKIHsKLSNpZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZP
Uk0oRUZMKQorI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShHVEspICYmICFQTEFURk9S
TShFRkwpICYmICFQTEFURk9STShOSVgpCiAgICAgLy8gRklYTUU6IE5vbi1tYWMgcGxhdGZvcm1z
IGFyZSBoaXR0aW5nIEFTU0VSVChydW4uY2hhcmFjdGVyc0xlbmd0aCgpID49IHJ1bi5sZW5ndGgo
KSkKICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIzMzM4
CiAgICAgcmV0dXJuIGZhbHNlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218167</attachid>
            <date>2013-12-02 06:18:11 -0800</date>
            <delta_ts>2013-12-03 14:00:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-124981-20131202111810.patch</filename>
            <type>text/plain</type>
            <size>54495</size>
            <attacher name="Thiago de Barros Lacerda">thiago.lacerda</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU5OTMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2VlZmMwYjc5ZmZjMGFj
NmMzNzM4NThlZDIxYzM3Y2E0ZmQwNWNjYy4uZjg5NWJkYzU3NTJhYjg5NWYwN2I2MDE2NjVmZGY2
NDVhOWQxZGVhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDExMCBAQAorMjAxMy0xMi0wMiAgVGhp
YWdvIGRlIEJhcnJvcyBMYWNlcmRhICA8dGhpYWdvLmxhY2VyZGFAb3BlbmJvc3NhLm9yZz4KKwor
ICAgICAgICBOaXggVXBzdHJlYW06IFVwZGF0aW5nIFdlYkNvcmUgZmlsZXMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDk4MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEp1c3QgdG8gc3luYyBvdXIgZ2l0
aHViIHJlcG8gZmlsZXMgYW5kIHRoZSB0cnVuaywgYXMgcGFydCBvZiB0aGUgdXBzdHJlYW0gcHJv
Y2VzcworCisgICAgICAgIE5vIG5ldyB0ZXN0cyBuZWVkZWQuCisKKyAgICAgICAgKiBQbGF0Zm9y
bU5peC5jbWFrZToKKyAgICAgICAgKiBjc3MvbWVkaWFDb250cm9sc05peC5jc3M6CisgICAgICAg
IChhdWRpbyk6CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scyk6CisgICAg
ICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUsIHZpZGVvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSk6CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1t
ZWRpYS1jb250cm9scy1lbmNsb3N1cmUpOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtcGFuZWwsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsKToKKyAg
ICAgICAgKHZpZGVvOi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhKToKKyAgICAgICAgKGF1ZGlvOi13
ZWJraXQtZnVsbC1wYWdlLW1lZGlhLCB2aWRlbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSk6Cisg
ICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1tdXRlLWJ1dHRvbiwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0b24pOgorICAgICAgICAoYXVkaW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtb3ZlcmxheS1wbGF5LWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQt
bWVkaWEtY29udHJvbHMtb3ZlcmxheS1wbGF5LWJ1dHRvbik6CisgICAgICAgIChhdWRpbzo6LXdl
YmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtcGxheS1idXR0b24pOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtdGltZWxpbmUtY29udGFpbmVyLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1l
bGluZS1jb250YWluZXIpOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
dGltZS1yZW1haW5pbmctZGlzcGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGlt
ZS1yZW1haW5pbmctZGlzcGxheSk6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy10aW1lbGluZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUpOgor
ICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciwgdmlk
ZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlcik6CisgICAgICAgIChpbnB1
dFt0eXBlPSJyYW5nZSJdOjotd2Via2l0LW1lZGlhLXNsaWRlci1jb250YWluZXIpOgorICAgICAg
ICAoaW5wdXRbdHlwZT0icmFuZ2UiXTo6LXdlYmtpdC1tZWRpYS1zbGlkZXItY29udGFpbmVyID4g
ZGl2KToKKyAgICAgICAgKGlucHV0W3R5cGU9InJhbmdlIl06Oi13ZWJraXQtbWVkaWEtc2xpZGVy
LXRodW1iKToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstYmFj
ay1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstYmFjay1idXR0b24p
OgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1mb3J3YXJkLWJ1
dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1mb3J3YXJkLWJ1dHRvbik6
CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRv
biwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24pOgorICAg
ICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdG9nZ2xlLWNsb3NlZC1jYXB0aW9u
cy1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRvZ2dsZS1jbG9zZWQtY2Fw
dGlvbnMtYnV0dG9uKToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1
bGxzY3JlZW4tdm9sdW1lLXNsaWRlciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVs
bHNjcmVlbi12b2x1bWUtc2xpZGVyKToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLWZ1bGxzY3JlZW4tdm9sdW1lLW1pbi1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlh
LWNvbnRyb2xzLWZ1bGxzY3JlZW4tdm9sdW1lLW1pbi1idXR0b24pOgorICAgICAgICAoYXVkaW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWF4LWJ1dHRvbiwgdmlk
ZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWF4LWJ1dHRvbik6
CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lcik6Cisg
ICAgICAgICh2aWRlbzo6Y3VlKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQt
dHJhY2stcmVnaW9uKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2st
cmVnaW9uLWNvbnRhaW5lcik6CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRy
YWNrLXJlZ2lvbi1jb250YWluZXIuc2Nyb2xsaW5nKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0
LW1lZGlhLXRleHQtdHJhY2stZGlzcGxheSk6CisgICAgICAgICh2aWRlbzo6Y3VlKDpmdXR1cmUp
KToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIGIp
OgorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIgdSk6
CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciBpKToK
KyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6
OmN1dCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmNvcHkpOgorICAgICAgICAoV2ViQ29y
ZTo6RWRpdG9yOjpjb3B5SW1hZ2UpOgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6CisgICAg
ICAgICogaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oOgorICAgICAgICAqIGxvYWRlci9IaXN0b3J5
Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Q29udHJvbGxlcjo6cmVz
dG9yZVNjcm9sbFBvc2l0aW9uQW5kVmlld1N0YXRlKToKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFu
ZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZVNpbmdsZVRh
cCk6CisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9D
dXJzb3IuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5oOgorICAgICAgICAq
IHBsYXRmb3JtL2F1ZGlvL25peC9BdWRpb0J1c05peC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpB
dWRpb0J1czo6bG9hZFBsYXRmb3JtUmVzb3VyY2UpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL0dMQ29udGV4dC5oOgorICAgICAgICAqIHBsYXRmb3JtL25peC9DdXJzb3JOaXguY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q3Vyc29yOjplbnN1cmVQbGF0Zm9ybUN1cnNvcik6CisgICAgICAg
ICogcGxhdGZvcm0vbml4L0dhbWVwYWRzTml4LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnNhbXBs
ZUdhbWVwYWRzKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXguY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6dG9JbnRTaXplKToKKyAgICAgICAgKFdlYkNvcmU6OnRvTml4UmVj
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVTZWxl
Y3Rpb25CYWNrZ3JvdW5kQ29sb3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6
OnBsYXRmb3JtSW5hY3RpdmVTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0aXZlU2VsZWN0aW9uRm9yZWdyb3VuZENv
bG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZl
U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1l
Tml4OjpwbGF0Zm9ybUFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtSW5hY3RpdmVMaXN0Qm94U2Vs
ZWN0aW9uQmFja2dyb3VuZENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4
OjpwbGF0Zm9ybUFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtSW5hY3RpdmVMaXN0Qm94U2VsZWN0
aW9uRm9yZWdyb3VuZENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4Ojpw
bGF0Zm9ybUFjdGl2ZVRleHRTZWFyY2hIaWdobGlnaHRDb2xvcik6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZVRleHRTZWFyY2hIaWdobGlnaHRDb2xv
cik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1Gb2N1c1JpbmdD
b2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1UYXBIaWdo
bGlnaHRDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRCdXR0
b24pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50VGV4dEZpZWxkKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludENoZWNrYm94KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpzZXRDaGVja2JveFNpemUpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50UmFkaW8pOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyVGhlbWVOaXg6OnNldFJhZGlvU2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJU
aGVtZU5peDo6cGFpbnRNZW51TGlzdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5p
eDo6cGFpbnRQcm9ncmVzc0Jhcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6
cGFpbnRTbGlkZXJUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFp
bnRTbGlkZXJUaHVtYik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRJ
bm5lclNwaW5CdXR0b24pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50
TWV0ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OmV4dHJhTWVkaWFDb250
cm9sc1N0eWxlU2hlZXQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50
TWVkaWFQbGF5QnV0dG9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWlu
dE1lZGlhTXV0ZUJ1dHRvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFp
bnRNZWRpYVNlZWtCYWNrQnV0dG9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4
OjpwYWludE1lZGlhU2Vla0ZvcndhcmRCdXR0b24pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VGhlbWVOaXg6OnBhaW50TWVkaWFTbGlkZXJUcmFjayk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUaGVtZU5peDo6cGFpbnRNZWRpYVZvbHVtZVNsaWRlckNvbnRhaW5lcik6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVZvbHVtZVNsaWRlclRyYWNrKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhUmV3aW5kQnV0dG9uKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXguaDoKKyAgICAgICAgKiByZW5k
ZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTaW1wbGVMaW5l
TGF5b3V0OjpjYW5Vc2VGb3IpOgorCiAyMDEzLTEyLTAyICBOaWNrIERpZWdvIFlhbWFuZSAgPG5p
Y2sueWFtYW5lQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgRml4IGEgY3Jhc2ggaW4gdGhlIHdl
YmF1ZGlvIHNvdXJjZSBwcm92aWRlciB3aGVuIHRoZSBhdWRpbyB0cmFjayBpcyBnb2luZyBhd2F5
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1OaXguY21ha2UgYi9Tb3VyY2Uv
V2ViQ29yZS9QbGF0Zm9ybU5peC5jbWFrZQppbmRleCBkMTk1OTExMmM1NDRhMWI1MDFkODUzMzVl
ZDg4MmQ5N2YzN2U3ZDZmLi5kYmI0YWZjZjIzMmJjODRkNzFiNzZjOTgzMzBiY2I0YmY0OTllYTUy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybU5peC5jbWFrZQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9QbGF0Zm9ybU5peC5jbWFrZQpAQCAtNCwyNCArNCwxNSBAQCBsaXN0KEFQUEVO
RCBXZWJDb3JlX0lOQ0xVREVfRElSRUNUT1JJRVMKICAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZv
cm0vZ3JhcGhpY3MvY2Fpcm8iCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNz
L2ZyZWV0eXBlIgogICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9nbHgiCi0g
ICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL2hhcmZidXp6LyIKLSAgICAiJHtX
RUJDT1JFX0RJUn0vcGxhdGZvcm0vZ3JhcGhpY3MvaGFyZmJ1enovbmciCiAgICAgIiR7V0VCQ09S
RV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL25peCIKLSAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZv
cm0vZ3JhcGhpY3Mvb3BlbmdsIgogICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGlj
cy9vcGVudHlwZSIKICAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0vZ3JhcGhpY3Mvc3VyZmFj
ZXMiCi0gICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL3RleG1hcCIKICAgICAi
JHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0vbGludXgiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRm
b3JtL21lZGlhc3RyZWFtL2dzdHJlYW1lciIKICAgICAiJHtQTEFURk9STV9ESVJ9L25peC8iCiAp
CiAKIGxpc3QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwotICAgIGNzcy9XZWJLaXRDU1NBcnJheUZ1
bmN0aW9uVmFsdWUuY3BwCi0gICAgY3NzL1dlYktpdENTU01hdEZ1bmN0aW9uVmFsdWUuY3BwCi0g
ICAgY3NzL1dlYktpdENTU01hdHJpeC5jcHAKLSAgICBjc3MvV2ViS2l0Q1NTTWl4RnVuY3Rpb25W
YWx1ZS5jcHAKLQogICAgIGVkaXRpbmcvU21hcnRSZXBsYWNlSUNVLmNwcAogCiAgICAgZWRpdGlu
Zy9uaXgvRWRpdG9yTml4LmNwcApAQCAtMzYsMTEgKzI3LDkgQEAgbGlzdChBUFBFTkQgV2ViQ29y
ZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vQ29udGV4dE1lbnVOb25lLmNwcAogICAgIHBsYXRmb3Jt
L0N1cnNvci5jcHAKICAgICBwbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcAotICAgIHBsYXRm
b3JtL1BsYXRmb3JtU3RyYXRlZ2llcy5jcHAKIAogICAgIHBsYXRmb3JtL2NhaXJvL1dpZGdldEJh
Y2tpbmdTdG9yZUNhaXJvLmNwcAogCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VTb3VyY2Uu
Y3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuY3BwCiAgICAgcGxhdGZvcm0v
Z3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuY3BwCiAKQEAgLTY0LDkgKzUzLDYgQEAgbGlzdChBUFBF
TkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vVGlsZWRCYWNr
aW5nU3RvcmVCYWNrZW5kQ2Fpcm8uY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vVHJh
bnNmb3JtYXRpb25NYXRyaXhDYWlyby5jcHAKIAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwCi0KICAgICBwbGF0Zm9ybS9n
cmFwaGljcy9mcmVldHlwZS9Gb250Q2FjaGVGcmVlVHlwZS5jcHAKICAgICBwbGF0Zm9ybS9ncmFw
aGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcApAQCAt
OTMsMjQgKzc5LDggQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0v
Z3RrL0xvZ2dpbmdHdGsuY3BwCiAgICAgcGxhdGZvcm0vZ3RrL1NoYXJlZEJ1ZmZlckd0ay5jcHAK
IAotICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5jcHAKLQotICAgIHBs
YXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9CTVBJbWFnZURlY29kZXIuY3BwCi0gICAgcGxhdGZv
cm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUEltYWdlUmVhZGVyLmNwcAotCiAgICAgcGxhdGZvcm0v
aW1hZ2UtZGVjb2RlcnMvY2Fpcm8vSW1hZ2VEZWNvZGVyQ2Fpcm8uY3BwCiAKLSAgICBwbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmNwcAotICAgIHBsYXRmb3JtL2lt
YWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJlYWRlci5jcHAKLQotICAgIHBsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL2ljby9JQ09JbWFnZURlY29kZXIuY3BwCi0KLSAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuY3BwCi0KLSAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAotCi0gICAgcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvd2VicC9XRUJQSW1hZ2VEZWNvZGVyLmNwcAotCiAgICAgcGxhdGZvcm0vbGludXgvR2Ft
ZXBhZERldmljZUxpbnV4LmNwcAogCiAgICAgcGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKQEAg
LTEzNCwxNyArMTA0LDkgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAKICAgICBwbGF0
Zm9ybS90ZXh0L25peC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVTml4LmNwcAogCi0gICAg
cGx1Z2lucy9QbHVnaW5EYXRhYmFzZS5jcHAKLSAgICBwbHVnaW5zL1BsdWdpbkRlYnVnLmNwcAog
ICAgIHBsdWdpbnMvUGx1Z2luUGFja2FnZS5jcHAKICAgICBwbHVnaW5zL1BsdWdpblBhY2thZ2VO
b25lLmNwcAotICAgIHBsdWdpbnMvUGx1Z2luU3RyZWFtLmNwcAotICAgIHBsdWdpbnMvUGx1Z2lu
Vmlldy5jcHAKICAgICBwbHVnaW5zL1BsdWdpblZpZXdOb25lLmNwcAotCi0gICAgcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmNwcAotICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUN1
c3RvbUZpbHRlclByb2dyYW0uY3BwCi0gICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlLmNwcAogKQogCiBpZiAoV1RGX1VTRV9PUEVOR0xfRVNfMikKQEAgLTE4
MSw4ICsxNDMsOCBAQCBpZiAoV1RGX1VTRV9FR0wpCiAgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9M
SUJSQVJJRVMgJHtFR0xfTElCUkFSWX0pCiBlbHNlICgpCiAgICAgbGlzdChBUFBFTkQgV2ViQ29y
ZV9JTkNMVURFX0RJUkVDVE9SSUVTCi0gICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL3N1cmZhY2Vz
L2dseAogICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9zdXJmYWNlcy9lZmwKKyAgICAgICAgcGxh
dGZvcm0vZ3JhcGhpY3Mvc3VyZmFjZXMvZ2x4CiAgICAgICAgICR7WDExX1gxMV9JTkNMVURFX1BB
VEh9CiAgICAgKQogICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwpAQCAtMjM3LDE1ICsx
OTksMTUgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9MSUJSQVJJRVMKICkKIAogbGlzdChBUFBFTkQg
V2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVTCi0gICAgJHtGT05UQ09ORklHX0lOQ0xVREVfRElS
fQogICAgICR7Q0FJUk9fSU5DTFVERV9ESVJTfQorICAgICR7Rk9OVENPTkZJR19JTkNMVURFX0RJ
Un0KICAgICAke0ZSRUVUWVBFX0lOQ0xVREVfRElSU30KKyAgICAke0dMSUJfSU5DTFVERV9ESVJT
fQorICAgICR7SEFSRkJVWlpfSU5DTFVERV9ESVJTfQogICAgICR7TElCWE1MMl9JTkNMVURFX0RJ
Un0KICAgICAke0xJQlhTTFRfSU5DTFVERV9ESVJ9CiAgICAgJHtTUUxJVEVfSU5DTFVERV9ESVJ9
Ci0gICAgJHtHTElCX0lOQ0xVREVfRElSU30KICAgICAke1pMSUJfSU5DTFVERV9ESVJTfQotICAg
ICR7SEFSRkJVWlpfSU5DTFVERV9ESVJTfQogKQogCiBhZGRfZGVmaW5pdGlvbnMoLUREQVRBX0RJ
Uj0iJHtDTUFLRV9JTlNUQUxMX1BSRUZJWH0vJHtEQVRBX0lOU1RBTExfRElSfSIpCkBAIC0yNzks
NiArMjQxLDggQEAgaWYgKFdURl9VU0VfQ1VSTCkKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9j
dXJsL0Nvb2tpZU5vZGUuY3BwCiAgICAgICAgIHBsYXRmb3JtL25ldHdvcmsvY3VybC9Db29raWVT
dG9yYWdlQ3VybC5jcHAKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL0NyZWRlbnRpYWxT
dG9yYWdlQ3VybC5jcHAKKyAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxDYWNoZUVu
dHJ5LmNwcAorICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENhY2hlTWFuYWdlci5j
cHAKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL0ROU0N1cmwuY3BwCiAgICAgICAgIHBs
YXRmb3JtL25ldHdvcmsvY3VybC9Gb3JtRGF0YVN0cmVhbUN1cmwuY3BwCiAgICAgICAgIHBsYXRm
b3JtL25ldHdvcmsvY3VybC9NdWx0aXBhcnRIYW5kbGUuY3BwCkBAIC0yODYsMTIgKzI1MCwxNCBA
QCBpZiAoV1RGX1VTRV9DVVJMKQogICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUHJveHlT
ZXJ2ZXJDdXJsLmNwcAogICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5k
bGVDdXJsLmNwcAogICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVN
YW5hZ2VyLmNwcAorICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvU1NMSGFuZGxlLmNwcAog
ICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvU29ja2V0U3RyZWFtSGFuZGxlQ3VybC5jcHAK
ICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL1N5bmNocm9ub3VzTG9hZGVyQ2xpZW50Q3Vy
bC5jcHAKICAgICApCiAKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX0xJQlJBUklFUwogICAgICAg
ICAke0NVUkxfTElCUkFSSUVTfQorICAgICAgICAke09QRU5TU0xfTElCUkFSSUVTfQogICAgICkK
IGVsc2UgKCkKICAgICBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9tZWRpYUNvbnRyb2xzTml4LmNzcyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9tZWRpYUNvbnRyb2xzTml4LmNzcwppbmRleCBiNWIzNjY1MjdiN2UwNTgxOTRjNTQxNzE1ZWY1
Nzg4ZWQwMjc3NDliLi4wOTU2ODBjMmU0NDc0MmE1ZDUyZjA0ZGM2Y2FkY2NlNGY5ZmY3NmViIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWVkaWFDb250cm9sc05peC5jc3MKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNOaXguY3NzCkBAIC0xLDcgKzEsNyBAQAog
LyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSwgMjAxMCwgMjAxMSBBcHBsZSBJbmMuICBBbGwgcmln
aHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDExIFNhbXN1bmcgRWxlY3Ryb25pY3MK
LSAqIENvcHlyaWdodCAoQykgMjAxMi0yMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMg
c3Vic2lkaWFyeSgtaWVzKS4KKyAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJbmMuICBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTIsIDIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJz
aWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yNCwxMjcg
KzI0LDIxOCBAQAogICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0vKiBOaXhXZWJLaXQgbWVkaWEgY29u
dHJvbHMuIEV4dGVuZHMgbWVkaWFDb250cm9scy5jc3MgKi8KKy8qIE5peCBkZWZhdWx0IG1lZGlh
IGNvbnRyb2xzICovCiAKIGF1ZGlvIHsKICAgICB3aWR0aDogMzAwcHg7Ci0gICAgaGVpZ2h0OiAy
MHB4OworICAgIGhlaWdodDogMzBweDsKK30KKworYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMsCit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scyB7CisgICAgd2lkdGg6IGluaGVyaXQ7
CisgICAgaGVpZ2h0OiBpbmhlcml0OworICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAgICBkaXJl
Y3Rpb246IGx0cjsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7
CisgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKKyAgICBhbGlnbi1pdGVtczogY2VudGVy
OworfQorCithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUsIHZpZGVvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSB7CisgICAgd2lkdGg6IDEwMCU7CisgICAg
bWF4LXdpZHRoOiA4MDBweDsKKyAgICBoZWlnaHQ6IDMwcHg7CisgICAgZmxleC1zaHJpbms6IDA7
CisgICAgYm90dG9tOiAwOworICAgIHRleHQtaW5kZW50OiAwOworICAgIHBhZGRpbmc6IDA7Cisg
ICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKK30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtZW5jbG9zdXJlIHsKKyAgICBwYWRkaW5nOiAwcHggNXB4IDVweCA1cHg7CisgICAgaGVp
Z2h0OiAzNXB4OworICAgIGZsZXgtc2hyaW5rOiAwOwogfQogCiBhdWRpbzo6LXdlYmtpdC1tZWRp
YS1jb250cm9scy1wYW5lbCwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwgewot
ICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpv
bnRhbDsKLSAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyOworICAgIGRpc3BsYXk6IGZsZXg7
CisgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKKyAgICBhbGlnbi1pdGVtczogY2VudGVyOworICAg
IC8qIFdlIHVzZSBmbGV4LXN0YXJ0IGhlcmUgdG8gZW5zdXJlIHRoYXQgdGhlIHBsYXkgYnV0dG9u
IGlzIHZpc2libGUgZXZlbgorICAgICAqIGlmIHdlIGFyZSB0b28gc21hbGwgdG8gc2hvdyBhbGwg
Y29udHJvbHMuCisgICAgICovCisgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OwogICAg
IC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgcG9zaXRpb246IHJlbGF0aXZlOwotICAg
IGJvdHRvbTogMDsKICAgICB3aWR0aDogMTAwJTsKICAgICB6LWluZGV4OiAwOwogICAgIG92ZXJm
bG93OiBoaWRkZW47Ci0gICAgaGVpZ2h0OiAyMHB4OwogICAgIHRleHQtYWxpZ246IHJpZ2h0Owor
ICAgIGJvdHRvbTogYXV0bzsKKyAgICBoZWlnaHQ6IDMwcHg7CisgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiYSgyMCwgMjAsIDIwLCAwLjgpOworICAgIGJvcmRlci1yYWRpdXM6IDVweDsKK30KKwor
dmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEgeworICAgIG1hcmdpbjogYXV0bzsKKyAgICBw
b3NpdGlvbjogYWJzb2x1dGU7CisgICAgdG9wOiAwOworICAgIHJpZ2h0OiAwOworICAgIGJvdHRv
bTogMDsKKyAgICBsZWZ0OiAwOwogfQogCithdWRpbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSwg
dmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEgeworICAgIG1heC1oZWlnaHQ6IDEwMCU7Cisg
ICAgbWF4LXdpZHRoOiAxMDAlOworfQorCithdWRpbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYTo6
LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCwKIHZpZGVvOi13ZWJraXQtZnVsbC1wYWdlLW1l
ZGlhOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsIHsKICAgICBib3R0b206IDBweDsKIH0K
IAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0b24sIHZpZGVvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9uIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6
IG1lZGlhLW11dGUtYnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIHdpZHRo
OiAyMHB4OwotICAgIGhlaWdodDogMjBweDsKLSAgICBwb3NpdGlvbjogcmVsYXRpdmU7Ci0gICAg
ei1pbmRleDogMjsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXg6IG5vbmU7CisgICAgYm9y
ZGVyOiBub25lOworICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDM1cHg7
CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbjog
MCA2cHggMCAwOworICAgIHBhZGRpbmc6IDA7CiAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlh
bDsKLSAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9CiAKK2F1ZGlv
Ojotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW92ZXJsYXktcGxheS1idXR0b24sIHZpZGVvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLW92ZXJsYXktcGxheS1idXR0b24geworICAgIGRpc3BsYXk6IG5v
bmU7Cit9CisKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXktYnV0dG9uLCB2aWRl
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiB7CiAgICAgLXdlYmtpdC1hcHBl
YXJhbmNlOiBtZWRpYS1wbGF5LWJ1dHRvbjsKLSAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAg
ICB3aWR0aDogMjBweDsKLSAgICBoZWlnaHQ6IDIwcHg7CisgICAgZGlzcGxheTogZmxleDsKKyAg
ICBmbGV4OiBub25lOworICAgIGJvcmRlcjogbm9uZTsKKyAgICBib3gtc2l6aW5nOiBib3JkZXIt
Ym94OworICAgIHdpZHRoOiAzMHB4OworICAgIGhlaWdodDogMzBweDsKKyAgICBsaW5lLWhlaWdo
dDogMzBweDsKKyAgICBtYXJnaW4tbGVmdDogOXB4OworICAgIG1hcmdpbi1yaWdodDogOXB4Owor
ICAgIHBhZGRpbmc6IDA7CiAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDsKLSAgICBib3Jk
ZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9CiAKIGF1ZGlvOjotd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLXRpbWVsaW5lLWNvbnRhaW5lciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtdGltZWxpbmUtY29udGFpbmVyIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlh
LWNvbnRyb2xzLWJhY2tncm91bmQ7Ci0gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7Ci0gICAgLXdl
YmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwotICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50
ZXI7Ci0gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kOwotICAgIC13ZWJraXQtYm94LWZsZXg6IDE7
CisgICAgZGlzcGxheTogZmxleDsKKyAgICBmbGV4LWRpcmVjdGlvbjogcm93OworICAgIGFsaWdu
LWl0ZW1zOiBjZW50ZXI7CisgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKKyAgICBmbGV4
OiAxIDE7CiAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKLSAgICBoZWlnaHQ6IDIwcHg7
CisgICAgaGVpZ2h0OiAxNnB4OworICAgIG1pbi13aWR0aDogMDsKIH0KIAotYXVkaW86Oi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1lLWRpc3BsYXksIHZpZGVvOjotd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNwbGF5IHsKK2F1ZGlvOjotd2Via2l0LW1lZGlh
LWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNwbGF5LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1jdXJyZW50LXRpbWUtZGlzcGxheSwKK2F1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xz
LXRpbWUtcmVtYWluaW5nLWRpc3BsYXksIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRp
bWUtcmVtYWluaW5nLWRpc3BsYXkgewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEtY3Vy
cmVudC10aW1lLWRpc3BsYXk7CiAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKLSAgICBk
aXNwbGF5OiAtd2Via2l0LWJveDsKLSAgICBoZWlnaHQ6IDIwcHg7CisgICAgLXdlYmtpdC1mbGV4
OiBub25lOworICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDsKKyAgICBib3JkZXI6IG5vbmU7Cisg
ICAgY3Vyc29yOiBkZWZhdWx0OwogCi0gICAgcGFkZGluZzogNHB4OworICAgIGhlaWdodDogMzBw
eDsKKyAgICBtYXJnaW46IDAgOXB4IDAgMDsKKyAgICBwYWRkaW5nOiAwOwogCi0gICAgdGV4dC1h
bGlnbjogY2VudGVyOwotICAgIGZvbnQtc2l6ZTogMTBweDsKKyAgICBsaW5lLWhlaWdodDogMzBw
eDsKKyAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjsKKyAgICBm
b250LXNpemU6IDEzcHg7CisgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CisgICAgZm9udC1zdHlsZTog
bm9ybWFsOworICAgIGNvbG9yOiB3aGl0ZTsKIAotICAgIGNvbG9yOiBibGFjazsKICAgICBsZXR0
ZXItc3BhY2luZzogbm9ybWFsOwogICAgIHdvcmQtc3BhY2luZzogbm9ybWFsOwotICAgIGxpbmUt
aGVpZ2h0OiBub3JtYWw7CisgICAgdGV4dC1hbGlnbjogY2VudGVyCiAgICAgdGV4dC10cmFuc2Zv
cm06IG5vbmU7CiAgICAgdGV4dC1pbmRlbnQ6IDA7CiAgICAgdGV4dC1zaGFkb3c6IG5vbmU7CiAg
ICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwotICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKLSAgICBm
b250LXdlaWdodDogbm9ybWFsOwotICAgIGZvbnQtZmFtaWx5OiBzZXJpZjsKLX0KLQotYXVkaW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlzcGxheSwgdmlkZW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlzcGxheSB7Ci0gICAgZGlzcGxh
eTogbm9uZTsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUsIHZp
ZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lIHsKICAgICAtd2Via2l0LWFwcGVh
cmFuY2U6IG1lZGlhLXNsaWRlcjsKLSAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAgICAtd2Vi
a2l0LWJveC1mbGV4OiAxOwotICAgIGhlaWdodDogMjBweDsKLSAgICBwYWRkaW5nOiAwcHggMnB4
OwotICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7CisgICAgZGlzcGxheTogZmxleDsKKyAg
ICBmbGV4OiAxIDEgYXV0bzsKKyAgICBoZWlnaHQ6IDhweDsKKyAgICBtYXJnaW46IDAgMTVweCAw
IDA7CisgICAgcGFkZGluZzogMDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsKKyAgICBt
aW4td2lkdGg6IDI1cHg7CiAgICAgYm9yZGVyOiBpbml0aWFsOworICAgIGJvcmRlci1yYWRpdXM6
IDRweDsKICAgICBjb2xvcjogaW5oZXJpdDsKLSAgICBtYXJnaW46IGluaXRpYWw7Ci19Ci0KLWF1
ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlkZXItY29udGFpbmVyLCB2aWRl
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVyLWNvbnRhaW5lciB7Ci0gICAg
LXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS12b2x1bWUtc2xpZGVyLWNvbnRhaW5lcjsKLSAgICBw
b3NpdGlvbjogYWJzb2x1dGU7Ci0gICAgaGVpZ2h0OiAxMDBweDsKLSAgICB3aWR0aDogMjBweDsK
LSAgICBib3R0b206IDIwcHg7Ci0gICAgei1pbmRleDogMTsKIH0KIAogYXVkaW86Oi13ZWJraXQt
bWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtdm9sdW1lLXNsaWRlciB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS12b2x1bWUt
c2xpZGVyOwotICAgIGRpc3BsYXk6IG5vbmU7Ci0gICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlh
bDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIC8qIFRoZSAxLjkgdmFsdWUgd2FzIGVtcGlyaWNh
bGx5IGNob3NlbiB0byBtYXRjaCBvbGQtZmxleGJveCBiZWhhdmlvdXIKKyAgICAgKiBhbmQgYmUg
YWVzdGhldGljYWxseSBwbGVhc2luZy4KKyAgICAgKi8KKyAgICBmbGV4OiAxIDEuOSBhdXRvOwor
ICAgIGhlaWdodDogOHB4OworICAgIG1heC13aWR0aDogNzBweDsKKyAgICBtYXJnaW46IDAgMTVw
eCAwIDA7CisgICAgcGFkZGluZzogMDsKKyAgICBtaW4td2lkdGg6IDE1cHg7CiAgICAgYm9yZGVy
OiBpbml0aWFsOwogICAgIGNvbG9yOiBpbmhlcml0OwotICAgIG1hcmdpbjogaW5pdGlhbDsKKyAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsKKyAgICBib3JkZXItcmFkaXVzOiA0cHg7Cit9CisK
K2lucHV0W3R5cGU9InJhbmdlIl06Oi13ZWJraXQtbWVkaWEtc2xpZGVyLWNvbnRhaW5lciB7Cisg
ICAgZGlzcGxheTogZmxleDsKKyAgICBhbGlnbi1pdGVtczogY2VudGVyOworICAgIGZsZXgtZGly
ZWN0aW9uOiByb3c7IC8qIFRoaXMgcHJvcGVydHkgaXMgdXBkYXRlZCBieSBDKysgY29kZS4gKi8K
KyAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OworICAgIGhlaWdodDogMTAwJTsKKyAgICB3aWR0
aDogMTAwJTsKKyAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIzMCwgMjMwLCAyMzAsIDAuMzUp
OworICAgIGJvcmRlci1yYWRpdXM6IDRweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3Bh
cmVudDsgLyogQmFja2dyb3VuZCBkcmF3aW5nIGlzIG1hbmFnZWQgYnkgQysrIGNvZGUgdG8gZHJh
dyByYW5nZXMuICovCit9CisKKy8qIFRoZSBuZWdhdGl2ZSByaWdodCBtYXJnaW4gY2F1c2VzIHRo
ZSB0cmFjayB0byBvdmVyZmxvdyBpdHMgY29udGFpbmVyLiAqLworaW5wdXRbdHlwZT0icmFuZ2Ui
XTo6LXdlYmtpdC1tZWRpYS1zbGlkZXItY29udGFpbmVyID4gZGl2IHsKKyAgICBtYXJnaW4tcmln
aHQ6IC0xNHB4OworfQorCitpbnB1dFt0eXBlPSJyYW5nZSJdOjotd2Via2l0LW1lZGlhLXNsaWRl
ci10aHVtYiB7CisgICAgbWFyZ2luLWxlZnQ6IC03cHg7CisgICAgbWFyZ2luLXJpZ2h0OiAtN3B4
OworICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOworICAgIGJvcmRlci1yYWRpdXM6IDNweDsK
IH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1iYWNrLWJ1dHRvbiwgdmlk
ZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1iYWNrLWJ1dHRvbiB7CiAgICAgLXdlYmtp
dC1hcHBlYXJhbmNlOiBtZWRpYS1zZWVrLWJhY2stYnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJr
aXQtYm94OwotICAgIHdpZHRoOiAyMHB4OwotICAgIGhlaWdodDogMjBweDsKKyAgICBkaXNwbGF5
OiBmbGV4OworICAgIHdpZHRoOiAxNnB4OworICAgIGhlaWdodDogMTZweDsKICAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiBpbml0aWFsOwogICAgIGJvcmRlcjogaW5pdGlhbDsKICAgICBjb2xvcjogaW5o
ZXJpdDsKQEAgLTE1MiwyMSArMjQzLDI3IEBAIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xz
LXNlZWstYmFjay1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlCiAKIGF1
ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstZm9yd2FyZC1idXR0b24sIHZpZGVvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstZm9yd2FyZC1idXR0b24gewogICAgIC13ZWJraXQt
YXBwZWFyYW5jZTogbWVkaWEtc2Vlay1mb3J3YXJkLWJ1dHRvbjsKLSAgICBkaXNwbGF5OiAtd2Vi
a2l0LWJveDsKLSAgICB3aWR0aDogMjBweDsKLSAgICBoZWlnaHQ6IDIwcHg7CisgICAgZGlzcGxh
eTogZmxleDsKKyAgICB3aWR0aDogMTZweDsKKyAgICBoZWlnaHQ6IDE2cHg7CiAgICAgYmFja2dy
b3VuZC1jb2xvcjogaW5pdGlhbDsKICAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGlu
aGVyaXQ7CiB9CiAKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0
dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRvbiB7Ci0g
ICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1mdWxsc2NyZWVuLWJ1dHRvbjsKLSAgICBkaXNw
bGF5OiAtd2Via2l0LWJveDsKLSAgICB3aWR0aDogMjBweDsKLSAgICBoZWlnaHQ6IDIwcHg7Cisg
ICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1lbnRlci1mdWxsc2NyZWVuLWJ1dHRvbjsKKyAg
ICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXg6IG5vbmU7CisgICAgYm9yZGVyOiBub25lOworICAg
IGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDMwcHg7CisgICAgaGVpZ2h0OiAz
MHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbi1sZWZ0OiAtNXB4OworICAg
IG1hcmdpbi1yaWdodDogOXB4OworICAgIHBhZGRpbmc6IDA7CiAgICAgYmFja2dyb3VuZC1jb2xv
cjogaW5pdGlhbDsKLSAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9
CiAKQEAgLTE4NiwxMSArMjgzLDE3IEBAIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXJl
dHVybi10by1yZWFsdGltZS1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvCiAKIGF1ZGlv
Ojotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRvZ2dsZS1jbG9zZWQtY2FwdGlvbnMtYnV0dG9uLCB2
aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10b2dnbGUtY2xvc2VkLWNhcHRpb25zLWJ1dHRv
biB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS10b2dnbGUtY2xvc2VkLWNhcHRpb25z
LWJ1dHRvbjsKLSAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAgICB3aWR0aDogMjBweDsKLSAg
ICBoZWlnaHQ6IDIwcHg7CisgICAgZGlzcGxheTogZmxleDsKKyAgICBmbGV4OiBub25lOworICAg
IGJvcmRlcjogbm9uZTsKKyAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OworICAgIHdpZHRoOiAz
MHB4OworICAgIGhlaWdodDogMzBweDsKKyAgICBsaW5lLWhlaWdodDogMzBweDsKKyAgICBtYXJn
aW4tbGVmdDogLTVweDsKKyAgICBtYXJnaW4tcmlnaHQ6IDlweDsKKyAgICBwYWRkaW5nOiAwOwog
ICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7Ci0gICAgYm9yZGVyOiBpbml0aWFsOwogICAg
IGNvbG9yOiBpbmhlcml0OwogfQogCkBAIC0yMDEsMyArMzA0LDkyIEBAIGF1ZGlvOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzLXZvbHVtZS1zbGlkZXItbXV0ZS1idXR0b24sIHZpZGVvOjotd2Via2l0
LW1lZGlhLWNvCiAgICAgYm9yZGVyOiBpbml0aWFsOwogICAgIGNvbG9yOiBpbmhlcml0OwogfQor
CithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1zbGlkZXIs
IHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tdm9sdW1lLXNsaWRlciB7
CisgICAgZGlzcGxheTogbm9uZTsKK30KKworYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
ZnVsbHNjcmVlbi12b2x1bWUtbWluLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtZnVsbHNjcmVlbi12b2x1bWUtbWluLWJ1dHRvbiB7CisgICAgZGlzcGxheTogbm9uZTsKK30K
KworYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWF4LWJ1
dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWF4
LWJ1dHRvbiB7CisgICAgZGlzcGxheTogbm9uZTsKK30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEt
dGV4dC10cmFjay1jb250YWluZXIgeworICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKyAgICB3aWR0
aDogMTAwJTsKKyAgICBvdmVyZmxvdzogaGlkZGVuOworICAgIHBhZGRpbmctYm90dG9tOiA1cHg7
CisKKyAgICBmb250OiAyMnB4IHNhbnMtc2VyaWY7CisgICAgdGV4dC1hbGlnbjogY2VudGVyOwor
ICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpOworCisgICAgbGV0dGVyLXNwYWNpbmc6
IG5vcm1hbDsKKyAgICB3b3JkLXNwYWNpbmc6IG5vcm1hbDsKKyAgICB0ZXh0LXRyYW5zZm9ybTog
bm9uZTsKKyAgICB0ZXh0LWluZGVudDogMDsKKyAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7Cisg
ICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CisgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsK
KyAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkOworCisgICAgZmxleDogMSAxOworfQorCit2aWRl
bzo6Y3VlIHsKKyAgICBkaXNwbGF5OiBpbmxpbmU7CisKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBy
Z2JhKDAsIDAsIDAsIDAuOCk7CisgICAgcGFkZGluZzogMnB4IDJweDsKK30KKwordmlkZW86Oi13
ZWJraXQtbWVkaWEtdGV4dC10cmFjay1yZWdpb24geworICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsK
KyAgICBsaW5lLWhlaWdodDogNS4zM3ZoOworICAgIHdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC10
YjsKKyAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7CisgICAgY29sb3I6IHJnYmEo
MjU1LCAyNTUsIDI1NSwgMSk7CisgICAgd29yZC13cmFwOiBicmVhay13b3JkOworICAgIG92ZXJm
bG93LXdyYXA6IGJyZWFrLXdvcmQ7CisgICAgb3ZlcmZsb3c6IGhpZGRlbjsKK30KKwordmlkZW86
Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1yZWdpb24tY29udGFpbmVyIHsKKyAgICBwb3NpdGlv
bjogcmVsYXRpdmU7CisKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXgtZmxvdzogY29sdW1u
OworICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Cit9CisKK3ZpZGVvOjotd2Via2l0LW1lZGlh
LXRleHQtdHJhY2stcmVnaW9uLWNvbnRhaW5lci5zY3JvbGxpbmcgeworICAgIHRyYW5zaXRpb246
IHRvcCA0MzNtcyBsaW5lYXI7Cit9CisKKwordmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFj
ay1kaXNwbGF5IHsKKyAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgb3ZlcmZsb3c6IGhpZGRl
bjsKKyAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7CisgICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBi
b3JkZXItYm94OworICAgIGZsZXg6IDAgMCBhdXRvOworfQordmlkZW86OmN1ZSg6ZnV0dXJlKSB7
CisgICAgY29sb3I6IGdyYXk7Cit9CisKK3ZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2st
Y29udGFpbmVyIGIgeworICAgIGZvbnQtd2VpZ2h0OiBib2xkOworfQorCit2aWRlbzo6LXdlYmtp
dC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciB1IHsKKyAgICB0ZXh0LWRlY29yYXRpb246IHVu
ZGVybGluZTsKK30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIg
aSB7CisgICAgZm9udC1zdHlsZTogaXRhbGljOworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL0VkaXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5j
cHAKaW5kZXggOTA2ZTg2NmZhMjU0ODkzYTgyMmJiYjY1ZDgyNDMxZWM2YTJkNmM5Mi4uYmZhZjQ5
Njg1MjI5OGFiM2M4MGU0NjBjZGYxMjdiZDUxYWZhMjI0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRp
dG9yLmNwcApAQCAtNDM1LDcgKzQzNSw3IEBAIFN0cmluZyBFZGl0b3I6OnBsYWluVGV4dEZyb21Q
YXN0ZWJvYXJkKGNvbnN0IFBhc3RlYm9hcmRQbGFpblRleHQmIHRleHQpCiAKICNlbmRpZgogCi0j
aWYgIVBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKEVGTCkKKyNpZiAhUExBVEZPUk0oTUFDKSAm
JiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZPUk0oTklYKQogdm9pZCBFZGl0b3I6OnBhc3RlV2l0
aFBhc3RlYm9hcmQoUGFzdGVib2FyZCogcGFzdGVib2FyZCwgYm9vbCBhbGxvd1BsYWluVGV4dCkK
IHsKICAgICBSZWZQdHI8UmFuZ2U+IHJhbmdlID0gc2VsZWN0ZWRSYW5nZSgpOwpAQCAtMTA2MSw3
ICsxMDYxLDcgQEAgdm9pZCBFZGl0b3I6OmN1dCgpCiAgICAgICAgIGlmIChlbmNsb3NpbmdUZXh0
Rm9ybUNvbnRyb2wobV9mcmFtZS5zZWxlY3Rpb24oKS5zdGFydCgpKSkKICAgICAgICAgICAgIFBh
c3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0ZSgpLT53cml0ZVBsYWluVGV4dChzZWxlY3Rl
ZFRleHRGb3JDbGlwYm9hcmQoKSwgY2FuU21hcnRDb3B5T3JEZWxldGUoKSA/IFBhc3RlYm9hcmQ6
OkNhblNtYXJ0UmVwbGFjZSA6IFBhc3RlYm9hcmQ6OkNhbm5vdFNtYXJ0UmVwbGFjZSk7CiAgICAg
ICAgIGVsc2UgewotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKQorI2lmIFBMQVRG
T1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCiAgICAgICAgICAgICB3
cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgqUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBh
c3RlKCkpOwogI2Vsc2UKICAgICAgICAgICAgIC8vIEZJWE1FOiBDb252ZXJ0IGFsbCBvdGhlciBw
bGF0Zm9ybXMgdG8gbWF0Y2ggTWFjIGFuZCBkZWxldGUgdGhpcy4KQEAgLTEwODgsMTMgKzEwODgs
MTMgQEAgdm9pZCBFZGl0b3I6OmNvcHkoKQogICAgICAgICAgICAgY2FuU21hcnRDb3B5T3JEZWxl
dGUoKSA/IFBhc3RlYm9hcmQ6OkNhblNtYXJ0UmVwbGFjZSA6IFBhc3RlYm9hcmQ6OkNhbm5vdFNt
YXJ0UmVwbGFjZSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgaWYgKEhUTUxJbWFnZUVsZW1lbnQq
IGltYWdlRWxlbWVudCA9IGltYWdlRWxlbWVudEZyb21JbWFnZURvY3VtZW50KGRvY3VtZW50KCkp
KSB7Ci0jaWYgKFBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKElPUykpIHx8IFBMQVRGT1JNKEVG
TCkKKyNpZiAoUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oSU9TKSkgfHwgUExBVEZPUk0oRUZM
KSB8fCBQTEFURk9STShOSVgpCiAgICAgICAgICAgICB3cml0ZUltYWdlVG9QYXN0ZWJvYXJkKCpQ
YXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKSwgKmltYWdlRWxlbWVudCwgZG9jdW1l
bnQoKS51cmwoKSwgZG9jdW1lbnQoKS50aXRsZSgpKTsKICNlbHNlCiAgICAgICAgICAgICBQYXN0
ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKS0+d3JpdGVJbWFnZSgqaW1hZ2VFbGVtZW50
LCBkb2N1bWVudCgpLnVybCgpLCBkb2N1bWVudCgpLnRpdGxlKCkpOwogI2VuZGlmCiAgICAgICAg
IH0gZWxzZSB7Ci0jaWYgKFBMQVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKElPUykpIHx8IFBMQVRG
T1JNKEVGTCkKKyNpZiAoUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oSU9TKSkgfHwgUExBVEZP
Uk0oRUZMKSB8fCBQTEFURk9STShOSVgpCiAgICAgICAgICAgICB3cml0ZVNlbGVjdGlvblRvUGFz
dGVib2FyZCgqUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCkpOwogI2Vsc2UKICAg
ICAgICAgICAgIC8vIEZJWE1FOiBDb252ZXJ0IGFsbCBvdGhlciBwbGF0Zm9ybXMgdG8gbWF0Y2gg
TWFjIGFuZCBkZWxldGUgdGhpcy4KQEAgLTExOTcsNyArMTE5Nyw3IEBAIHZvaWQgRWRpdG9yOjpj
b3B5SW1hZ2UoY29uc3QgSGl0VGVzdFJlc3VsdCYgcmVzdWx0KQogICAgIGlmICh1cmwuaXNFbXB0
eSgpKQogICAgICAgICB1cmwgPSByZXN1bHQuYWJzb2x1dGVJbWFnZVVSTCgpOwogCi0jaWYgUExB
VEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9S
TShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKICAgICB3cml0ZUltYWdlVG9QYXN0ZWJvYXJkKCpQYXN0
ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKSwgKmVsZW1lbnQsIHVybCwgcmVzdWx0LmFs
dERpc3BsYXlTdHJpbmcoKSk7CiAjZWxzZQogICAgIFBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlB
bmRQYXN0ZSgpLT53cml0ZUltYWdlKCplbGVtZW50LCB1cmwsIHJlc3VsdC5hbHREaXNwbGF5U3Ry
aW5nKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaCBiL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgKaW5kZXggOTcyNzM4NWUwMDQwODVlNjU2YmVj
ODRlZWFlNGIzMTU5MzliZTE4MS4uZDliYjVjNTllYjU3YmZmNjlhOWI2NTE1MzJiYzQ1MmJlYTY5
NTE2YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCkBAIC00MDksNyArNDA5LDcgQEAgcHVibGlj
OgogICAgIFBhc3NSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gd2ViQ29udGVudEZyb21QYXN0ZWJv
YXJkKFBhc3RlYm9hcmQmLCBSYW5nZSYgY29udGV4dCwgYm9vbCBhbGxvd1BsYWluVGV4dCwgYm9v
bCYgY2hvc2VQbGFpblRleHQpOwogI2VuZGlmCiAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRG
T1JNKEVGTCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0o
TklYKQogICAgIHZvaWQgd3JpdGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoUGFzdGVib2FyZCYpOwog
ICAgIHZvaWQgd3JpdGVJbWFnZVRvUGFzdGVib2FyZChQYXN0ZWJvYXJkJiwgRWxlbWVudCYgaW1h
Z2VFbGVtZW50LCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHRpdGxlKTsKICNlbmRpZgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oCmluZGV4IGM0MjFhZWVjMDk5OTFhNjU3
OWY2NWZmZDQ4OGJjNTQ5OWY5NTI1YTMuLjZiNTAzMTkyZjJhYTVlNGMyZmIwNjljYzhkNWE0MThk
MmZkM2NhYzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1l
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50LmgKQEAgLTMz
LDcgKzMzLDcgQEAKICNpbmNsdWRlICJJbnRTaXplLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KIAotI2lmIFVTRShDRykKKyNpZiBVU0UoQ0cpIHx8IFBMQVRGT1JNKE5JWCkKICNkZWZpbmUg
RGVmYXVsdEludGVycG9sYXRpb25RdWFsaXR5IEludGVycG9sYXRpb25Mb3cKICNlbHNlCiAjZGVm
aW5lIERlZmF1bHRJbnRlcnBvbGF0aW9uUXVhbGl0eSBJbnRlcnBvbGF0aW9uRGVmYXVsdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAKaW5kZXggZDU2NTk4ZjQ5
NDJhZGRjODEwMGJmZTA5NTcxMTM1NmViNTc3YjQxMS4uY2JkMmVmMzUwZGZlMmRlNDllMzI1MWRk
ZDkzNjE0YWFjM2ZiNTczNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0hpc3Rv
cnlDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSGlzdG9yeUNvbnRy
b2xsZXIuY3BwCkBAIC0xMzksMTEgKzEzOSwyMCBAQCB2b2lkIEhpc3RvcnlDb250cm9sbGVyOjpy
ZXN0b3JlU2Nyb2xsUG9zaXRpb25BbmRWaWV3U3RhdGUoKQogICAgICAgICAgICAgICAgIHNjcm9s
bGluZ0Nvb3JkaW5hdG9yLT5mcmFtZVZpZXdSb290TGF5ZXJEaWRDaGFuZ2Uodmlldyk7CiAgICAg
ICAgIH0KIAorICAgICAgICBkb3VibGUgY3VycmVudFNjYWxlRmFjdG9yID0gbV9jdXJyZW50SXRl
bS0+cGFnZVNjYWxlRmFjdG9yKCk7CisgICAgICAgIEludFBvaW50IGN1cnJlbnRTY3JvbGxQb2lu
dCA9IG1fY3VycmVudEl0ZW0tPnNjcm9sbFBvaW50KCk7CisjaWYgUExBVEZPUk0oTklYKQorICAg
ICAgICBkb3VibGUgcHJldmlvdXNTY2FsZUZhY3RvciA9IG1fcHJldmlvdXNJdGVtID8gbV9wcmV2
aW91c0l0ZW0tPnBhZ2VTY2FsZUZhY3RvcigpIDogY3VycmVudFNjYWxlRmFjdG9yOworICAgICAg
ICBJbnRQb2ludCBwcmV2aW91c1Njcm9sbFBvaW50ID0gbV9wcmV2aW91c0l0ZW0gPyBtX3ByZXZp
b3VzSXRlbS0+c2Nyb2xsUG9pbnQoKSA6IGN1cnJlbnRTY3JvbGxQb2ludDsKKworICAgICAgICBp
ZiAocHJldmlvdXNTY2FsZUZhY3RvciAhPSBjdXJyZW50U2NhbGVGYWN0b3IgfHwgcHJldmlvdXNT
Y3JvbGxQb2ludCAhPSBjdXJyZW50U2Nyb2xsUG9pbnQpIHsKKyNlbHNlCiAgICAgICAgIGlmICgh
dmlldy0+d2FzU2Nyb2xsZWRCeVVzZXIoKSkgewotICAgICAgICAgICAgaWYgKHBhZ2UgJiYgbV9m
cmFtZS5pc01haW5GcmFtZSgpICYmIG1fY3VycmVudEl0ZW0tPnBhZ2VTY2FsZUZhY3RvcigpKQot
ICAgICAgICAgICAgICAgIHBhZ2UtPnNldFBhZ2VTY2FsZUZhY3RvcihtX2N1cnJlbnRJdGVtLT5w
YWdlU2NhbGVGYWN0b3IoKSwgbV9jdXJyZW50SXRlbS0+c2Nyb2xsUG9pbnQoKSk7CisjZW5kaWYg
Ly8gUExBVEZPUk0oTklYKQorICAgICAgICAgICAgaWYgKHBhZ2UgJiYgbV9mcmFtZS5pc01haW5G
cmFtZSgpICYmIGN1cnJlbnRTY2FsZUZhY3RvcikKKyAgICAgICAgICAgICAgICBwYWdlLT5zZXRQ
YWdlU2NhbGVGYWN0b3IoY3VycmVudFNjYWxlRmFjdG9yLCBjdXJyZW50U2Nyb2xsUG9pbnQpOwog
ICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHZpZXctPnNldFNjcm9sbFBvc2l0aW9u
KG1fY3VycmVudEl0ZW0tPnNjcm9sbFBvaW50KCkpOworICAgICAgICAgICAgICAgIHZpZXctPnNl
dFNjcm9sbFBvc2l0aW9uKGN1cnJlbnRTY3JvbGxQb2ludCk7CiAgICAgICAgIH0KICAgICB9CiB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggZmE1YjM2MGNhNjBhNTM0Mzkw
ZGEyY2RhODk2NDExZWI0MjY1MDcxMi4uYjUzOTJlNGM3MTkwN2I5ZDFmMDk0ZWNlYjk1MzhjN2I4
N2FjZWYwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMjU2NSw2ICsy
NTY1LDM2IEBAIHZvaWQgRXZlbnRIYW5kbGVyOjpkZWZhdWx0V2hlZWxFdmVudEhhbmRsZXIoTm9k
ZSogc3RhcnROb2RlLCBXaGVlbEV2ZW50KiB3aGVlbEV2CiAgICAgICAgIG1fcHJldmlvdXNXaGVl
bFNjcm9sbGVkRWxlbWVudCA9IHN0b3BFbGVtZW50OwogfQogCisjaWYgUExBVEZPUk0oTklYKQor
dm9pZCBFdmVudEhhbmRsZXI6OmhhbmRsZVNpbmdsZVRhcChkb3VibGUgdGltZXN0YW1wLCBjb25z
dCBQbGF0Zm9ybVRvdWNoUG9pbnQmIHBvaW50KQoreworICAgIEludFBvaW50IHRhcmdldFBvaW50
OworI2lmIEVOQUJMRShUT1VDSF9BREpVU1RNRU5UKQorICAgIGJvb2wgcG9zaXRpb25BZGp1c3Rl
ZCA9IGZhbHNlOworICAgIGlmIChtX2ZyYW1lLnNldHRpbmdzKCkudG91Y2hBZGp1c3RtZW50RW5h
YmxlZCgpKSB7CisgICAgICAgIE5vZGUqIHRhcmdldE5vZGUgPSAwOworICAgICAgICBwb3NpdGlv
bkFkanVzdGVkID0gYmVzdENsaWNrYWJsZU5vZGVGb3JUb3VjaFBvaW50KHBvaW50LnBvcygpLCBJ
bnRTaXplKHBvaW50LnJhZGl1c1goKSwgcG9pbnQucmFkaXVzWSgpKSwgdGFyZ2V0UG9pbnQsIHRh
cmdldE5vZGUpOworICAgIH0KKyAgICBpZiAoIXBvc2l0aW9uQWRqdXN0ZWQpCisgICAgICAgIHRh
cmdldFBvaW50ID0gcG9pbnQucG9zKCk7CisjZWxzZQorICAgIHRhcmdldFBvaW50ID0gcG9pbnQu
cG9zKCk7CisjZW5kaWYKKworICAgIFBsYXRmb3JtTW91c2VFdmVudCBmYWtlTW91c2VNb3ZlKHRh
cmdldFBvaW50LCBwb2ludC5zY3JlZW5Qb3MoKSwgTm9CdXR0b24sIFBsYXRmb3JtRXZlbnQ6Ok1v
dXNlTW92ZWQsIC8qIGNsaWNrQ291bnQgKi8gMCwKKyAgICBmYWxzZSAvKiBzaGlmdCAqLywgZmFs
c2UgLyogY3RybCAqLywgZmFsc2UgLyogYWx0ICovLCBmYWxzZSAvKiBtZXRhICovLCB0aW1lc3Rh
bXApOworICAgIG1vdXNlTW92ZWQoZmFrZU1vdXNlTW92ZSk7CisKKyAgICBQbGF0Zm9ybU1vdXNl
RXZlbnQgZmFrZU1vdXNlRG93bih0YXJnZXRQb2ludCwgcG9pbnQuc2NyZWVuUG9zKCksIExlZnRC
dXR0b24sIFBsYXRmb3JtRXZlbnQ6Ok1vdXNlUHJlc3NlZCwgMSAvKiB0YXBDb3VudCAqLywKKyAg
ICBmYWxzZSAvKiBzaGlmdCAqLywgZmFsc2UgLyogY3RybCAqLywgZmFsc2UgLyogYWx0ICovLCBm
YWxzZSAvKiBtZXRhICovLCB0aW1lc3RhbXApOworICAgIGhhbmRsZU1vdXNlUHJlc3NFdmVudChm
YWtlTW91c2VEb3duKTsKKworICAgIFBsYXRmb3JtTW91c2VFdmVudCBmYWtlTW91c2VVcCh0YXJn
ZXRQb2ludCwgcG9pbnQuc2NyZWVuUG9zKCksIExlZnRCdXR0b24sIFBsYXRmb3JtRXZlbnQ6Ok1v
dXNlUmVsZWFzZWQsIDEgLyogdGFwQ291bnQgKi8sCisgICAgZmFsc2UgLyogc2hpZnQgKi8sIGZh
bHNlIC8qIGN0cmwgKi8sIGZhbHNlIC8qIGFsdCAqLywgZmFsc2UgLyogbWV0YSAqLywgdGltZXN0
YW1wKTsKKyAgICBoYW5kbGVNb3VzZVJlbGVhc2VFdmVudChmYWtlTW91c2VVcCk7Cit9CisjZW5k
aWYgLy8gUExBVEZPUk0oTklYKQorCiAjaWYgRU5BQkxFKFRPVUNIX0FESlVTVE1FTlQpCiBib29s
IEV2ZW50SGFuZGxlcjo6YmVzdENsaWNrYWJsZU5vZGVGb3JUb3VjaFBvaW50KGNvbnN0IEludFBv
aW50JiB0b3VjaENlbnRlciwgY29uc3QgSW50U2l6ZSYgdG91Y2hSYWRpdXMsIEludFBvaW50JiB0
YXJnZXRQb2ludCwgTm9kZSomIHRhcmdldE5vZGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0V2ZW50SGFuZGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuaAppbmRleCAzNGMwMDk1OTQxZTgwMTk1OTE5MjgxN2YyMjIzODEzOGQzMzA5ZDY2Li45MWJk
MmM3MjIzMmU3MDQ4ODE5NGFmOTg4NjI0NDE5N2VkMTY0MWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZl
bnRIYW5kbGVyLmgKQEAgLTcwLDYgKzcwLDkgQEAgY2xhc3MgTm9kZTsKIGNsYXNzIE9wdGlvbmFs
Q3Vyc29yOwogY2xhc3MgUGxhdGZvcm1LZXlib2FyZEV2ZW50OwogY2xhc3MgUGxhdGZvcm1Ub3Vj
aEV2ZW50OworI2lmIFBMQVRGT1JNKE5JWCkKK2NsYXNzIFBsYXRmb3JtVG91Y2hQb2ludDsKKyNl
bmRpZgogY2xhc3MgUGxhdGZvcm1XaGVlbEV2ZW50OwogY2xhc3MgUmVuZGVyRWxlbWVudDsKIGNs
YXNzIFJlbmRlckxheWVyOwpAQCAtMTc1LDYgKzE3OCw5IEBAIHB1YmxpYzoKICAgICB2b2lkIGRl
ZmF1bHRXaGVlbEV2ZW50SGFuZGxlcihOb2RlKiwgV2hlZWxFdmVudCopOwogICAgIGJvb2wgaGFu
ZGxlUGFzdGVHbG9iYWxTZWxlY3Rpb24oY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50Jik7CiAKKyNp
ZiBQTEFURk9STShOSVgpCisgICAgdm9pZCBoYW5kbGVTaW5nbGVUYXAoZG91YmxlIHRpbWVzdGFt
cCwgY29uc3QgUGxhdGZvcm1Ub3VjaFBvaW50Jik7CisjZW5kaWYKICNpZiBFTkFCTEUoVE9VQ0hf
QURKVVNUTUVOVCkKICAgICBib29sIGJlc3RDbGlja2FibGVOb2RlRm9yVG91Y2hQb2ludChjb25z
dCBJbnRQb2ludCYgdG91Y2hDZW50ZXIsIGNvbnN0IEludFNpemUmIHRvdWNoUmFkaXVzLCBJbnRQ
b2ludCYgdGFyZ2V0UG9pbnQsIE5vZGUqJiB0YXJnZXROb2RlKTsKICAgICBib29sIGJlc3RDb250
ZXh0TWVudU5vZGVGb3JUb3VjaFBvaW50KGNvbnN0IEludFBvaW50JiB0b3VjaENlbnRlciwgY29u
c3QgSW50U2l6ZSYgdG91Y2hSYWRpdXMsIEludFBvaW50JiB0YXJnZXRQb2ludCwgTm9kZSomIHRh
cmdldE5vZGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQ3Vyc29yLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaAppbmRleCBmMjBmZGZhYjQ4YzFhMTdi
ZTY4ODhmNmM3ZjBhYTI1ZTg1NTdkZGU2Li4zMmNkZWRkYjhiMzJiMTE1MTEyMTQ3YmQ0ZmM0NjFi
MzNmMDBjZGE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9DdXJzb3IuaApAQCAtNzcsOCArNzcsMTAgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogICAgIHR5cGVkZWYgTlNDdXJzb3IgKlBsYXRmb3JtQ3Vyc29y
OwogI2VsaWYgUExBVEZPUk0oR1RLKQogICAgIHR5cGVkZWYgR1JlZlB0cjxHZGtDdXJzb3I+IFBs
YXRmb3JtQ3Vyc29yOwotI2VsaWYgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCisjZWxp
ZiBQTEFURk9STShFRkwpCiAgICAgdHlwZWRlZiBjb25zdCBjaGFyKiBQbGF0Zm9ybUN1cnNvcjsK
KyNlbGlmIFBMQVRGT1JNKE5JWCkKKyAgICB0eXBlZGVmIHVuc2lnbmVkIFBsYXRmb3JtQ3Vyc29y
OwogI2VsaWYgUExBVEZPUk0oQkxBQ0tCRVJSWSkKICAgICB0eXBlZGVmIEJsYWNrQmVycnk6OlBs
YXRmb3JtOjpCbGFja0JlcnJ5Q3Vyc29yIFBsYXRmb3JtQ3Vyc29yOwogI2Vsc2UKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5oCmluZGV4IDg5NDhmN2M5MDQ0NDU1ZGRkNDJk
MzNkYzAxZGQxM2VhMmVlY2Q2NWUuLjkyNGQ0NzQ5YTUyMDhmNjQwOWM2MDkxNjkzMWFiZjM5YzZi
MDUwY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1l
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRkZURnJhbWUuaApAQCAtMTg0
LDcgKzE4NCw2IEBAIHByaXZhdGU6CiAjZW5kaWYgLy8gVVNFKFdFQkFVRElPX0lQUCkKIAogI2lm
IFBMQVRGT1JNKE5JWCkKLSAgICB2b2lkIHNjYWxlUGxhbmFyRGF0YShmbG9hdCBzY2FsZSk7CiAg
ICAgT3duUHRyPE5peDo6RkZURnJhbWU+IG1fZmZ0RnJhbWU7CiAjZW5kaWYgLy8gUExBVEZPUk0o
TklYKQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9uaXgvQXVk
aW9CdXNOaXguY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbml4L0F1ZGlvQnVz
Tml4LmNwcAppbmRleCA3MjEwOTkzNTNhMTExMmY2ZjJlMTM2N2M1YzQ0MWJmYzlmNDc1N2I5Li5h
NGI3NjE3NGQ3YTU3MTcxNTY3YTkxY2Q4MTlmODU5MDUwMjBkYmRmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9uaXgvQXVkaW9CdXNOaXguY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL25peC9BdWRpb0J1c05peC5jcHAKQEAgLTMwLDYgKzMw
LDcgQEAKICNpbmNsdWRlICJBdWRpb0J1cy5oIgogCiAjaW5jbHVkZSAiQXVkaW9GaWxlUmVhZGVy
LmgiCisjaW5jbHVkZSAiRmlsZVN5c3RlbS5oIgogI2luY2x1ZGUgPGNzdGRpbz4KICNpbmNsdWRl
IDxwdWJsaWMvTXVsdGlDaGFubmVsUENNRGF0YS5oPgogI2luY2x1ZGUgPHB1YmxpYy9QbGF0Zm9y
bS5oPgpAQCAtNTMsOSArNTQsMTEgQEAgUGFzc1JlZlB0cjxBdWRpb0J1cz4gQXVkaW9CdXM6Omxv
YWRQbGF0Zm9ybVJlc291cmNlKGNvbnN0IGNoYXIqIG5hbWUsIGZsb2F0IHNhbXAKIHsKICAgICAv
LyBGSVhNRTogVGhpcyBhc3N1bWVzIHRoZSBmaWxlIHN5c3RlbSB1c2VzIGxhdGluMSBvciBVVEYt
OCBlbmNvZGluZywgYnV0IHRoaXMgY29tbWVudCBhbHNvIGFzc3VtZXMKICAgICAvLyB0aGF0IG5v
bi1hc2NpaSBmaWxlIG5hbWVzIHdvdWxkIGFwcGVhciBoZXJlLgotICAgIGNvbnN0IENTdHJpbmcg
YWJzb2x1dGVGaWxlbmFtZShtYWtlU3RyaW5nKERBVEFfRElSLCAiL3dlYmF1ZGlvL3Jlc291cmNl
cy8iLCBuYW1lLCAiLndhdiIpLnV0ZjgoKSk7CisgICAgQ1N0cmluZyBhYnNvbHV0ZUZpbGVuYW1l
KG1ha2VTdHJpbmcoREFUQV9ESVIsICIvd2ViYXVkaW8vcmVzb3VyY2VzLyIsIG5hbWUsICIud2F2
IikudXRmOCgpKTsKICAgICBzdHJ1Y3Qgc3RhdCBzdGF0RGF0YTsKICAgICBpZiAoOjpzdGF0KGFi
c29sdXRlRmlsZW5hbWUuZGF0YSgpLCAmc3RhdERhdGEpID09IC0xKQorICAgICAgICBhYnNvbHV0
ZUZpbGVuYW1lID0gbWFrZVN0cmluZyhVTklOU1RBTExFRF9BVURJT19SRVNPVVJDRVNfRElSLCAi
LyIsIG5hbWUsICIud2F2IikudXRmOCgpOworICAgIGlmICg6OnN0YXQoYWJzb2x1dGVGaWxlbmFt
ZS5kYXRhKCksICZzdGF0RGF0YSkgPT0gLTEpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAg
ICAgRklMRSogZmlsZSA9IGZvcGVuKGFic29sdXRlRmlsZW5hbWUuZGF0YSgpLCAicmIiKTsKQEAg
LTY0LDcgKzY3LDcgQEAgUGFzc1JlZlB0cjxBdWRpb0J1cz4gQXVkaW9CdXM6OmxvYWRQbGF0Zm9y
bVJlc291cmNlKGNvbnN0IGNoYXIqIG5hbWUsIGZsb2F0IHNhbXAKIAogICAgIFdURjo6VmVjdG9y
PGNoYXI+IGZpbGVDb250ZW50czsKICAgICBmaWxlQ29udGVudHMucmVzaXplKHN0YXREYXRhLnN0
X3NpemUpOwotICAgIHNpemVfdCBieXRlc1JlYWQgPSBmcmVhZCgmZmlsZUNvbnRlbnRzWzBdLCBm
aWxlQ29udGVudHMuc2l6ZSgpLCAxLCBmaWxlKTsKKyAgICBzaXplX3QgYnl0ZXNSZWFkID0gZnJl
YWQoJmZpbGVDb250ZW50c1swXSwgMSwgZmlsZUNvbnRlbnRzLnNpemUoKSwgZmlsZSk7CiAgICAg
ZmNsb3NlKGZpbGUpOwogICAgIGlmIChieXRlc1JlYWQgPCBmaWxlQ29udGVudHMuc2l6ZSgpKQog
ICAgICAgICBmaWxlQ29udGVudHMucmVzaXplKGJ5dGVzUmVhZCk7CkBAIC04OCwzICs5MSw0IEBA
IFBhc3NSZWZQdHI8QXVkaW9CdXM+IGNyZWF0ZUJ1c0Zyb21Jbk1lbW9yeUF1ZGlvRmlsZShjb25z
dCB2b2lkKiBkYXRhLCBzaXplX3QgZGF0CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRp
ZiAvLyBFTkFCTEUoV0VCX0FVRElPKQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9HTENvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL0dMQ29udGV4dC5oCmluZGV4IDAzYjU3YjVlODI0NDQ4OGE1ZjllNjIyZjcwNjQ1OThkNjI4
ZjVmMjMuLjRlOWQzOWUzMTVkYTlhNTgyZjNiYTAwYWYzZWJhNGU2ZjcxZDA3ODYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oCkBAIC0yNSw3ICsyNSw3
IEBACiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NPd25Q
dHIuaD4KIAotI2lmIFVTRShFR0wpICYmICFQTEFURk9STShHVEspCisjaWYgVVNFKEVHTCkgJiYg
IVBMQVRGT1JNKEdUSykgJiYgIVBMQVRGT1JNKE5JWCkKICNpbmNsdWRlICJlZ2xwbGF0Zm9ybS5o
IgogdHlwZWRlZiBFR0xOYXRpdmVXaW5kb3dUeXBlIEdMTmF0aXZlV2luZG93VHlwZTsKICNlbHNl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvQ3Vyc29yTml4LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9DdXJzb3JOaXguY3BwCmluZGV4IDE3N2VmMGNj
ZTNiZTk3ZmVhYWQ0OGY2Nzg3MDU1NmRiOGExMTUyYzQuLmViODRiOWJjYzJjOTM5MmExYTNjZTM2
M2FkYTgzNjc5M2U1NDUwNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25p
eC9DdXJzb3JOaXguY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9DdXJzb3JO
aXguY3BwCkBAIC02LDcgKzYsNyBAQAogICogQ29weXJpZ2h0IChDKSAyMDA4IEtlbm5ldGggUm9o
ZGUgQ2hyaXN0aWFuc2VuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBQcm9GVVNJT04gZW1i
ZWRkZWQgc3lzdGVtcwogICogQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgU2Ftc3VuZyBFbGVjdHJv
bmljcwotICogQ29weXJpZ2h0IChDKSAyMDEyIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMg
c3Vic2lkaWFyeSgtaWVzKS4KKyAqIENvcHlyaWdodCAoQykgMjAxMiwgMjAxMyBOb2tpYSBDb3Jw
b3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICAqCkBAIC0zNSw4ICszNSw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5j
bHVkZSAiQ3Vyc29yLmgiCiAKLSNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgotCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIEN1cnNvcjo6Q3Vyc29yKGNvbnN0IEN1cnNvciYgb3RoZXIpCkBAIC02
MCw2MSArNTgsMTIgQEAgQ3Vyc29yJiBDdXJzb3I6Om9wZXJhdG9yPShjb25zdCBDdXJzb3ImIG90
aGVyKQogICAgIHJldHVybiAqdGhpczsKIH0KIAotc3RhdGljIGNvbnN0IGNoYXIqIGN1cnNvclN0
cmluZyhDdXJzb3I6OlR5cGUgdHlwZSkKLXsKLSAgICBzdGF0aWMgY29uc3QgY2hhciogY3Vyc29y
U3RyaW5nc1tdID0gewotICAgICAgICAiY3Vyc29yL3BvaW50ZXIiLAotICAgICAgICAiY3Vyc29y
L2Nyb3NzIiwKLSAgICAgICAgImN1cnNvci9oYW5kIiwKLSAgICAgICAgImN1cnNvci9pX2JlYW0i
LAotICAgICAgICAiY3Vyc29yL3dhaXQiLAotICAgICAgICAiY3Vyc29yL2hlbHAiLAotICAgICAg
ICAiY3Vyc29yL2Vhc3RfcmVzaXplIiwKLSAgICAgICAgImN1cnNvci9ub3J0aF9yZXNpemUiLAot
ICAgICAgICAiY3Vyc29yL25vcnRoX2Vhc3RfcmVzaXplIiwKLSAgICAgICAgImN1cnNvci9ub3J0
aF93ZXN0X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivc291dGhfcmVzaXplIiwKLSAgICAgICAg
ImN1cnNvci9zb3V0aF9lYXN0X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivc291dGhfd2VzdF9y
ZXNpemUiLAotICAgICAgICAiY3Vyc29yL3dlc3RfcmVzaXplIiwKLSAgICAgICAgImN1cnNvci9u
b3J0aF9zb3V0aF9yZXNpemUiLAotICAgICAgICAiY3Vyc29yL2Vhc3Rfd2VzdF9yZXNpemUiLAot
ICAgICAgICAiY3Vyc29yL25vcnRoX2Vhc3Rfc291dGhfd2VzdF9yZXNpemUiLAotICAgICAgICAi
Y3Vyc29yL25vcnRoX3dlc3Rfc291dGhfZWFzdF9yZXNpemUiLAotICAgICAgICAiY3Vyc29yL2Nv
bHVtbl9yZXNpemUiLAotICAgICAgICAiY3Vyc29yL3Jvd19yZXNpemUiLAotICAgICAgICAiY3Vy
c29yL21pZGRsZV9wYW5uaW5nIiwKLSAgICAgICAgImN1cnNvci9lYXN0X3Bhbm5pbmciLAotICAg
ICAgICAiY3Vyc29yL25vcnRoX3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29yL25vcnRoX2Vhc3Rf
cGFubmluZyIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfd2VzdF9wYW5uaW5nIiwKLSAgICAgICAg
ImN1cnNvci9zb3V0aF9wYW5uaW5nIiwKLSAgICAgICAgImN1cnNvci9zb3V0aF9lYXN0X3Bhbm5p
bmciLAotICAgICAgICAiY3Vyc29yL3NvdXRoX3dlc3RfcGFubmluZyIsCi0gICAgICAgICJjdXJz
b3Ivd2VzdF9wYW5uaW5nIiwKLSAgICAgICAgImN1cnNvci9tb3ZlIiwKLSAgICAgICAgImN1cnNv
ci92ZXJ0aWNhbF90ZXh0IiwKLSAgICAgICAgImN1cnNvci9jZWxsIiwKLSAgICAgICAgImN1cnNv
ci9jb250ZXh0X21lbnUiLAotICAgICAgICAiY3Vyc29yL2FsaWFzIiwKLSAgICAgICAgImN1cnNv
ci9wcm9ncmVzcyIsCi0gICAgICAgICJjdXJzb3Ivbm9fZHJvcCIsCi0gICAgICAgICJjdXJzb3Iv
Y29weSIsCi0gICAgICAgICJjdXJzb3Ivbm9uZSIsCi0gICAgICAgICJjdXJzb3Ivbm90X2FsbG93
ZWQiLAotICAgICAgICAiY3Vyc29yL3pvb21faW4iLAotICAgICAgICAiY3Vyc29yL3pvb21fb3V0
IiwKLSAgICAgICAgImN1cnNvci9ncmFiIiwKLSAgICAgICAgImN1cnNvci9ncmFiYmluZyIsCi0g
ICAgICAgICIifTsgLy8gRklYTUU6IEp1c3QgcmV0dXJuICIiIGZvciBjdXN0b20gdHlwZS4gV2Ug
ZG9uJ3Qgc3VwcG9ydCBpdCBub3cuCi0gICAgcmV0dXJuIGN1cnNvclN0cmluZ3NbdHlwZV07Ci19
Ci0KIHZvaWQgQ3Vyc29yOjplbnN1cmVQbGF0Zm9ybUN1cnNvcigpIGNvbnN0CiB7CiAgICAgaWYg
KG1fcGxhdGZvcm1DdXJzb3IpCiAgICAgICAgIHJldHVybjsKLSAgICBtX3BsYXRmb3JtQ3Vyc29y
ID0gY3Vyc29yU3RyaW5nKG1fdHlwZSk7CisgICAgbV9wbGF0Zm9ybUN1cnNvciA9IG1fdHlwZTsK
IH0KIAotfQorfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uaXgvR2FtZXBhZHNOaXguY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbml4L0dhbWVwYWRzTml4LmNwcAppbmRleCA3Y2JiOGFkMDI1Zjk1NmMyNGI3MTExZDM4Nzg2
MGI4YTE2NDEyNzBiLi4xNDBhNWFhNjJmOTc3MmJjNDIwMWM4NTE4NGFjNzkwZWRhZGNiYmYwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvR2FtZXBhZHNOaXguY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9HYW1lcGFkc05peC5jcHAKQEAgLTEsNSAr
MSw2IEBACiAvKgogICogQ29weXJpZ2h0IChDKSAyMDExLCBHb29nbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEyLCAyMDEzIE5va2lhIENvcnBvcmF0aW9u
IGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucyBhcmUgbWV0OgpAQCAtNDcsNyArNDgsNyBAQCB2b2lkIHNhbXBsZUdhbWVwYWRzKEdhbWVw
YWRMaXN0KiBpbnRvKQogICAgICAgICAgICAgUmVmUHRyPEdhbWVwYWQ+IGdhbWVwYWQgPSBpbnRv
LT5pdGVtKGkpOwogICAgICAgICAgICAgaWYgKCFnYW1lcGFkKQogICAgICAgICAgICAgICAgIGdh
bWVwYWQgPSBHYW1lcGFkOjpjcmVhdGUoKTsKLSAgICAgICAgICAgIGdhbWVwYWQtPmlkKG5peEdh
bWVwYWQuaWQpOworICAgICAgICAgICAgZ2FtZXBhZC0+aWQoU3RyaW5nOjpmcm9tVVRGOChuaXhH
YW1lcGFkLmlkKSk7CiAgICAgICAgICAgICBnYW1lcGFkLT5pbmRleChpKTsKICAgICAgICAgICAg
IGdhbWVwYWQtPnRpbWVzdGFtcChuaXhHYW1lcGFkLnRpbWVzdGFtcCk7CiAgICAgICAgICAgICBn
YW1lcGFkLT5heGVzKG5peEdhbWVwYWQuYXhlc0xlbmd0aCwgbml4R2FtZXBhZC5heGVzKTsKQEAg
LTU4LDYgKzU5LDcgQEAgdm9pZCBzYW1wbGVHYW1lcGFkcyhHYW1lcGFkTGlzdCogaW50bykKICAg
ICB9CiB9CiAKLX0KK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShH
QU1FUEFEKQogCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25p
eC9SZW5kZXJUaGVtZU5peC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvUmVuZGVy
VGhlbWVOaXguY3BwCmluZGV4IDgwOGYwMGI5MjJmZmVlNWRkOWFhYjM3ODMzNmYwNDI2YjBjMTNl
NWQuLjI1NTUyNTY3YjU1NzU1OWU2NjYxMDA0MmQ3MzNiZjZhMmMyNDlkYTggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L1JlbmRlclRoZW1lTml4LmNwcApAQCAtMSw1ICsxLDUg
QEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTItMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQv
b3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIsIDIwMTMgTm9r
aWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiUmVuZGVyVGhlbWVOaXguaCIKIAorI2luY2x1ZGUgIkhUTUxNZWRpYUVsZW1l
bnQuaCIKICNpbmNsdWRlICJJbnB1dFR5cGVOYW1lcy5oIgogI2luY2x1ZGUgIlBhaW50SW5mby5o
IgogI2luY2x1ZGUgIlBsYXRmb3JtQ29udGV4dENhaXJvLmgiCkBAIC00MCwxMSArNDEsMTAgQEAK
ICNpbmNsdWRlICJIVE1MTWV0ZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiUmVuZGVyTWV0ZXIuaCIK
ICNlbmRpZgorI2luY2x1ZGUgIlVzZXJBZ2VudFN0eWxlU2hlZXRzLmgiCiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotc3RhdGljIGNvbnN0IHVuc2lnbmVkIGRlZmF1bHRCdXR0b25CYWNrZ3JvdW5k
Q29sb3IgPSAweGZmZGRkZGRkOwotCiBzdGF0aWMgdm9pZCBzZXRTaXplSWZBdXRvKFJlbmRlclN0
eWxlKiBzdHlsZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSkKIHsKICAgICBpZiAoc3R5bGUtPndpZHRo
KCkuaXNJbnRyaW5zaWNPckF1dG8oKSkKQEAgLTUzLDExICs1Myw2IEBAIHN0YXRpYyB2b2lkIHNl
dFNpemVJZkF1dG8oUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25zdCBJbnRTaXplJiBzaXplKQogICAg
ICAgICBzdHlsZS0+c2V0SGVpZ2h0KExlbmd0aChzaXplLmhlaWdodCgpLCBGaXhlZCkpOwogfQog
Ci1Db2xvciB0b0NvbG9yKGNvbnN0IE5peDo6Q29sb3ImIGNvbG9yKQotewotICAgIHJldHVybiBX
ZWJDb3JlOjpDb2xvcihSR0JBMzIoY29sb3IpKTsKLX0KLQogc3RhdGljIE5peDo6VGhlbWVFbmdp
bmUqIHRoZW1lRW5naW5lKCkKIHsKICAgICByZXR1cm4gTml4OjpQbGF0Zm9ybTo6Y3VycmVudCgp
LT50aGVtZUVuZ2luZSgpOwpAQCAtNjgsNiArNjMsMTYgQEAgc3RhdGljIE5peDo6Q2FudmFzKiB3
ZWJDYW52YXMoY29uc3QgUGFpbnRJbmZvJiBpbmZvKQogICAgIHJldHVybiBpbmZvLmNvbnRleHQt
PnBsYXRmb3JtQ29udGV4dCgpLT5jcigpOwogfQogCitzdGF0aWMgSW50U2l6ZSB0b0ludFNpemUo
Y29uc3QgTml4OjpTaXplJiBzaXplKQoreworICAgIHJldHVybiBJbnRTaXplKHNpemUud2lkdGgs
IHNpemUuaGVpZ2h0KTsKK30KKworc3RhdGljIE5peDo6UmVjdCB0b05peFJlY3QoY29uc3QgSW50
UmVjdCYgcmVjdCkKK3sKKyAgICByZXR1cm4gTml4OjpSZWN0KHJlY3QueCgpLCByZWN0LnkoKSwg
cmVjdC53aWR0aCgpLCByZWN0LmhlaWdodCgpKTsKK30KKwogUGFzc1JlZlB0cjxSZW5kZXJUaGVt
ZT4gUmVuZGVyVGhlbWU6OnRoZW1lRm9yUGFnZShQYWdlKikKIHsKICAgICByZXR1cm4gUmVuZGVy
VGhlbWVOaXg6OmNyZWF0ZSgpOwpAQCAtMTA1LDYzICsxMTAsNjMgQEAgU3RyaW5nIFJlbmRlclRo
ZW1lTml4OjpleHRyYVBsdWdJbnNTdHlsZVNoZWV0KCkKIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6
OnBsYXRmb3JtQWN0aXZlU2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAgICBy
ZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5hY3RpdmVTZWxlY3Rpb25CYWNrZ3JvdW5kQ29s
b3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmFjdGl2ZVNlbGVjdGlvbkJhY2tncm91
bmRDb2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1J
bmFjdGl2ZVNlbGVjdGlvbkJhY2tncm91bmRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRv
Q29sb3IodGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKSk7
CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmluYWN0aXZlU2VsZWN0aW9uQmFja2dyb3VuZENv
bG9yKCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUFjdGl2
ZVNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3Io
dGhlbWVFbmdpbmUoKS0+YWN0aXZlU2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkpOworICAgIHJl
dHVybiB0aGVtZUVuZ2luZSgpLT5hY3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IoKS5hcmdi
MzIoKTsKIH0KIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtSW5hY3RpdmVTZWxlY3Rp
b25Gb3JlZ3JvdW5kQ29sb3IoKSBjb25zdAogewotICAgIHJldHVybiB0b0NvbG9yKHRoZW1lRW5n
aW5lKCktPmluYWN0aXZlU2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkpOworICAgIHJldHVybiB0
aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZVNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpLmFyZ2IzMigp
OwogfQogCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVMaXN0Qm94U2VsZWN0
aW9uQmFja2dyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVu
Z2luZSgpLT5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKCkpOworICAgIHJl
dHVybiB0aGVtZUVuZ2luZSgpLT5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uQmFja2dyb3VuZENvbG9y
KCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZl
TGlzdEJveFNlbGVjdGlvbkJhY2tncm91bmRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRv
Q29sb3IodGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uQmFja2dyb3VuZENv
bG9yKCkpOworICAgIHJldHVybiB0aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZUxpc3RCb3hTZWxlY3Rp
b25CYWNrZ3JvdW5kQ29sb3IoKS5hcmdiMzIoKTsKIH0KIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6
OnBsYXRmb3JtQWN0aXZlTGlzdEJveFNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpIGNvbnN0CiB7
Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUoKS0+YWN0aXZlTGlzdEJveFNlbGVjdGlv
bkZvcmVncm91bmRDb2xvcigpKTsKKyAgICByZXR1cm4gdGhlbWVFbmdpbmUoKS0+YWN0aXZlTGlz
dEJveFNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xvciBSZW5k
ZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29s
b3IoKSBjb25zdAogewotICAgIHJldHVybiB0b0NvbG9yKHRoZW1lRW5naW5lKCktPmluYWN0aXZl
TGlzdEJveFNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpKTsKKyAgICByZXR1cm4gdGhlbWVFbmdp
bmUoKS0+aW5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkuYXJnYjMyKCk7
CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUFjdGl2ZVRleHRTZWFyY2hIaWdo
bGlnaHRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUoKS0+
YWN0aXZlVGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKCkpOworICAgIHJldHVybiB0aGVtZUVuZ2lu
ZSgpLT5hY3RpdmVUZXh0U2VhcmNoSGlnaGxpZ2h0Q29sb3IoKS5hcmdiMzIoKTsKIH0KIAogQ29s
b3IgUmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtSW5hY3RpdmVUZXh0U2VhcmNoSGlnaGxpZ2h0Q29s
b3IoKSBjb25zdAogewotICAgIHJldHVybiB0b0NvbG9yKHRoZW1lRW5naW5lKCktPmluYWN0aXZl
VGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKCkpOworICAgIHJldHVybiB0aGVtZUVuZ2luZSgpLT5p
bmFjdGl2ZVRleHRTZWFyY2hIaWdobGlnaHRDb2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xvciBS
ZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1Gb2N1c1JpbmdDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0
dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUoKS0+Zm9jdXNSaW5nQ29sb3IoKSk7CisgICAgcmV0dXJu
IHRoZW1lRW5naW5lKCktPmZvY3VzUmluZ0NvbG9yKCkuYXJnYjMyKCk7CiB9CiAKICNpZiBFTkFC
TEUoVE9VQ0hfRVZFTlRTKQogQ29sb3IgUmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtVGFwSGlnaGxp
Z2h0Q29sb3IoKSBjb25zdAogewotICAgIHJldHVybiB0b0NvbG9yKHRoZW1lRW5naW5lKCktPnRh
cEhpZ2hsaWdodENvbG9yKCkpOworICAgIHJldHVybiB0aGVtZUVuZ2luZSgpLT50YXBIaWdobGln
aHRDb2xvcigpLmFyZ2IzMigpOwogfQogI2VuZGlmCiAKQEAgLTE4NiwxMSArMTkxLDcgQEAgYm9v
bCBSZW5kZXJUaGVtZU5peDo6cGFpbnRCdXR0b24oUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBQYWlu
dEluZm8mIGksIGNvbnN0IEludFIKICAgICBOaXg6OlRoZW1lRW5naW5lOjpCdXR0b25FeHRyYVBh
cmFtcyBleHRyYVBhcmFtczsKICAgICBleHRyYVBhcmFtcy5pc0RlZmF1bHQgPSBpc0RlZmF1bHQo
byk7CiAgICAgZXh0cmFQYXJhbXMuaGFzQm9yZGVyID0gdHJ1ZTsKLSAgICBleHRyYVBhcmFtcy5i
YWNrZ3JvdW5kQ29sb3IgPSBkZWZhdWx0QnV0dG9uQmFja2dyb3VuZENvbG9yOwotICAgIGlmIChv
LT5oYXNCYWNrZ3JvdW5kKCkpCi0gICAgICAgIGV4dHJhUGFyYW1zLmJhY2tncm91bmRDb2xvciA9
IG8tPnN0eWxlKCktPnZpc2l0ZWREZXBlbmRlbnRDb2xvcihDU1NQcm9wZXJ0eUJhY2tncm91bmRD
b2xvcikucmdiKCk7Ci0KLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludEJ1dHRvbih3ZWJDYW52YXMo
aSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0KSwgZXh0cmFQYXJh
bXMpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50QnV0dG9uKHdlYkNhbnZhcyhpKSwgZ2V0V2Vi
VGhlbWVTdGF0ZSh0aGlzLCBvKSwgdG9OaXhSZWN0KHJlY3QpLCBleHRyYVBhcmFtcyk7CiAgICAg
cmV0dXJuIGZhbHNlOwogfQogCkBAIC0xOTgsMTAgKzE5OSwxMCBAQCBib29sIFJlbmRlclRoZW1l
Tml4OjpwYWludFRleHRGaWVsZChSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwg
Y29uc3QgSQogewogICAgIC8vIFdlYlRoZW1lRW5naW5lIGRvZXMgbm90IGhhbmRsZSBib3JkZXIg
cm91bmRlZCBjb3JuZXIgYW5kIGJhY2tncm91bmQgaW1hZ2UKICAgICAvLyBzbyByZXR1cm4gdHJ1
ZSB0byBkcmF3IENTUyBib3JkZXIgYW5kIGJhY2tncm91bmQuCi0gICAgaWYgKG8tPnN0eWxlKCkt
Pmhhc0JvcmRlclJhZGl1cygpIHx8IG8tPnN0eWxlKCktPmhhc0JhY2tncm91bmRJbWFnZSgpKQor
ICAgIGlmIChvLT5zdHlsZSgpLmhhc0JvcmRlclJhZGl1cygpIHx8IG8tPnN0eWxlKCkuaGFzQmFj
a2dyb3VuZEltYWdlKCkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCi0gICAgdGhlbWVFbmdpbmUo
KS0+cGFpbnRUZXh0RmllbGQod2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8p
LCBOaXg6OlJlY3QocmVjdCkpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50VGV4dEZpZWxkKHdl
YkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgdG9OaXhSZWN0KHJlY3QpKTsK
ICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTIxNiw3ICsyMTcsNyBAQCBib29sIFJlbmRlclRo
ZW1lTml4OjpwYWludENoZWNrYm94KFJlbmRlck9iamVjdCogbywgY29uc3QgUGFpbnRJbmZvJiBp
LCBjb25zdCBJbgogICAgIGV4dHJhUGFyYW1zLmNoZWNrZWQgPSBpc0NoZWNrZWQobyk7CiAgICAg
ZXh0cmFQYXJhbXMuaW5kZXRlcm1pbmF0ZSA9IGlzSW5kZXRlcm1pbmF0ZShvKTsKIAotICAgIHRo
ZW1lRW5naW5lKCktPnBhaW50Q2hlY2tib3god2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRl
KHRoaXMsIG8pLCBOaXg6OlJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKKyAgICB0aGVtZUVuZ2lu
ZSgpLT5wYWludENoZWNrYm94KHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBv
KSwgdG9OaXhSZWN0KHJlY3QpLCBleHRyYVBhcmFtcyk7CiAgICAgcmV0dXJuIGZhbHNlOwogfQog
CkBAIC0yMjYsNyArMjI3LDcgQEAgdm9pZCBSZW5kZXJUaGVtZU5peDo6c2V0Q2hlY2tib3hTaXpl
KFJlbmRlclN0eWxlKiBzdHlsZSkgY29uc3QKICAgICBpZiAoIXN0eWxlLT53aWR0aCgpLmlzSW50
cmluc2ljT3JBdXRvKCkgJiYgIXN0eWxlLT5oZWlnaHQoKS5pc0F1dG8oKSkKICAgICAgICAgcmV0
dXJuOwogCi0gICAgSW50U2l6ZSBzaXplID0gdGhlbWVFbmdpbmUoKS0+Z2V0Q2hlY2tib3hTaXpl
KCk7CisgICAgSW50U2l6ZSBzaXplID0gdG9JbnRTaXplKHRoZW1lRW5naW5lKCktPmdldENoZWNr
Ym94U2l6ZSgpKTsKICAgICBzZXRTaXplSWZBdXRvKHN0eWxlLCBzaXplKTsKIH0KIApAQCAtMjM2
LDcgKzIzNyw3IEBAIGJvb2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50UmFkaW8oUmVuZGVyT2JqZWN0
KiBvLCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0IEludFJlCiAgICAgZXh0cmFQYXJhbXMuY2hl
Y2tlZCA9IGlzQ2hlY2tlZChvKTsKICAgICBleHRyYVBhcmFtcy5pbmRldGVybWluYXRlID0gaXNJ
bmRldGVybWluYXRlKG8pOwogCi0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRSYWRpbyh3ZWJDYW52
YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0KSwgZXh0cmFQ
YXJhbXMpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50UmFkaW8od2ViQ2FudmFzKGkpLCBnZXRX
ZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKICAg
ICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTI0NiwxMyArMjQ3LDEzIEBAIHZvaWQgUmVuZGVyVGhl
bWVOaXg6OnNldFJhZGlvU2l6ZShSZW5kZXJTdHlsZSogc3R5bGUpIGNvbnN0CiAgICAgaWYgKCFz
dHlsZS0+d2lkdGgoKS5pc0ludHJpbnNpY09yQXV0bygpICYmICFzdHlsZS0+aGVpZ2h0KCkuaXNB
dXRvKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIEludFNpemUgc2l6ZSA9IHRoZW1lRW5naW5l
KCktPmdldFJhZGlvU2l6ZSgpOworICAgIEludFNpemUgc2l6ZSA9IHRvSW50U2l6ZSh0aGVtZUVu
Z2luZSgpLT5nZXRSYWRpb1NpemUoKSk7CiAgICAgc2V0U2l6ZUlmQXV0byhzdHlsZSwgc2l6ZSk7
CiB9CiAKIGJvb2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50TWVudUxpc3QoUmVuZGVyT2JqZWN0KiBv
LCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgdGhlbWVF
bmdpbmUoKS0+cGFpbnRNZW51TGlzdCh3ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhp
cywgbyksIE5peDo6UmVjdChyZWN0KSk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRNZW51TGlz
dCh3ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIHRvTml4UmVjdChyZWN0
KSk7CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCkBAIC0yODYsNyArMjg3LDcgQEAgYm9vbCBSZW5k
ZXJUaGVtZU5peDo6cGFpbnRQcm9ncmVzc0JhcihSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50
SW5mbyYgaSwgY29uc3QKICAgICBleHRyYVBhcmFtcy5wb3NpdGlvbiA9IHJlbmRlclByb2dyZXNz
LT5wb3NpdGlvbigpOwogICAgIGV4dHJhUGFyYW1zLmFuaW1hdGlvblByb2dyZXNzID0gcmVuZGVy
UHJvZ3Jlc3MtPmFuaW1hdGlvblByb2dyZXNzKCk7CiAgICAgZXh0cmFQYXJhbXMuYW5pbWF0aW9u
U3RhcnRUaW1lID0gcmVuZGVyUHJvZ3Jlc3MtPmFuaW1hdGlvblN0YXJ0VGltZSgpOwotICAgIHRo
ZW1lRW5naW5lKCktPnBhaW50UHJvZ3Jlc3NCYXIod2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0
YXRlKHRoaXMsIG8pLCBOaXg6OlJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKKyAgICB0aGVtZUVu
Z2luZSgpLT5wYWludFByb2dyZXNzQmFyKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0
aGlzLCBvKSwgdG9OaXhSZWN0KHJlY3QpLCBleHRyYVBhcmFtcyk7CiAKICAgICByZXR1cm4gZmFs
c2U7CiB9CkBAIC0zMDQsNyArMzA1LDcgQEAgZG91YmxlIFJlbmRlclRoZW1lTml4OjphbmltYXRp
b25EdXJhdGlvbkZvclByb2dyZXNzQmFyKFJlbmRlclByb2dyZXNzKikgY29uc3QKIAogYm9vbCBS
ZW5kZXJUaGVtZU5peDo6cGFpbnRTbGlkZXJUcmFjayhSZW5kZXJPYmplY3QqIG9iamVjdCwgY29u
c3QgUGFpbnRJbmZvJiBpbmZvLCBjb25zdCBJbnRSZWN0JiByZWN0KQogewotICAgIHRoZW1lRW5n
aW5lKCktPnBhaW50U2xpZGVyVHJhY2sod2ViQ2FudmFzKGluZm8pLCBnZXRXZWJUaGVtZVN0YXRl
KHRoaXMsIG9iamVjdCksIHJlY3QpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50U2xpZGVyVHJh
Y2sod2ViQ2FudmFzKGluZm8pLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG9iamVjdCksIHRvTml4
UmVjdChyZWN0KSk7CiAjaWYgRU5BQkxFKERBVEFMSVNUX0VMRU1FTlQpCiAgICAgcGFpbnRTbGlk
ZXJUaWNrcyhvYmplY3QsIGluZm8sIHJlY3QpOwogI2VuZGlmCkBAIC0zMTgsNyArMzE5LDcgQEAg
dm9pZCBSZW5kZXJUaGVtZU5peDo6YWRqdXN0U2xpZGVyVHJhY2tTdHlsZShTdHlsZVJlc29sdmVy
KiwgUmVuZGVyU3R5bGUqIHN0eWxlLAogCiBib29sIFJlbmRlclRoZW1lTml4OjpwYWludFNsaWRl
clRodW1iKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIGluZm8sIGNvbnN0
IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRTbGlkZXJUaHVtYih3
ZWJDYW52YXMoaW5mbyksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgb2JqZWN0KSwgcmVjdCk7Cisg
ICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRTbGlkZXJUaHVtYih3ZWJDYW52YXMoaW5mbyksIGdldFdl
YlRoZW1lU3RhdGUodGhpcywgb2JqZWN0KSwgdG9OaXhSZWN0KHJlY3QpKTsKIAogICAgIHJldHVy
biBmYWxzZTsKIH0KQEAgLTM4OCw3ICszODksNyBAQCBib29sIFJlbmRlclRoZW1lTml4OjpwYWlu
dElubmVyU3BpbkJ1dHRvbihSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgYwog
ICAgIGV4dHJhUGFyYW1zLnNwaW5VcCA9IGlzU3BpblVwQnV0dG9uUGFydFByZXNzZWQobyk7CiAg
ICAgZXh0cmFQYXJhbXMucmVhZE9ubHkgPSBpc1JlYWRPbmx5Q29udHJvbChvKTsKIAotICAgIHRo
ZW1lRW5naW5lKCktPnBhaW50SW5uZXJTcGluQnV0dG9uKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhl
bWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0KHJlY3QpLCBleHRyYVBhcmFtcyk7CisgICAgdGhl
bWVFbmdpbmUoKS0+cGFpbnRJbm5lclNwaW5CdXR0b24od2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVt
ZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKICAgICByZXR1
cm4gZmFsc2U7CiB9CiAKQEAgLTQzMiwxMCArNDMzLDY1IEBAIGJvb2wgUmVuZGVyVGhlbWVOaXg6
OnBhaW50TWV0ZXIoUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0IElu
dFJlCiAgICAgZXh0cmFQYXJhbXMuaGlnaCA9IGUtPmhpZ2goKTsKICAgICBleHRyYVBhcmFtcy5v
cHRpbXVtID0gZS0+b3B0aW11bSgpOwogCi0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRNZXRlcih3
ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIHJlY3QsIGV4dHJhUGFyYW1z
KTsKKyAgICB0aGVtZUVuZ2luZSgpLT5wYWludE1ldGVyKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhl
bWVTdGF0ZSh0aGlzLCBvKSwgdG9OaXhSZWN0KHJlY3QpLCBleHRyYVBhcmFtcyk7CiAKICAgICBy
ZXR1cm4gZmFsc2U7CiB9CiAjZW5kaWYKIAorI2lmIEVOQUJMRShWSURFTykKK1N0cmluZyBSZW5k
ZXJUaGVtZU5peDo6ZXh0cmFNZWRpYUNvbnRyb2xzU3R5bGVTaGVldCgpCit7CisgICAgcmV0dXJu
IFN0cmluZyhtZWRpYUNvbnRyb2xzTml4VXNlckFnZW50U3R5bGVTaGVldCwgc2l6ZW9mKG1lZGlh
Q29udHJvbHNOaXhVc2VyQWdlbnRTdHlsZVNoZWV0KSk7Cit9CisKK2Jvb2wgUmVuZGVyVGhlbWVO
aXg6OnBhaW50TWVkaWFQbGF5QnV0dG9uKFJlbmRlck9iamVjdCogbywgY29uc3QgUGFpbnRJbmZv
JiBpLCBjb25zdCBJbnRSZWN0JiByZWN0KQoreworICAgIGF1dG8gc3RhdGUgPSB0b0hUTUxNZWRp
YUVsZW1lbnQoby0+bm9kZSgpLT5zaGFkb3dIb3N0KCkpLT5jYW5QbGF5KCkgPyBOaXg6OlRoZW1l
RW5naW5lOjpTdGF0ZVBhdXNlZCA6IE5peDo6VGhlbWVFbmdpbmU6OlN0YXRlUGxheWluZzsKKyAg
ICB0aGVtZUVuZ2luZSgpLT5wYWludE1lZGlhUGxheUJ1dHRvbih3ZWJDYW52YXMoaSksIHN0YXRl
LCB0b05peFJlY3QocmVjdCkpOworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBSZW5kZXJU
aGVtZU5peDo6cGFpbnRNZWRpYU11dGVCdXR0b24oUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBQYWlu
dEluZm8mIGksIGNvbnN0IEludFJlY3QmIHJlY3QpCit7CisgICAgYXV0byBzdGF0ZSA9IHRvSFRN
TE1lZGlhRWxlbWVudChvLT5ub2RlKCktPnNoYWRvd0hvc3QoKSktPm11dGVkKCkgPyBOaXg6OlRo
ZW1lRW5naW5lOjpTdGF0ZU11dGVkIDogTml4OjpUaGVtZUVuZ2luZTo6U3RhdGVOb3RNdXRlZDsK
KyAgICB0aGVtZUVuZ2luZSgpLT5wYWludE1lZGlhTXV0ZUJ1dHRvbih3ZWJDYW52YXMoaSksIHN0
YXRlLCB0b05peFJlY3QocmVjdCkpOworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBSZW5k
ZXJUaGVtZU5peDo6cGFpbnRNZWRpYVNlZWtCYWNrQnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0
IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UmVjdCYgcmVjdCkKK3sKKyAgICB0aGVtZUVuZ2luZSgp
LT5wYWludE1lZGlhU2Vla0JhY2tCdXR0b24od2ViQ2FudmFzKGkpLCB0b05peFJlY3QocmVjdCkp
OworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRp
YVNlZWtGb3J3YXJkQnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYgaSwgY29u
c3QgSW50UmVjdCYgcmVjdCkKK3sKKyAgICB0aGVtZUVuZ2luZSgpLT5wYWludE1lZGlhU2Vla0Zv
cndhcmRCdXR0b24od2ViQ2FudmFzKGkpLCB0b05peFJlY3QocmVjdCkpOworICAgIHJldHVybiBm
YWxzZTsKK30KKworYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVNsaWRlclRyYWNrKFJl
bmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKQoreworICAgIHJl
dHVybiBmYWxzZTsKIH0KKworYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVZvbHVtZVNs
aWRlckNvbnRhaW5lcihSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRS
ZWN0JikKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK2Jvb2wgUmVuZGVyVGhlbWVOaXg6OnBh
aW50TWVkaWFWb2x1bWVTbGlkZXJUcmFjayhSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8m
LCBjb25zdCBJbnRSZWN0JikKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK2Jvb2wgUmVuZGVy
VGhlbWVOaXg6OnBhaW50TWVkaWFSZXdpbmRCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFp
bnRJbmZvJiBpLCBjb25zdCBJbnRSZWN0JiByZWN0KQoreworICAgIHRoZW1lRW5naW5lKCktPnBh
aW50TWVkaWFSZXdpbmRCdXR0b24od2ViQ2FudmFzKGkpLCB0b05peFJlY3QocmVjdCkpOworICAg
IHJldHVybiBmYWxzZTsKK30KKyNlbmRpZiAvLyBFTkFCTEUoVklERU8pCisKK30gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L1Jl
bmRlclRoZW1lTml4LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVO
aXguaAppbmRleCBmNDFkNTA3MDg2YWQ5NjMwNWYzMWQ5YTZjYjk1ZjJlM2ZlMTVkMGY3Li42MWU1
ZDAzOWZlMGZiNmMwMGIyNTQ3YmViYzUyYTc4MjUwNzFiZDE2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXguaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXguaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTItMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNp
ZGlhcnkoLWllcykuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIsIDIwMTMgTm9raWEgQ29ycG9yYXRp
b24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCkBAIC0xMDMsNiArMTAzLDIyIEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIGJvb2wg
cGFpbnRNZXRlcihSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0
JikgT1ZFUlJJREU7CiAjZW5kaWYKIAorI2lmIEVOQUJMRShWSURFTykKKyAgICB2aXJ0dWFsIFN0
cmluZyBleHRyYU1lZGlhQ29udHJvbHNTdHlsZVNoZWV0KCkgT1ZFUlJJREU7CisgICAgdmlydHVh
bCBib29sIHVzZXNWZXJ0aWNhbFZvbHVtZVNsaWRlcigpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJu
IGZhbHNlOyB9CisgICAgdmlydHVhbCBib29sIHVzZXNNZWRpYUNvbnRyb2xTdGF0dXNEaXNwbGF5
KCkgT1ZFUlJJREUgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHZpcnR1YWwgYm9vbCB1c2VzTWVkaWFD
b250cm9sVm9sdW1lU2xpZGVyKCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gZmFsc2U7IH0KKwor
ICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhUGxheUJ1dHRvbihSZW5kZXJPYmplY3QqLCBjb25z
dCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0JikgT1ZFUlJJREU7CisgICAgdmlydHVhbCBib29s
IHBhaW50TWVkaWFNdXRlQnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNv
bnN0IEludFJlY3QmKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYVNlZWtC
YWNrQnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3Qm
KSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYVNlZWtGb3J3YXJkQnV0dG9u
KFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklE
RTsKKyAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCos
IGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsKKyAgICB2aXJ0dWFs
IGJvb2wgcGFpbnRNZWRpYVZvbHVtZVNsaWRlckNvbnRhaW5lcihSZW5kZXJPYmplY3QqLCBjb25z
dCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0JikgT1ZFUlJJREU7CisgICAgdmlydHVhbCBib29s
IHBhaW50TWVkaWFWb2x1bWVTbGlkZXJUcmFjayhSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludElu
Zm8mLCBjb25zdCBJbnRSZWN0JikgT1ZFUlJJREU7CisgICAgdmlydHVhbCBib29sIHBhaW50TWVk
aWFSZXdpbmRCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50
UmVjdCYpIE9WRVJSSURFOworI2VuZGlmCisKICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRTbGlkZXJU
cmFjayhSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0JikgT1ZF
UlJJREU7CiAgICAgdmlydHVhbCB2b2lkIGFkanVzdFNsaWRlclRyYWNrU3R5bGUoU3R5bGVSZXNv
bHZlciosIFJlbmRlclN0eWxlKiwgRWxlbWVudCopIGNvbnN0IE9WRVJSSURFOwogCkBAIC0xMjMs
NiArMTM5LDYgQEAgcHJpdmF0ZToKICAgICBSZW5kZXJUaGVtZU5peCgpOwogfTsKIAotfQorfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gUmVuZGVyVGhlbWVOaXhfaApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXQuY3BwIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXQuY3BwCmluZGV4IDkwMjE3MTE0
YjQ1OTE2ZTljNTQ2MDgzOTFkZmQ3YzkxYTJiYjU2YjEuLjk3MDcyZDExZmQ1MDgyZTI2ZjM2Yzc5
OWVjN2JlODFlNWRkOWY4ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9T
aW1wbGVMaW5lTGF5b3V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxl
TGluZUxheW91dC5jcHAKQEAgLTkwLDcgKzkwLDcgQEAgc3RhdGljIGJvb2wgY2FuVXNlRm9yVGV4
dChjb25zdCBSZW5kZXJUZXh0JiB0ZXh0UmVuZGVyZXIsIGNvbnN0IFNpbXBsZUZvbnREYXRhJgog
CiBib29sIGNhblVzZUZvcihjb25zdCBSZW5kZXJCbG9ja0Zsb3cmIGZsb3cpCiB7Ci0jaWYgIVBM
QVRGT1JNKE1BQykgJiYgIVBMQVRGT1JNKEdUSykgJiYgIVBMQVRGT1JNKEVGTCkKKyNpZiAhUExB
VEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0oRUZMKSAmJiAhUExBVEZP
Uk0oTklYKQogICAgIC8vIEZJWE1FOiBOb24tbWFjIHBsYXRmb3JtcyBhcmUgaGl0dGluZyBBU1NF
UlQocnVuLmNoYXJhY3RlcnNMZW5ndGgoKSA+PSBydW4ubGVuZ3RoKCkpCiAgICAgLy8gaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzMzOAogICAgIHJldHVybiBmYWxz
ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218336</attachid>
            <date>2013-12-03 14:00:28 -0800</date>
            <delta_ts>2013-12-04 10:00:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-124981-20131203190026.patch</filename>
            <type>text/plain</type>
            <size>50003</size>
            <attacher name="Thiago de Barros Lacerda">thiago.lacerda</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwMDI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTg5YmM3Nzk0ZmY2MTFh
MWI5Y2VhYzE0NTQ1NDA3NGM2NzY3YjQwNy4uMTZjYTE5MmNhOTJlZDg2Njc2ZjhiNjIzZmQzN2Q4
NTNhZDYyM2U1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwNSBAQAorMjAxMy0xMi0wMyAgVGhp
YWdvIGRlIEJhcnJvcyBMYWNlcmRhICA8dGhpYWdvLmxhY2VyZGFAb3BlbmJvc3NhLm9yZz4KKwor
ICAgICAgICBOaXggVXBzdHJlYW06IFVwZGF0aW5nIFdlYkNvcmUgZmlsZXMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDk4MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEp1c3QgdG8gc3luYyBvdXIgZ2l0
aHViIHJlcG8gZmlsZXMgYW5kIHRoZSB0cnVuaywgYXMgcGFydCBvZiB0aGUgdXBzdHJlYW0gcHJv
Y2VzcworCisgICAgICAgIE5vIG5ldyB0ZXN0cyBuZWVkZWQuCisKKyAgICAgICAgKiBQbGF0Zm9y
bU5peC5jbWFrZToKKyAgICAgICAgKiBjc3MvbWVkaWFDb250cm9sc05peC5jc3M6CisgICAgICAg
IChhdWRpbyk6CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scyk6CisgICAg
ICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUsIHZpZGVvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSk6CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1t
ZWRpYS1jb250cm9scy1lbmNsb3N1cmUpOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtcGFuZWwsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsKToKKyAg
ICAgICAgKHZpZGVvOi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhKToKKyAgICAgICAgKGF1ZGlvOi13
ZWJraXQtZnVsbC1wYWdlLW1lZGlhLCB2aWRlbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSk6Cisg
ICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1tdXRlLWJ1dHRvbiwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0b24pOgorICAgICAgICAoYXVkaW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtb3ZlcmxheS1wbGF5LWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQt
bWVkaWEtY29udHJvbHMtb3ZlcmxheS1wbGF5LWJ1dHRvbik6CisgICAgICAgIChhdWRpbzo6LXdl
YmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtcGxheS1idXR0b24pOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtdGltZWxpbmUtY29udGFpbmVyLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1l
bGluZS1jb250YWluZXIpOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
dGltZS1yZW1haW5pbmctZGlzcGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGlt
ZS1yZW1haW5pbmctZGlzcGxheSk6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy10aW1lbGluZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUpOgor
ICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlciwgdmlk
ZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlcik6CisgICAgICAgIChpbnB1
dFt0eXBlPSJyYW5nZSJdOjotd2Via2l0LW1lZGlhLXNsaWRlci1jb250YWluZXIpOgorICAgICAg
ICAoaW5wdXRbdHlwZT0icmFuZ2UiXTo6LXdlYmtpdC1tZWRpYS1zbGlkZXItY29udGFpbmVyID4g
ZGl2KToKKyAgICAgICAgKGlucHV0W3R5cGU9InJhbmdlIl06Oi13ZWJraXQtbWVkaWEtc2xpZGVy
LXRodW1iKToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstYmFj
ay1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXNlZWstYmFjay1idXR0b24p
OgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1mb3J3YXJkLWJ1
dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1mb3J3YXJkLWJ1dHRvbik6
CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRv
biwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24pOgorICAg
ICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdG9nZ2xlLWNsb3NlZC1jYXB0aW9u
cy1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRvZ2dsZS1jbG9zZWQtY2Fw
dGlvbnMtYnV0dG9uKToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1
bGxzY3JlZW4tdm9sdW1lLXNsaWRlciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVs
bHNjcmVlbi12b2x1bWUtc2xpZGVyKToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLWZ1bGxzY3JlZW4tdm9sdW1lLW1pbi1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlh
LWNvbnRyb2xzLWZ1bGxzY3JlZW4tdm9sdW1lLW1pbi1idXR0b24pOgorICAgICAgICAoYXVkaW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWF4LWJ1dHRvbiwgdmlk
ZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWF4LWJ1dHRvbik6
CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lcik6Cisg
ICAgICAgICh2aWRlbzo6Y3VlKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQt
dHJhY2stcmVnaW9uKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2st
cmVnaW9uLWNvbnRhaW5lcik6CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRy
YWNrLXJlZ2lvbi1jb250YWluZXIuc2Nyb2xsaW5nKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0
LW1lZGlhLXRleHQtdHJhY2stZGlzcGxheSk6CisgICAgICAgICh2aWRlbzo6Y3VlKDpmdXR1cmUp
KToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIGIp
OgorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIgdSk6
CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciBpKToK
KyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6
OmN1dCk6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OmNvcHkpOgorICAgICAgICAoV2ViQ29y
ZTo6RWRpdG9yOjpjb3B5SW1hZ2UpOgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmg6CisgICAg
ICAgICogaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oOgorICAgICAgICAqIHBsYXRmb3JtL0N1cnNv
ci5oOgorICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmg6CisgICAgICAgICogcGxh
dGZvcm0vYXVkaW8vbml4L0F1ZGlvQnVzTml4LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1ZGlv
QnVzOjpsb2FkUGxhdGZvcm1SZXNvdXJjZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
R0xDb250ZXh0Lmg6CisgICAgICAgICogcGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpDdXJzb3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9uaXgvR2FtZXBhZHNOaXguY3BwOgorICAgICAgICAoV2ViQ29yZTo6c2FtcGxlR2Ft
ZXBhZHMpOgorICAgICAgICAqIHBsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjp0b0ludFNpemUpOgorICAgICAgICAoV2ViQ29yZTo6dG9OaXhSZWN0KToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUFjdGl2ZVNlbGVjdGlv
bkJhY2tncm91bmRDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxh
dGZvcm1JbmFjdGl2ZVNlbGVjdGlvbkJhY2tncm91bmRDb2xvcik6CisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3Ip
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtSW5hY3RpdmVTZWxl
Y3Rpb25Gb3JlZ3JvdW5kQ29sb3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6
OnBsYXRmb3JtQWN0aXZlTGlzdEJveFNlbGVjdGlvbkJhY2tncm91bmRDb2xvcik6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZUxpc3RCb3hTZWxlY3Rp
b25CYWNrZ3JvdW5kQ29sb3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBs
YXRmb3JtQWN0aXZlTGlzdEJveFNlbGVjdGlvbkZvcmVncm91bmRDb2xvcik6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25G
b3JlZ3JvdW5kQ29sb3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRm
b3JtQWN0aXZlVGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclRoZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZlVGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUZvY3VzUmluZ0NvbG9y
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybVRhcEhpZ2hsaWdo
dENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludEJ1dHRvbik6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRUZXh0RmllbGQpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50Q2hlY2tib3gpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnNldENoZWNrYm94U2l6ZSk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRSYWRpbyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUaGVtZU5peDo6c2V0UmFkaW9TaXplKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1l
Tml4OjpwYWludE1lbnVMaXN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4Ojpw
YWludFByb2dyZXNzQmFyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWlu
dFNsaWRlclRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludFNs
aWRlclRodW1iKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludElubmVy
U3BpbkJ1dHRvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRNZXRl
cik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6ZXh0cmFNZWRpYUNvbnRyb2xz
U3R5bGVTaGVldCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRp
YVBsYXlCdXR0b24pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50TWVk
aWFNdXRlQnV0dG9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludE1l
ZGlhU2Vla0JhY2tCdXR0b24pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBh
aW50TWVkaWFTZWVrRm9yd2FyZEJ1dHRvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVt
ZU5peDo6cGFpbnRNZWRpYVNsaWRlclRyYWNrKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRo
ZW1lTml4OjpwYWludE1lZGlhVm9sdW1lU2xpZGVyQ29udGFpbmVyKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhVm9sdW1lU2xpZGVyVHJhY2spOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50TWVkaWFSZXdpbmRCdXR0b24pOgorICAg
ICAgICAqIHBsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5oOgorICAgICAgICAqIHJlbmRlcmlu
Zy9TaW1wbGVMaW5lTGF5b3V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNpbXBsZUxpbmVMYXlv
dXQ6OmNhblVzZUZvcik6CisKIDIwMTMtMTItMDMgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBh
cHBsZS5jb20+CiAKICAgICAgICAgU3VwcG9ydCBleHBvcnRpbmcgcHJpdmF0ZSBXZWJDcnlwdG8g
UlNBIGtleXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtTml4LmNtYWtlIGIv
U291cmNlL1dlYkNvcmUvUGxhdGZvcm1OaXguY21ha2UKaW5kZXggNjk5OTc4MDVlNjBlMDM1NTA4
MTc1MWQ4ODkwNWJiN2U5ZTc0YTUwYi4uMWQ1MjcwMGJkMzc4NzQ4NzhkYzE1ZTZmNjM0MjVjOTFk
NWI5Y2ZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1OaXguY21ha2UKKysr
IGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1OaXguY21ha2UKQEAgLTQsMjQgKzQsMTYgQEAgbGlz
dChBUFBFTkQgV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVTCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvIgogICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9n
cmFwaGljcy9mcmVldHlwZSIKICAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0vZ3JhcGhpY3Mv
Z2x4IgotICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9oYXJmYnV6ei8iCi0g
ICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL2hhcmZidXp6L25nIgogICAgICIk
e1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9uaXgiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbCIKICAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZvcm0v
Z3JhcGhpY3Mvb3BlbnR5cGUiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNz
L3N1cmZhY2VzIgotICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy90ZXhtYXAi
CiAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2xpbnV4IgogICAgICIke1dFQkNPUkVfRElS
fS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIiCiAgICAgIiR7UExBVEZPUk1fRElSfS9u
aXgvIgogKQogCiBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKLSAgICBjc3MvV2ViS2l0Q1NT
QXJyYXlGdW5jdGlvblZhbHVlLmNwcAotICAgIGNzcy9XZWJLaXRDU1NNYXRGdW5jdGlvblZhbHVl
LmNwcAotICAgIGNzcy9XZWJLaXRDU1NNYXRyaXguY3BwCi0gICAgY3NzL1dlYktpdENTU01peEZ1
bmN0aW9uVmFsdWUuY3BwCi0KICAgICBlZGl0aW5nL1NtYXJ0UmVwbGFjZUlDVS5jcHAKIAogICAg
IGVkaXRpbmcvbml4L0VkaXRvck5peC5jcHAKQEAgLTM1LDEyICsyNyw5IEBAIGxpc3QoQVBQRU5E
IFdlYkNvcmVfU09VUkNFUwogICAgIHBsYXRmb3JtL0NvbnRleHRNZW51SXRlbU5vbmUuY3BwCiAg
ICAgcGxhdGZvcm0vQ29udGV4dE1lbnVOb25lLmNwcAogICAgIHBsYXRmb3JtL0N1cnNvci5jcHAK
LSAgICBwbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcAotICAgIHBsYXRmb3JtL1BsYXRmb3Jt
U3RyYXRlZ2llcy5jcHAKIAogICAgIHBsYXRmb3JtL2NhaXJvL1dpZGdldEJhY2tpbmdTdG9yZUNh
aXJvLmNwcAogCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VTb3VyY2UuY3BwCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvV09G
RkZpbGVGb3JtYXQuY3BwCiAKQEAgLTY0LDkgKzUzLDYgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9T
T1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vVGlsZWRCYWNraW5nU3RvcmVCYWNr
ZW5kQ2Fpcm8uY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vVHJhbnNmb3JtYXRpb25N
YXRyaXhDYWlyby5jcHAKIAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRlcnMvQ3VzdG9tRmls
dGVyTWVzaEdlbmVyYXRvci5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0N1c3Rv
bUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwCi0KICAgICBwbGF0Zm9ybS9ncmFwaGljcy9mcmVl
dHlwZS9Gb250Q2FjaGVGcmVlVHlwZS5jcHAKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlw
ZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhp
Y3MvZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcApAQCAtOTMsMjQgKzc5LDgg
QEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3RrL0xvZ2dpbmdH
dGsuY3BwCiAgICAgcGxhdGZvcm0vZ3RrL1NoYXJlZEJ1ZmZlckd0ay5jcHAKIAotICAgIHBsYXRm
b3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5jcHAKLQotICAgIHBsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL2JtcC9CTVBJbWFnZURlY29kZXIuY3BwCi0gICAgcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvYm1wL0JNUEltYWdlUmVhZGVyLmNwcAotCiAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2Rl
cnMvY2Fpcm8vSW1hZ2VEZWNvZGVyQ2Fpcm8uY3BwCiAKLSAgICBwbGF0Zm9ybS9pbWFnZS1kZWNv
ZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmNwcAotICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L2dpZi9HSUZJbWFnZVJlYWRlci5jcHAKLQotICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2lj
by9JQ09JbWFnZURlY29kZXIuY3BwCi0KLSAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVn
L0pQRUdJbWFnZURlY29kZXIuY3BwCi0KLSAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcv
UE5HSW1hZ2VEZWNvZGVyLmNwcAotCi0gICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvd2VicC9X
RUJQSW1hZ2VEZWNvZGVyLmNwcAotCiAgICAgcGxhdGZvcm0vbGludXgvR2FtZXBhZERldmljZUxp
bnV4LmNwcAogCiAgICAgcGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKQEAgLTEzOSwxNyArMTA5
LDkgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAKICAgICBwbGF0Zm9ybS90ZXh0L25p
eC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVTml4LmNwcAogCi0gICAgcGx1Z2lucy9QbHVn
aW5EYXRhYmFzZS5jcHAKLSAgICBwbHVnaW5zL1BsdWdpbkRlYnVnLmNwcAogICAgIHBsdWdpbnMv
UGx1Z2luUGFja2FnZS5jcHAKICAgICBwbHVnaW5zL1BsdWdpblBhY2thZ2VOb25lLmNwcAotICAg
IHBsdWdpbnMvUGx1Z2luU3RyZWFtLmNwcAotICAgIHBsdWdpbnMvUGx1Z2luVmlldy5jcHAKICAg
ICBwbHVnaW5zL1BsdWdpblZpZXdOb25lLmNwcAotCi0gICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxl
Q2FjaGVkU2hhZGVyLmNwcAotICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUN1c3RvbUZpbHRlclBy
b2dyYW0uY3BwCi0gICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmlsdGVyUHJvZ3JhbUNh
Y2hlLmNwcAogKQogCiBpZiAoV1RGX1VTRV9PUEVOR0xfRVNfMikKQEAgLTE4Niw4ICsxNDgsOCBA
QCBpZiAoV1RGX1VTRV9FR0wpCiAgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9MSUJSQVJJRVMgJHtF
R0xfTElCUkFSWX0pCiBlbHNlICgpCiAgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9JTkNMVURFX0RJ
UkVDVE9SSUVTCi0gICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL3N1cmZhY2VzL2dseAogICAgICAg
ICBwbGF0Zm9ybS9ncmFwaGljcy9zdXJmYWNlcy9lZmwKKyAgICAgICAgcGxhdGZvcm0vZ3JhcGhp
Y3Mvc3VyZmFjZXMvZ2x4CiAgICAgICAgICR7WDExX1gxMV9JTkNMVURFX1BBVEh9CiAgICAgKQog
ICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwpAQCAtMjI2LDcgKzE4OCw3IEBAIGxpc3Qo
QVBQRU5EIFdlYkNvcmVfVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMKIGxpc3QoQVBQRU5EIFdlYkNv
cmVfTElCUkFSSUVTCiAgICAgJHtDQUlST19MSUJSQVJJRVN9CiAgICAgJHtGT05UQ09ORklHX0xJ
QlJBUklFU30KLSAgICAke0ZSRUVUWVBFX0xJQlJBUklFU30KKyAgICAke0ZSRUVUWVBFMl9MSUJS
QVJJRVN9CiAgICAgJHtHTElCX0dJT19MSUJSQVJJRVN9CiAgICAgJHtHTElCX0dNT0RVTEVfTElC
UkFSSUVTfQogICAgICR7R0xJQl9HT0JKRUNUX0xJQlJBUklFU30KQEAgLTI0MiwxNSArMjA0LDE1
IEBAIGxpc3QoQVBQRU5EIFdlYkNvcmVfTElCUkFSSUVTCiApCiAKIGxpc3QoQVBQRU5EIFdlYkNv
cmVfSU5DTFVERV9ESVJFQ1RPUklFUwotICAgICR7Rk9OVENPTkZJR19JTkNMVURFX0RJUn0KICAg
ICAke0NBSVJPX0lOQ0xVREVfRElSU30KLSAgICAke0ZSRUVUWVBFX0lOQ0xVREVfRElSU30KKyAg
ICAke0ZPTlRDT05GSUdfSU5DTFVERV9ESVJ9CisgICAgJHtGUkVFVFlQRTJfSU5DTFVERV9ESVJT
fQorICAgICR7R0xJQl9JTkNMVURFX0RJUlN9CisgICAgJHtIQVJGQlVaWl9JTkNMVURFX0RJUlN9
CiAgICAgJHtMSUJYTUwyX0lOQ0xVREVfRElSfQogICAgICR7TElCWFNMVF9JTkNMVURFX0RJUn0K
ICAgICAke1NRTElURV9JTkNMVURFX0RJUn0KLSAgICAke0dMSUJfSU5DTFVERV9ESVJTfQogICAg
ICR7WkxJQl9JTkNMVURFX0RJUlN9Ci0gICAgJHtIQVJGQlVaWl9JTkNMVURFX0RJUlN9CiApCiAK
IGFkZF9kZWZpbml0aW9ucygtRERBVEFfRElSPSIke0NNQUtFX0lOU1RBTExfUFJFRklYfS8ke0RB
VEFfSU5TVEFMTF9ESVJ9IikKQEAgLTI4NCw2ICsyNDYsOCBAQCBpZiAoV1RGX1VTRV9DVVJMKQog
ICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ29va2llTm9kZS5jcHAKICAgICAgICAgcGxh
dGZvcm0vbmV0d29yay9jdXJsL0Nvb2tpZVN0b3JhZ2VDdXJsLmNwcAogICAgICAgICBwbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvQ3JlZGVudGlhbFN0b3JhZ2VDdXJsLmNwcAorICAgICAgICBwbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvQ3VybENhY2hlRW50cnkuY3BwCisgICAgICAgIHBsYXRmb3JtL25ldHdv
cmsvY3VybC9DdXJsQ2FjaGVNYW5hZ2VyLmNwcAogICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvRE5TQ3VybC5jcHAKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL0Zvcm1EYXRhU3Ry
ZWFtQ3VybC5jcHAKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL011bHRpcGFydEhhbmRs
ZS5jcHAKQEAgLTI5MSwxMiArMjU1LDE0IEBAIGlmIChXVEZfVVNFX0NVUkwpCiAgICAgICAgIHBs
YXRmb3JtL25ldHdvcmsvY3VybC9Qcm94eVNlcnZlckN1cmwuY3BwCiAgICAgICAgIHBsYXRmb3Jt
L25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwCiAgICAgICAgIHBsYXRmb3JtL25l
dHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwCisgICAgICAgIHBsYXRmb3JtL25l
dHdvcmsvY3VybC9TU0xIYW5kbGUuY3BwCiAgICAgICAgIHBsYXRmb3JtL25ldHdvcmsvY3VybC9T
b2NrZXRTdHJlYW1IYW5kbGVDdXJsLmNwcAogICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
U3luY2hyb25vdXNMb2FkZXJDbGllbnRDdXJsLmNwcAogICAgICkKIAogICAgIGxpc3QoQVBQRU5E
IFdlYkNvcmVfTElCUkFSSUVTCiAgICAgICAgICR7Q1VSTF9MSUJSQVJJRVN9CisgICAgICAgICR7
T1BFTlNTTF9MSUJSQVJJRVN9CiAgICAgKQogZWxzZSAoKQogICAgIGxpc3QoQVBQRU5EIFdlYkNv
cmVfU09VUkNFUwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNO
aXguY3NzIGIvU291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNOaXguY3NzCmluZGV4IGI1
YjM2NjUyN2I3ZTA1ODE5NGM1NDE3MTVlZjU3ODhlZDAyNzc0OWIuLjA5NTY4MGMyZTQ0NzQyYTVk
NTJmMDRkYzZjYWRjY2U0ZjlmZjc2ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9t
ZWRpYUNvbnRyb2xzTml4LmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvbWVkaWFDb250cm9s
c05peC5jc3MKQEAgLTEsNyArMSw3IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA5LCAyMDEw
LCAyMDExIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTEgU2Ftc3VuZyBFbGVjdHJvbmljcwotICogQ29weXJpZ2h0IChDKSAyMDEyLTIwMTMgTm9r
aWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgorICogQ29weXJpZ2h0
IChDKSAyMDA5IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQg
KEMpIDIwMDkgR29vZ2xlIEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAxMiwgMjAxMyBOb2tpYSBD
b3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKQEAgLTI0LDEyNyArMjQsMjE4IEBACiAgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLS8qIE5peFdlYktpdCBtZWRpYSBjb250cm9scy4gRXh0ZW5kcyBtZWRpYUNvbnRyb2xzLmNz
cyAqLworLyogTml4IGRlZmF1bHQgbWVkaWEgY29udHJvbHMgKi8KIAogYXVkaW8gewogICAgIHdp
ZHRoOiAzMDBweDsKLSAgICBoZWlnaHQ6IDIwcHg7CisgICAgaGVpZ2h0OiAzMHB4OworfQorCith
dWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scywKK3ZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzIHsKKyAgICB3aWR0aDogaW5oZXJpdDsKKyAgICBoZWlnaHQ6IGluaGVyaXQ7CisgICAgcG9z
aXRpb246IHJlbGF0aXZlOworICAgIGRpcmVjdGlvbjogbHRyOworICAgIGRpc3BsYXk6IGZsZXg7
CisgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKKyAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5k
OworICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cit9CisKK2F1ZGlvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLWVuY2xvc3VyZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJl
IHsKKyAgICB3aWR0aDogMTAwJTsKKyAgICBtYXgtd2lkdGg6IDgwMHB4OworICAgIGhlaWdodDog
MzBweDsKKyAgICBmbGV4LXNocmluazogMDsKKyAgICBib3R0b206IDA7CisgICAgdGV4dC1pbmRl
bnQ6IDA7CisgICAgcGFkZGluZzogMDsKKyAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OworfQor
Cit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUgeworICAgIHBhZGRpbmc6
IDBweCA1cHggNXB4IDVweDsKKyAgICBoZWlnaHQ6IDM1cHg7CisgICAgZmxleC1zaHJpbms6IDA7
CiB9CiAKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsLCB2aWRlbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1wYW5lbCB7Ci0gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7Ci0gICAg
LXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwotICAgIC13ZWJraXQtYm94LWFsaWduOiBj
ZW50ZXI7CisgICAgZGlzcGxheTogZmxleDsKKyAgICBmbGV4LWRpcmVjdGlvbjogcm93OworICAg
IGFsaWduLWl0ZW1zOiBjZW50ZXI7CisgICAgLyogV2UgdXNlIGZsZXgtc3RhcnQgaGVyZSB0byBl
bnN1cmUgdGhhdCB0aGUgcGxheSBidXR0b24gaXMgdmlzaWJsZSBldmVuCisgICAgICogaWYgd2Ug
YXJlIHRvbyBzbWFsbCB0byBzaG93IGFsbCBjb250cm9scy4KKyAgICAgKi8KKyAgICBqdXN0aWZ5
LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7CiAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAg
ICBwb3NpdGlvbjogcmVsYXRpdmU7Ci0gICAgYm90dG9tOiAwOwogICAgIHdpZHRoOiAxMDAlOwog
ICAgIHotaW5kZXg6IDA7CiAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKLSAgICBoZWlnaHQ6IDIwcHg7
CiAgICAgdGV4dC1hbGlnbjogcmlnaHQ7CisgICAgYm90dG9tOiBhdXRvOworICAgIGhlaWdodDog
MzBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwLCAyMCwgMjAsIDAuOCk7CisgICAg
Ym9yZGVyLXJhZGl1czogNXB4OworfQorCit2aWRlbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSB7
CisgICAgbWFyZ2luOiBhdXRvOworICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICB0b3A6IDA7
CisgICAgcmlnaHQ6IDA7CisgICAgYm90dG9tOiAwOworICAgIGxlZnQ6IDA7CiB9CiAKK2F1ZGlv
Oi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhLCB2aWRlbzotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSB7
CisgICAgbWF4LWhlaWdodDogMTAwJTsKKyAgICBtYXgtd2lkdGg6IDEwMCU7Cit9CisKK2F1ZGlv
Oi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsLAog
dmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWE6Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFu
ZWwgewogICAgIGJvdHRvbTogMHB4OwogfQogCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1tdXRlLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtbXV0ZS1idXR0b24g
ewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEtbXV0ZS1idXR0b247Ci0gICAgZGlzcGxh
eTogLXdlYmtpdC1ib3g7Ci0gICAgd2lkdGg6IDIwcHg7Ci0gICAgaGVpZ2h0OiAyMHB4OwotICAg
IHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICB6LWluZGV4OiAyOworICAgIGRpc3BsYXk6IGZsZXg7
CisgICAgZmxleDogbm9uZTsKKyAgICBib3JkZXI6IG5vbmU7CisgICAgYm94LXNpemluZzogYm9y
ZGVyLWJveDsKKyAgICB3aWR0aDogMzVweDsKKyAgICBoZWlnaHQ6IDMwcHg7CisgICAgbGluZS1o
ZWlnaHQ6IDMwcHg7CisgICAgbWFyZ2luOiAwIDZweCAwIDA7CisgICAgcGFkZGluZzogMDsKICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOwotICAgIGJvcmRlcjogaW5pdGlhbDsKICAgICBj
b2xvcjogaW5oZXJpdDsKIH0KIAorYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtb3Zlcmxh
eS1wbGF5LWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtb3ZlcmxheS1wbGF5
LWJ1dHRvbiB7CisgICAgZGlzcGxheTogbm9uZTsKK30KKwogYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtcGxheS1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXkt
YnV0dG9uIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXBsYXktYnV0dG9uOwotICAg
IGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIHdpZHRoOiAyMHB4OwotICAgIGhlaWdodDogMjBw
eDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXg6IG5vbmU7CisgICAgYm9yZGVyOiBub25l
OworICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDMwcHg7CisgICAgaGVp
Z2h0OiAzMHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbi1sZWZ0OiA5cHg7
CisgICAgbWFyZ2luLXJpZ2h0OiA5cHg7CisgICAgcGFkZGluZzogMDsKICAgICBiYWNrZ3JvdW5k
LWNvbG9yOiBpbml0aWFsOwotICAgIGJvcmRlcjogaW5pdGlhbDsKICAgICBjb2xvcjogaW5oZXJp
dDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUtY29udGFpbmVy
LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZS1jb250YWluZXIgewogICAg
IC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEtY29udHJvbHMtYmFja2dyb3VuZDsKLSAgICBkaXNw
bGF5OiAtd2Via2l0LWJveDsKLSAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7Ci0g
ICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKLSAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7
Ci0gICAgLXdlYmtpdC1ib3gtZmxleDogMTsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXgt
ZGlyZWN0aW9uOiByb3c7CisgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKKyAgICBqdXN0aWZ5LWNv
bnRlbnQ6IGZsZXgtZW5kOworICAgIGZsZXg6IDEgMTsKICAgICAtd2Via2l0LXVzZXItc2VsZWN0
OiBub25lOwotICAgIGhlaWdodDogMjBweDsKKyAgICBoZWlnaHQ6IDE2cHg7CisgICAgbWluLXdp
ZHRoOiAwOwogfQogCi1hdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1jdXJyZW50LXRpbWUt
ZGlzcGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1lLWRpc3Bs
YXkgeworYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10aW1lLWRpc3BsYXks
IHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1kaXNwbGF5LAorYXVk
aW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlzcGxheSwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlzcGxheSB7CiAgICAgLXdl
YmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1jdXJyZW50LXRpbWUtZGlzcGxheTsKICAgICAtd2Via2l0
LXVzZXItc2VsZWN0OiBub25lOwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIGhlaWdo
dDogMjBweDsKKyAgICAtd2Via2l0LWZsZXg6IG5vbmU7CisgICAgZGlzcGxheTogLXdlYmtpdC1m
bGV4OworICAgIGJvcmRlcjogbm9uZTsKKyAgICBjdXJzb3I6IGRlZmF1bHQ7CiAKLSAgICBwYWRk
aW5nOiA0cHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbjogMCA5cHggMCAwOworICAg
IHBhZGRpbmc6IDA7CiAKLSAgICB0ZXh0LWFsaWduOiBjZW50ZXI7Ci0gICAgZm9udC1zaXplOiAx
MHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVs
dmV0aWNhLCBzYW5zLXNlcmlmOworICAgIGZvbnQtc2l6ZTogMTNweDsKKyAgICBmb250LXdlaWdo
dDogYm9sZDsKKyAgICBmb250LXN0eWxlOiBub3JtYWw7CisgICAgY29sb3I6IHdoaXRlOwogCi0g
ICAgY29sb3I6IGJsYWNrOwogICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7CiAgICAgd29yZC1z
cGFjaW5nOiBub3JtYWw7Ci0gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsKKyAgICB0ZXh0LWFsaWdu
OiBjZW50ZXIKICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsKICAgICB0ZXh0LWluZGVudDogMDsK
ICAgICB0ZXh0LXNoYWRvdzogbm9uZTsKICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7Ci0gICAg
Zm9udC1zdHlsZTogbm9ybWFsOwotICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7Ci0gICAgZm9udC1m
YW1pbHk6IHNlcmlmOwotfQotCi1hdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lLXJl
bWFpbmluZy1kaXNwbGF5LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lLXJlbWFp
bmluZy1kaXNwbGF5IHsKLSAgICBkaXNwbGF5OiBub25lOwogfQogCiBhdWRpbzo6LXdlYmtpdC1t
ZWRpYS1jb250cm9scy10aW1lbGluZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGlt
ZWxpbmUgewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEtc2xpZGVyOwotICAgIGRpc3Bs
YXk6IC13ZWJraXQtYm94OwotICAgIC13ZWJraXQtYm94LWZsZXg6IDE7Ci0gICAgaGVpZ2h0OiAy
MHB4OwotICAgIHBhZGRpbmc6IDBweCAycHg7Ci0gICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlh
bDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXg6IDEgMSBhdXRvOworICAgIGhlaWdodDog
OHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsKKyAgICBwYWRkaW5nOiAwOworICAgIGJhY2tn
cm91bmQtY29sb3I6IGJsYWNrOworICAgIG1pbi13aWR0aDogMjVweDsKICAgICBib3JkZXI6IGlu
aXRpYWw7CisgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgIGNvbG9yOiBpbmhlcml0OwotICAg
IG1hcmdpbjogaW5pdGlhbDsKLX0KLQotYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9s
dW1lLXNsaWRlci1jb250YWluZXIsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXZvbHVt
ZS1zbGlkZXItY29udGFpbmVyIHsKLSAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXZvbHVt
ZS1zbGlkZXItY29udGFpbmVyOwotICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKLSAgICBoZWlnaHQ6
IDEwMHB4OwotICAgIHdpZHRoOiAyMHB4OwotICAgIGJvdHRvbTogMjBweDsKLSAgICB6LWluZGV4
OiAxOwogfQogCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVyLCB2
aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVyIHsKICAgICAtd2Via2l0
LWFwcGVhcmFuY2U6IG1lZGlhLXZvbHVtZS1zbGlkZXI7Ci0gICAgZGlzcGxheTogbm9uZTsKLSAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOworICAgIGRpc3BsYXk6IGZsZXg7CisgICAgLyog
VGhlIDEuOSB2YWx1ZSB3YXMgZW1waXJpY2FsbHkgY2hvc2VuIHRvIG1hdGNoIG9sZC1mbGV4Ym94
IGJlaGF2aW91cgorICAgICAqIGFuZCBiZSBhZXN0aGV0aWNhbGx5IHBsZWFzaW5nLgorICAgICAq
LworICAgIGZsZXg6IDEgMS45IGF1dG87CisgICAgaGVpZ2h0OiA4cHg7CisgICAgbWF4LXdpZHRo
OiA3MHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsKKyAgICBwYWRkaW5nOiAwOworICAgIG1p
bi13aWR0aDogMTVweDsKICAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGluaGVyaXQ7
Ci0gICAgbWFyZ2luOiBpbml0aWFsOworICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOworICAg
IGJvcmRlci1yYWRpdXM6IDRweDsKK30KKworaW5wdXRbdHlwZT0icmFuZ2UiXTo6LXdlYmtpdC1t
ZWRpYS1zbGlkZXItY29udGFpbmVyIHsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGFsaWduLWl0
ZW1zOiBjZW50ZXI7CisgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgLyogVGhpcyBwcm9wZXJ0eSBp
cyB1cGRhdGVkIGJ5IEMrKyBjb2RlLiAqLworICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7Cisg
ICAgaGVpZ2h0OiAxMDAlOworICAgIHdpZHRoOiAxMDAlOworICAgIGJvcmRlcjogMXB4IHNvbGlk
IHJnYmEoMjMwLCAyMzAsIDIzMCwgMC4zNSk7CisgICAgYm9yZGVyLXJhZGl1czogNHB4OworICAg
IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiBCYWNrZ3JvdW5kIGRyYXdpbmcgaXMg
bWFuYWdlZCBieSBDKysgY29kZSB0byBkcmF3IHJhbmdlcy4gKi8KK30KKworLyogVGhlIG5lZ2F0
aXZlIHJpZ2h0IG1hcmdpbiBjYXVzZXMgdGhlIHRyYWNrIHRvIG92ZXJmbG93IGl0cyBjb250YWlu
ZXIuICovCitpbnB1dFt0eXBlPSJyYW5nZSJdOjotd2Via2l0LW1lZGlhLXNsaWRlci1jb250YWlu
ZXIgPiBkaXYgeworICAgIG1hcmdpbi1yaWdodDogLTE0cHg7Cit9CisKK2lucHV0W3R5cGU9InJh
bmdlIl06Oi13ZWJraXQtbWVkaWEtc2xpZGVyLXRodW1iIHsKKyAgICBtYXJnaW4tbGVmdDogLTdw
eDsKKyAgICBtYXJnaW4tcmlnaHQ6IC03cHg7CisgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7
CisgICAgYm9yZGVyLXJhZGl1czogM3B4OwogfQogCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1zZWVrLWJhY2stYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1zZWVr
LWJhY2stYnV0dG9uIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXNlZWstYmFjay1i
dXR0b247Ci0gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7Ci0gICAgd2lkdGg6IDIwcHg7Ci0gICAg
aGVpZ2h0OiAyMHB4OworICAgIGRpc3BsYXk6IGZsZXg7CisgICAgd2lkdGg6IDE2cHg7CisgICAg
aGVpZ2h0OiAxNnB4OwogICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7CiAgICAgYm9yZGVy
OiBpbml0aWFsOwogICAgIGNvbG9yOiBpbmhlcml0OwpAQCAtMTUyLDIxICsyNDMsMjcgQEAgYXVk
aW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1iYWNrLWJ1dHRvbiwgdmlkZW86Oi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtc2UKIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vl
ay1mb3J3YXJkLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1mb3J3
YXJkLWJ1dHRvbiB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1zZWVrLWZvcndhcmQt
YnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIHdpZHRoOiAyMHB4OwotICAg
IGhlaWdodDogMjBweDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIHdpZHRoOiAxNnB4OworICAg
IGhlaWdodDogMTZweDsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOwogICAgIGJvcmRl
cjogaW5pdGlhbDsKICAgICBjb2xvcjogaW5oZXJpdDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLWZ1bGxzY3JlZW4tYnV0dG9uIHsKLSAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLWZ1
bGxzY3JlZW4tYnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIHdpZHRoOiAy
MHB4OwotICAgIGhlaWdodDogMjBweDsKKyAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLWVu
dGVyLWZ1bGxzY3JlZW4tYnV0dG9uOworICAgIGRpc3BsYXk6IGZsZXg7CisgICAgZmxleDogbm9u
ZTsKKyAgICBib3JkZXI6IG5vbmU7CisgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKKyAgICB3
aWR0aDogMzBweDsKKyAgICBoZWlnaHQ6IDMwcHg7CisgICAgbGluZS1oZWlnaHQ6IDMwcHg7Cisg
ICAgbWFyZ2luLWxlZnQ6IC01cHg7CisgICAgbWFyZ2luLXJpZ2h0OiA5cHg7CisgICAgcGFkZGlu
ZzogMDsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOwotICAgIGJvcmRlcjogaW5pdGlh
bDsKICAgICBjb2xvcjogaW5oZXJpdDsKIH0KIApAQCAtMTg2LDExICsyODMsMTcgQEAgYXVkaW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcmV0dXJuLXRvLXJlYWx0aW1lLWJ1dHRvbiwgdmlkZW86
Oi13ZWJraXQtbWVkaWEtY28KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdG9nZ2xl
LWNsb3NlZC1jYXB0aW9ucy1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRv
Z2dsZS1jbG9zZWQtY2FwdGlvbnMtYnV0dG9uIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1l
ZGlhLXRvZ2dsZS1jbG9zZWQtY2FwdGlvbnMtYnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJraXQt
Ym94OwotICAgIHdpZHRoOiAyMHB4OwotICAgIGhlaWdodDogMjBweDsKKyAgICBkaXNwbGF5OiBm
bGV4OworICAgIGZsZXg6IG5vbmU7CisgICAgYm9yZGVyOiBub25lOworICAgIGJveC1zaXppbmc6
IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDMwcHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxp
bmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbi1sZWZ0OiAtNXB4OworICAgIG1hcmdpbi1yaWdo
dDogOXB4OworICAgIHBhZGRpbmc6IDA7CiAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDsK
LSAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9CiAKQEAgLTIwMSwz
ICszMDQsOTIgQEAgYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9sdW1lLXNsaWRlci1t
dXRlLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY28KICAgICBib3JkZXI6IGluaXRpYWw7
CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9CisKK2F1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xz
LWZ1bGxzY3JlZW4tdm9sdW1lLXNsaWRlciwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
ZnVsbHNjcmVlbi12b2x1bWUtc2xpZGVyIHsKKyAgICBkaXNwbGF5OiBub25lOworfQorCithdWRp
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1taW4tYnV0dG9uLCB2
aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1taW4tYnV0dG9u
IHsKKyAgICBkaXNwbGF5OiBub25lOworfQorCithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgtYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgtYnV0dG9uIHsKKyAgICBkaXNwbGF5OiBub25lOwor
fQorCit2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciB7CisgICAgcG9z
aXRpb246IHJlbGF0aXZlOworICAgIHdpZHRoOiAxMDAlOworICAgIG92ZXJmbG93OiBoaWRkZW47
CisgICAgcGFkZGluZy1ib3R0b206IDVweDsKKworICAgIGZvbnQ6IDIycHggc2Fucy1zZXJpZjsK
KyAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CisgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwg
MSk7CisKKyAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOworICAgIHdvcmQtc3BhY2luZzogbm9y
bWFsOworICAgIHRleHQtdHJhbnNmb3JtOiBub25lOworICAgIHRleHQtaW5kZW50OiAwOworICAg
IHRleHQtZGVjb3JhdGlvbjogbm9uZTsKKyAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKKyAgICAt
d2Via2l0LXVzZXItc2VsZWN0OiBub25lOworICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7CisK
KyAgICBmbGV4OiAxIDE7Cit9CisKK3ZpZGVvOjpjdWUgeworICAgIGRpc3BsYXk6IGlubGluZTsK
KworICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTsKKyAgICBwYWRkaW5n
OiAycHggMnB4OworfQorCit2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLXJlZ2lvbiB7
CisgICAgcG9zaXRpb246IGFic29sdXRlOworICAgIGxpbmUtaGVpZ2h0OiA1LjMzdmg7CisgICAg
d3JpdGluZy1tb2RlOiBob3Jpem9udGFsLXRiOworICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwg
MCwgMC44KTsKKyAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTsKKyAgICB3b3JkLXdy
YXA6IGJyZWFrLXdvcmQ7CisgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKKyAgICBvdmVy
ZmxvdzogaGlkZGVuOworfQorCit2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLXJlZ2lv
bi1jb250YWluZXIgeworICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKworICAgIGRpc3BsYXk6IGZs
ZXg7CisgICAgZmxleC1mbG93OiBjb2x1bW47CisgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsK
K30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1yZWdpb24tY29udGFpbmVyLnNj
cm9sbGluZyB7CisgICAgdHJhbnNpdGlvbjogdG9wIDQzM21zIGxpbmVhcjsKK30KKworCit2aWRl
bzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWRpc3BsYXkgeworICAgIHBvc2l0aW9uOiBhYnNv
bHV0ZTsKKyAgICBvdmVyZmxvdzogaGlkZGVuOworICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsK
KyAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgZmxleDogMCAwIGF1dG87
Cit9Cit2aWRlbzo6Y3VlKDpmdXR1cmUpIHsKKyAgICBjb2xvcjogZ3JheTsKK30KKwordmlkZW86
Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIgYiB7CisgICAgZm9udC13ZWlnaHQ6
IGJvbGQ7Cit9CisKK3ZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIHUg
eworICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOworfQorCit2aWRlbzo6LXdlYmtpdC1t
ZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciBpIHsKKyAgICBmb250LXN0eWxlOiBpdGFsaWM7Cit9
CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAppbmRleCA5MDZlODY2ZmEyNTQ4OTNhODIyYmJi
NjVkODI0MzFlYzZhMmQ2YzkyLi5iZmFmNDk2ODUyMjk4YWIzYzgwZTQ2MGNkZjEyN2JkNTFhZmEy
MjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC00MzUsNyArNDM1LDcgQEAgU3Ry
aW5nIEVkaXRvcjo6cGxhaW5UZXh0RnJvbVBhc3RlYm9hcmQoY29uc3QgUGFzdGVib2FyZFBsYWlu
VGV4dCYgdGV4dCkKIAogI2VuZGlmCiAKLSNpZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0o
RUZMKQorI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShFRkwpICYmICFQTEFURk9STShO
SVgpCiB2b2lkIEVkaXRvcjo6cGFzdGVXaXRoUGFzdGVib2FyZChQYXN0ZWJvYXJkKiBwYXN0ZWJv
YXJkLCBib29sIGFsbG93UGxhaW5UZXh0KQogewogICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSBz
ZWxlY3RlZFJhbmdlKCk7CkBAIC0xMDYxLDcgKzEwNjEsNyBAQCB2b2lkIEVkaXRvcjo6Y3V0KCkK
ICAgICAgICAgaWYgKGVuY2xvc2luZ1RleHRGb3JtQ29udHJvbChtX2ZyYW1lLnNlbGVjdGlvbigp
LnN0YXJ0KCkpKQogICAgICAgICAgICAgUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3Rl
KCktPndyaXRlUGxhaW5UZXh0KHNlbGVjdGVkVGV4dEZvckNsaXBib2FyZCgpLCBjYW5TbWFydENv
cHlPckRlbGV0ZSgpID8gUGFzdGVib2FyZDo6Q2FuU21hcnRSZXBsYWNlIDogUGFzdGVib2FyZDo6
Q2Fubm90U21hcnRSZXBsYWNlKTsKICAgICAgICAgZWxzZSB7Ci0jaWYgUExBVEZPUk0oTUFDKSB8
fCBQTEFURk9STShFRkwpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwpIHx8IFBM
QVRGT1JNKE5JWCkKICAgICAgICAgICAgIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKCpQYXN0
ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKSk7CiAjZWxzZQogICAgICAgICAgICAgLy8g
RklYTUU6IENvbnZlcnQgYWxsIG90aGVyIHBsYXRmb3JtcyB0byBtYXRjaCBNYWMgYW5kIGRlbGV0
ZSB0aGlzLgpAQCAtMTA4OCwxMyArMTA4OCwxMyBAQCB2b2lkIEVkaXRvcjo6Y29weSgpCiAgICAg
ICAgICAgICBjYW5TbWFydENvcHlPckRlbGV0ZSgpID8gUGFzdGVib2FyZDo6Q2FuU21hcnRSZXBs
YWNlIDogUGFzdGVib2FyZDo6Q2Fubm90U21hcnRSZXBsYWNlKTsKICAgICB9IGVsc2UgewogICAg
ICAgICBpZiAoSFRNTEltYWdlRWxlbWVudCogaW1hZ2VFbGVtZW50ID0gaW1hZ2VFbGVtZW50RnJv
bUltYWdlRG9jdW1lbnQoZG9jdW1lbnQoKSkpIHsKLSNpZiAoUExBVEZPUk0oTUFDKSAmJiAhUExB
VEZPUk0oSU9TKSkgfHwgUExBVEZPUk0oRUZMKQorI2lmIChQTEFURk9STShNQUMpICYmICFQTEFU
Rk9STShJT1MpKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKICAgICAgICAgICAg
IHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoKlBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0
ZSgpLCAqaW1hZ2VFbGVtZW50LCBkb2N1bWVudCgpLnVybCgpLCBkb2N1bWVudCgpLnRpdGxlKCkp
OwogI2Vsc2UKICAgICAgICAgICAgIFBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0ZSgp
LT53cml0ZUltYWdlKCppbWFnZUVsZW1lbnQsIGRvY3VtZW50KCkudXJsKCksIGRvY3VtZW50KCku
dGl0bGUoKSk7CiAjZW5kaWYKICAgICAgICAgfSBlbHNlIHsKLSNpZiAoUExBVEZPUk0oTUFDKSAm
JiAhUExBVEZPUk0oSU9TKSkgfHwgUExBVEZPUk0oRUZMKQorI2lmIChQTEFURk9STShNQUMpICYm
ICFQTEFURk9STShJT1MpKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKICAgICAg
ICAgICAgIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKCpQYXN0ZWJvYXJkOjpjcmVhdGVGb3JD
b3B5QW5kUGFzdGUoKSk7CiAjZWxzZQogICAgICAgICAgICAgLy8gRklYTUU6IENvbnZlcnQgYWxs
IG90aGVyIHBsYXRmb3JtcyB0byBtYXRjaCBNYWMgYW5kIGRlbGV0ZSB0aGlzLgpAQCAtMTE5Nyw3
ICsxMTk3LDcgQEAgdm9pZCBFZGl0b3I6OmNvcHlJbWFnZShjb25zdCBIaXRUZXN0UmVzdWx0JiBy
ZXN1bHQpCiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCiAgICAgICAgIHVybCA9IHJlc3VsdC5hYnNv
bHV0ZUltYWdlVVJMKCk7CiAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkKKyNp
ZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0oTklYKQogICAgIHdy
aXRlSW1hZ2VUb1Bhc3RlYm9hcmQoKlBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNvcHlBbmRQYXN0ZSgp
LCAqZWxlbWVudCwgdXJsLCByZXN1bHQuYWx0RGlzcGxheVN0cmluZygpKTsKICNlbHNlCiAgICAg
UGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCktPndyaXRlSW1hZ2UoKmVsZW1lbnQs
IHVybCwgcmVzdWx0LmFsdERpc3BsYXlTdHJpbmcoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaApp
bmRleCA5NzI3Mzg1ZTAwNDA4NWU2NTZiZWM4NGVlYWU0YjMxNTkzOWJlMTgxLi5kOWJiNWM1OWVi
NTdiZmY2OWE5YjY1MTUzMmJjNDUyYmVhNjk1MTZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgK
QEAgLTQwOSw3ICs0MDksNyBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0cjxEb2N1bWVudEZyYWdt
ZW50PiB3ZWJDb250ZW50RnJvbVBhc3RlYm9hcmQoUGFzdGVib2FyZCYsIFJhbmdlJiBjb250ZXh0
LCBib29sIGFsbG93UGxhaW5UZXh0LCBib29sJiBjaG9zZVBsYWluVGV4dCk7CiAjZW5kaWYKIAot
I2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKQorI2lmIFBMQVRGT1JNKE1BQykgfHwg
UExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCiAgICAgdm9pZCB3cml0ZVNlbGVjdGlvblRv
UGFzdGVib2FyZChQYXN0ZWJvYXJkJik7CiAgICAgdm9pZCB3cml0ZUltYWdlVG9QYXN0ZWJvYXJk
KFBhc3RlYm9hcmQmLCBFbGVtZW50JiBpbWFnZUVsZW1lbnQsIGNvbnN0IFVSTCYsIGNvbnN0IFN0
cmluZyYgdGl0bGUpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxDYW52YXNFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50
LmgKaW5kZXggYzQyMWFlZWMwOTk5MWE2NTc5ZjY1ZmZkNDg4YmM1NDk5Zjk1MjVhMy4uNmI1MDMx
OTJmMmFhNWU0YzJmYjA2OWNjOGQ1YTQxOGQyZmQzY2FjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTENhbnZhc0VsZW1lbnQuaApAQCAtMzMsNyArMzMsNyBAQAogI2luY2x1ZGUgIkludFNpemUu
aCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogCi0jaWYgVVNFKENHKQorI2lmIFVTRShDRykg
fHwgUExBVEZPUk0oTklYKQogI2RlZmluZSBEZWZhdWx0SW50ZXJwb2xhdGlvblF1YWxpdHkgSW50
ZXJwb2xhdGlvbkxvdwogI2Vsc2UKICNkZWZpbmUgRGVmYXVsdEludGVycG9sYXRpb25RdWFsaXR5
IEludGVycG9sYXRpb25EZWZhdWx0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9DdXJzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0N1cnNvci5oCmluZGV4IGYyMGZk
ZmFiNDhjMWExN2JlNjg4OGY2YzdmMGFhMjVlODU1N2RkZTYuLjMyY2RlZGRiOGIzMmIxMTUxMTIx
NDdiZDRmYzQ2MWIzM2YwMGNkYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L0N1cnNvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0N1cnNvci5oCkBAIC03Nyw4
ICs3NywxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgdHlwZWRlZiBOU0N1cnNvciAqUGxh
dGZvcm1DdXJzb3I7CiAjZWxpZiBQTEFURk9STShHVEspCiAgICAgdHlwZWRlZiBHUmVmUHRyPEdk
a0N1cnNvcj4gUGxhdGZvcm1DdXJzb3I7Ci0jZWxpZiBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JN
KE5JWCkKKyNlbGlmIFBMQVRGT1JNKEVGTCkKICAgICB0eXBlZGVmIGNvbnN0IGNoYXIqIFBsYXRm
b3JtQ3Vyc29yOworI2VsaWYgUExBVEZPUk0oTklYKQorICAgIHR5cGVkZWYgdW5zaWduZWQgUGxh
dGZvcm1DdXJzb3I7CiAjZWxpZiBQTEFURk9STShCTEFDS0JFUlJZKQogICAgIHR5cGVkZWYgQmxh
Y2tCZXJyeTo6UGxhdGZvcm06OkJsYWNrQmVycnlDdXJzb3IgUGxhdGZvcm1DdXJzb3I7CiAjZWxz
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRkZURnJhbWUuaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmgKaW5kZXggODk0OGY3Yzkw
NDQ0NTVkZGQ0MmQzM2RjMDFkZDEzZWEyZWVjZDY1ZS4uOTI0ZDQ3NDlhNTIwOGY2NDA5YzYwOTE2
OTMxYWJmMzljNmIwNTBjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vRkZURnJhbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFt
ZS5oCkBAIC0xODQsNyArMTg0LDYgQEAgcHJpdmF0ZToKICNlbmRpZiAvLyBVU0UoV0VCQVVESU9f
SVBQKQogCiAjaWYgUExBVEZPUk0oTklYKQotICAgIHZvaWQgc2NhbGVQbGFuYXJEYXRhKGZsb2F0
IHNjYWxlKTsKICAgICBPd25QdHI8Tml4OjpGRlRGcmFtZT4gbV9mZnRGcmFtZTsKICNlbmRpZiAv
LyBQTEFURk9STShOSVgpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL25peC9BdWRpb0J1c05peC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9u
aXgvQXVkaW9CdXNOaXguY3BwCmluZGV4IDcyMTA5OTM1M2ExMTEyZjZmMmUxMzY3YzVjNDQxYmZj
OWY0NzU3YjkuLmE0Yjc2MTc0ZDdhNTcxNzE1NjdhOTFjZDgxOWY4NTkwNTAyMGRiZGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL25peC9BdWRpb0J1c05peC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbml4L0F1ZGlvQnVzTml4LmNwcApA
QCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkF1ZGlvQnVzLmgiCiAKICNpbmNsdWRlICJBdWRp
b0ZpbGVSZWFkZXIuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtLmgiCiAjaW5jbHVkZSA8Y3N0ZGlv
PgogI2luY2x1ZGUgPHB1YmxpYy9NdWx0aUNoYW5uZWxQQ01EYXRhLmg+CiAjaW5jbHVkZSA8cHVi
bGljL1BsYXRmb3JtLmg+CkBAIC01Myw5ICs1NCwxMSBAQCBQYXNzUmVmUHRyPEF1ZGlvQnVzPiBB
dWRpb0J1czo6bG9hZFBsYXRmb3JtUmVzb3VyY2UoY29uc3QgY2hhciogbmFtZSwgZmxvYXQgc2Ft
cAogewogICAgIC8vIEZJWE1FOiBUaGlzIGFzc3VtZXMgdGhlIGZpbGUgc3lzdGVtIHVzZXMgbGF0
aW4xIG9yIFVURi04IGVuY29kaW5nLCBidXQgdGhpcyBjb21tZW50IGFsc28gYXNzdW1lcwogICAg
IC8vIHRoYXQgbm9uLWFzY2lpIGZpbGUgbmFtZXMgd291bGQgYXBwZWFyIGhlcmUuCi0gICAgY29u
c3QgQ1N0cmluZyBhYnNvbHV0ZUZpbGVuYW1lKG1ha2VTdHJpbmcoREFUQV9ESVIsICIvd2ViYXVk
aW8vcmVzb3VyY2VzLyIsIG5hbWUsICIud2F2IikudXRmOCgpKTsKKyAgICBDU3RyaW5nIGFic29s
dXRlRmlsZW5hbWUobWFrZVN0cmluZyhEQVRBX0RJUiwgIi93ZWJhdWRpby9yZXNvdXJjZXMvIiwg
bmFtZSwgIi53YXYiKS51dGY4KCkpOwogICAgIHN0cnVjdCBzdGF0IHN0YXREYXRhOwogICAgIGlm
ICg6OnN0YXQoYWJzb2x1dGVGaWxlbmFtZS5kYXRhKCksICZzdGF0RGF0YSkgPT0gLTEpCisgICAg
ICAgIGFic29sdXRlRmlsZW5hbWUgPSBtYWtlU3RyaW5nKFVOSU5TVEFMTEVEX0FVRElPX1JFU09V
UkNFU19ESVIsICIvIiwgbmFtZSwgIi53YXYiKS51dGY4KCk7CisgICAgaWYgKDo6c3RhdChhYnNv
bHV0ZUZpbGVuYW1lLmRhdGEoKSwgJnN0YXREYXRhKSA9PSAtMSkKICAgICAgICAgcmV0dXJuIG51
bGxwdHI7CiAKICAgICBGSUxFKiBmaWxlID0gZm9wZW4oYWJzb2x1dGVGaWxlbmFtZS5kYXRhKCks
ICJyYiIpOwpAQCAtNjQsNyArNjcsNyBAQCBQYXNzUmVmUHRyPEF1ZGlvQnVzPiBBdWRpb0J1czo6
bG9hZFBsYXRmb3JtUmVzb3VyY2UoY29uc3QgY2hhciogbmFtZSwgZmxvYXQgc2FtcAogCiAgICAg
V1RGOjpWZWN0b3I8Y2hhcj4gZmlsZUNvbnRlbnRzOwogICAgIGZpbGVDb250ZW50cy5yZXNpemUo
c3RhdERhdGEuc3Rfc2l6ZSk7Ci0gICAgc2l6ZV90IGJ5dGVzUmVhZCA9IGZyZWFkKCZmaWxlQ29u
dGVudHNbMF0sIGZpbGVDb250ZW50cy5zaXplKCksIDEsIGZpbGUpOworICAgIHNpemVfdCBieXRl
c1JlYWQgPSBmcmVhZCgmZmlsZUNvbnRlbnRzWzBdLCAxLCBmaWxlQ29udGVudHMuc2l6ZSgpLCBm
aWxlKTsKICAgICBmY2xvc2UoZmlsZSk7CiAgICAgaWYgKGJ5dGVzUmVhZCA8IGZpbGVDb250ZW50
cy5zaXplKCkpCiAgICAgICAgIGZpbGVDb250ZW50cy5yZXNpemUoYnl0ZXNSZWFkKTsKQEAgLTg4
LDMgKzkxLDQgQEAgUGFzc1JlZlB0cjxBdWRpb0J1cz4gY3JlYXRlQnVzRnJvbUluTWVtb3J5QXVk
aW9GaWxlKGNvbnN0IHZvaWQqIGRhdGEsIHNpemVfdCBkYXQKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVESU8pCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmgKaW5kZXggMDNiNTdiNWU4MjQ0NDg4YTVmOWU2MjJm
NzA2NDU5OGQ2MjhmNWYyMy4uNGU5ZDM5ZTMxNWRhOWE1ODJmM2JhMDBhZjNlYmE0ZTZmNzFkMDc4
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmgKQEAg
LTI1LDcgKzI1LDcgQEAKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KICNpbmNsdWRlIDx3
dGYvUGFzc093blB0ci5oPgogCi0jaWYgVVNFKEVHTCkgJiYgIVBMQVRGT1JNKEdUSykKKyNpZiBV
U0UoRUdMKSAmJiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0oTklYKQogI2luY2x1ZGUgImVn
bHBsYXRmb3JtLmgiCiB0eXBlZGVmIEVHTE5hdGl2ZVdpbmRvd1R5cGUgR0xOYXRpdmVXaW5kb3dU
eXBlOwogI2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9DdXJz
b3JOaXguY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKaW5k
ZXggMTc3ZWYwY2NlM2JlOTdmZWFhZDQ4ZjY3ODcwNTU2ZGI4YTExNTJjNC4uZWI4NGI5YmNjMmM5
MzkyYTFhM2NlMzYzYWRhODM2NzkzZTU0NTA0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bml4L0N1cnNvck5peC5jcHAKQEAgLTYsNyArNiw3IEBACiAgKiBDb3B5cmlnaHQgKEMpIDIwMDgg
S2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4KICAqIENvcHlyaWdodCAoQykgMjAwOS0yMDEwIFBy
b0ZVU0lPTiBlbWJlZGRlZCBzeXN0ZW1zCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBTYW1z
dW5nIEVsZWN0cm9uaWNzCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgorICogQ29weXJpZ2h0IChDKSAyMDEyLCAyMDEz
IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KICAqCiAgKiBB
bGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTM1LDggKzM1LDYgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJDdXJzb3IuaCIKIAotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgi
Ci0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ3Vyc29yOjpDdXJzb3IoY29uc3QgQ3Vyc29yJiBv
dGhlcikKQEAgLTYwLDYxICs1OCwxMiBAQCBDdXJzb3ImIEN1cnNvcjo6b3BlcmF0b3I9KGNvbnN0
IEN1cnNvciYgb3RoZXIpCiAgICAgcmV0dXJuICp0aGlzOwogfQogCi1zdGF0aWMgY29uc3QgY2hh
ciogY3Vyc29yU3RyaW5nKEN1cnNvcjo6VHlwZSB0eXBlKQotewotICAgIHN0YXRpYyBjb25zdCBj
aGFyKiBjdXJzb3JTdHJpbmdzW10gPSB7Ci0gICAgICAgICJjdXJzb3IvcG9pbnRlciIsCi0gICAg
ICAgICJjdXJzb3IvY3Jvc3MiLAotICAgICAgICAiY3Vyc29yL2hhbmQiLAotICAgICAgICAiY3Vy
c29yL2lfYmVhbSIsCi0gICAgICAgICJjdXJzb3Ivd2FpdCIsCi0gICAgICAgICJjdXJzb3IvaGVs
cCIsCi0gICAgICAgICJjdXJzb3IvZWFzdF9yZXNpemUiLAotICAgICAgICAiY3Vyc29yL25vcnRo
X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfZWFzdF9yZXNpemUiLAotICAgICAgICAi
Y3Vyc29yL25vcnRoX3dlc3RfcmVzaXplIiwKLSAgICAgICAgImN1cnNvci9zb3V0aF9yZXNpemUi
LAotICAgICAgICAiY3Vyc29yL3NvdXRoX2Vhc3RfcmVzaXplIiwKLSAgICAgICAgImN1cnNvci9z
b3V0aF93ZXN0X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivd2VzdF9yZXNpemUiLAotICAgICAg
ICAiY3Vyc29yL25vcnRoX3NvdXRoX3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3IvZWFzdF93ZXN0
X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfZWFzdF9zb3V0aF93ZXN0X3Jlc2l6ZSIs
Ci0gICAgICAgICJjdXJzb3Ivbm9ydGhfd2VzdF9zb3V0aF9lYXN0X3Jlc2l6ZSIsCi0gICAgICAg
ICJjdXJzb3IvY29sdW1uX3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivcm93X3Jlc2l6ZSIsCi0g
ICAgICAgICJjdXJzb3IvbWlkZGxlX3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29yL2Vhc3RfcGFu
bmluZyIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfcGFubmluZyIsCi0gICAgICAgICJjdXJzb3Iv
bm9ydGhfZWFzdF9wYW5uaW5nIiwKLSAgICAgICAgImN1cnNvci9ub3J0aF93ZXN0X3Bhbm5pbmci
LAotICAgICAgICAiY3Vyc29yL3NvdXRoX3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29yL3NvdXRo
X2Vhc3RfcGFubmluZyIsCi0gICAgICAgICJjdXJzb3Ivc291dGhfd2VzdF9wYW5uaW5nIiwKLSAg
ICAgICAgImN1cnNvci93ZXN0X3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29yL21vdmUiLAotICAg
ICAgICAiY3Vyc29yL3ZlcnRpY2FsX3RleHQiLAotICAgICAgICAiY3Vyc29yL2NlbGwiLAotICAg
ICAgICAiY3Vyc29yL2NvbnRleHRfbWVudSIsCi0gICAgICAgICJjdXJzb3IvYWxpYXMiLAotICAg
ICAgICAiY3Vyc29yL3Byb2dyZXNzIiwKLSAgICAgICAgImN1cnNvci9ub19kcm9wIiwKLSAgICAg
ICAgImN1cnNvci9jb3B5IiwKLSAgICAgICAgImN1cnNvci9ub25lIiwKLSAgICAgICAgImN1cnNv
ci9ub3RfYWxsb3dlZCIsCi0gICAgICAgICJjdXJzb3Ivem9vbV9pbiIsCi0gICAgICAgICJjdXJz
b3Ivem9vbV9vdXQiLAotICAgICAgICAiY3Vyc29yL2dyYWIiLAotICAgICAgICAiY3Vyc29yL2dy
YWJiaW5nIiwKLSAgICAgICAgIiJ9OyAvLyBGSVhNRTogSnVzdCByZXR1cm4gIiIgZm9yIGN1c3Rv
bSB0eXBlLiBXZSBkb24ndCBzdXBwb3J0IGl0IG5vdy4KLSAgICByZXR1cm4gY3Vyc29yU3RyaW5n
c1t0eXBlXTsKLX0KLQogdm9pZCBDdXJzb3I6OmVuc3VyZVBsYXRmb3JtQ3Vyc29yKCkgY29uc3QK
IHsKICAgICBpZiAobV9wbGF0Zm9ybUN1cnNvcikKICAgICAgICAgcmV0dXJuOwotICAgIG1fcGxh
dGZvcm1DdXJzb3IgPSBjdXJzb3JTdHJpbmcobV90eXBlKTsKKyAgICBtX3BsYXRmb3JtQ3Vyc29y
ID0gbV90eXBlOwogfQogCi19Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9HYW1lcGFkc05peC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uaXgvR2FtZXBhZHNOaXguY3BwCmluZGV4IDdjYmI4YWQwMjVmOTU2YzI0
YjcxMTFkMzg3ODYwYjhhMTY0MTI3MGIuLjE0MGE1YWE2MmY5NzcyYmM0MjAxYzg1MTg0YWM3OTBl
ZGFkY2JiZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9HYW1lcGFk
c05peC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L0dhbWVwYWRzTml4LmNw
cApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTEsIEdvb2dsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIsIDIwMTMgTm9raWEg
Q29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CkBAIC00Nyw3ICs0OCw3IEBAIHZvaWQgc2FtcGxlR2Ft
ZXBhZHMoR2FtZXBhZExpc3QqIGludG8pCiAgICAgICAgICAgICBSZWZQdHI8R2FtZXBhZD4gZ2Ft
ZXBhZCA9IGludG8tPml0ZW0oaSk7CiAgICAgICAgICAgICBpZiAoIWdhbWVwYWQpCiAgICAgICAg
ICAgICAgICAgZ2FtZXBhZCA9IEdhbWVwYWQ6OmNyZWF0ZSgpOwotICAgICAgICAgICAgZ2FtZXBh
ZC0+aWQobml4R2FtZXBhZC5pZCk7CisgICAgICAgICAgICBnYW1lcGFkLT5pZChTdHJpbmc6OmZy
b21VVEY4KG5peEdhbWVwYWQuaWQpKTsKICAgICAgICAgICAgIGdhbWVwYWQtPmluZGV4KGkpOwog
ICAgICAgICAgICAgZ2FtZXBhZC0+dGltZXN0YW1wKG5peEdhbWVwYWQudGltZXN0YW1wKTsKICAg
ICAgICAgICAgIGdhbWVwYWQtPmF4ZXMobml4R2FtZXBhZC5heGVzTGVuZ3RoLCBuaXhHYW1lcGFk
LmF4ZXMpOwpAQCAtNTgsNiArNTksNyBAQCB2b2lkIHNhbXBsZUdhbWVwYWRzKEdhbWVwYWRMaXN0
KiBpbnRvKQogICAgIH0KIH0KIAotfQorfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYg
Ly8gRU5BQkxFKEdBTUVQQUQpCiAKLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbml4L1JlbmRlclRoZW1lTml4LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25peC9SZW5kZXJUaGVtZU5peC5jcHAKaW5kZXggODA4ZjAwYjkyMmZmZWU1ZGQ5YWFiMzc4MzM2
ZjA0MjZiMGMxM2U1ZC4uMjU1NTI1NjdiNTU3NTU5ZTY2NjEwMDQyZDczM2JmNmEyYzI0OWRhOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L1JlbmRlclRoZW1lTml4LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXguY3BwCkBA
IC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMi0yMDEzIE5va2lhIENvcnBv
cmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqIENvcHlyaWdodCAoQykgMjAx
MiwgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAg
KgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJSZW5kZXJUaGVtZU5peC5oIgogCisjaW5jbHVkZSAiSFRN
TE1lZGlhRWxlbWVudC5oIgogI2luY2x1ZGUgIklucHV0VHlwZU5hbWVzLmgiCiAjaW5jbHVkZSAi
UGFpbnRJbmZvLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1Db250ZXh0Q2Fpcm8uaCIKQEAgLTQwLDEx
ICs0MSwxMCBAQAogI2luY2x1ZGUgIkhUTUxNZXRlckVsZW1lbnQuaCIKICNpbmNsdWRlICJSZW5k
ZXJNZXRlci5oIgogI2VuZGlmCisjaW5jbHVkZSAiVXNlckFnZW50U3R5bGVTaGVldHMuaCIKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0aWMgY29uc3QgdW5zaWduZWQgZGVmYXVsdEJ1dHRv
bkJhY2tncm91bmRDb2xvciA9IDB4ZmZkZGRkZGQ7Ci0KIHN0YXRpYyB2b2lkIHNldFNpemVJZkF1
dG8oUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25zdCBJbnRTaXplJiBzaXplKQogewogICAgIGlmIChz
dHlsZS0+d2lkdGgoKS5pc0ludHJpbnNpY09yQXV0bygpKQpAQCAtNTMsMTEgKzUzLDYgQEAgc3Rh
dGljIHZvaWQgc2V0U2l6ZUlmQXV0byhSZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0IEludFNpemUm
IHNpemUpCiAgICAgICAgIHN0eWxlLT5zZXRIZWlnaHQoTGVuZ3RoKHNpemUuaGVpZ2h0KCksIEZp
eGVkKSk7CiB9CiAKLUNvbG9yIHRvQ29sb3IoY29uc3QgTml4OjpDb2xvciYgY29sb3IpCi17Ci0g
ICAgcmV0dXJuIFdlYkNvcmU6OkNvbG9yKFJHQkEzMihjb2xvcikpOwotfQotCiBzdGF0aWMgTml4
OjpUaGVtZUVuZ2luZSogdGhlbWVFbmdpbmUoKQogewogICAgIHJldHVybiBOaXg6OlBsYXRmb3Jt
OjpjdXJyZW50KCktPnRoZW1lRW5naW5lKCk7CkBAIC02OCw2ICs2MywxNiBAQCBzdGF0aWMgTml4
OjpDYW52YXMqIHdlYkNhbnZhcyhjb25zdCBQYWludEluZm8mIGluZm8pCiAgICAgcmV0dXJuIGlu
Zm8uY29udGV4dC0+cGxhdGZvcm1Db250ZXh0KCktPmNyKCk7CiB9CiAKK3N0YXRpYyBJbnRTaXpl
IHRvSW50U2l6ZShjb25zdCBOaXg6OlNpemUmIHNpemUpCit7CisgICAgcmV0dXJuIEludFNpemUo
c2l6ZS53aWR0aCwgc2l6ZS5oZWlnaHQpOworfQorCitzdGF0aWMgTml4OjpSZWN0IHRvTml4UmVj
dChjb25zdCBJbnRSZWN0JiByZWN0KQoreworICAgIHJldHVybiBOaXg6OlJlY3QocmVjdC54KCks
IHJlY3QueSgpLCByZWN0LndpZHRoKCksIHJlY3QuaGVpZ2h0KCkpOworfQorCiBQYXNzUmVmUHRy
PFJlbmRlclRoZW1lPiBSZW5kZXJUaGVtZTo6dGhlbWVGb3JQYWdlKFBhZ2UqKQogewogICAgIHJl
dHVybiBSZW5kZXJUaGVtZU5peDo6Y3JlYXRlKCk7CkBAIC0xMDUsNjMgKzExMCw2MyBAQCBTdHJp
bmcgUmVuZGVyVGhlbWVOaXg6OmV4dHJhUGx1Z0luc1N0eWxlU2hlZXQoKQogCiBDb2xvciBSZW5k
ZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKSBjb25z
dAogewotICAgIHJldHVybiB0b0NvbG9yKHRoZW1lRW5naW5lKCktPmFjdGl2ZVNlbGVjdGlvbkJh
Y2tncm91bmRDb2xvcigpKTsKKyAgICByZXR1cm4gdGhlbWVFbmdpbmUoKS0+YWN0aXZlU2VsZWN0
aW9uQmFja2dyb3VuZENvbG9yKCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4
OjpwbGF0Zm9ybUluYWN0aXZlU2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAg
ICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZVNlbGVjdGlvbkJhY2tncm91
bmRDb2xvcigpKTsKKyAgICByZXR1cm4gdGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVTZWxlY3Rpb25C
YWNrZ3JvdW5kQ29sb3IoKS5hcmdiMzIoKTsKIH0KIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6OnBs
YXRmb3JtQWN0aXZlU2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1
cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5hY3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3Io
KSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmFjdGl2ZVNlbGVjdGlvbkZvcmVncm91bmRD
b2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFj
dGl2ZVNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29s
b3IodGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IoKSk7Cisg
ICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmluYWN0aXZlU2VsZWN0aW9uRm9yZWdyb3VuZENvbG9y
KCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUFjdGl2ZUxp
c3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKSBjb25zdAogewotICAgIHJldHVybiB0b0Nv
bG9yKHRoZW1lRW5naW5lKCktPmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3Io
KSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNr
Z3JvdW5kQ29sb3IoKS5hcmdiMzIoKTsKIH0KIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6OnBsYXRm
b3JtSW5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAg
ICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25C
YWNrZ3JvdW5kQ29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmluYWN0aXZlTGlz
dEJveFNlbGVjdGlvbkJhY2tncm91bmRDb2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xvciBSZW5k
ZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9y
KCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5hY3RpdmVMaXN0
Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkpOworICAgIHJldHVybiB0aGVtZUVuZ2luZSgp
LT5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkuYXJnYjMyKCk7CiB9CiAK
IENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZlTGlzdEJveFNlbGVjdGlvbkZv
cmVncm91bmRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUo
KS0+aW5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkpOworICAgIHJldHVy
biB0aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3Io
KS5hcmdiMzIoKTsKIH0KIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0aXZlVGV4
dFNlYXJjaEhpZ2hsaWdodENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVt
ZUVuZ2luZSgpLT5hY3RpdmVUZXh0U2VhcmNoSGlnaGxpZ2h0Q29sb3IoKSk7CisgICAgcmV0dXJu
IHRoZW1lRW5naW5lKCktPmFjdGl2ZVRleHRTZWFyY2hIaWdobGlnaHRDb2xvcigpLmFyZ2IzMigp
OwogfQogCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZVRleHRTZWFyY2hI
aWdobGlnaHRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUo
KS0+aW5hY3RpdmVUZXh0U2VhcmNoSGlnaGxpZ2h0Q29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1l
RW5naW5lKCktPmluYWN0aXZlVGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKCkuYXJnYjMyKCk7CiB9
CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUZvY3VzUmluZ0NvbG9yKCkgY29uc3QK
IHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5mb2N1c1JpbmdDb2xvcigpKTsK
KyAgICByZXR1cm4gdGhlbWVFbmdpbmUoKS0+Zm9jdXNSaW5nQ29sb3IoKS5hcmdiMzIoKTsKIH0K
IAogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMpCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZv
cm1UYXBIaWdobGlnaHRDb2xvcigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVF
bmdpbmUoKS0+dGFwSGlnaGxpZ2h0Q29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCkt
PnRhcEhpZ2hsaWdodENvbG9yKCkuYXJnYjMyKCk7CiB9CiAjZW5kaWYKIApAQCAtMTg2LDExICsx
OTEsNyBAQCBib29sIFJlbmRlclRoZW1lTml4OjpwYWludEJ1dHRvbihSZW5kZXJPYmplY3QqIG8s
IGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UgogICAgIE5peDo6VGhlbWVFbmdpbmU6OkJ1
dHRvbkV4dHJhUGFyYW1zIGV4dHJhUGFyYW1zOwogICAgIGV4dHJhUGFyYW1zLmlzRGVmYXVsdCA9
IGlzRGVmYXVsdChvKTsKICAgICBleHRyYVBhcmFtcy5oYXNCb3JkZXIgPSB0cnVlOwotICAgIGV4
dHJhUGFyYW1zLmJhY2tncm91bmRDb2xvciA9IGRlZmF1bHRCdXR0b25CYWNrZ3JvdW5kQ29sb3I7
Ci0gICAgaWYgKG8tPmhhc0JhY2tncm91bmQoKSkKLSAgICAgICAgZXh0cmFQYXJhbXMuYmFja2dy
b3VuZENvbG9yID0gby0+c3R5bGUoKS0+dmlzaXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5
QmFja2dyb3VuZENvbG9yKS5yZ2IoKTsKLQotICAgIHRoZW1lRW5naW5lKCktPnBhaW50QnV0dG9u
KHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0KHJlY3Qp
LCBleHRyYVBhcmFtcyk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRCdXR0b24od2ViQ2FudmFz
KGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFy
YW1zKTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTE5OCwxMCArMTk5LDEwIEBAIGJvb2wg
UmVuZGVyVGhlbWVOaXg6OnBhaW50VGV4dEZpZWxkKFJlbmRlck9iamVjdCogbywgY29uc3QgUGFp
bnRJbmZvJiBpLCBjb25zdCBJCiB7CiAgICAgLy8gV2ViVGhlbWVFbmdpbmUgZG9lcyBub3QgaGFu
ZGxlIGJvcmRlciByb3VuZGVkIGNvcm5lciBhbmQgYmFja2dyb3VuZCBpbWFnZQogICAgIC8vIHNv
IHJldHVybiB0cnVlIHRvIGRyYXcgQ1NTIGJvcmRlciBhbmQgYmFja2dyb3VuZC4KLSAgICBpZiAo
by0+c3R5bGUoKS0+aGFzQm9yZGVyUmFkaXVzKCkgfHwgby0+c3R5bGUoKS0+aGFzQmFja2dyb3Vu
ZEltYWdlKCkpCisgICAgaWYgKG8tPnN0eWxlKCkuaGFzQm9yZGVyUmFkaXVzKCkgfHwgby0+c3R5
bGUoKS5oYXNCYWNrZ3JvdW5kSW1hZ2UoKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICB0
aGVtZUVuZ2luZSgpLT5wYWludFRleHRGaWVsZCh3ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3Rh
dGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0KSk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRU
ZXh0RmllbGQod2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJl
Y3QocmVjdCkpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtMjE2LDcgKzIxNyw3IEBAIGJv
b2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50Q2hlY2tib3goUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBQ
YWludEluZm8mIGksIGNvbnN0IEluCiAgICAgZXh0cmFQYXJhbXMuY2hlY2tlZCA9IGlzQ2hlY2tl
ZChvKTsKICAgICBleHRyYVBhcmFtcy5pbmRldGVybWluYXRlID0gaXNJbmRldGVybWluYXRlKG8p
OwogCi0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRDaGVja2JveCh3ZWJDYW52YXMoaSksIGdldFdl
YlRoZW1lU3RhdGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0KSwgZXh0cmFQYXJhbXMpOworICAg
IHRoZW1lRW5naW5lKCktPnBhaW50Q2hlY2tib3god2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0
YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKICAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKQEAgLTIyNiw3ICsyMjcsNyBAQCB2b2lkIFJlbmRlclRoZW1lTml4OjpzZXRD
aGVja2JveFNpemUoUmVuZGVyU3R5bGUqIHN0eWxlKSBjb25zdAogICAgIGlmICghc3R5bGUtPndp
ZHRoKCkuaXNJbnRyaW5zaWNPckF1dG8oKSAmJiAhc3R5bGUtPmhlaWdodCgpLmlzQXV0bygpKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBJbnRTaXplIHNpemUgPSB0aGVtZUVuZ2luZSgpLT5nZXRD
aGVja2JveFNpemUoKTsKKyAgICBJbnRTaXplIHNpemUgPSB0b0ludFNpemUodGhlbWVFbmdpbmUo
KS0+Z2V0Q2hlY2tib3hTaXplKCkpOwogICAgIHNldFNpemVJZkF1dG8oc3R5bGUsIHNpemUpOwog
fQogCkBAIC0yMzYsNyArMjM3LDcgQEAgYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRSYWRpbyhS
ZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UmUKICAgICBleHRy
YVBhcmFtcy5jaGVja2VkID0gaXNDaGVja2VkKG8pOwogICAgIGV4dHJhUGFyYW1zLmluZGV0ZXJt
aW5hdGUgPSBpc0luZGV0ZXJtaW5hdGUobyk7CiAKLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludFJh
ZGlvKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0KHJl
Y3QpLCBleHRyYVBhcmFtcyk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRSYWRpbyh3ZWJDYW52
YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIHRvTml4UmVjdChyZWN0KSwgZXh0cmFQ
YXJhbXMpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtMjQ2LDEzICsyNDcsMTMgQEAgdm9p
ZCBSZW5kZXJUaGVtZU5peDo6c2V0UmFkaW9TaXplKFJlbmRlclN0eWxlKiBzdHlsZSkgY29uc3QK
ICAgICBpZiAoIXN0eWxlLT53aWR0aCgpLmlzSW50cmluc2ljT3JBdXRvKCkgJiYgIXN0eWxlLT5o
ZWlnaHQoKS5pc0F1dG8oKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgSW50U2l6ZSBzaXplID0g
dGhlbWVFbmdpbmUoKS0+Z2V0UmFkaW9TaXplKCk7CisgICAgSW50U2l6ZSBzaXplID0gdG9JbnRT
aXplKHRoZW1lRW5naW5lKCktPmdldFJhZGlvU2l6ZSgpKTsKICAgICBzZXRTaXplSWZBdXRvKHN0
eWxlLCBzaXplKTsKIH0KIAogYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZW51TGlzdChSZW5k
ZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UmVjdCYgcmVjdCkKIHsK
LSAgICB0aGVtZUVuZ2luZSgpLT5wYWludE1lbnVMaXN0KHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhl
bWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0KHJlY3QpKTsKKyAgICB0aGVtZUVuZ2luZSgpLT5w
YWludE1lbnVMaXN0KHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgdG9O
aXhSZWN0KHJlY3QpKTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTI4Niw3ICsyODcsNyBA
QCBib29sIFJlbmRlclRoZW1lTml4OjpwYWludFByb2dyZXNzQmFyKFJlbmRlck9iamVjdCogbywg
Y29uc3QgUGFpbnRJbmZvJiBpLCBjb25zdAogICAgIGV4dHJhUGFyYW1zLnBvc2l0aW9uID0gcmVu
ZGVyUHJvZ3Jlc3MtPnBvc2l0aW9uKCk7CiAgICAgZXh0cmFQYXJhbXMuYW5pbWF0aW9uUHJvZ3Jl
c3MgPSByZW5kZXJQcm9ncmVzcy0+YW5pbWF0aW9uUHJvZ3Jlc3MoKTsKICAgICBleHRyYVBhcmFt
cy5hbmltYXRpb25TdGFydFRpbWUgPSByZW5kZXJQcm9ncmVzcy0+YW5pbWF0aW9uU3RhcnRUaW1l
KCk7Ci0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRQcm9ncmVzc0Jhcih3ZWJDYW52YXMoaSksIGdl
dFdlYlRoZW1lU3RhdGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0KSwgZXh0cmFQYXJhbXMpOwor
ICAgIHRoZW1lRW5naW5lKCktPnBhaW50UHJvZ3Jlc3NCYXIod2ViQ2FudmFzKGkpLCBnZXRXZWJU
aGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKIAogICAg
IHJldHVybiBmYWxzZTsKIH0KQEAgLTMwNCw3ICszMDUsNyBAQCBkb3VibGUgUmVuZGVyVGhlbWVO
aXg6OmFuaW1hdGlvbkR1cmF0aW9uRm9yUHJvZ3Jlc3NCYXIoUmVuZGVyUHJvZ3Jlc3MqKSBjb25z
dAogCiBib29sIFJlbmRlclRoZW1lTml4OjpwYWludFNsaWRlclRyYWNrKFJlbmRlck9iamVjdCog
b2JqZWN0LCBjb25zdCBQYWludEluZm8mIGluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0g
ICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRTbGlkZXJUcmFjayh3ZWJDYW52YXMoaW5mbyksIGdldFdl
YlRoZW1lU3RhdGUodGhpcywgb2JqZWN0KSwgcmVjdCk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFp
bnRTbGlkZXJUcmFjayh3ZWJDYW52YXMoaW5mbyksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgb2Jq
ZWN0KSwgdG9OaXhSZWN0KHJlY3QpKTsKICNpZiBFTkFCTEUoREFUQUxJU1RfRUxFTUVOVCkKICAg
ICBwYWludFNsaWRlclRpY2tzKG9iamVjdCwgaW5mbywgcmVjdCk7CiAjZW5kaWYKQEAgLTMxOCw3
ICszMTksNyBAQCB2b2lkIFJlbmRlclRoZW1lTml4OjphZGp1c3RTbGlkZXJUcmFja1N0eWxlKFN0
eWxlUmVzb2x2ZXIqLCBSZW5kZXJTdHlsZSogc3R5bGUsCiAKIGJvb2wgUmVuZGVyVGhlbWVOaXg6
OnBhaW50U2xpZGVyVGh1bWIoUmVuZGVyT2JqZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50SW5mbyYg
aW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkKIHsKLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludFNs
aWRlclRodW1iKHdlYkNhbnZhcyhpbmZvKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvYmplY3Qp
LCByZWN0KTsKKyAgICB0aGVtZUVuZ2luZSgpLT5wYWludFNsaWRlclRodW1iKHdlYkNhbnZhcyhp
bmZvKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvYmplY3QpLCB0b05peFJlY3QocmVjdCkpOwog
CiAgICAgcmV0dXJuIGZhbHNlOwogfQpAQCAtMzg4LDcgKzM4OSw3IEBAIGJvb2wgUmVuZGVyVGhl
bWVOaXg6OnBhaW50SW5uZXJTcGluQnV0dG9uKFJlbmRlck9iamVjdCogbywgY29uc3QgUGFpbnRJ
bmZvJiBpLCBjCiAgICAgZXh0cmFQYXJhbXMuc3BpblVwID0gaXNTcGluVXBCdXR0b25QYXJ0UHJl
c3NlZChvKTsKICAgICBleHRyYVBhcmFtcy5yZWFkT25seSA9IGlzUmVhZE9ubHlDb250cm9sKG8p
OwogCi0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRJbm5lclNwaW5CdXR0b24od2ViQ2FudmFzKGkp
LCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCBOaXg6OlJlY3QocmVjdCksIGV4dHJhUGFyYW1z
KTsKKyAgICB0aGVtZUVuZ2luZSgpLT5wYWludElubmVyU3BpbkJ1dHRvbih3ZWJDYW52YXMoaSks
IGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIHRvTml4UmVjdChyZWN0KSwgZXh0cmFQYXJhbXMp
OwogICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtNDMyLDEwICs0MzMsNjUgQEAgYm9vbCBSZW5k
ZXJUaGVtZU5peDo6cGFpbnRNZXRlcihSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYg
aSwgY29uc3QgSW50UmUKICAgICBleHRyYVBhcmFtcy5oaWdoID0gZS0+aGlnaCgpOwogICAgIGV4
dHJhUGFyYW1zLm9wdGltdW0gPSBlLT5vcHRpbXVtKCk7CiAKLSAgICB0aGVtZUVuZ2luZSgpLT5w
YWludE1ldGVyKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgcmVjdCwg
ZXh0cmFQYXJhbXMpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWV0ZXIod2ViQ2FudmFzKGkp
LCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1z
KTsKIAogICAgIHJldHVybiBmYWxzZTsKIH0KICNlbmRpZgogCisjaWYgRU5BQkxFKFZJREVPKQor
U3RyaW5nIFJlbmRlclRoZW1lTml4OjpleHRyYU1lZGlhQ29udHJvbHNTdHlsZVNoZWV0KCkKK3sK
KyAgICByZXR1cm4gU3RyaW5nKG1lZGlhQ29udHJvbHNOaXhVc2VyQWdlbnRTdHlsZVNoZWV0LCBz
aXplb2YobWVkaWFDb250cm9sc05peFVzZXJBZ2VudFN0eWxlU2hlZXQpKTsKK30KKworYm9vbCBS
ZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVBsYXlCdXR0b24oUmVuZGVyT2JqZWN0KiBvLCBjb25z
dCBQYWludEluZm8mIGksIGNvbnN0IEludFJlY3QmIHJlY3QpCit7CisgICAgYXV0byBzdGF0ZSA9
IHRvSFRNTE1lZGlhRWxlbWVudChvLT5ub2RlKCktPnNoYWRvd0hvc3QoKSktPmNhblBsYXkoKSA/
IE5peDo6VGhlbWVFbmdpbmU6OlN0YXRlUGF1c2VkIDogTml4OjpUaGVtZUVuZ2luZTo6U3RhdGVQ
bGF5aW5nOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWVkaWFQbGF5QnV0dG9uKHdlYkNhbnZh
cyhpKSwgc3RhdGUsIHRvTml4UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCiti
b29sIFJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhTXV0ZUJ1dHRvbihSZW5kZXJPYmplY3QqIG8s
IGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UmVjdCYgcmVjdCkKK3sKKyAgICBhdXRvIHN0
YXRlID0gdG9IVE1MTWVkaWFFbGVtZW50KG8tPm5vZGUoKS0+c2hhZG93SG9zdCgpKS0+bXV0ZWQo
KSA/IE5peDo6VGhlbWVFbmdpbmU6OlN0YXRlTXV0ZWQgOiBOaXg6OlRoZW1lRW5naW5lOjpTdGF0
ZU5vdE11dGVkOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWVkaWFNdXRlQnV0dG9uKHdlYkNh
bnZhcyhpKSwgc3RhdGUsIHRvTml4UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQor
Citib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhU2Vla0JhY2tCdXR0b24oUmVuZGVyT2Jq
ZWN0KiwgY29uc3QgUGFpbnRJbmZvJiBpLCBjb25zdCBJbnRSZWN0JiByZWN0KQoreworICAgIHRo
ZW1lRW5naW5lKCktPnBhaW50TWVkaWFTZWVrQmFja0J1dHRvbih3ZWJDYW52YXMoaSksIHRvTml4
UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIFJlbmRlclRoZW1lTml4
OjpwYWludE1lZGlhU2Vla0ZvcndhcmRCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJ
bmZvJiBpLCBjb25zdCBJbnRSZWN0JiByZWN0KQoreworICAgIHRoZW1lRW5naW5lKCktPnBhaW50
TWVkaWFTZWVrRm9yd2FyZEJ1dHRvbih3ZWJDYW52YXMoaSksIHRvTml4UmVjdChyZWN0KSk7Cisg
ICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhU2xp
ZGVyVHJhY2soUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYp
Cit7CisgICAgcmV0dXJuIGZhbHNlOwogfQorCitib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1l
ZGlhVm9sdW1lU2xpZGVyQ29udGFpbmVyKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYs
IGNvbnN0IEludFJlY3QmKQoreworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBSZW5kZXJU
aGVtZU5peDo6cGFpbnRNZWRpYVZvbHVtZVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNvbnN0
IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKQoreworICAgIHJldHVybiBmYWxzZTsKK30KKwor
Ym9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVJld2luZEJ1dHRvbihSZW5kZXJPYmplY3Qq
LCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0IEludFJlY3QmIHJlY3QpCit7CisgICAgdGhlbWVF
bmdpbmUoKS0+cGFpbnRNZWRpYVJld2luZEJ1dHRvbih3ZWJDYW52YXMoaSksIHRvTml4UmVjdChy
ZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorI2VuZGlmIC8vIEVOQUJMRShWSURFTykKKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXguaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9S
ZW5kZXJUaGVtZU5peC5oCmluZGV4IGY0MWQ1MDcwODZhZDk2MzA1ZjMxZDlhNmNiOTVmMmUzZmUx
NWQwZjcuLjYxZTVkMDM5ZmUwZmI2YzAwYjI1NDdiZWJjNTJhNzgyNTA3MWJkMTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5oCkBAIC0xLDUgKzEsNSBA
QAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMi0yMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9v
ciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqIENvcHlyaWdodCAoQykgMjAxMiwgMjAxMyBOb2tp
YSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKQEAgLTEwMyw2ICsxMDMsMjIgQEAgcHJvdGVjdGVkOgogICAgIHZp
cnR1YWwgYm9vbCBwYWludE1ldGVyKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNv
bnN0IEludFJlY3QmKSBPVkVSUklERTsKICNlbmRpZgogCisjaWYgRU5BQkxFKFZJREVPKQorICAg
IHZpcnR1YWwgU3RyaW5nIGV4dHJhTWVkaWFDb250cm9sc1N0eWxlU2hlZXQoKSBPVkVSUklERTsK
KyAgICB2aXJ0dWFsIGJvb2wgdXNlc1ZlcnRpY2FsVm9sdW1lU2xpZGVyKCkgY29uc3QgT1ZFUlJJ
REUgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgdXNlc01lZGlhQ29udHJvbFN0
YXR1c0Rpc3BsYXkoKSBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9CisgICAgdmlydHVhbCBib29s
IHVzZXNNZWRpYUNvbnRyb2xWb2x1bWVTbGlkZXIoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiBm
YWxzZTsgfQorCisgICAgdmlydHVhbCBib29sIHBhaW50TWVkaWFQbGF5QnV0dG9uKFJlbmRlck9i
amVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsKKyAgICB2
aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYU11dGVCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFp
bnRJbmZvJiwgY29uc3QgSW50UmVjdCYpIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBwYWlu
dE1lZGlhU2Vla0JhY2tCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29u
c3QgSW50UmVjdCYpIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhU2Vla0Zv
cndhcmRCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVj
dCYpIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhU2xpZGVyVHJhY2soUmVu
ZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpIE9WRVJSSURFOwor
ICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhVm9sdW1lU2xpZGVyQ29udGFpbmVyKFJlbmRlck9i
amVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsKKyAgICB2
aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYVZvbHVtZVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNv
bnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJv
b2wgcGFpbnRNZWRpYVJld2luZEJ1dHRvbihSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8m
LCBjb25zdCBJbnRSZWN0JikgT1ZFUlJJREU7CisjZW5kaWYKKwogICAgIHZpcnR1YWwgYm9vbCBw
YWludFNsaWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IElu
dFJlY3QmKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2xpZGVyVHJhY2tTdHls
ZShTdHlsZVJlc29sdmVyKiwgUmVuZGVyU3R5bGUqLCBFbGVtZW50KikgY29uc3QgT1ZFUlJJREU7
CiAKQEAgLTEyMyw2ICsxMzksNiBAQCBwcml2YXRlOgogICAgIFJlbmRlclRoZW1lTml4KCk7CiB9
OwogCi19Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBSZW5kZXJUaGVtZU5p
eF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHAKaW5k
ZXggOTAyMTcxMTRiNDU5MTZlOWM1NDYwODM5MWRmZDdjOTFhMmJiNTZiMS4uOTcwNzJkMTFmZDUw
ODJlMjZmMzZjNzk5ZWM3YmU4MWU1ZGQ5Zjg4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9TaW1wbGVMaW5lTGF5b3V0LmNwcApAQCAtOTAsNyArOTAsNyBAQCBzdGF0aWMgYm9vbCBj
YW5Vc2VGb3JUZXh0KGNvbnN0IFJlbmRlclRleHQmIHRleHRSZW5kZXJlciwgY29uc3QgU2ltcGxl
Rm9udERhdGEmCiAKIGJvb2wgY2FuVXNlRm9yKGNvbnN0IFJlbmRlckJsb2NrRmxvdyYgZmxvdykK
IHsKLSNpZiAhUExBVEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0oRUZM
KQorI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShHVEspICYmICFQTEFURk9STShFRkwp
ICYmICFQTEFURk9STShOSVgpCiAgICAgLy8gRklYTUU6IE5vbi1tYWMgcGxhdGZvcm1zIGFyZSBo
aXR0aW5nIEFTU0VSVChydW4uY2hhcmFjdGVyc0xlbmd0aCgpID49IHJ1bi5sZW5ndGgoKSkKICAg
ICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIzMzM4CiAgICAg
cmV0dXJuIGZhbHNlOwo=
</data>
<flag name="review"
          id="241721"
          type_id="1"
          status="+"
          setter="benjamin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218337</attachid>
            <date>2013-12-03 14:11:54 -0800</date>
            <delta_ts>2013-12-03 14:47:32 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-124981-20131203191152.patch</filename>
            <type>text/plain</type>
            <size>50033</size>
            <attacher name="Thiago de Barros Lacerda">thiago.lacerda</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwMDM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWZiYzQwZTkwMTVkMzEx
NWViMGY4ZDVmZDAxY2VmNDI4ZDdlODBhYS4uNWZjMmU5YmNjZjM3Y2M2ZDVmODMwNmE1MTUzZjQx
YjI0MzBiZTFkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEwNSBAQAorMjAxMy0xMi0wMyAgVGhp
YWdvIGRlIEJhcnJvcyBMYWNlcmRhICA8dGhpYWdvLmxhY2VyZGFAb3BlbmJvc3NhLm9yZz4KKwor
ICAgICAgICBOaXggVXBzdHJlYW06IFVwZGF0aW5nIFdlYkNvcmUgZmlsZXMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDk4MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IEJlbmphbWluIFBvdWxhaW4uCisKKyAgICAgICAgSnVzdCB0byBzeW5jIG91ciBn
aXRodWIgcmVwbyBmaWxlcyBhbmQgdGhlIHRydW5rLCBhcyBwYXJ0IG9mIHRoZSB1cHN0cmVhbSBw
cm9jZXNzCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIG5lZWRlZC4KKworICAgICAgICAqIFBsYXRm
b3JtTml4LmNtYWtlOgorICAgICAgICAqIGNzcy9tZWRpYUNvbnRyb2xzTml4LmNzczoKKyAgICAg
ICAgKGF1ZGlvKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzKToKKyAg
ICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSwgdmlkZW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtZW5jbG9zdXJlKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSk6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRp
YS1jb250cm9scy1wYW5lbCwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGFuZWwpOgor
ICAgICAgICAodmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEpOgorICAgICAgICAoYXVkaW86
LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEsIHZpZGVvOi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhKToK
KyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW11dGUtYnV0dG9uLCB2aWRl
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1tdXRlLWJ1dHRvbik6CisgICAgICAgIChhdWRpbzo6
LXdlYmtpdC1tZWRpYS1jb250cm9scy1vdmVybGF5LXBsYXktYnV0dG9uLCB2aWRlbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1vdmVybGF5LXBsYXktYnV0dG9uKToKKyAgICAgICAgKGF1ZGlvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXktYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1j
b250cm9scy1wbGF5LWJ1dHRvbik6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy10aW1lbGluZS1jb250YWluZXIsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRp
bWVsaW5lLWNvbnRhaW5lcik6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy10aW1lLXJlbWFpbmluZy1kaXNwbGF5LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10
aW1lLXJlbWFpbmluZy1kaXNwbGF5KToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLXRpbWVsaW5lLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZSk6
CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVyLCB2
aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVyKToKKyAgICAgICAgKGlu
cHV0W3R5cGU9InJhbmdlIl06Oi13ZWJraXQtbWVkaWEtc2xpZGVyLWNvbnRhaW5lcik6CisgICAg
ICAgIChpbnB1dFt0eXBlPSJyYW5nZSJdOjotd2Via2l0LW1lZGlhLXNsaWRlci1jb250YWluZXIg
PiBkaXYpOgorICAgICAgICAoaW5wdXRbdHlwZT0icmFuZ2UiXTo6LXdlYmtpdC1tZWRpYS1zbGlk
ZXItdGh1bWIpOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1i
YWNrLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1iYWNrLWJ1dHRv
bik6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1zZWVrLWZvcndhcmQt
YnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1zZWVrLWZvcndhcmQtYnV0dG9u
KToKKyAgICAgICAgKGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0
dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRvbik6Cisg
ICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10b2dnbGUtY2xvc2VkLWNhcHRp
b25zLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdG9nZ2xlLWNsb3NlZC1j
YXB0aW9ucy1idXR0b24pOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
ZnVsbHNjcmVlbi12b2x1bWUtc2xpZGVyLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1m
dWxsc2NyZWVuLXZvbHVtZS1zbGlkZXIpOgorICAgICAgICAoYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWluLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtbWluLWJ1dHRvbik6CisgICAgICAgIChhdWRp
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgtYnV0dG9uLCB2
aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgtYnV0dG9u
KToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyKToK
KyAgICAgICAgKHZpZGVvOjpjdWUpOgorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4
dC10cmFjay1yZWdpb24pOgorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFj
ay1yZWdpb24tY29udGFpbmVyKToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQt
dHJhY2stcmVnaW9uLWNvbnRhaW5lci5zY3JvbGxpbmcpOgorICAgICAgICAodmlkZW86Oi13ZWJr
aXQtbWVkaWEtdGV4dC10cmFjay1kaXNwbGF5KToKKyAgICAgICAgKHZpZGVvOjpjdWUoOmZ1dHVy
ZSkpOgorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIg
Yik6CisgICAgICAgICh2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciB1
KToKKyAgICAgICAgKHZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2stY29udGFpbmVyIGkp
OgorICAgICAgICAqIGVkaXRpbmcvRWRpdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6Y3V0KToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6Y29weSk6CisgICAgICAgIChXZWJD
b3JlOjpFZGl0b3I6OmNvcHlJbWFnZSk6CisgICAgICAgICogZWRpdGluZy9FZGl0b3IuaDoKKyAg
ICAgICAgKiBodG1sL0hUTUxDYW52YXNFbGVtZW50Lmg6CisgICAgICAgICogcGxhdGZvcm0vQ3Vy
c29yLmg6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vRkZURnJhbWUuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9hdWRpby9uaXgvQXVkaW9CdXNOaXguY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXVk
aW9CdXM6OmxvYWRQbGF0Zm9ybVJlc291cmNlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9HTENvbnRleHQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9uaXgvQ3Vyc29yTml4LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkN1cnNvcjo6ZW5zdXJlUGxhdGZvcm1DdXJzb3IpOgorICAgICAgICAq
IHBsYXRmb3JtL25peC9HYW1lcGFkc05peC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzYW1wbGVH
YW1lcGFkcyk6CisgICAgICAgICogcGxhdGZvcm0vbml4L1JlbmRlclRoZW1lTml4LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OnRvSW50U2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjp0b05peFJlY3Qp
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0aXZlU2VsZWN0
aW9uQmFja2dyb3VuZENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4Ojpw
bGF0Zm9ybUluYWN0aXZlU2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUFjdGl2ZVNlbGVjdGlvbkZvcmVncm91bmRDb2xv
cik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZVNl
bGVjdGlvbkZvcmVncm91bmRDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5p
eDo6cGxhdGZvcm1BY3RpdmVMaXN0Qm94U2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZlTGlzdEJveFNlbGVj
dGlvbkJhY2tncm91bmRDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6
cGxhdGZvcm1BY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZlTGlzdEJveFNlbGVjdGlv
bkZvcmVncm91bmRDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGxh
dGZvcm1BY3RpdmVUZXh0U2VhcmNoSGlnaGxpZ2h0Q29sb3IpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtSW5hY3RpdmVUZXh0U2VhcmNoSGlnaGxpZ2h0Q29sb3Ip
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtRm9jdXNSaW5nQ29s
b3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtVGFwSGlnaGxp
Z2h0Q29sb3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50QnV0dG9u
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludFRleHRGaWVsZCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRDaGVja2JveCk6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6c2V0Q2hlY2tib3hTaXplKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludFJhZGlvKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclRoZW1lTml4OjpzZXRSYWRpb1NpemUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhl
bWVOaXg6OnBhaW50TWVudUxpc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6
OnBhaW50UHJvZ3Jlc3NCYXIpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBh
aW50U2xpZGVyVHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50
U2xpZGVyVGh1bWIpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50SW5u
ZXJTcGluQnV0dG9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludE1l
dGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpleHRyYU1lZGlhQ29udHJv
bHNTdHlsZVNoZWV0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTml4OjpwYWludE1l
ZGlhUGxheUJ1dHRvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRN
ZWRpYU11dGVCdXR0b24pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50
TWVkaWFTZWVrQmFja0J1dHRvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6
cGFpbnRNZWRpYVNlZWtGb3J3YXJkQnV0dG9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRo
ZW1lTml4OjpwYWludE1lZGlhU2xpZGVyVHJhY2spOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VGhlbWVOaXg6OnBhaW50TWVkaWFWb2x1bWVTbGlkZXJDb250YWluZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyVGhlbWVOaXg6OnBhaW50TWVkaWFWb2x1bWVTbGlkZXJUcmFjayk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVJld2luZEJ1dHRvbik6Cisg
ICAgICAgICogcGxhdGZvcm0vbml4L1JlbmRlclRoZW1lTml4Lmg6CisgICAgICAgICogcmVuZGVy
aW5nL1NpbXBsZUxpbmVMYXlvdXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2ltcGxlTGluZUxh
eW91dDo6Y2FuVXNlRm9yKToKKwogMjAxMy0xMi0wMyAgU2FtdWVsIFdoaXRlICA8c2FtdWVsX3do
aXRlQGFwcGxlLmNvbT4KIAogICAgICAgICBBWFByZXNzIGV2ZW50IGNvb3JkaW5hdGVzIGFyZSBh
bHdheXMgc2VudCBhcyAoMCwgMCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3Jt
Tml4LmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1OaXguY21ha2UKaW5kZXggNjk5OTc4
MDVlNjBlMDM1NTA4MTc1MWQ4ODkwNWJiN2U5ZTc0YTUwYi4uMWQ1MjcwMGJkMzc4NzQ4NzhkYzE1
ZTZmNjM0MjVjOTFkNWI5Y2ZmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1O
aXguY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1OaXguY21ha2UKQEAgLTQsMjQg
KzQsMTYgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVTCiAgICAgIiR7
V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvIgogICAgICIke1dFQkNPUkVfRElS
fS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZSIKICAgICAiJHtXRUJDT1JFX0RJUn0vcGxhdGZv
cm0vZ3JhcGhpY3MvZ2x4IgotICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9o
YXJmYnV6ei8iCi0gICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL2hhcmZidXp6
L25nIgogICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFwaGljcy9uaXgiCiAgICAgIiR7
V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNzL29wZW5nbCIKICAgICAiJHtXRUJDT1JFX0RJ
Un0vcGxhdGZvcm0vZ3JhcGhpY3Mvb3BlbnR5cGUiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRm
b3JtL2dyYXBoaWNzL3N1cmZhY2VzIgotICAgICIke1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9ncmFw
aGljcy90ZXhtYXAiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2xpbnV4IgogICAgICIk
e1dFQkNPUkVfRElSfS9wbGF0Zm9ybS9tZWRpYXN0cmVhbS9nc3RyZWFtZXIiCiAgICAgIiR7UExB
VEZPUk1fRElSfS9uaXgvIgogKQogCiBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKLSAgICBj
c3MvV2ViS2l0Q1NTQXJyYXlGdW5jdGlvblZhbHVlLmNwcAotICAgIGNzcy9XZWJLaXRDU1NNYXRG
dW5jdGlvblZhbHVlLmNwcAotICAgIGNzcy9XZWJLaXRDU1NNYXRyaXguY3BwCi0gICAgY3NzL1dl
YktpdENTU01peEZ1bmN0aW9uVmFsdWUuY3BwCi0KICAgICBlZGl0aW5nL1NtYXJ0UmVwbGFjZUlD
VS5jcHAKIAogICAgIGVkaXRpbmcvbml4L0VkaXRvck5peC5jcHAKQEAgLTM1LDEyICsyNyw5IEBA
IGxpc3QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwogICAgIHBsYXRmb3JtL0NvbnRleHRNZW51SXRl
bU5vbmUuY3BwCiAgICAgcGxhdGZvcm0vQ29udGV4dE1lbnVOb25lLmNwcAogICAgIHBsYXRmb3Jt
L0N1cnNvci5jcHAKLSAgICBwbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcAotICAgIHBsYXRm
b3JtL1BsYXRmb3JtU3RyYXRlZ2llcy5jcHAKIAogICAgIHBsYXRmb3JtL2NhaXJvL1dpZGdldEJh
Y2tpbmdTdG9yZUNhaXJvLmNwcAogCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvSW1hZ2VTb3VyY2Uu
Y3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuY3BwCiAgICAgcGxhdGZvcm0v
Z3JhcGhpY3MvV09GRkZpbGVGb3JtYXQuY3BwCiAKQEAgLTY0LDkgKzUzLDYgQEAgbGlzdChBUFBF
TkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vVGlsZWRCYWNr
aW5nU3RvcmVCYWNrZW5kQ2Fpcm8uY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vVHJh
bnNmb3JtYXRpb25NYXRyaXhDYWlyby5jcHAKIAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL2ZpbHRl
cnMvQ3VzdG9tRmlsdGVyTWVzaEdlbmVyYXRvci5jcHAKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9m
aWx0ZXJzL0N1c3RvbUZpbHRlclZhbGlkYXRlZFByb2dyYW0uY3BwCi0KICAgICBwbGF0Zm9ybS9n
cmFwaGljcy9mcmVldHlwZS9Gb250Q2FjaGVGcmVlVHlwZS5jcHAKICAgICBwbGF0Zm9ybS9ncmFw
aGljcy9mcmVldHlwZS9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhRnJlZVR5cGUuY3BwCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udFBsYXRmb3JtRGF0YUZyZWVUeXBlLmNwcApAQCAt
OTMsMjQgKzc5LDggQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0v
Z3RrL0xvZ2dpbmdHdGsuY3BwCiAgICAgcGxhdGZvcm0vZ3RrL1NoYXJlZEJ1ZmZlckd0ay5jcHAK
IAotICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5jcHAKLQotICAgIHBs
YXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9CTVBJbWFnZURlY29kZXIuY3BwCi0gICAgcGxhdGZv
cm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUEltYWdlUmVhZGVyLmNwcAotCiAgICAgcGxhdGZvcm0v
aW1hZ2UtZGVjb2RlcnMvY2Fpcm8vSW1hZ2VEZWNvZGVyQ2Fpcm8uY3BwCiAKLSAgICBwbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmNwcAotICAgIHBsYXRmb3JtL2lt
YWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJlYWRlci5jcHAKLQotICAgIHBsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL2ljby9JQ09JbWFnZURlY29kZXIuY3BwCi0KLSAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuY3BwCi0KLSAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAotCi0gICAgcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvd2VicC9XRUJQSW1hZ2VEZWNvZGVyLmNwcAotCiAgICAgcGxhdGZvcm0vbGludXgvR2Ft
ZXBhZERldmljZUxpbnV4LmNwcAogCiAgICAgcGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKQEAg
LTEzOSwxNyArMTA5LDkgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCiAKICAgICBwbGF0
Zm9ybS90ZXh0L25peC9UZXh0QnJlYWtJdGVyYXRvckludGVybmFsSUNVTml4LmNwcAogCi0gICAg
cGx1Z2lucy9QbHVnaW5EYXRhYmFzZS5jcHAKLSAgICBwbHVnaW5zL1BsdWdpbkRlYnVnLmNwcAog
ICAgIHBsdWdpbnMvUGx1Z2luUGFja2FnZS5jcHAKICAgICBwbHVnaW5zL1BsdWdpblBhY2thZ2VO
b25lLmNwcAotICAgIHBsdWdpbnMvUGx1Z2luU3RyZWFtLmNwcAotICAgIHBsdWdpbnMvUGx1Z2lu
Vmlldy5jcHAKICAgICBwbHVnaW5zL1BsdWdpblZpZXdOb25lLmNwcAotCi0gICAgcmVuZGVyaW5n
L3N0eWxlL1N0eWxlQ2FjaGVkU2hhZGVyLmNwcAotICAgIHJlbmRlcmluZy9zdHlsZS9TdHlsZUN1
c3RvbUZpbHRlclByb2dyYW0uY3BwCi0gICAgcmVuZGVyaW5nL3N0eWxlL1N0eWxlQ3VzdG9tRmls
dGVyUHJvZ3JhbUNhY2hlLmNwcAogKQogCiBpZiAoV1RGX1VTRV9PUEVOR0xfRVNfMikKQEAgLTE4
Niw4ICsxNDgsOCBAQCBpZiAoV1RGX1VTRV9FR0wpCiAgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9M
SUJSQVJJRVMgJHtFR0xfTElCUkFSWX0pCiBlbHNlICgpCiAgICAgbGlzdChBUFBFTkQgV2ViQ29y
ZV9JTkNMVURFX0RJUkVDVE9SSUVTCi0gICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL3N1cmZhY2Vz
L2dseAogICAgICAgICBwbGF0Zm9ybS9ncmFwaGljcy9zdXJmYWNlcy9lZmwKKyAgICAgICAgcGxh
dGZvcm0vZ3JhcGhpY3Mvc3VyZmFjZXMvZ2x4CiAgICAgICAgICR7WDExX1gxMV9JTkNMVURFX1BB
VEh9CiAgICAgKQogICAgIGxpc3QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwpAQCAtMjI2LDcgKzE4
OCw3IEBAIGxpc3QoQVBQRU5EIFdlYkNvcmVfVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMKIGxpc3Qo
QVBQRU5EIFdlYkNvcmVfTElCUkFSSUVTCiAgICAgJHtDQUlST19MSUJSQVJJRVN9CiAgICAgJHtG
T05UQ09ORklHX0xJQlJBUklFU30KLSAgICAke0ZSRUVUWVBFX0xJQlJBUklFU30KKyAgICAke0ZS
RUVUWVBFMl9MSUJSQVJJRVN9CiAgICAgJHtHTElCX0dJT19MSUJSQVJJRVN9CiAgICAgJHtHTElC
X0dNT0RVTEVfTElCUkFSSUVTfQogICAgICR7R0xJQl9HT0JKRUNUX0xJQlJBUklFU30KQEAgLTI0
MiwxNSArMjA0LDE1IEBAIGxpc3QoQVBQRU5EIFdlYkNvcmVfTElCUkFSSUVTCiApCiAKIGxpc3Qo
QVBQRU5EIFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwotICAgICR7Rk9OVENPTkZJR19JTkNM
VURFX0RJUn0KICAgICAke0NBSVJPX0lOQ0xVREVfRElSU30KLSAgICAke0ZSRUVUWVBFX0lOQ0xV
REVfRElSU30KKyAgICAke0ZPTlRDT05GSUdfSU5DTFVERV9ESVJ9CisgICAgJHtGUkVFVFlQRTJf
SU5DTFVERV9ESVJTfQorICAgICR7R0xJQl9JTkNMVURFX0RJUlN9CisgICAgJHtIQVJGQlVaWl9J
TkNMVURFX0RJUlN9CiAgICAgJHtMSUJYTUwyX0lOQ0xVREVfRElSfQogICAgICR7TElCWFNMVF9J
TkNMVURFX0RJUn0KICAgICAke1NRTElURV9JTkNMVURFX0RJUn0KLSAgICAke0dMSUJfSU5DTFVE
RV9ESVJTfQogICAgICR7WkxJQl9JTkNMVURFX0RJUlN9Ci0gICAgJHtIQVJGQlVaWl9JTkNMVURF
X0RJUlN9CiApCiAKIGFkZF9kZWZpbml0aW9ucygtRERBVEFfRElSPSIke0NNQUtFX0lOU1RBTExf
UFJFRklYfS8ke0RBVEFfSU5TVEFMTF9ESVJ9IikKQEAgLTI4NCw2ICsyNDYsOCBAQCBpZiAoV1RG
X1VTRV9DVVJMKQogICAgICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ29va2llTm9kZS5jcHAK
ICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL0Nvb2tpZVN0b3JhZ2VDdXJsLmNwcAogICAg
ICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3JlZGVudGlhbFN0b3JhZ2VDdXJsLmNwcAorICAg
ICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENhY2hlRW50cnkuY3BwCisgICAgICAgIHBs
YXRmb3JtL25ldHdvcmsvY3VybC9DdXJsQ2FjaGVNYW5hZ2VyLmNwcAogICAgICAgICBwbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvRE5TQ3VybC5jcHAKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJs
L0Zvcm1EYXRhU3RyZWFtQ3VybC5jcHAKICAgICAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL011
bHRpcGFydEhhbmRsZS5jcHAKQEAgLTI5MSwxMiArMjU1LDE0IEBAIGlmIChXVEZfVVNFX0NVUkwp
CiAgICAgICAgIHBsYXRmb3JtL25ldHdvcmsvY3VybC9Qcm94eVNlcnZlckN1cmwuY3BwCiAgICAg
ICAgIHBsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmwuY3BwCiAgICAgICAg
IHBsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZU1hbmFnZXIuY3BwCisgICAgICAg
IHBsYXRmb3JtL25ldHdvcmsvY3VybC9TU0xIYW5kbGUuY3BwCiAgICAgICAgIHBsYXRmb3JtL25l
dHdvcmsvY3VybC9Tb2NrZXRTdHJlYW1IYW5kbGVDdXJsLmNwcAogICAgICAgICBwbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvU3luY2hyb25vdXNMb2FkZXJDbGllbnRDdXJsLmNwcAogICAgICkKIAogICAg
IGxpc3QoQVBQRU5EIFdlYkNvcmVfTElCUkFSSUVTCiAgICAgICAgICR7Q1VSTF9MSUJSQVJJRVN9
CisgICAgICAgICR7T1BFTlNTTF9MSUJSQVJJRVN9CiAgICAgKQogZWxzZSAoKQogICAgIGxpc3Qo
QVBQRU5EIFdlYkNvcmVfU09VUkNFUwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL21l
ZGlhQ29udHJvbHNOaXguY3NzIGIvU291cmNlL1dlYkNvcmUvY3NzL21lZGlhQ29udHJvbHNOaXgu
Y3NzCmluZGV4IGI1YjM2NjUyN2I3ZTA1ODE5NGM1NDE3MTVlZjU3ODhlZDAyNzc0OWIuLjA5NTY4
MGMyZTQ0NzQyYTVkNTJmMDRkYzZjYWRjY2U0ZjlmZjc2ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9tZWRpYUNvbnRyb2xzTml4LmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
bWVkaWFDb250cm9sc05peC5jc3MKQEAgLTEsNyArMSw3IEBACiAvKgotICogQ29weXJpZ2h0IChD
KSAyMDA5LCAyMDEwLCAyMDExIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTEgU2Ftc3VuZyBFbGVjdHJvbmljcwotICogQ29weXJpZ2h0IChDKSAy
MDEyLTIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgor
ICogQ29weXJpZ2h0IChDKSAyMDA5IEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMDkgR29vZ2xlIEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAxMiwg
MjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykuCiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI0LDEyNyArMjQsMjE4IEBACiAgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgogICovCiAKLS8qIE5peFdlYktpdCBtZWRpYSBjb250cm9scy4gRXh0ZW5kcyBtZWRp
YUNvbnRyb2xzLmNzcyAqLworLyogTml4IGRlZmF1bHQgbWVkaWEgY29udHJvbHMgKi8KIAogYXVk
aW8gewogICAgIHdpZHRoOiAzMDBweDsKLSAgICBoZWlnaHQ6IDIwcHg7CisgICAgaGVpZ2h0OiAz
MHB4OworfQorCithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scywKK3ZpZGVvOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzIHsKKyAgICB3aWR0aDogaW5oZXJpdDsKKyAgICBoZWlnaHQ6IGluaGVy
aXQ7CisgICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgIGRpcmVjdGlvbjogbHRyOworICAgIGRp
c3BsYXk6IGZsZXg7CisgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKKyAgICBqdXN0aWZ5LWNvbnRl
bnQ6IGZsZXgtZW5kOworICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7Cit9CisKK2F1ZGlvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLWVuY2xvc3VyZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtZW5jbG9zdXJlIHsKKyAgICB3aWR0aDogMTAwJTsKKyAgICBtYXgtd2lkdGg6IDgwMHB4Owor
ICAgIGhlaWdodDogMzBweDsKKyAgICBmbGV4LXNocmluazogMDsKKyAgICBib3R0b206IDA7Cisg
ICAgdGV4dC1pbmRlbnQ6IDA7CisgICAgcGFkZGluZzogMDsKKyAgICBib3gtc2l6aW5nOiBib3Jk
ZXItYm94OworfQorCit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1lbmNsb3N1cmUgewor
ICAgIHBhZGRpbmc6IDBweCA1cHggNXB4IDVweDsKKyAgICBoZWlnaHQ6IDM1cHg7CisgICAgZmxl
eC1zaHJpbms6IDA7CiB9CiAKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBhbmVsLCB2
aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wYW5lbCB7Ci0gICAgZGlzcGxheTogLXdlYmtp
dC1ib3g7Ci0gICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsOwotICAgIC13ZWJraXQt
Ym94LWFsaWduOiBjZW50ZXI7CisgICAgZGlzcGxheTogZmxleDsKKyAgICBmbGV4LWRpcmVjdGlv
bjogcm93OworICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CisgICAgLyogV2UgdXNlIGZsZXgtc3Rh
cnQgaGVyZSB0byBlbnN1cmUgdGhhdCB0aGUgcGxheSBidXR0b24gaXMgdmlzaWJsZSBldmVuCisg
ICAgICogaWYgd2UgYXJlIHRvbyBzbWFsbCB0byBzaG93IGFsbCBjb250cm9scy4KKyAgICAgKi8K
KyAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7CiAgICAgLXdlYmtpdC11c2VyLXNlbGVj
dDogbm9uZTsKICAgICBwb3NpdGlvbjogcmVsYXRpdmU7Ci0gICAgYm90dG9tOiAwOwogICAgIHdp
ZHRoOiAxMDAlOwogICAgIHotaW5kZXg6IDA7CiAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKLSAgICBo
ZWlnaHQ6IDIwcHg7CiAgICAgdGV4dC1hbGlnbjogcmlnaHQ7CisgICAgYm90dG9tOiBhdXRvOwor
ICAgIGhlaWdodDogMzBweDsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwLCAyMCwgMjAs
IDAuOCk7CisgICAgYm9yZGVyLXJhZGl1czogNXB4OworfQorCit2aWRlbzotd2Via2l0LWZ1bGwt
cGFnZS1tZWRpYSB7CisgICAgbWFyZ2luOiBhdXRvOworICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsK
KyAgICB0b3A6IDA7CisgICAgcmlnaHQ6IDA7CisgICAgYm90dG9tOiAwOworICAgIGxlZnQ6IDA7
CiB9CiAKK2F1ZGlvOi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhLCB2aWRlbzotd2Via2l0LWZ1bGwt
cGFnZS1tZWRpYSB7CisgICAgbWF4LWhlaWdodDogMTAwJTsKKyAgICBtYXgtd2lkdGg6IDEwMCU7
Cit9CisKK2F1ZGlvOi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLXBhbmVsLAogdmlkZW86LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWE6Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtcGFuZWwgewogICAgIGJvdHRvbTogMHB4OwogfQogCiBhdWRpbzo6LXdlYmtpdC1t
ZWRpYS1jb250cm9scy1tdXRlLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
bXV0ZS1idXR0b24gewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEtbXV0ZS1idXR0b247
Ci0gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7Ci0gICAgd2lkdGg6IDIwcHg7Ci0gICAgaGVpZ2h0
OiAyMHB4OwotICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKLSAgICB6LWluZGV4OiAyOworICAgIGRp
c3BsYXk6IGZsZXg7CisgICAgZmxleDogbm9uZTsKKyAgICBib3JkZXI6IG5vbmU7CisgICAgYm94
LXNpemluZzogYm9yZGVyLWJveDsKKyAgICB3aWR0aDogMzVweDsKKyAgICBoZWlnaHQ6IDMwcHg7
CisgICAgbGluZS1oZWlnaHQ6IDMwcHg7CisgICAgbWFyZ2luOiAwIDZweCAwIDA7CisgICAgcGFk
ZGluZzogMDsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOwotICAgIGJvcmRlcjogaW5p
dGlhbDsKICAgICBjb2xvcjogaW5oZXJpdDsKIH0KIAorYXVkaW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtb3ZlcmxheS1wbGF5LWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
b3ZlcmxheS1wbGF5LWJ1dHRvbiB7CisgICAgZGlzcGxheTogbm9uZTsKK30KKwogYXVkaW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtcGxheS1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLXBsYXktYnV0dG9uIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXBsYXkt
YnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIHdpZHRoOiAyMHB4OwotICAg
IGhlaWdodDogMjBweDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXg6IG5vbmU7CisgICAg
Ym9yZGVyOiBub25lOworICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDMw
cHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdp
bi1sZWZ0OiA5cHg7CisgICAgbWFyZ2luLXJpZ2h0OiA5cHg7CisgICAgcGFkZGluZzogMDsKICAg
ICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOwotICAgIGJvcmRlcjogaW5pdGlhbDsKICAgICBj
b2xvcjogaW5oZXJpdDsKIH0KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxp
bmUtY29udGFpbmVyLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZS1jb250
YWluZXIgewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEtY29udHJvbHMtYmFja2dyb3Vu
ZDsKLSAgICBkaXNwbGF5OiAtd2Via2l0LWJveDsKLSAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhv
cml6b250YWw7Ci0gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjsKLSAgICAtd2Via2l0LWJv
eC1wYWNrOiBlbmQ7Ci0gICAgLXdlYmtpdC1ib3gtZmxleDogMTsKKyAgICBkaXNwbGF5OiBmbGV4
OworICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7CisgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKKyAg
ICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOworICAgIGZsZXg6IDEgMTsKICAgICAtd2Via2l0
LXVzZXItc2VsZWN0OiBub25lOwotICAgIGhlaWdodDogMjBweDsKKyAgICBoZWlnaHQ6IDE2cHg7
CisgICAgbWluLXdpZHRoOiAwOwogfQogCi1hdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1j
dXJyZW50LXRpbWUtZGlzcGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVu
dC10aW1lLWRpc3BsYXkgeworYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtY3VycmVudC10
aW1lLWRpc3BsYXksIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWN1cnJlbnQtdGltZS1k
aXNwbGF5LAorYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlz
cGxheSwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZS1yZW1haW5pbmctZGlzcGxh
eSB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1jdXJyZW50LXRpbWUtZGlzcGxheTsK
ICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94
OwotICAgIGhlaWdodDogMjBweDsKKyAgICAtd2Via2l0LWZsZXg6IG5vbmU7CisgICAgZGlzcGxh
eTogLXdlYmtpdC1mbGV4OworICAgIGJvcmRlcjogbm9uZTsKKyAgICBjdXJzb3I6IGRlZmF1bHQ7
CiAKLSAgICBwYWRkaW5nOiA0cHg7CisgICAgaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbjogMCA5
cHggMCAwOworICAgIHBhZGRpbmc6IDA7CiAKLSAgICB0ZXh0LWFsaWduOiBjZW50ZXI7Ci0gICAg
Zm9udC1zaXplOiAxMHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIGZvbnQtZmFtaWx5
OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOworICAgIGZvbnQtc2l6ZTogMTNweDsKKyAg
ICBmb250LXdlaWdodDogYm9sZDsKKyAgICBmb250LXN0eWxlOiBub3JtYWw7CisgICAgY29sb3I6
IHdoaXRlOwogCi0gICAgY29sb3I6IGJsYWNrOwogICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7
CiAgICAgd29yZC1zcGFjaW5nOiBub3JtYWw7Ci0gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsKKyAg
ICB0ZXh0LWFsaWduOiBjZW50ZXIKICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsKICAgICB0ZXh0
LWluZGVudDogMDsKICAgICB0ZXh0LXNoYWRvdzogbm9uZTsKICAgICB0ZXh0LWRlY29yYXRpb246
IG5vbmU7Ci0gICAgZm9udC1zdHlsZTogbm9ybWFsOwotICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7
Ci0gICAgZm9udC1mYW1pbHk6IHNlcmlmOwotfQotCi1hdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy10aW1lLXJlbWFpbmluZy1kaXNwbGF5LCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy10aW1lLXJlbWFpbmluZy1kaXNwbGF5IHsKLSAgICBkaXNwbGF5OiBub25lOwogfQogCiBhdWRp
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZSwgdmlkZW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtdGltZWxpbmUgewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbWVkaWEtc2xpZGVy
OwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIC13ZWJraXQtYm94LWZsZXg6IDE7Ci0g
ICAgaGVpZ2h0OiAyMHB4OwotICAgIHBhZGRpbmc6IDBweCAycHg7Ci0gICAgYmFja2dyb3VuZC1j
b2xvcjogaW5pdGlhbDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXg6IDEgMSBhdXRvOwor
ICAgIGhlaWdodDogOHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsKKyAgICBwYWRkaW5nOiAw
OworICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOworICAgIG1pbi13aWR0aDogMjVweDsKICAg
ICBib3JkZXI6IGluaXRpYWw7CisgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgIGNvbG9yOiBp
bmhlcml0OwotICAgIG1hcmdpbjogaW5pdGlhbDsKLX0KLQotYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtdm9sdW1lLXNsaWRlci1jb250YWluZXIsIHZpZGVvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLXZvbHVtZS1zbGlkZXItY29udGFpbmVyIHsKLSAgICAtd2Via2l0LWFwcGVhcmFuY2U6
IG1lZGlhLXZvbHVtZS1zbGlkZXItY29udGFpbmVyOwotICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsK
LSAgICBoZWlnaHQ6IDEwMHB4OwotICAgIHdpZHRoOiAyMHB4OwotICAgIGJvdHRvbTogMjBweDsK
LSAgICB6LWluZGV4OiAxOwogfQogCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1
bWUtc2xpZGVyLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy12b2x1bWUtc2xpZGVyIHsK
ICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlhLXZvbHVtZS1zbGlkZXI7Ci0gICAgZGlzcGxh
eTogbm9uZTsKLSAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOworICAgIGRpc3BsYXk6IGZs
ZXg7CisgICAgLyogVGhlIDEuOSB2YWx1ZSB3YXMgZW1waXJpY2FsbHkgY2hvc2VuIHRvIG1hdGNo
IG9sZC1mbGV4Ym94IGJlaGF2aW91cgorICAgICAqIGFuZCBiZSBhZXN0aGV0aWNhbGx5IHBsZWFz
aW5nLgorICAgICAqLworICAgIGZsZXg6IDEgMS45IGF1dG87CisgICAgaGVpZ2h0OiA4cHg7Cisg
ICAgbWF4LXdpZHRoOiA3MHB4OworICAgIG1hcmdpbjogMCAxNXB4IDAgMDsKKyAgICBwYWRkaW5n
OiAwOworICAgIG1pbi13aWR0aDogMTVweDsKICAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29s
b3I6IGluaGVyaXQ7Ci0gICAgbWFyZ2luOiBpbml0aWFsOworICAgIGJhY2tncm91bmQtY29sb3I6
IGJsYWNrOworICAgIGJvcmRlci1yYWRpdXM6IDRweDsKK30KKworaW5wdXRbdHlwZT0icmFuZ2Ui
XTo6LXdlYmtpdC1tZWRpYS1zbGlkZXItY29udGFpbmVyIHsKKyAgICBkaXNwbGF5OiBmbGV4Owor
ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CisgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgLyogVGhp
cyBwcm9wZXJ0eSBpcyB1cGRhdGVkIGJ5IEMrKyBjb2RlLiAqLworICAgIGJveC1zaXppbmc6IGJv
cmRlci1ib3g7CisgICAgaGVpZ2h0OiAxMDAlOworICAgIHdpZHRoOiAxMDAlOworICAgIGJvcmRl
cjogMXB4IHNvbGlkIHJnYmEoMjMwLCAyMzAsIDIzMCwgMC4zNSk7CisgICAgYm9yZGVyLXJhZGl1
czogNHB4OworICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiBCYWNrZ3JvdW5k
IGRyYXdpbmcgaXMgbWFuYWdlZCBieSBDKysgY29kZSB0byBkcmF3IHJhbmdlcy4gKi8KK30KKwor
LyogVGhlIG5lZ2F0aXZlIHJpZ2h0IG1hcmdpbiBjYXVzZXMgdGhlIHRyYWNrIHRvIG92ZXJmbG93
IGl0cyBjb250YWluZXIuICovCitpbnB1dFt0eXBlPSJyYW5nZSJdOjotd2Via2l0LW1lZGlhLXNs
aWRlci1jb250YWluZXIgPiBkaXYgeworICAgIG1hcmdpbi1yaWdodDogLTE0cHg7Cit9CisKK2lu
cHV0W3R5cGU9InJhbmdlIl06Oi13ZWJraXQtbWVkaWEtc2xpZGVyLXRodW1iIHsKKyAgICBtYXJn
aW4tbGVmdDogLTdweDsKKyAgICBtYXJnaW4tcmlnaHQ6IC03cHg7CisgICAgYmFja2dyb3VuZC1j
b2xvcjogd2hpdGU7CisgICAgYm9yZGVyLXJhZGl1czogM3B4OwogfQogCiBhdWRpbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1zZWVrLWJhY2stYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1j
b250cm9scy1zZWVrLWJhY2stYnV0dG9uIHsKICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG1lZGlh
LXNlZWstYmFjay1idXR0b247Ci0gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7Ci0gICAgd2lkdGg6
IDIwcHg7Ci0gICAgaGVpZ2h0OiAyMHB4OworICAgIGRpc3BsYXk6IGZsZXg7CisgICAgd2lkdGg6
IDE2cHg7CisgICAgaGVpZ2h0OiAxNnB4OwogICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7
CiAgICAgYm9yZGVyOiBpbml0aWFsOwogICAgIGNvbG9yOiBpbmhlcml0OwpAQCAtMTUyLDIxICsy
NDMsMjcgQEAgYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2Vlay1iYWNrLWJ1dHRvbiwg
dmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtc2UKIAogYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtc2Vlay1mb3J3YXJkLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtc2Vlay1mb3J3YXJkLWJ1dHRvbiB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBtZWRpYS1z
ZWVrLWZvcndhcmQtYnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94OwotICAgIHdpZHRo
OiAyMHB4OwotICAgIGhlaWdodDogMjBweDsKKyAgICBkaXNwbGF5OiBmbGV4OworICAgIHdpZHRo
OiAxNnB4OworICAgIGhlaWdodDogMTZweDsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFs
OwogICAgIGJvcmRlcjogaW5pdGlhbDsKICAgICBjb2xvcjogaW5oZXJpdDsKIH0KIAogYXVkaW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24sIHZpZGVvOjotd2Via2l0
LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uIHsKLSAgICAtd2Via2l0LWFwcGVhcmFu
Y2U6IG1lZGlhLWZ1bGxzY3JlZW4tYnV0dG9uOwotICAgIGRpc3BsYXk6IC13ZWJraXQtYm94Owot
ICAgIHdpZHRoOiAyMHB4OwotICAgIGhlaWdodDogMjBweDsKKyAgICAtd2Via2l0LWFwcGVhcmFu
Y2U6IG1lZGlhLWVudGVyLWZ1bGxzY3JlZW4tYnV0dG9uOworICAgIGRpc3BsYXk6IGZsZXg7Cisg
ICAgZmxleDogbm9uZTsKKyAgICBib3JkZXI6IG5vbmU7CisgICAgYm94LXNpemluZzogYm9yZGVy
LWJveDsKKyAgICB3aWR0aDogMzBweDsKKyAgICBoZWlnaHQ6IDMwcHg7CisgICAgbGluZS1oZWln
aHQ6IDMwcHg7CisgICAgbWFyZ2luLWxlZnQ6IC01cHg7CisgICAgbWFyZ2luLXJpZ2h0OiA5cHg7
CisgICAgcGFkZGluZzogMDsKICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsOwotICAgIGJv
cmRlcjogaW5pdGlhbDsKICAgICBjb2xvcjogaW5oZXJpdDsKIH0KIApAQCAtMTg2LDExICsyODMs
MTcgQEAgYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcmV0dXJuLXRvLXJlYWx0aW1lLWJ1
dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY28KIAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtdG9nZ2xlLWNsb3NlZC1jYXB0aW9ucy1idXR0b24sIHZpZGVvOjotd2Via2l0LW1lZGlh
LWNvbnRyb2xzLXRvZ2dsZS1jbG9zZWQtY2FwdGlvbnMtYnV0dG9uIHsKICAgICAtd2Via2l0LWFw
cGVhcmFuY2U6IG1lZGlhLXRvZ2dsZS1jbG9zZWQtY2FwdGlvbnMtYnV0dG9uOwotICAgIGRpc3Bs
YXk6IC13ZWJraXQtYm94OwotICAgIHdpZHRoOiAyMHB4OwotICAgIGhlaWdodDogMjBweDsKKyAg
ICBkaXNwbGF5OiBmbGV4OworICAgIGZsZXg6IG5vbmU7CisgICAgYm9yZGVyOiBub25lOworICAg
IGJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgd2lkdGg6IDMwcHg7CisgICAgaGVpZ2h0OiAz
MHB4OworICAgIGxpbmUtaGVpZ2h0OiAzMHB4OworICAgIG1hcmdpbi1sZWZ0OiAtNXB4OworICAg
IG1hcmdpbi1yaWdodDogOXB4OworICAgIHBhZGRpbmc6IDA7CiAgICAgYmFja2dyb3VuZC1jb2xv
cjogaW5pdGlhbDsKLSAgICBib3JkZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9
CiAKQEAgLTIwMSwzICszMDQsOTIgQEAgYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdm9s
dW1lLXNsaWRlci1tdXRlLWJ1dHRvbiwgdmlkZW86Oi13ZWJraXQtbWVkaWEtY28KICAgICBib3Jk
ZXI6IGluaXRpYWw7CiAgICAgY29sb3I6IGluaGVyaXQ7CiB9CisKK2F1ZGlvOjotd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tdm9sdW1lLXNsaWRlciwgdmlkZW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtZnVsbHNjcmVlbi12b2x1bWUtc2xpZGVyIHsKKyAgICBkaXNwbGF5OiBub25l
OworfQorCithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1t
aW4tYnV0dG9uLCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVt
ZS1taW4tYnV0dG9uIHsKKyAgICBkaXNwbGF5OiBub25lOworfQorCithdWRpbzo6LXdlYmtpdC1t
ZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgtYnV0dG9uLCB2aWRlbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLXZvbHVtZS1tYXgtYnV0dG9uIHsKKyAgICBkaXNw
bGF5OiBub25lOworfQorCit2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5l
ciB7CisgICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgIHdpZHRoOiAxMDAlOworICAgIG92ZXJm
bG93OiBoaWRkZW47CisgICAgcGFkZGluZy1ib3R0b206IDVweDsKKworICAgIGZvbnQ6IDIycHgg
c2Fucy1zZXJpZjsKKyAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CisgICAgY29sb3I6IHJnYmEoMjU1
LCAyNTUsIDI1NSwgMSk7CisKKyAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsOworICAgIHdvcmQt
c3BhY2luZzogbm9ybWFsOworICAgIHRleHQtdHJhbnNmb3JtOiBub25lOworICAgIHRleHQtaW5k
ZW50OiAwOworICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKKyAgICBwb2ludGVyLWV2ZW50czog
bm9uZTsKKyAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOworICAgIHdvcmQtYnJlYWs6IGJy
ZWFrLXdvcmQ7CisKKyAgICBmbGV4OiAxIDE7Cit9CisKK3ZpZGVvOjpjdWUgeworICAgIGRpc3Bs
YXk6IGlubGluZTsKKworICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTsK
KyAgICBwYWRkaW5nOiAycHggMnB4OworfQorCit2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRy
YWNrLXJlZ2lvbiB7CisgICAgcG9zaXRpb246IGFic29sdXRlOworICAgIGxpbmUtaGVpZ2h0OiA1
LjMzdmg7CisgICAgd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLXRiOworICAgIGJhY2tncm91bmQ6
IHJnYmEoMCwgMCwgMCwgMC44KTsKKyAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTsK
KyAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7CisgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29y
ZDsKKyAgICBvdmVyZmxvdzogaGlkZGVuOworfQorCit2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0
LXRyYWNrLXJlZ2lvbi1jb250YWluZXIgeworICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKKworICAg
IGRpc3BsYXk6IGZsZXg7CisgICAgZmxleC1mbG93OiBjb2x1bW47CisgICAgZmxleC1kaXJlY3Rp
b246IGNvbHVtbjsKK30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1yZWdpb24t
Y29udGFpbmVyLnNjcm9sbGluZyB7CisgICAgdHJhbnNpdGlvbjogdG9wIDQzM21zIGxpbmVhcjsK
K30KKworCit2aWRlbzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWRpc3BsYXkgeworICAgIHBv
c2l0aW9uOiBhYnNvbHV0ZTsKKyAgICBvdmVyZmxvdzogaGlkZGVuOworICAgIHdoaXRlLXNwYWNl
OiBwcmUtd3JhcDsKKyAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CisgICAgZmxl
eDogMCAwIGF1dG87Cit9Cit2aWRlbzo6Y3VlKDpmdXR1cmUpIHsKKyAgICBjb2xvcjogZ3JheTsK
K30KKwordmlkZW86Oi13ZWJraXQtbWVkaWEtdGV4dC10cmFjay1jb250YWluZXIgYiB7CisgICAg
Zm9udC13ZWlnaHQ6IGJvbGQ7Cit9CisKK3ZpZGVvOjotd2Via2l0LW1lZGlhLXRleHQtdHJhY2st
Y29udGFpbmVyIHUgeworICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOworfQorCit2aWRl
bzo6LXdlYmtpdC1tZWRpYS10ZXh0LXRyYWNrLWNvbnRhaW5lciBpIHsKKyAgICBmb250LXN0eWxl
OiBpdGFsaWM7Cit9CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9y
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAppbmRleCA5MDZlODY2ZmEy
NTQ4OTNhODIyYmJiNjVkODI0MzFlYzZhMmQ2YzkyLi5iZmFmNDk2ODUyMjk4YWIzYzgwZTQ2MGNk
ZjEyN2JkNTFhZmEyMjQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRv
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCkBAIC00MzUsNyAr
NDM1LDcgQEAgU3RyaW5nIEVkaXRvcjo6cGxhaW5UZXh0RnJvbVBhc3RlYm9hcmQoY29uc3QgUGFz
dGVib2FyZFBsYWluVGV4dCYgdGV4dCkKIAogI2VuZGlmCiAKLSNpZiAhUExBVEZPUk0oTUFDKSAm
JiAhUExBVEZPUk0oRUZMKQorI2lmICFQTEFURk9STShNQUMpICYmICFQTEFURk9STShFRkwpICYm
ICFQTEFURk9STShOSVgpCiB2b2lkIEVkaXRvcjo6cGFzdGVXaXRoUGFzdGVib2FyZChQYXN0ZWJv
YXJkKiBwYXN0ZWJvYXJkLCBib29sIGFsbG93UGxhaW5UZXh0KQogewogICAgIFJlZlB0cjxSYW5n
ZT4gcmFuZ2UgPSBzZWxlY3RlZFJhbmdlKCk7CkBAIC0xMDYxLDcgKzEwNjEsNyBAQCB2b2lkIEVk
aXRvcjo6Y3V0KCkKICAgICAgICAgaWYgKGVuY2xvc2luZ1RleHRGb3JtQ29udHJvbChtX2ZyYW1l
LnNlbGVjdGlvbigpLnN0YXJ0KCkpKQogICAgICAgICAgICAgUGFzdGVib2FyZDo6Y3JlYXRlRm9y
Q29weUFuZFBhc3RlKCktPndyaXRlUGxhaW5UZXh0KHNlbGVjdGVkVGV4dEZvckNsaXBib2FyZCgp
LCBjYW5TbWFydENvcHlPckRlbGV0ZSgpID8gUGFzdGVib2FyZDo6Q2FuU21hcnRSZXBsYWNlIDog
UGFzdGVib2FyZDo6Q2Fubm90U21hcnRSZXBsYWNlKTsKICAgICAgICAgZWxzZSB7Ci0jaWYgUExB
VEZPUk0oTUFDKSB8fCBQTEFURk9STShFRkwpCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9S
TShFRkwpIHx8IFBMQVRGT1JNKE5JWCkKICAgICAgICAgICAgIHdyaXRlU2VsZWN0aW9uVG9QYXN0
ZWJvYXJkKCpQYXN0ZWJvYXJkOjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKSk7CiAjZWxzZQogICAg
ICAgICAgICAgLy8gRklYTUU6IENvbnZlcnQgYWxsIG90aGVyIHBsYXRmb3JtcyB0byBtYXRjaCBN
YWMgYW5kIGRlbGV0ZSB0aGlzLgpAQCAtMTA4OCwxMyArMTA4OCwxMyBAQCB2b2lkIEVkaXRvcjo6
Y29weSgpCiAgICAgICAgICAgICBjYW5TbWFydENvcHlPckRlbGV0ZSgpID8gUGFzdGVib2FyZDo6
Q2FuU21hcnRSZXBsYWNlIDogUGFzdGVib2FyZDo6Q2Fubm90U21hcnRSZXBsYWNlKTsKICAgICB9
IGVsc2UgewogICAgICAgICBpZiAoSFRNTEltYWdlRWxlbWVudCogaW1hZ2VFbGVtZW50ID0gaW1h
Z2VFbGVtZW50RnJvbUltYWdlRG9jdW1lbnQoZG9jdW1lbnQoKSkpIHsKLSNpZiAoUExBVEZPUk0o
TUFDKSAmJiAhUExBVEZPUk0oSU9TKSkgfHwgUExBVEZPUk0oRUZMKQorI2lmIChQTEFURk9STShN
QUMpICYmICFQTEFURk9STShJT1MpKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JNKE5JWCkK
ICAgICAgICAgICAgIHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoKlBhc3RlYm9hcmQ6OmNyZWF0ZUZv
ckNvcHlBbmRQYXN0ZSgpLCAqaW1hZ2VFbGVtZW50LCBkb2N1bWVudCgpLnVybCgpLCBkb2N1bWVu
dCgpLnRpdGxlKCkpOwogI2Vsc2UKICAgICAgICAgICAgIFBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNv
cHlBbmRQYXN0ZSgpLT53cml0ZUltYWdlKCppbWFnZUVsZW1lbnQsIGRvY3VtZW50KCkudXJsKCks
IGRvY3VtZW50KCkudGl0bGUoKSk7CiAjZW5kaWYKICAgICAgICAgfSBlbHNlIHsKLSNpZiAoUExB
VEZPUk0oTUFDKSAmJiAhUExBVEZPUk0oSU9TKSkgfHwgUExBVEZPUk0oRUZMKQorI2lmIChQTEFU
Rk9STShNQUMpICYmICFQTEFURk9STShJT1MpKSB8fCBQTEFURk9STShFRkwpIHx8IFBMQVRGT1JN
KE5JWCkKICAgICAgICAgICAgIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKCpQYXN0ZWJvYXJk
OjpjcmVhdGVGb3JDb3B5QW5kUGFzdGUoKSk7CiAjZWxzZQogICAgICAgICAgICAgLy8gRklYTUU6
IENvbnZlcnQgYWxsIG90aGVyIHBsYXRmb3JtcyB0byBtYXRjaCBNYWMgYW5kIGRlbGV0ZSB0aGlz
LgpAQCAtMTE5Nyw3ICsxMTk3LDcgQEAgdm9pZCBFZGl0b3I6OmNvcHlJbWFnZShjb25zdCBIaXRU
ZXN0UmVzdWx0JiByZXN1bHQpCiAgICAgaWYgKHVybC5pc0VtcHR5KCkpCiAgICAgICAgIHVybCA9
IHJlc3VsdC5hYnNvbHV0ZUltYWdlVVJMKCk7CiAKLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRG
T1JNKEVGTCkKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEVGTCkgfHwgUExBVEZPUk0o
TklYKQogICAgIHdyaXRlSW1hZ2VUb1Bhc3RlYm9hcmQoKlBhc3RlYm9hcmQ6OmNyZWF0ZUZvckNv
cHlBbmRQYXN0ZSgpLCAqZWxlbWVudCwgdXJsLCByZXN1bHQuYWx0RGlzcGxheVN0cmluZygpKTsK
ICNlbHNlCiAgICAgUGFzdGVib2FyZDo6Y3JlYXRlRm9yQ29weUFuZFBhc3RlKCktPndyaXRlSW1h
Z2UoKmVsZW1lbnQsIHVybCwgcmVzdWx0LmFsdERpc3BsYXlTdHJpbmcoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9FZGl0b3IuaAppbmRleCA5NzI3Mzg1ZTAwNDA4NWU2NTZiZWM4NGVlYWU0YjMxNTkzOWJlMTgx
Li5kOWJiNWM1OWViNTdiZmY2OWE5YjY1MTUzMmJjNDUyYmVhNjk1MTZiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRp
bmcvRWRpdG9yLmgKQEAgLTQwOSw3ICs0MDksNyBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0cjxE
b2N1bWVudEZyYWdtZW50PiB3ZWJDb250ZW50RnJvbVBhc3RlYm9hcmQoUGFzdGVib2FyZCYsIFJh
bmdlJiBjb250ZXh0LCBib29sIGFsbG93UGxhaW5UZXh0LCBib29sJiBjaG9zZVBsYWluVGV4dCk7
CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKQorI2lmIFBMQVRG
T1JNKE1BQykgfHwgUExBVEZPUk0oRUZMKSB8fCBQTEFURk9STShOSVgpCiAgICAgdm9pZCB3cml0
ZVNlbGVjdGlvblRvUGFzdGVib2FyZChQYXN0ZWJvYXJkJik7CiAgICAgdm9pZCB3cml0ZUltYWdl
VG9QYXN0ZWJvYXJkKFBhc3RlYm9hcmQmLCBFbGVtZW50JiBpbWFnZUVsZW1lbnQsIGNvbnN0IFVS
TCYsIGNvbnN0IFN0cmluZyYgdGl0bGUpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxDYW52YXNFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxD
YW52YXNFbGVtZW50LmgKaW5kZXggYzQyMWFlZWMwOTk5MWE2NTc5ZjY1ZmZkNDg4YmM1NDk5Zjk1
MjVhMy4uNmI1MDMxOTJmMmFhNWU0YzJmYjA2OWNjOGQ1YTQxOGQyZmQzY2FjMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQ2FudmFzRWxlbWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTENhbnZhc0VsZW1lbnQuaApAQCAtMzMsNyArMzMsNyBAQAogI2luY2x1
ZGUgIkludFNpemUuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogCi0jaWYgVVNFKENHKQor
I2lmIFVTRShDRykgfHwgUExBVEZPUk0oTklYKQogI2RlZmluZSBEZWZhdWx0SW50ZXJwb2xhdGlv
blF1YWxpdHkgSW50ZXJwb2xhdGlvbkxvdwogI2Vsc2UKICNkZWZpbmUgRGVmYXVsdEludGVycG9s
YXRpb25RdWFsaXR5IEludGVycG9sYXRpb25EZWZhdWx0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9DdXJzb3IuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0N1cnNvci5o
CmluZGV4IGYyMGZkZmFiNDhjMWExN2JlNjg4OGY2YzdmMGFhMjVlODU1N2RkZTYuLjMyY2RlZGRi
OGIzMmIxMTUxMTIxNDdiZDRmYzQ2MWIzM2YwMGNkYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL0N1cnNvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0N1cnNv
ci5oCkBAIC03Nyw4ICs3NywxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgdHlwZWRlZiBO
U0N1cnNvciAqUGxhdGZvcm1DdXJzb3I7CiAjZWxpZiBQTEFURk9STShHVEspCiAgICAgdHlwZWRl
ZiBHUmVmUHRyPEdka0N1cnNvcj4gUGxhdGZvcm1DdXJzb3I7Ci0jZWxpZiBQTEFURk9STShFRkwp
IHx8IFBMQVRGT1JNKE5JWCkKKyNlbGlmIFBMQVRGT1JNKEVGTCkKICAgICB0eXBlZGVmIGNvbnN0
IGNoYXIqIFBsYXRmb3JtQ3Vyc29yOworI2VsaWYgUExBVEZPUk0oTklYKQorICAgIHR5cGVkZWYg
dW5zaWduZWQgUGxhdGZvcm1DdXJzb3I7CiAjZWxpZiBQTEFURk9STShCTEFDS0JFUlJZKQogICAg
IHR5cGVkZWYgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkJsYWNrQmVycnlDdXJzb3IgUGxhdGZvcm1D
dXJzb3I7CiAjZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8v
RkZURnJhbWUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmgKaW5k
ZXggODk0OGY3YzkwNDQ0NTVkZGQ0MmQzM2RjMDFkZDEzZWEyZWVjZDY1ZS4uOTI0ZDQ3NDlhNTIw
OGY2NDA5YzYwOTE2OTMxYWJmMzljNmIwNTBjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vYXVkaW8vRkZURnJhbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9h
dWRpby9GRlRGcmFtZS5oCkBAIC0xODQsNyArMTg0LDYgQEAgcHJpdmF0ZToKICNlbmRpZiAvLyBV
U0UoV0VCQVVESU9fSVBQKQogCiAjaWYgUExBVEZPUk0oTklYKQotICAgIHZvaWQgc2NhbGVQbGFu
YXJEYXRhKGZsb2F0IHNjYWxlKTsKICAgICBPd25QdHI8Tml4OjpGRlRGcmFtZT4gbV9mZnRGcmFt
ZTsKICNlbmRpZiAvLyBQTEFURk9STShOSVgpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2F1ZGlvL25peC9BdWRpb0J1c05peC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9hdWRpby9uaXgvQXVkaW9CdXNOaXguY3BwCmluZGV4IDcyMTA5OTM1M2ExMTEyZjZmMmUx
MzY3YzVjNDQxYmZjOWY0NzU3YjkuLmE0Yjc2MTc0ZDdhNTcxNzE1NjdhOTFjZDgxOWY4NTkwNTAy
MGRiZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL25peC9BdWRp
b0J1c05peC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbml4L0F1ZGlv
QnVzTml4LmNwcApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIkF1ZGlvQnVzLmgiCiAKICNp
bmNsdWRlICJBdWRpb0ZpbGVSZWFkZXIuaCIKKyNpbmNsdWRlICJGaWxlU3lzdGVtLmgiCiAjaW5j
bHVkZSA8Y3N0ZGlvPgogI2luY2x1ZGUgPHB1YmxpYy9NdWx0aUNoYW5uZWxQQ01EYXRhLmg+CiAj
aW5jbHVkZSA8cHVibGljL1BsYXRmb3JtLmg+CkBAIC01Myw5ICs1NCwxMSBAQCBQYXNzUmVmUHRy
PEF1ZGlvQnVzPiBBdWRpb0J1czo6bG9hZFBsYXRmb3JtUmVzb3VyY2UoY29uc3QgY2hhciogbmFt
ZSwgZmxvYXQgc2FtcAogewogICAgIC8vIEZJWE1FOiBUaGlzIGFzc3VtZXMgdGhlIGZpbGUgc3lz
dGVtIHVzZXMgbGF0aW4xIG9yIFVURi04IGVuY29kaW5nLCBidXQgdGhpcyBjb21tZW50IGFsc28g
YXNzdW1lcwogICAgIC8vIHRoYXQgbm9uLWFzY2lpIGZpbGUgbmFtZXMgd291bGQgYXBwZWFyIGhl
cmUuCi0gICAgY29uc3QgQ1N0cmluZyBhYnNvbHV0ZUZpbGVuYW1lKG1ha2VTdHJpbmcoREFUQV9E
SVIsICIvd2ViYXVkaW8vcmVzb3VyY2VzLyIsIG5hbWUsICIud2F2IikudXRmOCgpKTsKKyAgICBD
U3RyaW5nIGFic29sdXRlRmlsZW5hbWUobWFrZVN0cmluZyhEQVRBX0RJUiwgIi93ZWJhdWRpby9y
ZXNvdXJjZXMvIiwgbmFtZSwgIi53YXYiKS51dGY4KCkpOwogICAgIHN0cnVjdCBzdGF0IHN0YXRE
YXRhOwogICAgIGlmICg6OnN0YXQoYWJzb2x1dGVGaWxlbmFtZS5kYXRhKCksICZzdGF0RGF0YSkg
PT0gLTEpCisgICAgICAgIGFic29sdXRlRmlsZW5hbWUgPSBtYWtlU3RyaW5nKFVOSU5TVEFMTEVE
X0FVRElPX1JFU09VUkNFU19ESVIsICIvIiwgbmFtZSwgIi53YXYiKS51dGY4KCk7CisgICAgaWYg
KDo6c3RhdChhYnNvbHV0ZUZpbGVuYW1lLmRhdGEoKSwgJnN0YXREYXRhKSA9PSAtMSkKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICBGSUxFKiBmaWxlID0gZm9wZW4oYWJzb2x1dGVGaWxl
bmFtZS5kYXRhKCksICJyYiIpOwpAQCAtNjQsNyArNjcsNyBAQCBQYXNzUmVmUHRyPEF1ZGlvQnVz
PiBBdWRpb0J1czo6bG9hZFBsYXRmb3JtUmVzb3VyY2UoY29uc3QgY2hhciogbmFtZSwgZmxvYXQg
c2FtcAogCiAgICAgV1RGOjpWZWN0b3I8Y2hhcj4gZmlsZUNvbnRlbnRzOwogICAgIGZpbGVDb250
ZW50cy5yZXNpemUoc3RhdERhdGEuc3Rfc2l6ZSk7Ci0gICAgc2l6ZV90IGJ5dGVzUmVhZCA9IGZy
ZWFkKCZmaWxlQ29udGVudHNbMF0sIGZpbGVDb250ZW50cy5zaXplKCksIDEsIGZpbGUpOworICAg
IHNpemVfdCBieXRlc1JlYWQgPSBmcmVhZCgmZmlsZUNvbnRlbnRzWzBdLCAxLCBmaWxlQ29udGVu
dHMuc2l6ZSgpLCBmaWxlKTsKICAgICBmY2xvc2UoZmlsZSk7CiAgICAgaWYgKGJ5dGVzUmVhZCA8
IGZpbGVDb250ZW50cy5zaXplKCkpCiAgICAgICAgIGZpbGVDb250ZW50cy5yZXNpemUoYnl0ZXNS
ZWFkKTsKQEAgLTg4LDMgKzkxLDQgQEAgUGFzc1JlZlB0cjxBdWRpb0J1cz4gY3JlYXRlQnVzRnJv
bUluTWVtb3J5QXVkaW9GaWxlKGNvbnN0IHZvaWQqIGRhdGEsIHNpemVfdCBkYXQKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVESU8pCisKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dMQ29udGV4dC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmgKaW5kZXggMDNiNTdiNWU4MjQ0
NDg4YTVmOWU2MjJmNzA2NDU5OGQ2MjhmNWYyMy4uNGU5ZDM5ZTMxNWRhOWE1ODJmM2JhMDBhZjNl
YmE0ZTZmNzFkMDc4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvR0xDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xD
b250ZXh0LmgKQEAgLTI1LDcgKzI1LDcgQEAKICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4K
ICNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgogCi0jaWYgVVNFKEVHTCkgJiYgIVBMQVRGT1JN
KEdUSykKKyNpZiBVU0UoRUdMKSAmJiAhUExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0oTklYKQog
I2luY2x1ZGUgImVnbHBsYXRmb3JtLmgiCiB0eXBlZGVmIEVHTE5hdGl2ZVdpbmRvd1R5cGUgR0xO
YXRpdmVXaW5kb3dUeXBlOwogI2Vsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25peC9DdXJzb3JOaXguY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L0N1cnNv
ck5peC5jcHAKaW5kZXggMTc3ZWYwY2NlM2JlOTdmZWFhZDQ4ZjY3ODcwNTU2ZGI4YTExNTJjNC4u
ZWI4NGI5YmNjMmM5MzkyYTFhM2NlMzYzYWRhODM2NzkzZTU0NTA0NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbml4L0N1cnNvck5peC5jcHAKQEAgLTYsNyArNiw3IEBACiAgKiBDb3B5cmln
aHQgKEMpIDIwMDggS2VubmV0aCBSb2hkZSBDaHJpc3RpYW5zZW4KICAqIENvcHlyaWdodCAoQykg
MjAwOS0yMDEwIFByb0ZVU0lPTiBlbWJlZGRlZCBzeXN0ZW1zCiAgKiBDb3B5cmlnaHQgKEMpIDIw
MDktMjAxMCBTYW1zdW5nIEVsZWN0cm9uaWNzCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgTm9raWEg
Q29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgorICogQ29weXJpZ2h0IChD
KSAyMDEyLCAyMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVz
KS4KICAqCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTM1LDggKzM1LDYgQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJDdXJzb3IuaCIKIAotI2luY2x1ZGUgIk5vdElt
cGxlbWVudGVkLmgiCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ3Vyc29yOjpDdXJzb3IoY29u
c3QgQ3Vyc29yJiBvdGhlcikKQEAgLTYwLDYxICs1OCwxMiBAQCBDdXJzb3ImIEN1cnNvcjo6b3Bl
cmF0b3I9KGNvbnN0IEN1cnNvciYgb3RoZXIpCiAgICAgcmV0dXJuICp0aGlzOwogfQogCi1zdGF0
aWMgY29uc3QgY2hhciogY3Vyc29yU3RyaW5nKEN1cnNvcjo6VHlwZSB0eXBlKQotewotICAgIHN0
YXRpYyBjb25zdCBjaGFyKiBjdXJzb3JTdHJpbmdzW10gPSB7Ci0gICAgICAgICJjdXJzb3IvcG9p
bnRlciIsCi0gICAgICAgICJjdXJzb3IvY3Jvc3MiLAotICAgICAgICAiY3Vyc29yL2hhbmQiLAot
ICAgICAgICAiY3Vyc29yL2lfYmVhbSIsCi0gICAgICAgICJjdXJzb3Ivd2FpdCIsCi0gICAgICAg
ICJjdXJzb3IvaGVscCIsCi0gICAgICAgICJjdXJzb3IvZWFzdF9yZXNpemUiLAotICAgICAgICAi
Y3Vyc29yL25vcnRoX3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfZWFzdF9yZXNpemUi
LAotICAgICAgICAiY3Vyc29yL25vcnRoX3dlc3RfcmVzaXplIiwKLSAgICAgICAgImN1cnNvci9z
b3V0aF9yZXNpemUiLAotICAgICAgICAiY3Vyc29yL3NvdXRoX2Vhc3RfcmVzaXplIiwKLSAgICAg
ICAgImN1cnNvci9zb3V0aF93ZXN0X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivd2VzdF9yZXNp
emUiLAotICAgICAgICAiY3Vyc29yL25vcnRoX3NvdXRoX3Jlc2l6ZSIsCi0gICAgICAgICJjdXJz
b3IvZWFzdF93ZXN0X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfZWFzdF9zb3V0aF93
ZXN0X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfd2VzdF9zb3V0aF9lYXN0X3Jlc2l6
ZSIsCi0gICAgICAgICJjdXJzb3IvY29sdW1uX3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3Ivcm93
X3Jlc2l6ZSIsCi0gICAgICAgICJjdXJzb3IvbWlkZGxlX3Bhbm5pbmciLAotICAgICAgICAiY3Vy
c29yL2Vhc3RfcGFubmluZyIsCi0gICAgICAgICJjdXJzb3Ivbm9ydGhfcGFubmluZyIsCi0gICAg
ICAgICJjdXJzb3Ivbm9ydGhfZWFzdF9wYW5uaW5nIiwKLSAgICAgICAgImN1cnNvci9ub3J0aF93
ZXN0X3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29yL3NvdXRoX3Bhbm5pbmciLAotICAgICAgICAi
Y3Vyc29yL3NvdXRoX2Vhc3RfcGFubmluZyIsCi0gICAgICAgICJjdXJzb3Ivc291dGhfd2VzdF9w
YW5uaW5nIiwKLSAgICAgICAgImN1cnNvci93ZXN0X3Bhbm5pbmciLAotICAgICAgICAiY3Vyc29y
L21vdmUiLAotICAgICAgICAiY3Vyc29yL3ZlcnRpY2FsX3RleHQiLAotICAgICAgICAiY3Vyc29y
L2NlbGwiLAotICAgICAgICAiY3Vyc29yL2NvbnRleHRfbWVudSIsCi0gICAgICAgICJjdXJzb3Iv
YWxpYXMiLAotICAgICAgICAiY3Vyc29yL3Byb2dyZXNzIiwKLSAgICAgICAgImN1cnNvci9ub19k
cm9wIiwKLSAgICAgICAgImN1cnNvci9jb3B5IiwKLSAgICAgICAgImN1cnNvci9ub25lIiwKLSAg
ICAgICAgImN1cnNvci9ub3RfYWxsb3dlZCIsCi0gICAgICAgICJjdXJzb3Ivem9vbV9pbiIsCi0g
ICAgICAgICJjdXJzb3Ivem9vbV9vdXQiLAotICAgICAgICAiY3Vyc29yL2dyYWIiLAotICAgICAg
ICAiY3Vyc29yL2dyYWJiaW5nIiwKLSAgICAgICAgIiJ9OyAvLyBGSVhNRTogSnVzdCByZXR1cm4g
IiIgZm9yIGN1c3RvbSB0eXBlLiBXZSBkb24ndCBzdXBwb3J0IGl0IG5vdy4KLSAgICByZXR1cm4g
Y3Vyc29yU3RyaW5nc1t0eXBlXTsKLX0KLQogdm9pZCBDdXJzb3I6OmVuc3VyZVBsYXRmb3JtQ3Vy
c29yKCkgY29uc3QKIHsKICAgICBpZiAobV9wbGF0Zm9ybUN1cnNvcikKICAgICAgICAgcmV0dXJu
OwotICAgIG1fcGxhdGZvcm1DdXJzb3IgPSBjdXJzb3JTdHJpbmcobV90eXBlKTsKKyAgICBtX3Bs
YXRmb3JtQ3Vyc29yID0gbV90eXBlOwogfQogCi19Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9HYW1lcGFkc05peC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvR2FtZXBhZHNOaXguY3BwCmluZGV4IDdjYmI4
YWQwMjVmOTU2YzI0YjcxMTFkMzg3ODYwYjhhMTY0MTI3MGIuLjE0MGE1YWE2MmY5NzcyYmM0MjAx
Yzg1MTg0YWM3OTBlZGFkY2JiZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25peC9HYW1lcGFkc05peC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L0dh
bWVwYWRzTml4LmNwcApAQCAtMSw1ICsxLDYgQEAKIC8qCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTEs
IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIs
IDIwMTMgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CkBAIC00Nyw3ICs0OCw3IEBAIHZv
aWQgc2FtcGxlR2FtZXBhZHMoR2FtZXBhZExpc3QqIGludG8pCiAgICAgICAgICAgICBSZWZQdHI8
R2FtZXBhZD4gZ2FtZXBhZCA9IGludG8tPml0ZW0oaSk7CiAgICAgICAgICAgICBpZiAoIWdhbWVw
YWQpCiAgICAgICAgICAgICAgICAgZ2FtZXBhZCA9IEdhbWVwYWQ6OmNyZWF0ZSgpOwotICAgICAg
ICAgICAgZ2FtZXBhZC0+aWQobml4R2FtZXBhZC5pZCk7CisgICAgICAgICAgICBnYW1lcGFkLT5p
ZChTdHJpbmc6OmZyb21VVEY4KG5peEdhbWVwYWQuaWQpKTsKICAgICAgICAgICAgIGdhbWVwYWQt
PmluZGV4KGkpOwogICAgICAgICAgICAgZ2FtZXBhZC0+dGltZXN0YW1wKG5peEdhbWVwYWQudGlt
ZXN0YW1wKTsKICAgICAgICAgICAgIGdhbWVwYWQtPmF4ZXMobml4R2FtZXBhZC5heGVzTGVuZ3Ro
LCBuaXhHYW1lcGFkLmF4ZXMpOwpAQCAtNTgsNiArNTksNyBAQCB2b2lkIHNhbXBsZUdhbWVwYWRz
KEdhbWVwYWRMaXN0KiBpbnRvKQogICAgIH0KIH0KIAotfQorfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQorCisjZW5kaWYgLy8gRU5BQkxFKEdBTUVQQUQpCiAKLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L1JlbmRlclRoZW1lTml4LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5jcHAKaW5kZXggODA4ZjAwYjkyMmZmZWU1
ZGQ5YWFiMzc4MzM2ZjA0MjZiMGMxM2U1ZC4uZWRiMzdiOWJhZWVmMWJlZmE3OGQ4MTQxZGU2MzU4
MzQ5MTc4M2E3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbml4L1JlbmRl
clRoZW1lTml4LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvUmVuZGVyVGhl
bWVOaXguY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMi0yMDEz
IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAqIENvcHly
aWdodCAoQykgMjAxMiwgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1YnNpZGlh
cnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTI2LDkgKzI2LDEx
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUmVuZGVyVGhlbWVOaXguaCIKIAor
I2luY2x1ZGUgIkhUTUxNZWRpYUVsZW1lbnQuaCIKICNpbmNsdWRlICJJbnB1dFR5cGVOYW1lcy5o
IgogI2luY2x1ZGUgIlBhaW50SW5mby5oIgogI2luY2x1ZGUgIlBsYXRmb3JtQ29udGV4dENhaXJv
LmgiCisjaW5jbHVkZSAiVXNlckFnZW50U3R5bGVTaGVldHMuaCIKICNpbmNsdWRlICJwdWJsaWMv
Q2FudmFzLmgiCiAjaW5jbHVkZSAicHVibGljL1BsYXRmb3JtLmgiCiAjaW5jbHVkZSAicHVibGlj
L1JlY3QuaCIKQEAgLTQzLDggKzQ1LDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1zdGF0
aWMgY29uc3QgdW5zaWduZWQgZGVmYXVsdEJ1dHRvbkJhY2tncm91bmRDb2xvciA9IDB4ZmZkZGRk
ZGQ7Ci0KIHN0YXRpYyB2b2lkIHNldFNpemVJZkF1dG8oUmVuZGVyU3R5bGUqIHN0eWxlLCBjb25z
dCBJbnRTaXplJiBzaXplKQogewogICAgIGlmIChzdHlsZS0+d2lkdGgoKS5pc0ludHJpbnNpY09y
QXV0bygpKQpAQCAtNTMsMTEgKzUzLDYgQEAgc3RhdGljIHZvaWQgc2V0U2l6ZUlmQXV0byhSZW5k
ZXJTdHlsZSogc3R5bGUsIGNvbnN0IEludFNpemUmIHNpemUpCiAgICAgICAgIHN0eWxlLT5zZXRI
ZWlnaHQoTGVuZ3RoKHNpemUuaGVpZ2h0KCksIEZpeGVkKSk7CiB9CiAKLUNvbG9yIHRvQ29sb3Io
Y29uc3QgTml4OjpDb2xvciYgY29sb3IpCi17Ci0gICAgcmV0dXJuIFdlYkNvcmU6OkNvbG9yKFJH
QkEzMihjb2xvcikpOwotfQotCiBzdGF0aWMgTml4OjpUaGVtZUVuZ2luZSogdGhlbWVFbmdpbmUo
KQogewogICAgIHJldHVybiBOaXg6OlBsYXRmb3JtOjpjdXJyZW50KCktPnRoZW1lRW5naW5lKCk7
CkBAIC02OCw2ICs2MywxNiBAQCBzdGF0aWMgTml4OjpDYW52YXMqIHdlYkNhbnZhcyhjb25zdCBQ
YWludEluZm8mIGluZm8pCiAgICAgcmV0dXJuIGluZm8uY29udGV4dC0+cGxhdGZvcm1Db250ZXh0
KCktPmNyKCk7CiB9CiAKK3N0YXRpYyBJbnRTaXplIHRvSW50U2l6ZShjb25zdCBOaXg6OlNpemUm
IHNpemUpCit7CisgICAgcmV0dXJuIEludFNpemUoc2l6ZS53aWR0aCwgc2l6ZS5oZWlnaHQpOwor
fQorCitzdGF0aWMgTml4OjpSZWN0IHRvTml4UmVjdChjb25zdCBJbnRSZWN0JiByZWN0KQorewor
ICAgIHJldHVybiBOaXg6OlJlY3QocmVjdC54KCksIHJlY3QueSgpLCByZWN0LndpZHRoKCksIHJl
Y3QuaGVpZ2h0KCkpOworfQorCiBQYXNzUmVmUHRyPFJlbmRlclRoZW1lPiBSZW5kZXJUaGVtZTo6
dGhlbWVGb3JQYWdlKFBhZ2UqKQogewogICAgIHJldHVybiBSZW5kZXJUaGVtZU5peDo6Y3JlYXRl
KCk7CkBAIC0xMDUsNjMgKzExMCw2MyBAQCBTdHJpbmcgUmVuZGVyVGhlbWVOaXg6OmV4dHJhUGx1
Z0luc1N0eWxlU2hlZXQoKQogCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVT
ZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKSBjb25zdAogewotICAgIHJldHVybiB0b0NvbG9yKHRo
ZW1lRW5naW5lKCktPmFjdGl2ZVNlbGVjdGlvbkJhY2tncm91bmRDb2xvcigpKTsKKyAgICByZXR1
cm4gdGhlbWVFbmdpbmUoKS0+YWN0aXZlU2VsZWN0aW9uQmFja2dyb3VuZENvbG9yKCkuYXJnYjMy
KCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0Zm9ybUluYWN0aXZlU2VsZWN0aW9u
QmFja2dyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2lu
ZSgpLT5pbmFjdGl2ZVNlbGVjdGlvbkJhY2tncm91bmRDb2xvcigpKTsKKyAgICByZXR1cm4gdGhl
bWVFbmdpbmUoKS0+aW5hY3RpdmVTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKS5hcmdiMzIoKTsK
IH0KIAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0aXZlU2VsZWN0aW9uRm9yZWdy
b3VuZENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5h
Y3RpdmVTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5l
KCktPmFjdGl2ZVNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xv
ciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1JbmFjdGl2ZVNlbGVjdGlvbkZvcmVncm91bmRDb2xv
cigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVT
ZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmlu
YWN0aXZlU2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJl
bmRlclRoZW1lTml4OjpwbGF0Zm9ybUFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29s
b3IoKSBjb25zdAogewotICAgIHJldHVybiB0b0NvbG9yKHRoZW1lRW5naW5lKCktPmFjdGl2ZUxp
c3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5l
KCktPmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKS5hcmdiMzIoKTsKIH0K
IAogQ29sb3IgUmVuZGVyVGhlbWVOaXg6OnBsYXRmb3JtSW5hY3RpdmVMaXN0Qm94U2VsZWN0aW9u
QmFja2dyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2lu
ZSgpLT5pbmFjdGl2ZUxpc3RCb3hTZWxlY3Rpb25CYWNrZ3JvdW5kQ29sb3IoKSk7CisgICAgcmV0
dXJuIHRoZW1lRW5naW5lKCktPmluYWN0aXZlTGlzdEJveFNlbGVjdGlvbkJhY2tncm91bmRDb2xv
cigpLmFyZ2IzMigpOwogfQogCiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1BY3RpdmVM
aXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9D
b2xvcih0aGVtZUVuZ2luZSgpLT5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9yZWdyb3VuZENvbG9y
KCkpOworICAgIHJldHVybiB0aGVtZUVuZ2luZSgpLT5hY3RpdmVMaXN0Qm94U2VsZWN0aW9uRm9y
ZWdyb3VuZENvbG9yKCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4OjpwbGF0
Zm9ybUluYWN0aXZlTGlzdEJveFNlbGVjdGlvbkZvcmVncm91bmRDb2xvcigpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVMaXN0Qm94U2VsZWN0aW9u
Rm9yZWdyb3VuZENvbG9yKCkpOworICAgIHJldHVybiB0aGVtZUVuZ2luZSgpLT5pbmFjdGl2ZUxp
c3RCb3hTZWxlY3Rpb25Gb3JlZ3JvdW5kQ29sb3IoKS5hcmdiMzIoKTsKIH0KIAogQ29sb3IgUmVu
ZGVyVGhlbWVOaXg6OnBsYXRmb3JtQWN0aXZlVGV4dFNlYXJjaEhpZ2hsaWdodENvbG9yKCkgY29u
c3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVtZUVuZ2luZSgpLT5hY3RpdmVUZXh0U2VhcmNo
SGlnaGxpZ2h0Q29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmFjdGl2ZVRleHRT
ZWFyY2hIaWdobGlnaHRDb2xvcigpLmFyZ2IzMigpOwogfQogCiBDb2xvciBSZW5kZXJUaGVtZU5p
eDo6cGxhdGZvcm1JbmFjdGl2ZVRleHRTZWFyY2hIaWdobGlnaHRDb2xvcigpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUoKS0+aW5hY3RpdmVUZXh0U2VhcmNoSGlnaGxp
Z2h0Q29sb3IoKSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPmluYWN0aXZlVGV4dFNlYXJj
aEhpZ2hsaWdodENvbG9yKCkuYXJnYjMyKCk7CiB9CiAKIENvbG9yIFJlbmRlclRoZW1lTml4Ojpw
bGF0Zm9ybUZvY3VzUmluZ0NvbG9yKCkgY29uc3QKIHsKLSAgICByZXR1cm4gdG9Db2xvcih0aGVt
ZUVuZ2luZSgpLT5mb2N1c1JpbmdDb2xvcigpKTsKKyAgICByZXR1cm4gdGhlbWVFbmdpbmUoKS0+
Zm9jdXNSaW5nQ29sb3IoKS5hcmdiMzIoKTsKIH0KIAogI2lmIEVOQUJMRShUT1VDSF9FVkVOVFMp
CiBDb2xvciBSZW5kZXJUaGVtZU5peDo6cGxhdGZvcm1UYXBIaWdobGlnaHRDb2xvcigpIGNvbnN0
CiB7Ci0gICAgcmV0dXJuIHRvQ29sb3IodGhlbWVFbmdpbmUoKS0+dGFwSGlnaGxpZ2h0Q29sb3Io
KSk7CisgICAgcmV0dXJuIHRoZW1lRW5naW5lKCktPnRhcEhpZ2hsaWdodENvbG9yKCkuYXJnYjMy
KCk7CiB9CiAjZW5kaWYKIApAQCAtMTg2LDExICsxOTEsNyBAQCBib29sIFJlbmRlclRoZW1lTml4
OjpwYWludEJ1dHRvbihSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3Qg
SW50UgogICAgIE5peDo6VGhlbWVFbmdpbmU6OkJ1dHRvbkV4dHJhUGFyYW1zIGV4dHJhUGFyYW1z
OwogICAgIGV4dHJhUGFyYW1zLmlzRGVmYXVsdCA9IGlzRGVmYXVsdChvKTsKICAgICBleHRyYVBh
cmFtcy5oYXNCb3JkZXIgPSB0cnVlOwotICAgIGV4dHJhUGFyYW1zLmJhY2tncm91bmRDb2xvciA9
IGRlZmF1bHRCdXR0b25CYWNrZ3JvdW5kQ29sb3I7Ci0gICAgaWYgKG8tPmhhc0JhY2tncm91bmQo
KSkKLSAgICAgICAgZXh0cmFQYXJhbXMuYmFja2dyb3VuZENvbG9yID0gby0+c3R5bGUoKS0+dmlz
aXRlZERlcGVuZGVudENvbG9yKENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yKS5yZ2IoKTsKLQot
ICAgIHRoZW1lRW5naW5lKCktPnBhaW50QnV0dG9uKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVT
dGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0KHJlY3QpLCBleHRyYVBhcmFtcyk7CisgICAgdGhlbWVF
bmdpbmUoKS0+cGFpbnRCdXR0b24od2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMs
IG8pLCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKICAgICByZXR1cm4gZmFsc2U7CiB9
CiAKQEAgLTE5OCwxMCArMTk5LDEwIEBAIGJvb2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50VGV4dEZp
ZWxkKFJlbmRlck9iamVjdCogbywgY29uc3QgUGFpbnRJbmZvJiBpLCBjb25zdCBJCiB7CiAgICAg
Ly8gV2ViVGhlbWVFbmdpbmUgZG9lcyBub3QgaGFuZGxlIGJvcmRlciByb3VuZGVkIGNvcm5lciBh
bmQgYmFja2dyb3VuZCBpbWFnZQogICAgIC8vIHNvIHJldHVybiB0cnVlIHRvIGRyYXcgQ1NTIGJv
cmRlciBhbmQgYmFja2dyb3VuZC4KLSAgICBpZiAoby0+c3R5bGUoKS0+aGFzQm9yZGVyUmFkaXVz
KCkgfHwgby0+c3R5bGUoKS0+aGFzQmFja2dyb3VuZEltYWdlKCkpCisgICAgaWYgKG8tPnN0eWxl
KCkuaGFzQm9yZGVyUmFkaXVzKCkgfHwgby0+c3R5bGUoKS5oYXNCYWNrZ3JvdW5kSW1hZ2UoKSkK
ICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludFRleHRGaWVs
ZCh3ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIE5peDo6UmVjdChyZWN0
KSk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRUZXh0RmllbGQod2ViQ2FudmFzKGkpLCBnZXRX
ZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVjdCkpOwogICAgIHJldHVybiBmYWxz
ZTsKIH0KIApAQCAtMjE2LDcgKzIxNyw3IEBAIGJvb2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50Q2hl
Y2tib3goUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0IEluCiAgICAg
ZXh0cmFQYXJhbXMuY2hlY2tlZCA9IGlzQ2hlY2tlZChvKTsKICAgICBleHRyYVBhcmFtcy5pbmRl
dGVybWluYXRlID0gaXNJbmRldGVybWluYXRlKG8pOwogCi0gICAgdGhlbWVFbmdpbmUoKS0+cGFp
bnRDaGVja2JveCh3ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIE5peDo6
UmVjdChyZWN0KSwgZXh0cmFQYXJhbXMpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50Q2hlY2ti
b3god2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJlY3QocmVj
dCksIGV4dHJhUGFyYW1zKTsKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKQEAgLTIyNiw3ICsyMjcs
NyBAQCB2b2lkIFJlbmRlclRoZW1lTml4OjpzZXRDaGVja2JveFNpemUoUmVuZGVyU3R5bGUqIHN0
eWxlKSBjb25zdAogICAgIGlmICghc3R5bGUtPndpZHRoKCkuaXNJbnRyaW5zaWNPckF1dG8oKSAm
JiAhc3R5bGUtPmhlaWdodCgpLmlzQXV0bygpKQogICAgICAgICByZXR1cm47CiAKLSAgICBJbnRT
aXplIHNpemUgPSB0aGVtZUVuZ2luZSgpLT5nZXRDaGVja2JveFNpemUoKTsKKyAgICBJbnRTaXpl
IHNpemUgPSB0b0ludFNpemUodGhlbWVFbmdpbmUoKS0+Z2V0Q2hlY2tib3hTaXplKCkpOwogICAg
IHNldFNpemVJZkF1dG8oc3R5bGUsIHNpemUpOwogfQogCkBAIC0yMzYsNyArMjM3LDcgQEAgYm9v
bCBSZW5kZXJUaGVtZU5peDo6cGFpbnRSYWRpbyhSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50
SW5mbyYgaSwgY29uc3QgSW50UmUKICAgICBleHRyYVBhcmFtcy5jaGVja2VkID0gaXNDaGVja2Vk
KG8pOwogICAgIGV4dHJhUGFyYW1zLmluZGV0ZXJtaW5hdGUgPSBpc0luZGV0ZXJtaW5hdGUobyk7
CiAKLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludFJhZGlvKHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhl
bWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0KHJlY3QpLCBleHRyYVBhcmFtcyk7CisgICAgdGhl
bWVFbmdpbmUoKS0+cGFpbnRSYWRpbyh3ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhp
cywgbyksIHRvTml4UmVjdChyZWN0KSwgZXh0cmFQYXJhbXMpOwogICAgIHJldHVybiBmYWxzZTsK
IH0KIApAQCAtMjQ2LDEzICsyNDcsMTMgQEAgdm9pZCBSZW5kZXJUaGVtZU5peDo6c2V0UmFkaW9T
aXplKFJlbmRlclN0eWxlKiBzdHlsZSkgY29uc3QKICAgICBpZiAoIXN0eWxlLT53aWR0aCgpLmlz
SW50cmluc2ljT3JBdXRvKCkgJiYgIXN0eWxlLT5oZWlnaHQoKS5pc0F1dG8oKSkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgSW50U2l6ZSBzaXplID0gdGhlbWVFbmdpbmUoKS0+Z2V0UmFkaW9TaXpl
KCk7CisgICAgSW50U2l6ZSBzaXplID0gdG9JbnRTaXplKHRoZW1lRW5naW5lKCktPmdldFJhZGlv
U2l6ZSgpKTsKICAgICBzZXRTaXplSWZBdXRvKHN0eWxlLCBzaXplKTsKIH0KIAogYm9vbCBSZW5k
ZXJUaGVtZU5peDo6cGFpbnRNZW51TGlzdChSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5m
byYgaSwgY29uc3QgSW50UmVjdCYgcmVjdCkKIHsKLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludE1l
bnVMaXN0KHdlYkNhbnZhcyhpKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgTml4OjpSZWN0
KHJlY3QpKTsKKyAgICB0aGVtZUVuZ2luZSgpLT5wYWludE1lbnVMaXN0KHdlYkNhbnZhcyhpKSwg
Z2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgdG9OaXhSZWN0KHJlY3QpKTsKICAgICByZXR1cm4g
ZmFsc2U7CiB9CiAKQEAgLTI4Niw3ICsyODcsNyBAQCBib29sIFJlbmRlclRoZW1lTml4OjpwYWlu
dFByb2dyZXNzQmFyKFJlbmRlck9iamVjdCogbywgY29uc3QgUGFpbnRJbmZvJiBpLCBjb25zdAog
ICAgIGV4dHJhUGFyYW1zLnBvc2l0aW9uID0gcmVuZGVyUHJvZ3Jlc3MtPnBvc2l0aW9uKCk7CiAg
ICAgZXh0cmFQYXJhbXMuYW5pbWF0aW9uUHJvZ3Jlc3MgPSByZW5kZXJQcm9ncmVzcy0+YW5pbWF0
aW9uUHJvZ3Jlc3MoKTsKICAgICBleHRyYVBhcmFtcy5hbmltYXRpb25TdGFydFRpbWUgPSByZW5k
ZXJQcm9ncmVzcy0+YW5pbWF0aW9uU3RhcnRUaW1lKCk7Ci0gICAgdGhlbWVFbmdpbmUoKS0+cGFp
bnRQcm9ncmVzc0Jhcih3ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyksIE5p
eDo6UmVjdChyZWN0KSwgZXh0cmFQYXJhbXMpOworICAgIHRoZW1lRW5naW5lKCktPnBhaW50UHJv
Z3Jlc3NCYXIod2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8pLCB0b05peFJl
Y3QocmVjdCksIGV4dHJhUGFyYW1zKTsKIAogICAgIHJldHVybiBmYWxzZTsKIH0KQEAgLTMwNCw3
ICszMDUsNyBAQCBkb3VibGUgUmVuZGVyVGhlbWVOaXg6OmFuaW1hdGlvbkR1cmF0aW9uRm9yUHJv
Z3Jlc3NCYXIoUmVuZGVyUHJvZ3Jlc3MqKSBjb25zdAogCiBib29sIFJlbmRlclRoZW1lTml4Ojpw
YWludFNsaWRlclRyYWNrKFJlbmRlck9iamVjdCogb2JqZWN0LCBjb25zdCBQYWludEluZm8mIGlu
Zm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCiB7Ci0gICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRTbGlk
ZXJUcmFjayh3ZWJDYW52YXMoaW5mbyksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgb2JqZWN0KSwg
cmVjdCk7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRTbGlkZXJUcmFjayh3ZWJDYW52YXMoaW5m
byksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgb2JqZWN0KSwgdG9OaXhSZWN0KHJlY3QpKTsKICNp
ZiBFTkFCTEUoREFUQUxJU1RfRUxFTUVOVCkKICAgICBwYWludFNsaWRlclRpY2tzKG9iamVjdCwg
aW5mbywgcmVjdCk7CiAjZW5kaWYKQEAgLTMxOCw3ICszMTksNyBAQCB2b2lkIFJlbmRlclRoZW1l
Tml4OjphZGp1c3RTbGlkZXJUcmFja1N0eWxlKFN0eWxlUmVzb2x2ZXIqLCBSZW5kZXJTdHlsZSog
c3R5bGUsCiAKIGJvb2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50U2xpZGVyVGh1bWIoUmVuZGVyT2Jq
ZWN0KiBvYmplY3QsIGNvbnN0IFBhaW50SW5mbyYgaW5mbywgY29uc3QgSW50UmVjdCYgcmVjdCkK
IHsKLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludFNsaWRlclRodW1iKHdlYkNhbnZhcyhpbmZvKSwg
Z2V0V2ViVGhlbWVTdGF0ZSh0aGlzLCBvYmplY3QpLCByZWN0KTsKKyAgICB0aGVtZUVuZ2luZSgp
LT5wYWludFNsaWRlclRodW1iKHdlYkNhbnZhcyhpbmZvKSwgZ2V0V2ViVGhlbWVTdGF0ZSh0aGlz
LCBvYmplY3QpLCB0b05peFJlY3QocmVjdCkpOwogCiAgICAgcmV0dXJuIGZhbHNlOwogfQpAQCAt
Mzg4LDcgKzM4OSw3IEBAIGJvb2wgUmVuZGVyVGhlbWVOaXg6OnBhaW50SW5uZXJTcGluQnV0dG9u
KFJlbmRlck9iamVjdCogbywgY29uc3QgUGFpbnRJbmZvJiBpLCBjCiAgICAgZXh0cmFQYXJhbXMu
c3BpblVwID0gaXNTcGluVXBCdXR0b25QYXJ0UHJlc3NlZChvKTsKICAgICBleHRyYVBhcmFtcy5y
ZWFkT25seSA9IGlzUmVhZE9ubHlDb250cm9sKG8pOwogCi0gICAgdGhlbWVFbmdpbmUoKS0+cGFp
bnRJbm5lclNwaW5CdXR0b24od2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8p
LCBOaXg6OlJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKKyAgICB0aGVtZUVuZ2luZSgpLT5wYWlu
dElubmVyU3BpbkJ1dHRvbih3ZWJDYW52YXMoaSksIGdldFdlYlRoZW1lU3RhdGUodGhpcywgbyks
IHRvTml4UmVjdChyZWN0KSwgZXh0cmFQYXJhbXMpOwogICAgIHJldHVybiBmYWxzZTsKIH0KIApA
QCAtNDMyLDEwICs0MzMsNjUgQEAgYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZXRlcihSZW5k
ZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3QgSW50UmUKICAgICBleHRyYVBh
cmFtcy5oaWdoID0gZS0+aGlnaCgpOwogICAgIGV4dHJhUGFyYW1zLm9wdGltdW0gPSBlLT5vcHRp
bXVtKCk7CiAKLSAgICB0aGVtZUVuZ2luZSgpLT5wYWludE1ldGVyKHdlYkNhbnZhcyhpKSwgZ2V0
V2ViVGhlbWVTdGF0ZSh0aGlzLCBvKSwgcmVjdCwgZXh0cmFQYXJhbXMpOworICAgIHRoZW1lRW5n
aW5lKCktPnBhaW50TWV0ZXIod2ViQ2FudmFzKGkpLCBnZXRXZWJUaGVtZVN0YXRlKHRoaXMsIG8p
LCB0b05peFJlY3QocmVjdCksIGV4dHJhUGFyYW1zKTsKIAogICAgIHJldHVybiBmYWxzZTsKIH0K
ICNlbmRpZgogCisjaWYgRU5BQkxFKFZJREVPKQorU3RyaW5nIFJlbmRlclRoZW1lTml4OjpleHRy
YU1lZGlhQ29udHJvbHNTdHlsZVNoZWV0KCkKK3sKKyAgICByZXR1cm4gU3RyaW5nKG1lZGlhQ29u
dHJvbHNOaXhVc2VyQWdlbnRTdHlsZVNoZWV0LCBzaXplb2YobWVkaWFDb250cm9sc05peFVzZXJB
Z2VudFN0eWxlU2hlZXQpKTsKK30KKworYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVBs
YXlCdXR0b24oUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0IEludFJl
Y3QmIHJlY3QpCit7CisgICAgYXV0byBzdGF0ZSA9IHRvSFRNTE1lZGlhRWxlbWVudChvLT5ub2Rl
KCktPnNoYWRvd0hvc3QoKSktPmNhblBsYXkoKSA/IE5peDo6VGhlbWVFbmdpbmU6OlN0YXRlUGF1
c2VkIDogTml4OjpUaGVtZUVuZ2luZTo6U3RhdGVQbGF5aW5nOworICAgIHRoZW1lRW5naW5lKCkt
PnBhaW50TWVkaWFQbGF5QnV0dG9uKHdlYkNhbnZhcyhpKSwgc3RhdGUsIHRvTml4UmVjdChyZWN0
KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1l
ZGlhTXV0ZUJ1dHRvbihSZW5kZXJPYmplY3QqIG8sIGNvbnN0IFBhaW50SW5mbyYgaSwgY29uc3Qg
SW50UmVjdCYgcmVjdCkKK3sKKyAgICBhdXRvIHN0YXRlID0gdG9IVE1MTWVkaWFFbGVtZW50KG8t
Pm5vZGUoKS0+c2hhZG93SG9zdCgpKS0+bXV0ZWQoKSA/IE5peDo6VGhlbWVFbmdpbmU6OlN0YXRl
TXV0ZWQgOiBOaXg6OlRoZW1lRW5naW5lOjpTdGF0ZU5vdE11dGVkOworICAgIHRoZW1lRW5naW5l
KCktPnBhaW50TWVkaWFNdXRlQnV0dG9uKHdlYkNhbnZhcyhpKSwgc3RhdGUsIHRvTml4UmVjdChy
ZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIFJlbmRlclRoZW1lTml4OjpwYWlu
dE1lZGlhU2Vla0JhY2tCdXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiBpLCBj
b25zdCBJbnRSZWN0JiByZWN0KQoreworICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWVkaWFTZWVr
QmFja0J1dHRvbih3ZWJDYW52YXMoaSksIHRvTml4UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZh
bHNlOworfQorCitib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhU2Vla0ZvcndhcmRCdXR0
b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiBpLCBjb25zdCBJbnRSZWN0JiByZWN0
KQoreworICAgIHRoZW1lRW5naW5lKCktPnBhaW50TWVkaWFTZWVrRm9yd2FyZEJ1dHRvbih3ZWJD
YW52YXMoaSksIHRvTml4UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOworfQorCitib29s
IFJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhU2xpZGVyVHJhY2soUmVuZGVyT2JqZWN0KiwgY29u
c3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpCit7CisgICAgcmV0dXJuIGZhbHNlOwogfQor
Citib29sIFJlbmRlclRoZW1lTml4OjpwYWludE1lZGlhVm9sdW1lU2xpZGVyQ29udGFpbmVyKFJl
bmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKQoreworICAgIHJl
dHVybiBmYWxzZTsKK30KKworYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRNZWRpYVZvbHVtZVNs
aWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3Qm
KQoreworICAgIHJldHVybiBmYWxzZTsKK30KKworYm9vbCBSZW5kZXJUaGVtZU5peDo6cGFpbnRN
ZWRpYVJld2luZEJ1dHRvbihSZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mIGksIGNvbnN0
IEludFJlY3QmIHJlY3QpCit7CisgICAgdGhlbWVFbmdpbmUoKS0+cGFpbnRNZWRpYVJld2luZEJ1
dHRvbih3ZWJDYW52YXMoaSksIHRvTml4UmVjdChyZWN0KSk7CisgICAgcmV0dXJuIGZhbHNlOwor
fQorI2VuZGlmIC8vIEVOQUJMRShWSURFTykKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uaXgvUmVuZGVyVGhlbWVOaXguaCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9SZW5kZXJUaGVtZU5peC5oCmluZGV4IGY0MWQ1
MDcwODZhZDk2MzA1ZjMxZDlhNmNiOTVmMmUzZmUxNWQwZjcuLjYxZTVkMDM5ZmUwZmI2YzAwYjI1
NDdiZWJjNTJhNzgyNTA3MWJkMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25peC9SZW5kZXJUaGVtZU5peC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25peC9S
ZW5kZXJUaGVtZU5peC5oCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
Mi0yMDEzIE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKS4KKyAq
IENvcHlyaWdodCAoQykgMjAxMiwgMjAxMyBOb2tpYSBDb3Jwb3JhdGlvbiBhbmQvb3IgaXRzIHN1
YnNpZGlhcnkoLWllcykuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTEwMyw2
ICsxMDMsMjIgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgYm9vbCBwYWludE1ldGVyKFJlbmRl
ck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsKICNl
bmRpZgogCisjaWYgRU5BQkxFKFZJREVPKQorICAgIHZpcnR1YWwgU3RyaW5nIGV4dHJhTWVkaWFD
b250cm9sc1N0eWxlU2hlZXQoKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgdXNlc1ZlcnRp
Y2FsVm9sdW1lU2xpZGVyKCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2
aXJ0dWFsIGJvb2wgdXNlc01lZGlhQ29udHJvbFN0YXR1c0Rpc3BsYXkoKSBPVkVSUklERSB7IHJl
dHVybiB0cnVlOyB9CisgICAgdmlydHVhbCBib29sIHVzZXNNZWRpYUNvbnRyb2xWb2x1bWVTbGlk
ZXIoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiBmYWxzZTsgfQorCisgICAgdmlydHVhbCBib29s
IHBhaW50TWVkaWFQbGF5QnV0dG9uKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNv
bnN0IEludFJlY3QmKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYU11dGVC
dXR0b24oUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpIE9W
RVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlhU2Vla0JhY2tCdXR0b24oUmVuZGVy
T2JqZWN0KiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpIE9WRVJSSURFOworICAg
IHZpcnR1YWwgYm9vbCBwYWludE1lZGlhU2Vla0ZvcndhcmRCdXR0b24oUmVuZGVyT2JqZWN0Kiwg
Y29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpIE9WRVJSSURFOworICAgIHZpcnR1YWwg
Ym9vbCBwYWludE1lZGlhU2xpZGVyVHJhY2soUmVuZGVyT2JqZWN0KiwgY29uc3QgUGFpbnRJbmZv
JiwgY29uc3QgSW50UmVjdCYpIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBwYWludE1lZGlh
Vm9sdW1lU2xpZGVyQ29udGFpbmVyKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNv
bnN0IEludFJlY3QmKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYVZvbHVt
ZVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJl
Y3QmKSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIGJvb2wgcGFpbnRNZWRpYVJld2luZEJ1dHRvbihS
ZW5kZXJPYmplY3QqLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0JikgT1ZFUlJJREU7
CisjZW5kaWYKKwogICAgIHZpcnR1YWwgYm9vbCBwYWludFNsaWRlclRyYWNrKFJlbmRlck9iamVj
dCosIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSBPVkVSUklERTsKICAgICB2aXJ0
dWFsIHZvaWQgYWRqdXN0U2xpZGVyVHJhY2tTdHlsZShTdHlsZVJlc29sdmVyKiwgUmVuZGVyU3R5
bGUqLCBFbGVtZW50KikgY29uc3QgT1ZFUlJJREU7CiAKQEAgLTEyMyw2ICsxMzksNiBAQCBwcml2
YXRlOgogICAgIFJlbmRlclRoZW1lTml4KCk7CiB9OwogCi19Cit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCiAKICNlbmRpZiAvLyBSZW5kZXJUaGVtZU5peF9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHAKaW5kZXggOTAyMTcxMTRiNDU5MTZlOWM1NDYwODM5
MWRmZDdjOTFhMmJiNTZiMS4uOTcwNzJkMTFmZDUwODJlMjZmMzZjNzk5ZWM3YmU4MWU1ZGQ5Zjg4
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxpbmVMYXlvdXQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9TaW1wbGVMaW5lTGF5b3V0LmNwcApA
QCAtOTAsNyArOTAsNyBAQCBzdGF0aWMgYm9vbCBjYW5Vc2VGb3JUZXh0KGNvbnN0IFJlbmRlclRl
eHQmIHRleHRSZW5kZXJlciwgY29uc3QgU2ltcGxlRm9udERhdGEmCiAKIGJvb2wgY2FuVXNlRm9y
KGNvbnN0IFJlbmRlckJsb2NrRmxvdyYgZmxvdykKIHsKLSNpZiAhUExBVEZPUk0oTUFDKSAmJiAh
UExBVEZPUk0oR1RLKSAmJiAhUExBVEZPUk0oRUZMKQorI2lmICFQTEFURk9STShNQUMpICYmICFQ
TEFURk9STShHVEspICYmICFQTEFURk9STShFRkwpICYmICFQTEFURk9STShOSVgpCiAgICAgLy8g
RklYTUU6IE5vbi1tYWMgcGxhdGZvcm1zIGFyZSBoaXR0aW5nIEFTU0VSVChydW4uY2hhcmFjdGVy
c0xlbmd0aCgpID49IHJ1bi5sZW5ndGgoKSkKICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTIzMzM4CiAgICAgcmV0dXJuIGZhbHNlOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>