<?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>189099</bug_id>
          
          <creation_ts>2018-08-29 14:57:10 -0700</creation_ts>
          <short_desc>[WHLSL] Implement tests to verify array indexing order matches our desires</short_desc>
          <delta_ts>2018-10-13 15:05:11 -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>Other</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>
          <dependson>189101</dependson>
          <blocked>176199</blocked>
    
    <blocked>189175</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Thomas Denney">tdenney</reporter>
          <assigned_to name="Thomas Denney">tdenney</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1454943</commentid>
    <comment_count>0</comment_count>
    <who name="Thomas Denney">tdenney</who>
    <bug_when>2018-08-29 14:57:10 -0700</bug_when>
    <thetext>If you have a float2x4 (for example) then the first subscript index should match the first dimension and the second subscript index should match the second dimension.

Likewise, if you have an array declared as float[5][4] x, then you should be able to access element x[4][3] (but not x[3][4]).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455403</commentid>
    <comment_count>1</comment_count>
      <attachid>348543</attachid>
    <who name="Thomas Denney">tdenney</who>
    <bug_when>2018-08-30 14:07:10 -0700</bug_when>
    <thetext>Created attachment 348543
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455413</commentid>
    <comment_count>2</comment_count>
      <attachid>348549</attachid>
    <who name="Thomas Denney">tdenney</who>
    <bug_when>2018-08-30 14:23:37 -0700</bug_when>
    <thetext>Created attachment 348549
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455416</commentid>
    <comment_count>3</comment_count>
      <attachid>348550</attachid>
    <who name="Thomas Denney">tdenney</who>
    <bug_when>2018-08-30 14:27:40 -0700</bug_when>
    <thetext>Created attachment 348550
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455418</commentid>
    <comment_count>4</comment_count>
      <attachid>348550</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-30 14:32:37 -0700</bug_when>
    <thetext>Comment on attachment 348550
Patch

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

&gt; Tools/WebGPUShadingLanguageRI/Test.js:5591
&gt; +let testExclusionFilter = /^disabled_/;

I prefer DISABLED_</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455424</commentid>
    <comment_count>5</comment_count>
      <attachid>348555</attachid>
    <who name="Thomas Denney">tdenney</who>
    <bug_when>2018-08-30 14:36:07 -0700</bug_when>
    <thetext>Created attachment 348555
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455431</commentid>
    <comment_count>6</comment_count>
      <attachid>348555</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-30 14:53:51 -0700</bug_when>
    <thetext>Comment on attachment 348555
Patch

Clearing flags on attachment: 348555

Committed r235525: &lt;https://trac.webkit.org/changeset/235525&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455432</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-30 14:53:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455703</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-08-31 08:56:46 -0700</bug_when>
    <thetext>&lt;rdar://problem/43941946&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468872</commentid>
    <comment_count>9</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-10-13 15:05:11 -0700</bug_when>
    <thetext>Migrated to https://github.com/gpuweb/WHLSL/issues/72</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348543</attachid>
            <date>2018-08-30 14:07:10 -0700</date>
            <delta_ts>2018-08-30 14:23:35 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-189099-20180830140709.patch</filename>
            <type>text/plain</type>
            <size>3313</size>
            <attacher name="Thomas Denney">tdenney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NTE3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2NlYzYxODdmZTU1MDBkNWJmODBmNTJkODA2MTY2MGJh
