<?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>210407</bug_id>
          
          <creation_ts>2020-04-12 10:45:43 -0700</creation_ts>
          <short_desc>Remove addExtraFieldsToSubresourceRequest</short_desc>
          <delta_ts>2020-04-13 01:05:14 -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>
          
          
          <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>1640700</commentid>
    <comment_count>0</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-12 10:45:43 -0700</bug_when>
    <thetext>Remove addExtraFieldsToSubresourceRequest since it can be replaced by
calling addExtraFieldsToRequest. The loadType parameter is not taken
into account by defaultRequestCachingPolicy so FrameLoadType::Standard
rather than m_loadType is passed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640701</commentid>
    <comment_count>1</comment_count>
      <attachid>396231</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-12 10:47:41 -0700</bug_when>
    <thetext>Created attachment 396231
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640732</commentid>
    <comment_count>2</comment_count>
      <attachid>396231</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-04-12 12:55:10 -0700</bug_when>
    <thetext>Comment on attachment 396231
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        Remove addExtraFieldsToSubresourceRequest since it can be replaced by
&gt; +        calling addExtraFieldsToRequest. The loadType parameter is not taken
&gt; +        into account by defaultRequestCachingPolicy so FrameLoadType::Standard
&gt; +        rather than m_loadType is passed.

I’m not completely comfortable with passing a &quot;wrong&quot; load type, knowing that the load type doesn’t matter. Is there some better way to resolve this.

&gt; Source/WebCore/loader/FrameLoader.cpp:3059
&gt; +    addExtraFieldsToRequest(initialRequest, FrameLoadType::Standard, false);

I’m not thrilled with spreading more mysterious &quot;false&quot; arguments in even more places in the code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640736</commentid>
    <comment_count>3</comment_count>
      <attachid>396231</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-12 14:20:37 -0700</bug_when>
    <thetext>Comment on attachment 396231
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:11
&gt;&gt; +        rather than m_loadType is passed.
&gt; 
&gt; I’m not completely comfortable with passing a &quot;wrong&quot; load type, knowing that the load type doesn’t matter. Is there some better way to resolve this.

I gave the LoadType parameter a default value so addExtraFieldsToRequest calls for subresources do not need to specify anything for it.

&gt;&gt; Source/WebCore/loader/FrameLoader.cpp:3059
&gt;&gt; +    addExtraFieldsToRequest(initialRequest, FrameLoadType::Standard, false);
&gt; 
&gt; I’m not thrilled with spreading more mysterious &quot;false&quot; arguments in even more places in the code.

Fair enough, I added an enum</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640737</commentid>
    <comment_count>4</comment_count>
      <attachid>396239</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-12 14:21:16 -0700</bug_when>
    <thetext>Created attachment 396239
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640739</commentid>
    <comment_count>5</comment_count>
      <attachid>396239</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-04-12 14:30:43 -0700</bug_when>
    <thetext>Comment on attachment 396239
Patch

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

OK

&gt; Source/WebCore/loader/FrameLoader.h:94
&gt; +enum class MainResource : bool { Yes, No };

I think the name should be either ForMainResource or IsMainResource. A type named MainResource sounds more like a resource than an indicator of the nature of a resource.

Also, I suggest { No, Yes } so we have the traditional representation of 0 for false and 1 for true.

&gt; Source/WebCore/loader/FrameLoader.h:332
&gt; +    void addExtraFieldsToRequest(ResourceRequest&amp;, MainResource, FrameLoadType = FrameLoadType::Standard);

How should a caller know when it’s important to pass in a load type, and when it’s not important?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640794</commentid>
    <comment_count>6</comment_count>
      <attachid>396259</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-12 23:55:07 -0700</bug_when>
    <thetext>Created attachment 396259
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640798</commentid>
    <comment_count>7</comment_count>
      <attachid>396239</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-13 00:39:45 -0700</bug_when>
    <thetext>Comment on attachment 396239
Patch

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

&gt;&gt; Source/WebCore/loader/FrameLoader.h:94
&gt;&gt; +enum class MainResource : bool { Yes, No };
&gt; 
&gt; I think the name should be either ForMainResource or IsMainResource. A type named MainResource sounds more like a resource than an indicator of the nature of a resource.
&gt; 
&gt; Also, I suggest { No, Yes } so we have the traditional representation of 0 for false and 1 for true.

That is better indeed, fixed.

&gt;&gt; Source/WebCore/loader/FrameLoader.h:332
&gt;&gt; +    void addExtraFieldsToRequest(ResourceRequest&amp;, MainResource, FrameLoadType = FrameLoadType::Standard);
&gt; 
&gt; How should a caller know when it’s important to pass in a load type, and when it’s not important?

It is hard to make it clear but I added a comment for it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640800</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-13 01:04:43 -0700</bug_when>
    <thetext>Committed r259997: &lt;https://trac.webkit.org/changeset/259997&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 396259.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1640801</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-13 01:05:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/61703487&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396231</attachid>
            <date>2020-04-12 10:47:41 -0700</date>
            <delta_ts>2020-04-12 14:21:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210407-20200412194739.patch</filename>
            <type>text/plain</type>
            <size>6992</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5OTQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjMwNDNmODE5NWYxNDBm
