<?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>30816</bug_id>
          
          <creation_ts>2009-10-27 06:24:56 -0700</creation_ts>
          <short_desc>[GTK] Failing test fast/dom/Document/CaretRangeFromPoint/caretRangeFromPoint-in-zoom-and-scroll.html</short_desc>
          <delta_ts>2011-03-07 13:23:39 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Alejandro G. Castro">alex</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>xji</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>158166</commentid>
    <comment_count>0</comment_count>
    <who name="Alejandro G. Castro">alex</who>
    <bug_when>2009-10-27 06:24:56 -0700</bug_when>
    <thetext>The result of this test added in the patch solving the bug 30689 does not work:

--- layout-test-results/fast/dom/Document/CaretRangeFromPoint/caretRangeFromPoint-in-zoom-and-scroll-expected.txt	2009-10-27 03:22:05.414649015 -0700
+++ layout-test-results/fast/dom/Document/CaretRangeFromPoint/caretRangeFromPoint-in-zoom-and-scroll-actual.txt	2009-10-27 03:22:05.414649015 -0700
@@ -10,8 +10,8 @@
 Success
 Success
 Success
+Failure, actual: 82; expected: 93
 Success
+Failure, actual: 15; expected: 19
 Success
-Success
-Success
-Success
+Failure, actual: 53; expected: 64</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362740</commentid>
    <comment_count>1</comment_count>
      <attachid>84811</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-03-04 15:15:28 -0800</bug_when>
    <thetext>Created attachment 84811
layout test

The test fails in chromium and qt as well.
Patch to make the test cross-platform.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362751</commentid>
    <comment_count>2</comment_count>
      <attachid>84811</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-03-04 15:34:40 -0800</bug_when>
    <thetext>Comment on attachment 84811
layout test

Ah, I run it in Mac and chromium-mac. I should run in chromium-linux. Seems that the test for elementFromPoint() is not correct in chromium-linux.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362796</commentid>
    <comment_count>3</comment_count>
      <attachid>84827</attachid>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-03-04 16:37:11 -0800</bug_when>
    <thetext>Created attachment 84827
layout test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363434</commentid>
    <comment_count>4</comment_count>
      <attachid>84827</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-03-07 11:30:08 -0800</bug_when>
    <thetext>Comment on attachment 84827
layout test

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

I tested this change locally and the test is now passing on GTK+. Thanks for the cleanup!

&gt; LayoutTests/fast/dom/Document/CaretRangeFromPoint/caretRangeFromPoint-in-zoom-and-scroll.html:13
&gt; +    var expectedOffset = 29;

Might want to leave a comment here explaining where 29 comes from.

&gt; LayoutTests/fast/dom/Document/CaretRangeFromPoint/caretRangeFromPoint-in-zoom-and-scroll.html:16
&gt; +    function check(message, event)

I recommend naming this function something a bit more descriptive.

&gt; LayoutTests/fast/dom/Document/CaretRangeFromPoint/caretRangeFromPoint-in-zoom-and-scroll.html:18
&gt; +        var range =document.caretRangeFromPoint(event.clientX, event.clientY);

Missing a space after the equal sign here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363537</commentid>
    <comment_count>5</comment_count>
    <who name="Xiaomei Ji">xji</who>
    <bug_when>2011-03-07 13:23:39 -0800</bug_when>
    <thetext>Committed r80492: &lt;http://trac.webkit.org/changeset/80492&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>84811</attachid>
            <date>2011-03-04 15:15:28 -0800</date>
            <delta_ts>2011-03-04 15:34:40 -0800</delta_ts>
            <desc>layout test</desc>
            <filename>30816.v1</filename>
            <type>text/plain</type>
            <size>12720</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDgwMzc4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMDMtMDQgIFhpYW9tZWkgSmkgIDx4amlA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE1ha2UgZmFzdC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5nZUZyb21Qb2ludC9jYXJldFJh
