<?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>190492</bug_id>
          
          <creation_ts>2018-10-11 14:58:45 -0700</creation_ts>
          <short_desc>[css-grid] Fix percentages in relative offsets for grid items</short_desc>
          <delta_ts>2018-12-21 04:31:34 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.chromium.org/p/chromium/issues/detail?id=835607</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>BlinkMergeCandidate, InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Manuel Rego Casasnovas">rego</reporter>
          <assigned_to name="Manuel Rego Casasnovas">rego</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jfernandez</cc>
    
    <cc>rego</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>svillar</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1468188</commentid>
    <comment_count>0</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2018-10-11 14:58:45 -0700</bug_when>
    <thetext>There are issues if you use position relative and percentage offsets in grid items.
This has been already fixed in Blink: https://bugs.chromium.org/p/chromium/issues/detail?id=835607</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468198</commentid>
    <comment_count>1</comment_count>
      <attachid>352088</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2018-10-11 15:12:58 -0700</bug_when>
    <thetext>Created attachment 352088
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1469746</commentid>
    <comment_count>2</comment_count>
      <attachid>352088</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2018-10-16 09:31:46 -0700</bug_when>
    <thetext>Comment on attachment 352088
Patch

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

Looks good overall. However I am not sure whether this change could cause performance regressions. See bellow, have you observed any significant change in Blink?

&gt; Source/WebCore/rendering/RenderBoxModelObject.cpp:426
&gt; +    bool hasOverrideContainingBlockContent = hasOverrideContainingBlockContentHeight();

You&apos;re unconditionally adding a hashmap query here. I think it&apos;s better to have the call inside the if so we can shortcircuit it if any of the previous conditions is already true.

On the other hand it might be the case that we need to call it twice in the worst case...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470054</commentid>
    <comment_count>3</comment_count>
      <attachid>352088</attachid>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2018-10-17 01:47:06 -0700</bug_when>
    <thetext>Comment on attachment 352088
Patch

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

&gt;&gt; Source/WebCore/rendering/RenderBoxModelObject.cpp:426
&gt;&gt; +    bool hasOverrideContainingBlockContent = hasOverrideContainingBlockContentHeight();
&gt; 
&gt; You&apos;re unconditionally adding a hashmap query here. I think it&apos;s better to have the call inside the if so we can shortcircuit it if any of the previous conditions is already true.
&gt; 
&gt; On the other hand it might be the case that we need to call it twice in the worst case...

We should get rid of the hashmap to manage the RenderBox override size, as we do in Blink. 

About this specific case, I wouldn&apos;t complicate the code because of performance, since we&apos;ll probably get rid of the hashmap in the near future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1470108</commentid>
    <comment_count>4</comment_count>
      <attachid>352088</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2018-10-17 08:44:24 -0700</bug_when>
    <thetext>Comment on attachment 352088
Patch

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

&gt;&gt;&gt; Source/WebCore/rendering/RenderBoxModelObject.cpp:426
&gt;&gt;&gt; +    bool hasOverrideContainingBlockContent = hasOverrideContainingBlockContentHeight();
&gt;&gt; 
&gt;&gt; You&apos;re unconditionally adding a hashmap query here. I think it&apos;s better to have the call inside the if so we can shortcircuit it if any of the previous conditions is already true.
&gt;&gt; 
&gt;&gt; On the other hand it might be the case that we need to call it twice in the worst case...
&gt; 
&gt; We should get rid of the hashmap to manage the RenderBox override size, as we do in Blink. 
&gt; 
&gt; About this specific case, I wouldn&apos;t complicate the code because of performance, since we&apos;ll probably get rid of the hashmap in the near future.

We&apos;re getting some issues in Blink, so until we stablize the code there I don&apos;t think it makes sense to merge this on WebKit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490076</commentid>
    <comment_count>5</comment_count>
      <attachid>357871</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2018-12-20 14:24:25 -0800</bug_when>
    <thetext>Created attachment 357871
Rebased patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490087</commentid>
    <comment_count>6</comment_count>
      <attachid>357874</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2018-12-20 14:55:16 -0800</bug_when>
    <thetext>Created attachment 357874
Rebased patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490091</commentid>
    <comment_count>7</comment_count>
      <attachid>357875</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2018-12-20 15:00:59 -0800</bug_when>
    <thetext>Created attachment 357875
Apply suggested changes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490092</commentid>
    <comment_count>8</comment_count>
      <attachid>352088</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2018-12-20 15:01:55 -0800</bug_when>
    <thetext>Comment on attachment 352088
Patch

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

Thanks for the reviews. PTAL.

&gt;&gt;&gt;&gt; Source/WebCore/rendering/RenderBoxModelObject.cpp:426
&gt;&gt;&gt;&gt; +    bool hasOverrideContainingBlockContent = hasOverrideContainingBlockContentHeight();
&gt;&gt;&gt; 
&gt;&gt;&gt; You&apos;re unconditionally adding a hashmap query here. I think it&apos;s better to have the call inside the if so we can shortcircuit it if any of the previous conditions is already true.
&gt;&gt;&gt; 
&gt;&gt;&gt; On the other hand it might be the case that we need to call it twice in the worst case...
&gt;&gt; 
&gt;&gt; We should get rid of the hashmap to manage the RenderBox override size, as we do in Blink. 
&gt;&gt; 
&gt;&gt; About this specific case, I wouldn&apos;t complicate the code because of performance, since we&apos;ll probably get rid of the hashmap in the near future.
&gt; 
&gt; We&apos;re getting some issues in Blink, so until we stablize the code there I don&apos;t think it makes sense to merge this on WebKit.

The code in Blink seems to have stabilized.

I&apos;m applying the change suggested by Sergio on the last version of this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490317</commentid>
    <comment_count>9</comment_count>
      <attachid>357875</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-21 04:30:05 -0800</bug_when>
    <thetext>Comment on attachment 357875
Apply suggested changes

Clearing flags on attachment: 357875

Committed r239502: &lt;https://trac.webkit.org/changeset/239502&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490318</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-21 04:30:07 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490319</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-12-21 04:31:34 -0800</bug_when>
    <thetext>&lt;rdar://problem/46898273&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>352088</attachid>
            <date>2018-10-11 15:12:58 -0700</date>
            <delta_ts>2018-12-20 14:24:22 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-190492-20181012001257.patch</filename>
            <type>text/plain</type>
            <size>27729</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM2OTc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjJiNTdjZTNjMTI4MDg5
