<?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>210044</bug_id>
          
          <creation_ts>2020-04-06 04:50:25 -0700</creation_ts>
          <short_desc>SWServer should not run a service worker that is terminating</short_desc>
          <delta_ts>2020-04-10 03:51:13 -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>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>cdumez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1638066</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-04-06 04:50:25 -0700</bug_when>
    <thetext>SWServer should not run a service worker that is terminating

Otherwise https://build.webkit.org/results/Apple%20iOS%2013%20Simulator%20Debug%20WK2%20(Tests)/r259556%20(2976)/http/wpt/service-workers/service-worker-spinning-fetch.https-crash-log.txt

ASSERTION FAILED: result.isNewEntry
./workers/service/context/SWContextManager.cpp(61) : void WebCore::SWContextManager::registerServiceWorkerThreadForInstall(Ref&lt;WebCore::ServiceWorkerThreadProxy&gt; &amp;&amp;)
1   0x2cc9dcc09 WTFCrash
2   0x2d1e434cb WTFCrashWithInfo(int, char const*, char const*, int)
3   0x2d6337f75 WebCore::SWContextManager::registerServiceWorkerThreadForInstall(WTF::Ref&lt;WebCore::ServiceWorkerThreadProxy, WTF::DumbPtrTraits&lt;WebCore::ServiceWorkerThreadProxy&gt; &gt;&amp;&amp;)
4   0x2b95974e0 WebKit::WebSWContextManagerConnection::installServiceWorker(WebCore::ServiceWorkerContextData const&amp;, WTF::String&amp;&amp;)
5   0x2b9bc5bb9 void IPC::callMemberFunctionImpl&lt;WebKit::WebSWContextManagerConnection, void (WebKit::WebSWContextManagerConnection::*)(WebCore::ServiceWorkerContextData const&amp;, WTF::String&amp;&amp;), std::__1::tuple&lt;WebCore::ServiceWorkerContextData, WTF::String&gt;, 0ul, 1ul&gt;(WebKit::WebSWContextManagerConnection*, void (WebKit::WebSWContextManagerConnection::*)(WebCore::ServiceWorkerContextData const&amp;, WTF::String&amp;&amp;), std::__1::tuple&lt;WebCore::ServiceWorkerContextData, WTF::String&gt;&amp;&amp;, std::__1::integer_sequence&lt;unsigned long, 0ul, 1ul&gt;)
6   0x2b9bbf570 void IPC::callMemberFunction&lt;WebKit::WebSWContextManagerConnection, void (WebKit::WebSWContextManagerConnection::*)(WebCore::ServiceWorkerContextData const&amp;, WTF::String&amp;&amp;), std::__1::tuple&lt;WebCore::ServiceWorkerContextData, WTF::String&gt;, std::__1::integer_sequence&lt;unsigned long, 0ul, 1ul&gt; &gt;(std::__1::tuple&lt;WebCore::ServiceWorkerContextData, WTF::String&gt;&amp;&amp;, WebKit::WebSWContextManagerConnection*, void (WebKit::WebSWContextManagerConnection::*)(WebCore::ServiceWorkerContextData const&amp;, WTF::String&amp;&amp;))
7   0x2b9bbe91e void IPC::handleMessage&lt;Messages::WebSWContextManagerConnection::InstallServiceWorker, WebKit::WebSWContextManagerConnection, void (WebKit::WebSWContextManagerConnection::*)(WebCore::ServiceWorkerContextData const&amp;, WTF::String&amp;&amp;)&gt;(IPC::Decoder&amp;, WebKit::WebSWContextManagerConnection*, void (WebKit::WebSWContextManagerConnection::*)(WebCore::ServiceWorkerContextData const&amp;, WTF::String&amp;&amp;))
8   0x2b9bbe125 WebKit::WebSWContextManagerConnection::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;)
9   0x2b951b9f2 WebKit::NetworkProcessConnection::didReceiveMessage(IPC::Connection&amp;, IPC::Decoder&amp;)
10  0x2b8119de9 IPC::Connection::dispatchMessage(IPC::Decoder&amp;)
11  0x2b811a742 IPC::Connection::dispatchMessage(std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;)
12  0x2b811ae20 IPC::Connection::dispatchOneIncomingMessage()
13  0x2b8139a8e IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;)::$_7::operator()()
14  0x2b813999e WTF::Detail::CallableWrapper&lt;IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr&lt;IPC::Decoder, std::__1::default_delete&lt;IPC::Decoder&gt; &gt;)::$_7, void&gt;::call()
15  0x2cca08062 WTF::Function&lt;void ()&gt;::operator()() const
16  0x2cca7e6d8 WTF::RunLoop::performWork()
17  0x2cca7fe61 WTF::RunLoop::performWork(void*)
18  0x2c4213c71 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
19  0x2c4213b9c __CFRunLoopDoSource0
20  0x2c4213374 __CFRunLoopDoSources0
21  0x2c420df6e __CFRunLoopRun
22  0x2c420d884 CFRunLoopRunSpecific
23  0x1011ec831 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
24  0x1011eca45 -[NSRunLoop(NSRunLoop) run]
25  0x2c5e605ae _xpc_objc_main
26  0x2c5e62976 xpc_main
27  0x2b888427b WebKit::XPCServiceMain(int, char const**)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638068</commentid>
    <comment_count>1</comment_count>
      <attachid>395558</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-04-06 05:05:07 -0700</bug_when>
    <thetext>Created attachment 395558
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638072</commentid>
    <comment_count>2</comment_count>
      <attachid>395560</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-04-06 06:16:28 -0700</bug_when>
    <thetext>Created attachment 395560
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638509</commentid>
    <comment_count>3</comment_count>
      <attachid>395670</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-04-07 04:46:06 -0700</bug_when>
    <thetext>Created attachment 395670
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638518</commentid>
    <comment_count>4</comment_count>
      <attachid>395673</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-04-07 06:37:00 -0700</bug_when>
    <thetext>Created attachment 395673
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638531</commentid>
    <comment_count>5</comment_count>
      <attachid>395679</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-04-07 07:40:37 -0700</bug_when>
    <thetext>Created attachment 395679
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638545</commentid>
    <comment_count>6</comment_count>
      <attachid>395684</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-04-07 08:23:09 -0700</bug_when>
    <thetext>Created attachment 395684
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1639127</commentid>
    <comment_count>7</comment_count>
      <attachid>395684</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-04-08 10:18:16 -0700</bug_when>
    <thetext>Comment on attachment 395684
Patch

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

&gt; Source/WebCore/ChangeLog:10
&gt; +        Also, if the service worker is not able toterminate properly, we will kill the service worker process so there is no reason

typo: toterminate</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640066</commentid>
    <comment_count>8</comment_count>
      <attachid>396061</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-04-10 00:39:28 -0700</bug_when>
    <thetext>Created attachment 396061
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640106</commentid>
    <comment_count>9</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-10 03:50:40 -0700</bug_when>
    <thetext>Committed r259859: &lt;https://trac.webkit.org/changeset/259859&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 396061.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640107</commentid>
    <comment_count>10</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-10 03:51:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/61576626&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395558</attachid>
            <date>2020-04-06 05:05:07 -0700</date>
            <delta_ts>2020-04-06 06:16:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210044-20200406140506.patch</filename>
            <type>text/plain</type>
            <size>6328</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M0YTI2YTI0NzQ5ODk3
OTZkMzcyNGQxMDI5NTA0ZmJlZmEwYzljZC4uMGU2YmE1MTFmNjc2NDJmYzBlZTVmOTFkNDgxMjIz
NTZhNThjNzY3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIwLTA0LTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQg
bm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElmIGEgdGVzdCBpcyBiZWluZyB0
ZXJtaW5hdGVkIGFuZCB3ZSB3YW50IHRvIHJlc3RhcnQgaXQsIHdlIHdlcmUgcHJldmlvdXNseSBy
dW5uaW5nIGl0IHJpZ2h0IGF3YXkuCisgICAgICAgIFRoaXMgZG9lcyBub3Qgd29yayB3ZWxsIGFz
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIG1pZ2h0IHN0aWxsIGhhdmUgdGhlIHRlcm1pbmF0
aW5nIHNlcnZpY2Ugd29ya2VyIGluIGl0cyBtYXAuCisgICAgICAgIEFsc28sIGlmIHRoZSBzZXJ2
aWNlIHdvcmtlciBpcyBub3QgYWJsZSB0b3Rlcm1pbmF0ZSBwcm9wZXJseSwgd2Ugd2lsbCBraWxs
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIHNvIHRoZXJlIGlzIG5vIHJlYXNvbgorICAgICAg
ICB0byB0cnkgcnVubmluZyB0aGlzIHNlcnZpY2Ugd29ya2VyIGluIHRoaXMgcHJvY2Vzcy4KKyAg
ICAgICAgSW5zdGVhZCwgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyIHRvIHRlcm1pbmF0ZSAo
d2hpY2ggbWlnaHQgaW5jbHVkZSB0ZXJtaW5hdGluZyB0aGUgc2VydmljZSB3b3JrZXIgcHJvY2Vz
cykuCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3Rpbmcgc3Bpbm5pbmcgdGVzdHMgbm8gbG9uZ2Vy
IGNyYXNoaW5nLgorCisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6cnVuU2VydmljZVdvcmtlcklmTmVjZXNz
YXJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VyKToKKyAg
ICAgICAgKiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlNXU2VydmVyV29ya2VyOjp3aGVuVGVybWluYXRlZCk6CisgICAgICAgIChX
ZWJDb3JlOjpTV1NlcnZlcldvcmtlcjo6c2V0U3RhdGUpOgorICAgICAgICAqIHdvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaDoKKwogMjAyMC0wNC0wNiAgWW91ZW5uIEZhYmxl
dCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVubmVjZXNzYXJ5IG1lbW9y
eSBhbGxvY2F0aW9uIGZyb20gUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNlQ29jb2E6Ok9uRGF0
YQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1Nl
cnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVy
LmNwcAppbmRleCBlNmRmNTFhMWMxZTJmNzdhNTBiYThjNmI0ZGJjZjE5NGFiYzZhMmQ1Li4yM2Ix
ZTIzOGQwZDJkMjA2MzViNmE3OTE1ZTA2MGQyODNlNWM1Njg4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcApAQCAtNjg1LDYgKzY4
NSwxMyBAQCB2b2lkIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VySWZOZWNlc3NhcnkoU2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUgogICAgICAgICByZXR1cm47CiAgICAgfQog
CisgICAgaWYgKHdvcmtlci0+aXNUZXJtaW5hdGluZygpKSB7CisgICAgICAgIHdvcmtlci0+d2hl
blRlcm1pbmF0ZWQoW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhpcyksIGlkZW50aWZp
ZXIsIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldKCkgbXV0YWJsZSB7CisgICAgICAgICAg
ICBydW5TZXJ2aWNlV29ya2VySWZOZWNlc3NhcnkoaWRlbnRpZmllciwgV1RGTW92ZShjYWxsYmFj
aykpOworICAgICAgICB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIGlmICghY29u
dGV4dENvbm5lY3Rpb24pIHsKICAgICAgICAgYXV0byYgc2VydmljZVdvcmtlclJ1blJlcXVlc3Rz
Rm9yT3JpZ2luID0gbV9zZXJ2aWNlV29ya2VyUnVuUmVxdWVzdHMuZW5zdXJlKHdvcmtlci0+cmVn
aXN0cmFibGVEb21haW4oKSwgW10gewogICAgICAgICAgICAgcmV0dXJuIEhhc2hNYXA8U2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIsIFZlY3RvcjxSdW5TZXJ2aWNlV29ya2VyQ2FsbGJhY2s+PiB7IH07
CkBAIC03MTIsOCArNzE5LDkgQEAgYm9vbCBTV1NlcnZlcjo6cnVuU2VydmljZVdvcmtlcihTZXJ2
aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIGlmICghd29ya2VyLT5yZWdpc3Ry
YXRpb24oKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgYXV0byBhZGRSZXN1bHQgPSBt
X3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vycy5hZGQoaWRlbnRpZmllciwgKndvcmtlcik7Ci0g
ICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0VudHJ5IHx8IHdvcmtl
ci0+aXNUZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQoIXdvcmtlci0+aXNUZXJtaW5hdGluZygp
KTsKKyAgICBBU1NFUlQoIW1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLmNvbnRhaW5zKGlk
ZW50aWZpZXIpKTsKKyAgICBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vycy5hZGQoaWRlbnRp
ZmllciwgKndvcmtlcik7CiAKICAgICB3b3JrZXItPnNldFN0YXRlKFNXU2VydmVyV29ya2VyOjpT
dGF0ZTo6UnVubmluZyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAKaW5kZXggNDZiNzRlODllMzVlOTUxNGQ4
MDA5MzZiYjQwZTA0ZjIwMDMyOTRjMC4uN2EzMTk5NjcwZTUwODFkYzViYTQ5MjhjY2ZkODZmM2M4
M2Y4ZDkwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZl
ci9TV1NlcnZlcldvcmtlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAKQEAgLTEwNCw2ICsxMDQsMTIgQEAgdm9pZCBTV1Nl
cnZlcldvcmtlcjo6dGVybWluYXRlKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFj
aykKICAgICB9CiB9CiAKK3ZvaWQgU1dTZXJ2ZXJXb3JrZXI6OndoZW5UZXJtaW5hdGVkKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFjaykKK3sKKyAgICBBU1NFUlQoaXNUZXJtaW5h
dGluZygpKTsKKyAgICBtX3Rlcm1pbmF0aW9uQ2FsbGJhY2tzLmFwcGVuZChXVEZNb3ZlKGNhbGxi
YWNrKSk7Cit9CisKIHZvaWQgU1dTZXJ2ZXJXb3JrZXI6OnN0YXJ0VGVybWluYXRpb24oQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogewogICAgIGF1dG8qIGNvbnRleHRDb25u
ZWN0aW9uID0gdGhpcy0+Y29udGV4dENvbm5lY3Rpb24oKTsKQEAgLTI5Niw2ICszMDIsNyBAQCB2
b2lkIFNXU2VydmVyV29ya2VyOjpjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIoYm9vbCBzdWNjZXNz
KQogdm9pZCBTV1NlcnZlcldvcmtlcjo6c2V0U3RhdGUoU3RhdGUgc3RhdGUpCiB7CiAgICAgQVNT
RVJUKHN0YXRlICE9IFN0YXRlOjpSdW5uaW5nIHx8IG1fcmVnaXN0cmF0aW9uKTsKKyAgICBBU1NF
UlQoc3RhdGUgIT0gU3RhdGU6OlJ1bm5pbmcgfHwgbV9zdGF0ZSAhPSBTdGF0ZTo6VGVybWluYXRp
bmcpOwogICAgIG1fc3RhdGUgPSBzdGF0ZTsKIAogICAgIHN3aXRjaCAoc3RhdGUpIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3Jr
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3Jr
ZXIuaAppbmRleCA2MTAwY2Q5NmI1OWNmM2MyOTNjYjg1YmVkMzU4YjEwMDk3NTgxYmNkLi4wYTQ5
ODhjOWRkNWUzY2FjODJjMmQ4ZTRlOWQ5ODhiZjAxYmZiZTJmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCkBAIC02
Myw2ICs2Myw3IEBAIHB1YmxpYzoKICAgICBXRUJDT1JFX0VYUE9SVCB+U1dTZXJ2ZXJXb3JrZXIo
KTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgdGVybWluYXRlKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJiA9IFtdIHsgfSk7CisgICAgdm9pZCB3aGVuVGVybWluYXRlZChDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYpOwogCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB3aGVuQWN0aXZh
dGVkKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDNmMTI3NjRj
Yjk3NmVlMWRiMDJhNWZiYjRkNTVmNGNhZjY5ZWQ2MC4uMGVkOWYxMTViNzEwY2JmM2YwMWViNGQw
NDk3MThlZTZhMjJiZTJjNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA0LTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQg
bm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC93cHQvc2VydmljZS13
b3JrZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qczoKKyAgICAgICAgKGFzeW5jIHdhaXRGb3JTZXJ2
aWNlV29ya2VyTm9Mb25nZXJSdW5uaW5nKToKKyAgICAgICAgV2FpdCBsb25nZXIgZm9yIHRoZSBz
ZXJ2aWNlIHdvcmtlciB0byBiZSBzdG9wcGVkLgorCiAyMDIwLTA0LTA1ICBNYW51ZWwgUmVnbyBD
YXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIENvbXB1dGVkIHN0eWxlIGZv
ciAib3V0bGluZS1vZmZzZXQiIGlzIHdyb25nIHdoZW4gIm91dGxpbmUtc3R5bGUiIGlzICJub25l
IgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jlc291
cmNlcy9yb3V0aW5lcy5qcyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3NlcnZpY2Utd29ya2Vycy9y
ZXNvdXJjZXMvcm91dGluZXMuanMKaW5kZXggYzZkYjgyY2JlNmZmYzU1ZDEwNTI0OTU1YTBhMWE5
NjQzMjU5MWE1ZC4uNTMzZDIyMDZmNzkwMzkwYTA2MjlmODUxMGExZjU0MzVlYmNmYjIzOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9y
b3V0aW5lcy5qcworKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9zZXJ2aWNlLXdvcmtlcnMvcmVz
b3VyY2VzL3JvdXRpbmVzLmpzCkBAIC0zNiw3ICszNiw3IEBAIGFzeW5jIGZ1bmN0aW9uIHdhaXRG
b3JTZXJ2aWNlV29ya2VyTm9Mb25nZXJSdW5uaW5nKHdvcmtlcikKICAgICBsZXQgY291bnQgPSAx
MDA7CiAgICAgd2hpbGUgKC0tY291bnQgPiAwICYmIGF3YWl0IGludGVybmFscy5pc1NlcnZpY2VX
b3JrZXJSdW5uaW5nKHdvcmtlcikpIHsKICAgICAgICAgd29ya2VyLnBvc3RNZXNzYWdlKCJ0ZXN0
Iik7Ci0gICAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dChyZXNv
bHZlLCA1MCkpOworICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRpbWVv
dXQocmVzb2x2ZSwgMTAwKSk7CiAgICAgfQogICAgIGlmIChjb3VudCA9PT0gMCkKICAgICAgICAg
cmV0dXJuIFByb21pc2UucmVqZWN0KCJzZXJ2aWNlIHdvcmtlciBpcyBzdGlsbCBydW5uaW5nIik7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395560</attachid>
            <date>2020-04-06 06:16:28 -0700</date>
            <delta_ts>2020-04-07 04:46:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210044-20200406151626.patch</filename>
            <type>text/plain</type>
            <size>18684</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M0YTI2YTI0NzQ5ODk3
