<?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>233627</bug_id>
          
          <creation_ts>2021-11-30 01:47:51 -0800</creation_ts>
          <short_desc>Migrate some WebSWClientConnection messages to async replies</short_desc>
          <delta_ts>2021-11-30 08:45:28 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>achristensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1818653</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-11-30 01:47:51 -0800</bug_when>
    <thetext>Migrate some WebSWClientConnection messages to async replies</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1818658</commentid>
    <comment_count>1</comment_count>
      <attachid>445400</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-11-30 02:19:08 -0800</bug_when>
    <thetext>Created attachment 445400
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1818664</commentid>
    <comment_count>2</comment_count>
      <attachid>445402</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-11-30 02:46:25 -0800</bug_when>
    <thetext>Created attachment 445402
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1818737</commentid>
    <comment_count>3</comment_count>
      <attachid>445402</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-11-30 08:03:59 -0800</bug_when>
    <thetext>Comment on attachment 445402
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1818757</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-11-30 08:44:28 -0800</bug_when>
    <thetext>Committed r286301 (244660@main): &lt;https://commits.webkit.org/244660@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 445402.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1818759</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-11-30 08:45:28 -0800</bug_when>
    <thetext>&lt;rdar://problem/85867063&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>445400</attachid>
            <date>2021-11-30 02:19:08 -0800</date>
            <delta_ts>2021-11-30 02:46:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233627-20211130111906.patch</filename>
            <type>text/plain</type>
            <size>20314</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2Mjg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjQ3OTk0ZmFmODA5OWMw