MTJmMGVjOGY2OGZiNjAwMTU4NTY3MjQwNC4uNDQzZmM3MDI3ZTcwMDE3OWEwMGJjYmVjM2I4MzQ0
NGU3NzAxODczNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE4LTEwLTExICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gRml4IHBlcmNlbnRhZ2VzIGluIHJlbGF0aXZlIG9mZnNldHMgZm9yIGdyaWQgaXRlbXMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDQ5MgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBtZXRob2Qg
UmVuZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRpb25PZmZzZXQoKSB3YXMgbm90IGNv
bnNpZGVyaW5nIHRoZSBjYXNlIG9mIGdyaWQgaXRlbXMsCisgICAgICAgIHdoZXJlIHRoZSBjb250
YWluaW5nIGJsb2NrIGlzIHRoZSBncmlkIGFyZWEuCisgICAgICAgIFRoZSBwYXRjaCBtb2RpZmll
cyB0aGUgbWV0aG9kIHNvIHRoZSBuZXcgY29kZSB1c2VzIG92ZXJyaWRlQ29udGFpbmluZ0Jsb2Nr
Q29udGVudFdpZHRofEhlaWdodCB3aGVuIHJlcXVpcmVkLgorCisgICAgICAgIFRlc3RzOiBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL2dyaWQt
aXRlbXMtcmVsYXRpdmUtb2Zmc2V0cy0wMDEuaHRtbAorICAgICAgICAgICAgICAgaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlkLWl0ZW1z
LXJlbGF0aXZlLW9mZnNldHMtMDAyLmh0bWwKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJC
b3guY3BwOiBJbXBsZW1lbnQgdGhlIHBoeXNpY2FsIHZlcnNpb25zIG9mIHRoZSBhbHJlYWR5IGV4
aXN0ZW50IG1ldGhvZHMuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6Om92ZXJyaWRlQ29u
dGFpbmluZ0Jsb2NrQ29udGVudFdpZHRoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJveDo6b3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0IGNvbnN0KToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckJveDo6aGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50
V2lkdGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpoYXNPdmVycmlkZUNv
bnRhaW5pbmdCbG9ja0NvbnRlbnRIZWlnaHQgY29uc3QpOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJCb3guaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRp
b25PZmZzZXQgY29uc3QpOiBNb2RpZmllZCBtZXRob2QKKyAgICAgICAgdG8gdGFrZSBpbnRvIGFj
Y291bnQgb3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGh8SGVpZ2h0IGZvciBncmlk
IGl0ZW1zLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oOiBBZGRl
ZCBuZXcgaGVhZGVycyBmb3IgcGh5c2ljYWwgdmlydHVhbCBtZXRob2RzCisgICAgICAgIHRoYXQg
d2lsbCBiZSBvdmVycmlkZGVuIGluIFJlbmRlckJveC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJveE1vZGVsT2JqZWN0OjpvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCBjb25z
dCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6b3ZlcnJpZGVDb250
YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJveE1vZGVsT2JqZWN0OjpoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCBj
b25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6aGFzT3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0IGNvbnN0KToKKwogMjAxOC0xMC0wOSAgT3Jp
b2wgQnJ1ZmF1ICA8b2JydWZhdUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlc29sdmUgaW5zZXQg
cHJvcGVydGllcyB0byBjb21wdXRlZCBzdHlsZSB3aGVuIHRoZXJlIGlzIG92ZXJjb25zdHJhaW50
bWVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCA3N2JmMmQyN2Qz
YTQyNDczYWE0NWRlMmQzZWVhZWMzNjhmODExYWZjLi5hZWUwNDdlZGMwYmZhMjg2ZThhYzU1NWVh
MzdlZWY1MTRkZTFhZmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApA
QCAtOTksNiArOTksNyBAQCBzdGF0aWMgT3ZlcnJpZGVTaXplTWFwKiBnT3ZlcnJpZGVDb250ZW50
TG9naWNhbFdpZHRoTWFwID0gbnVsbHB0cjsKIAogLy8gVXNlZCBieSBncmlkIGVsZW1lbnRzIHRv
IHByb3Blcmx5IHNpemUgdGhlaXIgZ3JpZCBpdGVtcy4KIHR5cGVkZWYgV1RGOjpIYXNoTWFwPGNv
bnN0IFJlbmRlckJveCosIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4+IE92ZXJyaWRlT3B0aW9u
YWxTaXplTWFwOworLy8gRklYTUU6IFdlIHNob3VsZCBzdG9yZSB0aGVzZSBiYXNlZCBvbiBwaHlz
aWNhbCBkaXJlY3Rpb24uCiBzdGF0aWMgT3ZlcnJpZGVPcHRpb25hbFNpemVNYXAqIGdPdmVycmlk
ZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwID0gbnVsbHB0cjsKIHN0YXRp
YyBPdmVycmlkZU9wdGlvbmFsU2l6ZU1hcCogZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVu
dExvZ2ljYWxXaWR0aE1hcCA9IG51bGxwdHI7CiAKQEAgLTEwNzMsNiArMTA3NCw0NCBAQCBMYXlv
dXRVbml0IFJlbmRlckJveDo6b3ZlcnJpZGVDb250ZW50TG9naWNhbEhlaWdodCgpIGNvbnN0CiAg
ICAgcmV0dXJuIGdPdmVycmlkZUNvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwLT5nZXQodGhpcyk7CiB9
CiAKK3N0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gUmVuZGVyQm94OjpvdmVycmlkZUNvbnRhaW5p
bmdCbG9ja0NvbnRlbnRXaWR0aCgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGhhc092ZXJyaWRlQ29u
dGFpbmluZ0Jsb2NrQ29udGVudFdpZHRoKCkpOworICAgIHJldHVybiBjb250YWluaW5nQmxvY2so
KS0+c3R5bGUoKS5pc0hvcml6b250YWxXcml0aW5nTW9kZSgpCisgICAgICAgID8gZ092ZXJyaWRl
Q29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0aE1hcC0+Z2V0KHRoaXMpCisgICAgICAg
IDogZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAtPmdldCh0
aGlzKTsKK30KKworc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBSZW5kZXJCb3g6Om92ZXJyaWRl
Q29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGhhc092
ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpKTsKKyAgICByZXR1cm4gY29udGFp
bmluZ0Jsb2NrKCktPnN0eWxlKCkuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKQorICAgICAgICA/
IGdPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwLT5nZXQodGhp
cykKKyAgICAgICAgOiBnT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRo
TWFwLT5nZXQodGhpcyk7Cit9CisKK2Jvb2wgUmVuZGVyQm94OjpoYXNPdmVycmlkZUNvbnRhaW5p
bmdCbG9ja0NvbnRlbnRXaWR0aCgpIGNvbnN0Cit7CisgICAgUmVuZGVyQmxvY2sqIGNiID0gY29u
dGFpbmluZ0Jsb2NrKCk7CisgICAgaWYgKCFjYikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisg
ICAgcmV0dXJuIGNiLT5zdHlsZSgpLmlzSG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkKKyAgICAgICAg
PyBnT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRoTWFwICYmIGdPdmVy
cmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsV2lkdGhNYXAtPmNvbnRhaW5zKHRoaXMp
CisgICAgICAgIDogZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRN
YXAgJiYgZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAtPmNv
bnRhaW5zKHRoaXMpOworfQorCitib29sIFJlbmRlckJveDo6aGFzT3ZlcnJpZGVDb250YWluaW5n
QmxvY2tDb250ZW50SGVpZ2h0KCkgY29uc3QKK3sKKyAgICBSZW5kZXJCbG9jayogY2IgPSBjb250
YWluaW5nQmxvY2soKTsKKyAgICBpZiAoIWNiKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAg
ICByZXR1cm4gY2ItPnN0eWxlKCkuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKQorICAgICAgICA/
IGdPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwICYmIGdPdmVy
cmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwLT5jb250YWlucyh0aGlz
KQorICAgICAgICA6IGdPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0
TWFwICYmIGdPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwLT5j
b250YWlucyh0aGlzKTsKK30KKwogc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBSZW5kZXJCb3g6
Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0aCgpIGNvbnN0CiB7CiAg
ICAgQVNTRVJUKGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0aCgp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaAppbmRleCAyNjU3NDdlZDIzYzdhYjBj
N2Y0ZTA0YzI1ODZhODNhZmYyY2QyZDM4Li5iOGM1M2M2N2I3MDYzMzc1NjQyNmJjYjNhMjRjYWNl
YTNiZDgwODYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oCkBAIC0zMTQsNiAr
MzE0LDEwIEBAIHB1YmxpYzoKICAgICB2b2lkIGNsZWFyT3ZlcnJpZGVDb250ZW50TG9naWNhbEhl
aWdodCgpOwogICAgIHZvaWQgY2xlYXJPdmVycmlkZUNvbnRlbnRMb2dpY2FsV2lkdGgoKTsKIAor
ICAgIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gb3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250
ZW50V2lkdGgoKSBjb25zdCBvdmVycmlkZTsKKyAgICBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+
IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpIGNvbnN0IG92ZXJyaWRlOwor
ICAgIGJvb2wgaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGgoKSBjb25zdCBv
dmVycmlkZTsKKyAgICBib29sIGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdo
dCgpIGNvbnN0IG92ZXJyaWRlOwogICAgIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gb3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRoKCkgY29uc3Q7CiAgICAgc3RkOjpv
cHRpb25hbDxMYXlvdXRVbml0PiBvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2Fs
SGVpZ2h0KCkgY29uc3Q7CiAgICAgYm9vbCBoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRl
bnRMb2dpY2FsV2lkdGgoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCmluZGV4IDUwMmVhZjUxMTNiNDFkYjhiNzM1YTdkMjlj
MjlkMGU1ZDZhNGM5NWUuLmI0NGE2NGM3M2IxMDc0NjEyNTMxZGZhMzQ0MzBmNDc3ZDBmYjZhZjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVj
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0
LmNwcApAQCAtNDAxLDEzICs0MDEsMTggQEAgTGF5b3V0U2l6ZSBSZW5kZXJCb3hNb2RlbE9iamVj
dDo6cmVsYXRpdmVQb3NpdGlvbk9mZnNldCgpIGNvbnN0CiAgICAgLy8gaW4gdGhlIGNhc2Ugb2Yg
cmVsYXRpdmUgcG9zaXRpb25pbmcgdXNpbmcgcGVyY2VudGFnZXMsIHdlIGNhbid0IGRvIHRoaXMu
ICBUaGUgb2Zmc2V0IHNob3VsZCBhbHdheXMgYmUgcmVzb2x2ZWQgdXNpbmcgdGhlCiAgICAgLy8g
YXZhaWxhYmxlIHdpZHRoIG9mIHRoZSBjb250YWluaW5nIGJsb2NrLiAgVGhlcmVmb3JlIHdlIGRv
bid0IHVzZSBjb250YWluaW5nQmxvY2tMb2dpY2FsV2lkdGhGb3JDb250ZW50KCkgaGVyZSwgYnV0
IGluc3RlYWQgZXhwbGljaXRseQogICAgIC8vIGNhbGwgYXZhaWxhYmxlV2lkdGggb24gb3VyIGNv
bnRhaW5pbmcgYmxvY2suCi0gICAgaWYgKCFzdHlsZSgpLmxlZnQoKS5pc0F1dG8oKSkgewotICAg
ICAgICBpZiAoIXN0eWxlKCkucmlnaHQoKS5pc0F1dG8oKSAmJiAhY29udGFpbmluZ0Jsb2NrKCkt
PnN0eWxlKCkuaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpKQotICAgICAgICAgICAgb2Zmc2V0LnNl
dFdpZHRoKC12YWx1ZUZvckxlbmd0aChzdHlsZSgpLnJpZ2h0KCksICFzdHlsZSgpLnJpZ2h0KCku
aXNGaXhlZCgpID8gY29udGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZVdpZHRoKCkgOiBMYXlvdXRV
bml0KCkpKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgb2Zmc2V0LmV4cGFuZCh2YWx1ZUZv
ckxlbmd0aChzdHlsZSgpLmxlZnQoKSwgIXN0eWxlKCkubGVmdCgpLmlzRml4ZWQoKSA/IGNvbnRh
aW5pbmdCbG9jaygpLT5hdmFpbGFibGVXaWR0aCgpIDogTGF5b3V0VW5pdCgpKSwgMCk7Ci0gICAg
fSBlbHNlIGlmICghc3R5bGUoKS5yaWdodCgpLmlzQXV0bygpKSB7Ci0gICAgICAgIG9mZnNldC5l
eHBhbmQoLXZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkucmlnaHQoKSwgIXN0eWxlKCkucmlnaHQoKS5p
c0ZpeGVkKCkgPyBjb250YWluaW5nQmxvY2soKS0+YXZhaWxhYmxlV2lkdGgoKSA6IExheW91dFVu
aXQoKSksIDApOworICAgIC8vIEhvd2V2ZXIgZm9yIGdyaWQgaXRlbXMgdGhlIGNvbnRhaW5pbmcg
YmxvY2sgaXMgdGhlIGdyaWQgYXJlYSwgc28gb2Zmc2V0cyBzaG91bGQgYmUgcmVzb2x2ZWQgYWdh
aW5zdCB0aGF0OgorICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtZ3JpZC8jZ3Jp
ZC1pdGVtLXNpemluZworICAgIGlmICghc3R5bGUoKS5sZWZ0KCkuaXNBdXRvKCkgfHwgIXN0eWxl
KCkucmlnaHQoKS5pc0F1dG8oKSkgeworICAgICAgICBMYXlvdXRVbml0IGF2YWlsYWJsZVdpZHRo
ID0gaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGgoKQorICAgICAgICAgICAg
PyBvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpLnZhbHVlX29yKExheW91dFVu
aXQoKSkgOiBjb250YWluaW5nQmxvY2soKS0+YXZhaWxhYmxlV2lkdGgoKTsKKyAgICAgICAgaWYg
KCFzdHlsZSgpLmxlZnQoKS5pc0F1dG8oKSkgeworICAgICAgICAgICAgaWYgKCFzdHlsZSgpLnJp
Z2h0KCkuaXNBdXRvKCkgJiYgIWNvbnRhaW5pbmdCbG9jaygpLT5zdHlsZSgpLmlzTGVmdFRvUmln
aHREaXJlY3Rpb24oKSkKKyAgICAgICAgICAgICAgICBvZmZzZXQuc2V0V2lkdGgoLXZhbHVlRm9y
TGVuZ3RoKHN0eWxlKCkucmlnaHQoKSwgIXN0eWxlKCkucmlnaHQoKS5pc0ZpeGVkKCkgPyBhdmFp
bGFibGVXaWR0aCA6IExheW91dFVuaXQoKSkpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAg
ICAgICAgIG9mZnNldC5leHBhbmQodmFsdWVGb3JMZW5ndGgoc3R5bGUoKS5sZWZ0KCksICFzdHls
ZSgpLmxlZnQoKS5pc0ZpeGVkKCkgPyBhdmFpbGFibGVXaWR0aCA6IExheW91dFVuaXQoKSksIDAp
OworICAgICAgICB9IGVsc2UgaWYgKCFzdHlsZSgpLnJpZ2h0KCkuaXNBdXRvKCkpCisgICAgICAg
ICAgICBvZmZzZXQuZXhwYW5kKC12YWx1ZUZvckxlbmd0aChzdHlsZSgpLnJpZ2h0KCksICFzdHls
ZSgpLnJpZ2h0KCkuaXNGaXhlZCgpID8gYXZhaWxhYmxlV2lkdGggOiBMYXlvdXRVbml0KCkpLCAw
KTsKICAgICB9CiAKICAgICAvLyBJZiB0aGUgY29udGFpbmluZyBibG9jayBvZiBhIHJlbGF0aXZl
bHkgcG9zaXRpb25lZCBlbGVtZW50IGRvZXMgbm90CkBAIC00MTYsMTcgKzQyMSwzMCBAQCBMYXlv
dXRTaXplIFJlbmRlckJveE1vZGVsT2JqZWN0OjpyZWxhdGl2ZVBvc2l0aW9uT2Zmc2V0KCkgY29u
c3QKICAgICAvLyB3aGVyZSA8aHRtbD4gYW5kIDxib2R5PiBhc3N1bWUgdGhlIHNpemUgb2YgdGhl
IHZpZXdwb3J0LiBJbiB0aGlzIGNhc2UsCiAgICAgLy8gY2FsY3VsYXRlIHRoZSBwZXJjZW50IG9m
ZnNldCBiYXNlZCBvbiB0aGlzIGhlaWdodC4KICAgICAvLyBTZWUgPGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjM5Nj4uCisgICAgLy8gQW5vdGhlciBleGNlcHRpb24g
aXMgYSBncmlkIGl0ZW0sIGFzIHRoZSBjb250YWluaW5nIGJsb2NrIGlzIHRoZSBncmlkIGFyZWE6
CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy1ncmlkLyNncmlkLWl0ZW0tc2l6
aW5nCisgICAgYm9vbCBoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnQgPSBoYXNPdmVy
cmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRIZWlnaHQoKTsKICAgICBpZiAoIXN0eWxlKCkudG9w
KCkuaXNBdXRvKCkKICAgICAgICAgJiYgKCFzdHlsZSgpLnRvcCgpLmlzUGVyY2VudE9yQ2FsY3Vs
YXRlZCgpCiAgICAgICAgICAgICB8fCAhY29udGFpbmluZ0Jsb2NrKCktPmhhc0F1dG9IZWlnaHRP
ckNvbnRhaW5pbmdCbG9ja1dpdGhBdXRvSGVpZ2h0KCkKLSAgICAgICAgICAgIHx8IGNvbnRhaW5p
bmdCbG9jaygpLT5zdHJldGNoZXNUb1ZpZXdwb3J0KCkpKQotICAgICAgICBvZmZzZXQuZXhwYW5k
KDAsIHZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkudG9wKCksICFzdHlsZSgpLnRvcCgpLmlzRml4ZWQo
KSA/IGNvbnRhaW5pbmdCbG9jaygpLT5hdmFpbGFibGVIZWlnaHQoKSA6IExheW91dFVuaXQoKSkp
OwotCi0gICAgZWxzZSBpZiAoIXN0eWxlKCkuYm90dG9tKCkuaXNBdXRvKCkKKyAgICAgICAgICAg
IHx8IGNvbnRhaW5pbmdCbG9jaygpLT5zdHJldGNoZXNUb1ZpZXdwb3J0KCkKKyAgICAgICAgICAg
IHx8IGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudCkpIHsKKyAgICAgICAgLy8gRklY
TUU6IFRoZSBjb21wdXRhdGlvbiBvZiB0aGUgYXZhaWxhYmxlIGhlaWdodCBpcyByZXBlYXRlZCBs
YXRlciBmb3IgImJvdHRvbSIuCisgICAgICAgIC8vIFdlIGNvdWxkIHJlZmFjdG9yIHRoaXMgYW5k
IG1vdmUgaXQgdG8gc29tZSBjb21tb24gY29kZSBmb3IgYm90aCBpZnMsIGhvd2V2ZXIgbW92aW5n
IGl0IG91dHNpZGUgb2YgdGhlIGlmcworICAgICAgICAvLyBpcyBub3QgcG9zc2libGUgYXMgaXQn
ZCBjYXVzZSBwZXJmb3JtYW5jZSByZWdyZXNzaW9ucy4KKyAgICAgICAgb2Zmc2V0LmV4cGFuZCgw
LCB2YWx1ZUZvckxlbmd0aChzdHlsZSgpLnRvcCgpLCAhc3R5bGUoKS50b3AoKS5pc0ZpeGVkKCkK
KyAgICAgICAgICAgID8gKGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudCA/IG92ZXJy
aWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpLnZhbHVlX29yKExheW91dFVuaXQoKSkg
OiBjb250YWluaW5nQmxvY2soKS0+YXZhaWxhYmxlSGVpZ2h0KCkpCisgICAgICAgICAgICA6IExh
eW91dFVuaXQoKSkpOworICAgIH0gZWxzZSBpZiAoIXN0eWxlKCkuYm90dG9tKCkuaXNBdXRvKCkK
ICAgICAgICAgJiYgKCFzdHlsZSgpLmJvdHRvbSgpLmlzUGVyY2VudE9yQ2FsY3VsYXRlZCgpCiAg
ICAgICAgICAgICB8fCAhY29udGFpbmluZ0Jsb2NrKCktPmhhc0F1dG9IZWlnaHRPckNvbnRhaW5p
bmdCbG9ja1dpdGhBdXRvSGVpZ2h0KCkKLSAgICAgICAgICAgIHx8IGNvbnRhaW5pbmdCbG9jaygp
LT5zdHJldGNoZXNUb1ZpZXdwb3J0KCkpKQotICAgICAgICBvZmZzZXQuZXhwYW5kKDAsIC12YWx1
ZUZvckxlbmd0aChzdHlsZSgpLmJvdHRvbSgpLCAhc3R5bGUoKS5ib3R0b20oKS5pc0ZpeGVkKCkg
PyBjb250YWluaW5nQmxvY2soKS0+YXZhaWxhYmxlSGVpZ2h0KCkgOiBMYXlvdXRVbml0KCkpKTsK
KyAgICAgICAgICAgIHx8IGNvbnRhaW5pbmdCbG9jaygpLT5zdHJldGNoZXNUb1ZpZXdwb3J0KCkK
KyAgICAgICAgICAgIHx8IGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudCkpIHsKKyAg
ICAgICAgLy8gRklYTUU6IENoZWNrIGNvbW1lbnQgYWJvdmUgZm9yICJ0b3AiLCBpdCBhcHBsaWVz
IGhlcmUgdG9vLgorICAgICAgICBvZmZzZXQuZXhwYW5kKDAsIC12YWx1ZUZvckxlbmd0aChzdHls
ZSgpLmJvdHRvbSgpLCAhc3R5bGUoKS5ib3R0b20oKS5pc0ZpeGVkKCkKKyAgICAgICAgICAgID8g
KGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudCA/IG92ZXJyaWRlQ29udGFpbmluZ0Js
b2NrQ29udGVudEhlaWdodCgpLnZhbHVlX29yKExheW91dFVuaXQoKSkgOiBjb250YWluaW5nQmxv
Y2soKS0+YXZhaWxhYmxlSGVpZ2h0KCkpCisgICAgICAgICAgICA6IExheW91dFVuaXQoKSkpOwor
ICAgIH0KIAogICAgIHJldHVybiBvZmZzZXQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCmluZGV4IDk0YjY5YTFjNWFmNDJiZTRmMDZkMTNh
ODAzMzhhOTFlMjc3NTdjYjIuLmRiMDc1MjM5MDY4MjAyZjUwY2E1NGQ0ZWJlZGU2OGM4YTBjMzdh
YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9i
amVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVj
dC5oCkBAIC0yNDMsNyArMjQzLDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIExheW91dFJlY3Qg
cGFpbnRSZWN0VG9DbGlwT3V0RnJvbUJvcmRlcihjb25zdCBMYXlvdXRSZWN0JikgeyByZXR1cm4g
TGF5b3V0UmVjdCgpOyB9OwogCiAgICAgYm9vbCBoYXNSdW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRp
b25zKCkgY29uc3Q7Ci0gICAgCisKKyAgICB2aXJ0dWFsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5p
dD4gb3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGgoKSBjb25zdCB7IEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOyByZXR1cm4gTGF5b3V0VW5pdCgtMSk7IH0KKyAgICB2aXJ0dWFsIHN0ZDo6
b3B0aW9uYWw8TGF5b3V0VW5pdD4gb3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0
KCkgY29uc3QgeyBBU1NFUlRfTk9UX1JFQUNIRUQoKTsgcmV0dXJuIExheW91dFVuaXQoLTEpOyB9
CisgICAgdmlydHVhbCBib29sIGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRo
KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFzT3ZlcnJpZGVD
b250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKwog
cHJvdGVjdGVkOgogICAgIFJlbmRlckJveE1vZGVsT2JqZWN0KEVsZW1lbnQmLCBSZW5kZXJTdHls
ZSYmLCBCYXNlVHlwZUZsYWdzKTsKICAgICBSZW5kZXJCb3hNb2RlbE9iamVjdChEb2N1bWVudCYs
IFJlbmRlclN0eWxlJiYsIEJhc2VUeXBlRmxhZ3MpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VM
b2cKaW5kZXggMDM2YTEwZWY0OWZmNDg4MjQxYzc0YjViNDAxMDEwYThmNThlM2I0OS4uOGNhNDM1
YTFmOTc2YWQ3NDEzZGM3NmFjOWQzNWUxOTc3ODRjZDYzOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTgtMTAtMTEgIE1hbnVlbCBSZWdvIENhc2Fz
bm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAgW2Nzcy1ncmlkXSBGaXggcGVyY2Vu
dGFnZXMgaW4gcmVsYXRpdmUgb2Zmc2V0cyBmb3IgZ3JpZCBpdGVtcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwNDkyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wb3J0ZWQgV1BUIHRlc3RzIGNvdmVy
aW5nIHRoaXMgaXNzdWUuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1n
cmlkL2dyaWQtaXRlbXMvZ3JpZC1pdGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMS1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3Jp
ZC1pdGVtcy9ncmlkLWl0ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAxLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlkLWl0
ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL2dyaWQtaXRlbXMtcmVs
YXRpdmUtb2Zmc2V0cy0wMDIuaHRtbDogQWRkZWQuCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRl
c3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL3N1cHBvcnQvZ3JpZC5jc3M6CisgICAgICAgICgu
dGhpcmRSb3dUaGlyZENvbHVtbik6CisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9j
c3MtZ3JpZC9ncmlkLWl0ZW1zL3N1cHBvcnQvdzNjLWltcG9ydC5sb2c6CisgICAgICAgICogd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL3czYy1pbXBvcnQubG9nOgor
CiAyMDE4LTEwLTA5ICBPcmlvbCBCcnVmYXUgIDxvYnJ1ZmF1QGlnYWxpYS5jb20+CiAKICAgICAg
ICAgUmVzb2x2ZSBpbnNldCBwcm9wZXJ0aWVzIHRvIGNvbXB1dGVkIHN0eWxlIHdoZW4gdGhlcmUg
aXMgb3ZlcmNvbnN0cmFpbnRtZW50CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL2dyaWQtaXRlbXMt
cmVsYXRpdmUtb2Zmc2V0cy0wMDEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlkLWl0ZW1z
LXJlbGF0aXZlLW9mZnNldHMtMDAxLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNjhlMGI3NmI4
NWU4NGU2N2U1NmVhNzNjZjUwYzg3YWJjNGZkYzg5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1p
dGVtcy9ncmlkLWl0ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAxLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDI0IEBACisKK1BBU1MgLmdyaWQgMSAKK1BBU1MgLmdyaWQgMiAKK1BBU1MgLmdyaWQgMyAK
K1BBU1MgLmdyaWQgNCAKK1BBU1MgLmdyaWQgNSAKK1BBU1MgLmdyaWQgNiAKK0RpcmVjdGlvbiBM
VFIKKworRGlyZWN0aW9uIFJUTAorCitXcml0aW5nIE1vZGUgdmVydGljYWwtbHIKKworRGlyZWN0
aW9uIExUUgorCitEaXJlY3Rpb24gUlRMCisKK1dyaXRpbmcgTW9kZSB2ZXJ0aWNhbC1ybAorCitE
aXJlY3Rpb24gTFRSCisKK0RpcmVjdGlvbiBSVEwKKworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1z
L2dyaWQtaXRlbXMtcmVsYXRpdmUtb2Zmc2V0cy0wMDEuaHRtbCBiL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1p
dGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNiNWU4ZWUyM2I2NjU4
OWE2MjJjMTYyYzA2NWJhOGY1ZGQ4OGE0OTUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1z
L2dyaWQtaXRlbXMtcmVsYXRpdmUtb2Zmc2V0cy0wMDEuaHRtbApAQCAtMCwwICsxLDk1IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzx0aXRsZT5DU1MgR3JpZCBM
YXlvdXQgVGVzdDogR3JpZCBpdGVtcyB3aXRoIHJlbGF0aXZlIG9mZnNldHM8L3RpdGxlPgorPGxp
bmsgcmVsPSJhdXRob3IiIHRpdGxlPSJNYW51ZWwgUmVnbyBDYXNhc25vdmFzIiBocmVmPSJtYWls
dG86cmVnb0BpZ2FsaWEuY29tIj4KKzxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9kcmFm
dHMuY3Nzd2cub3JnL2Nzcy1ncmlkLyNncmlkLWl0ZW0tc2l6aW5nIj4KKzxtZXRhIG5hbWU9ImFz
c2VydCIgY29udGVudD0iQ2hlY2tzIHRoYXQgcmVsYXRpdmUgb2ZmZXN0cyB3b3JrIGZvciBncmlk
IGl0ZW1zLiI+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InN1cHBvcnQvZ3JpZC5jc3Mi
PgorPHN0eWxlPgorLmdyaWQgeworICBwb3NpdGlvbjogcmVsYXRpdmU7CisgIGdyaWQ6IDkwcHgg
NjBweCAzMHB4IC8gMjAwcHggMTUwcHggMTAwcHg7CisgIGlubGluZS1zaXplOiA2MDBweDsKKyAg
YmxvY2stc2l6ZTogMzAwcHg7Cit9CisKKy5ncmlkID4gZGl2IHsgcG9zaXRpb246IHJlbGF0aXZl
OyB9Cis8L3N0eWxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvY2hlY2stbGF5b3V0LXRoLmpzIj48L3Nj
cmlwdD4KKworPGJvZHkgb25sb2FkPSJjaGVja0xheW91dCgnLmdyaWQnKSI+CisKKzxkaXYgaWQ9
ImxvZyI+PC9kaXY+CisKKzxoMz5EaXJlY3Rpb24gTFRSPC9oMz4KKworPGRpdiBjbGFzcz0iZ3Jp
ZCI+CisgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiAxMHB4
OyB0b3A6IDlweDsiCisgICAgZGF0YS1vZmZzZXQteD0iMTAiIGRhdGEtb2ZmZXN0LXk9IjkiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjIwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4K
KyAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vjb25kQ29sdW1uIiBzdHlsZT0ibGVmdDogLTE1cHg7
IHRvcDogLTEycHg7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjE4NSIgZGF0YS1vZmZlc3QteT0iNzgi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjYwIj48L2Rp
dj4KKyAgPGRpdiBjbGFzcz0idGhpcmRSb3dUaGlyZENvbHVtbiIgc3R5bGU9InJpZ2h0OiAzMHB4
OyBib3R0b206IDIxcHg7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjMyMCIgZGF0YS1vZmZlc3QteT0i
MTI5IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMCI+
PC9kaXY+Cis8L2Rpdj4KKworPGgzPkRpcmVjdGlvbiBSVEw8L2gzPgorCis8ZGl2IGNsYXNzPSJn
cmlkIGRpcmVjdGlvblJUTCI+CisgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0
eWxlPSJsZWZ0OiAxMHB4OyB0b3A6IDlweDsiCisgICAgZGF0YS1vZmZzZXQteD0iNDEwIiBkYXRh
LW9mZmVzdC15PSI5IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMDAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSI5MCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InNlY29uZFJvd1NlY29uZENvbHVtbiIgc3R5
bGU9ImxlZnQ6IC0xNXB4OyB0b3A6IC0xMnB4OyIKKyAgICBkYXRhLW9mZnNldC14PSIyMzUiIGRh
dGEtb2ZmZXN0LXk9Ijc4IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxNTAiIGRhdGEtZXhwZWN0ZWQt
aGVpZ2h0PSI2MCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InRoaXJkUm93VGhpcmRDb2x1bW4iIHN0
eWxlPSJyaWdodDogMzBweDsgYm90dG9tOiAyMXB4OyIKKyAgICBkYXRhLW9mZnNldC14PSIxMjAi
IGRhdGEtb2ZmZXN0LXk9IjEyOSIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iMzAiPjwvZGl2PgorPC9kaXY+CisKKzxoMj5Xcml0aW5nIE1vZGUgdmVydGlj
YWwtbHI8L2gyPgorCis8aDM+RGlyZWN0aW9uIExUUjwvaDM+CisKKzxkaXYgY2xhc3M9ImdyaWQg
dmVydGljYWxMUiI+CisgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJs
ZWZ0OiA5cHg7IHRvcDogMTBweDsiCisgICAgZGF0YS1vZmZzZXQteD0iOSIgZGF0YS1vZmZlc3Qt
eT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAw
Ij48L2Rpdj4KKyAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vjb25kQ29sdW1uIiBzdHlsZT0ibGVm
dDogLTEycHg7IHRvcDogLTE1cHg7IgorICAgIGRhdGEtb2Zmc2V0LXg9Ijc4IiBkYXRhLW9mZmVz
dC15PSI3NSIgZGF0YS1leHBlY3RlZC13aWR0aD0iNjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIx
NTAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGlyZFJvd1RoaXJkQ29sdW1uIiBzdHlsZT0icmln
aHQ6IDIxcHg7IGJvdHRvbTogMzBweDsiCisgICAgZGF0YS1vZmZzZXQteD0iMTI5IiBkYXRhLW9m
ZmVzdC15PSIxMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAwIj48L2Rpdj4KKzwvZGl2PgorCis8aDM+RGlyZWN0aW9uIFJUTDwvaDM+CisKKzxkaXYg
Y2xhc3M9ImdyaWQgdmVydGljYWxMUiBkaXJlY3Rpb25SVEwiPgorICA8ZGl2IGNsYXNzPSJmaXJz
dFJvd0ZpcnN0Q29sdW1uIiBzdHlsZT0ibGVmdDogOXB4OyB0b3A6IDEwcHg7IgorICAgIGRhdGEt
b2Zmc2V0LXg9IjkiIGRhdGEtb2ZmZXN0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIg
ZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwMCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InNlY29uZFJv
d1NlY29uZENvbHVtbiIgc3R5bGU9ImxlZnQ6IC0xMnB4OyB0b3A6IC0xNXB4OyIKKyAgICBkYXRh
LW9mZnNldC14PSI3OCIgZGF0YS1vZmZlc3QteT0iNzUiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjYw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0idGhpcmRS
b3dUaGlyZENvbHVtbiIgc3R5bGU9InJpZ2h0OiAyMXB4OyBib3R0b206IDMwcHg7IgorICAgIGRh
dGEtb2Zmc2V0LXg9IjEyOSIgZGF0YS1vZmZlc3QteT0iMTIwIiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+PC9kaXY+Cis8L2Rpdj4KKworPGgyPldy
aXRpbmcgTW9kZSB2ZXJ0aWNhbC1ybDwvaDI+CisKKzxoMz5EaXJlY3Rpb24gTFRSPC9oMz4KKwor
PGRpdiBjbGFzcz0iZ3JpZCB2ZXJ0aWNhbFJMIj4KKyAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJz
dENvbHVtbiIgc3R5bGU9ImxlZnQ6IDlweDsgdG9wOiAxMHB4OyIKKyAgICBkYXRhLW9mZnNldC14
PSIyMTkiIGRhdGEtb2ZmZXN0LXk9IjEwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjIwMCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InNlY29uZFJvd1NlY29u
ZENvbHVtbiIgc3R5bGU9ImxlZnQ6IC0xMnB4OyB0b3A6IC0xNXB4OyIKKyAgICBkYXRhLW9mZnNl
dC14PSIxMzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI2MCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+CisgIDxkaXYgY2xhc3M9InRoaXJkUm93VGhp
cmRDb2x1bW4iIHN0eWxlPSJyaWdodDogMjFweDsgYm90dG9tOiAzMHB4OyIKKyAgICBkYXRhLW9m
ZnNldC14PSI5OSIgZGF0YS1vZmZlc3QteT0iMTIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIg
ZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+PC9kaXY+Cis8L2Rpdj4KKworPGgzPkRpcmVjdGlv
biBSVEw8L2gzPgorCis8ZGl2IGNsYXNzPSJncmlkIHZlcnRpY2FsUkwgZGlyZWN0aW9uUlRMIj4K
KyAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgc3R5bGU9ImxlZnQ6IDlweDsgdG9w
OiAxMHB4OyIKKyAgICBkYXRhLW9mZnNldC14PSIyMTkiIGRhdGEtb2ZmZXN0LXk9IjEwIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwMCI+PC9kaXY+Cisg
IDxkaXYgY2xhc3M9InNlY29uZFJvd1NlY29uZENvbHVtbiIgc3R5bGU9ImxlZnQ6IC0xMnB4OyB0
b3A6IC0xNXB4OyIKKyAgICBkYXRhLW9mZnNldC14PSIxMzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBk
YXRhLWV4cGVjdGVkLXdpZHRoPSI2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+
CisgIDxkaXYgY2xhc3M9InRoaXJkUm93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogMjFweDsg
Ym90dG9tOiAzMHB4OyIKKyAgICBkYXRhLW9mZnNldC14PSI5OSIgZGF0YS1vZmZlc3QteT0iMTIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+PC9k
aXY+Cis8L2Rpdj4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlkLWl0ZW1zLXJlbGF0aXZl
LW9mZnNldHMtMDAyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1pdGVtcy1yZWxhdGl2
ZS1vZmZzZXRzLTAwMi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzY4ZTBiNzZiODVlODRlNjdl
NTZlYTczY2Y1MGM4N2FiYzRmZGM4OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3Jp
ZC1pdGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNCBA
QAorCitQQVNTIC5ncmlkIDEgCitQQVNTIC5ncmlkIDIgCitQQVNTIC5ncmlkIDMgCitQQVNTIC5n
cmlkIDQgCitQQVNTIC5ncmlkIDUgCitQQVNTIC5ncmlkIDYgCitEaXJlY3Rpb24gTFRSCisKK0Rp
cmVjdGlvbiBSVEwKKworV3JpdGluZyBNb2RlIHZlcnRpY2FsLWxyCisKK0RpcmVjdGlvbiBMVFIK
KworRGlyZWN0aW9uIFJUTAorCitXcml0aW5nIE1vZGUgdmVydGljYWwtcmwKKworRGlyZWN0aW9u
IExUUgorCitEaXJlY3Rpb24gUlRMCisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlkLWl0
ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLmh0bWwgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL2dyaWQtaXRlbXMtcmVs
YXRpdmUtb2Zmc2V0cy0wMDIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kOTJmY2EzZWJiMDZmYzEwNmY0MmRh
MjJkY2U5ZTQ2MzgzZmMxM2E1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlkLWl0
ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLmh0bWwKQEAgLTAsMCArMSw5NCBAQAorPCFET0NUWVBF
IGh0bWw+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Cis8dGl0bGU+Q1NTIEdyaWQgTGF5b3V0IFRl
c3Q6IEdyaWQgaXRlbXMgd2l0aCByZWxhdGl2ZSBvZmZzZXRzPC90aXRsZT4KKzxsaW5rIHJlbD0i
YXV0aG9yIiB0aXRsZT0iTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyIgaHJlZj0ibWFpbHRvOnJlZ29A
aWdhbGlhLmNvbSI+Cis8bGluayByZWw9ImhlbHAiIGhyZWY9Imh0dHBzOi8vZHJhZnRzLmNzc3dn
Lm9yZy9jc3MtZ3JpZC8jZ3JpZC1pdGVtLXNpemluZyI+Cis8bWV0YSBuYW1lPSJhc3NlcnQiIGNv
bnRlbnQ9IkNoZWNrcyB0aGF0IHJlbGF0aXZlIHBlcmNlbnRhZ2Ugb2ZmZXN0cyB3b3JrIGZvciBn
cmlkIGl0ZW1zLiI+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InN1cHBvcnQvZ3JpZC5j
c3MiPgorPHN0eWxlPgorLmdyaWQgeworICBwb3NpdGlvbjogcmVsYXRpdmU7CisgIGdyaWQ6IDkw
cHggNjBweCAzMHB4IC8gMjAwcHggMTUwcHggMTAwcHg7CisgIGlubGluZS1zaXplOiA2MDBweDsK
KyAgYmxvY2stc2l6ZTogMzAwcHg7Cit9CisKKy5ncmlkID4gZGl2IHsgcG9zaXRpb246IHJlbGF0
aXZlOyB9Cis8L3N0eWxlPgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3MuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvdGVzdGhhcm5lc3NyZXBvcnQuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii9yZXNvdXJjZXMvY2hlY2stbGF5b3V0LXRoLmpzIj48
L3NjcmlwdD4KKworPGJvZHkgb25sb2FkPSJjaGVja0xheW91dCgnLmdyaWQnKSI+CisKKzxkaXYg
aWQ9ImxvZyI+PC9kaXY+CisKKzxoMz5EaXJlY3Rpb24gTFRSPC9oMz4KKworPGRpdiBjbGFzcz0i
Z3JpZCI+CisgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiA1
JTsgdG9wOiAxMCU7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZmVzdC15PSI5IiBk
YXRhLWV4cGVjdGVkLXdpZHRoPSIyMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PC9kaXY+
CisgIDxkaXYgY2xhc3M9InNlY29uZFJvd1NlY29uZENvbHVtbiIgc3R5bGU9ImxlZnQ6IC0xMCU7
IHRvcDogLTIwJTsiCisgICAgZGF0YS1vZmZzZXQteD0iMTg1IiBkYXRhLW9mZmVzdC15PSI3OCIg
ZGF0YS1leHBlY3RlZC13aWR0aD0iMTUwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iNjAiPjwvZGl2
PgorICA8ZGl2IGNsYXNzPSJ0aGlyZFJvd1RoaXJkQ29sdW1uIiBzdHlsZT0icmlnaHQ6IDMwJTsg
Ym90dG9tOiA3MCU7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjMyMCIgZGF0YS1vZmZlc3QteT0iMTI5
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMCI+PC9k
aXY+Cis8L2Rpdj4KKworPGgzPkRpcmVjdGlvbiBSVEw8L2gzPgorCis8ZGl2IGNsYXNzPSJncmlk
IGRpcmVjdGlvblJUTCI+CisgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxl
PSJsZWZ0OiA1JTsgdG9wOiAxMCU7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjQxMCIgZGF0YS1vZmZl
c3QteT0iOSIgZGF0YS1leHBlY3RlZC13aWR0aD0iMjAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
OTAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJs
ZWZ0OiAtMTAlOyB0b3A6IC0yMCU7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjIzNSIgZGF0YS1vZmZl
c3QteT0iNzgiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjE1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9
IjYwIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0idGhpcmRSb3dUaGlyZENvbHVtbiIgc3R5bGU9InJp
Z2h0OiAzMCU7IGJvdHRvbTogNzAlOyIKKyAgICBkYXRhLW9mZnNldC14PSIxMjAiIGRhdGEtb2Zm
ZXN0LXk9IjEyOSIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMzAiPjwvZGl2PgorPC9kaXY+CisKKzxoMj5Xcml0aW5nIE1vZGUgdmVydGljYWwtbHI8L2gy
PgorCis8aDM+RGlyZWN0aW9uIExUUjwvaDM+CisKKzxkaXYgY2xhc3M9ImdyaWQgdmVydGljYWxM
UiI+CisgIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiAxMCU7
IHRvcDogNSU7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjkiIGRhdGEtb2ZmZXN0LXk9IjEwIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwMCI+PC9kaXY+Cisg
IDxkaXYgY2xhc3M9InNlY29uZFJvd1NlY29uZENvbHVtbiIgc3R5bGU9ImxlZnQ6IC0yMCU7IHRv
cDogLTEwJTsiCisgICAgZGF0YS1vZmZzZXQteD0iNzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSI2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+Cisg
IDxkaXYgY2xhc3M9InRoaXJkUm93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogNzAlOyBib3R0
b206IDMwJTsiCisgICAgZGF0YS1vZmZzZXQteD0iMTI5IiBkYXRhLW9mZmVzdC15PSIxMjAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAwIj48L2Rpdj4K
KzwvZGl2PgorCis8aDM+RGlyZWN0aW9uIFJUTDwvaDM+CisKKzxkaXYgY2xhc3M9ImdyaWQgdmVy
dGljYWxMUiBkaXJlY3Rpb25SVEwiPgorICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1u
IiBzdHlsZT0ibGVmdDogMTAlOyB0b3A6IDUlOyIKKyAgICBkYXRhLW9mZnNldC14PSI5IiBkYXRh
LW9mZmVzdC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSIyMDAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0
eWxlPSJsZWZ0OiAtMjAlOyB0b3A6IC0xMCU7IgorICAgIGRhdGEtb2Zmc2V0LXg9Ijc4IiBkYXRh
LW9mZmVzdC15PSI3NSIgZGF0YS1leHBlY3RlZC13aWR0aD0iNjAiIGRhdGEtZXhwZWN0ZWQtaGVp
Z2h0PSIxNTAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJ0aGlyZFJvd1RoaXJkQ29sdW1uIiBzdHls
ZT0icmlnaHQ6IDcwJTsgYm90dG9tOiAzMCU7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjEyOSIgZGF0
YS1vZmZlc3QteT0iMTIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjEwMCI+PC9kaXY+Cis8L2Rpdj4KKworPGgyPldyaXRpbmcgTW9kZSB2ZXJ0aWNhbC1y
bDwvaDI+CisKKzxoMz5EaXJlY3Rpb24gTFRSPC9oMz4KKworPGRpdiBjbGFzcz0iZ3JpZCB2ZXJ0
aWNhbFJMIj4KKyAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgc3R5bGU9ImxlZnQ6
IDEwJTsgdG9wOiA1JTsiCisgICAgZGF0YS1vZmZzZXQteD0iMjE5IiBkYXRhLW9mZmVzdC15PSIx
MCIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMDAiPjwv
ZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJsZWZ0OiAt
MjAlOyB0b3A6IC0xMCU7IgorICAgIGRhdGEtb2Zmc2V0LXg9IjEzOCIgZGF0YS1vZmZlc3QteT0i
NzUiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjYwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj48
L2Rpdj4KKyAgPGRpdiBjbGFzcz0idGhpcmRSb3dUaGlyZENvbHVtbiIgc3R5bGU9InJpZ2h0OiA3
MCU7IGJvdHRvbTogMzAlOyIKKyAgICBkYXRhLW9mZnNldC14PSI5OSIgZGF0YS1vZmZlc3QteT0i
MTIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+
PC9kaXY+Cis8L2Rpdj4KKworPGgzPkRpcmVjdGlvbiBSVEw8L2gzPgorCis8ZGl2IGNsYXNzPSJn
cmlkIHZlcnRpY2FsUkwgZGlyZWN0aW9uUlRMIj4KKyAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJz
dENvbHVtbiIgc3R5bGU9ImxlZnQ6IDEwJTsgdG9wOiA1JTsiCisgICAgZGF0YS1vZmZzZXQteD0i
MjE5IiBkYXRhLW9mZmVzdC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhw
ZWN0ZWQtaGVpZ2h0PSIyMDAiPjwvZGl2PgorICA8ZGl2IGNsYXNzPSJzZWNvbmRSb3dTZWNvbmRD
b2x1bW4iIHN0eWxlPSJsZWZ0OiAtMjAlOyB0b3A6IC0xMCU7IgorICAgIGRhdGEtb2Zmc2V0LXg9
IjEzOCIgZGF0YS1vZmZlc3QteT0iNzUiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjYwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iMTUwIj48L2Rpdj4KKyAgPGRpdiBjbGFzcz0idGhpcmRSb3dUaGlyZENv
bHVtbiIgc3R5bGU9InJpZ2h0OiA3MCU7IGJvdHRvbTogMzAlOyIKKyAgICBkYXRhLW9mZnNldC14
PSI5OSIgZGF0YS1vZmZlc3QteT0iMTIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1l
eHBlY3RlZC1oZWlnaHQ9IjEwMCI+PC9kaXY+Cis8L2Rpdj4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRl
bXMvc3VwcG9ydC9ncmlkLmNzcyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvc3VwcG9ydC9ncmlkLmNzcwppbmRleCA2
MDJlMTE0ODgwYWU2NTc2YzBkNDQwY2Y1MjRhZDI4NGY4OWU3MDhmLi43OGZkZDVlOTc1YWQ2MWQz
YThjMzlmZTRlMDU2OTRhMjc4NzUzYzM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL3N1cHBvcnQv
Z3JpZC5jc3MKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9zdXBwb3J0L2dyaWQuY3NzCkBAIC02OCw2ICs2OCwx
MiBAQAogICBncmlkLXJvdzogMzsKIH0KIAorLnRoaXJkUm93VGhpcmRDb2x1bW4geworICBiYWNr
Z3JvdW5kLWNvbG9yOiBzYWxtb247CisgIGdyaWQtY29sdW1uOiAzOworICBncmlkLXJvdzogMzsK
K30KKwogLmZpcnN0Um93VGhpcmRDb2x1bW4gewogICBiYWNrZ3JvdW5kLWNvbG9yOiBtYWdlbnRh
OwogICBncmlkLWNvbHVtbjogMzsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvc3VwcG9ydC93M2Mt
aW1wb3J0LmxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
Y3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvc3VwcG9ydC93M2MtaW1wb3J0LmxvZwppbmRleCAwODM2
MzE0OTY4NWEwYmFlZDdiMWUzNjg5Njc5NDYwOWU3MWNmMzAwLi4yM2ExMDA4Mjk5OWQ2MmQyODgx
NWZiNGIyMjRlNmEzN2U2NGE1MjAxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL3N1cHBvcnQvdzNj
LWltcG9ydC5sb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9zdXBwb3J0L3czYy1pbXBvcnQubG9nCkBAIC0x
LDcgKzEsNyBAQAogVGhlIHRlc3RzIGluIHRoaXMgZGlyZWN0b3J5IHdlcmUgaW1wb3J0ZWQgZnJv
bSB0aGUgVzNDIHJlcG9zaXRvcnkuCiBEbyBOT1QgbW9kaWZ5IHRoZXNlIHRlc3RzIGRpcmVjdGx5
IGluIFdlYktpdC4KIEluc3RlYWQsIGNyZWF0ZSBhIHB1bGwgcmVxdWVzdCBvbiB0aGUgV1BUIGdp
dGh1YjoKLQlodHRwczovL2dpdGh1Yi5jb20vdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cworCWh0dHBz
Oi8vZ2l0aHViLmNvbS93ZWItcGxhdGZvcm0tdGVzdHMvd3B0CiAKIFRoZW4gcnVuIHRoZSBUb29s
cy9TY3JpcHRzL2ltcG9ydC13M2MtdGVzdHMgaW4gV2ViS2l0IHRvIHJlaW1wb3J0CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nz
cy1ncmlkL2dyaWQtaXRlbXMvdzNjLWltcG9ydC5sb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL3czYy1pbXBvcnQu
bG9nCmluZGV4IGNiYmEyZTE5NzI5MmEzMDdmMWI1NzVjMGE1ZDRiNWU5MmUzYWI2ZmEuLjVjM2Nl
NTg2MjQ0MTI1OTEwNTBlYWM5NDcxZjc5YzQyYTE1NTIxYTggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRl
bXMvdzNjLWltcG9ydC5sb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy93M2MtaW1wb3J0LmxvZwpAQCAtMSw3
ICsxLDcgQEAKIFRoZSB0ZXN0cyBpbiB0aGlzIGRpcmVjdG9yeSB3ZXJlIGltcG9ydGVkIGZyb20g
dGhlIFczQyByZXBvc2l0b3J5LgogRG8gTk9UIG1vZGlmeSB0aGVzZSB0ZXN0cyBkaXJlY3RseSBp
biBXZWJLaXQuCiBJbnN0ZWFkLCBjcmVhdGUgYSBwdWxsIHJlcXVlc3Qgb24gdGhlIFdQVCBnaXRo
dWI6Ci0JaHR0cHM6Ly9naXRodWIuY29tL3czYy93ZWItcGxhdGZvcm0tdGVzdHMKKwlodHRwczov
L2dpdGh1Yi5jb20vd2ViLXBsYXRmb3JtLXRlc3RzL3dwdAogCiBUaGVuIHJ1biB0aGUgVG9vbHMv
U2NyaXB0cy9pbXBvcnQtdzNjLXRlc3RzIGluIFdlYktpdCB0byByZWltcG9ydAogCkBAIC0xMDQs
NiArMTA0LDggQEAgTGlzdCBvZiBmaWxlczoKIC9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL2dyaWQtaXRlbXMtcGVyY2Vu
dGFnZS1wYWRkaW5ncy12ZXJ0aWNhbC1sci0wMDIuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1pdGVt
cy1wZXJjZW50YWdlLXBhZGRpbmdzLXZlcnRpY2FsLXJsLTAwMS5odG1sCiAvTGF5b3V0VGVzdHMv
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9n
cmlkLWl0ZW1zLXBlcmNlbnRhZ2UtcGFkZGluZ3MtdmVydGljYWwtcmwtMDAyLmh0bWwKKy9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlk
LWl0ZW1zL2dyaWQtaXRlbXMtcmVsYXRpdmUtb2Zmc2V0cy0wMDEuaHRtbAorL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMv
Z3JpZC1pdGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi5odG1sCiAvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlkLWl0
ZW1zLXNpemluZy1hbGlnbm1lbnQtMDAxLWV4cGVjdGVkLmh0bWwKIC9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0ZW1zL2dyaWQt
aXRlbXMtc2l6aW5nLWFsaWdubWVudC0wMDEuaHRtbAogL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1sYXlvdXQt
Z3JpZC1pbi1ncmlkLWV4cGVjdGVkLmh0bWwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357871</attachid>
            <date>2018-12-20 14:24:25 -0800</date>
            <delta_ts>2018-12-20 14:55:12 -0800</delta_ts>
            <desc>Rebased patch</desc>
            <filename>bug-190492-20181220232424.patch</filename>
            <type>text/plain</type>
            <size>16806</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4NDY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzBmYWY5YWFlNTkyMGM5
