<?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>134661</bug_id>
          
          <creation_ts>2014-07-06 01:15:17 -0700</creation_ts>
          <short_desc>CSS canvas color parsing accepts invalid color identifiers</short_desc>
          <delta_ts>2014-07-09 14:56:54 -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>CSS</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>134419</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Javier Fernandez">jfernandez</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jfernandez</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>rego</cc>
    
    <cc>svillar</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1020643</commentid>
    <comment_count>0</comment_count>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2014-07-06 01:15:17 -0700</bug_when>
    <thetext>Current implementation of the CSSParser::parseSystemColor assumes that if a valid cssValueKeywordID is got from the color string then it has to be a valid color. Such assumption is wrong and lead to many bugs and layout test failures. On example of these failures is the one detected after trying the patch for the bug #134419, which adds a new ValueKey for the &quot;true&quot; string. This string is part of the invalid values testing case of the canvas-color-serialization.html Layout test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1020645</commentid>
    <comment_count>1</comment_count>
      <attachid>234454</attachid>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2014-07-06 03:21:00 -0700</bug_when>
    <thetext>Created attachment 234454
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1020700</commentid>
    <comment_count>2</comment_count>
      <attachid>234454</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-07-06 16:38:03 -0700</bug_when>
    <thetext>Comment on attachment 234454
Patch

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

Hilarious bug, that&apos;s a good catch.

I disagree with your fix though. IMHO, we should never pass an invalid ID to systemColor(). You could check that the input ID is in the range alpha-&gt;-webkit-text.

I would also like the same test for CSS style resolution in addition to canvas. I know CSSParser::parseSystemColor() is not used for CSS parsing, but it is better to have the test to be on the safe side if the code changes.

Long term, someone should investigate if it would be better to split CSSValueKeywords into tiny perfect hash tables. That&apos;s completely out of scope here though :)

&gt; Source/WebCore/ChangeLog:9
&gt; +        that if a valid cssValueKeywordID is got from the color string

&quot;is got&quot;.

&gt; Source/WebCore/css/CSSParser.cpp:1362
&gt; +    color = parsedColor.rgb();

Changing the color when parsedColor.isValid() is false does not seem right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1020710</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-07-06 17:07:40 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; You could check that the input ID is in the range alpha-&gt;-webkit-text.

That doesn’t sound right. I think it’s the job of the theme to decide which CSS identifiers are actually legal colors. What if one of the names of the colors was also an identifier that was used for another purpose elsewhere in CSS?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1020713</commentid>
    <comment_count>4</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-07-06 17:15:07 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; You could check that the input ID is in the range alpha-&gt;-webkit-text.
&gt; 
&gt; That doesn’t sound right. I think it’s the job of the theme to decide which CSS identifiers are actually legal colors. What if one of the names of the colors was also an identifier that was used for another purpose elsewhere in CSS?

I don&apos;t think this would work with colors defined in CSS, they are already filtered by value ID (see parseColorValue()).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1020717</commentid>
    <comment_count>5</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-07-06 17:16:37 -0700</bug_when>
    <thetext>&gt; I don&apos;t think this would work with colors defined in CSS, they are already filtered by value ID (see parseColorValue()).

Well, obviously one can also add more branches in there :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1020723</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-07-06 17:26:57 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; I don&apos;t think this would work with colors defined in CSS, they are already filtered by value ID (see parseColorValue()).

Oh, maybe we should put that code somewhere we can share it!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1020726</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-07-06 17:28:50 -0700</bug_when>
    <thetext>Retitling since the bug is in a function only called by the canvas implementation. The title would be misleading if it claimed a broader problem with CSS color parsing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1020727</commentid>
    <comment_count>8</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-07-06 17:29:46 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #4)
&gt; &gt; I don&apos;t think this would work with colors defined in CSS, they are already filtered by value ID (see parseColorValue()).
&gt; 
&gt; Oh, maybe we should put that code somewhere we can share it!

Yep, agreed. When I originally commented I thought that code was a simple check in range. But that&apos;s a little more complicated that that...

It would be best to have this in a separate function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1021364</commentid>
    <comment_count>9</comment_count>
      <attachid>234639</attachid>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2014-07-09 07:53:31 -0700</bug_when>
    <thetext>Created attachment 234639
Patch

Applied suggested changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1021405</commentid>
    <comment_count>10</comment_count>
      <attachid>234639</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-07-09 11:28:23 -0700</bug_when>
    <thetext>Comment on attachment 234639
Patch

Awesome! Great tests!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1021454</commentid>
    <comment_count>11</comment_count>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2014-07-09 14:56:54 -0700</bug_when>
    <thetext>Committed r170933: &lt;http://trac.webkit.org/changeset/170933&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>234454</attachid>
            <date>2014-07-06 03:21:00 -0700</date>
            <delta_ts>2014-07-09 07:53:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134661-20140706122041.patch</filename>
            <type>text/plain</type>
            <size>5781</size>
            <attacher name="Javier Fernandez">jfernandez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcwNTk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmUwNjRhYWNkOTgyOWVm
MzI0ODI2OTAzYjFmNjE5MzU4YTQyNjc2ZS4uNDA1ZWM0OTllNzQ2YWQxY2I0NmM3NTcyYjFmZmY2
YjVkYjQ2NzQxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE0LTA3LTA2ICBKYXZp
ZXIgRmVybmFuZGV6ICA8amZlcm5hbmRlekBpZ2FsaWEuY29tPgorCisgICAgICAgIENTUyBDb2xv
ciBwYXJzaW5nIGRvZXMgbm8gZGV0ZWN0IGludmFsaWQgY29sb3IgaWRlbnRpZmllcnMuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ2NjEKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDdXJyZW50IGltcGxl
bWVudGF0aW9uIG9mIHRoZSBDU1NQYXJzZXI6OnBhcnNlU3lzdGVtQ29sb3IgYXNzdW1lcworICAg
ICAgICB0aGF0IGlmIGEgdmFsaWQgY3NzVmFsdWVLZXl3b3JkSUQgaXMgZ290IGZyb20gdGhlIGNv
bG9yIHN0cmluZworICAgICAgICBwYXJhbWV0ZXIgdGhlbiBpdCBoYXMgdG8gYmUgYSB2YWxpZCBj
b2xvci4gU3VjaCBhc3N1bXB0aW9uIGlzCisgICAgICAgIHdyb25nIGFuZCBsZWFkIHRvIG1hbnkg
YnVncyBhbmQgbGF5b3V0IHRlc3QgZmFpbHVyZXMuCisKKyAgICAgICAgVGhlIHBhcnNlU3lzdGVt
RnVuY3Rpb24gZGV0ZXJtaW5lcyBub3cgd2hldGhlciB0aGUgcGFyc2VkIGNvbG9yIGlzIHZhbGlk
CisgICAgICAgIG9yIG5vdC4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGJ1dCBhZGRlZCBhZGRp
dGlvbmFsIGNhc2VzIHRvIHRoZSBjYW52YXMtY29sb3Itc2VyaWFsaXphdGlvbi5odG1sIHRlc3Qu
CisKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Bh
cnNlcjo6cGFyc2VTeXN0ZW1Db2xvcik6CisKIDIwMTQtMDYtMzAgIEFsZXggQ2hyaXN0ZW5zZW4g
IDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBVc2Ugbm9uLXRodW1iIHJlZ2lz
dGVycyBpbiBhcm12NyBjc3Mgaml0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U1BhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAppbmRleCA3YmMx
OTcyNmQyMWQxMWYyNDI0MTU5YTNhZjNkZDdmMTEwZjlkNWQxLi5hZTVjZGYzZTliZTk4YzZhYjU5
NWMwMGEzMjYyNDE2NWNhZjgxMmI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcApAQCAtMTM1
OCw4ICsxMzU4LDkgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlU3lzdGVtQ29sb3IoUkdCQTMyJiBj
b2xvciwgY29uc3QgU3RyaW5nJiBzdHJpbmcsIERvY3VtZW50KgogICAgIGlmIChpZCA8PSAwKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBjb2xvciA9IGRvY3VtZW50LT5wYWdlKCktPnRo
ZW1lKCkuc3lzdGVtQ29sb3IoaWQpLnJnYigpOwotICAgIHJldHVybiB0cnVlOworICAgIENvbG9y
IHBhcnNlZENvbG9yID0gZG9jdW1lbnQtPnBhZ2UoKS0+dGhlbWUoKS5zeXN0ZW1Db2xvcihpZCk7
CisgICAgY29sb3IgPSBwYXJzZWRDb2xvci5yZ2IoKTsKKyAgICByZXR1cm4gcGFyc2VkQ29sb3Iu
aXNWYWxpZCgpOwogfQogCiB2b2lkIENTU1BhcnNlcjo6cGFyc2VTZWxlY3Rvcihjb25zdCBTdHJp
bmcmIHN0cmluZywgQ1NTU2VsZWN0b3JMaXN0JiBzZWxlY3Rvckxpc3QpCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYWE2YmM3
NTA2NzVlMTE2YTYyZGVkNTgxMTY1NDc1NzQzMzkyZDI1Zi4uZmUyMzIxNzc1MDJmNTMyMTZhNjkx
YmY0OWRlMmJiODNhMmM2ZmYzNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisr
KyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE0LTA3LTA2ICBK
YXZpZXIgRmVybmFuZGV6ICA8amZlcm5hbmRlekBpZ2FsaWEuY29tPgorCisgICAgICAgIENTUyBD
b2xvciBwYXJzaW5nIGRvZXMgbm8gZGV0ZWN0IGludmFsaWQgY29sb3IgaWRlbnRpZmllcnMuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ2NjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgcGFyc2VT
eXN0ZW1GdW5jdGlvbiBkZXRlcm1pbmVzIG5vdyB3aGV0aGVyIHRoZSBwYXJzZWQgY29sb3IgaXMg
dmFsaWQKKyAgICAgICAgb3Igbm90LiBBZGRlZCBzb21lIG5ldyB0ZXN0IGNhc2VzIHRvIHZlcmlm
eSBpdC4KKworICAgICAgICAqIGZhc3QvY2FudmFzL2NhbnZhcy1jb2xvci1zZXJpYWxpemF0aW9u
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2NhbnZhcy9zY3JpcHQtdGVzdHMvY2FudmFz
LWNvbG9yLXNlcmlhbGl6YXRpb24uanM6CisKIDIwMTQtMDYtMzAgIE15bGVzIEMuIE1heGZpZWxk
ICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBUaWxlcyBvbiBib3R0b20gb2Ygc2Ny
ZWVuIGFyZSBub3QgYWx3YXlzIGFsbG9jYXRlZCB3aGVuIG5lY2Vzc2FyeQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvY2FudmFzLWNvbG9yLXNlcmlhbGl6YXRpb24tZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvY2FudmFzLWNvbG9yLXNlcmlhbGl6YXRp
b24tZXhwZWN0ZWQudHh0CmluZGV4IGNkYzI0MWY3NmIxNzRkYTkwNDBmNjY3MzY5YzE5ZTQ0NWJj
ZmMwZjkuLmI4ZjNlYmQ0ZTQ4YzdhYTYwN2I2MGYwYzU2MmRlOGE4ZmNmMzdhMDYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL2NhbnZhcy1jb2xvci1zZXJpYWxpemF0aW9uLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy9jYW52YXMtY29sb3Itc2Vy
aWFsaXphdGlvbi1leHBlY3RlZC50eHQKQEAgLTEyOSw2ICsxMjksMzAgQEAgUEFTUyB0cnlTZXR0
aW5nU2hhZG93Q29sb3IoSW5maW5pdHkpIGlzICcjNjY2NjY2JwogUEFTUyB0cnlTZXR0aW5nU3Ry
b2tlU3R5bGUobnVsbCkgaXMgJyM2NjY2NjYnCiBQQVNTIHRyeVNldHRpbmdGaWxsU3R5bGUobnVs
bCkgaXMgJyM2NjY2NjYnCiBQQVNTIHRyeVNldHRpbmdTaGFkb3dDb2xvcihudWxsKSBpcyAnIzY2
NjY2NicKK1BBU1MgdHJ5U2V0dGluZ1N0cm9rZVN0eWxlKCdsZWZ0JykgaXMgJyM2NjY2NjYnCitQ
QVNTIHRyeVNldHRpbmdGaWxsU3R5bGUoJ2xlZnQnKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5U2V0
dGluZ1NoYWRvd0NvbG9yKCdsZWZ0JykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdTdHJv
a2VTdHlsZSgncmlnaHQnKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5U2V0dGluZ0ZpbGxTdHlsZSgn
cmlnaHQnKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5U2V0dGluZ1NoYWRvd0NvbG9yKCdyaWdodCcp
IGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nU3Ryb2tlU3R5bGUoJ2NlbnRlcicpIGlzICcj
NjY2NjY2JworUEFTUyB0cnlTZXR0aW5nRmlsbFN0eWxlKCdjZW50ZXInKSBpcyAnIzY2NjY2NicK
K1BBU1MgdHJ5U2V0dGluZ1NoYWRvd0NvbG9yKCdjZW50ZXInKSBpcyAnIzY2NjY2NicKK1BBU1Mg
dHJ5U2V0dGluZ1N0cm9rZVN0eWxlKCdib3JkZXInKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5U2V0
dGluZ0ZpbGxTdHlsZSgnYm9yZGVyJykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdTaGFk
b3dDb2xvcignYm9yZGVyJykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdTdHJva2VTdHls
ZSgnYm9yZGVyLWJveCcpIGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nRmlsbFN0eWxlKCdi
b3JkZXItYm94JykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdTaGFkb3dDb2xvcignYm9y
ZGVyLWJveCcpIGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nU3Ryb2tlU3R5bGUoJ2NvbnRl
bnQnKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5U2V0dGluZ0ZpbGxTdHlsZSgnY29udGVudCcpIGlz
ICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nU2hhZG93Q29sb3IoJ2NvbnRlbnQnKSBpcyAnIzY2
NjY2NicKK1BBU1MgdHJ5U2V0dGluZ1N0cm9rZVN0eWxlKCdsb2dpY2FsJykgaXMgJyM2NjY2NjYn
CitQQVNTIHRyeVNldHRpbmdGaWxsU3R5bGUoJ2xvZ2ljYWwnKSBpcyAnIzY2NjY2NicKK1BBU1Mg
dHJ5U2V0dGluZ1NoYWRvd0NvbG9yKCdsb2dpY2FsJykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNl
dHRpbmdTdHJva2VTdHlsZSgndmlzdWFsJykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdG
aWxsU3R5bGUoJ3Zpc3VhbCcpIGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nU2hhZG93Q29s
b3IoJ3Zpc3VhbCcpIGlzICcjNjY2NjY2JwogUEFTUyB0cnlTZXR0aW5nU3Ryb2tlQ29sb3JXaXRo
U2V0dGVyKCd0cmFuc3BhcmVudCcpIGlzICdyZ2JhKDAsIDAsIDAsIDApJwogUEFTUyB0cnlTZXR0
aW5nRmlsbENvbG9yV2l0aFNldHRlcigndHJhbnNwYXJlbnQnKSBpcyAncmdiYSgwLCAwLCAwLCAw
KScKIFBBU1MgdHJ5U2V0dGluZ1NoYWRvd1dpdGhTZXR0ZXIoJ3RyYW5zcGFyZW50JykgaXMgJ3Jn
YmEoMCwgMCwgMCwgMCknCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy9zY3Jp
cHQtdGVzdHMvY2FudmFzLWNvbG9yLXNlcmlhbGl6YXRpb24uanMgYi9MYXlvdXRUZXN0cy9mYXN0
L2NhbnZhcy9zY3JpcHQtdGVzdHMvY2FudmFzLWNvbG9yLXNlcmlhbGl6YXRpb24uanMKaW5kZXgg
ZDMwODk5MmUyYmUzNjZkZDQyMDhkZjQ1YjBlZmMyOTVjMWY0MzFlNC4uNzVjZWJiNDkyZDc3NTQy
MTE4NjU1MzA4ZjY5N2JjZTg5MjMxN2ZkNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9j
YW52YXMvc2NyaXB0LXRlc3RzL2NhbnZhcy1jb2xvci1zZXJpYWxpemF0aW9uLmpzCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvY2FudmFzL3NjcmlwdC10ZXN0cy9jYW52YXMtY29sb3Itc2VyaWFsaXph
dGlvbi5qcwpAQCAtMjMwLDYgKzIzMCwxNCBAQCB0cnlTZXR0aW5nQ29sb3IoIi0xIiwgIicjNjY2
NjY2JyIpOwogdHJ5U2V0dGluZ0NvbG9yKCJOYU4iLCAiJyM2NjY2NjYnIik7CiB0cnlTZXR0aW5n
Q29sb3IoIkluZmluaXR5IiwgIicjNjY2NjY2JyIpOwogdHJ5U2V0dGluZ0NvbG9yKCJudWxsIiwg
IicjNjY2NjY2JyIpOwordHJ5U2V0dGluZ0NvbG9yKCInbGVmdCciLCAiJyM2NjY2NjYnIik7Cit0
cnlTZXR0aW5nQ29sb3IoIidyaWdodCciLCAiJyM2NjY2NjYnIik7Cit0cnlTZXR0aW5nQ29sb3Io
IidjZW50ZXInIiwgIicjNjY2NjY2JyIpOwordHJ5U2V0dGluZ0NvbG9yKCInYm9yZGVyJyIsICIn
IzY2NjY2NiciKTsKK3RyeVNldHRpbmdDb2xvcigiJ2JvcmRlci1ib3gnIiwgIicjNjY2NjY2JyIp
OwordHJ5U2V0dGluZ0NvbG9yKCInY29udGVudCciLCAiJyM2NjY2NjYnIik7Cit0cnlTZXR0aW5n
Q29sb3IoIidsb2dpY2FsJyIsICInIzY2NjY2NiciKTsKK3RyeVNldHRpbmdDb2xvcigiJ3Zpc3Vh
bCciLCAiJyM2NjY2NjYnIik7CiAKIHRyeVNldHRpbmdDb2xvcldpdGhTZXR0ZXIoIid0cmFuc3Bh
cmVudCciLCAiJ3JnYmEoMCwgMCwgMCwgMCknIik7CiB0cnlTZXR0aW5nQ29sb3JXaXRoU2V0dGVy
KCIncmVkJyIsICInI2ZmMDAwMCciKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>234639</attachid>
            <date>2014-07-09 07:53:31 -0700</date>
            <delta_ts>2014-07-09 11:28:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-134661-20140709165313.patch</filename>
            <type>text/plain</type>
            <size>21288</size>
            <attacher name="Javier Fernandez">jfernandez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcwNTk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmUwNjRhYWNkOTgyOWVm
MzI0ODI2OTAzYjFmNjE5MzU4YTQyNjc2ZS4uOGNmMDM5NmMwYTFjZWQ4YTIyNmIwNTRmZWMwMGMy
MGEzMjc0ODA5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE0LTA3LTA5ICBKYXZp
ZXIgRmVybmFuZGV6ICA8amZlcm5hbmRlekBpZ2FsaWEuY29tPgorICAgICAgICBDU1MgY2FudmFz
IGNvbG9yIHBhcnNpbmcgYWNjZXB0cyBpbnZhbGlkIGNvbG9yIGlkZW50aWZpZXJzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ2NjEKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDdXJyZW50IGltcGxlbWVu
dGF0aW9uIG9mIHRoZSBDU1NQYXJzZXI6OnBhcnNlU3lzdGVtQ29sb3IgYXNzdW1lcworICAgICAg
ICB0aGF0IGlmIGEgdmFsaWQgY3NzVmFsdWVLZXl3b3JkSUQgaXMgZ290IHRoZW4gaXQgaGFzIHRv
IGJlIGEgdmFsaWQKKyAgICAgICAgY29sb3IuIFN1Y2ggYXNzdW1wdGlvbiBpcyB3cm9uZyBhbmQg
bGVhZCB0byBtYW55IGJ1Z3MgYW5kIGxheW91dAorICAgICAgICB0ZXN0IGZhaWx1cmVzLgorCisg
ICAgICAgIFRoZSBwYXJzZVN5c3RlbUZ1bmN0aW9uIGRldGVybWluZXMgbm93IHdoZXRoZXIgdGhl
IHBhcnNlZCBjb2xvciBpcworICAgICAgICB2YWxpZCBvciBub3QuCisKKyAgICAgICAgQWRkdGlv
bmFsbHksIGEgbmV3IG1ldGhvZCBoYXMgYmVlbiBhZGRlZCB0byBzaGFyZSB0aGUgbG9naWMgb2YK
KyAgICAgICAgZGV0ZXJtaW5pbmcgd2hldGhlciBhIENTU1ZhbHVlSUQgaXMgYSB2YWxpZCBwcmlt
aXRpdmUgdmFsdWVzIGZvcgorICAgICAgICBjb2xvcnMgb3Igbm90LiBHZW5lcmFsbHksIHdlIHNo
b3VsZCBhdm9pZCBwYXNzaW5nIGludmFsaWQgY29sb3IKKyAgICAgICAgaWRlbnRpZmllcnMgdG8g
dGhlIHRoZW1pbmcgQVBJLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgYnV0IGFkZGVkIGFkZGl0
aW9uYWwgY2FzZXMgdG8gdGhlCisgICAgICAgIGNhbnZhcy1jb2xvci1zZXJpYWxpemF0aW9uLmh0
bWwsIHRlc3Qtc2V0dGluZy1jYW52YXMtY29sb3IgYW5kCisgICAgICAgIHJnYi1jb2xvci1wYXJz
ZSB0ZXN0LgorCisgICAgICAgICogY3NzL0NTU1BhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
Ojp2YWxpZFByaW1pdGl2ZVZhbHVlQ29sb3IpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OnBh
cnNlQ29sb3JWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBhcnNlU3lzdGVt
Q29sb3IpOgorCiAyMDE0LTA2LTMwICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgVXNlIG5vbi10aHVtYiByZWdpc3RlcnMgaW4gYXJtdjcgY3Nz
IGppdC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggN2JjMTk3MjZkMjFkMTFmMjQyNDE1
OWEzYWYzZGQ3ZjExMGY5ZDVkMS4uMjI1YmRmNTBmMGViMjE5M2UzYTY4ZTIyNWFhZjJlMTRlZjhi
OTY5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKQEAgLTUwMSw2ICs1MDEsMTMgQEAgc3Rh
dGljIGlubGluZSBib29sIGlzQ29sb3JQcm9wZXJ0eUlEKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJ
ZCkKICAgICB9CiB9CiAKK3N0YXRpYyBib29sIHZhbGlkUHJpbWl0aXZlVmFsdWVDb2xvcihDU1NW
YWx1ZUlEIHZhbHVlSUQsIGJvb2wgc3RyaWN0ID0gZmFsc2UpCit7CisgICAgcmV0dXJuICh2YWx1
ZUlEID09IENTU1ZhbHVlV2Via2l0VGV4dCB8fCB2YWx1ZUlEID09IENTU1ZhbHVlQ3VycmVudGNv
bG9yIHx8IHZhbHVlSUQgPT0gQ1NTVmFsdWVNZW51CisgICAgICAgIHx8ICh2YWx1ZUlEID49IENT
U1ZhbHVlQWxwaGEgJiYgdmFsdWVJRCA8PSBDU1NWYWx1ZVdpbmRvd3RleHQpCisgICAgICAgIHx8
ICh2YWx1ZUlEID49IENTU1ZhbHVlV2Via2l0Rm9jdXNSaW5nQ29sb3IgJiYgdmFsdWVJRCA8IENT
U1ZhbHVlV2Via2l0VGV4dCAmJiAhc3RyaWN0KSk7Cit9CisKIHN0YXRpYyBib29sIHBhcnNlQ29s
b3JWYWx1ZShNdXRhYmxlU3R5bGVQcm9wZXJ0aWVzKiBkZWNsYXJhdGlvbiwgQ1NTUHJvcGVydHlJ
RCBwcm9wZXJ0eUlkLCBjb25zdCBTdHJpbmcmIHN0cmluZywgYm9vbCBpbXBvcnRhbnQsIENTU1Bh
cnNlck1vZGUgY3NzUGFyc2VyTW9kZSkKIHsKICAgICBBU1NFUlQoIXN0cmluZy5pc0VtcHR5KCkp
OwpAQCAtNTEwLDE3ICs1MTcsNyBAQCBzdGF0aWMgYm9vbCBwYXJzZUNvbG9yVmFsdWUoTXV0YWJs
ZVN0eWxlUHJvcGVydGllcyogZGVjbGFyYXRpb24sIENTU1Byb3BlcnR5SUQgcAogICAgIENTU1Bh
cnNlclN0cmluZyBjc3NTdHJpbmc7CiAgICAgY3NzU3RyaW5nLmluaXQoc3RyaW5nKTsKICAgICBD
U1NWYWx1ZUlEIHZhbHVlSUQgPSBjc3NWYWx1ZUtleXdvcmRJRChjc3NTdHJpbmcpOwotICAgIGJv
b2wgdmFsaWRQcmltaXRpdmUgPSBmYWxzZTsKLSAgICBpZiAodmFsdWVJRCA9PSBDU1NWYWx1ZVdl
YmtpdFRleHQpCi0gICAgICAgIHZhbGlkUHJpbWl0aXZlID0gdHJ1ZTsKLSAgICBlbHNlIGlmICh2
YWx1ZUlEID09IENTU1ZhbHVlQ3VycmVudGNvbG9yKQotICAgICAgICB2YWxpZFByaW1pdGl2ZSA9
IHRydWU7Ci0gICAgZWxzZSBpZiAoKHZhbHVlSUQgPj0gQ1NTVmFsdWVBcXVhICYmIHZhbHVlSUQg
PD0gQ1NTVmFsdWVXaW5kb3d0ZXh0KSB8fCB2YWx1ZUlEID09IENTU1ZhbHVlTWVudQotICAgICAg
ICAgICAgIHx8ICh2YWx1ZUlEID49IENTU1ZhbHVlV2Via2l0Rm9jdXNSaW5nQ29sb3IgJiYgdmFs
dWVJRCA8IENTU1ZhbHVlV2Via2l0VGV4dCAmJiAhc3RyaWN0KSkgewotICAgICAgICB2YWxpZFBy
aW1pdGl2ZSA9IHRydWU7Ci0gICAgfQotCi0gICAgaWYgKHZhbGlkUHJpbWl0aXZlKSB7CisgICAg
aWYgKHZhbGlkUHJpbWl0aXZlVmFsdWVDb2xvcih2YWx1ZUlELCBzdHJpY3QpKSB7CiAgICAgICAg
IFJlZlB0cjxDU1NWYWx1ZT4gdmFsdWUgPSBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVy
VmFsdWUodmFsdWVJRCk7CiAgICAgICAgIGRlY2xhcmF0aW9uLT5hZGRQYXJzZWRQcm9wZXJ0eShD
U1NQcm9wZXJ0eShwcm9wZXJ0eUlkLCB2YWx1ZS5yZWxlYXNlKCksIGltcG9ydGFudCkpOwogICAg
ICAgICByZXR1cm4gdHJ1ZTsKQEAgLTEzNTUsMTAgKzEzNTIsMTQgQEAgYm9vbCBDU1NQYXJzZXI6
OnBhcnNlU3lzdGVtQ29sb3IoUkdCQTMyJiBjb2xvciwgY29uc3QgU3RyaW5nJiBzdHJpbmcsIERv
Y3VtZW50KgogICAgIENTU1BhcnNlclN0cmluZyBjc3NDb2xvcjsKICAgICBjc3NDb2xvci5pbml0
KHN0cmluZyk7CiAgICAgQ1NTVmFsdWVJRCBpZCA9IGNzc1ZhbHVlS2V5d29yZElEKGNzc0NvbG9y
KTsKLSAgICBpZiAoaWQgPD0gMCkKKyAgICBpZiAoIXZhbGlkUHJpbWl0aXZlVmFsdWVDb2xvcihp
ZCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIENvbG9yIHBhcnNlZENvbG9yID0gZG9j
dW1lbnQtPnBhZ2UoKS0+dGhlbWUoKS5zeXN0ZW1Db2xvcihpZCk7CisgICAgaWYgKCFwYXJzZWRD
b2xvci5pc1ZhbGlkKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGNvbG9yID0gZG9j
dW1lbnQtPnBhZ2UoKS0+dGhlbWUoKS5zeXN0ZW1Db2xvcihpZCkucmdiKCk7CisgICAgY29sb3Ig
PSBwYXJzZWRDb2xvci5yZ2IoKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGFhNmJj
NzUwNjc1ZTExNmE2MmRlZDU4MTE2NTQ3NTc0MzM5MmQyNWYuLjQyZmQyNGFhOTYzZjgwNmNiOTQy
ODIyZTU5YjY4OWU1ZmJkOGFmNjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxNC0wNy0wOSAg
SmF2aWVyIEZlcm5hbmRleiAgPGpmZXJuYW5kZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBDU1Mg
Y2FudmFzIGNvbG9yIHBhcnNpbmcgYWNjZXB0cyBpbnZhbGlkIGNvbG9yIGlkZW50aWZpZXJzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzQ2NjEKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgcGFyc2VT
eXN0ZW1GdW5jdGlvbiBkZXRlcm1pbmVzIG5vdyB3aGV0aGVyIHRoZSBwYXJzZWQgY29sb3IgaXMK
KyAgICAgICAgdmFsaWQgb3Igbm90LgorCisgICAgICAgIFRoZSByZ2ItY29sb3ItcGFyc2VyIGNv
dmVycyBjc3Mgc3R5bGUgY29sb3IgcGFyc2luZyBjYXNlcywgd2hpY2gKKyAgICAgICAgYWxyZWFk
eSBwcm92aWRlIGNvdmVyYWdlIGZvciBpbnZhbGlkIGNvbG9yIGlkZW50aWZpZXJzLiBJJ3ZlIGFk
ZGVkCisgICAgICAgIGEgZmV3IG1vcmUsIHRob3VnaC4KKworICAgICAgICAqIGZhc3QvY2FudmFz
L2NhbnZhcy1jb2xvci1zZXJpYWxpemF0aW9uLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0
L2NhbnZhcy9zY3JpcHQtdGVzdHMvY2FudmFzLWNvbG9yLXNlcmlhbGl6YXRpb24uanM6CisgICAg
ICAgICogZmFzdC9jc3MvdGVzdC1zZXR0aW5nLWNhbnZhcy1jb2xvci1leHBlY3RlZC50eHQ6Cisg
ICAgICAgICogZmFzdC9jc3MvdGVzdC1zZXR0aW5nLWNhbnZhcy1jb2xvci5odG1sOgorICAgICAg
ICAqIHN2Zy9kb20vcmdiLWNvbG9yLXBhcnNlci1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3Zn
L2RvbS9yZ2ItY29sb3ItcGFyc2VyLmh0bWw6CisKIDIwMTQtMDYtMzAgIE15bGVzIEMuIE1heGZp
ZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBUaWxlcyBvbiBib3R0b20gb2Yg
c2NyZWVuIGFyZSBub3QgYWx3YXlzIGFsbG9jYXRlZCB3aGVuIG5lY2Vzc2FyeQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvY2FudmFzLWNvbG9yLXNlcmlhbGl6YXRpb24tZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvY2FudmFzLWNvbG9yLXNlcmlhbGl6
YXRpb24tZXhwZWN0ZWQudHh0CmluZGV4IGNkYzI0MWY3NmIxNzRkYTkwNDBmNjY3MzY5YzE5ZTQ0
NWJjZmMwZjkuLmI4ZjNlYmQ0ZTQ4YzdhYTYwN2I2MGYwYzU2MmRlOGE4ZmNmMzdhMDYgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL2NhbnZhcy1jb2xvci1zZXJpYWxpemF0aW9u
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy9jYW52YXMtY29sb3It
c2VyaWFsaXphdGlvbi1leHBlY3RlZC50eHQKQEAgLTEyOSw2ICsxMjksMzAgQEAgUEFTUyB0cnlT
ZXR0aW5nU2hhZG93Q29sb3IoSW5maW5pdHkpIGlzICcjNjY2NjY2JwogUEFTUyB0cnlTZXR0aW5n
U3Ryb2tlU3R5bGUobnVsbCkgaXMgJyM2NjY2NjYnCiBQQVNTIHRyeVNldHRpbmdGaWxsU3R5bGUo
bnVsbCkgaXMgJyM2NjY2NjYnCiBQQVNTIHRyeVNldHRpbmdTaGFkb3dDb2xvcihudWxsKSBpcyAn
IzY2NjY2NicKK1BBU1MgdHJ5U2V0dGluZ1N0cm9rZVN0eWxlKCdsZWZ0JykgaXMgJyM2NjY2NjYn
CitQQVNTIHRyeVNldHRpbmdGaWxsU3R5bGUoJ2xlZnQnKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5
U2V0dGluZ1NoYWRvd0NvbG9yKCdsZWZ0JykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdT
dHJva2VTdHlsZSgncmlnaHQnKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5U2V0dGluZ0ZpbGxTdHls
ZSgncmlnaHQnKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5U2V0dGluZ1NoYWRvd0NvbG9yKCdyaWdo
dCcpIGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nU3Ryb2tlU3R5bGUoJ2NlbnRlcicpIGlz
ICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nRmlsbFN0eWxlKCdjZW50ZXInKSBpcyAnIzY2NjY2
NicKK1BBU1MgdHJ5U2V0dGluZ1NoYWRvd0NvbG9yKCdjZW50ZXInKSBpcyAnIzY2NjY2NicKK1BB
U1MgdHJ5U2V0dGluZ1N0cm9rZVN0eWxlKCdib3JkZXInKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5
U2V0dGluZ0ZpbGxTdHlsZSgnYm9yZGVyJykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdT
aGFkb3dDb2xvcignYm9yZGVyJykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdTdHJva2VT
dHlsZSgnYm9yZGVyLWJveCcpIGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nRmlsbFN0eWxl
KCdib3JkZXItYm94JykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRpbmdTaGFkb3dDb2xvcign
Ym9yZGVyLWJveCcpIGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nU3Ryb2tlU3R5bGUoJ2Nv
bnRlbnQnKSBpcyAnIzY2NjY2NicKK1BBU1MgdHJ5U2V0dGluZ0ZpbGxTdHlsZSgnY29udGVudCcp
IGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nU2hhZG93Q29sb3IoJ2NvbnRlbnQnKSBpcyAn
IzY2NjY2NicKK1BBU1MgdHJ5U2V0dGluZ1N0cm9rZVN0eWxlKCdsb2dpY2FsJykgaXMgJyM2NjY2
NjYnCitQQVNTIHRyeVNldHRpbmdGaWxsU3R5bGUoJ2xvZ2ljYWwnKSBpcyAnIzY2NjY2NicKK1BB
U1MgdHJ5U2V0dGluZ1NoYWRvd0NvbG9yKCdsb2dpY2FsJykgaXMgJyM2NjY2NjYnCitQQVNTIHRy
eVNldHRpbmdTdHJva2VTdHlsZSgndmlzdWFsJykgaXMgJyM2NjY2NjYnCitQQVNTIHRyeVNldHRp
bmdGaWxsU3R5bGUoJ3Zpc3VhbCcpIGlzICcjNjY2NjY2JworUEFTUyB0cnlTZXR0aW5nU2hhZG93
Q29sb3IoJ3Zpc3VhbCcpIGlzICcjNjY2NjY2JwogUEFTUyB0cnlTZXR0aW5nU3Ryb2tlQ29sb3JX
aXRoU2V0dGVyKCd0cmFuc3BhcmVudCcpIGlzICdyZ2JhKDAsIDAsIDAsIDApJwogUEFTUyB0cnlT
ZXR0aW5nRmlsbENvbG9yV2l0aFNldHRlcigndHJhbnNwYXJlbnQnKSBpcyAncmdiYSgwLCAwLCAw
LCAwKScKIFBBU1MgdHJ5U2V0dGluZ1NoYWRvd1dpdGhTZXR0ZXIoJ3RyYW5zcGFyZW50JykgaXMg
J3JnYmEoMCwgMCwgMCwgMCknCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy9z
Y3JpcHQtdGVzdHMvY2FudmFzLWNvbG9yLXNlcmlhbGl6YXRpb24uanMgYi9MYXlvdXRUZXN0cy9m
YXN0L2NhbnZhcy9zY3JpcHQtdGVzdHMvY2FudmFzLWNvbG9yLXNlcmlhbGl6YXRpb24uanMKaW5k
ZXggZDMwODk5MmUyYmUzNjZkZDQyMDhkZjQ1YjBlZmMyOTVjMWY0MzFlNC4uNzVjZWJiNDkyZDc3
NTQyMTE4NjU1MzA4ZjY5N2JjZTg5MjMxN2ZkNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9jYW52YXMvc2NyaXB0LXRlc3RzL2NhbnZhcy1jb2xvci1zZXJpYWxpemF0aW9uLmpzCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvY2FudmFzL3NjcmlwdC10ZXN0cy9jYW52YXMtY29sb3Itc2VyaWFs
aXphdGlvbi5qcwpAQCAtMjMwLDYgKzIzMCwxNCBAQCB0cnlTZXR0aW5nQ29sb3IoIi0xIiwgIicj
NjY2NjY2JyIpOwogdHJ5U2V0dGluZ0NvbG9yKCJOYU4iLCAiJyM2NjY2NjYnIik7CiB0cnlTZXR0
aW5nQ29sb3IoIkluZmluaXR5IiwgIicjNjY2NjY2JyIpOwogdHJ5U2V0dGluZ0NvbG9yKCJudWxs
IiwgIicjNjY2NjY2JyIpOwordHJ5U2V0dGluZ0NvbG9yKCInbGVmdCciLCAiJyM2NjY2NjYnIik7
Cit0cnlTZXR0aW5nQ29sb3IoIidyaWdodCciLCAiJyM2NjY2NjYnIik7Cit0cnlTZXR0aW5nQ29s
b3IoIidjZW50ZXInIiwgIicjNjY2NjY2JyIpOwordHJ5U2V0dGluZ0NvbG9yKCInYm9yZGVyJyIs
ICInIzY2NjY2NiciKTsKK3RyeVNldHRpbmdDb2xvcigiJ2JvcmRlci1ib3gnIiwgIicjNjY2NjY2
JyIpOwordHJ5U2V0dGluZ0NvbG9yKCInY29udGVudCciLCAiJyM2NjY2NjYnIik7Cit0cnlTZXR0
aW5nQ29sb3IoIidsb2dpY2FsJyIsICInIzY2NjY2NiciKTsKK3RyeVNldHRpbmdDb2xvcigiJ3Zp
c3VhbCciLCAiJyM2NjY2NjYnIik7CiAKIHRyeVNldHRpbmdDb2xvcldpdGhTZXR0ZXIoIid0cmFu
c3BhcmVudCciLCAiJ3JnYmEoMCwgMCwgMCwgMCknIik7CiB0cnlTZXR0aW5nQ29sb3JXaXRoU2V0
dGVyKCIncmVkJyIsICInI2ZmMDAwMCciKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzL3Rlc3Qtc2V0dGluZy1jYW52YXMtY29sb3ItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdGVzdC1zZXR0aW5nLWNhbnZhcy1jb2xvci1leHBlY3RlZC50eHQKaW5kZXggYzI5
Y2YyZTk3MWNmNDlmZTY0NzY1N2U0NWZhNDllYTY2MDY4YzU0OC4uNDM0ZWM4YzM5MjY2MzdlMmE0
MTdlZTcxYzc2ZTYxZTdhYWNmN2QzNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
dGVzdC1zZXR0aW5nLWNhbnZhcy1jb2xvci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvdGVzdC1zZXR0aW5nLWNhbnZhcy1jb2xvci1leHBlY3RlZC50eHQKQEAgLTIxNCw2
ICsyMTQsMTQgQEAgUEFTUyBTZXR0aW5nIGNvbG9yIHRvIGluaGVyaXRlZCB3YXMgbm90IHNldCAo
YXMgZXhwZWN0ZWQpLgogUEFTUyBTZXR0aW5nIGNvbG9yIHRvICMxMDAlIHdhcyBub3Qgc2V0IChh
cyBleHBlY3RlZCkuCiBQQVNTIFNldHRpbmcgY29sb3IgdG8gIzEwMHB4IHdhcyBub3Qgc2V0IChh
cyBleHBlY3RlZCkuCiBQQVNTIFNldHRpbmcgY29sb3IgdG8gLXdlYmtpdC12YXIoInRlc3QiKSB3
YXMgbm90IHNldCAoYXMgZXhwZWN0ZWQpLgorUEFTUyBTZXR0aW5nIGNvbG9yIHRvIGxlZnQgd2Fz
IG5vdCBzZXQgKGFzIGV4cGVjdGVkKS4KK1BBU1MgU2V0dGluZyBjb2xvciB0byByaWdodCB3YXMg
bm90IHNldCAoYXMgZXhwZWN0ZWQpLgorUEFTUyBTZXR0aW5nIGNvbG9yIHRvIGNlbnRlciB3YXMg
bm90IHNldCAoYXMgZXhwZWN0ZWQpLgorUEFTUyBTZXR0aW5nIGNvbG9yIHRvIGJvcmRlciB3YXMg
bm90IHNldCAoYXMgZXhwZWN0ZWQpLgorUEFTUyBTZXR0aW5nIGNvbG9yIHRvIGJvcmRlciB3YXMg
bm90IHNldCAoYXMgZXhwZWN0ZWQpLgorUEFTUyBTZXR0aW5nIGNvbG9yIHRvIGNvbnRlbnQgd2Fz
IG5vdCBzZXQgKGFzIGV4cGVjdGVkKS4KK1BBU1MgU2V0dGluZyBjb2xvciB0byBsb2dpY2FsIHdh
cyBub3Qgc2V0IChhcyBleHBlY3RlZCkuCitQQVNTIFNldHRpbmcgY29sb3IgdG8gdmlzdWFsIHdh
cyBub3Qgc2V0IChhcyBleHBlY3RlZCkuCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVl
CiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Rlc3Qt
c2V0dGluZy1jYW52YXMtY29sb3IuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzL3Rlc3Qtc2V0
dGluZy1jYW52YXMtY29sb3IuaHRtbAppbmRleCA5Mjg4ZWUyODE3ZTE5YzM0NDBkYTIzNWEwZGNk
NTZlMDE1MTJhMTM2Li5iZmM2ODRjYmRkOWFkNmRkNmQ5MWY0OTY4ZWQxODFiY2EyODczNDUzIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy90ZXN0LXNldHRpbmctY2FudmFzLWNvbG9y
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MvdGVzdC1zZXR0aW5nLWNhbnZhcy1jb2xv
ci5odG1sCkBAIC0yNDIsNiArMjQyLDE0IEBAIHNob3VsZE5vdFN1Y2Nlc3NmdWxseVBhcnNlKCJp
bmhlcml0ZWQiKTsKIHNob3VsZE5vdFN1Y2Nlc3NmdWxseVBhcnNlKCIjMTAwJSIpOwogc2hvdWxk
Tm90U3VjY2Vzc2Z1bGx5UGFyc2UoIiMxMDBweCIpOwogc2hvdWxkTm90U3VjY2Vzc2Z1bGx5UGFy
c2UoJy13ZWJraXQtdmFyKCJ0ZXN0IiknKTsKK3Nob3VsZE5vdFN1Y2Nlc3NmdWxseVBhcnNlKCds
ZWZ0Jyk7CitzaG91bGROb3RTdWNjZXNzZnVsbHlQYXJzZSgncmlnaHQnKTsKK3Nob3VsZE5vdFN1
Y2Nlc3NmdWxseVBhcnNlKCdjZW50ZXInKTsKK3Nob3VsZE5vdFN1Y2Nlc3NmdWxseVBhcnNlKCdi
b3JkZXInKTsKK3Nob3VsZE5vdFN1Y2Nlc3NmdWxseVBhcnNlKCdib3JkZXInKTsKK3Nob3VsZE5v
dFN1Y2Nlc3NmdWxseVBhcnNlKCdjb250ZW50Jyk7CitzaG91bGROb3RTdWNjZXNzZnVsbHlQYXJz
ZSgnbG9naWNhbCcpOworc2hvdWxkTm90U3VjY2Vzc2Z1bGx5UGFyc2UoJ3Zpc3VhbCcpOwogPC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvZG9tL3JnYi1jb2xv
ci1wYXJzZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3ZnL2RvbS9yZ2ItY29sb3ItcGFy
c2VyLWV4cGVjdGVkLnR4dAppbmRleCAwOTRlMTFiODAwY2VkZTJmZGUxZTQ1MTQzMzQzYmQwNzli
YTk1YWQwLi4xNmVhMDNkN2EzYzAyYmZiOTdlMjM2MzU2YzFmYmQwMjdkMWIyMTIwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9zdmcvZG9tL3JnYi1jb2xvci1wYXJzZXItZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL3N2Zy9kb20vcmdiLWNvbG9yLXBhcnNlci1leHBlY3RlZC50eHQKQEAg
LTUsNiArNSwxNTIgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUKIAogUGFyc2VkIGFzIHJnYigw
LDAsMjU1KTogYmx1ZQogUGFyc2VkIGFzIHJnYigwLDI1NSwwKTogcmdiKDAsIDI1NSwgMCkKK1Bh
cnNlZCBhcyByZ2IoMjQwLDI0OCwyNTUpOiBhbGljZWJsdWUKK1BhcnNlZCBhcyByZ2IoMjUwLDIz
NSwyMTUpOiBhbnRpcXVld2hpdGUKK1BhcnNlZCBhcyByZ2IoMCwyNTUsMjU1KTogYXF1YQorUGFy
c2VkIGFzIHJnYigxMjcsMjU1LDIxMik6IGFxdWFtYXJpbmUKK1BhcnNlZCBhcyByZ2IoMjQwLDI1
NSwyNTUpOiBhenVyZQorUGFyc2VkIGFzIHJnYigyNDUsMjQ1LDIyMCk6IGJlaWdlCitQYXJzZWQg
YXMgcmdiKDI1NSwyMjgsMTk2KTogYmlzcXVlCitQYXJzZWQgYXMgcmdiKDAsMCwwKTogYmxhY2sK
K1BhcnNlZCBhcyByZ2IoMjU1LDIzNSwyMDUpOiBibGFuY2hlZGFsbW9uZAorUGFyc2VkIGFzIHJn
YigwLDAsMjU1KTogYmx1ZQorUGFyc2VkIGFzIHJnYigxMzgsNDMsMjI2KTogYmx1ZXZpb2xldAor
UGFyc2VkIGFzIHJnYigxNjUsNDIsNDIpOiBicm93bgorUGFyc2VkIGFzIHJnYigyMjIsMTg0LDEz
NSk6IGJ1cmx5d29vZAorUGFyc2VkIGFzIHJnYig5NSwxNTgsMTYwKTogY2FkZXRibHVlCitQYXJz
ZWQgYXMgcmdiKDEyNywyNTUsMCk6IGNoYXJ0cmV1c2UKK1BhcnNlZCBhcyByZ2IoMjEwLDEwNSwz
MCk6IGNob2NvbGF0ZQorUGFyc2VkIGFzIHJnYigyNTUsMTI3LDgwKTogY29yYWwKK1BhcnNlZCBh
cyByZ2IoMTAwLDE0OSwyMzcpOiBjb3JuZmxvd2VyYmx1ZQorUGFyc2VkIGFzIHJnYigyNTUsMjQ4
LDIyMCk6IGNvcm5zaWxrCitQYXJzZWQgYXMgcmdiKDIyMCwyMCw2MCk6IGNyaW1zb24KK1BhcnNl
ZCBhcyByZ2IoMCwyNTUsMjU1KTogY3lhbgorUGFyc2VkIGFzIHJnYigwLDAsMTM5KTogZGFya2Js
dWUKK1BhcnNlZCBhcyByZ2IoMCwxMzksMTM5KTogZGFya2N5YW4KK1BhcnNlZCBhcyByZ2IoMTg0
LDEzNCwxMSk6IGRhcmtnb2xkZW5yb2QKK1BhcnNlZCBhcyByZ2IoMTY5LDE2OSwxNjkpOiBkYXJr
Z3JheQorUGFyc2VkIGFzIHJnYigwLDEwMCwwKTogZGFya2dyZWVuCitQYXJzZWQgYXMgcmdiKDE2
OSwxNjksMTY5KTogZGFya2dyZXkKK1BhcnNlZCBhcyByZ2IoMTg5LDE4MywxMDcpOiBkYXJra2hh
a2kKK1BhcnNlZCBhcyByZ2IoMTM5LDAsMTM5KTogZGFya21hZ2VudGEKK1BhcnNlZCBhcyByZ2Io
ODUsMTA3LDQ3KTogZGFya29saXZlZ3JlZW4KK1BhcnNlZCBhcyByZ2IoMjU1LDE0MCwwKTogZGFy
a29yYW5nZQorUGFyc2VkIGFzIHJnYigxNTMsNTAsMjA0KTogZGFya29yY2hpZAorUGFyc2VkIGFz
IHJnYigxMzksMCwwKTogZGFya3JlZAorUGFyc2VkIGFzIHJnYigyMzMsMTUwLDEyMik6IGRhcmtz
YWxtb24KK1BhcnNlZCBhcyByZ2IoMTQzLDE4OCwxNDMpOiBkYXJrc2VhZ3JlZW4KK1BhcnNlZCBh
cyByZ2IoNzIsNjEsMTM5KTogZGFya3NsYXRlYmx1ZQorUGFyc2VkIGFzIHJnYig0Nyw3OSw3OSk6
IGRhcmtzbGF0ZWdyYXkKK1BhcnNlZCBhcyByZ2IoNDcsNzksNzkpOiBkYXJrc2xhdGVncmV5CitQ
YXJzZWQgYXMgcmdiKDAsMjA2LDIwOSk6IGRhcmt0dXJxdW9pc2UKK1BhcnNlZCBhcyByZ2IoMTQ4
LDAsMjExKTogZGFya3Zpb2xldAorUGFyc2VkIGFzIHJnYigyNTUsMjAsMTQ3KTogZGVlcHBpbmsK
K1BhcnNlZCBhcyByZ2IoMCwxOTEsMjU1KTogZGVlcHNreWJsdWUKK1BhcnNlZCBhcyByZ2IoMTA1
LDEwNSwxMDUpOiBkaW1ncmF5CitQYXJzZWQgYXMgcmdiKDEwNSwxMDUsMTA1KTogZGltZ3JleQor
UGFyc2VkIGFzIHJnYigzMCwxNDQsMjU1KTogZG9kZ2VyYmx1ZQorUGFyc2VkIGFzIHJnYigxNzgs
MzQsMzQpOiBmaXJlYnJpY2sKK1BhcnNlZCBhcyByZ2IoMjU1LDI1MCwyNDApOiBmbG9yYWx3aGl0
ZQorUGFyc2VkIGFzIHJnYigzNCwxMzksMzQpOiBmb3Jlc3RncmVlbgorUGFyc2VkIGFzIHJnYigy
NTUsMCwyNTUpOiBmdWNoc2lhCitQYXJzZWQgYXMgcmdiKDIyMCwyMjAsMjIwKTogZ2FpbnNib3Jv
CitQYXJzZWQgYXMgcmdiKDI0OCwyNDgsMjU1KTogZ2hvc3R3aGl0ZQorUGFyc2VkIGFzIHJnYigy
NTUsMjE1LDApOiBnb2xkCitQYXJzZWQgYXMgcmdiKDIxOCwxNjUsMzIpOiBnb2xkZW5yb2QKK1Bh
cnNlZCBhcyByZ2IoMTI4LDEyOCwxMjgpOiBncmF5CitQYXJzZWQgYXMgcmdiKDAsMTI4LDApOiBn
cmVlbgorUGFyc2VkIGFzIHJnYigxNzMsMjU1LDQ3KTogZ3JlZW55ZWxsb3cKK1BhcnNlZCBhcyBy
Z2IoMTI4LDEyOCwxMjgpOiBncmV5CitQYXJzZWQgYXMgcmdiKDI0MCwyNTUsMjQwKTogaG9uZXlk
ZXcKK1BhcnNlZCBhcyByZ2IoMjU1LDEwNSwxODApOiBob3RwaW5rCitQYXJzZWQgYXMgcmdiKDIw
NSw5Miw5Mik6IGluZGlhbnJlZAorUGFyc2VkIGFzIHJnYig3NSwwLDEzMCk6IGluZGlnbworUGFy
c2VkIGFzIHJnYigyNTUsMjU1LDI0MCk6IGl2b3J5CitQYXJzZWQgYXMgcmdiKDI0MCwyMzAsMTQw
KToga2hha2kKK1BhcnNlZCBhcyByZ2IoMjMwLDIzMCwyNTApOiBsYXZlbmRlcgorUGFyc2VkIGFz
IHJnYigyNTUsMjQwLDI0NSk6IGxhdmVuZGVyYmx1c2gKK1BhcnNlZCBhcyByZ2IoMTI0LDI1Miww
KTogbGF3bmdyZWVuCitQYXJzZWQgYXMgcmdiKDI1NSwyNTAsMjA1KTogbGVtb25jaGlmZm9uCitQ
YXJzZWQgYXMgcmdiKDE3MywyMTYsMjMwKTogbGlnaHRibHVlCitQYXJzZWQgYXMgcmdiKDI0MCwx
MjgsMTI4KTogbGlnaHRjb3JhbAorUGFyc2VkIGFzIHJnYigyMjQsMjU1LDI1NSk6IGxpZ2h0Y3lh
bgorUGFyc2VkIGFzIHJnYigyNTAsMjUwLDIxMCk6IGxpZ2h0Z29sZGVucm9keWVsbG93CitQYXJz
ZWQgYXMgcmdiKDIxMSwyMTEsMjExKTogbGlnaHRncmF5CitQYXJzZWQgYXMgcmdiKDE0NCwyMzgs
MTQ0KTogbGlnaHRncmVlbgorUGFyc2VkIGFzIHJnYigyMTEsMjExLDIxMSk6IGxpZ2h0Z3JleQor
UGFyc2VkIGFzIHJnYigyNTUsMTgyLDE5Myk6IGxpZ2h0cGluaworUGFyc2VkIGFzIHJnYigyNTUs
MTYwLDEyMik6IGxpZ2h0c2FsbW9uCitQYXJzZWQgYXMgcmdiKDMyLDE3OCwxNzApOiBsaWdodHNl
YWdyZWVuCitQYXJzZWQgYXMgcmdiKDEzNSwyMDYsMjUwKTogbGlnaHRza3libHVlCitQYXJzZWQg
YXMgcmdiKDExOSwxMzYsMTUzKTogbGlnaHRzbGF0ZWdyYXkKK1BhcnNlZCBhcyByZ2IoMTE5LDEz
NiwxNTMpOiBsaWdodHNsYXRlZ3JleQorUGFyc2VkIGFzIHJnYigxNzYsMTk2LDIyMik6IGxpZ2h0
c3RlZWxibHVlCitQYXJzZWQgYXMgcmdiKDI1NSwyNTUsMjI0KTogbGlnaHR5ZWxsb3cKK1BhcnNl
ZCBhcyByZ2IoMCwyNTUsMCk6IGxpbWUKK1BhcnNlZCBhcyByZ2IoNTAsMjA1LDUwKTogbGltZWdy
ZWVuCitQYXJzZWQgYXMgcmdiKDI1MCwyNDAsMjMwKTogbGluZW4KK1BhcnNlZCBhcyByZ2IoMjU1
LDAsMjU1KTogbWFnZW50YQorUGFyc2VkIGFzIHJnYigxMjgsMCwwKTogbWFyb29uCitQYXJzZWQg
YXMgcmdiKDEwMiwyMDUsMTcwKTogbWVkaXVtYXF1YW1hcmluZQorUGFyc2VkIGFzIHJnYigwLDAs
MjA1KTogbWVkaXVtYmx1ZQorUGFyc2VkIGFzIHJnYigxODYsODUsMjExKTogbWVkaXVtb3JjaGlk
CitQYXJzZWQgYXMgcmdiKDE0NywxMTIsMjE5KTogbWVkaXVtcHVycGxlCitQYXJzZWQgYXMgcmdi
KDYwLDE3OSwxMTMpOiBtZWRpdW1zZWFncmVlbgorUGFyc2VkIGFzIHJnYigxMjMsMTA0LDIzOCk6
IG1lZGl1bXNsYXRlYmx1ZQorUGFyc2VkIGFzIHJnYigwLDI1MCwxNTQpOiBtZWRpdW1zcHJpbmdn
cmVlbgorUGFyc2VkIGFzIHJnYig3MiwyMDksMjA0KTogbWVkaXVtdHVycXVvaXNlCitQYXJzZWQg
YXMgcmdiKDE5OSwyMSwxMzMpOiBtZWRpdW12aW9sZXRyZWQKK1BhcnNlZCBhcyByZ2IoMjUsMjUs
MTEyKTogbWlkbmlnaHRibHVlCitQYXJzZWQgYXMgcmdiKDI0NSwyNTUsMjUwKTogbWludGNyZWFt
CitQYXJzZWQgYXMgcmdiKDI1NSwyMjgsMjI1KTogbWlzdHlyb3NlCitQYXJzZWQgYXMgcmdiKDI1
NSwyMjgsMTgxKTogbW9jY2FzaW4KK1BhcnNlZCBhcyByZ2IoMjU1LDIyMiwxNzMpOiBuYXZham93
aGl0ZQorUGFyc2VkIGFzIHJnYigwLDAsMTI4KTogbmF2eQorUGFyc2VkIGFzIHJnYigyNTMsMjQ1
LDIzMCk6IG9sZGxhY2UKK1BhcnNlZCBhcyByZ2IoMTI4LDEyOCwwKTogb2xpdmUKK1BhcnNlZCBh
cyByZ2IoMTA3LDE0MiwzNSk6IG9saXZlZHJhYgorUGFyc2VkIGFzIHJnYigyNTUsMTY1LDApOiBv
cmFuZ2UKK1BhcnNlZCBhcyByZ2IoMjU1LDY5LDApOiBvcmFuZ2VyZWQKK1BhcnNlZCBhcyByZ2Io
MjE4LDExMiwyMTQpOiBvcmNoaWQKK1BhcnNlZCBhcyByZ2IoMjM4LDIzMiwxNzApOiBwYWxlZ29s
ZGVucm9kCitQYXJzZWQgYXMgcmdiKDE1MiwyNTEsMTUyKTogcGFsZWdyZWVuCitQYXJzZWQgYXMg
cmdiKDE3NSwyMzgsMjM4KTogcGFsZXR1cnF1b2lzZQorUGFyc2VkIGFzIHJnYigyMTksMTEyLDE0
Nyk6IHBhbGV2aW9sZXRyZWQKK1BhcnNlZCBhcyByZ2IoMjU1LDIzOSwyMTMpOiBwYXBheWF3aGlw
CitQYXJzZWQgYXMgcmdiKDI1NSwyMTgsMTg1KTogcGVhY2hwdWZmCitQYXJzZWQgYXMgcmdiKDIw
NSwxMzMsNjMpOiBwZXJ1CitQYXJzZWQgYXMgcmdiKDI1NSwxOTIsMjAzKTogcGluaworUGFyc2Vk
IGFzIHJnYigyMjEsMTYwLDIyMSk6IHBsdW0KK1BhcnNlZCBhcyByZ2IoMTc2LDIyNCwyMzApOiBw
b3dkZXJibHVlCitQYXJzZWQgYXMgcmdiKDEyOCwwLDEyOCk6IHB1cnBsZQorUGFyc2VkIGFzIHJn
YigxODgsMTQzLDE0Myk6IHJvc3licm93bgorUGFyc2VkIGFzIHJnYig2NSwxMDUsMjI1KTogcm95
YWxibHVlCitQYXJzZWQgYXMgcmdiKDEzOSw2OSwxOSk6IHNhZGRsZWJyb3duCitQYXJzZWQgYXMg
cmdiKDI1MCwxMjgsMTE0KTogc2FsbW9uCitQYXJzZWQgYXMgcmdiKDI0NCwxNjQsOTYpOiBzYW5k
eWJyb3duCitQYXJzZWQgYXMgcmdiKDQ2LDEzOSw4Nyk6IHNlYWdyZWVuCitQYXJzZWQgYXMgcmdi
KDI1NSwyNDUsMjM4KTogc2Vhc2hlbGwKK1BhcnNlZCBhcyByZ2IoMTYwLDgyLDQ1KTogc2llbm5h
CitQYXJzZWQgYXMgcmdiKDE5MiwxOTIsMTkyKTogc2lsdmVyCitQYXJzZWQgYXMgcmdiKDEzNSwy
MDYsMjM1KTogc2t5Ymx1ZQorUGFyc2VkIGFzIHJnYigxMDYsOTAsMjA1KTogc2xhdGVibHVlCitQ
YXJzZWQgYXMgcmdiKDExMiwxMjgsMTQ0KTogc2xhdGVncmF5CitQYXJzZWQgYXMgcmdiKDExMiwx
MjgsMTQ0KTogc2xhdGVncmV5CitQYXJzZWQgYXMgcmdiKDI1NSwyNTAsMjUwKTogc25vdworUGFy
c2VkIGFzIHJnYigwLDI1NSwxMjcpOiBzcHJpbmdncmVlbgorUGFyc2VkIGFzIHJnYig3MCwxMzAs
MTgwKTogc3RlZWxibHVlCitQYXJzZWQgYXMgcmdiKDIxMCwxODAsMTQwKTogdGFuCitQYXJzZWQg
YXMgcmdiKDAsMTI4LDEyOCk6IHRlYWwKK1BhcnNlZCBhcyByZ2IoMjE2LDE5MSwyMTYpOiB0aGlz
dGxlCitQYXJzZWQgYXMgcmdiKDI1NSw5OSw3MSk6IHRvbWF0bworUGFyc2VkIGFzIHJnYig2NCwy
MjQsMjA4KTogdHVycXVvaXNlCitQYXJzZWQgYXMgcmdiKDIzOCwxMzAsMjM4KTogdmlvbGV0CitQ
YXJzZWQgYXMgcmdiKDI0NSwyMjIsMTc5KTogd2hlYXQKK1BhcnNlZCBhcyByZ2IoMjU1LDI1NSwy
NTUpOiB3aGl0ZQorUGFyc2VkIGFzIHJnYigyNDUsMjQ1LDI0NSk6IHdoaXRlc21va2UKK1BhcnNl
ZCBhcyByZ2IoMjU1LDI1NSwwKTogeWVsbG93CitQYXJzZWQgYXMgcmdiKDE1NCwyMDUsNTApOiB5
ZWxsb3dncmVlbgogRmFpbGVkIHRvIHBhcnNlOiByZ2IoMTAwJSwxMDAlLDAlCiBGYWlsZWQgdG8g
cGFyc2U6IHJnYmEoMTAwJSwxMDAlLDAlCiBGYWlsZWQgdG8gcGFyc2U6IHJnYigxMDAlLDEwMCUs
cikKQEAgLTIxLDYgKzE2NywxNCBAQCBGYWlsZWQgdG8gcGFyc2U6ICNmZmZmCiBGYWlsZWQgdG8g
cGFyc2U6ICNmZmZmZgogRmFpbGVkIHRvIHBhcnNlOiAjZmZmZmZmZgogRmFpbGVkIHRvIHBhcnNl
OiBncmVlbiwKK0ZhaWxlZCB0byBwYXJzZTogJ2xlZnQnCitGYWlsZWQgdG8gcGFyc2U6ICdyaWdo
dCcKK0ZhaWxlZCB0byBwYXJzZTogJ2NlbnRlcicKK0ZhaWxlZCB0byBwYXJzZTogJ2JvcmRlcicK
K0ZhaWxlZCB0byBwYXJzZTogJ2JvcmRlci0KK0ZhaWxlZCB0byBwYXJzZTogJ2NvbnRlbnQnCitG
YWlsZWQgdG8gcGFyc2U6ICdsb2dpY2FsJworRmFpbGVkIHRvIHBhcnNlOiAndmlzdWFsJwogUGFy
c2VkIGFzIHJnYigwLDEwLDIwKTogcmdiKDAsIDEwLCAyMCkKIFBhcnNlZCBhcyByZ2IoMjU1LDI1
NSwyNTUpOiAjZmZmCiBQYXJzZWQgYXMgcmdiKDI1NSwyNTUsMjU1KTogI2ZmZmZmZgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3ZnL2RvbS9yZ2ItY29sb3ItcGFyc2VyLmh0bWwgYi9MYXlvdXRU
ZXN0cy9zdmcvZG9tL3JnYi1jb2xvci1wYXJzZXIuaHRtbAppbmRleCA1ZWE5Njg3Y2EyZTljYzZm
OTYxNjhkYzE5NTFiYWJjZDQ5NDA0OWYyLi5lYTEzNzMzYzIwYzlmNjEwZjdhMDU0NDA0ZDMyMmU0
ZDE2M2MzYzNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdmcvZG9tL3JnYi1jb2xvci1wYXJz
ZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9zdmcvZG9tL3JnYi1jb2xvci1wYXJzZXIuaHRtbApA
QCAtNTQsMTIgKzU0LDE2NSBAQAogICAgICAgICB9CiAgICAgfQogCisgICAgLy8gVGFrZW4gZnJv
bSBDU1MgMyBjb2xvci4KKyAgICB2YXIgc3ZnQ29sb3JzID0gWworICAgICAgICAiYWxpY2VibHVl
IiwKKyAgICAgICAgImFudGlxdWV3aGl0ZSIsCisgICAgICAgICJhcXVhIiwKKyAgICAgICAgImFx
dWFtYXJpbmUiLAorICAgICAgICAiYXp1cmUiLAorICAgICAgICAiYmVpZ2UiLAorICAgICAgICAi
YmlzcXVlIiwKKyAgICAgICAgImJsYWNrIiwKKyAgICAgICAgImJsYW5jaGVkYWxtb25kIiwKKyAg
ICAgICAgImJsdWUiLAorICAgICAgICAiYmx1ZXZpb2xldCIsCisgICAgICAgICJicm93biIsCisg
ICAgICAgICJidXJseXdvb2QiLAorICAgICAgICAiY2FkZXRibHVlIiwKKyAgICAgICAgImNoYXJ0
cmV1c2UiLAorICAgICAgICAiY2hvY29sYXRlIiwKKyAgICAgICAgImNvcmFsIiwKKyAgICAgICAg
ImNvcm5mbG93ZXJibHVlIiwKKyAgICAgICAgImNvcm5zaWxrIiwKKyAgICAgICAgImNyaW1zb24i
LAorICAgICAgICAiY3lhbiIsCisgICAgICAgICJkYXJrYmx1ZSIsCisgICAgICAgICJkYXJrY3lh
biIsCisgICAgICAgICJkYXJrZ29sZGVucm9kIiwKKyAgICAgICAgImRhcmtncmF5IiwKKyAgICAg
ICAgImRhcmtncmVlbiIsCisgICAgICAgICJkYXJrZ3JleSIsCisgICAgICAgICJkYXJra2hha2ki
LAorICAgICAgICAiZGFya21hZ2VudGEiLAorICAgICAgICAiZGFya29saXZlZ3JlZW4iLAorICAg
ICAgICAiZGFya29yYW5nZSIsCisgICAgICAgICJkYXJrb3JjaGlkIiwKKyAgICAgICAgImRhcmty
ZWQiLAorICAgICAgICAiZGFya3NhbG1vbiIsCisgICAgICAgICJkYXJrc2VhZ3JlZW4iLAorICAg
ICAgICAiZGFya3NsYXRlYmx1ZSIsCisgICAgICAgICJkYXJrc2xhdGVncmF5IiwKKyAgICAgICAg
ImRhcmtzbGF0ZWdyZXkiLAorICAgICAgICAiZGFya3R1cnF1b2lzZSIsCisgICAgICAgICJkYXJr
dmlvbGV0IiwKKyAgICAgICAgImRlZXBwaW5rIiwKKyAgICAgICAgImRlZXBza3libHVlIiwKKyAg
ICAgICAgImRpbWdyYXkiLAorICAgICAgICAiZGltZ3JleSIsCisgICAgICAgICJkb2RnZXJibHVl
IiwKKyAgICAgICAgImZpcmVicmljayIsCisgICAgICAgICJmbG9yYWx3aGl0ZSIsCisgICAgICAg
ICJmb3Jlc3RncmVlbiIsCisgICAgICAgICJmdWNoc2lhIiwKKyAgICAgICAgImdhaW5zYm9ybyIs
CisgICAgICAgICJnaG9zdHdoaXRlIiwKKyAgICAgICAgImdvbGQiLAorICAgICAgICAiZ29sZGVu
cm9kIiwKKyAgICAgICAgImdyYXkiLAorICAgICAgICAiZ3JlZW4iLAorICAgICAgICAiZ3JlZW55
ZWxsb3ciLAorICAgICAgICAiZ3JleSIsCisgICAgICAgICJob25leWRldyIsCisgICAgICAgICJo
b3RwaW5rIiwKKyAgICAgICAgImluZGlhbnJlZCIsCisgICAgICAgICJpbmRpZ28iLAorICAgICAg
ICAiaXZvcnkiLAorICAgICAgICAia2hha2kiLAorICAgICAgICAibGF2ZW5kZXIiLAorICAgICAg
ICAibGF2ZW5kZXJibHVzaCIsCisgICAgICAgICJsYXduZ3JlZW4iLAorICAgICAgICAibGVtb25j
aGlmZm9uIiwKKyAgICAgICAgImxpZ2h0Ymx1ZSIsCisgICAgICAgICJsaWdodGNvcmFsIiwKKyAg
ICAgICAgImxpZ2h0Y3lhbiIsCisgICAgICAgICJsaWdodGdvbGRlbnJvZHllbGxvdyIsCisgICAg
ICAgICJsaWdodGdyYXkiLAorICAgICAgICAibGlnaHRncmVlbiIsCisgICAgICAgICJsaWdodGdy
ZXkiLAorICAgICAgICAibGlnaHRwaW5rIiwKKyAgICAgICAgImxpZ2h0c2FsbW9uIiwKKyAgICAg
ICAgImxpZ2h0c2VhZ3JlZW4iLAorICAgICAgICAibGlnaHRza3libHVlIiwKKyAgICAgICAgImxp
Z2h0c2xhdGVncmF5IiwKKyAgICAgICAgImxpZ2h0c2xhdGVncmV5IiwKKyAgICAgICAgImxpZ2h0
c3RlZWxibHVlIiwKKyAgICAgICAgImxpZ2h0eWVsbG93IiwKKyAgICAgICAgImxpbWUiLAorICAg
ICAgICAibGltZWdyZWVuIiwKKyAgICAgICAgImxpbmVuIiwKKyAgICAgICAgIm1hZ2VudGEiLAor
ICAgICAgICAibWFyb29uIiwKKyAgICAgICAgIm1lZGl1bWFxdWFtYXJpbmUiLAorICAgICAgICAi
bWVkaXVtYmx1ZSIsCisgICAgICAgICJtZWRpdW1vcmNoaWQiLAorICAgICAgICAibWVkaXVtcHVy
cGxlIiwKKyAgICAgICAgIm1lZGl1bXNlYWdyZWVuIiwKKyAgICAgICAgIm1lZGl1bXNsYXRlYmx1
ZSIsCisgICAgICAgICJtZWRpdW1zcHJpbmdncmVlbiIsCisgICAgICAgICJtZWRpdW10dXJxdW9p
c2UiLAorICAgICAgICAibWVkaXVtdmlvbGV0cmVkIiwKKyAgICAgICAgIm1pZG5pZ2h0Ymx1ZSIs
CisgICAgICAgICJtaW50Y3JlYW0iLAorICAgICAgICAibWlzdHlyb3NlIiwKKyAgICAgICAgIm1v
Y2Nhc2luIiwKKyAgICAgICAgIm5hdmFqb3doaXRlIiwKKyAgICAgICAgIm5hdnkiLAorICAgICAg
ICAib2xkbGFjZSIsCisgICAgICAgICJvbGl2ZSIsCisgICAgICAgICJvbGl2ZWRyYWIiLAorICAg
ICAgICAib3JhbmdlIiwKKyAgICAgICAgIm9yYW5nZXJlZCIsCisgICAgICAgICJvcmNoaWQiLAor
ICAgICAgICAicGFsZWdvbGRlbnJvZCIsCisgICAgICAgICJwYWxlZ3JlZW4iLAorICAgICAgICAi
cGFsZXR1cnF1b2lzZSIsCisgICAgICAgICJwYWxldmlvbGV0cmVkIiwKKyAgICAgICAgInBhcGF5
YXdoaXAiLAorICAgICAgICAicGVhY2hwdWZmIiwKKyAgICAgICAgInBlcnUiLAorICAgICAgICAi
cGluayIsCisgICAgICAgICJwbHVtIiwKKyAgICAgICAgInBvd2RlcmJsdWUiLAorICAgICAgICAi
cHVycGxlIiwKKyAgICAgICAgLy8gV2UgZG8gbm90IHRlc3QgcmVkLgorICAgICAgICAicm9zeWJy
b3duIiwKKyAgICAgICAgInJveWFsYmx1ZSIsCisgICAgICAgICJzYWRkbGVicm93biIsCisgICAg
ICAgICJzYWxtb24iLAorICAgICAgICAic2FuZHlicm93biIsCisgICAgICAgICJzZWFncmVlbiIs
CisgICAgICAgICJzZWFzaGVsbCIsCisgICAgICAgICJzaWVubmEiLAorICAgICAgICAic2lsdmVy
IiwKKyAgICAgICAgInNreWJsdWUiLAorICAgICAgICAic2xhdGVibHVlIiwKKyAgICAgICAgInNs
YXRlZ3JheSIsCisgICAgICAgICJzbGF0ZWdyZXkiLAorICAgICAgICAic25vdyIsCisgICAgICAg
ICJzcHJpbmdncmVlbiIsCisgICAgICAgICJzdGVlbGJsdWUiLAorICAgICAgICAidGFuIiwKKyAg
ICAgICAgInRlYWwiLAorICAgICAgICAidGhpc3RsZSIsCisgICAgICAgICJ0b21hdG8iLAorICAg
ICAgICAidHVycXVvaXNlIiwKKyAgICAgICAgInZpb2xldCIsCisgICAgICAgICJ3aGVhdCIsCisg
ICAgICAgICJ3aGl0ZSIsCisgICAgICAgICJ3aGl0ZXNtb2tlIiwKKyAgICAgICAgInllbGxvdyIs
CisgICAgICAgICJ5ZWxsb3dncmVlbiIKKyAgICBdOworCiAgICAgZnVuY3Rpb24gZnV6eigpCiAg
ICAgewogICAgICAgICAvLyBTb21lIHZhbGlkIHZhbHVlcy4KICAgICAgICAgcGFyc2VSR0JDb2xv
cigiYmx1ZSIpOwogICAgICAgICBwYXJzZVJHQkNvbG9yKCJyZ2IoMCwgMjU1LCAwKSIpOwotICAg
ICAgICAKKyAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdmdDb2xvcnMubGVuZ3RoOyArK2kp
CisgICAgICAgICAgICBwYXJzZVJHQkNvbG9yKHN2Z0NvbG9yc1tpXSk7CisKICAgICAgICAgLy8g
U29tZSBpbnZhbGlkIG9uZXMuCiAgICAgICAgIHBhcnNlUkdCQ29sb3IoInJnYigxMDAlLDEwMCUs
MCUiKTsKICAgICAgICAgcGFyc2VSR0JDb2xvcigicmdiYSgxMDAlLDEwMCUsMCUiKTsKQEAgLTc3
LDYgKzIzMCwxNCBAQAogICAgICAgICBwYXJzZVJHQkNvbG9yKCIjZmZmZmYiKTsKICAgICAgICAg
cGFyc2VSR0JDb2xvcigiI2ZmZmZmZmYiKTsKICAgICAgICAgcGFyc2VSR0JDb2xvcigiZ3JlZW4s
Iik7CisgICAgICAgIHBhcnNlUkdCQ29sb3IoIidsZWZ0JyIpOworICAgICAgICBwYXJzZVJHQkNv
bG9yKCIncmlnaHQnIik7CisgICAgICAgIHBhcnNlUkdCQ29sb3IoIidjZW50ZXInIik7CisgICAg
ICAgIHBhcnNlUkdCQ29sb3IoIidib3JkZXInIik7CisgICAgICAgIHBhcnNlUkdCQ29sb3IoIidi
b3JkZXItIik7CisgICAgICAgIHBhcnNlUkdCQ29sb3IoIidjb250ZW50JyIpOworICAgICAgICBw
YXJzZVJHQkNvbG9yKCInbG9naWNhbCciKTsKKyAgICAgICAgcGFyc2VSR0JDb2xvcigiJ3Zpc3Vh
bCciKTsKIAogICAgICAgICAvLyBTb21lIG1vcmUgdmFsaWQgb25lcy4KICAgICAgICAgcGFyc2VS
R0JDb2xvcigicmdiKDAsIDEwLCAyMCkiKTsK
</data>
<flag name="review"
          id="259179"
          type_id="1"
          status="+"
          setter="benjamin"
    />
          </attachment>
      

    </bug>

</bugzilla>