NDE1ODEyOWZiMTg3MzMyZjBkOTc2ZTFlNS4uMDQwODgwYzk1MjhmMjZlNTFkNGZiMTczMjQwNjdi
MjhmMWVjYzUwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDIxLTExLTMwICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIHNvbWUgV2Vi
U1dDbGllbnRDb25uZWN0aW9uIG1lc3NhZ2VzIHRvIGFzeW5jIHJlcGxpZXMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzYyNworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1pZ3JhdGUgd2hlblJlZ2lzdHJh
dGlvblJlYWR5IHRvIHVzZSBhIGNhbGxiYWNrLgorICAgICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5n
IHRlc3RzLgorCisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6Q29ubmVjdGlvbjo6d2hlblJlZ2lzdHJhdGlv
blJlYWR5KToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyOjpDb25uZWN0aW9uOjpyZXNvbHZl
UmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0cyk6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlci5oOgorCiAyMDIxLTExLTMwICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KIAogICAgICAgICBQcmVsb2FkIG5hdmlnYXRpb24gcmVxdWVzdCBpZiB0aGUgc2Vy
dmljZSB3b3JrZXIgaXMgbm90IGltbWVkaWF0ZWx5IHJlYWR5IHRvIGhhbmRsZSB0aGUgbmF2aWdh
dGlvbiByZXF1ZXN0IGZldGNoIGV2ZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQxODE1NzljN2JhNmQzYjVhZjBh
OWQ1YTMyMDZjNjZkOWMyMzkwMmQuLjdhOTdmNDQ0YWUyYjIxMGJjYTc4NzhlNjZkYTY5NjA2Y2Fk
MzQ2NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjEtMTEtMzAgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIE1pZ3JhdGUgc29tZSBXZWJTV0NsaWVu
dENvbm5lY3Rpb24gbWVzc2FnZXMgdG8gYXN5bmMgcmVwbGllcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMzNjI3CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWlncmF0ZSBkaWRNYXRjaFJlZ2lzdHJhdGlv
biwgZGlkR2V0UmVnaXN0cmF0aW9ucyBhbmQgcmVnaXN0cmF0aW9uUmVhZHkgdG8gYXN5bmMgcmVw
bGllcy4KKyAgICAgICAgVGhpcyBpcyBlYXNpZXIgdG8gdW5kZXJzdGFuZCBhbmQgaXMgbW9yZSBy
b2J1c3QgdG8gY29ubmVjdGlvbiBjbG9zdXJlLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
U2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJTV1NlcnZlckNvbm5lY3Rpb246Om1hdGNoUmVnaXN0cmF0aW9uKToKKyAgICAgICAgKFdl
YktpdDo6V2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpnZXRSZWdpc3RyYXRpb25zKToKKyAgICAgICAg
KiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5oOgor
ICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0
aW9uLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVu
dENvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTV0NsaWVudENvbm5lY3Rpb246
Om1hdGNoUmVnaXN0cmF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViU1dDbGllbnRDb25uZWN0
aW9uOjp3aGVuUmVnaXN0cmF0aW9uUmVhZHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJTV0NsaWVu
dENvbm5lY3Rpb246OmdldFJlZ2lzdHJhdGlvbnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJTV0Ns
aWVudENvbm5lY3Rpb246OmNsZWFyKToKKyAgICAgICAgKFdlYktpdDo6V2ViU1dDbGllbnRDb25u
ZWN0aW9uOjpkaWRNYXRjaFJlZ2lzdHJhdGlvbik6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6
OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6ZGlkR2V0UmVnaXN0cmF0aW9ucyk6IERlbGV0ZWQuCisg
ICAgICAgIChXZWJLaXQ6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6cmVnaXN0cmF0aW9uUmVhZHkp
OiBEZWxldGVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5l
Y3Rpb24uaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0
aW9uLm1lc3NhZ2VzLmluOgorCiAyMDIxLTExLTMwICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFw
cGxlLmNvbT4KIAogICAgICAgICBQcmVsb2FkIG5hdmlnYXRpb24gcmVxdWVzdCBpZiB0aGUgc2Vy
dmljZSB3b3JrZXIgaXMgbm90IGltbWVkaWF0ZWx5IHJlYWR5IHRvIGhhbmRsZSB0aGUgbmF2aWdh
dGlvbiByZXF1ZXN0IGZldGNoIGV2ZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
c2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuY3BwCmluZGV4IDNlYTY4ZmRmOWYzZWY0ZGE3ODBjZTBh
ZjFiMjA4MzYwMTliNzAyMTMuLjZlOGE1MTAwZTBhMmE2YTkxYTQ0ZGRjYWVkZTk4MzhkZTY5MzU0
NDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dT
ZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dT
ZXJ2ZXIuY3BwCkBAIC0xMDU4LDE1ICsxMDU4LDE1IEBAIHZvaWQgU1dTZXJ2ZXI6OnJlc29sdmVS
ZWdpc3RyYXRpb25SZWFkeVJlcXVlc3RzKFNXU2VydmVyUmVnaXN0cmF0aW9uJiByZWdpc3RyYXRp
CiAgICAgICAgIGNvbm5lY3Rpb24tPnJlc29sdmVSZWdpc3RyYXRpb25SZWFkeVJlcXVlc3RzKHJl
Z2lzdHJhdGlvbik7CiB9CiAKLXZvaWQgU1dTZXJ2ZXI6OkNvbm5lY3Rpb246OndoZW5SZWdpc3Ry
YXRpb25SZWFkeSh1aW50NjRfdCByZWdpc3RyYXRpb25SZWFkeVJlcXVlc3RJZGVudGlmaWVyLCBj
b25zdCBTZWN1cml0eU9yaWdpbkRhdGEmIHRvcE9yaWdpbiwgY29uc3QgVVJMJiBjbGllbnRVUkwp
Cit2b2lkIFNXU2VydmVyOjpDb25uZWN0aW9uOjp3aGVuUmVnaXN0cmF0aW9uUmVhZHkoY29uc3Qg
U2VjdXJpdHlPcmlnaW5EYXRhJiB0b3BPcmlnaW4sIGNvbnN0IFVSTCYgY2xpZW50VVJMLCBGdW5j
dGlvbjx2b2lkKFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYpPiYmIGNhbGxiYWNrKQog
ewogICAgIGlmIChhdXRvKiByZWdpc3RyYXRpb24gPSBkb1JlZ2lzdHJhdGlvbk1hdGNoaW5nKHRv
cE9yaWdpbiwgY2xpZW50VVJMKSkgewogICAgICAgICBpZiAocmVnaXN0cmF0aW9uLT5hY3RpdmVX
b3JrZXIoKSkgewotICAgICAgICAgICAgcmVnaXN0cmF0aW9uUmVhZHkocmVnaXN0cmF0aW9uUmVh
ZHlSZXF1ZXN0SWRlbnRpZmllciwgcmVnaXN0cmF0aW9uLT5kYXRhKCkpOworICAgICAgICAgICAg
Y2FsbGJhY2socmVnaXN0cmF0aW9uLT5kYXRhKCkpOwogICAgICAgICAgICAgcmV0dXJuOwogICAg
ICAgICB9CiAgICAgfQotICAgIG1fcmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0cy5hcHBlbmQoeyB0
b3BPcmlnaW4sIGNsaWVudFVSTCwgcmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0SWRlbnRpZmllciB9
KTsKKyAgICBtX3JlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHMuYXBwZW5kKHsgdG9wT3JpZ2luLCBj
bGllbnRVUkwsIFdURk1vdmUoY2FsbGJhY2spIH0pOwogfQogCiB2b2lkIFNXU2VydmVyOjpDb25u
ZWN0aW9uOjpzdG9yZVJlZ2lzdHJhdGlvbnNPbkRpc2soQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgp
PiYmIGNhbGxiYWNrKQpAQCAtMTA4NCw3ICsxMDg0LDcgQEAgdm9pZCBTV1NlcnZlcjo6Q29ubmVj
dGlvbjo6cmVzb2x2ZVJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHMoU1dTZXJ2ZXJSZWdpc3RyYXRp
b24KICAgICAgICAgaWYgKCFyZWdpc3RyYXRpb24ua2V5KCkuaXNNYXRjaGluZyhyZXF1ZXN0LnRv
cE9yaWdpbiwgcmVxdWVzdC5jbGllbnRVUkwpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwog
Ci0gICAgICAgIHRoaXMtPnJlZ2lzdHJhdGlvblJlYWR5KHJlcXVlc3QuaWRlbnRpZmllciwgcmVn
aXN0cmF0aW9uLmRhdGEoKSk7CisgICAgICAgIHJlcXVlc3QuY2FsbGJhY2socmVnaXN0cmF0aW9u
LmRhdGEoKSk7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oIGIvU291cmNl
L1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCmluZGV4IGExYWEwNzFi
ZjliNDIwOWJiNzAzZDA0NzI0MDI2OTFkODk2NzZjMWEuLjUyZGRlOWE5MmI1YWY4OTU2N2Q3ZWU0
MzgzY2IyMTRmYzU2NjA4NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZp
Y2Uvc2VydmVyL1NXU2VydmVyLmgKQEAgLTkwLDcgKzkwLDYgQEAgcHVibGljOgogICAgICAgICB2
aXJ0dWFsIHZvaWQgc2V0UmVnaXN0cmF0aW9uTGFzdFVwZGF0ZVRpbWUoU2VydmljZVdvcmtlclJl
Z2lzdHJhdGlvbklkZW50aWZpZXIsIFdhbGxUaW1lKSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9p
ZCBzZXRSZWdpc3RyYXRpb25VcGRhdGVWaWFDYWNoZShTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
SWRlbnRpZmllciwgU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hlKSA9IDA7CiAgICAgICAgIHZp
cnR1YWwgdm9pZCBub3RpZnlDbGllbnRzT2ZDb250cm9sbGVyQ2hhbmdlKGNvbnN0IEhhc2hTZXQ8
U2NyaXB0RXhlY3V0aW9uQ29udGV4dElkZW50aWZpZXI+JiBjb250ZXh0SWRlbnRpZmllcnMsIGNv
bnN0IFNlcnZpY2VXb3JrZXJEYXRhJiBuZXdDb250cm9sbGVyKSA9IDA7Ci0gICAgICAgIHZpcnR1
YWwgdm9pZCByZWdpc3RyYXRpb25SZWFkeSh1aW50NjRfdCByZWdpc3RyYXRpb25SZWFkeVJlcXVl
c3RJZGVudGlmaWVyLCBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YSYmKSA9IDA7CiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBwb3N0TWVzc2FnZVRvU2VydmljZVdvcmtlckNsaWVudChTY3JpcHRF
eGVjdXRpb25Db250ZXh0SWRlbnRpZmllciwgY29uc3QgTWVzc2FnZVdpdGhNZXNzYWdlUG9ydHMm
LCBTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBzb3VyY2VPcmlnaW4pID0g
MDsKIAogICAgICAgICB2aXJ0dWFsIHZvaWQgY29udGV4dENvbm5lY3Rpb25DcmVhdGVkKFNXU2Vy
dmVyVG9Db250ZXh0Q29ubmVjdGlvbiYpID0gMDsKQEAgLTEwNCw3ICsxMDMsNyBAQCBwdWJsaWM6
CiAgICAgICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZmluaXNoRmV0Y2hpbmdTY3JpcHRJblNlcnZl
cihjb25zdCBTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKTsKICAgICAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCBhZGRTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSW5TZXJ2ZXIoU2VydmljZVdvcmtl
clJlZ2lzdHJhdGlvbklkZW50aWZpZXIpOwogICAgICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHJl
bW92ZVNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JblNlcnZlcihTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uSWRlbnRpZmllcik7Ci0gICAgICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2hlblJlZ2lz
dHJhdGlvblJlYWR5KHVpbnQ2NF90IHJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdElkZW50aWZpZXIs
IGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVS
TCk7CisgICAgICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2hlblJlZ2lzdHJhdGlvblJlYWR5KGNv
bnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwg
RnVuY3Rpb248dm9pZChTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YSYmKT4mJik7CiAKICAg
ICAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzdG9yZVJlZ2lzdHJhdGlvbnNPbkRpc2soQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZCgpPiYmKTsKIApAQCAtMTE4LDcgKzExNyw3IEBAIHB1YmxpYzoKICAg
ICAgICAgc3RydWN0IFJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdCB7CiAgICAgICAgICAgICBTZWN1
cml0eU9yaWdpbkRhdGEgdG9wT3JpZ2luOwogICAgICAgICAgICAgVVJMIGNsaWVudFVSTDsKLSAg
ICAgICAgICAgIHVpbnQ2NF90IGlkZW50aWZpZXI7CisgICAgICAgICAgICBGdW5jdGlvbjx2b2lk
KFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYpPiBjYWxsYmFjazsKICAgICAgICAgfTsK
IAogICAgICAgICBTV1NlcnZlciYgbV9zZXJ2ZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNv
bm5lY3Rpb24uY3BwCmluZGV4IDM2OGQzOGY1ZDYzNjM4Y2I5OWQ4YjcwYmVkMDMxYjJlZGQzZTEx
ZTEuLmJmNzc3MDNjODI2NjQ3MjRiMzlkOGNhYjM5YjY2MjcyZmIzMzg0YjggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNv
bm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdv
cmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwCkBAIC0zMzcsMjQgKzMzNywxOCBAQCB2b2lk
IFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6cG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQo
U2NyaXB0RXhlY3V0aW9uQ29udAogICAgIHNlbmQoTWVzc2FnZXM6OldlYlNXQ2xpZW50Q29ubmVj
dGlvbjo6UG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQgeyBkZXN0aW5hdGlvbkNvbnRl
eHRJZGVudGlmaWVyLCBtZXNzYWdlLCBzb3VyY2VTZXJ2aWNlV29ya2VyLT5kYXRhKCksIHNvdXJj
ZU9yaWdpbiB9KTsKIH0KIAotdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246Om1hdGNoUmVnaXN0
cmF0aW9uKHVpbnQ2NF90IHJlZ2lzdHJhdGlvbk1hdGNoUmVxdWVzdElkZW50aWZpZXIsIGNvbnN0
IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCkKK3Zv
aWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjptYXRjaFJlZ2lzdHJhdGlvbihjb25zdCBTZWN1cml0
eU9yaWdpbkRhdGEmIHRvcE9yaWdpbiwgY29uc3QgVVJMJiBjbGllbnRVUkwsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YT4m
Jik+JiYgY2FsbGJhY2spCiB7CiAgICAgaWYgKGF1dG8qIHJlZ2lzdHJhdGlvbiA9IGRvUmVnaXN0
cmF0aW9uTWF0Y2hpbmcodG9wT3JpZ2luLCBjbGllbnRVUkwpKSB7Ci0gICAgICAgIHNlbmQoTWVz
c2FnZXM6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6RGlkTWF0Y2hSZWdpc3RyYXRpb24geyByZWdp
c3RyYXRpb25NYXRjaFJlcXVlc3RJZGVudGlmaWVyLCByZWdpc3RyYXRpb24tPmRhdGEoKSB9KTsK
KyAgICAgICAgY2FsbGJhY2socmVnaXN0cmF0aW9uLT5kYXRhKCkpOwogICAgICAgICByZXR1cm47
CiAgICAgfQotICAgIHNlbmQoTWVzc2FnZXM6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6RGlkTWF0
Y2hSZWdpc3RyYXRpb24geyByZWdpc3RyYXRpb25NYXRjaFJlcXVlc3RJZGVudGlmaWVyLCBzdGQ6
Om51bGxvcHQgfSk7CisgICAgY2FsbGJhY2soeyB9KTsKIH0KIAotdm9pZCBXZWJTV1NlcnZlckNv
bm5lY3Rpb246OnJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHJlZ2lzdHJhdGlvblJlYWR5UmVx
dWVzdElkZW50aWZpZXIsIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYgcmVnaXN0cmF0
aW9uRGF0YSkKK3ZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpnZXRSZWdpc3RyYXRpb25zKGNv
bnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwg
Q29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8U2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbkRhdGE+Jik+JiYgY2FsbGJhY2spCiB7Ci0gICAgc2VuZChNZXNzYWdlczo6V2ViU1dDbGll
bnRDb25uZWN0aW9uOjpSZWdpc3RyYXRpb25SZWFkeSB7IHJlZ2lzdHJhdGlvblJlYWR5UmVxdWVz
dElkZW50aWZpZXIsIFdURk1vdmUocmVnaXN0cmF0aW9uRGF0YSkgfSk7Ci19Ci0KLXZvaWQgV2Vi
U1dTZXJ2ZXJDb25uZWN0aW9uOjpnZXRSZWdpc3RyYXRpb25zKHVpbnQ2NF90IHJlZ2lzdHJhdGlv
bk1hdGNoUmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3Jp
Z2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCkKLXsKLSAgICBhdXRvIHJlZ2lzdHJhdGlvbnMgPSBz
ZXJ2ZXIoKS5nZXRSZWdpc3RyYXRpb25zKHRvcE9yaWdpbiwgY2xpZW50VVJMKTsKLSAgICBzZW5k
KE1lc3NhZ2VzOjpXZWJTV0NsaWVudENvbm5lY3Rpb246OkRpZEdldFJlZ2lzdHJhdGlvbnMgeyBy
ZWdpc3RyYXRpb25NYXRjaFJlcXVlc3RJZGVudGlmaWVyLCByZWdpc3RyYXRpb25zIH0pOworICAg
IGNhbGxiYWNrKHNlcnZlcigpLmdldFJlZ2lzdHJhdGlvbnModG9wT3JpZ2luLCBjbGllbnRVUkwp
KTsKIH0KIAogdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246OnJlZ2lzdGVyU2VydmljZVdvcmtl
ckNsaWVudChTZWN1cml0eU9yaWdpbkRhdGEmJiB0b3BPcmlnaW4sIFNlcnZpY2VXb3JrZXJDbGll
bnREYXRhJiYgZGF0YSwgY29uc3Qgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyUmVnaXN0cmF0
aW9uSWRlbnRpZmllcj4mIGNvbnRyb2xsaW5nU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbklkZW50
aWZpZXIsIFN0cmluZyYmIHVzZXJBZ2VudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uaCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24uaAppbmRleCAyOTY2ZTA1Njg4YTZiM2ZhZDY0ZDY4MjQ0Njk5YmJjNDMzNjc4NzZlLi4xNzRm
ZTcyNjY0ODFhMzNkOTIyNDc0Y2I0N2NiN2Q5ZmNjMjUzYjI2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9u
LmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNX
U2VydmVyQ29ubmVjdGlvbi5oCkBAIC05NCw3ICs5NCw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCBz
ZXRSZWdpc3RyYXRpb25MYXN0VXBkYXRlVGltZShXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uSWRlbnRpZmllciwgV2FsbFRpbWUpIGZpbmFsOwogICAgIHZvaWQgc2V0UmVnaXN0cmF0
aW9uVXBkYXRlVmlhQ2FjaGUoV2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbklkZW50
aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJVcGRhdGVWaWFDYWNoZSkgZmluYWw7CiAgICAg
dm9pZCBub3RpZnlDbGllbnRzT2ZDb250cm9sbGVyQ2hhbmdlKGNvbnN0IEhhc2hTZXQ8V2ViQ29y
ZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dElkZW50aWZpZXI+JiBjb250ZXh0SWRlbnRpZmllcnMs
IGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJEYXRhJiBuZXdDb250cm9sbGVyKTsKLSAgICB2
b2lkIHJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdElk
ZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYpIGZpbmFs
OwogCiAgICAgdm9pZCBzY2hlZHVsZUpvYkluU2VydmVyKFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJK
b2JEYXRhJiYpOwogCkBAIC0xMDMsOCArMTAyLDggQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgc3Rh
cnRGZXRjaChTZXJ2aWNlV29ya2VyRmV0Y2hUYXNrJiwgV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXIm
KTsKIAotICAgIHZvaWQgbWF0Y2hSZWdpc3RyYXRpb24odWludDY0X3QgcmVnaXN0cmF0aW9uTWF0
Y2hSZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiB0
b3BPcmlnaW4sIGNvbnN0IFVSTCYgY2xpZW50VVJMKTsKLSAgICB2b2lkIGdldFJlZ2lzdHJhdGlv
bnModWludDY0X3QgcmVnaXN0cmF0aW9uTWF0Y2hSZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgV2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiB0b3BPcmlnaW4sIGNvbnN0IFVSTCYgY2xpZW50VVJM
KTsKKyAgICB2b2lkIG1hdGNoUmVnaXN0cmF0aW9uKGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3Jp
Z2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25E
YXRhPiYmKT4mJik7CisgICAgdm9pZCBnZXRSZWdpc3RyYXRpb25zKGNvbnN0IFdlYkNvcmU6OlNl
Y3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lz
dHJhdGlvbkRhdGE+Jik+JiYpOwogCiAgICAgdm9pZCByZWdpc3RlclNlcnZpY2VXb3JrZXJDbGll
bnQoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiYgdG9wT3JpZ2luLCBXZWJDb3JlOjpTZXJ2
aWNlV29ya2VyQ2xpZW50RGF0YSYmLCBjb25zdCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyPiYsIFN0cmluZyYmIHVzZXJBZ2VudCk7CiAg
ICAgdm9pZCB1bnJlZ2lzdGVyU2VydmljZVdvcmtlckNsaWVudChjb25zdCBXZWJDb3JlOjpTY3Jp
cHRFeGVjdXRpb25Db250ZXh0SWRlbnRpZmllciYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5tZXNz
YWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJT
V1NlcnZlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4KaW5kZXggZDVjODQwMDhlZDJiZWMyMDQ2NGE4
YzAxYjk3YWIwNGE5NTA2YzYxNS4uM2YxOGQ0MGRiNzQ0NWFmOGY5NmJjYzEwNzY4YjJjNjQzMDEx
NGRkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29y
a2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLm1lc3Nh
Z2VzLmluCkBAIC0xLDQgKzEsNCBAQAotIyBDb3B5cmlnaHQgKEMpIDIwMTcgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorIyBDb3B5cmlnaHQgKEMpIDIwMTctMjAyMSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAjCiAjIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogIyBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAgLTM1
LDkgKzM1LDkgQEAgbWVzc2FnZXMgLT4gV2ViU1dTZXJ2ZXJDb25uZWN0aW9uIE5vdFJlZkNvdW50
ZWQgewogCiAgICAgRGlkUmVzb2x2ZVJlZ2lzdHJhdGlvblByb21pc2UoV2ViQ29yZTo6U2Vydmlj
ZVdvcmtlclJlZ2lzdHJhdGlvbktleSBrZXkpCiAKLSAgICBNYXRjaFJlZ2lzdHJhdGlvbih1aW50
NjRfdCBzZXJ2aWNlUmVnaXN0cmF0aW9uTWF0Y2hSZXF1ZXN0SWRlbnRpZmllciwgc3RydWN0IFdl
YkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSB0b3BPcmlnaW4sIFVSTCBjbGllbnRVUkwpCi0gICAg
V2hlblJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHNlcnZpY2VSZWdpc3RyYXRpb25NYXRjaFJl
cXVlc3RJZGVudGlmaWVyLCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHRvcE9y
aWdpbiwgVVJMIGNsaWVudFVSTCkKLSAgICBHZXRSZWdpc3RyYXRpb25zKHVpbnQ2NF90IHNlcnZp
Y2VSZWdpc3RyYXRpb25NYXRjaFJlcXVlc3RJZGVudGlmaWVyLCBzdHJ1Y3QgV2ViQ29yZTo6U2Vj
dXJpdHlPcmlnaW5EYXRhIHRvcE9yaWdpbiwgVVJMIGNsaWVudFVSTCkKKyAgICBNYXRjaFJlZ2lz
dHJhdGlvbihzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHRvcE9yaWdpbiwgVVJM
IGNsaWVudFVSTCkgLT4gKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lz
dHJhdGlvbkRhdGE+IHJlZ2lzdHJhdGlvbikgQXN5bmMKKyAgICBXaGVuUmVnaXN0cmF0aW9uUmVh
ZHkoc3RydWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSB0b3BPcmlnaW4sIFVSTCBjbGll
bnRVUkwpIC0+IChzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEg
cmVnaXN0cmF0aW9uKSBBc3luYworICAgIEdldFJlZ2lzdHJhdGlvbnMoc3RydWN0IFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luRGF0YSB0b3BPcmlnaW4sIFVSTCBjbGllbnRVUkwpIC0+IChWZWN0b3I8
V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGE+IHJlZ2lzdHJhdGlvbnMpIEFz
eW5jCiAgICAgUmVnaXN0ZXJTZXJ2aWNlV29ya2VyQ2xpZW50KHN0cnVjdCBXZWJDb3JlOjpTZWN1
cml0eU9yaWdpbkRhdGEgdG9wT3JpZ2luLCBzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlckNs
aWVudERhdGEgZGF0YSwgc3RkOjpvcHRpb25hbDxXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uSWRlbnRpZmllcj4gY29udHJvbGxpbmdTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSWRl
bnRpZmllciwgU3RyaW5nIHVzZXJBZ2VudCkKICAgICBVbnJlZ2lzdGVyU2VydmljZVdvcmtlckNs
aWVudChXZWJDb3JlOjpTY3JpcHRFeGVjdXRpb25Db250ZXh0SWRlbnRpZmllciBpZGVudGlmaWVy
KQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0Ns
aWVudENvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2Vi
U1dDbGllbnRDb25uZWN0aW9uLmNwcAppbmRleCA4ZDZlYjI2ODBiMWU3NTU1NTUwNzRmYjU4ZDUx
ZDk1ZDJhZmE0MjIxLi41YmFiYjdlMGViZTI4ZmM1NmI1MWQ2ZTUwZDY3ZTE1NmZlM2VjZWIzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENv
bm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNX
Q2xpZW50Q29ubmVjdGlvbi5jcHAKQEAgLTE0NSwyMiArMTQ1LDYgQEAgdm9pZCBXZWJTV0NsaWVu
dENvbm5lY3Rpb246OnNldFNXT3JpZ2luVGFibGVJc0ltcG9ydGVkKCkKICAgICAgICAgbV90YXNr
c1BlbmRpbmdPcmlnaW5JbXBvcnQudGFrZUZpcnN0KCkoKTsKIH0KIAotdm9pZCBXZWJTV0NsaWVu
dENvbm5lY3Rpb246OmRpZE1hdGNoUmVnaXN0cmF0aW9uKHVpbnQ2NF90IG1hdGNoaW5nUmVxdWVz
dCwgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YT4mJiByZXN1bHQp
Ci17Ci0gICAgQVNTRVJUKGlzTWFpblJ1bkxvb3AoKSk7Ci0KLSAgICBpZiAoYXV0byBjb21wbGV0
aW9uSGFuZGxlciA9IG1fb25nb2luZ01hdGNoUmVnaXN0cmF0aW9uVGFza3MudGFrZShtYXRjaGlu
Z1JlcXVlc3QpKQotICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihXVEZNb3ZlKHJlc3VsdCkpOwot
fQotCi12b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6ZGlkR2V0UmVnaXN0cmF0aW9ucyh1aW50
NjRfdCBtYXRjaGluZ1JlcXVlc3QsIFZlY3RvcjxTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0
YT4mJiByZWdpc3RyYXRpb25zKQotewotICAgIEFTU0VSVChpc01haW5SdW5Mb29wKCkpOwotCi0g
ICAgaWYgKGF1dG8gY29tcGxldGlvbkhhbmRsZXIgPSBtX29uZ29pbmdHZXRSZWdpc3RyYXRpb25z
VGFza3MudGFrZShtYXRjaGluZ1JlcXVlc3QpKQotICAgICAgICBjb21wbGV0aW9uSGFuZGxlcihX
VEZNb3ZlKHJlZ2lzdHJhdGlvbnMpKTsKLX0KLQogdm9pZCBXZWJTV0NsaWVudENvbm5lY3Rpb246
Om1hdGNoUmVnaXN0cmF0aW9uKFNlY3VyaXR5T3JpZ2luRGF0YSYmIHRvcE9yaWdpbiwgY29uc3Qg
VVJMJiBjbGllbnRVUkwsIFJlZ2lzdHJhdGlvbkNhbGxiYWNrJiYgY2FsbGJhY2spCiB7CiAgICAg
QVNTRVJUKGlzTWFpblJ1bkxvb3AoKSk7CkBAIC0xNzEsOSArMTU1LDcgQEAgdm9pZCBXZWJTV0Ns
aWVudENvbm5lY3Rpb246Om1hdGNoUmVnaXN0cmF0aW9uKFNlY3VyaXR5T3JpZ2luRGF0YSYmIHRv
cE9yaWdpbiwgY28KICAgICB9CiAKICAgICBydW5PckRlbGF5VGFza0ZvckltcG9ydChbdGhpcywg
Y2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKSwgdG9wT3JpZ2luID0gV1RGTW92ZSh0b3BPcmln
aW4pLCBjbGllbnRVUkxdKCkgbXV0YWJsZSB7Ci0gICAgICAgIHVpbnQ2NF90IGNhbGxiYWNrSUQg
PSArK21fcHJldmlvdXNDYWxsYmFja0lkZW50aWZpZXI7Ci0gICAgICAgIG1fb25nb2luZ01hdGNo
UmVnaXN0cmF0aW9uVGFza3MuYWRkKGNhbGxiYWNrSUQsIFdURk1vdmUoY2FsbGJhY2spKTsKLSAg
ICAgICAgc2VuZChNZXNzYWdlczo6V2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpNYXRjaFJlZ2lzdHJh
dGlvbihjYWxsYmFja0lELCB0b3BPcmlnaW4sIGNsaWVudFVSTCkpOworICAgICAgICBzZW5kV2l0
aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6TWF0Y2hSZWdpc3Ry
YXRpb24geyB0b3BPcmlnaW4sIGNsaWVudFVSTCB9LCBXVEZNb3ZlKGNhbGxiYWNrKSk7CiAgICAg
fSk7CiB9CiAKQEAgLTE4OCwxNiArMTcwLDcgQEAgdm9pZCBXZWJTV0NsaWVudENvbm5lY3Rpb246
OnJ1bk9yRGVsYXlUYXNrRm9ySW1wb3J0KEZ1bmN0aW9uPHZvaWQoKT4mJiB0YXNrKQogCiB2b2lk
IFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6d2hlblJlZ2lzdHJhdGlvblJlYWR5KGNvbnN0IFNlY3Vy
aXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgV2hlblJlZ2lz
dHJhdGlvblJlYWR5Q2FsbGJhY2smJiBjYWxsYmFjaykKIHsKLSAgICB1aW50NjRfdCBjYWxsYmFj
a0lEID0gKyttX3ByZXZpb3VzQ2FsbGJhY2tJZGVudGlmaWVyOwotICAgIG1fb25nb2luZ1JlZ2lz
dHJhdGlvblJlYWR5VGFza3MuYWRkKGNhbGxiYWNrSUQsIFdURk1vdmUoY2FsbGJhY2spKTsKLSAg
ICBzZW5kKE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OldoZW5SZWdpc3RyYXRpb25S
ZWFkeShjYWxsYmFja0lELCB0b3BPcmlnaW4sIGNsaWVudFVSTCkpOwotfQotCi12b2lkIFdlYlNX
Q2xpZW50Q29ubmVjdGlvbjo6cmVnaXN0cmF0aW9uUmVhZHkodWludDY0X3QgY2FsbGJhY2tJRCwg
U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEmJiByZWdpc3RyYXRpb25EYXRhKQotewotICAg
IEFTU0VSVChyZWdpc3RyYXRpb25EYXRhLmFjdGl2ZVdvcmtlcik7Ci0gICAgaWYgKGF1dG8gY2Fs
bGJhY2sgPSBtX29uZ29pbmdSZWdpc3RyYXRpb25SZWFkeVRhc2tzLnRha2UoY2FsbGJhY2tJRCkp
Ci0gICAgICAgIGNhbGxiYWNrKFdURk1vdmUocmVnaXN0cmF0aW9uRGF0YSkpOworICAgIHNlbmRX
aXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpXaGVuUmVnaXN0
cmF0aW9uUmVhZHkgeyB0b3BPcmlnaW4sIGNsaWVudFVSTCB9LCBXVEZNb3ZlKGNhbGxiYWNrKSk7
CiB9CiAKIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjpzZXREb2N1bWVudElzQ29udHJvbGxl
ZChTY3JpcHRFeGVjdXRpb25Db250ZXh0SWRlbnRpZmllciBkb2N1bWVudElkZW50aWZpZXIsIFNl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYgZGF0YSwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKQEAgLTIxNyw5ICsxOTAsNyBAQCB2b2lkIFdl
YlNXQ2xpZW50Q29ubmVjdGlvbjo6Z2V0UmVnaXN0cmF0aW9ucyhTZWN1cml0eU9yaWdpbkRhdGEm
JiB0b3BPcmlnaW4sIGNvbgogICAgIH0KIAogICAgIHJ1bk9yRGVsYXlUYXNrRm9ySW1wb3J0KFt0
aGlzLCBjYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spLCB0b3BPcmlnaW4gPSBXVEZNb3ZlKHRv
cE9yaWdpbiksIGNsaWVudFVSTF0oKSBtdXRhYmxlIHsKLSAgICAgICAgdWludDY0X3QgY2FsbGJh
Y2tJRCA9ICsrbV9wcmV2aW91c0NhbGxiYWNrSWRlbnRpZmllcjsKLSAgICAgICAgbV9vbmdvaW5n
R2V0UmVnaXN0cmF0aW9uc1Rhc2tzLmFkZChjYWxsYmFja0lELCBXVEZNb3ZlKGNhbGxiYWNrKSk7
Ci0gICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6R2V0UmVnaXN0
cmF0aW9ucyB7IGNhbGxiYWNrSUQsIHRvcE9yaWdpbiwgY2xpZW50VVJMIH0pOworICAgICAgICBz
ZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6R2V0UmVn
aXN0cmF0aW9ucyB7IHRvcE9yaWdpbiwgY2xpZW50VVJMIH0sIFdURk1vdmUoY2FsbGJhY2spKTsK
ICAgICB9KTsKIH0KIApAQCAtMjMwLDE2ICsyMDEsNiBAQCB2b2lkIFdlYlNXQ2xpZW50Q29ubmVj
dGlvbjo6Y29ubmVjdGlvblRvU2VydmVyTG9zdCgpCiAKIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0
aW9uOjpjbGVhcigpCiB7Ci0gICAgYXV0byByZWdpc3RyYXRpb25UYXNrcyA9IFdURk1vdmUobV9v
bmdvaW5nTWF0Y2hSZWdpc3RyYXRpb25UYXNrcyk7Ci0gICAgZm9yIChhdXRvJiBjYWxsYmFjayA6
IHJlZ2lzdHJhdGlvblRhc2tzLnZhbHVlcygpKQotICAgICAgICBjYWxsYmFjayhzdGQ6Om51bGxv
cHQpOwotCi0gICAgYXV0byBnZXRSZWdpc3RyYXRpb25UYXNrcyA9IFdURk1vdmUobV9vbmdvaW5n
R2V0UmVnaXN0cmF0aW9uc1Rhc2tzKTsKLSAgICBmb3IgKGF1dG8mIGNhbGxiYWNrIDogZ2V0UmVn
aXN0cmF0aW9uVGFza3MudmFsdWVzKCkpCi0gICAgICAgIGNhbGxiYWNrKHsgfSk7Ci0KLSAgICBt
X29uZ29pbmdSZWdpc3RyYXRpb25SZWFkeVRhc2tzLmNsZWFyKCk7Ci0KICAgICBjbGVhclBlbmRp
bmdKb2JzKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9y
YWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0
b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmgKaW5kZXggNDU4NjgxZjliMGFlYWFhMzlhYmVk
NDY3OTkyOWE0MjAyNTkwOGU0Yy4uM2QxODk1ODg0MDE2ZDI4YzY3YTA5MWUyYTBjMjBmNmZmZmEz
OWNjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dD
bGllbnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2Uv
V2ViU1dDbGllbnRDb25uZWN0aW9uLmgKQEAgLTgxLDcgKzgxLDYgQEAgcHJpdmF0ZToKICAgICB2
b2lkIGRpZE1hdGNoUmVnaXN0cmF0aW9uKHVpbnQ2NF90IG1hdGNoUmVxdWVzdElkZW50aWZpZXIs
IHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGE+JiYp
OwogICAgIHZvaWQgZGlkR2V0UmVnaXN0cmF0aW9ucyh1aW50NjRfdCBtYXRjaFJlcXVlc3RJZGVu
dGlmaWVyLCBWZWN0b3I8V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGE+JiYp
OwogICAgIHZvaWQgd2hlblJlZ2lzdHJhdGlvblJlYWR5KGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5
T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgV2hlblJlZ2lzdHJh
dGlvblJlYWR5Q2FsbGJhY2smJikgZmluYWw7Ci0gICAgdm9pZCByZWdpc3RyYXRpb25SZWFkeSh1
aW50NjRfdCBjYWxsYmFja0lELCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0
YSYmKTsKIAogICAgIHZvaWQgc2V0RG9jdW1lbnRJc0NvbnRyb2xsZWQoV2ViQ29yZTo6U2NyaXB0
RXhlY3V0aW9uQ29udGV4dElkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3Ry
YXRpb25EYXRhJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwogCkBAIC0xMTIs
MTAgKzExMSw2IEBAIHByaXZhdGU6CiAKICAgICBVbmlxdWVSZWY8V2ViU1dPcmlnaW5UYWJsZT4g
bV9zd09yaWdpblRhYmxlOwogCi0gICAgdWludDY0X3QgbV9wcmV2aW91c0NhbGxiYWNrSWRlbnRp
ZmllciB7IDAgfTsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWdpc3RyYXRpb25DYWxsYmFjaz4g
bV9vbmdvaW5nTWF0Y2hSZWdpc3RyYXRpb25UYXNrczsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBH
ZXRSZWdpc3RyYXRpb25zQ2FsbGJhY2s+IG1fb25nb2luZ0dldFJlZ2lzdHJhdGlvbnNUYXNrczsK
LSAgICBIYXNoTWFwPHVpbnQ2NF90LCBXaGVuUmVnaXN0cmF0aW9uUmVhZHlDYWxsYmFjaz4gbV9v
bmdvaW5nUmVnaXN0cmF0aW9uUmVhZHlUYXNrczsKICAgICBEZXF1ZTxGdW5jdGlvbjx2b2lkKCk+
PiBtX3Rhc2tzUGVuZGluZ09yaWdpbkltcG9ydDsKICAgICBib29sIG1faXNUaHJvdHRsZWFibGUg
eyB0cnVlIH07CiB9OyAvLyBjbGFzcyBXZWJTV1NlcnZlckNvbm5lY3Rpb24KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5t
ZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50
Q29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCAyZjE0NmY2YzAwMjg3Y2E2OGNjMTgzZWIyNjE1
ZWMzYmIzNmJhOGU3Li4yOWI4YjZmZWUwYTVhMTIyNGU0YjcyZjhhZjk2OTMyYmQzMGIwZGYxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENv
bm5lY3Rpb24ubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3Jh
Z2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLm1lc3NhZ2VzLmluCkBAIC0zOCwxMCArMzgsNiBAQCBt
ZXNzYWdlcyAtPiBXZWJTV0NsaWVudENvbm5lY3Rpb24gewogICAgIFNldFNXT3JpZ2luVGFibGVT
aGFyZWRNZW1vcnkoV2ViS2l0OjpTaGFyZWRNZW1vcnk6OklQQ0hhbmRsZSBoYW5kbGUpCiAgICAg
UG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQoV2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9u
Q29udGV4dElkZW50aWZpZXIgZGVzdGluYXRpb25Db250ZXh0SWRlbnRpZmllciwgc3RydWN0IFdl
YkNvcmU6Ok1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzIG1lc3NhZ2UsIHN0cnVjdCBXZWJDb3JlOjpT
ZXJ2aWNlV29ya2VyRGF0YSBzb3VyY2UsIFN0cmluZyBzb3VyY2VPcmlnaW4pCiAKLSAgICBEaWRN
YXRjaFJlZ2lzdHJhdGlvbih1aW50NjRfdCBtYXRjaFJlcXVlc3RJZGVudGlmaWVyLCBzdGQ6Om9w
dGlvbmFsPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhPiBkYXRhKQotICAg
IERpZEdldFJlZ2lzdHJhdGlvbnModWludDY0X3QgbWF0Y2hSZXF1ZXN0SWRlbnRpZmllciwgVmVj
dG9yPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhPiByZWdpc3RyYXRpb25z
KQotICAgIFJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHJlZ2lzdHJhdGlvblJlYWR5UmVxdWVz
dElkZW50aWZpZXIsIHN0cnVjdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0
YSBkYXRhKQotCiAgICAgU2V0RG9jdW1lbnRJc0NvbnRyb2xsZWQoV2ViQ29yZTo6U2NyaXB0RXhl
Y3V0aW9uQ29udGV4dElkZW50aWZpZXIgdGVtcG9yYXJ5RG9jdW1lbnRJZGVudGlmaWVyLCBzdHJ1
Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEgZGF0YSkgLT4gKGJvb2wg
aXNTdWNjZXNzKSBBc3luYwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>445402</attachid>
            <date>2021-11-30 02:46:25 -0800</date>
            <delta_ts>2021-11-30 08:44:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233627-20211130114623.patch</filename>
            <type>text/plain</type>
            <size>21349</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2Mjg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjQ3OTk0ZmFmODA5OWMw
