<?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>112749</bug_id>
          
          <creation_ts>2013-03-19 15:21:56 -0700</creation_ts>
          <short_desc>[CSS Grid Layout] Improper repainting when grid item change their position</short_desc>
          <delta_ts>2013-03-20 11:52:28 -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>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>60731</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Julien Chaffraix">jchaffraix</reporter>
          <assigned_to name="Julien Chaffraix">jchaffraix</assigned_to>
          <cc>buildbot</cc>
    
    <cc>eric</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>ojan</cc>
    
    <cc>rniwa</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>858802</commentid>
    <comment_count>0</comment_count>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2013-03-19 15:21:56 -0700</bug_when>
    <thetext>If you change a grid item&apos;s row or column, we currently don&apos;t repaint properly and will leave some artifacts behind.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>858813</commentid>
    <comment_count>1</comment_count>
      <attachid>193937</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2013-03-19 15:36:10 -0700</bug_when>
    <thetext>Created attachment 193937
Proposed fix 1. Added a call to repaintDuringLayoutIfMoved along with extra repaint testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>858857</commentid>
    <comment_count>2</comment_count>
      <attachid>193937</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-03-19 16:21:59 -0700</bug_when>
    <thetext>Comment on attachment 193937
Proposed fix 1. Added a call to repaintDuringLayoutIfMoved along with extra repaint testing.

Attachment 193937 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-commit-queue.appspot.com/results/17257072

New failing tests:
fast/css-grid-layout/grid-element-change-rows-repaint.html
fast/css-grid-layout/grid-item-change-column-repaint.html
fast/css-grid-layout/grid-item-change-row-repaint.html
fast/css-grid-layout/grid-element-change-columns-repaint.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859005</commentid>
    <comment_count>3</comment_count>
      <attachid>193937</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2013-03-19 20:04:07 -0700</bug_when>
    <thetext>Comment on attachment 193937
Proposed fix 1. Added a call to repaintDuringLayoutIfMoved along with extra repaint testing.

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

&gt; Source/WebCore/rendering/RenderGrid.cpp:677
&gt; +        if (!selfNeedsLayout() &amp;&amp; child-&gt;checkForRepaintDuringLayout())
&gt; +            child-&gt;repaintDuringLayoutIfMoved(oldChildRect);

It bugs me that we&apos;re copy-pasting this pattern all over the place. Would be nice if we had a function on RenderBox:
void RenderBox::repaintChildDuringLayoutIfMoved(RenderBox* child, LayoutRect oldChildRect)
{
    // If the child moved, we have to repaint it as well as any floating/positioned
    // descendants.  An exception is if we need a layout.  In this case, we know we&apos;re going to
    // repaint ourselves (and the child) anyway.
    if (!selfNeedsLayout() &amp;&amp; child-&gt;checkForRepaintDuringLayout())
        child-&gt;repaintDuringLayoutIfMoved(oldChildRect);
}

I copy-pasted that comment from RenderFlexibleBox since I needed that extra explanation for why the !selfNeedsLayout() check is correct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859093</commentid>
    <comment_count>4</comment_count>
      <attachid>193937</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-03-19 23:12:00 -0700</bug_when>
    <thetext>Comment on attachment 193937
Proposed fix 1. Added a call to repaintDuringLayoutIfMoved along with extra repaint testing.

Attachment 193937 did not pass mac-ews (mac):
Output: http://webkit-commit-queue.appspot.com/results/17133425

New failing tests:
fast/css-grid-layout/grid-element-change-rows-repaint.html
fast/css-grid-layout/grid-item-change-column-repaint.html
fast/css-grid-layout/grid-item-change-row-repaint.html
fast/css-grid-layout/grid-element-change-columns-repaint.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859566</commentid>
    <comment_count>5</comment_count>
      <attachid>193937</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2013-03-20 11:16:49 -0700</bug_when>
    <thetext>Comment on attachment 193937
Proposed fix 1. Added a call to repaintDuringLayoutIfMoved along with extra repaint testing.

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

&gt;&gt; Source/WebCore/rendering/RenderGrid.cpp:677
&gt;&gt; +            child-&gt;repaintDuringLayoutIfMoved(oldChildRect);
&gt; 
&gt; It bugs me that we&apos;re copy-pasting this pattern all over the place. Would be nice if we had a function on RenderBox:
&gt; void RenderBox::repaintChildDuringLayoutIfMoved(RenderBox* child, LayoutRect oldChildRect)
&gt; {
&gt;     // If the child moved, we have to repaint it as well as any floating/positioned
&gt;     // descendants.  An exception is if we need a layout.  In this case, we know we&apos;re going to
&gt;     // repaint ourselves (and the child) anyway.
&gt;     if (!selfNeedsLayout() &amp;&amp; child-&gt;checkForRepaintDuringLayout())
&gt;         child-&gt;repaintDuringLayoutIfMoved(oldChildRect);
&gt; }
&gt; 
&gt; I copy-pasted that comment from RenderFlexibleBox since I needed that extra explanation for why the !selfNeedsLayout() check is correct.

I totally agree with you and that&apos;s actually a deeper issue than that. Our current repainting code (LayoutRepainter / RenderLayer based + such ad-hoc code) doesn&apos;t work as well as it should. If you look at the invalidated rectangles, we actually have several unneeded and plain wrong invalidation because of LayoutRepainter. On top of that, it&apos;s too easy to forget to invalidate some children.

I will add the comment as it can be confusing for people.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859568</commentid>
    <comment_count>6</comment_count>
      <attachid>194090</attachid>
    <who name="Julien Chaffraix">jchaffraix</who>
    <bug_when>2013-03-20 11:17:24 -0700</bug_when>
    <thetext>Created attachment 194090
Fixed failure by switching the text to Ahem with a fixed font size.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859588</commentid>
    <comment_count>7</comment_count>
      <attachid>194090</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-20 11:52:24 -0700</bug_when>
    <thetext>Comment on attachment 194090
Fixed failure by switching the text to Ahem with a fixed font size.

Clearing flags on attachment: 194090

Committed r146371: &lt;http://trac.webkit.org/changeset/146371&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859589</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-20 11:52:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193937</attachid>
            <date>2013-03-19 15:36:10 -0700</date>
            <delta_ts>2013-03-20 11:17:21 -0700</delta_ts>
            <desc>Proposed fix 1. Added a call to repaintDuringLayoutIfMoved along with extra repaint testing.</desc>
            <filename>bug-112749-20130319153200.patch</filename>
            <type>text/plain</type>
            <size>12235</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2MjI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ0NzgwYTQyOTkxMWUw