MzJiNGU3ZC4uNDUzOGYyNWRhODY5ZmM1YWE0Njg4ZTI5MzQxYWFmNjA0YWU2ZDRiYyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0
IEBACisyMDE4LTA4LTMwICBUaG9tYXMgRGVubmV5ICA8dGRlbm5leUBhcHBsZS5jb20+CisKKyAg
ICAgICAgW1dITFNMXSBJbXBsZW1lbnQgdGVzdHMgdG8gdmVyaWZ5IG1hdHJpeCBhbmQgYXJyYXkg
aW5kZXhpbmcgb3JkZXIgbWF0Y2hlcyBvdXIgZGVzaXJlcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg5MDk5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0
LmpzOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVSZWYuanM6CisgICAg
ICAgIChUeXBlUmVmLndyYXApOgorCiAyMDE4LTA4LTMwICBTaWh1aSBMaXUgIDxzaWh1aV9saXVA
YXBwbGUuY29tPgogCiAgICAgICAgIFdLTmF2aWdhdGlvbi5Qcm9jZXNzQ3Jhc2hEdXJpbmdDYWxs
YmFjayBpcyBmYWlsaW5nIG9uIGlPUwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvVGVzdC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMK
aW5kZXggMmI1Zjg3MmQ4OTcwYzllOWUwMzlhOGIxODI3ZTM3NzM4MDc4OWZmYi4uMjYxMGE2YTM4
NjU1NjVmZmE2MjllZDNlNTkzNGQwMWUyZTQ0ZDc3YSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9UZXN0LmpzCkBAIC01NTUxLDYgKzU1NTEsNDAgQEAgdGVzdHMubWF0cml4TXVsdGlwbGlj
YXRpb24gPSBmdW5jdGlvbigpIHsKICAgICBjaGVja0Zsb2F0KHByb2dyYW0sIGNhbGxGdW5jdGlv
bihwcm9ncmFtLCAiZm9vMTMiLCBbXSksIDI5ICogNyArIDQzICogMTEgKyA2MSAqIDEzKTsKIH0K
IAordGVzdHMuYXJyYXlJbmRleCA9IGZ1bmN0aW9uKCkgeworICAgIGxldCBwcm9ncmFtID0gZG9Q
cmVwKGAKKyAgICAgICAgdWludCBpbm5lckFycmF5TGVuZ3RoKCkgeworICAgICAgICAgICAgaW50
WzJdWzNdIGFycmF5OworICAgICAgICAgICAgcmV0dXJuIGFycmF5WzBdLmxlbmd0aDsKKyAgICAg
ICAgfQorICAgICAgICAKKyAgICAgICAgdWludCBvdXRlckFycmF5TGVuZ3RoKCkgeworICAgICAg
ICAgICAgaW50WzJdWzNdIGFycmF5OworICAgICAgICAgICAgcmV0dXJuIGFycmF5Lmxlbmd0aDsK
KyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAgaW50IGFycmF5SW5kZXhpbmcoaW50IGksIGlu
dCBqKSB7CisgICAgICAgICAgICBpbnRbMl1bM10gYXJyYXk7CisgICAgICAgICAgICBhcnJheVsw
XVswXSA9IDE7CisgICAgICAgICAgICBhcnJheVswXVsxXSA9IDI7CisgICAgICAgICAgICBhcnJh
eVswXVsyXSA9IDM7CisgICAgICAgICAgICBhcnJheVsxXVswXSA9IDQ7CisgICAgICAgICAgICBh
cnJheVsxXVsxXSA9IDU7CisgICAgICAgICAgICBhcnJheVsxXVsyXSA9IDY7CisgICAgICAgICAg
ICByZXR1cm4gYXJyYXlbaV1bal07CisgICAgICAgIH0KKyAgICBgKTsKKyAgICAKKyAgICBjaGVj
a1VpbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJpbm5lckFycmF5TGVuZ3RoIiwg
W10pLCAzKTsKKyAgICBjaGVja1VpbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJv
dXRlckFycmF5TGVuZ3RoIiwgW10pLCAyKTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVu
Y3Rpb24ocHJvZ3JhbSwgImFycmF5SW5kZXhpbmciLCBbIG1ha2VJbnQocHJvZ3JhbSwgMCksIG1h
a2VJbnQocHJvZ3JhbSwgMCkgXSksIDEpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5j
dGlvbihwcm9ncmFtLCAiYXJyYXlJbmRleGluZyIsIFsgbWFrZUludChwcm9ncmFtLCAwKSwgbWFr
ZUludChwcm9ncmFtLCAxKSBdKSwgMik7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0
aW9uKHByb2dyYW0sICJhcnJheUluZGV4aW5nIiwgWyBtYWtlSW50KHByb2dyYW0sIDApLCBtYWtl
SW50KHByb2dyYW0sIDIpIF0pLCAzKTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rp
b24ocHJvZ3JhbSwgImFycmF5SW5kZXhpbmciLCBbIG1ha2VJbnQocHJvZ3JhbSwgMSksIG1ha2VJ
bnQocHJvZ3JhbSwgMCkgXSksIDQpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlv
bihwcm9ncmFtLCAiYXJyYXlJbmRleGluZyIsIFsgbWFrZUludChwcm9ncmFtLCAxKSwgbWFrZUlu
dChwcm9ncmFtLCAxKSBdKSwgNSk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9u
KHByb2dyYW0sICJhcnJheUluZGV4aW5nIiwgWyBtYWtlSW50KHByb2dyYW0sIDEpLCBtYWtlSW50
KHByb2dyYW0sIDIpIF0pLCA2KTsgICAgCit9CisKIG9rVG9UZXN0ID0gdHJ1ZTsKIAogbGV0IHRl
c3RGaWx0ZXIgPSAvLiovOyAvLyBydW4gZXZlcnl0aGluZyBieSBkZWZhdWx0CmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpzIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvVHlwZVJlZi5qcwppbmRleCBhY2RhNzA2YzBjZTM3OTdlNDZiMDk1
MTdkY2IwODFlYTU5ZTNkZjg5Li40MWJiMDYwMmZmMDk1NzQ3YzE3MmFjZDk4NjcxZTAwNTE0ZWM5
MDA4IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpz
CisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVSZWYuanMKQEAgLTQyLDcg
KzQyLDcgQEAgY2xhc3MgVHlwZVJlZiBleHRlbmRzIFR5cGUgewogICAgICAgICBpZiAodHlwZSBp
bnN0YW5jZW9mIE5hdGl2ZVR5cGUpCiAgICAgICAgICAgICByZXN1bHQgPSBuZXcgVHlwZVJlZih0
eXBlLm9yaWdpbiwgdHlwZS5uYW1lLCB0eXBlLnR5cGVBcmd1bWVudHMpOwogICAgICAgICBlbHNl
Ci0gICAgICAgICAgICByZXN1bHQgPSBuZXcgVHlwZVJlZih0eXBlLm9yZ2luLCB0eXBlLm5hbWUp
OworICAgICAgICAgICAgcmVzdWx0ID0gbmV3IFR5cGVSZWYodHlwZS5vcmlnaW4sIHR5cGUubmFt
ZSk7CiAgICAgICAgIHJlc3VsdC50eXBlID0gdHlwZTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsK
ICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348549</attachid>
            <date>2018-08-30 14:23:37 -0700</date>
            <delta_ts>2018-08-30 14:27:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189099-20180830142335.patch</filename>
            <type>text/plain</type>
            <size>4559</size>
            <attacher name="Thomas Denney">tdenney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NTE3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2NlYzYxODdmZTU1MDBkNWJmODBmNTJkODA2MTY2MGJh
