<?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>195864</bug_id>
          
          <creation_ts>2019-03-17 13:16:20 -0700</creation_ts>
          <short_desc>[WHLSL] read modify write expressions do no work as expected</short_desc>
          <delta_ts>2019-06-21 14:02: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>WebGPU</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>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>199037</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>fpizlo</cc>
    
    <cc>justin_fan</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>tsavell</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1517553</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-03-17 13:16:20 -0700</bug_when>
    <thetext>Something is amiss.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1535877</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-05-13 17:07:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/50746278&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536186</commentid>
    <comment_count>2</comment_count>
      <attachid>369881</attachid>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2019-05-14 12:33:26 -0700</bug_when>
    <thetext>Created attachment 369881
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536229</commentid>
    <comment_count>3</comment_count>
      <attachid>369881</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-05-14 13:41:45 -0700</bug_when>
    <thetext>Comment on attachment 369881
Patch

Looks like this was just a stupid mistake I made. Stupid mistakes like this are why the test suite is so important.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536258</commentid>
    <comment_count>4</comment_count>
      <attachid>369881</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-14 14:50:00 -0700</bug_when>
    <thetext>Comment on attachment 369881
Patch

Clearing flags on attachment: 369881

Committed r245312: &lt;https://trac.webkit.org/changeset/245312&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1536259</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-05-14 14:50:01 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537994</commentid>
    <comment_count>6</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-05-21 14:46:20 -0700</bug_when>
    <thetext>This isn&apos;t actually fixed yet.

this doesn&apos;t parse:

```
int bar() {
    int foo;
    foo++;
}
```</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546211</commentid>
    <comment_count>7</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-06-19 13:08:36 -0700</bug_when>
    <thetext>I think I had a crash yesterday when writing a loop like this:

```
for (uint I = 0; I &lt; n; I++)
```

and had to instead write it like
```
for (uint I = 0; I &lt; n; I = I + 1)
```</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546572</commentid>
    <comment_count>8</comment_count>
      <attachid>372569</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-06-20 10:51:46 -0700</bug_when>
    <thetext>Created attachment 372569
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546580</commentid>
    <comment_count>9</comment_count>
      <attachid>372569</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-06-20 11:06:08 -0700</bug_when>
    <thetext>Comment on attachment 372569
WIP

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

&gt; LayoutTests/webgpu/whlsl-read-modify-write.html:12
&gt; +    buffer1 = buffer[0]++;

buffer[1] = buffer[0]++;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546581</commentid>
    <comment_count>10</comment_count>
      <attachid>372572</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-06-20 11:08:24 -0700</bug_when>
    <thetext>Created attachment 372572
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546825</commentid>
    <comment_count>11</comment_count>
      <attachid>372619</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-06-21 00:14:32 -0700</bug_when>
    <thetext>Created attachment 372619
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546898</commentid>
    <comment_count>12</comment_count>
      <attachid>372619</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-21 09:59:21 -0700</bug_when>
    <thetext>Comment on attachment 372619
Patch

Clearing flags on attachment: 372619

Committed r246681: &lt;https://trac.webkit.org/changeset/246681&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546899</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-21 09:59:23 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546952</commentid>
    <comment_count>14</comment_count>
    <who name="Truitt Savell">tsavell</who>
    <bug_when>2019-06-21 12:57:12 -0700</bug_when>
    <thetext>Looks like the new test webgpu/whlsl-read-modify-write.html
added in https://trac.webkit.org/changeset/246681/webkit

is missing results on WK2

History:
https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=webgpu%2Fwhlsl-read-modify-write.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546981</commentid>
    <comment_count>15</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-06-21 14:02:46 -0700</bug_when>
    <thetext>Committed r246696: &lt;https://trac.webkit.org/changeset/246696&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369881</attachid>
            <date>2019-05-14 12:33:26 -0700</date>
            <delta_ts>2019-06-20 10:51:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch195864</filename>
            <type>text/plain</type>
            <size>1631</size>
            <attacher name="Robin Morisset">rmorisset</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1M2RmN2E3ZDI4NS4uNGMzNzEyMTBlODQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAxOS0wNS0xNCAgUm9iaW4gTW9yaXNzZXQgIDxybW9yaXNzZXRAYXBwbGUu
Y29tPgorCisgICAgICAgIFtXSExTTF0gcGFyc2VFZmZlY3RmdWxTdWZmaXgoKSBpcyBuZXZlciBj
YWxsZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5
NTg2NAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTA3NDYyNzg+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIGZpeCBpcyB0cml2aWFsOiB3aGVu
IHBhcnNlRWZmZWN0ZnVsUHJlZml4IGRvZXMgbm90IHNlZSBhICsrIG9yIC0tLCBpdCBtdXN0IGNh
bGwgcGFyc2VFZmZlY3RmdWxTdWZmaXguCisKKyAgICAgICAgTm8gdGVzdCB5ZXQsIGFzIGl0IGlz
IG5vdCB0ZXN0YWJsZSB1bnRpbCB0aGUgcHJvcGVydHkgcmVzb2x2ZXIgaXMgZmluaXNoZWQuCisg
ICAgICAgIEl0IHdpbGwgYmUgdGVzdGVkIHdpdGggdGhlIHJlc3Qgb2YgdGhlIGNvbXBpbGVyLCB3
aGVuIHdlIHBvcnQgdGhlIHRlc3RzdWl0ZSBmcm9tIHRoZSBqcyBpbXBsZW1lbnRhdGlvbiAoaXQg
YWxyZWFkeSBjb3ZlcnMgdGhpcyBjYXNlKS4KKworICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dI
TFNML1dITFNMUGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldITFNMOjpQYXJzZXI6OnBh
cnNlRWZmZWN0ZnVsUHJlZml4KToKKwogMjAxOS0wNS0xNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVu
bkBhcHBsZS5jb20+CiAKICAgICAgICAgVmlkZW8gZnJhbWUgcmVzaXppbmcgc2hvdWxkIGJlIHVz
aW5nIFRyaW0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNM
L1dITFNMUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNML1dI
TFNMUGFyc2VyLmNwcAppbmRleCA1MzMyNTY3NjY0OS4uYjUxNzY1YWVmOGUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNML1dITFNMUGFyc2VyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9XSExTTFBhcnNlci5jcHAKQEAg
LTE4MTYsNyArMTgxNiw3IEBAIGF1dG8gUGFyc2VyOjpwYXJzZUVmZmVjdGZ1bFByZWZpeCgpIC0+
IEV4cGVjdGVkPFVuaXF1ZVJlZjxBU1Q6OkV4cHJlc3Npb24+LCBFcnJvCiB7CiAgICAgYXV0byBw
cmVmaXggPSBjb25zdW1lVHlwZXMoeyBMZXhlcjo6VG9rZW46OlR5cGU6OlBsdXNQbHVzLCBMZXhl
cjo6VG9rZW46OlR5cGU6Ok1pbnVzTWludXMgfSk7CiAgICAgaWYgKCFwcmVmaXgpCi0gICAgICAg
IHJldHVybiBVbmV4cGVjdGVkPEVycm9yPihwcmVmaXguZXJyb3IoKSk7CisgICAgICAgIHJldHVy
biBwYXJzZUVmZmVjdGZ1bFN1ZmZpeCgpOwogCiAgICAgYXV0byBwcmV2aW91cyA9IHBhcnNlUG9z
c2libGVQcmVmaXgoKTsKICAgICBpZiAoIXByZXZpb3VzKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>372569</attachid>
            <date>2019-06-20 10:51:46 -0700</date>
            <delta_ts>2019-06-20 11:08:22 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-195864-20190620105145.patch</filename>
            <type>text/plain</type>
            <size>7221</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2NjMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzZlMTRjZGI0NzdjMzc1
