<?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>180210</bug_id>
          
          <creation_ts>2017-11-30 11:33:29 -0800</creation_ts>
          <short_desc>Clear WebSWClientConnection in case storage process IPC connection is closing</short_desc>
          <delta_ts>2017-12-01 10:34:00 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>kangil.han</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1376430</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-11-30 11:33:29 -0800</bug_when>
    <thetext>Clear WebSWClientConnection in case storage process IPC connection is closing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376434</commentid>
    <comment_count>1</comment_count>
      <attachid>328000</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-11-30 11:42:51 -0800</bug_when>
    <thetext>Created attachment 328000
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376436</commentid>
    <comment_count>2</comment_count>
      <attachid>328002</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-11-30 11:46:54 -0800</bug_when>
    <thetext>Created attachment 328002
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376438</commentid>
    <comment_count>3</comment_count>
      <attachid>328000</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-11-30 11:51:33 -0800</bug_when>
    <thetext>Comment on attachment 328000
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        No chnage of behavior.

typo: chnage.

Also, this does not seem to be true as it should fix flaky crashes on the bots.

&gt; Source/WebCore/dom/Document.h:45
&gt; +#include &quot;SWClientConnection.h&quot;

Do we really have to include this here? We should try and minimize new header includes on Document.h as much as possible because of build times.

&gt; Source/WebKit/WebProcess/Storage/WebSWClientConnection.cpp:188
&gt; +        callback({ });

What about all the pending ServiceWorkerJobs? Shouldn&apos;t we reject their promises and clear m_scheduledJobs?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376501</commentid>
    <comment_count>4</comment_count>
      <attachid>328022</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-11-30 14:03:36 -0800</bug_when>
    <thetext>Created attachment 328022
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376576</commentid>
    <comment_count>5</comment_count>
      <attachid>328022</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-11-30 15:43:36 -0800</bug_when>
    <thetext>Comment on attachment 328022
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376581</commentid>
    <comment_count>6</comment_count>
      <attachid>328022</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-30 15:45:53 -0800</bug_when>
    <thetext>Comment on attachment 328022
Patch

Rejecting attachment 328022 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-01&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 328022, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
 Skipping patch.
1 out of 1 hunk ignored
patching file Source/WebKit/WebProcess/Storage/WebSWClientConnection.cpp
patching file Source/WebKit/WebProcess/Storage/WebSWClientConnection.h
patching file Source/WebKit/WebProcess/Storage/WebToStorageProcessConnection.cpp
patching file Source/WebKit/WebProcess/Storage/WebToStorageProcessConnection.h

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

Full output: http://webkit-queues.webkit.org/results/5427171</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376840</commentid>
    <comment_count>7</comment_count>
      <attachid>328101</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-01 09:27:43 -0800</bug_when>
    <thetext>Created attachment 328101
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376895</commentid>
    <comment_count>8</comment_count>
      <attachid>328101</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-01 10:31:53 -0800</bug_when>
    <thetext>Comment on attachment 328101
Patch for landing

Clearing flags on attachment: 328101

Committed r225399: &lt;https://trac.webkit.org/changeset/225399&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376896</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-01 10:31:54 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1376901</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-12-01 10:34:00 -0800</bug_when>
    <thetext>&lt;rdar://problem/35799710&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>328000</attachid>
            <date>2017-11-30 11:42:51 -0800</date>
            <delta_ts>2017-11-30 14:03:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180210-20171130114251.patch</filename>
            <type>text/plain</type>
            <size>10167</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1MzI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTg2NzQ5NDJkMmYyMjVk
NTljM2E5OGRkYjhmZDQzYmFmOWViMzZhMS4uNGE3ZjYyYmNjNjQ3OTVlNjZiMTNmZDEyOTczZjli
ZThhMzZlZTg5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE3LTExLTMwICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBDbGVhciBXZWJTV0NsaWVu
dENvbm5lY3Rpb24gaW4gY2FzZSBzdG9yYWdlIHByb2Nlc3MgSVBDIGNvbm5lY3Rpb24gaXMgY2xv
c2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgw
MjEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
Y2huYWdlIG9mIGJlaGF2aW9yLgorCisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6IEtlZXBpbmcg
YSByZWYgc2luY2Ugb2JqZWN0IG1heSBiZSBkZWxldGVkIG90aGVyd2lzZS4KKwogMjAxNy0xMS0y
OSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50
IGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNjbGllbnRzLWdldApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpp
bmRleCA3ZDI2ZDVhYzg5MGIzZDZiYzY2NTljMzQ5MzQ1MzcxODdhZTkwNjIyLi4yNmJlMDZkYzQw
ZjBiNGYwZjU4OTliZTk1MDQ5Y2QzYjA4MTI4YWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBA
CisyMDE3LTExLTMwICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAg
ICBDbGVhciBXZWJTV0NsaWVudENvbm5lY3Rpb24gaW4gY2FzZSBzdG9yYWdlIHByb2Nlc3MgSVBD
IGNvbm5lY3Rpb24gaXMgY2xvc2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTgwMjEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQ2xlYXIgdGhlIHN3IGNvbm5lY3Rpb24gbWFwcyB3aGVuIGNvbm5lY3Rp
b24gaXMgY2xvc2luZy4KKyAgICAgICAgQ2FsbCByZWxhdGVkIGNvbXBsZXRpb24gaGFuZGxlcnMg
Zm9yIGVhY2ggY29ubmVjdGlvbi4KKworICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJT
V0NsaWVudENvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTV0NsaWVudENvbm5l
Y3Rpb246OmNvbm5lY3Rpb25Ub1NlcnZlckxvc3QpOgorICAgICAgICAqIFdlYlByb2Nlc3MvU3Rv
cmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3Jh
Z2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkQ2xvc2UpOgorICAgICAgICAoV2ViS2l0
OjpXZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbjo6aWRiQ29ubmVjdGlvblRvU2VydmVyRm9y
U2Vzc2lvbik6CisgICAgICAgIChXZWJLaXQ6OldlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9u
OjpzZXJ2aWNlV29ya2VyQ29ubmVjdGlvbkZvclNlc3Npb24pOgorICAgICAgICAqIFdlYlByb2Nl
c3MvU3RvcmFnZS9XZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbi5oOgorCiAyMDE3LTExLTI5
ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQg
aHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2NsaWVudHMtZ2V0CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9E
b2N1bWVudC5oCmluZGV4IDc1NTcxZTE0OTY1ZTQwODI3MjA0ZTgzM2JlMDk2YzZiZGU5OWZmYmQu
LjYxOTdhMjQwMGEwMTYyZThlNzRjMDc0M2RlNWE3MTVlN2QxODg3ZWEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1
bWVudC5oCkBAIC00Miw2ICs0Miw3IEBACiAjaW5jbHVkZSAiUmVmZXJyZXJQb2xpY3kuaCIKICNp
bmNsdWRlICJSZWdpb24uaCIKICNpbmNsdWRlICJSZW5kZXJQdHIuaCIKKyNpbmNsdWRlICJTV0Ns
aWVudENvbm5lY3Rpb24uaCIKICNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCiAj
aW5jbHVkZSAiU3RyaW5nV2l0aERpcmVjdGlvbi5oIgogI2luY2x1ZGUgIlN1cHBsZW1lbnRhYmxl
LmgiCkBAIC0xNTQsNyArMTU1LDYgQEAgY2xhc3MgUmVuZGVyVmlldzsKIGNsYXNzIFJlcXVlc3RB
bmltYXRpb25GcmFtZUNhbGxiYWNrOwogY2xhc3MgU1ZHRG9jdW1lbnRFeHRlbnNpb25zOwogY2xh
c3MgU1ZHU1ZHRWxlbWVudDsKLWNsYXNzIFNXQ2xpZW50Q29ubmVjdGlvbjsKIGNsYXNzIFNjcmlw
dEVsZW1lbnREYXRhOwogY2xhc3MgU2NyaXB0TW9kdWxlTG9hZGVyOwogY2xhc3MgU2NyaXB0UnVu
bmVyOwpAQCAtMTg2Nyw3ICsxODY3LDcgQEAgcHJpdmF0ZToKICAgICBEb2N1bWVudElkZW50aWZp
ZXIgbV9pZGVudGlmaWVyOwogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQotICAgIFNXQ2xp
ZW50Q29ubmVjdGlvbiogbV9zZXJ2aWNlV29ya2VyQ29ubmVjdGlvbiB7IG51bGxwdHIgfTsKKyAg
ICBSZWZQdHI8U1dDbGllbnRDb25uZWN0aW9uPiBtX3NlcnZpY2VXb3JrZXJDb25uZWN0aW9uOwog
I2VuZGlmCiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFn
ZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcAppbmRleCA0ODc0YTdmNWU1Y2M2OTFiMTUy
OTlmYjA1OWJhMmNlMTAzNzU1YzA1Li4xYjM3MTQ4Mzk1YzUwY2FkMjc4Y2E2NzQ3MTM1ZDMxMzky
NDcyYjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJT
V0NsaWVudENvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9y
YWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAKQEAgLTE3Nyw2ICsxNzcsMTcgQEAgdm9pZCBX
ZWJTV0NsaWVudENvbm5lY3Rpb246OnBvc3RNZXNzYWdlVG9TZXJ2aWNlV29ya2VyQ2xpZW50KERv
Y3VtZW50SWRlbnRpZmllcgogICAgIFNXQ2xpZW50Q29ubmVjdGlvbjo6cG9zdE1lc3NhZ2VUb1Nl
cnZpY2VXb3JrZXJDbGllbnQoZGVzdGluYXRpb25Db250ZXh0SWRlbnRpZmllciwgU2VyaWFsaXpl
ZFNjcmlwdFZhbHVlOjphZG9wdChtZXNzYWdlLnZlY3RvcigpKSwgV1RGTW92ZShzb3VyY2UpLCBz
b3VyY2VPcmlnaW4pOwogfQogCit2b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6Y29ubmVjdGlv
blRvU2VydmVyTG9zdCgpCit7CisgICAgYXV0byByZWdpc3RyYXRpb25UYXNrcyA9IFdURk1vdmUo
bV9vbmdvaW5nTWF0Y2hSZWdpc3RyYXRpb25UYXNrcyk7CisgICAgZm9yIChhdXRvJiBjYWxsYmFj
ayA6IHJlZ2lzdHJhdGlvblRhc2tzLnZhbHVlcygpKQorICAgICAgICBjYWxsYmFjayhzdGQ6Om51
bGxvcHQpOworCisgICAgYXV0byBnZXRSZWdpc3RyYXRpb25UYXNrcyA9IFdURk1vdmUobV9vbmdv
aW5nR2V0UmVnaXN0cmF0aW9uc1Rhc2tzKTsKKyAgICBmb3IgKGF1dG8mIGNhbGxiYWNrIDogZ2V0
UmVnaXN0cmF0aW9uVGFza3MudmFsdWVzKCkpCisgICAgICAgIGNhbGxiYWNrKHsgfSk7Cit9CisK
IH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VS
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGll
bnRDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0Ns
aWVudENvbm5lY3Rpb24uaAppbmRleCAyNzc3ZjdhMjU4OGY1Y2NmZGVkNTA5NThmOTZiY2I0MzIz
ZjFjNTkyLi4xZmQyMDYwMDY0NTRlNjQxMWFiZjQ0MTgzNTFjOWQ3Y2ZmNWNiYTE0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rp
b24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENv
bm5lY3Rpb24uaApAQCAtNDYsMTEgKzQ2LDEwIEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3Mg
V2ViU1dPcmlnaW5UYWJsZTsKIGNsYXNzIFdlYlNlcnZpY2VXb3JrZXJQcm92aWRlcjsKIAotY2xh
c3MgV2ViU1dDbGllbnRDb25uZWN0aW9uIDogcHVibGljIFdlYkNvcmU6OlNXQ2xpZW50Q29ubmVj
dGlvbiwgcHVibGljIElQQzo6TWVzc2FnZVNlbmRlciwgcHVibGljIElQQzo6TWVzc2FnZVJlY2Vp
dmVyIHsKK2NsYXNzIFdlYlNXQ2xpZW50Q29ubmVjdGlvbiBmaW5hbCA6IHB1YmxpYyBXZWJDb3Jl
OjpTV0NsaWVudENvbm5lY3Rpb24sIHB1YmxpYyBJUEM6Ok1lc3NhZ2VTZW5kZXIsIHB1YmxpYyBJ
UEM6Ok1lc3NhZ2VSZWNlaXZlciB7CiBwdWJsaWM6Ci0gICAgV2ViU1dDbGllbnRDb25uZWN0aW9u
KElQQzo6Q29ubmVjdGlvbiYsIFBBTDo6U2Vzc2lvbklEKTsKLSAgICBXZWJTV0NsaWVudENvbm5l
Y3Rpb24oY29uc3QgV2ViU1dDbGllbnRDb25uZWN0aW9uJikgPSBkZWxldGU7Ci0gICAgfldlYlNX
Q2xpZW50Q29ubmVjdGlvbigpIGZpbmFsOworICAgIHN0YXRpYyBSZWY8V2ViU1dDbGllbnRDb25u
ZWN0aW9uPiBjcmVhdGUoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uLCBQQUw6OlNlc3Npb25J
RCBzZXNzaW9uSUQpIHsgcmV0dXJuIGFkb3B0UmVmKCpuZXcgV2ViU1dDbGllbnRDb25uZWN0aW9u
IHsgY29ubmVjdGlvbiwgc2Vzc2lvbklEIH0pOyB9CisgICAgfldlYlNXQ2xpZW50Q29ubmVjdGlv
bigpOwogCiAgICAgV2ViQ29yZTo6U1dTZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciBzZXJ2ZXJD
b25uZWN0aW9uSWRlbnRpZmllcigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1faWRlbnRpZmllcjsg
fQogCkBAIC02NSw3ICs2NCwxMSBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHBvc3RNZXNzYWdlVG9T
ZXJ2aWNlV29ya2VyQ2xpZW50KFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciBkZXN0aW5hdGlv
bkNvbnRleHRJZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmIG1lc3NhZ2UsIFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJEYXRhJiYgc291cmNlLCBjb25zdCBTdHJpbmcmIHNvdXJjZU9y
aWdpbik7CiAKKyAgICB2b2lkIGNvbm5lY3Rpb25Ub1NlcnZlckxvc3QoKTsKKwogcHJpdmF0ZToK
KyAgICBXZWJTV0NsaWVudENvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJiwgUEFMOjpTZXNzaW9u
SUQpOworCiAgICAgdm9pZCBzY2hlZHVsZUpvYkluU2VydmVyKGNvbnN0IFdlYkNvcmU6OlNlcnZp
Y2VXb3JrZXJKb2JEYXRhJikgZmluYWw7CiAgICAgdm9pZCBmaW5pc2hGZXRjaGluZ1NjcmlwdElu
U2VydmVyKGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJGZXRjaFJlc3VsdCYpIGZpbmFsOwog
ICAgIHZvaWQgcG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZShXZWJDb3JlOjpT
ZXJ2aWNlV29ya2VySWRlbnRpZmllciBkZXN0aW5hdGlvbklkZW50aWZpZXIsIFJlZjxXZWJDb3Jl
OjpTZXJpYWxpemVkU2NyaXB0VmFsdWU+JiYsIFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciBz
b3VyY2VDb250ZXh0SWRlbnRpZmllciwgV2ViQ29yZTo6U2VydmljZVdvcmtlckNsaWVudERhdGEm
JiBzb3VyY2UpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1N0b3JhZ2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCmluZGV4
IGI1ZTlmN2Q5Y2YyYTE0ODJmNzA5NWU3YjJmMTI1NGU0ZWQ3ZmMxOTEuLjlhNjI0OTJkZTQ4YzA5
ZjRjNTJmMWU1MmU1MTM3OGIyYjcyNmRkYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVj
dGlvbi5jcHAKQEAgLTk1LDYgKzk1LDEzIEBAIHZvaWQgV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5l
Y3Rpb246OmRpZENsb3NlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbikKICAgICBtX3dlYklE
QkNvbm5lY3Rpb25zQnlJZGVudGlmaWVyLmNsZWFyKCk7CiAgICAgbV93ZWJJREJDb25uZWN0aW9u
c0J5U2Vzc2lvbi5jbGVhcigpOwogI2VuZGlmCisjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQor
ICAgIGZvciAoYXV0byYgY29ubmVjdGlvbiA6IG1fc3dDb25uZWN0aW9uc0J5U2Vzc2lvbi52YWx1
ZXMoKSkKKyAgICAgICAgY29ubmVjdGlvbi0+Y29ubmVjdGlvblRvU2VydmVyTG9zdCgpOworCisg
ICAgbV9zd0Nvbm5lY3Rpb25zQnlJZGVudGlmaWVyLmNsZWFyKCk7CisgICAgbV9zd0Nvbm5lY3Rp
b25zQnlTZXNzaW9uLmNsZWFyKCk7CisjZW5kaWYKIAogICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLndlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uQ2xvc2VkKHRoaXMpOwogfQpAQCAtMTA0
LDMwICsxMTEsMzAgQEAgdm9pZCBXZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVj
ZWl2ZUludmFsaWRNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIEkKIH0KIAogI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotV2ViSURCQ29ubmVjdGlvblRvU2VydmVyJiBXZWJUb1N0b3JhZ2VQ
cm9jZXNzQ29ubmVjdGlvbjo6aWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQ
QUw6OlNlc3Npb25JRCYgc2Vzc2lvbklEKQorV2ViSURCQ29ubmVjdGlvblRvU2VydmVyJiBXZWJU
b1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbjo6aWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lv
bihTZXNzaW9uSUQgc2Vzc2lvbklEKQogewotICAgIGF1dG8gcmVzdWx0ID0gbV93ZWJJREJDb25u
ZWN0aW9uc0J5U2Vzc2lvbi5hZGQoc2Vzc2lvbklELCBudWxscHRyKTsKLSAgICBpZiAocmVzdWx0
LmlzTmV3RW50cnkpIHsKLSAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IFdlYklEQkNv
bm5lY3Rpb25Ub1NlcnZlcjo6Y3JlYXRlKHNlc3Npb25JRCk7Ci0gICAgICAgIEFTU0VSVCghbV93
ZWJJREJDb25uZWN0aW9uc0J5SWRlbnRpZmllci5jb250YWlucyhyZXN1bHQuaXRlcmF0b3ItPnZh
bHVlLT5pZGVudGlmaWVyKCkpKTsKLSAgICAgICAgbV93ZWJJREJDb25uZWN0aW9uc0J5SWRlbnRp
Zmllci5zZXQocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+aWRlbnRpZmllcigpLCByZXN1bHQuaXRl
cmF0b3ItPnZhbHVlKTsKLSAgICB9CisgICAgcmV0dXJuICptX3dlYklEQkNvbm5lY3Rpb25zQnlT
ZXNzaW9uLmVuc3VyZShzZXNzaW9uSUQsIFsmXSB7CisgICAgICAgIGF1dG8gY29ubmVjdGlvbiA9
IFdlYklEQkNvbm5lY3Rpb25Ub1NlcnZlcjo6Y3JlYXRlKHNlc3Npb25JRCk7CisKKyAgICAgICAg
YXV0byByZXN1bHQgPSBtX3dlYklEQkNvbm5lY3Rpb25zQnlJZGVudGlmaWVyLmFkZChjb25uZWN0
aW9uLT5pZGVudGlmaWVyKCksIGNvbm5lY3Rpb24uY29weVJlZigpKTsKKyAgICAgICAgQVNTRVJU
X1VOVVNFRChyZXN1bHQsIHJlc3VsdC5pc05ld0VudHJ5KTsKIAotICAgIHJldHVybiAqcmVzdWx0
Lml0ZXJhdG9yLT52YWx1ZTsKKyAgICAgICAgcmV0dXJuIGNvbm5lY3Rpb247CisgICAgfSkuaXRl
cmF0b3ItPnZhbHVlOwogfQogI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiBX
ZWJTV0NsaWVudENvbm5lY3Rpb24mIFdlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uOjpzZXJ2
aWNlV29ya2VyQ29ubmVjdGlvbkZvclNlc3Npb24oU2Vzc2lvbklEIHNlc3Npb25JRCkKIHsKLSAg
ICBhdXRvIHJlc3VsdCA9IG1fc3dDb25uZWN0aW9uc0J5U2Vzc2lvbi5hZGQoc2Vzc2lvbklELCBu
dWxscHRyKTsKLSAgICBpZiAocmVzdWx0LmlzTmV3RW50cnkpIHsKLSAgICAgICAgcmVzdWx0Lml0
ZXJhdG9yLT52YWx1ZSA9IHN0ZDo6bWFrZV91bmlxdWU8V2ViU1dDbGllbnRDb25uZWN0aW9uPiht
X2Nvbm5lY3Rpb24uZ2V0KCksIHNlc3Npb25JRCk7Ci0gICAgICAgIEFTU0VSVCghbV9zd0Nvbm5l
Y3Rpb25zQnlJZGVudGlmaWVyLmNvbnRhaW5zKHJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPnNlcnZl
ckNvbm5lY3Rpb25JZGVudGlmaWVyKCkpKTsKLSAgICAgICAgbV9zd0Nvbm5lY3Rpb25zQnlJZGVu
dGlmaWVyLnNldChyZXN1bHQuaXRlcmF0b3ItPnZhbHVlLT5zZXJ2ZXJDb25uZWN0aW9uSWRlbnRp
ZmllcigpLCByZXN1bHQuaXRlcmF0b3ItPnZhbHVlLmdldCgpKTsKLSAgICB9CisgICAgcmV0dXJu
ICptX3N3Q29ubmVjdGlvbnNCeVNlc3Npb24uZW5zdXJlKHNlc3Npb25JRCwgWyZdIHsKKyAgICAg
ICAgYXV0byBjb25uZWN0aW9uID0gV2ViU1dDbGllbnRDb25uZWN0aW9uOjpjcmVhdGUobV9jb25u
ZWN0aW9uLCBzZXNzaW9uSUQpOworCisgICAgICAgIGF1dG8gcmVzdWx0ID0gbV9zd0Nvbm5lY3Rp
b25zQnlJZGVudGlmaWVyLmFkZChjb25uZWN0aW9uLT5zZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmll
cigpLCBjb25uZWN0aW9uLnB0cigpKTsKKyAgICAgICAgQVNTRVJUX1VOVVNFRChyZXN1bHQsIHJl
c3VsdC5pc05ld0VudHJ5KTsKIAotICAgIHJldHVybiAqcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZTsK
KyAgICAgICAgcmV0dXJuIGNvbm5lY3Rpb247CisgICAgfSkuaXRlcmF0b3ItPnZhbHVlOwogfQog
I2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dl
YlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
U3RvcmFnZS9XZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbi5oCmluZGV4IGYxNDRhOTIwMzRl
NTBkZGY2MThhYmViMTkzNGM5MWRkOGVjNTRjYWEuLjZhNDg2ZTIxMzRhMWY1YjAyNjFjNDczZGY5
ODNiOTEyY2IzOWZkZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9y
YWdlL1dlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1N0b3JhZ2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uaApAQCAtNTEs
NyArNTEsNyBAQCBwdWJsaWM6CiAgICAgSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9uKCkgeyBy
ZXR1cm4gbV9jb25uZWN0aW9uLmdldCgpOyB9CiAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLSAgICBXZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXImIGlkYkNvbm5lY3Rpb25Ub1NlcnZlckZv
clNlc3Npb24oY29uc3QgUEFMOjpTZXNzaW9uSUQmKTsKKyAgICBXZWJJREJDb25uZWN0aW9uVG9T
ZXJ2ZXImIGlkYkNvbm5lY3Rpb25Ub1NlcnZlckZvclNlc3Npb24oUEFMOjpTZXNzaW9uSUQpOwog
I2VuZGlmCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgIFdlYlNXQ2xpZW50Q29ubmVj
dGlvbiYgc2VydmljZVdvcmtlckNvbm5lY3Rpb25Gb3JTZXNzaW9uKFBBTDo6U2Vzc2lvbklEKTsK
QEAgLTc3LDcgKzc3LDcgQEAgcHJpdmF0ZToKICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0Vf
V09SS0VSKQotICAgIEhhc2hNYXA8UEFMOjpTZXNzaW9uSUQsIHN0ZDo6dW5pcXVlX3B0cjxXZWJT
V0NsaWVudENvbm5lY3Rpb24+PiBtX3N3Q29ubmVjdGlvbnNCeVNlc3Npb247CisgICAgSGFzaE1h
cDxQQUw6OlNlc3Npb25JRCwgUmVmUHRyPFdlYlNXQ2xpZW50Q29ubmVjdGlvbj4+IG1fc3dDb25u
ZWN0aW9uc0J5U2Vzc2lvbjsKICAgICBIYXNoTWFwPFdlYkNvcmU6OlNXU2VydmVyQ29ubmVjdGlv
bklkZW50aWZpZXIsIFdlYlNXQ2xpZW50Q29ubmVjdGlvbio+IG1fc3dDb25uZWN0aW9uc0J5SWRl
bnRpZmllcjsKICNlbmRpZgogfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>328002</attachid>
            <date>2017-11-30 11:46:54 -0800</date>
            <delta_ts>2017-11-30 12:14:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180210-20171130114653.patch</filename>
            <type>text/plain</type>
            <size>35716</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1MzI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDQ4ZjFmNjU0ZWMzOTJmMmE3NjFlZDNl
