<?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>190951</bug_id>
          
          <creation_ts>2018-10-26 03:38:57 -0700</creation_ts>
          <short_desc>Adopt -setOverrideRouteSharingPolicy:routingContextUID: SPI</short_desc>
          <delta_ts>2018-11-27 11:32:04 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</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>
          <dependson>190973</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>achristensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jonlee</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1472382</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-10-26 03:38:57 -0700</bug_when>
    <thetext>Adopt -setOverrideRouteSharingPolicy:routingContextUID: SPI</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472383</commentid>
    <comment_count>1</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-10-26 03:39:43 -0700</bug_when>
    <thetext>&lt;rdar://problem/45213065&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472384</commentid>
    <comment_count>2</comment_count>
      <attachid>353172</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-10-26 03:43:19 -0700</bug_when>
    <thetext>Created attachment 353172
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472385</commentid>
    <comment_count>3</comment_count>
      <attachid>353173</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-10-26 03:46:26 -0700</bug_when>
    <thetext>Created attachment 353173
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472388</commentid>
    <comment_count>4</comment_count>
      <attachid>353174</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-10-26 04:35:48 -0700</bug_when>
    <thetext>Created attachment 353174
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472397</commentid>
    <comment_count>5</comment_count>
      <attachid>353174</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-10-26 05:41:02 -0700</bug_when>
    <thetext>Comment on attachment 353174
Patch

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

&gt; Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.messages.in:38
&gt; +    RequestRouteSharingPolicyAndContextUID(uint64_t contextId) -&gt; (enum:uint8_t WebCore::RouteSharingPolicy routeSharingPolicy, String routingContextUID) Async

This message is never sent.  You need to add a call to Connection::sendWithAsyncReply somewhere.
This is also dependent on https://trac.webkit.org/changeset/237294/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472407</commentid>
    <comment_count>6</comment_count>
      <attachid>353179</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-10-26 06:16:02 -0700</bug_when>
    <thetext>Created attachment 353179
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472415</commentid>
    <comment_count>7</comment_count>
      <attachid>353181</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-10-26 06:54:21 -0700</bug_when>
    <thetext>Created attachment 353181
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472449</commentid>
    <comment_count>8</comment_count>
      <attachid>353181</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-26 08:04:54 -0700</bug_when>
    <thetext>Comment on attachment 353181
Patch

Clearing flags on attachment: 353181

Committed r237458: &lt;https://trac.webkit.org/changeset/237458&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472450</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-26 08:04:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472585</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-10-26 14:30:48 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 190973</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1472940</commentid>
    <comment_count>11</comment_count>
      <attachid>353296</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-10-29 10:17:26 -0700</bug_when>
    <thetext>Created attachment 353296
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1476768</commentid>
    <comment_count>12</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2018-11-08 18:46:15 -0800</bug_when>
    <thetext>Can we land this now?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481548</commentid>
    <comment_count>13</comment_count>
      <attachid>355644</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-11-26 09:46:18 -0800</bug_when>
    <thetext>Created attachment 355644
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481656</commentid>
    <comment_count>14</comment_count>
      <attachid>355644</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-26 13:20:33 -0800</bug_when>
    <thetext>Comment on attachment 355644
Patch for landing

Rejecting attachment 355644 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 355644, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Logging in as commit-queue@webkit.org...
Fetching: https://bugs.webkit.org/attachment.cgi?id=355644&amp;action=edit
Fetching: https://bugs.webkit.org/show_bug.cgi?id=190951&amp;ctype=xml&amp;excludefield=attachmentdata
Processing 1 patch from 1 bug.
Processing patch 355644 from bug 190951.
Fetching: https://bugs.webkit.org/attachment.cgi?id=355644
Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Parsed 16 diffs from patch file(s).
patching file Source/WebCore/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/WebCore/PAL/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/WebKit/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h
patching file Source/WebCore/platform/cocoa/VideoFullscreenModel.h
patching file Source/WebCore/platform/cocoa/VideoFullscreenModelVideoElement.h
patching file Source/WebCore/platform/cocoa/VideoFullscreenModelVideoElement.mm
patching file Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h
patching file Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm
Hunk #4 succeeded at 1248 (offset 3 lines).
patching file Source/WebKit/Platform/IPC/MessageSender.h
patching file Source/WebKit/Scripts/webkit/messages.py
Hunk #1 FAILED at 561.
1 out of 1 hunk FAILED -- saving rejects to file Source/WebKit/Scripts/webkit/messages.py.rej
patching file Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.h
patching file Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.mm
patching file Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.h
patching file Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.messages.in
patching file Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.mm

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: https://webkit-queues.webkit.org/results/10157864</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481662</commentid>
    <comment_count>15</comment_count>
      <attachid>355670</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-11-26 13:41:12 -0800</bug_when>
    <thetext>Created attachment 355670
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481716</commentid>
    <comment_count>16</comment_count>
      <attachid>355670</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-26 15:04:43 -0800</bug_when>
    <thetext>Comment on attachment 355670
Patch for landing

Rejecting attachment 355670 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 355670, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in Source/WebCore/PAL/ChangeLog contains OOPS!.

Full output: https://webkit-queues.webkit.org/results/10159016</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481723</commentid>
    <comment_count>17</comment_count>
      <attachid>355683</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-11-26 15:23:53 -0800</bug_when>
    <thetext>Created attachment 355683
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481743</commentid>
    <comment_count>18</comment_count>
      <attachid>355683</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-26 16:02:35 -0800</bug_when>
    <thetext>Comment on attachment 355683
Patch for landing

Clearing flags on attachment: 355683

Committed r238528: &lt;https://trac.webkit.org/changeset/238528&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481744</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-26 16:02:37 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481934</commentid>
    <comment_count>20</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-11-27 09:28:54 -0800</bug_when>
    <thetext>Committed r238556: &lt;https://trac.webkit.org/changeset/238556&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1481991</commentid>
    <comment_count>21</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2018-11-27 11:32:04 -0800</bug_when>
    <thetext>Committed r238560: &lt;https://trac.webkit.org/changeset/238560&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>353172</attachid>
            <date>2018-10-26 03:43:19 -0700</date>
            <delta_ts>2018-10-26 03:46:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190951-20181026124318.patch</filename>
            <type>text/plain</type>
            <size>17695</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3Mzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk5MDEyZDlkMDk5OWFm
MThlMGQ2MTk4MTgzMmFkNTZmMmZlNDljMy4uYjJjZDk0MWQ5ZmE1ODQzODFmOTlmMDg1MTFkMTEy
Y2Q4MGQ1MTlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlcXVlc3QgdGhlIGNvcnJlY3Qgcm91dGUgcG9saWN5IGFuZCBjb250ZXh0
IGZyb20gdGhlIFZpZGVvRnVsbHNjcmVlbk1vZGVsLgorCisgICAgICAgICogcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaDoKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNj
cmVlbk1vZGVsOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAg
ICAgICogcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVu
dC5tbToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50
OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgorICAgICAgICAoLVtX
ZWJBVlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9s
aWN5OnJvdXRpbmdDb250ZXh0VUlEOl0pOgorICAgICAgICAoVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKToKKyAgICAgICAgKFZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Ojpkb1NldHVwKToKKwogMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8
amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbRU1FXVtDb2NvYV0gQ2Fubm90IHBsYXkg
dW5tdXhlZCB2aWRlbyBhbmQgYXVkaW8gZk1QNCBzdHJlYW1zIGVuY3J5cHRlZCB3aXRoIGRpZmZl
cmVudCBrZXlzIHZpYSBNU0UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IGRmNTFkZDQ0MjBiYmQzZDc3
ODA1Y2U2M2M3ZWNjOGNmMDhkOGY2YTEuLjdhYjQxYzJlZjVjNjUyYThjYTNmNWFjNDM4ZDQxZGRj
MmQ4MzI0NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE4LTEwLTI2
ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRP
dmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oOgorCiAyMDE4LTA5
LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJ
QU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZB
UklBTlQgYnVpbGRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg5Yjg1YjlmNGEzNWM4NTlmYmZiMjQwODczZjViMGZm
MDViMzU3MTkuLjU0NTRkNzQ4YTEyMDY0ODhmNTYyYmFiZTIwZmM2YzAzMDA4OTY3MzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTgtMTAtMjYgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRvcHQgLXNldE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5
OnJvdXRpbmdDb250ZXh0VUlEOiBTUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5MDk1MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDUyMTMwNjU+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGFu
IGFzeW5jcm9ub3VzIHJlcGx5IHJlcXVlc3QgdG8gVmlkZW9GdWxsc2NyZWVuTWFuYWdlci4KKwor
ICAgICAgICBEcml2ZS1ieSBmaXg6IG1lc3NhZ2VzLnB5IGdlbmVyYXRlcyAiV1RGTW92ZSgqYXJn
MSwgKmFyZzIpIiBpbnN0ZWFkIG9mICJXVEZNb3ZlKCphcmcxKSwgV1RGTW92ZSgqYXJnMikiCisg
ICAgICAgIGluIGl0cyByZXBseSBoYW5kbGVyIGdlbmVyYXRpb24uCisKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcjo6cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQpOgorCiAy
MDE4LTA5LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNE
S19WQVJJQU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24t
U0RLX1ZBUklBTlQgYnVpbGRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9jb2NvYS9BVktpdFNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZL
aXRTUEkuaAppbmRleCA1MGViODM1YzAwOTVlOTRiMGQ4YTdkMmNhN2JiYWM0ZWY5OGFjYzgxLi4w
ZTdlY2I3Mzg5Y2IyMTZkYWVjOTU1ODQzZjlkMjgyZTVhZTAwOTRkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJLmgKQEAgLTczLDYgKzczLDcgQEAgTlNfQVNT
VU1FX05PTk5VTExfQkVHSU4KIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVy
PWlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSkgQk9PTCBwaWN0dXJlSW5QaWN0dXJlQWN0aXZlOwog
QHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0dXJl
U3VzcGVuZGVkKSBCT09MIHBpY3R1cmVJblBpY3R1cmVTdXNwZW5kZWQ7CiBAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHkpIEJPT0wgcGljdHVyZUluUGljdHVyZVdhc1N0YXJ0ZWRXaGVuRW50
ZXJpbmdCYWNrZ3JvdW5kOworLSAodm9pZClzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1Bv
bGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5T
U3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQ7CiBAZW5kCiAKIEBwcm90b2NvbCBBVlBsYXllclZp
ZXdDb250cm9sbGVyRGVsZWdhdGVfV2ViS2l0T25seSA8QVZQbGF5ZXJWaWV3Q29udHJvbGxlckRl
bGVnYXRlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9G
dWxsc2NyZWVuTW9kZWwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1vZGVsLmgKaW5kZXggOTYwN2E1N2NjOWM0ODk5YTIyMTE4Y2RiYjE5MWFjYWEwN2My
ZDJjOS4uZjY3MTQ5MGFlYmJhZTk2YTgyMDk4MDkyOGRlZjA0ZmY5ZDdhNWIyMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5o
CkBAIC0yOCwxMCArMjgsMTIgQEAKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFU
Rk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKKyNpbmNsdWRl
ICJBdWRpb1Nlc3Npb24uaCIKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNpbmNsdWRlICJIVE1M
TWVkaWFFbGVtZW50RW51bXMuaCIKICNpbmNsdWRlICJNZWRpYVBsYXllckVudW1zLmgiCiAjaW5j
bHVkZSAiUGxheWJhY2tTZXNzaW9uTW9kZWwuaCIKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhh
bmRsZXIuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBPQkpDX0NMQVNTIEFWUGxheWVy
Vmlld0NvbnRyb2xsZXI7CkBAIC02Miw2ICs2NCw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgd2lsbEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRF
eGl0UGljdHVyZUluUGljdHVyZSgpID0gMDsKIAorICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0Um91
dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJvdXRl
U2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgeyBjb21wbGV0aW9u
SGFuZGxlcihSb3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQsIGVtcHR5U3RyaW5nKCkpOyB9CisK
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIHZpcnR1YWwgVUlWaWV3Q29udHJvbGxlciAq
cHJlc2VudGluZ1ZpZXdDb250cm9sbGVyKCkgeyByZXR1cm4gbnVsbHB0cjsgfQogICAgIHZpcnR1
YWwgVUlWaWV3Q29udHJvbGxlciAqY3JlYXRlVmlkZW9GdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIo
QVZQbGF5ZXJWaWV3Q29udHJvbGxlciAqKSB7IHJldHVybiBudWxscHRyOyB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVv
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVu
TW9kZWxWaWRlb0VsZW1lbnQuaAppbmRleCA5YzVjMjM4MjNjYTE1NjY5NjE5ZmI3YTNkY2QxMGYw
Y2IxMWQ1ZWNjLi5iZmEyOWY2MmU5MTI3NWI2NWI2Njc0Y2Q2N2MzZjRjMGNkMGRkZjY5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2Rl
bFZpZGVvRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgKQEAgLTcyLDYgKzcyLDcgQEAgcHVibGljOgog
ICAgIEZsb2F0U2l6ZSB2aWRlb0RpbWVuc2lvbnMoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBt
X3ZpZGVvRGltZW5zaW9uczsgfQogICAgIGJvb2wgaGFzVmlkZW8oKSBjb25zdCBvdmVycmlkZSB7
IHJldHVybiBtX2hhc1ZpZGVvOyB9CiAKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlcXVlc3RS
b3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUm91
dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmKSBvdmVycmlkZTsKIAogcHJvdGVjdGVkOgogICAg
IFdFQkNPUkVfRVhQT1JUIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50KCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2Rl
bFZpZGVvRWxlbWVudC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCmluZGV4IGM1MTc0YzhiODQ4YWZiMDhlZTEzYmI1
YzY1ZTAxOTQzMWM5MjM1ZWUuLjkzNmJkOTVjZDAzYjgwN2E1ZDg0YjRhNGE4ZDZiODJkYjBkMmE3
MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNj
cmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCkBAIC0xODcsNiArMTg3LDEy
IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OmZ1bGxzY3JlZW5Nb2Rl
Q2hhbmdlZChIVE1MTWVkaWFFbGVtZW50RW51CiAgICAgICAgIG1fdmlkZW9FbGVtZW50LT5mdWxs
c2NyZWVuTW9kZUNoYW5nZWQodmlkZW9GdWxsc2NyZWVuTW9kZSk7CiB9CiAKK3ZvaWQgVmlkZW9G
dWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRD
b250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUm91dGVTaGFyaW5nUG9saWN5LCBTdHJp
bmcpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8mIHNlc3Npb24gPSBBdWRpb1Nl
c3Npb246OnNoYXJlZFNlc3Npb24oKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihzZXNzaW9uLnJv
dXRlU2hhcmluZ1BvbGljeSgpLCBzZXNzaW9uLnJvdXRpbmdDb250ZXh0VUlEKCkpOworfQorCiB2
b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50OjphZGRDbGllbnQoVmlkZW9GdWxs
c2NyZWVuTW9kZWxDbGllbnQmIGNsaWVudCkKIHsKICAgICBBU1NFUlQoIW1fY2xpZW50cy5jb250
YWlucygmY2xpZW50KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCmluZGV4IDViMDMwOGNhMzYxZWMx
ZjJmMTMyNGMyYjdhZTJkMzllNDk2M2ZmZTYuLjQ3N2VlNGUwY2EyOTc5MTM1ZWQ1ZmUzYzE1OTUw
YTFhMDYyYzU5MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCkBAIC01Nyw3ICs1Nyw3IEBAIGNs
YXNzIEludFJlY3Q7CiBjbGFzcyBGbG9hdFNpemU7CiBjbGFzcyBWaWRlb0Z1bGxzY3JlZW5Nb2Rl
bDsKIGNsYXNzIFZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyOwotICAgIAorCiBjbGFzcyBW
aWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdCBmaW5hbAogICAgIDogcHVibGljIFZpZGVvRnVs
bHNjcmVlbk1vZGVsQ2xpZW50CiAgICAgLCBwdWJsaWMgUGxheWJhY2tTZXNzaW9uTW9kZWxDbGll
bnQKQEAgLTE4NCw2ICsxODQsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgV1RGOjpGdW5jdGlvbjx2b2lk
KGJvb2wpPiBtX3ByZXBhcmVUb0lubGluZUNhbGxiYWNrOwogICAgIFJ1bkxvb3A6OlRpbWVyPFZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0PiBtX3dhdGNoZG9nVGltZXI7CiAgICAgRmxvYXRS
ZWN0IG1faW5saW5lUmVjdDsKKyAgICBSb3V0ZVNoYXJpbmdQb2xpY3kgbV9yb3V0ZVNoYXJpbmdQ
b2xpY3kgeyBSb3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQgfTsKKyAgICBTdHJpbmcgbV9yb3V0
aW5nQ29udGV4dFVJRDsKICAgICBib29sIG1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNr
IHsgZmFsc2UgfTsKICAgICBib29sIG1fd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWQgeyB0
cnVlIH07CiAgICAgYm9vbCBtX3Nob3VsZFJldHVyblRvRnVsbHNjcmVlbldoZW5TdG9wcGluZ1Bp
UCB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KaW5kZXggYmExMjdkYWJkMTliNmE4
NmYzYTYxYWY3MzQ1OWVkMzg5YzZmOGY0My4uMWMwNjRkMGRjZjczODJiYWMyN2UzOTM4YjZmYzll
YjIwNGFkMGU1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVv
RnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQpAQCAtNTQxLDYgKzU0MSw3IEBA
IC0gKHZvaWQpc3RhcnRQaWN0dXJlSW5QaWN0dXJlOwogLSAodm9pZClzdG9wUGljdHVyZUluUGlj
dHVyZTsKIAogLSAoQk9PTClwbGF5ZXJWaWV3Q29udHJvbGxlclNob3VsZEhhbmRsZURvbmVCdXR0
b25UYXA6KEFWUGxheWVyVmlld0NvbnRyb2xsZXIgKilwbGF5ZXJWaWV3Q29udHJvbGxlcjsKKy0g
KHZvaWQpc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpcm91
dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOihOU1N0cmluZyAqKXJvdXRpbmdDb250
ZXh0VUlEOwogQGVuZAogTlNfQVNTVU1FX05PTk5VTExfRU5ECiAKQEAgLTU3NCw2ICs1NzUsMTYg
QEAgLSAoQk9PTClwbGF5ZXJWaWV3Q29udHJvbGxlclNob3VsZEhhbmRsZURvbmVCdXR0b25UYXA6
KEFWUGxheWVyVmlld0NvbnRyb2xsZXIgKikKICAgICByZXR1cm4gWUVTOwogfQogCistICh2b2lk
KXNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hh
cmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJ
RAoreworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgY2xhbmcgZGlhZ25v
c3RpYyBpZ25vcmVkICItV3Vua25vd24tcHJhZ21hcyIKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3Rp
YyBpZ25vcmVkICItV3VuZ3VhcmRlZC1hdmFpbGFiaWxpdHktbmV3IgorICAgIGlmIChbX2F2UGxh
eWVyVmlld0NvbnRyb2xsZXIgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzZXRXZWJLaXRP
dmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDopXSkKKyAgICAgICAg
W19hdlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9s
aWN5OnJvdXRlU2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDpyb3V0aW5nQ29udGV4dFVJ
RF07CisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCit9CisKIC0gKHZvaWQpZW50ZXJGdWxs
U2NyZWVuQW5pbWF0ZWQ6KEJPT0wpYW5pbWF0ZWQgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4p
KEJPT0wgc3VjY2VzcywgTlNFcnJvciAqIF9fbnVsbGFibGUgZXJyb3IpKWNvbXBsZXRpb25IYW5k
bGVyCiB7CiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKQEAgLTc1OCw4ICs3NjksMTYgQEAgdm9pZCBW
aWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6c2V0VmlkZW9GdWxsc2NyZWVuTW9kZWwoVmlk
ZW9GdWxsc2NyZWVuTW9kZWwKIAogICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwgPSBtb2RlbDsK
IAotICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsKQorICAgIGlmIChtX3ZpZGVvRnVsbHNj
cmVlbk1vZGVsKSB7CiAgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPmFkZENsaWVudCgq
dGhpcyk7CisgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPnJlcXVlc3RSb3V0ZVNoYXJp
bmdQb2xpY3lBbmRDb250ZXh0VUlEKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0
aGlzKV0gKFJvdXRlU2hhcmluZ1BvbGljeSBwb2xpY3ksIFN0cmluZyBjb250ZXh0VUlEKSB7Cisg
ICAgICAgICAgICBtX3JvdXRlU2hhcmluZ1BvbGljeSA9IHBvbGljeTsKKyAgICAgICAgICAgIG1f
cm91dGluZ0NvbnRleHRVSUQgPSBjb250ZXh0VUlEOworCisgICAgICAgICAgICBpZiAobV9wbGF5
ZXJWaWV3Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxl
ciBzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlciltX3JvdXRl
U2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDptX3JvdXRpbmdDb250ZXh0VUlEXTsKKyAg
ICAgICAgfSk7CisgICAgfQogCiAgICAgaGFzVmlkZW9DaGFuZ2VkKG1fdmlkZW9GdWxsc2NyZWVu
TW9kZWwgPyBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5oYXNWaWRlbygpIDogZmFsc2UpOwogICAg
IHZpZGVvRGltZW5zaW9uc0NoYW5nZWQobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCA/IG1fdmlkZW9G
dWxsc2NyZWVuTW9kZWwtPnZpZGVvRGltZW5zaW9ucygpIDogRmxvYXRTaXplKCkpOwpAQCAtMTIy
MCw2ICsxMjM5LDggQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6ZG9TZXR1
cCgpCiAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0RGVsZWdhdGU6bV9wbGF5ZXJWaWV3
Q29udHJvbGxlckRlbGVnYXRlLmdldCgpXTsKICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxlciBz
ZXRBbGxvd3NQaWN0dXJlSW5QaWN0dXJlUGxheWJhY2s6bV9hbGxvd3NQaWN0dXJlSW5QaWN0dXJl
UGxheWJhY2tdOwogICAgIFtwbGF5ZXJDb250cm9sbGVyKCkgc2V0UGljdHVyZUluUGljdHVyZVBv
c3NpYmxlOm1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNrXTsKKyAgICBpZiAoIW1fcm91
dGluZ0NvbnRleHRVSUQuaXNFbXB0eSgpKQorICAgICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxl
ciBzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlciltX3JvdXRl
U2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDptX3JvdXRpbmdDb250ZXh0VUlEXTsKIAog
I2lmIFBMQVRGT1JNKFdBVENIT1MpCiAgICAgbV92aWV3Q29udHJvbGxlciA9IHZpZGVvRnVsbHNj
cmVlbk1vZGVsKCktPmNyZWF0ZVZpZGVvRnVsbHNjcmVlblZpZXdDb250cm9sbGVyKG1fcGxheWVy
Vmlld0NvbnRyb2xsZXIuZ2V0KCkuYXZQbGF5ZXJWaWV3Q29udHJvbGxlcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktp
dC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQppbmRleCA3NWRiMWE2YWQ1MjNiYjI5ZWVkZTI0
MDFlMjg2YzcxYjczODIwNzVmLi5jMjFjZTQwZjQ1Y2I1MjYzZDFmNDc1MmY5OTk3MjUwNGQ5YzZh
ZmE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5
CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTU1OSwx
MiArNTU5LDEzIEBAIGRlZiBnZW5lcmF0ZV9tZXNzYWdlX2hhbmRsZXIoZmlsZSk6CiAKICAgICAg
ICAgICAgIGlmIG1lc3NhZ2UuaGFzX2F0dHJpYnV0ZShBU1lOQ19BVFRSSUJVVEUpOgogICAgICAg
ICAgICAgICAgIG1vdmVfcGFyYW1ldGVycyA9IG1lc3NhZ2UubmFtZSwgJywgJy5qb2luKFttb3Zl
X3R5cGUoeC50eXBlKSBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnNdKQorICAgICAg
ICAgICAgICAgIG1vdmVfdmFsdWVzID0gJywgJy5qb2luKFsnV1RGTW92ZSgqJXMpJyAlIHgubmFt
ZSBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnNdKQogICAgICAgICAgICAgICAgIHJl
c3VsdC5hcHBlbmQoJ3ZvaWQgJXM6OmNhbGxSZXBseShJUEM6OkRlY29kZXImIGRlY29kZXIsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoJXMpPiYmIGNvbXBsZXRpb25IYW5kbGVyKVxue1xuJyAlIG1v
dmVfcGFyYW1ldGVycykKICAgICAgICAgICAgICAgICBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5X3Bh
cmFtZXRlcnM6CiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBzdGQ6Om9w
dGlvbmFsPCVzPiAlcztcbicgJSAoeC50eXBlLCB4Lm5hbWUpKQogICAgICAgICAgICAgICAgICAg
ICByZXN1bHQuYXBwZW5kKCcgICAgZGVjb2RlciA+PiAlcztcbicgJSB4Lm5hbWUpCiAgICAgICAg
ICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBpZiAoISVzKSB7XG4gICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuJyAlIHgubmFtZSkKLSAg
ICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92
ZSgqJXMpKTtcbn1cblxuJyAlICgnLCAqJy5qb2luKHgubmFtZSBmb3IgeCBpbiBtZXNzYWdlLnJl
cGx5X3BhcmFtZXRlcnMpKSkKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAgY29t
cGxldGlvbkhhbmRsZXIoJXMpO1xufVxuXG4nICUgbW92ZV92YWx1ZXMpCiAgICAgICAgICAgICAg
ICAgcmVzdWx0LmFwcGVuZCgndm9pZCAlczo6Y2FuY2VsUmVwbHkoQ29tcGxldGlvbkhhbmRsZXI8
dm9pZCglcyk+JiYgY29tcGxldGlvbkhhbmRsZXIpXG57XG4gICAgY29tcGxldGlvbkhhbmRsZXIo
JyAlIG1vdmVfcGFyYW1ldGVycykKICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcsICcu
am9pbihbJ3sgfScgZm9yIHggaW4gbWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzXSkpCiAgICAgICAg
ICAgICAgICAgcmVzdWx0LmFwcGVuZCgnKTtcbn1cblxuJykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgK
aW5kZXggZmIwMGIxNTNmNTZkNjRjNGJkZjhiMTdkOTI4NTEzN2ZmOWY4NjY0Mi4uZGQ5NzE2NWEz
ZDZmZDVjNzEwYzFiNzU3ZDk2YzhiY2ExMTA0NjgzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgK
QEAgLTI4LDYgKzI4LDcgQEAKICNpZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJ
VCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkp
CiAKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0F1ZGlv
U2Vzc2lvbi5oPgogI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NMYXllci5oPgogI2luY2x1ZGUg
PFdlYkNvcmUvUGxhdGZvcm1WaWV3Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9WaWRlb0Z1bGxzY3Jl
ZW5DaGFuZ2VPYnNlcnZlci5oPgpAQCAtMzYsNiArMzcsNyBAQAogI2luY2x1ZGUgPHd0Zi9IYXNo
U2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRy
Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKICNpZiBQTEFURk9STShJT1Nf
RkFNSUxZKQogI2luY2x1ZGUgPFdlYkNvcmUvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQu
aD4KQEAgLTEyNyw2ICsxMjksOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBhcHBsaWNhdGlvbkRpZEJl
Y29tZUFjdGl2ZSgpOwogICAgIGJvb2wgaXNWaXNpYmxlKCkgY29uc3Q7CiAKKyAgICB2b2lkIHJl
cXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmlu
Zyk+JiYpOworCiAjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogICAgIGJvb2wg
aXNQbGF5aW5nVmlkZW9JbkVuaGFuY2VkRnVsbHNjcmVlbigpIGNvbnN0OwogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFu
YWdlci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIuaAppbmRleCAyY2ZiMzQ1ZWJhNzVjYzlmNWNhMGNlNGU5MDNmY2FhMjY3MjZiNWJlLi4x
ZmYxMTIwMWU4NzEzMTNlMTI3MjRlOWRlMDBmNDhkMzRjN2QxZDdkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgK
QEAgLTI3LDcgKzI3LDkgQEAKIAogI2lmIChQTEFURk9STShJT1NfRkFNSUxZKSAmJiBIQVZFKEFW
S0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RF
KSkKIAorI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIu
aCIKKyNpbmNsdWRlICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyTWVzc2FnZXMuaCIKICNpbmNsdWRl
IDxXZWJDb3JlL0V2ZW50TGlzdGVuZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0hUTUxNZWRpYUVs
ZW1lbnRFbnVtcy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1DQUxheWVyLmg+CkBAIC0x
NTEsNyArMTUzLDggQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgc2V0VmlkZW9MYXllckdyYXZpdHlF
bnVtKHVpbnQ2NF90IGNvbnRleHRJZCwgdW5zaWduZWQgZ3Jhdml0eSk7CiAgICAgdm9pZCBmdWxs
c2NyZWVuTW9kZUNoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBXZWJDb3JlOjpIVE1MTWVkaWFF
bGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpOwogICAgIHZvaWQgZnVsbHNjcmVlbk1h
eVJldHVyblRvSW5saW5lKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vbCBpc1BhZ2VWaXNpYmxlKTsK
LSAgICAKKyAgICB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKHVp
bnQ2NF90IGNvbnRleHRJZCwgTWVzc2FnZXM6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OlJlcXVl
c3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEOjpBc3luY1JlcGx5JiYpOworCiAgICAg
V2ViUGFnZSogbV9wYWdlOwogICAgIFJlZjxQbGF5YmFja1Nlc3Npb25NYW5hZ2VyPiBtX3BsYXli
YWNrU2Vzc2lvbk1hbmFnZXI7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpIVE1MVmlkZW9FbGVtZW50
KiwgdWludDY0X3Q+IG1fdmlkZW9FbGVtZW50czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubWVzc2Fn
ZXMuaW4KaW5kZXggZjU2OTAyYzdiOWYwYWM3NWM5NzFiMzA3YzgwYWU2OTlhMDQ5MjQxMi4uN2M1
NmVkMDRhYTgyZjgxZjdjNjc4ZWFjNWQ3MTg4YWZiNjc3MjM2MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubWVzc2FnZXMu
aW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIubWVzc2FnZXMuaW4KQEAgLTM1LDUgKzM1LDYgQEAgbWVzc2FnZXMgLT4gVmlkZW9GdWxs
c2NyZWVuTWFuYWdlciB7CiAgICAgU2V0VmlkZW9MYXllckdyYXZpdHlFbnVtKHVpbnQ2NF90IGNv
bnRleHRJZCwgdW5zaWduZWQgZ3Jhdml0eSkKICAgICBGdWxsc2NyZWVuTW9kZUNoYW5nZWQodWlu
dDY0X3QgY29udGV4dElkLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVs
bHNjcmVlbk1vZGUgdmlkZW9GdWxsc2NyZWVuTW9kZSkKICAgICBGdWxsc2NyZWVuTWF5UmV0dXJu
VG9JbmxpbmUodWludDY0X3QgY29udGV4dElkLCBib29sIGlzUGFnZVZpc2libGUpCisgICAgUmVx
dWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQodWludDY0X3QgY29udGV4dElkKSAt
PiAoZW51bTp1aW50OF90IFdlYkNvcmU6OlJvdXRlU2hhcmluZ1BvbGljeSByb3V0ZVNoYXJpbmdQ
b2xpY3ksIFN0cmluZyByb3V0aW5nQ29udGV4dFVJRCkgQXN5bmMKIH0KICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFu
YWdlci5tbQppbmRleCBlZjllOGEwODI1MGRmMzkxYzUwYTVmZjNhOWEzOTk4MWUyYWNhNDJkLi43
ZjYzMzA5ZjMyYTBhODNhMzhkMGMyODgyNWU4MTczYjAyMjFmMTZlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5t
bQpAQCAtMzAsNyArMzAsNiBAQAogI2ltcG9ydCAiQXR0YWNobWVudC5oIgogI2ltcG9ydCAiTG9n
Z2luZy5oIgogI2ltcG9ydCAiUGxheWJhY2tTZXNzaW9uTWFuYWdlci5oIgotI2ltcG9ydCAiVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW1wb3J0ICJWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyUHJveHlNZXNzYWdlcy5oIgogI2ltcG9ydCAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgi
CiAjaW1wb3J0ICJXZWJQYWdlLmgiCkBAIC01NTgsNiArNTU3LDExIEBAIHZvaWQgVmlkZW9GdWxs
c2NyZWVuTWFuYWdlcjo6ZnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKHVpbnQ2NF90IGNvbnRl
eHRJZCwgYm9vCiAgICAgICAgIG1vZGVsLnZpZGVvRWxlbWVudCgpLT5zY3JvbGxJbnRvVmlld0lm
Tm90VmlzaWJsZShmYWxzZSk7CiAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyUHJveHk6OlByZXBhcmVkVG9SZXR1cm5Ub0lubGluZShjb250ZXh0SWQsIHRy
dWUsIGlubGluZVZpZGVvRnJhbWUoKm1vZGVsLnZpZGVvRWxlbWVudCgpKSksIG1fcGFnZS0+cGFn
ZUlEKCkpOwogfQorCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OnJlcXVlc3RSb3V0ZVNo
YXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCwgTWVzc2FnZXM6OlZp
ZGVvRnVsbHNjcmVlbk1hbmFnZXI6OlJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0
VUlEOjpBc3luY1JlcGx5JiYgcmVwbHkpCit7CisgICAgZW5zdXJlTW9kZWwoY29udGV4dElkKS5y
ZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChXVEZNb3ZlKHJlcGx5KSk7Cit9
CiAgICAgCiB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OnNldFZpZGVvTGF5ZXJGcmFtZUZl
bmNlZCh1aW50NjRfdCBjb250ZXh0SWQsIFdlYkNvcmU6OkZsb2F0UmVjdCBib3VuZHMsIElQQzo6
QXR0YWNobWVudCBmZW5jZVBvcnQpCiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>353173</attachid>
            <date>2018-10-26 03:46:26 -0700</date>
            <delta_ts>2018-10-26 04:35:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190951-20181026124624.patch</filename>
            <type>text/plain</type>
            <size>17729</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3Mzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk5MDEyZDlkMDk5OWFm