ZGJhYzNlMGM1MWI1NzdmNTUzOGQzYjE4OC4uZTEyN2I1NjM0Y2Y3NzgxNmIwNTY2NDA1NTE5N2Ew
ZDk5OTBlODEzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTA2LTIwICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dITFNMXSBy
ZWFkIG1vZGlmeSB3cml0ZSBleHByZXNzaW9ucyBkbyBubyB3b3JrIGFzIGV4cGVjdGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTU4NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiB3ZWJncHUv
d2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbAorCisgICAgICAgICogTW9kdWxlcy93ZWJncHUv
V0hMU0wvV0hMU0xTdGFuZGFyZExpYnJhcnkudHh0OgorCiAyMDE5LTA2LTE5ICBNeWxlcyBDLiBN
YXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW1dITFNMXSBIb29rIHVw
IGNvbW1vbiB0ZXh0dXJlIGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJncHUvV0hMU0wvV0hMU0xTdGFuZGFyZExpYnJhcnkudHh0IGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJncHUvV0hMU0wvV0hMU0xTdGFuZGFyZExpYnJhcnkudHh0CmluZGV4IGM0
Y2EwYzMwNzM4MDdmODMwZGRmYjg0ZTU5OWYzZWQxMjE5N2FiZjYuLjI3NmI1MWNkNmI4YzI5ODVm
YThiZTY0YjA3ODc1NWI3ODQ3NDVkNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZ3B1L1dITFNML1dITFNMU3RhbmRhcmRMaWJyYXJ5LnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9XSExTTFN0YW5kYXJkTGlicmFyeS50eHQKQEAgLTMx
MCwxNyArMzEwLDYgQEAgbmF0aXZlIG9wZXJhdG9yIGZsb2F0KHNob3J0KTsKIG5hdGl2ZSBvcGVy
YXRvciBmbG9hdChpbnQpOwogbmF0aXZlIG9wZXJhdG9yIGZsb2F0KGhhbGYpOwogCi1uYXRpdmUg
ZmxvYXQgb3BlcmF0b3IrKGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgZmxvYXQgb3BlcmF0b3ItKGZs
b2F0LCBmbG9hdCk7Ci1uYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsIGludCk7Ci1uYXRpdmUgdWlu
dCBvcGVyYXRvcisodWludCwgdWludCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBpbnQp
OwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8KHVpbnQsIHVpbnQpOwotbmF0aXZlIGJvb2wgb3BlcmF0
b3I8KGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGZsb2F0LCBmbG9hdCk7
Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGludCwgaW50KTsKLW5hdGl2ZSBmbG9hdCBvcGVyYXRv
ciooZmxvYXQsIGZsb2F0KTsKLQogLy8gRklYTUU6IFRoZXNlIHNob3VsZCBiZSBhdXRvIGdlbmVy
YXRlZCBieSB0aGUgY29tcGlsZXIuCiAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTk4ODYxCiBuYXRpdmUgYm9vbCBvcGVyYXRvcj09KHRocmVhZCBpbnQqLCB0aHJl
YWQgaW50Kik7CkBAIC03NTUsNiArNzQ0LDU1IEBAIG9wZXJhdG9yIHVpbnQyKHVpbnQgeCwgdWlu
dCB5KSB7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorbmF0aXZlIGludCBvcGVyYXRvcisoaW50
LCBpbnQpOworbmF0aXZlIGludCBvcGVyYXRvci0oaW50LCBpbnQpOworbmF0aXZlIGludCBvcGVy
YXRvciooaW50LCBpbnQpOworbmF0aXZlIGludCBvcGVyYXRvci8oaW50LCBpbnQpOworbmF0aXZl
IGJvb2wgb3BlcmF0b3I9PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBp
bnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVy
YXRvcj4oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+PShpbnQsIGludCk7CituYXRp
dmUgdWludCBvcGVyYXRvcisodWludCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvci0odWlu
dCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvcioodWludCwgdWludCk7CituYXRpdmUgdWlu
dCBvcGVyYXRvci8odWludCwgdWludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj09KHVpbnQsIHVp
bnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KHVpbnQsIHVpbnQpOworbmF0aXZlIGJvb2wgb3Bl
cmF0b3I8PSh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPih1aW50LCB1aW50KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7CisKK25hdGl2ZSBmbG9hdCBvcGVy
YXRvcisoZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsIGZsb2F0
KTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvciooZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdCBv
cGVyYXRvci8oZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oZmxvYXQsIGZs
b2F0KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPChmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wg
b3BlcmF0b3I8PShmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGZsb2F0LCBm
bG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj49KGZsb2F0LCBmbG9hdCk7CisKK25hdGl2ZSBp
bnQgb3BlcmF0b3ImKGludCwgaW50KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3J8KGludCwgaW50KTsK
K25hdGl2ZSBpbnQgb3BlcmF0b3JeKGludCwgaW50KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3J+KGlu
dCk7CituYXRpdmUgaW50IG9wZXJhdG9yPDwoaW50LCB1aW50KTsKK25hdGl2ZSBpbnQgb3BlcmF0
b3I+PihpbnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3ImKHVpbnQsIHVpbnQpOworbmF0
aXZlIHVpbnQgb3BlcmF0b3J8KHVpbnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3JeKHVp
bnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3J+KHVpbnQpOworbmF0aXZlIHVpbnQgb3Bl
cmF0b3I8PCh1aW50LCB1aW50KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCwgdWludCk7
CisKK2ludCBvcGVyYXRvcisrKGludCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9
CitpbnQgb3BlcmF0b3ItLShpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQor
CiBuYXRpdmUgdXNob3J0IFNhbXBsZShUZXh0dXJlMUQ8dXNob3J0Piwgc2FtcGxlciwgZmxvYXQg
bG9jYXRpb24pOwogbmF0aXZlIHVzaG9ydCBTYW1wbGUoVGV4dHVyZTFEQXJyYXk8dXNob3J0Piwg
c2FtcGxlciwgZmxvYXQyIGxvY2F0aW9uKTsKIG5hdGl2ZSB1c2hvcnQgU2FtcGxlKFRleHR1cmUy
RDx1c2hvcnQ+LCBzYW1wbGVyLCBmbG9hdDIgbG9jYXRpb24pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU0MzA1YTBjOGQ4
YzIzZDY0ZTlkMGQ2ZjhmN2FiYTM2NWY1ZjM0NTkuLjJiNDExMzJlZTNiODg1OTI1NWRmYzkzZjMw
NTQ1OGY3ZDg3OGRmOWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxOS0wNi0yMCAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtXSExTTF0gcmVh
ZCBtb2RpZnkgd3JpdGUgZXhwcmVzc2lvbnMgZG8gbm8gd29yayBhcyBleHBlY3RlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1ODY0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wt
cmVhZC1tb2RpZnktd3JpdGUuaHRtbDogQWRkZWQuCisKIDIwMTktMDYtMTkgIE15bGVzIEMuIE1h
eGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBbV0hMU0xdIEhvb2sgdXAg
Y29tbW9uIHRleHR1cmUgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC1y
ZWFkLW1vZGlmeS13cml0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE0NGYxZTQwNGQwZjYwYzZiZjNiOGU5
ZWRjNzY0YjIyZTcxNTExYjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbApAQCAtMCwwICsxLDgwIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2NvbnN0IHNoYWRl
clNvdXJjZSA9IGAKK1tudW10aHJlYWRzKDEsIDEsIDEpXQorY29tcHV0ZSB2b2lkIGNvbXB1dGVT
aGFkZXIoZGV2aWNlIGludFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSkgeworICAgIGJ1ZmZlclsw
XSA9IDA7CisgICAgYnVmZmVyMSA9IGJ1ZmZlclswXSsrOworCisgICAgYnVmZmVyWzJdID0gMDsK
KyAgICBidWZmZXJbM10gPSArK2J1ZmZlclsyXTsKKworICAgIGJ1ZmZlcls0XSA9IDA7CisgICAg
YnVmZmVyWzRdICs9IDU7CisKKyAgICBidWZmZXJbNV0gPSAxOworICAgIGJ1ZmZlcls1XSAqPSA3
OworfQorYDsKK2xldCByZXN1bHRzOworYXN5bmMgZnVuY3Rpb24gc3RhcnQoKSB7CisgICAgY29u
c3QgYWRhcHRlciA9IGF3YWl0IG5hdmlnYXRvci5ncHUucmVxdWVzdEFkYXB0ZXIoKTsKKyAgICBj
b25zdCBkZXZpY2UgPSBhd2FpdCBhZGFwdGVyLnJlcXVlc3REZXZpY2UoKTsKKworICAgIGNvbnN0
IHNoYWRlck1vZHVsZSA9IGRldmljZS5jcmVhdGVTaGFkZXJNb2R1bGUoe2NvZGU6IHNoYWRlclNv
dXJjZSwgaXNXSExTTDogdHJ1ZX0pOworICAgIGNvbnN0IGNvbXB1dGVTdGFnZSA9IHttb2R1bGU6
IHNoYWRlck1vZHVsZSwgZW50cnlQb2ludDogImNvbXB1dGVTaGFkZXIifTsKKworICAgIGNvbnN0
IGJpbmRHcm91cExheW91dERlc2NyaXB0b3IgPSB7YmluZGluZ3M6IFt7YmluZGluZzogMCwgdmlz
aWJpbGl0eTogNywgdHlwZTogInN0b3JhZ2UtYnVmZmVyIn1dfTsKKyAgICBjb25zdCBiaW5kR3Jv
dXBMYXlvdXQgPSBkZXZpY2UuY3JlYXRlQmluZEdyb3VwTGF5b3V0KGJpbmRHcm91cExheW91dERl
c2NyaXB0b3IpOworICAgIGNvbnN0IHBpcGVsaW5lTGF5b3V0RGVzY3JpcHRvciA9IHtiaW5kR3Jv
dXBMYXlvdXRzOiBbYmluZEdyb3VwTGF5b3V0XX07CisgICAgY29uc3QgcGlwZWxpbmVMYXlvdXQg
PSBkZXZpY2UuY3JlYXRlUGlwZWxpbmVMYXlvdXQocGlwZWxpbmVMYXlvdXREZXNjcmlwdG9yKTsK
KworICAgIGNvbnN0IGNvbXB1dGVQaXBlbGluZURlc2NyaXB0b3IgPSB7Y29tcHV0ZVN0YWdlLCBs
YXlvdXQ6IHBpcGVsaW5lTGF5b3V0fTsKKyAgICBjb25zdCBjb21wdXRlUGlwZWxpbmUgPSBkZXZp
Y2UuY3JlYXRlQ29tcHV0ZVBpcGVsaW5lKGNvbXB1dGVQaXBlbGluZURlc2NyaXB0b3IpOworCisg
ICAgY29uc3Qgc2l6ZSA9IEludDMyQXJyYXkuQllURVNfUEVSX0VMRU1FTlQgKiA2OworCisgICAg
Y29uc3QgYnVmZmVyRGVzY3JpcHRvciA9IHtzaXplLCB1c2FnZTogR1BVQnVmZmVyVXNhZ2UuU1RP
UkFHRSB8IEdQVUJ1ZmZlclVzYWdlLk1BUF9SRUFEfTsKKyAgICBjb25zdCBidWZmZXIgPSBkZXZp
Y2UuY3JlYXRlQnVmZmVyKGJ1ZmZlckRlc2NyaXB0b3IpOworCisgICAgY29uc3QgYnVmZmVyQmlu
ZGluZyA9IHtidWZmZXI6IGJ1ZmZlciwgc2l6ZX07CisgICAgY29uc3QgYmluZEdyb3VwQmluZGlu
ZyA9IHtiaW5kaW5nOiAwLCByZXNvdXJjZTogYnVmZmVyQmluZGluZ307CisgICAgY29uc3QgYmlu
ZEdyb3VwRGVzY3JpcHRvciA9IHtsYXlvdXQ6IGJpbmRHcm91cExheW91dCwgYmluZGluZ3M6IFti
aW5kR3JvdXBCaW5kaW5nXX07CisgICAgY29uc3QgYmluZEdyb3VwID0gZGV2aWNlLmNyZWF0ZUJp
bmRHcm91cChiaW5kR3JvdXBEZXNjcmlwdG9yKTsKKworICAgIGNvbnN0IGNvbW1hbmRFbmNvZGVy
ID0gZGV2aWNlLmNyZWF0ZUNvbW1hbmRFbmNvZGVyKCk7IC8vIHt9CisgICAgY29uc3QgY29tcHV0
ZVBhc3NFbmNvZGVyID0gY29tbWFuZEVuY29kZXIuYmVnaW5Db21wdXRlUGFzcygpOworICAgIGNv
bXB1dGVQYXNzRW5jb2Rlci5zZXRQaXBlbGluZShjb21wdXRlUGlwZWxpbmUpOworICAgIGNvbXB1
dGVQYXNzRW5jb2Rlci5zZXRCaW5kR3JvdXAoMCwgYmluZEdyb3VwKTsKKyAgICBjb21wdXRlUGFz
c0VuY29kZXIuZGlzcGF0Y2goMSwgMSwgMSk7CisgICAgY29tcHV0ZVBhc3NFbmNvZGVyLmVuZFBh
c3MoKTsKKyAgICBjb25zdCBjb21tYW5kQnVmZmVyID0gY29tbWFuZEVuY29kZXIuZmluaXNoKCk7
CisgICAgZGV2aWNlLmdldFF1ZXVlKCkuc3VibWl0KFtjb21tYW5kQnVmZmVyXSk7CisKKyAgICBj
b25zdCByZXN1bHRzQXJyYXlCdWZmZXIgPSBhd2FpdCBidWZmZXIubWFwUmVhZEFzeW5jKCk7Cisg
ICAgcmVzdWx0cyA9IG5ldyBJbnQzMkFycmF5KHJlc3VsdHNBcnJheUJ1ZmZlcik7CisgICAgc2hv
dWxkQmUoInJlc3VsdHNbMF0iLCAiMSIpOworICAgIHNob3VsZEJlKCJyZXN1bHRzWzFdIiwgIjAi
KTsKKyAgICBzaG91bGRCZSgicmVzdWx0c1syXSIsICIxIik7CisgICAgc2hvdWxkQmUoInJlc3Vs
dHNbM10iLCAiMSIpOworICAgIHNob3VsZEJlKCJyZXN1bHRzWzRdIiwgIjUiKTsKKyAgICBzaG91
bGRCZSgicmVzdWx0c1s1XSIsICI3Iik7CisgICAgYnVmZmVyLnVubWFwKCk7Cit9Cit3aW5kb3cu
anNUZXN0SXNBc3luYyA9IHRydWU7Cit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIGZ1
bmN0aW9uKCkgeworICAgIHN0YXJ0KCkudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgZmluaXNo
SlNUZXN0KCk7CisgICAgfSwgZnVuY3Rpb24oKSB7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOwor
ICAgIH0pOworfSk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>372572</attachid>
            <date>2019-06-20 11:08:24 -0700</date>
            <delta_ts>2019-06-21 00:14:30 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-195864-20190620110823.patch</filename>
            <type>text/plain</type>
            <size>7223</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2NjMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzZlMTRjZGI0NzdjMzc1