NDE1ODEyOWZiMTg3MzMyZjBkOTc2ZTFlNS4uMWQyMzcxZWI1Y2FmMWI4YTU2MTdkZjRjZjZmMGU5
OTBhODUwMWE2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIxLTExLTMwICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIHNvbWUgV2Vi
U1dDbGllbnRDb25uZWN0aW9uIG1lc3NhZ2VzIHRvIGFzeW5jIHJlcGxpZXMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzYyNworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1pZ3JhdGUgd2hlblJlZ2lzdHJh
dGlvblJlYWR5IHRvIHVzZSBhIGNhbGxiYWNrLgorICAgICAgICBVc2UgY29tcGxldGlvbiBoYW5k
bGVyIGZvciB3aGVuUmVnaXN0cmF0aW9uUmVhZHkgYXMgQXN5bmNSZXBseSB1c2VzIENvbXBsZXRp
b25IYW5kbGVyCisgICAgICAgIGFuZCB1c2Ugb3B0aW9uYWwgdG8gbWFyayB0aGF0IHRoZSByZWdp
c3RyYXRpb24gd2lsbCBuZXZlciBiZSByZXNvbHZlZC4KKyAgICAgICAgQ292ZXJlZCBieSBleGlz
dGluZyB0ZXN0cy4KKworICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXI6OkNvbm5lY3Rpb246OndoZW5SZWdpc3Ry
YXRpb25SZWFkeSk6CisgICAgICAgIChXZWJDb3JlOjpTV1NlcnZlcjo6Q29ubmVjdGlvbjo6cmVz
b2x2ZVJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHMpOgorICAgICAgICAqIHdvcmtlcnMvc2Vydmlj
ZS9zZXJ2ZXIvU1dTZXJ2ZXIuaDoKKwogMjAyMS0xMS0zMCAgWW91ZW5uIEZhYmxldCAgPHlvdWVu
bkBhcHBsZS5jb20+CiAKICAgICAgICAgUHJlbG9hZCBuYXZpZ2F0aW9uIHJlcXVlc3QgaWYgdGhl
IHNlcnZpY2Ugd29ya2VyIGlzIG5vdCBpbW1lZGlhdGVseSByZWFkeSB0byBoYW5kbGUgdGhlIG5h
dmlnYXRpb24gcmVxdWVzdCBmZXRjaCBldmVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBkMTgxNTc5YzdiYTZkM2I1
YWYwYTlkNWEzMjA2YzY2ZDljMjM5MDJkLi43YTk3ZjQ0NGFlMmIyMTBiY2E3ODc4ZTY2ZGE2OTYw
NmNhZDM0NjQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIxLTExLTMwICBZb3Vlbm4g
RmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNaWdyYXRlIHNvbWUgV2ViU1dD
bGllbnRDb25uZWN0aW9uIG1lc3NhZ2VzIHRvIGFzeW5jIHJlcGxpZXMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMzYyNworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1pZ3JhdGUgZGlkTWF0Y2hSZWdpc3Ry
YXRpb24sIGRpZEdldFJlZ2lzdHJhdGlvbnMgYW5kIHJlZ2lzdHJhdGlvblJlYWR5IHRvIGFzeW5j
IHJlcGxpZXMuCisgICAgICAgIFRoaXMgaXMgZWFzaWVyIHRvIHVuZGVyc3RhbmQgYW5kIGlzIG1v
cmUgcm9idXN0IHRvIGNvbm5lY3Rpb24gY2xvc3VyZS4KKworICAgICAgICAqIE5ldHdvcmtQcm9j
ZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjptYXRjaFJlZ2lzdHJhdGlvbik6CisgICAgICAg
IChXZWJLaXQ6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6Z2V0UmVnaXN0cmF0aW9ucyk6CisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24u
aDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29u
bmVjdGlvbi5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dD
bGllbnRDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU1dDbGllbnRDb25uZWN0
aW9uOjptYXRjaFJlZ2lzdHJhdGlvbik6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ2xpZW50Q29u
bmVjdGlvbjo6d2hlblJlZ2lzdHJhdGlvblJlYWR5KToKKyAgICAgICAgKFdlYktpdDo6V2ViU1dD
bGllbnRDb25uZWN0aW9uOjpnZXRSZWdpc3RyYXRpb25zKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
U1dDbGllbnRDb25uZWN0aW9uOjpjbGVhcik6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ2xpZW50
Q29ubmVjdGlvbjo6ZGlkTWF0Y2hSZWdpc3RyYXRpb24pOiBEZWxldGVkLgorICAgICAgICAoV2Vi
S2l0OjpXZWJTV0NsaWVudENvbm5lY3Rpb246OmRpZEdldFJlZ2lzdHJhdGlvbnMpOiBEZWxldGVk
LgorICAgICAgICAoV2ViS2l0OjpXZWJTV0NsaWVudENvbm5lY3Rpb246OnJlZ2lzdHJhdGlvblJl
YWR5KTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRD
b25uZWN0aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29u
bmVjdGlvbi5tZXNzYWdlcy5pbjoKKwogMjAyMS0xMS0zMCAgWW91ZW5uIEZhYmxldCAgPHlvdWVu
bkBhcHBsZS5jb20+CiAKICAgICAgICAgUHJlbG9hZCBuYXZpZ2F0aW9uIHJlcXVlc3QgaWYgdGhl
IHNlcnZpY2Ugd29ya2VyIGlzIG5vdCBpbW1lZGlhdGVseSByZWFkeSB0byBoYW5kbGUgdGhlIG5h
dmlnYXRpb24gcmVxdWVzdCBmZXRjaCBldmVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmNwcAppbmRleCAzZWE2OGZkZjlmM2VmNGRhNzgw
Y2UwYWYxYjIwODM2MDE5YjcwMjEzLi42YzY5MTQ2Mjk4OGU3YWE4YmQ5ZWRmMjFlODc2OTRjNmU3
NDFlY2Y5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVy
L1NXU2VydmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVy
L1NXU2VydmVyLmNwcApAQCAtNTcsNiArNTcsMTIgQEAgU1dTZXJ2ZXI6OkNvbm5lY3Rpb246OkNv
bm5lY3Rpb24oU1dTZXJ2ZXImIHNlcnZlciwgSWRlbnRpZmllciBpZGVudGlmaWVyKQogewogfQog
CitTV1NlcnZlcjo6Q29ubmVjdGlvbjo6fkNvbm5lY3Rpb24oKQoreworICAgIGZvciAoYXV0byYg
cmVxdWVzdCA6IHN0ZDo6ZXhjaGFuZ2UobV9yZWdpc3RyYXRpb25SZWFkeVJlcXVlc3RzLCB7IH0p
KQorICAgICAgICByZXF1ZXN0LmNhbGxiYWNrKHsgfSk7Cit9CisKIEhhc2hTZXQ8U1dTZXJ2ZXIq
PiYgU1dTZXJ2ZXI6OmFsbFNlcnZlcnMoKQogewogICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxI
YXNoU2V0PFNXU2VydmVyKj4+IHNlcnZlcnM7CkBAIC0xMDU4LDE1ICsxMDY0LDE1IEBAIHZvaWQg
U1dTZXJ2ZXI6OnJlc29sdmVSZWdpc3RyYXRpb25SZWFkeVJlcXVlc3RzKFNXU2VydmVyUmVnaXN0
cmF0aW9uJiByZWdpc3RyYXRpCiAgICAgICAgIGNvbm5lY3Rpb24tPnJlc29sdmVSZWdpc3RyYXRp
b25SZWFkeVJlcXVlc3RzKHJlZ2lzdHJhdGlvbik7CiB9CiAKLXZvaWQgU1dTZXJ2ZXI6OkNvbm5l
Y3Rpb246OndoZW5SZWdpc3RyYXRpb25SZWFkeSh1aW50NjRfdCByZWdpc3RyYXRpb25SZWFkeVJl
cXVlc3RJZGVudGlmaWVyLCBjb25zdCBTZWN1cml0eU9yaWdpbkRhdGEmIHRvcE9yaWdpbiwgY29u
c3QgVVJMJiBjbGllbnRVUkwpCit2b2lkIFNXU2VydmVyOjpDb25uZWN0aW9uOjp3aGVuUmVnaXN0
cmF0aW9uUmVhZHkoY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiB0b3BPcmlnaW4sIGNvbnN0IFVS
TCYgY2xpZW50VVJMLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6b3B0aW9uYWw8U2Vydmlj
ZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGE+JiYpPiYmIGNhbGxiYWNrKQogewogICAgIGlmIChhdXRv
KiByZWdpc3RyYXRpb24gPSBkb1JlZ2lzdHJhdGlvbk1hdGNoaW5nKHRvcE9yaWdpbiwgY2xpZW50
VVJMKSkgewogICAgICAgICBpZiAocmVnaXN0cmF0aW9uLT5hY3RpdmVXb3JrZXIoKSkgewotICAg
ICAgICAgICAgcmVnaXN0cmF0aW9uUmVhZHkocmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0SWRlbnRp
ZmllciwgcmVnaXN0cmF0aW9uLT5kYXRhKCkpOworICAgICAgICAgICAgY2FsbGJhY2socmVnaXN0
cmF0aW9uLT5kYXRhKCkpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQot
ICAgIG1fcmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0cy5hcHBlbmQoeyB0b3BPcmlnaW4sIGNsaWVu
dFVSTCwgcmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0SWRlbnRpZmllciB9KTsKKyAgICBtX3JlZ2lz
dHJhdGlvblJlYWR5UmVxdWVzdHMuYXBwZW5kKHsgdG9wT3JpZ2luLCBjbGllbnRVUkwsIFdURk1v
dmUoY2FsbGJhY2spIH0pOwogfQogCiB2b2lkIFNXU2VydmVyOjpDb25uZWN0aW9uOjpzdG9yZVJl
Z2lzdHJhdGlvbnNPbkRpc2soQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNhbGxiYWNrKQpA
QCAtMTA4NCw3ICsxMDkwLDcgQEAgdm9pZCBTV1NlcnZlcjo6Q29ubmVjdGlvbjo6cmVzb2x2ZVJl
Z2lzdHJhdGlvblJlYWR5UmVxdWVzdHMoU1dTZXJ2ZXJSZWdpc3RyYXRpb24KICAgICAgICAgaWYg
KCFyZWdpc3RyYXRpb24ua2V5KCkuaXNNYXRjaGluZyhyZXF1ZXN0LnRvcE9yaWdpbiwgcmVxdWVz
dC5jbGllbnRVUkwpKQogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgICAgIHRoaXMt
PnJlZ2lzdHJhdGlvblJlYWR5KHJlcXVlc3QuaWRlbnRpZmllciwgcmVnaXN0cmF0aW9uLmRhdGEo
KSk7CisgICAgICAgIHJlcXVlc3QuY2FsbGJhY2socmVnaXN0cmF0aW9uLmRhdGEoKSk7CiAgICAg
ICAgIHJldHVybiB0cnVlOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vy
cy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCmluZGV4IGExYWEwNzFiZjliNDIwOWJiNzAzZDA0
NzI0MDI2OTFkODk2NzZjMWEuLjQ1MjJmMzQzY2FmZTA0ODc3YWEwOTA1NTUzZjFlODY1NmEwMjNk
M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dT
ZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2Vy
dmVyLmgKQEAgLTc0LDcgKzc0LDcgQEAgcHVibGljOgogICAgICAgICBXVEZfTUFLRV9GQVNUX0FM
TE9DQVRFRDsKICAgICAgICAgZnJpZW5kIGNsYXNzIFNXU2VydmVyOwogICAgIHB1YmxpYzoKLSAg
ICAgICAgdmlydHVhbCB+Q29ubmVjdGlvbigpID0gZGVmYXVsdDsKKyAgICAgICAgV0VCQ09SRV9F
WFBPUlQgdmlydHVhbCB+Q29ubmVjdGlvbigpOwogCiAgICAgICAgIHVzaW5nIElkZW50aWZpZXIg
PSBTV1NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVyOwogICAgICAgICBJZGVudGlmaWVyIGlkZW50
aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KQEAgLTkwLDcgKzkwLDYgQEAg
cHVibGljOgogICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0UmVnaXN0cmF0aW9uTGFzdFVwZGF0ZVRp
bWUoU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbklkZW50aWZpZXIsIFdhbGxUaW1lKSA9IDA7CiAg
ICAgICAgIHZpcnR1YWwgdm9pZCBzZXRSZWdpc3RyYXRpb25VcGRhdGVWaWFDYWNoZShTZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uSWRlbnRpZmllciwgU2VydmljZVdvcmtlclVwZGF0ZVZpYUNhY2hl
KSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBub3RpZnlDbGllbnRzT2ZDb250cm9sbGVyQ2hh
bmdlKGNvbnN0IEhhc2hTZXQ8U2NyaXB0RXhlY3V0aW9uQ29udGV4dElkZW50aWZpZXI+JiBjb250
ZXh0SWRlbnRpZmllcnMsIGNvbnN0IFNlcnZpY2VXb3JrZXJEYXRhJiBuZXdDb250cm9sbGVyKSA9
IDA7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCByZWdpc3RyYXRpb25SZWFkeSh1aW50NjRfdCByZWdp
c3RyYXRpb25SZWFkeVJlcXVlc3RJZGVudGlmaWVyLCBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
RGF0YSYmKSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBwb3N0TWVzc2FnZVRvU2VydmljZVdv
cmtlckNsaWVudChTY3JpcHRFeGVjdXRpb25Db250ZXh0SWRlbnRpZmllciwgY29uc3QgTWVzc2Fn
ZVdpdGhNZXNzYWdlUG9ydHMmLCBTZXJ2aWNlV29ya2VySWRlbnRpZmllciwgY29uc3QgU3RyaW5n
JiBzb3VyY2VPcmlnaW4pID0gMDsKIAogICAgICAgICB2aXJ0dWFsIHZvaWQgY29udGV4dENvbm5l
Y3Rpb25DcmVhdGVkKFNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbiYpID0gMDsKQEAgLTEwNCw3
ICsxMDMsNyBAQCBwdWJsaWM6CiAgICAgICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZmluaXNoRmV0
Y2hpbmdTY3JpcHRJblNlcnZlcihjb25zdCBTZXJ2aWNlV29ya2VyRmV0Y2hSZXN1bHQmKTsKICAg
ICAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBhZGRTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSW5T
ZXJ2ZXIoU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbklkZW50aWZpZXIpOwogICAgICAgICBXRUJD
T1JFX0VYUE9SVCB2b2lkIHJlbW92ZVNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JblNlcnZlcihT
ZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uSWRlbnRpZmllcik7Ci0gICAgICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgd2hlblJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHJlZ2lzdHJhdGlvblJlYWR5
UmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBj
b25zdCBVUkwmIGNsaWVudFVSTCk7CisgICAgICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2hlblJl
Z2lzdHJhdGlvblJlYWR5KGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25z
dCBVUkwmIGNsaWVudFVSTCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFNl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhPiYmKT4mJik7CiAKICAgICAgICAgV0VCQ09SRV9F
WFBPUlQgdm9pZCBzdG9yZVJlZ2lzdHJhdGlvbnNPbkRpc2soQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZCgpPiYmKTsKIApAQCAtMTE4LDcgKzExNyw3IEBAIHB1YmxpYzoKICAgICAgICAgc3RydWN0IFJl
Z2lzdHJhdGlvblJlYWR5UmVxdWVzdCB7CiAgICAgICAgICAgICBTZWN1cml0eU9yaWdpbkRhdGEg
dG9wT3JpZ2luOwogICAgICAgICAgICAgVVJMIGNsaWVudFVSTDsKLSAgICAgICAgICAgIHVpbnQ2
NF90IGlkZW50aWZpZXI7CisgICAgICAgICAgICBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKHN0ZDo6
b3B0aW9uYWw8U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGE+JiYpPiBjYWxsYmFjazsKICAg
ICAgICAgfTsKIAogICAgICAgICBTV1NlcnZlciYgbV9zZXJ2ZXI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0
aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJT
V1NlcnZlckNvbm5lY3Rpb24uY3BwCmluZGV4IDM2OGQzOGY1ZDYzNjM4Y2I5OWQ4YjcwYmVkMDMx
YjJlZGQzZTExZTEuLmJmNzc3MDNjODI2NjQ3MjRiMzlkOGNhYjM5YjY2MjcyZmIzMzg0YjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJT
V1NlcnZlckNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
U2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwCkBAIC0zMzcsMjQgKzMzNywx
OCBAQCB2b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6cG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3Jr
ZXJDbGllbnQoU2NyaXB0RXhlY3V0aW9uQ29udAogICAgIHNlbmQoTWVzc2FnZXM6OldlYlNXQ2xp
ZW50Q29ubmVjdGlvbjo6UG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQgeyBkZXN0aW5h
dGlvbkNvbnRleHRJZGVudGlmaWVyLCBtZXNzYWdlLCBzb3VyY2VTZXJ2aWNlV29ya2VyLT5kYXRh
KCksIHNvdXJjZU9yaWdpbiB9KTsKIH0KIAotdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246Om1h
dGNoUmVnaXN0cmF0aW9uKHVpbnQ2NF90IHJlZ2lzdHJhdGlvbk1hdGNoUmVxdWVzdElkZW50aWZp
ZXIsIGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVu
dFVSTCkKK3ZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjptYXRjaFJlZ2lzdHJhdGlvbihjb25z
dCBTZWN1cml0eU9yaWdpbkRhdGEmIHRvcE9yaWdpbiwgY29uc3QgVVJMJiBjbGllbnRVUkwsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2VyUmVnaXN0cmF0
aW9uRGF0YT4mJik+JiYgY2FsbGJhY2spCiB7CiAgICAgaWYgKGF1dG8qIHJlZ2lzdHJhdGlvbiA9
IGRvUmVnaXN0cmF0aW9uTWF0Y2hpbmcodG9wT3JpZ2luLCBjbGllbnRVUkwpKSB7Ci0gICAgICAg
IHNlbmQoTWVzc2FnZXM6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6RGlkTWF0Y2hSZWdpc3RyYXRp
b24geyByZWdpc3RyYXRpb25NYXRjaFJlcXVlc3RJZGVudGlmaWVyLCByZWdpc3RyYXRpb24tPmRh
dGEoKSB9KTsKKyAgICAgICAgY2FsbGJhY2socmVnaXN0cmF0aW9uLT5kYXRhKCkpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQotICAgIHNlbmQoTWVzc2FnZXM6OldlYlNXQ2xpZW50Q29ubmVjdGlv
bjo6RGlkTWF0Y2hSZWdpc3RyYXRpb24geyByZWdpc3RyYXRpb25NYXRjaFJlcXVlc3RJZGVudGlm
aWVyLCBzdGQ6Om51bGxvcHQgfSk7CisgICAgY2FsbGJhY2soeyB9KTsKIH0KIAotdm9pZCBXZWJT
V1NlcnZlckNvbm5lY3Rpb246OnJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHJlZ2lzdHJhdGlv
blJlYWR5UmVxdWVzdElkZW50aWZpZXIsIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYg
cmVnaXN0cmF0aW9uRGF0YSkKK3ZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpnZXRSZWdpc3Ry
YXRpb25zKGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNs
aWVudFVSTCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8U2VydmljZVdvcmtl
clJlZ2lzdHJhdGlvbkRhdGE+Jik+JiYgY2FsbGJhY2spCiB7Ci0gICAgc2VuZChNZXNzYWdlczo6
V2ViU1dDbGllbnRDb25uZWN0aW9uOjpSZWdpc3RyYXRpb25SZWFkeSB7IHJlZ2lzdHJhdGlvblJl
YWR5UmVxdWVzdElkZW50aWZpZXIsIFdURk1vdmUocmVnaXN0cmF0aW9uRGF0YSkgfSk7Ci19Ci0K
LXZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpnZXRSZWdpc3RyYXRpb25zKHVpbnQ2NF90IHJl
Z2lzdHJhdGlvbk1hdGNoUmVxdWVzdElkZW50aWZpZXIsIGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0
YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCkKLXsKLSAgICBhdXRvIHJlZ2lzdHJh
dGlvbnMgPSBzZXJ2ZXIoKS5nZXRSZWdpc3RyYXRpb25zKHRvcE9yaWdpbiwgY2xpZW50VVJMKTsK
LSAgICBzZW5kKE1lc3NhZ2VzOjpXZWJTV0NsaWVudENvbm5lY3Rpb246OkRpZEdldFJlZ2lzdHJh
dGlvbnMgeyByZWdpc3RyYXRpb25NYXRjaFJlcXVlc3RJZGVudGlmaWVyLCByZWdpc3RyYXRpb25z
IH0pOworICAgIGNhbGxiYWNrKHNlcnZlcigpLmdldFJlZ2lzdHJhdGlvbnModG9wT3JpZ2luLCBj
bGllbnRVUkwpKTsKIH0KIAogdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246OnJlZ2lzdGVyU2Vy
dmljZVdvcmtlckNsaWVudChTZWN1cml0eU9yaWdpbkRhdGEmJiB0b3BPcmlnaW4sIFNlcnZpY2VX
b3JrZXJDbGllbnREYXRhJiYgZGF0YSwgY29uc3Qgc3RkOjpvcHRpb25hbDxTZXJ2aWNlV29ya2Vy
UmVnaXN0cmF0aW9uSWRlbnRpZmllcj4mIGNvbnRyb2xsaW5nU2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbklkZW50aWZpZXIsIFN0cmluZyYmIHVzZXJBZ2VudCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24u
aCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZl
ckNvbm5lY3Rpb24uaAppbmRleCAyOTY2ZTA1Njg4YTZiM2ZhZDY0ZDY4MjQ0Njk5YmJjNDMzNjc4
NzZlLi4xNzRmZTcyNjY0ODFhMzNkOTIyNDc0Y2I0N2NiN2Q5ZmNjMjUzYjI2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJD
b25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29y
a2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5oCkBAIC05NCw3ICs5NCw2IEBAIHByaXZhdGU6CiAg
ICAgdm9pZCBzZXRSZWdpc3RyYXRpb25MYXN0VXBkYXRlVGltZShXZWJDb3JlOjpTZXJ2aWNlV29y
a2VyUmVnaXN0cmF0aW9uSWRlbnRpZmllciwgV2FsbFRpbWUpIGZpbmFsOwogICAgIHZvaWQgc2V0
UmVnaXN0cmF0aW9uVXBkYXRlVmlhQ2FjaGUoV2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJh
dGlvbklkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJVcGRhdGVWaWFDYWNoZSkgZmlu
YWw7CiAgICAgdm9pZCBub3RpZnlDbGllbnRzT2ZDb250cm9sbGVyQ2hhbmdlKGNvbnN0IEhhc2hT
ZXQ8V2ViQ29yZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dElkZW50aWZpZXI+JiBjb250ZXh0SWRl
bnRpZmllcnMsIGNvbnN0IFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJEYXRhJiBuZXdDb250cm9sbGVy
KTsKLSAgICB2b2lkIHJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHJlZ2lzdHJhdGlvblJlYWR5
UmVxdWVzdElkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRh
JiYpIGZpbmFsOwogCiAgICAgdm9pZCBzY2hlZHVsZUpvYkluU2VydmVyKFdlYkNvcmU6OlNlcnZp
Y2VXb3JrZXJKb2JEYXRhJiYpOwogCkBAIC0xMDMsOCArMTAyLDggQEAgcHJpdmF0ZToKIAogICAg
IHZvaWQgc3RhcnRGZXRjaChTZXJ2aWNlV29ya2VyRmV0Y2hUYXNrJiwgV2ViQ29yZTo6U1dTZXJ2
ZXJXb3JrZXImKTsKIAotICAgIHZvaWQgbWF0Y2hSZWdpc3RyYXRpb24odWludDY0X3QgcmVnaXN0
cmF0aW9uTWF0Y2hSZXF1ZXN0SWRlbnRpZmllciwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmln
aW5EYXRhJiB0b3BPcmlnaW4sIGNvbnN0IFVSTCYgY2xpZW50VVJMKTsKLSAgICB2b2lkIGdldFJl
Z2lzdHJhdGlvbnModWludDY0X3QgcmVnaXN0cmF0aW9uTWF0Y2hSZXF1ZXN0SWRlbnRpZmllciwg
Y29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiB0b3BPcmlnaW4sIGNvbnN0IFVSTCYg
Y2xpZW50VVJMKTsKKyAgICB2b2lkIG1hdGNoUmVnaXN0cmF0aW9uKGNvbnN0IFdlYkNvcmU6OlNl
Y3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgQ29tcGxl
dGlvbkhhbmRsZXI8dm9pZChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdp
c3RyYXRpb25EYXRhPiYmKT4mJik7CisgICAgdm9pZCBnZXRSZWdpc3RyYXRpb25zKGNvbnN0IFdl
YkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVS
TCwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBWZWN0b3I8V2ViQ29yZTo6U2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbkRhdGE+Jik+JiYpOwogCiAgICAgdm9pZCByZWdpc3RlclNlcnZpY2VX
b3JrZXJDbGllbnQoV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhJiYgdG9wT3JpZ2luLCBXZWJD
b3JlOjpTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YSYmLCBjb25zdCBzdGQ6Om9wdGlvbmFsPFdlYkNv
cmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyPiYsIFN0cmluZyYmIHVzZXJB
Z2VudCk7CiAgICAgdm9pZCB1bnJlZ2lzdGVyU2VydmljZVdvcmtlckNsaWVudChjb25zdCBXZWJD
b3JlOjpTY3JpcHRFeGVjdXRpb25Db250ZXh0SWRlbnRpZmllciYpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVj
dGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvU2VydmljZVdv
cmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24ubWVzc2FnZXMuaW4KaW5kZXggZDVjODQwMDhlZDJi
ZWMyMDQ2NGE4YzAxYjk3YWIwNGE5NTA2YzYxNS4uYzk3ZDUyYzcyMWYwZGMyZWNjMzgxMDUxZjM3
MmVhMDBhZjk3N2Y2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9T
ZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgorKysgYi9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0
aW9uLm1lc3NhZ2VzLmluCkBAIC0xLDQgKzEsNCBAQAotIyBDb3B5cmlnaHQgKEMpIDIwMTcgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIyBDb3B5cmlnaHQgKEMpIDIwMTctMjAyMSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAjCiAjIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogIyBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKQEAgLTM1LDkgKzM1LDkgQEAgbWVzc2FnZXMgLT4gV2ViU1dTZXJ2ZXJDb25uZWN0aW9uIE5v
dFJlZkNvdW50ZWQgewogCiAgICAgRGlkUmVzb2x2ZVJlZ2lzdHJhdGlvblByb21pc2UoV2ViQ29y
ZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbktleSBrZXkpCiAKLSAgICBNYXRjaFJlZ2lzdHJh
dGlvbih1aW50NjRfdCBzZXJ2aWNlUmVnaXN0cmF0aW9uTWF0Y2hSZXF1ZXN0SWRlbnRpZmllciwg
c3RydWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSB0b3BPcmlnaW4sIFVSTCBjbGllbnRV
UkwpCi0gICAgV2hlblJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHNlcnZpY2VSZWdpc3RyYXRp
b25NYXRjaFJlcXVlc3RJZGVudGlmaWVyLCBzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5E
YXRhIHRvcE9yaWdpbiwgVVJMIGNsaWVudFVSTCkKLSAgICBHZXRSZWdpc3RyYXRpb25zKHVpbnQ2
NF90IHNlcnZpY2VSZWdpc3RyYXRpb25NYXRjaFJlcXVlc3RJZGVudGlmaWVyLCBzdHJ1Y3QgV2Vi
Q29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHRvcE9yaWdpbiwgVVJMIGNsaWVudFVSTCkKKyAgICBN
YXRjaFJlZ2lzdHJhdGlvbihzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHRvcE9y
aWdpbiwgVVJMIGNsaWVudFVSTCkgLT4gKHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2VydmljZVdv
cmtlclJlZ2lzdHJhdGlvbkRhdGE+IHJlZ2lzdHJhdGlvbikgQXN5bmMKKyAgICBXaGVuUmVnaXN0
cmF0aW9uUmVhZHkoc3RydWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSB0b3BPcmlnaW4s
IFVSTCBjbGllbnRVUkwpIC0+IChzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJS
ZWdpc3RyYXRpb25EYXRhPiByZWdpc3RyYXRpb24pIEFzeW5jCisgICAgR2V0UmVnaXN0cmF0aW9u
cyhzdHJ1Y3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW5EYXRhIHRvcE9yaWdpbiwgVVJMIGNsaWVu
dFVSTCkgLT4gKFZlY3RvcjxXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGF0YT4g
cmVnaXN0cmF0aW9ucykgQXN5bmMKICAgICBSZWdpc3RlclNlcnZpY2VXb3JrZXJDbGllbnQoc3Ry
dWN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luRGF0YSB0b3BPcmlnaW4sIHN0cnVjdCBXZWJDb3Jl
OjpTZXJ2aWNlV29ya2VyQ2xpZW50RGF0YSBkYXRhLCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNl
cnZpY2VXb3JrZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyPiBjb250cm9sbGluZ1NlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb25JZGVudGlmaWVyLCBTdHJpbmcgdXNlckFnZW50KQogICAgIFVucmVnaXN0
ZXJTZXJ2aWNlV29ya2VyQ2xpZW50KFdlYkNvcmU6OlNjcmlwdEV4ZWN1dGlvbkNvbnRleHRJZGVu
dGlmaWVyIGlkZW50aWZpZXIpCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvU3RvcmFnZS9XZWJTV0NsaWVudENvbm5lY3Rpb24uY3BwCmluZGV4IDhkNmViMjY4MGIx
ZTc1NTU1NTA3NGZiNThkNTFkOTVkMmFmYTQyMjEuLjViZjJlOGY0ODRkZDk2MWIzZmQwMjNmMDQz
NThhYTY3Y2JkOTdlMjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9y
YWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmNwcApAQCAtMTQ1LDIyICsxNDUsNiBA
QCB2b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6c2V0U1dPcmlnaW5UYWJsZUlzSW1wb3J0ZWQo
KQogICAgICAgICBtX3Rhc2tzUGVuZGluZ09yaWdpbkltcG9ydC50YWtlRmlyc3QoKSgpOwogfQog
Ci12b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6ZGlkTWF0Y2hSZWdpc3RyYXRpb24odWludDY0
X3QgbWF0Y2hpbmdSZXF1ZXN0LCBzdGQ6Om9wdGlvbmFsPFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25EYXRhPiYmIHJlc3VsdCkKLXsKLSAgICBBU1NFUlQoaXNNYWluUnVuTG9vcCgpKTsKLQotICAg
IGlmIChhdXRvIGNvbXBsZXRpb25IYW5kbGVyID0gbV9vbmdvaW5nTWF0Y2hSZWdpc3RyYXRpb25U
YXNrcy50YWtlKG1hdGNoaW5nUmVxdWVzdCkpCi0gICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKFdU
Rk1vdmUocmVzdWx0KSk7Ci19Ci0KLXZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjpkaWRHZXRS
ZWdpc3RyYXRpb25zKHVpbnQ2NF90IG1hdGNoaW5nUmVxdWVzdCwgVmVjdG9yPFNlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb25EYXRhPiYmIHJlZ2lzdHJhdGlvbnMpCi17Ci0gICAgQVNTRVJUKGlzTWFp
blJ1bkxvb3AoKSk7Ci0KLSAgICBpZiAoYXV0byBjb21wbGV0aW9uSGFuZGxlciA9IG1fb25nb2lu
Z0dldFJlZ2lzdHJhdGlvbnNUYXNrcy50YWtlKG1hdGNoaW5nUmVxdWVzdCkpCi0gICAgICAgIGNv
bXBsZXRpb25IYW5kbGVyKFdURk1vdmUocmVnaXN0cmF0aW9ucykpOwotfQotCiB2b2lkIFdlYlNX
Q2xpZW50Q29ubmVjdGlvbjo6bWF0Y2hSZWdpc3RyYXRpb24oU2VjdXJpdHlPcmlnaW5EYXRhJiYg
dG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgUmVnaXN0cmF0aW9uQ2FsbGJhY2smJiBj
YWxsYmFjaykKIHsKICAgICBBU1NFUlQoaXNNYWluUnVuTG9vcCgpKTsKQEAgLTE3MSw5ICsxNTUs
NyBAQCB2b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6bWF0Y2hSZWdpc3RyYXRpb24oU2VjdXJp
dHlPcmlnaW5EYXRhJiYgdG9wT3JpZ2luLCBjbwogICAgIH0KIAogICAgIHJ1bk9yRGVsYXlUYXNr
Rm9ySW1wb3J0KFt0aGlzLCBjYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spLCB0b3BPcmlnaW4g
PSBXVEZNb3ZlKHRvcE9yaWdpbiksIGNsaWVudFVSTF0oKSBtdXRhYmxlIHsKLSAgICAgICAgdWlu
dDY0X3QgY2FsbGJhY2tJRCA9ICsrbV9wcmV2aW91c0NhbGxiYWNrSWRlbnRpZmllcjsKLSAgICAg
ICAgbV9vbmdvaW5nTWF0Y2hSZWdpc3RyYXRpb25UYXNrcy5hZGQoY2FsbGJhY2tJRCwgV1RGTW92
ZShjYWxsYmFjaykpOwotICAgICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rp
b246Ok1hdGNoUmVnaXN0cmF0aW9uKGNhbGxiYWNrSUQsIHRvcE9yaWdpbiwgY2xpZW50VVJMKSk7
CisgICAgICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjpNYXRjaFJlZ2lzdHJhdGlvbiB7IHRvcE9yaWdpbiwgY2xpZW50VVJMIH0sIFdURk1vdmUo
Y2FsbGJhY2spKTsKICAgICB9KTsKIH0KIApAQCAtMTg4LDE2ICsxNzAsMTAgQEAgdm9pZCBXZWJT
V0NsaWVudENvbm5lY3Rpb246OnJ1bk9yRGVsYXlUYXNrRm9ySW1wb3J0KEZ1bmN0aW9uPHZvaWQo
KT4mJiB0YXNrKQogCiB2b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6d2hlblJlZ2lzdHJhdGlv
blJlYWR5KGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNs
aWVudFVSTCwgV2hlblJlZ2lzdHJhdGlvblJlYWR5Q2FsbGJhY2smJiBjYWxsYmFjaykKIHsKLSAg
ICB1aW50NjRfdCBjYWxsYmFja0lEID0gKyttX3ByZXZpb3VzQ2FsbGJhY2tJZGVudGlmaWVyOwot
ICAgIG1fb25nb2luZ1JlZ2lzdHJhdGlvblJlYWR5VGFza3MuYWRkKGNhbGxiYWNrSUQsIFdURk1v
dmUoY2FsbGJhY2spKTsKLSAgICBzZW5kKE1lc3NhZ2VzOjpXZWJTV1NlcnZlckNvbm5lY3Rpb246
OldoZW5SZWdpc3RyYXRpb25SZWFkeShjYWxsYmFja0lELCB0b3BPcmlnaW4sIGNsaWVudFVSTCkp
OwotfQotCi12b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6cmVnaXN0cmF0aW9uUmVhZHkodWlu
dDY0X3QgY2FsbGJhY2tJRCwgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEmJiByZWdpc3Ry
YXRpb25EYXRhKQotewotICAgIEFTU0VSVChyZWdpc3RyYXRpb25EYXRhLmFjdGl2ZVdvcmtlcik7
Ci0gICAgaWYgKGF1dG8gY2FsbGJhY2sgPSBtX29uZ29pbmdSZWdpc3RyYXRpb25SZWFkeVRhc2tz
LnRha2UoY2FsbGJhY2tJRCkpCi0gICAgICAgIGNhbGxiYWNrKFdURk1vdmUocmVnaXN0cmF0aW9u
RGF0YSkpOworICAgIHNlbmRXaXRoQXN5bmNSZXBseShNZXNzYWdlczo6V2ViU1dTZXJ2ZXJDb25u
ZWN0aW9uOjpXaGVuUmVnaXN0cmF0aW9uUmVhZHkgeyB0b3BPcmlnaW4sIGNsaWVudFVSTCB9LCBb
Y2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKV0oYXV0byByZXN1bHQpIG11dGFibGUgeworICAg
ICAgICBpZiAocmVzdWx0KQorICAgICAgICAgICAgY2FsbGJhY2soKldURk1vdmUocmVzdWx0KSk7
CisgICAgfSk7CiB9CiAKIHZvaWQgV2ViU1dDbGllbnRDb25uZWN0aW9uOjpzZXREb2N1bWVudElz
Q29udHJvbGxlZChTY3JpcHRFeGVjdXRpb25Db250ZXh0SWRlbnRpZmllciBkb2N1bWVudElkZW50
aWZpZXIsIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhJiYgZGF0YSwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChib29sKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKQEAgLTIxNyw5ICsxOTMsNyBA
QCB2b2lkIFdlYlNXQ2xpZW50Q29ubmVjdGlvbjo6Z2V0UmVnaXN0cmF0aW9ucyhTZWN1cml0eU9y
aWdpbkRhdGEmJiB0b3BPcmlnaW4sIGNvbgogICAgIH0KIAogICAgIHJ1bk9yRGVsYXlUYXNrRm9y
SW1wb3J0KFt0aGlzLCBjYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spLCB0b3BPcmlnaW4gPSBX
VEZNb3ZlKHRvcE9yaWdpbiksIGNsaWVudFVSTF0oKSBtdXRhYmxlIHsKLSAgICAgICAgdWludDY0
X3QgY2FsbGJhY2tJRCA9ICsrbV9wcmV2aW91c0NhbGxiYWNrSWRlbnRpZmllcjsKLSAgICAgICAg
bV9vbmdvaW5nR2V0UmVnaXN0cmF0aW9uc1Rhc2tzLmFkZChjYWxsYmFja0lELCBXVEZNb3ZlKGNh
bGxiYWNrKSk7Ci0gICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6
R2V0UmVnaXN0cmF0aW9ucyB7IGNhbGxiYWNrSUQsIHRvcE9yaWdpbiwgY2xpZW50VVJMIH0pOwor
ICAgICAgICBzZW5kV2l0aEFzeW5jUmVwbHkoTWVzc2FnZXM6OldlYlNXU2VydmVyQ29ubmVjdGlv
bjo6R2V0UmVnaXN0cmF0aW9ucyB7IHRvcE9yaWdpbiwgY2xpZW50VVJMIH0sIFdURk1vdmUoY2Fs
bGJhY2spKTsKICAgICB9KTsKIH0KIApAQCAtMjMwLDE2ICsyMDQsNiBAQCB2b2lkIFdlYlNXQ2xp
ZW50Q29ubmVjdGlvbjo6Y29ubmVjdGlvblRvU2VydmVyTG9zdCgpCiAKIHZvaWQgV2ViU1dDbGll
bnRDb25uZWN0aW9uOjpjbGVhcigpCiB7Ci0gICAgYXV0byByZWdpc3RyYXRpb25UYXNrcyA9IFdU
Rk1vdmUobV9vbmdvaW5nTWF0Y2hSZWdpc3RyYXRpb25UYXNrcyk7Ci0gICAgZm9yIChhdXRvJiBj
YWxsYmFjayA6IHJlZ2lzdHJhdGlvblRhc2tzLnZhbHVlcygpKQotICAgICAgICBjYWxsYmFjayhz
dGQ6Om51bGxvcHQpOwotCi0gICAgYXV0byBnZXRSZWdpc3RyYXRpb25UYXNrcyA9IFdURk1vdmUo
bV9vbmdvaW5nR2V0UmVnaXN0cmF0aW9uc1Rhc2tzKTsKLSAgICBmb3IgKGF1dG8mIGNhbGxiYWNr
IDogZ2V0UmVnaXN0cmF0aW9uVGFza3MudmFsdWVzKCkpCi0gICAgICAgIGNhbGxiYWNrKHsgfSk7
Ci0KLSAgICBtX29uZ29pbmdSZWdpc3RyYXRpb25SZWFkeVRhc2tzLmNsZWFyKCk7Ci0KICAgICBj
bGVhclBlbmRpbmdKb2JzKCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmgKaW5kZXggNDU4NjgxZjliMGFl
YWFhMzlhYmVkNDY3OTkyOWE0MjAyNTkwOGU0Yy4uM2QxODk1ODg0MDE2ZDI4YzY3YTA5MWUyYTBj
MjBmNmZmZmEzOWNjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3Jh
Z2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLmgKQEAgLTgxLDcgKzgxLDYgQEAgcHJpdmF0
ZToKICAgICB2b2lkIGRpZE1hdGNoUmVnaXN0cmF0aW9uKHVpbnQ2NF90IG1hdGNoUmVxdWVzdElk
ZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRhdGE+JiYpOwogICAgIHZvaWQgZGlkR2V0UmVnaXN0cmF0aW9ucyh1aW50NjRfdCBtYXRjaFJl
cXVlc3RJZGVudGlmaWVyLCBWZWN0b3I8V2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRhdGE+JiYpOwogICAgIHZvaWQgd2hlblJlZ2lzdHJhdGlvblJlYWR5KGNvbnN0IFdlYkNvcmU6
OlNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCwgV2hl
blJlZ2lzdHJhdGlvblJlYWR5Q2FsbGJhY2smJikgZmluYWw7Ci0gICAgdm9pZCByZWdpc3RyYXRp
b25SZWFkeSh1aW50NjRfdCBjYWxsYmFja0lELCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uRGF0YSYmKTsKIAogICAgIHZvaWQgc2V0RG9jdW1lbnRJc0NvbnRyb2xsZWQoV2ViQ29y
ZTo6U2NyaXB0RXhlY3V0aW9uQ29udGV4dElkZW50aWZpZXIsIFdlYkNvcmU6OlNlcnZpY2VXb3Jr
ZXJSZWdpc3RyYXRpb25EYXRhJiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoYm9vbCk+JiYpOwog
CkBAIC0xMTIsMTAgKzExMSw2IEBAIHByaXZhdGU6CiAKICAgICBVbmlxdWVSZWY8V2ViU1dPcmln
aW5UYWJsZT4gbV9zd09yaWdpblRhYmxlOwogCi0gICAgdWludDY0X3QgbV9wcmV2aW91c0NhbGxi
YWNrSWRlbnRpZmllciB7IDAgfTsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWdpc3RyYXRpb25D
YWxsYmFjaz4gbV9vbmdvaW5nTWF0Y2hSZWdpc3RyYXRpb25UYXNrczsKLSAgICBIYXNoTWFwPHVp
bnQ2NF90LCBHZXRSZWdpc3RyYXRpb25zQ2FsbGJhY2s+IG1fb25nb2luZ0dldFJlZ2lzdHJhdGlv
bnNUYXNrczsKLSAgICBIYXNoTWFwPHVpbnQ2NF90LCBXaGVuUmVnaXN0cmF0aW9uUmVhZHlDYWxs
YmFjaz4gbV9vbmdvaW5nUmVnaXN0cmF0aW9uUmVhZHlUYXNrczsKICAgICBEZXF1ZTxGdW5jdGlv
bjx2b2lkKCk+PiBtX3Rhc2tzUGVuZGluZ09yaWdpbkltcG9ydDsKICAgICBib29sIG1faXNUaHJv
dHRsZWFibGUgeyB0cnVlIH07CiB9OyAvLyBjbGFzcyBXZWJTV1NlcnZlckNvbm5lY3Rpb24KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ2xpZW50Q29u
bmVjdGlvbi5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dl
YlNXQ2xpZW50Q29ubmVjdGlvbi5tZXNzYWdlcy5pbgppbmRleCAyZjE0NmY2YzAwMjg3Y2E2OGNj
MTgzZWIyNjE1ZWMzYmIzNmJhOGU3Li4yOWI4YjZmZWUwYTVhMTIyNGU0YjcyZjhhZjk2OTMyYmQz
MGIwZGYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvU3RvcmFnZS9XZWJT
V0NsaWVudENvbm5lY3Rpb24ubWVzc2FnZXMuaW4KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1N0b3JhZ2UvV2ViU1dDbGllbnRDb25uZWN0aW9uLm1lc3NhZ2VzLmluCkBAIC0zOCwxMCAr
MzgsNiBAQCBtZXNzYWdlcyAtPiBXZWJTV0NsaWVudENvbm5lY3Rpb24gewogICAgIFNldFNXT3Jp
Z2luVGFibGVTaGFyZWRNZW1vcnkoV2ViS2l0OjpTaGFyZWRNZW1vcnk6OklQQ0hhbmRsZSBoYW5k
bGUpCiAgICAgUG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXJDbGllbnQoV2ViQ29yZTo6U2NyaXB0
RXhlY3V0aW9uQ29udGV4dElkZW50aWZpZXIgZGVzdGluYXRpb25Db250ZXh0SWRlbnRpZmllciwg
c3RydWN0IFdlYkNvcmU6Ok1lc3NhZ2VXaXRoTWVzc2FnZVBvcnRzIG1lc3NhZ2UsIHN0cnVjdCBX
ZWJDb3JlOjpTZXJ2aWNlV29ya2VyRGF0YSBzb3VyY2UsIFN0cmluZyBzb3VyY2VPcmlnaW4pCiAK
LSAgICBEaWRNYXRjaFJlZ2lzdHJhdGlvbih1aW50NjRfdCBtYXRjaFJlcXVlc3RJZGVudGlmaWVy
LCBzdGQ6Om9wdGlvbmFsPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhPiBk
YXRhKQotICAgIERpZEdldFJlZ2lzdHJhdGlvbnModWludDY0X3QgbWF0Y2hSZXF1ZXN0SWRlbnRp
ZmllciwgVmVjdG9yPFdlYkNvcmU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EYXRhPiByZWdp
c3RyYXRpb25zKQotICAgIFJlZ2lzdHJhdGlvblJlYWR5KHVpbnQ2NF90IHJlZ2lzdHJhdGlvblJl
YWR5UmVxdWVzdElkZW50aWZpZXIsIHN0cnVjdCBXZWJDb3JlOjpTZXJ2aWNlV29ya2VyUmVnaXN0
cmF0aW9uRGF0YSBkYXRhKQotCiAgICAgU2V0RG9jdW1lbnRJc0NvbnRyb2xsZWQoV2ViQ29yZTo6
U2NyaXB0RXhlY3V0aW9uQ29udGV4dElkZW50aWZpZXIgdGVtcG9yYXJ5RG9jdW1lbnRJZGVudGlm
aWVyLCBzdHJ1Y3QgV2ViQ29yZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRhdGEgZGF0YSkg
LT4gKGJvb2wgaXNTdWNjZXNzKSBBc3luYwogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>