<?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>214451</bug_id>
          
          <creation_ts>2020-07-17 04:58:02 -0700</creation_ts>
          <short_desc>Only use enum classes in HTTPParsers</short_desc>
          <delta_ts>2020-07-18 03:34:13 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>Safari Technology Preview</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="Rob Buis">rbuis</reporter>
          <assigned_to name="Rob Buis">rbuis</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1672443</commentid>
    <comment_count>0</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-07-17 04:58:02 -0700</bug_when>
    <thetext>Make ContentTypeOptionsDisposition an enum class since it is more readable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1672469</commentid>
    <comment_count>1</comment_count>
      <attachid>404557</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-07-17 06:43:51 -0700</bug_when>
    <thetext>Created attachment 404557
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1672769</commentid>
    <comment_count>2</comment_count>
      <attachid>404557</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-07-17 20:09:05 -0700</bug_when>
    <thetext>Comment on attachment 404557
Patch

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

&gt; Source/WebCore/platform/network/HTTPParsers.h:50
&gt; +enum class ContentTypeOptionsDisposition {

Could you add a base type? Maybe bool or uint8_t.

&gt; Source/WebCore/platform/network/HTTPParsers.h:55
&gt; +enum class XFrameOptionsDisposition {

Here too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1672783</commentid>
    <comment_count>3</comment_count>
      <attachid>404639</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-07-18 01:18:31 -0700</bug_when>
    <thetext>Created attachment 404639
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1672785</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-18 03:33:59 -0700</bug_when>
    <thetext>Committed r264566: &lt;https://trac.webkit.org/changeset/264566&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 404639.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1672786</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-07-18 03:34:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/65763910&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>404557</attachid>
            <date>2020-07-17 06:43:51 -0700</date>
            <delta_ts>2020-07-18 01:18:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214451-20200717144345.patch</filename>
            <type>text/plain</type>
            <size>14571</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0NTAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjczNTZjZGY4Njg1MjE1
MTc5YjBjNTA1ZmYyNzhjYWY1ZTA5NWEyYi4uMmU2NzBkODc3OTYxOTE1ZTM2MTkwMGNmMTQ0ZTYx
MGE3ZjI5YzA4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIwLTA3LTE3ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgT25seSB1c2UgZW51bSBjbGFzc2Vz
IGluIEhUVFBQYXJzZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTQ0NTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBPbmx5IHVzZSBlbnVtIGNsYXNzZXMgaW4gSFRUUFBhcnNlcnMgYnkgY29udmVydGlu
ZyBYRnJhbWVPcHRpb25zU2FtZU9yaWdpbgorICAgICAgICBhbmQgQ29udGVudFR5cGVPcHRpb25z
RGlzcG9zaXRpb24uIFJlbW92ZSBIVFRQVmVyc2lvbiBlbnVtIHNpbmNlIGl0cworICAgICAgICBv
bmx5IHVzZSBpcyBieSBwYXJzZUhUVFBSZXF1ZXN0TGluZSwgYnV0IHRoaXMgbWV0aG9kIGlzIHVu
dXNlZC4KKworICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpGcmFtZUxvYWRlcjo6c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgor
ICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkNhY2hlZENTU1N0eWxlU2hlZXQ6Om1pbWVUeXBlQWxsb3dlZEJ5Tm9zbmlmZiBj
b25zdCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpwYXJzZUNvbnRlbnRUeXBlT3B0aW9uc0hlYWRlcik6CisgICAgICAgIChX
ZWJDb3JlOjpwYXJzZVhGcmFtZU9wdGlvbnNIZWFkZXIpOgorICAgICAgICAoV2ViQ29yZTo6cGFy
c2VIVFRQUmVxdWVzdExpbmUpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
SFRUUFBhcnNlcnMuaDoKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0v
bmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjppc1Nj
cmlwdEFsbG93ZWRCeU5vc25pZmYpOgorCiAyMDIwLTA3LTE2ICBSb2IgQnVpcyAgPHJidWlzQGln
YWxpYS5jb20+CiAKICAgICAgICAgTWFrZSBEb2N1bWVudFBhcnNlci5QYXJzZXJTdGF0ZSBhbiBl
bnVtIGNsYXNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDI2ZmVhZTU3MjVlN2UxMGZjMGFjZTA3OWQ0N2ZkYTc2OTNi
ZTIwMTkuLjM5ZWM5ODdlZWE4MWNmZGQ1NTQ3ODUyZTA2Nzc0ZmVmMDZjMzM5YjAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDctMTcgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNv
bT4KKworICAgICAgICBPbmx5IHVzZSBlbnVtIGNsYXNzZXMgaW4gSFRUUFBhcnNlcnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDQ1MQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkanVzdCB0byBYRnJh
bWVPcHRpb25zRGlzcG9zaXRpb24gY2hhbmdlLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
TmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Jlc291
cmNlTG9hZGVyOjpzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyk6CisKIDIwMjAt
MDctMTYgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2Vi
QXV0aG5dIEFkZCBhIGNvbnNvbGUgbWVzc2FnZTogIlVzZXIgZ2VzdHVyZSBpcyByZXF1aXJlZCB0
byB1c2UgdGhlIHBsYXRmb3JtIGF1dGhlbnRpY2F0b3IuIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFt
ZUxvYWRlci5jcHAKaW5kZXggZjE0OGI1M2MwMzg0ODllOTI2MDQ0YTMzOWEwMWUyMjgyY2U0OGIw
ZC4uYjg1OTU5YTNhNThhZTkzMzFkNDRmNGFlNGVjOTQxYjcwNTcwOGUxYiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC0zNjE1LDcgKzM2MTUsNyBAQCBib29sIEZyYW1l
TG9hZGVyOjpzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcm
IGNvbnRlbnQsIGNvbgogICAgIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbiBkaXNwb3NpdGlvbiA9
IHBhcnNlWEZyYW1lT3B0aW9uc0hlYWRlcihjb250ZW50KTsKIAogICAgIHN3aXRjaCAoZGlzcG9z
aXRpb24pIHsKLSAgICBjYXNlIFhGcmFtZU9wdGlvbnNTYW1lT3JpZ2luOiB7CisgICAgY2FzZSBY
RnJhbWVPcHRpb25zRGlzcG9zaXRpb246OlNhbWVPcmlnaW46IHsKICAgICAgICAgYXV0byBvcmln
aW4gPSBTZWN1cml0eU9yaWdpbjo6Y3JlYXRlKHVybCk7CiAgICAgICAgIGlmICghb3JpZ2luLT5p
c1NhbWVTY2hlbWVIb3N0UG9ydCh0b3BGcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigp
KSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMzYyNSwxNyArMzYyNSwxNyBAQCBib29s
IEZyYW1lTG9hZGVyOjpzaG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBT
dHJpbmcmIGNvbnRlbnQsIGNvbgogICAgICAgICB9CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICB9Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zRGVueToKKyAgICBjYXNlIFhGcmFtZU9wdGlvbnNE
aXNwb3NpdGlvbjo6RGVueToKICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgY2FzZSBYRnJhbWVP
cHRpb25zQWxsb3dBbGw6CisgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkFsbG93
QWxsOgogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zQ29uZmxp
Y3Q6CisgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkNvbmZsaWN0OgogICAgICAg
ICBtX2ZyYW1lLmRvY3VtZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpT
LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCAiTXVsdGlwbGUgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVy
cyB3aXRoIGNvbmZsaWN0aW5nIHZhbHVlcyAoJyIgKyBjb250ZW50ICsgIicpIGVuY291bnRlcmVk
IHdoZW4gbG9hZGluZyAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSAr
ICInLiBGYWxsaW5nIGJhY2sgdG8gJ0RFTlknLiIsIHJlcXVlc3RJZGVudGlmaWVyKTsKICAgICAg
ICAgcmV0dXJuIHRydWU7Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zSW52YWxpZDoKKyAgICBjYXNl
IFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6SW52YWxpZDoKICAgICAgICAgbV9mcmFtZS5kb2N1
bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpKUywgTWVzc2FnZUxldmVs
OjpFcnJvciwgIkludmFsaWQgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVyIGVuY291bnRlcmVkIHdo
ZW4gbG9hZGluZyAnIiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICIn
OiAnIiArIGNvbnRlbnQgKyAiJyBpcyBub3QgYSByZWNvZ25pemVkIGRpcmVjdGl2ZS4gVGhlIGhl
YWRlciB3aWxsIGJlIGlnbm9yZWQuIiwgcmVxdWVzdElkZW50aWZpZXIpOwogICAgICAgICByZXR1
cm4gZmFsc2U7Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zTm9uZToKKyAgICBjYXNlIFhGcmFtZU9w
dGlvbnNEaXNwb3NpdGlvbjo6Tm9uZToKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcAppbmRleCA4ZThlZGJiMzg3MzNjZWMyNzJhZDBm
N2NhMDNjYWM4YzQyMzBkMWFhLi5kYTZiYzMwNGM1N2UzMzY1MWJhMWQ3YTdmNjAzMzQwOGYxMmQw
NDViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5
bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0
eWxlU2hlZXQuY3BwCkBAIC0xMjcsNyArMTI3LDcgQEAgU3RyaW5nIENhY2hlZENTU1N0eWxlU2hl
ZXQ6OnJlc3BvbnNlTUlNRVR5cGUoKSBjb25zdAogCiBib29sIENhY2hlZENTU1N0eWxlU2hlZXQ6
Om1pbWVUeXBlQWxsb3dlZEJ5Tm9zbmlmZigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHBhcnNlQ29u
dGVudFR5cGVPcHRpb25zSGVhZGVyKG1fcmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFk
ZXJOYW1lOjpYQ29udGVudFR5cGVPcHRpb25zKSkgIT0gQ29udGVudFR5cGVPcHRpb25zTm9zbmlm
ZiB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShyZXNwb25zZU1JTUVUeXBlKCksICJ0
ZXh0L2NzcyIpOworICAgIHJldHVybiBwYXJzZUNvbnRlbnRUeXBlT3B0aW9uc0hlYWRlcihtX3Jl
c3BvbnNlLmh0dHBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6WENvbnRlbnRUeXBlT3B0aW9u
cykpICE9IENvbnRlbnRUeXBlT3B0aW9uc0Rpc3Bvc2l0aW9uOjpOb3NuaWZmIHx8IGVxdWFsTGV0
dGVyc0lnbm9yaW5nQVNDSUlDYXNlKHJlc3BvbnNlTUlNRVR5cGUoKSwgInRleHQvY3NzIik7CiB9
CiAKIGJvb2wgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6Y2FuVXNlU2hlZXQoTUlNRVR5cGVDaGVja0hp
bnQgbWltZVR5cGVDaGVja0hpbnQsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNvbnN0CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCmluZGV4IDYw
OWMwYmFmNWQzMDM1NjU4OGQ0OWNmMWI0OTgyMTYwNzJkNDFlZGMuLjA3ODVhMzAzYWQxNzJjNzc2
MTM1ZGU0NWZhMDcxMWFiNDFmODAxZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCkBAIC01MzgsOCArNTM4LDggQEAgQ29udGVudFR5cGVP
cHRpb25zRGlzcG9zaXRpb24gcGFyc2VDb250ZW50VHlwZU9wdGlvbnNIZWFkZXIoU3RyaW5nVmll
dyBoZWFkZXIpCiB7CiAgICAgU3RyaW5nVmlldyBsZWZ0VG9rZW4gPSBoZWFkZXIubGVmdChoZWFk
ZXIuZmluZCgnLCcpKTsKICAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3Ry
aXBMZWFkaW5nQW5kVHJhaWxpbmdIVFRQU3BhY2VzKGxlZnRUb2tlbiksICJub3NuaWZmIikpCi0g
ICAgICAgIHJldHVybiBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZmOwotICAgIHJldHVybiBDb250
ZW50VHlwZU9wdGlvbnNOb25lOworICAgICAgICByZXR1cm4gQ29udGVudFR5cGVPcHRpb25zRGlz
cG9zaXRpb246Ok5vc25pZmY7CisgICAgcmV0dXJuIENvbnRlbnRUeXBlT3B0aW9uc0Rpc3Bvc2l0
aW9uOjpOb25lOwogfQogCiAvLyBGb3IgZXhhbXBsZTogIkhUVFAvMS4xIDIwMCBPSyIgPT4gIk9L
Ii4KQEAgLTU1OSwyNyArNTU5LDI3IEBAIEF0b21TdHJpbmcgZXh0cmFjdFJlYXNvblBocmFzZUZy
b21IVFRQU3RhdHVzTGluZShjb25zdCBTdHJpbmcmIHN0YXR1c0xpbmUpCiAKIFhGcmFtZU9wdGlv
bnNEaXNwb3NpdGlvbiBwYXJzZVhGcmFtZU9wdGlvbnNIZWFkZXIoY29uc3QgU3RyaW5nJiBoZWFk
ZXIpCiB7Ci0gICAgWEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uIHJlc3VsdCA9IFhGcmFtZU9wdGlv
bnNOb25lOworICAgIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbiByZXN1bHQgPSBYRnJhbWVPcHRp
b25zRGlzcG9zaXRpb246Ok5vbmU7CiAKICAgICBpZiAoaGVhZGVyLmlzRW1wdHkoKSkKICAgICAg
ICAgcmV0dXJuIHJlc3VsdDsKIAogICAgIGZvciAoYXV0byYgY3VycmVudEhlYWRlciA6IGhlYWRl
ci5zcGxpdCgnLCcpKSB7CiAgICAgICAgIGN1cnJlbnRIZWFkZXIgPSBjdXJyZW50SGVhZGVyLnN0
cmlwV2hpdGVTcGFjZSgpOwotICAgICAgICBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb24gY3VycmVu
dFZhbHVlID0gWEZyYW1lT3B0aW9uc05vbmU7CisgICAgICAgIFhGcmFtZU9wdGlvbnNEaXNwb3Np
dGlvbiBjdXJyZW50VmFsdWUgPSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246Ok5vbmU7CiAgICAg
ICAgIGlmIChlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShjdXJyZW50SGVhZGVyLCAiZGVu
eSIpKQotICAgICAgICAgICAgY3VycmVudFZhbHVlID0gWEZyYW1lT3B0aW9uc0Rlbnk7CisgICAg
ICAgICAgICBjdXJyZW50VmFsdWUgPSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkRlbnk7CiAg
ICAgICAgIGVsc2UgaWYgKGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGN1cnJlbnRIZWFk
ZXIsICJzYW1lb3JpZ2luIikpCi0gICAgICAgICAgICBjdXJyZW50VmFsdWUgPSBYRnJhbWVPcHRp
b25zU2FtZU9yaWdpbjsKKyAgICAgICAgICAgIGN1cnJlbnRWYWx1ZSA9IFhGcmFtZU9wdGlvbnNE
aXNwb3NpdGlvbjo6U2FtZU9yaWdpbjsKICAgICAgICAgZWxzZSBpZiAoZXF1YWxMZXR0ZXJzSWdu
b3JpbmdBU0NJSUNhc2UoY3VycmVudEhlYWRlciwgImFsbG93YWxsIikpCi0gICAgICAgICAgICBj
dXJyZW50VmFsdWUgPSBYRnJhbWVPcHRpb25zQWxsb3dBbGw7CisgICAgICAgICAgICBjdXJyZW50
VmFsdWUgPSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkFsbG93QWxsOwogICAgICAgICBlbHNl
Ci0gICAgICAgICAgICBjdXJyZW50VmFsdWUgPSBYRnJhbWVPcHRpb25zSW52YWxpZDsKKyAgICAg
ICAgICAgIGN1cnJlbnRWYWx1ZSA9IFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6SW52YWxpZDsK
IAotICAgICAgICBpZiAocmVzdWx0ID09IFhGcmFtZU9wdGlvbnNOb25lKQorICAgICAgICBpZiAo
cmVzdWx0ID09IFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6Tm9uZSkKICAgICAgICAgICAgIHJl
c3VsdCA9IGN1cnJlbnRWYWx1ZTsKICAgICAgICAgZWxzZSBpZiAocmVzdWx0ICE9IGN1cnJlbnRW
YWx1ZSkKLSAgICAgICAgICAgIHJldHVybiBYRnJhbWVPcHRpb25zQ29uZmxpY3Q7CisgICAgICAg
ICAgICByZXR1cm4gWEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpDb25mbGljdDsKICAgICB9CiAg
ICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTY0Miw2OSArNjQyLDYgQEAgYm9vbCBwYXJzZVJhbmdl
KGNvbnN0IFN0cmluZyYgcmFuZ2UsIGxvbmcgbG9uZyYgcmFuZ2VPZmZzZXQsIGxvbmcgbG9uZyYg
cmFuZ2VFbmQKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotLy8gSFRUUC8xLjEgLSBSRkMgMjYxNgot
Ly8gaHR0cDovL3d3dy53My5vcmcvUHJvdG9jb2xzL3JmYzI2MTYvcmZjMjYxNi1zZWM1Lmh0bWwj
c2VjNS4xCi0vLyBSZXF1ZXN0LUxpbmUgPSBNZXRob2QgU1AgUmVxdWVzdC1VUkkgU1AgSFRUUC1W
ZXJzaW9uIENSTEYKLXNpemVfdCBwYXJzZUhUVFBSZXF1ZXN0TGluZShjb25zdCBjaGFyKiBkYXRh
LCBzaXplX3QgbGVuZ3RoLCBTdHJpbmcmIGZhaWx1cmVSZWFzb24sIFN0cmluZyYgbWV0aG9kLCBT
dHJpbmcmIHVybCwgSFRUUFZlcnNpb24mIGh0dHBWZXJzaW9uKQotewotICAgIG1ldGhvZCA9IFN0
cmluZygpOwotICAgIHVybCA9IFN0cmluZygpOwotICAgIGh0dHBWZXJzaW9uID0gVW5rbm93bjsK
LQotICAgIGNvbnN0IGNoYXIqIHNwYWNlMSA9IDA7Ci0gICAgY29uc3QgY2hhciogc3BhY2UyID0g
MDsKLSAgICBjb25zdCBjaGFyKiBwOwotICAgIHNpemVfdCBjb25zdW1lZExlbmd0aDsKLQotICAg
IGZvciAocCA9IGRhdGEsIGNvbnN1bWVkTGVuZ3RoID0gMDsgY29uc3VtZWRMZW5ndGggPCBsZW5n
dGg7IHArKywgY29uc3VtZWRMZW5ndGgrKykgewotICAgICAgICBpZiAoKnAgPT0gJyAnKSB7Ci0g
ICAgICAgICAgICBpZiAoIXNwYWNlMSkKLSAgICAgICAgICAgICAgICBzcGFjZTEgPSBwOwotICAg
ICAgICAgICAgZWxzZSBpZiAoIXNwYWNlMikKLSAgICAgICAgICAgICAgICBzcGFjZTIgPSBwOwot
ICAgICAgICB9IGVsc2UgaWYgKCpwID09ICdcbicpCi0gICAgICAgICAgICBicmVhazsKLSAgICB9
Ci0KLSAgICAvLyBIYXZlbid0IGZpbmlzaGVkIGhlYWRlciBsaW5lLgotICAgIGlmIChjb25zdW1l
ZExlbmd0aCA9PSBsZW5ndGgpIHsKLSAgICAgICAgZmFpbHVyZVJlYXNvbiA9ICJJbmNvbXBsZXRl
IFJlcXVlc3QgTGluZSJfczsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotCi0gICAgLy8gUmVx
dWVzdExpbmUgZG9lcyBub3QgY29udGFpbiAzIHBhcnRzLgotICAgIGlmICghc3BhY2UxIHx8ICFz
cGFjZTIpIHsKLSAgICAgICAgZmFpbHVyZVJlYXNvbiA9ICJSZXF1ZXN0IExpbmUgZG9lcyBub3Qg
YXBwZWFyIHRvIGNvbnRhaW46IDxNZXRob2Q+IDxVcmw+IDxIVFRQVmVyc2lvbj4uIl9zOwotICAg
ICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICAvLyBUaGUgbGluZSBtdXN0IGVuZCB3aXRoICJc
clxuIi4KLSAgICBjb25zdCBjaGFyKiBlbmQgPSBwICsgMTsKLSAgICBpZiAoKihlbmQgLSAyKSAh
PSAnXHInKSB7Ci0gICAgICAgIGZhaWx1cmVSZWFzb24gPSAiUmVxdWVzdCBsaW5lIGRvZXMgbm90
IGVuZCB3aXRoIENSTEYiX3M7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLQotICAgIC8vIFJl
cXVlc3QgTWV0aG9kLgotICAgIG1ldGhvZCA9IFN0cmluZyhkYXRhLCBzcGFjZTEgLSBkYXRhKTsg
Ly8gRm9yIGxlbmd0aCBzdWJ0cmFjdCAxIGZvciBzcGFjZSwgYnV0IGFkZCAxIGZvciBkYXRhIGJl
aW5nIHRoZSBmaXJzdCBjaGFyYWN0ZXIuCi0KLSAgICAvLyBSZXF1ZXN0IFVSSS4KLSAgICB1cmwg
PSBTdHJpbmcoc3BhY2UxICsgMSwgc3BhY2UyIC0gc3BhY2UxIC0gMSk7IC8vIEZvciBsZW5ndGgg
c3VidHJhY3QgMSBmb3Igc3BhY2UuCi0KLSAgICAvLyBIVFRQIFZlcnNpb24uCi0gICAgU3RyaW5n
IGh0dHBWZXJzaW9uU3RyaW5nKHNwYWNlMiArIDEsIGVuZCAtIHNwYWNlMiAtIDMpOyAvLyBGb3Ig
bGVuZ3RoIHN1YnRyYWN0IDEgZm9yIHNwYWNlLCBhbmQgMiBmb3IgIlxyXG4iLgotICAgIGlmICho
dHRwVmVyc2lvblN0cmluZy5sZW5ndGgoKSAhPSA4IHx8ICFodHRwVmVyc2lvblN0cmluZy5zdGFy
dHNXaXRoKCJIVFRQLzEuIikpCi0gICAgICAgIGh0dHBWZXJzaW9uID0gVW5rbm93bjsKLSAgICBl
bHNlIGlmIChodHRwVmVyc2lvblN0cmluZ1s3XSA9PSAnMCcpCi0gICAgICAgIGh0dHBWZXJzaW9u
ID0gSFRUUF8xXzA7Ci0gICAgZWxzZSBpZiAoaHR0cFZlcnNpb25TdHJpbmdbN10gPT0gJzEnKQot
ICAgICAgICBodHRwVmVyc2lvbiA9IEhUVFBfMV8xOwotICAgIGVsc2UKLSAgICAgICAgaHR0cFZl
cnNpb24gPSBVbmtub3duOwotCi0gICAgcmV0dXJuIGVuZCAtIGRhdGE7Ci19Ci0KIHN0YXRpYyBp
bmxpbmUgYm9vbCBpc1ZhbGlkSGVhZGVyTmFtZUNoYXJhY3Rlcihjb25zdCBjaGFyKiBjaGFyYWN0
ZXIpCiB7CiAgICAgLy8gaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzAjc2VjdGlv
bi0zLjIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBh
cnNlcnMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuaApp
bmRleCBlNTViNDhiODAxZDJjNTFlMDVhNzE2MjY3MzM0ZTNiODI4OGMwNWZiLi5kY2EzNWZlMzY3
YmRlYTcxYjhjOWQ4NWZmYWQ2MTU3NDU5NjMyM2Y5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oCkBAIC00NywxOCArNDcsMTggQEAgZW51bSBjbGFz
cyBYU1NQcm90ZWN0aW9uRGlzcG9zaXRpb24gewogICAgIEJsb2NrRW5hYmxlZCwKIH07CiAKLWVu
dW0gQ29udGVudFR5cGVPcHRpb25zRGlzcG9zaXRpb24gewotICAgIENvbnRlbnRUeXBlT3B0aW9u
c05vbmUsCi0gICAgQ29udGVudFR5cGVPcHRpb25zTm9zbmlmZgorZW51bSBjbGFzcyBDb250ZW50
VHlwZU9wdGlvbnNEaXNwb3NpdGlvbiB7CisgICAgTm9uZSwKKyAgICBOb3NuaWZmCiB9OwogCi1l
bnVtIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbiB7Ci0gICAgWEZyYW1lT3B0aW9uc05vbmUsCi0g
ICAgWEZyYW1lT3B0aW9uc0RlbnksCi0gICAgWEZyYW1lT3B0aW9uc1NhbWVPcmlnaW4sCi0gICAg
WEZyYW1lT3B0aW9uc0FsbG93QWxsLAotICAgIFhGcmFtZU9wdGlvbnNJbnZhbGlkLAotICAgIFhG
cmFtZU9wdGlvbnNDb25mbGljdAorZW51bSBjbGFzcyBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb24g
eworICAgIE5vbmUsCisgICAgRGVueSwKKyAgICBTYW1lT3JpZ2luLAorICAgIEFsbG93QWxsLAor
ICAgIEludmFsaWQsCisgICAgQ29uZmxpY3QKIH07CiAKIGVudW0gY2xhc3MgQ3Jvc3NPcmlnaW5S
ZXNvdXJjZVBvbGljeSB7CkBAIC05MSw4ICs5MSw2IEBAIFdFQkNPUkVfRVhQT1JUIGJvb2wgcGFy
c2VSYW5nZShjb25zdCBTdHJpbmcmLCBsb25nIGxvbmcmIHJhbmdlT2Zmc2V0LCBsb25nIGxvbmcm
CiBDb250ZW50VHlwZU9wdGlvbnNEaXNwb3NpdGlvbiBwYXJzZUNvbnRlbnRUeXBlT3B0aW9uc0hl
YWRlcihTdHJpbmdWaWV3IGhlYWRlcik7CiAKIC8vIFBhcnNpbmcgQ29tcGxldGUgSFRUUCBNZXNz
YWdlcy4KLWVudW0gSFRUUFZlcnNpb24geyBVbmtub3duLCBIVFRQXzFfMCwgSFRUUF8xXzEgfTsK
LXNpemVfdCBwYXJzZUhUVFBSZXF1ZXN0TGluZShjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVu
Z3RoLCBTdHJpbmcmIGZhaWx1cmVSZWFzb24sIFN0cmluZyYgbWV0aG9kLCBTdHJpbmcmIHVybCwg
SFRUUFZlcnNpb24mKTsKIHNpemVfdCBwYXJzZUhUVFBIZWFkZXIoY29uc3QgY2hhciogZGF0YSwg
c2l6ZV90IGxlbmd0aCwgU3RyaW5nJiBmYWlsdXJlUmVhc29uLCBTdHJpbmdWaWV3JiBuYW1lU3Ry
LCBTdHJpbmcmIHZhbHVlU3RyLCBib29sIHN0cmljdCA9IHRydWUpOwogc2l6ZV90IHBhcnNlSFRU
UFJlcXVlc3RCb2R5KGNvbnN0IGNoYXIqIGRhdGEsIHNpemVfdCBsZW5ndGgsIFZlY3Rvcjx1bnNp
Z25lZCBjaGFyPiYgYm9keSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvUmVzb3VyY2VSZXNwb25zZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKaW5kZXggMWMzYWMwOTNmMjI5ZGMw
ZjBhZDgxOTVmMThhZjBiZjE5NTM4ZjFmZS4uOWQ0YjMyMmRlNDkwY2EyZmM3MTUyNDI0MmQ4MDdi
ZmZiYmFmM2I0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9S
ZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAKQEAgLTQxLDcgKzQxLDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBib29sIGlzU2NyaXB0QWxsb3dlZEJ5Tm9zbmlmZihjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKLSAgICBpZiAocGFyc2VDb250ZW50VHlwZU9wdGlvbnNI
ZWFkZXIocmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpYQ29udGVudFR5
cGVPcHRpb25zKSkgIT0gQ29udGVudFR5cGVPcHRpb25zTm9zbmlmZikKKyAgICBpZiAocGFyc2VD
b250ZW50VHlwZU9wdGlvbnNIZWFkZXIocmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFk
ZXJOYW1lOjpYQ29udGVudFR5cGVPcHRpb25zKSkgIT0gQ29udGVudFR5cGVPcHRpb25zRGlzcG9z
aXRpb246Ok5vc25pZmYpCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIFN0cmluZyBtaW1lVHlw
ZSA9IGV4dHJhY3RNSU1FVHlwZUZyb21NZWRpYVR5cGUocmVzcG9uc2UuaHR0cEhlYWRlckZpZWxk
KEhUVFBIZWFkZXJOYW1lOjpDb250ZW50VHlwZSkpOwogICAgIHJldHVybiBNSU1FVHlwZVJlZ2lz
dHJ5Ojppc1N1cHBvcnRlZEphdmFTY3JpcHRNSU1FVHlwZShtaW1lVHlwZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAK
aW5kZXggNzAzYmVmZDBiOWJjYzkzMzAyZGU2M2E5MTlmYmU1YzE0ZjJhZGQ2OS4uNDQ4OGNhZGZk
ZjFiZTk2OTc3YWY5NzRjYTFhZTM5NTU4YWU5NTJhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNwcApAQCAtNTE1LDEy
ICs1MTUsMTIgQEAgYm9vbCBOZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnNob3VsZEludGVycnVwdExv
YWRGb3JYRnJhbWVPcHRpb25zKGNvbnN0IFN0cmluZyYgeEYKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCiAgICAgc3dpdGNoIChwYXJzZVhGcmFtZU9wdGlvbnNIZWFkZXIoeEZyYW1lT3B0aW9ucykp
IHsKLSAgICBjYXNlIFhGcmFtZU9wdGlvbnNOb25lOgotICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Fs
bG93QWxsOgorICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpOb25lOgorICAgIGNh
c2UgWEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpBbGxvd0FsbDoKICAgICAgICAgcmV0dXJuIGZh
bHNlOwotICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Rlbnk6CisgICAgY2FzZSBYRnJhbWVPcHRpb25z
RGlzcG9zaXRpb246OkRlbnk6CiAgICAgICAgIHJldHVybiB0cnVlOwotICAgIGNhc2UgWEZyYW1l
T3B0aW9uc1NhbWVPcmlnaW46IHsKKyAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6
U2FtZU9yaWdpbjogewogICAgICAgICBhdXRvIG9yaWdpbiA9IFNlY3VyaXR5T3JpZ2luOjpjcmVh
dGUodXJsKTsKICAgICAgICAgYXV0byB0b3BGcmFtZU9yaWdpbiA9IG1fcGFyYW1ldGVycy5mcmFt
ZUFuY2VzdG9yT3JpZ2lucy5sYXN0KCk7CiAgICAgICAgIGlmICghb3JpZ2luLT5pc1NhbWVTY2hl
bWVIb3N0UG9ydCgqdG9wRnJhbWVPcmlnaW4pKQpAQCAtNTMxLDEyICs1MzEsMTIgQEAgYm9vbCBO
ZXR3b3JrUmVzb3VyY2VMb2FkZXI6OnNob3VsZEludGVycnVwdExvYWRGb3JYRnJhbWVPcHRpb25z
KGNvbnN0IFN0cmluZyYgeEYKICAgICAgICAgfQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAg
fQotICAgIGNhc2UgWEZyYW1lT3B0aW9uc0NvbmZsaWN0OiB7CisgICAgY2FzZSBYRnJhbWVPcHRp
b25zRGlzcG9zaXRpb246OkNvbmZsaWN0OiB7CiAgICAgICAgIFN0cmluZyBlcnJvck1lc3NhZ2Ug
PSAiTXVsdGlwbGUgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVycyB3aXRoIGNvbmZsaWN0aW5nIHZh
bHVlcyAoJyIgKyB4RnJhbWVPcHRpb25zICsgIicpIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAn
IiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInLiBGYWxsaW5nIGJh
Y2sgdG8gJ0RFTlknLiI7CiAgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkFkZENvbnNv
bGVNZXNzYWdlIHsgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQsICBNZXNzYWdlU291cmNlOjpKUywg
TWVzc2FnZUxldmVsOjpFcnJvciwgZXJyb3JNZXNzYWdlLCBpZGVudGlmaWVyKCkgfSwgbV9wYXJh
bWV0ZXJzLndlYlBhZ2VJRCk7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KLSAgICBjYXNl
IFhGcmFtZU9wdGlvbnNJbnZhbGlkOiB7CisgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRp
b246OkludmFsaWQ6IHsKICAgICAgICAgU3RyaW5nIGVycm9yTWVzc2FnZSA9ICJJbnZhbGlkICdY
LUZyYW1lLU9wdGlvbnMnIGhlYWRlciBlbmNvdW50ZXJlZCB3aGVuIGxvYWRpbmcgJyIgKyB1cmwu
c3RyaW5nQ2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkgKyAiJzogJyIgKyB4RnJhbWVPcHRpb25z
ICsgIicgaXMgbm90IGEgcmVjb2duaXplZCBkaXJlY3RpdmUuIFRoZSBoZWFkZXIgd2lsbCBiZSBp
Z25vcmVkLiI7CiAgICAgICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkFkZENvbnNvbGVNZXNz
YWdlIHsgbV9wYXJhbWV0ZXJzLndlYkZyYW1lSUQsICBNZXNzYWdlU291cmNlOjpKUywgTWVzc2Fn
ZUxldmVsOjpFcnJvciwgZXJyb3JNZXNzYWdlLCBpZGVudGlmaWVyKCkgfSwgbV9wYXJhbWV0ZXJz
LndlYlBhZ2VJRCk7CiAgICAgICAgIHJldHVybiBmYWxzZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>404639</attachid>
            <date>2020-07-18 01:18:31 -0700</date>
            <delta_ts>2020-07-18 03:34:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214451-20200718091830.patch</filename>
            <type>text/plain</type>
            <size>14516</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0NTY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWFmNjc2NTM4YWYxOTgx
NWZhNGEwMWNlMTgyZWYwYmUxNTI4N2QwNi4uZjA1NmEwNzljOTU0MmMwNGY0OWUyN2Q1MWU0ZWU0
MDY0ZjQxMDEzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIwLTA3LTE4ICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgT25seSB1c2UgZW51bSBjbGFzc2Vz
IGluIEhUVFBQYXJzZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTQ0NTEKKworICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAg
ICAgICBPbmx5IHVzZSBlbnVtIGNsYXNzZXMgaW4gSFRUUFBhcnNlcnMgYnkgY29udmVydGluZyBY
RnJhbWVPcHRpb25zU2FtZU9yaWdpbgorICAgICAgICBhbmQgQ29udGVudFR5cGVPcHRpb25zRGlz
cG9zaXRpb24uIFJlbW92ZSBIVFRQVmVyc2lvbiBlbnVtIHNpbmNlIGl0cworICAgICAgICBvbmx5
IHVzZSBpcyBieSBwYXJzZUhUVFBSZXF1ZXN0TGluZSwgYnV0IHRoaXMgbWV0aG9kIGlzIHVudXNl
ZC4KKworICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGcmFtZUxvYWRlcjo6c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgorICAg
ICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNhY2hlZENTU1N0eWxlU2hlZXQ6Om1pbWVUeXBlQWxsb3dlZEJ5Tm9zbmlmZiBjb25z
dCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpwYXJzZUNvbnRlbnRUeXBlT3B0aW9uc0hlYWRlcik6CisgICAgICAgIChXZWJD
b3JlOjpwYXJzZVhGcmFtZU9wdGlvbnNIZWFkZXIpOgorICAgICAgICAoV2ViQ29yZTo6cGFyc2VI
VFRQUmVxdWVzdExpbmUpOiBEZWxldGVkLgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvSFRU
UFBhcnNlcnMuaDoKKyAgICAgICAgKCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjppc1Njcmlw
dEFsbG93ZWRCeU5vc25pZmYpOgorCiAyMDIwLTA3LTE3ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFw
cGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgZmluYWwgdmVzdGlnYXRlcyBvZiBTaW1wbGVDb2xv
cgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZwppbmRleCA1ZTk2Njc0YWRmNDUzZWQyMjIyZjQzYTMxODMzYTkxZWMzZjM2OWI0Li4z
Y2YxMmFjNDc1ZDAxZTgwYmM3YTk0N2JkMDUyOTk1ZjAyZWNiMTRiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE1IEBACisyMDIwLTA3LTE4ICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAg
ICAgICAgT25seSB1c2UgZW51bSBjbGFzc2VzIGluIEhUVFBQYXJzZXJzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ0NTEKKworICAgICAgICBSZXZp
ZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBBZGp1c3QgdG8gWEZyYW1lT3B0aW9uc0Rp
c3Bvc2l0aW9uIGNoYW5nZS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNv
dXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6
c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlvbnMpOgorCiAyMDIwLTA3LTE3ICBTYW0g
V2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgZmluYWwgdmVzdGln
YXRlcyBvZiBTaW1wbGVDb2xvcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zy
YW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5k
ZXggZjE0OGI1M2MwMzg0ODllOTI2MDQ0YTMzOWEwMWUyMjgyY2U0OGIwZC4uYjg1OTU5YTNhNThh
ZTkzMzFkNDRmNGFlNGVjOTQxYjcwNTcwOGUxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVM
b2FkZXIuY3BwCkBAIC0zNjE1LDcgKzM2MTUsNyBAQCBib29sIEZyYW1lTG9hZGVyOjpzaG91bGRJ
bnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmIGNvbnRlbnQsIGNvbgog
ICAgIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbiBkaXNwb3NpdGlvbiA9IHBhcnNlWEZyYW1lT3B0
aW9uc0hlYWRlcihjb250ZW50KTsKIAogICAgIHN3aXRjaCAoZGlzcG9zaXRpb24pIHsKLSAgICBj
YXNlIFhGcmFtZU9wdGlvbnNTYW1lT3JpZ2luOiB7CisgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlz
cG9zaXRpb246OlNhbWVPcmlnaW46IHsKICAgICAgICAgYXV0byBvcmlnaW4gPSBTZWN1cml0eU9y
aWdpbjo6Y3JlYXRlKHVybCk7CiAgICAgICAgIGlmICghb3JpZ2luLT5pc1NhbWVTY2hlbWVIb3N0
UG9ydCh0b3BGcmFtZS5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkKICAgICAgICAgICAg
IHJldHVybiB0cnVlOwpAQCAtMzYyNSwxNyArMzYyNSwxNyBAQCBib29sIEZyYW1lTG9hZGVyOjpz
aG91bGRJbnRlcnJ1cHRMb2FkRm9yWEZyYW1lT3B0aW9ucyhjb25zdCBTdHJpbmcmIGNvbnRlbnQs
IGNvbgogICAgICAgICB9CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9Ci0gICAgY2FzZSBY
RnJhbWVPcHRpb25zRGVueToKKyAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6RGVu
eToKICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zQWxsb3dBbGw6
CisgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkFsbG93QWxsOgogICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zQ29uZmxpY3Q6CisgICAgY2FzZSBY
RnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkNvbmZsaWN0OgogICAgICAgICBtX2ZyYW1lLmRvY3Vt
ZW50KCktPmFkZENvbnNvbGVNZXNzYWdlKE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNzYWdlTGV2ZWw6
OkVycm9yLCAiTXVsdGlwbGUgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVycyB3aXRoIGNvbmZsaWN0
aW5nIHZhbHVlcyAoJyIgKyBjb250ZW50ICsgIicpIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAn
IiArIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInLiBGYWxsaW5nIGJh
Y2sgdG8gJ0RFTlknLiIsIHJlcXVlc3RJZGVudGlmaWVyKTsKICAgICAgICAgcmV0dXJuIHRydWU7
Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zSW52YWxpZDoKKyAgICBjYXNlIFhGcmFtZU9wdGlvbnNE
aXNwb3NpdGlvbjo6SW52YWxpZDoKICAgICAgICAgbV9mcmFtZS5kb2N1bWVudCgpLT5hZGRDb25z
b2xlTWVzc2FnZShNZXNzYWdlU291cmNlOjpKUywgTWVzc2FnZUxldmVsOjpFcnJvciwgIkludmFs
aWQgJ1gtRnJhbWUtT3B0aW9ucycgaGVhZGVyIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiAr
IHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInOiAnIiArIGNvbnRlbnQg
KyAiJyBpcyBub3QgYSByZWNvZ25pemVkIGRpcmVjdGl2ZS4gVGhlIGhlYWRlciB3aWxsIGJlIGln
bm9yZWQuIiwgcmVxdWVzdElkZW50aWZpZXIpOwogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
Y2FzZSBYRnJhbWVPcHRpb25zTm9uZToKKyAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlv
bjo6Tm9uZToKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRD
U1NTdHlsZVNoZWV0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NT
dHlsZVNoZWV0LmNwcAppbmRleCA4ZThlZGJiMzg3MzNjZWMyNzJhZDBmN2NhMDNjYWM4YzQyMzBk
MWFhLi5kYTZiYzMwNGM1N2UzMzY1MWJhMWQ3YTdmNjAzMzQwOGYxMmQwNDViIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuY3BwCkBA
IC0xMjcsNyArMTI3LDcgQEAgU3RyaW5nIENhY2hlZENTU1N0eWxlU2hlZXQ6OnJlc3BvbnNlTUlN
RVR5cGUoKSBjb25zdAogCiBib29sIENhY2hlZENTU1N0eWxlU2hlZXQ6Om1pbWVUeXBlQWxsb3dl
ZEJ5Tm9zbmlmZigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIHBhcnNlQ29udGVudFR5cGVPcHRpb25z
SGVhZGVyKG1fcmVzcG9uc2UuaHR0cEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1lOjpYQ29udGVu
dFR5cGVPcHRpb25zKSkgIT0gQ29udGVudFR5cGVPcHRpb25zTm9zbmlmZiB8fCBlcXVhbExldHRl
cnNJZ25vcmluZ0FTQ0lJQ2FzZShyZXNwb25zZU1JTUVUeXBlKCksICJ0ZXh0L2NzcyIpOworICAg
IHJldHVybiBwYXJzZUNvbnRlbnRUeXBlT3B0aW9uc0hlYWRlcihtX3Jlc3BvbnNlLmh0dHBIZWFk
ZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6WENvbnRlbnRUeXBlT3B0aW9ucykpICE9IENvbnRlbnRU
eXBlT3B0aW9uc0Rpc3Bvc2l0aW9uOjpOb3NuaWZmIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVND
SUlDYXNlKHJlc3BvbnNlTUlNRVR5cGUoKSwgInRleHQvY3NzIik7CiB9CiAKIGJvb2wgQ2FjaGVk
Q1NTU3R5bGVTaGVldDo6Y2FuVXNlU2hlZXQoTUlNRVR5cGVDaGVja0hpbnQgbWltZVR5cGVDaGVj
a0hpbnQsIGJvb2wqIGhhc1ZhbGlkTUlNRVR5cGUpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuY3BwCmluZGV4IDYwOWMwYmFmNWQzMDM1NjU4
OGQ0OWNmMWI0OTgyMTYwNzJkNDFlZGMuLjA3ODVhMzAzYWQxNzJjNzc2MTM1ZGU0NWZhMDcxMWFi
NDFmODAxZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRU
UFBhcnNlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBh
cnNlcnMuY3BwCkBAIC01MzgsOCArNTM4LDggQEAgQ29udGVudFR5cGVPcHRpb25zRGlzcG9zaXRp
b24gcGFyc2VDb250ZW50VHlwZU9wdGlvbnNIZWFkZXIoU3RyaW5nVmlldyBoZWFkZXIpCiB7CiAg
ICAgU3RyaW5nVmlldyBsZWZ0VG9rZW4gPSBoZWFkZXIubGVmdChoZWFkZXIuZmluZCgnLCcpKTsK
ICAgICBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uoc3RyaXBMZWFkaW5nQW5kVHJh
aWxpbmdIVFRQU3BhY2VzKGxlZnRUb2tlbiksICJub3NuaWZmIikpCi0gICAgICAgIHJldHVybiBD
b250ZW50VHlwZU9wdGlvbnNOb3NuaWZmOwotICAgIHJldHVybiBDb250ZW50VHlwZU9wdGlvbnNO
b25lOworICAgICAgICByZXR1cm4gQ29udGVudFR5cGVPcHRpb25zRGlzcG9zaXRpb246Ok5vc25p
ZmY7CisgICAgcmV0dXJuIENvbnRlbnRUeXBlT3B0aW9uc0Rpc3Bvc2l0aW9uOjpOb25lOwogfQog
CiAvLyBGb3IgZXhhbXBsZTogIkhUVFAvMS4xIDIwMCBPSyIgPT4gIk9LIi4KQEAgLTU1OSwyNyAr
NTU5LDI3IEBAIEF0b21TdHJpbmcgZXh0cmFjdFJlYXNvblBocmFzZUZyb21IVFRQU3RhdHVzTGlu
ZShjb25zdCBTdHJpbmcmIHN0YXR1c0xpbmUpCiAKIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbiBw
YXJzZVhGcmFtZU9wdGlvbnNIZWFkZXIoY29uc3QgU3RyaW5nJiBoZWFkZXIpCiB7Ci0gICAgWEZy
YW1lT3B0aW9uc0Rpc3Bvc2l0aW9uIHJlc3VsdCA9IFhGcmFtZU9wdGlvbnNOb25lOworICAgIFhG
cmFtZU9wdGlvbnNEaXNwb3NpdGlvbiByZXN1bHQgPSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246
Ok5vbmU7CiAKICAgICBpZiAoaGVhZGVyLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIHJlc3Vs
dDsKIAogICAgIGZvciAoYXV0byYgY3VycmVudEhlYWRlciA6IGhlYWRlci5zcGxpdCgnLCcpKSB7
CiAgICAgICAgIGN1cnJlbnRIZWFkZXIgPSBjdXJyZW50SGVhZGVyLnN0cmlwV2hpdGVTcGFjZSgp
OwotICAgICAgICBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb24gY3VycmVudFZhbHVlID0gWEZyYW1l
T3B0aW9uc05vbmU7CisgICAgICAgIFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbiBjdXJyZW50VmFs
dWUgPSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246Ok5vbmU7CiAgICAgICAgIGlmIChlcXVhbExl
dHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShjdXJyZW50SGVhZGVyLCAiZGVueSIpKQotICAgICAgICAg
ICAgY3VycmVudFZhbHVlID0gWEZyYW1lT3B0aW9uc0Rlbnk7CisgICAgICAgICAgICBjdXJyZW50
VmFsdWUgPSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkRlbnk7CiAgICAgICAgIGVsc2UgaWYg
KGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGN1cnJlbnRIZWFkZXIsICJzYW1lb3JpZ2lu
IikpCi0gICAgICAgICAgICBjdXJyZW50VmFsdWUgPSBYRnJhbWVPcHRpb25zU2FtZU9yaWdpbjsK
KyAgICAgICAgICAgIGN1cnJlbnRWYWx1ZSA9IFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6U2Ft
ZU9yaWdpbjsKICAgICAgICAgZWxzZSBpZiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2Uo
Y3VycmVudEhlYWRlciwgImFsbG93YWxsIikpCi0gICAgICAgICAgICBjdXJyZW50VmFsdWUgPSBY
RnJhbWVPcHRpb25zQWxsb3dBbGw7CisgICAgICAgICAgICBjdXJyZW50VmFsdWUgPSBYRnJhbWVP
cHRpb25zRGlzcG9zaXRpb246OkFsbG93QWxsOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBj
dXJyZW50VmFsdWUgPSBYRnJhbWVPcHRpb25zSW52YWxpZDsKKyAgICAgICAgICAgIGN1cnJlbnRW
YWx1ZSA9IFhGcmFtZU9wdGlvbnNEaXNwb3NpdGlvbjo6SW52YWxpZDsKIAotICAgICAgICBpZiAo
cmVzdWx0ID09IFhGcmFtZU9wdGlvbnNOb25lKQorICAgICAgICBpZiAocmVzdWx0ID09IFhGcmFt
ZU9wdGlvbnNEaXNwb3NpdGlvbjo6Tm9uZSkKICAgICAgICAgICAgIHJlc3VsdCA9IGN1cnJlbnRW
YWx1ZTsKICAgICAgICAgZWxzZSBpZiAocmVzdWx0ICE9IGN1cnJlbnRWYWx1ZSkKLSAgICAgICAg
ICAgIHJldHVybiBYRnJhbWVPcHRpb25zQ29uZmxpY3Q7CisgICAgICAgICAgICByZXR1cm4gWEZy
YW1lT3B0aW9uc0Rpc3Bvc2l0aW9uOjpDb25mbGljdDsKICAgICB9CiAgICAgcmV0dXJuIHJlc3Vs
dDsKIH0KQEAgLTY0Miw2OSArNjQyLDYgQEAgYm9vbCBwYXJzZVJhbmdlKGNvbnN0IFN0cmluZyYg
cmFuZ2UsIGxvbmcgbG9uZyYgcmFuZ2VPZmZzZXQsIGxvbmcgbG9uZyYgcmFuZ2VFbmQKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAotLy8gSFRUUC8xLjEgLSBSRkMgMjYxNgotLy8gaHR0cDovL3d3dy53
My5vcmcvUHJvdG9jb2xzL3JmYzI2MTYvcmZjMjYxNi1zZWM1Lmh0bWwjc2VjNS4xCi0vLyBSZXF1
ZXN0LUxpbmUgPSBNZXRob2QgU1AgUmVxdWVzdC1VUkkgU1AgSFRUUC1WZXJzaW9uIENSTEYKLXNp
emVfdCBwYXJzZUhUVFBSZXF1ZXN0TGluZShjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgbGVuZ3Ro
LCBTdHJpbmcmIGZhaWx1cmVSZWFzb24sIFN0cmluZyYgbWV0aG9kLCBTdHJpbmcmIHVybCwgSFRU
UFZlcnNpb24mIGh0dHBWZXJzaW9uKQotewotICAgIG1ldGhvZCA9IFN0cmluZygpOwotICAgIHVy
bCA9IFN0cmluZygpOwotICAgIGh0dHBWZXJzaW9uID0gVW5rbm93bjsKLQotICAgIGNvbnN0IGNo
YXIqIHNwYWNlMSA9IDA7Ci0gICAgY29uc3QgY2hhciogc3BhY2UyID0gMDsKLSAgICBjb25zdCBj
aGFyKiBwOwotICAgIHNpemVfdCBjb25zdW1lZExlbmd0aDsKLQotICAgIGZvciAocCA9IGRhdGEs
IGNvbnN1bWVkTGVuZ3RoID0gMDsgY29uc3VtZWRMZW5ndGggPCBsZW5ndGg7IHArKywgY29uc3Vt
ZWRMZW5ndGgrKykgewotICAgICAgICBpZiAoKnAgPT0gJyAnKSB7Ci0gICAgICAgICAgICBpZiAo
IXNwYWNlMSkKLSAgICAgICAgICAgICAgICBzcGFjZTEgPSBwOwotICAgICAgICAgICAgZWxzZSBp
ZiAoIXNwYWNlMikKLSAgICAgICAgICAgICAgICBzcGFjZTIgPSBwOwotICAgICAgICB9IGVsc2Ug
aWYgKCpwID09ICdcbicpCi0gICAgICAgICAgICBicmVhazsKLSAgICB9Ci0KLSAgICAvLyBIYXZl
bid0IGZpbmlzaGVkIGhlYWRlciBsaW5lLgotICAgIGlmIChjb25zdW1lZExlbmd0aCA9PSBsZW5n
dGgpIHsKLSAgICAgICAgZmFpbHVyZVJlYXNvbiA9ICJJbmNvbXBsZXRlIFJlcXVlc3QgTGluZSJf
czsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotCi0gICAgLy8gUmVxdWVzdExpbmUgZG9lcyBu
b3QgY29udGFpbiAzIHBhcnRzLgotICAgIGlmICghc3BhY2UxIHx8ICFzcGFjZTIpIHsKLSAgICAg
ICAgZmFpbHVyZVJlYXNvbiA9ICJSZXF1ZXN0IExpbmUgZG9lcyBub3QgYXBwZWFyIHRvIGNvbnRh
aW46IDxNZXRob2Q+IDxVcmw+IDxIVFRQVmVyc2lvbj4uIl9zOwotICAgICAgICByZXR1cm4gMDsK
LSAgICB9Ci0KLSAgICAvLyBUaGUgbGluZSBtdXN0IGVuZCB3aXRoICJcclxuIi4KLSAgICBjb25z
dCBjaGFyKiBlbmQgPSBwICsgMTsKLSAgICBpZiAoKihlbmQgLSAyKSAhPSAnXHInKSB7Ci0gICAg
ICAgIGZhaWx1cmVSZWFzb24gPSAiUmVxdWVzdCBsaW5lIGRvZXMgbm90IGVuZCB3aXRoIENSTEYi
X3M7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLQotICAgIC8vIFJlcXVlc3QgTWV0aG9kLgot
ICAgIG1ldGhvZCA9IFN0cmluZyhkYXRhLCBzcGFjZTEgLSBkYXRhKTsgLy8gRm9yIGxlbmd0aCBz
dWJ0cmFjdCAxIGZvciBzcGFjZSwgYnV0IGFkZCAxIGZvciBkYXRhIGJlaW5nIHRoZSBmaXJzdCBj
aGFyYWN0ZXIuCi0KLSAgICAvLyBSZXF1ZXN0IFVSSS4KLSAgICB1cmwgPSBTdHJpbmcoc3BhY2Ux
ICsgMSwgc3BhY2UyIC0gc3BhY2UxIC0gMSk7IC8vIEZvciBsZW5ndGggc3VidHJhY3QgMSBmb3Ig
c3BhY2UuCi0KLSAgICAvLyBIVFRQIFZlcnNpb24uCi0gICAgU3RyaW5nIGh0dHBWZXJzaW9uU3Ry
aW5nKHNwYWNlMiArIDEsIGVuZCAtIHNwYWNlMiAtIDMpOyAvLyBGb3IgbGVuZ3RoIHN1YnRyYWN0
IDEgZm9yIHNwYWNlLCBhbmQgMiBmb3IgIlxyXG4iLgotICAgIGlmIChodHRwVmVyc2lvblN0cmlu
Zy5sZW5ndGgoKSAhPSA4IHx8ICFodHRwVmVyc2lvblN0cmluZy5zdGFydHNXaXRoKCJIVFRQLzEu
IikpCi0gICAgICAgIGh0dHBWZXJzaW9uID0gVW5rbm93bjsKLSAgICBlbHNlIGlmIChodHRwVmVy
c2lvblN0cmluZ1s3XSA9PSAnMCcpCi0gICAgICAgIGh0dHBWZXJzaW9uID0gSFRUUF8xXzA7Ci0g
ICAgZWxzZSBpZiAoaHR0cFZlcnNpb25TdHJpbmdbN10gPT0gJzEnKQotICAgICAgICBodHRwVmVy
c2lvbiA9IEhUVFBfMV8xOwotICAgIGVsc2UKLSAgICAgICAgaHR0cFZlcnNpb24gPSBVbmtub3du
OwotCi0gICAgcmV0dXJuIGVuZCAtIGRhdGE7Ci19Ci0KIHN0YXRpYyBpbmxpbmUgYm9vbCBpc1Zh
bGlkSGVhZGVyTmFtZUNoYXJhY3Rlcihjb25zdCBjaGFyKiBjaGFyYWN0ZXIpCiB7CiAgICAgLy8g
aHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcyMzAjc2VjdGlvbi0zLjIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuaCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvSFRUUFBhcnNlcnMuaAppbmRleCBlNTViNDhiODAx
ZDJjNTFlMDVhNzE2MjY3MzM0ZTNiODI4OGMwNWZiLi5mNWVkYjA1ZDFjNDJmNzBmYmI2OGY3ODU5
MDgyZTcwOWFkMTNlNDc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL0hUVFBQYXJzZXJzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9I
VFRQUGFyc2Vycy5oCkBAIC00NywxOCArNDcsMTggQEAgZW51bSBjbGFzcyBYU1NQcm90ZWN0aW9u
RGlzcG9zaXRpb24gewogICAgIEJsb2NrRW5hYmxlZCwKIH07CiAKLWVudW0gQ29udGVudFR5cGVP
cHRpb25zRGlzcG9zaXRpb24gewotICAgIENvbnRlbnRUeXBlT3B0aW9uc05vbmUsCi0gICAgQ29u
dGVudFR5cGVPcHRpb25zTm9zbmlmZgorZW51bSBjbGFzcyBDb250ZW50VHlwZU9wdGlvbnNEaXNw
b3NpdGlvbiA6IGJvb2wgeworICAgIE5vbmUsCisgICAgTm9zbmlmZgogfTsKIAotZW51bSBYRnJh
bWVPcHRpb25zRGlzcG9zaXRpb24gewotICAgIFhGcmFtZU9wdGlvbnNOb25lLAotICAgIFhGcmFt
ZU9wdGlvbnNEZW55LAotICAgIFhGcmFtZU9wdGlvbnNTYW1lT3JpZ2luLAotICAgIFhGcmFtZU9w
dGlvbnNBbGxvd0FsbCwKLSAgICBYRnJhbWVPcHRpb25zSW52YWxpZCwKLSAgICBYRnJhbWVPcHRp
b25zQ29uZmxpY3QKK2VudW0gY2xhc3MgWEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9uIDogdWludDhf
dCB7CisgICAgTm9uZSwKKyAgICBEZW55LAorICAgIFNhbWVPcmlnaW4sCisgICAgQWxsb3dBbGws
CisgICAgSW52YWxpZCwKKyAgICBDb25mbGljdAogfTsKIAogZW51bSBjbGFzcyBDcm9zc09yaWdp
blJlc291cmNlUG9saWN5IHsKQEAgLTkxLDggKzkxLDYgQEAgV0VCQ09SRV9FWFBPUlQgYm9vbCBw
YXJzZVJhbmdlKGNvbnN0IFN0cmluZyYsIGxvbmcgbG9uZyYgcmFuZ2VPZmZzZXQsIGxvbmcgbG9u
ZyYKIENvbnRlbnRUeXBlT3B0aW9uc0Rpc3Bvc2l0aW9uIHBhcnNlQ29udGVudFR5cGVPcHRpb25z
SGVhZGVyKFN0cmluZ1ZpZXcgaGVhZGVyKTsKIAogLy8gUGFyc2luZyBDb21wbGV0ZSBIVFRQIE1l
c3NhZ2VzLgotZW51bSBIVFRQVmVyc2lvbiB7IFVua25vd24sIEhUVFBfMV8wLCBIVFRQXzFfMSB9
Owotc2l6ZV90IHBhcnNlSFRUUFJlcXVlc3RMaW5lKGNvbnN0IGNoYXIqIGRhdGEsIHNpemVfdCBs
ZW5ndGgsIFN0cmluZyYgZmFpbHVyZVJlYXNvbiwgU3RyaW5nJiBtZXRob2QsIFN0cmluZyYgdXJs
LCBIVFRQVmVyc2lvbiYpOwogc2l6ZV90IHBhcnNlSFRUUEhlYWRlcihjb25zdCBjaGFyKiBkYXRh
LCBzaXplX3QgbGVuZ3RoLCBTdHJpbmcmIGZhaWx1cmVSZWFzb24sIFN0cmluZ1ZpZXcmIG5hbWVT
dHIsIFN0cmluZyYgdmFsdWVTdHIsIGJvb2wgc3RyaWN0ID0gdHJ1ZSk7CiBzaXplX3QgcGFyc2VI
VFRQUmVxdWVzdEJvZHkoY29uc3QgY2hhciogZGF0YSwgc2l6ZV90IGxlbmd0aCwgVmVjdG9yPHVu
c2lnbmVkIGNoYXI+JiBib2R5KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9SZXNvdXJjZVJlc3BvbnNlQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmNwcAppbmRleCAxYzNhYzA5M2YyMjlk
YzBmMGFkODE5NWYxOGFmMGJmMTk1MzhmMWZlLi45ZDRiMzIyZGU0OTBjYTJmYzcxNTI0MjQyZDgw
N2JmZmJiYWYzYjQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L1Jlc291cmNlUmVzcG9uc2VCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL1Jlc291cmNlUmVzcG9uc2VCYXNlLmNwcApAQCAtNDEsNyArNDEsNyBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKIGJvb2wgaXNTY3JpcHRBbGxvd2VkQnlOb3NuaWZmKGNvbnN0IFJlc291
cmNlUmVzcG9uc2UmIHJlc3BvbnNlKQogewotICAgIGlmIChwYXJzZUNvbnRlbnRUeXBlT3B0aW9u
c0hlYWRlcihyZXNwb25zZS5odHRwSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlhDb250ZW50
VHlwZU9wdGlvbnMpKSAhPSBDb250ZW50VHlwZU9wdGlvbnNOb3NuaWZmKQorICAgIGlmIChwYXJz
ZUNvbnRlbnRUeXBlT3B0aW9uc0hlYWRlcihyZXNwb25zZS5odHRwSGVhZGVyRmllbGQoSFRUUEhl
YWRlck5hbWU6OlhDb250ZW50VHlwZU9wdGlvbnMpKSAhPSBDb250ZW50VHlwZU9wdGlvbnNEaXNw
b3NpdGlvbjo6Tm9zbmlmZikKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgU3RyaW5nIG1pbWVU
eXBlID0gZXh0cmFjdE1JTUVUeXBlRnJvbU1lZGlhVHlwZShyZXNwb25zZS5odHRwSGVhZGVyRmll
bGQoSFRUUEhlYWRlck5hbWU6OkNvbnRlbnRUeXBlKSk7CiAgICAgcmV0dXJuIE1JTUVUeXBlUmVn
aXN0cnk6OmlzU3VwcG9ydGVkSmF2YVNjcmlwdE1JTUVUeXBlKG1pbWVUeXBlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNw
cCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Jlc291cmNlTG9hZGVyLmNw
cAppbmRleCA3MDNiZWZkMGI5YmNjOTMzMDJkZTYzYTkxOWZiZTVjMTRmMmFkZDY5Li40NDg4Y2Fk
ZmRmMWJlOTY5NzdhZjk3NGNhMWFlMzk1NThhZTk1MmE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtSZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUmVzb3VyY2VMb2FkZXIuY3BwCkBAIC01MTUs
MTIgKzUxNSwxMiBAQCBib29sIE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkSW50ZXJydXB0
TG9hZEZvclhGcmFtZU9wdGlvbnMoY29uc3QgU3RyaW5nJiB4RgogICAgICAgICByZXR1cm4gZmFs
c2U7CiAKICAgICBzd2l0Y2ggKHBhcnNlWEZyYW1lT3B0aW9uc0hlYWRlcih4RnJhbWVPcHRpb25z
KSkgewotICAgIGNhc2UgWEZyYW1lT3B0aW9uc05vbmU6Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25z
QWxsb3dBbGw6CisgICAgY2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246Ok5vbmU6CisgICAg
Y2FzZSBYRnJhbWVPcHRpb25zRGlzcG9zaXRpb246OkFsbG93QWxsOgogICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zRGVueToKKyAgICBjYXNlIFhGcmFtZU9wdGlv
bnNEaXNwb3NpdGlvbjo6RGVueToKICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgY2FzZSBYRnJh
bWVPcHRpb25zU2FtZU9yaWdpbjogeworICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Rpc3Bvc2l0aW9u
OjpTYW1lT3JpZ2luOiB7CiAgICAgICAgIGF1dG8gb3JpZ2luID0gU2VjdXJpdHlPcmlnaW46OmNy
ZWF0ZSh1cmwpOwogICAgICAgICBhdXRvIHRvcEZyYW1lT3JpZ2luID0gbV9wYXJhbWV0ZXJzLmZy
YW1lQW5jZXN0b3JPcmlnaW5zLmxhc3QoKTsKICAgICAgICAgaWYgKCFvcmlnaW4tPmlzU2FtZVNj
aGVtZUhvc3RQb3J0KCp0b3BGcmFtZU9yaWdpbikpCkBAIC01MzEsMTIgKzUzMSwxMiBAQCBib29s
IE5ldHdvcmtSZXNvdXJjZUxvYWRlcjo6c2hvdWxkSW50ZXJydXB0TG9hZEZvclhGcmFtZU9wdGlv
bnMoY29uc3QgU3RyaW5nJiB4RgogICAgICAgICB9CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICB9Ci0gICAgY2FzZSBYRnJhbWVPcHRpb25zQ29uZmxpY3Q6IHsKKyAgICBjYXNlIFhGcmFtZU9w
dGlvbnNEaXNwb3NpdGlvbjo6Q29uZmxpY3Q6IHsKICAgICAgICAgU3RyaW5nIGVycm9yTWVzc2Fn
ZSA9ICJNdWx0aXBsZSAnWC1GcmFtZS1PcHRpb25zJyBoZWFkZXJzIHdpdGggY29uZmxpY3Rpbmcg
dmFsdWVzICgnIiArIHhGcmFtZU9wdGlvbnMgKyAiJykgZW5jb3VudGVyZWQgd2hlbiBsb2FkaW5n
ICciICsgdXJsLnN0cmluZ0NlbnRlckVsbGlwc2l6ZWRUb0xlbmd0aCgpICsgIicuIEZhbGxpbmcg
YmFjayB0byAnREVOWScuIjsKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6QWRkQ29u
c29sZU1lc3NhZ2UgeyBtX3BhcmFtZXRlcnMud2ViRnJhbWVJRCwgIE1lc3NhZ2VTb3VyY2U6OkpT
LCBNZXNzYWdlTGV2ZWw6OkVycm9yLCBlcnJvck1lc3NhZ2UsIGlkZW50aWZpZXIoKSB9LCBtX3Bh
cmFtZXRlcnMud2ViUGFnZUlEKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQotICAgIGNh
c2UgWEZyYW1lT3B0aW9uc0ludmFsaWQ6IHsKKyAgICBjYXNlIFhGcmFtZU9wdGlvbnNEaXNwb3Np
dGlvbjo6SW52YWxpZDogewogICAgICAgICBTdHJpbmcgZXJyb3JNZXNzYWdlID0gIkludmFsaWQg
J1gtRnJhbWUtT3B0aW9ucycgaGVhZGVyIGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiArIHVy
bC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSArICInOiAnIiArIHhGcmFtZU9wdGlv
bnMgKyAiJyBpcyBub3QgYSByZWNvZ25pemVkIGRpcmVjdGl2ZS4gVGhlIGhlYWRlciB3aWxsIGJl
IGlnbm9yZWQuIjsKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUGFnZTo6QWRkQ29uc29sZU1l
c3NhZ2UgeyBtX3BhcmFtZXRlcnMud2ViRnJhbWVJRCwgIE1lc3NhZ2VTb3VyY2U6OkpTLCBNZXNz
YWdlTGV2ZWw6OkVycm9yLCBlcnJvck1lc3NhZ2UsIGlkZW50aWZpZXIoKSB9LCBtX3BhcmFtZXRl
cnMud2ViUGFnZUlEKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>