<?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>193047</bug_id>
          
          <creation_ts>2018-12-28 02:56:33 -0800</creation_ts>
          <short_desc>User should be able to add build request manually.</short_desc>
          <delta_ts>2019-01-10 15:10:58 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>1</everconfirmed>
          <reporter>dewei_zhu</reporter>
          <assigned_to>dewei_zhu</assigned_to>
          <cc>dewei_zhu</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1490927</commentid>
    <comment_count>0</comment_count>
    <who name="">dewei_zhu</who>
    <bug_when>2018-12-28 02:56:33 -0800</bug_when>
    <thetext>User should be able to add build request manually.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490928</commentid>
    <comment_count>1</comment_count>
      <attachid>358119</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2018-12-28 03:20:43 -0800</bug_when>
    <thetext>Created attachment 358119
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493092</commentid>
    <comment_count>2</comment_count>
      <attachid>358119</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-01-09 14:27:44 -0800</bug_when>
    <thetext>Comment on attachment 358119
Patch

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

&gt; Websites/perf.webkit.org/public/privileged-api/add-build-requests.php:46
&gt; +    if (array_key_exists(&apos;needsNotification&apos;, $data)) {
&gt; +        $db-&gt;update_row(&apos;analysis_test_groups&apos;, &apos;testgroup&apos;, array(&apos;id&apos; =&gt; $test_group_id),

So what happens if the user who created the test group and the user who added more build requests were different?
Our simplistic model of having a single author per test group may no longer be valid...

&gt; Websites/perf.webkit.org/public/v3/pages/analysis-task-page.js:403
&gt; +                &lt;test-group-form id=&quot;add-build-request-form&quot;&gt;Add&lt;/test-group-form&gt;

It seems a bit unintuitive that &quot;Add&quot; adds as many iterations as specified for retry...

&gt; Websites/perf.webkit.org/public/v3/pages/analysis-task-page.js:561
&gt; +        groupPane.listenToAction(&apos;bisectTestGroup&apos;, (testGroup, commitSets, repetitionCount, notifyOnCompletion) =&gt; this._bisectCurrentTestGroup(testGroup, commitSets, repetitionCount, notifyOnCompletion));groupPane.listenToAction(&apos;retryTestGroup&apos;, (testGroup, repetitionCount, notifyOnCompletion) =&gt; this._retryCurrentTestGroup(testGroup, repetitionCount, notifyOnCompletion));

You have a duplicate code for retryTestGroup. Remove that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493496</commentid>
    <comment_count>3</comment_count>
      <attachid>358119</attachid>
    <who name="">dewei_zhu</who>
    <bug_when>2019-01-10 15:03:04 -0800</bug_when>
    <thetext>Comment on attachment 358119
Patch

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

&gt;&gt; Websites/perf.webkit.org/public/privileged-api/add-build-requests.php:46
&gt;&gt; +        $db-&gt;update_row(&apos;analysis_test_groups&apos;, &apos;testgroup&apos;, array(&apos;id&apos; =&gt; $test_group_id),
&gt; 
&gt; So what happens if the user who created the test group and the user who added more build requests were different?
&gt; Our simplistic model of having a single author per test group may no longer be valid...

You are right. Per this commit, what will happen is the author is not changed, meaning that the people who increase the build request may not receive the notification...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493503</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2019-01-10 15:10:58 -0800</bug_when>
    <thetext>(In reply to dewei_zhu from comment #3)
&gt; Comment on attachment 358119 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=358119&amp;action=review
&gt; 
&gt; &gt;&gt; Websites/perf.webkit.org/public/privileged-api/add-build-requests.php:46
&gt; &gt;&gt; +        $db-&gt;update_row(&apos;analysis_test_groups&apos;, &apos;testgroup&apos;, array(&apos;id&apos; =&gt; $test_group_id),
&gt; &gt; 
&gt; &gt; So what happens if the user who created the test group and the user who added more build requests were different?
&gt; &gt; Our simplistic model of having a single author per test group may no longer be valid...
&gt; 
&gt; You are right. Per this commit, what will happen is the author is not
&gt; changed, meaning that the people who increase the build request may not
&gt; receive the notification...

This along with the other feature where you&apos;re trying to add the ability to notify authors of other test groups, I&apos;m more and more convinced that we need some kind of a watch list for a test group / analysis task.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358119</attachid>
            <date>2018-12-28 03:20:43 -0800</date>
            <delta_ts>2019-01-09 14:27:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-193047-20181228032042.patch</filename>
            <type>text/plain</type>
            <size>19325</size>
            <attacher>dewei_zhu</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5NTU2CmRpZmYgLS1naXQgYS9XZWJzaXRlcy9wZXJmLndl
YmtpdC5vcmcvQ2hhbmdlTG9nIGIvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL0NoYW5nZUxvZwpp
bmRleCAwOTM2OTA5NzYxYTI0ZjE3ZGNmM2FhOWI3YTQyZWUxNGQyNGJlNTA1Li5kZTM4MDk2YzZi
ZDZiMGU3YmVmNWRlMDg0YzgyOWYyZDQ4ZjIwZjYwIDEwMDY0NAotLS0gYS9XZWJzaXRlcy9wZXJm
LndlYmtpdC5vcmcvQ2hhbmdlTG9nCisrKyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxOC0xMi0yOCAgRGV3ZWkgWmh1ICA8ZGV3ZWlfemh1
QGFwcGxlLmNvbT4KKworICAgICAgICBVc2VyIHNob3VsZCBiZSBhYmxlIHRvIGFkZCBidWlsZCBy
ZXF1ZXN0IG1hbnVhbGx5LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTkzMDQ3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQWRkZWQgVUkgZm9yIHVzZXIgdG8gYWRkIGV4dHJhIGJ1aWxkIHJlcXVlc3RzIG9u
IGFuYWx5c2lzIHRhc2sgcGFnZS4gIAorCisgICAgICAgICogcHVibGljL3ByaXZpbGVnZWQtYXBp
L2FkZC1idWlsZC1yZXF1ZXN0cy5waHA6IEV4dGVuZGVkIEFQSSB0byBhbGxvdyB1cGRhdGUgJ25l
ZWRzX25vdGlmaWNhdGlvbicgZmxhZy4KKyAgICAgICAgKiBwdWJsaWMvdjMvbW9kZWxzL3Rlc3Qt
Z3JvdXAuanM6CisgICAgICAgIChUZXN0R3JvdXAucHJvdG90eXBlLmFzeW5jLmFkZE1vcmVCdWls
ZFJlcXVlc3RzKTogVXBkYXRlZCB0aGlzIGZ1bmN0aW9uIHRvIGFsbG93IHBhc3NpbmcgJ25lZWRz
Tm90aWZpY2F0aW9uJworICAgICAgICBmbGFnIGlmIHNwZWNpZmllZC4KKyAgICAgICAgKFRlc3RH
cm91cC5wcm90b3R5cGUuYXN5bmMubWluQnVpbGRSZXF1ZXN0c1RvRnVsZmlsbEluaXRpYWxSZXF1
ZXN0KTogQWRkZWQgdGhpcyBmdW5jdGlvbiB0byBjYWxjdWxhdGUKKyAgICAgICAgbWluaW11bSBy
ZXF1aXJlZCBidWlsZCByZXF1ZXN0cyB0byBmdWxmaWxsIGluaXRpYWwgcmVxdWVzdGVkIGl0ZXJh
dGlvbnMuIFRoaXMgaXMgdXNlZCBmb3IgcHJvdmlkaW5nIHN1Z2d1ZXN0ZWQKKyAgICAgICAgY291
bnQgb24gdGhlIFVJLgorICAgICAgICAqIHB1YmxpYy92My9wYWdlcy9hbmFseXNpcy10YXNrLXBh
Z2UuanM6IEFkZGVkIFVJIHRvIGFkZCBidWlsZCByZXF1ZXN0cy4KKyAgICAgICAgKEFuYWx5c2lz
VGFza1Rlc3RHcm91cFBhbmUucHJvdG90eXBlLmRpZENvbnN0cnVjdFNoYWRvd1RyZWUpOgorICAg
ICAgICAoQW5hbHlzaXNUYXNrVGVzdEdyb3VwUGFuZS5wcm90b3R5cGUuX3JlbmRlckN1cnJlbnRU
ZXN0R3JvdXApOgorICAgICAgICAoQW5hbHlzaXNUYXNrVGVzdEdyb3VwUGFuZS5jc3NUZW1wbGF0
ZSk6CisgICAgICAgIChBbmFseXNpc1Rhc2tQYWdlLnByb3RvdHlwZS5kaWRDb25zdHJ1Y3RTaGFk
b3dUcmVlKToKKyAgICAgICAgKEFuYWx5c2lzVGFza1BhZ2UucHJvdG90eXBlLmFzeW5jLl9hZGRC
dWlsZFJlcXVlc3RGb3JDdXJyZW50VGVzdEdyb3VwKToKKyAgICAgICAgKiBzZXJ2ZXItdGVzdHMv
cHJpdmlsZWdlZC1hcGktYWRkLWJ1aWxkLXJlcXVlc3RzLXRlc3RzLmpzOiBBZGRlZCBhIHVuaXQg
dGVzdC4KKyAgICAgICAgKiB1bml0LXRlc3RzL3Rlc3QtZ3JvdXBzLXRlc3RzLmpzOiBBZGRlZCB1
bml0IHRlc3RzLgorCiAyMDE4LTEyLTE0ICBEZXdlaSBaaHUgIDxkZXdlaV96aHVAYXBwbGUuY29t
PgogCiAgICAgICAgIEV4dGVuZCBjb21taXRzIHRhYmxlIHRvIGNvbnRhaW4gdGVzdGFiaWxpdHkg
aW5mb3JtYXRpb24uCmRpZmYgLS1naXQgYS9XZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvcHVibGlj
L3ByaXZpbGVnZWQtYXBpL2FkZC1idWlsZC1yZXF1ZXN0cy5waHAgYi9XZWJzaXRlcy9wZXJmLndl
YmtpdC5vcmcvcHVibGljL3ByaXZpbGVnZWQtYXBpL2FkZC1idWlsZC1yZXF1ZXN0cy5waHAKaW5k
ZXggZDFjMjA1ZWFmODZlYzE4ZjA2YjM0ZjJiNzEzOWMyMzU2ZWU3MzFmYy4uZjY5ODYwZjI5ODE1
MjNhYzljNGFjNzA2ZWJhNmZhYzdlYjEwOWY0MyAxMDA2NDQKLS0tIGEvV2Vic2l0ZXMvcGVyZi53
ZWJraXQub3JnL3B1YmxpYy9wcml2aWxlZ2VkLWFwaS9hZGQtYnVpbGQtcmVxdWVzdHMucGhwCisr
KyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMvcHJpdmlsZWdlZC1hcGkvYWRkLWJ1
aWxkLXJlcXVlc3RzLnBocApAQCAtNDEsNiArNDEsMTIgQEAgZnVuY3Rpb24gbWFpbigpIHsKICAg
ICB9CiAKICAgICAkZGItPmJlZ2luX3RyYW5zYWN0aW9uKCk7CisKKyAgICBpZiAoYXJyYXlfa2V5
X2V4aXN0cygnbmVlZHNOb3RpZmljYXRpb24nLCAkZGF0YSkpIHsKKyAgICAgICAgJGRiLT51cGRh
dGVfcm93KCdhbmFseXNpc190ZXN0X2dyb3VwcycsICd0ZXN0Z3JvdXAnLCBhcnJheSgnaWQnID0+
ICR0ZXN0X2dyb3VwX2lkKSwKKyAgICAgICAgICAgIGFycmF5KCduZWVkc19ub3RpZmljYXRpb24n
ID0+IERhdGFiYXNlOjp0b19kYXRhYmFzZV9ib29sZWFuKCRkYXRhWyduZWVkc05vdGlmaWNhdGlv
biddKSkpOworICAgIH0KKwogICAgIGZvciAoJGkgPSAwOyAkaSA8ICRhZGRpdGlvbmFsX2J1aWxk
X3JlcXVlc3RfY291bnQ7ICRpKyspIHsKICAgICAgICAgZm9yZWFjaCAoJGNvbW1pdF9zZXRzIGFz
ICRjb21taXRfc2V0KSB7CiAgICAgICAgICAgICAkYnVpbGRfcmVxdWVzdCA9ICRidWlsZF9yZXF1
ZXN0X2J5X2NvbW1pdF9zZXRbJGNvbW1pdF9zZXRdOwpkaWZmIC0tZ2l0IGEvV2Vic2l0ZXMvcGVy
Zi53ZWJraXQub3JnL3B1YmxpYy92My9tb2RlbHMvdGVzdC1ncm91cC5qcyBiL1dlYnNpdGVzL3Bl
cmYud2Via2l0Lm9yZy9wdWJsaWMvdjMvbW9kZWxzL3Rlc3QtZ3JvdXAuanMKaW5kZXggOTdlOGJj
OGVlM2NkYTlhNmY2NDE2MjM1MzRlNjdmYjgwMDM5OTgyYi4uNTRiMDQ5YTk3ZmM1NzM0ZWE2NGE3
NmRhZDEzODdjMDliZGQxMWNmOSAxMDA2NDQKLS0tIGEvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3Jn
L3B1YmxpYy92My9tb2RlbHMvdGVzdC1ncm91cC5qcworKysgYi9XZWJzaXRlcy9wZXJmLndlYmtp
dC5vcmcvcHVibGljL3YzL21vZGVscy90ZXN0LWdyb3VwLmpzCkBAIC0xNDAsNiArMTQwLDE5IEBA
IGNsYXNzIFRlc3RHcm91cCBleHRlbmRzIExhYmVsZWRPYmplY3QgewogICAgICAgICByZXR1cm4g
dGhpcy5fYnVpbGRSZXF1ZXN0cy5zb21lKGZ1bmN0aW9uIChyZXF1ZXN0KSB7IHJldHVybiByZXF1
ZXN0LmlzUGVuZGluZygpOyB9KTsKICAgICB9CiAKKyAgICBtaW5CdWlsZFJlcXVlc3RzVG9GdWxm
aWxsSW5pdGlhbFJlcXVlc3QoKQorICAgIHsKKyAgICAgICAgbGV0IG1pblJlcXVpcmVkQnVpbGRS
ZXF1ZXN0cyA9IDA7CisgICAgICAgIGZvciAoY29uc3QgY29tbWl0U2V0IG9mIHRoaXMucmVxdWVz
dGVkQ29tbWl0U2V0cygpKSB7CisgICAgICAgICAgICBjb25zdCBidWlsZFJlcXVlc3RzID0gdGhp
cy5yZXF1ZXN0c0ZvckNvbW1pdFNldChjb21taXRTZXQpLmZpbHRlcigocmVxdWVzdCkgPT4gcmVx
dWVzdC5pc1Rlc3QoKSk7CisgICAgICAgICAgICBjb25zdCBjb21wbGV0ZWQgPSBidWlsZFJlcXVl
c3RzLmZpbHRlcigocmVxdWVzdCkgPT4gcmVxdWVzdC5oYXNDb21wbGV0ZWQoKSkubGVuZ3RoOwor
ICAgICAgICAgICAgY29uc3QgdW5maW5pc2hlZCA9IGJ1aWxkUmVxdWVzdHMuZmlsdGVyKChyZXF1
ZXN0KSA9PiAhcmVxdWVzdC5oYXNGaW5pc2hlZCgpKS5sZW5ndGg7CisgICAgICAgICAgICBjb25z
dCByZXF1aXJlZEJ1aWxkUmVxdWVzdHMgPSB0aGlzLmluaXRpYWxSZXBldGl0aW9uQ291bnQoKSAt
IGNvbXBsZXRlZCAtIHVuZmluaXNoZWQ7CisgICAgICAgICAgICBtaW5SZXF1aXJlZEJ1aWxkUmVx
dWVzdHMgPSBNYXRoLm1heChtaW5SZXF1aXJlZEJ1aWxkUmVxdWVzdHMsIHJlcXVpcmVkQnVpbGRS
ZXF1ZXN0cyk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIG1pblJlcXVpcmVkQnVpbGRSZXF1
ZXN0czsKKyAgICB9CisKICAgICBjb21wYXJlVGVzdFJlc3VsdHMobWV0cmljLCBiZWZvcmVNZWFz
dXJlbWVudHMsIGFmdGVyTWVhc3VyZW1lbnRzKQogICAgIHsKICAgICAgICAgY29uc29sZS5hc3Nl
cnQobWV0cmljKTsKQEAgLTIyOCwxMiArMjQxLDE3IEBAIGNsYXNzIFRlc3RHcm91cCBleHRlbmRz
IExhYmVsZWRPYmplY3QgewogICAgICAgICB9KTsKICAgICB9CiAKLSAgICBhc3luYyBhZGRNb3Jl
QnVpbGRSZXF1ZXN0cyhhZGRDb3VudCkKKyAgICBhc3luYyBhZGRNb3JlQnVpbGRSZXF1ZXN0cyhh
ZGRDb3VudCwgbmVlZHNOb3RpZmljYXRpb24pCiAgICAgewotICAgICAgICByZXR1cm4gYXdhaXQg
dGhpcy5fdXBkYXRlQnVpbGRSZXF1ZXN0KHsKKyAgICAgICAgY29uc3QgcGF5bG9hZCA9IHsKICAg
ICAgICAgICAgIGdyb3VwOiB0aGlzLmlkKCksCiAgICAgICAgICAgICBhZGRDb3VudCwKLSAgICAg
ICAgfSwgJ2FkZC1idWlsZC1yZXF1ZXN0cycpOworICAgICAgICB9OworCisgICAgICAgIGlmICh0
eXBlb2YobmVlZHNOb3RpZmljYXRpb24pICE9PSAndW5kZWZpbmVkJykKKyAgICAgICAgICAgIHBh
eWxvYWRbJ25lZWRzTm90aWZpY2F0aW9uJ10gPSAhIW5lZWRzTm90aWZpY2F0aW9uOworCisgICAg
ICAgIHJldHVybiBhd2FpdCB0aGlzLl91cGRhdGVCdWlsZFJlcXVlc3QocGF5bG9hZCwgJ2FkZC1i
dWlsZC1yZXF1ZXN0cycpOwogICAgIH0KIAogICAgIGFzeW5jIGNsZWFyTWF5TmVlZE1vcmVCdWls
ZFJlcXVlc3RzKCkKZGlmZiAtLWdpdCBhL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9wdWJsaWMv
djMvcGFnZXMvYW5hbHlzaXMtdGFzay1wYWdlLmpzIGIvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3Jn
L3B1YmxpYy92My9wYWdlcy9hbmFseXNpcy10YXNrLXBhZ2UuanMKaW5kZXggODI4MGRhYTRiMGNj
ZDM4ZmIyODJhMjQ3MmVmNjk4ZWJiMDAzYzVkNy4uYzE5YmU5NjY3Njk2ZmVkOTE2MjI2YmYxZWJj
ZjcyYTQ1YWE2YzdmNSAxMDA2NDQKLS0tIGEvV2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3B1Ymxp
Yy92My9wYWdlcy9hbmFseXNpcy10YXNrLXBhZ2UuanMKKysrIGIvV2Vic2l0ZXMvcGVyZi53ZWJr
aXQub3JnL3B1YmxpYy92My9wYWdlcy9hbmFseXNpcy10YXNrLXBhZ2UuanMKQEAgLTI3MCw2ICsy
NzAsOSBAQCBjbGFzcyBBbmFseXNpc1Rhc2tUZXN0R3JvdXBQYW5lIGV4dGVuZHMgQ29tcG9uZW50
QmFzZSB7CiAgICAgICAgIHRoaXMucGFydCgncmV0cnktZm9ybScpLmxpc3RlblRvQWN0aW9uKCdz
dGFydFRlc3RpbmcnLCAocmVwZXRpdGlvbkNvdW50LCBub3RpZnlPbkNvbXBsZXRpb24pID0+IHsK
ICAgICAgICAgICAgIHRoaXMuZGlzcGF0Y2hBY3Rpb24oJ3JldHJ5VGVzdEdyb3VwJywgdGhpcy5f
Y3VycmVudFRlc3RHcm91cCwgcmVwZXRpdGlvbkNvdW50LCBub3RpZnlPbkNvbXBsZXRpb24pOwog
ICAgICAgICB9KTsKKyAgICAgICAgdGhpcy5wYXJ0KCdhZGQtYnVpbGQtcmVxdWVzdC1mb3JtJyku
bGlzdGVuVG9BY3Rpb24oJ3N0YXJ0VGVzdGluZycsIChyZXBldGl0aW9uQ291bnQsIG5vdGlmeU9u
Q29tcGxldGlvbikgPT4geworICAgICAgICAgICAgdGhpcy5kaXNwYXRjaEFjdGlvbignYWRkQnVp
bGRSZXF1ZXN0JywgdGhpcy5fY3VycmVudFRlc3RHcm91cCwgcmVwZXRpdGlvbkNvdW50LCBub3Rp
ZnlPbkNvbXBsZXRpb24pOworICAgICAgICB9KTsKICAgICAgICAgdGhpcy5wYXJ0KCdiaXNlY3Qt
Zm9ybScpLmxpc3RlblRvQWN0aW9uKCdzdGFydFRlc3RpbmcnLCAocmVwZXRpdGlvbkNvdW50LCBu
b3RpZnlPbkNvbXBsZXRpb24pID0+IHsKICAgICAgICAgICAgIGNvbnN0IGJpc2VjdGluZ0NvbW1p
dFNldCA9IHRoaXMuX2Jpc2VjdGluZ0NvbW1pdFNldEJ5VGVzdEdyb3VwLmdldCh0aGlzLl9jdXJy
ZW50VGVzdEdyb3VwKTsKICAgICAgICAgICAgIGNvbnN0IFtvbmVDb21taXRTZXQsIGFub3RoZXJD
b21taXRTZXRdID0gdGhpcy5fY3VycmVudFRlc3RHcm91cC5yZXF1ZXN0ZWRDb21taXRTZXRzKCk7
CkBAIC0zNzEsMTEgKzM3NCwxMyBAQCBjbGFzcyBBbmFseXNpc1Rhc2tUZXN0R3JvdXBQYW5lIGV4
dGVuZHMgQ29tcG9uZW50QmFzZSB7CiAgICAgICAgIGlmIChjdXJyZW50R3JvdXApIHsKICAgICAg
ICAgICAgIHRoaXMucGFydCgncmV0cnktZm9ybScpLnNldFJlcGV0aXRpb25Db3VudChjdXJyZW50
R3JvdXAuaW5pdGlhbFJlcGV0aXRpb25Db3VudCgpKTsKICAgICAgICAgICAgIHRoaXMucGFydCgn
YmlzZWN0LWZvcm0nKS5zZXRSZXBldGl0aW9uQ291bnQoY3VycmVudEdyb3VwLmluaXRpYWxSZXBl
dGl0aW9uQ291bnQoKSk7CisgICAgICAgICAgICB0aGlzLnBhcnQoJ2FkZC1idWlsZC1yZXF1ZXN0
LWZvcm0nKS5zZXRSZXBldGl0aW9uQ291bnQoTWF0aC5tYXgoY3VycmVudEdyb3VwLm1pbkJ1aWxk
UmVxdWVzdHNUb0Z1bGZpbGxJbml0aWFsUmVxdWVzdCgpLCAxKSk7CiAgICAgICAgICAgICBjb25z
dCBzdW1tYXJ5ID0gYCR7Y3VycmVudEdyb3VwLmluaXRpYWxSZXBldGl0aW9uQ291bnQoKX0gcmVx
dWVzdGVkLCAke2N1cnJlbnRHcm91cC5yZXBldGl0aW9uQ291bnQoKSAtIGN1cnJlbnRHcm91cC5p
bml0aWFsUmVwZXRpdGlvbkNvdW50KCl9IGFkZGVkIGR1ZSB0byBmYWlsdXJlcy5gOwogICAgICAg
ICAgICAgdGhpcy5jb250ZW50KCdzdGF0dXMtc3VtbWFyeScpLmlubmVySFRNTCA9IHN1bW1hcnk7
CiAgICAgICAgIH0KICAgICAgICAgdGhpcy5jb250ZW50KCdyZXRyeS1mb3JtJykuc3R5bGUuZGlz
cGxheSA9IGN1cnJlbnRHcm91cCA/IG51bGwgOiAnbm9uZSc7CiAgICAgICAgIHRoaXMuY29udGVu
dCgnYmlzZWN0LWZvcm0nKS5zdHlsZS5kaXNwbGF5ID0gY3VycmVudEdyb3VwICYmIHRoaXMuX2Jp
c2VjdGluZ0NvbW1pdFNldEJ5VGVzdEdyb3VwLmdldChjdXJyZW50R3JvdXApID8gbnVsbCA6ICdu
b25lJzsKKyAgICAgICAgdGhpcy5jb250ZW50KCdhZGQtYnVpbGQtcmVxdWVzdC1mb3JtJykuc3R5
bGUuZGlzcGxheSA9IGN1cnJlbnRHcm91cCA/IG51bGwgOiAnbm9uZSc7CiAgICAgICAgIHRoaXMu
Y29udGVudCgnc3RhdHVzLXN1bW1hcnknKS5zdHlsZS5kaXNwbGF5ID0gY3VycmVudEdyb3VwICYm
IGN1cnJlbnRHcm91cC5yZXBldGl0aW9uQ291bnQoKSA+IGN1cnJlbnRHcm91cC5pbml0aWFsUmVw
ZXRpdGlvbkNvdW50KCkgPyBudWxsIDogJ25vbmUnOwogCiAgICAgICAgIGNvbnN0IGhpZGVCdXR0
b24gPSB0aGlzLmNvbnRlbnQoJ2hpZGUtYnV0dG9uJyk7CkBAIC0zOTUsNiArNDAwLDcgQEAgY2xh
c3MgQW5hbHlzaXNUYXNrVGVzdEdyb3VwUGFuZSBleHRlbmRzIENvbXBvbmVudEJhc2UgewogICAg
ICAgICAgICAgICAgIDxkaXYgaWQ9InN0YXR1cy1zdW1tYXJ5IiBjbGFzcz0ic3VtbWFyeSI+PC9k
aXY+CiAgICAgICAgICAgICAgICAgPHRlc3QtZ3JvdXAtZm9ybSBpZD0icmV0cnktZm9ybSI+UmV0
cnk8L3Rlc3QtZ3JvdXAtZm9ybT4KICAgICAgICAgICAgICAgICA8dGVzdC1ncm91cC1mb3JtIGlk
PSJiaXNlY3QtZm9ybSI+QmlzZWN0PC90ZXN0LWdyb3VwLWZvcm0+CisgICAgICAgICAgICAgICAg
PHRlc3QtZ3JvdXAtZm9ybSBpZD0iYWRkLWJ1aWxkLXJlcXVlc3QtZm9ybSI+QWRkPC90ZXN0LWdy
b3VwLWZvcm0+CiAgICAgICAgICAgICAgICAgPGJ1dHRvbiBpZD0iaGlkZS1idXR0b24iPkhpZGU8
L2J1dHRvbj4KICAgICAgICAgICAgICAgICA8c3BhbiBpZD0icGVuZGluZy1yZXF1ZXN0LWNhbmNl
bC13YXJuaW5nIj4oY2FuY2VscyBwZW5kaW5nIHJlcXVlc3RzKTwvc3Bhbj4KICAgICAgICAgICAg
IDwvZGl2PmA7CkBAIC00NjYsNyArNDcyLDcgQEAgY2xhc3MgQW5hbHlzaXNUYXNrVGVzdEdyb3Vw
UGFuZSBleHRlbmRzIENvbXBvbmVudEJhc2UgewogICAgICAgICAgICAgICAgIG1hcmdpbjogMDsK
ICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgI3JldHJ5LWZvcm0sICNiaXNlY3QtZm9ybSB7
CisgICAgICAgICAgICAjcmV0cnktZm9ybSwgI2Jpc2VjdC1mb3JtLCAjYWRkLWJ1aWxkLXJlcXVl
c3QtZm9ybSB7CiAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICAgICAg
ICAgbWFyZ2luOiAwLjVyZW07CiAgICAgICAgICAgICB9CkBAIC01NTIsNyArNTU4LDggQEAgY2xh
c3MgQW5hbHlzaXNUYXNrUGFnZSBleHRlbmRzIFBhZ2VXaXRoSGVhZGluZyB7CiAgICAgICAgIGdy
b3VwUGFuZS5saXN0ZW5Ub0FjdGlvbigncmVuYW1lVGVzdEdyb3VwJywgKHRlc3RHcm91cCwgbmV3
TmFtZSkgPT4gdGhpcy5fdXBkYXRlVGVzdEdyb3VwTmFtZSh0ZXN0R3JvdXAsIG5ld05hbWUpKTsK
ICAgICAgICAgZ3JvdXBQYW5lLmxpc3RlblRvQWN0aW9uKCd0b2dnbGVUZXN0R3JvdXBWaXNpYmls
aXR5JywgKHRlc3RHcm91cCkgPT4gdGhpcy5faGlkZUN1cnJlbnRUZXN0R3JvdXAodGVzdEdyb3Vw
KSk7CiAgICAgICAgIGdyb3VwUGFuZS5saXN0ZW5Ub0FjdGlvbigncmV0cnlUZXN0R3JvdXAnLCAo
dGVzdEdyb3VwLCByZXBldGl0aW9uQ291bnQsIG5vdGlmeU9uQ29tcGxldGlvbikgPT4gdGhpcy5f
cmV0cnlDdXJyZW50VGVzdEdyb3VwKHRlc3RHcm91cCwgcmVwZXRpdGlvbkNvdW50LCBub3RpZnlP
bkNvbXBsZXRpb24pKTsKLSAgICAgICAgZ3JvdXBQYW5lLmxpc3RlblRvQWN0aW9uKCdiaXNlY3RU
ZXN0R3JvdXAnLCAodGVzdEdyb3VwLCBjb21taXRTZXRzLCByZXBldGl0aW9uQ291bnQsIG5vdGlm
eU9uQ29tcGxldGlvbikgPT4gdGhpcy5fYmlzZWN0Q3VycmVudFRlc3RHcm91cCh0ZXN0R3JvdXAs
IGNvbW1pdFNldHMsIHJlcGV0aXRpb25Db3VudCwgbm90aWZ5T25Db21wbGV0aW9uKSk7CisgICAg
ICAgIGdyb3VwUGFuZS5saXN0ZW5Ub0FjdGlvbignYmlzZWN0VGVzdEdyb3VwJywgKHRlc3RHcm91
cCwgY29tbWl0U2V0cywgcmVwZXRpdGlvbkNvdW50LCBub3RpZnlPbkNvbXBsZXRpb24pID0+IHRo
aXMuX2Jpc2VjdEN1cnJlbnRUZXN0R3JvdXAodGVzdEdyb3VwLCBjb21taXRTZXRzLCByZXBldGl0
aW9uQ291bnQsIG5vdGlmeU9uQ29tcGxldGlvbikpO2dyb3VwUGFuZS5saXN0ZW5Ub0FjdGlvbign
cmV0cnlUZXN0R3JvdXAnLCAodGVzdEdyb3VwLCByZXBldGl0aW9uQ291bnQsIG5vdGlmeU9uQ29t
cGxldGlvbikgPT4gdGhpcy5fcmV0cnlDdXJyZW50VGVzdEdyb3VwKHRlc3RHcm91cCwgcmVwZXRp
dGlvbkNvdW50LCBub3RpZnlPbkNvbXBsZXRpb24pKTsKKyAgICAgICAgZ3JvdXBQYW5lLmxpc3Rl
blRvQWN0aW9uKCdhZGRCdWlsZFJlcXVlc3QnLCAodGVzdEdyb3VwLCByZXBldGl0aW9uQ291bnQs
IG5vdGlmeU9uQ29tcGxldGlvbikgPT4gdGhpcy5fYWRkQnVpbGRSZXF1ZXN0Rm9yQ3VycmVudFRl
c3RHcm91cCh0ZXN0R3JvdXAsIHJlcGV0aXRpb25Db3VudCwgbm90aWZ5T25Db21wbGV0aW9uKSk7
CiAKICAgICAgICAgdGhpcy5wYXJ0KCdjYXVzZS1saXN0JykubGlzdGVuVG9BY3Rpb24oJ2FkZEl0
ZW0nLCAocmVwb3NpdG9yeSwgcmV2aXNpb24pID0+IHsKICAgICAgICAgICAgIHRoaXMuX2Fzc29j
aWF0ZUNvbW1pdCgnY2F1c2UnLCByZXBvc2l0b3J5LCByZXZpc2lvbik7CkBAIC04NTgsNiArODY1
LDE3IEBAIGNsYXNzIEFuYWx5c2lzVGFza1BhZ2UgZXh0ZW5kcyBQYWdlV2l0aEhlYWRpbmcgewog
ICAgICAgICB9CiAgICAgfQogCisgICAgYXN5bmMgX2FkZEJ1aWxkUmVxdWVzdEZvckN1cnJlbnRU
ZXN0R3JvdXAodGVzdEdyb3VwLCByZXBldGl0aW9uQ291bnQsIG5vdGlmeU9uQ29tcGxldGlvbikK
KyAgICB7CisgICAgICAgIHRyeSB7CisgICAgICAgICAgICBhd2FpdCB0ZXN0R3JvdXAuYWRkTW9y
ZUJ1aWxkUmVxdWVzdHMocmVwZXRpdGlvbkNvdW50LCBub3RpZnlPbkNvbXBsZXRpb24pOworICAg
ICAgICAgICAgY29uc3QgYW5hbHlzaXNSZXN1bHRzID0gYXdhaXQgQW5hbHlzaXNSZXN1bHRzLmZl
dGNoKHRlc3RHcm91cC50YXNrKCkuaWQoKSk7CisgICAgICAgICAgICBhd2FpdCB0aGlzLl9kaWRG
ZXRjaEFuYWx5c2lzUmVzdWx0cyhhbmFseXNpc1Jlc3VsdHMpOworICAgICAgICB9IGNhdGNoKGVy
cm9yKSB7CisgICAgICAgICAgICBhbGVydCgnRmFpbGVkIHRvIGFkZCBidWlsZCByZXF1ZXN0czog
JyArIGVycm9yKTsKKyAgICAgICAgfQorICAgIH0KKwogICAgIF9jcmVhdGVUZXN0R3JvdXBBZnRl
clZlcmlmeWluZ0NvbW1pdFNldExpc3QodGVzdEdyb3VwTmFtZSwgcmVwZXRpdGlvbkNvdW50LCBj
b21taXRTZXRNYXAsIG5vdGlmeU9uQ29tcGxldGlvbikKICAgICB7CiAgICAgICAgIGlmICh0aGlz
Ll9oYXNEdXBsaWNhdGVUZXN0R3JvdXBOYW1lKHRlc3RHcm91cE5hbWUpKSB7CmRpZmYgLS1naXQg
YS9XZWJzaXRlcy9wZXJmLndlYmtpdC5vcmcvc2VydmVyLXRlc3RzL3ByaXZpbGVnZWQtYXBpLWFk
ZC1idWlsZC1yZXF1ZXN0cy10ZXN0cy5qcyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9zZXJ2
ZXItdGVzdHMvcHJpdmlsZWdlZC1hcGktYWRkLWJ1aWxkLXJlcXVlc3RzLXRlc3RzLmpzCmluZGV4
IDk0NDA0NzdlOTEyOWJkNzlkNWU0ZjA2ZWJhZTc1MjZiMWUzY2I1YTguLjcwZTI1NTliNzk1ZjUy
YjA2ZDBlOTQ1MmUzOTMyNmRmMjBkZDhmZTkgMTAwNjQ0Ci0tLSBhL1dlYnNpdGVzL3BlcmYud2Vi
a2l0Lm9yZy9zZXJ2ZXItdGVzdHMvcHJpdmlsZWdlZC1hcGktYWRkLWJ1aWxkLXJlcXVlc3RzLXRl
c3RzLmpzCisrKyBiL1dlYnNpdGVzL3BlcmYud2Via2l0Lm9yZy9zZXJ2ZXItdGVzdHMvcHJpdmls
ZWdlZC1hcGktYWRkLWJ1aWxkLXJlcXVlc3RzLXRlc3RzLmpzCkBAIC0xODAsNCArMTgwLDI1IEBA
IGRlc2NyaWJlKCcvcHJpdmlsZWdlZC1hcGkvYWRkLWJ1aWxkLXJlcXVlc3RzJywgZnVuY3Rpb24o
KSB7CiAKICAgICAgICAgYXdhaXQgYXNzZXJ0VGhyb3dzKCdDYW5ub3RBZGRUb0hpZGRlblRlc3RH
cm91cCcsIGFzeW5jICgpID0+IGF3YWl0IFByaXZpbGVnZWRBUEkuc2VuZFJlcXVlc3QoJ2FkZC1i
dWlsZC1yZXF1ZXN0cycsIHtncm91cDogaW5zZXJ0ZWRHcm91cElkLCBhZGRDb3VudDogMn0pKQog
ICAgIH0pOworCisgICAgaXQoJ3Nob3VsZCBiZSBhYmxlIHRvIGFkZCBidWlsZCByZXF1ZXN0IGFu
ZCBzZXQgIm5lZWRzX25vdGlmaWNhdGlvbiIgZmxhZycsIGFzeW5jICgpID0+IHsKKyAgICAgICAg
YXdhaXQgYWRkVHJpZ2dlcmFibGVBbmRDcmVhdGVUYXNrKCdzb21lIHRhc2snKTsKKyAgICAgICAg
Y29uc3Qgd2Via2l0ID0gUmVwb3NpdG9yeS5hbGwoKS5maWx0ZXIoKHJlcG9zaXRvcnkpID0+IHJl
cG9zaXRvcnkubmFtZSgpID09ICdXZWJLaXQnKVswXTsKKyAgICAgICAgY29uc3QgcmV2aXNpb25T
ZXRzID0gW3tbd2Via2l0LmlkKCldOiB7cmV2aXNpb246ICcxOTE2MjInfX0sIHtbd2Via2l0Lmlk
KCldOiB7cmV2aXNpb246ICcxOTE2MjMnfX1dOworICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQg
UHJpdmlsZWdlZEFQSS5zZW5kUmVxdWVzdCgnY3JlYXRlLXRlc3QtZ3JvdXAnLAorICAgICAgICAg
ICAge25hbWU6ICd0ZXN0JywgdGFza05hbWU6ICdvdGhlciB0YXNrJywgcGxhdGZvcm06IE1vY2tE
YXRhLnNvbWVQbGF0Zm9ybUlkKCksIHRlc3Q6IE1vY2tEYXRhLnNvbWVUZXN0SWQoKSwgbmVlZHNO
b3RpZmljYXRpb246IGZhbHNlLCByZXBldGl0aW9uQ291bnQ6IDIsIHJldmlzaW9uU2V0c30pOwor
ICAgICAgICBjb25zdCBpbnNlcnRlZEdyb3VwSWQgPSByZXN1bHRbJ3Rlc3RHcm91cElkJ107CisK
KyAgICAgICAgYXdhaXQgUHJpdmlsZWdlZEFQSS5zZW5kUmVxdWVzdCgnYWRkLWJ1aWxkLXJlcXVl
c3RzJywge2dyb3VwOiBpbnNlcnRlZEdyb3VwSWQsIGFkZENvdW50OiAyLCBuZWVkc05vdGlmaWNh
dGlvbjogdHJ1ZX0pOworCisgICAgICAgIGNvbnN0IHVwZGF0ZWRHcm91cHMgPSBhd2FpdCBUZXN0
R3JvdXAuZmV0Y2hGb3JUYXNrKHJlc3VsdFsndGFza0lkJ10sIHRydWUpOworICAgICAgICBhc3Nl
cnQuZXF1YWwodXBkYXRlZEdyb3Vwcy5sZW5ndGgsIDEpOworICAgICAgICBhc3NlcnQuZXF1YWwo
dXBkYXRlZEdyb3Vwc1swXS5yZXBldGl0aW9uQ291bnQoKSwgNCk7CisgICAgICAgIGFzc2VydC5l
cXVhbCh1cGRhdGVkR3JvdXBzWzBdLmluaXRpYWxSZXBldGl0aW9uQ291bnQoKSwgMik7CisgICAg
ICAgIGFzc2VydC5lcXVhbCh1cGRhdGVkR3JvdXBzWzBdLm5lZWRzTm90aWZpY2F0aW9uKCksIHRy
dWUpOworICAgICAgICBmb3IgKGNvbnN0IGNvbW1pdFNldCBvZiB1cGRhdGVkR3JvdXBzWzBdLnJl
cXVlc3RlZENvbW1pdFNldHMoKSkgeworICAgICAgICAgICAgY29uc3QgYnVpbGRSZXF1ZXN0cyA9
IHVwZGF0ZWRHcm91cHNbMF0ucmVxdWVzdHNGb3JDb21taXRTZXQoY29tbWl0U2V0KTsKKyAgICAg
ICAgICAgIGFzc2VydC5lcXVhbChidWlsZFJlcXVlc3RzLmxlbmd0aCwgNCk7CisgICAgICAgIH0K
KyAgICB9KTsKIH0pOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1dl
YnNpdGVzL3BlcmYud2Via2l0Lm9yZy91bml0LXRlc3RzL3Rlc3QtZ3JvdXBzLXRlc3RzLmpzIGIv
V2Vic2l0ZXMvcGVyZi53ZWJraXQub3JnL3VuaXQtdGVzdHMvdGVzdC1ncm91cHMtdGVzdHMuanMK
aW5kZXggYWE0MzU1NGJlOGY5NmFiMzMwMGQ1MzczYTE0ODkwNDZhNjkxNzg3OS4uN2QzYWEzNWY4
YzBlNTI3ZDBiMTIyMWIzOTJjM2M5ODVmMDlhN2ZkNSAxMDA2NDQKLS0tIGEvV2Vic2l0ZXMvcGVy
Zi53ZWJraXQub3JnL3VuaXQtdGVzdHMvdGVzdC1ncm91cHMtdGVzdHMuanMKKysrIGIvV2Vic2l0
ZXMvcGVyZi53ZWJraXQub3JnL3VuaXQtdGVzdHMvdGVzdC1ncm91cHMtdGVzdHMuanMKQEAgLTcs
NyArNyw4IEBAIGNvbnN0IE5vZGVQcml2aWxlZ2VkQVBJID0gcmVxdWlyZSgnLi4vdG9vbHMvanMv
cHJpdmlsZWdlZC1hcGkuanMnKS5Qcml2aWxlZ2VkQVBJCiBjb25zdCBNb2NrTW9kZWxzID0gcmVx
dWlyZSgnLi9yZXNvdXJjZXMvbW9jay12My1tb2RlbHMuanMnKS5Nb2NrTW9kZWxzOwogY29uc3Qg
TW9ja1JlbW90ZUFQSSA9IHJlcXVpcmUoJy4vcmVzb3VyY2VzL21vY2stcmVtb3RlLWFwaS5qcycp
Lk1vY2tSZW1vdGVBUEk7CiAKLWZ1bmN0aW9uIHNhbXBsZVRlc3RHcm91cChuZWVkc05vdGlmaWNh
dGlvbj10cnVlLCBpbml0aWFsUmVwZXRpdGlvbkNvdW50PTIsIG1heU5lZWRNb3JlUmVxdWVzdHM9
dHJ1ZSkgeworZnVuY3Rpb24gc2FtcGxlVGVzdEdyb3VwKG5lZWRzTm90aWZpY2F0aW9uPXRydWUs
IGluaXRpYWxSZXBldGl0aW9uQ291bnQ9MiwgbWF5TmVlZE1vcmVSZXF1ZXN0cz10cnVlLAorICAg
IGJ1aWxkUmVxdWVzdHNTdGF0dXM9WyJwZW5kaW5nIiwgInBlbmRpbmciLCAicGVuZGluZyIsICJw
ZW5kaW5nIl0pIHsKICAgICByZXR1cm4gewogICAgICAgICAidGVzdEdyb3VwcyI6IFt7CiAgICAg
ICAgICAgICAiaWQiOiAiMjEyOCIsCkBAIC0zMiw3ICszMyw3IEBAIGZ1bmN0aW9uIHNhbXBsZVRl
c3RHcm91cChuZWVkc05vdGlmaWNhdGlvbj10cnVlLCBpbml0aWFsUmVwZXRpdGlvbkNvdW50PTIs
IG1heU5lCiAgICAgICAgICAgICAidGVzdEdyb3VwIjogIjIxMjgiLAogICAgICAgICAgICAgIm9y
ZGVyIjogIjAiLAogICAgICAgICAgICAgImNvbW1pdFNldCI6ICI0MjU1IiwKLSAgICAgICAgICAg
ICJzdGF0dXMiOiAicGVuZGluZyIsCisgICAgICAgICAgICAic3RhdHVzIjogYnVpbGRSZXF1ZXN0
c1N0YXR1c1swXSwKICAgICAgICAgICAgICJ1cmwiOiBudWxsLAogICAgICAgICAgICAgImJ1aWxk
IjogbnVsbCwKICAgICAgICAgICAgICJjcmVhdGVkQXQiOiAxNDU4Njg4NTE0MDAwCkBAIC00NCw3
ICs0NSw3IEBAIGZ1bmN0aW9uIHNhbXBsZVRlc3RHcm91cChuZWVkc05vdGlmaWNhdGlvbj10cnVl
LCBpbml0aWFsUmVwZXRpdGlvbkNvdW50PTIsIG1heU5lCiAgICAgICAgICAgICAidGVzdEdyb3Vw
IjogIjIxMjgiLAogICAgICAgICAgICAgIm9yZGVyIjogIjEiLAogICAgICAgICAgICAgImNvbW1p
dFNldCI6ICI0MjU2IiwKLSAgICAgICAgICAgICJzdGF0dXMiOiAicGVuZGluZyIsCisgICAgICAg
ICAgICAic3RhdHVzIjogYnVpbGRSZXF1ZXN0c1N0YXR1c1sxXSwKICAgICAgICAgICAgICJ1cmwi
OiBudWxsLAogICAgICAgICAgICAgImJ1aWxkIjogbnVsbCwKICAgICAgICAgICAgICJjcmVhdGVk
QXQiOiAxNDU4Njg4NTE0MDAwCkBAIC01Nyw3ICs1OCw3IEBAIGZ1bmN0aW9uIHNhbXBsZVRlc3RH
cm91cChuZWVkc05vdGlmaWNhdGlvbj10cnVlLCBpbml0aWFsUmVwZXRpdGlvbkNvdW50PTIsIG1h
eU5lCiAgICAgICAgICAgICAidGVzdEdyb3VwIjogIjIxMjgiLAogICAgICAgICAgICAgIm9yZGVy
IjogIjIiLAogICAgICAgICAgICAgImNvbW1pdFNldCI6ICI0MjU1IiwKLSAgICAgICAgICAgICJz
dGF0dXMiOiAicGVuZGluZyIsCisgICAgICAgICAgICAic3RhdHVzIjogYnVpbGRSZXF1ZXN0c1N0
YXR1c1syXSwKICAgICAgICAgICAgICJ1cmwiOiBudWxsLAogICAgICAgICAgICAgImJ1aWxkIjog
bnVsbCwKICAgICAgICAgICAgICJjcmVhdGVkQXQiOiAxNDU4Njg4NTE0MDAwCkBAIC02OSw3ICs3
MCw3IEBAIGZ1bmN0aW9uIHNhbXBsZVRlc3RHcm91cChuZWVkc05vdGlmaWNhdGlvbj10cnVlLCBp
bml0aWFsUmVwZXRpdGlvbkNvdW50PTIsIG1heU5lCiAgICAgICAgICAgICAidGVzdEdyb3VwIjog
IjIxMjgiLAogICAgICAgICAgICAgIm9yZGVyIjogIjMiLAogICAgICAgICAgICAgImNvbW1pdFNl
dCI6ICI0MjU2IiwKLSAgICAgICAgICAgICJzdGF0dXMiOiAicGVuZGluZyIsCisgICAgICAgICAg
ICAic3RhdHVzIjogYnVpbGRSZXF1ZXN0c1N0YXR1c1szXSwKICAgICAgICAgICAgICJ1cmwiOiBu
dWxsLAogICAgICAgICAgICAgImJ1aWxkIjogbnVsbCwKICAgICAgICAgICAgICJjcmVhdGVkQXQi
OiAxNDU4Njg4NTE0MDAwCkBAIC0yMzcsNiArMjM4LDkwIEBAIGRlc2NyaWJlKCdUZXN0R3JvdXAn
LCBmdW5jdGlvbiAoKSB7CiAgICAgICAgIH0pOwogICAgIH0pOwogCisgICAgZGVzY3JpYmUoJ2Fk
ZE1vcmVCdWlsZFJlcXVlc3RzJywgKCkgPT4geworICAgICAgICBjb25zdCByZXF1ZXN0cyA9IE1v
Y2tSZW1vdGVBUEkuaW5qZWN0KCdodHRwczovL3BlcmYud2Via2l0Lm9yZycsIE5vZGVQcml2aWxl
Z2VkQVBJKTsKKyAgICAgICAgYmVmb3JlRWFjaCgoKSA9PiB7CisgICAgICAgICAgICBQcml2aWxl
Z2VkQVBJLmNvbmZpZ3VyZSgndGVzdCcsICdwYXNzd29yZCcpOworICAgICAgICB9KTsKKworICAg
ICAgICBpdCgnc2hvdWxkIGJlIGFibGUgdG8gYWRkIGJ1aWxkIHJlcXVlc3Qgd2l0aG91dCBtb2Rp
ZnlpbmcgIm5lZWRfbm90aWZpY2F0aW9uIiBmbGFnJywgYXN5bmMgKCkgPT4geworICAgICAgICAg
ICAgY29uc3QgZmV0Y2hQcm9taXNlID0gVGVzdEdyb3VwLmZldGNoRm9yVGFzaygxMzc2KTsKKyAg
ICAgICAgICAgIHJlcXVlc3RzWzBdLnJlc29sdmUoc2FtcGxlVGVzdEdyb3VwKCkpOworICAgICAg
ICAgICAgY29uc3QgdGVzdEdyb3VwcyA9IGF3YWl0IGZldGNoUHJvbWlzZTsKKyAgICAgICAgICAg
IGFzc2VydCh0ZXN0R3JvdXBzLmxlbmd0aCwgMSk7CisgICAgICAgICAgICBjb25zdCB0ZXN0R3Jv
dXAgPSB0ZXN0R3JvdXBzWzBdOworCisgICAgICAgICAgICB0ZXN0R3JvdXAuYWRkTW9yZUJ1aWxk
UmVxdWVzdHMoMSk7CisgICAgICAgICAgICBhc3NlcnQuZXF1YWwocmVxdWVzdHMubGVuZ3RoLCAy
KTsKKyAgICAgICAgICAgIGFzc2VydC5lcXVhbChyZXF1ZXN0cy5sZW5ndGgsIDIpOworICAgICAg
ICAgICAgYXNzZXJ0LmVxdWFsKHJlcXVlc3RzWzFdLm1ldGhvZCwgJ1BPU1QnKTsKKyAgICAgICAg
ICAgIGFzc2VydC5lcXVhbChyZXF1ZXN0c1sxXS51cmwsICcvcHJpdmlsZWdlZC1hcGkvYWRkLWJ1
aWxkLXJlcXVlc3RzJyk7CisgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHJlcXVlc3RzWzFd
LmRhdGEsIHtncm91cDogJzIxMjgnLCBhZGRDb3VudDogMSwgc2xhdmVOYW1lOiAndGVzdCcsIHNs
YXZlUGFzc3dvcmQ6ICdwYXNzd29yZCd9KTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgaXQoJ3No
b3VsZCBiZSBhYmxlIHRvIGFkZCBidWlsZCByZXF1ZXN0IGFuZCBtb2RpZnkgIm5lZWRfbm90aWZp
Y2F0aW9uIiBmbGFnJywgYXN5bmMgKCkgPT4geworICAgICAgICAgICAgY29uc3QgZmV0Y2hQcm9t
aXNlID0gVGVzdEdyb3VwLmZldGNoRm9yVGFzaygxMzc2KTsKKyAgICAgICAgICAgIHJlcXVlc3Rz
WzBdLnJlc29sdmUoc2FtcGxlVGVzdEdyb3VwKCkpOworICAgICAgICAgICAgY29uc3QgdGVzdEdy
b3VwcyA9IGF3YWl0IGZldGNoUHJvbWlzZTsKKyAgICAgICAgICAgIGFzc2VydCh0ZXN0R3JvdXBz
Lmxlbmd0aCwgMSk7CisgICAgICAgICAgICBjb25zdCB0ZXN0R3JvdXAgPSB0ZXN0R3JvdXBzWzBd
OworCisgICAgICAgICAgICB0ZXN0R3JvdXAuYWRkTW9yZUJ1aWxkUmVxdWVzdHMoMSwgdHJ1ZSk7
CisgICAgICAgICAgICBhc3NlcnQuZXF1YWwocmVxdWVzdHMubGVuZ3RoLCAyKTsKKyAgICAgICAg
ICAgIGFzc2VydC5lcXVhbChyZXF1ZXN0cy5sZW5ndGgsIDIpOworICAgICAgICAgICAgYXNzZXJ0
LmVxdWFsKHJlcXVlc3RzWzFdLm1ldGhvZCwgJ1BPU1QnKTsKKyAgICAgICAgICAgIGFzc2VydC5l
cXVhbChyZXF1ZXN0c1sxXS51cmwsICcvcHJpdmlsZWdlZC1hcGkvYWRkLWJ1aWxkLXJlcXVlc3Rz
Jyk7CisgICAgICAgICAgICBhc3NlcnQuZGVlcEVxdWFsKHJlcXVlc3RzWzFdLmRhdGEsIHtncm91
cDogJzIxMjgnLCBhZGRDb3VudDogMSwgbmVlZHNOb3RpZmljYXRpb246IHRydWUsIHNsYXZlTmFt
ZTogJ3Rlc3QnLCBzbGF2ZVBhc3N3b3JkOiAncGFzc3dvcmQnfSk7CisgICAgICAgIH0pOworICAg
IH0pOworCisgICAgZGVzY3JpYmUoJ21pbkJ1aWxkUmVxdWVzdHNUb0Z1bGZpbGxJbml0aWFsUmVx
dWVzdCcsICgpID0+IHsKKyAgICAgICAgY29uc3QgcmVxdWVzdHMgPSBNb2NrUmVtb3RlQVBJLmlu
amVjdCgnaHR0cHM6Ly9wZXJmLndlYmtpdC5vcmcnLCBOb2RlUHJpdmlsZWdlZEFQSSk7CisgICAg
ICAgIGJlZm9yZUVhY2goKCkgPT4geworICAgICAgICAgICAgUHJpdmlsZWdlZEFQSS5jb25maWd1
cmUoJ3Rlc3QnLCAncGFzc3dvcmQnKTsKKyAgICAgICAgfSk7CisKKyAgICAgICAgaXQoJ3Nob3Vs
ZCByZXR1cm4gMCBpZiBhbGwgYnVpbGQgcmVxdWVzdHMgYXJlIHBlbmRpbmcnLCBhc3luYyAoKSA9
PiB7CisgICAgICAgICAgICBjb25zdCBmZXRjaFByb21pc2UgPSBUZXN0R3JvdXAuZmV0Y2hGb3JU
YXNrKDEzNzYpOworICAgICAgICAgICAgcmVxdWVzdHNbMF0ucmVzb2x2ZShzYW1wbGVUZXN0R3Jv
dXAoKSk7CisgICAgICAgICAgICBjb25zdCB0ZXN0R3JvdXBzID0gYXdhaXQgZmV0Y2hQcm9taXNl
OworICAgICAgICAgICAgYXNzZXJ0KHRlc3RHcm91cHMubGVuZ3RoLCAxKTsKKyAgICAgICAgICAg
IGNvbnN0IHRlc3RHcm91cCA9IHRlc3RHcm91cHNbMF07CisKKyAgICAgICAgICAgIGFzc2VydC5l
cXVhbCh0ZXN0R3JvdXAubWluQnVpbGRSZXF1ZXN0c1RvRnVsZmlsbEluaXRpYWxSZXF1ZXN0KCks
IDApOworICAgICAgICB9KTsKKworICAgICAgICBpdCgnc2hvdWxkIHJldHVybiBtYXhpbXVtIHJl
cXVpcmVkIGNvdW50IGFtb25nIGNvbW1pdCBzZXRzJywgYXN5bmMgKCkgPT4geworICAgICAgICAg
ICAgY29uc3QgZmV0Y2hQcm9taXNlID0gVGVzdEdyb3VwLmZldGNoRm9yVGFzaygxMzc2KTsKKyAg
ICAgICAgICAgIHJlcXVlc3RzWzBdLnJlc29sdmUoc2FtcGxlVGVzdEdyb3VwKHRydWUsIDIsIHRy
dWUsIFsiZmFpbGVkIiwgImZhaWxlZCIsICJjb21wbGV0ZWQiLCAiZmFpbGVkIl0pKTsKKyAgICAg
ICAgICAgIGNvbnN0IHRlc3RHcm91cHMgPSBhd2FpdCBmZXRjaFByb21pc2U7CisgICAgICAgICAg
ICBhc3NlcnQodGVzdEdyb3Vwcy5sZW5ndGgsIDEpOworICAgICAgICAgICAgY29uc3QgdGVzdEdy
b3VwID0gdGVzdEdyb3Vwc1swXTsKKworICAgICAgICAgICAgYXNzZXJ0LmVxdWFsKHRlc3RHcm91
cC5taW5CdWlsZFJlcXVlc3RzVG9GdWxmaWxsSW5pdGlhbFJlcXVlc3QoKSwgMik7CisgICAgICAg
IH0pOworCisgICAgICAgIGl0KCdzaG91bGQgcmV0dXJuIDAgaWYgYWxsIGZpbmlzaGVkIGJ1aWxk
IHJlcXVlc3RzIGFyZSBjb21wbGV0ZWQgYW5kIHJlbWFpbmluZyBhcmUgcGVuZGluZycsIGFzeW5j
ICgpID0+IHsKKyAgICAgICAgICAgIGNvbnN0IGZldGNoUHJvbWlzZSA9IFRlc3RHcm91cC5mZXRj
aEZvclRhc2soMTM3Nik7CisgICAgICAgICAgICByZXF1ZXN0c1swXS5yZXNvbHZlKHNhbXBsZVRl
c3RHcm91cCh0cnVlLCAyLCB0cnVlLCBbImNvbXBsZXRlZCIsICJwZW5kaW5nIiwgInBlbmRpbmci
LCAicGVuZGluZyJdKSk7CisgICAgICAgICAgICBjb25zdCB0ZXN0R3JvdXBzID0gYXdhaXQgZmV0
Y2hQcm9taXNlOworICAgICAgICAgICAgYXNzZXJ0KHRlc3RHcm91cHMubGVuZ3RoLCAxKTsKKyAg
ICAgICAgICAgIGNvbnN0IHRlc3RHcm91cCA9IHRlc3RHcm91cHNbMF07CisKKyAgICAgICAgICAg
IGFzc2VydC5lcXVhbCh0ZXN0R3JvdXAubWluQnVpbGRSZXF1ZXN0c1RvRnVsZmlsbEluaXRpYWxS
ZXF1ZXN0KCksIDApOworICAgICAgICB9KTsKKworICAgICAgICBpdCgnc2hvdWxkIHJldHJ5IGNh
bmNlbGVkIG9uZXMnLCBhc3luYyAoKSA9PiB7CisgICAgICAgICAgICBjb25zdCBmZXRjaFByb21p
c2UgPSBUZXN0R3JvdXAuZmV0Y2hGb3JUYXNrKDEzNzYpOworICAgICAgICAgICAgcmVxdWVzdHNb
MF0ucmVzb2x2ZShzYW1wbGVUZXN0R3JvdXAodHJ1ZSwgMiwgdHJ1ZSwgWyJjb21wbGV0ZWQiLCAi
Y2FuY2VsZWQiLCAiY2FuY2VsZWQiLCAiY2FuY2VsZWQiXSkpOworICAgICAgICAgICAgY29uc3Qg
dGVzdEdyb3VwcyA9IGF3YWl0IGZldGNoUHJvbWlzZTsKKyAgICAgICAgICAgIGFzc2VydCh0ZXN0
R3JvdXBzLmxlbmd0aCwgMSk7CisgICAgICAgICAgICBjb25zdCB0ZXN0R3JvdXAgPSB0ZXN0R3Jv
dXBzWzBdOworCisgICAgICAgICAgICBhc3NlcnQuZXF1YWwodGVzdEdyb3VwLm1pbkJ1aWxkUmVx
dWVzdHNUb0Z1bGZpbGxJbml0aWFsUmVxdWVzdCgpLCAyKTsKKyAgICAgICAgfSk7CisgICAgfSk7
CisKICAgICBkZXNjcmliZSgnX2NyZWF0ZU1vZGVsc0Zyb21GZXRjaGVkVGVzdEdyb3VwcycsIGZ1
bmN0aW9uICgpIHsKICAgICAgICAgaXQoJ3Nob3VsZCBjcmVhdGUgdGVzdCBncm91cHMnLCBmdW5j
dGlvbiAoKSB7CiAgICAgICAgICAgICB2YXIgZ3JvdXBzID0gVGVzdEdyb3VwLl9jcmVhdGVNb2Rl
bHNGcm9tRmV0Y2hlZFRlc3RHcm91cHMoc2FtcGxlVGVzdEdyb3VwKCkpOwpAQCAtNDg3LDUgKzU3
Miw0IEBAIGRlc2NyaWJlKCdUZXN0R3JvdXAnLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICBh
c3NlcnQuZXF1YWwocmVxdWVzdHNbM10udXJsLCAnL2FwaS9hbmFseXNpcy10YXNrcz9pZD0xMjMn
KTsKICAgICAgICAgfSk7CiAgICAgfSkKLQogfSk7ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQo=
</data>
<flag name="review"
          id="374978"
          type_id="1"
          status="+"
          setter="rniwa"
    />
          </attachment>
      

    </bug>

</bugzilla>