<?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>45975</bug_id>
          
          <creation_ts>2010-09-17 10:56:21 -0700</creation_ts>
          <short_desc>REGRESSION(r67721): &quot;svg/dynamic-updates/SVGCircleElement-dom-cy-attr.html crashes on Gtk&quot; (Requested by yurys on #webkit).</short_desc>
          <delta_ts>2014-08-01 16:28:15 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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>45114</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>pfeldman</cc>
    
    <cc>podivilov</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>280738</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-17 10:56:21 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/67721 broke the build:
&quot;svg/dynamic-updates/SVGCircleElement-dom-cy-attr.html crashes on Gtk&quot; (Requested by yurys on #webkit).

This is an automatic bug report generated by the sheriff-bot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280739</commentid>
    <comment_count>1</comment_count>
      <attachid>67921</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-17 10:56:42 -0700</bug_when>
    <thetext>Created attachment 67921
ROLLOUT of r67721

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID --ignore-builders

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280751</commentid>
    <comment_count>2</comment_count>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2010-09-17 11:09:18 -0700</bug_when>
    <thetext>alexg__: yurys, maybe the issue in the SVGCircleElement-dom-cy-attr.html test is caused by the 45975 bug and not your commit
alexg__: yurys, I&apos;ve checked all the dumps in the last crashes of the 32bit bot and all of them seems the same: http://webkit-bots.igalia.com/i386/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280771</commentid>
    <comment_count>3</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2010-09-17 11:57:47 -0700</bug_when>
    <thetext>Build has recovered after r67726.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67921</attachid>
            <date>2010-09-17 10:56:42 -0700</date>
            <delta_ts>2014-08-01 16:28:15 -0700</delta_ts>
            <desc>ROLLOUT of r67721</desc>
            <filename>bug-45975-20100917175640.patch</filename>
            <type>text/plain</type>
            <size>30603</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0ZGVkYjNmOGRmNWNhZTI0NDBjZjQzMmIzOWY3Mzg3NDgxZDhkZGFhLi4zZTdiNzI2
ZTIwNjFlMThlYjA1NjY1Yzc4N2I4ZjVmZjg2ZGI0ZWU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMTAtMDktMTcgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgor
CisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI2NzcyMS4KKyAgICAgICAgaHR0cDov
L3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjc3MjEKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ1OTc1CisKKyAgICAgICAgInN2Zy9keW5hbWljLXVw
ZGF0ZXMvU1ZHQ2lyY2xlRWxlbWVudC1kb20tY3ktYXR0ci5odG1sIGNyYXNoZXMKKyAgICAgICAg
b24gR3RrIiAoUmVxdWVzdGVkIGJ5IHl1cnlzIG9uICN3ZWJraXQpLgorCisgICAgICAgICogaHR0
cC90ZXN0cy9pbnNwZWN0b3IvaW5zcGVjdG9yLXRlc3QyLmpzOgorICAgICAgICAoaW5pdGlhbGl6
ZV9JbnNwZWN0b3JUZXN0Lkluc3BlY3RvclRlc3QuZmluZERPTU5vZGUuZmluZERPTU5vZGUucHJv
Y2Vzc0NoaWxkcmVuKToKKyAgICAgICAgKGluaXRpYWxpemVfSW5zcGVjdG9yVGVzdC5JbnNwZWN0
b3JUZXN0LmZpbmRET01Ob2RlLmZpbmRET01Ob2RlKToKKyAgICAgICAgKGluaXRpYWxpemVfSW5z
cGVjdG9yVGVzdC5JbnNwZWN0b3JUZXN0LmZpbmRET01Ob2RlKToKKyAgICAgICAgKiBpbnNwZWN0
b3IvZG9tLWJyZWFrcG9pbnRzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZG9t
LWJyZWFrcG9pbnRzLmh0bWw6CisKIDIwMTAtMDktMTcgIEFkYW0gUm9iZW4gIDxhcm9iZW5AYXBw
bGUuY29tPgogCiAgICAgICAgIExhbmQgbmV3IFdpbmRvd3MgcmVzdWx0cyBmb3IgZmFzdC9mb3Jt
cy9maWxlLWlucHV0LWRpc2FibGVkLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMvaW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0Mi5qcyBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMvaW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0Mi5qcwppbmRleCBkZjY1ZDhhNmZmNGJlYWEwYTlj
MGRmMzQ3ZDdhMDY1NjkxMmUyNjJkLi4xM2YzYjI1MDExZWNkZDJiZjg3YmM3NDIwNTExZTc2NTJk
YjgzNTdhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9pbnNw
ZWN0b3ItdGVzdDIuanMKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvaW5z
cGVjdG9yLXRlc3QyLmpzCkBAIC0yNywxMSArMjcsNiBAQCBJbnNwZWN0b3JUZXN0LmV2YWx1YXRl
SW5QYWdlID0gZnVuY3Rpb24oY29kZSwgY2FsbGJhY2spCiAgICAgSW5qZWN0ZWRTY3JpcHRBY2Nl
c3MuZ2V0RGVmYXVsdCgpLmV2YWx1YXRlKGNvZGUsICJjb25zb2xlIiwgY2FsbGJhY2sgfHwgZnVu
Y3Rpb24oKSB7fSk7CiB9OwogCi1JbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlV2l0aFRpbWVv
dXQgPSBmdW5jdGlvbihjb2RlLCBjYWxsYmFjaykKLXsKLSAgICBJbnNwZWN0b3JUZXN0LmV2YWx1
YXRlSW5QYWdlKCJzZXRUaW1lb3V0KHVuZXNjYXBlKCciICsgZXNjYXBlKGNvZGUpICsgIicpKSIs
IGNhbGxiYWNrKTsKLX07Ci0KIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0ID0gZnVuY3Rpb24odGV4
dCkKIHsKICAgICByZXN1bHRzLnB1c2godGV4dCk7CkBAIC0xMTIsNyArMTA3LDcgQEAgSW5zcGVj
dG9yVGVzdC5kaXNhYmxlUmVzb3VyY2VUcmFja2luZyA9IGZ1bmN0aW9uKCkKIEluc3BlY3RvclRl
c3QuZmluZERPTU5vZGUgPSBmdW5jdGlvbihyb290LCBmaWx0ZXIsIGNhbGxiYWNrKQogewogICAg
IHZhciBmb3VuZCA9IGZhbHNlOwotICAgIHZhciBwZW5kaW5nQ2FsbHMgPSAxOworICAgIHZhciBw
ZW5kaW5nQ2FsbHMgPSAwOwogCiAgICAgaWYgKHJvb3QpCiAgICAgICAgIGZpbmRET01Ob2RlKHJv
b3QpOwpAQCAtMTMzLDE5ICsxMjgsMjAgQEAgSW5zcGVjdG9yVGVzdC5maW5kRE9NTm9kZSA9IGZ1
bmN0aW9uKHJvb3QsIGZpbHRlciwgY2FsbGJhY2spCiAgICAgICAgIGlmIChmaWx0ZXIobm9kZSkp
IHsKICAgICAgICAgICAgIGNhbGxiYWNrKG5vZGUpOwogICAgICAgICAgICAgZm91bmQgPSB0cnVl
OwotICAgICAgICB9IGVsc2UKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHBlbmRpbmdD
YWxscyArPSAxOwogICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRvbUFnZW50LmdldENoaWxkTm9k
ZXNBc3luYyhub2RlLCBwcm9jZXNzQ2hpbGRyZW4pOwotCi0gICAgICAgIC0tcGVuZGluZ0NhbGxz
OwotCi0gICAgICAgIGlmICghZm91bmQgJiYgIXBlbmRpbmdDYWxscykKLSAgICAgICAgICAgIHNl
dFRpbWVvdXQoZmluZERPTU5vZGUuYmluZChudWxsLCByb290KSwgMCk7CisgICAgICAgIH0KIAog
ICAgICAgICBmdW5jdGlvbiBwcm9jZXNzQ2hpbGRyZW4oY2hpbGRyZW4pCiAgICAgICAgIHsKLSAg
ICAgICAgICAgIHBlbmRpbmdDYWxscyArPSBjaGlsZHJlbiA/IGNoaWxkcmVuLmxlbmd0aCA6IDA7
CisgICAgICAgICAgICBwZW5kaW5nQ2FsbHMgLT0gMTsKKwogICAgICAgICAgICAgZm9yICh2YXIg
aSA9IDA7ICFmb3VuZCAmJiBjaGlsZHJlbiAmJiBpIDwgY2hpbGRyZW4ubGVuZ3RoOyArK2kpCiAg
ICAgICAgICAgICAgICAgZmluZERPTU5vZGUoY2hpbGRyZW5baV0pOworCisgICAgICAgICAgICBp
ZiAoIWZvdW5kICYmICFwZW5kaW5nQ2FsbHMgJiYgbm9kZSA9PSByb290KQorICAgICAgICAgICAg
ICAgIGNhbGxiYWNrKG51bGwpOwogICAgICAgICB9CiAgICAgfQogfTsKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9kb20tYnJlYWtwb2ludHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL2RvbS1icmVha3BvaW50cy1leHBlY3RlZC50eHQKaW5kZXggNjM2ZTBl
ZDg2NDU2YWJkY2Q5NGQ3NmRkNzc2ZjQ0ZDlkZmI5NWEwOC4uMmQ4NzVlYzI5OGY0MmUyYTJlYmRm
N2Q1YjVlNWE4YmE2ODc5NGYxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Rv
bS1icmVha3BvaW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Rv
bS1icmVha3BvaW50cy1leHBlY3RlZC50eHQKQEAgLTEsNTkgKzEsMzAgQEAKIFRlc3RzIERPTSBi
cmVha3BvaW50cy4gQnVnIDQyODg2CiAKIERlYnVnZ2VyIHdhcyBlbmFibGVkLgotVGVzdCB0aGF0
ICdTdWJ0cmVlIE1vZGlmaWVkJyBicmVha3BvaW50IGlzIGhpdCB3aGVuIGFwcGVuZGluZyBhIGNo
aWxkLgotU2V0ICdTdWJ0cmVlIE1vZGlmaWVkJyBET00gYnJlYWtwb2ludCBvbiByb290RWxlbWVu
dC4KLUFwcGVuZCBjaGlsZEVsZW1lbnQgdG8gcm9vdEVsZW1lbnQuCitUZXN0IHRoYXQgJ1N1YnRy
ZWUgTW9kaWZpZWQnIGJyZWFrcG9pbnQgaXMgaGl0IHdoZW4gYXBwZW5kaW5nIGNoaWxkLgorU2V0
IHN1YnRyZWUgbW9kaWZpZWQgRE9NIGJyZWFrcG9pbnQgb24gZDAuCitBcHBlbmQgZDEgdG8gZDAu
CiBTY3JpcHQgZXhlY3V0aW9uIHBhdXNlZC4KLUNhbGwgc3RhY2s6Ci0gICAgMCkgYXBwZW5kRWxl
bWVudCAoZG9tLWJyZWFrcG9pbnRzLmh0bWw6MTEpCi0gICAgMSkgICg6MSkKLVBhdXNlZCBvbiBh
ICJTdWJ0cmVlIE1vZGlmaWVkIiBicmVha3BvaW50IHNldCBvbiBkaXYjcm9vdEVsZW1lbnQsIGJl
Y2F1c2UgYSBuZXcgY2hpbGQgd2FzIGFkZGVkIHRvIHRoYXQgbm9kZS4KLVNjcmlwdCBleGVjdXRp
b24gcmVzdW1lZC4KLVRlc3QgdGhhdCAnU3VidHJlZSBNb2RpZmllZCcgYnJlYWtwb2ludCBpcyBo
aXQgd2hlbiBhcHBlbmRpbmcgYSBncmFuZGNoaWxkLgotQXBwZW5kIGdyYW5kY2hpbGRFbGVtZW50
IHRvIGNoaWxkRWxlbWVudC4KLVNjcmlwdCBleGVjdXRpb24gcGF1c2VkLgotQ2FsbCBzdGFjazoK
LSAgICAwKSBhcHBlbmRFbGVtZW50IChkb20tYnJlYWtwb2ludHMuaHRtbDoxMSkKLSAgICAxKSAg
KDoxKQotUGF1c2VkIG9uIGEgIlN1YnRyZWUgTW9kaWZpZWQiIGJyZWFrcG9pbnQgc2V0IG9uIGRp
diNyb290RWxlbWVudCwgYmVjYXVzZSBhIG5ldyBjaGlsZCB3YXMgYWRkZWQgdG8gaXRzIGRlc2Nl
bmRhbnQgZGl2I2NoaWxkRWxlbWVudC4KLVNjcmlwdCBleGVjdXRpb24gcmVzdW1lZC4KLVRlc3Qg
dGhhdCAnU3VidHJlZSBNb2RpZmllZCcgYnJlYWtwb2ludCBpcyBoaXQgd2hlbiByZW1vdmluZyBh
IGNoaWxkLgotUmVtb3ZlIGdyYW5kY2hpbGRFbGVtZW50LgotU2NyaXB0IGV4ZWN1dGlvbiBwYXVz
ZWQuCi1DYWxsIHN0YWNrOgotICAgIDApIHJlbW92ZUVsZW1lbnQgKGRvbS1icmVha3BvaW50cy5o
dG1sOjIzKQotICAgIDEpICAoOjEpCi1QYXVzZWQgb24gYSAiU3VidHJlZSBNb2RpZmllZCIgYnJl
YWtwb2ludCBzZXQgb24gZGl2I3Jvb3RFbGVtZW50LCBiZWNhdXNlIGl0cyBkZXNjZW5kYW50IGRp
diNncmFuZGNoaWxkRWxlbWVudCB3YXMgcmVtb3ZlZC4KK2xpbmU6IDExLCBmdW5jdGlvbjogYXBw
ZW5kRWxlbWVudAogU2NyaXB0IGV4ZWN1dGlvbiByZXN1bWVkLgogVGVzdCB0aGF0ICdBdHRyaWJ1
dGUgTW9kaWZpZWQnIGJyZWFrcG9pbnQgaXMgaGl0IHdoZW4gbW9kaWZ5aW5nIGF0dHJpYnV0ZS4K
LVNldCAnQXR0cmlidXRlIE1vZGlmaWVkJyBET00gYnJlYWtwb2ludCBvbiByb290RWxlbWVudC4K
LU1vZGlmeSByb290RWxlbWVudCBjbGFzc05hbWUuCitTZXQgYXR0cmlidXRlIG1vZGlmaWVkIERP
TSBicmVha3BvaW50IG9uIGQxLgorTW9kaWZ5IGQxIGNsYXNzTmFtZS4KIFNjcmlwdCBleGVjdXRp
b24gcGF1c2VkLgotQ2FsbCBzdGFjazoKLSAgICAwKSBtb2RpZnlBdHRyaWJ1dGUgKGRvbS1icmVh
a3BvaW50cy5odG1sOjE3KQotICAgIDEpICAoOjEpCi1QYXVzZWQgb24gYSAiQXR0cmlidXRlIE1v
ZGlmaWVkIiBicmVha3BvaW50IHNldCBvbiBkaXYjcm9vdEVsZW1lbnQuCitsaW5lOiAxNywgZnVu
Y3Rpb246IG1vZGlmeUF0dHJpYnV0ZQogU2NyaXB0IGV4ZWN1dGlvbiByZXN1bWVkLgogVGVzdCB0
aGF0ICdOb2RlIFJlbW92ZWQnIGJyZWFrcG9pbnQgaXMgaGl0IHdoZW4gcmVtb3ZpbmcgYSBub2Rl
LgotQXBwZW5kIGVsZW1lbnRUb1JlbW92ZSB0byByb290RWxlbWVudC4KLVNldCAnTm9kZSBSZW1v
dmVkJyBET00gYnJlYWtwb2ludCBvbiBlbGVtZW50VG9SZW1vdmUuCi1SZW1vdmUgZWxlbWVudFRv
UmVtb3ZlLgorU2V0IG5vZGUgcmVtb3ZlZCBET00gYnJlYWtwb2ludCBvbiBkMS4KK1JlbW92ZSBk
MS4KIFNjcmlwdCBleGVjdXRpb24gcGF1c2VkLgotQ2FsbCBzdGFjazoKLSAgICAwKSByZW1vdmVF
bGVtZW50IChkb20tYnJlYWtwb2ludHMuaHRtbDoyMykKLSAgICAxKSAgKDoxKQotUGF1c2VkIG9u
IGEgIk5vZGUgUmVtb3ZlZCIgYnJlYWtwb2ludCBzZXQgb24gZGl2I2VsZW1lbnRUb1JlbW92ZS4K
K2xpbmU6IDIzLCBmdW5jdGlvbjogcmVtb3ZlRWxlbWVudAogU2NyaXB0IGV4ZWN1dGlvbiByZXN1
bWVkLgogVGVzdCB0aGF0IERPTSBicmVha3BvaW50cyBhcmUgcGVyc2lzdGVkIGJldHdlZW4gcGFn
ZSByZWxvYWRzLgotU2V0ICdTdWJ0cmVlIE1vZGlmaWVkJyBET00gYnJlYWtwb2ludCBvbiByb290
RWxlbWVudC4KK1NldCBzdWJ0cmVlIG1vZGlmaWVkIERPTSBicmVha3BvaW50IG9uIGQwLgogUGFn
ZSByZWxvYWRlZC4KLUFwcGVuZCBjaGlsZEVsZW1lbnQgdG8gcm9vdEVsZW1lbnQuCitBcHBlbmQg
ZDEgdG8gZDAuCiBTY3JpcHQgZXhlY3V0aW9uIHBhdXNlZC4KLUNhbGwgc3RhY2s6Ci0gICAgMCkg
YXBwZW5kRWxlbWVudCAoZG9tLWJyZWFrcG9pbnRzLmh0bWw6MTEpCi0gICAgMSkgICg6MSkKLVBh
dXNlZCBvbiBhICJTdWJ0cmVlIE1vZGlmaWVkIiBicmVha3BvaW50IHNldCBvbiBkaXYjcm9vdEVs
ZW1lbnQsIGJlY2F1c2UgYSBuZXcgY2hpbGQgd2FzIGFkZGVkIHRvIHRoYXQgbm9kZS4KK2xpbmU6
IDExLCBmdW5jdGlvbjogYXBwZW5kRWxlbWVudAogU2NyaXB0IGV4ZWN1dGlvbiByZXN1bWVkLgog
RGVidWdnZXIgd2FzIGRpc2FibGVkLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZG9tLWJyZWFrcG9pbnRzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZG9tLWJyZWFr
cG9pbnRzLmh0bWwKaW5kZXggYjY2YTE1MTkyYzY2ZjRiNzMwZDMzYjMzYzU4MGZlNTU4MDhhMTkz
ZC4uNzYyNWE0NzIwOWQyN2QyYjUyMmQ0MWQ5ZjIyNDFhNDA5YTkyY2EyNiAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL2RvbS1icmVha3BvaW50cy5odG1sCisrKyBiL0xheW91dFRl
c3RzL2luc3BlY3Rvci9kb20tYnJlYWtwb2ludHMuaHRtbApAQCAtMjUsMTI3ICsyNSw4NSBAQCBm
dW5jdGlvbiByZW1vdmVFbGVtZW50KGVsZW1lbnRJZCkKIAogdmFyIHRlc3QgPSBmdW5jdGlvbigp
CiB7Ci0gICAgdGVzdEluc2VydENoaWxkID0ge307Ci0gICAgdGVzdEluc2VydENoaWxkLnN0ZXAx
ID0gZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIlRl
c3QgdGhhdCAnU3VidHJlZSBNb2RpZmllZCcgYnJlYWtwb2ludCBpcyBoaXQgd2hlbiBhcHBlbmRp
bmcgYSBjaGlsZC4iKTsKLSAgICAgICAgZmluZERPTU5vZGVCeUlkKCJyb290RWxlbWVudCIsIHRl
c3RJbnNlcnRDaGlsZC5zdGVwMik7Ci0gICAgfTsKLSAgICB0ZXN0SW5zZXJ0Q2hpbGQuc3RlcDIg
PSBmdW5jdGlvbihub2RlKQotICAgIHsKLSAgICAgICAgbm9kZS5zZXRCcmVha3BvaW50KFdlYklu
c3BlY3Rvci5ET01CcmVha3BvaW50LlR5cGVzLlN1YnRyZWVNb2RpZmllZCk7Ci0gICAgICAgIElu
c3BlY3RvclRlc3QuYWRkUmVzdWx0KCJTZXQgJ1N1YnRyZWUgTW9kaWZpZWQnIERPTSBicmVha3Bv
aW50IG9uIHJvb3RFbGVtZW50LiIpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5Q
YWdlV2l0aFRpbWVvdXQoImFwcGVuZEVsZW1lbnQoJ3Jvb3RFbGVtZW50JywgJ2NoaWxkRWxlbWVu
dCcpIik7Ci0gICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJBcHBlbmQgY2hpbGRFbGVt
ZW50IHRvIHJvb3RFbGVtZW50LiIpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LndhaXRVbnRpbFBh
dXNlZCh0ZXN0SW5zZXJ0Q2hpbGQuc3RlcDMpOwotICAgIH07Ci0gICAgdGVzdEluc2VydENoaWxk
LnN0ZXAzID0gZnVuY3Rpb24oY2FsbEZyYW1lcykKLSAgICB7Ci0gICAgICAgIGR1bXBTdGF0dXMo
Y2FsbEZyYW1lcyk7Ci0gICAgICAgIEluc3BlY3RvclRlc3QucmVzdW1lRXhlY3V0aW9uKHRlc3RJ
bnNlcnRHcmFuZGNoaWxkLnN0ZXAxKTsKLSAgICB9OworICAgIEluc3BlY3RvclRlc3Quc3RhcnRE
ZWJ1Z2dlclRlc3Qoc3RlcDEpOwogCi0gICAgdmFyIHRlc3RJbnNlcnRHcmFuZGNoaWxkID0ge307
Ci0gICAgdGVzdEluc2VydEdyYW5kY2hpbGQuc3RlcDEgPSBmdW5jdGlvbigpCi0gICAgewotICAg
ICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiVGVzdCB0aGF0ICdTdWJ0cmVlIE1vZGlmaWVk
JyBicmVha3BvaW50IGlzIGhpdCB3aGVuIGFwcGVuZGluZyBhIGdyYW5kY2hpbGQuIik7Ci0gICAg
ICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2VXaXRoVGltZW91dCgiYXBwZW5kRWxlbWVu
dCgnY2hpbGRFbGVtZW50JywgJ2dyYW5kY2hpbGRFbGVtZW50JykiKTsKLSAgICAgICAgSW5zcGVj
dG9yVGVzdC5hZGRSZXN1bHQoIkFwcGVuZCBncmFuZGNoaWxkRWxlbWVudCB0byBjaGlsZEVsZW1l
bnQuIik7Ci0gICAgICAgIEluc3BlY3RvclRlc3Qud2FpdFVudGlsUGF1c2VkKHRlc3RJbnNlcnRH
cmFuZGNoaWxkLnN0ZXAyKTsKLSAgICB9Ci0gICAgdGVzdEluc2VydEdyYW5kY2hpbGQuc3RlcDIg
PSBmdW5jdGlvbihjYWxsRnJhbWVzKQotICAgIHsKLSAgICAgICAgZHVtcFN0YXR1cyhjYWxsRnJh
bWVzKTsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5yZXN1bWVFeGVjdXRpb24odGVzdFJlbW92ZUNo
aWxkLnN0ZXAxKTsKLSAgICB9CisgICAgdmFyIGQwLCBkMTsKIAotICAgIHZhciB0ZXN0UmVtb3Zl
Q2hpbGQgPSB7fTsKLSAgICB0ZXN0UmVtb3ZlQ2hpbGQuc3RlcDEgPSBmdW5jdGlvbigpCisgICAg
ZnVuY3Rpb24gc3RlcDEoKQogICAgIHsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQo
IlRlc3QgdGhhdCAnU3VidHJlZSBNb2RpZmllZCcgYnJlYWtwb2ludCBpcyBoaXQgd2hlbiByZW1v
dmluZyBhIGNoaWxkLiIpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlV2l0
aFRpbWVvdXQoInJlbW92ZUVsZW1lbnQoJ2dyYW5kY2hpbGRFbGVtZW50JykiKTsKLSAgICAgICAg
SW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIlJlbW92ZSBncmFuZGNoaWxkRWxlbWVudC4iKTsKLSAg
ICAgICAgSW5zcGVjdG9yVGVzdC53YWl0VW50aWxQYXVzZWQodGVzdFJlbW92ZUNoaWxkLnN0ZXAy
KTsKLQorICAgICAgICBmaW5kRE9NTm9kZUJ5SWQoImQwIiwgc3RlcDIpOwogICAgIH0KLSAgICB0
ZXN0UmVtb3ZlQ2hpbGQuc3RlcDIgPSBmdW5jdGlvbihjYWxsRnJhbWVzKQorCisgICAgZnVuY3Rp
b24gc3RlcDIobm9kZSkKICAgICB7Ci0gICAgICAgIGR1bXBTdGF0dXMoY2FsbEZyYW1lcyk7Ci0g
ICAgICAgIGZpbmRET01Ob2RlQnlJZCgicm9vdEVsZW1lbnQiLCB0ZXN0UmVtb3ZlQ2hpbGQuc3Rl
cDMpOworICAgICAgICBkMCA9IG5vZGU7CisgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0
KCJUZXN0IHRoYXQgJ1N1YnRyZWUgTW9kaWZpZWQnIGJyZWFrcG9pbnQgaXMgaGl0IHdoZW4gYXBw
ZW5kaW5nIGNoaWxkLiIpOworICAgICAgICBkMC5zZXRCcmVha3BvaW50KFdlYkluc3BlY3Rvci5E
T01CcmVha3BvaW50LlR5cGVzLlN1YnRyZWVNb2RpZmllZCk7CisgICAgICAgIEluc3BlY3RvclRl
c3QuYWRkUmVzdWx0KCJTZXQgc3VidHJlZSBtb2RpZmllZCBET00gYnJlYWtwb2ludCBvbiBkMC4i
KTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluQ29uc29sZSgiYXBwZW5kRWxlbWVu
dCgnZDAnLCAnZDEnKSIpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiQXBwZW5k
IGQxIHRvIGQwLiIpOworICAgICAgICBJbnNwZWN0b3JUZXN0LndhaXRVbnRpbFBhdXNlZChzdGVw
Myk7CiAgICAgfQotICAgIHRlc3RSZW1vdmVDaGlsZC5zdGVwMyA9IGZ1bmN0aW9uKG5vZGUpCisK
KyAgICBmdW5jdGlvbiBzdGVwMyhjYWxsRnJhbWVzKQogICAgIHsKLSAgICAgICAgbm9kZS5yZW1v
dmVCcmVha3BvaW50KFdlYkluc3BlY3Rvci5ET01CcmVha3BvaW50LlR5cGVzLlN1YnRyZWVNb2Rp
ZmllZCk7Ci0gICAgICAgIEluc3BlY3RvclRlc3QucmVzdW1lRXhlY3V0aW9uKHRlc3RNb2RpZnlB
dHRyaWJ1dGUuc3RlcDEpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgibGluZTog
IiArIGNhbGxGcmFtZXNbMF0ubGluZSArICIsIGZ1bmN0aW9uOiAiICsgY2FsbEZyYW1lc1swXS5m
dW5jdGlvbk5hbWUpOworICAgICAgICBkMC5yZW1vdmVCcmVha3BvaW50KFdlYkluc3BlY3Rvci5E
T01CcmVha3BvaW50LlR5cGVzLlN1YnRyZWVNb2RpZmllZCk7CisgICAgICAgIEluc3BlY3RvclRl
c3QucmVzdW1lRXhlY3V0aW9uKGZpbmRET01Ob2RlQnlJZC5iaW5kKG51bGwsICJkMSIsIHN0ZXA0
KSk7CiAgICAgfQogCi0gICAgdmFyIHRlc3RNb2RpZnlBdHRyaWJ1dGUgPSB7fTsKLSAgICB0ZXN0
TW9kaWZ5QXR0cmlidXRlLnN0ZXAxID0gZnVuY3Rpb24oKQorICAgIGZ1bmN0aW9uIHN0ZXA0KG5v
ZGUpCiAgICAgeworICAgICAgICBkMSA9IG5vZGU7CiAgICAgICAgIEluc3BlY3RvclRlc3QuYWRk
UmVzdWx0KCJUZXN0IHRoYXQgJ0F0dHJpYnV0ZSBNb2RpZmllZCcgYnJlYWtwb2ludCBpcyBoaXQg
d2hlbiBtb2RpZnlpbmcgYXR0cmlidXRlLiIpOwotICAgICAgICBmaW5kRE9NTm9kZUJ5SWQoInJv
b3RFbGVtZW50IiwgdGVzdE1vZGlmeUF0dHJpYnV0ZS5zdGVwMik7CisgICAgICAgIGQxLnNldEJy
ZWFrcG9pbnQoV2ViSW5zcGVjdG9yLkRPTUJyZWFrcG9pbnQuVHlwZXMuQXR0cmlidXRlTW9kaWZp
ZWQpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiU2V0IGF0dHJpYnV0ZSBtb2Rp
ZmllZCBET00gYnJlYWtwb2ludCBvbiBkMS4iKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFs
dWF0ZUluQ29uc29sZSgibW9kaWZ5QXR0cmlidXRlKCdkMScsICdjbGFzc05hbWUnLCAnZm9vJyki
KTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIk1vZGlmeSBkMSBjbGFzc05hbWUu
Iik7CisgICAgICAgIEluc3BlY3RvclRlc3Qud2FpdFVudGlsUGF1c2VkKHN0ZXA1KTsKICAgICB9
Ci0gICAgdGVzdE1vZGlmeUF0dHJpYnV0ZS5zdGVwMiA9IGZ1bmN0aW9uKG5vZGUpCi0gICAgewot
ICAgICAgICBub2RlLnNldEJyZWFrcG9pbnQoV2ViSW5zcGVjdG9yLkRPTUJyZWFrcG9pbnQuVHlw
ZXMuQXR0cmlidXRlTW9kaWZpZWQpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgi
U2V0ICdBdHRyaWJ1dGUgTW9kaWZpZWQnIERPTSBicmVha3BvaW50IG9uIHJvb3RFbGVtZW50LiIp
OwotICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlV2l0aFRpbWVvdXQoIm1vZGlm
eUF0dHJpYnV0ZSgncm9vdEVsZW1lbnQnLCAnY2xhc3NOYW1lJywgJ2ZvbycpIik7Ci0gICAgICAg
IEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJNb2RpZnkgcm9vdEVsZW1lbnQgY2xhc3NOYW1lLiIp
OwotICAgICAgICBJbnNwZWN0b3JUZXN0LndhaXRVbnRpbFBhdXNlZCh0ZXN0TW9kaWZ5QXR0cmli
dXRlLnN0ZXAzLmJpbmQobnVsbCwgbm9kZSkpOwotICAgIH0KLSAgICB0ZXN0TW9kaWZ5QXR0cmli
dXRlLnN0ZXAzID0gZnVuY3Rpb24obm9kZSwgY2FsbEZyYW1lcykKKworICAgIGZ1bmN0aW9uIHN0
ZXA1KGNhbGxGcmFtZXMpCiAgICAgewotICAgICAgICBkdW1wU3RhdHVzKGNhbGxGcmFtZXMpOwot
ICAgICAgICBub2RlLnJlbW92ZUJyZWFrcG9pbnQoV2ViSW5zcGVjdG9yLkRPTUJyZWFrcG9pbnQu
VHlwZXMuQXR0cmlidXRlTW9kaWZpZWQpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LnJlc3VtZUV4
ZWN1dGlvbih0ZXN0UmVtb3ZlTm9kZS5zdGVwMSk7CisgICAgICAgIEluc3BlY3RvclRlc3QuYWRk
UmVzdWx0KCJsaW5lOiAiICsgY2FsbEZyYW1lc1swXS5saW5lICsgIiwgZnVuY3Rpb246ICIgKyBj
YWxsRnJhbWVzWzBdLmZ1bmN0aW9uTmFtZSk7CisgICAgICAgIGQxLnJlbW92ZUJyZWFrcG9pbnQo
V2ViSW5zcGVjdG9yLkRPTUJyZWFrcG9pbnQuVHlwZXMuQXR0cmlidXRlTW9kaWZpZWQpOworICAg
ICAgICBJbnNwZWN0b3JUZXN0LnJlc3VtZUV4ZWN1dGlvbihzdGVwNik7CiAgICAgfQogCi0gICAg
dmFyIHRlc3RSZW1vdmVOb2RlID0ge307Ci0gICAgdGVzdFJlbW92ZU5vZGUuc3RlcDEgPSBmdW5j
dGlvbigpCisgICAgZnVuY3Rpb24gc3RlcDYoKQogICAgIHsKICAgICAgICAgSW5zcGVjdG9yVGVz
dC5hZGRSZXN1bHQoIlRlc3QgdGhhdCAnTm9kZSBSZW1vdmVkJyBicmVha3BvaW50IGlzIGhpdCB3
aGVuIHJlbW92aW5nIGEgbm9kZS4iKTsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUlu
UGFnZVdpdGhUaW1lb3V0KCJhcHBlbmRFbGVtZW50KCdyb290RWxlbWVudCcsICdlbGVtZW50VG9S
ZW1vdmUnKSIsIHRlc3RSZW1vdmVOb2RlLnN0ZXAyKTsKKyAgICAgICAgZDEuc2V0QnJlYWtwb2lu
dChXZWJJbnNwZWN0b3IuRE9NQnJlYWtwb2ludC5UeXBlcy5Ob2RlUmVtb3ZlZCk7CisgICAgICAg
IEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJTZXQgbm9kZSByZW1vdmVkIERPTSBicmVha3BvaW50
IG9uIGQxLiIpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5Db25zb2xlKCJyZW1v
dmVFbGVtZW50KCdkMScpIik7CisgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJSZW1v
dmUgZDEuIik7CisgICAgICAgIEluc3BlY3RvclRlc3Qud2FpdFVudGlsUGF1c2VkKHN0ZXA3KTsK
ICAgICB9Ci0gICAgdGVzdFJlbW92ZU5vZGUuc3RlcDIgPSBmdW5jdGlvbigpCi0gICAgewotICAg
ICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiQXBwZW5kIGVsZW1lbnRUb1JlbW92ZSB0byBy
b290RWxlbWVudC4iKTsKLSAgICAgICAgZmluZERPTU5vZGVCeUlkKCJlbGVtZW50VG9SZW1vdmUi
LCB0ZXN0UmVtb3ZlTm9kZS5zdGVwMyk7Ci0gICAgfQotICAgIHRlc3RSZW1vdmVOb2RlLnN0ZXAz
ID0gZnVuY3Rpb24obm9kZSkKLSAgICB7Ci0gICAgICAgIG5vZGUuc2V0QnJlYWtwb2ludChXZWJJ
bnNwZWN0b3IuRE9NQnJlYWtwb2ludC5UeXBlcy5Ob2RlUmVtb3ZlZCk7Ci0gICAgICAgIEluc3Bl
Y3RvclRlc3QuYWRkUmVzdWx0KCJTZXQgJ05vZGUgUmVtb3ZlZCcgRE9NIGJyZWFrcG9pbnQgb24g
ZWxlbWVudFRvUmVtb3ZlLiIpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdl
V2l0aFRpbWVvdXQoInJlbW92ZUVsZW1lbnQoJ2VsZW1lbnRUb1JlbW92ZScpIik7Ci0gICAgICAg
IEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJSZW1vdmUgZWxlbWVudFRvUmVtb3ZlLiIpOwotICAg
ICAgICBJbnNwZWN0b3JUZXN0LndhaXRVbnRpbFBhdXNlZCh0ZXN0UmVtb3ZlTm9kZS5zdGVwNCk7
Ci0gICAgfQotICAgIHRlc3RSZW1vdmVOb2RlLnN0ZXA0ID0gZnVuY3Rpb24oY2FsbEZyYW1lcykK
KworICAgIGZ1bmN0aW9uIHN0ZXA3KGNhbGxGcmFtZXMpCiAgICAgewotICAgICAgICBkdW1wU3Rh
dHVzKGNhbGxGcmFtZXMpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LnJlc3VtZUV4ZWN1dGlvbih0
ZXN0UmVsb2FkLnN0ZXAxKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoImxpbmU6
ICIgKyBjYWxsRnJhbWVzWzBdLmxpbmUgKyAiLCBmdW5jdGlvbjogIiArIGNhbGxGcmFtZXNbMF0u
ZnVuY3Rpb25OYW1lKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5yZXN1bWVFeGVjdXRpb24oc3Rl
cDgpOwogICAgIH0KIAotICAgIHZhciB0ZXN0UmVsb2FkPSB7fTsKLSAgICB0ZXN0UmVsb2FkLnN0
ZXAxID0gZnVuY3Rpb24oKQorICAgIGZ1bmN0aW9uIHN0ZXA4KCkKICAgICB7CiAgICAgICAgIElu
c3BlY3RvclRlc3QuYWRkUmVzdWx0KCJUZXN0IHRoYXQgRE9NIGJyZWFrcG9pbnRzIGFyZSBwZXJz
aXN0ZWQgYmV0d2VlbiBwYWdlIHJlbG9hZHMuIik7Ci0gICAgICAgIGZpbmRET01Ob2RlQnlJZCgi
cm9vdEVsZW1lbnQiLCB0ZXN0UmVsb2FkLnN0ZXAyKTsKLSAgICB9Ci0gICAgdGVzdFJlbG9hZC5z
dGVwMiA9IGZ1bmN0aW9uKG5vZGUpCi0gICAgewotICAgICAgICBub2RlLnNldEJyZWFrcG9pbnQo
V2ViSW5zcGVjdG9yLkRPTUJyZWFrcG9pbnQuVHlwZXMuU3VidHJlZU1vZGlmaWVkKTsKLSAgICAg
ICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIlNldCAnU3VidHJlZSBNb2RpZmllZCcgRE9NIGJy
ZWFrcG9pbnQgb24gcm9vdEVsZW1lbnQuIik7Ci0gICAgICAgIEluc3BlY3RvclRlc3QucmVsb2Fk
UGFnZSh0ZXN0UmVsb2FkLnN0ZXAzKTsKKyAgICAgICAgZDAuc2V0QnJlYWtwb2ludChXZWJJbnNw
ZWN0b3IuRE9NQnJlYWtwb2ludC5UeXBlcy5TdWJ0cmVlTW9kaWZpZWQpOworICAgICAgICBJbnNw
ZWN0b3JUZXN0LmFkZFJlc3VsdCgiU2V0IHN1YnRyZWUgbW9kaWZpZWQgRE9NIGJyZWFrcG9pbnQg
b24gZDAuIik7CisgICAgICAgIEluc3BlY3RvclRlc3QucmVsb2FkUGFnZShzdGVwOSk7CiAgICAg
fQotICAgIHRlc3RSZWxvYWQuc3RlcDMgPSBmdW5jdGlvbigpCisKKyAgICBmdW5jdGlvbiBzdGVw
OSgpCiAgICAgewotICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlV2l0aFRpbWVv
dXQoImFwcGVuZEVsZW1lbnQoJ3Jvb3RFbGVtZW50JywgJ2NoaWxkRWxlbWVudCcpIik7Ci0gICAg
ICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJBcHBlbmQgY2hpbGRFbGVtZW50IHRvIHJvb3RF
bGVtZW50LiIpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LndhaXRVbnRpbFBhdXNlZCh0ZXN0UmVs
b2FkLnN0ZXA0KTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluQ29uc29sZSgiYXBw
ZW5kRWxlbWVudCgnZDAnLCAnZDEnKSIpOworICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3Vs
dCgiQXBwZW5kIGQxIHRvIGQwLiIpOworICAgICAgICBJbnNwZWN0b3JUZXN0LndhaXRVbnRpbFBh
dXNlZChzdGVwMTApOwogICAgIH0KLSAgICB0ZXN0UmVsb2FkLnN0ZXA0ID0gZnVuY3Rpb24oY2Fs
bEZyYW1lcykKKworICAgIGZ1bmN0aW9uIHN0ZXAxMChjYWxsRnJhbWVzKQogICAgIHsKLSAgICAg
ICAgZHVtcFN0YXR1cyhjYWxsRnJhbWVzKTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1
bHQoImxpbmU6ICIgKyBjYWxsRnJhbWVzWzBdLmxpbmUgKyAiLCBmdW5jdGlvbjogIiArIGNhbGxG
cmFtZXNbMF0uZnVuY3Rpb25OYW1lKTsKICAgICAgICAgSW5zcGVjdG9yVGVzdC5jb21wbGV0ZURl
YnVnZ2VyVGVzdCgpOwogICAgIH0KIApAQCAtMTU1LDE0ICsxMTMsNiBAQCB2YXIgdGVzdCA9IGZ1
bmN0aW9uKCkKICAgICAgICAgICAgIHJldHVybiBub2RlLmdldEF0dHJpYnV0ZSgiaWQiKSA9PT0g
aWQ7CiAgICAgICAgIH0sIGNhbGxiYWNrKTsKICAgICB9Ci0KLSAgICBmdW5jdGlvbiBkdW1wU3Rh
dHVzKGNhbGxGcmFtZXMpCi0gICAgewotICAgICAgICBJbnNwZWN0b3JUZXN0LmNhcHR1cmVTdGFj
a1RyYWNlKGNhbGxGcmFtZXMpOwotICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdChXZWJJ
bnNwZWN0b3IucGFuZWxzLnNjcmlwdHMuc2lkZWJhclBhbmVzLmNhbGxzdGFjay5ib2R5RWxlbWVu
dC5sYXN0Q2hpbGQuaW5uZXJUZXh0KTsKLSAgICB9Ci0KLSAgICBJbnNwZWN0b3JUZXN0LnN0YXJ0
RGVidWdnZXJUZXN0KHRlc3RJbnNlcnRDaGlsZC5zdGVwMSk7CiB9OwogCiA8L3NjcmlwdD4KQEAg
LTE3Miw3ICsxMjIsNyBAQCB2YXIgdGVzdCA9IGZ1bmN0aW9uKCkKIDxwPgogVGVzdHMgRE9NIGJy
ZWFrcG9pbnRzLiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NDI4ODYiPkJ1ZyA0Mjg4NjwvYT4KIDwvcD4KLTxkaXYgaWQ9InJvb3RFbGVtZW50Ij48L2Rp
dj4KKzxkaXYgaWQ9ImQwIj48L2Rpdj4KIDwvYm9keT4KIDwvaHRtbD4KIApkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyY2RiNDY3MGJjY2Mw
NTk1NTQwMGNkOTE3ZDkwNTdjMGFlZjBhZTk3Li5iMDM2YjBhOThkYjRjYzIzMWNlYmZlZDNmMTQy
ZjY2NDMwMzEzOTFiIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3Jl
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEwLTA5LTE3ICBTaGVyaWZmIEJvdCAgPHdl
YmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByNjc3MjEuCisgICAgICAgIGh0dHA6Ly90cmFjLndlYmtpdC5vcmcvY2hhbmdlc2V0LzY3
NzIxCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NTk3
NQorCisgICAgICAgICJzdmcvZHluYW1pYy11cGRhdGVzL1NWR0NpcmNsZUVsZW1lbnQtZG9tLWN5
LWF0dHIuaHRtbCBjcmFzaGVzCisgICAgICAgIG9uIEd0ayIgKFJlcXVlc3RlZCBieSB5dXJ5cyBv
biAjd2Via2l0KS4KKworICAgICAgICAqIEVuZ2xpc2gubHByb2ovbG9jYWxpemVkU3RyaW5ncy5q
czoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yRE9NQWdlbnQ6OnBlcmZvcm1TZWFyY2gpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yRE9NQWdlbnQ6OnNob3VsZEJyZWFrT25Ob2RlSW5zZXJ0aW9uKToKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRPTUFnZW50OjpzaG91bGRCcmVha09uTm9kZVJlbW92
YWwpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NQWdlbnQ6OnNob3VsZEJyZWFrT25B
dHRyaWJ1dGVNb2RpZmljYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NQWdl
bnQ6OmNyZWF0ZUJyZWFrcG9pbnQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JET01B
Z2VudC5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JEZWJ1Z2dlckFnZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRlYnVnZ2VyQWdlbnQ6OmRpZFBhdXNlKToKKyAg
ICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0NhbGxTdGFja1NpZGViYXJQYW5lLmpzOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLkNhbGxTdGFja1NpZGViYXJQYW5lKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzUGFuZWwuanM6CisgICAgICAgICogaW5zcGVjdG9yL2Zy
b250LWVuZC9TY3JpcHRzUGFuZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU2NyaXB0c1Bh
bmVsLnByb3RvdHlwZS5kZWJ1Z2dlclBhdXNlZCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250
LWVuZC9pbnNwZWN0b3IuY3NzOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVj
dG9yLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLnBhdXNlZFNjcmlwdCk6CisKIDIwMTAtMDkt
MTcgIE1hcnRpbiBSb2JpbnNvbiAgPG1yb2JpbnNvbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IFhhbiBMb3Blei4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRW5nbGlzaC5scHJvai9s
b2NhbGl6ZWRTdHJpbmdzLmpzIGIvV2ViQ29yZS9FbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0cmlu
Z3MuanMKaW5kZXggYTM3MjBlMjJlMzVlNzMwNmRjZWYwMTc3ZDI1MWY3ODRiMTNkYWU1MS4uZWVk
ZjIyNWZhNTdkZjYyMGNjMTI3OTVmMTc1NjVkZDdhOWY2NmFjMSAxMDA2NDQKR0lUIGJpbmFyeSBw
YXRjaApkZWx0YSAyMQpkY21acXEhWmhiSyh9d2dkbGwyd3FDZCgoS088cH1jNUNDdW4zQ3tvawoK
ZGVsdGEgMTAzNwp6Y21iUjlueUtYcih9d2dkJH5Gdm40RVlReDQ1PHV1M2B6e0szPD9ha0smLUBv
QnRIMi1uIWJEfkxvclpJM1EjVHwKenM2JkF2NXJ8YGU+UXNUXkt6ZWU2eE9sdytTV085QjRNPEsw
JFYmcTFPYXwoSm07dXE3Mk5XdkAkfFc7b0ZrfnwxCnpmSzR0M3N3b0RGQj81VU03bENYbTBvdGJr
UjhheiEwZmBtXl5gcnZia09FWWYyTllLVHlGbX09aEUzX0JsN3JpWQp6QzdIKGZVNkBVfkZmMEx2
YlJzeXNwZk5zcVVBaVFHKkpSU29ISXBDWTcqM3ZfJCR7VEppTnZ+eGFDJVZ5cmFuayYKekQqfnBi
VHdwM0kxRW5+XlZHPkpJSCV4QWpIPUx9VyNVcVg8cDl4flBWRGclRFk1WEI0amlDcGFrQVFpRyFK
Ml4hCkUwRShAPnZIJD04CgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
RE9NQWdlbnQuY3BwIGIvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwCmlu
ZGV4IGYxZGY1YjBiYzUzZmQxY2IzMTA4Mjg5NmNlMmNlYjM4MzM5YzkxYTAuLjM2YjQ0OGY1YjFl
ZjE0NmQ4NmJhMzQxOTYxNTAxZTdhZWViZDU1NzcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckRPTUFnZW50LmNwcAorKysgYi9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JET01BZ2VudC5jcHAKQEAgLTcwOCw3ICs3MDgsNyBAQCB2b2lkIEluc3BlY3RvckRPTUFnZW50
OjpwZXJmb3JtU2VhcmNoKGNvbnN0IFN0cmluZyYgd2hpdGVzcGFjZVRyaW1tZWRRdWVyeSwgYm9v
bAogICAgICAgICAgICAgbV9wZW5kaW5nTWF0Y2hKb2JzLmFwcGVuZChuZXcgTWF0Y2hQbGFpblRl
eHRKb2IoZG9jdW1lbnQsIGVzY2FwZWRRdWVyeSkpOwogICAgICAgICAgICAgY29udGludWU7CiAg
ICAgICAgIH0KLQorICAgICAgICAgICAgCiAgICAgICAgIG1fcGVuZGluZ01hdGNoSm9icy5hcHBl
bmQobmV3IE1hdGNoRXhhY3RJZEpvYihkb2N1bWVudCwgd2hpdGVzcGFjZVRyaW1tZWRRdWVyeSkp
OwogICAgICAgICBtX3BlbmRpbmdNYXRjaEpvYnMuYXBwZW5kKG5ldyBNYXRjaEV4YWN0Q2xhc3NO
YW1lc0pvYihkb2N1bWVudCwgd2hpdGVzcGFjZVRyaW1tZWRRdWVyeSkpOwogICAgICAgICBtX3Bl
bmRpbmdNYXRjaEpvYnMuYXBwZW5kKG5ldyBNYXRjaEV4YWN0VGFnTmFtZXNKb2IoZG9jdW1lbnQs
IHRhZ05hbWVRdWVyeSkpOwpAQCAtNzc3LDcwICs3NzcsMzggQEAgdm9pZCBJbnNwZWN0b3JET01B
Z2VudDo6cmVtb3ZlRE9NQnJlYWtwb2ludChsb25nIG5vZGVJZCwgbG9uZyB0eXBlKQogCiBib29s
IEluc3BlY3RvckRPTUFnZW50OjpzaG91bGRCcmVha09uTm9kZUluc2VydGlvbihOb2RlKiwgTm9k
ZSogcGFyZW50LCBQYXNzUmVmUHRyPEluc3BlY3RvclZhbHVlPiogZGV0YWlscykKIHsKLSAgICBp
ZiAoaGFzQnJlYWtwb2ludChwYXJlbnQsIFN1YnRyZWVNb2RpZmllZCkpIHsKLSAgICAgICAgKmRl
dGFpbHMgPSBkZXNjcmlwdGlvbkZvckRPTUV2ZW50KHBhcmVudCwgU3VidHJlZU1vZGlmaWVkLCB0
cnVlKTsKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotICAgIHJldHVybiBmYWxzZTsKKyAg
ICBpZiAoIWhhc0JyZWFrcG9pbnQocGFyZW50LCBTdWJ0cmVlTW9kaWZpZWQpKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gZGV0YWlsc09iamVjdCA9
IEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCk7CisgICAgZGV0YWlsc09iamVjdC0+c2V0T2JqZWN0
KCJicmVha3BvaW50IiwgY3JlYXRlQnJlYWtwb2ludChwYXJlbnQsIFN1YnRyZWVNb2RpZmllZCkp
OworICAgICpkZXRhaWxzID0gZGV0YWlsc09iamVjdDsKKyAgICByZXR1cm4gdHJ1ZTsKIH0KIAog
Ym9vbCBJbnNwZWN0b3JET01BZ2VudDo6c2hvdWxkQnJlYWtPbk5vZGVSZW1vdmFsKE5vZGUqIG5v
ZGUsIFBhc3NSZWZQdHI8SW5zcGVjdG9yVmFsdWU+KiBkZXRhaWxzKQogewotICAgIGlmIChoYXNC
cmVha3BvaW50KG5vZGUsIE5vZGVSZW1vdmVkKSkgewotICAgICAgICAqZGV0YWlscyA9IGRlc2Ny
aXB0aW9uRm9yRE9NRXZlbnQobm9kZSwgTm9kZVJlbW92ZWQsIGZhbHNlKTsKLSAgICAgICAgcmV0
dXJuIHRydWU7Ci0gICAgfQotICAgIGlmIChoYXNCcmVha3BvaW50KGlubmVyUGFyZW50Tm9kZShu
b2RlKSwgU3VidHJlZU1vZGlmaWVkKSkgewotICAgICAgICAqZGV0YWlscyA9IGRlc2NyaXB0aW9u
Rm9yRE9NRXZlbnQobm9kZSwgU3VidHJlZU1vZGlmaWVkLCBmYWxzZSk7Ci0gICAgICAgIHJldHVy
biB0cnVlOwotICAgIH0KLSAgICByZXR1cm4gZmFsc2U7Ci19CisgICAgYm9vbCBoYXNOb2RlUmVt
b3ZlZEJyZWFrcG9pbnQgPSBoYXNCcmVha3BvaW50KG5vZGUsIE5vZGVSZW1vdmVkKTsKKyAgICBi
b29sIGhhc0FueUJyZWFrcG9pbnQgPSBoYXNOb2RlUmVtb3ZlZEJyZWFrcG9pbnQgfHwgaGFzQnJl
YWtwb2ludChpbm5lclBhcmVudE5vZGUobm9kZSksIFN1YnRyZWVNb2RpZmllZCk7CisgICAgaWYg
KCFoYXNBbnlCcmVha3BvaW50KQorICAgICAgICByZXR1cm4gZmFsc2U7CiAKLWJvb2wgSW5zcGVj
dG9yRE9NQWdlbnQ6OnNob3VsZEJyZWFrT25BdHRyaWJ1dGVNb2RpZmljYXRpb24oRWxlbWVudCog
ZWxlbWVudCwgUGFzc1JlZlB0cjxJbnNwZWN0b3JWYWx1ZT4qIGRldGFpbHMpCi17Ci0gICAgaWYg
KGhhc0JyZWFrcG9pbnQoZWxlbWVudCwgQXR0cmlidXRlTW9kaWZpZWQpKSB7Ci0gICAgICAgICpk
ZXRhaWxzID0gZGVzY3JpcHRpb25Gb3JET01FdmVudChlbGVtZW50LCBBdHRyaWJ1dGVNb2RpZmll
ZCwgZmFsc2UpOwotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB9Ci0gICAgcmV0dXJuIGZhbHNl
OworICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGRldGFpbHNPYmplY3QgPSBJbnNwZWN0b3JP
YmplY3Q6OmNyZWF0ZSgpOworICAgIGlmIChoYXNOb2RlUmVtb3ZlZEJyZWFrcG9pbnQpCisgICAg
ICAgIGRldGFpbHNPYmplY3QtPnNldE9iamVjdCgiYnJlYWtwb2ludCIsIGNyZWF0ZUJyZWFrcG9p
bnQobm9kZSwgTm9kZVJlbW92ZWQpKTsKKyAgICBlbHNlCisgICAgICAgIGRldGFpbHNPYmplY3Qt
PnNldE9iamVjdCgiYnJlYWtwb2ludCIsIGNyZWF0ZUJyZWFrcG9pbnQoaW5uZXJQYXJlbnROb2Rl
KG5vZGUpLCBTdWJ0cmVlTW9kaWZpZWQpKTsKKyAgICAqZGV0YWlscyA9IGRldGFpbHNPYmplY3Q7
CisgICAgcmV0dXJuIHRydWU7CiB9CiAKLVBhc3NSZWZQdHI8SW5zcGVjdG9yVmFsdWU+IEluc3Bl
Y3RvckRPTUFnZW50OjpkZXNjcmlwdGlvbkZvckRPTUV2ZW50KE5vZGUqIHRhcmdldCwgbG9uZyBi
cmVha3BvaW50VHlwZSwgYm9vbCBpbnNlcnRpb24pCitib29sIEluc3BlY3RvckRPTUFnZW50Ojpz
aG91bGRCcmVha09uQXR0cmlidXRlTW9kaWZpY2F0aW9uKEVsZW1lbnQqIGVsZW1lbnQsIFBhc3NS
ZWZQdHI8SW5zcGVjdG9yVmFsdWU+KiBkZXRhaWxzKQogewotICAgIEFTU0VSVChoYXNCcmVha3Bv
aW50KHRhcmdldCwgYnJlYWtwb2ludFR5cGUpKTsKLQotICAgIFJlZlB0cjxJbnNwZWN0b3JPYmpl
Y3Q+IGRlc2NyaXB0aW9uID0gSW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUoKTsKLSAgICBOb2RlKiBi
cmVha3BvaW50T3duZXIgPSB0YXJnZXQ7Ci0gICAgaWYgKCgxIDw8IGJyZWFrcG9pbnRUeXBlKSAm
IGluaGVyaXRhYmxlRE9NQnJlYWtwb2ludFR5cGVzTWFzaykgewotICAgICAgICAvLyBGb3IgaW5o
ZXJpdGFibGUgYnJlYWtwb2ludCB0eXBlcywgdGFyZ2V0IG5vZGUgaXNuJ3QgYWx3YXlzIHRoZSBz
YW1lIGFzIHRoZSBub2RlIHRoYXQgb3ducyBhIGJyZWFrcG9pbnQuCi0gICAgICAgIC8vIFRhcmdl
dCBub2RlIG1heSBiZSB1bmtub3duIHRvIGZyb250ZW5kLCBzbyB3ZSBuZWVkIHRvIHB1c2ggaXQg
Zmlyc3QuCi0gICAgICAgIGxvbmcgdGFyZ2V0Tm9kZUlkID0gcHVzaE5vZGVQYXRoVG9Gcm9udGVu
ZCh0YXJnZXQpOwotICAgICAgICBBU1NFUlQodGFyZ2V0Tm9kZUlkKTsKLSAgICAgICAgZGVzY3Jp
cHRpb24tPnNldE51bWJlcigidGFyZ2V0Tm9kZUlkIiwgdGFyZ2V0Tm9kZUlkKTsKLQotICAgICAg
ICAvLyBGaW5kIGJyZWFrcG9pbnQgb3duZXIgbm9kZS4KLSAgICAgICAgaWYgKCFpbnNlcnRpb24p
Ci0gICAgICAgICAgICBicmVha3BvaW50T3duZXIgPSBpbm5lclBhcmVudE5vZGUodGFyZ2V0KTsK
LSAgICAgICAgQVNTRVJUKGJyZWFrcG9pbnRPd25lcik7Ci0gICAgICAgIHdoaWxlICghKG1fYnJl
YWtwb2ludHMuZ2V0KGJyZWFrcG9pbnRPd25lcikgJiAoMSA8PCBicmVha3BvaW50VHlwZSkpKSB7
Ci0gICAgICAgICAgICBicmVha3BvaW50T3duZXIgPSBpbm5lclBhcmVudE5vZGUoYnJlYWtwb2lu
dE93bmVyKTsKLSAgICAgICAgICAgIEFTU0VSVChicmVha3BvaW50T3duZXIpOwotICAgICAgICB9
Ci0KLSAgICAgICAgaWYgKGJyZWFrcG9pbnRUeXBlID09IFN1YnRyZWVNb2RpZmllZCkKLSAgICAg
ICAgICAgIGRlc2NyaXB0aW9uLT5zZXRCb29sZWFuKCJpbnNlcnRpb24iLCBpbnNlcnRpb24pOwot
ICAgIH0KLQotICAgIGxvbmcgYnJlYWtwb2ludE93bmVyTm9kZUlkID0gbV9kb2N1bWVudE5vZGVU
b0lkTWFwLmdldChicmVha3BvaW50T3duZXIpOwotICAgIEFTU0VSVChicmVha3BvaW50T3duZXJO
b2RlSWQpOwotCi0gICAgUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gYnJlYWtwb2ludCA9IEluc3Bl
Y3Rvck9iamVjdDo6Y3JlYXRlKCk7Ci0gICAgYnJlYWtwb2ludC0+c2V0TnVtYmVyKCJub2RlSWQi
LCBicmVha3BvaW50T3duZXJOb2RlSWQpOwotICAgIGJyZWFrcG9pbnQtPnNldE51bWJlcigidHlw
ZSIsIGJyZWFrcG9pbnRUeXBlKTsKLSAgICBkZXNjcmlwdGlvbi0+c2V0T2JqZWN0KCJicmVha3Bv
aW50IiwgYnJlYWtwb2ludCk7Ci0KLSAgICByZXR1cm4gZGVzY3JpcHRpb247CisgICAgaWYgKCFo
YXNCcmVha3BvaW50KGVsZW1lbnQsIEF0dHJpYnV0ZU1vZGlmaWVkKSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGRldGFpbHNPYmplY3QgPSBJbnNw
ZWN0b3JPYmplY3Q6OmNyZWF0ZSgpOworICAgIGRldGFpbHNPYmplY3QtPnNldE9iamVjdCgiYnJl
YWtwb2ludCIsIGNyZWF0ZUJyZWFrcG9pbnQoZWxlbWVudCwgQXR0cmlidXRlTW9kaWZpZWQpKTsK
KyAgICAqZGV0YWlscyA9IGRldGFpbHNPYmplY3Q7CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIFN0
cmluZyBJbnNwZWN0b3JET01BZ2VudDo6ZG9jdW1lbnRVUkxTdHJpbmcoRG9jdW1lbnQqIGRvY3Vt
ZW50KSBjb25zdApAQCAtMTEyMCw2ICsxMDg4LDIzIEBAIHZvaWQgSW5zcGVjdG9yRE9NQWdlbnQ6
OmRpZE1vZGlmeURPTUF0dHIoRWxlbWVudCogZWxlbWVudCkKICAgICBtX2Zyb250ZW5kLT5hdHRy
aWJ1dGVzVXBkYXRlZChpZCwgYnVpbGRBcnJheUZvckVsZW1lbnRBdHRyaWJ1dGVzKGVsZW1lbnQp
KTsKIH0KIAorUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IEluc3BlY3RvckRPTUFnZW50Ojpj
cmVhdGVCcmVha3BvaW50KE5vZGUqIG5vZGUsIGxvbmcgdHlwZSkKK3sKKyAgICBSZWZQdHI8SW5z
cGVjdG9yT2JqZWN0PiBicmVha3BvaW50ID0gSW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUoKTsKKwor
ICAgIC8vIEZpbmQgYnJlYWtwb2ludCBvd25lci4KKyAgICB3aGlsZSAoIShtX2JyZWFrcG9pbnRz
LmdldChub2RlKSAmICgxIDw8IHR5cGUpKSkgeworICAgICAgICBub2RlID0gaW5uZXJQYXJlbnRO
b2RlKG5vZGUpOworICAgICAgICBBU1NFUlQobm9kZSk7CisgICAgfQorICAgIGxvbmcgbm9kZUlk
ID0gbV9kb2N1bWVudE5vZGVUb0lkTWFwLmdldChub2RlKTsKKyAgICBBU1NFUlQobm9kZUlkKTsK
KworICAgIGJyZWFrcG9pbnQtPnNldE51bWJlcigibm9kZUlkIiwgbm9kZUlkKTsKKyAgICBicmVh
a3BvaW50LT5zZXROdW1iZXIoInR5cGUiLCB0eXBlKTsKKyAgICByZXR1cm4gYnJlYWtwb2ludC5y
ZWxlYXNlKCk7Cit9CisKIGJvb2wgSW5zcGVjdG9yRE9NQWdlbnQ6Omhhc0JyZWFrcG9pbnQoTm9k
ZSogbm9kZSwgbG9uZyB0eXBlKQogewogICAgIHVpbnQzMl90IHJvb3RCaXQgPSAxIDw8IHR5cGU7
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5oIGIvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuaAppbmRleCA3ZDg2OTk3YmZiNzg1ZjAz
ZGRkMTM1OGU4Yzg3OWZkNWFhMjE5MDhmLi43YTlmNmJjYWVmMWI3NmI1ZTY2NjE1NWQ0NTNjYTk4
NWQxZTYxYWI1IDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2Vu
dC5oCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmgKQEAgLTE2MSw4
ICsxNjEsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIGJvb2wgcHVzaERvY3VtZW50
VG9Gcm9udGVuZCgpOwogCiAgICAgICAgIGJvb2wgaGFzQnJlYWtwb2ludChOb2RlKiBub2RlLCBs
b25nIHR5cGUpOworICAgICAgICBQYXNzUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gY3JlYXRlQnJl
YWtwb2ludChOb2RlKiBub2RlLCBsb25nIHR5cGUpOwogICAgICAgICB2b2lkIHVwZGF0ZVN1YnRy
ZWVCcmVha3BvaW50cyhOb2RlKiByb290LCB1aW50MzJfdCByb290TWFzaywgYm9vbCB2YWx1ZSk7
Ci0gICAgICAgIFBhc3NSZWZQdHI8SW5zcGVjdG9yVmFsdWU+IGRlc2NyaXB0aW9uRm9yRE9NRXZl
bnQoTm9kZSogdGFyZ2V0LCBsb25nIGJyZWFrcG9pbnRUeXBlLCBib29sIGluc2VydGlvbik7CiAK
ICAgICAgICAgUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGJ1aWxkT2JqZWN0Rm9yQXR0cmli
dXRlU3R5bGVzKEVsZW1lbnQqIGVsZW1lbnQpOwogICAgICAgICBQYXNzUmVmUHRyPEluc3BlY3Rv
ckFycmF5PiBidWlsZEFycmF5Rm9yQ1NTUnVsZXMoRG9jdW1lbnQqIG93bmVyRG9jdW1lbnQsIENT
U1J1bGVMaXN0Kik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JEZWJ1
Z2dlckFnZW50LmNwcCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQu
Y3BwCmluZGV4IDM4NzViZTA0OTI5ODhmNWFiZTJlYzYzYzg3MTI4YzNlOTg0ODE4YjEuLmExMTEx
OTdjYTk0YTQ0ZmIwMTBmZWQ1NDY5NGU4NDIxYjk4MWUzNDUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwCisrKyBiL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckRlYnVnZ2VyQWdlbnQuY3BwCkBAIC0yOTMsNyArMjkzLDcgQEAgdm9pZCBJ
bnNwZWN0b3JEZWJ1Z2dlckFnZW50OjpkaWRQYXVzZShTY3JpcHRTdGF0ZSogc2NyaXB0U3RhdGUp
CiAgICAgbV9wYXVzZWRTY3JpcHRTdGF0ZSA9IHNjcmlwdFN0YXRlOwogICAgIFJlZlB0cjxJbnNw
ZWN0b3JPYmplY3Q+IGRldGFpbHMgPSBJbnNwZWN0b3JPYmplY3Q6OmNyZWF0ZSgpOwogICAgIGRl
dGFpbHMtPnNldFZhbHVlKCJjYWxsRnJhbWVzIiwgY3VycmVudENhbGxGcmFtZXMoKSk7Ci0gICAg
ZGV0YWlscy0+c2V0VmFsdWUoInN0YXR1cyIsIG1fYnJlYWtQcm9ncmFtUmVhc29uKTsKKyAgICBk
ZXRhaWxzLT5zZXRWYWx1ZSgicmVhc29uIiwgbV9icmVha1Byb2dyYW1SZWFzb24pOwogICAgIG1f
ZnJvbnRlbmQtPnBhdXNlZFNjcmlwdChkZXRhaWxzKTsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NhbGxTdGFja1NpZGViYXJQYW5lLmpzIGIvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0NhbGxTdGFja1NpZGViYXJQYW5lLmpzCmluZGV4IDkxZjM1YTY5
YzlkZDZhNTRkMWQ0NzUyMjI3MjVjMzdkZTU3NWExNGEuLjYwZWVlMzQ2MmYxYzM0MjhjMjg1NmQ2
MTU1Y2MyMDVhMzFjZjRiODggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9DYWxsU3RhY2tTaWRlYmFyUGFuZS5qcworKysgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvQ2FsbFN0YWNrU2lkZWJhclBhbmUuanMKQEAgLTI2LDYgKzI2LDcgQEAKIFdlYkluc3BlY3Rv
ci5DYWxsU3RhY2tTaWRlYmFyUGFuZSA9IGZ1bmN0aW9uKCkKIHsKICAgICBXZWJJbnNwZWN0b3Iu
U2lkZWJhclBhbmUuY2FsbCh0aGlzLCBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkNhbGwgU3RhY2si
KSk7CisgICAgCiB9CiAKIFdlYkluc3BlY3Rvci5DYWxsU3RhY2tTaWRlYmFyUGFuZS5wcm90b3R5
cGUgPSB7CkBAIC04MiwzOSArODMsNiBAQCBXZWJJbnNwZWN0b3IuQ2FsbFN0YWNrU2lkZWJhclBh
bmUucHJvdG90eXBlID0gewogICAgICAgICB9CiAgICAgfSwKIAotICAgIHVwZGF0ZVN0YXR1czog
IGZ1bmN0aW9uKHN0YXR1cykKLSAgICB7Ci0gICAgICAgIHZhciBzdGF0dXNFbGVtZW50ID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgICAgIHN0YXR1c0VsZW1lbnQuY2xhc3NO
YW1lID0gImluZm8iOwotCi0gICAgICAgIHZhciBicmVha3BvaW50VHlwZSA9IHN0YXR1cy5icmVh
a3BvaW50LnR5cGU7Ci0gICAgICAgIHZhciBzdWJzdGl0dXRpb25zID0gW1dlYkluc3BlY3Rvci5E
T01CcmVha3BvaW50LmxhYmVsRm9yVHlwZShicmVha3BvaW50VHlwZSksIFdlYkluc3BlY3Rvci5w
YW5lbHMuZWxlbWVudHMubGlua2lmeU5vZGVCeUlkKHN0YXR1cy5icmVha3BvaW50Lm5vZGVJZCld
OwotICAgICAgICB2YXIgZm9ybWF0dGVycyA9IHsKLSAgICAgICAgICAgIHM6IGZ1bmN0aW9uKHN1
YnN0aXR1dGlvbikKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICByZXR1cm4gc3Vic3Rp
dHV0aW9uOwotICAgICAgICAgICAgfQotICAgICAgICB9OwotICAgICAgICBmdW5jdGlvbiBhcHBl
bmQoYSwgYikKLSAgICAgICAgewotICAgICAgICAgICAgaWYgKHR5cGVvZiBiID09PSAic3RyaW5n
IikKLSAgICAgICAgICAgICAgICBiID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoYik7Ci0gICAg
ICAgICAgICBzdGF0dXNFbGVtZW50LmFwcGVuZENoaWxkKGIpOwotICAgICAgICB9Ci0gICAgICAg
IGlmIChicmVha3BvaW50VHlwZSA9PT0gV2ViSW5zcGVjdG9yLkRPTUJyZWFrcG9pbnQuVHlwZXMu
U3VidHJlZU1vZGlmaWVkKSB7Ci0gICAgICAgICAgICB2YXIgdGFyZ2V0Tm9kZSA9IFdlYkluc3Bl
Y3Rvci5wYW5lbHMuZWxlbWVudHMubGlua2lmeU5vZGVCeUlkKHN0YXR1cy50YXJnZXROb2RlSWQp
OwotICAgICAgICAgICAgaWYgKHN0YXR1cy5pbnNlcnRpb24pIHsKLSAgICAgICAgICAgICAgICBp
ZiAoc3RhdHVzLnRhcmdldE5vZGVJZCAhPT0gc3RhdHVzLmJyZWFrcG9pbnQubm9kZUlkKQotICAg
ICAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZm9ybWF0TG9jYWxpemVkKCJQYXVzZWQgb24g
YSBcIiVzXCIgYnJlYWtwb2ludCBzZXQgb24gJXMsIGJlY2F1c2UgYSBuZXcgY2hpbGQgd2FzIGFk
ZGVkIHRvIGl0cyBkZXNjZW5kYW50ICVzLiIsIHN1YnN0aXR1dGlvbnMuY29uY2F0KHRhcmdldE5v
ZGUpLCBmb3JtYXR0ZXJzLCAiIiwgYXBwZW5kKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5mb3JtYXRMb2NhbGl6ZWQoIlBhdXNlZCBvbiBh
IFwiJXNcIiBicmVha3BvaW50IHNldCBvbiAlcywgYmVjYXVzZSBhIG5ldyBjaGlsZCB3YXMgYWRk
ZWQgdG8gdGhhdCBub2RlLiIsIHN1YnN0aXR1dGlvbnMsIGZvcm1hdHRlcnMsICIiLCBhcHBlbmQp
OwotICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmZvcm1h
dExvY2FsaXplZCgiUGF1c2VkIG9uIGEgXCIlc1wiIGJyZWFrcG9pbnQgc2V0IG9uICVzLCBiZWNh
dXNlIGl0cyBkZXNjZW5kYW50ICVzIHdhcyByZW1vdmVkLiIsIHN1YnN0aXR1dGlvbnMuY29uY2F0
KHRhcmdldE5vZGUpLCBmb3JtYXR0ZXJzLCAiIiwgYXBwZW5kKTsKLSAgICAgICAgfSBlbHNlCi0g
ICAgICAgICAgICBXZWJJbnNwZWN0b3IuZm9ybWF0TG9jYWxpemVkKCJQYXVzZWQgb24gYSBcIiVz
XCIgYnJlYWtwb2ludCBzZXQgb24gJXMuIiwgc3Vic3RpdHV0aW9ucywgZm9ybWF0dGVycywgIiIs
IGFwcGVuZCk7Ci0gICAgICAgIHRoaXMuYm9keUVsZW1lbnQuYXBwZW5kQ2hpbGQoc3RhdHVzRWxl
bWVudCk7Ci0gICAgfSwKLQogICAgIGdldCBzZWxlY3RlZENhbGxGcmFtZSgpCiAgICAgewogICAg
ICAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWRDYWxsRnJhbWU7CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvRWxlbWVudHNQYW5lbC5qcyBiL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9FbGVtZW50c1BhbmVsLmpzCmluZGV4IDljZmYzYTc5ZDNjMjhmMjNmYzg4OWJj
OTc1ZTZiMzgxMjNiNzgzMTMuLjcyOGM0OGVhODU1NWI3NTZkMTg5MTgyZDgxNjFjM2FkZDZjMjZj
MGIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9FbGVtZW50c1BhbmVs
LmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9FbGVtZW50c1BhbmVsLmpzCkBA
IC03ODMsMTQgKzc4Myw2IEBAIFdlYkluc3BlY3Rvci5FbGVtZW50c1BhbmVsLnByb3RvdHlwZSA9
IHsKICAgICAgICAgcmV0dXJuIGxpbms7CiAgICAgfSwKIAotICAgIGxpbmtpZnlOb2RlQnlJZDog
ZnVuY3Rpb24obm9kZUlkKQotICAgIHsKLSAgICAgICAgdmFyIG5vZGUgPSBXZWJJbnNwZWN0b3Iu
ZG9tQWdlbnQubm9kZUZvcklkKG5vZGVJZCk7Ci0gICAgICAgIGlmICghbm9kZSkKLSAgICAgICAg
ICAgIHJldHVybiBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShXZWJJbnNwZWN0b3IuVUlTdHJpbmco
Ijxub2RlPiIpKTsKLSAgICAgICAgcmV0dXJuIHRoaXMubGlua2lmeU5vZGVSZWZlcmVuY2Uobm9k
ZSk7Ci0gICAgfSwKLQogICAgIHVwZGF0ZUJyZWFkY3J1bWJTaXplczogZnVuY3Rpb24oZm9jdXNl
ZENydW1iKQogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLnZpc2libGUpCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1BhbmVsLmpzIGIvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL1NjcmlwdHNQYW5lbC5qcwppbmRleCA3MTUzMzlkOTJlMjE1OTNjODZk
MzNjODZiZmRjZTU0ZTgzMDE1MDQwLi5jNTI2N2Y3YmIxZmQwMzAwNzQzMzllMmU2MzEwZTc4NTUw
NDBhZDA2IDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2NyaXB0c1Bh
bmVsLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TY3JpcHRzUGFuZWwuanMK
QEAgLTM3NSw3ICszNzUsNyBAQCBXZWJJbnNwZWN0b3IuU2NyaXB0c1BhbmVsLnByb3RvdHlwZSA9
IHsKICAgICAgICAgSW5qZWN0ZWRTY3JpcHRBY2Nlc3MuZ2V0KGNhbGxGcmFtZS53b3JsZElkKS5l
dmFsdWF0ZUluQ2FsbEZyYW1lKGNhbGxGcmFtZS5pZCwgY29kZSwgb2JqZWN0R3JvdXAsIGV2YWxD
YWxsYmFjayk7CiAgICAgfSwKIAotICAgIGRlYnVnZ2VyUGF1c2VkOiBmdW5jdGlvbihkZXRhaWxz
KQorICAgIGRlYnVnZ2VyUGF1c2VkOiBmdW5jdGlvbihjYWxsRnJhbWVzKQogICAgIHsKICAgICAg
ICAgV2ViSW5zcGVjdG9yLmJyZWFrcG9pbnRNYW5hZ2VyLnJlbW92ZU9uZVRpbWVCcmVha3BvaW50
KCk7CiAgICAgICAgIHRoaXMuX3BhdXNlZCA9IHRydWU7CkBAIC0zODQsMTEgKzM4NCw4IEBAIFdl
Ykluc3BlY3Rvci5TY3JpcHRzUGFuZWwucHJvdG90eXBlID0gewogCiAgICAgICAgIHRoaXMuX3Vw
ZGF0ZURlYnVnZ2VyQnV0dG9ucygpOwogCi0gICAgICAgIHRoaXMuc2lkZWJhclBhbmVzLmNhbGxz
dGFjay51cGRhdGUoZGV0YWlscy5jYWxsRnJhbWVzLCB0aGlzLl9zb3VyY2VJRE1hcCk7Ci0gICAg
ICAgIHRoaXMuc2lkZWJhclBhbmVzLmNhbGxzdGFjay5zZWxlY3RlZENhbGxGcmFtZSA9IGRldGFp
bHMuY2FsbEZyYW1lc1swXTsKLQotICAgICAgICBpZiAoZGV0YWlscy5zdGF0dXMpCi0gICAgICAg
ICAgICB0aGlzLnNpZGViYXJQYW5lcy5jYWxsc3RhY2sudXBkYXRlU3RhdHVzKGRldGFpbHMuc3Rh
dHVzKTsKKyAgICAgICAgdGhpcy5zaWRlYmFyUGFuZXMuY2FsbHN0YWNrLnVwZGF0ZShjYWxsRnJh
bWVzLCB0aGlzLl9zb3VyY2VJRE1hcCk7CisgICAgICAgIHRoaXMuc2lkZWJhclBhbmVzLmNhbGxz
dGFjay5zZWxlY3RlZENhbGxGcmFtZSA9IGNhbGxGcmFtZXNbMF07CiAKICAgICAgICAgV2ViSW5z
cGVjdG9yLmN1cnJlbnRQYW5lbCA9IHRoaXM7CiAgICAgICAgIHdpbmRvdy5mb2N1cygpOwpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5jc3MgYi9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcwppbmRleCA2ZDg1NzFjMmY0MmFm
Y2Y3NzViZjRiYzU3NGQ4NDU3MTNhMDFkZjM2Li4yODIzNDE4MzY3NjYwODY1NmFlYTVjMDRhNzA4
ODk2OGIyYzE4MzA5IDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5z
cGVjdG9yLmNzcworKysgYi9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNz
cwpAQCAtMTY5MywxMCArMTY5Myw2IEBAIGxpLmVkaXRpbmcgLnN3YXRjaCwgbGkuZWRpdGluZyAu
ZW5hYmxlZC1idXR0b24sICBsaS5lZGl0aW5nLXN1Yi1wYXJ0IC5kZWxldGUtYnV0CiAgICAgY29s
b3I6IGdyYXk7CiB9CiAKLS5wYW5lID4gLmJvZHkgLnBsYWNhcmQgKyAuaW5mbyB7Ci0gICAgYm9y
ZGVyLXRvcDogMXB4IHNvbGlkIGdyYXkKLX0KLQogLnBhbmUuZXhwYW5kZWQgPiAuYm9keSwgLnBh
bmUuZXhwYW5kZWQgPiAuZ3Jvd2JhciB7CiAgICAgZGlzcGxheTogYmxvY2s7CiB9CmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmpzIGIvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qcwppbmRleCBhYzNmM2ZjOTIzMGEyMGVkM2Yx
YThlNTZkMjNjOTU4MjUyNzQ0MzlhLi43MDRmMTZhMzYzMWZkMzBkOTRlMmZkNGUwNDMzYzU5NzNi
Zjc4YTBjIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9y
LmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMKQEAgLTE0
MzAsNyArMTQzMCw3IEBAIFdlYkluc3BlY3Rvci5mYWlsZWRUb1BhcnNlU2NyaXB0U291cmNlID0g
ZnVuY3Rpb24oc291cmNlVVJMLCBzb3VyY2UsIHN0YXJ0aW5nTGluCiAKIFdlYkluc3BlY3Rvci5w
YXVzZWRTY3JpcHQgPSBmdW5jdGlvbihkZXRhaWxzKQogewotICAgIHRoaXMucGFuZWxzLnNjcmlw
dHMuZGVidWdnZXJQYXVzZWQoZGV0YWlscyk7CisgICAgdGhpcy5wYW5lbHMuc2NyaXB0cy5kZWJ1
Z2dlclBhdXNlZChkZXRhaWxzLmNhbGxGcmFtZXMpOwogICAgIEluc3BlY3RvckZyb250ZW5kSG9z
dC5icmluZ1RvRnJvbnQoKTsKIH0KIApAQCAtMjAxMiwxMSArMjAxMiw2IEBAIFdlYkluc3BlY3Rv
ci5VSVN0cmluZyA9IGZ1bmN0aW9uKHN0cmluZykKICAgICByZXR1cm4gU3RyaW5nLnZzcHJpbnRm
KHN0cmluZywgQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCAxKSk7CiB9CiAK
LVdlYkluc3BlY3Rvci5mb3JtYXRMb2NhbGl6ZWQgPSBmdW5jdGlvbihmb3JtYXQsIHN1YnN0aXR1
dGlvbnMsIGZvcm1hdHRlcnMsIGluaXRpYWxWYWx1ZSwgYXBwZW5kKQotewotICAgIHJldHVybiBT
dHJpbmcuZm9ybWF0KFdlYkluc3BlY3Rvci5VSVN0cmluZyhmb3JtYXQpLCBzdWJzdGl0dXRpb25z
LCBmb3JtYXR0ZXJzLCBpbml0aWFsVmFsdWUsIGFwcGVuZCk7Ci19Ci0KIFdlYkluc3BlY3Rvci5p
c01hYyA9IGZ1bmN0aW9uKCkKIHsKICAgICBpZiAoISgiX2lzTWFjIiBpbiB0aGlzKSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>