MmI5OWM1MmI4ZTZiYzMzYTVlY2IxYWFiZC4uYzYxYWRlZGU0YmEwYjNlYTk5YzUwYmY4YTkzMzk5
MjZjOTUzNjc0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA0LTEyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmVtb3ZlIGFkZEV4dHJhRmllbGRz
VG9TdWJyZXNvdXJjZVJlcXVlc3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxMDQwNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlbW92ZSBhZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0IHNp
bmNlIGl0IGNhbiBiZSByZXBsYWNlZCBieQorICAgICAgICBjYWxsaW5nIGFkZEV4dHJhRmllbGRz
VG9SZXF1ZXN0LiBUaGUgbG9hZFR5cGUgcGFyYW1ldGVyIGlzIG5vdCB0YWtlbgorICAgICAgICBp
bnRvIGFjY291bnQgYnkgZGVmYXVsdFJlcXVlc3RDYWNoaW5nUG9saWN5IHNvIEZyYW1lTG9hZFR5
cGU6OlN0YW5kYXJkCisgICAgICAgIHJhdGhlciB0aGFuIG1fbG9hZFR5cGUgaXMgcGFzc2VkLgor
CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZy
YW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyOjphZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0KTogRGVsZXRl
ZC4KKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvUGlu
Z0xvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQaW5nTG9hZGVyOjpsb2FkSW1hZ2UpOgor
ICAgICAgICAoV2ViQ29yZTo6UGluZ0xvYWRlcjo6c2VuZFBpbmcpOgorICAgICAgICAoV2ViQ29y
ZTo6UGluZ0xvYWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydCk6CisgICAgICAgICogbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNl
Ojpsb2FkKToKKwogMjAyMC0wNC0xMSAgSmFjayBMZWUgIDxzaGloY2hpZWhfbGVlQGFwcGxlLmNv
bT4KIAogICAgICAgICBJbmZpbml0ZSBsb29wIGluIEluc2VydExpc3RDb21tYW5kOjpkb0FwcGx5
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4IDYyOTZhYWY4MTA0MTk4
NGJiNTE1ZThmNTUyOTJiMGQ0NGUxYjNhZjYuLjNjYTA5NjdmYTU2YWYyZDQxZTc4MDdkY2M0NWIx
NTgyZjFiZWQyZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRl
ci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcApAQCAtMjg2
OSwxMSArMjg2OSw2IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmRldGFjaFZpZXdzQW5kRG9jdW1lbnRM
b2FkZXIoKQogICAgIG1fY2xpZW50LT5kZXRhY2hlZEZyb21QYXJlbnQzKCk7CiB9CiAKLXZvaWQg
RnJhbWVMb2FkZXI6OmFkZEV4dHJhRmllbGRzVG9TdWJyZXNvdXJjZVJlcXVlc3QoUmVzb3VyY2VS
ZXF1ZXN0JiByZXF1ZXN0KQotewotICAgIGFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KHJlcXVlc3Qs
IG1fbG9hZFR5cGUsIGZhbHNlKTsKLX0KLQogUmVzb3VyY2VSZXF1ZXN0Q2FjaGVQb2xpY3kgRnJh
bWVMb2FkZXI6OmRlZmF1bHRSZXF1ZXN0Q2FjaGluZ1BvbGljeShjb25zdCBSZXNvdXJjZVJlcXVl
c3QmIHJlcXVlc3QsIEZyYW1lTG9hZFR5cGUgbG9hZFR5cGUsIGJvb2wgaXNNYWluUmVzb3VyY2Up
CiB7CiAgICAgaWYgKG1fb3ZlcnJpZGVDYWNoZVBvbGljeUZvclRlc3RpbmcpCkBAIC0zMDYxLDcg
KzMwNTYsNyBAQCB1bnNpZ25lZCBsb25nIEZyYW1lTG9hZGVyOjpsb2FkUmVzb3VyY2VTeW5jaHJv
bm91c2x5KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdQogCiAgICAgaW5pdGlhbFJlcXVlc3Qu
c2V0Rmlyc3RQYXJ0eUZvckNvb2tpZXMobV9mcmFtZS5tYWluRnJhbWUoKS5sb2FkZXIoKS5kb2N1
bWVudExvYWRlcigpLT5yZXF1ZXN0KCkudXJsKCkpOwogICAgIAotICAgIGFkZEV4dHJhRmllbGRz
VG9TdWJyZXNvdXJjZVJlcXVlc3QoaW5pdGlhbFJlcXVlc3QpOworICAgIGFkZEV4dHJhRmllbGRz
VG9SZXF1ZXN0KGluaXRpYWxSZXF1ZXN0LCBGcmFtZUxvYWRUeXBlOjpTdGFuZGFyZCwgZmFsc2Up
OwogCiAgICAgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyID0gMDsgICAgCiAgICAgUmVzb3VyY2VS
ZXF1ZXN0IG5ld1JlcXVlc3QoaW5pdGlhbFJlcXVlc3QpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVM
b2FkZXIuaAppbmRleCA1NTczZjRkN2I0M2U4MGE0ZTgzNjk0NTUzMzU4NzgzYzNmMDlhOGZiLi5l
ZTk2MzkxZTZmZmE4ZWQ2M2MyZjk3MmVmNDM5NWFjZDBhMmIxZTc3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuaApAQCAtMjIwLDggKzIyMCw2IEBAIHB1YmxpYzoKICAgICBXRUJDT1JF
X0VYUE9SVCB2b2lkIGRldGFjaEZyb21QYXJlbnQoKTsKICAgICB2b2lkIGRldGFjaFZpZXdzQW5k
RG9jdW1lbnRMb2FkZXIoKTsKIAotICAgIHZvaWQgYWRkRXh0cmFGaWVsZHNUb1N1YnJlc291cmNl
UmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmKTsKLSAgICAKICAgICBzdGF0aWMgdm9pZCBhZGRTYW1l
U2l0ZUluZm9Ub1JlcXVlc3RJZk5lZWRlZChSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBEb2N1bWVu
dCogaW5pdGlhdG9yID0gbnVsbHB0cik7CiAKICAgICBjb25zdCBGcmFtZUxvYWRlckNsaWVudCYg
Y2xpZW50KCkgY29uc3QgeyByZXR1cm4gbV9jbGllbnQuZ2V0KCk7IH0KQEAgLTMzMCw2ICszMjgs
OCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRBbHdheXNBbGxvd0xvY2FsV2ViYXJjaGl2ZShib29s
IGFsd2F5c0FsbG93TG9jYWxXZWJhcmNoaXZlKSB7IG1fYWx3YXlzQWxsb3dMb2NhbFdlYmFyY2hp
dmUgPSBhbHdheXNBbGxvd0xvY2FsV2ViYXJjaGl2ZTsgfQogICAgIGJvb2wgYWx3YXlzQWxsb3dM
b2NhbFdlYmFyY2hpdmUoKSBjb25zdCB7IHJldHVybiBtX2Fsd2F5c0FsbG93TG9jYWxXZWJhcmNo
aXZlOyB9CiAKKyAgICB2b2lkIGFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KFJlc291cmNlUmVxdWVz
dCYsIEZyYW1lTG9hZFR5cGUsIGJvb2wgaXNNYWluUmVzb3VyY2UpOworCiBwcml2YXRlOgogICAg
IGVudW0gRm9ybVN1Ym1pc3Npb25DYWNoZUxvYWRQb2xpY3kgewogICAgICAgICBNYXlBdHRlbXB0
Q2FjaGVPbmx5TG9hZEZvckZvcm1TdWJtaXNzaW9uSXRlbSwKQEAgLTM0OSw3ICszNDksNiBAQCBw
cml2YXRlOgogICAgIHZvaWQgdXBkYXRlRmlyc3RQYXJ0eUZvckNvb2tpZXMoKTsKICAgICB2b2lk
IHNldEZpcnN0UGFydHlGb3JDb29raWVzKGNvbnN0IFVSTCYpOwogCi0gICAgdm9pZCBhZGRFeHRy
YUZpZWxkc1RvUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmLCBGcmFtZUxvYWRUeXBlLCBib29sIGlz
TWFpblJlc291cmNlKTsKICAgICBSZXNvdXJjZVJlcXVlc3RDYWNoZVBvbGljeSBkZWZhdWx0UmVx
dWVzdENhY2hpbmdQb2xpY3koY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgRnJhbWVMb2FkVHlwZSwg
Ym9vbCBpc01haW5SZXNvdXJjZSk7CiAKICAgICB2b2lkIGNsZWFyUHJvdmlzaW9uYWxMb2FkKCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAKaW5kZXggYjY0MmJjNDg2ZDkxNDM0Yzlj
ZWEwMGNiZTAwZTQxNzhmNDcxMGUzNS4uN2Q2N2QxM2U1YjUzOTIxY2QyODFiYTdmYTFiZTc2NWY1
YjJlYzk4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcApAQCAtMTA1LDcgKzEw
NSw3IEBAIHZvaWQgUGluZ0xvYWRlcjo6bG9hZEltYWdlKEZyYW1lJiBmcmFtZSwgY29uc3QgVVJM
JiB1cmwpCiAgICAgU3RyaW5nIHJlZmVycmVyID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlUmVm
ZXJyZXJIZWFkZXIoZG9jdW1lbnQucmVmZXJyZXJQb2xpY3koKSwgcmVxdWVzdC51cmwoKSwgZnJh
bWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpKTsKICAgICBpZiAoIXJlZmVycmVyLmlzRW1w
dHkoKSkKICAgICAgICAgcmVxdWVzdC5zZXRIVFRQUmVmZXJyZXIocmVmZXJyZXIpOwotICAgIGZy
YW1lLmxvYWRlcigpLmFkZEV4dHJhRmllbGRzVG9TdWJyZXNvdXJjZVJlcXVlc3QocmVxdWVzdCk7
CisgICAgZnJhbWUubG9hZGVyKCkuYWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QocmVxdWVzdCwgRnJh
bWVMb2FkVHlwZTo6U3RhbmRhcmQsIGZhbHNlKTsKIAogICAgIHN0YXJ0UGluZ0xvYWQoZnJhbWUs
IHJlcXVlc3QsIFdURk1vdmUob3JpZ2luYWxSZXF1ZXN0SGVhZGVyKSwgU2hvdWxkRm9sbG93UmVk
aXJlY3RzOjpZZXMsIENvbnRlbnRTZWN1cml0eVBvbGljeUltcG9zaXRpb246OkRvUG9saWN5Q2hl
Y2ssIFJlZmVycmVyUG9saWN5OjpFbXB0eVN0cmluZyk7CiB9CkBAIC0xNDAsNyArMTQwLDcgQEAg
dm9pZCBQaW5nTG9hZGVyOjpzZW5kUGluZyhGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgcGluZ1VS
TCwgY29uc3QgVVJMJiBkZXN0aW5hdGkKICAgICAgICAgYXV0byBvcmlnaW4gPSBTZWN1cml0eVBv
bGljeTo6Z2VuZXJhdGVPcmlnaW5IZWFkZXIoZG9jdW1lbnQucmVmZXJyZXJQb2xpY3koKSwgcmVx
dWVzdC51cmwoKSwgZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSk7CiAgICAgICAgIHJlcXVlc3Qu
c2V0SFRUUE9yaWdpbihvcmlnaW4pOwogICAgIH0KLSAgICBmcmFtZS5sb2FkZXIoKS5hZGRFeHRy
YUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0KHJlcXVlc3QpOworICAgIGZyYW1lLmxvYWRlcigp
LmFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KHJlcXVlc3QsIEZyYW1lTG9hZFR5cGU6OlN0YW5kYXJk
LCBmYWxzZSk7CiAgICAgcmVxdWVzdC5zZXRIVFRQSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6
OlBpbmdUbywgZGVzdGluYXRpb25VUkwpOwogICAgIGlmICghU2VjdXJpdHlQb2xpY3k6OnNob3Vs
ZEhpZGVSZWZlcnJlcihwaW5nVVJMLCBmcmFtZS5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVyKCkp
KQogICAgICAgICByZXF1ZXN0LnNldEhUVFBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6UGlu
Z0Zyb20sIGRvY3VtZW50LnVybCgpKTsKQEAgLTE4MCw3ICsxODAsNyBAQCB2b2lkIFBpbmdMb2Fk
ZXI6OnNlbmRWaW9sYXRpb25SZXBvcnQoRnJhbWUmIGZyYW1lLCBjb25zdCBVUkwmIHJlcG9ydFVS
TCwgUmVmPEZvcgogCiAgICAgSFRUUEhlYWRlck1hcCBvcmlnaW5hbFJlcXVlc3RIZWFkZXIgPSBy
ZXF1ZXN0Lmh0dHBIZWFkZXJGaWVsZHMoKTsKIAotICAgIGZyYW1lLmxvYWRlcigpLmFkZEV4dHJh
RmllbGRzVG9TdWJyZXNvdXJjZVJlcXVlc3QocmVxdWVzdCk7CisgICAgZnJhbWUubG9hZGVyKCku
YWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QocmVxdWVzdCwgRnJhbWVMb2FkVHlwZTo6U3RhbmRhcmQs
IGZhbHNlKTsKIAogICAgIFN0cmluZyByZWZlcnJlciA9IFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0
ZVJlZmVycmVySGVhZGVyKGRvY3VtZW50LnJlZmVycmVyUG9saWN5KCksIHJlcG9ydFVSTCwgZnJh
bWUubG9hZGVyKCkub3V0Z29pbmdSZWZlcnJlcigpKTsKICAgICBpZiAoIXJlZmVycmVyLmlzRW1w
dHkoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3Bw
CmluZGV4IDIzZTZmZjNlNTNjY2FmYzc1YjZkNWIyZGJjZGYyZDBmZjFjY2QzZTQuLmJlZjNjNTBj
MmU0MGRjNzhmMDI4NWY1NzA1M2E1MGRiMzU3ZWVmYzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcApAQCAtMjg0LDggKzI4NCw3IEBAIHZvaWQg
Q2FjaGVkUmVzb3VyY2U6OmxvYWQoQ2FjaGVkUmVzb3VyY2VMb2FkZXImIGNhY2hlZFJlc291cmNl
TG9hZGVyKQogICAgIC8vIE5hdmlnYXRpb24gYWxnb3JpdGhtIGlzIHNldHRpbmcgdXAgdGhlIHJl
cXVlc3QgYmVmb3JlIHNlbmRpbmcgaXQgdG8gQ2FjaGVkUmVzb3VyY2VMb2FkZXI/Q2FjaGVkUmVz
b3VyY2UuCiAgICAgLy8gU28gbm8gbmVlZCBmb3IgZXh0cmEgZmllbGRzIGZvciBNYWluUmVzb3Vy
Y2UuCiAgICAgaWYgKHR5cGUoKSAhPSBUeXBlOjpNYWluUmVzb3VyY2UpCi0gICAgICAgIGZyYW1l
TG9hZGVyLmFkZEV4dHJhRmllbGRzVG9TdWJyZXNvdXJjZVJlcXVlc3QobV9yZXNvdXJjZVJlcXVl
c3QpOwotCisgICAgICAgIGZyYW1lTG9hZGVyLmFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KG1fcmVz
b3VyY2VSZXF1ZXN0LCBGcmFtZUxvYWRUeXBlOjpTdGFuZGFyZCwgZmFsc2UpOwogCiAgICAgLy8g
RklYTUU6IEl0J3MgdW5mb3J0dW5hdGUgdGhhdCB0aGUgY2FjaGUgbGF5ZXIgYW5kIGJlbG93IGdl
dCB0byBrbm93IGFueXRoaW5nIGFib3V0IGZyYWdtZW50IGlkZW50aWZpZXJzLgogICAgIC8vIFdl
IHNob3VsZCBsb29rIGludG8gcmVtb3ZpbmcgdGhlIGV4cGVjdGF0aW9uIG9mIHRoYXQga25vd2xl
ZGdlIGZyb20gdGhlIHBsYXRmb3JtIG5ldHdvcmsgc3RhY2tzLgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396239</attachid>
            <date>2020-04-12 14:21:16 -0700</date>
            <delta_ts>2020-04-12 23:55:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210407-20200412232112.patch</filename>
            <type>text/plain</type>
            <size>11301</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5OTkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDBmNjg0MGQ3NjQ3MjJj