MzJiNGU3ZC4uYTNlNGEzZjYxMDE2MjhlMjdjNDlkZGE4YTQxNDRhMzVhZWMxNGFkNiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDE4LTA4LTMwICBUaG9tYXMgRGVubmV5ICA8dGRlbm5leUBhcHBsZS5jb20+CisKKyAg
ICAgICAgW1dITFNMXSBJbXBsZW1lbnQgdGVzdHMgdG8gdmVyaWZ5IGFycmF5IGluZGV4aW5nIG9y
ZGVyIG1hdGNoZXMgb3VyIGRlc2lyZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4OTA5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qczogQWRkIG5l
dyB0ZXN0IGZvciBhcnJheSBpbmRleGluZyBvcmRlcgorICAgICAgICBhbmQgdGhlIG9wdGlvbiB0
byBleHBsaWNpdGx5IGRpc2FibGUgdGVzdHMgKHRoaXMgdGVzdCBpcyBkaXNhYmxlZCBieQorICAg
ICAgICBkZWZhdWx0KS4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVm
LmpzOgorICAgICAgICAoVHlwZVJlZi53cmFwKTogRml4ZXMgIHR5cG8uCisKIDIwMTgtMDgtMzAg
IFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CiAKICAgICAgICAgV0tOYXZpZ2F0aW9u
LlByb2Nlc3NDcmFzaER1cmluZ0NhbGxiYWNrIGlzIGZhaWxpbmcgb24gaU9TCmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvVGVzdC5qcwppbmRleCAyYjVmODcyZDg5NzBjOWU5ZTAzOWE4YjE4Mjdl
Mzc3MzgwNzg5ZmZiLi44NzlhNDVlNDMxYjUxZTQzMzM4YzUxOTMxZmFkMzJjNDZmZmVjYzExIDEw
MDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMKQEAgLTU1NTEsOSArNTU1MSw0NCBA
QCB0ZXN0cy5tYXRyaXhNdWx0aXBsaWNhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgIGNoZWNrRmxv
YXQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28xMyIsIFtdKSwgMjkgKiA3ICsg
NDMgKiAxMSArIDYxICogMTMpOwogfQogCit0ZXN0cy5kaXNhYmxlZF9hcnJheUluZGV4ID0gZnVu
Y3Rpb24oKSB7CisgICAgbGV0IHByb2dyYW0gPSBkb1ByZXAoYAorICAgICAgICB1aW50IGlubmVy
QXJyYXlMZW5ndGgoKSB7CisgICAgICAgICAgICBpbnRbMl1bM10gYXJyYXk7CisgICAgICAgICAg
ICByZXR1cm4gYXJyYXlbMF0ubGVuZ3RoOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICB1
aW50IG91dGVyQXJyYXlMZW5ndGgoKSB7CisgICAgICAgICAgICBpbnRbMl1bM10gYXJyYXk7Cisg
ICAgICAgICAgICByZXR1cm4gYXJyYXkubGVuZ3RoOworICAgICAgICB9CisgICAgICAgIAorICAg
ICAgICBpbnQgYXJyYXlJbmRleGluZyh1aW50IGksIHVpbnQgaikgeworICAgICAgICAgICAgaW50
WzJdWzNdIGFycmF5OworICAgICAgICAgICAgYXJyYXlbMF1bMF0gPSAxOworICAgICAgICAgICAg
YXJyYXlbMF1bMV0gPSAyOworICAgICAgICAgICAgYXJyYXlbMF1bMl0gPSAzOworICAgICAgICAg
ICAgYXJyYXlbMV1bMF0gPSA0OworICAgICAgICAgICAgYXJyYXlbMV1bMV0gPSA1OworICAgICAg
ICAgICAgYXJyYXlbMV1bMl0gPSA2OworICAgICAgICAgICAgcmV0dXJuIGFycmF5W2ldW2pdOwor
ICAgICAgICB9CisgICAgYCk7CisgICAgCisgICAgY2hlY2tVaW50KHByb2dyYW0sIGNhbGxGdW5j
dGlvbihwcm9ncmFtLCAiaW5uZXJBcnJheUxlbmd0aCIsIFtdKSwgMyk7CisgICAgY2hlY2tVaW50
KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAib3V0ZXJBcnJheUxlbmd0aCIsIFtdKSwg
Mik7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJhcnJheUlu
ZGV4aW5nIiwgWyBtYWtlVWludChwcm9ncmFtLCAwKSwgbWFrZVVpbnQocHJvZ3JhbSwgMCkgXSks
IDEpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYXJyYXlJ
bmRleGluZyIsIFsgbWFrZVVpbnQocHJvZ3JhbSwgMCksIG1ha2VVaW50KHByb2dyYW0sIDEpIF0p
LCAyKTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImFycmF5
SW5kZXhpbmciLCBbIG1ha2VVaW50KHByb2dyYW0sIDApLCBtYWtlVWludChwcm9ncmFtLCAyKSBd
KSwgMyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJhcnJh
eUluZGV4aW5nIiwgWyBtYWtlVWludChwcm9ncmFtLCAxKSwgbWFrZVVpbnQocHJvZ3JhbSwgMCkg
XSksIDQpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYXJy
YXlJbmRleGluZyIsIFsgbWFrZVVpbnQocHJvZ3JhbSwgMSksIG1ha2VVaW50KHByb2dyYW0sIDEp
IF0pLCA1KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImFy
cmF5SW5kZXhpbmciLCBbIG1ha2VVaW50KHByb2dyYW0sIDEpLCBtYWtlVWludChwcm9ncmFtLCAy
KSBdKSwgNik7ICAgIAorfQorCiBva1RvVGVzdCA9IHRydWU7CiAKLWxldCB0ZXN0RmlsdGVyID0g
Ly4qLzsgLy8gcnVuIGV2ZXJ5dGhpbmcgYnkgZGVmYXVsdAorbGV0IHRlc3RGaWx0ZXIgPSAvYXJy
YXlJbmRleHxtYXRyaXhJbmRleC87IC8vIHJ1biBldmVyeXRoaW5nIGJ5IGRlZmF1bHQKK2xldCB0
ZXN0RXhjbHVzaW9uRmlsdGVyID0gL15kaXNhYmxlZF8vOwogaWYgKHRoaXNbImFyZ3VtZW50cyJd
KSB7CiAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsKICAg
ICAgICAgc3dpdGNoIChhcmd1bWVudHNbMF0pIHsKQEAgLTU1ODMsMTIgKzU2MTgsMTYgQEAgZnVu
Y3Rpb24qIGRvVGVzdCh0ZXN0RmlsdGVyKQogICAgIG5hbWVzLnNvcnQoKTsKICAgICBmb3IgKGxl
dCBzIG9mIG5hbWVzKSB7CiAgICAgICAgIGlmIChzLm1hdGNoKHRlc3RGaWx0ZXIpKSB7Ci0gICAg
ICAgICAgICBwcmludCgiVEVTVDogIiArIHMgKyAiLi4uIik7Ci0gICAgICAgICAgICB5aWVsZDsK
LSAgICAgICAgICAgIGNvbnN0IHRlc3RCZWZvcmUgPSBwcmVjaXNlVGltZSgpOwotICAgICAgICAg
ICAgdGVzdHNbc10oKTsKLSAgICAgICAgICAgIGNvbnN0IHRlc3RBZnRlciA9IHByZWNpc2VUaW1l
KCk7Ci0gICAgICAgICAgICBwcmludChgICAgIE9LLCB0b29rICR7TWF0aC5yb3VuZCgodGVzdEFm
dGVyIC0gdGVzdEJlZm9yZSkgKiAxMDAwKX0gbXNgKTsKKyAgICAgICAgICAgIGlmIChzLm1hdGNo
KHRlc3RFeGNsdXNpb25GaWx0ZXIpKSB7CisgICAgICAgICAgICAgICAgcHJpbnQoYFNraXBwaW5n
ICR7c30gYmVjYXVzZSBpdCBpcyBkaXNhYmxlZC5gKTsKKyAgICAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICAgICAgcHJpbnQoIlRFU1Q6ICIgKyBzICsgIi4uLiIpOworICAgICAgICAgICAg
ICAgIHlpZWxkOworICAgICAgICAgICAgICAgIGNvbnN0IHRlc3RCZWZvcmUgPSBwcmVjaXNlVGlt
ZSgpOworICAgICAgICAgICAgICAgIHRlc3RzW3NdKCk7CisgICAgICAgICAgICAgICAgY29uc3Qg
dGVzdEFmdGVyID0gcHJlY2lzZVRpbWUoKTsKKyAgICAgICAgICAgICAgICBwcmludChgICAgIE9L
LCB0b29rICR7TWF0aC5yb3VuZCgodGVzdEFmdGVyIC0gdGVzdEJlZm9yZSkgKiAxMDAwKX0gbXNg
KTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZVJlZi5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1R5cGVSZWYuanMKaW5kZXggYWNkYTcwNmMwY2UzNzk3ZTQ2YjA5NTE3ZGNiMDgx
ZWE1OWUzZGY4OS4uNDFiYjA2MDJmZjA5NTc0N2MxNzJhY2Q5ODY3MWUwMDUxNGVjOTAwOCAxMDA2
NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZVJlZi5qcworKysgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpzCkBAIC00Miw3ICs0Miw3IEBA
IGNsYXNzIFR5cGVSZWYgZXh0ZW5kcyBUeXBlIHsKICAgICAgICAgaWYgKHR5cGUgaW5zdGFuY2Vv
ZiBOYXRpdmVUeXBlKQogICAgICAgICAgICAgcmVzdWx0ID0gbmV3IFR5cGVSZWYodHlwZS5vcmln
aW4sIHR5cGUubmFtZSwgdHlwZS50eXBlQXJndW1lbnRzKTsKICAgICAgICAgZWxzZQotICAgICAg
ICAgICAgcmVzdWx0ID0gbmV3IFR5cGVSZWYodHlwZS5vcmdpbiwgdHlwZS5uYW1lKTsKKyAgICAg
ICAgICAgIHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3JpZ2luLCB0eXBlLm5hbWUpOwogICAg
ICAgICByZXN1bHQudHlwZSA9IHR5cGU7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348550</attachid>
            <date>2018-08-30 14:27:40 -0700</date>
            <delta_ts>2018-08-30 14:36:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189099-20180830142738.patch</filename>
            <type>text/plain</type>
            <size>4486</size>
            <attacher name="Thomas Denney">tdenney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NTE3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2NlYzYxODdmZTU1MDBkNWJmODBmNTJkODA2MTY2MGJh