ZGJhYzNlMGM1MWI1NzdmNTUzOGQzYjE4OC4uZTEyN2I1NjM0Y2Y3NzgxNmIwNTY2NDA1NTE5N2Ew
ZDk5OTBlODEzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTA2LTIwICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dITFNMXSBy
ZWFkIG1vZGlmeSB3cml0ZSBleHByZXNzaW9ucyBkbyBubyB3b3JrIGFzIGV4cGVjdGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTU4NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiB3ZWJncHUv
d2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbAorCisgICAgICAgICogTW9kdWxlcy93ZWJncHUv
V0hMU0wvV0hMU0xTdGFuZGFyZExpYnJhcnkudHh0OgorCiAyMDE5LTA2LTE5ICBNeWxlcyBDLiBN
YXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW1dITFNMXSBIb29rIHVw
IGNvbW1vbiB0ZXh0dXJlIGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJncHUvV0hMU0wvV0hMU0xTdGFuZGFyZExpYnJhcnkudHh0IGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy93ZWJncHUvV0hMU0wvV0hMU0xTdGFuZGFyZExpYnJhcnkudHh0CmluZGV4IGM0
Y2EwYzMwNzM4MDdmODMwZGRmYjg0ZTU5OWYzZWQxMjE5N2FiZjYuLjI3NmI1MWNkNmI4YzI5ODVm
YThiZTY0YjA3ODc1NWI3ODQ3NDVkNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZ3B1L1dITFNML1dITFNMU3RhbmRhcmRMaWJyYXJ5LnR4dAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9XSExTTFN0YW5kYXJkTGlicmFyeS50eHQKQEAgLTMx
MCwxNyArMzEwLDYgQEAgbmF0aXZlIG9wZXJhdG9yIGZsb2F0KHNob3J0KTsKIG5hdGl2ZSBvcGVy
YXRvciBmbG9hdChpbnQpOwogbmF0aXZlIG9wZXJhdG9yIGZsb2F0KGhhbGYpOwogCi1uYXRpdmUg
ZmxvYXQgb3BlcmF0b3IrKGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgZmxvYXQgb3BlcmF0b3ItKGZs
b2F0LCBmbG9hdCk7Ci1uYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsIGludCk7Ci1uYXRpdmUgdWlu
dCBvcGVyYXRvcisodWludCwgdWludCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBpbnQp
OwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8KHVpbnQsIHVpbnQpOwotbmF0aXZlIGJvb2wgb3BlcmF0
b3I8KGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGZsb2F0LCBmbG9hdCk7
Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGludCwgaW50KTsKLW5hdGl2ZSBmbG9hdCBvcGVyYXRv
ciooZmxvYXQsIGZsb2F0KTsKLQogLy8gRklYTUU6IFRoZXNlIHNob3VsZCBiZSBhdXRvIGdlbmVy
YXRlZCBieSB0aGUgY29tcGlsZXIuCiAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTk4ODYxCiBuYXRpdmUgYm9vbCBvcGVyYXRvcj09KHRocmVhZCBpbnQqLCB0aHJl
YWQgaW50Kik7CkBAIC03NTUsNiArNzQ0LDU1IEBAIG9wZXJhdG9yIHVpbnQyKHVpbnQgeCwgdWlu
dCB5KSB7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorbmF0aXZlIGludCBvcGVyYXRvcisoaW50
LCBpbnQpOworbmF0aXZlIGludCBvcGVyYXRvci0oaW50LCBpbnQpOworbmF0aXZlIGludCBvcGVy
YXRvciooaW50LCBpbnQpOworbmF0aXZlIGludCBvcGVyYXRvci8oaW50LCBpbnQpOworbmF0aXZl
IGJvb2wgb3BlcmF0b3I9PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBp
bnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVy
YXRvcj4oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+PShpbnQsIGludCk7CituYXRp
dmUgdWludCBvcGVyYXRvcisodWludCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvci0odWlu
dCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvcioodWludCwgdWludCk7CituYXRpdmUgdWlu
dCBvcGVyYXRvci8odWludCwgdWludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj09KHVpbnQsIHVp
bnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KHVpbnQsIHVpbnQpOworbmF0aXZlIGJvb2wgb3Bl
cmF0b3I8PSh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPih1aW50LCB1aW50KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7CisKK25hdGl2ZSBmbG9hdCBvcGVy
YXRvcisoZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsIGZsb2F0
KTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvciooZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdCBv
cGVyYXRvci8oZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oZmxvYXQsIGZs
b2F0KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPChmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wg
b3BlcmF0b3I8PShmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGZsb2F0LCBm
bG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj49KGZsb2F0LCBmbG9hdCk7CisKK25hdGl2ZSBp
bnQgb3BlcmF0b3ImKGludCwgaW50KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3J8KGludCwgaW50KTsK
K25hdGl2ZSBpbnQgb3BlcmF0b3JeKGludCwgaW50KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3J+KGlu
dCk7CituYXRpdmUgaW50IG9wZXJhdG9yPDwoaW50LCB1aW50KTsKK25hdGl2ZSBpbnQgb3BlcmF0
b3I+PihpbnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3ImKHVpbnQsIHVpbnQpOworbmF0
aXZlIHVpbnQgb3BlcmF0b3J8KHVpbnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3JeKHVp
bnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3J+KHVpbnQpOworbmF0aXZlIHVpbnQgb3Bl
cmF0b3I8PCh1aW50LCB1aW50KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCwgdWludCk7
CisKK2ludCBvcGVyYXRvcisrKGludCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9
CitpbnQgb3BlcmF0b3ItLShpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQor
CiBuYXRpdmUgdXNob3J0IFNhbXBsZShUZXh0dXJlMUQ8dXNob3J0Piwgc2FtcGxlciwgZmxvYXQg
bG9jYXRpb24pOwogbmF0aXZlIHVzaG9ydCBTYW1wbGUoVGV4dHVyZTFEQXJyYXk8dXNob3J0Piwg
c2FtcGxlciwgZmxvYXQyIGxvY2F0aW9uKTsKIG5hdGl2ZSB1c2hvcnQgU2FtcGxlKFRleHR1cmUy
RDx1c2hvcnQ+LCBzYW1wbGVyLCBmbG9hdDIgbG9jYXRpb24pOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU0MzA1YTBjOGQ4
YzIzZDY0ZTlkMGQ2ZjhmN2FiYTM2NWY1ZjM0NTkuLjJiNDExMzJlZTNiODg1OTI1NWRmYzkzZjMw
NTQ1OGY3ZDg3OGRmOWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxOS0wNi0yMCAgTXlsZXMg
Qy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIFtXSExTTF0gcmVh
ZCBtb2RpZnkgd3JpdGUgZXhwcmVzc2lvbnMgZG8gbm8gd29yayBhcyBleHBlY3RlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1ODY0CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWJncHUvd2hsc2wt
cmVhZC1tb2RpZnktd3JpdGUuaHRtbDogQWRkZWQuCisKIDIwMTktMDYtMTkgIE15bGVzIEMuIE1h
eGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBbV0hMU0xdIEhvb2sgdXAg
Y29tbW9uIHRleHR1cmUgZnVuY3Rpb25zCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdwdS93aGxzbC1y
ZWFkLW1vZGlmeS13cml0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI5N2I5MTJlZDExNjI1Y2RhMGU1ZThm
ZDAyNWEwYjM4NzVlZjQ2MzEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbApAQCAtMCwwICsxLDgwIEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2NvbnN0IHNoYWRl
clNvdXJjZSA9IGAKK1tudW10aHJlYWRzKDEsIDEsIDEpXQorY29tcHV0ZSB2b2lkIGNvbXB1dGVT
aGFkZXIoZGV2aWNlIGludFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSkgeworICAgIGJ1ZmZlclsw
XSA9IDE7CisgICAgYnVmZmVyWzFdID0gYnVmZmVyWzBdKys7CisKKyAgICBidWZmZXJbMl0gPSAx
OworICAgIGJ1ZmZlclszXSA9ICsrYnVmZmVyWzJdOworCisgICAgYnVmZmVyWzRdID0gMTsKKyAg
ICBidWZmZXJbNF0gKz0gNTsKKworICAgIGJ1ZmZlcls1XSA9IDE7CisgICAgYnVmZmVyWzVdICo9
IDc7Cit9CitgOworbGV0IHJlc3VsdHM7Cithc3luYyBmdW5jdGlvbiBzdGFydCgpIHsKKyAgICBj
b25zdCBhZGFwdGVyID0gYXdhaXQgbmF2aWdhdG9yLmdwdS5yZXF1ZXN0QWRhcHRlcigpOworICAg
IGNvbnN0IGRldmljZSA9IGF3YWl0IGFkYXB0ZXIucmVxdWVzdERldmljZSgpOworCisgICAgY29u
c3Qgc2hhZGVyTW9kdWxlID0gZGV2aWNlLmNyZWF0ZVNoYWRlck1vZHVsZSh7Y29kZTogc2hhZGVy
U291cmNlLCBpc1dITFNMOiB0cnVlfSk7CisgICAgY29uc3QgY29tcHV0ZVN0YWdlID0ge21vZHVs
ZTogc2hhZGVyTW9kdWxlLCBlbnRyeVBvaW50OiAiY29tcHV0ZVNoYWRlciJ9OworCisgICAgY29u
c3QgYmluZEdyb3VwTGF5b3V0RGVzY3JpcHRvciA9IHtiaW5kaW5nczogW3tiaW5kaW5nOiAwLCB2
aXNpYmlsaXR5OiA3LCB0eXBlOiAic3RvcmFnZS1idWZmZXIifV19OworICAgIGNvbnN0IGJpbmRH
cm91cExheW91dCA9IGRldmljZS5jcmVhdGVCaW5kR3JvdXBMYXlvdXQoYmluZEdyb3VwTGF5b3V0
RGVzY3JpcHRvcik7CisgICAgY29uc3QgcGlwZWxpbmVMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRH
cm91cExheW91dHM6IFtiaW5kR3JvdXBMYXlvdXRdfTsKKyAgICBjb25zdCBwaXBlbGluZUxheW91
dCA9IGRldmljZS5jcmVhdGVQaXBlbGluZUxheW91dChwaXBlbGluZUxheW91dERlc2NyaXB0b3Ip
OworCisgICAgY29uc3QgY29tcHV0ZVBpcGVsaW5lRGVzY3JpcHRvciA9IHtjb21wdXRlU3RhZ2Us
IGxheW91dDogcGlwZWxpbmVMYXlvdXR9OworICAgIGNvbnN0IGNvbXB1dGVQaXBlbGluZSA9IGRl
dmljZS5jcmVhdGVDb21wdXRlUGlwZWxpbmUoY29tcHV0ZVBpcGVsaW5lRGVzY3JpcHRvcik7CisK
KyAgICBjb25zdCBzaXplID0gSW50MzJBcnJheS5CWVRFU19QRVJfRUxFTUVOVCAqIDY7CisKKyAg
ICBjb25zdCBidWZmZXJEZXNjcmlwdG9yID0ge3NpemUsIHVzYWdlOiBHUFVCdWZmZXJVc2FnZS5T
VE9SQUdFIHwgR1BVQnVmZmVyVXNhZ2UuTUFQX1JFQUR9OworICAgIGNvbnN0IGJ1ZmZlciA9IGRl
dmljZS5jcmVhdGVCdWZmZXIoYnVmZmVyRGVzY3JpcHRvcik7CisKKyAgICBjb25zdCBidWZmZXJC
aW5kaW5nID0ge2J1ZmZlcjogYnVmZmVyLCBzaXplfTsKKyAgICBjb25zdCBiaW5kR3JvdXBCaW5k
aW5nID0ge2JpbmRpbmc6IDAsIHJlc291cmNlOiBidWZmZXJCaW5kaW5nfTsKKyAgICBjb25zdCBi
aW5kR3JvdXBEZXNjcmlwdG9yID0ge2xheW91dDogYmluZEdyb3VwTGF5b3V0LCBiaW5kaW5nczog
W2JpbmRHcm91cEJpbmRpbmddfTsKKyAgICBjb25zdCBiaW5kR3JvdXAgPSBkZXZpY2UuY3JlYXRl
QmluZEdyb3VwKGJpbmRHcm91cERlc2NyaXB0b3IpOworCisgICAgY29uc3QgY29tbWFuZEVuY29k
ZXIgPSBkZXZpY2UuY3JlYXRlQ29tbWFuZEVuY29kZXIoKTsgLy8ge30KKyAgICBjb25zdCBjb21w
dXRlUGFzc0VuY29kZXIgPSBjb21tYW5kRW5jb2Rlci5iZWdpbkNvbXB1dGVQYXNzKCk7CisgICAg
Y29tcHV0ZVBhc3NFbmNvZGVyLnNldFBpcGVsaW5lKGNvbXB1dGVQaXBlbGluZSk7CisgICAgY29t
cHV0ZVBhc3NFbmNvZGVyLnNldEJpbmRHcm91cCgwLCBiaW5kR3JvdXApOworICAgIGNvbXB1dGVQ
YXNzRW5jb2Rlci5kaXNwYXRjaCgxLCAxLCAxKTsKKyAgICBjb21wdXRlUGFzc0VuY29kZXIuZW5k
UGFzcygpOworICAgIGNvbnN0IGNvbW1hbmRCdWZmZXIgPSBjb21tYW5kRW5jb2Rlci5maW5pc2go
KTsKKyAgICBkZXZpY2UuZ2V0UXVldWUoKS5zdWJtaXQoW2NvbW1hbmRCdWZmZXJdKTsKKworICAg
IGNvbnN0IHJlc3VsdHNBcnJheUJ1ZmZlciA9IGF3YWl0IGJ1ZmZlci5tYXBSZWFkQXN5bmMoKTsK
KyAgICByZXN1bHRzID0gbmV3IEludDMyQXJyYXkocmVzdWx0c0FycmF5QnVmZmVyKTsKKyAgICBz
aG91bGRCZSgicmVzdWx0c1swXSIsICIyIik7CisgICAgc2hvdWxkQmUoInJlc3VsdHNbMV0iLCAi
MSIpOworICAgIHNob3VsZEJlKCJyZXN1bHRzWzJdIiwgIjIiKTsKKyAgICBzaG91bGRCZSgicmVz
dWx0c1szXSIsICIyIik7CisgICAgc2hvdWxkQmUoInJlc3VsdHNbNF0iLCAiNiIpOworICAgIHNo
b3VsZEJlKCJyZXN1bHRzWzVdIiwgIjciKTsKKyAgICBidWZmZXIudW5tYXAoKTsKK30KK3dpbmRv
dy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
ZnVuY3Rpb24oKSB7CisgICAgc3RhcnQoKS50aGVuKGZ1bmN0aW9uKCkgeworICAgICAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICB9LCBmdW5jdGlvbigpIHsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7
CisgICAgfSk7Cit9KTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>372619</attachid>
            <date>2019-06-21 00:14:32 -0700</date>
            <delta_ts>2019-06-21 09:59:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195864-20190621001431.patch</filename>
            <type>text/plain</type>
            <size>7694</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ2NjcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDY4YjlkMjk0MGY2OTA3