MThlMGQ2MTk4MTgzMmFkNTZmMmZlNDljMy4uYjJjZDk0MWQ5ZmE1ODQzODFmOTlmMDg1MTFkMTEy
Y2Q4MGQ1MTlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlcXVlc3QgdGhlIGNvcnJlY3Qgcm91dGUgcG9saWN5IGFuZCBjb250ZXh0
IGZyb20gdGhlIFZpZGVvRnVsbHNjcmVlbk1vZGVsLgorCisgICAgICAgICogcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaDoKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNj
cmVlbk1vZGVsOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAg
ICAgICogcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVu
dC5tbToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50
OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgorICAgICAgICAoLVtX
ZWJBVlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9s
aWN5OnJvdXRpbmdDb250ZXh0VUlEOl0pOgorICAgICAgICAoVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKToKKyAgICAgICAgKFZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Ojpkb1NldHVwKToKKwogMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8
amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbRU1FXVtDb2NvYV0gQ2Fubm90IHBsYXkg
dW5tdXhlZCB2aWRlbyBhbmQgYXVkaW8gZk1QNCBzdHJlYW1zIGVuY3J5cHRlZCB3aXRoIGRpZmZl
cmVudCBrZXlzIHZpYSBNU0UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IGRmNTFkZDQ0MjBiYmQzZDc3
ODA1Y2U2M2M3ZWNjOGNmMDhkOGY2YTEuLjdhYjQxYzJlZjVjNjUyYThjYTNmNWFjNDM4ZDQxZGRj
MmQ4MzI0NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE4LTEwLTI2
ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRP
dmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oOgorCiAyMDE4LTA5
LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJ
QU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZB
UklBTlQgYnVpbGRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg5Yjg1YjlmNGEzNWM4NTlmYmZiMjQwODczZjViMGZm
MDViMzU3MTkuLjU0NTRkNzQ4YTEyMDY0ODhmNTYyYmFiZTIwZmM2YzAzMDA4OTY3MzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTgtMTAtMjYgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRvcHQgLXNldE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5
OnJvdXRpbmdDb250ZXh0VUlEOiBTUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5MDk1MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDUyMTMwNjU+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGFu
IGFzeW5jcm9ub3VzIHJlcGx5IHJlcXVlc3QgdG8gVmlkZW9GdWxsc2NyZWVuTWFuYWdlci4KKwor
ICAgICAgICBEcml2ZS1ieSBmaXg6IG1lc3NhZ2VzLnB5IGdlbmVyYXRlcyAiV1RGTW92ZSgqYXJn
MSwgKmFyZzIpIiBpbnN0ZWFkIG9mICJXVEZNb3ZlKCphcmcxKSwgV1RGTW92ZSgqYXJnMikiCisg
ICAgICAgIGluIGl0cyByZXBseSBoYW5kbGVyIGdlbmVyYXRpb24uCisKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcjo6cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQpOgorCiAy
MDE4LTA5LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNE
S19WQVJJQU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24t
U0RLX1ZBUklBTlQgYnVpbGRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9jb2NvYS9BVktpdFNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZL
aXRTUEkuaAppbmRleCA1MGViODM1YzAwOTVlOTRiMGQ4YTdkMmNhN2JiYWM0ZWY5OGFjYzgxLi4w
ZTdlY2I3Mzg5Y2IyMTZkYWVjOTU1ODQzZjlkMjgyZTVhZTAwOTRkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJLmgKQEAgLTczLDYgKzczLDcgQEAgTlNfQVNT
VU1FX05PTk5VTExfQkVHSU4KIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVy
PWlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSkgQk9PTCBwaWN0dXJlSW5QaWN0dXJlQWN0aXZlOwog
QHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0dXJl
U3VzcGVuZGVkKSBCT09MIHBpY3R1cmVJblBpY3R1cmVTdXNwZW5kZWQ7CiBAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHkpIEJPT0wgcGljdHVyZUluUGljdHVyZVdhc1N0YXJ0ZWRXaGVuRW50
ZXJpbmdCYWNrZ3JvdW5kOworLSAodm9pZClzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1Bv
bGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5T
U3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQ7CiBAZW5kCiAKIEBwcm90b2NvbCBBVlBsYXllclZp
ZXdDb250cm9sbGVyRGVsZWdhdGVfV2ViS2l0T25seSA8QVZQbGF5ZXJWaWV3Q29udHJvbGxlckRl
bGVnYXRlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9G
dWxsc2NyZWVuTW9kZWwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1vZGVsLmgKaW5kZXggOTYwN2E1N2NjOWM0ODk5YTIyMTE4Y2RiYjE5MWFjYWEwN2My
ZDJjOS4uZjY3MTQ5MGFlYmJhZTk2YTgyMDk4MDkyOGRlZjA0ZmY5ZDdhNWIyMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5o
CkBAIC0yOCwxMCArMjgsMTIgQEAKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFU
Rk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKKyNpbmNsdWRl
ICJBdWRpb1Nlc3Npb24uaCIKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNpbmNsdWRlICJIVE1M
TWVkaWFFbGVtZW50RW51bXMuaCIKICNpbmNsdWRlICJNZWRpYVBsYXllckVudW1zLmgiCiAjaW5j
bHVkZSAiUGxheWJhY2tTZXNzaW9uTW9kZWwuaCIKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhh
bmRsZXIuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBPQkpDX0NMQVNTIEFWUGxheWVy
Vmlld0NvbnRyb2xsZXI7CkBAIC02Miw2ICs2NCw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgd2lsbEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRF
eGl0UGljdHVyZUluUGljdHVyZSgpID0gMDsKIAorICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0Um91
dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJvdXRl
U2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgeyBjb21wbGV0aW9u
SGFuZGxlcihSb3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQsIGVtcHR5U3RyaW5nKCkpOyB9CisK
ICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIHZpcnR1YWwgVUlWaWV3Q29udHJvbGxlciAq
cHJlc2VudGluZ1ZpZXdDb250cm9sbGVyKCkgeyByZXR1cm4gbnVsbHB0cjsgfQogICAgIHZpcnR1
YWwgVUlWaWV3Q29udHJvbGxlciAqY3JlYXRlVmlkZW9GdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIo
QVZQbGF5ZXJWaWV3Q29udHJvbGxlciAqKSB7IHJldHVybiBudWxscHRyOyB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVv
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVu
TW9kZWxWaWRlb0VsZW1lbnQuaAppbmRleCA5YzVjMjM4MjNjYTE1NjY5NjE5ZmI3YTNkY2QxMGYw
Y2IxMWQ1ZWNjLi5iZmEyOWY2MmU5MTI3NWI2NWI2Njc0Y2Q2N2MzZjRjMGNkMGRkZjY5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2Rl
bFZpZGVvRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgKQEAgLTcyLDYgKzcyLDcgQEAgcHVibGljOgog
ICAgIEZsb2F0U2l6ZSB2aWRlb0RpbWVuc2lvbnMoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBt
X3ZpZGVvRGltZW5zaW9uczsgfQogICAgIGJvb2wgaGFzVmlkZW8oKSBjb25zdCBvdmVycmlkZSB7
IHJldHVybiBtX2hhc1ZpZGVvOyB9CiAKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlcXVlc3RS
b3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUm91
dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmKSBvdmVycmlkZTsKIAogcHJvdGVjdGVkOgogICAg
IFdFQkNPUkVfRVhQT1JUIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50KCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2Rl
bFZpZGVvRWxlbWVudC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCmluZGV4IGM1MTc0YzhiODQ4YWZiMDhlZTEzYmI1
YzY1ZTAxOTQzMWM5MjM1ZWUuLjkzNmJkOTVjZDAzYjgwN2E1ZDg0YjRhNGE4ZDZiODJkYjBkMmE3
MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNj
cmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCkBAIC0xODcsNiArMTg3LDEy
IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OmZ1bGxzY3JlZW5Nb2Rl
Q2hhbmdlZChIVE1MTWVkaWFFbGVtZW50RW51CiAgICAgICAgIG1fdmlkZW9FbGVtZW50LT5mdWxs
c2NyZWVuTW9kZUNoYW5nZWQodmlkZW9GdWxsc2NyZWVuTW9kZSk7CiB9CiAKK3ZvaWQgVmlkZW9G
dWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRD
b250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUm91dGVTaGFyaW5nUG9saWN5LCBTdHJp
bmcpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8mIHNlc3Npb24gPSBBdWRpb1Nl
c3Npb246OnNoYXJlZFNlc3Npb24oKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihzZXNzaW9uLnJv
dXRlU2hhcmluZ1BvbGljeSgpLCBzZXNzaW9uLnJvdXRpbmdDb250ZXh0VUlEKCkpOworfQorCiB2
b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50OjphZGRDbGllbnQoVmlkZW9GdWxs
c2NyZWVuTW9kZWxDbGllbnQmIGNsaWVudCkKIHsKICAgICBBU1NFUlQoIW1fY2xpZW50cy5jb250
YWlucygmY2xpZW50KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCmluZGV4IDViMDMwOGNhMzYxZWMx
ZjJmMTMyNGMyYjdhZTJkMzllNDk2M2ZmZTYuLjQ3N2VlNGUwY2EyOTc5MTM1ZWQ1ZmUzYzE1OTUw
YTFhMDYyYzU5MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCkBAIC01Nyw3ICs1Nyw3IEBAIGNs
YXNzIEludFJlY3Q7CiBjbGFzcyBGbG9hdFNpemU7CiBjbGFzcyBWaWRlb0Z1bGxzY3JlZW5Nb2Rl
bDsKIGNsYXNzIFZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyOwotICAgIAorCiBjbGFzcyBW
aWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdCBmaW5hbAogICAgIDogcHVibGljIFZpZGVvRnVs
bHNjcmVlbk1vZGVsQ2xpZW50CiAgICAgLCBwdWJsaWMgUGxheWJhY2tTZXNzaW9uTW9kZWxDbGll
bnQKQEAgLTE4NCw2ICsxODQsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgV1RGOjpGdW5jdGlvbjx2b2lk
KGJvb2wpPiBtX3ByZXBhcmVUb0lubGluZUNhbGxiYWNrOwogICAgIFJ1bkxvb3A6OlRpbWVyPFZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0PiBtX3dhdGNoZG9nVGltZXI7CiAgICAgRmxvYXRS
ZWN0IG1faW5saW5lUmVjdDsKKyAgICBSb3V0ZVNoYXJpbmdQb2xpY3kgbV9yb3V0ZVNoYXJpbmdQ
b2xpY3kgeyBSb3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQgfTsKKyAgICBTdHJpbmcgbV9yb3V0
aW5nQ29udGV4dFVJRDsKICAgICBib29sIG1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNr
IHsgZmFsc2UgfTsKICAgICBib29sIG1fd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWQgeyB0
cnVlIH07CiAgICAgYm9vbCBtX3Nob3VsZFJldHVyblRvRnVsbHNjcmVlbldoZW5TdG9wcGluZ1Bp
UCB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KaW5kZXggYmExMjdkYWJkMTliNmE4
NmYzYTYxYWY3MzQ1OWVkMzg5YzZmOGY0My4uOTA5NTkwZGY2MzFkMjFmNGEwZDRmMjIzMDM3MmI5
ZjJhNmZhOWRkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVv
RnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQpAQCAtNTQxLDYgKzU0MSw3IEBA
IC0gKHZvaWQpc3RhcnRQaWN0dXJlSW5QaWN0dXJlOwogLSAodm9pZClzdG9wUGljdHVyZUluUGlj
dHVyZTsKIAogLSAoQk9PTClwbGF5ZXJWaWV3Q29udHJvbGxlclNob3VsZEhhbmRsZURvbmVCdXR0
b25UYXA6KEFWUGxheWVyVmlld0NvbnRyb2xsZXIgKilwbGF5ZXJWaWV3Q29udHJvbGxlcjsKKy0g
KHZvaWQpc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpcm91
dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOihOU1N0cmluZyAqKXJvdXRpbmdDb250
ZXh0VUlEOwogQGVuZAogTlNfQVNTVU1FX05PTk5VTExfRU5ECiAKQEAgLTU3NCw2ICs1NzUsMTYg
QEAgLSAoQk9PTClwbGF5ZXJWaWV3Q29udHJvbGxlclNob3VsZEhhbmRsZURvbmVCdXR0b25UYXA6
KEFWUGxheWVyVmlld0NvbnRyb2xsZXIgKikKICAgICByZXR1cm4gWUVTOwogfQogCistICh2b2lk
KXNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hh
cmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJ
RAoreworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgY2xhbmcgZGlhZ25v
c3RpYyBpZ25vcmVkICItV3Vua25vd24tcHJhZ21hcyIKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3Rp
YyBpZ25vcmVkICItV3VuZ3VhcmRlZC1hdmFpbGFiaWxpdHktbmV3IgorICAgIGlmIChbX2F2UGxh
eWVyVmlld0NvbnRyb2xsZXIgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzZXRXZWJLaXRP
dmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDopXSkKKyAgICAgICAg
W19hdlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9s
aWN5OnJvdXRlU2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDpyb3V0aW5nQ29udGV4dFVJ
RF07CisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCit9CisKIC0gKHZvaWQpZW50ZXJGdWxs
U2NyZWVuQW5pbWF0ZWQ6KEJPT0wpYW5pbWF0ZWQgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4p
KEJPT0wgc3VjY2VzcywgTlNFcnJvciAqIF9fbnVsbGFibGUgZXJyb3IpKWNvbXBsZXRpb25IYW5k
bGVyCiB7CiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKQEAgLTc1OCw4ICs3NjksMTYgQEAgdm9pZCBW
aWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6c2V0VmlkZW9GdWxsc2NyZWVuTW9kZWwoVmlk
ZW9GdWxsc2NyZWVuTW9kZWwKIAogICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwgPSBtb2RlbDsK
IAotICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsKQorICAgIGlmIChtX3ZpZGVvRnVsbHNj
cmVlbk1vZGVsKSB7CiAgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPmFkZENsaWVudCgq
dGhpcyk7CisgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPnJlcXVlc3RSb3V0ZVNoYXJp
bmdQb2xpY3lBbmRDb250ZXh0VUlEKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0
aGlzKV0gKFJvdXRlU2hhcmluZ1BvbGljeSBwb2xpY3ksIFN0cmluZyBjb250ZXh0VUlEKSB7Cisg
ICAgICAgICAgICBtX3JvdXRlU2hhcmluZ1BvbGljeSA9IHBvbGljeTsKKyAgICAgICAgICAgIG1f
cm91dGluZ0NvbnRleHRVSUQgPSBjb250ZXh0VUlEOworCisgICAgICAgICAgICBpZiAobV9wbGF5
ZXJWaWV3Q29udHJvbGxlciAmJiAhbV9yb3V0aW5nQ29udGV4dFVJRC5pc0VtcHR5KCkpCisgICAg
ICAgICAgICAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3ZlcnJpZGVSb3V0
ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpbV9yb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0Nv
bnRleHRVSUQ6bV9yb3V0aW5nQ29udGV4dFVJRF07CisgICAgICAgIH0pOworICAgIH0KIAogICAg
IGhhc1ZpZGVvQ2hhbmdlZChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsID8gbV92aWRlb0Z1bGxzY3Jl
ZW5Nb2RlbC0+aGFzVmlkZW8oKSA6IGZhbHNlKTsKICAgICB2aWRlb0RpbWVuc2lvbnNDaGFuZ2Vk
KG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwgPyBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT52aWRlb0Rp
bWVuc2lvbnMoKSA6IEZsb2F0U2l6ZSgpKTsKQEAgLTEyMjAsNiArMTIzOSw4IEBAIHZvaWQgVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmRvU2V0dXAoKQogICAgIFttX3BsYXllclZpZXdD
b250cm9sbGVyIHNldERlbGVnYXRlOm1fcGxheWVyVmlld0NvbnRyb2xsZXJEZWxlZ2F0ZS5nZXQo
KV07CiAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0QWxsb3dzUGljdHVyZUluUGljdHVy
ZVBsYXliYWNrOm1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNrXTsKICAgICBbcGxheWVy
Q29udHJvbGxlcigpIHNldFBpY3R1cmVJblBpY3R1cmVQb3NzaWJsZTptX2FsbG93c1BpY3R1cmVJ
blBpY3R1cmVQbGF5YmFja107CisgICAgaWYgKCFtX3JvdXRpbmdDb250ZXh0VUlELmlzRW1wdHko
KSkKKyAgICAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3ZlcnJpZGVSb3V0
ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpbV9yb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0Nv
bnRleHRVSUQ6bV9yb3V0aW5nQ29udGV4dFVJRF07CiAKICNpZiBQTEFURk9STShXQVRDSE9TKQog
ICAgIG1fdmlld0NvbnRyb2xsZXIgPSB2aWRlb0Z1bGxzY3JlZW5Nb2RlbCgpLT5jcmVhdGVWaWRl
b0Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlcihtX3BsYXllclZpZXdDb250cm9sbGVyLmdldCgpLmF2
UGxheWVyVmlld0NvbnRyb2xsZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TY3JpcHRz
L3dlYmtpdC9tZXNzYWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2Fn
ZXMucHkKaW5kZXggNzVkYjFhNmFkNTIzYmIyOWVlZGUyNDAxZTI4NmM3MWI3MzgyMDc1Zi4uYzIx
Y2U0MGY0NWNiNTI2M2QxZjQ3NTJmOTk5NzI1MDRkOWM2YWZhNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3VyY2UvV2ViS2l0L1Nj
cmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CkBAIC01NTksMTIgKzU1OSwxMyBAQCBkZWYgZ2VuZXJh
dGVfbWVzc2FnZV9oYW5kbGVyKGZpbGUpOgogCiAgICAgICAgICAgICBpZiBtZXNzYWdlLmhhc19h
dHRyaWJ1dGUoQVNZTkNfQVRUUklCVVRFKToKICAgICAgICAgICAgICAgICBtb3ZlX3BhcmFtZXRl
cnMgPSBtZXNzYWdlLm5hbWUsICcsICcuam9pbihbbW92ZV90eXBlKHgudHlwZSkgZm9yIHggaW4g
bWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzXSkKKyAgICAgICAgICAgICAgICBtb3ZlX3ZhbHVlcyA9
ICcsICcuam9pbihbJ1dURk1vdmUoKiVzKScgJSB4Lm5hbWUgZm9yIHggaW4gbWVzc2FnZS5yZXBs
eV9wYXJhbWV0ZXJzXSkKICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCd2b2lkICVzOjpj
YWxsUmVwbHkoSVBDOjpEZWNvZGVyJiBkZWNvZGVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCVz
KT4mJiBjb21wbGV0aW9uSGFuZGxlcilcbntcbicgJSBtb3ZlX3BhcmFtZXRlcnMpCiAgICAgICAg
ICAgICAgICAgZm9yIHggaW4gbWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzOgogICAgICAgICAgICAg
ICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAgc3RkOjpvcHRpb25hbDwlcz4gJXM7XG4nICUgKHgu
dHlwZSwgeC5uYW1lKSkKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICAgIGRl
Y29kZXIgPj4gJXM7XG4nICUgeC5uYW1lKQogICAgICAgICAgICAgICAgICAgICByZXN1bHQuYXBw
ZW5kKCcgICAgaWYgKCElcykge1xuICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTtcbiAgICAg
ICAgcmV0dXJuO1xuICAgIH1cbicgJSB4Lm5hbWUpCi0gICAgICAgICAgICAgICAgcmVzdWx0LmFw
cGVuZCgnICAgIGNvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUoKiVzKSk7XG59XG5cbicgJSAoJywg
Kicuam9pbih4Lm5hbWUgZm9yIHggaW4gbWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzKSkpCisgICAg
ICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICAgIGNvbXBsZXRpb25IYW5kbGVyKCVzKTtcbn1c
blxuJyAlIG1vdmVfdmFsdWVzKQogICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJ3ZvaWQg
JXM6OmNhbmNlbFJlcGx5KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoJXMpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKVxue1xuICAgIGNvbXBsZXRpb25IYW5kbGVyKCcgJSBtb3ZlX3BhcmFtZXRlcnMpCiAg
ICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnLCAnLmpvaW4oWyd7IH0nIGZvciB4IGluIG1l
c3NhZ2UucmVwbHlfcGFyYW1ldGVyc10pKQogICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQo
Jyk7XG59XG5cbicpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9W
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCmluZGV4IGZiMDBiMTUzZjU2ZDY0YzRi
ZGY4YjE3ZDkyODUxMzdmZjlmODY2NDIuLmRkOTcxNjVhM2Q2ZmQ1YzcxMGMxYjc1N2Q5NmM4YmNh
MTEwNDY4M2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCkBAIC0yOCw2ICsyOCw3IEBACiAjaWYg
KFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAm
JiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogCiAjaW5jbHVkZSAiTWVzc2FnZVJl
Y2VpdmVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9BdWRpb1Nlc3Npb24uaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL0dyYXBoaWNzTGF5ZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1BsYXRmb3JtVmlldy5o
PgogI2luY2x1ZGUgPFdlYkNvcmUvVmlkZW9GdWxsc2NyZWVuQ2hhbmdlT2JzZXJ2ZXIuaD4KQEAg
LTM2LDYgKzM3LDcgQEAKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9S
ZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0
L1dURlN0cmluZy5oPgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNpbmNsdWRlIDxXZWJD
b3JlL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg+CkBAIC0xMjcsNiArMTI5LDggQEAg
cHVibGljOgogICAgIHZvaWQgYXBwbGljYXRpb25EaWRCZWNvbWVBY3RpdmUoKTsKICAgICBib29s
IGlzVmlzaWJsZSgpIGNvbnN0OwogCisgICAgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5
QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
V2ViQ29yZTo6Um91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmKTsKKwogI2lmIEVOQUJMRShW
SURFT19QUkVTRU5UQVRJT05fTU9ERSkKICAgICBib29sIGlzUGxheWluZ1ZpZGVvSW5FbmhhbmNl
ZEZ1bGxzY3JlZW4oKSBjb25zdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKaW5kZXggMmNmYjM0NWVi
YTc1Y2M5ZjVjYTBjZTRlOTAzZmNhYTI2NzI2YjViZS4uMWZmMTEyMDFlODcxMzEzZTEyNzI0ZTlk
ZTAwZjQ4ZDM0YzdkMWQ3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCkBAIC0yNyw3ICsyNyw5IEBACiAKICNp
ZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9STShNQUMp
ICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKKyNpbmNsdWRlICJDb25uZWN0
aW9uLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyLmgiCisjaW5jbHVkZSAiVmlkZW9GdWxs
c2NyZWVuTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9FdmVudExpc3RlbmVy
Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9IVE1MTWVkaWFFbGVtZW50RW51bXMuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL1BsYXRmb3JtQ0FMYXllci5oPgpAQCAtMTUxLDcgKzE1Myw4IEBAIHByb3RlY3Rl
ZDoKICAgICB2b2lkIHNldFZpZGVvTGF5ZXJHcmF2aXR5RW51bSh1aW50NjRfdCBjb250ZXh0SWQs
IHVuc2lnbmVkIGdyYXZpdHkpOwogICAgIHZvaWQgZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHVpbnQ2
NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlKTsKICAgICB2b2lkIGZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRf
dCBjb250ZXh0SWQsIGJvb2wgaXNQYWdlVmlzaWJsZSk7Ci0gICAgCisgICAgdm9pZCByZXF1ZXN0
Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQsIE1lc3Nh
Z2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5k
Q29udGV4dFVJRDo6QXN5bmNSZXBseSYmKTsKKwogICAgIFdlYlBhZ2UqIG1fcGFnZTsKICAgICBS
ZWY8UGxheWJhY2tTZXNzaW9uTWFuYWdlcj4gbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyOwogICAg
IEhhc2hNYXA8V2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCosIHVpbnQ2NF90PiBtX3ZpZGVvRWxl
bWVudHM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9G
dWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9j
b2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGY1NjkwMmM3Yjlm
MGFjNzVjOTcxYjMwN2M4MGFlNjk5YTA0OTI0MTIuLjdjNTZlZDA0YWE4MmY4MWY3YzY3OGVhYzVk
NzE4OGFmYjY3NzIzNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0z
NSw1ICszNSw2IEBAIG1lc3NhZ2VzIC0+IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXIgewogICAgIFNl
dFZpZGVvTGF5ZXJHcmF2aXR5RW51bSh1aW50NjRfdCBjb250ZXh0SWQsIHVuc2lnbmVkIGdyYXZp
dHkpCiAgICAgRnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNj
cmVlbk1vZGUpCiAgICAgRnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKHVpbnQ2NF90IGNvbnRl
eHRJZCwgYm9vbCBpc1BhZ2VWaXNpYmxlKQorICAgIFJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lB
bmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCkgLT4gKGVudW06dWludDhfdCBXZWJDb3Jl
OjpSb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcgcm91dGluZ0Nv
bnRleHRVSUQpIEFzeW5jCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KaW5kZXggZWY5ZThhMDgy
NTBkZjM5MWM1MGE1ZmYzYTlhMzk5ODFlMmFjYTQyZC4uN2Y2MzMwOWYzMmEwYTgzYTM4ZDBjMjg4
MjVlODE3M2IwMjIxZjE2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KQEAgLTMwLDcgKzMwLDYgQEAKICNp
bXBvcnQgIkF0dGFjaG1lbnQuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKICNpbXBvcnQgIlBsYXli
YWNrU2Vzc2lvbk1hbmFnZXIuaCIKLSNpbXBvcnQgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJNZXNz
YWdlcy5oIgogI2ltcG9ydCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5TWVzc2FnZXMuaCIK
ICNpbXBvcnQgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogI2ltcG9ydCAiV2ViUGFnZS5oIgpA
QCAtNTU4LDYgKzU1NywxMSBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmZ1bGxzY3Jl
ZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0SWQsIGJvbwogICAgICAgICBtb2Rl
bC52aWRlb0VsZW1lbnQoKS0+c2Nyb2xsSW50b1ZpZXdJZk5vdFZpc2libGUoZmFsc2UpOwogICAg
IG1fcGFnZS0+c2VuZChNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpQcmVw
YXJlZFRvUmV0dXJuVG9JbmxpbmUoY29udGV4dElkLCB0cnVlLCBpbmxpbmVWaWRlb0ZyYW1lKCpt
b2RlbC52aWRlb0VsZW1lbnQoKSkpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0KKwordm9pZCBWaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJ
RCh1aW50NjRfdCBjb250ZXh0SWQsIE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpS
ZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRDo6QXN5bmNSZXBseSYmIHJlcGx5
KQoreworICAgIGVuc3VyZU1vZGVsKGNvbnRleHRJZCkucmVxdWVzdFJvdXRlU2hhcmluZ1BvbGlj
eUFuZENvbnRleHRVSUQoV1RGTW92ZShyZXBseSkpOworfQogICAgIAogdm9pZCBWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyOjpzZXRWaWRlb0xheWVyRnJhbWVGZW5jZWQodWludDY0X3QgY29udGV4dElk
LCBXZWJDb3JlOjpGbG9hdFJlY3QgYm91bmRzLCBJUEM6OkF0dGFjaG1lbnQgZmVuY2VQb3J0KQog
ewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>353174</attachid>
            <date>2018-10-26 04:35:48 -0700</date>
            <delta_ts>2018-10-26 06:15:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190951-20181026133546.patch</filename>
            <type>text/plain</type>
            <size>18240</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3Mzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk5MDEyZDlkMDk5OWFm
MThlMGQ2MTk4MTgzMmFkNTZmMmZlNDljMy4uYjJjZDk0MWQ5ZmE1ODQzODFmOTlmMDg1MTFkMTEy
Y2Q4MGQ1MTlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlcXVlc3QgdGhlIGNvcnJlY3Qgcm91dGUgcG9saWN5IGFuZCBjb250ZXh0
IGZyb20gdGhlIFZpZGVvRnVsbHNjcmVlbk1vZGVsLgorCisgICAgICAgICogcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaDoKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNj
cmVlbk1vZGVsOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAg
ICAgICogcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVu
dC5tbToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50
OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgorICAgICAgICAoLVtX
ZWJBVlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9s
aWN5OnJvdXRpbmdDb250ZXh0VUlEOl0pOgorICAgICAgICAoVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKToKKyAgICAgICAgKFZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Ojpkb1NldHVwKToKKwogMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8
amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbRU1FXVtDb2NvYV0gQ2Fubm90IHBsYXkg
dW5tdXhlZCB2aWRlbyBhbmQgYXVkaW8gZk1QNCBzdHJlYW1zIGVuY3J5cHRlZCB3aXRoIGRpZmZl
cmVudCBrZXlzIHZpYSBNU0UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IGRmNTFkZDQ0MjBiYmQzZDc3
ODA1Y2U2M2M3ZWNjOGNmMDhkOGY2YTEuLjdhYjQxYzJlZjVjNjUyYThjYTNmNWFjNDM4ZDQxZGRj
MmQ4MzI0NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE4LTEwLTI2
ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRP
dmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oOgorCiAyMDE4LTA5
LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJ
QU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZB
UklBTlQgYnVpbGRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg5Yjg1YjlmNGEzNWM4NTlmYmZiMjQwODczZjViMGZm
MDViMzU3MTkuLjU0NTRkNzQ4YTEyMDY0ODhmNTYyYmFiZTIwZmM2YzAzMDA4OTY3MzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTgtMTAtMjYgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRvcHQgLXNldE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5
OnJvdXRpbmdDb250ZXh0VUlEOiBTUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5MDk1MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDUyMTMwNjU+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGFu
IGFzeW5jcm9ub3VzIHJlcGx5IHJlcXVlc3QgdG8gVmlkZW9GdWxsc2NyZWVuTWFuYWdlci4KKwor
ICAgICAgICBEcml2ZS1ieSBmaXg6IG1lc3NhZ2VzLnB5IGdlbmVyYXRlcyAiV1RGTW92ZSgqYXJn
MSwgKmFyZzIpIiBpbnN0ZWFkIG9mICJXVEZNb3ZlKCphcmcxKSwgV1RGTW92ZSgqYXJnMikiCisg
ICAgICAgIGluIGl0cyByZXBseSBoYW5kbGVyIGdlbmVyYXRpb24uCisKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcjo6cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQpOgorCiAy
MDE4LTA5LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNE
S19WQVJJQU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24t
U0RLX1ZBUklBTlQgYnVpbGRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9jb2NvYS9BVktpdFNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZL
aXRTUEkuaAppbmRleCA1MGViODM1YzAwOTVlOTRiMGQ4YTdkMmNhN2JiYWM0ZWY5OGFjYzgxLi41
NWI0Yjk2ZGY0NDBjMzhlZTM2OWYwMTgwZGRkMTE1NTM1YTRjZDExIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJLmgKQEAgLTczLDYgKzczLDcgQEAgTlNfQVNT
VU1FX05PTk5VTExfQkVHSU4KIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVy
PWlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSkgQk9PTCBwaWN0dXJlSW5QaWN0dXJlQWN0aXZlOwog
QHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0dXJl
U3VzcGVuZGVkKSBCT09MIHBpY3R1cmVJblBpY3R1cmVTdXNwZW5kZWQ7CiBAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHkpIEJPT0wgcGljdHVyZUluUGljdHVyZVdhc1N0YXJ0ZWRXaGVuRW50
ZXJpbmdCYWNrZ3JvdW5kOworLSAodm9pZClzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1Bv
bGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5T
U3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQ7CiBAZW5kCiAKIEBwcm90b2NvbCBBVlBsYXllclZp
ZXdDb250cm9sbGVyRGVsZWdhdGVfV2ViS2l0T25seSA8QVZQbGF5ZXJWaWV3Q29udHJvbGxlckRl
bGVnYXRlPgpAQCAtMTYzLDYgKzE2NCw3IEBAIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIEFW
UGxheWVyVmlld0NvbnRyb2xsZXJFeGl0RnVsbFNjcmVlblJlYXNvbikgewogQHByb3BlcnR5IChu
b25hdG9taWMsIHN0cm9uZywgbnVsbGFibGUpIEFWUGxheWVyQ29udHJvbGxlciAqcGxheWVyQ29u
dHJvbGxlcjsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVyPWlzUGljdHVy
ZUluUGljdHVyZUFjdGl2ZSkgQk9PTCBwaWN0dXJlSW5QaWN0dXJlQWN0aXZlOwogQHByb3BlcnR5
IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09MIHBpY3R1cmVJblBpY3R1cmVXYXNTdGFydGVkV2hl
bkVudGVyaW5nQmFja2dyb3VuZDsKKy0gKHZvaWQpc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJp
bmdQb2xpY3k6KE5TVUludGVnZXIpcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlE
OihOU1N0cmluZyAqKXJvdXRpbmdDb250ZXh0VUlEOwogQGVuZAogCiBOU19BU1NVTUVfTk9OTlVM
TF9FTkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1vZGVsLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxz
Y3JlZW5Nb2RlbC5oCmluZGV4IDk2MDdhNTdjYzljNDg5OWEyMjExOGNkYmIxOTFhY2FhMDdjMmQy
YzkuLmY2NzE0OTBhZWJiYWU5NmE4MjA5ODA5MjhkZWYwNGZmOWQ3YTViMjAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaApA
QCAtMjgsMTAgKzI4LDEyIEBACiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZP
Uk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogCisjaW5jbHVkZSAi
QXVkaW9TZXNzaW9uLmgiCiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiSFRNTE1l
ZGlhRWxlbWVudEVudW1zLmgiCiAjaW5jbHVkZSAiTWVkaWFQbGF5ZXJFbnVtcy5oIgogI2luY2x1
ZGUgIlBsYXliYWNrU2Vzc2lvbk1vZGVsLmgiCisjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5k
bGVyLmg+CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogT0JKQ19DTEFTUyBBVlBsYXllclZp
ZXdDb250cm9sbGVyOwpAQCAtNjIsNiArNjQsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lk
IHdpbGxFeGl0UGljdHVyZUluUGljdHVyZSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkRXhp
dFBpY3R1cmVJblBpY3R1cmUoKSA9IDA7CiAKKyAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFJvdXRl
U2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSb3V0ZVNo
YXJpbmdQb2xpY3ksIFN0cmluZyk+JiYgY29tcGxldGlvbkhhbmRsZXIpIHsgY29tcGxldGlvbkhh
bmRsZXIoUm91dGVTaGFyaW5nUG9saWN5OjpEZWZhdWx0LCBlbXB0eVN0cmluZygpKTsgfQorCiAj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICB2aXJ0dWFsIFVJVmlld0NvbnRyb2xsZXIgKnBy
ZXNlbnRpbmdWaWV3Q29udHJvbGxlcigpIHsgcmV0dXJuIG51bGxwdHI7IH0KICAgICB2aXJ0dWFs
IFVJVmlld0NvbnRyb2xsZXIgKmNyZWF0ZVZpZGVvRnVsbHNjcmVlblZpZXdDb250cm9sbGVyKEFW
UGxheWVyVmlld0NvbnRyb2xsZXIgKikgeyByZXR1cm4gbnVsbHB0cjsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0Vs
ZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1v
ZGVsVmlkZW9FbGVtZW50LmgKaW5kZXggOWM1YzIzODIzY2ExNTY2OTYxOWZiN2EzZGNkMTBmMGNi
MTFkNWVjYy4uYmZhMjlmNjJlOTEyNzViNjViNjY3NGNkNjdjM2Y0YzBjZDBkZGY2OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxW
aWRlb0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oCkBAIC03Miw2ICs3Miw3IEBAIHB1YmxpYzoKICAg
ICBGbG9hdFNpemUgdmlkZW9EaW1lbnNpb25zKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV92
aWRlb0RpbWVuc2lvbnM7IH0KICAgICBib29sIGhhc1ZpZGVvKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gbV9oYXNWaWRlbzsgfQogCisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZXF1ZXN0Um91
dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJvdXRl
U2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJikgb3ZlcnJpZGU7CiAKIHByb3RlY3RlZDoKICAgICBX
RUJDT1JFX0VYUE9SVCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxW
aWRlb0VsZW1lbnQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxz
Y3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5tbQppbmRleCBjNTE3NGM4Yjg0OGFmYjA4ZWUxM2JiNWM2
NWUwMTk0MzFjOTIzNWVlLi45MzZiZDk1Y2QwM2I4MDdhNWQ4NGI0YTRhOGQ2YjgyZGIwZDJhNzBi
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbFZpZGVvRWxlbWVudC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2Nv
YS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5tbQpAQCAtMTg3LDYgKzE4NywxMiBA
QCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50OjpmdWxsc2NyZWVuTW9kZUNo
YW5nZWQoSFRNTE1lZGlhRWxlbWVudEVudQogICAgICAgICBtX3ZpZGVvRWxlbWVudC0+ZnVsbHNj
cmVlbk1vZGVDaGFuZ2VkKHZpZGVvRnVsbHNjcmVlbk1vZGUpOwogfQogCit2b2lkIFZpZGVvRnVs
bHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29u
dGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5n
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBhdXRvJiBzZXNzaW9uID0gQXVkaW9TZXNz
aW9uOjpzaGFyZWRTZXNzaW9uKCk7CisgICAgY29tcGxldGlvbkhhbmRsZXIoc2Vzc2lvbi5yb3V0
ZVNoYXJpbmdQb2xpY3koKSwgc2Vzc2lvbi5yb3V0aW5nQ29udGV4dFVJRCgpKTsKK30KKwogdm9p
ZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudDo6YWRkQ2xpZW50KFZpZGVvRnVsbHNj
cmVlbk1vZGVsQ2xpZW50JiBjbGllbnQpCiB7CiAgICAgQVNTRVJUKCFtX2NsaWVudHMuY29udGFp
bnMoJmNsaWVudCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1Zp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaAppbmRleCA1YjAzMDhjYTM2MWVjMWYy
ZjEzMjRjMmI3YWUyZDM5ZTQ5NjNmZmU2Li40NzdlZTRlMGNhMjk3OTEzNWVkNWZlM2MxNTk1MGEx
YTA2MmM1OTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaApAQCAtNTcsNyArNTcsNyBAQCBjbGFz
cyBJbnRSZWN0OwogY2xhc3MgRmxvYXRTaXplOwogY2xhc3MgVmlkZW9GdWxsc2NyZWVuTW9kZWw7
CiBjbGFzcyBWaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlcjsKLSAgICAKKwogY2xhc3MgVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQgZmluYWwKICAgICA6IHB1YmxpYyBWaWRlb0Z1bGxz
Y3JlZW5Nb2RlbENsaWVudAogICAgICwgcHVibGljIFBsYXliYWNrU2Vzc2lvbk1vZGVsQ2xpZW50
CkBAIC0xODQsNiArMTg0LDggQEAgcHJvdGVjdGVkOgogICAgIFdURjo6RnVuY3Rpb248dm9pZChi
b29sKT4gbV9wcmVwYXJlVG9JbmxpbmVDYWxsYmFjazsKICAgICBSdW5Mb29wOjpUaW1lcjxWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdD4gbV93YXRjaGRvZ1RpbWVyOwogICAgIEZsb2F0UmVj
dCBtX2lubGluZVJlY3Q7CisgICAgUm91dGVTaGFyaW5nUG9saWN5IG1fcm91dGVTaGFyaW5nUG9s
aWN5IHsgUm91dGVTaGFyaW5nUG9saWN5OjpEZWZhdWx0IH07CisgICAgU3RyaW5nIG1fcm91dGlu
Z0NvbnRleHRVSUQ7CiAgICAgYm9vbCBtX2FsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFjayB7
IGZhbHNlIH07CiAgICAgYm9vbCBtX3dpcmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkIHsgdHJ1
ZSB9OwogICAgIGJvb2wgbV9zaG91bGRSZXR1cm5Ub0Z1bGxzY3JlZW5XaGVuU3RvcHBpbmdQaVAg
eyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVv
RnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9z
L1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCmluZGV4IGJhMTI3ZGFiZDE5YjZhODZm
M2E2MWFmNzM0NTllZDM4OWM2ZjhmNDMuLjkwOTU5MGRmNjMxZDIxZjRhMGQ0ZjIyMzAzNzJiOWYy
YTZmYTlkZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1
bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KQEAgLTU0MSw2ICs1NDEsNyBAQCAt
ICh2b2lkKXN0YXJ0UGljdHVyZUluUGljdHVyZTsKIC0gKHZvaWQpc3RvcFBpY3R1cmVJblBpY3R1
cmU7CiAKIC0gKEJPT0wpcGxheWVyVmlld0NvbnRyb2xsZXJTaG91bGRIYW5kbGVEb25lQnV0dG9u
VGFwOihBVlBsYXllclZpZXdDb250cm9sbGVyICopcGxheWVyVmlld0NvbnRyb2xsZXI7CistICh2
b2lkKXNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRl
U2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4
dFVJRDsKIEBlbmQKIE5TX0FTU1VNRV9OT05OVUxMX0VORAogCkBAIC01NzQsNiArNTc1LDE2IEBA
IC0gKEJPT0wpcGxheWVyVmlld0NvbnRyb2xsZXJTaG91bGRIYW5kbGVEb25lQnV0dG9uVGFwOihB
VlBsYXllclZpZXdDb250cm9sbGVyICopCiAgICAgcmV0dXJuIFlFUzsKIH0KIAorLSAodm9pZClz
ZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJp
bmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5TU3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQK
K3sKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0
aWMgaWdub3JlZCAiLVd1bmtub3duLXByYWdtYXMiCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMg
aWdub3JlZCAiLVd1bmd1YXJkZWQtYXZhaWxhYmlsaXR5LW5ldyIKKyAgICBpZiAoW19hdlBsYXll
clZpZXdDb250cm9sbGVyIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0V2ViS2l0T3Zl
cnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6cm91dGluZ0NvbnRleHRVSUQ6KV0pCisgICAgICAgIFtf
YXZQbGF5ZXJWaWV3Q29udHJvbGxlciBzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGlj
eTpyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6cm91dGluZ0NvbnRleHRVSURd
OworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHBvcAorfQorCiAtICh2b2lkKWVudGVyRnVsbFNj
cmVlbkFuaW1hdGVkOihCT09MKWFuaW1hdGVkIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShC
T09MIHN1Y2Nlc3MsIE5TRXJyb3IgKiBfX251bGxhYmxlIGVycm9yKSljb21wbGV0aW9uSGFuZGxl
cgogewogI2lmIFBMQVRGT1JNKFdBVENIT1MpCkBAIC03NTgsOCArNzY5LDE2IEBAIHZvaWQgVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKFZpZGVv
RnVsbHNjcmVlbk1vZGVsCiAKICAgICBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsID0gbW9kZWw7CiAK
LSAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCkKKyAgICBpZiAobV92aWRlb0Z1bGxzY3Jl
ZW5Nb2RlbCkgewogICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5hZGRDbGllbnQoKnRo
aXMpOworICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5yZXF1ZXN0Um91dGVTaGFyaW5n
UG9saWN5QW5kQ29udGV4dFVJRChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWZQdHIodGhp
cyldIChSb3V0ZVNoYXJpbmdQb2xpY3kgcG9saWN5LCBTdHJpbmcgY29udGV4dFVJRCkgeworICAg
ICAgICAgICAgbV9yb3V0ZVNoYXJpbmdQb2xpY3kgPSBwb2xpY3k7CisgICAgICAgICAgICBtX3Jv
dXRpbmdDb250ZXh0VUlEID0gY29udGV4dFVJRDsKKworICAgICAgICAgICAgaWYgKG1fcGxheWVy
Vmlld0NvbnRyb2xsZXIgJiYgIW1fcm91dGluZ0NvbnRleHRVSUQuaXNFbXB0eSgpKQorICAgICAg
ICAgICAgICAgIFttX3BsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVT
aGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKW1fcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250
ZXh0VUlEOm1fcm91dGluZ0NvbnRleHRVSURdOworICAgICAgICB9KTsKKyAgICB9CiAKICAgICBo
YXNWaWRlb0NoYW5nZWQobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCA/IG1fdmlkZW9GdWxsc2NyZWVu
TW9kZWwtPmhhc1ZpZGVvKCkgOiBmYWxzZSk7CiAgICAgdmlkZW9EaW1lbnNpb25zQ2hhbmdlZCht
X3ZpZGVvRnVsbHNjcmVlbk1vZGVsID8gbV92aWRlb0Z1bGxzY3JlZW5Nb2RlbC0+dmlkZW9EaW1l
bnNpb25zKCkgOiBGbG9hdFNpemUoKSk7CkBAIC0xMjIwLDYgKzEyMzksOCBAQCB2b2lkIFZpZGVv
RnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Ojpkb1NldHVwKCkKICAgICBbbV9wbGF5ZXJWaWV3Q29u
dHJvbGxlciBzZXREZWxlZ2F0ZTptX3BsYXllclZpZXdDb250cm9sbGVyRGVsZWdhdGUuZ2V0KCld
OwogICAgIFttX3BsYXllclZpZXdDb250cm9sbGVyIHNldEFsbG93c1BpY3R1cmVJblBpY3R1cmVQ
bGF5YmFjazptX2FsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFja107CiAgICAgW3BsYXllckNv
bnRyb2xsZXIoKSBzZXRQaWN0dXJlSW5QaWN0dXJlUG9zc2libGU6bV9hbGxvd3NQaWN0dXJlSW5Q
aWN0dXJlUGxheWJhY2tdOworICAgIGlmICghbV9yb3V0aW5nQ29udGV4dFVJRC5pc0VtcHR5KCkp
CisgICAgICAgIFttX3BsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVT
aGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKW1fcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250
ZXh0VUlEOm1fcm91dGluZ0NvbnRleHRVSURdOwogCiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKICAg
ICBtX3ZpZXdDb250cm9sbGVyID0gdmlkZW9GdWxsc2NyZWVuTW9kZWwoKS0+Y3JlYXRlVmlkZW9G
dWxsc2NyZWVuVmlld0NvbnRyb2xsZXIobV9wbGF5ZXJWaWV3Q29udHJvbGxlci5nZXQoKS5hdlBs
YXllclZpZXdDb250cm9sbGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93
ZWJraXQvbWVzc2FnZXMucHkgYi9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2Vz
LnB5CmluZGV4IDc1ZGIxYTZhZDUyM2JiMjllZWRlMjQwMWUyODZjNzFiNzM4MjA3NWYuLmMyMWNl
NDBmNDVjYjUyNjNkMWY0NzUyZjk5OTcyNTA0ZDljNmFmYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKKysrIGIvU291cmNlL1dlYktpdC9TY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weQpAQCAtNTU5LDEyICs1NTksMTMgQEAgZGVmIGdlbmVyYXRl
X21lc3NhZ2VfaGFuZGxlcihmaWxlKToKIAogICAgICAgICAgICAgaWYgbWVzc2FnZS5oYXNfYXR0
cmlidXRlKEFTWU5DX0FUVFJJQlVURSk6CiAgICAgICAgICAgICAgICAgbW92ZV9wYXJhbWV0ZXJz
ID0gbWVzc2FnZS5uYW1lLCAnLCAnLmpvaW4oW21vdmVfdHlwZSh4LnR5cGUpIGZvciB4IGluIG1l
c3NhZ2UucmVwbHlfcGFyYW1ldGVyc10pCisgICAgICAgICAgICAgICAgbW92ZV92YWx1ZXMgPSAn
LCAnLmpvaW4oWydXVEZNb3ZlKColcyknICUgeC5uYW1lIGZvciB4IGluIG1lc3NhZ2UucmVwbHlf
cGFyYW1ldGVyc10pCiAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgndm9pZCAlczo6Y2Fs
bFJlcGx5KElQQzo6RGVjb2RlciYgZGVjb2RlciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCglcyk+
JiYgY29tcGxldGlvbkhhbmRsZXIpXG57XG4nICUgbW92ZV9wYXJhbWV0ZXJzKQogICAgICAgICAg
ICAgICAgIGZvciB4IGluIG1lc3NhZ2UucmVwbHlfcGFyYW1ldGVyczoKICAgICAgICAgICAgICAg
ICAgICAgcmVzdWx0LmFwcGVuZCgnICAgIHN0ZDo6b3B0aW9uYWw8JXM+ICVzO1xuJyAlICh4LnR5
cGUsIHgubmFtZSkpCiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBkZWNv
ZGVyID4+ICVzO1xuJyAlIHgubmFtZSkKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVu
ZCgnICAgIGlmICghJXMpIHtcbiAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7XG4gICAgICAg
IHJldHVybjtcbiAgICB9XG4nICUgeC5uYW1lKQotICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBl
bmQoJyAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKColcykpO1xufVxuXG4nICUgKCcsICon
LmpvaW4oeC5uYW1lIGZvciB4IGluIG1lc3NhZ2UucmVwbHlfcGFyYW1ldGVycykpKQorICAgICAg
ICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBjb21wbGV0aW9uSGFuZGxlciglcyk7XG59XG5c
bicgJSBtb3ZlX3ZhbHVlcykKICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCd2b2lkICVz
OjpjYW5jZWxSZXBseShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCVzKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcilcbntcbiAgICBjb21wbGV0aW9uSGFuZGxlcignICUgbW92ZV9wYXJhbWV0ZXJzKQogICAg
ICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJywgJy5qb2luKFsneyB9JyBmb3IgeCBpbiBtZXNz
YWdlLnJlcGx5X3BhcmFtZXRlcnNdKSkKICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcp
O1xufVxuXG4nKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAppbmRleCBmYjAwYjE1M2Y1NmQ2NGM0YmRm
OGIxN2Q5Mjg1MTM3ZmY5Zjg2NjQyLi5kZDk3MTY1YTNkNmZkNWM3MTBjMWI3NTdkOTZjOGJjYTEx
MDQ2ODNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaApAQCAtMjgsNiArMjgsNyBAQAogI2lmIChQ
TEFURk9STShJT1NfRkFNSUxZKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYg
RU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKIAogI2luY2x1ZGUgIk1lc3NhZ2VSZWNl
aXZlci5oIgorI2luY2x1ZGUgPFdlYkNvcmUvQXVkaW9TZXNzaW9uLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9HcmFwaGljc0xheWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVZpZXcuaD4K
ICNpbmNsdWRlIDxXZWJDb3JlL1ZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyLmg+CkBAIC0z
Niw2ICszNyw3IEBACiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9X
VEZTdHJpbmcuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAjaW5jbHVkZSA8V2ViQ29y
ZS9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oPgpAQCAtMTI3LDYgKzEyOSw4IEBAIHB1
YmxpYzoKICAgICB2b2lkIGFwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZlKCk7CiAgICAgYm9vbCBp
c1Zpc2libGUoKSBjb25zdDsKIAorICAgIHZvaWQgcmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFu
ZENvbnRleHRVSUQodWludDY0X3QgY29udGV4dElkLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdl
YkNvcmU6OlJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJik7CisKICNpZiBFTkFCTEUoVklE
RU9fUFJFU0VOVEFUSU9OX01PREUpCiAgICAgYm9vbCBpc1BsYXlpbmdWaWRlb0luRW5oYW5jZWRG
dWxsc2NyZWVuKCkgY29uc3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCmluZGV4IDJjZmIzNDVlYmE3
NWNjOWY1Y2EwY2U0ZTkwM2ZjYWEyNjcyNmI1YmUuLjFmZjExMjAxZTg3MTMxM2UxMjcyNGU5ZGUw
MGY0OGQzNGM3ZDFkN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaApAQCAtMjcsNyArMjcsOSBAQAogCiAjaWYg
KFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAm
JiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogCisjaW5jbHVkZSAiQ29ubmVjdGlv
bi5oIgogI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgorI2luY2x1ZGUgIlZpZGVvRnVsbHNj
cmVlbk1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgPFdlYkNvcmUvRXZlbnRMaXN0ZW5lci5o
PgogI2luY2x1ZGUgPFdlYkNvcmUvSFRNTE1lZGlhRWxlbWVudEVudW1zLmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9QbGF0Zm9ybUNBTGF5ZXIuaD4KQEAgLTE1MSw3ICsxNTMsOCBAQCBwcm90ZWN0ZWQ6
CiAgICAgdm9pZCBzZXRWaWRlb0xheWVyR3Jhdml0eUVudW0odWludDY0X3QgY29udGV4dElkLCB1
bnNpZ25lZCBncmF2aXR5KTsKICAgICB2b2lkIGZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZCh1aW50NjRf
dCBjb250ZXh0SWQsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2Ny
ZWVuTW9kZSk7CiAgICAgdm9pZCBmdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUodWludDY0X3Qg
Y29udGV4dElkLCBib29sIGlzUGFnZVZpc2libGUpOwotICAgIAorICAgIHZvaWQgcmVxdWVzdFJv
dXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQodWludDY0X3QgY29udGV4dElkLCBNZXNzYWdl
czo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6UmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENv
bnRleHRVSUQ6OkFzeW5jUmVwbHkmJik7CisKICAgICBXZWJQYWdlKiBtX3BhZ2U7CiAgICAgUmVm
PFBsYXliYWNrU2Vzc2lvbk1hbmFnZXI+IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlcjsKICAgICBI
YXNoTWFwPFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQqLCB1aW50NjRfdD4gbV92aWRlb0VsZW1l
bnRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbgppbmRleCBmNTY5MDJjN2I5ZjBh
Yzc1Yzk3MWIzMDdjODBhZTY5OWEwNDkyNDEyLi43YzU2ZWQwNGFhODJmODFmN2M2NzhlYWM1ZDcx
ODhhZmI2NzcyMzYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMzUs
NSArMzUsNiBAQCBtZXNzYWdlcyAtPiBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyIHsKICAgICBTZXRW
aWRlb0xheWVyR3Jhdml0eUVudW0odWludDY0X3QgY29udGV4dElkLCB1bnNpZ25lZCBncmF2aXR5
KQogICAgIEZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZCh1aW50NjRfdCBjb250ZXh0SWQsIFdlYkNvcmU6
OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSB2aWRlb0Z1bGxzY3Jl
ZW5Nb2RlKQogICAgIEZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0
SWQsIGJvb2wgaXNQYWdlVmlzaWJsZSkKKyAgICBSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5k
Q29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQpIC0+IChlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6
Um91dGVTaGFyaW5nUG9saWN5IHJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nIHJvdXRpbmdDb250
ZXh0VUlEKSBBc3luYwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbSBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCmluZGV4IGVmOWU4YTA4MjUw
ZGYzOTFjNTBhNWZmM2E5YTM5OTgxZTJhY2E0MmQuLjdmNjMzMDlmMzJhMGE4M2EzOGQwYzI4ODI1
ZTgxNzNiMDIyMWYxNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCkBAIC0zMCw3ICszMCw2IEBACiAjaW1w
b3J0ICJBdHRhY2htZW50LmgiCiAjaW1wb3J0ICJMb2dnaW5nLmgiCiAjaW1wb3J0ICJQbGF5YmFj
a1Nlc3Npb25NYW5hZ2VyLmgiCi0jaW1wb3J0ICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyTWVzc2Fn
ZXMuaCIKICNpbXBvcnQgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eU1lc3NhZ2VzLmgiCiAj
aW1wb3J0ICJXZWJDb3JlQXJndW1lbnRDb2RlcnMuaCIKICNpbXBvcnQgIldlYlBhZ2UuaCIKQEAg
LTU1OCw2ICs1NTcsMTEgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpmdWxsc2NyZWVu
TWF5UmV0dXJuVG9JbmxpbmUodWludDY0X3QgY29udGV4dElkLCBib28KICAgICAgICAgbW9kZWwu
dmlkZW9FbGVtZW50KCktPnNjcm9sbEludG9WaWV3SWZOb3RWaXNpYmxlKGZhbHNlKTsKICAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6UHJlcGFy
ZWRUb1JldHVyblRvSW5saW5lKGNvbnRleHRJZCwgdHJ1ZSwgaW5saW5lVmlkZW9GcmFtZSgqbW9k
ZWwudmlkZW9FbGVtZW50KCkpKSwgbV9wYWdlLT5wYWdlSUQoKSk7CiB9CisKK3ZvaWQgVmlkZW9G
dWxsc2NyZWVuTWFuYWdlcjo6cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQo
dWludDY0X3QgY29udGV4dElkLCBNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6UmVx
dWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQ6OkFzeW5jUmVwbHkmJiByZXBseSkK
K3sKKyAgICBlbnN1cmVNb2RlbChjb250ZXh0SWQpLnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lB
bmRDb250ZXh0VUlEKFdURk1vdmUocmVwbHkpKTsKK30KICAgICAKIHZvaWQgVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcjo6c2V0VmlkZW9MYXllckZyYW1lRmVuY2VkKHVpbnQ2NF90IGNvbnRleHRJZCwg
V2ViQ29yZTo6RmxvYXRSZWN0IGJvdW5kcywgSVBDOjpBdHRhY2htZW50IGZlbmNlUG9ydCkKIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>353179</attachid>
            <date>2018-10-26 06:16:02 -0700</date>
            <delta_ts>2018-10-26 06:54:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190951-20181026151600.patch</filename>
            <type>text/plain</type>
            <size>20399</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3Mzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk5MDEyZDlkMDk5OWFm
