<?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>280377</bug_id>
          
          <creation_ts>2024-09-25 18:07:46 -0700</creation_ts>
          <short_desc>REGRESSION(283852@main): Introduced 0.3% Speedometer regression</short_desc>
          <delta_ts>2024-09-25 19:29:33 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>278084</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="Fujii Hironori">fujii</assigned_to>
          <cc>ntim</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2063232</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2024-09-25 18:07:46 -0700</bug_when>
    <thetext>https://commits.webkit.org/283852@main introduced a regression:
Introduced 0.3% Speedometer regression

This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2063234</commentid>
    <comment_count>1</comment_count>
      <attachid>472682</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2024-09-25 18:07:52 -0700</bug_when>
    <thetext>Created attachment 472682
REVERT of 283852@main

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the revert will be successful.  This process takes approximately 15 minutes.

If you would like to land the revert faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2063235</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2024-09-25 18:08:22 -0700</bug_when>
    <thetext>rdar://136714444</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2063236</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2024-09-25 18:10:51 -0700</bug_when>
    <thetext>Committed 284255@main (d79e9ac04ab2): &lt;https://commits.webkit.org/284255@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 472682.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2063264</commentid>
    <comment_count>4</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2024-09-25 19:26:42 -0700</bug_when>
    <thetext>Re-opening for pull request https://github.com/WebKit/WebKit/pull/34281</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>472682</attachid>
            <date>2024-09-25 18:07:52 -0700</date>
            <delta_ts>2024-09-25 18:10:51 -0700</delta_ts>
            <desc>REVERT of 283852@main</desc>
            <filename>bug-280377-20240926010752.patch</filename>
            <type>text/plain</type>
            <size>45656</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">RnJvbSBlY2ZjYjNiOGNhY2ZiOWE0MGFiNDUxZDU0NmY4NWVhZTg0Y2M0YzEzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDb21taXQgUXVldWUgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3Jn
