<?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>214721</bug_id>
          
          <creation_ts>2020-07-23 20:51:45 -0700</creation_ts>
          <short_desc>[JSC] DFG::AbstractValue::filterByValue should re-filter configured m_value via m_type</short_desc>
          <delta_ts>2020-07-24 14:29:46 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1674530</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-23 20:51:45 -0700</bug_when>
    <thetext>[JSC] DFG::AbstractValue::filterByValue should re-filter configured m_value via m_type</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674532</commentid>
    <comment_count>1</comment_count>
      <attachid>405124</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-23 20:58:27 -0700</bug_when>
    <thetext>Created attachment 405124
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674533</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-23 20:58:29 -0700</bug_when>
    <thetext>&lt;rdar://problem/65882837&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674535</commentid>
    <comment_count>3</comment_count>
      <attachid>405126</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-23 21:02:21 -0700</bug_when>
    <thetext>Created attachment 405126
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674544</commentid>
    <comment_count>4</comment_count>
      <attachid>405127</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-23 21:55:38 -0700</bug_when>
    <thetext>Created attachment 405127
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674545</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-23 21:55:44 -0700</bug_when>
    <thetext>Fixed the typo.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674546</commentid>
    <comment_count>6</comment_count>
      <attachid>405128</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-23 21:57:28 -0700</bug_when>
    <thetext>Created attachment 405128
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674551</commentid>
    <comment_count>7</comment_count>
      <attachid>405126</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-07-23 22:32:51 -0700</bug_when>
    <thetext>Comment on attachment 405126
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:12
&gt; +            2. We have CheckIsConstant with StringPrototype (which is StringObjectOther | SpecStringObject in the current SpeculatedType).

Please fix typo: StringObjectOther =&gt; SpecObjectOther.

&gt; Source/JavaScriptCore/bytecode/SpeculatedType.cpp:547
&gt; +    // We do not want to accept String.prototype in StringObjectUse, so that we do not include it as SpecStringObject.

I suggest /so that we/so we/ because I think you mean to say &quot;because of A, we do B&quot; (A leads to B), not &quot;we want A because we do B&quot; (B leads to A).

&gt; Source/JavaScriptCore/dfg/DFGAbstractValue.cpp:327
&gt; +        // It is possible that SpeculatedType from value is broader than original m_type. The filter operation keeps m_type as is,
&gt; +        // and as a result, SpeculatedType from m_value becomes broader than m_type. This breaks invariant.

I suggest the this change: &quot;The filter operation keeps m_type as is, and as a result, SpeculatedType from m_value becomes broader than m_type. This breaks invariant&quot; =&gt; &quot;The filter operation can only keep m_type as is or make it narrower. As a result, the SpeculatedType from m_value can become broader than m_type. This breaks an invariant.&quot;

Can you also apply this comment below.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674552</commentid>
    <comment_count>8</comment_count>
      <attachid>405128</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-07-23 22:34:07 -0700</bug_when>
    <thetext>Comment on attachment 405128
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674554</commentid>
    <comment_count>9</comment_count>
      <attachid>405126</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-23 23:04:24 -0700</bug_when>
    <thetext>Comment on attachment 405126
Patch

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

Thanks!!

&gt;&gt; Source/JavaScriptCore/ChangeLog:12
&gt;&gt; +            2. We have CheckIsConstant with StringPrototype (which is StringObjectOther | SpecStringObject in the current SpeculatedType).
&gt; 
&gt; Please fix typo: StringObjectOther =&gt; SpecObjectOther.

Fixed.

&gt;&gt; Source/JavaScriptCore/bytecode/SpeculatedType.cpp:547
&gt;&gt; +    // We do not want to accept String.prototype in StringObjectUse, so that we do not include it as SpecStringObject.
&gt; 
&gt; I suggest /so that we/so we/ because I think you mean to say &quot;because of A, we do B&quot; (A leads to B), not &quot;we want A because we do B&quot; (B leads to A).

Fixed.

&gt;&gt; Source/JavaScriptCore/dfg/DFGAbstractValue.cpp:327
&gt;&gt; +        // and as a result, SpeculatedType from m_value becomes broader than m_type. This breaks invariant.
&gt; 
&gt; I suggest the this change: &quot;The filter operation keeps m_type as is, and as a result, SpeculatedType from m_value becomes broader than m_type. This breaks invariant&quot; =&gt; &quot;The filter operation can only keep m_type as is or make it narrower. As a result, the SpeculatedType from m_value can become broader than m_type. This breaks an invariant.&quot;
&gt; 
&gt; Can you also apply this comment below.

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674558</commentid>
    <comment_count>10</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-24 00:14:16 -0700</bug_when>
    <thetext>Looks like JSTests/stress/get-array-length-node-should-be-blessed-in-fixup.js failure is real. Looking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674560</commentid>
    <comment_count>11</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-24 00:31:06 -0700</bug_when>
    <thetext>iterator protocol is enabled for ArrayPrototype too. I don&apos;t think this is required.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674646</commentid>
    <comment_count>12</comment_count>
      <attachid>405128</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-24 08:29:50 -0700</bug_when>
    <thetext>Comment on attachment 405128
Patch

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