MThlMGQ2MTk4MTgzMmFkNTZmMmZlNDljMy4uYjJjZDk0MWQ5ZmE1ODQzODFmOTlmMDg1MTFkMTEy
Y2Q4MGQ1MTlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlcXVlc3QgdGhlIGNvcnJlY3Qgcm91dGUgcG9saWN5IGFuZCBjb250ZXh0
IGZyb20gdGhlIFZpZGVvRnVsbHNjcmVlbk1vZGVsLgorCisgICAgICAgICogcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaDoKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNj
cmVlbk1vZGVsOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAg
ICAgICogcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVu
dC5tbToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50
OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgorICAgICAgICAoLVtX
ZWJBVlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9s
aWN5OnJvdXRpbmdDb250ZXh0VUlEOl0pOgorICAgICAgICAoVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKToKKyAgICAgICAgKFZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Ojpkb1NldHVwKToKKwogMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8
amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbRU1FXVtDb2NvYV0gQ2Fubm90IHBsYXkg
dW5tdXhlZCB2aWRlbyBhbmQgYXVkaW8gZk1QNCBzdHJlYW1zIGVuY3J5cHRlZCB3aXRoIGRpZmZl
cmVudCBrZXlzIHZpYSBNU0UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IGRmNTFkZDQ0MjBiYmQzZDc3
ODA1Y2U2M2M3ZWNjOGNmMDhkOGY2YTEuLjdhYjQxYzJlZjVjNjUyYThjYTNmNWFjNDM4ZDQxZGRj
MmQ4MzI0NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE4LTEwLTI2
ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRP
dmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oOgorCiAyMDE4LTA5
LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJ
QU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZB
UklBTlQgYnVpbGRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg5Yjg1YjlmNGEzNWM4NTlmYmZiMjQwODczZjViMGZm
MDViMzU3MTkuLjYxMTEyNDZhNGE5NGYzNjU0ZjYwNWI0YjBjZjEwMzU5ODhiMGY0NGYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTgtMTAtMjYgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRvcHQgLXNldE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5
OnJvdXRpbmdDb250ZXh0VUlEOiBTUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5MDk1MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDUyMTMwNjU+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGFu
IGFzeW5jcm9ub3VzIHJlcGx5IHJlcXVlc3QgdG8gVmlkZW9GdWxsc2NyZWVuTWFuYWdlci4KKwor
ICAgICAgICBEcml2ZS1ieSBmaXg6IG1lc3NhZ2VzLnB5IGdlbmVyYXRlcyAiV1RGTW92ZSgqYXJn
MSwgKmFyZzIpIiBpbnN0ZWFkIG9mICJXVEZNb3ZlKCphcmcxKSwgV1RGTW92ZSgqYXJnMikiCisg
ICAgICAgIGluIGl0cyByZXBseSBoYW5kbGVyIGdlbmVyYXRpb24uCisKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2Ny
ZWVuTW9kZWxDb250ZXh0OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmg6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2Vz
LmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5t
bToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6cmVxdWVzdFJvdXRl
U2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQpOgorCiAyMDE4LTA5LTEyICBKZXIgTm9ibGUgIDxq
ZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJQU5UIGJ1aWxkIGRlc3RpbmF0
aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZBUklBTlQgYnVpbGRzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oIGIvU291
cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZLaXRTUEkuaAppbmRleCA1MGViODM1YzAw
OTVlOTRiMGQ4YTdkMmNhN2JiYWM0ZWY5OGFjYzgxLi41NWI0Yjk2ZGY0NDBjMzhlZTM2OWYwMTgw
ZGRkMTE1NTM1YTRjZDExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9j
b2NvYS9BVktpdFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FW
S2l0U1BJLmgKQEAgLTczLDYgKzczLDcgQEAgTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBwcm9w
ZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVyPWlzUGljdHVyZUluUGljdHVyZUFjdGl2
ZSkgQk9PTCBwaWN0dXJlSW5QaWN0dXJlQWN0aXZlOwogQHByb3BlcnR5IChub25hdG9taWMsIHJl
YWRvbmx5LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0dXJlU3VzcGVuZGVkKSBCT09MIHBpY3R1cmVJ
blBpY3R1cmVTdXNwZW5kZWQ7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wg
cGljdHVyZUluUGljdHVyZVdhc1N0YXJ0ZWRXaGVuRW50ZXJpbmdCYWNrZ3JvdW5kOworLSAodm9p
ZClzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlcilyb3V0ZVNo
YXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5TU3RyaW5nICopcm91dGluZ0NvbnRleHRV
SUQ7CiBAZW5kCiAKIEBwcm90b2NvbCBBVlBsYXllclZpZXdDb250cm9sbGVyRGVsZWdhdGVfV2Vi
S2l0T25seSA8QVZQbGF5ZXJWaWV3Q29udHJvbGxlckRlbGVnYXRlPgpAQCAtMTYzLDYgKzE2NCw3
IEBAIHR5cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIEFWUGxheWVyVmlld0NvbnRyb2xsZXJFeGl0
RnVsbFNjcmVlblJlYXNvbikgewogQHByb3BlcnR5IChub25hdG9taWMsIHN0cm9uZywgbnVsbGFi
bGUpIEFWUGxheWVyQ29udHJvbGxlciAqcGxheWVyQ29udHJvbGxlcjsKIEBwcm9wZXJ0eSAobm9u
YXRvbWljLCByZWFkb25seSwgZ2V0dGVyPWlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSkgQk9PTCBw
aWN0dXJlSW5QaWN0dXJlQWN0aXZlOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBC
T09MIHBpY3R1cmVJblBpY3R1cmVXYXNTdGFydGVkV2hlbkVudGVyaW5nQmFja2dyb3VuZDsKKy0g
KHZvaWQpc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpcm91
dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOihOU1N0cmluZyAqKXJvdXRpbmdDb250
ZXh0VUlEOwogQGVuZAogCiBOU19BU1NVTUVfTk9OTlVMTF9FTkQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oCmluZGV4IDk2MDdh
NTdjYzljNDg5OWEyMjExOGNkYmIxOTFhY2FhMDdjMmQyYzkuLmY2NzE0OTBhZWJiYWU5NmE4MjA5
ODA5MjhkZWYwNGZmOWQ3YTViMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaApAQCAtMjgsMTAgKzI4LDEyIEBACiAKICNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9f
UFJFU0VOVEFUSU9OX01PREUpKQogCisjaW5jbHVkZSAiQXVkaW9TZXNzaW9uLmgiCiAjaW5jbHVk
ZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiSFRNTE1lZGlhRWxlbWVudEVudW1zLmgiCiAjaW5j
bHVkZSAiTWVkaWFQbGF5ZXJFbnVtcy5oIgogI2luY2x1ZGUgIlBsYXliYWNrU2Vzc2lvbk1vZGVs
LmgiCisjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAKICNpZiBQTEFURk9STShJ
T1NfRkFNSUxZKQogT0JKQ19DTEFTUyBBVlBsYXllclZpZXdDb250cm9sbGVyOwpAQCAtNjIsNiAr
NjQsOCBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHdpbGxFeGl0UGljdHVyZUluUGljdHVy
ZSgpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUoKSA9IDA7
CiAKKyAgICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRV
SUQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYg
Y29tcGxldGlvbkhhbmRsZXIpIHsgY29tcGxldGlvbkhhbmRsZXIoUm91dGVTaGFyaW5nUG9saWN5
OjpEZWZhdWx0LCBlbXB0eVN0cmluZygpKTsgfQorCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkK
ICAgICB2aXJ0dWFsIFVJVmlld0NvbnRyb2xsZXIgKnByZXNlbnRpbmdWaWV3Q29udHJvbGxlcigp
IHsgcmV0dXJuIG51bGxwdHI7IH0KICAgICB2aXJ0dWFsIFVJVmlld0NvbnRyb2xsZXIgKmNyZWF0
ZVZpZGVvRnVsbHNjcmVlblZpZXdDb250cm9sbGVyKEFWUGxheWVyVmlld0NvbnRyb2xsZXIgKikg
eyByZXR1cm4gbnVsbHB0cjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Y29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgKaW5kZXgg
OWM1YzIzODIzY2ExNTY2OTYxOWZiN2EzZGNkMTBmMGNiMTFkNWVjYy4uYmZhMjlmNjJlOTEyNzVi
NjViNjY3NGNkNjdjM2Y0YzBjZDBkZGY2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVu
dC5oCkBAIC03Miw2ICs3Miw3IEBAIHB1YmxpYzoKICAgICBGbG9hdFNpemUgdmlkZW9EaW1lbnNp
b25zKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV92aWRlb0RpbWVuc2lvbnM7IH0KICAgICBi
b29sIGhhc1ZpZGVvKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9oYXNWaWRlbzsgfQogCisg
ICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4
dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4m
Jikgb3ZlcnJpZGU7CiAKIHByb3RlY3RlZDoKICAgICBXRUJDT1JFX0VYUE9SVCBWaWRlb0Z1bGxz
Y3JlZW5Nb2RlbFZpZGVvRWxlbWVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5t
bQppbmRleCBjNTE3NGM4Yjg0OGFmYjA4ZWUxM2JiNWM2NWUwMTk0MzFjOTIzNWVlLi45MzZiZDk1
Y2QwM2I4MDdhNWQ4NGI0YTRhOGQ2YjgyZGIwZDJhNzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5tbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZp
ZGVvRWxlbWVudC5tbQpAQCAtMTg3LDYgKzE4NywxMiBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1v
ZGVsVmlkZW9FbGVtZW50OjpmdWxsc2NyZWVuTW9kZUNoYW5nZWQoSFRNTE1lZGlhRWxlbWVudEVu
dQogICAgICAgICBtX3ZpZGVvRWxlbWVudC0+ZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHZpZGVvRnVs
bHNjcmVlbk1vZGUpOwogfQogCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50
OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBhdXRvJiBzZXNzaW9uID0gQXVkaW9TZXNzaW9uOjpzaGFyZWRTZXNzaW9uKCk7Cisg
ICAgY29tcGxldGlvbkhhbmRsZXIoc2Vzc2lvbi5yb3V0ZVNoYXJpbmdQb2xpY3koKSwgc2Vzc2lv
bi5yb3V0aW5nQ29udGV4dFVJRCgpKTsKK30KKwogdm9pZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZp
ZGVvRWxlbWVudDo6YWRkQ2xpZW50KFZpZGVvRnVsbHNjcmVlbk1vZGVsQ2xpZW50JiBjbGllbnQp
CiB7CiAgICAgQVNTRVJUKCFtX2NsaWVudHMuY29udGFpbnMoJmNsaWVudCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFW
S2l0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQuaAppbmRleCA1YjAzMDhjYTM2MWVjMWYyZjEzMjRjMmI3YWUyZDM5ZTQ5NjNmZmU2
Li40NzdlZTRlMGNhMjk3OTEzNWVkNWZlM2MxNTk1MGExYTA2MmM1OTA0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQuaApAQCAtNTcsNyArNTcsNyBAQCBjbGFzcyBJbnRSZWN0OwogY2xhc3MgRmxvYXRT
aXplOwogY2xhc3MgVmlkZW9GdWxsc2NyZWVuTW9kZWw7CiBjbGFzcyBWaWRlb0Z1bGxzY3JlZW5D
aGFuZ2VPYnNlcnZlcjsKLSAgICAKKwogY2xhc3MgVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQgZmluYWwKICAgICA6IHB1YmxpYyBWaWRlb0Z1bGxzY3JlZW5Nb2RlbENsaWVudAogICAgICwg
cHVibGljIFBsYXliYWNrU2Vzc2lvbk1vZGVsQ2xpZW50CkBAIC0xODQsNiArMTg0LDggQEAgcHJv
dGVjdGVkOgogICAgIFdURjo6RnVuY3Rpb248dm9pZChib29sKT4gbV9wcmVwYXJlVG9JbmxpbmVD
YWxsYmFjazsKICAgICBSdW5Mb29wOjpUaW1lcjxWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dD4gbV93YXRjaGRvZ1RpbWVyOwogICAgIEZsb2F0UmVjdCBtX2lubGluZVJlY3Q7CisgICAgUm91
dGVTaGFyaW5nUG9saWN5IG1fcm91dGVTaGFyaW5nUG9saWN5IHsgUm91dGVTaGFyaW5nUG9saWN5
OjpEZWZhdWx0IH07CisgICAgU3RyaW5nIG1fcm91dGluZ0NvbnRleHRVSUQ7CiAgICAgYm9vbCBt
X2FsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFjayB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3dp
cmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkIHsgdHJ1ZSB9OwogICAgIGJvb2wgbV9zaG91bGRS
ZXR1cm5Ub0Z1bGxzY3JlZW5XaGVuU3RvcHBpbmdQaVAgeyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFj
ZUFWS2l0Lm1tCmluZGV4IGJhMTI3ZGFiZDE5YjZhODZmM2E2MWFmNzM0NTllZDM4OWM2ZjhmNDMu
LjkwOTU5MGRmNjMxZDIxZjRhMGQ0ZjIyMzAzNzJiOWYyYTZmYTlkZDggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5t
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQubW0KQEAgLTU0MSw2ICs1NDEsNyBAQCAtICh2b2lkKXN0YXJ0UGljdHVyZUluUGlj
dHVyZTsKIC0gKHZvaWQpc3RvcFBpY3R1cmVJblBpY3R1cmU7CiAKIC0gKEJPT0wpcGxheWVyVmll
d0NvbnRyb2xsZXJTaG91bGRIYW5kbGVEb25lQnV0dG9uVGFwOihBVlBsYXllclZpZXdDb250cm9s
bGVyICopcGxheWVyVmlld0NvbnRyb2xsZXI7CistICh2b2lkKXNldFdlYktpdE92ZXJyaWRlUm91
dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hhcmluZ1BvbGljeSByb3V0aW5nQ29u
dGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJRDsKIEBlbmQKIE5TX0FTU1VNRV9O
T05OVUxMX0VORAogCkBAIC01NzQsNiArNTc1LDE2IEBAIC0gKEJPT0wpcGxheWVyVmlld0NvbnRy
b2xsZXJTaG91bGRIYW5kbGVEb25lQnV0dG9uVGFwOihBVlBsYXllclZpZXdDb250cm9sbGVyICop
CiAgICAgcmV0dXJuIFlFUzsKIH0KIAorLSAodm9pZClzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hh
cmluZ1BvbGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRV
SUQ6KE5TU3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQKK3sKKyNwcmFnbWEgY2xhbmcgZGlhZ25v
c3RpYyBwdXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVd1bmtub3duLXBy
YWdtYXMiCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVd1bmd1YXJkZWQtYXZh
aWxhYmlsaXR5LW5ldyIKKyAgICBpZiAoW19hdlBsYXllclZpZXdDb250cm9sbGVyIHJlc3BvbmRz
VG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6
cm91dGluZ0NvbnRleHRVSUQ6KV0pCisgICAgICAgIFtfYXZQbGF5ZXJWaWV3Q29udHJvbGxlciBz
ZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0ZVNoYXJpbmdQb2xpY3kgcm91
dGluZ0NvbnRleHRVSUQ6cm91dGluZ0NvbnRleHRVSURdOworI3ByYWdtYSBjbGFuZyBkaWFnbm9z
dGljIHBvcAorfQorCiAtICh2b2lkKWVudGVyRnVsbFNjcmVlbkFuaW1hdGVkOihCT09MKWFuaW1h
dGVkIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShCT09MIHN1Y2Nlc3MsIE5TRXJyb3IgKiBf
X251bGxhYmxlIGVycm9yKSljb21wbGV0aW9uSGFuZGxlcgogewogI2lmIFBMQVRGT1JNKFdBVENI
T1MpCkBAIC03NTgsOCArNzY5LDE2IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKFZpZGVvRnVsbHNjcmVlbk1vZGVsCiAKICAgICBt
X3ZpZGVvRnVsbHNjcmVlbk1vZGVsID0gbW9kZWw7CiAKLSAgICBpZiAobV92aWRlb0Z1bGxzY3Jl
ZW5Nb2RlbCkKKyAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCkgewogICAgICAgICBtX3Zp
ZGVvRnVsbHNjcmVlbk1vZGVsLT5hZGRDbGllbnQoKnRoaXMpOworICAgICAgICBtX3ZpZGVvRnVs
bHNjcmVlbk1vZGVsLT5yZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChbdGhp
cywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWZQdHIodGhpcyldIChSb3V0ZVNoYXJpbmdQb2xpY3kg
cG9saWN5LCBTdHJpbmcgY29udGV4dFVJRCkgeworICAgICAgICAgICAgbV9yb3V0ZVNoYXJpbmdQ
b2xpY3kgPSBwb2xpY3k7CisgICAgICAgICAgICBtX3JvdXRpbmdDb250ZXh0VUlEID0gY29udGV4
dFVJRDsKKworICAgICAgICAgICAgaWYgKG1fcGxheWVyVmlld0NvbnRyb2xsZXIgJiYgIW1fcm91
dGluZ0NvbnRleHRVSUQuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIFttX3BsYXllclZpZXdD
b250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2Vy
KW1fcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOm1fcm91dGluZ0NvbnRleHRV
SURdOworICAgICAgICB9KTsKKyAgICB9CiAKICAgICBoYXNWaWRlb0NoYW5nZWQobV92aWRlb0Z1
bGxzY3JlZW5Nb2RlbCA/IG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPmhhc1ZpZGVvKCkgOiBmYWxz
ZSk7CiAgICAgdmlkZW9EaW1lbnNpb25zQ2hhbmdlZChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsID8g
bV92aWRlb0Z1bGxzY3JlZW5Nb2RlbC0+dmlkZW9EaW1lbnNpb25zKCkgOiBGbG9hdFNpemUoKSk7
CkBAIC0xMjIwLDYgKzEyMzksOCBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
Ojpkb1NldHVwKCkKICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxlciBzZXREZWxlZ2F0ZTptX3Bs
YXllclZpZXdDb250cm9sbGVyRGVsZWdhdGUuZ2V0KCldOwogICAgIFttX3BsYXllclZpZXdDb250
cm9sbGVyIHNldEFsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFjazptX2FsbG93c1BpY3R1cmVJ
blBpY3R1cmVQbGF5YmFja107CiAgICAgW3BsYXllckNvbnRyb2xsZXIoKSBzZXRQaWN0dXJlSW5Q
aWN0dXJlUG9zc2libGU6bV9hbGxvd3NQaWN0dXJlSW5QaWN0dXJlUGxheWJhY2tdOworICAgIGlm
ICghbV9yb3V0aW5nQ29udGV4dFVJRC5pc0VtcHR5KCkpCisgICAgICAgIFttX3BsYXllclZpZXdD
b250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2Vy
KW1fcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOm1fcm91dGluZ0NvbnRleHRV
SURdOwogCiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKICAgICBtX3ZpZXdDb250cm9sbGVyID0gdmlk
ZW9GdWxsc2NyZWVuTW9kZWwoKS0+Y3JlYXRlVmlkZW9GdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIo
bV9wbGF5ZXJWaWV3Q29udHJvbGxlci5nZXQoKS5hdlBsYXllclZpZXdDb250cm9sbGVyKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkgYi9Tb3Vy
Y2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CmluZGV4IDc1ZGIxYTZhZDUyM2Ji
MjllZWRlMjQwMWUyODZjNzFiNzM4MjA3NWYuLmMyMWNlNDBmNDVjYjUyNjNkMWY0NzUyZjk5OTcy
NTA0ZDljNmFmYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVz
c2FnZXMucHkKKysrIGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQpA
QCAtNTU5LDEyICs1NTksMTMgQEAgZGVmIGdlbmVyYXRlX21lc3NhZ2VfaGFuZGxlcihmaWxlKToK
IAogICAgICAgICAgICAgaWYgbWVzc2FnZS5oYXNfYXR0cmlidXRlKEFTWU5DX0FUVFJJQlVURSk6
CiAgICAgICAgICAgICAgICAgbW92ZV9wYXJhbWV0ZXJzID0gbWVzc2FnZS5uYW1lLCAnLCAnLmpv
aW4oW21vdmVfdHlwZSh4LnR5cGUpIGZvciB4IGluIG1lc3NhZ2UucmVwbHlfcGFyYW1ldGVyc10p
CisgICAgICAgICAgICAgICAgbW92ZV92YWx1ZXMgPSAnLCAnLmpvaW4oWydXVEZNb3ZlKColcykn
ICUgeC5uYW1lIGZvciB4IGluIG1lc3NhZ2UucmVwbHlfcGFyYW1ldGVyc10pCiAgICAgICAgICAg
ICAgICAgcmVzdWx0LmFwcGVuZCgndm9pZCAlczo6Y2FsbFJlcGx5KElQQzo6RGVjb2RlciYgZGVj
b2RlciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCglcyk+JiYgY29tcGxldGlvbkhhbmRsZXIpXG57
XG4nICUgbW92ZV9wYXJhbWV0ZXJzKQogICAgICAgICAgICAgICAgIGZvciB4IGluIG1lc3NhZ2Uu
cmVwbHlfcGFyYW1ldGVyczoKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICAg
IHN0ZDo6b3B0aW9uYWw8JXM+ICVzO1xuJyAlICh4LnR5cGUsIHgubmFtZSkpCiAgICAgICAgICAg
ICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBkZWNvZGVyID4+ICVzO1xuJyAlIHgubmFtZSkK
ICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICAgIGlmICghJXMpIHtcbiAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4nICUgeC5u
YW1lKQotICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBjb21wbGV0aW9uSGFuZGxl
cihXVEZNb3ZlKColcykpO1xufVxuXG4nICUgKCcsIConLmpvaW4oeC5uYW1lIGZvciB4IGluIG1l
c3NhZ2UucmVwbHlfcGFyYW1ldGVycykpKQorICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQo
JyAgICBjb21wbGV0aW9uSGFuZGxlciglcyk7XG59XG5cbicgJSBtb3ZlX3ZhbHVlcykKICAgICAg
ICAgICAgICAgICByZXN1bHQuYXBwZW5kKCd2b2lkICVzOjpjYW5jZWxSZXBseShDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCVzKT4mJiBjb21wbGV0aW9uSGFuZGxlcilcbntcbiAgICBjb21wbGV0aW9u
SGFuZGxlcignICUgbW92ZV9wYXJhbWV0ZXJzKQogICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBl
bmQoJywgJy5qb2luKFsneyB9JyBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnNdKSkK
ICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcpO1xufVxuXG4nKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5
LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
UHJveHkuaAppbmRleCBmYjAwYjE1M2Y1NmQ2NGM0YmRmOGIxN2Q5Mjg1MTM3ZmY5Zjg2NjQyLi41
YmFhZDJkYWQxMGFhMzgxNDJhYzVjNzBiZjMzM2Y5ZmM5Yjk2NjY3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
UHJveHkuaApAQCAtMjgsNiArMjgsNyBAQAogI2lmIChQTEFURk9STShJT1NfRkFNSUxZKSAmJiBI
QVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElP
Tl9NT0RFKSkKIAogI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgorI2luY2x1ZGUgPFdlYkNv
cmUvQXVkaW9TZXNzaW9uLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc0xheWVyLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVZpZXcuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1ZpZGVv
RnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyLmg+CkBAIC0zNiw2ICszNyw3IEBACiAjaW5jbHVkZSA8
d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0
Zi9SZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogI2lmIFBMQVRG
T1JNKElPU19GQU1JTFkpCiAjaW5jbHVkZSA8V2ViQ29yZS9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZh
Y2VBVktpdC5oPgpAQCAtOTMsNiArOTUsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZmFpbGVkVG9F
bnRlclBpY3R1cmVJblBpY3R1cmUoKSBmaW5hbDsKICAgICB2b2lkIHdpbGxFeGl0UGljdHVyZUlu
UGljdHVyZSgpIGZpbmFsOwogICAgIHZvaWQgZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUoKSBmaW5h
bDsKKyAgICB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoUm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmKSBmaW5hbDsK
IAogICAgIC8vIFZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyCiAgICAgdm9pZCByZXF1ZXN0
VXBkYXRlSW5saW5lUmVjdCgpIGZpbmFsOwpAQCAtMTI3LDYgKzEzMCw4IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGFwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZlKCk7CiAgICAgYm9vbCBpc1Zpc2libGUo
KSBjb25zdDsKIAorICAgIHZvaWQgcmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRV
SUQodWludDY0X3QgY29udGV4dElkLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJv
dXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJik7CisKICNpZiBFTkFCTEUoVklERU9fUFJFU0VO
VEFUSU9OX01PREUpCiAgICAgYm9vbCBpc1BsYXlpbmdWaWRlb0luRW5oYW5jZWRGdWxsc2NyZWVu
KCkgY29uc3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQppbmRleCBhY2VlYjlmYTBj
MTc1ODA3YzRlZDU1YTBiZGI2YmEzYTcxZDI4MTg2Li4zYjkwNGI5ODVjYTJhZWViODQ2YTc2NmI3
NjA1NDQxNWYwY2QzMWRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCkBAIC0yNzQsNiArMjc0
LDE0IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxDb250ZXh0OjpmdWxsc2NyZWVuTWF5UmV0
dXJuVG9JbmxpbmUoKQogICAgICAgICBtX21hbmFnZXItPmZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lu
bGluZShtX2NvbnRleHRJZCk7CiB9CiAKK3ZvaWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxDb250ZXh0
OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKFJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFuZGxlcikK
K3sKKyAgICBpZiAobV9tYW5hZ2VyKQorICAgICAgICBtX21hbmFnZXItPnJlcXVlc3RSb3V0ZVNo
YXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKG1fY29udGV4dElkLCBXVEZNb3ZlKGNvbXBsZXRpb25I
YW5kbGVyKSk7CisgICAgZWxzZQorICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihSb3V0ZVNoYXJp
bmdQb2xpY3k6OkRlZmF1bHQsIGVtcHR5U3RyaW5nKCkpOworfQorCiB2b2lkIFZpZGVvRnVsbHNj
cmVlbk1vZGVsQ29udGV4dDo6d2lsbEVudGVyUGljdHVyZUluUGljdHVyZSgpCiB7CiAgICAgZm9y
IChhdXRvJiBjbGllbnQgOiBtX2NsaWVudHMpCkBAIC0zOTMsNiArNDAxLDExIEBAIHZvaWQgVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjphcHBsaWNhdGlvbkRpZEJlY29tZUFjdGl2ZSgpCiAg
ICAgICAgIHN0ZDo6Z2V0PDE+KHR1cGxlKS0+YXBwbGljYXRpb25EaWRCZWNvbWVBY3RpdmUoKTsK
IH0KIAordm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnJlcXVlc3RSb3V0ZVNoYXJp
bmdQb2xpY3lBbmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYgY2FsbGJhY2sp
OworeworICAgIG1fcGFnZS0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChjb250
ZXh0SWQpLCBXVEZNb3ZlKGNhbGxiYWNrKSk7Cit9CisKIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQ
cm94eTo6TW9kZWxJbnRlcmZhY2VUdXBsZSBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmNy
ZWF0ZU1vZGVsQW5kSW50ZXJmYWNlKHVpbnQ2NF90IGNvbnRleHRJZCkKIHsKICAgICBhdXRvJiBw
bGF5YmFja1Nlc3Npb25Nb2RlbCA9IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LT5lbnN1
cmVNb2RlbChjb250ZXh0SWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKaW5kZXggMmNmYjM0NWViYTc1Y2M5ZjVj
YTBjZTRlOTAzZmNhYTI2NzI2YjViZS4uMWZmMTEyMDFlODcxMzEzZTEyNzI0ZTlkZTAwZjQ4ZDM0
YzdkMWQ3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCkBAIC0yNyw3ICsyNyw5IEBACiAKICNpZiAoUExBVEZP
Uk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKKyNpbmNsdWRlICJDb25uZWN0aW9uLmgiCiAj
aW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyLmgiCisjaW5jbHVkZSAiVmlkZW9GdWxsc2NyZWVuTWFu
YWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9FdmVudExpc3RlbmVyLmg+CiAjaW5j
bHVkZSA8V2ViQ29yZS9IVE1MTWVkaWFFbGVtZW50RW51bXMuaD4KICNpbmNsdWRlIDxXZWJDb3Jl
L1BsYXRmb3JtQ0FMYXllci5oPgpAQCAtMTUxLDcgKzE1Myw4IEBAIHByb3RlY3RlZDoKICAgICB2
b2lkIHNldFZpZGVvTGF5ZXJHcmF2aXR5RW51bSh1aW50NjRfdCBjb250ZXh0SWQsIHVuc2lnbmVk
IGdyYXZpdHkpOwogICAgIHZvaWQgZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHVpbnQ2NF90IGNvbnRl
eHRJZCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2Rl
KTsKICAgICB2b2lkIGZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0
SWQsIGJvb2wgaXNQYWdlVmlzaWJsZSk7Ci0gICAgCisgICAgdm9pZCByZXF1ZXN0Um91dGVTaGFy
aW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQsIE1lc3NhZ2VzOjpWaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJ
RDo6QXN5bmNSZXBseSYmKTsKKwogICAgIFdlYlBhZ2UqIG1fcGFnZTsKICAgICBSZWY8UGxheWJh
Y2tTZXNzaW9uTWFuYWdlcj4gbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyOwogICAgIEhhc2hNYXA8
V2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCosIHVpbnQ2NF90PiBtX3ZpZGVvRWxlbWVudHM7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVu
TWFuYWdlci5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGY1NjkwMmM3YjlmMGFjNzVjOTcx
YjMwN2M4MGFlNjk5YTA0OTI0MTIuLjdjNTZlZDA0YWE4MmY4MWY3YzY3OGVhYzVkNzE4OGFmYjY3
NzIzNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0zNSw1ICszNSw2
IEBAIG1lc3NhZ2VzIC0+IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXIgewogICAgIFNldFZpZGVvTGF5
ZXJHcmF2aXR5RW51bSh1aW50NjRfdCBjb250ZXh0SWQsIHVuc2lnbmVkIGdyYXZpdHkpCiAgICAg
RnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6SFRNTE1l
ZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1vZGUp
CiAgICAgRnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9v
bCBpc1BhZ2VWaXNpYmxlKQorICAgIFJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0
VUlEKHVpbnQ2NF90IGNvbnRleHRJZCkgLT4gKGVudW06dWludDhfdCBXZWJDb3JlOjpSb3V0ZVNo
YXJpbmdQb2xpY3kgcm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcgcm91dGluZ0NvbnRleHRVSUQp
IEFzeW5jCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9j
b2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KaW5kZXggZWY5ZThhMDgyNTBkZjM5MWM1
MGE1ZmYzYTlhMzk5ODFlMmFjYTQyZC4uN2Y2MzMwOWYzMmEwYTgzYTM4ZDBjMjg4MjVlODE3M2Iw
MjIxZjE2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KQEAgLTMwLDcgKzMwLDYgQEAKICNpbXBvcnQgIkF0
dGFjaG1lbnQuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKICNpbXBvcnQgIlBsYXliYWNrU2Vzc2lv
bk1hbmFnZXIuaCIKLSNpbXBvcnQgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJNZXNzYWdlcy5oIgog
I2ltcG9ydCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5TWVzc2FnZXMuaCIKICNpbXBvcnQg
IldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogI2ltcG9ydCAiV2ViUGFnZS5oIgpAQCAtNTU4LDYg
KzU1NywxMSBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmZ1bGxzY3JlZW5NYXlSZXR1
cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0SWQsIGJvbwogICAgICAgICBtb2RlbC52aWRlb0Vs
ZW1lbnQoKS0+c2Nyb2xsSW50b1ZpZXdJZk5vdFZpc2libGUoZmFsc2UpOwogICAgIG1fcGFnZS0+
c2VuZChNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpQcmVwYXJlZFRvUmV0
dXJuVG9JbmxpbmUoY29udGV4dElkLCB0cnVlLCBpbmxpbmVWaWRlb0ZyYW1lKCptb2RlbC52aWRl
b0VsZW1lbnQoKSkpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0KKwordm9pZCBWaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRf
dCBjb250ZXh0SWQsIE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91
dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRDo6QXN5bmNSZXBseSYmIHJlcGx5KQoreworICAg
IGVuc3VyZU1vZGVsKGNvbnRleHRJZCkucmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRl
eHRVSUQoV1RGTW92ZShyZXBseSkpOworfQogICAgIAogdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyOjpzZXRWaWRlb0xheWVyRnJhbWVGZW5jZWQodWludDY0X3QgY29udGV4dElkLCBXZWJDb3Jl
OjpGbG9hdFJlY3QgYm91bmRzLCBJUEM6OkF0dGFjaG1lbnQgZmVuY2VQb3J0KQogewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>353181</attachid>
            <date>2018-10-26 06:54:21 -0700</date>
            <delta_ts>2018-10-29 10:17:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190951-20181026155420.patch</filename>
            <type>text/plain</type>
            <size>21389</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3Mzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk5MDEyZDlkMDk5OWFm