MzJiNGU3ZC4uYTNlNGEzZjYxMDE2MjhlMjdjNDlkZGE4YTQxNDRhMzVhZWMxNGFkNiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDE4LTA4LTMwICBUaG9tYXMgRGVubmV5ICA8dGRlbm5leUBhcHBsZS5jb20+CisKKyAg
ICAgICAgW1dITFNMXSBJbXBsZW1lbnQgdGVzdHMgdG8gdmVyaWZ5IGFycmF5IGluZGV4aW5nIG9y
ZGVyIG1hdGNoZXMgb3VyIGRlc2lyZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4OTA5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qczogQWRkIG5l
dyB0ZXN0IGZvciBhcnJheSBpbmRleGluZyBvcmRlcgorICAgICAgICBhbmQgdGhlIG9wdGlvbiB0
byBleHBsaWNpdGx5IGRpc2FibGUgdGVzdHMgKHRoaXMgdGVzdCBpcyBkaXNhYmxlZCBieQorICAg
ICAgICBkZWZhdWx0KS4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVm
LmpzOgorICAgICAgICAoVHlwZVJlZi53cmFwKTogRml4ZXMgIHR5cG8uCisKIDIwMTgtMDgtMzAg
IFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CiAKICAgICAgICAgV0tOYXZpZ2F0aW9u
LlByb2Nlc3NDcmFzaER1cmluZ0NhbGxiYWNrIGlzIGZhaWxpbmcgb24gaU9TCmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvVGVzdC5qcwppbmRleCAyYjVmODcyZDg5NzBjOWU5ZTAzOWE4YjE4Mjdl
Mzc3MzgwNzg5ZmZiLi43ODNiZTFhZjJiYTAwM2NjZWRmOGY0ZmU4MjYxYmIwZjc2M2E2NzUwIDEw
MDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMKQEAgLTU1NTEsOSArNTU1MSw0NCBA
QCB0ZXN0cy5tYXRyaXhNdWx0aXBsaWNhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgIGNoZWNrRmxv
YXQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28xMyIsIFtdKSwgMjkgKiA3ICsg
NDMgKiAxMSArIDYxICogMTMpOwogfQogCit0ZXN0cy5kaXNhYmxlZF9hcnJheUluZGV4ID0gZnVu
Y3Rpb24oKSB7CisgICAgbGV0IHByb2dyYW0gPSBkb1ByZXAoYAorICAgICAgICB1aW50IGlubmVy
QXJyYXlMZW5ndGgoKSB7CisgICAgICAgICAgICBpbnRbMl1bM10gYXJyYXk7CisgICAgICAgICAg
ICByZXR1cm4gYXJyYXlbMF0ubGVuZ3RoOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICB1
aW50IG91dGVyQXJyYXlMZW5ndGgoKSB7CisgICAgICAgICAgICBpbnRbMl1bM10gYXJyYXk7Cisg
ICAgICAgICAgICByZXR1cm4gYXJyYXkubGVuZ3RoOworICAgICAgICB9CisgICAgICAgIAorICAg
ICAgICBpbnQgYXJyYXlJbmRleGluZyh1aW50IGksIHVpbnQgaikgeworICAgICAgICAgICAgaW50
WzJdWzNdIGFycmF5OworICAgICAgICAgICAgYXJyYXlbMF1bMF0gPSAxOworICAgICAgICAgICAg
YXJyYXlbMF1bMV0gPSAyOworICAgICAgICAgICAgYXJyYXlbMF1bMl0gPSAzOworICAgICAgICAg
ICAgYXJyYXlbMV1bMF0gPSA0OworICAgICAgICAgICAgYXJyYXlbMV1bMV0gPSA1OworICAgICAg
ICAgICAgYXJyYXlbMV1bMl0gPSA2OworICAgICAgICAgICAgcmV0dXJuIGFycmF5W2ldW2pdOwor
ICAgICAgICB9CisgICAgYCk7CisgICAgCisgICAgY2hlY2tVaW50KHByb2dyYW0sIGNhbGxGdW5j
dGlvbihwcm9ncmFtLCAiaW5uZXJBcnJheUxlbmd0aCIsIFtdKSwgMyk7CisgICAgY2hlY2tVaW50
KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAib3V0ZXJBcnJheUxlbmd0aCIsIFtdKSwg
Mik7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJhcnJheUlu
ZGV4aW5nIiwgWyBtYWtlVWludChwcm9ncmFtLCAwKSwgbWFrZVVpbnQocHJvZ3JhbSwgMCkgXSks
IDEpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYXJyYXlJ
bmRleGluZyIsIFsgbWFrZVVpbnQocHJvZ3JhbSwgMCksIG1ha2VVaW50KHByb2dyYW0sIDEpIF0p
LCAyKTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImFycmF5
SW5kZXhpbmciLCBbIG1ha2VVaW50KHByb2dyYW0sIDApLCBtYWtlVWludChwcm9ncmFtLCAyKSBd
KSwgMyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJhcnJh
eUluZGV4aW5nIiwgWyBtYWtlVWludChwcm9ncmFtLCAxKSwgbWFrZVVpbnQocHJvZ3JhbSwgMCkg
XSksIDQpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYXJy
YXlJbmRleGluZyIsIFsgbWFrZVVpbnQocHJvZ3JhbSwgMSksIG1ha2VVaW50KHByb2dyYW0sIDEp
IF0pLCA1KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImFy
cmF5SW5kZXhpbmciLCBbIG1ha2VVaW50KHByb2dyYW0sIDEpLCBtYWtlVWludChwcm9ncmFtLCAy
KSBdKSwgNik7ICAgIAorfQorCiBva1RvVGVzdCA9IHRydWU7CiAKIGxldCB0ZXN0RmlsdGVyID0g
Ly4qLzsgLy8gcnVuIGV2ZXJ5dGhpbmcgYnkgZGVmYXVsdAorbGV0IHRlc3RFeGNsdXNpb25GaWx0
ZXIgPSAvXmRpc2FibGVkXy87CiBpZiAodGhpc1siYXJndW1lbnRzIl0pIHsKICAgICBmb3IgKGxl
dCBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgewogICAgICAgICBzd2l0Y2ggKGFy
Z3VtZW50c1swXSkgewpAQCAtNTU4MywxMiArNTYxOCwxNiBAQCBmdW5jdGlvbiogZG9UZXN0KHRl
c3RGaWx0ZXIpCiAgICAgbmFtZXMuc29ydCgpOwogICAgIGZvciAobGV0IHMgb2YgbmFtZXMpIHsK
ICAgICAgICAgaWYgKHMubWF0Y2godGVzdEZpbHRlcikpIHsKLSAgICAgICAgICAgIHByaW50KCJU
RVNUOiAiICsgcyArICIuLi4iKTsKLSAgICAgICAgICAgIHlpZWxkOwotICAgICAgICAgICAgY29u
c3QgdGVzdEJlZm9yZSA9IHByZWNpc2VUaW1lKCk7Ci0gICAgICAgICAgICB0ZXN0c1tzXSgpOwot
ICAgICAgICAgICAgY29uc3QgdGVzdEFmdGVyID0gcHJlY2lzZVRpbWUoKTsKLSAgICAgICAgICAg
IHByaW50KGAgICAgT0ssIHRvb2sgJHtNYXRoLnJvdW5kKCh0ZXN0QWZ0ZXIgLSB0ZXN0QmVmb3Jl
KSAqIDEwMDApfSBtc2ApOworICAgICAgICAgICAgaWYgKHMubWF0Y2godGVzdEV4Y2x1c2lvbkZp
bHRlcikpIHsKKyAgICAgICAgICAgICAgICBwcmludChgU2tpcHBpbmcgJHtzfSBiZWNhdXNlIGl0
IGlzIGRpc2FibGVkLmApOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBw
cmludCgiVEVTVDogIiArIHMgKyAiLi4uIik7CisgICAgICAgICAgICAgICAgeWllbGQ7CisgICAg
ICAgICAgICAgICAgY29uc3QgdGVzdEJlZm9yZSA9IHByZWNpc2VUaW1lKCk7CisgICAgICAgICAg
ICAgICAgdGVzdHNbc10oKTsKKyAgICAgICAgICAgICAgICBjb25zdCB0ZXN0QWZ0ZXIgPSBwcmVj
aXNlVGltZSgpOworICAgICAgICAgICAgICAgIHByaW50KGAgICAgT0ssIHRvb2sgJHtNYXRoLnJv
dW5kKCh0ZXN0QWZ0ZXIgLSB0ZXN0QmVmb3JlKSAqIDEwMDApfSBtc2ApOworICAgICAgICAgICAg
fQogICAgICAgICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9UeXBlUmVmLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZVJl
Zi5qcwppbmRleCBhY2RhNzA2YzBjZTM3OTdlNDZiMDk1MTdkY2IwODFlYTU5ZTNkZjg5Li40MWJi
MDYwMmZmMDk1NzQ3YzE3MmFjZDk4NjcxZTAwNTE0ZWM5MDA4IDEwMDY0NAotLS0gYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL1R5cGVSZWYuanMKQEAgLTQyLDcgKzQyLDcgQEAgY2xhc3MgVHlwZVJlZiBl
eHRlbmRzIFR5cGUgewogICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIE5hdGl2ZVR5cGUpCiAg
ICAgICAgICAgICByZXN1bHQgPSBuZXcgVHlwZVJlZih0eXBlLm9yaWdpbiwgdHlwZS5uYW1lLCB0
eXBlLnR5cGVBcmd1bWVudHMpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXN1bHQgPSBu
ZXcgVHlwZVJlZih0eXBlLm9yZ2luLCB0eXBlLm5hbWUpOworICAgICAgICAgICAgcmVzdWx0ID0g
bmV3IFR5cGVSZWYodHlwZS5vcmlnaW4sIHR5cGUubmFtZSk7CiAgICAgICAgIHJlc3VsdC50eXBl
ID0gdHlwZTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348555</attachid>
            <date>2018-08-30 14:36:07 -0700</date>
            <delta_ts>2018-08-30 14:53:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189099-20180830143605.patch</filename>
            <type>text/plain</type>
            <size>4486</size>
            <attacher name="Thomas Denney">tdenney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1NTE3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggN2NlYzYxODdmZTU1MDBkNWJmODBmNTJkODA2MTY2MGJh