MjU2MDNhZDBiZWM0MGI1YmIuLmI4YmU4MGYwNTIzMmRhMzIxNDgwN2MxOTEzOTBhY2I0MmY0ZGM5
ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTctMTEtMjkgIFlvdWVubiBGYWJsZXQgIDx5b3Vl
bm5AYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBodHRwczovL3czYy5naXRodWIuaW8v
U2VydmljZVdvcmtlci8jY2xpZW50cy1nZXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE4MDE2NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogd3RmL3RleHQvU3RyaW5nVmlldy5oOgorICAgICAgICAoV1RG
OjpTdHJpbmdWaWV3Ojp0b1VJbnQ2NFN0cmljdCBjb25zdCk6CisgICAgICAgICogd3RmL3RleHQv
V1RGU3RyaW5nLmg6CisKIDIwMTctMTEtMjkgIEpGIEJhc3RpZW4gIDxqZmJhc3RpZW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIFdURiAvIGJtYWxsb2M6IGRvbid0IHdyaXRlIHRvIDB4YmJhZGJlZWYg
d2hlbiBBU0FOIGlzIGxvb2tpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBkOTFhZWIyZDZjOTMyNjUwYzQ2NDAy
MWU3ZTMwNjk1YWFiMGQwMDU5Li5hODY3NDk0MmQyZjIyNWQ1OWMzYTk4ZGRiOGZkNDNiYWY5ZWIz
NmExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMTctMTEtMjkgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBodHRwczovL3czYy5n
aXRodWIuaW8vU2VydmljZVdvcmtlci8jY2xpZW50cy1nZXQKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDE2NworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IGh0dHAvdGVzdHMvd29ya2Vycy9zZXJ2
aWNlL3NlcnZpY2V3b3JrZXJjbGllbnRzLWdldC5odHRwcy5odG1sCisKKyAgICAgICAgSW1wbGVt
ZW50IGNsaWVudHMgZ2V0IGJ5IGhhdmluZyBzZXJ2aWNlIHdvcmtlciBjbGllbnRzIGRvIHRoZSBm
b2xsb3dpbmc6CisgICAgICAgIC0gR28gdG8gbWFpbiB0aHJlYWQgdG8gcXVlcnkgdGhlIFNXQ2xp
ZW50Q29ubmVjdGlvbiBmb3IgZ2V0dGluZyB0aGUgY2xpZW50LgorICAgICAgICAtIFNXQ2xpZW50
Q29ubmVjdGlvbiByZXF1ZXN0cyBpdCB0aHJvdWdoIElQQyB0byBTdG9yYWdlUHJvY2VzcyBTV1Nl
cnZlci4KKyAgICAgICAgLSBTV1NlcnZlciBsb29rcyBhdCBpdHMgY2xpZW50IG1hcCBhbmQgcmV0
dXJucyBjbGllbnQgZGF0YSBiYXNlZCBvbiB0aGUgZ2l2ZW4gaWRlbnRpZmllci4KKyAgICAgICAg
LSBTV0NsaWVudENvbm5lY3Rpb24gc2VuZHMgaXQgYmFjayB0byB0aGUgcmlnaHQgY2xpZW50cyBm
b3IgcmVzb2x2aW5nIHRoZSBwcm9taXNlLgorCisgICAgICAgIElkZW50aWZpZXIgaXMgcGFyc2Vk
IGF0IHNlcnZpY2Ugd29ya2VyIHByb2Nlc3MgbGV2ZWwuCisKKyAgICAgICAgKiB3b3JrZXJzL3Nl
cnZpY2UvU2VydmljZVdvcmtlckNsaWVudElkZW50aWZpZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6
OlNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyOjpmcm9tU3RyaW5nKToKKyAgICAgICAgKiB3
b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckNsaWVudHMuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6U2VydmljZVdvcmtlckNsaWVudHM6OlNlcnZpY2VXb3JrZXJDbGllbnRzKToKKyAgICAgICAg
KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnRzOjpnZXQpOgorICAgICAgICAqIHdvcmtlcnMv
c2VydmljZS9TZXJ2aWNlV29ya2VyQ2xpZW50cy5oOgorICAgICAgICAoV2ViQ29yZTo6U2Vydmlj
ZVdvcmtlckNsaWVudHM6OmNyZWF0ZSk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL2NvbnRl
eHQvU1dDb250ZXh0TWFuYWdlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV0NvbnRleHRNYW5h
Z2VyOjpwb3N0VGFza1RvU2VydmljZVdvcmtlcik6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNl
L2NvbnRleHQvU1dDb250ZXh0TWFuYWdlci5oOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9z
ZXJ2ZXIvU1dTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OmdldENsaWVu
dEZyb21JZCk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oOgor
ICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0
aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbjo6
Y2xpZW50RnJvbUlkKToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVy
VG9Db250ZXh0Q29ubmVjdGlvbi5oOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIv
U1dTZXJ2ZXJXb3JrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6Om9y
aWdpbiBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcldvcmtlcjo6Y2xpZW50RnJv
bUlkKToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmg6
CisKIDIwMTctMTEtMzAgIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAg
ICAgICAgIFtDb29yZEdyYXBoaWNzXSBNb3ZlIENvb3JkaW5hdGVkR3JhcGhpY3NMYXllciBwYWlu
dGluZyBiZWhpbmQgTmljb3NpYTo6UGFpbnRpbmdFbmdpbmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNmRjN2U2Mzg3
N2NiNjc1ZGI5MzA4Yzg4MjcxNDMyMjI1Yjk4YWI4Yi4uN2QyNmQ1YWM4OTBiM2Q2YmM2NjU5YzM0
OTM0NTM3MTg3YWU5MDYyMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAxNy0xMS0yOSAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgSW1wbGVtZW50IGh0
dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNjbGllbnRzLWdldAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgwMTY3CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIElQQyBwbHVtYmVyeSBm
b3IgY2xpZW50RnJvbUlkIGJldHdlZW4gU2VydmljZVdvcmtlciBwcm9jZXNzIGFuZCBTdG9yYWdl
IHByb2Nlc3MuCisKKyAgICAgICAgKiBTdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNX
U2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXU2Vy
dmVyVG9Db250ZXh0Q29ubmVjdGlvbjo6Y2xpZW50RnJvbUlkQ29tcGxldGVkKToKKyAgICAgICAg
KiBTdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVj
dGlvbi5oOgorICAgICAgICAqIFN0b3JhZ2VQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2
ZXJUb0NvbnRleHRDb25uZWN0aW9uLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
U3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjpjbGllbnRGcm9tSWQpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6Y2xpZW50RnJvbUlkQ29t
cGxldGVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdl
ckNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0
TWFuYWdlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW46CisKIDIwMTctMTEtMzAgIFphbiBEb2JlcnNl
ayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFtDb29yZEdyYXBoaWNzXSBNb3Zl
IENvb3JkaW5hdGVkR3JhcGhpY3NMYXllciBwYWludGluZyBiZWhpbmQgTmljb3NpYTo6UGFpbnRp
bmdFbmdpbmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nVmlldy5oIGIv
U291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdWaWV3LmgKaW5kZXggNDhmNzhkZDRmODQxNzMxYzY2
NDk5NzQwODg2ODZmYmFhZDI1OGU0OS4uYzg4MTE4YjY2N2EzMjYwYjBhNWM0NWRhMjg3YmEyNThi
NmIyYmQ1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdWaWV3LmgKKysr
IGIvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdWaWV3LmgKQEAgLTI5LDYgKzI5LDcgQEAKICNp
bmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDx1bmljb2RlL3V0eXBlcy5oPgogI2luY2x1ZGUg
PHd0Zi9Gb3J3YXJkLmg+CisjaW5jbHVkZSA8d3RmL09wdGlvbmFsLmg+CiAjaW5jbHVkZSA8d3Rm
L1JldGFpblB0ci5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KICNpbmNsdWRlIDx3dGYvdGV4
dC9DU3RyaW5nLmg+CkBAIC0xNDYsNiArMTQ3LDcgQEAgcHVibGljOgogICAgIGludCB0b0ludCgp
IGNvbnN0OwogICAgIGludCB0b0ludChib29sJiBpc1ZhbGlkKSBjb25zdDsKICAgICBpbnQgdG9J
bnRTdHJpY3QoYm9vbCYgaXNWYWxpZCkgY29uc3Q7CisgICAgc3RkOjpvcHRpb25hbDx1aW50NjRf
dD4gdG9VSW50NjRTdHJpY3QoKSBjb25zdDsKICAgICBmbG9hdCB0b0Zsb2F0KGJvb2wmIGlzVmFs
aWQpIGNvbnN0OwogCiAgICAgc3RhdGljIHZvaWQgaW52YWxpZGF0ZShjb25zdCBTdHJpbmdJbXBs
Jik7CkBAIC01MjMsNiArNTI1LDEzIEBAIGlubGluZSBpbnQgU3RyaW5nVmlldzo6dG9JbnRTdHJp
Y3QoYm9vbCYgaXNWYWxpZCkgY29uc3QKICAgICByZXR1cm4gY2hhcmFjdGVyc1RvSW50U3RyaWN0
KGNoYXJhY3RlcnMxNigpLCBtX2xlbmd0aCwgJmlzVmFsaWQpOwogfQogCitpbmxpbmUgc3RkOjpv
cHRpb25hbDx1aW50NjRfdD4gU3RyaW5nVmlldzo6dG9VSW50NjRTdHJpY3QoKSBjb25zdAorewor
ICAgIGJvb2wgaXNWYWxpZDsKKyAgICB1aW50NjRfdCByZXN1bHQgPSBpczhCaXQoKSA/IGNoYXJh
Y3RlcnNUb1VJbnQ2NFN0cmljdChjaGFyYWN0ZXJzOCgpLCBtX2xlbmd0aCwgJmlzVmFsaWQpIDog
Y2hhcmFjdGVyc1RvVUludDY0U3RyaWN0KGNoYXJhY3RlcnMxNigpLCBtX2xlbmd0aCwgJmlzVmFs
aWQpOworICAgIHJldHVybiBpc1ZhbGlkID8gc3RkOjptYWtlX29wdGlvbmFsKHJlc3VsdCkgOiBz
dGQ6Om51bGxvcHQ7Cit9CisKIGlubGluZSBTdHJpbmcgU3RyaW5nVmlldzo6dG9TdHJpbmdXaXRo
b3V0Q29weWluZygpIGNvbnN0CiB7CiAgICAgaWYgKGlzOEJpdCgpKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3Ry
aW5nLmgKaW5kZXggYzhhNGRkNmZhNDkwYTZlODRkNzk1NzUzYTYyOWUzMGQ1OWVlNThhYy4uZDJi
OTliZjI1ZTNjODEwMWQzODM4NTQ4ZTNjZDBiOTlkYWQ5MDk5NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dURi93dGYvdGV4dC9XVEZTdHJpbmcuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0
cmluZy5oCkBAIC00Niw4ICs0Niw4IEBAIFdURl9FWFBPUlRfU1RSSU5HX0FQSSB1bnNpZ25lZCBj
aGFyYWN0ZXJzVG9VSW50U3RyaWN0KGNvbnN0IExDaGFyKiwgc2l6ZV90LCBib29sCiBXVEZfRVhQ
T1JUX1NUUklOR19BUEkgdW5zaWduZWQgY2hhcmFjdGVyc1RvVUludFN0cmljdChjb25zdCBVQ2hh
ciosIHNpemVfdCwgYm9vbCogb2sgPSBudWxscHRyLCBpbnQgYmFzZSA9IDEwKTsKIGludDY0X3Qg
Y2hhcmFjdGVyc1RvSW50NjRTdHJpY3QoY29uc3QgTENoYXIqLCBzaXplX3QsIGJvb2wqIG9rID0g
bnVsbHB0ciwgaW50IGJhc2UgPSAxMCk7CiBpbnQ2NF90IGNoYXJhY3RlcnNUb0ludDY0U3RyaWN0
KGNvbnN0IFVDaGFyKiwgc2l6ZV90LCBib29sKiBvayA9IG51bGxwdHIsIGludCBiYXNlID0gMTAp
OwotdWludDY0X3QgY2hhcmFjdGVyc1RvVUludDY0U3RyaWN0KGNvbnN0IExDaGFyKiwgc2l6ZV90
LCBib29sKiBvayA9IG51bGxwdHIsIGludCBiYXNlID0gMTApOwotdWludDY0X3QgY2hhcmFjdGVy
c1RvVUludDY0U3RyaWN0KGNvbnN0IFVDaGFyKiwgc2l6ZV90LCBib29sKiBvayA9IG51bGxwdHIs
IGludCBiYXNlID0gMTApOworV1RGX0VYUE9SVF9TVFJJTkdfQVBJIHVpbnQ2NF90IGNoYXJhY3Rl
cnNUb1VJbnQ2NFN0cmljdChjb25zdCBMQ2hhciosIHNpemVfdCwgYm9vbCogb2sgPSBudWxscHRy
LCBpbnQgYmFzZSA9IDEwKTsKK1dURl9FWFBPUlRfU1RSSU5HX0FQSSB1aW50NjRfdCBjaGFyYWN0
ZXJzVG9VSW50NjRTdHJpY3QoY29uc3QgVUNoYXIqLCBzaXplX3QsIGJvb2wqIG9rID0gbnVsbHB0
ciwgaW50IGJhc2UgPSAxMCk7CiBpbnRwdHJfdCBjaGFyYWN0ZXJzVG9JbnRQdHJTdHJpY3QoY29u
c3QgTENoYXIqLCBzaXplX3QsIGJvb2wqIG9rID0gbnVsbHB0ciwgaW50IGJhc2UgPSAxMCk7CiBp
bnRwdHJfdCBjaGFyYWN0ZXJzVG9JbnRQdHJTdHJpY3QoY29uc3QgVUNoYXIqLCBzaXplX3QsIGJv
b2wqIG9rID0gbnVsbHB0ciwgaW50IGJhc2UgPSAxMCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllci5oIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlm
aWVyLmgKaW5kZXggNjI4NTVkNTRiY2M3MDE5MTdkMWI4ZmIyNGEzOTc2M2RkM2FiNTZhOC4uNjJh
Yzg1ZTYwMDBhYzMwZGJjZWY3ZjUwZjU2OWNhZjdmYTc5OTJiYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJDbGllbnRJ
ZGVudGlmaWVyLmgKQEAgLTQwLDYgKzQwLDcgQEAgc3RydWN0IFNlcnZpY2VXb3JrZXJDbGllbnRJ
ZGVudGlmaWVyIHsKICAgICB1bnNpZ25lZCBoYXNoKCkgY29uc3Q7CiAKICAgICBTdHJpbmcgdG9T
dHJpbmcoKSBjb25zdCB7IHJldHVybiBTdHJpbmc6Om51bWJlcihzZXJ2ZXJDb25uZWN0aW9uSWRl
bnRpZmllci50b1VJbnQ2NCgpKSArICItIiArICBTdHJpbmc6Om51bWJlcihjb250ZXh0SWRlbnRp
Zmllci50b1VJbnQ2NCgpKTsgfQorICAgIHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3Jr
ZXJDbGllbnRJZGVudGlmaWVyPiBmcm9tU3RyaW5nKGNvbnN0IFN0cmluZyYpOwogCiAgICAgdGVt
cGxhdGU8Y2xhc3MgRW5jb2Rlcj4gdm9pZCBlbmNvZGUoRW5jb2RlciYpIGNvbnN0OwogICAgIHRl
bXBsYXRlPGNsYXNzIERlY29kZXI+IHN0YXRpYyBzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3JrZXJD
bGllbnRJZGVudGlmaWVyPiBkZWNvZGUoRGVjb2RlciYpOwpAQCAtNTAsNiArNTEsMjMgQEAgaW5s
aW5lIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllciYg
YSwgY29uc3QgU2VydmljZVdvcmsKICAgICByZXR1cm4gYS5zZXJ2ZXJDb25uZWN0aW9uSWRlbnRp
ZmllciA9PSBiLnNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyICYmICBhLmNvbnRleHRJZGVudGlm
aWVyID09IGIuY29udGV4dElkZW50aWZpZXI7CiB9CiAKK2lubGluZSBzdGQ6Om9wdGlvbmFsPFNl
cnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyPiBTZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmll
cjo6ZnJvbVN0cmluZyhjb25zdCBTdHJpbmcmIHN0cmluZykKK3sKKyAgICBTZXJ2aWNlV29ya2Vy
Q2xpZW50SWRlbnRpZmllciBjbGllbnRJZGVudGlmaWVyOworCisgICAgdW5zaWduZWQgY291bnRl
ciA9IDA7CisgICAgZm9yIChhdXRvIGl0ZW0gOiBTdHJpbmdWaWV3IHsgc3RyaW5nIH0uc3BsaXQo
Jy0nKSkgeworICAgICAgICBhdXRvIGlkZW50aWZpZXIgPSBpdGVtLnRvVUludDY0U3RyaWN0KCk7
CisgICAgICAgIGlmICghaWRlbnRpZmllcikKKyAgICAgICAgICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7CisgICAgICAgIGlmICghY291bnRlcisrKQorICAgICAgICAgICAgY2xpZW50SWRlbnRpZmll
ci5zZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciA9IG1ha2VPYmplY3RJZGVudGlmaWVyPFNXU2Vy
dmVyQ29ubmVjdGlvbklkZW50aWZpZXJUeXBlPihpZGVudGlmaWVyLnZhbHVlKCkpOworICAgICAg
ICBlbHNlIGlmIChjb3VudGVyID09IDIpCisgICAgICAgICAgICBjbGllbnRJZGVudGlmaWVyLmNv
bnRleHRJZGVudGlmaWVyID0gbWFrZU9iamVjdElkZW50aWZpZXI8RG9jdW1lbnRJZGVudGlmaWVy
VHlwZT4oaWRlbnRpZmllci52YWx1ZSgpKTsKKyAgICB9CisgICAgcmV0dXJuIChjb3VudGVyID09
IDIpID8gc3RkOjptYWtlX29wdGlvbmFsKFdURk1vdmUoY2xpZW50SWRlbnRpZmllcikpIDogc3Rk
OjpudWxsb3B0OworfQorCiB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPgogdm9pZCBTZXJ2aWNlV29y
a2VyQ2xpZW50SWRlbnRpZmllcjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIpIGNvbnN0CiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckNs
aWVudHMuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJD
bGllbnRzLmNwcAppbmRleCBhMTQ1NTdlNmM0NDA4NzNkMTc3ZTdjOTZhZmFlYTI1OGM5ODMzYTBl
Li43NWM2YzA1ZjZlOTcyNTJkYzA1ZmIwNGQwYjJhNzFmNTdjODFmMDc3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckNsaWVudHMuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyQ2xpZW50cy5j
cHAKQEAgLTI5LDEwICsyOSwxMiBAQAogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJDbGllbnRzLmgi
CiAKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgorI2luY2x1ZGUgIkpTU2Vydmlj
ZVdvcmtlcldpbmRvd0NsaWVudC5oIgorI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVNlcnZpY2VXb3JrZXJDbGllbnRzOjpTZXJ2
aWNlV29ya2VyQ2xpZW50cyhTY3JpcHRFeGVjdXRpb25Db250ZXh0JiBjb250ZXh0KQorU2Vydmlj
ZVdvcmtlckNsaWVudHM6OlNlcnZpY2VXb3JrZXJDbGllbnRzKFNlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZSYgY29udGV4dCkKICAgICA6IEFjdGl2ZURPTU9iamVjdCgmY29udGV4dCkKIHsKICAgICBz
dXNwZW5kSWZOZWVkZWQoKTsKQEAgLTQ4LDEwICs1MCw3MyBAQCBib29sIFNlcnZpY2VXb3JrZXJD
bGllbnRzOjpjYW5TdXNwZW5kRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkgY29uc3QKICAgICByZXR1
cm4gIWhhc1BlbmRpbmdBY3Rpdml0eSgpOwogfQogCit2b2lkIFNlcnZpY2VXb3JrZXJDbGllbnRz
OjpnZXRDb21wbGV0ZWQoU2VydmljZVdvcmtlckNsaWVudElkZW50aWZpZXIgaWRlbnRpZmllciwg
RXhjZXB0aW9uT3I8c3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YT4+JiYgY2xp
ZW50RGF0YSwgRGVmZXJyZWRQcm9taXNlJiBwcm9taXNlUmVmZXJlbmNlKQoreworICAgIGF1dG8g
cHJvbWlzZSA9IG1fcGVuZGluZ1Byb21pc2VzLnRha2UocHJvbWlzZVJlZmVyZW5jZSk7CisgICAg
aWYgKCFwcm9taXNlKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoY2xpZW50RGF0YS5oYXNF
eGNlcHRpb24oKSkgeworICAgICAgICBwcm9taXNlLnZhbHVlKCktPnJlamVjdChjbGllbnREYXRh
LnJlbGVhc2VFeGNlcHRpb24oKSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgYXV0byBk
YXRhID0gY2xpZW50RGF0YS5yZWxlYXNlUmV0dXJuVmFsdWUoKTsKKyAgICBpZiAoIWRhdGEpIHsK
KyAgICAgICAgcHJvbWlzZS52YWx1ZSgpLT5yZXNvbHZlKCk7CisgICAgICAgIHJldHVybjsKKyAg
ICB9CisKKyAgICBhdXRvJiBjb250ZXh0ID0gZG93bmNhc3Q8U2VydmljZVdvcmtlckdsb2JhbFNj
b3BlPigqc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKTsKKyAgICBwcm9taXNlLnZhbHVlKCktPnJl
c29sdmU8SURMSW50ZXJmYWNlPFNlcnZpY2VXb3JrZXJDbGllbnQ+PihTZXJ2aWNlV29ya2VyQ2xp
ZW50OjpnZXRPckNyZWF0ZShjb250ZXh0LCBpZGVudGlmaWVyLCBXVEZNb3ZlKGRhdGEudmFsdWUo
KSkpKTsKK30KKworc3RhdGljIGlubGluZSBFeGNlcHRpb25PcjxzdGQ6Om9wdGlvbmFsPFNlcnZp
Y2VXb3JrZXJDbGllbnREYXRhPj4gaXNvbGF0ZWRFeGNlcHRpb25PckNsaWVudERhdGEoY29uc3Qg
RXhjZXB0aW9uT3I8c3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YT4+JiB2YWx1
ZSkKK3sKKyAgICBpZiAodmFsdWUuaGFzRXhjZXB0aW9uKCkpCisgICAgICAgIHJldHVybiB2YWx1
ZS5leGNlcHRpb24oKS5pc29sYXRlZENvcHkoKTsKKworICAgIGF1dG8gY2xpZW50RGF0YSA9IHZh
bHVlLnJldHVyblZhbHVlKCk7CisgICAgaWYgKGNsaWVudERhdGEpCisgICAgICAgIGNsaWVudERh
dGEgPSBjbGllbnREYXRhLT5pc29sYXRlZENvcHkoKTsKKworICAgIHJldHVybiBXVEZNb3ZlKGNs
aWVudERhdGEpOworfQorCitzdHJ1Y3QgR2V0UmVxdWVzdFN0YXRlIHsKKyAgICBTZXJ2aWNlV29y
a2VyQ2xpZW50cyYgY2xpZW50czsKKyAgICBSZWY8QWN0aXZlRE9NT2JqZWN0OjpQZW5kaW5nQWN0
aXZpdHk8U2VydmljZVdvcmtlckNsaWVudHM+PiBwcm90ZWN0aW5nQ2xpZW50czsKKyAgICBEZWZl
cnJlZFByb21pc2UmIHByb21pc2U7CisgICAgU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRp
ZmllcjsKK307CisKIHZvaWQgU2VydmljZVdvcmtlckNsaWVudHM6OmdldChjb25zdCBTdHJpbmcm
IGlkLCBSZWY8RGVmZXJyZWRQcm9taXNlPiYmIHByb21pc2UpCiB7Ci0gICAgVU5VU0VEX1BBUkFN
KGlkKTsKLSAgICBwcm9taXNlLT5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3Is
IEFTQ0lJTGl0ZXJhbCgiY2xpZW50cy5nZXQoKSBpcyBub3QgeWV0IHN1cHBvcnRlZCIpIH0pOwor
ICAgIGF1dG8qIGNvbnRleHQgPSBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7CisgICAgaWYgKCFj
b250ZXh0KSB7CisgICAgICAgIHByb21pc2UtPnJlamVjdChFeGNlcHRpb24geyBJbnZhbGlkU3Rh
dGVFcnJvciB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGF1dG8gaWRlbnRpZmll
ciA9IFNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyOjpmcm9tU3RyaW5nKGlkKTsKKyAgICBp
ZiAoIWlkZW50aWZpZXIpIHsKKyAgICAgICAgcHJvbWlzZS0+cmVzb2x2ZSgpOworICAgICAgICBy
ZXR1cm47CisgICAgfQorICAgIGF1dG8gY2xpZW50SWRlbnRpZmllciA9IGlkZW50aWZpZXIudmFs
dWUoKTsKKworICAgIGF1dG8mIHNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSA9IGRvd25jYXN0PFNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZT4oKmNvbnRleHQpOworICAgIEdldFJlcXVlc3RTdGF0ZSBz
dGF0ZSB7ICp0aGlzLCBtYWtlUGVuZGluZ0FjdGl2aXR5KCp0aGlzKSwgcHJvbWlzZSwgc2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLnRocmVhZCgpLmlkZW50aWZpZXIoKSB9OworCisgICAgbV9wZW5k
aW5nUHJvbWlzZXMuYWRkKFdURk1vdmUocHJvbWlzZSkpOworCisgICAgY2FsbE9uTWFpblRocmVh
ZChbc3RhdGUgPSBXVEZNb3ZlKHN0YXRlKSwgY2xpZW50SWRlbnRpZmllcl0gKCkgbXV0YWJsZSB7
CisgICAgICAgIGF1dG8gY29ubmVjdGlvbiA9IFNXQ29udGV4dE1hbmFnZXI6OnNpbmdsZXRvbigp
LmNvbm5lY3Rpb24oKTsKKyAgICAgICAgY29ubmVjdGlvbi0+Y2xpZW50RnJvbUlkKHN0YXRlLmlk
ZW50aWZpZXIsIGNsaWVudElkZW50aWZpZXIsIFtzdGF0ZSA9IFdURk1vdmUoc3RhdGUpLCBjbGll
bnRJZGVudGlmaWVyXSAoYXV0byYmIGNsaWVudERhdGEpIG11dGFibGUgeworICAgICAgICAgICAg
U1dDb250ZXh0TWFuYWdlcjo6c2luZ2xldG9uKCkucG9zdFRhc2tUb1NlcnZpY2VXb3JrZXIoc3Rh
dGUuaWRlbnRpZmllciwgW3N0YXRlID0gV1RGTW92ZShzdGF0ZSksIGNsaWVudElkZW50aWZpZXIs
IGRhdGEgPSBpc29sYXRlZEV4Y2VwdGlvbk9yQ2xpZW50RGF0YShjbGllbnREYXRhKV0gKGF1dG8m
KSBtdXRhYmxlIHsKKyAgICAgICAgICAgICAgICBzdGF0ZS5jbGllbnRzLmdldENvbXBsZXRlZChj
bGllbnRJZGVudGlmaWVyLCBXVEZNb3ZlKGRhdGEpLCBzdGF0ZS5wcm9taXNlKTsKKyAgICAgICAg
ICAgIH0pOworICAgICAgICB9KTsKKyAgICB9KTsKIH0KIAogdm9pZCBTZXJ2aWNlV29ya2VyQ2xp
ZW50czo6bWF0Y2hBbGwoY29uc3QgQ2xpZW50UXVlcnlPcHRpb25zJiwgUmVmPERlZmVycmVkUHJv
bWlzZT4mJiBwcm9taXNlKQpAQCAtNzAsNiArMTM1LDExIEBAIHZvaWQgU2VydmljZVdvcmtlckNs
aWVudHM6OmNsYWltKFJlZjxEZWZlcnJlZFByb21pc2U+JiYgcHJvbWlzZSkKICAgICBwcm9taXNl
LT5yZWplY3QoRXhjZXB0aW9uIHsgTm90U3VwcG9ydGVkRXJyb3IsIEFTQ0lJTGl0ZXJhbCgiY2xp
ZW50cy5jbGFpbSgpIGlzIG5vdCB5ZXQgc3VwcG9ydGVkIikgfSk7CiB9CiAKK3ZvaWQgU2Vydmlj
ZVdvcmtlckNsaWVudHM6OnN0b3AoKQoreworICAgIG1fcGVuZGluZ1Byb21pc2VzLmNsZWFyKCk7
Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShTRVJWSUNF
X1dPUktFUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2
aWNlV29ya2VyQ2xpZW50cy5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJDbGllbnRzLmgKaW5kZXggNzRiYmI3ZjA0ZjFhMWMxYjg0MmIwYzgxOGJhMzFjZjhh
Mjk3YWE1MS4uNWFiN2FhNzRiNzg4ZTQwMDhhYWZhNGQxYzUyNTRiZTkyYjBjZWVjYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJDbGllbnRz
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJDbGll
bnRzLmgKQEAgLTI4LDE3ICsyOCwyMSBAQAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKIAog
I2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgorI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAj
aW5jbHVkZSAiU2VydmljZVdvcmtlckNsaWVudFR5cGUuaCIKICNpbmNsdWRlIDx3dGYvUmVmLmg+
Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJl
ZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBEZWZlcnJlZFByb21p
c2U7CitzdHJ1Y3QgU2VydmljZVdvcmtlckNsaWVudERhdGE7CitzdHJ1Y3QgU2VydmljZVdvcmtl
ckNsaWVudElkZW50aWZpZXI7CitjbGFzcyBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU7CiAKLWNs
YXNzIFNlcnZpY2VXb3JrZXJDbGllbnRzIDogcHVibGljIFJlZkNvdW50ZWQ8U2VydmljZVdvcmtl
ckNsaWVudHM+LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIFNlcnZpY2VXb3JrZXJD
bGllbnRzIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPFNlcnZpY2VXb3JrZXJDbGllbnRz
PiwgcHVibGljIEFjdGl2ZURPTU9iamVjdCB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFJlZjxTZXJ2
aWNlV29ya2VyQ2xpZW50cz4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQp
CisgICAgc3RhdGljIFJlZjxTZXJ2aWNlV29ya2VyQ2xpZW50cz4gY3JlYXRlKFNlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZSYgY29udGV4dCkKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZigq
bmV3IFNlcnZpY2VXb3JrZXJDbGllbnRzKGNvbnRleHQpKTsKICAgICB9CkBAIC01NCwxMSArNTgs
MTYgQEAgcHVibGljOgogICAgIHZvaWQgY2xhaW0oUmVmPERlZmVycmVkUHJvbWlzZT4mJik7CiAK
IHByaXZhdGU6Ci0gICAgZXhwbGljaXQgU2VydmljZVdvcmtlckNsaWVudHMoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCYpOworICAgIGV4cGxpY2l0IFNlcnZpY2VXb3JrZXJDbGllbnRzKFNlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZSYpOworCisgICAgdm9pZCBnZXRDb21wbGV0ZWQoU2VydmljZVdvcmtl
ckNsaWVudElkZW50aWZpZXIsIEV4Y2VwdGlvbk9yPHN0ZDo6b3B0aW9uYWw8U2VydmljZVdvcmtl
ckNsaWVudERhdGE+PiYmLCBEZWZlcnJlZFByb21pc2UmKTsKIAogICAgIC8vIEFjdGl2ZURPTU9i
amVjdC4KICAgICBjb25zdCBjaGFyKiBhY3RpdmVET01PYmplY3ROYW1lKCkgY29uc3QgZmluYWw7
CiAgICAgYm9vbCBjYW5TdXNwZW5kRm9yRG9jdW1lbnRTdXNwZW5zaW9uKCkgY29uc3QgZmluYWw7
CisgICAgdm9pZCBzdG9wKCkgZmluYWw7CisKKyAgICBIYXNoU2V0PFJlZjxEZWZlcnJlZFByb21p
c2U+PiBtX3BlbmRpbmdQcm9taXNlczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NXQ29udGV4
dE1hbmFnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU1dD
b250ZXh0TWFuYWdlci5jcHAKaW5kZXggZWRjNzRiMWMxNTkwMTBiMTBjZTU5YmZmNzUwNWFhOTkw
ZGVhZGRmMS4uNDFhOWYwYWQwZjFjZDI3MzhiZDk1MTI5ODI5YTk0MjRiZDk1MDhmYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU1dDb250ZXh0TWFu
YWdlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU1dD
b250ZXh0TWFuYWdlci5jcHAKQEAgLTEwNiw2ICsxMDYsMTIgQEAgdm9pZCBTV0NvbnRleHRNYW5h
Z2VyOjp0ZXJtaW5hdGVXb3JrZXIoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllcikK
ICAgICB9KTsKIH0KIAordm9pZCBTV0NvbnRleHRNYW5hZ2VyOjpwb3N0VGFza1RvU2VydmljZVdv
cmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyLCBTY3JpcHRFeGVjdXRpb25D
b250ZXh0OjpUYXNrJiYgdGFzaykKK3sKKyAgICBpZiAoYXV0byogc2VydmljZVdvcmtlciA9IG1f
d29ya2VyTWFwLmdldChpZGVudGlmaWVyKSkKKyAgICAgICAgc2VydmljZVdvcmtlci0+dGhyZWFk
KCkucnVuTG9vcCgpLnBvc3RUYXNrKFdURk1vdmUodGFzaykpOworfQorCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL2NvbnRleHQvU1dDb250ZXh0TWFuYWdlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9zZXJ2aWNlL2NvbnRleHQvU1dDb250ZXh0TWFuYWdlci5oCmluZGV4IDJjZjhhYjM3MGY2Mjc2
YWU5NWVlMTBjMzYxNGM4OWQwZGQwOWNlYzMuLjhhZTE1Y2ZmZTRmZDhiNzlmNTcyMzE3ZDVkZjU0
NWRhYzQxNjVhMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9j
b250ZXh0L1NXQ29udGV4dE1hbmFnZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvY29udGV4dC9TV0NvbnRleHRNYW5hZ2VyLmgKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNs
dWRlICJFeGNlcHRpb25Pci5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLmgi
CiAjaW5jbHVkZSAiU2VydmljZVdvcmtlclRocmVhZFByb3h5LmgiCisjaW5jbHVkZSA8d3RmL0Nv
bXBsZXRpb25IYW5kbGVyLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewpAQCAtNTEsNiArNTIsOSBAQCBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwgdm9p
ZCBkaWRGaW5pc2hBY3RpdmF0aW9uKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSA9IDA7CiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBzZXRTZXJ2aWNlV29ya2VySGFzUGVuZGluZ0V2ZW50cyhTZXJ2aWNl
V29ya2VySWRlbnRpZmllciwgYm9vbCkgPSAwOwogICAgICAgICB2aXJ0dWFsIHZvaWQgd29ya2Vy
VGVybWluYXRlZChTZXJ2aWNlV29ya2VySWRlbnRpZmllcikgPSAwOworCisgICAgICAgIHVzaW5n
IENsaWVudEZyb21JZENhbGxiYWNrID0gV1RGOjpDb21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2Vw
dGlvbk9yPHN0ZDo6b3B0aW9uYWw8U2VydmljZVdvcmtlckNsaWVudERhdGE+PiYmKT47CisgICAg
ICAgIHZpcnR1YWwgdm9pZCBjbGllbnRGcm9tSWQoU2VydmljZVdvcmtlcklkZW50aWZpZXIsIFNl
cnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyLCBDbGllbnRGcm9tSWRDYWxsYmFjayYmKSA9IDA7
CiAgICAgfTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0Q29ubmVjdGlvbihzdGQ6OnVu
aXF1ZV9wdHI8Q29ubmVjdGlvbj4mJik7CkBAIC02Myw2ICs2Nyw4IEBAIHB1YmxpYzoKICAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIGZpcmVBY3RpdmF0ZUV2ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlm
aWVyKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHRlcm1pbmF0ZVdvcmtlcihTZXJ2aWNlV29y
a2VySWRlbnRpZmllcik7CiAKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHBvc3RUYXNrVG9TZXJ2
aWNlV29ya2VyKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0
OjpUYXNrJiYpOworCiBwcml2YXRlOgogICAgIFNXQ29udGV4dE1hbmFnZXIoKSA9IGRlZmF1bHQ7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dT
ZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZl
ci5jcHAKaW5kZXggNmQ1NjQ4OGY5ZmEyM2M2MDc0ZTQ5N2U1MzliNmYyMDhiNjgwNDY5YS4uMDkw
NzQzZjQ5YjNmYmU3Nzg3MTk0NmU0MjBhNTdkN2VkYmZmNGNkNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5jcHAKQEAgLTMwNSw2ICsz
MDUsMTYgQEAgdm9pZCBTV1NlcnZlcjo6d29ya2VyQ29udGV4dFRlcm1pbmF0ZWQoU1dTZXJ2ZXJX
b3JrZXImIHdvcmtlcikKICAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwgcmVzdWx0KTsKIH0KIAor
c3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YT4gU1dTZXJ2ZXI6OmNsaWVudEZy
b21JZChjb25zdCBDbGllbnRPcmlnaW4mIG9yaWdpbiwgU2VydmljZVdvcmtlckNsaWVudElkZW50
aWZpZXIgY2xpZW50SWRlbnRpZmllcikKK3sKKyAgICBhdXRvIGNsaWVudHMgPSBtX2NsaWVudHMu
Z2V0KG9yaWdpbik7CisgICAgYXV0byBwb3NpdGlvbiA9IGNsaWVudHMuZmluZE1hdGNoaW5nKFsm
XSAoY29uc3QgYXV0byYgY2xpZW50KSB7CisgICAgICAgIHJldHVybiBjbGllbnRJZGVudGlmaWVy
ID09IGNsaWVudC5pZGVudGlmaWVyOworICAgIH0pOworCisgICAgcmV0dXJuIChwb3NpdGlvbiAh
PSBub3RGb3VuZCkgPyBzdGQ6Om1ha2Vfb3B0aW9uYWwoY2xpZW50c1twb3NpdGlvbl0uZGF0YSkg
OiBzdGQ6Om51bGxvcHQ7Cit9CisKIHZvaWQgU1dTZXJ2ZXI6OmRpZFJlc29sdmVSZWdpc3RyYXRp
b25Qcm9taXNlKENvbm5lY3Rpb24mIGNvbm5lY3Rpb24sIGNvbnN0IFNlcnZpY2VXb3JrZXJSZWdp
c3RyYXRpb25LZXkmIHJlZ2lzdHJhdGlvbktleSkKIHsKICAgICBBU1NFUlRfVU5VU0VEKGNvbm5l
Y3Rpb24sIG1fY29ubmVjdGlvbnMuY29udGFpbnMoY29ubmVjdGlvbi5pZGVudGlmaWVyKCkpKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaApp
bmRleCA1ZjMzOGY2YzJhOTdiNTEwMjMwM2YwNmU4OTViYmQ5NzZjNDg1MTBhLi4yYjIzODI0MzNm
MjA2ZGE3MmFkNWE0MjdjODgyZmI2MTU2NWE5NzViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCkBAIC0xMzUsNiArMTM1LDcgQEAgcHVi
bGljOgogICAgIHZvaWQgZGlkRmluaXNoSW5zdGFsbChjb25zdCBzdGQ6Om9wdGlvbmFsPFNlcnZp
Y2VXb3JrZXJKb2JEYXRhSWRlbnRpZmllcj4mLCBTV1NlcnZlcldvcmtlciYsIGJvb2wgd2FzU3Vj
Y2Vzc2Z1bCk7CiAgICAgdm9pZCBkaWRGaW5pc2hBY3RpdmF0aW9uKFNXU2VydmVyV29ya2VyJik7
CiAgICAgdm9pZCB3b3JrZXJDb250ZXh0VGVybWluYXRlZChTV1NlcnZlcldvcmtlciYpOworICAg
IHN0ZDo6b3B0aW9uYWw8U2VydmljZVdvcmtlckNsaWVudERhdGE+IGNsaWVudEZyb21JZChjb25z
dCBDbGllbnRPcmlnaW4mLCBTZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllcik7CiAKICAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIHNlcnZlclRvQ29udGV4dENvbm5lY3Rpb25DcmVhdGVkKCk7CiAg
ICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NX
U2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2Uvc2VydmVyL1NXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAKaW5kZXggYmU4NWIz
OWY2NjFjNjY1ZTRmMTExMGUwNGU0Y2I0MWI1NWNjZjkwYS4uZTY3NzBjN2FmNTM1OWZmNDE2MWIw
MmUyYTFhODdmZWM1OGQ1MDdiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL3NlcnZlci9TV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0
aW9uLmNwcApAQCAtMTA4LDYgKzEwOCwxMiBAQCB2b2lkIFNXU2VydmVyVG9Db250ZXh0Q29ubmVj
dGlvbjo6d29ya2VyVGVybWluYXRlZChTZXJ2aWNlV29ya2VySWRlbnRpZmllciBzZXJ2aQogICAg
ICAgICB3b3JrZXItPmNvbnRleHRUZXJtaW5hdGVkKCk7CiB9CiAKK3ZvaWQgU1dTZXJ2ZXJUb0Nv
bnRleHRDb25uZWN0aW9uOjpjbGllbnRGcm9tSWQodWludDY0X3QgcmVxdWVzdElkZW50aWZpZXIs
IFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBTZXJ2aWNl
V29ya2VyQ2xpZW50SWRlbnRpZmllciBjbGllbnRJZCkKK3sKKyAgICBpZiAoYXV0byogd29ya2Vy
ID0gU1dTZXJ2ZXJXb3JrZXI6OmV4aXN0aW5nV29ya2VyRm9ySWRlbnRpZmllcihzZXJ2aWNlV29y
a2VySWRlbnRpZmllcikpCisgICAgICAgIGdsb2JhbFNlcnZlclRvQ29udGV4dENvbm5lY3Rpb24o
KS0+Y2xpZW50RnJvbUlkQ29tcGxldGVkKHJlcXVlc3RJZGVudGlmaWVyLCB3b3JrZXItPmNsaWVu
dEZyb21JZChjbGllbnRJZCksIGZhbHNlKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQog
CiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24u
aCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJUb0NvbnRl
eHRDb25uZWN0aW9uLmgKaW5kZXggNGExNTJmMjJiODJhZjMzZGZjZjRmM2VhNTVlZWY1ODBmNGZk
YjVlYi4uMGY0YmViMDczNGExYTRlYjYzZGM5MTUzNDA0N2NjOTEwNzNmYmUwOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlclRvQ29udGV4
dENvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVy
L1NXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oCkBAIC0zNCw2ICszNCw4IEBACiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIGNsYXNzIFNXU2VydmVyOworc3RydWN0IFNlcnZpY2VXb3JrZXJDbGll
bnREYXRhOworc3RydWN0IFNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyOwogc3RydWN0IFNl
cnZpY2VXb3JrZXJDb250ZXh0RGF0YTsKIHN0cnVjdCBTZXJ2aWNlV29ya2VySm9iRGF0YUlkZW50
aWZpZXI7CiAKQEAgLTQ4LDYgKzUwLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBmaXJl
SW5zdGFsbEV2ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIGZpcmVBY3RpdmF0ZUV2ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIHRlcm1pbmF0ZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmllcikgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBjbGllbnRGcm9tSWRDb21wbGV0ZWQodWludDY0X3QgcmVxdWVz
dElkZW50aWZpZXIsIGNvbnN0IHN0ZDo6b3B0aW9uYWw8U2VydmljZVdvcmtlckNsaWVudERhdGE+
JiwgYm9vbCBoYXNTZWN1cml0eUVycm9yKSA9IDA7CiAKICAgICAvLyBNZXNzYWdlcyBiYWNrIGZy
b20gdGhlIFNXIGhvc3QgcHJvY2VzcwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2NyaXB0Q29u
dGV4dEZhaWxlZFRvU3RhcnQoY29uc3Qgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VySm9iRGF0
YUlkZW50aWZpZXI+JiwgU2VydmljZVdvcmtlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgbWVz
c2FnZSk7CkBAIC01Niw2ICs1OSw3IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IGRpZEZpbmlzaEFjdGl2YXRpb24oU2VydmljZVdvcmtlcklkZW50aWZpZXIpOwogICAgIFdFQkNP
UkVfRVhQT1JUIHZvaWQgc2V0U2VydmljZVdvcmtlckhhc1BlbmRpbmdFdmVudHMoU2VydmljZVdv
cmtlcklkZW50aWZpZXIsIGJvb2wgaGFzUGVuZGluZ0V2ZW50cyk7CiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCB3b3JrZXJUZXJtaW5hdGVkKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKTsKKyAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIGNsaWVudEZyb21JZCh1aW50NjRfdCBjbGllbnRJZFJlcXVlc3RJ
ZGVudGlmaWVyLCBTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgU2VydmljZVdvcmtlckNsaWVudElk
ZW50aWZpZXIpOwogCiAgICAgc3RhdGljIFNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbiogY29u
bmVjdGlvbkZvcklkZW50aWZpZXIoU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uSWRlbnRpZmll
cik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIv
U1dTZXJ2ZXJXb3JrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZl
ci9TV1NlcnZlcldvcmtlci5jcHAKaW5kZXggMWYwYjFkY2VjNGM0MDVlNDdmNjFmODYwZmY0YTEw
OWZkYTQ0NDgwZi4uZjJlNzY1ZjczMDJkOGMzZmFmYmZjMjRkYjNkMjIxYmZhNTc1ZDgyZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldv
cmtlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1Nl
cnZlcldvcmtlci5jcHAKQEAgLTY1LDYgKzY1LDE0IEBAIHZvaWQgU1dTZXJ2ZXJXb3JrZXI6OnRl
cm1pbmF0ZSgpCiAgICAgbV9zZXJ2ZXIudGVybWluYXRlV29ya2VyKCp0aGlzKTsKIH0KIAorY29u
c3QgQ2xpZW50T3JpZ2luJiBTV1NlcnZlcldvcmtlcjo6b3JpZ2luKCkgY29uc3QKK3sKKyAgICBp
ZiAoIW1fb3JpZ2luKQorICAgICAgICBtX29yaWdpbiA9IENsaWVudE9yaWdpbiB7IG1fcmVnaXN0
cmF0aW9uS2V5LnRvcE9yaWdpbigpLCBTZWN1cml0eU9yaWdpbkRhdGE6OmZyb21TZWN1cml0eU9y
aWdpbihTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKG1fZGF0YS5zY3JpcHRVUkwpKSB9OworCisgICAg
cmV0dXJuICptX29yaWdpbjsKK30KKwogdm9pZCBTV1NlcnZlcldvcmtlcjo6c2NyaXB0Q29udGV4
dEZhaWxlZFRvU3RhcnQoY29uc3Qgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VySm9iRGF0YUlk
ZW50aWZpZXI+JiBqb2JEYXRhSWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogewog
ICAgIG1fc2VydmVyLnNjcmlwdENvbnRleHRGYWlsZWRUb1N0YXJ0KGpvYkRhdGFJZGVudGlmaWVy
LCAqdGhpcywgbWVzc2FnZSk7CkBAIC05MCw2ICs5OCwxMSBAQCB2b2lkIFNXU2VydmVyV29ya2Vy
Ojpjb250ZXh0VGVybWluYXRlZCgpCiAgICAgbV9zZXJ2ZXIud29ya2VyQ29udGV4dFRlcm1pbmF0
ZWQoKnRoaXMpOwogfQogCitzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3JrZXJDbGllbnREYXRhPiBT
V1NlcnZlcldvcmtlcjo6Y2xpZW50RnJvbUlkKFNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVy
IGNsaWVudElkKQoreworICAgIHJldHVybiBtX3NlcnZlci5jbGllbnRGcm9tSWQob3JpZ2luKCks
IGNsaWVudElkKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5B
QkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCmluZGV4IGMzMGQ0NTlmZTczY2Y5NmU1ZDJm
MDQ2ZDMzM2M5MjZlODdjNjE4ODQuLjljYzZmMzhlYTY5YWFkYmIyNWQyMjE3ZDNiMjE5OTA1M2Vi
MmQ4NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIv
U1dTZXJ2ZXJXb3JrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyV29ya2VyLmgKQEAgLTM2LDEwICszNiwxMyBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKK3N0cnVjdCBDbGllbnRPcmlnaW47CiBjbGFzcyBTV1NlcnZlcjsKIGNsYXNzIFNX
U2VydmVyUmVnaXN0cmF0aW9uOwotZW51bSBjbGFzcyBXb3JrZXJUeXBlOworc3RydWN0IFNlcnZp
Y2VXb3JrZXJDbGllbnREYXRhOworc3RydWN0IFNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVy
Owogc3RydWN0IFNlcnZpY2VXb3JrZXJKb2JEYXRhSWRlbnRpZmllcjsKK2VudW0gY2xhc3MgV29y
a2VyVHlwZTsKIAogY2xhc3MgU1dTZXJ2ZXJXb3JrZXIgOiBwdWJsaWMgVGhyZWFkU2FmZVJlZkNv
dW50ZWQ8U1dTZXJ2ZXJXb3JrZXI+IHsKIHB1YmxpYzoKQEAgLTczLDEwICs3NiwxMiBAQCBwdWJs
aWM6CiAgICAgdm9pZCBkaWRGaW5pc2hJbnN0YWxsKGNvbnN0IHN0ZDo6b3B0aW9uYWw8U2Vydmlj
ZVdvcmtlckpvYkRhdGFJZGVudGlmaWVyPiYsIGJvb2wgd2FzU3VjY2Vzc2Z1bCk7CiAgICAgdm9p
ZCBkaWRGaW5pc2hBY3RpdmF0aW9uKCk7CiAgICAgdm9pZCBjb250ZXh0VGVybWluYXRlZCgpOwor
ICAgIHN0ZDo6b3B0aW9uYWw8U2VydmljZVdvcmtlckNsaWVudERhdGE+IGNsaWVudEZyb21JZChT
ZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllcik7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0
aWMgU1dTZXJ2ZXJXb3JrZXIqIGV4aXN0aW5nV29ya2VyRm9ySWRlbnRpZmllcihTZXJ2aWNlV29y
a2VySWRlbnRpZmllcik7CiAKICAgICBjb25zdCBTZXJ2aWNlV29ya2VyRGF0YSYgZGF0YSgpIGNv
bnN0IHsgcmV0dXJuIG1fZGF0YTsgfQorICAgIGNvbnN0IENsaWVudE9yaWdpbiYgb3JpZ2luKCkg
Y29uc3Q7CiAKIHByaXZhdGU6CiAgICAgU1dTZXJ2ZXJXb3JrZXIoU1dTZXJ2ZXImLCBTV1NlcnZl
clJlZ2lzdHJhdGlvbiYsIFNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbklkZW50aWZpZXIsIGNv
bnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgc2NyaXB0LCBXb3JrZXJUeXBlLCBTZXJ2aWNlV29ya2Vy
SWRlbnRpZmllcik7CkBAIC04Nyw2ICs5Miw3IEBAIHByaXZhdGU6CiAgICAgU2VydmljZVdvcmtl
ckRhdGEgbV9kYXRhOwogICAgIFN0cmluZyBtX3NjcmlwdDsKICAgICBib29sIG1faGFzUGVuZGlu
Z0V2ZW50cyB7IGZhbHNlIH07CisgICAgbXV0YWJsZSBzdGQ6Om9wdGlvbmFsPENsaWVudE9yaWdp
bj4gbV9vcmlnaW47CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0Nv
bnRleHRDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU2Vydmlj
ZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwCmluZGV4IDI0ZTRhZGFl
MWMyZDkzNzhhODNmMjcxOGQwOWEzMjM4ODY5MjI2ZjAuLjkzYWIyNGQ1MWJhOTYzYTIzYzRkYmM4
NmU0ZWNjNjMyNDc0YjVkN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nl
c3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRv
Q29udGV4dENvbm5lY3Rpb24uY3BwCkBAIC03Niw2ICs3NiwxMSBAQCB2b2lkIFdlYlNXU2VydmVy
VG9Db250ZXh0Q29ubmVjdGlvbjo6dGVybWluYXRlV29ya2VyKFNlcnZpY2VXb3JrZXJJZGVudGlm
aWVyIHNlcgogICAgIHNlbmQoTWVzc2FnZXM6OldlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9u
OjpUZXJtaW5hdGVXb3JrZXIoc2VydmljZVdvcmtlcklkZW50aWZpZXIpKTsKIH0KIAordm9pZCBX
ZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb246OmNsaWVudEZyb21JZENvbXBsZXRlZCh1aW50
NjRfdCByZXF1ZXN0SWRlbnRpZmllciwgY29uc3Qgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2Vy
Q2xpZW50RGF0YT4mIGRhdGEsIGJvb2wgaGFzU2VjdXJpdHlFcnJvcikKK3sKKyAgICBzZW5kKE1l
c3NhZ2VzOjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6Q2xpZW50RnJvbUlkQ29tcGxl
dGVkIHsgcmVxdWVzdElkZW50aWZpZXIsIGRhdGEsIGhhc1NlY3VyaXR5RXJyb3IgfSk7Cit9CisK
IH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VS
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2Vy
L1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9TdG9yYWdl
UHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oCmlu
ZGV4IGI1Yjg3NDkwNmUxZmJjZjQ1Y2MyOTNjNGNhYTE0N2JjM2Y0NjcyOTkuLmVhOTk5OTc1NDIw
NzAzOGIwN2FhNDM4YTZjYjA0NDA4ZjM0ZDk1NGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
U3RvcmFnZVByb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rp
b24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2Vi
U1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmgKQEAgLTU5LDYgKzU5LDcgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIGZpcmVJbnN0YWxsRXZlbnQoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZp
ZXIpIGZpbmFsOwogICAgIHZvaWQgZmlyZUFjdGl2YXRlRXZlbnQoV2ViQ29yZTo6U2VydmljZVdv
cmtlcklkZW50aWZpZXIpIGZpbmFsOwogICAgIHZvaWQgdGVybWluYXRlV29ya2VyKFdlYkNvcmU6
OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSBmaW5hbDsKKyAgICB2b2lkIGNsaWVudEZyb21JZENv
bXBsZXRlZCh1aW50NjRfdCByZXF1ZXN0SWRlbnRpZmllciwgY29uc3Qgc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YT4mLCBib29sIGhhc1NlY3VyaXR5RXJyb3Ip
IGZpbmFsOwogCiAgICAgUmVmPElQQzo6Q29ubmVjdGlvbj4gbV9pcGNDb25uZWN0aW9uOwogICAg
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2Vy
L1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJL
aXQvU3RvcmFnZVByb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5l
Y3Rpb24ubWVzc2FnZXMuaW4KaW5kZXggOGIyMzQ3OGIyNmE5MDBmNjgzZDcyZGExZTBjNGRlNjJh
MTkyODA5MS4uYjM0ZTUyMzE2YjBkNWY5MzZlYWJmM2FiMmNlOTE5MDA0ZTgwNmYxOSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2Vy
dmVyVG9Db250ZXh0Q29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1N0
b3JhZ2VQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9u
Lm1lc3NhZ2VzLmluCkBAIC0zMSw2ICszMSw3IEBAIG1lc3NhZ2VzIC0+IFdlYlNXU2VydmVyVG9D
b250ZXh0Q29ubmVjdGlvbiB7CiAgICAgRGlkRmluaXNoQWN0aXZhdGlvbihXZWJDb3JlOjpTZXJ2
aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyKTsKICAgICBTZXRTZXJ2aWNlV29ya2VySGFz
UGVuZGluZ0V2ZW50cyhXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVy
LCBib29sIGhhc1BlbmRpbmdFdmVudHMpOwogICAgIFdvcmtlclRlcm1pbmF0ZWQoV2ViQ29yZTo6
U2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllcik7CisgICAgQ2xpZW50RnJvbUlkKHVp
bnQ2NF90IHJlcXVlc3RJZGVudGlmaWVyLCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmll
ciBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgc3RydWN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJD
bGllbnRJZGVudGlmaWVyIGNsaWVudElkZW50aWZpZXIpOwogfQogCiAjZW5kaWYgLy8gRU5BQkxF
KFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uY3BwCmluZGV4
IGMwY2VkYTE4MTdjZWYxNTE4MTMxZTZiMjQxMDJmN2E2MmE1ODRiZWYuLjQ4OTBhODM1MTk2MWI1
YTM3Y2Q3ZDI0NjYxNjZlNmQyYmUyYjI5MDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVj
dGlvbi5jcHAKQEAgLTQ4LDYgKzQ4LDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1BhZ2VDb25maWd1
cmF0aW9uLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaD4KKyNpbmNsdWRlIDxXZWJD
b3JlL1NlcnZpY2VXb3JrZXJDbGllbnREYXRhLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TZXJ2aWNl
V29ya2VyQ2xpZW50SWRlbnRpZmllci5oPgogI2luY2x1ZGUgPHBhbC9TZXNzaW9uSUQuaD4KIApA
QCAtMTk0LDYgKzE5NSwyNCBAQCB2b2lkIFdlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjp3
b3JrZXJUZXJtaW5hdGVkKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHNlcgogICAgIG1fY29ubmVj
dGlvblRvU3RvcmFnZVByb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlNXU2VydmVyVG9Db250ZXh0
Q29ubmVjdGlvbjo6V29ya2VyVGVybWluYXRlZChzZXJ2aWNlV29ya2VySWRlbnRpZmllciksIDAp
OwogfQogCit2b2lkIFdlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjpjbGllbnRGcm9tSWQo
V2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIgc2VydmljZVdvcmtlcklkZW50aWZpZXIs
IFNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyIGNsaWVudElkZW50aWZpZXIsIENsaWVudEZy
b21JZENhbGxiYWNrJiYgY2FsbGJhY2spCit7CisgICAgYXV0byByZXF1ZXN0SWRlbnRpZmllciA9
ICsrbV9wcmV2aW91c1JlcXVlc3RJZGVudGlmaWVyOworICAgIG1fY2xpZW50RnJvbUlkUmVxdWVz
dHMuYWRkKHJlcXVlc3RJZGVudGlmaWVyLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CisgICAgbV9jb25u
ZWN0aW9uVG9TdG9yYWdlUHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViU1dTZXJ2ZXJUb0NvbnRl
eHRDb25uZWN0aW9uOjpDbGllbnRGcm9tSWQgeyByZXF1ZXN0SWRlbnRpZmllciwgc2VydmljZVdv
cmtlcklkZW50aWZpZXIsIGNsaWVudElkZW50aWZpZXIgfSwgMCk7Cit9CisKK3ZvaWQgV2ViU1dD
b250ZXh0TWFuYWdlckNvbm5lY3Rpb246OmNsaWVudEZyb21JZENvbXBsZXRlZCh1aW50NjRfdCBy
ZXF1ZXN0SWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YT4m
JiBjbGllbnREYXRhLCBib29sIGhhc1NlY3VyaXR5RXJyb3IpCit7CisgICAgaWYgKGF1dG8gY2Fs
bGJhY2sgPSBtX2NsaWVudEZyb21JZFJlcXVlc3RzLnRha2UocmVxdWVzdElkZW50aWZpZXIpKSB7
CisgICAgICAgIGlmIChoYXNTZWN1cml0eUVycm9yKSB7CisgICAgICAgICAgICBjYWxsYmFjayhF
eGNlcHRpb24geyBTZWN1cml0eUVycm9yIH0pOworICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICB9CisgICAgICAgIGNhbGxiYWNrKFdURk1vdmUoY2xpZW50RGF0YSkpOworICAgIH0KK30KKwog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VS
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250
ZXh0TWFuYWdlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdl
L1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKaW5kZXggYzllNjVhNGFiODM4YjAzNjAx
NTRiODZiMTZlNzdjMjA2OWRlMmVkZi4uM2UwMmNlM2U3YzQ5ZDdjYjE0MTY1OTIyYzMxN2JmNmI5
Y2ZhZmExMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2Vi
U1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oCkBAIC02MSw2ICs2MSw3
IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkaWRGaW5pc2hBY3RpdmF0aW9uKFdlYkNvcmU6OlNlcnZp
Y2VXb3JrZXJJZGVudGlmaWVyKSBmaW5hbDsKICAgICB2b2lkIHNldFNlcnZpY2VXb3JrZXJIYXNQ
ZW5kaW5nRXZlbnRzKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBib29sKSBmaW5h
bDsKICAgICB2b2lkIHdvcmtlclRlcm1pbmF0ZWQoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50
aWZpZXIpIGZpbmFsOworICAgIHZvaWQgY2xpZW50RnJvbUlkKFdlYkNvcmU6OlNlcnZpY2VXb3Jr
ZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllciwgQ2xp
ZW50RnJvbUlkQ2FsbGJhY2smJikgZmluYWw7CiAKICAgICAvLyBJUEMgbWVzc2FnZXMuCiAgICAg
dm9pZCBzZXJ2aWNlV29ya2VyU3RhcnRlZFdpdGhNZXNzYWdlKHN0ZDo6b3B0aW9uYWw8V2ViQ29y
ZTo6U2VydmljZVdvcmtlckpvYkRhdGFJZGVudGlmaWVyPiwgV2ViQ29yZTo6U2VydmljZVdvcmtl
cklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgZXhjZXB0aW9uTWVzc2FnZSkgZmluYWw7CkBAIC03
MCwxMCArNzEsMTQgQEAgcHJpdmF0ZToKICAgICB2b2lkIGZpcmVJbnN0YWxsRXZlbnQoV2ViQ29y
ZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIpOwogICAgIHZvaWQgZmlyZUFjdGl2YXRlRXZlbnQo
V2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIpOwogICAgIHZvaWQgdGVybWluYXRlV29y
a2VyKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKTsKKyAgICB2b2lkIGNsaWVudEZy
b21JZENvbXBsZXRlZCh1aW50NjRfdCByZXF1ZXN0SWRlbnRpZmllciwgc3RkOjpvcHRpb25hbDxX
ZWJDb3JlOjpTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YT4mJiwgYm9vbCBoYXNTZWN1cml0eUVycm9y
KTsKIAogICAgIFJlZjxJUEM6OkNvbm5lY3Rpb24+IG1fY29ubmVjdGlvblRvU3RvcmFnZVByb2Nl
c3M7CiAgICAgdWludDY0X3QgbV9wYWdlSUQgeyAwIH07CiAgICAgdWludDY0X3QgbV9wcmV2aW91
c1NlcnZpY2VXb3JrZXJJRCB7IDAgfTsKKworICAgIEhhc2hNYXA8dWludDY0X3QsIENsaWVudEZy
b21JZENhbGxiYWNrPiBtX2NsaWVudEZyb21JZFJlcXVlc3RzOworICAgIHVpbnQ2NF90IG1fcHJl
dmlvdXNSZXF1ZXN0SWRlbnRpZmllciB7IDAgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktp
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250
ZXh0TWFuYWdlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRl
eCA3MzZmZGY1YjQ3MTc5YmU0MGVkYTEyYzlmYzZkNzI2NjJjMWQ3YmM0Li5iYWQ4YzZlZmY3YjM1
OGQ1YmZiYTZkMWZlYjJkOWI5ZGZkYWE3Y2E2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5p
bgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5h
Z2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgpAQCAtMjksNiArMjksNyBAQCBtZXNzYWdlcyAtPiBX
ZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbiB7CiAgICAgRmlyZUluc3RhbGxFdmVudChXZWJD
b3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIEZpcmVBY3RpdmF0
ZUV2ZW50KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiAgICAg
VGVybWluYXRlV29ya2VyKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIpCisgICAgQ2xpZW50RnJvbUlkQ29tcGxldGVkKHVpbnQ2NF90IGNsaWVudElkUmVxdWVzdElk
ZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2VydmljZVdvcmtlckNsaWVudERhdGE+
IGRhdGEsIGJvb2wgaGFzU2VjdXJpdHlFcnJvcikKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMGU4NTZh
OGU3MGI0MDk2MmMzZWVkNTIyNzQ4MmUzOWMzMGUxZDcyOS4uMTQ0ZTIzNzA5NDdlMDNiYTY3NjE4
NzkxMTBhN2YxNzMxNzY0ZTQ4OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE3LTExLTI5ICBZ
b3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBJbXBsZW1lbnQgaHR0
cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2NsaWVudHMtZ2V0CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODAxNjcKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvd29ya2Vy
cy9zZXJ2aWNlL3Jlc291cmNlcy9zZXJ2aWNld29ya2VyY2xpZW50cy1nZXQtd29ya2VyLmpzOiBB
ZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dvcmtlcnMvc2VydmljZS9zZXJ2aWNld29ya2Vy
Y2xpZW50cy1nZXQuaHR0cHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3dvcmtlcnMvc2VydmljZS9zZXJ2aWNld29ya2VyY2xpZW50cy1nZXQuaHR0cHMuaHRtbDog
QWRkZWQuCisKIDIwMTctMTEtMzAgIE1zMmdlciAgPE1zMmdlckBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtHVEtdIEVuYWJsZSBhbGwgd3B0IHRvdWNoLWV2ZW50cyB0ZXN0cy4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29ya2Vycy9zZXJ2aWNlL3Jlc291cmNlcy9zZXJ2aWNl
d29ya2VyY2xpZW50cy1nZXQtd29ya2VyLmpzIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93b3Jr
ZXJzL3NlcnZpY2UvcmVzb3VyY2VzL3NlcnZpY2V3b3JrZXJjbGllbnRzLWdldC13b3JrZXIuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uYTk2MzI5MzQwOGI4NjkxYmY0ZWMxMDU4MjZjMWM0ZjE2MjY0Y2NkMQotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29ya2Vycy9zZXJ2aWNlL3Jl
c291cmNlcy9zZXJ2aWNld29ya2VyY2xpZW50cy1nZXQtd29ya2VyLmpzCkBAIC0wLDAgKzEsNDEg
QEAKK3ZhciBjbGllbnQgPSBudWxsOworc2VsZi5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwg
YXN5bmMgKGV2ZW50KSA9PiB7CisgICAgdHJ5IHsKKyAgICAgICAgdmFyIGNsaWVudCA9IGV2ZW50
LnNvdXJjZTsKKworICAgICAgICBpZiAoIShjbGllbnQgaW5zdGFuY2VvZiBXaW5kb3dDbGllbnQp
KSB7CisgICAgICAgICAgICBldmVudC5zb3VyY2UucG9zdE1lc3NhZ2UoIkZBSUw6IGNsaWVudCBz
b3VyY2UgaXMgbm90IGEgV2luZG93Q2xpZW50Iik7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgIH0KKworICAgICAgICB2YXIgcmV0cmlldmVkQ2xpZW50ID0gYXdhaXQgc2VsZi5jbGllbnRz
LmdldChjbGllbnQuaWQpOworICAgICAgICBpZiAoIXJldHJpZXZlZENsaWVudCkgeworICAgICAg
ICAgICAgZXZlbnQuc291cmNlLnBvc3RNZXNzYWdlKCJGQUlMOiBkaWQgbm90IHJldHJpZXZlIGFu
eSBjbGllbnQgdGhyb3VnaCBzZWxmLmNsaWVudHMuZ2V0Iik7CisgICAgICAgICAgICByZXR1cm47
CisgICAgICAgIH0KKworICAgICAgICBpZiAocmV0cmlldmVkQ2xpZW50LmlkICE9PSBjbGllbnQu
aWQpIHsKKyAgICAgICAgICAgIGV2ZW50LnNvdXJjZS5wb3N0TWVzc2FnZSgiRkFJTDogY2xpZW50
IGlkIGlzIGRpZmZlcmVudCBmcm9tIHJldHJpZXZlZCBjbGllbnQgaWQgdGhyb3VnaCBzZWxmLmNs
aWVudHMuZ2V0OiAiICsgY2xpZW50LmlkICsgIiAvICIgKyByZXRyaWV2ZWRDbGllbnQuaWQpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgaWYgKHJldHJpZXZlZENs
aWVudCAhPT0gY2xpZW50KSB7CisgICAgICAgICAgICBldmVudC5zb3VyY2UucG9zdE1lc3NhZ2Uo
IkZBSUw6IGNsaWVudCBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgb25lIHJldHJpZXZlZCB0aHJvdWdo
IHNlbGYuY2xpZW50cy5nZXQiKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisg
ICAgICAgIHZhciBiYWRJZHMgPSBbY2xpZW50LmlkICsgIjAiLCAiMC0wIiwgIjAtIiwgIi0iLCAi
LTAiXTsKKyAgICAgICAgZm9yIChpZCBpbiBiYWRJZHMpIHsKKyAgICAgICAgICAgIHJldHJpZXZl
ZENsaWVudCA9IGF3YWl0IHNlbGYuY2xpZW50cy5nZXQoaWQpOworICAgICAgICAgICAgaWYgKCEh
cmV0cmlldmVkQ2xpZW50KSB7CisgICAgICAgICAgICAgICAgZXZlbnQuc291cmNlLnBvc3RNZXNz
YWdlKCJGQUlMOiByZXRyaWV2ZWQgY2xpZW50IHdpdGggYmFkIGlkICIgKyBpZCArICIgc2hvdWxk
IGJlIG51bGwiKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKworICAgICAgICBldmVudC5zb3VyY2UucG9zdE1lc3NhZ2UoIlBBU1MiKTsKKyAgICB9
IGNhdGNoIChlKSB7CisgICAgICAgIGV2ZW50LnNvdXJjZS5wb3N0TWVzc2FnZSgiRkFJTDogcmVj
ZWl2ZWQgZXhjZXB0aW9uICIgKyBlKTsKKyAgICB9Cit9KTsKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93b3JrZXJzL3NlcnZpY2Uvc2VydmljZXdvcmtlcmNsaWVudHMtZ2V0
Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29ya2Vycy9zZXJ2
aWNlL3NlcnZpY2V3b3JrZXJjbGllbnRzLWdldC5odHRwcy1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uYzdmMzY2YjJhMmFjZjVhOWJlZDRkY2YyZmY2NTYzOTBjZTU0YzUzMwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd29ya2Vycy9zZXJ2aWNlL3NlcnZpY2V3b3Jr
ZXJjbGllbnRzLWdldC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACisKK1BBU1Mg
VGVzdGluZyBjbGllbnRzLmdldCAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0
cy93b3JrZXJzL3NlcnZpY2Uvc2VydmljZXdvcmtlcmNsaWVudHMtZ2V0Lmh0dHBzLmh0bWwgYi9M
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dvcmtlcnMvc2VydmljZS9zZXJ2aWNld29ya2VyY2xpZW50
cy1nZXQuaHR0cHMuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45YmJmYmEzOGNjZWY3ZjBkOWU2ODM3ZTg0Nzli
YmI2Zjk1MjFjNmU3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
b3JrZXJzL3NlcnZpY2Uvc2VydmljZXdvcmtlcmNsaWVudHMtZ2V0Lmh0dHBzLmh0bWwKQEAgLTAs
MCArMSwyNyBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3Ro
YXJuZXNzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIvcmVzb3VyY2VzL3Rlc3RoYXJuZXNz
cmVwb3J0LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KKworcHJvbWlz
ZV90ZXN0KGFzeW5jICh0ZXN0KSA9PiB7CisgICAgdmFyIHByb21pc2UgPSBuZXcgUHJvbWlzZSgo
cmVzb2x2ZSkgPT4geworICAgICAgICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5hZGRFdmVudExp
c3RlbmVyKCJtZXNzYWdlIiwgdGVzdC5zdGVwX2Z1bmMoKGV2ZW50KSA9PiB7CisgICAgICAgICAg
ICBhc3NlcnRfZXF1YWxzKGV2ZW50LmRhdGEsICJQQVNTIik7CisgICAgICAgICAgICByZXNvbHZl
KCk7CisgICAgICAgIH0pKTsKKyAgICB9KTsKKworICAgIHZhciByZWdpc3RyYXRpb24gPSBhd2Fp
dCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcigicmVzb3VyY2VzL3NlcnZpY2V3b3Jr
ZXJjbGllbnRzLWdldC13b3JrZXIuanMiLCB7IHNjb3BlIDogIi9ub29uZSIgfSk7CisgICAgdmFy
IHdvcmtlciA9IHJlZ2lzdHJhdGlvbi5pbnN0YWxsaW5nOworICAgIGlmICghd29ya2VyKQorICAg
ICAgICB3b3JrZXIgPSByZWdpc3RyYXRpb24uYWN0aXZlOworICAgIHdvcmtlci5wb3N0TWVzc2Fn
ZSgic3RhcnQiKTsKKworICAgIGF3YWl0IHByb21pc2U7Cit9LCAiVGVzdGluZyBjbGllbnRzLmdl
dCIpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>328022</attachid>
            <date>2017-11-30 14:03:36 -0800</date>
            <delta_ts>2017-12-01 09:27:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180210-20171130140335.patch</filename>
            <type>text/plain</type>
            <size>11353</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1MzI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTg2NzQ5NDJkMmYyMjVk