MThlMGQ2MTk4MTgzMmFkNTZmMmZlNDljMy4uYjJjZDk0MWQ5ZmE1ODQzODFmOTlmMDg1MTFkMTEy
Y2Q4MGQ1MTlhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlcXVlc3QgdGhlIGNvcnJlY3Qgcm91dGUgcG9saWN5IGFuZCBjb250ZXh0
IGZyb20gdGhlIFZpZGVvRnVsbHNjcmVlbk1vZGVsLgorCisgICAgICAgICogcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaDoKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNj
cmVlbk1vZGVsOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAg
ICAgICogcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVu
dC5tbToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50
OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgorICAgICAgICAoLVtX
ZWJBVlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9s
aWN5OnJvdXRpbmdDb250ZXh0VUlEOl0pOgorICAgICAgICAoVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKToKKyAgICAgICAgKFZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Ojpkb1NldHVwKToKKwogMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8
amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbRU1FXVtDb2NvYV0gQ2Fubm90IHBsYXkg
dW5tdXhlZCB2aWRlbyBhbmQgYXVkaW8gZk1QNCBzdHJlYW1zIGVuY3J5cHRlZCB3aXRoIGRpZmZl
cmVudCBrZXlzIHZpYSBNU0UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCmluZGV4IGRmNTFkZDQ0MjBiYmQzZDc3
ODA1Y2U2M2M3ZWNjOGNmMDhkOGY2YTEuLjdhYjQxYzJlZjVjNjUyYThjYTNmNWFjNDM4ZDQxZGRj
MmQ4MzI0NDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE4LTEwLTI2
ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRP
dmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oOgorCiAyMDE4LTA5
LTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJ
QU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZB
UklBTlQgYnVpbGRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDg5Yjg1YjlmNGEzNWM4NTlmYmZiMjQwODczZjViMGZm
MDViMzU3MTkuLjkyNjQyNTRjNTM3NTdjMGFmZDc4Njg2OWFhZjMzY2IxNDk2Y2Q0ZTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTgtMTAtMjYgIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRvcHQgLXNldE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5
OnJvdXRpbmdDb250ZXh0VUlEOiBTUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE5MDk1MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDUyMTMwNjU+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGFu
IGFzeW5jcm9ub3VzIHJlcGx5IHJlcXVlc3QgdG8gVmlkZW9GdWxsc2NyZWVuTWFuYWdlci4KKwor
ICAgICAgICBEcml2ZS1ieSBmaXg6IG1lc3NhZ2VzLnB5IGdlbmVyYXRlcyAiV1RGTW92ZSgqYXJn
MSwgKmFyZzIpIiBpbnN0ZWFkIG9mICJXVEZNb3ZlKCphcmcxKSwgV1RGTW92ZSgqYXJnMikiCisg
ICAgICAgIGluIGl0cyByZXBseSBoYW5kbGVyIGdlbmVyYXRpb24uCisKKyAgICAgICAgKiBQbGF0
Zm9ybS9JUEMvTWVzc2FnZVNlbmRlci5oOgorICAgICAgICAoSVBDOjpNZXNzYWdlU2VuZGVyOjpz
ZW5kV2l0aEFzeW5jUmVwbHkpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5
OgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHku
aDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5
Lm1tOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlbENvbnRleHQ6OnJlcXVl
c3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKToKKyAgICAgICAgKiBXZWJQcm9jZXNz
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJv
Y2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tOgorICAgICAgICAoV2ViS2l0OjpW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4
dFVJRCk6CisKIDIwMTgtMDktMTIgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAK
ICAgICAgICAgU0RLX1ZBUklBTlQgYnVpbGQgZGVzdGluYXRpb25zIHNob3VsZCBiZSBzZXBhcmF0
ZSBmcm9tIG5vbi1TREtfVkFSSUFOVCBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3Nw
aS9jb2NvYS9BVktpdFNQSS5oCmluZGV4IDUwZWI4MzVjMDA5NWU5NGIwZDhhN2QyY2E3YmJhYzRl
Zjk4YWNjODEuLjU1YjRiOTZkZjQ0MGMzOGVlMzY5ZjAxODBkZGQxMTU1MzVhNGNkMTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZLaXRTUEkuaApAQCAtNzMsNiArNzMs
NyBAQCBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRv
bmx5LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0dXJlQWN0aXZlKSBCT09MIHBpY3R1cmVJblBpY3R1
cmVBY3RpdmU7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGdldHRlcj1pc1BpY3R1
cmVJblBpY3R1cmVTdXNwZW5kZWQpIEJPT0wgcGljdHVyZUluUGljdHVyZVN1c3BlbmRlZDsKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQk9PTCBwaWN0dXJlSW5QaWN0dXJlV2FzU3Rh
cnRlZFdoZW5FbnRlcmluZ0JhY2tncm91bmQ7CistICh2b2lkKXNldFdlYktpdE92ZXJyaWRlUm91
dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hhcmluZ1BvbGljeSByb3V0aW5nQ29u
dGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJRDsKIEBlbmQKIAogQHByb3RvY29s
IEFWUGxheWVyVmlld0NvbnRyb2xsZXJEZWxlZ2F0ZV9XZWJLaXRPbmx5IDxBVlBsYXllclZpZXdD
b250cm9sbGVyRGVsZWdhdGU+CkBAIC0xNjMsNiArMTY0LDcgQEAgdHlwZWRlZiBOU19FTlVNKE5T
SW50ZWdlciwgQVZQbGF5ZXJWaWV3Q29udHJvbGxlckV4aXRGdWxsU2NyZWVuUmVhc29uKSB7CiBA
cHJvcGVydHkgKG5vbmF0b21pYywgc3Ryb25nLCBudWxsYWJsZSkgQVZQbGF5ZXJDb250cm9sbGVy
ICpwbGF5ZXJDb250cm9sbGVyOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBnZXR0
ZXI9aXNQaWN0dXJlSW5QaWN0dXJlQWN0aXZlKSBCT09MIHBpY3R1cmVJblBpY3R1cmVBY3RpdmU7
CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgcGljdHVyZUluUGljdHVyZVdh
c1N0YXJ0ZWRXaGVuRW50ZXJpbmdCYWNrZ3JvdW5kOworLSAodm9pZClzZXRXZWJLaXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGlu
Z0NvbnRleHRVSUQ6KE5TU3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQ7CiBAZW5kCiAKIE5TX0FT
U1VNRV9OT05OVUxMX0VORApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKaW5kZXggOTYwN2E1N2NjOWM0ODk5YTIyMTE4Y2RiYjE5
MWFjYWEwN2MyZDJjOS4uZjY3MTQ5MGFlYmJhZTk2YTgyMDk4MDkyOGRlZjA0ZmY5ZDdhNWIyMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVu
TW9kZWwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbC5oCkBAIC0yOCwxMCArMjgsMTIgQEAKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
IHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAK
KyNpbmNsdWRlICJBdWRpb1Nlc3Npb24uaCIKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNpbmNs
dWRlICJIVE1MTWVkaWFFbGVtZW50RW51bXMuaCIKICNpbmNsdWRlICJNZWRpYVBsYXllckVudW1z
LmgiCiAjaW5jbHVkZSAiUGxheWJhY2tTZXNzaW9uTW9kZWwuaCIKKyNpbmNsdWRlIDx3dGYvQ29t
cGxldGlvbkhhbmRsZXIuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBPQkpDX0NMQVNT
IEFWUGxheWVyVmlld0NvbnRyb2xsZXI7CkBAIC02Miw2ICs2NCw4IEBAIHB1YmxpYzoKICAgICB2
aXJ0dWFsIHZvaWQgd2lsbEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkgPSAwOwogICAgIHZpcnR1YWwg
dm9pZCBkaWRFeGl0UGljdHVyZUluUGljdHVyZSgpID0gMDsKIAorICAgIHZpcnR1YWwgdm9pZCBy
ZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKFJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgeyBj
b21wbGV0aW9uSGFuZGxlcihSb3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQsIGVtcHR5U3RyaW5n
KCkpOyB9CisKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIHZpcnR1YWwgVUlWaWV3Q29u
dHJvbGxlciAqcHJlc2VudGluZ1ZpZXdDb250cm9sbGVyKCkgeyByZXR1cm4gbnVsbHB0cjsgfQog
ICAgIHZpcnR1YWwgVUlWaWV3Q29udHJvbGxlciAqY3JlYXRlVmlkZW9GdWxsc2NyZWVuVmlld0Nv
bnRyb2xsZXIoQVZQbGF5ZXJWaWV3Q29udHJvbGxlciAqKSB7IHJldHVybiBudWxscHRyOyB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5N
b2RlbFZpZGVvRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9G
dWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaAppbmRleCA5YzVjMjM4MjNjYTE1NjY5NjE5ZmI3
YTNkY2QxMGYwY2IxMWQ1ZWNjLi5iZmEyOWY2MmU5MTI3NWI2NWI2Njc0Y2Q2N2MzZjRjMGNkMGRk
ZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxz
Y3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgKQEAgLTcyLDYgKzcyLDcgQEAg
cHVibGljOgogICAgIEZsb2F0U2l6ZSB2aWRlb0RpbWVuc2lvbnMoKSBjb25zdCBvdmVycmlkZSB7
IHJldHVybiBtX3ZpZGVvRGltZW5zaW9uczsgfQogICAgIGJvb2wgaGFzVmlkZW8oKSBjb25zdCBv
dmVycmlkZSB7IHJldHVybiBtX2hhc1ZpZGVvOyB9CiAKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoUm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmKSBvdmVycmlkZTsKIAogcHJvdGVj
dGVkOgogICAgIFdFQkNPUkVfRVhQT1JUIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxz
Y3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCmluZGV4IGM1MTc0YzhiODQ4YWZi
MDhlZTEzYmI1YzY1ZTAxOTQzMWM5MjM1ZWUuLjkzNmJkOTVjZDAzYjgwN2E1ZDg0YjRhNGE4ZDZi
ODJkYjBkMmE3MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Zp
ZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCkBAIC0xODcs
NiArMTg3LDEyIEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OmZ1bGxz
Y3JlZW5Nb2RlQ2hhbmdlZChIVE1MTWVkaWFFbGVtZW50RW51CiAgICAgICAgIG1fdmlkZW9FbGVt
ZW50LT5mdWxsc2NyZWVuTW9kZUNoYW5nZWQodmlkZW9GdWxsc2NyZWVuTW9kZSk7CiB9CiAKK3Zv
aWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQ
b2xpY3lBbmRDb250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUm91dGVTaGFyaW5nUG9s
aWN5LCBTdHJpbmcpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8mIHNlc3Npb24g
PSBBdWRpb1Nlc3Npb246OnNoYXJlZFNlc3Npb24oKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihz
ZXNzaW9uLnJvdXRlU2hhcmluZ1BvbGljeSgpLCBzZXNzaW9uLnJvdXRpbmdDb250ZXh0VUlEKCkp
OworfQorCiB2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50OjphZGRDbGllbnQo
VmlkZW9GdWxsc2NyZWVuTW9kZWxDbGllbnQmIGNsaWVudCkKIHsKICAgICBBU1NFUlQoIW1fY2xp
ZW50cy5jb250YWlucygmY2xpZW50KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCmluZGV4IDViMDMw
OGNhMzYxZWMxZjJmMTMyNGMyYjdhZTJkMzllNDk2M2ZmZTYuLjQ3N2VlNGUwY2EyOTc5MTM1ZWQ1
ZmUzYzE1OTUwYTFhMDYyYzU5MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCkBAIC01Nyw3ICs1
Nyw3IEBAIGNsYXNzIEludFJlY3Q7CiBjbGFzcyBGbG9hdFNpemU7CiBjbGFzcyBWaWRlb0Z1bGxz
Y3JlZW5Nb2RlbDsKIGNsYXNzIFZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyOwotICAgIAor
CiBjbGFzcyBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdCBmaW5hbAogICAgIDogcHVibGlj
IFZpZGVvRnVsbHNjcmVlbk1vZGVsQ2xpZW50CiAgICAgLCBwdWJsaWMgUGxheWJhY2tTZXNzaW9u
TW9kZWxDbGllbnQKQEAgLTE4NCw2ICsxODQsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgV1RGOjpGdW5j
dGlvbjx2b2lkKGJvb2wpPiBtX3ByZXBhcmVUb0lubGluZUNhbGxiYWNrOwogICAgIFJ1bkxvb3A6
OlRpbWVyPFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0PiBtX3dhdGNoZG9nVGltZXI7CiAg
ICAgRmxvYXRSZWN0IG1faW5saW5lUmVjdDsKKyAgICBSb3V0ZVNoYXJpbmdQb2xpY3kgbV9yb3V0
ZVNoYXJpbmdQb2xpY3kgeyBSb3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQgfTsKKyAgICBTdHJp
bmcgbV9yb3V0aW5nQ29udGV4dFVJRDsKICAgICBib29sIG1fYWxsb3dzUGljdHVyZUluUGljdHVy
ZVBsYXliYWNrIHsgZmFsc2UgfTsKICAgICBib29sIG1fd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlz
YWJsZWQgeyB0cnVlIH07CiAgICAgYm9vbCBtX3Nob3VsZFJldHVyblRvRnVsbHNjcmVlbldoZW5T
dG9wcGluZ1BpUCB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KaW5kZXggYmExMjdk
YWJkMTliNmE4NmYzYTYxYWY3MzQ1OWVkMzg5YzZmOGY0My4uOTA5NTkwZGY2MzFkMjFmNGEwZDRm
MjIzMDM3MmI5ZjJhNmZhOWRkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQpAQCAtNTQxLDYg
KzU0MSw3IEBAIC0gKHZvaWQpc3RhcnRQaWN0dXJlSW5QaWN0dXJlOwogLSAodm9pZClzdG9wUGlj
dHVyZUluUGljdHVyZTsKIAogLSAoQk9PTClwbGF5ZXJWaWV3Q29udHJvbGxlclNob3VsZEhhbmRs
ZURvbmVCdXR0b25UYXA6KEFWUGxheWVyVmlld0NvbnRyb2xsZXIgKilwbGF5ZXJWaWV3Q29udHJv
bGxlcjsKKy0gKHZvaWQpc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUlu
dGVnZXIpcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOihOU1N0cmluZyAqKXJv
dXRpbmdDb250ZXh0VUlEOwogQGVuZAogTlNfQVNTVU1FX05PTk5VTExfRU5ECiAKQEAgLTU3NCw2
ICs1NzUsMTYgQEAgLSAoQk9PTClwbGF5ZXJWaWV3Q29udHJvbGxlclNob3VsZEhhbmRsZURvbmVC
dXR0b25UYXA6KEFWUGxheWVyVmlld0NvbnRyb2xsZXIgKikKICAgICByZXR1cm4gWUVTOwogfQog
CistICh2b2lkKXNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2Vy
KXJvdXRlU2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5n
Q29udGV4dFVJRAoreworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgY2xh
bmcgZGlhZ25vc3RpYyBpZ25vcmVkICItV3Vua25vd24tcHJhZ21hcyIKKyNwcmFnbWEgY2xhbmcg
ZGlhZ25vc3RpYyBpZ25vcmVkICItV3VuZ3VhcmRlZC1hdmFpbGFiaWxpdHktbmV3IgorICAgIGlm
IChbX2F2UGxheWVyVmlld0NvbnRyb2xsZXIgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3Rvcihz
ZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDopXSkK
KyAgICAgICAgW19hdlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVT
aGFyaW5nUG9saWN5OnJvdXRlU2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDpyb3V0aW5n
Q29udGV4dFVJRF07CisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCit9CisKIC0gKHZvaWQp
ZW50ZXJGdWxsU2NyZWVuQW5pbWF0ZWQ6KEJPT0wpYW5pbWF0ZWQgY29tcGxldGlvbkhhbmRsZXI6
KHZvaWQgKF4pKEJPT0wgc3VjY2VzcywgTlNFcnJvciAqIF9fbnVsbGFibGUgZXJyb3IpKWNvbXBs
ZXRpb25IYW5kbGVyCiB7CiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKQEAgLTc1OCw4ICs3NjksMTYg
QEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6c2V0VmlkZW9GdWxsc2NyZWVu
TW9kZWwoVmlkZW9GdWxsc2NyZWVuTW9kZWwKIAogICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwg
PSBtb2RlbDsKIAotICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsKQorICAgIGlmIChtX3Zp
ZGVvRnVsbHNjcmVlbk1vZGVsKSB7CiAgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPmFk
ZENsaWVudCgqdGhpcyk7CisgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPnJlcXVlc3RS
b3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFr
ZVJlZlB0cih0aGlzKV0gKFJvdXRlU2hhcmluZ1BvbGljeSBwb2xpY3ksIFN0cmluZyBjb250ZXh0
VUlEKSB7CisgICAgICAgICAgICBtX3JvdXRlU2hhcmluZ1BvbGljeSA9IHBvbGljeTsKKyAgICAg
ICAgICAgIG1fcm91dGluZ0NvbnRleHRVSUQgPSBjb250ZXh0VUlEOworCisgICAgICAgICAgICBp
ZiAobV9wbGF5ZXJWaWV3Q29udHJvbGxlciAmJiAhbV9yb3V0aW5nQ29udGV4dFVJRC5pc0VtcHR5
KCkpCisgICAgICAgICAgICAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3Zl
cnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpbV9yb3V0ZVNoYXJpbmdQb2xpY3kg
cm91dGluZ0NvbnRleHRVSUQ6bV9yb3V0aW5nQ29udGV4dFVJRF07CisgICAgICAgIH0pOworICAg
IH0KIAogICAgIGhhc1ZpZGVvQ2hhbmdlZChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsID8gbV92aWRl
b0Z1bGxzY3JlZW5Nb2RlbC0+aGFzVmlkZW8oKSA6IGZhbHNlKTsKICAgICB2aWRlb0RpbWVuc2lv
bnNDaGFuZ2VkKG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwgPyBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVs
LT52aWRlb0RpbWVuc2lvbnMoKSA6IEZsb2F0U2l6ZSgpKTsKQEAgLTEyMjAsNiArMTIzOSw4IEBA
IHZvaWQgVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmRvU2V0dXAoKQogICAgIFttX3Bs
YXllclZpZXdDb250cm9sbGVyIHNldERlbGVnYXRlOm1fcGxheWVyVmlld0NvbnRyb2xsZXJEZWxl
Z2F0ZS5nZXQoKV07CiAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0QWxsb3dzUGljdHVy
ZUluUGljdHVyZVBsYXliYWNrOm1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNrXTsKICAg
ICBbcGxheWVyQ29udHJvbGxlcigpIHNldFBpY3R1cmVJblBpY3R1cmVQb3NzaWJsZTptX2FsbG93
c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFja107CisgICAgaWYgKCFtX3JvdXRpbmdDb250ZXh0VUlE
LmlzRW1wdHkoKSkKKyAgICAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3Zl
cnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpbV9yb3V0ZVNoYXJpbmdQb2xpY3kg
cm91dGluZ0NvbnRleHRVSUQ6bV9yb3V0aW5nQ29udGV4dFVJRF07CiAKICNpZiBQTEFURk9STShX
QVRDSE9TKQogICAgIG1fdmlld0NvbnRyb2xsZXIgPSB2aWRlb0Z1bGxzY3JlZW5Nb2RlbCgpLT5j
cmVhdGVWaWRlb0Z1bGxzY3JlZW5WaWV3Q29udHJvbGxlcihtX3BsYXllclZpZXdDb250cm9sbGVy
LmdldCgpLmF2UGxheWVyVmlld0NvbnRyb2xsZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9QbGF0Zm9ybS9JUEMvTWVzc2FnZVNlbmRlci5oIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9J
UEMvTWVzc2FnZVNlbmRlci5oCmluZGV4IGYyMTYyMjliNGRiMzdjMmVlOGQ3MDQwYmU2MzJjZDM3
NjRmMGVkYjMuLmQ4YzMwZTIzYmQ0MDVhZTc3ZjZhNDcxMTUxNGMwNDQ0NWIxZjAxYzQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL01lc3NhZ2VTZW5kZXIuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9NZXNzYWdlU2VuZGVyLmgKQEAgLTY1LDYgKzY1LDE0
IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCktPnNl
bmRTeW5jKFdURk1vdmUobWVzc2FnZSksIFdURk1vdmUocmVwbHkpLCBkZXN0aW5hdGlvbklELCB0
aW1lb3V0LCBzZW5kU3luY09wdGlvbnMpOwogICAgIH0KIAorICAgIHRlbXBsYXRlPHR5cGVuYW1l
IFQsIHR5cGVuYW1lLi4uIEFyZ3M+CisgICAgdm9pZCBzZW5kV2l0aEFzeW5jUmVwbHkoVCYmIG1l
c3NhZ2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoQXJncy4uLik+JiYgYXJncywgdWludDY0X3Qg
ZGVzdGluYXRpb25JRCA9IDApCisgICAgeworICAgICAgICBBU1NFUlQobWVzc2FnZVNlbmRlckNv
bm5lY3Rpb24oKSk7CisKKyAgICAgICAgbWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKS0+c2VuZFdp
dGhBc3luY1JlcGx5KFdURk1vdmUobWVzc2FnZSksIFdURk1vdmUoYXJncyksIGRlc3RpbmF0aW9u
SUQpOworICAgIH0KKwogICAgIHZpcnR1YWwgYm9vbCBzZW5kTWVzc2FnZShzdGQ6OnVuaXF1ZV9w
dHI8RW5jb2Rlcj4sIE9wdGlvblNldDxTZW5kT3B0aW9uPik7CiAKIHByaXZhdGU6CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dl
YktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQppbmRleCA3NWRiMWE2YWQ1MjNiYjI5ZWVk
ZTI0MDFlMjg2YzcxYjczODIwNzVmLi5jMjFjZTQwZjQ1Y2I1MjYzZDFmNDc1MmY5OTk3MjUwNGQ5
YzZhZmE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2Vz
LnB5CisrKyBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTU1
OSwxMiArNTU5LDEzIEBAIGRlZiBnZW5lcmF0ZV9tZXNzYWdlX2hhbmRsZXIoZmlsZSk6CiAKICAg
ICAgICAgICAgIGlmIG1lc3NhZ2UuaGFzX2F0dHJpYnV0ZShBU1lOQ19BVFRSSUJVVEUpOgogICAg
ICAgICAgICAgICAgIG1vdmVfcGFyYW1ldGVycyA9IG1lc3NhZ2UubmFtZSwgJywgJy5qb2luKFtt
b3ZlX3R5cGUoeC50eXBlKSBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnNdKQorICAg
ICAgICAgICAgICAgIG1vdmVfdmFsdWVzID0gJywgJy5qb2luKFsnV1RGTW92ZSgqJXMpJyAlIHgu
bmFtZSBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnNdKQogICAgICAgICAgICAgICAg
IHJlc3VsdC5hcHBlbmQoJ3ZvaWQgJXM6OmNhbGxSZXBseShJUEM6OkRlY29kZXImIGRlY29kZXIs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoJXMpPiYmIGNvbXBsZXRpb25IYW5kbGVyKVxue1xuJyAl
IG1vdmVfcGFyYW1ldGVycykKICAgICAgICAgICAgICAgICBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5
X3BhcmFtZXRlcnM6CiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBzdGQ6
Om9wdGlvbmFsPCVzPiAlcztcbicgJSAoeC50eXBlLCB4Lm5hbWUpKQogICAgICAgICAgICAgICAg
ICAgICByZXN1bHQuYXBwZW5kKCcgICAgZGVjb2RlciA+PiAlcztcbicgJSB4Lm5hbWUpCiAgICAg
ICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBpZiAoISVzKSB7XG4gICAgICAgIEFT
U0VSVF9OT1RfUkVBQ0hFRCgpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuJyAlIHgubmFtZSkK
LSAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAgY29tcGxldGlvbkhhbmRsZXIoV1RG
TW92ZSgqJXMpKTtcbn1cblxuJyAlICgnLCAqJy5qb2luKHgubmFtZSBmb3IgeCBpbiBtZXNzYWdl
LnJlcGx5X3BhcmFtZXRlcnMpKSkKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAg
Y29tcGxldGlvbkhhbmRsZXIoJXMpO1xufVxuXG4nICUgbW92ZV92YWx1ZXMpCiAgICAgICAgICAg
ICAgICAgcmVzdWx0LmFwcGVuZCgndm9pZCAlczo6Y2FuY2VsUmVwbHkoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCglcyk+JiYgY29tcGxldGlvbkhhbmRsZXIpXG57XG4gICAgY29tcGxldGlvbkhhbmRs
ZXIoJyAlIG1vdmVfcGFyYW1ldGVycykKICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcs
ICcuam9pbihbJ3sgfScgZm9yIHggaW4gbWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzXSkpCiAgICAg
ICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnKTtcbn1cblxuJykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5
LmgKaW5kZXggZmIwMGIxNTNmNTZkNjRjNGJkZjhiMTdkOTI4NTEzN2ZmOWY4NjY0Mi4uYTkyOTlm
MWI3NDY5YjAzYWQyMzQ2MjRiY2QwYjM1NmJjOTI4YjY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5
LmgKQEAgLTI4LDYgKzI4LDcgQEAKICNpZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShB
VktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkpCiAKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0F1
ZGlvU2Vzc2lvbi5oPgogI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NMYXllci5oPgogI2luY2x1
ZGUgPFdlYkNvcmUvUGxhdGZvcm1WaWV3Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9WaWRlb0Z1bGxz
Y3JlZW5DaGFuZ2VPYnNlcnZlci5oPgpAQCAtMzYsNiArMzcsNyBAQAogI2luY2x1ZGUgPHd0Zi9I
YXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvUmVm
UHRyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKICNpZiBQTEFURk9STShJ
T1NfRkFNSUxZKQogI2luY2x1ZGUgPFdlYkNvcmUvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQuaD4KQEAgLTkzLDYgKzk1LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGZhaWxlZFRvRW50ZXJQ
aWN0dXJlSW5QaWN0dXJlKCkgZmluYWw7CiAgICAgdm9pZCB3aWxsRXhpdFBpY3R1cmVJblBpY3R1
cmUoKSBmaW5hbDsKICAgICB2b2lkIGRpZEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkgZmluYWw7Cisg
ICAgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJikgZmlu
YWw7CiAKICAgICAvLyBWaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlcgogICAgIHZvaWQgcmVx
dWVzdFVwZGF0ZUlubGluZVJlY3QoKSBmaW5hbDsKQEAgLTEyNyw2ICsxMzAsOCBAQCBwdWJsaWM6
CiAgICAgdm9pZCBhcHBsaWNhdGlvbkRpZEJlY29tZUFjdGl2ZSgpOwogICAgIGJvb2wgaXNWaXNp
YmxlKCkgY29uc3Q7CiAKKyAgICB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250
ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3Jl
OjpSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYpOworCiAjaWYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKQogICAgIGJvb2wgaXNQbGF5aW5nVmlkZW9JbkVuaGFuY2VkRnVsbHNj
cmVlbigpIGNvbnN0OwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KaW5kZXggYWNlZWI5
ZmEwYzE3NTgwN2M0ZWQ1NWEwYmRiNmJhM2E3MWQyODE4Ni4uODcwMzc5OGEwNmZjN2UxMjdiNzJi
YTczOTc5ZTk2NzdjZGRhOWEzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQpAQCAtMjc0LDYg
KzI3NCwxNCBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsQ29udGV4dDo6ZnVsbHNjcmVlbk1h
eVJldHVyblRvSW5saW5lKCkKICAgICAgICAgbV9tYW5hZ2VyLT5mdWxsc2NyZWVuTWF5UmV0dXJu
VG9JbmxpbmUobV9jb250ZXh0SWQpOwogfQogCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsQ29u
dGV4dDo6cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1fbWFuYWdlcikKKyAgICAgICAgbV9tYW5hZ2VyLT5y
ZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChtX2NvbnRleHRJZCwgV1RGTW92
ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgIGVsc2UKKyAgICAgICAgY29tcGxldGlvbkhhbmRs
ZXIoV2ViQ29yZTo6Um91dGVTaGFyaW5nUG9saWN5OjpEZWZhdWx0LCBlbXB0eVN0cmluZygpKTsK
K30KKwogdm9pZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbENvbnRleHQ6OndpbGxFbnRlclBpY3R1cmVJ
blBpY3R1cmUoKQogewogICAgIGZvciAoYXV0byYgY2xpZW50IDogbV9jbGllbnRzKQpAQCAtMzkz
LDYgKzQwMSwxMSBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6YXBwbGljYXRp
b25EaWRCZWNvbWVBY3RpdmUoKQogICAgICAgICBzdGQ6OmdldDwxPih0dXBsZSktPmFwcGxpY2F0
aW9uRGlkQmVjb21lQWN0aXZlKCk7CiB9CiAKK3ZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlclBy
b3h5OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250
ZXh0SWQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6Um91dGVTaGFyaW5nUG9saWN5
LCBTdHJpbmcpPiYmIGNhbGxiYWNrKQoreworICAgIG1fcGFnZS0+c2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9s
aWN5QW5kQ29udGV4dFVJRChjb250ZXh0SWQpLCBXVEZNb3ZlKGNhbGxiYWNrKSk7Cit9CisKIFZp
ZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6TW9kZWxJbnRlcmZhY2VUdXBsZSBWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyUHJveHk6OmNyZWF0ZU1vZGVsQW5kSW50ZXJmYWNlKHVpbnQ2NF90IGNvbnRl
eHRJZCkKIHsKICAgICBhdXRvJiBwbGF5YmFja1Nlc3Npb25Nb2RlbCA9IG1fcGxheWJhY2tTZXNz
aW9uTWFuYWdlclByb3h5LT5lbnN1cmVNb2RlbChjb250ZXh0SWQpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaCBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKaW5k
ZXggMmNmYjM0NWViYTc1Y2M5ZjVjYTBjZTRlOTAzZmNhYTI2NzI2YjViZS4uMWZmMTEyMDFlODcx
MzEzZTEyNzI0ZTlkZTAwZjQ4ZDM0YzdkMWQ3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCkBAIC0yNyw3ICsy
Nyw5IEBACiAKICNpZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQ
TEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKKyNpbmNs
dWRlICJDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyLmgiCisjaW5jbHVk
ZSAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9F
dmVudExpc3RlbmVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9IVE1MTWVkaWFFbGVtZW50RW51bXMu
aD4KICNpbmNsdWRlIDxXZWJDb3JlL1BsYXRmb3JtQ0FMYXllci5oPgpAQCAtMTUxLDcgKzE1Myw4
IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIHNldFZpZGVvTGF5ZXJHcmF2aXR5RW51bSh1aW50NjRf
dCBjb250ZXh0SWQsIHVuc2lnbmVkIGdyYXZpdHkpOwogICAgIHZvaWQgZnVsbHNjcmVlbk1vZGVD
aGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1z
OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKTsKICAgICB2b2lkIGZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lu
bGluZSh1aW50NjRfdCBjb250ZXh0SWQsIGJvb2wgaXNQYWdlVmlzaWJsZSk7Ci0gICAgCisgICAg
dm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250
ZXh0SWQsIE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFy
aW5nUG9saWN5QW5kQ29udGV4dFVJRDo6QXN5bmNSZXBseSYmKTsKKwogICAgIFdlYlBhZ2UqIG1f
cGFnZTsKICAgICBSZWY8UGxheWJhY2tTZXNzaW9uTWFuYWdlcj4gbV9wbGF5YmFja1Nlc3Npb25N
YW5hZ2VyOwogICAgIEhhc2hNYXA8V2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCosIHVpbnQ2NF90
PiBtX3ZpZGVvRWxlbWVudHM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
Y29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4
IGY1NjkwMmM3YjlmMGFjNzVjOTcxYjMwN2M4MGFlNjk5YTA0OTI0MTIuLjdjNTZlZDA0YWE4MmY4
MWY3YzY3OGVhYzVkNzE4OGFmYjY3NzIzNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3Nh
Z2VzLmluCkBAIC0zNSw1ICszNSw2IEBAIG1lc3NhZ2VzIC0+IFZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXIgewogICAgIFNldFZpZGVvTGF5ZXJHcmF2aXR5RW51bSh1aW50NjRfdCBjb250ZXh0SWQsIHVu
c2lnbmVkIGdyYXZpdHkpCiAgICAgRnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHVpbnQ2NF90IGNvbnRl
eHRJZCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2Rl
IHZpZGVvRnVsbHNjcmVlbk1vZGUpCiAgICAgRnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKHVp
bnQ2NF90IGNvbnRleHRJZCwgYm9vbCBpc1BhZ2VWaXNpYmxlKQorICAgIFJlcXVlc3RSb3V0ZVNo
YXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCkgLT4gKGVudW06dWlu
dDhfdCBXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGVTaGFyaW5nUG9saWN5LCBTdHJp
bmcgcm91dGluZ0NvbnRleHRVSUQpIEFzeW5jCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KaW5k
ZXggZWY5ZThhMDgyNTBkZjM5MWM1MGE1ZmYzYTlhMzk5ODFlMmFjYTQyZC4uN2Y2MzMwOWYzMmEw
YTgzYTM4ZDBjMjg4MjVlODE3M2IwMjIxZjE2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KQEAgLTMwLDcg
KzMwLDYgQEAKICNpbXBvcnQgIkF0dGFjaG1lbnQuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKICNp
bXBvcnQgIlBsYXliYWNrU2Vzc2lvbk1hbmFnZXIuaCIKLSNpbXBvcnQgIlZpZGVvRnVsbHNjcmVl
bk1hbmFnZXJNZXNzYWdlcy5oIgogI2ltcG9ydCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5
TWVzc2FnZXMuaCIKICNpbXBvcnQgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogI2ltcG9ydCAi
V2ViUGFnZS5oIgpAQCAtNTU4LDYgKzU1NywxMSBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXI6OmZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0SWQsIGJvbwog
ICAgICAgICBtb2RlbC52aWRlb0VsZW1lbnQoKS0+c2Nyb2xsSW50b1ZpZXdJZk5vdFZpc2libGUo
ZmFsc2UpOwogICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdl
clByb3h5OjpQcmVwYXJlZFRvUmV0dXJuVG9JbmxpbmUoY29udGV4dElkLCB0cnVlLCBpbmxpbmVW
aWRlb0ZyYW1lKCptb2RlbC52aWRlb0VsZW1lbnQoKSkpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0K
Kwordm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5
QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQsIE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRDo6QXN5bmNS
ZXBseSYmIHJlcGx5KQoreworICAgIGVuc3VyZU1vZGVsKGNvbnRleHRJZCkucmVxdWVzdFJvdXRl
U2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoV1RGTW92ZShyZXBseSkpOworfQogICAgIAogdm9p
ZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpzZXRWaWRlb0xheWVyRnJhbWVGZW5jZWQodWludDY0
X3QgY29udGV4dElkLCBXZWJDb3JlOjpGbG9hdFJlY3QgYm91bmRzLCBJUEM6OkF0dGFjaG1lbnQg
ZmVuY2VQb3J0KQogewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>353296</attachid>
            <date>2018-10-29 10:17:26 -0700</date>
            <delta_ts>2018-10-29 10:21:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190951-20181029101726.patch</filename>
            <type>text/plain</type>
            <size>22173</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM3Mzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGVlODJjODY3YTVlMzAx
