<?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>229720</bug_id>
          
          <creation_ts>2021-08-31 10:13:36 -0700</creation_ts>
          <short_desc>Add support for ServiceWorkerGlobalScope.serviceWorker</short_desc>
          <delta_ts>2021-09-01 09:31:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Service Workers</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=228755</see_also>
          <bug_file_loc>https://w3c.github.io/ServiceWorker/#dom-serviceworkerglobalscope-serviceworker</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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>japhet</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mkwst</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1788951</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-08-31 10:13:36 -0700</bug_when>
    <thetext>Add support for ServiceWorkerGlobalScope.serviceWorker:
- https://w3c.github.io/ServiceWorker/#dom-serviceworkerglobalscope-serviceworker</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788952</commentid>
    <comment_count>1</comment_count>
      <attachid>436900</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-08-31 10:14:08 -0700</bug_when>
    <thetext>Created attachment 436900
WIP patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788964</commentid>
    <comment_count>2</comment_count>
      <attachid>436910</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-08-31 10:48:20 -0700</bug_when>
    <thetext>Created attachment 436910
WIP patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1788970</commentid>
    <comment_count>3</comment_count>
      <attachid>436913</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-08-31 10:56:00 -0700</bug_when>
    <thetext>Created attachment 436913
WIP patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789012</commentid>
    <comment_count>4</comment_count>
      <attachid>436924</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-08-31 12:09:24 -0700</bug_when>
    <thetext>Created attachment 436924
WIP patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789032</commentid>
    <comment_count>5</comment_count>
      <attachid>436929</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-08-31 12:40:04 -0700</bug_when>
    <thetext>Created attachment 436929
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789156</commentid>
    <comment_count>6</comment_count>
      <attachid>436965</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-08-31 16:45:37 -0700</bug_when>
    <thetext>Created attachment 436965
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789231</commentid>
    <comment_count>7</comment_count>
      <attachid>436965</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-01 00:04:47 -0700</bug_when>
    <thetext>Comment on attachment 436965
Patch

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

&gt; Source/WebCore/workers/service/context/ServiceWorkerThread.cpp:81
&gt; +    , m_workerData(crossThreadCopy(workerData))

We do not really need a ServiceWorkerContextData&amp;&amp; nor a ServiceWorkerData&amp;&amp;, except if we want to add a dedicated isolatedCopy() &amp;&amp;.

&gt; LayoutTests/imported/w3c/web-platform-tests/html/cross-origin-opener-policy/popup-coop-by-sw.https-expected.txt:1
&gt; +CONSOLE MESSAGE: Unhandled Promise Rejection: TypeError: Load failed

This unhandled promise rejection may cause flakiness according EWS.
Can we update the test to make sure this des not happen?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789316</commentid>
    <comment_count>8</comment_count>
      <attachid>437027</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-09-01 07:52:28 -0700</bug_when>
    <thetext>Created attachment 437027
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789346</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-09-01 09:30:49 -0700</bug_when>
    <thetext>Committed r281854 (241186@main): &lt;https://commits.webkit.org/241186@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 437027.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789347</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-09-01 09:31:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/82632170&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436900</attachid>
            <date>2021-08-31 10:14:08 -0700</date>
            <delta_ts>2021-08-31 10:48:20 -0700</delta_ts>
            <desc>WIP patch</desc>
            <filename>229720_wip.patch</filename>
            <type>text/plain</type>
            <size>3736</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4
cGVjdGVkLnR4dAppbmRleCAyZGNjNjE3YzQ5NjAuLjdhZWUwODZkZmM2YSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9y
aWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9z
cy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4
dApAQCAtMSwxMiArMSwxMSBAQAorQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBS
ZWplY3Rpb246IFR5cGVFcnJvcjogTG9hZCBmYWlsZWQKIAotSGFybmVzcyBFcnJvciAoVElNRU9V
VCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFzaWMs
IHN3OmJhc2ljIFRlc3QgdGltZWQgb3V0Ci1OT1RSVU4gb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFz
aWMsIHN3OmNvaQotTk9UUlVOIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6YmFzaWMKLU5P
VFJVTiBvcGVuZXI6YmFzaWMsIG9wZW5lZTpjb2ksIHN3OmNvaQotTk9UUlVOIG9wZW5lcjpjb2ks
IG9wZW5lZTpiYXNpYywgc3c6YmFzaWMKLU5PVFJVTiBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMs
IHN3OmNvaQotTk9UUlVOIG9wZW5lcjpjb2ksIG9wZW5lZTpjb2ksIHN3OmJhc2ljCi1OT1RSVU4g
b3BlbmVyOmNvaSwgb3BlbmVlOmNvaSwgc3c6Y29pCitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVl
OmJhc2ljLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6YmFzaWMsIG9wZW5lZTpiYXNpYywgc3c6Y29p
CitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6YmFzaWMKK1BBU1Mgb3BlbmVyOmJh
c2ljLCBvcGVuZWU6Y29pLCBzdzpjb2kKK1BBU1Mgb3BlbmVyOmNvaSwgb3BlbmVlOmJhc2ljLCBz
dzpiYXNpYworUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMsIHN3OmNvaQorUEFTUyBvcGVu
ZXI6Y29pLCBvcGVuZWU6Y29pLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6Y29p
LCBzdzpjb2kKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZp
Y2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCAzMzAxNGEzZTczNjcuLjc5YmMy
NzE1YzUxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5jcHAKQEAgLTg3LDYgKzg3LDE3IEBAIEV2ZW50
VGFyZ2V0SW50ZXJmYWNlIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6ZXZlbnRUYXJnZXRJbnRl
cmZhY2UoKSBjb25zdAogICAgIHJldHVybiBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGVFdmVudFRh
cmdldEludGVyZmFjZVR5cGU7CiB9CiAKK1NlcnZpY2VXb3JrZXIqIFNlcnZpY2VXb3JrZXJHbG9i
YWxTY29wZTo6c2VydmljZVdvcmtlcigpIGNvbnN0Cit7CisgICAgaWYgKG1fcmVnaXN0cmF0aW9u
LT5hY3RpdmUoKSAmJiBtX3JlZ2lzdHJhdGlvbi0+YWN0aXZlKCktPmlkZW50aWZpZXIoKSA9PSBt
X2NvbnRleHREYXRhLnNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gbV9y
ZWdpc3RyYXRpb24tPmFjdGl2ZSgpOworICAgIGlmIChtX3JlZ2lzdHJhdGlvbi0+aW5zdGFsbGlu
ZygpICYmIG1fcmVnaXN0cmF0aW9uLT5pbnN0YWxsaW5nKCktPmlkZW50aWZpZXIoKSA9PSBtX2Nv
bnRleHREYXRhLnNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKQorICAgICAgICByZXR1cm4gbV9yZWdp
c3RyYXRpb24tPmluc3RhbGxpbmcoKTsKKyAgICBpZiAobV9yZWdpc3RyYXRpb24tPndhaXRpbmco
KSAmJiBtX3JlZ2lzdHJhdGlvbi0+d2FpdGluZygpLT5pZGVudGlmaWVyKCkgPT0gbV9jb250ZXh0
RGF0YS5zZXJ2aWNlV29ya2VySWRlbnRpZmllcikKKyAgICAgICAgcmV0dXJuIG1fcmVnaXN0cmF0
aW9uLT53YWl0aW5nKCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKIFNlcnZpY2VXb3JrZXJU
aHJlYWQmIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6dGhyZWFkKCkKIHsKICAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8U2VydmljZVdvcmtlclRocmVhZCY+KFdvcmtlckdsb2JhbFNjb3BlOjp0aHJl
YWQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vy
dmljZVdvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggYzQzZDg2NTQ1ZmNiLi43MWJiNjZmNjM3MjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2Vy
R2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLmgKQEAgLTUzLDYgKzUzLDcgQEAgcHVibGljOgogCiAgICAgU2Vy
dmljZVdvcmtlckNsaWVudHMmIGNsaWVudHMoKSB7IHJldHVybiBtX2NsaWVudHMuZ2V0KCk7IH0K
ICAgICBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uJiByZWdpc3RyYXRpb24oKSB7IHJldHVybiBt
X3JlZ2lzdHJhdGlvbi5nZXQoKTsgfQorICAgIFNlcnZpY2VXb3JrZXIqIHNlcnZpY2VXb3JrZXIo
KSBjb25zdDsKICAgICAKICAgICB2b2lkIHNraXBXYWl0aW5nKFJlZjxEZWZlcnJlZFByb21pc2U+
JiYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9T
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaWRsCmluZGV4IGI0YjkxMDVmYzQzMC4uYWQwNTQyZWVj
MmNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdv
cmtlckdsb2JhbFNjb3BlLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbApAQCAtMzQsNiArMzQsNyBAQAogXSBpbnRlcmZh
Y2UgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIDogV29ya2VyR2xvYmFsU2NvcGUgewogICAgIFtT
YW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU2VydmljZVdvcmtlckNsaWVudHMgY2xpZW50
czsKICAgICBbU2FtZU9iamVjdF0gcmVhZG9ubHkgYXR0cmlidXRlIFNlcnZpY2VXb3JrZXJSZWdp
c3RyYXRpb24gcmVnaXN0cmF0aW9uOworICAgIFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1
dGUgU2VydmljZVdvcmtlcj8gc2VydmljZVdvcmtlcjsKIAogICAgIFtOZXdPYmplY3RdIFByb21p
c2U8dW5kZWZpbmVkPiBza2lwV2FpdGluZygpOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436910</attachid>
            <date>2021-08-31 10:48:20 -0700</date>
            <delta_ts>2021-08-31 10:56:00 -0700</delta_ts>
            <desc>WIP patch</desc>
            <filename>229720_wip.patch</filename>
            <type>text/plain</type>
            <size>3338</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4
cGVjdGVkLnR4dAppbmRleCAyZGNjNjE3YzQ5NjAuLjdhZWUwODZkZmM2YSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9y
aWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9z
cy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4
dApAQCAtMSwxMiArMSwxMSBAQAorQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBS
ZWplY3Rpb246IFR5cGVFcnJvcjogTG9hZCBmYWlsZWQKIAotSGFybmVzcyBFcnJvciAoVElNRU9V
VCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFzaWMs
IHN3OmJhc2ljIFRlc3QgdGltZWQgb3V0Ci1OT1RSVU4gb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFz
aWMsIHN3OmNvaQotTk9UUlVOIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6YmFzaWMKLU5P
VFJVTiBvcGVuZXI6YmFzaWMsIG9wZW5lZTpjb2ksIHN3OmNvaQotTk9UUlVOIG9wZW5lcjpjb2ks
IG9wZW5lZTpiYXNpYywgc3c6YmFzaWMKLU5PVFJVTiBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMs
IHN3OmNvaQotTk9UUlVOIG9wZW5lcjpjb2ksIG9wZW5lZTpjb2ksIHN3OmJhc2ljCi1OT1RSVU4g
b3BlbmVyOmNvaSwgb3BlbmVlOmNvaSwgc3c6Y29pCitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVl
OmJhc2ljLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6YmFzaWMsIG9wZW5lZTpiYXNpYywgc3c6Y29p
CitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6YmFzaWMKK1BBU1Mgb3BlbmVyOmJh
c2ljLCBvcGVuZWU6Y29pLCBzdzpjb2kKK1BBU1Mgb3BlbmVyOmNvaSwgb3BlbmVlOmJhc2ljLCBz
dzpiYXNpYworUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMsIHN3OmNvaQorUEFTUyBvcGVu
ZXI6Y29pLCBvcGVuZWU6Y29pLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6Y29p
LCBzdzpjb2kKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZp
Y2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCAzMzAxNGEzZTczNjcuLmM2YmFh
MjliMzE0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5jcHAKQEAgLTYxLDYgKzYxLDExIEBAIFNlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZTo6U2VydmljZVdvcmtlckdsb2JhbFNjb3BlKFNlcnZpY2VXb3Jr
ZXJDb250ZXh0RGF0YSYmIGRhCiAKIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6flNlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZSgpID0gZGVmYXVsdDsKIAorU2VydmljZVdvcmtlciogU2VydmljZVdv
cmtlckdsb2JhbFNjb3BlOjpzZXJ2aWNlV29ya2VyKCkKK3sKKyAgICByZXR1cm4gdGhpcy0+c2Vy
dmljZVdvcmtlcihtX2NvbnRleHREYXRhLnNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKTsKK30KKwog
dm9pZCBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU6OnNraXBXYWl0aW5nKFJlZjxEZWZlcnJlZFBy
b21pc2U+JiYgcHJvbWlzZSkKIHsKICAgICB1aW50NjRfdCByZXF1ZXN0SWRlbnRpZmllciA9ICsr
bV9sYXN0UmVxdWVzdElkZW50aWZpZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggYzQzZDg2NTQ1
ZmNiLi43NDU0MmJjYzVkYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmgKQEAgLTUzLDYgKzUzLDkgQEAg
cHVibGljOgogCiAgICAgU2VydmljZVdvcmtlckNsaWVudHMmIGNsaWVudHMoKSB7IHJldHVybiBt
X2NsaWVudHMuZ2V0KCk7IH0KICAgICBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uJiByZWdpc3Ry
YXRpb24oKSB7IHJldHVybiBtX3JlZ2lzdHJhdGlvbi5nZXQoKTsgfQorCisgICAgdXNpbmcgV29y
a2VyR2xvYmFsU2NvcGU6OnNlcnZpY2VXb3JrZXI7CisgICAgU2VydmljZVdvcmtlciogc2Vydmlj
ZVdvcmtlcigpOwogICAgIAogICAgIHZvaWQgc2tpcFdhaXRpbmcoUmVmPERlZmVycmVkUHJvbWlz
ZT4mJik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXggYjRiOTEwNWZjNDMwLi40ZjkxN2M3
NzdjMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC0zNCw2ICszNCw3IEBACiBdIGludGVy
ZmFjZSBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUgOiBXb3JrZXJHbG9iYWxTY29wZSB7CiAgICAg
W1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTZXJ2aWNlV29ya2VyQ2xpZW50cyBjbGll
bnRzOwogICAgIFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU2VydmljZVdvcmtlclJl
Z2lzdHJhdGlvbiByZWdpc3RyYXRpb247CisgICAgW1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJp
YnV0ZSBTZXJ2aWNlV29ya2VyIHNlcnZpY2VXb3JrZXI7CiAKICAgICBbTmV3T2JqZWN0XSBQcm9t
aXNlPHVuZGVmaW5lZD4gc2tpcFdhaXRpbmcoKTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436913</attachid>
            <date>2021-08-31 10:56:00 -0700</date>
            <delta_ts>2021-08-31 12:09:24 -0700</delta_ts>
            <desc>WIP patch</desc>
            <filename>229720_wip.patch</filename>
            <type>text/plain</type>
            <size>5572</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4
cGVjdGVkLnR4dAppbmRleCAyZGNjNjE3YzQ5NjAuLjdhZWUwODZkZmM2YSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9y
aWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9z
cy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4
dApAQCAtMSwxMiArMSwxMSBAQAorQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBS
ZWplY3Rpb246IFR5cGVFcnJvcjogTG9hZCBmYWlsZWQKIAotSGFybmVzcyBFcnJvciAoVElNRU9V
VCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFzaWMs
IHN3OmJhc2ljIFRlc3QgdGltZWQgb3V0Ci1OT1RSVU4gb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFz
aWMsIHN3OmNvaQotTk9UUlVOIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6YmFzaWMKLU5P
VFJVTiBvcGVuZXI6YmFzaWMsIG9wZW5lZTpjb2ksIHN3OmNvaQotTk9UUlVOIG9wZW5lcjpjb2ks
IG9wZW5lZTpiYXNpYywgc3c6YmFzaWMKLU5PVFJVTiBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMs
IHN3OmNvaQotTk9UUlVOIG9wZW5lcjpjb2ksIG9wZW5lZTpjb2ksIHN3OmJhc2ljCi1OT1RSVU4g
b3BlbmVyOmNvaSwgb3BlbmVlOmNvaSwgc3c6Y29pCitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVl
OmJhc2ljLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6YmFzaWMsIG9wZW5lZTpiYXNpYywgc3c6Y29p
CitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6YmFzaWMKK1BBU1Mgb3BlbmVyOmJh
c2ljLCBvcGVuZWU6Y29pLCBzdzpjb2kKK1BBU1Mgb3BlbmVyOmNvaSwgb3BlbmVlOmJhc2ljLCBz
dzpiYXNpYworUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMsIHN3OmNvaQorUEFTUyBvcGVu
ZXI6Y29pLCBvcGVuZWU6Y29pLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6Y29p
LCBzdzpjb2kKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3
b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZ2xvYmFsLXNlcnZpY2V3b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0
ZWQudHh0CmluZGV4IDdlNDI4NDc3YTM3My4uNWIwYzA5NDZiODg0IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9nbG9iYWwtc2VydmljZXdvcmtlci5odHRwcy5hbnkuc2VydmljZXdvcmtl
ci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3b3Jr
ZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAog
Ci1GQUlMIEZpcnN0IHJ1biBhc3NlcnRfdHJ1ZTogc2VsZi5zZXJ2aWNlV29ya2VyIGV4aXN0cyBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBDYW4gcG9zdCBtZXNzYWdlIHRvIHNlbGYgZHVy
aW5nIHN0YXJ0dXAgYXNzZXJ0X3RydWU6IHNlbGYuc2VydmljZVdvcmtlciBleGlzdHMgZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgRHVyaW5nIGluc3RhbGwgYXNzZXJ0X3RydWU6IHNlbGYu
c2VydmljZVdvcmtlciBleGlzdHMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgRHVyaW5n
IGFjdGl2YXRlIGFzc2VydF90cnVlOiBzZWxmLnNlcnZpY2VXb3JrZXIgZXhpc3RzIGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitGQUlMIEZpcnN0IHJ1biBudWxsIGlzIG5vdCBhbiBvYmplY3QgKGV2
YWx1YXRpbmcgJ3NlcnZpY2VXb3JrZXIuc3RhdGUnKQorRkFJTCBDYW4gcG9zdCBtZXNzYWdlIHRv
IHNlbGYgZHVyaW5nIHN0YXJ0dXAgbnVsbCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdz
ZXJ2aWNlV29ya2VyLnBvc3RNZXNzYWdlJykKK0ZBSUwgRHVyaW5nIGluc3RhbGwgYXNzZXJ0X2Vx
dWFsczogc2VsZi5zZXJ2aWNlV29ya2VyIGhhc24ndCBjaGFuZ2VkIGV4cGVjdGVkIG51bGwgYnV0
IGdvdCBvYmplY3QgIltvYmplY3QgU2VydmljZVdvcmtlcl0iCitGQUlMIER1cmluZyBhY3RpdmF0
ZSBhc3NlcnRfZXF1YWxzOiBzZWxmLnNlcnZpY2VXb3JrZXIgaGFzbid0IGNoYW5nZWQgZXhwZWN0
ZWQgbnVsbCBidXQgZ290IG9iamVjdCAiW29iamVjdCBTZXJ2aWNlV29ya2VyXSIKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93ZWJzb2NrZXQtaW4tc2Vy
dmljZS13b3JrZXIuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
LXdrMi9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci93ZWJzb2NrZXQtaW4tc2VydmljZS13b3JrZXIuaHR0cHMtZXhwZWN0ZWQudHh0
CmluZGV4IDI4N2YyMzVkZTdjNS4uNDYxMDhkNTBlMjM4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMtd2syL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3dlYnNvY2tldC1pbi1zZXJ2aWNlLXdvcmtlci5odHRw
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci93
ZWJzb2NrZXQtaW4tc2VydmljZS13b3JrZXIuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MyBAQAogCi1GQUlMIFZlcmlmeSBXZWJTb2NrZXRzIGNhbiBiZSBjcmVhdGVkIGluIGEgU2Vydmlj
ZSBXb3JrZXIgYXNzZXJ0X2VxdWFsczogZXhwZWN0ZWQgIlBBU1MiIGJ1dCBnb3QgIkZBSUw6IEdv
dCBhbiBlcnJvciBldmVudCIKK1BBU1MgVmVyaWZ5IFdlYlNvY2tldHMgY2FuIGJlIGNyZWF0ZWQg
aW4gYSBTZXJ2aWNlIFdvcmtlcgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCmluZGV4IDMzMDE0YTNl
NzM2Ny4uYzZiYWEyOWIzMTQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtNjEsNiArNjEs
MTEgQEAgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUo
U2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGEKIAogU2VydmljZVdvcmtlckdsb2JhbFNjb3Bl
Ojp+U2VydmljZVdvcmtlckdsb2JhbFNjb3BlKCkgPSBkZWZhdWx0OwogCitTZXJ2aWNlV29ya2Vy
KiBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU6OnNlcnZpY2VXb3JrZXIoKQoreworICAgIHJldHVy
biB0aGlzLT5zZXJ2aWNlV29ya2VyKG1fY29udGV4dERhdGEuc2VydmljZVdvcmtlcklkZW50aWZp
ZXIpOworfQorCiB2b2lkIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6c2tpcFdhaXRpbmcoUmVm
PERlZmVycmVkUHJvbWlzZT4mJiBwcm9taXNlKQogewogICAgIHVpbnQ2NF90IHJlcXVlc3RJZGVu
dGlmaWVyID0gKyttX2xhc3RSZXF1ZXN0SWRlbnRpZmllcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaAppbmRl
eCBjNDNkODY1NDVmY2IuLjc0NTQyYmNjNWRiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtNTMs
NiArNTMsOSBAQCBwdWJsaWM6CiAKICAgICBTZXJ2aWNlV29ya2VyQ2xpZW50cyYgY2xpZW50cygp
IHsgcmV0dXJuIG1fY2xpZW50cy5nZXQoKTsgfQogICAgIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b24mIHJlZ2lzdHJhdGlvbigpIHsgcmV0dXJuIG1fcmVnaXN0cmF0aW9uLmdldCgpOyB9CisKKyAg
ICB1c2luZyBXb3JrZXJHbG9iYWxTY29wZTo6c2VydmljZVdvcmtlcjsKKyAgICBTZXJ2aWNlV29y
a2VyKiBzZXJ2aWNlV29ya2VyKCk7CiAgICAgCiAgICAgdm9pZCBza2lwV2FpdGluZyhSZWY8RGVm
ZXJyZWRQcm9taXNlPiYmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5pZGwgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbAppbmRleCBiNGI5MTA1ZmM0
MzAuLjRmOTE3Yzc3N2MxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5pZGwKQEAgLTM0LDYgKzM0LDcg
QEAKIF0gaW50ZXJmYWNlIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSA6IFdvcmtlckdsb2JhbFNj
b3BlIHsKICAgICBbU2FtZU9iamVjdF0gcmVhZG9ubHkgYXR0cmlidXRlIFNlcnZpY2VXb3JrZXJD
bGllbnRzIGNsaWVudHM7CiAgICAgW1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTZXJ2
aWNlV29ya2VyUmVnaXN0cmF0aW9uIHJlZ2lzdHJhdGlvbjsKKyAgICBbU2FtZU9iamVjdF0gcmVh
ZG9ubHkgYXR0cmlidXRlIFNlcnZpY2VXb3JrZXIgc2VydmljZVdvcmtlcjsKIAogICAgIFtOZXdP
YmplY3RdIFByb21pc2U8dW5kZWZpbmVkPiBza2lwV2FpdGluZygpOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436924</attachid>
            <date>2021-08-31 12:09:24 -0700</date>
            <delta_ts>2021-08-31 12:40:02 -0700</delta_ts>
            <desc>WIP patch</desc>
            <filename>229720_wip.patch</filename>
            <type>text/plain</type>
            <size>28725</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4
cGVjdGVkLnR4dAppbmRleCAyZGNjNjE3YzQ5NjAuLjdhZWUwODZkZmM2YSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9y
aWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9z
cy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4
dApAQCAtMSwxMiArMSwxMSBAQAorQ09OU09MRSBNRVNTQUdFOiBVbmhhbmRsZWQgUHJvbWlzZSBS
ZWplY3Rpb246IFR5cGVFcnJvcjogTG9hZCBmYWlsZWQKIAotSGFybmVzcyBFcnJvciAoVElNRU9V
VCksIG1lc3NhZ2UgPSBudWxsCi0KLVRJTUVPVVQgb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFzaWMs
IHN3OmJhc2ljIFRlc3QgdGltZWQgb3V0Ci1OT1RSVU4gb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFz
aWMsIHN3OmNvaQotTk9UUlVOIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6YmFzaWMKLU5P
VFJVTiBvcGVuZXI6YmFzaWMsIG9wZW5lZTpjb2ksIHN3OmNvaQotTk9UUlVOIG9wZW5lcjpjb2ks
IG9wZW5lZTpiYXNpYywgc3c6YmFzaWMKLU5PVFJVTiBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMs
IHN3OmNvaQotTk9UUlVOIG9wZW5lcjpjb2ksIG9wZW5lZTpjb2ksIHN3OmJhc2ljCi1OT1RSVU4g
b3BlbmVyOmNvaSwgb3BlbmVlOmNvaSwgc3c6Y29pCitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVl
OmJhc2ljLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6YmFzaWMsIG9wZW5lZTpiYXNpYywgc3c6Y29p
CitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6YmFzaWMKK1BBU1Mgb3BlbmVyOmJh
c2ljLCBvcGVuZWU6Y29pLCBzdzpjb2kKK1BBU1Mgb3BlbmVyOmNvaSwgb3BlbmVlOmJhc2ljLCBz
dzpiYXNpYworUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMsIHN3OmNvaQorUEFTUyBvcGVu
ZXI6Y29pLCBvcGVuZWU6Y29pLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6Y29p
LCBzdzpjb2kKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3
b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13
b3JrZXIvZ2xvYmFsLXNlcnZpY2V3b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0
ZWQudHh0CmluZGV4IDdlNDI4NDc3YTM3My4uN2Q0YmNkODQzYTZmIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9nbG9iYWwtc2VydmljZXdvcmtlci5odHRwcy5hbnkuc2VydmljZXdvcmtl
ci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3b3Jr
ZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAog
Ci1GQUlMIEZpcnN0IHJ1biBhc3NlcnRfdHJ1ZTogc2VsZi5zZXJ2aWNlV29ya2VyIGV4aXN0cyBl
eHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBDYW4gcG9zdCBtZXNzYWdlIHRvIHNlbGYgZHVy
aW5nIHN0YXJ0dXAgYXNzZXJ0X3RydWU6IHNlbGYuc2VydmljZVdvcmtlciBleGlzdHMgZXhwZWN0
ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgRHVyaW5nIGluc3RhbGwgYXNzZXJ0X3RydWU6IHNlbGYu
c2VydmljZVdvcmtlciBleGlzdHMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgRHVyaW5n
IGFjdGl2YXRlIGFzc2VydF90cnVlOiBzZWxmLnNlcnZpY2VXb3JrZXIgZXhpc3RzIGV4cGVjdGVk
IHRydWUgZ290IGZhbHNlCitQQVNTIEZpcnN0IHJ1bgorUEFTUyBDYW4gcG9zdCBtZXNzYWdlIHRv
IHNlbGYgZHVyaW5nIHN0YXJ0dXAKK1BBU1MgRHVyaW5nIGluc3RhbGwKK1BBU1MgRHVyaW5nIGFj
dGl2YXRlCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2
aWNlV29ya2VyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29y
a2VyLmlkbAppbmRleCBkNjZmYTNjYzMxNjkuLjQ5YmZmYTFhYTU4NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyLmlkbApAQCAtNDUsNiArNDUs
NyBAQAogU2VydmljZVdvcmtlciBpbmNsdWRlcyBBYnN0cmFjdFdvcmtlcjsKIAogZW51bSBTZXJ2
aWNlV29ya2VyU3RhdGUgeworICAgICJwYXJzZWQiLAogICAgICJpbnN0YWxsaW5nIiwKICAgICAi
aW5zdGFsbGVkIiwKICAgICAiYWN0aXZhdGluZyIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCmluZGV4
IDMzMDE0YTNlNzM2Ny4uZmJjMDcyYWU5MzMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAt
MzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkV4dGVuZGFibGVFdmVudC5oIgogI2luY2x1ZGUgIkpT
RE9NUHJvbWlzZURlZmVycmVkLmgiCiAjaW5jbHVkZSAiU1dDb250ZXh0TWFuYWdlci5oIgorI2lu
Y2x1ZGUgIlNlcnZpY2VXb3JrZXIuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VyQ2xpZW50Lmgi
CiAjaW5jbHVkZSAiU2VydmljZVdvcmtlckNsaWVudHMuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29y
a2VyQ29udGFpbmVyLmgiCkBAIC00NCwxNyArNDUsMTggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwoU2VydmljZVdvcmtlckdsb2JhbFNjb3BlKTsK
IAotUmVmPFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZT4gU2VydmljZVdvcmtlckdsb2JhbFNjb3Bl
OjpjcmVhdGUoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGF0YSwgY29uc3QgV29ya2VyUGFy
YW1ldGVycyYgcGFyYW1zLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBTZXJ2aWNlV29y
a2VyVGhyZWFkJiB0aHJlYWQsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNs
aWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVy
KiBzb2NrZXRQcm92aWRlcikKK1JlZjxTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU+IFNlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmIGNvbnRl
eHREYXRhLCBTZXJ2aWNlV29ya2VyRGF0YSYmIHdvcmtlckRhdGEsIGNvbnN0IFdvcmtlclBhcmFt
ZXRlcnMmIHBhcmFtcywgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9yaWdpbiwgU2VydmljZVdvcmtl
clRocmVhZCYgdGhyZWFkLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGll
bnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRlciog
c29ja2V0UHJvdmlkZXIpCiB7Ci0gICAgYXV0byBzY29wZSA9IGFkb3B0UmVmKCpuZXcgU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlIHsgV1RGTW92ZShkYXRhKSwgcGFyYW1zLCBXVEZNb3ZlKG9yaWdp
biksIHRocmVhZCwgV1RGTW92ZSh0b3BPcmlnaW4pLCBjb25uZWN0aW9uUHJveHksIHNvY2tldFBy
b3ZpZGVyIH0pOworICAgIGF1dG8gc2NvcGUgPSBhZG9wdFJlZigqbmV3IFNlcnZpY2VXb3JrZXJH
bG9iYWxTY29wZSB7IFdURk1vdmUoY29udGV4dERhdGEpLCBXVEZNb3ZlKHdvcmtlckRhdGEpLCBw
YXJhbXMsIFdURk1vdmUob3JpZ2luKSwgdGhyZWFkLCBXVEZNb3ZlKHRvcE9yaWdpbiksIGNvbm5l
Y3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIgfSk7CiAgICAgc2NvcGUtPmFwcGx5Q29udGVudFNl
Y3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzKHBhcmFtcy5jb250ZW50U2VjdXJpdHlQb2xpY3lS
ZXNwb25zZUhlYWRlcnMpOwogICAgIHJldHVybiBzY29wZTsKIH0KIAotU2VydmljZVdvcmtlckds
b2JhbFNjb3BlOjpTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUoU2VydmljZVdvcmtlckNvbnRleHRE
YXRhJiYgZGF0YSwgY29uc3QgV29ya2VyUGFyYW1ldGVycyYgcGFyYW1zLCBSZWY8U2VjdXJpdHlP
cmlnaW4+JiYgb3JpZ2luLCBTZXJ2aWNlV29ya2VyVGhyZWFkJiB0aHJlYWQsIFJlZjxTZWN1cml0
eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25u
ZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcikKK1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZTo6U2VydmljZVdvcmtlckdsb2JhbFNjb3BlKFNlcnZpY2VXb3JrZXJDb250
ZXh0RGF0YSYmIGNvbnRleHREYXRhLCBTZXJ2aWNlV29ya2VyRGF0YSYmIHdvcmtlckRhdGEsIGNv
bnN0IFdvcmtlclBhcmFtZXRlcnMmIHBhcmFtcywgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9yaWdp
biwgU2VydmljZVdvcmtlclRocmVhZCYgdGhyZWFkLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9w
T3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVjdGlvblByb3h5LCBT
b2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIpCiAgICAgOiBXb3JrZXJHbG9iYWxTY29wZShX
b3JrZXJUaHJlYWRUeXBlOjpTZXJ2aWNlV29ya2VyLCBwYXJhbXMsIFdURk1vdmUob3JpZ2luKSwg
dGhyZWFkLCBXVEZNb3ZlKHRvcE9yaWdpbiksIGNvbm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlk
ZXIpCi0gICAgLCBtX2NvbnRleHREYXRhKFdURk1vdmUoZGF0YSkpCisgICAgLCBtX2NvbnRleHRE
YXRhKFdURk1vdmUoY29udGV4dERhdGEpKQogICAgICwgbV9yZWdpc3RyYXRpb24oU2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbjo6Z2V0T3JDcmVhdGUoKnRoaXMsIG5hdmlnYXRvcigpLnNlcnZpY2VX
b3JrZXIoKSwgV1RGTW92ZShtX2NvbnRleHREYXRhLnJlZ2lzdHJhdGlvbikpKQorICAgICwgbV9z
ZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXI6OmdldE9yQ3JlYXRlKCp0aGlzLCBXVEZNb3ZlKHdv
cmtlckRhdGEpKSkKICAgICAsIG1fY2xpZW50cyhTZXJ2aWNlV29ya2VyQ2xpZW50czo6Y3JlYXRl
KCkpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vy
dmljZVdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmgKaW5kZXggYzQzZDg2NTQ1ZmNiLi44NGE2YzA1NmEz
MzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vy
dmljZVdvcmtlckdsb2JhbFNjb3BlLmgKQEAgLTQ1LDcgKzQ1LDcgQEAgY2xhc3MgU2VydmljZVdv
cmtlclRocmVhZDsKIGNsYXNzIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSBmaW5hbCA6IHB1Ymxp
YyBXb3JrZXJHbG9iYWxTY29wZSB7CiAgICAgV1RGX01BS0VfSVNPX0FMTE9DQVRFRChTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUpOwogcHVibGljOgotICAgIHN0YXRpYyBSZWY8U2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlPiBjcmVhdGUoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYsIGNvbnN0IFdv
cmtlclBhcmFtZXRlcnMmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIFNlcnZpY2VXb3JrZXJUaHJl
YWQmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5l
Y3Rpb25Qcm94eSosIFNvY2tldFByb3ZpZGVyKik7CisgICAgc3RhdGljIFJlZjxTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGU+IGNyZWF0ZShTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgU2Vydmlj
ZVdvcmtlckRhdGEmJiwgY29uc3QgV29ya2VyUGFyYW1ldGVycyYsIFJlZjxTZWN1cml0eU9yaWdp
bj4mJiwgU2VydmljZVdvcmtlclRocmVhZCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmln
aW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqKTsKIAog
ICAgIH5TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUoKTsKIApAQCAtNTMsNiArNTMsNyBAQCBwdWJs
aWM6CiAKICAgICBTZXJ2aWNlV29ya2VyQ2xpZW50cyYgY2xpZW50cygpIHsgcmV0dXJuIG1fY2xp
ZW50cy5nZXQoKTsgfQogICAgIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24mIHJlZ2lzdHJhdGlv
bigpIHsgcmV0dXJuIG1fcmVnaXN0cmF0aW9uLmdldCgpOyB9CisgICAgU2VydmljZVdvcmtlciYg
c2VydmljZVdvcmtlcigpIHsgcmV0dXJuIG1fc2VydmljZVdvcmtlci5nZXQoKTsgfQogICAgIAog
ICAgIHZvaWQgc2tpcFdhaXRpbmcoUmVmPERlZmVycmVkUHJvbWlzZT4mJik7CiAKQEAgLTc3LDEy
ICs3OCwxMyBAQCBwdWJsaWM6CiAgICAgRmV0Y2hPcHRpb25zOjpEZXN0aW5hdGlvbiBkZXN0aW5h
dGlvbigpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIEZldGNoT3B0aW9uczo6RGVzdGluYXRpb246OlNl
cnZpY2V3b3JrZXI7IH0KICAgICAKIHByaXZhdGU6Ci0gICAgU2VydmljZVdvcmtlckdsb2JhbFNj
b3BlKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBjb25zdCBXb3JrZXJQYXJhbWV0ZXJzJiwg
UmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBTZXJ2aWNlV29ya2VyVGhyZWFkJiwgUmVmPFNlY3VyaXR5
T3JpZ2luPiYmIHRvcE9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2Nr
ZXRQcm92aWRlciopOworICAgIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZShTZXJ2aWNlV29ya2Vy
Q29udGV4dERhdGEmJiwgU2VydmljZVdvcmtlckRhdGEmJiwgY29uc3QgV29ya2VyUGFyYW1ldGVy
cyYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgU2VydmljZVdvcmtlclRocmVhZCYsIFJlZjxTZWN1
cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5Kiwg
U29ja2V0UHJvdmlkZXIqKTsKIAogICAgIGJvb2wgaGFzUGVuZGluZ0V2ZW50cygpIGNvbnN0IHsg
cmV0dXJuICFtX2V4dGVuZGVkRXZlbnRzLmlzRW1wdHkoKTsgfQogCiAgICAgU2VydmljZVdvcmtl
ckNvbnRleHREYXRhIG1fY29udGV4dERhdGE7CiAgICAgUmVmPFNlcnZpY2VXb3JrZXJSZWdpc3Ry
YXRpb24+IG1fcmVnaXN0cmF0aW9uOworICAgIFJlZjxTZXJ2aWNlV29ya2VyPiBtX3NlcnZpY2VX
b3JrZXI7CiAgICAgUmVmPFNlcnZpY2VXb3JrZXJDbGllbnRzPiBtX2NsaWVudHM7CiAgICAgSGFz
aE1hcDxTZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllciwgU2VydmljZVdvcmtlckNsaWVudCo+
IG1fY2xpZW50TWFwOwogICAgIFZlY3RvcjxSZWY8RXh0ZW5kYWJsZUV2ZW50Pj4gbV9leHRlbmRl
ZEV2ZW50czsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUuaWRsIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5pZGwKaW5kZXggYjRiOTEwNWZjNDMwLi40ZjkxN2M3
NzdjMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC0zNCw2ICszNCw3IEBACiBdIGludGVy
ZmFjZSBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUgOiBXb3JrZXJHbG9iYWxTY29wZSB7CiAgICAg
W1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTZXJ2aWNlV29ya2VyQ2xpZW50cyBjbGll
bnRzOwogICAgIFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU2VydmljZVdvcmtlclJl
Z2lzdHJhdGlvbiByZWdpc3RyYXRpb247CisgICAgW1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJp
YnV0ZSBTZXJ2aWNlV29ya2VyIHNlcnZpY2VXb3JrZXI7CiAKICAgICBbTmV3T2JqZWN0XSBQcm9t
aXNlPHVuZGVmaW5lZD4gc2tpcFdhaXRpbmcoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJUeXBlcy5oIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJUeXBlcy5oCmluZGV4IDg4NmM1YWQ0OTAyMC4u
NjIyZGUzMzBkOWNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uv
U2VydmljZVdvcmtlclR5cGVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L1NlcnZpY2VXb3JrZXJUeXBlcy5oCkBAIC00Niw2ICs0Niw3IEBAIGVudW0gY2xhc3MgU2Vydmlj
ZVdvcmtlclJlZ2lzdHJhdGlvblN0YXRlIDogdWludDhfdCB7CiB9OwogCiBlbnVtIGNsYXNzIFNl
cnZpY2VXb3JrZXJTdGF0ZSA6IHVpbnQ4X3QgeworICAgIFBhcnNlZCwKICAgICBJbnN0YWxsaW5n
LAogICAgIEluc3RhbGxlZCwKICAgICBBY3RpdmF0aW5nLApAQCAtMTA1LDYgKzEwNiw3IEBAIHRl
bXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3Ry
YXRpb25TdGF0ZT4gewogdGVtcGxhdGUgPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6U2Vy
dmljZVdvcmtlclN0YXRlPiB7CiAgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlczwKICAgICAg
ICAgV2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRlLAorICAgICAgICBXZWJDb3JlOjpTZXJ2aWNl
V29ya2VyU3RhdGU6OlBhcnNlZCwKICAgICAgICAgV2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRl
OjpJbnN0YWxsaW5nLAogICAgICAgICBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyU3RhdGU6Okluc3Rh
bGxlZCwKICAgICAgICAgV2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRlOjpBY3RpdmF0aW5nLApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2Vydmlj
ZVdvcmtlclRocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4
dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAppbmRleCBlYTJhYmZlNTk3OGQuLjUxZDdlOWU1Nzkx
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2Vy
dmljZVdvcmtlclRocmVhZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5jcHAKQEAgLTczLDExICs3MywxMiBAQCBwcml2
YXRlOgogLy8gRklYTUU6IFVzZSBhIHZhbGlkIFdvcmtlck9iamVjdFByb3h5CiAvLyBGSVhNRTog
VXNlIHZhbGlkIHJ1bnRpbWUgZmxhZ3MKIAotU2VydmljZVdvcmtlclRocmVhZDo6U2VydmljZVdv
cmtlclRocmVhZChTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiBkYXRhLCBTdHJpbmcmJiB1c2Vy
QWdlbnQsIGNvbnN0IFNldHRpbmdzOjpWYWx1ZXMmIHNldHRpbmdzVmFsdWVzLCBXb3JrZXJMb2Fk
ZXJQcm94eSYgbG9hZGVyUHJveHksIFdvcmtlckRlYnVnZ2VyUHJveHkmIGRlYnVnZ2VyUHJveHks
IElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBpZGJDb25uZWN0aW9uUHJveHksIFNvY2tl
dFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcikKLSAgICA6IFdvcmtlclRocmVhZCh7IGRhdGEuc2Ny
aXB0VVJMLCBlbXB0eVN0cmluZygpLCAic2VydmljZXdvcmtlcjoiICsgSW5zcGVjdG9yOjpJZGVu
dGlmaWVyc0ZhY3Rvcnk6OmNyZWF0ZUlkZW50aWZpZXIoKSwgV1RGTW92ZSh1c2VyQWdlbnQpLCBw
bGF0Zm9ybVN0cmF0ZWdpZXMoKS0+bG9hZGVyU3RyYXRlZ3koKS0+aXNPbkxpbmUoKSwgZGF0YS5j
b250ZW50U2VjdXJpdHlQb2xpY3ksIGZhbHNlLCBkYXRhLmNyb3NzT3JpZ2luRW1iZWRkZXJQb2xp
Y3ksIE1vbm90b25pY1RpbWU6Om5vdygpLCB7IH0sIGRhdGEud29ya2VyVHlwZSwgRmV0Y2hSZXF1
ZXN0Q3JlZGVudGlhbHM6Ok9taXQsIHNldHRpbmdzVmFsdWVzIH0sIGRhdGEuc2NyaXB0LCBsb2Fk
ZXJQcm94eSwgZGVidWdnZXJQcm94eSwgRHVtbXlTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHk6OnNo
YXJlZCgpLCBXb3JrZXJUaHJlYWRTdGFydE1vZGU6Ok5vcm1hbCwgZGF0YS5yZWdpc3RyYXRpb24u
a2V5LnRvcE9yaWdpbigpLnNlY3VyaXR5T3JpZ2luKCkuZ2V0KCksIGlkYkNvbm5lY3Rpb25Qcm94
eSwgc29ja2V0UHJvdmlkZXIsIEpTQzo6UnVudGltZUZsYWdzOjpjcmVhdGVBbGxFbmFibGVkKCkp
Ci0gICAgLCBtX3NlcnZpY2VXb3JrZXJJZGVudGlmaWVyKGRhdGEuc2VydmljZVdvcmtlcklkZW50
aWZpZXIpCi0gICAgLCBtX2pvYkRhdGFJZGVudGlmaWVyKGRhdGEuam9iRGF0YUlkZW50aWZpZXIp
Ci0gICAgLCBtX2RhdGEoY3Jvc3NUaHJlYWRDb3B5KGRhdGEpKQorU2VydmljZVdvcmtlclRocmVh
ZDo6U2VydmljZVdvcmtlclRocmVhZChTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiBjb250ZXh0
RGF0YSwgU2VydmljZVdvcmtlckRhdGEmJiB3b3JrZXJEYXRhLCBTdHJpbmcmJiB1c2VyQWdlbnQs
IGNvbnN0IFNldHRpbmdzOjpWYWx1ZXMmIHNldHRpbmdzVmFsdWVzLCBXb3JrZXJMb2FkZXJQcm94
eSYgbG9hZGVyUHJveHksIFdvcmtlckRlYnVnZ2VyUHJveHkmIGRlYnVnZ2VyUHJveHksIElEQkNs
aWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBpZGJDb25uZWN0aW9uUHJveHksIFNvY2tldFByb3Zp
ZGVyKiBzb2NrZXRQcm92aWRlcikKKyAgICA6IFdvcmtlclRocmVhZCh7IGNvbnRleHREYXRhLnNj
cmlwdFVSTCwgZW1wdHlTdHJpbmcoKSwgInNlcnZpY2V3b3JrZXI6IiArIEluc3BlY3Rvcjo6SWRl
bnRpZmllcnNGYWN0b3J5OjpjcmVhdGVJZGVudGlmaWVyKCksIFdURk1vdmUodXNlckFnZW50KSwg
cGxhdGZvcm1TdHJhdGVnaWVzKCktPmxvYWRlclN0cmF0ZWd5KCktPmlzT25MaW5lKCksIGNvbnRl
eHREYXRhLmNvbnRlbnRTZWN1cml0eVBvbGljeSwgZmFsc2UsIGNvbnRleHREYXRhLmNyb3NzT3Jp
Z2luRW1iZWRkZXJQb2xpY3ksIE1vbm90b25pY1RpbWU6Om5vdygpLCB7IH0sIGNvbnRleHREYXRh
LndvcmtlclR5cGUsIEZldGNoUmVxdWVzdENyZWRlbnRpYWxzOjpPbWl0LCBzZXR0aW5nc1ZhbHVl
cyB9LCBjb250ZXh0RGF0YS5zY3JpcHQsIGxvYWRlclByb3h5LCBkZWJ1Z2dlclByb3h5LCBEdW1t
eVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6c2hhcmVkKCksIFdvcmtlclRocmVhZFN0YXJ0TW9k
ZTo6Tm9ybWFsLCBjb250ZXh0RGF0YS5yZWdpc3RyYXRpb24ua2V5LnRvcE9yaWdpbigpLnNlY3Vy
aXR5T3JpZ2luKCkuZ2V0KCksIGlkYkNvbm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIsIEpT
Qzo6UnVudGltZUZsYWdzOjpjcmVhdGVBbGxFbmFibGVkKCkpCisgICAgLCBtX3NlcnZpY2VXb3Jr
ZXJJZGVudGlmaWVyKGNvbnRleHREYXRhLnNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKQorICAgICwg
bV9qb2JEYXRhSWRlbnRpZmllcihjb250ZXh0RGF0YS5qb2JEYXRhSWRlbnRpZmllcikKKyAgICAs
IG1fY29udGV4dERhdGEoY3Jvc3NUaHJlYWRDb3B5KGNvbnRleHREYXRhKSkKKyAgICAsIG1fd29y
a2VyRGF0YShjcm9zc1RocmVhZENvcHkod29ya2VyRGF0YSkpCiAgICAgLCBtX3dvcmtlck9iamVj
dFByb3h5KER1bW15U2VydmljZVdvcmtlclRocmVhZFByb3h5OjpzaGFyZWQoKSkKICAgICAsIG1f
aGVhcnRCZWF0VGltZW91dChTV0NvbnRleHRNYW5hZ2VyOjpzaW5nbGV0b24oKS5jb25uZWN0aW9u
KCktPnNob3VsZFVzZVNob3J0VGltZW91dCgpID8gaGVhcnRCZWF0VGltZW91dEZvclRlc3QgOiBo
ZWFydEJlYXRUaW1lb3V0KQogICAgICwgbV9oZWFydEJlYXRUaW1lciB7ICp0aGlzLCAmU2Vydmlj
ZVdvcmtlclRocmVhZDo6aGVhcnRCZWF0VGltZXJGaXJlZCB9CkBAIC05MCw4ICs5MSw4IEBAIFNl
cnZpY2VXb3JrZXJUaHJlYWQ6On5TZXJ2aWNlV29ya2VyVGhyZWFkKCkgPSBkZWZhdWx0OwogCiBS
ZWY8V29ya2VyR2xvYmFsU2NvcGU+IFNlcnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckds
b2JhbFNjb3BlKGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmIHBhcmFtcywgUmVmPFNlY3VyaXR5T3Jp
Z2luPiYmIG9yaWdpbiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbikKIHsKLSAgICBS
RUxFQVNFX0FTU0VSVChtX2RhdGEpOwotICAgIHJldHVybiBTZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGU6OmNyZWF0ZSgqc3RkOjpleGNoYW5nZShtX2RhdGEsIHN0ZDo6bnVsbG9wdCksIHBhcmFtcywg
V1RGTW92ZShvcmlnaW4pLCAqdGhpcywgV1RGTW92ZSh0b3BPcmlnaW4pLCBpZGJDb25uZWN0aW9u
UHJveHkoKSwgc29ja2V0UHJvdmlkZXIoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQobV9jb250ZXh0
RGF0YSk7CisgICAgcmV0dXJuIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKCpzdGQ6
OmV4Y2hhbmdlKG1fY29udGV4dERhdGEsIHN0ZDo6bnVsbG9wdCksICpzdGQ6OmV4Y2hhbmdlKG1f
d29ya2VyRGF0YSwgc3RkOjpudWxsb3B0KSwgcGFyYW1zLCBXVEZNb3ZlKG9yaWdpbiksICp0aGlz
LCBXVEZNb3ZlKHRvcE9yaWdpbiksIGlkYkNvbm5lY3Rpb25Qcm94eSgpLCBzb2NrZXRQcm92aWRl
cigpKTsKIH0KIAogdm9pZCBTZXJ2aWNlV29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdv
cmtlclRocmVhZC5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2Vy
dmljZVdvcmtlclRocmVhZC5oCmluZGV4IGZjMmIxN2E1N2U5Ni4uZjgxMjkwOWRmOTU0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29y
a2VyVGhyZWFkLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQv
U2VydmljZVdvcmtlclRocmVhZC5oCkBAIC03OSw3ICs3OSw3IEBAIHByb3RlY3RlZDoKICAgICB2
b2lkIHJ1bkV2ZW50TG9vcCgpIG92ZXJyaWRlOwogCiBwcml2YXRlOgotICAgIFdFQkNPUkVfRVhQ
T1JUIFNlcnZpY2VXb3JrZXJUaHJlYWQoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYsIFN0cmlu
ZyYmIHVzZXJBZ2VudCwgY29uc3QgU2V0dGluZ3M6OlZhbHVlcyYsIFdvcmtlckxvYWRlclByb3h5
JiwgV29ya2VyRGVidWdnZXJQcm94eSYsIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5Kiwg
U29ja2V0UHJvdmlkZXIqKTsKKyAgICBXRUJDT1JFX0VYUE9SVCBTZXJ2aWNlV29ya2VyVGhyZWFk
KFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBTZXJ2aWNlV29ya2VyRGF0YSYmLCBTdHJpbmcm
JiB1c2VyQWdlbnQsIGNvbnN0IFNldHRpbmdzOjpWYWx1ZXMmLCBXb3JrZXJMb2FkZXJQcm94eSYs
IFdvcmtlckRlYnVnZ2VyUHJveHkmLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSosIFNv
Y2tldFByb3ZpZGVyKik7CiAKICAgICBib29sIGlzU2VydmljZVdvcmtlclRocmVhZCgpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICB2b2lkIGZpbmlzaGVkRXZhbHVhdGluZ1Njcmlw
dCgpIGZpbmFsOwpAQCAtOTUsNyArOTUsOCBAQCBwcml2YXRlOgogCiAgICAgU2VydmljZVdvcmtl
cklkZW50aWZpZXIgbV9zZXJ2aWNlV29ya2VySWRlbnRpZmllcjsKICAgICBzdGQ6Om9wdGlvbmFs
PFNlcnZpY2VXb3JrZXJKb2JEYXRhSWRlbnRpZmllcj4gbV9qb2JEYXRhSWRlbnRpZmllcjsKLSAg
ICBzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YT4gbV9kYXRhOyAvLyBCZWNv
bWVzIHN0ZDo6bnVsbG9wdCBhZnRlciB0aGUgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIGhhcyBi
ZWVuIGNyZWF0ZWQuCisgICAgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyQ29udGV4dERhdGE+
IG1fY29udGV4dERhdGE7IC8vIEJlY29tZXMgc3RkOjpudWxsb3B0IGFmdGVyIHRoZSBTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUgaGFzIGJlZW4gY3JlYXRlZC4KKyAgICBzdGQ6Om9wdGlvbmFsPFNl
cnZpY2VXb3JrZXJEYXRhPiBtX3dvcmtlckRhdGE7IC8vIEJlY29tZXMgc3RkOjpudWxsb3B0IGFm
dGVyIHRoZSBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUgaGFzIGJlZW4gY3JlYXRlZC4KICAgICBX
b3JrZXJPYmplY3RQcm94eSYgbV93b3JrZXJPYmplY3RQcm94eTsKICAgICBib29sIG1fZG9lc0hh
bmRsZUZldGNoIHsgZmFsc2UgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWRQcm94eS5j
cHAKaW5kZXggOTA2OTNkYTJkMTFjLi42YmM5NjI4MzM0ZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWRQcm94eS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdv
cmtlclRocmVhZFByb3h5LmNwcApAQCAtOTMsMTMgKzkzLDEzIEBAIHN0YXRpYyBIYXNoU2V0PFNl
cnZpY2VXb3JrZXJUaHJlYWRQcm94eSo+JiBhbGxTZXJ2aWNlV29ya2VyVGhyZWFkUHJveGllcygp
CiAgICAgcmV0dXJuIHNldDsKIH0KIAotU2VydmljZVdvcmtlclRocmVhZFByb3h5OjpTZXJ2aWNl
V29ya2VyVGhyZWFkUHJveHkoUGFnZUNvbmZpZ3VyYXRpb24mJiBwYWdlQ29uZmlndXJhdGlvbiwg
U2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGF0YSwgU3RyaW5nJiYgdXNlckFnZW50LCBDYWNo
ZVN0b3JhZ2VQcm92aWRlciYgY2FjaGVTdG9yYWdlUHJvdmlkZXIsIFN0b3JhZ2VCbG9ja2luZ1Bv
bGljeSBzdG9yYWdlQmxvY2tpbmdQb2xpY3kpCi0gICAgOiBtX3BhZ2UoY3JlYXRlUGFnZUZvclNl
cnZpY2VXb3JrZXIoV1RGTW92ZShwYWdlQ29uZmlndXJhdGlvbiksIGRhdGEsIHN0b3JhZ2VCbG9j
a2luZ1BvbGljeSkpCitTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHk6OlNlcnZpY2VXb3JrZXJUaHJl
YWRQcm94eShQYWdlQ29uZmlndXJhdGlvbiYmIHBhZ2VDb25maWd1cmF0aW9uLCBTZXJ2aWNlV29y
a2VyQ29udGV4dERhdGEmJiBjb250ZXh0RGF0YSwgU2VydmljZVdvcmtlckRhdGEmJiB3b3JrZXJE
YXRhLCBTdHJpbmcmJiB1c2VyQWdlbnQsIENhY2hlU3RvcmFnZVByb3ZpZGVyJiBjYWNoZVN0b3Jh
Z2VQcm92aWRlciwgU3RvcmFnZUJsb2NraW5nUG9saWN5IHN0b3JhZ2VCbG9ja2luZ1BvbGljeSkK
KyAgICA6IG1fcGFnZShjcmVhdGVQYWdlRm9yU2VydmljZVdvcmtlcihXVEZNb3ZlKHBhZ2VDb25m
aWd1cmF0aW9uKSwgY29udGV4dERhdGEsIHN0b3JhZ2VCbG9ja2luZ1BvbGljeSkpCiAgICAgLCBt
X2RvY3VtZW50KCptX3BhZ2UtPm1haW5GcmFtZSgpLmRvY3VtZW50KCkpCiAjaWYgRU5BQkxFKFJF
TU9URV9JTlNQRUNUT1IpCi0gICAgLCBtX3JlbW90ZURlYnVnZ2FibGUobWFrZVVuaXF1ZTxTZXJ2
aWNlV29ya2VyRGVidWdnYWJsZT4oKnRoaXMsIGRhdGEpKQorICAgICwgbV9yZW1vdGVEZWJ1Z2dh
YmxlKG1ha2VVbmlxdWU8U2VydmljZVdvcmtlckRlYnVnZ2FibGU+KCp0aGlzLCBjb250ZXh0RGF0
YSkpCiAjZW5kaWYKLSAgICAsIG1fc2VydmljZVdvcmtlclRocmVhZChTZXJ2aWNlV29ya2VyVGhy
ZWFkOjpjcmVhdGUoV1RGTW92ZShkYXRhKSwgV1RGTW92ZSh1c2VyQWdlbnQpLCBtX2RvY3VtZW50
LT5zZXR0aW5nc1ZhbHVlcygpLCAqdGhpcywgKnRoaXMsIGlkYkNvbm5lY3Rpb25Qcm94eShtX2Rv
Y3VtZW50KSwgbV9kb2N1bWVudC0+c29ja2V0UHJvdmlkZXIoKSkpCisgICAgLCBtX3NlcnZpY2VX
b3JrZXJUaHJlYWQoU2VydmljZVdvcmtlclRocmVhZDo6Y3JlYXRlKFdURk1vdmUoY29udGV4dERh
dGEpLCBXVEZNb3ZlKHdvcmtlckRhdGEpLCBXVEZNb3ZlKHVzZXJBZ2VudCksIG1fZG9jdW1lbnQt
PnNldHRpbmdzVmFsdWVzKCksICp0aGlzLCAqdGhpcywgaWRiQ29ubmVjdGlvblByb3h5KG1fZG9j
dW1lbnQpLCBtX2RvY3VtZW50LT5zb2NrZXRQcm92aWRlcigpKSkKICAgICAsIG1fY2FjaGVTdG9y
YWdlUHJvdmlkZXIoY2FjaGVTdG9yYWdlUHJvdmlkZXIpCiAgICAgLCBtX2luc3BlY3RvclByb3h5
KCp0aGlzKQogewpAQCAtMTE3LDggKzExNyw4IEBAIFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6
U2VydmljZVdvcmtlclRocmVhZFByb3h5KFBhZ2VDb25maWd1cmF0aW9uJiYgcGFnZUNvbmZpCiAg
ICAgbV9yZW1vdGVEZWJ1Z2dhYmxlLT5pbml0KCk7CiAjZW5kaWYKIAotICAgIGlmIChkYXRhLmxh
c3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkKQotICAgICAgICBzZXRMYXN0TmF2aWdhdGlvbldh
c0FwcEluaXRpYXRlZChkYXRhLmxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkID09IExhc3RO
YXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkOjpZZXMpOworICAgIGlmIChjb250ZXh0RGF0YS5sYXN0
TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkKKyAgICAgICAgc2V0TGFzdE5hdmlnYXRpb25XYXNB
cHBJbml0aWF0ZWQoY29udGV4dERhdGEubGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQgPT0g
TGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQ6Olllcyk7CiB9CiAKIFNlcnZpY2VXb3JrZXJU
aHJlYWRQcm94eTo6flNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eSgpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJv
eHkuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3Jr
ZXJUaHJlYWRQcm94eS5oCmluZGV4IDJjNWEyODkyOGZhZS4uZTI4ZDllNDc0NjU0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2Vy
VGhyZWFkUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4
dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuaApAQCAtODUsNyArODUsNyBAQCBwdWJsaWM6CiAg
ICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCgpOwog
CiBwcml2YXRlOgotICAgIFdFQkNPUkVfRVhQT1JUIFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eShQ
YWdlQ29uZmlndXJhdGlvbiYmLCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgU3RyaW5nJiYg
dXNlckFnZW50LCBDYWNoZVN0b3JhZ2VQcm92aWRlciYsIFN0b3JhZ2VCbG9ja2luZ1BvbGljeSk7
CisgICAgV0VCQ09SRV9FWFBPUlQgU2VydmljZVdvcmtlclRocmVhZFByb3h5KFBhZ2VDb25maWd1
cmF0aW9uJiYsIFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBTZXJ2aWNlV29ya2VyRGF0YSYm
LCBTdHJpbmcmJiB1c2VyQWdlbnQsIENhY2hlU3RvcmFnZVByb3ZpZGVyJiwgU3RvcmFnZUJsb2Nr
aW5nUG9saWN5KTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIG5ldHdvcmtTdGF0
ZUNoYW5nZWQoYm9vbCBpc09uTGluZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5jcHAKaW5kZXggNTY5ZTJmOWY0OGZjLi5jY2I5NWJk
MjViYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIv
U1dTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIv
U1dTZXJ2ZXIuY3BwCkBAIC03MjcsMTAgKzcyNywxMCBAQCB2b2lkIFNXU2VydmVyOjppbnN0YWxs
Q29udGV4dERhdGEoY29uc3QgU2VydmljZVdvcmtlckNvbnRleHREYXRhJiBkYXRhKQogICAgIHJl
Z2lzdHJhdGlvbi0+c2V0UHJlSW5zdGFsbGF0aW9uV29ya2VyKHdvcmtlci5wdHIoKSk7CiAgICAg
d29ya2VyLT5zZXRTdGF0ZShTV1NlcnZlcldvcmtlcjo6U3RhdGU6OlJ1bm5pbmcpOwogICAgIGF1
dG8gdXNlckFnZW50ID0gd29ya2VyLT51c2VyQWdlbnQoKTsKLSAgICBhdXRvIHJlc3VsdCA9IG1f
cnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLmFkZChkYXRhLnNlcnZpY2VXb3JrZXJJZGVudGlm
aWVyLCBXVEZNb3ZlKHdvcmtlcikpOworICAgIGF1dG8gcmVzdWx0ID0gbV9ydW5uaW5nT3JUZXJt
aW5hdGluZ1dvcmtlcnMuYWRkKGRhdGEuc2VydmljZVdvcmtlcklkZW50aWZpZXIsIHdvcmtlci5j
b3B5UmVmKCkpOwogICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQuaXNOZXdFbnRyeSk7
CiAKLSAgICBjb25uZWN0aW9uLT5pbnN0YWxsU2VydmljZVdvcmtlckNvbnRleHQoZGF0YSwgdXNl
ckFnZW50KTsKKyAgICBjb25uZWN0aW9uLT5pbnN0YWxsU2VydmljZVdvcmtlckNvbnRleHQoZGF0
YSwgd29ya2VyLT5kYXRhKCksIHVzZXJBZ2VudCk7CiB9CiAKIHZvaWQgU1dTZXJ2ZXI6OnJ1blNl
cnZpY2VXb3JrZXJJZk5lY2Vzc2FyeShTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVy
LCBSdW5TZXJ2aWNlV29ya2VyQ2FsbGJhY2smJiBjYWxsYmFjaykKQEAgLTc5OCw3ICs3OTgsNyBA
QCBib29sIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIpCiAgICAgYXV0byogY29udGV4dENvbm5lY3Rpb24gPSB3b3JrZXItPmNvbnRl
eHRDb25uZWN0aW9uKCk7CiAgICAgQVNTRVJUKGNvbnRleHRDb25uZWN0aW9uKTsKIAotICAgIGNv
bnRleHRDb25uZWN0aW9uLT5pbnN0YWxsU2VydmljZVdvcmtlckNvbnRleHQod29ya2VyLT5jb250
ZXh0RGF0YSgpLCB3b3JrZXItPnVzZXJBZ2VudCgpKTsKKyAgICBjb250ZXh0Q29ubmVjdGlvbi0+
aW5zdGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0KHdvcmtlci0+Y29udGV4dERhdGEoKSwgd29ya2Vy
LT5kYXRhKCksIHdvcmtlci0+dXNlckFnZW50KCkpOwogCiAgICAgcmV0dXJuIHRydWU7CiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVy
VG9Db250ZXh0Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaAppbmRleCAxYzdmMzlkYjdjNmQuLmQ3
NGE2OTAwODE5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oCkBAIC01
MSw3ICs1MSw3IEBAIHB1YmxpYzoKICAgICBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb25JZGVu
dGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAogICAg
IC8vIE1lc3NhZ2VzIHRvIHRoZSBTVyBob3N0IHByb2Nlc3MKLSAgICB2aXJ0dWFsIHZvaWQgaW5z
dGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0KGNvbnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYs
IGNvbnN0IFN0cmluZyYgdXNlckFnZW50KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGluc3RhbGxT
ZXJ2aWNlV29ya2VyQ29udGV4dChjb25zdCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmLCBjb25z
dCBTZXJ2aWNlV29ya2VyRGF0YSYsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50KSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIHVwZGF0ZUFwcEluaXRpYXRlZFZhbHVlKFNlcnZpY2VXb3JrZXJJZGVudGlm
aWVyLCBMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBmaXJlSW5zdGFsbEV2ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSA9IDA7CiAgICAgdmly
dHVhbCB2b2lkIGZpcmVBY3RpdmF0ZUV2ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSA9IDA7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2Vy
dmVyV29ya2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dT
ZXJ2ZXJXb3JrZXIuY3BwCmluZGV4IGU5OGY3M2IwNjUzOC4uMzc2ZmI2ZDIyNjIwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2Vy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVy
V29ya2VyLmNwcApAQCAtNTQsNyArNTQsNyBAQCBTV1NlcnZlcldvcmtlcjo6U1dTZXJ2ZXJXb3Jr
ZXIoU1dTZXJ2ZXImIHNlcnZlciwgU1dTZXJ2ZXJSZWdpc3RyYXRpb24mIHJlZ2lzdHJhdAogICAg
IDogbV9zZXJ2ZXIobWFrZVdlYWtQdHIoc2VydmVyKSkKICAgICAsIG1fcmVnaXN0cmF0aW9uS2V5
KHJlZ2lzdHJhdGlvbi5rZXkoKSkKICAgICAsIG1fcmVnaXN0cmF0aW9uKG1ha2VXZWFrUHRyKHJl
Z2lzdHJhdGlvbikpCi0gICAgLCBtX2RhdGEgeyBpZGVudGlmaWVyLCBzY3JpcHRVUkwsIFNlcnZp
Y2VXb3JrZXJTdGF0ZTo6UmVkdW5kYW50LCB0eXBlLCByZWdpc3RyYXRpb24uaWRlbnRpZmllcigp
IH0KKyAgICAsIG1fZGF0YSB7IGlkZW50aWZpZXIsIHNjcmlwdFVSTCwgU2VydmljZVdvcmtlclN0
YXRlOjpQYXJzZWQsIHR5cGUsIHJlZ2lzdHJhdGlvbi5pZGVudGlmaWVyKCkgfQogICAgICwgbV9z
Y3JpcHQoc2NyaXB0KQogICAgICwgbV9jZXJ0aWZpY2F0ZUluZm8oY2VydGlmaWNhdGVJbmZvKQog
ICAgICwgbV9jb250ZW50U2VjdXJpdHlQb2xpY3koY29udGVudFNlY3VyaXR5UG9saWN5KQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNX
U2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcAppbmRl
eCBlOTAyZWMwNzU4MDUuLjA2MDI4ZTkxNDM5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlv
bi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dl
YlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAKQEAgLTg3LDkgKzg3LDkgQEAgdm9pZCBX
ZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb246OnBvc3RNZXNzYWdlVG9TZXJ2aWNlV29ya2Vy
Q2xpZW50KGNvbnN0IFNlcnYKICAgICAgICAgY29ubmVjdGlvbi0+cG9zdE1lc3NhZ2VUb1NlcnZp
Y2VXb3JrZXJDbGllbnQoZGVzdGluYXRpb25JZGVudGlmaWVyLmNvbnRleHRJZGVudGlmaWVyLCBt
ZXNzYWdlLCBzb3VyY2VJZGVudGlmaWVyLCBzb3VyY2VPcmlnaW4pOwogfQogCi12b2lkIFdlYlNX
U2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0KGNv
bnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYgZGF0YSwgY29uc3QgU3RyaW5nJiB1c2VyQWdl
bnQpCit2b2lkIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbjo6aW5zdGFsbFNlcnZpY2VX
b3JrZXJDb250ZXh0KGNvbnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYgY29udGV4dERhdGEs
IGNvbnN0IFNlcnZpY2VXb3JrZXJEYXRhJiB3b3JrZXJEYXRhLCBjb25zdCBTdHJpbmcmIHVzZXJB
Z2VudCkKIHsKLSAgICBzZW5kKE1lc3NhZ2VzOjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlv
bjo6SW5zdGFsbFNlcnZpY2VXb3JrZXIgeyBkYXRhLCB1c2VyQWdlbnQgfSk7CisgICAgc2VuZChN
ZXNzYWdlczo6V2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246Okluc3RhbGxTZXJ2aWNlV29y
a2VyIHsgY29udGV4dERhdGEsIHdvcmtlckRhdGEsIHVzZXJBZ2VudCB9KTsKIH0KIAogdm9pZCBX
ZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb246OnVwZGF0ZUFwcEluaXRpYXRlZFZhbHVlKFNl
cnZpY2VXb3JrZXJJZGVudGlmaWVyIHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpM
YXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCBsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRl
ZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtl
ci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaApp
bmRleCBhZTNhMWE1Njg2ZmEuLjk0MzNiZjUzYTM2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVj
dGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9X
ZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaApAQCAtODUsNyArODUsNyBAQCBwcml2YXRl
OgogICAgIHZvaWQgcG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQoY29uc3QgV2ViQ29y
ZTo6U2VydmljZVdvcmtlckNsaWVudElkZW50aWZpZXImIGRlc3RpbmF0aW9uSWRlbnRpZmllciwg
Y29uc3QgV2ViQ29yZTo6TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMmLCBXZWJDb3JlOjpTZXJ2aWNl
V29ya2VySWRlbnRpZmllciBzb3VyY2VJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZU9y
aWdpbik7CiAKICAgICAvLyBNZXNzYWdlcyB0byB0aGUgU1cgaG9zdCBXZWJQcm9jZXNzCi0gICAg
dm9pZCBpbnN0YWxsU2VydmljZVdvcmtlckNvbnRleHQoY29uc3QgV2ViQ29yZTo6U2VydmljZVdv
cmtlckNvbnRleHREYXRhJiwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQpIGZpbmFsOworICAgIHZv
aWQgaW5zdGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0KGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3Jr
ZXJDb250ZXh0RGF0YSYsIGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJEYXRhJiwgY29uc3Qg
U3RyaW5nJiB1c2VyQWdlbnQpIGZpbmFsOwogICAgIHZvaWQgdXBkYXRlQXBwSW5pdGlhdGVkVmFs
dWUoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNvcmU6Okxhc3ROYXZpZ2F0
aW9uV2FzQXBwSW5pdGlhdGVkKSBmaW5hbDsKICAgICB2b2lkIGZpcmVJbnN0YWxsRXZlbnQoV2Vi
Q29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIpIGZpbmFsOwogICAgIHZvaWQgZmlyZUFjdGl2
YXRlRXZlbnQoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIpIGZpbmFsOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdl
ckNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dD
b250ZXh0TWFuYWdlckNvbm5lY3Rpb24uY3BwCmluZGV4IDRhODM0MDgyZDYxMC4uMDI4OGYyODVh
NGM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0Nv
bnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uY3BwCkBAIC0xNDEsNyArMTQx
LDcgQEAgdm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6dXBkYXRlQXBwSW5pdGlh
dGVkVmFsdWUoU2VydmljZVdvcmtlcklkZW50aWYKICAgICAgICAgc2VydmljZVdvcmtlclRocmVh
ZFByb3h5LT5zZXRMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZChsYXN0TmF2aWdhdGlvbldh
c0FwcEluaXRpYXRlZCA9PSBXZWJDb3JlOjpMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZDo6
WWVzKTsKIH0KIAotdm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdGFsbFNl
cnZpY2VXb3JrZXIoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGF0YSwgU3RyaW5nJiYgdXNl
ckFnZW50KQordm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdGFsbFNlcnZp
Y2VXb3JrZXIoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgY29udGV4dERhdGEsIFNlcnZpY2VX
b3JrZXJEYXRhJiYgd29ya2VyRGF0YSwgU3RyaW5nJiYgdXNlckFnZW50KQogewogICAgIGF1dG8g
cGFnZUNvbmZpZ3VyYXRpb24gPSBwYWdlQ29uZmlndXJhdGlvbldpdGhFbXB0eUNsaWVudHMoV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkuc2Vzc2lvbklEKCkpOwogCkBAIC0xNTksOSArMTU5LDkgQEAg
dm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXIo
U2VydmljZVdvcmtlckNvbnRleHREYXQKICAgICBwYWdlQ29uZmlndXJhdGlvbi5sb2FkZXJDbGll
bnRGb3JNYWluRnJhbWUgPSBtYWtlVW5pcXVlUmVmPFNlcnZpY2VXb3JrZXJGcmFtZUxvYWRlckNs
aWVudD4obV93ZWJQYWdlUHJveHlJRCwgbV9wYWdlSUQsIEZyYW1lSWRlbnRpZmllcjo6Z2VuZXJh
dGUoKSwgZWZmZWN0aXZlVXNlckFnZW50KTsKIAogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAot
ICAgIGF1dG8gc2VydmljZVdvcmtlcklkZW50aWZpZXIgPSBkYXRhLnNlcnZpY2VXb3JrZXJJZGVu
dGlmaWVyOworICAgIGF1dG8gc2VydmljZVdvcmtlcklkZW50aWZpZXIgPSBjb250ZXh0RGF0YS5z
ZXJ2aWNlV29ya2VySWRlbnRpZmllcjsKICNlbmRpZgotICAgIGF1dG8gc2VydmljZVdvcmtlclRo
cmVhZFByb3h5ID0gU2VydmljZVdvcmtlclRocmVhZFByb3h5OjpjcmVhdGUoV1RGTW92ZShwYWdl
Q29uZmlndXJhdGlvbiksIFdURk1vdmUoZGF0YSksIFdURk1vdmUoZWZmZWN0aXZlVXNlckFnZW50
KSwgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuY2FjaGVTdG9yYWdlUHJvdmlkZXIoKSwgbV9zdG9y
YWdlQmxvY2tpbmdQb2xpY3kpOworICAgIGF1dG8gc2VydmljZVdvcmtlclRocmVhZFByb3h5ID0g
U2VydmljZVdvcmtlclRocmVhZFByb3h5OjpjcmVhdGUoV1RGTW92ZShwYWdlQ29uZmlndXJhdGlv
biksIFdURk1vdmUoY29udGV4dERhdGEpLCBXVEZNb3ZlKHdvcmtlckRhdGEpLCBXVEZNb3ZlKGVm
ZmVjdGl2ZVVzZXJBZ2VudCksIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmNhY2hlU3RvcmFnZVBy
b3ZpZGVyKCksIG1fc3RvcmFnZUJsb2NraW5nUG9saWN5KTsKICAgICBTV0NvbnRleHRNYW5hZ2Vy
OjpzaW5nbGV0b24oKS5yZWdpc3RlclNlcnZpY2VXb3JrZXJUaHJlYWRGb3JJbnN0YWxsKFdURk1v
dmUoc2VydmljZVdvcmtlclRocmVhZFByb3h5KSk7CiAKICAgICBSRUxFQVNFX0xPRyhTZXJ2aWNl
V29ya2VyLCAiQ3JlYXRlZCBzZXJ2aWNlIHdvcmtlciAlIiBQUkl1NjQgIiBpbiBwcm9jZXNzIFBJ
RCAlaSIsIHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLnRvVUludDY0KCksIGdldEN1cnJlbnRQcm9j
ZXNzSUQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9X
ZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaAppbmRleCA4YmNmZDJjNGJk
YzYuLjA2YjMyNWM1MGU3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oCkBAIC04
Niw3ICs4Niw3IEBAIHByaXZhdGU6CiAgICAgLy8gSVBDIG1lc3NhZ2VzLgogICAgIHZvaWQgc2Vy
dmljZVdvcmtlclN0YXJ0ZWQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpTZXJ2aWNlV29ya2VySm9i
RGF0YUlkZW50aWZpZXI+LCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgYm9vbCBk
b2VzSGFuZGxlRmV0Y2gpIGZpbmFsOwogICAgIHZvaWQgc2VydmljZVdvcmtlckZhaWxlZFRvU3Rh
cnQoc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpTZXJ2aWNlV29ya2VySm9iRGF0YUlkZW50aWZpZXI+
LCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBleGNlcHRp
b25NZXNzYWdlKSBmaW5hbDsKLSAgICB2b2lkIGluc3RhbGxTZXJ2aWNlV29ya2VyKFdlYkNvcmU6
OlNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBTdHJpbmcmJiB1c2VyQWdlbnQpOworICAgIHZv
aWQgaW5zdGFsbFNlcnZpY2VXb3JrZXIoV2ViQ29yZTo6U2VydmljZVdvcmtlckNvbnRleHREYXRh
JiYsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJEYXRhJiYsIFN0cmluZyYmIHVzZXJBZ2VudCk7CiAg
ICAgdm9pZCB1cGRhdGVBcHBJbml0aWF0ZWRWYWx1ZShXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRl
bnRpZmllciwgV2ViQ29yZTo6TGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQpOwogICAgIHZv
aWQgc3RhcnRGZXRjaChXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJD
b3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgV2ViQ29yZTo6RmV0Y2hJZGVudGlmaWVyLCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmJiwgV2ViQ29yZTo6RmV0Y2hPcHRpb25zJiYsIElQQzo6
Rm9ybURhdGFSZWZlcmVuY2UmJiwgU3RyaW5nJiYgcmVmZXJyZXIpOwogICAgIHZvaWQgY2FuY2Vs
RmV0Y2goV2ViQ29yZTo6U1dTZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6U2Vy
dmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNvcmU6OkZldGNoSWRlbnRpZmllcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2Vy
Q29ubmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdl
L1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCmluZGV4IDNlMjBkZTM1
NGJjNC4uMmFmNDg5ZDUxNmE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
U3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVj
dGlvbi5tZXNzYWdlcy5pbgpAQCAtMjMsNyArMjMsNyBAQAogI2lmIEVOQUJMRShTRVJWSUNFX1dP
UktFUikKIAogbWVzc2FnZXMgLT4gV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24gTm90UmVm
Q291bnRlZCB7Ci0gICAgSW5zdGFsbFNlcnZpY2VXb3JrZXIoc3RydWN0IFdlYkNvcmU6OlNlcnZp
Y2VXb3JrZXJDb250ZXh0RGF0YSBjb250ZXh0RGF0YSwgU3RyaW5nIHVzZXJBZ2VudCkKKyAgICBJ
bnN0YWxsU2VydmljZVdvcmtlcihzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckNvbnRleHRE
YXRhIGNvbnRleHREYXRhLCBzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckRhdGEgd29ya2Vy
RGF0YSwgU3RyaW5nIHVzZXJBZ2VudCkKICAgICBVcGRhdGVBcHBJbml0aWF0ZWRWYWx1ZShXZWJD
b3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgZW51
bTpib29sIFdlYkNvcmU6Okxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkIGxhc3ROYXZpZ2F0
aW9uV2FzQXBwSW5pdGlhdGVkKQogICAgIFN0YXJ0RmV0Y2goV2ViQ29yZTo6U1dTZXJ2ZXJDb25u
ZWN0aW9uSWRlbnRpZmllciBzZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6U2Vy
dmljZVdvcmtlcklkZW50aWZpZXIgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNvcmU6OkZl
dGNoSWRlbnRpZmllciBmZXRjaElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBy
ZXF1ZXN0LCBzdHJ1Y3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zIG9wdGlvbnMsIElQQzo6Rm9ybURh
dGFSZWZlcmVuY2UgcmVxdWVzdEJvZHksIFN0cmluZyByZWZlcnJlcikKICAgICBDYW5jZWxGZXRj
aChXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyIHNlcnZlckNvbm5lY3Rpb25J
ZGVudGlmaWVyLCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciBzZXJ2aWNlV29ya2Vy
SWRlbnRpZmllciwgV2ViQ29yZTo6RmV0Y2hJZGVudGlmaWVyIGZldGNoSWRlbnRpZmllcikK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436929</attachid>
            <date>2021-08-31 12:40:04 -0700</date>
            <delta_ts>2021-08-31 16:45:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229720-20210831124003.patch</filename>
            <type>text/plain</type>
            <size>35110</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxODAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDUwMzVkYzRmNWIxNzNl
YzJkZjUxNmRkNjllNmI1OGM2MTU3MjYxNi4uYmZmYzFlNzgwMjc5MTNjZDE4ZmIyMGJlYzllZDY5
MDI1MzgxYjU4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTA4LTMxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIFNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZS5zZXJ2aWNlV29ya2VyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjk3MjAKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlLnNlcnZpY2VXb3JrZXI6CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0aHVi
LmlvL1NlcnZpY2VXb3JrZXIvI2RvbS1zZXJ2aWNld29ya2VyZ2xvYmFsc2NvcGUtc2VydmljZXdv
cmtlcgorCisgICAgICAgIEFsc28gYWRkIHN1cHBvcnQgZm9yIHRoZSAicGFyc2VkIiBpbml0aWFs
IFNlcnZpY2VXb3JrZXJTdGF0ZToKKyAgICAgICAgLSBodHRwczovL3czYy5naXRodWIuaW8vU2Vy
dmljZVdvcmtlci8jZW51bWRlZi1zZXJ2aWNld29ya2Vyc3RhdGUKKworICAgICAgICBObyBuZXcg
dGVzdHMsIHJlYmFzZWxpbmVkIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogd29ya2Vycy9z
ZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlckds
b2JhbFNjb3BlOjpTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUpOgorICAgICAgICAqIHdvcmtlcnMv
c2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiB3b3JrZXJzL3Nl
cnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL3Nl
cnZpY2UvU2VydmljZVdvcmtlclR5cGVzLmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL2Nv
bnRleHQvU2VydmljZVdvcmtlclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZXJ2aWNl
V29ya2VyVGhyZWFkOjpTZXJ2aWNlV29ya2VyVGhyZWFkKToKKyAgICAgICAgKFdlYkNvcmU6OlNl
cnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKToKKyAgICAgICAgKiB3
b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmg6CisgICAgICAgICog
d29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6U2VydmljZVdvcmtlclRo
cmVhZFByb3h5KToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29y
a2VyVGhyZWFkUHJveHkuaDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2Vy
dmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjppbnN0YWxsQ29udGV4dERhdGEp
OgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnJ1blNlcnZpY2VXb3JrZXIpOgorICAgICAg
ICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJSZWdpc3RyYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJSZWdpc3RyYXRpb246OmNsZWFyKToKKyAgICAgICAgKiB3
b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6OlNXU2VydmVyV29ya2VyKToKKwogMjAyMS0wOC0z
MSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtDT09QXSBodG1s
L2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L2Nvb3AtbmF2aWdhdGUtc2FtZS1vcmlnaW4tY3Nw
LXNhbmRib3guaHRtbCBXUFQgdGVzdCBpcyBmYWlsaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDMyYWI4NzdmOGFh
ODdhYjI1NGJlNjdkY2ZjMDBlZTA2NDYyMTc4NDkuLjJhOGE4ZTRkZWZmMzE2OTVmMzlhMjE1ZmE1
N2VjMGFiMzcxYjFiYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMjEtMDgtMzEgIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Ig
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlLnNlcnZpY2VXb3JrZXIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyOTcyMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBTZXJ2aWNlV29y
a2VyR2xvYmFsU2NvcGUuc2VydmljZVdvcmtlcjoKKyAgICAgICAgLSBodHRwczovL3czYy5naXRo
dWIuaW8vU2VydmljZVdvcmtlci8jZG9tLXNlcnZpY2V3b3JrZXJnbG9iYWxzY29wZS1zZXJ2aWNl
d29ya2VyCisKKyAgICAgICAgQWxzbyBhZGQgc3VwcG9ydCBmb3IgdGhlICJwYXJzZWQiIGluaXRp
YWwgU2VydmljZVdvcmtlclN0YXRlOgorICAgICAgICAtIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9T
ZXJ2aWNlV29ya2VyLyNlbnVtZGVmLXNlcnZpY2V3b3JrZXJzdGF0ZQorCisgICAgICAgICogTmV0
d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24u
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb246Omlu
c3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dCk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2Vy
dmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdGFsbFNlcnZp
Y2VXb3JrZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5h
Z2VyQ29ubmVjdGlvbi5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRl
eHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbjoKKwogMjAyMS0wOC0zMSAgQ2FybG9zIEdh
cmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW1NPVVBdIEFzc2Vy
dGlvbiBpbiBzdGFydE9ic2VydmluZ0Nvb2tpZUNoYW5nZXMoKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsIGIvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsCmluZGV4IGQ2NmZhM2NjMzE2OWZi
ZjNiY2I1MTc0ZTg1ZGNmYmI2ODJmYzU3NDkuLjQ5YmZmYTFhYTU4NTBiMWJlZTJjNjYyZGRjZDc1
NWJmOGJiYWI0ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9T
ZXJ2aWNlV29ya2VyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vy
dmljZVdvcmtlci5pZGwKQEAgLTQ1LDYgKzQ1LDcgQEAKIFNlcnZpY2VXb3JrZXIgaW5jbHVkZXMg
QWJzdHJhY3RXb3JrZXI7CiAKIGVudW0gU2VydmljZVdvcmtlclN0YXRlIHsKKyAgICAicGFyc2Vk
IiwKICAgICAiaW5zdGFsbGluZyIsCiAgICAgImluc3RhbGxlZCIsCiAgICAgImFjdGl2YXRpbmci
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCAzMzAxNGEzZTczNjczNGY1ODhlMDBhMWQwYmQy
ZGVhZGIwZjY3ZmJiLi5mYmMwNzJhZTkzMzE3YjZiNmNmMDU5MjU0NTRiNDcyZGVhNTFjYTU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckds
b2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkV4dGVu
ZGFibGVFdmVudC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURlZmVycmVkLmgiCiAjaW5jbHVk
ZSAiU1dDb250ZXh0TWFuYWdlci5oIgorI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXIuaCIKICNpbmNs
dWRlICJTZXJ2aWNlV29ya2VyQ2xpZW50LmgiCiAjaW5jbHVkZSAiU2VydmljZVdvcmtlckNsaWVu
dHMuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VyQ29udGFpbmVyLmgiCkBAIC00NCwxNyArNDUs
MTggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwo
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlKTsKIAotUmVmPFNlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZT4gU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpjcmVhdGUoU2VydmljZVdvcmtlckNvbnRleHRE
YXRhJiYgZGF0YSwgY29uc3QgV29ya2VyUGFyYW1ldGVycyYgcGFyYW1zLCBSZWY8U2VjdXJpdHlP
cmlnaW4+JiYgb3JpZ2luLCBTZXJ2aWNlV29ya2VyVGhyZWFkJiB0aHJlYWQsIFJlZjxTZWN1cml0
eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25u
ZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcikKK1JlZjxTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGU+IFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKFNlcnZp
Y2VXb3JrZXJDb250ZXh0RGF0YSYmIGNvbnRleHREYXRhLCBTZXJ2aWNlV29ya2VyRGF0YSYmIHdv
cmtlckRhdGEsIGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmIHBhcmFtcywgUmVmPFNlY3VyaXR5T3Jp
Z2luPiYmIG9yaWdpbiwgU2VydmljZVdvcmtlclRocmVhZCYgdGhyZWFkLCBSZWY8U2VjdXJpdHlP
cmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVj
dGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIpCiB7Ci0gICAgYXV0byBz
Y29wZSA9IGFkb3B0UmVmKCpuZXcgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIHsgV1RGTW92ZShk
YXRhKSwgcGFyYW1zLCBXVEZNb3ZlKG9yaWdpbiksIHRocmVhZCwgV1RGTW92ZSh0b3BPcmlnaW4p
LCBjb25uZWN0aW9uUHJveHksIHNvY2tldFByb3ZpZGVyIH0pOworICAgIGF1dG8gc2NvcGUgPSBh
ZG9wdFJlZigqbmV3IFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSB7IFdURk1vdmUoY29udGV4dERh
dGEpLCBXVEZNb3ZlKHdvcmtlckRhdGEpLCBwYXJhbXMsIFdURk1vdmUob3JpZ2luKSwgdGhyZWFk
LCBXVEZNb3ZlKHRvcE9yaWdpbiksIGNvbm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIgfSk7
CiAgICAgc2NvcGUtPmFwcGx5Q29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzKHBh
cmFtcy5jb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMpOwogICAgIHJldHVybiBz
Y29wZTsKIH0KIAotU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpTZXJ2aWNlV29ya2VyR2xvYmFs
U2NvcGUoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGF0YSwgY29uc3QgV29ya2VyUGFyYW1l
dGVycyYgcGFyYW1zLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBTZXJ2aWNlV29ya2Vy
VGhyZWFkJiB0aHJlYWQsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNsaWVu
dDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBz
b2NrZXRQcm92aWRlcikKK1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6U2VydmljZVdvcmtlckds
b2JhbFNjb3BlKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmIGNvbnRleHREYXRhLCBTZXJ2aWNl
V29ya2VyRGF0YSYmIHdvcmtlckRhdGEsIGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmIHBhcmFtcywg
UmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9yaWdpbiwgU2VydmljZVdvcmtlclRocmVhZCYgdGhyZWFk
LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rp
b25Qcm94eSogY29ubmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIp
CiAgICAgOiBXb3JrZXJHbG9iYWxTY29wZShXb3JrZXJUaHJlYWRUeXBlOjpTZXJ2aWNlV29ya2Vy
LCBwYXJhbXMsIFdURk1vdmUob3JpZ2luKSwgdGhyZWFkLCBXVEZNb3ZlKHRvcE9yaWdpbiksIGNv
bm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIpCi0gICAgLCBtX2NvbnRleHREYXRhKFdURk1v
dmUoZGF0YSkpCisgICAgLCBtX2NvbnRleHREYXRhKFdURk1vdmUoY29udGV4dERhdGEpKQogICAg
ICwgbV9yZWdpc3RyYXRpb24oU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbjo6Z2V0T3JDcmVhdGUo
KnRoaXMsIG5hdmlnYXRvcigpLnNlcnZpY2VXb3JrZXIoKSwgV1RGTW92ZShtX2NvbnRleHREYXRh
LnJlZ2lzdHJhdGlvbikpKQorICAgICwgbV9zZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXI6Omdl
dE9yQ3JlYXRlKCp0aGlzLCBXVEZNb3ZlKHdvcmtlckRhdGEpKSkKICAgICAsIG1fY2xpZW50cyhT
ZXJ2aWNlV29ya2VyQ2xpZW50czo6Y3JlYXRlKCkpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmgKaW5k
ZXggYzQzZDg2NTQ1ZmNiYjg2NWEzYTUxYjRiNTc5MzZmOTIyYjgwOTY2MC4uODRhNmMwNTZhMzM4
ZDY5OGFjNjMxOWFkNmMxNjNiY2YyZTJmNTg4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtNDUs
NyArNDUsNyBAQCBjbGFzcyBTZXJ2aWNlV29ya2VyVGhyZWFkOwogY2xhc3MgU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlIGZpbmFsIDogcHVibGljIFdvcmtlckdsb2JhbFNjb3BlIHsKICAgICBXVEZf
TUFLRV9JU09fQUxMT0NBVEVEKFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSk7CiBwdWJsaWM6Ci0g
ICAgc3RhdGljIFJlZjxTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZShTZXJ2aWNlV29y
a2VyQ29udGV4dERhdGEmJiwgY29uc3QgV29ya2VyUGFyYW1ldGVycyYsIFJlZjxTZWN1cml0eU9y
aWdpbj4mJiwgU2VydmljZVdvcmtlclRocmVhZCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BP
cmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqKTsK
KyAgICBzdGF0aWMgUmVmPFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZT4gY3JlYXRlKFNlcnZpY2VX
b3JrZXJDb250ZXh0RGF0YSYmLCBTZXJ2aWNlV29ya2VyRGF0YSYmLCBjb25zdCBXb3JrZXJQYXJh
bWV0ZXJzJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBTZXJ2aWNlV29ya2VyVGhyZWFkJiwgUmVm
PFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJv
eHkqLCBTb2NrZXRQcm92aWRlciopOwogCiAgICAgflNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSgp
OwogCkBAIC01Myw2ICs1Myw3IEBAIHB1YmxpYzoKIAogICAgIFNlcnZpY2VXb3JrZXJDbGllbnRz
JiBjbGllbnRzKCkgeyByZXR1cm4gbV9jbGllbnRzLmdldCgpOyB9CiAgICAgU2VydmljZVdvcmtl
clJlZ2lzdHJhdGlvbiYgcmVnaXN0cmF0aW9uKCkgeyByZXR1cm4gbV9yZWdpc3RyYXRpb24uZ2V0
KCk7IH0KKyAgICBTZXJ2aWNlV29ya2VyJiBzZXJ2aWNlV29ya2VyKCkgeyByZXR1cm4gbV9zZXJ2
aWNlV29ya2VyLmdldCgpOyB9CiAgICAgCiAgICAgdm9pZCBza2lwV2FpdGluZyhSZWY8RGVmZXJy
ZWRQcm9taXNlPiYmKTsKIApAQCAtNzcsMTIgKzc4LDEzIEBAIHB1YmxpYzoKICAgICBGZXRjaE9w
dGlvbnM6OkRlc3RpbmF0aW9uIGRlc3RpbmF0aW9uKCkgY29uc3QgZmluYWwgeyByZXR1cm4gRmV0
Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6U2VydmljZXdvcmtlcjsgfQogICAgIAogcHJpdmF0ZToK
LSAgICBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYs
IGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIFNlcnZpY2VX
b3JrZXJUaHJlYWQmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGllbnQ6
OklEQkNvbm5lY3Rpb25Qcm94eSosIFNvY2tldFByb3ZpZGVyKik7CisgICAgU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBTZXJ2aWNlV29ya2VyRGF0
YSYmLCBjb25zdCBXb3JrZXJQYXJhbWV0ZXJzJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBTZXJ2
aWNlV29ya2VyVGhyZWFkJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgSURCQ2xp
ZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciopOwogCiAgICAgYm9vbCBo
YXNQZW5kaW5nRXZlbnRzKCkgY29uc3QgeyByZXR1cm4gIW1fZXh0ZW5kZWRFdmVudHMuaXNFbXB0
eSgpOyB9CiAKICAgICBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEgbV9jb250ZXh0RGF0YTsKICAg
ICBSZWY8U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbj4gbV9yZWdpc3RyYXRpb247CisgICAgUmVm
PFNlcnZpY2VXb3JrZXI+IG1fc2VydmljZVdvcmtlcjsKICAgICBSZWY8U2VydmljZVdvcmtlckNs
aWVudHM+IG1fY2xpZW50czsKICAgICBIYXNoTWFwPFNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlm
aWVyLCBTZXJ2aWNlV29ya2VyQ2xpZW50Kj4gbV9jbGllbnRNYXA7CiAgICAgVmVjdG9yPFJlZjxF
eHRlbmRhYmxlRXZlbnQ+PiBtX2V4dGVuZGVkRXZlbnRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbApp
bmRleCBiNGI5MTA1ZmM0MzA1MWEzZjNlYTY5NDU5ZGUyNGIxZmY0OTJlYmUxLi40ZjkxN2M3Nzdj
MWVmODhlMDRhYzg0Yzc1YzI4ZjQyYWI3NmRhZmUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbApA
QCAtMzQsNiArMzQsNyBAQAogXSBpbnRlcmZhY2UgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIDog
V29ya2VyR2xvYmFsU2NvcGUgewogICAgIFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUg
U2VydmljZVdvcmtlckNsaWVudHMgY2xpZW50czsKICAgICBbU2FtZU9iamVjdF0gcmVhZG9ubHkg
YXR0cmlidXRlIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24gcmVnaXN0cmF0aW9uOworICAgIFtT
YW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU2VydmljZVdvcmtlciBzZXJ2aWNlV29ya2Vy
OwogCiAgICAgW05ld09iamVjdF0gUHJvbWlzZTx1bmRlZmluZWQ+IHNraXBXYWl0aW5nKCk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2Vy
VHlwZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyVHlw
ZXMuaAppbmRleCA4ODZjNWFkNDkwMjA3YWRiMTcxM2NiZjcxNWY4MzQ3Yjc2YzUxMTY2Li42MjJk
ZTMzMGQ5Y2Y0NjkzZjE4NTc2ODhjNWJjMWIzNWIyYThkMmRlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclR5cGVzLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJUeXBlcy5oCkBAIC00Niw2ICs0
Niw3IEBAIGVudW0gY2xhc3MgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvblN0YXRlIDogdWludDhf
dCB7CiB9OwogCiBlbnVtIGNsYXNzIFNlcnZpY2VXb3JrZXJTdGF0ZSA6IHVpbnQ4X3QgeworICAg
IFBhcnNlZCwKICAgICBJbnN0YWxsaW5nLAogICAgIEluc3RhbGxlZCwKICAgICBBY3RpdmF0aW5n
LApAQCAtMTA1LDYgKzEwNiw3IEBAIHRlbXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNv
cmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25TdGF0ZT4gewogdGVtcGxhdGUgPD4gc3RydWN0
IEVudW1UcmFpdHM8V2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRlPiB7CiAgICAgdXNpbmcgdmFs
dWVzID0gRW51bVZhbHVlczwKICAgICAgICAgV2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRlLAor
ICAgICAgICBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyU3RhdGU6OlBhcnNlZCwKICAgICAgICAgV2Vi
Q29yZTo6U2VydmljZVdvcmtlclN0YXRlOjpJbnN0YWxsaW5nLAogICAgICAgICBXZWJDb3JlOjpT
ZXJ2aWNlV29ya2VyU3RhdGU6Okluc3RhbGxlZCwKICAgICAgICAgV2ViQ29yZTo6U2VydmljZVdv
cmtlclN0YXRlOjpBY3RpdmF0aW5nLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAppbmRleCBl
YTJhYmZlNTk3OGQyZTEwODg4NzFjNGY4MGJmMmVlYzViMGZkNzIyLi41MWQ3ZTllNTc5MTM3MDNl
OTFjZmQ5NGEyZWZiYzVjYmI3ZDE4MzBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcApA
QCAtNzMsMTEgKzczLDEyIEBAIHByaXZhdGU6CiAvLyBGSVhNRTogVXNlIGEgdmFsaWQgV29ya2Vy
T2JqZWN0UHJveHkKIC8vIEZJWE1FOiBVc2UgdmFsaWQgcnVudGltZSBmbGFncwogCi1TZXJ2aWNl
V29ya2VyVGhyZWFkOjpTZXJ2aWNlV29ya2VyVGhyZWFkKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0
YSYmIGRhdGEsIFN0cmluZyYmIHVzZXJBZ2VudCwgY29uc3QgU2V0dGluZ3M6OlZhbHVlcyYgc2V0
dGluZ3NWYWx1ZXMsIFdvcmtlckxvYWRlclByb3h5JiBsb2FkZXJQcm94eSwgV29ya2VyRGVidWdn
ZXJQcm94eSYgZGVidWdnZXJQcm94eSwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlk
YkNvbm5lY3Rpb25Qcm94eSwgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKQotICAgIDog
V29ya2VyVGhyZWFkKHsgZGF0YS5zY3JpcHRVUkwsIGVtcHR5U3RyaW5nKCksICJzZXJ2aWNld29y
a2VyOiIgKyBJbnNwZWN0b3I6OklkZW50aWZpZXJzRmFjdG9yeTo6Y3JlYXRlSWRlbnRpZmllcigp
LCBXVEZNb3ZlKHVzZXJBZ2VudCksIHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVn
eSgpLT5pc09uTGluZSgpLCBkYXRhLmNvbnRlbnRTZWN1cml0eVBvbGljeSwgZmFsc2UsIGRhdGEu
Y3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSwgTW9ub3RvbmljVGltZTo6bm93KCksIHsgfSwgZGF0
YS53b3JrZXJUeXBlLCBGZXRjaFJlcXVlc3RDcmVkZW50aWFsczo6T21pdCwgc2V0dGluZ3NWYWx1
ZXMgfSwgZGF0YS5zY3JpcHQsIGxvYWRlclByb3h5LCBkZWJ1Z2dlclByb3h5LCBEdW1teVNlcnZp
Y2VXb3JrZXJUaHJlYWRQcm94eTo6c2hhcmVkKCksIFdvcmtlclRocmVhZFN0YXJ0TW9kZTo6Tm9y
bWFsLCBkYXRhLnJlZ2lzdHJhdGlvbi5rZXkudG9wT3JpZ2luKCkuc2VjdXJpdHlPcmlnaW4oKS5n
ZXQoKSwgaWRiQ29ubmVjdGlvblByb3h5LCBzb2NrZXRQcm92aWRlciwgSlNDOjpSdW50aW1lRmxh
Z3M6OmNyZWF0ZUFsbEVuYWJsZWQoKSkKLSAgICAsIG1fc2VydmljZVdvcmtlcklkZW50aWZpZXIo
ZGF0YS5zZXJ2aWNlV29ya2VySWRlbnRpZmllcikKLSAgICAsIG1fam9iRGF0YUlkZW50aWZpZXIo
ZGF0YS5qb2JEYXRhSWRlbnRpZmllcikKLSAgICAsIG1fZGF0YShjcm9zc1RocmVhZENvcHkoZGF0
YSkpCitTZXJ2aWNlV29ya2VyVGhyZWFkOjpTZXJ2aWNlV29ya2VyVGhyZWFkKFNlcnZpY2VXb3Jr
ZXJDb250ZXh0RGF0YSYmIGNvbnRleHREYXRhLCBTZXJ2aWNlV29ya2VyRGF0YSYmIHdvcmtlckRh
dGEsIFN0cmluZyYmIHVzZXJBZ2VudCwgY29uc3QgU2V0dGluZ3M6OlZhbHVlcyYgc2V0dGluZ3NW
YWx1ZXMsIFdvcmtlckxvYWRlclByb3h5JiBsb2FkZXJQcm94eSwgV29ya2VyRGVidWdnZXJQcm94
eSYgZGVidWdnZXJQcm94eSwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5l
Y3Rpb25Qcm94eSwgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKQorICAgIDogV29ya2Vy
VGhyZWFkKHsgY29udGV4dERhdGEuc2NyaXB0VVJMLCBlbXB0eVN0cmluZygpLCAic2VydmljZXdv
cmtlcjoiICsgSW5zcGVjdG9yOjpJZGVudGlmaWVyc0ZhY3Rvcnk6OmNyZWF0ZUlkZW50aWZpZXIo
KSwgV1RGTW92ZSh1c2VyQWdlbnQpLCBwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+bG9hZGVyU3RyYXRl
Z3koKS0+aXNPbkxpbmUoKSwgY29udGV4dERhdGEuY29udGVudFNlY3VyaXR5UG9saWN5LCBmYWxz
ZSwgY29udGV4dERhdGEuY3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSwgTW9ub3RvbmljVGltZTo6
bm93KCksIHsgfSwgY29udGV4dERhdGEud29ya2VyVHlwZSwgRmV0Y2hSZXF1ZXN0Q3JlZGVudGlh
bHM6Ok9taXQsIHNldHRpbmdzVmFsdWVzIH0sIGNvbnRleHREYXRhLnNjcmlwdCwgbG9hZGVyUHJv
eHksIGRlYnVnZ2VyUHJveHksIER1bW15U2VydmljZVdvcmtlclRocmVhZFByb3h5OjpzaGFyZWQo
KSwgV29ya2VyVGhyZWFkU3RhcnRNb2RlOjpOb3JtYWwsIGNvbnRleHREYXRhLnJlZ2lzdHJhdGlv
bi5rZXkudG9wT3JpZ2luKCkuc2VjdXJpdHlPcmlnaW4oKS5nZXQoKSwgaWRiQ29ubmVjdGlvblBy
b3h5LCBzb2NrZXRQcm92aWRlciwgSlNDOjpSdW50aW1lRmxhZ3M6OmNyZWF0ZUFsbEVuYWJsZWQo
KSkKKyAgICAsIG1fc2VydmljZVdvcmtlcklkZW50aWZpZXIoY29udGV4dERhdGEuc2VydmljZVdv
cmtlcklkZW50aWZpZXIpCisgICAgLCBtX2pvYkRhdGFJZGVudGlmaWVyKGNvbnRleHREYXRhLmpv
YkRhdGFJZGVudGlmaWVyKQorICAgICwgbV9jb250ZXh0RGF0YShjcm9zc1RocmVhZENvcHkoY29u
dGV4dERhdGEpKQorICAgICwgbV93b3JrZXJEYXRhKGNyb3NzVGhyZWFkQ29weSh3b3JrZXJEYXRh
KSkKICAgICAsIG1fd29ya2VyT2JqZWN0UHJveHkoRHVtbXlTZXJ2aWNlV29ya2VyVGhyZWFkUHJv
eHk6OnNoYXJlZCgpKQogICAgICwgbV9oZWFydEJlYXRUaW1lb3V0KFNXQ29udGV4dE1hbmFnZXI6
OnNpbmdsZXRvbigpLmNvbm5lY3Rpb24oKS0+c2hvdWxkVXNlU2hvcnRUaW1lb3V0KCkgPyBoZWFy
dEJlYXRUaW1lb3V0Rm9yVGVzdCA6IGhlYXJ0QmVhdFRpbWVvdXQpCiAgICAgLCBtX2hlYXJ0QmVh
dFRpbWVyIHsgKnRoaXMsICZTZXJ2aWNlV29ya2VyVGhyZWFkOjpoZWFydEJlYXRUaW1lckZpcmVk
IH0KQEAgLTkwLDggKzkxLDggQEAgU2VydmljZVdvcmtlclRocmVhZDo6flNlcnZpY2VXb3JrZXJU
aHJlYWQoKSA9IGRlZmF1bHQ7CiAKIFJlZjxXb3JrZXJHbG9iYWxTY29wZT4gU2VydmljZVdvcmtl
clRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2NvcGUoY29uc3QgV29ya2VyUGFyYW1ldGVycyYg
cGFyYW1zLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBSZWY8U2VjdXJpdHlPcmlnaW4+
JiYgdG9wT3JpZ2luKQogewotICAgIFJFTEVBU0VfQVNTRVJUKG1fZGF0YSk7Ci0gICAgcmV0dXJu
IFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKCpzdGQ6OmV4Y2hhbmdlKG1fZGF0YSwg
c3RkOjpudWxsb3B0KSwgcGFyYW1zLCBXVEZNb3ZlKG9yaWdpbiksICp0aGlzLCBXVEZNb3ZlKHRv
cE9yaWdpbiksIGlkYkNvbm5lY3Rpb25Qcm94eSgpLCBzb2NrZXRQcm92aWRlcigpKTsKKyAgICBS
RUxFQVNFX0FTU0VSVChtX2NvbnRleHREYXRhKTsKKyAgICByZXR1cm4gU2VydmljZVdvcmtlckds
b2JhbFNjb3BlOjpjcmVhdGUoKnN0ZDo6ZXhjaGFuZ2UobV9jb250ZXh0RGF0YSwgc3RkOjpudWxs
b3B0KSwgKnN0ZDo6ZXhjaGFuZ2UobV93b3JrZXJEYXRhLCBzdGQ6Om51bGxvcHQpLCBwYXJhbXMs
IFdURk1vdmUob3JpZ2luKSwgKnRoaXMsIFdURk1vdmUodG9wT3JpZ2luKSwgaWRiQ29ubmVjdGlv
blByb3h5KCksIHNvY2tldFByb3ZpZGVyKCkpOwogfQogCiB2b2lkIFNlcnZpY2VXb3JrZXJUaHJl
YWQ6OnJ1bkV2ZW50TG9vcCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmggYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmgKaW5kZXggZmMyYjE3YTU3
ZTk2M2M0NzEzMzBjYTI2ZWE1YjYyY2M3MjRiOTQ1Yi4uZjgxMjkwOWRmOTU0MGZhNzAxY2UyYmM4
NWQ4NDA2MDU3NWRjODIxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQuaApAQCAtNzksNyArNzks
NyBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBydW5FdmVudExvb3AoKSBvdmVycmlkZTsKIAogcHJp
dmF0ZToKLSAgICBXRUJDT1JFX0VYUE9SVCBTZXJ2aWNlV29ya2VyVGhyZWFkKFNlcnZpY2VXb3Jr
ZXJDb250ZXh0RGF0YSYmLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGNvbnN0IFNldHRpbmdzOjpWYWx1
ZXMmLCBXb3JrZXJMb2FkZXJQcm94eSYsIFdvcmtlckRlYnVnZ2VyUHJveHkmLCBJREJDbGllbnQ6
OklEQkNvbm5lY3Rpb25Qcm94eSosIFNvY2tldFByb3ZpZGVyKik7CisgICAgV0VCQ09SRV9FWFBP
UlQgU2VydmljZVdvcmtlclRocmVhZChTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgU2Vydmlj
ZVdvcmtlckRhdGEmJiwgU3RyaW5nJiYgdXNlckFnZW50LCBjb25zdCBTZXR0aW5nczo6VmFsdWVz
JiwgV29ya2VyTG9hZGVyUHJveHkmLCBXb3JrZXJEZWJ1Z2dlclByb3h5JiwgSURCQ2xpZW50OjpJ
REJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciopOwogCiAgICAgYm9vbCBpc1NlcnZp
Y2VXb3JrZXJUaHJlYWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAgICAgdm9pZCBm
aW5pc2hlZEV2YWx1YXRpbmdTY3JpcHQoKSBmaW5hbDsKQEAgLTk1LDcgKzk1LDggQEAgcHJpdmF0
ZToKIAogICAgIFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIG1fc2VydmljZVdvcmtlcklkZW50aWZp
ZXI7CiAgICAgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VySm9iRGF0YUlkZW50aWZpZXI+IG1f
am9iRGF0YUlkZW50aWZpZXI7Ci0gICAgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyQ29udGV4
dERhdGE+IG1fZGF0YTsgLy8gQmVjb21lcyBzdGQ6Om51bGxvcHQgYWZ0ZXIgdGhlIFNlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZSBoYXMgYmVlbiBjcmVhdGVkLgorICAgIHN0ZDo6b3B0aW9uYWw8U2Vy
dmljZVdvcmtlckNvbnRleHREYXRhPiBtX2NvbnRleHREYXRhOyAvLyBCZWNvbWVzIHN0ZDo6bnVs
bG9wdCBhZnRlciB0aGUgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIGhhcyBiZWVuIGNyZWF0ZWQu
CisgICAgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyRGF0YT4gbV93b3JrZXJEYXRhOyAvLyBC
ZWNvbWVzIHN0ZDo6bnVsbG9wdCBhZnRlciB0aGUgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIGhh
cyBiZWVuIGNyZWF0ZWQuCiAgICAgV29ya2VyT2JqZWN0UHJveHkmIG1fd29ya2VyT2JqZWN0UHJv
eHk7CiAgICAgYm9vbCBtX2RvZXNIYW5kbGVGZXRjaCB7IGZhbHNlIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJl
YWRQcm94eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2
aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwCmluZGV4IDkwNjkzZGEyZDExYzAwMmI5NTE1NzRjNTc0
NmU5MjQzYjMwOGNhYzMuLjZiYzk2MjgzMzRlMjEwNzcxN2FhYjQ3MjRkYjhhM2ZkZmMyNDViNmQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZp
Y2VXb3JrZXJUaHJlYWRQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcApAQCAtOTMsMTMgKzkzLDEz
IEBAIHN0YXRpYyBIYXNoU2V0PFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eSo+JiBhbGxTZXJ2aWNl
V29ya2VyVGhyZWFkUHJveGllcygpCiAgICAgcmV0dXJuIHNldDsKIH0KIAotU2VydmljZVdvcmtl
clRocmVhZFByb3h5OjpTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkoUGFnZUNvbmZpZ3VyYXRpb24m
JiBwYWdlQ29uZmlndXJhdGlvbiwgU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGF0YSwgU3Ry
aW5nJiYgdXNlckFnZW50LCBDYWNoZVN0b3JhZ2VQcm92aWRlciYgY2FjaGVTdG9yYWdlUHJvdmlk
ZXIsIFN0b3JhZ2VCbG9ja2luZ1BvbGljeSBzdG9yYWdlQmxvY2tpbmdQb2xpY3kpCi0gICAgOiBt
X3BhZ2UoY3JlYXRlUGFnZUZvclNlcnZpY2VXb3JrZXIoV1RGTW92ZShwYWdlQ29uZmlndXJhdGlv
biksIGRhdGEsIHN0b3JhZ2VCbG9ja2luZ1BvbGljeSkpCitTZXJ2aWNlV29ya2VyVGhyZWFkUHJv
eHk6OlNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eShQYWdlQ29uZmlndXJhdGlvbiYmIHBhZ2VDb25m
aWd1cmF0aW9uLCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiBjb250ZXh0RGF0YSwgU2Vydmlj
ZVdvcmtlckRhdGEmJiB3b3JrZXJEYXRhLCBTdHJpbmcmJiB1c2VyQWdlbnQsIENhY2hlU3RvcmFn
ZVByb3ZpZGVyJiBjYWNoZVN0b3JhZ2VQcm92aWRlciwgU3RvcmFnZUJsb2NraW5nUG9saWN5IHN0
b3JhZ2VCbG9ja2luZ1BvbGljeSkKKyAgICA6IG1fcGFnZShjcmVhdGVQYWdlRm9yU2VydmljZVdv
cmtlcihXVEZNb3ZlKHBhZ2VDb25maWd1cmF0aW9uKSwgY29udGV4dERhdGEsIHN0b3JhZ2VCbG9j
a2luZ1BvbGljeSkpCiAgICAgLCBtX2RvY3VtZW50KCptX3BhZ2UtPm1haW5GcmFtZSgpLmRvY3Vt
ZW50KCkpCiAjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1IpCi0gICAgLCBtX3JlbW90ZURlYnVn
Z2FibGUobWFrZVVuaXF1ZTxTZXJ2aWNlV29ya2VyRGVidWdnYWJsZT4oKnRoaXMsIGRhdGEpKQor
ICAgICwgbV9yZW1vdGVEZWJ1Z2dhYmxlKG1ha2VVbmlxdWU8U2VydmljZVdvcmtlckRlYnVnZ2Fi
bGU+KCp0aGlzLCBjb250ZXh0RGF0YSkpCiAjZW5kaWYKLSAgICAsIG1fc2VydmljZVdvcmtlclRo
cmVhZChTZXJ2aWNlV29ya2VyVGhyZWFkOjpjcmVhdGUoV1RGTW92ZShkYXRhKSwgV1RGTW92ZSh1
c2VyQWdlbnQpLCBtX2RvY3VtZW50LT5zZXR0aW5nc1ZhbHVlcygpLCAqdGhpcywgKnRoaXMsIGlk
YkNvbm5lY3Rpb25Qcm94eShtX2RvY3VtZW50KSwgbV9kb2N1bWVudC0+c29ja2V0UHJvdmlkZXIo
KSkpCisgICAgLCBtX3NlcnZpY2VXb3JrZXJUaHJlYWQoU2VydmljZVdvcmtlclRocmVhZDo6Y3Jl
YXRlKFdURk1vdmUoY29udGV4dERhdGEpLCBXVEZNb3ZlKHdvcmtlckRhdGEpLCBXVEZNb3ZlKHVz
ZXJBZ2VudCksIG1fZG9jdW1lbnQtPnNldHRpbmdzVmFsdWVzKCksICp0aGlzLCAqdGhpcywgaWRi
Q29ubmVjdGlvblByb3h5KG1fZG9jdW1lbnQpLCBtX2RvY3VtZW50LT5zb2NrZXRQcm92aWRlcigp
KSkKICAgICAsIG1fY2FjaGVTdG9yYWdlUHJvdmlkZXIoY2FjaGVTdG9yYWdlUHJvdmlkZXIpCiAg
ICAgLCBtX2luc3BlY3RvclByb3h5KCp0aGlzKQogewpAQCAtMTE3LDggKzExNyw4IEBAIFNlcnZp
Y2VXb3JrZXJUaHJlYWRQcm94eTo6U2VydmljZVdvcmtlclRocmVhZFByb3h5KFBhZ2VDb25maWd1
cmF0aW9uJiYgcGFnZUNvbmZpCiAgICAgbV9yZW1vdGVEZWJ1Z2dhYmxlLT5pbml0KCk7CiAjZW5k
aWYKIAotICAgIGlmIChkYXRhLmxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkKQotICAgICAg
ICBzZXRMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZChkYXRhLmxhc3ROYXZpZ2F0aW9uV2Fz
QXBwSW5pdGlhdGVkID09IExhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkOjpZZXMpOworICAg
IGlmIChjb250ZXh0RGF0YS5sYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkKKyAgICAgICAg
c2V0TGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQoY29udGV4dERhdGEubGFzdE5hdmlnYXRp
b25XYXNBcHBJbml0aWF0ZWQgPT0gTGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQ6Olllcyk7
CiB9CiAKIFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6flNlcnZpY2VXb3JrZXJUaHJlYWRQcm94
eSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9T
ZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWRQcm94eS5oCmluZGV4IDJjNWEyODkyOGZhZTAw
YTQ4ZmU4ZGFiOTY4YTg5OTdmYzNkYWVjYzcuLmUyOGQ5ZTQ3NDY1NDAzNGZjNWM3YWI5ZGYzM2Yy
NjM2ZTU5YjkyMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9j
b250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWRQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWRQcm94eS5oCkBAIC04NSw3
ICs4NSw3IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCBib29sIGxhc3ROYXZpZ2F0aW9u
V2FzQXBwSW5pdGlhdGVkKCk7CiAKIHByaXZhdGU6Ci0gICAgV0VCQ09SRV9FWFBPUlQgU2Vydmlj
ZVdvcmtlclRocmVhZFByb3h5KFBhZ2VDb25maWd1cmF0aW9uJiYsIFNlcnZpY2VXb3JrZXJDb250
ZXh0RGF0YSYmLCBTdHJpbmcmJiB1c2VyQWdlbnQsIENhY2hlU3RvcmFnZVByb3ZpZGVyJiwgU3Rv
cmFnZUJsb2NraW5nUG9saWN5KTsKKyAgICBXRUJDT1JFX0VYUE9SVCBTZXJ2aWNlV29ya2VyVGhy
ZWFkUHJveHkoUGFnZUNvbmZpZ3VyYXRpb24mJiwgU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYs
IFNlcnZpY2VXb3JrZXJEYXRhJiYsIFN0cmluZyYmIHVzZXJBZ2VudCwgQ2FjaGVTdG9yYWdlUHJv
dmlkZXImLCBTdG9yYWdlQmxvY2tpbmdQb2xpY3kpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgc3Rh
dGljIHZvaWQgbmV0d29ya1N0YXRlQ2hhbmdlZChib29sIGlzT25MaW5lKTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAppbmRleCA1
NjllMmY5ZjQ4ZmNhMWE2MjRhYzRhZTY4Yjc5YTFlZWJkODcwOTRhLi5jY2I5NWJkMjViYjQzYTlj
ZjRhOGYyODQyMmYzZDIyMGMyZjk2NjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcApAQCAtNzI3LDEwICs3MjcsMTAgQEAgdm9p
ZCBTV1NlcnZlcjo6aW5zdGFsbENvbnRleHREYXRhKGNvbnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0
RGF0YSYgZGF0YSkKICAgICByZWdpc3RyYXRpb24tPnNldFByZUluc3RhbGxhdGlvbldvcmtlcih3
b3JrZXIucHRyKCkpOwogICAgIHdvcmtlci0+c2V0U3RhdGUoU1dTZXJ2ZXJXb3JrZXI6OlN0YXRl
OjpSdW5uaW5nKTsKICAgICBhdXRvIHVzZXJBZ2VudCA9IHdvcmtlci0+dXNlckFnZW50KCk7Ci0g
ICAgYXV0byByZXN1bHQgPSBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vycy5hZGQoZGF0YS5z
ZXJ2aWNlV29ya2VySWRlbnRpZmllciwgV1RGTW92ZSh3b3JrZXIpKTsKKyAgICBhdXRvIHJlc3Vs
dCA9IG1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLmFkZChkYXRhLnNlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyLCB3b3JrZXIuY29weVJlZigpKTsKICAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwg
cmVzdWx0LmlzTmV3RW50cnkpOwogCi0gICAgY29ubmVjdGlvbi0+aW5zdGFsbFNlcnZpY2VXb3Jr
ZXJDb250ZXh0KGRhdGEsIHVzZXJBZ2VudCk7CisgICAgY29ubmVjdGlvbi0+aW5zdGFsbFNlcnZp
Y2VXb3JrZXJDb250ZXh0KGRhdGEsIHdvcmtlci0+ZGF0YSgpLCB1c2VyQWdlbnQpOwogfQogCiB2
b2lkIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VySWZOZWNlc3NhcnkoU2VydmljZVdvcmtlcklk
ZW50aWZpZXIgaWRlbnRpZmllciwgUnVuU2VydmljZVdvcmtlckNhbGxiYWNrJiYgY2FsbGJhY2sp
CkBAIC03OTgsNyArNzk4LDcgQEAgYm9vbCBTV1NlcnZlcjo6cnVuU2VydmljZVdvcmtlcihTZXJ2
aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIGF1dG8qIGNvbnRleHRDb25uZWN0
aW9uID0gd29ya2VyLT5jb250ZXh0Q29ubmVjdGlvbigpOwogICAgIEFTU0VSVChjb250ZXh0Q29u
bmVjdGlvbik7CiAKLSAgICBjb250ZXh0Q29ubmVjdGlvbi0+aW5zdGFsbFNlcnZpY2VXb3JrZXJD
b250ZXh0KHdvcmtlci0+Y29udGV4dERhdGEoKSwgd29ya2VyLT51c2VyQWdlbnQoKSk7CisgICAg
Y29udGV4dENvbm5lY3Rpb24tPmluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dCh3b3JrZXItPmNv
bnRleHREYXRhKCksIHdvcmtlci0+ZGF0YSgpLCB3b3JrZXItPnVzZXJBZ2VudCgpKTsKIAogICAg
IHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL3NlcnZlci9TV1NlcnZlclJlZ2lzdHJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyUmVnaXN0cmF0aW9uLmNwcAppbmRleCBkOGNhNjVm
OGVlZjZkYzQ2ODllZDZjOGUwNWVhODYzNGFhODk1OTFkLi44MWIwZTg2OGU1MTU2MTg2YTM0MGYz
MGI3OTEyNTYzYzI0MDY1N2IwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2Uvc2VydmVyL1NXU2VydmVyUmVnaXN0cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyUmVnaXN0cmF0aW9uLmNwcApAQCAtMjMz
LDcgKzIzMyw3IEBAIGJvb2wgU1dTZXJ2ZXJSZWdpc3RyYXRpb246OnRyeUNsZWFyKCkKIHZvaWQg
U1dTZXJ2ZXJSZWdpc3RyYXRpb246OmNsZWFyKCkKIHsKICAgICBpZiAobV9wcmVJbnN0YWxsYXRp
b25Xb3JrZXIpIHsKLSAgICAgICAgQVNTRVJUKG1fcHJlSW5zdGFsbGF0aW9uV29ya2VyLT5zdGF0
ZSgpID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6UmVkdW5kYW50KTsKKyAgICAgICAgQVNTRVJUKG1f
cHJlSW5zdGFsbGF0aW9uV29ya2VyLT5zdGF0ZSgpID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6UGFy
c2VkKTsKICAgICAgICAgbV9wcmVJbnN0YWxsYXRpb25Xb3JrZXItPnRlcm1pbmF0ZSgpOwogICAg
ICAgICBtX3ByZUluc3RhbGxhdGlvbldvcmtlciA9IG51bGxwdHI7CiAgICAgfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlclRvQ29udGV4
dENvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dT
ZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmgKaW5kZXggMWM3ZjM5ZGI3YzZkZWNlZTM0ZWUzZTA1
NDg2NzE5ZWZiYmI3ODg2OS4uZDc0YTY5MDA4MTlhNjMzYzQ2MGE4NzU2NDE4MGRkYzQyYWQ0OTdm
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1Nl
cnZlclRvQ29udGV4dENvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2Uvc2VydmVyL1NXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oCkBAIC01MSw3ICs1MSw3
IEBAIHB1YmxpYzoKICAgICBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb25JZGVudGlmaWVyIGlk
ZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAogICAgIC8vIE1lc3Nh
Z2VzIHRvIHRoZSBTVyBob3N0IHByb2Nlc3MKLSAgICB2aXJ0dWFsIHZvaWQgaW5zdGFsbFNlcnZp
Y2VXb3JrZXJDb250ZXh0KGNvbnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYsIGNvbnN0IFN0
cmluZyYgdXNlckFnZW50KSA9IDA7CisgICAgdmlydHVhbCB2b2lkIGluc3RhbGxTZXJ2aWNlV29y
a2VyQ29udGV4dChjb25zdCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmLCBjb25zdCBTZXJ2aWNl
V29ya2VyRGF0YSYsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50KSA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIHVwZGF0ZUFwcEluaXRpYXRlZFZhbHVlKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBMYXN0
TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBmaXJlSW5z
dGFsbEV2ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IGZpcmVBY3RpdmF0ZUV2ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSA9IDA7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2Vy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3Jr
ZXIuY3BwCmluZGV4IGU5OGY3M2IwNjUzODBkMDMxOWFkZmQxOGRmNzhmNmEyZjAyNThiNzEuLjM3
NmZiNmQyMjYyMDg3NDNhMDE2NWM0YThlZGFmM2YxMWYxZTAzYmYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3Bw
CkBAIC01NCw3ICs1NCw3IEBAIFNXU2VydmVyV29ya2VyOjpTV1NlcnZlcldvcmtlcihTV1NlcnZl
ciYgc2VydmVyLCBTV1NlcnZlclJlZ2lzdHJhdGlvbiYgcmVnaXN0cmF0CiAgICAgOiBtX3NlcnZl
cihtYWtlV2Vha1B0cihzZXJ2ZXIpKQogICAgICwgbV9yZWdpc3RyYXRpb25LZXkocmVnaXN0cmF0
aW9uLmtleSgpKQogICAgICwgbV9yZWdpc3RyYXRpb24obWFrZVdlYWtQdHIocmVnaXN0cmF0aW9u
KSkKLSAgICAsIG1fZGF0YSB7IGlkZW50aWZpZXIsIHNjcmlwdFVSTCwgU2VydmljZVdvcmtlclN0
YXRlOjpSZWR1bmRhbnQsIHR5cGUsIHJlZ2lzdHJhdGlvbi5pZGVudGlmaWVyKCkgfQorICAgICwg
bV9kYXRhIHsgaWRlbnRpZmllciwgc2NyaXB0VVJMLCBTZXJ2aWNlV29ya2VyU3RhdGU6OlBhcnNl
ZCwgdHlwZSwgcmVnaXN0cmF0aW9uLmlkZW50aWZpZXIoKSB9CiAgICAgLCBtX3NjcmlwdChzY3Jp
cHQpCiAgICAgLCBtX2NlcnRpZmljYXRlSW5mbyhjZXJ0aWZpY2F0ZUluZm8pCiAgICAgLCBtX2Nv
bnRlbnRTZWN1cml0eVBvbGljeShjb250ZW50U2VjdXJpdHlQb2xpY3kpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0Nv
bnRleHRDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2Vydmlj
ZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwCmluZGV4IGU5MDJlYzA3
NTgwNTBlOTlmNjAxN2RiZjcxMGRhODM1NTlhZGMzNmYuLjA2MDI4ZTkxNDM5YTlkMTNjMDI2NGVj
M2I5ZjJlYjVhMWYwNmY4NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRv
Q29udGV4dENvbm5lY3Rpb24uY3BwCkBAIC04Nyw5ICs4Nyw5IEBAIHZvaWQgV2ViU1dTZXJ2ZXJU
b0NvbnRleHRDb25uZWN0aW9uOjpwb3N0TWVzc2FnZVRvU2VydmljZVdvcmtlckNsaWVudChjb25z
dCBTZXJ2CiAgICAgICAgIGNvbm5lY3Rpb24tPnBvc3RNZXNzYWdlVG9TZXJ2aWNlV29ya2VyQ2xp
ZW50KGRlc3RpbmF0aW9uSWRlbnRpZmllci5jb250ZXh0SWRlbnRpZmllciwgbWVzc2FnZSwgc291
cmNlSWRlbnRpZmllciwgc291cmNlT3JpZ2luKTsKIH0KIAotdm9pZCBXZWJTV1NlcnZlclRvQ29u
dGV4dENvbm5lY3Rpb246Omluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dChjb25zdCBTZXJ2aWNl
V29ya2VyQ29udGV4dERhdGEmIGRhdGEsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50KQordm9pZCBX
ZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb246Omluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4
dChjb25zdCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmIGNvbnRleHREYXRhLCBjb25zdCBTZXJ2
aWNlV29ya2VyRGF0YSYgd29ya2VyRGF0YSwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQpCiB7Ci0g
ICAgc2VuZChNZXNzYWdlczo6V2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246Okluc3RhbGxT
ZXJ2aWNlV29ya2VyIHsgZGF0YSwgdXNlckFnZW50IH0pOworICAgIHNlbmQoTWVzc2FnZXM6Oldl
YlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjpJbnN0YWxsU2VydmljZVdvcmtlciB7IGNvbnRl
eHREYXRhLCB3b3JrZXJEYXRhLCB1c2VyQWdlbnQgfSk7CiB9CiAKIHZvaWQgV2ViU1dTZXJ2ZXJU
b0NvbnRleHRDb25uZWN0aW9uOjp1cGRhdGVBcHBJbml0aWF0ZWRWYWx1ZShTZXJ2aWNlV29ya2Vy
SWRlbnRpZmllciBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgV2ViQ29yZTo6TGFzdE5hdmlnYXRp
b25XYXNBcHBJbml0aWF0ZWQgbGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2
ZXJUb0NvbnRleHRDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1Nl
cnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmgKaW5kZXggYWUzYTFh
NTY4NmZhYTViN2VmZjQ0ZGY4MDUzN2VhZjc3ZjE4ZmU3My4uOTQzM2JmNTNhMzZlNWM4ODI2NmU2
NTg0ZTViOTZmOTFhY2Q4MDE4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRv
Q29udGV4dENvbm5lY3Rpb24uaApAQCAtODUsNyArODUsNyBAQCBwcml2YXRlOgogICAgIHZvaWQg
cG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQoY29uc3QgV2ViQ29yZTo6U2VydmljZVdv
cmtlckNsaWVudElkZW50aWZpZXImIGRlc3RpbmF0aW9uSWRlbnRpZmllciwgY29uc3QgV2ViQ29y
ZTo6TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMmLCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRp
ZmllciBzb3VyY2VJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNvdXJjZU9yaWdpbik7CiAKICAg
ICAvLyBNZXNzYWdlcyB0byB0aGUgU1cgaG9zdCBXZWJQcm9jZXNzCi0gICAgdm9pZCBpbnN0YWxs
U2VydmljZVdvcmtlckNvbnRleHQoY29uc3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckNvbnRleHRE
YXRhJiwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQpIGZpbmFsOworICAgIHZvaWQgaW5zdGFsbFNl
cnZpY2VXb3JrZXJDb250ZXh0KGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDb250ZXh0RGF0
YSYsIGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJEYXRhJiwgY29uc3QgU3RyaW5nJiB1c2Vy
QWdlbnQpIGZpbmFsOwogICAgIHZvaWQgdXBkYXRlQXBwSW5pdGlhdGVkVmFsdWUoV2ViQ29yZTo6
U2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNvcmU6Okxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5p
dGlhdGVkKSBmaW5hbDsKICAgICB2b2lkIGZpcmVJbnN0YWxsRXZlbnQoV2ViQ29yZTo6U2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIpIGZpbmFsOwogICAgIHZvaWQgZmlyZUFjdGl2YXRlRXZlbnQoV2Vi
Q29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24u
Y3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdl
ckNvbm5lY3Rpb24uY3BwCmluZGV4IDRhODM0MDgyZDYxMDU2ZmI2NDc0Yzk5NjQ0NGFhNDE0YjRk
OTY1NWUuLjAyODhmMjg1YTRjNDczY2EyMTllZDExOTczZGFjZWQ2MmI5NjBhNGEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJD
b25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJT
V0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5jcHAKQEAgLTE0MSw3ICsxNDEsNyBAQCB2b2lkIFdl
YlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjp1cGRhdGVBcHBJbml0aWF0ZWRWYWx1ZShTZXJ2
aWNlV29ya2VySWRlbnRpZgogICAgICAgICBzZXJ2aWNlV29ya2VyVGhyZWFkUHJveHktPnNldExh
c3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkKGxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVk
ID09IFdlYkNvcmU6Okxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkOjpZZXMpOwogfQogCi12
b2lkIFdlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjppbnN0YWxsU2VydmljZVdvcmtlcihT
ZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiBkYXRhLCBTdHJpbmcmJiB1c2VyQWdlbnQpCit2b2lk
IFdlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjppbnN0YWxsU2VydmljZVdvcmtlcihTZXJ2
aWNlV29ya2VyQ29udGV4dERhdGEmJiBjb250ZXh0RGF0YSwgU2VydmljZVdvcmtlckRhdGEmJiB3
b3JrZXJEYXRhLCBTdHJpbmcmJiB1c2VyQWdlbnQpCiB7CiAgICAgYXV0byBwYWdlQ29uZmlndXJh
dGlvbiA9IHBhZ2VDb25maWd1cmF0aW9uV2l0aEVtcHR5Q2xpZW50cyhXZWJQcm9jZXNzOjpzaW5n
bGV0b24oKS5zZXNzaW9uSUQoKSk7CiAKQEAgLTE1OSw5ICsxNTksOSBAQCB2b2lkIFdlYlNXQ29u
dGV4dE1hbmFnZXJDb25uZWN0aW9uOjppbnN0YWxsU2VydmljZVdvcmtlcihTZXJ2aWNlV29ya2Vy
Q29udGV4dERhdAogICAgIHBhZ2VDb25maWd1cmF0aW9uLmxvYWRlckNsaWVudEZvck1haW5GcmFt
ZSA9IG1ha2VVbmlxdWVSZWY8U2VydmljZVdvcmtlckZyYW1lTG9hZGVyQ2xpZW50PihtX3dlYlBh
Z2VQcm94eUlELCBtX3BhZ2VJRCwgRnJhbWVJZGVudGlmaWVyOjpnZW5lcmF0ZSgpLCBlZmZlY3Rp
dmVVc2VyQWdlbnQpOwogCiAjaWYgIVJFTEVBU0VfTE9HX0RJU0FCTEVECi0gICAgYXV0byBzZXJ2
aWNlV29ya2VySWRlbnRpZmllciA9IGRhdGEuc2VydmljZVdvcmtlcklkZW50aWZpZXI7CisgICAg
YXV0byBzZXJ2aWNlV29ya2VySWRlbnRpZmllciA9IGNvbnRleHREYXRhLnNlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyOwogI2VuZGlmCi0gICAgYXV0byBzZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkgPSBT
ZXJ2aWNlV29ya2VyVGhyZWFkUHJveHk6OmNyZWF0ZShXVEZNb3ZlKHBhZ2VDb25maWd1cmF0aW9u
KSwgV1RGTW92ZShkYXRhKSwgV1RGTW92ZShlZmZlY3RpdmVVc2VyQWdlbnQpLCBXZWJQcm9jZXNz
OjpzaW5nbGV0b24oKS5jYWNoZVN0b3JhZ2VQcm92aWRlcigpLCBtX3N0b3JhZ2VCbG9ja2luZ1Bv
bGljeSk7CisgICAgYXV0byBzZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkgPSBTZXJ2aWNlV29ya2Vy
VGhyZWFkUHJveHk6OmNyZWF0ZShXVEZNb3ZlKHBhZ2VDb25maWd1cmF0aW9uKSwgV1RGTW92ZShj
b250ZXh0RGF0YSksIFdURk1vdmUod29ya2VyRGF0YSksIFdURk1vdmUoZWZmZWN0aXZlVXNlckFn
ZW50KSwgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuY2FjaGVTdG9yYWdlUHJvdmlkZXIoKSwgbV9z
dG9yYWdlQmxvY2tpbmdQb2xpY3kpOwogICAgIFNXQ29udGV4dE1hbmFnZXI6OnNpbmdsZXRvbigp
LnJlZ2lzdGVyU2VydmljZVdvcmtlclRocmVhZEZvckluc3RhbGwoV1RGTW92ZShzZXJ2aWNlV29y
a2VyVGhyZWFkUHJveHkpKTsKIAogICAgIFJFTEVBU0VfTE9HKFNlcnZpY2VXb3JrZXIsICJDcmVh
dGVkIHNlcnZpY2Ugd29ya2VyICUiIFBSSXU2NCAiIGluIHByb2Nlc3MgUElEICVpIiwgc2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIudG9VSW50NjQoKSwgZ2V0Q3VycmVudFByb2Nlc3NJRCgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1h
bmFnZXJDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJT
V0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oCmluZGV4IDhiY2ZkMmM0YmRjNmJiOWRlOGJkYmQz
ZDM2OTBlY2FlYjllMDc3Y2YuLjA2YjMyNWM1MGU3NDQyNDFkNDc4NTFmMTA3OTVkMGI2ZWQwNGUz
NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29u
dGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaApAQCAtODYsNyArODYsNyBAQCBw
cml2YXRlOgogICAgIC8vIElQQyBtZXNzYWdlcy4KICAgICB2b2lkIHNlcnZpY2VXb3JrZXJTdGFy
dGVkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2VydmljZVdvcmtlckpvYkRhdGFJZGVudGlmaWVy
PiwgV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIGJvb2wgZG9lc0hhbmRsZUZldGNo
KSBmaW5hbDsKICAgICB2b2lkIHNlcnZpY2VXb3JrZXJGYWlsZWRUb1N0YXJ0KHN0ZDo6b3B0aW9u
YWw8V2ViQ29yZTo6U2VydmljZVdvcmtlckpvYkRhdGFJZGVudGlmaWVyPiwgV2ViQ29yZTo6U2Vy
dmljZVdvcmtlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgZXhjZXB0aW9uTWVzc2FnZSkgZmlu
YWw7Ci0gICAgdm9pZCBpbnN0YWxsU2VydmljZVdvcmtlcihXZWJDb3JlOjpTZXJ2aWNlV29ya2Vy
Q29udGV4dERhdGEmJiwgU3RyaW5nJiYgdXNlckFnZW50KTsKKyAgICB2b2lkIGluc3RhbGxTZXJ2
aWNlV29ya2VyKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBXZWJDb3JlOjpT
ZXJ2aWNlV29ya2VyRGF0YSYmLCBTdHJpbmcmJiB1c2VyQWdlbnQpOwogICAgIHZvaWQgdXBkYXRl
QXBwSW5pdGlhdGVkVmFsdWUoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNv
cmU6Okxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkKTsKICAgICB2b2lkIHN0YXJ0RmV0Y2go
V2ViQ29yZTo6U1dTZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6U2VydmljZVdv
cmtlcklkZW50aWZpZXIsIFdlYkNvcmU6OkZldGNoSWRlbnRpZmllciwgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXF1ZXN0JiYsIFdlYkNvcmU6OkZldGNoT3B0aW9ucyYmLCBJUEM6OkZvcm1EYXRhUmVmZXJl
bmNlJiYsIFN0cmluZyYmIHJlZmVycmVyKTsKICAgICB2b2lkIGNhbmNlbEZldGNoKFdlYkNvcmU6
OlNXU2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVu
dGlmaWVyLCBXZWJDb3JlOjpGZXRjaElkZW50aWZpZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24ubWVz
c2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRN
YW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCAzZTIwZGUzNTRiYzQzZDg0YWI0OTA0
MjM0NWM5N2ViOTJlZWYzZjY0Li4yYWY0ODlkNTE2YTRlYzY5NmJhZTBmYTI1Mjg3OTI3YzRkY2Y0
ODI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0Nv
bnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5p
bgpAQCAtMjMsNyArMjMsNyBAQAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKIAogbWVzc2Fn
ZXMgLT4gV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24gTm90UmVmQ291bnRlZCB7Ci0gICAg
SW5zdGFsbFNlcnZpY2VXb3JrZXIoc3RydWN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDb250ZXh0
RGF0YSBjb250ZXh0RGF0YSwgU3RyaW5nIHVzZXJBZ2VudCkKKyAgICBJbnN0YWxsU2VydmljZVdv
cmtlcihzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckNvbnRleHREYXRhIGNvbnRleHREYXRh
LCBzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckRhdGEgd29ya2VyRGF0YSwgU3RyaW5nIHVz
ZXJBZ2VudCkKICAgICBVcGRhdGVBcHBJbml0aWF0ZWRWYWx1ZShXZWJDb3JlOjpTZXJ2aWNlV29y
a2VySWRlbnRpZmllciBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgZW51bTpib29sIFdlYkNvcmU6
Okxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkIGxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlh
dGVkKQogICAgIFN0YXJ0RmV0Y2goV2ViQ29yZTo6U1dTZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmll
ciBzZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50
aWZpZXIgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNvcmU6OkZldGNoSWRlbnRpZmllciBm
ZXRjaElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCByZXF1ZXN0LCBzdHJ1Y3Qg
V2ViQ29yZTo6RmV0Y2hPcHRpb25zIG9wdGlvbnMsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UgcmVx
dWVzdEJvZHksIFN0cmluZyByZWZlcnJlcikKICAgICBDYW5jZWxGZXRjaChXZWJDb3JlOjpTV1Nl
cnZlckNvbm5lY3Rpb25JZGVudGlmaWVyIHNlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyLCBXZWJD
b3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgV2Vi
Q29yZTo6RmV0Y2hJZGVudGlmaWVyIGZldGNoSWRlbnRpZmllcikKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nCmluZGV4IDg2Mjg5YWRiZWFhNDQ4ZTk0NWFlOWVhYTdmNTAwODVkODc2YWVjMTcu
LmI2OGE0Y2E5YmNkNWVlNDA1OWZmYTc2N2QxYjQ0NzI5ODA2NjgxY2QgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA4LTMxICBDaHJpcyBEdW1l
eiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIFNlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZS5zZXJ2aWNlV29ya2VyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjk3MjAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0cyB0aGF0IGFyZSBub3cg
cGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdp
bi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIv
Z2xvYmFsLXNlcnZpY2V3b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0
OgorCiAyMDIxLTA4LTMxICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAg
ICAgW0NPT1BdIGh0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kvY29vcC1uYXZpZ2F0ZS1z
YW1lLW9yaWdpbi1jc3Atc2FuZGJveC5odG1sIFdQVCB0ZXN0IGlzIGZhaWxpbmcKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9z
cy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9z
cy1vcmlnaW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4
dAppbmRleCAyZGNjNjE3YzQ5NjA4NTQyNTlkYjZhNjIyZGY1NWFhYWY5YWIzMGEyLi43YWVlMDg2
ZGZjNmFhZWVjMzVlNjJlNGQ4MjBkNGUzMjkyOGQzMjU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5l
ci1wb2xpY3kvcG9wdXAtY29vcC1ieS1zdy5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1v
cGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDEy
ICsxLDExIEBACitDT05TT0xFIE1FU1NBR0U6IFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjog
VHlwZUVycm9yOiBMb2FkIGZhaWxlZAogCi1IYXJuZXNzIEVycm9yIChUSU1FT1VUKSwgbWVzc2Fn
ZSA9IG51bGwKLQotVElNRU9VVCBvcGVuZXI6YmFzaWMsIG9wZW5lZTpiYXNpYywgc3c6YmFzaWMg
VGVzdCB0aW1lZCBvdXQKLU5PVFJVTiBvcGVuZXI6YmFzaWMsIG9wZW5lZTpiYXNpYywgc3c6Y29p
Ci1OT1RSVU4gb3BlbmVyOmJhc2ljLCBvcGVuZWU6Y29pLCBzdzpiYXNpYwotTk9UUlVOIG9wZW5l
cjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6Y29pCi1OT1RSVU4gb3BlbmVyOmNvaSwgb3BlbmVlOmJh
c2ljLCBzdzpiYXNpYwotTk9UUlVOIG9wZW5lcjpjb2ksIG9wZW5lZTpiYXNpYywgc3c6Y29pCi1O
T1RSVU4gb3BlbmVyOmNvaSwgb3BlbmVlOmNvaSwgc3c6YmFzaWMKLU5PVFJVTiBvcGVuZXI6Y29p
LCBvcGVuZWU6Y29pLCBzdzpjb2kKK1BBU1Mgb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFzaWMsIHN3
OmJhc2ljCitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVlOmJhc2ljLCBzdzpjb2kKK1BBU1Mgb3Bl
bmVyOmJhc2ljLCBvcGVuZWU6Y29pLCBzdzpiYXNpYworUEFTUyBvcGVuZXI6YmFzaWMsIG9wZW5l
ZTpjb2ksIHN3OmNvaQorUEFTUyBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMsIHN3OmJhc2ljCitQ
QVNTIG9wZW5lcjpjb2ksIG9wZW5lZTpiYXNpYywgc3c6Y29pCitQQVNTIG9wZW5lcjpjb2ksIG9w
ZW5lZTpjb2ksIHN3OmJhc2ljCitQQVNTIG9wZW5lcjpjb2ksIG9wZW5lZTpjb2ksIHN3OmNvaQog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9nbG9iYWwtc2VydmljZXdvcmtlci5odHRw
cy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9nbG9i
YWwtc2VydmljZXdvcmtlci5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKaW5k
ZXggN2U0Mjg0NzdhMzczYWRiOTUyNTQwYTQ5YjNmNGRiY2Y5YzUzY2RhMi4uN2Q0YmNkODQzYTZm
MjI0N2IzODc4MTA5ZGUzMWJkMGYxNWY3Mzc4MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZ2xvYmFsLXNlcnZpY2V3b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2dsb2JhbC1zZXJ2aWNld29ya2VyLmh0dHBzLmFu
eS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dApAQCAtMSw2ICsxLDYgQEAKIAotRkFJTCBGaXJz
dCBydW4gYXNzZXJ0X3RydWU6IHNlbGYuc2VydmljZVdvcmtlciBleGlzdHMgZXhwZWN0ZWQgdHJ1
ZSBnb3QgZmFsc2UKLUZBSUwgQ2FuIHBvc3QgbWVzc2FnZSB0byBzZWxmIGR1cmluZyBzdGFydHVw
IGFzc2VydF90cnVlOiBzZWxmLnNlcnZpY2VXb3JrZXIgZXhpc3RzIGV4cGVjdGVkIHRydWUgZ290
IGZhbHNlCi1GQUlMIER1cmluZyBpbnN0YWxsIGFzc2VydF90cnVlOiBzZWxmLnNlcnZpY2VXb3Jr
ZXIgZXhpc3RzIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCi1GQUlMIER1cmluZyBhY3RpdmF0ZSBh
c3NlcnRfdHJ1ZTogc2VsZi5zZXJ2aWNlV29ya2VyIGV4aXN0cyBleHBlY3RlZCB0cnVlIGdvdCBm
YWxzZQorUEFTUyBGaXJzdCBydW4KK1BBU1MgQ2FuIHBvc3QgbWVzc2FnZSB0byBzZWxmIGR1cmlu
ZyBzdGFydHVwCitQQVNTIER1cmluZyBpbnN0YWxsCitQQVNTIER1cmluZyBhY3RpdmF0ZQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>436965</attachid>
            <date>2021-08-31 16:45:37 -0700</date>
            <delta_ts>2021-09-01 07:52:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229720-20210831164537.patch</filename>
            <type>text/plain</type>
            <size>34596</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxODMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDkwZDBlOWJmM2M3ZmM1
YmRhZDFmMWIxMmM2YTIyNjc0NDM1YmNlMi4uYWMyOGM3MjhjZDVhODk5YTA4NjVhYjkzOGQyMDQz
NjRkMmM3MzBiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTA4LTMxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIFNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZS5zZXJ2aWNlV29ya2VyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjk3MjAKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlLnNlcnZpY2VXb3JrZXI6CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0aHVi
LmlvL1NlcnZpY2VXb3JrZXIvI2RvbS1zZXJ2aWNld29ya2VyZ2xvYmFsc2NvcGUtc2VydmljZXdv
cmtlcgorCisgICAgICAgIEFsc28gYWRkIHN1cHBvcnQgZm9yIHRoZSAicGFyc2VkIiBpbml0aWFs
IFNlcnZpY2VXb3JrZXJTdGF0ZToKKyAgICAgICAgLSBodHRwczovL3czYy5naXRodWIuaW8vU2Vy
dmljZVdvcmtlci8jZW51bWRlZi1zZXJ2aWNld29ya2Vyc3RhdGUKKworICAgICAgICBObyBuZXcg
dGVzdHMsIHJlYmFzZWxpbmVkIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogd29ya2Vycy9z
ZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9TZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlckds
b2JhbFNjb3BlOjpTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUpOgorICAgICAgICAqIHdvcmtlcnMv
c2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaDoKKyAgICAgICAgKiB3b3JrZXJzL3Nl
cnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL3Nl
cnZpY2UvU2VydmljZVdvcmtlclR5cGVzLmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL2Nv
bnRleHQvU2VydmljZVdvcmtlclRocmVhZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZXJ2aWNl
V29ya2VyVGhyZWFkOjpTZXJ2aWNlV29ya2VyVGhyZWFkKToKKyAgICAgICAgKFdlYkNvcmU6OlNl
cnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNjb3BlKToKKyAgICAgICAgKiB3
b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmg6CisgICAgICAgICog
d29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6U2VydmljZVdvcmtlclRo
cmVhZFByb3h5KToKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29y
a2VyVGhyZWFkUHJveHkuaDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2Vy
dmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjppbnN0YWxsQ29udGV4dERhdGEp
OgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnJ1blNlcnZpY2VXb3JrZXIpOgorICAgICAg
ICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJSZWdpc3RyYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJSZWdpc3RyYXRpb246OmNsZWFyKToKKyAgICAgICAgKiB3
b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oOgorICAg
ICAgICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6OlNXU2VydmVyV29ya2VyKToKKwogMjAyMS0wOC0z
MSAgS2F0ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KIAogICAgICAgICBV
c2UgYWZ0ZXIgbW92ZSBpbiBTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNWQw
YjA1Y2I5ZGVjNWQwOTRhYWJkN2E4MmM4YjI1MGNhOWI2MTE5OC4uYWNiMzFjZmYyZDI4ZjZlM2Yy
NjEyMTliMjQ5ZTFiNDM1YzhkNTU5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAyMS0w
OC0zMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBzdXBw
b3J0IGZvciBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuc2VydmljZVdvcmtlcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI5NzIwCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIFNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZS5zZXJ2aWNlV29ya2VyOgorICAgICAgICAtIGh0dHBzOi8v
dzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNkb20tc2VydmljZXdvcmtlcmdsb2JhbHNjb3Bl
LXNlcnZpY2V3b3JrZXIKKworICAgICAgICBBbHNvIGFkZCBzdXBwb3J0IGZvciB0aGUgInBhcnNl
ZCIgaW5pdGlhbCBTZXJ2aWNlV29ya2VyU3RhdGU6CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0
aHViLmlvL1NlcnZpY2VXb3JrZXIvI2VudW1kZWYtc2VydmljZXdvcmtlcnN0YXRlCisKKyAgICAg
ICAgKiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29u
bmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVj
dGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0KToKKyAgICAgICAgKiBOZXR3b3JrUHJv
Y2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjppbnN0
YWxsU2VydmljZVdvcmtlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29u
dGV4dE1hbmFnZXJDb25uZWN0aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dl
YlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluOgorCiAyMDIxLTA4LTMxICBL
YXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBh
ZnRlciBtb3ZlIGluIFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsIGIvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsCmluZGV4IDU4ZWRhYTFjOTUxOTky
OGY0MDMzOGNhNzdhNjliNzg4MTYwYTUzNWQuLmJkYmI4N2VmNjg2MjA5NTZmYmQ2NDlmNDk2NDQx
NWMxMGU4OGFlZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9T
ZXJ2aWNlV29ya2VyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vy
dmljZVdvcmtlci5pZGwKQEAgLTQ1LDYgKzQ1LDcgQEAKIFNlcnZpY2VXb3JrZXIgaW5jbHVkZXMg
QWJzdHJhY3RXb3JrZXI7CiAKIGVudW0gU2VydmljZVdvcmtlclN0YXRlIHsKKyAgICAicGFyc2Vk
IiwKICAgICAiaW5zdGFsbGluZyIsCiAgICAgImluc3RhbGxlZCIsCiAgICAgImFjdGl2YXRpbmci
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLmNwcAppbmRleCAzMzAxNGEzZTczNjczNGY1ODhlMDBhMWQwYmQy
ZGVhZGIwZjY3ZmJiLi5mYmMwNzJhZTkzMzE3YjZiNmNmMDU5MjU0NTRiNDcyZGVhNTFjYTU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckds
b2JhbFNjb3BlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlLmNwcApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkV4dGVu
ZGFibGVFdmVudC5oIgogI2luY2x1ZGUgIkpTRE9NUHJvbWlzZURlZmVycmVkLmgiCiAjaW5jbHVk
ZSAiU1dDb250ZXh0TWFuYWdlci5oIgorI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXIuaCIKICNpbmNs
dWRlICJTZXJ2aWNlV29ya2VyQ2xpZW50LmgiCiAjaW5jbHVkZSAiU2VydmljZVdvcmtlckNsaWVu
dHMuaCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VyQ29udGFpbmVyLmgiCkBAIC00NCwxNyArNDUs
MTggQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBXVEZfTUFLRV9JU09fQUxMT0NBVEVEX0lNUEwo
U2VydmljZVdvcmtlckdsb2JhbFNjb3BlKTsKIAotUmVmPFNlcnZpY2VXb3JrZXJHbG9iYWxTY29w
ZT4gU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpjcmVhdGUoU2VydmljZVdvcmtlckNvbnRleHRE
YXRhJiYgZGF0YSwgY29uc3QgV29ya2VyUGFyYW1ldGVycyYgcGFyYW1zLCBSZWY8U2VjdXJpdHlP
cmlnaW4+JiYgb3JpZ2luLCBTZXJ2aWNlV29ya2VyVGhyZWFkJiB0aHJlYWQsIFJlZjxTZWN1cml0
eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25u
ZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcikKK1JlZjxTZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGU+IFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKFNlcnZp
Y2VXb3JrZXJDb250ZXh0RGF0YSYmIGNvbnRleHREYXRhLCBTZXJ2aWNlV29ya2VyRGF0YSYmIHdv
cmtlckRhdGEsIGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmIHBhcmFtcywgUmVmPFNlY3VyaXR5T3Jp
Z2luPiYmIG9yaWdpbiwgU2VydmljZVdvcmtlclRocmVhZCYgdGhyZWFkLCBSZWY8U2VjdXJpdHlP
cmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogY29ubmVj
dGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIpCiB7Ci0gICAgYXV0byBz
Y29wZSA9IGFkb3B0UmVmKCpuZXcgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIHsgV1RGTW92ZShk
YXRhKSwgcGFyYW1zLCBXVEZNb3ZlKG9yaWdpbiksIHRocmVhZCwgV1RGTW92ZSh0b3BPcmlnaW4p
LCBjb25uZWN0aW9uUHJveHksIHNvY2tldFByb3ZpZGVyIH0pOworICAgIGF1dG8gc2NvcGUgPSBh
ZG9wdFJlZigqbmV3IFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSB7IFdURk1vdmUoY29udGV4dERh
dGEpLCBXVEZNb3ZlKHdvcmtlckRhdGEpLCBwYXJhbXMsIFdURk1vdmUob3JpZ2luKSwgdGhyZWFk
LCBXVEZNb3ZlKHRvcE9yaWdpbiksIGNvbm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIgfSk7
CiAgICAgc2NvcGUtPmFwcGx5Q29udGVudFNlY3VyaXR5UG9saWN5UmVzcG9uc2VIZWFkZXJzKHBh
cmFtcy5jb250ZW50U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMpOwogICAgIHJldHVybiBz
Y29wZTsKIH0KIAotU2VydmljZVdvcmtlckdsb2JhbFNjb3BlOjpTZXJ2aWNlV29ya2VyR2xvYmFs
U2NvcGUoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGF0YSwgY29uc3QgV29ya2VyUGFyYW1l
dGVycyYgcGFyYW1zLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBTZXJ2aWNlV29ya2Vy
VGhyZWFkJiB0aHJlYWQsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNsaWVu
dDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBz
b2NrZXRQcm92aWRlcikKK1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6U2VydmljZVdvcmtlckds
b2JhbFNjb3BlKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmIGNvbnRleHREYXRhLCBTZXJ2aWNl
V29ya2VyRGF0YSYmIHdvcmtlckRhdGEsIGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmIHBhcmFtcywg
UmVmPFNlY3VyaXR5T3JpZ2luPiYmIG9yaWdpbiwgU2VydmljZVdvcmtlclRocmVhZCYgdGhyZWFk
LCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rp
b25Qcm94eSogY29ubmVjdGlvblByb3h5LCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIp
CiAgICAgOiBXb3JrZXJHbG9iYWxTY29wZShXb3JrZXJUaHJlYWRUeXBlOjpTZXJ2aWNlV29ya2Vy
LCBwYXJhbXMsIFdURk1vdmUob3JpZ2luKSwgdGhyZWFkLCBXVEZNb3ZlKHRvcE9yaWdpbiksIGNv
bm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIpCi0gICAgLCBtX2NvbnRleHREYXRhKFdURk1v
dmUoZGF0YSkpCisgICAgLCBtX2NvbnRleHREYXRhKFdURk1vdmUoY29udGV4dERhdGEpKQogICAg
ICwgbV9yZWdpc3RyYXRpb24oU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbjo6Z2V0T3JDcmVhdGUo
KnRoaXMsIG5hdmlnYXRvcigpLnNlcnZpY2VXb3JrZXIoKSwgV1RGTW92ZShtX2NvbnRleHREYXRh
LnJlZ2lzdHJhdGlvbikpKQorICAgICwgbV9zZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXI6Omdl
dE9yQ3JlYXRlKCp0aGlzLCBXVEZNb3ZlKHdvcmtlckRhdGEpKSkKICAgICAsIG1fY2xpZW50cyhT
ZXJ2aWNlV29ya2VyQ2xpZW50czo6Y3JlYXRlKCkpCiB7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmgKaW5k
ZXggYzQzZDg2NTQ1ZmNiYjg2NWEzYTUxYjRiNTc5MzZmOTIyYjgwOTY2MC4uODRhNmMwNTZhMzM4
ZDY5OGFjNjMxOWFkNmMxNjNiY2YyZTJmNTg4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaApAQCAtNDUs
NyArNDUsNyBAQCBjbGFzcyBTZXJ2aWNlV29ya2VyVGhyZWFkOwogY2xhc3MgU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlIGZpbmFsIDogcHVibGljIFdvcmtlckdsb2JhbFNjb3BlIHsKICAgICBXVEZf
TUFLRV9JU09fQUxMT0NBVEVEKFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSk7CiBwdWJsaWM6Ci0g
ICAgc3RhdGljIFJlZjxTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU+IGNyZWF0ZShTZXJ2aWNlV29y
a2VyQ29udGV4dERhdGEmJiwgY29uc3QgV29ya2VyUGFyYW1ldGVycyYsIFJlZjxTZWN1cml0eU9y
aWdpbj4mJiwgU2VydmljZVdvcmtlclRocmVhZCYsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BP
cmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJvdmlkZXIqKTsK
KyAgICBzdGF0aWMgUmVmPFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZT4gY3JlYXRlKFNlcnZpY2VX
b3JrZXJDb250ZXh0RGF0YSYmLCBTZXJ2aWNlV29ya2VyRGF0YSYmLCBjb25zdCBXb3JrZXJQYXJh
bWV0ZXJzJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBTZXJ2aWNlV29ya2VyVGhyZWFkJiwgUmVm
PFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJv
eHkqLCBTb2NrZXRQcm92aWRlciopOwogCiAgICAgflNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSgp
OwogCkBAIC01Myw2ICs1Myw3IEBAIHB1YmxpYzoKIAogICAgIFNlcnZpY2VXb3JrZXJDbGllbnRz
JiBjbGllbnRzKCkgeyByZXR1cm4gbV9jbGllbnRzLmdldCgpOyB9CiAgICAgU2VydmljZVdvcmtl
clJlZ2lzdHJhdGlvbiYgcmVnaXN0cmF0aW9uKCkgeyByZXR1cm4gbV9yZWdpc3RyYXRpb24uZ2V0
KCk7IH0KKyAgICBTZXJ2aWNlV29ya2VyJiBzZXJ2aWNlV29ya2VyKCkgeyByZXR1cm4gbV9zZXJ2
aWNlV29ya2VyLmdldCgpOyB9CiAgICAgCiAgICAgdm9pZCBza2lwV2FpdGluZyhSZWY8RGVmZXJy
ZWRQcm9taXNlPiYmKTsKIApAQCAtNzcsMTIgKzc4LDEzIEBAIHB1YmxpYzoKICAgICBGZXRjaE9w
dGlvbnM6OkRlc3RpbmF0aW9uIGRlc3RpbmF0aW9uKCkgY29uc3QgZmluYWwgeyByZXR1cm4gRmV0
Y2hPcHRpb25zOjpEZXN0aW5hdGlvbjo6U2VydmljZXdvcmtlcjsgfQogICAgIAogcHJpdmF0ZToK
LSAgICBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYs
IGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIFNlcnZpY2VX
b3JrZXJUaHJlYWQmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGllbnQ6
OklEQkNvbm5lY3Rpb25Qcm94eSosIFNvY2tldFByb3ZpZGVyKik7CisgICAgU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBTZXJ2aWNlV29ya2VyRGF0
YSYmLCBjb25zdCBXb3JrZXJQYXJhbWV0ZXJzJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBTZXJ2
aWNlV29ya2VyVGhyZWFkJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgSURCQ2xp
ZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciopOwogCiAgICAgYm9vbCBo
YXNQZW5kaW5nRXZlbnRzKCkgY29uc3QgeyByZXR1cm4gIW1fZXh0ZW5kZWRFdmVudHMuaXNFbXB0
eSgpOyB9CiAKICAgICBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEgbV9jb250ZXh0RGF0YTsKICAg
ICBSZWY8U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbj4gbV9yZWdpc3RyYXRpb247CisgICAgUmVm
PFNlcnZpY2VXb3JrZXI+IG1fc2VydmljZVdvcmtlcjsKICAgICBSZWY8U2VydmljZVdvcmtlckNs
aWVudHM+IG1fY2xpZW50czsKICAgICBIYXNoTWFwPFNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlm
aWVyLCBTZXJ2aWNlV29ya2VyQ2xpZW50Kj4gbV9jbGllbnRNYXA7CiAgICAgVmVjdG9yPFJlZjxF
eHRlbmRhYmxlRXZlbnQ+PiBtX2V4dGVuZGVkRXZlbnRzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbApp
bmRleCBiNGI5MTA1ZmM0MzA1MWEzZjNlYTY5NDU5ZGUyNGIxZmY0OTJlYmUxLi40ZjkxN2M3Nzdj
MWVmODhlMDRhYzg0Yzc1YzI4ZjQyYWI3NmRhZmUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbApA
QCAtMzQsNiArMzQsNyBAQAogXSBpbnRlcmZhY2UgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIDog
V29ya2VyR2xvYmFsU2NvcGUgewogICAgIFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUg
U2VydmljZVdvcmtlckNsaWVudHMgY2xpZW50czsKICAgICBbU2FtZU9iamVjdF0gcmVhZG9ubHkg
YXR0cmlidXRlIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24gcmVnaXN0cmF0aW9uOworICAgIFtT
YW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU2VydmljZVdvcmtlciBzZXJ2aWNlV29ya2Vy
OwogCiAgICAgW05ld09iamVjdF0gUHJvbWlzZTx1bmRlZmluZWQ+IHNraXBXYWl0aW5nKCk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2Vy
VHlwZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyVHlw
ZXMuaAppbmRleCA4ODZjNWFkNDkwMjA3YWRiMTcxM2NiZjcxNWY4MzQ3Yjc2YzUxMTY2Li42MjJk
ZTMzMGQ5Y2Y0NjkzZjE4NTc2ODhjNWJjMWIzNWIyYThkMmRlIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclR5cGVzLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJUeXBlcy5oCkBAIC00Niw2ICs0
Niw3IEBAIGVudW0gY2xhc3MgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvblN0YXRlIDogdWludDhf
dCB7CiB9OwogCiBlbnVtIGNsYXNzIFNlcnZpY2VXb3JrZXJTdGF0ZSA6IHVpbnQ4X3QgeworICAg
IFBhcnNlZCwKICAgICBJbnN0YWxsaW5nLAogICAgIEluc3RhbGxlZCwKICAgICBBY3RpdmF0aW5n
LApAQCAtMTA1LDYgKzEwNiw3IEBAIHRlbXBsYXRlIDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNv
cmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25TdGF0ZT4gewogdGVtcGxhdGUgPD4gc3RydWN0
IEVudW1UcmFpdHM8V2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRlPiB7CiAgICAgdXNpbmcgdmFs
dWVzID0gRW51bVZhbHVlczwKICAgICAgICAgV2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRlLAor
ICAgICAgICBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyU3RhdGU6OlBhcnNlZCwKICAgICAgICAgV2Vi
Q29yZTo6U2VydmljZVdvcmtlclN0YXRlOjpJbnN0YWxsaW5nLAogICAgICAgICBXZWJDb3JlOjpT
ZXJ2aWNlV29ya2VyU3RhdGU6Okluc3RhbGxlZCwKICAgICAgICAgV2ViQ29yZTo6U2VydmljZVdv
cmtlclN0YXRlOjpBY3RpdmF0aW5nLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAppbmRleCBl
YTJhYmZlNTk3OGQyZTEwODg4NzFjNGY4MGJmMmVlYzViMGZkNzIyLi41MWQ3ZTllNTc5MTM3MDNl
OTFjZmQ5NGEyZWZiYzVjYmI3ZDE4MzBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcApA
QCAtNzMsMTEgKzczLDEyIEBAIHByaXZhdGU6CiAvLyBGSVhNRTogVXNlIGEgdmFsaWQgV29ya2Vy
T2JqZWN0UHJveHkKIC8vIEZJWE1FOiBVc2UgdmFsaWQgcnVudGltZSBmbGFncwogCi1TZXJ2aWNl
V29ya2VyVGhyZWFkOjpTZXJ2aWNlV29ya2VyVGhyZWFkKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0
YSYmIGRhdGEsIFN0cmluZyYmIHVzZXJBZ2VudCwgY29uc3QgU2V0dGluZ3M6OlZhbHVlcyYgc2V0
dGluZ3NWYWx1ZXMsIFdvcmtlckxvYWRlclByb3h5JiBsb2FkZXJQcm94eSwgV29ya2VyRGVidWdn
ZXJQcm94eSYgZGVidWdnZXJQcm94eSwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlk
YkNvbm5lY3Rpb25Qcm94eSwgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKQotICAgIDog
V29ya2VyVGhyZWFkKHsgZGF0YS5zY3JpcHRVUkwsIGVtcHR5U3RyaW5nKCksICJzZXJ2aWNld29y
a2VyOiIgKyBJbnNwZWN0b3I6OklkZW50aWZpZXJzRmFjdG9yeTo6Y3JlYXRlSWRlbnRpZmllcigp
LCBXVEZNb3ZlKHVzZXJBZ2VudCksIHBsYXRmb3JtU3RyYXRlZ2llcygpLT5sb2FkZXJTdHJhdGVn
eSgpLT5pc09uTGluZSgpLCBkYXRhLmNvbnRlbnRTZWN1cml0eVBvbGljeSwgZmFsc2UsIGRhdGEu
Y3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSwgTW9ub3RvbmljVGltZTo6bm93KCksIHsgfSwgZGF0
YS53b3JrZXJUeXBlLCBGZXRjaFJlcXVlc3RDcmVkZW50aWFsczo6T21pdCwgc2V0dGluZ3NWYWx1
ZXMgfSwgZGF0YS5zY3JpcHQsIGxvYWRlclByb3h5LCBkZWJ1Z2dlclByb3h5LCBEdW1teVNlcnZp
Y2VXb3JrZXJUaHJlYWRQcm94eTo6c2hhcmVkKCksIFdvcmtlclRocmVhZFN0YXJ0TW9kZTo6Tm9y
bWFsLCBkYXRhLnJlZ2lzdHJhdGlvbi5rZXkudG9wT3JpZ2luKCkuc2VjdXJpdHlPcmlnaW4oKS5n
ZXQoKSwgaWRiQ29ubmVjdGlvblByb3h5LCBzb2NrZXRQcm92aWRlciwgSlNDOjpSdW50aW1lRmxh
Z3M6OmNyZWF0ZUFsbEVuYWJsZWQoKSkKLSAgICAsIG1fc2VydmljZVdvcmtlcklkZW50aWZpZXIo
ZGF0YS5zZXJ2aWNlV29ya2VySWRlbnRpZmllcikKLSAgICAsIG1fam9iRGF0YUlkZW50aWZpZXIo
ZGF0YS5qb2JEYXRhSWRlbnRpZmllcikKLSAgICAsIG1fZGF0YShjcm9zc1RocmVhZENvcHkoZGF0
YSkpCitTZXJ2aWNlV29ya2VyVGhyZWFkOjpTZXJ2aWNlV29ya2VyVGhyZWFkKFNlcnZpY2VXb3Jr
ZXJDb250ZXh0RGF0YSYmIGNvbnRleHREYXRhLCBTZXJ2aWNlV29ya2VyRGF0YSYmIHdvcmtlckRh
dGEsIFN0cmluZyYmIHVzZXJBZ2VudCwgY29uc3QgU2V0dGluZ3M6OlZhbHVlcyYgc2V0dGluZ3NW
YWx1ZXMsIFdvcmtlckxvYWRlclByb3h5JiBsb2FkZXJQcm94eSwgV29ya2VyRGVidWdnZXJQcm94
eSYgZGVidWdnZXJQcm94eSwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5l
Y3Rpb25Qcm94eSwgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKQorICAgIDogV29ya2Vy
VGhyZWFkKHsgY29udGV4dERhdGEuc2NyaXB0VVJMLCBlbXB0eVN0cmluZygpLCAic2VydmljZXdv
cmtlcjoiICsgSW5zcGVjdG9yOjpJZGVudGlmaWVyc0ZhY3Rvcnk6OmNyZWF0ZUlkZW50aWZpZXIo
KSwgV1RGTW92ZSh1c2VyQWdlbnQpLCBwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+bG9hZGVyU3RyYXRl
Z3koKS0+aXNPbkxpbmUoKSwgY29udGV4dERhdGEuY29udGVudFNlY3VyaXR5UG9saWN5LCBmYWxz
ZSwgY29udGV4dERhdGEuY3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSwgTW9ub3RvbmljVGltZTo6
bm93KCksIHsgfSwgY29udGV4dERhdGEud29ya2VyVHlwZSwgRmV0Y2hSZXF1ZXN0Q3JlZGVudGlh
bHM6Ok9taXQsIHNldHRpbmdzVmFsdWVzIH0sIGNvbnRleHREYXRhLnNjcmlwdCwgbG9hZGVyUHJv
eHksIGRlYnVnZ2VyUHJveHksIER1bW15U2VydmljZVdvcmtlclRocmVhZFByb3h5OjpzaGFyZWQo
KSwgV29ya2VyVGhyZWFkU3RhcnRNb2RlOjpOb3JtYWwsIGNvbnRleHREYXRhLnJlZ2lzdHJhdGlv
bi5rZXkudG9wT3JpZ2luKCkuc2VjdXJpdHlPcmlnaW4oKS5nZXQoKSwgaWRiQ29ubmVjdGlvblBy
b3h5LCBzb2NrZXRQcm92aWRlciwgSlNDOjpSdW50aW1lRmxhZ3M6OmNyZWF0ZUFsbEVuYWJsZWQo
KSkKKyAgICAsIG1fc2VydmljZVdvcmtlcklkZW50aWZpZXIoY29udGV4dERhdGEuc2VydmljZVdv
cmtlcklkZW50aWZpZXIpCisgICAgLCBtX2pvYkRhdGFJZGVudGlmaWVyKGNvbnRleHREYXRhLmpv
YkRhdGFJZGVudGlmaWVyKQorICAgICwgbV9jb250ZXh0RGF0YShjcm9zc1RocmVhZENvcHkoY29u
dGV4dERhdGEpKQorICAgICwgbV93b3JrZXJEYXRhKGNyb3NzVGhyZWFkQ29weSh3b3JrZXJEYXRh
KSkKICAgICAsIG1fd29ya2VyT2JqZWN0UHJveHkoRHVtbXlTZXJ2aWNlV29ya2VyVGhyZWFkUHJv
eHk6OnNoYXJlZCgpKQogICAgICwgbV9oZWFydEJlYXRUaW1lb3V0KFNXQ29udGV4dE1hbmFnZXI6
OnNpbmdsZXRvbigpLmNvbm5lY3Rpb24oKS0+c2hvdWxkVXNlU2hvcnRUaW1lb3V0KCkgPyBoZWFy
dEJlYXRUaW1lb3V0Rm9yVGVzdCA6IGhlYXJ0QmVhdFRpbWVvdXQpCiAgICAgLCBtX2hlYXJ0QmVh
dFRpbWVyIHsgKnRoaXMsICZTZXJ2aWNlV29ya2VyVGhyZWFkOjpoZWFydEJlYXRUaW1lckZpcmVk
IH0KQEAgLTkwLDggKzkxLDggQEAgU2VydmljZVdvcmtlclRocmVhZDo6flNlcnZpY2VXb3JrZXJU
aHJlYWQoKSA9IGRlZmF1bHQ7CiAKIFJlZjxXb3JrZXJHbG9iYWxTY29wZT4gU2VydmljZVdvcmtl
clRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2NvcGUoY29uc3QgV29ya2VyUGFyYW1ldGVycyYg
cGFyYW1zLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBSZWY8U2VjdXJpdHlPcmlnaW4+
JiYgdG9wT3JpZ2luKQogewotICAgIFJFTEVBU0VfQVNTRVJUKG1fZGF0YSk7Ci0gICAgcmV0dXJu
IFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKCpzdGQ6OmV4Y2hhbmdlKG1fZGF0YSwg
c3RkOjpudWxsb3B0KSwgcGFyYW1zLCBXVEZNb3ZlKG9yaWdpbiksICp0aGlzLCBXVEZNb3ZlKHRv
cE9yaWdpbiksIGlkYkNvbm5lY3Rpb25Qcm94eSgpLCBzb2NrZXRQcm92aWRlcigpKTsKKyAgICBS
RUxFQVNFX0FTU0VSVChtX2NvbnRleHREYXRhKTsKKyAgICByZXR1cm4gU2VydmljZVdvcmtlckds
b2JhbFNjb3BlOjpjcmVhdGUoKnN0ZDo6ZXhjaGFuZ2UobV9jb250ZXh0RGF0YSwgc3RkOjpudWxs
b3B0KSwgKnN0ZDo6ZXhjaGFuZ2UobV93b3JrZXJEYXRhLCBzdGQ6Om51bGxvcHQpLCBwYXJhbXMs
IFdURk1vdmUob3JpZ2luKSwgKnRoaXMsIFdURk1vdmUodG9wT3JpZ2luKSwgaWRiQ29ubmVjdGlv
blByb3h5KCksIHNvY2tldFByb3ZpZGVyKCkpOwogfQogCiB2b2lkIFNlcnZpY2VXb3JrZXJUaHJl
YWQ6OnJ1bkV2ZW50TG9vcCgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmggYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmgKaW5kZXggZmMyYjE3YTU3
ZTk2M2M0NzEzMzBjYTI2ZWE1YjYyY2M3MjRiOTQ1Yi4uZjgxMjkwOWRmOTU0MGZhNzAxY2UyYmM4
NWQ4NDA2MDU3NWRjODIxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQuaApAQCAtNzksNyArNzks
NyBAQCBwcm90ZWN0ZWQ6CiAgICAgdm9pZCBydW5FdmVudExvb3AoKSBvdmVycmlkZTsKIAogcHJp
dmF0ZToKLSAgICBXRUJDT1JFX0VYUE9SVCBTZXJ2aWNlV29ya2VyVGhyZWFkKFNlcnZpY2VXb3Jr
ZXJDb250ZXh0RGF0YSYmLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGNvbnN0IFNldHRpbmdzOjpWYWx1
ZXMmLCBXb3JrZXJMb2FkZXJQcm94eSYsIFdvcmtlckRlYnVnZ2VyUHJveHkmLCBJREJDbGllbnQ6
OklEQkNvbm5lY3Rpb25Qcm94eSosIFNvY2tldFByb3ZpZGVyKik7CisgICAgV0VCQ09SRV9FWFBP
UlQgU2VydmljZVdvcmtlclRocmVhZChTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgU2Vydmlj
ZVdvcmtlckRhdGEmJiwgU3RyaW5nJiYgdXNlckFnZW50LCBjb25zdCBTZXR0aW5nczo6VmFsdWVz
JiwgV29ya2VyTG9hZGVyUHJveHkmLCBXb3JrZXJEZWJ1Z2dlclByb3h5JiwgSURCQ2xpZW50OjpJ
REJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciopOwogCiAgICAgYm9vbCBpc1NlcnZp
Y2VXb3JrZXJUaHJlYWQoKSBjb25zdCBmaW5hbCB7IHJldHVybiB0cnVlOyB9CiAgICAgdm9pZCBm
aW5pc2hlZEV2YWx1YXRpbmdTY3JpcHQoKSBmaW5hbDsKQEAgLTk1LDcgKzk1LDggQEAgcHJpdmF0
ZToKIAogICAgIFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIG1fc2VydmljZVdvcmtlcklkZW50aWZp
ZXI7CiAgICAgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VySm9iRGF0YUlkZW50aWZpZXI+IG1f
am9iRGF0YUlkZW50aWZpZXI7Ci0gICAgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyQ29udGV4
dERhdGE+IG1fZGF0YTsgLy8gQmVjb21lcyBzdGQ6Om51bGxvcHQgYWZ0ZXIgdGhlIFNlcnZpY2VX
b3JrZXJHbG9iYWxTY29wZSBoYXMgYmVlbiBjcmVhdGVkLgorICAgIHN0ZDo6b3B0aW9uYWw8U2Vy
dmljZVdvcmtlckNvbnRleHREYXRhPiBtX2NvbnRleHREYXRhOyAvLyBCZWNvbWVzIHN0ZDo6bnVs
bG9wdCBhZnRlciB0aGUgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIGhhcyBiZWVuIGNyZWF0ZWQu
CisgICAgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyRGF0YT4gbV93b3JrZXJEYXRhOyAvLyBC
ZWNvbWVzIHN0ZDo6bnVsbG9wdCBhZnRlciB0aGUgU2VydmljZVdvcmtlckdsb2JhbFNjb3BlIGhh
cyBiZWVuIGNyZWF0ZWQuCiAgICAgV29ya2VyT2JqZWN0UHJveHkmIG1fd29ya2VyT2JqZWN0UHJv
eHk7CiAgICAgYm9vbCBtX2RvZXNIYW5kbGVGZXRjaCB7IGZhbHNlIH07CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJl
YWRQcm94eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2
aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwCmluZGV4IDc2MjFiMmUwMWFjZTMzN2Y1NTkwZmIwNDJj
ZDUyNmE4NjY5MGQxYzQuLjg4ZWJhYWQ5YjAzOWI2OGViM2ZhZjM4NTk0MTY4NGEyMmY3YjYxNWEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZp
Y2VXb3JrZXJUaHJlYWRQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcApAQCAtOTMsMTMgKzkzLDEz
IEBAIHN0YXRpYyBIYXNoU2V0PFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eSo+JiBhbGxTZXJ2aWNl
V29ya2VyVGhyZWFkUHJveGllcygpCiAgICAgcmV0dXJuIHNldDsKIH0KIAotU2VydmljZVdvcmtl
clRocmVhZFByb3h5OjpTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkoUGFnZUNvbmZpZ3VyYXRpb24m
JiBwYWdlQ29uZmlndXJhdGlvbiwgU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGF0YSwgU3Ry
aW5nJiYgdXNlckFnZW50LCBDYWNoZVN0b3JhZ2VQcm92aWRlciYgY2FjaGVTdG9yYWdlUHJvdmlk
ZXIsIFN0b3JhZ2VCbG9ja2luZ1BvbGljeSBzdG9yYWdlQmxvY2tpbmdQb2xpY3kpCi0gICAgOiBt
X3BhZ2UoY3JlYXRlUGFnZUZvclNlcnZpY2VXb3JrZXIoV1RGTW92ZShwYWdlQ29uZmlndXJhdGlv
biksIGRhdGEsIHN0b3JhZ2VCbG9ja2luZ1BvbGljeSkpCitTZXJ2aWNlV29ya2VyVGhyZWFkUHJv
eHk6OlNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eShQYWdlQ29uZmlndXJhdGlvbiYmIHBhZ2VDb25m
aWd1cmF0aW9uLCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiBjb250ZXh0RGF0YSwgU2Vydmlj
ZVdvcmtlckRhdGEmJiB3b3JrZXJEYXRhLCBTdHJpbmcmJiB1c2VyQWdlbnQsIENhY2hlU3RvcmFn
ZVByb3ZpZGVyJiBjYWNoZVN0b3JhZ2VQcm92aWRlciwgU3RvcmFnZUJsb2NraW5nUG9saWN5IHN0
b3JhZ2VCbG9ja2luZ1BvbGljeSkKKyAgICA6IG1fcGFnZShjcmVhdGVQYWdlRm9yU2VydmljZVdv
cmtlcihXVEZNb3ZlKHBhZ2VDb25maWd1cmF0aW9uKSwgY29udGV4dERhdGEsIHN0b3JhZ2VCbG9j
a2luZ1BvbGljeSkpCiAgICAgLCBtX2RvY3VtZW50KCptX3BhZ2UtPm1haW5GcmFtZSgpLmRvY3Vt
ZW50KCkpCiAjaWYgRU5BQkxFKFJFTU9URV9JTlNQRUNUT1IpCi0gICAgLCBtX3JlbW90ZURlYnVn
Z2FibGUobWFrZVVuaXF1ZTxTZXJ2aWNlV29ya2VyRGVidWdnYWJsZT4oKnRoaXMsIGRhdGEpKQor
ICAgICwgbV9yZW1vdGVEZWJ1Z2dhYmxlKG1ha2VVbmlxdWU8U2VydmljZVdvcmtlckRlYnVnZ2Fi
bGU+KCp0aGlzLCBjb250ZXh0RGF0YSkpCiAjZW5kaWYKLSAgICAsIG1fc2VydmljZVdvcmtlclRo
cmVhZChTZXJ2aWNlV29ya2VyVGhyZWFkOjpjcmVhdGUoV1RGTW92ZShkYXRhKSwgV1RGTW92ZSh1
c2VyQWdlbnQpLCBtX2RvY3VtZW50LT5zZXR0aW5nc1ZhbHVlcygpLCAqdGhpcywgKnRoaXMsIGlk
YkNvbm5lY3Rpb25Qcm94eShtX2RvY3VtZW50KSwgbV9kb2N1bWVudC0+c29ja2V0UHJvdmlkZXIo
KSkpCisgICAgLCBtX3NlcnZpY2VXb3JrZXJUaHJlYWQoU2VydmljZVdvcmtlclRocmVhZDo6Y3Jl
YXRlKFdURk1vdmUoY29udGV4dERhdGEpLCBXVEZNb3ZlKHdvcmtlckRhdGEpLCBXVEZNb3ZlKHVz
ZXJBZ2VudCksIG1fZG9jdW1lbnQtPnNldHRpbmdzVmFsdWVzKCksICp0aGlzLCAqdGhpcywgaWRi
Q29ubmVjdGlvblByb3h5KG1fZG9jdW1lbnQpLCBtX2RvY3VtZW50LT5zb2NrZXRQcm92aWRlcigp
KSkKICAgICAsIG1fY2FjaGVTdG9yYWdlUHJvdmlkZXIoY2FjaGVTdG9yYWdlUHJvdmlkZXIpCiAg
ICAgLCBtX2luc3BlY3RvclByb3h5KCp0aGlzKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmggYi9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFk
UHJveHkuaAppbmRleCAyYzVhMjg5MjhmYWUwMGE0OGZlOGRhYjk2OGE4OTk3ZmMzZGFlY2M3Li5l
MjhkOWU0NzQ2NTQwMzRmYzVjN2FiOWRmMzNmMjYzNmU1OWI5MjAyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJv
eHkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNl
V29ya2VyVGhyZWFkUHJveHkuaApAQCAtODUsNyArODUsNyBAQCBwdWJsaWM6CiAgICAgV0VCQ09S
RV9FWFBPUlQgYm9vbCBsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCgpOwogCiBwcml2YXRl
OgotICAgIFdFQkNPUkVfRVhQT1JUIFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eShQYWdlQ29uZmln
dXJhdGlvbiYmLCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgU3RyaW5nJiYgdXNlckFnZW50
LCBDYWNoZVN0b3JhZ2VQcm92aWRlciYsIFN0b3JhZ2VCbG9ja2luZ1BvbGljeSk7CisgICAgV0VC
Q09SRV9FWFBPUlQgU2VydmljZVdvcmtlclRocmVhZFByb3h5KFBhZ2VDb25maWd1cmF0aW9uJiYs
IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBTZXJ2aWNlV29ya2VyRGF0YSYmLCBTdHJpbmcm
JiB1c2VyQWdlbnQsIENhY2hlU3RvcmFnZVByb3ZpZGVyJiwgU3RvcmFnZUJsb2NraW5nUG9saWN5
KTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIG5ldHdvcmtTdGF0ZUNoYW5nZWQo
Ym9vbCBpc09uTGluZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5jcHAKaW5kZXggNTY5ZTJmOWY0OGZjYTFhNjI0YWM0YWU2OGI3OWEx
ZWViZDg3MDk0YS4uY2NiOTViZDI1YmI0M2E5Y2Y0YThmMjg0MjJmM2QyMjBjMmY5NjYyNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5j
cHAKQEAgLTcyNywxMCArNzI3LDEwIEBAIHZvaWQgU1dTZXJ2ZXI6Omluc3RhbGxDb250ZXh0RGF0
YShjb25zdCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmIGRhdGEpCiAgICAgcmVnaXN0cmF0aW9u
LT5zZXRQcmVJbnN0YWxsYXRpb25Xb3JrZXIod29ya2VyLnB0cigpKTsKICAgICB3b3JrZXItPnNl
dFN0YXRlKFNXU2VydmVyV29ya2VyOjpTdGF0ZTo6UnVubmluZyk7CiAgICAgYXV0byB1c2VyQWdl
bnQgPSB3b3JrZXItPnVzZXJBZ2VudCgpOwotICAgIGF1dG8gcmVzdWx0ID0gbV9ydW5uaW5nT3JU
ZXJtaW5hdGluZ1dvcmtlcnMuYWRkKGRhdGEuc2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdURk1v
dmUod29ya2VyKSk7CisgICAgYXV0byByZXN1bHQgPSBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29y
a2Vycy5hZGQoZGF0YS5zZXJ2aWNlV29ya2VySWRlbnRpZmllciwgd29ya2VyLmNvcHlSZWYoKSk7
CiAgICAgQVNTRVJUX1VOVVNFRChyZXN1bHQsIHJlc3VsdC5pc05ld0VudHJ5KTsKIAotICAgIGNv
bm5lY3Rpb24tPmluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dChkYXRhLCB1c2VyQWdlbnQpOwor
ICAgIGNvbm5lY3Rpb24tPmluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dChkYXRhLCB3b3JrZXIt
PmRhdGEoKSwgdXNlckFnZW50KTsKIH0KIAogdm9pZCBTV1NlcnZlcjo6cnVuU2VydmljZVdvcmtl
cklmTmVjZXNzYXJ5KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIFJ1blNlcnZp
Y2VXb3JrZXJDYWxsYmFjayYmIGNhbGxiYWNrKQpAQCAtNzk4LDcgKzc5OCw3IEBAIGJvb2wgU1dT
ZXJ2ZXI6OnJ1blNlcnZpY2VXb3JrZXIoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmll
cikKICAgICBhdXRvKiBjb250ZXh0Q29ubmVjdGlvbiA9IHdvcmtlci0+Y29udGV4dENvbm5lY3Rp
b24oKTsKICAgICBBU1NFUlQoY29udGV4dENvbm5lY3Rpb24pOwogCi0gICAgY29udGV4dENvbm5l
Y3Rpb24tPmluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dCh3b3JrZXItPmNvbnRleHREYXRhKCks
IHdvcmtlci0+dXNlckFnZW50KCkpOworICAgIGNvbnRleHRDb25uZWN0aW9uLT5pbnN0YWxsU2Vy
dmljZVdvcmtlckNvbnRleHQod29ya2VyLT5jb250ZXh0RGF0YSgpLCB3b3JrZXItPmRhdGEoKSwg
d29ya2VyLT51c2VyQWdlbnQoKSk7CiAKICAgICByZXR1cm4gdHJ1ZTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJSZWdpc3RyYXRp
b24uY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlclJl
Z2lzdHJhdGlvbi5jcHAKaW5kZXggZDhjYTY1ZjhlZWY2ZGM0Njg5ZWQ2YzhlMDVlYTg2MzRhYTg5
NTkxZC4uODFiMGU4NjhlNTE1NjE4NmEzNDBmMzBiNzkxMjU2M2MyNDA2NTdiMCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlclJlZ2lzdHJh
dGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1Nl
cnZlclJlZ2lzdHJhdGlvbi5jcHAKQEAgLTIzMyw3ICsyMzMsNyBAQCBib29sIFNXU2VydmVyUmVn
aXN0cmF0aW9uOjp0cnlDbGVhcigpCiB2b2lkIFNXU2VydmVyUmVnaXN0cmF0aW9uOjpjbGVhcigp
CiB7CiAgICAgaWYgKG1fcHJlSW5zdGFsbGF0aW9uV29ya2VyKSB7Ci0gICAgICAgIEFTU0VSVCht
X3ByZUluc3RhbGxhdGlvbldvcmtlci0+c3RhdGUoKSA9PSBTZXJ2aWNlV29ya2VyU3RhdGU6OlJl
ZHVuZGFudCk7CisgICAgICAgIEFTU0VSVChtX3ByZUluc3RhbGxhdGlvbldvcmtlci0+c3RhdGUo
KSA9PSBTZXJ2aWNlV29ya2VyU3RhdGU6OlBhcnNlZCk7CiAgICAgICAgIG1fcHJlSW5zdGFsbGF0
aW9uV29ya2VyLT50ZXJtaW5hdGUoKTsKICAgICAgICAgbV9wcmVJbnN0YWxsYXRpb25Xb3JrZXIg
PSBudWxscHRyOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oCmlu
ZGV4IDFjN2YzOWRiN2M2ZGVjZWUzNGVlM2UwNTQ4NjcxOWVmYmJiNzg4NjkuLmQ3NGE2OTAwODE5
YTYzM2M0NjBhODc1NjQxODBkZGM0MmFkNDk3ZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlclRvQ29udGV4
dENvbm5lY3Rpb24uaApAQCAtNTEsNyArNTEsNyBAQCBwdWJsaWM6CiAgICAgU1dTZXJ2ZXJUb0Nv
bnRleHRDb25uZWN0aW9uSWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9p
ZGVudGlmaWVyOyB9CiAKICAgICAvLyBNZXNzYWdlcyB0byB0aGUgU1cgaG9zdCBwcm9jZXNzCi0g
ICAgdmlydHVhbCB2b2lkIGluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dChjb25zdCBTZXJ2aWNl
V29ya2VyQ29udGV4dERhdGEmLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCkgPSAwOworICAgIHZp
cnR1YWwgdm9pZCBpbnN0YWxsU2VydmljZVdvcmtlckNvbnRleHQoY29uc3QgU2VydmljZVdvcmtl
ckNvbnRleHREYXRhJiwgY29uc3QgU2VydmljZVdvcmtlckRhdGEmLCBjb25zdCBTdHJpbmcmIHVz
ZXJBZ2VudCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVBcHBJbml0aWF0ZWRWYWx1ZShT
ZXJ2aWNlV29ya2VySWRlbnRpZmllciwgTGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgZmlyZUluc3RhbGxFdmVudChTZXJ2aWNlV29ya2VySWRlbnRp
ZmllcikgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBmaXJlQWN0aXZhdGVFdmVudChTZXJ2aWNlV29y
a2VySWRlbnRpZmllcikgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAppbmRleCBlOThmNzNiMDY1MzgwZDAz
MTlhZGZkMThkZjc4ZjZhMmYwMjU4YjcxLi4zNzZmYjZkMjI2MjA4NzQzYTAxNjVjNGE4ZWRhZjNm
MTFmMWUwM2JmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyV29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZp
Y2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcApAQCAtNTQsNyArNTQsNyBAQCBTV1NlcnZlcldv
cmtlcjo6U1dTZXJ2ZXJXb3JrZXIoU1dTZXJ2ZXImIHNlcnZlciwgU1dTZXJ2ZXJSZWdpc3RyYXRp
b24mIHJlZ2lzdHJhdAogICAgIDogbV9zZXJ2ZXIobWFrZVdlYWtQdHIoc2VydmVyKSkKICAgICAs
IG1fcmVnaXN0cmF0aW9uS2V5KHJlZ2lzdHJhdGlvbi5rZXkoKSkKICAgICAsIG1fcmVnaXN0cmF0
aW9uKG1ha2VXZWFrUHRyKHJlZ2lzdHJhdGlvbikpCi0gICAgLCBtX2RhdGEgeyBpZGVudGlmaWVy
LCBzY3JpcHRVUkwsIFNlcnZpY2VXb3JrZXJTdGF0ZTo6UmVkdW5kYW50LCB0eXBlLCByZWdpc3Ry
YXRpb24uaWRlbnRpZmllcigpIH0KKyAgICAsIG1fZGF0YSB7IGlkZW50aWZpZXIsIHNjcmlwdFVS
TCwgU2VydmljZVdvcmtlclN0YXRlOjpQYXJzZWQsIHR5cGUsIHJlZ2lzdHJhdGlvbi5pZGVudGlm
aWVyKCkgfQogICAgICwgbV9zY3JpcHQoc2NyaXB0KQogICAgICwgbV9jZXJ0aWZpY2F0ZUluZm8o
Y2VydGlmaWNhdGVJbmZvKQogICAgICwgbV9jb250ZW50U2VjdXJpdHlQb2xpY3koY29udGVudFNl
Y3VyaXR5UG9saWN5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9T
ZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0NvbnRleHRD
b25uZWN0aW9uLmNwcAppbmRleCBlOTAyZWMwNzU4MDUwZTk5ZjYwMTdkYmY3MTBkYTgzNTU5YWRj
MzZmLi4wNjAyOGU5MTQzOWE5ZDEzYzAyNjRlYzNiOWYyZWI1YTFmMDZmODVkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJU
b0NvbnRleHRDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmNwcApAQCAtODcs
OSArODcsOSBAQCB2b2lkIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbjo6cG9zdE1lc3Nh
Z2VUb1NlcnZpY2VXb3JrZXJDbGllbnQoY29uc3QgU2VydgogICAgICAgICBjb25uZWN0aW9uLT5w
b3N0TWVzc2FnZVRvU2VydmljZVdvcmtlckNsaWVudChkZXN0aW5hdGlvbklkZW50aWZpZXIuY29u
dGV4dElkZW50aWZpZXIsIG1lc3NhZ2UsIHNvdXJjZUlkZW50aWZpZXIsIHNvdXJjZU9yaWdpbik7
CiB9CiAKLXZvaWQgV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uOjppbnN0YWxsU2Vydmlj
ZVdvcmtlckNvbnRleHQoY29uc3QgU2VydmljZVdvcmtlckNvbnRleHREYXRhJiBkYXRhLCBjb25z
dCBTdHJpbmcmIHVzZXJBZ2VudCkKK3ZvaWQgV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9u
OjppbnN0YWxsU2VydmljZVdvcmtlckNvbnRleHQoY29uc3QgU2VydmljZVdvcmtlckNvbnRleHRE
YXRhJiBjb250ZXh0RGF0YSwgY29uc3QgU2VydmljZVdvcmtlckRhdGEmIHdvcmtlckRhdGEsIGNv
bnN0IFN0cmluZyYgdXNlckFnZW50KQogewotICAgIHNlbmQoTWVzc2FnZXM6OldlYlNXQ29udGV4
dE1hbmFnZXJDb25uZWN0aW9uOjpJbnN0YWxsU2VydmljZVdvcmtlciB7IGRhdGEsIHVzZXJBZ2Vu
dCB9KTsKKyAgICBzZW5kKE1lc3NhZ2VzOjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6
SW5zdGFsbFNlcnZpY2VXb3JrZXIgeyBjb250ZXh0RGF0YSwgd29ya2VyRGF0YSwgdXNlckFnZW50
IH0pOwogfQogCiB2b2lkIFdlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbjo6dXBkYXRlQXBw
SW5pdGlhdGVkVmFsdWUoU2VydmljZVdvcmtlcklkZW50aWZpZXIgc2VydmljZVdvcmtlcklkZW50
aWZpZXIsIFdlYkNvcmU6Okxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkIGxhc3ROYXZpZ2F0
aW9uV2FzQXBwSW5pdGlhdGVkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250
ZXh0Q29ubmVjdGlvbi5oCmluZGV4IGFlM2ExYTU2ODZmYWE1YjdlZmY0NGRmODA1MzdlYWY3N2Yx
OGZlNzMuLjk0MzNiZjUzYTM2ZTVjODgyNjZlNjU4NGU1Yjk2ZjkxYWNkODAxODQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZl
clRvQ29udGV4dENvbm5lY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmgKQEAgLTg1LDcg
Kzg1LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHBvc3RNZXNzYWdlVG9TZXJ2aWNlV29ya2VyQ2xp
ZW50KGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyJiBkZXN0aW5h
dGlvbklkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6Ok1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzJiwg
V2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIgc291cmNlSWRlbnRpZmllciwgY29uc3Qg
U3RyaW5nJiBzb3VyY2VPcmlnaW4pOwogCiAgICAgLy8gTWVzc2FnZXMgdG8gdGhlIFNXIGhvc3Qg
V2ViUHJvY2VzcwotICAgIHZvaWQgaW5zdGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0KGNvbnN0IFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50
KSBmaW5hbDsKKyAgICB2b2lkIGluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dChjb25zdCBXZWJD
b3JlOjpTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmLCBjb25zdCBXZWJDb3JlOjpTZXJ2aWNlV29y
a2VyRGF0YSYsIGNvbnN0IFN0cmluZyYgdXNlckFnZW50KSBmaW5hbDsKICAgICB2b2lkIHVwZGF0
ZUFwcEluaXRpYXRlZFZhbHVlKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBXZWJD
b3JlOjpMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkgZmluYWw7CiAgICAgdm9pZCBmaXJl
SW5zdGFsbEV2ZW50KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKSBmaW5hbDsKICAg
ICB2b2lkIGZpcmVBY3RpdmF0ZUV2ZW50KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVy
KSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dl
YlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmNwcAppbmRleCBiNTQ0MDM5
YjQ3OWQ4MmJkOGJmMTE0OTY3N2RiNTkwZWY0NjhmZmNjLi5lY2M5NTM5ODFiNmM2NDVkYTFhZTdk
OGNiZTYyMmQ3MDYwNmU3ZjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
U3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uY3Bw
CkBAIC0xNDEsNyArMTQxLDcgQEAgdm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6
dXBkYXRlQXBwSW5pdGlhdGVkVmFsdWUoU2VydmljZVdvcmtlcklkZW50aWYKICAgICAgICAgc2Vy
dmljZVdvcmtlclRocmVhZFByb3h5LT5zZXRMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZChs
YXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCA9PSBXZWJDb3JlOjpMYXN0TmF2aWdhdGlvbldh
c0FwcEluaXRpYXRlZDo6WWVzKTsKIH0KIAotdm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVj
dGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXIoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgZGF0
YSwgU3RyaW5nJiYgdXNlckFnZW50KQordm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlv
bjo6aW5zdGFsbFNlcnZpY2VXb3JrZXIoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgY29udGV4
dERhdGEsIFNlcnZpY2VXb3JrZXJEYXRhJiYgd29ya2VyRGF0YSwgU3RyaW5nJiYgdXNlckFnZW50
KQogewogICAgIGF1dG8gcGFnZUNvbmZpZ3VyYXRpb24gPSBwYWdlQ29uZmlndXJhdGlvbldpdGhF
bXB0eUNsaWVudHMoV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuc2Vzc2lvbklEKCkpOwogCkBAIC0x
NTksMTEgKzE1OSwxMSBAQCB2b2lkIFdlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjppbnN0
YWxsU2VydmljZVdvcmtlcihTZXJ2aWNlV29ya2VyQ29udGV4dERhdAogICAgIHBhZ2VDb25maWd1
cmF0aW9uLmxvYWRlckNsaWVudEZvck1haW5GcmFtZSA9IG1ha2VVbmlxdWVSZWY8U2VydmljZVdv
cmtlckZyYW1lTG9hZGVyQ2xpZW50PihtX3dlYlBhZ2VQcm94eUlELCBtX3BhZ2VJRCwgRnJhbWVJ
ZGVudGlmaWVyOjpnZW5lcmF0ZSgpLCBlZmZlY3RpdmVVc2VyQWdlbnQpOwogCiAjaWYgIVJFTEVB
U0VfTE9HX0RJU0FCTEVECi0gICAgYXV0byBzZXJ2aWNlV29ya2VySWRlbnRpZmllciA9IGRhdGEu
c2VydmljZVdvcmtlcklkZW50aWZpZXI7CisgICAgYXV0byBzZXJ2aWNlV29ya2VySWRlbnRpZmll
ciA9IGNvbnRleHREYXRhLnNlcnZpY2VXb3JrZXJJZGVudGlmaWVyOwogI2VuZGlmCiAgICAgCi0g
ICAgYXV0byBsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCA9IGRhdGEubGFzdE5hdmlnYXRp
b25XYXNBcHBJbml0aWF0ZWQ7Ci0gICAgYXV0byBzZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkgPSBT
ZXJ2aWNlV29ya2VyVGhyZWFkUHJveHk6OmNyZWF0ZShXVEZNb3ZlKHBhZ2VDb25maWd1cmF0aW9u
KSwgV1RGTW92ZShkYXRhKSwgV1RGTW92ZShlZmZlY3RpdmVVc2VyQWdlbnQpLCBXZWJQcm9jZXNz
OjpzaW5nbGV0b24oKS5jYWNoZVN0b3JhZ2VQcm92aWRlcigpLCBtX3N0b3JhZ2VCbG9ja2luZ1Bv
bGljeSk7CisgICAgYXV0byBsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCA9IGNvbnRleHRE
YXRhLmxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkOworICAgIGF1dG8gc2VydmljZVdvcmtl
clRocmVhZFByb3h5ID0gU2VydmljZVdvcmtlclRocmVhZFByb3h5OjpjcmVhdGUoV1RGTW92ZShw
YWdlQ29uZmlndXJhdGlvbiksIFdURk1vdmUoY29udGV4dERhdGEpLCBXVEZNb3ZlKHdvcmtlckRh
dGEpLCBXVEZNb3ZlKGVmZmVjdGl2ZVVzZXJBZ2VudCksIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigp
LmNhY2hlU3RvcmFnZVByb3ZpZGVyKCksIG1fc3RvcmFnZUJsb2NraW5nUG9saWN5KTsKIAogICAg
IGlmIChsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkKICAgICAgICAgc2VydmljZVdvcmtl
clRocmVhZFByb3h5LT5zZXRMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZChsYXN0TmF2aWdh
dGlvbldhc0FwcEluaXRpYXRlZCA9PSBXZWJDb3JlOjpMYXN0TmF2aWdhdGlvbldhc0FwcEluaXRp
YXRlZDo6WWVzKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdl
L1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5oCmluZGV4IDhiY2ZkMmM0
YmRjNmJiOWRlOGJkYmQzZDM2OTBlY2FlYjllMDc3Y2YuLjA2YjMyNWM1MGU3NDQyNDFkNDc4NTFm
MTA3OTVkMGI2ZWQwNGUzNzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9T
dG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uaApAQCAt
ODYsNyArODYsNyBAQCBwcml2YXRlOgogICAgIC8vIElQQyBtZXNzYWdlcy4KICAgICB2b2lkIHNl
cnZpY2VXb3JrZXJTdGFydGVkKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2VydmljZVdvcmtlckpv
YkRhdGFJZGVudGlmaWVyPiwgV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIGJvb2wg
ZG9lc0hhbmRsZUZldGNoKSBmaW5hbDsKICAgICB2b2lkIHNlcnZpY2VXb3JrZXJGYWlsZWRUb1N0
YXJ0KHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2VydmljZVdvcmtlckpvYkRhdGFJZGVudGlmaWVy
PiwgV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgZXhjZXB0
aW9uTWVzc2FnZSkgZmluYWw7Ci0gICAgdm9pZCBpbnN0YWxsU2VydmljZVdvcmtlcihXZWJDb3Jl
OjpTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgU3RyaW5nJiYgdXNlckFnZW50KTsKKyAgICB2
b2lkIGluc3RhbGxTZXJ2aWNlV29ya2VyKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDb250ZXh0RGF0
YSYmLCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyRGF0YSYmLCBTdHJpbmcmJiB1c2VyQWdlbnQpOwog
ICAgIHZvaWQgdXBkYXRlQXBwSW5pdGlhdGVkVmFsdWUoV2ViQ29yZTo6U2VydmljZVdvcmtlcklk
ZW50aWZpZXIsIFdlYkNvcmU6Okxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkKTsKICAgICB2
b2lkIHN0YXJ0RmV0Y2goV2ViQ29yZTo6U1dTZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgV2Vi
Q29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNvcmU6OkZldGNoSWRlbnRpZmllciwg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiYsIFdlYkNvcmU6OkZldGNoT3B0aW9ucyYmLCBJUEM6
OkZvcm1EYXRhUmVmZXJlbmNlJiYsIFN0cmluZyYmIHJlZmVycmVyKTsKICAgICB2b2lkIGNhbmNl
bEZldGNoKFdlYkNvcmU6OlNXU2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlNl
cnZpY2VXb3JrZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpGZXRjaElkZW50aWZpZXIpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdl
ckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFn
ZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCAzZTIwZGUz
NTRiYzQzZDg0YWI0OTA0MjM0NWM5N2ViOTJlZWYzZjY0Li4yYWY0ODlkNTE2YTRlYzY5NmJhZTBm
YTI1Mjg3OTI3YzRkY2Y0ODI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
U3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVj
dGlvbi5tZXNzYWdlcy5pbgpAQCAtMjMsNyArMjMsNyBAQAogI2lmIEVOQUJMRShTRVJWSUNFX1dP
UktFUikKIAogbWVzc2FnZXMgLT4gV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24gTm90UmVm
Q291bnRlZCB7Ci0gICAgSW5zdGFsbFNlcnZpY2VXb3JrZXIoc3RydWN0IFdlYkNvcmU6OlNlcnZp
Y2VXb3JrZXJDb250ZXh0RGF0YSBjb250ZXh0RGF0YSwgU3RyaW5nIHVzZXJBZ2VudCkKKyAgICBJ
bnN0YWxsU2VydmljZVdvcmtlcihzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckNvbnRleHRE
YXRhIGNvbnRleHREYXRhLCBzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckRhdGEgd29ya2Vy
RGF0YSwgU3RyaW5nIHVzZXJBZ2VudCkKICAgICBVcGRhdGVBcHBJbml0aWF0ZWRWYWx1ZShXZWJD
b3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgZW51
bTpib29sIFdlYkNvcmU6Okxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkIGxhc3ROYXZpZ2F0
aW9uV2FzQXBwSW5pdGlhdGVkKQogICAgIFN0YXJ0RmV0Y2goV2ViQ29yZTo6U1dTZXJ2ZXJDb25u
ZWN0aW9uSWRlbnRpZmllciBzZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6U2Vy
dmljZVdvcmtlcklkZW50aWZpZXIgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNvcmU6OkZl
dGNoSWRlbnRpZmllciBmZXRjaElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCBy
ZXF1ZXN0LCBzdHJ1Y3QgV2ViQ29yZTo6RmV0Y2hPcHRpb25zIG9wdGlvbnMsIElQQzo6Rm9ybURh
dGFSZWZlcmVuY2UgcmVxdWVzdEJvZHksIFN0cmluZyByZWZlcnJlcikKICAgICBDYW5jZWxGZXRj
aChXZWJDb3JlOjpTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyIHNlcnZlckNvbm5lY3Rpb25J
ZGVudGlmaWVyLCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciBzZXJ2aWNlV29ya2Vy
SWRlbnRpZmllciwgV2ViQ29yZTo6RmV0Y2hJZGVudGlmaWVyIGZldGNoSWRlbnRpZmllcikKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDRkY2U4OWI4ZGMzMTU5NGRlMDA3NjIxZWQ4
ZDZkYjYzYjU5MGZkOTguLmZlOGE4ODkxOTljYmFhYjMzNTA1MzZkZWRjOThkMzU3OTAwN2UwYTgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIxLTA4
LTMxICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBv
cnQgZm9yIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5zZXJ2aWNlV29ya2VyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjk3MjAKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0
cyB0aGF0IGFyZSBub3cgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMv
c2VydmljZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3Jr
ZXItZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA4LTMxICBNYXJjb3MgQ2FjZXJlcyAgPG1hcmNvc0Bt
YXJjb3NjLmNvbT4KIAogICAgICAgICBbUGF5bWVudCBSZXF1ZXN0XSBDYWxsaW5nIFBheW1lbnRS
ZXF1ZXN0J3Mgc2hvdygpIHNob3VsZCBjb25zdW1lIHVzZXIgYWN0aXZhdGlvbgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3Nz
LW9yaWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3Nz
LW9yaWdpbi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0
CmluZGV4IDJkY2M2MTdjNDk2MDg1NDI1OWRiNmE2MjJkZjU1YWFhZjlhYjMwYTIuLjdhZWUwODZk
ZmM2YWFlZWMzNWU2MmU0ZDgyMGQ0ZTMyOTI4ZDMyNTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVy
LXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9w
ZW5lci1wb2xpY3kvcG9wdXAtY29vcC1ieS1zdy5odHRwcy1leHBlY3RlZC50eHQKQEAgLTEsMTIg
KzEsMTEgQEAKK0NPTlNPTEUgTUVTU0FHRTogVW5oYW5kbGVkIFByb21pc2UgUmVqZWN0aW9uOiBU
eXBlRXJyb3I6IExvYWQgZmFpbGVkCiAKLUhhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdl
ID0gbnVsbAotCi1USU1FT1VUIG9wZW5lcjpiYXNpYywgb3BlbmVlOmJhc2ljLCBzdzpiYXNpYyBU
ZXN0IHRpbWVkIG91dAotTk9UUlVOIG9wZW5lcjpiYXNpYywgb3BlbmVlOmJhc2ljLCBzdzpjb2kK
LU5PVFJVTiBvcGVuZXI6YmFzaWMsIG9wZW5lZTpjb2ksIHN3OmJhc2ljCi1OT1RSVU4gb3BlbmVy
OmJhc2ljLCBvcGVuZWU6Y29pLCBzdzpjb2kKLU5PVFJVTiBvcGVuZXI6Y29pLCBvcGVuZWU6YmFz
aWMsIHN3OmJhc2ljCi1OT1RSVU4gb3BlbmVyOmNvaSwgb3BlbmVlOmJhc2ljLCBzdzpjb2kKLU5P
VFJVTiBvcGVuZXI6Y29pLCBvcGVuZWU6Y29pLCBzdzpiYXNpYwotTk9UUlVOIG9wZW5lcjpjb2ks
IG9wZW5lZTpjb2ksIHN3OmNvaQorUEFTUyBvcGVuZXI6YmFzaWMsIG9wZW5lZTpiYXNpYywgc3c6
YmFzaWMKK1BBU1Mgb3BlbmVyOmJhc2ljLCBvcGVuZWU6YmFzaWMsIHN3OmNvaQorUEFTUyBvcGVu
ZXI6YmFzaWMsIG9wZW5lZTpjb2ksIHN3OmJhc2ljCitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVl
OmNvaSwgc3c6Y29pCitQQVNTIG9wZW5lcjpjb2ksIG9wZW5lZTpiYXNpYywgc3c6YmFzaWMKK1BB
U1Mgb3BlbmVyOmNvaSwgb3BlbmVlOmJhc2ljLCBzdzpjb2kKK1BBU1Mgb3BlbmVyOmNvaSwgb3Bl
bmVlOmNvaSwgc3c6YmFzaWMKK1BBU1Mgb3BlbmVyOmNvaSwgb3BlbmVlOmNvaSwgc3c6Y29pCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2dsb2JhbC1zZXJ2aWNld29ya2VyLmh0dHBz
LmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2dsb2Jh
bC1zZXJ2aWNld29ya2VyLmh0dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dAppbmRl
eCA3ZTQyODQ3N2EzNzNhZGI5NTI1NDBhNDliM2Y0ZGJjZjljNTNjZGEyLi43ZDRiY2Q4NDNhNmYy
MjQ3YjM4NzgxMDlkZTMxYmQwZjE1ZjczNzgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9nbG9iYWwtc2VydmljZXdvcmtlci5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2
aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3b3JrZXIuaHR0cHMuYW55
LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIEZpcnN0
IHJ1biBhc3NlcnRfdHJ1ZTogc2VsZi5zZXJ2aWNlV29ya2VyIGV4aXN0cyBleHBlY3RlZCB0cnVl
IGdvdCBmYWxzZQotRkFJTCBDYW4gcG9zdCBtZXNzYWdlIHRvIHNlbGYgZHVyaW5nIHN0YXJ0dXAg
YXNzZXJ0X3RydWU6IHNlbGYuc2VydmljZVdvcmtlciBleGlzdHMgZXhwZWN0ZWQgdHJ1ZSBnb3Qg
ZmFsc2UKLUZBSUwgRHVyaW5nIGluc3RhbGwgYXNzZXJ0X3RydWU6IHNlbGYuc2VydmljZVdvcmtl
ciBleGlzdHMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgRHVyaW5nIGFjdGl2YXRlIGFz
c2VydF90cnVlOiBzZWxmLnNlcnZpY2VXb3JrZXIgZXhpc3RzIGV4cGVjdGVkIHRydWUgZ290IGZh
bHNlCitQQVNTIEZpcnN0IHJ1bgorUEFTUyBDYW4gcG9zdCBtZXNzYWdlIHRvIHNlbGYgZHVyaW5n
IHN0YXJ0dXAKK1BBU1MgRHVyaW5nIGluc3RhbGwKK1BBU1MgRHVyaW5nIGFjdGl2YXRlCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>437027</attachid>
            <date>2021-09-01 07:52:28 -0700</date>
            <delta_ts>2021-09-01 09:30:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229720-20210901075227.patch</filename>
            <type>text/plain</type>
            <size>49398</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxODMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDkwZDBlOWJmM2M3ZmM1
YmRhZDFmMWIxMmM2YTIyNjc0NDM1YmNlMi4uMTllYmFiZTI3MTFmOTNkYmNlMTRhMDEwODZhOWU5
MzQ5ZDBkYzliOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDIxLTA4LTMxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIFNl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZS5zZXJ2aWNlV29ya2VyCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjk3MjAKKworICAgICAgICBSZXZpZXdlZCBi
eSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBTZXJ2aWNlV29ya2Vy
R2xvYmFsU2NvcGUuc2VydmljZVdvcmtlcjoKKyAgICAgICAgLSBodHRwczovL3czYy5naXRodWIu
aW8vU2VydmljZVdvcmtlci8jZG9tLXNlcnZpY2V3b3JrZXJnbG9iYWxzY29wZS1zZXJ2aWNld29y
a2VyCisKKyAgICAgICAgQWxzbyBhZGQgc3VwcG9ydCBmb3IgdGhlICJwYXJzZWQiIGluaXRpYWwg
U2VydmljZVdvcmtlclN0YXRlOgorICAgICAgICAtIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2
aWNlV29ya2VyLyNlbnVtZGVmLXNlcnZpY2V3b3JrZXJzdGF0ZQorCisgICAgICAgIE5vIG5ldyB0
ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiB3b3JrZXJzL3Nl
cnZpY2UvU2VydmljZVdvcmtlci5pZGw6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NlcnZp
Y2VXb3JrZXJHbG9iYWxTY29wZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZXJ2aWNlV29ya2Vy
R2xvYmFsU2NvcGU6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpTZXJ2aWNlV29ya2VyR2xv
YmFsU2NvcGU6OlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSk6CisgICAgICAgICogd29ya2Vycy9z
ZXJ2aWNlL1NlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oOgorICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaWRsOgorICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9TZXJ2aWNlV29ya2VyVHlwZXMuaDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvY29u
dGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNlcnZpY2VX
b3JrZXJUaHJlYWQ6OlNlcnZpY2VXb3JrZXJUaHJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6U2Vy
dmljZVdvcmtlclRocmVhZDo6Y3JlYXRlV29ya2VyR2xvYmFsU2NvcGUpOgorICAgICAgICAqIHdv
cmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQuaDoKKyAgICAgICAgKiB3
b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U2VydmljZVdvcmtlclRocmVhZFByb3h5OjpTZXJ2aWNlV29ya2VyVGhy
ZWFkUHJveHkpOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3Jr
ZXJUaHJlYWRQcm94eS5oOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6Omluc3RhbGxDb250ZXh0RGF0YSk6
CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6cnVuU2VydmljZVdvcmtlcik6CisgICAgICAg
ICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlclJlZ2lzdHJhdGlvbi5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTV1NlcnZlclJlZ2lzdHJhdGlvbjo6Y2xlYXIpOgorICAgICAgICAqIHdv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmg6CisgICAg
ICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTV1NlcnZlcldvcmtlcjo6U1dTZXJ2ZXJXb3JrZXIpOgorCiAyMDIxLTA4LTMx
ICBLYXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgogCiAgICAgICAgIFVz
ZSBhZnRlciBtb3ZlIGluIFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA1ZDBi
MDVjYjlkZWM1ZDA5NGFhYmQ3YTgyYzhiMjUwY2E5YjYxMTk4Li42OTQwZmVlNmIyNjU4YmI1MDg5
NjgxOWRkYzg1YjM0MjM4ZDljODk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA4
LTMxICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIHN1cHBv
cnQgZm9yIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZS5zZXJ2aWNlV29ya2VyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjk3MjAKKworICAgICAgICBS
ZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBTZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUuc2VydmljZVdvcmtlcjoKKyAgICAgICAgLSBodHRwczovL3cz
Yy5naXRodWIuaW8vU2VydmljZVdvcmtlci8jZG9tLXNlcnZpY2V3b3JrZXJnbG9iYWxzY29wZS1z
ZXJ2aWNld29ya2VyCisKKyAgICAgICAgQWxzbyBhZGQgc3VwcG9ydCBmb3IgdGhlICJwYXJzZWQi
IGluaXRpYWwgU2VydmljZVdvcmtlclN0YXRlOgorICAgICAgICAtIGh0dHBzOi8vdzNjLmdpdGh1
Yi5pby9TZXJ2aWNlV29ya2VyLyNlbnVtZGVmLXNlcnZpY2V3b3JrZXJzdGF0ZQorCisgICAgICAg
ICogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5l
Y3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rp
b246Omluc3RhbGxTZXJ2aWNlV29ya2VyQ29udGV4dCk6CisgICAgICAgICogTmV0d29ya1Byb2Nl
c3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaDoKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24uY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdGFs
bFNlcnZpY2VXb3JrZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRl
eHRNYW5hZ2VyQ29ubmVjdGlvbi5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJT
V0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbjoKKwogMjAyMS0wOC0zMSAgS2F0
ZSBDaGVuZXkgIDxrYXRoZXJpbmVfY2hlbmV5QGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgYWZ0
ZXIgbW92ZSBpbiBTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvd3RmL1VSTC5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9VUkwuY3BwCmluZGV4IGI0MWY3MTA3OTI3
M2ZiM2YyMDZiNzRjMzdkZDE1ZWU4OGMyOWEwZDcuLmE3YzhkMjQxZDM4NzFjOWVhNGFhMjMyM2E0
YjI0OTI0OGQ4NDQ5ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1VSTC5jcHAKKysrIGIv
U291cmNlL1dURi93dGYvVVJMLmNwcApAQCAtNzIsMTMgKzcyLDIwIEBAIHN0YXRpYyBib29sIHNo
b3VsZFRyaW1Gcm9tVVJMKFVDaGFyIGNoYXJhY3RlcikKICAgICByZXR1cm4gY2hhcmFjdGVyIDw9
ICcgJzsKIH0KIAotVVJMIFVSTDo6aXNvbGF0ZWRDb3B5KCkgY29uc3QKK1VSTCBVUkw6Omlzb2xh
dGVkQ29weSgpIGNvbnN0ICYKIHsKICAgICBVUkwgcmVzdWx0ID0gKnRoaXM7CiAgICAgcmVzdWx0
Lm1fc3RyaW5nID0gcmVzdWx0Lm1fc3RyaW5nLmlzb2xhdGVkQ29weSgpOwogICAgIHJldHVybiBy
ZXN1bHQ7CiB9CiAKK1VSTCBVUkw6Omlzb2xhdGVkQ29weSgpICYmCit7CisgICAgVVJMIHJlc3Vs
dCA9ICp0aGlzOworICAgIHJlc3VsdC5tX3N0cmluZyA9IFdURk1vdmUocmVzdWx0Lm1fc3RyaW5n
KS5pc29sYXRlZENvcHkoKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCiBTdHJpbmdWaWV3IFVS
TDo6bGFzdFBhdGhDb21wb25lbnQoKSBjb25zdAogewogICAgIGlmICghaGFzUGF0aCgpKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dURi93dGYvVVJMLmggYi9Tb3VyY2UvV1RGL3d0Zi9VUkwuaAppbmRl
eCBiMWU5ZmRmMTYxY2ViNjliNjgyYTUzY2QzYjU5MzIxNGM2MWJlMzc5Li5hMGNjZGNjNjQ2MGFk
OTUxNWJiY2I2MTNmYzZiZTUxYjBlZWQ1NDU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9V
UkwuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9VUkwuaApAQCAtNzUsNyArNzUsOCBAQCBwdWJsaWM6
CiAgICAgLy8gTWFrZXMgYSBkZWVwIGNvcHkuIEhlbHBmdWwgb25seSBpZiB5b3UgbmVlZCB0byB1
c2UgYSBVUkwgb24gYW5vdGhlcgogICAgIC8vIHRocmVhZC4gU2luY2UgdGhlIHVuZGVybHlpbmcg
U3RyaW5nSW1wbCBvYmplY3RzIGFyZSBpbW11dGFibGUsIHRoZXJlJ3MKICAgICAvLyBubyBvdGhl
ciByZWFzb24gdG8gZXZlciBwcmVmZXIgaXNvbGF0ZWRDb3B5KCkgb3ZlciBwbGFpbiBvbGQgYXNz
aWdubWVudC4KLSAgICBXVEZfRVhQT1JUX1BSSVZBVEUgVVJMIGlzb2xhdGVkQ29weSgpIGNvbnN0
OworICAgIFdURl9FWFBPUlRfUFJJVkFURSBVUkwgaXNvbGF0ZWRDb3B5KCkgY29uc3QgJjsKKyAg
ICBXVEZfRVhQT1JUX1BSSVZBVEUgVVJMIGlzb2xhdGVkQ29weSgpICYmOwogCiAgICAgYm9vbCBp
c051bGwoKSBjb25zdDsKICAgICBib29sIGlzRW1wdHkoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5LmNwcAppbmRleCA1YTcx
ODJkYjI3YWI0Y2I4ZjU1NmUzN2FmZDJkYTg1MjM1YzBkNDFkLi43YzhkYmU2MDg1MzBjZDBkMzZk
OGY5OTc0MWY3OTU1ZDUwZDQwMzA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Q3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0Nyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3kuY3BwCkBAIC02NCw3ICs2NCw3IEBAIENyb3NzT3Jp
Z2luRW1iZWRkZXJQb2xpY3kgb2J0YWluQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeShjb25zdCBS
ZXNvdXJjZVJlc3BvbnNlCiAgICAgcmV0dXJuIG9idGFpbkNyb3NzT3JpZ2luRW1iZWRkZXJQb2xp
Y3kocmVzcG9uc2UsIGlzU2VjdXJlQ29udGV4dCk7CiB9CiAKLUNyb3NzT3JpZ2luRW1iZWRkZXJQ
b2xpY3kgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeTo6aXNvbGF0ZWRDb3B5KCkgY29uc3QKK0Ny
b3NzT3JpZ2luRW1iZWRkZXJQb2xpY3kgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeTo6aXNvbGF0
ZWRDb3B5KCkgY29uc3QgJgogewogICAgIHJldHVybiB7CiAgICAgICAgIHZhbHVlLApAQCAtNzQs
NiArNzQsMTYgQEAgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSBDcm9zc09yaWdpbkVtYmVkZGVy
UG9saWN5Ojppc29sYXRlZENvcHkoKSBjb25zdAogICAgIH07CiB9CiAKK0Nyb3NzT3JpZ2luRW1i
ZWRkZXJQb2xpY3kgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeTo6aXNvbGF0ZWRDb3B5KCkgJiYK
K3sKKyAgICByZXR1cm4geworICAgICAgICB2YWx1ZSwKKyAgICAgICAgV1RGTW92ZShyZXBvcnRp
bmdFbmRwb2ludCkuaXNvbGF0ZWRDb3B5KCksCisgICAgICAgIHJlcG9ydE9ubHlWYWx1ZSwKKyAg
ICAgICAgV1RGTW92ZShyZXBvcnRPbmx5UmVwb3J0aW5nRW5kcG9pbnQpLmlzb2xhdGVkQ29weSgp
CisgICAgfTsKK30KKwogdm9pZCBhZGRDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5SGVhZGVycyhS
ZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSwgY29uc3QgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGlj
eSYgY29lcCkKIHsKICAgICBpZiAoY29lcC52YWx1ZSAhPSBDcm9zc09yaWdpbkVtYmVkZGVyUG9s
aWN5VmFsdWU6OlVuc2FmZU5vbmUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9Dcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jv
c3NPcmlnaW5FbWJlZGRlclBvbGljeS5oCmluZGV4IGY5Mjk4YTc3ZTZkM2QyY2NmNDRkMWMxNzBm
ZmI3ZDE1OTQxYzAwMGYuLmQ3NTZhNjU5M2ZkNTgyNjI3ZDNlMGUxMGZhNTBkYWFhOGJlNDIwYzgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpbkVtYmVkZGVyUG9s
aWN5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luRW1iZWRkZXJQb2xp
Y3kuaApAQCAtNDUsNyArNDUsOCBAQCBzdHJ1Y3QgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeSB7
CiAgICAgQ3Jvc3NPcmlnaW5FbWJlZGRlclBvbGljeVZhbHVlIHJlcG9ydE9ubHlWYWx1ZSB7IENy
b3NzT3JpZ2luRW1iZWRkZXJQb2xpY3lWYWx1ZTo6VW5zYWZlTm9uZSB9OwogICAgIFN0cmluZyBy
ZXBvcnRPbmx5UmVwb3J0aW5nRW5kcG9pbnQ7CiAKLSAgICBDcm9zc09yaWdpbkVtYmVkZGVyUG9s
aWN5IGlzb2xhdGVkQ29weSgpIGNvbnN0OworICAgIENyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3kg
aXNvbGF0ZWRDb3B5KCkgY29uc3QgJjsKKyAgICBDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5IGlz
b2xhdGVkQ29weSgpICYmOwogICAgIHRlbXBsYXRlPGNsYXNzIEVuY29kZXI+IHZvaWQgZW5jb2Rl
KEVuY29kZXImKSBjb25zdDsKICAgICB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMgc3Rk
OjpvcHRpb25hbDxDcm9zc09yaWdpbkVtYmVkZGVyUG9saWN5PiBkZWNvZGUoRGVjb2RlciYpOwog
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2VjdXJpdHlPcmlnaW5EYXRhLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2VjdXJpdHlPcmlnaW5EYXRhLmNwcAppbmRleCAyMmJl
YThiNDM0MmRhNGRkY2RlMzVjZDg2NGFiZDhjNzc2NTMwOTJjLi5lNDljZGNkMzYyYWU3ZGFiNWRj
YTMxODYyYmE5NWU4ZmI3ZTdlZjllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1Nl
Y3VyaXR5T3JpZ2luRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZWN1cml0eU9y
aWdpbkRhdGEuY3BwCkBAIC0xMTUsNyArMTE1LDcgQEAgc3RkOjpvcHRpb25hbDxTZWN1cml0eU9y
aWdpbkRhdGE+IFNlY3VyaXR5T3JpZ2luRGF0YTo6ZnJvbURhdGFiYXNlSWRlbnRpZmllcihjb24K
ICAgICByZXR1cm4gU2VjdXJpdHlPcmlnaW5EYXRhIHsgcHJvdG9jb2wsIGhvc3QsIHBvcnQgfTsK
IH0KIAotU2VjdXJpdHlPcmlnaW5EYXRhIFNlY3VyaXR5T3JpZ2luRGF0YTo6aXNvbGF0ZWRDb3B5
KCkgY29uc3QKK1NlY3VyaXR5T3JpZ2luRGF0YSBTZWN1cml0eU9yaWdpbkRhdGE6Omlzb2xhdGVk
Q29weSgpIGNvbnN0ICYKIHsKICAgICBTZWN1cml0eU9yaWdpbkRhdGEgcmVzdWx0OwogCkBAIC0x
MjYsNiArMTI2LDE3IEBAIFNlY3VyaXR5T3JpZ2luRGF0YSBTZWN1cml0eU9yaWdpbkRhdGE6Omlz
b2xhdGVkQ29weSgpIGNvbnN0CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorU2VjdXJpdHlPcmln
aW5EYXRhIFNlY3VyaXR5T3JpZ2luRGF0YTo6aXNvbGF0ZWRDb3B5KCkgJiYKK3sKKyAgICBTZWN1
cml0eU9yaWdpbkRhdGEgcmVzdWx0OworCisgICAgcmVzdWx0LnByb3RvY29sID0gV1RGTW92ZShw
cm90b2NvbCkuaXNvbGF0ZWRDb3B5KCk7CisgICAgcmVzdWx0Lmhvc3QgPSBXVEZNb3ZlKGhvc3Qp
Lmlzb2xhdGVkQ29weSgpOworICAgIHJlc3VsdC5wb3J0ID0gcG9ydDsKKworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CisKIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTZWN1cml0eU9yaWdpbkRhdGEmIGEs
IGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgYikKIHsKICAgICBpZiAoJmEgPT0gJmIpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NlY3VyaXR5T3JpZ2luRGF0YS5oIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9TZWN1cml0eU9yaWdpbkRhdGEuaAppbmRleCA0YjM5NTI0OTE2NThlY2Fh
ZjM4ZTBiYjAwYTcyOTUwOTAyYmMwMzgyLi5mYzQ1ZmJhYTE1MTBjYTEzNjFmYTBkOGFmYzE3YTli
ODgxOTA1ODY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1NlY3VyaXR5T3JpZ2lu
RGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvU2VjdXJpdHlPcmlnaW5EYXRhLmgKQEAg
LTY0LDcgKzY0LDggQEAgc3RydWN0IFNlY3VyaXR5T3JpZ2luRGF0YSB7CiAgICAgU3RyaW5nIGhv
c3Q7CiAgICAgc3RkOjpvcHRpb25hbDx1aW50MTZfdD4gcG9ydDsKIAotICAgIFdFQkNPUkVfRVhQ
T1JUIFNlY3VyaXR5T3JpZ2luRGF0YSBpc29sYXRlZENvcHkoKSBjb25zdDsKKyAgICBXRUJDT1JF
X0VYUE9SVCBTZWN1cml0eU9yaWdpbkRhdGEgaXNvbGF0ZWRDb3B5KCkgY29uc3QgJjsKKyAgICBX
RUJDT1JFX0VYUE9SVCBTZWN1cml0eU9yaWdpbkRhdGEgaXNvbGF0ZWRDb3B5KCkgJiY7CiAKICAg
ICAvLyBTZXJpYWxpemUgdGhlIHNlY3VyaXR5IG9yaWdpbiB0byBhIHN0cmluZyB0aGF0IGNvdWxk
IGJlIHVzZWQgYXMgcGFydCBvZgogICAgIC8vIGZpbGUgbmFtZXMuIFRoaXMgZm9ybWF0IHNob3Vs
ZCBiZSB1c2VkIGluIHN0b3JhZ2UgQVBJcyBvbmx5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXIuaWRsCmluZGV4IDU4ZWRhYTFjOTUxOTkyOGY0MDMz
OGNhNzdhNjliNzg4MTYwYTUzNWQuLmJkYmI4N2VmNjg2MjA5NTZmYmQ2NDlmNDk2NDQxNWMxMGU4
OGFlZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNl
V29ya2VyLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdv
cmtlci5pZGwKQEAgLTQ1LDYgKzQ1LDcgQEAKIFNlcnZpY2VXb3JrZXIgaW5jbHVkZXMgQWJzdHJh
Y3RXb3JrZXI7CiAKIGVudW0gU2VydmljZVdvcmtlclN0YXRlIHsKKyAgICAicGFyc2VkIiwKICAg
ICAiaW5zdGFsbGluZyIsCiAgICAgImluc3RhbGxlZCIsCiAgICAgImFjdGl2YXRpbmciLApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJDb250
ZXh0RGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckNvbnRleHREYXRhLmNwcAppbmRleCA5NWJkMmNmMjUwYTBjYWMxM2QyNjdkNGUxMmZkMGM4Nzdi
MjA5YTQ4Li43YmMwODA0ODY3N2IwMmU4ZjZjZDNlOTczZjBkYjkzODA1ZjU2Njk3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckNvbnRleHRE
YXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtl
ckNvbnRleHREYXRhLmNwcApAQCAtMzEsNyArMzEsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLVNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGE6Omlz
b2xhdGVkQ29weSgpIGNvbnN0CitTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEgU2VydmljZVdvcmtl
ckNvbnRleHREYXRhOjppc29sYXRlZENvcHkoKSBjb25zdCAmCiB7CiAgICAgcmV0dXJuIHsKICAg
ICAgICAgam9iRGF0YUlkZW50aWZpZXIsCkBAIC01MCw2ICs1MCwyNSBAQCBTZXJ2aWNlV29ya2Vy
Q29udGV4dERhdGEgU2VydmljZVdvcmtlckNvbnRleHREYXRhOjppc29sYXRlZENvcHkoKSBjb25z
dAogICAgIH07CiB9CiAKK1NlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSBTZXJ2aWNlV29ya2VyQ29u
dGV4dERhdGE6Omlzb2xhdGVkQ29weSgpICYmCit7CisgICAgcmV0dXJuIHsKKyAgICAgICAgam9i
RGF0YUlkZW50aWZpZXIsCisgICAgICAgIFdURk1vdmUocmVnaXN0cmF0aW9uKS5pc29sYXRlZENv
cHkoKSwKKyAgICAgICAgc2VydmljZVdvcmtlcklkZW50aWZpZXIsCisgICAgICAgIFdURk1vdmUo
c2NyaXB0KS5pc29sYXRlZENvcHkoKSwKKyAgICAgICAgV1RGTW92ZShjZXJ0aWZpY2F0ZUluZm8p
Lmlzb2xhdGVkQ29weSgpLAorICAgICAgICBXVEZNb3ZlKGNvbnRlbnRTZWN1cml0eVBvbGljeSku
aXNvbGF0ZWRDb3B5KCksCisgICAgICAgIFdURk1vdmUoY3Jvc3NPcmlnaW5FbWJlZGRlclBvbGlj
eSkuaXNvbGF0ZWRDb3B5KCksCisgICAgICAgIFdURk1vdmUocmVmZXJyZXJQb2xpY3kpLmlzb2xh
dGVkQ29weSgpLAorICAgICAgICBXVEZNb3ZlKHNjcmlwdFVSTCkuaXNvbGF0ZWRDb3B5KCksCisg
ICAgICAgIHdvcmtlclR5cGUsCisgICAgICAgIGxvYWRlZEZyb21EaXNrLAorICAgICAgICBsYXN0
TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCwKKyAgICAgICAgY3Jvc3NUaHJlYWRDb3B5KFdURk1v
dmUoc2NyaXB0UmVzb3VyY2VNYXApKQorICAgIH07Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIAogI2VuZGlmIC8vIEVOQUJMRShTRVJWSUNFX1dPUktFUikKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyQ29udGV4dERhdGEuaCBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyQ29udGV4dERhdGEuaApp
bmRleCA0M2JlNmE2MjNlMWIzZTc1MDUzNzQwY2IzNzY5NWUwOTAwMWQ0NWQxLi5kNjQyNGFmMGRi
YmVmYWRkMWYyOWUxODNmMGVhZTY3OGYyNWRkZTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckNvbnRleHREYXRhLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJDb250ZXh0RGF0YS5oCkBAIC05
Nyw3ICs5Nyw4IEBAIHN0cnVjdCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEgewogICAgIHRlbXBs
YXRlPGNsYXNzIEVuY29kZXI+IHZvaWQgZW5jb2RlKEVuY29kZXImKSBjb25zdDsKICAgICB0ZW1w
bGF0ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyQ29u
dGV4dERhdGE+IGRlY29kZShEZWNvZGVyJik7CiAKLSAgICBTZXJ2aWNlV29ya2VyQ29udGV4dERh
dGEgaXNvbGF0ZWRDb3B5KCkgY29uc3Q7CisgICAgU2VydmljZVdvcmtlckNvbnRleHREYXRhIGlz
b2xhdGVkQ29weSgpIGNvbnN0ICY7CisgICAgU2VydmljZVdvcmtlckNvbnRleHREYXRhIGlzb2xh
dGVkQ29weSgpICYmOwogfTsKIAogdGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyRGF0YS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckRhdGEuY3BwCmluZGV4
IDVjNjk5ZjVjNmVhYmQ4YWZiYzUxOTZiNjcwYTQ0MzgyMjY1Y2RmZGYuLjNhYjA3YzgyYjE0MDk0
ZjM3MTc1MWE1YzJmNzRkNzVmOGVkYzM2ZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJEYXRhLmNwcApAQCAtMzAsNyArMzAsNyBAQAog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVNlcnZpY2VXb3JrZXJEYXRhIFNlcnZpY2VXb3JrZXJE
YXRhOjppc29sYXRlZENvcHkoKSBjb25zdAorU2VydmljZVdvcmtlckRhdGEgU2VydmljZVdvcmtl
ckRhdGE6Omlzb2xhdGVkQ29weSgpIGNvbnN0ICYKIHsKICAgICByZXR1cm4gewogICAgICAgICBp
ZGVudGlmaWVyLApAQCAtNDEsNiArNDEsMTcgQEAgU2VydmljZVdvcmtlckRhdGEgU2VydmljZVdv
cmtlckRhdGE6Omlzb2xhdGVkQ29weSgpIGNvbnN0CiAgICAgfTsKIH0KIAorU2VydmljZVdvcmtl
ckRhdGEgU2VydmljZVdvcmtlckRhdGE6Omlzb2xhdGVkQ29weSgpICYmCit7CisgICAgcmV0dXJu
IHsKKyAgICAgICAgaWRlbnRpZmllciwKKyAgICAgICAgV1RGTW92ZShzY3JpcHRVUkwpLmlzb2xh
dGVkQ29weSgpLAorICAgICAgICBzdGF0ZSwKKyAgICAgICAgdHlwZSwKKyAgICAgICAgcmVnaXN0
cmF0aW9uSWRlbnRpZmllcgorICAgIH07Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAog
I2VuZGlmIC8vIEVOQUJMRShTRVJWSUNFX1dPUktFUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyRGF0YS5oIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJEYXRhLmgKaW5kZXggY2UzNjFkM2YzZDBmMzg3
M2E4NmRjOGE5MzhiYWYwM2YxZDE2NGE1OC4uM2I3MTNjMDBhNWU5Y2Y3ZWQxNWQxYWI4MGM2ZjAy
ODQ4YWRhODdiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1Nl
cnZpY2VXb3JrZXJEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1Nl
cnZpY2VXb3JrZXJEYXRhLmgKQEAgLTQxLDcgKzQxLDggQEAgc3RydWN0IFNlcnZpY2VXb3JrZXJE
YXRhIHsKICAgICBXb3JrZXJUeXBlIHR5cGU7CiAgICAgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bklkZW50aWZpZXIgcmVnaXN0cmF0aW9uSWRlbnRpZmllcjsKIAotICAgIFNlcnZpY2VXb3JrZXJE
YXRhIGlzb2xhdGVkQ29weSgpIGNvbnN0OworICAgIFNlcnZpY2VXb3JrZXJEYXRhIGlzb2xhdGVk
Q29weSgpIGNvbnN0ICY7CisgICAgU2VydmljZVdvcmtlckRhdGEgaXNvbGF0ZWRDb3B5KCkgJiY7
CiAKICAgICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29u
c3Q7CiAgICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIHN0ZDo6b3B0aW9uYWw8U2Vy
dmljZVdvcmtlckRhdGE+IGRlY29kZShEZWNvZGVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlckdsb2JhbFNjb3BlLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCmlu
ZGV4IDMzMDE0YTNlNzM2NzM0ZjU4OGUwMGExZDBiZDJkZWFkYjBmNjdmYmIuLmZiYzA3MmFlOTMz
MTdiNmI2Y2YwNTkyNTQ1NGI0NzJkZWE1MWNhNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuY3BwCkBA
IC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiRXh0ZW5kYWJsZUV2ZW50LmgiCiAjaW5jbHVkZSAi
SlNET01Qcm9taXNlRGVmZXJyZWQuaCIKICNpbmNsdWRlICJTV0NvbnRleHRNYW5hZ2VyLmgiCisj
aW5jbHVkZSAiU2VydmljZVdvcmtlci5oIgogI2luY2x1ZGUgIlNlcnZpY2VXb3JrZXJDbGllbnQu
aCIKICNpbmNsdWRlICJTZXJ2aWNlV29ya2VyQ2xpZW50cy5oIgogI2luY2x1ZGUgIlNlcnZpY2VX
b3JrZXJDb250YWluZXIuaCIKQEAgLTQ0LDE3ICs0NSwxOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIFdURl9NQUtFX0lTT19BTExPQ0FURURfSU1QTChTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUp
OwogCi1SZWY8U2VydmljZVdvcmtlckdsb2JhbFNjb3BlPiBTZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGU6OmNyZWF0ZShTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiBkYXRhLCBjb25zdCBXb3JrZXJQ
YXJhbWV0ZXJzJiBwYXJhbXMsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiBvcmlnaW4sIFNlcnZpY2VX
b3JrZXJUaHJlYWQmIHRocmVhZCwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgSURC
Q2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNvbm5lY3Rpb25Qcm94eSwgU29ja2V0UHJvdmlk
ZXIqIHNvY2tldFByb3ZpZGVyKQorUmVmPFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZT4gU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlOjpjcmVhdGUoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYgY29u
dGV4dERhdGEsIFNlcnZpY2VXb3JrZXJEYXRhJiYgd29ya2VyRGF0YSwgY29uc3QgV29ya2VyUGFy
YW1ldGVycyYgcGFyYW1zLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3JpZ2luLCBTZXJ2aWNlV29y
a2VyVGhyZWFkJiB0aHJlYWQsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNs
aWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVy
KiBzb2NrZXRQcm92aWRlcikKIHsKLSAgICBhdXRvIHNjb3BlID0gYWRvcHRSZWYoKm5ldyBTZXJ2
aWNlV29ya2VyR2xvYmFsU2NvcGUgeyBXVEZNb3ZlKGRhdGEpLCBwYXJhbXMsIFdURk1vdmUob3Jp
Z2luKSwgdGhyZWFkLCBXVEZNb3ZlKHRvcE9yaWdpbiksIGNvbm5lY3Rpb25Qcm94eSwgc29ja2V0
UHJvdmlkZXIgfSk7CisgICAgYXV0byBzY29wZSA9IGFkb3B0UmVmKCpuZXcgU2VydmljZVdvcmtl
ckdsb2JhbFNjb3BlIHsgV1RGTW92ZShjb250ZXh0RGF0YSksIFdURk1vdmUod29ya2VyRGF0YSks
IHBhcmFtcywgV1RGTW92ZShvcmlnaW4pLCB0aHJlYWQsIFdURk1vdmUodG9wT3JpZ2luKSwgY29u
bmVjdGlvblByb3h5LCBzb2NrZXRQcm92aWRlciB9KTsKICAgICBzY29wZS0+YXBwbHlDb250ZW50
U2VjdXJpdHlQb2xpY3lSZXNwb25zZUhlYWRlcnMocGFyYW1zLmNvbnRlbnRTZWN1cml0eVBvbGlj
eVJlc3BvbnNlSGVhZGVycyk7CiAgICAgcmV0dXJuIHNjb3BlOwogfQogCi1TZXJ2aWNlV29ya2Vy
R2xvYmFsU2NvcGU6OlNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZShTZXJ2aWNlV29ya2VyQ29udGV4
dERhdGEmJiBkYXRhLCBjb25zdCBXb3JrZXJQYXJhbWV0ZXJzJiBwYXJhbXMsIFJlZjxTZWN1cml0
eU9yaWdpbj4mJiBvcmlnaW4sIFNlcnZpY2VXb3JrZXJUaHJlYWQmIHRocmVhZCwgUmVmPFNlY3Vy
aXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGNv
bm5lY3Rpb25Qcm94eSwgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKQorU2VydmljZVdv
cmtlckdsb2JhbFNjb3BlOjpTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUoU2VydmljZVdvcmtlckNv
bnRleHREYXRhJiYgY29udGV4dERhdGEsIFNlcnZpY2VXb3JrZXJEYXRhJiYgd29ya2VyRGF0YSwg
Y29uc3QgV29ya2VyUGFyYW1ldGVycyYgcGFyYW1zLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgb3Jp
Z2luLCBTZXJ2aWNlV29ya2VyVGhyZWFkJiB0aHJlYWQsIFJlZjxTZWN1cml0eU9yaWdpbj4mJiB0
b3BPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBjb25uZWN0aW9uUHJveHks
IFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcikKICAgICA6IFdvcmtlckdsb2JhbFNjb3Bl
KFdvcmtlclRocmVhZFR5cGU6OlNlcnZpY2VXb3JrZXIsIHBhcmFtcywgV1RGTW92ZShvcmlnaW4p
LCB0aHJlYWQsIFdURk1vdmUodG9wT3JpZ2luKSwgY29ubmVjdGlvblByb3h5LCBzb2NrZXRQcm92
aWRlcikKLSAgICAsIG1fY29udGV4dERhdGEoV1RGTW92ZShkYXRhKSkKKyAgICAsIG1fY29udGV4
dERhdGEoV1RGTW92ZShjb250ZXh0RGF0YSkpCiAgICAgLCBtX3JlZ2lzdHJhdGlvbihTZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uOjpnZXRPckNyZWF0ZSgqdGhpcywgbmF2aWdhdG9yKCkuc2Vydmlj
ZVdvcmtlcigpLCBXVEZNb3ZlKG1fY29udGV4dERhdGEucmVnaXN0cmF0aW9uKSkpCisgICAgLCBt
X3NlcnZpY2VXb3JrZXIoU2VydmljZVdvcmtlcjo6Z2V0T3JDcmVhdGUoKnRoaXMsIFdURk1vdmUo
d29ya2VyRGF0YSkpKQogICAgICwgbV9jbGllbnRzKFNlcnZpY2VXb3JrZXJDbGllbnRzOjpjcmVh
dGUoKSkKIHsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9T
ZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaAppbmRleCBjNDNkODY1NDVmY2JiODY1YTNhNTFi
NGI1NzkzNmY5MjJiODA5NjYwLi44NGE2YzA1NmEzMzhkNjk4YWM2MzE5YWQ2YzE2M2JjZjJlMmY1
ODg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdv
cmtlckdsb2JhbFNjb3BlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1Nl
cnZpY2VXb3JrZXJHbG9iYWxTY29wZS5oCkBAIC00NSw3ICs0NSw3IEBAIGNsYXNzIFNlcnZpY2VX
b3JrZXJUaHJlYWQ7CiBjbGFzcyBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUgZmluYWwgOiBwdWJs
aWMgV29ya2VyR2xvYmFsU2NvcGUgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoU2Vydmlj
ZVdvcmtlckdsb2JhbFNjb3BlKTsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFNlcnZpY2VXb3Jr
ZXJHbG9iYWxTY29wZT4gY3JlYXRlKFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmLCBjb25zdCBX
b3JrZXJQYXJhbWV0ZXJzJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmLCBTZXJ2aWNlV29ya2VyVGhy
ZWFkJiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbiwgSURCQ2xpZW50OjpJREJDb25u
ZWN0aW9uUHJveHkqLCBTb2NrZXRQcm92aWRlciopOworICAgIHN0YXRpYyBSZWY8U2VydmljZVdv
cmtlckdsb2JhbFNjb3BlPiBjcmVhdGUoU2VydmljZVdvcmtlckNvbnRleHREYXRhJiYsIFNlcnZp
Y2VXb3JrZXJEYXRhJiYsIGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmLCBSZWY8U2VjdXJpdHlPcmln
aW4+JiYsIFNlcnZpY2VXb3JrZXJUaHJlYWQmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYgdG9wT3Jp
Z2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSosIFNvY2tldFByb3ZpZGVyKik7CiAK
ICAgICB+U2VydmljZVdvcmtlckdsb2JhbFNjb3BlKCk7CiAKQEAgLTUzLDYgKzUzLDcgQEAgcHVi
bGljOgogCiAgICAgU2VydmljZVdvcmtlckNsaWVudHMmIGNsaWVudHMoKSB7IHJldHVybiBtX2Ns
aWVudHMuZ2V0KCk7IH0KICAgICBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uJiByZWdpc3RyYXRp
b24oKSB7IHJldHVybiBtX3JlZ2lzdHJhdGlvbi5nZXQoKTsgfQorICAgIFNlcnZpY2VXb3JrZXIm
IHNlcnZpY2VXb3JrZXIoKSB7IHJldHVybiBtX3NlcnZpY2VXb3JrZXIuZ2V0KCk7IH0KICAgICAK
ICAgICB2b2lkIHNraXBXYWl0aW5nKFJlZjxEZWZlcnJlZFByb21pc2U+JiYpOwogCkBAIC03Nywx
MiArNzgsMTMgQEAgcHVibGljOgogICAgIEZldGNoT3B0aW9uczo6RGVzdGluYXRpb24gZGVzdGlu
YXRpb24oKSBjb25zdCBmaW5hbCB7IHJldHVybiBGZXRjaE9wdGlvbnM6OkRlc3RpbmF0aW9uOjpT
ZXJ2aWNld29ya2VyOyB9CiAgICAgCiBwcml2YXRlOgotICAgIFNlcnZpY2VXb3JrZXJHbG9iYWxT
Y29wZShTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgY29uc3QgV29ya2VyUGFyYW1ldGVycyYs
IFJlZjxTZWN1cml0eU9yaWdpbj4mJiwgU2VydmljZVdvcmtlclRocmVhZCYsIFJlZjxTZWN1cml0
eU9yaWdpbj4mJiB0b3BPcmlnaW4sIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29j
a2V0UHJvdmlkZXIqKTsKKyAgICBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUoU2VydmljZVdvcmtl
ckNvbnRleHREYXRhJiYsIFNlcnZpY2VXb3JrZXJEYXRhJiYsIGNvbnN0IFdvcmtlclBhcmFtZXRl
cnMmLCBSZWY8U2VjdXJpdHlPcmlnaW4+JiYsIFNlcnZpY2VXb3JrZXJUaHJlYWQmLCBSZWY8U2Vj
dXJpdHlPcmlnaW4+JiYgdG9wT3JpZ2luLCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSos
IFNvY2tldFByb3ZpZGVyKik7CiAKICAgICBib29sIGhhc1BlbmRpbmdFdmVudHMoKSBjb25zdCB7
IHJldHVybiAhbV9leHRlbmRlZEV2ZW50cy5pc0VtcHR5KCk7IH0KIAogICAgIFNlcnZpY2VXb3Jr
ZXJDb250ZXh0RGF0YSBtX2NvbnRleHREYXRhOwogICAgIFJlZjxTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uPiBtX3JlZ2lzdHJhdGlvbjsKKyAgICBSZWY8U2VydmljZVdvcmtlcj4gbV9zZXJ2aWNl
V29ya2VyOwogICAgIFJlZjxTZXJ2aWNlV29ya2VyQ2xpZW50cz4gbV9jbGllbnRzOwogICAgIEhh
c2hNYXA8U2VydmljZVdvcmtlckNsaWVudElkZW50aWZpZXIsIFNlcnZpY2VXb3JrZXJDbGllbnQq
PiBtX2NsaWVudE1hcDsKICAgICBWZWN0b3I8UmVmPEV4dGVuZGFibGVFdmVudD4+IG1fZXh0ZW5k
ZWRFdmVudHM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vy
dmljZVdvcmtlckdsb2JhbFNjb3BlLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaWRsCmluZGV4IGI0YjkxMDVmYzQzMDUxYTNmM2Vh
Njk0NTlkZTI0YjFmZjQ5MmViZTEuLjRmOTE3Yzc3N2MxZWY4OGUwNGFjODRjNzVjMjhmNDJhYjc2
ZGFmZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNl
V29ya2VyR2xvYmFsU2NvcGUuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9TZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUuaWRsCkBAIC0zNCw2ICszNCw3IEBACiBdIGludGVy
ZmFjZSBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUgOiBXb3JrZXJHbG9iYWxTY29wZSB7CiAgICAg
W1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJpYnV0ZSBTZXJ2aWNlV29ya2VyQ2xpZW50cyBjbGll
bnRzOwogICAgIFtTYW1lT2JqZWN0XSByZWFkb25seSBhdHRyaWJ1dGUgU2VydmljZVdvcmtlclJl
Z2lzdHJhdGlvbiByZWdpc3RyYXRpb247CisgICAgW1NhbWVPYmplY3RdIHJlYWRvbmx5IGF0dHJp
YnV0ZSBTZXJ2aWNlV29ya2VyIHNlcnZpY2VXb3JrZXI7CiAKICAgICBbTmV3T2JqZWN0XSBQcm9t
aXNlPHVuZGVmaW5lZD4gc2tpcFdhaXRpbmcoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0
YS5jcHAKaW5kZXggMGNhNTg1MGI1Y2NlZDUxN2Q0MzZjYjc4MGFlY2RlZGYwOTc4MzIyYy4uZDY3
MmFhNjk3MjZjNDAyNGViZWQ1MzAyZTk1ZTQzZDI0ZTIxYjI1MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclJlZ2lz
dHJhdGlvbkRhdGEuY3BwCkBAIC0zMCw3ICszMCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRhdGE6Omlzb2xhdGVkQ29weSgpIGNvbnN0CitTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0
YSBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YTo6aXNvbGF0ZWRDb3B5KCkgY29uc3QgJgog
ewogICAgIHJldHVybiB7CiAgICAgICAgIGtleS5pc29sYXRlZENvcHkoKSwKQEAgLTM4LDkgKzM4
LDIzIEBAIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhIFNlcnZpY2VXb3JrZXJSZWdpc3Ry
YXRpb25EYXRhOjppc29sYXRlZENvcHkoKSBjb25zCiAgICAgICAgIHNjb3BlVVJMLmlzb2xhdGVk
Q29weSgpLAogICAgICAgICB1cGRhdGVWaWFDYWNoZSwKICAgICAgICAgbGFzdFVwZGF0ZVRpbWUs
Ci0gICAgICAgIGluc3RhbGxpbmdXb3JrZXIgPyBzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3JrZXJE
YXRhPihpbnN0YWxsaW5nV29ya2VyLT5pc29sYXRlZENvcHkoKSkgOiBzdGQ6Om51bGxvcHQsCi0g
ICAgICAgIHdhaXRpbmdXb3JrZXIgPyBzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3JrZXJEYXRhPih3
YWl0aW5nV29ya2VyLT5pc29sYXRlZENvcHkoKSkgOiBzdGQ6Om51bGxvcHQsCi0gICAgICAgIGFj
dGl2ZVdvcmtlciA/IHN0ZDo6b3B0aW9uYWw8U2VydmljZVdvcmtlckRhdGE+KGFjdGl2ZVdvcmtl
ci0+aXNvbGF0ZWRDb3B5KCkpIDogc3RkOjpudWxsb3B0LAorICAgICAgICBjcm9zc1RocmVhZENv
cHkoaW5zdGFsbGluZ1dvcmtlciksCisgICAgICAgIGNyb3NzVGhyZWFkQ29weSh3YWl0aW5nV29y
a2VyKSwKKyAgICAgICAgY3Jvc3NUaHJlYWRDb3B5KGFjdGl2ZVdvcmtlciksCisgICAgfTsKK30K
KworU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRhdGE6Omlzb2xhdGVkQ29weSgpICYmCit7CisgICAgcmV0dXJuIHsKKyAgICAgICAgV1RGTW92
ZShrZXkpLmlzb2xhdGVkQ29weSgpLAorICAgICAgICBpZGVudGlmaWVyLAorICAgICAgICBXVEZN
b3ZlKHNjb3BlVVJMKS5pc29sYXRlZENvcHkoKSwKKyAgICAgICAgdXBkYXRlVmlhQ2FjaGUsCisg
ICAgICAgIGxhc3RVcGRhdGVUaW1lLAorICAgICAgICBjcm9zc1RocmVhZENvcHkoV1RGTW92ZShp
bnN0YWxsaW5nV29ya2VyKSksCisgICAgICAgIGNyb3NzVGhyZWFkQ29weShXVEZNb3ZlKHdhaXRp
bmdXb3JrZXIpKSwKKyAgICAgICAgY3Jvc3NUaHJlYWRDb3B5KFdURk1vdmUoYWN0aXZlV29ya2Vy
KSksCiAgICAgfTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEuaAppbmRleCAzZmY0MDQ5
ZjUyZDRiMzEzN2UyYTQ3Y2RkMjMxNGU3NzY5M2I4YzlhLi4zMTRlMDNlMDQ3ZTkzNmVkOTJhOGY2
ZGFiYzY2MjVhMGRmOWI4MGJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEuaApAQCAtNDks
NyArNDksOCBAQCBzdHJ1Y3QgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEgewogICAgIHN0
ZDo6b3B0aW9uYWw8U2VydmljZVdvcmtlckRhdGE+IHdhaXRpbmdXb3JrZXI7CiAgICAgc3RkOjpv
cHRpb25hbDxTZXJ2aWNlV29ya2VyRGF0YT4gYWN0aXZlV29ya2VyOwogCi0gICAgU2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbkRhdGEgaXNvbGF0ZWRDb3B5KCkgY29uc3Q7CisgICAgU2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbkRhdGEgaXNvbGF0ZWRDb3B5KCkgY29uc3QgJjsKKyAgICBTZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uRGF0YSBpc29sYXRlZENvcHkoKSAmJjsKIAogICAgIHRlbXBsYXRl
PGNsYXNzIEVuY29kZXI+IHZvaWQgZW5jb2RlKEVuY29kZXImKSBjb25zdDsKICAgICB0ZW1wbGF0
ZTxjbGFzcyBEZWNvZGVyPiBzdGF0aWMgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uRGF0YT4gZGVjb2RlKERlY29kZXImKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5LmNw
cAppbmRleCA0OGU4NDMwZjA2NzFmMjI1MjUxN2ZmZDM2MDY1ZGUwNjI3OTI2ZThjLi5iMGNiNTNh
ZTEyNzhmMWU5NTAwMWIxZjdjMjg3OTRiODk5YjQ4NjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2UvU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbktleS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25LZXkuY3BwCkBAIC02MCwxMSArNjAsMTYgQEAgYm9vbCBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0
aW9uS2V5OjpvcGVyYXRvcj09KGNvbnN0IFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXkKICAg
ICByZXR1cm4gbV90b3BPcmlnaW4gPT0gb3RoZXIubV90b3BPcmlnaW4gJiYgbV9zY29wZSA9PSBv
dGhlci5tX3Njb3BlOwogfQogCi1TZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5IFNlcnZpY2VX
b3JrZXJSZWdpc3RyYXRpb25LZXk6Omlzb2xhdGVkQ29weSgpIGNvbnN0CitTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uS2V5IFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXk6Omlzb2xhdGVkQ29w
eSgpIGNvbnN0ICYKIHsKICAgICByZXR1cm4geyBtX3RvcE9yaWdpbi5pc29sYXRlZENvcHkoKSwg
bV9zY29wZS5pc29sYXRlZENvcHkoKSB9OwogfQogCitTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
S2V5IFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXk6Omlzb2xhdGVkQ29weSgpICYmCit7Cisg
ICAgcmV0dXJuIHsgV1RGTW92ZShtX3RvcE9yaWdpbikuaXNvbGF0ZWRDb3B5KCksIFdURk1vdmUo
bV9zY29wZSkuaXNvbGF0ZWRDb3B5KCkgfTsKK30KKwogYm9vbCBTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uS2V5Ojppc01hdGNoaW5nKGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2lu
LCBjb25zdCBVUkwmIGNsaWVudFVSTCkgY29uc3QKIHsKICAgICByZXR1cm4gb3JpZ2luSXNNYXRj
aGluZyh0b3BPcmlnaW4sIGNsaWVudFVSTCkgJiYgY2xpZW50VVJMLnN0cmluZygpLnN0YXJ0c1dp
dGgobV9zY29wZS5zdHJpbmcoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbktleS5oIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXkuaAppbmRleCBjNWM0
OTUxNDg0MDY5ZTk1YjZiYzc2MDg4YmQzMDc0Y2NlNjJmOTMwLi4wODFlMTE3MzRiNjkwNmFkYzMw
MWRkZDYyNWRlNTUwZDRmM2E5NDY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2UvU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbktleS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5LmgKQEAgLTUz
LDcgKzUzLDggQEAgcHVibGljOgogCiAgICAgYm9vbCByZWxhdGVzVG9PcmlnaW4oY29uc3QgU2Vj
dXJpdHlPcmlnaW5EYXRhJikgY29uc3Q7CiAKLSAgICBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
S2V5IGlzb2xhdGVkQ29weSgpIGNvbnN0OworICAgIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25L
ZXkgaXNvbGF0ZWRDb3B5KCkgY29uc3QgJjsKKyAgICBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
S2V5IGlzb2xhdGVkQ29weSgpICYmOwogCiAgICAgdGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4gdm9p
ZCBlbmNvZGUoRW5jb2RlciYpIGNvbnN0OwogICAgIHRlbXBsYXRlPGNsYXNzIERlY29kZXI+IHN0
YXRpYyBzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXk+IGRlY29kZShE
ZWNvZGVyJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vy
dmljZVdvcmtlclR5cGVzLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvU2Vydmlj
ZVdvcmtlclR5cGVzLmgKaW5kZXggODg2YzVhZDQ5MDIwN2FkYjE3MTNjYmY3MTVmODM0N2I3NmM1
MTE2Ni4uNjIyZGUzMzBkOWNmNDY5M2YxODU3Njg4YzViYzFiMzViMmE4ZDJkZSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL1NlcnZpY2VXb3JrZXJUeXBlcy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TZXJ2aWNlV29ya2VyVHlwZXMuaApA
QCAtNDYsNiArNDYsNyBAQCBlbnVtIGNsYXNzIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25TdGF0
ZSA6IHVpbnQ4X3QgewogfTsKIAogZW51bSBjbGFzcyBTZXJ2aWNlV29ya2VyU3RhdGUgOiB1aW50
OF90IHsKKyAgICBQYXJzZWQsCiAgICAgSW5zdGFsbGluZywKICAgICBJbnN0YWxsZWQsCiAgICAg
QWN0aXZhdGluZywKQEAgLTEwNSw2ICsxMDYsNyBAQCB0ZW1wbGF0ZSA8PiBzdHJ1Y3QgRW51bVRy
YWl0czxXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uU3RhdGU+IHsKIHRlbXBsYXRl
IDw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJTdGF0ZT4gewogICAg
IHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CiAgICAgICAgIFdlYkNvcmU6OlNlcnZpY2VXb3Jr
ZXJTdGF0ZSwKKyAgICAgICAgV2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRlOjpQYXJzZWQsCiAg
ICAgICAgIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJTdGF0ZTo6SW5zdGFsbGluZywKICAgICAgICAg
V2ViQ29yZTo6U2VydmljZVdvcmtlclN0YXRlOjpJbnN0YWxsZWQsCiAgICAgICAgIFdlYkNvcmU6
OlNlcnZpY2VXb3JrZXJTdGF0ZTo6QWN0aXZhdGluZywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWQuY3BwIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5j
cHAKaW5kZXggZWEyYWJmZTU5NzhkMmUxMDg4ODcxYzRmODBiZjJlZWM1YjBmZDcyMi4uODIwZTRj
ZWYxYjA2MGM4MDBkYzgzZTdkOWVhNmU4Nzg1YThiOWI1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRo
cmVhZC5jcHAKQEAgLTczLDExICs3MywxMiBAQCBwcml2YXRlOgogLy8gRklYTUU6IFVzZSBhIHZh
bGlkIFdvcmtlck9iamVjdFByb3h5CiAvLyBGSVhNRTogVXNlIHZhbGlkIHJ1bnRpbWUgZmxhZ3MK
IAotU2VydmljZVdvcmtlclRocmVhZDo6U2VydmljZVdvcmtlclRocmVhZChTZXJ2aWNlV29ya2Vy
Q29udGV4dERhdGEmJiBkYXRhLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGNvbnN0IFNldHRpbmdzOjpW
YWx1ZXMmIHNldHRpbmdzVmFsdWVzLCBXb3JrZXJMb2FkZXJQcm94eSYgbG9hZGVyUHJveHksIFdv
cmtlckRlYnVnZ2VyUHJveHkmIGRlYnVnZ2VyUHJveHksIElEQkNsaWVudDo6SURCQ29ubmVjdGlv
blByb3h5KiBpZGJDb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRl
cikKLSAgICA6IFdvcmtlclRocmVhZCh7IGRhdGEuc2NyaXB0VVJMLCBlbXB0eVN0cmluZygpLCAi
c2VydmljZXdvcmtlcjoiICsgSW5zcGVjdG9yOjpJZGVudGlmaWVyc0ZhY3Rvcnk6OmNyZWF0ZUlk
ZW50aWZpZXIoKSwgV1RGTW92ZSh1c2VyQWdlbnQpLCBwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+bG9h
ZGVyU3RyYXRlZ3koKS0+aXNPbkxpbmUoKSwgZGF0YS5jb250ZW50U2VjdXJpdHlQb2xpY3ksIGZh
bHNlLCBkYXRhLmNyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3ksIE1vbm90b25pY1RpbWU6Om5vdygp
LCB7IH0sIGRhdGEud29ya2VyVHlwZSwgRmV0Y2hSZXF1ZXN0Q3JlZGVudGlhbHM6Ok9taXQsIHNl
dHRpbmdzVmFsdWVzIH0sIGRhdGEuc2NyaXB0LCBsb2FkZXJQcm94eSwgZGVidWdnZXJQcm94eSwg
RHVtbXlTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHk6OnNoYXJlZCgpLCBXb3JrZXJUaHJlYWRTdGFy
dE1vZGU6Ok5vcm1hbCwgZGF0YS5yZWdpc3RyYXRpb24ua2V5LnRvcE9yaWdpbigpLnNlY3VyaXR5
T3JpZ2luKCkuZ2V0KCksIGlkYkNvbm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIsIEpTQzo6
UnVudGltZUZsYWdzOjpjcmVhdGVBbGxFbmFibGVkKCkpCi0gICAgLCBtX3NlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyKGRhdGEuc2VydmljZVdvcmtlcklkZW50aWZpZXIpCi0gICAgLCBtX2pvYkRhdGFJ
ZGVudGlmaWVyKGRhdGEuam9iRGF0YUlkZW50aWZpZXIpCi0gICAgLCBtX2RhdGEoY3Jvc3NUaHJl
YWRDb3B5KGRhdGEpKQorU2VydmljZVdvcmtlclRocmVhZDo6U2VydmljZVdvcmtlclRocmVhZChT
ZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiBjb250ZXh0RGF0YSwgU2VydmljZVdvcmtlckRhdGEm
JiB3b3JrZXJEYXRhLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGNvbnN0IFNldHRpbmdzOjpWYWx1ZXMm
IHNldHRpbmdzVmFsdWVzLCBXb3JrZXJMb2FkZXJQcm94eSYgbG9hZGVyUHJveHksIFdvcmtlckRl
YnVnZ2VyUHJveHkmIGRlYnVnZ2VyUHJveHksIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5
KiBpZGJDb25uZWN0aW9uUHJveHksIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcikKKyAg
ICA6IFdvcmtlclRocmVhZCh7IGNvbnRleHREYXRhLnNjcmlwdFVSTCwgZW1wdHlTdHJpbmcoKSwg
InNlcnZpY2V3b3JrZXI6IiArIEluc3BlY3Rvcjo6SWRlbnRpZmllcnNGYWN0b3J5OjpjcmVhdGVJ
ZGVudGlmaWVyKCksIFdURk1vdmUodXNlckFnZW50KSwgcGxhdGZvcm1TdHJhdGVnaWVzKCktPmxv
YWRlclN0cmF0ZWd5KCktPmlzT25MaW5lKCksIGNvbnRleHREYXRhLmNvbnRlbnRTZWN1cml0eVBv
bGljeSwgZmFsc2UsIGNvbnRleHREYXRhLmNyb3NzT3JpZ2luRW1iZWRkZXJQb2xpY3ksIE1vbm90
b25pY1RpbWU6Om5vdygpLCB7IH0sIGNvbnRleHREYXRhLndvcmtlclR5cGUsIEZldGNoUmVxdWVz
dENyZWRlbnRpYWxzOjpPbWl0LCBzZXR0aW5nc1ZhbHVlcyB9LCBjb250ZXh0RGF0YS5zY3JpcHQs
IGxvYWRlclByb3h5LCBkZWJ1Z2dlclByb3h5LCBEdW1teVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94
eTo6c2hhcmVkKCksIFdvcmtlclRocmVhZFN0YXJ0TW9kZTo6Tm9ybWFsLCBjb250ZXh0RGF0YS5y
ZWdpc3RyYXRpb24ua2V5LnRvcE9yaWdpbigpLnNlY3VyaXR5T3JpZ2luKCkuZ2V0KCksIGlkYkNv
bm5lY3Rpb25Qcm94eSwgc29ja2V0UHJvdmlkZXIsIEpTQzo6UnVudGltZUZsYWdzOjpjcmVhdGVB
bGxFbmFibGVkKCkpCisgICAgLCBtX3NlcnZpY2VXb3JrZXJJZGVudGlmaWVyKGNvbnRleHREYXRh
LnNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKQorICAgICwgbV9qb2JEYXRhSWRlbnRpZmllcihjb250
ZXh0RGF0YS5qb2JEYXRhSWRlbnRpZmllcikKKyAgICAsIG1fY29udGV4dERhdGEoY3Jvc3NUaHJl
YWRDb3B5KFdURk1vdmUoY29udGV4dERhdGEpKSkKKyAgICAsIG1fd29ya2VyRGF0YShjcm9zc1Ro
cmVhZENvcHkoV1RGTW92ZSh3b3JrZXJEYXRhKSkpCiAgICAgLCBtX3dvcmtlck9iamVjdFByb3h5
KER1bW15U2VydmljZVdvcmtlclRocmVhZFByb3h5OjpzaGFyZWQoKSkKICAgICAsIG1faGVhcnRC
ZWF0VGltZW91dChTV0NvbnRleHRNYW5hZ2VyOjpzaW5nbGV0b24oKS5jb25uZWN0aW9uKCktPnNo
b3VsZFVzZVNob3J0VGltZW91dCgpID8gaGVhcnRCZWF0VGltZW91dEZvclRlc3QgOiBoZWFydEJl
YXRUaW1lb3V0KQogICAgICwgbV9oZWFydEJlYXRUaW1lciB7ICp0aGlzLCAmU2VydmljZVdvcmtl
clRocmVhZDo6aGVhcnRCZWF0VGltZXJGaXJlZCB9CkBAIC05MCw4ICs5MSw4IEBAIFNlcnZpY2VX
b3JrZXJUaHJlYWQ6On5TZXJ2aWNlV29ya2VyVGhyZWFkKCkgPSBkZWZhdWx0OwogCiBSZWY8V29y
a2VyR2xvYmFsU2NvcGU+IFNlcnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZVdvcmtlckdsb2JhbFNj
b3BlKGNvbnN0IFdvcmtlclBhcmFtZXRlcnMmIHBhcmFtcywgUmVmPFNlY3VyaXR5T3JpZ2luPiYm
IG9yaWdpbiwgUmVmPFNlY3VyaXR5T3JpZ2luPiYmIHRvcE9yaWdpbikKIHsKLSAgICBSRUxFQVNF
X0FTU0VSVChtX2RhdGEpOwotICAgIHJldHVybiBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGU6OmNy
ZWF0ZSgqc3RkOjpleGNoYW5nZShtX2RhdGEsIHN0ZDo6bnVsbG9wdCksIHBhcmFtcywgV1RGTW92
ZShvcmlnaW4pLCAqdGhpcywgV1RGTW92ZSh0b3BPcmlnaW4pLCBpZGJDb25uZWN0aW9uUHJveHko
KSwgc29ja2V0UHJvdmlkZXIoKSk7CisgICAgUkVMRUFTRV9BU1NFUlQobV9jb250ZXh0RGF0YSk7
CisgICAgcmV0dXJuIFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZTo6Y3JlYXRlKCpzdGQ6OmV4Y2hh
bmdlKG1fY29udGV4dERhdGEsIHN0ZDo6bnVsbG9wdCksICpzdGQ6OmV4Y2hhbmdlKG1fd29ya2Vy
RGF0YSwgc3RkOjpudWxsb3B0KSwgcGFyYW1zLCBXVEZNb3ZlKG9yaWdpbiksICp0aGlzLCBXVEZN
b3ZlKHRvcE9yaWdpbiksIGlkYkNvbm5lY3Rpb25Qcm94eSgpLCBzb2NrZXRQcm92aWRlcigpKTsK
IH0KIAogdm9pZCBTZXJ2aWNlV29ya2VyVGhyZWFkOjpydW5FdmVudExvb3AoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRo
cmVhZC5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdv
cmtlclRocmVhZC5oCmluZGV4IGZjMmIxN2E1N2U5NjNjNDcxMzMwY2EyNmVhNWI2MmNjNzI0Yjk0
NWIuLmY4MTI5MDlkZjk1NDBmYTcwMWNlMmJjODVkODQwNjA1NzVkYzgyMWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJl
YWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNl
V29ya2VyVGhyZWFkLmgKQEAgLTc5LDcgKzc5LDcgQEAgcHJvdGVjdGVkOgogICAgIHZvaWQgcnVu
RXZlbnRMb29wKCkgb3ZlcnJpZGU7CiAKIHByaXZhdGU6Ci0gICAgV0VCQ09SRV9FWFBPUlQgU2Vy
dmljZVdvcmtlclRocmVhZChTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgU3RyaW5nJiYgdXNl
ckFnZW50LCBjb25zdCBTZXR0aW5nczo6VmFsdWVzJiwgV29ya2VyTG9hZGVyUHJveHkmLCBXb3Jr
ZXJEZWJ1Z2dlclByb3h5JiwgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqLCBTb2NrZXRQ
cm92aWRlciopOworICAgIFdFQkNPUkVfRVhQT1JUIFNlcnZpY2VXb3JrZXJUaHJlYWQoU2Vydmlj
ZVdvcmtlckNvbnRleHREYXRhJiYsIFNlcnZpY2VXb3JrZXJEYXRhJiYsIFN0cmluZyYmIHVzZXJB
Z2VudCwgY29uc3QgU2V0dGluZ3M6OlZhbHVlcyYsIFdvcmtlckxvYWRlclByb3h5JiwgV29ya2Vy
RGVidWdnZXJQcm94eSYsIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiwgU29ja2V0UHJv
dmlkZXIqKTsKIAogICAgIGJvb2wgaXNTZXJ2aWNlV29ya2VyVGhyZWFkKCkgY29uc3QgZmluYWwg
eyByZXR1cm4gdHJ1ZTsgfQogICAgIHZvaWQgZmluaXNoZWRFdmFsdWF0aW5nU2NyaXB0KCkgZmlu
YWw7CkBAIC05NSw3ICs5NSw4IEBAIHByaXZhdGU6CiAKICAgICBTZXJ2aWNlV29ya2VySWRlbnRp
ZmllciBtX3NlcnZpY2VXb3JrZXJJZGVudGlmaWVyOwogICAgIHN0ZDo6b3B0aW9uYWw8U2Vydmlj
ZVdvcmtlckpvYkRhdGFJZGVudGlmaWVyPiBtX2pvYkRhdGFJZGVudGlmaWVyOwotICAgIHN0ZDo6
b3B0aW9uYWw8U2VydmljZVdvcmtlckNvbnRleHREYXRhPiBtX2RhdGE7IC8vIEJlY29tZXMgc3Rk
OjpudWxsb3B0IGFmdGVyIHRoZSBTZXJ2aWNlV29ya2VyR2xvYmFsU2NvcGUgaGFzIGJlZW4gY3Jl
YXRlZC4KKyAgICBzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YT4gbV9jb250
ZXh0RGF0YTsgLy8gQmVjb21lcyBzdGQ6Om51bGxvcHQgYWZ0ZXIgdGhlIFNlcnZpY2VXb3JrZXJH
bG9iYWxTY29wZSBoYXMgYmVlbiBjcmVhdGVkLgorICAgIHN0ZDo6b3B0aW9uYWw8U2VydmljZVdv
cmtlckRhdGE+IG1fd29ya2VyRGF0YTsgLy8gQmVjb21lcyBzdGQ6Om51bGxvcHQgYWZ0ZXIgdGhl
IFNlcnZpY2VXb3JrZXJHbG9iYWxTY29wZSBoYXMgYmVlbiBjcmVhdGVkLgogICAgIFdvcmtlck9i
amVjdFByb3h5JiBtX3dvcmtlck9iamVjdFByb3h5OwogICAgIGJvb2wgbV9kb2VzSGFuZGxlRmV0
Y2ggeyBmYWxzZSB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZp
Y2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcAppbmRl
eCA3NjIxYjJlMDFhY2UzMzdmNTU5MGZiMDQyY2Q1MjZhODY2OTBkMWM0Li44OGViYWFkOWIwMzli
NjhlYjNmYWYzODU5NDE2ODRhMjJmN2I2MTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJl
YWRQcm94eS5jcHAKQEAgLTkzLDEzICs5MywxMyBAQCBzdGF0aWMgSGFzaFNldDxTZXJ2aWNlV29y
a2VyVGhyZWFkUHJveHkqPiYgYWxsU2VydmljZVdvcmtlclRocmVhZFByb3hpZXMoKQogICAgIHJl
dHVybiBzZXQ7CiB9CiAKLVNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eTo6U2VydmljZVdvcmtlclRo
cmVhZFByb3h5KFBhZ2VDb25maWd1cmF0aW9uJiYgcGFnZUNvbmZpZ3VyYXRpb24sIFNlcnZpY2VX
b3JrZXJDb250ZXh0RGF0YSYmIGRhdGEsIFN0cmluZyYmIHVzZXJBZ2VudCwgQ2FjaGVTdG9yYWdl
UHJvdmlkZXImIGNhY2hlU3RvcmFnZVByb3ZpZGVyLCBTdG9yYWdlQmxvY2tpbmdQb2xpY3kgc3Rv
cmFnZUJsb2NraW5nUG9saWN5KQotICAgIDogbV9wYWdlKGNyZWF0ZVBhZ2VGb3JTZXJ2aWNlV29y
a2VyKFdURk1vdmUocGFnZUNvbmZpZ3VyYXRpb24pLCBkYXRhLCBzdG9yYWdlQmxvY2tpbmdQb2xp
Y3kpKQorU2VydmljZVdvcmtlclRocmVhZFByb3h5OjpTZXJ2aWNlV29ya2VyVGhyZWFkUHJveHko
UGFnZUNvbmZpZ3VyYXRpb24mJiBwYWdlQ29uZmlndXJhdGlvbiwgU2VydmljZVdvcmtlckNvbnRl
eHREYXRhJiYgY29udGV4dERhdGEsIFNlcnZpY2VXb3JrZXJEYXRhJiYgd29ya2VyRGF0YSwgU3Ry
aW5nJiYgdXNlckFnZW50LCBDYWNoZVN0b3JhZ2VQcm92aWRlciYgY2FjaGVTdG9yYWdlUHJvdmlk
ZXIsIFN0b3JhZ2VCbG9ja2luZ1BvbGljeSBzdG9yYWdlQmxvY2tpbmdQb2xpY3kpCisgICAgOiBt
X3BhZ2UoY3JlYXRlUGFnZUZvclNlcnZpY2VXb3JrZXIoV1RGTW92ZShwYWdlQ29uZmlndXJhdGlv
biksIGNvbnRleHREYXRhLCBzdG9yYWdlQmxvY2tpbmdQb2xpY3kpKQogICAgICwgbV9kb2N1bWVu
dCgqbV9wYWdlLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpKQogI2lmIEVOQUJMRShSRU1PVEVfSU5T
UEVDVE9SKQotICAgICwgbV9yZW1vdGVEZWJ1Z2dhYmxlKG1ha2VVbmlxdWU8U2VydmljZVdvcmtl
ckRlYnVnZ2FibGU+KCp0aGlzLCBkYXRhKSkKKyAgICAsIG1fcmVtb3RlRGVidWdnYWJsZShtYWtl
VW5pcXVlPFNlcnZpY2VXb3JrZXJEZWJ1Z2dhYmxlPigqdGhpcywgY29udGV4dERhdGEpKQogI2Vu
ZGlmCi0gICAgLCBtX3NlcnZpY2VXb3JrZXJUaHJlYWQoU2VydmljZVdvcmtlclRocmVhZDo6Y3Jl
YXRlKFdURk1vdmUoZGF0YSksIFdURk1vdmUodXNlckFnZW50KSwgbV9kb2N1bWVudC0+c2V0dGlu
Z3NWYWx1ZXMoKSwgKnRoaXMsICp0aGlzLCBpZGJDb25uZWN0aW9uUHJveHkobV9kb2N1bWVudCks
IG1fZG9jdW1lbnQtPnNvY2tldFByb3ZpZGVyKCkpKQorICAgICwgbV9zZXJ2aWNlV29ya2VyVGhy
ZWFkKFNlcnZpY2VXb3JrZXJUaHJlYWQ6OmNyZWF0ZShXVEZNb3ZlKGNvbnRleHREYXRhKSwgV1RG
TW92ZSh3b3JrZXJEYXRhKSwgV1RGTW92ZSh1c2VyQWdlbnQpLCBtX2RvY3VtZW50LT5zZXR0aW5n
c1ZhbHVlcygpLCAqdGhpcywgKnRoaXMsIGlkYkNvbm5lY3Rpb25Qcm94eShtX2RvY3VtZW50KSwg
bV9kb2N1bWVudC0+c29ja2V0UHJvdmlkZXIoKSkpCiAgICAgLCBtX2NhY2hlU3RvcmFnZVByb3Zp
ZGVyKGNhY2hlU3RvcmFnZVByb3ZpZGVyKQogICAgICwgbV9pbnNwZWN0b3JQcm94eSgqdGhpcykK
IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1Nl
cnZpY2VXb3JrZXJUaHJlYWRQcm94eS5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmgKaW5kZXggMmM1YTI4OTI4ZmFlMDBh
NDhmZThkYWI5NjhhODk5N2ZjM2RhZWNjNy4uZTI4ZDllNDc0NjU0MDM0ZmM1YzdhYjlkZjMzZjI2
MzZlNTliOTIwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL2Nv
bnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmgKQEAgLTg1LDcg
Kzg1LDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgbGFzdE5hdmlnYXRpb25X
YXNBcHBJbml0aWF0ZWQoKTsKIAogcHJpdmF0ZToKLSAgICBXRUJDT1JFX0VYUE9SVCBTZXJ2aWNl
V29ya2VyVGhyZWFkUHJveHkoUGFnZUNvbmZpZ3VyYXRpb24mJiwgU2VydmljZVdvcmtlckNvbnRl
eHREYXRhJiYsIFN0cmluZyYmIHVzZXJBZ2VudCwgQ2FjaGVTdG9yYWdlUHJvdmlkZXImLCBTdG9y
YWdlQmxvY2tpbmdQb2xpY3kpOworICAgIFdFQkNPUkVfRVhQT1JUIFNlcnZpY2VXb3JrZXJUaHJl
YWRQcm94eShQYWdlQ29uZmlndXJhdGlvbiYmLCBTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwg
U2VydmljZVdvcmtlckRhdGEmJiwgU3RyaW5nJiYgdXNlckFnZW50LCBDYWNoZVN0b3JhZ2VQcm92
aWRlciYsIFN0b3JhZ2VCbG9ja2luZ1BvbGljeSk7CiAKICAgICBXRUJDT1JFX0VYUE9SVCBzdGF0
aWMgdm9pZCBuZXR3b3JrU3RhdGVDaGFuZ2VkKGJvb2wgaXNPbkxpbmUpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCmluZGV4IDU2
OWUyZjlmNDhmY2ExYTYyNGFjNGFlNjhiNzlhMWVlYmQ4NzA5NGEuLmNjYjk1YmQyNWJiNDNhOWNm
NGE4ZjI4NDIyZjNkMjIwYzJmOTY2MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCkBAIC03MjcsMTAgKzcyNywxMCBAQCB2b2lk
IFNXU2VydmVyOjppbnN0YWxsQ29udGV4dERhdGEoY29uc3QgU2VydmljZVdvcmtlckNvbnRleHRE
YXRhJiBkYXRhKQogICAgIHJlZ2lzdHJhdGlvbi0+c2V0UHJlSW5zdGFsbGF0aW9uV29ya2VyKHdv
cmtlci5wdHIoKSk7CiAgICAgd29ya2VyLT5zZXRTdGF0ZShTV1NlcnZlcldvcmtlcjo6U3RhdGU6
OlJ1bm5pbmcpOwogICAgIGF1dG8gdXNlckFnZW50ID0gd29ya2VyLT51c2VyQWdlbnQoKTsKLSAg
ICBhdXRvIHJlc3VsdCA9IG1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLmFkZChkYXRhLnNl
cnZpY2VXb3JrZXJJZGVudGlmaWVyLCBXVEZNb3ZlKHdvcmtlcikpOworICAgIGF1dG8gcmVzdWx0
ID0gbV9ydW5uaW5nT3JUZXJtaW5hdGluZ1dvcmtlcnMuYWRkKGRhdGEuc2VydmljZVdvcmtlcklk
ZW50aWZpZXIsIHdvcmtlci5jb3B5UmVmKCkpOwogICAgIEFTU0VSVF9VTlVTRUQocmVzdWx0LCBy
ZXN1bHQuaXNOZXdFbnRyeSk7CiAKLSAgICBjb25uZWN0aW9uLT5pbnN0YWxsU2VydmljZVdvcmtl
ckNvbnRleHQoZGF0YSwgdXNlckFnZW50KTsKKyAgICBjb25uZWN0aW9uLT5pbnN0YWxsU2Vydmlj
ZVdvcmtlckNvbnRleHQoZGF0YSwgd29ya2VyLT5kYXRhKCksIHVzZXJBZ2VudCk7CiB9CiAKIHZv
aWQgU1dTZXJ2ZXI6OnJ1blNlcnZpY2VXb3JrZXJJZk5lY2Vzc2FyeShTZXJ2aWNlV29ya2VySWRl
bnRpZmllciBpZGVudGlmaWVyLCBSdW5TZXJ2aWNlV29ya2VyQ2FsbGJhY2smJiBjYWxsYmFjaykK
QEAgLTc5OCw3ICs3OTgsNyBAQCBib29sIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VyKFNlcnZp
Y2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiAgICAgYXV0byogY29udGV4dENvbm5lY3Rp
b24gPSB3b3JrZXItPmNvbnRleHRDb25uZWN0aW9uKCk7CiAgICAgQVNTRVJUKGNvbnRleHRDb25u
ZWN0aW9uKTsKIAotICAgIGNvbnRleHRDb25uZWN0aW9uLT5pbnN0YWxsU2VydmljZVdvcmtlckNv
bnRleHQod29ya2VyLT5jb250ZXh0RGF0YSgpLCB3b3JrZXItPnVzZXJBZ2VudCgpKTsKKyAgICBj
b250ZXh0Q29ubmVjdGlvbi0+aW5zdGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0KHdvcmtlci0+Y29u
dGV4dERhdGEoKSwgd29ya2VyLT5kYXRhKCksIHdvcmtlci0+dXNlckFnZW50KCkpOwogCiAgICAg
cmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZp
Y2Uvc2VydmVyL1NXU2VydmVyUmVnaXN0cmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJSZWdpc3RyYXRpb24uY3BwCmluZGV4IGQ4Y2E2NWY4
ZWVmNmRjNDY4OWVkNmM4ZTA1ZWE4NjM0YWE4OTU5MWQuLjgxYjBlODY4ZTUxNTYxODZhMzQwZjMw
Yjc5MTI1NjNjMjQwNjU3YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXJSZWdpc3RyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJSZWdpc3RyYXRpb24uY3BwCkBAIC0yMzMs
NyArMjMzLDcgQEAgYm9vbCBTV1NlcnZlclJlZ2lzdHJhdGlvbjo6dHJ5Q2xlYXIoKQogdm9pZCBT
V1NlcnZlclJlZ2lzdHJhdGlvbjo6Y2xlYXIoKQogewogICAgIGlmIChtX3ByZUluc3RhbGxhdGlv
bldvcmtlcikgewotICAgICAgICBBU1NFUlQobV9wcmVJbnN0YWxsYXRpb25Xb3JrZXItPnN0YXRl
KCkgPT0gU2VydmljZVdvcmtlclN0YXRlOjpSZWR1bmRhbnQpOworICAgICAgICBBU1NFUlQobV9w
cmVJbnN0YWxsYXRpb25Xb3JrZXItPnN0YXRlKCkgPT0gU2VydmljZVdvcmtlclN0YXRlOjpQYXJz
ZWQpOwogICAgICAgICBtX3ByZUluc3RhbGxhdGlvbldvcmtlci0+dGVybWluYXRlKCk7CiAgICAg
ICAgIG1fcHJlSW5zdGFsbGF0aW9uV29ya2VyID0gbnVsbHB0cjsKICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyVG9Db250ZXh0
Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1Nl
cnZlclRvQ29udGV4dENvbm5lY3Rpb24uaAppbmRleCAxYzdmMzlkYjdjNmRlY2VlMzRlZTNlMDU0
ODY3MTllZmJiYjc4ODY5Li5kNzRhNjkwMDgxOWE2MzNjNDYwYTg3NTY0MTgwZGRjNDJhZDQ5N2Zj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2Vy
dmVyVG9Db250ZXh0Q29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmgKQEAgLTUxLDcgKzUxLDcg
QEAgcHVibGljOgogICAgIFNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbklkZW50aWZpZXIgaWRl
bnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCiAgICAgLy8gTWVzc2Fn
ZXMgdG8gdGhlIFNXIGhvc3QgcHJvY2VzcwotICAgIHZpcnR1YWwgdm9pZCBpbnN0YWxsU2Vydmlj
ZVdvcmtlckNvbnRleHQoY29uc3QgU2VydmljZVdvcmtlckNvbnRleHREYXRhJiwgY29uc3QgU3Ry
aW5nJiB1c2VyQWdlbnQpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgaW5zdGFsbFNlcnZpY2VXb3Jr
ZXJDb250ZXh0KGNvbnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYsIGNvbnN0IFNlcnZpY2VX
b3JrZXJEYXRhJiwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQpID0gMDsKICAgICB2aXJ0dWFsIHZv
aWQgdXBkYXRlQXBwSW5pdGlhdGVkVmFsdWUoU2VydmljZVdvcmtlcklkZW50aWZpZXIsIExhc3RO
YXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGZpcmVJbnN0
YWxsRXZlbnQoU2VydmljZVdvcmtlcklkZW50aWZpZXIpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQg
ZmlyZUFjdGl2YXRlRXZlbnQoU2VydmljZVdvcmtlcklkZW50aWZpZXIpID0gMDsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtl
ci5jcHAKaW5kZXggZTk4ZjczYjA2NTM4MGQwMzE5YWRmZDE4ZGY3OGY2YTJmMDI1OGI3MS4uMzc2
ZmI2ZDIyNjIwODc0M2EwMTY1YzRhOGVkYWYzZjExZjFlMDNiZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAK
QEAgLTU0LDcgKzU0LDcgQEAgU1dTZXJ2ZXJXb3JrZXI6OlNXU2VydmVyV29ya2VyKFNXU2VydmVy
JiBzZXJ2ZXIsIFNXU2VydmVyUmVnaXN0cmF0aW9uJiByZWdpc3RyYXQKICAgICA6IG1fc2VydmVy
KG1ha2VXZWFrUHRyKHNlcnZlcikpCiAgICAgLCBtX3JlZ2lzdHJhdGlvbktleShyZWdpc3RyYXRp
b24ua2V5KCkpCiAgICAgLCBtX3JlZ2lzdHJhdGlvbihtYWtlV2Vha1B0cihyZWdpc3RyYXRpb24p
KQotICAgICwgbV9kYXRhIHsgaWRlbnRpZmllciwgc2NyaXB0VVJMLCBTZXJ2aWNlV29ya2VyU3Rh
dGU6OlJlZHVuZGFudCwgdHlwZSwgcmVnaXN0cmF0aW9uLmlkZW50aWZpZXIoKSB9CisgICAgLCBt
X2RhdGEgeyBpZGVudGlmaWVyLCBzY3JpcHRVUkwsIFNlcnZpY2VXb3JrZXJTdGF0ZTo6UGFyc2Vk
LCB0eXBlLCByZWdpc3RyYXRpb24uaWRlbnRpZmllcigpIH0KICAgICAsIG1fc2NyaXB0KHNjcmlw
dCkKICAgICAsIG1fY2VydGlmaWNhdGVJbmZvKGNlcnRpZmljYXRlSW5mbykKICAgICAsIG1fY29u
dGVudFNlY3VyaXR5UG9saWN5KGNvbnRlbnRTZWN1cml0eVBvbGljeSkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29u
dGV4dENvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNl
V29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAKaW5kZXggZTkwMmVjMDc1
ODA1MGU5OWY2MDE3ZGJmNzEwZGE4MzU1OWFkYzM2Zi4uMDYwMjhlOTE0MzlhOWQxM2MwMjY0ZWMz
YjlmMmViNWExZjA2Zjg1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9D
b250ZXh0Q29ubmVjdGlvbi5jcHAKQEAgLTg3LDkgKzg3LDkgQEAgdm9pZCBXZWJTV1NlcnZlclRv
Q29udGV4dENvbm5lY3Rpb246OnBvc3RNZXNzYWdlVG9TZXJ2aWNlV29ya2VyQ2xpZW50KGNvbnN0
IFNlcnYKICAgICAgICAgY29ubmVjdGlvbi0+cG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGll
bnQoZGVzdGluYXRpb25JZGVudGlmaWVyLmNvbnRleHRJZGVudGlmaWVyLCBtZXNzYWdlLCBzb3Vy
Y2VJZGVudGlmaWVyLCBzb3VyY2VPcmlnaW4pOwogfQogCi12b2lkIFdlYlNXU2VydmVyVG9Db250
ZXh0Q29ubmVjdGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0KGNvbnN0IFNlcnZpY2VX
b3JrZXJDb250ZXh0RGF0YSYgZGF0YSwgY29uc3QgU3RyaW5nJiB1c2VyQWdlbnQpCit2b2lkIFdl
YlNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXJDb250ZXh0
KGNvbnN0IFNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSYgY29udGV4dERhdGEsIGNvbnN0IFNlcnZp
Y2VXb3JrZXJEYXRhJiB3b3JrZXJEYXRhLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCkKIHsKLSAg
ICBzZW5kKE1lc3NhZ2VzOjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6SW5zdGFsbFNl
cnZpY2VXb3JrZXIgeyBkYXRhLCB1c2VyQWdlbnQgfSk7CisgICAgc2VuZChNZXNzYWdlczo6V2Vi
U1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246Okluc3RhbGxTZXJ2aWNlV29ya2VyIHsgY29udGV4
dERhdGEsIHdvcmtlckRhdGEsIHVzZXJBZ2VudCB9KTsKIH0KIAogdm9pZCBXZWJTV1NlcnZlclRv
Q29udGV4dENvbm5lY3Rpb246OnVwZGF0ZUFwcEluaXRpYXRlZFZhbHVlKFNlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyIHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpMYXN0TmF2aWdhdGlv
bldhc0FwcEluaXRpYXRlZCBsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZl
clRvQ29udGV4dENvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2Vy
dmljZVdvcmtlci9XZWJTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb24uaAppbmRleCBhZTNhMWE1
Njg2ZmFhNWI3ZWZmNDRkZjgwNTM3ZWFmNzdmMThmZTczLi45NDMzYmY1M2EzNmU1Yzg4MjY2ZTY1
ODRlNWI5NmY5MWFjZDgwMTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uLmgKKysrIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyVG9D
b250ZXh0Q29ubmVjdGlvbi5oCkBAIC04NSw3ICs4NSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBw
b3N0TWVzc2FnZVRvU2VydmljZVdvcmtlckNsaWVudChjb25zdCBXZWJDb3JlOjpTZXJ2aWNlV29y
a2VyQ2xpZW50SWRlbnRpZmllciYgZGVzdGluYXRpb25JZGVudGlmaWVyLCBjb25zdCBXZWJDb3Jl
OjpNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cyYsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlm
aWVyIHNvdXJjZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlT3JpZ2luKTsKIAogICAg
IC8vIE1lc3NhZ2VzIHRvIHRoZSBTVyBob3N0IFdlYlByb2Nlc3MKLSAgICB2b2lkIGluc3RhbGxT
ZXJ2aWNlV29ya2VyQ29udGV4dChjb25zdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyQ29udGV4dERh
dGEmLCBjb25zdCBTdHJpbmcmIHVzZXJBZ2VudCkgZmluYWw7CisgICAgdm9pZCBpbnN0YWxsU2Vy
dmljZVdvcmtlckNvbnRleHQoY29uc3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckNvbnRleHREYXRh
JiwgY29uc3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckRhdGEmLCBjb25zdCBTdHJpbmcmIHVzZXJB
Z2VudCkgZmluYWw7CiAgICAgdm9pZCB1cGRhdGVBcHBJbml0aWF0ZWRWYWx1ZShXZWJDb3JlOjpT
ZXJ2aWNlV29ya2VySWRlbnRpZmllciwgV2ViQ29yZTo6TGFzdE5hdmlnYXRpb25XYXNBcHBJbml0
aWF0ZWQpIGZpbmFsOwogICAgIHZvaWQgZmlyZUluc3RhbGxFdmVudChXZWJDb3JlOjpTZXJ2aWNl
V29ya2VySWRlbnRpZmllcikgZmluYWw7CiAgICAgdm9pZCBmaXJlQWN0aXZhdGVFdmVudChXZWJD
b3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllcikgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5j
cHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2Vy
Q29ubmVjdGlvbi5jcHAKaW5kZXggYjU0NDAzOWI0NzlkODJiZDhiZjExNDk2NzdkYjU5MGVmNDY4
ZmZjYy4uZWNjOTUzOTgxYjZjNjQ1ZGExYWU3ZDhjYmU2MjJkNzA2MDZlN2Y0OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNv
bm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNX
Q29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmNwcApAQCAtMTQxLDcgKzE0MSw3IEBAIHZvaWQgV2Vi
U1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246OnVwZGF0ZUFwcEluaXRpYXRlZFZhbHVlKFNlcnZp
Y2VXb3JrZXJJZGVudGlmCiAgICAgICAgIHNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eS0+c2V0TGFz
dE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQobGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQg
PT0gV2ViQ29yZTo6TGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQ6Olllcyk7CiB9CiAKLXZv
aWQgV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246Omluc3RhbGxTZXJ2aWNlV29ya2VyKFNl
cnZpY2VXb3JrZXJDb250ZXh0RGF0YSYmIGRhdGEsIFN0cmluZyYmIHVzZXJBZ2VudCkKK3ZvaWQg
V2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246Omluc3RhbGxTZXJ2aWNlV29ya2VyKFNlcnZp
Y2VXb3JrZXJDb250ZXh0RGF0YSYmIGNvbnRleHREYXRhLCBTZXJ2aWNlV29ya2VyRGF0YSYmIHdv
cmtlckRhdGEsIFN0cmluZyYmIHVzZXJBZ2VudCkKIHsKICAgICBhdXRvIHBhZ2VDb25maWd1cmF0
aW9uID0gcGFnZUNvbmZpZ3VyYXRpb25XaXRoRW1wdHlDbGllbnRzKFdlYlByb2Nlc3M6OnNpbmds
ZXRvbigpLnNlc3Npb25JRCgpKTsKIApAQCAtMTU5LDExICsxNTksMTEgQEAgdm9pZCBXZWJTV0Nv
bnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdGFsbFNlcnZpY2VXb3JrZXIoU2VydmljZVdvcmtl
ckNvbnRleHREYXQKICAgICBwYWdlQ29uZmlndXJhdGlvbi5sb2FkZXJDbGllbnRGb3JNYWluRnJh
bWUgPSBtYWtlVW5pcXVlUmVmPFNlcnZpY2VXb3JrZXJGcmFtZUxvYWRlckNsaWVudD4obV93ZWJQ
YWdlUHJveHlJRCwgbV9wYWdlSUQsIEZyYW1lSWRlbnRpZmllcjo6Z2VuZXJhdGUoKSwgZWZmZWN0
aXZlVXNlckFnZW50KTsKIAogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAotICAgIGF1dG8gc2Vy
dmljZVdvcmtlcklkZW50aWZpZXIgPSBkYXRhLnNlcnZpY2VXb3JrZXJJZGVudGlmaWVyOworICAg
IGF1dG8gc2VydmljZVdvcmtlcklkZW50aWZpZXIgPSBjb250ZXh0RGF0YS5zZXJ2aWNlV29ya2Vy
SWRlbnRpZmllcjsKICNlbmRpZgogICAgIAotICAgIGF1dG8gbGFzdE5hdmlnYXRpb25XYXNBcHBJ
bml0aWF0ZWQgPSBkYXRhLmxhc3ROYXZpZ2F0aW9uV2FzQXBwSW5pdGlhdGVkOwotICAgIGF1dG8g
c2VydmljZVdvcmtlclRocmVhZFByb3h5ID0gU2VydmljZVdvcmtlclRocmVhZFByb3h5OjpjcmVh
dGUoV1RGTW92ZShwYWdlQ29uZmlndXJhdGlvbiksIFdURk1vdmUoZGF0YSksIFdURk1vdmUoZWZm
ZWN0aXZlVXNlckFnZW50KSwgV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuY2FjaGVTdG9yYWdlUHJv
dmlkZXIoKSwgbV9zdG9yYWdlQmxvY2tpbmdQb2xpY3kpOworICAgIGF1dG8gbGFzdE5hdmlnYXRp
b25XYXNBcHBJbml0aWF0ZWQgPSBjb250ZXh0RGF0YS5sYXN0TmF2aWdhdGlvbldhc0FwcEluaXRp
YXRlZDsKKyAgICBhdXRvIHNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eSA9IFNlcnZpY2VXb3JrZXJU
aHJlYWRQcm94eTo6Y3JlYXRlKFdURk1vdmUocGFnZUNvbmZpZ3VyYXRpb24pLCBXVEZNb3ZlKGNv
bnRleHREYXRhKSwgV1RGTW92ZSh3b3JrZXJEYXRhKSwgV1RGTW92ZShlZmZlY3RpdmVVc2VyQWdl
bnQpLCBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5jYWNoZVN0b3JhZ2VQcm92aWRlcigpLCBtX3N0
b3JhZ2VCbG9ja2luZ1BvbGljeSk7CiAKICAgICBpZiAobGFzdE5hdmlnYXRpb25XYXNBcHBJbml0
aWF0ZWQpCiAgICAgICAgIHNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eS0+c2V0TGFzdE5hdmlnYXRp
b25XYXNBcHBJbml0aWF0ZWQobGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQgPT0gV2ViQ29y
ZTo6TGFzdE5hdmlnYXRpb25XYXNBcHBJbml0aWF0ZWQ6Olllcyk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlv
bi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdl
ckNvbm5lY3Rpb24uaAppbmRleCA4YmNmZDJjNGJkYzZiYjlkZThiZGJkM2QzNjkwZWNhZWI5ZTA3
N2NmLi4wNmIzMjVjNTBlNzQ0MjQxZDQ3ODUxZjEwNzk1ZDBiNmVkMDRlMzcwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29u
bmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29u
dGV4dE1hbmFnZXJDb25uZWN0aW9uLmgKQEAgLTg2LDcgKzg2LDcgQEAgcHJpdmF0ZToKICAgICAv
LyBJUEMgbWVzc2FnZXMuCiAgICAgdm9pZCBzZXJ2aWNlV29ya2VyU3RhcnRlZChzdGQ6Om9wdGlv
bmFsPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJKb2JEYXRhSWRlbnRpZmllcj4sIFdlYkNvcmU6OlNl
cnZpY2VXb3JrZXJJZGVudGlmaWVyLCBib29sIGRvZXNIYW5kbGVGZXRjaCkgZmluYWw7CiAgICAg
dm9pZCBzZXJ2aWNlV29ya2VyRmFpbGVkVG9TdGFydChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNl
cnZpY2VXb3JrZXJKb2JEYXRhSWRlbnRpZmllcj4sIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVu
dGlmaWVyLCBjb25zdCBTdHJpbmcmIGV4Y2VwdGlvbk1lc3NhZ2UpIGZpbmFsOwotICAgIHZvaWQg
aW5zdGFsbFNlcnZpY2VXb3JrZXIoV2ViQ29yZTo6U2VydmljZVdvcmtlckNvbnRleHREYXRhJiYs
IFN0cmluZyYmIHVzZXJBZ2VudCk7CisgICAgdm9pZCBpbnN0YWxsU2VydmljZVdvcmtlcihXZWJD
b3JlOjpTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEmJiwgV2ViQ29yZTo6U2VydmljZVdvcmtlckRh
dGEmJiwgU3RyaW5nJiYgdXNlckFnZW50KTsKICAgICB2b2lkIHVwZGF0ZUFwcEluaXRpYXRlZFZh
bHVlKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpMYXN0TmF2aWdh
dGlvbldhc0FwcEluaXRpYXRlZCk7CiAgICAgdm9pZCBzdGFydEZldGNoKFdlYkNvcmU6OlNXU2Vy
dmVyQ29ubmVjdGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVy
LCBXZWJDb3JlOjpGZXRjaElkZW50aWZpZXIsIFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYmLCBX
ZWJDb3JlOjpGZXRjaE9wdGlvbnMmJiwgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmLCBTdHJpbmcm
JiByZWZlcnJlcik7CiAgICAgdm9pZCBjYW5jZWxGZXRjaChXZWJDb3JlOjpTV1NlcnZlckNvbm5l
Y3Rpb25JZGVudGlmaWVyLCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgV2ViQ29y
ZTo6RmV0Y2hJZGVudGlmaWVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rp
b24ubWVzc2FnZXMuaW4KaW5kZXggM2UyMGRlMzU0YmM0M2Q4NGFiNDkwNDIzNDVjOTdlYjkyZWVm
M2Y2NC4uMmFmNDg5ZDUxNmE0ZWM2OTZiYWUwZmEyNTI4NzkyN2M0ZGNmNDgyNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0TWFuYWdlckNv
bm5lY3Rpb24ubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3Jh
Z2UvV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4KQEAgLTIzLDcgKzIz
LDcgQEAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAKIG1lc3NhZ2VzIC0+IFdlYlNXQ29u
dGV4dE1hbmFnZXJDb25uZWN0aW9uIE5vdFJlZkNvdW50ZWQgewotICAgIEluc3RhbGxTZXJ2aWNl
V29ya2VyKHN0cnVjdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyQ29udGV4dERhdGEgY29udGV4dERh
dGEsIFN0cmluZyB1c2VyQWdlbnQpCisgICAgSW5zdGFsbFNlcnZpY2VXb3JrZXIoc3RydWN0IFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJDb250ZXh0RGF0YSBjb250ZXh0RGF0YSwgc3RydWN0IFdlYkNv
cmU6OlNlcnZpY2VXb3JrZXJEYXRhIHdvcmtlckRhdGEsIFN0cmluZyB1c2VyQWdlbnQpCiAgICAg
VXBkYXRlQXBwSW5pdGlhdGVkVmFsdWUoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIg
c2VydmljZVdvcmtlcklkZW50aWZpZXIsIGVudW06Ym9vbCBXZWJDb3JlOjpMYXN0TmF2aWdhdGlv
bldhc0FwcEluaXRpYXRlZCBsYXN0TmF2aWdhdGlvbldhc0FwcEluaXRpYXRlZCkKICAgICBTdGFy
dEZldGNoKFdlYkNvcmU6OlNXU2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXIgc2VydmVyQ29ubmVj
dGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHNlcnZpY2VX
b3JrZXJJZGVudGlmaWVyLCBXZWJDb3JlOjpGZXRjaElkZW50aWZpZXIgZmV0Y2hJZGVudGlmaWVy
LCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgc3RydWN0IFdlYkNvcmU6OkZldGNo
T3B0aW9ucyBvcHRpb25zLCBJUEM6OkZvcm1EYXRhUmVmZXJlbmNlIHJlcXVlc3RCb2R5LCBTdHJp
bmcgcmVmZXJyZXIpCiAgICAgQ2FuY2VsRmV0Y2goV2ViQ29yZTo6U1dTZXJ2ZXJDb25uZWN0aW9u
SWRlbnRpZmllciBzZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllciwgV2ViQ29yZTo6U2VydmljZVdv
cmtlcklkZW50aWZpZXIgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIFdlYkNvcmU6OkZldGNoSWRl
bnRpZmllciBmZXRjaElkZW50aWZpZXIpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRl
eCA0ZGNlODliOGRjMzE1OTRkZTAwNzYyMWVkOGQ2ZGI2M2I1OTBmZDk4Li5hNjhkMTlhZTMxNGEy
NGFlOWJhZGRkNDM4MGVhMzU1YTdlNmZiMDhmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0wOC0zMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgorCisgICAgICAgIEFkZCBzdXBwb3J0IGZvciBTZXJ2aWNlV29ya2VyR2xvYmFsU2Nv
cGUuc2VydmljZVdvcmtlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MjI5NzIwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgWW91ZW5uIEZhYmxldC4KKwor
ICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0cyB0aGF0IGFyZSBub3cgcGFzc2luZy4KKworICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5
L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3
b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhwZWN0ZWQudHh0OgorCiAyMDIxLTA4LTMx
ICBNYXJjb3MgQ2FjZXJlcyAgPG1hcmNvc0BtYXJjb3NjLmNvbT4KIAogICAgICAgICBbUGF5bWVu
dCBSZXF1ZXN0XSBDYWxsaW5nIFBheW1lbnRSZXF1ZXN0J3Mgc2hvdygpIHNob3VsZCBjb25zdW1l
IHVzZXIgYWN0aXZhdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9u
cyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggYzIzNzIzNTFmZmIxMWZmZTFm
MDkwODE5YmRjZDU3ZTU1MjdiNDFkYS4uMDdiZTdjOGFiYmUzNjI3MDQ3NzY0OWU4MzRlNmY2ZWJk
MGE1MzllNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9M
YXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC00MDcsNiArNDA3LDcgQEAgaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1lbWJlZGRlci1wb2xpY3kv
YmxvYi5odHRwcy5odG0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9z
cy1vcmlnaW4tZW1iZWRkZXItcG9saWN5L3JlcG9ydGluZy10by1mcmFtZS1vd25lci5odHRwcy5o
dG1sIFsgRHVtcEpTQ29uc29sZUxvZ0luU3RkRXJyIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9jcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeS9uYXZpZ2F0ZS10by1hYm91
dGJsYW5rLmh0dHBzLmh0bWwgWyBEdW1wSlNDb25zb2xlTG9nSW5TdGRFcnIgXQogaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5L25h
dmlnYXRlLXRvcC10by1hYm91dGJsYW5rLmh0dHBzLmh0bWwgWyBEdW1wSlNDb25zb2xlTG9nSW5T
dGRFcnIgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdp
bi1vcGVuZXItcG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMuaHRtbCBbIER1bXBKU0NvbnNv
bGVMb2dJblN0ZEVyciBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2Vt
YW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvdGhlLWlmcmFtZS1lbGVtZW50L2lmcmFtZS1uZXR3b3Jr
LWVycm9yLnN1Yi5odG1sIFsgRHVtcEpTQ29uc29sZUxvZ0luU3RkRXJyIF0KIGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mvc2NyaXB0aW5nLTEvdGhlLXNjcmlw
dC1lbGVtZW50L2Nzcy1tb2R1bGUvaW50ZWdyaXR5Lmh0bWwgWyBEdW1wSlNDb25zb2xlTG9nSW5T
dGRFcnIgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9z
Y3JpcHRpbmctMS90aGUtc2NyaXB0LWVsZW1lbnQvY3NzLW1vZHVsZS9pbXBvcnQtY3NzLW1vZHVs
ZS1iYXNpYy5odG1sIFsgRHVtcEpTQ29uc29sZUxvZ0luU3RkRXJyIF0KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmln
aW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jcm9zcy1vcmln
aW4tb3BlbmVyLXBvbGljeS9wb3B1cC1jb29wLWJ5LXN3Lmh0dHBzLWV4cGVjdGVkLnR4dAppbmRl
eCAyZGNjNjE3YzQ5NjA4NTQyNTlkYjZhNjIyZGY1NWFhYWY5YWIzMGEyLi4zYmU2YzM5MzUwZWIw
NWE4Y2MzNzcwYjhkYTRlZGMwZGMwZDJjM2I0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xp
Y3kvcG9wdXAtY29vcC1ieS1zdy5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Nyb3NzLW9yaWdpbi1vcGVuZXIt
cG9saWN5L3BvcHVwLWNvb3AtYnktc3cuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDEyICsxLDEw
IEBACiAKLUhhcm5lc3MgRXJyb3IgKFRJTUVPVVQpLCBtZXNzYWdlID0gbnVsbAotCi1USU1FT1VU
IG9wZW5lcjpiYXNpYywgb3BlbmVlOmJhc2ljLCBzdzpiYXNpYyBUZXN0IHRpbWVkIG91dAotTk9U
UlVOIG9wZW5lcjpiYXNpYywgb3BlbmVlOmJhc2ljLCBzdzpjb2kKLU5PVFJVTiBvcGVuZXI6YmFz
aWMsIG9wZW5lZTpjb2ksIHN3OmJhc2ljCi1OT1RSVU4gb3BlbmVyOmJhc2ljLCBvcGVuZWU6Y29p
LCBzdzpjb2kKLU5PVFJVTiBvcGVuZXI6Y29pLCBvcGVuZWU6YmFzaWMsIHN3OmJhc2ljCi1OT1RS
VU4gb3BlbmVyOmNvaSwgb3BlbmVlOmJhc2ljLCBzdzpjb2kKLU5PVFJVTiBvcGVuZXI6Y29pLCBv
cGVuZWU6Y29pLCBzdzpiYXNpYwotTk9UUlVOIG9wZW5lcjpjb2ksIG9wZW5lZTpjb2ksIHN3OmNv
aQorUEFTUyBvcGVuZXI6YmFzaWMsIG9wZW5lZTpiYXNpYywgc3c6YmFzaWMKK1BBU1Mgb3BlbmVy
OmJhc2ljLCBvcGVuZWU6YmFzaWMsIHN3OmNvaQorUEFTUyBvcGVuZXI6YmFzaWMsIG9wZW5lZTpj
b2ksIHN3OmJhc2ljCitQQVNTIG9wZW5lcjpiYXNpYywgb3BlbmVlOmNvaSwgc3c6Y29pCitQQVNT
IG9wZW5lcjpjb2ksIG9wZW5lZTpiYXNpYywgc3c6YmFzaWMKK1BBU1Mgb3BlbmVyOmNvaSwgb3Bl
bmVlOmJhc2ljLCBzdzpjb2kKK1BBU1Mgb3BlbmVyOmNvaSwgb3BlbmVlOmNvaSwgc3c6YmFzaWMK
K1BBU1Mgb3BlbmVyOmNvaSwgb3BlbmVlOmNvaSwgc3c6Y29pCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2dsb2JhbC1zZXJ2aWNld29ya2VyLmh0dHBzLmFueS5zZXJ2aWNld29ya2Vy
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2dsb2JhbC1zZXJ2aWNld29ya2VyLmh0
dHBzLmFueS5zZXJ2aWNld29ya2VyLWV4cGVjdGVkLnR4dAppbmRleCA3ZTQyODQ3N2EzNzNhZGI5
NTI1NDBhNDliM2Y0ZGJjZjljNTNjZGEyLi43ZDRiY2Q4NDNhNmYyMjQ3YjM4NzgxMDlkZTMxYmQw
ZjE1ZjczNzgyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9nbG9iYWwtc2VydmljZXdv
cmtlci5odHRwcy5hbnkuc2VydmljZXdvcmtlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvZ2xvYmFsLXNlcnZpY2V3b3JrZXIuaHR0cHMuYW55LnNlcnZpY2V3b3JrZXItZXhw
ZWN0ZWQudHh0CkBAIC0xLDYgKzEsNiBAQAogCi1GQUlMIEZpcnN0IHJ1biBhc3NlcnRfdHJ1ZTog
c2VsZi5zZXJ2aWNlV29ya2VyIGV4aXN0cyBleHBlY3RlZCB0cnVlIGdvdCBmYWxzZQotRkFJTCBD
YW4gcG9zdCBtZXNzYWdlIHRvIHNlbGYgZHVyaW5nIHN0YXJ0dXAgYXNzZXJ0X3RydWU6IHNlbGYu
c2VydmljZVdvcmtlciBleGlzdHMgZXhwZWN0ZWQgdHJ1ZSBnb3QgZmFsc2UKLUZBSUwgRHVyaW5n
IGluc3RhbGwgYXNzZXJ0X3RydWU6IHNlbGYuc2VydmljZVdvcmtlciBleGlzdHMgZXhwZWN0ZWQg
dHJ1ZSBnb3QgZmFsc2UKLUZBSUwgRHVyaW5nIGFjdGl2YXRlIGFzc2VydF90cnVlOiBzZWxmLnNl
cnZpY2VXb3JrZXIgZXhpc3RzIGV4cGVjdGVkIHRydWUgZ290IGZhbHNlCitQQVNTIEZpcnN0IHJ1
bgorUEFTUyBDYW4gcG9zdCBtZXNzYWdlIHRvIHNlbGYgZHVyaW5nIHN0YXJ0dXAKK1BBU1MgRHVy
aW5nIGluc3RhbGwKK1BBU1MgRHVyaW5nIGFjdGl2YXRlCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>