<?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>171041</bug_id>
          
          <creation_ts>2017-04-19 22:17:54 -0700</creation_ts>
          <short_desc>We incorrectly throw a syntax error when declaring a top level for-loop iteration variable the same as a parameter</short_desc>
          <delta_ts>2025-05-14 09:58:38 -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>JavaScriptCore</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>macOS 10.12</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Rob Stutton">rob</reporter>
          <assigned_to name="Saam Barati">saam</assigned_to>
          <cc>ap</cc>
    
    <cc>ashwinkumar9944</cc>
    
    <cc>benjamin</cc>
    
    <cc>buildbot</cc>
    
    <cc>cherrylzapantaujl75</cc>
    
    <cc>ciro.cristhian</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ege96ily53</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>gskachkov</cc>
    
    <cc>jfbastien</cc>
    
    <cc>jimmycrosby45</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>lasalep928</cc>
    
    <cc>mark.lam</cc>
    
    <cc>michaeljordanz1108</cc>
    
    <cc>msaboff</cc>
    
    <cc>pkoszulinski</cc>
    
    <cc>quoteswithinspiration</cc>
    
    <cc>saam</cc>
    
    <cc>solya9a</cc>
    
    <cc>ticaiolima</cc>
    
    <cc>VetaEVega</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1299007</commentid>
    <comment_count>0</comment_count>
    <who name="Rob Stutton">rob</who>
    <bug_when>2017-04-19 22:17:54 -0700</bug_when>
    <thetext>I wouldn&apos;t write code like this (below) myself, but it was emitted by the minifier and so my app doesn&apos;t work in Safari, or Safari TP.
The code looks legal to me ...