NTljM2E5OGRkYjhmZDQzYmFmOWViMzZhMS4uNDRmNTZhODRhYWVjYTU1MGUyNmNiYjA3ZjlhNWQx
ODM3YWM1NmRiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE3LTExLTMwICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBDbGVhciBXZWJTV0NsaWVu
dENvbm5lY3Rpb24gaW4gY2FzZSBzdG9yYWdlIHByb2Nlc3MgSVBDIGNvbm5lY3Rpb24gaXMgY2xv
c2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgw
MjEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
b2JzZXJ2YWJsZSBjaGFuZ2Ugb2YgYmVoYXZpb3IuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQu
aDogS2VlcGluZyBhIHJlZiBzaW5jZSBvYmplY3QgbWF5IGJlIGRlbGV0ZWQgb3RoZXJ3aXNlLgor
CiAyMDE3LTExLTI5ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAg
ICBJbXBsZW1lbnQgaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI2NsaWVudHMt
Z2V0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCmluZGV4IDdkMjZkNWFjODkwYjNkNmJjNjY1OWMzNDkzNDUzNzE4N2FlOTA2MjIu
LjI2YmUwNmRjNDBmMGI0ZjBmNTg5OWJlOTUwNDljZDNiMDgxMjhhZGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMjIgQEAKKzIwMTctMTEtMzAgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29t
PgorCisgICAgICAgIENsZWFyIFdlYlNXQ2xpZW50Q29ubmVjdGlvbiBpbiBjYXNlIHN0b3JhZ2Ug
cHJvY2VzcyBJUEMgY29ubmVjdGlvbiBpcyBjbG9zaW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODAyMTAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDbGVhciB0aGUgc3cgY29ubmVjdGlvbiBtYXBzIHdo
ZW4gY29ubmVjdGlvbiBpcyBjbG9zaW5nLgorICAgICAgICBDYWxsIHJlbGF0ZWQgY29tcGxldGlv
biBoYW5kbGVycyBmb3IgZWFjaCBjb25uZWN0aW9uLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9T
dG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNX
Q2xpZW50Q29ubmVjdGlvbjo6Y29ubmVjdGlvblRvU2VydmVyTG9zdCk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oOgorICAgICAgICAqIFdlYlBy
b2Nlc3MvU3RvcmFnZS9XZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbi5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uOjpkaWRDbG9zZSk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uOjppZGJDb25uZWN0aW9u
VG9TZXJ2ZXJGb3JTZXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViVG9TdG9yYWdlUHJvY2Vz
c0Nvbm5lY3Rpb246OnNlcnZpY2VXb3JrZXJDb25uZWN0aW9uRm9yU2Vzc2lvbik6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmg6CisK
IDIwMTctMTEtMjkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAg
IEltcGxlbWVudCBodHRwczovL3czYy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jY2xpZW50cy1n
ZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggNzU1NzFlMTQ5NjVlNDA4MjcyMDRlODMzYmUwOTZj
NmJkZTk5ZmZiZC4uMWI4MGM4MTM2N2M5M2U3YjU1ZTIyYTQ1NGM2YzZjOTU4NDI3YjNhYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0RvY3VtZW50LmgKQEAgLTE4NjcsNyArMTg2Nyw3IEBAIHByaXZhdGU6CiAgICAgRG9j
dW1lbnRJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktF
UikKLSAgICBTV0NsaWVudENvbm5lY3Rpb24qIG1fc2VydmljZVdvcmtlckNvbm5lY3Rpb24geyBu
dWxscHRyIH07CisgICAgUmVmUHRyPFNXQ2xpZW50Q29ubmVjdGlvbj4gbV9zZXJ2aWNlV29ya2Vy
Q29ubmVjdGlvbjsKICNlbmRpZgogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL3NlcnZlci9TV0NsaWVudENvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV0NsaWVudENvbm5lY3Rpb24uY3BwCmluZGV4IDI1
Mjg3NTFlNzYxM2IwMjY0OGI2ODhkOTA5YTczOThiMzg4NjQ1MjkuLjA0ZTJjNjNmNTYxYmM2MGUx
OTUwZTM0NjQyYWNlZDg4NDFkMzQwZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9zZXJ2ZXIvU1dDbGllbnRDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXQ2xpZW50Q29ubmVjdGlvbi5jcHAKQEAgLTE4
Niw2ICsxODYsMTMgQEAgdm9pZCBTV0NsaWVudENvbm5lY3Rpb246Om5vdGlmeUNsaWVudHNPZkNv
bnRyb2xsZXJDaGFuZ2UoY29uc3QgSGFzaFNldDxEb2N1bWVudEkKICAgICB9CiB9CiAKK3ZvaWQg
U1dDbGllbnRDb25uZWN0aW9uOjpjbGVhclBlbmRpbmdKb2JzKCkKK3sKKyAgICBhdXRvIGpvYnMg
PSBXVEZNb3ZlKG1fc2NoZWR1bGVkSm9icyk7CisgICAgZm9yIChhdXRvJiBqb2IgOiBqb2JzLnZh
bHVlcygpKQorICAgICAgICBqb2ItPmZhaWxlZFdpdGhFeGNlcHRpb24oRXhjZXB0aW9uIHsgVHlw
ZUVycm9yLCBBU0NJSUxpdGVyYWwoIkludGVybmFsIGVycm9yIikgfSk7Cit9CisKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShTRVJWSUNFX1dPUktFUikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dDbGllbnRDb25u
ZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXQ2xpZW50
Q29ubmVjdGlvbi5oCmluZGV4IDc0NGM5ODE4NzY2NGE4NTc4Zjk2MWZlNmE1NDVmZGVmMmUyNmIx
NjIuLjljMzQzMTkyMDc5MTE0NDA5OTkwODMyNjViYjAwODk0Zjc0ZTBmMDcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dDbGllbnRDb25uZWN0aW9u
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV0NsaWVudENv
bm5lY3Rpb24uaApAQCAtOTIsNiArOTIsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBmaXJlVXBkYXRlRm91bmRFdmVudChTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSWRl
bnRpZmllcik7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBub3RpZnlDbGllbnRzT2ZDb250cm9s
bGVyQ2hhbmdlKGNvbnN0IEhhc2hTZXQ8RG9jdW1lbnRJZGVudGlmaWVyPiYgY29udGV4dElkZW50
aWZpZXJzLCBTZXJ2aWNlV29ya2VyRGF0YSYmIG5ld0NvbnRyb2xsZXIpOwogCisgICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCBjbGVhclBlbmRpbmdKb2JzKCk7CisKIHByaXZhdGU6CiAgICAgdmlydHVh
bCB2b2lkIHNjaGVkdWxlSm9iSW5TZXJ2ZXIoY29uc3QgU2VydmljZVdvcmtlckpvYkRhdGEmKSA9
IDA7CiAgICAgdmlydHVhbCB2b2lkIGZpbmlzaEZldGNoaW5nU2NyaXB0SW5TZXJ2ZXIoY29uc3Qg
U2VydmljZVdvcmtlckZldGNoUmVzdWx0JikgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAKaW5kZXgg
NDg3NGE3ZjVlNWNjNjkxYjE1Mjk5ZmIwNTliYTJjZTEwMzc1NWMwNS4uMDM4OGU4MmUxZWE0ZmM2
MDRmMGM3OThlNTc4OWVlNjAzMjAwZWZhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uY3BwCkBAIC0xNzcs
NiArMTc3LDE5IEBAIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjpwb3N0TWVzc2FnZVRvU2Vy
dmljZVdvcmtlckNsaWVudChEb2N1bWVudElkZW50aWZpZXIKICAgICBTV0NsaWVudENvbm5lY3Rp
b246OnBvc3RNZXNzYWdlVG9TZXJ2aWNlV29ya2VyQ2xpZW50KGRlc3RpbmF0aW9uQ29udGV4dElk
ZW50aWZpZXIsIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZTo6YWRvcHQobWVzc2FnZS52ZWN0b3IoKSks
IFdURk1vdmUoc291cmNlKSwgc291cmNlT3JpZ2luKTsKIH0KIAordm9pZCBXZWJTV0NsaWVudENv
bm5lY3Rpb246OmNvbm5lY3Rpb25Ub1NlcnZlckxvc3QoKQoreworICAgIGF1dG8gcmVnaXN0cmF0
aW9uVGFza3MgPSBXVEZNb3ZlKG1fb25nb2luZ01hdGNoUmVnaXN0cmF0aW9uVGFza3MpOworICAg
IGZvciAoYXV0byYgY2FsbGJhY2sgOiByZWdpc3RyYXRpb25UYXNrcy52YWx1ZXMoKSkKKyAgICAg
ICAgY2FsbGJhY2soc3RkOjpudWxsb3B0KTsKKworICAgIGF1dG8gZ2V0UmVnaXN0cmF0aW9uVGFz
a3MgPSBXVEZNb3ZlKG1fb25nb2luZ0dldFJlZ2lzdHJhdGlvbnNUYXNrcyk7CisgICAgZm9yIChh
dXRvJiBjYWxsYmFjayA6IGdldFJlZ2lzdHJhdGlvblRhc2tzLnZhbHVlcygpKQorICAgICAgICBj
YWxsYmFjayh7IH0pOworCisgICAgY2xlYXJQZW5kaW5nSm9icygpOworfQorCiB9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKIAogI2VuZGlmIC8vIEVOQUJMRShTRVJWSUNFX1dPUktFUikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlv
bi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0
aW9uLmgKaW5kZXggMjc3N2Y3YTI1ODhmNWNjZmRlZDUwOTU4Zjk2YmNiNDMyM2YxYzU5Mi4uMWZk
MjA2MDA2NDU0ZTY0MTFhYmY0NDE4MzUxYzlkN2NmZjVjYmExNCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmgKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmgK
QEAgLTQ2LDExICs0NiwxMCBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFdlYlNXT3JpZ2lu
VGFibGU7CiBjbGFzcyBXZWJTZXJ2aWNlV29ya2VyUHJvdmlkZXI7CiAKLWNsYXNzIFdlYlNXQ2xp
ZW50Q29ubmVjdGlvbiA6IHB1YmxpYyBXZWJDb3JlOjpTV0NsaWVudENvbm5lY3Rpb24sIHB1Ymxp
YyBJUEM6Ok1lc3NhZ2VTZW5kZXIsIHB1YmxpYyBJUEM6Ok1lc3NhZ2VSZWNlaXZlciB7CitjbGFz
cyBXZWJTV0NsaWVudENvbm5lY3Rpb24gZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6U1dDbGllbnRD
b25uZWN0aW9uLCBwdWJsaWMgSVBDOjpNZXNzYWdlU2VuZGVyLCBwdWJsaWMgSVBDOjpNZXNzYWdl
UmVjZWl2ZXIgewogcHVibGljOgotICAgIFdlYlNXQ2xpZW50Q29ubmVjdGlvbihJUEM6OkNvbm5l
Y3Rpb24mLCBQQUw6OlNlc3Npb25JRCk7Ci0gICAgV2ViU1dDbGllbnRDb25uZWN0aW9uKGNvbnN0
IFdlYlNXQ2xpZW50Q29ubmVjdGlvbiYpID0gZGVsZXRlOwotICAgIH5XZWJTV0NsaWVudENvbm5l
Y3Rpb24oKSBmaW5hbDsKKyAgICBzdGF0aWMgUmVmPFdlYlNXQ2xpZW50Q29ubmVjdGlvbj4gY3Jl
YXRlKElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbiwgUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklE
KSB7IHJldHVybiBhZG9wdFJlZigqbmV3IFdlYlNXQ2xpZW50Q29ubmVjdGlvbiB7IGNvbm5lY3Rp
b24sIHNlc3Npb25JRCB9KTsgfQorICAgIH5XZWJTV0NsaWVudENvbm5lY3Rpb24oKTsKIAogICAg
IFdlYkNvcmU6OlNXU2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIgc2VydmVyQ29ubmVjdGlvbklk
ZW50aWZpZXIoKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIApAQCAtNjUs
NyArNjQsMTEgQEAgcHVibGljOgogCiAgICAgdm9pZCBwb3N0TWVzc2FnZVRvU2VydmljZVdvcmtl
ckNsaWVudChXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIgZGVzdGluYXRpb25Db250ZXh0SWRl
bnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiBtZXNzYWdlLCBXZWJDb3JlOjpTZXJ2
aWNlV29ya2VyRGF0YSYmIHNvdXJjZSwgY29uc3QgU3RyaW5nJiBzb3VyY2VPcmlnaW4pOwogCisg
ICAgdm9pZCBjb25uZWN0aW9uVG9TZXJ2ZXJMb3N0KCk7CisKIHByaXZhdGU6CisgICAgV2ViU1dD
bGllbnRDb25uZWN0aW9uKElQQzo6Q29ubmVjdGlvbiYsIFBBTDo6U2Vzc2lvbklEKTsKKwogICAg
IHZvaWQgc2NoZWR1bGVKb2JJblNlcnZlcihjb25zdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VySm9i
RGF0YSYpIGZpbmFsOwogICAgIHZvaWQgZmluaXNoRmV0Y2hpbmdTY3JpcHRJblNlcnZlcihjb25z
dCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKSBmaW5hbDsKICAgICB2b2lkIHBv
c3RNZXNzYWdlVG9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUoV2ViQ29yZTo6U2VydmljZVdvcmtl
cklkZW50aWZpZXIgZGVzdGluYXRpb25JZGVudGlmaWVyLCBSZWY8V2ViQ29yZTo6U2VyaWFsaXpl
ZFNjcmlwdFZhbHVlPiYmLCBXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIgc291cmNlQ29udGV4
dElkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnREYXRhJiYgc291cmNlKSBm
aW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlRv
U3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9T
dG9yYWdlL1dlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmNwcAppbmRleCBiNWU5ZjdkOWNm
MmExNDgyZjcwOTVlN2IyZjEyNTRlNGVkN2ZjMTkxLi45YTYyNDkyZGU0OGMwOWY0YzUyZjFlNTJl
NTEzNzhiMmI3MjZkZGI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3Rv
cmFnZS9XZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCkBA
IC05NSw2ICs5NSwxMyBAQCB2b2lkIFdlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uOjpkaWRD
bG9zZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24pCiAgICAgbV93ZWJJREJDb25uZWN0aW9u
c0J5SWRlbnRpZmllci5jbGVhcigpOwogICAgIG1fd2ViSURCQ29ubmVjdGlvbnNCeVNlc3Npb24u
Y2xlYXIoKTsKICNlbmRpZgorI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKKyAgICBmb3IgKGF1
dG8mIGNvbm5lY3Rpb24gOiBtX3N3Q29ubmVjdGlvbnNCeVNlc3Npb24udmFsdWVzKCkpCisgICAg
ICAgIGNvbm5lY3Rpb24tPmNvbm5lY3Rpb25Ub1NlcnZlckxvc3QoKTsKKworICAgIG1fc3dDb25u
ZWN0aW9uc0J5SWRlbnRpZmllci5jbGVhcigpOworICAgIG1fc3dDb25uZWN0aW9uc0J5U2Vzc2lv
bi5jbGVhcigpOworI2VuZGlmCiAKICAgICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS53ZWJUb1N0
b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbkNsb3NlZCh0aGlzKTsKIH0KQEAgLTEwNCwzMCArMTExLDMw
IEBAIHZvaWQgV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZFJlY2VpdmVJbnZhbGlk
TWVzc2FnZShJUEM6OkNvbm5lY3Rpb24mLCBJCiB9CiAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLVdlYklEQkNvbm5lY3Rpb25Ub1NlcnZlciYgV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5l
Y3Rpb246OmlkYkNvbm5lY3Rpb25Ub1NlcnZlckZvclNlc3Npb24oY29uc3QgUEFMOjpTZXNzaW9u
SUQmIHNlc3Npb25JRCkKK1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlciYgV2ViVG9TdG9yYWdlUHJv
Y2Vzc0Nvbm5lY3Rpb246OmlkYkNvbm5lY3Rpb25Ub1NlcnZlckZvclNlc3Npb24oU2Vzc2lvbklE
IHNlc3Npb25JRCkKIHsKLSAgICBhdXRvIHJlc3VsdCA9IG1fd2ViSURCQ29ubmVjdGlvbnNCeVNl
c3Npb24uYWRkKHNlc3Npb25JRCwgbnVsbHB0cik7Ci0gICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5
KSB7Ci0gICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUgPSBXZWJJREJDb25uZWN0aW9uVG9T
ZXJ2ZXI6OmNyZWF0ZShzZXNzaW9uSUQpOwotICAgICAgICBBU1NFUlQoIW1fd2ViSURCQ29ubmVj
dGlvbnNCeUlkZW50aWZpZXIuY29udGFpbnMocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+aWRlbnRp
ZmllcigpKSk7Ci0gICAgICAgIG1fd2ViSURCQ29ubmVjdGlvbnNCeUlkZW50aWZpZXIuc2V0KHJl
c3VsdC5pdGVyYXRvci0+dmFsdWUtPmlkZW50aWZpZXIoKSwgcmVzdWx0Lml0ZXJhdG9yLT52YWx1
ZSk7Ci0gICAgfQorICAgIHJldHVybiAqbV93ZWJJREJDb25uZWN0aW9uc0J5U2Vzc2lvbi5lbnN1
cmUoc2Vzc2lvbklELCBbJl0geworICAgICAgICBhdXRvIGNvbm5lY3Rpb24gPSBXZWJJREJDb25u
ZWN0aW9uVG9TZXJ2ZXI6OmNyZWF0ZShzZXNzaW9uSUQpOworCisgICAgICAgIGF1dG8gcmVzdWx0
ID0gbV93ZWJJREJDb25uZWN0aW9uc0J5SWRlbnRpZmllci5hZGQoY29ubmVjdGlvbi0+aWRlbnRp
ZmllcigpLCBjb25uZWN0aW9uLmNvcHlSZWYoKSk7CisgICAgICAgIEFTU0VSVF9VTlVTRUQocmVz
dWx0LCByZXN1bHQuaXNOZXdFbnRyeSk7CiAKLSAgICByZXR1cm4gKnJlc3VsdC5pdGVyYXRvci0+
dmFsdWU7CisgICAgICAgIHJldHVybiBjb25uZWN0aW9uOworICAgIH0pLml0ZXJhdG9yLT52YWx1
ZTsKIH0KICNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogV2ViU1dDbGllbnRD
b25uZWN0aW9uJiBXZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbjo6c2VydmljZVdvcmtlckNv
bm5lY3Rpb25Gb3JTZXNzaW9uKFNlc3Npb25JRCBzZXNzaW9uSUQpCiB7Ci0gICAgYXV0byByZXN1
bHQgPSBtX3N3Q29ubmVjdGlvbnNCeVNlc3Npb24uYWRkKHNlc3Npb25JRCwgbnVsbHB0cik7Ci0g
ICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5KSB7Ci0gICAgICAgIHJlc3VsdC5pdGVyYXRvci0+dmFs
dWUgPSBzdGQ6Om1ha2VfdW5pcXVlPFdlYlNXQ2xpZW50Q29ubmVjdGlvbj4obV9jb25uZWN0aW9u
LmdldCgpLCBzZXNzaW9uSUQpOwotICAgICAgICBBU1NFUlQoIW1fc3dDb25uZWN0aW9uc0J5SWRl
bnRpZmllci5jb250YWlucyhyZXN1bHQuaXRlcmF0b3ItPnZhbHVlLT5zZXJ2ZXJDb25uZWN0aW9u
SWRlbnRpZmllcigpKSk7Ci0gICAgICAgIG1fc3dDb25uZWN0aW9uc0J5SWRlbnRpZmllci5zZXQo
cmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS0+c2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIoKSwgcmVz
dWx0Lml0ZXJhdG9yLT52YWx1ZS5nZXQoKSk7Ci0gICAgfQorICAgIHJldHVybiAqbV9zd0Nvbm5l
Y3Rpb25zQnlTZXNzaW9uLmVuc3VyZShzZXNzaW9uSUQsIFsmXSB7CisgICAgICAgIGF1dG8gY29u
bmVjdGlvbiA9IFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6Y3JlYXRlKG1fY29ubmVjdGlvbiwgc2Vz
c2lvbklEKTsKKworICAgICAgICBhdXRvIHJlc3VsdCA9IG1fc3dDb25uZWN0aW9uc0J5SWRlbnRp
Zmllci5hZGQoY29ubmVjdGlvbi0+c2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIoKSwgY29ubmVj
dGlvbi5wdHIoKSk7CisgICAgICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQuaXNOZXdF
bnRyeSk7CiAKLSAgICByZXR1cm4gKnJlc3VsdC5pdGVyYXRvci0+dmFsdWU7CisgICAgICAgIHJl
dHVybiBjb25uZWN0aW9uOworICAgIH0pLml0ZXJhdG9yLT52YWx1ZTsKIH0KICNlbmRpZgogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJUb1N0b3JhZ2VQ
cm9jZXNzQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2Vi
VG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uaAppbmRleCBmMTQ0YTkyMDM0ZTUwZGRmNjE4YWJl
YjE5MzRjOTFkZDhlYzU0Y2FhLi42YTQ4NmUyMTM0YTFmNWIwMjYxYzQ3M2RmOTgzYjkxMmNiMzlm
ZGZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJUb1N0
b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9T
dG9yYWdlL1dlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmgKQEAgLTUxLDcgKzUxLDcgQEAg
cHVibGljOgogICAgIElQQzo6Q29ubmVjdGlvbiYgY29ubmVjdGlvbigpIHsgcmV0dXJuIG1fY29u
bmVjdGlvbi5nZXQoKTsgfQogCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0gICAgV2Vi
SURCQ29ubmVjdGlvblRvU2VydmVyJiBpZGJDb25uZWN0aW9uVG9TZXJ2ZXJGb3JTZXNzaW9uKGNv
bnN0IFBBTDo6U2Vzc2lvbklEJik7CisgICAgV2ViSURCQ29ubmVjdGlvblRvU2VydmVyJiBpZGJD
b25uZWN0aW9uVG9TZXJ2ZXJGb3JTZXNzaW9uKFBBTDo6U2Vzc2lvbklEKTsKICNlbmRpZgogI2lm
IEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBXZWJTV0NsaWVudENvbm5lY3Rpb24mIHNlcnZp
Y2VXb3JrZXJDb25uZWN0aW9uRm9yU2Vzc2lvbihQQUw6OlNlc3Npb25JRCk7CkBAIC03Nyw3ICs3
Nyw3IEBAIHByaXZhdGU6CiAjZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKLSAg
ICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBzdGQ6OnVuaXF1ZV9wdHI8V2ViU1dDbGllbnRDb25u
ZWN0aW9uPj4gbV9zd0Nvbm5lY3Rpb25zQnlTZXNzaW9uOworICAgIEhhc2hNYXA8UEFMOjpTZXNz
aW9uSUQsIFJlZlB0cjxXZWJTV0NsaWVudENvbm5lY3Rpb24+PiBtX3N3Q29ubmVjdGlvbnNCeVNl
c3Npb247CiAgICAgSGFzaE1hcDxXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVy
LCBXZWJTV0NsaWVudENvbm5lY3Rpb24qPiBtX3N3Q29ubmVjdGlvbnNCeUlkZW50aWZpZXI7CiAj
ZW5kaWYKIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>328101</attachid>
            <date>2017-12-01 09:27:43 -0800</date>
            <delta_ts>2017-12-01 10:31:53 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-180210-20171201092742.patch</filename>
            <type>text/plain</type>
            <size>11321</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1MzkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjQ0MjI0OTkyOTk2NDhm