MTMxYjMxOTZiMDQxNDJmN2E3NTZiYWNhYi4uNzZjMGJkZTI0OWM1ZmQ2MTcwMDAxYjkxYmY0MzVk
MGVlMDFlOGUzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlcXVlc3QgdGhlIGNvcnJlY3Qgcm91dGUgcG9saWN5IGFuZCBjb250ZXh0
IGZyb20gdGhlIFZpZGVvRnVsbHNjcmVlbk1vZGVsLgorCisgICAgICAgICogcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaDoKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNj
cmVlbk1vZGVsOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAg
ICAgICogcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVu
dC5tbToKKyAgICAgICAgKFdlYkNvcmU6OlZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50
OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg6CisgICAgICAgICogcGxh
dGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tOgorICAgICAgICAoLVtX
ZWJBVlBsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9s
aWN5OnJvdXRpbmdDb250ZXh0VUlEOl0pOgorICAgICAgICAoVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKToKKyAgICAgICAgKFZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Ojpkb1NldHVwKToKKwogMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8
amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBDUkFTSCBpbiBDb3JlR3JhcGhpY3M6IEVS
Uk9SX0NHRGF0YVByb3ZpZGVyX0J1ZmZlcklzTm90QmlnRW5vdWdoCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpp
bmRleCBkZjUxZGQ0NDIwYmJkM2Q3NzgwNWNlNjNjN2VjYzhjZjA4ZDhmNmExLi43YWI0MWMyZWY1
YzY1MmE4Y2EzZjVhYzQzOGQ0MWRkYzJkODMyNDQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4K
KworICAgICAgICBBZG9wdCAtc2V0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6cm91dGluZ0Nv
bnRleHRVSUQ6IFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTkwOTUxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NTIxMzA2NT4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBhbC9zcGkvY29jb2Ev
QVZLaXRTUEkuaDoKKwogMjAxOC0wOS0xMiAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNv
bT4KIAogICAgICAgICBTREtfVkFSSUFOVCBidWlsZCBkZXN0aW5hdGlvbnMgc2hvdWxkIGJlIHNl
cGFyYXRlIGZyb20gbm9uLVNES19WQVJJQU5UIGJ1aWxkcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5MGE4ODMzM2Fm
NDgzY2ZmYjU1NWVjZTI2ZTNlMDQ1MWZhZjcxMDQxLi5iZTVkNzhkY2I5MDg5MjZkZGUxM2I5Yjc5
NGM5MTE4ZjRhODI0NGFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDE4LTEwLTI2ICBK
ZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVy
cmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCBhbiBhc3luY3Jvbm91cyByZXBseSByZXF1ZXN0IHRvIFZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIuCisKKyAgICAgICAgRHJpdmUtYnkgZml4OiBtZXNzYWdlcy5weSBn
ZW5lcmF0ZXMgIldURk1vdmUoKmFyZzEsICphcmcyKSIgaW5zdGVhZCBvZiAiV1RGTW92ZSgqYXJn
MSksIFdURk1vdmUoKmFyZzIpIgorICAgICAgICBpbiBpdHMgcmVwbHkgaGFuZGxlciBnZW5lcmF0
aW9uLgorCisgICAgICAgICogUGxhdGZvcm0vSVBDL01lc3NhZ2VTZW5kZXIuaDoKKyAgICAgICAg
KElQQzo6TWVzc2FnZVNlbmRlcjo6c2VuZFdpdGhBc3luY1JlcGx5KToKKyAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdC9tZXNzYWdlcy5weToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2Ny
ZWVuTW9kZWxDb250ZXh0OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmg6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2Vz
LmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5t
bToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6cmVxdWVzdFJvdXRl
U2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQpOgorCiAyMDE4LTEwLTI2ICBKZXIgTm9ibGUgIDxq
ZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIENSQVNIIGluIENvcmVHcmFwaGljczogRVJS
T1JfQ0dEYXRhUHJvdmlkZXJfQnVmZmVySXNOb3RCaWdFbm91Z2gKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oCmluZGV4IDUwZWI4MzVjMDA5NWU5NGIwZDhhN2Qy
Y2E3YmJhYzRlZjk4YWNjODEuLjU1YjRiOTZkZjQ0MGMzOGVlMzY5ZjAxODBkZGQxMTU1MzVhNGNk
MTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJ
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZLaXRTUEkuaApAQCAt
NzMsNiArNzMsNyBAQCBOU19BU1NVTUVfTk9OTlVMTF9CRUdJTgogQHByb3BlcnR5IChub25hdG9t
aWMsIHJlYWRvbmx5LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0dXJlQWN0aXZlKSBCT09MIHBpY3R1
cmVJblBpY3R1cmVBY3RpdmU7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGdldHRl
cj1pc1BpY3R1cmVJblBpY3R1cmVTdXNwZW5kZWQpIEJPT0wgcGljdHVyZUluUGljdHVyZVN1c3Bl
bmRlZDsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQk9PTCBwaWN0dXJlSW5QaWN0
dXJlV2FzU3RhcnRlZFdoZW5FbnRlcmluZ0JhY2tncm91bmQ7CistICh2b2lkKXNldFdlYktpdE92
ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hhcmluZ1BvbGljeSBy
b3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJRDsKIEBlbmQKIAog
QHByb3RvY29sIEFWUGxheWVyVmlld0NvbnRyb2xsZXJEZWxlZ2F0ZV9XZWJLaXRPbmx5IDxBVlBs
YXllclZpZXdDb250cm9sbGVyRGVsZWdhdGU+CkBAIC0xNjMsNiArMTY0LDcgQEAgdHlwZWRlZiBO
U19FTlVNKE5TSW50ZWdlciwgQVZQbGF5ZXJWaWV3Q29udHJvbGxlckV4aXRGdWxsU2NyZWVuUmVh
c29uKSB7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc3Ryb25nLCBudWxsYWJsZSkgQVZQbGF5ZXJD
b250cm9sbGVyICpwbGF5ZXJDb250cm9sbGVyOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRv
bmx5LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0dXJlQWN0aXZlKSBCT09MIHBpY3R1cmVJblBpY3R1
cmVBY3RpdmU7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgcGljdHVyZUlu
UGljdHVyZVdhc1N0YXJ0ZWRXaGVuRW50ZXJpbmdCYWNrZ3JvdW5kOworLSAodm9pZClzZXRXZWJL
aXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xp
Y3kgcm91dGluZ0NvbnRleHRVSUQ6KE5TU3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQ7CiBAZW5k
CiAKIE5TX0FTU1VNRV9OT05OVUxMX0VORApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKaW5kZXggOTYwN2E1N2NjOWM0ODk5YTIy
MTE4Y2RiYjE5MWFjYWEwN2MyZDJjOS4uZjY3MTQ5MGFlYmJhZTk2YTgyMDk4MDkyOGRlZjA0ZmY5
ZDdhNWIyMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9G
dWxsc2NyZWVuTW9kZWwuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5Nb2RlbC5oCkBAIC0yOCwxMCArMjgsMTIgQEAKIAogI2lmIFBMQVRGT1JNKElP
U19GQU1JTFkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05f
TU9ERSkpCiAKKyNpbmNsdWRlICJBdWRpb1Nlc3Npb24uaCIKICNpbmNsdWRlICJGbG9hdFJlY3Qu
aCIKICNpbmNsdWRlICJIVE1MTWVkaWFFbGVtZW50RW51bXMuaCIKICNpbmNsdWRlICJNZWRpYVBs
YXllckVudW1zLmgiCiAjaW5jbHVkZSAiUGxheWJhY2tTZXNzaW9uTW9kZWwuaCIKKyNpbmNsdWRl
IDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBP
QkpDX0NMQVNTIEFWUGxheWVyVmlld0NvbnRyb2xsZXI7CkBAIC02Miw2ICs2NCw4IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgd2lsbEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkgPSAwOwogICAg
IHZpcnR1YWwgdm9pZCBkaWRFeGl0UGljdHVyZUluUGljdHVyZSgpID0gMDsKIAorICAgIHZpcnR1
YWwgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikgeyBjb21wbGV0aW9uSGFuZGxlcihSb3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQsIGVt
cHR5U3RyaW5nKCkpOyB9CisKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIHZpcnR1YWwg
VUlWaWV3Q29udHJvbGxlciAqcHJlc2VudGluZ1ZpZXdDb250cm9sbGVyKCkgeyByZXR1cm4gbnVs
bHB0cjsgfQogICAgIHZpcnR1YWwgVUlWaWV3Q29udHJvbGxlciAqY3JlYXRlVmlkZW9GdWxsc2Ny
ZWVuVmlld0NvbnRyb2xsZXIoQVZQbGF5ZXJWaWV3Q29udHJvbGxlciAqKSB7IHJldHVybiBudWxs
cHRyOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaAppbmRleCA5YzVjMjM4MjNjYTE1
NjY5NjE5ZmI3YTNkY2QxMGYwY2IxMWQ1ZWNjLi5iZmEyOWY2MmU5MTI3NWI2NWI2Njc0Y2Q2N2Mz
ZjRjMGNkMGRkZjY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9W
aWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgKQEAgLTcyLDYg
KzcyLDcgQEAgcHVibGljOgogICAgIEZsb2F0U2l6ZSB2aWRlb0RpbWVuc2lvbnMoKSBjb25zdCBv
dmVycmlkZSB7IHJldHVybiBtX3ZpZGVvRGltZW5zaW9uczsgfQogICAgIGJvb2wgaGFzVmlkZW8o
KSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX2hhc1ZpZGVvOyB9CiAKKyAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoUm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmKSBvdmVycmlkZTsK
IAogcHJvdGVjdGVkOgogICAgIFdFQkNPUkVfRVhQT1JUIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlk
ZW9FbGVtZW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9W
aWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCmluZGV4IGM1MTc0
YzhiODQ4YWZiMDhlZTEzYmI1YzY1ZTAxOTQzMWM5MjM1ZWUuLjkzNmJkOTVjZDAzYjgwN2E1ZDg0
YjRhNGE4ZDZiODJkYjBkMmE3MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1t
CkBAIC0xODcsNiArMTg3LDEyIEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1l
bnQ6OmZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZChIVE1MTWVkaWFFbGVtZW50RW51CiAgICAgICAgIG1f
dmlkZW9FbGVtZW50LT5mdWxsc2NyZWVuTW9kZUNoYW5nZWQodmlkZW9GdWxsc2NyZWVuTW9kZSk7
CiB9CiAKK3ZvaWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OnJlcXVlc3RSb3V0
ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUm91dGVT
aGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8m
IHNlc3Npb24gPSBBdWRpb1Nlc3Npb246OnNoYXJlZFNlc3Npb24oKTsKKyAgICBjb21wbGV0aW9u
SGFuZGxlcihzZXNzaW9uLnJvdXRlU2hhcmluZ1BvbGljeSgpLCBzZXNzaW9uLnJvdXRpbmdDb250
ZXh0VUlEKCkpOworfQorCiB2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Ojph
ZGRDbGllbnQoVmlkZW9GdWxsc2NyZWVuTW9kZWxDbGllbnQmIGNsaWVudCkKIHsKICAgICBBU1NF
UlQoIW1fY2xpZW50cy5jb250YWlucygmY2xpZW50KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZh
dGVBVkZPYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbQppbmRleCA4YzNlNTk1Y2ViMGI4
OGZkNjY4M2E2YTY0ZmEwZTljNmFjMzdhMzA2Li5lMDg0YzkwZDVmZDc3ZTY2ZWJkMmFlODRlMzE2
N2RmZDllOTM3M2NjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291
cmNlUHJpdmF0ZUFWRk9iakMubW0KQEAgLTczLDcgKzczLDkgQEAgTWVkaWFTb3VyY2VQcml2YXRl
OjpBZGRTdGF0dXMgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6YWRkU291cmNlQnVmZmVyKGNv
bnN0IEMKICAgICAgICAgcmV0dXJuIE5vdFN1cHBvcnRlZDsKIAogICAgIGF1dG8gbmV3U291cmNl
QnVmZmVyID0gU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmNyZWF0ZSh0aGlzKTsKKyNpZiBF
TkFCTEUoRU5DUllQVEVEX01FRElBKQogICAgIG5ld1NvdXJjZUJ1ZmZlci0+c2V0Q0RNSW5zdGFu
Y2UobV9jZG1JbnN0YW5jZS5nZXQoKSk7CisjZW5kaWYKICAgICBvdXRQcml2YXRlID0gbmV3U291
cmNlQnVmZmVyOwogICAgIG1fc291cmNlQnVmZmVycy5hcHBlbmQoV1RGTW92ZShuZXdTb3VyY2VC
dWZmZXIpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVv
RnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaAppbmRleCA1YjAzMDhjYTM2MWVjMWYyZjEz
MjRjMmI3YWUyZDM5ZTQ5NjNmZmU2Li40NzdlZTRlMGNhMjk3OTEzNWVkNWZlM2MxNTk1MGExYTA2
MmM1OTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxs
c2NyZWVuSW50ZXJmYWNlQVZLaXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaApAQCAtNTcsNyArNTcsNyBAQCBjbGFzcyBJ
bnRSZWN0OwogY2xhc3MgRmxvYXRTaXplOwogY2xhc3MgVmlkZW9GdWxsc2NyZWVuTW9kZWw7CiBj
bGFzcyBWaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlcjsKLSAgICAKKwogY2xhc3MgVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQgZmluYWwKICAgICA6IHB1YmxpYyBWaWRlb0Z1bGxzY3Jl
ZW5Nb2RlbENsaWVudAogICAgICwgcHVibGljIFBsYXliYWNrU2Vzc2lvbk1vZGVsQ2xpZW50CkBA
IC0xODQsNiArMTg0LDggQEAgcHJvdGVjdGVkOgogICAgIFdURjo6RnVuY3Rpb248dm9pZChib29s
KT4gbV9wcmVwYXJlVG9JbmxpbmVDYWxsYmFjazsKICAgICBSdW5Mb29wOjpUaW1lcjxWaWRlb0Z1
bGxzY3JlZW5JbnRlcmZhY2VBVktpdD4gbV93YXRjaGRvZ1RpbWVyOwogICAgIEZsb2F0UmVjdCBt
X2lubGluZVJlY3Q7CisgICAgUm91dGVTaGFyaW5nUG9saWN5IG1fcm91dGVTaGFyaW5nUG9saWN5
IHsgUm91dGVTaGFyaW5nUG9saWN5OjpEZWZhdWx0IH07CisgICAgU3RyaW5nIG1fcm91dGluZ0Nv
bnRleHRVSUQ7CiAgICAgYm9vbCBtX2FsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFjayB7IGZh
bHNlIH07CiAgICAgYm9vbCBtX3dpcmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkIHsgdHJ1ZSB9
OwogICAgIGJvb2wgbV9zaG91bGRSZXR1cm5Ub0Z1bGxzY3JlZW5XaGVuU3RvcHBpbmdQaVAgeyBm
YWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVs
bHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1Zp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCmluZGV4IGJhMTI3ZGFiZDE5YjZhODZmM2E2
MWFmNzM0NTllZDM4OWM2ZjhmNDMuLjkwOTU5MGRmNjMxZDIxZjRhMGQ0ZjIyMzAzNzJiOWYyYTZm
YTlkZDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxz
Y3JlZW5JbnRlcmZhY2VBVktpdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KQEAgLTU0MSw2ICs1NDEsNyBAQCAtICh2
b2lkKXN0YXJ0UGljdHVyZUluUGljdHVyZTsKIC0gKHZvaWQpc3RvcFBpY3R1cmVJblBpY3R1cmU7
CiAKIC0gKEJPT0wpcGxheWVyVmlld0NvbnRyb2xsZXJTaG91bGRIYW5kbGVEb25lQnV0dG9uVGFw
OihBVlBsYXllclZpZXdDb250cm9sbGVyICopcGxheWVyVmlld0NvbnRyb2xsZXI7CistICh2b2lk
KXNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hh
cmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJ
RDsKIEBlbmQKIE5TX0FTU1VNRV9OT05OVUxMX0VORAogCkBAIC01NzQsNiArNTc1LDE2IEBAIC0g
KEJPT0wpcGxheWVyVmlld0NvbnRyb2xsZXJTaG91bGRIYW5kbGVEb25lQnV0dG9uVGFwOihBVlBs
YXllclZpZXdDb250cm9sbGVyICopCiAgICAgcmV0dXJuIFlFUzsKIH0KIAorLSAodm9pZClzZXRX
ZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQ
b2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5TU3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQKK3sK
KyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMg
aWdub3JlZCAiLVd1bmtub3duLXByYWdtYXMiCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdu
b3JlZCAiLVd1bmd1YXJkZWQtYXZhaWxhYmlsaXR5LW5ldyIKKyAgICBpZiAoW19hdlBsYXllclZp
ZXdDb250cm9sbGVyIHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0V2ViS2l0T3ZlcnJp
ZGVSb3V0ZVNoYXJpbmdQb2xpY3k6cm91dGluZ0NvbnRleHRVSUQ6KV0pCisgICAgICAgIFtfYXZQ
bGF5ZXJWaWV3Q29udHJvbGxlciBzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpy
b3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6cm91dGluZ0NvbnRleHRVSURdOwor
I3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHBvcAorfQorCiAtICh2b2lkKWVudGVyRnVsbFNjcmVl
bkFuaW1hdGVkOihCT09MKWFuaW1hdGVkIGNvbXBsZXRpb25IYW5kbGVyOih2b2lkICheKShCT09M
IHN1Y2Nlc3MsIE5TRXJyb3IgKiBfX251bGxhYmxlIGVycm9yKSljb21wbGV0aW9uSGFuZGxlcgog
ewogI2lmIFBMQVRGT1JNKFdBVENIT1MpCkBAIC03NTgsOCArNzY5LDE2IEBAIHZvaWQgVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OnNldFZpZGVvRnVsbHNjcmVlbk1vZGVsKFZpZGVvRnVs
bHNjcmVlbk1vZGVsCiAKICAgICBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsID0gbW9kZWw7CiAKLSAg
ICBpZiAobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCkKKyAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5N
b2RlbCkgewogICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5hZGRDbGllbnQoKnRoaXMp
OworICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5yZXF1ZXN0Um91dGVTaGFyaW5nUG9s
aWN5QW5kQ29udGV4dFVJRChbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWZQdHIodGhpcyld
IChSb3V0ZVNoYXJpbmdQb2xpY3kgcG9saWN5LCBTdHJpbmcgY29udGV4dFVJRCkgeworICAgICAg
ICAgICAgbV9yb3V0ZVNoYXJpbmdQb2xpY3kgPSBwb2xpY3k7CisgICAgICAgICAgICBtX3JvdXRp
bmdDb250ZXh0VUlEID0gY29udGV4dFVJRDsKKworICAgICAgICAgICAgaWYgKG1fcGxheWVyVmll
d0NvbnRyb2xsZXIgJiYgIW1fcm91dGluZ0NvbnRleHRVSUQuaXNFbXB0eSgpKQorICAgICAgICAg
ICAgICAgIFttX3BsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFy
aW5nUG9saWN5OihOU1VJbnRlZ2VyKW1fcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0
VUlEOm1fcm91dGluZ0NvbnRleHRVSURdOworICAgICAgICB9KTsKKyAgICB9CiAKICAgICBoYXNW
aWRlb0NoYW5nZWQobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCA/IG1fdmlkZW9GdWxsc2NyZWVuTW9k
ZWwtPmhhc1ZpZGVvKCkgOiBmYWxzZSk7CiAgICAgdmlkZW9EaW1lbnNpb25zQ2hhbmdlZChtX3Zp
ZGVvRnVsbHNjcmVlbk1vZGVsID8gbV92aWRlb0Z1bGxzY3JlZW5Nb2RlbC0+dmlkZW9EaW1lbnNp
b25zKCkgOiBGbG9hdFNpemUoKSk7CkBAIC0xMjIwLDYgKzEyMzksOCBAQCB2b2lkIFZpZGVvRnVs
bHNjcmVlbkludGVyZmFjZUFWS2l0Ojpkb1NldHVwKCkKICAgICBbbV9wbGF5ZXJWaWV3Q29udHJv
bGxlciBzZXREZWxlZ2F0ZTptX3BsYXllclZpZXdDb250cm9sbGVyRGVsZWdhdGUuZ2V0KCldOwog
ICAgIFttX3BsYXllclZpZXdDb250cm9sbGVyIHNldEFsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5
YmFjazptX2FsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFja107CiAgICAgW3BsYXllckNvbnRy
b2xsZXIoKSBzZXRQaWN0dXJlSW5QaWN0dXJlUG9zc2libGU6bV9hbGxvd3NQaWN0dXJlSW5QaWN0
dXJlUGxheWJhY2tdOworICAgIGlmICghbV9yb3V0aW5nQ29udGV4dFVJRC5pc0VtcHR5KCkpCisg
ICAgICAgIFttX3BsYXllclZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFy
aW5nUG9saWN5OihOU1VJbnRlZ2VyKW1fcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0
VUlEOm1fcm91dGluZ0NvbnRleHRVSURdOwogCiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKICAgICBt
X3ZpZXdDb250cm9sbGVyID0gdmlkZW9GdWxsc2NyZWVuTW9kZWwoKS0+Y3JlYXRlVmlkZW9GdWxs
c2NyZWVuVmlld0NvbnRyb2xsZXIobV9wbGF5ZXJWaWV3Q29udHJvbGxlci5nZXQoKS5hdlBsYXll
clZpZXdDb250cm9sbGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBD
L01lc3NhZ2VTZW5kZXIuaCBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL01lc3NhZ2VTZW5k
ZXIuaAppbmRleCBmMjE2MjI5YjRkYjM3YzJlZThkNzA0MGJlNjMyY2QzNzY0ZjBlZGIzLi5kOGMz
MGUyM2JkNDA1YWU3N2Y2YTQ3MTE1MTRjMDQ0NDViMWYwMWM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1BsYXRmb3JtL0lQQy9NZXNzYWdlU2VuZGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9Q
bGF0Zm9ybS9JUEMvTWVzc2FnZVNlbmRlci5oCkBAIC02NSw2ICs2NSwxNCBAQCBwdWJsaWM6CiAg
ICAgICAgIHJldHVybiBtZXNzYWdlU2VuZGVyQ29ubmVjdGlvbigpLT5zZW5kU3luYyhXVEZNb3Zl
KG1lc3NhZ2UpLCBXVEZNb3ZlKHJlcGx5KSwgZGVzdGluYXRpb25JRCwgdGltZW91dCwgc2VuZFN5
bmNPcHRpb25zKTsKICAgICB9CiAKKyAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZS4u
LiBBcmdzPgorICAgIHZvaWQgc2VuZFdpdGhBc3luY1JlcGx5KFQmJiBtZXNzYWdlLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKEFyZ3MuLi4pPiYmIGFyZ3MsIHVpbnQ2NF90IGRlc3RpbmF0aW9uSUQg
PSAwKQorICAgIHsKKyAgICAgICAgQVNTRVJUKG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkpOwor
CisgICAgICAgIG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCktPnNlbmRXaXRoQXN5bmNSZXBseShX
VEZNb3ZlKG1lc3NhZ2UpLCBXVEZNb3ZlKGFyZ3MpLCBkZXN0aW5hdGlvbklEKTsKKyAgICB9CisK
ICAgICB2aXJ0dWFsIGJvb2wgc2VuZE1lc3NhZ2Uoc3RkOjp1bmlxdWVfcHRyPEVuY29kZXI+LCBP
cHRpb25TZXQ8U2VuZE9wdGlvbj4pOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weSBiL1NvdXJjZS9XZWJLaXQvU2NyaXB0cy93
ZWJraXQvbWVzc2FnZXMucHkKaW5kZXggNzVkYjFhNmFkNTIzYmIyOWVlZGUyNDAxZTI4NmM3MWI3
MzgyMDc1Zi4uYzIxY2U0MGY0NWNiNTI2M2QxZjQ3NTJmOTk5NzI1MDRkOWM2YWZhNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtpdC9tZXNzYWdlcy5weQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CkBAIC01NTksMTIgKzU1OSwxMyBA
QCBkZWYgZ2VuZXJhdGVfbWVzc2FnZV9oYW5kbGVyKGZpbGUpOgogCiAgICAgICAgICAgICBpZiBt
ZXNzYWdlLmhhc19hdHRyaWJ1dGUoQVNZTkNfQVRUUklCVVRFKToKICAgICAgICAgICAgICAgICBt
b3ZlX3BhcmFtZXRlcnMgPSBtZXNzYWdlLm5hbWUsICcsICcuam9pbihbbW92ZV90eXBlKHgudHlw
ZSkgZm9yIHggaW4gbWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzXSkKKyAgICAgICAgICAgICAgICBt
b3ZlX3ZhbHVlcyA9ICcsICcuam9pbihbJ1dURk1vdmUoKiVzKScgJSB4Lm5hbWUgZm9yIHggaW4g
bWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzXSkKICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5k
KCd2b2lkICVzOjpjYWxsUmVwbHkoSVBDOjpEZWNvZGVyJiBkZWNvZGVyLCBDb21wbGV0aW9uSGFu
ZGxlcjx2b2lkKCVzKT4mJiBjb21wbGV0aW9uSGFuZGxlcilcbntcbicgJSBtb3ZlX3BhcmFtZXRl
cnMpCiAgICAgICAgICAgICAgICAgZm9yIHggaW4gbWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzOgog
ICAgICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAgc3RkOjpvcHRpb25hbDwlcz4g
JXM7XG4nICUgKHgudHlwZSwgeC5uYW1lKSkKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFw
cGVuZCgnICAgIGRlY29kZXIgPj4gJXM7XG4nICUgeC5uYW1lKQogICAgICAgICAgICAgICAgICAg
ICByZXN1bHQuYXBwZW5kKCcgICAgaWYgKCElcykge1xuICAgICAgICBBU1NFUlRfTk9UX1JFQUNI
RUQoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbicgJSB4Lm5hbWUpCi0gICAgICAgICAgICAg
ICAgcmVzdWx0LmFwcGVuZCgnICAgIGNvbXBsZXRpb25IYW5kbGVyKFdURk1vdmUoKiVzKSk7XG59
XG5cbicgJSAoJywgKicuam9pbih4Lm5hbWUgZm9yIHggaW4gbWVzc2FnZS5yZXBseV9wYXJhbWV0
ZXJzKSkpCisgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICAgIGNvbXBsZXRpb25IYW5k
bGVyKCVzKTtcbn1cblxuJyAlIG1vdmVfdmFsdWVzKQogICAgICAgICAgICAgICAgIHJlc3VsdC5h
cHBlbmQoJ3ZvaWQgJXM6OmNhbmNlbFJlcGx5KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoJXMpPiYm
IGNvbXBsZXRpb25IYW5kbGVyKVxue1xuICAgIGNvbXBsZXRpb25IYW5kbGVyKCcgJSBtb3ZlX3Bh
cmFtZXRlcnMpCiAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnLCAnLmpvaW4oWyd7IH0n
IGZvciB4IGluIG1lc3NhZ2UucmVwbHlfcGFyYW1ldGVyc10pKQogICAgICAgICAgICAgICAgIHJl
c3VsdC5hcHBlbmQoJyk7XG59XG5cbicpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCmluZGV4IGZiMDBi
MTUzZjU2ZDY0YzRiZGY4YjE3ZDkyODUxMzdmZjlmODY2NDIuLmE5Mjk5ZjFiNzQ2OWIwM2FkMjM0
NjI0YmNkMGIzNTZiYzkyOGI2OTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oCkBAIC0yOCw2ICsy
OCw3IEBACiAjaWYgKFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExB
VEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogCiAjaW5jbHVk
ZSAiTWVzc2FnZVJlY2VpdmVyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9BdWRpb1Nlc3Npb24uaD4K
ICNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzTGF5ZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Bs
YXRmb3JtVmlldy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVmlkZW9GdWxsc2NyZWVuQ2hhbmdlT2Jz
ZXJ2ZXIuaD4KQEAgLTM2LDYgKzM3LDcgQEAKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgorI2luY2x1
ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICNp
bmNsdWRlIDxXZWJDb3JlL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmg+CkBAIC05Myw2
ICs5NSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBmYWlsZWRUb0VudGVyUGljdHVyZUluUGljdHVy
ZSgpIGZpbmFsOwogICAgIHZvaWQgd2lsbEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkgZmluYWw7CiAg
ICAgdm9pZCBkaWRFeGl0UGljdHVyZUluUGljdHVyZSgpIGZpbmFsOworICAgIHZvaWQgcmVxdWVz
dFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYpIGZpbmFsOwogCiAgICAgLy8g
VmlkZW9GdWxsc2NyZWVuQ2hhbmdlT2JzZXJ2ZXIKICAgICB2b2lkIHJlcXVlc3RVcGRhdGVJbmxp
bmVSZWN0KCkgZmluYWw7CkBAIC0xMjcsNiArMTMwLDggQEAgcHVibGljOgogICAgIHZvaWQgYXBw
bGljYXRpb25EaWRCZWNvbWVBY3RpdmUoKTsKICAgICBib29sIGlzVmlzaWJsZSgpIGNvbnN0Owog
CisgICAgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRf
dCBjb250ZXh0SWQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6Um91dGVTaGFyaW5n
UG9saWN5LCBTdHJpbmcpPiYmKTsKKwogI2lmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9E
RSkKICAgICBib29sIGlzUGxheWluZ1ZpZGVvSW5FbmhhbmNlZEZ1bGxzY3JlZW4oKSBjb25zdDsK
ICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tCmluZGV4IGFjZWViOWZhMGMxNzU4MDdjNGVk
NTVhMGJkYjZiYTNhNzFkMjgxODYuLjg3MDM3OThhMDZmYzdlMTI3YjcyYmE3Mzk3OWU5Njc3Y2Rk
YTlhMzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KQEAgLTI3NCw2ICsyNzQsMTQgQEAgdm9p
ZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbENvbnRleHQ6OmZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGlu
ZSgpCiAgICAgICAgIG1fbWFuYWdlci0+ZnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKG1fY29u
dGV4dElkKTsKIH0KIAordm9pZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbENvbnRleHQ6OnJlcXVlc3RS
b3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vi
Q29yZTo6Um91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQor
eworICAgIGlmIChtX21hbmFnZXIpCisgICAgICAgIG1fbWFuYWdlci0+cmVxdWVzdFJvdXRlU2hh
cmluZ1BvbGljeUFuZENvbnRleHRVSUQobV9jb250ZXh0SWQsIFdURk1vdmUoY29tcGxldGlvbkhh
bmRsZXIpKTsKKyAgICBlbHNlCisgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdlYkNvcmU6OlJv
dXRlU2hhcmluZ1BvbGljeTo6RGVmYXVsdCwgZW1wdHlTdHJpbmcoKSk7Cit9CisKIHZvaWQgVmlk
ZW9GdWxsc2NyZWVuTW9kZWxDb250ZXh0Ojp3aWxsRW50ZXJQaWN0dXJlSW5QaWN0dXJlKCkKIHsK
ICAgICBmb3IgKGF1dG8mIGNsaWVudCA6IG1fY2xpZW50cykKQEAgLTM5Myw2ICs0MDEsMTEgQEAg
dm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmFwcGxpY2F0aW9uRGlkQmVjb21lQWN0
aXZlKCkKICAgICAgICAgc3RkOjpnZXQ8MT4odHVwbGUpLT5hcHBsaWNhdGlvbkRpZEJlY29tZUFj
dGl2ZSgpOwogfQogCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6cmVxdWVzdFJv
dXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQodWludDY0X3QgY29udGV4dElkLCBDb21wbGV0
aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJiBj
YWxsYmFjaykKK3sKKyAgICBtX3BhZ2UtPnNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6Vmlk
ZW9GdWxsc2NyZWVuTWFuYWdlcjo6UmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRV
SUQoY29udGV4dElkKSwgV1RGTW92ZShjYWxsYmFjaykpOworfQorCiBWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyUHJveHk6Ok1vZGVsSW50ZXJmYWNlVHVwbGUgVmlkZW9GdWxsc2NyZWVuTWFuYWdlclBy
b3h5OjpjcmVhdGVNb2RlbEFuZEludGVyZmFjZSh1aW50NjRfdCBjb250ZXh0SWQpCiB7CiAgICAg
YXV0byYgcGxheWJhY2tTZXNzaW9uTW9kZWwgPSBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94
eS0+ZW5zdXJlTW9kZWwoY29udGV4dElkKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCmluZGV4IDJjZmIzNDVlYmE3
NWNjOWY1Y2EwY2U0ZTkwM2ZjYWEyNjcyNmI1YmUuLjFmZjExMjAxZTg3MTMxM2UxMjcyNGU5ZGUw
MGY0OGQzNGM3ZDFkN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaApAQCAtMjcsNyArMjcsOSBAQAogCiAjaWYg
KFBMQVRGT1JNKElPU19GQU1JTFkpICYmIEhBVkUoQVZLSVQpKSB8fCAoUExBVEZPUk0oTUFDKSAm
JiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpKQogCisjaW5jbHVkZSAiQ29ubmVjdGlv
bi5oIgogI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgorI2luY2x1ZGUgIlZpZGVvRnVsbHNj
cmVlbk1hbmFnZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUgPFdlYkNvcmUvRXZlbnRMaXN0ZW5lci5o
PgogI2luY2x1ZGUgPFdlYkNvcmUvSFRNTE1lZGlhRWxlbWVudEVudW1zLmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9QbGF0Zm9ybUNBTGF5ZXIuaD4KQEAgLTE1MSw3ICsxNTMsOCBAQCBwcm90ZWN0ZWQ6
CiAgICAgdm9pZCBzZXRWaWRlb0xheWVyR3Jhdml0eUVudW0odWludDY0X3QgY29udGV4dElkLCB1
bnNpZ25lZCBncmF2aXR5KTsKICAgICB2b2lkIGZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZCh1aW50NjRf
dCBjb250ZXh0SWQsIFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2Ny
ZWVuTW9kZSk7CiAgICAgdm9pZCBmdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUodWludDY0X3Qg
Y29udGV4dElkLCBib29sIGlzUGFnZVZpc2libGUpOwotICAgIAorICAgIHZvaWQgcmVxdWVzdFJv
dXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQodWludDY0X3QgY29udGV4dElkLCBNZXNzYWdl
czo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6UmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENv
bnRleHRVSUQ6OkFzeW5jUmVwbHkmJik7CisKICAgICBXZWJQYWdlKiBtX3BhZ2U7CiAgICAgUmVm
PFBsYXliYWNrU2Vzc2lvbk1hbmFnZXI+IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlcjsKICAgICBI
YXNoTWFwPFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1lbnQqLCB1aW50NjRfdD4gbV92aWRlb0VsZW1l
bnRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbgppbmRleCBmNTY5MDJjN2I5ZjBh
Yzc1Yzk3MWIzMDdjODBhZTY5OWEwNDkyNDEyLi43YzU2ZWQwNGFhODJmODFmN2M2NzhlYWM1ZDcx
ODhhZmI2NzcyMzYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbgpAQCAtMzUs
NSArMzUsNiBAQCBtZXNzYWdlcyAtPiBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyIHsKICAgICBTZXRW
aWRlb0xheWVyR3Jhdml0eUVudW0odWludDY0X3QgY29udGV4dElkLCB1bnNpZ25lZCBncmF2aXR5
KQogICAgIEZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZCh1aW50NjRfdCBjb250ZXh0SWQsIFdlYkNvcmU6
OkhUTUxNZWRpYUVsZW1lbnRFbnVtczo6VmlkZW9GdWxsc2NyZWVuTW9kZSB2aWRlb0Z1bGxzY3Jl
ZW5Nb2RlKQogICAgIEZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0
SWQsIGJvb2wgaXNQYWdlVmlzaWJsZSkKKyAgICBSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5k
Q29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQpIC0+IChlbnVtOnVpbnQ4X3QgV2ViQ29yZTo6
Um91dGVTaGFyaW5nUG9saWN5IHJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nIHJvdXRpbmdDb250
ZXh0VUlEKSBBc3luYwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbSBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCmluZGV4IGVmOWU4YTA4MjUw
ZGYzOTFjNTBhNWZmM2E5YTM5OTgxZTJhY2E0MmQuLjdmNjMzMDlmMzJhMGE4M2EzOGQwYzI4ODI1
ZTgxNzNiMDIyMWYxNmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2Nv
YS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tCkBAIC0zMCw3ICszMCw2IEBACiAjaW1w
b3J0ICJBdHRhY2htZW50LmgiCiAjaW1wb3J0ICJMb2dnaW5nLmgiCiAjaW1wb3J0ICJQbGF5YmFj
a1Nlc3Npb25NYW5hZ2VyLmgiCi0jaW1wb3J0ICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyTWVzc2Fn
ZXMuaCIKICNpbXBvcnQgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eU1lc3NhZ2VzLmgiCiAj
aW1wb3J0ICJXZWJDb3JlQXJndW1lbnRDb2RlcnMuaCIKICNpbXBvcnQgIldlYlBhZ2UuaCIKQEAg
LTU1OCw2ICs1NTcsMTEgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpmdWxsc2NyZWVu
TWF5UmV0dXJuVG9JbmxpbmUodWludDY0X3QgY29udGV4dElkLCBib28KICAgICAgICAgbW9kZWwu
dmlkZW9FbGVtZW50KCktPnNjcm9sbEludG9WaWV3SWZOb3RWaXNpYmxlKGZhbHNlKTsKICAgICBt
X3BhZ2UtPnNlbmQoTWVzc2FnZXM6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6UHJlcGFy
ZWRUb1JldHVyblRvSW5saW5lKGNvbnRleHRJZCwgdHJ1ZSwgaW5saW5lVmlkZW9GcmFtZSgqbW9k
ZWwudmlkZW9FbGVtZW50KCkpKSwgbV9wYWdlLT5wYWdlSUQoKSk7CiB9CisKK3ZvaWQgVmlkZW9G
dWxsc2NyZWVuTWFuYWdlcjo6cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQo
dWludDY0X3QgY29udGV4dElkLCBNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6UmVx
dWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQ6OkFzeW5jUmVwbHkmJiByZXBseSkK
K3sKKyAgICBlbnN1cmVNb2RlbChjb250ZXh0SWQpLnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lB
bmRDb250ZXh0VUlEKFdURk1vdmUocmVwbHkpKTsKK30KICAgICAKIHZvaWQgVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlcjo6c2V0VmlkZW9MYXllckZyYW1lRmVuY2VkKHVpbnQ2NF90IGNvbnRleHRJZCwg
V2ViQ29yZTo6RmxvYXRSZWN0IGJvdW5kcywgSVBDOjpBdHRhY2htZW50IGZlbmNlUG9ydCkKIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355644</attachid>
            <date>2018-11-26 09:46:18 -0800</date>
            <delta_ts>2018-11-26 13:41:09 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-190951-20181126094617.patch</filename>
            <type>text/plain</type>
            <size>21371</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MzQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWEyMzQ5N2NkYmNkYjg3