ODhiZjk0Y2ExNzlmNWI1OTZlZDZhY2JhNy4uNDIyY2U3Y2YwYTBjMzcwNWVmNzViZTE4MGVlNWYw
ZDNlNzdhNDY5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTAzLTE5ICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIFtDU1MgR3Jp
ZCBMYXlvdXRdIEltcHJvcGVyIHJlcGFpbnRpbmcgd2hlbiBncmlkIGl0ZW0gY2hhbmdlIHRoZWly
IHBvc2l0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMTI3NDkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBUZXN0czogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1jb2x1bW5z
LXJlcGFpbnQuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1l
bGVtZW50LWNoYW5nZS1yb3dzLXJlcGFpbnQuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9jc3Mt
Z3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1jb2x1bW4tcmVwYWludC5odG1sCisgICAgICAg
ICAgICAgICBmYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tY2hhbmdlLXJvdy1yZXBhaW50
Lmh0bWwKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJHcmlkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckdyaWQ6OmxheW91dEdyaWRJdGVtcyk6CisgICAgICAgIEFkZGVkIGEgY2Fs
bCB0byByZXBhaW50RHVyaW5nTGF5b3V0SWZNb3ZlZCB0byByZXBhaW50IG1vdmluZyBncmlkIGl0
ZW1zLgorCiAyMDEzLTAzLTE5ICBKb3NodWEgQmVsbCAgPGpzYmVsbEBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgSW5kZXhlZERCOiBVc2UgaW50ZWdlciBwbHVtYmluZyBmb3IgZGVsZXRlRGF0YWJh
c2Ugb25WZXJzaW9uQ2hhbmdlIGNhbGxzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyR3JpZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyR3Jp
ZC5jcHAKaW5kZXggMmRjODQ1NmQ1YjI1MmE2MTg3YzIxOGY5ZTRjODRhNWU5ZDQ0NzgzYS4uNTcz
ZWU3YjdlNDBiMjM5NjY4ZTBiMDdhZDFkZjNkY2RmZjgyMjdjOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJHcmlkLmNwcApAQCAtNjYzLDYgKzY2Myw4IEBAIHZvaWQgUmVuZGVyR3Jp
ZDo6bGF5b3V0R3JpZEl0ZW1zKCkKICAgICAgICAgY2hpbGQtPnNldE92ZXJyaWRlQ29udGFpbmlu
Z0Jsb2NrQ29udGVudExvZ2ljYWxXaWR0aChvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRM
b2dpY2FsV2lkdGgpOwogICAgICAgICBjaGlsZC0+c2V0T3ZlcnJpZGVDb250YWluaW5nQmxvY2tD
b250ZW50TG9naWNhbEhlaWdodChvdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dpY2Fs
SGVpZ2h0KTsKIAorICAgICAgICBMYXlvdXRSZWN0IG9sZENoaWxkUmVjdCA9IGNoaWxkLT5mcmFt
ZVJlY3QoKTsKKwogICAgICAgICAvLyBGSVhNRTogR3JpZCBpdGVtcyBzaG91bGQgc3RyZXRjaCB0
byBmaWxsIHRoZWlyIGNlbGxzLiBPbmNlIHdlCiAgICAgICAgIC8vIGltcGxlbWVudCBncmlkLXtj
b2x1bW4scm93fS1hbGlnbiwgd2UgY2FuIGFsc28gc2hyaW5rIHRvIGZpdC4gRm9yCiAgICAgICAg
IC8vIG5vdywganVzdCBzaXplIGFzIGlmIHdlIHdlcmUgYSByZWd1bGFyIGNoaWxkLgpAQCAtNjcw
LDYgKzY3Miw5IEBAIHZvaWQgUmVuZGVyR3JpZDo6bGF5b3V0R3JpZEl0ZW1zKCkKIAogICAgICAg
ICAvLyBGSVhNRTogSGFuZGxlIGJvcmRlciAmIHBhZGRpbmcgb24gdGhlIGdyaWQgZWxlbWVudC4K
ICAgICAgICAgY2hpbGQtPnNldExvZ2ljYWxMb2NhdGlvbihjaGlsZFBvc2l0aW9uKTsKKworICAg
ICAgICBpZiAoIXNlbGZOZWVkc0xheW91dCgpICYmIGNoaWxkLT5jaGVja0ZvclJlcGFpbnREdXJp
bmdMYXlvdXQoKSkKKyAgICAgICAgICAgIGNoaWxkLT5yZXBhaW50RHVyaW5nTGF5b3V0SWZNb3Zl
ZChvbGRDaGlsZFJlY3QpOwogICAgIH0KIAogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcm93
VHJhY2tzLnNpemUoKTsgKytpKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDFkNDg4N2IxYTZkMjhhM2NlMGY1YTg1ZTUzZWU3
ODRmODAyNTA1NjcuLjY1MThlODg3OWM3YjBlMmUwMGZiMzk3OTYwZjEyZjM3MTY1OGUyYmUgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwyMyBAQAorMjAxMy0wMy0xOSAgSnVsaWVuIENoYWZmcmFpeCAgPGpjaGFm
ZnJhaXhAd2Via2l0Lm9yZz4KKworICAgICAgICBbQ1NTIEdyaWQgTGF5b3V0XSBJbXByb3BlciBy
ZXBhaW50aW5nIHdoZW4gZ3JpZCBpdGVtIGNoYW5nZSB0aGVpciBwb3NpdGlvbgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyNzQ5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2Nzcy1ncmlkLWxh
eW91dC9ncmlkLWVsZW1lbnQtY2hhbmdlLWNvbHVtbnMtcmVwYWludC1leHBlY3RlZC50eHQ6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxlbWVudC1jaGFuZ2Ut
Y29sdW1ucy1yZXBhaW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5
b3V0L2dyaWQtZWxlbWVudC1jaGFuZ2Utcm93cy1yZXBhaW50LWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1yb3dz
LXJlcGFpbnQuaHRtbDogQWRkZWQuCisgICAgICAgIFRob3NlIGFyZSBhZGRlZCB0ZXN0aW5nIGZv
ciB0aGUgZ3JpZCBlbGVtZW50J3MgY2hhbmdlLiBUaGV5IHdlcmUgYWxyZWFkeSBwYXNzaW5nIGR1
ZSB0bworICAgICAgICB0aGUgTGF5b3V0UmVwYWludGVyIGluIFJlbmRlckdyaWQ6OmxheW91dEJs
b2NrLgorCisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1j
b2x1bW4tcmVwYWludC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdy
aWQtbGF5b3V0L2dyaWQtaXRlbS1jaGFuZ2UtY29sdW1uLXJlcGFpbnQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1yb3ctcmVwYWlu
dC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2dy
aWQtaXRlbS1jaGFuZ2Utcm93LXJlcGFpbnQuaHRtbDogQWRkZWQuCisgICAgICAgIE5ldyB0ZXN0
aW5nLCB3YXMgZmFpbGluZyBiZWZvcmUgdGhpcyBjaGFuZ2UuCisKIDIwMTMtMDMtMTkgIFRlcnJ5
IEFuZGVyc29uICA8dGRhbmRlcnNvbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgSG92ZXIgZWZm
ZWN0cyBmcm9tIGEgR2VzdHVyZVRhcERvd24gYXJlIGRpc21pc3NlZCBieSBhIEdlc3R1cmVUYXAg
b24gdGhlIGhvdmVyIGVsZW1lbnQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdy
aWQtbGF5b3V0L2dyaWQtZWxlbWVudC1jaGFuZ2UtY29sdW1ucy1yZXBhaW50LWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxlbWVudC1jaGFuZ2Ut
Y29sdW1ucy1yZXBhaW50LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lZWFiMGVkNzdmNTFmOWY4
YWE1MDRhMWYyNjE5YjYyYzEwNDMyNTViCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1jb2x1bW5zLXJlcGFpbnQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNyBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGNoYW5n
aW5nIHRoZSBncmlkLWNvbHVtbnMgbGVhZCB0byBhIHJlcGFpbnQuIFRoZSBmaW5hbCBncmlkIGVs
ZW1lbnQgc2hvdWxkIGJlIDI1MHB4ICogNTBweCwgdGhlIGdyaWQgaXRlbSBzaG91bGQgYmUgNTBw
eCAqIDUwcHguIE5vIHRyYWNlIG9mIHRoZSBlbGVtZW50cyBiZWZvcmUgdGhlIGdyaWQtY29sdW1u
cyBjaGFuZ2Ugc2hvdWxkIGJlIHNlZW4uCisocmVwYWludCByZWN0cworICAocmVjdCA4IDQ4IDEw
MCA1MCkKKyAgKHJlY3QgOCA0OCA1MCA1MCkKKyAgKHJlY3QgOCA0OCAyNTAgNTApCispCisKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxlbWVudC1j
aGFuZ2UtY29sdW1ucy1yZXBhaW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxh
eW91dC9ncmlkLWVsZW1lbnQtY2hhbmdlLWNvbHVtbnMtcmVwYWludC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjQwZWY2N2Y4MTM4MWQwMGY2Zjc0NmI0NzBjZjZlYTQ1YmM4NGZlYmMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWVsZW1lbnQtY2hhbmdl
LWNvbHVtbnMtcmVwYWludC5odG1sCkBAIC0wLDAgKzEsMzQgQEAKKzwhRE9DVFlQRSBodG1sPgor
PGh0bWw+Cis8c2NyaXB0IHNyYz0iLi4vcmVwYWludC9yZXNvdXJjZXMvdGV4dC1iYXNlZC1yZXBh
aW50LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAg
dGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0dyaWRMYXlvdXRFbmFibGVk
IiwgMSk7CisKK2Z1bmN0aW9uIHJlcGFpbnRUZXN0KCkKK3sKKyAgICB2YXIgZ3JpZEVsZW1lbnQg
PSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJncmlkIilbMF07CisgICAgZ3JpZEVs
ZW1lbnQuc3R5bGUud2Via2l0R3JpZENvbHVtbnMgPSAibWlubWF4KDUwcHgsIDE4MHB4KSAxMDBw
eCAxMDBweCI7Cit9Cit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHJ1blJlcGFpbnRU
ZXN0LCBmYWxzZSk7Cis8L3NjcmlwdD4KKzxsaW5rIGhyZWY9InJlc291cmNlcy9ncmlkLmNzcyIg
cmVsPSJzdHlsZXNoZWV0Ij4KKzxzdHlsZT4KKy5ncmlkIHsKKyAgICB3aWR0aDogLXdlYmtpdC1m
aXQtY29udGVudDsKKyAgICAtd2Via2l0LWdyaWQtcm93czogNTBweDsKKyAgICAtd2Via2l0LWdy
aWQtY29sdW1uczogbWlubWF4KDEwMHB4LCAxODBweCkgMTAwcHggbWlubWF4KDUwcHgsIDEwMHB4
KTsKK30KKy5zaXplZFRvR3JpZEFyZWEgeworICAgIGJhY2tncm91bmQtY29sb3I6IHB1cnBsZTsK
K30KKzwvc3R5bGU+Cis8Ym9keT4KKzxkaXY+IFRoaXMgdGVzdCBjaGVja3MgdGhhdCBjaGFuZ2lu
ZyB0aGUgZ3JpZC1jb2x1bW5zIGxlYWQgdG8gYSByZXBhaW50LiBUaGUgZmluYWwgZ3JpZCBlbGVt
ZW50IHNob3VsZCBiZSAyNTBweCAqIDUwcHgsIHRoZSBncmlkIGl0ZW0gc2hvdWxkIGJlIDUwcHgg
KiA1MHB4LiBObyB0cmFjZSBvZiB0aGUgZWxlbWVudHMgYmVmb3JlIHRoZSBncmlkLWNvbHVtbnMg
Y2hhbmdlIHNob3VsZCBiZSBzZWVuLjwvZGl2PgorPGRpdiBjbGFzcz0iY29uc3RyYWluZWRDb250
YWluZXIiPgorICAgIDxkaXYgY2xhc3M9ImdyaWQiPgorICAgICAgICA8ZGl2IGNsYXNzPSJzaXpl
ZFRvR3JpZEFyZWEiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWVsZW1l
bnQtY2hhbmdlLXJvd3MtcmVwYWludC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy1ncmlkLWxheW91dC9ncmlkLWVsZW1lbnQtY2hhbmdlLXJvd3MtcmVwYWludC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYmJhMWQ1YTc2NWM0ZDg5NGFhM2UzYjgwN2IzMDY5NGUyYzVkYWIzYgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQt
ZWxlbWVudC1jaGFuZ2Utcm93cy1yZXBhaW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDcgQEAK
K1RoaXMgdGVzdCBjaGVja3MgdGhhdCBjaGFuZ2luZyB0aGUgZ3JpZC1yb3dzIGxlYWQgdG8gYSBy
ZXBhaW50LiBUaGUgZmluYWwgZ3JpZCBlbGVtZW50IHNob3VsZCBiZSAxMDBweCAqIDE1MHB4LCB0
aGUgZ3JpZCBpdGVtIHNob3VsZCBiZSAxMDBweCAqIDEwMHB4LiBObyB0cmFjZSBvZiB0aGUgZWxl
bWVudHMgYmVmb3JlIHRoZSBncmlkLXJvd3MgY2hhbmdlIHNob3VsZCBiZSBzZWVuLgorKHJlcGFp
bnQgcmVjdHMKKyAgKHJlY3QgOCA0OCAxMDAgNTApCisgIChyZWN0IDggNDggMTAwIDEwMCkKKyAg
KHJlY3QgOCA0OCAxMDAgMTUwKQorKQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy1ncmlkLWxheW91dC9ncmlkLWVsZW1lbnQtY2hhbmdlLXJvd3MtcmVwYWludC5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1yb3dzLXJl
cGFpbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zN2Q3M2ExMTVjZjVhYzhmOWE1YzBkZGM4NjE1YzljNTg4
Y2Q0ZGEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlv
dXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1yb3dzLXJlcGFpbnQuaHRtbApAQCAtMCwwICsxLDM0IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPHNjcmlwdCBzcmM9Ii4uL3JlcGFpbnQvcmVzb3Vy
Y2VzL3RleHQtYmFzZWQtcmVwYWludC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgoraWYgKHdpbmRv
dy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRD
U1NHcmlkTGF5b3V0RW5hYmxlZCIsIDEpOworCitmdW5jdGlvbiByZXBhaW50VGVzdCgpCit7Cisg
ICAgdmFyIGdyaWRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiZ3Jp
ZCIpWzBdOworICAgIGdyaWRFbGVtZW50LnN0eWxlLndlYmtpdEdyaWRSb3dzID0gIjEwMHB4IDUw
cHgiOworfQord2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBydW5SZXBhaW50VGVzdCwg
ZmFsc2UpOworPC9zY3JpcHQ+Cis8bGluayBocmVmPSJyZXNvdXJjZXMvZ3JpZC5jc3MiIHJlbD0i
c3R5bGVzaGVldCI+Cis8c3R5bGU+CisuZ3JpZCB7CisgICAgd2lkdGg6IC13ZWJraXQtZml0LWNv
bnRlbnQ7CisgICAgLXdlYmtpdC1ncmlkLXJvd3M6IDUwcHggMTAwcHg7CisgICAgLXdlYmtpdC1n
cmlkLWNvbHVtbnM6IDEwMHB4OworfQorLnNpemVkVG9HcmlkQXJlYSB7CisgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcHVycGxlOworfQorPC9zdHlsZT4KKzxib2R5PgorPGRpdj5UaGlzIHRlc3QgY2hl
Y2tzIHRoYXQgY2hhbmdpbmcgdGhlIGdyaWQtcm93cyBsZWFkIHRvIGEgcmVwYWludC4gVGhlIGZp
bmFsIGdyaWQgZWxlbWVudCBzaG91bGQgYmUgMTAwcHggKiAxNTBweCwgdGhlIGdyaWQgaXRlbSBz
aG91bGQgYmUgMTAwcHggKiAxMDBweC4gTm8gdHJhY2Ugb2YgdGhlIGVsZW1lbnRzIGJlZm9yZSB0
aGUgZ3JpZC1yb3dzIGNoYW5nZSBzaG91bGQgYmUgc2Vlbi48L2Rpdj4KKzxkaXYgY2xhc3M9ImNv
bnN0cmFpbmVkQ29udGFpbmVyIj4KKyAgICA8ZGl2IGNsYXNzPSJncmlkIj4KKyAgICAgICAgPGRp
diBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIj48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlv
dXQvZ3JpZC1pdGVtLWNoYW5nZS1jb2x1bW4tcmVwYWludC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tY2hhbmdlLWNvbHVtbi1yZXBhaW50
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNGRlYzA2YzI4OThjMDI4ODM2NDM2ODQ4MGQ1ZmVj
ZjUyZjJkOTc3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1s
YXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1jb2x1bW4tcmVwYWludC1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw4IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgY2hhbmdpbmcgdGhlIGdyaWQtY29sdW1u
IG9uIGEgZ3JpZCBpdGVtIHByb3Blcmx5IHJlcGFpbnQuIFRoZSBmaW5hbCBncmlkIGl0ZW0gc2hv
dWxkIGJlIDUwcHggKiA1MHB4LiBUaGVyZSBzaG91bGQgYmUgbm8gdHJhY2Ugb2YgdGhlIGdyaWQg
aXRlbSBhdCB0aGUgb2xkIHBvc2l0aW9uLgorKHJlcGFpbnQgcmVjdHMKKyAgKHJlY3QgOCA0OCAx
MDAgNTApCisgIChyZWN0IDggNDggNTAgNTApCisgIChyZWN0IDggNDggMTAwIDUwKQorICAocmVj
dCAyMDggNDggNTAgNTApCispCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdy
aWQtbGF5b3V0L2dyaWQtaXRlbS1jaGFuZ2UtY29sdW1uLXJlcGFpbnQuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1jaGFuZ2UtY29sdW1uLXJlcGFpbnQu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5jNjA0ZDhhNDNjNDM1MTViMjY1MGNhYmY1OTdmODQ0ODlkNzNkMmQz
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3Jp
ZC1pdGVtLWNoYW5nZS1jb2x1bW4tcmVwYWludC5odG1sCkBAIC0wLDAgKzEsMzQgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+Cis8c2NyaXB0IHNyYz0iLi4vcmVwYWludC9yZXNvdXJjZXMvdGV4
dC1iYXNlZC1yZXBhaW50LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RS
dW5uZXIpCisgICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdENTU0dyaWRM
YXlvdXRFbmFibGVkIiwgMSk7CisKK2Z1bmN0aW9uIHJlcGFpbnRUZXN0KCkKK3sKKyAgICB2YXIg
Z3JpZEl0ZW0gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCJzaXplZFRvR3JpZEFy
ZWEiKVswXTsKKyAgICBncmlkSXRlbS5zdHlsZS53ZWJraXRHcmlkQ29sdW1uID0gIjMiOworfQor
d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBydW5SZXBhaW50VGVzdCwgZmFsc2UpOwor
PC9zY3JpcHQ+Cis8bGluayBocmVmPSJyZXNvdXJjZXMvZ3JpZC5jc3MiIHJlbD0ic3R5bGVzaGVl
dCI+Cis8c3R5bGU+CisuZ3JpZCB7CisgICAgd2lkdGg6IC13ZWJraXQtZml0LWNvbnRlbnQ7Cisg
ICAgLXdlYmtpdC1ncmlkLXJvd3M6IDUwcHg7CisgICAgLXdlYmtpdC1ncmlkLWNvbHVtbnM6IG1p
bm1heCgxMDBweCwgMTgwcHgpIDEwMHB4IG1pbm1heCg1MHB4LCAxMDBweCk7Cit9Cisuc2l6ZWRU
b0dyaWRBcmVhIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBwdXJwbGU7Cit9Cis8L3N0eWxlPgor
PGJvZHk+Cis8ZGl2PlRoaXMgdGVzdCBjaGVja3MgdGhhdCBjaGFuZ2luZyB0aGUgZ3JpZC1jb2x1
bW4gb24gYSBncmlkIGl0ZW0gcHJvcGVybHkgcmVwYWludC4gVGhlIGZpbmFsIGdyaWQgaXRlbSBz
aG91bGQgYmUgNTBweCAqIDUwcHguIFRoZXJlIHNob3VsZCBiZSBubyB0cmFjZSBvZiB0aGUgZ3Jp
ZCBpdGVtIGF0IHRoZSBvbGQgcG9zaXRpb24uPC9kaXY+Cis8ZGl2IGNsYXNzPSJjb25zdHJhaW5l
ZENvbnRhaW5lciI+CisgICAgPGRpdiBjbGFzcz0iZ3JpZCI+CisgICAgICAgIDxkaXYgY2xhc3M9
InNpemVkVG9HcmlkQXJlYSI+PC9kaXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQt
aXRlbS1jaGFuZ2Utcm93LXJlcGFpbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9j
c3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1yb3ctcmVwYWludC1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNTM1MmU2YTMzZTljMGM2Nzg3NjE5MTllZTk5MGZhYjRlN2FjZDI1NgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRl
bS1jaGFuZ2Utcm93LXJlcGFpbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorVGhpcyB0
ZXN0IGNoZWNrcyB0aGF0IGNoYW5naW5nIHRoZSBncmlkLXJvdyBvbiBhIGdyaWQgaXRlbSBwcm9w
ZXJseSByZXBhaW50LiBUaGUgZmluYWwgZ3JpZCBpdGVtIHNob3VsZCBiZSAxMDBweCAqIDEwMHB4
LiBUaGVyZSBzaG91bGQgYmUgbm8gdHJhY2Ugb2YgdGhlIGdyaWQgaXRlbSBhdCB0aGUgb2xkIHBv
c2l0aW9uLgorKHJlcGFpbnQgcmVjdHMKKyAgKHJlY3QgOCA0OCAxMDAgNTApCisgIChyZWN0IDgg
NDggMTAwIDEwMCkKKyAgKHJlY3QgOCA0OCAxMDAgNTApCisgIChyZWN0IDggOTggMTAwIDEwMCkK
KykKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1p
dGVtLWNoYW5nZS1yb3ctcmVwYWludC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1s
YXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1yb3ctcmVwYWludC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM3NWJl
M2E5YmJlMmE2ZTQzYzJiNzAzOWU3ZDU3Y2NiNWM4MTQ3Y2UKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWl0ZW0tY2hhbmdlLXJvdy1yZXBh
aW50Lmh0bWwKQEAgLTAsMCArMSwzMyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzY3Jp
cHQgc3JjPSIuLi9yZXBhaW50L3Jlc291cmNlcy90ZXh0LWJhc2VkLXJlcGFpbnQuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTR3JpZExheW91dEVuYWJsZWQiLCAxKTsKKworZnVu
Y3Rpb24gcmVwYWludFRlc3QoKQoreworICAgIHZhciBncmlkSXRlbSA9IGRvY3VtZW50LmdldEVs
ZW1lbnRzQnlDbGFzc05hbWUoInNpemVkVG9HcmlkQXJlYSIpWzBdOworICAgIGdyaWRJdGVtLnN0
eWxlLndlYmtpdEdyaWRSb3cgPSAiMiI7Cit9Cit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9h
ZCIsIHJ1blJlcGFpbnRUZXN0LCBmYWxzZSk7Cis8L3NjcmlwdD4KKzxsaW5rIGhyZWY9InJlc291
cmNlcy9ncmlkLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KKzxzdHlsZT4KKy5ncmlkIHsKKyAgICAt
d2Via2l0LWdyaWQtcm93czogNTBweCAxMDBweDsKKyAgICAtd2Via2l0LWdyaWQtY29sdW1uczog
MTAwcHggNTBweDsKKyAgICAvKiBNYWtlIHRoZSBncmlkIHNocmluayB0byBmaXQuICovCisgICAg
cG9zaXRpb246IGFic29sdXRlOworfQorLnNpemVkVG9HcmlkQXJlYSB7CisgICAgYmFja2dyb3Vu
ZC1jb2xvcjogcHVycGxlOworfQorPC9zdHlsZT4KKzxib2R5PgorPGRpdj5UaGlzIHRlc3QgY2hl
Y2tzIHRoYXQgY2hhbmdpbmcgdGhlIGdyaWQtcm93IG9uIGEgZ3JpZCBpdGVtIHByb3Blcmx5IHJl
cGFpbnQuIFRoZSBmaW5hbCBncmlkIGl0ZW0gc2hvdWxkIGJlIDEwMHB4ICogMTAwcHguIFRoZXJl
IHNob3VsZCBiZSBubyB0cmFjZSBvZiB0aGUgZ3JpZCBpdGVtIGF0IHRoZSBvbGQgcG9zaXRpb24u
PC9kaXY+Cis8ZGl2IGNsYXNzPSJncmlkIj4KKyAgICA8ZGl2IGNsYXNzPSJzaXplZFRvR3JpZEFy
ZWEiPjwvZGl2PgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>194090</attachid>
            <date>2013-03-20 11:17:24 -0700</date>
            <delta_ts>2013-03-20 11:52:24 -0700</delta_ts>
            <desc>Fixed failure by switching the text to Ahem with a fixed font size.</desc>
            <filename>bug-112749-20130320111313.patch</filename>
            <type>text/plain</type>
            <size>12593</size>
            <attacher name="Julien Chaffraix">jchaffraix</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ2MzYyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M5NjlmNWEyODczOGIz