bmdlRnJvbVBvaW50LWluLXpvb20tYW5kLXNjcm9sbC5odG1sIGxlc3MgcG9ydC1kZXBlbmRlbnQu
CisgICAgICAgIFByZWlvdXNseSwgdGhlIHRlc3QgY2xpY2tlZCBhdCBhIHNwZWNpZmljIHBpeGVs
IHNvIGRpZmZlcmVudCBmb250cyByZXN1bHQgaW4gc2xpZ2h0bHkgZGlmZmVyZW50IHBvc2l0aW9u
cy4KKyAgICAgICAgQ2hhbmdlIHRoZSB0ZXN0IHRvIGNsaWNrIG9uIGEgc3BlY2lmaWMgY2hhcmFj
dGVyIG9mZnNldC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTMwODE2CisKKyAgICAgICAgKiBmYXN0L2RvbS9Eb2N1bWVudC9DYXJldFJhbmdlRnJvbVBv
aW50L2NhcmV0UmFuZ2VGcm9tUG9pbnQtaW4tem9vbS1hbmQtc2Nyb2xsLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2RvbS9Eb2N1bWVudC9DYXJldFJhbmdlRnJvbVBvaW50L2NhcmV0UmFu
Z2VGcm9tUG9pbnQtaW4tem9vbS1hbmQtc2Nyb2xsLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0v
Y2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9T
a2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL21hYy13azIvU2tpcHBlZDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9xdC13azIvU2tpcHBlZDoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVkOgor
CiAyMDExLTAzLTAzICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5nZUZyb21Qb2ludC9jYXJldFJhbmdlRnJvbVBvaW50LWlu
LXpvb20tYW5kLXNjcm9sbC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5nZUZyb21Qb2ludC9jYXJldFJhbmdlRnJvbVBvaW50
LWluLXpvb20tYW5kLXNjcm9sbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDgwMzY2KQorKysgTGF5
b3V0VGVzdHMvZmFzdC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5nZUZyb21Qb2ludC9jYXJldFJhbmdl
RnJvbVBvaW50LWluLXpvb20tYW5kLXNjcm9sbC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTEsMTcgKzEsMyBAQAotVGhpcyBpcyB0byB0ZXN0IGRvY3VtZW50LmNhcmV0UmFuZ2VGcm9t
UG9pbnQoKSBpbiBhIHpvb20gYW5kIHNjcm9sbGVkIHBhZ2UuIFRoZSBwb2ludCBjYWxjdWxhdGlv
biBpbiBjYXJldFJhbmdlRnJvbVBvaW50KCkgaXMgd3JvbmcgaW4gYSB6b29tIGFuZCBzY3JvbGxl
ZCBwYWdlLiBTYW1lIGFwcGxpZXMgdG8gZWxlbWVudEZyb21Qb2ludCgpLgorQSBsb25nIHRleHQg
dG8gdGVzdCBkb2N1bWVudCBjYXJldFJhbmdlRnJvbVBvaW50LiBUZXN0IHNjcm9sbCwgem9vbSwg
em9vbUFuZFNjcm9sbCAuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gVGhlIEVu
ZAorUEFTUyBUZXN0IGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkKIAotSW4gYSB3aW5kb3cgbGFyZ2Ug
ZW5vdWdoIHRvIGhvbGQgdGhlIHBhZ2Ugd2l0aG91dCBhbnkgc2Nyb2xsLCBjbGljayBtb3VzZSBh
ZnRlciAiUyIgaW4gIlNhbWUiIGF0IHRoZSBhYm92ZSBzZW50ZW5jZSwgb2JzZXJ2ZSB0aGUgcHJp
bnRlZCBvZmZzZXQuCi0KLU5vdywgcGxlYXNlIHJlc2l6ZSB0aGUgd2luZG93IHRvIG1ha2UgdGhl
IHBhZ2Ugc2Nyb2xsLiBUaGVuLCBzY3JvbGwgdGhlIHBhZ2UuIENsaWNrIHRoZSBtb3VzZSBhZnRl
ciAiUyIgaW4gIlNhbWUiLCBvYnNlcnZlIHRoZSBwcmludGVkIG9mZnNldC4KLQotCi0KLVJlc3Vs
dDogIi4KLVN1Y2Nlc3MKLVN1Y2Nlc3MKLVN1Y2Nlc3MKLVN1Y2Nlc3MKLVN1Y2Nlc3MKLVN1Y2Nl
c3MKLVN1Y2Nlc3MKLVN1Y2Nlc3MKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0RvY3VtZW50
L0NhcmV0UmFuZ2VGcm9tUG9pbnQvY2FyZXRSYW5nZUZyb21Qb2ludC1pbi16b29tLWFuZC1zY3Jv
bGwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9Eb2N1bWVudC9DYXJl
dFJhbmdlRnJvbVBvaW50L2NhcmV0UmFuZ2VGcm9tUG9pbnQtaW4tem9vbS1hbmQtc2Nyb2xsLmh0
bWwJKHJldmlzaW9uIDgwMzY2KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRG9jdW1lbnQvQ2Fy
ZXRSYW5nZUZyb21Qb2ludC9jYXJldFJhbmdlRnJvbVBvaW50LWluLXpvb20tYW5kLXNjcm9sbC5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDEyOCArMSwxMTEgQEAKLTxIVE1MPgotPEhFQUQ+Ci08
VElUTEU+ZG9jdW1lbnQuY2FyZXRSYW5nZUZyb21Qb2ludCgpIE1ldGhvZDwvVElUTEU+Ci08U0NS
SVBUIExBTkdVQUdFPSJKYXZhU2NyaXB0Ij4KLWZ1bmN0aW9uIGxvZyhzdHIpIHsKLSAgICB2YXIg
bGkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaSIpOwotICAgIGxpLmFwcGVuZENoaWxkKGRv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKHN0cikpOwotICAgIHZhciBjb25zb2xlID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNvbnNvbGUiKTsKLSAgICBjb25zb2xlLmFwcGVuZENoaWxkKGxpKTsK
LX0KLQotZnVuY3Rpb24gYXNzZXJ0RXF1YWwoYWN0dWFsLCBleHBlY3RlZCkgewotICAgIGlmIChh
Y3R1YWwgIT0gZXhwZWN0ZWQpCi0gICAgICAgIGxvZygiRmFpbHVyZSwgYWN0dWFsOiAiICsgYWN0
dWFsICsgIjsgZXhwZWN0ZWQ6ICIgKyBleHBlY3RlZCk7Ci0gICAgZWxzZQotICAgICAgICBsb2co
IlN1Y2Nlc3MiKTsKLX0KLQotZnVuY3Rpb24gc2VuZENsaWNrKCkKLXsKLSAgICBldmVudFNlbmRl
ci5tb3VzZU1vdmVUbyg1MCwgNTApOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlRG93bigpOwotICAg
IGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKLX0KKzxkaXYgaWQ9ImZpcnN0IiBzdHlsZT0id2lkdGg6
IDQwMDBweDsgaGVpZ2h0OiAxMDAwcHgiPkEgbG9uZyB0ZXh0IHRvIHRlc3QgZG9jdW1lbnQgY2Fy
ZXRSYW5nZUZyb21Qb2ludC4gVGVzdCBzY3JvbGwsIHpvb20sIHpvb21BbmRTY3JvbGwgLi4uLi4u
Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIFRoZSBFbmQgPC9kaXY+Cis8dWwgaWQ9ImNv
bnNvbGUiPjwvdWw+CiAKLWZ1bmN0aW9uIGNoZWNrKGV2ZW50LCBleHBlY3RlZCkKLXsKLSAgICB2
YXIgcmFuZ2UgPWRvY3VtZW50LmNhcmV0UmFuZ2VGcm9tUG9pbnQoZXZlbnQuY2xpZW50WCwgZXZl
bnQuY2xpZW50WSk7Ci0gICAgdmFyIG9mZnNldCA9IDA7Ci0gICAgaWYgKHJhbmdlKQotICAgICAg
b2Zmc2V0ID0gcmFuZ2Uuc3RhcnRPZmZzZXQ7Ci0gICAgZWxzZSB7Ci0gICAgICBhbGVydCgicmFu
Z2UgaXMgbnVsbCIpOwotICAgICAgcmV0dXJuOworPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIGZ1bmN0aW9u
IHNlbmRDbGljayh4LCB5KQorICAgIHsKKyAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8o
eCwgeSk7CisgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlRG93bigpOworICAgICAgICBldmVudFNl
bmRlci5tb3VzZVVwKCk7CiAgICAgfQotCi0gICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5lbGVt
ZW50RnJvbVBvaW50KGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpOwotICAgIGFzc2VydEVx
dWFsKGVsZW1lbnQuaWQsICJmaXJzdCIpOwotICAgIGFzc2VydEVxdWFsKG9mZnNldCwgZXhwZWN0
ZWQpOwotfQotCi1mdW5jdGlvbiBjaGVja0Jhc2UoZXZlbnQpCi17Ci0gICAgY2hlY2soZXZlbnQs
IDU0KTsKLX0KLQotZnVuY3Rpb24gY2hlY2tTY3JvbGwoZXZlbnQpCi17Ci0gICAgY2hlY2soZXZl
bnQsIDkzKTsKLX0KLQotZnVuY3Rpb24gY2hlY2tab29tKGV2ZW50KQotewotICAgIGNoZWNrKGV2
ZW50LCAxOSk7Ci19Ci0KLWZ1bmN0aW9uIGNoZWNrWm9vbVNjcm9sbChldmVudCkKLXsKLSAgICBj
aGVjayhldmVudCwgNjQpOwotfQotCi1mdW5jdGlvbiB6b29tUGFnZUluKCkKLXsKLSAgICBpZiAo
d2luZG93LmV2ZW50U2VuZGVyKSB7Ci0gICAgICAgIGV2ZW50U2VuZGVyLnpvb21QYWdlSW4oKTsK
KyAgICAKKyAgICB2YXIgZXhwZWN0ZWRPZmZzZXQgPSAyOTsKKyAgICB2YXIgc3VjY2VlZCA9IHRy
dWU7CisgICAgCisgICAgZnVuY3Rpb24gY2hlY2sobWVzc2FnZSwgZXZlbnQpCisgICAgeworICAg
ICAgICB2YXIgcmFuZ2UgPWRvY3VtZW50LmNhcmV0UmFuZ2VGcm9tUG9pbnQoZXZlbnQuY2xpZW50
WCwgZXZlbnQuY2xpZW50WSk7CisgICAgICAgIHZhciBvZmZzZXQgPSAwOworICAgICAgICBpZiAo
cmFuZ2UpCisgICAgICAgICAgb2Zmc2V0ID0gcmFuZ2Uuc3RhcnRPZmZzZXQ7CisgICAgICAgIGVs
c2UgeworICAgICAgICAgIGFsZXJ0KCJyYW5nZSBpcyBudWxsIik7CisgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisgICAgCisgICAgICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuZWxlbWVu
dEZyb21Qb2ludChldmVudC5jbGllbnRYLCBldmVudC5jbGllbnRZKTsKKyAgICAgICAgaWYgKGVs
ZW1lbnQuaWQgIT0gImZpcnN0IikgeworICAgICAgICAgICAgdGVzdEZhaWxlZChtZXNzYWdlICsg
IiBlbGVtZW50IGlkIGFjdHVhbDogIiArIGVsZW1lbnQuaWQgKyAiOyBleHBlY3RlZDogZmlyc3Qi
KTsKKyAgICAgICAgICAgIHN1Y2NlZWQgPSBmYWxzZTsKKyAgICAgICAgfQorICAgICAgICBpZiAo
b2Zmc2V0ICE9IGV4cGVjdGVkT2Zmc2V0KSB7CisgICAgICAgICAgICB0ZXN0RmFpbGVkKG1lc3Nh
Z2UgKyAiIG9mZnNldCBhY3R1YWw6ICIgKyBvZmZzZXQgKyAiOyBleHBlY3RlZDogIiArIGV4cGVj
dGVkT2Zmc2V0KTsKKyAgICAgICAgICAgIHN1Y2NlZWQgPSBmYWxzZTsKKyAgICAgICAgfQogICAg
IH0KLX0KLQotZnVuY3Rpb24gem9vbVBhZ2VPdXQoKQotewotICAgIGlmICh3aW5kb3cuZXZlbnRT
ZW5kZXIpIHsKLSAgICAgICAgZXZlbnRTZW5kZXIuem9vbVBhZ2VPdXQoKTsKKyAgICAKKyAgICBm
dW5jdGlvbiBjaGVja0Jhc2UoZXZlbnQpCisgICAgeworICAgICAgICBjaGVjaygiY2hlY2sgYmFz
ZSIsIGV2ZW50KTsKICAgICB9Ci19Ci0KLWZ1bmN0aW9uIHNjcm9sbFBhZ2UoeCwgeSkKLXsKLSAg
ICB3aW5kb3cuc2Nyb2xsVG8oeCwgeSk7Ci19Ci0KLW9ubG9hZCA9IGZ1bmN0aW9uKCkKLXsKLSAg
ICBpZiAoIXdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgcmV0dXJuOwogICAg
IAotICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKLQotICAgIC8vIEJhc2Uu
Ci0gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tCYXNlLCBmYWxzZSk7
Ci0gICAgc2VuZENsaWNrKCk7Ci0gICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNr
IiwgY2hlY2tCYXNlLCBmYWxzZSk7Ci0KLSAgICAvLyBTY3JvbGwuCi0gICAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tTY3JvbGwsIGZhbHNlKTsKLSAgICBzY3JvbGxQYWdl
KDUwLCA1MCk7Ci0gICAgc2VuZENsaWNrKCk7Ci0gICAgc2Nyb2xsUGFnZSgwLCAwKTsKLSAgICB3
aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBjaGVja1Njcm9sbCwgZmFsc2UpOwot
Ci0gICAgLy8gWm9vbS4KLSAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBjaGVj
a1pvb20sIGZhbHNlKTsKLSAgICB6b29tUGFnZUluKCk7IHpvb21QYWdlSW4oKTsgem9vbVBhZ2VJ
bigpOwotICAgIHNlbmRDbGljaygpOwotICAgIHpvb21QYWdlT3V0KCk7IHpvb21QYWdlT3V0KCk7
IHpvb21QYWdlT3V0KCk7Ci0gICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIiwg
Y2hlY2tab29tLCBmYWxzZSk7Ci0KLSAgICAvLyBTY3JvbGwgYW5kIFpvb20uCi0gICAgd2luZG93
LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tab29tU2Nyb2xsLCBmYWxzZSk7Ci0gICAg
em9vbVBhZ2VJbigpOyB6b29tUGFnZUluKCk7IHpvb21QYWdlSW4oKTsKLSAgICBzY3JvbGxQYWdl
KDUwLCA1MCk7Ci0gICAgc2VuZENsaWNrKCk7Ci0gICAgem9vbVBhZ2VPdXQoKTsgem9vbVBhZ2VP
dXQoKTsgem9vbVBhZ2VPdXQoKTsKLSAgICBzY3JvbGxQYWdlKDAsIDApOwotICAgIHdpbmRvdy5y
ZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsIGNoZWNrWm9vbVNjcm9sbCwgZmFsc2UpOwotfQot
PC9TQ1JJUFQ+Ci08L0hFQUQ+Ci08Qk9EWSBzdHlsZT0id2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEw
MHB4IiA+Ci08UCBpZD0iZmlyc3QiPlRoaXMgaXMgdG8gdGVzdCBkb2N1bWVudC5jYXJldFJhbmdl
RnJvbVBvaW50KCkgaW4gYSB6b29tIGFuZCBzY3JvbGxlZCBwYWdlLiBUaGUgcG9pbnQgY2FsY3Vs
YXRpb24gaW4gY2FyZXRSYW5nZUZyb21Qb2ludCgpIGlzIHdyb25nIGluIGEgem9vbSBhbmQgc2Ny
b2xsZWQgcGFnZS4gPHNwYW4gaWQ9InNhbWUiPlNhbWUgYXBwbGllcyB0byBlbGVtZW50RnJvbVBv
aW50KCkuIAotPC9QPgotPFAgaWQ9InNlY29uZCI+SW4gYSB3aW5kb3cgbGFyZ2UgZW5vdWdoIHRv
IGhvbGQgdGhlIHBhZ2Ugd2l0aG91dCBhbnkgc2Nyb2xsLCBjbGljayBtb3VzZSBhZnRlciAiUyIg
aW4gIlNhbWUiIGF0IHRoZSBhYm92ZSBzZW50ZW5jZSwgb2JzZXJ2ZSB0aGUgcHJpbnRlZCBvZmZz
ZXQuCi08L1A+Ci08UCBpZD0idGhpcmQiPk5vdywgcGxlYXNlIHJlc2l6ZSB0aGUgd2luZG93IHRv
IG1ha2UgdGhlIHBhZ2Ugc2Nyb2xsLiBUaGVuLCBzY3JvbGwgdGhlIHBhZ2UuIENsaWNrIHRoZSBt
b3VzZSBhZnRlciAiUyIgaW4gIlNhbWUiLCBvYnNlcnZlIHRoZSBwcmludGVkIG9mZnNldC4KLTwv
UD4KLTxCUiBpZD0iZm91cnRoIj48QlI+UmVzdWx0OiA8U1BBTiBJRD0ibXlTcGFuIiBTVFlMRT0i
Zm9udC13ZWlnaHQ6Ym9sZCI+PC9TUEFOPiIuCi08dWwgaWQ9ImNvbnNvbGUiPjwvdWw+Ci08L0JP
RFk+Ci08L0hUTUw+CisgICAgZnVuY3Rpb24gY2hlY2tTY3JvbGwoZXZlbnQpCisgICAgeworICAg
ICAgICBjaGVjaygiY2hlY2sgc2Nyb2xsIiwgZXZlbnQpOworICAgIH0KKyAgICAKKyAgICBmdW5j
dGlvbiBjaGVja1pvb20oZXZlbnQpCisgICAgeworICAgICAgICBjaGVjaygiY2hlY2sgem9vbSIs
IGV2ZW50KTsKKyAgICB9CisgICAgCisgICAgZnVuY3Rpb24gY2hlY2tab29tU2Nyb2xsKGV2ZW50
KQorICAgIHsKKyAgICAgICAgY2hlY2soImNoZWNrIHpvb20gYW5kIHNjcm9sbCIsIGV2ZW50KTsK
KyAgICB9CisgICAgCisgICAgZnVuY3Rpb24gc2Nyb2xsUGFnZSh4LCB5KQorICAgIHsKKyAgICAg
ICAgd2luZG93LnNjcm9sbFRvKHgsIHkpOworICAgIH0KKyAgICAKKyAgICBvbmxvYWQgPSBmdW5j
dGlvbigpCisgICAgeworICAgICAgICBpZiAoIXdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikK
KyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgCisgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQoKTsKKyAgICAKKyAgICAgICAgdmFyIHJhbmdlID0gZG9jdW1lbnQuY3Jl
YXRlUmFuZ2UoKTsKKyAgICAgICAgdmFyIG5vZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
Zmlyc3QiKTsKKyAgICAgICAgLy8gU2V0IHJhbmdlIGluIHRoZSBtaWRkbGUgb2Ygd29yZCAiZG9j
dW1lbnQiLgorICAgICAgICByYW5nZS5zZXRTdGFydChub2RlLmZpcnN0Q2hpbGQsIGV4cGVjdGVk
T2Zmc2V0KTsKKyAgICAgICAgcmFuZ2Uuc2V0RW5kKG5vZGUuZmlyc3RDaGlsZCwgZXhwZWN0ZWRP
ZmZzZXQgKyAxKTsKKyAgICAKKyAgICAgICAgLy8gQmFzZSB0ZXN0LgorICAgICAgICB3aW5kb3cu
YWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBjaGVja0Jhc2UsIGZhbHNlKTsKKyAgICAgICAgcmVj
dHMgPSByYW5nZS5nZXRDbGllbnRSZWN0cygpOworICAgICAgICB2YXIgeCA9IHJlY3RzWzBdLmxl
ZnQ7CisgICAgICAgIHZhciB5ID0gcmVjdHNbMF0udG9wICsgcmVjdHNbMF0ud2lkdGggLyAyOwor
ICAgICAgICBzZW5kQ2xpY2soeCwgeSk7CisgICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3Rl
bmVyKCJjbGljayIsIGNoZWNrQmFzZSwgZmFsc2UpOworICAgIAorICAgICAgICAvLyBUZXN0IHNj
cm9sbC4KKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tTY3Jv
bGwsIGZhbHNlKTsKKyAgICAgICAgc2Nyb2xsUGFnZSh4IC8gMiwgMCk7CisgICAgICAgIHNlbmRD
bGljayh4IC8gMiwgeSk7CisgICAgICAgIHNjcm9sbFBhZ2UoMCwgMCk7CisgICAgICAgIHdpbmRv
dy5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsIGNoZWNrU2Nyb2xsLCBmYWxzZSk7CisgICAg
CisgICAgICAgIC8vIFRlc3Qgem9vbS4KKyAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIo
ImNsaWNrIiwgY2hlY2tab29tLCBmYWxzZSk7CisgICAgICAgIG5vZGUuc3R5bGUuem9vbSA9IDIu
MDsKKyAgICAgICAgcmVjdHMgPSByYW5nZS5nZXRDbGllbnRSZWN0cygpOworICAgICAgICB2YXIg
eCA9IHJlY3RzWzBdLmxlZnQ7CisgICAgICAgIHZhciB5ID0gcmVjdHNbMF0udG9wICsgcmVjdHNb
MF0ud2lkdGggLyAyOworICAgICAgICBzZW5kQ2xpY2soeCAqIDIsIHkpOworICAgICAgICB3aW5k
b3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBjaGVja1pvb20sIGZhbHNlKTsKKyAgICAK
KyAgICAgICAgLy8gVGVzdCBzY3JvbGwgYW5kIFpvb20uCisgICAgICAgIHdpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCJjbGljayIsIGNoZWNrWm9vbVNjcm9sbCwgZmFsc2UpOworICAgICAgICBzY3Jv
bGxQYWdlKHgsIDApOworICAgICAgICBzZW5kQ2xpY2soeCwgeSk7CisgICAgICAgIHNjcm9sbFBh
Z2UoMCwgMCk7CisgICAgICAgIG5vZGUuc3R5bGUuem9vbSA9IDEuMDsKKyAgICAgICAgd2luZG93
LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tab29tU2Nyb2xsLCBmYWxzZSk7Cisg
ICAgCisgICAgICAgIGlmIChzdWNjZWVkID0gdHJ1ZSkKKyAgICAgICAgICAgIHRlc3RQYXNzZWQo
IlRlc3QgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSIpOworICAgIH0KKzwvc2NyaXB0PgpJbmRleDog
TGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25z
LnR4dAkocmV2aXNpb24gODAzNjYpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90
ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTE2MjYsMTAgKzE2MjYsNiBA
QCBCVUdDUjI2MDQyIExJTlVYIFJFTEVBU0UgOiBodHRwL3Rlc3RzL3NlCiAvLyBJbmNvcnJlY3Qg
YmFzZWxpbmUgcmVtb3ZlZC4KIEJVR0NSMjU0MzMgV0lOIExJTlVYIDogY3NzMi4xL3QwNDAxMDMt
aWRlbnQtMDMtYy5odG1sID0gSU1BR0UKIAotLy8gV2ViS2l0IHJvbGwgNDk5NjE6NDk5OTIKLS8v
IEFkZGVkIGluIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzQ5OTkwCi1CVUdDUjI1
ODg0IFdJTiBMSU5VWCA6IGZhc3QvZG9tL0RvY3VtZW50L0NhcmV0UmFuZ2VGcm9tUG9pbnQvY2Fy
ZXRSYW5nZUZyb21Qb2ludC1pbi16b29tLWFuZC1zY3JvbGwuaHRtbCA9IEZBSUwKLQogLy8gVGhp
cyBvbmx5IGNyYXNoZXMgb24gdGhlIG9sZCBidWlsZGJvdCBzbGF2ZS4gSXQgZmFpbHMgaW1hZ2Us
IGxpa2UgdGhlIG90aGVyIHNsYXZlcywgb24gdGhlIG5ldyBvbmUuCiAvLyBGSVhNRTogTWFrZSB0
aGlzIGp1c3QgYmUgSU1BR0UgYWZ0ZXIgd2UgbW92ZSBvdmVyIHRvIHRoZSBuZXcgYm90cy4KIEJV
R0NSMjYzNDQgTElOVVggREVCVUcgOiBmYXN0L3RleHQvYXRzdWktcGFydGlhbC1zZWxlY3Rpb24u
aHRtbCA9IENSQVNIIElNQUdFCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBl
ZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAkocmV2aXNp
b24gODAzNjYpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZAkod29ya2luZyBj
b3B5KQpAQCAtNjI0LDkgKzYyNCw2IEBAIG1lZGlhL2F1ZGlvLWRlbGV0ZS13aGlsZS1zdGVwLWJ1
dHRvbi1jbGkKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwNjIw
CiBmYXN0L3hzbC9zb3J0LWxvY2FsZS54bWwKIAotIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MzA4MTYKLWZhc3QvZG9tL0RvY3VtZW50L0NhcmV0UmFuZ2VGcm9tUG9p
bnQvY2FyZXRSYW5nZUZyb21Qb2ludC1pbi16b29tLWFuZC1zY3JvbGwuaHRtbAotCiAjIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDgxOAogZmFzdC9jc3Mvb3BhY2l0
eS1mbG9hdC5odG1sIAogCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1NraXBw
ZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9Ta2lwcGVkCShy
ZXZpc2lvbiA4MDM2NikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvU2tpcHBlZAko
d29ya2luZyBjb3B5KQpAQCAtMjQzLDcgKzI0Myw2IEBAIGZhc3QvY3NzL3Jlc2l6ZS1jb3JuZXIt
dHJhY2tpbmcuaHRtbAogZmFzdC9jc3MvcmVzaXplLXNpbmdsZS1heGlzLmh0bWwKIGZhc3QvY3Nz
L3VuaXZlcnNhbC1ob3Zlci1xdWlyay5odG1sCiBmYXN0L2Nzcy91c2VyLWRyYWctbm9uZS5odG1s
Ci1mYXN0L2RvbS9Eb2N1bWVudC9DYXJldFJhbmdlRnJvbVBvaW50L2NhcmV0UmFuZ2VGcm9tUG9p
bnQtaW4tem9vbS1hbmQtc2Nyb2xsLmh0bWwKIGZhc3QvZG9tL2hvcml6b250YWwtc2Nyb2xsYmFy
LWluLXJ0bC5odG1sCiBmYXN0L2RvbS9IVE1MU2VsZWN0RWxlbWVudC9jbGljay1zaXplLXplcm8t
bm8tY3Jhc2guaHRtbAogZmFzdC9kb20vSFRNTFRhYmxlQ29sRWxlbWVudC9yZXNpemUtdGFibGUt
dXNpbmctY29sLXdpZHRoLmh0bWwKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3F0LXdrMi9T
a2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3F0LXdrMi9Ta2lwcGVk
CShyZXZpc2lvbiA4MDM2NikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3F0LXdrMi9Ta2lwcGVk
CSh3b3JraW5nIGNvcHkpCkBAIC0yNTAsNyArMjUwLDYgQEAgZmFzdC9jc3MvcmVzaXplLWNvcm5l
ci10cmFja2luZy5odG1sCiBmYXN0L2Nzcy9yZXNpemUtc2luZ2xlLWF4aXMuaHRtbAogZmFzdC9j
c3MvdW5pdmVyc2FsLWhvdmVyLXF1aXJrLmh0bWwKIGZhc3QvY3NzL3VzZXItZHJhZy1ub25lLmh0
bWwKLWZhc3QvZG9tL0RvY3VtZW50L0NhcmV0UmFuZ2VGcm9tUG9pbnQvY2FyZXRSYW5nZUZyb21Q
b2ludC1pbi16b29tLWFuZC1zY3JvbGwuaHRtbAogZmFzdC9kb20vSFRNTFRhYmxlQ29sRWxlbWVu
dC9yZXNpemUtdGFibGUtdXNpbmctY29sLXdpZHRoLmh0bWwKIGZhc3QvZG9tL0hUTUxTZWxlY3RF
bGVtZW50L2NsaWNrLXNpemUtemVyby1uby1jcmFzaC5odG1sCiBmYXN0L2RvbS9Ob2RlL211dGF0
aW9uLWJsdXIuaHRtbApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCShyZXZpc2lvbiA4MDM2
NikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAg
LTE0ODIsNyArMTQ4Miw2IEBAIGZhc3QvZm9ybXMvdGV4dC1jb250cm9sLWludHJpbnNpYy13aWR0
aHMKIGZhc3QvZm9ybXMvdGV4dGFyZWEtbWV0cmljcy5odG1sCiBmYXN0L2hpc3Rvcnkvd2luZG93
LW9wZW4uaHRtbAogZmFzdC9kb20vSFRNTERvY3VtZW50L2hhc0ZvY3VzLmh0bWwKLWZhc3QvZG9t
L0RvY3VtZW50L0NhcmV0UmFuZ2VGcm9tUG9pbnQvY2FyZXRSYW5nZUZyb21Qb2ludC1pbi16b29t
LWFuZC1zY3JvbGwuaHRtbAogZmFzdC9kb20vUmFuZ2UvcmFuZ2UtZXhwYW5kLmh0bWwKIGZhc3Qv
ZW5jb2RpbmcvY2hhci1kZWNvZGluZy5odG1sCiBmYXN0L2VuY29kaW5nL2ZyYW1lLWRlZmF1bHQt
ZW5jLmh0bWwK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84827</attachid>
            <date>2011-03-04 16:37:11 -0800</date>
            <delta_ts>2011-03-07 11:30:08 -0800</delta_ts>
            <desc>layout test</desc>
            <filename>30816.v1</filename>
            <type>text/plain</type>
            <size>12691</size>
            <attacher name="Xiaomei Ji">xji</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDgwMzc4KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMDMtMDQgIFhpYW9tZWkgSmkgIDx4amlA