MTUyN2I4YTVhZWM1OWEwNzYxNjI1ODM2ZS4uMTU5NmU4OTNkMmNjZDUyMjA1Zjg5N2EyNTE1ZTgx
NzI0MjRjN2E0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5z
ZW4uCisKKyAgICAgICAgUmVxdWVzdCB0aGUgY29ycmVjdCByb3V0ZSBwb2xpY3kgYW5kIGNvbnRl
eHQgZnJvbSB0aGUgVmlkZW9GdWxsc2NyZWVuTW9kZWwuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9j
b2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxs
c2NyZWVuTW9kZWw6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5o
OgorICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVt
ZW50Lm1tOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1l
bnQ6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW06CisgICAgICAgICgt
W1dlYkFWUGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQ
b2xpY3k6cm91dGluZ0NvbnRleHRVSUQ6XSk6CisgICAgICAgIChWaWRlb0Z1bGxzY3JlZW5JbnRl
cmZhY2VBVktpdDo6c2V0VmlkZW9GdWxsc2NyZWVuTW9kZWwpOgorICAgICAgICAoVmlkZW9GdWxs
c2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmRvU2V0dXApOgorCiAyMDE4LTA5LTEyICBKZXIgTm9ibGUg
IDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJQU5UIGJ1aWxkIGRlc3Rp
bmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZBUklBTlQgYnVpbGRzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZwppbmRleCA3YzY1NWExY2JmMTIxMjRlODlmZGU4Y2NkOTY5MzFjMjNlZjE0
YmNmLi5iYzI2Y2JhMmY0NjdkMTRjYjAzODdjZTI2YjM4ZjZmNzAzZWMyMjY0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8amVyLm5v
YmxlQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCAtc2V0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQ
b2xpY3k6cm91dGluZ0NvbnRleHRVSUQ6IFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwOTUxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NTIx
MzA2NT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHBhbC9zcGkvY29jb2EvQVZLaXRTUEkuaDoKKwogMjAxOC0wOS0xMiAgSmVyIE5vYmxlICA8amVy
Lm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBTREtfVkFSSUFOVCBidWlsZCBkZXN0aW5hdGlv
bnMgc2hvdWxkIGJlIHNlcGFyYXRlIGZyb20gbm9uLVNES19WQVJJQU5UIGJ1aWxkcwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpp
bmRleCAxZWVhYzhiY2FmYTJjMmQ0OTVkZjI5MDEwNmUxNTIwYTk5YTc1MDkxLi5iNzQ0MmRiNjll
ZWU2NjM2NmNkMTdmYzhiYmNkOTVmYWZlMjUwNTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBA
CisyMDE4LTEwLTI2ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAg
IEFkb3B0IC1zZXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDog
U1BJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5
NTEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisKKyAgICAgICAgQWRkIGFuIGFzeW5jcm9ub3VzIHJlcGx5
IHJlcXVlc3QgdG8gVmlkZW9GdWxsc2NyZWVuTWFuYWdlci4KKworICAgICAgICBEcml2ZS1ieSBm
aXg6IG1lc3NhZ2VzLnB5IGdlbmVyYXRlcyAiV1RGTW92ZSgqYXJnMSwgKmFyZzIpIiBpbnN0ZWFk
IG9mICJXVEZNb3ZlKCphcmcxKSwgV1RGTW92ZSgqYXJnMikiCisgICAgICAgIGluIGl0cyByZXBs
eSBoYW5kbGVyIGdlbmVyYXRpb24uCisKKyAgICAgICAgKiBQbGF0Zm9ybS9JUEMvTWVzc2FnZVNl
bmRlci5oOgorICAgICAgICAoSVBDOjpNZXNzYWdlU2VuZGVyOjpzZW5kV2l0aEFzeW5jUmVwbHkp
OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5OgorICAgICAgICAqIFVJUHJv
Y2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaDoKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1tOgorICAgICAgICAoV2Vi
S2l0OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlbENvbnRleHQ6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xp
Y3lBbmRDb250ZXh0VUlEKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNj
cmVlbk1hbmFnZXIuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1hbmFnZXIubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLm1tOgorICAgICAgICAoV2ViS2l0OjpWaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisKIDIwMTgtMDkt
MTIgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgU0RLX1ZBUklB
TlQgYnVpbGQgZGVzdGluYXRpb25zIHNob3VsZCBiZSBzZXBhcmF0ZSBmcm9tIG5vbi1TREtfVkFS
SUFOVCBidWlsZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29h
L0FWS2l0U1BJLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5o
CmluZGV4IDUwZWI4MzVjMDA5NWU5NGIwZDhhN2QyY2E3YmJhYzRlZjk4YWNjODEuLjU1YjRiOTZk
ZjQ0MGMzOGVlMzY5ZjAxODBkZGQxMTU1MzVhNGNkMTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9zcGkvY29jb2EvQVZLaXRTUEkuaApAQCAtNzMsNiArNzMsNyBAQCBOU19BU1NVTUVfTk9O
TlVMTF9CRUdJTgogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBnZXR0ZXI9aXNQaWN0
dXJlSW5QaWN0dXJlQWN0aXZlKSBCT09MIHBpY3R1cmVJblBpY3R1cmVBY3RpdmU7CiBAcHJvcGVy
dHkgKG5vbmF0b21pYywgcmVhZG9ubHksIGdldHRlcj1pc1BpY3R1cmVJblBpY3R1cmVTdXNwZW5k
ZWQpIEJPT0wgcGljdHVyZUluUGljdHVyZVN1c3BlbmRlZDsKIEBwcm9wZXJ0eSAobm9uYXRvbWlj
LCByZWFkb25seSkgQk9PTCBwaWN0dXJlSW5QaWN0dXJlV2FzU3RhcnRlZFdoZW5FbnRlcmluZ0Jh
Y2tncm91bmQ7CistICh2b2lkKXNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihO
U1VJbnRlZ2VyKXJvdXRlU2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcg
Kilyb3V0aW5nQ29udGV4dFVJRDsKIEBlbmQKIAogQHByb3RvY29sIEFWUGxheWVyVmlld0NvbnRy
b2xsZXJEZWxlZ2F0ZV9XZWJLaXRPbmx5IDxBVlBsYXllclZpZXdDb250cm9sbGVyRGVsZWdhdGU+
CkBAIC0xNjMsNiArMTY0LDcgQEAgdHlwZWRlZiBOU19FTlVNKE5TSW50ZWdlciwgQVZQbGF5ZXJW
aWV3Q29udHJvbGxlckV4aXRGdWxsU2NyZWVuUmVhc29uKSB7CiBAcHJvcGVydHkgKG5vbmF0b21p
Yywgc3Ryb25nLCBudWxsYWJsZSkgQVZQbGF5ZXJDb250cm9sbGVyICpwbGF5ZXJDb250cm9sbGVy
OwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0
dXJlQWN0aXZlKSBCT09MIHBpY3R1cmVJblBpY3R1cmVBY3RpdmU7CiBAcHJvcGVydHkgKG5vbmF0
b21pYywgcmVhZG9ubHkpIEJPT0wgcGljdHVyZUluUGljdHVyZVdhc1N0YXJ0ZWRXaGVuRW50ZXJp
bmdCYWNrZ3JvdW5kOworLSAodm9pZClzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGlj
eTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5TU3Ry
aW5nICopcm91dGluZ0NvbnRleHRVSUQ7CiBAZW5kCiAKIE5TX0FTU1VNRV9OT05OVUxMX0VORApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVu
TW9kZWwuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1v
ZGVsLmgKaW5kZXggOTYwN2E1N2NjOWM0ODk5YTIyMTE4Y2RiYjE5MWFjYWEwN2MyZDJjOS4uZjY3
MTQ5MGFlYmJhZTk2YTgyMDk4MDkyOGRlZjA0ZmY5ZDdhNWIyMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oCkBAIC0yOCwx
MCArMjgsMTIgQEAKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpIHx8IChQTEFURk9STShNQUMp
ICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKKyNpbmNsdWRlICJBdWRpb1Nl
c3Npb24uaCIKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIKICNpbmNsdWRlICJIVE1MTWVkaWFFbGVt
ZW50RW51bXMuaCIKICNpbmNsdWRlICJNZWRpYVBsYXllckVudW1zLmgiCiAjaW5jbHVkZSAiUGxh
eWJhY2tTZXNzaW9uTW9kZWwuaCIKKyNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4K
IAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiBPQkpDX0NMQVNTIEFWUGxheWVyVmlld0NvbnRy
b2xsZXI7CkBAIC02Miw2ICs2NCw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgd2lsbEV4
aXRQaWN0dXJlSW5QaWN0dXJlKCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBkaWRFeGl0UGljdHVy
ZUluUGljdHVyZSgpID0gMDsKIAorICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5n
UG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFJvdXRlU2hhcmluZ1Bv
bGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFuZGxlcikgeyBjb21wbGV0aW9uSGFuZGxlcihS
b3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQsIGVtcHR5U3RyaW5nKCkpOyB9CisKICNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKQogICAgIHZpcnR1YWwgVUlWaWV3Q29udHJvbGxlciAqcHJlc2VudGlu
Z1ZpZXdDb250cm9sbGVyKCkgeyByZXR1cm4gbnVsbHB0cjsgfQogICAgIHZpcnR1YWwgVUlWaWV3
Q29udHJvbGxlciAqY3JlYXRlVmlkZW9GdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIoQVZQbGF5ZXJW
aWV3Q29udHJvbGxlciAqKSB7IHJldHVybiBudWxscHRyOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRl
b0VsZW1lbnQuaAppbmRleCA5YzVjMjM4MjNjYTE1NjY5NjE5ZmI3YTNkY2QxMGYwY2IxMWQ1ZWNj
Li5iZmEyOWY2MmU5MTI3NWI2NWI2Njc0Y2Q2N2MzZjRjMGNkMGRkZjY5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxl
bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1vZGVsVmlkZW9FbGVtZW50LmgKQEAgLTcyLDYgKzcyLDcgQEAgcHVibGljOgogICAgIEZsb2F0
U2l6ZSB2aWRlb0RpbWVuc2lvbnMoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBtX3ZpZGVvRGlt
ZW5zaW9uczsgfQogICAgIGJvb2wgaGFzVmlkZW8oKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBt
X2hhc1ZpZGVvOyB9CiAKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJp
bmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUm91dGVTaGFyaW5n
UG9saWN5LCBTdHJpbmcpPiYmKSBvdmVycmlkZTsKIAogcHJvdGVjdGVkOgogICAgIFdFQkNPUkVf
RVhQT1JUIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50KCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxl
bWVudC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1v
ZGVsVmlkZW9FbGVtZW50Lm1tCmluZGV4IGM1MTc0YzhiODQ4YWZiMDhlZTEzYmI1YzY1ZTAxOTQz
MWM5MjM1ZWUuLjkzNmJkOTVjZDAzYjgwN2E1ZDg0YjRhNGE4ZDZiODJkYjBkMmE3MGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVs
VmlkZW9FbGVtZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tCkBAIC0xODcsNiArMTg3LDEyIEBAIHZvaWQg
VmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQ6OmZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZChI
VE1MTWVkaWFFbGVtZW50RW51CiAgICAgICAgIG1fdmlkZW9FbGVtZW50LT5mdWxsc2NyZWVuTW9k
ZUNoYW5nZWQodmlkZW9GdWxsc2NyZWVuTW9kZSk7CiB9CiAKK3ZvaWQgVmlkZW9GdWxsc2NyZWVu
TW9kZWxWaWRlb0VsZW1lbnQ6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlE
KENvbXBsZXRpb25IYW5kbGVyPHZvaWQoUm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmIGNv
bXBsZXRpb25IYW5kbGVyKQoreworICAgIGF1dG8mIHNlc3Npb24gPSBBdWRpb1Nlc3Npb246OnNo
YXJlZFNlc3Npb24oKTsKKyAgICBjb21wbGV0aW9uSGFuZGxlcihzZXNzaW9uLnJvdXRlU2hhcmlu
Z1BvbGljeSgpLCBzZXNzaW9uLnJvdXRpbmdDb250ZXh0VUlEKCkpOworfQorCiB2b2lkIFZpZGVv
RnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50OjphZGRDbGllbnQoVmlkZW9GdWxsc2NyZWVuTW9k
ZWxDbGllbnQmIGNsaWVudCkKIHsKICAgICBBU1NFUlQoIW1fY2xpZW50cy5jb250YWlucygmY2xp
ZW50KSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxs
c2NyZWVuSW50ZXJmYWNlQVZLaXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCmluZGV4IDViMDMwOGNhMzYxZWMxZjJmMTMyNGMy
YjdhZTJkMzllNDk2M2ZmZTYuLjQ3N2VlNGUwY2EyOTc5MTM1ZWQ1ZmUzYzE1OTUwYTFhMDYyYzU5
MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3Jl
ZW5JbnRlcmZhY2VBVktpdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCkBAIC01Nyw3ICs1Nyw3IEBAIGNsYXNzIEludFJl
Y3Q7CiBjbGFzcyBGbG9hdFNpemU7CiBjbGFzcyBWaWRlb0Z1bGxzY3JlZW5Nb2RlbDsKIGNsYXNz
IFZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyOwotICAgIAorCiBjbGFzcyBWaWRlb0Z1bGxz
Y3JlZW5JbnRlcmZhY2VBVktpdCBmaW5hbAogICAgIDogcHVibGljIFZpZGVvRnVsbHNjcmVlbk1v
ZGVsQ2xpZW50CiAgICAgLCBwdWJsaWMgUGxheWJhY2tTZXNzaW9uTW9kZWxDbGllbnQKQEAgLTE4
NCw2ICsxODQsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgV1RGOjpGdW5jdGlvbjx2b2lkKGJvb2wpPiBt
X3ByZXBhcmVUb0lubGluZUNhbGxiYWNrOwogICAgIFJ1bkxvb3A6OlRpbWVyPFZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0PiBtX3dhdGNoZG9nVGltZXI7CiAgICAgRmxvYXRSZWN0IG1faW5s
aW5lUmVjdDsKKyAgICBSb3V0ZVNoYXJpbmdQb2xpY3kgbV9yb3V0ZVNoYXJpbmdQb2xpY3kgeyBS
b3V0ZVNoYXJpbmdQb2xpY3k6OkRlZmF1bHQgfTsKKyAgICBTdHJpbmcgbV9yb3V0aW5nQ29udGV4
dFVJRDsKICAgICBib29sIG1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNrIHsgZmFsc2Ug
fTsKICAgICBib29sIG1fd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWQgeyB0cnVlIH07CiAg
ICAgYm9vbCBtX3Nob3VsZFJldHVyblRvRnVsbHNjcmVlbldoZW5TdG9wcGluZ1BpUCB7IGZhbHNl
IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2Ny
ZWVuSW50ZXJmYWNlQVZLaXQubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KaW5kZXggYzA5ZTA3MzY1M2M3MGE0MTZjZTk0YzQ2
NWIyMTcyZTMzMjdlYTk5ZS4uMWIzYjQzYWM5YTE1ZTk5MWZiNzZmMThjNmY1NDhkYTNjZWU2MTQy
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZUFWS2l0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQpAQCAtNTQ3LDYgKzU0Nyw3IEBAIC0gKHZvaWQp
c3RhcnRQaWN0dXJlSW5QaWN0dXJlOwogLSAodm9pZClzdG9wUGljdHVyZUluUGljdHVyZTsKIAog
LSAoQk9PTClwbGF5ZXJWaWV3Q29udHJvbGxlclNob3VsZEhhbmRsZURvbmVCdXR0b25UYXA6KEFW
UGxheWVyVmlld0NvbnRyb2xsZXIgKilwbGF5ZXJWaWV3Q29udHJvbGxlcjsKKy0gKHZvaWQpc2V0
V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpcm91dGVTaGFyaW5n
UG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOihOU1N0cmluZyAqKXJvdXRpbmdDb250ZXh0VUlEOwog
QGVuZAogTlNfQVNTVU1FX05PTk5VTExfRU5ECiAKQEAgLTU4MCw2ICs1ODEsMTYgQEAgLSAoQk9P
TClwbGF5ZXJWaWV3Q29udHJvbGxlclNob3VsZEhhbmRsZURvbmVCdXR0b25UYXA6KEFWUGxheWVy
Vmlld0NvbnRyb2xsZXIgKikKICAgICByZXR1cm4gWUVTOwogfQogCistICh2b2lkKXNldFdlYktp
dE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hhcmluZ1BvbGlj
eSByb3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJRAoreworI3By
YWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBpZ25v
cmVkICItV3Vua25vd24tcHJhZ21hcyIKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBpZ25vcmVk
ICItV3VuZ3VhcmRlZC1hdmFpbGFiaWxpdHktbmV3IgorICAgIGlmIChbX2F2UGxheWVyVmlld0Nv
bnRyb2xsZXIgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxlY3RvcihzZXRXZWJLaXRPdmVycmlkZVJv
dXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDopXSkKKyAgICAgICAgW19hdlBsYXll
clZpZXdDb250cm9sbGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OnJvdXRl
U2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDpyb3V0aW5nQ29udGV4dFVJRF07CisjcHJh
Z21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCit9CisKIC0gKHZvaWQpZW50ZXJGdWxsU2NyZWVuQW5p
bWF0ZWQ6KEJPT0wpYW5pbWF0ZWQgY29tcGxldGlvbkhhbmRsZXI6KHZvaWQgKF4pKEJPT0wgc3Vj
Y2VzcywgTlNFcnJvciAqIF9fbnVsbGFibGUgZXJyb3IpKWNvbXBsZXRpb25IYW5kbGVyCiB7CiAj
aWYgUExBVEZPUk0oV0FUQ0hPUykKQEAgLTc2NCw4ICs3NzUsMTYgQEAgdm9pZCBWaWRlb0Z1bGxz
Y3JlZW5JbnRlcmZhY2VBVktpdDo6c2V0VmlkZW9GdWxsc2NyZWVuTW9kZWwoVmlkZW9GdWxsc2Ny
ZWVuTW9kZWwKIAogICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwgPSBtb2RlbDsKIAotICAgIGlm
IChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsKQorICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVs
KSB7CiAgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPmFkZENsaWVudCgqdGhpcyk7Cisg
ICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lB
bmRDb250ZXh0VUlEKFt0aGlzLCBwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZlB0cih0aGlzKV0gKFJv
dXRlU2hhcmluZ1BvbGljeSBwb2xpY3ksIFN0cmluZyBjb250ZXh0VUlEKSB7CisgICAgICAgICAg
ICBtX3JvdXRlU2hhcmluZ1BvbGljeSA9IHBvbGljeTsKKyAgICAgICAgICAgIG1fcm91dGluZ0Nv
bnRleHRVSUQgPSBjb250ZXh0VUlEOworCisgICAgICAgICAgICBpZiAobV9wbGF5ZXJWaWV3Q29u
dHJvbGxlciAmJiAhbV9yb3V0aW5nQ29udGV4dFVJRC5pc0VtcHR5KCkpCisgICAgICAgICAgICAg
ICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQ
b2xpY3k6KE5TVUludGVnZXIpbV9yb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6
bV9yb3V0aW5nQ29udGV4dFVJRF07CisgICAgICAgIH0pOworICAgIH0KIAogICAgIGhhc1ZpZGVv
Q2hhbmdlZChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsID8gbV92aWRlb0Z1bGxzY3JlZW5Nb2RlbC0+
aGFzVmlkZW8oKSA6IGZhbHNlKTsKICAgICB2aWRlb0RpbWVuc2lvbnNDaGFuZ2VkKG1fdmlkZW9G
dWxsc2NyZWVuTW9kZWwgPyBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT52aWRlb0RpbWVuc2lvbnMo
KSA6IEZsb2F0U2l6ZSgpKTsKQEAgLTEyMjYsNiArMTI0NSw4IEBAIHZvaWQgVmlkZW9GdWxsc2Ny
ZWVuSW50ZXJmYWNlQVZLaXQ6OmRvU2V0dXAoKQogICAgIFttX3BsYXllclZpZXdDb250cm9sbGVy
IHNldERlbGVnYXRlOm1fcGxheWVyVmlld0NvbnRyb2xsZXJEZWxlZ2F0ZS5nZXQoKV07CiAgICAg
W21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0QWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNr
Om1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNrXTsKICAgICBbcGxheWVyQ29udHJvbGxl
cigpIHNldFBpY3R1cmVJblBpY3R1cmVQb3NzaWJsZTptX2FsbG93c1BpY3R1cmVJblBpY3R1cmVQ
bGF5YmFja107CisgICAgaWYgKCFtX3JvdXRpbmdDb250ZXh0VUlELmlzRW1wdHkoKSkKKyAgICAg
ICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQ
b2xpY3k6KE5TVUludGVnZXIpbV9yb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6
bV9yb3V0aW5nQ29udGV4dFVJRF07CiAKICNpZiBQTEFURk9STShXQVRDSE9TKQogICAgIG1fdmll
d0NvbnRyb2xsZXIgPSB2aWRlb0Z1bGxzY3JlZW5Nb2RlbCgpLT5jcmVhdGVWaWRlb0Z1bGxzY3Jl
ZW5WaWV3Q29udHJvbGxlcihtX3BsYXllclZpZXdDb250cm9sbGVyLmdldCgpLmF2UGxheWVyVmll
d0NvbnRyb2xsZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvTWVz
c2FnZVNlbmRlci5oIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvTWVzc2FnZVNlbmRlci5o
CmluZGV4IGYyMTYyMjliNGRiMzdjMmVlOGQ3MDQwYmU2MzJjZDM3NjRmMGVkYjMuLmQ4YzMwZTIz
YmQ0MDVhZTc3ZjZhNDcxMTUxNGMwNDQ0NWIxZjAxYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvUGxhdGZvcm0vSVBDL01lc3NhZ2VTZW5kZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRm
b3JtL0lQQy9NZXNzYWdlU2VuZGVyLmgKQEAgLTY1LDYgKzY1LDE0IEBAIHB1YmxpYzoKICAgICAg
ICAgcmV0dXJuIG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCktPnNlbmRTeW5jKFdURk1vdmUobWVz
c2FnZSksIFdURk1vdmUocmVwbHkpLCBkZXN0aW5hdGlvbklELCB0aW1lb3V0LCBzZW5kU3luY09w
dGlvbnMpOwogICAgIH0KIAorICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lLi4uIEFy
Z3M+CisgICAgdm9pZCBzZW5kV2l0aEFzeW5jUmVwbHkoVCYmIG1lc3NhZ2UsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoQXJncy4uLik+JiYgYXJncywgdWludDY0X3QgZGVzdGluYXRpb25JRCA9IDAp
CisgICAgeworICAgICAgICBBU1NFUlQobWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKSk7CisKKyAg
ICAgICAgbWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKS0+c2VuZFdpdGhBc3luY1JlcGx5KFdURk1v
dmUobWVzc2FnZSksIFdURk1vdmUoYXJncyksIGRlc3RpbmF0aW9uSUQpOworICAgIH0KKwogICAg
IHZpcnR1YWwgYm9vbCBzZW5kTWVzc2FnZShzdGQ6OnVuaXF1ZV9wdHI8RW5jb2Rlcj4sIE9wdGlv
blNldDxTZW5kT3B0aW9uPik7CiAKIHByaXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5IGIvU291cmNlL1dlYktpdC9TY3JpcHRzL3dlYmtp
dC9tZXNzYWdlcy5weQppbmRleCBiMzMyMjY1ZTNhMjRjN2IzN2U5N2UzNjQyYTg3OTUxMTU0OGY0
NDM5Li4zMDU2NTZiNzZhNzAzNTEwODNmYWJlMjRlYWZmZjEzZTJlOTFmMzYzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1NjcmlwdHMvd2Via2l0L21lc3NhZ2VzLnB5CisrKyBiL1NvdXJjZS9X
ZWJLaXQvU2NyaXB0cy93ZWJraXQvbWVzc2FnZXMucHkKQEAgLTU2MSwxMiArNTYxLDEzIEBAIGRl
ZiBnZW5lcmF0ZV9tZXNzYWdlX2hhbmRsZXIoZmlsZSk6CiAKICAgICAgICAgICAgIGlmIG1lc3Nh
Z2UuaGFzX2F0dHJpYnV0ZShBU1lOQ19BVFRSSUJVVEUpOgogICAgICAgICAgICAgICAgIG1vdmVf
cGFyYW1ldGVycyA9IG1lc3NhZ2UubmFtZSwgJywgJy5qb2luKFttb3ZlX3R5cGUoeC50eXBlKSBm
b3IgeCBpbiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnNdKQorICAgICAgICAgICAgICAgIG1vdmVf
dmFsdWVzID0gJywgJy5qb2luKFsnV1RGTW92ZSgqJXMpJyAlIHgubmFtZSBmb3IgeCBpbiBtZXNz
YWdlLnJlcGx5X3BhcmFtZXRlcnNdKQogICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJ3Zv
aWQgJXM6OmNhbGxSZXBseShJUEM6OkRlY29kZXImIGRlY29kZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoJXMpPiYmIGNvbXBsZXRpb25IYW5kbGVyKVxue1xuJyAlIG1vdmVfcGFyYW1ldGVycykK
ICAgICAgICAgICAgICAgICBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnM6CiAgICAg
ICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoJyAgICBzdGQ6Om9wdGlvbmFsPCVzPiAlcztc
bicgJSAoeC50eXBlLCB4Lm5hbWUpKQogICAgICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5k
KCcgICAgZGVjb2RlciA+PiAlcztcbicgJSB4Lm5hbWUpCiAgICAgICAgICAgICAgICAgICAgIHJl
c3VsdC5hcHBlbmQoJyAgICBpZiAoISVzKSB7XG4gICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
O1xuICAgICAgICByZXR1cm47XG4gICAgfVxuJyAlIHgubmFtZSkKLSAgICAgICAgICAgICAgICBy
ZXN1bHQuYXBwZW5kKCcgICAgY29tcGxldGlvbkhhbmRsZXIoV1RGTW92ZSgqJXMpKTtcbn1cblxu
JyAlICgnLCAqJy5qb2luKHgubmFtZSBmb3IgeCBpbiBtZXNzYWdlLnJlcGx5X3BhcmFtZXRlcnMp
KSkKKyAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcgICAgY29tcGxldGlvbkhhbmRsZXIo
JXMpO1xufVxuXG4nICUgbW92ZV92YWx1ZXMpCiAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVu
ZCgndm9pZCAlczo6Y2FuY2VsUmVwbHkoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCglcyk+JiYgY29t
cGxldGlvbkhhbmRsZXIpXG57XG4gICAgY29tcGxldGlvbkhhbmRsZXIoJyAlIG1vdmVfcGFyYW1l
dGVycykKICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKCcsICcuam9pbihbJ3sgfScgZm9y
IHggaW4gbWVzc2FnZS5yZXBseV9wYXJhbWV0ZXJzXSkpCiAgICAgICAgICAgICAgICAgcmVzdWx0
LmFwcGVuZCgnKTtcbn1cblxuJykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKaW5kZXggZmIwMGIxNTNm
NTZkNjRjNGJkZjhiMTdkOTI4NTEzN2ZmOWY4NjY0Mi4uYTkyOTlmMWI3NDY5YjAzYWQyMzQ2MjRi
Y2QwYjM1NmJjOTI4YjY5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKQEAgLTI4LDYgKzI4LDcg
QEAKICNpZiAoUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9S
TShNQUMpICYmIEVOQUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKICNpbmNsdWRlICJN
ZXNzYWdlUmVjZWl2ZXIuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0F1ZGlvU2Vzc2lvbi5oPgogI2lu
Y2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NMYXllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZv
cm1WaWV3Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9WaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZl
ci5oPgpAQCAtMzYsNiArMzcsNyBAQAogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisjaW5jbHVkZSA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2luY2x1
ZGUgPFdlYkNvcmUvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaD4KQEAgLTkzLDYgKzk1
LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIGZhaWxlZFRvRW50ZXJQaWN0dXJlSW5QaWN0dXJlKCkg
ZmluYWw7CiAgICAgdm9pZCB3aWxsRXhpdFBpY3R1cmVJblBpY3R1cmUoKSBmaW5hbDsKICAgICB2
b2lkIGRpZEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0Um91
dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNv
cmU6OlJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJikgZmluYWw7CiAKICAgICAvLyBWaWRl
b0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlcgogICAgIHZvaWQgcmVxdWVzdFVwZGF0ZUlubGluZVJl
Y3QoKSBmaW5hbDsKQEAgLTEyNyw2ICsxMzAsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBhcHBsaWNh
dGlvbkRpZEJlY29tZUFjdGl2ZSgpOwogICAgIGJvb2wgaXNWaXNpYmxlKCkgY29uc3Q7CiAKKyAg
ICB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKHVpbnQ2NF90IGNv
bnRleHRJZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xp
Y3ksIFN0cmluZyk+JiYpOworCiAjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQog
ICAgIGJvb2wgaXNQbGF5aW5nVmlkZW9JbkVuaGFuY2VkRnVsbHNjcmVlbigpIGNvbnN0OwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyUHJveHkubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0KaW5kZXggYWNlZWI5ZmEwYzE3NTgwN2M0ZWQ1NWEw
YmRiNmJhM2E3MWQyODE4Ni4uODcwMzc5OGEwNmZjN2UxMjdiNzJiYTczOTc5ZTk2NzdjZGRhOWEz
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1Zp
ZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbQpAQCAtMjc0LDYgKzI3NCwxNCBAQCB2b2lkIFZp
ZGVvRnVsbHNjcmVlbk1vZGVsQ29udGV4dDo6ZnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKCkK
ICAgICAgICAgbV9tYW5hZ2VyLT5mdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUobV9jb250ZXh0
SWQpOwogfQogCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsQ29udGV4dDo6cmVxdWVzdFJvdXRl
U2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3Jl
OjpSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7Cisg
ICAgaWYgKG1fbWFuYWdlcikKKyAgICAgICAgbV9tYW5hZ2VyLT5yZXF1ZXN0Um91dGVTaGFyaW5n
UG9saWN5QW5kQ29udGV4dFVJRChtX2NvbnRleHRJZCwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxl
cikpOworICAgIGVsc2UKKyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6Um91dGVT
aGFyaW5nUG9saWN5OjpEZWZhdWx0LCBlbXB0eVN0cmluZygpKTsKK30KKwogdm9pZCBWaWRlb0Z1
bGxzY3JlZW5Nb2RlbENvbnRleHQ6OndpbGxFbnRlclBpY3R1cmVJblBpY3R1cmUoKQogewogICAg
IGZvciAoYXV0byYgY2xpZW50IDogbV9jbGllbnRzKQpAQCAtMzkzLDYgKzQwMSwxMSBAQCB2b2lk
IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6YXBwbGljYXRpb25EaWRCZWNvbWVBY3RpdmUo
KQogICAgICAgICBzdGQ6OmdldDwxPih0dXBsZSktPmFwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZl
KCk7CiB9CiAKK3ZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpyZXF1ZXN0Um91dGVT
aGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoV2ViQ29yZTo6Um91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmIGNhbGxi
YWNrKQoreworICAgIG1fcGFnZS0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpWaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChj
b250ZXh0SWQpLCBXVEZNb3ZlKGNhbGxiYWNrKSk7Cit9CisKIFZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXJQcm94eTo6TW9kZWxJbnRlcmZhY2VUdXBsZSBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6
OmNyZWF0ZU1vZGVsQW5kSW50ZXJmYWNlKHVpbnQ2NF90IGNvbnRleHRJZCkKIHsKICAgICBhdXRv
JiBwbGF5YmFja1Nlc3Npb25Nb2RlbCA9IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LT5l
bnN1cmVNb2RlbChjb250ZXh0SWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmgKaW5kZXggMmNmYjM0NWViYTc1Y2M5
ZjVjYTBjZTRlOTAzZmNhYTI2NzI2YjViZS4uMWZmMTEyMDFlODcxMzEzZTEyNzI0ZTlkZTAwZjQ4
ZDM0YzdkMWQ3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1Zp
ZGVvRnVsbHNjcmVlbk1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29j
b2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oCkBAIC0yNyw3ICsyNyw5IEBACiAKICNpZiAoUExB
VEZPUk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVO
QUJMRShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKKyNpbmNsdWRlICJDb25uZWN0aW9uLmgi
CiAjaW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyLmgiCisjaW5jbHVkZSAiVmlkZW9GdWxsc2NyZWVu
TWFuYWdlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9FdmVudExpc3RlbmVyLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9IVE1MTWVkaWFFbGVtZW50RW51bXMuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL1BsYXRmb3JtQ0FMYXllci5oPgpAQCAtMTUxLDcgKzE1Myw4IEBAIHByb3RlY3RlZDoKICAg
ICB2b2lkIHNldFZpZGVvTGF5ZXJHcmF2aXR5RW51bSh1aW50NjRfdCBjb250ZXh0SWQsIHVuc2ln
bmVkIGdyYXZpdHkpOwogICAgIHZvaWQgZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHVpbnQ2NF90IGNv
bnRleHRJZCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5N
b2RlKTsKICAgICB2b2lkIGZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250
ZXh0SWQsIGJvb2wgaXNQYWdlVmlzaWJsZSk7Ci0gICAgCisgICAgdm9pZCByZXF1ZXN0Um91dGVT
aGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQsIE1lc3NhZ2VzOjpW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4
dFVJRDo6QXN5bmNSZXBseSYmKTsKKwogICAgIFdlYlBhZ2UqIG1fcGFnZTsKICAgICBSZWY8UGxh
eWJhY2tTZXNzaW9uTWFuYWdlcj4gbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyOwogICAgIEhhc2hN
YXA8V2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudCosIHVpbnQ2NF90PiBtX3ZpZGVvRWxlbWVudHM7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlci5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9W
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGY1NjkwMmM3YjlmMGFjNzVj
OTcxYjMwN2M4MGFlNjk5YTA0OTI0MTIuLjdjNTZlZDA0YWE4MmY4MWY3YzY3OGVhYzVkNzE4OGFm
YjY3NzIzNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0zNSw1ICsz
NSw2IEBAIG1lc3NhZ2VzIC0+IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXIgewogICAgIFNldFZpZGVv
TGF5ZXJHcmF2aXR5RW51bSh1aW50NjRfdCBjb250ZXh0SWQsIHVuc2lnbmVkIGdyYXZpdHkpCiAg
ICAgRnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6SFRN
TE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1v
ZGUpCiAgICAgRnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKHVpbnQ2NF90IGNvbnRleHRJZCwg
Ym9vbCBpc1BhZ2VWaXNpYmxlKQorICAgIFJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250
ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCkgLT4gKGVudW06dWludDhfdCBXZWJDb3JlOjpSb3V0
ZVNoYXJpbmdQb2xpY3kgcm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcgcm91dGluZ0NvbnRleHRV
SUQpIEFzeW5jCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KaW5kZXggZWY5ZThhMDgyNTBkZjM5
MWM1MGE1ZmYzYTlhMzk5ODFlMmFjYTQyZC4uN2Y2MzMwOWYzMmEwYTgzYTM4ZDBjMjg4MjVlODE3
M2IwMjIxZjE2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1Zp
ZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0KQEAgLTMwLDcgKzMwLDYgQEAKICNpbXBvcnQg
IkF0dGFjaG1lbnQuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKICNpbXBvcnQgIlBsYXliYWNrU2Vz
c2lvbk1hbmFnZXIuaCIKLSNpbXBvcnQgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJNZXNzYWdlcy5o
IgogI2ltcG9ydCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5TWVzc2FnZXMuaCIKICNpbXBv
cnQgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogI2ltcG9ydCAiV2ViUGFnZS5oIgpAQCAtNTU4
LDYgKzU1NywxMSBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmZ1bGxzY3JlZW5NYXlS
ZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0SWQsIGJvbwogICAgICAgICBtb2RlbC52aWRl
b0VsZW1lbnQoKS0+c2Nyb2xsSW50b1ZpZXdJZk5vdFZpc2libGUoZmFsc2UpOwogICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpQcmVwYXJlZFRv
UmV0dXJuVG9JbmxpbmUoY29udGV4dElkLCB0cnVlLCBpbmxpbmVWaWRlb0ZyYW1lKCptb2RlbC52
aWRlb0VsZW1lbnQoKSkpLCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0KKwordm9pZCBWaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyOjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50
NjRfdCBjb250ZXh0SWQsIE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0
Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRDo6QXN5bmNSZXBseSYmIHJlcGx5KQorewor
ICAgIGVuc3VyZU1vZGVsKGNvbnRleHRJZCkucmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENv
bnRleHRVSUQoV1RGTW92ZShyZXBseSkpOworfQogICAgIAogdm9pZCBWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyOjpzZXRWaWRlb0xheWVyRnJhbWVGZW5jZWQodWludDY0X3QgY29udGV4dElkLCBXZWJD
b3JlOjpGbG9hdFJlY3QgYm91bmRzLCBJUEM6OkF0dGFjaG1lbnQgZmVuY2VQb3J0KQogewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355670</attachid>
            <date>2018-11-26 13:41:12 -0800</date>
            <delta_ts>2018-11-26 15:23:50 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-190951-20181126134111.patch</filename>
            <type>text/plain</type>
            <size>19589</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGQ5MzVjOTkyNGE5M2Rl