YWE5ZGFjOTk5YzZjNmE1M2FhNjUxNTBlZC4uZTgyZmI4ODFjYmQwYWJjMGY3Nzk3NDUzZjViODk3
ZmQ1YmFlNTZhNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE4LTEwLTExICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gRml4IHBlcmNlbnRhZ2VzIGluIHJlbGF0aXZlIG9mZnNldHMgZm9yIGdyaWQgaXRlbXMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDQ5MgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBtZXRob2Qg
UmVuZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRpb25PZmZzZXQoKSB3YXMgbm90IGNv
bnNpZGVyaW5nIHRoZSBjYXNlIG9mIGdyaWQgaXRlbXMsCisgICAgICAgIHdoZXJlIHRoZSBjb250
YWluaW5nIGJsb2NrIGlzIHRoZSBncmlkIGFyZWEuCisgICAgICAgIFRoZSBwYXRjaCBtb2RpZmll
cyB0aGUgbWV0aG9kIHNvIHRoZSBuZXcgY29kZSB1c2VzIG92ZXJyaWRlQ29udGFpbmluZ0Jsb2Nr
Q29udGVudFdpZHRofEhlaWdodCB3aGVuIHJlcXVpcmVkLgorCisgICAgICAgIFRlc3Q6IGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1p
dGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcDogSW1wbGVtZW50IHRoZSBwaHlzaWNhbCB2ZXJzaW9ucyBvZiB0aGUgYWxyZWFk
eSBleGlzdGVudCBtZXRob2RzLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpvdmVycmlk
ZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3g6Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6Omhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29u
dGVudFdpZHRoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6aGFzT3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0IGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyQm94Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0OjpyZWxhdGl2ZVBv
c2l0aW9uT2Zmc2V0IGNvbnN0KTogTW9kaWZpZWQgbWV0aG9kCisgICAgICAgIHRvIHRha2UgaW50
byBhY2NvdW50IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRofEhlaWdodCBmb3Ig
Z3JpZCBpdGVtcy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaDog
QWRkZWQgbmV3IGhlYWRlcnMgZm9yIHBoeXNpY2FsIHZpcnR1YWwgbWV0aG9kcworICAgICAgICB0
aGF0IHdpbGwgYmUgb3ZlcnJpZGRlbiBpbiBSZW5kZXJCb3guCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3hNb2RlbE9iamVjdDo6b3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGgg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6Om92ZXJyaWRl
Q29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3hNb2RlbE9iamVjdDo6aGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lk
dGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6Omhhc092
ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6CisKIDIwMTgtMTEtMjIg
IFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVXBkYXRpbmcgaHJl
ZiBvbiB0ZXh0UGF0aCBkb2Vzbid0IHVwZGF0ZSBpdHMgcmVuZGVyaW5nCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IGJmODhiZDUwZTlhMTdlM2Q3YTU2ZGJlODM4ZDJi
NTA0M2RmMDgyMzAuLjA5YWM2ZDllZTljNjBkOGFkODIwMzQ5YWMyNTFiODBmODE3OTZkNjEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC05OSw2ICs5OSw3IEBAIHN0
YXRpYyBPdmVycmlkZVNpemVNYXAqIGdPdmVycmlkZUNvbnRlbnRMb2dpY2FsV2lkdGhNYXAgPSBu
dWxscHRyOwogCiAvLyBVc2VkIGJ5IGdyaWQgZWxlbWVudHMgdG8gcHJvcGVybHkgc2l6ZSB0aGVp
ciBncmlkIGl0ZW1zLgogdHlwZWRlZiBXVEY6Okhhc2hNYXA8Y29uc3QgUmVuZGVyQm94Kiwgc3Rk
OjpvcHRpb25hbDxMYXlvdXRVbml0Pj4gT3ZlcnJpZGVPcHRpb25hbFNpemVNYXA7CisvLyBGSVhN
RTogV2Ugc2hvdWxkIHN0b3JlIHRoZXNlIGJhc2VkIG9uIHBoeXNpY2FsIGRpcmVjdGlvbi4KIHN0
YXRpYyBPdmVycmlkZU9wdGlvbmFsU2l6ZU1hcCogZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29u
dGVudExvZ2ljYWxIZWlnaHRNYXAgPSBudWxscHRyOwogc3RhdGljIE92ZXJyaWRlT3B0aW9uYWxT
aXplTWFwKiBnT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRoTWFwID0g
bnVsbHB0cjsKIApAQCAtMTA4Niw2ICsxMDg3LDQ0IEBAIExheW91dFVuaXQgUmVuZGVyQm94Ojpv
dmVycmlkZUNvbnRlbnRMb2dpY2FsSGVpZ2h0KCkgY29uc3QKICAgICByZXR1cm4gZ092ZXJyaWRl
Q29udGVudExvZ2ljYWxIZWlnaHRNYXAtPmdldCh0aGlzKTsKIH0KIAorc3RkOjpvcHRpb25hbDxM
YXlvdXRVbml0PiBSZW5kZXJCb3g6Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRo
KCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50
V2lkdGgoKSk7CisgICAgcmV0dXJuIGNvbnRhaW5pbmdCbG9jaygpLT5zdHlsZSgpLmlzSG9yaXpv
bnRhbFdyaXRpbmdNb2RlKCkKKyAgICAgICAgPyBnT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250
ZW50TG9naWNhbFdpZHRoTWFwLT5nZXQodGhpcykKKyAgICAgICAgOiBnT3ZlcnJpZGVDb250YWlu
aW5nQmxvY2tDb250ZW50TG9naWNhbEhlaWdodE1hcC0+Z2V0KHRoaXMpOworfQorCitzdGQ6Om9w
dGlvbmFsPExheW91dFVuaXQ+IFJlbmRlckJveDo6b3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250
ZW50SGVpZ2h0KCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaGFzT3ZlcnJpZGVDb250YWluaW5nQmxv
Y2tDb250ZW50SGVpZ2h0KCkpOworICAgIHJldHVybiBjb250YWluaW5nQmxvY2soKS0+c3R5bGUo
KS5pc0hvcml6b250YWxXcml0aW5nTW9kZSgpCisgICAgICAgID8gZ092ZXJyaWRlQ29udGFpbmlu
Z0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAtPmdldCh0aGlzKQorICAgICAgICA6IGdPdmVy
cmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsV2lkdGhNYXAtPmdldCh0aGlzKTsKK30K
KworYm9vbCBSZW5kZXJCb3g6Omhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRo
KCkgY29uc3QKK3sKKyAgICBSZW5kZXJCbG9jayogY2IgPSBjb250YWluaW5nQmxvY2soKTsKKyAg
ICBpZiAoIWNiKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gY2ItPnN0eWxl
KCkuaXNIb3Jpem9udGFsV3JpdGluZ01vZGUoKQorICAgICAgICA/IGdPdmVycmlkZUNvbnRhaW5p
bmdCbG9ja0NvbnRlbnRMb2dpY2FsV2lkdGhNYXAgJiYgZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2Nr
Q29udGVudExvZ2ljYWxXaWR0aE1hcC0+Y29udGFpbnModGhpcykKKyAgICAgICAgOiBnT3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbEhlaWdodE1hcCAmJiBnT3ZlcnJpZGVDb250
YWluaW5nQmxvY2tDb250ZW50TG9naWNhbEhlaWdodE1hcC0+Y29udGFpbnModGhpcyk7Cit9CisK
K2Jvb2wgUmVuZGVyQm94OjpoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRIZWlnaHQo
KSBjb25zdAoreworICAgIFJlbmRlckJsb2NrKiBjYiA9IGNvbnRhaW5pbmdCbG9jaygpOworICAg
IGlmICghY2IpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiBjYi0+c3R5bGUo
KS5pc0hvcml6b250YWxXcml0aW5nTW9kZSgpCisgICAgICAgID8gZ092ZXJyaWRlQ29udGFpbmlu
Z0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAgJiYgZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2Nr
Q29udGVudExvZ2ljYWxIZWlnaHRNYXAtPmNvbnRhaW5zKHRoaXMpCisgICAgICAgIDogZ092ZXJy
aWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAgJiYgZ092ZXJyaWRlQ29u
dGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAtPmNvbnRhaW5zKHRoaXMpOworfQor
CiBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+IFJlbmRlckJveDo6b3ZlcnJpZGVDb250YWluaW5n
QmxvY2tDb250ZW50TG9naWNhbFdpZHRoKCkgY29uc3QKIHsKICAgICBBU1NFUlQoaGFzT3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRoKCkpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckJveC5oCmluZGV4IGRiMTA5NGQ2OWU1NzMzM2Y1YmFiMzk0OTBhZDJhYjBkYTg2
MWJjYzguLmUyZTQ1ZGQ4MmQ1OGM2Zjc2OTlkMzA2YWQzNjI3NmEzNDQwZTYyZTggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgKQEAgLTMxNCw2ICszMTQsMTAgQEAgcHVibGljOgog
ICAgIHZvaWQgY2xlYXJPdmVycmlkZUNvbnRlbnRMb2dpY2FsSGVpZ2h0KCk7CiAgICAgdm9pZCBj
bGVhck92ZXJyaWRlQ29udGVudExvZ2ljYWxXaWR0aCgpOwogCisgICAgc3RkOjpvcHRpb25hbDxM
YXlvdXRVbml0PiBvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpIGNvbnN0IG92
ZXJyaWRlOworICAgIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gb3ZlcnJpZGVDb250YWluaW5n
QmxvY2tDb250ZW50SGVpZ2h0KCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBoYXNPdmVycmlk
ZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wg
aGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0KCkgY29uc3Qgb3ZlcnJpZGU7
CiAgICAgc3RkOjpvcHRpb25hbDxMYXlvdXRVbml0PiBvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0Nv
bnRlbnRMb2dpY2FsV2lkdGgoKSBjb25zdDsKICAgICBzdGQ6Om9wdGlvbmFsPExheW91dFVuaXQ+
IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHQoKSBjb25zdDsKICAg
ICBib29sIGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0aCgpIGNv
bnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVs
T2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVj
dC5jcHAKaW5kZXggOTYwNTJlYTFiM2FhZjc5MGRiM2M5ZDNkM2Q0OWIwNDc5Yjc4OWNlMC4uZjVk
YzM5ZTc1MDZkM2VhOWRmZjRlMWQ4YTk3Y2ViZjkwYmNlMWUwYSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCkBAIC00MDEsMTMgKzQw
MSwxOCBAQCBMYXlvdXRTaXplIFJlbmRlckJveE1vZGVsT2JqZWN0OjpyZWxhdGl2ZVBvc2l0aW9u
T2Zmc2V0KCkgY29uc3QKICAgICAvLyBpbiB0aGUgY2FzZSBvZiByZWxhdGl2ZSBwb3NpdGlvbmlu
ZyB1c2luZyBwZXJjZW50YWdlcywgd2UgY2FuJ3QgZG8gdGhpcy4gIFRoZSBvZmZzZXQgc2hvdWxk
IGFsd2F5cyBiZSByZXNvbHZlZCB1c2luZyB0aGUKICAgICAvLyBhdmFpbGFibGUgd2lkdGggb2Yg
dGhlIGNvbnRhaW5pbmcgYmxvY2suICBUaGVyZWZvcmUgd2UgZG9uJ3QgdXNlIGNvbnRhaW5pbmdC
bG9ja0xvZ2ljYWxXaWR0aEZvckNvbnRlbnQoKSBoZXJlLCBidXQgaW5zdGVhZCBleHBsaWNpdGx5
CiAgICAgLy8gY2FsbCBhdmFpbGFibGVXaWR0aCBvbiBvdXIgY29udGFpbmluZyBibG9jay4KLSAg
ICBpZiAoIXN0eWxlKCkubGVmdCgpLmlzQXV0bygpKSB7Ci0gICAgICAgIGlmICghc3R5bGUoKS5y
aWdodCgpLmlzQXV0bygpICYmICFjb250YWluaW5nQmxvY2soKS0+c3R5bGUoKS5pc0xlZnRUb1Jp
Z2h0RGlyZWN0aW9uKCkpCi0gICAgICAgICAgICBvZmZzZXQuc2V0V2lkdGgoLXZhbHVlRm9yTGVu
Z3RoKHN0eWxlKCkucmlnaHQoKSwgIXN0eWxlKCkucmlnaHQoKS5pc0ZpeGVkKCkgPyBjb250YWlu
aW5nQmxvY2soKS0+YXZhaWxhYmxlV2lkdGgoKSA6IDBfbHUpKTsKLSAgICAgICAgZWxzZQotICAg
ICAgICAgICAgb2Zmc2V0LmV4cGFuZCh2YWx1ZUZvckxlbmd0aChzdHlsZSgpLmxlZnQoKSwgIXN0
eWxlKCkubGVmdCgpLmlzRml4ZWQoKSA/IGNvbnRhaW5pbmdCbG9jaygpLT5hdmFpbGFibGVXaWR0
aCgpIDogMF9sdSksIDBfbHUpOwotICAgIH0gZWxzZSBpZiAoIXN0eWxlKCkucmlnaHQoKS5pc0F1
dG8oKSkgewotICAgICAgICBvZmZzZXQuZXhwYW5kKC12YWx1ZUZvckxlbmd0aChzdHlsZSgpLnJp
Z2h0KCksICFzdHlsZSgpLnJpZ2h0KCkuaXNGaXhlZCgpID8gY29udGFpbmluZ0Jsb2NrKCktPmF2
YWlsYWJsZVdpZHRoKCkgOiAwX2x1KSwgMF9sdSk7CisgICAgLy8gSG93ZXZlciBmb3IgZ3JpZCBp
dGVtcyB0aGUgY29udGFpbmluZyBibG9jayBpcyB0aGUgZ3JpZCBhcmVhLCBzbyBvZmZzZXRzIHNo
b3VsZCBiZSByZXNvbHZlZCBhZ2FpbnN0IHRoYXQ6CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nz
d2cub3JnL2Nzcy1ncmlkLyNncmlkLWl0ZW0tc2l6aW5nCisgICAgaWYgKCFzdHlsZSgpLmxlZnQo
KS5pc0F1dG8oKSB8fCAhc3R5bGUoKS5yaWdodCgpLmlzQXV0bygpKSB7CisgICAgICAgIExheW91
dFVuaXQgYXZhaWxhYmxlV2lkdGggPSBoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRX
aWR0aCgpCisgICAgICAgICAgICA/IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRo
KCkudmFsdWVfb3IoTGF5b3V0VW5pdCgpKSA6IGNvbnRhaW5pbmdCbG9jaygpLT5hdmFpbGFibGVX
aWR0aCgpOworICAgICAgICBpZiAoIXN0eWxlKCkubGVmdCgpLmlzQXV0bygpKSB7CisgICAgICAg
ICAgICBpZiAoIXN0eWxlKCkucmlnaHQoKS5pc0F1dG8oKSAmJiAhY29udGFpbmluZ0Jsb2NrKCkt
PnN0eWxlKCkuaXNMZWZ0VG9SaWdodERpcmVjdGlvbigpKQorICAgICAgICAgICAgICAgIG9mZnNl
dC5zZXRXaWR0aCgtdmFsdWVGb3JMZW5ndGgoc3R5bGUoKS5yaWdodCgpLCAhc3R5bGUoKS5yaWdo
dCgpLmlzRml4ZWQoKSA/IGF2YWlsYWJsZVdpZHRoIDogMF9sdSkpOworICAgICAgICAgICAgZWxz
ZQorICAgICAgICAgICAgICAgIG9mZnNldC5leHBhbmQodmFsdWVGb3JMZW5ndGgoc3R5bGUoKS5s
ZWZ0KCksICFzdHlsZSgpLmxlZnQoKS5pc0ZpeGVkKCkgPyBhdmFpbGFibGVXaWR0aCA6IDBfbHUp
LCAwX2x1KTsKKyAgICAgICAgfSBlbHNlIGlmICghc3R5bGUoKS5yaWdodCgpLmlzQXV0bygpKQor
ICAgICAgICAgICAgb2Zmc2V0LmV4cGFuZCgtdmFsdWVGb3JMZW5ndGgoc3R5bGUoKS5yaWdodCgp
LCAhc3R5bGUoKS5yaWdodCgpLmlzRml4ZWQoKSA/IGF2YWlsYWJsZVdpZHRoIDogMF9sdSksIDBf
bHUpOwogICAgIH0KIAogICAgIC8vIElmIHRoZSBjb250YWluaW5nIGJsb2NrIG9mIGEgcmVsYXRp
dmVseSBwb3NpdGlvbmVkIGVsZW1lbnQgZG9lcyBub3QKQEAgLTQxNiwxNyArNDIxLDMwIEBAIExh
eW91dFNpemUgUmVuZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRpb25PZmZzZXQoKSBj
b25zdAogICAgIC8vIHdoZXJlIDxodG1sPiBhbmQgPGJvZHk+IGFzc3VtZSB0aGUgc2l6ZSBvZiB0
aGUgdmlld3BvcnQuIEluIHRoaXMgY2FzZSwKICAgICAvLyBjYWxjdWxhdGUgdGhlIHBlcmNlbnQg
b2Zmc2V0IGJhc2VkIG9uIHRoaXMgaGVpZ2h0LgogICAgIC8vIFNlZSA8aHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI2Mzk2Pi4KKyAgICAvLyBBbm90aGVyIGV4Y2VwdGlv
biBpcyBhIGdyaWQgaXRlbSwgYXMgdGhlIGNvbnRhaW5pbmcgYmxvY2sgaXMgdGhlIGdyaWQgYXJl
YToKKyAgICAvLyBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLWdyaWQvI2dyaWQtaXRlbS1z
aXppbmcKKyAgICBib29sIGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudCA9IGhhc092
ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpOwogICAgIGlmICghc3R5bGUoKS50
b3AoKS5pc0F1dG8oKQogICAgICAgICAmJiAoIXN0eWxlKCkudG9wKCkuaXNQZXJjZW50T3JDYWxj
dWxhdGVkKCkKICAgICAgICAgICAgIHx8ICFjb250YWluaW5nQmxvY2soKS0+aGFzQXV0b0hlaWdo
dE9yQ29udGFpbmluZ0Jsb2NrV2l0aEF1dG9IZWlnaHQoKQotICAgICAgICAgICAgfHwgY29udGFp
bmluZ0Jsb2NrKCktPnN0cmV0Y2hlc1RvVmlld3BvcnQoKSkpCi0gICAgICAgIG9mZnNldC5leHBh
bmQoMF9sdSwgdmFsdWVGb3JMZW5ndGgoc3R5bGUoKS50b3AoKSwgIXN0eWxlKCkudG9wKCkuaXNG
aXhlZCgpID8gY29udGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZUhlaWdodCgpIDogMF9sdSkpOwot
Ci0gICAgZWxzZSBpZiAoIXN0eWxlKCkuYm90dG9tKCkuaXNBdXRvKCkKKyAgICAgICAgICAgIHx8
IGNvbnRhaW5pbmdCbG9jaygpLT5zdHJldGNoZXNUb1ZpZXdwb3J0KCkKKyAgICAgICAgICAgIHx8
IGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudCkpIHsKKyAgICAgICAgLy8gRklYTUU6
IFRoZSBjb21wdXRhdGlvbiBvZiB0aGUgYXZhaWxhYmxlIGhlaWdodCBpcyByZXBlYXRlZCBsYXRl
ciBmb3IgImJvdHRvbSIuCisgICAgICAgIC8vIFdlIGNvdWxkIHJlZmFjdG9yIHRoaXMgYW5kIG1v
dmUgaXQgdG8gc29tZSBjb21tb24gY29kZSBmb3IgYm90aCBpZnMsIGhvd2V2ZXIgbW92aW5nIGl0
IG91dHNpZGUgb2YgdGhlIGlmcworICAgICAgICAvLyBpcyBub3QgcG9zc2libGUgYXMgaXQnZCBj
YXVzZSBwZXJmb3JtYW5jZSByZWdyZXNzaW9ucy4KKyAgICAgICAgb2Zmc2V0LmV4cGFuZCgwX2x1
LCB2YWx1ZUZvckxlbmd0aChzdHlsZSgpLnRvcCgpLCAhc3R5bGUoKS50b3AoKS5pc0ZpeGVkKCkK
KyAgICAgICAgICAgID8gKGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudCA/IG92ZXJy
aWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpLnZhbHVlX29yKDBfbHUpIDogY29udGFp
bmluZ0Jsb2NrKCktPmF2YWlsYWJsZUhlaWdodCgpKQorICAgICAgICAgICAgOiBMYXlvdXRVbml0
KCkpKTsKKyAgICB9IGVsc2UgaWYgKCFzdHlsZSgpLmJvdHRvbSgpLmlzQXV0bygpCiAgICAgICAg
ICYmICghc3R5bGUoKS5ib3R0b20oKS5pc1BlcmNlbnRPckNhbGN1bGF0ZWQoKQogICAgICAgICAg
ICAgfHwgIWNvbnRhaW5pbmdCbG9jaygpLT5oYXNBdXRvSGVpZ2h0T3JDb250YWluaW5nQmxvY2tX
aXRoQXV0b0hlaWdodCgpCi0gICAgICAgICAgICB8fCBjb250YWluaW5nQmxvY2soKS0+c3RyZXRj
aGVzVG9WaWV3cG9ydCgpKSkKLSAgICAgICAgb2Zmc2V0LmV4cGFuZCgwX2x1LCAtdmFsdWVGb3JM
ZW5ndGgoc3R5bGUoKS5ib3R0b20oKSwgIXN0eWxlKCkuYm90dG9tKCkuaXNGaXhlZCgpID8gY29u
dGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZUhlaWdodCgpIDogMF9sdSkpOworICAgICAgICAgICAg
fHwgY29udGFpbmluZ0Jsb2NrKCktPnN0cmV0Y2hlc1RvVmlld3BvcnQoKQorICAgICAgICAgICAg
fHwgaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50KSkgeworICAgICAgICAvLyBGSVhN
RTogQ2hlY2sgY29tbWVudCBhYm92ZSBmb3IgInRvcCIsIGl0IGFwcGxpZXMgaGVyZSB0b28uCisg
ICAgICAgIG9mZnNldC5leHBhbmQoMF9sdSwgLXZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkuYm90dG9t
KCksICFzdHlsZSgpLmJvdHRvbSgpLmlzRml4ZWQoKQorICAgICAgICAgICAgPyAoaGFzT3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50ID8gb3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50
SGVpZ2h0KCkudmFsdWVfb3IoMF9sdSkgOiBjb250YWluaW5nQmxvY2soKS0+YXZhaWxhYmxlSGVp
Z2h0KCkpCisgICAgICAgICAgICA6IExheW91dFVuaXQoKSkpOworICAgIH0KIAogICAgIHJldHVy
biBvZmZzZXQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Qm94TW9kZWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2Rl
bE9iamVjdC5oCmluZGV4IDk0YjY5YTFjNWFmNDJiZTRmMDZkMTNhODAzMzhhOTFlMjc3NTdjYjIu
LjkwM2Y0MGIwMGQwZDhmMzM0NTVlMDEyMzNmM2U0MjZkYWRlMDdkMzkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCkBAIC0yNDMsNyArMjQz
LDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIExheW91dFJlY3QgcGFpbnRSZWN0VG9DbGlwT3V0
RnJvbUJvcmRlcihjb25zdCBMYXlvdXRSZWN0JikgeyByZXR1cm4gTGF5b3V0UmVjdCgpOyB9Owog
CiAgICAgYm9vbCBoYXNSdW5uaW5nQWNjZWxlcmF0ZWRBbmltYXRpb25zKCkgY29uc3Q7Ci0gICAg
CisKKyAgICB2aXJ0dWFsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gb3ZlcnJpZGVDb250YWlu
aW5nQmxvY2tDb250ZW50V2lkdGgoKSBjb25zdCB7IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOyByZXR1
cm4gLTFfbHU7IH0KKyAgICB2aXJ0dWFsIHN0ZDo6b3B0aW9uYWw8TGF5b3V0VW5pdD4gb3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0KCkgY29uc3QgeyBBU1NFUlRfTk9UX1JFQUNI
RUQoKTsgcmV0dXJuIC0xX2x1OyB9CisgICAgdmlydHVhbCBib29sIGhhc092ZXJyaWRlQ29udGFp
bmluZ0Jsb2NrQ29udGVudFdpZHRoKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0
dWFsIGJvb2wgaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0KCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KKwogcHJvdGVjdGVkOgogICAgIFJlbmRlckJveE1vZGVsT2JqZWN0
KEVsZW1lbnQmLCBSZW5kZXJTdHlsZSYmLCBCYXNlVHlwZUZsYWdzKTsKICAgICBSZW5kZXJCb3hN
b2RlbE9iamVjdChEb2N1bWVudCYsIFJlbmRlclN0eWxlJiYsIEJhc2VUeXBlRmxhZ3MpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggNzcwNWRhZjY5MWI0Mjk4OTdhOGM5YzZmNDIw
NDI2ZTk1MzAwOTlkMi4uNjUwMTkzZDNiNGQwN2QxZDIwNmJjNmQwMTNjOWQyMzcxNGRlYjM4OCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTgtMTAt
MTEgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAgICAg
W2Nzcy1ncmlkXSBGaXggcGVyY2VudGFnZXMgaW4gcmVsYXRpdmUgb2Zmc2V0cyBmb3IgZ3JpZCBp
dGVtcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkw
NDkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3
ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1pdGVtcy1yZWxh
dGl2ZS1vZmZzZXRzLTAwMi1leHBlY3RlZC50eHQ6CisgICAgICAgICAgVXBkYXRlIGV4cGVjdGVk
IGZpbGUgYXMgd2UncmUgbm93IHBhc3NpbmcgdGhpcyB0ZXN0LgorCiAyMDE4LTExLTIzICBKYXZp
ZXIgRmVybmFuZGV6ICA8amZlcm5hbmRlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtjc3MtZ3Jp
ZF0gSW1wbGVtZW50IEJhc2VsaW5lIEFsaWdubWVudCBmb3IgZ3JpZCBpdGVtcwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdy
aWQvZ3JpZC1pdGVtcy9ncmlkLWl0ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1n
cmlkL2dyaWQtaXRlbXMvZ3JpZC1pdGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi1leHBlY3RlZC50
eHQKaW5kZXggZDQ4MjViNTViMjllMjM2ZTdhZjNhYjlmNWU4ZmU2MjZhMjk4NjZlMS4uMzY4ZTBi
NzZiODVlODRlNjdlNTZlYTczY2Y1MGM4N2FiYzRmZGM4OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVt
cy9ncmlkLWl0ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlk
LWl0ZW1zL2dyaWQtaXRlbXMtcmVsYXRpdmUtb2Zmc2V0cy0wMDItZXhwZWN0ZWQudHh0CkBAIC0x
LDQ2ICsxLDEwIEBACiAKLUZBSUwgLmdyaWQgMSBhc3NlcnRfZXF1YWxzOiAKLTxkaXYgY2xhc3M9
ImdyaWQgdmVydGljYWxSTCBkaXJlY3Rpb25SVEwiPgotICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0Zp
cnN0Q29sdW1uIiBzdHlsZT0ibGVmdDogMTAlOyB0b3A6IDUlOyIgZGF0YS1vZmZzZXQteD0iMjE5
IiBkYXRhLW9mZmVzdC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0
ZWQtaGVpZ2h0PSIyMDAiPjwvZGl2PgotICA8ZGl2IGNsYXNzPSJzZWNvbmRSb3dTZWNvbmRDb2x1
bW4iIHN0eWxlPSJsZWZ0OiAtMjAlOyB0b3A6IC0xMCU7IiBkYXRhLW9mZnNldC14PSIxMzgiIGRh
dGEtb2ZmZXN0LXk9Ijc1IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI2MCIgZGF0YS1leHBlY3RlZC1o
ZWlnaHQ9IjE1MCI+PC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRoaXJkUm93VGhpcmRDb2x1bW4iIHN0
eWxlPSJyaWdodDogNzAlOyBib3R0b206IDMwJTsiIGRhdGEtb2Zmc2V0LXg9Ijk5IiBkYXRhLW9m
ZmVzdC15PSIxMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdo
dD0iMTAwIj48L2Rpdj4KLTwvZGl2Pgotb2Zmc2V0TGVmdCBleHBlY3RlZCAyMTkgYnV0IGdvdCAy
NDAKLUZBSUwgLmdyaWQgMiBhc3NlcnRfZXF1YWxzOiAKLTxkaXYgY2xhc3M9ImdyaWQgdmVydGlj
YWxSTCI+Ci0gIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiAx
MCU7IHRvcDogNSU7IiBkYXRhLW9mZnNldC14PSIyMTkiIGRhdGEtb2ZmZXN0LXk9IjEwIiBkYXRh
LWV4cGVjdGVkLXdpZHRoPSI5MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjIwMCI+PC9kaXY+Ci0g
IDxkaXYgY2xhc3M9InNlY29uZFJvd1NlY29uZENvbHVtbiIgc3R5bGU9ImxlZnQ6IC0yMCU7IHRv
cDogLTEwJTsiIGRhdGEtb2Zmc2V0LXg9IjEzOCIgZGF0YS1vZmZlc3QteT0iNzUiIGRhdGEtZXhw
ZWN0ZWQtd2lkdGg9IjYwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj48L2Rpdj4KLSAgPGRp
diBjbGFzcz0idGhpcmRSb3dUaGlyZENvbHVtbiIgc3R5bGU9InJpZ2h0OiA3MCU7IGJvdHRvbTog
MzAlOyIgZGF0YS1vZmZzZXQteD0iOTkiIGRhdGEtb2ZmZXN0LXk9IjEyMCIgZGF0YS1leHBlY3Rl
ZC13aWR0aD0iMzAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxMDAiPjwvZGl2PgotPC9kaXY+Ci1v
ZmZzZXRMZWZ0IGV4cGVjdGVkIDIxOSBidXQgZ290IDI0MAotRkFJTCAuZ3JpZCAzIGFzc2VydF9l
cXVhbHM6IAotPGRpdiBjbGFzcz0iZ3JpZCB2ZXJ0aWNhbExSIGRpcmVjdGlvblJUTCI+Ci0gIDxk
aXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiAxMCU7IHRvcDogNSU7
IiBkYXRhLW9mZnNldC14PSI5IiBkYXRhLW9mZmVzdC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0
aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMDAiPjwvZGl2PgotICA8ZGl2IGNsYXNzPSJz
ZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJsZWZ0OiAtMjAlOyB0b3A6IC0xMCU7IiBkYXRh
LW9mZnNldC14PSI3OCIgZGF0YS1vZmZlc3QteT0iNzUiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjYw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj48L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGhpcmRS
b3dUaGlyZENvbHVtbiIgc3R5bGU9InJpZ2h0OiA3MCU7IGJvdHRvbTogMzAlOyIgZGF0YS1vZmZz
ZXQteD0iMTI5IiBkYXRhLW9mZmVzdC15PSIxMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMwIiBk
YXRhLWV4cGVjdGVkLWhlaWdodD0iMTAwIj48L2Rpdj4KLTwvZGl2Pgotb2Zmc2V0TGVmdCBleHBl
Y3RlZCA5IGJ1dCBnb3QgMzAKLUZBSUwgLmdyaWQgNCBhc3NlcnRfZXF1YWxzOiAKLTxkaXYgY2xh
c3M9ImdyaWQgdmVydGljYWxMUiI+Ci0gIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4i
IHN0eWxlPSJsZWZ0OiAxMCU7IHRvcDogNSU7IiBkYXRhLW9mZnNldC14PSI5IiBkYXRhLW9mZmVz
dC15PSIxMCIgZGF0YS1leHBlY3RlZC13aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIy
MDAiPjwvZGl2PgotICA8ZGl2IGNsYXNzPSJzZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJs
ZWZ0OiAtMjAlOyB0b3A6IC0xMCU7IiBkYXRhLW9mZnNldC14PSI3OCIgZGF0YS1vZmZlc3QteT0i
NzUiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjYwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTUwIj48
L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGhpcmRSb3dUaGlyZENvbHVtbiIgc3R5bGU9InJpZ2h0OiA3
MCU7IGJvdHRvbTogMzAlOyIgZGF0YS1vZmZzZXQteD0iMTI5IiBkYXRhLW9mZmVzdC15PSIxMjAi
IGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAwIj48L2Rp
dj4KLTwvZGl2Pgotb2Zmc2V0TGVmdCBleHBlY3RlZCA5IGJ1dCBnb3QgMzAKLUZBSUwgLmdyaWQg
NSBhc3NlcnRfZXF1YWxzOiAKLTxkaXYgY2xhc3M9ImdyaWQgZGlyZWN0aW9uUlRMIj4KLSAgPGRp
diBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgc3R5bGU9ImxlZnQ6IDUlOyB0b3A6IDEwJTsi
IGRhdGEtb2Zmc2V0LXg9IjQxMCIgZGF0YS1vZmZlc3QteT0iOSIgZGF0YS1leHBlY3RlZC13aWR0
aD0iMjAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjwvZGl2PgotICA8ZGl2IGNsYXNzPSJz
ZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJsZWZ0OiAtMTAlOyB0b3A6IC0yMCU7IiBkYXRh
LW9mZnNldC14PSIyMzUiIGRhdGEtb2ZmZXN0LXk9Ijc4IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIx
NTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI2MCI+PC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRoaXJk
Um93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogMzAlOyBib3R0b206IDcwJTsiIGRhdGEtb2Zm
c2V0LXg9IjEyMCIgZGF0YS1vZmZlc3QteT0iMTI5IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIxMDAi
IGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMCI+PC9kaXY+Ci08L2Rpdj4KLW9mZnNldExlZnQgZXhw
ZWN0ZWQgNDEwIGJ1dCBnb3QgNDMwCi1GQUlMIC5ncmlkIDYgYXNzZXJ0X2VxdWFsczogCi08ZGl2
IGNsYXNzPSJncmlkIj4KLSAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIgc3R5bGU9
ImxlZnQ6IDUlOyB0b3A6IDEwJTsiIGRhdGEtb2Zmc2V0LXg9IjEwIiBkYXRhLW9mZmVzdC15PSI5
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIyMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI5MCI+PC9k
aXY+Ci0gIDxkaXYgY2xhc3M9InNlY29uZFJvd1NlY29uZENvbHVtbiIgc3R5bGU9ImxlZnQ6IC0x
MCU7IHRvcDogLTIwJTsiIGRhdGEtb2Zmc2V0LXg9IjE4NSIgZGF0YS1vZmZlc3QteT0iNzgiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjE1MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjYwIj48L2Rpdj4K
LSAgPGRpdiBjbGFzcz0idGhpcmRSb3dUaGlyZENvbHVtbiIgc3R5bGU9InJpZ2h0OiAzMCU7IGJv
dHRvbTogNzAlOyIgZGF0YS1vZmZzZXQteD0iMzIwIiBkYXRhLW9mZmVzdC15PSIxMjkiIGRhdGEt
ZXhwZWN0ZWQtd2lkdGg9IjEwMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjMwIj48L2Rpdj4KLTwv
ZGl2Pgotb2Zmc2V0TGVmdCBleHBlY3RlZCAxMCBidXQgZ290IDMwCitQQVNTIC5ncmlkIDEgCitQ
QVNTIC5ncmlkIDIgCitQQVNTIC5ncmlkIDMgCitQQVNTIC5ncmlkIDQgCitQQVNTIC5ncmlkIDUg
CitQQVNTIC5ncmlkIDYgCiBEaXJlY3Rpb24gTFRSCiAKIERpcmVjdGlvbiBSVEwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357874</attachid>
            <date>2018-12-20 14:55:16 -0800</date>
            <delta_ts>2018-12-20 15:00:56 -0800</delta_ts>
            <desc>Rebased patch</desc>
            <filename>bug-190492-20181220235515.patch</filename>
            <type>text/plain</type>
            <size>16795</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5NDY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmMxMGJhYzYyMGVkNjI0
YzZmMmYxYzA3NTUxYWZkNWY3MmY0MmI2Yi4uZTQyY2U1OWE0ZGY0MWUzNjIxOWE1MjQ3ZjllODM5
OGRkZGY3YWI2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE4LTEwLTExICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gRml4IHBlcmNlbnRhZ2VzIGluIHJlbGF0aXZlIG9mZnNldHMgZm9yIGdyaWQgaXRlbXMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDQ5MgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBtZXRob2Qg
UmVuZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRpb25PZmZzZXQoKSB3YXMgbm90IGNv
bnNpZGVyaW5nIHRoZSBjYXNlIG9mIGdyaWQgaXRlbXMsCisgICAgICAgIHdoZXJlIHRoZSBjb250
YWluaW5nIGJsb2NrIGlzIHRoZSBncmlkIGFyZWEuCisgICAgICAgIFRoZSBwYXRjaCBtb2RpZmll
cyB0aGUgbWV0aG9kIHNvIHRoZSBuZXcgY29kZSB1c2VzIG92ZXJyaWRlQ29udGFpbmluZ0Jsb2Nr
Q29udGVudFdpZHRofEhlaWdodCB3aGVuIHJlcXVpcmVkLgorCisgICAgICAgIFRlc3Q6IGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1p
dGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcDogSW1wbGVtZW50IHRoZSBwaHlzaWNhbCB2ZXJzaW9ucyBvZiB0aGUgYWxyZWFk
eSBleGlzdGVudCBtZXRob2RzLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpvdmVycmlk
ZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3g6Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6Omhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29u
dGVudFdpZHRoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6aGFzT3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0IGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyQm94Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0OjpyZWxhdGl2ZVBv
c2l0aW9uT2Zmc2V0IGNvbnN0KTogTW9kaWZpZWQgbWV0aG9kCisgICAgICAgIHRvIHRha2UgaW50
byBhY2NvdW50IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRofEhlaWdodCBmb3Ig
Z3JpZCBpdGVtcy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaDog
QWRkZWQgbmV3IGhlYWRlcnMgZm9yIHBoeXNpY2FsIHZpcnR1YWwgbWV0aG9kcworICAgICAgICB0
aGF0IHdpbGwgYmUgb3ZlcnJpZGRlbiBpbiBSZW5kZXJCb3guCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3hNb2RlbE9iamVjdDo6b3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGgg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6Om92ZXJyaWRl
Q29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3hNb2RlbE9iamVjdDo6aGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lk
dGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6Omhhc092
ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6CisKIDIwMTgtMTItMjAg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgT3B0aW9uYWw6
OnZhbHVlT3IoKSBpbnN0ZWFkIG9mIE9wdGlvbmFsOjp2YWx1ZV9vcigpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IGE2NzExMTE2NTllNTIxNTYyZmVmNzRkYjQ1NzQz
ZWY5YmJmZGRjZTkuLjA2YWViYWY2NWQ1ZGYxOWI3YjAyZGYyYWVmNjEyNGU2YTY0ZjQ0MmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC05OCw2ICs5OCw3IEBAIHN0
YXRpYyBPdmVycmlkZVNpemVNYXAqIGdPdmVycmlkZUNvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwID0g
bnVsbHB0cjsKIHN0YXRpYyBPdmVycmlkZVNpemVNYXAqIGdPdmVycmlkZUNvbnRlbnRMb2dpY2Fs
V2lkdGhNYXAgPSBudWxscHRyOwogCiAvLyBVc2VkIGJ5IGdyaWQgZWxlbWVudHMgdG8gcHJvcGVy
bHkgc2l6ZSB0aGVpciBncmlkIGl0ZW1zLgorLy8gRklYTUU6IFdlIHNob3VsZCBzdG9yZSB0aGVz
ZSBiYXNlZCBvbiBwaHlzaWNhbCBkaXJlY3Rpb24uCiB0eXBlZGVmIFdURjo6SGFzaE1hcDxjb25z
dCBSZW5kZXJCb3gqLCBPcHRpb25hbDxMYXlvdXRVbml0Pj4gT3ZlcnJpZGVPcHRpb25hbFNpemVN
YXA7CiBzdGF0aWMgT3ZlcnJpZGVPcHRpb25hbFNpemVNYXAqIGdPdmVycmlkZUNvbnRhaW5pbmdC
bG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwID0gbnVsbHB0cjsKIHN0YXRpYyBPdmVycmlkZU9w
dGlvbmFsU2l6ZU1hcCogZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0
aE1hcCA9IG51bGxwdHI7CkBAIC0xMDg2LDYgKzEwODcsNDQgQEAgTGF5b3V0VW5pdCBSZW5kZXJC
b3g6Om92ZXJyaWRlQ29udGVudExvZ2ljYWxIZWlnaHQoKSBjb25zdAogICAgIHJldHVybiBnT3Zl
cnJpZGVDb250ZW50TG9naWNhbEhlaWdodE1hcC0+Z2V0KHRoaXMpOwogfQogCitPcHRpb25hbDxM
YXlvdXRVbml0PiBSZW5kZXJCb3g6Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRo
KCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50
V2lkdGgoKSk7CisgICAgcmV0dXJuIGNvbnRhaW5pbmdCbG9jaygpLT5zdHlsZSgpLmlzSG9yaXpv
bnRhbFdyaXRpbmdNb2RlKCkKKyAgICAgICAgPyBnT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250
ZW50TG9naWNhbFdpZHRoTWFwLT5nZXQodGhpcykKKyAgICAgICAgOiBnT3ZlcnJpZGVDb250YWlu
aW5nQmxvY2tDb250ZW50TG9naWNhbEhlaWdodE1hcC0+Z2V0KHRoaXMpOworfQorCitPcHRpb25h
bDxMYXlvdXRVbml0PiBSZW5kZXJCb3g6Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhl
aWdodCgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29u
dGVudEhlaWdodCgpKTsKKyAgICByZXR1cm4gY29udGFpbmluZ0Jsb2NrKCktPnN0eWxlKCkuaXNI
b3Jpem9udGFsV3JpdGluZ01vZGUoKQorICAgICAgICA/IGdPdmVycmlkZUNvbnRhaW5pbmdCbG9j
a0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwLT5nZXQodGhpcykKKyAgICAgICAgOiBnT3ZlcnJpZGVD
b250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRoTWFwLT5nZXQodGhpcyk7Cit9CisKK2Jv
b2wgUmVuZGVyQm94OjpoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpIGNv
bnN0Cit7CisgICAgUmVuZGVyQmxvY2sqIGNiID0gY29udGFpbmluZ0Jsb2NrKCk7CisgICAgaWYg
KCFjYikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgcmV0dXJuIGNiLT5zdHlsZSgpLmlz
SG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkKKyAgICAgICAgPyBnT3ZlcnJpZGVDb250YWluaW5nQmxv
Y2tDb250ZW50TG9naWNhbFdpZHRoTWFwICYmIGdPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRl
bnRMb2dpY2FsV2lkdGhNYXAtPmNvbnRhaW5zKHRoaXMpCisgICAgICAgIDogZ092ZXJyaWRlQ29u
dGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAgJiYgZ092ZXJyaWRlQ29udGFpbmlu
Z0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAtPmNvbnRhaW5zKHRoaXMpOworfQorCitib29s
IFJlbmRlckJveDo6aGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0KCkgY29u
c3QKK3sKKyAgICBSZW5kZXJCbG9jayogY2IgPSBjb250YWluaW5nQmxvY2soKTsKKyAgICBpZiAo
IWNiKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gY2ItPnN0eWxlKCkuaXNI
b3Jpem9udGFsV3JpdGluZ01vZGUoKQorICAgICAgICA/IGdPdmVycmlkZUNvbnRhaW5pbmdCbG9j
a0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwICYmIGdPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRl
bnRMb2dpY2FsSGVpZ2h0TWFwLT5jb250YWlucyh0aGlzKQorICAgICAgICA6IGdPdmVycmlkZUNv
bnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwICYmIGdPdmVycmlkZUNvbnRhaW5p
bmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwLT5jb250YWlucyh0aGlzKTsKK30KKwogT3B0
aW9uYWw8TGF5b3V0VW5pdD4gUmVuZGVyQm94OjpvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRl
bnRMb2dpY2FsV2lkdGgoKSBjb25zdAogewogICAgIEFTU0VSVChoYXNPdmVycmlkZUNvbnRhaW5p
bmdCbG9ja0NvbnRlbnRMb2dpY2FsV2lkdGgoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Qm94LmgKaW5kZXggODhkOTE3MTQxNjFlYWMxNTQ2Y2QyMzVjOTYzN2M3NmQ0Mjc4MzhjZS4uNTUx
MDY4NTI5NDI5NGFiZjhmNWQ2ZWIyYTBjYWMyMTA2ZjZhNmMxMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3guaApAQCAtMzE0LDYgKzMxNCwxMCBAQCBwdWJsaWM6CiAgICAgdm9pZCBj
bGVhck92ZXJyaWRlQ29udGVudExvZ2ljYWxIZWlnaHQoKTsKICAgICB2b2lkIGNsZWFyT3ZlcnJp
ZGVDb250ZW50TG9naWNhbFdpZHRoKCk7CiAKKyAgICBPcHRpb25hbDxMYXlvdXRVbml0PiBvdmVy
cmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpIGNvbnN0IG92ZXJyaWRlOworICAgIE9w
dGlvbmFsPExheW91dFVuaXQ+IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgp
IGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250
ZW50V2lkdGgoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGhhc092ZXJyaWRlQ29udGFpbmlu
Z0Jsb2NrQ29udGVudEhlaWdodCgpIGNvbnN0IG92ZXJyaWRlOwogICAgIE9wdGlvbmFsPExheW91
dFVuaXQ+IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0aCgpIGNvbnN0
OwogICAgIE9wdGlvbmFsPExheW91dFVuaXQ+IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVu
dExvZ2ljYWxIZWlnaHQoKSBjb25zdDsKICAgICBib29sIGhhc092ZXJyaWRlQ29udGFpbmluZ0Js
b2NrQ29udGVudExvZ2ljYWxXaWR0aCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKaW5kZXggOTYwNTJlYTFiM2FhZjc5MGRi
M2M5ZDNkM2Q0OWIwNDc5Yjc4OWNlMC4uOTE4NmZlODE0MDBmNDU4Yzg3YWJiNmY4MTc5YTQzOTk0
ZWM0MWY5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1v
ZGVsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9k
ZWxPYmplY3QuY3BwCkBAIC00MDEsMTMgKzQwMSwxOCBAQCBMYXlvdXRTaXplIFJlbmRlckJveE1v
ZGVsT2JqZWN0OjpyZWxhdGl2ZVBvc2l0aW9uT2Zmc2V0KCkgY29uc3QKICAgICAvLyBpbiB0aGUg
Y2FzZSBvZiByZWxhdGl2ZSBwb3NpdGlvbmluZyB1c2luZyBwZXJjZW50YWdlcywgd2UgY2FuJ3Qg
ZG8gdGhpcy4gIFRoZSBvZmZzZXQgc2hvdWxkIGFsd2F5cyBiZSByZXNvbHZlZCB1c2luZyB0aGUK
ICAgICAvLyBhdmFpbGFibGUgd2lkdGggb2YgdGhlIGNvbnRhaW5pbmcgYmxvY2suICBUaGVyZWZv
cmUgd2UgZG9uJ3QgdXNlIGNvbnRhaW5pbmdCbG9ja0xvZ2ljYWxXaWR0aEZvckNvbnRlbnQoKSBo
ZXJlLCBidXQgaW5zdGVhZCBleHBsaWNpdGx5CiAgICAgLy8gY2FsbCBhdmFpbGFibGVXaWR0aCBv
biBvdXIgY29udGFpbmluZyBibG9jay4KLSAgICBpZiAoIXN0eWxlKCkubGVmdCgpLmlzQXV0bygp
KSB7Ci0gICAgICAgIGlmICghc3R5bGUoKS5yaWdodCgpLmlzQXV0bygpICYmICFjb250YWluaW5n
QmxvY2soKS0+c3R5bGUoKS5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCkpCi0gICAgICAgICAgICBv
ZmZzZXQuc2V0V2lkdGgoLXZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkucmlnaHQoKSwgIXN0eWxlKCku
cmlnaHQoKS5pc0ZpeGVkKCkgPyBjb250YWluaW5nQmxvY2soKS0+YXZhaWxhYmxlV2lkdGgoKSA6
IDBfbHUpKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgb2Zmc2V0LmV4cGFuZCh2YWx1ZUZv
ckxlbmd0aChzdHlsZSgpLmxlZnQoKSwgIXN0eWxlKCkubGVmdCgpLmlzRml4ZWQoKSA/IGNvbnRh
aW5pbmdCbG9jaygpLT5hdmFpbGFibGVXaWR0aCgpIDogMF9sdSksIDBfbHUpOwotICAgIH0gZWxz
ZSBpZiAoIXN0eWxlKCkucmlnaHQoKS5pc0F1dG8oKSkgewotICAgICAgICBvZmZzZXQuZXhwYW5k
KC12YWx1ZUZvckxlbmd0aChzdHlsZSgpLnJpZ2h0KCksICFzdHlsZSgpLnJpZ2h0KCkuaXNGaXhl
ZCgpID8gY29udGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZVdpZHRoKCkgOiAwX2x1KSwgMF9sdSk7
CisgICAgLy8gSG93ZXZlciBmb3IgZ3JpZCBpdGVtcyB0aGUgY29udGFpbmluZyBibG9jayBpcyB0
aGUgZ3JpZCBhcmVhLCBzbyBvZmZzZXRzIHNob3VsZCBiZSByZXNvbHZlZCBhZ2FpbnN0IHRoYXQ6
CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy1ncmlkLyNncmlkLWl0ZW0tc2l6
aW5nCisgICAgaWYgKCFzdHlsZSgpLmxlZnQoKS5pc0F1dG8oKSB8fCAhc3R5bGUoKS5yaWdodCgp
LmlzQXV0bygpKSB7CisgICAgICAgIExheW91dFVuaXQgYXZhaWxhYmxlV2lkdGggPSBoYXNPdmVy
cmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpCisgICAgICAgICAgICA/IG92ZXJyaWRl
Q29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRoKCkudmFsdWVPcihMYXlvdXRVbml0KCkpIDogY29u
dGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZVdpZHRoKCk7CisgICAgICAgIGlmICghc3R5bGUoKS5s
ZWZ0KCkuaXNBdXRvKCkpIHsKKyAgICAgICAgICAgIGlmICghc3R5bGUoKS5yaWdodCgpLmlzQXV0
bygpICYmICFjb250YWluaW5nQmxvY2soKS0+c3R5bGUoKS5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9u
KCkpCisgICAgICAgICAgICAgICAgb2Zmc2V0LnNldFdpZHRoKC12YWx1ZUZvckxlbmd0aChzdHls
ZSgpLnJpZ2h0KCksICFzdHlsZSgpLnJpZ2h0KCkuaXNGaXhlZCgpID8gYXZhaWxhYmxlV2lkdGgg
OiAwX2x1KSk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgb2Zmc2V0LmV4cGFu
ZCh2YWx1ZUZvckxlbmd0aChzdHlsZSgpLmxlZnQoKSwgIXN0eWxlKCkubGVmdCgpLmlzRml4ZWQo
KSA/IGF2YWlsYWJsZVdpZHRoIDogMF9sdSksIDBfbHUpOworICAgICAgICB9IGVsc2UgaWYgKCFz
dHlsZSgpLnJpZ2h0KCkuaXNBdXRvKCkpCisgICAgICAgICAgICBvZmZzZXQuZXhwYW5kKC12YWx1
ZUZvckxlbmd0aChzdHlsZSgpLnJpZ2h0KCksICFzdHlsZSgpLnJpZ2h0KCkuaXNGaXhlZCgpID8g
YXZhaWxhYmxlV2lkdGggOiAwX2x1KSwgMF9sdSk7CiAgICAgfQogCiAgICAgLy8gSWYgdGhlIGNv
bnRhaW5pbmcgYmxvY2sgb2YgYSByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgZWxlbWVudCBkb2VzIG5v
dApAQCAtNDE2LDE3ICs0MjEsMzAgQEAgTGF5b3V0U2l6ZSBSZW5kZXJCb3hNb2RlbE9iamVjdDo6
cmVsYXRpdmVQb3NpdGlvbk9mZnNldCgpIGNvbnN0CiAgICAgLy8gd2hlcmUgPGh0bWw+IGFuZCA8
Ym9keT4gYXNzdW1lIHRoZSBzaXplIG9mIHRoZSB2aWV3cG9ydC4gSW4gdGhpcyBjYXNlLAogICAg
IC8vIGNhbGN1bGF0ZSB0aGUgcGVyY2VudCBvZmZzZXQgYmFzZWQgb24gdGhpcyBoZWlnaHQuCiAg
ICAgLy8gU2VlIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjYzOTY+
LgorICAgIC8vIEFub3RoZXIgZXhjZXB0aW9uIGlzIGEgZ3JpZCBpdGVtLCBhcyB0aGUgY29udGFp
bmluZyBibG9jayBpcyB0aGUgZ3JpZCBhcmVhOgorICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dn
Lm9yZy9jc3MtZ3JpZC8jZ3JpZC1pdGVtLXNpemluZworICAgIGJvb2wgaGFzT3ZlcnJpZGVDb250
YWluaW5nQmxvY2tDb250ZW50ID0gaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVp
Z2h0KCk7CiAgICAgaWYgKCFzdHlsZSgpLnRvcCgpLmlzQXV0bygpCiAgICAgICAgICYmICghc3R5
bGUoKS50b3AoKS5pc1BlcmNlbnRPckNhbGN1bGF0ZWQoKQogICAgICAgICAgICAgfHwgIWNvbnRh
aW5pbmdCbG9jaygpLT5oYXNBdXRvSGVpZ2h0T3JDb250YWluaW5nQmxvY2tXaXRoQXV0b0hlaWdo
dCgpCi0gICAgICAgICAgICB8fCBjb250YWluaW5nQmxvY2soKS0+c3RyZXRjaGVzVG9WaWV3cG9y
dCgpKSkKLSAgICAgICAgb2Zmc2V0LmV4cGFuZCgwX2x1LCB2YWx1ZUZvckxlbmd0aChzdHlsZSgp
LnRvcCgpLCAhc3R5bGUoKS50b3AoKS5pc0ZpeGVkKCkgPyBjb250YWluaW5nQmxvY2soKS0+YXZh
aWxhYmxlSGVpZ2h0KCkgOiAwX2x1KSk7Ci0KLSAgICBlbHNlIGlmICghc3R5bGUoKS5ib3R0b20o
KS5pc0F1dG8oKQorICAgICAgICAgICAgfHwgY29udGFpbmluZ0Jsb2NrKCktPnN0cmV0Y2hlc1Rv
Vmlld3BvcnQoKQorICAgICAgICAgICAgfHwgaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250
ZW50KSkgeworICAgICAgICAvLyBGSVhNRTogVGhlIGNvbXB1dGF0aW9uIG9mIHRoZSBhdmFpbGFi
bGUgaGVpZ2h0IGlzIHJlcGVhdGVkIGxhdGVyIGZvciAiYm90dG9tIi4KKyAgICAgICAgLy8gV2Ug
Y291bGQgcmVmYWN0b3IgdGhpcyBhbmQgbW92ZSBpdCB0byBzb21lIGNvbW1vbiBjb2RlIGZvciBi
b3RoIGlmcywgaG93ZXZlciBtb3ZpbmcgaXQgb3V0c2lkZSBvZiB0aGUgaWZzCisgICAgICAgIC8v
IGlzIG5vdCBwb3NzaWJsZSBhcyBpdCdkIGNhdXNlIHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb25zLgor
ICAgICAgICBvZmZzZXQuZXhwYW5kKDBfbHUsIHZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkudG9wKCks
ICFzdHlsZSgpLnRvcCgpLmlzRml4ZWQoKQorICAgICAgICAgICAgPyAoaGFzT3ZlcnJpZGVDb250
YWluaW5nQmxvY2tDb250ZW50ID8gb3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0
KCkudmFsdWVPcigwX2x1KSA6IGNvbnRhaW5pbmdCbG9jaygpLT5hdmFpbGFibGVIZWlnaHQoKSkK
KyAgICAgICAgICAgIDogTGF5b3V0VW5pdCgpKSk7CisgICAgfSBlbHNlIGlmICghc3R5bGUoKS5i
b3R0b20oKS5pc0F1dG8oKQogICAgICAgICAmJiAoIXN0eWxlKCkuYm90dG9tKCkuaXNQZXJjZW50
T3JDYWxjdWxhdGVkKCkKICAgICAgICAgICAgIHx8ICFjb250YWluaW5nQmxvY2soKS0+aGFzQXV0
b0hlaWdodE9yQ29udGFpbmluZ0Jsb2NrV2l0aEF1dG9IZWlnaHQoKQotICAgICAgICAgICAgfHwg
Y29udGFpbmluZ0Jsb2NrKCktPnN0cmV0Y2hlc1RvVmlld3BvcnQoKSkpCi0gICAgICAgIG9mZnNl
dC5leHBhbmQoMF9sdSwgLXZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkuYm90dG9tKCksICFzdHlsZSgp
LmJvdHRvbSgpLmlzRml4ZWQoKSA/IGNvbnRhaW5pbmdCbG9jaygpLT5hdmFpbGFibGVIZWlnaHQo
KSA6IDBfbHUpKTsKKyAgICAgICAgICAgIHx8IGNvbnRhaW5pbmdCbG9jaygpLT5zdHJldGNoZXNU
b1ZpZXdwb3J0KCkKKyAgICAgICAgICAgIHx8IGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29u
dGVudCkpIHsKKyAgICAgICAgLy8gRklYTUU6IENoZWNrIGNvbW1lbnQgYWJvdmUgZm9yICJ0b3Ai
LCBpdCBhcHBsaWVzIGhlcmUgdG9vLgorICAgICAgICBvZmZzZXQuZXhwYW5kKDBfbHUsIC12YWx1
ZUZvckxlbmd0aChzdHlsZSgpLmJvdHRvbSgpLCAhc3R5bGUoKS5ib3R0b20oKS5pc0ZpeGVkKCkK
KyAgICAgICAgICAgID8gKGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudCA/IG92ZXJy
aWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpLnZhbHVlT3IoMF9sdSkgOiBjb250YWlu
aW5nQmxvY2soKS0+YXZhaWxhYmxlSGVpZ2h0KCkpCisgICAgICAgICAgICA6IExheW91dFVuaXQo
KSkpOworICAgIH0KIAogICAgIHJldHVybiBvZmZzZXQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCmluZGV4IDk0YjY5YTFjNWFmNDJiZTRm
MDZkMTNhODAzMzhhOTFlMjc3NTdjYjIuLjg2ZjRiODAwM2IxZTg1YjA4MzExMjc3ZGQ0MzgxZWU5
ZDc3MTFhN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hN
b2RlbE9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2Rl
bE9iamVjdC5oCkBAIC0yNDMsNyArMjQzLDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIExheW91
dFJlY3QgcGFpbnRSZWN0VG9DbGlwT3V0RnJvbUJvcmRlcihjb25zdCBMYXlvdXRSZWN0JikgeyBy
ZXR1cm4gTGF5b3V0UmVjdCgpOyB9OwogCiAgICAgYm9vbCBoYXNSdW5uaW5nQWNjZWxlcmF0ZWRB
bmltYXRpb25zKCkgY29uc3Q7Ci0gICAgCisKKyAgICB2aXJ0dWFsIE9wdGlvbmFsPExheW91dFVu
aXQ+IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRoKCkgY29uc3QgeyBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsgcmV0dXJuIC0xX2x1OyB9CisgICAgdmlydHVhbCBPcHRpb25hbDxMYXlv
dXRVbml0PiBvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRIZWlnaHQoKSBjb25zdCB7IEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOyByZXR1cm4gLTFfbHU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFz
T3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGgoKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQorICAgIHZpcnR1YWwgYm9vbCBoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRI
ZWlnaHQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgUmVuZGVy
Qm94TW9kZWxPYmplY3QoRWxlbWVudCYsIFJlbmRlclN0eWxlJiYsIEJhc2VUeXBlRmxhZ3MpOwog
ICAgIFJlbmRlckJveE1vZGVsT2JqZWN0KERvY3VtZW50JiwgUmVuZGVyU3R5bGUmJiwgQmFzZVR5
cGVGbGFncyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA5OTVmZWNiZmEyNzkx
ZDAyZjRjOWE3ZTRmMjEyNDY2YWJiNmEwMjQxLi4xZTZmOTAyMjRkN2ZkODYyYmE4YjgxNzU1YmJk
ZmYyNzc5NjE3M2VmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
MyBAQAorMjAxOC0xMC0xMSAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNv
bT4KKworICAgICAgICBbY3NzLWdyaWRdIEZpeCBwZXJjZW50YWdlcyBpbiByZWxhdGl2ZSBvZmZz
ZXRzIGZvciBncmlkIGl0ZW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xOTA0OTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9n
cmlkLWl0ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgICBV
cGRhdGUgZXhwZWN0ZWQgZmlsZSBhcyB3ZSdyZSBub3cgcGFzc2luZyB0aGlzIHRlc3QuCisKIDIw
MTgtMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
bW92ZSBSVENSdHBUcmFuc2NlaXZlci5zZXREaXJlY3Rpb24KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRl
bXMvZ3JpZC1pdGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0
ZW1zL2dyaWQtaXRlbXMtcmVsYXRpdmUtb2Zmc2V0cy0wMDItZXhwZWN0ZWQudHh0CmluZGV4IGQ0
ODI1YjU1YjI5ZTIzNmU3YWYzYWI5ZjVlOGZlNjI2YTI5ODY2ZTEuLjM2OGUwYjc2Yjg1ZTg0ZTY3
ZTU2ZWE3M2NmNTBjODdhYmM0ZmRjODkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1pdGVt
cy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlk
LWl0ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLWV4cGVjdGVkLnR4dApAQCAtMSw0NiArMSwxMCBA
QAogCi1GQUlMIC5ncmlkIDEgYXNzZXJ0X2VxdWFsczogCi08ZGl2IGNsYXNzPSJncmlkIHZlcnRp
Y2FsUkwgZGlyZWN0aW9uUlRMIj4KLSAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIg
c3R5bGU9ImxlZnQ6IDEwJTsgdG9wOiA1JTsiIGRhdGEtb2Zmc2V0LXg9IjIxOSIgZGF0YS1vZmZl
c3QteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
MjAwIj48L2Rpdj4KLSAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vjb25kQ29sdW1uIiBzdHlsZT0i
bGVmdDogLTIwJTsgdG9wOiAtMTAlOyIgZGF0YS1vZmZzZXQteD0iMTM4IiBkYXRhLW9mZmVzdC15
PSI3NSIgZGF0YS1leHBlY3RlZC13aWR0aD0iNjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxNTAi
PjwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0aGlyZFJvd1RoaXJkQ29sdW1uIiBzdHlsZT0icmlnaHQ6
IDcwJTsgYm90dG9tOiAzMCU7IiBkYXRhLW9mZnNldC14PSI5OSIgZGF0YS1vZmZlc3QteT0iMTIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+PC9k
aXY+Ci08L2Rpdj4KLW9mZnNldExlZnQgZXhwZWN0ZWQgMjE5IGJ1dCBnb3QgMjQwCi1GQUlMIC5n
cmlkIDIgYXNzZXJ0X2VxdWFsczogCi08ZGl2IGNsYXNzPSJncmlkIHZlcnRpY2FsUkwiPgotICA8
ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBzdHlsZT0ibGVmdDogMTAlOyB0b3A6IDUl
OyIgZGF0YS1vZmZzZXQteD0iMjE5IiBkYXRhLW9mZmVzdC15PSIxMCIgZGF0YS1leHBlY3RlZC13
aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMDAiPjwvZGl2PgotICA8ZGl2IGNsYXNz
PSJzZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJsZWZ0OiAtMjAlOyB0b3A6IC0xMCU7IiBk
YXRhLW9mZnNldC14PSIxMzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSI2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRo
aXJkUm93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogNzAlOyBib3R0b206IDMwJTsiIGRhdGEt
b2Zmc2V0LXg9Ijk5IiBkYXRhLW9mZmVzdC15PSIxMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAwIj48L2Rpdj4KLTwvZGl2Pgotb2Zmc2V0TGVmdCBl
eHBlY3RlZCAyMTkgYnV0IGdvdCAyNDAKLUZBSUwgLmdyaWQgMyBhc3NlcnRfZXF1YWxzOiAKLTxk
aXYgY2xhc3M9ImdyaWQgdmVydGljYWxMUiBkaXJlY3Rpb25SVEwiPgotICA8ZGl2IGNsYXNzPSJm
aXJzdFJvd0ZpcnN0Q29sdW1uIiBzdHlsZT0ibGVmdDogMTAlOyB0b3A6IDUlOyIgZGF0YS1vZmZz
ZXQteD0iOSIgZGF0YS1vZmZlc3QteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iMjAwIj48L2Rpdj4KLSAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vj
b25kQ29sdW1uIiBzdHlsZT0ibGVmdDogLTIwJTsgdG9wOiAtMTAlOyIgZGF0YS1vZmZzZXQteD0i
NzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI2MCIgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRoaXJkUm93VGhpcmRDb2x1
bW4iIHN0eWxlPSJyaWdodDogNzAlOyBib3R0b206IDMwJTsiIGRhdGEtb2Zmc2V0LXg9IjEyOSIg
ZGF0YS1vZmZlc3QteT0iMTIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjEwMCI+PC9kaXY+Ci08L2Rpdj4KLW9mZnNldExlZnQgZXhwZWN0ZWQgOSBidXQg
Z290IDMwCi1GQUlMIC5ncmlkIDQgYXNzZXJ0X2VxdWFsczogCi08ZGl2IGNsYXNzPSJncmlkIHZl
cnRpY2FsTFIiPgotICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBzdHlsZT0ibGVm
dDogMTAlOyB0b3A6IDUlOyIgZGF0YS1vZmZzZXQteD0iOSIgZGF0YS1vZmZlc3QteT0iMTAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAwIj48L2Rpdj4K
LSAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vjb25kQ29sdW1uIiBzdHlsZT0ibGVmdDogLTIwJTsg
dG9wOiAtMTAlOyIgZGF0YS1vZmZzZXQteD0iNzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSI2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+Ci0gIDxk
aXYgY2xhc3M9InRoaXJkUm93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogNzAlOyBib3R0b206
IDMwJTsiIGRhdGEtb2Zmc2V0LXg9IjEyOSIgZGF0YS1vZmZlc3QteT0iMTIwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+PC9kaXY+Ci08L2Rpdj4K
LW9mZnNldExlZnQgZXhwZWN0ZWQgOSBidXQgZ290IDMwCi1GQUlMIC5ncmlkIDUgYXNzZXJ0X2Vx
dWFsczogCi08ZGl2IGNsYXNzPSJncmlkIGRpcmVjdGlvblJUTCI+Ci0gIDxkaXYgY2xhc3M9ImZp
cnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiA1JTsgdG9wOiAxMCU7IiBkYXRhLW9mZnNl
dC14PSI0MTAiIGRhdGEtb2ZmZXN0LXk9IjkiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4KLSAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vj
b25kQ29sdW1uIiBzdHlsZT0ibGVmdDogLTEwJTsgdG9wOiAtMjAlOyIgZGF0YS1vZmZzZXQteD0i
MjM1IiBkYXRhLW9mZmVzdC15PSI3OCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTUwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iNjAiPjwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0aGlyZFJvd1RoaXJkQ29s
dW1uIiBzdHlsZT0icmlnaHQ6IDMwJTsgYm90dG9tOiA3MCU7IiBkYXRhLW9mZnNldC14PSIxMjAi
IGRhdGEtb2ZmZXN0LXk9IjEyOSIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iMzAiPjwvZGl2PgotPC9kaXY+Ci1vZmZzZXRMZWZ0IGV4cGVjdGVkIDQxMCBi
dXQgZ290IDQzMAotRkFJTCAuZ3JpZCA2IGFzc2VydF9lcXVhbHM6IAotPGRpdiBjbGFzcz0iZ3Jp
ZCI+Ci0gIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiA1JTsg
dG9wOiAxMCU7IiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZlc3QteT0iOSIgZGF0YS1leHBl
Y3RlZC13aWR0aD0iMjAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjwvZGl2PgotICA8ZGl2
IGNsYXNzPSJzZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJsZWZ0OiAtMTAlOyB0b3A6IC0y
MCU7IiBkYXRhLW9mZnNldC14PSIxODUiIGRhdGEtb2ZmZXN0LXk9Ijc4IiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIxNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI2MCI+PC9kaXY+Ci0gIDxkaXYgY2xh
c3M9InRoaXJkUm93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogMzAlOyBib3R0b206IDcwJTsi
IGRhdGEtb2Zmc2V0LXg9IjMyMCIgZGF0YS1vZmZlc3QteT0iMTI5IiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMCI+PC9kaXY+Ci08L2Rpdj4KLW9mZnNl
dExlZnQgZXhwZWN0ZWQgMTAgYnV0IGdvdCAzMAorUEFTUyAuZ3JpZCAxIAorUEFTUyAuZ3JpZCAy
IAorUEFTUyAuZ3JpZCAzIAorUEFTUyAuZ3JpZCA0IAorUEFTUyAuZ3JpZCA1IAorUEFTUyAuZ3Jp
ZCA2IAogRGlyZWN0aW9uIExUUgogCiBEaXJlY3Rpb24gUlRMCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357875</attachid>
            <date>2018-12-20 15:00:59 -0800</date>
            <delta_ts>2018-12-21 04:30:05 -0800</delta_ts>
            <desc>Apply suggested changes</desc>
            <filename>bug-190492-20181221000058.patch</filename>
            <type>text/plain</type>
            <size>16738</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5NDY1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmMxMGJhYzYyMGVkNjI0
YzZmMmYxYzA3NTUxYWZkNWY3MmY0MmI2Yi4uZTQyY2U1OWE0ZGY0MWUzNjIxOWE1MjQ3ZjllODM5
OGRkZGY3YWI2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE4LTEwLTExICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtjc3MtZ3Jp
ZF0gRml4IHBlcmNlbnRhZ2VzIGluIHJlbGF0aXZlIG9mZnNldHMgZm9yIGdyaWQgaXRlbXMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDQ5MgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBtZXRob2Qg
UmVuZGVyQm94TW9kZWxPYmplY3Q6OnJlbGF0aXZlUG9zaXRpb25PZmZzZXQoKSB3YXMgbm90IGNv
bnNpZGVyaW5nIHRoZSBjYXNlIG9mIGdyaWQgaXRlbXMsCisgICAgICAgIHdoZXJlIHRoZSBjb250
YWluaW5nIGJsb2NrIGlzIHRoZSBncmlkIGFyZWEuCisgICAgICAgIFRoZSBwYXRjaCBtb2RpZmll
cyB0aGUgbWV0aG9kIHNvIHRoZSBuZXcgY29kZSB1c2VzIG92ZXJyaWRlQ29udGFpbmluZ0Jsb2Nr
Q29udGVudFdpZHRofEhlaWdodCB3aGVuIHJlcXVpcmVkLgorCisgICAgICAgIFRlc3Q6IGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1p
dGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi5odG1sCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcDogSW1wbGVtZW50IHRoZSBwaHlzaWNhbCB2ZXJzaW9ucyBvZiB0aGUgYWxyZWFk
eSBleGlzdGVudCBtZXRob2RzLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94OjpvdmVycmlk
ZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3g6Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6Omhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29u
dGVudFdpZHRoIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveDo6aGFzT3ZlcnJp
ZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0IGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVyQm94Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJveE1vZGVsT2JqZWN0OjpyZWxhdGl2ZVBv
c2l0aW9uT2Zmc2V0IGNvbnN0KTogTW9kaWZpZWQgbWV0aG9kCisgICAgICAgIHRvIHRha2UgaW50
byBhY2NvdW50IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRofEhlaWdodCBmb3Ig
Z3JpZCBpdGVtcy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaDog
QWRkZWQgbmV3IGhlYWRlcnMgZm9yIHBoeXNpY2FsIHZpcnR1YWwgbWV0aG9kcworICAgICAgICB0
aGF0IHdpbGwgYmUgb3ZlcnJpZGRlbiBpbiBSZW5kZXJCb3guCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3hNb2RlbE9iamVjdDo6b3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGgg
Y29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6Om92ZXJyaWRl
Q29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJCb3hNb2RlbE9iamVjdDo6aGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lk
dGggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6Omhhc092
ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCBjb25zdCk6CisKIDIwMTgtMTItMjAg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgT3B0aW9uYWw6
OnZhbHVlT3IoKSBpbnN0ZWFkIG9mIE9wdGlvbmFsOjp2YWx1ZV9vcigpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCb3guY3BwCmluZGV4IGE2NzExMTE2NTllNTIxNTYyZmVmNzRkYjQ1NzQz
ZWY5YmJmZGRjZTkuLjA2YWViYWY2NWQ1ZGYxOWI3YjAyZGYyYWVmNjEyNGU2YTY0ZjQ0MmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guY3BwCkBAIC05OCw2ICs5OCw3IEBAIHN0
YXRpYyBPdmVycmlkZVNpemVNYXAqIGdPdmVycmlkZUNvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwID0g
bnVsbHB0cjsKIHN0YXRpYyBPdmVycmlkZVNpemVNYXAqIGdPdmVycmlkZUNvbnRlbnRMb2dpY2Fs
V2lkdGhNYXAgPSBudWxscHRyOwogCiAvLyBVc2VkIGJ5IGdyaWQgZWxlbWVudHMgdG8gcHJvcGVy
bHkgc2l6ZSB0aGVpciBncmlkIGl0ZW1zLgorLy8gRklYTUU6IFdlIHNob3VsZCBzdG9yZSB0aGVz
ZSBiYXNlZCBvbiBwaHlzaWNhbCBkaXJlY3Rpb24uCiB0eXBlZGVmIFdURjo6SGFzaE1hcDxjb25z
dCBSZW5kZXJCb3gqLCBPcHRpb25hbDxMYXlvdXRVbml0Pj4gT3ZlcnJpZGVPcHRpb25hbFNpemVN
YXA7CiBzdGF0aWMgT3ZlcnJpZGVPcHRpb25hbFNpemVNYXAqIGdPdmVycmlkZUNvbnRhaW5pbmdC
bG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwID0gbnVsbHB0cjsKIHN0YXRpYyBPdmVycmlkZU9w
dGlvbmFsU2l6ZU1hcCogZ092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0
aE1hcCA9IG51bGxwdHI7CkBAIC0xMDg2LDYgKzEwODcsNDQgQEAgTGF5b3V0VW5pdCBSZW5kZXJC
b3g6Om92ZXJyaWRlQ29udGVudExvZ2ljYWxIZWlnaHQoKSBjb25zdAogICAgIHJldHVybiBnT3Zl
cnJpZGVDb250ZW50TG9naWNhbEhlaWdodE1hcC0+Z2V0KHRoaXMpOwogfQogCitPcHRpb25hbDxM
YXlvdXRVbml0PiBSZW5kZXJCb3g6Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRo
KCkgY29uc3QKK3sKKyAgICBBU1NFUlQoaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50
V2lkdGgoKSk7CisgICAgcmV0dXJuIGNvbnRhaW5pbmdCbG9jaygpLT5zdHlsZSgpLmlzSG9yaXpv
bnRhbFdyaXRpbmdNb2RlKCkKKyAgICAgICAgPyBnT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250
ZW50TG9naWNhbFdpZHRoTWFwLT5nZXQodGhpcykKKyAgICAgICAgOiBnT3ZlcnJpZGVDb250YWlu
aW5nQmxvY2tDb250ZW50TG9naWNhbEhlaWdodE1hcC0+Z2V0KHRoaXMpOworfQorCitPcHRpb25h
bDxMYXlvdXRVbml0PiBSZW5kZXJCb3g6Om92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhl
aWdodCgpIGNvbnN0Cit7CisgICAgQVNTRVJUKGhhc092ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29u
dGVudEhlaWdodCgpKTsKKyAgICByZXR1cm4gY29udGFpbmluZ0Jsb2NrKCktPnN0eWxlKCkuaXNI
b3Jpem9udGFsV3JpdGluZ01vZGUoKQorICAgICAgICA/IGdPdmVycmlkZUNvbnRhaW5pbmdCbG9j
a0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwLT5nZXQodGhpcykKKyAgICAgICAgOiBnT3ZlcnJpZGVD
b250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRoTWFwLT5nZXQodGhpcyk7Cit9CisKK2Jv
b2wgUmVuZGVyQm94OjpoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpIGNv
bnN0Cit7CisgICAgUmVuZGVyQmxvY2sqIGNiID0gY29udGFpbmluZ0Jsb2NrKCk7CisgICAgaWYg
KCFjYikKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgcmV0dXJuIGNiLT5zdHlsZSgpLmlz
SG9yaXpvbnRhbFdyaXRpbmdNb2RlKCkKKyAgICAgICAgPyBnT3ZlcnJpZGVDb250YWluaW5nQmxv
Y2tDb250ZW50TG9naWNhbFdpZHRoTWFwICYmIGdPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRl
bnRMb2dpY2FsV2lkdGhNYXAtPmNvbnRhaW5zKHRoaXMpCisgICAgICAgIDogZ092ZXJyaWRlQ29u
dGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAgJiYgZ092ZXJyaWRlQ29udGFpbmlu
Z0Jsb2NrQ29udGVudExvZ2ljYWxIZWlnaHRNYXAtPmNvbnRhaW5zKHRoaXMpOworfQorCitib29s
IFJlbmRlckJveDo6aGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0KCkgY29u
c3QKK3sKKyAgICBSZW5kZXJCbG9jayogY2IgPSBjb250YWluaW5nQmxvY2soKTsKKyAgICBpZiAo
IWNiKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gY2ItPnN0eWxlKCkuaXNI
b3Jpem9udGFsV3JpdGluZ01vZGUoKQorICAgICAgICA/IGdPdmVycmlkZUNvbnRhaW5pbmdCbG9j
a0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwICYmIGdPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRl
bnRMb2dpY2FsSGVpZ2h0TWFwLT5jb250YWlucyh0aGlzKQorICAgICAgICA6IGdPdmVycmlkZUNv
bnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwICYmIGdPdmVycmlkZUNvbnRhaW5p
bmdCbG9ja0NvbnRlbnRMb2dpY2FsSGVpZ2h0TWFwLT5jb250YWlucyh0aGlzKTsKK30KKwogT3B0
aW9uYWw8TGF5b3V0VW5pdD4gUmVuZGVyQm94OjpvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRl
bnRMb2dpY2FsV2lkdGgoKSBjb25zdAogewogICAgIEFTU0VSVChoYXNPdmVycmlkZUNvbnRhaW5p
bmdCbG9ja0NvbnRlbnRMb2dpY2FsV2lkdGgoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQm94LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
Qm94LmgKaW5kZXggODhkOTE3MTQxNjFlYWMxNTQ2Y2QyMzVjOTYzN2M3NmQ0Mjc4MzhjZS4uNTUx
MDY4NTI5NDI5NGFiZjhmNWQ2ZWIyYTBjYWMyMTA2ZjZhNmMxMiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3guaApAQCAtMzE0LDYgKzMxNCwxMCBAQCBwdWJsaWM6CiAgICAgdm9pZCBj
bGVhck92ZXJyaWRlQ29udGVudExvZ2ljYWxIZWlnaHQoKTsKICAgICB2b2lkIGNsZWFyT3ZlcnJp
ZGVDb250ZW50TG9naWNhbFdpZHRoKCk7CiAKKyAgICBPcHRpb25hbDxMYXlvdXRVbml0PiBvdmVy
cmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpIGNvbnN0IG92ZXJyaWRlOworICAgIE9w
dGlvbmFsPExheW91dFVuaXQ+IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgp
IGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250
ZW50V2lkdGgoKSBjb25zdCBvdmVycmlkZTsKKyAgICBib29sIGhhc092ZXJyaWRlQ29udGFpbmlu
Z0Jsb2NrQ29udGVudEhlaWdodCgpIGNvbnN0IG92ZXJyaWRlOwogICAgIE9wdGlvbmFsPExheW91
dFVuaXQ+IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0aCgpIGNvbnN0
OwogICAgIE9wdGlvbmFsPExheW91dFVuaXQ+IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVu
dExvZ2ljYWxIZWlnaHQoKSBjb25zdDsKICAgICBib29sIGhhc092ZXJyaWRlQ29udGFpbmluZ0Js
b2NrQ29udGVudExvZ2ljYWxXaWR0aCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKaW5kZXggOTYwNTJlYTFiM2FhZjc5MGRi
M2M5ZDNkM2Q0OWIwNDc5Yjc4OWNlMC4uZmRjNTExYzEzY2I0MTViMzU2YTQ3Mjc4OGQwNmU4ODU1
NjM5ODkyNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1v
ZGVsT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9k
ZWxPYmplY3QuY3BwCkBAIC00MDEsMTMgKzQwMSwxOCBAQCBMYXlvdXRTaXplIFJlbmRlckJveE1v
ZGVsT2JqZWN0OjpyZWxhdGl2ZVBvc2l0aW9uT2Zmc2V0KCkgY29uc3QKICAgICAvLyBpbiB0aGUg
Y2FzZSBvZiByZWxhdGl2ZSBwb3NpdGlvbmluZyB1c2luZyBwZXJjZW50YWdlcywgd2UgY2FuJ3Qg
ZG8gdGhpcy4gIFRoZSBvZmZzZXQgc2hvdWxkIGFsd2F5cyBiZSByZXNvbHZlZCB1c2luZyB0aGUK
ICAgICAvLyBhdmFpbGFibGUgd2lkdGggb2YgdGhlIGNvbnRhaW5pbmcgYmxvY2suICBUaGVyZWZv
cmUgd2UgZG9uJ3QgdXNlIGNvbnRhaW5pbmdCbG9ja0xvZ2ljYWxXaWR0aEZvckNvbnRlbnQoKSBo
ZXJlLCBidXQgaW5zdGVhZCBleHBsaWNpdGx5CiAgICAgLy8gY2FsbCBhdmFpbGFibGVXaWR0aCBv
biBvdXIgY29udGFpbmluZyBibG9jay4KLSAgICBpZiAoIXN0eWxlKCkubGVmdCgpLmlzQXV0bygp
KSB7Ci0gICAgICAgIGlmICghc3R5bGUoKS5yaWdodCgpLmlzQXV0bygpICYmICFjb250YWluaW5n
QmxvY2soKS0+c3R5bGUoKS5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9uKCkpCi0gICAgICAgICAgICBv
ZmZzZXQuc2V0V2lkdGgoLXZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkucmlnaHQoKSwgIXN0eWxlKCku
cmlnaHQoKS5pc0ZpeGVkKCkgPyBjb250YWluaW5nQmxvY2soKS0+YXZhaWxhYmxlV2lkdGgoKSA6
IDBfbHUpKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgb2Zmc2V0LmV4cGFuZCh2YWx1ZUZv
ckxlbmd0aChzdHlsZSgpLmxlZnQoKSwgIXN0eWxlKCkubGVmdCgpLmlzRml4ZWQoKSA/IGNvbnRh
aW5pbmdCbG9jaygpLT5hdmFpbGFibGVXaWR0aCgpIDogMF9sdSksIDBfbHUpOwotICAgIH0gZWxz
ZSBpZiAoIXN0eWxlKCkucmlnaHQoKS5pc0F1dG8oKSkgewotICAgICAgICBvZmZzZXQuZXhwYW5k
KC12YWx1ZUZvckxlbmd0aChzdHlsZSgpLnJpZ2h0KCksICFzdHlsZSgpLnJpZ2h0KCkuaXNGaXhl
ZCgpID8gY29udGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZVdpZHRoKCkgOiAwX2x1KSwgMF9sdSk7
CisgICAgLy8gSG93ZXZlciBmb3IgZ3JpZCBpdGVtcyB0aGUgY29udGFpbmluZyBibG9jayBpcyB0
aGUgZ3JpZCBhcmVhLCBzbyBvZmZzZXRzIHNob3VsZCBiZSByZXNvbHZlZCBhZ2FpbnN0IHRoYXQ6
CisgICAgLy8gaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy1ncmlkLyNncmlkLWl0ZW0tc2l6
aW5nCisgICAgaWYgKCFzdHlsZSgpLmxlZnQoKS5pc0F1dG8oKSB8fCAhc3R5bGUoKS5yaWdodCgp
LmlzQXV0bygpKSB7CisgICAgICAgIExheW91dFVuaXQgYXZhaWxhYmxlV2lkdGggPSBoYXNPdmVy
cmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRXaWR0aCgpCisgICAgICAgICAgICA/IG92ZXJyaWRl
Q29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRoKCkudmFsdWVPcihMYXlvdXRVbml0KCkpIDogY29u
dGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZVdpZHRoKCk7CisgICAgICAgIGlmICghc3R5bGUoKS5s
ZWZ0KCkuaXNBdXRvKCkpIHsKKyAgICAgICAgICAgIGlmICghc3R5bGUoKS5yaWdodCgpLmlzQXV0
bygpICYmICFjb250YWluaW5nQmxvY2soKS0+c3R5bGUoKS5pc0xlZnRUb1JpZ2h0RGlyZWN0aW9u
KCkpCisgICAgICAgICAgICAgICAgb2Zmc2V0LnNldFdpZHRoKC12YWx1ZUZvckxlbmd0aChzdHls
ZSgpLnJpZ2h0KCksICFzdHlsZSgpLnJpZ2h0KCkuaXNGaXhlZCgpID8gYXZhaWxhYmxlV2lkdGgg
OiAwX2x1KSk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgb2Zmc2V0LmV4cGFu
ZCh2YWx1ZUZvckxlbmd0aChzdHlsZSgpLmxlZnQoKSwgIXN0eWxlKCkubGVmdCgpLmlzRml4ZWQo
KSA/IGF2YWlsYWJsZVdpZHRoIDogMF9sdSksIDBfbHUpOworICAgICAgICB9IGVsc2UgaWYgKCFz
dHlsZSgpLnJpZ2h0KCkuaXNBdXRvKCkpCisgICAgICAgICAgICBvZmZzZXQuZXhwYW5kKC12YWx1
ZUZvckxlbmd0aChzdHlsZSgpLnJpZ2h0KCksICFzdHlsZSgpLnJpZ2h0KCkuaXNGaXhlZCgpID8g
YXZhaWxhYmxlV2lkdGggOiAwX2x1KSwgMF9sdSk7CiAgICAgfQogCiAgICAgLy8gSWYgdGhlIGNv
bnRhaW5pbmcgYmxvY2sgb2YgYSByZWxhdGl2ZWx5IHBvc2l0aW9uZWQgZWxlbWVudCBkb2VzIG5v
dApAQCAtNDE2LDE3ICs0MjEsMjkgQEAgTGF5b3V0U2l6ZSBSZW5kZXJCb3hNb2RlbE9iamVjdDo6
cmVsYXRpdmVQb3NpdGlvbk9mZnNldCgpIGNvbnN0CiAgICAgLy8gd2hlcmUgPGh0bWw+IGFuZCA8
Ym9keT4gYXNzdW1lIHRoZSBzaXplIG9mIHRoZSB2aWV3cG9ydC4gSW4gdGhpcyBjYXNlLAogICAg
IC8vIGNhbGN1bGF0ZSB0aGUgcGVyY2VudCBvZmZzZXQgYmFzZWQgb24gdGhpcyBoZWlnaHQuCiAg
ICAgLy8gU2VlIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjYzOTY+
LgorICAgIC8vIEFub3RoZXIgZXhjZXB0aW9uIGlzIGEgZ3JpZCBpdGVtLCBhcyB0aGUgY29udGFp
bmluZyBibG9jayBpcyB0aGUgZ3JpZCBhcmVhOgorICAgIC8vIGh0dHBzOi8vZHJhZnRzLmNzc3dn
Lm9yZy9jc3MtZ3JpZC8jZ3JpZC1pdGVtLXNpemluZwogICAgIGlmICghc3R5bGUoKS50b3AoKS5p
c0F1dG8oKQogICAgICAgICAmJiAoIXN0eWxlKCkudG9wKCkuaXNQZXJjZW50T3JDYWxjdWxhdGVk
KCkKICAgICAgICAgICAgIHx8ICFjb250YWluaW5nQmxvY2soKS0+aGFzQXV0b0hlaWdodE9yQ29u
dGFpbmluZ0Jsb2NrV2l0aEF1dG9IZWlnaHQoKQotICAgICAgICAgICAgfHwgY29udGFpbmluZ0Js
b2NrKCktPnN0cmV0Y2hlc1RvVmlld3BvcnQoKSkpCi0gICAgICAgIG9mZnNldC5leHBhbmQoMF9s
dSwgdmFsdWVGb3JMZW5ndGgoc3R5bGUoKS50b3AoKSwgIXN0eWxlKCkudG9wKCkuaXNGaXhlZCgp
ID8gY29udGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZUhlaWdodCgpIDogMF9sdSkpOwotCi0gICAg
ZWxzZSBpZiAoIXN0eWxlKCkuYm90dG9tKCkuaXNBdXRvKCkKKyAgICAgICAgICAgIHx8IGNvbnRh
aW5pbmdCbG9jaygpLT5zdHJldGNoZXNUb1ZpZXdwb3J0KCkKKyAgICAgICAgICAgIHx8IGhhc092
ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpKSkgeworICAgICAgICAvLyBGSVhN
RTogVGhlIGNvbXB1dGF0aW9uIG9mIHRoZSBhdmFpbGFibGUgaGVpZ2h0IGlzIHJlcGVhdGVkIGxh
dGVyIGZvciAiYm90dG9tIi4KKyAgICAgICAgLy8gV2UgY291bGQgcmVmYWN0b3IgdGhpcyBhbmQg
bW92ZSBpdCB0byBzb21lIGNvbW1vbiBjb2RlIGZvciBib3RoIGlmcywgaG93ZXZlciBtb3Zpbmcg
aXQgb3V0c2lkZSBvZiB0aGUgaWZzCisgICAgICAgIC8vIGlzIG5vdCBwb3NzaWJsZSBhcyBpdCdk
IGNhdXNlIHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb25zLgorICAgICAgICBvZmZzZXQuZXhwYW5kKDBf
bHUsIHZhbHVlRm9yTGVuZ3RoKHN0eWxlKCkudG9wKCksICFzdHlsZSgpLnRvcCgpLmlzRml4ZWQo
KQorICAgICAgICAgICAgPyAoaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0
KCkgPyBvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRIZWlnaHQoKS52YWx1ZU9yKDBfbHUp
IDogY29udGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZUhlaWdodCgpKQorICAgICAgICAgICAgOiBM
YXlvdXRVbml0KCkpKTsKKyAgICB9IGVsc2UgaWYgKCFzdHlsZSgpLmJvdHRvbSgpLmlzQXV0bygp
CiAgICAgICAgICYmICghc3R5bGUoKS5ib3R0b20oKS5pc1BlcmNlbnRPckNhbGN1bGF0ZWQoKQog
ICAgICAgICAgICAgfHwgIWNvbnRhaW5pbmdCbG9jaygpLT5oYXNBdXRvSGVpZ2h0T3JDb250YWlu
aW5nQmxvY2tXaXRoQXV0b0hlaWdodCgpCi0gICAgICAgICAgICB8fCBjb250YWluaW5nQmxvY2so
KS0+c3RyZXRjaGVzVG9WaWV3cG9ydCgpKSkKLSAgICAgICAgb2Zmc2V0LmV4cGFuZCgwX2x1LCAt
dmFsdWVGb3JMZW5ndGgoc3R5bGUoKS5ib3R0b20oKSwgIXN0eWxlKCkuYm90dG9tKCkuaXNGaXhl
ZCgpID8gY29udGFpbmluZ0Jsb2NrKCktPmF2YWlsYWJsZUhlaWdodCgpIDogMF9sdSkpOworICAg
ICAgICAgICAgfHwgY29udGFpbmluZ0Jsb2NrKCktPnN0cmV0Y2hlc1RvVmlld3BvcnQoKQorICAg
ICAgICAgICAgfHwgaGFzT3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50SGVpZ2h0KCkpKSB7
CisgICAgICAgIC8vIEZJWE1FOiBDaGVjayBjb21tZW50IGFib3ZlIGZvciAidG9wIiwgaXQgYXBw
bGllcyBoZXJlIHRvby4KKyAgICAgICAgb2Zmc2V0LmV4cGFuZCgwX2x1LCAtdmFsdWVGb3JMZW5n
dGgoc3R5bGUoKS5ib3R0b20oKSwgIXN0eWxlKCkuYm90dG9tKCkuaXNGaXhlZCgpCisgICAgICAg
ICAgICA/IChoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRIZWlnaHQoKSA/IG92ZXJy
aWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudEhlaWdodCgpLnZhbHVlT3IoMF9sdSkgOiBjb250YWlu
aW5nQmxvY2soKS0+YXZhaWxhYmxlSGVpZ2h0KCkpCisgICAgICAgICAgICA6IExheW91dFVuaXQo
KSkpOworICAgIH0KIAogICAgIHJldHVybiBvZmZzZXQ7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5oCmluZGV4IDk0YjY5YTFjNWFmNDJiZTRm
MDZkMTNhODAzMzhhOTFlMjc3NTdjYjIuLjg2ZjRiODAwM2IxZTg1YjA4MzExMjc3ZGQ0MzgxZWU5
ZDc3MTFhN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hN
b2RlbE9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2Rl
bE9iamVjdC5oCkBAIC0yNDMsNyArMjQzLDEyIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIExheW91
dFJlY3QgcGFpbnRSZWN0VG9DbGlwT3V0RnJvbUJvcmRlcihjb25zdCBMYXlvdXRSZWN0JikgeyBy
ZXR1cm4gTGF5b3V0UmVjdCgpOyB9OwogCiAgICAgYm9vbCBoYXNSdW5uaW5nQWNjZWxlcmF0ZWRB
bmltYXRpb25zKCkgY29uc3Q7Ci0gICAgCisKKyAgICB2aXJ0dWFsIE9wdGlvbmFsPExheW91dFVu
aXQ+IG92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudFdpZHRoKCkgY29uc3QgeyBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsgcmV0dXJuIC0xX2x1OyB9CisgICAgdmlydHVhbCBPcHRpb25hbDxMYXlv
dXRVbml0PiBvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRIZWlnaHQoKSBjb25zdCB7IEFT
U0VSVF9OT1RfUkVBQ0hFRCgpOyByZXR1cm4gLTFfbHU7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFz
T3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50V2lkdGgoKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQorICAgIHZpcnR1YWwgYm9vbCBoYXNPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRI
ZWlnaHQoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgUmVuZGVy
Qm94TW9kZWxPYmplY3QoRWxlbWVudCYsIFJlbmRlclN0eWxlJiYsIEJhc2VUeXBlRmxhZ3MpOwog
ICAgIFJlbmRlckJveE1vZGVsT2JqZWN0KERvY3VtZW50JiwgUmVuZGVyU3R5bGUmJiwgQmFzZVR5
cGVGbGFncyk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwppbmRleCA5OTVmZWNiZmEyNzkx
ZDAyZjRjOWE3ZTRmMjEyNDY2YWJiNmEwMjQxLi4xZTZmOTAyMjRkN2ZkODYyYmE4YjgxNzU1YmJk
ZmYyNzc5NjE3M2VmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
MyBAQAorMjAxOC0xMC0xMSAgTWFudWVsIFJlZ28gQ2FzYXNub3ZhcyAgPHJlZ29AaWdhbGlhLmNv
bT4KKworICAgICAgICBbY3NzLWdyaWRdIEZpeCBwZXJjZW50YWdlcyBpbiByZWxhdGl2ZSBvZmZz
ZXRzIGZvciBncmlkIGl0ZW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xOTA0OTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9n
cmlkLWl0ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgICBV
cGRhdGUgZXhwZWN0ZWQgZmlsZSBhcyB3ZSdyZSBub3cgcGFzc2luZyB0aGlzIHRlc3QuCisKIDIw
MTgtMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
bW92ZSBSVENSdHBUcmFuc2NlaXZlci5zZXREaXJlY3Rpb24KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRl
bXMvZ3JpZC1pdGVtcy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtZ3JpZC9ncmlkLWl0
ZW1zL2dyaWQtaXRlbXMtcmVsYXRpdmUtb2Zmc2V0cy0wMDItZXhwZWN0ZWQudHh0CmluZGV4IGQ0
ODI1YjU1YjI5ZTIzNmU3YWYzYWI5ZjVlOGZlNjI2YTI5ODY2ZTEuLjM2OGUwYjc2Yjg1ZTg0ZTY3
ZTU2ZWE3M2NmNTBjODdhYmM0ZmRjODkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1ncmlkL2dyaWQtaXRlbXMvZ3JpZC1pdGVt
cy1yZWxhdGl2ZS1vZmZzZXRzLTAwMi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWdyaWQvZ3JpZC1pdGVtcy9ncmlk
LWl0ZW1zLXJlbGF0aXZlLW9mZnNldHMtMDAyLWV4cGVjdGVkLnR4dApAQCAtMSw0NiArMSwxMCBA
QAogCi1GQUlMIC5ncmlkIDEgYXNzZXJ0X2VxdWFsczogCi08ZGl2IGNsYXNzPSJncmlkIHZlcnRp
Y2FsUkwgZGlyZWN0aW9uUlRMIj4KLSAgPGRpdiBjbGFzcz0iZmlyc3RSb3dGaXJzdENvbHVtbiIg
c3R5bGU9ImxlZnQ6IDEwJTsgdG9wOiA1JTsiIGRhdGEtb2Zmc2V0LXg9IjIxOSIgZGF0YS1vZmZl
c3QteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0i
MjAwIj48L2Rpdj4KLSAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vjb25kQ29sdW1uIiBzdHlsZT0i
bGVmdDogLTIwJTsgdG9wOiAtMTAlOyIgZGF0YS1vZmZzZXQteD0iMTM4IiBkYXRhLW9mZmVzdC15
PSI3NSIgZGF0YS1leHBlY3RlZC13aWR0aD0iNjAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIxNTAi
PjwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0aGlyZFJvd1RoaXJkQ29sdW1uIiBzdHlsZT0icmlnaHQ6
IDcwJTsgYm90dG9tOiAzMCU7IiBkYXRhLW9mZnNldC14PSI5OSIgZGF0YS1vZmZlc3QteT0iMTIw
IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+PC9k
aXY+Ci08L2Rpdj4KLW9mZnNldExlZnQgZXhwZWN0ZWQgMjE5IGJ1dCBnb3QgMjQwCi1GQUlMIC5n
cmlkIDIgYXNzZXJ0X2VxdWFsczogCi08ZGl2IGNsYXNzPSJncmlkIHZlcnRpY2FsUkwiPgotICA8
ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBzdHlsZT0ibGVmdDogMTAlOyB0b3A6IDUl
OyIgZGF0YS1vZmZzZXQteD0iMjE5IiBkYXRhLW9mZmVzdC15PSIxMCIgZGF0YS1leHBlY3RlZC13
aWR0aD0iOTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIyMDAiPjwvZGl2PgotICA8ZGl2IGNsYXNz
PSJzZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJsZWZ0OiAtMjAlOyB0b3A6IC0xMCU7IiBk
YXRhLW9mZnNldC14PSIxMzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBkYXRhLWV4cGVjdGVkLXdpZHRo
PSI2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRo
aXJkUm93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogNzAlOyBib3R0b206IDMwJTsiIGRhdGEt
b2Zmc2V0LXg9Ijk5IiBkYXRhLW9mZmVzdC15PSIxMjAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjMw
IiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMTAwIj48L2Rpdj4KLTwvZGl2Pgotb2Zmc2V0TGVmdCBl
eHBlY3RlZCAyMTkgYnV0IGdvdCAyNDAKLUZBSUwgLmdyaWQgMyBhc3NlcnRfZXF1YWxzOiAKLTxk
aXYgY2xhc3M9ImdyaWQgdmVydGljYWxMUiBkaXJlY3Rpb25SVEwiPgotICA8ZGl2IGNsYXNzPSJm
aXJzdFJvd0ZpcnN0Q29sdW1uIiBzdHlsZT0ibGVmdDogMTAlOyB0b3A6IDUlOyIgZGF0YS1vZmZz
ZXQteD0iOSIgZGF0YS1vZmZlc3QteT0iMTAiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRh
LWV4cGVjdGVkLWhlaWdodD0iMjAwIj48L2Rpdj4KLSAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vj
b25kQ29sdW1uIiBzdHlsZT0ibGVmdDogLTIwJTsgdG9wOiAtMTAlOyIgZGF0YS1vZmZzZXQteD0i
NzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBkYXRhLWV4cGVjdGVkLXdpZHRoPSI2MCIgZGF0YS1leHBl
Y3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRoaXJkUm93VGhpcmRDb2x1
bW4iIHN0eWxlPSJyaWdodDogNzAlOyBib3R0b206IDMwJTsiIGRhdGEtb2Zmc2V0LXg9IjEyOSIg
ZGF0YS1vZmZlc3QteT0iMTIwIiBkYXRhLWV4cGVjdGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3Rl
ZC1oZWlnaHQ9IjEwMCI+PC9kaXY+Ci08L2Rpdj4KLW9mZnNldExlZnQgZXhwZWN0ZWQgOSBidXQg
Z290IDMwCi1GQUlMIC5ncmlkIDQgYXNzZXJ0X2VxdWFsczogCi08ZGl2IGNsYXNzPSJncmlkIHZl
cnRpY2FsTFIiPgotICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0ZpcnN0Q29sdW1uIiBzdHlsZT0ibGVm
dDogMTAlOyB0b3A6IDUlOyIgZGF0YS1vZmZzZXQteD0iOSIgZGF0YS1vZmZlc3QteT0iMTAiIGRh
dGEtZXhwZWN0ZWQtd2lkdGg9IjkwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iMjAwIj48L2Rpdj4K
LSAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vjb25kQ29sdW1uIiBzdHlsZT0ibGVmdDogLTIwJTsg
dG9wOiAtMTAlOyIgZGF0YS1vZmZzZXQteD0iNzgiIGRhdGEtb2ZmZXN0LXk9Ijc1IiBkYXRhLWV4
cGVjdGVkLXdpZHRoPSI2MCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjE1MCI+PC9kaXY+Ci0gIDxk
aXYgY2xhc3M9InRoaXJkUm93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogNzAlOyBib3R0b206
IDMwJTsiIGRhdGEtb2Zmc2V0LXg9IjEyOSIgZGF0YS1vZmZlc3QteT0iMTIwIiBkYXRhLWV4cGVj
dGVkLXdpZHRoPSIzMCIgZGF0YS1leHBlY3RlZC1oZWlnaHQ9IjEwMCI+PC9kaXY+Ci08L2Rpdj4K
LW9mZnNldExlZnQgZXhwZWN0ZWQgOSBidXQgZ290IDMwCi1GQUlMIC5ncmlkIDUgYXNzZXJ0X2Vx
dWFsczogCi08ZGl2IGNsYXNzPSJncmlkIGRpcmVjdGlvblJUTCI+Ci0gIDxkaXYgY2xhc3M9ImZp
cnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiA1JTsgdG9wOiAxMCU7IiBkYXRhLW9mZnNl
dC14PSI0MTAiIGRhdGEtb2ZmZXN0LXk9IjkiIGRhdGEtZXhwZWN0ZWQtd2lkdGg9IjIwMCIgZGF0
YS1leHBlY3RlZC1oZWlnaHQ9IjkwIj48L2Rpdj4KLSAgPGRpdiBjbGFzcz0ic2Vjb25kUm93U2Vj
b25kQ29sdW1uIiBzdHlsZT0ibGVmdDogLTEwJTsgdG9wOiAtMjAlOyIgZGF0YS1vZmZzZXQteD0i
MjM1IiBkYXRhLW9mZmVzdC15PSI3OCIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTUwIiBkYXRhLWV4
cGVjdGVkLWhlaWdodD0iNjAiPjwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0aGlyZFJvd1RoaXJkQ29s
dW1uIiBzdHlsZT0icmlnaHQ6IDMwJTsgYm90dG9tOiA3MCU7IiBkYXRhLW9mZnNldC14PSIxMjAi
IGRhdGEtb2ZmZXN0LXk9IjEyOSIgZGF0YS1leHBlY3RlZC13aWR0aD0iMTAwIiBkYXRhLWV4cGVj
dGVkLWhlaWdodD0iMzAiPjwvZGl2PgotPC9kaXY+Ci1vZmZzZXRMZWZ0IGV4cGVjdGVkIDQxMCBi
dXQgZ290IDQzMAotRkFJTCAuZ3JpZCA2IGFzc2VydF9lcXVhbHM6IAotPGRpdiBjbGFzcz0iZ3Jp
ZCI+Ci0gIDxkaXYgY2xhc3M9ImZpcnN0Um93Rmlyc3RDb2x1bW4iIHN0eWxlPSJsZWZ0OiA1JTsg
dG9wOiAxMCU7IiBkYXRhLW9mZnNldC14PSIxMCIgZGF0YS1vZmZlc3QteT0iOSIgZGF0YS1leHBl
Y3RlZC13aWR0aD0iMjAwIiBkYXRhLWV4cGVjdGVkLWhlaWdodD0iOTAiPjwvZGl2PgotICA8ZGl2
IGNsYXNzPSJzZWNvbmRSb3dTZWNvbmRDb2x1bW4iIHN0eWxlPSJsZWZ0OiAtMTAlOyB0b3A6IC0y
MCU7IiBkYXRhLW9mZnNldC14PSIxODUiIGRhdGEtb2ZmZXN0LXk9Ijc4IiBkYXRhLWV4cGVjdGVk
LXdpZHRoPSIxNTAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSI2MCI+PC9kaXY+Ci0gIDxkaXYgY2xh
c3M9InRoaXJkUm93VGhpcmRDb2x1bW4iIHN0eWxlPSJyaWdodDogMzAlOyBib3R0b206IDcwJTsi
IGRhdGEtb2Zmc2V0LXg9IjMyMCIgZGF0YS1vZmZlc3QteT0iMTI5IiBkYXRhLWV4cGVjdGVkLXdp
ZHRoPSIxMDAiIGRhdGEtZXhwZWN0ZWQtaGVpZ2h0PSIzMCI+PC9kaXY+Ci08L2Rpdj4KLW9mZnNl
dExlZnQgZXhwZWN0ZWQgMTAgYnV0IGdvdCAzMAorUEFTUyAuZ3JpZCAxIAorUEFTUyAuZ3JpZCAy
IAorUEFTUyAuZ3JpZCAzIAorUEFTUyAuZ3JpZCA0IAorUEFTUyAuZ3JpZCA1IAorUEFTUyAuZ3Jp
ZCA2IAogRGlyZWN0aW9uIExUUgogCiBEaXJlY3Rpb24gUlRMCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>