Y2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE1ha2UgZmFzdC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5nZUZyb21Qb2ludC9jYXJldFJh
bmdlRnJvbVBvaW50LWluLXpvb20tYW5kLXNjcm9sbC5odG1sIGxlc3MgcG9ydC1kZXBlbmRlbnQu
CisgICAgICAgIFByZWlvdXNseSwgdGhlIHRlc3QgY2xpY2tlZCBhdCBhIHNwZWNpZmljIHBpeGVs
IHNvIGRpZmZlcmVudCBmb250cyByZXN1bHQgaW4gc2xpZ2h0bHkgZGlmZmVyZW50IHBvc2l0aW9u
cy4KKyAgICAgICAgQ2hhbmdlIHRoZSB0ZXN0IHRvIGNsaWNrIG9uIGEgc3BlY2lmaWMgY2hhcmFj
dGVyIG9mZnNldC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTMwODE2CisKKyAgICAgICAgKiBmYXN0L2RvbS9Eb2N1bWVudC9DYXJldFJhbmdlRnJvbVBv
aW50L2NhcmV0UmFuZ2VGcm9tUG9pbnQtaW4tem9vbS1hbmQtc2Nyb2xsLWV4cGVjdGVkLnR4dDoK
KyAgICAgICAgKiBmYXN0L2RvbS9Eb2N1bWVudC9DYXJldFJhbmdlRnJvbVBvaW50L2NhcmV0UmFu
Z2VGcm9tUG9pbnQtaW4tem9vbS1hbmQtc2Nyb2xsLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0v
Y2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0OgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9T
a2lwcGVkOgorICAgICAgICAqIHBsYXRmb3JtL21hYy13azIvU2tpcHBlZDoKKyAgICAgICAgKiBw
bGF0Zm9ybS9xdC13azIvU2tpcHBlZDoKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9Ta2lwcGVkOgor
CiAyMDExLTAzLTAzICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5nZUZyb21Qb2ludC9jYXJldFJhbmdlRnJvbVBvaW50LWlu
LXpvb20tYW5kLXNjcm9sbC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5nZUZyb21Qb2ludC9jYXJldFJhbmdlRnJvbVBvaW50
LWluLXpvb20tYW5kLXNjcm9sbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDgwMzY2KQorKysgTGF5
b3V0VGVzdHMvZmFzdC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5nZUZyb21Qb2ludC9jYXJldFJhbmdl
RnJvbVBvaW50LWluLXpvb20tYW5kLXNjcm9sbC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTEsMTcgKzEsMyBAQAotVGhpcyBpcyB0byB0ZXN0IGRvY3VtZW50LmNhcmV0UmFuZ2VGcm9t
UG9pbnQoKSBpbiBhIHpvb20gYW5kIHNjcm9sbGVkIHBhZ2UuIFRoZSBwb2ludCBjYWxjdWxhdGlv
biBpbiBjYXJldFJhbmdlRnJvbVBvaW50KCkgaXMgd3JvbmcgaW4gYSB6b29tIGFuZCBzY3JvbGxl
ZCBwYWdlLiBTYW1lIGFwcGxpZXMgdG8gZWxlbWVudEZyb21Qb2ludCgpLgorQSBsb25nIHRleHQg
dG8gdGVzdCBkb2N1bWVudCBjYXJldFJhbmdlRnJvbVBvaW50LiBUZXN0IHNjcm9sbCwgem9vbSwg
em9vbUFuZFNjcm9sbCAuLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4gVGhlIEVu
ZAorUEFTUyBUZXN0IGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkKIAotSW4gYSB3aW5kb3cgbGFyZ2Ug
ZW5vdWdoIHRvIGhvbGQgdGhlIHBhZ2Ugd2l0aG91dCBhbnkgc2Nyb2xsLCBjbGljayBtb3VzZSBh
ZnRlciAiUyIgaW4gIlNhbWUiIGF0IHRoZSBhYm92ZSBzZW50ZW5jZSwgb2JzZXJ2ZSB0aGUgcHJp
bnRlZCBvZmZzZXQuCi0KLU5vdywgcGxlYXNlIHJlc2l6ZSB0aGUgd2luZG93IHRvIG1ha2UgdGhl
IHBhZ2Ugc2Nyb2xsLiBUaGVuLCBzY3JvbGwgdGhlIHBhZ2UuIENsaWNrIHRoZSBtb3VzZSBhZnRl
ciAiUyIgaW4gIlNhbWUiLCBvYnNlcnZlIHRoZSBwcmludGVkIG9mZnNldC4KLQotCi0KLVJlc3Vs
dDogIi4KLVN1Y2Nlc3MKLVN1Y2Nlc3MKLVN1Y2Nlc3MKLVN1Y2Nlc3MKLVN1Y2Nlc3MKLVN1Y2Nl
c3MKLVN1Y2Nlc3MKLVN1Y2Nlc3MKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0RvY3VtZW50
L0NhcmV0UmFuZ2VGcm9tUG9pbnQvY2FyZXRSYW5nZUZyb21Qb2ludC1pbi16b29tLWFuZC1zY3Jv
bGwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9Eb2N1bWVudC9DYXJl
dFJhbmdlRnJvbVBvaW50L2NhcmV0UmFuZ2VGcm9tUG9pbnQtaW4tem9vbS1hbmQtc2Nyb2xsLmh0
bWwJKHJldmlzaW9uIDgwMzY2KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vRG9jdW1lbnQvQ2Fy
ZXRSYW5nZUZyb21Qb2ludC9jYXJldFJhbmdlRnJvbVBvaW50LWluLXpvb20tYW5kLXNjcm9sbC5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDEyOCArMSwxMTEgQEAKLTxIVE1MPgotPEhFQUQ+Ci08
VElUTEU+ZG9jdW1lbnQuY2FyZXRSYW5nZUZyb21Qb2ludCgpIE1ldGhvZDwvVElUTEU+Ci08U0NS
SVBUIExBTkdVQUdFPSJKYXZhU2NyaXB0Ij4KLWZ1bmN0aW9uIGxvZyhzdHIpIHsKLSAgICB2YXIg
bGkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaSIpOwotICAgIGxpLmFwcGVuZENoaWxkKGRv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKHN0cikpOwotICAgIHZhciBjb25zb2xlID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImNvbnNvbGUiKTsKLSAgICBjb25zb2xlLmFwcGVuZENoaWxkKGxpKTsK
LX0KLQotZnVuY3Rpb24gYXNzZXJ0RXF1YWwoYWN0dWFsLCBleHBlY3RlZCkgewotICAgIGlmIChh
Y3R1YWwgIT0gZXhwZWN0ZWQpCi0gICAgICAgIGxvZygiRmFpbHVyZSwgYWN0dWFsOiAiICsgYWN0
dWFsICsgIjsgZXhwZWN0ZWQ6ICIgKyBleHBlY3RlZCk7Ci0gICAgZWxzZQotICAgICAgICBsb2co
IlN1Y2Nlc3MiKTsKLX0KLQotZnVuY3Rpb24gc2VuZENsaWNrKCkKLXsKLSAgICBldmVudFNlbmRl
ci5tb3VzZU1vdmVUbyg1MCwgNTApOwotICAgIGV2ZW50U2VuZGVyLm1vdXNlRG93bigpOwotICAg
IGV2ZW50U2VuZGVyLm1vdXNlVXAoKTsKLX0KKzxkaXYgaWQ9ImZpcnN0IiBzdHlsZT0id2lkdGg6
IDQwMDBweDsgaGVpZ2h0OiAxMDAwcHgiPkEgbG9uZyB0ZXh0IHRvIHRlc3QgZG9jdW1lbnQgY2Fy
ZXRSYW5nZUZyb21Qb2ludC4gVGVzdCBzY3JvbGwsIHpvb20sIHpvb21BbmRTY3JvbGwgLi4uLi4u
Li4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uIFRoZSBFbmQgPC9kaXY+Cis8dWwgaWQ9ImNv
bnNvbGUiPjwvdWw+CiAKLWZ1bmN0aW9uIGNoZWNrKGV2ZW50LCBleHBlY3RlZCkKLXsKLSAgICB2
YXIgcmFuZ2UgPWRvY3VtZW50LmNhcmV0UmFuZ2VGcm9tUG9pbnQoZXZlbnQuY2xpZW50WCwgZXZl
bnQuY2xpZW50WSk7Ci0gICAgdmFyIG9mZnNldCA9IDA7Ci0gICAgaWYgKHJhbmdlKQotICAgICAg
b2Zmc2V0ID0gcmFuZ2Uuc3RhcnRPZmZzZXQ7Ci0gICAgZWxzZSB7Ci0gICAgICBhbGVydCgicmFu
Z2UgaXMgbnVsbCIpOwotICAgICAgcmV0dXJuOworPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIGZ1bmN0aW9u
IHNlbmRDbGljayh4LCB5KQorICAgIHsKKyAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8o
eCwgeSk7CisgICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlRG93bigpOworICAgICAgICBldmVudFNl
bmRlci5tb3VzZVVwKCk7CiAgICAgfQotCi0gICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5lbGVt
ZW50RnJvbVBvaW50KGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpOwotICAgIGFzc2VydEVx
dWFsKGVsZW1lbnQuaWQsICJmaXJzdCIpOwotICAgIGFzc2VydEVxdWFsKG9mZnNldCwgZXhwZWN0
ZWQpOwotfQotCi1mdW5jdGlvbiBjaGVja0Jhc2UoZXZlbnQpCi17Ci0gICAgY2hlY2soZXZlbnQs
IDU0KTsKLX0KLQotZnVuY3Rpb24gY2hlY2tTY3JvbGwoZXZlbnQpCi17Ci0gICAgY2hlY2soZXZl
bnQsIDkzKTsKLX0KLQotZnVuY3Rpb24gY2hlY2tab29tKGV2ZW50KQotewotICAgIGNoZWNrKGV2
ZW50LCAxOSk7Ci19Ci0KLWZ1bmN0aW9uIGNoZWNrWm9vbVNjcm9sbChldmVudCkKLXsKLSAgICBj
aGVjayhldmVudCwgNjQpOwotfQotCi1mdW5jdGlvbiB6b29tUGFnZUluKCkKLXsKLSAgICBpZiAo
d2luZG93LmV2ZW50U2VuZGVyKSB7Ci0gICAgICAgIGV2ZW50U2VuZGVyLnpvb21QYWdlSW4oKTsK
KyAgICAKKyAgICB2YXIgZXhwZWN0ZWRPZmZzZXQgPSAyOTsKKyAgICB2YXIgc3VjY2VlZCA9IHRy
dWU7CisgICAgCisgICAgZnVuY3Rpb24gY2hlY2sobWVzc2FnZSwgZXZlbnQpCisgICAgeworICAg
ICAgICB2YXIgcmFuZ2UgPWRvY3VtZW50LmNhcmV0UmFuZ2VGcm9tUG9pbnQoZXZlbnQuY2xpZW50
WCwgZXZlbnQuY2xpZW50WSk7CisgICAgICAgIHZhciBvZmZzZXQgPSAwOworICAgICAgICBpZiAo
cmFuZ2UpCisgICAgICAgICAgb2Zmc2V0ID0gcmFuZ2Uuc3RhcnRPZmZzZXQ7CisgICAgICAgIGVs
c2UgeworICAgICAgICAgIGFsZXJ0KCJyYW5nZSBpcyBudWxsIik7CisgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisKKyAgICAgICAgdmFyIG5vZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiZmlyc3QiKS5maXJzdENoaWxkOworICAgICAgICBpZiAocmFuZ2Uuc3RhcnRDb250YWluZXIg
IT0gbm9kZSkgeworICAgICAgICAgICAgdGVzdEZhaWxlZChtZXNzYWdlICsgIiBub2RlIHNob3Vs
ZCBiZSBkaXYncyBjaGlsZCB0ZXh0IG5vZGUiKTsKKyAgICAgICAgICAgIHN1Y2NlZWQgPSBmYWxz
ZTsKKyAgICAgICAgfQorICAgICAgICBpZiAob2Zmc2V0ICE9IGV4cGVjdGVkT2Zmc2V0KSB7Cisg
ICAgICAgICAgICB0ZXN0RmFpbGVkKG1lc3NhZ2UgKyAiIG9mZnNldCBhY3R1YWw6ICIgKyBvZmZz
ZXQgKyAiOyBleHBlY3RlZDogIiArIGV4cGVjdGVkT2Zmc2V0KTsKKyAgICAgICAgICAgIHN1Y2Nl
ZWQgPSBmYWxzZTsKKyAgICAgICAgfQogICAgIH0KLX0KLQotZnVuY3Rpb24gem9vbVBhZ2VPdXQo
KQotewotICAgIGlmICh3aW5kb3cuZXZlbnRTZW5kZXIpIHsKLSAgICAgICAgZXZlbnRTZW5kZXIu
em9vbVBhZ2VPdXQoKTsKKyAgICAKKyAgICBmdW5jdGlvbiBjaGVja0Jhc2UoZXZlbnQpCisgICAg
eworICAgICAgICBjaGVjaygiY2hlY2sgYmFzZSIsIGV2ZW50KTsKICAgICB9Ci19Ci0KLWZ1bmN0
aW9uIHNjcm9sbFBhZ2UoeCwgeSkKLXsKLSAgICB3aW5kb3cuc2Nyb2xsVG8oeCwgeSk7Ci19Ci0K
LW9ubG9hZCA9IGZ1bmN0aW9uKCkKLXsKLSAgICBpZiAoIXdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikKLSAgICAgICAgcmV0dXJuOwogICAgIAotICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1
bXBBc1RleHQoKTsKLQotICAgIC8vIEJhc2UuCi0gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIo
ImNsaWNrIiwgY2hlY2tCYXNlLCBmYWxzZSk7Ci0gICAgc2VuZENsaWNrKCk7Ci0gICAgd2luZG93
LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tCYXNlLCBmYWxzZSk7Ci0KLSAgICAv
LyBTY3JvbGwuCi0gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tTY3Jv
bGwsIGZhbHNlKTsKLSAgICBzY3JvbGxQYWdlKDUwLCA1MCk7Ci0gICAgc2VuZENsaWNrKCk7Ci0g
ICAgc2Nyb2xsUGFnZSgwLCAwKTsKLSAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xp
Y2siLCBjaGVja1Njcm9sbCwgZmFsc2UpOwotCi0gICAgLy8gWm9vbS4KLSAgICB3aW5kb3cuYWRk
RXZlbnRMaXN0ZW5lcigiY2xpY2siLCBjaGVja1pvb20sIGZhbHNlKTsKLSAgICB6b29tUGFnZUlu
KCk7IHpvb21QYWdlSW4oKTsgem9vbVBhZ2VJbigpOwotICAgIHNlbmRDbGljaygpOwotICAgIHpv
b21QYWdlT3V0KCk7IHpvb21QYWdlT3V0KCk7IHpvb21QYWdlT3V0KCk7Ci0gICAgd2luZG93LnJl
bW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tab29tLCBmYWxzZSk7Ci0KLSAgICAvLyBT
Y3JvbGwgYW5kIFpvb20uCi0gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hl
Y2tab29tU2Nyb2xsLCBmYWxzZSk7Ci0gICAgem9vbVBhZ2VJbigpOyB6b29tUGFnZUluKCk7IHpv
b21QYWdlSW4oKTsKLSAgICBzY3JvbGxQYWdlKDUwLCA1MCk7Ci0gICAgc2VuZENsaWNrKCk7Ci0g
ICAgem9vbVBhZ2VPdXQoKTsgem9vbVBhZ2VPdXQoKTsgem9vbVBhZ2VPdXQoKTsKLSAgICBzY3Jv
bGxQYWdlKDAsIDApOwotICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsIGNo
ZWNrWm9vbVNjcm9sbCwgZmFsc2UpOwotfQotPC9TQ1JJUFQ+Ci08L0hFQUQ+Ci08Qk9EWSBzdHls
ZT0id2lkdGg6IDEwMHB4OyBoZWlnaHQ6IDEwMHB4IiA+Ci08UCBpZD0iZmlyc3QiPlRoaXMgaXMg
dG8gdGVzdCBkb2N1bWVudC5jYXJldFJhbmdlRnJvbVBvaW50KCkgaW4gYSB6b29tIGFuZCBzY3Jv
bGxlZCBwYWdlLiBUaGUgcG9pbnQgY2FsY3VsYXRpb24gaW4gY2FyZXRSYW5nZUZyb21Qb2ludCgp
IGlzIHdyb25nIGluIGEgem9vbSBhbmQgc2Nyb2xsZWQgcGFnZS4gPHNwYW4gaWQ9InNhbWUiPlNh
bWUgYXBwbGllcyB0byBlbGVtZW50RnJvbVBvaW50KCkuIAotPC9QPgotPFAgaWQ9InNlY29uZCI+
SW4gYSB3aW5kb3cgbGFyZ2UgZW5vdWdoIHRvIGhvbGQgdGhlIHBhZ2Ugd2l0aG91dCBhbnkgc2Ny
b2xsLCBjbGljayBtb3VzZSBhZnRlciAiUyIgaW4gIlNhbWUiIGF0IHRoZSBhYm92ZSBzZW50ZW5j
ZSwgb2JzZXJ2ZSB0aGUgcHJpbnRlZCBvZmZzZXQuCi08L1A+Ci08UCBpZD0idGhpcmQiPk5vdywg
cGxlYXNlIHJlc2l6ZSB0aGUgd2luZG93IHRvIG1ha2UgdGhlIHBhZ2Ugc2Nyb2xsLiBUaGVuLCBz
Y3JvbGwgdGhlIHBhZ2UuIENsaWNrIHRoZSBtb3VzZSBhZnRlciAiUyIgaW4gIlNhbWUiLCBvYnNl
cnZlIHRoZSBwcmludGVkIG9mZnNldC4KLTwvUD4KLTxCUiBpZD0iZm91cnRoIj48QlI+UmVzdWx0
OiA8U1BBTiBJRD0ibXlTcGFuIiBTVFlMRT0iZm9udC13ZWlnaHQ6Ym9sZCI+PC9TUEFOPiIuCi08
dWwgaWQ9ImNvbnNvbGUiPjwvdWw+Ci08L0JPRFk+Ci08L0hUTUw+CisgICAgZnVuY3Rpb24gY2hl
Y2tTY3JvbGwoZXZlbnQpCisgICAgeworICAgICAgICBjaGVjaygiY2hlY2sgc2Nyb2xsIiwgZXZl
bnQpOworICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBjaGVja1pvb20oZXZlbnQpCisgICAgewor
ICAgICAgICBjaGVjaygiY2hlY2sgem9vbSIsIGV2ZW50KTsKKyAgICB9CisgICAgCisgICAgZnVu
Y3Rpb24gY2hlY2tab29tU2Nyb2xsKGV2ZW50KQorICAgIHsKKyAgICAgICAgY2hlY2soImNoZWNr
IHpvb20gYW5kIHNjcm9sbCIsIGV2ZW50KTsKKyAgICB9CisgICAgCisgICAgZnVuY3Rpb24gc2Ny
b2xsUGFnZSh4LCB5KQorICAgIHsKKyAgICAgICAgd2luZG93LnNjcm9sbFRvKHgsIHkpOworICAg
IH0KKyAgICAKKyAgICBvbmxvYWQgPSBmdW5jdGlvbigpCisgICAgeworICAgICAgICBpZiAoIXdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAg
CisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICAKKyAgICAg
ICAgdmFyIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAgICAgICAgdmFyIG5vZGUg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlyc3QiKTsKKyAgICAgICAgLy8gU2V0IHJhbmdl
IGluIHRoZSBtaWRkbGUgb2Ygd29yZCAiZG9jdW1lbnQiLgorICAgICAgICByYW5nZS5zZXRTdGFy
dChub2RlLmZpcnN0Q2hpbGQsIGV4cGVjdGVkT2Zmc2V0KTsKKyAgICAgICAgcmFuZ2Uuc2V0RW5k
KG5vZGUuZmlyc3RDaGlsZCwgZXhwZWN0ZWRPZmZzZXQgKyAxKTsKKyAgICAKKyAgICAgICAgLy8g
QmFzZSB0ZXN0LgorICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBjaGVj
a0Jhc2UsIGZhbHNlKTsKKyAgICAgICAgcmVjdHMgPSByYW5nZS5nZXRDbGllbnRSZWN0cygpOwor
ICAgICAgICB2YXIgeCA9IHJlY3RzWzBdLmxlZnQ7CisgICAgICAgIHZhciB5ID0gcmVjdHNbMF0u
dG9wICsgcmVjdHNbMF0ud2lkdGggLyAyOworICAgICAgICBzZW5kQ2xpY2soeCwgeSk7CisgICAg
ICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsIGNoZWNrQmFzZSwgZmFsc2Up
OworICAgIAorICAgICAgICAvLyBUZXN0IHNjcm9sbC4KKyAgICAgICAgd2luZG93LmFkZEV2ZW50
TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tTY3JvbGwsIGZhbHNlKTsKKyAgICAgICAgc2Nyb2xsUGFn
ZSh4IC8gMiwgMCk7CisgICAgICAgIHNlbmRDbGljayh4IC8gMiwgeSk7CisgICAgICAgIHNjcm9s
bFBhZ2UoMCwgMCk7CisgICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIs
IGNoZWNrU2Nyb2xsLCBmYWxzZSk7CisgICAgCisgICAgICAgIC8vIFRlc3Qgem9vbS4KKyAgICAg
ICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgY2hlY2tab29tLCBmYWxzZSk7Cisg
ICAgICAgIG5vZGUuc3R5bGUuem9vbSA9IDIuMDsKKyAgICAgICAgcmVjdHMgPSByYW5nZS5nZXRD
bGllbnRSZWN0cygpOworICAgICAgICB2YXIgeCA9IHJlY3RzWzBdLmxlZnQ7CisgICAgICAgIHZh
ciB5ID0gcmVjdHNbMF0udG9wICsgcmVjdHNbMF0ud2lkdGggLyAyOworICAgICAgICBzZW5kQ2xp
Y2soeCAqIDIsIHkpOworICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2si
LCBjaGVja1pvb20sIGZhbHNlKTsKKyAgICAKKyAgICAgICAgLy8gVGVzdCBzY3JvbGwgYW5kIFpv
b20uCisgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGNoZWNrWm9vbVNj
cm9sbCwgZmFsc2UpOworICAgICAgICBzY3JvbGxQYWdlKHgsIDApOworICAgICAgICBzZW5kQ2xp
Y2soeCwgeSk7CisgICAgICAgIHNjcm9sbFBhZ2UoMCwgMCk7CisgICAgICAgIG5vZGUuc3R5bGUu
em9vbSA9IDEuMDsKKyAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIiwg
Y2hlY2tab29tU2Nyb2xsLCBmYWxzZSk7CisgICAgCisgICAgICAgIGlmIChzdWNjZWVkID09IHRy
dWUpCisgICAgICAgICAgICB0ZXN0UGFzc2VkKCJUZXN0IGNvbXBsZXRlZCBzdWNjZXNzZnVsbHki
KTsKKyAgICB9Cis8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVt
L3Rlc3RfZXhwZWN0YXRpb25zLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQJKHJldmlzaW9uIDgwMzY2KQorKysgTGF5
b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CSh3b3JraW5n
IGNvcHkpCkBAIC0xNjI2LDEwICsxNjI2LDYgQEAgQlVHQ1IyNjA0MiBMSU5VWCBSRUxFQVNFIDog
aHR0cC90ZXN0cy9zZQogLy8gSW5jb3JyZWN0IGJhc2VsaW5lIHJlbW92ZWQuCiBCVUdDUjI1NDMz
IFdJTiBMSU5VWCA6IGNzczIuMS90MDQwMTAzLWlkZW50LTAzLWMuaHRtbCA9IElNQUdFCiAKLS8v
IFdlYktpdCByb2xsIDQ5OTYxOjQ5OTkyCi0vLyBBZGRlZCBpbiBodHRwOi8vdHJhYy53ZWJraXQu
b3JnL2NoYW5nZXNldC80OTk5MAotQlVHQ1IyNTg4NCBXSU4gTElOVVggOiBmYXN0L2RvbS9Eb2N1
bWVudC9DYXJldFJhbmdlRnJvbVBvaW50L2NhcmV0UmFuZ2VGcm9tUG9pbnQtaW4tem9vbS1hbmQt
c2Nyb2xsLmh0bWwgPSBGQUlMCi0KIC8vIFRoaXMgb25seSBjcmFzaGVzIG9uIHRoZSBvbGQgYnVp
bGRib3Qgc2xhdmUuIEl0IGZhaWxzIGltYWdlLCBsaWtlIHRoZSBvdGhlciBzbGF2ZXMsIG9uIHRo
ZSBuZXcgb25lLgogLy8gRklYTUU6IE1ha2UgdGhpcyBqdXN0IGJlIElNQUdFIGFmdGVyIHdlIG1v
dmUgb3ZlciB0byB0aGUgbmV3IGJvdHMuCiBCVUdDUjI2MzQ0IExJTlVYIERFQlVHIDogZmFzdC90
ZXh0L2F0c3VpLXBhcnRpYWwtc2VsZWN0aW9uLmh0bWwgPSBDUkFTSCBJTUFHRQpJbmRleDogTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL1NraXBwZWQJKHJldmlzaW9uIDgwMzY2KQorKysgTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTYyNCw5ICs2MjQsNiBAQCBtZWRp
YS9hdWRpby1kZWxldGUtd2hpbGUtc3RlcC1idXR0b24tY2xpCiAjIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMDYyMAogZmFzdC94c2wvc29ydC1sb2NhbGUueG1sCiAK
LSMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwODE2Ci1mYXN0L2Rv
bS9Eb2N1bWVudC9DYXJldFJhbmdlRnJvbVBvaW50L2NhcmV0UmFuZ2VGcm9tUG9pbnQtaW4tem9v
bS1hbmQtc2Nyb2xsLmh0bWwKLQogIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MzA4MTgKIGZhc3QvY3NzL29wYWNpdHktZmxvYXQuaHRtbCAKIApJbmRleDogTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9Ta2lwcGVkCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy13azIvU2tpcHBlZAkocmV2aXNpb24gODAzNjYpCisrKyBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMtd2syL1NraXBwZWQJKHdvcmtpbmcgY29weSkKQEAgLTI0Myw3ICsyNDMs
NiBAQCBmYXN0L2Nzcy9yZXNpemUtY29ybmVyLXRyYWNraW5nLmh0bWwKIGZhc3QvY3NzL3Jlc2l6
ZS1zaW5nbGUtYXhpcy5odG1sCiBmYXN0L2Nzcy91bml2ZXJzYWwtaG92ZXItcXVpcmsuaHRtbAog
ZmFzdC9jc3MvdXNlci1kcmFnLW5vbmUuaHRtbAotZmFzdC9kb20vRG9jdW1lbnQvQ2FyZXRSYW5n
ZUZyb21Qb2ludC9jYXJldFJhbmdlRnJvbVBvaW50LWluLXpvb20tYW5kLXNjcm9sbC5odG1sCiBm
YXN0L2RvbS9ob3Jpem9udGFsLXNjcm9sbGJhci1pbi1ydGwuaHRtbAogZmFzdC9kb20vSFRNTFNl
bGVjdEVsZW1lbnQvY2xpY2stc2l6ZS16ZXJvLW5vLWNyYXNoLmh0bWwKIGZhc3QvZG9tL0hUTUxU
YWJsZUNvbEVsZW1lbnQvcmVzaXplLXRhYmxlLXVzaW5nLWNvbC13aWR0aC5odG1sCkluZGV4OiBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC13azIvU2tpcHBlZAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9xdC13azIvU2tpcHBlZAkocmV2aXNpb24gODAzNjYpCisrKyBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9xdC13azIvU2tpcHBlZAkod29ya2luZyBjb3B5KQpAQCAtMjUwLDcgKzI1
MCw2IEBAIGZhc3QvY3NzL3Jlc2l6ZS1jb3JuZXItdHJhY2tpbmcuaHRtbAogZmFzdC9jc3MvcmVz
aXplLXNpbmdsZS1heGlzLmh0bWwKIGZhc3QvY3NzL3VuaXZlcnNhbC1ob3Zlci1xdWlyay5odG1s
CiBmYXN0L2Nzcy91c2VyLWRyYWctbm9uZS5odG1sCi1mYXN0L2RvbS9Eb2N1bWVudC9DYXJldFJh
bmdlRnJvbVBvaW50L2NhcmV0UmFuZ2VGcm9tUG9pbnQtaW4tem9vbS1hbmQtc2Nyb2xsLmh0bWwK
IGZhc3QvZG9tL0hUTUxUYWJsZUNvbEVsZW1lbnQvcmVzaXplLXRhYmxlLXVzaW5nLWNvbC13aWR0
aC5odG1sCiBmYXN0L2RvbS9IVE1MU2VsZWN0RWxlbWVudC9jbGljay1zaXplLXplcm8tbm8tY3Jh
c2guaHRtbAogZmFzdC9kb20vTm9kZS9tdXRhdGlvbi1ibHVyLmh0bWwKSW5kZXg6IExheW91dFRl
c3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZv
cm0vcXQvU2tpcHBlZAkocmV2aXNpb24gODAzNjYpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9x
dC9Ta2lwcGVkCSh3b3JraW5nIGNvcHkpCkBAIC0xNDgyLDcgKzE0ODIsNiBAQCBmYXN0L2Zvcm1z
L3RleHQtY29udHJvbC1pbnRyaW5zaWMtd2lkdGhzCiBmYXN0L2Zvcm1zL3RleHRhcmVhLW1ldHJp
Y3MuaHRtbAogZmFzdC9oaXN0b3J5L3dpbmRvdy1vcGVuLmh0bWwKIGZhc3QvZG9tL0hUTUxEb2N1
bWVudC9oYXNGb2N1cy5odG1sCi1mYXN0L2RvbS9Eb2N1bWVudC9DYXJldFJhbmdlRnJvbVBvaW50
L2NhcmV0UmFuZ2VGcm9tUG9pbnQtaW4tem9vbS1hbmQtc2Nyb2xsLmh0bWwKIGZhc3QvZG9tL1Jh
bmdlL3JhbmdlLWV4cGFuZC5odG1sCiBmYXN0L2VuY29kaW5nL2NoYXItZGVjb2RpbmcuaHRtbAog
ZmFzdC9lbmNvZGluZy9mcmFtZS1kZWZhdWx0LWVuYy5odG1sCg==
</data>
<flag name="review"
          id="76862"
          type_id="1"
          status="+"
          setter="mrobinson"
    />
          </attachment>
      

    </bug>

</bugzilla>