NzUxNjViNjViN2RmODg2NGRkMjZmMmQzOC4uYWUxNTFkNjE5MDRmMzJjZDU1N2ExM2UzZTBlYTFm
YjkwZmU1ZjQ3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5z
ZW4uCisKKyAgICAgICAgUmVxdWVzdCB0aGUgY29ycmVjdCByb3V0ZSBwb2xpY3kgYW5kIGNvbnRl
eHQgZnJvbSB0aGUgVmlkZW9GdWxsc2NyZWVuTW9kZWwuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9j
b2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxs
c2NyZWVuTW9kZWw6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5o
OgorICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVt
ZW50Lm1tOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1l
bnQ6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW06CisgICAgICAgICgt
W1dlYkFWUGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQ
b2xpY3k6cm91dGluZ0NvbnRleHRVSUQ6XSk6CisgICAgICAgIChWaWRlb0Z1bGxzY3JlZW5JbnRl
cmZhY2VBVktpdDo6c2V0VmlkZW9GdWxsc2NyZWVuTW9kZWwpOgorICAgICAgICAoVmlkZW9GdWxs
c2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmRvU2V0dXApOgorCiAyMDE4LTA5LTEyICBKZXIgTm9ibGUg
IDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJQU5UIGJ1aWxkIGRlc3Rp
bmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZBUklBTlQgYnVpbGRzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZwppbmRleCBlN2FmYWYyYTkxZGNiYmU1OWE3NzY1NzRkM2JiNWRkNWJhMDJj
ZTIyLi4xNmMxM2ZlMjc4NDRkNmJkNjFmNWNkZWRhYWU4M2FlMjkwZmUwOWQ5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8amVyLm5v
YmxlQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCAtc2V0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQ
b2xpY3k6cm91dGluZ0NvbnRleHRVSUQ6IFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwOTUxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NTIx
MzA2NT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHBhbC9zcGkvY29jb2EvQVZLaXRTUEkuaDoKKwogMjAxOC0wOS0xMiAgSmVyIE5vYmxlICA8amVy
Lm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBTREtfVkFSSUFOVCBidWlsZCBkZXN0aW5hdGlv
bnMgc2hvdWxkIGJlIHNlcGFyYXRlIGZyb20gbm9uLVNES19WQVJJQU5UIGJ1aWxkcwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpp
bmRleCAxNDdkOGIyNmE3ODZkM2M0NjRiMTJjYWUxNDRkZmU3NzI5NjAwNWYxLi5hMGY1NGYzMjIz
ZmFjMDg0MjIwZDc5MTFkNDEwYjlmM2U5NDRlMmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBA
CisyMDE4LTEwLTI2ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAg
IEFkb3B0IC1zZXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDog
U1BJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5
NTEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IEFsZXggQ2hyaXN0ZW5zZW4uCisKKyAgICAgICAgQWRkIGFuIGFzeW5jcm9ub3VzIHJlcGx5
IHJlcXVlc3QgdG8gVmlkZW9GdWxsc2NyZWVuTWFuYWdlci4KKworICAgICAgICAqIFBsYXRmb3Jt
L0lQQy9NZXNzYWdlU2VuZGVyLmg6CisgICAgICAgIChJUEM6Ok1lc3NhZ2VTZW5kZXI6OnNlbmRX
aXRoQXN5bmNSZXBseSk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1hbmFnZXJQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyUHJveHkubW06CisgICAgICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVs
Q29udGV4dDo6cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQpOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oOgorICAgICAgICAq
IFdlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbjoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW06CisgICAg
ICAgIChXZWJLaXQ6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQ
b2xpY3lBbmRDb250ZXh0VUlEKToKKwogMjAxOC0wOS0xMiAgSmVyIE5vYmxlICA8amVyLm5vYmxl
QGFwcGxlLmNvbT4KIAogICAgICAgICBTREtfVkFSSUFOVCBidWlsZCBkZXN0aW5hdGlvbnMgc2hv
dWxkIGJlIHNlcGFyYXRlIGZyb20gbm9uLVNES19WQVJJQU5UIGJ1aWxkcwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZLaXRTUEkuaCBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJLmgKaW5kZXggNTBlYjgzNWMwMDk1ZTk0YjBk
OGE3ZDJjYTdiYmFjNGVmOThhY2M4MS4uNTViNGI5NmRmNDQwYzM4ZWUzNjlmMDE4MGRkZDExNTUz
NWE0Y2QxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZL
aXRTUEkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5o
CkBAIC03Myw2ICs3Myw3IEBAIE5TX0FTU1VNRV9OT05OVUxMX0JFR0lOCiBAcHJvcGVydHkgKG5v
bmF0b21pYywgcmVhZG9ubHksIGdldHRlcj1pc1BpY3R1cmVJblBpY3R1cmVBY3RpdmUpIEJPT0wg
cGljdHVyZUluUGljdHVyZUFjdGl2ZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSwg
Z2V0dGVyPWlzUGljdHVyZUluUGljdHVyZVN1c3BlbmRlZCkgQk9PTCBwaWN0dXJlSW5QaWN0dXJl
U3VzcGVuZGVkOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09MIHBpY3R1cmVJ
blBpY3R1cmVXYXNTdGFydGVkV2hlbkVudGVyaW5nQmFja2dyb3VuZDsKKy0gKHZvaWQpc2V0V2Vi
S2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpcm91dGVTaGFyaW5nUG9s
aWN5IHJvdXRpbmdDb250ZXh0VUlEOihOU1N0cmluZyAqKXJvdXRpbmdDb250ZXh0VUlEOwogQGVu
ZAogCiBAcHJvdG9jb2wgQVZQbGF5ZXJWaWV3Q29udHJvbGxlckRlbGVnYXRlX1dlYktpdE9ubHkg
PEFWUGxheWVyVmlld0NvbnRyb2xsZXJEZWxlZ2F0ZT4KQEAgLTE2Myw2ICsxNjQsNyBAQCB0eXBl
ZGVmIE5TX0VOVU0oTlNJbnRlZ2VyLCBBVlBsYXllclZpZXdDb250cm9sbGVyRXhpdEZ1bGxTY3Jl
ZW5SZWFzb24pIHsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzdHJvbmcsIG51bGxhYmxlKSBBVlBs
YXllckNvbnRyb2xsZXIgKnBsYXllckNvbnRyb2xsZXI7CiBAcHJvcGVydHkgKG5vbmF0b21pYywg
cmVhZG9ubHksIGdldHRlcj1pc1BpY3R1cmVJblBpY3R1cmVBY3RpdmUpIEJPT0wgcGljdHVyZUlu
UGljdHVyZUFjdGl2ZTsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgQk9PTCBwaWN0
dXJlSW5QaWN0dXJlV2FzU3RhcnRlZFdoZW5FbnRlcmluZ0JhY2tncm91bmQ7CistICh2b2lkKXNl
dFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hhcmlu
Z1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJRDsK
IEBlbmQKIAogTlNfQVNTVU1FX05PTk5VTExfRU5ECmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaAppbmRleCA5NjA3YTU3Y2M5YzQ4
OTlhMjIxMThjZGJiMTkxYWNhYTA3YzJkMmM5Li5mNjcxNDkwYWViYmFlOTZhODIwOTgwOTI4ZGVm
MDRmZjlkN2E1YjIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9W
aWRlb0Z1bGxzY3JlZW5Nb2RlbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKQEAgLTI4LDEwICsyOCwxMiBAQAogCiAjaWYgUExBVEZP
Uk0oSU9TX0ZBTUlMWSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BSRVNFTlRB
VElPTl9NT0RFKSkKIAorI2luY2x1ZGUgIkF1ZGlvU2Vzc2lvbi5oIgogI2luY2x1ZGUgIkZsb2F0
UmVjdC5oIgogI2luY2x1ZGUgIkhUTUxNZWRpYUVsZW1lbnRFbnVtcy5oIgogI2luY2x1ZGUgIk1l
ZGlhUGxheWVyRW51bXMuaCIKICNpbmNsdWRlICJQbGF5YmFja1Nlc3Npb25Nb2RlbC5oIgorI2lu
Y2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxlci5oPgogCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlM
WSkKIE9CSkNfQ0xBU1MgQVZQbGF5ZXJWaWV3Q29udHJvbGxlcjsKQEAgLTYyLDYgKzY0LDggQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCB3aWxsRXhpdFBpY3R1cmVJblBpY3R1cmUoKSA9IDA7
CiAgICAgdmlydHVhbCB2b2lkIGRpZEV4aXRQaWN0dXJlSW5QaWN0dXJlKCkgPSAwOwogCisgICAg
dmlydHVhbCB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoUm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmIGNvbXBsZXRp
b25IYW5kbGVyKSB7IGNvbXBsZXRpb25IYW5kbGVyKFJvdXRlU2hhcmluZ1BvbGljeTo6RGVmYXVs
dCwgZW1wdHlTdHJpbmcoKSk7IH0KKwogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAgICAgdmly
dHVhbCBVSVZpZXdDb250cm9sbGVyICpwcmVzZW50aW5nVmlld0NvbnRyb2xsZXIoKSB7IHJldHVy
biBudWxscHRyOyB9CiAgICAgdmlydHVhbCBVSVZpZXdDb250cm9sbGVyICpjcmVhdGVWaWRlb0Z1
bGxzY3JlZW5WaWV3Q29udHJvbGxlcihBVlBsYXllclZpZXdDb250cm9sbGVyICopIHsgcmV0dXJu
IG51bGxwdHI7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1Zp
ZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oCmluZGV4IDljNWMyMzgy
M2NhMTU2Njk2MTlmYjdhM2RjZDEwZjBjYjExZDVlY2MuLmJmYTI5ZjYyZTkxMjc1YjY1YjY2NzRj
ZDY3YzNmNGMwY2QwZGRmNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaApAQCAt
NzIsNiArNzIsNyBAQCBwdWJsaWM6CiAgICAgRmxvYXRTaXplIHZpZGVvRGltZW5zaW9ucygpIGNv
bnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1fdmlkZW9EaW1lbnNpb25zOyB9CiAgICAgYm9vbCBoYXNW
aWRlbygpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIG1faGFzVmlkZW87IH0KIAorICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgcmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYpIG92ZXJy
aWRlOwogCiBwcm90ZWN0ZWQ6CiAgICAgV0VCQ09SRV9FWFBPUlQgVmlkZW9GdWxsc2NyZWVuTW9k
ZWxWaWRlb0VsZW1lbnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nv
Y29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50Lm1tIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQubW0KaW5kZXgg
YzUxNzRjOGI4NDhhZmIwOGVlMTNiYjVjNjVlMDE5NDMxYzkyMzVlZS4uOTM2YmQ5NWNkMDNiODA3
YTVkODRiNGE0YThkNmI4MmRiMGQyYTcwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1l
bnQubW0KQEAgLTE4Nyw2ICsxODcsMTIgQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVv
RWxlbWVudDo6ZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKEhUTUxNZWRpYUVsZW1lbnRFbnUKICAgICAg
ICAgbV92aWRlb0VsZW1lbnQtPmZ1bGxzY3JlZW5Nb2RlQ2hhbmdlZCh2aWRlb0Z1bGxzY3JlZW5N
b2RlKTsKIH0KIAordm9pZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudDo6cmVxdWVz
dFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChS
b3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAg
YXV0byYgc2Vzc2lvbiA9IEF1ZGlvU2Vzc2lvbjo6c2hhcmVkU2Vzc2lvbigpOworICAgIGNvbXBs
ZXRpb25IYW5kbGVyKHNlc3Npb24ucm91dGVTaGFyaW5nUG9saWN5KCksIHNlc3Npb24ucm91dGlu
Z0NvbnRleHRVSUQoKSk7Cit9CisKIHZvaWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1l
bnQ6OmFkZENsaWVudChWaWRlb0Z1bGxzY3JlZW5Nb2RlbENsaWVudCYgY2xpZW50KQogewogICAg
IEFTU0VSVCghbV9jbGllbnRzLmNvbnRhaW5zKCZjbGllbnQpKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
LmgKaW5kZXggNWIwMzA4Y2EzNjFlYzFmMmYxMzI0YzJiN2FlMmQzOWU0OTYzZmZlNi4uNDc3ZWU0
ZTBjYTI5NzkxMzVlZDVmZTNjMTU5NTBhMWEwNjJjNTkwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
LmgKQEAgLTU3LDcgKzU3LDcgQEAgY2xhc3MgSW50UmVjdDsKIGNsYXNzIEZsb2F0U2l6ZTsKIGNs
YXNzIFZpZGVvRnVsbHNjcmVlbk1vZGVsOwogY2xhc3MgVmlkZW9GdWxsc2NyZWVuQ2hhbmdlT2Jz
ZXJ2ZXI7Ci0gICAgCisKIGNsYXNzIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0IGZpbmFs
CiAgICAgOiBwdWJsaWMgVmlkZW9GdWxsc2NyZWVuTW9kZWxDbGllbnQKICAgICAsIHB1YmxpYyBQ
bGF5YmFja1Nlc3Npb25Nb2RlbENsaWVudApAQCAtMTg0LDYgKzE4NCw4IEBAIHByb3RlY3RlZDoK
ICAgICBXVEY6OkZ1bmN0aW9uPHZvaWQoYm9vbCk+IG1fcHJlcGFyZVRvSW5saW5lQ2FsbGJhY2s7
CiAgICAgUnVuTG9vcDo6VGltZXI8VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ+IG1fd2F0
Y2hkb2dUaW1lcjsKICAgICBGbG9hdFJlY3QgbV9pbmxpbmVSZWN0OworICAgIFJvdXRlU2hhcmlu
Z1BvbGljeSBtX3JvdXRlU2hhcmluZ1BvbGljeSB7IFJvdXRlU2hhcmluZ1BvbGljeTo6RGVmYXVs
dCB9OworICAgIFN0cmluZyBtX3JvdXRpbmdDb250ZXh0VUlEOwogICAgIGJvb2wgbV9hbGxvd3NQ
aWN0dXJlSW5QaWN0dXJlUGxheWJhY2sgeyBmYWxzZSB9OwogICAgIGJvb2wgbV93aXJlbGVzc1Zp
ZGVvUGxheWJhY2tEaXNhYmxlZCB7IHRydWUgfTsKICAgICBib29sIG1fc2hvdWxkUmV0dXJuVG9G
dWxsc2NyZWVuV2hlblN0b3BwaW5nUGlQIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbSBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5t
bQppbmRleCAzZmRjZGU5YjQ3ZDI1YzE1NGYyY2UyMzI1MzBlMGIwOTc0MjVjYzI1Li40ZGM4ODMy
YWNiMmNhYjIyYzE2YTc0N2Y2YjRmOGEyMzI3NzI0YWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
Lm1tCkBAIC01NDcsNiArNTQ3LDcgQEAgLSAodm9pZClzdGFydFBpY3R1cmVJblBpY3R1cmU7CiAt
ICh2b2lkKXN0b3BQaWN0dXJlSW5QaWN0dXJlOwogCiAtIChCT09MKXBsYXllclZpZXdDb250cm9s
bGVyU2hvdWxkSGFuZGxlRG9uZUJ1dHRvblRhcDooQVZQbGF5ZXJWaWV3Q29udHJvbGxlciAqKXBs
YXllclZpZXdDb250cm9sbGVyOworLSAodm9pZClzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmlu
Z1BvbGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6
KE5TU3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQ7CiBAZW5kCiBOU19BU1NVTUVfTk9OTlVMTF9F
TkQKIApAQCAtNTgwLDYgKzU4MSwxNiBAQCAtIChCT09MKXBsYXllclZpZXdDb250cm9sbGVyU2hv
dWxkSGFuZGxlRG9uZUJ1dHRvblRhcDooQVZQbGF5ZXJWaWV3Q29udHJvbGxlciAqKQogICAgIHJl
dHVybiBZRVM7CiB9CiAKKy0gKHZvaWQpc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xp
Y3k6KE5TVUludGVnZXIpcm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOihOU1N0
cmluZyAqKXJvdXRpbmdDb250ZXh0VUlECit7CisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcHVz
aAorI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIGlnbm9yZWQgIi1XdW5rbm93bi1wcmFnbWFzIgor
I3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIGlnbm9yZWQgIi1XdW5ndWFyZGVkLWF2YWlsYWJpbGl0
eS1uZXciCisgICAgaWYgKFtfYXZQbGF5ZXJWaWV3Q29udHJvbGxlciByZXNwb25kc1RvU2VsZWN0
b3I6QHNlbGVjdG9yKHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OnJvdXRpbmdD
b250ZXh0VUlEOildKQorICAgICAgICBbX2F2UGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0
T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6cm91dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250
ZXh0VUlEOnJvdXRpbmdDb250ZXh0VUlEXTsKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwb3AK
K30KKwogLSAodm9pZCllbnRlckZ1bGxTY3JlZW5BbmltYXRlZDooQk9PTClhbmltYXRlZCBjb21w
bGV0aW9uSGFuZGxlcjoodm9pZCAoXikoQk9PTCBzdWNjZXNzLCBOU0Vycm9yICogX19udWxsYWJs
ZSBlcnJvcikpY29tcGxldGlvbkhhbmRsZXIKIHsKICNpZiBQTEFURk9STShXQVRDSE9TKQpAQCAt
NzY0LDggKzc3NSwxNiBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpzZXRW
aWRlb0Z1bGxzY3JlZW5Nb2RlbChWaWRlb0Z1bGxzY3JlZW5Nb2RlbAogCiAgICAgbV92aWRlb0Z1
bGxzY3JlZW5Nb2RlbCA9IG1vZGVsOwogCi0gICAgaWYgKG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwp
CisgICAgaWYgKG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwpIHsKICAgICAgICAgbV92aWRlb0Z1bGxz
Y3JlZW5Nb2RlbC0+YWRkQ2xpZW50KCp0aGlzKTsKKyAgICAgICAgbV92aWRlb0Z1bGxzY3JlZW5N
b2RlbC0+cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoW3RoaXMsIHByb3Rl
Y3RlZFRoaXMgPSBtYWtlUmVmUHRyKHRoaXMpXSAoUm91dGVTaGFyaW5nUG9saWN5IHBvbGljeSwg
U3RyaW5nIGNvbnRleHRVSUQpIHsKKyAgICAgICAgICAgIG1fcm91dGVTaGFyaW5nUG9saWN5ID0g
cG9saWN5OworICAgICAgICAgICAgbV9yb3V0aW5nQ29udGV4dFVJRCA9IGNvbnRleHRVSUQ7CisK
KyAgICAgICAgICAgIGlmIChtX3BsYXllclZpZXdDb250cm9sbGVyICYmICFtX3JvdXRpbmdDb250
ZXh0VUlELmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxl
ciBzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlciltX3JvdXRl
U2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDptX3JvdXRpbmdDb250ZXh0VUlEXTsKKyAg
ICAgICAgfSk7CisgICAgfQogCiAgICAgaGFzVmlkZW9DaGFuZ2VkKG1fdmlkZW9GdWxsc2NyZWVu
TW9kZWwgPyBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5oYXNWaWRlbygpIDogZmFsc2UpOwogICAg
IHZpZGVvRGltZW5zaW9uc0NoYW5nZWQobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCA/IG1fdmlkZW9G
dWxsc2NyZWVuTW9kZWwtPnZpZGVvRGltZW5zaW9ucygpIDogRmxvYXRTaXplKCkpOwpAQCAtMTIy
OSw2ICsxMjQ4LDggQEAgdm9pZCBWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6ZG9TZXR1
cCgpCiAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc2V0RGVsZWdhdGU6bV9wbGF5ZXJWaWV3
Q29udHJvbGxlckRlbGVnYXRlLmdldCgpXTsKICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxlciBz
ZXRBbGxvd3NQaWN0dXJlSW5QaWN0dXJlUGxheWJhY2s6bV9hbGxvd3NQaWN0dXJlSW5QaWN0dXJl
UGxheWJhY2tdOwogICAgIFtwbGF5ZXJDb250cm9sbGVyKCkgc2V0UGljdHVyZUluUGljdHVyZVBv
c3NpYmxlOm1fYWxsb3dzUGljdHVyZUluUGljdHVyZVBsYXliYWNrXTsKKyAgICBpZiAoIW1fcm91
dGluZ0NvbnRleHRVSUQuaXNFbXB0eSgpKQorICAgICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxl
ciBzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlciltX3JvdXRl
U2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJRDptX3JvdXRpbmdDb250ZXh0VUlEXTsKIAog
I2lmIFBMQVRGT1JNKFdBVENIT1MpCiAgICAgbV92aWV3Q29udHJvbGxlciA9IHZpZGVvRnVsbHNj
cmVlbk1vZGVsKCktPmNyZWF0ZVZpZGVvRnVsbHNjcmVlblZpZXdDb250cm9sbGVyKG1fcGxheWVy
Vmlld0NvbnRyb2xsZXIuZ2V0KCkuYXZQbGF5ZXJWaWV3Q29udHJvbGxlcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9NZXNzYWdlU2VuZGVyLmggYi9Tb3VyY2UvV2Vi
S2l0L1BsYXRmb3JtL0lQQy9NZXNzYWdlU2VuZGVyLmgKaW5kZXggZjIxNjIyOWI0ZGIzN2MyZWU4
ZDcwNDBiZTYzMmNkMzc2NGYwZWRiMy4uZDhjMzBlMjNiZDQwNWFlNzdmNmE0NzExNTE0YzA0NDQ1
YjFmMDFjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvTWVzc2FnZVNl
bmRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL01lc3NhZ2VTZW5kZXIuaApA
QCAtNjUsNiArNjUsMTQgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gbWVzc2FnZVNlbmRlckNv
bm5lY3Rpb24oKS0+c2VuZFN5bmMoV1RGTW92ZShtZXNzYWdlKSwgV1RGTW92ZShyZXBseSksIGRl
c3RpbmF0aW9uSUQsIHRpbWVvdXQsIHNlbmRTeW5jT3B0aW9ucyk7CiAgICAgfQogCisgICAgdGVt
cGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUuLi4gQXJncz4KKyAgICB2b2lkIHNlbmRXaXRoQXN5
bmNSZXBseShUJiYgbWVzc2FnZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChBcmdzLi4uKT4mJiBh
cmdzLCB1aW50NjRfdCBkZXN0aW5hdGlvbklEID0gMCkKKyAgICB7CisgICAgICAgIEFTU0VSVCht
ZXNzYWdlU2VuZGVyQ29ubmVjdGlvbigpKTsKKworICAgICAgICBtZXNzYWdlU2VuZGVyQ29ubmVj
dGlvbigpLT5zZW5kV2l0aEFzeW5jUmVwbHkoV1RGTW92ZShtZXNzYWdlKSwgV1RGTW92ZShhcmdz
KSwgZGVzdGluYXRpb25JRCk7CisgICAgfQorCiAgICAgdmlydHVhbCBib29sIHNlbmRNZXNzYWdl
KHN0ZDo6dW5pcXVlX3B0cjxFbmNvZGVyPiwgT3B0aW9uU2V0PFNlbmRPcHRpb24+KTsKIAogcHJp
dmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVs
bHNjcmVlbk1hbmFnZXJQcm94eS5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKaW5kZXggZmIwMGIxNTNmNTZkNjRjNGJkZjhiMTdk
OTI4NTEzN2ZmOWY4NjY0Mi4uYTkyOTlmMWI3NDY5YjAzYWQyMzQ2MjRiY2QwYjM1NmJjOTI4YjY5
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5LmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5LmgKQEAgLTI4LDYgKzI4LDcgQEAKICNpZiAoUExBVEZP
Uk0oSU9TX0ZBTUlMWSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJM
RShWSURFT19QUkVTRU5UQVRJT05fTU9ERSkpCiAKICNpbmNsdWRlICJNZXNzYWdlUmVjZWl2ZXIu
aCIKKyNpbmNsdWRlIDxXZWJDb3JlL0F1ZGlvU2Vzc2lvbi5oPgogI2luY2x1ZGUgPFdlYkNvcmUv
R3JhcGhpY3NMYXllci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1WaWV3Lmg+CiAjaW5j
bHVkZSA8V2ViQ29yZS9WaWRlb0Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlci5oPgpAQCAtMzYsNiAr
MzcsNyBAQAogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2luY2x1ZGUgPFdlYkNvcmUvVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaD4KQEAgLTkzLDYgKzk1LDcgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIGZhaWxlZFRvRW50ZXJQaWN0dXJlSW5QaWN0dXJlKCkgZmluYWw7CiAgICAgdm9p
ZCB3aWxsRXhpdFBpY3R1cmVJblBpY3R1cmUoKSBmaW5hbDsKICAgICB2b2lkIGRpZEV4aXRQaWN0
dXJlSW5QaWN0dXJlKCkgZmluYWw7CisgICAgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5
QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJvdXRlU2hhcmlu
Z1BvbGljeSwgU3RyaW5nKT4mJikgZmluYWw7CiAKICAgICAvLyBWaWRlb0Z1bGxzY3JlZW5DaGFu
Z2VPYnNlcnZlcgogICAgIHZvaWQgcmVxdWVzdFVwZGF0ZUlubGluZVJlY3QoKSBmaW5hbDsKQEAg
LTEyNyw2ICsxMzAsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBhcHBsaWNhdGlvbkRpZEJlY29tZUFj
dGl2ZSgpOwogICAgIGJvb2wgaXNWaXNpYmxlKCkgY29uc3Q7CiAKKyAgICB2b2lkIHJlcXVlc3RS
b3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYp
OworCiAjaWYgRU5BQkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKQogICAgIGJvb2wgaXNQbGF5
aW5nVmlkZW9JbkVuaGFuY2VkRnVsbHNjcmVlbigpIGNvbnN0OwogI2VuZGlmCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJv
eHkubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyUHJveHkubW0KaW5kZXggN2QzYWJjNzcxZTA1NWI2MzI4MDMwZWM3YWNlYjQwNjIzNzk4ODNk
MC4uYTQzOGZlNzFhODZkMzI3Mjg1YWVmNTIxMmZmMzU2MTI2NDI1NmQxNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXJQcm94eS5tbQpAQCAtMjc0LDYgKzI3NCwxNCBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1v
ZGVsQ29udGV4dDo6ZnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKCkKICAgICAgICAgbV9tYW5h
Z2VyLT5mdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUobV9jb250ZXh0SWQpOwogfQogCit2b2lk
IFZpZGVvRnVsbHNjcmVlbk1vZGVsQ29udGV4dDo6cmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFu
ZENvbnRleHRVSUQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQ
b2xpY3ksIFN0cmluZyk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit7CisgICAgaWYgKG1fbWFuYWdl
cikKKyAgICAgICAgbV9tYW5hZ2VyLT5yZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4
dFVJRChtX2NvbnRleHRJZCwgV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOworICAgIGVsc2UK
KyAgICAgICAgY29tcGxldGlvbkhhbmRsZXIoV2ViQ29yZTo6Um91dGVTaGFyaW5nUG9saWN5OjpE
ZWZhdWx0LCBlbXB0eVN0cmluZygpKTsKK30KKwogdm9pZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbENv
bnRleHQ6OndpbGxFbnRlclBpY3R1cmVJblBpY3R1cmUoKQogewogICAgIGZvciAoYXV0byYgY2xp
ZW50IDogbV9jbGllbnRzKQpAQCAtMzkzLDYgKzQwMSwxMSBAQCB2b2lkIFZpZGVvRnVsbHNjcmVl
bk1hbmFnZXJQcm94eTo6YXBwbGljYXRpb25EaWRCZWNvbWVBY3RpdmUoKQogICAgICAgICBzdGQ6
OmdldDwxPih0dXBsZSktPmFwcGxpY2F0aW9uRGlkQmVjb21lQWN0aXZlKCk7CiB9CiAKK3ZvaWQg
VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5k
Q29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2Vi
Q29yZTo6Um91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcpPiYmIGNhbGxiYWNrKQoreworICAgIG1f
cGFnZS0+c2VuZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2Vy
OjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChjb250ZXh0SWQpLCBXVEZN
b3ZlKGNhbGxiYWNrKSk7Cit9CisKIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6TW9kZWxJ
bnRlcmZhY2VUdXBsZSBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OmNyZWF0ZU1vZGVsQW5k
SW50ZXJmYWNlKHVpbnQ2NF90IGNvbnRleHRJZCkKIHsKICAgICBhdXRvJiBwbGF5YmFja1Nlc3Np
b25Nb2RlbCA9IG1fcGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5LT5lbnN1cmVNb2RlbChjb250
ZXh0SWQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyLmgKaW5kZXggMmNmYjM0NWViYTc1Y2M5ZjVjYTBjZTRlOTAzZmNh
YTI2NzI2YjViZS4uMWZmMTEyMDFlODcxMzEzZTEyNzI0ZTlkZTAwZjQ4ZDM0YzdkMWQ3ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlci5oCkBAIC0yNyw3ICsyNyw5IEBACiAKICNpZiAoUExBVEZPUk0oSU9TX0ZBTUlM
WSkgJiYgSEFWRShBVktJVCkpIHx8IChQTEFURk9STShNQUMpICYmIEVOQUJMRShWSURFT19QUkVT
RU5UQVRJT05fTU9ERSkpCiAKKyNpbmNsdWRlICJDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiTWVz
c2FnZVJlY2VpdmVyLmgiCisjaW5jbHVkZSAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlck1lc3NhZ2Vz
LmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9FdmVudExpc3RlbmVyLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9IVE1MTWVkaWFFbGVtZW50RW51bXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1BsYXRmb3JtQ0FM
YXllci5oPgpAQCAtMTUxLDcgKzE1Myw4IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIHNldFZpZGVv
TGF5ZXJHcmF2aXR5RW51bSh1aW50NjRfdCBjb250ZXh0SWQsIHVuc2lnbmVkIGdyYXZpdHkpOwog
ICAgIHZvaWQgZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29y
ZTo6SFRNTE1lZGlhRWxlbWVudEVudW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlKTsKICAgICB2b2lk
IGZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1aW50NjRfdCBjb250ZXh0SWQsIGJvb2wgaXNQ
YWdlVmlzaWJsZSk7Ci0gICAgCisgICAgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5k
Q29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQsIE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRDo6QXN5bmNSZXBs
eSYmKTsKKwogICAgIFdlYlBhZ2UqIG1fcGFnZTsKICAgICBSZWY8UGxheWJhY2tTZXNzaW9uTWFu
YWdlcj4gbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyOwogICAgIEhhc2hNYXA8V2ViQ29yZTo6SFRN
TFZpZGVvRWxlbWVudCosIHVpbnQ2NF90PiBtX3ZpZGVvRWxlbWVudHM7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tZXNz
YWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyLm1lc3NhZ2VzLmluCmluZGV4IGY1NjkwMmM3YjlmMGFjNzVjOTcxYjMwN2M4MGFlNjk5
YTA0OTI0MTIuLjdjNTZlZDA0YWE4MmY4MWY3YzY3OGVhYzVkNzE4OGFmYjY3NzIzNjIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5h
Z2VyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluCkBAIC0zNSw1ICszNSw2IEBAIG1lc3NhZ2Vz
IC0+IFZpZGVvRnVsbHNjcmVlbk1hbmFnZXIgewogICAgIFNldFZpZGVvTGF5ZXJHcmF2aXR5RW51
bSh1aW50NjRfdCBjb250ZXh0SWQsIHVuc2lnbmVkIGdyYXZpdHkpCiAgICAgRnVsbHNjcmVlbk1v
ZGVDaGFuZ2VkKHVpbnQ2NF90IGNvbnRleHRJZCwgV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudEVu
dW1zOjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIHZpZGVvRnVsbHNjcmVlbk1vZGUpCiAgICAgRnVsbHNj
cmVlbk1heVJldHVyblRvSW5saW5lKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vbCBpc1BhZ2VWaXNp
YmxlKQorICAgIFJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKHVpbnQ2NF90
IGNvbnRleHRJZCkgLT4gKGVudW06dWludDhfdCBXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3kg
cm91dGVTaGFyaW5nUG9saWN5LCBTdHJpbmcgcm91dGluZ0NvbnRleHRVSUQpIEFzeW5jCiB9CiAj
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1
bGxzY3JlZW5NYW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIubW0KaW5kZXggZWY5ZThhMDgyNTBkZjM5MWM1MGE1ZmYzYTlhMzk5
ODFlMmFjYTQyZC4uN2Y2MzMwOWYzMmEwYTgzYTM4ZDBjMjg4MjVlODE3M2IwMjIxZjE2ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNj
cmVlbk1hbmFnZXIubW0KQEAgLTMwLDcgKzMwLDYgQEAKICNpbXBvcnQgIkF0dGFjaG1lbnQuaCIK
ICNpbXBvcnQgIkxvZ2dpbmcuaCIKICNpbXBvcnQgIlBsYXliYWNrU2Vzc2lvbk1hbmFnZXIuaCIK
LSNpbXBvcnQgIlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJNZXNzYWdlcy5oIgogI2ltcG9ydCAiVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5TWVzc2FnZXMuaCIKICNpbXBvcnQgIldlYkNvcmVBcmd1
bWVudENvZGVycy5oIgogI2ltcG9ydCAiV2ViUGFnZS5oIgpAQCAtNTU4LDYgKzU1NywxMSBAQCB2
b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OmZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZSh1
aW50NjRfdCBjb250ZXh0SWQsIGJvbwogICAgICAgICBtb2RlbC52aWRlb0VsZW1lbnQoKS0+c2Ny
b2xsSW50b1ZpZXdJZk5vdFZpc2libGUoZmFsc2UpOwogICAgIG1fcGFnZS0+c2VuZChNZXNzYWdl
czo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpQcmVwYXJlZFRvUmV0dXJuVG9JbmxpbmUo
Y29udGV4dElkLCB0cnVlLCBpbmxpbmVWaWRlb0ZyYW1lKCptb2RlbC52aWRlb0VsZW1lbnQoKSkp
LCBtX3BhZ2UtPnBhZ2VJRCgpKTsKIH0KKwordm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpy
ZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCh1aW50NjRfdCBjb250ZXh0SWQs
IE1lc3NhZ2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpSZXF1ZXN0Um91dGVTaGFyaW5nUG9s
aWN5QW5kQ29udGV4dFVJRDo6QXN5bmNSZXBseSYmIHJlcGx5KQoreworICAgIGVuc3VyZU1vZGVs
KGNvbnRleHRJZCkucmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoV1RGTW92
ZShyZXBseSkpOworfQogICAgIAogdm9pZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyOjpzZXRWaWRl
b0xheWVyRnJhbWVGZW5jZWQodWludDY0X3QgY29udGV4dElkLCBXZWJDb3JlOjpGbG9hdFJlY3Qg
Ym91bmRzLCBJUEM6OkF0dGFjaG1lbnQgZmVuY2VQb3J0KQogewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355683</attachid>
            <date>2018-11-26 15:23:53 -0800</date>
            <delta_ts>2018-11-26 16:02:35 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-190951-20181126152352.patch</filename>
            <type>text/plain</type>
            <size>19591</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGQ5MzVjOTkyNGE5M2Rl