NDM1MDRmYzZkMTM4OWIzNzdjNmRiM2Q4Ni4uMTJiNGVkZDQ5NzNlZGJiMTllY2RmYWNiZDY1Y2M3
N2NiYWE0ZjIxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTAzLTIwICBKdWxp
ZW4gQ2hhZmZyYWl4ICA8amNoYWZmcmFpeEB3ZWJraXQub3JnPgorCisgICAgICAgIFtDU1MgR3Jp
ZCBMYXlvdXRdIEltcHJvcGVyIHJlcGFpbnRpbmcgd2hlbiBncmlkIGl0ZW0gY2hhbmdlIHRoZWly
IHBvc2l0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMTI3NDkKKworICAgICAgICBSZXZpZXdlZCBieSBPamFuIFZhZmFpLgorCisgICAgICAgIFRl
c3RzOiBmYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWVsZW1lbnQtY2hhbmdlLWNvbHVtbnMtcmVw
YWludC5odG1sCisgICAgICAgICAgICAgICBmYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWVsZW1l
bnQtY2hhbmdlLXJvd3MtcmVwYWludC5odG1sCisgICAgICAgICAgICAgICBmYXN0L2Nzcy1ncmlk
LWxheW91dC9ncmlkLWl0ZW0tY2hhbmdlLWNvbHVtbi1yZXBhaW50Lmh0bWwKKyAgICAgICAgICAg
ICAgIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1jaGFuZ2Utcm93LXJlcGFpbnQuaHRt
bAorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyR3JpZDo6bGF5b3V0R3JpZEl0ZW1zKToKKyAgICAgICAgQWRkZWQgYSBjYWxsIHRv
IHJlcGFpbnREdXJpbmdMYXlvdXRJZk1vdmVkIHRvIHJlcGFpbnQgbW92aW5nIGdyaWQgaXRlbXMu
CisKIDIwMTMtMDMtMjAgIFhpbmduYW4gV2FuZyAgPHhpbmduYW4ud2FuZ0BpbnRlbC5jb20+CiAK
ICAgICAgICAgQVNTRVJUSU9OIEZBSUxFRDogIW1fcmVuZGVyaW5nQXV0b21hdGljUHVsbE5vZGVz
LnNpemUoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckdyaWQuY3BwCmluZGV4IDJkYzg0
NTZkNWIyNTJhNjE4N2MyMThmOWU0Yzg0YTVlOWQ0NDc4M2EuLjQ0MDI4MDY4NDBkMWVkOTVmYmVm
NTI3Mzg4YWI1MGM0ZmM5MDNlZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJHcmlkLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyR3Jp
ZC5jcHAKQEAgLTY2Myw2ICs2NjMsOCBAQCB2b2lkIFJlbmRlckdyaWQ6OmxheW91dEdyaWRJdGVt
cygpCiAgICAgICAgIGNoaWxkLT5zZXRPdmVycmlkZUNvbnRhaW5pbmdCbG9ja0NvbnRlbnRMb2dp
Y2FsV2lkdGgob3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbFdpZHRoKTsKICAg
ICAgICAgY2hpbGQtPnNldE92ZXJyaWRlQ29udGFpbmluZ0Jsb2NrQ29udGVudExvZ2ljYWxIZWln
aHQob3ZlcnJpZGVDb250YWluaW5nQmxvY2tDb250ZW50TG9naWNhbEhlaWdodCk7CiAKKyAgICAg
ICAgTGF5b3V0UmVjdCBvbGRDaGlsZFJlY3QgPSBjaGlsZC0+ZnJhbWVSZWN0KCk7CisKICAgICAg
ICAgLy8gRklYTUU6IEdyaWQgaXRlbXMgc2hvdWxkIHN0cmV0Y2ggdG8gZmlsbCB0aGVpciBjZWxs
cy4gT25jZSB3ZQogICAgICAgICAvLyBpbXBsZW1lbnQgZ3JpZC17Y29sdW1uLHJvd30tYWxpZ24s
IHdlIGNhbiBhbHNvIHNocmluayB0byBmaXQuIEZvcgogICAgICAgICAvLyBub3csIGp1c3Qgc2l6
ZSBhcyBpZiB3ZSB3ZXJlIGEgcmVndWxhciBjaGlsZC4KQEAgLTY3MCw2ICs2NzIsMTIgQEAgdm9p
ZCBSZW5kZXJHcmlkOjpsYXlvdXRHcmlkSXRlbXMoKQogCiAgICAgICAgIC8vIEZJWE1FOiBIYW5k
bGUgYm9yZGVyICYgcGFkZGluZyBvbiB0aGUgZ3JpZCBlbGVtZW50LgogICAgICAgICBjaGlsZC0+
c2V0TG9naWNhbExvY2F0aW9uKGNoaWxkUG9zaXRpb24pOworCisgICAgICAgIC8vIElmIHRoZSBj
aGlsZCBtb3ZlZCwgd2UgaGF2ZSB0byByZXBhaW50IGl0IGFzIHdlbGwgYXMgYW55IGZsb2F0aW5n
L3Bvc2l0aW9uZWQKKyAgICAgICAgLy8gZGVzY2VuZGFudHMuIEFuIGV4Y2VwdGlvbiBpcyBpZiB3
ZSBuZWVkIGEgbGF5b3V0LiBJbiB0aGlzIGNhc2UsIHdlIGtub3cgd2UncmUgZ29pbmcgdG8KKyAg
ICAgICAgLy8gcmVwYWludCBvdXJzZWx2ZXMgKGFuZCB0aGUgY2hpbGQpIGFueXdheS4KKyAgICAg
ICAgaWYgKCFzZWxmTmVlZHNMYXlvdXQoKSAmJiBjaGlsZC0+Y2hlY2tGb3JSZXBhaW50RHVyaW5n
TGF5b3V0KCkpCisgICAgICAgICAgICBjaGlsZC0+cmVwYWludER1cmluZ0xheW91dElmTW92ZWQo
b2xkQ2hpbGRSZWN0KTsKICAgICB9CiAKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHJvd1Ry
YWNrcy5zaXplKCk7ICsraSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlZDJhYTdlNDdiYjMyNDMwMTkyNDRiNzEyNmFiM2E4
Mzg5MmRkZDFhLi4wZGEyNjcyODMzNjlmOTM2OGVjZWE0ZGNmNjMzYzY0OWViMGZiMjU4IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjMgQEAKKzIwMTMtMDMtMjAgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZy
YWl4QHdlYmtpdC5vcmc+CisKKyAgICAgICAgW0NTUyBHcmlkIExheW91dF0gSW1wcm9wZXIgcmVw
YWludGluZyB3aGVuIGdyaWQgaXRlbSBjaGFuZ2UgdGhlaXIgcG9zaXRpb24KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExMjc0OQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE9qYW4gVmFmYWkuCisKKyAgICAgICAgKiBmYXN0L2Nzcy1ncmlkLWxheW91dC9n
cmlkLWVsZW1lbnQtY2hhbmdlLWNvbHVtbnMtcmVwYWludC1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxlbWVudC1jaGFuZ2UtY29sdW1u
cy1yZXBhaW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2dy
aWQtZWxlbWVudC1jaGFuZ2Utcm93cy1yZXBhaW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1yb3dzLXJlcGFp
bnQuaHRtbDogQWRkZWQuCisgICAgICAgIFRob3NlIGFyZSBhZGRlZCB0ZXN0aW5nIGZvciB0aGUg
Z3JpZCBlbGVtZW50J3MgY2hhbmdlLiBUaGV5IHdlcmUgYWxyZWFkeSBwYXNzaW5nIGR1ZSB0bwor
ICAgICAgICB0aGUgTGF5b3V0UmVwYWludGVyIGluIFJlbmRlckdyaWQ6OmxheW91dEJsb2NrLgor
CisgICAgICAgICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1jb2x1bW4t
cmVwYWludC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5
b3V0L2dyaWQtaXRlbS1jaGFuZ2UtY29sdW1uLXJlcGFpbnQuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1yb3ctcmVwYWludC1leHBl
Y3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRl
bS1jaGFuZ2Utcm93LXJlcGFpbnQuaHRtbDogQWRkZWQuCisgICAgICAgIE5ldyB0ZXN0aW5nLCB3
YXMgZmFpbGluZyBiZWZvcmUgdGhpcyBjaGFuZ2UuCisKIDIwMTMtMDMtMjAgIFJvdXNsYW4gU29s
b21ha2hpbiAgPHJvdXNsYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENvcHktcGFzdGUgc2hv
dWxkIG5vdCBzcGVsbGNoZWNrIHdoZW4gY29udGludW91cyBzcGVsbGNoZWNrIGlzIHR1cm5lZCBv
ZmYKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxl
bWVudC1jaGFuZ2UtY29sdW1ucy1yZXBhaW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxlbWVudC1jaGFuZ2UtY29sdW1ucy1yZXBhaW50LWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMmU1MDExNmZlZGI0NGZjZmRhNWExY2QzMmQ2YjQyM2U2
OGJhOWMxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlv
dXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1jb2x1bW5zLXJlcGFpbnQtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNyBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGNoYW5naW5nIHRoZSBncmlkLWNvbHVt
bnMgbGVhZCB0byBhIHJlcGFpbnQuIFRoZSBmaW5hbCBncmlkIGVsZW1lbnQgc2hvdWxkIGJlIDI1
MHB4ICogNTBweCwgdGhlIGdyaWQgaXRlbSBzaG91bGQgYmUgNTBweCAqIDUwcHguIE5vIHRyYWNl
IG9mIHRoZSBlbGVtZW50cyBiZWZvcmUgdGhlIGdyaWQtY29sdW1ucyBjaGFuZ2Ugc2hvdWxkIGJl
IHNlZW4uCisocmVwYWludCByZWN0cworICAocmVjdCA4IDM4IDEwMCA1MCkKKyAgKHJlY3QgOCAz
OCA1MCA1MCkKKyAgKHJlY3QgOCAzOCAyNTAgNTApCispCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxlbWVudC1jaGFuZ2UtY29sdW1ucy1yZXBh
aW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWVsZW1lbnQt
Y2hhbmdlLWNvbHVtbnMtcmVwYWludC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmNjZDI0YzBkYTAzZGY1Yzcz
MmU4ZGFlNWY4ODZkZTE4ZjNmOTI2MDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2Nzcy1ncmlkLWxheW91dC9ncmlkLWVsZW1lbnQtY2hhbmdlLWNvbHVtbnMtcmVwYWludC5o
dG1sCkBAIC0wLDAgKzEsMzggQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8c2NyaXB0IHNy
Yz0iLi4vcmVwYWludC9yZXNvdXJjZXMvdGV4dC1iYXNlZC1yZXBhaW50LmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQ+CitpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgdGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdENTU0dyaWRMYXlvdXRFbmFibGVkIiwgMSk7CisKK2Z1bmN0aW9u
IHJlcGFpbnRUZXN0KCkKK3sKKyAgICB2YXIgZ3JpZEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVt
ZW50c0J5Q2xhc3NOYW1lKCJncmlkIilbMF07CisgICAgZ3JpZEVsZW1lbnQuc3R5bGUud2Via2l0
R3JpZENvbHVtbnMgPSAibWlubWF4KDUwcHgsIDE4MHB4KSAxMDBweCAxMDBweCI7Cit9Cit3aW5k
b3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHJ1blJlcGFpbnRUZXN0LCBmYWxzZSk7Cis8L3Nj
cmlwdD4KKzxsaW5rIGhyZWY9InJlc291cmNlcy9ncmlkLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4K
KzxzdHlsZT4KK2JvZHkgeworICAgIGZvbnQ6IDEwcHgvMSBBaGVtOworfQorCisuZ3JpZCB7Cisg
ICAgd2lkdGg6IC13ZWJraXQtZml0LWNvbnRlbnQ7CisgICAgLXdlYmtpdC1ncmlkLXJvd3M6IDUw
cHg7CisgICAgLXdlYmtpdC1ncmlkLWNvbHVtbnM6IG1pbm1heCgxMDBweCwgMTgwcHgpIDEwMHB4
IG1pbm1heCg1MHB4LCAxMDBweCk7Cit9Cisuc2l6ZWRUb0dyaWRBcmVhIHsKKyAgICBiYWNrZ3Jv
dW5kLWNvbG9yOiBwdXJwbGU7Cit9Cis8L3N0eWxlPgorPGJvZHk+Cis8ZGl2PiBUaGlzIHRlc3Qg
Y2hlY2tzIHRoYXQgY2hhbmdpbmcgdGhlIGdyaWQtY29sdW1ucyBsZWFkIHRvIGEgcmVwYWludC4g
VGhlIGZpbmFsIGdyaWQgZWxlbWVudCBzaG91bGQgYmUgMjUwcHggKiA1MHB4LCB0aGUgZ3JpZCBp
dGVtIHNob3VsZCBiZSA1MHB4ICogNTBweC4gTm8gdHJhY2Ugb2YgdGhlIGVsZW1lbnRzIGJlZm9y
ZSB0aGUgZ3JpZC1jb2x1bW5zIGNoYW5nZSBzaG91bGQgYmUgc2Vlbi48L2Rpdj4KKzxkaXYgY2xh
c3M9ImNvbnN0cmFpbmVkQ29udGFpbmVyIj4KKyAgICA8ZGl2IGNsYXNzPSJncmlkIj4KKyAgICAg
ICAgPGRpdiBjbGFzcz0ic2l6ZWRUb0dyaWRBcmVhIj48L2Rpdj4KKyAgICA8L2Rpdj4KKzwvZGl2
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3Jp
ZC1sYXlvdXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1yb3dzLXJlcGFpbnQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1yb3dz
LXJlcGFpbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZhNWI1Mjg1MWVjNTRjMjUzYjQ1NjJm
ZmZiOTA4ZTg2OTcxMzEzMGQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nz
cy1ncmlkLWxheW91dC9ncmlkLWVsZW1lbnQtY2hhbmdlLXJvd3MtcmVwYWludC1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw3IEBACitUaGlzIHRlc3QgY2hlY2tzIHRoYXQgY2hhbmdpbmcgdGhlIGdy
aWQtcm93cyBsZWFkIHRvIGEgcmVwYWludC4gVGhlIGZpbmFsIGdyaWQgZWxlbWVudCBzaG91bGQg
YmUgMTAwcHggKiAxNTBweCwgdGhlIGdyaWQgaXRlbSBzaG91bGQgYmUgMTAwcHggKiAxMDBweC4g
Tm8gdHJhY2Ugb2YgdGhlIGVsZW1lbnRzIGJlZm9yZSB0aGUgZ3JpZC1yb3dzIGNoYW5nZSBzaG91
bGQgYmUgc2Vlbi4KKyhyZXBhaW50IHJlY3RzCisgIChyZWN0IDggMzggMTAwIDUwKQorICAocmVj
dCA4IDM4IDEwMCAxMDApCisgIChyZWN0IDggMzggMTAwIDE1MCkKKykKKwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1lbGVtZW50LWNoYW5nZS1yb3dz
LXJlcGFpbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxl
bWVudC1jaGFuZ2Utcm93cy1yZXBhaW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDY4MzNlZTY0NzUyYmIw
OGE0NWRhNmQ1MjQ3MTE5NmI5MTJhMDFhNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtZWxlbWVudC1jaGFuZ2Utcm93cy1yZXBhaW50Lmh0
bWwKQEAgLTAsMCArMSwzOCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzY3JpcHQgc3Jj
PSIuLi9yZXBhaW50L3Jlc291cmNlcy90ZXh0LWJhc2VkLXJlcGFpbnQuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0Q1NTR3JpZExheW91dEVuYWJsZWQiLCAxKTsKKworZnVuY3Rpb24g
cmVwYWludFRlc3QoKQoreworICAgIHZhciBncmlkRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1l
bnRzQnlDbGFzc05hbWUoImdyaWQiKVswXTsKKyAgICBncmlkRWxlbWVudC5zdHlsZS53ZWJraXRH
cmlkUm93cyA9ICIxMDBweCA1MHB4IjsKK30KK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2Fk
IiwgcnVuUmVwYWludFRlc3QsIGZhbHNlKTsKKzwvc2NyaXB0PgorPGxpbmsgaHJlZj0icmVzb3Vy
Y2VzL2dyaWQuY3NzIiByZWw9InN0eWxlc2hlZXQiPgorPHN0eWxlPgorYm9keSB7CisgICAgZm9u
dDogMTBweC8xIEFoZW07Cit9CisKKy5ncmlkIHsKKyAgICB3aWR0aDogLXdlYmtpdC1maXQtY29u
dGVudDsKKyAgICAtd2Via2l0LWdyaWQtcm93czogNTBweCAxMDBweDsKKyAgICAtd2Via2l0LWdy
aWQtY29sdW1uczogMTAwcHg7Cit9Cisuc2l6ZWRUb0dyaWRBcmVhIHsKKyAgICBiYWNrZ3JvdW5k
LWNvbG9yOiBwdXJwbGU7Cit9Cis8L3N0eWxlPgorPGJvZHk+Cis8ZGl2PlRoaXMgdGVzdCBjaGVj
a3MgdGhhdCBjaGFuZ2luZyB0aGUgZ3JpZC1yb3dzIGxlYWQgdG8gYSByZXBhaW50LiBUaGUgZmlu
YWwgZ3JpZCBlbGVtZW50IHNob3VsZCBiZSAxMDBweCAqIDE1MHB4LCB0aGUgZ3JpZCBpdGVtIHNo
b3VsZCBiZSAxMDBweCAqIDEwMHB4LiBObyB0cmFjZSBvZiB0aGUgZWxlbWVudHMgYmVmb3JlIHRo
ZSBncmlkLXJvd3MgY2hhbmdlIHNob3VsZCBiZSBzZWVuLjwvZGl2PgorPGRpdiBjbGFzcz0iY29u
c3RyYWluZWRDb250YWluZXIiPgorICAgIDxkaXYgY2xhc3M9ImdyaWQiPgorICAgICAgICA8ZGl2
IGNsYXNzPSJzaXplZFRvR3JpZEFyZWEiPjwvZGl2PgorICAgIDwvZGl2PgorPC9kaXY+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91
dC9ncmlkLWl0ZW0tY2hhbmdlLWNvbHVtbi1yZXBhaW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1jaGFuZ2UtY29sdW1uLXJlcGFpbnQt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYzNjUwZGRiYmQxNDJmYzFiMzZkNzgxYTM0OTk2OWFl
MmY5NGMyMjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxh
eW91dC9ncmlkLWl0ZW0tY2hhbmdlLWNvbHVtbi1yZXBhaW50LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDggQEAKK1RoaXMgdGVzdCBjaGVja3MgdGhhdCBjaGFuZ2luZyB0aGUgZ3JpZC1jb2x1bW4g
b24gYSBncmlkIGl0ZW0gcHJvcGVybHkgcmVwYWludC4gVGhlIGZpbmFsIGdyaWQgaXRlbSBzaG91
bGQgYmUgNTBweCAqIDUwcHguIFRoZXJlIHNob3VsZCBiZSBubyB0cmFjZSBvZiB0aGUgZ3JpZCBp
dGVtIGF0IHRoZSBvbGQgcG9zaXRpb24uCisocmVwYWludCByZWN0cworICAocmVjdCA4IDM4IDEw
MCA1MCkKKyAgKHJlY3QgOCAzOCA1MCA1MCkKKyAgKHJlY3QgOCAzOCAxMDAgNTApCisgIChyZWN0
IDIwOCAzOCA1MCA1MCkKKykKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3Jp
ZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1jb2x1bW4tcmVwYWludC5odG1sIGIvTGF5b3V0VGVz
dHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1jb2x1bW4tcmVwYWludC5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjNiYWYyYTk2OTVmMThkZDIzMzg5YWIzZTYxMDliMDMyYzY3Nzk1MDcK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1ncmlkLWxheW91dC9ncmlk
LWl0ZW0tY2hhbmdlLWNvbHVtbi1yZXBhaW50Lmh0bWwKQEAgLTAsMCArMSwzOCBAQAorPCFET0NU
WVBFIGh0bWw+Cis8aHRtbD4KKzxzY3JpcHQgc3JjPSIuLi9yZXBhaW50L3Jlc291cmNlcy90ZXh0
LWJhc2VkLXJlcGFpbnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2lmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0Q1NTR3JpZExh
eW91dEVuYWJsZWQiLCAxKTsKKworZnVuY3Rpb24gcmVwYWludFRlc3QoKQoreworICAgIHZhciBn
cmlkSXRlbSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoInNpemVkVG9HcmlkQXJl
YSIpWzBdOworICAgIGdyaWRJdGVtLnN0eWxlLndlYmtpdEdyaWRDb2x1bW4gPSAiMyI7Cit9Cit3
aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHJ1blJlcGFpbnRUZXN0LCBmYWxzZSk7Cis8
L3NjcmlwdD4KKzxsaW5rIGhyZWY9InJlc291cmNlcy9ncmlkLmNzcyIgcmVsPSJzdHlsZXNoZWV0
Ij4KKzxzdHlsZT4KK2JvZHkgeworICAgIGZvbnQ6IDEwcHgvMSBBaGVtOworfQorCisuZ3JpZCB7
CisgICAgd2lkdGg6IC13ZWJraXQtZml0LWNvbnRlbnQ7CisgICAgLXdlYmtpdC1ncmlkLXJvd3M6
IDUwcHg7CisgICAgLXdlYmtpdC1ncmlkLWNvbHVtbnM6IG1pbm1heCgxMDBweCwgMTgwcHgpIDEw
MHB4IG1pbm1heCg1MHB4LCAxMDBweCk7Cit9Cisuc2l6ZWRUb0dyaWRBcmVhIHsKKyAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBwdXJwbGU7Cit9Cis8L3N0eWxlPgorPGJvZHk+Cis8ZGl2PlRoaXMgdGVz
dCBjaGVja3MgdGhhdCBjaGFuZ2luZyB0aGUgZ3JpZC1jb2x1bW4gb24gYSBncmlkIGl0ZW0gcHJv
cGVybHkgcmVwYWludC4gVGhlIGZpbmFsIGdyaWQgaXRlbSBzaG91bGQgYmUgNTBweCAqIDUwcHgu
IFRoZXJlIHNob3VsZCBiZSBubyB0cmFjZSBvZiB0aGUgZ3JpZCBpdGVtIGF0IHRoZSBvbGQgcG9z
aXRpb24uPC9kaXY+Cis8ZGl2IGNsYXNzPSJjb25zdHJhaW5lZENvbnRhaW5lciI+CisgICAgPGRp
diBjbGFzcz0iZ3JpZCI+CisgICAgICAgIDxkaXYgY2xhc3M9InNpemVkVG9HcmlkQXJlYSI+PC9k
aXY+CisgICAgPC9kaXY+Cis8L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1jaGFuZ2Utcm93LXJlcGFp
bnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1p
dGVtLWNoYW5nZS1yb3ctcmVwYWludC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmI4YWUzZWM0
NGJlZThjZDBiYTcwZTczNWM2NDYzYTQyODFhODljNgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvY3NzLWdyaWQtbGF5b3V0L2dyaWQtaXRlbS1jaGFuZ2Utcm93LXJlcGFpbnQt
ZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOCBAQAorVGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGNoYW5n
aW5nIHRoZSBncmlkLXJvdyBvbiBhIGdyaWQgaXRlbSBwcm9wZXJseSByZXBhaW50LiBUaGUgZmlu
YWwgZ3JpZCBpdGVtIHNob3VsZCBiZSAxMDBweCAqIDEwMHB4LiBUaGVyZSBzaG91bGQgYmUgbm8g
dHJhY2Ugb2YgdGhlIGdyaWQgaXRlbSBhdCB0aGUgb2xkIHBvc2l0aW9uLgorKHJlcGFpbnQgcmVj
dHMKKyAgKHJlY3QgOCAzOCAxMDAgNTApCisgIChyZWN0IDggMzggMTAwIDEwMCkKKyAgKHJlY3Qg
OCAzOCAxMDAgNTApCisgIChyZWN0IDggODggMTAwIDEwMCkKKykKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5nZS1yb3ctcmVwYWlu
dC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ3JpZC1sYXlvdXQvZ3JpZC1pdGVtLWNoYW5n
ZS1yb3ctcmVwYWludC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEzYTgzZTFiYzA1OTFlNzU5ZWRhMDE2YWJi
NjE4NmY4ZGMyZjYyZmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1n
cmlkLWxheW91dC9ncmlkLWl0ZW0tY2hhbmdlLXJvdy1yZXBhaW50Lmh0bWwKQEAgLTAsMCArMSwz
NyBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzY3JpcHQgc3JjPSIuLi9yZXBhaW50L3Jl
c291cmNlcy90ZXh0LWJhc2VkLXJlcGFpbnQuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2lmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0Q1NTR3JpZExheW91dEVuYWJsZWQiLCAxKTsKKworZnVuY3Rpb24gcmVwYWludFRlc3QoKQor
eworICAgIHZhciBncmlkSXRlbSA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoInNp
emVkVG9HcmlkQXJlYSIpWzBdOworICAgIGdyaWRJdGVtLnN0eWxlLndlYmtpdEdyaWRSb3cgPSAi
MiI7Cit9Cit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHJ1blJlcGFpbnRUZXN0LCBm
YWxzZSk7Cis8L3NjcmlwdD4KKzxsaW5rIGhyZWY9InJlc291cmNlcy9ncmlkLmNzcyIgcmVsPSJz
dHlsZXNoZWV0Ij4KKzxzdHlsZT4KK2JvZHkgeworICAgIGZvbnQ6IDEwcHgvMSBBaGVtOworfQor
CisuZ3JpZCB7CisgICAgLXdlYmtpdC1ncmlkLXJvd3M6IDUwcHggMTAwcHg7CisgICAgLXdlYmtp
dC1ncmlkLWNvbHVtbnM6IDEwMHB4IDUwcHg7CisgICAgLyogTWFrZSB0aGUgZ3JpZCBzaHJpbmsg
dG8gZml0LiAqLworICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKK30KKy5zaXplZFRvR3JpZEFyZWEg
eworICAgIGJhY2tncm91bmQtY29sb3I6IHB1cnBsZTsKK30KKzwvc3R5bGU+Cis8Ym9keT4KKzxk
aXY+VGhpcyB0ZXN0IGNoZWNrcyB0aGF0IGNoYW5naW5nIHRoZSBncmlkLXJvdyBvbiBhIGdyaWQg
aXRlbSBwcm9wZXJseSByZXBhaW50LiBUaGUgZmluYWwgZ3JpZCBpdGVtIHNob3VsZCBiZSAxMDBw
eCAqIDEwMHB4LiBUaGVyZSBzaG91bGQgYmUgbm8gdHJhY2Ugb2YgdGhlIGdyaWQgaXRlbSBhdCB0
aGUgb2xkIHBvc2l0aW9uLjwvZGl2PgorPGRpdiBjbGFzcz0iZ3JpZCI+CisgICAgPGRpdiBjbGFz
cz0ic2l6ZWRUb0dyaWRBcmVhIj48L2Rpdj4KKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>