OTZkMzcyNGQxMDI5NTA0ZmJlZmEwYzljZC4uOWE5YWM4MzI4ZTQxYzA4YWNhMDc3MmQ2OGFkYmI5
OTk0MThjMjgzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTA0LTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQg
bm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElmIGEgdGVzdCBpcyBiZWluZyB0
ZXJtaW5hdGVkIGFuZCB3ZSB3YW50IHRvIHJlc3RhcnQgaXQsIHdlIHdlcmUgcHJldmlvdXNseSBy
dW5uaW5nIGl0IHJpZ2h0IGF3YXkuCisgICAgICAgIFRoaXMgZG9lcyBub3Qgd29yayB3ZWxsIGFz
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIG1pZ2h0IHN0aWxsIGhhdmUgdGhlIHRlcm1pbmF0
aW5nIHNlcnZpY2Ugd29ya2VyIGluIGl0cyBtYXAuCisgICAgICAgIEFsc28sIGlmIHRoZSBzZXJ2
aWNlIHdvcmtlciBpcyBub3QgYWJsZSB0b3Rlcm1pbmF0ZSBwcm9wZXJseSwgd2Ugd2lsbCBraWxs
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIHNvIHRoZXJlIGlzIG5vIHJlYXNvbgorICAgICAg
ICB0byB0cnkgcnVubmluZyB0aGlzIHNlcnZpY2Ugd29ya2VyIGluIHRoaXMgcHJvY2Vzcy4KKyAg
ICAgICAgSW5zdGVhZCwgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyIHRvIHRlcm1pbmF0ZSAo
d2hpY2ggbWlnaHQgaW5jbHVkZSB0ZXJtaW5hdGluZyB0aGUgc2VydmljZSB3b3JrZXIgcHJvY2Vz
cykuCisKKyAgICAgICAgSW4gYWRkaXRpb24sIHdlIHJlbW92ZSB0aGUgaXNTZXJ2aWNlV29ya2Vy
UnVubmluZyBpbnRlcm5hbHMgQVBJIHNpbmNlIHRoaXMgaXMgcG90ZW50aWFsbHkgZmxha3kgYXMg
dGhlIHNlcnZpY2Ugd29ya2VyCisgICAgICAgIG1pZ2h0IGJlIHRlcm1pbmF0ZWQgYW5kIHJlcnVu
bmluZyBpbiBiZXR3ZWVuIHR3byBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nIGNoZWNrcy4KKyAgICAg
ICAgSW5zdGVhZCwgd2UgaW50cm9kdWNlIHdoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkIHdo
aWNoIHdpbGwgcmVzb2x2ZSBhcyBzb29uIGFzIHRoZSBzZXJ2aWNlIHdvcmtlciBnb2VzIHRvIHRl
cm1pbmF0ZWQuCisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyBzcGlubmluZyB0ZXN0cyBu
byBsb25nZXIgY3Jhc2hpbmcuCisKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OndoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVk
KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9u
Lmg6CisgICAgICAgIChXZWJDb3JlOjpTV0NsaWVudENvbm5lY3Rpb246OndoZW5TZXJ2aWNlV29y
a2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcklmTmVjZXNzYXJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpydW5TZXJ2
aWNlV29ya2VyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjp3b3JrZXJDb250ZXh0VGVy
bWluYXRlZCk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcldvcmtlcjo6d2hlblRlcm1pbmF0ZWQp
OgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKToKKyAgICAgICAg
KiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmg6CisgICAgICAgIChXZWJD
b3JlOjpTV1NlcnZlcldvcmtlcjo6aXNOb3RSdW5uaW5nIGNvbnN0KToKKwogMjAyMC0wNC0wNiAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVubmVj
ZXNzYXJ5IG1lbW9yeSBhbGxvY2F0aW9uIGZyb20gUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNl
Q29jb2E6Ok9uRGF0YQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5MmRlMWZiYTI4N2QzMGFjMDBlY2I4ZTM1MTBhYWFl
ZjdmMDdhNzc4Li4xOGZlZTc3YTcyMmU5YmE5MjQ0NjRiYzZkZWNmYTFjM2M4YjZjYjA3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA0LTA2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQgbm90IHJ1biBhIHNlcnZpY2Ug
d29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRl
ZCBjaGVjay4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dT
ZXJ2ZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmg6Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24ubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6
d2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKToKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmg6CisKIDIwMjAtMDQtMDUgIERv
biBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbQ01ha2VdIEFk
ZCBXZWJLaXQ6OldlYktpdCB0YXJnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApp
bmRleCA1MWU3ZDFiZTkzMmExNzczYzY2NTAwYzg2MGRkZDRlY2UxMzFiNTJjLi5hMTBkYzZjM2Ex
YjhkYzk0OGQwZTkwNTUxMzYyNmMyZWVhZDkxYjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCkBAIC01MTUxLDEwICs1MTUxLDEwIEBAIHZvaWQgSW50ZXJuYWxzOjp0ZXJtaW5h
dGVTZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVk
CiAgICAgfSk7CiB9CiAKLXZvaWQgSW50ZXJuYWxzOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNl
cnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJv
bWlzZSkKK3ZvaWQgSW50ZXJuYWxzOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiB3b3JrZXIsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7
Ci0gICAgcmV0dXJuIFNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2luZ2xldG9uKCkuc2VydmljZVdv
cmtlckNvbm5lY3Rpb24oKS5pc1NlcnZpY2VXb3JrZXJSdW5uaW5nKHdvcmtlci5pZGVudGlmaWVy
KCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCByZXN1bHQpIG11dGFibGUgewot
ICAgICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0KTsKKyAgICByZXR1cm4gU2VydmljZVdvcmtl
clByb3ZpZGVyOjpzaW5nbGV0b24oKS5zZXJ2aWNlV29ya2VyQ29ubmVjdGlvbigpLndoZW5TZXJ2
aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyh3b3JrZXIuaWRlbnRpZmllcigpLCBbcHJv
bWlzZSA9IFdURk1vdmUocHJvbWlzZSldKCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2UucmVz
b2x2ZSgpOwogICAgIH0pOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApp
bmRleCA3OWY0MjRjM2Q4M2EwZDZlM2FkMzJhZDVhYTg0ZTZjMDU2OTcyZjU4Li44YjQ1ZWNlMTBl
ODAxZjBhOGQ3NWE2MWNjNzkzYmE1NWQ0Yzg0MTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKQEAgLTc4NSw3ICs3ODUsNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgSGFzUmVnaXN0cmF0
aW9uUHJvbWlzZSA9IERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPjsKICAgICB2b2lkIGhh
c1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24oY29uc3QgU3RyaW5nJiBjbGllbnRVUkwsIEhhc1Jl
Z2lzdHJhdGlvblByb21pc2UmJik7CiAgICAgdm9pZCB0ZXJtaW5hdGVTZXJ2aWNlV29ya2VyKFNl
cnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCBpc1Nl
cnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8SURM
Qm9vbGVhbj4mJik7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpOwogI2VuZGlmCiAKICNpZiBF
TkFCTEUoQVBQTEVfUEFZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGU1
YzU4ZjYyYjQxYmM5NTc4OWZmMTc0MTkzNWVmNjkwMTcyZjgzOWYuLjgyZTQ4ZWVmYjY5YzM0YzFj
MmZjMDg5YmJkY2NkYzYxMzQzN2IyODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwKQEAgLTc3MSw3ICs3NzEsNyBAQCBlbnVtIENvbXBvc2l0aW5nUG9saWN5IHsKIAogICAgIFtD
b25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlzZTxib29sZWFuPiBoYXNTZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uKERPTVN0cmluZyBzY29wZVVSTCk7CiAgICAgW0NvbmRpdGlvbmFsPVNF
UlZJQ0VfV09SS0VSXSBQcm9taXNlPHZvaWQ+IHRlcm1pbmF0ZVNlcnZpY2VXb3JrZXIoU2Vydmlj
ZVdvcmtlciB3b3JrZXIpOwotICAgIFtDb25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlz
ZTxib29sZWFuPiBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXIgd29ya2VyKTsK
KyAgICBbQ29uZGl0aW9uYWw9U0VSVklDRV9XT1JLRVJdIFByb21pc2U8dm9pZD4gd2hlblNlcnZp
Y2VXb3JrZXJJc1Rlcm1pbmF0ZWQoU2VydmljZVdvcmtlciB3b3JrZXIpOwogCiAgICAgW0NhbGxX
aXRoPURvY3VtZW50LCBDb25kaXRpb25hbD1BUFBMRV9QQVldIHJlYWRvbmx5IGF0dHJpYnV0ZSBN
b2NrUGF5bWVudENvb3JkaW5hdG9yIG1vY2tQYXltZW50Q29vcmRpbmF0b3I7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaAppbmRl
eCA5YjM5NGMxMThjNjI1MDM2MWU3NDcyZmVkNTE5NzIzNmJmZWI1NGVhLi42YWFlNDU1NmJkYTZh
MWYwMTM0YzcxY2M1OGIyYWQxNjhiODg2MTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoRmV0Y2hpbmdTY3JpcHRJblNlcnZlcihjb25z
dCBTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgc3Rv
cmVSZWdpc3RyYXRpb25zT25EaXNrRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY2FsbGJhY2spIHsgY2FsbGJhY2soKTsgfQotICAgIHZpcnR1YWwgdm9pZCBpc1NlcnZpY2VX
b3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmIGNhbGxiYWNrKSB7IGNhbGxiYWNrKGZhbHNlKTsgfQorICAgIHZpcnR1YWwg
dm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtl
cklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFjaykgeyBjYWxs
YmFjaygpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlZ2lzdGVyU2VydmljZVdvcmtl
ckNsaWVudHMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyLmNwcAppbmRleCBlNmRmNTFhMWMxZTJmNzdhNTBiYThjNmI0ZGJjZjE5NGFi
YzZhMmQ1Li4yMWZiMWEzYmRlZDU5YmEzNzgwNzk0MDY3ODEwMDBiNjg5YWYzYTE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcApA
QCAtNjg1LDYgKzY4NSwxMyBAQCB2b2lkIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VySWZOZWNl
c3NhcnkoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUgogICAgICAgICByZXR1
cm47CiAgICAgfQogCisgICAgaWYgKHdvcmtlci0+aXNUZXJtaW5hdGluZygpKSB7CisgICAgICAg
IHdvcmtlci0+d2hlblRlcm1pbmF0ZWQoW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhp
cyksIGlkZW50aWZpZXIsIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldKCkgbXV0YWJsZSB7
CisgICAgICAgICAgICBydW5TZXJ2aWNlV29ya2VySWZOZWNlc3NhcnkoaWRlbnRpZmllciwgV1RG
TW92ZShjYWxsYmFjaykpOworICAgICAgICB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwog
ICAgIGlmICghY29udGV4dENvbm5lY3Rpb24pIHsKICAgICAgICAgYXV0byYgc2VydmljZVdvcmtl
clJ1blJlcXVlc3RzRm9yT3JpZ2luID0gbV9zZXJ2aWNlV29ya2VyUnVuUmVxdWVzdHMuZW5zdXJl
KHdvcmtlci0+cmVnaXN0cmFibGVEb21haW4oKSwgW10gewogICAgICAgICAgICAgcmV0dXJuIEhh
c2hNYXA8U2VydmljZVdvcmtlcklkZW50aWZpZXIsIFZlY3RvcjxSdW5TZXJ2aWNlV29ya2VyQ2Fs
bGJhY2s+PiB7IH07CkBAIC03MTIsOCArNzE5LDkgQEAgYm9vbCBTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIGlmICghd29y
a2VyLT5yZWdpc3RyYXRpb24oKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgYXV0byBh
ZGRSZXN1bHQgPSBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vycy5hZGQoaWRlbnRpZmllciwg
Kndvcmtlcik7Ci0gICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0Vu
dHJ5IHx8IHdvcmtlci0+aXNUZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQoIXdvcmtlci0+aXNU
ZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQoIW1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJz
LmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKyAgICBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vy
cy5hZGQoaWRlbnRpZmllciwgKndvcmtlcik7CiAKICAgICB3b3JrZXItPnNldFN0YXRlKFNXU2Vy
dmVyV29ya2VyOjpTdGF0ZTo6UnVubmluZyk7CiAKQEAgLTczOCwxNSArNzQ2LDE1IEBAIHZvaWQg
U1dTZXJ2ZXI6Om1hcmtBbGxXb3JrZXJzRm9yUmVnaXN0cmFibGVEb21haW5Bc1Rlcm1pbmF0ZWQo
Y29uc3QgUmVnaXN0cmFibGVECiAKIHZvaWQgU1dTZXJ2ZXI6OndvcmtlckNvbnRleHRUZXJtaW5h
dGVkKFNXU2VydmVyV29ya2VyJiB3b3JrZXIpCiB7Ci0gICAgd29ya2VyLnNldFN0YXRlKFNXU2Vy
dmVyV29ya2VyOjpTdGF0ZTo6Tm90UnVubmluZyk7Ci0KLSAgICBpZiAoYXV0byogam9iUXVldWUg
PSBtX2pvYlF1ZXVlcy5nZXQod29ya2VyLnJlZ2lzdHJhdGlvbktleSgpKSkKLSAgICAgICAgam9i
UXVldWUtPmNhbmNlbEpvYnNGcm9tU2VydmljZVdvcmtlcih3b3JrZXIuaWRlbnRpZmllcigpKTsK
LQogICAgIC8vIEF0IHRoaXMgcG9pbnQgaWYgbm8gcmVnaXN0cmF0aW9ucyBhcmUgcmVmZXJlbmNp
bmcgdGhlIHdvcmtlciB0aGVuIGl0IHdpbGwgYmUgZGVzdHJveWVkLAogICAgIC8vIHJlbW92aW5n
IGl0c2VsZiBmcm9tIHRoZSBtX3dvcmtlcnNCeUlEIG1hcC4KICAgICBhdXRvIHJlc3VsdCA9IG1f
cnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLnRha2Uod29ya2VyLmlkZW50aWZpZXIoKSk7CiAg
ICAgQVNTRVJUX1VOVVNFRChyZXN1bHQsIHJlc3VsdCAmJiByZXN1bHQtPnB0cigpID09ICZ3b3Jr
ZXIpOworCisgICAgd29ya2VyLnNldFN0YXRlKFNXU2VydmVyV29ya2VyOjpTdGF0ZTo6Tm90UnVu
bmluZyk7CisKKyAgICBpZiAoYXV0byogam9iUXVldWUgPSBtX2pvYlF1ZXVlcy5nZXQod29ya2Vy
LnJlZ2lzdHJhdGlvbktleSgpKSkKKyAgICAgICAgam9iUXVldWUtPmNhbmNlbEpvYnNGcm9tU2Vy
dmljZVdvcmtlcih3b3JrZXIuaWRlbnRpZmllcigpKTsKIH0KIAogdm9pZCBTV1NlcnZlcjo6Zmly
ZUluc3RhbGxFdmVudChTV1NlcnZlcldvcmtlciYgd29ya2VyKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAppbmRl
eCA0NmI3NGU4OWUzNWU5NTE0ZDgwMDkzNmJiNDBlMDRmMjAwMzI5NGMwLi4xMTEwZDY3MmU4NGYy
OThlN2E0YjhlYzAyZDEzZDI4MmY3MjkxZDUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcApAQCAtMTA0LDYg
KzEwNCwxMiBAQCB2b2lkIFNXU2VydmVyV29ya2VyOjp0ZXJtaW5hdGUoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogICAgIH0KIH0KIAordm9pZCBTV1NlcnZlcldvcmtlcjo6
d2hlblRlcm1pbmF0ZWQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQorewor
ICAgIEFTU0VSVChpc1J1bm5pbmcoKSB8fCBpc1Rlcm1pbmF0aW5nKCkpOworICAgIG1fdGVybWlu
YXRpb25DYWxsYmFja3MuYXBwZW5kKFdURk1vdmUoY2FsbGJhY2spKTsKK30KKwogdm9pZCBTV1Nl
cnZlcldvcmtlcjo6c3RhcnRUZXJtaW5hdGlvbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y2FsbGJhY2spCiB7CiAgICAgYXV0byogY29udGV4dENvbm5lY3Rpb24gPSB0aGlzLT5jb250ZXh0
Q29ubmVjdGlvbigpOwpAQCAtMjk2LDYgKzMwMiw3IEBAIHZvaWQgU1dTZXJ2ZXJXb3JrZXI6OmNh
bGxXaGVuQWN0aXZhdGVkSGFuZGxlcihib29sIHN1Y2Nlc3MpCiB2b2lkIFNXU2VydmVyV29ya2Vy
OjpzZXRTdGF0ZShTdGF0ZSBzdGF0ZSkKIHsKICAgICBBU1NFUlQoc3RhdGUgIT0gU3RhdGU6OlJ1
bm5pbmcgfHwgbV9yZWdpc3RyYXRpb24pOworICAgIEFTU0VSVChzdGF0ZSAhPSBTdGF0ZTo6UnVu
bmluZyB8fCBtX3N0YXRlICE9IFN0YXRlOjpUZXJtaW5hdGluZyk7CiAgICAgbV9zdGF0ZSA9IHN0
YXRlOwogCiAgICAgc3dpdGNoIChzdGF0ZSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCmluZGV4IDYxMDBjZDk2YjU5
Y2YzYzI5M2NiODViZWQzNThiMTAwOTc1ODFiY2QuLmFlYjE4MDljZmNhZjFkMjg5MmVmZTc3NTFl
OWIwYTc3MzNhYzExOTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKQEAgLTYzLDYgKzYzLDcgQEAgcHVibGljOgog
ICAgIFdFQkNPUkVfRVhQT1JUIH5TV1NlcnZlcldvcmtlcigpOwogCiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCB0ZXJtaW5hdGUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmID0gW10geyB9KTsK
KyAgICB2b2lkIHdoZW5UZXJtaW5hdGVkKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CiAK
ICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdoZW5BY3RpdmF0ZWQoQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJik7CiAKQEAgLTczLDYgKzc0LDcgQEAgcHVibGljOgogICAgIH07CiAgICAg
Ym9vbCBpc1J1bm5pbmcoKSBjb25zdCB7IHJldHVybiBtX3N0YXRlID09IFN0YXRlOjpSdW5uaW5n
OyB9CiAgICAgYm9vbCBpc1Rlcm1pbmF0aW5nKCkgY29uc3QgeyByZXR1cm4gbV9zdGF0ZSA9PSBT
dGF0ZTo6VGVybWluYXRpbmc7IH0KKyAgICBib29sIGlzTm90UnVubmluZygpIGNvbnN0IHsgcmV0
dXJuIG1fc3RhdGUgPT0gU3RhdGU6Ok5vdFJ1bm5pbmc7IH0KICAgICB2b2lkIHNldFN0YXRlKFN0
YXRlKTsKIAogICAgIFNXU2VydmVyKiBzZXJ2ZXIoKSB7IHJldHVybiBtX3NlcnZlci5nZXQoKTsg
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2Vy
L1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcAppbmRleCA5YWFkOWVkMGYy
YTEzMjFhYjQ5NmVlYWYzZGY0YTg4YjYyMjk3MDRkLi5iZDdkMDAxY2UxNzcwNzliYTcyMTY0YWFj
ZjliYjJhNDRlZGM4OWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNw
cApAQCAtNDY0LDEwICs0NjQsMTIgQEAgdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246OnRlcm1p
bmF0ZVdvcmtlckZyb21DbGllbnQoU2VydmljZVdvcmtlcklkZW50aWZpZXIgc2UKICAgICB3b3Jr
ZXItPnRlcm1pbmF0ZShXVEZNb3ZlKGNhbGxiYWNrKSk7CiB9CiAKLXZvaWQgV2ViU1dTZXJ2ZXJD
b25uZWN0aW9uOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVy
IGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhh
bmRsZXIpCit2b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6d2hlblNlcnZpY2VXb3JrZXJJc1Rl
cm1pbmF0ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50
aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsK
ICAgICBhdXRvKiB3b3JrZXIgPSBTV1NlcnZlcldvcmtlcjo6ZXhpc3RpbmdXb3JrZXJGb3JJZGVu
dGlmaWVyKGlkZW50aWZpZXIpOwotICAgIGNvbXBsZXRpb25IYW5kbGVyKHdvcmtlciA/IHdvcmtl
ci0+aXNSdW5uaW5nKCkgOiBmYWxzZSk7CisgICAgaWYgKCF3b3JrZXIgfHwgIXdvcmtlci0+aXNO
b3RSdW5uaW5nKCkpCisgICAgICAgIHJldHVybiBjb21wbGV0aW9uSGFuZGxlcigpOworICAgIHdv
cmtlci0+d2hlblRlcm1pbmF0ZWQoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogfQogCiBQ
QUw6OlNlc3Npb25JRCBXZWJTV1NlcnZlckNvbm5lY3Rpb246OnNlc3Npb25JRCgpIGNvbnN0CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2Vi
U1dTZXJ2ZXJDb25uZWN0aW9uLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZp
Y2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmgKaW5kZXggOGU0ODQxZTA2NmQ3NmFiMWE3
NWUwYWI0NThlNjU1NDMyNzIyNjIxYi4uYzgzMzcwMWMxODhiOGFlNDU2ZDRiM2QxMDc0MDU3ZDk2
Njk4MWRjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNl
V29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uaApAQCAtMTAzLDcg
KzEwMyw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCByZWdpc3RlclNlcnZpY2VXb3JrZXJDbGllbnQo
V2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiYgdG9wT3JpZ2luLCBXZWJDb3JlOjpTZXJ2aWNl
V29ya2VyQ2xpZW50RGF0YSYmLCBjb25zdCBPcHRpb25hbDxXZWJDb3JlOjpTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uSWRlbnRpZmllcj4mLCBTdHJpbmcmJiB1c2VyQWdlbnQpOwogICAgIHZvaWQg
dW5yZWdpc3RlclNlcnZpY2VXb3JrZXJDbGllbnQoY29uc3QgV2ViQ29yZTo6U2VydmljZVdvcmtl
ckNsaWVudElkZW50aWZpZXImKTsKICAgICB2b2lkIHRlcm1pbmF0ZVdvcmtlckZyb21DbGllbnQo
V2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJik7Ci0gICAgdm9pZCBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFdlYkNvcmU6OlNlcnZpY2VX
b3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKKyAgICB2
b2lkIHdoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyhXZWJDb3JlOjpTZXJ2
aWNlV29ya2VySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKIAogICAg
IHZvaWQgcG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQoV2ViQ29yZTo6RG9jdW1lbnRJ
ZGVudGlmaWVyIGRlc3RpbmF0aW9uQ29udGV4dElkZW50aWZpZXIsIGNvbnN0IFdlYkNvcmU6Ok1l
c3NhZ2VXaXRoTWVzc2FnZVBvcnRzJiwgV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIg
c291cmNlU2VydmljZVdvcmtlcklkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlT3JpZ2lu
KSBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2
aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24ubWVz
c2FnZXMuaW4KaW5kZXggZTI1ZDcxZTlhZGU5MTljODViMTE3MWVhNjc3NDFhMGIwZTZkYjAwNC4u
NGMxODYzNzdmOGU1ZmUyZjAzYjEzNDAyYTliMzkwNjAxZTMzYjU5MCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVj
dGlvbi5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZp
Y2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCkBAIC00MiwxMCArNDIs
MTAgQEAgbWVzc2FnZXMgLT4gV2ViU1dTZXJ2ZXJDb25uZWN0aW9uIE5vdFJlZkNvdW50ZWQgewog
ICAgIFVucmVnaXN0ZXJTZXJ2aWNlV29ya2VyQ2xpZW50KHN0cnVjdCBXZWJDb3JlOjpTZXJ2aWNl
V29ya2VyQ2xpZW50SWRlbnRpZmllciBpZGVudGlmaWVyKQogCiAgICAgVGVybWluYXRlV29ya2Vy
RnJvbUNsaWVudChXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciB3b3JrZXJJZGVudGlm
aWVyKSAtPiAoKSBBc3luYworICAgIFdoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVz
dGluZyhXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciB3b3JrZXJJZGVudGlmaWVyKSAt
PiAoKSBBc3luYwogCiAgICAgU2V0VGhyb3R0bGVTdGF0ZShib29sIGlzVGhyb3R0bGVhYmxlKQog
ICAgIFN0b3JlUmVnaXN0cmF0aW9uc09uRGlzaygpIC0+ICgpIEFzeW5jCi0gICAgSXNTZXJ2aWNl
V29ya2VyUnVubmluZyhXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciB3b3JrZXJJZGVu
dGlmaWVyKSAtPiAoYm9vbCBpc1J1bm5pbmcpIEFzeW5jCiB9CiAKICNlbmRpZiAvLyBFTkFCTEUo
U0VSVklDRV9XT1JLRVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3Rv
cmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcAppbmRleCBjM2NjYzY5YTZlY2ExM2Fh
OWE4N2Y2MjI0N2UwMzM1NjlhMmMxNzliLi44ZGQ4ZmNkMWQ1MTczNWY3ODliNzU2MmVlODRkM2Ex
M2ViNjg4NjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9X
ZWJTV0NsaWVudENvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9T
dG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAKQEAgLTI0OCw5ICsyNDgsOSBAQCB2b2lk
IFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6dGVybWluYXRlV29ya2VyRm9yVGVzdGluZyhTZXJ2aWNl
V29ya2VySWRlbnRpZmllciBpZAogICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2Vi
U1dTZXJ2ZXJDb25uZWN0aW9uOjpUZXJtaW5hdGVXb3JrZXJGcm9tQ2xpZW50IHsgaWRlbnRpZmll
ciB9LCBXVEZNb3ZlKGNhbGxiYWNrKSk7CiB9CiAKLXZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9u
Ojppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZp
ZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYgY2FsbGJhY2spCit2b2lkIFdlYlNX
Q2xpZW50Q29ubmVjdGlvbjo6d2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5n
KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoKT4mJiBjYWxsYmFjaykKIHsKLSAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6Oldl
YlNXU2VydmVyQ29ubmVjdGlvbjo6SXNTZXJ2aWNlV29ya2VyUnVubmluZyB7IGlkZW50aWZpZXIg
fSwgV1RGTW92ZShjYWxsYmFjaykpOworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6
V2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZCB7IGlk
ZW50aWZpZXIgfSwgV1RGTW92ZShjYWxsYmFjaykpOwogfQogCiB2b2lkIFdlYlNXQ2xpZW50Q29u
bmVjdGlvbjo6dXBkYXRlVGhyb3R0bGVTdGF0ZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oCmluZGV4IDZjOTJl
NzA5MDQwYjA0ZWMxMTIxZTBlMDU2N2MxMTZhNTZlYjZhYTUuLjljYjAzODYwYzFkZWY4MWIwYjdh
ZWJmYTY2ODMwZjE5ZjRlYjQzMDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oCkBAIC04Niw3ICs4Niw3IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBzZXREb2N1bWVudElzQ29udHJvbGxlZChXZWJDb3JlOjpEb2N1
bWVudElkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwogCiAgICAgdm9pZCBnZXRSZWdpc3Ry
YXRpb25zKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYmIHRvcE9yaWdpbiwgY29uc3QgVVJM
JiBjbGllbnRVUkwsIEdldFJlZ2lzdHJhdGlvbnNDYWxsYmFjayYmKSBmaW5hbDsKLSAgICB2b2lk
IGlzU2VydmljZVdvcmtlclJ1bm5pbmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIs
IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZvaWQgd2hlblNl
cnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpIGZpbmFsOwogCiAgICAgdm9p
ZCBkaWRSZXNvbHZlUmVnaXN0cmF0aW9uUHJvbWlzZShjb25zdCBXZWJDb3JlOjpTZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uS2V5JikgZmluYWw7CiAgICAgdm9pZCBzdG9yZVJlZ2lzdHJhdGlvbnNP
bkRpc2tGb3JUZXN0aW5nKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJikgZmluYWw7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggMDNmMTI3NjRjYjk3NmVlMWRiMDJhNWZiYjRkNTVmNGNhZjY5ZWQ2MC4uNDBjNTY0YWUwMjc2
NTMxN2E2MDVkOTNkMGZhYTZmYTA2ZDhkZTM5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIw
LTA0LTA2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1Nl
cnZlciBzaG91bGQgbm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC93
cHQvc2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qczoKKyAgICAgICAgKGFzeW5j
IHdhaXRGb3JTZXJ2aWNlV29ya2VyTm9Mb25nZXJSdW5uaW5nKToKKyAgICAgICAgVXNlIG5ldyBp
bnRlcm5hbHMgQVBJLgorCiAyMDIwLTA0LTA1ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVn
b0BpZ2FsaWEuY29tPgogCiAgICAgICAgIENvbXB1dGVkIHN0eWxlIGZvciAib3V0bGluZS1vZmZz
ZXQiIGlzIHdyb25nIHdoZW4gIm91dGxpbmUtc3R5bGUiIGlzICJub25lIgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5q
cyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3NlcnZpY2Utd29ya2Vycy9yZXNvdXJjZXMvcm91dGlu
ZXMuanMKaW5kZXggYzZkYjgyY2JlNmZmYzU1ZDEwNTI0OTU1YTBhMWE5NjQzMjU5MWE1ZC4uOWYx
NjliZDY5YzFlM2U0ZTIzNDFiMWExMzljYzY0ZTA3ODZlYmI0MCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qcworKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3dwdC9zZXJ2aWNlLXdvcmtlcnMvcmVzb3VyY2VzL3JvdXRpbmVz
LmpzCkBAIC0zMywxMSArMzMsNiBAQCBhc3luYyBmdW5jdGlvbiB3YWl0Rm9yU2VydmljZVdvcmtl
ck5vTG9uZ2VyUnVubmluZyh3b3JrZXIpCiAgICAgaWYgKCF3aW5kb3cuaW50ZXJuYWxzKQogICAg
ICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoInJlcXVpcmVzIGludGVybmFscyIpOwogCi0gICAg
bGV0IGNvdW50ID0gMTAwOwotICAgIHdoaWxlICgtLWNvdW50ID4gMCAmJiBhd2FpdCBpbnRlcm5h
bHMuaXNTZXJ2aWNlV29ya2VyUnVubmluZyh3b3JrZXIpKSB7Ci0gICAgICAgIHdvcmtlci5wb3N0
TWVzc2FnZSgidGVzdCIpOwotICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHNl
dFRpbWVvdXQocmVzb2x2ZSwgNTApKTsKLSAgICB9Ci0gICAgaWYgKGNvdW50ID09PSAwKQotICAg
ICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoInNlcnZpY2Ugd29ya2VyIGlzIHN0aWxsIHJ1bm5p
bmciKTsKKyAgICB3b3JrZXIucG9zdE1lc3NhZ2UoInRlc3QiKTsKKyAgICBhd2FpdCBpbnRlcm5h
bHMud2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWQod29ya2VyKTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395670</attachid>
            <date>2020-04-07 04:46:06 -0700</date>
            <delta_ts>2020-04-07 06:36:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210044-20200407134605.patch</filename>
            <type>text/plain</type>
            <size>18708</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M0YTI2YTI0NzQ5ODk3