NzUxNjViNjViN2RmODg2NGRkMjZmMmQzOC4uYWUxNTFkNjE5MDRmMzJjZDU1N2ExM2UzZTBlYTFm
YjkwZmU1ZjQ3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTEwLTI2ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIEFkb3B0IC1zZXRPdmVycmlk
ZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0aW5nQ29udGV4dFVJRDogU1BJCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTA5NTEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzQ1MjEzMDY1PgorCisgICAgICAgIFJldmlld2VkIGJ5IEFsZXggQ2hyaXN0ZW5z
ZW4uCisKKyAgICAgICAgUmVxdWVzdCB0aGUgY29ycmVjdCByb3V0ZSBwb2xpY3kgYW5kIGNvbnRl
eHQgZnJvbSB0aGUgVmlkZW9GdWxsc2NyZWVuTW9kZWwuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9j
b2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxs
c2NyZWVuTW9kZWw6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKToKKyAg
ICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5o
OgorICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVt
ZW50Lm1tOgorICAgICAgICAoV2ViQ29yZTo6VmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1l
bnQ6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW06CisgICAgICAgICgt
W1dlYkFWUGxheWVyVmlld0NvbnRyb2xsZXIgc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQ
b2xpY3k6cm91dGluZ0NvbnRleHRVSUQ6XSk6CisgICAgICAgIChWaWRlb0Z1bGxzY3JlZW5JbnRl
cmZhY2VBVktpdDo6c2V0VmlkZW9GdWxsc2NyZWVuTW9kZWwpOgorICAgICAgICAoVmlkZW9GdWxs
c2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmRvU2V0dXApOgorCiAyMDE4LTA5LTEyICBKZXIgTm9ibGUg
IDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJQU5UIGJ1aWxkIGRlc3Rp
bmF0aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZBUklBTlQgYnVpbGRzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUv
UEFML0NoYW5nZUxvZwppbmRleCBlN2FmYWYyYTkxZGNiYmU1OWE3NzY1NzRkM2JiNWRkNWJhMDJj
ZTIyLi41YTZlZDFjNjBhNjIzYTllMDAxMzA2MjE1YmZhOWIyMWVkNWQ4ZWRiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxOC0xMC0yNiAgSmVyIE5vYmxlICA8amVyLm5v
YmxlQGFwcGxlLmNvbT4KKworICAgICAgICBBZG9wdCAtc2V0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQ
b2xpY3k6cm91dGluZ0NvbnRleHRVSUQ6IFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwOTUxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS80NTIx
MzA2NT4KKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2VuLgorCisgICAgICAg
ICogcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oOgorCiAyMDE4LTA5LTEyICBKZXIgTm9ibGUgIDxq
ZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJQU5UIGJ1aWxkIGRlc3RpbmF0
aW9ucyBzaG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZBUklBTlQgYnVpbGRzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CmluZGV4IDE0N2Q4YjI2YTc4NmQzYzQ2NGIxMmNhZTE0NGRmZTc3Mjk2MDA1ZjEuLmEwZjU0ZjMy
MjNmYWMwODQyMjBkNzkxMWQ0MTBiOWYzZTk0NGUyYmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMTgtMTAtMjYgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CisKKyAgICAg
ICAgQWRvcHQgLXNldE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OnJvdXRpbmdDb250ZXh0VUlE
OiBTUEkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5
MDk1MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNDUyMTMwNjU+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgQWxleCBDaHJpc3RlbnNlbi4KKworICAgICAgICBBZGQgYW4gYXN5bmNyb25vdXMgcmVw
bHkgcmVxdWVzdCB0byBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLgorCisgICAgICAgICogUGxhdGZv
cm0vSVBDL01lc3NhZ2VTZW5kZXIuaDoKKyAgICAgICAgKElQQzo6TWVzc2FnZVNlbmRlcjo6c2Vu
ZFdpdGhBc3luY1JlcGx5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNj
cmVlbk1hbmFnZXJQcm94eS5tbToKKyAgICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTW9k
ZWxDb250ZXh0OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRCk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1lc3NhZ2VzLmluOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbToKKyAg
ICAgICAgKFdlYktpdDo6VmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6cmVxdWVzdFJvdXRlU2hhcmlu
Z1BvbGljeUFuZENvbnRleHRVSUQpOgorCiAyMDE4LTA5LTEyICBKZXIgTm9ibGUgIDxqZXIubm9i
bGVAYXBwbGUuY29tPgogCiAgICAgICAgIFNES19WQVJJQU5UIGJ1aWxkIGRlc3RpbmF0aW9ucyBz
aG91bGQgYmUgc2VwYXJhdGUgZnJvbSBub24tU0RLX1ZBUklBTlQgYnVpbGRzCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9BVktpdFNQSS5oIGIvU291cmNlL1dl
YkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZLaXRTUEkuaAppbmRleCA1MGViODM1YzAwOTVlOTRi
MGQ4YTdkMmNhN2JiYWM0ZWY5OGFjYzgxLi41NWI0Yjk2ZGY0NDBjMzhlZTM2OWYwMTgwZGRkMTE1
NTM1YTRjZDExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9jb2NvYS9B
VktpdFNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWS2l0U1BJ
LmgKQEAgLTczLDYgKzczLDcgQEAgTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KIEBwcm9wZXJ0eSAo
bm9uYXRvbWljLCByZWFkb25seSwgZ2V0dGVyPWlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSkgQk9P
TCBwaWN0dXJlSW5QaWN0dXJlQWN0aXZlOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5
LCBnZXR0ZXI9aXNQaWN0dXJlSW5QaWN0dXJlU3VzcGVuZGVkKSBCT09MIHBpY3R1cmVJblBpY3R1
cmVTdXNwZW5kZWQ7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgcGljdHVy
ZUluUGljdHVyZVdhc1N0YXJ0ZWRXaGVuRW50ZXJpbmdCYWNrZ3JvdW5kOworLSAodm9pZClzZXRX
ZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQ
b2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5TU3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQ7CiBA
ZW5kCiAKIEBwcm90b2NvbCBBVlBsYXllclZpZXdDb250cm9sbGVyRGVsZWdhdGVfV2ViS2l0T25s
eSA8QVZQbGF5ZXJWaWV3Q29udHJvbGxlckRlbGVnYXRlPgpAQCAtMTYzLDYgKzE2NCw3IEBAIHR5
cGVkZWYgTlNfRU5VTShOU0ludGVnZXIsIEFWUGxheWVyVmlld0NvbnRyb2xsZXJFeGl0RnVsbFNj
cmVlblJlYXNvbikgewogQHByb3BlcnR5IChub25hdG9taWMsIHN0cm9uZywgbnVsbGFibGUpIEFW
UGxheWVyQ29udHJvbGxlciAqcGxheWVyQ29udHJvbGxlcjsKIEBwcm9wZXJ0eSAobm9uYXRvbWlj
LCByZWFkb25seSwgZ2V0dGVyPWlzUGljdHVyZUluUGljdHVyZUFjdGl2ZSkgQk9PTCBwaWN0dXJl
SW5QaWN0dXJlQWN0aXZlOwogQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09MIHBp
Y3R1cmVJblBpY3R1cmVXYXNTdGFydGVkV2hlbkVudGVyaW5nQmFja2dyb3VuZDsKKy0gKHZvaWQp
c2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6KE5TVUludGVnZXIpcm91dGVTaGFy
aW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOihOU1N0cmluZyAqKXJvdXRpbmdDb250ZXh0VUlE
OwogQGVuZAogCiBOU19BU1NVTUVfTk9OTlVMTF9FTkQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmggYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbC5oCmluZGV4IDk2MDdhNTdjYzlj
NDg5OWEyMjExOGNkYmIxOTFhY2FhMDdjMmQyYzkuLmY2NzE0OTBhZWJiYWU5NmE4MjA5ODA5Mjhk
ZWYwNGZmOWQ3YTViMjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1ZpZGVvRnVsbHNjcmVlbk1vZGVsLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29j
b2EvVmlkZW9GdWxsc2NyZWVuTW9kZWwuaApAQCAtMjgsMTAgKzI4LDEyIEBACiAKICNpZiBQTEFU
Rk9STShJT1NfRkFNSUxZKSB8fCAoUExBVEZPUk0oTUFDKSAmJiBFTkFCTEUoVklERU9fUFJFU0VO
VEFUSU9OX01PREUpKQogCisjaW5jbHVkZSAiQXVkaW9TZXNzaW9uLmgiCiAjaW5jbHVkZSAiRmxv
YXRSZWN0LmgiCiAjaW5jbHVkZSAiSFRNTE1lZGlhRWxlbWVudEVudW1zLmgiCiAjaW5jbHVkZSAi
TWVkaWFQbGF5ZXJFbnVtcy5oIgogI2luY2x1ZGUgIlBsYXliYWNrU2Vzc2lvbk1vZGVsLmgiCisj
aW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5kbGVyLmg+CiAKICNpZiBQTEFURk9STShJT1NfRkFN
SUxZKQogT0JKQ19DTEFTUyBBVlBsYXllclZpZXdDb250cm9sbGVyOwpAQCAtNjIsNiArNjQsOCBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHdpbGxFeGl0UGljdHVyZUluUGljdHVyZSgpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgZGlkRXhpdFBpY3R1cmVJblBpY3R1cmUoKSA9IDA7CiAKKyAg
ICB2aXJ0dWFsIHZvaWQgcmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYgY29tcGxl
dGlvbkhhbmRsZXIpIHsgY29tcGxldGlvbkhhbmRsZXIoUm91dGVTaGFyaW5nUG9saWN5OjpEZWZh
dWx0LCBlbXB0eVN0cmluZygpKTsgfQorCiAjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICB2
aXJ0dWFsIFVJVmlld0NvbnRyb2xsZXIgKnByZXNlbnRpbmdWaWV3Q29udHJvbGxlcigpIHsgcmV0
dXJuIG51bGxwdHI7IH0KICAgICB2aXJ0dWFsIFVJVmlld0NvbnRyb2xsZXIgKmNyZWF0ZVZpZGVv
RnVsbHNjcmVlblZpZXdDb250cm9sbGVyKEFWUGxheWVyVmlld0NvbnRyb2xsZXIgKikgeyByZXR1
cm4gbnVsbHB0cjsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2Ev
VmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50LmgKaW5kZXggOWM1YzIz
ODIzY2ExNTY2OTYxOWZiN2EzZGNkMTBmMGNiMTFkNWVjYy4uYmZhMjlmNjJlOTEyNzViNjViNjY3
NGNkNjdjM2Y0YzBjZDBkZGY2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Y29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5oCkBA
IC03Miw2ICs3Miw3IEBAIHB1YmxpYzoKICAgICBGbG9hdFNpemUgdmlkZW9EaW1lbnNpb25zKCkg
Y29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV92aWRlb0RpbWVuc2lvbnM7IH0KICAgICBib29sIGhh
c1ZpZGVvKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gbV9oYXNWaWRlbzsgfQogCisgICAgV0VC
Q09SRV9FWFBPUlQgdm9pZCByZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKFJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJikgb3Zl
cnJpZGU7CiAKIHByb3RlY3RlZDoKICAgICBXRUJDT1JFX0VYUE9SVCBWaWRlb0Z1bGxzY3JlZW5N
b2RlbFZpZGVvRWxlbWVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Y29jb2EvVmlkZW9GdWxsc2NyZWVuTW9kZWxWaWRlb0VsZW1lbnQubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5tbQppbmRl
eCBjNTE3NGM4Yjg0OGFmYjA4ZWUxM2JiNWM2NWUwMTk0MzFjOTIzNWVlLi45MzZiZDk1Y2QwM2I4
MDdhNWQ4NGI0YTRhOGQ2YjgyZGIwZDJhNzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxlbWVudC5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxl
bWVudC5tbQpAQCAtMTg3LDYgKzE4NywxMiBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlk
ZW9FbGVtZW50OjpmdWxsc2NyZWVuTW9kZUNoYW5nZWQoSFRNTE1lZGlhRWxlbWVudEVudQogICAg
ICAgICBtX3ZpZGVvRWxlbWVudC0+ZnVsbHNjcmVlbk1vZGVDaGFuZ2VkKHZpZGVvRnVsbHNjcmVl
bk1vZGUpOwogfQogCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVsVmlkZW9FbGVtZW50OjpyZXF1
ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KFJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAg
ICBhdXRvJiBzZXNzaW9uID0gQXVkaW9TZXNzaW9uOjpzaGFyZWRTZXNzaW9uKCk7CisgICAgY29t
cGxldGlvbkhhbmRsZXIoc2Vzc2lvbi5yb3V0ZVNoYXJpbmdQb2xpY3koKSwgc2Vzc2lvbi5yb3V0
aW5nQ29udGV4dFVJRCgpKTsKK30KKwogdm9pZCBWaWRlb0Z1bGxzY3JlZW5Nb2RlbFZpZGVvRWxl
bWVudDo6YWRkQ2xpZW50KFZpZGVvRnVsbHNjcmVlbk1vZGVsQ2xpZW50JiBjbGllbnQpCiB7CiAg
ICAgQVNTRVJUKCFtX2NsaWVudHMuY29udGFpbnMoJmNsaWVudCkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQuaAppbmRleCA1YjAzMDhjYTM2MWVjMWYyZjEzMjRjMmI3YWUyZDM5ZTQ5NjNmZmU2Li40Nzdl
ZTRlMGNhMjk3OTEzNWVkNWZlM2MxNTk1MGExYTA2MmM1OTA0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQuaApAQCAtNTcsNyArNTcsNyBAQCBjbGFzcyBJbnRSZWN0OwogY2xhc3MgRmxvYXRTaXplOwog
Y2xhc3MgVmlkZW9GdWxsc2NyZWVuTW9kZWw7CiBjbGFzcyBWaWRlb0Z1bGxzY3JlZW5DaGFuZ2VP
YnNlcnZlcjsKLSAgICAKKwogY2xhc3MgVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQgZmlu
YWwKICAgICA6IHB1YmxpYyBWaWRlb0Z1bGxzY3JlZW5Nb2RlbENsaWVudAogICAgICwgcHVibGlj
IFBsYXliYWNrU2Vzc2lvbk1vZGVsQ2xpZW50CkBAIC0xODQsNiArMTg0LDggQEAgcHJvdGVjdGVk
OgogICAgIFdURjo6RnVuY3Rpb248dm9pZChib29sKT4gbV9wcmVwYXJlVG9JbmxpbmVDYWxsYmFj
azsKICAgICBSdW5Mb29wOjpUaW1lcjxWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdD4gbV93
YXRjaGRvZ1RpbWVyOwogICAgIEZsb2F0UmVjdCBtX2lubGluZVJlY3Q7CisgICAgUm91dGVTaGFy
aW5nUG9saWN5IG1fcm91dGVTaGFyaW5nUG9saWN5IHsgUm91dGVTaGFyaW5nUG9saWN5OjpEZWZh
dWx0IH07CisgICAgU3RyaW5nIG1fcm91dGluZ0NvbnRleHRVSUQ7CiAgICAgYm9vbCBtX2FsbG93
c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFjayB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3dpcmVsZXNz
VmlkZW9QbGF5YmFja0Rpc2FibGVkIHsgdHJ1ZSB9OwogICAgIGJvb2wgbV9zaG91bGRSZXR1cm5U
b0Z1bGxzY3JlZW5XaGVuU3RvcHBpbmdQaVAgeyBmYWxzZSB9OwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1ZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
Lm1tCmluZGV4IDNmZGNkZTliNDdkMjVjMTU0ZjJjZTIzMjUzMGUwYjA5NzQyNWNjMjUuLjRkYzg4
MzJhY2IyY2FiMjJjMTZhNzQ3ZjZiNGY4YTIzMjc3MjRhYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2lvcy9WaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQubW0KQEAgLTU0Nyw2ICs1NDcsNyBAQCAtICh2b2lkKXN0YXJ0UGljdHVyZUluUGljdHVyZTsK
IC0gKHZvaWQpc3RvcFBpY3R1cmVJblBpY3R1cmU7CiAKIC0gKEJPT0wpcGxheWVyVmlld0NvbnRy
b2xsZXJTaG91bGRIYW5kbGVEb25lQnV0dG9uVGFwOihBVlBsYXllclZpZXdDb250cm9sbGVyICop
cGxheWVyVmlld0NvbnRyb2xsZXI7CistICh2b2lkKXNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFy
aW5nUG9saWN5OihOU1VJbnRlZ2VyKXJvdXRlU2hhcmluZ1BvbGljeSByb3V0aW5nQ29udGV4dFVJ
RDooTlNTdHJpbmcgKilyb3V0aW5nQ29udGV4dFVJRDsKIEBlbmQKIE5TX0FTU1VNRV9OT05OVUxM
X0VORAogCkBAIC01ODAsNiArNTgxLDE2IEBAIC0gKEJPT0wpcGxheWVyVmlld0NvbnRyb2xsZXJT
aG91bGRIYW5kbGVEb25lQnV0dG9uVGFwOihBVlBsYXllclZpZXdDb250cm9sbGVyICopCiAgICAg
cmV0dXJuIFlFUzsKIH0KIAorLSAodm9pZClzZXRXZWJLaXRPdmVycmlkZVJvdXRlU2hhcmluZ1Bv
bGljeTooTlNVSW50ZWdlcilyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0NvbnRleHRVSUQ6KE5T
U3RyaW5nICopcm91dGluZ0NvbnRleHRVSUQKK3sKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBw
dXNoCisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVd1bmtub3duLXByYWdtYXMi
CisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCAiLVd1bmd1YXJkZWQtYXZhaWxhYmls
aXR5LW5ldyIKKyAgICBpZiAoW19hdlBsYXllclZpZXdDb250cm9sbGVyIHJlc3BvbmRzVG9TZWxl
Y3RvcjpAc2VsZWN0b3Ioc2V0V2ViS2l0T3ZlcnJpZGVSb3V0ZVNoYXJpbmdQb2xpY3k6cm91dGlu
Z0NvbnRleHRVSUQ6KV0pCisgICAgICAgIFtfYXZQbGF5ZXJWaWV3Q29udHJvbGxlciBzZXRXZWJL
aXRPdmVycmlkZVJvdXRlU2hhcmluZ1BvbGljeTpyb3V0ZVNoYXJpbmdQb2xpY3kgcm91dGluZ0Nv
bnRleHRVSUQ6cm91dGluZ0NvbnRleHRVSURdOworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHBv
cAorfQorCiAtICh2b2lkKWVudGVyRnVsbFNjcmVlbkFuaW1hdGVkOihCT09MKWFuaW1hdGVkIGNv
bXBsZXRpb25IYW5kbGVyOih2b2lkICheKShCT09MIHN1Y2Nlc3MsIE5TRXJyb3IgKiBfX251bGxh
YmxlIGVycm9yKSljb21wbGV0aW9uSGFuZGxlcgogewogI2lmIFBMQVRGT1JNKFdBVENIT1MpCkBA
IC03NjQsOCArNzc1LDE2IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OnNl
dFZpZGVvRnVsbHNjcmVlbk1vZGVsKFZpZGVvRnVsbHNjcmVlbk1vZGVsCiAKICAgICBtX3ZpZGVv
RnVsbHNjcmVlbk1vZGVsID0gbW9kZWw7CiAKLSAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5Nb2Rl
bCkKKyAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCkgewogICAgICAgICBtX3ZpZGVvRnVs
bHNjcmVlbk1vZGVsLT5hZGRDbGllbnQoKnRoaXMpOworICAgICAgICBtX3ZpZGVvRnVsbHNjcmVl
bk1vZGVsLT5yZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChbdGhpcywgcHJv
dGVjdGVkVGhpcyA9IG1ha2VSZWZQdHIodGhpcyldIChSb3V0ZVNoYXJpbmdQb2xpY3kgcG9saWN5
LCBTdHJpbmcgY29udGV4dFVJRCkgeworICAgICAgICAgICAgbV9yb3V0ZVNoYXJpbmdQb2xpY3kg
PSBwb2xpY3k7CisgICAgICAgICAgICBtX3JvdXRpbmdDb250ZXh0VUlEID0gY29udGV4dFVJRDsK
KworICAgICAgICAgICAgaWYgKG1fcGxheWVyVmlld0NvbnRyb2xsZXIgJiYgIW1fcm91dGluZ0Nv
bnRleHRVSUQuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIFttX3BsYXllclZpZXdDb250cm9s
bGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKW1fcm91
dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOm1fcm91dGluZ0NvbnRleHRVSURdOwor
ICAgICAgICB9KTsKKyAgICB9CiAKICAgICBoYXNWaWRlb0NoYW5nZWQobV92aWRlb0Z1bGxzY3Jl
ZW5Nb2RlbCA/IG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPmhhc1ZpZGVvKCkgOiBmYWxzZSk7CiAg
ICAgdmlkZW9EaW1lbnNpb25zQ2hhbmdlZChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsID8gbV92aWRl
b0Z1bGxzY3JlZW5Nb2RlbC0+dmlkZW9EaW1lbnNpb25zKCkgOiBGbG9hdFNpemUoKSk7CkBAIC0x
MjI5LDYgKzEyNDgsOCBAQCB2b2lkIFZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Ojpkb1Nl
dHVwKCkKICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxlciBzZXREZWxlZ2F0ZTptX3BsYXllclZp
ZXdDb250cm9sbGVyRGVsZWdhdGUuZ2V0KCldOwogICAgIFttX3BsYXllclZpZXdDb250cm9sbGVy
IHNldEFsbG93c1BpY3R1cmVJblBpY3R1cmVQbGF5YmFjazptX2FsbG93c1BpY3R1cmVJblBpY3R1
cmVQbGF5YmFja107CiAgICAgW3BsYXllckNvbnRyb2xsZXIoKSBzZXRQaWN0dXJlSW5QaWN0dXJl
UG9zc2libGU6bV9hbGxvd3NQaWN0dXJlSW5QaWN0dXJlUGxheWJhY2tdOworICAgIGlmICghbV9y
b3V0aW5nQ29udGV4dFVJRC5pc0VtcHR5KCkpCisgICAgICAgIFttX3BsYXllclZpZXdDb250cm9s
bGVyIHNldFdlYktpdE92ZXJyaWRlUm91dGVTaGFyaW5nUG9saWN5OihOU1VJbnRlZ2VyKW1fcm91
dGVTaGFyaW5nUG9saWN5IHJvdXRpbmdDb250ZXh0VUlEOm1fcm91dGluZ0NvbnRleHRVSURdOwog
CiAjaWYgUExBVEZPUk0oV0FUQ0hPUykKICAgICBtX3ZpZXdDb250cm9sbGVyID0gdmlkZW9GdWxs
c2NyZWVuTW9kZWwoKS0+Y3JlYXRlVmlkZW9GdWxsc2NyZWVuVmlld0NvbnRyb2xsZXIobV9wbGF5
ZXJWaWV3Q29udHJvbGxlci5nZXQoKS5hdlBsYXllclZpZXdDb250cm9sbGVyKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0vSVBDL01lc3NhZ2VTZW5kZXIuaCBiL1NvdXJjZS9X
ZWJLaXQvUGxhdGZvcm0vSVBDL01lc3NhZ2VTZW5kZXIuaAppbmRleCBmMjE2MjI5YjRkYjM3YzJl
ZThkNzA0MGJlNjMyY2QzNzY0ZjBlZGIzLi5kOGMzMGUyM2JkNDA1YWU3N2Y2YTQ3MTE1MTRjMDQ0
NDViMWYwMWM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQQy9NZXNzYWdl
U2VuZGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvTWVzc2FnZVNlbmRlci5o
CkBAIC02NSw2ICs2NSwxNCBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBtZXNzYWdlU2VuZGVy
Q29ubmVjdGlvbigpLT5zZW5kU3luYyhXVEZNb3ZlKG1lc3NhZ2UpLCBXVEZNb3ZlKHJlcGx5KSwg
ZGVzdGluYXRpb25JRCwgdGltZW91dCwgc2VuZFN5bmNPcHRpb25zKTsKICAgICB9CiAKKyAgICB0
ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZS4uLiBBcmdzPgorICAgIHZvaWQgc2VuZFdpdGhB
c3luY1JlcGx5KFQmJiBtZXNzYWdlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEFyZ3MuLi4pPiYm
IGFyZ3MsIHVpbnQ2NF90IGRlc3RpbmF0aW9uSUQgPSAwKQorICAgIHsKKyAgICAgICAgQVNTRVJU
KG1lc3NhZ2VTZW5kZXJDb25uZWN0aW9uKCkpOworCisgICAgICAgIG1lc3NhZ2VTZW5kZXJDb25u
ZWN0aW9uKCktPnNlbmRXaXRoQXN5bmNSZXBseShXVEZNb3ZlKG1lc3NhZ2UpLCBXVEZNb3ZlKGFy
Z3MpLCBkZXN0aW5hdGlvbklEKTsKKyAgICB9CisKICAgICB2aXJ0dWFsIGJvb2wgc2VuZE1lc3Nh
Z2Uoc3RkOjp1bmlxdWVfcHRyPEVuY29kZXI+LCBPcHRpb25TZXQ8U2VuZE9wdGlvbj4pOwogCiBw
cml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9W
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaAppbmRleCBmYjAwYjE1M2Y1NmQ2NGM0YmRmOGIx
N2Q5Mjg1MTM3ZmY5Zjg2NjQyLi5hOTI5OWYxYjc0NjliMDNhZDIzNDYyNGJjZDBiMzU2YmM5Mjhi
NjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9W
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaApAQCAtMjgsNiArMjgsNyBAQAogI2lmIChQTEFU
Rk9STShJT1NfRkFNSUxZKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5B
QkxFKFZJREVPX1BSRVNFTlRBVElPTl9NT0RFKSkKIAogI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZl
ci5oIgorI2luY2x1ZGUgPFdlYkNvcmUvQXVkaW9TZXNzaW9uLmg+CiAjaW5jbHVkZSA8V2ViQ29y
ZS9HcmFwaGljc0xheWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVZpZXcuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL1ZpZGVvRnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyLmg+CkBAIC0zNiw2
ICszNyw3IEBACiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291
bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZT
dHJpbmcuaD4KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAjaW5jbHVkZSA8V2ViQ29yZS9W
aWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oPgpAQCAtOTMsNiArOTUsNyBAQCBwcml2YXRl
OgogICAgIHZvaWQgZmFpbGVkVG9FbnRlclBpY3R1cmVJblBpY3R1cmUoKSBmaW5hbDsKICAgICB2
b2lkIHdpbGxFeGl0UGljdHVyZUluUGljdHVyZSgpIGZpbmFsOwogICAgIHZvaWQgZGlkRXhpdFBp
Y3R1cmVJblBpY3R1cmUoKSBmaW5hbDsKKyAgICB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xp
Y3lBbmRDb250ZXh0VUlEKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6Um91dGVTaGFy
aW5nUG9saWN5LCBTdHJpbmcpPiYmKSBmaW5hbDsKIAogICAgIC8vIFZpZGVvRnVsbHNjcmVlbkNo
YW5nZU9ic2VydmVyCiAgICAgdm9pZCByZXF1ZXN0VXBkYXRlSW5saW5lUmVjdCgpIGZpbmFsOwpA
QCAtMTI3LDYgKzEzMCw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGFwcGxpY2F0aW9uRGlkQmVjb21l
QWN0aXZlKCk7CiAgICAgYm9vbCBpc1Zpc2libGUoKSBjb25zdDsKIAorICAgIHZvaWQgcmVxdWVz
dFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQodWludDY0X3QgY29udGV4dElkLCBDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJvdXRlU2hhcmluZ1BvbGljeSwgU3RyaW5nKT4m
Jik7CisKICNpZiBFTkFCTEUoVklERU9fUFJFU0VOVEFUSU9OX01PREUpCiAgICAgYm9vbCBpc1Bs
YXlpbmdWaWRlb0luRW5oYW5jZWRGdWxsc2NyZWVuKCkgY29uc3Q7CiAjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQ
cm94eS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXJQcm94eS5tbQppbmRleCA3ZDNhYmM3NzFlMDU1YjYzMjgwMzBlYzdhY2ViNDA2MjM3OTg4
M2QwLi5hNDM4ZmU3MWE4NmQzMjcyODVhZWY1MjEyZmYzNTYxMjY0MjU2ZDE2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJv
eHkubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvVmlkZW9GdWxsc2NyZWVu
TWFuYWdlclByb3h5Lm1tCkBAIC0yNzQsNiArMjc0LDE0IEBAIHZvaWQgVmlkZW9GdWxsc2NyZWVu
TW9kZWxDb250ZXh0OjpmdWxsc2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUoKQogICAgICAgICBtX21h
bmFnZXItPmZ1bGxzY3JlZW5NYXlSZXR1cm5Ub0lubGluZShtX2NvbnRleHRJZCk7CiB9CiAKK3Zv
aWQgVmlkZW9GdWxsc2NyZWVuTW9kZWxDb250ZXh0OjpyZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5
QW5kQ29udGV4dFVJRChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6OlJvdXRlU2hhcmlu
Z1BvbGljeSwgU3RyaW5nKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3sKKyAgICBpZiAobV9tYW5h
Z2VyKQorICAgICAgICBtX21hbmFnZXItPnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250
ZXh0VUlEKG1fY29udGV4dElkLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CisgICAgZWxz
ZQorICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3k6
OkRlZmF1bHQsIGVtcHR5U3RyaW5nKCkpOworfQorCiB2b2lkIFZpZGVvRnVsbHNjcmVlbk1vZGVs
Q29udGV4dDo6d2lsbEVudGVyUGljdHVyZUluUGljdHVyZSgpCiB7CiAgICAgZm9yIChhdXRvJiBj
bGllbnQgOiBtX2NsaWVudHMpCkBAIC0zOTMsNiArNDAxLDExIEBAIHZvaWQgVmlkZW9GdWxsc2Ny
ZWVuTWFuYWdlclByb3h5OjphcHBsaWNhdGlvbkRpZEJlY29tZUFjdGl2ZSgpCiAgICAgICAgIHN0
ZDo6Z2V0PDE+KHR1cGxlKS0+YXBwbGljYXRpb25EaWRCZWNvbWVBY3RpdmUoKTsKIH0KIAordm9p
ZCBWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lB
bmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChX
ZWJDb3JlOjpSb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyk+JiYgY2FsbGJhY2spCit7CisgICAg
bV9wYWdlLT5zZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OlZpZGVvRnVsbHNjcmVlbk1hbmFn
ZXI6OlJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKGNvbnRleHRJZCksIFdU
Rk1vdmUoY2FsbGJhY2spKTsKK30KKwogVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5OjpNb2Rl
bEludGVyZmFjZVR1cGxlIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eTo6Y3JlYXRlTW9kZWxB
bmRJbnRlcmZhY2UodWludDY0X3QgY29udGV4dElkKQogewogICAgIGF1dG8mIHBsYXliYWNrU2Vz
c2lvbk1vZGVsID0gbV9wbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHktPmVuc3VyZU1vZGVsKGNv
bnRleHRJZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1Zp
ZGVvRnVsbHNjcmVlbk1hbmFnZXIuaAppbmRleCAyY2ZiMzQ1ZWJhNzVjYzlmNWNhMGNlNGU5MDNm
Y2FhMjY3MjZiNWJlLi4xZmYxMTIwMWU4NzEzMTNlMTI3MjRlOWRlMDBmNDhkMzRjN2QxZDdkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVu
TWFuYWdlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxz
Y3JlZW5NYW5hZ2VyLmgKQEAgLTI3LDcgKzI3LDkgQEAKIAogI2lmIChQTEFURk9STShJT1NfRkFN
SUxZKSAmJiBIQVZFKEFWS0lUKSkgfHwgKFBMQVRGT1JNKE1BQykgJiYgRU5BQkxFKFZJREVPX1BS
RVNFTlRBVElPTl9NT0RFKSkKIAorI2luY2x1ZGUgIkNvbm5lY3Rpb24uaCIKICNpbmNsdWRlICJN
ZXNzYWdlUmVjZWl2ZXIuaCIKKyNpbmNsdWRlICJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyTWVzc2Fn
ZXMuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0V2ZW50TGlzdGVuZXIuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL0hUTUxNZWRpYUVsZW1lbnRFbnVtcy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1D
QUxheWVyLmg+CkBAIC0xNTEsNyArMTUzLDggQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgc2V0Vmlk
ZW9MYXllckdyYXZpdHlFbnVtKHVpbnQ2NF90IGNvbnRleHRJZCwgdW5zaWduZWQgZ3Jhdml0eSk7
CiAgICAgdm9pZCBmdWxsc2NyZWVuTW9kZUNoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBXZWJD
b3JlOjpIVE1MTWVkaWFFbGVtZW50RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUpOwogICAgIHZv
aWQgZnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5lKHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vbCBp
c1BhZ2VWaXNpYmxlKTsKLSAgICAKKyAgICB2b2lkIHJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lB
bmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJZCwgTWVzc2FnZXM6OlZpZGVvRnVsbHNjcmVl
bk1hbmFnZXI6OlJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEOjpBc3luY1Jl
cGx5JiYpOworCiAgICAgV2ViUGFnZSogbV9wYWdlOwogICAgIFJlZjxQbGF5YmFja1Nlc3Npb25N
YW5hZ2VyPiBtX3BsYXliYWNrU2Vzc2lvbk1hbmFnZXI7CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpI
VE1MVmlkZW9FbGVtZW50KiwgdWludDY0X3Q+IG1fdmlkZW9FbGVtZW50czsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9jb2NvYS9WaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyLm1l
c3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVl
bk1hbmFnZXIubWVzc2FnZXMuaW4KaW5kZXggZjU2OTAyYzdiOWYwYWM3NWM5NzFiMzA3YzgwYWU2
OTlhMDQ5MjQxMi4uN2M1NmVkMDRhYTgyZjgxZjdjNjc4ZWFjNWQ3MTg4YWZiNjc3MjM2MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1Zp
ZGVvRnVsbHNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW4KQEAgLTM1LDUgKzM1LDYgQEAgbWVzc2Fn
ZXMgLT4gVmlkZW9GdWxsc2NyZWVuTWFuYWdlciB7CiAgICAgU2V0VmlkZW9MYXllckdyYXZpdHlF
bnVtKHVpbnQ2NF90IGNvbnRleHRJZCwgdW5zaWduZWQgZ3Jhdml0eSkKICAgICBGdWxsc2NyZWVu
TW9kZUNoYW5nZWQodWludDY0X3QgY29udGV4dElkLCBXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50
RW51bXM6OlZpZGVvRnVsbHNjcmVlbk1vZGUgdmlkZW9GdWxsc2NyZWVuTW9kZSkKICAgICBGdWxs
c2NyZWVuTWF5UmV0dXJuVG9JbmxpbmUodWludDY0X3QgY29udGV4dElkLCBib29sIGlzUGFnZVZp
c2libGUpCisgICAgUmVxdWVzdFJvdXRlU2hhcmluZ1BvbGljeUFuZENvbnRleHRVSUQodWludDY0
X3QgY29udGV4dElkKSAtPiAoZW51bTp1aW50OF90IFdlYkNvcmU6OlJvdXRlU2hhcmluZ1BvbGlj
eSByb3V0ZVNoYXJpbmdQb2xpY3ksIFN0cmluZyByb3V0aW5nQ29udGV4dFVJRCkgQXN5bmMKIH0K
ICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL2NvY29hL1ZpZGVv
RnVsbHNjcmVlbk1hbmFnZXIubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlk
ZW9GdWxsc2NyZWVuTWFuYWdlci5tbQppbmRleCBlZjllOGEwODI1MGRmMzkxYzUwYTVmZjNhOWEz
OTk4MWUyYWNhNDJkLi43ZjYzMzA5ZjMyYTBhODNhMzhkMGMyODgyNWU4MTczYjAyMjFmMTZlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxsc2NyZWVu
TWFuYWdlci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvY29jb2EvVmlkZW9GdWxs
c2NyZWVuTWFuYWdlci5tbQpAQCAtMzAsNyArMzAsNiBAQAogI2ltcG9ydCAiQXR0YWNobWVudC5o
IgogI2ltcG9ydCAiTG9nZ2luZy5oIgogI2ltcG9ydCAiUGxheWJhY2tTZXNzaW9uTWFuYWdlci5o
IgotI2ltcG9ydCAiVmlkZW9GdWxsc2NyZWVuTWFuYWdlck1lc3NhZ2VzLmgiCiAjaW1wb3J0ICJW
aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHlNZXNzYWdlcy5oIgogI2ltcG9ydCAiV2ViQ29yZUFy
Z3VtZW50Q29kZXJzLmgiCiAjaW1wb3J0ICJXZWJQYWdlLmgiCkBAIC01NTgsNiArNTU3LDExIEBA
IHZvaWQgVmlkZW9GdWxsc2NyZWVuTWFuYWdlcjo6ZnVsbHNjcmVlbk1heVJldHVyblRvSW5saW5l
KHVpbnQ2NF90IGNvbnRleHRJZCwgYm9vCiAgICAgICAgIG1vZGVsLnZpZGVvRWxlbWVudCgpLT5z
Y3JvbGxJbnRvVmlld0lmTm90VmlzaWJsZShmYWxzZSk7CiAgICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHk6OlByZXBhcmVkVG9SZXR1cm5Ub0lubGlu
ZShjb250ZXh0SWQsIHRydWUsIGlubGluZVZpZGVvRnJhbWUoKm1vZGVsLnZpZGVvRWxlbWVudCgp
KSksIG1fcGFnZS0+cGFnZUlEKCkpOwogfQorCit2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6
OnJlcXVlc3RSb3V0ZVNoYXJpbmdQb2xpY3lBbmRDb250ZXh0VUlEKHVpbnQ2NF90IGNvbnRleHRJ
ZCwgTWVzc2FnZXM6OlZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OlJlcXVlc3RSb3V0ZVNoYXJpbmdQ
b2xpY3lBbmRDb250ZXh0VUlEOjpBc3luY1JlcGx5JiYgcmVwbHkpCit7CisgICAgZW5zdXJlTW9k
ZWwoY29udGV4dElkKS5yZXF1ZXN0Um91dGVTaGFyaW5nUG9saWN5QW5kQ29udGV4dFVJRChXVEZN
b3ZlKHJlcGx5KSk7Cit9CiAgICAgCiB2b2lkIFZpZGVvRnVsbHNjcmVlbk1hbmFnZXI6OnNldFZp
ZGVvTGF5ZXJGcmFtZUZlbmNlZCh1aW50NjRfdCBjb250ZXh0SWQsIFdlYkNvcmU6OkZsb2F0UmVj
dCBib3VuZHMsIElQQzo6QXR0YWNobWVudCBmZW5jZVBvcnQpCiB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>