PgpEYXRlOiBUaHUsIDI2IFNlcCAyMDI0IDAxOjA3OjQ5ICswMDAwClN1YmplY3Q6IFtQQVRDSF0g
VW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIDI4Mzg1MkBtYWluLgogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTI4MDM3NwoKSW50cm9kdWNlZCAwLjMlIFNwZWVkb21ldGVyIHJl
Z3Jlc3Npb24KClJldmVydGVkIGNoYW5nZXNldDoKCiJbYXBwZWFyYW5jZTogYmFzZV0gQWRkIHN0
eWxlIHN3aXRjaGluZyBtZWNoYW5pc20gZm9yIFVBIHN0eWxlc2hlZXRzIgpodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc4MDg0Cmh0dHBzOi8vY29tbWl0cy53ZWJraXQu
b3JnLzI4Mzg1MkBtYWluCi0tLQogU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgICAgICAgICAg
ICAgICAgICAgIHwgIDEgLQogLi4uL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIHwgIDYgLS0tCiAuLi4vV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1J1bGVDdXN0b20u
Y3BwICAgfCAgMSAtCiAuLi4vY3NzL0NTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlLmNwcCAg
ICAgfCA0NiAtLS0tLS0tLS0tLS0tLS0tCiAuLi4vY3NzL0NTU0ludGVybmFsQmFzZUFwcGVhcmFu
Y2VSdWxlLmggICAgICAgfCA1MiAtLS0tLS0tLS0tLS0tLS0tLS0tCiBTb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTVGltaW5nRnVuY3Rpb25WYWx1ZS5jcHAgfCAgMSAtCiBTb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVmFsdWVLZXl3b3Jkcy5pbiAgICAgICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUnVsZS5jcHAgICAgICAgICAgICAgIHwgMTYgLS0tLS0tCiBTb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVSdWxlLmggICAgICAgICAgICAgICAgfCAxNyArLS0tLS0KIFNvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVJ1bGVUeXBlLmggICAgICAgICAgICB8ICAzICstCiBTb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVTaGVldENvbnRlbnRzLmNwcCAgICAgfCAgMiAtCiBTb3VyY2UvV2ViQ29yZS9jc3MvaHRt
bC5jc3MgICAgICAgICAgICAgICAgICAgfCA0OCAtLS0tLS0tLS0tLS0tLS0tLQogU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NBdFJ1bGVJRC5jcHAgICAgIHwgIDEgLQogU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NBdFJ1bGVJRC5oICAgICAgIHwgIDEgLQogU291cmNlL1dlYkNvcmUv
Y3NzL3BhcnNlci9DU1NQYXJzZXJJbXBsLmNwcCAgIHwgMjQgLS0tLS0tLS0tCiBTb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuaCAgICAgfCAgMiAtCiAuLi4vV2ViQ29yZS9j
c3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcCAgfCAxMyAtLS0tLQogU291cmNlL1dlYkNv
cmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5oIHwgIDMgLS0KIC4uLi9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcCB8ICAxIC0KIFNvdXJjZS9XZWJDb3JlL3N0
eWxlL0VsZW1lbnRSdWxlQ29sbGVjdG9yLmNwcCB8ICA5ICsrLS0KIFNvdXJjZS9XZWJDb3JlL3N0
eWxlL01hdGNoUmVzdWx0LmggICAgICAgICAgICB8IDEwICsrLS0KIFNvdXJjZS9XZWJDb3JlL3N0
eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAgICAgICB8IDExICstLS0KIFNvdXJjZS9XZWJDb3JlL3N0
eWxlL1Byb3BlcnR5Q2FzY2FkZS5oICAgICAgICB8ICA1ICstCiBTb3VyY2UvV2ViQ29yZS9zdHls
ZS9SdWxlRGF0YS5jcHAgICAgICAgICAgICAgfCAgNSArLQogU291cmNlL1dlYkNvcmUvc3R5bGUv
UnVsZURhdGEuaCAgICAgICAgICAgICAgIHwgMTMgKystLS0KIFNvdXJjZS9XZWJDb3JlL3N0eWxl
L1J1bGVGZWF0dXJlLmNwcCAgICAgICAgICB8ICAyICstCiBTb3VyY2UvV2ViQ29yZS9zdHlsZS9S
dWxlU2V0LmNwcCAgICAgICAgICAgICAgfCAgMiArLQogU291cmNlL1dlYkNvcmUvc3R5bGUvUnVs
ZVNldEJ1aWxkZXIuY3BwICAgICAgIHwgMTEgKy0tLQogU291cmNlL1dlYkNvcmUvc3R5bGUvUnVs
ZVNldEJ1aWxkZXIuaCAgICAgICAgIHwgIDIgKy0KIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxl
QnVpbGRlci5jcHAgICAgICAgICB8ICA3ICstLQogU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVC
dWlsZGVyLmggICAgICAgICAgIHwgIDIgKy0KIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVz
b2x2ZXIuY3BwICAgICAgICB8ICAxIC0KIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJl
c29sdmVyLmNwcCAgICB8ICAyICstCiAzMyBmaWxlcyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25zKCsp
LCAyOTMgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlLmNwcAogZGVsZXRlIG1vZGUgMTAwNjQ0IFNv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NJbnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVsZS5oCgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2Vz
LnR4dAppbmRleCA3MTBkZmI4ZDFmYjIuLjAyNDYyZmI0MWI2MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvU291cmNlcy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291cmNlcy50eHQKQEAg
LTg5MSw3ICs4OTEsNiBAQCBjc3MvQ1NTSW1hZ2VTZXRPcHRpb25WYWx1ZS5jcHAKIGNzcy9DU1NJ
bWFnZVNldFZhbHVlLmNwcAogY3NzL0NTU0ltYWdlVmFsdWUuY3BwCiBjc3MvQ1NTSW1wb3J0UnVs
ZS5jcHAKLWNzcy9DU1NJbnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVsZS5jcHAKIGNzcy9DU1NLZXlm
cmFtZVJ1bGUuY3BwCiBjc3MvQ1NTS2V5ZnJhbWVzUnVsZS5jcHAKIGNzcy9DU1NMYXllckJsb2Nr
UnVsZS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCBkMTY3ZWY4MmE4M2IuLjM5MWVlZDM3MWU4YyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTc5MCw3ICsx
NzkwLDYgQEAKIAkJNDkzRTVFMDkxMkQ2NDIwNTAwMDIwMDgxIC8qIFBsYXRmb3JtQ0FMYXllckNs
aWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDkz
RTVFMDgxMkQ2NDIwNTAwMDIwMDgxIC8qIFBsYXRmb3JtQ0FMYXllckNsaWVudC5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTQ5NDI2NTMxMkI2MUY3
RUEwMDA0NDZENSAvKiBQc2V1ZG9FbGVtZW50UmVxdWVzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk0MjY1MzAyQjYxRjdFOTAwMDQ0NkQ1IC8qIFBz
ZXVkb0VsZW1lbnRSZXF1ZXN0LmggKi87IH07CiAJCTQ5NDVCRkQ0MTNDRjgwOTAwMENDM0IzOCAv
KiBUcmFuc2Zvcm1TdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDk0NUJGRDIxM0NGODA5MDAwQ0MzQjM4IC8qIFRyYW5zZm9ybVN0YXRlLmggKi87
IH07Ci0JCTQ5NDgzQTE4MkM2QzJCQUQwMDAxNjYwRCAvKiBDU1NJbnRlcm5hbEJhc2VBcHBlYXJh
bmNlUnVsZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NDk0ODNBMTYyQzZDMkI4RjAwMDE2NjBEIC8qIENTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxl
LmggKi87IH07CiAJCTQ5NDg0RkMyMTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNHcmFkaWVudC5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDk0ODRGQjQx
MDJDRjIzQzAwMTg3REQzIC8qIENhbnZhc0dyYWRpZW50LmggKi87IH07CiAJCTQ5NDg0RkM1MTAy
Q0YyM0MwMDE4N0REMyAvKiBDYW52YXNQYXR0ZXJuLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0OTQ4NEZCNzEwMkNGMjNDMDAxODdERDMgLyogQ2FudmFz
UGF0dGVybi5oICovOyB9OwogCQk0OTQ4NEZDQjEwMkNGMjNDMDAxODdERDMgLyogQ2FudmFzUmVu
ZGVyaW5nQ29udGV4dDJELmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA0OTQ4NEZCRDEwMkNGMjNDMDAxODdERDMgLyogQ2FudmFzUmVuZGVyaW5nQ29udGV4
dDJELmggKi87IH07CkBAIC0xMDk0Myw4ICsxMDk0Miw2IEBACiAJCTQ5NDI2NTMwMkI2MUY3RTkw
MDA0NDZENSAvKiBQc2V1ZG9FbGVtZW50UmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBQc2V1ZG9FbGVtZW50UmVxdWVzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0OTQ1QkZEMTEzQ0Y4MDkwMDBDQzNCMzggLyogVHJhbnNmb3JtU3RhdGUuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gVHJhbnNmb3JtU3RhdGUuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0OTQ1QkZEMjEzQ0Y4MDkwMDBDQzNCMzggLyog
VHJhbnNmb3JtU3RhdGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVHJhbnNm
b3JtU3RhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNDk0ODNBMTYyQzZDMkI4
RjAwMDE2NjBEIC8qIENTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IENTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTQ5NDgzQTE3MkM2QzJCOEYwMDAxNjYwRCAvKiBDU1NJbnRlcm5hbEJhc2VBcHBl
YXJhbmNlUnVsZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDU1NJbnRlcm5hbEJhc2VBcHBlYXJh
bmNlUnVsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQ5NDg0RkIzMTAyQ0Yy
M0MwMDE4N0REMyAvKiBDYW52YXNHcmFkaWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBDYW52YXNHcmFkaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTQ5NDg0RkI0MTAyQ0YyM0MwMDE4N0REMyAvKiBDYW52YXNHcmFkaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYW52YXNHcmFkaWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk0OTQ4NEZCNTEwMkNGMjNDMDAxODdERDMgLyogQ2FudmFzR3Jh
ZGllbnQuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENhbnZhc0dyYWRpZW50LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTM2NDMzLDggKzM2NDMwLDYgQEAKIAkJCQlBODBF
NkNDMTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1wb3J0UnVsZS5jcHAgKi8sCiAJCQkJQTgwRTZD
Q0MwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU0ltcG9ydFJ1bGUuaCAqLywKIAkJCQk4NUM1NkNBOTBB
QTg5RTY2MDBEOTU3NTUgLyogQ1NTSW1wb3J0UnVsZS5pZGwgKi8sCi0JCQkJNDk0ODNBMTcyQzZD
MkI4RjAwMDE2NjBEIC8qIENTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlLmNwcCAqLywKLQkJ
CQk0OTQ4M0ExNjJDNkMyQjhGMDAwMTY2MEQgLyogQ1NTSW50ZXJuYWxCYXNlQXBwZWFyYW5jZVJ1
bGUuaCAqLywKIAkJCQkzMTI4OEU2RTBFMzAwNUQ2MDAzNjE5QUUgLyogQ1NTS2V5ZnJhbWVSdWxl
LmNwcCAqLywKIAkJCQkzMTI4OEU2RjBFMzAwNUQ2MDAzNjE5QUUgLyogQ1NTS2V5ZnJhbWVSdWxl
LmggKi8sCiAJCQkJMzE2RkUwOTEwRTZDQ0Q3RjAwQkY2MDg4IC8qIENTU0tleWZyYW1lUnVsZS5p
ZGwgKi8sCkBAIC0zOTE3NSw3ICszOTE3MCw2IEBACiAJCQkJOTM5M0U2MDAxNTFBOTlGMjAwMDY2
RjA2IC8qIENTU0ltYWdlU2V0VmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MEU2Q0ZBMEEx
OTg5Q0EwMDdGQjhDNSAvKiBDU1NJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQlBODBF
NkNGNjBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1wb3J0UnVsZS5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJNDk0ODNBMTgyQzZDMkJBRDAwMDE2NjBEIC8qIENTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VS
dWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTI4OEU3MzBFMzAwNUQ2MDAzNjE5QUUgLyogQ1NT
S2V5ZnJhbWVSdWxlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTI4OEU3NTBFMzAwNUQ2MDAzNjE5
QUUgLyogQ1NTS2V5ZnJhbWVzUnVsZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkE0MTA3QTQyNkNC
NjZGODAwM0JGNzk3IC8qIENTU0tleXdvcmRWYWx1ZS5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1J1bGVDdXN0b20uY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NSdWxlQ3VzdG9tLmNwcAppbmRleCAyNTkwMjM0
NDA2NDguLjYxMTIyZmQ0NTdiZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDU1NSdWxlQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0NTU1J1bGVDdXN0b20uY3BwCkBAIC0xMjcsNyArMTI3LDYgQEAgSlNWYWx1ZSB0b0pTTmV3bHlD
cmVhdGVkKEpTR2xvYmFsT2JqZWN0KiwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwg
UmVmPEMKICAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8Q1NTU3RhcnRpbmdTdHlsZVJ1bGU+
KGdsb2JhbE9iamVjdCwgV1RGTW92ZShydWxlKSk7CiAgICAgY2FzZSBTdHlsZVJ1bGVUeXBlOjpW
aWV3VHJhbnNpdGlvbjoKICAgICAgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8Q1NTVmlld1RyYW5z
aXRpb25SdWxlPihnbG9iYWxPYmplY3QsIFdURk1vdmUocnVsZSkpOwotICAgIGNhc2UgU3R5bGVS
dWxlVHlwZTo6SW50ZXJuYWxCYXNlQXBwZWFyYW5jZToKICAgICBjYXNlIFN0eWxlUnVsZVR5cGU6
OlVua25vd246CiAgICAgY2FzZSBTdHlsZVJ1bGVUeXBlOjpDaGFyc2V0OgogICAgIGNhc2UgU3R5
bGVSdWxlVHlwZTo6TWFyZ2luOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0lu
dGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbnRl
cm5hbEJhc2VBcHBlYXJhbmNlUnVsZS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAzZjViZGVjOWYwYS4uMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJ
bnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVsZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw0NiArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDI0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkNTU0ludGVy
bmFsQmFzZUFwcGVhcmFuY2VSdWxlLmgiCi0KLSNpbmNsdWRlICJTdHlsZVJ1bGUuaCIKLQotbmFt
ZXNwYWNlIFdlYkNvcmUgewotCi1DU1NJbnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVsZTo6Q1NTSW50
ZXJuYWxCYXNlQXBwZWFyYW5jZVJ1bGUoU3R5bGVSdWxlSW50ZXJuYWxCYXNlQXBwZWFyYW5jZSYg
cnVsZSwgQ1NTU3R5bGVTaGVldCogcGFyZW50KQotICAgIDogQ1NTR3JvdXBpbmdSdWxlKHJ1bGUs
IHBhcmVudCkKLXsKLX0KLQotU3RyaW5nIENTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlOjpj
c3NUZXh0KCkgY29uc3QKLXsKLSAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7Ci0gICAgYnVpbGRl
ci5hcHBlbmQoIkAtaW50ZXJuYWwtYmFzZS1hcHBlYXJhbmNlIl9zKTsKLSAgICBhcHBlbmRDU1NU
ZXh0Rm9ySXRlbXMoYnVpbGRlcik7Ci0gICAgcmV0dXJuIGJ1aWxkZXIudG9TdHJpbmcoKTsKLX0K
LQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ludGVybmFsQmFzZUFwcGVh
cmFuY2VSdWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW50ZXJuYWxCYXNlQXBwZWFyYW5j
ZVJ1bGUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGFjYzkzNjg1NTZkLi4wMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ludGVybmFsQmFzZUFwcGVhcmFu
Y2VSdWxlLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDI0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3By
YWdtYSBvbmNlCi0KLSNpbmNsdWRlICJDU1NHcm91cGluZ1J1bGUuaCIKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1jbGFzcyBTdHlsZVJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlOwotCi1jbGFz
cyBDU1NJbnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVsZSBmaW5hbCA6IHB1YmxpYyBDU1NHcm91cGlu
Z1J1bGUgewotcHVibGljOgotICAgIHN0YXRpYyBSZWY8Q1NTSW50ZXJuYWxCYXNlQXBwZWFyYW5j
ZVJ1bGU+IGNyZWF0ZShTdHlsZVJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlJiBydWxlLCBDU1NT
dHlsZVNoZWV0KiBwYXJlbnQpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBD
U1NJbnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVsZShydWxlLCBwYXJlbnQpKTsKLSAgICB9Ci0KLSAg
ICBTdHJpbmcgY3NzVGV4dCgpIGNvbnN0IGZpbmFsOwotCi1wcml2YXRlOgotICAgIENTU0ludGVy
bmFsQmFzZUFwcGVhcmFuY2VSdWxlKFN0eWxlUnVsZUludGVybmFsQmFzZUFwcGVhcmFuY2UmLCBD
U1NTdHlsZVNoZWV0Kik7Ci0KLSAgICBTdHlsZVJ1bGVUeXBlIHN0eWxlUnVsZVR5cGUoKSBjb25z
dCBmaW5hbCB7IHJldHVybiBTdHlsZVJ1bGVUeXBlOjpJbnRlcm5hbEJhc2VBcHBlYXJhbmNlOyB9
Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLVNQRUNJQUxJWkVfVFlQRV9UUkFJVFNf
Q1NTX1JVTEUoQ1NTSW50ZXJuYWxCYXNlQXBwZWFyYW5jZVJ1bGUsIFN0eWxlUnVsZVR5cGU6Oklu
dGVybmFsQmFzZUFwcGVhcmFuY2UpCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NUaW1pbmdGdW5jdGlvblZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUaW1pbmdG
dW5jdGlvblZhbHVlLmNwcAppbmRleCBmODcwNzE3NDE2ODkuLjgzMmZlODFiMGE2OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1RpbWluZ0Z1bmN0aW9uVmFsdWUuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUaW1pbmdGdW5jdGlvblZhbHVlLmNwcApAQCAtMjYsNyAr
MjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkNTU1RpbWluZ0Z1bmN0aW9u
VmFsdWUuaCIKIAotI2luY2x1ZGUgIkNTU1ByaW1pdGl2ZVZhbHVlLmgiCiAjaW5jbHVkZSA8d3Rm
L3RleHQvTWFrZVN0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4gYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVLZXl3b3Jkcy5pbgppbmRleCA4NzQ4MzU5MTcyYjku
LjU4YTVmOTBlOWIxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5
d29yZHMuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlS2V5d29yZHMuaW4KQEAg
LTkwMyw3ICs5MDMsNyBAQCBhbnl3aGVyZQogCiAvLyAtd2Via2l0LWFwcGVhcmFuY2UKIC8vIFRo
ZSBvcmRlciBoZXJlIG11c3QgbWF0Y2ggdGhlIG9yZGVyIGluIHRoZSBTdHlsZUFwcGVhcmFuY2Ug
ZW51bSBpbiBTdHlsZUFwcGVhcmFuY2UuaC4KLS8vIEFsbCBhcHBlYXJhbmNlIHZhbHVlcyB0aGF0
IHNob3VsZCBiZSBhY2NlcHRlZCBieSB0aGUgcGFyc2VyIHNob3VsZCBiZSBsaXN0ZWQgYmV0d2Vl
biAnYmFzZScgYW5kICd0ZXh0ZmllbGQnOgorLy8gQWxsIGFwcGVhcmFuY2UgdmFsdWVzIHRoYXQg
c2hvdWxkIGJlIGFjY2VwdGVkIGJ5IHRoZSBwYXJzZXIgc2hvdWxkIGJlIGxpc3RlZCBiZXR3ZWVu
ICdiYXNlJyBhbmQgJ3RleHRhcmVhJzoKIGJhc2UKIGNoZWNrYm94CiByYWRpbwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVSdWxlLmNwcAppbmRleCA5MzI4ZjczYjhmNjMuLjQ3MTMzNjk4NzU3ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlUnVsZS5jcHAKQEAgLTI5LDcgKzI5LDYgQEAKICNpbmNsdWRlICJDU1NGb250UGFs
ZXR0ZVZhbHVlc1J1bGUuaCIKICNpbmNsdWRlICJDU1NHcm91cGluZ1J1bGUuaCIKICNpbmNsdWRl
ICJDU1NJbXBvcnRSdWxlLmgiCi0jaW5jbHVkZSAiQ1NTSW50ZXJuYWxCYXNlQXBwZWFyYW5jZVJ1
bGUuaCIKICNpbmNsdWRlICJDU1NLZXlmcmFtZVJ1bGUuaCIKICNpbmNsdWRlICJDU1NLZXlmcmFt
ZXNSdWxlLmgiCiAjaW5jbHVkZSAiQ1NTTGF5ZXJCbG9ja1J1bGUuaCIKQEAgLTEzMSw4ICsxMzAs
NiBAQCB0ZW1wbGF0ZTx0eXBlbmFtZSBWaXNpdG9yPiBjb25zdGV4cHIgZGVjbHR5cGUoYXV0bykg
U3R5bGVSdWxlQmFzZTo6dmlzaXREZXJpdmVkKAogICAgICAgICByZXR1cm4gc3RkOjppbnZva2Uo
c3RkOjpmb3J3YXJkPFZpc2l0b3I+KHZpc2l0b3IpLCB1bmNoZWNrZWREb3duY2FzdDxTdHlsZVJ1
bGVTdGFydGluZ1N0eWxlPigqdGhpcykpOwogICAgIGNhc2UgU3R5bGVSdWxlVHlwZTo6Vmlld1Ry
YW5zaXRpb246CiAgICAgICAgIHJldHVybiBzdGQ6Omludm9rZShzdGQ6OmZvcndhcmQ8VmlzaXRv
cj4odmlzaXRvciksIHVuY2hlY2tlZERvd25jYXN0PFN0eWxlUnVsZVZpZXdUcmFuc2l0aW9uPigq
dGhpcykpOwotICAgIGNhc2UgU3R5bGVSdWxlVHlwZTo6SW50ZXJuYWxCYXNlQXBwZWFyYW5jZToK
LSAgICAgICAgcmV0dXJuIHN0ZDo6aW52b2tlKHN0ZDo6Zm9yd2FyZDxWaXNpdG9yPih2aXNpdG9y
KSwgdW5jaGVja2VkRG93bmNhc3Q8U3R5bGVSdWxlSW50ZXJuYWxCYXNlQXBwZWFyYW5jZT4oKnRo
aXMpKTsKICAgICBjYXNlIFN0eWxlUnVsZVR5cGU6Ok1hcmdpbjoKICAgICAgICAgYnJlYWs7CiAg
ICAgY2FzZSBTdHlsZVJ1bGVUeXBlOjpVbmtub3duOgpAQCAtMjMyLDkgKzIyOSw2IEBAIFJlZjxD
U1NSdWxlPiBTdHlsZVJ1bGVCYXNlOjpjcmVhdGVDU1NPTVdyYXBwZXIoQ1NTU3R5bGVTaGVldCog
cGFyZW50U2hlZXQsIENTU1J1CiAgICAgICAgIFsmXShTdHlsZVJ1bGVWaWV3VHJhbnNpdGlvbiYg
cnVsZSkgLT4gUmVmPENTU1J1bGU+IHsKICAgICAgICAgICAgIHJldHVybiBDU1NWaWV3VHJhbnNp
dGlvblJ1bGU6OmNyZWF0ZShydWxlLCBwYXJlbnRTaGVldCk7CiAgICAgICAgIH0sCi0gICAgICAg
IFsmXShTdHlsZVJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlJiBydWxlKSAtPiBSZWY8Q1NTUnVs
ZT4gewotICAgICAgICAgICAgcmV0dXJuIENTU0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlOjpj
cmVhdGUocnVsZSwgcGFyZW50U2hlZXQpOwotICAgICAgICB9LAogICAgICAgICBbXShTdHlsZVJ1
bGVDaGFyc2V0JikgLT4gUmVmPENTU1J1bGU+IHsKICAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJU
X05PVF9SRUFDSEVEKCk7CiAgICAgICAgIH0sCkBAIC00OTgsMTYgKzQ5Miw2IEBAIFN0eWxlUnVs
ZUZvbnRQYWxldHRlVmFsdWVzOjpTdHlsZVJ1bGVGb250UGFsZXR0ZVZhbHVlcyhjb25zdCBBdG9t
U3RyaW5nJiBuYW1lLCBWCiB7CiB9CiAKLVJlZjxTdHlsZVJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJh
bmNlPiBTdHlsZVJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlOjpjcmVhdGUoVmVjdG9yPFJlZjxT
dHlsZVJ1bGVCYXNlPj4mJiBydWxlcykKLXsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBTdHls
ZVJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlKFdURk1vdmUocnVsZXMpKSk7Ci19Ci0KLVN0eWxl
UnVsZUludGVybmFsQmFzZUFwcGVhcmFuY2U6OlN0eWxlUnVsZUludGVybmFsQmFzZUFwcGVhcmFu
Y2UoVmVjdG9yPFJlZjxTdHlsZVJ1bGVCYXNlPj4mJiBydWxlcykKLSAgICA6IFN0eWxlUnVsZUdy
b3VwKFN0eWxlUnVsZVR5cGU6OkludGVybmFsQmFzZUFwcGVhcmFuY2UsIFdURk1vdmUocnVsZXMp
KQotewotfQotCiBTdHlsZVJ1bGVHcm91cDo6U3R5bGVSdWxlR3JvdXAoU3R5bGVSdWxlVHlwZSB0
eXBlLCBWZWN0b3I8UmVmPFN0eWxlUnVsZUJhc2U+PiYmIHJ1bGVzKQogICAgIDogU3R5bGVSdWxl
QmFzZSh0eXBlKQogICAgICwgbV9jaGlsZFJ1bGVzKFdURk1vdmUocnVsZXMpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUnVsZS5oCmluZGV4IDc5Mjg0MTc4MGQ2OC4uZTY0MGZjOWRiZDUxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSdWxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUnVsZS5oCkBAIC02Myw3ICs2Myw2IEBAIHB1YmxpYzoKICAgICBib29sIGlzRm9udFBhbGV0
dGVWYWx1ZXNSdWxlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFN0eWxlUnVsZVR5cGU6OkZv
bnRQYWxldHRlVmFsdWVzOyB9CiAgICAgYm9vbCBpc0ZvbnRGZWF0dXJlVmFsdWVzUnVsZSgpIGNv
bnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpGb250RmVhdHVyZVZhbHVlczsg
fQogICAgIGJvb2wgaXNGb250RmVhdHVyZVZhbHVlc0Jsb2NrUnVsZSgpIGNvbnN0IHsgcmV0dXJu
IHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpGb250RmVhdHVyZVZhbHVlc0Jsb2NrOyB9Ci0gICAg
Ym9vbCBpc0ludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgp
ID09IFN0eWxlUnVsZVR5cGU6OkludGVybmFsQmFzZUFwcGVhcmFuY2U7IH0KICAgICBib29sIGlz
S2V5ZnJhbWVzUnVsZSgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpL
ZXlmcmFtZXM7IH0KICAgICBib29sIGlzS2V5ZnJhbWVSdWxlKCkgY29uc3QgeyByZXR1cm4gdHlw
ZSgpID09IFN0eWxlUnVsZVR5cGU6OktleWZyYW1lOyB9CiAgICAgYm9vbCBpc05hbWVzcGFjZVJ1
bGUoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gU3R5bGVSdWxlVHlwZTo6TmFtZXNwYWNlOyB9
CkBAIC03Miw3ICs3MSw3IEBAIHB1YmxpYzoKICAgICBib29sIGlzU3R5bGVSdWxlKCkgY29uc3Qg
eyByZXR1cm4gdHlwZSgpID09IFN0eWxlUnVsZVR5cGU6OlN0eWxlIHx8IHR5cGUoKSA9PSBTdHls
ZVJ1bGVUeXBlOjpTdHlsZVdpdGhOZXN0aW5nOyB9CiAgICAgYm9vbCBpc1N0eWxlUnVsZVdpdGhO
ZXN0aW5nKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFN0eWxlUnVsZVR5cGU6OlN0eWxlV2l0
aE5lc3Rpbmc7IH0KICAgICBib29sIGlzTmVzdGVkRGVjbGFyYXRpb25zUnVsZSgpIGNvbnN0IHsg
cmV0dXJuIHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpOZXN0ZWREZWNsYXJhdGlvbnM7IH0KLSAg
ICBib29sIGlzR3JvdXBSdWxlKCkgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IFN0eWxlUnVsZVR5
cGU6Ok1lZGlhIHx8IHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpTdXBwb3J0cyB8fCB0eXBlKCkg
PT0gU3R5bGVSdWxlVHlwZTo6TGF5ZXJCbG9jayB8fCB0eXBlKCkgPT0gU3R5bGVSdWxlVHlwZTo6
Q29udGFpbmVyIHx8IHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpTY29wZSB8fCB0eXBlKCkgPT0g
U3R5bGVSdWxlVHlwZTo6U3RhcnRpbmdTdHlsZSB8fCB0eXBlKCkgPT0gU3R5bGVSdWxlVHlwZTo6
SW50ZXJuYWxCYXNlQXBwZWFyYW5jZTsgfQorICAgIGJvb2wgaXNHcm91cFJ1bGUoKSBjb25zdCB7
IHJldHVybiB0eXBlKCkgPT0gU3R5bGVSdWxlVHlwZTo6TWVkaWEgfHwgdHlwZSgpID09IFN0eWxl
UnVsZVR5cGU6OlN1cHBvcnRzIHx8IHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpMYXllckJsb2Nr
IHx8IHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpDb250YWluZXIgfHwgdHlwZSgpID09IFN0eWxl
UnVsZVR5cGU6OlNjb3BlIHx8IHR5cGUoKSA9PSBTdHlsZVJ1bGVUeXBlOjpTdGFydGluZ1N0eWxl
OyB9CiAgICAgYm9vbCBpc1N1cHBvcnRzUnVsZSgpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBT
dHlsZVJ1bGVUeXBlOjpTdXBwb3J0czsgfQogICAgIGJvb2wgaXNJbXBvcnRSdWxlKCkgY29uc3Qg
eyByZXR1cm4gdHlwZSgpID09IFN0eWxlUnVsZVR5cGU6OkltcG9ydDsgfQogICAgIGJvb2wgaXNM
YXllclJ1bGUoKSBjb25zdCB7IHJldHVybiB0eXBlKCkgPT0gU3R5bGVSdWxlVHlwZTo6TGF5ZXJC
bG9jayB8fCB0eXBlKCkgPT0gU3R5bGVSdWxlVHlwZTo6TGF5ZXJTdGF0ZW1lbnQ7IH0KQEAgLTQ0
NywxNiArNDQ2LDYgQEAgcHJpdmF0ZToKICAgICBTdHlsZVJ1bGVTdGFydGluZ1N0eWxlKGNvbnN0
IFN0eWxlUnVsZVN0YXJ0aW5nU3R5bGUmKSA9IGRlZmF1bHQ7CiB9OwogCi1jbGFzcyBTdHlsZVJ1
bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlIGZpbmFsIDogcHVibGljIFN0eWxlUnVsZUdyb3VwIHsK
LXB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPFN0eWxlUnVsZUludGVybmFsQmFzZUFwcGVhcmFuY2U+
IGNyZWF0ZShWZWN0b3I8UmVmPFN0eWxlUnVsZUJhc2U+PiYmKTsKLSAgICBSZWY8U3R5bGVSdWxl
SW50ZXJuYWxCYXNlQXBwZWFyYW5jZT4gY29weSgpIGNvbnN0IHsgcmV0dXJuIGFkb3B0UmVmKCpu
ZXcgU3R5bGVSdWxlSW50ZXJuYWxCYXNlQXBwZWFyYW5jZSgqdGhpcykpOyB9Ci0KLXByaXZhdGU6
Ci0gICAgU3R5bGVSdWxlSW50ZXJuYWxCYXNlQXBwZWFyYW5jZShWZWN0b3I8UmVmPFN0eWxlUnVs
ZUJhc2U+PiYmKTsKLSAgICBTdHlsZVJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlKGNvbnN0IFN0
eWxlUnVsZUludGVybmFsQmFzZUFwcGVhcmFuY2UmKSA9IGRlZmF1bHQ7Ci19OwotCiAvLyBUaGlz
IGlzIG9ubHkgdXNlZCBieSB0aGUgQ1NTIHBhcnNlci4KIGNsYXNzIFN0eWxlUnVsZUNoYXJzZXQg
ZmluYWwgOiBwdWJsaWMgU3R5bGVSdWxlQmFzZSB7CiBwdWJsaWM6CkBAIC02MDcsNyArNTk2LDMg
QEAgU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQogU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19C
RUdJTihXZWJDb3JlOjpTdHlsZVJ1bGVTdGFydGluZ1N0eWxlKQogICAgIHN0YXRpYyBib29sIGlz
VHlwZShjb25zdCBXZWJDb3JlOjpTdHlsZVJ1bGVCYXNlJiBydWxlKSB7IHJldHVybiBydWxlLmlz
U3RhcnRpbmdTdHlsZVJ1bGUoKTsgfQogU1BFQ0lBTElaRV9UWVBFX1RSQUlUU19FTkQoKQotCi1T
UEVDSUFMSVpFX1RZUEVfVFJBSVRTX0JFR0lOKFdlYkNvcmU6OlN0eWxlUnVsZUludGVybmFsQmFz
ZUFwcGVhcmFuY2UpCi0gICAgc3RhdGljIGJvb2wgaXNUeXBlKGNvbnN0IFdlYkNvcmU6OlN0eWxl
UnVsZUJhc2UmIHJ1bGUpIHsgcmV0dXJuIHJ1bGUuaXNJbnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVs
ZSgpOyB9Ci1TUEVDSUFMSVpFX1RZUEVfVFJBSVRTX0VORCgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvU3R5bGVSdWxlVHlwZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVs
ZVR5cGUuaAppbmRleCAwYTZiZTNhMTBjYmEuLjBkYmQxMGM4ZDMxMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlUnVsZVR5cGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVSdWxlVHlwZS5oCkBAIC01NSw4ICs1NSw3IEBAIGVudW0gY2xhc3MgU3R5bGVSdWxlVHlw
ZSA6IHVpbnQ4X3QgewogICAgIFN0eWxlV2l0aE5lc3RpbmcsCiAgICAgU2NvcGUsCiAgICAgU3Rh
cnRpbmdTdHlsZSwKLSAgICBOZXN0ZWREZWNsYXJhdGlvbnMsCi0gICAgSW50ZXJuYWxCYXNlQXBw
ZWFyYW5jZSwgLy8gRm9yIFVBIHN0eWxlc2hlZXRzIG9ubHkuCisgICAgTmVzdGVkRGVjbGFyYXRp
b25zCiB9OwogCiBzdGF0aWMgY29uc3RleHByIGF1dG8gZmlyc3RVbmV4cG9zZWRTdHlsZVJ1bGVU
eXBlID0gU3R5bGVSdWxlVHlwZTo6Vmlld1RyYW5zaXRpb247CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVNoZWV0Q29udGVudHMuY3BwCmluZGV4IDJlMjdiNWNlYTU3OC4uNmRlNzJkNjcwNThmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVTaGVldENvbnRlbnRzLmNwcApAQCAtNTg0LDcgKzU4
NCw2IEBAIGJvb2wgU3R5bGVTaGVldENvbnRlbnRzOjp0cmF2ZXJzZVN1YnJlc291cmNlcyhjb25z
dCBGdW5jdGlvbjxib29sKGNvbnN0IENhY2hlZFJlCiAgICAgICAgIGNhc2UgU3R5bGVSdWxlVHlw
ZTo6U2NvcGU6CiAgICAgICAgIGNhc2UgU3R5bGVSdWxlVHlwZTo6U3RhcnRpbmdTdHlsZToKICAg
ICAgICAgY2FzZSBTdHlsZVJ1bGVUeXBlOjpWaWV3VHJhbnNpdGlvbjoKLSAgICAgICAgY2FzZSBT
dHlsZVJ1bGVUeXBlOjpJbnRlcm5hbEJhc2VBcHBlYXJhbmNlOgogICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgICAgICB9OwogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKQEAgLTY2
MCw3ICs2NTksNiBAQCBib29sIFN0eWxlU2hlZXRDb250ZW50czo6bWF5RGVwZW5kT25CYXNlVVJM
KCkgY29uc3QKICAgICAgICAgY2FzZSBTdHlsZVJ1bGVUeXBlOjpTY29wZToKICAgICAgICAgY2Fz
ZSBTdHlsZVJ1bGVUeXBlOjpTdGFydGluZ1N0eWxlOgogICAgICAgICBjYXNlIFN0eWxlUnVsZVR5
cGU6OlZpZXdUcmFuc2l0aW9uOgotICAgICAgICBjYXNlIFN0eWxlUnVsZVR5cGU6OkludGVybmFs
QmFzZUFwcGVhcmFuY2U6CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH07CiAg
ICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Y3NzL2h0bWwuY3NzIGIvU291cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzCmluZGV4IGM0ZTQxMjBh
ZmY4OC4uOTNmMjdkMTc0NzFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvaHRtbC5j
c3MKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL2h0bWwuY3NzCkBAIC0xNDkyLDUxICsxNDkyLDMg
QEAgaW5zLCBkZWwgewogOnJvb3Q6bGFuZyh6aCksIFtsYW5nfD16aF0gewogICAgIHRleHQtdW5k
ZXJsaW5lLXBvc2l0aW9uOiBsZWZ0OwogfQotCi0vKiBGb3JtIGNvbnRyb2wgYmFzZSBhcHBlYXJh
bmNlIChUQkQpICovCi0KLUAtaW50ZXJuYWwtYmFzZS1hcHBlYXJhbmNlIHsKLSAgICBpbnB1dCwK
LSAgICB0ZXh0YXJlYSB7Ci0gICAgICBhcHBlYXJhbmNlOiBub25lOwotICAgICAgYm9yZGVyOiAx
cHggc29saWQgY3VycmVudENvbG9yOwotICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJl
bnQ7Ci0gICAgICBjb2xvcjogaW5oZXJpdDsKLSAgICAgIGZvbnQ6IGluaGVyaXQ7Ci0gICAgICBw
YWRkaW5nOiAwLjI1ZW07Ci0gICAgfQotICAKLSAgICA6OnBsYWNlaG9sZGVyIHsKLSAgICAgIGNv
bG9yOiBjb2xvci1taXgoaW4gbGFiLCBjdXJyZW50Q29sb3IgNTAlLCB0cmFuc3BhcmVudCk7Ci0g
ICAgfQotICAKLSAgICBpbnB1dFt0eXBlPWJ1dHRvbl0sCi0gICAgaW5wdXRbdHlwZT1zdWJtaXRd
LAotICAgIGlucHV0W3R5cGU9cmVzZXRdLAotICAgIGJ1dHRvbiB7Ci0gICAgICBib3JkZXI6IDFw
eCBzb2xpZCBjdXJyZW50Q29sb3I7Ci0gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgo
aW4gbGFiLCBjdXJyZW50Q29sb3IgMTAlLCB0cmFuc3BhcmVudCk7Ci0gICAgICBjb2xvcjogaW5o
ZXJpdDsKLSAgICAgIGZvbnQ6IGluaGVyaXQ7Ci0gICAgICBwYWRkaW5nOiAwLjI1ZW0gLjVlbTsK
LSAgICAgIHRleHQtYm94OiB0cmltLWJvdGg7Ci0gICAgfQotICAKLSAgICA6aXMoCi0gICAgICBp
bnB1dFt0eXBlPWJ1dHRvbl0sCi0gICAgICBpbnB1dFt0eXBlPXN1Ym1pdF0sCi0gICAgICBpbnB1
dFt0eXBlPXJlc2V0XSwKLSAgICAgIGJ1dHRvbgotICAgICk6ZW5hYmxlZDpob3ZlciAgewotICAg
ICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItbWl4KGluIGxhYiwgY3VycmVudENvbG9yIDIwJSwg
dHJhbnNwYXJlbnQpOwotICAgIH0KLSAgCi0gICAgOmlzKAotICAgICAgaW5wdXRbdHlwZT1idXR0
b25dLAotICAgICAgaW5wdXRbdHlwZT1zdWJtaXRdLAotICAgICAgaW5wdXRbdHlwZT1yZXNldF0s
Ci0gICAgICBidXR0b24KLSAgICApOmVuYWJsZWQ6aG92ZXI6YWN0aXZlICB7Ci0gICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gbGFiLCBjdXJyZW50Q29sb3IgMzAlLCB0cmFuc3Bh
cmVudCk7Ci0gICAgfQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9D
U1NBdFJ1bGVJRC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU0F0UnVsZUlELmNw
cAppbmRleCA1YTgyZjhiMmQ1YTUuLmU1OTE2N2Y1NzQ3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL3BhcnNlci9DU1NBdFJ1bGVJRC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3Nz
L3BhcnNlci9DU1NBdFJ1bGVJRC5jcHAKQEAgLTM3LDcgKzM3LDYgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogQ1NTQXRSdWxlSUQgY3NzQXRSdWxlSUQoU3RyaW5nVmlldyBuYW1lKQogewogICAgIHN0
YXRpYyBjb25zdGV4cHIgc3RkOjpwYWlyPENvbXBhcmFibGVMZXR0ZXJzTGl0ZXJhbCwgQ1NTQXRS
dWxlSUQ+IG1hcHBpbmdzW10gPSB7Ci0gICAgICAgIHsgIi1pbnRlcm5hbC1iYXNlLWFwcGVhcmFu
Y2UiLCBDU1NBdFJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlIH0sCiAgICAgICAgIHsgIi13ZWJr
aXQta2V5ZnJhbWVzIiwgICAgIENTU0F0UnVsZVdlYmtpdEtleWZyYW1lcyB9LAogICAgICAgICB7
ICJhbm5vdGF0aW9uIiwgICAgICAgICAgICBDU1NBdFJ1bGVBbm5vdGF0aW9uIH0sCiAgICAgICAg
IHsgImNoYXJhY3Rlci12YXJpYW50IiwgICAgIENTU0F0UnVsZUNoYXJhY3RlclZhcmlhbnQgfSwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTQXRSdWxlSUQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTQXRSdWxlSUQuaAppbmRleCA4MjYwNzIwNTdiOTku
LjQyMzA1Y2RlNjliZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NB
dFJ1bGVJRC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTQXRSdWxlSUQuaApA
QCAtNDYsNyArNDYsNiBAQCBlbnVtIENTU0F0UnVsZUlEIHsKICAgICBDU1NBdFJ1bGVTdXBwb3J0
cywKICAgICBDU1NBdFJ1bGVWaWV3VHJhbnNpdGlvbiwKIAotICAgIENTU0F0UnVsZUludGVybmFs
QmFzZUFwcGVhcmFuY2UsCiAgICAgQ1NTQXRSdWxlV2Via2l0S2V5ZnJhbWVzLAogICAgIENTU0F0
UnVsZUNvdW50ZXJTdHlsZSwKICAgICBDU1NBdFJ1bGVMYXllciwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1wbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvcGFyc2VyL0NTU1BhcnNlckltcGwuY3BwCmluZGV4IDQxMTZjMWUwNmYyMi4uNWM2NjgzMGU2
MWZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2VySW1wbC5jcHAKQEAg
LTQ4NCw4ICs0ODQsNiBAQCBSZWZQdHI8U3R5bGVSdWxlQmFzZT4gQ1NTUGFyc2VySW1wbDo6Y29u
c3VtZUF0UnVsZShDU1NQYXJzZXJUb2tlblJhbmdlJiByYW5nZSwgQQogICAgICAgICByZXR1cm4g
Y29uc3VtZVN0YXJ0aW5nU3R5bGVSdWxlKHByZWx1ZGUsIGJsb2NrKTsKICAgICBjYXNlIENTU0F0
UnVsZVZpZXdUcmFuc2l0aW9uOgogICAgICAgICByZXR1cm4gY29uc3VtZVZpZXdUcmFuc2l0aW9u
UnVsZShwcmVsdWRlLCBibG9jayk7Ci0gICAgY2FzZSBDU1NBdFJ1bGVJbnRlcm5hbEJhc2VBcHBl
YXJhbmNlOgotICAgICAgICByZXR1cm4gY29uc3VtZUludGVybmFsQmFzZUFwcGVhcmFuY2VSdWxl
KHByZWx1ZGUsIGJsb2NrKTsKICAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gbnVsbHB0cjsg
Ly8gUGFyc2UgZXJyb3IsIHVucmVjb2duaXNlZCBhdC1ydWxlIHdpdGggYmxvY2sKICAgICB9CkBA
IC0xMTc1LDI4ICsxMTczLDYgQEAgUmVmUHRyPFN0eWxlUnVsZVN0YXJ0aW5nU3R5bGU+IENTU1Bh
cnNlckltcGw6OmNvbnN1bWVTdGFydGluZ1N0eWxlUnVsZShDU1NQYXJzZXIKICAgICByZXR1cm4g
U3R5bGVSdWxlU3RhcnRpbmdTdHlsZTo6Y3JlYXRlKFdURk1vdmUocnVsZXMpKTsKIH0KIAotUmVm
UHRyPFN0eWxlUnVsZUludGVybmFsQmFzZUFwcGVhcmFuY2U+IENTU1BhcnNlckltcGw6OmNvbnN1
bWVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVsZShDU1NQYXJzZXJUb2tlblJhbmdlIHByZWx1ZGUs
IENTU1BhcnNlclRva2VuUmFuZ2UgYmxvY2spCi17Ci0gICAgaWYgKG1fY29udGV4dC5tb2RlICE9
IFVBU2hlZXRNb2RlKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLQotICAgIGlmICghcHJlbHVk
ZS5hdEVuZCgpKQotICAgICAgICByZXR1cm4gbnVsbHB0cjsKLQotICAgIGlmIChtX29ic2VydmVy
V3JhcHBlcikgewotICAgICAgICBtX29ic2VydmVyV3JhcHBlci0+b2JzZXJ2ZXIoKS5zdGFydFJ1
bGVIZWFkZXIoU3R5bGVSdWxlVHlwZTo6SW50ZXJuYWxCYXNlQXBwZWFyYW5jZSwgbV9vYnNlcnZl
cldyYXBwZXItPnN0YXJ0T2Zmc2V0KHByZWx1ZGUpKTsKLSAgICAgICAgbV9vYnNlcnZlcldyYXBw
ZXItPm9ic2VydmVyKCkuZW5kUnVsZUhlYWRlcihtX29ic2VydmVyV3JhcHBlci0+ZW5kT2Zmc2V0
KHByZWx1ZGUpKTsKLSAgICAgICAgbV9vYnNlcnZlcldyYXBwZXItPm9ic2VydmVyKCkuc3RhcnRS
dWxlQm9keShtX29ic2VydmVyV3JhcHBlci0+cHJldmlvdXNUb2tlblN0YXJ0T2Zmc2V0KGJsb2Nr
KSk7Ci0gICAgfQotCi0gICAgYXV0byBydWxlcyA9IGNvbnN1bWVOZXN0ZWRHcm91cFJ1bGVzKGJs
b2NrKTsKLQotICAgIGlmIChtX29ic2VydmVyV3JhcHBlcikKLSAgICAgICAgbV9vYnNlcnZlcldy
YXBwZXItPm9ic2VydmVyKCkuZW5kUnVsZUJvZHkobV9vYnNlcnZlcldyYXBwZXItPmVuZE9mZnNl
dChibG9jaykpOwotCi0gICAgcmV0dXJuIFN0eWxlUnVsZUludGVybmFsQmFzZUFwcGVhcmFuY2U6
OmNyZWF0ZShXVEZNb3ZlKHJ1bGVzKSk7Ci19Ci0KIFJlZlB0cjxTdHlsZVJ1bGVMYXllcj4gQ1NT
UGFyc2VySW1wbDo6Y29uc3VtZUxheWVyUnVsZShDU1NQYXJzZXJUb2tlblJhbmdlIHByZWx1ZGUs
IHN0ZDo6b3B0aW9uYWw8Q1NTUGFyc2VyVG9rZW5SYW5nZT4gYmxvY2spCiB7CiAgICAgYXV0byBw
cmVsdWRlQ29weSA9IHByZWx1ZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFy
c2VyL0NTU1BhcnNlckltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2Vy
SW1wbC5oCmluZGV4IDViNGFjMDkyMzNiYi4uOTFiN2NiMjBhYzM4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvcGFyc2VyL0NTU1BhcnNlckltcGwuaApAQCAtNjQsNyArNjQsNiBAQCBjbGFzcyBTdHls
ZVJ1bGVQYWdlOwogY2xhc3MgU3R5bGVSdWxlU3VwcG9ydHM7CiBjbGFzcyBTdHlsZVJ1bGVWaWV3
cG9ydDsKIGNsYXNzIFN0eWxlUnVsZVZpZXdUcmFuc2l0aW9uOwotY2xhc3MgU3R5bGVSdWxlSW50
ZXJuYWxCYXNlQXBwZWFyYW5jZTsKIGNsYXNzIFN0eWxlU2hlZXRDb250ZW50czsKIGNsYXNzIElt
bXV0YWJsZVN0eWxlUHJvcGVydGllczsKIGNsYXNzIEVsZW1lbnQ7CkBAIC0xNjYsNyArMTY1LDYg
QEAgcHJpdmF0ZToKICAgICBSZWZQdHI8U3R5bGVSdWxlU2NvcGU+IGNvbnN1bWVTY29wZVJ1bGUo
Q1NTUGFyc2VyVG9rZW5SYW5nZSBwcmVsdWRlLCBDU1NQYXJzZXJUb2tlblJhbmdlIGJsb2NrKTsK
ICAgICBSZWZQdHI8U3R5bGVSdWxlU3RhcnRpbmdTdHlsZT4gY29uc3VtZVN0YXJ0aW5nU3R5bGVS
dWxlKENTU1BhcnNlclRva2VuUmFuZ2UgcHJlbHVkZSwgQ1NTUGFyc2VyVG9rZW5SYW5nZSBibG9j
ayk7CiAgICAgUmVmUHRyPFN0eWxlUnVsZVZpZXdUcmFuc2l0aW9uPiBjb25zdW1lVmlld1RyYW5z
aXRpb25SdWxlKENTU1BhcnNlclRva2VuUmFuZ2UgcHJlbHVkZSwgQ1NTUGFyc2VyVG9rZW5SYW5n
ZSBibG9jayk7Ci0gICAgUmVmUHRyPFN0eWxlUnVsZUludGVybmFsQmFzZUFwcGVhcmFuY2U+IGNv
bnN1bWVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlUnVsZShDU1NQYXJzZXJUb2tlblJhbmdlIHByZWx1
ZGUsIENTU1BhcnNlclRva2VuUmFuZ2UgYmxvY2spOwogCiAgICAgUmVmUHRyPFN0eWxlUnVsZUtl
eWZyYW1lPiBjb25zdW1lS2V5ZnJhbWVTdHlsZVJ1bGUoQ1NTUGFyc2VyVG9rZW5SYW5nZSBwcmVs
dWRlLCBDU1NQYXJzZXJUb2tlblJhbmdlIGJsb2NrKTsKICAgICBSZWZQdHI8U3R5bGVSdWxlQmFz
ZT4gY29uc3VtZVN0eWxlUnVsZShDU1NQYXJzZXJUb2tlblJhbmdlIHByZWx1ZGUsIENTU1BhcnNl
clRva2VuUmFuZ2UgYmxvY2spOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNl
ci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1By
b3BlcnR5UGFyc2VyLmNwcAppbmRleCA0MWZhYmU4YTRmYTEuLmY4ZDU3MzA4ZjJkYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0eVBhcnNlci5jcHAKQEAgLTI0
Miw5ICsyNDIsNiBAQCBib29sIENTU1Byb3BlcnR5UGFyc2VyOjpwYXJzZVZhbHVlKENTU1Byb3Bl
cnR5SUQgcHJvcGVydHlJRCwgYm9vbCBpbXBvcnRhbnQsIGNvbgogICAgIGNhc2UgU3R5bGVSdWxl
VHlwZTo6Vmlld1RyYW5zaXRpb246CiAgICAgICAgIHBhcnNlU3VjY2VzcyA9IHBhcnNlci5wYXJz
ZVZpZXdUcmFuc2l0aW9uRGVzY3JpcHRvcihwcm9wZXJ0eUlEKTsKICAgICAgICAgYnJlYWs7Ci0g
ICAgY2FzZSBTdHlsZVJ1bGVUeXBlOjpJbnRlcm5hbEJhc2VBcHBlYXJhbmNlOgotICAgICAgICBw
YXJzZVN1Y2Nlc3MgPSBwYXJzZXIucGFyc2VJbnRlcm5hbEJhc2VBcHBlYXJhbmNlRGVzY3JpcHRv
cihwcm9wZXJ0eUlELCBpbXBvcnRhbnQpOwotICAgICAgICBicmVhazsKICAgICBkZWZhdWx0Ogog
ICAgICAgICBwYXJzZVN1Y2Nlc3MgPSBwYXJzZXIucGFyc2VWYWx1ZVN0YXJ0KHByb3BlcnR5SUQs
IGltcG9ydGFudCk7CiAgICAgICAgIGJyZWFrOwpAQCAtNjc0LDE2ICs2NzEsNiBAQCBib29sIENT
U1Byb3BlcnR5UGFyc2VyOjpwYXJzZVBhZ2VEZXNjcmlwdG9yKENTU1Byb3BlcnR5SUQgcHJvcGVy
dHksIGJvb2wgaW1wb3J0YQogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIENTU1Byb3BlcnR5
UGFyc2VyOjpwYXJzZUludGVybmFsQmFzZUFwcGVhcmFuY2VEZXNjcmlwdG9yKENTU1Byb3BlcnR5
SUQgcHJvcGVydHksIGJvb2wgaW1wb3J0YW50KQotewotICAgIEFTU0VSVChtX2NvbnRleHQubW9k
ZSA9PSBVQVNoZWV0TW9kZSk7Ci0KLSAgICBpZiAocHJvcGVydHkgPT0gQ1NTUHJvcGVydHlBcHBl
YXJhbmNlKQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICByZXR1cm4gcGFyc2VWYWx1ZVN0
YXJ0KHByb3BlcnR5LCBpbXBvcnRhbnQpOwotfQotCiBib29sIENTU1Byb3BlcnR5UGFyc2VyOjpj
b25zdW1lRm9udChib29sIGltcG9ydGFudCkKIHsKICAgICBpZiAoQ1NTUHJvcGVydHlQYXJzZXJI
ZWxwZXJzOjppc1N5c3RlbUZvbnRTaG9ydGhhbmQobV9yYW5nZS5wZWVrKCkuaWQoKSkpIHsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUHJvcGVydHlQYXJzZXIuaAppbmRleCAxNTli
MDYxMzY5NTguLjQ1MTMwNTYxN2MxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3Bh
cnNlci9DU1NQcm9wZXJ0eVBhcnNlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIv
Q1NTUHJvcGVydHlQYXJzZXIuaApAQCAtOTMsOSArOTMsNiBAQCBwcml2YXRlOgogICAgIC8vIEB2
aWV3LXRyYW5zaXRpb24gZGVzY3JpcHRvcnMuCiAgICAgYm9vbCBwYXJzZVZpZXdUcmFuc2l0aW9u
RGVzY3JpcHRvcihDU1NQcm9wZXJ0eUlEKTsKIAotICAgIC8vIEAtaW50ZXJuYWwtYmFzZS1hcHBl
YXJhbmNlIGRlc2NyaXB0b3JzLgotICAgIGJvb2wgcGFyc2VJbnRlcm5hbEJhc2VBcHBlYXJhbmNl
RGVzY3JpcHRvcihDU1NQcm9wZXJ0eUlELCBib29sIGltcG9ydGFudCk7Ci0KICAgICB2b2lkIGFk
ZFByb3BlcnR5KENTU1Byb3BlcnR5SUQgbG9uZ2hhbmQsIENTU1Byb3BlcnR5SUQgc2hvcnRoYW5k
LCBSZWZQdHI8Q1NTVmFsdWU+JiYsIGJvb2wgaW1wb3J0YW50LCBib29sIGltcGxpY2l0ID0gZmFs
c2UpOwogICAgIHZvaWQgYWRkRXhwYW5kZWRQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHNob3J0aGFu
ZCwgUmVmUHRyPENTU1ZhbHVlPiYmLCBib29sIGltcG9ydGFudCwgYm9vbCBpbXBsaWNpdCA9IGZh
bHNlKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0
eWxlU2hlZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hl
ZXQuY3BwCmluZGV4IGIxM2M2Y2Y5OTMxMy4uZTdhYzJlMmIxZTcxIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuY3BwCkBAIC05NCw3ICs5NCw2
IEBAIHN0YXRpYyBSdWxlRmxhdHRlbmluZ1N0cmF0ZWd5IGZsYXR0ZW5pbmdTdHJhdGVneUZvclN0
eWxlUnVsZVR5cGUoU3R5bGVSdWxlVHlwZSBzCiAgICAgY2FzZSBTdHlsZVJ1bGVUeXBlOjpMYXll
ckJsb2NrOgogICAgIGNhc2UgU3R5bGVSdWxlVHlwZTo6Q29udGFpbmVyOgogICAgIGNhc2UgU3R5
bGVSdWxlVHlwZTo6U3RhcnRpbmdTdHlsZToKLSAgICBjYXNlIFN0eWxlUnVsZVR5cGU6OkludGVy
bmFsQmFzZUFwcGVhcmFuY2U6CiAgICAgICAgIC8vIFRoZXNlIHJ1bGVzIE1VU1QgYmUgaGFuZGxl
ZCBieSB0aGUgc3RhdGljIGBpc1ZhbGlkUnVsZUhlYWRlclRleHRgLCBgcHJvdG9jb2xHcm91cGlu
Z1R5cGVGb3JTdHlsZVJ1bGVUeXBlYCwKICAgICAgICAgLy8gYW5kIGBhc0NTU1J1bGVMaXN0YCBp
biBvcmRlciB0byBwcm92aWRlIGZ1bmN0aW9uYWxpdHkgaW4gV2ViIEluc3BlY3Rvci4gQWRkaXRp
b25hbGx5LCB0aGV5IE1VU1QgaGF2ZSBhIENTU09NCiAgICAgICAgIC8vIHJlcHJlc2VudGF0aW9u
IGNyZWF0ZWQgaW4gYFN0eWxlUnVsZUJhc2U6OmNyZWF0ZUNTU09NV3JhcHBlcmAsIG90aGVyd2lz
ZSB3ZSB3aWxsIGVuZCB1cCB3aXRoIGEgbWlzbWF0Y2hlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5
bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3BwCmluZGV4IGQyN2RjNDNkZWQ0Ni4uNzdjOGU4NzZm
YmY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9FbGVtZW50UnVsZUNvbGxlY3Rv
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvRWxlbWVudFJ1bGVDb2xsZWN0b3IuY3Bw
CkBAIC0yNzYsNyArMjc2LDcgQEAgdm9pZCBFbGVtZW50UnVsZUNvbGxlY3Rvcjo6dHJhbnNmZXJN
YXRjaGVkUnVsZXMoRGVjbGFyYXRpb25PcmlnaW4gZGVjbGFyYXRpb25PcmkKICAgICAgICAgICAg
IG1hdGNoZWRSdWxlLnN0eWxlU2NvcGVPcmRpbmFsLAogICAgICAgICAgICAgRnJvbVN0eWxlQXR0
cmlidXRlOjpObywKICAgICAgICAgICAgIG1hdGNoZWRSdWxlLmNhc2NhZGVMYXllclByaW9yaXR5
LAotICAgICAgICAgICAgbWF0Y2hlZFJ1bGUucnVsZURhdGEtPmF0UnVsZVR5cGVzKCksCisgICAg
ICAgICAgICBtYXRjaGVkUnVsZS5ydWxlRGF0YS0+aXNTdGFydGluZ1N0eWxlKCkKICAgICAgICAg
fSwgZGVjbGFyYXRpb25PcmlnaW4pOwogICAgIH0KIH0KQEAgLTg4MSwxMSArODgxLDggQEAgdm9p
ZCBFbGVtZW50UnVsZUNvbGxlY3Rvcjo6YWRkTWF0Y2hlZFByb3BlcnRpZXMoTWF0Y2hlZFByb3Bl
cnRpZXMmJiBtYXRjaGVkUHJvcGUKICAgICAgICAgLy8gSXQgbWlnaHQgYWxzbyBiZSBiZW5lZmlj
aWFsIHRvIG92ZXJ3cml0ZSB0aGUgcHJldmlvdXMgZGVjbGFyYXRpb24gKGluc3RlYWRpbmcgb2Yg
YXBwZW5kaW5nKSBpZiBpdCBhZmZlY3RzIHRoZSBzYW1lIGV4YWN0IHByb3BlcnRpZXMuCiAgICAg
ICAgIHJldHVybjsKICAgICB9Ci0gICAgaWYgKG1hdGNoZWRQcm9wZXJ0aWVzLmF0UnVsZVR5cGVz
LmNvbnRhaW5zKEF0UnVsZVR5cGU6OlN0YXJ0aW5nU3R5bGUpKQotICAgICAgICBtX3Jlc3VsdC0+
YXRSdWxlVHlwZXMuYWRkKEF0UnVsZVR5cGU6OlN0YXJ0aW5nU3R5bGUpOwotCi0gICAgaWYgKG1h
dGNoZWRQcm9wZXJ0aWVzLmF0UnVsZVR5cGVzLmNvbnRhaW5zKEF0UnVsZVR5cGU6OkJhc2VBcHBl
YXJhbmNlKSkKLSAgICAgICAgbV9yZXN1bHQtPmF0UnVsZVR5cGVzLmFkZChBdFJ1bGVUeXBlOjpC
YXNlQXBwZWFyYW5jZSk7CisgICAgaWYgKG1hdGNoZWRQcm9wZXJ0aWVzLmlzU3RhcnRpbmdTdHls
ZSA9PSBJc1N0YXJ0aW5nU3R5bGU6OlllcykKKyAgICAgICAgbV9yZXN1bHQtPmhhc1N0YXJ0aW5n
U3R5bGUgPSB0cnVlOwogCiAgICAgaWYgKG1hdGNoZWRQcm9wZXJ0aWVzLmlzQ2FjaGVhYmxlID09
IElzQ2FjaGVhYmxlOjpQYXJ0aWFsbHkgJiYgIW1fcmVzdWx0LT5pc0NvbXBsZXRlbHlOb25DYWNo
ZWFibGUpIHsKICAgICAgICAgZm9yIChhdXRvIHByb3BlcnR5IDogbWF0Y2hlZFByb3BlcnRpZXMu
cHJvcGVydGllcy5nZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL01hdGNo
UmVzdWx0LmggYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9NYXRjaFJlc3VsdC5oCmluZGV4IGVkODZi
ODE0YjA4Zi4uMDg4OTk1MjJiMTg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9N
YXRjaFJlc3VsdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL01hdGNoUmVzdWx0LmgKQEAg
LTQzLDcgKzQzLDcgQEAgc3RydWN0IE1hdGNoZWRQcm9wZXJ0aWVzIHsKICAgICBTY29wZU9yZGlu
YWwgc3R5bGVTY29wZU9yZGluYWwgeyBTY29wZU9yZGluYWw6OkVsZW1lbnQgfTsKICAgICBGcm9t
U3R5bGVBdHRyaWJ1dGUgZnJvbVN0eWxlQXR0cmlidXRlIHsgRnJvbVN0eWxlQXR0cmlidXRlOjpO
byB9OwogICAgIENhc2NhZGVMYXllclByaW9yaXR5IGNhc2NhZGVMYXllclByaW9yaXR5IHsgUnVs
ZVNldDo6Y2FzY2FkZUxheWVyUHJpb3JpdHlGb3JVbmxheWVyZWQgfTsKLSAgICBPcHRpb25TZXQ8
QXRSdWxlVHlwZT4gYXRSdWxlVHlwZXMgeyB9OworICAgIElzU3RhcnRpbmdTdHlsZSBpc1N0YXJ0
aW5nU3R5bGUgeyBJc1N0YXJ0aW5nU3R5bGU6Ok5vIH07CiAgICAgSXNDYWNoZWFibGUgaXNDYWNo
ZWFibGUgeyBJc0NhY2hlYWJsZTo6WWVzIH07CiB9OwogCkBAIC01NSw3ICs1NSw3IEBAIHN0cnVj
dCBNYXRjaFJlc3VsdCB7CiAKICAgICBib29sIGlzRm9yTGluayB7IGZhbHNlIH07CiAgICAgYm9v
bCBpc0NvbXBsZXRlbHlOb25DYWNoZWFibGUgeyBmYWxzZSB9OwotICAgIE9wdGlvblNldDxBdFJ1
bGVUeXBlPiBhdFJ1bGVUeXBlcyB7IH07CisgICAgYm9vbCBoYXNTdGFydGluZ1N0eWxlIHsgZmFs
c2UgfTsKICAgICBWZWN0b3I8TWF0Y2hlZFByb3BlcnRpZXM+IHVzZXJBZ2VudERlY2xhcmF0aW9u
czsKICAgICBWZWN0b3I8TWF0Y2hlZFByb3BlcnRpZXM+IHVzZXJEZWNsYXJhdGlvbnM7CiAgICAg
VmVjdG9yPE1hdGNoZWRQcm9wZXJ0aWVzPiBhdXRob3JEZWNsYXJhdGlvbnM7CkBAIC03NSwxMyAr
NzUsMTMgQEAgaW5saW5lIGJvb2wgb3BlcmF0b3I9PShjb25zdCBNYXRjaGVkUHJvcGVydGllcyYg
YSwgY29uc3QgTWF0Y2hlZFByb3BlcnRpZXMmIGIpCiAgICAgICAgICYmIGEuc3R5bGVTY29wZU9y
ZGluYWwgPT0gYi5zdHlsZVNjb3BlT3JkaW5hbAogICAgICAgICAmJiBhLmZyb21TdHlsZUF0dHJp
YnV0ZSA9PSBiLmZyb21TdHlsZUF0dHJpYnV0ZQogICAgICAgICAmJiBhLmNhc2NhZGVMYXllclBy
aW9yaXR5ID09IGIuY2FzY2FkZUxheWVyUHJpb3JpdHkKLSAgICAgICAgJiYgYS5hdFJ1bGVUeXBl
cyA9PSBiLmF0UnVsZVR5cGVzCisgICAgICAgICYmIGEuaXNTdGFydGluZ1N0eWxlID09IGIuaXNT
dGFydGluZ1N0eWxlCiAgICAgICAgICYmIGEuaXNDYWNoZWFibGUgPT0gYi5pc0NhY2hlYWJsZTsK
IH0KIAogaW5saW5lIGJvb2wgTWF0Y2hSZXN1bHQ6OmNhY2hlYWJsZVByb3BlcnRpZXNFcXVhbChj
b25zdCBNYXRjaFJlc3VsdCYgb3RoZXIpIGNvbnN0CiB7Ci0gICAgaWYgKGlzRm9yTGluayAhPSBv
dGhlci5pc0ZvckxpbmsgfHwgYXRSdWxlVHlwZXMgIT0gb3RoZXIuYXRSdWxlVHlwZXMpCisgICAg
aWYgKGlzRm9yTGluayAhPSBvdGhlci5pc0ZvckxpbmsgfHwgaGFzU3RhcnRpbmdTdHlsZSAhPSBv
dGhlci5oYXNTdGFydGluZ1N0eWxlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICAvLyBP
bmx5IGF1dGhvciBzdHlsZSBjYW4gYmUgbm9uLWNhY2hlYWJsZS4KQEAgLTEyMyw3ICsxMjMsNyBA
QCBpbmxpbmUgdm9pZCBhZGQoSGFzaGVyJiBoYXNoZXIsIGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVz
JiBtYXRjaGVkUHJvcGVydGllcykKICAgICAgICAgbWF0Y2hlZFByb3BlcnRpZXMuc3R5bGVTY29w
ZU9yZGluYWwsCiAgICAgICAgIG1hdGNoZWRQcm9wZXJ0aWVzLmZyb21TdHlsZUF0dHJpYnV0ZSwK
ICAgICAgICAgbWF0Y2hlZFByb3BlcnRpZXMuY2FzY2FkZUxheWVyUHJpb3JpdHksCi0gICAgICAg
IG1hdGNoZWRQcm9wZXJ0aWVzLmF0UnVsZVR5cGVzCisgICAgICAgIG1hdGNoZWRQcm9wZXJ0aWVz
LmlzU3RhcnRpbmdTdHlsZQogICAgICk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0
eUNhc2NhZGUuY3BwCmluZGV4IDUzZDVkNjYwODE3Yi4uOWM2NzQ2NWU5Y2FmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9Qcm9wZXJ0eUNhc2NhZGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2FkZS5jcHAKQEAgLTE5NiwxMCArMTk2LDcgQEAgYm9v
bCBQcm9wZXJ0eUNhc2NhZGU6OmFkZE1hdGNoKGNvbnN0IE1hdGNoZWRQcm9wZXJ0aWVzJiBtYXRj
aGVkUHJvcGVydGllcywgQ2FzY2EKICAgICBpZiAobV9tYXhpbXVtQ2FzY2FkZUxheWVyUHJpb3Jp
dHlGb3JSb2xsYmFjayAmJiAhaW5jbHVkZVByb3BlcnRpZXNGb3JSb2xsYmFjaygpKQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKLSAgICBpZiAoKG1hdGNoZWRQcm9wZXJ0aWVzLmF0UnVsZVR5cGVz
ICYgQXRSdWxlVHlwZTo6U3RhcnRpbmdTdHlsZSkgJiYgIW1faW5jbHVkZWRQcm9wZXJ0aWVzLmNv
bnRhaW5zKFByb3BlcnR5VHlwZTo6U3RhcnRpbmdTdHlsZSkpCi0gICAgICAgIHJldHVybiBmYWxz
ZTsKLQotICAgIGlmICgobWF0Y2hlZFByb3BlcnRpZXMuYXRSdWxlVHlwZXMgJiBBdFJ1bGVUeXBl
OjpCYXNlQXBwZWFyYW5jZSkgJiYgIW1faW5jbHVkZWRQcm9wZXJ0aWVzLmNvbnRhaW5zKFByb3Bl
cnR5VHlwZTo6QmFzZUFwcGVhcmFuY2VTdHlsZSkpCisgICAgaWYgKG1hdGNoZWRQcm9wZXJ0aWVz
LmlzU3RhcnRpbmdTdHlsZSA9PSBJc1N0YXJ0aW5nU3R5bGU6OlllcyAmJiAhbV9pbmNsdWRlZFBy
b3BlcnRpZXMuY29udGFpbnMoUHJvcGVydHlUeXBlOjpTdGFydGluZ1N0eWxlKSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogCiAgICAgYXV0byBwcm9wZXJ0eUFsbG93bGlzdCA9IG1hdGNoZWRQcm9w
ZXJ0aWVzLmFsbG93bGlzdFR5cGU7CkBAIC00MDUsMTEgKzQwMiw1IEBAIGNvbnN0IEhhc2hTZXQ8
QW5pbWF0YWJsZUNTU1Byb3BlcnR5PiBQcm9wZXJ0eUNhc2NhZGU6Om92ZXJyaWRkZW5BbmltYXRl
ZFByb3BlcnRpCiAgICAgcmV0dXJuIHsgfTsKIH0KIAotdm9pZCBQcm9wZXJ0eUNhc2NhZGU6OmFk
ZEJhc2VBcHBlYXJhbmNlU3R5bGVzKCkKLXsKLSAgICBjb25zdF9jYXN0PE9wdGlvblNldDxQcm9w
ZXJ0eVR5cGU+Jj4obV9pbmNsdWRlZFByb3BlcnRpZXMpLmFkZChQcm9wZXJ0eUNhc2NhZGU6OlBy
b3BlcnR5VHlwZTo6QmFzZUFwcGVhcmFuY2VTdHlsZSk7Ci0gICAgYnVpbGRDYXNjYWRlKCk7Ci19
Ci0KIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2Fk
ZS5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUHJvcGVydHlDYXNjYWRlLmgKaW5kZXggZmNhMDk2
MTY0MjcxLi5hODk0Mjk1N2UwYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1By
b3BlcnR5Q2FzY2FkZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1Byb3BlcnR5Q2FzY2Fk
ZS5oCkBAIC00OSw4ICs0OSw3IEBAIHB1YmxpYzoKICAgICAgICAgQWZ0ZXJBbmltYXRpb24gPSAx
IDw8IDMsCiAgICAgICAgIEFmdGVyVHJhbnNpdGlvbiA9IDEgPDwgNCwKICAgICAgICAgU3RhcnRp
bmdTdHlsZSA9IDEgPDwgNSwKLSAgICAgICAgQmFzZUFwcGVhcmFuY2VTdHlsZSA9IDEgPDwgNiwK
LSAgICAgICAgTm9uQ2FjaGVhYmxlID0gMSA8PCA3LAorICAgICAgICBOb25DYWNoZWFibGUgPSAx
IDw8IDYsCiAgICAgfTsKICAgICBzdGF0aWMgY29uc3RleHByIE9wdGlvblNldDxQcm9wZXJ0eVR5
cGU+IG5vcm1hbFByb3BlcnRpZXMoKSB7IHJldHVybiB7IFByb3BlcnR5VHlwZTo6Tm9uSW5oZXJp
dGVkLCAgUHJvcGVydHlUeXBlOjpJbmhlcml0ZWQgfTsgfQogICAgIHN0YXRpYyBjb25zdGV4cHIg
T3B0aW9uU2V0PFByb3BlcnR5VHlwZT4gc3RhcnRpbmdTdHlsZVByb3BlcnRpZXMoKSB7IHJldHVy
biBub3JtYWxQcm9wZXJ0aWVzKCkgfCBQcm9wZXJ0eVR5cGU6OlN0YXJ0aW5nU3R5bGU7IH0KQEAg
LTg5LDggKzg4LDYgQEAgcHVibGljOgogICAgIFByb3BlcnR5Qml0U2V0JiBwcm9wZXJ0eUlzUHJl
c2VudCgpIHsgcmV0dXJuIG1fcHJvcGVydHlJc1ByZXNlbnQ7IH0KICAgICBjb25zdCBQcm9wZXJ0
eUJpdFNldCYgcHJvcGVydHlJc1ByZXNlbnQoKSBjb25zdCB7IHJldHVybiBtX3Byb3BlcnR5SXNQ
cmVzZW50OyB9CiAKLSAgICB2b2lkIGFkZEJhc2VBcHBlYXJhbmNlU3R5bGVzKCk7Ci0KIHByaXZh
dGU6CiAgICAgdm9pZCBidWlsZENhc2NhZGUoKTsKICAgICBib29sIGFkZE5vcm1hbE1hdGNoZXMo
Q2FzY2FkZUxldmVsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVEYXRh
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVEYXRhLmNwcAppbmRleCBhYTViYjRhYTFi
NzcuLmI5N2VlYTFjMzIzMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZURh
dGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVEYXRhLmNwcApAQCAtNTYsNyAr
NTYsNiBAQCBzdHJ1Y3QgU2FtZVNpemVBc1J1bGVEYXRhIHsKICAgICB1bnNpZ25lZCBiOwogICAg
IHVuc2lnbmVkIGM7CiAgICAgdW5zaWduZWQgZFs0XTsKLSAgICBib29sIGU7CiB9OwogCiBzdGF0
aWNfYXNzZXJ0KHNpemVvZihSdWxlRGF0YSkgPT0gc2l6ZW9mKFNhbWVTaXplQXNSdWxlRGF0YSks
ICJSdWxlRGF0YSBzaG91bGQgc3RheSBzbWFsbCIpOwpAQCAtMTY3LDcgKzE2Niw3IEBAIHN0YXRp
YyBpbmxpbmUgUHJvcGVydHlBbGxvd2xpc3QgZGV0ZXJtaW5lUHJvcGVydHlBbGxvd2xpc3QoY29u
c3QgQ1NTU2VsZWN0b3IqIHNlCiAgICAgcmV0dXJuIFByb3BlcnR5QWxsb3dsaXN0OjpOb25lOwog
fQogCi1SdWxlRGF0YTo6UnVsZURhdGEoY29uc3QgU3R5bGVSdWxlJiBzdHlsZVJ1bGUsIHVuc2ln
bmVkIHNlbGVjdG9ySW5kZXgsIHVuc2lnbmVkIHNlbGVjdG9yTGlzdEluZGV4LCB1bnNpZ25lZCBw
b3NpdGlvbiwgT3B0aW9uU2V0PEF0UnVsZVR5cGU+IGF0UnVsZVR5cGVzKQorUnVsZURhdGE6OlJ1
bGVEYXRhKGNvbnN0IFN0eWxlUnVsZSYgc3R5bGVSdWxlLCB1bnNpZ25lZCBzZWxlY3RvckluZGV4
LCB1bnNpZ25lZCBzZWxlY3Rvckxpc3RJbmRleCwgdW5zaWduZWQgcG9zaXRpb24sIElzU3RhcnRp
bmdTdHlsZSBpc1N0YXJ0aW5nU3R5bGUpCiAgICAgOiBtX3N0eWxlUnVsZSgmc3R5bGVSdWxlKQog
ICAgICwgbV9zZWxlY3RvckluZGV4KHNlbGVjdG9ySW5kZXgpCiAgICAgLCBtX3NlbGVjdG9yTGlz
dEluZGV4KHNlbGVjdG9yTGlzdEluZGV4KQpAQCAtMTc3LDcgKzE3Niw3IEBAIFJ1bGVEYXRhOjpS
dWxlRGF0YShjb25zdCBTdHlsZVJ1bGUmIHN0eWxlUnVsZSwgdW5zaWduZWQgc2VsZWN0b3JJbmRl
eCwgdW5zaWduZWQKICAgICAsIG1fY29udGFpbnNVbmNvbW1vbkF0dHJpYnV0ZVNlbGVjdG9yKGNv
bXB1dGVDb250YWluc1VuY29tbW9uQXR0cmlidXRlU2VsZWN0b3IoKnNlbGVjdG9yKCkpKQogICAg
ICwgbV9saW5rTWF0Y2hUeXBlKFNlbGVjdG9yQ2hlY2tlcjo6ZGV0ZXJtaW5lTGlua01hdGNoVHlw
ZShzZWxlY3RvcigpKSkKICAgICAsIG1fcHJvcGVydHlBbGxvd2xpc3QoZW51bVRvVW5kZXJseWlu
Z1R5cGUoZGV0ZXJtaW5lUHJvcGVydHlBbGxvd2xpc3Qoc2VsZWN0b3IoKSkpKQotICAgICwgbV9h
dFJ1bGVUeXBlcyhhdFJ1bGVUeXBlcy50b1JhdygpKQorICAgICwgbV9pc1N0YXJ0aW5nU3R5bGUo
ZW51bVRvVW5kZXJseWluZ1R5cGUoaXNTdGFydGluZ1N0eWxlKSkKICAgICAsIG1faXNFbmFibGVk
KHRydWUpCiAgICAgLCBtX2Rlc2NlbmRhbnRTZWxlY3RvcklkZW50aWZpZXJIYXNoZXMoU2VsZWN0
b3JGaWx0ZXI6OmNvbGxlY3RIYXNoZXMoKnNlbGVjdG9yKCkpKQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvc3R5bGUvUnVsZURhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVE
YXRhLmgKaW5kZXggZmZhMDVjNTk1MTI2Li42N2Q2OGVjYjVmYjYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1J1bGVEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVs
ZURhdGEuaApAQCAtMjQsNyArMjQsNiBAQAogI2luY2x1ZGUgIlByb3BlcnR5QWxsb3dsaXN0Lmgi
CiAjaW5jbHVkZSAiU2VsZWN0b3JGaWx0ZXIuaCIKICNpbmNsdWRlICJTdHlsZVJ1bGUuaCIKLSNp
bmNsdWRlIDx3dGYvT3B0aW9uU2V0Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIG5hbWVzcGFj
ZSBTdHlsZSB7CkBAIC0zNywxNiArMzYsMTMgQEAgZW51bSBjbGFzcyBNYXRjaEJhc2VkT25SdWxl
SGFzaCA6IHVuc2lnbmVkIHsKICAgICBDbGFzc0MKIH07CiAKLWVudW0gY2xhc3MgQXRSdWxlVHlw
ZSA6IHVpbnQ4X3QgewotICAgIFN0YXJ0aW5nU3R5bGUgPSAxIDw8IDAsCi0gICAgQmFzZUFwcGVh
cmFuY2UgPSAxIDw8IDEKLX07CitlbnVtIGNsYXNzIElzU3RhcnRpbmdTdHlsZSA6IGJvb2wgeyBO
bywgWWVzIH07CiAKIGNsYXNzIFJ1bGVEYXRhIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3Qg
dW5zaWduZWQgbWF4aW11bVNlbGVjdG9yQ29tcG9uZW50Q291bnQgPSA4MTkyOwogCi0gICAgUnVs
ZURhdGEoY29uc3QgU3R5bGVSdWxlJiwgdW5zaWduZWQgc2VsZWN0b3JJbmRleCwgdW5zaWduZWQg
c2VsZWN0b3JMaXN0SW5kZXgsIHVuc2lnbmVkIHBvc2l0aW9uLCBPcHRpb25TZXQ8QXRSdWxlVHlw
ZT4pOworICAgIFJ1bGVEYXRhKGNvbnN0IFN0eWxlUnVsZSYsIHVuc2lnbmVkIHNlbGVjdG9ySW5k
ZXgsIHVuc2lnbmVkIHNlbGVjdG9yTGlzdEluZGV4LCB1bnNpZ25lZCBwb3NpdGlvbiwgSXNTdGFy
dGluZ1N0eWxlKTsKIAogICAgIHVuc2lnbmVkIHBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9w
b3NpdGlvbjsgfQogCkBAIC02OSw3ICs2NSw3IEBAIHB1YmxpYzoKICAgICBib29sIGNvbnRhaW5z
VW5jb21tb25BdHRyaWJ1dGVTZWxlY3RvcigpIGNvbnN0IHsgcmV0dXJuIG1fY29udGFpbnNVbmNv
bW1vbkF0dHJpYnV0ZVNlbGVjdG9yOyB9CiAgICAgdW5zaWduZWQgbGlua01hdGNoVHlwZSgpIGNv
bnN0IHsgcmV0dXJuIG1fbGlua01hdGNoVHlwZTsgfQogICAgIFByb3BlcnR5QWxsb3dsaXN0IHBy
b3BlcnR5QWxsb3dsaXN0KCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nhc3Q8UHJvcGVydHlBbGxv
d2xpc3Q+KG1fcHJvcGVydHlBbGxvd2xpc3QpOyB9Ci0gICAgT3B0aW9uU2V0PEF0UnVsZVR5cGU+
IGF0UnVsZVR5cGVzKCkgY29uc3QgeyByZXR1cm4gT3B0aW9uU2V0PEF0UnVsZVR5cGU+Ojpmcm9t
UmF3KG1fYXRSdWxlVHlwZXMpOyB9CisgICAgSXNTdGFydGluZ1N0eWxlIGlzU3RhcnRpbmdTdHls
ZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PElzU3RhcnRpbmdTdHlsZT4obV9pc1N0YXJ0
aW5nU3R5bGUpOyB9CiAgICAgYm9vbCBpc0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lzRW5h
YmxlZDsgfQogICAgIHZvaWQgc2V0RW5hYmxlZChib29sIHZhbHVlKSB7IG1faXNFbmFibGVkID0g
dmFsdWU7IH0KIApAQCAtODksNyArODUsNyBAQCBwcml2YXRlOgogICAgIHVuc2lnbmVkIG1fY29u
dGFpbnNVbmNvbW1vbkF0dHJpYnV0ZVNlbGVjdG9yIDogMTsKICAgICB1bnNpZ25lZCBtX2xpbmtN
YXRjaFR5cGUgOiAyOyAvLyAgU2VsZWN0b3JDaGVja2VyOjpMaW5rTWF0Y2hNYXNrCiAgICAgdW5z
aWduZWQgbV9wcm9wZXJ0eUFsbG93bGlzdCA6IDI7Ci0gICAgdW5zaWduZWQgbV9hdFJ1bGVUeXBl
cyA6IDI7CisgICAgdW5zaWduZWQgbV9pc1N0YXJ0aW5nU3R5bGUgOiAxOwogICAgIHVuc2lnbmVk
IG1faXNFbmFibGVkIDogMTsKICAgICBTZWxlY3RvckZpbHRlcjo6SGFzaGVzIG1fZGVzY2VuZGFu
dFNlbGVjdG9ySWRlbnRpZmllckhhc2hlczsKIH07CkBAIC0xMDMsMyArOTksNCBAQCBuYW1lc3Bh
Y2UgV1RGIHsKIHRlbXBsYXRlPD4gc3RydWN0IFZlY3RvclRyYWl0czxXZWJDb3JlOjpTdHlsZTo6
UnVsZURhdGE+IDogU2ltcGxlQ2xhc3NWZWN0b3JUcmFpdHMgeyB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXVEYKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZUZlYXR1cmUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZUZlYXR1cmUuY3BwCmluZGV4IDQyY2MxOWMwNTZm
Yy4uNGUxYTE4MDBjNGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlRmVh
dHVyZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZUZlYXR1cmUuY3BwCkBAIC00
MDgsNyArNDA4LDcgQEAgdm9pZCBSdWxlRmVhdHVyZVNldDo6Y29sbGVjdEZlYXR1cmVzKGNvbnN0
IFJ1bGVEYXRhJiBydWxlRGF0YSwgY29uc3QgVmVjdG9yPFJlZjwKICAgICAgICAgc2libGluZ1J1
bGVzLmFwcGVuZCh7IHJ1bGVEYXRhIH0pOwogICAgIGlmIChydWxlRGF0YS5jb250YWluc1VuY29t
bW9uQXR0cmlidXRlU2VsZWN0b3IoKSkKICAgICAgICAgdW5jb21tb25BdHRyaWJ1dGVSdWxlcy5h
cHBlbmQoeyBydWxlRGF0YSB9KTsKLSAgICBpZiAocnVsZURhdGEuYXRSdWxlVHlwZXMoKS5jb250
YWlucyhBdFJ1bGVUeXBlOjpTdGFydGluZ1N0eWxlKSkKKyAgICBpZiAocnVsZURhdGEuaXNTdGFy
dGluZ1N0eWxlKCkgPT0gSXNTdGFydGluZ1N0eWxlOjpZZXMpCiAgICAgICAgIGhhc1N0YXJ0aW5n
U3R5bGVSdWxlcyA9IHRydWU7CiAKICAgICBhdXRvIGFkZFRvTWFwID0gWyZdPHR5cGVuYW1lIEhv
c3RBZmZlY3RpbmdOYW1lcz4oYXV0byYgbWFwLCBhdXRvJiBlbnRyaWVzLCBIb3N0QWZmZWN0aW5n
TmFtZXMgaG9zdEFmZmVjdGluZ05hbWVzKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9SdWxlU2V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXQuY3BwCmluZGV4
IDUyNzVhMzRmZDk0MS4uNDg0NDM3ZjVkOGQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dHlsZS9SdWxlU2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0LmNwcApA
QCAtMTMzLDcgKzEzMyw3IEBAIHN0YXRpYyBib29sIHNob3VsZEhhdmVCdWNrZXRGb3JBdHRyaWJ1
dGVOYW1lKGNvbnN0IENTU1NlbGVjdG9yJiBhdHRyaWJ1dGVTZWxlY3RvCiAKIHZvaWQgUnVsZVNl
dDo6YWRkUnVsZShjb25zdCBTdHlsZVJ1bGUmIHJ1bGUsIHVuc2lnbmVkIHNlbGVjdG9ySW5kZXgs
IHVuc2lnbmVkIHNlbGVjdG9yTGlzdEluZGV4KQogewotICAgIFJ1bGVEYXRhIHJ1bGVEYXRhKHJ1
bGUsIHNlbGVjdG9ySW5kZXgsIHNlbGVjdG9yTGlzdEluZGV4LCBtX3J1bGVDb3VudCwgeyB9KTsK
KyAgICBSdWxlRGF0YSBydWxlRGF0YShydWxlLCBzZWxlY3RvckluZGV4LCBzZWxlY3Rvckxpc3RJ
bmRleCwgbV9ydWxlQ291bnQsIElzU3RhcnRpbmdTdHlsZTo6Tm8pOwogICAgIGFkZFJ1bGUoV1RG
TW92ZShydWxlRGF0YSksIDAsIDAsIDApOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9SdWxlU2V0QnVpbGRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlU2V0
QnVpbGRlci5jcHAKaW5kZXggN2RhNGQzNmU4Yjc0Li5lYmM1MjVlZjI4NmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVTZXRCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9SdWxlU2V0QnVpbGRlci5jcHAKQEAgLTIwMiw3ICsyMDIsNyBAQCB2b2lkIFJ1
bGVTZXRCdWlsZGVyOjphZGRDaGlsZFJ1bGUoUmVmPFN0eWxlUnVsZUJhc2U+IHJ1bGUpCiAgICAg
fQogCiAgICAgY2FzZSBTdHlsZVJ1bGVUeXBlOjpTdGFydGluZ1N0eWxlOiB7Ci0gICAgICAgIFNl
dEZvclNjb3BlIHN0YXJ0aW5nU3R5bGVTY29wZSB7IG1fYXRSdWxlVHlwZXMsIG1fYXRSdWxlVHlw
ZXMgfCBBdFJ1bGVUeXBlOjpTdGFydGluZ1N0eWxlIH07CisgICAgICAgIFNldEZvclNjb3BlIHN0
YXJ0aW5nU3R5bGVTY29wZSB7IG1faXNTdGFydGluZ1N0eWxlLCBJc1N0YXJ0aW5nU3R5bGU6Olll
cyB9OwogICAgICAgICBhdXRvIHN0YXJ0aW5nU3R5bGVSdWxlID0gdW5jaGVja2VkRG93bmNhc3Q8
U3R5bGVSdWxlU3RhcnRpbmdTdHlsZT4oV1RGTW92ZShydWxlKSk7CiAgICAgICAgIGFkZENoaWxk
UnVsZXMoc3RhcnRpbmdTdHlsZVJ1bGUtPmNoaWxkUnVsZXMoKSk7CiAgICAgICAgIHJldHVybjsK
QEAgLTIyNywxMyArMjI3LDYgQEAgdm9pZCBSdWxlU2V0QnVpbGRlcjo6YWRkQ2hpbGRSdWxlKFJl
ZjxTdHlsZVJ1bGVCYXNlPiBydWxlKQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgY2Fz
ZSBTdHlsZVJ1bGVUeXBlOjpJbnRlcm5hbEJhc2VBcHBlYXJhbmNlOiB7Ci0gICAgICAgIFNldEZv
clNjb3BlIHNjb3BlIHsgbV9hdFJ1bGVUeXBlcywgbV9hdFJ1bGVUeXBlcyB8IEF0UnVsZVR5cGU6
OkJhc2VBcHBlYXJhbmNlIH07Ci0gICAgICAgIGF1dG8gaW50ZXJuYWxCYXNlQXBwZWFyYW5jZVJ1
bGUgPSB1bmNoZWNrZWREb3duY2FzdDxTdHlsZVJ1bGVJbnRlcm5hbEJhc2VBcHBlYXJhbmNlPihX
VEZNb3ZlKHJ1bGUpKTsKLSAgICAgICAgYWRkQ2hpbGRSdWxlcyhpbnRlcm5hbEJhc2VBcHBlYXJh
bmNlUnVsZS0+Y2hpbGRSdWxlcygpKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQogICAgIGNh
c2UgU3R5bGVSdWxlVHlwZTo6SW1wb3J0OgogICAgIGNhc2UgU3R5bGVSdWxlVHlwZTo6TWFyZ2lu
OgogICAgIGNhc2UgU3R5bGVSdWxlVHlwZTo6TmFtZXNwYWNlOgpAQCAtMjk3LDcgKzI5MCw3IEBA
IHZvaWQgUnVsZVNldEJ1aWxkZXI6OmFkZFN0eWxlUnVsZVdpdGhTZWxlY3Rvckxpc3QoY29uc3Qg
Q1NTU2VsZWN0b3JMaXN0JiBzZWxlY3RvCiAgICAgaWYgKCFzZWxlY3Rvckxpc3QuaXNFbXB0eSgp
KSB7CiAgICAgICAgIHVuc2lnbmVkIHNlbGVjdG9yTGlzdEluZGV4ID0gMDsKICAgICAgICAgZm9y
IChzaXplX3Qgc2VsZWN0b3JJbmRleCA9IDA7IHNlbGVjdG9ySW5kZXggIT0gbm90Rm91bmQ7IHNl
bGVjdG9ySW5kZXggPSBzZWxlY3Rvckxpc3QuaW5kZXhPZk5leHRTZWxlY3RvckFmdGVyKHNlbGVj
dG9ySW5kZXgpKSB7Ci0gICAgICAgICAgICBSdWxlRGF0YSBydWxlRGF0YShydWxlLCBzZWxlY3Rv
ckluZGV4LCBzZWxlY3Rvckxpc3RJbmRleCwgbV9ydWxlU2V0LT5ydWxlQ291bnQoKSwgbV9hdFJ1
bGVUeXBlcyk7CisgICAgICAgICAgICBSdWxlRGF0YSBydWxlRGF0YShydWxlLCBzZWxlY3Rvcklu
ZGV4LCBzZWxlY3Rvckxpc3RJbmRleCwgbV9ydWxlU2V0LT5ydWxlQ291bnQoKSwgbV9pc1N0YXJ0
aW5nU3R5bGUpOwogICAgICAgICAgICAgbV9tZWRpYVF1ZXJ5Q29sbGVjdG9yLmFkZFJ1bGVJZk5l
ZWRlZChydWxlRGF0YSk7CiAgICAgICAgICAgICBtX3J1bGVTZXQtPmFkZFJ1bGUoV1RGTW92ZShy
dWxlRGF0YSksIG1fY3VycmVudENhc2NhZGVMYXllcklkZW50aWZpZXIsIG1fY3VycmVudENvbnRh
aW5lclF1ZXJ5SWRlbnRpZmllciwgbV9jdXJyZW50U2NvcGVJZGVudGlmaWVyKTsKICAgICAgICAg
ICAgICsrc2VsZWN0b3JMaXN0SW5kZXg7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdHls
ZS9SdWxlU2V0QnVpbGRlci5oIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZVNldEJ1aWxkZXIu
aAppbmRleCA4MjUxOGViZDVlZTEuLmZlYWU3MjYzM2M4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvc3R5bGUvUnVsZVNldEJ1aWxkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9S
dWxlU2V0QnVpbGRlci5oCkBAIC05Miw3ICs5Miw3IEBAIHByaXZhdGU6CiAgICAgUnVsZVNldDo6
Q29udGFpbmVyUXVlcnlJZGVudGlmaWVyIG1fY3VycmVudENvbnRhaW5lclF1ZXJ5SWRlbnRpZmll
ciB7IDAgfTsKICAgICBSdWxlU2V0OjpTY29wZVJ1bGVJZGVudGlmaWVyIG1fY3VycmVudFNjb3Bl
SWRlbnRpZmllciB7IDAgfTsKIAotICAgIE9wdGlvblNldDxBdFJ1bGVUeXBlPiBtX2F0UnVsZVR5
cGVzIHsgfTsKKyAgICBJc1N0YXJ0aW5nU3R5bGUgbV9pc1N0YXJ0aW5nU3R5bGUgeyBJc1N0YXJ0
aW5nU3R5bGU6Ok5vIH07CiAKICAgICBWZWN0b3I8UnVsZVNldDo6UmVzb2x2ZXJNdXRhdGluZ1J1
bGU+IG1fY29sbGVjdGVkUmVzb2x2ZXJNdXRhdGluZ1J1bGVzOwogICAgIGJvb2wgcmVxdWlyZXNT
dGF0aWNNZWRpYVF1ZXJ5RXZhbHVhdGlvbiB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5
bGVCdWlsZGVyLmNwcAppbmRleCBlM2ZiZDY3ZDlkNjguLmQ2MWQ3YzQzMTYyYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9TdHlsZUJ1aWxkZXIuY3BwCkBAIC04NywxMyArODcsMTAgQEAgaW5saW5lIGJv
b2wgaXNWYWxpZFZpc2l0ZWRMaW5rUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBpZCkKICAgICByZXR1
cm4gZmFsc2U7CiB9CiAKLUJ1aWxkZXI6OkJ1aWxkZXIoUmVuZGVyU3R5bGUmIHN0eWxlLCBCdWls
ZGVyQ29udGV4dCYmIGNvbnRleHQsIGNvbnN0IE1hdGNoUmVzdWx0JiBtYXRjaFJlc3VsdCwgQ2Fz
Y2FkZUxldmVsIGNhc2NhZGVMZXZlbCwgT3B0aW9uU2V0PFByb3BlcnR5Q2FzY2FkZTo6UHJvcGVy
dHlUeXBlPiBpbmNsdWRlZFByb3BlcnRpZXMsIGNvbnN0IEhhc2hTZXQ8QW5pbWF0YWJsZUNTU1By
b3BlcnR5PiogYW5pbWF0ZWRQcm9wZXJ0aWVzKQotICAgIDogbV9jYXNjYWRlKG1hdGNoUmVzdWx0
LCBjYXNjYWRlTGV2ZWwsIGluY2x1ZGVkUHJvcGVydGllcywgYW5pbWF0ZWRQcm9wZXJ0aWVzKQor
QnVpbGRlcjo6QnVpbGRlcihSZW5kZXJTdHlsZSYgc3R5bGUsIEJ1aWxkZXJDb250ZXh0JiYgY29u
dGV4dCwgY29uc3QgTWF0Y2hSZXN1bHQmIG1hdGNoUmVzdWx0LCBDYXNjYWRlTGV2ZWwgY2FzY2Fk
ZUxldmVsLCBPcHRpb25TZXQ8UHJvcGVydHlDYXNjYWRlOjpQcm9wZXJ0eVR5cGU+IGluY2x1ZGVk
UHJvcGVydGllcywgY29uc3QgSGFzaFNldDxBbmltYXRhYmxlQ1NTUHJvcGVydHk+KiBhbmltYXRl
ZFByb3BlcnRlcykKKyAgICA6IG1fY2FzY2FkZShtYXRjaFJlc3VsdCwgY2FzY2FkZUxldmVsLCBp
bmNsdWRlZFByb3BlcnRpZXMsIGFuaW1hdGVkUHJvcGVydGVzKQogICAgICwgbV9zdGF0ZSgqdGhp
cywgc3R5bGUsIFdURk1vdmUoY29udGV4dCkpCiB7Ci0gICAgYXBwbHlQcm9wZXJ0eShDU1NQcm9w
ZXJ0eUFwcGVhcmFuY2UpOwotICAgIGlmIChtX3N0YXRlLnN0eWxlKCkuYXBwZWFyYW5jZSgpID09
IFN0eWxlQXBwZWFyYW5jZTo6QmFzZSkKLSAgICAgICAgbV9jYXNjYWRlLmFkZEJhc2VBcHBlYXJh
bmNlU3R5bGVzKCk7CiB9CiAKIEJ1aWxkZXI6On5CdWlsZGVyKCkgPSBkZWZhdWx0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9zdHlsZS9TdHlsZUJ1aWxkZXIuaAppbmRleCA3MWVmYmE2ZmE3ZjQuLmRhMTBkNjYwY2RmMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVCdWlsZGVyLmgKQEAgLTgwLDcgKzgwLDcgQEAgcHJpdmF0
ZToKICAgICB1c2luZyBSb2xsYmFja0Nhc2NhZGVLZXkgPSBzdGQ6OnR1cGxlPHVuc2lnbmVkLCB1
bnNpZ25lZCwgdW5zaWduZWQ+OwogICAgIFJvbGxiYWNrQ2FzY2FkZUtleSBtYWtlUm9sbGJhY2tD
YXNjYWRlS2V5KENhc2NhZGVMZXZlbCwgU2NvcGVPcmRpbmFsID0gU2NvcGVPcmRpbmFsOjpFbGVt
ZW50LCBDYXNjYWRlTGF5ZXJQcmlvcml0eSA9IDApOwogCi0gICAgUHJvcGVydHlDYXNjYWRlIG1f
Y2FzY2FkZTsKKyAgICBjb25zdCBQcm9wZXJ0eUNhc2NhZGUgbV9jYXNjYWRlOwogICAgIC8vIFJv
bGxiYWNrIGNhc2NhZGVzIGFyZSBidWlsZCBvbiBkZW1hbmQgdG8gcmVzb2x2ZSAncmV2ZXJ0JyBh
bmQgJ3JldmVydC1sYXllcicga2V5d29yZHMuCiAgICAgSGFzaE1hcDxSb2xsYmFja0Nhc2NhZGVL
ZXksIHN0ZDo6dW5pcXVlX3B0cjxjb25zdCBQcm9wZXJ0eUNhc2NhZGU+PiBtX3JvbGxiYWNrQ2Fz
Y2FkZXM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVSZXNvbHZlci5jcHAKaW5kZXggNmI5ZDVh
YjNhNzgzLi5kMzcxNjhkY2M3MGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0
eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUmVzb2x2ZXIu
Y3BwCkBAIC0zNzcsNyArMzc3LDYgQEAgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiBSZXNv
bHZlcjo6c3R5bGVGb3JLZXlmcmFtZShFbGVtZW50JiBlbGVtZW50LCBjb25zdAogICAgICAgICBj
b2xsZWN0b3IubWF0Y2hVc2VyUnVsZXMoKTsKICAgICB9CiAgICAgY29sbGVjdG9yLmFkZEF1dGhv
cktleWZyYW1lUnVsZXMoa2V5ZnJhbWUpOwotCiAgICAgQnVpbGRlciBidWlsZGVyKCpzdGF0ZS5z
dHlsZSgpLCBidWlsZGVyQ29udGV4dChzdGF0ZSksIGNvbGxlY3Rvci5tYXRjaFJlc3VsdCgpLCBD
YXNjYWRlTGV2ZWw6OkF1dGhvcik7CiAgICAgYnVpbGRlci5zdGF0ZSgpLnNldElzQnVpbGRpbmdL
ZXlmcmFtZVN0eWxlKCk7CiAgICAgYnVpbGRlci5hcHBseUFsbFByb3BlcnRpZXMoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVyLmNwcAppbmRleCA0YzE2MTM2YTA0OTMu
LmY0ODU2OWZjY2ZkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvU3R5bGVUcmVl
UmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlVHJlZVJlc29sdmVy
LmNwcApAQCAtNzc1LDcgKzc3NSw3IEBAIEVsZW1lbnRVcGRhdGUgVHJlZVJlc29sdmVyOjpjcmVh
dGVBbmltYXRlZEVsZW1lbnRVcGRhdGUoUmVzb2x2ZWRTdHlsZSYmIHJlc29sdmVkCiAKIHN0ZDo6
dW5pcXVlX3B0cjxSZW5kZXJTdHlsZT4gVHJlZVJlc29sdmVyOjpyZXNvbHZlU3RhcnRpbmdTdHls
ZShjb25zdCBSZXNvbHZlZFN0eWxlJiByZXNvbHZlZFN0eWxlLCBjb25zdCBTdHlsZWFibGUmIHN0
eWxlYWJsZSwgY29uc3QgUmVzb2x1dGlvbkNvbnRleHQmIHJlc29sdXRpb25Db250ZXh0KSBjb25z
dAogewotICAgIGlmICghcmVzb2x2ZWRTdHlsZS5tYXRjaFJlc3VsdCB8fCAhcmVzb2x2ZWRTdHls
ZS5tYXRjaFJlc3VsdC0+YXRSdWxlVHlwZXMuY29udGFpbnMoQXRSdWxlVHlwZTo6U3RhcnRpbmdT
dHlsZSkpCisgICAgaWYgKCFyZXNvbHZlZFN0eWxlLm1hdGNoUmVzdWx0IHx8ICFyZXNvbHZlZFN0
eWxlLm1hdGNoUmVzdWx0LT5oYXNTdGFydGluZ1N0eWxlKQogICAgICAgICByZXR1cm4gbnVsbHB0
cjsKIAogICAgIC8vICJTdGFydGluZyBzdHlsZSBpbmhlcml0cyBmcm9tIHRoZSBwYXJlbnTigJlz
IGFmdGVyLWNoYW5nZSBzdHlsZSBqdXN0IGxpa2UgYWZ0ZXItY2hhbmdlIHN0eWxlIGRvZXMuIgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>