<?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>237602</bug_id>
          
          <creation_ts>2022-03-08 06:18:09 -0800</creation_ts>
          <short_desc>[GStreamer] clarify playback errors with MediaError.message</short_desc>
          <delta_ts>2022-03-15 08:25:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Enrique Ocaña">eocanha</reporter>
          <assigned_to name="Enrique Ocaña">eocanha</assigned_to>
          <cc>pnormand</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1849228</commentid>
    <comment_count>0</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-08 06:18:09 -0800</bug_when>
    <thetext>It would be interesting to expose the internal GStreamer playback errors to the upper layer using the MediaError.message API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1849364</commentid>
    <comment_count>1</comment_count>
      <attachid>454143</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-08 12:34:41 -0800</bug_when>
    <thetext>Created attachment 454143
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1849644</commentid>
    <comment_count>2</comment_count>
      <attachid>454229</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-09 04:59:49 -0800</bug_when>
    <thetext>Created attachment 454229
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850077</commentid>
    <comment_count>3</comment_count>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-10 06:38:17 -0800</bug_when>
    <thetext>This patch seems to cause important regressions related to MSE on Mac:

Regressions: Unexpected image-only failures (1)
  compositing/iframes/border-uneven-radius-composited-frame.html [ ImageOnlyFailure ]
Regressions: Unexpected timeouts (14)
  fast/canvas/webgl/texImage2D-mse-flipY-false.html [ Timeout ]
  fast/canvas/webgl/texImage2D-mse-flipY-true.html [ Timeout ]
  fast/history/page-cache-media-source-closed-2.html [ Timeout ]
  fast/history/page-cache-removed-source-buffer.html [ Timeout ]
  http/tests/appcache/top-frame-1.html [ Timeout ]
  http/tests/media/media-source/mediasource-play-then-seek-back-with-remote-control.html [ Timeout ]
  http/tests/media/media-source/mediasource-rvfc.html [ Timeout ]
  http/tests/resourceLoadStatistics/prevalent-resource-unhandled-keydown.html [ Timeout ]
  http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials.https.html [ Timeout ]
  imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/flex-sizing-rows-min-max-height-001.html [ Timeout ]
  imported/w3c/web-platform-tests/css/css-overflow/scrollable-overflow-transform-dynamic-006.html [ Timeout ]
  imported/w3c/web-platform-tests/css/css-shadow-parts/chaining-invalid-selector.html [ Timeout ]
  imported/w3c/web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/javascript-url-query-fragment-components.html [ Timeout ]
  imported/w3c/web-platform-tests/html/browsers/history/the-history-interface/combination_history_006.html [ Timeout ]
Regressions: Unexpected text-only failures (15)
  fast/scrolling/mac/adjust-scroll-snap-during-gesture.html [ Failure ]
  http/tests/media/modern-media-controls/macos-fullscreen-media-controls/macos-fullscreen-media-controls-live-broadcast.html [ Failure ]
  http/wpt/fetch/response-opaque-clone.html [ Failure ]
  imported/w3c/web-platform-tests/html/cross-origin-opener-policy/iframe-popup-same-origin-allow-popups-to-unsafe-none.https.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-activesourcebuffers.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-addsourcebuffer-mode.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-appendwindow.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-attach-stops-delaying-load-event.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-avtracks.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-buffered-seek.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-buffered.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-changetype.html [ Failure ]
  imported/w3c/web-platform-tests/media-source/mediasource-closed.html [ Failure ]
  imported/w3c/web-platform-tests/service-workers/service-worker/fetch-request-no-freshness-headers.https.html [ Failure ]
  imported/w3c/web-platform-tests/webstorage/event_case_sensitive.html [ Failure ]

Unfortunately, I don&apos;t access to a working Mac build now to debug the cause, but I suspect it may be strongly related to the player private selection changes in MediaPlayer::networkStateChanged(). I&apos;ll try to prove it by submitting several temporary patches and see how EWS behaves.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850080</commentid>
    <comment_count>4</comment_count>
      <attachid>454358</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-10 06:43:50 -0800</bug_when>
    <thetext>Created attachment 454358
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850479</commentid>
    <comment_count>5</comment_count>
      <attachid>454479</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-11 06:20:11 -0800</bug_when>
    <thetext>Created attachment 454479
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850681</commentid>
    <comment_count>6</comment_count>
      <attachid>454479</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2022-03-12 02:12:02 -0800</bug_when>
    <thetext>Comment on attachment 454479
Patch

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

