<?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>74303</bug_id>
          
          <creation_ts>2011-12-12 08:58:22 -0800</creation_ts>
          <short_desc>Regression(99212): table rows get incorrect height after changing some cells&apos; height</short_desc>
          <delta_ts>2011-12-20 06:09:16 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tables</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Vsevolod Vlasov">vsevik</reporter>
          <assigned_to name="Julien Chaffraix">jchaffraix</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>caseq</cc>
    
    <cc>darin</cc>
    
    <cc>jchaffraix</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>519249</commentid>
    <comment_count>0</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2011-12-12 08:58:22 -0800</bug_when>
    <thetext>Steps to reproduce:

1) Open inspector&apos;s network panel
2) Load some web page, make sure network log does not have scroll yet (just 1-3 requests)
3) Toggle large resource rows (in the bottom toolbar press fourth button)

This was caused by http://trac.webkit.org/changeset/99212.

Notes: pressing this button adds &quot;small&quot; class to table&apos;s container (&quot;.data-grid&quot;). Essentially this button switches between following style rules:

.network-log-grid.data-grid td {
    height: 37px;
}

.network-log-grid.data-grid.small td {
    height: 17px;
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519445</commentid>
    <comment_count>1</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2011-12-12 14:04:56 -0800</bug_when>
    <thetext>I started investigating this regression and it doesn&apos;t look like it is as simple as just switching those 2 styles. There is some CSS &amp; JS that must kick in that prevented me from getting a proper test case.

I am pretty sure this is not a WebInspector-only bug but a more general Table one. The easy fix would be to revert the RenderTableCell part of r99212 and mark the section as needing cell recalculation when height changes (likely an overkill).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519628</commentid>
    <comment_count>2</comment_count>
      <attachid>118898</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2011-12-12 15:58:40 -0800</bug_when>
    <thetext>Created attachment 118898
Reduction</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520023</commentid>
    <comment_count>3</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-12-13 04:20:57 -0800</bug_when>
    <thetext>@caseq: could you take a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520086</commentid>
    <comment_count>4</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2011-12-13 08:24:06 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; @caseq: could you take a look?

I am on it (which is why I took the bug). I understand the problem and can reproduce the issue. I just need to improve our test coverage of this area which is obviously lacking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>520914</commentid>
    <comment_count>5</comment_count>
      <attachid>119217</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2011-12-14 07:19:29 -0800</bug_when>
    <thetext>Created attachment 119217
Proposed fix 1: Use the same row height recalculation algorithm for |rowLogicalHeightChange| and |recalCells|.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>523481</commentid>
    <comment_count>6</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-12-18 10:04:49 -0800</bug_when>
    <thetext>Sounds like Darin has been reviewing the original issue (http://trac.webkit.org/changeset/99212).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>523599</commentid>
    <comment_count>7</comment_count>
      <attachid>119217</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-12-18 18:04:22 -0800</bug_when>
    <thetext>Comment on attachment 119217
Proposed fix 1: Use the same row height recalculation algorithm for |rowLogicalHeightChange| and |recalCells|.

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

&gt; Source/WebCore/rendering/RenderTableSection.cpp:1170
&gt; +    for (RenderObject* cell = m_grid[rowIndex].rowRenderer-&gt;firstChild(); cell; cell = cell-&gt;nextSibling()) {

What guarantees that rowRenderer is non-null?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>524511</commentid>
    <comment_count>8</comment_count>
      <attachid>119217</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2011-12-20 03:22:45 -0800</bug_when>
    <thetext>Comment on attachment 119217
Proposed fix 1: Use the same row height recalculation algorithm for |rowLogicalHeightChange| and |recalCells|.

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

&gt;&gt; Source/WebCore/rendering/RenderTableSection.cpp:1170
&gt;&gt; +    for (RenderObject* cell = m_grid[rowIndex].rowRenderer-&gt;firstChild(); cell; cell = cell-&gt;nextSibling()) {
&gt; 
&gt; What guarantees that rowRenderer is non-null?

This is called only from 2 places:
* RenderTableCell::styleDidChange: we check that rowIndex was set which means that recalcCell was called and filled m_grid. 
* RenderTableRow::styleDidChange: to find |rowIndex|, we check against m_grid.rowRenderer.

In both places, if m_grid was filled by recalcCells, each item should have a rowRenderer (per construction of the RenderTableSection tree).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>524574</commentid>
    <comment_count>9</comment_count>
      <attachid>119217</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-20 06:09:11 -0800</bug_when>
    <thetext>Comment on attachment 119217
Proposed fix 1: Use the same row height recalculation algorithm for |rowLogicalHeightChange| and |recalCells|.

Clearing flags on attachment: 119217

Committed r103327: &lt;http://trac.webkit.org/changeset/103327&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>524575</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-20 06:09:16 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>118898</attachid>
            <date>2011-12-12 15:58:40 -0800</date>
            <delta_ts>2011-12-12 15:58:40 -0800</delta_ts>
            <desc>Reduction</desc>
            <filename>table_regression.html</filename>
            <type>text/html</type>
            <size>991</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">PGh0bWw+PGJvZHk+CjxzdHlsZT4KdGFibGUgdGQKewogICAgaGVpZ2h0OiA0MHB4Owp9Cgp0YWJs
ZS5zbWFsbCB0ZAp7CiAgICBoZWlnaHQ6IDIwcHg7Cn0KCnRhYmxlIHRkLmZpbGxlcgp7CiAgICBo
ZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsKfQo8L3N0eWxlPgo8ZGl2IHN0eWxlPSJoZWlnaHQ6IDMw
MHB4Ij4KPHRhYmxlIGJvcmRlcj0iMSIgc3R5bGU9ImhlaWdodDogMTAwJSI+Cjx0ciBzdHlsZT0i
YmFja2dyb3VuZC1jb2xvcjogI0VFRTsiPgo8dGQ+cm93IDEsIGNlbGwgMTwvdGQ+Cjx0ZD5yb3cg
MSwgY2VsbCAyPC90ZD4KPC90cj4KPHRyIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiAjREREIj4K
PHRkPnJvdyAyLCBjZWxsIDE8L3RkPgo8dGQ+cm93IDIsIGNlbGwgMjwvdGQ+CjwvdHI+Cjx0ciBz
dHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsiPgo8dGQgY2xhc3M9ImZpbGxlciIgPnJvdyAy
LCBjZWxsIDE8L3RkPgo8dGQgY2xhc3M9ImZpbGxlciIgPnJvdyAyLCBjZWxsIDI8L3RkPgo8L3Ry
Pgo8L3RhYmxlPgo8L2Rpdj4KPHNjcmlwdD4KdmFyIHNtYWxsUm93cyA9IGZhbHNlOwp2YXIgdHI7
CgpmdW5jdGlvbiB0b2dnbGVTbWFsbFJvd3MoKQp7CiAgICB2YXIgdGFibGUgPSBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCJ0YWJsZSIpCiAgICBzbWFsbFJvd3MgPSAhc21hbGxSb3dzOwogICAgaWYg
KHNtYWxsUm93cykKICAgICAgICB0YWJsZS5jbGFzc0xpc3QuYWRkKCJzbWFsbCIpOwogICAgZWxz
ZQogICAgICAgIHRhYmxlLmNsYXNzTGlzdC5yZW1vdmUoInNtYWxsIik7Cn0KCnZhciB0b2dnbGVy
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7CnRvZ2dsZXIudGV4dENvbnRlbnQg
PSAiVG9nZ2xlIHNtYWxsIHJvd3MiOwp0b2dnbGVyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwg
dG9nZ2xlU21hbGxSb3dzKTsKZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0b2dnbGVyKTsKPC9z
Y3JpcHQ+CjwvYm9keT48L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>119217</attachid>
            <date>2011-12-14 07:19:29 -0800</date>
            <delta_ts>2011-12-20 06:09:11 -0800</delta_ts>
            <desc>Proposed fix 1: Use the same row height recalculation algorithm for |rowLogicalHeightChange| and |recalCells|.</desc>
            <filename>bug-74303-20111214161927.patch</filename>
            <type>text/plain</type>
            <size>14572</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAyNzY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjE2ZGU0ZTZkZGNlMmM2
MzY4MjczMzU5MTg1NGQ2ZTg5OTYwZDllMC4uZGI5NGQ4NTMxZTY5NDcyZTA4YmM5NGQ4MDZlMThi
YzBmZjllOTBkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDExLTEyLTE0ICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIFJlZ3Jlc3Np
b24oOTkyMTIpOiB0YWJsZSByb3dzIGdldCBpbmNvcnJlY3QgaGVpZ2h0IGFmdGVyIGNoYW5naW5n
IHNvbWUgY2VsbHMnIGhlaWdodAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzQzMDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUZXN0czogZmFzdC90YWJsZS9yZXNpemUtdGFibGUtYmluZGluZy1jZWxsLmh0
bWwKKyAgICAgICAgICAgICAgIGZhc3QvdGFibGUvcmVzaXplLXRhYmxlLWNlbGwuaHRtbAorICAg
ICAgICAgICAgICAgZmFzdC90YWJsZS9yZXNpemUtdGFibGUtcm93Lmh0bWwKKworICAgICAgICBy
OTkyMTIgd3JvbmdseSBpbXBsZW1lbnRlZCB0aGUgcm93J3MgbG9naWNhbEhlaWdodCByZWNhbGN1
bGF0aW9uLgorICAgICAgICBUaGUgb3JpZ2luYWwgY29kZSB3b3VsZCB1c2UgcmVjYWxjQ2VsbHMg
d2hpY2ggd291bGQgcHJvcGVybHkgcmVjYWxjdWxhdGUgYQorICAgICAgICByb3cgbG9naWNhbEhl
aWdodCBieSBpdGVyYXRpbmcgb3ZlciB0aGUgdGFibGUncyBjZWxscyBidXQgdGhyb3dpbmcgb3V0
IHRoZQorICAgICAgICBleGlzdGluZyByZXN1bHQuCisKKyAgICAgICAgT3VyIGFwcHJvYWNoIGlz
IGp1c3QgdG8gcmVjb21wdXRlIG91ciByb3cncyBsb2dpY2FsSGVpZ2h0IGFuZCBsZWF2ZSB0aGUK
KyAgICAgICAgcmVzdCBvZiB0aGUgc2VjdGlvbiB1bnRvdWNoZWQuCisKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyVGFibGVTZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnVwZGF0ZUxv
Z2ljYWxIZWlnaHRGb3JDZWxsKToKKyAgICAgICAgQWRkZWQgdGhpcyBuZXcgaGVscGVyIGZ1bmN0
aW9uIHRvIHVwZGF0ZSB0aGUgUm93U3RydWN0IGxvZ2ljYWxIZWlnaHQgZHVyaW5nCisgICAgICAg
IHxhZGRDZWxsfCBhbmQgfHJvd0xvZ2ljYWxIZWlnaHRDaGFuZ2VkfC4KKworICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyVGFibGVTZWN0aW9uOjphZGRDZWxsKToKKyAgICAgICAgUmVwbGFjZWQgdGhl
IG9sZCBjb2RlIHdpdGggYSBjYWxsIHRvIHVwZGF0ZUxvZ2ljYWxIZWlnaHRGb3JDZWxsLgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVGFibGVTZWN0aW9uOjpyb3dMb2dpY2FsSGVpZ2h0Q2hhbmdl
ZCk6CisgICAgICAgIEFkZGVkIGEgY2FsbCB0byB1cGRhdGVMb2dpY2FsSGVpZ2h0Rm9yQ2VsbCBm
b3IgZWFjaCBjZWxscy4KKwogMjAxMS0xMi0xNCAgUmFrZXNoIEtOICA8cmFrZXNoLmtuQG1vdG9y
b2xhLmNvbT4KIAogICAgICAgICBbTm9uLU1hY10gQ2hhbmdlIGV2ZW50IHNob3VsZCBiZSBmaXJl
ZCB3aGVuIGNoYW5naW5nIG9wdGlvbiBieSB1c2luZyBrZXlib2FyZC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZVNlY3Rpb24uY3BwIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAKaW5kZXggMzFjZmU4MGU5ODYx
MzYyNWQyMGU0NzdiNzk1ZGU3Yjg0NDFlMGI4Ni4uNWQ0ZjVmZjAxODBmNThmYTdjNTI0MTVhZGNi
NzlkNTNmNDY1OTM0NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRhYmxlU2VjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRh
YmxlU2VjdGlvbi5jcHAKQEAgLTU2LDYgKzU2LDM0IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzZXRS
b3dMb2dpY2FsSGVpZ2h0VG9Sb3dTdHlsZUxvZ2ljYWxIZWlnaHRJZk5vdFJlbGF0aXZlKFJlbmRl
CiAgICAgICAgIHJvdy5sb2dpY2FsSGVpZ2h0ID0gTGVuZ3RoKCk7CiB9CiAKK3N0YXRpYyBpbmxp
bmUgdm9pZCB1cGRhdGVMb2dpY2FsSGVpZ2h0Rm9yQ2VsbChSZW5kZXJUYWJsZVNlY3Rpb246OlJv
d1N0cnVjdCYgcm93LCBjb25zdCBSZW5kZXJUYWJsZUNlbGwqIGNlbGwpCit7CisgICAgLy8gV2Ug
aWdub3JlIGhlaWdodCBzZXR0aW5ncyBvbiByb3dzcGFuIGNlbGxzLgorICAgIGlmIChjZWxsLT5y
b3dTcGFuKCkgIT0gMSkKKyAgICAgICAgcmV0dXJuOworCisgICAgTGVuZ3RoIGxvZ2ljYWxIZWln
aHQgPSBjZWxsLT5zdHlsZSgpLT5sb2dpY2FsSGVpZ2h0KCk7CisgICAgaWYgKGxvZ2ljYWxIZWln
aHQuaXNQb3NpdGl2ZSgpIHx8IChsb2dpY2FsSGVpZ2h0LmlzUmVsYXRpdmUoKSAmJiBsb2dpY2Fs
SGVpZ2h0LnZhbHVlKCkgPj0gMCkpIHsKKyAgICAgICAgTGVuZ3RoIGNSb3dMb2dpY2FsSGVpZ2h0
ID0gcm93LmxvZ2ljYWxIZWlnaHQ7CisgICAgICAgIHN3aXRjaCAobG9naWNhbEhlaWdodC50eXBl
KCkpIHsKKyAgICAgICAgY2FzZSBQZXJjZW50OgorICAgICAgICAgICAgaWYgKCEoY1Jvd0xvZ2lj
YWxIZWlnaHQuaXNQZXJjZW50KCkpCisgICAgICAgICAgICAgICAgfHwgKGNSb3dMb2dpY2FsSGVp
Z2h0LmlzUGVyY2VudCgpICYmIGNSb3dMb2dpY2FsSGVpZ2h0LnBlcmNlbnQoKSA8IGxvZ2ljYWxI
ZWlnaHQucGVyY2VudCgpKSkKKyAgICAgICAgICAgICAgICByb3cubG9naWNhbEhlaWdodCA9IGxv
Z2ljYWxIZWlnaHQ7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBGaXhlZDoKKyAg
ICAgICAgICAgIGlmIChjUm93TG9naWNhbEhlaWdodC50eXBlKCkgPCBQZXJjZW50CisgICAgICAg
ICAgICAgICAgfHwgKGNSb3dMb2dpY2FsSGVpZ2h0LmlzRml4ZWQoKSAmJiBjUm93TG9naWNhbEhl
aWdodC52YWx1ZSgpIDwgbG9naWNhbEhlaWdodC52YWx1ZSgpKSkKKyAgICAgICAgICAgICAgICBy
b3cubG9naWNhbEhlaWdodCA9IGxvZ2ljYWxIZWlnaHQ7CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgY2FzZSBSZWxhdGl2ZToKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICB9CisgICAgfQorfQorCisKIFJlbmRlclRhYmxlU2VjdGlvbjo6UmVuZGVyVGFi
bGVTZWN0aW9uKE5vZGUqIG5vZGUpCiAgICAgOiBSZW5kZXJCb3gobm9kZSkKICAgICAsIG1fY0Nv
bCgwKQpAQCAtMjEwLDI4ICsyMzgsNyBAQCB2b2lkIFJlbmRlclRhYmxlU2VjdGlvbjo6YWRkQ2Vs
bChSZW5kZXJUYWJsZUNlbGwqIGNlbGwsIFJlbmRlclRhYmxlUm93KiByb3cpCiAgICAgd2hpbGUg
KG1fY0NvbCA8IG5Db2xzICYmIChjZWxsQXQoaW5zZXJ0aW9uUm93LCBtX2NDb2wpLmhhc0NlbGxz
KCkgfHwgY2VsbEF0KGluc2VydGlvblJvdywgbV9jQ29sKS5pbkNvbFNwYW4pKQogICAgICAgICBt
X2NDb2wrKzsKIAotICAgIGlmIChyU3BhbiA9PSAxKSB7Ci0gICAgICAgIC8vIHdlIGlnbm9yZSBo
ZWlnaHQgc2V0dGluZ3Mgb24gcm93c3BhbiBjZWxscwotICAgICAgICBMZW5ndGggbG9naWNhbEhl
aWdodCA9IGNlbGwtPnN0eWxlKCktPmxvZ2ljYWxIZWlnaHQoKTsKLSAgICAgICAgaWYgKGxvZ2lj
YWxIZWlnaHQuaXNQb3NpdGl2ZSgpIHx8IChsb2dpY2FsSGVpZ2h0LmlzUmVsYXRpdmUoKSAmJiBs
b2dpY2FsSGVpZ2h0LnZhbHVlKCkgPj0gMCkpIHsKLSAgICAgICAgICAgIExlbmd0aCBjUm93TG9n
aWNhbEhlaWdodCA9IG1fZ3JpZFtpbnNlcnRpb25Sb3ddLmxvZ2ljYWxIZWlnaHQ7Ci0gICAgICAg
ICAgICBzd2l0Y2ggKGxvZ2ljYWxIZWlnaHQudHlwZSgpKSB7Ci0gICAgICAgICAgICAgICAgY2Fz
ZSBQZXJjZW50OgotICAgICAgICAgICAgICAgICAgICBpZiAoIShjUm93TG9naWNhbEhlaWdodC5p
c1BlcmNlbnQoKSkgfHwKLSAgICAgICAgICAgICAgICAgICAgICAgIChjUm93TG9naWNhbEhlaWdo
dC5pc1BlcmNlbnQoKSAmJiBjUm93TG9naWNhbEhlaWdodC5wZXJjZW50KCkgPCBsb2dpY2FsSGVp
Z2h0LnBlcmNlbnQoKSkpCi0gICAgICAgICAgICAgICAgICAgICAgICBtX2dyaWRbaW5zZXJ0aW9u
Um93XS5sb2dpY2FsSGVpZ2h0ID0gbG9naWNhbEhlaWdodDsKLSAgICAgICAgICAgICAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIGNhc2UgRml4ZWQ6Ci0gICAgICAgICAgICAgICAg
ICAgIGlmIChjUm93TG9naWNhbEhlaWdodC50eXBlKCkgPCBQZXJjZW50IHx8Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAoY1Jvd0xvZ2ljYWxIZWlnaHQuaXNGaXhlZCgpICYmIGNSb3dMb2dpY2Fs
SGVpZ2h0LnZhbHVlKCkgPCBsb2dpY2FsSGVpZ2h0LnZhbHVlKCkpKQotICAgICAgICAgICAgICAg
ICAgICAgICAgbV9ncmlkW2luc2VydGlvblJvd10ubG9naWNhbEhlaWdodCA9IGxvZ2ljYWxIZWln
aHQ7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIGNhc2UgUmVs
YXRpdmU6Ci0gICAgICAgICAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICB9CisgICAgdXBkYXRlTG9naWNhbEhl
aWdodEZvckNlbGwobV9ncmlkW2luc2VydGlvblJvd10sIGNlbGwpOwogCiAgICAgZW5zdXJlUm93
cyhpbnNlcnRpb25Sb3cgKyByU3Bhbik7CiAKQEAgLTExNTUsOSArMTE2MiwxNyBAQCB2b2lkIFJl
bmRlclRhYmxlU2VjdGlvbjo6cmVjYWxjQ2VsbHMoKQogICAgIHNldE5lZWRzTGF5b3V0KHRydWUp
OwogfQogCisvLyBGSVhNRTogVGhpcyBmdW5jdGlvbiBjb3VsZCBiZSBtYWRlIE8oMSkgaW4gY2Vy
dGFpbiBjYXNlcyAobGlrZSBmb3IgdGhlIG5vbi1tb3N0LWNvbnN0cmFpbml2ZSBjZWxscycgY2Fz
ZSkuCiB2b2lkIFJlbmRlclRhYmxlU2VjdGlvbjo6cm93TG9naWNhbEhlaWdodENoYW5nZWQodW5z
aWduZWQgcm93SW5kZXgpCiB7CiAgICAgc2V0Um93TG9naWNhbEhlaWdodFRvUm93U3R5bGVMb2dp
Y2FsSGVpZ2h0SWZOb3RSZWxhdGl2ZShtX2dyaWRbcm93SW5kZXhdKTsKKworICAgIGZvciAoUmVu
ZGVyT2JqZWN0KiBjZWxsID0gbV9ncmlkW3Jvd0luZGV4XS5yb3dSZW5kZXJlci0+Zmlyc3RDaGls
ZCgpOyBjZWxsOyBjZWxsID0gY2VsbC0+bmV4dFNpYmxpbmcoKSkgeworICAgICAgICBpZiAoIWNl
bGwtPmlzVGFibGVDZWxsKCkpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICB1cGRh
dGVMb2dpY2FsSGVpZ2h0Rm9yQ2VsbChtX2dyaWRbcm93SW5kZXhdLCB0b1JlbmRlclRhYmxlQ2Vs
bChjZWxsKSk7CisgICAgfQogfQogCiB2b2lkIFJlbmRlclRhYmxlU2VjdGlvbjo6c2V0TmVlZHND
ZWxsUmVjYWxjKCkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCBlNTAzOTZhYTc2NmRkNzI1NDk3Y2VmYmE1ODU2ZTcyYmU3MTlj
NzJkLi4yNzgxY2UzNDA5ZGE2Zjk0Njg5NmZkOWVkMTQ2ODQ3MWQ3ODU0YTM5IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTkgQEAKKzIwMTEtMTItMTQgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4QHdl
YmtpdC5vcmc+CisKKyAgICAgICAgUmVncmVzc2lvbig5OTIxMik6IHRhYmxlIHJvd3MgZ2V0IGlu
Y29ycmVjdCBoZWlnaHQgYWZ0ZXIgY2hhbmdpbmcgc29tZSBjZWxscycgaGVpZ2h0CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDMwMworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHNvbWUgdGVzdHMg
dGhhdCByZXNpemUgYSBjZWxsIG9yIGEgcm93IGFuZCBjaGVjayB0aGF0IHdlIHByb3Blcmx5IHJl
Y29tcHV0ZSB0aGUgaGVpZ2h0LgorCisgICAgICAgICogZmFzdC90YWJsZS9yZXNpemUtdGFibGUt
YmluZGluZy1jZWxsLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC90YWJsZS9y
ZXNpemUtdGFibGUtYmluZGluZy1jZWxsLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGFi
bGUvcmVzaXplLXRhYmxlLWNlbGwtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0
L3RhYmxlL3Jlc2l6ZS10YWJsZS1jZWxsLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdGFi
bGUvcmVzaXplLXRhYmxlLXJvdy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3Qv
dGFibGUvcmVzaXplLXRhYmxlLXJvdy5odG1sOiBBZGRlZC4KKwogMjAxMS0xMi0xNCAgUmFrZXNo
IEtOICA8cmFrZXNoLmtuQG1vdG9yb2xhLmNvbT4KIAogICAgICAgICBbTm9uLU1hY10gQ2hhbmdl
IGV2ZW50IHNob3VsZCBiZSBmaXJlZCB3aGVuIGNoYW5naW5nIG9wdGlvbiBieSB1c2luZyBrZXli
b2FyZC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGFibGUvcmVzaXplLXRhYmxlLWJp
bmRpbmctY2VsbC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3RhYmxlL3Jlc2l6ZS10
YWJsZS1iaW5kaW5nLWNlbGwtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmRkYWVmODQ1MWU0ZjY2
ODI5NWQ5NzlhOTUwNjg5ZTEyNzVhOWFmNjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L3RhYmxlL3Jlc2l6ZS10YWJsZS1iaW5kaW5nLWNlbGwtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMTMgQEAKK1JlZ3Jlc3Npb24oOTkyMTIpOiB0YWJsZSByb3dzIGdldCBpbmNvcnJlY3Qg
aGVpZ2h0IGFmdGVyIGNoYW5naW5nIHNvbWUgY2VsbHMnIGhlaWdodAoraHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0MzAzCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KKworCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZmlyc3RSb3csICcnKS5nZXRQcm9wZXJ0eVZh
bHVlKCdoZWlnaHQnKSBpcyAnNDRweCcKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShmaXJzdFJvdywg
JycpLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcpIGlzICc4NHB4JworUEFTUyBnZXRDb21wdXRl
ZFN0eWxlKGZpcnN0Um93LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnaGVpZ2h0JykgaXMgJzQ0cHgn
CitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9yZXNpemUtdGFibGUtYmluZGluZy1jZWxs
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3RhYmxlL3Jlc2l6ZS10YWJsZS1iaW5kaW5nLWNlbGwu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4wOTZjODRhYTkxOTNlNWE3NzQ0MTI3OTdhZTJkMmQ1YTlkNWYwMDVk
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9yZXNpemUtdGFibGUt
YmluZGluZy1jZWxsLmh0bWwKQEAgLTAsMCArMSw2MCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRt
bD4KKzxoZWFkPgorICAgIDxzdHlsZT4KKyAgICB0ZAorICAgIHsKKyAgICAgICAgd2lkdGg6IDUw
cHg7CisgICAgICAgIGhlaWdodDogNDBweDsKKyAgICB9CisgICAgdGFibGUuYmlnIHRkLmJpbmRp
bmcKKyAgICB7CisgICAgICAgIGhlaWdodDogODBweDsKKyAgICB9CisKKyAgICB0YWJsZSB0ZC5m
aWxsZXIKKyAgICB7CisgICAgICAgIGhlaWdodDogYXV0bzsKKyAgICB9CisgICAgPC9zdHlsZT4K
KyAgICA8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgc3R5bGU9ImhlaWdodDogMzAwcHgiPgorICAg
ICAgICA8dGFibGUgYm9yZGVyPSIxIiBzdHlsZT0iaGVpZ2h0OiAxMDAlIj4KKyAgICAgICAgICAg
IDx0ciBpZD0iZmlyc3RSb3ciPgorICAgICAgICAgICAgPHRkIGNsYXNzPSJiaW5kaW5nIj48L3Rk
PgorICAgICAgICAgICAgPHRkPjwvdGQ+CisgICAgICAgICAgICA8L3RyPgorICAgICAgICAgICAg
PHRyPgorICAgICAgICAgICAgPHRkIGNsYXNzPSJmaWxsZXIiID48L3RkPgorICAgICAgICAgICAg
PHRkIGNsYXNzPSJmaWxsZXIiID48L3RkPgorICAgICAgICAgICAgPC90cj4KKyAgICAgICAgPC90
YWJsZT4KKyAgICA8L2Rpdj4KKyAgICA8c2NyaXB0PgorICAgIHZhciBiaWdSb3dzID0gZmFsc2U7
CisKKyAgICBmdW5jdGlvbiB0b2dnbGVCaWdSb3dzKCkKKyAgICB7CisgICAgICAgIHZhciB0YWJs
ZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInRhYmxlIikKKyAgICAgICAgYmlnUm93cyA9ICFi
aWdSb3dzOworICAgICAgICBpZiAoYmlnUm93cykKKyAgICAgICAgICAgIHRhYmxlLmNsYXNzTGlz
dC5hZGQoImJpZyIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0YWJsZS5jbGFzc0xpc3Qu
cmVtb3ZlKCJiaWciKTsKKyAgICB9CisKKyAgICBkZXNjcmlwdGlvbigiUmVncmVzc2lvbig5OTIx
Mik6IHRhYmxlIHJvd3MgZ2V0IGluY29ycmVjdCBoZWlnaHQgYWZ0ZXIgY2hhbmdpbmcgc29tZSBj
ZWxscycgaGVpZ2h0PGJyPmh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
NDMwMyIpOworICAgIGZpcnN0Um93ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpcnN0Um93
Iik7CisgICAgLy8gT3JpZ2luYWwgdmFsdWUuCisgICAgc2hvdWxkQmUoImdldENvbXB1dGVkU3R5
bGUoZmlyc3RSb3csICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdoZWlnaHQnKSIsICInNDRweCciKTsK
KworICAgIHRvZ2dsZUJpZ1Jvd3MoKTsKKyAgICBzaG91bGRCZSgiZ2V0Q29tcHV0ZWRTdHlsZShm
aXJzdFJvdywgJycpLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcpIiwgIic4NHB4JyIpOworICAg
IHRvZ2dsZUJpZ1Jvd3MoKTsKKyAgICBzaG91bGRCZSgiZ2V0Q29tcHV0ZWRTdHlsZShmaXJzdFJv
dywgJycpLmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcpIiwgIic0NHB4JyIpOworICAgIDwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
dGFibGUvcmVzaXplLXRhYmxlLWNlbGwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC90
YWJsZS9yZXNpemUtdGFibGUtY2VsbC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjYwMjY2ZjI4
MTIwNmJmMGYwNGUxMGUzZmVkN2Q5NmJiOWM1YmQ5NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvdGFibGUvcmVzaXplLXRhYmxlLWNlbGwtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMTMgQEAKK1JlZ3Jlc3Npb24oOTkyMTIpOiB0YWJsZSByb3dzIGdldCBpbmNvcnJlY3QgaGVp
Z2h0IGFmdGVyIGNoYW5naW5nIHNvbWUgY2VsbHMnIGhlaWdodAoraHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTc0MzAzCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTIGdldENvbXB1dGVkU3R5bGUoZmlyc3RSb3csICcnKS5nZXRQcm9wZXJ0eVZhbHVl
KCdoZWlnaHQnKSBpcyAnNDRweCcKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShmaXJzdFJvdywgJycp
LmdldFByb3BlcnR5VmFsdWUoJ2hlaWdodCcpIGlzICcyNHB4JworUEFTUyBnZXRDb21wdXRlZFN0
eWxlKGZpcnN0Um93LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnaGVpZ2h0JykgaXMgJzQ0cHgnCitQ
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9yZXNpemUtdGFibGUtY2VsbC5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC90YWJsZS9yZXNpemUtdGFibGUtY2VsbC5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZl
YjcyNTJmMmI1ZDg4YjA2ZDczZDY2MjU1MzI1M2RhNTVjOTUzOGIKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L3RhYmxlL3Jlc2l6ZS10YWJsZS1jZWxsLmh0bWwKQEAgLTAsMCAr
MSw2MSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzdHlsZT4KKyAg
ICB0ZAorICAgIHsKKyAgICAgICAgd2lkdGg6IDUwcHg7CisgICAgICAgIGhlaWdodDogNDBweDsK
KyAgICB9CisgICAgdGFibGUuc21hbGwgdGQKKyAgICB7CisgICAgICAgIGhlaWdodDogMjBweDsK
KyAgICB9CisKKyAgICB0YWJsZSB0ZC5maWxsZXIKKyAgICB7CisgICAgICAgIGhlaWdodDogYXV0
bzsKKyAgICB9CisgICAgPC9zdHlsZT4KKyAgICA8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorICAgIDxkaXYgc3R5
bGU9ImhlaWdodDogMzAwcHgiPgorICAgICAgICA8dGFibGUgYm9yZGVyPSIxIiBzdHlsZT0iaGVp
Z2h0OiAxMDAlIj4KKyAgICAgICAgICAgIDx0ciBpZD0iZmlyc3RSb3ciPgorICAgICAgICAgICAg
PHRkPjwvdGQ+CisgICAgICAgICAgICA8dGQ+PC90ZD4KKyAgICAgICAgICAgIDwvdHI+CisgICAg
ICAgICAgICA8dHI+CisgICAgICAgICAgICA8dGQgY2xhc3M9ImZpbGxlciIgPjwvdGQ+CisgICAg
ICAgICAgICA8dGQgY2xhc3M9ImZpbGxlciIgPjwvdGQ+CisgICAgICAgICAgICA8L3RyPgorICAg
ICAgICA8L3RhYmxlPgorICAgIDwvZGl2PgorICAgIDxzY3JpcHQ+CisgICAgdmFyIHNtYWxsUm93
cyA9IGZhbHNlOworCisgICAgZnVuY3Rpb24gdG9nZ2xlU21hbGxSb3dzKCkKKyAgICB7CisgICAg
ICAgIHZhciB0YWJsZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInRhYmxlIikKKyAgICAgICAg
c21hbGxSb3dzID0gIXNtYWxsUm93czsKKyAgICAgICAgaWYgKHNtYWxsUm93cykKKyAgICAgICAg
ICAgIHRhYmxlLmNsYXNzTGlzdC5hZGQoInNtYWxsIik7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIHRhYmxlLmNsYXNzTGlzdC5yZW1vdmUoInNtYWxsIik7CisgICAgfQorCisgICAgZGVzY3Jp
cHRpb24oIlJlZ3Jlc3Npb24oOTkyMTIpOiB0YWJsZSByb3dzIGdldCBpbmNvcnJlY3QgaGVpZ2h0
IGFmdGVyIGNoYW5naW5nIHNvbWUgY2VsbHMnIGhlaWdodDxicj5odHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQzMDMiKTsKKworICAgIGZpcnN0Um93ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImZpcnN0Um93Iik7CisgICAgLy8gT3JpZ2luYWwgdmFsdWUuCisgICAg
c2hvdWxkQmUoImdldENvbXB1dGVkU3R5bGUoZmlyc3RSb3csICcnKS5nZXRQcm9wZXJ0eVZhbHVl
KCdoZWlnaHQnKSIsICInNDRweCciKTsKKworICAgIHRvZ2dsZVNtYWxsUm93cygpOworICAgIHNo
b3VsZEJlKCJnZXRDb21wdXRlZFN0eWxlKGZpcnN0Um93LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgn
aGVpZ2h0JykiLCAiJzI0cHgnIik7CisgICAgdG9nZ2xlU21hbGxSb3dzKCk7CisgICAgc2hvdWxk
QmUoImdldENvbXB1dGVkU3R5bGUoZmlyc3RSb3csICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdoZWln
aHQnKSIsICInNDRweCciKTsKKyAgICA8L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vanMv
cmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3RhYmxlL3Jlc2l6ZS10YWJsZS1yb3ctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9yZXNpemUtdGFibGUtcm93LWV4cGVjdGVk
LnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5iNTM1MGUxMTY3ZjU2YjAyNThhN2JlMmEwODY0MmI1ZGE0YTQ2OTUy
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9yZXNpemUtdGFibGUt
cm93LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEzIEBACitSZWdyZXNzaW9uKDk5MjEyKTogdGFi
bGUgcm93cyBnZXQgaW5jb3JyZWN0IGhlaWdodCBhZnRlciBjaGFuZ2luZyBzb21lIGNlbGxzJyBo
ZWlnaHQKK2h0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NDMwMworCitP
biBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xs
b3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBnZXRDb21wdXRlZFN0eWxlKGZpcnN0
Um93LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnaGVpZ2h0JykgaXMgJzQwcHgnCitQQVNTIGdldENv
bXB1dGVkU3R5bGUoZmlyc3RSb3csICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdoZWlnaHQnKSBpcyAn
MjBweCcKK1BBU1MgZ2V0Q29tcHV0ZWRTdHlsZShmaXJzdFJvdywgJycpLmdldFByb3BlcnR5VmFs
dWUoJ2hlaWdodCcpIGlzICc0MHB4JworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvdGFibGUvcmVz
aXplLXRhYmxlLXJvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC90YWJsZS9yZXNpemUtdGFibGUt
cm93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNDEzNjUxNzI4MjYxNDk0M2ZlN2I3ZjYxZmQwNzA1NThmMjNi
Yjg5MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdGFibGUvcmVzaXplLXRh
YmxlLXJvdy5odG1sCkBAIC0wLDAgKzEsNTggQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8
aGVhZD4KKyAgICA8c3R5bGU+CisgICAgdGQKKyAgICB7CisgICAgICAgIHdpZHRoOiA1MHB4Owor
ICAgIH0KKyAgICB0cgorICAgIHsKKyAgICAgICAgaGVpZ2h0OiA0MHB4OworICAgIH0KKyAgICB0
YWJsZS5zbWFsbCB0cgorICAgIHsKKyAgICAgICAgaGVpZ2h0OiAyMHB4OworICAgIH0KKworICAg
IHRhYmxlIHRyLmZpbGxlcgorICAgIHsKKyAgICAgICAgaGVpZ2h0OiBhdXRvOworICAgIH0KKyAg
ICA8L3N0eWxlPgorICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiAz
MDBweCI+CisgICAgICAgIDx0YWJsZSBib3JkZXI9IjEiIHN0eWxlPSJoZWlnaHQ6IDEwMCUiPgor
ICAgICAgICAgICAgPHRyIGlkPSJmaXJzdFJvdyI+PHRkPjwvdGQ+PC90cj4KKyAgICAgICAgICAg
IDx0ciBjbGFzcz0iZmlsbGVyIj48dGQ+PC90ZD48L3RyPgorICAgICAgICA8L3RhYmxlPgorICAg
IDwvZGl2PgorICAgIDxzY3JpcHQ+CisgICAgdmFyIHNtYWxsUm93cyA9IGZhbHNlOworCisgICAg
ZnVuY3Rpb24gdG9nZ2xlU21hbGxSb3dzKCkKKyAgICB7CisgICAgICAgIHZhciB0YWJsZSA9IGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoInRhYmxlIikKKyAgICAgICAgc21hbGxSb3dzID0gIXNtYWxs
Um93czsKKyAgICAgICAgaWYgKHNtYWxsUm93cykKKyAgICAgICAgICAgIHRhYmxlLmNsYXNzTGlz
dC5hZGQoInNtYWxsIik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHRhYmxlLmNsYXNzTGlz
dC5yZW1vdmUoInNtYWxsIik7CisgICAgfQorCisgICAgZGVzY3JpcHRpb24oIlJlZ3Jlc3Npb24o
OTkyMTIpOiB0YWJsZSByb3dzIGdldCBpbmNvcnJlY3QgaGVpZ2h0IGFmdGVyIGNoYW5naW5nIHNv
bWUgY2VsbHMnIGhlaWdodDxicj5odHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NzQzMDMiKTsKKworICAgIGZpcnN0Um93ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZp
cnN0Um93Iik7CisgICAgLy8gT3JpZ2luYWwgdmFsdWUuCisgICAgc2hvdWxkQmUoImdldENvbXB1
dGVkU3R5bGUoZmlyc3RSb3csICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdoZWlnaHQnKSIsICInNDBw
eCciKTsKKworICAgIHRvZ2dsZVNtYWxsUm93cygpOworICAgIHNob3VsZEJlKCJnZXRDb21wdXRl
ZFN0eWxlKGZpcnN0Um93LCAnJykuZ2V0UHJvcGVydHlWYWx1ZSgnaGVpZ2h0JykiLCAiJzIwcHgn
Iik7CisgICAgdG9nZ2xlU21hbGxSb3dzKCk7CisgICAgc2hvdWxkQmUoImdldENvbXB1dGVkU3R5
bGUoZmlyc3RSb3csICcnKS5nZXRQcm9wZXJ0eVZhbHVlKCdoZWlnaHQnKSIsICInNDBweCciKTsK
KyAgICA8L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>