YmI0ZmE0MTY4MGU5ZjdhN2Q2ODdjYjY4NS4uNzgwNDliNzNlMjk2YWViZWZlYTZhZjlhZGRhYjU5
NmQyYTU5ZTRlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE5LTA2LTIwICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dITFNMXSBy
ZWFkIG1vZGlmeSB3cml0ZSBleHByZXNzaW9ucyBkbyBubyB3b3JrIGFzIGV4cGVjdGVkCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTU4NjQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUdXJucyBvdXQgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5OTAzNyBhbHJlYWR5IGZpeGVk
IGV2ZXJ5dGhpbmcuCisgICAgICAgIFRoaXMgcGF0Y2gganVzdCBhZGRzIGEgdGVzdC4KKworICAg
ICAgICBUZXN0OiB3ZWJncHUvd2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbAorCisgICAgICAg
ICogTW9kdWxlcy93ZWJncHUvV0hMU0wvV0hMU0xTdGFuZGFyZExpYnJhcnkudHh0OgorCiAyMDE5
LTA2LTIwICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAg
ICAgICBbR1RLXSBTdG9wIHByZXRlbmRpbmcgV2ViQ29yZTo6V2lkZ2V0IGNhbiBoYXZlIGEgcGxh
dGZvcm0gd2lkZ2V0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9X
SExTTC9XSExTTFN0YW5kYXJkTGlicmFyeS50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmdwdS9XSExTTC9XSExTTFN0YW5kYXJkTGlicmFyeS50eHQKaW5kZXggMWI3NzI5MjFkMzlmNjFm
MTkzYTdjM2YzYWE0ZmE2YTRkZjBmNWU3YS4uZWQ1ZGNmNDBkOGU3MDBiODgxNGI2YzU5YjQ3Nzgx
ZGE4YzdhNDI0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV0hM
U0wvV0hMU0xTdGFuZGFyZExpYnJhcnkudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViZ3B1L1dITFNML1dITFNMU3RhbmRhcmRMaWJyYXJ5LnR4dApAQCAtMzEwLDE3ICszMTAsNiBA
QCBuYXRpdmUgb3BlcmF0b3IgZmxvYXQoc2hvcnQpOwogbmF0aXZlIG9wZXJhdG9yIGZsb2F0KGlu
dCk7CiBuYXRpdmUgb3BlcmF0b3IgZmxvYXQoaGFsZik7CiAKLW5hdGl2ZSBmbG9hdCBvcGVyYXRv
cisoZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsIGZsb2F0KTsK
LW5hdGl2ZSBpbnQgb3BlcmF0b3IrKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yKyh1
aW50LCB1aW50KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPChpbnQsIGludCk7Ci1uYXRpdmUgYm9v
bCBvcGVyYXRvcjwodWludCwgdWludCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcjwoZmxvYXQsIGZs
b2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPT0oZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29s
IG9wZXJhdG9yPT0oaW50LCBpbnQpOwotbmF0aXZlIGZsb2F0IG9wZXJhdG9yKihmbG9hdCwgZmxv
YXQpOwotCiAvLyBGSVhNRTogVGhlc2Ugc2hvdWxkIGJlIGF1dG8gZ2VuZXJhdGVkIGJ5IHRoZSBj
b21waWxlci4KIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg4
NjEKIG5hdGl2ZSBib29sIG9wZXJhdG9yPT0odGhyZWFkIGludCosIHRocmVhZCBpbnQqKTsKQEAg
LTc1NSw2ICs3NDQsNTUgQEAgb3BlcmF0b3IgdWludDIodWludCB4LCB1aW50IHkpIHsKICAgICBy
ZXR1cm4gcmVzdWx0OwogfQogCituYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsIGludCk7CituYXRp
dmUgaW50IG9wZXJhdG9yLShpbnQsIGludCk7CituYXRpdmUgaW50IG9wZXJhdG9yKihpbnQsIGlu
dCk7CituYXRpdmUgaW50IG9wZXJhdG9yLyhpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVyYXRv
cj09KGludCwgaW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPChpbnQsIGludCk7CituYXRpdmUg
Ym9vbCBvcGVyYXRvcjw9KGludCwgaW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPihpbnQsIGlu
dCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj49KGludCwgaW50KTsKK25hdGl2ZSB1aW50IG9wZXJh
dG9yKyh1aW50LCB1aW50KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLSh1aW50LCB1aW50KTsKK25h
dGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LCB1aW50KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLyh1
aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0odWludCwgdWludCk7CituYXRpdmUg
Ym9vbCBvcGVyYXRvcjwodWludCwgdWludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjw9KHVpbnQs
IHVpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+KHVpbnQsIHVpbnQpOworbmF0aXZlIGJvb2wg
b3BlcmF0b3I+PSh1aW50LCB1aW50KTsKKworbmF0aXZlIGZsb2F0IG9wZXJhdG9yKyhmbG9hdCwg
ZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCwgZmxvYXQpOworbmF0aXZlIGZs
b2F0IG9wZXJhdG9yKihmbG9hdCwgZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLyhmbG9h
dCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9hdCwgZmxvYXQpOworbmF0aXZl
IGJvb2wgb3BlcmF0b3I8KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjw9KGZs
b2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4oZmxvYXQsIGZsb2F0KTsKK25hdGl2
ZSBib29sIG9wZXJhdG9yPj0oZmxvYXQsIGZsb2F0KTsKKworbmF0aXZlIGludCBvcGVyYXRvciYo
aW50LCBpbnQpOworbmF0aXZlIGludCBvcGVyYXRvcnwoaW50LCBpbnQpOworbmF0aXZlIGludCBv
cGVyYXRvcl4oaW50LCBpbnQpOworbmF0aXZlIGludCBvcGVyYXRvcn4oaW50KTsKK25hdGl2ZSBp
bnQgb3BlcmF0b3I8PChpbnQsIHVpbnQpOworbmF0aXZlIGludCBvcGVyYXRvcj4+KGludCwgdWlu
dCk7CituYXRpdmUgdWludCBvcGVyYXRvciYodWludCwgdWludCk7CituYXRpdmUgdWludCBvcGVy
YXRvcnwodWludCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvcl4odWludCwgdWludCk7Citu
YXRpdmUgdWludCBvcGVyYXRvcn4odWludCk7CituYXRpdmUgdWludCBvcGVyYXRvcjw8KHVpbnQs
IHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3I+Pih1aW50LCB1aW50KTsKKworaW50IG9wZXJh
dG9yKysoaW50IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlICsgMTsKK30KK2ludCBvcGVyYXRv
ci0tKGludCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSAtIDE7Cit9CisKIG5hdGl2ZSB1c2hv
cnQgU2FtcGxlKFRleHR1cmUxRDx1c2hvcnQ+LCBzYW1wbGVyLCBmbG9hdCBsb2NhdGlvbik7CiBu
YXRpdmUgdXNob3J0IFNhbXBsZShUZXh0dXJlMURBcnJheTx1c2hvcnQ+LCBzYW1wbGVyLCBmbG9h
dDIgbG9jYXRpb24pOwogbmF0aXZlIHVzaG9ydCBTYW1wbGUoVGV4dHVyZTJEPHVzaG9ydD4sIHNh
bXBsZXIsIGZsb2F0MiBsb2NhdGlvbik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMWY5MTg2ZTNmYjYxYTdjN2M3MjEzZmU3
ZTU2ODdmMWZkZDAwNTU0YS4uZWI0MTBmZGIzOWJkZTAzYTg4MjQ3YzU0MmEwMjE2MWQzMDE5Mzg1
MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE5LTA2LTIwICBNeWxlcyBDLiBNYXhmaWVsZCAg
PG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dITFNMXSByZWFkIG1vZGlmeSB3cml0
ZSBleHByZXNzaW9ucyBkbyBubyB3b3JrIGFzIGV4cGVjdGVkCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTU4NjQKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHdlYmdwdS93aGxzbC1yZWFkLW1vZGlmeS13
cml0ZS5odG1sOiBBZGRlZC4KKwogMjAxOS0wNi0yMCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJh
c2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIGl0IHBvc3NpYmxlIHRvIGluY2x1ZGUgY2xp
cHBpbmcgaW4gR3JhcGhpY3NMYXllciB0cmVlIGR1bXBzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmdw
dS93aGxzbC1yZWFkLW1vZGlmeS13cml0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjExOGVhY2NiNDM3ZWE1
MzA2MWJhNzU3NDBhNzI1Yzg2MTk0ZWUyZTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy93ZWJncHUvd2hsc2wtcmVhZC1tb2RpZnktd3JpdGUuaHRtbApAQCAtMCwwICsxLDk0IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Nv
bnN0IHNoYWRlclNvdXJjZSA9IGAKK1tudW10aHJlYWRzKDEsIDEsIDEpXQorY29tcHV0ZSB2b2lk
IGNvbXB1dGVTaGFkZXIoZGV2aWNlIGludFtdIGJ1ZmZlciA6IHJlZ2lzdGVyKHUwKSkgeworICAg
IGJ1ZmZlclswXSA9IDE7CisgICAgYnVmZmVyWzFdID0gYnVmZmVyWzBdKys7CisKKyAgICBidWZm
ZXJbMl0gPSAxOworICAgIGJ1ZmZlclszXSA9ICsrYnVmZmVyWzJdOworCisgICAgYnVmZmVyWzRd
ID0gMTsKKyAgICBidWZmZXJbNF0gKz0gNTsKKworICAgIGJ1ZmZlcls1XSA9IDE7CisgICAgYnVm
ZmVyWzVdICo9IDc7CisKKyAgICBpbnQgdG90YWwgPSAxNDsKKyAgICBmb3IgKGludCBpID0gMDsg
aSA8IDEwOyBpICs9IDIpIHsKKyAgICAgICAgdG90YWwgKz0gaTsKKyAgICB9CisgICAgYnVmZmVy
WzZdID0gdG90YWw7CisKKyAgICB0b3RhbCA9IDE0OworICAgIGZvciAoaW50IGkgPSAwOyBpIDwg
MTA7ICsraSkgeworICAgICAgICB0b3RhbCArPSBpOworICAgIH0KKyAgICBidWZmZXJbN10gPSB0
b3RhbDsKK30KK2A7CitsZXQgcmVzdWx0czsKK2FzeW5jIGZ1bmN0aW9uIHN0YXJ0KCkgeworICAg
IGNvbnN0IGFkYXB0ZXIgPSBhd2FpdCBuYXZpZ2F0b3IuZ3B1LnJlcXVlc3RBZGFwdGVyKCk7Cisg
ICAgY29uc3QgZGV2aWNlID0gYXdhaXQgYWRhcHRlci5yZXF1ZXN0RGV2aWNlKCk7CisKKyAgICBj
b25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFk
ZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9k
dWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CisKKyAgICBj
b25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAs
IHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CisgICAgY29uc3QgYmlu
ZEdyb3VwTGF5b3V0ID0gZGV2aWNlLmNyZWF0ZUJpbmRHcm91cExheW91dChiaW5kR3JvdXBMYXlv
dXREZXNjcmlwdG9yKTsKKyAgICBjb25zdCBwaXBlbGluZUxheW91dERlc2NyaXB0b3IgPSB7Ymlu
ZEdyb3VwTGF5b3V0czogW2JpbmRHcm91cExheW91dF19OworICAgIGNvbnN0IHBpcGVsaW5lTGF5
b3V0ID0gZGV2aWNlLmNyZWF0ZVBpcGVsaW5lTGF5b3V0KHBpcGVsaW5lTGF5b3V0RGVzY3JpcHRv
cik7CisKKyAgICBjb25zdCBjb21wdXRlUGlwZWxpbmVEZXNjcmlwdG9yID0ge2NvbXB1dGVTdGFn
ZSwgbGF5b3V0OiBwaXBlbGluZUxheW91dH07CisgICAgY29uc3QgY29tcHV0ZVBpcGVsaW5lID0g
ZGV2aWNlLmNyZWF0ZUNvbXB1dGVQaXBlbGluZShjb21wdXRlUGlwZWxpbmVEZXNjcmlwdG9yKTsK
KworICAgIGNvbnN0IHNpemUgPSBJbnQzMkFycmF5LkJZVEVTX1BFUl9FTEVNRU5UICogODsKKwor
ICAgIGNvbnN0IGJ1ZmZlckRlc2NyaXB0b3IgPSB7c2l6ZSwgdXNhZ2U6IEdQVUJ1ZmZlclVzYWdl
LlNUT1JBR0UgfCBHUFVCdWZmZXJVc2FnZS5NQVBfUkVBRH07CisgICAgY29uc3QgYnVmZmVyID0g
ZGV2aWNlLmNyZWF0ZUJ1ZmZlcihidWZmZXJEZXNjcmlwdG9yKTsKKworICAgIGNvbnN0IGJ1ZmZl
ckJpbmRpbmcgPSB7YnVmZmVyOiBidWZmZXIsIHNpemV9OworICAgIGNvbnN0IGJpbmRHcm91cEJp
bmRpbmcgPSB7YmluZGluZzogMCwgcmVzb3VyY2U6IGJ1ZmZlckJpbmRpbmd9OworICAgIGNvbnN0
IGJpbmRHcm91cERlc2NyaXB0b3IgPSB7bGF5b3V0OiBiaW5kR3JvdXBMYXlvdXQsIGJpbmRpbmdz
OiBbYmluZEdyb3VwQmluZGluZ119OworICAgIGNvbnN0IGJpbmRHcm91cCA9IGRldmljZS5jcmVh
dGVCaW5kR3JvdXAoYmluZEdyb3VwRGVzY3JpcHRvcik7CisKKyAgICBjb25zdCBjb21tYW5kRW5j
b2RlciA9IGRldmljZS5jcmVhdGVDb21tYW5kRW5jb2RlcigpOyAvLyB7fQorICAgIGNvbnN0IGNv
bXB1dGVQYXNzRW5jb2RlciA9IGNvbW1hbmRFbmNvZGVyLmJlZ2luQ29tcHV0ZVBhc3MoKTsKKyAg
ICBjb21wdXRlUGFzc0VuY29kZXIuc2V0UGlwZWxpbmUoY29tcHV0ZVBpcGVsaW5lKTsKKyAgICBj
b21wdXRlUGFzc0VuY29kZXIuc2V0QmluZEdyb3VwKDAsIGJpbmRHcm91cCk7CisgICAgY29tcHV0
ZVBhc3NFbmNvZGVyLmRpc3BhdGNoKDEsIDEsIDEpOworICAgIGNvbXB1dGVQYXNzRW5jb2Rlci5l
bmRQYXNzKCk7CisgICAgY29uc3QgY29tbWFuZEJ1ZmZlciA9IGNvbW1hbmRFbmNvZGVyLmZpbmlz
aCgpOworICAgIGRldmljZS5nZXRRdWV1ZSgpLnN1Ym1pdChbY29tbWFuZEJ1ZmZlcl0pOworCisg
ICAgY29uc3QgcmVzdWx0c0FycmF5QnVmZmVyID0gYXdhaXQgYnVmZmVyLm1hcFJlYWRBc3luYygp
OworICAgIHJlc3VsdHMgPSBuZXcgSW50MzJBcnJheShyZXN1bHRzQXJyYXlCdWZmZXIpOworICAg
IHNob3VsZEJlKCJyZXN1bHRzWzBdIiwgIjIiKTsKKyAgICBzaG91bGRCZSgicmVzdWx0c1sxXSIs
ICIxIik7CisgICAgc2hvdWxkQmUoInJlc3VsdHNbMl0iLCAiMiIpOworICAgIHNob3VsZEJlKCJy
ZXN1bHRzWzNdIiwgIjIiKTsKKyAgICBzaG91bGRCZSgicmVzdWx0c1s0XSIsICI2Iik7CisgICAg
c2hvdWxkQmUoInJlc3VsdHNbNV0iLCAiNyIpOworICAgIHNob3VsZEJlKCJyZXN1bHRzWzZdIiwg
IjM0Iik7CisgICAgc2hvdWxkQmUoInJlc3VsdHNbN10iLCAiNTkiKTsKKyAgICBidWZmZXIudW5t
YXAoKTsKK30KK3dpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK3dpbmRvdy5hZGRFdmVudExp
c3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CisgICAgc3RhcnQoKS50aGVuKGZ1bmN0aW9uKCkg
eworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICB9LCBmdW5jdGlvbigpIHsKKyAgICAgICAg
ZmluaXNoSlNUZXN0KCk7CisgICAgfSk7Cit9KTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>