M2JjNDZmZmMzYTAxNjA4ZDdmODg1NGU3Zi4uYmNlMTE5ZDkxZWJmZjYyN2RkNGNiMGJhYWQ5ZmE4
YjEzM2UyMDQzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA0LTEyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmVtb3ZlIGFkZEV4dHJhRmllbGRz
VG9TdWJyZXNvdXJjZVJlcXVlc3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxMDQwNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlbW92ZSBhZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0IHNp
bmNlIGl0IGNhbiBiZSByZXBsYWNlZCBieQorICAgICAgICBjYWxsaW5nIGFkZEV4dHJhRmllbGRz
VG9SZXF1ZXN0LiBUaGUgbG9hZFR5cGUgcGFyYW1ldGVyIGlzIG5vdCB0YWtlbgorICAgICAgICBp
bnRvIGFjY291bnQgYnkgZGVmYXVsdFJlcXVlc3RDYWNoaW5nUG9saWN5IHNvIEZyYW1lTG9hZFR5
cGU6OlN0YW5kYXJkCisgICAgICAgIHJhdGhlciB0aGFuIG1fbG9hZFR5cGUgaXMgcGFzc2VkLgor
CisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyByZXBsYWNlcyB0aGUgaXNNYWluUmVzb3VyY2UgYm9v
bGVhbiBwYXJhbWV0ZXIgd2l0aCBhbiBlbnVtLgorCisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9h
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkVVJMKToKKyAgICAg
ICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1l
TG9hZGVyOjphZGRFeHRyYUZpZWxkc1RvUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFt
ZUxvYWRlcjo6bG9hZFBvc3RSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVy
Ojpsb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyOjpsb2FkRGlmZmVyZW50RG9jdW1lbnRJdGVtKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1l
TG9hZGVyOjphZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvUGluZ0xvYWRl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQaW5nTG9hZGVyOjpsb2FkSW1hZ2UpOgorICAgICAg
ICAoV2ViQ29yZTo6UGluZ0xvYWRlcjo6c2VuZFBpbmcpOgorICAgICAgICAoV2ViQ29yZTo6UGlu
Z0xvYWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0Nh
Y2hlZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpsb2Fk
KToKKwogMjAyMC0wNC0xMiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgRml4IGEgZmV3IG1pc3BlbGxpbmdzIG9mIGRlc2NlbmRhbnQgYW5kIHByb3BhZ2F0aW9uCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAppbmRleCA2Mjk2YWFmODEwNDE5ODRiYjUx
NWU4ZjU1MjkyYjBkNDRlMWIzYWY2Li45YjhjNzQzZDBmMDNiYjZhMGY5ODcwOTY3OThjOTViOWY4
M2UwY2MyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTEzNTQsNyAr
MTM1NCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRVUkwoRnJhbWVMb2FkUmVxdWVzdCYmIGZy
YW1lTG9hZFJlcXVlc3QsIGNvbnN0IFN0cmluZyYgcmVmCiAgICAgaWYgKCFyZWZlcnJlci5pc0Vt
cHR5KCkpCiAgICAgICAgIHJlcXVlc3Quc2V0SFRUUFJlZmVycmVyKHJlZmVycmVyKTsKIAotICAg
IGFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KHJlcXVlc3QsIG5ld0xvYWRUeXBlLCB0cnVlKTsKKyAg
ICBhZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChyZXF1ZXN0LCBNYWluUmVzb3VyY2U6OlllcywgbmV3
TG9hZFR5cGUpOwogICAgIGlmIChpc1JlbG9hZChuZXdMb2FkVHlwZSkpCiAgICAgICAgIHJlcXVl
c3Quc2V0Q2FjaGVQb2xpY3koUmVzb3VyY2VSZXF1ZXN0Q2FjaGVQb2xpY3k6OlJlbG9hZElnbm9y
aW5nQ2FjaGVEYXRhKTsKIApAQCAtMTUxNSw3ICsxNTE1LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6
bG9hZChEb2N1bWVudExvYWRlciYgbmV3RG9jdW1lbnRMb2FkZXIpCiAgICAgUmVzb3VyY2VSZXF1
ZXN0JiByID0gbmV3RG9jdW1lbnRMb2FkZXIucmVxdWVzdCgpOwogICAgIC8vIEZJWE1FOiBVc2lu
ZyBtX2xvYWRUeXBlIHNlZW1zIHdyb25nIGhlcmUuCiAgICAgLy8gSWYgd2UgYXJlIG9ubHkgcHJl
cGFyaW5nIHRvIGxvYWQgdGhlIG1haW4gcmVzb3VyY2UsIHRoYXQgaXMgcHJldmlvdXMgbG9hZCdz
IGxvYWQgdHlwZSEKLSAgICBhZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChyLCBtX2xvYWRUeXBlLCB0
cnVlKTsKKyAgICBhZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChyLCBNYWluUmVzb3VyY2U6Olllcywg
bV9sb2FkVHlwZSk7CiAgICAgRnJhbWVMb2FkVHlwZSB0eXBlOwogCiAgICAgaWYgKHNob3VsZFRy
ZWF0VVJMQXNTYW1lQXNDdXJyZW50KG5ld0RvY3VtZW50TG9hZGVyLm9yaWdpbmFsUmVxdWVzdCgp
LnVybCgpKSkgewpAQCAtMjg2OSwxMSArMjg2OSw2IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmRldGFj
aFZpZXdzQW5kRG9jdW1lbnRMb2FkZXIoKQogICAgIG1fY2xpZW50LT5kZXRhY2hlZEZyb21QYXJl
bnQzKCk7CiB9CiAKLXZvaWQgRnJhbWVMb2FkZXI6OmFkZEV4dHJhRmllbGRzVG9TdWJyZXNvdXJj
ZVJlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQotewotICAgIGFkZEV4dHJhRmllbGRz
VG9SZXF1ZXN0KHJlcXVlc3QsIG1fbG9hZFR5cGUsIGZhbHNlKTsKLX0KLQogUmVzb3VyY2VSZXF1
ZXN0Q2FjaGVQb2xpY3kgRnJhbWVMb2FkZXI6OmRlZmF1bHRSZXF1ZXN0Q2FjaGluZ1BvbGljeShj
b25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIEZyYW1lTG9hZFR5cGUgbG9hZFR5cGUsIGJv
b2wgaXNNYWluUmVzb3VyY2UpCiB7CiAgICAgaWYgKG1fb3ZlcnJpZGVDYWNoZVBvbGljeUZvclRl
c3RpbmcpCkBAIC0yOTA2LDcgKzI5MDEsNyBAQCBSZXNvdXJjZVJlcXVlc3RDYWNoZVBvbGljeSBG
cmFtZUxvYWRlcjo6ZGVmYXVsdFJlcXVlc3RDYWNoaW5nUG9saWN5KGNvbnN0IFJlc291cgogICAg
IHJldHVybiBSZXNvdXJjZVJlcXVlc3RDYWNoZVBvbGljeTo6VXNlUHJvdG9jb2xDYWNoZVBvbGlj
eTsKIH0KIAotdm9pZCBGcmFtZUxvYWRlcjo6YWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QoUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBGcmFtZUxvYWRUeXBlIGxvYWRUeXBlLCBib29sIGlzTWFpblJl
c291cmNlKQordm9pZCBGcmFtZUxvYWRlcjo6YWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QoUmVzb3Vy
Y2VSZXF1ZXN0JiByZXF1ZXN0LCBNYWluUmVzb3VyY2UgbWFpblJlc291cmNlLCBGcmFtZUxvYWRU
eXBlIGxvYWRUeXBlKQogewogICAgIC8vIElmIHRoZSByZXF1ZXN0IGNhbWUgZnJvbSBhIHByZXZp
b3VzIHByb2Nlc3MgZHVlIHRvIHByb2Nlc3Mtc3dhcC1vbi1uYXZpZ2F0aW9uIHRoZW4gd2Ugc2hv
dWxkIG5vdCBtb2RpZnkgdGhlIHJlcXVlc3QuCiAgICAgaWYgKG1fY3VycmVudExvYWRDb250aW51
aW5nU3RhdGUgPT0gTG9hZENvbnRpbnVpbmdTdGF0ZTo6Q29udGludWluZ1dpdGhSZXF1ZXN0KQpA
QCAtMjkxNCw2ICsyOTA5LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6YWRkRXh0cmFGaWVsZHNUb1Jl
cXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGcmFtZUxvYWRUeXAKIAogICAgIC8vIERv
bid0IHNldCB0aGUgY29va2llIHBvbGljeSBVUkwgaWYgaXQncyBhbHJlYWR5IGJlZW4gc2V0Lgog
ICAgIC8vIEJ1dCBtYWtlIHN1cmUgdG8gc2V0IGl0IG9uIGFsbCByZXF1ZXN0cyByZWdhcmRsZXNz
IG9mIHByb3RvY29sLCBhcyBpdCBoYXMgc2lnbmlmaWNhbmNlIGJleW9uZCB0aGUgY29va2llIHBv
bGljeSAoPHJkYXI6Ly9wcm9ibGVtLzY2MTY2NjQ+KS4KKyAgICBib29sIGlzTWFpblJlc291cmNl
ID0gbWFpblJlc291cmNlID09IE1haW5SZXNvdXJjZTo6WWVzOwogICAgIGJvb2wgaXNNYWluRnJh
bWVNYWluUmVzb3VyY2UgPSBpc01haW5SZXNvdXJjZSAmJiBtX2ZyYW1lLmlzTWFpbkZyYW1lKCk7
CiAgICAgaWYgKHJlcXVlc3QuZmlyc3RQYXJ0eUZvckNvb2tpZXMoKS5pc0VtcHR5KCkpIHsKICAg
ICAgICAgaWYgKGlzTWFpbkZyYW1lTWFpblJlc291cmNlKQpAQCAtMzAwOCw3ICszMDA0LDcgQEAg
dm9pZCBGcmFtZUxvYWRlcjo6bG9hZFBvc3RSZXF1ZXN0KEZyYW1lTG9hZFJlcXVlc3QmJiByZXF1
ZXN0LCBjb25zdCBTdHJpbmcmIHJlZmUKICAgICB3b3JraW5nUmVzb3VyY2VSZXF1ZXN0LnNldEhU
VFBNZXRob2QoIlBPU1QiKTsKICAgICB3b3JraW5nUmVzb3VyY2VSZXF1ZXN0LnNldEhUVFBCb2R5
KGluUmVxdWVzdC5odHRwQm9keSgpKTsKICAgICB3b3JraW5nUmVzb3VyY2VSZXF1ZXN0LnNldEhU
VFBDb250ZW50VHlwZShjb250ZW50VHlwZSk7Ci0gICAgYWRkRXh0cmFGaWVsZHNUb1JlcXVlc3Qo
d29ya2luZ1Jlc291cmNlUmVxdWVzdCwgbG9hZFR5cGUsIHRydWUpOworICAgIGFkZEV4dHJhRmll
bGRzVG9SZXF1ZXN0KHdvcmtpbmdSZXNvdXJjZVJlcXVlc3QsIE1haW5SZXNvdXJjZTo6WWVzLCBs
b2FkVHlwZSk7CiAKICAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gbV9mcmFtZS5kb2N1bWVu
dCgpKQogICAgICAgICBkb2N1bWVudC0+Y29udGVudFNlY3VyaXR5UG9saWN5KCktPnVwZ3JhZGVJ
bnNlY3VyZVJlcXVlc3RJZk5lZWRlZCh3b3JraW5nUmVzb3VyY2VSZXF1ZXN0LCBDb250ZW50U2Vj
dXJpdHlQb2xpY3k6Okluc2VjdXJlUmVxdWVzdFR5cGU6OkxvYWQpOwpAQCAtMzA2MSw3ICszMDU3
LDcgQEAgdW5zaWduZWQgbG9uZyBGcmFtZUxvYWRlcjo6bG9hZFJlc291cmNlU3luY2hyb25vdXNs
eShjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlcXUKIAogICAgIGluaXRpYWxSZXF1ZXN0LnNldEZp
cnN0UGFydHlGb3JDb29raWVzKG1fZnJhbWUubWFpbkZyYW1lKCkubG9hZGVyKCkuZG9jdW1lbnRM
b2FkZXIoKS0+cmVxdWVzdCgpLnVybCgpKTsKICAgICAKLSAgICBhZGRFeHRyYUZpZWxkc1RvU3Vi
cmVzb3VyY2VSZXF1ZXN0KGluaXRpYWxSZXF1ZXN0KTsKKyAgICBhZGRFeHRyYUZpZWxkc1RvUmVx
dWVzdChpbml0aWFsUmVxdWVzdCwgTWFpblJlc291cmNlOjpObyk7CiAKICAgICB1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIgPSAwOyAgICAKICAgICBSZXNvdXJjZVJlcXVlc3QgbmV3UmVxdWVzdChp
bml0aWFsUmVxdWVzdCk7CkBAIC0zNzYzLDcgKzM3NTksNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjps
b2FkRGlmZmVyZW50RG9jdW1lbnRJdGVtKEhpc3RvcnlJdGVtJiBpdGVtLCBIaXN0b3J5SXRlbSog
ZnJvbQogCiAgICAgICAgIC8vIE1ha2Ugc3VyZSB0byBhZGQgZXh0cmEgZmllbGRzIHRvIHRoZSBy
ZXF1ZXN0IGFmdGVyIHRoZSBPcmlnaW4gaGVhZGVyIGlzIGFkZGVkIGZvciB0aGUgRm9ybURhdGEg
Y2FzZS4KICAgICAgICAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMjE5NCBmb3IgbW9yZSBkaXNjdXNzaW9uLgotICAgICAgICBhZGRFeHRyYUZpZWxkc1Rv
UmVxdWVzdChyZXF1ZXN0LCBsb2FkVHlwZSwgdHJ1ZSk7CisgICAgICAgIGFkZEV4dHJhRmllbGRz
VG9SZXF1ZXN0KHJlcXVlc3QsIE1haW5SZXNvdXJjZTo6WWVzLCBsb2FkVHlwZSk7CiAgICAgICAg
IAogICAgICAgICAvLyBGSVhNRTogU2xpZ2h0IGhhY2sgdG8gdGVzdCBpZiB0aGUgTlNVUkwgY2Fj
aGUgY29udGFpbnMgdGhlIHBhZ2Ugd2UncmUgZ29pbmcgdG8uCiAgICAgICAgIC8vIFdlIHdhbnQg
dG8ga25vdyB0aGlzIGJlZm9yZSB0YWxraW5nIHRvIHRoZSBwb2xpY3kgZGVsZWdhdGUsIHNpbmNl
IGl0IGFmZmVjdHMgd2hldGhlciAKQEAgLTM4MDgsNyArMzgwNCw3IEBAIHZvaWQgRnJhbWVMb2Fk
ZXI6OmxvYWREaWZmZXJlbnREb2N1bWVudEl0ZW0oSGlzdG9yeUl0ZW0mIGl0ZW0sIEhpc3RvcnlJ
dGVtKiBmcm9tCiAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgfQog
Ci0gICAgICAgIGFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KHJlcXVlc3QsIGxvYWRUeXBlLCB0cnVl
KTsKKyAgICAgICAgYWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QocmVxdWVzdCwgTWFpblJlc291cmNl
OjpZZXMsIGxvYWRUeXBlKTsKIAogICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdEZvck9y
aWdpbmFsVVJMKHJlcXVlc3QpOwogICAgICAgICByZXF1ZXN0Rm9yT3JpZ2luYWxVUkwuc2V0VVJM
KGl0ZW1PcmlnaW5hbFVSTCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCmluZGV4IDU1
NzNmNGQ3YjQzZTgwYTRlODM2OTQ1NTMzNTg3ODNjM2YwOWE4ZmIuLjdkYmY1NDQyNTQxOWY1ZTIy
OTA1NGRlM2NlNzE4MzE5OTYyOTQyNGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9GcmFtZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5o
CkBAIC05MSw2ICs5MSw3IEBAIGVudW0gY2xhc3MgTmV3TG9hZEluUHJvZ3Jlc3MgOiBib29sOwog
ZW51bSBjbGFzcyBOYXZpZ2F0aW9uUG9saWN5RGVjaXNpb24gOiB1aW50OF90OwogZW51bSBjbGFz
cyBTaG91bGRUcmVhdEFzQ29udGludWluZ0xvYWQgOiBib29sOwogZW51bSBjbGFzcyBVc2VkTGVn
YWN5VExTIDogYm9vbDsKK2VudW0gY2xhc3MgTWFpblJlc291cmNlIDogYm9vbCB7IFllcywgTm8g
fTsKIAogc3RydWN0IFdpbmRvd0ZlYXR1cmVzOwogCkBAIC0yMjAsOCArMjIxLDYgQEAgcHVibGlj
OgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZGV0YWNoRnJvbVBhcmVudCgpOwogICAgIHZvaWQg
ZGV0YWNoVmlld3NBbmREb2N1bWVudExvYWRlcigpOwogCi0gICAgdm9pZCBhZGRFeHRyYUZpZWxk
c1RvU3VicmVzb3VyY2VSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYpOwotICAgIAogICAgIHN0YXRp
YyB2b2lkIGFkZFNhbWVTaXRlSW5mb1RvUmVxdWVzdElmTmVlZGVkKFJlc291cmNlUmVxdWVzdCYs
IGNvbnN0IERvY3VtZW50KiBpbml0aWF0b3IgPSBudWxscHRyKTsKIAogICAgIGNvbnN0IEZyYW1l
TG9hZGVyQ2xpZW50JiBjbGllbnQoKSBjb25zdCB7IHJldHVybiBtX2NsaWVudC5nZXQoKTsgfQpA
QCAtMzMwLDYgKzMyOSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEFsd2F5c0FsbG93TG9jYWxX
ZWJhcmNoaXZlKGJvb2wgYWx3YXlzQWxsb3dMb2NhbFdlYmFyY2hpdmUpIHsgbV9hbHdheXNBbGxv
d0xvY2FsV2ViYXJjaGl2ZSA9IGFsd2F5c0FsbG93TG9jYWxXZWJhcmNoaXZlOyB9CiAgICAgYm9v
bCBhbHdheXNBbGxvd0xvY2FsV2ViYXJjaGl2ZSgpIGNvbnN0IHsgcmV0dXJuIG1fYWx3YXlzQWxs
b3dMb2NhbFdlYmFyY2hpdmU7IH0KIAorICAgIHZvaWQgYWRkRXh0cmFGaWVsZHNUb1JlcXVlc3Qo
UmVzb3VyY2VSZXF1ZXN0JiwgTWFpblJlc291cmNlLCBGcmFtZUxvYWRUeXBlID0gRnJhbWVMb2Fk
VHlwZTo6U3RhbmRhcmQpOworCiBwcml2YXRlOgogICAgIGVudW0gRm9ybVN1Ym1pc3Npb25DYWNo
ZUxvYWRQb2xpY3kgewogICAgICAgICBNYXlBdHRlbXB0Q2FjaGVPbmx5TG9hZEZvckZvcm1TdWJt
aXNzaW9uSXRlbSwKQEAgLTM0OSw3ICszNTAsNiBAQCBwcml2YXRlOgogICAgIHZvaWQgdXBkYXRl
Rmlyc3RQYXJ0eUZvckNvb2tpZXMoKTsKICAgICB2b2lkIHNldEZpcnN0UGFydHlGb3JDb29raWVz
KGNvbnN0IFVSTCYpOwogCi0gICAgdm9pZCBhZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChSZXNvdXJj
ZVJlcXVlc3QmLCBGcmFtZUxvYWRUeXBlLCBib29sIGlzTWFpblJlc291cmNlKTsKICAgICBSZXNv
dXJjZVJlcXVlc3RDYWNoZVBvbGljeSBkZWZhdWx0UmVxdWVzdENhY2hpbmdQb2xpY3koY29uc3Qg
UmVzb3VyY2VSZXF1ZXN0JiwgRnJhbWVMb2FkVHlwZSwgYm9vbCBpc01haW5SZXNvdXJjZSk7CiAK
ICAgICB2b2lkIGNsZWFyUHJvdmlzaW9uYWxMb2FkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvUGluZ0xvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUGluZ0xv
YWRlci5jcHAKaW5kZXggYjY0MmJjNDg2ZDkxNDM0YzljZWEwMGNiZTAwZTQxNzhmNDcxMGUzNS4u
NzA3YWE3OTlmMDFiYzVkYzE2YzYxNjM0Y2RkOTdkODc2MjMwNjZlMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9QaW5nTG9hZGVyLmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIHZvaWQgUGluZ0xvYWRlcjo6
bG9hZEltYWdlKEZyYW1lJiBmcmFtZSwgY29uc3QgVVJMJiB1cmwpCiAgICAgU3RyaW5nIHJlZmVy
cmVyID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlUmVmZXJyZXJIZWFkZXIoZG9jdW1lbnQucmVm
ZXJyZXJQb2xpY3koKSwgcmVxdWVzdC51cmwoKSwgZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZl
cnJlcigpKTsKICAgICBpZiAoIXJlZmVycmVyLmlzRW1wdHkoKSkKICAgICAgICAgcmVxdWVzdC5z
ZXRIVFRQUmVmZXJyZXIocmVmZXJyZXIpOwotICAgIGZyYW1lLmxvYWRlcigpLmFkZEV4dHJhRmll
bGRzVG9TdWJyZXNvdXJjZVJlcXVlc3QocmVxdWVzdCk7CisgICAgZnJhbWUubG9hZGVyKCkuYWRk
RXh0cmFGaWVsZHNUb1JlcXVlc3QocmVxdWVzdCwgTWFpblJlc291cmNlOjpObyk7CiAKICAgICBz
dGFydFBpbmdMb2FkKGZyYW1lLCByZXF1ZXN0LCBXVEZNb3ZlKG9yaWdpbmFsUmVxdWVzdEhlYWRl
ciksIFNob3VsZEZvbGxvd1JlZGlyZWN0czo6WWVzLCBDb250ZW50U2VjdXJpdHlQb2xpY3lJbXBv
c2l0aW9uOjpEb1BvbGljeUNoZWNrLCBSZWZlcnJlclBvbGljeTo6RW1wdHlTdHJpbmcpOwogfQpA
QCAtMTQwLDcgKzE0MCw3IEBAIHZvaWQgUGluZ0xvYWRlcjo6c2VuZFBpbmcoRnJhbWUmIGZyYW1l
LCBjb25zdCBVUkwmIHBpbmdVUkwsIGNvbnN0IFVSTCYgZGVzdGluYXRpCiAgICAgICAgIGF1dG8g
b3JpZ2luID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlT3JpZ2luSGVhZGVyKGRvY3VtZW50LnJl
ZmVycmVyUG9saWN5KCksIHJlcXVlc3QudXJsKCksIGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkp
OwogICAgICAgICByZXF1ZXN0LnNldEhUVFBPcmlnaW4ob3JpZ2luKTsKICAgICB9Ci0gICAgZnJh
bWUubG9hZGVyKCkuYWRkRXh0cmFGaWVsZHNUb1N1YnJlc291cmNlUmVxdWVzdChyZXF1ZXN0KTsK
KyAgICBmcmFtZS5sb2FkZXIoKS5hZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChyZXF1ZXN0LCBNYWlu
UmVzb3VyY2U6Ok5vKTsKICAgICByZXF1ZXN0LnNldEhUVFBIZWFkZXJGaWVsZChIVFRQSGVhZGVy
TmFtZTo6UGluZ1RvLCBkZXN0aW5hdGlvblVSTCk7CiAgICAgaWYgKCFTZWN1cml0eVBvbGljeTo6
c2hvdWxkSGlkZVJlZmVycmVyKHBpbmdVUkwsIGZyYW1lLmxvYWRlcigpLm91dGdvaW5nUmVmZXJy
ZXIoKSkpCiAgICAgICAgIHJlcXVlc3Quc2V0SFRUUEhlYWRlckZpZWxkKEhUVFBIZWFkZXJOYW1l
OjpQaW5nRnJvbSwgZG9jdW1lbnQudXJsKCkpOwpAQCAtMTgwLDcgKzE4MCw3IEBAIHZvaWQgUGlu
Z0xvYWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydChGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgcmVw
b3J0VVJMLCBSZWY8Rm9yCiAKICAgICBIVFRQSGVhZGVyTWFwIG9yaWdpbmFsUmVxdWVzdEhlYWRl
ciA9IHJlcXVlc3QuaHR0cEhlYWRlckZpZWxkcygpOwogCi0gICAgZnJhbWUubG9hZGVyKCkuYWRk
RXh0cmFGaWVsZHNUb1N1YnJlc291cmNlUmVxdWVzdChyZXF1ZXN0KTsKKyAgICBmcmFtZS5sb2Fk
ZXIoKS5hZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChyZXF1ZXN0LCBNYWluUmVzb3VyY2U6Ok5vKTsK
IAogICAgIFN0cmluZyByZWZlcnJlciA9IFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0ZVJlZmVycmVy
SGVhZGVyKGRvY3VtZW50LnJlZmVycmVyUG9saWN5KCksIHJlcG9ydFVSTCwgZnJhbWUubG9hZGVy
KCkub3V0Z29pbmdSZWZlcnJlcigpKTsKICAgICBpZiAoIXJlZmVycmVyLmlzRW1wdHkoKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCmluZGV4IDIz
ZTZmZjNlNTNjY2FmYzc1YjZkNWIyZGJjZGYyZDBmZjFjY2QzZTQuLmJkMmE2ODExZjE3YjU1NmM2
ZmQyNGZiNjU4NDg1MGI4Njc0YWQ1MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJlc291cmNlLmNwcApAQCAtMjg0LDggKzI4NCw3IEBAIHZvaWQgQ2FjaGVkUmVz
b3VyY2U6OmxvYWQoQ2FjaGVkUmVzb3VyY2VMb2FkZXImIGNhY2hlZFJlc291cmNlTG9hZGVyKQog
ICAgIC8vIE5hdmlnYXRpb24gYWxnb3JpdGhtIGlzIHNldHRpbmcgdXAgdGhlIHJlcXVlc3QgYmVm
b3JlIHNlbmRpbmcgaXQgdG8gQ2FjaGVkUmVzb3VyY2VMb2FkZXI/Q2FjaGVkUmVzb3VyY2UuCiAg
ICAgLy8gU28gbm8gbmVlZCBmb3IgZXh0cmEgZmllbGRzIGZvciBNYWluUmVzb3VyY2UuCiAgICAg
aWYgKHR5cGUoKSAhPSBUeXBlOjpNYWluUmVzb3VyY2UpCi0gICAgICAgIGZyYW1lTG9hZGVyLmFk
ZEV4dHJhRmllbGRzVG9TdWJyZXNvdXJjZVJlcXVlc3QobV9yZXNvdXJjZVJlcXVlc3QpOwotCisg
ICAgICAgIGZyYW1lTG9hZGVyLmFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KG1fcmVzb3VyY2VSZXF1
ZXN0LCBNYWluUmVzb3VyY2U6Ok5vKTsKIAogICAgIC8vIEZJWE1FOiBJdCdzIHVuZm9ydHVuYXRl
IHRoYXQgdGhlIGNhY2hlIGxheWVyIGFuZCBiZWxvdyBnZXQgdG8ga25vdyBhbnl0aGluZyBhYm91
dCBmcmFnbWVudCBpZGVudGlmaWVycy4KICAgICAvLyBXZSBzaG91bGQgbG9vayBpbnRvIHJlbW92
aW5nIHRoZSBleHBlY3RhdGlvbiBvZiB0aGF0IGtub3dsZWRnZSBmcm9tIHRoZSBwbGF0Zm9ybSBu
ZXR3b3JrIHN0YWNrcy4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396259</attachid>
            <date>2020-04-12 23:55:07 -0700</date>
            <delta_ts>2020-04-13 01:04:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210407-20200413085506.patch</filename>
            <type>text/plain</type>
            <size>11421</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5OTkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDBmNjg0MGQ3NjQ3MjJj