NGUxN2M1ZWNmZTcxN2MzZTRjMmE0N2ZlMS4uYjE4MjU3MWYwYjJhY2Y1ZDJiYjI5ODVlYzQ0ODQ4
MmNmMDVlZmQ3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE3LTEyLTAxICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBDbGVhciBXZWJTV0NsaWVu
dENvbm5lY3Rpb24gaW4gY2FzZSBzdG9yYWdlIHByb2Nlc3MgSVBDIGNvbm5lY3Rpb24gaXMgY2xv
c2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgw
MjEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQ2hyaXMgRHVtZXouCisKKyAgICAgICAgTm8gb2Jz
ZXJ2YWJsZSBjaGFuZ2Ugb2YgYmVoYXZpb3IuCisKKyAgICAgICAgKiBkb20vRG9jdW1lbnQuaDog
S2VlcGluZyBhIHJlZiBzaW5jZSBvYmplY3QgbWF5IGJlIGRlbGV0ZWQgb3RoZXJ3aXNlLgorCiAy
MDE3LTExLTMwICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAK
ICAgICAgICAgRXh0cmEgUGVyZm9ybWFuY2VFbnRyeUxpc3QgZW50cnkgYWZ0ZXIgaWZyYW1lIG5h
dmlnYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKaW5kZXggZGJiNWRkZmRkZWM4ZGZlMWY0ZGM4MTBkOTgyY2UxY2VkNTVk
NTc1OC4uMTQ1NTU2MTE4Y2I3YjE1MGMzMjExNzQyNGNhNTliY2I4OTc4MjQ1MiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyMiBAQAorMjAxNy0xMi0wMSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBs
ZS5jb20+CisKKyAgICAgICAgQ2xlYXIgV2ViU1dDbGllbnRDb25uZWN0aW9uIGluIGNhc2Ugc3Rv
cmFnZSBwcm9jZXNzIElQQyBjb25uZWN0aW9uIGlzIGNsb3NpbmcKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDIxMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IENocmlzIER1bWV6LgorCisgICAgICAgIENsZWFyIHRoZSBzdyBjb25uZWN0aW9uIG1hcHMg
d2hlbiBjb25uZWN0aW9uIGlzIGNsb3NpbmcuCisgICAgICAgIENhbGwgcmVsYXRlZCBjb21wbGV0
aW9uIGhhbmRsZXJzIGZvciBlYWNoIGNvbm5lY3Rpb24uCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
U1dDbGllbnRDb25uZWN0aW9uOjpjb25uZWN0aW9uVG9TZXJ2ZXJMb3N0KToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZENsb3NlKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb246OmlkYkNvbm5lY3Rp
b25Ub1NlcnZlckZvclNlc3Npb24pOgorICAgICAgICAoV2ViS2l0OjpXZWJUb1N0b3JhZ2VQcm9j
ZXNzQ29ubmVjdGlvbjo6c2VydmljZVdvcmtlckNvbm5lY3Rpb25Gb3JTZXNzaW9uKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uaDoK
KwogMjAxNy0xMi0wMSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+
CiAKICAgICAgICAgV2ViRHJpdmVyOiBsaW5rIGFuZCBwYXJ0aWFsIGxpbmtzIHF1ZXJpZXMgZG9u
J3Qgd29yayBpbiB4aHRtbCBkb2N1bWVudHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Eb2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggNzU1NzFl
MTQ5NjVlNDA4MjcyMDRlODMzYmUwOTZjNmJkZTk5ZmZiZC4uMWI4MGM4MTM2N2M5M2U3YjU1ZTIy
YTQ1NGM2YzZjOTU4NDI3YjNhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKQEAgLTE4NjcsNyArMTg2
Nyw3IEBAIHByaXZhdGU6CiAgICAgRG9jdW1lbnRJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKIAog
I2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKLSAgICBTV0NsaWVudENvbm5lY3Rpb24qIG1fc2Vy
dmljZVdvcmtlckNvbm5lY3Rpb24geyBudWxscHRyIH07CisgICAgUmVmUHRyPFNXQ2xpZW50Q29u
bmVjdGlvbj4gbV9zZXJ2aWNlV29ya2VyQ29ubmVjdGlvbjsKICNlbmRpZgogfTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmNw
cAppbmRleCAxMDJhZWZlYzQyMmQyMTdmODFhZjRhODU3MjRhOTM3ZWM1ZGU3OTNjLi40OGY3ZTRi
OWY5ZDY4OWVkM2NmZDdlYmU5MTIxNDJjNGEwZTg0YjMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmNwcApAQCAtMjAxLDYg
KzIwMSwxMyBAQCB2b2lkIFNXQ2xpZW50Q29ubmVjdGlvbjo6bm90aWZ5Q2xpZW50c09mQ29udHJv
bGxlckNoYW5nZShjb25zdCBIYXNoU2V0PERvY3VtZW50SQogICAgIH0KIH0KIAordm9pZCBTV0Ns
aWVudENvbm5lY3Rpb246OmNsZWFyUGVuZGluZ0pvYnMoKQoreworICAgIGF1dG8gam9icyA9IFdU
Rk1vdmUobV9zY2hlZHVsZWRKb2JzKTsKKyAgICBmb3IgKGF1dG8mIGpvYiA6IGpvYnMudmFsdWVz
KCkpCisgICAgICAgIGpvYi0+ZmFpbGVkV2l0aEV4Y2VwdGlvbihFeGNlcHRpb24geyBUeXBlRXJy
b3IsIEFTQ0lJTGl0ZXJhbCgiSW50ZXJuYWwgZXJyb3IiKSB9KTsKK30KKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5oIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5oCmluZGV4
IGIyYTE3MjFlYzlkMjk5ZjkyZDYyNWE3YTE3N2ZiNjA3MzhlMWFiODcuLjNlMGM0OTY1MmZmNjgx
MTMzZTE0MzUxYzZlNTM0YzRkOGJhZWNhZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmgKQEAgLTkzLDYgKzkzLDggQEAgcHJv
dGVjdGVkOgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZmlyZVVwZGF0ZUZvdW5kRXZlbnQoU2Vy
dmljZVdvcmtlclJlZ2lzdHJhdGlvbklkZW50aWZpZXIpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgbm90aWZ5Q2xpZW50c09mQ29udHJvbGxlckNoYW5nZShjb25zdCBIYXNoU2V0PERvY3VtZW50
SWRlbnRpZmllcj4mIGNvbnRleHRJZGVudGlmaWVycywgU2VydmljZVdvcmtlckRhdGEmJiBuZXdD
b250cm9sbGVyKTsKIAorICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xlYXJQZW5kaW5nSm9icygp
OworCiBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBzY2hlZHVsZUpvYkluU2VydmVyKGNvbnN0
IFNlcnZpY2VXb3JrZXJKb2JEYXRhJikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBmaW5pc2hGZXRj
aGluZ1NjcmlwdEluU2VydmVyKGNvbnN0IFNlcnZpY2VXb3JrZXJGZXRjaFJlc3VsdCYpID0gMDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0Ns
aWVudENvbm5lY3Rpb24uY3BwCmluZGV4IDQ4NzRhN2Y1ZTVjYzY5MWIxNTI5OWZiMDU5YmEyY2Ux
MDM3NTVjMDUuLjAzODhlODJlMWVhNGZjNjA0ZjBjNzk4ZTU3ODllZTYwMzIwMGVmYTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVj
dGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGll
bnRDb25uZWN0aW9uLmNwcApAQCAtMTc3LDYgKzE3NywxOSBAQCB2b2lkIFdlYlNXQ2xpZW50Q29u
bmVjdGlvbjo6cG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQoRG9jdW1lbnRJZGVudGlm
aWVyCiAgICAgU1dDbGllbnRDb25uZWN0aW9uOjpwb3N0TWVzc2FnZVRvU2VydmljZVdvcmtlckNs
aWVudChkZXN0aW5hdGlvbkNvbnRleHRJZGVudGlmaWVyLCBTZXJpYWxpemVkU2NyaXB0VmFsdWU6
OmFkb3B0KG1lc3NhZ2UudmVjdG9yKCkpLCBXVEZNb3ZlKHNvdXJjZSksIHNvdXJjZU9yaWdpbik7
CiB9CiAKK3ZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjpjb25uZWN0aW9uVG9TZXJ2ZXJMb3N0
KCkKK3sKKyAgICBhdXRvIHJlZ2lzdHJhdGlvblRhc2tzID0gV1RGTW92ZShtX29uZ29pbmdNYXRj
aFJlZ2lzdHJhdGlvblRhc2tzKTsKKyAgICBmb3IgKGF1dG8mIGNhbGxiYWNrIDogcmVnaXN0cmF0
aW9uVGFza3MudmFsdWVzKCkpCisgICAgICAgIGNhbGxiYWNrKHN0ZDo6bnVsbG9wdCk7CisKKyAg
ICBhdXRvIGdldFJlZ2lzdHJhdGlvblRhc2tzID0gV1RGTW92ZShtX29uZ29pbmdHZXRSZWdpc3Ry
YXRpb25zVGFza3MpOworICAgIGZvciAoYXV0byYgY2FsbGJhY2sgOiBnZXRSZWdpc3RyYXRpb25U
YXNrcy52YWx1ZXMoKSkKKyAgICAgICAgY2FsbGJhY2soeyB9KTsKKworICAgIGNsZWFyUGVuZGlu
Z0pvYnMoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZiAvLyBFTkFCTEUo
U0VSVklDRV9XT1JLRVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3Rv
cmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9T
dG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oCmluZGV4IDI3NzdmN2EyNTg4ZjVjY2ZkZWQ1
MDk1OGY5NmJjYjQzMjNmMWM1OTIuLjFmZDIwNjAwNjQ1NGU2NDExYWJmNDQxODM1MWM5ZDdjZmY1
Y2JhMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNX
Q2xpZW50Q29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdl
L1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oCkBAIC00NiwxMSArNDYsMTAgQEAgbmFtZXNwYWNlIFdl
YktpdCB7CiBjbGFzcyBXZWJTV09yaWdpblRhYmxlOwogY2xhc3MgV2ViU2VydmljZVdvcmtlclBy
b3ZpZGVyOwogCi1jbGFzcyBXZWJTV0NsaWVudENvbm5lY3Rpb24gOiBwdWJsaWMgV2ViQ29yZTo6
U1dDbGllbnRDb25uZWN0aW9uLCBwdWJsaWMgSVBDOjpNZXNzYWdlU2VuZGVyLCBwdWJsaWMgSVBD
OjpNZXNzYWdlUmVjZWl2ZXIgeworY2xhc3MgV2ViU1dDbGllbnRDb25uZWN0aW9uIGZpbmFsIDog
cHVibGljIFdlYkNvcmU6OlNXQ2xpZW50Q29ubmVjdGlvbiwgcHVibGljIElQQzo6TWVzc2FnZVNl
bmRlciwgcHVibGljIElQQzo6TWVzc2FnZVJlY2VpdmVyIHsKIHB1YmxpYzoKLSAgICBXZWJTV0Ns
aWVudENvbm5lY3Rpb24oSVBDOjpDb25uZWN0aW9uJiwgUEFMOjpTZXNzaW9uSUQpOwotICAgIFdl
YlNXQ2xpZW50Q29ubmVjdGlvbihjb25zdCBXZWJTV0NsaWVudENvbm5lY3Rpb24mKSA9IGRlbGV0
ZTsKLSAgICB+V2ViU1dDbGllbnRDb25uZWN0aW9uKCkgZmluYWw7CisgICAgc3RhdGljIFJlZjxX
ZWJTV0NsaWVudENvbm5lY3Rpb24+IGNyZWF0ZShJUEM6OkNvbm5lY3Rpb24mIGNvbm5lY3Rpb24s
IFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBXZWJTV0Ns
aWVudENvbm5lY3Rpb24geyBjb25uZWN0aW9uLCBzZXNzaW9uSUQgfSk7IH0KKyAgICB+V2ViU1dD
bGllbnRDb25uZWN0aW9uKCk7CiAKICAgICBXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVu
dGlmaWVyIHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyKCkgY29uc3QgZmluYWwgeyByZXR1cm4g
bV9pZGVudGlmaWVyOyB9CiAKQEAgLTY1LDcgKzY0LDExIEBAIHB1YmxpYzoKIAogICAgIHZvaWQg
cG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQoV2ViQ29yZTo6RG9jdW1lbnRJZGVudGlm
aWVyIGRlc3RpbmF0aW9uQ29udGV4dElkZW50aWZpZXIsIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5j
ZSYgbWVzc2FnZSwgV2ViQ29yZTo6U2VydmljZVdvcmtlckRhdGEmJiBzb3VyY2UsIGNvbnN0IFN0
cmluZyYgc291cmNlT3JpZ2luKTsKIAorICAgIHZvaWQgY29ubmVjdGlvblRvU2VydmVyTG9zdCgp
OworCiBwcml2YXRlOgorICAgIFdlYlNXQ2xpZW50Q29ubmVjdGlvbihJUEM6OkNvbm5lY3Rpb24m
LCBQQUw6OlNlc3Npb25JRCk7CisKICAgICB2b2lkIHNjaGVkdWxlSm9iSW5TZXJ2ZXIoY29uc3Qg
V2ViQ29yZTo6U2VydmljZVdvcmtlckpvYkRhdGEmKSBmaW5hbDsKICAgICB2b2lkIGZpbmlzaEZl
dGNoaW5nU2NyaXB0SW5TZXJ2ZXIoY29uc3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckZldGNoUmVz
dWx0JikgZmluYWw7CiAgICAgdm9pZCBwb3N0TWVzc2FnZVRvU2VydmljZVdvcmtlckdsb2JhbFNj
b3BlKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGRlc3RpbmF0aW9uSWRlbnRpZmll
ciwgUmVmPFdlYkNvcmU6OlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZT4mJiwgV2ViQ29yZTo6RG9jdW1l
bnRJZGVudGlmaWVyIHNvdXJjZUNvbnRleHRJZGVudGlmaWVyLCBXZWJDb3JlOjpTZXJ2aWNlV29y
a2VyQ2xpZW50RGF0YSYmIHNvdXJjZSkgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVjdGlvbi5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVj
dGlvbi5jcHAKaW5kZXggYjVlOWY3ZDljZjJhMTQ4MmY3MDk1ZTdiMmYxMjU0ZTRlZDdmYzE5MS4u
OWE2MjQ5MmRlNDhjMDlmNGM1MmYxZTUyZTUxMzc4YjJiNzI2ZGRiNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rp
b24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlRvU3RvcmFn
ZVByb2Nlc3NDb25uZWN0aW9uLmNwcApAQCAtOTUsNiArOTUsMTMgQEAgdm9pZCBXZWJUb1N0b3Jh
Z2VQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkQ2xvc2UoSVBDOjpDb25uZWN0aW9uJiBjb25uZWN0aW9u
KQogICAgIG1fd2ViSURCQ29ubmVjdGlvbnNCeUlkZW50aWZpZXIuY2xlYXIoKTsKICAgICBtX3dl
YklEQkNvbm5lY3Rpb25zQnlTZXNzaW9uLmNsZWFyKCk7CiAjZW5kaWYKKyNpZiBFTkFCTEUoU0VS
VklDRV9XT1JLRVIpCisgICAgZm9yIChhdXRvJiBjb25uZWN0aW9uIDogbV9zd0Nvbm5lY3Rpb25z
QnlTZXNzaW9uLnZhbHVlcygpKQorICAgICAgICBjb25uZWN0aW9uLT5jb25uZWN0aW9uVG9TZXJ2
ZXJMb3N0KCk7CisKKyAgICBtX3N3Q29ubmVjdGlvbnNCeUlkZW50aWZpZXIuY2xlYXIoKTsKKyAg
ICBtX3N3Q29ubmVjdGlvbnNCeVNlc3Npb24uY2xlYXIoKTsKKyNlbmRpZgogCiAgICAgV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkud2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb25DbG9zZWQodGhp
cyk7CiB9CkBAIC0xMDQsMzAgKzExMSwzMCBAQCB2b2lkIFdlYlRvU3RvcmFnZVByb2Nlc3NDb25u
ZWN0aW9uOjpkaWRSZWNlaXZlSW52YWxpZE1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSQogfQog
CiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi1XZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIm
IFdlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uOjppZGJDb25uZWN0aW9uVG9TZXJ2ZXJGb3JT
ZXNzaW9uKGNvbnN0IFBBTDo6U2Vzc2lvbklEJiBzZXNzaW9uSUQpCitXZWJJREJDb25uZWN0aW9u
VG9TZXJ2ZXImIFdlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uOjppZGJDb25uZWN0aW9uVG9T
ZXJ2ZXJGb3JTZXNzaW9uKFNlc3Npb25JRCBzZXNzaW9uSUQpCiB7Ci0gICAgYXV0byByZXN1bHQg
PSBtX3dlYklEQkNvbm5lY3Rpb25zQnlTZXNzaW9uLmFkZChzZXNzaW9uSUQsIG51bGxwdHIpOwot
ICAgIGlmIChyZXN1bHQuaXNOZXdFbnRyeSkgewotICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZh
bHVlID0gV2ViSURCQ29ubmVjdGlvblRvU2VydmVyOjpjcmVhdGUoc2Vzc2lvbklEKTsKLSAgICAg
ICAgQVNTRVJUKCFtX3dlYklEQkNvbm5lY3Rpb25zQnlJZGVudGlmaWVyLmNvbnRhaW5zKHJlc3Vs
dC5pdGVyYXRvci0+dmFsdWUtPmlkZW50aWZpZXIoKSkpOwotICAgICAgICBtX3dlYklEQkNvbm5l
Y3Rpb25zQnlJZGVudGlmaWVyLnNldChyZXN1bHQuaXRlcmF0b3ItPnZhbHVlLT5pZGVudGlmaWVy
KCksIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwotICAgIH0KKyAgICByZXR1cm4gKm1fd2ViSURC
Q29ubmVjdGlvbnNCeVNlc3Npb24uZW5zdXJlKHNlc3Npb25JRCwgWyZdIHsKKyAgICAgICAgYXV0
byBjb25uZWN0aW9uID0gV2ViSURCQ29ubmVjdGlvblRvU2VydmVyOjpjcmVhdGUoc2Vzc2lvbklE
KTsKKworICAgICAgICBhdXRvIHJlc3VsdCA9IG1fd2ViSURCQ29ubmVjdGlvbnNCeUlkZW50aWZp
ZXIuYWRkKGNvbm5lY3Rpb24tPmlkZW50aWZpZXIoKSwgY29ubmVjdGlvbi5jb3B5UmVmKCkpOwor
ICAgICAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwgcmVzdWx0LmlzTmV3RW50cnkpOwogCi0gICAg
cmV0dXJuICpyZXN1bHQuaXRlcmF0b3ItPnZhbHVlOworICAgICAgICByZXR1cm4gY29ubmVjdGlv
bjsKKyAgICB9KS5pdGVyYXRvci0+dmFsdWU7CiB9CiAjZW5kaWYKIAogI2lmIEVOQUJMRShTRVJW
SUNFX1dPUktFUikKIFdlYlNXQ2xpZW50Q29ubmVjdGlvbiYgV2ViVG9TdG9yYWdlUHJvY2Vzc0Nv
bm5lY3Rpb246OnNlcnZpY2VXb3JrZXJDb25uZWN0aW9uRm9yU2Vzc2lvbihTZXNzaW9uSUQgc2Vz
c2lvbklEKQogewotICAgIGF1dG8gcmVzdWx0ID0gbV9zd0Nvbm5lY3Rpb25zQnlTZXNzaW9uLmFk
ZChzZXNzaW9uSUQsIG51bGxwdHIpOwotICAgIGlmIChyZXN1bHQuaXNOZXdFbnRyeSkgewotICAg
ICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gc3RkOjptYWtlX3VuaXF1ZTxXZWJTV0NsaWVu
dENvbm5lY3Rpb24+KG1fY29ubmVjdGlvbi5nZXQoKSwgc2Vzc2lvbklEKTsKLSAgICAgICAgQVNT
RVJUKCFtX3N3Q29ubmVjdGlvbnNCeUlkZW50aWZpZXIuY29udGFpbnMocmVzdWx0Lml0ZXJhdG9y
LT52YWx1ZS0+c2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIoKSkpOwotICAgICAgICBtX3N3Q29u
bmVjdGlvbnNCeUlkZW50aWZpZXIuc2V0KHJlc3VsdC5pdGVyYXRvci0+dmFsdWUtPnNlcnZlckNv
bm5lY3Rpb25JZGVudGlmaWVyKCksIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUuZ2V0KCkpOwotICAg
IH0KKyAgICByZXR1cm4gKm1fc3dDb25uZWN0aW9uc0J5U2Vzc2lvbi5lbnN1cmUoc2Vzc2lvbklE
LCBbJl0geworICAgICAgICBhdXRvIGNvbm5lY3Rpb24gPSBXZWJTV0NsaWVudENvbm5lY3Rpb246
OmNyZWF0ZShtX2Nvbm5lY3Rpb24sIHNlc3Npb25JRCk7CisKKyAgICAgICAgYXV0byByZXN1bHQg
PSBtX3N3Q29ubmVjdGlvbnNCeUlkZW50aWZpZXIuYWRkKGNvbm5lY3Rpb24tPnNlcnZlckNvbm5l
Y3Rpb25JZGVudGlmaWVyKCksIGNvbm5lY3Rpb24ucHRyKCkpOworICAgICAgICBBU1NFUlRfVU5V
U0VEKHJlc3VsdCwgcmVzdWx0LmlzTmV3RW50cnkpOwogCi0gICAgcmV0dXJuICpyZXN1bHQuaXRl
cmF0b3ItPnZhbHVlOworICAgICAgICByZXR1cm4gY29ubmVjdGlvbjsKKyAgICB9KS5pdGVyYXRv
ci0+dmFsdWU7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1N0b3JhZ2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlRvU3RvcmFnZVByb2Nlc3NDb25uZWN0aW9uLmgKaW5k
ZXggZjE0NGE5MjAzNGU1MGRkZjYxOGFiZWIxOTM0YzkxZGQ4ZWM1NGNhYS4uNmE0ODZlMjEzNGEx
ZjViMDI2MWM0NzNkZjk4M2I5MTJjYjM5ZmRmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1N0b3JhZ2UvV2ViVG9TdG9yYWdlUHJvY2Vzc0Nvbm5lY3Rpb24uaAorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJUb1N0b3JhZ2VQcm9jZXNzQ29ubmVj
dGlvbi5oCkBAIC01MSw3ICs1MSw3IEBAIHB1YmxpYzoKICAgICBJUEM6OkNvbm5lY3Rpb24mIGNv
bm5lY3Rpb24oKSB7IHJldHVybiBtX2Nvbm5lY3Rpb24uZ2V0KCk7IH0KIAogI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotICAgIFdlYklEQkNvbm5lY3Rpb25Ub1NlcnZlciYgaWRiQ29ubmVj
dGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQQUw6OlNlc3Npb25JRCYpOworICAgIFdlYklE
QkNvbm5lY3Rpb25Ub1NlcnZlciYgaWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihQQUw6
OlNlc3Npb25JRCk7CiAjZW5kaWYKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgV2Vi
U1dDbGllbnRDb25uZWN0aW9uJiBzZXJ2aWNlV29ya2VyQ29ubmVjdGlvbkZvclNlc3Npb24oUEFM
OjpTZXNzaW9uSUQpOwpAQCAtNzcsNyArNzcsNyBAQCBwcml2YXRlOgogI2VuZGlmCiAKICNpZiBF
TkFCTEUoU0VSVklDRV9XT1JLRVIpCi0gICAgSGFzaE1hcDxQQUw6OlNlc3Npb25JRCwgc3RkOjp1
bmlxdWVfcHRyPFdlYlNXQ2xpZW50Q29ubmVjdGlvbj4+IG1fc3dDb25uZWN0aW9uc0J5U2Vzc2lv
bjsKKyAgICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBSZWZQdHI8V2ViU1dDbGllbnRDb25uZWN0
aW9uPj4gbV9zd0Nvbm5lY3Rpb25zQnlTZXNzaW9uOwogICAgIEhhc2hNYXA8V2ViQ29yZTo6U1dT
ZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgV2ViU1dDbGllbnRDb25uZWN0aW9uKj4gbV9zd0Nv
bm5lY3Rpb25zQnlJZGVudGlmaWVyOwogI2VuZGlmCiB9Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>