OTZkMzcyNGQxMDI5NTA0ZmJlZmEwYzljZC4uOWE5YWM4MzI4ZTQxYzA4YWNhMDc3MmQ2OGFkYmI5
OTk0MThjMjgzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTA0LTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQg
bm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElmIGEgdGVzdCBpcyBiZWluZyB0
ZXJtaW5hdGVkIGFuZCB3ZSB3YW50IHRvIHJlc3RhcnQgaXQsIHdlIHdlcmUgcHJldmlvdXNseSBy
dW5uaW5nIGl0IHJpZ2h0IGF3YXkuCisgICAgICAgIFRoaXMgZG9lcyBub3Qgd29yayB3ZWxsIGFz
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIG1pZ2h0IHN0aWxsIGhhdmUgdGhlIHRlcm1pbmF0
aW5nIHNlcnZpY2Ugd29ya2VyIGluIGl0cyBtYXAuCisgICAgICAgIEFsc28sIGlmIHRoZSBzZXJ2
aWNlIHdvcmtlciBpcyBub3QgYWJsZSB0b3Rlcm1pbmF0ZSBwcm9wZXJseSwgd2Ugd2lsbCBraWxs
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIHNvIHRoZXJlIGlzIG5vIHJlYXNvbgorICAgICAg
ICB0byB0cnkgcnVubmluZyB0aGlzIHNlcnZpY2Ugd29ya2VyIGluIHRoaXMgcHJvY2Vzcy4KKyAg
ICAgICAgSW5zdGVhZCwgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyIHRvIHRlcm1pbmF0ZSAo
d2hpY2ggbWlnaHQgaW5jbHVkZSB0ZXJtaW5hdGluZyB0aGUgc2VydmljZSB3b3JrZXIgcHJvY2Vz
cykuCisKKyAgICAgICAgSW4gYWRkaXRpb24sIHdlIHJlbW92ZSB0aGUgaXNTZXJ2aWNlV29ya2Vy
UnVubmluZyBpbnRlcm5hbHMgQVBJIHNpbmNlIHRoaXMgaXMgcG90ZW50aWFsbHkgZmxha3kgYXMg
dGhlIHNlcnZpY2Ugd29ya2VyCisgICAgICAgIG1pZ2h0IGJlIHRlcm1pbmF0ZWQgYW5kIHJlcnVu
bmluZyBpbiBiZXR3ZWVuIHR3byBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nIGNoZWNrcy4KKyAgICAg
ICAgSW5zdGVhZCwgd2UgaW50cm9kdWNlIHdoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkIHdo
aWNoIHdpbGwgcmVzb2x2ZSBhcyBzb29uIGFzIHRoZSBzZXJ2aWNlIHdvcmtlciBnb2VzIHRvIHRl
cm1pbmF0ZWQuCisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyBzcGlubmluZyB0ZXN0cyBu
byBsb25nZXIgY3Jhc2hpbmcuCisKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OndoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVk
KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9u
Lmg6CisgICAgICAgIChXZWJDb3JlOjpTV0NsaWVudENvbm5lY3Rpb246OndoZW5TZXJ2aWNlV29y
a2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcklmTmVjZXNzYXJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpydW5TZXJ2
aWNlV29ya2VyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjp3b3JrZXJDb250ZXh0VGVy
bWluYXRlZCk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcldvcmtlcjo6d2hlblRlcm1pbmF0ZWQp
OgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKToKKyAgICAgICAg
KiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmg6CisgICAgICAgIChXZWJD
b3JlOjpTV1NlcnZlcldvcmtlcjo6aXNOb3RSdW5uaW5nIGNvbnN0KToKKwogMjAyMC0wNC0wNiAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVubmVj
ZXNzYXJ5IG1lbW9yeSBhbGxvY2F0aW9uIGZyb20gUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNl
Q29jb2E6Ok9uRGF0YQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5MmRlMWZiYTI4N2QzMGFjMDBlY2I4ZTM1MTBhYWFl
ZjdmMDdhNzc4Li4xOGZlZTc3YTcyMmU5YmE5MjQ0NjRiYzZkZWNmYTFjM2M4YjZjYjA3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA0LTA2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQgbm90IHJ1biBhIHNlcnZpY2Ug
d29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRl
ZCBjaGVjay4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dT
ZXJ2ZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmg6Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24ubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6
d2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKToKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmg6CisKIDIwMjAtMDQtMDUgIERv
biBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbQ01ha2VdIEFk
ZCBXZWJLaXQ6OldlYktpdCB0YXJnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApp
bmRleCA1MWU3ZDFiZTkzMmExNzczYzY2NTAwYzg2MGRkZDRlY2UxMzFiNTJjLi5hMTBkYzZjM2Ex
YjhkYzk0OGQwZTkwNTUxMzYyNmMyZWVhZDkxYjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCkBAIC01MTUxLDEwICs1MTUxLDEwIEBAIHZvaWQgSW50ZXJuYWxzOjp0ZXJtaW5h
dGVTZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVk
CiAgICAgfSk7CiB9CiAKLXZvaWQgSW50ZXJuYWxzOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNl
cnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJv
bWlzZSkKK3ZvaWQgSW50ZXJuYWxzOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiB3b3JrZXIsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7
Ci0gICAgcmV0dXJuIFNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2luZ2xldG9uKCkuc2VydmljZVdv
cmtlckNvbm5lY3Rpb24oKS5pc1NlcnZpY2VXb3JrZXJSdW5uaW5nKHdvcmtlci5pZGVudGlmaWVy
KCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCByZXN1bHQpIG11dGFibGUgewot
ICAgICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0KTsKKyAgICByZXR1cm4gU2VydmljZVdvcmtl
clByb3ZpZGVyOjpzaW5nbGV0b24oKS5zZXJ2aWNlV29ya2VyQ29ubmVjdGlvbigpLndoZW5TZXJ2
aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyh3b3JrZXIuaWRlbnRpZmllcigpLCBbcHJv
bWlzZSA9IFdURk1vdmUocHJvbWlzZSldKCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2UucmVz
b2x2ZSgpOwogICAgIH0pOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApp
bmRleCA3OWY0MjRjM2Q4M2EwZDZlM2FkMzJhZDVhYTg0ZTZjMDU2OTcyZjU4Li44YjQ1ZWNlMTBl
ODAxZjBhOGQ3NWE2MWNjNzkzYmE1NWQ0Yzg0MTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKQEAgLTc4NSw3ICs3ODUsNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgSGFzUmVnaXN0cmF0
aW9uUHJvbWlzZSA9IERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPjsKICAgICB2b2lkIGhh
c1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24oY29uc3QgU3RyaW5nJiBjbGllbnRVUkwsIEhhc1Jl
Z2lzdHJhdGlvblByb21pc2UmJik7CiAgICAgdm9pZCB0ZXJtaW5hdGVTZXJ2aWNlV29ya2VyKFNl
cnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCBpc1Nl
cnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8SURM
Qm9vbGVhbj4mJik7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpOwogI2VuZGlmCiAKICNpZiBF
TkFCTEUoQVBQTEVfUEFZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGU1
YzU4ZjYyYjQxYmM5NTc4OWZmMTc0MTkzNWVmNjkwMTcyZjgzOWYuLjgyZTQ4ZWVmYjY5YzM0YzFj
MmZjMDg5YmJkY2NkYzYxMzQzN2IyODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwKQEAgLTc3MSw3ICs3NzEsNyBAQCBlbnVtIENvbXBvc2l0aW5nUG9saWN5IHsKIAogICAgIFtD
b25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlzZTxib29sZWFuPiBoYXNTZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uKERPTVN0cmluZyBzY29wZVVSTCk7CiAgICAgW0NvbmRpdGlvbmFsPVNF
UlZJQ0VfV09SS0VSXSBQcm9taXNlPHZvaWQ+IHRlcm1pbmF0ZVNlcnZpY2VXb3JrZXIoU2Vydmlj
ZVdvcmtlciB3b3JrZXIpOwotICAgIFtDb25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlz
ZTxib29sZWFuPiBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXIgd29ya2VyKTsK
KyAgICBbQ29uZGl0aW9uYWw9U0VSVklDRV9XT1JLRVJdIFByb21pc2U8dm9pZD4gd2hlblNlcnZp
Y2VXb3JrZXJJc1Rlcm1pbmF0ZWQoU2VydmljZVdvcmtlciB3b3JrZXIpOwogCiAgICAgW0NhbGxX
aXRoPURvY3VtZW50LCBDb25kaXRpb25hbD1BUFBMRV9QQVldIHJlYWRvbmx5IGF0dHJpYnV0ZSBN
b2NrUGF5bWVudENvb3JkaW5hdG9yIG1vY2tQYXltZW50Q29vcmRpbmF0b3I7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaAppbmRl
eCA5YjM5NGMxMThjNjI1MDM2MWU3NDcyZmVkNTE5NzIzNmJmZWI1NGVhLi42YWFlNDU1NmJkYTZh
MWYwMTM0YzcxY2M1OGIyYWQxNjhiODg2MTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoRmV0Y2hpbmdTY3JpcHRJblNlcnZlcihjb25z
dCBTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgc3Rv
cmVSZWdpc3RyYXRpb25zT25EaXNrRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY2FsbGJhY2spIHsgY2FsbGJhY2soKTsgfQotICAgIHZpcnR1YWwgdm9pZCBpc1NlcnZpY2VX
b3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmIGNhbGxiYWNrKSB7IGNhbGxiYWNrKGZhbHNlKTsgfQorICAgIHZpcnR1YWwg
dm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtl
cklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFjaykgeyBjYWxs
YmFjaygpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlZ2lzdGVyU2VydmljZVdvcmtl
ckNsaWVudHMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyLmNwcAppbmRleCBlNmRmNTFhMWMxZTJmNzdhNTBiYThjNmI0ZGJjZjE5NGFi
YzZhMmQ1Li4yMWZiMWEzYmRlZDU5YmEzNzgwNzk0MDY3ODEwMDBiNjg5YWYzYTE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcApA
QCAtNjg1LDYgKzY4NSwxMyBAQCB2b2lkIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VySWZOZWNl
c3NhcnkoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUgogICAgICAgICByZXR1
cm47CiAgICAgfQogCisgICAgaWYgKHdvcmtlci0+aXNUZXJtaW5hdGluZygpKSB7CisgICAgICAg
IHdvcmtlci0+d2hlblRlcm1pbmF0ZWQoW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhp
cyksIGlkZW50aWZpZXIsIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldKCkgbXV0YWJsZSB7
CisgICAgICAgICAgICBydW5TZXJ2aWNlV29ya2VySWZOZWNlc3NhcnkoaWRlbnRpZmllciwgV1RG
TW92ZShjYWxsYmFjaykpOworICAgICAgICB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwog
ICAgIGlmICghY29udGV4dENvbm5lY3Rpb24pIHsKICAgICAgICAgYXV0byYgc2VydmljZVdvcmtl
clJ1blJlcXVlc3RzRm9yT3JpZ2luID0gbV9zZXJ2aWNlV29ya2VyUnVuUmVxdWVzdHMuZW5zdXJl
KHdvcmtlci0+cmVnaXN0cmFibGVEb21haW4oKSwgW10gewogICAgICAgICAgICAgcmV0dXJuIEhh
c2hNYXA8U2VydmljZVdvcmtlcklkZW50aWZpZXIsIFZlY3RvcjxSdW5TZXJ2aWNlV29ya2VyQ2Fs
bGJhY2s+PiB7IH07CkBAIC03MTIsOCArNzE5LDkgQEAgYm9vbCBTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIGlmICghd29y
a2VyLT5yZWdpc3RyYXRpb24oKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgYXV0byBh
ZGRSZXN1bHQgPSBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vycy5hZGQoaWRlbnRpZmllciwg
Kndvcmtlcik7Ci0gICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0Vu
dHJ5IHx8IHdvcmtlci0+aXNUZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQoIXdvcmtlci0+aXNU
ZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQoIW1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJz
LmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKyAgICBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vy
cy5hZGQoaWRlbnRpZmllciwgKndvcmtlcik7CiAKICAgICB3b3JrZXItPnNldFN0YXRlKFNXU2Vy
dmVyV29ya2VyOjpTdGF0ZTo6UnVubmluZyk7CiAKQEAgLTczOCwxNSArNzQ2LDE1IEBAIHZvaWQg
U1dTZXJ2ZXI6Om1hcmtBbGxXb3JrZXJzRm9yUmVnaXN0cmFibGVEb21haW5Bc1Rlcm1pbmF0ZWQo
Y29uc3QgUmVnaXN0cmFibGVECiAKIHZvaWQgU1dTZXJ2ZXI6OndvcmtlckNvbnRleHRUZXJtaW5h
dGVkKFNXU2VydmVyV29ya2VyJiB3b3JrZXIpCiB7Ci0gICAgd29ya2VyLnNldFN0YXRlKFNXU2Vy
dmVyV29ya2VyOjpTdGF0ZTo6Tm90UnVubmluZyk7Ci0KLSAgICBpZiAoYXV0byogam9iUXVldWUg
PSBtX2pvYlF1ZXVlcy5nZXQod29ya2VyLnJlZ2lzdHJhdGlvbktleSgpKSkKLSAgICAgICAgam9i
UXVldWUtPmNhbmNlbEpvYnNGcm9tU2VydmljZVdvcmtlcih3b3JrZXIuaWRlbnRpZmllcigpKTsK
LQogICAgIC8vIEF0IHRoaXMgcG9pbnQgaWYgbm8gcmVnaXN0cmF0aW9ucyBhcmUgcmVmZXJlbmNp
bmcgdGhlIHdvcmtlciB0aGVuIGl0IHdpbGwgYmUgZGVzdHJveWVkLAogICAgIC8vIHJlbW92aW5n
IGl0c2VsZiBmcm9tIHRoZSBtX3dvcmtlcnNCeUlEIG1hcC4KICAgICBhdXRvIHJlc3VsdCA9IG1f
cnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLnRha2Uod29ya2VyLmlkZW50aWZpZXIoKSk7CiAg
ICAgQVNTRVJUX1VOVVNFRChyZXN1bHQsIHJlc3VsdCAmJiByZXN1bHQtPnB0cigpID09ICZ3b3Jr
ZXIpOworCisgICAgd29ya2VyLnNldFN0YXRlKFNXU2VydmVyV29ya2VyOjpTdGF0ZTo6Tm90UnVu
bmluZyk7CisKKyAgICBpZiAoYXV0byogam9iUXVldWUgPSBtX2pvYlF1ZXVlcy5nZXQod29ya2Vy
LnJlZ2lzdHJhdGlvbktleSgpKSkKKyAgICAgICAgam9iUXVldWUtPmNhbmNlbEpvYnNGcm9tU2Vy
dmljZVdvcmtlcih3b3JrZXIuaWRlbnRpZmllcigpKTsKIH0KIAogdm9pZCBTV1NlcnZlcjo6Zmly
ZUluc3RhbGxFdmVudChTV1NlcnZlcldvcmtlciYgd29ya2VyKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAppbmRl
eCA0NmI3NGU4OWUzNWU5NTE0ZDgwMDkzNmJiNDBlMDRmMjAwMzI5NGMwLi4xMTEwZDY3MmU4NGYy
OThlN2E0YjhlYzAyZDEzZDI4MmY3MjkxZDUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcApAQCAtMTA0LDYg
KzEwNCwxMiBAQCB2b2lkIFNXU2VydmVyV29ya2VyOjp0ZXJtaW5hdGUoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogICAgIH0KIH0KIAordm9pZCBTV1NlcnZlcldvcmtlcjo6
d2hlblRlcm1pbmF0ZWQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQorewor
ICAgIEFTU0VSVChpc1J1bm5pbmcoKSB8fCBpc1Rlcm1pbmF0aW5nKCkpOworICAgIG1fdGVybWlu
YXRpb25DYWxsYmFja3MuYXBwZW5kKFdURk1vdmUoY2FsbGJhY2spKTsKK30KKwogdm9pZCBTV1Nl
cnZlcldvcmtlcjo6c3RhcnRUZXJtaW5hdGlvbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y2FsbGJhY2spCiB7CiAgICAgYXV0byogY29udGV4dENvbm5lY3Rpb24gPSB0aGlzLT5jb250ZXh0
Q29ubmVjdGlvbigpOwpAQCAtMjk2LDYgKzMwMiw3IEBAIHZvaWQgU1dTZXJ2ZXJXb3JrZXI6OmNh
bGxXaGVuQWN0aXZhdGVkSGFuZGxlcihib29sIHN1Y2Nlc3MpCiB2b2lkIFNXU2VydmVyV29ya2Vy
OjpzZXRTdGF0ZShTdGF0ZSBzdGF0ZSkKIHsKICAgICBBU1NFUlQoc3RhdGUgIT0gU3RhdGU6OlJ1
bm5pbmcgfHwgbV9yZWdpc3RyYXRpb24pOworICAgIEFTU0VSVChzdGF0ZSAhPSBTdGF0ZTo6UnVu
bmluZyB8fCBtX3N0YXRlICE9IFN0YXRlOjpUZXJtaW5hdGluZyk7CiAgICAgbV9zdGF0ZSA9IHN0
YXRlOwogCiAgICAgc3dpdGNoIChzdGF0ZSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCmluZGV4IDYxMDBjZDk2YjU5
Y2YzYzI5M2NiODViZWQzNThiMTAwOTc1ODFiY2QuLmM3NGRjZGIxZDQwMTBlZDcwNTMwYmY4Zjc3
NmJlNGQzNDU0MzBjMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKQEAgLTYzLDYgKzYzLDcgQEAgcHVibGljOgog
ICAgIFdFQkNPUkVfRVhQT1JUIH5TV1NlcnZlcldvcmtlcigpOwogCiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCB0ZXJtaW5hdGUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmID0gW10geyB9KTsK
KyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdoZW5UZXJtaW5hdGVkKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJik7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdoZW5BY3RpdmF0ZWQoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAKQEAgLTczLDYgKzc0LDcgQEAgcHVibGlj
OgogICAgIH07CiAgICAgYm9vbCBpc1J1bm5pbmcoKSBjb25zdCB7IHJldHVybiBtX3N0YXRlID09
IFN0YXRlOjpSdW5uaW5nOyB9CiAgICAgYm9vbCBpc1Rlcm1pbmF0aW5nKCkgY29uc3QgeyByZXR1
cm4gbV9zdGF0ZSA9PSBTdGF0ZTo6VGVybWluYXRpbmc7IH0KKyAgICBib29sIGlzTm90UnVubmlu
ZygpIGNvbnN0IHsgcmV0dXJuIG1fc3RhdGUgPT0gU3RhdGU6Ok5vdFJ1bm5pbmc7IH0KICAgICB2
b2lkIHNldFN0YXRlKFN0YXRlKTsKIAogICAgIFNXU2VydmVyKiBzZXJ2ZXIoKSB7IHJldHVybiBt
X3NlcnZlci5nZXQoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcApp
bmRleCA5YWFkOWVkMGYyYTEzMjFhYjQ5NmVlYWYzZGY0YTg4YjYyMjk3MDRkLi42MDIzZmY0ZTcy
N2IyMDYxYjk0Y2EwMzQ5ZTg0ZWY0NzE5YWNkOTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2
ZXJDb25uZWN0aW9uLmNwcApAQCAtNDY0LDEwICs0NjQsMTIgQEAgdm9pZCBXZWJTV1NlcnZlckNv
bm5lY3Rpb246OnRlcm1pbmF0ZVdvcmtlckZyb21DbGllbnQoU2VydmljZVdvcmtlcklkZW50aWZp
ZXIgc2UKICAgICB3b3JrZXItPnRlcm1pbmF0ZShXVEZNb3ZlKGNhbGxiYWNrKSk7CiB9CiAKLXZv
aWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VX
b3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6d2hlblNl
cnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKIHsKICAgICBhdXRvKiB3b3JrZXIgPSBTV1NlcnZlcldvcmtlcjo6ZXhpc3Rp
bmdXb3JrZXJGb3JJZGVudGlmaWVyKGlkZW50aWZpZXIpOwotICAgIGNvbXBsZXRpb25IYW5kbGVy
KHdvcmtlciA/IHdvcmtlci0+aXNSdW5uaW5nKCkgOiBmYWxzZSk7CisgICAgaWYgKCF3b3JrZXIg
fHwgd29ya2VyLT5pc05vdFJ1bm5pbmcoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKCk7CisgICAgd29ya2VyLT53aGVuVGVybWluYXRlZChXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKSk7CiB9CiAKIFBBTDo6U2Vzc2lvbklEIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6c2Vzc2lv
bklEKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2Vy
dmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uaAppbmRleCA4ZTQ4
NDFlMDY2ZDc2YWIxYTc1ZTBhYjQ1OGU2NTU0MzI3MjI2MjFiLi5jODMzNzAxYzE4OGI4YWU0NTZk
NGIzZDEwNzQwNTdkOTY2OTgxZGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmgKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlv
bi5oCkBAIC0xMDMsNyArMTAzLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlZ2lzdGVyU2Vydmlj
ZVdvcmtlckNsaWVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmJiB0b3BPcmlnaW4sIFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnREYXRhJiYsIGNvbnN0IE9wdGlvbmFsPFdlYkNvcmU6
OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyPiYsIFN0cmluZyYmIHVzZXJBZ2Vu
dCk7CiAgICAgdm9pZCB1bnJlZ2lzdGVyU2VydmljZVdvcmtlckNsaWVudChjb25zdCBXZWJDb3Jl
OjpTZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllciYpOwogICAgIHZvaWQgdGVybWluYXRlV29y
a2VyRnJvbUNsaWVudChXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmKTsKLSAgICB2b2lkIGlzU2VydmljZVdvcmtlclJ1bm5pbmcoV2Vi
Q29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpOworICAgIHZvaWQgd2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5n
KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KCk+JiYpOwogCiAgICAgdm9pZCBwb3N0TWVzc2FnZVRvU2VydmljZVdvcmtlckNsaWVudChXZWJD
b3JlOjpEb2N1bWVudElkZW50aWZpZXIgZGVzdGluYXRpb25Db250ZXh0SWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMmLCBXZWJDb3JlOjpTZXJ2aWNlV29y
a2VySWRlbnRpZmllciBzb3VyY2VTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgY29uc3QgU3RyaW5n
JiBzb3VyY2VPcmlnaW4pIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmlu
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVy
Q29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCBlMjVkNzFlOWFkZTkxOWM4NWIxMTcxZWE2Nzc0
MWEwYjBlNmRiMDA0Li40YzE4NjM3N2Y4ZTVmZTJmMDNiMTM0MDJhOWIzOTA2MDFlMzNiNTkwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2Vi
U1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4K
QEAgLTQyLDEwICs0MiwxMCBAQCBtZXNzYWdlcyAtPiBXZWJTV1NlcnZlckNvbm5lY3Rpb24gTm90
UmVmQ291bnRlZCB7CiAgICAgVW5yZWdpc3RlclNlcnZpY2VXb3JrZXJDbGllbnQoc3RydWN0IFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyIGlkZW50aWZpZXIpCiAKICAgICBU
ZXJtaW5hdGVXb3JrZXJGcm9tQ2xpZW50KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVy
IHdvcmtlcklkZW50aWZpZXIpIC0+ICgpIEFzeW5jCisgICAgV2hlblNlcnZpY2VXb3JrZXJJc1Rl
cm1pbmF0ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHdvcmtl
cklkZW50aWZpZXIpIC0+ICgpIEFzeW5jCiAKICAgICBTZXRUaHJvdHRsZVN0YXRlKGJvb2wgaXNU
aHJvdHRsZWFibGUpCiAgICAgU3RvcmVSZWdpc3RyYXRpb25zT25EaXNrKCkgLT4gKCkgQXN5bmMK
LSAgICBJc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlm
aWVyIHdvcmtlcklkZW50aWZpZXIpIC0+IChib29sIGlzUnVubmluZykgQXN5bmMKIH0KIAogI2Vu
ZGlmIC8vIEVOQUJMRShTRVJWSUNFX1dPUktFUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uY3BwCmluZGV4IGMz
Y2NjNjlhNmVjYTEzYWE5YTg3ZjYyMjQ3ZTAzMzU2OWEyYzE3OWIuLmY1YzQyYzBkNTVkYjIxOGM5
M2EzMGQ0MjI1YWY4YjUyYmY2OWYyZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcApAQCAtMjQ4LDkg
KzI0OCw5IEBAIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjp0ZXJtaW5hdGVXb3JrZXJGb3JU
ZXN0aW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkCiAgICAgc2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OlRlcm1pbmF0ZVdvcmtlckZyb21DbGll
bnQgeyBpZGVudGlmaWVyIH0sIFdURk1vdmUoY2FsbGJhY2spKTsKIH0KIAotdm9pZCBXZWJTV0Ns
aWVudENvbm5lY3Rpb246OmlzU2VydmljZVdvcmtlclJ1bm5pbmcoU2VydmljZVdvcmtlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjYWxsYmFj
aykKK3ZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWlu
YXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogewotICAgIHNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6V2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpJc1NlcnZpY2VXb3JrZXJSdW5uaW5n
IHsgaWRlbnRpZmllciB9LCBXVEZNb3ZlKGNhbGxiYWNrKSk7CisgICAgc2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OldoZW5TZXJ2aWNlV29ya2VySXNU
ZXJtaW5hdGVkRm9yVGVzdGluZyB7IGlkZW50aWZpZXIgfSwgV1RGTW92ZShjYWxsYmFjaykpOwog
fQogCiB2b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6dXBkYXRlVGhyb3R0bGVTdGF0ZSgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENv
bm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5oCmluZGV4IDZjOTJlNzA5MDQwYjA0ZWMxMTIxZTBlMDU2N2MxMTZhNTZlYjZh
YTUuLjljYjAzODYwYzFkZWY4MWIwYjdhZWJmYTY2ODMwZjE5ZjRlYjQzMDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVj
dGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXREb2N1bWVudElz
Q29udHJvbGxlZChXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VX
b3JrZXJSZWdpc3RyYXRpb25EYXRhJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYp
OwogCiAgICAgdm9pZCBnZXRSZWdpc3RyYXRpb25zKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0
YSYmIHRvcE9yaWdpbiwgY29uc3QgVVJMJiBjbGllbnRVUkwsIEdldFJlZ2lzdHJhdGlvbnNDYWxs
YmFjayYmKSBmaW5hbDsKLSAgICB2b2lkIGlzU2VydmljZVdvcmtlclJ1bm5pbmcoV2ViQ29yZTo6
U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYp
IGZpbmFsOworICAgIHZvaWQgd2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5n
KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KCk+JiYpIGZpbmFsOwogCiAgICAgdm9pZCBkaWRSZXNvbHZlUmVnaXN0cmF0aW9uUHJvbWlzZShj
b25zdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5JikgZmluYWw7CiAgICAg
dm9pZCBzdG9yZVJlZ2lzdHJhdGlvbnNPbkRpc2tGb3JUZXN0aW5nKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJikgZmluYWw7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDNmMTI3NjRjYjk3NmVlMWRiMDJhNWZiYjRkNTVm
NGNhZjY5ZWQ2MC4uNDBjNTY0YWUwMjc2NTMxN2E2MDVkOTNkMGZhYTZmYTA2ZDhkZTM5YyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA0LTA2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQgbm90IHJ1biBhIHNlcnZpY2Ugd29y
a2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0
aW5lcy5qczoKKyAgICAgICAgKGFzeW5jIHdhaXRGb3JTZXJ2aWNlV29ya2VyTm9Mb25nZXJSdW5u
aW5nKToKKyAgICAgICAgVXNlIG5ldyBpbnRlcm5hbHMgQVBJLgorCiAyMDIwLTA0LTA1ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIENvbXB1dGVk
IHN0eWxlIGZvciAib3V0bGluZS1vZmZzZXQiIGlzIHdyb25nIHdoZW4gIm91dGxpbmUtc3R5bGUi
IGlzICJub25lIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3Jr
ZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qcyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3NlcnZpY2Ut
d29ya2Vycy9yZXNvdXJjZXMvcm91dGluZXMuanMKaW5kZXggYzZkYjgyY2JlNmZmYzU1ZDEwNTI0
OTU1YTBhMWE5NjQzMjU5MWE1ZC4uOWYxNjliZDY5YzFlM2U0ZTIzNDFiMWExMzljYzY0ZTA3ODZl
YmI0MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jl
c291cmNlcy9yb3V0aW5lcy5qcworKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9zZXJ2aWNlLXdv
cmtlcnMvcmVzb3VyY2VzL3JvdXRpbmVzLmpzCkBAIC0zMywxMSArMzMsNiBAQCBhc3luYyBmdW5j
dGlvbiB3YWl0Rm9yU2VydmljZVdvcmtlck5vTG9uZ2VyUnVubmluZyh3b3JrZXIpCiAgICAgaWYg
KCF3aW5kb3cuaW50ZXJuYWxzKQogICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoInJlcXVp
cmVzIGludGVybmFscyIpOwogCi0gICAgbGV0IGNvdW50ID0gMTAwOwotICAgIHdoaWxlICgtLWNv
dW50ID4gMCAmJiBhd2FpdCBpbnRlcm5hbHMuaXNTZXJ2aWNlV29ya2VyUnVubmluZyh3b3JrZXIp
KSB7Ci0gICAgICAgIHdvcmtlci5wb3N0TWVzc2FnZSgidGVzdCIpOwotICAgICAgICBhd2FpdCBu
ZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgNTApKTsKLSAgICB9Ci0g
ICAgaWYgKGNvdW50ID09PSAwKQotICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoInNlcnZp
Y2Ugd29ya2VyIGlzIHN0aWxsIHJ1bm5pbmciKTsKKyAgICB3b3JrZXIucG9zdE1lc3NhZ2UoInRl
c3QiKTsKKyAgICBhd2FpdCBpbnRlcm5hbHMud2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWQo
d29ya2VyKTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395673</attachid>
            <date>2020-04-07 06:37:00 -0700</date>
            <delta_ts>2020-04-07 07:40:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210044-20200407153658.patch</filename>
            <type>text/plain</type>
            <size>18800</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M0YTI2YTI0NzQ5ODk3
