<?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>144449</bug_id>
          
          <creation_ts>2015-04-30 05:31:46 -0700</creation_ts>
          <short_desc>[CSS Grid Layout] Wrong computed style for named grid lines in implicit tracks</short_desc>
          <delta_ts>2015-05-04 01:38:26 -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>Layout and Rendering</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>60731</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Manuel Rego Casasnovas">rego</reporter>
          <assigned_to name="Manuel Rego Casasnovas">rego</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>jfernandez</cc>
    
    <cc>svillar</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1090420</commentid>
    <comment_count>0</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2015-04-30 05:31:46 -0700</bug_when>
    <thetext>[CSS Grid Layout] Wrong computed style for named grid lines in implicit tracks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090421</commentid>
    <comment_count>1</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2015-04-30 05:35:01 -0700</bug_when>
    <thetext>The computed style for grid-template-columns|rows is appending the last named grid line after the implicit tracks which shouldn&apos;t happen.

For example:
&lt;div style=&quot;display: -webkit-grid; -webkit-grid-template-columns: (a) 100px (b);&quot;&gt;
  &lt;div style=&quot;-webkit-grid-row: 1; width: 100px;&quot;&gt;item1&lt;/div&gt;
  &lt;div style=&quot;-webkit-grid-row: 1; width: 100px;&quot;&gt;item2&lt;/div&gt;
&lt;/div&gt;

If you check the computed style of grid-template-columns you&apos;ll get:
(a) 100px (b) 100px (b)

But actually it should be:
(a) 100px (b) 100px

The same happens for grid-template-rows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090422</commentid>
    <comment_count>2</comment_count>
      <attachid>252051</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2015-04-30 05:35:37 -0700</bug_when>
    <thetext>Created attachment 252051
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090433</commentid>
    <comment_count>3</comment_count>
      <attachid>252051</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2015-04-30 06:19:24 -0700</bug_when>
    <thetext>Comment on attachment 252051
Patch

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

Almost there but r- due to some missing test coverage.

&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1076
&gt;      return WTF::move(list);

This is quite confusing, I&apos;d better leave the loops as they are, and just change the index here. You can write it like this:

unsigned insertionIndex = isRenderGrid ? trackPositions.size() - 1 : trackSizes.size();
addValuesForNamedGridLinesAtIndex(orderedNamedGridLines, insertionIndex, list.get());

&gt; LayoutTests/fast/css-grid-layout/named-grid-lines-computed-style-implicit-tracks-expected.txt:4
&gt; +

Extra line here?

&gt; LayoutTests/fast/css-grid-layout/named-grid-lines-computed-style-implicit-tracks-expected.txt:14
&gt; +PASS successfullyParsed is true

It&apos;d be nice to add also some tests with multiple names per track line

&gt; LayoutTests/fast/css-grid-layout/named-grid-lines-computed-style-implicit-tracks.html:13
&gt; +&lt;/head&gt;

You can omit the &lt;head&gt; tag. Even &lt;body&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090434</commentid>
    <comment_count>4</comment_count>
      <attachid>252051</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2015-04-30 06:22:05 -0700</bug_when>
    <thetext>Comment on attachment 252051
Patch

I&apos;ve forgotten to mention that we need test coverage for the non-grid (i.e. no &quot;display: -webkit-grid&quot;) cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090555</commentid>
    <comment_count>5</comment_count>
      <attachid>252084</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2015-04-30 13:38:08 -0700</bug_when>
    <thetext>Created attachment 252084
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090557</commentid>
    <comment_count>6</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2015-04-30 13:43:12 -0700</bug_when>
    <thetext>Thanks for the review!

Uploaded new version of the patch.

(In reply to comment #3)
&gt; Comment on attachment 252051 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=252051&amp;action=review
&gt; 
&gt; Almost there but r- due to some missing test coverage.
&gt; 
&gt; &gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1076
&gt; &gt;      return WTF::move(list);
&gt; 
&gt; This is quite confusing, I&apos;d better leave the loops as they are, and just
&gt; change the index here. You can write it like this:
&gt; 
&gt; unsigned insertionIndex = isRenderGrid ? trackPositions.size() - 1 :
&gt; trackSizes.size();
&gt; addValuesForNamedGridLinesAtIndex(orderedNamedGridLines, insertionIndex,
&gt; list.get());

I also thought about doing it that way. But the problem is that we don&apos;t have trackPositions here.
We only have trackPositions if isLayoutGrid, so we&apos;d need a bigger change in the code, and IMHO it would be more complex than current patch.


&gt; &gt; LayoutTests/fast/css-grid-layout/named-grid-lines-computed-style-implicit-tracks-expected.txt:4
&gt; &gt; +
&gt; 
&gt; Extra line here?

The -expected.txt file is generated, so I think we can ignore this. :-)

&gt; &gt; LayoutTests/fast/css-grid-layout/named-grid-lines-computed-style-implicit-tracks-expected.txt:14
&gt; &gt; +PASS successfullyParsed is true
&gt; 
&gt; It&apos;d be nice to add also some tests with multiple names per track line

Added tests for multiple named grid lines.

&gt; &gt; LayoutTests/fast/css-grid-layout/named-grid-lines-computed-style-implicit-tracks.html:13
&gt; &gt; +&lt;/head&gt;
&gt; 
&gt; You can omit the &lt;head&gt; tag. Even &lt;body&gt;

Done (removed &lt;html&gt; too).