let e = e =&gt; {
    console.log(e);
    for (let e of [1, 2, 3]) // Cannot declare a let variable twice: &apos;e&apos;.
        console.log(e);
};</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1299921</commentid>
    <comment_count>1</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-04-21 15:04:24 -0700</bug_when>
    <thetext>(In reply to Rob Stutton from comment #0)
&gt; I wouldn&apos;t write code like this (below) myself, but it was emitted by the
&gt; minifier and so my app doesn&apos;t work in Safari, or Safari TP.
&gt; The code looks legal to me ...
&gt; 
&gt; let e = e =&gt; {
&gt;     console.log(e);
&gt;     for (let e of [1, 2, 3]) // Cannot declare a let variable twice: &apos;e&apos;.
&gt;         console.log(e);
&gt; };

Yeah this looks like it should not be a syntax error, however, I think this should be:
```
let x = (e) =&gt; { let e; }
```

I bet the code that ensures that the above is a syntax error is kicking in when it shouldn&apos;t be.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1306492</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-05-09 12:15:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/32082516&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1311166</commentid>
    <comment_count>3</comment_count>
      <attachid>310818</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-05-21 15:10:04 -0700</bug_when>
    <thetext>Created attachment 310818
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1311167</commentid>
    <comment_count>4</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-05-21 15:13:02 -0700</bug_when>
    <thetext>Attachment 310818 did not pass style-queue:


ERROR: Source/JavaScriptCore/ChangeLog:13:  Line contains tab character.  [whitespace/tab] [5]
ERROR: Source/JavaScriptCore/ChangeLog:20:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 2 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1311168</commentid>
    <comment_count>5</comment_count>
      <attachid>310819</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-05-21 15:19:51 -0700</bug_when>
    <thetext>Created attachment 310819
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1311214</commentid>
    <comment_count>6</comment_count>
      <attachid>310819</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-05-21 22:04:44 -0700</bug_when>
    <thetext>Comment on attachment 310819
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1311221</commentid>
    <comment_count>7</comment_count>
      <attachid>310819</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-21 22:47:36 -0700</bug_when>
    <thetext>Comment on attachment 310819
patch

Clearing flags on attachment: 310819

Committed r217200: &lt;http://trac.webkit.org/changeset/217200&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1311222</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-05-21 22:47:38 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1345386</commentid>
    <comment_count>9</comment_count>
    <who name="Piotrek Koszuliński (Reinmar)">pkoszulinski</who>
    <bug_when>2017-09-05 02:18:01 -0700</bug_when>
    <thetext>How can this patch be not released yet (in a stable channel)? Since May? It will cause most of apps written in minified ES6 to fail.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>310818</attachid>
            <date>2017-05-21 15:10:04 -0700</date>
            <delta_ts>2017-05-21 15:19:51 -0700</delta_ts>
            <desc>patch</desc>
            <filename>c-backup.diff</filename>
            <type>text/plain</type>
            <size>11355</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMTcxOTgpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDI2IEBACisyMDE3LTA1LTIxICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUu
Y29tPgorCisgICAgICAgIFdlIGluY29ycmVjdGx5IHRocm93IGEgc3ludGF4IGVycm9yIHdoZW4g
ZGVjbGFyaW5nIGEgdG9wIGxldmVsIGZvci1sb29wIGl0ZXJhdGlvbiB2YXJpYWJsZSB0aGUgc2Ft
ZSBhcyBhIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTcxMDQxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMjA4MjUxNj4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVzcy9sZXhp
Y2FsLXNjb3BpbmctZm9yLWxvb3AuanM6IEFkZGVkLgorICAgICAgICAoYXNzZXJ0KToKKyAgICAg
ICAgKHRlc3QxKToKKyAgICAgICAgKHRlc3QyKToKKyAgICAgICAgKHRlc3QzKToKKyAgICAgICAg
KHRlc3Q0KToKKyAgICAgICAgKHRlc3Q1KToKKyAgICAgICAgKHRlc3Q2KToKKyAgICAgICAgKGxl
dC50ZXN0Nyk6CisgICAgICAgIChsZXQudGVzdDgpOgorICAgICAgICAobGV0LnRlc3Q5KToKKyAg
ICAgICAgKGxldC50ZXN0MTApOgorICAgICAgICAobGV0LnRlc3QxMSk6CisgICAgICAgIChsZXQu
dGVzdDEyKToKKwogMjAxNy0wNS0xOSAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAK
ICAgICAgICAgW1JlLWxhbmRpbmddIERGRzo6U3BlY3VsYXRpdmVKSVQ6OnBpY2tDYW5UcmFtcGxl
KCkgaXMgd3JvbmdseSBpZ25vcmluZyByZXN1bHQgcmVnaXN0ZXJzLgpJbmRleDogSlNUZXN0cy9z
dHJlc3MvbGV4aWNhbC1zY29waW5nLWZvci1sb29wLmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMv
c3RyZXNzL2xleGljYWwtc2NvcGluZy1mb3ItbG9vcC5qcwkobm9uZXhpc3RlbnQpCisrKyBKU1Rl
c3RzL3N0cmVzcy9sZXhpY2FsLXNjb3BpbmctZm9yLWxvb3AuanMJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSw2MSBAQAorJ3VzZSBzdHJpY3QnOworCitmdW5jdGlvbiBhc3NlcnQoYikgeworICAg
IGlmICghYikKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJCYWQiKTsKK30KKworZnVuY3Rpb24g
dGVzdDEoeCkgeworICAgIGZvciAobGV0IHggPSAyMDsgeCA8IDMwOyArK3gpIHsgfQorICAgIHJl
dHVybiB4OworfQorZnVuY3Rpb24gdGVzdDIoeCkgeworICAgIGZvciAobGV0IHggb2YgWzEsMiwz
XSkgeyB9CisgICAgcmV0dXJuIHg7Cit9CitmdW5jdGlvbiB0ZXN0Myh4KSB7CisgICAgZm9yIChs
ZXQgeCBpbiB7fSkgeyB9CisgICAgcmV0dXJuIHg7Cit9CitmdW5jdGlvbiB0ZXN0NCh4KSB7Cisg
ICAgbGV0IGkgPSAwOworICAgIGZvciAoY29uc3QgeCA9IDIwOyBpIDwgMTsgKytpKSB7IH0KKyAg
ICByZXR1cm4geDsKK30KK2Z1bmN0aW9uIHRlc3Q1KHgpIHsKKyAgICBmb3IgKGNvbnN0IHggb2Yg
WzEsIDIsIDNdKSB7IH0KKyAgICByZXR1cm4geDsKK30KK2Z1bmN0aW9uIHRlc3Q2KHgpIHsKKyAg
ICBmb3IgKGNvbnN0IHggaW4ge30pIHsgfQorICAgIHJldHVybiB4OworfQorCitsZXQgdGVzdDcg
PSAoeCkgPT4geworICAgIGZvciAobGV0IHggPSAyMDsgeCA8IDMwOyArK3gpIHsgfQorICAgIHJl
dHVybiB4OworfQorbGV0IHRlc3Q4ID0gKHgpID0+IHsKKyAgICBmb3IgKGxldCB4IG9mIFsxLDIs
M10pIHsgfQorICAgIHJldHVybiB4OworfQorbGV0IHRlc3Q5ID0gKHgpID0+IHsKKyAgICBmb3Ig
KGxldCB4IGluIHt9KSB7IH0KKyAgICByZXR1cm4geDsKK30KK2xldCB0ZXN0MTAgPSAoeCkgPT4g
eworICAgIGxldCBpID0gMDsKKyAgICBmb3IgKGNvbnN0IHggPSAyMDsgaSA8IDE7ICsraSkgeyB9
CisgICAgcmV0dXJuIHg7Cit9CitsZXQgdGVzdDExID0gKHgpID0+IHsKKyAgICBmb3IgKGNvbnN0
IHggb2YgWzEsIDIsIDNdKSB7IH0KKyAgICByZXR1cm4geDsKK30KK2xldCB0ZXN0MTIgPSAoeCkg
PT4geworICAgIGZvciAoY29uc3QgeCBpbiB7fSkgeyB9CisgICAgcmV0dXJuIHg7Cit9CisKK2Zv
ciAobGV0IHRlc3Qgb2YgW3Rlc3QxLCB0ZXN0MiwgdGVzdDMsIHRlc3Q0LCB0ZXN0NSwgdGVzdDcs
IHRlc3Q4LCB0ZXN0OSwgdGVzdDEwLCB0ZXN0MTEsIHRlc3QxMl0pCisgICAgYXNzZXJ0KHRlc3Qo
ImZvbyIpID09PSAiZm9vIik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9u
IDIxNzE5MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwzMSBAQAorMjAxNy0wNS0yMSAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFw
cGxlLmNvbT4KKworICAgICAgICBXZSBpbmNvcnJlY3RseSB0aHJvdyBhIHN5bnRheCBlcnJvciB3
aGVuIGRlY2xhcmluZyBhIHRvcCBsZXZlbCBmb3ItbG9vcCBpdGVyYXRpb24gdmFyaWFibGUgdGhl
IHNhbWUgYXMgYSBwYXJhbWV0ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3MTA0MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzIwODI1MTY+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2Ugd2VyZSB0
cmVhdGluZyBhIGZvci1sb29wIHZhcmlhYmxlIGRlY2xhcmF0aW9uIHBvdGVudGlhbGx5IGFzIGEg
dG9wCisgICAgICAgIGxldmVsIHN0YXRlbWVudCwgZS5nLCBpbiBhIHByb2dyYW0gbGlrZSB0aGlz
OgorICAgICAgICBgYGAKKyAgICAgICAgZnVuY3Rpb24gZm9vKCkgeworICAgICAgICAJZm9yIChs
ZXQgdmFyaWFibGUgb2YgZXhwcikgeyB9CisgICAgICAgIH0KKyAgICAgICAgYGBgCisgICAgICAg
IEJ1dCB3ZSBzaG91bGQgbm90IGJlLiBUaGlzIGhhZCB0aGUgY29uc2VxdWVuY2Ugb2YgbWFraW5n
IHRoaXMgdHlwZSBvZiBwcm9ncmFtCisgICAgICAgIHRocm93IGEgc3ludGF4IGVycm9yOgorICAg
ICAgICBgYGAKKyAgICAgICAgZnVuY3Rpb24gZm9vKGFyZykgeworICAgICAgICAJZm9yIChsZXQg
YXJnIG9mIGV4cHIpIHsgfQorICAgICAgICB9CisgICAgICAgIGBgYAorICAgICAgICBldmVuIHRo
b3VnaCBpdCBzaG91bGQgbm90LiBUaGUgZml4IGlzIHNpbXBsZSwgd2UganVzdCBuZWVkIHRvIGlu
Y3JlbWVudCB0aGUKKyAgICAgICAgc3RhdGVtZW50IGRlcHRoIGJlZm9yZSBwYXJzaW5nIGFueXRo
aW5nIGluc2lkZSB0aGUgZm9yIGxvb3AuCisKKyAgICAgICAgKiBwYXJzZXIvUGFyc2VyLmNwcDoK
KyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBhcnNlRm9yU3RhdGVtZW50KToKKwog
MjAxNy0wNS0yMCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAg
ICAgICBVbnJldmlld2VkLCBhZGQgc2NvcGUucmVsZWFzZSgpIHRvIHByb3BlcnR5SXNFbnVtZXJh
YmxlIGZ1bmN0aW9ucy4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2Vy
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5j
cHAJKHJldmlzaW9uIDIxNzE0MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFy
c2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTEzMyw2ICsxMTMzLDEwIEBAIHRlbXBsYXRlIDxj
bGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWUKICAgICBKU1Rva2VuTG9jYXRpb24gbG9jYXRp
b24odG9rZW5Mb2NhdGlvbigpKTsKICAgICBpbnQgc3RhcnRMaW5lID0gdG9rZW5MaW5lKCk7CiAg
ICAgbmV4dCgpOworCisgICAgRGVwdGhNYW5hZ2VyIHN0YXRlbWVudERlcHRoKCZtX3N0YXRlbWVu
dERlcHRoKTsKKyAgICBtX3N0YXRlbWVudERlcHRoKys7CisKICAgICBoYW5kbGVQcm9kdWN0aW9u
T3JGYWlsKE9QRU5QQVJFTiwgIigiLCAic3RhcnQiLCAiZm9yLWxvb3AgaGVhZGVyIik7CiAgICAg
aW50IG5vbkxIU0NvdW50ID0gbV9wYXJzZXJTdGF0ZS5ub25MSFNDb3VudDsKICAgICBpbnQgZGVj
bGFyYXRpb25zID0gMDsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNzE0MCkKKysrIExheW91dFRlc3Rz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE3LTA1LTIxICBT
YWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorCisgICAgICAgIFdlIGluY29ycmVjdGx5
IHRocm93IGEgc3ludGF4IGVycm9yIHdoZW4gZGVjbGFyaW5nIGEgdG9wIGxldmVsIGZvci1sb29w
IGl0ZXJhdGlvbiB2YXJpYWJsZSB0aGUgc2FtZSBhcyBhIHBhcmFtZXRlcgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcxMDQxCisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS8zMjA4MjUxNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGpzL3BhcnNlci1zeW50YXgtY2hlY2stZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGpzL3NjcmlwdC10ZXN0cy9wYXJzZXItc3ludGF4LWNoZWNrLmpzOgorCiAyMDE3LTA1
LTE5ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAgIExheW91
dFRlc3QganMvUHJvbWlzZS10eXBlcy5odG1sIGlzIGEgZmxha3kgZmFpbHVyZSAoVW5oYW5kbGVk
IFByb21pc2UgUmVqZWN0aW9uIG1lc3NhZ2VzKQpJbmRleDogTGF5b3V0VGVzdHMvanMvcGFyc2Vy
LXN5bnRheC1jaGVjay1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvanMv
cGFyc2VyLXN5bnRheC1jaGVjay1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIxNzE0MCkKKysrIExh
eW91dFRlc3RzL2pzL3BhcnNlci1zeW50YXgtY2hlY2stZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNv
cHkpCkBAIC01NTYsNiArNTU2LDU0IEBAIFBBU1MgSW52YWxpZDogImZvciAoY29uc3Qge2l9ID0g
MjAgaW4gYikKIFBBU1MgSW52YWxpZDogImZ1bmN0aW9uIGYoKSB7IGZvciAoY29uc3Qge2l9ID0g
MjAgaW4gYikgeyB9IH0iLiBQcm9kdWNlZCB0aGUgZm9sbG93aW5nIHN5bnRheCBlcnJvcjogIlN5
bnRheEVycm9yOiBDYW5ub3QgYXNzaWduIHRvIHRoZSBsb29wIHZhcmlhYmxlIGluc2lkZSBhIGZv
ci1pbiBsb29wIGhlYWRlci4iCiBQQVNTIEludmFsaWQ6ICJmb3IgKGxldCB7aX0gPSAyMCBpbiBi
KSB7IH0iLiBQcm9kdWNlZCB0aGUgZm9sbG93aW5nIHN5bnRheCBlcnJvcjogIlN5bnRheEVycm9y
OiBDYW5ub3QgYXNzaWduIHRvIHRoZSBsb29wIHZhcmlhYmxlIGluc2lkZSBhIGZvci1pbiBsb29w
IGhlYWRlci4iCiBQQVNTIEludmFsaWQ6ICJmdW5jdGlvbiBmKCkgeyBmb3IgKGxldCB7aX0gPSAy
MCBpbiBiKSB7IH0gfSIuIFByb2R1Y2VkIHRoZSBmb2xsb3dpbmcgc3ludGF4IGVycm9yOiAiU3lu
dGF4RXJyb3I6IENhbm5vdCBhc3NpZ24gdG8gdGhlIGxvb3AgdmFyaWFibGUgaW5zaWRlIGEgZm9y
LWluIGxvb3AgaGVhZGVyLiIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIHgoaSkgeyBmb3IgKGxl
dCBpIGluIHt9KSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9u
IHgoaSkgeyBmb3IgKGxldCBpIGluIHt9KSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rp
b24geChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rp
b24gZigpIHsgZnVuY3Rpb24geChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9IH0iCitQQVNT
IFZhbGlkOiAgICJmdW5jdGlvbiB4KGkpIHsgZm9yIChsZXQgaSBvZiBbXSkgeyB9IH0iCitQQVNT
IFZhbGlkOiAgICJmdW5jdGlvbiBmKCkgeyBmdW5jdGlvbiB4KGkpIHsgZm9yIChsZXQgaSBvZiBb
XSkgeyB9IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIHgoaSkgeyBmb3IgKGxldCBpOyBm
YWxzZTsgKSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9uIHgo
aSkgeyBmb3IgKGxldCBpOyBmYWxzZTsgKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAibGV0IGYg
PSAoaSkgPT4geyBmb3IgKGxldCBpIGluIHt9KSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0
aW9uIGYoKSB7IGxldCBmID0gKGkpID0+IHsgZm9yIChsZXQgaSBpbiB7fSkgeyB9IH0gfSIKK1BB
U1MgVmFsaWQ6ICAgImxldCBmID0gKGkpID0+IHsgZm9yIChsZXQgaSBvZiBbXSkgeyB9IH0iCitQ
QVNTIFZhbGlkOiAgICJmdW5jdGlvbiBmKCkgeyBsZXQgZiA9IChpKSA9PiB7IGZvciAobGV0IGkg
b2YgW10pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJsZXQgZiA9IChpKSA9PiB7IGZvciAobGV0
IGkgb2YgW10pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigpIHsgbGV0IGYgPSAo
aSkgPT4geyBmb3IgKGxldCBpIG9mIFtdKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAibGV0IGYg
PSAoaSkgPT4geyBmb3IgKGxldCBpOyBmYWxzZTsgKSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1
bmN0aW9uIGYoKSB7IGxldCBmID0gKGkpID0+IHsgZm9yIChsZXQgaTsgZmFsc2U7ICkgeyB9IH0g
fSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaSBpbiB7fSkgeyB9
IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiBmKCkgeyBmdW5jdGlvbiogeChpKSB7IGZvciAo
bGV0IGkgaW4ge30pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiogeChpKSB7IGZv
ciAobGV0IGkgb2YgW10pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigpIHsgZnVu
Y3Rpb24qIHgoaSkgeyBmb3IgKGxldCBpIG9mIFtdKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAi
ZnVuY3Rpb24qIHgoaSkgeyBmb3IgKGxldCBpIG9mIFtdKSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAg
ImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaSBvZiBbXSkgeyB9IH0g
fSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaTsgZmFsc2U7ICkg
eyB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiBmKCkgeyBmdW5jdGlvbiogeChpKSB7IGZv
ciAobGV0IGk7IGZhbHNlOyApIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiB4KGkp
IHsgZm9yIChjb25zdCBpIGluIHt9KSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYo
KSB7IGZ1bmN0aW9uIHgoaSkgeyBmb3IgKGNvbnN0IGkgaW4ge30pIHsgfSB9IH0iCitQQVNTIFZh
bGlkOiAgICJmdW5jdGlvbiB4KGkpIHsgZm9yIChjb25zdCBpIG9mIFtdKSB7IH0gfSIKK1BBU1Mg
VmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9uIHgoaSkgeyBmb3IgKGNvbnN0IGkgb2Yg
W10pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiB4KGkpIHsgZm9yIChjb25zdCBp
IG9mIFtdKSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9uIHgo
aSkgeyBmb3IgKGNvbnN0IGkgb2YgW10pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlv
biB4KGkpIHsgZm9yIChjb25zdCBpID0gMjA7IGZhbHNlOyApIHsgfSB9IgorUEFTUyBWYWxpZDog
ICAiZnVuY3Rpb24gZigpIHsgZnVuY3Rpb24geChpKSB7IGZvciAoY29uc3QgaSA9IDIwOyBmYWxz
ZTsgKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAibGV0IGYgPSAoaSkgPT4geyBmb3IgKGNvbnN0
IGkgaW4ge30pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigpIHsgbGV0IGYgPSAo
aSkgPT4geyBmb3IgKGNvbnN0IGkgaW4ge30pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJsZXQg
ZiA9IChpKSA9PiB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iCitQQVNTIFZhbGlkOiAgICJm
dW5jdGlvbiBmKCkgeyBsZXQgZiA9IChpKSA9PiB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0g
fSIKK1BBU1MgVmFsaWQ6ICAgImxldCBmID0gKGkpID0+IHsgZm9yIChjb25zdCBpIG9mIFtdKSB7
IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGxldCBmID0gKGkpID0+IHsgZm9y
IChjb25zdCBpIG9mIFtdKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAibGV0IGYgPSAoaSkgPT4g
eyBmb3IgKGNvbnN0IGkgPSAyMDsgZmFsc2U7ICkgeyB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5j
dGlvbiBmKCkgeyBsZXQgZiA9IChpKSA9PiB7IGZvciAoY29uc3QgaSA9IDIwOyBmYWxzZTsgKSB7
IH0gfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24qIHgoaSkgeyBmb3IgKGNvbnN0IGkgaW4g
e30pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigpIHsgZnVuY3Rpb24qIHgoaSkg
eyBmb3IgKGNvbnN0IGkgaW4ge30pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiog
eChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlv
biBmKCkgeyBmdW5jdGlvbiogeChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0gfSIKK1BB
U1MgVmFsaWQ6ICAgImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChjb25zdCBpIG9mIFtdKSB7IH0gfSIK
K1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9uKiB4KGkpIHsgZm9yIChjb25z
dCBpIG9mIFtdKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24qIHgoaSkgeyBmb3Ig
KGNvbnN0IGkgPSAyMDsgZmFsc2U7ICkgeyB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiBm
KCkgeyBmdW5jdGlvbiogeChpKSB7IGZvciAoY29uc3QgaSA9IDIwOyBmYWxzZTsgKSB7IH0gfSB9
IgogdHJ5IHN0YXRlbWVudAogUEFTUyBJbnZhbGlkOiAidHJ5IHsgYnJlYWsgfSBjYXRjaChlKSB7
fSIuIFByb2R1Y2VkIHRoZSBmb2xsb3dpbmcgc3ludGF4IGVycm9yOiAiU3ludGF4RXJyb3I6ICdi
cmVhaycgaXMgb25seSB2YWxpZCBpbnNpZGUgYSBzd2l0Y2ggb3IgbG9vcCBzdGF0ZW1lbnQuIgog
UEFTUyBJbnZhbGlkOiAiZnVuY3Rpb24gZigpIHsgdHJ5IHsgYnJlYWsgfSBjYXRjaChlKSB7fSB9
Ii4gUHJvZHVjZWQgdGhlIGZvbGxvd2luZyBzeW50YXggZXJyb3I6ICJTeW50YXhFcnJvcjogJ2Jy
ZWFrJyBpcyBvbmx5IHZhbGlkIGluc2lkZSBhIHN3aXRjaCBvciBsb29wIHN0YXRlbWVudC4iCklu
ZGV4OiBMYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvcGFyc2VyLXN5bnRheC1jaGVjay5qcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvcGFyc2VyLXN5bnRheC1j
aGVjay5qcwkocmV2aXNpb24gMjE3MTQwKQorKysgTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3Rz
L3BhcnNlci1zeW50YXgtY2hlY2suanMJKHdvcmtpbmcgY29weSkKQEAgLTM3MSw2ICszNzEsMzAg
QEAgaW52YWxpZCgiZm9yIChsZXQgaSA9IDIwIGluIGIpIHsgfSIpOwogaW52YWxpZCgiZm9yIChj
b25zdCBpID0gMjAgaW4gYikgeyB9Iik7CiBpbnZhbGlkKCJmb3IgKGNvbnN0IHtpfSA9IDIwIGlu
IGIpIHsgfSIpOwogaW52YWxpZCgiZm9yIChsZXQge2l9ID0gMjAgaW4gYikgeyB9Iik7Cit2YWxp
ZCgiZnVuY3Rpb24geChpKSB7IGZvciAobGV0IGkgaW4ge30pIHsgfSB9Iik7Cit2YWxpZCgiZnVu
Y3Rpb24geChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgiZnVuY3Rpb24g
eChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgiZnVuY3Rpb24geChpKSB7
IGZvciAobGV0IGk7IGZhbHNlOyApIHsgfSB9Iik7Cit2YWxpZCgibGV0IGYgPSAoaSkgPT4geyBm
b3IgKGxldCBpIGluIHt9KSB7IH0gfSIpOwordmFsaWQoImxldCBmID0gKGkpID0+IHsgZm9yIChs
ZXQgaSBvZiBbXSkgeyB9IH0iKTsKK3ZhbGlkKCJsZXQgZiA9IChpKSA9PiB7IGZvciAobGV0IGkg
b2YgW10pIHsgfSB9Iik7Cit2YWxpZCgibGV0IGYgPSAoaSkgPT4geyBmb3IgKGxldCBpOyBmYWxz
ZTsgKSB7IH0gfSIpOwordmFsaWQoImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaSBpbiB7fSkg
eyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlvbiogeChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9
Iik7Cit2YWxpZCgiZnVuY3Rpb24qIHgoaSkgeyBmb3IgKGxldCBpIG9mIFtdKSB7IH0gfSIpOwor
dmFsaWQoImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaTsgZmFsc2U7ICkgeyB9IH0iKTsKK3Zh
bGlkKCJmdW5jdGlvbiB4KGkpIHsgZm9yIChjb25zdCBpIGluIHt9KSB7IH0gfSIpOwordmFsaWQo
ImZ1bmN0aW9uIHgoaSkgeyBmb3IgKGNvbnN0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgiZnVu
Y3Rpb24geChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlv
biB4KGkpIHsgZm9yIChjb25zdCBpID0gMjA7IGZhbHNlOyApIHsgfSB9Iik7Cit2YWxpZCgibGV0
IGYgPSAoaSkgPT4geyBmb3IgKGNvbnN0IGkgaW4ge30pIHsgfSB9Iik7Cit2YWxpZCgibGV0IGYg
PSAoaSkgPT4geyBmb3IgKGNvbnN0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgibGV0IGYgPSAo
aSkgPT4geyBmb3IgKGNvbnN0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgibGV0IGYgPSAoaSkg
PT4geyBmb3IgKGNvbnN0IGkgPSAyMDsgZmFsc2U7ICkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlv
biogeChpKSB7IGZvciAoY29uc3QgaSBpbiB7fSkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlvbiog
eChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlvbiogeChp
KSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlvbiogeChpKSB7
IGZvciAoY29uc3QgaSA9IDIwOyBmYWxzZTsgKSB7IH0gfSIpOwogCiBkZWJ1ZyAgKCJ0cnkgc3Rh
dGVtZW50Iik7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>310819</attachid>
            <date>2017-05-21 15:19:51 -0700</date>
            <delta_ts>2017-05-21 22:47:36 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>11361</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMTcxOTgpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDI2IEBACisyMDE3LTA1LTIxICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUu
Y29tPgorCisgICAgICAgIFdlIGluY29ycmVjdGx5IHRocm93IGEgc3ludGF4IGVycm9yIHdoZW4g
ZGVjbGFyaW5nIGEgdG9wIGxldmVsIGZvci1sb29wIGl0ZXJhdGlvbiB2YXJpYWJsZSB0aGUgc2Ft
ZSBhcyBhIHBhcmFtZXRlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTcxMDQxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMjA4MjUxNj4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVzcy9sZXhp
Y2FsLXNjb3BpbmctZm9yLWxvb3AuanM6IEFkZGVkLgorICAgICAgICAoYXNzZXJ0KToKKyAgICAg
ICAgKHRlc3QxKToKKyAgICAgICAgKHRlc3QyKToKKyAgICAgICAgKHRlc3QzKToKKyAgICAgICAg
KHRlc3Q0KToKKyAgICAgICAgKHRlc3Q1KToKKyAgICAgICAgKHRlc3Q2KToKKyAgICAgICAgKGxl
dC50ZXN0Nyk6CisgICAgICAgIChsZXQudGVzdDgpOgorICAgICAgICAobGV0LnRlc3Q5KToKKyAg
ICAgICAgKGxldC50ZXN0MTApOgorICAgICAgICAobGV0LnRlc3QxMSk6CisgICAgICAgIChsZXQu
dGVzdDEyKToKKwogMjAxNy0wNS0xOSAgTWFyayBMYW0gIDxtYXJrLmxhbUBhcHBsZS5jb20+CiAK
ICAgICAgICAgW1JlLWxhbmRpbmddIERGRzo6U3BlY3VsYXRpdmVKSVQ6OnBpY2tDYW5UcmFtcGxl
KCkgaXMgd3JvbmdseSBpZ25vcmluZyByZXN1bHQgcmVnaXN0ZXJzLgpJbmRleDogSlNUZXN0cy9z
dHJlc3MvbGV4aWNhbC1zY29waW5nLWZvci1sb29wLmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMv
c3RyZXNzL2xleGljYWwtc2NvcGluZy1mb3ItbG9vcC5qcwkobm9uZXhpc3RlbnQpCisrKyBKU1Rl
c3RzL3N0cmVzcy9sZXhpY2FsLXNjb3BpbmctZm9yLWxvb3AuanMJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSw2MSBAQAorJ3VzZSBzdHJpY3QnOworCitmdW5jdGlvbiBhc3NlcnQoYikgeworICAg
IGlmICghYikKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJCYWQiKTsKK30KKworZnVuY3Rpb24g
dGVzdDEoeCkgeworICAgIGZvciAobGV0IHggPSAyMDsgeCA8IDMwOyArK3gpIHsgfQorICAgIHJl
dHVybiB4OworfQorZnVuY3Rpb24gdGVzdDIoeCkgeworICAgIGZvciAobGV0IHggb2YgWzEsMiwz
XSkgeyB9CisgICAgcmV0dXJuIHg7Cit9CitmdW5jdGlvbiB0ZXN0Myh4KSB7CisgICAgZm9yIChs
ZXQgeCBpbiB7fSkgeyB9CisgICAgcmV0dXJuIHg7Cit9CitmdW5jdGlvbiB0ZXN0NCh4KSB7Cisg
ICAgbGV0IGkgPSAwOworICAgIGZvciAoY29uc3QgeCA9IDIwOyBpIDwgMTsgKytpKSB7IH0KKyAg
ICByZXR1cm4geDsKK30KK2Z1bmN0aW9uIHRlc3Q1KHgpIHsKKyAgICBmb3IgKGNvbnN0IHggb2Yg
WzEsIDIsIDNdKSB7IH0KKyAgICByZXR1cm4geDsKK30KK2Z1bmN0aW9uIHRlc3Q2KHgpIHsKKyAg
ICBmb3IgKGNvbnN0IHggaW4ge30pIHsgfQorICAgIHJldHVybiB4OworfQorCitsZXQgdGVzdDcg
PSAoeCkgPT4geworICAgIGZvciAobGV0IHggPSAyMDsgeCA8IDMwOyArK3gpIHsgfQorICAgIHJl
dHVybiB4OworfQorbGV0IHRlc3Q4ID0gKHgpID0+IHsKKyAgICBmb3IgKGxldCB4IG9mIFsxLDIs
M10pIHsgfQorICAgIHJldHVybiB4OworfQorbGV0IHRlc3Q5ID0gKHgpID0+IHsKKyAgICBmb3Ig
KGxldCB4IGluIHt9KSB7IH0KKyAgICByZXR1cm4geDsKK30KK2xldCB0ZXN0MTAgPSAoeCkgPT4g
eworICAgIGxldCBpID0gMDsKKyAgICBmb3IgKGNvbnN0IHggPSAyMDsgaSA8IDE7ICsraSkgeyB9
CisgICAgcmV0dXJuIHg7Cit9CitsZXQgdGVzdDExID0gKHgpID0+IHsKKyAgICBmb3IgKGNvbnN0
IHggb2YgWzEsIDIsIDNdKSB7IH0KKyAgICByZXR1cm4geDsKK30KK2xldCB0ZXN0MTIgPSAoeCkg
PT4geworICAgIGZvciAoY29uc3QgeCBpbiB7fSkgeyB9CisgICAgcmV0dXJuIHg7Cit9CisKK2Zv
ciAobGV0IHRlc3Qgb2YgW3Rlc3QxLCB0ZXN0MiwgdGVzdDMsIHRlc3Q0LCB0ZXN0NSwgdGVzdDcs
IHRlc3Q4LCB0ZXN0OSwgdGVzdDEwLCB0ZXN0MTEsIHRlc3QxMl0pCisgICAgYXNzZXJ0KHRlc3Qo
ImZvbyIpID09PSAiZm9vIik7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9u
IDIxNzE5MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwzMSBAQAorMjAxNy0wNS0yMSAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFw
cGxlLmNvbT4KKworICAgICAgICBXZSBpbmNvcnJlY3RseSB0aHJvdyBhIHN5bnRheCBlcnJvciB3
aGVuIGRlY2xhcmluZyBhIHRvcCBsZXZlbCBmb3ItbG9vcCBpdGVyYXRpb24gdmFyaWFibGUgdGhl
IHNhbWUgYXMgYSBwYXJhbWV0ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3MTA0MQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzIwODI1MTY+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2Ugd2VyZSB0
cmVhdGluZyBhIGZvci1sb29wIHZhcmlhYmxlIGRlY2xhcmF0aW9uIHBvdGVudGlhbGx5IGFzIGEg
dG9wCisgICAgICAgIGxldmVsIHN0YXRlbWVudCwgZS5nLCBpbiBhIHByb2dyYW0gbGlrZSB0aGlz
OgorICAgICAgICBgYGAKKyAgICAgICAgZnVuY3Rpb24gZm9vKCkgeworICAgICAgICAgICAgZm9y
IChsZXQgdmFyaWFibGUgb2YgZXhwcikgeyB9CisgICAgICAgIH0KKyAgICAgICAgYGBgCisgICAg
ICAgIEJ1dCB3ZSBzaG91bGQgbm90IGJlLiBUaGlzIGhhZCB0aGUgY29uc2VxdWVuY2Ugb2YgbWFr
aW5nIHRoaXMgdHlwZSBvZiBwcm9ncmFtCisgICAgICAgIHRocm93IGEgc3ludGF4IGVycm9yOgor
ICAgICAgICBgYGAKKyAgICAgICAgZnVuY3Rpb24gZm9vKGFyZykgeworICAgICAgICAgICAgZm9y
IChsZXQgYXJnIG9mIGV4cHIpIHsgfQorICAgICAgICB9CisgICAgICAgIGBgYAorICAgICAgICBl
dmVuIHRob3VnaCBpdCBzaG91bGQgbm90LiBUaGUgZml4IGlzIHNpbXBsZSwgd2UganVzdCBuZWVk
IHRvIGluY3JlbWVudCB0aGUKKyAgICAgICAgc3RhdGVtZW50IGRlcHRoIGJlZm9yZSBwYXJzaW5n
IGFueXRoaW5nIGluc2lkZSB0aGUgZm9yIGxvb3AuCisKKyAgICAgICAgKiBwYXJzZXIvUGFyc2Vy
LmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnBhcnNlRm9yU3RhdGVtZW50
KToKKwogMjAxNy0wNS0yMCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4K
IAogICAgICAgICBVbnJldmlld2VkLCBhZGQgc2NvcGUucmVsZWFzZSgpIHRvIHByb3BlcnR5SXNF
bnVtZXJhYmxlIGZ1bmN0aW9ucy4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIv
UGFyc2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1Bh
cnNlci5jcHAJKHJldmlzaW9uIDIxNzE0MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJz
ZXIvUGFyc2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTEzMyw2ICsxMTMzLDEwIEBAIHRlbXBs
YXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZVN0YXRlbWUKICAgICBKU1Rva2VuTG9jYXRpb24g
bG9jYXRpb24odG9rZW5Mb2NhdGlvbigpKTsKICAgICBpbnQgc3RhcnRMaW5lID0gdG9rZW5MaW5l
KCk7CiAgICAgbmV4dCgpOworCisgICAgRGVwdGhNYW5hZ2VyIHN0YXRlbWVudERlcHRoKCZtX3N0
YXRlbWVudERlcHRoKTsKKyAgICBtX3N0YXRlbWVudERlcHRoKys7CisKICAgICBoYW5kbGVQcm9k
dWN0aW9uT3JGYWlsKE9QRU5QQVJFTiwgIigiLCAic3RhcnQiLCAiZm9yLWxvb3AgaGVhZGVyIik7
CiAgICAgaW50IG5vbkxIU0NvdW50ID0gbV9wYXJzZXJTdGF0ZS5ub25MSFNDb3VudDsKICAgICBp
bnQgZGVjbGFyYXRpb25zID0gMDsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxNzE0MCkKKysrIExheW91
dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE3LTA1
LTIxICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorCisgICAgICAgIFdlIGluY29y
cmVjdGx5IHRocm93IGEgc3ludGF4IGVycm9yIHdoZW4gZGVjbGFyaW5nIGEgdG9wIGxldmVsIGZv
ci1sb29wIGl0ZXJhdGlvbiB2YXJpYWJsZSB0aGUgc2FtZSBhcyBhIHBhcmFtZXRlcgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcxMDQxCisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS8zMjA4MjUxNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIGpzL3BhcnNlci1zeW50YXgtY2hlY2stZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9wYXJzZXItc3ludGF4LWNoZWNrLmpzOgorCiAy
MDE3LTA1LTE5ICBSeWFuIEhhZGRhZCAgPHJ5YW5oYWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAg
IExheW91dFRlc3QganMvUHJvbWlzZS10eXBlcy5odG1sIGlzIGEgZmxha3kgZmFpbHVyZSAoVW5o
YW5kbGVkIFByb21pc2UgUmVqZWN0aW9uIG1lc3NhZ2VzKQpJbmRleDogTGF5b3V0VGVzdHMvanMv
cGFyc2VyLXN5bnRheC1jaGVjay1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvanMvcGFyc2VyLXN5bnRheC1jaGVjay1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIxNzE0MCkK
KysrIExheW91dFRlc3RzL2pzL3BhcnNlci1zeW50YXgtY2hlY2stZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC01NTYsNiArNTU2LDU0IEBAIFBBU1MgSW52YWxpZDogImZvciAoY29uc3Qg
e2l9ID0gMjAgaW4gYikKIFBBU1MgSW52YWxpZDogImZ1bmN0aW9uIGYoKSB7IGZvciAoY29uc3Qg
e2l9ID0gMjAgaW4gYikgeyB9IH0iLiBQcm9kdWNlZCB0aGUgZm9sbG93aW5nIHN5bnRheCBlcnJv
cjogIlN5bnRheEVycm9yOiBDYW5ub3QgYXNzaWduIHRvIHRoZSBsb29wIHZhcmlhYmxlIGluc2lk
ZSBhIGZvci1pbiBsb29wIGhlYWRlci4iCiBQQVNTIEludmFsaWQ6ICJmb3IgKGxldCB7aX0gPSAy
MCBpbiBiKSB7IH0iLiBQcm9kdWNlZCB0aGUgZm9sbG93aW5nIHN5bnRheCBlcnJvcjogIlN5bnRh
eEVycm9yOiBDYW5ub3QgYXNzaWduIHRvIHRoZSBsb29wIHZhcmlhYmxlIGluc2lkZSBhIGZvci1p
biBsb29wIGhlYWRlci4iCiBQQVNTIEludmFsaWQ6ICJmdW5jdGlvbiBmKCkgeyBmb3IgKGxldCB7
aX0gPSAyMCBpbiBiKSB7IH0gfSIuIFByb2R1Y2VkIHRoZSBmb2xsb3dpbmcgc3ludGF4IGVycm9y
OiAiU3ludGF4RXJyb3I6IENhbm5vdCBhc3NpZ24gdG8gdGhlIGxvb3AgdmFyaWFibGUgaW5zaWRl
IGEgZm9yLWluIGxvb3AgaGVhZGVyLiIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIHgoaSkgeyBm
b3IgKGxldCBpIGluIHt9KSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1
bmN0aW9uIHgoaSkgeyBmb3IgKGxldCBpIGluIHt9KSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAi
ZnVuY3Rpb24geChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9IgorUEFTUyBWYWxpZDogICAi
ZnVuY3Rpb24gZigpIHsgZnVuY3Rpb24geChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9IH0i
CitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiB4KGkpIHsgZm9yIChsZXQgaSBvZiBbXSkgeyB9IH0i
CitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiBmKCkgeyBmdW5jdGlvbiB4KGkpIHsgZm9yIChsZXQg
aSBvZiBbXSkgeyB9IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIHgoaSkgeyBmb3IgKGxl
dCBpOyBmYWxzZTsgKSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0
aW9uIHgoaSkgeyBmb3IgKGxldCBpOyBmYWxzZTsgKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAi
bGV0IGYgPSAoaSkgPT4geyBmb3IgKGxldCBpIGluIHt9KSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAg
ImZ1bmN0aW9uIGYoKSB7IGxldCBmID0gKGkpID0+IHsgZm9yIChsZXQgaSBpbiB7fSkgeyB9IH0g
fSIKK1BBU1MgVmFsaWQ6ICAgImxldCBmID0gKGkpID0+IHsgZm9yIChsZXQgaSBvZiBbXSkgeyB9
IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiBmKCkgeyBsZXQgZiA9IChpKSA9PiB7IGZvciAo
bGV0IGkgb2YgW10pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJsZXQgZiA9IChpKSA9PiB7IGZv
ciAobGV0IGkgb2YgW10pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigpIHsgbGV0
IGYgPSAoaSkgPT4geyBmb3IgKGxldCBpIG9mIFtdKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAi
bGV0IGYgPSAoaSkgPT4geyBmb3IgKGxldCBpOyBmYWxzZTsgKSB7IH0gfSIKK1BBU1MgVmFsaWQ6
ICAgImZ1bmN0aW9uIGYoKSB7IGxldCBmID0gKGkpID0+IHsgZm9yIChsZXQgaTsgZmFsc2U7ICkg
eyB9IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaSBpbiB7
fSkgeyB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiBmKCkgeyBmdW5jdGlvbiogeChpKSB7
IGZvciAobGV0IGkgaW4ge30pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiogeChp
KSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigp
IHsgZnVuY3Rpb24qIHgoaSkgeyBmb3IgKGxldCBpIG9mIFtdKSB7IH0gfSB9IgorUEFTUyBWYWxp
ZDogICAiZnVuY3Rpb24qIHgoaSkgeyBmb3IgKGxldCBpIG9mIFtdKSB7IH0gfSIKK1BBU1MgVmFs
aWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaSBvZiBbXSkg
eyB9IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaTsgZmFs
c2U7ICkgeyB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiBmKCkgeyBmdW5jdGlvbiogeChp
KSB7IGZvciAobGV0IGk7IGZhbHNlOyApIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlv
biB4KGkpIHsgZm9yIChjb25zdCBpIGluIHt9KSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0
aW9uIGYoKSB7IGZ1bmN0aW9uIHgoaSkgeyBmb3IgKGNvbnN0IGkgaW4ge30pIHsgfSB9IH0iCitQ
QVNTIFZhbGlkOiAgICJmdW5jdGlvbiB4KGkpIHsgZm9yIChjb25zdCBpIG9mIFtdKSB7IH0gfSIK
K1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9uIHgoaSkgeyBmb3IgKGNvbnN0
IGkgb2YgW10pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5jdGlvbiB4KGkpIHsgZm9yIChj
b25zdCBpIG9mIFtdKSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0
aW9uIHgoaSkgeyBmb3IgKGNvbnN0IGkgb2YgW10pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJm
dW5jdGlvbiB4KGkpIHsgZm9yIChjb25zdCBpID0gMjA7IGZhbHNlOyApIHsgfSB9IgorUEFTUyBW
YWxpZDogICAiZnVuY3Rpb24gZigpIHsgZnVuY3Rpb24geChpKSB7IGZvciAoY29uc3QgaSA9IDIw
OyBmYWxzZTsgKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAibGV0IGYgPSAoaSkgPT4geyBmb3Ig
KGNvbnN0IGkgaW4ge30pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigpIHsgbGV0
IGYgPSAoaSkgPT4geyBmb3IgKGNvbnN0IGkgaW4ge30pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAg
ICJsZXQgZiA9IChpKSA9PiB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iCitQQVNTIFZhbGlk
OiAgICJmdW5jdGlvbiBmKCkgeyBsZXQgZiA9IChpKSA9PiB7IGZvciAoY29uc3QgaSBvZiBbXSkg
eyB9IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImxldCBmID0gKGkpID0+IHsgZm9yIChjb25zdCBpIG9m
IFtdKSB7IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGxldCBmID0gKGkpID0+
IHsgZm9yIChjb25zdCBpIG9mIFtdKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAibGV0IGYgPSAo
aSkgPT4geyBmb3IgKGNvbnN0IGkgPSAyMDsgZmFsc2U7ICkgeyB9IH0iCitQQVNTIFZhbGlkOiAg
ICJmdW5jdGlvbiBmKCkgeyBsZXQgZiA9IChpKSA9PiB7IGZvciAoY29uc3QgaSA9IDIwOyBmYWxz
ZTsgKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24qIHgoaSkgeyBmb3IgKGNvbnN0
IGkgaW4ge30pIHsgfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigpIHsgZnVuY3Rpb24q
IHgoaSkgeyBmb3IgKGNvbnN0IGkgaW4ge30pIHsgfSB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5j
dGlvbiogeChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iCitQQVNTIFZhbGlkOiAgICJm
dW5jdGlvbiBmKCkgeyBmdW5jdGlvbiogeChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0g
fSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChjb25zdCBpIG9mIFtdKSB7
IH0gfSIKK1BBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IGZ1bmN0aW9uKiB4KGkpIHsgZm9y
IChjb25zdCBpIG9mIFtdKSB7IH0gfSB9IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24qIHgoaSkg
eyBmb3IgKGNvbnN0IGkgPSAyMDsgZmFsc2U7ICkgeyB9IH0iCitQQVNTIFZhbGlkOiAgICJmdW5j
dGlvbiBmKCkgeyBmdW5jdGlvbiogeChpKSB7IGZvciAoY29uc3QgaSA9IDIwOyBmYWxzZTsgKSB7
IH0gfSB9IgogdHJ5IHN0YXRlbWVudAogUEFTUyBJbnZhbGlkOiAidHJ5IHsgYnJlYWsgfSBjYXRj
aChlKSB7fSIuIFByb2R1Y2VkIHRoZSBmb2xsb3dpbmcgc3ludGF4IGVycm9yOiAiU3ludGF4RXJy
b3I6ICdicmVhaycgaXMgb25seSB2YWxpZCBpbnNpZGUgYSBzd2l0Y2ggb3IgbG9vcCBzdGF0ZW1l
bnQuIgogUEFTUyBJbnZhbGlkOiAiZnVuY3Rpb24gZigpIHsgdHJ5IHsgYnJlYWsgfSBjYXRjaChl
KSB7fSB9Ii4gUHJvZHVjZWQgdGhlIGZvbGxvd2luZyBzeW50YXggZXJyb3I6ICJTeW50YXhFcnJv
cjogJ2JyZWFrJyBpcyBvbmx5IHZhbGlkIGluc2lkZSBhIHN3aXRjaCBvciBsb29wIHN0YXRlbWVu
dC4iCkluZGV4OiBMYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvcGFyc2VyLXN5bnRheC1jaGVj
ay5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvcGFyc2VyLXN5
bnRheC1jaGVjay5qcwkocmV2aXNpb24gMjE3MTQwKQorKysgTGF5b3V0VGVzdHMvanMvc2NyaXB0
LXRlc3RzL3BhcnNlci1zeW50YXgtY2hlY2suanMJKHdvcmtpbmcgY29weSkKQEAgLTM3MSw2ICsz
NzEsMzAgQEAgaW52YWxpZCgiZm9yIChsZXQgaSA9IDIwIGluIGIpIHsgfSIpOwogaW52YWxpZCgi
Zm9yIChjb25zdCBpID0gMjAgaW4gYikgeyB9Iik7CiBpbnZhbGlkKCJmb3IgKGNvbnN0IHtpfSA9
IDIwIGluIGIpIHsgfSIpOwogaW52YWxpZCgiZm9yIChsZXQge2l9ID0gMjAgaW4gYikgeyB9Iik7
Cit2YWxpZCgiZnVuY3Rpb24geChpKSB7IGZvciAobGV0IGkgaW4ge30pIHsgfSB9Iik7Cit2YWxp
ZCgiZnVuY3Rpb24geChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgiZnVu
Y3Rpb24geChpKSB7IGZvciAobGV0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgiZnVuY3Rpb24g
eChpKSB7IGZvciAobGV0IGk7IGZhbHNlOyApIHsgfSB9Iik7Cit2YWxpZCgibGV0IGYgPSAoaSkg
PT4geyBmb3IgKGxldCBpIGluIHt9KSB7IH0gfSIpOwordmFsaWQoImxldCBmID0gKGkpID0+IHsg
Zm9yIChsZXQgaSBvZiBbXSkgeyB9IH0iKTsKK3ZhbGlkKCJsZXQgZiA9IChpKSA9PiB7IGZvciAo
bGV0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgibGV0IGYgPSAoaSkgPT4geyBmb3IgKGxldCBp
OyBmYWxzZTsgKSB7IH0gfSIpOwordmFsaWQoImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaSBp
biB7fSkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlvbiogeChpKSB7IGZvciAobGV0IGkgb2YgW10p
IHsgfSB9Iik7Cit2YWxpZCgiZnVuY3Rpb24qIHgoaSkgeyBmb3IgKGxldCBpIG9mIFtdKSB7IH0g
fSIpOwordmFsaWQoImZ1bmN0aW9uKiB4KGkpIHsgZm9yIChsZXQgaTsgZmFsc2U7ICkgeyB9IH0i
KTsKK3ZhbGlkKCJmdW5jdGlvbiB4KGkpIHsgZm9yIChjb25zdCBpIGluIHt9KSB7IH0gfSIpOwor
dmFsaWQoImZ1bmN0aW9uIHgoaSkgeyBmb3IgKGNvbnN0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxp
ZCgiZnVuY3Rpb24geChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iKTsKK3ZhbGlkKCJm
dW5jdGlvbiB4KGkpIHsgZm9yIChjb25zdCBpID0gMjA7IGZhbHNlOyApIHsgfSB9Iik7Cit2YWxp
ZCgibGV0IGYgPSAoaSkgPT4geyBmb3IgKGNvbnN0IGkgaW4ge30pIHsgfSB9Iik7Cit2YWxpZCgi
bGV0IGYgPSAoaSkgPT4geyBmb3IgKGNvbnN0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgibGV0
IGYgPSAoaSkgPT4geyBmb3IgKGNvbnN0IGkgb2YgW10pIHsgfSB9Iik7Cit2YWxpZCgibGV0IGYg
PSAoaSkgPT4geyBmb3IgKGNvbnN0IGkgPSAyMDsgZmFsc2U7ICkgeyB9IH0iKTsKK3ZhbGlkKCJm
dW5jdGlvbiogeChpKSB7IGZvciAoY29uc3QgaSBpbiB7fSkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5j
dGlvbiogeChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlv
biogeChpKSB7IGZvciAoY29uc3QgaSBvZiBbXSkgeyB9IH0iKTsKK3ZhbGlkKCJmdW5jdGlvbiog
eChpKSB7IGZvciAoY29uc3QgaSA9IDIwOyBmYWxzZTsgKSB7IH0gfSIpOwogCiBkZWJ1ZyAgKCJ0
cnkgc3RhdGVtZW50Iik7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>