&gt; Source/WebCore/html/HTMLMediaElement.cpp:2218
&gt; +    const auto getErrorMessage = [&amp;] (String &amp;&amp;defaultMessage) {

String&amp;&amp; defaultMessage

&gt; Source/WebCore/html/HTMLMediaElement.cpp:2220
&gt; +        if (m_player &amp;&amp; !m_player-&gt;lastErrorMessage().isEmpty()) {

if (!m_player)
    return message;

auto lastErrorMessage = m_player-&gt;lastErrorMessage();
if (!lastErrorMessage)
    return message;

return makeString(message, &quot;: &quot;, lastErrorMessage);

&gt; Source/WebCore/platform/graphics/MediaPlayer.cpp:1918
&gt; +    return m_lastErrorMessage;

Maybe we directly chain to the private player? return m_private-&gt;errorMessage(); ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850829</commentid>
    <comment_count>7</comment_count>
      <attachid>454479</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-14 04:11:05 -0700</bug_when>
    <thetext>Comment on attachment 454479
Patch

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

&gt; Source/WebCore/html/HTMLMediaElement.cpp:2221
&gt; +            message.append(&quot;: &quot;);

Thanks!

&gt;&gt; Source/WebCore/platform/graphics/MediaPlayer.cpp:1918
&gt;&gt; +    return m_lastErrorMessage;
&gt; 
&gt; Maybe we directly chain to the private player? return m_private-&gt;errorMessage(); ?

No. Caching the result is a key piece of the patch. Line 1337...

  if (!m_activeEngineIdentifier &amp;&amp; installedMediaEngines().size() &gt; 1 &amp;&amp; (m_contentType.isEmpty() || nextBestMediaEngine(m_currentMediaEngine))) {
      m_reloadTimer.startOneShot(0_s);

...reloads the player private in case of error, so the error isn&apos;t there when the upper layer tries to ask for it (assuming the chaining you suggest).

That was waht the original version of the patch https://bugs.webkit.org/attachment.cgi?id=454143&amp;action=prettypatch did, but for that to &quot;work&quot;, the code that regenerates the player private (line 1337) had to be changed so the old player private remained alive. While this worked fine in WebKitGTK, it caused a lot of regressions on Mac ports. I had to use this new approach of caching the player private error in the player and keep the original code to regenerate the player private in order to avoid the regressions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1850840</commentid>
    <comment_count>8</comment_count>
      <attachid>454583</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-14 05:33:43 -0700</bug_when>
    <thetext>Created attachment 454583
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851233</commentid>
    <comment_count>9</comment_count>
      <attachid>454583</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-15 04:43:39 -0700</bug_when>
    <thetext>Comment on attachment 454583
Patch

Landing the patch, as the editing/spelling/spellcheck-api-crash.html failure in the iOS-15-Simulator-WK2-Tests-EWS bot is unrelated to multimedia stuff.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851234</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-15 04:44:44 -0700</bug_when>
    <thetext>Tools/Scripts/svn-apply failed to apply attachment 454583 to trunk.
Please resolve the conflicts and upload a new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851247</commentid>
    <comment_count>11</comment_count>
      <attachid>454697</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-15 06:07:00 -0700</bug_when>
    <thetext>Created attachment 454697
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851249</commentid>
    <comment_count>12</comment_count>
      <attachid>454698</attachid>
    <who name="Enrique Ocaña">eocanha</who>
    <bug_when>2022-03-15 06:08:58 -0700</bug_when>
    <thetext>Created attachment 454698
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851302</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-03-15 08:24:22 -0700</bug_when>
    <thetext>Committed r291290 (248429@main): &lt;https://commits.webkit.org/248429@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 454698.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851303</commentid>
    <comment_count>14</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-15 08:25:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/90306817&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454143</attachid>
            <date>2022-03-08 12:34:41 -0800</date>
            <delta_ts>2022-03-09 04:59:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237602-20220308213440.patch</filename>
            <type>text/plain</type>
            <size>12893</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwODgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTU5MjBmZjdkZWZhZjkx
ODYwODZhYTViN2I0ODg4Yzk1NjNmNWM1Mi4uMWQ3ZjBlN2YwNThlODgxNDRmMTFjNzhmZDBjY2Y4
NzgzNzYyNWY4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTA4ICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl0gY2xhcmlmeSBwbGF5YmFjayBlcnJvcnMgd2l0aCBNZWRpYUVycm9yLm1lc3NhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzYwMgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggaXMgYXV0aG9yZWQgYnkgRXVnZW5lIE11dGF2Y2hpIDxJZXZnZW5fTXV0YXZjaGlAY29tY2Fz
dC5jb20+CisgICAgICAgIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL1dlYlBsYXRmb3JtRm9yRW1i
ZWRkZWQvV1BFV2ViS2l0L3B1bGwvNzk3CisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwOiBVc2UgaW50ZXJuYWwgZXJyb3IgbWVzc2FnZSBmcm9tIHRoZSBwbGF5ZXIgcHJpdmF0
ZSwgaWYgYXZhaWxhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmNwcDogQXZvaWQgcmVsb2FkaW5nIHRoZSBwbGF5ZXIgaW4gY2FzZSBvZiBlcnJvciBpbiBuZXR3
b3JrU3RhdGVDaGFuZ2VkKCkgaW4gb3JkZXIgdG8gcHJlc2VydmUgdGhlIGxhc3QgZXJyb3IgbWVz
c2FnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oOiBBZGRlZCBl
cnJvck1lc3NhZ2UoKSBtZXRob2QgdG8gZ2V0IHRoZSBpbnRlcm5hbCBlcnJvciBtZXNzYWdlIGZy
b20gdGhlIHBsYXllciBwcml2YXRlLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyUHJpdmF0ZS5oOiBEZWZhdWx0IGVycm9yTWVzc2FnZSgpIGVtcHR5IGltcGxlbWVudGF0
aW9uLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXIuY3BwOiBEZXRlY3QgZGVjcnlwdGlvbiBhbmQgbm8ta2V5IGVycm9ycy4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyLmg6IEFkZGVkIGVycm9yTWVzc2FnZSgpIHRvIGV4cG9zZSB0aGUgaW50ZXJuYWwg
ZXJyb3IgbWVzc2FnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1l
L1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwOiBQb3N0IG11bHRp
cGxlIGtpbmQgb2YgZXJyb3JzIHRvIHRoZSBHc3RCdXMgdG8gbm90aWZ5IHVwcGVyIGxheWVycyBp
bnN0ZWFkIG9mIGp1c3QgbG9nZ2luZyB0aGVtLgorCiAyMDIyLTAzLTA3ICBBbGJlcnRvIEdhcmNp
YSAgPGJlcnRvQGlnYWxpYS5jb20+CiAKICAgICAgICAgbWFrZXByb3AucGwgYnJlYWtzIHJlcHJv
ZHVjaWJsZSBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmlu
ZGV4IDY4ODNkMDQ5ODAzYTk0MTdjMDQyMjY0Y2U3OTZjZGIyYjc4YmMxZDQuLjdkYTgxNDEzZGQw
ZGI3MjA1ZGUyZDU0Y2Q2NDhkNGMxMjkwZWNjOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmNwcApAQCAtMjE3NSw3ICsyMTc1LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVt
ZW50Ojpub25lU3VwcG9ydGVkKCkKIAogICAgIC8vIDYuMSAtIFNldCB0aGUgZXJyb3IgYXR0cmli
dXRlIHRvIGEgbmV3IE1lZGlhRXJyb3Igb2JqZWN0IHdob3NlIGNvZGUgYXR0cmlidXRlIGlzIHNl
dCB0bwogICAgIC8vIE1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRC4KLSAgICBtX2Vycm9yID0g
TWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRF
RCwgIlVuc3VwcG9ydGVkIHNvdXJjZSB0eXBlIl9zKTsKKyAgICBtX2Vycm9yID0gbV9wbGF5ZXIK
KyAgICAgICAgPyBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX1NSQ19O
T1RfU1VQUE9SVEVELCBtX3BsYXllci0+ZXJyb3JNZXNzYWdlKCkpCisgICAgICAgIDogTWVkaWFF
cnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRCwgIlVu
c3VwcG9ydGVkIHNvdXJjZSB0eXBlIl9zKTsKIAogICAgIC8vIDYuMiAtIEZvcmdldCB0aGUgbWVk
aWEgZWxlbWVudCdzIG1lZGlhLXJlc291cmNlLXNwZWNpZmljIHRleHQgdHJhY2tzLgogICAgIGZv
cmdldFJlc291cmNlU3BlY2lmaWNUcmFja3MoKTsKQEAgLTIyMTMsMTIgKzIyMTUsMjEgQEAgdm9p
ZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYUxvYWRpbmdGYWlsZWRGYXRhbGx5KE1lZGlhUGxheWVy
OjpOZXR3b3JrU3RhdGUgZXJyb3IKICAgICBzdG9wUGVyaW9kaWNUaW1lcnMoKTsKICAgICBtX2xv
YWRTdGF0ZSA9IFdhaXRpbmdGb3JTb3VyY2U7CiAKKyAgICBjb25zdCBhdXRvIGdldEVycm9yTWVz
c2FnZSA9IFsmXSAoU3RyaW5nICYmZGVmYXVsdE1lc3NhZ2UpIHsKKyAgICAgICAgU3RyaW5nIG1l
c3NhZ2UgPSBXVEZNb3ZlKGRlZmF1bHRNZXNzYWdlKTsKKyAgICAgICAgaWYgKG1fcGxheWVyICYm
ICFtX3BsYXllci0+ZXJyb3JNZXNzYWdlKCkuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICBtZXNz
YWdlLmFwcGVuZCgiOiAiKTsKKyAgICAgICAgICAgIG1lc3NhZ2UuYXBwZW5kKG1fcGxheWVyLT5l
cnJvck1lc3NhZ2UoKSk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIG1lc3NhZ2U7CisgICAg
fTsKKwogICAgIC8vIDIgLSBTZXQgdGhlIGVycm9yIGF0dHJpYnV0ZSB0byBhIG5ldyBNZWRpYUVy
cm9yIG9iamVjdCB3aG9zZSBjb2RlIGF0dHJpYnV0ZSBpcwogICAgIC8vIHNldCB0byBNRURJQV9F
UlJfTkVUV09SSy9NRURJQV9FUlJfREVDT0RFLgogICAgIGlmIChlcnJvciA9PSBNZWRpYVBsYXll
cjo6TmV0d29ya1N0YXRlOjpOZXR3b3JrRXJyb3IpCi0gICAgICAgIG1fZXJyb3IgPSBNZWRpYUVy
cm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX05FVFdPUkssICJNZWRpYSBmYWlsZWQg
dG8gbG9hZCJfcyk7CisgICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFF
cnJvcjo6TUVESUFfRVJSX05FVFdPUkssIGdldEVycm9yTWVzc2FnZSgiTWVkaWEgZmFpbGVkIHRv
IGxvYWQiX3MpKTsKICAgICBlbHNlIGlmIChlcnJvciA9PSBNZWRpYVBsYXllcjo6TmV0d29ya1N0
YXRlOjpEZWNvZGVFcnJvcikKLSAgICAgICAgbV9lcnJvciA9IE1lZGlhRXJyb3I6OmNyZWF0ZShN
ZWRpYUVycm9yOjpNRURJQV9FUlJfREVDT0RFLCAiTWVkaWEgZmFpbGVkIHRvIGRlY29kZSJfcyk7
CisgICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFf
RVJSX0RFQ09ERSwgZ2V0RXJyb3JNZXNzYWdlKCJNZWRpYSBmYWlsZWQgdG8gZGVjb2RlIl9zKSk7
CiAgICAgZWxzZQogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCmluZGV4IDQ1NTA1Mjlk
ZDU5NmY2MmFjZWZkOTVmZDcwMTVhMWQyYzQ1ZmI5NTcuLmVmNDUzMDM4N2JhYjkyMzNhOWNmM2Q4
NzZiNzVlZDczNjUxMjY0MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllci5jcHAKQEAgLTEzMzQsNyArMTMzNCw3IEBAIHZvaWQgTWVkaWFQbGF5
ZXI6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoKQogICAgIC8vIGxldCB0aGUgbmV4dCBlbmdpbmUgdHJ5
LgogICAgIGlmIChtX3ByaXZhdGUtPm5ldHdvcmtTdGF0ZSgpID49IE1lZGlhUGxheWVyOjpOZXR3
b3JrU3RhdGU6OkZvcm1hdEVycm9yICYmIG1fcHJpdmF0ZS0+cmVhZHlTdGF0ZSgpIDwgTWVkaWFQ
bGF5ZXI6OlJlYWR5U3RhdGU6OkhhdmVNZXRhZGF0YSkgewogICAgICAgICBjbGllbnQoKS5tZWRp
YVBsYXllckVuZ2luZUZhaWxlZFRvTG9hZCgpOwotICAgICAgICBpZiAoIW1fYWN0aXZlRW5naW5l
SWRlbnRpZmllciAmJiBpbnN0YWxsZWRNZWRpYUVuZ2luZXMoKS5zaXplKCkgPiAxICYmIChtX2Nv
bnRlbnRUeXBlLmlzRW1wdHkoKSB8fCBuZXh0QmVzdE1lZGlhRW5naW5lKG1fY3VycmVudE1lZGlh
RW5naW5lKSkpIHsKKyAgICAgICAgaWYgKCFtX2FjdGl2ZUVuZ2luZUlkZW50aWZpZXIgJiYgaW5z
dGFsbGVkTWVkaWFFbmdpbmVzKCkuc2l6ZSgpID4gMSAmJiAhbV9jb250ZW50VHlwZS5pc0VtcHR5
KCkgJiYgbmV4dEJlc3RNZWRpYUVuZ2luZShtX2N1cnJlbnRNZWRpYUVuZ2luZSkpIHsKICAgICAg
ICAgICAgIG1fcmVsb2FkVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7CiAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgIH0KQEAgLTE5MTIsNiArMTkxMiwxMSBAQCBTdHJpbmcgY29udmVydEVudW1l
cmF0aW9uVG9TdHJpbmcoTWVkaWFQbGF5ZXI6OkJ1ZmZlcmluZ1BvbGljeSBlbnVtZXJhdGlvblZh
bHVlKQogICAgIHJldHVybiB2YWx1ZXNbc3RhdGljX2Nhc3Q8c2l6ZV90PihlbnVtZXJhdGlvblZh
bHVlKV07CiB9CiAKK1N0cmluZyBNZWRpYVBsYXllcjo6ZXJyb3JNZXNzYWdlKCkgY29uc3QKK3sK
KyAgICByZXR1cm4gbV9wcml2YXRlLT5lcnJvck1lc3NhZ2UoKTsKK30KKwogfQogCiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCmluZGV4
IDIyNDRjOGIxYWM5ZGIwNDA3ZTRhZjc2MDYxZGEyMTI1ZDRlZWY2NDUuLmU2MDY2Y2U5ODAyZWU1
OWRlNzM4MjUxNjk1MmRlNDIzNjU1ZTQwZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaApAQCAtNjk3LDYgKzY5Nyw4IEBAIHB1YmxpYzoKIAog
ICAgIHZvaWQgcGxheWVyQ29udGVudEJveFJlY3RDaGFuZ2VkKGNvbnN0IExheW91dFJlY3QmKTsK
IAorICAgIFN0cmluZyBlcnJvck1lc3NhZ2UoKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBNZWRp
YVBsYXllcihNZWRpYVBsYXllckNsaWVudCYpOwogICAgIE1lZGlhUGxheWVyKE1lZGlhUGxheWVy
Q2xpZW50JiwgTWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0
ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRl
LmgKaW5kZXggMzA1YWM1Y2UyMGJhNTQ3NWI1NWExZmQzZDkzMzBhMDIzZWE5YmFkMC4uYmM4NTVl
M2UyNTljNWJmNzVlMGZjZTY1MjZlN2FiMDY3YTI0ZDJjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKQEAgLTMyOSw2
ICszMjksOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBsYXllckNvbnRlbnRCb3hSZWN0
Q2hhbmdlZChjb25zdCBMYXlvdXRSZWN0JikgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0UmVz
b3VyY2VPd25lcihjb25zdCBQcm9jZXNzSWRlbnRpdHkmKSB7IH0KKworICAgIHZpcnR1YWwgU3Ry
aW5nIGVycm9yTWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIHsgfTsgfQogfTsKIAogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcAppbmRleCA1NzlhMTMz
MTQwZmZlNzRiZGQxMTFiODBiY2ViY2U2YTc0MGUyNDQxLi4xOTYxNzQ5ZDE5ODhjYWJlNWEwMWQ2
Zjc2ZmEyYjRkYjliNWE5YzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2
YXRlR1N0cmVhbWVyLmNwcApAQCAtMTcxMyw4ICsxNzEzLDEyIEBAIHZvaWQgTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyOjpoYW5kbGVNZXNzYWdlKEdzdE1lc3NhZ2UqIG1lc3NhZ2UpCiAgICAg
ICAgIGdzdF9tZXNzYWdlX3BhcnNlX2Vycm9yKG1lc3NhZ2UsICZlcnIub3V0UHRyKCksICZkZWJ1
Zy5vdXRQdHIoKSk7CiAgICAgICAgIEdTVF9FUlJPUigiRXJyb3IgJWQ6ICVzICh1cmw9JXMpIiwg
ZXJyLT5jb2RlLCBlcnItPm1lc3NhZ2UsIG1fdXJsLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwog
CisgICAgICAgIG1fZXJyb3JNZXNzYWdlID0gZXJyLT5tZXNzYWdlOworCiAgICAgICAgIGVycm9y
ID0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6RW1wdHk7CiAgICAgICAgIGlmIChnX2Vycm9y
X21hdGNoZXMoZXJyLmdldCgpLCBHU1RfU1RSRUFNX0VSUk9SLCBHU1RfU1RSRUFNX0VSUk9SX0NP
REVDX05PVF9GT1VORCkKKyAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCks
IEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJFQU1fRVJST1JfREVDUllQVCkKKyAgICAgICAgICAg
IHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCksIEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJF
QU1fRVJST1JfREVDUllQVF9OT0tFWSkKICAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhl
cnIuZ2V0KCksIEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJFQU1fRVJST1JfV1JPTkdfVFlQRSkK
ICAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCksIEdTVF9TVFJFQU1fRVJS
T1IsIEdTVF9TVFJFQU1fRVJST1JfRkFJTEVEKQogICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRj
aGVzKGVyci5nZXQoKSwgR1NUX0NPUkVfRVJST1IsIEdTVF9DT1JFX0VSUk9SX01JU1NJTkdfUExV
R0lOKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCmluZGV4
IGUzODA3NWIyZmMyNmQ5NDNiZjlhMDA2NTQzM2M3YmJhYWU1ZTA2MjMuLjA3MDlhMDk0YmQ3YTIz
ZTI4NWU4MWI1YzVjZGE0NTI4MzUyNTIzNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5
ZXJQcml2YXRlR1N0cmVhbWVyLmgKQEAgLTM4OCw2ICszODgsOCBAQCBwcm90ZWN0ZWQ6CiAKICAg
ICBzdGQ6Om9wdGlvbmFsPEdzdFZpZGVvRGVjb2RlclBsYXRmb3JtPiBtX3ZpZGVvRGVjb2RlclBs
YXRmb3JtOwogCisgICAgU3RyaW5nIGVycm9yTWVzc2FnZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0
dXJuIG1fZXJyb3JNZXNzYWdlOyB9CisKIHByaXZhdGU6CiAgICAgY2xhc3MgVGFza0F0TWVkaWFU
aW1lU2NoZWR1bGVyIHsKICAgICBwdWJsaWM6CkBAIC01NzMsNiArNTc1LDcgQEAgcHJpdmF0ZToK
ICAgICBSZWY8Y29uc3QgTG9nZ2VyPiBtX2xvZ2dlcjsKICAgICBjb25zdCB2b2lkKiBtX2xvZ0lk
ZW50aWZpZXI7CiAjZW5kaWYKKyAgICBTdHJpbmcgbV9lcnJvck1lc3NhZ2U7CiB9OwogCiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1l
L1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0
aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcAppbmRleCAxMWRmM2Q3OTdlZThiNDdlOWFhNTRkM2Zh
NmQ4MmVjZjFlYjM4NTkzLi40ZTFlYzYyMWEzNWNmYmZmNDI1NGE2NGI2ZGNmOTM0MGU2MTgwOWRi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
ZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9u
RW5jcnlwdGlvbkRlY3J5cHRvckdTdHJlYW1lci5jcHAKQEAgLTIxMCw3ICsyMTAsNyBAQCBzdGF0
aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2Us
IEdzdEJ1ZmZlciogYnVmZmVyKQogICAgICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX0ZMVVNISU5H
OwogICAgICAgICB9CiAgICAgICAgIGlmICghcHJpdi0+Y2RtUHJveHkpIHsKLSAgICAgICAgICAg
IEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkNETVByb3h5IHdhcyBub3QgcmV0cmlldmVkIGluIHRp
bWUiKTsKKyAgICAgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVE
LCAoIkNETVByb3h5IHdhcyBub3QgcmV0cmlldmVkIGluIHRpbWUiKSwgbnVsbHB0cik7CiAgICAg
ICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICAgICAgfQogICAgICAg
ICBHU1RfREVCVUdfT0JKRUNUKHNlbGYsICJDRE0gbm93IGF2YWlsYWJsZSB3aXRoIGFkZHJlc3Mg
JXAiLCBwcml2LT5jZG1Qcm94eS5nZXQoKSk7CkBAIC0yMjQsMTggKzIyNCwxOCBAQCBzdGF0aWMg
R3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdz
dEJ1ZmZlciogYnVmZmVyKQogCiAgICAgdW5zaWduZWQgaXZTaXplOwogICAgIGlmICghZ3N0X3N0
cnVjdHVyZV9nZXRfdWludChwcm90ZWN0aW9uTWV0YS0+aW5mbywgIml2X3NpemUiLCAmaXZTaXpl
KSkgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IGl2X3Np
emUiKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgi
RmFpbGVkIHRvIGdldCBpdl9zaXplIiksIG51bGxwdHIpOwogICAgICAgICByZXR1cm4gR1NUX0ZM
T1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAgICAgaWYgKCFpdlNpemUgJiYgIWdzdF9zdHJ1Y3R1
cmVfZ2V0X3VpbnQocHJvdGVjdGlvbk1ldGEtPmluZm8sICJjb25zdGFudF9pdl9zaXplIiwgJml2
U2l6ZSkpIHsKLSAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiTm8gaXZfc2l6ZSBhbmQg
ZmFpbGVkIHRvIGdldCBjb25zdGFudF9pdl9zaXplIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VS
Uk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIk5vIGl2X3NpemUgYW5kIGZhaWxlZCB0byBnZXQg
Y29uc3RhbnRfaXZfc2l6ZSIpLCBudWxscHRyKTsKICAgICAgICAgQVNTRVJUKGlzQ2Jjcyk7CiAg
ICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KIAogICAgIGdib29s
ZWFuIGVuY3J5cHRlZDsKICAgICBpZiAoIWdzdF9zdHJ1Y3R1cmVfZ2V0X2Jvb2xlYW4ocHJvdGVj
dGlvbk1ldGEtPmluZm8sICJlbmNyeXB0ZWQiLCAmZW5jcnlwdGVkKSkgewotICAgICAgICBHU1Rf
RVJST1JfT0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IGVuY3J5cHRlZCBmbGFnIik7CisgICAg
ICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBn
ZXQgZW5jcnlwdGVkIGZsYWciKSwgbnVsbHB0cik7CiAgICAgICAgIHJldHVybiBHU1RfRkxPV19O
T1RfU1VQUE9SVEVEOwogICAgIH0KIApAQCAtMjQ5LDcgKzI0OSw3IEBAIHN0YXRpYyBHc3RGbG93
UmV0dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVy
KiBidWZmZXIpCiAgICAgdW5zaWduZWQgc3ViU2FtcGxlQ291bnQgPSAwOwogICAgIC8vIGNiY3Mg
Y291bGQgbm90IGluY2x1ZGUgdGhlIHN1YnNhbXBsZV9jb3VudC4KICAgICBpZiAoIWdzdF9zdHJ1
Y3R1cmVfZ2V0X3VpbnQocHJvdGVjdGlvbk1ldGEtPmluZm8sICJzdWJzYW1wbGVfY291bnQiLCAm
c3ViU2FtcGxlQ291bnQpICYmICFpc0NiY3MpIHsKLSAgICAgICAgR1NUX0VSUk9SX09CSkVDVChz
ZWxmLCAiRmFpbGVkIHRvIGdldCBzdWJzYW1wbGVfY291bnQiKTsKKyAgICAgICAgR1NUX0VMRU1F
TlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBzdWJzYW1wbGVf
Y291bnQiKSwgbnVsbHB0cik7CiAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVE
OwogICAgIH0KIApAQCAtMjU4LDEyICsyNTgsMTIgQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4gdHJh
bnNmb3JtSW5QbGFjZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZlcikK
ICAgICBpZiAoc3ViU2FtcGxlQ291bnQpIHsKICAgICAgICAgdmFsdWUgPSBnc3Rfc3RydWN0dXJl
X2dldF92YWx1ZShwcm90ZWN0aW9uTWV0YS0+aW5mbywgInN1YnNhbXBsZXMiKTsKICAgICAgICAg
aWYgKCF2YWx1ZSkgewotICAgICAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiRmFpbGVk
IHRvIGdldCBzdWJzYW1wbGVzIik7CisgICAgICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxm
LCBTVFJFQU0sIEZBSUxFRCwgKCJGYWlsZWQgdG8gZ2V0IHN1YnNhbXBsZXMiKSwgbnVsbHB0cik7
CiAgICAgICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICAgICAgfQog
ICAgICAgICBzdWJTYW1wbGVzQnVmZmVyID0gZ3N0X3ZhbHVlX2dldF9idWZmZXIodmFsdWUpOwog
ICAgICAgICBpZiAoIXN1YlNhbXBsZXNCdWZmZXIpIHsKLSAgICAgICAgICAgIEdTVF9FUlJPUl9P
QkpFQ1Qoc2VsZiwgIlRoZXJlIGlzIG5vIHN1YnNhbXBsZXMgYnVmZmVyLCBidXQgYSBwb3NpdGl2
ZSBzdWJzYW1wbGUgY291bnQiKTsKKyAgICAgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYs
IFNUUkVBTSwgRkFJTEVELCAoIlRoZXJlIGlzIG5vIHN1YnNhbXBsZXMgYnVmZmVyLCBidXQgYSBw
b3NpdGl2ZSBzdWJzYW1wbGUgY291bnQiKSwgbnVsbHB0cik7CiAgICAgICAgICAgICByZXR1cm4g
R1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICAgICAgfQogICAgIH0KQEAgLTI3MSwxNCArMjcx
LDE0IEBAIHN0YXRpYyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5z
Zm9ybSogYmFzZSwgR3N0QnVmZmVyKiBidWZmZXIpCiAgICAgdmFsdWUgPSBnc3Rfc3RydWN0dXJl
X2dldF92YWx1ZShwcm90ZWN0aW9uTWV0YS0+aW5mbywgImtpZCIpOwogCiAgICAgaWYgKCF2YWx1
ZSkgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IGtleSBp
ZCBmb3IgYnVmZmVyIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwg
RkFJTEVELCAoIkZhaWxlZCB0byBnZXQga2V5IGlkIGZvciBidWZmZXIiKSwgbnVsbHB0cik7CiAg
ICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KICAgICBHc3RCdWZm
ZXIqIGtleUlEQnVmZmVyID0gZ3N0X3ZhbHVlX2dldF9idWZmZXIodmFsdWUpOwogCiAgICAgdmFs
dWUgPSBnc3Rfc3RydWN0dXJlX2dldF92YWx1ZShwcm90ZWN0aW9uTWV0YS0+aW5mbywgIml2Iik7
CiAgICAgaWYgKCF2YWx1ZSkgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWls
ZWQgdG8gZ2V0IElWIGZvciBzYW1wbGUiKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2Vs
ZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBJViBmb3Igc2FtcGxlIiksIG51bGxw
dHIpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAKQEAg
LTMwNyw3ICszMDcsNyBAQCBzdGF0aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdz
dEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZlciogYnVmZmVyKQogICAgICAgICAgICAgR1NU
X0RFQlVHX09CSkVDVChzZWxmLCAiRGVjcnlwdGlvbiBhYm9ydGVkIGJlY2F1c2Ugb2YgZmx1c2gi
KTsKICAgICAgICAgICAgIHJldHVybiBHU1RfRkxPV19GTFVTSElORzsKICAgICAgICAgfQotICAg
ICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJEZWNyeXB0aW9uIGZhaWxlZCIpOworICAgICAg
ICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIERFQ1JZUFQsICgiRGVjcnlwdGlvbiBm
YWlsZWQiKSwgbnVsbHB0cik7CiAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVE
OwogICAgIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454229</attachid>
            <date>2022-03-09 04:59:49 -0800</date>
            <delta_ts>2022-03-10 06:43:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237602-20220309135947.patch</filename>
            <type>text/plain</type>
            <size>12913</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwODgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTU5MjBmZjdkZWZhZjkx
ODYwODZhYTViN2I0ODg4Yzk1NjNmNWM1Mi4uMzI5MGFlY2NkZWY0Y2I2YWYwNzlmZDk5YmE5MjIw
NDVkOTZjYmI3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTA5ICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl0gY2xhcmlmeSBwbGF5YmFjayBlcnJvcnMgd2l0aCBNZWRpYUVycm9yLm1lc3NhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzYwMgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggaXMgYXV0aG9yZWQgYnkgRXVnZW5lIE11dGF2Y2hpIDxJZXZnZW5fTXV0YXZjaGlAY29tY2Fz
dC5jb20+CisgICAgICAgIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL1dlYlBsYXRmb3JtRm9yRW1i
ZWRkZWQvV1BFV2ViS2l0L3B1bGwvNzk3CisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwOiBVc2UgaW50ZXJuYWwgZXJyb3IgbWVzc2FnZSBmcm9tIHRoZSBwbGF5ZXIgcHJpdmF0
ZSwgaWYgYXZhaWxhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmNwcDogQXZvaWQgcmVsb2FkaW5nIHRoZSBwbGF5ZXIgaW4gY2FzZSBvZiBlcnJvciBpbiBuZXR3
b3JrU3RhdGVDaGFuZ2VkKCkgaW4gb3JkZXIgdG8gcHJlc2VydmUgdGhlIGxhc3QgZXJyb3IgbWVz
c2FnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oOiBBZGRlZCBl
cnJvck1lc3NhZ2UoKSBtZXRob2QgdG8gZ2V0IHRoZSBpbnRlcm5hbCBlcnJvciBtZXNzYWdlIGZy
b20gdGhlIHBsYXllciBwcml2YXRlLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyUHJpdmF0ZS5oOiBEZWZhdWx0IGVycm9yTWVzc2FnZSgpIGVtcHR5IGltcGxlbWVudGF0
aW9uLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXIuY3BwOiBEZXRlY3QgZGVjcnlwdGlvbiBhbmQgbm8ta2V5IGVycm9ycy4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRl
R1N0cmVhbWVyLmg6IEFkZGVkIGVycm9yTWVzc2FnZSgpIHRvIGV4cG9zZSB0aGUgaW50ZXJuYWwg
ZXJyb3IgbWVzc2FnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1l
L1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwOiBQb3N0IG11bHRp
cGxlIGtpbmQgb2YgZXJyb3JzIHRvIHRoZSBHc3RCdXMgdG8gbm90aWZ5IHVwcGVyIGxheWVycyBp
bnN0ZWFkIG9mIGp1c3QgbG9nZ2luZyB0aGVtLgorCiAyMDIyLTAzLTA3ICBBbGJlcnRvIEdhcmNp
YSAgPGJlcnRvQGlnYWxpYS5jb20+CiAKICAgICAgICAgbWFrZXByb3AucGwgYnJlYWtzIHJlcHJv
ZHVjaWJsZSBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmlu
ZGV4IDY4ODNkMDQ5ODAzYTk0MTdjMDQyMjY0Y2U3OTZjZGIyYjc4YmMxZDQuLjdkYTgxNDEzZGQw
ZGI3MjA1ZGUyZDU0Y2Q2NDhkNGMxMjkwZWNjOGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmNwcApAQCAtMjE3NSw3ICsyMTc1LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVt
ZW50Ojpub25lU3VwcG9ydGVkKCkKIAogICAgIC8vIDYuMSAtIFNldCB0aGUgZXJyb3IgYXR0cmli
dXRlIHRvIGEgbmV3IE1lZGlhRXJyb3Igb2JqZWN0IHdob3NlIGNvZGUgYXR0cmlidXRlIGlzIHNl
dCB0bwogICAgIC8vIE1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRC4KLSAgICBtX2Vycm9yID0g
TWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRF
RCwgIlVuc3VwcG9ydGVkIHNvdXJjZSB0eXBlIl9zKTsKKyAgICBtX2Vycm9yID0gbV9wbGF5ZXIK
KyAgICAgICAgPyBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX1NSQ19O
T1RfU1VQUE9SVEVELCBtX3BsYXllci0+ZXJyb3JNZXNzYWdlKCkpCisgICAgICAgIDogTWVkaWFF
cnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRCwgIlVu
c3VwcG9ydGVkIHNvdXJjZSB0eXBlIl9zKTsKIAogICAgIC8vIDYuMiAtIEZvcmdldCB0aGUgbWVk
aWEgZWxlbWVudCdzIG1lZGlhLXJlc291cmNlLXNwZWNpZmljIHRleHQgdHJhY2tzLgogICAgIGZv
cmdldFJlc291cmNlU3BlY2lmaWNUcmFja3MoKTsKQEAgLTIyMTMsMTIgKzIyMTUsMjEgQEAgdm9p
ZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYUxvYWRpbmdGYWlsZWRGYXRhbGx5KE1lZGlhUGxheWVy
OjpOZXR3b3JrU3RhdGUgZXJyb3IKICAgICBzdG9wUGVyaW9kaWNUaW1lcnMoKTsKICAgICBtX2xv
YWRTdGF0ZSA9IFdhaXRpbmdGb3JTb3VyY2U7CiAKKyAgICBjb25zdCBhdXRvIGdldEVycm9yTWVz
c2FnZSA9IFsmXSAoU3RyaW5nICYmZGVmYXVsdE1lc3NhZ2UpIHsKKyAgICAgICAgU3RyaW5nIG1l
c3NhZ2UgPSBXVEZNb3ZlKGRlZmF1bHRNZXNzYWdlKTsKKyAgICAgICAgaWYgKG1fcGxheWVyICYm
ICFtX3BsYXllci0+ZXJyb3JNZXNzYWdlKCkuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICBtZXNz
YWdlLmFwcGVuZCgiOiAiKTsKKyAgICAgICAgICAgIG1lc3NhZ2UuYXBwZW5kKG1fcGxheWVyLT5l
cnJvck1lc3NhZ2UoKSk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIG1lc3NhZ2U7CisgICAg
fTsKKwogICAgIC8vIDIgLSBTZXQgdGhlIGVycm9yIGF0dHJpYnV0ZSB0byBhIG5ldyBNZWRpYUVy
cm9yIG9iamVjdCB3aG9zZSBjb2RlIGF0dHJpYnV0ZSBpcwogICAgIC8vIHNldCB0byBNRURJQV9F
UlJfTkVUV09SSy9NRURJQV9FUlJfREVDT0RFLgogICAgIGlmIChlcnJvciA9PSBNZWRpYVBsYXll
cjo6TmV0d29ya1N0YXRlOjpOZXR3b3JrRXJyb3IpCi0gICAgICAgIG1fZXJyb3IgPSBNZWRpYUVy
cm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX05FVFdPUkssICJNZWRpYSBmYWlsZWQg
dG8gbG9hZCJfcyk7CisgICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFF
cnJvcjo6TUVESUFfRVJSX05FVFdPUkssIGdldEVycm9yTWVzc2FnZSgiTWVkaWEgZmFpbGVkIHRv
IGxvYWQiX3MpKTsKICAgICBlbHNlIGlmIChlcnJvciA9PSBNZWRpYVBsYXllcjo6TmV0d29ya1N0
YXRlOjpEZWNvZGVFcnJvcikKLSAgICAgICAgbV9lcnJvciA9IE1lZGlhRXJyb3I6OmNyZWF0ZShN
ZWRpYUVycm9yOjpNRURJQV9FUlJfREVDT0RFLCAiTWVkaWEgZmFpbGVkIHRvIGRlY29kZSJfcyk7
CisgICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFf
RVJSX0RFQ09ERSwgZ2V0RXJyb3JNZXNzYWdlKCJNZWRpYSBmYWlsZWQgdG8gZGVjb2RlIl9zKSk7
CiAgICAgZWxzZQogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCmluZGV4IDQ1NTA1Mjlk
ZDU5NmY2MmFjZWZkOTVmZDcwMTVhMWQyYzQ1ZmI5NTcuLmVmNDUzMDM4N2JhYjkyMzNhOWNmM2Q4
NzZiNzVlZDczNjUxMjY0MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllci5jcHAKQEAgLTEzMzQsNyArMTMzNCw3IEBAIHZvaWQgTWVkaWFQbGF5
ZXI6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoKQogICAgIC8vIGxldCB0aGUgbmV4dCBlbmdpbmUgdHJ5
LgogICAgIGlmIChtX3ByaXZhdGUtPm5ldHdvcmtTdGF0ZSgpID49IE1lZGlhUGxheWVyOjpOZXR3
b3JrU3RhdGU6OkZvcm1hdEVycm9yICYmIG1fcHJpdmF0ZS0+cmVhZHlTdGF0ZSgpIDwgTWVkaWFQ
bGF5ZXI6OlJlYWR5U3RhdGU6OkhhdmVNZXRhZGF0YSkgewogICAgICAgICBjbGllbnQoKS5tZWRp
YVBsYXllckVuZ2luZUZhaWxlZFRvTG9hZCgpOwotICAgICAgICBpZiAoIW1fYWN0aXZlRW5naW5l
SWRlbnRpZmllciAmJiBpbnN0YWxsZWRNZWRpYUVuZ2luZXMoKS5zaXplKCkgPiAxICYmIChtX2Nv
bnRlbnRUeXBlLmlzRW1wdHkoKSB8fCBuZXh0QmVzdE1lZGlhRW5naW5lKG1fY3VycmVudE1lZGlh
RW5naW5lKSkpIHsKKyAgICAgICAgaWYgKCFtX2FjdGl2ZUVuZ2luZUlkZW50aWZpZXIgJiYgaW5z
dGFsbGVkTWVkaWFFbmdpbmVzKCkuc2l6ZSgpID4gMSAmJiAhbV9jb250ZW50VHlwZS5pc0VtcHR5
KCkgJiYgbmV4dEJlc3RNZWRpYUVuZ2luZShtX2N1cnJlbnRNZWRpYUVuZ2luZSkpIHsKICAgICAg
ICAgICAgIG1fcmVsb2FkVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7CiAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgIH0KQEAgLTE5MTIsNiArMTkxMiwxMSBAQCBTdHJpbmcgY29udmVydEVudW1l
cmF0aW9uVG9TdHJpbmcoTWVkaWFQbGF5ZXI6OkJ1ZmZlcmluZ1BvbGljeSBlbnVtZXJhdGlvblZh
bHVlKQogICAgIHJldHVybiB2YWx1ZXNbc3RhdGljX2Nhc3Q8c2l6ZV90PihlbnVtZXJhdGlvblZh
bHVlKV07CiB9CiAKK1N0cmluZyBNZWRpYVBsYXllcjo6ZXJyb3JNZXNzYWdlKCkgY29uc3QKK3sK
KyAgICByZXR1cm4gbV9wcml2YXRlLT5lcnJvck1lc3NhZ2UoKTsKK30KKwogfQogCiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCmluZGV4
IDIyNDRjOGIxYWM5ZGIwNDA3ZTRhZjc2MDYxZGEyMTI1ZDRlZWY2NDUuLmU2MDY2Y2U5ODAyZWU1
OWRlNzM4MjUxNjk1MmRlNDIzNjU1ZTQwZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaApAQCAtNjk3LDYgKzY5Nyw4IEBAIHB1YmxpYzoKIAog
ICAgIHZvaWQgcGxheWVyQ29udGVudEJveFJlY3RDaGFuZ2VkKGNvbnN0IExheW91dFJlY3QmKTsK
IAorICAgIFN0cmluZyBlcnJvck1lc3NhZ2UoKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBNZWRp
YVBsYXllcihNZWRpYVBsYXllckNsaWVudCYpOwogICAgIE1lZGlhUGxheWVyKE1lZGlhUGxheWVy
Q2xpZW50JiwgTWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0
ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRl
LmgKaW5kZXggMzA1YWM1Y2UyMGJhNTQ3NWI1NWExZmQzZDkzMzBhMDIzZWE5YmFkMC4uYmM4NTVl
M2UyNTljNWJmNzVlMGZjZTY1MjZlN2FiMDY3YTI0ZDJjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKQEAgLTMyOSw2
ICszMjksOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBsYXllckNvbnRlbnRCb3hSZWN0
Q2hhbmdlZChjb25zdCBMYXlvdXRSZWN0JikgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0UmVz
b3VyY2VPd25lcihjb25zdCBQcm9jZXNzSWRlbnRpdHkmKSB7IH0KKworICAgIHZpcnR1YWwgU3Ry
aW5nIGVycm9yTWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIHsgfTsgfQogfTsKIAogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcAppbmRleCA1NzlhMTMz
MTQwZmZlNzRiZGQxMTFiODBiY2ViY2U2YTc0MGUyNDQxLi4xOTYxNzQ5ZDE5ODhjYWJlNWEwMWQ2
Zjc2ZmEyYjRkYjliNWE5YzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2
YXRlR1N0cmVhbWVyLmNwcApAQCAtMTcxMyw4ICsxNzEzLDEyIEBAIHZvaWQgTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyOjpoYW5kbGVNZXNzYWdlKEdzdE1lc3NhZ2UqIG1lc3NhZ2UpCiAgICAg
ICAgIGdzdF9tZXNzYWdlX3BhcnNlX2Vycm9yKG1lc3NhZ2UsICZlcnIub3V0UHRyKCksICZkZWJ1
Zy5vdXRQdHIoKSk7CiAgICAgICAgIEdTVF9FUlJPUigiRXJyb3IgJWQ6ICVzICh1cmw9JXMpIiwg
ZXJyLT5jb2RlLCBlcnItPm1lc3NhZ2UsIG1fdXJsLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwog
CisgICAgICAgIG1fZXJyb3JNZXNzYWdlID0gZXJyLT5tZXNzYWdlOworCiAgICAgICAgIGVycm9y
ID0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6RW1wdHk7CiAgICAgICAgIGlmIChnX2Vycm9y
X21hdGNoZXMoZXJyLmdldCgpLCBHU1RfU1RSRUFNX0VSUk9SLCBHU1RfU1RSRUFNX0VSUk9SX0NP
REVDX05PVF9GT1VORCkKKyAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCks
IEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJFQU1fRVJST1JfREVDUllQVCkKKyAgICAgICAgICAg
IHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCksIEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJF
QU1fRVJST1JfREVDUllQVF9OT0tFWSkKICAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhl
cnIuZ2V0KCksIEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJFQU1fRVJST1JfV1JPTkdfVFlQRSkK
ICAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCksIEdTVF9TVFJFQU1fRVJS
T1IsIEdTVF9TVFJFQU1fRVJST1JfRkFJTEVEKQogICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRj
aGVzKGVyci5nZXQoKSwgR1NUX0NPUkVfRVJST1IsIEdTVF9DT1JFX0VSUk9SX01JU1NJTkdfUExV
R0lOKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCmluZGV4
IGUzODA3NWIyZmMyNmQ5NDNiZjlhMDA2NTQzM2M3YmJhYWU1ZTA2MjMuLjA3MDlhMDk0YmQ3YTIz
ZTI4NWU4MWI1YzVjZGE0NTI4MzUyNTIzNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5
ZXJQcml2YXRlR1N0cmVhbWVyLmgKQEAgLTM4OCw2ICszODgsOCBAQCBwcm90ZWN0ZWQ6CiAKICAg
ICBzdGQ6Om9wdGlvbmFsPEdzdFZpZGVvRGVjb2RlclBsYXRmb3JtPiBtX3ZpZGVvRGVjb2RlclBs
YXRmb3JtOwogCisgICAgU3RyaW5nIGVycm9yTWVzc2FnZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0
dXJuIG1fZXJyb3JNZXNzYWdlOyB9CisKIHByaXZhdGU6CiAgICAgY2xhc3MgVGFza0F0TWVkaWFU
aW1lU2NoZWR1bGVyIHsKICAgICBwdWJsaWM6CkBAIC01NzMsNiArNTc1LDcgQEAgcHJpdmF0ZToK
ICAgICBSZWY8Y29uc3QgTG9nZ2VyPiBtX2xvZ2dlcjsKICAgICBjb25zdCB2b2lkKiBtX2xvZ0lk
ZW50aWZpZXI7CiAjZW5kaWYKKyAgICBTdHJpbmcgbV9lcnJvck1lc3NhZ2U7CiB9OwogCiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1l
L1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0
aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcAppbmRleCAxMWRmM2Q3OTdlZThiNDdlOWFhNTRkM2Zh
NmQ4MmVjZjFlYjM4NTkzLi5mYTUyYjRlNzRjNTZkN2UyZTU1MTBmNzg2Yzk1NjEwZmVmNWM4MThk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
ZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9u
RW5jcnlwdGlvbkRlY3J5cHRvckdTdHJlYW1lci5jcHAKQEAgLTIxMCw3ICsyMTAsNyBAQCBzdGF0
aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2Us
IEdzdEJ1ZmZlciogYnVmZmVyKQogICAgICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX0ZMVVNISU5H
OwogICAgICAgICB9CiAgICAgICAgIGlmICghcHJpdi0+Y2RtUHJveHkpIHsKLSAgICAgICAgICAg
IEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkNETVByb3h5IHdhcyBub3QgcmV0cmlldmVkIGluIHRp
bWUiKTsKKyAgICAgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVE
LCAoIkNETVByb3h5IHdhcyBub3QgcmV0cmlldmVkIGluIHRpbWUiKSwgKG51bGxwdHIpKTsKICAg
ICAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgICAgICB9CiAgICAg
ICAgIEdTVF9ERUJVR19PQkpFQ1Qoc2VsZiwgIkNETSBub3cgYXZhaWxhYmxlIHdpdGggYWRkcmVz
cyAlcCIsIHByaXYtPmNkbVByb3h5LmdldCgpKTsKQEAgLTIyNCwxOCArMjI0LDE4IEBAIHN0YXRp
YyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5zZm9ybSogYmFzZSwg
R3N0QnVmZmVyKiBidWZmZXIpCiAKICAgICB1bnNpZ25lZCBpdlNpemU7CiAgICAgaWYgKCFnc3Rf
c3RydWN0dXJlX2dldF91aW50KHByb3RlY3Rpb25NZXRhLT5pbmZvLCAiaXZfc2l6ZSIsICZpdlNp
emUpKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZhaWxlZCB0byBnZXQgaXZf
c2l6ZSIpOworICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwg
KCJGYWlsZWQgdG8gZ2V0IGl2X3NpemUiKSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdT
VF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgfQogICAgIGlmICghaXZTaXplICYmICFnc3Rfc3Ry
dWN0dXJlX2dldF91aW50KHByb3RlY3Rpb25NZXRhLT5pbmZvLCAiY29uc3RhbnRfaXZfc2l6ZSIs
ICZpdlNpemUpKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIk5vIGl2X3NpemUg
YW5kIGZhaWxlZCB0byBnZXQgY29uc3RhbnRfaXZfc2l6ZSIpOworICAgICAgICBHU1RfRUxFTUVO
VF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJObyBpdl9zaXplIGFuZCBmYWlsZWQgdG8g
Z2V0IGNvbnN0YW50X2l2X3NpemUiKSwgKG51bGxwdHIpKTsKICAgICAgICAgQVNTRVJUKGlzQ2Jj
cyk7CiAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KIAogICAg
IGdib29sZWFuIGVuY3J5cHRlZDsKICAgICBpZiAoIWdzdF9zdHJ1Y3R1cmVfZ2V0X2Jvb2xlYW4o
cHJvdGVjdGlvbk1ldGEtPmluZm8sICJlbmNyeXB0ZWQiLCAmZW5jcnlwdGVkKSkgewotICAgICAg
ICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IGVuY3J5cHRlZCBmbGFnIik7
CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxl
ZCB0byBnZXQgZW5jcnlwdGVkIGZsYWciKSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdT
VF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgfQogCkBAIC0yNDksNyArMjQ5LDcgQEAgc3RhdGlj
IEdzdEZsb3dSZXR1cm4gdHJhbnNmb3JtSW5QbGFjZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBH
c3RCdWZmZXIqIGJ1ZmZlcikKICAgICB1bnNpZ25lZCBzdWJTYW1wbGVDb3VudCA9IDA7CiAgICAg
Ly8gY2JjcyBjb3VsZCBub3QgaW5jbHVkZSB0aGUgc3Vic2FtcGxlX2NvdW50LgogICAgIGlmICgh
Z3N0X3N0cnVjdHVyZV9nZXRfdWludChwcm90ZWN0aW9uTWV0YS0+aW5mbywgInN1YnNhbXBsZV9j
b3VudCIsICZzdWJTYW1wbGVDb3VudCkgJiYgIWlzQ2JjcykgewotICAgICAgICBHU1RfRVJST1Jf
T0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IHN1YnNhbXBsZV9jb3VudCIpOworICAgICAgICBH
U1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJGYWlsZWQgdG8gZ2V0IHN1
YnNhbXBsZV9jb3VudCIpLCAobnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9U
X1NVUFBPUlRFRDsKICAgICB9CiAKQEAgLTI1OCwxMiArMjU4LDEyIEBAIHN0YXRpYyBHc3RGbG93
UmV0dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVy
KiBidWZmZXIpCiAgICAgaWYgKHN1YlNhbXBsZUNvdW50KSB7CiAgICAgICAgIHZhbHVlID0gZ3N0
X3N0cnVjdHVyZV9nZXRfdmFsdWUocHJvdGVjdGlvbk1ldGEtPmluZm8sICJzdWJzYW1wbGVzIik7
CiAgICAgICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2Vs
ZiwgIkZhaWxlZCB0byBnZXQgc3Vic2FtcGxlcyIpOworICAgICAgICAgICAgR1NUX0VMRU1FTlRf
RVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBzdWJzYW1wbGVzIiks
IChudWxscHRyKSk7CiAgICAgICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsK
ICAgICAgICAgfQogICAgICAgICBzdWJTYW1wbGVzQnVmZmVyID0gZ3N0X3ZhbHVlX2dldF9idWZm
ZXIodmFsdWUpOwogICAgICAgICBpZiAoIXN1YlNhbXBsZXNCdWZmZXIpIHsKLSAgICAgICAgICAg
IEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIlRoZXJlIGlzIG5vIHN1YnNhbXBsZXMgYnVmZmVyLCBi
dXQgYSBwb3NpdGl2ZSBzdWJzYW1wbGUgY291bnQiKTsKKyAgICAgICAgICAgIEdTVF9FTEVNRU5U
X0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIlRoZXJlIGlzIG5vIHN1YnNhbXBsZXMgYnVm
ZmVyLCBidXQgYSBwb3NpdGl2ZSBzdWJzYW1wbGUgY291bnQiKSwgKG51bGxwdHIpKTsKICAgICAg
ICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgICAgICB9CiAgICAgfQpA
QCAtMjcxLDE0ICsyNzEsMTQgQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4gdHJhbnNmb3JtSW5QbGFj
ZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZlcikKICAgICB2YWx1ZSA9
IGdzdF9zdHJ1Y3R1cmVfZ2V0X3ZhbHVlKHByb3RlY3Rpb25NZXRhLT5pbmZvLCAia2lkIik7CiAK
ICAgICBpZiAoIXZhbHVlKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZhaWxl
ZCB0byBnZXQga2V5IGlkIGZvciBidWZmZXIiKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Io
c2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBrZXkgaWQgZm9yIGJ1ZmZlciIp
LCAobnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAg
ICB9CiAgICAgR3N0QnVmZmVyKiBrZXlJREJ1ZmZlciA9IGdzdF92YWx1ZV9nZXRfYnVmZmVyKHZh
bHVlKTsKIAogICAgIHZhbHVlID0gZ3N0X3N0cnVjdHVyZV9nZXRfdmFsdWUocHJvdGVjdGlvbk1l
dGEtPmluZm8sICJpdiIpOwogICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgR1NUX0VSUk9SX09C
SkVDVChzZWxmLCAiRmFpbGVkIHRvIGdldCBJViBmb3Igc2FtcGxlIik7CisgICAgICAgIEdTVF9F
TEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQgSVYgZm9y
IHNhbXBsZSIpLCAobnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBP
UlRFRDsKICAgICB9CiAKQEAgLTMwNyw3ICszMDcsNyBAQCBzdGF0aWMgR3N0Rmxvd1JldHVybiB0
cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZlciogYnVmZmVy
KQogICAgICAgICAgICAgR1NUX0RFQlVHX09CSkVDVChzZWxmLCAiRGVjcnlwdGlvbiBhYm9ydGVk
IGJlY2F1c2Ugb2YgZmx1c2giKTsKICAgICAgICAgICAgIHJldHVybiBHU1RfRkxPV19GTFVTSElO
RzsKICAgICAgICAgfQotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJEZWNyeXB0aW9u
IGZhaWxlZCIpOworICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIERFQ1JZ
UFQsICgiRGVjcnlwdGlvbiBmYWlsZWQiKSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdT
VF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454358</attachid>
            <date>2022-03-10 06:43:50 -0800</date>
            <delta_ts>2022-03-11 06:20:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237602-20220310154349.patch</filename>
            <type>text/plain</type>
            <size>12840</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwODgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTU5MjBmZjdkZWZhZjkx
ODYwODZhYTViN2I0ODg4Yzk1NjNmNWM1Mi4uZjM2ZjA5NDlkNGVhMTZlZDJlZjNhNDVmOThlZWQ2
ZDU2Y2VlMWNhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIyLTAzLTEwICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl0gY2xhcmlmeSBwbGF5YmFjayBlcnJvcnMgd2l0aCBNZWRpYUVycm9yLm1lc3NhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzYwMgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVYUEVSSU1F
TlRBTCBERUJVRyBQQVRDSCwgTk9UIEZPUiBMQU5ESU5HISEhCisKKyAgICAgICAgKiBodG1sL0hU
TUxNZWRpYUVsZW1lbnQuY3BwOiBVc2UgaW50ZXJuYWwgZXJyb3IgbWVzc2FnZSBmcm9tIHRoZSBw
bGF5ZXIgcHJpdmF0ZSwgaWYgYXZhaWxhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L01lZGlhUGxheWVyLmNwcDogQXZvaWQgcmVsb2FkaW5nIHRoZSBwbGF5ZXIgaW4gY2FzZSBvZiBl
cnJvciBpbiBuZXR3b3JrU3RhdGVDaGFuZ2VkKCkgaW4gb3JkZXIgdG8gcHJlc2VydmUgdGhlIGxh
c3QgZXJyb3IgbWVzc2FnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXll
ci5oOiBBZGRlZCBlcnJvck1lc3NhZ2UoKSBtZXRob2QgdG8gZ2V0IHRoZSBpbnRlcm5hbCBlcnJv
ciBtZXNzYWdlIGZyb20gdGhlIHBsYXllciBwcml2YXRlLgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oOiBEZWZhdWx0IGVycm9yTWVzc2FnZSgpIGVtcHR5
IGltcGxlbWVudGF0aW9uLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwOiBEZXRlY3QgZGVjcnlwdGlvbiBhbmQgbm8t
a2V5IGVycm9ycy4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQ
bGF5ZXJQcml2YXRlR1N0cmVhbWVyLmg6IEFkZGVkIGVycm9yTWVzc2FnZSgpIHRvIGV4cG9zZSB0
aGUgaW50ZXJuYWwgZXJyb3IgbWVzc2FnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9n
c3RyZWFtZXIvZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3Bw
OiBQb3N0IG11bHRpcGxlIGtpbmQgb2YgZXJyb3JzIHRvIHRoZSBHc3RCdXMgdG8gbm90aWZ5IHVw
cGVyIGxheWVycyBpbnN0ZWFkIG9mIGp1c3QgbG9nZ2luZyB0aGVtLgorCiAyMDIyLTAzLTA3ICBB
bGJlcnRvIEdhcmNpYSAgPGJlcnRvQGlnYWxpYS5jb20+CiAKICAgICAgICAgbWFrZXByb3AucGwg
YnJlYWtzIHJlcHJvZHVjaWJsZSBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwCmluZGV4IDY4ODNkMDQ5ODAzYTk0MTdjMDQyMjY0Y2U3OTZjZGIyYjc4YmMxZDQu
LjdkYTgxNDEzZGQwZGI3MjA1ZGUyZDU0Y2Q2NDhkNGMxMjkwZWNjOGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtMjE3NSw3ICsyMTc1LDkgQEAgdm9pZCBI
VE1MTWVkaWFFbGVtZW50Ojpub25lU3VwcG9ydGVkKCkKIAogICAgIC8vIDYuMSAtIFNldCB0aGUg
ZXJyb3IgYXR0cmlidXRlIHRvIGEgbmV3IE1lZGlhRXJyb3Igb2JqZWN0IHdob3NlIGNvZGUgYXR0
cmlidXRlIGlzIHNldCB0bwogICAgIC8vIE1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRC4KLSAg
ICBtX2Vycm9yID0gTWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNf
Tk9UX1NVUFBPUlRFRCwgIlVuc3VwcG9ydGVkIHNvdXJjZSB0eXBlIl9zKTsKKyAgICBtX2Vycm9y
ID0gbV9wbGF5ZXIKKyAgICAgICAgPyBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVE
SUFfRVJSX1NSQ19OT1RfU1VQUE9SVEVELCBtX3BsYXllci0+ZXJyb3JNZXNzYWdlKCkpCisgICAg
ICAgIDogTWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NV
UFBPUlRFRCwgIlVuc3VwcG9ydGVkIHNvdXJjZSB0eXBlIl9zKTsKIAogICAgIC8vIDYuMiAtIEZv
cmdldCB0aGUgbWVkaWEgZWxlbWVudCdzIG1lZGlhLXJlc291cmNlLXNwZWNpZmljIHRleHQgdHJh
Y2tzLgogICAgIGZvcmdldFJlc291cmNlU3BlY2lmaWNUcmFja3MoKTsKQEAgLTIyMTMsMTIgKzIy
MTUsMjEgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjptZWRpYUxvYWRpbmdGYWlsZWRGYXRhbGx5
KE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGUgZXJyb3IKICAgICBzdG9wUGVyaW9kaWNUaW1lcnMo
KTsKICAgICBtX2xvYWRTdGF0ZSA9IFdhaXRpbmdGb3JTb3VyY2U7CiAKKyAgICBjb25zdCBhdXRv
IGdldEVycm9yTWVzc2FnZSA9IFsmXSAoU3RyaW5nICYmZGVmYXVsdE1lc3NhZ2UpIHsKKyAgICAg
ICAgU3RyaW5nIG1lc3NhZ2UgPSBXVEZNb3ZlKGRlZmF1bHRNZXNzYWdlKTsKKyAgICAgICAgaWYg
KG1fcGxheWVyICYmICFtX3BsYXllci0+ZXJyb3JNZXNzYWdlKCkuaXNFbXB0eSgpKSB7CisgICAg
ICAgICAgICBtZXNzYWdlLmFwcGVuZCgiOiAiKTsKKyAgICAgICAgICAgIG1lc3NhZ2UuYXBwZW5k
KG1fcGxheWVyLT5lcnJvck1lc3NhZ2UoKSk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIG1l
c3NhZ2U7CisgICAgfTsKKwogICAgIC8vIDIgLSBTZXQgdGhlIGVycm9yIGF0dHJpYnV0ZSB0byBh
IG5ldyBNZWRpYUVycm9yIG9iamVjdCB3aG9zZSBjb2RlIGF0dHJpYnV0ZSBpcwogICAgIC8vIHNl
dCB0byBNRURJQV9FUlJfTkVUV09SSy9NRURJQV9FUlJfREVDT0RFLgogICAgIGlmIChlcnJvciA9
PSBNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlOjpOZXR3b3JrRXJyb3IpCi0gICAgICAgIG1fZXJy
b3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX05FVFdPUkssICJN
ZWRpYSBmYWlsZWQgdG8gbG9hZCJfcyk7CisgICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpj
cmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX05FVFdPUkssIGdldEVycm9yTWVzc2FnZSgiTWVk
aWEgZmFpbGVkIHRvIGxvYWQiX3MpKTsKICAgICBlbHNlIGlmIChlcnJvciA9PSBNZWRpYVBsYXll
cjo6TmV0d29ya1N0YXRlOjpEZWNvZGVFcnJvcikKLSAgICAgICAgbV9lcnJvciA9IE1lZGlhRXJy
b3I6OmNyZWF0ZShNZWRpYUVycm9yOjpNRURJQV9FUlJfREVDT0RFLCAiTWVkaWEgZmFpbGVkIHRv
IGRlY29kZSJfcyk7CisgICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFF
cnJvcjo6TUVESUFfRVJSX0RFQ09ERSwgZ2V0RXJyb3JNZXNzYWdlKCJNZWRpYSBmYWlsZWQgdG8g
ZGVjb2RlIl9zKSk7CiAgICAgZWxzZQogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCmlu
ZGV4IDQ1NTA1MjlkZDU5NmY2MmFjZWZkOTVmZDcwMTVhMWQyYzQ1ZmI5NTcuLmZlYmRiNDVjYTdj
OTg2MWM5ZTU1MWUzMDAwOWMyZGE3ZTViYTE0OGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKQEAgLTEzMzQsNiArMTMzNCw4IEBAIHZv
aWQgTWVkaWFQbGF5ZXI6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoKQogICAgIC8vIGxldCB0aGUgbmV4
dCBlbmdpbmUgdHJ5LgogICAgIGlmIChtX3ByaXZhdGUtPm5ldHdvcmtTdGF0ZSgpID49IE1lZGlh
UGxheWVyOjpOZXR3b3JrU3RhdGU6OkZvcm1hdEVycm9yICYmIG1fcHJpdmF0ZS0+cmVhZHlTdGF0
ZSgpIDwgTWVkaWFQbGF5ZXI6OlJlYWR5U3RhdGU6OkhhdmVNZXRhZGF0YSkgewogICAgICAgICBj
bGllbnQoKS5tZWRpYVBsYXllckVuZ2luZUZhaWxlZFRvTG9hZCgpOworICAgICAgICAvLyAjIyMg
REVCVUcgRVhQRVJJTUVOVCAjIyMKKyAgICAgICAgLy8gaWYgKCFtX2FjdGl2ZUVuZ2luZUlkZW50
aWZpZXIgJiYgaW5zdGFsbGVkTWVkaWFFbmdpbmVzKCkuc2l6ZSgpID4gMSAmJiAhbV9jb250ZW50
VHlwZS5pc0VtcHR5KCkgJiYgbmV4dEJlc3RNZWRpYUVuZ2luZShtX2N1cnJlbnRNZWRpYUVuZ2lu
ZSkpIHsKICAgICAgICAgaWYgKCFtX2FjdGl2ZUVuZ2luZUlkZW50aWZpZXIgJiYgaW5zdGFsbGVk
TWVkaWFFbmdpbmVzKCkuc2l6ZSgpID4gMSAmJiAobV9jb250ZW50VHlwZS5pc0VtcHR5KCkgfHwg
bmV4dEJlc3RNZWRpYUVuZ2luZShtX2N1cnJlbnRNZWRpYUVuZ2luZSkpKSB7CiAgICAgICAgICAg
ICBtX3JlbG9hZFRpbWVyLnN0YXJ0T25lU2hvdCgwX3MpOwogICAgICAgICAgICAgcmV0dXJuOwpA
QCAtMTkxMiw2ICsxOTE0LDExIEBAIFN0cmluZyBjb252ZXJ0RW51bWVyYXRpb25Ub1N0cmluZyhN
ZWRpYVBsYXllcjo6QnVmZmVyaW5nUG9saWN5IGVudW1lcmF0aW9uVmFsdWUpCiAgICAgcmV0dXJu
IHZhbHVlc1tzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0aW9uVmFsdWUpXTsKIH0KIAorU3Ry
aW5nIE1lZGlhUGxheWVyOjplcnJvck1lc3NhZ2UoKSBjb25zdAoreworICAgIHJldHVybiBtX3By
aXZhdGUtPmVycm9yTWVzc2FnZSgpOworfQorCiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKaW5kZXggMjI0NGM4YjFhYzlkYjA0
MDdlNGFmNzYwNjFkYTIxMjVkNGVlZjY0NS4uZTYwNjZjZTk4MDJlZTU5ZGU3MzgyNTE2OTUyZGU0
MjM2NTVlNDBlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
TWVkaWFQbGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRp
YVBsYXllci5oCkBAIC02OTcsNiArNjk3LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBwbGF5ZXJD
b250ZW50Qm94UmVjdENoYW5nZWQoY29uc3QgTGF5b3V0UmVjdCYpOwogCisgICAgU3RyaW5nIGVy
cm9yTWVzc2FnZSgpIGNvbnN0OworCiBwcml2YXRlOgogICAgIE1lZGlhUGxheWVyKE1lZGlhUGxh
eWVyQ2xpZW50Jik7CiAgICAgTWVkaWFQbGF5ZXIoTWVkaWFQbGF5ZXJDbGllbnQmLCBNZWRpYVBs
YXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAppbmRleCAzMDVhYzVj
ZTIwYmE1NDc1YjU1YTFmZDNkOTMzMGEwMjNlYTliYWQwLi5iYzg1NWUzZTI1OWM1YmY3NWUwZmNl
NjUyNmU3YWIwNjdhMjRkMmM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaApAQCAtMzI5LDYgKzMyOSw4IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgcGxheWVyQ29udGVudEJveFJlY3RDaGFuZ2VkKGNvbnN0IExh
eW91dFJlY3QmKSB7IH0KIAogICAgIHZpcnR1YWwgdm9pZCBzZXRSZXNvdXJjZU93bmVyKGNvbnN0
IFByb2Nlc3NJZGVudGl0eSYpIHsgfQorCisgICAgdmlydHVhbCBTdHJpbmcgZXJyb3JNZXNzYWdl
KCkgY29uc3QgeyByZXR1cm4geyB9OyB9CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCmluZGV4IDU3OWExMzMxNDBmZmU3NGJkZDExMWI4
MGJjZWJjZTZhNzQwZTI0NDEuLjE5NjE3NDlkMTk4OGNhYmU1YTAxZDZmNzZmYTJiNGRiOWI1YTlj
OTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3Bw
CkBAIC0xNzEzLDggKzE3MTMsMTIgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6
OmhhbmRsZU1lc3NhZ2UoR3N0TWVzc2FnZSogbWVzc2FnZSkKICAgICAgICAgZ3N0X21lc3NhZ2Vf
cGFyc2VfZXJyb3IobWVzc2FnZSwgJmVyci5vdXRQdHIoKSwgJmRlYnVnLm91dFB0cigpKTsKICAg
ICAgICAgR1NUX0VSUk9SKCJFcnJvciAlZDogJXMgKHVybD0lcykiLCBlcnItPmNvZGUsIGVyci0+
bWVzc2FnZSwgbV91cmwuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CiAKKyAgICAgICAgbV9lcnJv
ck1lc3NhZ2UgPSBlcnItPm1lc3NhZ2U7CisKICAgICAgICAgZXJyb3IgPSBNZWRpYVBsYXllcjo6
TmV0d29ya1N0YXRlOjpFbXB0eTsKICAgICAgICAgaWYgKGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0
KCksIEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJFQU1fRVJST1JfQ09ERUNfTk9UX0ZPVU5EKQor
ICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRjaGVzKGVyci5nZXQoKSwgR1NUX1NUUkVBTV9FUlJP
UiwgR1NUX1NUUkVBTV9FUlJPUl9ERUNSWVBUKQorICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRj
aGVzKGVyci5nZXQoKSwgR1NUX1NUUkVBTV9FUlJPUiwgR1NUX1NUUkVBTV9FUlJPUl9ERUNSWVBU
X05PS0VZKQogICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRjaGVzKGVyci5nZXQoKSwgR1NUX1NU
UkVBTV9FUlJPUiwgR1NUX1NUUkVBTV9FUlJPUl9XUk9OR19UWVBFKQogICAgICAgICAgICAgfHwg
Z19lcnJvcl9tYXRjaGVzKGVyci5nZXQoKSwgR1NUX1NUUkVBTV9FUlJPUiwgR1NUX1NUUkVBTV9F
UlJPUl9GQUlMRUQpCiAgICAgICAgICAgICB8fCBnX2Vycm9yX21hdGNoZXMoZXJyLmdldCgpLCBH
U1RfQ09SRV9FUlJPUiwgR1NUX0NPUkVfRVJST1JfTUlTU0lOR19QTFVHSU4pCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKaW5kZXggZTM4MDc1YjJmYzI2ZDk0
M2JmOWEwMDY1NDMzYzdiYmFhZTVlMDYyMy4uMDcwOWEwOTRiZDdhMjNlMjg1ZTgxYjVjNWNkYTQ1
MjgzNTI1MjM3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFt
ZXIuaApAQCAtMzg4LDYgKzM4OCw4IEBAIHByb3RlY3RlZDoKIAogICAgIHN0ZDo6b3B0aW9uYWw8
R3N0VmlkZW9EZWNvZGVyUGxhdGZvcm0+IG1fdmlkZW9EZWNvZGVyUGxhdGZvcm07CiAKKyAgICBT
dHJpbmcgZXJyb3JNZXNzYWdlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9lcnJvck1lc3Nh
Z2U7IH0KKwogcHJpdmF0ZToKICAgICBjbGFzcyBUYXNrQXRNZWRpYVRpbWVTY2hlZHVsZXIgewog
ICAgIHB1YmxpYzoKQEAgLTU3Myw2ICs1NzUsNyBAQCBwcml2YXRlOgogICAgIFJlZjxjb25zdCBM
b2dnZXI+IG1fbG9nZ2VyOwogICAgIGNvbnN0IHZvaWQqIG1fbG9nSWRlbnRpZmllcjsKICNlbmRp
ZgorICAgIFN0cmluZyBtX2Vycm9yTWVzc2FnZTsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5j
cnlwdGlvbkRlY3J5cHRvckdTdHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3Ry
ZWFtZXIuY3BwCmluZGV4IDExZGYzZDc5N2VlOGI0N2U5YWE1NGQzZmE2ZDgyZWNmMWViMzg1OTMu
LmZhNTJiNGU3NGM1NmQ3ZTJlNTUxMGY3ODZjOTU2MTBmZWY1YzgxOGQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9u
RW5jcnlwdGlvbkRlY3J5cHRvckdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlw
dG9yR1N0cmVhbWVyLmNwcApAQCAtMjEwLDcgKzIxMCw3IEBAIHN0YXRpYyBHc3RGbG93UmV0dXJu
IHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVyKiBidWZm
ZXIpCiAgICAgICAgICAgICByZXR1cm4gR1NUX0ZMT1dfRkxVU0hJTkc7CiAgICAgICAgIH0KICAg
ICAgICAgaWYgKCFwcml2LT5jZG1Qcm94eSkgewotICAgICAgICAgICAgR1NUX0VSUk9SX09CSkVD
VChzZWxmLCAiQ0RNUHJveHkgd2FzIG5vdCByZXRyaWV2ZWQgaW4gdGltZSIpOworICAgICAgICAg
ICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiQ0RNUHJveHkgd2Fz
IG5vdCByZXRyaWV2ZWQgaW4gdGltZSIpLCAobnVsbHB0cikpOwogICAgICAgICAgICAgcmV0dXJu
IEdTVF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgICAgIH0KICAgICAgICAgR1NUX0RFQlVHX09C
SkVDVChzZWxmLCAiQ0RNIG5vdyBhdmFpbGFibGUgd2l0aCBhZGRyZXNzICVwIiwgcHJpdi0+Y2Rt
UHJveHkuZ2V0KCkpOwpAQCAtMjI0LDE4ICsyMjQsMTggQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4g
dHJhbnNmb3JtSW5QbGFjZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZl
cikKIAogICAgIHVuc2lnbmVkIGl2U2l6ZTsKICAgICBpZiAoIWdzdF9zdHJ1Y3R1cmVfZ2V0X3Vp
bnQocHJvdGVjdGlvbk1ldGEtPmluZm8sICJpdl9zaXplIiwgJml2U2l6ZSkpIHsKLSAgICAgICAg
R1NUX0VSUk9SX09CSkVDVChzZWxmLCAiRmFpbGVkIHRvIGdldCBpdl9zaXplIik7CisgICAgICAg
IEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQg
aXZfc2l6ZSIpLCAobnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBP
UlRFRDsKICAgICB9CiAgICAgaWYgKCFpdlNpemUgJiYgIWdzdF9zdHJ1Y3R1cmVfZ2V0X3VpbnQo
cHJvdGVjdGlvbk1ldGEtPmluZm8sICJjb25zdGFudF9pdl9zaXplIiwgJml2U2l6ZSkpIHsKLSAg
ICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiTm8gaXZfc2l6ZSBhbmQgZmFpbGVkIHRvIGdl
dCBjb25zdGFudF9pdl9zaXplIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNU
UkVBTSwgRkFJTEVELCAoIk5vIGl2X3NpemUgYW5kIGZhaWxlZCB0byBnZXQgY29uc3RhbnRfaXZf
c2l6ZSIpLCAobnVsbHB0cikpOwogICAgICAgICBBU1NFUlQoaXNDYmNzKTsKICAgICAgICAgcmV0
dXJuIEdTVF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgfQogCiAgICAgZ2Jvb2xlYW4gZW5jcnlw
dGVkOwogICAgIGlmICghZ3N0X3N0cnVjdHVyZV9nZXRfYm9vbGVhbihwcm90ZWN0aW9uTWV0YS0+
aW5mbywgImVuY3J5cHRlZCIsICZlbmNyeXB0ZWQpKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpF
Q1Qoc2VsZiwgIkZhaWxlZCB0byBnZXQgZW5jcnlwdGVkIGZsYWciKTsKKyAgICAgICAgR1NUX0VM
RU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBlbmNyeXB0
ZWQgZmxhZyIpLCAobnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBP
UlRFRDsKICAgICB9CiAKQEAgLTI0OSw3ICsyNDksNyBAQCBzdGF0aWMgR3N0Rmxvd1JldHVybiB0
cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZlciogYnVmZmVy
KQogICAgIHVuc2lnbmVkIHN1YlNhbXBsZUNvdW50ID0gMDsKICAgICAvLyBjYmNzIGNvdWxkIG5v
dCBpbmNsdWRlIHRoZSBzdWJzYW1wbGVfY291bnQuCiAgICAgaWYgKCFnc3Rfc3RydWN0dXJlX2dl
dF91aW50KHByb3RlY3Rpb25NZXRhLT5pbmZvLCAic3Vic2FtcGxlX2NvdW50IiwgJnN1YlNhbXBs
ZUNvdW50KSAmJiAhaXNDYmNzKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZh
aWxlZCB0byBnZXQgc3Vic2FtcGxlX2NvdW50Iik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9S
KHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQgc3Vic2FtcGxlX2NvdW50Iiks
IChudWxscHRyKSk7CiAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAg
IH0KIApAQCAtMjU4LDEyICsyNTgsMTIgQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4gdHJhbnNmb3Jt
SW5QbGFjZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZlcikKICAgICBp
ZiAoc3ViU2FtcGxlQ291bnQpIHsKICAgICAgICAgdmFsdWUgPSBnc3Rfc3RydWN0dXJlX2dldF92
YWx1ZShwcm90ZWN0aW9uTWV0YS0+aW5mbywgInN1YnNhbXBsZXMiKTsKICAgICAgICAgaWYgKCF2
YWx1ZSkgewotICAgICAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiRmFpbGVkIHRvIGdl
dCBzdWJzYW1wbGVzIik7CisgICAgICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJF
QU0sIEZBSUxFRCwgKCJGYWlsZWQgdG8gZ2V0IHN1YnNhbXBsZXMiKSwgKG51bGxwdHIpKTsKICAg
ICAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgICAgICB9CiAgICAg
ICAgIHN1YlNhbXBsZXNCdWZmZXIgPSBnc3RfdmFsdWVfZ2V0X2J1ZmZlcih2YWx1ZSk7CiAgICAg
ICAgIGlmICghc3ViU2FtcGxlc0J1ZmZlcikgewotICAgICAgICAgICAgR1NUX0VSUk9SX09CSkVD
VChzZWxmLCAiVGhlcmUgaXMgbm8gc3Vic2FtcGxlcyBidWZmZXIsIGJ1dCBhIHBvc2l0aXZlIHN1
YnNhbXBsZSBjb3VudCIpOworICAgICAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RS
RUFNLCBGQUlMRUQsICgiVGhlcmUgaXMgbm8gc3Vic2FtcGxlcyBidWZmZXIsIGJ1dCBhIHBvc2l0
aXZlIHN1YnNhbXBsZSBjb3VudCIpLCAobnVsbHB0cikpOwogICAgICAgICAgICAgcmV0dXJuIEdT
VF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgICAgIH0KICAgICB9CkBAIC0yNzEsMTQgKzI3MSwx
NCBAQCBzdGF0aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zv
cm0qIGJhc2UsIEdzdEJ1ZmZlciogYnVmZmVyKQogICAgIHZhbHVlID0gZ3N0X3N0cnVjdHVyZV9n
ZXRfdmFsdWUocHJvdGVjdGlvbk1ldGEtPmluZm8sICJraWQiKTsKIAogICAgIGlmICghdmFsdWUp
IHsKLSAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiRmFpbGVkIHRvIGdldCBrZXkgaWQg
Zm9yIGJ1ZmZlciIpOworICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZB
SUxFRCwgKCJGYWlsZWQgdG8gZ2V0IGtleSBpZCBmb3IgYnVmZmVyIiksIChudWxscHRyKSk7CiAg
ICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KICAgICBHc3RCdWZm
ZXIqIGtleUlEQnVmZmVyID0gZ3N0X3ZhbHVlX2dldF9idWZmZXIodmFsdWUpOwogCiAgICAgdmFs
dWUgPSBnc3Rfc3RydWN0dXJlX2dldF92YWx1ZShwcm90ZWN0aW9uTWV0YS0+aW5mbywgIml2Iik7
CiAgICAgaWYgKCF2YWx1ZSkgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWls
ZWQgdG8gZ2V0IElWIGZvciBzYW1wbGUiKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2Vs
ZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBJViBmb3Igc2FtcGxlIiksIChudWxs
cHRyKSk7CiAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KIApA
QCAtMzA3LDcgKzMwNyw3IEBAIHN0YXRpYyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxhY2Uo
R3N0QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVyKiBidWZmZXIpCiAgICAgICAgICAgICBH
U1RfREVCVUdfT0JKRUNUKHNlbGYsICJEZWNyeXB0aW9uIGFib3J0ZWQgYmVjYXVzZSBvZiBmbHVz
aCIpOwogICAgICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX0ZMVVNISU5HOwogICAgICAgICB9Ci0g
ICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkRlY3J5cHRpb24gZmFpbGVkIik7CisgICAg
ICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgREVDUllQVCwgKCJEZWNyeXB0aW9u
IGZhaWxlZCIpLCAobnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBP
UlRFRDsKICAgICB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454479</attachid>
            <date>2022-03-11 06:20:11 -0800</date>
            <delta_ts>2022-03-14 05:33:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237602-20220311152009.patch</filename>
            <type>text/plain</type>
            <size>13256</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwODgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTU5MjBmZjdkZWZhZjkx
ODYwODZhYTViN2I0ODg4Yzk1NjNmNWM1Mi4uYzk1YTM1ZmFjMmIzOThjYTdhZDg3ODgxNTlmMGQw
OTY5M2I0NGMzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTExICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl0gY2xhcmlmeSBwbGF5YmFjayBlcnJvcnMgd2l0aCBNZWRpYUVycm9yLm1lc3NhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzYwMgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggaXMgY28tYXV0aG9yZWQgYnkgRXVnZW5lIE11dGF2Y2hpIDxJZXZnZW5fTXV0YXZjaGlAY29t
Y2FzdC5jb20+CisgICAgICAgIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL1dlYlBsYXRmb3JtRm9y
RW1iZWRkZWQvV1BFV2ViS2l0L3B1bGwvNzk3CisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwOiBVc2UgaW50ZXJuYWwgbGFzdCBlcnJvciBtZXNzYWdlIGZyb20gdGhlIHBsYXll
ciwgaWYgYXZhaWxhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmNwcDogQ2FjaGUgdGhlIGxhc3QgZXJyb3IgbWVzc2FnZSBmcm9tIHRoZSBwbGF5ZXIgcHJpdmF0
ZSBhbmQgdXBkYXRlIGl0IHdoZW4gTmV0d29ya1N0YXRlIGNoYW5nZXMgdG8gYW4gZXJyb3Igc3Rh
dGUuIFRoaXMgYWxsb3dzIHRoZSBwbGF5ZXIgcHJpdmF0ZSB0byBiZSByZWdlbmVyYXRlZCAoYXMg
aXQgaGFzIGFsd2F5cyBiZWVuKSB3aGlsZSBwcm92aWRpbmcgYWNjZXNzIHRvIHRoZSBmb3JtZXIg
cGxheWVyIHByaXZhdGUgZXJyb3IgYWZ0ZXIgdGhhdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllci5oOiBBZGRlZCBsYXN0RXJyb3JNZXNzYWdlKCkgbWV0aG9kIHRvIGdl
dCB0aGUgbGFzdCBpbnRlcm5hbCBlcnJvciBtZXNzYWdlIGZyb20gdGhlIHBsYXllciBwcml2YXRl
LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oOiBEZWZh
dWx0IGxhc3RFcnJvck1lc3NhZ2UoKSBlbXB0eSBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNw
cDogRGV0ZWN0IGRlY3J5cHRpb24gYW5kIG5vLWtleSBlcnJvcnMuCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oOiBBZGRl
ZCBlcnJvck1lc3NhZ2UoKSB0byBleHBvc2UgdGhlIGludGVybmFsIGVycm9yIG1lc3NhZ2UuCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNy
eXB0aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcDogUG9zdCBtdWx0aXBsZSBraW5kIG9mIGVycm9y
cyB0byB0aGUgR3N0QnVzIHRvIG5vdGlmeSB1cHBlciBsYXllcnMgaW5zdGVhZCBvZiBqdXN0IGxv
Z2dpbmcgdGhlbS4KKwogMjAyMi0wMy0wNyAgQWxiZXJ0byBHYXJjaWEgIDxiZXJ0b0BpZ2FsaWEu
Y29tPgogCiAgICAgICAgIG1ha2Vwcm9wLnBsIGJyZWFrcyByZXByb2R1Y2libGUgYnVpbGRzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAppbmRleCA2ODgzZDA0OTgwM2E5
NDE3YzA0MjI2NGNlNzk2Y2RiMmI3OGJjMWQ0Li4wOTU4NDEzYmYzMDQ0ZjBkNzhmYTZiYzYwNTA0
MmQzYzdhY2UwY2I4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAK
QEAgLTIxNzUsNyArMjE3NSw5IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bm9uZVN1cHBvcnRl
ZCgpCiAKICAgICAvLyA2LjEgLSBTZXQgdGhlIGVycm9yIGF0dHJpYnV0ZSB0byBhIG5ldyBNZWRp
YUVycm9yIG9iamVjdCB3aG9zZSBjb2RlIGF0dHJpYnV0ZSBpcyBzZXQgdG8KICAgICAvLyBNRURJ
QV9FUlJfU1JDX05PVF9TVVBQT1JURUQuCi0gICAgbV9lcnJvciA9IE1lZGlhRXJyb3I6OmNyZWF0
ZShNZWRpYUVycm9yOjpNRURJQV9FUlJfU1JDX05PVF9TVVBQT1JURUQsICJVbnN1cHBvcnRlZCBz
b3VyY2UgdHlwZSJfcyk7CisgICAgbV9lcnJvciA9IG1fcGxheWVyCisgICAgICAgID8gTWVkaWFF
cnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRCwgbV9w
bGF5ZXItPmxhc3RFcnJvck1lc3NhZ2UoKSkKKyAgICAgICAgOiBNZWRpYUVycm9yOjpjcmVhdGUo
TWVkaWFFcnJvcjo6TUVESUFfRVJSX1NSQ19OT1RfU1VQUE9SVEVELCAiVW5zdXBwb3J0ZWQgc291
cmNlIHR5cGUiX3MpOwogCiAgICAgLy8gNi4yIC0gRm9yZ2V0IHRoZSBtZWRpYSBlbGVtZW50J3Mg
bWVkaWEtcmVzb3VyY2Utc3BlY2lmaWMgdGV4dCB0cmFja3MuCiAgICAgZm9yZ2V0UmVzb3VyY2VT
cGVjaWZpY1RyYWNrcygpOwpAQCAtMjIxMywxMiArMjIxNSwyMSBAQCB2b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6Om1lZGlhTG9hZGluZ0ZhaWxlZEZhdGFsbHkoTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0
ZSBlcnJvcgogICAgIHN0b3BQZXJpb2RpY1RpbWVycygpOwogICAgIG1fbG9hZFN0YXRlID0gV2Fp
dGluZ0ZvclNvdXJjZTsKIAorICAgIGNvbnN0IGF1dG8gZ2V0RXJyb3JNZXNzYWdlID0gWyZdIChT
dHJpbmcgJiZkZWZhdWx0TWVzc2FnZSkgeworICAgICAgICBTdHJpbmcgbWVzc2FnZSA9IFdURk1v
dmUoZGVmYXVsdE1lc3NhZ2UpOworICAgICAgICBpZiAobV9wbGF5ZXIgJiYgIW1fcGxheWVyLT5s
YXN0RXJyb3JNZXNzYWdlKCkuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICBtZXNzYWdlLmFwcGVu
ZCgiOiAiKTsKKyAgICAgICAgICAgIG1lc3NhZ2UuYXBwZW5kKG1fcGxheWVyLT5sYXN0RXJyb3JN
ZXNzYWdlKCkpOworICAgICAgICB9CisgICAgICAgIHJldHVybiBtZXNzYWdlOworICAgIH07CisK
ICAgICAvLyAyIC0gU2V0IHRoZSBlcnJvciBhdHRyaWJ1dGUgdG8gYSBuZXcgTWVkaWFFcnJvciBv
YmplY3Qgd2hvc2UgY29kZSBhdHRyaWJ1dGUgaXMKICAgICAvLyBzZXQgdG8gTUVESUFfRVJSX05F
VFdPUksvTUVESUFfRVJSX0RFQ09ERS4KICAgICBpZiAoZXJyb3IgPT0gTWVkaWFQbGF5ZXI6Ok5l
dHdvcmtTdGF0ZTo6TmV0d29ya0Vycm9yKQotICAgICAgICBtX2Vycm9yID0gTWVkaWFFcnJvcjo6
Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9ORVRXT1JLLCAiTWVkaWEgZmFpbGVkIHRvIGxv
YWQiX3MpOworICAgICAgICBtX2Vycm9yID0gTWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6
Ok1FRElBX0VSUl9ORVRXT1JLLCBnZXRFcnJvck1lc3NhZ2UoIk1lZGlhIGZhaWxlZCB0byBsb2Fk
Il9zKSk7CiAgICAgZWxzZSBpZiAoZXJyb3IgPT0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6
RGVjb2RlRXJyb3IpCi0gICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFF
cnJvcjo6TUVESUFfRVJSX0RFQ09ERSwgIk1lZGlhIGZhaWxlZCB0byBkZWNvZGUiX3MpOworICAg
ICAgICBtX2Vycm9yID0gTWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9E
RUNPREUsIGdldEVycm9yTWVzc2FnZSgiTWVkaWEgZmFpbGVkIHRvIGRlY29kZSJfcykpOwogICAg
IGVsc2UKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCA0NTUwNTI5ZGQ1OTZm
NjJhY2VmZDk1ZmQ3MDE1YTFkMmM0NWZiOTU3Li42ZjQ5YWYwNDZkMTI0NjNhNGRlZmE5ZjE0ODlh
NzE1MzJhOGRhZjhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9NZWRpYVBsYXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
TWVkaWFQbGF5ZXIuY3BwCkBAIC0xMzMzLDYgKzEzMzMsNyBAQCB2b2lkIE1lZGlhUGxheWVyOjpu
ZXR3b3JrU3RhdGVDaGFuZ2VkKCkKICAgICAvLyBJZiBtb3JlIHRoYW4gb25lIG1lZGlhIGVuZ2lu
ZSBpcyBpbnN0YWxsZWQgYW5kIHRoaXMgb25lIGZhaWxlZCBiZWZvcmUgZmluZGluZyBtZXRhZGF0
YSwKICAgICAvLyBsZXQgdGhlIG5leHQgZW5naW5lIHRyeS4KICAgICBpZiAobV9wcml2YXRlLT5u
ZXR3b3JrU3RhdGUoKSA+PSBNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlOjpGb3JtYXRFcnJvciAm
JiBtX3ByaXZhdGUtPnJlYWR5U3RhdGUoKSA8IE1lZGlhUGxheWVyOjpSZWFkeVN0YXRlOjpIYXZl
TWV0YWRhdGEpIHsKKyAgICAgICAgbV9sYXN0RXJyb3JNZXNzYWdlID0gbV9wcml2YXRlLT5lcnJv
ck1lc3NhZ2UoKTsKICAgICAgICAgY2xpZW50KCkubWVkaWFQbGF5ZXJFbmdpbmVGYWlsZWRUb0xv
YWQoKTsKICAgICAgICAgaWYgKCFtX2FjdGl2ZUVuZ2luZUlkZW50aWZpZXIgJiYgaW5zdGFsbGVk
TWVkaWFFbmdpbmVzKCkuc2l6ZSgpID4gMSAmJiAobV9jb250ZW50VHlwZS5pc0VtcHR5KCkgfHwg
bmV4dEJlc3RNZWRpYUVuZ2luZShtX2N1cnJlbnRNZWRpYUVuZ2luZSkpKSB7CiAgICAgICAgICAg
ICBtX3JlbG9hZFRpbWVyLnN0YXJ0T25lU2hvdCgwX3MpOwpAQCAtMTkxMiw2ICsxOTEzLDExIEBA
IFN0cmluZyBjb252ZXJ0RW51bWVyYXRpb25Ub1N0cmluZyhNZWRpYVBsYXllcjo6QnVmZmVyaW5n
UG9saWN5IGVudW1lcmF0aW9uVmFsdWUpCiAgICAgcmV0dXJuIHZhbHVlc1tzdGF0aWNfY2FzdDxz
aXplX3Q+KGVudW1lcmF0aW9uVmFsdWUpXTsKIH0KIAorU3RyaW5nIE1lZGlhUGxheWVyOjpsYXN0
RXJyb3JNZXNzYWdlKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9sYXN0RXJyb3JNZXNzYWdlOwor
fQorCiB9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01l
ZGlhUGxheWVyLmgKaW5kZXggMjI0NGM4YjFhYzlkYjA0MDdlNGFmNzYwNjFkYTIxMjVkNGVlZjY0
NS4uOGUyNzFkYjdkZDhlOTM3NTdhZjBhY2UyMTI1OWE3ZDlhMDQzODM0ZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCkBAIC02OTcsNiArNjk3
LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBwbGF5ZXJDb250ZW50Qm94UmVjdENoYW5nZWQoY29u
c3QgTGF5b3V0UmVjdCYpOwogCisgICAgU3RyaW5nIGxhc3RFcnJvck1lc3NhZ2UoKSBjb25zdDsK
KwogcHJpdmF0ZToKICAgICBNZWRpYVBsYXllcihNZWRpYVBsYXllckNsaWVudCYpOwogICAgIE1l
ZGlhUGxheWVyKE1lZGlhUGxheWVyQ2xpZW50JiwgTWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdp
bmVJZGVudGlmaWVyKTsKQEAgLTc0MSw2ICs3NDMsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9z
aG91bGRDb250aW51ZUFmdGVyS2V5TmVlZGVkIHsgZmFsc2UgfTsKICNlbmRpZgogICAgIGJvb2wg
bV9pc0dhdGhlcmluZ1ZpZGVvRnJhbWVNZXRhZGF0YSB7IGZhbHNlIH07CisgICAgU3RyaW5nIG1f
bGFzdEVycm9yTWVzc2FnZTsKIH07CiAKIGNsYXNzIE1lZGlhUGxheWVyRmFjdG9yeSB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZh
dGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0
ZS5oCmluZGV4IDMwNWFjNWNlMjBiYTU0NzViNTVhMWZkM2Q5MzMwYTAyM2VhOWJhZDAuLmJjODU1
ZTNlMjU5YzViZjc1ZTBmY2U2NTI2ZTdhYjA2N2EyNGQyYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCkBAIC0zMjks
NiArMzI5LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBwbGF5ZXJDb250ZW50Qm94UmVj
dENoYW5nZWQoY29uc3QgTGF5b3V0UmVjdCYpIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIHNldFJl
c291cmNlT3duZXIoY29uc3QgUHJvY2Vzc0lkZW50aXR5JikgeyB9CisKKyAgICB2aXJ0dWFsIFN0
cmluZyBlcnJvck1lc3NhZ2UoKSBjb25zdCB7IHJldHVybiB7IH07IH0KIH07CiAKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBs
YXllclByaXZhdGVHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXggNTc5YTEz
MzE0MGZmZTc0YmRkMTExYjgwYmNlYmNlNmE3NDBlMjQ0MS4uMTk2MTc0OWQxOTg4Y2FiZTVhMDFk
NmY3NmZhMmI0ZGI5YjVhOWM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJp
dmF0ZUdTdHJlYW1lci5jcHAKQEAgLTE3MTMsOCArMTcxMywxMiBAQCB2b2lkIE1lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lcjo6aGFuZGxlTWVzc2FnZShHc3RNZXNzYWdlKiBtZXNzYWdlKQogICAg
ICAgICBnc3RfbWVzc2FnZV9wYXJzZV9lcnJvcihtZXNzYWdlLCAmZXJyLm91dFB0cigpLCAmZGVi
dWcub3V0UHRyKCkpOwogICAgICAgICBHU1RfRVJST1IoIkVycm9yICVkOiAlcyAodXJsPSVzKSIs
IGVyci0+Y29kZSwgZXJyLT5tZXNzYWdlLCBtX3VybC5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsK
IAorICAgICAgICBtX2Vycm9yTWVzc2FnZSA9IGVyci0+bWVzc2FnZTsKKwogICAgICAgICBlcnJv
ciA9IE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGU6OkVtcHR5OwogICAgICAgICBpZiAoZ19lcnJv
cl9tYXRjaGVzKGVyci5nZXQoKSwgR1NUX1NUUkVBTV9FUlJPUiwgR1NUX1NUUkVBTV9FUlJPUl9D
T0RFQ19OT1RfRk9VTkQpCisgICAgICAgICAgICB8fCBnX2Vycm9yX21hdGNoZXMoZXJyLmdldCgp
LCBHU1RfU1RSRUFNX0VSUk9SLCBHU1RfU1RSRUFNX0VSUk9SX0RFQ1JZUFQpCisgICAgICAgICAg
ICB8fCBnX2Vycm9yX21hdGNoZXMoZXJyLmdldCgpLCBHU1RfU1RSRUFNX0VSUk9SLCBHU1RfU1RS
RUFNX0VSUk9SX0RFQ1JZUFRfTk9LRVkpCiAgICAgICAgICAgICB8fCBnX2Vycm9yX21hdGNoZXMo
ZXJyLmdldCgpLCBHU1RfU1RSRUFNX0VSUk9SLCBHU1RfU1RSRUFNX0VSUk9SX1dST05HX1RZUEUp
CiAgICAgICAgICAgICB8fCBnX2Vycm9yX21hdGNoZXMoZXJyLmdldCgpLCBHU1RfU1RSRUFNX0VS
Uk9SLCBHU1RfU1RSRUFNX0VSUk9SX0ZBSUxFRCkKICAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0
Y2hlcyhlcnIuZ2V0KCksIEdTVF9DT1JFX0VSUk9SLCBHU1RfQ09SRV9FUlJPUl9NSVNTSU5HX1BM
VUdJTikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAppbmRl
eCBlMzgwNzViMmZjMjZkOTQzYmY5YTAwNjU0MzNjN2JiYWFlNWUwNjIzLi4wNzA5YTA5NGJkN2Ey
M2UyODVlODFiNWM1Y2RhNDUyODM1MjUyMzcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lci5oCkBAIC0zODgsNiArMzg4LDggQEAgcHJvdGVjdGVkOgogCiAg
ICAgc3RkOjpvcHRpb25hbDxHc3RWaWRlb0RlY29kZXJQbGF0Zm9ybT4gbV92aWRlb0RlY29kZXJQ
bGF0Zm9ybTsKIAorICAgIFN0cmluZyBlcnJvck1lc3NhZ2UoKSBjb25zdCBvdmVycmlkZSB7IHJl
dHVybiBtX2Vycm9yTWVzc2FnZTsgfQorCiBwcml2YXRlOgogICAgIGNsYXNzIFRhc2tBdE1lZGlh
VGltZVNjaGVkdWxlciB7CiAgICAgcHVibGljOgpAQCAtNTczLDYgKzU3NSw3IEBAIHByaXZhdGU6
CiAgICAgUmVmPGNvbnN0IExvZ2dlcj4gbV9sb2dnZXI7CiAgICAgY29uc3Qgdm9pZCogbV9sb2dJ
ZGVudGlmaWVyOwogI2VuZGlmCisgICAgU3RyaW5nIG1fZXJyb3JNZXNzYWdlOwogfTsKIAogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2Vt
ZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlw
dGlvbkRlY3J5cHRvckdTdHJlYW1lci5jcHAKaW5kZXggMTFkZjNkNzk3ZWU4YjQ3ZTlhYTU0ZDNm
YTZkODJlY2YxZWIzODU5My4uZmE1MmI0ZTc0YzU2ZDdlMmU1NTEwZjc4NmM5NTYxMGZlZjVjODE4
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVy
L2VtZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1v
bkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwCkBAIC0yMTAsNyArMjEwLDcgQEAgc3Rh
dGljIEdzdEZsb3dSZXR1cm4gdHJhbnNmb3JtSW5QbGFjZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNl
LCBHc3RCdWZmZXIqIGJ1ZmZlcikKICAgICAgICAgICAgIHJldHVybiBHU1RfRkxPV19GTFVTSElO
RzsKICAgICAgICAgfQogICAgICAgICBpZiAoIXByaXYtPmNkbVByb3h5KSB7Ci0gICAgICAgICAg
ICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJDRE1Qcm94eSB3YXMgbm90IHJldHJpZXZlZCBpbiB0
aW1lIik7CisgICAgICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxF
RCwgKCJDRE1Qcm94eSB3YXMgbm90IHJldHJpZXZlZCBpbiB0aW1lIiksIChudWxscHRyKSk7CiAg
ICAgICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICAgICAgfQogICAg
ICAgICBHU1RfREVCVUdfT0JKRUNUKHNlbGYsICJDRE0gbm93IGF2YWlsYWJsZSB3aXRoIGFkZHJl
c3MgJXAiLCBwcml2LT5jZG1Qcm94eS5nZXQoKSk7CkBAIC0yMjQsMTggKzIyNCwxOCBAQCBzdGF0
aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2Us
IEdzdEJ1ZmZlciogYnVmZmVyKQogCiAgICAgdW5zaWduZWQgaXZTaXplOwogICAgIGlmICghZ3N0
X3N0cnVjdHVyZV9nZXRfdWludChwcm90ZWN0aW9uTWV0YS0+aW5mbywgIml2X3NpemUiLCAmaXZT
aXplKSkgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IGl2
X3NpemUiKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQs
ICgiRmFpbGVkIHRvIGdldCBpdl9zaXplIiksIChudWxscHRyKSk7CiAgICAgICAgIHJldHVybiBH
U1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KICAgICBpZiAoIWl2U2l6ZSAmJiAhZ3N0X3N0
cnVjdHVyZV9nZXRfdWludChwcm90ZWN0aW9uTWV0YS0+aW5mbywgImNvbnN0YW50X2l2X3NpemUi
LCAmaXZTaXplKSkgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJObyBpdl9zaXpl
IGFuZCBmYWlsZWQgdG8gZ2V0IGNvbnN0YW50X2l2X3NpemUiKTsKKyAgICAgICAgR1NUX0VMRU1F
TlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiTm8gaXZfc2l6ZSBhbmQgZmFpbGVkIHRv
IGdldCBjb25zdGFudF9pdl9zaXplIiksIChudWxscHRyKSk7CiAgICAgICAgIEFTU0VSVChpc0Ni
Y3MpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAKICAg
ICBnYm9vbGVhbiBlbmNyeXB0ZWQ7CiAgICAgaWYgKCFnc3Rfc3RydWN0dXJlX2dldF9ib29sZWFu
KHByb3RlY3Rpb25NZXRhLT5pbmZvLCAiZW5jcnlwdGVkIiwgJmVuY3J5cHRlZCkpIHsKLSAgICAg
ICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiRmFpbGVkIHRvIGdldCBlbmNyeXB0ZWQgZmxhZyIp
OworICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJGYWls
ZWQgdG8gZ2V0IGVuY3J5cHRlZCBmbGFnIiksIChudWxscHRyKSk7CiAgICAgICAgIHJldHVybiBH
U1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KIApAQCAtMjQ5LDcgKzI0OSw3IEBAIHN0YXRp
YyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5zZm9ybSogYmFzZSwg
R3N0QnVmZmVyKiBidWZmZXIpCiAgICAgdW5zaWduZWQgc3ViU2FtcGxlQ291bnQgPSAwOwogICAg
IC8vIGNiY3MgY291bGQgbm90IGluY2x1ZGUgdGhlIHN1YnNhbXBsZV9jb3VudC4KICAgICBpZiAo
IWdzdF9zdHJ1Y3R1cmVfZ2V0X3VpbnQocHJvdGVjdGlvbk1ldGEtPmluZm8sICJzdWJzYW1wbGVf
Y291bnQiLCAmc3ViU2FtcGxlQ291bnQpICYmICFpc0NiY3MpIHsKLSAgICAgICAgR1NUX0VSUk9S
X09CSkVDVChzZWxmLCAiRmFpbGVkIHRvIGdldCBzdWJzYW1wbGVfY291bnQiKTsKKyAgICAgICAg
R1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBz
dWJzYW1wbGVfY291bnQiKSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05P
VF9TVVBQT1JURUQ7CiAgICAgfQogCkBAIC0yNTgsMTIgKzI1OCwxMiBAQCBzdGF0aWMgR3N0Rmxv
d1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZl
ciogYnVmZmVyKQogICAgIGlmIChzdWJTYW1wbGVDb3VudCkgewogICAgICAgICB2YWx1ZSA9IGdz
dF9zdHJ1Y3R1cmVfZ2V0X3ZhbHVlKHByb3RlY3Rpb25NZXRhLT5pbmZvLCAic3Vic2FtcGxlcyIp
OwogICAgICAgICBpZiAoIXZhbHVlKSB7Ci0gICAgICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNl
bGYsICJGYWlsZWQgdG8gZ2V0IHN1YnNhbXBsZXMiKTsKKyAgICAgICAgICAgIEdTVF9FTEVNRU5U
X0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQgc3Vic2FtcGxlcyIp
LCAobnVsbHB0cikpOwogICAgICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9TVVBQT1JURUQ7
CiAgICAgICAgIH0KICAgICAgICAgc3ViU2FtcGxlc0J1ZmZlciA9IGdzdF92YWx1ZV9nZXRfYnVm
ZmVyKHZhbHVlKTsKICAgICAgICAgaWYgKCFzdWJTYW1wbGVzQnVmZmVyKSB7Ci0gICAgICAgICAg
ICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJUaGVyZSBpcyBubyBzdWJzYW1wbGVzIGJ1ZmZlciwg
YnV0IGEgcG9zaXRpdmUgc3Vic2FtcGxlIGNvdW50Iik7CisgICAgICAgICAgICBHU1RfRUxFTUVO
VF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJUaGVyZSBpcyBubyBzdWJzYW1wbGVzIGJ1
ZmZlciwgYnV0IGEgcG9zaXRpdmUgc3Vic2FtcGxlIGNvdW50IiksIChudWxscHRyKSk7CiAgICAg
ICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICAgICAgfQogICAgIH0K
QEAgLTI3MSwxNCArMjcxLDE0IEBAIHN0YXRpYyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxh
Y2UoR3N0QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVyKiBidWZmZXIpCiAgICAgdmFsdWUg
PSBnc3Rfc3RydWN0dXJlX2dldF92YWx1ZShwcm90ZWN0aW9uTWV0YS0+aW5mbywgImtpZCIpOwog
CiAgICAgaWYgKCF2YWx1ZSkgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWls
ZWQgdG8gZ2V0IGtleSBpZCBmb3IgYnVmZmVyIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9S
KHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQga2V5IGlkIGZvciBidWZmZXIi
KSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9TVVBQT1JURUQ7CiAg
ICAgfQogICAgIEdzdEJ1ZmZlcioga2V5SURCdWZmZXIgPSBnc3RfdmFsdWVfZ2V0X2J1ZmZlcih2
YWx1ZSk7CiAKICAgICB2YWx1ZSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X3ZhbHVlKHByb3RlY3Rpb25N
ZXRhLT5pbmZvLCAiaXYiKTsKICAgICBpZiAoIXZhbHVlKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9P
QkpFQ1Qoc2VsZiwgIkZhaWxlZCB0byBnZXQgSVYgZm9yIHNhbXBsZSIpOworICAgICAgICBHU1Rf
RUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJGYWlsZWQgdG8gZ2V0IElWIGZv
ciBzYW1wbGUiKSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9TVVBQ
T1JURUQ7CiAgICAgfQogCkBAIC0zMDcsNyArMzA3LDcgQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4g
dHJhbnNmb3JtSW5QbGFjZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZl
cikKICAgICAgICAgICAgIEdTVF9ERUJVR19PQkpFQ1Qoc2VsZiwgIkRlY3J5cHRpb24gYWJvcnRl
ZCBiZWNhdXNlIG9mIGZsdXNoIik7CiAgICAgICAgICAgICByZXR1cm4gR1NUX0ZMT1dfRkxVU0hJ
Tkc7CiAgICAgICAgIH0KLSAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiRGVjcnlwdGlv
biBmYWlsZWQiKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBERUNS
WVBULCAoIkRlY3J5cHRpb24gZmFpbGVkIiksIChudWxscHRyKSk7CiAgICAgICAgIHJldHVybiBH
U1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454583</attachid>
            <date>2022-03-14 05:33:43 -0700</date>
            <delta_ts>2022-03-15 06:06:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237602-20220314133342.patch</filename>
            <type>text/plain</type>
            <size>13300</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkwODgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTU5MjBmZjdkZWZhZjkx
ODYwODZhYTViN2I0ODg4Yzk1NjNmNWM1Mi4uNjRhZjZhYTEzYWVkNTk3ZDgyMzEwM2NkNWQzMTBi
MDAzZWFjNWEzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTE0ICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl0gY2xhcmlmeSBwbGF5YmFjayBlcnJvcnMgd2l0aCBNZWRpYUVycm9yLm1lc3NhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzYwMgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggaXMgY28tYXV0aG9yZWQgYnkgRXVnZW5lIE11dGF2Y2hpIDxJZXZnZW5fTXV0YXZjaGlAY29t
Y2FzdC5jb20+CisgICAgICAgIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL1dlYlBsYXRmb3JtRm9y
RW1iZWRkZWQvV1BFV2ViS2l0L3B1bGwvNzk3CisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwOiBVc2UgaW50ZXJuYWwgbGFzdCBlcnJvciBtZXNzYWdlIGZyb20gdGhlIHBsYXll
ciwgaWYgYXZhaWxhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmNwcDogQ2FjaGUgdGhlIGxhc3QgZXJyb3IgbWVzc2FnZSBmcm9tIHRoZSBwbGF5ZXIgcHJpdmF0
ZSBhbmQgdXBkYXRlIGl0IHdoZW4gTmV0d29ya1N0YXRlIGNoYW5nZXMgdG8gYW4gZXJyb3Igc3Rh
dGUuIFRoaXMgYWxsb3dzIHRoZSBwbGF5ZXIgcHJpdmF0ZSB0byBiZSByZWdlbmVyYXRlZCAoYXMg
aXQgaGFzIGFsd2F5cyBiZWVuKSB3aGlsZSBwcm92aWRpbmcgYWNjZXNzIHRvIHRoZSBmb3JtZXIg
cGxheWVyIHByaXZhdGUgZXJyb3IgYWZ0ZXIgdGhhdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllci5oOiBBZGRlZCBsYXN0RXJyb3JNZXNzYWdlKCkgbWV0aG9kIHRvIGdl
dCB0aGUgbGFzdCBpbnRlcm5hbCBlcnJvciBtZXNzYWdlIGZyb20gdGhlIHBsYXllciBwcml2YXRl
LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oOiBEZWZh
dWx0IGxhc3RFcnJvck1lc3NhZ2UoKSBlbXB0eSBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNw
cDogRGV0ZWN0IGRlY3J5cHRpb24gYW5kIG5vLWtleSBlcnJvcnMuCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oOiBBZGRl
ZCBlcnJvck1lc3NhZ2UoKSB0byBleHBvc2UgdGhlIGludGVybmFsIGVycm9yIG1lc3NhZ2UuCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNy
eXB0aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcDogUG9zdCBtdWx0aXBsZSBraW5kIG9mIGVycm9y
cyB0byB0aGUgR3N0QnVzIHRvIG5vdGlmeSB1cHBlciBsYXllcnMgaW5zdGVhZCBvZiBqdXN0IGxv
Z2dpbmcgdGhlbS4KKwogMjAyMi0wMy0wNyAgQWxiZXJ0byBHYXJjaWEgIDxiZXJ0b0BpZ2FsaWEu
Y29tPgogCiAgICAgICAgIG1ha2Vwcm9wLnBsIGJyZWFrcyByZXByb2R1Y2libGUgYnVpbGRzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAppbmRleCA2ODgzZDA0OTgwM2E5
NDE3YzA0MjI2NGNlNzk2Y2RiMmI3OGJjMWQ0Li43ZDNmZTgwNjI3NGQ0NTZhOTExZDNjM2Q5Yzk3
OTRmYWIyYzI5ZTcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAK
QEAgLTIxNzUsNyArMjE3NSw5IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6bm9uZVN1cHBvcnRl
ZCgpCiAKICAgICAvLyA2LjEgLSBTZXQgdGhlIGVycm9yIGF0dHJpYnV0ZSB0byBhIG5ldyBNZWRp
YUVycm9yIG9iamVjdCB3aG9zZSBjb2RlIGF0dHJpYnV0ZSBpcyBzZXQgdG8KICAgICAvLyBNRURJ
QV9FUlJfU1JDX05PVF9TVVBQT1JURUQuCi0gICAgbV9lcnJvciA9IE1lZGlhRXJyb3I6OmNyZWF0
ZShNZWRpYUVycm9yOjpNRURJQV9FUlJfU1JDX05PVF9TVVBQT1JURUQsICJVbnN1cHBvcnRlZCBz
b3VyY2UgdHlwZSJfcyk7CisgICAgbV9lcnJvciA9IG1fcGxheWVyCisgICAgICAgID8gTWVkaWFF
cnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRCwgbV9w
bGF5ZXItPmxhc3RFcnJvck1lc3NhZ2UoKSkKKyAgICAgICAgOiBNZWRpYUVycm9yOjpjcmVhdGUo
TWVkaWFFcnJvcjo6TUVESUFfRVJSX1NSQ19OT1RfU1VQUE9SVEVELCAiVW5zdXBwb3J0ZWQgc291
cmNlIHR5cGUiX3MpOwogCiAgICAgLy8gNi4yIC0gRm9yZ2V0IHRoZSBtZWRpYSBlbGVtZW50J3Mg
bWVkaWEtcmVzb3VyY2Utc3BlY2lmaWMgdGV4dCB0cmFja3MuCiAgICAgZm9yZ2V0UmVzb3VyY2VT
cGVjaWZpY1RyYWNrcygpOwpAQCAtMjIxMywxMiArMjIxNSwyNCBAQCB2b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6Om1lZGlhTG9hZGluZ0ZhaWxlZEZhdGFsbHkoTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0
ZSBlcnJvcgogICAgIHN0b3BQZXJpb2RpY1RpbWVycygpOwogICAgIG1fbG9hZFN0YXRlID0gV2Fp
dGluZ0ZvclNvdXJjZTsKIAorICAgIGNvbnN0IGF1dG8gZ2V0RXJyb3JNZXNzYWdlID0gWyZdIChT
dHJpbmcmJiBkZWZhdWx0TWVzc2FnZSkgeworICAgICAgICBTdHJpbmcgbWVzc2FnZSA9IFdURk1v
dmUoZGVmYXVsdE1lc3NhZ2UpOworICAgICAgICBpZiAoIW1fcGxheWVyKQorICAgICAgICAgICAg
cmV0dXJuIG1lc3NhZ2U7CisKKyAgICAgICAgYXV0byBsYXN0RXJyb3JNZXNzYWdlID0gbV9wbGF5
ZXItPmxhc3RFcnJvck1lc3NhZ2UoKTsKKyAgICAgICAgaWYgKCFsYXN0RXJyb3JNZXNzYWdlKQor
ICAgICAgICAgICAgcmV0dXJuIG1lc3NhZ2U7CisKKyAgICAgICAgcmV0dXJuIG1ha2VTdHJpbmco
bWVzc2FnZSwgIjogIiwgbGFzdEVycm9yTWVzc2FnZSk7CisgICAgfTsKKwogICAgIC8vIDIgLSBT
ZXQgdGhlIGVycm9yIGF0dHJpYnV0ZSB0byBhIG5ldyBNZWRpYUVycm9yIG9iamVjdCB3aG9zZSBj
b2RlIGF0dHJpYnV0ZSBpcwogICAgIC8vIHNldCB0byBNRURJQV9FUlJfTkVUV09SSy9NRURJQV9F
UlJfREVDT0RFLgogICAgIGlmIChlcnJvciA9PSBNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlOjpO
ZXR3b3JrRXJyb3IpCi0gICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFF
cnJvcjo6TUVESUFfRVJSX05FVFdPUkssICJNZWRpYSBmYWlsZWQgdG8gbG9hZCJfcyk7CisgICAg
ICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX05F
VFdPUkssIGdldEVycm9yTWVzc2FnZSgiTWVkaWEgZmFpbGVkIHRvIGxvYWQiX3MpKTsKICAgICBl
bHNlIGlmIChlcnJvciA9PSBNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlOjpEZWNvZGVFcnJvcikK
LSAgICAgICAgbV9lcnJvciA9IE1lZGlhRXJyb3I6OmNyZWF0ZShNZWRpYUVycm9yOjpNRURJQV9F
UlJfREVDT0RFLCAiTWVkaWEgZmFpbGVkIHRvIGRlY29kZSJfcyk7CisgICAgICAgIG1fZXJyb3Ig
PSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX0RFQ09ERSwgZ2V0RXJy
b3JNZXNzYWdlKCJNZWRpYSBmYWlsZWQgdG8gZGVjb2RlIl9zKSk7CiAgICAgZWxzZQogICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCmluZGV4IDQ1NTA1MjlkZDU5NmY2MmFjZWZkOTVmZDcw
MTVhMWQyYzQ1ZmI5NTcuLjZmNDlhZjA0NmQxMjQ2M2E0ZGVmYTlmMTQ4OWE3MTUzMmE4ZGFmOGEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5j
cHAKQEAgLTEzMzMsNiArMTMzMyw3IEBAIHZvaWQgTWVkaWFQbGF5ZXI6Om5ldHdvcmtTdGF0ZUNo
YW5nZWQoKQogICAgIC8vIElmIG1vcmUgdGhhbiBvbmUgbWVkaWEgZW5naW5lIGlzIGluc3RhbGxl
ZCBhbmQgdGhpcyBvbmUgZmFpbGVkIGJlZm9yZSBmaW5kaW5nIG1ldGFkYXRhLAogICAgIC8vIGxl
dCB0aGUgbmV4dCBlbmdpbmUgdHJ5LgogICAgIGlmIChtX3ByaXZhdGUtPm5ldHdvcmtTdGF0ZSgp
ID49IE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGU6OkZvcm1hdEVycm9yICYmIG1fcHJpdmF0ZS0+
cmVhZHlTdGF0ZSgpIDwgTWVkaWFQbGF5ZXI6OlJlYWR5U3RhdGU6OkhhdmVNZXRhZGF0YSkgewor
ICAgICAgICBtX2xhc3RFcnJvck1lc3NhZ2UgPSBtX3ByaXZhdGUtPmVycm9yTWVzc2FnZSgpOwog
ICAgICAgICBjbGllbnQoKS5tZWRpYVBsYXllckVuZ2luZUZhaWxlZFRvTG9hZCgpOwogICAgICAg
ICBpZiAoIW1fYWN0aXZlRW5naW5lSWRlbnRpZmllciAmJiBpbnN0YWxsZWRNZWRpYUVuZ2luZXMo
KS5zaXplKCkgPiAxICYmIChtX2NvbnRlbnRUeXBlLmlzRW1wdHkoKSB8fCBuZXh0QmVzdE1lZGlh
RW5naW5lKG1fY3VycmVudE1lZGlhRW5naW5lKSkpIHsKICAgICAgICAgICAgIG1fcmVsb2FkVGlt
ZXIuc3RhcnRPbmVTaG90KDBfcyk7CkBAIC0xOTEyLDYgKzE5MTMsMTEgQEAgU3RyaW5nIGNvbnZl
cnRFbnVtZXJhdGlvblRvU3RyaW5nKE1lZGlhUGxheWVyOjpCdWZmZXJpbmdQb2xpY3kgZW51bWVy
YXRpb25WYWx1ZSkKICAgICByZXR1cm4gdmFsdWVzW3N0YXRpY19jYXN0PHNpemVfdD4oZW51bWVy
YXRpb25WYWx1ZSldOwogfQogCitTdHJpbmcgTWVkaWFQbGF5ZXI6Omxhc3RFcnJvck1lc3NhZ2Uo
KSBjb25zdAoreworICAgIHJldHVybiBtX2xhc3RFcnJvck1lc3NhZ2U7Cit9CisKIH0KIAogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBs
YXllci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaApp
bmRleCAyMjQ0YzhiMWFjOWRiMDQwN2U0YWY3NjA2MWRhMjEyNWQ0ZWVmNjQ1Li44ZTI3MWRiN2Rk
OGU5Mzc1N2FmMGFjZTIxMjU5YTdkOWEwNDM4MzRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKQEAgLTY5Nyw2ICs2OTcsOCBAQCBwdWJsaWM6
CiAKICAgICB2b2lkIHBsYXllckNvbnRlbnRCb3hSZWN0Q2hhbmdlZChjb25zdCBMYXlvdXRSZWN0
Jik7CiAKKyAgICBTdHJpbmcgbGFzdEVycm9yTWVzc2FnZSgpIGNvbnN0OworCiBwcml2YXRlOgog
ICAgIE1lZGlhUGxheWVyKE1lZGlhUGxheWVyQ2xpZW50Jik7CiAgICAgTWVkaWFQbGF5ZXIoTWVk
aWFQbGF5ZXJDbGllbnQmLCBNZWRpYVBsYXllckVudW1zOjpNZWRpYUVuZ2luZUlkZW50aWZpZXIp
OwpAQCAtNzQxLDYgKzc0Myw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3Nob3VsZENvbnRpbnVl
QWZ0ZXJLZXlOZWVkZWQgeyBmYWxzZSB9OwogI2VuZGlmCiAgICAgYm9vbCBtX2lzR2F0aGVyaW5n
VmlkZW9GcmFtZU1ldGFkYXRhIHsgZmFsc2UgfTsKKyAgICBTdHJpbmcgbV9sYXN0RXJyb3JNZXNz
YWdlOwogfTsKIAogY2xhc3MgTWVkaWFQbGF5ZXJGYWN0b3J5IHsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKaW5kZXggMzA1
YWM1Y2UyMGJhNTQ3NWI1NWExZmQzZDkzMzBhMDIzZWE5YmFkMC4uYmM4NTVlM2UyNTljNWJmNzVl
MGZjZTY1MjZlN2FiMDY3YTI0ZDJjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKQEAgLTMyOSw2ICszMjksOCBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHBsYXllckNvbnRlbnRCb3hSZWN0Q2hhbmdlZChjb25z
dCBMYXlvdXRSZWN0JikgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgc2V0UmVzb3VyY2VPd25lcihj
b25zdCBQcm9jZXNzSWRlbnRpdHkmKSB7IH0KKworICAgIHZpcnR1YWwgU3RyaW5nIGVycm9yTWVz
c2FnZSgpIGNvbnN0IHsgcmV0dXJuIHsgfTsgfQogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdT
dHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcAppbmRleCA1NzlhMTMzMTQwZmZlNzRiZGQx
MTFiODBiY2ViY2U2YTc0MGUyNDQxLi4xOTYxNzQ5ZDE5ODhjYWJlNWEwMWQ2Zjc2ZmEyYjRkYjli
NWE5YzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
LmNwcApAQCAtMTcxMyw4ICsxNzEzLDEyIEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyOjpoYW5kbGVNZXNzYWdlKEdzdE1lc3NhZ2UqIG1lc3NhZ2UpCiAgICAgICAgIGdzdF9tZXNz
YWdlX3BhcnNlX2Vycm9yKG1lc3NhZ2UsICZlcnIub3V0UHRyKCksICZkZWJ1Zy5vdXRQdHIoKSk7
CiAgICAgICAgIEdTVF9FUlJPUigiRXJyb3IgJWQ6ICVzICh1cmw9JXMpIiwgZXJyLT5jb2RlLCBl
cnItPm1lc3NhZ2UsIG1fdXJsLnN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwogCisgICAgICAgIG1f
ZXJyb3JNZXNzYWdlID0gZXJyLT5tZXNzYWdlOworCiAgICAgICAgIGVycm9yID0gTWVkaWFQbGF5
ZXI6Ok5ldHdvcmtTdGF0ZTo6RW1wdHk7CiAgICAgICAgIGlmIChnX2Vycm9yX21hdGNoZXMoZXJy
LmdldCgpLCBHU1RfU1RSRUFNX0VSUk9SLCBHU1RfU1RSRUFNX0VSUk9SX0NPREVDX05PVF9GT1VO
RCkKKyAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCksIEdTVF9TVFJFQU1f
RVJST1IsIEdTVF9TVFJFQU1fRVJST1JfREVDUllQVCkKKyAgICAgICAgICAgIHx8IGdfZXJyb3Jf
bWF0Y2hlcyhlcnIuZ2V0KCksIEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJFQU1fRVJST1JfREVD
UllQVF9OT0tFWSkKICAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCksIEdT
VF9TVFJFQU1fRVJST1IsIEdTVF9TVFJFQU1fRVJST1JfV1JPTkdfVFlQRSkKICAgICAgICAgICAg
IHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCksIEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJF
QU1fRVJST1JfRkFJTEVEKQogICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRjaGVzKGVyci5nZXQo
KSwgR1NUX0NPUkVfRVJST1IsIEdTVF9DT1JFX0VSUk9SX01JU1NJTkdfUExVR0lOKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCmluZGV4IGUzODA3NWIyZmMy
NmQ5NDNiZjlhMDA2NTQzM2M3YmJhYWU1ZTA2MjMuLjA3MDlhMDk0YmQ3YTIzZTI4NWU4MWI1YzVj
ZGE0NTI4MzUyNTIzNzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0
cmVhbWVyLmgKQEAgLTM4OCw2ICszODgsOCBAQCBwcm90ZWN0ZWQ6CiAKICAgICBzdGQ6Om9wdGlv
bmFsPEdzdFZpZGVvRGVjb2RlclBsYXRmb3JtPiBtX3ZpZGVvRGVjb2RlclBsYXRmb3JtOwogCisg
ICAgU3RyaW5nIGVycm9yTWVzc2FnZSgpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fZXJyb3JN
ZXNzYWdlOyB9CisKIHByaXZhdGU6CiAgICAgY2xhc3MgVGFza0F0TWVkaWFUaW1lU2NoZWR1bGVy
IHsKICAgICBwdWJsaWM6CkBAIC01NzMsNiArNTc1LDcgQEAgcHJpdmF0ZToKICAgICBSZWY8Y29u
c3QgTG9nZ2VyPiBtX2xvZ2dlcjsKICAgICBjb25zdCB2b2lkKiBtX2xvZ0lkZW50aWZpZXI7CiAj
ZW5kaWYKKyAgICBTdHJpbmcgbV9lcnJvck1lc3NhZ2U7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1v
bkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlwdG9y
R1N0cmVhbWVyLmNwcAppbmRleCAxMWRmM2Q3OTdlZThiNDdlOWFhNTRkM2ZhNmQ4MmVjZjFlYjM4
NTkzLi5mYTUyYjRlNzRjNTZkN2UyZTU1MTBmNzg2Yzk1NjEwZmVmNWM4MThkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENv
bW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRl
Y3J5cHRvckdTdHJlYW1lci5jcHAKQEAgLTIxMCw3ICsyMTAsNyBAQCBzdGF0aWMgR3N0Rmxvd1Jl
dHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZlciog
YnVmZmVyKQogICAgICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX0ZMVVNISU5HOwogICAgICAgICB9
CiAgICAgICAgIGlmICghcHJpdi0+Y2RtUHJveHkpIHsKLSAgICAgICAgICAgIEdTVF9FUlJPUl9P
QkpFQ1Qoc2VsZiwgIkNETVByb3h5IHdhcyBub3QgcmV0cmlldmVkIGluIHRpbWUiKTsKKyAgICAg
ICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkNETVByb3h5
IHdhcyBub3QgcmV0cmlldmVkIGluIHRpbWUiKSwgKG51bGxwdHIpKTsKICAgICAgICAgICAgIHJl
dHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgICAgICB9CiAgICAgICAgIEdTVF9ERUJV
R19PQkpFQ1Qoc2VsZiwgIkNETSBub3cgYXZhaWxhYmxlIHdpdGggYWRkcmVzcyAlcCIsIHByaXYt
PmNkbVByb3h5LmdldCgpKTsKQEAgLTIyNCwxOCArMjI0LDE4IEBAIHN0YXRpYyBHc3RGbG93UmV0
dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVyKiBi
dWZmZXIpCiAKICAgICB1bnNpZ25lZCBpdlNpemU7CiAgICAgaWYgKCFnc3Rfc3RydWN0dXJlX2dl
dF91aW50KHByb3RlY3Rpb25NZXRhLT5pbmZvLCAiaXZfc2l6ZSIsICZpdlNpemUpKSB7Ci0gICAg
ICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZhaWxlZCB0byBnZXQgaXZfc2l6ZSIpOworICAg
ICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJGYWlsZWQgdG8g
Z2V0IGl2X3NpemUiKSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9T
VVBQT1JURUQ7CiAgICAgfQogICAgIGlmICghaXZTaXplICYmICFnc3Rfc3RydWN0dXJlX2dldF91
aW50KHByb3RlY3Rpb25NZXRhLT5pbmZvLCAiY29uc3RhbnRfaXZfc2l6ZSIsICZpdlNpemUpKSB7
Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIk5vIGl2X3NpemUgYW5kIGZhaWxlZCB0
byBnZXQgY29uc3RhbnRfaXZfc2l6ZSIpOworICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxm
LCBTVFJFQU0sIEZBSUxFRCwgKCJObyBpdl9zaXplIGFuZCBmYWlsZWQgdG8gZ2V0IGNvbnN0YW50
X2l2X3NpemUiKSwgKG51bGxwdHIpKTsKICAgICAgICAgQVNTRVJUKGlzQ2Jjcyk7CiAgICAgICAg
IHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KIAogICAgIGdib29sZWFuIGVu
Y3J5cHRlZDsKICAgICBpZiAoIWdzdF9zdHJ1Y3R1cmVfZ2V0X2Jvb2xlYW4ocHJvdGVjdGlvbk1l
dGEtPmluZm8sICJlbmNyeXB0ZWQiLCAmZW5jcnlwdGVkKSkgewotICAgICAgICBHU1RfRVJST1Jf
T0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IGVuY3J5cHRlZCBmbGFnIik7CisgICAgICAgIEdT
VF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQgZW5j
cnlwdGVkIGZsYWciKSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9T
VVBQT1JURUQ7CiAgICAgfQogCkBAIC0yNDksNyArMjQ5LDcgQEAgc3RhdGljIEdzdEZsb3dSZXR1
cm4gdHJhbnNmb3JtSW5QbGFjZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1
ZmZlcikKICAgICB1bnNpZ25lZCBzdWJTYW1wbGVDb3VudCA9IDA7CiAgICAgLy8gY2JjcyBjb3Vs
ZCBub3QgaW5jbHVkZSB0aGUgc3Vic2FtcGxlX2NvdW50LgogICAgIGlmICghZ3N0X3N0cnVjdHVy
ZV9nZXRfdWludChwcm90ZWN0aW9uTWV0YS0+aW5mbywgInN1YnNhbXBsZV9jb3VudCIsICZzdWJT
YW1wbGVDb3VudCkgJiYgIWlzQ2JjcykgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYs
ICJGYWlsZWQgdG8gZ2V0IHN1YnNhbXBsZV9jb3VudCIpOworICAgICAgICBHU1RfRUxFTUVOVF9F
UlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJGYWlsZWQgdG8gZ2V0IHN1YnNhbXBsZV9jb3Vu
dCIpLCAobnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsK
ICAgICB9CiAKQEAgLTI1OCwxMiArMjU4LDEyIEBAIHN0YXRpYyBHc3RGbG93UmV0dXJuIHRyYW5z
Zm9ybUluUGxhY2UoR3N0QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVyKiBidWZmZXIpCiAg
ICAgaWYgKHN1YlNhbXBsZUNvdW50KSB7CiAgICAgICAgIHZhbHVlID0gZ3N0X3N0cnVjdHVyZV9n
ZXRfdmFsdWUocHJvdGVjdGlvbk1ldGEtPmluZm8sICJzdWJzYW1wbGVzIik7CiAgICAgICAgIGlm
ICghdmFsdWUpIHsKLSAgICAgICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZhaWxlZCB0
byBnZXQgc3Vic2FtcGxlcyIpOworICAgICAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwg
U1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBzdWJzYW1wbGVzIiksIChudWxscHRyKSk7
CiAgICAgICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICAgICAgfQog
ICAgICAgICBzdWJTYW1wbGVzQnVmZmVyID0gZ3N0X3ZhbHVlX2dldF9idWZmZXIodmFsdWUpOwog
ICAgICAgICBpZiAoIXN1YlNhbXBsZXNCdWZmZXIpIHsKLSAgICAgICAgICAgIEdTVF9FUlJPUl9P
QkpFQ1Qoc2VsZiwgIlRoZXJlIGlzIG5vIHN1YnNhbXBsZXMgYnVmZmVyLCBidXQgYSBwb3NpdGl2
ZSBzdWJzYW1wbGUgY291bnQiKTsKKyAgICAgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYs
IFNUUkVBTSwgRkFJTEVELCAoIlRoZXJlIGlzIG5vIHN1YnNhbXBsZXMgYnVmZmVyLCBidXQgYSBw
b3NpdGl2ZSBzdWJzYW1wbGUgY291bnQiKSwgKG51bGxwdHIpKTsKICAgICAgICAgICAgIHJldHVy
biBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgICAgICB9CiAgICAgfQpAQCAtMjcxLDE0ICsy
NzEsMTQgQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4gdHJhbnNmb3JtSW5QbGFjZShHc3RCYXNlVHJh
bnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZlcikKICAgICB2YWx1ZSA9IGdzdF9zdHJ1Y3R1
cmVfZ2V0X3ZhbHVlKHByb3RlY3Rpb25NZXRhLT5pbmZvLCAia2lkIik7CiAKICAgICBpZiAoIXZh
bHVlKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZhaWxlZCB0byBnZXQga2V5
IGlkIGZvciBidWZmZXIiKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFN
LCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBrZXkgaWQgZm9yIGJ1ZmZlciIpLCAobnVsbHB0cikp
OwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAgICAgR3N0
QnVmZmVyKiBrZXlJREJ1ZmZlciA9IGdzdF92YWx1ZV9nZXRfYnVmZmVyKHZhbHVlKTsKIAogICAg
IHZhbHVlID0gZ3N0X3N0cnVjdHVyZV9nZXRfdmFsdWUocHJvdGVjdGlvbk1ldGEtPmluZm8sICJp
diIpOwogICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAi
RmFpbGVkIHRvIGdldCBJViBmb3Igc2FtcGxlIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9S
KHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQgSVYgZm9yIHNhbXBsZSIpLCAo
bnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9
CiAKQEAgLTMwNyw3ICszMDcsNyBAQCBzdGF0aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBs
YWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZlciogYnVmZmVyKQogICAgICAgICAg
ICAgR1NUX0RFQlVHX09CSkVDVChzZWxmLCAiRGVjcnlwdGlvbiBhYm9ydGVkIGJlY2F1c2Ugb2Yg
Zmx1c2giKTsKICAgICAgICAgICAgIHJldHVybiBHU1RfRkxPV19GTFVTSElORzsKICAgICAgICAg
fQotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJEZWNyeXB0aW9uIGZhaWxlZCIpOwor
ICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIERFQ1JZUFQsICgiRGVjcnlw
dGlvbiBmYWlsZWQiKSwgKG51bGxwdHIpKTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9T
VVBQT1JURUQ7CiAgICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454697</attachid>
            <date>2022-03-15 06:07:00 -0700</date>
            <delta_ts>2022-03-15 06:08:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237602-20220315140658.patch</filename>
            <type>text/plain</type>
            <size>13276</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxMjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzQ1YzI0YjM3MjU2MjVh
YjI0YjJlZTJmZWRhMDljMDdjMmY4NGVkOS4uZDY0YmUzZjQxZjgxMDhhN2QyYzNhNTNiNGMyZGYw
NDZkODY0ZGMyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTE0ICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl0gY2xhcmlmeSBwbGF5YmFjayBlcnJvcnMgd2l0aCBNZWRpYUVycm9yLm1lc3NhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzYwMgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0
Y2ggaXMgY28tYXV0aG9yZWQgYnkgRXVnZW5lIE11dGF2Y2hpIDxJZXZnZW5fTXV0YXZjaGlAY29t
Y2FzdC5jb20+CisgICAgICAgIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL1dlYlBsYXRmb3JtRm9y
RW1iZWRkZWQvV1BFV2ViS2l0L3B1bGwvNzk3CisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwOiBVc2UgaW50ZXJuYWwgbGFzdCBlcnJvciBtZXNzYWdlIGZyb20gdGhlIHBsYXll
ciwgaWYgYXZhaWxhYmxlLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmNwcDogQ2FjaGUgdGhlIGxhc3QgZXJyb3IgbWVzc2FnZSBmcm9tIHRoZSBwbGF5ZXIgcHJpdmF0
ZSBhbmQgdXBkYXRlIGl0IHdoZW4gTmV0d29ya1N0YXRlIGNoYW5nZXMgdG8gYW4gZXJyb3Igc3Rh
dGUuIFRoaXMgYWxsb3dzIHRoZSBwbGF5ZXIgcHJpdmF0ZSB0byBiZSByZWdlbmVyYXRlZCAoYXMg
aXQgaGFzIGFsd2F5cyBiZWVuKSB3aGlsZSBwcm92aWRpbmcgYWNjZXNzIHRvIHRoZSBmb3JtZXIg
cGxheWVyIHByaXZhdGUgZXJyb3IgYWZ0ZXIgdGhhdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllci5oOiBBZGRlZCBsYXN0RXJyb3JNZXNzYWdlKCkgbWV0aG9kIHRvIGdl
dCB0aGUgbGFzdCBpbnRlcm5hbCBlcnJvciBtZXNzYWdlIGZyb20gdGhlIHBsYXllciBwcml2YXRl
LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oOiBEZWZh
dWx0IGxhc3RFcnJvck1lc3NhZ2UoKSBlbXB0eSBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNw
cDogRGV0ZWN0IGRlY3J5cHRpb24gYW5kIG5vLWtleSBlcnJvcnMuCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oOiBBZGRl
ZCBlcnJvck1lc3NhZ2UoKSB0byBleHBvc2UgdGhlIGludGVybmFsIGVycm9yIG1lc3NhZ2UuCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNy
eXB0aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcDogUG9zdCBtdWx0aXBsZSBraW5kIG9mIGVycm9y
cyB0byB0aGUgR3N0QnVzIHRvIG5vdGlmeSB1cHBlciBsYXllcnMgaW5zdGVhZCBvZiBqdXN0IGxv
Z2dpbmcgdGhlbS4KKwogMjAyMi0wMy0xNSAgQW50b2luZSBRdWludCAgPGdyYW91dHNAd2Via2l0
Lm9yZz4KIAogICAgICAgICBEaWFsb2cgZWxlbWVudCBvbmx5IGFuaW1hdGVzIG9uY2UKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCmluZGV4IDNiOWE4NzBlNTFjZWNiYjVk
YzE1ZDgwYmMzOWRiNzBhMmI0MWJlYjguLmIyOTZkNjg5NTNhODk4NTRkZDgxMGQ2ODNjNzMxYWY2
MTdhZjFiNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAt
MjE3NSw3ICsyMTc1LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpub25lU3VwcG9ydGVkKCkK
IAogICAgIC8vIDYuMSAtIFNldCB0aGUgZXJyb3IgYXR0cmlidXRlIHRvIGEgbmV3IE1lZGlhRXJy
b3Igb2JqZWN0IHdob3NlIGNvZGUgYXR0cmlidXRlIGlzIHNldCB0bwogICAgIC8vIE1FRElBX0VS
Ul9TUkNfTk9UX1NVUFBPUlRFRC4KLSAgICBtX2Vycm9yID0gTWVkaWFFcnJvcjo6Y3JlYXRlKE1l
ZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRCwgIlVuc3VwcG9ydGVkIHNvdXJj
ZSB0eXBlIl9zKTsKKyAgICBtX2Vycm9yID0gbV9wbGF5ZXIKKyAgICAgICAgPyBNZWRpYUVycm9y
OjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJSX1NSQ19OT1RfU1VQUE9SVEVELCBtX3BsYXll
ci0+bGFzdEVycm9yTWVzc2FnZSgpKQorICAgICAgICA6IE1lZGlhRXJyb3I6OmNyZWF0ZShNZWRp
YUVycm9yOjpNRURJQV9FUlJfU1JDX05PVF9TVVBQT1JURUQsICJVbnN1cHBvcnRlZCBzb3VyY2Ug
dHlwZSJfcyk7CiAKICAgICAvLyA2LjIgLSBGb3JnZXQgdGhlIG1lZGlhIGVsZW1lbnQncyBtZWRp
YS1yZXNvdXJjZS1zcGVjaWZpYyB0ZXh0IHRyYWNrcy4KICAgICBmb3JnZXRSZXNvdXJjZVNwZWNp
ZmljVHJhY2tzKCk7CkBAIC0yMjEzLDEyICsyMjE1LDI0IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVu
dDo6bWVkaWFMb2FkaW5nRmFpbGVkRmF0YWxseShNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlIGVy
cm9yCiAgICAgc3RvcFBlcmlvZGljVGltZXJzKCk7CiAgICAgbV9sb2FkU3RhdGUgPSBXYWl0aW5n
Rm9yU291cmNlOwogCisgICAgY29uc3QgYXV0byBnZXRFcnJvck1lc3NhZ2UgPSBbJl0gKFN0cmlu
ZyYmIGRlZmF1bHRNZXNzYWdlKSB7CisgICAgICAgIFN0cmluZyBtZXNzYWdlID0gV1RGTW92ZShk
ZWZhdWx0TWVzc2FnZSk7CisgICAgICAgIGlmICghbV9wbGF5ZXIpCisgICAgICAgICAgICByZXR1
cm4gbWVzc2FnZTsKKworICAgICAgICBhdXRvIGxhc3RFcnJvck1lc3NhZ2UgPSBtX3BsYXllci0+
bGFzdEVycm9yTWVzc2FnZSgpOworICAgICAgICBpZiAoIWxhc3RFcnJvck1lc3NhZ2UpCisgICAg
ICAgICAgICByZXR1cm4gbWVzc2FnZTsKKworICAgICAgICByZXR1cm4gbWFrZVN0cmluZyhtZXNz
YWdlLCAiOiAiLCBsYXN0RXJyb3JNZXNzYWdlKTsKKyAgICB9OworCiAgICAgLy8gMiAtIFNldCB0
aGUgZXJyb3IgYXR0cmlidXRlIHRvIGEgbmV3IE1lZGlhRXJyb3Igb2JqZWN0IHdob3NlIGNvZGUg
YXR0cmlidXRlIGlzCiAgICAgLy8gc2V0IHRvIE1FRElBX0VSUl9ORVRXT1JLL01FRElBX0VSUl9E
RUNPREUuCiAgICAgaWYgKGVycm9yID09IE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGU6Ok5ldHdv
cmtFcnJvcikKLSAgICAgICAgbV9lcnJvciA9IE1lZGlhRXJyb3I6OmNyZWF0ZShNZWRpYUVycm9y
OjpNRURJQV9FUlJfTkVUV09SSywgIk1lZGlhIGZhaWxlZCB0byBsb2FkIl9zKTsKKyAgICAgICAg
bV9lcnJvciA9IE1lZGlhRXJyb3I6OmNyZWF0ZShNZWRpYUVycm9yOjpNRURJQV9FUlJfTkVUV09S
SywgZ2V0RXJyb3JNZXNzYWdlKCJNZWRpYSBmYWlsZWQgdG8gbG9hZCJfcykpOwogICAgIGVsc2Ug
aWYgKGVycm9yID09IE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGU6OkRlY29kZUVycm9yKQotICAg
ICAgICBtX2Vycm9yID0gTWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9E
RUNPREUsICJNZWRpYSBmYWlsZWQgdG8gZGVjb2RlIl9zKTsKKyAgICAgICAgbV9lcnJvciA9IE1l
ZGlhRXJyb3I6OmNyZWF0ZShNZWRpYUVycm9yOjpNRURJQV9FUlJfREVDT0RFLCBnZXRFcnJvck1l
c3NhZ2UoIk1lZGlhIGZhaWxlZCB0byBkZWNvZGUiX3MpKTsKICAgICBlbHNlCiAgICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllci5jcHAKaW5kZXggNDU1MDUyOWRkNTk2ZjYyYWNlZmQ5NWZkNzAxNWEx
ZDJjNDVmYjk1Ny4uNmY0OWFmMDQ2ZDEyNDYzYTRkZWZhOWYxNDg5YTcxNTMyYThkYWY4YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcApA
QCAtMTMzMyw2ICsxMzMzLDcgQEAgdm9pZCBNZWRpYVBsYXllcjo6bmV0d29ya1N0YXRlQ2hhbmdl
ZCgpCiAgICAgLy8gSWYgbW9yZSB0aGFuIG9uZSBtZWRpYSBlbmdpbmUgaXMgaW5zdGFsbGVkIGFu
ZCB0aGlzIG9uZSBmYWlsZWQgYmVmb3JlIGZpbmRpbmcgbWV0YWRhdGEsCiAgICAgLy8gbGV0IHRo
ZSBuZXh0IGVuZ2luZSB0cnkuCiAgICAgaWYgKG1fcHJpdmF0ZS0+bmV0d29ya1N0YXRlKCkgPj0g
TWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6Rm9ybWF0RXJyb3IgJiYgbV9wcml2YXRlLT5yZWFk
eVN0YXRlKCkgPCBNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZTo6SGF2ZU1ldGFkYXRhKSB7CisgICAg
ICAgIG1fbGFzdEVycm9yTWVzc2FnZSA9IG1fcHJpdmF0ZS0+ZXJyb3JNZXNzYWdlKCk7CiAgICAg
ICAgIGNsaWVudCgpLm1lZGlhUGxheWVyRW5naW5lRmFpbGVkVG9Mb2FkKCk7CiAgICAgICAgIGlm
ICghbV9hY3RpdmVFbmdpbmVJZGVudGlmaWVyICYmIGluc3RhbGxlZE1lZGlhRW5naW5lcygpLnNp
emUoKSA+IDEgJiYgKG1fY29udGVudFR5cGUuaXNFbXB0eSgpIHx8IG5leHRCZXN0TWVkaWFFbmdp
bmUobV9jdXJyZW50TWVkaWFFbmdpbmUpKSkgewogICAgICAgICAgICAgbV9yZWxvYWRUaW1lci5z
dGFydE9uZVNob3QoMF9zKTsKQEAgLTE5MTIsNiArMTkxMywxMSBAQCBTdHJpbmcgY29udmVydEVu
dW1lcmF0aW9uVG9TdHJpbmcoTWVkaWFQbGF5ZXI6OkJ1ZmZlcmluZ1BvbGljeSBlbnVtZXJhdGlv
blZhbHVlKQogICAgIHJldHVybiB2YWx1ZXNbc3RhdGljX2Nhc3Q8c2l6ZV90PihlbnVtZXJhdGlv
blZhbHVlKV07CiB9CiAKK1N0cmluZyBNZWRpYVBsYXllcjo6bGFzdEVycm9yTWVzc2FnZSgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1fbGFzdEVycm9yTWVzc2FnZTsKK30KKwogfQogCiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCmluZGV4
IDIyNDRjOGIxYWM5ZGIwNDA3ZTRhZjc2MDYxZGEyMTI1ZDRlZWY2NDUuLjhlMjcxZGI3ZGQ4ZTkz
NzU3YWYwYWNlMjEyNTlhN2Q5YTA0MzgzNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaApAQCAtNjk3LDYgKzY5Nyw4IEBAIHB1YmxpYzoKIAog
ICAgIHZvaWQgcGxheWVyQ29udGVudEJveFJlY3RDaGFuZ2VkKGNvbnN0IExheW91dFJlY3QmKTsK
IAorICAgIFN0cmluZyBsYXN0RXJyb3JNZXNzYWdlKCkgY29uc3Q7CisKIHByaXZhdGU6CiAgICAg
TWVkaWFQbGF5ZXIoTWVkaWFQbGF5ZXJDbGllbnQmKTsKICAgICBNZWRpYVBsYXllcihNZWRpYVBs
YXllckNsaWVudCYsIE1lZGlhUGxheWVyRW51bXM6Ok1lZGlhRW5naW5lSWRlbnRpZmllcik7CkBA
IC03NDEsNiArNzQzLDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1fc2hvdWxkQ29udGludWVBZnRl
cktleU5lZWRlZCB7IGZhbHNlIH07CiAjZW5kaWYKICAgICBib29sIG1faXNHYXRoZXJpbmdWaWRl
b0ZyYW1lTWV0YWRhdGEgeyBmYWxzZSB9OworICAgIFN0cmluZyBtX2xhc3RFcnJvck1lc3NhZ2U7
CiB9OwogCiBjbGFzcyBNZWRpYVBsYXllckZhY3RvcnkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAppbmRleCAzMDVhYzVj
ZTIwYmE1NDc1YjU1YTFmZDNkOTMzMGEwMjNlYTliYWQwLi5iYzg1NWUzZTI1OWM1YmY3NWUwZmNl
NjUyNmU3YWIwNjdhMjRkMmM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaApAQCAtMzI5LDYgKzMyOSw4IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgcGxheWVyQ29udGVudEJveFJlY3RDaGFuZ2VkKGNvbnN0IExh
eW91dFJlY3QmKSB7IH0KIAogICAgIHZpcnR1YWwgdm9pZCBzZXRSZXNvdXJjZU93bmVyKGNvbnN0
IFByb2Nlc3NJZGVudGl0eSYpIHsgfQorCisgICAgdmlydHVhbCBTdHJpbmcgZXJyb3JNZXNzYWdl
KCkgY29uc3QgeyByZXR1cm4geyB9OyB9CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCmluZGV4IDA3MzE1YjYyZTYwZjkyMGYyY2QzMTQ0
ZDgyMmVlNjBlY2JlOGYzYTYuLmI0OWI5ZmQxZGRjNDNhZDA0ZjkxNjA0MjRiMjllODA1Mzc1NjVi
ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1l
ci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3Bw
CkBAIC0xNzI4LDggKzE3MjgsMTIgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6
OmhhbmRsZU1lc3NhZ2UoR3N0TWVzc2FnZSogbWVzc2FnZSkKICAgICAgICAgZ3N0X21lc3NhZ2Vf
cGFyc2VfZXJyb3IobWVzc2FnZSwgJmVyci5vdXRQdHIoKSwgJmRlYnVnLm91dFB0cigpKTsKICAg
ICAgICAgR1NUX0VSUk9SKCJFcnJvciAlZDogJXMgKHVybD0lcykiLCBlcnItPmNvZGUsIGVyci0+
bWVzc2FnZSwgbV91cmwuc3RyaW5nKCkudXRmOCgpLmRhdGEoKSk7CiAKKyAgICAgICAgbV9lcnJv
ck1lc3NhZ2UgPSBlcnItPm1lc3NhZ2U7CisKICAgICAgICAgZXJyb3IgPSBNZWRpYVBsYXllcjo6
TmV0d29ya1N0YXRlOjpFbXB0eTsKICAgICAgICAgaWYgKGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0
KCksIEdTVF9TVFJFQU1fRVJST1IsIEdTVF9TVFJFQU1fRVJST1JfQ09ERUNfTk9UX0ZPVU5EKQor
ICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRjaGVzKGVyci5nZXQoKSwgR1NUX1NUUkVBTV9FUlJP
UiwgR1NUX1NUUkVBTV9FUlJPUl9ERUNSWVBUKQorICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRj
aGVzKGVyci5nZXQoKSwgR1NUX1NUUkVBTV9FUlJPUiwgR1NUX1NUUkVBTV9FUlJPUl9ERUNSWVBU
X05PS0VZKQogICAgICAgICAgICAgfHwgZ19lcnJvcl9tYXRjaGVzKGVyci5nZXQoKSwgR1NUX1NU
UkVBTV9FUlJPUiwgR1NUX1NUUkVBTV9FUlJPUl9XUk9OR19UWVBFKQogICAgICAgICAgICAgfHwg
Z19lcnJvcl9tYXRjaGVzKGVyci5nZXQoKSwgR1NUX1NUUkVBTV9FUlJPUiwgR1NUX1NUUkVBTV9F
UlJPUl9GQUlMRUQpCiAgICAgICAgICAgICB8fCBnX2Vycm9yX21hdGNoZXMoZXJyLmdldCgpLCBH
U1RfQ09SRV9FUlJPUiwgR1NUX0NPUkVfRVJST1JfTUlTU0lOR19QTFVHSU4pCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQ
cml2YXRlR1N0cmVhbWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKaW5kZXggNjRmMDU5Y2RkMWFmMjY0
ZmY0NmQ2YzAwOWI4YWNiZjY1YzMxZWJkNy4uNTYwZmM5NzdjNGJkNzMwZDBlZWY1MWVjZjgyZDQz
NDAzNTFjNWE1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFt
ZXIuaApAQCAtMzkyLDYgKzM5Miw4IEBAIHByb3RlY3RlZDoKIAogICAgIHN0ZDo6b3B0aW9uYWw8
R3N0VmlkZW9EZWNvZGVyUGxhdGZvcm0+IG1fdmlkZW9EZWNvZGVyUGxhdGZvcm07CiAKKyAgICBT
dHJpbmcgZXJyb3JNZXNzYWdlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9lcnJvck1lc3Nh
Z2U7IH0KKwogcHJpdmF0ZToKICAgICBjbGFzcyBUYXNrQXRNZWRpYVRpbWVTY2hlZHVsZXIgewog
ICAgIHB1YmxpYzoKQEAgLTU3OSw2ICs1ODEsNyBAQCBwcml2YXRlOgogI2VuZGlmCiAKICAgICBS
ZWZQdHI8R0JNQnVmZmVyU3dhcGNoYWluPiBtX3N3YXBjaGFpbjsKKyAgICBTdHJpbmcgbV9lcnJv
ck1lc3NhZ2U7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3Ry
ZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL2Vt
ZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcAppbmRleCAxMWRm
M2Q3OTdlZThiNDdlOWFhNTRkM2ZhNmQ4MmVjZjFlYjM4NTkzLi5mYTUyYjRlNzRjNTZkN2UyZTU1
MTBmNzg2Yzk1NjEwZmVmNWM4MThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JH
U3RyZWFtZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5cHRvckdTdHJlYW1lci5jcHAKQEAg
LTIxMCw3ICsyMTAsNyBAQCBzdGF0aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdz
dEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZlciogYnVmZmVyKQogICAgICAgICAgICAgcmV0
dXJuIEdTVF9GTE9XX0ZMVVNISU5HOwogICAgICAgICB9CiAgICAgICAgIGlmICghcHJpdi0+Y2Rt
UHJveHkpIHsKLSAgICAgICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkNETVByb3h5IHdh
cyBub3QgcmV0cmlldmVkIGluIHRpbWUiKTsKKyAgICAgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9S
KHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkNETVByb3h5IHdhcyBub3QgcmV0cmlldmVkIGluIHRp
bWUiKSwgKG51bGxwdHIpKTsKICAgICAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9S
VEVEOwogICAgICAgICB9CiAgICAgICAgIEdTVF9ERUJVR19PQkpFQ1Qoc2VsZiwgIkNETSBub3cg
YXZhaWxhYmxlIHdpdGggYWRkcmVzcyAlcCIsIHByaXYtPmNkbVByb3h5LmdldCgpKTsKQEAgLTIy
NCwxOCArMjI0LDE4IEBAIHN0YXRpYyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0
QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVyKiBidWZmZXIpCiAKICAgICB1bnNpZ25lZCBp
dlNpemU7CiAgICAgaWYgKCFnc3Rfc3RydWN0dXJlX2dldF91aW50KHByb3RlY3Rpb25NZXRhLT5p
bmZvLCAiaXZfc2l6ZSIsICZpdlNpemUpKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2Vs
ZiwgIkZhaWxlZCB0byBnZXQgaXZfc2l6ZSIpOworICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihz
ZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJGYWlsZWQgdG8gZ2V0IGl2X3NpemUiKSwgKG51bGxwdHIp
KTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgfQogICAgIGlm
ICghaXZTaXplICYmICFnc3Rfc3RydWN0dXJlX2dldF91aW50KHByb3RlY3Rpb25NZXRhLT5pbmZv
LCAiY29uc3RhbnRfaXZfc2l6ZSIsICZpdlNpemUpKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpF
Q1Qoc2VsZiwgIk5vIGl2X3NpemUgYW5kIGZhaWxlZCB0byBnZXQgY29uc3RhbnRfaXZfc2l6ZSIp
OworICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJObyBp
dl9zaXplIGFuZCBmYWlsZWQgdG8gZ2V0IGNvbnN0YW50X2l2X3NpemUiKSwgKG51bGxwdHIpKTsK
ICAgICAgICAgQVNTRVJUKGlzQ2Jjcyk7CiAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQ
UE9SVEVEOwogICAgIH0KIAogICAgIGdib29sZWFuIGVuY3J5cHRlZDsKICAgICBpZiAoIWdzdF9z
dHJ1Y3R1cmVfZ2V0X2Jvb2xlYW4ocHJvdGVjdGlvbk1ldGEtPmluZm8sICJlbmNyeXB0ZWQiLCAm
ZW5jcnlwdGVkKSkgewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWlsZWQgdG8g
Z2V0IGVuY3J5cHRlZCBmbGFnIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNU
UkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQgZW5jcnlwdGVkIGZsYWciKSwgKG51bGxwdHIp
KTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgfQogCkBAIC0y
NDksNyArMjQ5LDcgQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4gdHJhbnNmb3JtSW5QbGFjZShHc3RC
YXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZlcikKICAgICB1bnNpZ25lZCBzdWJT
YW1wbGVDb3VudCA9IDA7CiAgICAgLy8gY2JjcyBjb3VsZCBub3QgaW5jbHVkZSB0aGUgc3Vic2Ft
cGxlX2NvdW50LgogICAgIGlmICghZ3N0X3N0cnVjdHVyZV9nZXRfdWludChwcm90ZWN0aW9uTWV0
YS0+aW5mbywgInN1YnNhbXBsZV9jb3VudCIsICZzdWJTYW1wbGVDb3VudCkgJiYgIWlzQ2Jjcykg
ewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IHN1YnNhbXBs
ZV9jb3VudCIpOworICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxF
RCwgKCJGYWlsZWQgdG8gZ2V0IHN1YnNhbXBsZV9jb3VudCIpLCAobnVsbHB0cikpOwogICAgICAg
ICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAKQEAgLTI1OCwxMiArMjU4
LDEyIEBAIHN0YXRpYyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5z
Zm9ybSogYmFzZSwgR3N0QnVmZmVyKiBidWZmZXIpCiAgICAgaWYgKHN1YlNhbXBsZUNvdW50KSB7
CiAgICAgICAgIHZhbHVlID0gZ3N0X3N0cnVjdHVyZV9nZXRfdmFsdWUocHJvdGVjdGlvbk1ldGEt
PmluZm8sICJzdWJzYW1wbGVzIik7CiAgICAgICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgICAg
IEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZhaWxlZCB0byBnZXQgc3Vic2FtcGxlcyIpOworICAg
ICAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVk
IHRvIGdldCBzdWJzYW1wbGVzIiksIChudWxscHRyKSk7CiAgICAgICAgICAgICByZXR1cm4gR1NU
X0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICAgICAgfQogICAgICAgICBzdWJTYW1wbGVzQnVmZmVy
ID0gZ3N0X3ZhbHVlX2dldF9idWZmZXIodmFsdWUpOwogICAgICAgICBpZiAoIXN1YlNhbXBsZXNC
dWZmZXIpIHsKLSAgICAgICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIlRoZXJlIGlzIG5v
IHN1YnNhbXBsZXMgYnVmZmVyLCBidXQgYSBwb3NpdGl2ZSBzdWJzYW1wbGUgY291bnQiKTsKKyAg
ICAgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIlRoZXJl
IGlzIG5vIHN1YnNhbXBsZXMgYnVmZmVyLCBidXQgYSBwb3NpdGl2ZSBzdWJzYW1wbGUgY291bnQi
KSwgKG51bGxwdHIpKTsKICAgICAgICAgICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVE
OwogICAgICAgICB9CiAgICAgfQpAQCAtMjcxLDE0ICsyNzEsMTQgQEAgc3RhdGljIEdzdEZsb3dS
ZXR1cm4gdHJhbnNmb3JtSW5QbGFjZShHc3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIq
IGJ1ZmZlcikKICAgICB2YWx1ZSA9IGdzdF9zdHJ1Y3R1cmVfZ2V0X3ZhbHVlKHByb3RlY3Rpb25N
ZXRhLT5pbmZvLCAia2lkIik7CiAKICAgICBpZiAoIXZhbHVlKSB7Ci0gICAgICAgIEdTVF9FUlJP
Ul9PQkpFQ1Qoc2VsZiwgIkZhaWxlZCB0byBnZXQga2V5IGlkIGZvciBidWZmZXIiKTsKKyAgICAg
ICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdl
dCBrZXkgaWQgZm9yIGJ1ZmZlciIpLCAobnVsbHB0cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZM
T1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAgICAgR3N0QnVmZmVyKiBrZXlJREJ1ZmZlciA9IGdz
dF92YWx1ZV9nZXRfYnVmZmVyKHZhbHVlKTsKIAogICAgIHZhbHVlID0gZ3N0X3N0cnVjdHVyZV9n
ZXRfdmFsdWUocHJvdGVjdGlvbk1ldGEtPmluZm8sICJpdiIpOwogICAgIGlmICghdmFsdWUpIHsK
LSAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiRmFpbGVkIHRvIGdldCBJViBmb3Igc2Ft
cGxlIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAo
IkZhaWxlZCB0byBnZXQgSVYgZm9yIHNhbXBsZSIpLCAobnVsbHB0cikpOwogICAgICAgICByZXR1
cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAKQEAgLTMwNyw3ICszMDcsNyBAQCBz
dGF0aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJh
c2UsIEdzdEJ1ZmZlciogYnVmZmVyKQogICAgICAgICAgICAgR1NUX0RFQlVHX09CSkVDVChzZWxm
LCAiRGVjcnlwdGlvbiBhYm9ydGVkIGJlY2F1c2Ugb2YgZmx1c2giKTsKICAgICAgICAgICAgIHJl
dHVybiBHU1RfRkxPV19GTFVTSElORzsKICAgICAgICAgfQotICAgICAgICBHU1RfRVJST1JfT0JK
RUNUKHNlbGYsICJEZWNyeXB0aW9uIGZhaWxlZCIpOworICAgICAgICBHU1RfRUxFTUVOVF9FUlJP
UihzZWxmLCBTVFJFQU0sIERFQ1JZUFQsICgiRGVjcnlwdGlvbiBmYWlsZWQiKSwgKG51bGxwdHIp
KTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9TVVBQT1JURUQ7CiAgICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454698</attachid>
            <date>2022-03-15 06:08:58 -0700</date>
            <delta_ts>2022-03-15 08:24:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-237602-20220315140856.patch</filename>
            <type>text/plain</type>
            <size>13278</size>
            <attacher name="Enrique Ocaña">eocanha</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkxMjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzQ1YzI0YjM3MjU2MjVh
YjI0YjJlZTJmZWRhMDljMDdjMmY4NGVkOS4uYTY1ZjRiM2E0ODlhMmRlNjkzMmM2Mzg2NzI0ODNk
MGU5OWU2NGYyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIyLTAzLTE1ICBFbnJp
cXVlIE9jYcOxYSBHb256w6FsZXogIDxlb2NhbmhhQGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dT
dHJlYW1lcl0gY2xhcmlmeSBwbGF5YmFjayBlcnJvcnMgd2l0aCBNZWRpYUVycm9yLm1lc3NhZ2UK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzYwMgor
CisgICAgICAgIFJldmlld2VkIGJ5IFBoaWxpcHBlIE5vcm1hbmQuCisKKyAgICAgICAgVGhpcyBw
YXRjaCBpcyBjby1hdXRob3JlZCBieSBFdWdlbmUgTXV0YXZjaGkgPElldmdlbl9NdXRhdmNoaUBj
b21jYXN0LmNvbT4KKyAgICAgICAgU2VlOiBodHRwczovL2dpdGh1Yi5jb20vV2ViUGxhdGZvcm1G
b3JFbWJlZGRlZC9XUEVXZWJLaXQvcHVsbC83OTcKKworICAgICAgICAqIGh0bWwvSFRNTE1lZGlh
RWxlbWVudC5jcHA6IFVzZSBpbnRlcm5hbCBsYXN0IGVycm9yIG1lc3NhZ2UgZnJvbSB0aGUgcGxh
eWVyLCBpZiBhdmFpbGFibGUuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5
ZXIuY3BwOiBDYWNoZSB0aGUgbGFzdCBlcnJvciBtZXNzYWdlIGZyb20gdGhlIHBsYXllciBwcml2
YXRlIGFuZCB1cGRhdGUgaXQgd2hlbiBOZXR3b3JrU3RhdGUgY2hhbmdlcyB0byBhbiBlcnJvciBz
dGF0ZS4gVGhpcyBhbGxvd3MgdGhlIHBsYXllciBwcml2YXRlIHRvIGJlIHJlZ2VuZXJhdGVkIChh
cyBpdCBoYXMgYWx3YXlzIGJlZW4pIHdoaWxlIHByb3ZpZGluZyBhY2Nlc3MgdG8gdGhlIGZvcm1l
ciBwbGF5ZXIgcHJpdmF0ZSBlcnJvciBhZnRlciB0aGF0LgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmg6IEFkZGVkIGxhc3RFcnJvck1lc3NhZ2UoKSBtZXRob2QgdG8g
Z2V0IHRoZSBsYXN0IGludGVybmFsIGVycm9yIG1lc3NhZ2UgZnJvbSB0aGUgcGxheWVyIHByaXZh
dGUuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmg6IERl
ZmF1bHQgbGFzdEVycm9yTWVzc2FnZSgpIGVtcHR5IGltcGxlbWVudGF0aW9uLgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIu
Y3BwOiBEZXRlY3QgZGVjcnlwdGlvbiBhbmQgbm8ta2V5IGVycm9ycy4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmg6IEFk
ZGVkIGVycm9yTWVzc2FnZSgpIHRvIGV4cG9zZSB0aGUgaW50ZXJuYWwgZXJyb3IgbWVzc2FnZS4K
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvZW1lL1dlYktpdENvbW1vbkVu
Y3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwOiBQb3N0IG11bHRpcGxlIGtpbmQgb2YgZXJy
b3JzIHRvIHRoZSBHc3RCdXMgdG8gbm90aWZ5IHVwcGVyIGxheWVycyBpbnN0ZWFkIG9mIGp1c3Qg
bG9nZ2luZyB0aGVtLgorCiAyMDIyLTAzLTE1ICBBbnRvaW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJr
aXQub3JnPgogCiAgICAgICAgIERpYWxvZyBlbGVtZW50IG9ubHkgYW5pbWF0ZXMgb25jZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5kZXggM2I5YTg3MGU1MWNlY2Ji
NWRjMTVkODBiYzM5ZGI3MGEyYjQxYmViOC4uYjI5NmQ2ODk1M2E4OTg1NGRkODEwZDY4M2M3MzFh
ZjYxN2FmMWI2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCkBA
IC0yMTc1LDcgKzIxNzUsOSBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6Om5vbmVTdXBwb3J0ZWQo
KQogCiAgICAgLy8gNi4xIC0gU2V0IHRoZSBlcnJvciBhdHRyaWJ1dGUgdG8gYSBuZXcgTWVkaWFF
cnJvciBvYmplY3Qgd2hvc2UgY29kZSBhdHRyaWJ1dGUgaXMgc2V0IHRvCiAgICAgLy8gTUVESUFf
RVJSX1NSQ19OT1RfU1VQUE9SVEVELgotICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUo
TWVkaWFFcnJvcjo6TUVESUFfRVJSX1NSQ19OT1RfU1VQUE9SVEVELCAiVW5zdXBwb3J0ZWQgc291
cmNlIHR5cGUiX3MpOworICAgIG1fZXJyb3IgPSBtX3BsYXllcgorICAgICAgICA/IE1lZGlhRXJy
b3I6OmNyZWF0ZShNZWRpYUVycm9yOjpNRURJQV9FUlJfU1JDX05PVF9TVVBQT1JURUQsIG1fcGxh
eWVyLT5sYXN0RXJyb3JNZXNzYWdlKCkpCisgICAgICAgIDogTWVkaWFFcnJvcjo6Y3JlYXRlKE1l
ZGlhRXJyb3I6Ok1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRFRCwgIlVuc3VwcG9ydGVkIHNvdXJj
ZSB0eXBlIl9zKTsKIAogICAgIC8vIDYuMiAtIEZvcmdldCB0aGUgbWVkaWEgZWxlbWVudCdzIG1l
ZGlhLXJlc291cmNlLXNwZWNpZmljIHRleHQgdHJhY2tzLgogICAgIGZvcmdldFJlc291cmNlU3Bl
Y2lmaWNUcmFja3MoKTsKQEAgLTIyMTMsMTIgKzIyMTUsMjQgQEAgdm9pZCBIVE1MTWVkaWFFbGVt
ZW50OjptZWRpYUxvYWRpbmdGYWlsZWRGYXRhbGx5KE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGUg
ZXJyb3IKICAgICBzdG9wUGVyaW9kaWNUaW1lcnMoKTsKICAgICBtX2xvYWRTdGF0ZSA9IFdhaXRp
bmdGb3JTb3VyY2U7CiAKKyAgICBjb25zdCBhdXRvIGdldEVycm9yTWVzc2FnZSA9IFsmXSAoU3Ry
aW5nJiYgZGVmYXVsdE1lc3NhZ2UpIHsKKyAgICAgICAgU3RyaW5nIG1lc3NhZ2UgPSBXVEZNb3Zl
KGRlZmF1bHRNZXNzYWdlKTsKKyAgICAgICAgaWYgKCFtX3BsYXllcikKKyAgICAgICAgICAgIHJl
dHVybiBtZXNzYWdlOworCisgICAgICAgIGF1dG8gbGFzdEVycm9yTWVzc2FnZSA9IG1fcGxheWVy
LT5sYXN0RXJyb3JNZXNzYWdlKCk7CisgICAgICAgIGlmICghbGFzdEVycm9yTWVzc2FnZSkKKyAg
ICAgICAgICAgIHJldHVybiBtZXNzYWdlOworCisgICAgICAgIHJldHVybiBtYWtlU3RyaW5nKG1l
c3NhZ2UsICI6ICIsIGxhc3RFcnJvck1lc3NhZ2UpOworICAgIH07CisKICAgICAvLyAyIC0gU2V0
IHRoZSBlcnJvciBhdHRyaWJ1dGUgdG8gYSBuZXcgTWVkaWFFcnJvciBvYmplY3Qgd2hvc2UgY29k
ZSBhdHRyaWJ1dGUgaXMKICAgICAvLyBzZXQgdG8gTUVESUFfRVJSX05FVFdPUksvTUVESUFfRVJS
X0RFQ09ERS4KICAgICBpZiAoZXJyb3IgPT0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6TmV0
d29ya0Vycm9yKQotICAgICAgICBtX2Vycm9yID0gTWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJy
b3I6Ok1FRElBX0VSUl9ORVRXT1JLLCAiTWVkaWEgZmFpbGVkIHRvIGxvYWQiX3MpOworICAgICAg
ICBtX2Vycm9yID0gTWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9ORVRX
T1JLLCBnZXRFcnJvck1lc3NhZ2UoIk1lZGlhIGZhaWxlZCB0byBsb2FkIl9zKSk7CiAgICAgZWxz
ZSBpZiAoZXJyb3IgPT0gTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZTo6RGVjb2RlRXJyb3IpCi0g
ICAgICAgIG1fZXJyb3IgPSBNZWRpYUVycm9yOjpjcmVhdGUoTWVkaWFFcnJvcjo6TUVESUFfRVJS
X0RFQ09ERSwgIk1lZGlhIGZhaWxlZCB0byBkZWNvZGUiX3MpOworICAgICAgICBtX2Vycm9yID0g
TWVkaWFFcnJvcjo6Y3JlYXRlKE1lZGlhRXJyb3I6Ok1FRElBX0VSUl9ERUNPREUsIGdldEVycm9y
TWVzc2FnZSgiTWVkaWEgZmFpbGVkIHRvIGRlY29kZSJfcykpOwogICAgIGVsc2UKICAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCA0NTUwNTI5ZGQ1OTZmNjJhY2VmZDk1ZmQ3MDE1
YTFkMmM0NWZiOTU3Li42ZjQ5YWYwNDZkMTI0NjNhNGRlZmE5ZjE0ODlhNzE1MzJhOGRhZjhhIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3Bw
CkBAIC0xMzMzLDYgKzEzMzMsNyBAQCB2b2lkIE1lZGlhUGxheWVyOjpuZXR3b3JrU3RhdGVDaGFu
Z2VkKCkKICAgICAvLyBJZiBtb3JlIHRoYW4gb25lIG1lZGlhIGVuZ2luZSBpcyBpbnN0YWxsZWQg
YW5kIHRoaXMgb25lIGZhaWxlZCBiZWZvcmUgZmluZGluZyBtZXRhZGF0YSwKICAgICAvLyBsZXQg
dGhlIG5leHQgZW5naW5lIHRyeS4KICAgICBpZiAobV9wcml2YXRlLT5uZXR3b3JrU3RhdGUoKSA+
PSBNZWRpYVBsYXllcjo6TmV0d29ya1N0YXRlOjpGb3JtYXRFcnJvciAmJiBtX3ByaXZhdGUtPnJl
YWR5U3RhdGUoKSA8IE1lZGlhUGxheWVyOjpSZWFkeVN0YXRlOjpIYXZlTWV0YWRhdGEpIHsKKyAg
ICAgICAgbV9sYXN0RXJyb3JNZXNzYWdlID0gbV9wcml2YXRlLT5lcnJvck1lc3NhZ2UoKTsKICAg
ICAgICAgY2xpZW50KCkubWVkaWFQbGF5ZXJFbmdpbmVGYWlsZWRUb0xvYWQoKTsKICAgICAgICAg
aWYgKCFtX2FjdGl2ZUVuZ2luZUlkZW50aWZpZXIgJiYgaW5zdGFsbGVkTWVkaWFFbmdpbmVzKCku
c2l6ZSgpID4gMSAmJiAobV9jb250ZW50VHlwZS5pc0VtcHR5KCkgfHwgbmV4dEJlc3RNZWRpYUVu
Z2luZShtX2N1cnJlbnRNZWRpYUVuZ2luZSkpKSB7CiAgICAgICAgICAgICBtX3JlbG9hZFRpbWVy
LnN0YXJ0T25lU2hvdCgwX3MpOwpAQCAtMTkxMiw2ICsxOTEzLDExIEBAIFN0cmluZyBjb252ZXJ0
RW51bWVyYXRpb25Ub1N0cmluZyhNZWRpYVBsYXllcjo6QnVmZmVyaW5nUG9saWN5IGVudW1lcmF0
aW9uVmFsdWUpCiAgICAgcmV0dXJuIHZhbHVlc1tzdGF0aWNfY2FzdDxzaXplX3Q+KGVudW1lcmF0
aW9uVmFsdWUpXTsKIH0KIAorU3RyaW5nIE1lZGlhUGxheWVyOjpsYXN0RXJyb3JNZXNzYWdlKCkg
Y29uc3QKK3sKKyAgICByZXR1cm4gbV9sYXN0RXJyb3JNZXNzYWdlOworfQorCiB9CiAKICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKaW5k
ZXggMjI0NGM4YjFhYzlkYjA0MDdlNGFmNzYwNjFkYTIxMjVkNGVlZjY0NS4uOGUyNzFkYjdkZDhl
OTM3NTdhZjBhY2UyMTI1OWE3ZDlhMDQzODM0ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCkBAIC02OTcsNiArNjk3LDggQEAgcHVibGljOgog
CiAgICAgdm9pZCBwbGF5ZXJDb250ZW50Qm94UmVjdENoYW5nZWQoY29uc3QgTGF5b3V0UmVjdCYp
OwogCisgICAgU3RyaW5nIGxhc3RFcnJvck1lc3NhZ2UoKSBjb25zdDsKKwogcHJpdmF0ZToKICAg
ICBNZWRpYVBsYXllcihNZWRpYVBsYXllckNsaWVudCYpOwogICAgIE1lZGlhUGxheWVyKE1lZGlh
UGxheWVyQ2xpZW50JiwgTWVkaWFQbGF5ZXJFbnVtczo6TWVkaWFFbmdpbmVJZGVudGlmaWVyKTsK
QEAgLTc0MSw2ICs3NDMsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9zaG91bGRDb250aW51ZUFm
dGVyS2V5TmVlZGVkIHsgZmFsc2UgfTsKICNlbmRpZgogICAgIGJvb2wgbV9pc0dhdGhlcmluZ1Zp
ZGVvRnJhbWVNZXRhZGF0YSB7IGZhbHNlIH07CisgICAgU3RyaW5nIG1fbGFzdEVycm9yTWVzc2Fn
ZTsKIH07CiAKIGNsYXNzIE1lZGlhUGxheWVyRmFjdG9yeSB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCmluZGV4IDMwNWFj
NWNlMjBiYTU0NzViNTVhMWZkM2Q5MzMwYTAyM2VhOWJhZDAuLmJjODU1ZTNlMjU5YzViZjc1ZTBm
Y2U2NTI2ZTdhYjA2N2EyNGQyYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCkBAIC0zMjksNiArMzI5LDggQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgdm9pZCBwbGF5ZXJDb250ZW50Qm94UmVjdENoYW5nZWQoY29uc3Qg
TGF5b3V0UmVjdCYpIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIHNldFJlc291cmNlT3duZXIoY29u
c3QgUHJvY2Vzc0lkZW50aXR5JikgeyB9CisKKyAgICB2aXJ0dWFsIFN0cmluZyBlcnJvck1lc3Nh
Z2UoKSBjb25zdCB7IHJldHVybiB7IH07IH0KIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01l
ZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXggMDczMTViNjJlNjBmOTIwZjJjZDMx
NDRkODIyZWU2MGVjYmU4ZjNhNi4uYjQ5YjlmZDFkZGM0M2FkMDRmOTE2MDQyNGIyOWU4MDUzNzU2
NWJmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVh
bWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5j
cHAKQEAgLTE3MjgsOCArMTcyOCwxMiBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
cjo6aGFuZGxlTWVzc2FnZShHc3RNZXNzYWdlKiBtZXNzYWdlKQogICAgICAgICBnc3RfbWVzc2Fn
ZV9wYXJzZV9lcnJvcihtZXNzYWdlLCAmZXJyLm91dFB0cigpLCAmZGVidWcub3V0UHRyKCkpOwog
ICAgICAgICBHU1RfRVJST1IoIkVycm9yICVkOiAlcyAodXJsPSVzKSIsIGVyci0+Y29kZSwgZXJy
LT5tZXNzYWdlLCBtX3VybC5zdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKIAorICAgICAgICBtX2Vy
cm9yTWVzc2FnZSA9IGVyci0+bWVzc2FnZTsKKwogICAgICAgICBlcnJvciA9IE1lZGlhUGxheWVy
OjpOZXR3b3JrU3RhdGU6OkVtcHR5OwogICAgICAgICBpZiAoZ19lcnJvcl9tYXRjaGVzKGVyci5n
ZXQoKSwgR1NUX1NUUkVBTV9FUlJPUiwgR1NUX1NUUkVBTV9FUlJPUl9DT0RFQ19OT1RfRk9VTkQp
CisgICAgICAgICAgICB8fCBnX2Vycm9yX21hdGNoZXMoZXJyLmdldCgpLCBHU1RfU1RSRUFNX0VS
Uk9SLCBHU1RfU1RSRUFNX0VSUk9SX0RFQ1JZUFQpCisgICAgICAgICAgICB8fCBnX2Vycm9yX21h
dGNoZXMoZXJyLmdldCgpLCBHU1RfU1RSRUFNX0VSUk9SLCBHU1RfU1RSRUFNX0VSUk9SX0RFQ1JZ
UFRfTk9LRVkpCiAgICAgICAgICAgICB8fCBnX2Vycm9yX21hdGNoZXMoZXJyLmdldCgpLCBHU1Rf
U1RSRUFNX0VSUk9SLCBHU1RfU1RSRUFNX0VSUk9SX1dST05HX1RZUEUpCiAgICAgICAgICAgICB8
fCBnX2Vycm9yX21hdGNoZXMoZXJyLmdldCgpLCBHU1RfU1RSRUFNX0VSUk9SLCBHU1RfU1RSRUFN
X0VSUk9SX0ZBSUxFRCkKICAgICAgICAgICAgIHx8IGdfZXJyb3JfbWF0Y2hlcyhlcnIuZ2V0KCks
IEdTVF9DT1JFX0VSUk9SLCBHU1RfQ09SRV9FUlJPUl9NSVNTSU5HX1BMVUdJTikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXll
clByaXZhdGVHU3RyZWFtZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dz
dHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAppbmRleCA2NGYwNTljZGQxYWYy
NjRmZjQ2ZDZjMDA5YjhhY2JmNjVjMzFlYmQ3Li41NjBmYzk3N2M0YmQ3MzBkMGVlZjUxZWNmODJk
NDM0MDM1MWM1YTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJl
YW1lci5oCkBAIC0zOTIsNiArMzkyLDggQEAgcHJvdGVjdGVkOgogCiAgICAgc3RkOjpvcHRpb25h
bDxHc3RWaWRlb0RlY29kZXJQbGF0Zm9ybT4gbV92aWRlb0RlY29kZXJQbGF0Zm9ybTsKIAorICAg
IFN0cmluZyBlcnJvck1lc3NhZ2UoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX2Vycm9yTWVz
c2FnZTsgfQorCiBwcml2YXRlOgogICAgIGNsYXNzIFRhc2tBdE1lZGlhVGltZVNjaGVkdWxlciB7
CiAgICAgcHVibGljOgpAQCAtNTc5LDYgKzU4MSw3IEBAIHByaXZhdGU6CiAjZW5kaWYKIAogICAg
IFJlZlB0cjxHQk1CdWZmZXJTd2FwY2hhaW4+IG1fc3dhcGNoYWluOworICAgIFN0cmluZyBtX2Vy
cm9yTWVzc2FnZTsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5cHRvckdT
dHJlYW1lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
ZW1lL1dlYktpdENvbW1vbkVuY3J5cHRpb25EZWNyeXB0b3JHU3RyZWFtZXIuY3BwCmluZGV4IDEx
ZGYzZDc5N2VlOGI0N2U5YWE1NGQzZmE2ZDgyZWNmMWViMzg1OTMuLmZhNTJiNGU3NGM1NmQ3ZTJl
NTUxMGY3ODZjOTU2MTBmZWY1YzgxOGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2dzdHJlYW1lci9lbWUvV2ViS2l0Q29tbW9uRW5jcnlwdGlvbkRlY3J5cHRv
ckdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL2VtZS9XZWJLaXRDb21tb25FbmNyeXB0aW9uRGVjcnlwdG9yR1N0cmVhbWVyLmNwcApA
QCAtMjEwLDcgKzIxMCw3IEBAIHN0YXRpYyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxhY2Uo
R3N0QmFzZVRyYW5zZm9ybSogYmFzZSwgR3N0QnVmZmVyKiBidWZmZXIpCiAgICAgICAgICAgICBy
ZXR1cm4gR1NUX0ZMT1dfRkxVU0hJTkc7CiAgICAgICAgIH0KICAgICAgICAgaWYgKCFwcml2LT5j
ZG1Qcm94eSkgewotICAgICAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiQ0RNUHJveHkg
d2FzIG5vdCByZXRyaWV2ZWQgaW4gdGltZSIpOworICAgICAgICAgICAgR1NUX0VMRU1FTlRfRVJS
T1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiQ0RNUHJveHkgd2FzIG5vdCByZXRyaWV2ZWQgaW4g
dGltZSIpLCAobnVsbHB0cikpOwogICAgICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9TVVBQ
T1JURUQ7CiAgICAgICAgIH0KICAgICAgICAgR1NUX0RFQlVHX09CSkVDVChzZWxmLCAiQ0RNIG5v
dyBhdmFpbGFibGUgd2l0aCBhZGRyZXNzICVwIiwgcHJpdi0+Y2RtUHJveHkuZ2V0KCkpOwpAQCAt
MjI0LDE4ICsyMjQsMTggQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4gdHJhbnNmb3JtSW5QbGFjZShH
c3RCYXNlVHJhbnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZlcikKIAogICAgIHVuc2lnbmVk
IGl2U2l6ZTsKICAgICBpZiAoIWdzdF9zdHJ1Y3R1cmVfZ2V0X3VpbnQocHJvdGVjdGlvbk1ldGEt
PmluZm8sICJpdl9zaXplIiwgJml2U2l6ZSkpIHsKLSAgICAgICAgR1NUX0VSUk9SX09CSkVDVChz
ZWxmLCAiRmFpbGVkIHRvIGdldCBpdl9zaXplIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9S
KHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIkZhaWxlZCB0byBnZXQgaXZfc2l6ZSIpLCAobnVsbHB0
cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAgICAg
aWYgKCFpdlNpemUgJiYgIWdzdF9zdHJ1Y3R1cmVfZ2V0X3VpbnQocHJvdGVjdGlvbk1ldGEtPmlu
Zm8sICJjb25zdGFudF9pdl9zaXplIiwgJml2U2l6ZSkpIHsKLSAgICAgICAgR1NUX0VSUk9SX09C
SkVDVChzZWxmLCAiTm8gaXZfc2l6ZSBhbmQgZmFpbGVkIHRvIGdldCBjb25zdGFudF9pdl9zaXpl
Iik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJTEVELCAoIk5v
IGl2X3NpemUgYW5kIGZhaWxlZCB0byBnZXQgY29uc3RhbnRfaXZfc2l6ZSIpLCAobnVsbHB0cikp
OwogICAgICAgICBBU1NFUlQoaXNDYmNzKTsKICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9T
VVBQT1JURUQ7CiAgICAgfQogCiAgICAgZ2Jvb2xlYW4gZW5jcnlwdGVkOwogICAgIGlmICghZ3N0
X3N0cnVjdHVyZV9nZXRfYm9vbGVhbihwcm90ZWN0aW9uTWV0YS0+aW5mbywgImVuY3J5cHRlZCIs
ICZlbmNyeXB0ZWQpKSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZhaWxlZCB0
byBnZXQgZW5jcnlwdGVkIGZsYWciKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwg
U1RSRUFNLCBGQUlMRUQsICgiRmFpbGVkIHRvIGdldCBlbmNyeXB0ZWQgZmxhZyIpLCAobnVsbHB0
cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAKQEAg
LTI0OSw3ICsyNDksNyBAQCBzdGF0aWMgR3N0Rmxvd1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdz
dEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZlciogYnVmZmVyKQogICAgIHVuc2lnbmVkIHN1
YlNhbXBsZUNvdW50ID0gMDsKICAgICAvLyBjYmNzIGNvdWxkIG5vdCBpbmNsdWRlIHRoZSBzdWJz
YW1wbGVfY291bnQuCiAgICAgaWYgKCFnc3Rfc3RydWN0dXJlX2dldF91aW50KHByb3RlY3Rpb25N
ZXRhLT5pbmZvLCAic3Vic2FtcGxlX2NvdW50IiwgJnN1YlNhbXBsZUNvdW50KSAmJiAhaXNDYmNz
KSB7Ci0gICAgICAgIEdTVF9FUlJPUl9PQkpFQ1Qoc2VsZiwgIkZhaWxlZCB0byBnZXQgc3Vic2Ft
cGxlX2NvdW50Iik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VSUk9SKHNlbGYsIFNUUkVBTSwgRkFJ
TEVELCAoIkZhaWxlZCB0byBnZXQgc3Vic2FtcGxlX2NvdW50IiksIChudWxscHRyKSk7CiAgICAg
ICAgIHJldHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KIApAQCAtMjU4LDEyICsy
NTgsMTIgQEAgc3RhdGljIEdzdEZsb3dSZXR1cm4gdHJhbnNmb3JtSW5QbGFjZShHc3RCYXNlVHJh
bnNmb3JtKiBiYXNlLCBHc3RCdWZmZXIqIGJ1ZmZlcikKICAgICBpZiAoc3ViU2FtcGxlQ291bnQp
IHsKICAgICAgICAgdmFsdWUgPSBnc3Rfc3RydWN0dXJlX2dldF92YWx1ZShwcm90ZWN0aW9uTWV0
YS0+aW5mbywgInN1YnNhbXBsZXMiKTsKICAgICAgICAgaWYgKCF2YWx1ZSkgewotICAgICAgICAg
ICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiRmFpbGVkIHRvIGdldCBzdWJzYW1wbGVzIik7Cisg
ICAgICAgICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJGYWls
ZWQgdG8gZ2V0IHN1YnNhbXBsZXMiKSwgKG51bGxwdHIpKTsKICAgICAgICAgICAgIHJldHVybiBH
U1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgICAgICB9CiAgICAgICAgIHN1YlNhbXBsZXNCdWZm
ZXIgPSBnc3RfdmFsdWVfZ2V0X2J1ZmZlcih2YWx1ZSk7CiAgICAgICAgIGlmICghc3ViU2FtcGxl
c0J1ZmZlcikgewotICAgICAgICAgICAgR1NUX0VSUk9SX09CSkVDVChzZWxmLCAiVGhlcmUgaXMg
bm8gc3Vic2FtcGxlcyBidWZmZXIsIGJ1dCBhIHBvc2l0aXZlIHN1YnNhbXBsZSBjb3VudCIpOwor
ICAgICAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQsICgiVGhl
cmUgaXMgbm8gc3Vic2FtcGxlcyBidWZmZXIsIGJ1dCBhIHBvc2l0aXZlIHN1YnNhbXBsZSBjb3Vu
dCIpLCAobnVsbHB0cikpOwogICAgICAgICAgICAgcmV0dXJuIEdTVF9GTE9XX05PVF9TVVBQT1JU
RUQ7CiAgICAgICAgIH0KICAgICB9CkBAIC0yNzEsMTQgKzI3MSwxNCBAQCBzdGF0aWMgR3N0Rmxv
d1JldHVybiB0cmFuc2Zvcm1JblBsYWNlKEdzdEJhc2VUcmFuc2Zvcm0qIGJhc2UsIEdzdEJ1ZmZl
ciogYnVmZmVyKQogICAgIHZhbHVlID0gZ3N0X3N0cnVjdHVyZV9nZXRfdmFsdWUocHJvdGVjdGlv
bk1ldGEtPmluZm8sICJraWQiKTsKIAogICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgR1NUX0VS
Uk9SX09CSkVDVChzZWxmLCAiRmFpbGVkIHRvIGdldCBrZXkgaWQgZm9yIGJ1ZmZlciIpOworICAg
ICAgICBHU1RfRUxFTUVOVF9FUlJPUihzZWxmLCBTVFJFQU0sIEZBSUxFRCwgKCJGYWlsZWQgdG8g
Z2V0IGtleSBpZCBmb3IgYnVmZmVyIiksIChudWxscHRyKSk7CiAgICAgICAgIHJldHVybiBHU1Rf
RkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KICAgICBHc3RCdWZmZXIqIGtleUlEQnVmZmVyID0g
Z3N0X3ZhbHVlX2dldF9idWZmZXIodmFsdWUpOwogCiAgICAgdmFsdWUgPSBnc3Rfc3RydWN0dXJl
X2dldF92YWx1ZShwcm90ZWN0aW9uTWV0YS0+aW5mbywgIml2Iik7CiAgICAgaWYgKCF2YWx1ZSkg
ewotICAgICAgICBHU1RfRVJST1JfT0JKRUNUKHNlbGYsICJGYWlsZWQgdG8gZ2V0IElWIGZvciBz
YW1wbGUiKTsKKyAgICAgICAgR1NUX0VMRU1FTlRfRVJST1Ioc2VsZiwgU1RSRUFNLCBGQUlMRUQs
ICgiRmFpbGVkIHRvIGdldCBJViBmb3Igc2FtcGxlIiksIChudWxscHRyKSk7CiAgICAgICAgIHJl
dHVybiBHU1RfRkxPV19OT1RfU1VQUE9SVEVEOwogICAgIH0KIApAQCAtMzA3LDcgKzMwNyw3IEBA
IHN0YXRpYyBHc3RGbG93UmV0dXJuIHRyYW5zZm9ybUluUGxhY2UoR3N0QmFzZVRyYW5zZm9ybSog
YmFzZSwgR3N0QnVmZmVyKiBidWZmZXIpCiAgICAgICAgICAgICBHU1RfREVCVUdfT0JKRUNUKHNl
bGYsICJEZWNyeXB0aW9uIGFib3J0ZWQgYmVjYXVzZSBvZiBmbHVzaCIpOwogICAgICAgICAgICAg
cmV0dXJuIEdTVF9GTE9XX0ZMVVNISU5HOwogICAgICAgICB9Ci0gICAgICAgIEdTVF9FUlJPUl9P
QkpFQ1Qoc2VsZiwgIkRlY3J5cHRpb24gZmFpbGVkIik7CisgICAgICAgIEdTVF9FTEVNRU5UX0VS
Uk9SKHNlbGYsIFNUUkVBTSwgREVDUllQVCwgKCJEZWNyeXB0aW9uIGZhaWxlZCIpLCAobnVsbHB0
cikpOwogICAgICAgICByZXR1cm4gR1NUX0ZMT1dfTk9UX1NVUFBPUlRFRDsKICAgICB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>