<?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>215966</bug_id>
          
          <creation_ts>2020-08-28 20:18:34 -0700</creation_ts>
          <short_desc>[JSC] super property with new should be accepted</short_desc>
          <delta_ts>2020-08-29 00:12:14 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ashvayka</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ross.kirsling</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>1683858</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-28 20:18:34 -0700</bug_when>
    <thetext>[JSC] super property with new should be accepted</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683859</commentid>
    <comment_count>1</comment_count>
      <attachid>407522</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-28 20:20:30 -0700</bug_when>
    <thetext>Created attachment 407522
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683860</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-28 20:21:43 -0700</bug_when>
    <thetext>Interestingly, there is no test262 tests for that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683868</commentid>
    <comment_count>3</comment_count>
      <attachid>407522</attachid>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-08-28 22:18:19 -0700</bug_when>
    <thetext>Comment on attachment 407522
Patch

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

This is a great find!
I&apos;ve vetted ~130 LOC between the previous and current check location, everything looks correct.

&gt; Source/JavaScriptCore/ChangeLog:8
&gt; +        While we should reject `new super` / `new super()`, we should accept `new super.property`.

Should we explain why by linking the grammar?
https://tc39.es/ecma262/#prod-SuperProperty is a child production of https://tc39.es/ecma262/#prod-MemberExpression, unlike https://tc39.es/ecma262/#prod-SuperCall.

&gt; Source/JavaScriptCore/parser/Parser.cpp:4977
&gt; +                    semanticFailIfTrue(baseIsSuper, &quot;Cannot use new with super&quot;);

There are 2 error messages that refer invalid super() as &quot;super call&quot; rather than just &quot;super&quot;.
It would be nice to follow that.

&gt; JSTests/stress/super-and-new.js:42
&gt; +            shouldBe(typeof (new super[&quot;hey2&quot;]()), &quot;object&quot;);

A few more ideas on test coverage:

```
new async.super();
new new.target.super();
new super.super``;
?.
```</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683869</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2020-08-28 22:19:11 -0700</bug_when>
    <thetext>(In reply to Yusuke Suzuki from comment #2)
&gt; Interestingly, there is no test262 tests for that.

No open issue either. We should definitely add one since V8 8.4 experiences the same bug. SpiderMonkey is correct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683872</commentid>
    <comment_count>5</comment_count>
      <attachid>407522</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-28 22:32:27 -0700</bug_when>
    <thetext>Comment on attachment 407522
Patch

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

Thanks!

&gt;&gt; Source/JavaScriptCore/ChangeLog:8
&gt;&gt; +        While we should reject `new super` / `new super()`, we should accept `new super.property`.
&gt; 
&gt; Should we explain why by linking the grammar?
&gt; https://tc39.es/ecma262/#prod-SuperProperty is a child production of https://tc39.es/ecma262/#prod-MemberExpression, unlike https://tc39.es/ecma262/#prod-SuperCall.

Sounds good, added.

&gt;&gt; Source/JavaScriptCore/parser/Parser.cpp:4977
&gt;&gt; +                    semanticFailIfTrue(baseIsSuper, &quot;Cannot use new with super&quot;);
&gt; 
&gt; There are 2 error messages that refer invalid super() as &quot;super call&quot; rather than just &quot;super&quot;.
&gt; It would be nice to follow that.

Sounds good. Changed.

&gt;&gt; JSTests/stress/super-and-new.js:42
&gt;&gt; +            shouldBe(typeof (new super[&quot;hey2&quot;]()), &quot;object&quot;);
&gt; 
&gt; A few more ideas on test coverage:
&gt; 
&gt; ```
&gt; new async.super();
&gt; new new.target.super();
&gt; new super.super``;
&gt; ?.
&gt; ```

Added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683873</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-28 22:32:56 -0700</bug_when>
    <thetext>(In reply to Alexey Shvayka from comment #4)
&gt; (In reply to Yusuke Suzuki from comment #2)
&gt; &gt; Interestingly, there is no test262 tests for that.
&gt; 
&gt; No open issue either. We should definitely add one since V8 8.4 experiences
&gt; the same bug. SpiderMonkey is correct.

Interesting! We should contribute it to test262.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683877</commentid>
    <comment_count>7</comment_count>
      <attachid>407528</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-28 22:47:35 -0700</bug_when>
    <thetext>Created attachment 407528
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683881</commentid>
    <comment_count>8</comment_count>
      <attachid>407528</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-08-28 23:08:42 -0700</bug_when>
    <thetext>Comment on attachment 407528
Patch

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

r=me

&gt; LayoutTests/ChangeLog:9
&gt; +        * js/class-syntax-super-expected.txt:
&gt; +        * js/script-tests/class-syntax-super.js:

Hmm, should we move this file out of LayoutTests while we&apos;re at it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683893</commentid>
    <comment_count>9</comment_count>
      <attachid>407528</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-29 00:08:45 -0700</bug_when>
    <thetext>Comment on attachment 407528
Patch

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

&gt;&gt; LayoutTests/ChangeLog:9
&gt;&gt; +        * js/script-tests/class-syntax-super.js:
&gt; 
&gt; Hmm, should we move this file out of LayoutTests while we&apos;re at it?

Yeah, I think we should do that in a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683894</commentid>
    <comment_count>10</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-29 00:09:01 -0700</bug_when>
    <thetext>Mac-debug-wk1 failure is WebAudio ones we already know.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683895</commentid>
    <comment_count>11</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-08-29 00:11:48 -0700</bug_when>
    <thetext>Committed r266322: &lt;https://trac.webkit.org/changeset/266322&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683896</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-08-29 00:12:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/67983175&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407522</attachid>
            <date>2020-08-28 20:20:30 -0700</date>
            <delta_ts>2020-08-28 22:47:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215966-20200828202030.patch</filename>
            <type>text/plain</type>
            <size>4932</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MzE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
OTBiZjQyOWNlM2FmOWY0MWIxYTJjNTExYTYzZGUzOWMxYjAzMzNkLi4wNTM5YTAzZTdjMDU2ZWNk
OGRjZGRhMmRkMDUxZTQ5YTk5ZjllODg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAyMC0wOC0yOCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIHN1cGVyIHByb3BlcnR5IHdpdGggbmV3IHNob3VsZCBiZSBhY2Nl
cHRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1
OTY2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hp
bGUgd2Ugc2hvdWxkIHJlamVjdCBgbmV3IHN1cGVyYCAvIGBuZXcgc3VwZXIoKWAsIHdlIHNob3Vs
ZCBhY2NlcHQgYG5ldyBzdXBlci5wcm9wZXJ0eWAuCisKKyAgICAgICAgKiBwYXJzZXIvUGFyc2Vy
LmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBhcnNlTWVtYmVyRXhwcmVz
c2lvbik6CisKIDIwMjAtMDgtMjggIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4K
IAogICAgICAgICBbSlNDXSBgbmV3IGltcG9ydC5tZXRhKClgIGlzIGFjY2VwdGFibGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAppbmRleCAyNjA2M2JhZDMyNGM2Yjk4M2Ji
MGRmNzUwNmI5ZWI2NGJlN2VhNDEyLi5iYjQ0MTBlNmE0N2I0MWU3YzZmYWJjYzMwYzU2MTdiYWVl
MjdiZGRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC00ODQz
LDcgKzQ4NDMsNiBAQCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVFeHByZXNzaW9u
IFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZU1lbWJlckV4cHJlcwogICAgIGJvb2wgYmFzZUlzU3Vw
ZXIgPSBtYXRjaChTVVBFUik7CiAgICAgYm9vbCBwcmV2aW91c0Jhc2VXYXNTdXBlciA9IGZhbHNl
OwogICAgIGJvb2wgYmFzZUlzSW1wb3J0ID0gbWF0Y2goSU1QT1JUKTsKLSAgICBzZW1hbnRpY0Zh
aWxJZlRydWUoYmFzZUlzU3VwZXIgJiYgbmV3Q291bnQsICJDYW5ub3QgdXNlIG5ldyB3aXRoICIs
IGdldFRva2VuKCkpOwogCiAgICAgYm9vbCBiYXNlSXNOZXdUYXJnZXQgPSBmYWxzZTsKICAgICBp
ZiAobmV3Q291bnQgJiYgbWF0Y2goRE9UKSkgewpAQCAtNDk3NSw2ICs0OTc0LDcgQEAgdGVtcGxh
dGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlRXhwcmVzc2lvbiBQYXJzZXI8TGV4ZXJUeXBlPjo6
cGFyc2VNZW1iZXJFeHByZXMKICAgICAgICAgICAgICAgICBpbnQgbm9uTEhTQ291bnQgPSBtX3Bh
cnNlclN0YXRlLm5vbkxIU0NvdW50OwogICAgICAgICAgICAgICAgIGlmIChuZXdDb3VudCkgewog
ICAgICAgICAgICAgICAgICAgICBuZXdDb3VudC0tOworICAgICAgICAgICAgICAgICAgICBzZW1h
bnRpY0ZhaWxJZlRydWUoYmFzZUlzU3VwZXIsICJDYW5ub3QgdXNlIG5ldyB3aXRoIHN1cGVyIik7
CiAgICAgICAgICAgICAgICAgICAgIEpTVGV4dFBvc2l0aW9uIGV4cHJlc3Npb25FbmQgPSBsYXN0
VG9rZW5FbmRQb3NpdGlvbigpOwogICAgICAgICAgICAgICAgICAgICBUcmVlQXJndW1lbnRzIGFy
Z3VtZW50cyA9IHBhcnNlQXJndW1lbnRzKGNvbnRleHQpOwogICAgICAgICAgICAgICAgICAgICBm
YWlsSWZGYWxzZShhcmd1bWVudHMsICJDYW5ub3QgcGFyc2UgY2FsbCBhcmd1bWVudHMiKTsKQEAg
LTUwNzEsNyArNTA3MSw3IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZUV4cHJl
c3Npb24gUGFyc2VyPExleGVyVHlwZT46OnBhcnNlTWVtYmVyRXhwcmVzCiAgICAgICAgICAgICBi
YXNlID0gY29udGV4dC5jcmVhdGVPcHRpb25hbENoYWluKG9wdGlvbmFsQ2hhaW5Mb2NhdGlvbiwg
b3B0aW9uYWxDaGFpbkJhc2UsIGJhc2UsICFtYXRjaChRVUVTVElPTkRPVCkpOwogICAgIH0gd2hp
bGUgKG1hdGNoKFFVRVNUSU9ORE9UKSk7CiAKLSAgICBzZW1hbnRpY0ZhaWxJZlRydWUoYmFzZUlz
U3VwZXIsICJzdXBlciBpcyBub3QgdmFsaWQgaW4gdGhpcyBjb250ZXh0Iik7CisgICAgc2VtYW50
aWNGYWlsSWZUcnVlKGJhc2VJc1N1cGVyLCBuZXdDb3VudCA/ICJDYW5ub3QgdXNlIG5ldyB3aXRo
IHN1cGVyIiA6ICJzdXBlciBpcyBub3QgdmFsaWQgaW4gdGhpcyBjb250ZXh0Iik7CiAgICAgd2hp
bGUgKG5ld0NvdW50LS0pCiAgICAgICAgIGJhc2UgPSBjb250ZXh0LmNyZWF0ZU5ld0V4cHIobG9j
YXRpb24sIGJhc2UsIGV4cHJlc3Npb25TdGFydCwgbGFzdFRva2VuRW5kUG9zaXRpb24oKSk7CiAg
ICAgcmV0dXJuIGJhc2U7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5nZUxvZyBiL0pTVGVzdHMv
Q2hhbmdlTG9nCmluZGV4IDE2YTNlMjIzNjA2MDk2NjgxOWI0NDg5NTc1N2I3ZjIxZDBhODQ2Nzku
LjZmOTk3MTljNzc4Mjc3MTAyYjJmNmVlZjgwNWYyZDQ3NzE0MDIzM2EgMTAwNjQ0Ci0tLSBhL0pT
VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMjAtMDgtMjggIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KKworICAgICAg
ICBbSlNDXSBzdXBlciBwcm9wZXJ0eSB3aXRoIG5ldyBzaG91bGQgYmUgYWNjZXB0ZWQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTk2NgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3RyZXNzL3N1cGVy
LWFuZC1uZXcuanM6IEFkZGVkLgorICAgICAgICAodGVzdFN5bnRheEVycm9yKToKKyAgICAgICAg
KHNob3VsZEJlKToKKyAgICAgICAgKHRlc3QuQSk6CisgICAgICAgICh0ZXN0LkEucHJvdG90eXBl
LmdldCBoZXkpOgorICAgICAgICAodGVzdC5BLnByb3RvdHlwZS5nZXQgaGV5Mik6CisgICAgICAg
ICh0ZXN0LkIpOgorICAgICAgICAodGVzdCk6CisgICAgICAgICh0ZXN0U3ludGF4RXJyb3IuQSk6
CisKIDIwMjAtMDgtMjggIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAg
ICAgICBbSlNDXSBgbmV3IGltcG9ydC5tZXRhKClgIGlzIGFjY2VwdGFibGUKZGlmZiAtLWdpdCBh
L0pTVGVzdHMvc3RyZXNzL3N1cGVyLWFuZC1uZXcuanMgYi9KU1Rlc3RzL3N0cmVzcy9zdXBlci1h
bmQtbmV3LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjEzMTczZmE2ZmE0ZTc0ODkwMzkyM2UyOWMyZWM4YTU1YzU2
MWYwOTEKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0cmVzcy9zdXBlci1hbmQtbmV3Lmpz
CkBAIC0wLDAgKzEsNjUgQEAKK2Z1bmN0aW9uIHRlc3RTeW50YXhFcnJvcihzY3JpcHQsIG1lc3Nh
Z2UpIHsKKyAgICB2YXIgZXJyb3IgPSBudWxsOworICAgIHRyeSB7CisgICAgICAgIGV2YWwoc2Ny
aXB0KTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICAgIGVycm9yID0gZTsKKyAgICB9CisgICAg
aWYgKCFlcnJvcikKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCBzeW50YXggZXJy
b3Igbm90IHRocm93biIpOworCisgICAgaWYgKFN0cmluZyhlcnJvcikgIT09IG1lc3NhZ2UpCisg
ICAgICAgIHRocm93IG5ldyBFcnJvcigiQmFkIGVycm9yOiAiICsgU3RyaW5nKGVycm9yKSk7Cit9
CisKK2Z1bmN0aW9uIHNob3VsZEJlKGFjdHVhbCwgZXhwZWN0ZWQpIHsKKyAgICBpZiAoYWN0dWFs
ICE9PSBleHBlY3RlZCkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYWQgdmFsdWU6ICcgKyBh
Y3R1YWwpOworfQorCitmdW5jdGlvbiB0ZXN0KCkgeworICAgIGNsYXNzIEEgZXh0ZW5kcyBPYmpl
Y3QgeworICAgICAgICBjb25zdHJ1Y3RvcigpCisgICAgICAgIHsKKyAgICAgICAgICAgIHN1cGVy
KCk7CisgICAgICAgIH0KKyAgICAgICAgZ2V0IGhleSgpCisgICAgICAgIHsKKyAgICAgICAgICAg
IHJldHVybiBPYmplY3Q7CisgICAgICAgIH0KKyAgICAgICAgZ2V0IGhleTIoKQorICAgICAgICB7
CisgICAgICAgICAgICByZXR1cm4gT2JqZWN0OworICAgICAgICB9CisgICAgfQorCisgICAgY2xh
c3MgQiBleHRlbmRzIEEgeworICAgICAgICBjb25zdHJ1Y3RvcigpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIHN1cGVyKCk7CisgICAgICAgICAgICBzaG91bGRCZSh0eXBlb2YgKG5ldyBzdXBlci5o
ZXkpLCAib2JqZWN0Iik7CisgICAgICAgICAgICBzaG91bGRCZSh0eXBlb2YgKG5ldyBzdXBlci5o
ZXkoKSksICJvYmplY3QiKTsKKyAgICAgICAgICAgIHNob3VsZEJlKHR5cGVvZiAobmV3IHN1cGVy
WyJoZXkyIl0oKSksICJvYmplY3QiKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIG5ldyBCKCk7
Cit9CisKK3Rlc3QoKTsKK3Rlc3RTeW50YXhFcnJvcihgCitjbGFzcyBBIGV4dGVuZHMgT2JqZWN0
IHsKKyAgICBjb25zdHJ1Y3RvcigpCisgICAgeworICAgICAgICBuZXcgc3VwZXIoKTsKKyAgICB9
Cit9CitgLCBgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgbmV3IHdpdGggc3VwZXIuYCk7Cit0ZXN0
U3ludGF4RXJyb3IoYAorY2xhc3MgQSBleHRlbmRzIE9iamVjdCB7CisgICAgY29uc3RydWN0b3Io
KQorICAgIHsKKyAgICAgICAgbmV3IHN1cGVyOworICAgIH0KK30KK2AsIGBTeW50YXhFcnJvcjog
Q2Fubm90IHVzZSBuZXcgd2l0aCBzdXBlci5gKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407528</attachid>
            <date>2020-08-28 22:47:35 -0700</date>
            <delta_ts>2020-08-28 23:08:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215966-20200828224734.patch</filename>
            <type>text/plain</type>
            <size>8893</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MzIwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
OTBiZjQyOWNlM2FmOWY0MWIxYTJjNTExYTYzZGUzOWMxYjAzMzNkLi5lZjAxNjUyMjI5ZjE0YmM1
YTU3YjZlM2VmMDBmMDdkMWZhYmQyZWFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAyMC0wOC0yOCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIHN1cGVyIHByb3BlcnR5IHdpdGggbmV3IHNob3VsZCBiZSBhY2Nl
cHRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1
OTY2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hp
bGUgd2Ugc2hvdWxkIHJlamVjdCBgbmV3IHN1cGVyYCAvIGBuZXcgc3VwZXIoKWAsIHdlIHNob3Vs
ZCBhY2NlcHQgYG5ldyBzdXBlci5wcm9wZXJ0eWAuCisgICAgICAgIGh0dHBzOi8vdGMzOS5lcy9l
Y21hMjYyLyNwcm9kLVN1cGVyUHJvcGVydHkgaXMgYSBjaGlsZCBwcm9kdWN0aW9uIG9mIGh0dHBz
Oi8vdGMzOS5lcy9lY21hMjYyLyNwcm9kLU1lbWJlckV4cHJlc3Npb24sCisgICAgICAgIHVubGlr
ZSBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jcHJvZC1TdXBlckNhbGwuIFNvIGBuZXdgIHNob3Vs
ZCBhY2NlcHQgU3VwZXJQcm9wZXJ0eSAoZS5nLiBgc3VwZXIueHh4YCkuCisKKyAgICAgICAgKiBw
YXJzZXIvUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBhcnNl
TWVtYmVyRXhwcmVzc2lvbik6CisKIDIwMjAtMDgtMjggIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtp
QGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBgbmV3IGltcG9ydC5tZXRhKClgIGlzIGFjY2Vw
dGFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAppbmRleCAyNjA2M2Jh
ZDMyNGM2Yjk4M2JiMGRmNzUwNmI5ZWI2NGJlN2VhNDEyLi41YTgxNTE3ODAyMDM2NTM5NmZhOGVm
MzBmYmRjYmI4ZmRjOWRhYWJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFy
c2VyL1BhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIu
Y3BwCkBAIC00ODQzLDcgKzQ4NDMsNiBAQCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRy
ZWVFeHByZXNzaW9uIFBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZU1lbWJlckV4cHJlcwogICAgIGJv
b2wgYmFzZUlzU3VwZXIgPSBtYXRjaChTVVBFUik7CiAgICAgYm9vbCBwcmV2aW91c0Jhc2VXYXNT
dXBlciA9IGZhbHNlOwogICAgIGJvb2wgYmFzZUlzSW1wb3J0ID0gbWF0Y2goSU1QT1JUKTsKLSAg
ICBzZW1hbnRpY0ZhaWxJZlRydWUoYmFzZUlzU3VwZXIgJiYgbmV3Q291bnQsICJDYW5ub3QgdXNl
IG5ldyB3aXRoICIsIGdldFRva2VuKCkpOwogCiAgICAgYm9vbCBiYXNlSXNOZXdUYXJnZXQgPSBm
YWxzZTsKICAgICBpZiAobmV3Q291bnQgJiYgbWF0Y2goRE9UKSkgewpAQCAtNDk3NSw2ICs0OTc0
LDcgQEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlRXhwcmVzc2lvbiBQYXJzZXI8
TGV4ZXJUeXBlPjo6cGFyc2VNZW1iZXJFeHByZXMKICAgICAgICAgICAgICAgICBpbnQgbm9uTEhT
Q291bnQgPSBtX3BhcnNlclN0YXRlLm5vbkxIU0NvdW50OwogICAgICAgICAgICAgICAgIGlmIChu
ZXdDb3VudCkgewogICAgICAgICAgICAgICAgICAgICBuZXdDb3VudC0tOworICAgICAgICAgICAg
ICAgICAgICBzZW1hbnRpY0ZhaWxJZlRydWUoYmFzZUlzU3VwZXIsICJDYW5ub3QgdXNlIG5ldyB3
aXRoIHN1cGVyIGNhbGwiKTsKICAgICAgICAgICAgICAgICAgICAgSlNUZXh0UG9zaXRpb24gZXhw
cmVzc2lvbkVuZCA9IGxhc3RUb2tlbkVuZFBvc2l0aW9uKCk7CiAgICAgICAgICAgICAgICAgICAg
IFRyZWVBcmd1bWVudHMgYXJndW1lbnRzID0gcGFyc2VBcmd1bWVudHMoY29udGV4dCk7CiAgICAg
ICAgICAgICAgICAgICAgIGZhaWxJZkZhbHNlKGFyZ3VtZW50cywgIkNhbm5vdCBwYXJzZSBjYWxs
IGFyZ3VtZW50cyIpOwpAQCAtNTA3MSw3ICs1MDcxLDcgQEAgdGVtcGxhdGUgPGNsYXNzIFRyZWVC
dWlsZGVyPiBUcmVlRXhwcmVzc2lvbiBQYXJzZXI8TGV4ZXJUeXBlPjo6cGFyc2VNZW1iZXJFeHBy
ZXMKICAgICAgICAgICAgIGJhc2UgPSBjb250ZXh0LmNyZWF0ZU9wdGlvbmFsQ2hhaW4ob3B0aW9u
YWxDaGFpbkxvY2F0aW9uLCBvcHRpb25hbENoYWluQmFzZSwgYmFzZSwgIW1hdGNoKFFVRVNUSU9O
RE9UKSk7CiAgICAgfSB3aGlsZSAobWF0Y2goUVVFU1RJT05ET1QpKTsKIAotICAgIHNlbWFudGlj
RmFpbElmVHJ1ZShiYXNlSXNTdXBlciwgInN1cGVyIGlzIG5vdCB2YWxpZCBpbiB0aGlzIGNvbnRl
eHQiKTsKKyAgICBzZW1hbnRpY0ZhaWxJZlRydWUoYmFzZUlzU3VwZXIsIG5ld0NvdW50ID8gIkNh
bm5vdCB1c2UgbmV3IHdpdGggc3VwZXIgY2FsbCIgOiAic3VwZXIgaXMgbm90IHZhbGlkIGluIHRo
aXMgY29udGV4dCIpOwogICAgIHdoaWxlIChuZXdDb3VudC0tKQogICAgICAgICBiYXNlID0gY29u
dGV4dC5jcmVhdGVOZXdFeHByKGxvY2F0aW9uLCBiYXNlLCBleHByZXNzaW9uU3RhcnQsIGxhc3RU
b2tlbkVuZFBvc2l0aW9uKCkpOwogICAgIHJldHVybiBiYXNlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGU1MTE1N2M1OTg4
NzE5ZjM3MmUwOGFiYmRlNzVkM2VkM2YyZDEyYjguLjU3YmUxNmU5NTRlMWEzZWFlYTMxNDE1ZTc3
NjVlMDVhYjU2NzQzNWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMC0wOC0yOCAgWXVzdWtl
IFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgorCisgICAgICAgIFtKU0NdIHN1cGVyIHByb3Bl
cnR5IHdpdGggbmV3IHNob3VsZCBiZSBhY2NlcHRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1OTY2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBqcy9jbGFzcy1zeW50YXgtc3VwZXItZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9jbGFzcy1zeW50YXgtc3VwZXIuanM6CisK
IDIwMjAtMDgtMjggIExhdXJvIE1vdXJhICA8bG1vdXJhQGlnYWxpYS5jb20+CiAKICAgICAgICAg
W1dQRV0gR2FyZGVuaW5nIGFuZCByZWJhc2VsaW5pbmcKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2pzL2NsYXNzLXN5bnRheC1zdXBlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9jbGFz
cy1zeW50YXgtc3VwZXItZXhwZWN0ZWQudHh0CmluZGV4IDA4M2NkOGVkOTMxMTc1MWZkY2RlYzY3
OTRlMTQzMzUwYzdiODlhZDEuLjQzNjkyOWExYTU0NjU3ZjhjYTAxYTMxNjNiZDE2ZTRlZjk5MDMz
MDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL2NsYXNzLXN5bnRheC1zdXBlci1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvanMvY2xhc3Mtc3ludGF4LXN1cGVyLWV4cGVjdGVkLnR4
dApAQCAtMTgsNyArMTgsNyBAQCBQQVNTIChuZXcgU2Vjb25kRGVyaXZlZCkuY2hhaW5NZXRob2Qo
KS50b1N0cmluZygpOjo6WyJiYXNlIiwgImRlcml2ZWQiLCAic2Vjb25kRAogUEFTUyB4ID0gY2xh
c3MgZXh0ZW5kcyBCYXNlIHsgY29uc3RydWN0b3IoKSB7IHN1cGVyKCk7IH0gc3VwZXIoKSB7fSB9
CiBQQVNTIHggPSBjbGFzcyBleHRlbmRzIEJhc2UgeyBjb25zdHJ1Y3RvcigpIHsgc3VwZXIoKTsg
fSBtZXRob2QoKSB7IHN1cGVyKCkgfSB9Ojo6U3ludGF4RXJyb3I6IHN1cGVyIGlzIG5vdCB2YWxp
ZCBpbiB0aGlzIGNvbnRleHQuCiBQQVNTIHggPSBjbGFzcyBleHRlbmRzIEJhc2UgeyBjb25zdHJ1
Y3RvcigpIHsgc3VwZXIoKTsgfSBtZXRob2QoKSB7IHN1cGVyIH0gfTo6OlN5bnRheEVycm9yOiBz
dXBlciBpcyBub3QgdmFsaWQgaW4gdGhpcyBjb250ZXh0LgotUEFTUyB4ID0gY2xhc3MgZXh0ZW5k
cyBCYXNlIHsgY29uc3RydWN0b3IoKSB7IHN1cGVyKCk7IH0gbWV0aG9kKCkgeyByZXR1cm4gbmV3
IHN1cGVyIH0gfTo6OlN5bnRheEVycm9yOiBDYW5ub3QgdXNlIG5ldyB3aXRoIHN1cGVyLgorUEFT
UyB4ID0gY2xhc3MgZXh0ZW5kcyBCYXNlIHsgY29uc3RydWN0b3IoKSB7IHN1cGVyKCk7IH0gbWV0
aG9kKCkgeyByZXR1cm4gbmV3IHN1cGVyIH0gfTo6OlN5bnRheEVycm9yOiBDYW5ub3QgdXNlIG5l
dyB3aXRoIHN1cGVyIGNhbGwuCiBQQVNTIHggPSBjbGFzcyBleHRlbmRzIEJhc2UgeyBjb25zdHJ1
Y3RvcigpIHsgc3VwZXIoKTsgfSBtZXRob2QxKCkgeyBkZWxldGUgKHN1cGVyLmZvbykgfSBtZXRo
b2QyKCkgeyBkZWxldGUgc3VwZXJbImZvbyJdIH0gfQogUEFTUyAobmV3IHgpLm1ldGhvZDEoKTo6
OlJlZmVyZW5jZUVycm9yOiBDYW5ub3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkKIFBBU1MgKG5l
dyB4KS5tZXRob2QyKCk6OjpSZWZlcmVuY2VFcnJvcjogQ2Fubm90IGRlbGV0ZSBhIHN1cGVyIHBy
b3BlcnR5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvY2xhc3Mtc3lu
dGF4LXN1cGVyLmpzIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2NsYXNzLXN5bnRheC1z
dXBlci5qcwppbmRleCA1ODY2YTc2OGFiNjg1NjJiMmJlMWMzN2ZmODllMjNiODZhOTU1NTA4Li41
Y2I1NzMwNzVmZGY2ZWY4NDEzZjBhZGE2NGZlODQ3NWM5NTJiN2IxIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvY2xhc3Mtc3ludGF4LXN1cGVyLmpzCisrKyBiL0xheW91
dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9jbGFzcy1zeW50YXgtc3VwZXIuanMKQEAgLTEwMSw3ICsx
MDEsNyBAQCBmdW5jdGlvbiBzaG91bGRCZUZhbHNlKHMpIHsKIHNob3VsZFRocm93KCd4ID0gY2xh
c3MgZXh0ZW5kcyBCYXNlIHsgY29uc3RydWN0b3IoKSB7IHN1cGVyKCk7IH0gbWV0aG9kKCkgeyBz
dXBlcigpIH0gfScsCiAgICAgJyJTeW50YXhFcnJvcjogc3VwZXIgaXMgbm90IHZhbGlkIGluIHRo
aXMgY29udGV4dC4iJyk7CiBzaG91bGRUaHJvdygneCA9IGNsYXNzIGV4dGVuZHMgQmFzZSB7IGNv
bnN0cnVjdG9yKCkgeyBzdXBlcigpOyB9IG1ldGhvZCgpIHsgc3VwZXIgfSB9JywgJyJTeW50YXhF
cnJvcjogc3VwZXIgaXMgbm90IHZhbGlkIGluIHRoaXMgY29udGV4dC4iJyk7Ci1zaG91bGRUaHJv
dygneCA9IGNsYXNzIGV4dGVuZHMgQmFzZSB7IGNvbnN0cnVjdG9yKCkgeyBzdXBlcigpOyB9IG1l
dGhvZCgpIHsgcmV0dXJuIG5ldyBzdXBlciB9IH0nLCAnIlN5bnRheEVycm9yOiBDYW5ub3QgdXNl
IG5ldyB3aXRoIHN1cGVyLiInKTsKK3Nob3VsZFRocm93KCd4ID0gY2xhc3MgZXh0ZW5kcyBCYXNl
IHsgY29uc3RydWN0b3IoKSB7IHN1cGVyKCk7IH0gbWV0aG9kKCkgeyByZXR1cm4gbmV3IHN1cGVy
IH0gfScsICciU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgbmV3IHdpdGggc3VwZXIgY2FsbC4iJyk7
CiBzaG91bGROb3RUaHJvdygneCA9IGNsYXNzIGV4dGVuZHMgQmFzZSB7IGNvbnN0cnVjdG9yKCkg
eyBzdXBlcigpOyB9IG1ldGhvZDEoKSB7IGRlbGV0ZSAoc3VwZXIuZm9vKSB9IG1ldGhvZDIoKSB7
IGRlbGV0ZSBzdXBlclsiZm9vIl0gfSB9Jyk7CiBzaG91bGRUaHJvdygnKG5ldyB4KS5tZXRob2Qx
KCknLCAnIlJlZmVyZW5jZUVycm9yOiBDYW5ub3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiJyk7
CiBzaG91bGRUaHJvdygnKG5ldyB4KS5tZXRob2QyKCknLCAnIlJlZmVyZW5jZUVycm9yOiBDYW5u
b3QgZGVsZXRlIGEgc3VwZXIgcHJvcGVydHkiJyk7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL0NoYW5n
ZUxvZyBiL0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDE2YTNlMjIzNjA2MDk2NjgxOWI0NDg5NTc1
N2I3ZjIxZDBhODQ2NzkuLjg5NmE5NTljMWM0OGRiNzM3ZDU4MWI0ZWYzODMwZTFhN2IyMjNhNDEg
MTAwNjQ0Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMjAtMDgtMjggIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxl
LmNvbT4KKworICAgICAgICBbSlNDXSBzdXBlciBwcm9wZXJ0eSB3aXRoIG5ldyBzaG91bGQgYmUg
YWNjZXB0ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIxNTk2NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogc3RyZXNzL3N1cGVyLWFuZC1uZXcuanM6IEFkZGVkLgorICAgICAgICAodGVzdFN5bnRheEVy
cm9yKToKKyAgICAgICAgKHNob3VsZEJlKToKKyAgICAgICAgKHRlc3QuQSk6CisgICAgICAgICh0
ZXN0LkEucHJvdG90eXBlLmdldCBoZXkpOgorICAgICAgICAodGVzdC5BLnByb3RvdHlwZS5nZXQg
aGV5Mik6CisgICAgICAgICh0ZXN0LkEucHJvdG90eXBlLnN1cGVyKToKKyAgICAgICAgKHRlc3Qu
Qi5nZXQgc3VwZXIpOgorCiAyMDIwLTA4LTI4ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0pTQ10gYG5ldyBpbXBvcnQubWV0YSgpYCBpcyBhY2NlcHRhYmxl
CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9zdXBlci1hbmQtbmV3LmpzIGIvSlNUZXN0cy9z
dHJlc3Mvc3VwZXItYW5kLW5ldy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNDFmMDAzMzkwMmQzNzc3NDI4YTIz
NTg1N2UzYTEwMjZmNThjNmQ4Ci0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9zdHJlc3Mvc3Vw
ZXItYW5kLW5ldy5qcwpAQCAtMCwwICsxLDg1IEBACitmdW5jdGlvbiB0ZXN0U3ludGF4RXJyb3Io
c2NyaXB0LCBtZXNzYWdlKSB7CisgICAgdmFyIGVycm9yID0gbnVsbDsKKyAgICB0cnkgeworICAg
ICAgICBldmFsKHNjcmlwdCk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBlcnJvciA9IGU7
CisgICAgfQorICAgIGlmICghZXJyb3IpCisgICAgICAgIHRocm93IG5ldyBFcnJvcigiRXhwZWN0
ZWQgc3ludGF4IGVycm9yIG5vdCB0aHJvd24iKTsKKworICAgIGlmIChTdHJpbmcoZXJyb3IpICE9
PSBtZXNzYWdlKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkJhZCBlcnJvcjogIiArIFN0cmlu
ZyhlcnJvcikpOworfQorCitmdW5jdGlvbiBzaG91bGRCZShhY3R1YWwsIGV4cGVjdGVkKSB7Cisg
ICAgaWYgKGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcignYmFk
IHZhbHVlOiAnICsgYWN0dWFsKTsKK30KKworZnVuY3Rpb24gdGVzdCgpIHsKKyAgICBsZXQgYXN5
bmMgPSB7CisgICAgICAgIHN1cGVyOiBPYmplY3QKKyAgICB9OworICAgIGNsYXNzIEEgZXh0ZW5k
cyBPYmplY3QgeworICAgICAgICBjb25zdHJ1Y3RvcigpCisgICAgICAgIHsKKyAgICAgICAgICAg
IHN1cGVyKCk7CisgICAgICAgIH0KKyAgICAgICAgZ2V0IGhleSgpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIHJldHVybiBPYmplY3Q7CisgICAgICAgIH0KKyAgICAgICAgZ2V0IGhleTIoKQorICAg
ICAgICB7CisgICAgICAgICAgICByZXR1cm4gT2JqZWN0OworICAgICAgICB9CisgICAgICAgIHN1
cGVyKCkKKyAgICAgICAgeworICAgICAgICAgICAgcmV0dXJuIE9iamVjdDsKKyAgICAgICAgfQor
ICAgIH0KKworICAgIGNsYXNzIEIgZXh0ZW5kcyBBIHsKKyAgICAgICAgY29uc3RydWN0b3IoKQor
ICAgICAgICB7CisgICAgICAgICAgICBzdXBlcigpOworICAgICAgICAgICAgc2hvdWxkQmUodHlw
ZW9mIChuZXcgc3VwZXIuaGV5KSwgIm9iamVjdCIpOworICAgICAgICAgICAgc2hvdWxkQmUodHlw
ZW9mIChuZXcgc3VwZXIuaGV5KCkpLCAib2JqZWN0Iik7CisgICAgICAgICAgICBzaG91bGRCZSh0
eXBlb2YgKG5ldyBzdXBlclsiaGV5MiJdKCkpLCAib2JqZWN0Iik7CisgICAgICAgICAgICBzaG91
bGRCZSh0eXBlb2YgbmV3IHN1cGVyLnN1cGVyYGAsICJvYmplY3QiKTsKKyAgICAgICAgICAgIHNo
b3VsZEJlKHR5cGVvZiBuZXcgYXN5bmMuc3VwZXIoKSwgIm9iamVjdCIpOworICAgICAgICAgICAg
c2hvdWxkQmUodHlwZW9mIG5ldy50YXJnZXQuc3VwZXIoKSwgIm9iamVjdCIpOworICAgICAgICB9
CisKKyAgICAgICAgc3RhdGljIGdldCBzdXBlcigpIHsgcmV0dXJuIE9iamVjdDsgfQorICAgIH0K
KworICAgIG5ldyBCKCk7Cit9CisKK3Rlc3QoKTsKK3Rlc3RTeW50YXhFcnJvcihgCitjbGFzcyBB
IGV4dGVuZHMgT2JqZWN0IHsKKyAgICBjb25zdHJ1Y3RvcigpCisgICAgeworICAgICAgICBuZXcg
c3VwZXIoKTsKKyAgICB9Cit9CitgLCBgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgbmV3IHdpdGgg
c3VwZXIgY2FsbC5gKTsKK3Rlc3RTeW50YXhFcnJvcihgCitjbGFzcyBBIGV4dGVuZHMgT2JqZWN0
IHsKKyAgICBjb25zdHJ1Y3RvcigpCisgICAgeworICAgICAgICBuZXcgc3VwZXI7CisgICAgfQor
fQorYCwgYFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIG5ldyB3aXRoIHN1cGVyIGNhbGwuYCk7Cit0
ZXN0U3ludGF4RXJyb3IoYAorY2xhc3MgQSBleHRlbmRzIE9iamVjdCB7CisgICAgY29uc3RydWN0
b3IoKQorICAgIHsKKyAgICAgICAgbmV3IHN1cGVyPy5vaygpOworICAgIH0KK30KK2AsIGBTeW50
YXhFcnJvcjogQ2Fubm90IGNhbGwgY29uc3RydWN0b3IgaW4gYW4gb3B0aW9uYWwgY2hhaW4uYCk7
Cg==
</data>
<flag name="review"
          id="422903"
          type_id="1"
          status="+"
          setter="ross.kirsling"
    />
          </attachment>
      

    </bug>

</bugzilla>