OTZkMzcyNGQxMDI5NTA0ZmJlZmEwYzljZC4uOWE5YWM4MzI4ZTQxYzA4YWNhMDc3MmQ2OGFkYmI5
OTk0MThjMjgzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTA0LTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQg
bm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElmIGEgdGVzdCBpcyBiZWluZyB0
ZXJtaW5hdGVkIGFuZCB3ZSB3YW50IHRvIHJlc3RhcnQgaXQsIHdlIHdlcmUgcHJldmlvdXNseSBy
dW5uaW5nIGl0IHJpZ2h0IGF3YXkuCisgICAgICAgIFRoaXMgZG9lcyBub3Qgd29yayB3ZWxsIGFz
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIG1pZ2h0IHN0aWxsIGhhdmUgdGhlIHRlcm1pbmF0
aW5nIHNlcnZpY2Ugd29ya2VyIGluIGl0cyBtYXAuCisgICAgICAgIEFsc28sIGlmIHRoZSBzZXJ2
aWNlIHdvcmtlciBpcyBub3QgYWJsZSB0b3Rlcm1pbmF0ZSBwcm9wZXJseSwgd2Ugd2lsbCBraWxs
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIHNvIHRoZXJlIGlzIG5vIHJlYXNvbgorICAgICAg
ICB0byB0cnkgcnVubmluZyB0aGlzIHNlcnZpY2Ugd29ya2VyIGluIHRoaXMgcHJvY2Vzcy4KKyAg
ICAgICAgSW5zdGVhZCwgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyIHRvIHRlcm1pbmF0ZSAo
d2hpY2ggbWlnaHQgaW5jbHVkZSB0ZXJtaW5hdGluZyB0aGUgc2VydmljZSB3b3JrZXIgcHJvY2Vz
cykuCisKKyAgICAgICAgSW4gYWRkaXRpb24sIHdlIHJlbW92ZSB0aGUgaXNTZXJ2aWNlV29ya2Vy
UnVubmluZyBpbnRlcm5hbHMgQVBJIHNpbmNlIHRoaXMgaXMgcG90ZW50aWFsbHkgZmxha3kgYXMg
dGhlIHNlcnZpY2Ugd29ya2VyCisgICAgICAgIG1pZ2h0IGJlIHRlcm1pbmF0ZWQgYW5kIHJlcnVu
bmluZyBpbiBiZXR3ZWVuIHR3byBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nIGNoZWNrcy4KKyAgICAg
ICAgSW5zdGVhZCwgd2UgaW50cm9kdWNlIHdoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkIHdo
aWNoIHdpbGwgcmVzb2x2ZSBhcyBzb29uIGFzIHRoZSBzZXJ2aWNlIHdvcmtlciBnb2VzIHRvIHRl
cm1pbmF0ZWQuCisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyBzcGlubmluZyB0ZXN0cyBu
byBsb25nZXIgY3Jhc2hpbmcuCisKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OndoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVk
KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9u
Lmg6CisgICAgICAgIChXZWJDb3JlOjpTV0NsaWVudENvbm5lY3Rpb246OndoZW5TZXJ2aWNlV29y
a2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcklmTmVjZXNzYXJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpydW5TZXJ2
aWNlV29ya2VyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjp3b3JrZXJDb250ZXh0VGVy
bWluYXRlZCk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcldvcmtlcjo6d2hlblRlcm1pbmF0ZWQp
OgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKToKKyAgICAgICAg
KiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmg6CisgICAgICAgIChXZWJD
b3JlOjpTV1NlcnZlcldvcmtlcjo6aXNOb3RSdW5uaW5nIGNvbnN0KToKKwogMjAyMC0wNC0wNiAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVubmVj
ZXNzYXJ5IG1lbW9yeSBhbGxvY2F0aW9uIGZyb20gUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNl
Q29jb2E6Ok9uRGF0YQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5MmRlMWZiYTI4N2QzMGFjMDBlY2I4ZTM1MTBhYWFl
ZjdmMDdhNzc4Li4xOGZlZTc3YTcyMmU5YmE5MjQ0NjRiYzZkZWNmYTFjM2M4YjZjYjA3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA0LTA2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQgbm90IHJ1biBhIHNlcnZpY2Ug
d29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRl
ZCBjaGVjay4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dT
ZXJ2ZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmg6Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24ubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6
d2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKToKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmg6CisKIDIwMjAtMDQtMDUgIERv
biBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbQ01ha2VdIEFk
ZCBXZWJLaXQ6OldlYktpdCB0YXJnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApp
bmRleCA1MWU3ZDFiZTkzMmExNzczYzY2NTAwYzg2MGRkZDRlY2UxMzFiNTJjLi5hMTBkYzZjM2Ex
YjhkYzk0OGQwZTkwNTUxMzYyNmMyZWVhZDkxYjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCkBAIC01MTUxLDEwICs1MTUxLDEwIEBAIHZvaWQgSW50ZXJuYWxzOjp0ZXJtaW5h
dGVTZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVk
CiAgICAgfSk7CiB9CiAKLXZvaWQgSW50ZXJuYWxzOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNl
cnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJv
bWlzZSkKK3ZvaWQgSW50ZXJuYWxzOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiB3b3JrZXIsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7
Ci0gICAgcmV0dXJuIFNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2luZ2xldG9uKCkuc2VydmljZVdv
cmtlckNvbm5lY3Rpb24oKS5pc1NlcnZpY2VXb3JrZXJSdW5uaW5nKHdvcmtlci5pZGVudGlmaWVy
KCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCByZXN1bHQpIG11dGFibGUgewot
ICAgICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0KTsKKyAgICByZXR1cm4gU2VydmljZVdvcmtl
clByb3ZpZGVyOjpzaW5nbGV0b24oKS5zZXJ2aWNlV29ya2VyQ29ubmVjdGlvbigpLndoZW5TZXJ2
aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyh3b3JrZXIuaWRlbnRpZmllcigpLCBbcHJv
bWlzZSA9IFdURk1vdmUocHJvbWlzZSldKCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2UucmVz
b2x2ZSgpOwogICAgIH0pOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApp
bmRleCA3OWY0MjRjM2Q4M2EwZDZlM2FkMzJhZDVhYTg0ZTZjMDU2OTcyZjU4Li44YjQ1ZWNlMTBl
ODAxZjBhOGQ3NWE2MWNjNzkzYmE1NWQ0Yzg0MTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKQEAgLTc4NSw3ICs3ODUsNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgSGFzUmVnaXN0cmF0
aW9uUHJvbWlzZSA9IERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPjsKICAgICB2b2lkIGhh
c1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24oY29uc3QgU3RyaW5nJiBjbGllbnRVUkwsIEhhc1Jl
Z2lzdHJhdGlvblByb21pc2UmJik7CiAgICAgdm9pZCB0ZXJtaW5hdGVTZXJ2aWNlV29ya2VyKFNl
cnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCBpc1Nl
cnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8SURM
Qm9vbGVhbj4mJik7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpOwogI2VuZGlmCiAKICNpZiBF
TkFCTEUoQVBQTEVfUEFZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGU1
YzU4ZjYyYjQxYmM5NTc4OWZmMTc0MTkzNWVmNjkwMTcyZjgzOWYuLjgyZTQ4ZWVmYjY5YzM0YzFj
MmZjMDg5YmJkY2NkYzYxMzQzN2IyODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwKQEAgLTc3MSw3ICs3NzEsNyBAQCBlbnVtIENvbXBvc2l0aW5nUG9saWN5IHsKIAogICAgIFtD
b25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlzZTxib29sZWFuPiBoYXNTZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uKERPTVN0cmluZyBzY29wZVVSTCk7CiAgICAgW0NvbmRpdGlvbmFsPVNF
UlZJQ0VfV09SS0VSXSBQcm9taXNlPHZvaWQ+IHRlcm1pbmF0ZVNlcnZpY2VXb3JrZXIoU2Vydmlj
ZVdvcmtlciB3b3JrZXIpOwotICAgIFtDb25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlz
ZTxib29sZWFuPiBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXIgd29ya2VyKTsK
KyAgICBbQ29uZGl0aW9uYWw9U0VSVklDRV9XT1JLRVJdIFByb21pc2U8dm9pZD4gd2hlblNlcnZp
Y2VXb3JrZXJJc1Rlcm1pbmF0ZWQoU2VydmljZVdvcmtlciB3b3JrZXIpOwogCiAgICAgW0NhbGxX
aXRoPURvY3VtZW50LCBDb25kaXRpb25hbD1BUFBMRV9QQVldIHJlYWRvbmx5IGF0dHJpYnV0ZSBN
b2NrUGF5bWVudENvb3JkaW5hdG9yIG1vY2tQYXltZW50Q29vcmRpbmF0b3I7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaAppbmRl
eCA5YjM5NGMxMThjNjI1MDM2MWU3NDcyZmVkNTE5NzIzNmJmZWI1NGVhLi42YWFlNDU1NmJkYTZh
MWYwMTM0YzcxY2M1OGIyYWQxNjhiODg2MTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoRmV0Y2hpbmdTY3JpcHRJblNlcnZlcihjb25z
dCBTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgc3Rv
cmVSZWdpc3RyYXRpb25zT25EaXNrRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY2FsbGJhY2spIHsgY2FsbGJhY2soKTsgfQotICAgIHZpcnR1YWwgdm9pZCBpc1NlcnZpY2VX
b3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmIGNhbGxiYWNrKSB7IGNhbGxiYWNrKGZhbHNlKTsgfQorICAgIHZpcnR1YWwg
dm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtl
cklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFjaykgeyBjYWxs
YmFjaygpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlZ2lzdGVyU2VydmljZVdvcmtl
ckNsaWVudHMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyLmNwcAppbmRleCBlNmRmNTFhMWMxZTJmNzdhNTBiYThjNmI0ZGJjZjE5NGFi
YzZhMmQ1Li4yMWZiMWEzYmRlZDU5YmEzNzgwNzk0MDY3ODEwMDBiNjg5YWYzYTE1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcApA
QCAtNjg1LDYgKzY4NSwxMyBAQCB2b2lkIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VySWZOZWNl
c3NhcnkoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUgogICAgICAgICByZXR1
cm47CiAgICAgfQogCisgICAgaWYgKHdvcmtlci0+aXNUZXJtaW5hdGluZygpKSB7CisgICAgICAg
IHdvcmtlci0+d2hlblRlcm1pbmF0ZWQoW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhp
cyksIGlkZW50aWZpZXIsIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldKCkgbXV0YWJsZSB7
CisgICAgICAgICAgICBydW5TZXJ2aWNlV29ya2VySWZOZWNlc3NhcnkoaWRlbnRpZmllciwgV1RG
TW92ZShjYWxsYmFjaykpOworICAgICAgICB9KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwog
ICAgIGlmICghY29udGV4dENvbm5lY3Rpb24pIHsKICAgICAgICAgYXV0byYgc2VydmljZVdvcmtl
clJ1blJlcXVlc3RzRm9yT3JpZ2luID0gbV9zZXJ2aWNlV29ya2VyUnVuUmVxdWVzdHMuZW5zdXJl
KHdvcmtlci0+cmVnaXN0cmFibGVEb21haW4oKSwgW10gewogICAgICAgICAgICAgcmV0dXJuIEhh
c2hNYXA8U2VydmljZVdvcmtlcklkZW50aWZpZXIsIFZlY3RvcjxSdW5TZXJ2aWNlV29ya2VyQ2Fs
bGJhY2s+PiB7IH07CkBAIC03MTIsOCArNzE5LDkgQEAgYm9vbCBTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIGlmICghd29y
a2VyLT5yZWdpc3RyYXRpb24oKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgYXV0byBh
ZGRSZXN1bHQgPSBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vycy5hZGQoaWRlbnRpZmllciwg
Kndvcmtlcik7Ci0gICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJlc3VsdC5pc05ld0Vu
dHJ5IHx8IHdvcmtlci0+aXNUZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQoIXdvcmtlci0+aXNU
ZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQoIW1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJz
LmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKyAgICBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vy
cy5hZGQoaWRlbnRpZmllciwgKndvcmtlcik7CiAKICAgICB3b3JrZXItPnNldFN0YXRlKFNXU2Vy
dmVyV29ya2VyOjpTdGF0ZTo6UnVubmluZyk7CiAKQEAgLTczOCwxNSArNzQ2LDE1IEBAIHZvaWQg
U1dTZXJ2ZXI6Om1hcmtBbGxXb3JrZXJzRm9yUmVnaXN0cmFibGVEb21haW5Bc1Rlcm1pbmF0ZWQo
Y29uc3QgUmVnaXN0cmFibGVECiAKIHZvaWQgU1dTZXJ2ZXI6OndvcmtlckNvbnRleHRUZXJtaW5h
dGVkKFNXU2VydmVyV29ya2VyJiB3b3JrZXIpCiB7Ci0gICAgd29ya2VyLnNldFN0YXRlKFNXU2Vy
dmVyV29ya2VyOjpTdGF0ZTo6Tm90UnVubmluZyk7Ci0KLSAgICBpZiAoYXV0byogam9iUXVldWUg
PSBtX2pvYlF1ZXVlcy5nZXQod29ya2VyLnJlZ2lzdHJhdGlvbktleSgpKSkKLSAgICAgICAgam9i
UXVldWUtPmNhbmNlbEpvYnNGcm9tU2VydmljZVdvcmtlcih3b3JrZXIuaWRlbnRpZmllcigpKTsK
LQogICAgIC8vIEF0IHRoaXMgcG9pbnQgaWYgbm8gcmVnaXN0cmF0aW9ucyBhcmUgcmVmZXJlbmNp
bmcgdGhlIHdvcmtlciB0aGVuIGl0IHdpbGwgYmUgZGVzdHJveWVkLAogICAgIC8vIHJlbW92aW5n
IGl0c2VsZiBmcm9tIHRoZSBtX3dvcmtlcnNCeUlEIG1hcC4KICAgICBhdXRvIHJlc3VsdCA9IG1f
cnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLnRha2Uod29ya2VyLmlkZW50aWZpZXIoKSk7CiAg
ICAgQVNTRVJUX1VOVVNFRChyZXN1bHQsIHJlc3VsdCAmJiByZXN1bHQtPnB0cigpID09ICZ3b3Jr
ZXIpOworCisgICAgd29ya2VyLnNldFN0YXRlKFNXU2VydmVyV29ya2VyOjpTdGF0ZTo6Tm90UnVu
bmluZyk7CisKKyAgICBpZiAoYXV0byogam9iUXVldWUgPSBtX2pvYlF1ZXVlcy5nZXQod29ya2Vy
LnJlZ2lzdHJhdGlvbktleSgpKSkKKyAgICAgICAgam9iUXVldWUtPmNhbmNlbEpvYnNGcm9tU2Vy
dmljZVdvcmtlcih3b3JrZXIuaWRlbnRpZmllcigpKTsKIH0KIAogdm9pZCBTV1NlcnZlcjo6Zmly
ZUluc3RhbGxFdmVudChTV1NlcnZlcldvcmtlciYgd29ya2VyKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAppbmRl
eCA0NmI3NGU4OWUzNWU5NTE0ZDgwMDkzNmJiNDBlMDRmMjAwMzI5NGMwLi4xMTEwZDY3MmU4NGYy
OThlN2E0YjhlYzAyZDEzZDI4MmY3MjkxZDUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcApAQCAtMTA0LDYg
KzEwNCwxMiBAQCB2b2lkIFNXU2VydmVyV29ya2VyOjp0ZXJtaW5hdGUoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogICAgIH0KIH0KIAordm9pZCBTV1NlcnZlcldvcmtlcjo6
d2hlblRlcm1pbmF0ZWQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQorewor
ICAgIEFTU0VSVChpc1J1bm5pbmcoKSB8fCBpc1Rlcm1pbmF0aW5nKCkpOworICAgIG1fdGVybWlu
YXRpb25DYWxsYmFja3MuYXBwZW5kKFdURk1vdmUoY2FsbGJhY2spKTsKK30KKwogdm9pZCBTV1Nl
cnZlcldvcmtlcjo6c3RhcnRUZXJtaW5hdGlvbihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y2FsbGJhY2spCiB7CiAgICAgYXV0byogY29udGV4dENvbm5lY3Rpb24gPSB0aGlzLT5jb250ZXh0
Q29ubmVjdGlvbigpOwpAQCAtMjk2LDYgKzMwMiw3IEBAIHZvaWQgU1dTZXJ2ZXJXb3JrZXI6OmNh
bGxXaGVuQWN0aXZhdGVkSGFuZGxlcihib29sIHN1Y2Nlc3MpCiB2b2lkIFNXU2VydmVyV29ya2Vy
OjpzZXRTdGF0ZShTdGF0ZSBzdGF0ZSkKIHsKICAgICBBU1NFUlQoc3RhdGUgIT0gU3RhdGU6OlJ1
bm5pbmcgfHwgbV9yZWdpc3RyYXRpb24pOworICAgIEFTU0VSVChzdGF0ZSAhPSBTdGF0ZTo6UnVu
bmluZyB8fCBtX3N0YXRlICE9IFN0YXRlOjpUZXJtaW5hdGluZyk7CiAgICAgbV9zdGF0ZSA9IHN0
YXRlOwogCiAgICAgc3dpdGNoIChzdGF0ZSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCmluZGV4IDYxMDBjZDk2YjU5
Y2YzYzI5M2NiODViZWQzNThiMTAwOTc1ODFiY2QuLmM3NGRjZGIxZDQwMTBlZDcwNTMwYmY4Zjc3
NmJlNGQzNDU0MzBjMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vydmlj
ZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKQEAgLTYzLDYgKzYzLDcgQEAgcHVibGljOgog
ICAgIFdFQkNPUkVfRVhQT1JUIH5TV1NlcnZlcldvcmtlcigpOwogCiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCB0ZXJtaW5hdGUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmID0gW10geyB9KTsK
KyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdoZW5UZXJtaW5hdGVkKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJik7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdoZW5BY3RpdmF0ZWQoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAKQEAgLTczLDYgKzc0LDcgQEAgcHVibGlj
OgogICAgIH07CiAgICAgYm9vbCBpc1J1bm5pbmcoKSBjb25zdCB7IHJldHVybiBtX3N0YXRlID09
IFN0YXRlOjpSdW5uaW5nOyB9CiAgICAgYm9vbCBpc1Rlcm1pbmF0aW5nKCkgY29uc3QgeyByZXR1
cm4gbV9zdGF0ZSA9PSBTdGF0ZTo6VGVybWluYXRpbmc7IH0KKyAgICBib29sIGlzTm90UnVubmlu
ZygpIGNvbnN0IHsgcmV0dXJuIG1fc3RhdGUgPT0gU3RhdGU6Ok5vdFJ1bm5pbmc7IH0KICAgICB2
b2lkIHNldFN0YXRlKFN0YXRlKTsKIAogICAgIFNXU2VydmVyKiBzZXJ2ZXIoKSB7IHJldHVybiBt
X3NlcnZlci5nZXQoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcApp
bmRleCA5YWFkOWVkMGYyYTEzMjFhYjQ5NmVlYWYzZGY0YTg4YjYyMjk3MDRkLi42MDIzZmY0ZTcy
N2IyMDYxYjk0Y2EwMzQ5ZTg0ZWY0NzE5YWNkOTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2
ZXJDb25uZWN0aW9uLmNwcApAQCAtNDY0LDEwICs0NjQsMTIgQEAgdm9pZCBXZWJTV1NlcnZlckNv
bm5lY3Rpb246OnRlcm1pbmF0ZVdvcmtlckZyb21DbGllbnQoU2VydmljZVdvcmtlcklkZW50aWZp
ZXIgc2UKICAgICB3b3JrZXItPnRlcm1pbmF0ZShXVEZNb3ZlKGNhbGxiYWNrKSk7CiB9CiAKLXZv
aWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VX
b3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+
JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6d2hlblNl
cnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0
aW9uSGFuZGxlcikKIHsKICAgICBhdXRvKiB3b3JrZXIgPSBTV1NlcnZlcldvcmtlcjo6ZXhpc3Rp
bmdXb3JrZXJGb3JJZGVudGlmaWVyKGlkZW50aWZpZXIpOwotICAgIGNvbXBsZXRpb25IYW5kbGVy
KHdvcmtlciA/IHdvcmtlci0+aXNSdW5uaW5nKCkgOiBmYWxzZSk7CisgICAgaWYgKCF3b3JrZXIg
fHwgd29ya2VyLT5pc05vdFJ1bm5pbmcoKSkKKyAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25IYW5k
bGVyKCk7CisgICAgd29ya2VyLT53aGVuVGVybWluYXRlZChXVEZNb3ZlKGNvbXBsZXRpb25IYW5k
bGVyKSk7CiB9CiAKIFBBTDo6U2Vzc2lvbklEIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6c2Vzc2lv
bklEKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2Vy
dmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uaAppbmRleCA4ZTQ4
NDFlMDY2ZDc2YWIxYTc1ZTBhYjQ1OGU2NTU0MzI3MjI2MjFiLi5jODMzNzAxYzE4OGI4YWU0NTZk
NGIzZDEwNzQwNTdkOTY2OTgxZGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmgKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlv
bi5oCkBAIC0xMDMsNyArMTAzLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlZ2lzdGVyU2Vydmlj
ZVdvcmtlckNsaWVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmJiB0b3BPcmlnaW4sIFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnREYXRhJiYsIGNvbnN0IE9wdGlvbmFsPFdlYkNvcmU6
OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyPiYsIFN0cmluZyYmIHVzZXJBZ2Vu
dCk7CiAgICAgdm9pZCB1bnJlZ2lzdGVyU2VydmljZVdvcmtlckNsaWVudChjb25zdCBXZWJDb3Jl
OjpTZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllciYpOwogICAgIHZvaWQgdGVybWluYXRlV29y
a2VyRnJvbUNsaWVudChXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgQ29tcGxldGlv
bkhhbmRsZXI8dm9pZCgpPiYmKTsKLSAgICB2b2lkIGlzU2VydmljZVdvcmtlclJ1bm5pbmcoV2Vi
Q29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9v
bCk+JiYpOworICAgIHZvaWQgd2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5n
KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KCk+JiYpOwogCiAgICAgdm9pZCBwb3N0TWVzc2FnZVRvU2VydmljZVdvcmtlckNsaWVudChXZWJD
b3JlOjpEb2N1bWVudElkZW50aWZpZXIgZGVzdGluYXRpb25Db250ZXh0SWRlbnRpZmllciwgY29u
c3QgV2ViQ29yZTo6TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMmLCBXZWJDb3JlOjpTZXJ2aWNlV29y
a2VySWRlbnRpZmllciBzb3VyY2VTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgY29uc3QgU3RyaW5n
JiBzb3VyY2VPcmlnaW4pIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmlu
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVy
Q29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCBlMjVkNzFlOWFkZTkxOWM4NWIxMTcxZWE2Nzc0
MWEwYjBlNmRiMDA0Li40YzE4NjM3N2Y4ZTVmZTJmMDNiMTM0MDJhOWIzOTA2MDFlMzNiNTkwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2Vi
U1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4K
QEAgLTQyLDEwICs0MiwxMCBAQCBtZXNzYWdlcyAtPiBXZWJTV1NlcnZlckNvbm5lY3Rpb24gTm90
UmVmQ291bnRlZCB7CiAgICAgVW5yZWdpc3RlclNlcnZpY2VXb3JrZXJDbGllbnQoc3RydWN0IFdl
YkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyIGlkZW50aWZpZXIpCiAKICAgICBU
ZXJtaW5hdGVXb3JrZXJGcm9tQ2xpZW50KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVy
IHdvcmtlcklkZW50aWZpZXIpIC0+ICgpIEFzeW5jCisgICAgV2hlblNlcnZpY2VXb3JrZXJJc1Rl
cm1pbmF0ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHdvcmtl
cklkZW50aWZpZXIpIC0+ICgpIEFzeW5jCiAKICAgICBTZXRUaHJvdHRsZVN0YXRlKGJvb2wgaXNU
aHJvdHRsZWFibGUpCiAgICAgU3RvcmVSZWdpc3RyYXRpb25zT25EaXNrKCkgLT4gKCkgQXN5bmMK
LSAgICBJc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlm
aWVyIHdvcmtlcklkZW50aWZpZXIpIC0+IChib29sIGlzUnVubmluZykgQXN5bmMKIH0KIAogI2Vu
ZGlmIC8vIEVOQUJMRShTRVJWSUNFX1dPUktFUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uY3BwCmluZGV4IGMz
Y2NjNjlhNmVjYTEzYWE5YTg3ZjYyMjQ3ZTAzMzU2OWEyYzE3OWIuLmY1YzQyYzBkNTVkYjIxOGM5
M2EzMGQ0MjI1YWY4YjUyYmY2OWYyZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcApAQCAtMjQ4LDkg
KzI0OCw5IEBAIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjp0ZXJtaW5hdGVXb3JrZXJGb3JU
ZXN0aW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkCiAgICAgc2VuZFdpdGhBc3luY1JlcGx5
KE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OlRlcm1pbmF0ZVdvcmtlckZyb21DbGll
bnQgeyBpZGVudGlmaWVyIH0sIFdURk1vdmUoY2FsbGJhY2spKTsKIH0KIAotdm9pZCBXZWJTV0Ns
aWVudENvbm5lY3Rpb246OmlzU2VydmljZVdvcmtlclJ1bm5pbmcoU2VydmljZVdvcmtlcklkZW50
aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJiBjYWxsYmFj
aykKK3ZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWlu
YXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogewotICAgIHNlbmRXaXRoQXN5bmNSZXBs
eShNZXNzYWdlczo6V2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpJc1NlcnZpY2VXb3JrZXJSdW5uaW5n
IHsgaWRlbnRpZmllciB9LCBXVEZNb3ZlKGNhbGxiYWNrKSk7CisgICAgc2VuZFdpdGhBc3luY1Jl
cGx5KE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OldoZW5TZXJ2aWNlV29ya2VySXNU
ZXJtaW5hdGVkRm9yVGVzdGluZyB7IGlkZW50aWZpZXIgfSwgV1RGTW92ZShjYWxsYmFjaykpOwog
fQogCiB2b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6dXBkYXRlVGhyb3R0bGVTdGF0ZSgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENv
bm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5oCmluZGV4IDZjOTJlNzA5MDQwYjA0ZWMxMTIxZTBlMDU2N2MxMTZhNTZlYjZh
YTUuLjljYjAzODYwYzFkZWY4MWIwYjdhZWJmYTY2ODMwZjE5ZjRlYjQzMDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVj
dGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXREb2N1bWVudElz
Q29udHJvbGxlZChXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VX
b3JrZXJSZWdpc3RyYXRpb25EYXRhJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYp
OwogCiAgICAgdm9pZCBnZXRSZWdpc3RyYXRpb25zKFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0
YSYmIHRvcE9yaWdpbiwgY29uc3QgVVJMJiBjbGllbnRVUkwsIEdldFJlZ2lzdHJhdGlvbnNDYWxs
YmFjayYmKSBmaW5hbDsKLSAgICB2b2lkIGlzU2VydmljZVdvcmtlclJ1bm5pbmcoV2ViQ29yZTo6
U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYp
IGZpbmFsOworICAgIHZvaWQgd2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5n
KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KCk+JiYpIGZpbmFsOwogCiAgICAgdm9pZCBkaWRSZXNvbHZlUmVnaXN0cmF0aW9uUHJvbWlzZShj
b25zdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5JikgZmluYWw7CiAgICAg
dm9pZCBzdG9yZVJlZ2lzdHJhdGlvbnNPbkRpc2tGb3JUZXN0aW5nKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJikgZmluYWw7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDNmMTI3NjRjYjk3NmVlMWRiMDJhNWZiYjRkNTVm
NGNhZjY5ZWQ2MC4uNDBjNTY0YWUwMjc2NTMxN2E2MDVkOTNkMGZhYTZmYTA2ZDhkZTM5YyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA0LTA2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQgbm90IHJ1biBhIHNlcnZpY2Ugd29y
a2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0
aW5lcy5qczoKKyAgICAgICAgKGFzeW5jIHdhaXRGb3JTZXJ2aWNlV29ya2VyTm9Mb25nZXJSdW5u
aW5nKToKKyAgICAgICAgVXNlIG5ldyBpbnRlcm5hbHMgQVBJLgorCiAyMDIwLTA0LTA1ICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAgICAgIENvbXB1dGVk
IHN0eWxlIGZvciAib3V0bGluZS1vZmZzZXQiIGlzIHdyb25nIHdoZW4gIm91dGxpbmUtc3R5bGUi
IGlzICJub25lIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3Jr
ZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qcyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3NlcnZpY2Ut
d29ya2Vycy9yZXNvdXJjZXMvcm91dGluZXMuanMKaW5kZXggYzZkYjgyY2JlNmZmYzU1ZDEwNTI0
OTU1YTBhMWE5NjQzMjU5MWE1ZC4uNzY0OTcwOTBlNjA4YzRmMTVkY2Y0ZGY3MmJhZjBjN2M5YWE5
ZTFlNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jl
c291cmNlcy9yb3V0aW5lcy5qcworKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9zZXJ2aWNlLXdv
cmtlcnMvcmVzb3VyY2VzL3JvdXRpbmVzLmpzCkBAIC0zMywxMSArMzMsOCBAQCBhc3luYyBmdW5j
dGlvbiB3YWl0Rm9yU2VydmljZVdvcmtlck5vTG9uZ2VyUnVubmluZyh3b3JrZXIpCiAgICAgaWYg
KCF3aW5kb3cuaW50ZXJuYWxzKQogICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoInJlcXVp
cmVzIGludGVybmFscyIpOwogCi0gICAgbGV0IGNvdW50ID0gMTAwOwotICAgIHdoaWxlICgtLWNv
dW50ID4gMCAmJiBhd2FpdCBpbnRlcm5hbHMuaXNTZXJ2aWNlV29ya2VyUnVubmluZyh3b3JrZXIp
KSB7Ci0gICAgICAgIHdvcmtlci5wb3N0TWVzc2FnZSgidGVzdCIpOwotICAgICAgICBhd2FpdCBu
ZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgNTApKTsKLSAgICB9Ci0g
ICAgaWYgKGNvdW50ID09PSAwKQotICAgICAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoInNlcnZp
Y2Ugd29ya2VyIGlzIHN0aWxsIHJ1bm5pbmciKTsKKyAgICBjb25zdCBwcm9taXNlID0gaW50ZXJu
YWxzLndoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkKHdvcmtlcik7CisgICAgbGV0IHRpbWVy
ID0gc2V0SW50ZXJ2YWwoKCkgPT4gd29ya2VyLnBvc3RNZXNzYWdlKCJ0ZXN0IiksIDUwKTsKKyAg
ICBhd2FpdCBwcm9taXNlOworICAgIGNsZWFySW50ZXJ2YWwodGltZXIpOwogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395679</attachid>
            <date>2020-04-07 07:40:37 -0700</date>
            <delta_ts>2020-04-07 08:23:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210044-20200407164035.patch</filename>
            <type>text/plain</type>
            <size>18869</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M0YTI2YTI0NzQ5ODk3
