<?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>54756</bug_id>
          
          <creation_ts>2011-02-18 10:32:03 -0800</creation_ts>
          <short_desc>REGRESSION(r79009): Broken inspector test (Requested by apavlov on #webkit).</short_desc>
          <delta_ts>2022-03-01 02:35:08 -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>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>44620</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>apavlov</cc>
    
    <cc>pfeldman</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>353657</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-18 10:32:03 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/79009 broke the build:
Broken inspector test (Requested by apavlov 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>353658</commentid>
    <comment_count>1</comment_count>
      <attachid>82978</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-18 10:32:24 -0800</bug_when>
    <thetext>Created attachment 82978
ROLLOUT of r79009

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>353685</commentid>
    <comment_count>2</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-02-18 11:03:28 -0800</bug_when>
    <thetext>The inspector/styles/styles-update-from-js.html test is failing only on Qt, skipping it there instead.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>82978</attachid>
            <date>2011-02-18 10:32:24 -0800</date>
            <delta_ts>2022-03-01 02:35:08 -0800</delta_ts>
            <desc>ROLLOUT of r79009</desc>
            <filename>bug-54756-20110218183146.patch</filename>
            <type>text/plain</type>
            <size>27087</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogNzkwMTAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3NDI5Y2M2NTBiODYxNDZmNjZkOGZh
NGY3Yjg1ODgzYjZlNmM0ZjEyLi5mODNkNjViZDJlYzZhNDc1ZGVlOTQyYTY5M2Q5ZDg2YmZlMjM5
NTZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDItMTggIFNoZXJpZmYgQm90ICA8d2Vi
a2l0LnJldmlldy5ib3RAZ21haWwuY29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcg
b3V0IHI3OTAwOS4KKyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNzkw
MDkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU0NzU2
CisKKyAgICAgICAgQnJva2VuIGluc3BlY3RvciB0ZXN0IChSZXF1ZXN0ZWQgYnkgYXBhdmxvdiBv
biAjd2Via2l0KS4KKworICAgICAgICAqIGluc3BlY3Rvci9zdHlsZXMvc3R5bGVzLXVwZGF0ZS1m
cm9tLWpzLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBpbnNwZWN0b3Ivc3R5bGVz
L3N0eWxlcy11cGRhdGUtZnJvbS1qcy5odG1sOiBSZW1vdmVkLgorCiAyMDExLTAyLTE4ICBKZXNz
aWUgQmVybGluICA8amJlcmxpbkBhcHBsZS5jb20+CiAKICAgICAgICAgW1dpbmRvd3MgNyBSZWxl
YXNlIFRlc3RzXSB+MjYgdGVzdHMgZmFpbGluZyBhZnRlciByNzg4NDYKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc3R5bGVzLXVwZGF0ZS1mcm9tLWpzLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc3R5bGVzLXVwZGF0ZS1mcm9tLWpz
LWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMzM1ZmY1NWJiYjZi
YzE5Y2Y1NjBlOWJlYjViM2MxYzllMjQ2ZWEwZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzL3N0eWxlcy11
cGRhdGUtZnJvbS1qcy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAtMSw0OCArMCwwIEBA
Ci1UZXN0cyB0aGF0IGNoYW5nZXMgdG8gYW4gaW5saW5lIHN0eWxlIGZyb20gSmF2YVNjcmlwdCBh
cmUgcmVmbGVjdGVkIGluIHRoZSBTdHlsZXMgcGFuZSBhbmQgRWxlbWVudHMgdHJlZS4KLQotJ3N0
eWxlJyBhdHRyaWJ1dGUgbW9kaWZpZWQ6Ci08ZGl2IGlkPSJjb250YWluZXIiIHN0eWxlPSJjb2xv
cjogI2RhQzBERTsgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ij48L2Rpdj4KLVtleHBhbmRlZF0g
ZWxlbWVudC5zdHlsZSB7ICgpCi1jb2xvcjogI0RBQzBERTsKLWJvcmRlcjogMXB4IHNvbGlkIGJs
YWNrOwotICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsKLSAgICBib3JkZXItcmlnaHQtd2lkdGg6
IDFweDsKLSAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7Ci0gICAgYm9yZGVyLWxlZnQtd2lk
dGg6IDFweDsKLSAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDsKLSAgICBib3JkZXItcmlnaHQt
c3R5bGU6IHNvbGlkOwotICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkOwotICAgIGJvcmRl
ci1sZWZ0LXN0eWxlOiBzb2xpZDsKLSAgICBib3JkZXItdG9wLWNvbG9yOiBibGFjazsKLSAgICBi
b3JkZXItcmlnaHQtY29sb3I6IGJsYWNrOwotICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJsYWNr
OwotICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBibGFjazsKLQotCi1jc3NUZXh0IG1vZGlmaWVkOgot
PGRpdiBpZD0iY29udGFpbmVyIiBzdHlsZT0iY29sb3I6IHJnYigxOTIsIDI1NSwgMjM4KTsgIj48
L2Rpdj4KLVtleHBhbmRlZF0gZWxlbWVudC5zdHlsZSB7ICgpCi1jb2xvcjogI0MwRkZFRTsKLQot
Ci1wYXJzZWQgYXR0cmlidXRlcyBtb2RpZmllZDoKLTxkaXYgaWQ9ImNvbnRhaW5lciIgc3R5bGU9
ImNvbG9yOiByZ2IoMTkyLCAyNTUsIDIzOCk7IGJvcmRlci10b3Atc3R5bGU6IGRhc2hlZDsgYm9y
ZGVyLXJpZ2h0LXN0eWxlOiBkYXNoZWQ7IGJvcmRlci1ib3R0b20tc3R5bGU6IGRhc2hlZDsgYm9y
ZGVyLWxlZnQtc3R5bGU6IGRhc2hlZDsgYm9yZGVyLXRvcC1jb2xvcjogZ3JlZW47IGJvcmRlci1y
aWdodC1jb2xvcjogZ3JlZW47IGJvcmRlci1ib3R0b20tY29sb3I6IGdyZWVuOyBib3JkZXItbGVm
dC1jb2xvcjogZ3JlZW47IGJvcmRlci10b3Atd2lkdGg6IDNweDsgYm9yZGVyLXJpZ2h0LXdpZHRo
OiAzcHg7IGJvcmRlci1ib3R0b20td2lkdGg6IDNweDsgYm9yZGVyLWxlZnQtd2lkdGg6IDNweDsg
Ij48L2Rpdj4KLVtleHBhbmRlZF0gZWxlbWVudC5zdHlsZSB7ICgpCi1jb2xvcjogI0MwRkZFRTsK
LWJvcmRlcjogM3B4IGRhc2hlZCBncmVlbjsKLSAgICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7
Ci0gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBkYXNoZWQ7Ci0gICAgYm9yZGVyLWJvdHRvbS1zdHls
ZTogZGFzaGVkOwotICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBkYXNoZWQ7Ci0gICAgYm9yZGVyLXRv
cC1jb2xvcjogZ3JlZW47Ci0gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBncmVlbjsKLSAgICBib3Jk
ZXItYm90dG9tLWNvbG9yOiBncmVlbjsKLSAgICBib3JkZXItbGVmdC1jb2xvcjogZ3JlZW47Ci1i
b3JkZXItd2lkdGg6IDNweDsKLSAgICBib3JkZXItdG9wLXdpZHRoOiAzcHg7Ci0gICAgYm9yZGVy
LXJpZ2h0LXdpZHRoOiAzcHg7Ci0gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogM3B4OwotICAgIGJv
cmRlci1sZWZ0LXdpZHRoOiAzcHg7Ci0KLQotCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3Ivc3R5bGVzL3N0eWxlcy11cGRhdGUtZnJvbS1qcy5odG1sIGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL3N0eWxlcy9zdHlsZXMtdXBkYXRlLWZyb20tanMuaHRtbApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA3NTUKaW5kZXggOGY1YTI3ZTMyNjE0Njg3YjZlZDczZDkzMGQ4ZWYxOWY0ODZiNmU1Ni4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0
cy9pbnNwZWN0b3Ivc3R5bGVzL3N0eWxlcy11cGRhdGUtZnJvbS1qcy5odG1sCisrKyAvZGV2L251
bGwKQEAgLTEsMTAwICswLDAgQEAKLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4v
aHR0cC90ZXN0cy9pbnNwZWN0b3IvaW5zcGVjdG9yLXRlc3QuanMiPjwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzLXRlc3QuanMiPjwvc2Ny
aXB0PgotPHNjcmlwdD4KLWZ1bmN0aW9uIG1vZGlmeVN0eWxlQXR0cmlidXRlKCkKLXsKLSAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGFpbmVyIikuc2V0QXR0cmlidXRlKCJzdHlsZSIs
ICJjb2xvcjogI2RhQzBERTsgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Iik7Ci19Ci0KLWZ1bmN0
aW9uIG1vZGlmeUNzc1RleHQoKQotewotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250
YWluZXIiKS5zdHlsZS5jc3NUZXh0ID0gImNvbG9yOiAjQzBGRkVFIjsKLX0KLQotZnVuY3Rpb24g
bW9kaWZ5UGFyc2VkQXR0cmlidXRlcygpCi17Ci0gICAgdmFyIHN0eWxlID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoImNvbnRhaW5lciIpLnN0eWxlOwotICAgIHN0eWxlLmJvcmRlciA9ICIycHgg
ZGFzaGVkIGdyZWVuIjsKLSAgICBzdHlsZS5ib3JkZXJXaWR0aCA9ICIzcHgiOwotfQotCi1mdW5j
dGlvbiB0ZXN0KCkKLXsKLSAgICBJbnNwZWN0b3JUZXN0LnNlbGVjdE5vZGVXaXRoSWQoImNvbnRh
aW5lciIsIHN0ZXAwKTsKLQotICAgIC8vIFNldCBzdHlsZSB2aWEgInN0eWxlIiBhdHRyaWJ1dGUu
Ci0gICAgZnVuY3Rpb24gc3RlcDAoKQotICAgIHsKLSAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFs
dWF0ZUluUGFnZSgibW9kaWZ5U3R5bGVBdHRyaWJ1dGUoKSIpOwotICAgICAgICBJbnNwZWN0b3JU
ZXN0Ll9hZGRTbmlmZmVyKFdlYkluc3BlY3Rvci5TdHlsZXNTaWRlYmFyUGFuZS5wcm90b3R5cGUs
ICJfcmVidWlsZFVwZGF0ZSIsIHN0ZXAxKTsKLSAgICB9Ci0KLSAgICAvLyBTZXQgc3R5bGUgdmlh
IGNzc1RleHQuCi0gICAgZnVuY3Rpb24gc3RlcDEoKQotICAgIHsKLSAgICAgICAgSW5zcGVjdG9y
VGVzdC5hZGRSZXN1bHQoIidzdHlsZScgYXR0cmlidXRlIG1vZGlmaWVkOiIpOwotICAgICAgICBk
dW1wQXR0cmlidXRlQW5kU3R5bGVzKCk7Ci0KLSAgICAgICAgLy8gSW5oaWJpdCB0aGUgc2Vjb25k
IFN0eWxlcyBwYW5lIHVwZGF0ZSBmcm9tIHN0ZXAwKCkuCi0gICAgICAgIGZ1bmN0aW9uIGNhbGxi
YWNrKCkKLSAgICAgICAgewotICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5fYWRkU25pZmZlcihX
ZWJJbnNwZWN0b3IuU3R5bGVzU2lkZWJhclBhbmUucHJvdG90eXBlLCAiX3JlYnVpbGRVcGRhdGUi
LCBzdGVwMik7Ci0gICAgICAgIH0KLQotICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5Q
YWdlKCJtb2RpZnlDc3NUZXh0KCkiLCBjYWxsYmFjayk7Ci0gICAgfQotCi0gICAgLy8gU2V0IHN0
eWxlIHZpYSBwYXJzZWQgYXR0cmlidXRlcy4KLSAgICBmdW5jdGlvbiBzdGVwMigpCi0gICAgewot
ICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiY3NzVGV4dCBtb2RpZmllZDoiKTsKLSAg
ICAgICAgZHVtcEF0dHJpYnV0ZUFuZFN0eWxlcygpOwotCi0gICAgICAgIEluc3BlY3RvclRlc3Qu
ZXZhbHVhdGVJblBhZ2UoIm1vZGlmeVBhcnNlZEF0dHJpYnV0ZXMoKSIpOwotICAgICAgICBJbnNw
ZWN0b3JUZXN0Ll9hZGRTbmlmZmVyKFdlYkluc3BlY3Rvci5TdHlsZXNTaWRlYmFyUGFuZS5wcm90
b3R5cGUsICJfcmVidWlsZFVwZGF0ZSIsIHN0ZXAzKTsKLSAgICB9Ci0KLSAgICAvLyBGaW5pc2gg
dGhlIHRlc3QuCi0gICAgZnVuY3Rpb24gc3RlcDMoKQotICAgIHsKLSAgICAgICAgSW5zcGVjdG9y
VGVzdC5hZGRSZXN1bHQoInBhcnNlZCBhdHRyaWJ1dGVzIG1vZGlmaWVkOiIpOwotICAgICAgICBk
dW1wQXR0cmlidXRlQW5kU3R5bGVzKCk7Ci0gICAgICAgIEluc3BlY3RvclRlc3QuY29tcGxldGVU
ZXN0KCk7Ci0gICAgfQotCi0gICAgZnVuY3Rpb24gZHVtcEF0dHJpYnV0ZUFuZFN0eWxlcygpCi0g
ICAgewotICAgICAgICB2YXIgdHJlZUVsZW1lbnQgPSBmaW5kTm9kZVRyZWVFbGVtZW50KCkKLSAg
ICAgICAgaWYgKCF0cmVlRWxlbWVudCkgewotICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRS
ZXN1bHQoIidjb250YWluZXInIHRyZWUgZWxlbWVudCBub3QgZm91bmQiKTsKLSAgICAgICAgICAg
IHJldHVybjsKLSAgICAgICAgfQotICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCh0cmVl
RWxlbWVudC5saXN0SXRlbUVsZW1lbnQudGV4dENvbnRlbnQucmVwbGFjZSgvXHUyMDBiL2csICIi
KSk7Ci0gICAgICAgIEluc3BlY3RvclRlc3QuZHVtcFNlbGVjdGVkRWxlbWVudFN0eWxlcyh0cnVl
LCB0cnVlKTsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiBmaW5kTm9kZVRyZWVFbGVtZW50KCkKLSAg
ICB7Ci0gICAgICAgIHZhciBleHBhbmRlZE5vZGUgPSBJbnNwZWN0b3JUZXN0LmV4cGFuZGVkTm9k
ZVdpdGhJZCgiY29udGFpbmVyIik7Ci0gICAgICAgIGlmICghZXhwYW5kZWROb2RlKSB7Ci0gICAg
ICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiJ2NvbnRhaW5lcicgbm9kZSBub3QgZm91
bmQiKTsKLSAgICAgICAgICAgIEluc3BlY3RvclRlc3QuY29tcGxldGVUZXN0KCk7Ci0gICAgICAg
IH0KLSAgICAgICAgcmV0dXJuIFdlYkluc3BlY3Rvci5wYW5lbHMuZWxlbWVudHMudHJlZU91dGxp
bmUuZmluZFRyZWVFbGVtZW50KGV4cGFuZGVkTm9kZSk7Ci0gICAgfQotfQotPC9zY3JpcHQ+Ci08
L2hlYWQ+Ci0KLTxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KLTxwPgotVGVzdHMgdGhhdCBjaGFu
Z2VzIHRvIGFuIGlubGluZSBzdHlsZSBmcm9tIEphdmFTY3JpcHQgYXJlIHJlZmxlY3RlZCBpbiB0
aGUgU3R5bGVzIHBhbmUgYW5kIEVsZW1lbnRzIHRyZWUuCi08L3A+Ci0KLTxkaXYgaWQ9ImNvbnRh
aW5lciIgc3R5bGU9ImZvbnQtd2VpZ2h0OmJvbGQiPgotPC9kaXY+Ci0KLTwvYm9keT4KLTwvaHRt
bD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCAyY2Q0ZjI5MGQ1Yjg5OGQ2NjhiOGJlYmJiNGEwOTcwODNiMTg4MjIw
Li4wNzAxZmVmZGI4MDQ1NzkwMGEwNmE4ZTVmMDBjMGViMTU0OTg0NzE2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMzUgQEAKKzIwMTEtMDItMTggIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5i
b3RAZ21haWwuY29tPgorCisgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI3OTAwOS4K
KyAgICAgICAgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNzkwMDkKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU0NzU2CisKKyAgICAgICAg
QnJva2VuIGluc3BlY3RvciB0ZXN0IChSZXF1ZXN0ZWQgYnkgYXBhdmxvdiBvbiAjd2Via2l0KS4K
KworICAgICAgICAqIGNzcy9DU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbi5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbjo6c2V0TmVlZHNTdHlsZVJlY2Fs
Yyk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6Okluc3BlY3RvckRPTUFnZW50OjpyZXNldCk6CisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3RvckRPTUFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvckluc3Ry
dW1lbnRhdGlvbi5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRh
dGlvbi5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclN0eWxlU2hlZXRGb3JJbmxpbmVTdHlsZTo6ZGlkTW9k
aWZ5RWxlbWVudEF0dHJpYnV0ZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHlsZVNo
ZWV0Rm9ySW5saW5lU3R5bGU6OmVuc3VyZVBhcnNlZERhdGFSZWFkeSk6CisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQt
ZW5kL0VsZW1lbnRzUGFuZWwuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuRWxlbWVudHNQYW5l
bC5wcm90b3R5cGUuX2F0dHJpYnV0ZXNVcGRhdGVkKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL1N0eWxlc1NpZGViYXJQYW5lLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlN0eWxl
c1NpZGViYXJQYW5lLnByb3RvdHlwZS5fcmVidWlsZFNlY3Rpb25zRm9yU3R5bGVSdWxlcyk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVzU2lkZWJhclBhbmUucHJvdG90eXBlLmFkZEJsYW5r
U2VjdGlvbik6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbi5w
cm90b3R5cGUub25wb3B1bGF0ZSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0
aWVzU2VjdGlvbi5wcm90b3R5cGUuYWRkTmV3QmxhbmtQcm9wZXJ0eSk6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuQ29tcHV0ZWRTdHlsZVByb3BlcnRpZXNTZWN0aW9uLnByb3RvdHlwZS5vbnBvcHVs
YXRlKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5CbGFua1N0eWxlUHJvcGVydGllc1NlY3Rpb24p
OgorICAgICAgICAoV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVlRWxlbWVudCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZSk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZS5l
bGVtZW50LnVzZXJJbnB1dC5wcmV2aW91c0NvbnRlbnQuY29udGV4dC5tb3ZlRGlyZWN0aW9uKToK
KwogMjAxMS0wMi0xNyAgQWxleGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IFBhdmVsIEZlbGRtYW4uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU011dGFibGVTdHlsZURlY2xhcmF0aW9uLmNwcAppbmRleCA0YTIxNjBiZThmZDNm
NGMwYTE2OTc5MGI0NzhkZmRhNzY1ODgwNzRmLi45MTA1Y2Q3MzY1N2Y4NjY2MWY1OTYwZjNiNDZi
MWMyNjY1NzZhMWUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTXV0YWJsZVN0
eWxlRGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NNdXRhYmxlU3R5
bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTMxLDcgKzMxLDYgQEAKICNpbmNsdWRlICJDU1NWYWx1ZUxp
c3QuaCIKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIK
LSNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaCIKICNpbmNsdWRlICJTdHlsZWRF
bGVtZW50LmgiCiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CkBAIC00NzEsOCArNDcwLDYgQEAgdm9p
ZCBDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbjo6c2V0TmVlZHNTdHlsZVJlY2FsYygpCiAgICAg
ICAgIGlmIChpc0lubGluZVN0eWxlRGVjbGFyYXRpb24pIHsKICAgICAgICAgICAgIG1fbm9kZS0+
c2V0TmVlZHNTdHlsZVJlY2FsYyhJbmxpbmVTdHlsZUNoYW5nZSk7CiAgICAgICAgICAgICBzdGF0
aWNfY2FzdDxTdHlsZWRFbGVtZW50Kj4obV9ub2RlKS0+aW52YWxpZGF0ZVN0eWxlQXR0cmlidXRl
KCk7Ci0gICAgICAgICAgICBpZiAobV9ub2RlLT5kb2N1bWVudCgpKQotICAgICAgICAgICAgICAg
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkSW52YWxpZGF0ZVN0eWxlQXR0cihtX25vZGUt
PmRvY3VtZW50KCksIG1fbm9kZSk7CiAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgbV9ub2Rl
LT5zZXROZWVkc1N0eWxlUmVjYWxjKEZ1bGxTdHlsZUNoYW5nZSk7CiAgICAgICAgIHJldHVybjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwCmluZGV4
IDZmNmM0NmEwODY1NjczYzZlMThkMjg2ZTk5MDBlYTg5NDcwZTRhNzEuLmUyMjJlZGI5NWY5YTUx
ZTg3ZDc1N2Q4MmZjYTFjNTM2MzMzZGM1YTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckRPTUFnZW50LmNwcApAQCAtMTA4LDE5ICsxMDgsNiBAQCBwcm90ZWN0ZWQ6
CiAgICAgU3RyaW5nIG1fcXVlcnk7CiB9OwogCi1jbGFzcyBSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1
dGVUYXNrIHsKLXB1YmxpYzoKLSAgICBSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrKEluc3Bl
Y3RvckRPTUFnZW50Kik7Ci0gICAgdm9pZCBzY2hlZHVsZUZvcihFbGVtZW50Kik7Ci0gICAgdm9p
ZCByZXNldCgpIHsgbV90aW1lci5zdG9wKCk7IH0KLSAgICB2b2lkIG9uVGltZXIoVGltZXI8UmV2
YWxpZGF0ZVN0eWxlQXR0cmlidXRlVGFzaz4qKTsKLQotcHJpdmF0ZToKLSAgICBJbnNwZWN0b3JE
T01BZ2VudCogbV9kb21BZ2VudDsKLSAgICBUaW1lcjxSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVU
YXNrPiBtX3RpbWVyOwotICAgIEhhc2hTZXQ8UmVmUHRyPEVsZW1lbnQ+ID4gbV9lbGVtZW50czsK
LX07Ci0KIG5hbWVzcGFjZSB7CiAKIGNsYXNzIE1hdGNoRXhhY3RJZEpvYiA6IHB1YmxpYyBXZWJD
b3JlOjpNYXRjaEpvYiB7CkBAIC0yMjAsMjggKzIwNyw2IEBAIHB1YmxpYzoKIAogfQogCi1SZXZh
bGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjpSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrKElu
c3BlY3RvckRPTUFnZW50KiBkb21BZ2VudCkKLSAgICA6IG1fZG9tQWdlbnQoZG9tQWdlbnQpCi0g
ICAgLCBtX3RpbWVyKHRoaXMsICZSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOjpvblRpbWVy
KQotewotfQotCi12b2lkIFJldmFsaWRhdGVTdHlsZUF0dHJpYnV0ZVRhc2s6OnNjaGVkdWxlRm9y
KEVsZW1lbnQqIGVsZW1lbnQpCi17Ci0gICAgbV9lbGVtZW50cy5hZGQoZWxlbWVudCk7Ci0gICAg
aWYgKCFtX3RpbWVyLmlzQWN0aXZlKCkpCi0gICAgICAgIG1fdGltZXIuc3RhcnRPbmVTaG90KDAp
OwotfQotCi12b2lkIFJldmFsaWRhdGVTdHlsZUF0dHJpYnV0ZVRhc2s6Om9uVGltZXIoVGltZXI8
UmV2YWxpZGF0ZVN0eWxlQXR0cmlidXRlVGFzaz4qKQotewotICAgIC8vIFRoZSB0aW1lciBpcyBz
dG9wcGVkIG9uIG1fZG9tQWdlbnQgZGVzdHJ1Y3Rpb24sIHNvIHRoaXMgbWV0aG9kIHdpbGwgbmV2
ZXIgYmUgY2FsbGVkIGFmdGVyIG1fZG9tQWdlbnQgaGFzIGJlZW4gZGVzdHJveWVkLgotICAgIGZv
ciAoSGFzaFNldDxSZWZQdHI8RWxlbWVudD4gPjo6aXRlcmF0b3IgaXQgPSBtX2VsZW1lbnRzLmJl
Z2luKCksIGVuZCA9IG1fZWxlbWVudHMuZW5kKCk7IGl0ICE9IGVuZDsgKytpdCkKLSAgICAgICAg
bV9kb21BZ2VudC0+ZGlkTW9kaWZ5RE9NQXR0cihpdC0+Z2V0KCkpOwotCi0gICAgbV9lbGVtZW50
cy5jbGVhcigpOwotfQotCiBJbnNwZWN0b3JET01BZ2VudDo6SW5zcGVjdG9yRE9NQWdlbnQoSW5q
ZWN0ZWRTY3JpcHRIb3N0KiBpbmplY3RlZFNjcmlwdEhvc3QsIEluc3BlY3RvckZyb250ZW5kKiBm
cm9udGVuZCkKICAgICA6IG1faW5qZWN0ZWRTY3JpcHRIb3N0KGluamVjdGVkU2NyaXB0SG9zdCkK
ICAgICAsIG1fZnJvbnRlbmQoZnJvbnRlbmQpCkBAIC0yNzIsOCArMjM3LDYgQEAgdm9pZCBJbnNw
ZWN0b3JET01BZ2VudDo6cmVzZXQoKQogewogICAgIHNlYXJjaENhbmNlbGVkKCk7CiAgICAgZGlz
Y2FyZEJpbmRpbmdzKCk7Ci0gICAgaWYgKG1fcmV2YWxpZGF0ZVN0eWxlQXR0clRhc2spCi0gICAg
ICAgIG1fcmV2YWxpZGF0ZVN0eWxlQXR0clRhc2stPnJlc2V0KCk7CiB9CiAKIHZvaWQgSW5zcGVj
dG9yRE9NQWdlbnQ6OnNldERPTUxpc3RlbmVyKERPTUxpc3RlbmVyKiBsaXN0ZW5lcikKQEAgLTEw
NTQsMTggKzEwMTcsNiBAQCB2b2lkIEluc3BlY3RvckRPTUFnZW50OjpjaGFyYWN0ZXJEYXRhTW9k
aWZpZWQoQ2hhcmFjdGVyRGF0YSogY2hhcmFjdGVyRGF0YSkKICAgICBtX2Zyb250ZW5kLT5jaGFy
YWN0ZXJEYXRhTW9kaWZpZWQoaWQsIGNoYXJhY3RlckRhdGEtPmRhdGEoKSk7CiB9CiAKLXZvaWQg
SW5zcGVjdG9yRE9NQWdlbnQ6OmRpZEludmFsaWRhdGVTdHlsZUF0dHIoTm9kZSogbm9kZSkKLXsK
LSAgICBsb25nIGlkID0gbV9kb2N1bWVudE5vZGVUb0lkTWFwLmdldChub2RlKTsKLSAgICAvLyBJ
ZiBub2RlIGlzIG5vdCBtYXBwZWQgeWV0IC0+IGlnbm9yZSB0aGUgZXZlbnQuCi0gICAgaWYgKCFp
ZCkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKCFtX3JldmFsaWRhdGVTdHlsZUF0dHJUYXNr
KQotICAgICAgICBtX3JldmFsaWRhdGVTdHlsZUF0dHJUYXNrID0gbmV3IFJldmFsaWRhdGVTdHls
ZUF0dHJpYnV0ZVRhc2sodGhpcyk7Ci0gICAgbV9yZXZhbGlkYXRlU3R5bGVBdHRyVGFzay0+c2No
ZWR1bGVGb3Ioc3RhdGljX2Nhc3Q8RWxlbWVudCo+KG5vZGUpKTsKLX0KLQogTm9kZSogSW5zcGVj
dG9yRE9NQWdlbnQ6Om5vZGVGb3JQYXRoKGNvbnN0IFN0cmluZyYgcGF0aCkKIHsKICAgICAvLyBU
aGUgcGF0aCBpcyBvZiBmb3JtICIxLEhUTUwsMixCT0RZLDEsRElWIgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuaAppbmRleCBmZTg3NDMzN2FjNzY3NmQ1MDUy
NmI3YWJkNzc1NzQxYzk3YTZmYzU4Li40ZTYwM2RhNjZiNzQ0ZjYyMDk4MWJkYWRmNmM2YTNhMWY0
OWNmOTA2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9N
QWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQu
aApAQCAtMzksNyArMzksNiBAQAogI2luY2x1ZGUgPHd0Zi9MaXN0SGFzaFNldC5oPgogI2luY2x1
ZGUgPHd0Zi9IYXNoTWFwLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KLSNpbmNsdWRlIDx3
dGYvT3duUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KICNpbmNsdWRlIDx3dGYv
UmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtNTcsNyArNTYsNiBAQCBjbGFz
cyBNYXRjaEpvYjsKIGNsYXNzIE5hbWVOb2RlTWFwOwogY2xhc3MgTm9kZTsKIGNsYXNzIFBhZ2U7
Ci1jbGFzcyBSZXZhbGlkYXRlU3R5bGVBdHRyaWJ1dGVUYXNrOwogCiAjaWYgRU5BQkxFKElOU1BF
Q1RPUikKIApAQCAtMTI1LDcgKzEyMyw2IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpZFJlbW92ZURP
TU5vZGUoTm9kZSopOwogICAgIHZvaWQgZGlkTW9kaWZ5RE9NQXR0cihFbGVtZW50Kik7CiAgICAg
dm9pZCBjaGFyYWN0ZXJEYXRhTW9kaWZpZWQoQ2hhcmFjdGVyRGF0YSopOwotICAgIHZvaWQgZGlk
SW52YWxpZGF0ZVN0eWxlQXR0cihOb2RlKik7CiAKICAgICBOb2RlKiBub2RlRm9ySWQobG9uZyBu
b2RlSWQpOwogICAgIGxvbmcgcHVzaE5vZGVQYXRoVG9Gcm9udGVuZChOb2RlKik7CkBAIC0xODgs
NyArMTg1LDYgQEAgcHJpdmF0ZToKICAgICBUaW1lcjxJbnNwZWN0b3JET01BZ2VudD4gbV9tYXRj
aEpvYnNUaW1lcjsKICAgICBIYXNoU2V0PFJlZlB0cjxOb2RlPiA+IG1fc2VhcmNoUmVzdWx0czsK
ICAgICBWZWN0b3I8bG9uZz4gbV9pbnNwZWN0ZWROb2RlczsKLSAgICBPd25QdHI8UmV2YWxpZGF0
ZVN0eWxlQXR0cmlidXRlVGFzaz4gbV9yZXZhbGlkYXRlU3R5bGVBdHRyVGFzazsKIH07CiAKICNl
bmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAppbmRleCA1YWY1MGJjNDU5NzE3MjIy
NDE3YTg1NzBlNzQ5ODg0ZDQ5NDcwM2ViLi5hMGMyODEzZTAyZjJhYTMxYTQwY2U2NmM4ZjA0NTU0
ZTJmN2U3YjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uLmNwcApAQCAtMTQ4LDEyICsxNDgsNiBAQCB2b2lkIEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6ZGlkTW9kaWZ5RE9NQXR0ckltcGwoSW5zcGVjdG9yQWdlbnQqIGlu
c3BlY3RvckFnZQogICAgICAgICBkb21BZ2VudC0+ZGlkTW9kaWZ5RE9NQXR0cihlbGVtZW50KTsK
IH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEludmFsaWRhdGVTdHlsZUF0
dHJJbXBsKEluc3BlY3RvckFnZW50KiBpbnNwZWN0b3JBZ2VudCwgTm9kZSogbm9kZSkKLXsKLSAg
ICBpZiAoSW5zcGVjdG9yRE9NQWdlbnQqIGRvbUFnZW50ID0gaW5zcGVjdG9yQWdlbnQtPmRvbUFn
ZW50KCkpCi0gICAgICAgIGRvbUFnZW50LT5kaWRJbnZhbGlkYXRlU3R5bGVBdHRyKG5vZGUpOwot
fQotCiB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6bW91c2VEaWRNb3ZlT3ZlckVsZW1l
bnRJbXBsKEluc3BlY3RvckFnZW50KiBpbnNwZWN0b3JBZ2VudCwgY29uc3QgSGl0VGVzdFJlc3Vs
dCYgcmVzdWx0LCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKQogewogICAgIGluc3BlY3RvckFnZW50
LT5tb3VzZURpZE1vdmVPdmVyRWxlbWVudChyZXN1bHQsIG1vZGlmaWVyRmxhZ3MpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5o
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCmlu
ZGV4IGM2YjFjMTAyZTZlNzdmNzVlYTgxODA1OTQyNjAzNzUyODUwYmQwZDEuLmU0MDZlNDBhNjRh
ODgyNTgzNmRhODhkOTY5ZjAzNTRhZTM4ZGZlM2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgKQEAgLTc4LDcgKzc4LDYgQEAg
cHVibGljOgogICAgIHN0YXRpYyB2b2lkIHdpbGxNb2RpZnlET01BdHRyKERvY3VtZW50KiwgRWxl
bWVudCopOwogICAgIHN0YXRpYyB2b2lkIGRpZE1vZGlmeURPTUF0dHIoRG9jdW1lbnQqLCBFbGVt
ZW50Kik7CiAgICAgc3RhdGljIHZvaWQgY2hhcmFjdGVyRGF0YU1vZGlmaWVkKERvY3VtZW50Kiwg
Q2hhcmFjdGVyRGF0YSopOwotICAgIHN0YXRpYyB2b2lkIGRpZEludmFsaWRhdGVTdHlsZUF0dHIo
RG9jdW1lbnQqLCBOb2RlKik7CiAKICAgICBzdGF0aWMgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxl
bWVudChQYWdlKiwgY29uc3QgSGl0VGVzdFJlc3VsdCYsIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3Mp
OwogICAgIHN0YXRpYyBib29sIGhhbmRsZU1vdXNlUHJlc3MoUGFnZSopOwpAQCAtMTk1LDcgKzE5
NCw2IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIHZvaWQgd2lsbE1vZGlmeURPTUF0dHJJbXBsKElu
c3BlY3RvckFnZW50KiwgRWxlbWVudCopOwogICAgIHN0YXRpYyB2b2lkIGRpZE1vZGlmeURPTUF0
dHJJbXBsKEluc3BlY3RvckFnZW50KiwgRWxlbWVudCopOwogICAgIHN0YXRpYyB2b2lkIGNoYXJh
Y3RlckRhdGFNb2RpZmllZEltcGwoSW5zcGVjdG9yQWdlbnQqLCBDaGFyYWN0ZXJEYXRhKik7Ci0g
ICAgc3RhdGljIHZvaWQgZGlkSW52YWxpZGF0ZVN0eWxlQXR0ckltcGwoSW5zcGVjdG9yQWdlbnQq
LCBOb2RlKik7CiAKICAgICBzdGF0aWMgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudEltcGwo
SW5zcGVjdG9yQWdlbnQqLCBjb25zdCBIaXRUZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJG
bGFncyk7CiAgICAgc3RhdGljIGJvb2wgaGFuZGxlTW91c2VQcmVzc0ltcGwoSW5zcGVjdG9yQWdl
bnQqKTsKQEAgLTM2NSwxNCArMzYzLDYgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uOjpkaWRNb2RpZnlET01BdHRyKERvY3VtZW50KiBkb2N1bWVudCwgRWxlbWUKICNlbmRp
ZgogfQogCi1pbmxpbmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZEludmFsaWRh
dGVTdHlsZUF0dHIoRG9jdW1lbnQqIGRvY3VtZW50LCBOb2RlKiBub2RlKQotewotI2lmIEVOQUJM
RShJTlNQRUNUT1IpCi0gICAgaWYgKEluc3BlY3RvckFnZW50KiBpbnNwZWN0b3JBZ2VudCA9IGlu
c3BlY3RvckFnZW50V2l0aEZyb250ZW5kRm9yRG9jdW1lbnQoZG9jdW1lbnQpKQotICAgICAgICBk
aWRJbnZhbGlkYXRlU3R5bGVBdHRySW1wbChpbnNwZWN0b3JBZ2VudCwgbm9kZSk7Ci0jZW5kaWYK
LX0KLQogaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjptb3VzZURpZE1vdmVP
dmVyRWxlbWVudChQYWdlKiBwYWdlLCBjb25zdCBIaXRUZXN0UmVzdWx0JiByZXN1bHQsIHVuc2ln
bmVkIG1vZGlmaWVyRmxhZ3MpCiB7CiAjaWYgRU5BQkxFKElOU1BFQ1RPUikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcAppbmRleCA0NWU2ZTQz
MzE3NjA3MWE4ZDcwNjYzOWE0YjAyYmE3OTFhYTY1YWY4Li40YWYwMzcxODEyZWFkZWQ3OGI2NGYx
NzliZjk0OTZhYzNiMTMzY2I1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvclN0eWxlU2hlZXQuY3BwCkBAIC0xMTMxLDcgKzExMzEsNyBAQCBJbnNwZWN0b3JTdHls
ZVNoZWV0Rm9ySW5saW5lU3R5bGU6Okluc3BlY3RvclN0eWxlU2hlZXRGb3JJbmxpbmVTdHlsZShj
b25zdCBTdHJpbgogCiB2b2lkIEluc3BlY3RvclN0eWxlU2hlZXRGb3JJbmxpbmVTdHlsZTo6ZGlk
TW9kaWZ5RWxlbWVudEF0dHJpYnV0ZSgpCiB7Ci0gICAgU3RyaW5nIG5ld1N0eWxlVGV4dCA9IGVs
ZW1lbnRTdHlsZVRleHQoKTsKKyAgICBTdHJpbmcgbmV3U3R5bGVUZXh0ID0gbV9lbGVtZW50LT5n
ZXRBdHRyaWJ1dGUoInN0eWxlIik7CiAgICAgYm9vbCBzaG91bGREcm9wU291cmNlRGF0YSA9IGZh
bHNlOwogICAgIGlmIChtX2VsZW1lbnQtPmlzU3R5bGVkRWxlbWVudCgpICYmIG1fZWxlbWVudC0+
c3R5bGUoKSAhPSBtX2luc3BlY3RvclN0eWxlLT5jc3NTdHlsZSgpKSB7CiAgICAgICAgIG1faW5z
cGVjdG9yU3R5bGUgPSBJbnNwZWN0b3JTdHlsZTo6Y3JlYXRlKEluc3BlY3RvckNTU0lkKGlkKCks
IDApLCBpbmxpbmVTdHlsZSgpLCB0aGlzKTsKQEAgLTExNjgsMTMgKzExNjgsNiBAQCBEb2N1bWVu
dCogSW5zcGVjdG9yU3R5bGVTaGVldEZvcklubGluZVN0eWxlOjpvd25lckRvY3VtZW50KCkgY29u
c3QKIAogYm9vbCBJbnNwZWN0b3JTdHlsZVNoZWV0Rm9ySW5saW5lU3R5bGU6OmVuc3VyZVBhcnNl
ZERhdGFSZWFkeSgpCiB7Ci0gICAgLy8gVGhlICJzdHlsZSIgcHJvcGVydHkgdmFsdWUgY2FuIGdl
dCBjaGFuZ2VkIGluZGlyZWN0bHksIGUuZy4gdmlhIGVsZW1lbnQuc3R5bGUuYm9yZGVyV2lkdGgg
PSAiMnB4Ii4KLSAgICBjb25zdCBTdHJpbmcmIGN1cnJlbnRTdHlsZVRleHQgPSBlbGVtZW50U3R5
bGVUZXh0KCk7Ci0gICAgaWYgKG1fc3R5bGVUZXh0ICE9IGN1cnJlbnRTdHlsZVRleHQpIHsKLSAg
ICAgICAgbV9ydWxlU291cmNlRGF0YS5jbGVhcigpOwotICAgICAgICBtX3N0eWxlVGV4dCA9IGN1
cnJlbnRTdHlsZVRleHQ7Ci0gICAgfQotCiAgICAgaWYgKG1fcnVsZVNvdXJjZURhdGEpCiAgICAg
ICAgIHJldHVybiB0cnVlOwogCkBAIC0xMTk5LDExICsxMTkyLDYgQEAgQ1NTU3R5bGVEZWNsYXJh
dGlvbiogSW5zcGVjdG9yU3R5bGVTaGVldEZvcklubGluZVN0eWxlOjppbmxpbmVTdHlsZSgpIGNv
bnN0CiAgICAgcmV0dXJuIG1fZWxlbWVudC0+c3R5bGUoKTsKIH0KIAotY29uc3QgU3RyaW5nJiBJ
bnNwZWN0b3JTdHlsZVNoZWV0Rm9ySW5saW5lU3R5bGU6OmVsZW1lbnRTdHlsZVRleHQoKSBjb25z
dAotewotICAgIHJldHVybiBtX2VsZW1lbnQtPmdldEF0dHJpYnV0ZSgic3R5bGUiKS5zdHJpbmco
KTsKLX0KLQogYm9vbCBJbnNwZWN0b3JTdHlsZVNoZWV0Rm9ySW5saW5lU3R5bGU6OmdldFN0eWxl
QXR0cmlidXRlUmFuZ2VzKFJlZlB0cjxDU1NTdHlsZVNvdXJjZURhdGE+KiByZXN1bHQpCiB7CiAg
ICAgaWYgKCFtX2VsZW1lbnQtPmlzU3R5bGVkRWxlbWVudCgpKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hlZXQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmgKaW5kZXggOTIzMThjYmZjMDVlNTgxZTc0
ZWQ3OWIzYzZkOWFiNWQ2NWI3NTk2NC4uNjA2ZDMxOGZiYWI0MWYzNzg0YTFlNjIwZTY1ZGYyN2Y2
ZmU5YThhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclN0
eWxlU2hlZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yU3R5bGVT
aGVldC5oCkBAIC0yNDMsNyArMjQzLDYgQEAgcHJvdGVjdGVkOgogCiBwcml2YXRlOgogICAgIENT
U1N0eWxlRGVjbGFyYXRpb24qIGlubGluZVN0eWxlKCkgY29uc3Q7Ci0gICAgY29uc3QgU3RyaW5n
JiBlbGVtZW50U3R5bGVUZXh0KCkgY29uc3Q7CiAgICAgYm9vbCBnZXRTdHlsZUF0dHJpYnV0ZVJh
bmdlcyhSZWZQdHI8Q1NTU3R5bGVTb3VyY2VEYXRhPiogcmVzdWx0KTsKIAogICAgIFJlZlB0cjxF
bGVtZW50PiBtX2VsZW1lbnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL0VsZW1lbnRzUGFuZWwuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0VsZW1lbnRzUGFuZWwuanMKaW5kZXggMzZkYjgxZTJiMDNhNGZiYzE2NDA5M2JhNGUx
NzZhZGMwYzQyZmFiYi4uNzlhZTIwYjEwYjU5NzE4Y2Y4M2M1MTU3YWVjY2E2MDhjOTE1ODI0YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9FbGVtZW50c1Bh
bmVsLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRWxlbWVudHNQ
YW5lbC5qcwpAQCAtMzc1LDkgKzM3NSw2IEBAIFdlYkluc3BlY3Rvci5FbGVtZW50c1BhbmVsLnBy
b3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5yZWNlbnRseU1vZGlmaWVkTm9kZXMucHVzaCh7bm9k
ZTogZXZlbnQudGFyZ2V0LCB1cGRhdGVkOiB0cnVlfSk7CiAgICAgICAgIGlmICh0aGlzLnZpc2li
bGUpCiAgICAgICAgICAgICB0aGlzLl91cGRhdGVNb2RpZmllZE5vZGVzU29vbigpOwotCi0gICAg
ICAgIGlmICghdGhpcy5zaWRlYmFyUGFuZXMuc3R5bGVzLmlzTW9kaWZ5aW5nU3R5bGUgJiYgZXZl
bnQudGFyZ2V0ID09PSB0aGlzLmZvY3VzZWRET01Ob2RlKQotICAgICAgICAgICAgdGhpcy5fc3R5
bGVTaGVldENoYW5nZWQoKTsKICAgICB9LAogCiAgICAgX2NoYXJhY3RlckRhdGFNb2RpZmllZDog
ZnVuY3Rpb24oZXZlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1N0eWxlc1NpZGViYXJQYW5lLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcwppbmRleCBjN2QxNTFhOThlMDhmZjc4YmJhOGZk
MTgxMDlkMGFhYmQzZWZiOWM2Li41N2QzYjc2MmVjODEzMGYyMTExZGYzZDhkODZiN2E4ZmFiNjFl
MGM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxl
c1NpZGViYXJQYW5lLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
U3R5bGVzU2lkZWJhclBhbmUuanMKQEAgLTQzOCw3ICs0MzgsNyBAQCBXZWJJbnNwZWN0b3IuU3R5
bGVzU2lkZWJhclBhbmUucHJvdG90eXBlID0gewogICAgICAgICAgICAgaWYgKGNvbXB1dGVkU3R5
bGUpCiAgICAgICAgICAgICAgICAgdmFyIHNlY3Rpb24gPSBuZXcgV2ViSW5zcGVjdG9yLkNvbXB1
dGVkU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbihzdHlsZVJ1bGUsIHVzZWRQcm9wZXJ0aWVzLCBkaXNh
YmxlZENvbXB1dGVkUHJvcGVydGllcywgc3R5bGVSdWxlcyk7CiAgICAgICAgICAgICBlbHNlCi0g
ICAgICAgICAgICAgICAgdmFyIHNlY3Rpb24gPSBuZXcgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVy
dGllc1NlY3Rpb24odGhpcywgc3R5bGVSdWxlLCBlZGl0YWJsZSwgc3R5bGVSdWxlLmlzSW5oZXJp
dGVkLCBsYXN0V2FzU2VwYXJhdG9yKTsKKyAgICAgICAgICAgICAgICB2YXIgc2VjdGlvbiA9IG5l
dyBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbihzdHlsZVJ1bGUsIGVkaXRhYmxl
LCBzdHlsZVJ1bGUuaXNJbmhlcml0ZWQsIGxhc3RXYXNTZXBhcmF0b3IpOwogICAgICAgICAgICAg
c2VjdGlvbi5wYW5lID0gdGhpczsKICAgICAgICAgICAgIHNlY3Rpb24uZXhwYW5kZWQgPSB0cnVl
OwogCkBAIC01MDMsNyArNTAzLDcgQEAgV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQYW5lLnBy
b3RvdHlwZSA9IHsKIAogICAgIGFkZEJsYW5rU2VjdGlvbjogZnVuY3Rpb24oKQogICAgIHsKLSAg
ICAgICAgdmFyIGJsYW5rU2VjdGlvbiA9IG5ldyBXZWJJbnNwZWN0b3IuQmxhbmtTdHlsZVByb3Bl
cnRpZXNTZWN0aW9uKHRoaXMsIGFwcHJvcHJpYXRlU2VsZWN0b3JGb3JOb2RlKHRoaXMubm9kZSwg
dHJ1ZSkpOworICAgICAgICB2YXIgYmxhbmtTZWN0aW9uID0gbmV3IFdlYkluc3BlY3Rvci5CbGFu
a1N0eWxlUHJvcGVydGllc1NlY3Rpb24oYXBwcm9wcmlhdGVTZWxlY3RvckZvck5vZGUodGhpcy5u
b2RlLCB0cnVlKSk7CiAgICAgICAgIGJsYW5rU2VjdGlvbi5wYW5lID0gdGhpczsKIAogICAgICAg
ICB2YXIgZWxlbWVudFN0eWxlU2VjdGlvbiA9IHRoaXMuc2VjdGlvbnNbMF1bMV07CkBAIC01OTEs
NyArNTkxLDcgQEAgV2ViSW5zcGVjdG9yLkNvbXB1dGVkU3R5bGVTaWRlYmFyUGFuZSA9IGZ1bmN0
aW9uKCkKIAogV2ViSW5zcGVjdG9yLkNvbXB1dGVkU3R5bGVTaWRlYmFyUGFuZS5wcm90b3R5cGUu
X19wcm90b19fID0gV2ViSW5zcGVjdG9yLlNpZGViYXJQYW5lLnByb3RvdHlwZTsKIAotV2ViSW5z
cGVjdG9yLlN0eWxlUHJvcGVydGllc1NlY3Rpb24gPSBmdW5jdGlvbihwYXJlbnRQYW5lLCBzdHls
ZVJ1bGUsIGVkaXRhYmxlLCBpc0luaGVyaXRlZCwgaXNGaXJzdFNlY3Rpb24pCitXZWJJbnNwZWN0
b3IuU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbiA9IGZ1bmN0aW9uKHN0eWxlUnVsZSwgZWRpdGFibGUs
IGlzSW5oZXJpdGVkLCBpc0ZpcnN0U2VjdGlvbikKIHsKICAgICBXZWJJbnNwZWN0b3IuUHJvcGVy
dGllc1NlY3Rpb24uY2FsbCh0aGlzLCAiIik7CiAgICAgdGhpcy5lbGVtZW50LmNsYXNzTmFtZSA9
ICJzdHlsZXMtc2VjdGlvbiBtb25vc3BhY2UiICsgKGlzRmlyc3RTZWN0aW9uID8gIiBmaXJzdC1z
dHlsZXMtc2VjdGlvbiIgOiAiIik7CkBAIC02MTMsNyArNjEzLDYgQEAgV2ViSW5zcGVjdG9yLlN0
eWxlUHJvcGVydGllc1NlY3Rpb24gPSBmdW5jdGlvbihwYXJlbnRQYW5lLCBzdHlsZVJ1bGUsIGVk
aXRhYmxlLAogICAgIHRoaXMuX3NlbGVjdG9yRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJkYmxj
bGljayIsIHRoaXMuX2hhbmRsZVNlbGVjdG9yRG91YmxlQ2xpY2suYmluZCh0aGlzKSwgZmFsc2Up
OwogICAgIHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJkYmxjbGljayIsIHRoaXMuX2hh
bmRsZUVtcHR5U3BhY2VEb3VibGVDbGljay5iaW5kKHRoaXMpLCBmYWxzZSk7CiAKLSAgICB0aGlz
Ll9wYXJlbnRQYW5lID0gcGFyZW50UGFuZTsKICAgICB0aGlzLnN0eWxlUnVsZSA9IHN0eWxlUnVs
ZTsKICAgICB0aGlzLnJ1bGUgPSB0aGlzLnN0eWxlUnVsZS5ydWxlOwogICAgIHRoaXMuZWRpdGFi
bGUgPSBlZGl0YWJsZTsKQEAgLTc5Myw3ICs3OTIsNyBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9w
ZXJ0aWVzU2VjdGlvbi5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB2YXIgaW5oZXJpdGVkID0g
dGhpcy5pc1Byb3BlcnR5SW5oZXJpdGVkKHByb3BlcnR5Lm5hbWUpOwogICAgICAgICAgICAgdmFy
IG92ZXJsb2FkZWQgPSB0aGlzLmlzUHJvcGVydHlPdmVybG9hZGVkKHByb3BlcnR5Lm5hbWUsIGlz
U2hvcnRoYW5kKTsKIAotICAgICAgICAgICAgdmFyIGl0ZW0gPSBuZXcgV2ViSW5zcGVjdG9yLlN0
eWxlUHJvcGVydHlUcmVlRWxlbWVudCh0aGlzLl9wYXJlbnRQYW5lLCB0aGlzLnN0eWxlUnVsZSwg
c3R5bGUsIHByb3BlcnR5LCBpc1Nob3J0aGFuZCwgaW5oZXJpdGVkLCBvdmVybG9hZGVkKTsKKyAg
ICAgICAgICAgIHZhciBpdGVtID0gbmV3IFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVs
ZW1lbnQodGhpcy5zdHlsZVJ1bGUsIHN0eWxlLCBwcm9wZXJ0eSwgaXNTaG9ydGhhbmQsIGluaGVy
aXRlZCwgb3ZlcmxvYWRlZCk7CiAgICAgICAgICAgICB0aGlzLnByb3BlcnRpZXNUcmVlT3V0bGlu
ZS5hcHBlbmRDaGlsZChpdGVtKTsKICAgICAgICAgICAgIGhhbmRsZWRQcm9wZXJ0aWVzW3Byb3Bl
cnR5Lm5hbWVdID0gcHJvcGVydHk7CiAgICAgICAgIH0KQEAgLTgxNCw3ICs4MTMsNyBAQCBXZWJJ
bnNwZWN0b3IuU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbi5wcm90b3R5cGUgPSB7CiAgICAgewogICAg
ICAgICB2YXIgc3R5bGUgPSB0aGlzLnN0eWxlUnVsZS5zdHlsZTsKICAgICAgICAgdmFyIHByb3Bl
cnR5ID0gc3R5bGUubmV3QmxhbmtQcm9wZXJ0eSgpOwotICAgICAgICB2YXIgaXRlbSA9IG5ldyBX
ZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50KHRoaXMuX3BhcmVudFBhbmUsIHRo
aXMuc3R5bGVSdWxlLCBzdHlsZSwgcHJvcGVydHksIGZhbHNlLCBmYWxzZSwgZmFsc2UpOworICAg
ICAgICB2YXIgaXRlbSA9IG5ldyBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50
KHRoaXMuc3R5bGVSdWxlLCBzdHlsZSwgcHJvcGVydHksIGZhbHNlLCBmYWxzZSwgZmFsc2UpOwog
ICAgICAgICB0aGlzLnByb3BlcnRpZXNUcmVlT3V0bGluZS5hcHBlbmRDaGlsZChpdGVtKTsKICAg
ICAgICAgaXRlbS5saXN0SXRlbUVsZW1lbnQudGV4dENvbnRlbnQgPSAiIjsKICAgICAgICAgaXRl
bS5fbmV3UHJvcGVydHkgPSB0cnVlOwpAQCAtMTAyNiw3ICsxMDI1LDcgQEAgV2ViSW5zcGVjdG9y
LkNvbXB1dGVkU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbi5wcm90b3R5cGUgPSB7CiAgICAgICAgIGZv
ciAodmFyIGkgPSAwOyBpIDwgdW5pcXVlUHJvcGVydGllcy5sZW5ndGg7ICsraSkgewogICAgICAg
ICAgICAgdmFyIHByb3BlcnR5ID0gdW5pcXVlUHJvcGVydGllc1tpXTsKICAgICAgICAgICAgIHZh
ciBpbmhlcml0ZWQgPSB0aGlzLl9pc1Byb3BlcnR5SW5oZXJpdGVkKHByb3BlcnR5Lm5hbWUpOwot
ICAgICAgICAgICAgdmFyIGl0ZW0gPSBuZXcgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVl
RWxlbWVudCh0aGlzLl9wYXJlbnRQYW5lLCB0aGlzLnN0eWxlUnVsZSwgc3R5bGUsIHByb3BlcnR5
LCBmYWxzZSwgaW5oZXJpdGVkLCBmYWxzZSk7CisgICAgICAgICAgICB2YXIgaXRlbSA9IG5ldyBX
ZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50KHRoaXMuc3R5bGVSdWxlLCBzdHls
ZSwgcHJvcGVydHksIGZhbHNlLCBpbmhlcml0ZWQsIGZhbHNlKTsKICAgICAgICAgICAgIHRoaXMu
cHJvcGVydGllc1RyZWVPdXRsaW5lLmFwcGVuZENoaWxkKGl0ZW0pOwogICAgICAgICAgICAgdGhp
cy5fcHJvcGVydHlUcmVlRWxlbWVudHNbcHJvcGVydHkubmFtZV0gPSBpdGVtOwogICAgICAgICB9
CkBAIC0xMDcxLDkgKzEwNzAsOSBAQCBXZWJJbnNwZWN0b3IuQ29tcHV0ZWRTdHlsZVByb3BlcnRp
ZXNTZWN0aW9uLnByb3RvdHlwZSA9IHsKIAogV2ViSW5zcGVjdG9yLkNvbXB1dGVkU3R5bGVQcm9w
ZXJ0aWVzU2VjdGlvbi5wcm90b3R5cGUuX19wcm90b19fID0gV2ViSW5zcGVjdG9yLlByb3BlcnRp
ZXNTZWN0aW9uLnByb3RvdHlwZTsKIAotV2ViSW5zcGVjdG9yLkJsYW5rU3R5bGVQcm9wZXJ0aWVz
U2VjdGlvbiA9IGZ1bmN0aW9uKHBhcmVudFBhbmUsIGRlZmF1bHRTZWxlY3RvclRleHQpCitXZWJJ
bnNwZWN0b3IuQmxhbmtTdHlsZVByb3BlcnRpZXNTZWN0aW9uID0gZnVuY3Rpb24oZGVmYXVsdFNl
bGVjdG9yVGV4dCkKIHsKLSAgICBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbi5j
YWxsKHRoaXMsIHBhcmVudFBhbmUsIHtzZWxlY3RvclRleHQ6IGRlZmF1bHRTZWxlY3RvclRleHQs
IHJ1bGU6IHtpc1ZpYUluc3BlY3RvcjogdHJ1ZX19LCB0cnVlLCBmYWxzZSwgZmFsc2UpOworICAg
IFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnRpZXNTZWN0aW9uLmNhbGwodGhpcywge3NlbGVjdG9y
VGV4dDogZGVmYXVsdFNlbGVjdG9yVGV4dCwgcnVsZToge2lzVmlhSW5zcGVjdG9yOiB0cnVlfX0s
IHRydWUsIGZhbHNlLCBmYWxzZSk7CiAgICAgdGhpcy5lbGVtZW50LmFkZFN0eWxlQ2xhc3MoImJs
YW5rLXNlY3Rpb24iKTsKIH0KIApAQCAtMTEyMiw5ICsxMTIxLDggQEAgV2ViSW5zcGVjdG9yLkJs
YW5rU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbi5wcm90b3R5cGUgPSB7CiAKIFdlYkluc3BlY3Rvci5C
bGFua1N0eWxlUHJvcGVydGllc1NlY3Rpb24ucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3Bl
Y3Rvci5TdHlsZVByb3BlcnRpZXNTZWN0aW9uLnByb3RvdHlwZTsKIAotV2ViSW5zcGVjdG9yLlN0
eWxlUHJvcGVydHlUcmVlRWxlbWVudCA9IGZ1bmN0aW9uKHBhcmVudFBhbmUsIHN0eWxlUnVsZSwg
c3R5bGUsIHByb3BlcnR5LCBzaG9ydGhhbmQsIGluaGVyaXRlZCwgb3ZlcmxvYWRlZCkKK1dlYklu
c3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQgPSBmdW5jdGlvbihzdHlsZVJ1bGUsIHN0
eWxlLCBwcm9wZXJ0eSwgc2hvcnRoYW5kLCBpbmhlcml0ZWQsIG92ZXJsb2FkZWQpCiB7Ci0gICAg
dGhpcy5fcGFyZW50UGFuZSA9IHBhcmVudFBhbmU7CiAgICAgdGhpcy5fc3R5bGVSdWxlID0gc3R5
bGVSdWxlOwogICAgIHRoaXMuc3R5bGUgPSBzdHlsZTsKICAgICB0aGlzLnByb3BlcnR5ID0gcHJv
cGVydHk7CkBAIC0xNDg1LDcgKzE0ODMsNyBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRy
ZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgdmFy
IGxpdmVQcm9wZXJ0eSA9IHRoaXMuc3R5bGUuZ2V0TGl2ZVByb3BlcnR5KG5hbWUpOwotICAgICAg
ICAgICAgdmFyIGl0ZW0gPSBuZXcgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVlRWxlbWVu
dCh0aGlzLl9wYXJlbnRQYW5lLCB0aGlzLl9zdHlsZVJ1bGUsIHRoaXMuc3R5bGUsIGxpdmVQcm9w
ZXJ0eSwgZmFsc2UsIGluaGVyaXRlZCwgb3ZlcmxvYWRlZCk7CisgICAgICAgICAgICB2YXIgaXRl
bSA9IG5ldyBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50KHRoaXMuX3N0eWxl
UnVsZSwgdGhpcy5zdHlsZSwgbGl2ZVByb3BlcnR5LCBmYWxzZSwgaW5oZXJpdGVkLCBvdmVybG9h
ZGVkKTsKICAgICAgICAgICAgIHRoaXMuYXBwZW5kQ2hpbGQoaXRlbSk7CiAgICAgICAgIH0KICAg
ICB9LApAQCAtMTYxMSw3ICsxNjA5LDYgQEAgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVl
RWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm4gIm1vdmUtZm9yd2FyZCI7
CiAgICAgICAgIH0KIAotICAgICAgICB0aGlzLl9wYXJlbnRQYW5lLmlzTW9kaWZ5aW5nU3R5bGUg
PSB0cnVlOwogICAgICAgICBXZWJJbnNwZWN0b3Iuc3RhcnRFZGl0aW5nKHNlbGVjdEVsZW1lbnQs
IHsKICAgICAgICAgICAgIGNvbnRleHQ6IGNvbnRleHQsCiAgICAgICAgICAgICBjb21taXRIYW5k
bGVyOiB0aGlzLmVkaXRpbmdDb21taXR0ZWQuYmluZCh0aGlzKSwKQEAgLTE3MjIsNyArMTcxOSw2
IEBAIFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewog
ICAgICAgICAgICAgZWRpdGVkRWxlbWVudC5wYXJlbnRFbGVtZW50LnJlbW92ZVN0eWxlQ2xhc3Mo
ImNoaWxkLWVkaXRpbmciKTsKIAogICAgICAgICBkZWxldGUgdGhpcy5vcmlnaW5hbFByb3BlcnR5
VGV4dDsKLSAgICAgICAgZGVsZXRlIHRoaXMuX3BhcmVudFBhbmUuaXNNb2RpZnlpbmdTdHlsZTsK
ICAgICB9LAogCiAgICAgZWRpdGluZ0NhbmNlbGxlZDogZnVuY3Rpb24oZWxlbWVudCwgY29udGV4
dCkKQEAgLTE3NzEsNyArMTc2Nyw2IEBAIFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVs
ZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICB2YXIgaXNEaXJ0eVZpYVBhc3RlID0gaXNEYXRh
UGFzdGVkICYmICh0aGlzLm5hbWVFbGVtZW50LnRleHRDb250ZW50ICE9PSBjb250ZXh0Lm9yaWdp
bmFsTmFtZSB8fCB0aGlzLnZhbHVlRWxlbWVudC50ZXh0Q29udGVudCAhPT0gY29udGV4dC5vcmln
aW5hbFZhbHVlKTsKICAgICAgICAgdmFyIHNob3VsZENvbW1pdE5ld1Byb3BlcnR5ID0gdGhpcy5f
bmV3UHJvcGVydHkgJiYgKG1vdmVUb090aGVyIHx8ICghbW92ZURpcmVjdGlvbiAmJiAhaXNFZGl0
aW5nTmFtZSkgfHwgKGlzRWRpdGluZ05hbWUgJiYgYmxhbmtJbnB1dCkpOwogICAgICAgICBpZiAo
KCh1c2VySW5wdXQgIT09IHByZXZpb3VzQ29udGVudCB8fCBpc0RpcnR5VmlhUGFzdGUpICYmICF0
aGlzLl9uZXdQcm9wZXJ0eSkgfHwgc2hvdWxkQ29tbWl0TmV3UHJvcGVydHkpIHsKLSAgICAgICAg
ICAgIHRoaXMuX3BhcmVudFBhbmUuaXNNb2RpZnlpbmdTdHlsZSA9IHRydWU7CiAgICAgICAgICAg
ICB0aGlzLnRyZWVPdXRsaW5lLnNlY3Rpb24uX2FmdGVyVXBkYXRlID0gbW92ZVRvTmV4dENhbGxi
YWNrLmJpbmQodGhpcywgdGhpcy5fbmV3UHJvcGVydHksICFibGFua0lucHV0LCB0aGlzLnRyZWVP
dXRsaW5lLnNlY3Rpb24pOwogICAgICAgICAgICAgdmFyIHByb3BlcnR5VGV4dDsKICAgICAgICAg
ICAgIGlmIChibGFua0lucHV0IHx8ICh0aGlzLl9uZXdQcm9wZXJ0eSAmJiAvXlxzKiQvLnRlc3Qo
dGhpcy52YWx1ZUVsZW1lbnQudGV4dENvbnRlbnQpKSkKQEAgLTE3ODYsNyArMTc4MSw3IEBAIFdl
Ykluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgaWYgKCFpc0RhdGFQYXN0ZWQgJiYgIXRoaXMuX25ld1By
b3BlcnR5KQogICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVGl0bGUoKTsKLSAgICAgICAgICAg
IG1vdmVUb05leHRDYWxsYmFjay5jYWxsKHRoaXMsIHRoaXMuX25ld1Byb3BlcnR5LCBmYWxzZSwg
dGhpcy50cmVlT3V0bGluZS5zZWN0aW9uKTsKKyAgICAgICAgICAgIG1vdmVUb05leHRDYWxsYmFj
ayh0aGlzLl9uZXdQcm9wZXJ0eSwgZmFsc2UsIHRoaXMudHJlZU91dGxpbmUuc2VjdGlvbik7CiAg
ICAgICAgIH0KIAogICAgICAgICB2YXIgbW92ZVRvSW5kZXggPSBtb3ZlVG8gJiYgdGhpcy50cmVl
T3V0bGluZSA/IHRoaXMudHJlZU91dGxpbmUuY2hpbGRyZW4uaW5kZXhPZihtb3ZlVG8pIDogLTE7
CkBAIC0xNzk0LDggKzE3ODksNiBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVt
ZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgLy8gVGhlIENhbGxiYWNrIHRvIHN0YXJ0IGVkaXRp
bmcgdGhlIG5leHQvcHJldmlvdXMgcHJvcGVydHkvc2VsZWN0b3IuCiAgICAgICAgIGZ1bmN0aW9u
IG1vdmVUb05leHRDYWxsYmFjayhhbHJlYWR5TmV3LCB2YWx1ZUNoYW5nZWQsIHNlY3Rpb24pCiAg
ICAgICAgIHsKLSAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9wYXJlbnRQYW5lLmlzTW9kaWZ5aW5n
U3R5bGU7Ci0KICAgICAgICAgICAgIGlmICghbW92ZURpcmVjdGlvbikKICAgICAgICAgICAgICAg
ICByZXR1cm47CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>