&gt; Source/JavaScriptCore/bytecode/SpeculatedType.cpp:507
&gt;  
&gt;      if (classInfo-&gt;isSubClassOf(JSFunction::info())) {
&gt;          if (classInfo == JSBoundFunction::info())

I&apos;ll remove these changes in speculationFromClassInfoInheritance to make it conservative. This is required by AbstractValue::filterByClassInfo

&gt; Source/JavaScriptCore/bytecode/SpeculatedType.cpp:550
&gt; +    default:

On the other hand, this is OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674649</commentid>
    <comment_count>13</comment_count>
      <attachid>405143</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-24 08:34:14 -0700</bug_when>
    <thetext>Created attachment 405143
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1674821</commentid>
    <comment_count>14</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-24 14:29:44 -0700</bug_when>
    <thetext>Committed r264857: &lt;https://trac.webkit.org/changeset/264857&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 405143.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405124</attachid>
            <date>2020-07-23 20:58:27 -0700</date>
            <delta_ts>2020-07-23 21:02:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214721-20200723205826.patch</filename>
            <type>text/plain</type>
            <size>9142</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0ODA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWVjYmRkMjVlZTAwZmY2MmJiN2FjYTliYzBlZmI3YzM0OTZhYzMyLi4yOTVlYmMwYThhMTAwNzM0
MjQ1OWNlNDdiYzFjN2ZhOWUyNzM2OThiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMCBAQAorMjAyMC0wNy0yMyAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIERGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyQnlWYWx1ZSBzaG91
bGQgcmUtZmlsdGVyIGNvbmZpZ3VyZWQgbV92YWx1ZSB2aWEgbV90eXBlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ3MjEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzY1ODgyODM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIExldCdzIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY2FzZS4KKworICAgICAg
ICAgICAgMS4gSW5wdXQgQWJzdHJhY3RWYWx1ZSBpcyBzYXlpbmcgU3BlY09iamVjdE90aGVyLgor
ICAgICAgICAgICAgMi4gV2UgaGF2ZSBDaGVja0lzQ29uc3RhbnQgd2l0aCBTdHJpbmdQcm90b3R5
cGUgKHdoaWNoIGlzIFN0cmluZ09iamVjdE90aGVyIHwgU3BlY1N0cmluZ09iamVjdCBpbiB0aGUg
Y3VycmVudCBTcGVjdWxhdGVkVHlwZSkuCisgICAgICAgICAgICAzLiBXZSBjYWxsIGZpbHRlckJ5
VmFsdWUsIHdoaWNoIGZpbHRlcnMgbV90eXBlIGJ5IFN0cmluZ09iamVjdE90aGVyIHwgU3BlY1N0
cmluZ09iamVjdC4gQnV0IHRoZSBmaWx0ZXJlZCBtX3R5cGUgaXMgU3BlY09iamVjdE90aGVyIHNp
bmNlICgyKSdzIFNwZWN1bGF0ZWRUeXBlIGlzIGJyb2FkZXIuCisgICAgICAgICAgICA0LiBXZSBz
dG9yZSB0aGUgZ2l2ZW4gY29uc3RhbnQgKFN0cmluZ1Byb3RvdHlwZSkgdG8gbV92YWx1ZS4KKyAg
ICAgICAgICAgIDUuIFRoaXMgQWJzdHJhY3RWYWx1ZSdzIG1fdHlwZSBpcyBTcGVjT2JqZWN0T3Ro
ZXIgd2hpbGUgaXRzIG1fdmFsdWUncyBTcGVjdWxhdGVkVHlwZSBpcyBTdHJpbmdPYmplY3RPdGhl
ciB8IFNwZWNTdHJpbmdPYmplY3QuIENvbnRyYWRpY3Rpb24hCisKKyAgICAgICAgV2hlbiBzZXR0
aW5nIG1fdmFsdWUgYnkgZmlsdGVyQnlWYWx1ZSwgd2Ugc2hvdWxkIGZpbHRlciBtX3ZhbHVlIHdp
dGggbV90eXBlIHRvIGVuc3VyZSB0aGF0IG1fdmFsdWUgaXMgdGhlIGV4cGVjdGVkIG9uZS4KKyAg
ICAgICAgVGhpcyBwYXRjaCBhbHNvIGF2b2lkIHVzaW5nIFN0cmluZ09iamVjdE90aGVyIHwgU3Bl
Y1N0cmluZ09iamVjdCBmb3IgU3RyaW5nUHJvdG90eXBlIHNpbmNlIHdlIGNhbiByZXR1cm4gbmFy
cm93ZXIgdHlwZSBmb3IgdGhhdC4KKworICAgICAgICAqIGJ5dGVjb2RlL1NwZWN1bGF0ZWRUeXBl
LmNwcDoKKyAgICAgICAgKEpTQzo6c3BlY3VsYXRpb25Gcm9tQ2xhc3NJbmZvSW5oZXJpdGFuY2Up
OgorICAgICAgICAoSlNDOjpzcGVjdWxhdGlvbkZyb21TdHJ1Y3R1cmUpOgorICAgICAgICAqIGRm
Zy9ERkdBYnN0cmFjdFZhbHVlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpBYnN0cmFjdFZhbHVl
OjpmaWx0ZXJCeVZhbHVlKToKKyAgICAgICAgKEpTQzo6REZHOjpBYnN0cmFjdFZhbHVlOjpmaWx0
ZXIpOgorICAgICAgICAqIGRmZy9ERkdQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZS5jcHA6CisK
IDIwMjAtMDctMjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbSlNDXSBGVEwgT1NSIGVudHJ5IHNob3VsZCBzdG9yZSBib3hlZCB8dGhpc3wKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvU3BlY3VsYXRlZFR5cGUuY3BwCmluZGV4IDhj
ZmI1ZmNiMmUxZmZhMzMxZGE1MTc3YTVhMjBkMGE4OTk3N2JkMDMuLjYyOWM2Y2NkYzEwZGNkNTU0
NmU5OWIzY2ZmNjAzZTdkNzVlNTk1ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1NwZWN1bGF0ZWRUeXBlLmNwcApAQCAtNDQsNiArNDQsNyBAQAogI2luY2x1ZGUg
IlJlZ0V4cE9iamVjdC5oIgogI2luY2x1ZGUgIlNjb3BlZEFyZ3VtZW50cy5oIgogI2luY2x1ZGUg
IlN0cmluZ09iamVjdC5oIgorI2luY2x1ZGUgIlN0cmluZ1Byb3RvdHlwZS5oIgogI2luY2x1ZGUg
PHd0Zi9Db21tYVByaW50ZXIuaD4KICNpbmNsdWRlIDx3dGYvU3RyaW5nUHJpbnRTdHJlYW0uaD4K
IApAQCAtNDkwLDExICs0OTEsMTkgQEAgU3BlY3VsYXRlZFR5cGUgc3BlY3VsYXRpb25Gcm9tQ2xh
c3NJbmZvSW5oZXJpdGFuY2UoY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8pCiAgICAgaWYgKGNs
YXNzSW5mbyA9PSBKU0RhdGFWaWV3OjppbmZvKCkpCiAgICAgICAgIHJldHVybiBTcGVjRGF0YVZp
ZXdPYmplY3Q7CiAKKyAgICAvLyBXZSBkbyBub3Qgd2FudCB0byBhY2NlcHQgU3RyaW5nLnByb3Rv
dHlwZSBpbiBTdHJpbmdPYmplY3RVc2UsIHNvIHRoYXQgd2UgZG8gbm90IGluY2x1ZGUgaXQgYXMg
U3BlY1N0cmluZ09iamVjdC4KKyAgICBzdGF0aWNfYXNzZXJ0KHN0ZDo6aXNfZmluYWxfdjxTdHJp
bmdQcm90b3R5cGU+KTsKKyAgICBpZiAoY2xhc3NJbmZvID09IFN0cmluZ1Byb3RvdHlwZTo6aW5m
bygpKQorICAgICAgICByZXR1cm4gU3BlY09iamVjdE90aGVyOworCiAgICAgaWYgKGNsYXNzSW5m
by0+aXNTdWJDbGFzc09mKFN0cmluZ09iamVjdDo6aW5mbygpKSkKLSAgICAgICAgcmV0dXJuIFNw
ZWNTdHJpbmdPYmplY3QgfCBTcGVjT2JqZWN0T3RoZXI7CisgICAgICAgIHJldHVybiBTcGVjU3Ry
aW5nT2JqZWN0OworCisgICAgaWYgKGNsYXNzSW5mbyA9PSBKU0FycmF5OjppbmZvKCkpCisgICAg
ICAgIHJldHVybiBTcGVjQXJyYXk7CiAKICAgICBpZiAoY2xhc3NJbmZvLT5pc1N1YkNsYXNzT2Yo
SlNBcnJheTo6aW5mbygpKSkKLSAgICAgICAgcmV0dXJuIFNwZWNBcnJheSB8IFNwZWNEZXJpdmVk
QXJyYXk7CisgICAgICAgIHJldHVybiBTcGVjRGVyaXZlZEFycmF5OwogCiAgICAgaWYgKGNsYXNz
SW5mby0+aXNTdWJDbGFzc09mKEpTRnVuY3Rpb246OmluZm8oKSkpIHsKICAgICAgICAgaWYgKGNs
YXNzSW5mbyA9PSBKU0JvdW5kRnVuY3Rpb246OmluZm8oKSkKQEAgLTUxNywyMSArNTI2LDMyIEBA
IFNwZWN1bGF0ZWRUeXBlIHNwZWN1bGF0aW9uRnJvbUNsYXNzSW5mb0luaGVyaXRhbmNlKGNvbnN0
IENsYXNzSW5mbyogY2xhc3NJbmZvKQogU3BlY3VsYXRlZFR5cGUgc3BlY3VsYXRpb25Gcm9tU3Ry
dWN0dXJlKFN0cnVjdHVyZSogc3RydWN0dXJlKQogewogICAgIFNwZWN1bGF0ZWRUeXBlIGZpbHRl
cmVkUmVzdWx0ID0gU3BlY05vbmU7Ci0gICAgaWYgKHN0cnVjdHVyZS0+dHlwZUluZm8oKS50eXBl
KCkgPT0gU3RyaW5nVHlwZSkKKyAgICBzd2l0Y2ggKHN0cnVjdHVyZS0+dHlwZUluZm8oKS50eXBl
KCkpIHsKKyAgICBjYXNlIFN0cmluZ1R5cGU6CiAgICAgICAgIGZpbHRlcmVkUmVzdWx0ID0gU3Bl
Y1N0cmluZzsKLSAgICBlbHNlIGlmIChzdHJ1Y3R1cmUtPnR5cGVJbmZvKCkudHlwZSgpID09IFN5
bWJvbFR5cGUpCisgICAgICAgIGJyZWFrOworICAgIGNhc2UgU3ltYm9sVHlwZToKICAgICAgICAg
ZmlsdGVyZWRSZXN1bHQgPSBTcGVjU3ltYm9sOwotICAgIGVsc2UgaWYgKHN0cnVjdHVyZS0+dHlw
ZUluZm8oKS50eXBlKCkgPT0gSGVhcEJpZ0ludFR5cGUpCisgICAgICAgIGJyZWFrOworICAgIGNh
c2UgSGVhcEJpZ0ludFR5cGU6CiAgICAgICAgIGZpbHRlcmVkUmVzdWx0ID0gU3BlY0hlYXBCaWdJ
bnQ7Ci0gICAgZWxzZSBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBEZXJpdmVk
QXJyYXlUeXBlKQorICAgICAgICBicmVhazsKKyAgICBjYXNlIERlcml2ZWRBcnJheVR5cGU6CiAg
ICAgICAgIGZpbHRlcmVkUmVzdWx0ID0gU3BlY0Rlcml2ZWRBcnJheTsKLSAgICBlbHNlIGlmIChz
dHJ1Y3R1cmUtPnR5cGVJbmZvKCkudHlwZSgpID09IEFycmF5VHlwZSkKKyAgICAgICAgYnJlYWs7
CisgICAgY2FzZSBBcnJheVR5cGU6CiAgICAgICAgIGZpbHRlcmVkUmVzdWx0ID0gU3BlY0FycmF5
OwotICAgIGVsc2UgaWYgKHN0cnVjdHVyZS0+dHlwZUluZm8oKS50eXBlKCkgPT0gU3RyaW5nT2Jq
ZWN0VHlwZSkKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTdHJpbmdPYmplY3RUeXBlOgogICAg
ICAgICBmaWx0ZXJlZFJlc3VsdCA9IFNwZWNTdHJpbmdPYmplY3Q7Ci0gICAgZWxzZQorICAgICAg
ICBicmVhazsKKyAgICAvLyBXZSBkbyBub3Qgd2FudCB0byBhY2NlcHQgU3RyaW5nLnByb3RvdHlw
ZSBpbiBTdHJpbmdPYmplY3RVc2UsIHNvIHRoYXQgd2UgZG8gbm90IGluY2x1ZGUgaXQgYXMgU3Bl
Y1N0cmluZ09iamVjdC4KKyAgICBjYXNlIERlcml2ZWRTdHJpbmdPYmplY3RUeXBlOgorICAgICAg
ICBmaWx0ZXJlZFJlc3VsdCA9IFNwZWNPYmplY3RPdGhlcjsKKyAgICAgICAgYnJlYWs7CisgICAg
ZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIHNwZWN1bGF0aW9uRnJvbUNsYXNzSW5mb0luaGVyaXRh
bmNlKHN0cnVjdHVyZS0+Y2xhc3NJbmZvKCkpOwotCisgICAgfQogICAgIEFTU0VSVChmaWx0ZXJl
ZFJlc3VsdCk7CiAgICAgQVNTRVJUKGlzU3VidHlwZVNwZWN1bGF0aW9uKGZpbHRlcmVkUmVzdWx0
LCBzcGVjdWxhdGlvbkZyb21DbGFzc0luZm9Jbmhlcml0YW5jZShzdHJ1Y3R1cmUtPmNsYXNzSW5m
bygpKSkpOwogICAgIHJldHVybiBmaWx0ZXJlZFJlc3VsdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RWYWx1ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0Fic3RyYWN0VmFsdWUuY3BwCmluZGV4IDA5NDg5NDc4YjVmMDU2Mjk2OGY3
NDNjMTE1N2I5NWJmMTcyODBjZmMuLjA1NGFhOGQwMTRjNmFjZmExZjhkZTAzMWM2NzdhN2I3YTY3
NmU4NTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RW
YWx1ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdFZhbHVl
LmNwcApAQCAtMzIxLDggKzMyMSwxNCBAQCBGaWx0cmF0aW9uUmVzdWx0IEFic3RyYWN0VmFsdWU6
OmZhc3RGb3J3YXJkVG9BbmRGaWx0ZXJTbG93KEFic3RyYWN0VmFsdWVDbG9iYmVyRQogRmlsdHJh
dGlvblJlc3VsdCBBYnN0cmFjdFZhbHVlOjpmaWx0ZXJCeVZhbHVlKGNvbnN0IEZyb3plblZhbHVl
JiB2YWx1ZSkKIHsKICAgICBGaWx0cmF0aW9uUmVzdWx0IHJlc3VsdCA9IGZpbHRlcihzcGVjdWxh
dGlvbkZyb21WYWx1ZSh2YWx1ZS52YWx1ZSgpKSk7Ci0gICAgaWYgKG1fdHlwZSkKKyAgICBpZiAo
bV90eXBlKSB7CiAgICAgICAgIG1fdmFsdWUgPSB2YWx1ZS52YWx1ZSgpOworICAgICAgICAvLyBJ
dCBpcyBwb3NzaWJsZSB0aGF0IFNwZWN1bGF0ZWRUeXBlIGZyb20gdmFsdWUgaXMgYnJvYWRlciB0
aGFuIG9yaWdpbmFsIG1fdHlwZS4gVGhlIGZpbHRlciBvcGVyYXRpb24ga2VlcHMgbV90eXBlIGFz
IGlzLAorICAgICAgICAvLyBhbmQgYXMgYSByZXN1bHQsIFNwZWN1bGF0ZWRUeXBlIGZyb20gbV92
YWx1ZSBiZWNvbWVzIGJyb2FkZXIgdGhhbiBtX3R5cGUuIFRoaXMgYnJlYWtzIGludmFyaWFudC4K
KyAgICAgICAgLy8gV2hlbiBzZXR0aW5nIG1fdmFsdWUgYWZ0ZXIgZmlsdGVyaW5nLCB3ZSBzaG91
bGQgZmlsdGVyIG1fdmFsdWUgd2l0aCBtX3R5cGUuCisgICAgICAgIGZpbHRlclZhbHVlQnlUeXBl
KCk7CisgICAgfQorICAgIGNoZWNrQ29uc2lzdGVuY3koKTsKICAgICByZXR1cm4gcmVzdWx0Owog
fQogCkBAIC0zNTMsNiArMzU5LDEwIEBAIEZpbHRyYXRpb25SZXN1bHQgQWJzdHJhY3RWYWx1ZTo6
ZmlsdGVyKGNvbnN0IEFic3RyYWN0VmFsdWUmIG90aGVyKQogICAgIGlmICghbV92YWx1ZSkgewog
ICAgICAgICAvLyBXZSBwcmV2aW91c2x5IGRpZG4ndCBwcm92ZSBhIHZhbHVlIGJ1dCBub3cgd2Ug
aGF2ZSBkb25lIHNvLgogICAgICAgICBtX3ZhbHVlID0gb3RoZXIubV92YWx1ZTsgCisgICAgICAg
IC8vIEl0IGlzIHBvc3NpYmxlIHRoYXQgU3BlY3VsYXRlZFR5cGUgZnJvbSBvdGhlci5tX3ZhbHVl
IGlzIGJyb2FkZXIgdGhhbiBvcmlnaW5hbCBtX3R5cGUuIFRoZSBmaWx0ZXIgb3BlcmF0aW9uIGtl
ZXBzIG1fdHlwZSBhcyBpcywKKyAgICAgICAgLy8gYW5kIGFzIGEgcmVzdWx0LCBTcGVjdWxhdGVk
VHlwZSBmcm9tIG1fdmFsdWUgYmVjb21lcyBicm9hZGVyIHRoYW4gbV90eXBlLiBUaGlzIGJyZWFr
cyBpbnZhcmlhbnQuCisgICAgICAgIC8vIFdoZW4gc2V0dGluZyBtX3ZhbHVlIGFmdGVyIGZpbHRl
cmluZywgd2Ugc2hvdWxkIGZpbHRlciBtX3ZhbHVlIHdpdGggbV90eXBlLgorICAgICAgICBmaWx0
ZXJWYWx1ZUJ5VHlwZSgpOwogICAgICAgICByZXR1cm4gRmlsdHJhdGlvbk9LOwogICAgIH0KICAg
ICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlZGljdGlvblBy
b3BhZ2F0aW9uUGhhc2UuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdQcmVkaWN0
aW9uUHJvcGFnYXRpb25QaGFzZS5jcHAKaW5kZXggZDEwNzZkNGU5MTRlNzA1ODg3NWI0NTI2ZTRj
NDNkOGRjMzJjY2YyYS4uNzEwM2Y5ZGI5MGJkYjdmMzUwNWZkYzEyMzQ5ZDJiZmQ3NmQ0ZjJmMSAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdQcmVkaWN0aW9uUHJvcGFn
YXRpb25QaGFzZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdQcmVkaWN0
aW9uUHJvcGFnYXRpb25QaGFzZS5jcHAKQEAgLTU4OCw5ICs1ODgsMTIgQEAgY2xhc3MgUHJlZGlj
dGlvblByb3BhZ2F0aW9uUGhhc2UgOiBwdWJsaWMgUGhhc2UgewogICAgICAgICAgICAgaWYgKGlz
U3RyaWN0TW9kZSkKICAgICAgICAgICAgICAgICBjaGFuZ2VkIHw9IG1lcmdlUHJlZGljdGlvbihu
b2RlLT5nZXRIZWFwUHJlZGljdGlvbigpKTsKICAgICAgICAgICAgIGVsc2UgaWYgKHByZWRpY3Rp
b24pIHsKKyAgICAgICAgICAgICAgICBTcGVjdWxhdGVkVHlwZSBvcmlnaW5hbFByZWRpY3Rpb24g
PSBwcmVkaWN0aW9uOwogICAgICAgICAgICAgICAgIGlmIChwcmVkaWN0aW9uICYgflNwZWNPYmpl
Y3QpIHsKICAgICAgICAgICAgICAgICAgICAgLy8gV3JhcHBlciBvYmplY3RzIGFyZSBjcmVhdGVk
IG9ubHkgaW4gc2xvcHB5IG1vZGUuCiAgICAgICAgICAgICAgICAgICAgIHByZWRpY3Rpb24gJj0g
U3BlY09iamVjdDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKG9yaWdpbmFsUHJlZGljdGlvbiAm
IFNwZWNTdHJpbmcpCisgICAgICAgICAgICAgICAgICAgICAgICBwcmVkaWN0aW9uID0gbWVyZ2VT
cGVjdWxhdGlvbnMocHJlZGljdGlvbiwgU3BlY1N0cmluZ09iamVjdCk7CiAgICAgICAgICAgICAg
ICAgICAgIHByZWRpY3Rpb24gPSBtZXJnZVNwZWN1bGF0aW9ucyhwcmVkaWN0aW9uLCBTcGVjT2Jq
ZWN0T3RoZXIpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBjaGFuZ2VkIHw9
IG1lcmdlUHJlZGljdGlvbihwcmVkaWN0aW9uKTsKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdl
TG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNmFiYTljZWJjNDIyOGJhZTAzNmY0YjRmNDI3
ZTBlNzc5MTMzMzk3OC4uYTk0NWZlZTcyZjk5NWY4ZmQyYzZjMDEzZDZiZGJmMDE4ZGZjOGRmNyAx
MDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNSBAQAorMjAyMC0wNy0yMyAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUu
Y29tPgorCisgICAgICAgIFtKU0NdIERGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyQnlWYWx1ZSBz
aG91bGQgcmUtZmlsdGVyIGNvbmZpZ3VyZWQgbV92YWx1ZSB2aWEgbV90eXBlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ3MjEKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzY1ODgyODM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogc3RyZXNzL3NwZWN1bGF0aW9uLWZyb20tc3RydWN0dXJlLWFuZC1j
bGFzc2luZm8tc2hvdWxkLWFncmVlLmpzOiBBZGRlZC4KKyAgICAgICAgKGJhcik6CisgICAgICAg
IChmb28pOgorCiAyMDIwLTA3LTIzICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+
CiAKICAgICAgICAgW0pTQ10gQmlnSW50IGNhbiBiZSBgZmFsc2VgIGluIGJvb2xlYW4gY29udGV4
dCBpbiBERkcgQUkKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL3NwZWN1bGF0aW9uLWZyb20t
c3RydWN0dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpzIGIvSlNUZXN0cy9zdHJlc3Mv
c3BlY3VsYXRpb24tZnJvbS1zdHJ1Y3R1cmUtYW5kLWNsYXNzaW5mby1zaG91bGQtYWdyZWUuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNDgyMDljNzFmNGU1MzgxMTk3YWY0YzFkMmU1YzQ3NTY1ZjE3ZDBkNwotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL3NwZWN1bGF0aW9uLWZyb20tc3RydWN0dXJl
LWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpzCkBAIC0wLDAgKzEsMTQgQEAKKy8vQCBydW5E
ZWZhdWx0KCItLWZvcmNlRWFnZXJDb21waWxhdGlvbj0xIiwgIi0tbWluaW11bU9wdGltaXphdGlv
bkRlbGF5PTEwIiwgIi0tbWF4aW11bU9wdGltaXphdGlvbkRlbGF5PTEwIiwgIi0tdXNlQ29uY3Vy
cmVudEpJVD0wIikKKworZnVuY3Rpb24gYmFyKGEwKSB7CisgICAgJycgaW5zdGFuY2VvZiBhMDsK
K30KKworZnVuY3Rpb24gZm9vKCkgeworICAgIG9wdGltaXplTmV4dEludm9jYXRpb24oZm9vKTsK
KyAgICBiYXIoU3RyaW5nKTsKKyAgICBiYXIoU3ltYm9sKTsKK30KKworZm9yIChsZXQgaT0wOyBp
PDExOyBpKyspCisgICAgZm9vKCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405126</attachid>
            <date>2020-07-23 21:02:21 -0700</date>
            <delta_ts>2020-07-23 21:55:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214721-20200723210220.patch</filename>
            <type>text/plain</type>
            <size>9958</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0ODA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
OWVjYmRkMjVlZTAwZmY2MmJiN2FjYTliYzBlZmI3YzM0OTZhYzMyLi44Njc5MmQwMTZiYzgxNDAx
YjBhOWQxYWEyM2E1YmYyNmU2NTRhNGE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMiBAQAorMjAyMC0wNy0yMyAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIERGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyQnlWYWx1ZSBzaG91
bGQgcmUtZmlsdGVyIGNvbmZpZ3VyZWQgbV92YWx1ZSB2aWEgbV90eXBlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ3MjEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzY1ODgyODM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIExldCdzIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY2FzZS4KKworICAgICAg
ICAgICAgMS4gSW5wdXQgQWJzdHJhY3RWYWx1ZSBpcyBzYXlpbmcgU3BlY09iamVjdE90aGVyLgor
ICAgICAgICAgICAgMi4gV2UgaGF2ZSBDaGVja0lzQ29uc3RhbnQgd2l0aCBTdHJpbmdQcm90b3R5
cGUgKHdoaWNoIGlzIFN0cmluZ09iamVjdE90aGVyIHwgU3BlY1N0cmluZ09iamVjdCBpbiB0aGUg
Y3VycmVudCBTcGVjdWxhdGVkVHlwZSkuCisgICAgICAgICAgICAzLiBXZSBjYWxsIGZpbHRlckJ5
VmFsdWUsIHdoaWNoIGZpbHRlcnMgbV90eXBlIGJ5IFN0cmluZ09iamVjdE90aGVyIHwgU3BlY1N0
cmluZ09iamVjdC4gQnV0IHRoZSBmaWx0ZXJlZCBtX3R5cGUgaXMgU3BlY09iamVjdE90aGVyIHNp
bmNlICgyKSdzIFNwZWN1bGF0ZWRUeXBlIGlzIGJyb2FkZXIuCisgICAgICAgICAgICA0LiBXZSBz
dG9yZSB0aGUgZ2l2ZW4gY29uc3RhbnQgKFN0cmluZ1Byb3RvdHlwZSkgdG8gbV92YWx1ZS4KKyAg
ICAgICAgICAgIDUuIFRoaXMgQWJzdHJhY3RWYWx1ZSdzIG1fdHlwZSBpcyBTcGVjT2JqZWN0T3Ro
ZXIgd2hpbGUgaXRzIG1fdmFsdWUncyBTcGVjdWxhdGVkVHlwZSBpcyBTdHJpbmdPYmplY3RPdGhl
ciB8IFNwZWNTdHJpbmdPYmplY3QuIENvbnRyYWRpY3Rpb24hCisKKyAgICAgICAgV2hlbiBzZXR0
aW5nIG1fdmFsdWUgYnkgZmlsdGVyQnlWYWx1ZSwgd2Ugc2hvdWxkIGZpbHRlciBtX3ZhbHVlIHdp
dGggbV90eXBlIHRvIGVuc3VyZSB0aGF0IG1fdmFsdWUgaXMgdGhlIGV4cGVjdGVkIG9uZS4KKyAg
ICAgICAgVGhpcyBwYXRjaCBhbHNvIGF2b2lkIHVzaW5nIFN0cmluZ09iamVjdE90aGVyIHwgU3Bl
Y1N0cmluZ09iamVjdCBmb3IgU3RyaW5nUHJvdG90eXBlIHNpbmNlIHdlIGNhbiByZXR1cm4gbmFy
cm93ZXIgdHlwZSBmb3IgdGhhdC4KKworICAgICAgICAqIGJ5dGVjb2RlL1NwZWN1bGF0ZWRUeXBl
LmNwcDoKKyAgICAgICAgKEpTQzo6c3BlY3VsYXRpb25Gcm9tQ2xhc3NJbmZvSW5oZXJpdGFuY2Up
OgorICAgICAgICAoSlNDOjpzcGVjdWxhdGlvbkZyb21TdHJ1Y3R1cmUpOgorICAgICAgICAqIGRm
Zy9ERkdBYnN0cmFjdFZhbHVlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpBYnN0cmFjdFZhbHVl
OjpmaWx0ZXJCeVZhbHVlKToKKyAgICAgICAgKEpTQzo6REZHOjpBYnN0cmFjdFZhbHVlOjpmaWx0
ZXIpOgorICAgICAgICAqIGRmZy9ERkdQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZS5jcHA6Cisg
ICAgICAgICogcnVudGltZS9TdHJpbmdPYmplY3QuY3BwOgorICAgICAgICAoSlNDOjpTdHJpbmdP
YmplY3Q6OmZpbmlzaENyZWF0aW9uKToKKwogMjAyMC0wNy0yMyAgWXVzdWtlIFN1enVraSAgPHlz
dXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIEZUTCBPU1IgZW50cnkgc2hvdWxkIHN0
b3JlIGJveGVkIHx0aGlzfApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVj
b2RlL1NwZWN1bGF0ZWRUeXBlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9T
cGVjdWxhdGVkVHlwZS5jcHAKaW5kZXggOGNmYjVmY2IyZTFmZmEzMzFkYTUxNzdhNWEyMGQwYTg5
OTc3YmQwMy4uMGJjODMxNzE4NWUwZjExYmFmNThiZDVkNDIzMzAwMWU1YTJjMjg1NCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1NwZWN1bGF0ZWRUeXBlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvU3BlY3VsYXRlZFR5cGUuY3BwCkBA
IC00NCw2ICs0NCw3IEBACiAjaW5jbHVkZSAiUmVnRXhwT2JqZWN0LmgiCiAjaW5jbHVkZSAiU2Nv
cGVkQXJndW1lbnRzLmgiCiAjaW5jbHVkZSAiU3RyaW5nT2JqZWN0LmgiCisjaW5jbHVkZSAiU3Ry
aW5nUHJvdG90eXBlLmgiCiAjaW5jbHVkZSA8d3RmL0NvbW1hUHJpbnRlci5oPgogI2luY2x1ZGUg
PHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgogCkBAIC00OTAsMTEgKzQ5MSwxOCBAQCBTcGVjdWxh
dGVkVHlwZSBzcGVjdWxhdGlvbkZyb21DbGFzc0luZm9Jbmhlcml0YW5jZShjb25zdCBDbGFzc0lu
Zm8qIGNsYXNzSW5mbykKICAgICBpZiAoY2xhc3NJbmZvID09IEpTRGF0YVZpZXc6OmluZm8oKSkK
ICAgICAgICAgcmV0dXJuIFNwZWNEYXRhVmlld09iamVjdDsKIAorICAgIGlmIChjbGFzc0luZm8g
PT0gU3RyaW5nT2JqZWN0OjppbmZvKCkpCisgICAgICAgIHJldHVybiBTcGVjU3RyaW5nT2JqZWN0
OworCisgICAgLy8gV2UgZG8gbm90IHdhbnQgdG8gYWNjZXB0IFN0cmluZy5wcm90b3R5cGUgaW4g
U3RyaW5nT2JqZWN0VXNlLCBzbyB0aGF0IHdlIGRvIG5vdCBpbmNsdWRlIGl0IGFzIFNwZWNTdHJp
bmdPYmplY3QuCiAgICAgaWYgKGNsYXNzSW5mby0+aXNTdWJDbGFzc09mKFN0cmluZ09iamVjdDo6
aW5mbygpKSkKLSAgICAgICAgcmV0dXJuIFNwZWNTdHJpbmdPYmplY3QgfCBTcGVjT2JqZWN0T3Ro
ZXI7CisgICAgICAgIHJldHVybiBTcGVjT2JqZWN0T3RoZXI7CisKKyAgICBpZiAoY2xhc3NJbmZv
ID09IEpTQXJyYXk6OmluZm8oKSkKKyAgICAgICAgcmV0dXJuIFNwZWNBcnJheTsKIAogICAgIGlm
IChjbGFzc0luZm8tPmlzU3ViQ2xhc3NPZihKU0FycmF5OjppbmZvKCkpKQotICAgICAgICByZXR1
cm4gU3BlY0FycmF5IHwgU3BlY0Rlcml2ZWRBcnJheTsKKyAgICAgICAgcmV0dXJuIFNwZWNEZXJp
dmVkQXJyYXk7CiAKICAgICBpZiAoY2xhc3NJbmZvLT5pc1N1YkNsYXNzT2YoSlNGdW5jdGlvbjo6
aW5mbygpKSkgewogICAgICAgICBpZiAoY2xhc3NJbmZvID09IEpTQm91bmRGdW5jdGlvbjo6aW5m
bygpKQpAQCAtNTE3LDIxICs1MjUsMzIgQEAgU3BlY3VsYXRlZFR5cGUgc3BlY3VsYXRpb25Gcm9t
Q2xhc3NJbmZvSW5oZXJpdGFuY2UoY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8pCiBTcGVjdWxh
dGVkVHlwZSBzcGVjdWxhdGlvbkZyb21TdHJ1Y3R1cmUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7
CiAgICAgU3BlY3VsYXRlZFR5cGUgZmlsdGVyZWRSZXN1bHQgPSBTcGVjTm9uZTsKLSAgICBpZiAo
c3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBTdHJpbmdUeXBlKQorICAgIHN3aXRjaCAo
c3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSkgeworICAgIGNhc2UgU3RyaW5nVHlwZToKICAg
ICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjU3RyaW5nOwotICAgIGVsc2UgaWYgKHN0cnVjdHVy
ZS0+dHlwZUluZm8oKS50eXBlKCkgPT0gU3ltYm9sVHlwZSkKKyAgICAgICAgYnJlYWs7CisgICAg
Y2FzZSBTeW1ib2xUeXBlOgogICAgICAgICBmaWx0ZXJlZFJlc3VsdCA9IFNwZWNTeW1ib2w7Ci0g
ICAgZWxzZSBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBIZWFwQmlnSW50VHlw
ZSkKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBIZWFwQmlnSW50VHlwZToKICAgICAgICAgZmls
dGVyZWRSZXN1bHQgPSBTcGVjSGVhcEJpZ0ludDsKLSAgICBlbHNlIGlmIChzdHJ1Y3R1cmUtPnR5
cGVJbmZvKCkudHlwZSgpID09IERlcml2ZWRBcnJheVR5cGUpCisgICAgICAgIGJyZWFrOworICAg
IGNhc2UgRGVyaXZlZEFycmF5VHlwZToKICAgICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjRGVy
aXZlZEFycmF5OwotICAgIGVsc2UgaWYgKHN0cnVjdHVyZS0+dHlwZUluZm8oKS50eXBlKCkgPT0g
QXJyYXlUeXBlKQorICAgICAgICBicmVhazsKKyAgICBjYXNlIEFycmF5VHlwZToKICAgICAgICAg
ZmlsdGVyZWRSZXN1bHQgPSBTcGVjQXJyYXk7Ci0gICAgZWxzZSBpZiAoc3RydWN0dXJlLT50eXBl
SW5mbygpLnR5cGUoKSA9PSBTdHJpbmdPYmplY3RUeXBlKQorICAgICAgICBicmVhazsKKyAgICBj
YXNlIFN0cmluZ09iamVjdFR5cGU6CiAgICAgICAgIGZpbHRlcmVkUmVzdWx0ID0gU3BlY1N0cmlu
Z09iamVjdDsKLSAgICBlbHNlCisgICAgICAgIGJyZWFrOworICAgIC8vIFdlIGRvIG5vdCB3YW50
IHRvIGFjY2VwdCBTdHJpbmcucHJvdG90eXBlIGluIFN0cmluZ09iamVjdFVzZSwgc28gdGhhdCB3
ZSBkbyBub3QgaW5jbHVkZSBpdCBhcyBTcGVjU3RyaW5nT2JqZWN0LgorICAgIGNhc2UgRGVyaXZl
ZFN0cmluZ09iamVjdFR5cGU6CisgICAgICAgIGZpbHRlcmVkUmVzdWx0ID0gU3BlY09iamVjdE90
aGVyOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gc3BlY3Vs
YXRpb25Gcm9tQ2xhc3NJbmZvSW5oZXJpdGFuY2Uoc3RydWN0dXJlLT5jbGFzc0luZm8oKSk7Ci0K
KyAgICB9CiAgICAgQVNTRVJUKGZpbHRlcmVkUmVzdWx0KTsKICAgICBBU1NFUlQoaXNTdWJ0eXBl
U3BlY3VsYXRpb24oZmlsdGVyZWRSZXN1bHQsIHNwZWN1bGF0aW9uRnJvbUNsYXNzSW5mb0luaGVy
aXRhbmNlKHN0cnVjdHVyZS0+Y2xhc3NJbmZvKCkpKSk7CiAgICAgcmV0dXJuIGZpbHRlcmVkUmVz
dWx0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdFZh
bHVlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RWYWx1ZS5jcHAK
aW5kZXggMDk0ODk0NzhiNWYwNTYyOTY4Zjc0M2MxMTU3Yjk1YmYxNzI4MGNmYy4uMDU0YWE4ZDAx
NGM2YWNmYTFmOGRlMDMxYzY3N2E3YjdhNjc2ZTg1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdFZhbHVlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0Fic3RyYWN0VmFsdWUuY3BwCkBAIC0zMjEsOCArMzIxLDE0IEBAIEZpbHRy
YXRpb25SZXN1bHQgQWJzdHJhY3RWYWx1ZTo6ZmFzdEZvcndhcmRUb0FuZEZpbHRlclNsb3coQWJz
dHJhY3RWYWx1ZUNsb2JiZXJFCiBGaWx0cmF0aW9uUmVzdWx0IEFic3RyYWN0VmFsdWU6OmZpbHRl
ckJ5VmFsdWUoY29uc3QgRnJvemVuVmFsdWUmIHZhbHVlKQogewogICAgIEZpbHRyYXRpb25SZXN1
bHQgcmVzdWx0ID0gZmlsdGVyKHNwZWN1bGF0aW9uRnJvbVZhbHVlKHZhbHVlLnZhbHVlKCkpKTsK
LSAgICBpZiAobV90eXBlKQorICAgIGlmIChtX3R5cGUpIHsKICAgICAgICAgbV92YWx1ZSA9IHZh
bHVlLnZhbHVlKCk7CisgICAgICAgIC8vIEl0IGlzIHBvc3NpYmxlIHRoYXQgU3BlY3VsYXRlZFR5
cGUgZnJvbSB2YWx1ZSBpcyBicm9hZGVyIHRoYW4gb3JpZ2luYWwgbV90eXBlLiBUaGUgZmlsdGVy
IG9wZXJhdGlvbiBrZWVwcyBtX3R5cGUgYXMgaXMsCisgICAgICAgIC8vIGFuZCBhcyBhIHJlc3Vs
dCwgU3BlY3VsYXRlZFR5cGUgZnJvbSBtX3ZhbHVlIGJlY29tZXMgYnJvYWRlciB0aGFuIG1fdHlw
ZS4gVGhpcyBicmVha3MgaW52YXJpYW50LgorICAgICAgICAvLyBXaGVuIHNldHRpbmcgbV92YWx1
ZSBhZnRlciBmaWx0ZXJpbmcsIHdlIHNob3VsZCBmaWx0ZXIgbV92YWx1ZSB3aXRoIG1fdHlwZS4K
KyAgICAgICAgZmlsdGVyVmFsdWVCeVR5cGUoKTsKKyAgICB9CisgICAgY2hlY2tDb25zaXN0ZW5j
eSgpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKQEAgLTM1Myw2ICszNTksMTAgQEAgRmlsdHJh
dGlvblJlc3VsdCBBYnN0cmFjdFZhbHVlOjpmaWx0ZXIoY29uc3QgQWJzdHJhY3RWYWx1ZSYgb3Ro
ZXIpCiAgICAgaWYgKCFtX3ZhbHVlKSB7CiAgICAgICAgIC8vIFdlIHByZXZpb3VzbHkgZGlkbid0
IHByb3ZlIGEgdmFsdWUgYnV0IG5vdyB3ZSBoYXZlIGRvbmUgc28uCiAgICAgICAgIG1fdmFsdWUg
PSBvdGhlci5tX3ZhbHVlOyAKKyAgICAgICAgLy8gSXQgaXMgcG9zc2libGUgdGhhdCBTcGVjdWxh
dGVkVHlwZSBmcm9tIG90aGVyLm1fdmFsdWUgaXMgYnJvYWRlciB0aGFuIG9yaWdpbmFsIG1fdHlw
ZS4gVGhlIGZpbHRlciBvcGVyYXRpb24ga2VlcHMgbV90eXBlIGFzIGlzLAorICAgICAgICAvLyBh
bmQgYXMgYSByZXN1bHQsIFNwZWN1bGF0ZWRUeXBlIGZyb20gbV92YWx1ZSBiZWNvbWVzIGJyb2Fk
ZXIgdGhhbiBtX3R5cGUuIFRoaXMgYnJlYWtzIGludmFyaWFudC4KKyAgICAgICAgLy8gV2hlbiBz
ZXR0aW5nIG1fdmFsdWUgYWZ0ZXIgZmlsdGVyaW5nLCB3ZSBzaG91bGQgZmlsdGVyIG1fdmFsdWUg
d2l0aCBtX3R5cGUuCisgICAgICAgIGZpbHRlclZhbHVlQnlUeXBlKCk7CiAgICAgICAgIHJldHVy
biBGaWx0cmF0aW9uT0s7CiAgICAgfQogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZS5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcAppbmRleCBk
MTA3NmQ0ZTkxNGU3MDU4ODc1YjQ1MjZlNGM0M2Q4ZGMzMmNjZjJhLi43MTAzZjlkYjkwYmRiN2Yz
NTA1ZmRjMTIzNDlkMmJmZDc2ZDRmMmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcApAQCAtNTg4
LDkgKzU4OCwxMiBAQCBjbGFzcyBQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZSA6IHB1YmxpYyBQ
aGFzZSB7CiAgICAgICAgICAgICBpZiAoaXNTdHJpY3RNb2RlKQogICAgICAgICAgICAgICAgIGNo
YW5nZWQgfD0gbWVyZ2VQcmVkaWN0aW9uKG5vZGUtPmdldEhlYXBQcmVkaWN0aW9uKCkpOwogICAg
ICAgICAgICAgZWxzZSBpZiAocHJlZGljdGlvbikgeworICAgICAgICAgICAgICAgIFNwZWN1bGF0
ZWRUeXBlIG9yaWdpbmFsUHJlZGljdGlvbiA9IHByZWRpY3Rpb247CiAgICAgICAgICAgICAgICAg
aWYgKHByZWRpY3Rpb24gJiB+U3BlY09iamVjdCkgewogICAgICAgICAgICAgICAgICAgICAvLyBX
cmFwcGVyIG9iamVjdHMgYXJlIGNyZWF0ZWQgb25seSBpbiBzbG9wcHkgbW9kZS4KICAgICAgICAg
ICAgICAgICAgICAgcHJlZGljdGlvbiAmPSBTcGVjT2JqZWN0OworICAgICAgICAgICAgICAgICAg
ICBpZiAob3JpZ2luYWxQcmVkaWN0aW9uICYgU3BlY1N0cmluZykKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHByZWRpY3Rpb24gPSBtZXJnZVNwZWN1bGF0aW9ucyhwcmVkaWN0aW9uLCBTcGVjU3Ry
aW5nT2JqZWN0KTsKICAgICAgICAgICAgICAgICAgICAgcHJlZGljdGlvbiA9IG1lcmdlU3BlY3Vs
YXRpb25zKHByZWRpY3Rpb24sIFNwZWNPYmplY3RPdGhlcik7CiAgICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgIGNoYW5nZWQgfD0gbWVyZ2VQcmVkaWN0aW9uKHByZWRpY3Rpb24pOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAKaW5kZXgg
ZGIyMDM1YzRkYzA4OTZiNmJlMWQxZmI5ZGY3YzQ0MDQ3N2E3ZWJkMS4uZTZkNjQxNzdkZDM1NGE2
YTc2ZjI3Y2I1YjlkMGI3N2ViYjZkZmU1MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9TdHJpbmdPYmplY3QuY3BwCkBAIC00MSw2ICs0MSw3IEBAIHZvaWQgU3RyaW5nT2Jq
ZWN0OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTU3RyaW5nKiBzdHJpbmcpCiAgICAgQmFzZTo6
ZmluaXNoQ3JlYXRpb24odm0pOwogICAgIEFTU0VSVChpbmhlcml0cyh2bSwgaW5mbygpKSk7CiAg
ICAgc2V0SW50ZXJuYWxWYWx1ZSh2bSwgc3RyaW5nKTsKKyAgICBBU1NFUlRfV0lUSF9NRVNTQUdF
KHR5cGUoKSA9PSBTdHJpbmdPYmplY3RUeXBlIHx8IHR5cGUoKSA9PSBEZXJpdmVkU3RyaW5nT2Jq
ZWN0VHlwZSwgIkluc3RhbmNlIGluaGVyaXRpbmcgU3RyaW5nT2JqZWN0IHNob3VsZCBoYXZlIERl
cml2ZWRTdHJpbmdPYmplY3RUeXBlIik7CiB9CiAKIGJvb2wgU3RyaW5nT2JqZWN0OjpnZXRPd25Q
cm9wZXJ0eVNsb3QoSlNPYmplY3QqIGNlbGwsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKZGlmZiAtLWdp
dCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNmFiYTljZWJj
NDIyOGJhZTAzNmY0YjRmNDI3ZTBlNzc5MTMzMzk3OC4uYTk0NWZlZTcyZjk5NWY4ZmQyYzZjMDEz
ZDZiZGJmMDE4ZGZjOGRmNyAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wNy0yMyAgWXVzdWtlIFN1enVr
aSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIERGRzo6QWJzdHJhY3RWYWx1
ZTo6ZmlsdGVyQnlWYWx1ZSBzaG91bGQgcmUtZmlsdGVyIGNvbmZpZ3VyZWQgbV92YWx1ZSB2aWEg
bV90eXBlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTQ3MjEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY1ODgyODM3PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3RyZXNzL3NwZWN1bGF0aW9uLWZy
b20tc3RydWN0dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpzOiBBZGRlZC4KKyAgICAg
ICAgKGJhcik6CisgICAgICAgIChmb28pOgorCiAyMDIwLTA3LTIzICBZdXN1a2UgU3V6dWtpICA8
eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10gQmlnSW50IGNhbiBiZSBgZmFsc2Vg
IGluIGJvb2xlYW4gY29udGV4dCBpbiBERkcgQUkKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNz
L3NwZWN1bGF0aW9uLWZyb20tc3RydWN0dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpz
IGIvSlNUZXN0cy9zdHJlc3Mvc3BlY3VsYXRpb24tZnJvbS1zdHJ1Y3R1cmUtYW5kLWNsYXNzaW5m
by1zaG91bGQtYWdyZWUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDgyMDljNzFmNGU1MzgxMTk3YWY0YzFkMmU1
YzQ3NTY1ZjE3ZDBkNwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL3NwZWN1bGF0
aW9uLWZyb20tc3RydWN0dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpzCkBAIC0wLDAg
KzEsMTQgQEAKKy8vQCBydW5EZWZhdWx0KCItLWZvcmNlRWFnZXJDb21waWxhdGlvbj0xIiwgIi0t
bWluaW11bU9wdGltaXphdGlvbkRlbGF5PTEwIiwgIi0tbWF4aW11bU9wdGltaXphdGlvbkRlbGF5
PTEwIiwgIi0tdXNlQ29uY3VycmVudEpJVD0wIikKKworZnVuY3Rpb24gYmFyKGEwKSB7CisgICAg
JycgaW5zdGFuY2VvZiBhMDsKK30KKworZnVuY3Rpb24gZm9vKCkgeworICAgIG9wdGltaXplTmV4
dEludm9jYXRpb24oZm9vKTsKKyAgICBiYXIoU3RyaW5nKTsKKyAgICBiYXIoU3ltYm9sKTsKK30K
KworZm9yIChsZXQgaT0wOyBpPDExOyBpKyspCisgICAgZm9vKCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405127</attachid>
            <date>2020-07-23 21:55:38 -0700</date>
            <delta_ts>2020-07-23 21:57:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214721-20200723215537.patch</filename>
            <type>text/plain</type>
            <size>9997</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0ODEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
NDA0YjNlNTA1YzE0MGE4MTkyNzM5MjlhZDc1MzA3MDMxMzc0NWY0Li4xYmE3M2RlZDA4YTU2MTVj
NTcxMGQyODBhODhlOTM2MjdlOTcwZjU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMiBAQAorMjAyMC0wNy0yMyAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIERGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyQnlWYWx1ZSBzaG91
bGQgcmUtZmlsdGVyIGNvbmZpZ3VyZWQgbV92YWx1ZSB2aWEgbV90eXBlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ3MjEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzY1ODgyODM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIExldCdzIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY2FzZS4KKworICAgICAg
ICAgICAgMS4gSW5wdXQgQWJzdHJhY3RWYWx1ZSBpcyBzYXlpbmcgU3BlY09iamVjdE90aGVyLgor
ICAgICAgICAgICAgMi4gV2UgaGF2ZSBDaGVja0lzQ29uc3RhbnQgd2l0aCBTdHJpbmdQcm90b3R5
cGUgKHdoaWNoIGlzIFNwZWNPYmplY3RPdGhlciB8IFNwZWNTdHJpbmdPYmplY3QgaW4gdGhlIGN1
cnJlbnQgU3BlY3VsYXRlZFR5cGUpLgorICAgICAgICAgICAgMy4gV2UgY2FsbCBmaWx0ZXJCeVZh
bHVlLCB3aGljaCBmaWx0ZXJzIG1fdHlwZSBieSBTcGVjT2JqZWN0T3RoZXIgfCBTcGVjU3RyaW5n
T2JqZWN0LiBCdXQgdGhlIGZpbHRlcmVkIG1fdHlwZSBpcyBTcGVjT2JqZWN0T3RoZXIgc2luY2Ug
KDIpJ3MgU3BlY3VsYXRlZFR5cGUgaXMgYnJvYWRlci4KKyAgICAgICAgICAgIDQuIFdlIHN0b3Jl
IHRoZSBnaXZlbiBjb25zdGFudCAoU3RyaW5nUHJvdG90eXBlKSB0byBtX3ZhbHVlLgorICAgICAg
ICAgICAgNS4gVGhpcyBBYnN0cmFjdFZhbHVlJ3MgbV90eXBlIGlzIFNwZWNPYmplY3RPdGhlciB3
aGlsZSBpdHMgbV92YWx1ZSdzIFNwZWN1bGF0ZWRUeXBlIGlzIFNwZWNPYmplY3RPdGhlciB8IFNw
ZWNTdHJpbmdPYmplY3QuIENvbnRyYWRpY3Rpb24hCisKKyAgICAgICAgV2hlbiBzZXR0aW5nIG1f
dmFsdWUgYnkgZmlsdGVyQnlWYWx1ZSwgd2Ugc2hvdWxkIGZpbHRlciBtX3ZhbHVlIHdpdGggbV90
eXBlIHRvIGVuc3VyZSB0aGF0IG1fdmFsdWUgaXMgdGhlIGV4cGVjdGVkIG9uZS4KKyAgICAgICAg
VGhpcyBwYXRjaCBhbHNvIGF2b2lkIHVzaW5nIFNwZWNPYmplY3RPdGhlciB8IFNwZWNTdHJpbmdP
YmplY3QgZm9yIFN0cmluZ1Byb3RvdHlwZSBzaW5jZSB3ZSBjYW4gcmV0dXJuIG5hcnJvd2VyIHR5
cGUgZm9yIHRoYXQuCisKKyAgICAgICAgKiBieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHA6Cisg
ICAgICAgIChKU0M6OnNwZWN1bGF0aW9uRnJvbUNsYXNzSW5mb0luaGVyaXRhbmNlKToKKyAgICAg
ICAgKEpTQzo6c3BlY3VsYXRpb25Gcm9tU3RydWN0dXJlKToKKyAgICAgICAgKiBkZmcvREZHQWJz
dHJhY3RWYWx1ZS5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVy
QnlWYWx1ZSk6CisgICAgICAgIChKU0M6OkRGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyKToKKyAg
ICAgICAgKiBkZmcvREZHUHJlZGljdGlvblByb3BhZ2F0aW9uUGhhc2UuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6U3RyaW5nT2JqZWN0Ojpm
aW5pc2hDcmVhdGlvbik6CisKIDIwMjAtMDctMjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFw
cGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBBcnJvdyBmdW5jdGlvbiB8dGhpc3wgcmVzb2x1dGlv
biBzaG91bGQgbm90IGJlIHRyYXBwZWQgYnkgd2l0aC1zY29wZQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1NwZWN1bGF0ZWRUeXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHAKaW5kZXggOGNmYjVmY2IyZTFm
ZmEzMzFkYTUxNzdhNWEyMGQwYTg5OTc3YmQwMy4uMGJjODMxNzE4NWUwZjExYmFmNThiZDVkNDIz
MzAwMWU1YTJjMjg1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1NwZWN1bGF0ZWRUeXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
U3BlY3VsYXRlZFR5cGUuY3BwCkBAIC00NCw2ICs0NCw3IEBACiAjaW5jbHVkZSAiUmVnRXhwT2Jq
ZWN0LmgiCiAjaW5jbHVkZSAiU2NvcGVkQXJndW1lbnRzLmgiCiAjaW5jbHVkZSAiU3RyaW5nT2Jq
ZWN0LmgiCisjaW5jbHVkZSAiU3RyaW5nUHJvdG90eXBlLmgiCiAjaW5jbHVkZSA8d3RmL0NvbW1h
UHJpbnRlci5oPgogI2luY2x1ZGUgPHd0Zi9TdHJpbmdQcmludFN0cmVhbS5oPgogCkBAIC00OTAs
MTEgKzQ5MSwxOCBAQCBTcGVjdWxhdGVkVHlwZSBzcGVjdWxhdGlvbkZyb21DbGFzc0luZm9Jbmhl
cml0YW5jZShjb25zdCBDbGFzc0luZm8qIGNsYXNzSW5mbykKICAgICBpZiAoY2xhc3NJbmZvID09
IEpTRGF0YVZpZXc6OmluZm8oKSkKICAgICAgICAgcmV0dXJuIFNwZWNEYXRhVmlld09iamVjdDsK
IAorICAgIGlmIChjbGFzc0luZm8gPT0gU3RyaW5nT2JqZWN0OjppbmZvKCkpCisgICAgICAgIHJl
dHVybiBTcGVjU3RyaW5nT2JqZWN0OworCisgICAgLy8gV2UgZG8gbm90IHdhbnQgdG8gYWNjZXB0
IFN0cmluZy5wcm90b3R5cGUgaW4gU3RyaW5nT2JqZWN0VXNlLCBzbyB0aGF0IHdlIGRvIG5vdCBp
bmNsdWRlIGl0IGFzIFNwZWNTdHJpbmdPYmplY3QuCiAgICAgaWYgKGNsYXNzSW5mby0+aXNTdWJD
bGFzc09mKFN0cmluZ09iamVjdDo6aW5mbygpKSkKLSAgICAgICAgcmV0dXJuIFNwZWNTdHJpbmdP
YmplY3QgfCBTcGVjT2JqZWN0T3RoZXI7CisgICAgICAgIHJldHVybiBTcGVjT2JqZWN0T3RoZXI7
CisKKyAgICBpZiAoY2xhc3NJbmZvID09IEpTQXJyYXk6OmluZm8oKSkKKyAgICAgICAgcmV0dXJu
IFNwZWNBcnJheTsKIAogICAgIGlmIChjbGFzc0luZm8tPmlzU3ViQ2xhc3NPZihKU0FycmF5Ojpp
bmZvKCkpKQotICAgICAgICByZXR1cm4gU3BlY0FycmF5IHwgU3BlY0Rlcml2ZWRBcnJheTsKKyAg
ICAgICAgcmV0dXJuIFNwZWNEZXJpdmVkQXJyYXk7CiAKICAgICBpZiAoY2xhc3NJbmZvLT5pc1N1
YkNsYXNzT2YoSlNGdW5jdGlvbjo6aW5mbygpKSkgewogICAgICAgICBpZiAoY2xhc3NJbmZvID09
IEpTQm91bmRGdW5jdGlvbjo6aW5mbygpKQpAQCAtNTE3LDIxICs1MjUsMzIgQEAgU3BlY3VsYXRl
ZFR5cGUgc3BlY3VsYXRpb25Gcm9tQ2xhc3NJbmZvSW5oZXJpdGFuY2UoY29uc3QgQ2xhc3NJbmZv
KiBjbGFzc0luZm8pCiBTcGVjdWxhdGVkVHlwZSBzcGVjdWxhdGlvbkZyb21TdHJ1Y3R1cmUoU3Ry
dWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CiAgICAgU3BlY3VsYXRlZFR5cGUgZmlsdGVyZWRSZXN1bHQg
PSBTcGVjTm9uZTsKLSAgICBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBTdHJp
bmdUeXBlKQorICAgIHN3aXRjaCAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSkgeworICAg
IGNhc2UgU3RyaW5nVHlwZToKICAgICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjU3RyaW5nOwot
ICAgIGVsc2UgaWYgKHN0cnVjdHVyZS0+dHlwZUluZm8oKS50eXBlKCkgPT0gU3ltYm9sVHlwZSkK
KyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTeW1ib2xUeXBlOgogICAgICAgICBmaWx0ZXJlZFJl
c3VsdCA9IFNwZWNTeW1ib2w7Ci0gICAgZWxzZSBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5
cGUoKSA9PSBIZWFwQmlnSW50VHlwZSkKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBIZWFwQmln
SW50VHlwZToKICAgICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjSGVhcEJpZ0ludDsKLSAgICBl
bHNlIGlmIChzdHJ1Y3R1cmUtPnR5cGVJbmZvKCkudHlwZSgpID09IERlcml2ZWRBcnJheVR5cGUp
CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgRGVyaXZlZEFycmF5VHlwZToKICAgICAgICAgZmls
dGVyZWRSZXN1bHQgPSBTcGVjRGVyaXZlZEFycmF5OwotICAgIGVsc2UgaWYgKHN0cnVjdHVyZS0+
dHlwZUluZm8oKS50eXBlKCkgPT0gQXJyYXlUeXBlKQorICAgICAgICBicmVhazsKKyAgICBjYXNl
IEFycmF5VHlwZToKICAgICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjQXJyYXk7Ci0gICAgZWxz
ZSBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBTdHJpbmdPYmplY3RUeXBlKQor
ICAgICAgICBicmVhazsKKyAgICBjYXNlIFN0cmluZ09iamVjdFR5cGU6CiAgICAgICAgIGZpbHRl
cmVkUmVzdWx0ID0gU3BlY1N0cmluZ09iamVjdDsKLSAgICBlbHNlCisgICAgICAgIGJyZWFrOwor
ICAgIC8vIFdlIGRvIG5vdCB3YW50IHRvIGFjY2VwdCBTdHJpbmcucHJvdG90eXBlIGluIFN0cmlu
Z09iamVjdFVzZSwgc28gdGhhdCB3ZSBkbyBub3QgaW5jbHVkZSBpdCBhcyBTcGVjU3RyaW5nT2Jq
ZWN0LgorICAgIGNhc2UgRGVyaXZlZFN0cmluZ09iamVjdFR5cGU6CisgICAgICAgIGZpbHRlcmVk
UmVzdWx0ID0gU3BlY09iamVjdE90aGVyOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0Ogog
ICAgICAgICByZXR1cm4gc3BlY3VsYXRpb25Gcm9tQ2xhc3NJbmZvSW5oZXJpdGFuY2Uoc3RydWN0
dXJlLT5jbGFzc0luZm8oKSk7Ci0KKyAgICB9CiAgICAgQVNTRVJUKGZpbHRlcmVkUmVzdWx0KTsK
ICAgICBBU1NFUlQoaXNTdWJ0eXBlU3BlY3VsYXRpb24oZmlsdGVyZWRSZXN1bHQsIHNwZWN1bGF0
aW9uRnJvbUNsYXNzSW5mb0luaGVyaXRhbmNlKHN0cnVjdHVyZS0+Y2xhc3NJbmZvKCkpKSk7CiAg
ICAgcmV0dXJuIGZpbHRlcmVkUmVzdWx0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2RmZy9ERkdBYnN0cmFjdFZhbHVlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHQWJzdHJhY3RWYWx1ZS5jcHAKaW5kZXggMDk0ODk0NzhiNWYwNTYyOTY4Zjc0M2MxMTU3Yjk1
YmYxNzI4MGNmYy4uMDU0YWE4ZDAxNGM2YWNmYTFmOGRlMDMxYzY3N2E3YjdhNjc2ZTg1NCAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdFZhbHVlLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0VmFsdWUuY3BwCkBAIC0z
MjEsOCArMzIxLDE0IEBAIEZpbHRyYXRpb25SZXN1bHQgQWJzdHJhY3RWYWx1ZTo6ZmFzdEZvcndh
cmRUb0FuZEZpbHRlclNsb3coQWJzdHJhY3RWYWx1ZUNsb2JiZXJFCiBGaWx0cmF0aW9uUmVzdWx0
IEFic3RyYWN0VmFsdWU6OmZpbHRlckJ5VmFsdWUoY29uc3QgRnJvemVuVmFsdWUmIHZhbHVlKQog
ewogICAgIEZpbHRyYXRpb25SZXN1bHQgcmVzdWx0ID0gZmlsdGVyKHNwZWN1bGF0aW9uRnJvbVZh
bHVlKHZhbHVlLnZhbHVlKCkpKTsKLSAgICBpZiAobV90eXBlKQorICAgIGlmIChtX3R5cGUpIHsK
ICAgICAgICAgbV92YWx1ZSA9IHZhbHVlLnZhbHVlKCk7CisgICAgICAgIC8vIEl0IGlzIHBvc3Np
YmxlIHRoYXQgU3BlY3VsYXRlZFR5cGUgZnJvbSB2YWx1ZSBpcyBicm9hZGVyIHRoYW4gb3JpZ2lu
YWwgbV90eXBlLiBUaGUgZmlsdGVyIG9wZXJhdGlvbiBrZWVwcyBtX3R5cGUgYXMgaXMsCisgICAg
ICAgIC8vIGFuZCBhcyBhIHJlc3VsdCwgU3BlY3VsYXRlZFR5cGUgZnJvbSBtX3ZhbHVlIGJlY29t
ZXMgYnJvYWRlciB0aGFuIG1fdHlwZS4gVGhpcyBicmVha3MgaW52YXJpYW50LgorICAgICAgICAv
LyBXaGVuIHNldHRpbmcgbV92YWx1ZSBhZnRlciBmaWx0ZXJpbmcsIHdlIHNob3VsZCBmaWx0ZXIg
bV92YWx1ZSB3aXRoIG1fdHlwZS4KKyAgICAgICAgZmlsdGVyVmFsdWVCeVR5cGUoKTsKKyAgICB9
CisgICAgY2hlY2tDb25zaXN0ZW5jeSgpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKQEAgLTM1
Myw2ICszNTksMTAgQEAgRmlsdHJhdGlvblJlc3VsdCBBYnN0cmFjdFZhbHVlOjpmaWx0ZXIoY29u
c3QgQWJzdHJhY3RWYWx1ZSYgb3RoZXIpCiAgICAgaWYgKCFtX3ZhbHVlKSB7CiAgICAgICAgIC8v
IFdlIHByZXZpb3VzbHkgZGlkbid0IHByb3ZlIGEgdmFsdWUgYnV0IG5vdyB3ZSBoYXZlIGRvbmUg
c28uCiAgICAgICAgIG1fdmFsdWUgPSBvdGhlci5tX3ZhbHVlOyAKKyAgICAgICAgLy8gSXQgaXMg
cG9zc2libGUgdGhhdCBTcGVjdWxhdGVkVHlwZSBmcm9tIG90aGVyLm1fdmFsdWUgaXMgYnJvYWRl
ciB0aGFuIG9yaWdpbmFsIG1fdHlwZS4gVGhlIGZpbHRlciBvcGVyYXRpb24ga2VlcHMgbV90eXBl
IGFzIGlzLAorICAgICAgICAvLyBhbmQgYXMgYSByZXN1bHQsIFNwZWN1bGF0ZWRUeXBlIGZyb20g
bV92YWx1ZSBiZWNvbWVzIGJyb2FkZXIgdGhhbiBtX3R5cGUuIFRoaXMgYnJlYWtzIGludmFyaWFu
dC4KKyAgICAgICAgLy8gV2hlbiBzZXR0aW5nIG1fdmFsdWUgYWZ0ZXIgZmlsdGVyaW5nLCB3ZSBz
aG91bGQgZmlsdGVyIG1fdmFsdWUgd2l0aCBtX3R5cGUuCisgICAgICAgIGZpbHRlclZhbHVlQnlU
eXBlKCk7CiAgICAgICAgIHJldHVybiBGaWx0cmF0aW9uT0s7CiAgICAgfQogICAgIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdQcmVkaWN0aW9uUHJvcGFnYXRpb25Q
aGFzZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdh
dGlvblBoYXNlLmNwcAppbmRleCBkMTA3NmQ0ZTkxNGU3MDU4ODc1YjQ1MjZlNGM0M2Q4ZGMzMmNj
ZjJhLi43MTAzZjlkYjkwYmRiN2YzNTA1ZmRjMTIzNDlkMmJmZDc2ZDRmMmYxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdh
dGlvblBoYXNlLmNwcApAQCAtNTg4LDkgKzU4OCwxMiBAQCBjbGFzcyBQcmVkaWN0aW9uUHJvcGFn
YXRpb25QaGFzZSA6IHB1YmxpYyBQaGFzZSB7CiAgICAgICAgICAgICBpZiAoaXNTdHJpY3RNb2Rl
KQogICAgICAgICAgICAgICAgIGNoYW5nZWQgfD0gbWVyZ2VQcmVkaWN0aW9uKG5vZGUtPmdldEhl
YXBQcmVkaWN0aW9uKCkpOwogICAgICAgICAgICAgZWxzZSBpZiAocHJlZGljdGlvbikgeworICAg
ICAgICAgICAgICAgIFNwZWN1bGF0ZWRUeXBlIG9yaWdpbmFsUHJlZGljdGlvbiA9IHByZWRpY3Rp
b247CiAgICAgICAgICAgICAgICAgaWYgKHByZWRpY3Rpb24gJiB+U3BlY09iamVjdCkgewogICAg
ICAgICAgICAgICAgICAgICAvLyBXcmFwcGVyIG9iamVjdHMgYXJlIGNyZWF0ZWQgb25seSBpbiBz
bG9wcHkgbW9kZS4KICAgICAgICAgICAgICAgICAgICAgcHJlZGljdGlvbiAmPSBTcGVjT2JqZWN0
OworICAgICAgICAgICAgICAgICAgICBpZiAob3JpZ2luYWxQcmVkaWN0aW9uICYgU3BlY1N0cmlu
ZykKKyAgICAgICAgICAgICAgICAgICAgICAgIHByZWRpY3Rpb24gPSBtZXJnZVNwZWN1bGF0aW9u
cyhwcmVkaWN0aW9uLCBTcGVjU3RyaW5nT2JqZWN0KTsKICAgICAgICAgICAgICAgICAgICAgcHJl
ZGljdGlvbiA9IG1lcmdlU3BlY3VsYXRpb25zKHByZWRpY3Rpb24sIFNwZWNPYmplY3RPdGhlcik7
CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGNoYW5nZWQgfD0gbWVyZ2VQcmVk
aWN0aW9uKHByZWRpY3Rpb24pOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvU3RyaW5nT2JqZWN0LmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0
cmluZ09iamVjdC5jcHAKaW5kZXggZGIyMDM1YzRkYzA4OTZiNmJlMWQxZmI5ZGY3YzQ0MDQ3N2E3
ZWJkMS4uZTZkNjQxNzdkZDM1NGE2YTc2ZjI3Y2I1YjlkMGI3N2ViYjZkZmU1MCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwCkBAIC00MSw2ICs0
MSw3IEBAIHZvaWQgU3RyaW5nT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihWTSYgdm0sIEpTU3RyaW5n
KiBzdHJpbmcpCiAgICAgQmFzZTo6ZmluaXNoQ3JlYXRpb24odm0pOwogICAgIEFTU0VSVChpbmhl
cml0cyh2bSwgaW5mbygpKSk7CiAgICAgc2V0SW50ZXJuYWxWYWx1ZSh2bSwgc3RyaW5nKTsKKyAg
ICBBU1NFUlRfV0lUSF9NRVNTQUdFKHR5cGUoKSA9PSBTdHJpbmdPYmplY3RUeXBlIHx8IHR5cGUo
KSA9PSBEZXJpdmVkU3RyaW5nT2JqZWN0VHlwZSwgIkluc3RhbmNlIGluaGVyaXRpbmcgU3RyaW5n
T2JqZWN0IHNob3VsZCBoYXZlIERlcml2ZWRTdHJpbmdPYmplY3RUeXBlIik7CiB9CiAKIGJvb2wg
U3RyaW5nT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqIGNlbGwsIEpTR2xvYmFs
T2JqZWN0KiBnbG9iYWxPYmplY3QsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5
U2xvdCYgc2xvdCkKZGlmZiAtLWdpdCBhL0pTVGVzdHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFu
Z2VMb2cKaW5kZXggZmEyMDQwOTQ3N2ZmYjU4OTI2NWNjMzBhN2VkNmQyMGY4OGE4YWRlYS4uY2Zh
ZjE4MjFlZjBlY2E2MzdiODFlODdiM2Q4NjZlN2ZiY2E0NjVjNyAxMDA2NDQKLS0tIGEvSlNUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAy
MC0wNy0yMyAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtK
U0NdIERGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyQnlWYWx1ZSBzaG91bGQgcmUtZmlsdGVyIGNv
bmZpZ3VyZWQgbV92YWx1ZSB2aWEgbV90eXBlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ3MjEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY1ODgy
ODM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
c3RyZXNzL3NwZWN1bGF0aW9uLWZyb20tc3RydWN0dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxkLWFn
cmVlLmpzOiBBZGRlZC4KKyAgICAgICAgKGJhcik6CisgICAgICAgIChmb28pOgorCiAyMDIwLTA3
LTIzICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10g
QXJyb3cgZnVuY3Rpb24gfHRoaXN8IHJlc29sdXRpb24gc2hvdWxkIG5vdCBiZSB0cmFwcGVkIGJ5
IHdpdGgtc2NvcGUKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL3NwZWN1bGF0aW9uLWZyb20t
c3RydWN0dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpzIGIvSlNUZXN0cy9zdHJlc3Mv
c3BlY3VsYXRpb24tZnJvbS1zdHJ1Y3R1cmUtYW5kLWNsYXNzaW5mby1zaG91bGQtYWdyZWUuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNDgyMDljNzFmNGU1MzgxMTk3YWY0YzFkMmU1YzQ3NTY1ZjE3ZDBkNwotLS0g
L2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL3NwZWN1bGF0aW9uLWZyb20tc3RydWN0dXJl
LWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpzCkBAIC0wLDAgKzEsMTQgQEAKKy8vQCBydW5E
ZWZhdWx0KCItLWZvcmNlRWFnZXJDb21waWxhdGlvbj0xIiwgIi0tbWluaW11bU9wdGltaXphdGlv
bkRlbGF5PTEwIiwgIi0tbWF4aW11bU9wdGltaXphdGlvbkRlbGF5PTEwIiwgIi0tdXNlQ29uY3Vy
cmVudEpJVD0wIikKKworZnVuY3Rpb24gYmFyKGEwKSB7CisgICAgJycgaW5zdGFuY2VvZiBhMDsK
K30KKworZnVuY3Rpb24gZm9vKCkgeworICAgIG9wdGltaXplTmV4dEludm9jYXRpb24oZm9vKTsK
KyAgICBiYXIoU3RyaW5nKTsKKyAgICBiYXIoU3ltYm9sKTsKK30KKworZm9yIChsZXQgaT0wOyBp
PDExOyBpKyspCisgICAgZm9vKCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405128</attachid>
            <date>2020-07-23 21:57:28 -0700</date>
            <delta_ts>2020-07-23 22:34:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-214721-20200723215728.patch</filename>
            <type>text/plain</type>
            <size>9796</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0ODEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
NDA0YjNlNTA1YzE0MGE4MTkyNzM5MjlhZDc1MzA3MDMxMzc0NWY0Li4xYmE3M2RlZDA4YTU2MTVj
NTcxMGQyODBhODhlOTM2MjdlOTcwZjU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMiBAQAorMjAyMC0wNy0yMyAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIERGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyQnlWYWx1ZSBzaG91
bGQgcmUtZmlsdGVyIGNvbmZpZ3VyZWQgbV92YWx1ZSB2aWEgbV90eXBlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ3MjEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzY1ODgyODM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIExldCdzIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY2FzZS4KKworICAgICAg
ICAgICAgMS4gSW5wdXQgQWJzdHJhY3RWYWx1ZSBpcyBzYXlpbmcgU3BlY09iamVjdE90aGVyLgor
ICAgICAgICAgICAgMi4gV2UgaGF2ZSBDaGVja0lzQ29uc3RhbnQgd2l0aCBTdHJpbmdQcm90b3R5
cGUgKHdoaWNoIGlzIFNwZWNPYmplY3RPdGhlciB8IFNwZWNTdHJpbmdPYmplY3QgaW4gdGhlIGN1
cnJlbnQgU3BlY3VsYXRlZFR5cGUpLgorICAgICAgICAgICAgMy4gV2UgY2FsbCBmaWx0ZXJCeVZh
bHVlLCB3aGljaCBmaWx0ZXJzIG1fdHlwZSBieSBTcGVjT2JqZWN0T3RoZXIgfCBTcGVjU3RyaW5n
T2JqZWN0LiBCdXQgdGhlIGZpbHRlcmVkIG1fdHlwZSBpcyBTcGVjT2JqZWN0T3RoZXIgc2luY2Ug
KDIpJ3MgU3BlY3VsYXRlZFR5cGUgaXMgYnJvYWRlci4KKyAgICAgICAgICAgIDQuIFdlIHN0b3Jl
IHRoZSBnaXZlbiBjb25zdGFudCAoU3RyaW5nUHJvdG90eXBlKSB0byBtX3ZhbHVlLgorICAgICAg
ICAgICAgNS4gVGhpcyBBYnN0cmFjdFZhbHVlJ3MgbV90eXBlIGlzIFNwZWNPYmplY3RPdGhlciB3
aGlsZSBpdHMgbV92YWx1ZSdzIFNwZWN1bGF0ZWRUeXBlIGlzIFNwZWNPYmplY3RPdGhlciB8IFNw
ZWNTdHJpbmdPYmplY3QuIENvbnRyYWRpY3Rpb24hCisKKyAgICAgICAgV2hlbiBzZXR0aW5nIG1f
dmFsdWUgYnkgZmlsdGVyQnlWYWx1ZSwgd2Ugc2hvdWxkIGZpbHRlciBtX3ZhbHVlIHdpdGggbV90
eXBlIHRvIGVuc3VyZSB0aGF0IG1fdmFsdWUgaXMgdGhlIGV4cGVjdGVkIG9uZS4KKyAgICAgICAg
VGhpcyBwYXRjaCBhbHNvIGF2b2lkIHVzaW5nIFNwZWNPYmplY3RPdGhlciB8IFNwZWNTdHJpbmdP
YmplY3QgZm9yIFN0cmluZ1Byb3RvdHlwZSBzaW5jZSB3ZSBjYW4gcmV0dXJuIG5hcnJvd2VyIHR5
cGUgZm9yIHRoYXQuCisKKyAgICAgICAgKiBieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHA6Cisg
ICAgICAgIChKU0M6OnNwZWN1bGF0aW9uRnJvbUNsYXNzSW5mb0luaGVyaXRhbmNlKToKKyAgICAg
ICAgKEpTQzo6c3BlY3VsYXRpb25Gcm9tU3RydWN0dXJlKToKKyAgICAgICAgKiBkZmcvREZHQWJz
dHJhY3RWYWx1ZS5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVy
QnlWYWx1ZSk6CisgICAgICAgIChKU0M6OkRGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyKToKKyAg
ICAgICAgKiBkZmcvREZHUHJlZGljdGlvblByb3BhZ2F0aW9uUGhhc2UuY3BwOgorICAgICAgICAq
IHJ1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6U3RyaW5nT2JqZWN0Ojpm
aW5pc2hDcmVhdGlvbik6CisKIDIwMjAtMDctMjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFw
cGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBBcnJvdyBmdW5jdGlvbiB8dGhpc3wgcmVzb2x1dGlv
biBzaG91bGQgbm90IGJlIHRyYXBwZWQgYnkgd2l0aC1zY29wZQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1NwZWN1bGF0ZWRUeXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHAKaW5kZXggOGNmYjVmY2IyZTFm
ZmEzMzFkYTUxNzdhNWEyMGQwYTg5OTc3YmQwMy4uYTZiZGE5MTBjZTY0NWM5ZWY2MGRiZmI4OTAx
OTlkNzZmZDM0YTg3OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1NwZWN1bGF0ZWRUeXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
U3BlY3VsYXRlZFR5cGUuY3BwCkBAIC00OTAsMTEgKzQ5MCwxOCBAQCBTcGVjdWxhdGVkVHlwZSBz
cGVjdWxhdGlvbkZyb21DbGFzc0luZm9Jbmhlcml0YW5jZShjb25zdCBDbGFzc0luZm8qIGNsYXNz
SW5mbykKICAgICBpZiAoY2xhc3NJbmZvID09IEpTRGF0YVZpZXc6OmluZm8oKSkKICAgICAgICAg
cmV0dXJuIFNwZWNEYXRhVmlld09iamVjdDsKIAorICAgIGlmIChjbGFzc0luZm8gPT0gU3RyaW5n
T2JqZWN0OjppbmZvKCkpCisgICAgICAgIHJldHVybiBTcGVjU3RyaW5nT2JqZWN0OworCisgICAg
Ly8gV2UgZG8gbm90IHdhbnQgdG8gYWNjZXB0IFN0cmluZy5wcm90b3R5cGUgaW4gU3RyaW5nT2Jq
ZWN0VXNlLCBzbyB0aGF0IHdlIGRvIG5vdCBpbmNsdWRlIGl0IGFzIFNwZWNTdHJpbmdPYmplY3Qu
CiAgICAgaWYgKGNsYXNzSW5mby0+aXNTdWJDbGFzc09mKFN0cmluZ09iamVjdDo6aW5mbygpKSkK
LSAgICAgICAgcmV0dXJuIFNwZWNTdHJpbmdPYmplY3QgfCBTcGVjT2JqZWN0T3RoZXI7CisgICAg
ICAgIHJldHVybiBTcGVjT2JqZWN0T3RoZXI7CisKKyAgICBpZiAoY2xhc3NJbmZvID09IEpTQXJy
YXk6OmluZm8oKSkKKyAgICAgICAgcmV0dXJuIFNwZWNBcnJheTsKIAogICAgIGlmIChjbGFzc0lu
Zm8tPmlzU3ViQ2xhc3NPZihKU0FycmF5OjppbmZvKCkpKQotICAgICAgICByZXR1cm4gU3BlY0Fy
cmF5IHwgU3BlY0Rlcml2ZWRBcnJheTsKKyAgICAgICAgcmV0dXJuIFNwZWNEZXJpdmVkQXJyYXk7
CiAKICAgICBpZiAoY2xhc3NJbmZvLT5pc1N1YkNsYXNzT2YoSlNGdW5jdGlvbjo6aW5mbygpKSkg
ewogICAgICAgICBpZiAoY2xhc3NJbmZvID09IEpTQm91bmRGdW5jdGlvbjo6aW5mbygpKQpAQCAt
NTE3LDIxICs1MjQsMzIgQEAgU3BlY3VsYXRlZFR5cGUgc3BlY3VsYXRpb25Gcm9tQ2xhc3NJbmZv
SW5oZXJpdGFuY2UoY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0luZm8pCiBTcGVjdWxhdGVkVHlwZSBz
cGVjdWxhdGlvbkZyb21TdHJ1Y3R1cmUoU3RydWN0dXJlKiBzdHJ1Y3R1cmUpCiB7CiAgICAgU3Bl
Y3VsYXRlZFR5cGUgZmlsdGVyZWRSZXN1bHQgPSBTcGVjTm9uZTsKLSAgICBpZiAoc3RydWN0dXJl
LT50eXBlSW5mbygpLnR5cGUoKSA9PSBTdHJpbmdUeXBlKQorICAgIHN3aXRjaCAoc3RydWN0dXJl
LT50eXBlSW5mbygpLnR5cGUoKSkgeworICAgIGNhc2UgU3RyaW5nVHlwZToKICAgICAgICAgZmls
dGVyZWRSZXN1bHQgPSBTcGVjU3RyaW5nOwotICAgIGVsc2UgaWYgKHN0cnVjdHVyZS0+dHlwZUlu
Zm8oKS50eXBlKCkgPT0gU3ltYm9sVHlwZSkKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTeW1i
b2xUeXBlOgogICAgICAgICBmaWx0ZXJlZFJlc3VsdCA9IFNwZWNTeW1ib2w7Ci0gICAgZWxzZSBp
ZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBIZWFwQmlnSW50VHlwZSkKKyAgICAg
ICAgYnJlYWs7CisgICAgY2FzZSBIZWFwQmlnSW50VHlwZToKICAgICAgICAgZmlsdGVyZWRSZXN1
bHQgPSBTcGVjSGVhcEJpZ0ludDsKLSAgICBlbHNlIGlmIChzdHJ1Y3R1cmUtPnR5cGVJbmZvKCku
dHlwZSgpID09IERlcml2ZWRBcnJheVR5cGUpCisgICAgICAgIGJyZWFrOworICAgIGNhc2UgRGVy
aXZlZEFycmF5VHlwZToKICAgICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjRGVyaXZlZEFycmF5
OwotICAgIGVsc2UgaWYgKHN0cnVjdHVyZS0+dHlwZUluZm8oKS50eXBlKCkgPT0gQXJyYXlUeXBl
KQorICAgICAgICBicmVhazsKKyAgICBjYXNlIEFycmF5VHlwZToKICAgICAgICAgZmlsdGVyZWRS
ZXN1bHQgPSBTcGVjQXJyYXk7Ci0gICAgZWxzZSBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5
cGUoKSA9PSBTdHJpbmdPYmplY3RUeXBlKQorICAgICAgICBicmVhazsKKyAgICBjYXNlIFN0cmlu
Z09iamVjdFR5cGU6CiAgICAgICAgIGZpbHRlcmVkUmVzdWx0ID0gU3BlY1N0cmluZ09iamVjdDsK
LSAgICBlbHNlCisgICAgICAgIGJyZWFrOworICAgIC8vIFdlIGRvIG5vdCB3YW50IHRvIGFjY2Vw
dCBTdHJpbmcucHJvdG90eXBlIGluIFN0cmluZ09iamVjdFVzZSwgc28gdGhhdCB3ZSBkbyBub3Qg
aW5jbHVkZSBpdCBhcyBTcGVjU3RyaW5nT2JqZWN0LgorICAgIGNhc2UgRGVyaXZlZFN0cmluZ09i
amVjdFR5cGU6CisgICAgICAgIGZpbHRlcmVkUmVzdWx0ID0gU3BlY09iamVjdE90aGVyOworICAg
ICAgICBicmVhazsKKyAgICBkZWZhdWx0OgogICAgICAgICByZXR1cm4gc3BlY3VsYXRpb25Gcm9t
Q2xhc3NJbmZvSW5oZXJpdGFuY2Uoc3RydWN0dXJlLT5jbGFzc0luZm8oKSk7Ci0KKyAgICB9CiAg
ICAgQVNTRVJUKGZpbHRlcmVkUmVzdWx0KTsKICAgICBBU1NFUlQoaXNTdWJ0eXBlU3BlY3VsYXRp
b24oZmlsdGVyZWRSZXN1bHQsIHNwZWN1bGF0aW9uRnJvbUNsYXNzSW5mb0luaGVyaXRhbmNlKHN0
cnVjdHVyZS0+Y2xhc3NJbmZvKCkpKSk7CiAgICAgcmV0dXJuIGZpbHRlcmVkUmVzdWx0OwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdFZhbHVlLmNwcCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RWYWx1ZS5jcHAKaW5kZXggMDk0
ODk0NzhiNWYwNTYyOTY4Zjc0M2MxMTU3Yjk1YmYxNzI4MGNmYy4uMDU0YWE4ZDAxNGM2YWNmYTFm
OGRlMDMxYzY3N2E3YjdhNjc2ZTg1NCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RmZy9ERkdBYnN0cmFjdFZhbHVlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0Fic3RyYWN0VmFsdWUuY3BwCkBAIC0zMjEsOCArMzIxLDE0IEBAIEZpbHRyYXRpb25SZXN1
bHQgQWJzdHJhY3RWYWx1ZTo6ZmFzdEZvcndhcmRUb0FuZEZpbHRlclNsb3coQWJzdHJhY3RWYWx1
ZUNsb2JiZXJFCiBGaWx0cmF0aW9uUmVzdWx0IEFic3RyYWN0VmFsdWU6OmZpbHRlckJ5VmFsdWUo
Y29uc3QgRnJvemVuVmFsdWUmIHZhbHVlKQogewogICAgIEZpbHRyYXRpb25SZXN1bHQgcmVzdWx0
ID0gZmlsdGVyKHNwZWN1bGF0aW9uRnJvbVZhbHVlKHZhbHVlLnZhbHVlKCkpKTsKLSAgICBpZiAo
bV90eXBlKQorICAgIGlmIChtX3R5cGUpIHsKICAgICAgICAgbV92YWx1ZSA9IHZhbHVlLnZhbHVl
KCk7CisgICAgICAgIC8vIEl0IGlzIHBvc3NpYmxlIHRoYXQgU3BlY3VsYXRlZFR5cGUgZnJvbSB2
YWx1ZSBpcyBicm9hZGVyIHRoYW4gb3JpZ2luYWwgbV90eXBlLiBUaGUgZmlsdGVyIG9wZXJhdGlv
biBrZWVwcyBtX3R5cGUgYXMgaXMsCisgICAgICAgIC8vIGFuZCBhcyBhIHJlc3VsdCwgU3BlY3Vs
YXRlZFR5cGUgZnJvbSBtX3ZhbHVlIGJlY29tZXMgYnJvYWRlciB0aGFuIG1fdHlwZS4gVGhpcyBi
cmVha3MgaW52YXJpYW50LgorICAgICAgICAvLyBXaGVuIHNldHRpbmcgbV92YWx1ZSBhZnRlciBm
aWx0ZXJpbmcsIHdlIHNob3VsZCBmaWx0ZXIgbV92YWx1ZSB3aXRoIG1fdHlwZS4KKyAgICAgICAg
ZmlsdGVyVmFsdWVCeVR5cGUoKTsKKyAgICB9CisgICAgY2hlY2tDb25zaXN0ZW5jeSgpOwogICAg
IHJldHVybiByZXN1bHQ7CiB9CiAKQEAgLTM1Myw2ICszNTksMTAgQEAgRmlsdHJhdGlvblJlc3Vs
dCBBYnN0cmFjdFZhbHVlOjpmaWx0ZXIoY29uc3QgQWJzdHJhY3RWYWx1ZSYgb3RoZXIpCiAgICAg
aWYgKCFtX3ZhbHVlKSB7CiAgICAgICAgIC8vIFdlIHByZXZpb3VzbHkgZGlkbid0IHByb3ZlIGEg
dmFsdWUgYnV0IG5vdyB3ZSBoYXZlIGRvbmUgc28uCiAgICAgICAgIG1fdmFsdWUgPSBvdGhlci5t
X3ZhbHVlOyAKKyAgICAgICAgLy8gSXQgaXMgcG9zc2libGUgdGhhdCBTcGVjdWxhdGVkVHlwZSBm
cm9tIG90aGVyLm1fdmFsdWUgaXMgYnJvYWRlciB0aGFuIG9yaWdpbmFsIG1fdHlwZS4gVGhlIGZp
bHRlciBvcGVyYXRpb24ga2VlcHMgbV90eXBlIGFzIGlzLAorICAgICAgICAvLyBhbmQgYXMgYSBy
ZXN1bHQsIFNwZWN1bGF0ZWRUeXBlIGZyb20gbV92YWx1ZSBiZWNvbWVzIGJyb2FkZXIgdGhhbiBt
X3R5cGUuIFRoaXMgYnJlYWtzIGludmFyaWFudC4KKyAgICAgICAgLy8gV2hlbiBzZXR0aW5nIG1f
dmFsdWUgYWZ0ZXIgZmlsdGVyaW5nLCB3ZSBzaG91bGQgZmlsdGVyIG1fdmFsdWUgd2l0aCBtX3R5
cGUuCisgICAgICAgIGZpbHRlclZhbHVlQnlUeXBlKCk7CiAgICAgICAgIHJldHVybiBGaWx0cmF0
aW9uT0s7CiAgICAgfQogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcAppbmRleCBkMTA3NmQ0ZTkx
NGU3MDU4ODc1YjQ1MjZlNGM0M2Q4ZGMzMmNjZjJhLi43MTAzZjlkYjkwYmRiN2YzNTA1ZmRjMTIz
NDlkMmJmZDc2ZDRmMmYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcApAQCAtNTg4LDkgKzU4OCwx
MiBAQCBjbGFzcyBQcmVkaWN0aW9uUHJvcGFnYXRpb25QaGFzZSA6IHB1YmxpYyBQaGFzZSB7CiAg
ICAgICAgICAgICBpZiAoaXNTdHJpY3RNb2RlKQogICAgICAgICAgICAgICAgIGNoYW5nZWQgfD0g
bWVyZ2VQcmVkaWN0aW9uKG5vZGUtPmdldEhlYXBQcmVkaWN0aW9uKCkpOwogICAgICAgICAgICAg
ZWxzZSBpZiAocHJlZGljdGlvbikgeworICAgICAgICAgICAgICAgIFNwZWN1bGF0ZWRUeXBlIG9y
aWdpbmFsUHJlZGljdGlvbiA9IHByZWRpY3Rpb247CiAgICAgICAgICAgICAgICAgaWYgKHByZWRp
Y3Rpb24gJiB+U3BlY09iamVjdCkgewogICAgICAgICAgICAgICAgICAgICAvLyBXcmFwcGVyIG9i
amVjdHMgYXJlIGNyZWF0ZWQgb25seSBpbiBzbG9wcHkgbW9kZS4KICAgICAgICAgICAgICAgICAg
ICAgcHJlZGljdGlvbiAmPSBTcGVjT2JqZWN0OworICAgICAgICAgICAgICAgICAgICBpZiAob3Jp
Z2luYWxQcmVkaWN0aW9uICYgU3BlY1N0cmluZykKKyAgICAgICAgICAgICAgICAgICAgICAgIHBy
ZWRpY3Rpb24gPSBtZXJnZVNwZWN1bGF0aW9ucyhwcmVkaWN0aW9uLCBTcGVjU3RyaW5nT2JqZWN0
KTsKICAgICAgICAgICAgICAgICAgICAgcHJlZGljdGlvbiA9IG1lcmdlU3BlY3VsYXRpb25zKHBy
ZWRpY3Rpb24sIFNwZWNPYmplY3RPdGhlcik7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgIGNoYW5nZWQgfD0gbWVyZ2VQcmVkaWN0aW9uKHByZWRpY3Rpb24pOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ09iamVjdC5jcHAKaW5kZXggZGIyMDM1YzRk
YzA4OTZiNmJlMWQxZmI5ZGY3YzQ0MDQ3N2E3ZWJkMS4uZTZkNjQxNzdkZDM1NGE2YTc2ZjI3Y2I1
YjlkMGI3N2ViYjZkZmU1MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRp
bWUvU3RyaW5nT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
dHJpbmdPYmplY3QuY3BwCkBAIC00MSw2ICs0MSw3IEBAIHZvaWQgU3RyaW5nT2JqZWN0OjpmaW5p
c2hDcmVhdGlvbihWTSYgdm0sIEpTU3RyaW5nKiBzdHJpbmcpCiAgICAgQmFzZTo6ZmluaXNoQ3Jl
YXRpb24odm0pOwogICAgIEFTU0VSVChpbmhlcml0cyh2bSwgaW5mbygpKSk7CiAgICAgc2V0SW50
ZXJuYWxWYWx1ZSh2bSwgc3RyaW5nKTsKKyAgICBBU1NFUlRfV0lUSF9NRVNTQUdFKHR5cGUoKSA9
PSBTdHJpbmdPYmplY3RUeXBlIHx8IHR5cGUoKSA9PSBEZXJpdmVkU3RyaW5nT2JqZWN0VHlwZSwg
Ikluc3RhbmNlIGluaGVyaXRpbmcgU3RyaW5nT2JqZWN0IHNob3VsZCBoYXZlIERlcml2ZWRTdHJp
bmdPYmplY3RUeXBlIik7CiB9CiAKIGJvb2wgU3RyaW5nT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNs
b3QoSlNPYmplY3QqIGNlbGwsIEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIFByb3BlcnR5
TmFtZSBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZmEyMDQwOTQ3N2ZmYjU4OTI2
NWNjMzBhN2VkNmQyMGY4OGE4YWRlYS4uY2ZhZjE4MjFlZjBlY2E2MzdiODFlODdiM2Q4NjZlN2Zi
Y2E0NjVjNyAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wNy0yMyAgWXVzdWtlIFN1enVraSAgPHlzdXp1
a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIERGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVy
QnlWYWx1ZSBzaG91bGQgcmUtZmlsdGVyIGNvbmZpZ3VyZWQgbV92YWx1ZSB2aWEgbV90eXBlCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ3MjEKKyAg
ICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY1ODgyODM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3RyZXNzL3NwZWN1bGF0aW9uLWZyb20tc3RydWN0
dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpzOiBBZGRlZC4KKyAgICAgICAgKGJhcik6
CisgICAgICAgIChmb28pOgorCiAyMDIwLTA3LTIzICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBh
cHBsZS5jb20+CiAKICAgICAgICAgW0pTQ10gQXJyb3cgZnVuY3Rpb24gfHRoaXN8IHJlc29sdXRp
b24gc2hvdWxkIG5vdCBiZSB0cmFwcGVkIGJ5IHdpdGgtc2NvcGUKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvc3RyZXNzL3NwZWN1bGF0aW9uLWZyb20tc3RydWN0dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxk
LWFncmVlLmpzIGIvSlNUZXN0cy9zdHJlc3Mvc3BlY3VsYXRpb24tZnJvbS1zdHJ1Y3R1cmUtYW5k
LWNsYXNzaW5mby1zaG91bGQtYWdyZWUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDgyMDljNzFmNGU1MzgxMTk3
YWY0YzFkMmU1YzQ3NTY1ZjE3ZDBkNwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNz
L3NwZWN1bGF0aW9uLWZyb20tc3RydWN0dXJlLWFuZC1jbGFzc2luZm8tc2hvdWxkLWFncmVlLmpz
CkBAIC0wLDAgKzEsMTQgQEAKKy8vQCBydW5EZWZhdWx0KCItLWZvcmNlRWFnZXJDb21waWxhdGlv
bj0xIiwgIi0tbWluaW11bU9wdGltaXphdGlvbkRlbGF5PTEwIiwgIi0tbWF4aW11bU9wdGltaXph
dGlvbkRlbGF5PTEwIiwgIi0tdXNlQ29uY3VycmVudEpJVD0wIikKKworZnVuY3Rpb24gYmFyKGEw
KSB7CisgICAgJycgaW5zdGFuY2VvZiBhMDsKK30KKworZnVuY3Rpb24gZm9vKCkgeworICAgIG9w
dGltaXplTmV4dEludm9jYXRpb24oZm9vKTsKKyAgICBiYXIoU3RyaW5nKTsKKyAgICBiYXIoU3lt
Ym9sKTsKK30KKworZm9yIChsZXQgaT0wOyBpPDExOyBpKyspCisgICAgZm9vKCk7Cg==
</data>
<flag name="review"
          id="420520"
          type_id="1"
          status="+"
          setter="mark.lam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>405143</attachid>
            <date>2020-07-24 08:34:14 -0700</date>
            <delta_ts>2020-07-24 14:29:45 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-214721-20200724083413.patch</filename>
            <type>text/plain</type>
            <size>8991</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY0ODEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
NDA0YjNlNTA1YzE0MGE4MTkyNzM5MjlhZDc1MzA3MDMxMzc0NWY0Li5mYjc4YTRhMDZkY2M0ZDE0
YmI4NGZjZjc2NTk2N2YzOTYyMjdjNzBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzMSBAQAorMjAyMC0wNy0yNCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIERGRzo6QWJzdHJhY3RWYWx1ZTo6ZmlsdGVyQnlWYWx1ZSBzaG91
bGQgcmUtZmlsdGVyIGNvbmZpZ3VyZWQgbV92YWx1ZSB2aWEgbV90eXBlCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ3MjEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzY1ODgyODM3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgTGFtLgorCisg
ICAgICAgIExldCdzIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY2FzZS4KKworICAgICAgICAgICAg
MS4gSW5wdXQgQWJzdHJhY3RWYWx1ZSBpcyBzYXlpbmcgU3BlY09iamVjdE90aGVyLgorICAgICAg
ICAgICAgMi4gV2UgaGF2ZSBDaGVja0lzQ29uc3RhbnQgd2l0aCBTdHJpbmdQcm90b3R5cGUgKHdo
aWNoIGlzIFNwZWNPYmplY3RPdGhlciB8IFNwZWNTdHJpbmdPYmplY3QgaW4gdGhlIGN1cnJlbnQg
U3BlY3VsYXRlZFR5cGUpLgorICAgICAgICAgICAgMy4gV2UgY2FsbCBmaWx0ZXJCeVZhbHVlLCB3
aGljaCBmaWx0ZXJzIG1fdHlwZSBieSBTcGVjT2JqZWN0T3RoZXIgfCBTcGVjU3RyaW5nT2JqZWN0
LiBCdXQgdGhlIGZpbHRlcmVkIG1fdHlwZSBpcyBTcGVjT2JqZWN0T3RoZXIgc2luY2UgKDIpJ3Mg
U3BlY3VsYXRlZFR5cGUgaXMgYnJvYWRlci4KKyAgICAgICAgICAgIDQuIFdlIHN0b3JlIHRoZSBn
aXZlbiBjb25zdGFudCAoU3RyaW5nUHJvdG90eXBlKSB0byBtX3ZhbHVlLgorICAgICAgICAgICAg
NS4gVGhpcyBBYnN0cmFjdFZhbHVlJ3MgbV90eXBlIGlzIFNwZWNPYmplY3RPdGhlciB3aGlsZSBp
dHMgbV92YWx1ZSdzIFNwZWN1bGF0ZWRUeXBlIGlzIFNwZWNPYmplY3RPdGhlciB8IFNwZWNTdHJp
bmdPYmplY3QuIENvbnRyYWRpY3Rpb24hCisKKyAgICAgICAgV2hlbiBzZXR0aW5nIG1fdmFsdWUg
YnkgZmlsdGVyQnlWYWx1ZSwgd2Ugc2hvdWxkIGZpbHRlciBtX3ZhbHVlIHdpdGggbV90eXBlIHRv
IGVuc3VyZSB0aGF0IG1fdmFsdWUgaXMgdGhlIGV4cGVjdGVkIG9uZS4KKyAgICAgICAgVGhpcyBw
YXRjaCBhbHNvIGF2b2lkIHVzaW5nIFNwZWNPYmplY3RPdGhlciB8IFNwZWNTdHJpbmdPYmplY3Qg
Zm9yIFN0cmluZ1Byb3RvdHlwZSBzaW5jZSB3ZSBjYW4gcmV0dXJuIG5hcnJvd2VyIHR5cGUgZm9y
IHRoYXQuCisKKyAgICAgICAgKiBieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHA6CisgICAgICAg
IChKU0M6OnNwZWN1bGF0aW9uRnJvbVN0cnVjdHVyZSk6CisgICAgICAgICogZGZnL0RGR0Fic3Ry
YWN0VmFsdWUuY3BwOgorICAgICAgICAoSlNDOjpERkc6OkFic3RyYWN0VmFsdWU6OmZpbHRlckJ5
VmFsdWUpOgorICAgICAgICAoSlNDOjpERkc6OkFic3RyYWN0VmFsdWU6OmZpbHRlcik6CisgICAg
ICAgICogZGZnL0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcDoKKyAgICAgICAgKiBy
dW50aW1lL1N0cmluZ09iamVjdC5jcHA6CisgICAgICAgIChKU0M6OlN0cmluZ09iamVjdDo6Zmlu
aXNoQ3JlYXRpb24pOgorCiAyMDIwLTA3LTIzICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0pTQ10gQXJyb3cgZnVuY3Rpb24gfHRoaXN8IHJlc29sdXRpb24g
c2hvdWxkIG5vdCBiZSB0cmFwcGVkIGJ5IHdpdGgtc2NvcGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYnl0ZWNvZGUvU3BlY3VsYXRlZFR5cGUuY3BwCmluZGV4IDhjZmI1ZmNiMmUxZmZh
MzMxZGE1MTc3YTVhMjBkMGE4OTk3N2JkMDMuLjUxZjRlMmRiOWI4ZDM1N2M4YTBiNzQyZThlODEx
YzliYzI5NWQ1NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9T
cGVjdWxhdGVkVHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1Nw
ZWN1bGF0ZWRUeXBlLmNwcApAQCAtNTE3LDIxICs1MTcsMzIgQEAgU3BlY3VsYXRlZFR5cGUgc3Bl
Y3VsYXRpb25Gcm9tQ2xhc3NJbmZvSW5oZXJpdGFuY2UoY29uc3QgQ2xhc3NJbmZvKiBjbGFzc0lu
Zm8pCiBTcGVjdWxhdGVkVHlwZSBzcGVjdWxhdGlvbkZyb21TdHJ1Y3R1cmUoU3RydWN0dXJlKiBz
dHJ1Y3R1cmUpCiB7CiAgICAgU3BlY3VsYXRlZFR5cGUgZmlsdGVyZWRSZXN1bHQgPSBTcGVjTm9u
ZTsKLSAgICBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBTdHJpbmdUeXBlKQor
ICAgIHN3aXRjaCAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSkgeworICAgIGNhc2UgU3Ry
aW5nVHlwZToKICAgICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjU3RyaW5nOwotICAgIGVsc2Ug
aWYgKHN0cnVjdHVyZS0+dHlwZUluZm8oKS50eXBlKCkgPT0gU3ltYm9sVHlwZSkKKyAgICAgICAg
YnJlYWs7CisgICAgY2FzZSBTeW1ib2xUeXBlOgogICAgICAgICBmaWx0ZXJlZFJlc3VsdCA9IFNw
ZWNTeW1ib2w7Ci0gICAgZWxzZSBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBI
ZWFwQmlnSW50VHlwZSkKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBIZWFwQmlnSW50VHlwZToK
ICAgICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjSGVhcEJpZ0ludDsKLSAgICBlbHNlIGlmIChz
dHJ1Y3R1cmUtPnR5cGVJbmZvKCkudHlwZSgpID09IERlcml2ZWRBcnJheVR5cGUpCisgICAgICAg
IGJyZWFrOworICAgIGNhc2UgRGVyaXZlZEFycmF5VHlwZToKICAgICAgICAgZmlsdGVyZWRSZXN1
bHQgPSBTcGVjRGVyaXZlZEFycmF5OwotICAgIGVsc2UgaWYgKHN0cnVjdHVyZS0+dHlwZUluZm8o
KS50eXBlKCkgPT0gQXJyYXlUeXBlKQorICAgICAgICBicmVhazsKKyAgICBjYXNlIEFycmF5VHlw
ZToKICAgICAgICAgZmlsdGVyZWRSZXN1bHQgPSBTcGVjQXJyYXk7Ci0gICAgZWxzZSBpZiAoc3Ry
dWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBTdHJpbmdPYmplY3RUeXBlKQorICAgICAgICBi
cmVhazsKKyAgICBjYXNlIFN0cmluZ09iamVjdFR5cGU6CiAgICAgICAgIGZpbHRlcmVkUmVzdWx0
ID0gU3BlY1N0cmluZ09iamVjdDsKLSAgICBlbHNlCisgICAgICAgIGJyZWFrOworICAgIC8vIFdl
IGRvIG5vdCB3YW50IHRvIGFjY2VwdCBTdHJpbmcucHJvdG90eXBlIGluIFN0cmluZ09iamVjdFVz
ZSwgc28gdGhhdCB3ZSBkbyBub3QgaW5jbHVkZSBpdCBhcyBTcGVjU3RyaW5nT2JqZWN0LgorICAg
IGNhc2UgRGVyaXZlZFN0cmluZ09iamVjdFR5cGU6CisgICAgICAgIGZpbHRlcmVkUmVzdWx0ID0g
U3BlY09iamVjdE90aGVyOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgogICAgICAgICBy
ZXR1cm4gc3BlY3VsYXRpb25Gcm9tQ2xhc3NJbmZvSW5oZXJpdGFuY2Uoc3RydWN0dXJlLT5jbGFz
c0luZm8oKSk7Ci0KKyAgICB9CiAgICAgQVNTRVJUKGZpbHRlcmVkUmVzdWx0KTsKICAgICBBU1NF
UlQoaXNTdWJ0eXBlU3BlY3VsYXRpb24oZmlsdGVyZWRSZXN1bHQsIHNwZWN1bGF0aW9uRnJvbUNs
YXNzSW5mb0luaGVyaXRhbmNlKHN0cnVjdHVyZS0+Y2xhc3NJbmZvKCkpKSk7CiAgICAgcmV0dXJu
IGZpbHRlcmVkUmVzdWx0OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdBYnN0cmFjdFZhbHVlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJh
Y3RWYWx1ZS5jcHAKaW5kZXggMDk0ODk0NzhiNWYwNTYyOTY4Zjc0M2MxMTU3Yjk1YmYxNzI4MGNm
Yy4uZGQ5YmEzOTk1MjkzZWM3ZDY2NzM4ZWMwYzQwMWQyZmEwNTYyOWYxNiAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFjdFZhbHVlLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0VmFsdWUuY3BwCkBAIC0zMjEsOCArMzIx
LDE1IEBAIEZpbHRyYXRpb25SZXN1bHQgQWJzdHJhY3RWYWx1ZTo6ZmFzdEZvcndhcmRUb0FuZEZp
bHRlclNsb3coQWJzdHJhY3RWYWx1ZUNsb2JiZXJFCiBGaWx0cmF0aW9uUmVzdWx0IEFic3RyYWN0
VmFsdWU6OmZpbHRlckJ5VmFsdWUoY29uc3QgRnJvemVuVmFsdWUmIHZhbHVlKQogewogICAgIEZp
bHRyYXRpb25SZXN1bHQgcmVzdWx0ID0gZmlsdGVyKHNwZWN1bGF0aW9uRnJvbVZhbHVlKHZhbHVl
LnZhbHVlKCkpKTsKLSAgICBpZiAobV90eXBlKQorICAgIGlmIChtX3R5cGUpIHsKICAgICAgICAg
bV92YWx1ZSA9IHZhbHVlLnZhbHVlKCk7CisgICAgICAgIC8vIEl0IGlzIHBvc3NpYmxlIHRoYXQg
U3BlY3VsYXRlZFR5cGUgZnJvbSB2YWx1ZSBpcyBicm9hZGVyIHRoYW4gb3JpZ2luYWwgbV90eXBl
LgorICAgICAgICAvLyBUaGUgZmlsdGVyIG9wZXJhdGlvbiBjYW4gb25seSBrZWVwIG1fdHlwZSBh
cyBpcyBvciBtYWtlIGl0IG5hcnJvd2VyLgorICAgICAgICAvLyBBcyBhIHJlc3VsdCwgdGhlIFNw
ZWN1bGF0ZWRUeXBlIGZyb20gbV92YWx1ZSBjYW4gYmVjb21lIGJyb2FkZXIgdGhhbiBtX3R5cGUu
IFRoaXMgYnJlYWtzIGFuIGludmFyaWFudC4KKyAgICAgICAgLy8gV2hlbiBzZXR0aW5nIG1fdmFs
dWUgYWZ0ZXIgZmlsdGVyaW5nLCB3ZSBzaG91bGQgZmlsdGVyIG1fdmFsdWUgd2l0aCBtX3R5cGUu
CisgICAgICAgIGZpbHRlclZhbHVlQnlUeXBlKCk7CisgICAgfQorICAgIGNoZWNrQ29uc2lzdGVu
Y3koKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQogCkBAIC0zNTMsNiArMzYwLDExIEBAIEZpbHRy
YXRpb25SZXN1bHQgQWJzdHJhY3RWYWx1ZTo6ZmlsdGVyKGNvbnN0IEFic3RyYWN0VmFsdWUmIG90
aGVyKQogICAgIGlmICghbV92YWx1ZSkgewogICAgICAgICAvLyBXZSBwcmV2aW91c2x5IGRpZG4n
dCBwcm92ZSBhIHZhbHVlIGJ1dCBub3cgd2UgaGF2ZSBkb25lIHNvLgogICAgICAgICBtX3ZhbHVl
ID0gb3RoZXIubV92YWx1ZTsgCisgICAgICAgIC8vIEl0IGlzIHBvc3NpYmxlIHRoYXQgU3BlY3Vs
YXRlZFR5cGUgZnJvbSBvdGhlci5tX3ZhbHVlIGlzIGJyb2FkZXIgdGhhbiBvcmlnaW5hbCBtX3R5
cGUuCisgICAgICAgIC8vIFRoZSBmaWx0ZXIgb3BlcmF0aW9uIGNhbiBvbmx5IGtlZXAgbV90eXBl
IGFzIGlzIG9yIG1ha2UgaXQgbmFycm93ZXIuCisgICAgICAgIC8vIEFzIGEgcmVzdWx0LCB0aGUg
U3BlY3VsYXRlZFR5cGUgZnJvbSBtX3ZhbHVlIGNhbiBiZWNvbWUgYnJvYWRlciB0aGFuIG1fdHlw
ZS4gVGhpcyBicmVha3MgYW4gaW52YXJpYW50LgorICAgICAgICAvLyBXaGVuIHNldHRpbmcgbV92
YWx1ZSBhZnRlciBmaWx0ZXJpbmcsIHdlIHNob3VsZCBmaWx0ZXIgbV92YWx1ZSB3aXRoIG1fdHlw
ZS4KKyAgICAgICAgZmlsdGVyVmFsdWVCeVR5cGUoKTsKICAgICAgICAgcmV0dXJuIEZpbHRyYXRp
b25PSzsKICAgICB9CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1ByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHUHJlZGljdGlvblByb3BhZ2F0aW9uUGhhc2UuY3BwCmluZGV4IGQxMDc2ZDRlOTE0
ZTcwNTg4NzViNDUyNmU0YzQzZDhkYzMyY2NmMmEuLjcxMDNmOWRiOTBiZGI3ZjM1MDVmZGMxMjM0
OWQyYmZkNzZkNGYyZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
UHJlZGljdGlvblByb3BhZ2F0aW9uUGhhc2UuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHUHJlZGljdGlvblByb3BhZ2F0aW9uUGhhc2UuY3BwCkBAIC01ODgsOSArNTg4LDEy
IEBAIGNsYXNzIFByZWRpY3Rpb25Qcm9wYWdhdGlvblBoYXNlIDogcHVibGljIFBoYXNlIHsKICAg
ICAgICAgICAgIGlmIChpc1N0cmljdE1vZGUpCiAgICAgICAgICAgICAgICAgY2hhbmdlZCB8PSBt
ZXJnZVByZWRpY3Rpb24obm9kZS0+Z2V0SGVhcFByZWRpY3Rpb24oKSk7CiAgICAgICAgICAgICBl
bHNlIGlmIChwcmVkaWN0aW9uKSB7CisgICAgICAgICAgICAgICAgU3BlY3VsYXRlZFR5cGUgb3Jp
Z2luYWxQcmVkaWN0aW9uID0gcHJlZGljdGlvbjsKICAgICAgICAgICAgICAgICBpZiAocHJlZGlj
dGlvbiAmIH5TcGVjT2JqZWN0KSB7CiAgICAgICAgICAgICAgICAgICAgIC8vIFdyYXBwZXIgb2Jq
ZWN0cyBhcmUgY3JlYXRlZCBvbmx5IGluIHNsb3BweSBtb2RlLgogICAgICAgICAgICAgICAgICAg
ICBwcmVkaWN0aW9uICY9IFNwZWNPYmplY3Q7CisgICAgICAgICAgICAgICAgICAgIGlmIChvcmln
aW5hbFByZWRpY3Rpb24gJiBTcGVjU3RyaW5nKQorICAgICAgICAgICAgICAgICAgICAgICAgcHJl
ZGljdGlvbiA9IG1lcmdlU3BlY3VsYXRpb25zKHByZWRpY3Rpb24sIFNwZWNTdHJpbmdPYmplY3Qp
OwogICAgICAgICAgICAgICAgICAgICBwcmVkaWN0aW9uID0gbWVyZ2VTcGVjdWxhdGlvbnMocHJl
ZGljdGlvbiwgU3BlY09iamVjdE90aGVyKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICAgY2hhbmdlZCB8PSBtZXJnZVByZWRpY3Rpb24ocHJlZGljdGlvbik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdPYmplY3QuY3BwIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nT2JqZWN0LmNwcAppbmRleCBkYjIwMzVjNGRj
MDg5NmI2YmUxZDFmYjlkZjdjNDQwNDc3YTdlYmQxLi5lNmQ2NDE3N2RkMzU0YTZhNzZmMjdjYjVi
OWQwYjc3ZWJiNmRmZTUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9TdHJpbmdPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0
cmluZ09iamVjdC5jcHAKQEAgLTQxLDYgKzQxLDcgQEAgdm9pZCBTdHJpbmdPYmplY3Q6OmZpbmlz
aENyZWF0aW9uKFZNJiB2bSwgSlNTdHJpbmcqIHN0cmluZykKICAgICBCYXNlOjpmaW5pc2hDcmVh
dGlvbih2bSk7CiAgICAgQVNTRVJUKGluaGVyaXRzKHZtLCBpbmZvKCkpKTsKICAgICBzZXRJbnRl
cm5hbFZhbHVlKHZtLCBzdHJpbmcpOworICAgIEFTU0VSVF9XSVRIX01FU1NBR0UodHlwZSgpID09
IFN0cmluZ09iamVjdFR5cGUgfHwgdHlwZSgpID09IERlcml2ZWRTdHJpbmdPYmplY3RUeXBlLCAi
SW5zdGFuY2UgaW5oZXJpdGluZyBTdHJpbmdPYmplY3Qgc2hvdWxkIGhhdmUgRGVyaXZlZFN0cmlu
Z09iamVjdFR5cGUiKTsKIH0KIAogYm9vbCBTdHJpbmdPYmplY3Q6OmdldE93blByb3BlcnR5U2xv
dChKU09iamVjdCogY2VsbCwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgUHJvcGVydHlO
YW1lIHByb3BlcnR5TmFtZSwgUHJvcGVydHlTbG90JiBzbG90KQpkaWZmIC0tZ2l0IGEvSlNUZXN0
cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCBmYTIwNDA5NDc3ZmZiNTg5MjY1
Y2MzMGE3ZWQ2ZDIwZjg4YThhZGVhLi43YTliNGZkOWNhMTFiMDdlNmMxNWViYTc5ZGRkMTVhMzU5
N2IzZmNlIDEwMDY0NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDIwLTA3LTI0ICBZdXN1a2UgU3V6dWtpICA8eXN1enVr
aUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10gREZHOjpBYnN0cmFjdFZhbHVlOjpmaWx0ZXJC
eVZhbHVlIHNob3VsZCByZS1maWx0ZXIgY29uZmlndXJlZCBtX3ZhbHVlIHZpYSBtX3R5cGUKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNDcyMQorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNjU4ODI4Mzc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTWFy
ayBMYW0uCisKKyAgICAgICAgKiBzdHJlc3Mvc3BlY3VsYXRpb24tZnJvbS1zdHJ1Y3R1cmUtYW5k
LWNsYXNzaW5mby1zaG91bGQtYWdyZWUuanM6IEFkZGVkLgorICAgICAgICAoYmFyKToKKyAgICAg
ICAgKGZvbyk6CisKIDIwMjAtMDctMjMgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNv
bT4KIAogICAgICAgICBbSlNDXSBBcnJvdyBmdW5jdGlvbiB8dGhpc3wgcmVzb2x1dGlvbiBzaG91
bGQgbm90IGJlIHRyYXBwZWQgYnkgd2l0aC1zY29wZQpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJl
c3Mvc3BlY3VsYXRpb24tZnJvbS1zdHJ1Y3R1cmUtYW5kLWNsYXNzaW5mby1zaG91bGQtYWdyZWUu
anMgYi9KU1Rlc3RzL3N0cmVzcy9zcGVjdWxhdGlvbi1mcm9tLXN0cnVjdHVyZS1hbmQtY2xhc3Np
bmZvLXNob3VsZC1hZ3JlZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ODIwOWM3MWY0ZTUzODExOTdhZjRjMWQy
ZTVjNDc1NjVmMTdkMGQ3Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9zdHJlc3Mvc3BlY3Vs
YXRpb24tZnJvbS1zdHJ1Y3R1cmUtYW5kLWNsYXNzaW5mby1zaG91bGQtYWdyZWUuanMKQEAgLTAs
MCArMSwxNCBAQAorLy9AIHJ1bkRlZmF1bHQoIi0tZm9yY2VFYWdlckNvbXBpbGF0aW9uPTEiLCAi
LS1taW5pbXVtT3B0aW1pemF0aW9uRGVsYXk9MTAiLCAiLS1tYXhpbXVtT3B0aW1pemF0aW9uRGVs
YXk9MTAiLCAiLS11c2VDb25jdXJyZW50SklUPTAiKQorCitmdW5jdGlvbiBiYXIoYTApIHsKKyAg
ICAnJyBpbnN0YW5jZW9mIGEwOworfQorCitmdW5jdGlvbiBmb28oKSB7CisgICAgb3B0aW1pemVO
ZXh0SW52b2NhdGlvbihmb28pOworICAgIGJhcihTdHJpbmcpOworICAgIGJhcihTeW1ib2wpOwor
fQorCitmb3IgKGxldCBpPTA7IGk8MTE7IGkrKykKKyAgICBmb28oKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>