OTZkMzcyNGQxMDI5NTA0ZmJlZmEwYzljZC4uOWE5YWM4MzI4ZTQxYzA4YWNhMDc3MmQ2OGFkYmI5
OTk0MThjMjgzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTA0LTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQg
bm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElmIGEgdGVzdCBpcyBiZWluZyB0
ZXJtaW5hdGVkIGFuZCB3ZSB3YW50IHRvIHJlc3RhcnQgaXQsIHdlIHdlcmUgcHJldmlvdXNseSBy
dW5uaW5nIGl0IHJpZ2h0IGF3YXkuCisgICAgICAgIFRoaXMgZG9lcyBub3Qgd29yayB3ZWxsIGFz
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIG1pZ2h0IHN0aWxsIGhhdmUgdGhlIHRlcm1pbmF0
aW5nIHNlcnZpY2Ugd29ya2VyIGluIGl0cyBtYXAuCisgICAgICAgIEFsc28sIGlmIHRoZSBzZXJ2
aWNlIHdvcmtlciBpcyBub3QgYWJsZSB0b3Rlcm1pbmF0ZSBwcm9wZXJseSwgd2Ugd2lsbCBraWxs
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIHNvIHRoZXJlIGlzIG5vIHJlYXNvbgorICAgICAg
ICB0byB0cnkgcnVubmluZyB0aGlzIHNlcnZpY2Ugd29ya2VyIGluIHRoaXMgcHJvY2Vzcy4KKyAg
ICAgICAgSW5zdGVhZCwgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyIHRvIHRlcm1pbmF0ZSAo
d2hpY2ggbWlnaHQgaW5jbHVkZSB0ZXJtaW5hdGluZyB0aGUgc2VydmljZSB3b3JrZXIgcHJvY2Vz
cykuCisKKyAgICAgICAgSW4gYWRkaXRpb24sIHdlIHJlbW92ZSB0aGUgaXNTZXJ2aWNlV29ya2Vy
UnVubmluZyBpbnRlcm5hbHMgQVBJIHNpbmNlIHRoaXMgaXMgcG90ZW50aWFsbHkgZmxha3kgYXMg
dGhlIHNlcnZpY2Ugd29ya2VyCisgICAgICAgIG1pZ2h0IGJlIHRlcm1pbmF0ZWQgYW5kIHJlcnVu
bmluZyBpbiBiZXR3ZWVuIHR3byBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nIGNoZWNrcy4KKyAgICAg
ICAgSW5zdGVhZCwgd2UgaW50cm9kdWNlIHdoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkIHdo
aWNoIHdpbGwgcmVzb2x2ZSBhcyBzb29uIGFzIHRoZSBzZXJ2aWNlIHdvcmtlciBnb2VzIHRvIHRl
cm1pbmF0ZWQuCisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyBzcGlubmluZyB0ZXN0cyBu
byBsb25nZXIgY3Jhc2hpbmcuCisKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OndoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVk
KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9u
Lmg6CisgICAgICAgIChXZWJDb3JlOjpTV0NsaWVudENvbm5lY3Rpb246OndoZW5TZXJ2aWNlV29y
a2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcklmTmVjZXNzYXJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpydW5TZXJ2
aWNlV29ya2VyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjp3b3JrZXJDb250ZXh0VGVy
bWluYXRlZCk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcldvcmtlcjo6d2hlblRlcm1pbmF0ZWQp
OgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKToKKyAgICAgICAg
KiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmg6CisgICAgICAgIChXZWJD
b3JlOjpTV1NlcnZlcldvcmtlcjo6aXNOb3RSdW5uaW5nIGNvbnN0KToKKwogMjAyMC0wNC0wNiAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVubmVj
ZXNzYXJ5IG1lbW9yeSBhbGxvY2F0aW9uIGZyb20gUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNl
Q29jb2E6Ok9uRGF0YQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5MmRlMWZiYTI4N2QzMGFjMDBlY2I4ZTM1MTBhYWFl
ZjdmMDdhNzc4Li4xOGZlZTc3YTcyMmU5YmE5MjQ0NjRiYzZkZWNmYTFjM2M4YjZjYjA3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA0LTA2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQgbm90IHJ1biBhIHNlcnZpY2Ug
d29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRl
ZCBjaGVjay4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dT
ZXJ2ZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmg6Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24ubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6
d2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKToKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmg6CisKIDIwMjAtMDQtMDUgIERv
biBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbQ01ha2VdIEFk
ZCBXZWJLaXQ6OldlYktpdCB0YXJnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApp
bmRleCA1MWU3ZDFiZTkzMmExNzczYzY2NTAwYzg2MGRkZDRlY2UxMzFiNTJjLi5hMTBkYzZjM2Ex
YjhkYzk0OGQwZTkwNTUxMzYyNmMyZWVhZDkxYjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCkBAIC01MTUxLDEwICs1MTUxLDEwIEBAIHZvaWQgSW50ZXJuYWxzOjp0ZXJtaW5h
dGVTZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVk
CiAgICAgfSk7CiB9CiAKLXZvaWQgSW50ZXJuYWxzOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNl
cnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJv
bWlzZSkKK3ZvaWQgSW50ZXJuYWxzOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiB3b3JrZXIsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7
Ci0gICAgcmV0dXJuIFNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2luZ2xldG9uKCkuc2VydmljZVdv
cmtlckNvbm5lY3Rpb24oKS5pc1NlcnZpY2VXb3JrZXJSdW5uaW5nKHdvcmtlci5pZGVudGlmaWVy
KCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCByZXN1bHQpIG11dGFibGUgewot
ICAgICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0KTsKKyAgICByZXR1cm4gU2VydmljZVdvcmtl
clByb3ZpZGVyOjpzaW5nbGV0b24oKS5zZXJ2aWNlV29ya2VyQ29ubmVjdGlvbigpLndoZW5TZXJ2
aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyh3b3JrZXIuaWRlbnRpZmllcigpLCBbcHJv
bWlzZSA9IFdURk1vdmUocHJvbWlzZSldKCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2UucmVz
b2x2ZSgpOwogICAgIH0pOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApp
bmRleCA3OWY0MjRjM2Q4M2EwZDZlM2FkMzJhZDVhYTg0ZTZjMDU2OTcyZjU4Li44YjQ1ZWNlMTBl
ODAxZjBhOGQ3NWE2MWNjNzkzYmE1NWQ0Yzg0MTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKQEAgLTc4NSw3ICs3ODUsNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgSGFzUmVnaXN0cmF0
aW9uUHJvbWlzZSA9IERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPjsKICAgICB2b2lkIGhh
c1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24oY29uc3QgU3RyaW5nJiBjbGllbnRVUkwsIEhhc1Jl
Z2lzdHJhdGlvblByb21pc2UmJik7CiAgICAgdm9pZCB0ZXJtaW5hdGVTZXJ2aWNlV29ya2VyKFNl
cnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCBpc1Nl
cnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8SURM
Qm9vbGVhbj4mJik7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpOwogI2VuZGlmCiAKICNpZiBF
TkFCTEUoQVBQTEVfUEFZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGU1
YzU4ZjYyYjQxYmM5NTc4OWZmMTc0MTkzNWVmNjkwMTcyZjgzOWYuLjgyZTQ4ZWVmYjY5YzM0YzFj
MmZjMDg5YmJkY2NkYzYxMzQzN2IyODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwKQEAgLTc3MSw3ICs3NzEsNyBAQCBlbnVtIENvbXBvc2l0aW5nUG9saWN5IHsKIAogICAgIFtD
b25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlzZTxib29sZWFuPiBoYXNTZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uKERPTVN0cmluZyBzY29wZVVSTCk7CiAgICAgW0NvbmRpdGlvbmFsPVNF
UlZJQ0VfV09SS0VSXSBQcm9taXNlPHZvaWQ+IHRlcm1pbmF0ZVNlcnZpY2VXb3JrZXIoU2Vydmlj
ZVdvcmtlciB3b3JrZXIpOwotICAgIFtDb25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlz
ZTxib29sZWFuPiBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXIgd29ya2VyKTsK
KyAgICBbQ29uZGl0aW9uYWw9U0VSVklDRV9XT1JLRVJdIFByb21pc2U8dm9pZD4gd2hlblNlcnZp
Y2VXb3JrZXJJc1Rlcm1pbmF0ZWQoU2VydmljZVdvcmtlciB3b3JrZXIpOwogCiAgICAgW0NhbGxX
aXRoPURvY3VtZW50LCBDb25kaXRpb25hbD1BUFBMRV9QQVldIHJlYWRvbmx5IGF0dHJpYnV0ZSBN
b2NrUGF5bWVudENvb3JkaW5hdG9yIG1vY2tQYXltZW50Q29vcmRpbmF0b3I7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaAppbmRl
eCA5YjM5NGMxMThjNjI1MDM2MWU3NDcyZmVkNTE5NzIzNmJmZWI1NGVhLi42YWFlNDU1NmJkYTZh
MWYwMTM0YzcxY2M1OGIyYWQxNjhiODg2MTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoRmV0Y2hpbmdTY3JpcHRJblNlcnZlcihjb25z
dCBTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgc3Rv
cmVSZWdpc3RyYXRpb25zT25EaXNrRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY2FsbGJhY2spIHsgY2FsbGJhY2soKTsgfQotICAgIHZpcnR1YWwgdm9pZCBpc1NlcnZpY2VX
b3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmIGNhbGxiYWNrKSB7IGNhbGxiYWNrKGZhbHNlKTsgfQorICAgIHZpcnR1YWwg
dm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtl
cklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFjaykgeyBjYWxs
YmFjaygpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlZ2lzdGVyU2VydmljZVdvcmtl
ckNsaWVudHMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyLmNwcAppbmRleCBlNmRmNTFhMWMxZTJmNzdhNTBiYThjNmI0ZGJjZjE5NGFi
YzZhMmQ1Li4wMjExZjc1OGIyM2ZkYWMyYmMyNTk5MTE5MmEzZWUzN2ZlOWMwZjk1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcApA
QCAtNjg1LDYgKzY4NSwxNSBAQCB2b2lkIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VySWZOZWNl
c3NhcnkoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUgogICAgICAgICByZXR1
cm47CiAgICAgfQogCisgICAgaWYgKHdvcmtlci0+aXNUZXJtaW5hdGluZygpKSB7CisgICAgICAg
IHdvcmtlci0+d2hlblRlcm1pbmF0ZWQoW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhp
cyksIGlkZW50aWZpZXIsIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldKCkgbXV0YWJsZSB7
CisgICAgICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgICAgIHJldHVybiBjYWxs
YmFjayhmYWxzZSk7CisgICAgICAgICAgICBydW5TZXJ2aWNlV29ya2VySWZOZWNlc3NhcnkoaWRl
bnRpZmllciwgV1RGTW92ZShjYWxsYmFjaykpOworICAgICAgICB9KTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKwogICAgIGlmICghY29udGV4dENvbm5lY3Rpb24pIHsKICAgICAgICAgYXV0byYg
c2VydmljZVdvcmtlclJ1blJlcXVlc3RzRm9yT3JpZ2luID0gbV9zZXJ2aWNlV29ya2VyUnVuUmVx
dWVzdHMuZW5zdXJlKHdvcmtlci0+cmVnaXN0cmFibGVEb21haW4oKSwgW10gewogICAgICAgICAg
ICAgcmV0dXJuIEhhc2hNYXA8U2VydmljZVdvcmtlcklkZW50aWZpZXIsIFZlY3RvcjxSdW5TZXJ2
aWNlV29ya2VyQ2FsbGJhY2s+PiB7IH07CkBAIC03MTIsOCArNzIxLDkgQEAgYm9vbCBTV1NlcnZl
cjo6cnVuU2VydmljZVdvcmtlcihTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyKQog
ICAgIGlmICghd29ya2VyLT5yZWdpc3RyYXRpb24oKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
Ci0gICAgYXV0byBhZGRSZXN1bHQgPSBtX3J1bm5pbmdPclRlcm1pbmF0aW5nV29ya2Vycy5hZGQo
aWRlbnRpZmllciwgKndvcmtlcik7Ci0gICAgQVNTRVJUX1VOVVNFRChhZGRSZXN1bHQsIGFkZFJl
c3VsdC5pc05ld0VudHJ5IHx8IHdvcmtlci0+aXNUZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQo
IXdvcmtlci0+aXNUZXJtaW5hdGluZygpKTsKKyAgICBBU1NFUlQoIW1fcnVubmluZ09yVGVybWlu
YXRpbmdXb3JrZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKKyAgICBtX3J1bm5pbmdPclRlcm1p
bmF0aW5nV29ya2Vycy5hZGQoaWRlbnRpZmllciwgKndvcmtlcik7CiAKICAgICB3b3JrZXItPnNl
dFN0YXRlKFNXU2VydmVyV29ya2VyOjpTdGF0ZTo6UnVubmluZyk7CiAKQEAgLTczOCwxNSArNzQ4
LDE1IEBAIHZvaWQgU1dTZXJ2ZXI6Om1hcmtBbGxXb3JrZXJzRm9yUmVnaXN0cmFibGVEb21haW5B
c1Rlcm1pbmF0ZWQoY29uc3QgUmVnaXN0cmFibGVECiAKIHZvaWQgU1dTZXJ2ZXI6OndvcmtlckNv
bnRleHRUZXJtaW5hdGVkKFNXU2VydmVyV29ya2VyJiB3b3JrZXIpCiB7Ci0gICAgd29ya2VyLnNl
dFN0YXRlKFNXU2VydmVyV29ya2VyOjpTdGF0ZTo6Tm90UnVubmluZyk7Ci0KLSAgICBpZiAoYXV0
byogam9iUXVldWUgPSBtX2pvYlF1ZXVlcy5nZXQod29ya2VyLnJlZ2lzdHJhdGlvbktleSgpKSkK
LSAgICAgICAgam9iUXVldWUtPmNhbmNlbEpvYnNGcm9tU2VydmljZVdvcmtlcih3b3JrZXIuaWRl
bnRpZmllcigpKTsKLQogICAgIC8vIEF0IHRoaXMgcG9pbnQgaWYgbm8gcmVnaXN0cmF0aW9ucyBh
cmUgcmVmZXJlbmNpbmcgdGhlIHdvcmtlciB0aGVuIGl0IHdpbGwgYmUgZGVzdHJveWVkLAogICAg
IC8vIHJlbW92aW5nIGl0c2VsZiBmcm9tIHRoZSBtX3dvcmtlcnNCeUlEIG1hcC4KICAgICBhdXRv
IHJlc3VsdCA9IG1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLnRha2Uod29ya2VyLmlkZW50
aWZpZXIoKSk7CiAgICAgQVNTRVJUX1VOVVNFRChyZXN1bHQsIHJlc3VsdCAmJiByZXN1bHQtPnB0
cigpID09ICZ3b3JrZXIpOworCisgICAgd29ya2VyLnNldFN0YXRlKFNXU2VydmVyV29ya2VyOjpT
dGF0ZTo6Tm90UnVubmluZyk7CisKKyAgICBpZiAoYXV0byogam9iUXVldWUgPSBtX2pvYlF1ZXVl
cy5nZXQod29ya2VyLnJlZ2lzdHJhdGlvbktleSgpKSkKKyAgICAgICAgam9iUXVldWUtPmNhbmNl
bEpvYnNGcm9tU2VydmljZVdvcmtlcih3b3JrZXIuaWRlbnRpZmllcigpKTsKIH0KIAogdm9pZCBT
V1NlcnZlcjo6ZmlyZUluc3RhbGxFdmVudChTV1NlcnZlcldvcmtlciYgd29ya2VyKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29y
a2VyLmNwcAppbmRleCA0NmI3NGU4OWUzNWU5NTE0ZDgwMDkzNmJiNDBlMDRmMjAwMzI5NGMwLi4x
MTEwZDY3MmU4NGYyOThlN2E0YjhlYzAyZDEzZDI4MmY3MjkxZDUzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNw
cApAQCAtMTA0LDYgKzEwNCwxMiBAQCB2b2lkIFNXU2VydmVyV29ya2VyOjp0ZXJtaW5hdGUoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogICAgIH0KIH0KIAordm9pZCBTV1Nl
cnZlcldvcmtlcjo6d2hlblRlcm1pbmF0ZWQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNh
bGxiYWNrKQoreworICAgIEFTU0VSVChpc1J1bm5pbmcoKSB8fCBpc1Rlcm1pbmF0aW5nKCkpOwor
ICAgIG1fdGVybWluYXRpb25DYWxsYmFja3MuYXBwZW5kKFdURk1vdmUoY2FsbGJhY2spKTsKK30K
Kwogdm9pZCBTV1NlcnZlcldvcmtlcjo6c3RhcnRUZXJtaW5hdGlvbihDb21wbGV0aW9uSGFuZGxl
cjx2b2lkKCk+JiYgY2FsbGJhY2spCiB7CiAgICAgYXV0byogY29udGV4dENvbm5lY3Rpb24gPSB0
aGlzLT5jb250ZXh0Q29ubmVjdGlvbigpOwpAQCAtMjk2LDYgKzMwMiw3IEBAIHZvaWQgU1dTZXJ2
ZXJXb3JrZXI6OmNhbGxXaGVuQWN0aXZhdGVkSGFuZGxlcihib29sIHN1Y2Nlc3MpCiB2b2lkIFNX
U2VydmVyV29ya2VyOjpzZXRTdGF0ZShTdGF0ZSBzdGF0ZSkKIHsKICAgICBBU1NFUlQoc3RhdGUg
IT0gU3RhdGU6OlJ1bm5pbmcgfHwgbV9yZWdpc3RyYXRpb24pOworICAgIEFTU0VSVChzdGF0ZSAh
PSBTdGF0ZTo6UnVubmluZyB8fCBtX3N0YXRlICE9IFN0YXRlOjpUZXJtaW5hdGluZyk7CiAgICAg
bV9zdGF0ZSA9IHN0YXRlOwogCiAgICAgc3dpdGNoIChzdGF0ZSkgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oIGIvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCmluZGV4
IDYxMDBjZDk2YjU5Y2YzYzI5M2NiODViZWQzNThiMTAwOTc1ODFiY2QuLmM3NGRjZGIxZDQwMTBl
ZDcwNTMwYmY4Zjc3NmJlNGQzNDU0MzBjMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKQEAgLTYzLDYgKzYzLDcg
QEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIH5TV1NlcnZlcldvcmtlcigpOwogCiAgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCB0ZXJtaW5hdGUoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYm
ID0gW10geyB9KTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdoZW5UZXJtaW5hdGVkKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoKT4mJik7CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdoZW5B
Y3RpdmF0ZWQoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29sKT4mJik7CiAKQEAgLTczLDYgKzc0
LDcgQEAgcHVibGljOgogICAgIH07CiAgICAgYm9vbCBpc1J1bm5pbmcoKSBjb25zdCB7IHJldHVy
biBtX3N0YXRlID09IFN0YXRlOjpSdW5uaW5nOyB9CiAgICAgYm9vbCBpc1Rlcm1pbmF0aW5nKCkg
Y29uc3QgeyByZXR1cm4gbV9zdGF0ZSA9PSBTdGF0ZTo6VGVybWluYXRpbmc7IH0KKyAgICBib29s
IGlzTm90UnVubmluZygpIGNvbnN0IHsgcmV0dXJuIG1fc3RhdGUgPT0gU3RhdGU6Ok5vdFJ1bm5p
bmc7IH0KICAgICB2b2lkIHNldFN0YXRlKFN0YXRlKTsKIAogICAgIFNXU2VydmVyKiBzZXJ2ZXIo
KSB7IHJldHVybiBtX3NlcnZlci5nZXQoKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25u
ZWN0aW9uLmNwcAppbmRleCA5YWFkOWVkMGYyYTEzMjFhYjQ5NmVlYWYzZGY0YTg4YjYyMjk3MDRk
Li42MDIzZmY0ZTcyN2IyMDYxYjk0Y2EwMzQ5ZTg0ZWY0NzE5YWNkOTliIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25u
ZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3Jr
ZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcApAQCAtNDY0LDEwICs0NjQsMTIgQEAgdm9pZCBX
ZWJTV1NlcnZlckNvbm5lY3Rpb246OnRlcm1pbmF0ZVdvcmtlckZyb21DbGllbnQoU2VydmljZVdv
cmtlcklkZW50aWZpZXIgc2UKICAgICB3b3JrZXItPnRlcm1pbmF0ZShXVEZNb3ZlKGNhbGxiYWNr
KSk7CiB9CiAKLXZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjppc1NlcnZpY2VXb3JrZXJSdW5u
aW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoYm9vbCk+JiYgY29tcGxldGlvbkhhbmRsZXIpCit2b2lkIFdlYlNXU2VydmVyQ29ubmVj
dGlvbjo6d2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNl
cnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
KT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBhdXRvKiB3b3JrZXIgPSBTV1NlcnZlcldv
cmtlcjo6ZXhpc3RpbmdXb3JrZXJGb3JJZGVudGlmaWVyKGlkZW50aWZpZXIpOwotICAgIGNvbXBs
ZXRpb25IYW5kbGVyKHdvcmtlciA/IHdvcmtlci0+aXNSdW5uaW5nKCkgOiBmYWxzZSk7CisgICAg
aWYgKCF3b3JrZXIgfHwgd29ya2VyLT5pc05vdFJ1bm5pbmcoKSkKKyAgICAgICAgcmV0dXJuIGNv
bXBsZXRpb25IYW5kbGVyKCk7CisgICAgd29ya2VyLT53aGVuVGVybWluYXRlZChXVEZNb3ZlKGNv
bXBsZXRpb25IYW5kbGVyKSk7CiB9CiAKIFBBTDo6U2Vzc2lvbklEIFdlYlNXU2VydmVyQ29ubmVj
dGlvbjo6c2Vzc2lvbklEKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uaCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24u
aAppbmRleCA4ZTQ4NDFlMDY2ZDc2YWIxYTc1ZTBhYjQ1OGU2NTU0MzI3MjI2MjFiLi5jODMzNzAx
YzE4OGI4YWU0NTZkNGIzZDEwNzQwNTdkOTY2OTgxZGM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmgK
KysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2Vy
dmVyQ29ubmVjdGlvbi5oCkBAIC0xMDMsNyArMTAzLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJl
Z2lzdGVyU2VydmljZVdvcmtlckNsaWVudChXZWJDb3JlOjpTZWN1cml0eU9yaWdpbkRhdGEmJiB0
b3BPcmlnaW4sIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnREYXRhJiYsIGNvbnN0IE9wdGlv
bmFsPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyPiYsIFN0cmlu
ZyYmIHVzZXJBZ2VudCk7CiAgICAgdm9pZCB1bnJlZ2lzdGVyU2VydmljZVdvcmtlckNsaWVudChj
b25zdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyQ2xpZW50SWRlbnRpZmllciYpOwogICAgIHZvaWQg
dGVybWluYXRlV29ya2VyRnJvbUNsaWVudChXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmll
ciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKLSAgICB2b2lkIGlzU2VydmljZVdvcmtl
clJ1bm5pbmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoYm9vbCk+JiYpOworICAgIHZvaWQgd2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0
ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYpOwogCiAgICAgdm9pZCBwb3N0TWVzc2FnZVRvU2VydmljZVdvcmtl
ckNsaWVudChXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIgZGVzdGluYXRpb25Db250ZXh0SWRl
bnRpZmllciwgY29uc3QgV2ViQ29yZTo6TWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMmLCBXZWJDb3Jl
OjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciBzb3VyY2VTZXJ2aWNlV29ya2VySWRlbnRpZmllciwg
Y29uc3QgU3RyaW5nJiBzb3VyY2VPcmlnaW4pIGZpbmFsOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9u
Lm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2Vy
L1dlYlNXU2VydmVyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCBlMjVkNzFlOWFkZTkxOWM4
NWIxMTcxZWE2Nzc0MWEwYjBlNmRiMDA0Li40YzE4NjM3N2Y4ZTVmZTJmMDNiMTM0MDJhOWIzOTA2
MDFlMzNiNTkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZp
Y2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24u
bWVzc2FnZXMuaW4KQEAgLTQyLDEwICs0MiwxMCBAQCBtZXNzYWdlcyAtPiBXZWJTV1NlcnZlckNv
bm5lY3Rpb24gTm90UmVmQ291bnRlZCB7CiAgICAgVW5yZWdpc3RlclNlcnZpY2VXb3JrZXJDbGll
bnQoc3RydWN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyIGlkZW50aWZp
ZXIpCiAKICAgICBUZXJtaW5hdGVXb3JrZXJGcm9tQ2xpZW50KFdlYkNvcmU6OlNlcnZpY2VXb3Jr
ZXJJZGVudGlmaWVyIHdvcmtlcklkZW50aWZpZXIpIC0+ICgpIEFzeW5jCisgICAgV2hlblNlcnZp
Y2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVu
dGlmaWVyIHdvcmtlcklkZW50aWZpZXIpIC0+ICgpIEFzeW5jCiAKICAgICBTZXRUaHJvdHRsZVN0
YXRlKGJvb2wgaXNUaHJvdHRsZWFibGUpCiAgICAgU3RvcmVSZWdpc3RyYXRpb25zT25EaXNrKCkg
LT4gKCkgQXN5bmMKLSAgICBJc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFdlYkNvcmU6OlNlcnZpY2VX
b3JrZXJJZGVudGlmaWVyIHdvcmtlcklkZW50aWZpZXIpIC0+IChib29sIGlzUnVubmluZykgQXN5
bmMKIH0KIAogI2VuZGlmIC8vIEVOQUJMRShTRVJWSUNFX1dPUktFUikKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24u
Y3BwCmluZGV4IGMzY2NjNjlhNmVjYTEzYWE5YTg3ZjYyMjQ3ZTAzMzU2OWEyYzE3OWIuLmY1YzQy
YzBkNTVkYjIxOGM5M2EzMGQ0MjI1YWY4YjUyYmY2OWYyZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNw
cApAQCAtMjQ4LDkgKzI0OCw5IEBAIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjp0ZXJtaW5h
dGVXb3JrZXJGb3JUZXN0aW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkCiAgICAgc2VuZFdp
dGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OlRlcm1pbmF0ZVdv
cmtlckZyb21DbGllbnQgeyBpZGVudGlmaWVyIH0sIFdURk1vdmUoY2FsbGJhY2spKTsKIH0KIAot
dm9pZCBXZWJTV0NsaWVudENvbm5lY3Rpb246OmlzU2VydmljZVdvcmtlclJ1bm5pbmcoU2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChib29s
KT4mJiBjYWxsYmFjaykKK3ZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjp3aGVuU2VydmljZVdv
cmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRp
ZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQogewotICAgIHNlbmRX
aXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpJc1NlcnZpY2VX
b3JrZXJSdW5uaW5nIHsgaWRlbnRpZmllciB9LCBXVEZNb3ZlKGNhbGxiYWNrKSk7CisgICAgc2Vu
ZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OldoZW5TZXJ2
aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyB7IGlkZW50aWZpZXIgfSwgV1RGTW92ZShj
YWxsYmFjaykpOwogfQogCiB2b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6dXBkYXRlVGhyb3R0
bGVTdGF0ZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9X
ZWJTV0NsaWVudENvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdl
L1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oCmluZGV4IDZjOTJlNzA5MDQwYjA0ZWMxMTIxZTBlMDU2
N2MxMTZhNTZlYjZhYTUuLjljYjAzODYwYzFkZWY4MWIwYjdhZWJmYTY2ODMwZjE5ZjRlYjQzMDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNX
Q2xpZW50Q29ubmVjdGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBz
ZXREb2N1bWVudElzQ29udHJvbGxlZChXZWJDb3JlOjpEb2N1bWVudElkZW50aWZpZXIsIFdlYkNv
cmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYpOwogCiAgICAgdm9pZCBnZXRSZWdpc3RyYXRpb25zKFdlYkNvcmU6OlNlY3Vy
aXR5T3JpZ2luRGF0YSYmIHRvcE9yaWdpbiwgY29uc3QgVVJMJiBjbGllbnRVUkwsIEdldFJlZ2lz
dHJhdGlvbnNDYWxsYmFjayYmKSBmaW5hbDsKLSAgICB2b2lkIGlzU2VydmljZVdvcmtlclJ1bm5p
bmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoYm9vbCk+JiYpIGZpbmFsOworICAgIHZvaWQgd2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0
ZWRGb3JUZXN0aW5nKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKCk+JiYpIGZpbmFsOwogCiAgICAgdm9pZCBkaWRSZXNvbHZlUmVnaXN0cmF0
aW9uUHJvbWlzZShjb25zdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5Jikg
ZmluYWw7CiAgICAgdm9pZCBzdG9yZVJlZ2lzdHJhdGlvbnNPbkRpc2tGb3JUZXN0aW5nKENvbXBs
ZXRpb25IYW5kbGVyPHZvaWQoKT4mJikgZmluYWw7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDNmMTI3NjRjYjk3NmVlMWRi
MDJhNWZiYjRkNTVmNGNhZjY5ZWQ2MC4uNDBjNTY0YWUwMjc2NTMxN2E2MDVkOTNkMGZhYTZmYTA2
ZDhkZTM5YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTA0LTA2ICBZb3Vlbm4gRmFibGV0
ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQgbm90IHJ1biBh
IHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jl
c291cmNlcy9yb3V0aW5lcy5qczoKKyAgICAgICAgKGFzeW5jIHdhaXRGb3JTZXJ2aWNlV29ya2Vy
Tm9Mb25nZXJSdW5uaW5nKToKKyAgICAgICAgVXNlIG5ldyBpbnRlcm5hbHMgQVBJLgorCiAyMDIw
LTA0LTA1ICBNYW51ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgogCiAgICAg
ICAgIENvbXB1dGVkIHN0eWxlIGZvciAib3V0bGluZS1vZmZzZXQiIGlzIHdyb25nIHdoZW4gIm91
dGxpbmUtc3R5bGUiIGlzICJub25lIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQv
c2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qcyBiL0xheW91dFRlc3RzL2h0dHAv
d3B0L3NlcnZpY2Utd29ya2Vycy9yZXNvdXJjZXMvcm91dGluZXMuanMKaW5kZXggYzZkYjgyY2Jl
NmZmYzU1ZDEwNTI0OTU1YTBhMWE5NjQzMjU5MWE1ZC4uNzY0OTcwOTBlNjA4YzRmMTVkY2Y0ZGY3
MmJhZjBjN2M5YWE5ZTFlNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvc2Vydmlj
ZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qcworKysgYi9MYXlvdXRUZXN0cy9odHRwL3dw
dC9zZXJ2aWNlLXdvcmtlcnMvcmVzb3VyY2VzL3JvdXRpbmVzLmpzCkBAIC0zMywxMSArMzMsOCBA
QCBhc3luYyBmdW5jdGlvbiB3YWl0Rm9yU2VydmljZVdvcmtlck5vTG9uZ2VyUnVubmluZyh3b3Jr
ZXIpCiAgICAgaWYgKCF3aW5kb3cuaW50ZXJuYWxzKQogICAgICAgICByZXR1cm4gUHJvbWlzZS5y
ZWplY3QoInJlcXVpcmVzIGludGVybmFscyIpOwogCi0gICAgbGV0IGNvdW50ID0gMTAwOwotICAg
IHdoaWxlICgtLWNvdW50ID4gMCAmJiBhd2FpdCBpbnRlcm5hbHMuaXNTZXJ2aWNlV29ya2VyUnVu
bmluZyh3b3JrZXIpKSB7Ci0gICAgICAgIHdvcmtlci5wb3N0TWVzc2FnZSgidGVzdCIpOwotICAg
ICAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgNTAp
KTsKLSAgICB9Ci0gICAgaWYgKGNvdW50ID09PSAwKQotICAgICAgICByZXR1cm4gUHJvbWlzZS5y
ZWplY3QoInNlcnZpY2Ugd29ya2VyIGlzIHN0aWxsIHJ1bm5pbmciKTsKKyAgICBjb25zdCBwcm9t
aXNlID0gaW50ZXJuYWxzLndoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkKHdvcmtlcik7Cisg
ICAgbGV0IHRpbWVyID0gc2V0SW50ZXJ2YWwoKCkgPT4gd29ya2VyLnBvc3RNZXNzYWdlKCJ0ZXN0
IiksIDUwKTsKKyAgICBhd2FpdCBwcm9taXNlOworICAgIGNsZWFySW50ZXJ2YWwodGltZXIpOwog
fQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395684</attachid>
            <date>2020-04-07 08:23:09 -0700</date>
            <delta_ts>2020-04-10 00:39:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210044-20200407172307.patch</filename>
            <type>text/plain</type>
            <size>18871</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NTY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M0YTI2YTI0NzQ5ODk3