MzJiNGU3ZC4uYTNlNGEzZjYxMDE2MjhlMjdjNDlkZGE4YTQxNDRhMzVhZWMxNGFkNiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDE4LTA4LTMwICBUaG9tYXMgRGVubmV5ICA8dGRlbm5leUBhcHBsZS5jb20+CisKKyAg
ICAgICAgW1dITFNMXSBJbXBsZW1lbnQgdGVzdHMgdG8gdmVyaWZ5IGFycmF5IGluZGV4aW5nIG9y
ZGVyIG1hdGNoZXMgb3VyIGRlc2lyZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4OTA5OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qczogQWRkIG5l
dyB0ZXN0IGZvciBhcnJheSBpbmRleGluZyBvcmRlcgorICAgICAgICBhbmQgdGhlIG9wdGlvbiB0
byBleHBsaWNpdGx5IGRpc2FibGUgdGVzdHMgKHRoaXMgdGVzdCBpcyBkaXNhYmxlZCBieQorICAg
ICAgICBkZWZhdWx0KS4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVm
LmpzOgorICAgICAgICAoVHlwZVJlZi53cmFwKTogRml4ZXMgIHR5cG8uCisKIDIwMTgtMDgtMzAg
IFNpaHVpIExpdSAgPHNpaHVpX2xpdUBhcHBsZS5jb20+CiAKICAgICAgICAgV0tOYXZpZ2F0aW9u
LlByb2Nlc3NDcmFzaER1cmluZ0NhbGxiYWNrIGlzIGZhaWxpbmcgb24gaU9TCmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvVGVzdC5qcwppbmRleCAyYjVmODcyZDg5NzBjOWU5ZTAzOWE4YjE4Mjdl
Mzc3MzgwNzg5ZmZiLi4wMDBkMDU0MDcxMTU4NTBmZjMwZWMyMzY2YWViMTg1YWM1NzNkY2QzIDEw
MDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMKQEAgLTU1NTEsOSArNTU1MSw0NCBA
QCB0ZXN0cy5tYXRyaXhNdWx0aXBsaWNhdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgIGNoZWNrRmxv
YXQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb28xMyIsIFtdKSwgMjkgKiA3ICsg
NDMgKiAxMSArIDYxICogMTMpOwogfQogCit0ZXN0cy5ESVNBQkxFRF9hcnJheUluZGV4ID0gZnVu
Y3Rpb24oKSB7CisgICAgbGV0IHByb2dyYW0gPSBkb1ByZXAoYAorICAgICAgICB1aW50IGlubmVy
QXJyYXlMZW5ndGgoKSB7CisgICAgICAgICAgICBpbnRbMl1bM10gYXJyYXk7CisgICAgICAgICAg
ICByZXR1cm4gYXJyYXlbMF0ubGVuZ3RoOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICB1
aW50IG91dGVyQXJyYXlMZW5ndGgoKSB7CisgICAgICAgICAgICBpbnRbMl1bM10gYXJyYXk7Cisg
ICAgICAgICAgICByZXR1cm4gYXJyYXkubGVuZ3RoOworICAgICAgICB9CisgICAgICAgIAorICAg
ICAgICBpbnQgYXJyYXlJbmRleGluZyh1aW50IGksIHVpbnQgaikgeworICAgICAgICAgICAgaW50
WzJdWzNdIGFycmF5OworICAgICAgICAgICAgYXJyYXlbMF1bMF0gPSAxOworICAgICAgICAgICAg
YXJyYXlbMF1bMV0gPSAyOworICAgICAgICAgICAgYXJyYXlbMF1bMl0gPSAzOworICAgICAgICAg
ICAgYXJyYXlbMV1bMF0gPSA0OworICAgICAgICAgICAgYXJyYXlbMV1bMV0gPSA1OworICAgICAg
ICAgICAgYXJyYXlbMV1bMl0gPSA2OworICAgICAgICAgICAgcmV0dXJuIGFycmF5W2ldW2pdOwor
ICAgICAgICB9CisgICAgYCk7CisgICAgCisgICAgY2hlY2tVaW50KHByb2dyYW0sIGNhbGxGdW5j
dGlvbihwcm9ncmFtLCAiaW5uZXJBcnJheUxlbmd0aCIsIFtdKSwgMyk7CisgICAgY2hlY2tVaW50
KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAib3V0ZXJBcnJheUxlbmd0aCIsIFtdKSwg
Mik7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJhcnJheUlu
ZGV4aW5nIiwgWyBtYWtlVWludChwcm9ncmFtLCAwKSwgbWFrZVVpbnQocHJvZ3JhbSwgMCkgXSks
IDEpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYXJyYXlJ
bmRleGluZyIsIFsgbWFrZVVpbnQocHJvZ3JhbSwgMCksIG1ha2VVaW50KHByb2dyYW0sIDEpIF0p
LCAyKTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImFycmF5
SW5kZXhpbmciLCBbIG1ha2VVaW50KHByb2dyYW0sIDApLCBtYWtlVWludChwcm9ncmFtLCAyKSBd
KSwgMyk7CisgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJhcnJh
eUluZGV4aW5nIiwgWyBtYWtlVWludChwcm9ncmFtLCAxKSwgbWFrZVVpbnQocHJvZ3JhbSwgMCkg
XSksIDQpOworICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYXJy
YXlJbmRleGluZyIsIFsgbWFrZVVpbnQocHJvZ3JhbSwgMSksIG1ha2VVaW50KHByb2dyYW0sIDEp
IF0pLCA1KTsKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImFy
cmF5SW5kZXhpbmciLCBbIG1ha2VVaW50KHByb2dyYW0sIDEpLCBtYWtlVWludChwcm9ncmFtLCAy
KSBdKSwgNik7ICAgIAorfQorCiBva1RvVGVzdCA9IHRydWU7CiAKIGxldCB0ZXN0RmlsdGVyID0g
Ly4qLzsgLy8gcnVuIGV2ZXJ5dGhpbmcgYnkgZGVmYXVsdAorbGV0IHRlc3RFeGNsdXNpb25GaWx0
ZXIgPSAvXkRJU0FCTEVEXy87CiBpZiAodGhpc1siYXJndW1lbnRzIl0pIHsKICAgICBmb3IgKGxl
dCBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgewogICAgICAgICBzd2l0Y2ggKGFy
Z3VtZW50c1swXSkgewpAQCAtNTU4MywxMiArNTYxOCwxNiBAQCBmdW5jdGlvbiogZG9UZXN0KHRl
c3RGaWx0ZXIpCiAgICAgbmFtZXMuc29ydCgpOwogICAgIGZvciAobGV0IHMgb2YgbmFtZXMpIHsK
ICAgICAgICAgaWYgKHMubWF0Y2godGVzdEZpbHRlcikpIHsKLSAgICAgICAgICAgIHByaW50KCJU
RVNUOiAiICsgcyArICIuLi4iKTsKLSAgICAgICAgICAgIHlpZWxkOwotICAgICAgICAgICAgY29u
c3QgdGVzdEJlZm9yZSA9IHByZWNpc2VUaW1lKCk7Ci0gICAgICAgICAgICB0ZXN0c1tzXSgpOwot
ICAgICAgICAgICAgY29uc3QgdGVzdEFmdGVyID0gcHJlY2lzZVRpbWUoKTsKLSAgICAgICAgICAg
IHByaW50KGAgICAgT0ssIHRvb2sgJHtNYXRoLnJvdW5kKCh0ZXN0QWZ0ZXIgLSB0ZXN0QmVmb3Jl
KSAqIDEwMDApfSBtc2ApOworICAgICAgICAgICAgaWYgKHMubWF0Y2godGVzdEV4Y2x1c2lvbkZp
bHRlcikpIHsKKyAgICAgICAgICAgICAgICBwcmludChgU2tpcHBpbmcgJHtzfSBiZWNhdXNlIGl0
IGlzIGRpc2FibGVkLmApOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBw
cmludCgiVEVTVDogIiArIHMgKyAiLi4uIik7CisgICAgICAgICAgICAgICAgeWllbGQ7CisgICAg
ICAgICAgICAgICAgY29uc3QgdGVzdEJlZm9yZSA9IHByZWNpc2VUaW1lKCk7CisgICAgICAgICAg
ICAgICAgdGVzdHNbc10oKTsKKyAgICAgICAgICAgICAgICBjb25zdCB0ZXN0QWZ0ZXIgPSBwcmVj
aXNlVGltZSgpOworICAgICAgICAgICAgICAgIHByaW50KGAgICAgT0ssIHRvb2sgJHtNYXRoLnJv
dW5kKCh0ZXN0QWZ0ZXIgLSB0ZXN0QmVmb3JlKSAqIDEwMDApfSBtc2ApOworICAgICAgICAgICAg
fQogICAgICAgICB9CiAgICAgfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9UeXBlUmVmLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZVJl
Zi5qcwppbmRleCBhY2RhNzA2YzBjZTM3OTdlNDZiMDk1MTdkY2IwODFlYTU5ZTNkZjg5Li40MWJi
MDYwMmZmMDk1NzQ3YzE3MmFjZDk4NjcxZTAwNTE0ZWM5MDA4IDEwMDY0NAotLS0gYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL1R5cGVSZWYuanMKQEAgLTQyLDcgKzQyLDcgQEAgY2xhc3MgVHlwZVJlZiBl
eHRlbmRzIFR5cGUgewogICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIE5hdGl2ZVR5cGUpCiAg
ICAgICAgICAgICByZXN1bHQgPSBuZXcgVHlwZVJlZih0eXBlLm9yaWdpbiwgdHlwZS5uYW1lLCB0
eXBlLnR5cGVBcmd1bWVudHMpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXN1bHQgPSBu
ZXcgVHlwZVJlZih0eXBlLm9yZ2luLCB0eXBlLm5hbWUpOworICAgICAgICAgICAgcmVzdWx0ID0g
bmV3IFR5cGVSZWYodHlwZS5vcmlnaW4sIHR5cGUubmFtZSk7CiAgICAgICAgIHJlc3VsdC50eXBl
ID0gdHlwZTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>