M2JjNDZmZmMzYTAxNjA4ZDdmODg1NGU3Zi4uZDZhYTcwY2I2OWVkNDU4ZmNjZTIwMzEzZTY0N2Mw
ZjZkYjA5ZDdiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA0LTEyICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgUmVtb3ZlIGFkZEV4dHJhRmllbGRz
VG9TdWJyZXNvdXJjZVJlcXVlc3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIxMDQwNworCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgor
CisgICAgICAgIFJlbW92ZSBhZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0IHNpbmNl
IGl0IGNhbiBiZSByZXBsYWNlZCBieQorICAgICAgICBjYWxsaW5nIGFkZEV4dHJhRmllbGRzVG9S
ZXF1ZXN0LiBUaGUgbG9hZFR5cGUgcGFyYW1ldGVyIGlzIG5vdCB0YWtlbgorICAgICAgICBpbnRv
IGFjY291bnQgYnkgZGVmYXVsdFJlcXVlc3RDYWNoaW5nUG9saWN5IHNvIEZyYW1lTG9hZFR5cGU6
OlN0YW5kYXJkCisgICAgICAgIHJhdGhlciB0aGFuIG1fbG9hZFR5cGUgaXMgcGFzc2VkLgorCisg
ICAgICAgIFRoaXMgcGF0Y2ggYWxzbyByZXBsYWNlcyB0aGUgaXNNYWluUmVzb3VyY2UgYm9vbGVh
biBwYXJhbWV0ZXIgd2l0aCBhbiBlbnVtLgorCisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkVVJMKToKKyAgICAgICAg
KFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyOjphZGRFeHRyYUZpZWxkc1RvUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxv
YWRlcjo6bG9hZFBvc3RSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjps
b2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVy
Ojpsb2FkRGlmZmVyZW50RG9jdW1lbnRJdGVtKToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyOjphZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0KTogRGVsZXRlZC4KKyAgICAg
ICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvUGluZ0xvYWRlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpQaW5nTG9hZGVyOjpsb2FkSW1hZ2UpOgorICAgICAgICAo
V2ViQ29yZTo6UGluZ0xvYWRlcjo6c2VuZFBpbmcpOgorICAgICAgICAoV2ViQ29yZTo6UGluZ0xv
YWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydCk6CisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlOjpsb2FkKToK
KwogMjAyMC0wNC0xMiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAg
Rml4IGEgZmV3IG1pc3BlbGxpbmdzIG9mIGRlc2NlbmRhbnQgYW5kIHByb3BhZ2F0aW9uCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAppbmRleCA2Mjk2YWFmODEwNDE5ODRiYjUxNWU4
ZjU1MjkyYjBkNDRlMWIzYWY2Li5iNDMxMmI4N2ZiYjE1ZWEwMDEyYWNiMmI1ZDU4NmMyMGQ3MjQ4
MDg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTEzNTQsNyArMTM1
NCw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRVUkwoRnJhbWVMb2FkUmVxdWVzdCYmIGZyYW1l
TG9hZFJlcXVlc3QsIGNvbnN0IFN0cmluZyYgcmVmCiAgICAgaWYgKCFyZWZlcnJlci5pc0VtcHR5
KCkpCiAgICAgICAgIHJlcXVlc3Quc2V0SFRUUFJlZmVycmVyKHJlZmVycmVyKTsKIAotICAgIGFk
ZEV4dHJhRmllbGRzVG9SZXF1ZXN0KHJlcXVlc3QsIG5ld0xvYWRUeXBlLCB0cnVlKTsKKyAgICBh
ZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChyZXF1ZXN0LCBJc01haW5SZXNvdXJjZTo6WWVzLCBuZXdM
b2FkVHlwZSk7CiAgICAgaWYgKGlzUmVsb2FkKG5ld0xvYWRUeXBlKSkKICAgICAgICAgcmVxdWVz
dC5zZXRDYWNoZVBvbGljeShSZXNvdXJjZVJlcXVlc3RDYWNoZVBvbGljeTo6UmVsb2FkSWdub3Jp
bmdDYWNoZURhdGEpOwogCkBAIC0xNTE1LDcgKzE1MTUsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjps
b2FkKERvY3VtZW50TG9hZGVyJiBuZXdEb2N1bWVudExvYWRlcikKICAgICBSZXNvdXJjZVJlcXVl
c3QmIHIgPSBuZXdEb2N1bWVudExvYWRlci5yZXF1ZXN0KCk7CiAgICAgLy8gRklYTUU6IFVzaW5n
IG1fbG9hZFR5cGUgc2VlbXMgd3JvbmcgaGVyZS4KICAgICAvLyBJZiB3ZSBhcmUgb25seSBwcmVw
YXJpbmcgdG8gbG9hZCB0aGUgbWFpbiByZXNvdXJjZSwgdGhhdCBpcyBwcmV2aW91cyBsb2FkJ3Mg
bG9hZCB0eXBlIQotICAgIGFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KHIsIG1fbG9hZFR5cGUsIHRy
dWUpOworICAgIGFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KHIsIElzTWFpblJlc291cmNlOjpZZXMs
IG1fbG9hZFR5cGUpOwogICAgIEZyYW1lTG9hZFR5cGUgdHlwZTsKIAogICAgIGlmIChzaG91bGRU
cmVhdFVSTEFzU2FtZUFzQ3VycmVudChuZXdEb2N1bWVudExvYWRlci5vcmlnaW5hbFJlcXVlc3Qo
KS51cmwoKSkpIHsKQEAgLTI4NjksMTEgKzI4NjksNiBAQCB2b2lkIEZyYW1lTG9hZGVyOjpkZXRh
Y2hWaWV3c0FuZERvY3VtZW50TG9hZGVyKCkKICAgICBtX2NsaWVudC0+ZGV0YWNoZWRGcm9tUGFy
ZW50MygpOwogfQogCi12b2lkIEZyYW1lTG9hZGVyOjphZGRFeHRyYUZpZWxkc1RvU3VicmVzb3Vy
Y2VSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKLXsKLSAgICBhZGRFeHRyYUZpZWxk
c1RvUmVxdWVzdChyZXF1ZXN0LCBtX2xvYWRUeXBlLCBmYWxzZSk7Ci19Ci0KIFJlc291cmNlUmVx
dWVzdENhY2hlUG9saWN5IEZyYW1lTG9hZGVyOjpkZWZhdWx0UmVxdWVzdENhY2hpbmdQb2xpY3ko
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGcmFtZUxvYWRUeXBlIGxvYWRUeXBlLCBi
b29sIGlzTWFpblJlc291cmNlKQogewogICAgIGlmIChtX292ZXJyaWRlQ2FjaGVQb2xpY3lGb3JU
ZXN0aW5nKQpAQCAtMjkwNiw3ICsyOTAxLDcgQEAgUmVzb3VyY2VSZXF1ZXN0Q2FjaGVQb2xpY3kg
RnJhbWVMb2FkZXI6OmRlZmF1bHRSZXF1ZXN0Q2FjaGluZ1BvbGljeShjb25zdCBSZXNvdXIKICAg
ICByZXR1cm4gUmVzb3VyY2VSZXF1ZXN0Q2FjaGVQb2xpY3k6OlVzZVByb3RvY29sQ2FjaGVQb2xp
Y3k7CiB9CiAKLXZvaWQgRnJhbWVMb2FkZXI6OmFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgRnJhbWVMb2FkVHlwZSBsb2FkVHlwZSwgYm9vbCBpc01haW5S
ZXNvdXJjZSkKK3ZvaWQgRnJhbWVMb2FkZXI6OmFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KFJlc291
cmNlUmVxdWVzdCYgcmVxdWVzdCwgSXNNYWluUmVzb3VyY2UgbWFpblJlc291cmNlLCBGcmFtZUxv
YWRUeXBlIGxvYWRUeXBlKQogewogICAgIC8vIElmIHRoZSByZXF1ZXN0IGNhbWUgZnJvbSBhIHBy
ZXZpb3VzIHByb2Nlc3MgZHVlIHRvIHByb2Nlc3Mtc3dhcC1vbi1uYXZpZ2F0aW9uIHRoZW4gd2Ug
c2hvdWxkIG5vdCBtb2RpZnkgdGhlIHJlcXVlc3QuCiAgICAgaWYgKG1fY3VycmVudExvYWRDb250
aW51aW5nU3RhdGUgPT0gTG9hZENvbnRpbnVpbmdTdGF0ZTo6Q29udGludWluZ1dpdGhSZXF1ZXN0
KQpAQCAtMjkxNCw2ICsyOTA5LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6YWRkRXh0cmFGaWVsZHNU
b1JlcXVlc3QoUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBGcmFtZUxvYWRUeXAKIAogICAgIC8v
IERvbid0IHNldCB0aGUgY29va2llIHBvbGljeSBVUkwgaWYgaXQncyBhbHJlYWR5IGJlZW4gc2V0
LgogICAgIC8vIEJ1dCBtYWtlIHN1cmUgdG8gc2V0IGl0IG9uIGFsbCByZXF1ZXN0cyByZWdhcmRs
ZXNzIG9mIHByb3RvY29sLCBhcyBpdCBoYXMgc2lnbmlmaWNhbmNlIGJleW9uZCB0aGUgY29va2ll
IHBvbGljeSAoPHJkYXI6Ly9wcm9ibGVtLzY2MTY2NjQ+KS4KKyAgICBib29sIGlzTWFpblJlc291
cmNlID0gbWFpblJlc291cmNlID09IElzTWFpblJlc291cmNlOjpZZXM7CiAgICAgYm9vbCBpc01h
aW5GcmFtZU1haW5SZXNvdXJjZSA9IGlzTWFpblJlc291cmNlICYmIG1fZnJhbWUuaXNNYWluRnJh
bWUoKTsKICAgICBpZiAocmVxdWVzdC5maXJzdFBhcnR5Rm9yQ29va2llcygpLmlzRW1wdHkoKSkg
ewogICAgICAgICBpZiAoaXNNYWluRnJhbWVNYWluUmVzb3VyY2UpCkBAIC0zMDA4LDcgKzMwMDQs
NyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkUG9zdFJlcXVlc3QoRnJhbWVMb2FkUmVxdWVzdCYm
IHJlcXVlc3QsIGNvbnN0IFN0cmluZyYgcmVmZQogICAgIHdvcmtpbmdSZXNvdXJjZVJlcXVlc3Qu
c2V0SFRUUE1ldGhvZCgiUE9TVCIpOwogICAgIHdvcmtpbmdSZXNvdXJjZVJlcXVlc3Quc2V0SFRU
UEJvZHkoaW5SZXF1ZXN0Lmh0dHBCb2R5KCkpOwogICAgIHdvcmtpbmdSZXNvdXJjZVJlcXVlc3Qu
c2V0SFRUUENvbnRlbnRUeXBlKGNvbnRlbnRUeXBlKTsKLSAgICBhZGRFeHRyYUZpZWxkc1RvUmVx
dWVzdCh3b3JraW5nUmVzb3VyY2VSZXF1ZXN0LCBsb2FkVHlwZSwgdHJ1ZSk7CisgICAgYWRkRXh0
cmFGaWVsZHNUb1JlcXVlc3Qod29ya2luZ1Jlc291cmNlUmVxdWVzdCwgSXNNYWluUmVzb3VyY2U6
OlllcywgbG9hZFR5cGUpOwogCiAgICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IG1fZnJhbWUu
ZG9jdW1lbnQoKSkKICAgICAgICAgZG9jdW1lbnQtPmNvbnRlbnRTZWN1cml0eVBvbGljeSgpLT51
cGdyYWRlSW5zZWN1cmVSZXF1ZXN0SWZOZWVkZWQod29ya2luZ1Jlc291cmNlUmVxdWVzdCwgQ29u
dGVudFNlY3VyaXR5UG9saWN5OjpJbnNlY3VyZVJlcXVlc3RUeXBlOjpMb2FkKTsKQEAgLTMwNjEs
NyArMzA1Nyw3IEBAIHVuc2lnbmVkIGxvbmcgRnJhbWVMb2FkZXI6OmxvYWRSZXNvdXJjZVN5bmNo
cm9ub3VzbHkoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1CiAKICAgICBpbml0aWFsUmVxdWVz
dC5zZXRGaXJzdFBhcnR5Rm9yQ29va2llcyhtX2ZyYW1lLm1haW5GcmFtZSgpLmxvYWRlcigpLmRv
Y3VtZW50TG9hZGVyKCktPnJlcXVlc3QoKS51cmwoKSk7CiAgICAgCi0gICAgYWRkRXh0cmFGaWVs
ZHNUb1N1YnJlc291cmNlUmVxdWVzdChpbml0aWFsUmVxdWVzdCk7CisgICAgYWRkRXh0cmFGaWVs
ZHNUb1JlcXVlc3QoaW5pdGlhbFJlcXVlc3QsIElzTWFpblJlc291cmNlOjpObyk7CiAKICAgICB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIgPSAwOyAgICAKICAgICBSZXNvdXJjZVJlcXVlc3QgbmV3
UmVxdWVzdChpbml0aWFsUmVxdWVzdCk7CkBAIC0zNzYzLDcgKzM3NTksNyBAQCB2b2lkIEZyYW1l
TG9hZGVyOjpsb2FkRGlmZmVyZW50RG9jdW1lbnRJdGVtKEhpc3RvcnlJdGVtJiBpdGVtLCBIaXN0
b3J5SXRlbSogZnJvbQogCiAgICAgICAgIC8vIE1ha2Ugc3VyZSB0byBhZGQgZXh0cmEgZmllbGRz
IHRvIHRoZSByZXF1ZXN0IGFmdGVyIHRoZSBPcmlnaW4gaGVhZGVyIGlzIGFkZGVkIGZvciB0aGUg
Rm9ybURhdGEgY2FzZS4KICAgICAgICAgLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjE5NCBmb3IgbW9yZSBkaXNjdXNzaW9uLgotICAgICAgICBhZGRFeHRy
YUZpZWxkc1RvUmVxdWVzdChyZXF1ZXN0LCBsb2FkVHlwZSwgdHJ1ZSk7CisgICAgICAgIGFkZEV4
dHJhRmllbGRzVG9SZXF1ZXN0KHJlcXVlc3QsIElzTWFpblJlc291cmNlOjpZZXMsIGxvYWRUeXBl
KTsKICAgICAgICAgCiAgICAgICAgIC8vIEZJWE1FOiBTbGlnaHQgaGFjayB0byB0ZXN0IGlmIHRo
ZSBOU1VSTCBjYWNoZSBjb250YWlucyB0aGUgcGFnZSB3ZSdyZSBnb2luZyB0by4KICAgICAgICAg
Ly8gV2Ugd2FudCB0byBrbm93IHRoaXMgYmVmb3JlIHRhbGtpbmcgdG8gdGhlIHBvbGljeSBkZWxl
Z2F0ZSwgc2luY2UgaXQgYWZmZWN0cyB3aGV0aGVyIApAQCAtMzgwOCw3ICszODA0LDcgQEAgdm9p
ZCBGcmFtZUxvYWRlcjo6bG9hZERpZmZlcmVudERvY3VtZW50SXRlbShIaXN0b3J5SXRlbSYgaXRl
bSwgSGlzdG9yeUl0ZW0qIGZyb20KICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwog
ICAgICAgICB9CiAKLSAgICAgICAgYWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QocmVxdWVzdCwgbG9h
ZFR5cGUsIHRydWUpOworICAgICAgICBhZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChyZXF1ZXN0LCBJ
c01haW5SZXNvdXJjZTo6WWVzLCBsb2FkVHlwZSk7CiAKICAgICAgICAgUmVzb3VyY2VSZXF1ZXN0
IHJlcXVlc3RGb3JPcmlnaW5hbFVSTChyZXF1ZXN0KTsKICAgICAgICAgcmVxdWVzdEZvck9yaWdp
bmFsVVJMLnNldFVSTChpdGVtT3JpZ2luYWxVUkwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2Fk
ZXIuaAppbmRleCA1NTczZjRkN2I0M2U4MGE0ZTgzNjk0NTUzMzU4NzgzYzNmMDlhOGZiLi4zOWNl
OGJjNjVkZTQwOWU2NTdlNjZhNmIxNDEwZjdhNTk1ZGI1MGJhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
RnJhbWVMb2FkZXIuaApAQCAtOTEsNiArOTEsNyBAQCBlbnVtIGNsYXNzIE5ld0xvYWRJblByb2dy
ZXNzIDogYm9vbDsKIGVudW0gY2xhc3MgTmF2aWdhdGlvblBvbGljeURlY2lzaW9uIDogdWludDhf
dDsKIGVudW0gY2xhc3MgU2hvdWxkVHJlYXRBc0NvbnRpbnVpbmdMb2FkIDogYm9vbDsKIGVudW0g
Y2xhc3MgVXNlZExlZ2FjeVRMUyA6IGJvb2w7CitlbnVtIGNsYXNzIElzTWFpblJlc291cmNlIDog
Ym9vbCB7IE5vLCBZZXMgfTsKIAogc3RydWN0IFdpbmRvd0ZlYXR1cmVzOwogCkBAIC0yMjAsOCAr
MjIxLDYgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgZGV0YWNoRnJvbVBhcmVu
dCgpOwogICAgIHZvaWQgZGV0YWNoVmlld3NBbmREb2N1bWVudExvYWRlcigpOwogCi0gICAgdm9p
ZCBhZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYpOwot
ICAgIAogICAgIHN0YXRpYyB2b2lkIGFkZFNhbWVTaXRlSW5mb1RvUmVxdWVzdElmTmVlZGVkKFJl
c291cmNlUmVxdWVzdCYsIGNvbnN0IERvY3VtZW50KiBpbml0aWF0b3IgPSBudWxscHRyKTsKIAog
ICAgIGNvbnN0IEZyYW1lTG9hZGVyQ2xpZW50JiBjbGllbnQoKSBjb25zdCB7IHJldHVybiBtX2Ns
aWVudC5nZXQoKTsgfQpAQCAtMzMwLDYgKzMyOSw5IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEFs
d2F5c0FsbG93TG9jYWxXZWJhcmNoaXZlKGJvb2wgYWx3YXlzQWxsb3dMb2NhbFdlYmFyY2hpdmUp
IHsgbV9hbHdheXNBbGxvd0xvY2FsV2ViYXJjaGl2ZSA9IGFsd2F5c0FsbG93TG9jYWxXZWJhcmNo
aXZlOyB9CiAgICAgYm9vbCBhbHdheXNBbGxvd0xvY2FsV2ViYXJjaGl2ZSgpIGNvbnN0IHsgcmV0
dXJuIG1fYWx3YXlzQWxsb3dMb2NhbFdlYmFyY2hpdmU7IH0KIAorICAgIC8vIEZvciBzdWJyZXNv
dXJjZSByZXF1ZXN0cyB0aGUgRnJhbWVMb2FkVHlwZSBwYXJhbWV0ZXIgaGFzIG5vIGVmZmVjdCBh
bmQgY2FuIGJlIHNraXBwZWQuCisgICAgdm9pZCBhZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChSZXNv
dXJjZVJlcXVlc3QmLCBJc01haW5SZXNvdXJjZSwgRnJhbWVMb2FkVHlwZSA9IEZyYW1lTG9hZFR5
cGU6OlN0YW5kYXJkKTsKKwogcHJpdmF0ZToKICAgICBlbnVtIEZvcm1TdWJtaXNzaW9uQ2FjaGVM
b2FkUG9saWN5IHsKICAgICAgICAgTWF5QXR0ZW1wdENhY2hlT25seUxvYWRGb3JGb3JtU3VibWlz
c2lvbkl0ZW0sCkBAIC0zNDksNyArMzUxLDYgQEAgcHJpdmF0ZToKICAgICB2b2lkIHVwZGF0ZUZp
cnN0UGFydHlGb3JDb29raWVzKCk7CiAgICAgdm9pZCBzZXRGaXJzdFBhcnR5Rm9yQ29va2llcyhj
b25zdCBVUkwmKTsKIAotICAgIHZvaWQgYWRkRXh0cmFGaWVsZHNUb1JlcXVlc3QoUmVzb3VyY2VS
ZXF1ZXN0JiwgRnJhbWVMb2FkVHlwZSwgYm9vbCBpc01haW5SZXNvdXJjZSk7CiAgICAgUmVzb3Vy
Y2VSZXF1ZXN0Q2FjaGVQb2xpY3kgZGVmYXVsdFJlcXVlc3RDYWNoaW5nUG9saWN5KGNvbnN0IFJl
c291cmNlUmVxdWVzdCYsIEZyYW1lTG9hZFR5cGUsIGJvb2wgaXNNYWluUmVzb3VyY2UpOwogCiAg
ICAgdm9pZCBjbGVhclByb3Zpc2lvbmFsTG9hZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL1BpbmdMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1BpbmdMb2Fk
ZXIuY3BwCmluZGV4IGI2NDJiYzQ4NmQ5MTQzNGM5Y2VhMDBjYmUwMGU0MTc4ZjQ3MTBlMzUuLjM4
Yjk5MjQ1OTMzZDZlZGJiMTlhNjAwM2ZkZjUxOGIwMmY3MzQ0MDcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9QaW5nTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvUGluZ0xvYWRlci5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCB2b2lkIFBpbmdMb2FkZXI6Omxv
YWRJbWFnZShGcmFtZSYgZnJhbWUsIGNvbnN0IFVSTCYgdXJsKQogICAgIFN0cmluZyByZWZlcnJl
ciA9IFNlY3VyaXR5UG9saWN5OjpnZW5lcmF0ZVJlZmVycmVySGVhZGVyKGRvY3VtZW50LnJlZmVy
cmVyUG9saWN5KCksIHJlcXVlc3QudXJsKCksIGZyYW1lLmxvYWRlcigpLm91dGdvaW5nUmVmZXJy
ZXIoKSk7CiAgICAgaWYgKCFyZWZlcnJlci5pc0VtcHR5KCkpCiAgICAgICAgIHJlcXVlc3Quc2V0
SFRUUFJlZmVycmVyKHJlZmVycmVyKTsKLSAgICBmcmFtZS5sb2FkZXIoKS5hZGRFeHRyYUZpZWxk
c1RvU3VicmVzb3VyY2VSZXF1ZXN0KHJlcXVlc3QpOworICAgIGZyYW1lLmxvYWRlcigpLmFkZEV4
dHJhRmllbGRzVG9SZXF1ZXN0KHJlcXVlc3QsIElzTWFpblJlc291cmNlOjpObyk7CiAKICAgICBz
dGFydFBpbmdMb2FkKGZyYW1lLCByZXF1ZXN0LCBXVEZNb3ZlKG9yaWdpbmFsUmVxdWVzdEhlYWRl
ciksIFNob3VsZEZvbGxvd1JlZGlyZWN0czo6WWVzLCBDb250ZW50U2VjdXJpdHlQb2xpY3lJbXBv
c2l0aW9uOjpEb1BvbGljeUNoZWNrLCBSZWZlcnJlclBvbGljeTo6RW1wdHlTdHJpbmcpOwogfQpA
QCAtMTQwLDcgKzE0MCw3IEBAIHZvaWQgUGluZ0xvYWRlcjo6c2VuZFBpbmcoRnJhbWUmIGZyYW1l
LCBjb25zdCBVUkwmIHBpbmdVUkwsIGNvbnN0IFVSTCYgZGVzdGluYXRpCiAgICAgICAgIGF1dG8g
b3JpZ2luID0gU2VjdXJpdHlQb2xpY3k6OmdlbmVyYXRlT3JpZ2luSGVhZGVyKGRvY3VtZW50LnJl
ZmVycmVyUG9saWN5KCksIHJlcXVlc3QudXJsKCksIGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkp
OwogICAgICAgICByZXF1ZXN0LnNldEhUVFBPcmlnaW4ob3JpZ2luKTsKICAgICB9Ci0gICAgZnJh
bWUubG9hZGVyKCkuYWRkRXh0cmFGaWVsZHNUb1N1YnJlc291cmNlUmVxdWVzdChyZXF1ZXN0KTsK
KyAgICBmcmFtZS5sb2FkZXIoKS5hZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChyZXF1ZXN0LCBJc01h
aW5SZXNvdXJjZTo6Tm8pOwogICAgIHJlcXVlc3Quc2V0SFRUUEhlYWRlckZpZWxkKEhUVFBIZWFk
ZXJOYW1lOjpQaW5nVG8sIGRlc3RpbmF0aW9uVVJMKTsKICAgICBpZiAoIVNlY3VyaXR5UG9saWN5
OjpzaG91bGRIaWRlUmVmZXJyZXIocGluZ1VSTCwgZnJhbWUubG9hZGVyKCkub3V0Z29pbmdSZWZl
cnJlcigpKSkKICAgICAgICAgcmVxdWVzdC5zZXRIVFRQSGVhZGVyRmllbGQoSFRUUEhlYWRlck5h
bWU6OlBpbmdGcm9tLCBkb2N1bWVudC51cmwoKSk7CkBAIC0xODAsNyArMTgwLDcgQEAgdm9pZCBQ
aW5nTG9hZGVyOjpzZW5kVmlvbGF0aW9uUmVwb3J0KEZyYW1lJiBmcmFtZSwgY29uc3QgVVJMJiBy
ZXBvcnRVUkwsIFJlZjxGb3IKIAogICAgIEhUVFBIZWFkZXJNYXAgb3JpZ2luYWxSZXF1ZXN0SGVh
ZGVyID0gcmVxdWVzdC5odHRwSGVhZGVyRmllbGRzKCk7CiAKLSAgICBmcmFtZS5sb2FkZXIoKS5h
ZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0KHJlcXVlc3QpOworICAgIGZyYW1lLmxv
YWRlcigpLmFkZEV4dHJhRmllbGRzVG9SZXF1ZXN0KHJlcXVlc3QsIElzTWFpblJlc291cmNlOjpO
byk7CiAKICAgICBTdHJpbmcgcmVmZXJyZXIgPSBTZWN1cml0eVBvbGljeTo6Z2VuZXJhdGVSZWZl
cnJlckhlYWRlcihkb2N1bWVudC5yZWZlcnJlclBvbGljeSgpLCByZXBvcnRVUkwsIGZyYW1lLmxv
YWRlcigpLm91dGdvaW5nUmVmZXJyZXIoKSk7CiAgICAgaWYgKCFyZWZlcnJlci5pc0VtcHR5KCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAppbmRl
eCAyM2U2ZmYzZTUzY2NhZmM3NWI2ZDViMmRiY2RmMmQwZmYxY2NkM2U0Li45OWIyMzUyNWM4Nzlj
MzMxMGVkNzFlZmRiODNkYTBiM2M5MTIyOGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKQEAgLTI4NCw4ICsyODQsNyBAQCB2b2lkIENhY2hl
ZFJlc291cmNlOjpsb2FkKENhY2hlZFJlc291cmNlTG9hZGVyJiBjYWNoZWRSZXNvdXJjZUxvYWRl
cikKICAgICAvLyBOYXZpZ2F0aW9uIGFsZ29yaXRobSBpcyBzZXR0aW5nIHVwIHRoZSByZXF1ZXN0
IGJlZm9yZSBzZW5kaW5nIGl0IHRvIENhY2hlZFJlc291cmNlTG9hZGVyP0NhY2hlZFJlc291cmNl
LgogICAgIC8vIFNvIG5vIG5lZWQgZm9yIGV4dHJhIGZpZWxkcyBmb3IgTWFpblJlc291cmNlLgog
ICAgIGlmICh0eXBlKCkgIT0gVHlwZTo6TWFpblJlc291cmNlKQotICAgICAgICBmcmFtZUxvYWRl
ci5hZGRFeHRyYUZpZWxkc1RvU3VicmVzb3VyY2VSZXF1ZXN0KG1fcmVzb3VyY2VSZXF1ZXN0KTsK
LQorICAgICAgICBmcmFtZUxvYWRlci5hZGRFeHRyYUZpZWxkc1RvUmVxdWVzdChtX3Jlc291cmNl
UmVxdWVzdCwgSXNNYWluUmVzb3VyY2U6Ok5vKTsKIAogICAgIC8vIEZJWE1FOiBJdCdzIHVuZm9y
dHVuYXRlIHRoYXQgdGhlIGNhY2hlIGxheWVyIGFuZCBiZWxvdyBnZXQgdG8ga25vdyBhbnl0aGlu
ZyBhYm91dCBmcmFnbWVudCBpZGVudGlmaWVycy4KICAgICAvLyBXZSBzaG91bGQgbG9vayBpbnRv
IHJlbW92aW5nIHRoZSBleHBlY3RhdGlvbiBvZiB0aGF0IGtub3dsZWRnZSBmcm9tIHRoZSBwbGF0
Zm9ybSBuZXR3b3JrIHN0YWNrcy4K
</data>

          </attachment>
      

    </bug>

</bugzilla>