OTZkMzcyNGQxMDI5NTA0ZmJlZmEwYzljZC4uOWE5YWM4MzI4ZTQxYzA4YWNhMDc3MmQ2OGFkYmI5
OTk0MThjMjgzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTA0LTA2ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQg
bm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElmIGEgdGVzdCBpcyBiZWluZyB0
ZXJtaW5hdGVkIGFuZCB3ZSB3YW50IHRvIHJlc3RhcnQgaXQsIHdlIHdlcmUgcHJldmlvdXNseSBy
dW5uaW5nIGl0IHJpZ2h0IGF3YXkuCisgICAgICAgIFRoaXMgZG9lcyBub3Qgd29yayB3ZWxsIGFz
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIG1pZ2h0IHN0aWxsIGhhdmUgdGhlIHRlcm1pbmF0
aW5nIHNlcnZpY2Ugd29ya2VyIGluIGl0cyBtYXAuCisgICAgICAgIEFsc28sIGlmIHRoZSBzZXJ2
aWNlIHdvcmtlciBpcyBub3QgYWJsZSB0b3Rlcm1pbmF0ZSBwcm9wZXJseSwgd2Ugd2lsbCBraWxs
IHRoZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIHNvIHRoZXJlIGlzIG5vIHJlYXNvbgorICAgICAg
ICB0byB0cnkgcnVubmluZyB0aGlzIHNlcnZpY2Ugd29ya2VyIGluIHRoaXMgcHJvY2Vzcy4KKyAg
ICAgICAgSW5zdGVhZCwgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyIHRvIHRlcm1pbmF0ZSAo
d2hpY2ggbWlnaHQgaW5jbHVkZSB0ZXJtaW5hdGluZyB0aGUgc2VydmljZSB3b3JrZXIgcHJvY2Vz
cykuCisKKyAgICAgICAgSW4gYWRkaXRpb24sIHdlIHJlbW92ZSB0aGUgaXNTZXJ2aWNlV29ya2Vy
UnVubmluZyBpbnRlcm5hbHMgQVBJIHNpbmNlIHRoaXMgaXMgcG90ZW50aWFsbHkgZmxha3kgYXMg
dGhlIHNlcnZpY2Ugd29ya2VyCisgICAgICAgIG1pZ2h0IGJlIHRlcm1pbmF0ZWQgYW5kIHJlcnVu
bmluZyBpbiBiZXR3ZWVuIHR3byBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nIGNoZWNrcy4KKyAgICAg
ICAgSW5zdGVhZCwgd2UgaW50cm9kdWNlIHdoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkIHdo
aWNoIHdpbGwgcmVzb2x2ZSBhcyBzb29uIGFzIHRoZSBzZXJ2aWNlIHdvcmtlciBnb2VzIHRvIHRl
cm1pbmF0ZWQuCisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyBzcGlubmluZyB0ZXN0cyBu
byBsb25nZXIgY3Jhc2hpbmcuCisKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbHM6OndoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVk
KToKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50
ZXJuYWxzLmlkbDoKKyAgICAgICAgKiB3b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9u
Lmg6CisgICAgICAgIChXZWJDb3JlOjpTV0NsaWVudENvbm5lY3Rpb246OndoZW5TZXJ2aWNlV29y
a2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcklmTmVjZXNzYXJ5KToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpydW5TZXJ2
aWNlV29ya2VyKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjp3b3JrZXJDb250ZXh0VGVy
bWluYXRlZCk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcldvcmtlcjo6d2hlblRlcm1pbmF0ZWQp
OgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKToKKyAgICAgICAg
KiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmg6CisgICAgICAgIChXZWJD
b3JlOjpTV1NlcnZlcldvcmtlcjo6aXNOb3RSdW5uaW5nIGNvbnN0KToKKwogMjAyMC0wNC0wNiAg
WW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVubmVj
ZXNzYXJ5IG1lbW9yeSBhbGxvY2F0aW9uIGZyb20gUmVhbHRpbWVJbmNvbWluZ0F1ZGlvU291cmNl
Q29jb2E6Ok9uRGF0YQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCA5MmRlMWZiYTI4N2QzMGFjMDBlY2I4ZTM1MTBhYWFl
ZjdmMDdhNzc4Li4xOGZlZTc3YTcyMmU5YmE5MjQ0NjRiYzZkZWNmYTFjM2M4YjZjYjA3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA0LTA2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQgbm90IHJ1biBhIHNlcnZpY2Ug
d29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRl
ZCBjaGVjay4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dT
ZXJ2ZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcpOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmg6Cisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24ubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6
d2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nKToKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmg6CisKIDIwMjAtMDQtMDUgIERv
biBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbQ01ha2VdIEFk
ZCBXZWJLaXQ6OldlYktpdCB0YXJnZXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApp
bmRleCA1MWU3ZDFiZTkzMmExNzczYzY2NTAwYzg2MGRkZDRlY2UxMzFiNTJjLi5hMTBkYzZjM2Ex
YjhkYzk0OGQwZTkwNTUxMzYyNmMyZWVhZDkxYjU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuY3BwCkBAIC01MTUxLDEwICs1MTUxLDEwIEBAIHZvaWQgSW50ZXJuYWxzOjp0ZXJtaW5h
dGVTZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVk
CiAgICAgfSk7CiB9CiAKLXZvaWQgSW50ZXJuYWxzOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNl
cnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJv
bWlzZSkKK3ZvaWQgSW50ZXJuYWxzOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiB3b3JrZXIsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7
Ci0gICAgcmV0dXJuIFNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2luZ2xldG9uKCkuc2VydmljZVdv
cmtlckNvbm5lY3Rpb24oKS5pc1NlcnZpY2VXb3JrZXJSdW5uaW5nKHdvcmtlci5pZGVudGlmaWVy
KCksIFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCByZXN1bHQpIG11dGFibGUgewot
ICAgICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0KTsKKyAgICByZXR1cm4gU2VydmljZVdvcmtl
clByb3ZpZGVyOjpzaW5nbGV0b24oKS5zZXJ2aWNlV29ya2VyQ29ubmVjdGlvbigpLndoZW5TZXJ2
aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyh3b3JrZXIuaWRlbnRpZmllcigpLCBbcHJv
bWlzZSA9IFdURk1vdmUocHJvbWlzZSldKCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2UucmVz
b2x2ZSgpOwogICAgIH0pOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApp
bmRleCA3OWY0MjRjM2Q4M2EwZDZlM2FkMzJhZDVhYTg0ZTZjMDU2OTcyZjU4Li44YjQ1ZWNlMTBl
ODAxZjBhOGQ3NWE2MWNjNzkzYmE1NWQ0Yzg0MTU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmgKQEAgLTc4NSw3ICs3ODUsNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgSGFzUmVnaXN0cmF0
aW9uUHJvbWlzZSA9IERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPjsKICAgICB2b2lkIGhh
c1NlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb24oY29uc3QgU3RyaW5nJiBjbGllbnRVUkwsIEhhc1Jl
Z2lzdHJhdGlvblByb21pc2UmJik7CiAgICAgdm9pZCB0ZXJtaW5hdGVTZXJ2aWNlV29ya2VyKFNl
cnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCBpc1Nl
cnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8SURM
Qm9vbGVhbj4mJik7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2
aWNlV29ya2VyJiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpOwogI2VuZGlmCiAKICNpZiBF
TkFCTEUoQVBQTEVfUEFZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGU1
YzU4ZjYyYjQxYmM5NTc4OWZmMTc0MTkzNWVmNjkwMTcyZjgzOWYuLjgyZTQ4ZWVmYjY5YzM0YzFj
MmZjMDg5YmJkY2NkYzYxMzQzN2IyODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwKQEAgLTc3MSw3ICs3NzEsNyBAQCBlbnVtIENvbXBvc2l0aW5nUG9saWN5IHsKIAogICAgIFtD
b25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlzZTxib29sZWFuPiBoYXNTZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uKERPTVN0cmluZyBzY29wZVVSTCk7CiAgICAgW0NvbmRpdGlvbmFsPVNF
UlZJQ0VfV09SS0VSXSBQcm9taXNlPHZvaWQ+IHRlcm1pbmF0ZVNlcnZpY2VXb3JrZXIoU2Vydmlj
ZVdvcmtlciB3b3JrZXIpOwotICAgIFtDb25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlz
ZTxib29sZWFuPiBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXIgd29ya2VyKTsK
KyAgICBbQ29uZGl0aW9uYWw9U0VSVklDRV9XT1JLRVJdIFByb21pc2U8dm9pZD4gd2hlblNlcnZp
Y2VXb3JrZXJJc1Rlcm1pbmF0ZWQoU2VydmljZVdvcmtlciB3b3JrZXIpOwogCiAgICAgW0NhbGxX
aXRoPURvY3VtZW50LCBDb25kaXRpb25hbD1BUFBMRV9QQVldIHJlYWRvbmx5IGF0dHJpYnV0ZSBN
b2NrUGF5bWVudENvb3JkaW5hdG9yIG1vY2tQYXltZW50Q29vcmRpbmF0b3I7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaCBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaAppbmRl
eCA5YjM5NGMxMThjNjI1MDM2MWU3NDcyZmVkNTE5NzIzNmJmZWI1NGVhLi42YWFlNDU1NmJkYTZh
MWYwMTM0YzcxY2M1OGIyYWQxNjhiODg2MTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoRmV0Y2hpbmdTY3JpcHRJblNlcnZlcihjb25z
dCBTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgc3Rv
cmVSZWdpc3RyYXRpb25zT25EaXNrRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgY2FsbGJhY2spIHsgY2FsbGJhY2soKTsgfQotICAgIHZpcnR1YWwgdm9pZCBpc1NlcnZpY2VX
b3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2
b2lkKGJvb2wpPiYmIGNhbGxiYWNrKSB7IGNhbGxiYWNrKGZhbHNlKTsgfQorICAgIHZpcnR1YWwg
dm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtl
cklkZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFjaykgeyBjYWxs
YmFjaygpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlZ2lzdGVyU2VydmljZVdvcmtl
ckNsaWVudHMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyLmNwcAppbmRleCBlNmRmNTFhMWMxZTJmNzdhNTBiYThjNmI0ZGJjZjE5NGFi
YzZhMmQ1Li4yOGQ5ZmZhZTczY2MwNGZiZWM3YzMyNjNmZThjYTUyZDkxYTE1ZTY5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcApA
QCAtNjg1LDYgKzY4NSwxNSBAQCB2b2lkIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VySWZOZWNl
c3NhcnkoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUgogICAgICAgICByZXR1
cm47CiAgICAgfQogCisgICAgaWYgKHdvcmtlci0+aXNUZXJtaW5hdGluZygpKSB7CisgICAgICAg
IHdvcmtlci0+d2hlblRlcm1pbmF0ZWQoW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhp
cyksIGlkZW50aWZpZXIsIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldKCkgbXV0YWJsZSB7
CisgICAgICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgICAgIHJldHVybiBjYWxs
YmFjayhudWxscHRyKTsKKyAgICAgICAgICAgIHJ1blNlcnZpY2VXb3JrZXJJZk5lY2Vzc2FyeShp
ZGVudGlmaWVyLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CisgICAgICAgIH0pOworICAgICAgICByZXR1
cm47CisgICAgfQorCiAgICAgaWYgKCFjb250ZXh0Q29ubmVjdGlvbikgewogICAgICAgICBhdXRv
JiBzZXJ2aWNlV29ya2VyUnVuUmVxdWVzdHNGb3JPcmlnaW4gPSBtX3NlcnZpY2VXb3JrZXJSdW5S
ZXF1ZXN0cy5lbnN1cmUod29ya2VyLT5yZWdpc3RyYWJsZURvbWFpbigpLCBbXSB7CiAgICAgICAg
ICAgICByZXR1cm4gSGFzaE1hcDxTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgVmVjdG9yPFJ1blNl
cnZpY2VXb3JrZXJDYWxsYmFjaz4+IHsgfTsKQEAgLTcxMiw4ICs3MjEsOSBAQCBib29sIFNXU2Vy
dmVyOjpydW5TZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIp
CiAgICAgaWYgKCF3b3JrZXItPnJlZ2lzdHJhdGlvbigpKQogICAgICAgICByZXR1cm4gZmFsc2U7
CiAKLSAgICBhdXRvIGFkZFJlc3VsdCA9IG1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLmFk
ZChpZGVudGlmaWVyLCAqd29ya2VyKTsKLSAgICBBU1NFUlRfVU5VU0VEKGFkZFJlc3VsdCwgYWRk
UmVzdWx0LmlzTmV3RW50cnkgfHwgd29ya2VyLT5pc1Rlcm1pbmF0aW5nKCkpOworICAgIEFTU0VS
VCghd29ya2VyLT5pc1Rlcm1pbmF0aW5nKCkpOworICAgIEFTU0VSVCghbV9ydW5uaW5nT3JUZXJt
aW5hdGluZ1dvcmtlcnMuY29udGFpbnMoaWRlbnRpZmllcikpOworICAgIG1fcnVubmluZ09yVGVy
bWluYXRpbmdXb3JrZXJzLmFkZChpZGVudGlmaWVyLCAqd29ya2VyKTsKIAogICAgIHdvcmtlci0+
c2V0U3RhdGUoU1dTZXJ2ZXJXb3JrZXI6OlN0YXRlOjpSdW5uaW5nKTsKIApAQCAtNzM4LDE1ICs3
NDgsMTUgQEAgdm9pZCBTV1NlcnZlcjo6bWFya0FsbFdvcmtlcnNGb3JSZWdpc3RyYWJsZURvbWFp
bkFzVGVybWluYXRlZChjb25zdCBSZWdpc3RyYWJsZUQKIAogdm9pZCBTV1NlcnZlcjo6d29ya2Vy
Q29udGV4dFRlcm1pbmF0ZWQoU1dTZXJ2ZXJXb3JrZXImIHdvcmtlcikKIHsKLSAgICB3b3JrZXIu
c2V0U3RhdGUoU1dTZXJ2ZXJXb3JrZXI6OlN0YXRlOjpOb3RSdW5uaW5nKTsKLQotICAgIGlmIChh
dXRvKiBqb2JRdWV1ZSA9IG1fam9iUXVldWVzLmdldCh3b3JrZXIucmVnaXN0cmF0aW9uS2V5KCkp
KQotICAgICAgICBqb2JRdWV1ZS0+Y2FuY2VsSm9ic0Zyb21TZXJ2aWNlV29ya2VyKHdvcmtlci5p
ZGVudGlmaWVyKCkpOwotCiAgICAgLy8gQXQgdGhpcyBwb2ludCBpZiBubyByZWdpc3RyYXRpb25z
IGFyZSByZWZlcmVuY2luZyB0aGUgd29ya2VyIHRoZW4gaXQgd2lsbCBiZSBkZXN0cm95ZWQsCiAg
ICAgLy8gcmVtb3ZpbmcgaXRzZWxmIGZyb20gdGhlIG1fd29ya2Vyc0J5SUQgbWFwLgogICAgIGF1
dG8gcmVzdWx0ID0gbV9ydW5uaW5nT3JUZXJtaW5hdGluZ1dvcmtlcnMudGFrZSh3b3JrZXIuaWRl
bnRpZmllcigpKTsKICAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwgcmVzdWx0ICYmIHJlc3VsdC0+
cHRyKCkgPT0gJndvcmtlcik7CisKKyAgICB3b3JrZXIuc2V0U3RhdGUoU1dTZXJ2ZXJXb3JrZXI6
OlN0YXRlOjpOb3RSdW5uaW5nKTsKKworICAgIGlmIChhdXRvKiBqb2JRdWV1ZSA9IG1fam9iUXVl
dWVzLmdldCh3b3JrZXIucmVnaXN0cmF0aW9uS2V5KCkpKQorICAgICAgICBqb2JRdWV1ZS0+Y2Fu
Y2VsSm9ic0Zyb21TZXJ2aWNlV29ya2VyKHdvcmtlci5pZGVudGlmaWVyKCkpOwogfQogCiB2b2lk
IFNXU2VydmVyOjpmaXJlSW5zdGFsbEV2ZW50KFNXU2VydmVyV29ya2VyJiB3b3JrZXIpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29y
a2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJX
b3JrZXIuY3BwCmluZGV4IDQ2Yjc0ZTg5ZTM1ZTk1MTRkODAwOTM2YmI0MGUwNGYyMDAzMjk0YzAu
LjExMTBkNjcyZTg0ZjI5OGU3YTRiOGVjMDJkMTNkMjgyZjcyOTFkNTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIu
Y3BwCkBAIC0xMDQsNiArMTA0LDEyIEBAIHZvaWQgU1dTZXJ2ZXJXb3JrZXI6OnRlcm1pbmF0ZShD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY2FsbGJhY2spCiAgICAgfQogfQogCit2b2lkIFNX
U2VydmVyV29ya2VyOjp3aGVuVGVybWluYXRlZChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y2FsbGJhY2spCit7CisgICAgQVNTRVJUKGlzUnVubmluZygpIHx8IGlzVGVybWluYXRpbmcoKSk7
CisgICAgbV90ZXJtaW5hdGlvbkNhbGxiYWNrcy5hcHBlbmQoV1RGTW92ZShjYWxsYmFjaykpOwor
fQorCiB2b2lkIFNXU2VydmVyV29ya2VyOjpzdGFydFRlcm1pbmF0aW9uKENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJiBjYWxsYmFjaykKIHsKICAgICBhdXRvKiBjb250ZXh0Q29ubmVjdGlvbiA9
IHRoaXMtPmNvbnRleHRDb25uZWN0aW9uKCk7CkBAIC0yOTYsNiArMzAyLDcgQEAgdm9pZCBTV1Nl
cnZlcldvcmtlcjo6Y2FsbFdoZW5BY3RpdmF0ZWRIYW5kbGVyKGJvb2wgc3VjY2VzcykKIHZvaWQg
U1dTZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKFN0YXRlIHN0YXRlKQogewogICAgIEFTU0VSVChzdGF0
ZSAhPSBTdGF0ZTo6UnVubmluZyB8fCBtX3JlZ2lzdHJhdGlvbik7CisgICAgQVNTRVJUKHN0YXRl
ICE9IFN0YXRlOjpSdW5uaW5nIHx8IG1fc3RhdGUgIT0gU3RhdGU6OlRlcm1pbmF0aW5nKTsKICAg
ICBtX3N0YXRlID0gc3RhdGU7CiAKICAgICBzd2l0Y2ggKHN0YXRlKSB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmggYi9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKaW5k
ZXggNjEwMGNkOTZiNTljZjNjMjkzY2I4NWJlZDM1OGIxMDA5NzU4MWJjZC4uYzc0ZGNkYjFkNDAx
MGVkNzA1MzBiZjhmNzc2YmU0ZDM0NTQzMGMyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaApAQCAtNjMsNiArNjMs
NyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgflNXU2VydmVyV29ya2VyKCk7CiAKICAg
ICBXRUJDT1JFX0VYUE9SVCB2b2lkIHRlcm1pbmF0ZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+
JiYgPSBbXSB7IH0pOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2hlblRlcm1pbmF0ZWQoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2hl
bkFjdGl2YXRlZChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKIApAQCAtNzMsNiAr
NzQsNyBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBib29sIGlzUnVubmluZygpIGNvbnN0IHsgcmV0
dXJuIG1fc3RhdGUgPT0gU3RhdGU6OlJ1bm5pbmc7IH0KICAgICBib29sIGlzVGVybWluYXRpbmco
KSBjb25zdCB7IHJldHVybiBtX3N0YXRlID09IFN0YXRlOjpUZXJtaW5hdGluZzsgfQorICAgIGJv
b2wgaXNOb3RSdW5uaW5nKCkgY29uc3QgeyByZXR1cm4gbV9zdGF0ZSA9PSBTdGF0ZTo6Tm90UnVu
bmluZzsgfQogICAgIHZvaWQgc2V0U3RhdGUoU3RhdGUpOwogCiAgICAgU1dTZXJ2ZXIqIHNlcnZl
cigpIHsgcmV0dXJuIG1fc2VydmVyLmdldCgpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNv
bm5lY3Rpb24uY3BwCmluZGV4IDlhYWQ5ZWQwZjJhMTMyMWFiNDk2ZWVhZjNkZjRhODhiNjIyOTcw
NGQuLjYwMjNmZjRlNzI3YjIwNjFiOTRjYTAzNDllODRlZjQ3MTlhY2Q5OWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNv
bm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdv
cmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwCkBAIC00NjQsMTAgKzQ2NCwxMiBAQCB2b2lk
IFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6dGVybWluYXRlV29ya2VyRnJvbUNsaWVudChTZXJ2aWNl
V29ya2VySWRlbnRpZmllciBzZQogICAgIHdvcmtlci0+dGVybWluYXRlKFdURk1vdmUoY2FsbGJh
Y2spKTsKIH0KIAotdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246OmlzU2VydmljZVdvcmtlclJ1
bm5pbmcoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViU1dTZXJ2ZXJDb25u
ZWN0aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoV2ViQ29yZTo6
U2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZCgpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGF1dG8qIHdvcmtlciA9IFNXU2VydmVy
V29ya2VyOjpleGlzdGluZ1dvcmtlckZvcklkZW50aWZpZXIoaWRlbnRpZmllcik7Ci0gICAgY29t
cGxldGlvbkhhbmRsZXIod29ya2VyID8gd29ya2VyLT5pc1J1bm5pbmcoKSA6IGZhbHNlKTsKKyAg
ICBpZiAoIXdvcmtlciB8fCB3b3JrZXItPmlzTm90UnVubmluZygpKQorICAgICAgICByZXR1cm4g
Y29tcGxldGlvbkhhbmRsZXIoKTsKKyAgICB3b3JrZXItPndoZW5UZXJtaW5hdGVkKFdURk1vdmUo
Y29tcGxldGlvbkhhbmRsZXIpKTsKIH0KIAogUEFMOjpTZXNzaW9uSUQgV2ViU1dTZXJ2ZXJDb25u
ZWN0aW9uOjpzZXNzaW9uSUQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5oIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlv
bi5oCmluZGV4IDhlNDg0MWUwNjZkNzZhYjFhNzVlMGFiNDU4ZTY1NTQzMjcyMjYyMWIuLmM4MzM3
MDFjMTg4YjhhZTQ1NmQ0YjNkMTA3NDA1N2Q5NjY5ODFkYzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24u
aAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dT
ZXJ2ZXJDb25uZWN0aW9uLmgKQEAgLTEwMyw3ICsxMDMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQg
cmVnaXN0ZXJTZXJ2aWNlV29ya2VyQ2xpZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYm
IHRvcE9yaWdpbiwgV2ViQ29yZTo6U2VydmljZVdvcmtlckNsaWVudERhdGEmJiwgY29uc3QgT3B0
aW9uYWw8V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbklkZW50aWZpZXI+JiwgU3Ry
aW5nJiYgdXNlckFnZW50KTsKICAgICB2b2lkIHVucmVnaXN0ZXJTZXJ2aWNlV29ya2VyQ2xpZW50
KGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyJik7CiAgICAgdm9p
ZCB0ZXJtaW5hdGVXb3JrZXJGcm9tQ2xpZW50KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwotICAgIHZvaWQgaXNTZXJ2aWNlV29y
a2VyUnVubmluZyhXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWlu
YXRlZEZvclRlc3RpbmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoKT4mJik7CiAKICAgICB2b2lkIHBvc3RNZXNzYWdlVG9TZXJ2aWNlV29y
a2VyQ2xpZW50KFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciBkZXN0aW5hdGlvbkNvbnRleHRJ
ZGVudGlmaWVyLCBjb25zdCBXZWJDb3JlOjpNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cyYsIFdlYkNv
cmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHNvdXJjZVNlcnZpY2VXb3JrZXJJZGVudGlmaWVy
LCBjb25zdCBTdHJpbmcmIHNvdXJjZU9yaWdpbikgZmluYWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24ubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3Jr
ZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCmluZGV4IGUyNWQ3MWU5YWRlOTE5
Yzg1YjExNzFlYTY3NzQxYTBiMGU2ZGIwMDQuLjRjMTg2Mzc3ZjhlNWZlMmYwM2IxMzQwMmE5YjM5
MDYwMWUzM2I1OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2Vy
dmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4KKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlv
bi5tZXNzYWdlcy5pbgpAQCAtNDIsMTAgKzQyLDEwIEBAIG1lc3NhZ2VzIC0+IFdlYlNXU2VydmVy
Q29ubmVjdGlvbiBOb3RSZWZDb3VudGVkIHsKICAgICBVbnJlZ2lzdGVyU2VydmljZVdvcmtlckNs
aWVudChzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckNsaWVudElkZW50aWZpZXIgaWRlbnRp
ZmllcikKIAogICAgIFRlcm1pbmF0ZVdvcmtlckZyb21DbGllbnQoV2ViQ29yZTo6U2VydmljZVdv
cmtlcklkZW50aWZpZXIgd29ya2VySWRlbnRpZmllcikgLT4gKCkgQXN5bmMKKyAgICBXaGVuU2Vy
dmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklk
ZW50aWZpZXIgd29ya2VySWRlbnRpZmllcikgLT4gKCkgQXN5bmMKIAogICAgIFNldFRocm90dGxl
U3RhdGUoYm9vbCBpc1Rocm90dGxlYWJsZSkKICAgICBTdG9yZVJlZ2lzdHJhdGlvbnNPbkRpc2so
KSAtPiAoKSBBc3luYwotICAgIElzU2VydmljZVdvcmtlclJ1bm5pbmcoV2ViQ29yZTo6U2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIgd29ya2VySWRlbnRpZmllcikgLT4gKGJvb2wgaXNSdW5uaW5nKSBB
c3luYwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNw
cCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlv
bi5jcHAKaW5kZXggYzNjY2M2OWE2ZWNhMTNhYTlhODdmNjIyNDdlMDMzNTY5YTJjMTc5Yi4uZjVj
NDJjMGQ1NWRiMjE4YzkzYTMwZDQyMjVhZjhiNTJiZjY5ZjJlOSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24u
Y3BwCkBAIC0yNDgsOSArMjQ4LDkgQEAgdm9pZCBXZWJTV0NsaWVudENvbm5lY3Rpb246OnRlcm1p
bmF0ZVdvcmtlckZvclRlc3RpbmcoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWQKICAgICBzZW5k
V2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6VGVybWluYXRl
V29ya2VyRnJvbUNsaWVudCB7IGlkZW50aWZpZXIgfSwgV1RGTW92ZShjYWxsYmFjaykpOwogfQog
Ci12b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6aXNTZXJ2aWNlV29ya2VyUnVubmluZyhTZXJ2
aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJv
b2wpPiYmIGNhbGxiYWNrKQordm9pZCBXZWJTV0NsaWVudENvbm5lY3Rpb246OndoZW5TZXJ2aWNl
V29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyhTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVu
dGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY2FsbGJhY2spCiB7Ci0gICAgc2Vu
ZFdpdGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OklzU2Vydmlj
ZVdvcmtlclJ1bm5pbmcgeyBpZGVudGlmaWVyIH0sIFdURk1vdmUoY2FsbGJhY2spKTsKKyAgICBz
ZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6V2hlblNl
cnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nIHsgaWRlbnRpZmllciB9LCBXVEZNb3Zl
KGNhbGxiYWNrKSk7CiB9CiAKIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjp1cGRhdGVUaHJv
dHRsZVN0YXRlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdl
L1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3Jh
Z2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmgKaW5kZXggNmM5MmU3MDkwNDBiMDRlYzExMjFlMGUw
NTY3YzExNmE1NmViNmFhNS4uOWNiMDM4NjBjMWRlZjgxYjBiN2FlYmZhNjY4MzBmMTlmNGViNDMw
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGll
bnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2Vi
U1dDbGllbnRDb25uZWN0aW9uLmgKQEAgLTg2LDcgKzg2LDcgQEAgcHJpdmF0ZToKICAgICB2b2lk
IHNldERvY3VtZW50SXNDb250cm9sbGVkKFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciwgV2Vi
Q29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEmJiwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJik7CiAKICAgICB2b2lkIGdldFJlZ2lzdHJhdGlvbnMoV2ViQ29yZTo6U2Vj
dXJpdHlPcmlnaW5EYXRhJiYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgR2V0UmVn
aXN0cmF0aW9uc0NhbGxiYWNrJiYpIGZpbmFsOwotICAgIHZvaWQgaXNTZXJ2aWNlV29ya2VyUnVu
bmluZyhXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJikgZmluYWw7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWlu
YXRlZEZvclRlc3RpbmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRp
b25IYW5kbGVyPHZvaWQoKT4mJikgZmluYWw7CiAKICAgICB2b2lkIGRpZFJlc29sdmVSZWdpc3Ry
YXRpb25Qcm9taXNlKGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXkm
KSBmaW5hbDsKICAgICB2b2lkIHN0b3JlUmVnaXN0cmF0aW9uc09uRGlza0ZvclRlc3RpbmcoQ29t
cGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmKSBmaW5hbDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAwM2YxMjc2NGNiOTc2ZWUx
ZGIwMmE1ZmJiNGQ1NWY0Y2FmNjllZDYwLi40MGM1NjRhZTAyNzY1MzE3YTYwNWQ5M2QwZmFhNmZh
MDZkOGRlMzljIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDQtMDYgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFNXU2VydmVyIHNob3VsZCBub3QgcnVu
IGEgc2VydmljZSB3b3JrZXIgdGhhdCBpcyB0ZXJtaW5hdGluZworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDQ0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBodHRwL3dwdC9zZXJ2aWNlLXdvcmtlcnMv
cmVzb3VyY2VzL3JvdXRpbmVzLmpzOgorICAgICAgICAoYXN5bmMgd2FpdEZvclNlcnZpY2VXb3Jr
ZXJOb0xvbmdlclJ1bm5pbmcpOgorICAgICAgICBVc2UgbmV3IGludGVybmFscyBBUEkuCisKIDIw
MjAtMDQtMDUgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgQ29tcHV0ZWQgc3R5bGUgZm9yICJvdXRsaW5lLW9mZnNldCIgaXMgd3Jvbmcgd2hlbiAi
b3V0bGluZS1zdHlsZSIgaXMgIm5vbmUiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dw
dC9zZXJ2aWNlLXdvcmtlcnMvcmVzb3VyY2VzL3JvdXRpbmVzLmpzIGIvTGF5b3V0VGVzdHMvaHR0
cC93cHQvc2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qcwppbmRleCBjNmRiODJj
YmU2ZmZjNTVkMTA1MjQ5NTVhMGExYTk2NDMyNTkxYTVkLi43NjQ5NzA5MGU2MDhjNGYxNWRjZjRk
ZjcyYmFmMGM3YzlhYTllMWU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC9zZXJ2
aWNlLXdvcmtlcnMvcmVzb3VyY2VzL3JvdXRpbmVzLmpzCisrKyBiL0xheW91dFRlc3RzL2h0dHAv
d3B0L3NlcnZpY2Utd29ya2Vycy9yZXNvdXJjZXMvcm91dGluZXMuanMKQEAgLTMzLDExICszMyw4
IEBAIGFzeW5jIGZ1bmN0aW9uIHdhaXRGb3JTZXJ2aWNlV29ya2VyTm9Mb25nZXJSdW5uaW5nKHdv
cmtlcikKICAgICBpZiAoIXdpbmRvdy5pbnRlcm5hbHMpCiAgICAgICAgIHJldHVybiBQcm9taXNl
LnJlamVjdCgicmVxdWlyZXMgaW50ZXJuYWxzIik7CiAKLSAgICBsZXQgY291bnQgPSAxMDA7Ci0g
ICAgd2hpbGUgKC0tY291bnQgPiAwICYmIGF3YWl0IGludGVybmFscy5pc1NlcnZpY2VXb3JrZXJS
dW5uaW5nKHdvcmtlcikpIHsKLSAgICAgICAgd29ya2VyLnBvc3RNZXNzYWdlKCJ0ZXN0Iik7Ci0g
ICAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dChyZXNvbHZlLCA1
MCkpOwotICAgIH0KLSAgICBpZiAoY291bnQgPT09IDApCi0gICAgICAgIHJldHVybiBQcm9taXNl
LnJlamVjdCgic2VydmljZSB3b3JrZXIgaXMgc3RpbGwgcnVubmluZyIpOworICAgIGNvbnN0IHBy
b21pc2UgPSBpbnRlcm5hbHMud2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0ZWQod29ya2VyKTsK
KyAgICBsZXQgdGltZXIgPSBzZXRJbnRlcnZhbCgoKSA9PiB3b3JrZXIucG9zdE1lc3NhZ2UoInRl
c3QiKSwgNTApOworICAgIGF3YWl0IHByb21pc2U7CisgICAgY2xlYXJJbnRlcnZhbCh0aW1lcik7
CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396061</attachid>
            <date>2020-04-10 00:39:28 -0700</date>
            <delta_ts>2020-04-10 03:50:41 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-210044-20200410093927.patch</filename>
            <type>text/plain</type>
            <size>18826</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NzkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTNmM2Y0NDc3OTlhMWYz