(In reply to comment #4)
&gt; Comment on attachment 252051 [details]
&gt; Patch
&gt; 
&gt; I&apos;ve forgotten to mention that we need test coverage for the non-grid (i.e.
&gt; no &quot;display: -webkit-grid&quot;) cases.

I don&apos;t think we need it as we already have non-named-grid-line-get-set.html and it&apos;s not possible to have implicit grids in a &quot;non-grid&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090752</commentid>
    <comment_count>7</comment_count>
      <attachid>252051</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2015-05-01 02:22:07 -0700</bug_when>
    <thetext>Comment on attachment 252051
Patch

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

&gt;&gt;&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1076
&gt;&gt;&gt;      return WTF::move(list);
&gt;&gt; 
&gt;&gt; This is quite confusing, I&apos;d better leave the loops as they are, and just change the index here. You can write it like this:
&gt;&gt; 
&gt;&gt; unsigned insertionIndex = isRenderGrid ? trackPositions.size() - 1 : trackSizes.size();
&gt;&gt; addValuesForNamedGridLinesAtIndex(orderedNamedGridLines, insertionIndex, list.get());
&gt; 
&gt; I also thought about doing it that way. But the problem is that we don&apos;t have trackPositions here.
&gt; We only have trackPositions if isLayoutGrid, so we&apos;d need a bigger change in the code, and IMHO it would be more complex than current patch.

No, you don&apos;t need a bigger change, just store the size in a variable as I&apos;m doing here but inside the if-else block. But use a different variable and not the one used inside the loop. It&apos;s very important to keep the locality of the variables, and &quot;i&quot; should only be used inside the loop, it makes no sense to depend on a side effect (the loop) to get a value for a variable. If a break or return is eventually added to those loops then the code rottens.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091315</commentid>
    <comment_count>8</comment_count>
      <attachid>252298</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2015-05-03 22:28:41 -0700</bug_when>
    <thetext>Created attachment 252298
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091316</commentid>
    <comment_count>9</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2015-05-03 22:29:30 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Comment on attachment 252051 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=252051&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1076
&gt; &gt;&gt;&gt;      return WTF::move(list);
&gt; &gt;&gt; 
&gt; &gt;&gt; This is quite confusing, I&apos;d better leave the loops as they are, and just change the index here. You can write it like this:
&gt; &gt;&gt; 
&gt; &gt;&gt; unsigned insertionIndex = isRenderGrid ? trackPositions.size() - 1 : trackSizes.size();
&gt; &gt;&gt; addValuesForNamedGridLinesAtIndex(orderedNamedGridLines, insertionIndex, list.get());
&gt; &gt; 
&gt; &gt; I also thought about doing it that way. But the problem is that we don&apos;t have trackPositions here.
&gt; &gt; We only have trackPositions if isLayoutGrid, so we&apos;d need a bigger change in the code, and IMHO it would be more complex than current patch.
&gt; 
&gt; No, you don&apos;t need a bigger change, just store the size in a variable as I&apos;m
&gt; doing here but inside the if-else block. But use a different variable and
&gt; not the one used inside the loop. It&apos;s very important to keep the locality
&gt; of the variables, and &quot;i&quot; should only be used inside the loop, it makes no
&gt; sense to depend on a side effect (the loop) to get a value for a variable.
&gt; If a break or return is eventually added to those loops then the code
&gt; rottens.

Ok, uploaded a new version following this suggestion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091319</commentid>
    <comment_count>10</comment_count>
      <attachid>252298</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2015-05-04 00:35:01 -0700</bug_when>
    <thetext>Comment on attachment 252298
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        If there&apos;re implicit tracks trackPositions is bigger than trackSizes, so

Nit: If there&apos;re implicit tracks **then** trackPositions is

&gt; Source/WebCore/ChangeLog:9
&gt; +        we need to use the proper index to append the trailing strings in

Nit: trailing &lt;ident&gt;s</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091320</commentid>
    <comment_count>11</comment_count>
      <attachid>252300</attachid>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2015-05-04 00:48:00 -0700</bug_when>
    <thetext>Created attachment 252300
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091328</commentid>
    <comment_count>12</comment_count>
      <attachid>252300</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-04 01:38:23 -0700</bug_when>
    <thetext>Comment on attachment 252300
Patch

Clearing flags on attachment: 252300

Committed r183739: &lt;http://trac.webkit.org/changeset/183739&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1091329</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-04 01:38:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252051</attachid>
            <date>2015-04-30 05:35:37 -0700</date>
            <delta_ts>2015-04-30 13:38:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-144449-20150430143426.patch</filename>
            <type>text/plain</type>
            <size>7751</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgzNjI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDMwOWUwZjJmYTRmOWQy
MmQxZDNjOGYwMzYzNmI1NWEwMzdhZjVhNC4uZjYwZGIxNzFkMjdiOTgxZDY2ZmMxYjA3Mzk0MWFj
NzkzZDFkMDU0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE1LTA0LTMwICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtDU1MgR3Jp
ZCBMYXlvdXRdIFdyb25nIGNvbXB1dGVkIHN0eWxlIGZvciBuYW1lZCBncmlkIGxpbmVzIGluIGlt
cGxpY2l0IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ0NDQ5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgSWYgdGhlcmUncmUgaW1wbGljaXQgdHJhY2tzIHRyYWNrUG9zaXRpb25zIGlzIGJpZ2dl
ciB0aGFuIHRyYWNrU2l6ZXMsIHNvCisgICAgICAgIHdlIG5lZWQgdG8gdXNlIHRoZSBwcm9wZXIg
aW5kZXggdG8gYXBwZW5kIHRoZSB0cmFpbGluZyBzdHJpbmdzIGluCisgICAgICAgIHZhbHVlRm9y
R3JpZFRyYWNrTGlzdCgpLgorCisgICAgICAgIFRlc3Q6IGZhc3QvY3NzLWdyaWQtbGF5b3V0L25h
bWVkLWdyaWQtbGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLmh0bWwKKworICAg
ICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6dmFsdWVGb3JHcmlkVHJhY2tMaXN0KToKKwogMjAxNS0wNC0yOSAgSmVyIE5vYmxlICA8
amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIEdlbmVyaWNUYXNrUXVldWUgZXZl
biBtb3JlIGdlbmVyaWMgKGFuZCB1c2FibGUgaW5zaWRlIHBsYXRmb3JtLykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggMmY3
MDVhNjRjZDNmYzI1MDFiMGJkYjhjMmJmZmRiNDM1YzliZDM3My4uZjBlMjE3OWUzZTlmNzU2MWYy
Zjc2YTZjZDU3YzllYTI1NjMzYmI3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NT
U0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTEwNTMsMjUgKzEwNTMsMjYgQEAgc3Rh
dGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JHcmlkVHJhY2tMaXN0KEdyaWRUcmFja1NpemluZ0Rp
cmVjdGlvbiBkaXJlY3Rpb24sIFIKICAgICB9CiAKICAgICBhdXRvIGxpc3QgPSBDU1NWYWx1ZUxp
c3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7CisgICAgdW5zaWduZWQgaSA9IDA7CiAgICAgaWYg
KGlzUmVuZGVyR3JpZCkgewogICAgICAgICBjb25zdCBWZWN0b3I8TGF5b3V0VW5pdD4mIHRyYWNr
UG9zaXRpb25zID0gZGlyZWN0aW9uID09IEZvckNvbHVtbnMgPyBkb3duY2FzdDxSZW5kZXJHcmlk
PigqcmVuZGVyZXIpLmNvbHVtblBvc2l0aW9ucygpIDogZG93bmNhc3Q8UmVuZGVyR3JpZD4oKnJl
bmRlcmVyKS5yb3dQb3NpdGlvbnMoKTsKICAgICAgICAgLy8gVGhlcmUgYXJlIGF0IGxlYXN0ICN0
cmFja3MgKyAxIGdyaWQgbGluZXMgKHRyYWNrUG9zaXRpb25zKS4gQXBhcnQgZnJvbSB0aGF0LCB0
aGUgZ3JpZCBjb250YWluZXIgY2FuIGdlbmVyYXRlIGltcGxpY2l0IGdyaWQgdHJhY2tzLAogICAg
ICAgICAvLyBzbyB3ZSdsbCBoYXZlIG1vcmUgdHJhY2tQb3NpdGlvbnMgdGhhbiB0cmFja1NpemVz
IGFzIHRoZSBsYXR0ZXIgb25seSBjb250YWluIHRoZSBleHBsaWNpdCBncmlkLgogICAgICAgICBB
U1NFUlQodHJhY2tQb3NpdGlvbnMuc2l6ZSgpIC0gMSA+PSB0cmFja1NpemVzLnNpemUoKSk7CiAK
LSAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHRyYWNrUG9zaXRpb25zLnNpemUoKSAt
IDE7ICsraSkgeworICAgICAgICBmb3IgKDsgaSA8IHRyYWNrUG9zaXRpb25zLnNpemUoKSAtIDE7
ICsraSkgewogICAgICAgICAgICAgYWRkVmFsdWVzRm9yTmFtZWRHcmlkTGluZXNBdEluZGV4KG9y
ZGVyZWROYW1lZEdyaWRMaW5lcywgaSwgbGlzdC5nZXQoKSk7CiAgICAgICAgICAgICBsaXN0Lmdl
dCgpLmFwcGVuZCh6b29tQWRqdXN0ZWRQaXhlbFZhbHVlKHRyYWNrUG9zaXRpb25zW2kgKyAxXSAt
IHRyYWNrUG9zaXRpb25zW2ldLCBzdHlsZSkpOwogICAgICAgICB9CiAgICAgfSBlbHNlIHsKLSAg
ICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHRyYWNrU2l6ZXMuc2l6ZSgpOyArK2kpIHsK
KyAgICAgICAgZm9yICg7IGkgPCB0cmFja1NpemVzLnNpemUoKTsgKytpKSB7CiAgICAgICAgICAg
ICBhZGRWYWx1ZXNGb3JOYW1lZEdyaWRMaW5lc0F0SW5kZXgob3JkZXJlZE5hbWVkR3JpZExpbmVz
LCBpLCBsaXN0LmdldCgpKTsKICAgICAgICAgICAgIGxpc3QuZ2V0KCkuYXBwZW5kKHNwZWNpZmll
ZFZhbHVlRm9yR3JpZFRyYWNrU2l6ZSh0cmFja1NpemVzW2ldLCBzdHlsZSkpOwogICAgICAgICB9
CiAgICAgfQogCiAgICAgLy8gVGhvc2UgYXJlIHRoZSB0cmFpbGluZyA8aWRlbnQ+KiBhbGxvd2Vk
IGluIHRoZSBzeW50YXguCi0gICAgYWRkVmFsdWVzRm9yTmFtZWRHcmlkTGluZXNBdEluZGV4KG9y
ZGVyZWROYW1lZEdyaWRMaW5lcywgdHJhY2tTaXplcy5zaXplKCksIGxpc3QuZ2V0KCkpOworICAg
IGFkZFZhbHVlc0Zvck5hbWVkR3JpZExpbmVzQXRJbmRleChvcmRlcmVkTmFtZWRHcmlkTGluZXMs
IGksIGxpc3QuZ2V0KCkpOwogICAgIHJldHVybiBXVEY6Om1vdmUobGlzdCk7CiB9CiAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCAzNjk3M2Q4MjI3MDZhOTRjYzNiMmYwODM4NmVkMTQ5MzNiNzlmZTBjLi40OTE0MjJhZjYyYTFi
NTMzN2Y0YmM5YjE5ODU4YWYyZGU5NDIwMjcwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTUt
MDQtMzAgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdvQGlnYWxpYS5jb20+CisKKyAgICAg
ICAgW0NTUyBHcmlkIExheW91dF0gV3JvbmcgY29tcHV0ZWQgc3R5bGUgZm9yIG5hbWVkIGdyaWQg
bGluZXMgaW4gaW1wbGljaXQgdHJhY2tzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNDQ0NDkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L25hbWVkLWdyaWQtbGluZXMt
Y29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHls
ZS1pbXBsaWNpdC10cmFja3MuaHRtbDogQWRkZWQuCisKIDIwMTUtMDQtMzAgIEFudHRpIEtvaXZp
c3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFRoZXNlIHNob3VsZCBiZSBzYXlpbmcg
SFRUUC8xLjEgbm90IEhUVFAvMS4wCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1n
cmlkLWxheW91dC9uYW1lZC1ncmlkLWxpbmVzLWNvbXB1dGVkLXN0eWxlLWltcGxpY2l0LXRyYWNr
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9uYW1lZC1n
cmlkLWxpbmVzLWNvbXB1dGVkLXN0eWxlLWltcGxpY2l0LXRyYWNrcy1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uM2U5NTExOWUwYmJjMTIzM2U0ZmJhZDIyNjZmN2YyOTI0Nzc5NzA3YgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L25hbWVkLWdyaWQt
bGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDMyIEBACitUZXN0IHRoYXQgY29tcHV0ZWQgc3R5bGUgZm9yIGdyaWQtdGVtcGxhdGUtY29s
dW1ucyBhbmQgZ3JpZC10ZW1wbGF0ZS1yb3dzIHdvcmtzIGFzIGV4cGVjdGVkIHdpdGggbmFtZWQg
Z3JpZCBsaW5lcyBhbmQgaW1wbGljaXQgdHJhY2tzCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGdyaWRPbmVDb2x1bW4sICcnKS5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSkg
MjAwcHggKGIpIgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkT25lQ29sdW1uLCAn
JykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiKHgp
IDUwcHggKHkpIDUwcHggNTBweCA1MHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShn
cmlkVHdvQ29sdW1ucywgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0
ZS1jb2x1bW5zJykgaXMgIihhKSAyMDBweCAoYikgMTUwcHgiCitQQVNTIHdpbmRvdy5nZXRDb21w
dXRlZFN0eWxlKGdyaWRUd29Db2x1bW5zLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1n
cmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiKHgpIDUwcHggKHkpIDUwcHgiCitQQVNTIHdpbmRvdy5n
ZXRDb21wdXRlZFN0eWxlKGdyaWRUaHJlZUNvbHVtbnMsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSkgMjAwcHggKGIpIDE1MHB4IDEw
MHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkVGhyZWVDb2x1bW5zLCAnJyku
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiKHgpIDUw
cHggKHkpIDUwcHgiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGdyaWRGb3VyQ29sdW1u
cywgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykg
aXMgIihhKSAyMDBweCAoYikgMTUwcHggMTAwcHggNTBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUoZ3JpZEZvdXJDb2x1bW5zLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1n
cmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiKHgpIDUwcHggKHkpIgorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitY
WFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9uYW1lZC1ncmlkLWxpbmVzLWNvbXB1
dGVkLXN0eWxlLWltcGxpY2l0LXRyYWNrcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3Jp
ZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3Mu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi41Y2E0ZDUzNjI4ODBjMjRiZTE0OTgyNWM5MmQ4ZGFmOTk3Y2YxZjBh
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFt
ZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3MuaHRtbApAQCAtMCww
ICsxLDUzIEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorPGhlYWQ+Cis8bGluayBocmVmPSJy
ZXNvdXJjZXMvZ3JpZC5jc3MiIHJlbD0ic3R5bGVzaGVldCI+Cis8c3R5bGU+CisuZ3JpZCB7Cisg
ICAgLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IChhKSBhdXRvIChiKTsKKyAgICAtd2Vi
a2l0LWdyaWQtdGVtcGxhdGUtcm93czogKHgpIGF1dG8gKHkpOworICAgIGZvbnQ6IDUwcHgvMSBB
aGVtOworfQorPC9zdHlsZT4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC5q
cyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgY2xhc3M9ImdyaWQiIGlkPSJncmlk
T25lQ29sdW1uIj4KKyAgICA8ZGl2PlhYWFg8L2Rpdj4KKyAgICA8ZGl2PlhYWDwvZGl2PgorICAg
IDxkaXY+WFg8L2Rpdj4KKyAgICA8ZGl2Plg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJn
cmlkIiBpZD0iZ3JpZFR3b0NvbHVtbnMiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0Nv
bHVtbiI+WFhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhY
PC9kaXY+CisgICAgPGRpdj5YWDwvZGl2PgorICAgIDxkaXY+WDwvZGl2PgorPC9kaXY+CisKKzxk
aXYgY2xhc3M9ImdyaWQiIGlkPSJncmlkVGhyZWVDb2x1bW5zIj4KKyAgICA8ZGl2IGNsYXNzPSJm
aXJzdFJvd0F1dG9Db2x1bW4iPlhYWFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1
dG9Db2x1bW4iPlhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+
WFg8L2Rpdj4KKyAgICA8ZGl2Plg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIiBp
ZD0iZ3JpZEZvdXJDb2x1bW5zIj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4i
PlhYWFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYWDwvZGl2
PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFg8L2Rpdj4KKyAgICA8ZGl2
IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlg8L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL2dyaWQtZGVmaW5pdGlvbnMtcGFyc2luZy11dGlscy5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCdUZXN0IHRoYXQgY29tcHV0ZWQgc3R5bGUgZm9y
IGdyaWQtdGVtcGxhdGUtY29sdW1ucyBhbmQgZ3JpZC10ZW1wbGF0ZS1yb3dzIHdvcmtzIGFzIGV4
cGVjdGVkIHdpdGggbmFtZWQgZ3JpZCBsaW5lcyBhbmQgaW1wbGljaXQgdHJhY2tzJyk7CisKKyAg
ICB0ZXN0R3JpZFRlbXBsYXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3JpZE9u
ZUNvbHVtbiIpLCAiKGEpIDIwMHB4IChiKSIsICIoeCkgNTBweCAoeSkgNTBweCA1MHB4IDUwcHgi
KTsKKyAgICB0ZXN0R3JpZFRlbXBsYXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
Z3JpZFR3b0NvbHVtbnMiKSwgIihhKSAyMDBweCAoYikgMTUwcHgiLCAiKHgpIDUwcHggKHkpIDUw
cHgiKTsKKyAgICB0ZXN0R3JpZFRlbXBsYXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZ3JpZFRocmVlQ29sdW1ucyIpLCAiKGEpIDIwMHB4IChiKSAxNTBweCAxMDBweCIsICIoeCkg
NTBweCAoeSkgNTBweCIpOworICAgIHRlc3RHcmlkVGVtcGxhdGVzVmFsdWVzKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJncmlkRm91ckNvbHVtbnMiKSwgIihhKSAyMDBweCAoYikgMTUwcHggMTAw
cHggNTBweCIsICIoeCkgNTBweCAoeSkiKTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252084</attachid>
            <date>2015-04-30 13:38:08 -0700</date>
            <delta_ts>2015-05-03 22:28:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-144449-20150430223656.patch</filename>
            <type>text/plain</type>
            <size>10675</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgzNjQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTViZjA0ZDQxODYyYWVm
MTE0ZTI1ZTZhZTEwMjEzZmYwZDk1NWY3NC4uNWEyMDFmNGY2ZWFmZTUwNjFlMzkwZDIxYTMwMDJh
ZDJlZmFkNWVkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE1LTA0LTMwICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtDU1MgR3Jp
ZCBMYXlvdXRdIFdyb25nIGNvbXB1dGVkIHN0eWxlIGZvciBuYW1lZCBncmlkIGxpbmVzIGluIGlt
cGxpY2l0IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ0NDQ5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgSWYgdGhlcmUncmUgaW1wbGljaXQgdHJhY2tzIHRyYWNrUG9zaXRpb25zIGlzIGJpZ2dl
ciB0aGFuIHRyYWNrU2l6ZXMsIHNvCisgICAgICAgIHdlIG5lZWQgdG8gdXNlIHRoZSBwcm9wZXIg
aW5kZXggdG8gYXBwZW5kIHRoZSB0cmFpbGluZyBzdHJpbmdzIGluCisgICAgICAgIHZhbHVlRm9y
R3JpZFRyYWNrTGlzdCgpLgorCisgICAgICAgIFRlc3Q6IGZhc3QvY3NzLWdyaWQtbGF5b3V0L25h
bWVkLWdyaWQtbGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLmh0bWwKKworICAg
ICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6dmFsdWVGb3JHcmlkVHJhY2tMaXN0KToKKwogMjAxNS0wNC0zMCAgQnJlbnQgRnVsZ2hh
bSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2luXSBBbGxvdyBXZWJLaXQgdG8g
YnVpbGQgd2l0aG91dCBBTkdMRSBzdXBwb3J0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9D
U1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IDJmNzA1YTY0Y2QzZmMyNTAxYjBi
ZGI4YzJiZmZkYjQzNWM5YmQzNzMuLmYwZTIxNzllM2U5Zjc1NjFmMmY3NmE2Y2Q1N2M5ZWEyNTYz
M2JiN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVj
bGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVj
bGFyYXRpb24uY3BwCkBAIC0xMDUzLDI1ICsxMDUzLDI2IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+
IHZhbHVlRm9yR3JpZFRyYWNrTGlzdChHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZWN0aW9u
LCBSCiAgICAgfQogCiAgICAgYXV0byBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNl
cGFyYXRlZCgpOworICAgIHVuc2lnbmVkIGkgPSAwOwogICAgIGlmIChpc1JlbmRlckdyaWQpIHsK
ICAgICAgICAgY29uc3QgVmVjdG9yPExheW91dFVuaXQ+JiB0cmFja1Bvc2l0aW9ucyA9IGRpcmVj
dGlvbiA9PSBGb3JDb2x1bW5zID8gZG93bmNhc3Q8UmVuZGVyR3JpZD4oKnJlbmRlcmVyKS5jb2x1
bW5Qb3NpdGlvbnMoKSA6IGRvd25jYXN0PFJlbmRlckdyaWQ+KCpyZW5kZXJlcikucm93UG9zaXRp
b25zKCk7CiAgICAgICAgIC8vIFRoZXJlIGFyZSBhdCBsZWFzdCAjdHJhY2tzICsgMSBncmlkIGxp
bmVzICh0cmFja1Bvc2l0aW9ucykuIEFwYXJ0IGZyb20gdGhhdCwgdGhlIGdyaWQgY29udGFpbmVy
IGNhbiBnZW5lcmF0ZSBpbXBsaWNpdCBncmlkIHRyYWNrcywKICAgICAgICAgLy8gc28gd2UnbGwg
aGF2ZSBtb3JlIHRyYWNrUG9zaXRpb25zIHRoYW4gdHJhY2tTaXplcyBhcyB0aGUgbGF0dGVyIG9u
bHkgY29udGFpbiB0aGUgZXhwbGljaXQgZ3JpZC4KICAgICAgICAgQVNTRVJUKHRyYWNrUG9zaXRp
b25zLnNpemUoKSAtIDEgPj0gdHJhY2tTaXplcy5zaXplKCkpOwogCi0gICAgICAgIGZvciAodW5z
aWduZWQgaSA9IDA7IGkgPCB0cmFja1Bvc2l0aW9ucy5zaXplKCkgLSAxOyArK2kpIHsKKyAgICAg
ICAgZm9yICg7IGkgPCB0cmFja1Bvc2l0aW9ucy5zaXplKCkgLSAxOyArK2kpIHsKICAgICAgICAg
ICAgIGFkZFZhbHVlc0Zvck5hbWVkR3JpZExpbmVzQXRJbmRleChvcmRlcmVkTmFtZWRHcmlkTGlu
ZXMsIGksIGxpc3QuZ2V0KCkpOwogICAgICAgICAgICAgbGlzdC5nZXQoKS5hcHBlbmQoem9vbUFk
anVzdGVkUGl4ZWxWYWx1ZSh0cmFja1Bvc2l0aW9uc1tpICsgMV0gLSB0cmFja1Bvc2l0aW9uc1tp
XSwgc3R5bGUpKTsKICAgICAgICAgfQogICAgIH0gZWxzZSB7Ci0gICAgICAgIGZvciAodW5zaWdu
ZWQgaSA9IDA7IGkgPCB0cmFja1NpemVzLnNpemUoKTsgKytpKSB7CisgICAgICAgIGZvciAoOyBp
IDwgdHJhY2tTaXplcy5zaXplKCk7ICsraSkgewogICAgICAgICAgICAgYWRkVmFsdWVzRm9yTmFt
ZWRHcmlkTGluZXNBdEluZGV4KG9yZGVyZWROYW1lZEdyaWRMaW5lcywgaSwgbGlzdC5nZXQoKSk7
CiAgICAgICAgICAgICBsaXN0LmdldCgpLmFwcGVuZChzcGVjaWZpZWRWYWx1ZUZvckdyaWRUcmFj
a1NpemUodHJhY2tTaXplc1tpXSwgc3R5bGUpKTsKICAgICAgICAgfQogICAgIH0KIAogICAgIC8v
IFRob3NlIGFyZSB0aGUgdHJhaWxpbmcgPGlkZW50PiogYWxsb3dlZCBpbiB0aGUgc3ludGF4Lgot
ICAgIGFkZFZhbHVlc0Zvck5hbWVkR3JpZExpbmVzQXRJbmRleChvcmRlcmVkTmFtZWRHcmlkTGlu
ZXMsIHRyYWNrU2l6ZXMuc2l6ZSgpLCBsaXN0LmdldCgpKTsKKyAgICBhZGRWYWx1ZXNGb3JOYW1l
ZEdyaWRMaW5lc0F0SW5kZXgob3JkZXJlZE5hbWVkR3JpZExpbmVzLCBpLCBsaXN0LmdldCgpKTsK
ICAgICByZXR1cm4gV1RGOjptb3ZlKGxpc3QpOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZDBjMTg1YTA5MTNhYjMx
MDI3YWFhZDFkNmYxY2VlZDQzZWZhYmRmZi4uOWJiOTA5MTFkNWZjZTUyYWI2ZDU2NDFmMjEzMWJl
YjYyOGU5ZDI5MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDE1LTA0LTMwICBNYW51ZWwgUmVn
byBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtDU1MgR3JpZCBMYXlv
dXRdIFdyb25nIGNvbXB1dGVkIHN0eWxlIGZvciBuYW1lZCBncmlkIGxpbmVzIGluIGltcGxpY2l0
IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ0NDQ5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
KiBmYXN0L2Nzcy1ncmlkLWxheW91dC9uYW1lZC1ncmlkLWxpbmVzLWNvbXB1dGVkLXN0eWxlLWlt
cGxpY2l0LXRyYWNrcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdy
aWQtbGF5b3V0L25hbWVkLWdyaWQtbGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tz
Lmh0bWw6IEFkZGVkLgorCiAyMDE1LTA0LTMwICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25A
aWdhbGlhLmNvbT4KIAogICAgICAgICBSZWJhc2VsaW5lIHNvbWUgZWRpdGluZyB0ZXN0cyBmb3Ig
V2ViS2l0R1RLKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQv
bmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3MtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1j
b21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1
NDI0MGE0NGU3OTRjZGVkZTM0YjY1MWZmM2E3ZmIxY2JjMWI5MjYKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9uYW1lZC1ncmlkLWxpbmVzLWNvbXB1
dGVkLXN0eWxlLWltcGxpY2l0LXRyYWNrcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1NiBAQAor
VGVzdCB0aGF0IGNvbXB1dGVkIHN0eWxlIGZvciBncmlkLXRlbXBsYXRlLWNvbHVtbnMgYW5kIGdy
aWQtdGVtcGxhdGUtcm93cyB3b3JrcyBhcyBleHBlY3RlZCB3aXRoIG5hbWVkIGdyaWQgbGluZXMg
YW5kIGltcGxpY2l0IHRyYWNrcworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFT
UyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkT25lQ29sdW1uU2luZ2xlLCAnJykuZ2V0UHJv
cGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAiKGEpIDIwMHB4
IChiKSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZE9uZUNvbHVtblNpbmdsZSwg
JycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIih4
KSA1MHB4ICh5KSA1MHB4IDUwcHggNTBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUo
Z3JpZFR3b0NvbHVtbnNTaW5nbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQt
dGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSkgMjAwcHggKGIpIDE1MHB4IgorUEFTUyB3aW5kb3cu
Z2V0Q29tcHV0ZWRTdHlsZShncmlkVHdvQ29sdW1uc1NpbmdsZSwgJycpLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIih4KSA1MHB4ICh5KSA1MHB4Igor
UEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkVGhyZWVDb2x1bW5zU2luZ2xlLCAnJyku
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAiKGEp
IDIwMHB4IChiKSAxNTBweCAxMDBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3Jp
ZFRocmVlQ29sdW1uc1NpbmdsZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10
ZW1wbGF0ZS1yb3dzJykgaXMgIih4KSA1MHB4ICh5KSA1MHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShncmlkRm91ckNvbHVtbnNTaW5nbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCct
d2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSkgMjAwcHggKGIpIDE1MHB4IDEw
MHB4IDUwcHgiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGdyaWRGb3VyQ29sdW1uc1Np
bmdsZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykg
aXMgIih4KSA1MHB4ICh5KSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZE9uZUNv
bHVtbk11bHRpcGxlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRl
LWNvbHVtbnMnKSBpcyAiKGEgYiBjKSAyMDBweCAoZCBlKSIKK1BBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUoZ3JpZE9uZUNvbHVtbk11bHRpcGxlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdl
YmtpdC1ncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiKHggeSB6KSA1MHB4ICh2IHcpIDUwcHggNTBw
eCA1MHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkVHdvQ29sdW1uc011bHRp
cGxlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMn
KSBpcyAiKGEgYiBjKSAyMDBweCAoZCBlKSAxNTBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVk
U3R5bGUoZ3JpZFR3b0NvbHVtbnNNdWx0aXBsZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIih4IHkgeikgNTBweCAodiB3KSA1MHB4IgorUEFT
UyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkVGhyZWVDb2x1bW5zTXVsdGlwbGUsICcnKS5n
ZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSBi
IGMpIDIwMHB4IChkIGUpIDE1MHB4IDEwMHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShncmlkVGhyZWVDb2x1bW5zTXVsdGlwbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWdyaWQtdGVtcGxhdGUtcm93cycpIGlzICIoeCB5IHopIDUwcHggKHYgdykgNTBweCIKK1BBU1Mg
d2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZEZvdXJDb2x1bW5zTXVsdGlwbGUsICcnKS5nZXRQ
cm9wZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSBiIGMp
IDIwMHB4IChkIGUpIDE1MHB4IDEwMHB4IDUwcHgiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKGdyaWRGb3VyQ29sdW1uc011bHRpcGxlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1ncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiKHggeSB6KSA1MHB4ICh2IHcpIgorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitYWFhYCitYWFgKK1hYCitY
CitYWFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCitY
WFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCitYWFhY
CitYWFgKK1hYCitYCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91
dC9uYW1lZC1ncmlkLWxpbmVzLWNvbXB1dGVkLXN0eWxlLWltcGxpY2l0LXRyYWNrcy5odG1sIGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRl
ZC1zdHlsZS1pbXBsaWNpdC10cmFja3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZTg0ZDU2ZjkyYmZkOTg5
OTJhM2Q0MDRhNzkxYjA5MzNhMDFjOGE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBs
aWNpdC10cmFja3MuaHRtbApAQCAtMCwwICsxLDg5IEBACis8IURPQ1RZUEUgSFRNTD4KKzxsaW5r
IGhyZWY9InJlc291cmNlcy9ncmlkLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KKzxzdHlsZT4KKy5n
cmlkIHsKKyAgICBmb250OiA1MHB4LzEgQWhlbTsKK30KKworLnNpbmdsZU5hbWVkR3JpZExpbmVz
IHsKKyAgICAtd2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1uczogKGEpIGF1dG8gKGIpOworICAg
IC13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzOiAoeCkgYXV0byAoeSk7Cit9CisKKy5tdWx0aXBs
ZU5hbWVkR3JpZExpbmVzIHsKKyAgICAtd2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1uczogKGEg
YiBjKSBhdXRvIChkIGUpOworICAgIC13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzOiAoeCB5IHop
IGF1dG8gKHYgdyk7Cit9Cis8L3N0eWxlPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LmpzIj48L3NjcmlwdD4KKworPGRpdiBjbGFzcz0iZ3JpZCBzaW5nbGVOYW1lZEdyaWRM
aW5lcyIgaWQ9ImdyaWRPbmVDb2x1bW5TaW5nbGUiPgorICAgIDxkaXY+WFhYWDwvZGl2PgorICAg
IDxkaXY+WFhYPC9kaXY+CisgICAgPGRpdj5YWDwvZGl2PgorICAgIDxkaXY+WDwvZGl2PgorPC9k
aXY+CisKKzxkaXYgY2xhc3M9ImdyaWQgc2luZ2xlTmFtZWRHcmlkTGluZXMiIGlkPSJncmlkVHdv
Q29sdW1uc1NpbmdsZSI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YWFhY
PC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YWFg8L2Rpdj4KKyAg
ICA8ZGl2PlhYPC9kaXY+CisgICAgPGRpdj5YPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0i
Z3JpZCBzaW5nbGVOYW1lZEdyaWRMaW5lcyIgaWQ9ImdyaWRUaHJlZUNvbHVtbnNTaW5nbGUiPgor
ICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYWDwvZGl2PgorICAgIDxkaXYg
Y2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmly
c3RSb3dBdXRvQ29sdW1uIj5YWDwvZGl2PgorICAgIDxkaXY+WDwvZGl2PgorPC9kaXY+CisKKzxk
aXYgY2xhc3M9ImdyaWQgc2luZ2xlTmFtZWRHcmlkTGluZXMiIGlkPSJncmlkRm91ckNvbHVtbnNT
aW5nbGUiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYWDwvZGl2Pgor
ICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYPC9kaXY+CisgICAgPGRpdiBj
bGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0
Um93QXV0b0NvbHVtbiI+WDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQgbXVsdGlw
bGVOYW1lZEdyaWRMaW5lcyIgaWQ9ImdyaWRPbmVDb2x1bW5NdWx0aXBsZSI+CisgICAgPGRpdj5Y
WFhYPC9kaXY+CisgICAgPGRpdj5YWFg8L2Rpdj4KKyAgICA8ZGl2PlhYPC9kaXY+CisgICAgPGRp
dj5YPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBtdWx0aXBsZU5hbWVkR3JpZExp
bmVzIiBpZD0iZ3JpZFR3b0NvbHVtbnNNdWx0aXBsZSI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RS
b3dBdXRvQ29sdW1uIj5YWFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29s
dW1uIj5YWFg8L2Rpdj4KKyAgICA8ZGl2PlhYPC9kaXY+CisgICAgPGRpdj5YPC9kaXY+Cis8L2Rp
dj4KKworPGRpdiBjbGFzcz0iZ3JpZCBtdWx0aXBsZU5hbWVkR3JpZExpbmVzIiBpZD0iZ3JpZFRo
cmVlQ29sdW1uc011bHRpcGxlIj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4i
PlhYWFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYWDwvZGl2
PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFg8L2Rpdj4KKyAgICA8ZGl2
Plg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIG11bHRpcGxlTmFtZWRHcmlkTGlu
ZXMiIGlkPSJncmlkRm91ckNvbHVtbnNNdWx0aXBsZSI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RS
b3dBdXRvQ29sdW1uIj5YWFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29s
dW1uIj5YWFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYPC9k
aXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YPC9kaXY+Cis8L2Rpdj4K
KworPHNjcmlwdCBzcmM9InJlc291cmNlcy9ncmlkLWRlZmluaXRpb25zLXBhcnNpbmctdXRpbHMu
anMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbignVGVzdCB0aGF0IGNvbXB1
dGVkIHN0eWxlIGZvciBncmlkLXRlbXBsYXRlLWNvbHVtbnMgYW5kIGdyaWQtdGVtcGxhdGUtcm93
cyB3b3JrcyBhcyBleHBlY3RlZCB3aXRoIG5hbWVkIGdyaWQgbGluZXMgYW5kIGltcGxpY2l0IHRy
YWNrcycpOworCisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImdyaWRPbmVDb2x1bW5TaW5nbGUiKSwgIihhKSAyMDBweCAoYikiLCAiKHgpIDUwcHgg
KHkpIDUwcHggNTBweCA1MHB4Iik7CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImdyaWRUd29Db2x1bW5zU2luZ2xlIiksICIoYSkgMjAwcHggKGIp
IDE1MHB4IiwgIih4KSA1MHB4ICh5KSA1MHB4Iik7CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1
ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImdyaWRUaHJlZUNvbHVtbnNTaW5nbGUiKSwgIihh
KSAyMDBweCAoYikgMTUwcHggMTAwcHgiLCAiKHgpIDUwcHggKHkpIDUwcHgiKTsKKyAgICB0ZXN0
R3JpZFRlbXBsYXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3JpZEZvdXJDb2x1
bW5zU2luZ2xlIiksICIoYSkgMjAwcHggKGIpIDE1MHB4IDEwMHB4IDUwcHgiLCAiKHgpIDUwcHgg
KHkpIik7CisKKyAgICB0ZXN0R3JpZFRlbXBsYXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiZ3JpZE9uZUNvbHVtbk11bHRpcGxlIiksICIoYSBiIGMpIDIwMHB4IChkIGUpIiwgIih4
IHkgeikgNTBweCAodiB3KSA1MHB4IDUwcHggNTBweCIpOworICAgIHRlc3RHcmlkVGVtcGxhdGVz
VmFsdWVzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmlkVHdvQ29sdW1uc011bHRpcGxlIiks
ICIoYSBiIGMpIDIwMHB4IChkIGUpIDE1MHB4IiwgIih4IHkgeikgNTBweCAodiB3KSA1MHB4Iik7
CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImdy
aWRUaHJlZUNvbHVtbnNNdWx0aXBsZSIpLCAiKGEgYiBjKSAyMDBweCAoZCBlKSAxNTBweCAxMDBw
eCIsICIoeCB5IHopIDUwcHggKHYgdykgNTBweCIpOworICAgIHRlc3RHcmlkVGVtcGxhdGVzVmFs
dWVzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmlkRm91ckNvbHVtbnNNdWx0aXBsZSIpLCAi
KGEgYiBjKSAyMDBweCAoZCBlKSAxNTBweCAxMDBweCA1MHB4IiwgIih4IHkgeikgNTBweCAodiB3
KSIpOworPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252298</attachid>
            <date>2015-05-03 22:28:41 -0700</date>
            <delta_ts>2015-05-04 00:47:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-144449-20150504072727.patch</filename>
            <type>text/plain</type>
            <size>10552</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgzNzM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjZmOTk3YmFjZjUwMWMw
YjgwNjVhMTM4Mjg5ODgwNWJkYzUwMmY2NC4uM2E2MzRlODZkZTdkN2Q5MmZhYWUzNjc4ODcyNjYx
YTliZTM5ZTNhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE1LTA0LTMwICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtDU1MgR3Jp
ZCBMYXlvdXRdIFdyb25nIGNvbXB1dGVkIHN0eWxlIGZvciBuYW1lZCBncmlkIGxpbmVzIGluIGlt
cGxpY2l0IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ0NDQ5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgSWYgdGhlcmUncmUgaW1wbGljaXQgdHJhY2tzIHRyYWNrUG9zaXRpb25zIGlzIGJpZ2dl
ciB0aGFuIHRyYWNrU2l6ZXMsIHNvCisgICAgICAgIHdlIG5lZWQgdG8gdXNlIHRoZSBwcm9wZXIg
aW5kZXggdG8gYXBwZW5kIHRoZSB0cmFpbGluZyBzdHJpbmdzIGluCisgICAgICAgIHZhbHVlRm9y
R3JpZFRyYWNrTGlzdCgpLgorCisgICAgICAgIFRlc3Q6IGZhc3QvY3NzLWdyaWQtbGF5b3V0L25h
bWVkLWdyaWQtbGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLmh0bWwKKworICAg
ICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6dmFsdWVGb3JHcmlkVHJhY2tMaXN0KToKKwogMjAxNS0wNS0wMyAgR3l1eW91bmcgS2lt
ICA8Z3l1eW91bmcua2ltQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUHVyZ2UgUGFzc1JlZlB0ciBp
biBXZWJDb3JlL2h0bWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRl
ZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5
bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggMmY3MDVhNjRjZDNmYzI1MDFiMGJkYjhjMmJmZmRiNDM1
YzliZDM3My4uMmY4YjFhYWNjOTBhNDM5ZDcwMDA4M2E3Y2EwYmI3ODA3YWQ1YmEyNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAK
QEAgLTEwNTMsNiArMTA1Myw3IEBAIHN0YXRpYyBSZWY8Q1NTVmFsdWU+IHZhbHVlRm9yR3JpZFRy
YWNrTGlzdChHcmlkVHJhY2tTaXppbmdEaXJlY3Rpb24gZGlyZWN0aW9uLCBSCiAgICAgfQogCiAg
ICAgYXV0byBsaXN0ID0gQ1NTVmFsdWVMaXN0OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOworICAg
IHVuc2lnbmVkIGluc2VydGlvbkluZGV4OwogICAgIGlmIChpc1JlbmRlckdyaWQpIHsKICAgICAg
ICAgY29uc3QgVmVjdG9yPExheW91dFVuaXQ+JiB0cmFja1Bvc2l0aW9ucyA9IGRpcmVjdGlvbiA9
PSBGb3JDb2x1bW5zID8gZG93bmNhc3Q8UmVuZGVyR3JpZD4oKnJlbmRlcmVyKS5jb2x1bW5Qb3Np
dGlvbnMoKSA6IGRvd25jYXN0PFJlbmRlckdyaWQ+KCpyZW5kZXJlcikucm93UG9zaXRpb25zKCk7
CiAgICAgICAgIC8vIFRoZXJlIGFyZSBhdCBsZWFzdCAjdHJhY2tzICsgMSBncmlkIGxpbmVzICh0
cmFja1Bvc2l0aW9ucykuIEFwYXJ0IGZyb20gdGhhdCwgdGhlIGdyaWQgY29udGFpbmVyIGNhbiBn
ZW5lcmF0ZSBpbXBsaWNpdCBncmlkIHRyYWNrcywKQEAgLTEwNjMsMTUgKzEwNjQsMTcgQEAgc3Rh
dGljIFJlZjxDU1NWYWx1ZT4gdmFsdWVGb3JHcmlkVHJhY2tMaXN0KEdyaWRUcmFja1NpemluZ0Rp
cmVjdGlvbiBkaXJlY3Rpb24sIFIKICAgICAgICAgICAgIGFkZFZhbHVlc0Zvck5hbWVkR3JpZExp
bmVzQXRJbmRleChvcmRlcmVkTmFtZWRHcmlkTGluZXMsIGksIGxpc3QuZ2V0KCkpOwogICAgICAg
ICAgICAgbGlzdC5nZXQoKS5hcHBlbmQoem9vbUFkanVzdGVkUGl4ZWxWYWx1ZSh0cmFja1Bvc2l0
aW9uc1tpICsgMV0gLSB0cmFja1Bvc2l0aW9uc1tpXSwgc3R5bGUpKTsKICAgICAgICAgfQorICAg
ICAgICBpbnNlcnRpb25JbmRleCA9IHRyYWNrUG9zaXRpb25zLnNpemUoKSAtIDE7CiAgICAgfSBl
bHNlIHsKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHRyYWNrU2l6ZXMuc2l6ZSgp
OyArK2kpIHsKICAgICAgICAgICAgIGFkZFZhbHVlc0Zvck5hbWVkR3JpZExpbmVzQXRJbmRleChv
cmRlcmVkTmFtZWRHcmlkTGluZXMsIGksIGxpc3QuZ2V0KCkpOwogICAgICAgICAgICAgbGlzdC5n
ZXQoKS5hcHBlbmQoc3BlY2lmaWVkVmFsdWVGb3JHcmlkVHJhY2tTaXplKHRyYWNrU2l6ZXNbaV0s
IHN0eWxlKSk7CiAgICAgICAgIH0KKyAgICAgICAgaW5zZXJ0aW9uSW5kZXggPSB0cmFja1NpemVz
LnNpemUoKTsKICAgICB9CiAKICAgICAvLyBUaG9zZSBhcmUgdGhlIHRyYWlsaW5nIDxpZGVudD4q
IGFsbG93ZWQgaW4gdGhlIHN5bnRheC4KLSAgICBhZGRWYWx1ZXNGb3JOYW1lZEdyaWRMaW5lc0F0
SW5kZXgob3JkZXJlZE5hbWVkR3JpZExpbmVzLCB0cmFja1NpemVzLnNpemUoKSwgbGlzdC5nZXQo
KSk7CisgICAgYWRkVmFsdWVzRm9yTmFtZWRHcmlkTGluZXNBdEluZGV4KG9yZGVyZWROYW1lZEdy
aWRMaW5lcywgaW5zZXJ0aW9uSW5kZXgsIGxpc3QuZ2V0KCkpOwogICAgIHJldHVybiBXVEY6Om1v
dmUobGlzdCk7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCAyODA3OTJhNzZhNjA5NmY4NmY5NzFhNDliMWMyZDQ5ZDUx
Yjg4Mjc1Li41YjkzYmZhNjBlNzlhNzA3MjIyMzljNzg1NjUwNjU4YmVhZmM1YTA2IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMTUtMDQtMzAgIE1hbnVlbCBSZWdvIENhc2Fzbm92YXMgIDxyZWdv
QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0NTUyBHcmlkIExheW91dF0gV3JvbmcgY29tcHV0ZWQg
c3R5bGUgZm9yIG5hbWVkIGdyaWQgbGluZXMgaW4gaW1wbGljaXQgdHJhY2tzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDQ0NDkKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5
b3V0L25hbWVkLWdyaWQtbGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3Jp
ZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3MuaHRtbDogQWRkZWQuCisKIDIw
MTUtMDUtMDIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAg
ICAgQXNzZXJ0aW9uIGZhaWx1cmUgKCFuZWVkc0xheW91dCgpKSBsb2FkaW5nIGlua2VkbWFnLmNv
bQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3Jp
ZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3MtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1z
dHlsZS1pbXBsaWNpdC10cmFja3MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1NDI0MGE0NGU3
OTRjZGVkZTM0YjY1MWZmM2E3ZmIxY2JjMWI5MjYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9uYW1lZC1ncmlkLWxpbmVzLWNvbXB1dGVkLXN0eWxl
LWltcGxpY2l0LXRyYWNrcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw1NiBAQAorVGVzdCB0aGF0
IGNvbXB1dGVkIHN0eWxlIGZvciBncmlkLXRlbXBsYXRlLWNvbHVtbnMgYW5kIGdyaWQtdGVtcGxh
dGUtcm93cyB3b3JrcyBhcyBleHBlY3RlZCB3aXRoIG5hbWVkIGdyaWQgbGluZXMgYW5kIGltcGxp
Y2l0IHRyYWNrcworCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyB3aW5kb3cu
Z2V0Q29tcHV0ZWRTdHlsZShncmlkT25lQ29sdW1uU2luZ2xlLCAnJykuZ2V0UHJvcGVydHlWYWx1
ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAiKGEpIDIwMHB4IChiKSIKK1BB
U1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZE9uZUNvbHVtblNpbmdsZSwgJycpLmdldFBy
b3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIih4KSA1MHB4ICh5
KSA1MHB4IDUwcHggNTBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZFR3b0Nv
bHVtbnNTaW5nbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUt
Y29sdW1ucycpIGlzICIoYSkgMjAwcHggKGIpIDE1MHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0
ZWRTdHlsZShncmlkVHdvQ29sdW1uc1NpbmdsZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJr
aXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIih4KSA1MHB4ICh5KSA1MHB4IgorUEFTUyB3aW5k
b3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkVGhyZWVDb2x1bW5zU2luZ2xlLCAnJykuZ2V0UHJvcGVy
dHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAiKGEpIDIwMHB4IChi
KSAxNTBweCAxMDBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZFRocmVlQ29s
dW1uc1NpbmdsZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1y
b3dzJykgaXMgIih4KSA1MHB4ICh5KSA1MHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHls
ZShncmlkRm91ckNvbHVtbnNTaW5nbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWdy
aWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSkgMjAwcHggKGIpIDE1MHB4IDEwMHB4IDUwcHgi
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGdyaWRGb3VyQ29sdW1uc1NpbmdsZSwgJycp
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIih4KSA1
MHB4ICh5KSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZE9uZUNvbHVtbk11bHRp
cGxlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMn
KSBpcyAiKGEgYiBjKSAyMDBweCAoZCBlKSIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUo
Z3JpZE9uZUNvbHVtbk11bHRpcGxlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlk
LXRlbXBsYXRlLXJvd3MnKSBpcyAiKHggeSB6KSA1MHB4ICh2IHcpIDUwcHggNTBweCA1MHB4Igor
UEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkVHdvQ29sdW1uc011bHRpcGxlLCAnJyku
Z2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAiKGEg
YiBjKSAyMDBweCAoZCBlKSAxNTBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3Jp
ZFR3b0NvbHVtbnNNdWx0aXBsZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10
ZW1wbGF0ZS1yb3dzJykgaXMgIih4IHkgeikgNTBweCAodiB3KSA1MHB4IgorUEFTUyB3aW5kb3cu
Z2V0Q29tcHV0ZWRTdHlsZShncmlkVGhyZWVDb2x1bW5zTXVsdGlwbGUsICcnKS5nZXRQcm9wZXJ0
eVZhbHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSBiIGMpIDIwMHB4
IChkIGUpIDE1MHB4IDEwMHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkVGhy
ZWVDb2x1bW5zTXVsdGlwbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQtdGVt
cGxhdGUtcm93cycpIGlzICIoeCB5IHopIDUwcHggKHYgdykgNTBweCIKK1BBU1Mgd2luZG93Lmdl
dENvbXB1dGVkU3R5bGUoZ3JpZEZvdXJDb2x1bW5zTXVsdGlwbGUsICcnKS5nZXRQcm9wZXJ0eVZh
bHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1ucycpIGlzICIoYSBiIGMpIDIwMHB4IChk
IGUpIDE1MHB4IDEwMHB4IDUwcHgiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGdyaWRG
b3VyQ29sdW1uc011bHRpcGxlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRl
bXBsYXRlLXJvd3MnKSBpcyAiKHggeSB6KSA1MHB4ICh2IHcpIgorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitY
WFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgK
K1hYCitYCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgKK1hYCitYCitYWFhYCitYWFgKK1hY
CitYCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9uYW1lZC1n
cmlkLWxpbmVzLWNvbXB1dGVkLXN0eWxlLWltcGxpY2l0LXRyYWNrcy5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHlsZS1p
bXBsaWNpdC10cmFja3MuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZTg0ZDU2ZjkyYmZkOTg5OTJhM2Q0MDRh
NzkxYjA5MzNhMDFjOGE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3Mt
Z3JpZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFj
a3MuaHRtbApAQCAtMCwwICsxLDg5IEBACis8IURPQ1RZUEUgSFRNTD4KKzxsaW5rIGhyZWY9InJl
c291cmNlcy9ncmlkLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KKzxzdHlsZT4KKy5ncmlkIHsKKyAg
ICBmb250OiA1MHB4LzEgQWhlbTsKK30KKworLnNpbmdsZU5hbWVkR3JpZExpbmVzIHsKKyAgICAt
d2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1uczogKGEpIGF1dG8gKGIpOworICAgIC13ZWJraXQt
Z3JpZC10ZW1wbGF0ZS1yb3dzOiAoeCkgYXV0byAoeSk7Cit9CisKKy5tdWx0aXBsZU5hbWVkR3Jp
ZExpbmVzIHsKKyAgICAtd2Via2l0LWdyaWQtdGVtcGxhdGUtY29sdW1uczogKGEgYiBjKSBhdXRv
IChkIGUpOworICAgIC13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzOiAoeCB5IHopIGF1dG8gKHYg
dyk7Cit9Cis8L3N0eWxlPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0Lmpz
Ij48L3NjcmlwdD4KKworPGRpdiBjbGFzcz0iZ3JpZCBzaW5nbGVOYW1lZEdyaWRMaW5lcyIgaWQ9
ImdyaWRPbmVDb2x1bW5TaW5nbGUiPgorICAgIDxkaXY+WFhYWDwvZGl2PgorICAgIDxkaXY+WFhY
PC9kaXY+CisgICAgPGRpdj5YWDwvZGl2PgorICAgIDxkaXY+WDwvZGl2PgorPC9kaXY+CisKKzxk
aXYgY2xhc3M9ImdyaWQgc2luZ2xlTmFtZWRHcmlkTGluZXMiIGlkPSJncmlkVHdvQ29sdW1uc1Np
bmdsZSI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YWFhYPC9kaXY+Cisg
ICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YWFg8L2Rpdj4KKyAgICA8ZGl2PlhY
PC9kaXY+CisgICAgPGRpdj5YPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBzaW5n
bGVOYW1lZEdyaWRMaW5lcyIgaWQ9ImdyaWRUaHJlZUNvbHVtbnNTaW5nbGUiPgorICAgIDxkaXYg
Y2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZp
cnN0Um93QXV0b0NvbHVtbiI+WFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRv
Q29sdW1uIj5YWDwvZGl2PgorICAgIDxkaXY+WDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9
ImdyaWQgc2luZ2xlTmFtZWRHcmlkTGluZXMiIGlkPSJncmlkRm91ckNvbHVtbnNTaW5nbGUiPgor
ICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYWDwvZGl2PgorICAgIDxkaXYg
Y2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmly
c3RSb3dBdXRvQ29sdW1uIj5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0Nv
bHVtbiI+WDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQgbXVsdGlwbGVOYW1lZEdy
aWRMaW5lcyIgaWQ9ImdyaWRPbmVDb2x1bW5NdWx0aXBsZSI+CisgICAgPGRpdj5YWFhYPC9kaXY+
CisgICAgPGRpdj5YWFg8L2Rpdj4KKyAgICA8ZGl2PlhYPC9kaXY+CisgICAgPGRpdj5YPC9kaXY+
Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBtdWx0aXBsZU5hbWVkR3JpZExpbmVzIiBpZD0i
Z3JpZFR3b0NvbHVtbnNNdWx0aXBsZSI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29s
dW1uIj5YWFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YWFg8
L2Rpdj4KKyAgICA8ZGl2PlhYPC9kaXY+CisgICAgPGRpdj5YPC9kaXY+Cis8L2Rpdj4KKworPGRp
diBjbGFzcz0iZ3JpZCBtdWx0aXBsZU5hbWVkR3JpZExpbmVzIiBpZD0iZ3JpZFRocmVlQ29sdW1u
c011bHRpcGxlIj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYWFg8L2Rp
dj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYWDwvZGl2PgorICAgIDxk
aXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFg8L2Rpdj4KKyAgICA8ZGl2Plg8L2Rpdj4K
KzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIG11bHRpcGxlTmFtZWRHcmlkTGluZXMiIGlkPSJn
cmlkRm91ckNvbHVtbnNNdWx0aXBsZSI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29s
dW1uIj5YWFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YWFg8
L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYPC9kaXY+CisgICAg
PGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5YPC9kaXY+Cis8L2Rpdj4KKworPHNjcmlw
dCBzcmM9InJlc291cmNlcy9ncmlkLWRlZmluaXRpb25zLXBhcnNpbmctdXRpbHMuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdD4KKyAgICBkZXNjcmlwdGlvbignVGVzdCB0aGF0IGNvbXB1dGVkIHN0eWxl
IGZvciBncmlkLXRlbXBsYXRlLWNvbHVtbnMgYW5kIGdyaWQtdGVtcGxhdGUtcm93cyB3b3JrcyBh
cyBleHBlY3RlZCB3aXRoIG5hbWVkIGdyaWQgbGluZXMgYW5kIGltcGxpY2l0IHRyYWNrcycpOwor
CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImdy
aWRPbmVDb2x1bW5TaW5nbGUiKSwgIihhKSAyMDBweCAoYikiLCAiKHgpIDUwcHggKHkpIDUwcHgg
NTBweCA1MHB4Iik7CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImdyaWRUd29Db2x1bW5zU2luZ2xlIiksICIoYSkgMjAwcHggKGIpIDE1MHB4Iiwg
Iih4KSA1MHB4ICh5KSA1MHB4Iik7CisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoImdyaWRUaHJlZUNvbHVtbnNTaW5nbGUiKSwgIihhKSAyMDBweCAo
YikgMTUwcHggMTAwcHgiLCAiKHgpIDUwcHggKHkpIDUwcHgiKTsKKyAgICB0ZXN0R3JpZFRlbXBs
YXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3JpZEZvdXJDb2x1bW5zU2luZ2xl
IiksICIoYSkgMjAwcHggKGIpIDE1MHB4IDEwMHB4IDUwcHgiLCAiKHgpIDUwcHggKHkpIik7CisK
KyAgICB0ZXN0R3JpZFRlbXBsYXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3Jp
ZE9uZUNvbHVtbk11bHRpcGxlIiksICIoYSBiIGMpIDIwMHB4IChkIGUpIiwgIih4IHkgeikgNTBw
eCAodiB3KSA1MHB4IDUwcHggNTBweCIpOworICAgIHRlc3RHcmlkVGVtcGxhdGVzVmFsdWVzKGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmlkVHdvQ29sdW1uc011bHRpcGxlIiksICIoYSBiIGMp
IDIwMHB4IChkIGUpIDE1MHB4IiwgIih4IHkgeikgNTBweCAodiB3KSA1MHB4Iik7CisgICAgdGVz
dEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImdyaWRUaHJlZUNv
bHVtbnNNdWx0aXBsZSIpLCAiKGEgYiBjKSAyMDBweCAoZCBlKSAxNTBweCAxMDBweCIsICIoeCB5
IHopIDUwcHggKHYgdykgNTBweCIpOworICAgIHRlc3RHcmlkVGVtcGxhdGVzVmFsdWVzKGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJncmlkRm91ckNvbHVtbnNNdWx0aXBsZSIpLCAiKGEgYiBjKSAy
MDBweCAoZCBlKSAxNTBweCAxMDBweCA1MHB4IiwgIih4IHkgeikgNTBweCAodiB3KSIpOworPC9z
Y3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>252300</attachid>
            <date>2015-05-04 00:48:00 -0700</date>
            <delta_ts>2015-05-04 01:38:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-144449-20150504094645.patch</filename>
            <type>text/plain</type>
            <size>10568</size>
            <attacher name="Manuel Rego Casasnovas">rego</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgzNzM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjZmOTk3YmFjZjUwMWMw
YjgwNjVhMTM4Mjg5ODgwNWJkYzUwMmY2NC4uMmU1OWUyNjA3YTVjNTIyNTUwYjZlNDc3NTQ5MGJj
MWYyZTdjYWE1NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE1LTA0LTMwICBNYW51
ZWwgUmVnbyBDYXNhc25vdmFzICA8cmVnb0BpZ2FsaWEuY29tPgorCisgICAgICAgIFtDU1MgR3Jp
ZCBMYXlvdXRdIFdyb25nIGNvbXB1dGVkIHN0eWxlIGZvciBuYW1lZCBncmlkIGxpbmVzIGluIGlt
cGxpY2l0IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ0NDQ5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2VyZ2lvIFZpbGxhciBTZW5pbi4K
KworICAgICAgICBJZiB0aGVyZSdyZSBpbXBsaWNpdCB0cmFja3MgdGhlbiB0cmFja1Bvc2l0aW9u
cyBpcyBiaWdnZXIgdGhhbgorICAgICAgICB0cmFja1NpemVzLCBzbyB3ZSBuZWVkIHRvIHVzZSB0
aGUgcHJvcGVyIGluZGV4IHRvIGFwcGVuZCB0aGUgdHJhaWxpbmcKKyAgICAgICAgPGlkZW50PnMg
aW4gdmFsdWVGb3JHcmlkVHJhY2tMaXN0KCkuCisKKyAgICAgICAgVGVzdDogZmFzdC9jc3MtZ3Jp
ZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3Mu
aHRtbAorCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjp2YWx1ZUZvckdyaWRUcmFja0xpc3QpOgorCiAyMDE1LTA1LTAzICBH
eXV5b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBQdXJnZSBQ
YXNzUmVmUHRyIGluIFdlYkNvcmUvaHRtbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
Q29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCAyZjcwNWE2NGNkM2ZjMjUwMWIwYmRi
OGMyYmZmZGI0MzVjOWJkMzczLi4yZjhiMWFhY2M5MGE0MzlkNzAwMDgzYTdjYTBiYjc4MDdhZDVi
YTI1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xh
cmF0aW9uLmNwcApAQCAtMTA1Myw2ICsxMDUzLDcgQEAgc3RhdGljIFJlZjxDU1NWYWx1ZT4gdmFs
dWVGb3JHcmlkVHJhY2tMaXN0KEdyaWRUcmFja1NpemluZ0RpcmVjdGlvbiBkaXJlY3Rpb24sIFIK
ICAgICB9CiAKICAgICBhdXRvIGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJh
dGVkKCk7CisgICAgdW5zaWduZWQgaW5zZXJ0aW9uSW5kZXg7CiAgICAgaWYgKGlzUmVuZGVyR3Jp
ZCkgewogICAgICAgICBjb25zdCBWZWN0b3I8TGF5b3V0VW5pdD4mIHRyYWNrUG9zaXRpb25zID0g
ZGlyZWN0aW9uID09IEZvckNvbHVtbnMgPyBkb3duY2FzdDxSZW5kZXJHcmlkPigqcmVuZGVyZXIp
LmNvbHVtblBvc2l0aW9ucygpIDogZG93bmNhc3Q8UmVuZGVyR3JpZD4oKnJlbmRlcmVyKS5yb3dQ
b3NpdGlvbnMoKTsKICAgICAgICAgLy8gVGhlcmUgYXJlIGF0IGxlYXN0ICN0cmFja3MgKyAxIGdy
aWQgbGluZXMgKHRyYWNrUG9zaXRpb25zKS4gQXBhcnQgZnJvbSB0aGF0LCB0aGUgZ3JpZCBjb250
YWluZXIgY2FuIGdlbmVyYXRlIGltcGxpY2l0IGdyaWQgdHJhY2tzLApAQCAtMTA2MywxNSArMTA2
NCwxNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVlPiB2YWx1ZUZvckdyaWRUcmFja0xpc3QoR3JpZFRy
YWNrU2l6aW5nRGlyZWN0aW9uIGRpcmVjdGlvbiwgUgogICAgICAgICAgICAgYWRkVmFsdWVzRm9y
TmFtZWRHcmlkTGluZXNBdEluZGV4KG9yZGVyZWROYW1lZEdyaWRMaW5lcywgaSwgbGlzdC5nZXQo
KSk7CiAgICAgICAgICAgICBsaXN0LmdldCgpLmFwcGVuZCh6b29tQWRqdXN0ZWRQaXhlbFZhbHVl
KHRyYWNrUG9zaXRpb25zW2kgKyAxXSAtIHRyYWNrUG9zaXRpb25zW2ldLCBzdHlsZSkpOwogICAg
ICAgICB9CisgICAgICAgIGluc2VydGlvbkluZGV4ID0gdHJhY2tQb3NpdGlvbnMuc2l6ZSgpIC0g
MTsKICAgICB9IGVsc2UgewogICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgdHJhY2tT
aXplcy5zaXplKCk7ICsraSkgewogICAgICAgICAgICAgYWRkVmFsdWVzRm9yTmFtZWRHcmlkTGlu
ZXNBdEluZGV4KG9yZGVyZWROYW1lZEdyaWRMaW5lcywgaSwgbGlzdC5nZXQoKSk7CiAgICAgICAg
ICAgICBsaXN0LmdldCgpLmFwcGVuZChzcGVjaWZpZWRWYWx1ZUZvckdyaWRUcmFja1NpemUodHJh
Y2tTaXplc1tpXSwgc3R5bGUpKTsKICAgICAgICAgfQorICAgICAgICBpbnNlcnRpb25JbmRleCA9
IHRyYWNrU2l6ZXMuc2l6ZSgpOwogICAgIH0KIAogICAgIC8vIFRob3NlIGFyZSB0aGUgdHJhaWxp
bmcgPGlkZW50PiogYWxsb3dlZCBpbiB0aGUgc3ludGF4LgotICAgIGFkZFZhbHVlc0Zvck5hbWVk
R3JpZExpbmVzQXRJbmRleChvcmRlcmVkTmFtZWRHcmlkTGluZXMsIHRyYWNrU2l6ZXMuc2l6ZSgp
LCBsaXN0LmdldCgpKTsKKyAgICBhZGRWYWx1ZXNGb3JOYW1lZEdyaWRMaW5lc0F0SW5kZXgob3Jk
ZXJlZE5hbWVkR3JpZExpbmVzLCBpbnNlcnRpb25JbmRleCwgbGlzdC5nZXQoKSk7CiAgICAgcmV0
dXJuIFdURjo6bW92ZShsaXN0KTsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDI4MDc5MmE3NmE2MDk2Zjg2Zjk3MWE0
OWIxYzJkNDlkNTFiODgyNzUuLmQ4OGY0MDgyYjMzNGNhNjUzZTMwYjgwN2U5ZTZmODEzZTQ4NmRm
YmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxNS0wNC0zMCAgTWFudWVsIFJlZ28gQ2FzYXNu
b3ZhcyAgPHJlZ29AaWdhbGlhLmNvbT4KKworICAgICAgICBbQ1NTIEdyaWQgTGF5b3V0XSBXcm9u
ZyBjb21wdXRlZCBzdHlsZSBmb3IgbmFtZWQgZ3JpZCBsaW5lcyBpbiBpbXBsaWNpdCB0cmFja3MK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDQ0OQor
CisgICAgICAgIFJldmlld2VkIGJ5IFNlcmdpbyBWaWxsYXIgU2VuaW4uCisKKyAgICAgICAgKiBm
YXN0L2Nzcy1ncmlkLWxheW91dC9uYW1lZC1ncmlkLWxpbmVzLWNvbXB1dGVkLXN0eWxlLWltcGxp
Y2l0LXRyYWNrcy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQt
bGF5b3V0L25hbWVkLWdyaWQtbGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLmh0
bWw6IEFkZGVkLgorCiAyMDE1LTA1LTAyICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIEFzc2VydGlvbiBmYWlsdXJlICghbmVlZHNMYXlvdXQoKSkgbG9h
ZGluZyBpbmtlZG1hZy5jb20KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQt
bGF5b3V0L25hbWVkLWdyaWQtbGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L25hbWVkLWdyaWQt
bGluZXMtY29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mNTQyNDBhNDRlNzk0Y2RlZGUzNGI2NTFmZjNhN2ZiMWNiYzFiOTI2Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5l
cy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
NTYgQEAKK1Rlc3QgdGhhdCBjb21wdXRlZCBzdHlsZSBmb3IgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5z
IGFuZCBncmlkLXRlbXBsYXRlLXJvd3Mgd29ya3MgYXMgZXhwZWN0ZWQgd2l0aCBuYW1lZCBncmlk
IGxpbmVzIGFuZCBpbXBsaWNpdCB0cmFja3MKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZE9uZUNvbHVtblNpbmdsZSwgJycp
LmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykgaXMgIihh
KSAyMDBweCAoYikiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGdyaWRPbmVDb2x1bW5T
aW5nbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUtcm93cycp
IGlzICIoeCkgNTBweCAoeSkgNTBweCA1MHB4IDUwcHgiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRl
ZFN0eWxlKGdyaWRUd29Db2x1bW5zU2luZ2xlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtp
dC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAiKGEpIDIwMHB4IChiKSAxNTBweCIKK1BBU1Mg
d2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZFR3b0NvbHVtbnNTaW5nbGUsICcnKS5nZXRQcm9w
ZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUtcm93cycpIGlzICIoeCkgNTBweCAoeSkg
NTBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZFRocmVlQ29sdW1uc1Npbmds
ZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zJykg
aXMgIihhKSAyMDBweCAoYikgMTUwcHggMTAwcHgiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0
eWxlKGdyaWRUaHJlZUNvbHVtbnNTaW5nbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0
LWdyaWQtdGVtcGxhdGUtcm93cycpIGlzICIoeCkgNTBweCAoeSkgNTBweCIKK1BBU1Mgd2luZG93
LmdldENvbXB1dGVkU3R5bGUoZ3JpZEZvdXJDb2x1bW5zU2luZ2xlLCAnJykuZ2V0UHJvcGVydHlW
YWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAiKGEpIDIwMHB4IChiKSAx
NTBweCAxMDBweCA1MHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShncmlkRm91ckNv
bHVtbnNTaW5nbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCctd2Via2l0LWdyaWQtdGVtcGxhdGUt
cm93cycpIGlzICIoeCkgNTBweCAoeSkiCitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGdy
aWRPbmVDb2x1bW5NdWx0aXBsZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10
ZW1wbGF0ZS1jb2x1bW5zJykgaXMgIihhIGIgYykgMjAwcHggKGQgZSkiCitQQVNTIHdpbmRvdy5n
ZXRDb21wdXRlZFN0eWxlKGdyaWRPbmVDb2x1bW5NdWx0aXBsZSwgJycpLmdldFByb3BlcnR5VmFs
dWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIih4IHkgeikgNTBweCAodiB3KSA1
MHB4IDUwcHggNTBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZFR3b0NvbHVt
bnNNdWx0aXBsZSwgJycpLmdldFByb3BlcnR5VmFsdWUoJy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1j
b2x1bW5zJykgaXMgIihhIGIgYykgMjAwcHggKGQgZSkgMTUwcHgiCitQQVNTIHdpbmRvdy5nZXRD
b21wdXRlZFN0eWxlKGdyaWRUd29Db2x1bW5zTXVsdGlwbGUsICcnKS5nZXRQcm9wZXJ0eVZhbHVl
KCctd2Via2l0LWdyaWQtdGVtcGxhdGUtcm93cycpIGlzICIoeCB5IHopIDUwcHggKHYgdykgNTBw
eCIKK1BBU1Mgd2luZG93LmdldENvbXB1dGVkU3R5bGUoZ3JpZFRocmVlQ29sdW1uc011bHRpcGxl
LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBp
cyAiKGEgYiBjKSAyMDBweCAoZCBlKSAxNTBweCAxMDBweCIKK1BBU1Mgd2luZG93LmdldENvbXB1
dGVkU3R5bGUoZ3JpZFRocmVlQ29sdW1uc011bHRpcGxlLCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgn
LXdlYmtpdC1ncmlkLXRlbXBsYXRlLXJvd3MnKSBpcyAiKHggeSB6KSA1MHB4ICh2IHcpIDUwcHgi
CitQQVNTIHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGdyaWRGb3VyQ29sdW1uc011bHRpcGxlLCAn
JykuZ2V0UHJvcGVydHlWYWx1ZSgnLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnMnKSBpcyAi
KGEgYiBjKSAyMDBweCAoZCBlKSAxNTBweCAxMDBweCA1MHB4IgorUEFTUyB3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShncmlkRm91ckNvbHVtbnNNdWx0aXBsZSwgJycpLmdldFByb3BlcnR5VmFsdWUo
Jy13ZWJraXQtZ3JpZC10ZW1wbGF0ZS1yb3dzJykgaXMgIih4IHkgeikgNTBweCAodiB3KSIKK1BB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorWFhYWAorWFhY
CitYWAorWAorWFhYWAorWFhYCitYWAorWAorWFhYWAorWFhYCitYWAorWAorWFhYWAorWFhYCitY
WAorWAorWFhYWAorWFhYCitYWAorWAorWFhYWAorWFhYCitYWAorWAorWFhYWAorWFhYCitYWAor
WAorWFhYWAorWFhYCitYWAorWApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3Jp
ZC1sYXlvdXQvbmFtZWQtZ3JpZC1saW5lcy1jb21wdXRlZC1zdHlsZS1pbXBsaWNpdC10cmFja3Mu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L25hbWVkLWdyaWQtbGluZXMt
Y29tcHV0ZWQtc3R5bGUtaW1wbGljaXQtdHJhY2tzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWU4NGQ1NmY5
MmJmZDk4OTkyYTNkNDA0YTc5MWIwOTMzYTAxYzhhNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L25hbWVkLWdyaWQtbGluZXMtY29tcHV0ZWQtc3R5
bGUtaW1wbGljaXQtdHJhY2tzLmh0bWwKQEAgLTAsMCArMSw4OSBAQAorPCFET0NUWVBFIEhUTUw+
Cis8bGluayBocmVmPSJyZXNvdXJjZXMvZ3JpZC5jc3MiIHJlbD0ic3R5bGVzaGVldCI+Cis8c3R5
bGU+CisuZ3JpZCB7CisgICAgZm9udDogNTBweC8xIEFoZW07Cit9CisKKy5zaW5nbGVOYW1lZEdy
aWRMaW5lcyB7CisgICAgLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IChhKSBhdXRvIChi
KTsKKyAgICAtd2Via2l0LWdyaWQtdGVtcGxhdGUtcm93czogKHgpIGF1dG8gKHkpOworfQorCisu
bXVsdGlwbGVOYW1lZEdyaWRMaW5lcyB7CisgICAgLXdlYmtpdC1ncmlkLXRlbXBsYXRlLWNvbHVt
bnM6IChhIGIgYykgYXV0byAoZCBlKTsKKyAgICAtd2Via2l0LWdyaWQtdGVtcGxhdGUtcm93czog
KHggeSB6KSBhdXRvICh2IHcpOworfQorPC9zdHlsZT4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvanMtdGVzdC5qcyI+PC9zY3JpcHQ+CisKKzxkaXYgY2xhc3M9ImdyaWQgc2luZ2xlTmFt
ZWRHcmlkTGluZXMiIGlkPSJncmlkT25lQ29sdW1uU2luZ2xlIj4KKyAgICA8ZGl2PlhYWFg8L2Rp
dj4KKyAgICA8ZGl2PlhYWDwvZGl2PgorICAgIDxkaXY+WFg8L2Rpdj4KKyAgICA8ZGl2Plg8L2Rp
dj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlkIHNpbmdsZU5hbWVkR3JpZExpbmVzIiBpZD0i
Z3JpZFR3b0NvbHVtbnNTaW5nbGUiPgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVt
biI+WFhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYPC9k
aXY+CisgICAgPGRpdj5YWDwvZGl2PgorICAgIDxkaXY+WDwvZGl2PgorPC9kaXY+CisKKzxkaXYg
Y2xhc3M9ImdyaWQgc2luZ2xlTmFtZWRHcmlkTGluZXMiIGlkPSJncmlkVGhyZWVDb2x1bW5zU2lu
Z2xlIj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYWFg8L2Rpdj4KKyAg
ICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYWDwvZGl2PgorICAgIDxkaXYgY2xh
c3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFg8L2Rpdj4KKyAgICA8ZGl2Plg8L2Rpdj4KKzwvZGl2
PgorCis8ZGl2IGNsYXNzPSJncmlkIHNpbmdsZU5hbWVkR3JpZExpbmVzIiBpZD0iZ3JpZEZvdXJD
b2x1bW5zU2luZ2xlIj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYWFg8
L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYWDwvZGl2PgorICAg
IDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNz
PSJmaXJzdFJvd0F1dG9Db2x1bW4iPlg8L2Rpdj4KKzwvZGl2PgorCis8ZGl2IGNsYXNzPSJncmlk
IG11bHRpcGxlTmFtZWRHcmlkTGluZXMiIGlkPSJncmlkT25lQ29sdW1uTXVsdGlwbGUiPgorICAg
IDxkaXY+WFhYWDwvZGl2PgorICAgIDxkaXY+WFhYPC9kaXY+CisgICAgPGRpdj5YWDwvZGl2Pgor
ICAgIDxkaXY+WDwvZGl2PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQgbXVsdGlwbGVOYW1l
ZEdyaWRMaW5lcyIgaWQ9ImdyaWRUd29Db2x1bW5zTXVsdGlwbGUiPgorICAgIDxkaXYgY2xhc3M9
ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93
QXV0b0NvbHVtbiI+WFhYPC9kaXY+CisgICAgPGRpdj5YWDwvZGl2PgorICAgIDxkaXY+WDwvZGl2
PgorPC9kaXY+CisKKzxkaXYgY2xhc3M9ImdyaWQgbXVsdGlwbGVOYW1lZEdyaWRMaW5lcyIgaWQ9
ImdyaWRUaHJlZUNvbHVtbnNNdWx0aXBsZSI+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRv
Q29sdW1uIj5YWFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1uIj5Y
WFg8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJmaXJzdFJvd0F1dG9Db2x1bW4iPlhYPC9kaXY+Cisg
ICAgPGRpdj5YPC9kaXY+Cis8L2Rpdj4KKworPGRpdiBjbGFzcz0iZ3JpZCBtdWx0aXBsZU5hbWVk
R3JpZExpbmVzIiBpZD0iZ3JpZEZvdXJDb2x1bW5zTXVsdGlwbGUiPgorICAgIDxkaXYgY2xhc3M9
ImZpcnN0Um93QXV0b0NvbHVtbiI+WFhYWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93
QXV0b0NvbHVtbiI+WFhYPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iZmlyc3RSb3dBdXRvQ29sdW1u
Ij5YWDwvZGl2PgorICAgIDxkaXYgY2xhc3M9ImZpcnN0Um93QXV0b0NvbHVtbiI+WDwvZGl2Pgor
PC9kaXY+CisKKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZ3JpZC1kZWZpbml0aW9ucy1wYXJzaW5n
LXV0aWxzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRpb24oJ1Rlc3QgdGhh
dCBjb21wdXRlZCBzdHlsZSBmb3IgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zIGFuZCBncmlkLXRlbXBs
YXRlLXJvd3Mgd29ya3MgYXMgZXhwZWN0ZWQgd2l0aCBuYW1lZCBncmlkIGxpbmVzIGFuZCBpbXBs
aWNpdCB0cmFja3MnKTsKKworICAgIHRlc3RHcmlkVGVtcGxhdGVzVmFsdWVzKGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJncmlkT25lQ29sdW1uU2luZ2xlIiksICIoYSkgMjAwcHggKGIpIiwgIih4
KSA1MHB4ICh5KSA1MHB4IDUwcHggNTBweCIpOworICAgIHRlc3RHcmlkVGVtcGxhdGVzVmFsdWVz
KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmlkVHdvQ29sdW1uc1NpbmdsZSIpLCAiKGEpIDIw
MHB4IChiKSAxNTBweCIsICIoeCkgNTBweCAoeSkgNTBweCIpOworICAgIHRlc3RHcmlkVGVtcGxh
dGVzVmFsdWVzKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmlkVGhyZWVDb2x1bW5zU2luZ2xl
IiksICIoYSkgMjAwcHggKGIpIDE1MHB4IDEwMHB4IiwgIih4KSA1MHB4ICh5KSA1MHB4Iik7Cisg
ICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImdyaWRG
b3VyQ29sdW1uc1NpbmdsZSIpLCAiKGEpIDIwMHB4IChiKSAxNTBweCAxMDBweCA1MHB4IiwgIih4
KSA1MHB4ICh5KSIpOworCisgICAgdGVzdEdyaWRUZW1wbGF0ZXNWYWx1ZXMoZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImdyaWRPbmVDb2x1bW5NdWx0aXBsZSIpLCAiKGEgYiBjKSAyMDBweCAoZCBl
KSIsICIoeCB5IHopIDUwcHggKHYgdykgNTBweCA1MHB4IDUwcHgiKTsKKyAgICB0ZXN0R3JpZFRl
bXBsYXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3JpZFR3b0NvbHVtbnNNdWx0
aXBsZSIpLCAiKGEgYiBjKSAyMDBweCAoZCBlKSAxNTBweCIsICIoeCB5IHopIDUwcHggKHYgdykg
NTBweCIpOworICAgIHRlc3RHcmlkVGVtcGxhdGVzVmFsdWVzKGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJncmlkVGhyZWVDb2x1bW5zTXVsdGlwbGUiKSwgIihhIGIgYykgMjAwcHggKGQgZSkgMTUw
cHggMTAwcHgiLCAiKHggeSB6KSA1MHB4ICh2IHcpIDUwcHgiKTsKKyAgICB0ZXN0R3JpZFRlbXBs
YXRlc1ZhbHVlcyhkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3JpZEZvdXJDb2x1bW5zTXVsdGlw
bGUiKSwgIihhIGIgYykgMjAwcHggKGQgZSkgMTUwcHggMTAwcHggNTBweCIsICIoeCB5IHopIDUw
cHggKHYgdykiKTsKKzwvc2NyaXB0Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>