NTdkZmU2NDgwNWQ4YmRjNDM5NTE1NWJiYy4uZmJkODUyMTQyZTNkYzk5YmRkOGY4ZTkwZDg3NTJm
YTQ1MTU3ODc4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDIwLTA0LTEwICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBTV1NlcnZlciBzaG91bGQg
bm90IHJ1biBhIHNlcnZpY2Ugd29ya2VyIHRoYXQgaXMgdGVybWluYXRpbmcKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDA0NAorCisgICAgICAgIFJl
dmlld2VkIGJ5IENocmlzIER1bWV6LgorCisgICAgICAgIElmIGEgdGVzdCBpcyBiZWluZyB0ZXJt
aW5hdGVkIGFuZCB3ZSB3YW50IHRvIHJlc3RhcnQgaXQsIHdlIHdlcmUgcHJldmlvdXNseSBydW5u
aW5nIGl0IHJpZ2h0IGF3YXkuCisgICAgICAgIFRoaXMgZG9lcyBub3Qgd29yayB3ZWxsIGFzIHRo
ZSBzZXJ2aWNlIHdvcmtlciBwcm9jZXNzIG1pZ2h0IHN0aWxsIGhhdmUgdGhlIHRlcm1pbmF0aW5n
IHNlcnZpY2Ugd29ya2VyIGluIGl0cyBtYXAuCisgICAgICAgIEFsc28sIGlmIHRoZSBzZXJ2aWNl
IHdvcmtlciBpcyBub3QgYWJsZSB0byB0ZXJtaW5hdGUgcHJvcGVybHksIHdlIHdpbGwga2lsbCB0
aGUgc2VydmljZSB3b3JrZXIgcHJvY2VzcyBzbyB0aGVyZSBpcyBubyByZWFzb24KKyAgICAgICAg
dG8gdHJ5IHJ1bm5pbmcgdGhpcyBzZXJ2aWNlIHdvcmtlciBpbiB0aGlzIHByb2Nlc3MuCisgICAg
ICAgIEluc3RlYWQsIHdhaXQgZm9yIHRoZSBzZXJ2aWNlIHdvcmtlciB0byB0ZXJtaW5hdGUgKHdo
aWNoIG1pZ2h0IGluY2x1ZGUgdGVybWluYXRpbmcgdGhlIHNlcnZpY2Ugd29ya2VyIHByb2Nlc3Mp
LgorCisgICAgICAgIEluIGFkZGl0aW9uLCB3ZSByZW1vdmUgdGhlIGlzU2VydmljZVdvcmtlclJ1
bm5pbmcgaW50ZXJuYWxzIEFQSSBzaW5jZSB0aGlzIGlzIHBvdGVudGlhbGx5IGZsYWt5IGFzIHRo
ZSBzZXJ2aWNlIHdvcmtlcgorICAgICAgICBtaWdodCBiZSB0ZXJtaW5hdGVkIGFuZCByZXJ1bm5p
bmcgaW4gYmV0d2VlbiB0d28gaXNTZXJ2aWNlV29ya2VyUnVubmluZyBjaGVja3MuCisgICAgICAg
IEluc3RlYWQsIHdlIGludHJvZHVjZSB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZCB3aGlj
aCB3aWxsIHJlc29sdmUgYXMgc29vbiBhcyB0aGUgc2VydmljZSB3b3JrZXIgZ29lcyB0byB0ZXJt
aW5hdGVkLgorCisgICAgICAgIENvdmVyZWQgYnkgZXhpc3Rpbmcgc3Bpbm5pbmcgdGVzdHMgbm8g
bG9uZ2VyIGNyYXNoaW5nLgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZCk6
CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVy
bmFscy5pZGw6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5o
OgorICAgICAgICAoV2ViQ29yZTo6U1dDbGllbnRDb25uZWN0aW9uOjp3aGVuU2VydmljZVdvcmtl
cklzVGVybWluYXRlZEZvclRlc3RpbmcpOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2
ZXIvU1dTZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OnJ1blNlcnZpY2VX
b3JrZXJJZk5lY2Vzc2FyeSk6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6cnVuU2Vydmlj
ZVdvcmtlcik6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6d29ya2VyQ29udGV4dFRlcm1p
bmF0ZWQpOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6OndoZW5UZXJtaW5hdGVkKToK
KyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyV29ya2VyOjpzZXRTdGF0ZSk6CisgICAgICAgICog
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oOgorICAgICAgICAoV2ViQ29y
ZTo6U1dTZXJ2ZXJXb3JrZXI6OmlzTm90UnVubmluZyBjb25zdCk6CisKIDIwMjAtMDQtMDkgIFlv
dWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEJ1bXAgcHJpb3JpdHkg
b2YgTGliV2ViUlRDQXVkaW9Nb2R1bGUgdGhyZWFkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc4MGMxYjIwMDNjMTZh
OGM3Nzk4MDM2ZDJlYzI2MmVhNzI3ZmJlOWEuLmVjZmJiNTk2MDA5Yzk1ZmE5NzhmYmNkMGMwMWQ5
OTkzOGMyMjI0ZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMjAtMDQtMTAgIFlvdWVu
biBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFNXU2VydmVyIHNob3VsZCBu
b3QgcnVuIGEgc2VydmljZSB3b3JrZXIgdGhhdCBpcyB0ZXJtaW5hdGluZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDQ0CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgQ2hyaXMgRHVtZXouCisKKyAgICAgICAgSW1wbGVtZW50IHdoZW5TZXJ2aWNlV29y
a2VySXNUZXJtaW5hdGVkIGNoZWNrLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2Vydmlj
ZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJT
V1NlcnZlckNvbm5lY3Rpb246OndoZW5TZXJ2aWNlV29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGlu
Zyk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNv
bm5lY3Rpb24uaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNX
U2VydmVyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3Jh
Z2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU1dDbGll
bnRDb25uZWN0aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcpOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uaDoKKwog
MjAyMC0wNC0wOSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAg
SW50cm9kdWNlIGEgUmVhbHRpbWVNZWRpYVNvdXJjZSBvYnNlcnZlciBkZWRpY2F0ZWQgdG8gcmVj
ZWl2aW5nIGF1ZGlvIHNhbXBsZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAppbmRl
eCA4ZDlkNzY3MTNhMjVhYmZjOTU4MjY0OGQwZmExNjY1NThmNmY4MTc2Li5lNzgxZjM3NGYyOTUw
OWU1NTU5Mzk5YzgxOGY1MWQzN2NkYzk5OWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuY3BwCkBAIC01MTQ3LDEwICs1MTQ3LDEwIEBAIHZvaWQgSW50ZXJuYWxzOjp0ZXJtaW5hdGVT
ZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVkCiAg
ICAgfSk7CiB9CiAKLXZvaWQgSW50ZXJuYWxzOjppc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZp
Y2VXb3JrZXImIHdvcmtlciwgRE9NUHJvbWlzZURlZmVycmVkPElETEJvb2xlYW4+JiYgcHJvbWlz
ZSkKK3ZvaWQgSW50ZXJuYWxzOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2aWNl
V29ya2VyJiB3b3JrZXIsIERPTVByb21pc2VEZWZlcnJlZDx2b2lkPiYmIHByb21pc2UpCiB7Ci0g
ICAgcmV0dXJuIFNlcnZpY2VXb3JrZXJQcm92aWRlcjo6c2luZ2xldG9uKCkuc2VydmljZVdvcmtl
ckNvbm5lY3Rpb24oKS5pc1NlcnZpY2VXb3JrZXJSdW5uaW5nKHdvcmtlci5pZGVudGlmaWVyKCks
IFtwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYm9vbCByZXN1bHQpIG11dGFibGUgewotICAg
ICAgICBwcm9taXNlLnJlc29sdmUocmVzdWx0KTsKKyAgICByZXR1cm4gU2VydmljZVdvcmtlclBy
b3ZpZGVyOjpzaW5nbGV0b24oKS5zZXJ2aWNlV29ya2VyQ29ubmVjdGlvbigpLndoZW5TZXJ2aWNl
V29ya2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyh3b3JrZXIuaWRlbnRpZmllcigpLCBbcHJvbWlz
ZSA9IFdURk1vdmUocHJvbWlzZSldKCkgbXV0YWJsZSB7CisgICAgICAgIHByb21pc2UucmVzb2x2
ZSgpOwogICAgIH0pOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5oIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAppbmRl
eCAyZThhYTIyODU1Y2Q5ZWU1YmE0MTJhNzcwY2Q1NTBlZGU2NzAxMjUxLi5lZGVhYmFjYWU3YzFi
NTM5ZmMwMzUyZjM3OTVkOGMxY2M3YWY2ZTEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFscy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmgKQEAgLTc4NSw3ICs3ODUsNyBAQCBwdWJsaWM6CiAgICAgdXNpbmcgSGFzUmVnaXN0cmF0aW9u
UHJvbWlzZSA9IERPTVByb21pc2VEZWZlcnJlZDxJRExCb29sZWFuPjsKICAgICB2b2lkIGhhc1Nl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb24oY29uc3QgU3RyaW5nJiBjbGllbnRVUkwsIEhhc1JlZ2lz
dHJhdGlvblByb21pc2UmJik7CiAgICAgdm9pZCB0ZXJtaW5hdGVTZXJ2aWNlV29ya2VyKFNlcnZp
Y2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJik7Ci0gICAgdm9pZCBpc1NlcnZp
Y2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXImLCBET01Qcm9taXNlRGVmZXJyZWQ8SURMQm9v
bGVhbj4mJik7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZChTZXJ2aWNl
V29ya2VyJiwgRE9NUHJvbWlzZURlZmVycmVkPHZvaWQ+JiYpOwogI2VuZGlmCiAKICNpZiBFTkFC
TEUoQVBQTEVfUEFZKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IDIwM2Rh
ODA1MDliOWViNTE3ZjZjMDJmNWFiNGY1N2NjMWRlNDdjNzUuLjQzMTk1MmU5NjVmN2UxOGM0ZjVi
NTc1M2FmYjUyODQ3NzRiMjZkM2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwK
QEAgLTc3MCw3ICs3NzAsNyBAQCBlbnVtIENvbXBvc2l0aW5nUG9saWN5IHsKIAogICAgIFtDb25k
aXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlzZTxib29sZWFuPiBoYXNTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uKERPTVN0cmluZyBzY29wZVVSTCk7CiAgICAgW0NvbmRpdGlvbmFsPVNFUlZJ
Q0VfV09SS0VSXSBQcm9taXNlPHZvaWQ+IHRlcm1pbmF0ZVNlcnZpY2VXb3JrZXIoU2VydmljZVdv
cmtlciB3b3JrZXIpOwotICAgIFtDb25kaXRpb25hbD1TRVJWSUNFX1dPUktFUl0gUHJvbWlzZTxi
b29sZWFuPiBpc1NlcnZpY2VXb3JrZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXIgd29ya2VyKTsKKyAg
ICBbQ29uZGl0aW9uYWw9U0VSVklDRV9XT1JLRVJdIFByb21pc2U8dm9pZD4gd2hlblNlcnZpY2VX
b3JrZXJJc1Rlcm1pbmF0ZWQoU2VydmljZVdvcmtlciB3b3JrZXIpOwogCiAgICAgW0NhbGxXaXRo
PURvY3VtZW50LCBDb25kaXRpb25hbD1BUFBMRV9QQVldIHJlYWRvbmx5IGF0dHJpYnV0ZSBNb2Nr
UGF5bWVudENvb3JkaW5hdG9yIG1vY2tQYXltZW50Q29vcmRpbmF0b3I7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaCBiL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9TV0NsaWVudENvbm5lY3Rpb24uaAppbmRleCA5
YjM5NGMxMThjNjI1MDM2MWU3NDcyZmVkNTE5NzIzNmJmZWI1NGVhLi42YWFlNDU1NmJkYTZhMWYw
MTM0YzcxY2M1OGIyYWQxNjhiODg2MTQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2UvU1dDbGllbnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL1NXQ2xpZW50Q29ubmVjdGlvbi5oCkBAIC04Niw3ICs4Niw3IEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoRmV0Y2hpbmdTY3JpcHRJblNlcnZlcihjb25zdCBT
ZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKSA9IDA7CiAKICAgICB2aXJ0dWFsIHZvaWQgc3RvcmVS
ZWdpc3RyYXRpb25zT25EaXNrRm9yVGVzdGluZyhDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
Y2FsbGJhY2spIHsgY2FsbGJhY2soKTsgfQotICAgIHZpcnR1YWwgdm9pZCBpc1NlcnZpY2VXb3Jr
ZXJSdW5uaW5nKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KGJvb2wpPiYmIGNhbGxiYWNrKSB7IGNhbGxiYWNrKGZhbHNlKTsgfQorICAgIHZpcnR1YWwgdm9p
ZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoU2VydmljZVdvcmtlcklk
ZW50aWZpZXIsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjYWxsYmFjaykgeyBjYWxsYmFj
aygpOyB9CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJlZ2lzdGVyU2VydmljZVdvcmtlckNs
aWVudHMoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVy
L1NXU2VydmVyLmNwcAppbmRleCBlNmRmNTFhMWMxZTJmNzdhNTBiYThjNmI0ZGJjZjE5NGFiYzZh
MmQ1Li4yOGQ5ZmZhZTczY2MwNGZiZWM3YzMyNjNmZThjYTUyZDkxYTE1ZTY5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcApAQCAt
Njg1LDYgKzY4NSwxNSBAQCB2b2lkIFNXU2VydmVyOjpydW5TZXJ2aWNlV29ya2VySWZOZWNlc3Nh
cnkoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgUgogICAgICAgICByZXR1cm47
CiAgICAgfQogCisgICAgaWYgKHdvcmtlci0+aXNUZXJtaW5hdGluZygpKSB7CisgICAgICAgIHdv
cmtlci0+d2hlblRlcm1pbmF0ZWQoW3RoaXMsIHdlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhpcyks
IGlkZW50aWZpZXIsIGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldKCkgbXV0YWJsZSB7Cisg
ICAgICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgICAgIHJldHVybiBjYWxsYmFj
ayhudWxscHRyKTsKKyAgICAgICAgICAgIHJ1blNlcnZpY2VXb3JrZXJJZk5lY2Vzc2FyeShpZGVu
dGlmaWVyLCBXVEZNb3ZlKGNhbGxiYWNrKSk7CisgICAgICAgIH0pOworICAgICAgICByZXR1cm47
CisgICAgfQorCiAgICAgaWYgKCFjb250ZXh0Q29ubmVjdGlvbikgewogICAgICAgICBhdXRvJiBz
ZXJ2aWNlV29ya2VyUnVuUmVxdWVzdHNGb3JPcmlnaW4gPSBtX3NlcnZpY2VXb3JrZXJSdW5SZXF1
ZXN0cy5lbnN1cmUod29ya2VyLT5yZWdpc3RyYWJsZURvbWFpbigpLCBbXSB7CiAgICAgICAgICAg
ICByZXR1cm4gSGFzaE1hcDxTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgVmVjdG9yPFJ1blNlcnZp
Y2VXb3JrZXJDYWxsYmFjaz4+IHsgfTsKQEAgLTcxMiw4ICs3MjEsOSBAQCBib29sIFNXU2VydmVy
OjpydW5TZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpCiAg
ICAgaWYgKCF3b3JrZXItPnJlZ2lzdHJhdGlvbigpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAK
LSAgICBhdXRvIGFkZFJlc3VsdCA9IG1fcnVubmluZ09yVGVybWluYXRpbmdXb3JrZXJzLmFkZChp
ZGVudGlmaWVyLCAqd29ya2VyKTsKLSAgICBBU1NFUlRfVU5VU0VEKGFkZFJlc3VsdCwgYWRkUmVz
dWx0LmlzTmV3RW50cnkgfHwgd29ya2VyLT5pc1Rlcm1pbmF0aW5nKCkpOworICAgIEFTU0VSVCgh
d29ya2VyLT5pc1Rlcm1pbmF0aW5nKCkpOworICAgIEFTU0VSVCghbV9ydW5uaW5nT3JUZXJtaW5h
dGluZ1dvcmtlcnMuY29udGFpbnMoaWRlbnRpZmllcikpOworICAgIG1fcnVubmluZ09yVGVybWlu
YXRpbmdXb3JrZXJzLmFkZChpZGVudGlmaWVyLCAqd29ya2VyKTsKIAogICAgIHdvcmtlci0+c2V0
U3RhdGUoU1dTZXJ2ZXJXb3JrZXI6OlN0YXRlOjpSdW5uaW5nKTsKIApAQCAtNzM4LDE1ICs3NDgs
MTUgQEAgdm9pZCBTV1NlcnZlcjo6bWFya0FsbFdvcmtlcnNGb3JSZWdpc3RyYWJsZURvbWFpbkFz
VGVybWluYXRlZChjb25zdCBSZWdpc3RyYWJsZUQKIAogdm9pZCBTV1NlcnZlcjo6d29ya2VyQ29u
dGV4dFRlcm1pbmF0ZWQoU1dTZXJ2ZXJXb3JrZXImIHdvcmtlcikKIHsKLSAgICB3b3JrZXIuc2V0
U3RhdGUoU1dTZXJ2ZXJXb3JrZXI6OlN0YXRlOjpOb3RSdW5uaW5nKTsKLQotICAgIGlmIChhdXRv
KiBqb2JRdWV1ZSA9IG1fam9iUXVldWVzLmdldCh3b3JrZXIucmVnaXN0cmF0aW9uS2V5KCkpKQot
ICAgICAgICBqb2JRdWV1ZS0+Y2FuY2VsSm9ic0Zyb21TZXJ2aWNlV29ya2VyKHdvcmtlci5pZGVu
dGlmaWVyKCkpOwotCiAgICAgLy8gQXQgdGhpcyBwb2ludCBpZiBubyByZWdpc3RyYXRpb25zIGFy
ZSByZWZlcmVuY2luZyB0aGUgd29ya2VyIHRoZW4gaXQgd2lsbCBiZSBkZXN0cm95ZWQsCiAgICAg
Ly8gcmVtb3ZpbmcgaXRzZWxmIGZyb20gdGhlIG1fd29ya2Vyc0J5SUQgbWFwLgogICAgIGF1dG8g
cmVzdWx0ID0gbV9ydW5uaW5nT3JUZXJtaW5hdGluZ1dvcmtlcnMudGFrZSh3b3JrZXIuaWRlbnRp
ZmllcigpKTsKICAgICBBU1NFUlRfVU5VU0VEKHJlc3VsdCwgcmVzdWx0ICYmIHJlc3VsdC0+cHRy
KCkgPT0gJndvcmtlcik7CisKKyAgICB3b3JrZXIuc2V0U3RhdGUoU1dTZXJ2ZXJXb3JrZXI6OlN0
YXRlOjpOb3RSdW5uaW5nKTsKKworICAgIGlmIChhdXRvKiBqb2JRdWV1ZSA9IG1fam9iUXVldWVz
LmdldCh3b3JrZXIucmVnaXN0cmF0aW9uS2V5KCkpKQorICAgICAgICBqb2JRdWV1ZS0+Y2FuY2Vs
Sm9ic0Zyb21TZXJ2aWNlV29ya2VyKHdvcmtlci5pZGVudGlmaWVyKCkpOwogfQogCiB2b2lkIFNX
U2VydmVyOjpmaXJlSW5zdGFsbEV2ZW50KFNXU2VydmVyV29ya2VyJiB3b3JrZXIpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2Vy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3Jr
ZXIuY3BwCmluZGV4IDQ2Yjc0ZTg5ZTM1ZTk1MTRkODAwOTM2YmI0MGUwNGYyMDAzMjk0YzAuLjEx
MTBkNjcyZTg0ZjI5OGU3YTRiOGVjMDJkMTNkMjgyZjcyOTFkNTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3Bw
CkBAIC0xMDQsNiArMTA0LDEyIEBAIHZvaWQgU1dTZXJ2ZXJXb3JrZXI6OnRlcm1pbmF0ZShDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY2FsbGJhY2spCiAgICAgfQogfQogCit2b2lkIFNXU2Vy
dmVyV29ya2VyOjp3aGVuVGVybWluYXRlZChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY2Fs
bGJhY2spCit7CisgICAgQVNTRVJUKGlzUnVubmluZygpIHx8IGlzVGVybWluYXRpbmcoKSk7Cisg
ICAgbV90ZXJtaW5hdGlvbkNhbGxiYWNrcy5hcHBlbmQoV1RGTW92ZShjYWxsYmFjaykpOworfQor
CiB2b2lkIFNXU2VydmVyV29ya2VyOjpzdGFydFRlcm1pbmF0aW9uKENvbXBsZXRpb25IYW5kbGVy
PHZvaWQoKT4mJiBjYWxsYmFjaykKIHsKICAgICBhdXRvKiBjb250ZXh0Q29ubmVjdGlvbiA9IHRo
aXMtPmNvbnRleHRDb25uZWN0aW9uKCk7CkBAIC0yOTYsNiArMzAyLDcgQEAgdm9pZCBTV1NlcnZl
cldvcmtlcjo6Y2FsbFdoZW5BY3RpdmF0ZWRIYW5kbGVyKGJvb2wgc3VjY2VzcykKIHZvaWQgU1dT
ZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKFN0YXRlIHN0YXRlKQogewogICAgIEFTU0VSVChzdGF0ZSAh
PSBTdGF0ZTo6UnVubmluZyB8fCBtX3JlZ2lzdHJhdGlvbik7CisgICAgQVNTRVJUKHN0YXRlICE9
IFN0YXRlOjpSdW5uaW5nIHx8IG1fc3RhdGUgIT0gU3RhdGU6OlRlcm1pbmF0aW5nKTsKICAgICBt
X3N0YXRlID0gc3RhdGU7CiAKICAgICBzd2l0Y2ggKHN0YXRlKSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKaW5kZXgg
NjEwMGNkOTZiNTljZjNjMjkzY2I4NWJlZDM1OGIxMDA5NzU4MWJjZC4uYzc0ZGNkYjFkNDAxMGVk
NzA1MzBiZjhmNzc2YmU0ZDM0NTQzMGMyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29y
a2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaApAQCAtNjMsNiArNjMsNyBA
QCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgflNXU2VydmVyV29ya2VyKCk7CiAKICAgICBX
RUJDT1JFX0VYUE9SVCB2b2lkIHRlcm1pbmF0ZShDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYg
PSBbXSB7IH0pOworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2hlblRlcm1pbmF0ZWQoQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2hlbkFj
dGl2YXRlZChDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wpPiYmKTsKIApAQCAtNzMsNiArNzQs
NyBAQCBwdWJsaWM6CiAgICAgfTsKICAgICBib29sIGlzUnVubmluZygpIGNvbnN0IHsgcmV0dXJu
IG1fc3RhdGUgPT0gU3RhdGU6OlJ1bm5pbmc7IH0KICAgICBib29sIGlzVGVybWluYXRpbmcoKSBj
b25zdCB7IHJldHVybiBtX3N0YXRlID09IFN0YXRlOjpUZXJtaW5hdGluZzsgfQorICAgIGJvb2wg
aXNOb3RSdW5uaW5nKCkgY29uc3QgeyByZXR1cm4gbV9zdGF0ZSA9PSBTdGF0ZTo6Tm90UnVubmlu
ZzsgfQogICAgIHZvaWQgc2V0U3RhdGUoU3RhdGUpOwogCiAgICAgU1dTZXJ2ZXIqIHNlcnZlcigp
IHsgcmV0dXJuIG1fc2VydmVyLmdldCgpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5l
Y3Rpb24uY3BwCmluZGV4IDlhYWQ5ZWQwZjJhMTMyMWFiNDk2ZWVhZjNkZjRhODhiNjIyOTcwNGQu
LjYwMjNmZjRlNzI3YjIwNjFiOTRjYTAzNDllODRlZjQ3MTlhY2Q5OWIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5l
Y3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtl
ci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwCkBAIC00NjQsMTAgKzQ2NCwxMiBAQCB2b2lkIFdl
YlNXU2VydmVyQ29ubmVjdGlvbjo6dGVybWluYXRlV29ya2VyRnJvbUNsaWVudChTZXJ2aWNlV29y
a2VySWRlbnRpZmllciBzZQogICAgIHdvcmtlci0+dGVybWluYXRlKFdURk1vdmUoY2FsbGJhY2sp
KTsKIH0KIAotdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246OmlzU2VydmljZVdvcmtlclJ1bm5p
bmcoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKK3ZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjp3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoV2ViQ29yZTo6U2Vy
dmljZVdvcmtlcklkZW50aWZpZXIgaWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
PiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewogICAgIGF1dG8qIHdvcmtlciA9IFNXU2VydmVyV29y
a2VyOjpleGlzdGluZ1dvcmtlckZvcklkZW50aWZpZXIoaWRlbnRpZmllcik7Ci0gICAgY29tcGxl
dGlvbkhhbmRsZXIod29ya2VyID8gd29ya2VyLT5pc1J1bm5pbmcoKSA6IGZhbHNlKTsKKyAgICBp
ZiAoIXdvcmtlciB8fCB3b3JrZXItPmlzTm90UnVubmluZygpKQorICAgICAgICByZXR1cm4gY29t
cGxldGlvbkhhbmRsZXIoKTsKKyAgICB3b3JrZXItPndoZW5UZXJtaW5hdGVkKFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKIH0KIAogUEFMOjpTZXNzaW9uSUQgV2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjpzZXNzaW9uSUQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5oIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5o
CmluZGV4IDhlNDg0MWUwNjZkNzZhYjFhNzVlMGFiNDU4ZTY1NTQzMjcyMjYyMWIuLmM4MzM3MDFj
MTg4YjhhZTQ1NmQ0YjNkMTA3NDA1N2Q5NjY5ODFkYzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uaAor
KysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2
ZXJDb25uZWN0aW9uLmgKQEAgLTEwMyw3ICsxMDMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVn
aXN0ZXJTZXJ2aWNlV29ya2VyQ2xpZW50KFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYmIHRv
cE9yaWdpbiwgV2ViQ29yZTo6U2VydmljZVdvcmtlckNsaWVudERhdGEmJiwgY29uc3QgT3B0aW9u
YWw8V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbklkZW50aWZpZXI+JiwgU3RyaW5n
JiYgdXNlckFnZW50KTsKICAgICB2b2lkIHVucmVnaXN0ZXJTZXJ2aWNlV29ya2VyQ2xpZW50KGNv
bnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJDbGllbnRJZGVudGlmaWVyJik7CiAgICAgdm9pZCB0
ZXJtaW5hdGVXb3JrZXJGcm9tQ2xpZW50KFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVy
LCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYpOwotICAgIHZvaWQgaXNTZXJ2aWNlV29ya2Vy
UnVubmluZyhXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChib29sKT4mJik7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRl
ZEZvclRlc3RpbmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoKT4mJik7CiAKICAgICB2b2lkIHBvc3RNZXNzYWdlVG9TZXJ2aWNlV29ya2Vy
Q2xpZW50KFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciBkZXN0aW5hdGlvbkNvbnRleHRJZGVu
dGlmaWVyLCBjb25zdCBXZWJDb3JlOjpNZXNzYWdlV2l0aE1lc3NhZ2VQb3J0cyYsIFdlYkNvcmU6
OlNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHNvdXJjZVNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBj
b25zdCBTdHJpbmcmIHNvdXJjZU9yaWdpbikgZmluYWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24u
bWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIv
V2ViU1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3NhZ2VzLmluCmluZGV4IGUyNWQ3MWU5YWRlOTE5Yzg1
YjExNzFlYTY3NzQxYTBiMGU2ZGIwMDQuLjRjMTg2Mzc3ZjhlNWZlMmYwM2IxMzQwMmE5YjM5MDYw
MWUzM2I1OTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2Vydmlj
ZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5t
ZXNzYWdlcy5pbgpAQCAtNDIsMTAgKzQyLDEwIEBAIG1lc3NhZ2VzIC0+IFdlYlNXU2VydmVyQ29u
bmVjdGlvbiBOb3RSZWZDb3VudGVkIHsKICAgICBVbnJlZ2lzdGVyU2VydmljZVdvcmtlckNsaWVu
dChzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckNsaWVudElkZW50aWZpZXIgaWRlbnRpZmll
cikKIAogICAgIFRlcm1pbmF0ZVdvcmtlckZyb21DbGllbnQoV2ViQ29yZTo6U2VydmljZVdvcmtl
cklkZW50aWZpZXIgd29ya2VySWRlbnRpZmllcikgLT4gKCkgQXN5bmMKKyAgICBXaGVuU2Vydmlj
ZVdvcmtlcklzVGVybWluYXRlZEZvclRlc3RpbmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50
aWZpZXIgd29ya2VySWRlbnRpZmllcikgLT4gKCkgQXN5bmMKIAogICAgIFNldFRocm90dGxlU3Rh
dGUoYm9vbCBpc1Rocm90dGxlYWJsZSkKICAgICBTdG9yZVJlZ2lzdHJhdGlvbnNPbkRpc2soKSAt
PiAoKSBBc3luYwotICAgIElzU2VydmljZVdvcmtlclJ1bm5pbmcoV2ViQ29yZTo6U2VydmljZVdv
cmtlcklkZW50aWZpZXIgd29ya2VySWRlbnRpZmllcikgLT4gKGJvb2wgaXNSdW5uaW5nKSBBc3lu
YwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5j
cHAKaW5kZXggYzNjY2M2OWE2ZWNhMTNhYTlhODdmNjIyNDdlMDMzNTY5YTJjMTc5Yi4uZjVjNDJj
MGQ1NWRiMjE4YzkzYTMwZDQyMjVhZjhiNTJiZjY5ZjJlOSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uY3Bw
CkBAIC0yNDgsOSArMjQ4LDkgQEAgdm9pZCBXZWJTV0NsaWVudENvbm5lY3Rpb246OnRlcm1pbmF0
ZVdvcmtlckZvclRlc3RpbmcoU2VydmljZVdvcmtlcklkZW50aWZpZXIgaWQKICAgICBzZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6VGVybWluYXRlV29y
a2VyRnJvbUNsaWVudCB7IGlkZW50aWZpZXIgfSwgV1RGTW92ZShjYWxsYmFjaykpOwogfQogCi12
b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6aXNTZXJ2aWNlV29ya2VyUnVubmluZyhTZXJ2aWNl
V29ya2VySWRlbnRpZmllciBpZGVudGlmaWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGJvb2wp
PiYmIGNhbGxiYWNrKQordm9pZCBXZWJTV0NsaWVudENvbm5lY3Rpb246OndoZW5TZXJ2aWNlV29y
a2VySXNUZXJtaW5hdGVkRm9yVGVzdGluZyhTZXJ2aWNlV29ya2VySWRlbnRpZmllciBpZGVudGlm
aWVyLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKCk+JiYgY2FsbGJhY2spCiB7Ci0gICAgc2VuZFdp
dGhBc3luY1JlcGx5KE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OklzU2VydmljZVdv
cmtlclJ1bm5pbmcgeyBpZGVudGlmaWVyIH0sIFdURk1vdmUoY2FsbGJhY2spKTsKKyAgICBzZW5k
V2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6V2hlblNlcnZp
Y2VXb3JrZXJJc1Rlcm1pbmF0ZWRGb3JUZXN0aW5nIHsgaWRlbnRpZmllciB9LCBXVEZNb3ZlKGNh
bGxiYWNrKSk7CiB9CiAKIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjp1cGRhdGVUaHJvdHRs
ZVN0YXRlKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dl
YlNXQ2xpZW50Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2Uv
V2ViU1dDbGllbnRDb25uZWN0aW9uLmgKaW5kZXggNmM5MmU3MDkwNDBiMDRlYzExMjFlMGUwNTY3
YzExNmE1NmViNmFhNS4uOWNiMDM4NjBjMWRlZjgxYjBiN2FlYmZhNjY4MzBmMTlmNGViNDMwMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRD
b25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dD
bGllbnRDb25uZWN0aW9uLmgKQEAgLTg2LDcgKzg2LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHNl
dERvY3VtZW50SXNDb250cm9sbGVkKFdlYkNvcmU6OkRvY3VtZW50SWRlbnRpZmllciwgV2ViQ29y
ZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEmJiwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJik7CiAKICAgICB2b2lkIGdldFJlZ2lzdHJhdGlvbnMoV2ViQ29yZTo6U2VjdXJp
dHlPcmlnaW5EYXRhJiYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgR2V0UmVnaXN0
cmF0aW9uc0NhbGxiYWNrJiYpIGZpbmFsOwotICAgIHZvaWQgaXNTZXJ2aWNlV29ya2VyUnVubmlu
ZyhXZWJDb3JlOjpTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJikgZmluYWw7CisgICAgdm9pZCB3aGVuU2VydmljZVdvcmtlcklzVGVybWluYXRl
ZEZvclRlc3RpbmcoV2ViQ29yZTo6U2VydmljZVdvcmtlcklkZW50aWZpZXIsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoKT4mJikgZmluYWw7CiAKICAgICB2b2lkIGRpZFJlc29sdmVSZWdpc3RyYXRp
b25Qcm9taXNlKGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXkmKSBm
aW5hbDsKICAgICB2b2lkIHN0b3JlUmVnaXN0cmF0aW9uc09uRGlza0ZvclRlc3RpbmcoQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmKSBmaW5hbDsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3OTAwNzZhNzJlMjNhMTQyOGI1
OTFhZTNjNmNjNDgxMjhiNTRkYTEwLi4xMDcxNWIxN2MxODJkY2YzOWMxOGYwMGNlMGUyMjIzMjBl
YzhhNmFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDQtMTAgIFlvdWVubiBGYWJsZXQg
IDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIFNXU2VydmVyIHNob3VsZCBub3QgcnVuIGEg
c2VydmljZSB3b3JrZXIgdGhhdCBpcyB0ZXJtaW5hdGluZworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwMDQ0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Q2hyaXMgRHVtZXouCisKKyAgICAgICAgKiBodHRwL3dwdC9zZXJ2aWNlLXdvcmtlcnMvcmVzb3Vy
Y2VzL3JvdXRpbmVzLmpzOgorICAgICAgICAoYXN5bmMgd2FpdEZvclNlcnZpY2VXb3JrZXJOb0xv
bmdlclJ1bm5pbmcpOgorICAgICAgICBVc2UgbmV3IGludGVybmFscyBBUEkuCisKIDIwMjAtMDQt
MDkgIERpZWdvIFBpbm8gR2FyY2lhICA8ZHBpbm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBbV1BF
XSBHYXJkZW5pbmcsIHVwZGF0ZSBUZXN0RXhwZWN0YXRpb25zCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9odHRwL3dwdC9zZXJ2aWNlLXdvcmtlcnMvcmVzb3VyY2VzL3JvdXRpbmVzLmpzIGIvTGF5
b3V0VGVzdHMvaHR0cC93cHQvc2VydmljZS13b3JrZXJzL3Jlc291cmNlcy9yb3V0aW5lcy5qcwpp
bmRleCBjNmRiODJjYmU2ZmZjNTVkMTA1MjQ5NTVhMGExYTk2NDMyNTkxYTVkLi43NjQ5NzA5MGU2
MDhjNGYxNWRjZjRkZjcyYmFmMGM3YzlhYTllMWU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9o
dHRwL3dwdC9zZXJ2aWNlLXdvcmtlcnMvcmVzb3VyY2VzL3JvdXRpbmVzLmpzCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvd3B0L3NlcnZpY2Utd29ya2Vycy9yZXNvdXJjZXMvcm91dGluZXMuanMKQEAg
LTMzLDExICszMyw4IEBAIGFzeW5jIGZ1bmN0aW9uIHdhaXRGb3JTZXJ2aWNlV29ya2VyTm9Mb25n
ZXJSdW5uaW5nKHdvcmtlcikKICAgICBpZiAoIXdpbmRvdy5pbnRlcm5hbHMpCiAgICAgICAgIHJl
dHVybiBQcm9taXNlLnJlamVjdCgicmVxdWlyZXMgaW50ZXJuYWxzIik7CiAKLSAgICBsZXQgY291
bnQgPSAxMDA7Ci0gICAgd2hpbGUgKC0tY291bnQgPiAwICYmIGF3YWl0IGludGVybmFscy5pc1Nl
cnZpY2VXb3JrZXJSdW5uaW5nKHdvcmtlcikpIHsKLSAgICAgICAgd29ya2VyLnBvc3RNZXNzYWdl
KCJ0ZXN0Iik7Ci0gICAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91
dChyZXNvbHZlLCA1MCkpOwotICAgIH0KLSAgICBpZiAoY291bnQgPT09IDApCi0gICAgICAgIHJl
dHVybiBQcm9taXNlLnJlamVjdCgic2VydmljZSB3b3JrZXIgaXMgc3RpbGwgcnVubmluZyIpOwor
ICAgIGNvbnN0IHByb21pc2UgPSBpbnRlcm5hbHMud2hlblNlcnZpY2VXb3JrZXJJc1Rlcm1pbmF0
ZWQod29ya2VyKTsKKyAgICBsZXQgdGltZXIgPSBzZXRJbnRlcnZhbCgoKSA9PiB3b3JrZXIucG9z
dE1lc3NhZ2UoInRlc3QiKSwgNTApOworICAgIGF3YWl0IHByb21pc2U7CisgICAgY2xlYXJJbnRl
cnZhbCh0aW1lcik7CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>