<?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>162071</bug_id>
          
          <creation_ts>2016-09-16 10:49:35 -0700</creation_ts>
          <short_desc>Web Inspector: adopt Object.awaitEvent in LayoutTests/inspector/css</short_desc>
          <delta_ts>2016-09-19 16:53:16 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>161634</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>bburg</cc>
    
    <cc>commit-queue</cc>
    
    <cc>joepeck</cc>
    
    <cc>mattbaker</cc>
    
    <cc>nvasilyev</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1230468</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-09-16 10:49:35 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1230470</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-09-16 10:50:05 -0700</bug_when>
    <thetext>&lt;rdar://problem/28340044&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1230673</commentid>
    <comment_count>2</comment_count>
      <attachid>289129</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-09-16 16:28:56 -0700</bug_when>
    <thetext>Created attachment 289129
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231055</commentid>
    <comment_count>3</comment_count>
      <attachid>289129</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2016-09-19 04:24:55 -0700</bug_when>
    <thetext>Comment on attachment 289129
Patch

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

r=me

&gt; LayoutTests/inspector/css/createStyleSheet.html:38
&gt; +                CSSAgent.createStyleSheet(mainFrame.id);

Nit: newline</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231389</commentid>
    <comment_count>4</comment_count>
      <attachid>289273</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-09-19 16:20:04 -0700</bug_when>
    <thetext>Created attachment 289273
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231421</commentid>
    <comment_count>5</comment_count>
      <attachid>289273</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-19 16:53:12 -0700</bug_when>
    <thetext>Comment on attachment 289273
Patch

Clearing flags on attachment: 289273

Committed r206133: &lt;http://trac.webkit.org/changeset/206133&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231422</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-19 16:53:16 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289129</attachid>
            <date>2016-09-16 16:28:56 -0700</date>
            <delta_ts>2016-09-19 16:20:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162071-20160916162616.patch</filename>
            <type>text/plain</type>
            <size>29211</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjOTU5YjMyMmFlMjAyYzg5MjEzMjMxYzNlY2Q4YjhlOTY5YjNjYjAzLi5kOTNmMWFk
NjMwNWRkZmZkZDlhZmQxMmNiMmIxYmZlZWVmY2Q0OWFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTYtMDktMTYgIERldmluIFJvdXNzbyAgPGRjcm91c3NvK3dlYmtpdEBnbWFpbC5jb20+CisK
KyAgICAgICAgV2ViIEluc3BlY3RvcjogYWRvcHQgT2JqZWN0LmF3YWl0RXZlbnQgaW4gTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL2NzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTYyMDcxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgUmVwbGFjZSBpbnN0YW5jZXMgb2Ygc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIg
d2l0aCBhd2FpdEV2ZW50IGFuZCB1c2UgcHJvbWlzZSBsb2dpYyB0byBtYWtlCisgICAgICAgIHRl
c3RzIG1vcmUgcmVhZGFibGUuCisKKyAgICAgICAgKiBpbnNwZWN0b3IvY3NzL2NyZWF0ZVN0eWxl
U2hlZXQuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvY3NzL2dlbmVyYXRlLWNzcy1ydWxlLXN0
cmluZy5odG1sOgorICAgICAgICAqIGluc3BlY3Rvci9jc3MvbWFuYWdlci1wcmVmZXJyZWRJbnNw
ZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGluc3BlY3Rv
ci9jc3MvbWFuYWdlci1wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUuaHRtbDoK
KyAgICAgICAgKiBpbnNwZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZlbnRzLWJhc2ljLmh0bWw6Cisg
ICAgICAgICogaW5zcGVjdG9yL2Nzcy9zdHlsZXNoZWV0LWV2ZW50cy1pbnNwZWN0b3Itc3R5bGVz
aGVldC5odG1sOgorICAgICAgICAqIGluc3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVudHMtbXVs
dGlwbGUtZG9jdW1lbnRzLmh0bWw6CisKIDIwMTYtMDktMTYgIEplciBOb2JsZSAgPGplci5ub2Js
ZUBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBnYXJkZW5pbmc7IGVuYWJsZSBuZXds
eSBwYXNzaW5nIG1lZGlhL21lZGlhLXNvdXJjZS8gdGVzdHMuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9pbnNwZWN0b3IvY3NzL2NyZWF0ZVN0eWxlU2hlZXQuaHRtbCBiL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9jc3MvY3JlYXRlU3R5bGVTaGVldC5odG1sCmluZGV4IDIwYmE3MDlkNGE3MGY0OGZl
MWFlYmNlYjhkYjYxMmVkMWYwMDEwOWIuLmU2MWRhYTAyNDE3MTI3MWM0ZmEzMTllMGMxOTAxMTg1
MGFiYzYxNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvY3JlYXRlU3R5
bGVTaGVldC5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvY3JlYXRlU3R5bGVT
aGVldC5odG1sCkBAIC0xMyw3ICsxMyw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRlLmFk
ZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIkNoZWNrTm9TdHlsZVNoZWV0cyIsCiAgICAgICAg
IGRlc2NyaXB0aW9uOiAiRW5zdXJlIHRoZXJlIGFyZSBubyBzdHlsZXNoZWV0cy4iLAotICAgICAg
ICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVq
ZWN0KSB7CiAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoV2ViSW5zcGVjdG9y
LmNzc1N0eWxlTWFuYWdlci5zdHlsZVNoZWV0cy5sZW5ndGggPT09IDAsICJTaG91bGQgYmUgbm8g
c3R5bGVzaGVldHMuIik7CiAgICAgICAgICAgICByZXNvbHZlKCk7CiAgICAgICAgIH0KQEAgLTIz
LDkgKzIzLDkgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsK
ICAgICAgICAgICAgIG5hbWU6ICJDcmVhdGVJbnNwZWN0b3JTdHlsZVNoZWV0Q2FsbCIgKyBpLAog
ICAgICAgICAgICAgZGVzY3JpcHRpb246ICJTaG91bGQgY3JlYXRlIGEgbmV3IGluc3BlY3RvciBz
dHlsZXNoZWV0LiIsCi0gICAgICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0g
ICAgICAgICAgICAgICAgQ1NTQWdlbnQuY3JlYXRlU3R5bGVTaGVldChtYWluRnJhbWUuaWQpOwot
ICAgICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc2luZ2xlRmlyZUV2
ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0
QWRkZWQsIGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVj
dCkgeworICAgICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuYXdhaXRF
dmVudChXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCkK
KyAgICAgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc3R5
bGVTaGVldHMubGVuZ3RoID09PSBpLCAiU2hvdWxkIGluY3JlYXNlIHRoZSBsaXN0IG9mIHN0eWxl
c2hlZXRzLiIpOwogICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQo
ZXZlbnQuZGF0YS5zdHlsZVNoZWV0Lm9yaWdpbiA9PT0gV2ViSW5zcGVjdG9yLkNTU1N0eWxlU2hl
ZXQuVHlwZS5JbnNwZWN0b3IsICJBZGRlZCBTdHlsZVNoZWV0IG9yaWdpbiBzaG91bGQgYmUgJ2lu
c3BlY3RvcicuIik7CiAgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhh
dChldmVudC5kYXRhLnN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCksICJTdHlsZVNo
ZWV0LmlzSW5zcGVjdG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0cnVlLiIpOwpAQCAtMzMsMTQg
KzMzLDE2IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICAgICAgICAgICAgICBpZiAoYWRkZWRT
dHlsZVNoZWV0KQogICAgICAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RU
aGF0KGV2ZW50LmRhdGEuc3R5bGVTaGVldCAhPT0gYWRkZWRTdHlsZVNoZWV0LCAiQWRkZWQgU3R5
bGVTaGVldCBzaG91bGQgYmUgZGlmZmVyZW50IGZyb20gdGhlIGxhc3QgYWRkZWQgc3R5bGVzaGVl
dC4iKTsKICAgICAgICAgICAgICAgICAgICAgYWRkZWRTdHlsZVNoZWV0ID0gZXZlbnQuZGF0YS5z
dHlsZVNoZWV0OwotICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7Ci0gICAgICAgICAgICAg
ICAgfSk7CisgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICAgICAudGhlbihyZXNvbHZl
LCByZWplY3QpOworICAgICAgICAgICAgICAgIENTU0FnZW50LmNyZWF0ZVN0eWxlU2hlZXQobWFp
bkZyYW1lLmlkKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfSk7CiAgICAgfQogCi0gICAgV2Vi
SW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNw
ZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1vdmVkLCBmdW5jdGlvbihl
dmVudCkgewotICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydChmYWxzZSwgIlNob3VsZCBub3Qg
YmUgcmVtb3ZpbmcgYW55IFN0eWxlU2hlZXRzIGluIHRoaXMgdGVzdC4iKTsKKyAgICBXZWJJbnNw
ZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFu
YWdlci5FdmVudC5TdHlsZVNoZWV0UmVtb3ZlZCkKKyAgICAudGhlbigoZXZlbnQpID0+IHsKKyAg
ICAgICAgSW5zcGVjdG9yVGVzdC5mYWlsKCJTaG91bGQgbm90IGJlIHJlbW92aW5nIGFueSBTdHls
ZVNoZWV0cyBpbiB0aGlzIHRlc3QuIik7CiAgICAgfSk7CiAKICAgICBzdWl0ZS5ydW5UZXN0Q2Fz
ZXNBbmRGaW5pc2goKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvZ2Vu
ZXJhdGUtY3NzLXJ1bGUtc3RyaW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL2dl
bmVyYXRlLWNzcy1ydWxlLXN0cmluZy5odG1sCmluZGV4IDI3MmEwMWQwNDZjNDA0ODNlZTEwMTk3
YTZkN2VkYTI1NjYzYjFmOGEuLjY4YjRlNTFhZWNlY2ZkY2NiNzgyOTAyYzA4ODY1OWI2MzljOGMy
NDYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvZ2VuZXJhdGUtY3NzLXJ1
bGUtc3RyaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9nZW5lcmF0ZS1j
c3MtcnVsZS1zdHJpbmcuaHRtbApAQCAtMjMsNyArMjMsNyBAQCBmdW5jdGlvbiB0ZXN0KCkgewog
ICAgICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgICAgICBuYW1lOiAiSW5saW5lU3R5
bGVTdHJpbmciLAogICAgICAgICAgICAgZGVzY3JpcHRpb246ICJDaGVjayB0aGUgZm9ybWF0dGlu
ZyBvZiB0aGUgZ2VuZXJhdGVkIGlubGluZSBzdHlsZSBzdHJpbmcuIiwKLSAgICAgICAgICAgIHRl
c3Q6IChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVq
ZWN0KSB7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5sb2cobm9kZVN0eWxlcy5pbmxp
bmVTdHlsZS5nZW5lcmF0ZUNTU1J1bGVTdHJpbmcoKSk7CiAgICAgICAgICAgICAgICAgcmVzb2x2
ZSgpOwogICAgICAgICAgICAgfQpAQCAtMzQsNyArMzQsNyBAQCBmdW5jdGlvbiB0ZXN0KCkgewog
ICAgICAgICAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICAgICAgICAgIG5hbWU6ICJD
U1NSdWxlU3RyaW5nIiArIGksCiAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICJDaGVjayB0
aGUgZm9ybWF0dGluZyBvZiB0aGUgZ2VuZXJhdGVkIHN0cmluZyBmb3IgdGhlIG1hdGNoZWQgQ1NT
IHJ1bGUuIiwKLSAgICAgICAgICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Cisg
ICAgICAgICAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5sb2cocnVsZS5zdHlsZS5nZW5lcmF0ZUNTU1J1bGVTdHJpbmcoKSk7
CiAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKICAgICAgICAgICAgICAgICB9CkBAIC00
NCwxOSArNDQsMjEgQEAgZnVuY3Rpb24gdGVzdCgpIHsKICAgICAgICAgc3VpdGUucnVuVGVzdENh
c2VzQW5kRmluaXNoKCk7CiAgICAgfQogCi0gICAgV2ViSW5zcGVjdG9yLmRvbVRyZWVNYW5hZ2Vy
LnJlcXVlc3REb2N1bWVudChmdW5jdGlvbihkb2N1bWVudE5vZGUpIHsKLSAgICAgICAgV2ViSW5z
cGVjdG9yLmRvbVRyZWVNYW5hZ2VyLnF1ZXJ5U2VsZWN0b3IoZG9jdW1lbnROb2RlLmlkLCAiI3Rl
c3Qtbm9kZSIsIGZ1bmN0aW9uKGNvbnRlbnROb2RlSWQpIHsKLSAgICAgICAgICAgIGlmIChjb250
ZW50Tm9kZUlkKSB7Ci0gICAgICAgICAgICAgICAgbGV0IGRvbU5vZGUgPSBXZWJJbnNwZWN0b3Iu
ZG9tVHJlZU1hbmFnZXIubm9kZUZvcklkKGNvbnRlbnROb2RlSWQpOwotICAgICAgICAgICAgICAg
IG5vZGVTdHlsZXMgPSBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxlc0Zvck5vZGUo
ZG9tTm9kZSk7Ci0gICAgICAgICAgICAgICAgaWYgKG5vZGVTdHlsZXMubmVlZHNSZWZyZXNoKQot
ICAgICAgICAgICAgICAgICAgICBub2RlU3R5bGVzLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdl
Ykluc3BlY3Rvci5ET01Ob2RlU3R5bGVzLkV2ZW50LlJlZnJlc2hlZCwgdmFsaWRhdGVTZWxlY3Rv
cnMsIHRoaXMpOwotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgdmFs
aWRhdGVTZWxlY3RvcnMoKTsKLSAgICAgICAgICAgIH0gZWxzZSB7CisgICAgV2ViSW5zcGVjdG9y
LmRvbVRyZWVNYW5hZ2VyLnJlcXVlc3REb2N1bWVudCgoZG9jdW1lbnROb2RlKSA9PiB7CisgICAg
ICAgIFdlYkluc3BlY3Rvci5kb21UcmVlTWFuYWdlci5xdWVyeVNlbGVjdG9yKGRvY3VtZW50Tm9k
ZS5pZCwgIiN0ZXN0LW5vZGUiLCAoY29udGVudE5vZGVJZCkgPT4geworICAgICAgICAgICAgaWYg
KCFjb250ZW50Tm9kZUlkKSB7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5sb2coIkRP
TSBub2RlIG5vdCBmb3VuZC4iKTsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmNvbXBs
ZXRlVGVzdCgpOworICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgbGV0IGRvbU5vZGUgPSBXZWJJbnNwZWN0b3IuZG9tVHJlZU1hbmFnZXIubm9kZUZv
cklkKGNvbnRlbnROb2RlSWQpOworICAgICAgICAgICAgbm9kZVN0eWxlcyA9IFdlYkluc3BlY3Rv
ci5jc3NTdHlsZU1hbmFnZXIuc3R5bGVzRm9yTm9kZShkb21Ob2RlKTsKKyAgICAgICAgICAgIGlm
IChub2RlU3R5bGVzLm5lZWRzUmVmcmVzaCkgeworICAgICAgICAgICAgICAgIG5vZGVTdHlsZXMu
YXdhaXRFdmVudChXZWJJbnNwZWN0b3IuRE9NTm9kZVN0eWxlcy5FdmVudC5SZWZyZXNoZWQpCisg
ICAgICAgICAgICAgICAgLnRoZW4odmFsaWRhdGVTZWxlY3RvcnMpOworICAgICAgICAgICAgfSBl
bHNlCisgICAgICAgICAgICAgICAgdmFsaWRhdGVTZWxlY3RvcnMoKTsKICAgICAgICAgfSk7CiAg
ICAgfSk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL21hbmFnZXIt
cHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVldEZvckZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2luc3BlY3Rvci9jc3MvbWFuYWdlci1wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0
Rm9yRnJhbWUtZXhwZWN0ZWQudHh0CmluZGV4IDFlMDAwZDI5NjY5ZjM2YTRjZTUzOGJlOTNmYThk
NTZiZmI4ODA3YmYuLjQ0MzhkY2YwMmJjNTAyMDAwYjUwOTFmNmNiMTJjOTgyYWVhMzkzNmIgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvbWFuYWdlci1wcmVmZXJyZWRJbnNw
ZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9jc3MvbWFuYWdlci1wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUt
ZXhwZWN0ZWQudHh0CkBAIC03LDEyICs3LDEyIEBAIFRlc3QgQ1NTTWFuYWdlci5wcmVmZXJyZWRJ
bnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUuCiBQQVNTOiBTaG91bGQgYmUgbm8gc3R5bGVzaGVl
dHMuCiAKIC0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBDcmVhdGVNYWluRnJhbWVJbnNwZWN0b3JTdHls
ZVNoZWV0Ci1QQVNTOiBBZGRlZCBTdHlsZVNoZWV0IG9yaWdpbiBzaG91bGQgYmUgJ2luc3BlY3Rv
cicuCi1QQVNTOiBTdHlsZVNoZWV0LmlzSW5zcGVjdG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0
cnVlLgotUEFTUzogQWRkZWQgU3R5bGVTaGVldCBmcmFtZSBzaG91bGQgYmUgdGhlIG1haW4gZnJh
bWUuCiBQQVNTOiBTaG91bGQgYmUgb25lIHN0eWxlc2hlZXQuCiBQQVNTOiBTdHlsZVNoZWV0IG9y
aWdpbiBpcyBpbnNwZWN0b3IuCiBQQVNTOiBTdHlsZVNoZWV0LmlzSW5zcGVjdG9yU3R5bGVTaGVl
dCgpIHNob3VsZCBiZSB0cnVlLgorUEFTUzogQWRkZWQgU3R5bGVTaGVldCBvcmlnaW4gc2hvdWxk
IGJlICdpbnNwZWN0b3InLgorUEFTUzogU3R5bGVTaGVldC5pc0luc3BlY3RvclN0eWxlU2hlZXQo
KSBzaG91bGQgYmUgdHJ1ZS4KK1BBU1M6IEFkZGVkIFN0eWxlU2hlZXQgZnJhbWUgc2hvdWxkIGJl
IHRoZSBtYWluIGZyYW1lLgogCiAtLSBSdW5uaW5nIHRlc3QgY2FzZTogQW5vdGhlck1haW5GcmFt
ZVJlcXVlc3REb2VzTm90aGluZwogUEFTUzogU2hvdWxkIHN0aWxsIGJlIG9uZSBzdHlsZXNoZWV0
LgpAQCAtMjAsMTIgKzIwLDEyIEBAIFBBU1M6IFN0eWxlU2hlZXQgb3JpZ2luIHNob3VsZCBiZSAn
aW5zcGVjdG9yJy4KIFBBU1M6IFN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCkgc2hv
dWxkIGJlIHRydWUuCiAKIC0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBDcmVhdGVTdWJGcmFtZUluc3Bl
Y3RvclN0eWxlU2hlZXQKLVBBU1M6IEFkZGVkIFN0eWxlU2hlZXQgb3JpZ2luIHNob3VsZCBiZSAn
aW5zcGVjdG9yJy4KLVBBU1M6IFN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCkgc2hv
dWxkIGJlIHRydWUuCi1QQVNTOiBBZGRlZCBTdHlsZVNoZWV0IGZyYW1lIHNob3VsZCBiZSBhIGNo
aWxkIGZyYW1lLgogUEFTUzogU2hvdWxkIGJlIHR3byBzdHlsZXNoZWV0cy4KIFBBU1M6IFN0eWxl
U2hlZXQgb3JpZ2luIHNob3VsZCBiZSAnaW5zcGVjdG9yJy4KIFBBU1M6IFN0eWxlU2hlZXQuaXNJ
bnNwZWN0b3JTdHlsZVNoZWV0KCkgc2hvdWxkIGJlIHRydWUuCitQQVNTOiBBZGRlZCBTdHlsZVNo
ZWV0IG9yaWdpbiBzaG91bGQgYmUgJ2luc3BlY3RvcicuCitQQVNTOiBTdHlsZVNoZWV0LmlzSW5z
cGVjdG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0cnVlLgorUEFTUzogQWRkZWQgU3R5bGVTaGVl
dCBmcmFtZSBzaG91bGQgYmUgYSBjaGlsZCBmcmFtZS4KIAogLS0gUnVubmluZyB0ZXN0IGNhc2U6
IEFub3RoZXJTdWJGcmFtZVJlcXVlc3REb2VzTm90aGluZwogUEFTUzogU2hvdWxkIGJlIHR3byBz
dHlsZXNoZWV0cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3MvbWFuYWdl
ci1wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUuaHRtbCBiL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9jc3MvbWFuYWdlci1wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJh
bWUuaHRtbAppbmRleCA0YTA5ZThmMGI1ZTU0MjMxOWRlZjU2YjcxMzM0NzE1NDcwODBhZWUyLi40
OGZjNDgxMDk1OGY3OTRmYzMwNDI1Njc1YjIzZjY5NjgwZDY1N2U1IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvY3NzL21hbmFnZXItcHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVl
dEZvckZyYW1lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9tYW5hZ2VyLXBy
ZWZlcnJlZEluc3BlY3RvclN0eWxlU2hlZXRGb3JGcmFtZS5odG1sCkBAIC0xMyw3ICsxMyw3IEBA
IGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTog
IkNoZWNrTm9TdHlsZVNoZWV0cyIsCiAgICAgICAgIGRlc2NyaXB0aW9uOiAiRW5zdXJlIHRoZXJl
IGFyZSBubyBzdHlsZXNoZWV0cy4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9
PiB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV4cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zdHlsZVNoZWV0
cy5sZW5ndGggPT09IDAsICJTaG91bGQgYmUgbm8gc3R5bGVzaGVldHMuIik7CiAgICAgICAgICAg
ICByZXNvbHZlKCk7CiAgICAgICAgIH0KQEAgLTIyLDEzICsyMiwxNSBAQCBmdW5jdGlvbiB0ZXN0
KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5hbWU6ICJDcmVhdGVNYWluRnJh
bWVJbnNwZWN0b3JTdHlsZVNoZWV0IiwKICAgICAgICAgZGVzY3JpcHRpb246ICJGaXJzdCByZXF1
ZXN0IGZvciBtYWluIGZyYW1lIHNob3VsZCBjcmVhdGUgaW5zcGVjdG9yIHN0eWxlc2hlZXQuIiwK
LSAgICAgICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICAgICAgV2ViSW5z
cGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0
b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCwgZnVuY3Rpb24oZXZlbnQp
IHsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAgIFdlYkluc3Bl
Y3Rvci5jc3NTdHlsZU1hbmFnZXIuYXdhaXRFdmVudChXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5h
Z2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCkKKyAgICAgICAgICAgIC50aGVuKChldmVudCkgPT4g
ewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChldmVudC5kYXRhLnN0
eWxlU2hlZXQub3JpZ2luID09PSBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldC5UeXBlLkluc3Bl
Y3RvciwgIkFkZGVkIFN0eWxlU2hlZXQgb3JpZ2luIHNob3VsZCBiZSAnaW5zcGVjdG9yJy4iKTsK
ICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoZXZlbnQuZGF0YS5zdHls
ZVNoZWV0LmlzSW5zcGVjdG9yU3R5bGVTaGVldCgpLCAiU3R5bGVTaGVldC5pc0luc3BlY3RvclN0
eWxlU2hlZXQoKSBzaG91bGQgYmUgdHJ1ZS4iKTsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JU
ZXN0LmV4cGVjdFRoYXQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0LnBhcmVudEZyYW1lID09PSBtYWlu
RnJhbWUsICJBZGRlZCBTdHlsZVNoZWV0IGZyYW1lIHNob3VsZCBiZSB0aGUgbWFpbiBmcmFtZS4i
KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFu
YWdlci5wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUobWFpbkZyYW1lLCBmdW5j
dGlvbihzdHlsZVNoZWV0KSB7CisKKyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1h
bmFnZXIucHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVldEZvckZyYW1lKG1haW5GcmFtZSwgKHN0
eWxlU2hlZXQpID0+IHsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQo
V2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zdHlsZVNoZWV0cy5sZW5ndGggPT09IDEsICJT
aG91bGQgYmUgb25lIHN0eWxlc2hlZXQuIik7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5leHBlY3RUaGF0KHN0eWxlU2hlZXQub3JpZ2luID09PSBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVT
aGVldC5UeXBlLkluc3BlY3RvciwgIlN0eWxlU2hlZXQgb3JpZ2luIGlzIGluc3BlY3Rvci4iKTsK
ICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoc3R5bGVTaGVldC5pc0lu
c3BlY3RvclN0eWxlU2hlZXQoKSwgIlN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCkg
c2hvdWxkIGJlIHRydWUuIik7CkBAIC00MCwxMSArNDIsMTEgQEAgZnVuY3Rpb24gdGVzdCgpCiAg
ICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1lOiAiQW5vdGhlck1haW5GcmFtZVJl
cXVlc3REb2VzTm90aGluZyIsCiAgICAgICAgIGRlc2NyaXB0aW9uOiAiU2Vjb25kIHJlcXVlc3Qg
Zm9yIG1haW4gZnJhbWUgc2hvdWxkIG5vdCBjcmVhdGUgYSBuZXcgc3R5bGVzaGVldC4iLAotICAg
ICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBsZXQgbGlzdGVu
ZXIgPSBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVy
KFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldEFkZGVkLCBmdW5j
dGlvbihldmVudCkgeworICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAg
ICAgbGV0IGxpc3RlbmVyID0gV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJl
RXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hl
ZXRBZGRlZCwgKGV2ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3Nl
cnQoZmFsc2UsICJTaG91bGQgbm90IGNyZWF0ZSBhIG5ldyBTdHlsZVNoZWV0LCBzaG91bGQgcmV1
c2UgdGhlIGV4aXN0aW5nIG9uZSIpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICBXZWJJ
bnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnByZWZlcnJlZEluc3BlY3RvclN0eWxlU2hlZXRGb3JG
cmFtZShtYWluRnJhbWUsIGZ1bmN0aW9uKHN0eWxlU2hlZXQpIHsKKyAgICAgICAgICAgIFdlYklu
c3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIucHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVldEZvckZy
YW1lKG1haW5GcmFtZSwgKHN0eWxlU2hlZXQpID0+IHsKICAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV4cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zdHlsZVNoZWV0
cy5sZW5ndGggPT09IDEsICJTaG91bGQgc3RpbGwgYmUgb25lIHN0eWxlc2hlZXQuIik7CiAgICAg
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KHN0eWxlU2hlZXQub3JpZ2luID09
PSBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldC5UeXBlLkluc3BlY3RvciwgIlN0eWxlU2hlZXQg
b3JpZ2luIHNob3VsZCBiZSAnaW5zcGVjdG9yJy4iKTsKICAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV4cGVjdFRoYXQoc3R5bGVTaGVldC5pc0luc3BlY3RvclN0eWxlU2hlZXQoKSwgIlN0
eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCkgc2hvdWxkIGJlIHRydWUuIik7CkBAIC01
NywxMyArNTksMTUgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2Uoewog
ICAgICAgICBuYW1lOiAiQ3JlYXRlU3ViRnJhbWVJbnNwZWN0b3JTdHlsZVNoZWV0IiwKICAgICAg
ICAgZGVzY3JpcHRpb246ICJGaXJzdCByZXF1ZXN0IGZvciBzdWJmcmFtZSBzaG91bGQgY3JlYXRl
IGluc3BlY3RvciBzdHlsZXNoZWV0LiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3Qp
ID0+IHsKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc2luZ2xlRmly
ZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNo
ZWV0QWRkZWQsIGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0
KSB7CisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLmF3YWl0RXZlbnQo
V2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0QWRkZWQpCisgICAg
ICAgICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0
LmV4cGVjdFRoYXQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0Lm9yaWdpbiA9PT0gV2ViSW5zcGVjdG9y
LkNTU1N0eWxlU2hlZXQuVHlwZS5JbnNwZWN0b3IsICJBZGRlZCBTdHlsZVNoZWV0IG9yaWdpbiBz
aG91bGQgYmUgJ2luc3BlY3RvcicuIik7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5l
eHBlY3RUaGF0KGV2ZW50LmRhdGEuc3R5bGVTaGVldC5pc0luc3BlY3RvclN0eWxlU2hlZXQoKSwg
IlN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCkgc2hvdWxkIGJlIHRydWUuIik7CiAg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KGV2ZW50LmRhdGEuc3R5bGVT
aGVldC5wYXJlbnRGcmFtZSA9PT0gY2hpbGRGcmFtZSwgIkFkZGVkIFN0eWxlU2hlZXQgZnJhbWUg
c2hvdWxkIGJlIGEgY2hpbGQgZnJhbWUuIik7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAg
IFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIucHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVl
dEZvckZyYW1lKGNoaWxkRnJhbWUsIGZ1bmN0aW9uKHN0eWxlU2hlZXQpIHsKKworICAgICAgICAg
ICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNo
ZWV0Rm9yRnJhbWUoY2hpbGRGcmFtZSwgKHN0eWxlU2hlZXQpID0+IHsKICAgICAgICAgICAgICAg
ICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5z
dHlsZVNoZWV0cy5sZW5ndGggPT09IDIsICJTaG91bGQgYmUgdHdvIHN0eWxlc2hlZXRzLiIpOwog
ICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChzdHlsZVNoZWV0Lm9yaWdp
biA9PT0gV2ViSW5zcGVjdG9yLkNTU1N0eWxlU2hlZXQuVHlwZS5JbnNwZWN0b3IsICJTdHlsZVNo
ZWV0IG9yaWdpbiBzaG91bGQgYmUgJ2luc3BlY3RvcicuIik7CiAgICAgICAgICAgICAgICAgSW5z
cGVjdG9yVGVzdC5leHBlY3RUaGF0KHN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCks
ICJTdHlsZVNoZWV0LmlzSW5zcGVjdG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0cnVlLiIpOwpA
QCAtNzUsMTEgKzc5LDExIEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNl
KHsKICAgICAgICAgbmFtZTogIkFub3RoZXJTdWJGcmFtZVJlcXVlc3REb2VzTm90aGluZyIsCiAg
ICAgICAgIGRlc2NyaXB0aW9uOiAiU2Vjb25kIHJlcXVlc3QgZm9yIG1haW4gZnJhbWUgc2hvdWxk
IG5vdCBjcmVhdGUgYSBuZXcgc3R5bGVzaGVldC4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwg
cmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBsZXQgbGlzdGVuZXIgPSBXZWJJbnNwZWN0b3IuY3Nz
U3R5bGVNYW5hZ2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5DU1NTdHls
ZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldEFkZGVkLCBmdW5jdGlvbihldmVudCkgeworICAgICAg
ICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAgbGV0IGxpc3RlbmVyID0gV2Vi
SW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNw
ZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCwgKGV2ZW50KSA9PiB7
CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnQoZmFsc2UsICJTaG91bGQgbm90
IGNyZWF0ZSBhIG5ldyBTdHlsZVNoZWV0LCBzaG91bGQgcmV1c2UgdGhlIGV4aXN0aW5nIG9uZSIp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5h
Z2VyLnByZWZlcnJlZEluc3BlY3RvclN0eWxlU2hlZXRGb3JGcmFtZShjaGlsZEZyYW1lLCBmdW5j
dGlvbihzdHlsZVNoZWV0KSB7CisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5h
Z2VyLnByZWZlcnJlZEluc3BlY3RvclN0eWxlU2hlZXRGb3JGcmFtZShjaGlsZEZyYW1lLCAoc3R5
bGVTaGVldCkgPT4gewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChX
ZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxlU2hlZXRzLmxlbmd0aCA9PT0gMiwgIlNo
b3VsZCBiZSB0d28gc3R5bGVzaGVldHMuIik7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5leHBlY3RUaGF0KHN0eWxlU2hlZXQub3JpZ2luID09PSBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVT
aGVldC5UeXBlLkluc3BlY3RvciwgIlN0eWxlU2hlZXQgb3JpZ2luIHNob3VsZCBiZSAnaW5zcGVj
dG9yJy4iKTsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoc3R5bGVT
aGVldC5pc0luc3BlY3RvclN0eWxlU2hlZXQoKSwgIlN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHls
ZVNoZWV0KCkgc2hvdWxkIGJlIHRydWUuIik7CkBAIC04OSw3ICs5Myw4IEBAIGZ1bmN0aW9uIHRl
c3QoKQogICAgICAgICB9CiAgICAgfSk7CiAKLSAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5h
Z2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIu
RXZlbnQuU3R5bGVTaGVldFJlbW92ZWQsIGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgV2ViSW5zcGVj
dG9yLmNzc1N0eWxlTWFuYWdlci5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFn
ZXIuRXZlbnQuU3R5bGVTaGVldFJlbW92ZWQpCisgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAgICAg
ICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0KGZhbHNlLCAiU2hvdWxkIG5vdCBiZSByZW1vdmluZyBh
bnkgU3R5bGVTaGVldHMgaW4gdGhpcyB0ZXN0LiIpOwogICAgIH0pOwogCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZlbnRzLWJhc2ljLmh0bWwgYi9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZlbnRzLWJhc2ljLmh0bWwKaW5k
ZXggNjM1YjI5ZjdjMzA4NWNiOTZjMWY5MjhhODM2MDFmOGUwNjYxNDMzNy4uYzBhYzRmNjQyNzM3
NmIzMjY1ZjE3MTZhYmM0ZGZmNWJlMjYxNTZmYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2Nzcy9zdHlsZXNoZWV0LWV2ZW50cy1iYXNpYy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVudHMtYmFzaWMuaHRtbApAQCAtNTMsNyArNTMs
NyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5h
bWU6ICJDaGVja05vU3R5bGVTaGVldHMiLAogICAgICAgICBkZXNjcmlwdGlvbjogIkVuc3VyZSB0
aGVyZSBhcmUgY3VycmVudGx5IG5vIHN0eWxlc2hlZXRzLiIsCi0gICAgICAgIHRlc3Q6IChyZXNv
bHZlLCByZWplY3QpID0+IHsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKICAgICAg
ICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5h
Z2VyLnN0eWxlU2hlZXRzLmxlbmd0aCA9PT0gMCwgIlNob3VsZCBiZSBubyBzdHlsZXNoZWV0cy4i
KTsKICAgICAgICAgICAgIHJlc29sdmUoKTsKICAgICAgICAgfQpAQCAtNjYsNDIgKzY2LDQ4IEBA
IGZ1bmN0aW9uIHRlc3QoKQogCiAgICAgICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAg
ICAgIG5hbWU6IGBBZGQke3RpdGxlfWAsCi0gICAgICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVq
ZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZShh
ZGRFeHByZXNzaW9uKTsKLSAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5h
Z2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIu
RXZlbnQuU3R5bGVTaGVldEFkZGVkLCBmdW5jdGlvbihldmVudCkgeworICAgICAgICAgICAgdGVz
dChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5
bGVNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5T
dHlsZVNoZWV0QWRkZWQpCisgICAgICAgICAgICAgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAgICAg
ICAgICAgICAgICAgICAgIGFkZGVkU3R5bGVTaGVldCA9IGV2ZW50LmRhdGEuc3R5bGVTaGVldDsK
ICAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KGFkZGVkU3R5bGVT
aGVldCBpbnN0YW5jZW9mIFdlYkluc3BlY3Rvci5DU1NTdHlsZVNoZWV0LCAiU3R5bGVTaGVldEFk
ZGVkIGV2ZW50IHNob3VsZCBmaXJlLiIpOwogICAgICAgICAgICAgICAgICAgICBpZiAoY2hlY2tT
dHlsZVNoZWV0UmVtb3ZlZENhbGxiYWNrKQogICAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tT
dHlsZVNoZWV0QWRkZWRDYWxsYmFjayhhZGRlZFN0eWxlU2hlZXQpOwotICAgICAgICAgICAgICAg
ICAgICByZXNvbHZlKCk7Ci0gICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgfSkK
KyAgICAgICAgICAgICAgICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZShhZGRFeHByZXNzaW9uKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgfSk7CiAKICAgICAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAg
ICAgICAgbmFtZTogYERpc2FibGUke3RpdGxlfWAsCiAgICAgICAgICAgICBkZXNjcmlwdGlvbjog
IkRpc2FibGUgdGhlIG5ld2x5IGFkZGVkIHN0eWxlc2hlZXQuIiwKLSAgICAgICAgICAgIHRlc3Q6
IChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2
YWx1YXRlSW5QYWdlKCJkaXNhYmxlU3R5bGVTaGVldCgpIik7Ci0gICAgICAgICAgICAgICAgV2Vi
SW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNw
ZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1vdmVkLCBmdW5jdGlvbihl
dmVudCkgeworICAgICAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAg
ICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9y
LkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0UmVtb3ZlZCkKKyAgICAgICAgICAgICAg
ICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5h
c3NlcnQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0IGluc3RhbmNlb2YgV2ViSW5zcGVjdG9yLkNTU1N0
eWxlU2hlZXQsICJFdmVudCBkYXRhIHNob3VsZCBiZSBhIENTU1N0eWxlU2hlZXQiKTsKICAgICAg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KGFkZGVkU3R5bGVTaGVldCA9
PT0gZXZlbnQuZGF0YS5zdHlsZVNoZWV0LCAiU3R5bGVTaGVldFJlbW92ZWQgZXZlbnQgc2hvdWxk
IGZpcmUgZm9yIHRoZSBzYW1lIENTU1N0eWxlU2hlZXQuIik7Ci0gICAgICAgICAgICAgICAgICAg
IHJlc29sdmUoKTsKLSAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICB9KQorICAg
ICAgICAgICAgICAgIC50aGVuKHJlc29sdmUsIHJlamVjdCk7CisKKyAgICAgICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJkaXNhYmxlU3R5bGVTaGVldCgpIik7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0pOwogCiAgICAgICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAg
ICAgICAgICAgIG5hbWU6IGBFbmFibGUke3RpdGxlfWAsCiAgICAgICAgICAgICBkZXNjcmlwdGlv
bjogIkVuYWJsZSB0aGUganVzdCBkaXNhYmxlZCBzdHlsZXNoZWV0LiIsCi0gICAgICAgICAgICB0
ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5ldmFsdWF0ZUluUGFnZSgiZW5hYmxlU3R5bGVTaGVldCgpIik7Ci0gICAgICAgICAgICAgICAg
V2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJ
bnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCwgZnVuY3Rpb24o
ZXZlbnQpIHsKKyAgICAgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAg
ICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5hd2FpdEV2ZW50KFdlYkluc3BlY3Rv
ci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldEFkZGVkKQorICAgICAgICAgICAgICAg
IC50aGVuKChldmVudCkgPT4gewogICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFz
c2VydChldmVudC5kYXRhLnN0eWxlU2hlZXQgaW5zdGFuY2VvZiBXZWJJbnNwZWN0b3IuQ1NTU3R5
bGVTaGVldCwgIkV2ZW50IGRhdGEgc2hvdWxkIGJlIGEgQ1NTU3R5bGVTaGVldCIpOwogICAgICAg
ICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoYWRkZWRTdHlsZVNoZWV0ICE9
PSBldmVudC5kYXRhLnN0eWxlU2hlZXQsICJTdHlsZVNoZWV0QWRkZWQgZXZlbnQgc2hvdWxkIGZp
cmUgd2l0aCBhIG5ldyBDU1NTdHlsZVNoZWV0LiIpOwogICAgICAgICAgICAgICAgICAgICBhZGRl
ZFN0eWxlU2hlZXQgPSBldmVudC5kYXRhLnN0eWxlU2hlZXQ7Ci0gICAgICAgICAgICAgICAgICAg
IHJlc29sdmUoKTsKLSAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICB9KQorICAg
ICAgICAgICAgICAgIC50aGVuKHJlc29sdmUsIHJlamVjdCk7CisKKyAgICAgICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJlbmFibGVTdHlsZVNoZWV0KCkiKTsKICAgICAg
ICAgICAgIH0KICAgICAgICAgfSk7CiAKQEAgLTExMSw0MSArMTE3LDQ3IEBAIGZ1bmN0aW9uIHRl
c3QoKQogCiAgICAgICAgICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgICAgICAgICAg
bmFtZTogZXh0cmFEaXNhYmxlVGl0bGUsCi0gICAgICAgICAgICAgICAgdGVzdDogKHJlc29sdmUs
IHJlamVjdCkgPT4gewotICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRl
SW5QYWdlKGV4dHJhRGlzYWJsZUV4cHJlc3Npb24pOwotICAgICAgICAgICAgICAgICAgICBXZWJJ
bnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3Bl
Y3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldFJlbW92ZWQsIGZ1bmN0aW9uKGV2
ZW50KSB7CisgICAgICAgICAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAg
ICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5hd2FpdEV2ZW50KFdlYklu
c3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldFJlbW92ZWQpCisgICAgICAg
ICAgICAgICAgICAgIC50aGVuKChldmVudCkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5hc3NlcnQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0IGluc3RhbmNlb2YgV2Vi
SW5zcGVjdG9yLkNTU1N0eWxlU2hlZXQsICJFdmVudCBkYXRhIHNob3VsZCBiZSBhIENTU1N0eWxl
U2hlZXQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhh
dChhZGRlZFN0eWxlU2hlZXQgPT09IGV2ZW50LmRhdGEuc3R5bGVTaGVldCwgIlN0eWxlU2hlZXRS
ZW1vdmVkIGV2ZW50IHNob3VsZCBmaXJlIGZvciB0aGUgc2FtZSBDU1NTdHlsZVNoZWV0LiIpOwot
ICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgpOwotICAgICAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICAgICAgICAgLnRoZW4ocmVz
b2x2ZSwgcmVqZWN0KTsKKworICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1
YXRlSW5QYWdlKGV4dHJhRGlzYWJsZUV4cHJlc3Npb24pOwogICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgIH0pOwogCiAgICAgICAgICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAg
ICAgICAgICAgbmFtZTogZXh0cmFFbmFibGVUaXRsZSwKLSAgICAgICAgICAgICAgICB0ZXN0OiAo
cmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3Qu
ZXZhbHVhdGVJblBhZ2UoZXh0cmFFbmFibGVFeHByZXNzaW9uKTsKLSAgICAgICAgICAgICAgICAg
ICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihX
ZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCwgZnVuY3Rp
b24oZXZlbnQpIHsKKyAgICAgICAgICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAg
ICAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLmF3YWl0RXZlbnQo
V2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0QWRkZWQpCisgICAg
ICAgICAgICAgICAgICAgIC50aGVuKChldmVudCkgPT4gewogICAgICAgICAgICAgICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5hc3NlcnQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0IGluc3RhbmNlb2Yg
V2ViSW5zcGVjdG9yLkNTU1N0eWxlU2hlZXQsICJFdmVudCBkYXRhIHNob3VsZCBiZSBhIENTU1N0
eWxlU2hlZXQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0
VGhhdChhZGRlZFN0eWxlU2hlZXQgIT09IGV2ZW50LmRhdGEuc3R5bGVTaGVldCwgIlN0eWxlU2hl
ZXRBZGRlZCBldmVudCBzaG91bGQgZmlyZSB3aXRoIGEgbmV3IENTU1N0eWxlU2hlZXQuIik7CiAg
ICAgICAgICAgICAgICAgICAgICAgICBhZGRlZFN0eWxlU2hlZXQgPSBldmVudC5kYXRhLnN0eWxl
U2hlZXQ7Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7Ci0gICAgICAgICAgICAg
ICAgICAgIH0pOworICAgICAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgICAgICAgICAu
dGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRl
c3QuZXZhbHVhdGVJblBhZ2UoZXh0cmFFbmFibGVFeHByZXNzaW9uKTsKICAgICAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfQogCiAgICAgICAgIHN1aXRlLmFkZFRlc3RD
YXNlKHsKICAgICAgICAgICAgIG5hbWU6IGBSZW1vdmUke3RpdGxlfWAsCi0gICAgICAgICAgICB0
ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVz
dC5ldmFsdWF0ZUluUGFnZShyZW1vdmVFeHByZXNzaW9uKTsKLSAgICAgICAgICAgICAgICBXZWJJ
bnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3Bl
Y3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldFJlbW92ZWQsIGZ1bmN0aW9uKGV2
ZW50KSB7CisgICAgICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAg
ICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuYXdhaXRFdmVudChXZWJJbnNwZWN0b3Iu
Q1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1vdmVkKQorICAgICAgICAgICAgICAg
IC50aGVuKChldmVudCkgPT4gewogICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4
cGVjdFRoYXQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0IGluc3RhbmNlb2YgV2ViSW5zcGVjdG9yLkNT
U1N0eWxlU2hlZXQsICJTdHlsZVNoZWV0QWRkZWQgZXZlbnQgc2hvdWxkIGZpcmUuIik7CiAgICAg
ICAgICAgICAgICAgICAgIGlmIChjaGVja1N0eWxlU2hlZXRSZW1vdmVkQ2FsbGJhY2spCiAgICAg
ICAgICAgICAgICAgICAgICAgICBjaGVja1N0eWxlU2hlZXRSZW1vdmVkQ2FsbGJhY2soZXZlbnQu
ZGF0YS5zdHlsZVNoZWV0KTsKICAgICAgICAgICAgICAgICAgICAgYWRkZWRTdHlsZVNoZWV0ID0g
bnVsbDsKLSAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgpOwotICAgICAgICAgICAgICAgIH0p
OworICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgLnRoZW4ocmVzb2x2ZSwgcmVq
ZWN0KTsKKworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UocmVt
b3ZlRXhwcmVzc2lvbik7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0pOwogICAgIH0KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVudHMtaW5zcGVj
dG9yLXN0eWxlc2hlZXQuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3Mvc3R5bGVzaGVl
dC1ldmVudHMtaW5zcGVjdG9yLXN0eWxlc2hlZXQuaHRtbAppbmRleCBmZTY2NDc3NmNlNGM4NDdm
MjZiNmE3YmUxYmM5MDQ5MzVjYmRlNjUxLi5mMzEwNmMzOWRiM2I4YmY2Y2Y3OTQwNDExOTNkZDVj
YTYyNGU5NmU5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hl
ZXQtZXZlbnRzLWluc3BlY3Rvci1zdHlsZXNoZWV0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2Nzcy9zdHlsZXNoZWV0LWV2ZW50cy1pbnNwZWN0b3Itc3R5bGVzaGVldC5odG1sCkBA
IC0xMCw3ICsxMCw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsK
ICAgICAgICAgbmFtZTogIkNoZWNrTm9TdHlsZVNoZWV0cyIsCiAgICAgICAgIGRlc2NyaXB0aW9u
OiAiRW5zdXJlIHRoZXJlIGFyZSBjdXJyZW50bHkgbm8gc3R5bGVzaGVldHMuIiwKLSAgICAgICAg
dGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVj
dCkgewogICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KFdlYkluc3BlY3Rvci5j
c3NTdHlsZU1hbmFnZXIuc3R5bGVTaGVldHMubGVuZ3RoID09PSAwLCAiU2hvdWxkIGJlIG5vIHN0
eWxlc2hlZXRzLiIpOwogICAgICAgICAgICAgcmVzb2x2ZSgpOwogICAgICAgICB9CkBAIC0xOSwx
NCArMTksMTYgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAg
ICAgICBuYW1lOiAiQ3JlYXRlSW5zcGVjdG9yU3R5bGVTaGVldCIsCiAgICAgICAgIGRlc2NyaXB0
aW9uOiAiQ3JlYXRpbmcgYW4gaW5zcGVjdG9yIHN0eWxlc2hlZXQgYWRkcyBhIHN0eWxlc2hlZXQu
IiwKLSAgICAgICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICAgICAgQ1NT
QWdlbnQuY3JlYXRlU3R5bGVTaGVldChXZWJJbnNwZWN0b3IuZnJhbWVSZXNvdXJjZU1hbmFnZXIu
bWFpbkZyYW1lLmlkKTsKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIu
c2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVu
dC5TdHlsZVNoZWV0QWRkZWQsIGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIHRlc3QocmVzb2x2
ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLmF3
YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0QWRk
ZWQpCisgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICBJbnNw
ZWN0b3JUZXN0LmV4cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zdHlsZVNo
ZWV0cy5sZW5ndGggPT09IDEsICJTaG91bGQgYmUgb25lIHN0eWxlc2hlZXQuIik7CiAgICAgICAg
ICAgICAgICAgSW5zcGVjdG9yVGVzdC5hc3NlcnQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0IGluc3Rh
bmNlb2YgV2ViSW5zcGVjdG9yLkNTU1N0eWxlU2hlZXQsICJFdmVudCBkYXRhIHNob3VsZCBiZSBh
IENTU1N0eWxlU2hlZXQiKTsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRo
YXQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0Lm9yaWdpbiA9PT0gV2ViSW5zcGVjdG9yLkNTU1N0eWxl
U2hlZXQuVHlwZS5JbnNwZWN0b3IsICJTdHlsZVNoZWV0IG9yaWdpbiBzaG91bGQgYmUgJ2luc3Bl
Y3RvcicuIik7Ci0gICAgICAgICAgICAgICAgcmVzb2x2ZSgpOwotICAgICAgICAgICAgfSk7Cisg
ICAgICAgICAgICB9KQorICAgICAgICAgICAgLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsKKworICAg
ICAgICAgICAgQ1NTQWdlbnQuY3JlYXRlU3R5bGVTaGVldChXZWJJbnNwZWN0b3IuZnJhbWVSZXNv
dXJjZU1hbmFnZXIubWFpbkZyYW1lLmlkKTsKICAgICAgICAgfQogICAgIH0pOwogCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZlbnRzLW11bHRpcGxl
LWRvY3VtZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9zdHlsZXNoZWV0LWV2
ZW50cy1tdWx0aXBsZS1kb2N1bWVudHMuaHRtbAppbmRleCAwMjBhZTlhOTI2ZjY5OTVkNDJhZWI0
NDQ2N2RkNGE4YWQ3NzBmNzRiLi45YmUzZTc5ODQ0M2U2ZTVjZDhlYzBiOGQwZjRlNmYyNDJjMzc0
M2ZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZl
bnRzLW11bHRpcGxlLWRvY3VtZW50cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9j
c3Mvc3R5bGVzaGVldC1ldmVudHMtbXVsdGlwbGUtZG9jdW1lbnRzLmh0bWwKQEAgLTUsNyArNSw3
IEBACiA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InJlc291cmNlcy9leHRlcm5hbC5jc3Mi
PgogPHNjcmlwdD4KIGZ1bmN0aW9uIGFkZFN1YmZyYW1lKCkgewotICAgIHZhciBpZnJhbWUgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKKyAgICBsZXQgaWZyYW1lID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7CiAgICAgaWZyYW1lLmlkID0gInN1YmZyYW1lIjsK
ICAgICBpZnJhbWUuc3JjID0gInJlc291cmNlcy9zdHlsZXNoZWV0LWV2ZW50cy1zdWJmcmFtZS5o
dG1sIjsKICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlmcmFtZSk7CkBAIC0yMiw4ICsy
Miw4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIH0KIAogICAgIGZ1bmN0aW9uIGxvZ1N0eWxlU2hl
ZXRzKCkgewotICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxlU2hlZXRz
LnNvcnQoKGEsIGIpID0+IGEudXJsLmxvY2FsZUNvbXBhcmUoYi51cmwpKS5mb3JFYWNoKGZ1bmN0
aW9uKHN0eWxlU2hlZXQpIHsKLSAgICAgICAgICAgIHZhciBmcmFtZVN0cmluZyA9IHN0eWxlU2hl
ZXQucGFyZW50RnJhbWUuaWQgPT09IFdlYkluc3BlY3Rvci5mcmFtZVJlc291cmNlTWFuYWdlci5t
YWluRnJhbWUuaWQgPyAiPG1haW5mcmFtZT4iIDogIjxjaGlsZGZyYW1lPiI7CisgICAgICAgIFdl
Ykluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc3R5bGVTaGVldHMuc29ydCgoYSwgYikgPT4gYS51
cmwubG9jYWxlQ29tcGFyZShiLnVybCkpLmZvckVhY2goKHN0eWxlU2hlZXQpID0+IHsKKyAgICAg
ICAgICAgIGxldCBmcmFtZVN0cmluZyA9IHN0eWxlU2hlZXQucGFyZW50RnJhbWUuaWQgPT09IFdl
Ykluc3BlY3Rvci5mcmFtZVJlc291cmNlTWFuYWdlci5tYWluRnJhbWUuaWQgPyAiPG1haW5mcmFt
ZT4iIDogIjxjaGlsZGZyYW1lPiI7CiAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmxvZyhgVVJM
OiAke3Nhbml0aXplVVJMKHN0eWxlU2hlZXQudXJsKX0gJHtmcmFtZVN0cmluZ31gKTsKICAgICAg
ICAgfSk7CiAgICAgfQpAQCAtMzMsNyArMzMsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0
ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5hbWU6ICJDaGVja1N0eWxlU2hlZXRzIiwKICAgICAg
ICAgZGVzY3JpcHRpb246ICJFbnN1cmUgdGhlcmUgaXMgY3VycmVudGx5IG9uZSBzdHlsZXNoZWV0
LiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3QpID0+IHsKKyAgICAgICAgdGVzdChy
ZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChX
ZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxlU2hlZXRzLmxlbmd0aCA9PT0gMSwgIlNo
b3VsZCBiZSBvbmUgc3R5bGVzaGVldHMuIik7CiAgICAgICAgICAgICBsb2dTdHlsZVNoZWV0cygp
OwogICAgICAgICAgICAgcmVzb2x2ZSgpOwpAQCAtNDMsMjggKzQzLDMyIEBAIGZ1bmN0aW9uIHRl
c3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIkNoZWNrU3R5bGVT
aGVldHNBZnRlckFkZGluZ1N1YmZyYW1lIiwKICAgICAgICAgZGVzY3JpcHRpb246ICJFbnN1cmUg
c3ViZnJhbWUgc3R5bGVzaGVldHMgYXJlIGFkZGVkLiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZl
LCByZWplY3QpID0+IHsKLSAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2Uo
ImFkZFN1YmZyYW1lKCkiKTsKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFn
ZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5F
dmVudC5TdHlsZVNoZWV0QWRkZWQsIGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIHRlc3QocmVz
b2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2Vy
LmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0
QWRkZWQpCisgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zdHls
ZVNoZWV0cy5sZW5ndGggPT09IDIsICJTaG91bGQgYmUgdHdvIHN0eWxlc2hlZXRzLiIpOwogICAg
ICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChldmVudC5kYXRhLnN0eWxlU2hl
ZXQucGFyZW50RnJhbWUgIT09IFdlYkluc3BlY3Rvci5mcmFtZVJlc291cmNlTWFuYWdlci5tYWlu
RnJhbWUuaWQsICJOZXcgU3R5bGVTaGVldCBpcyBmb3IgYSBzdWJmcmFtZSIpOwogICAgICAgICAg
ICAgICAgIGxvZ1N0eWxlU2hlZXRzKCk7Ci0gICAgICAgICAgICAgICAgcmVzb2x2ZSgpOwotICAg
ICAgICAgICAgfSk7CisgICAgICAgICAgICB9KQorICAgICAgICAgICAgLnRoZW4ocmVzb2x2ZSwg
cmVqZWN0KTsKKworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgiYWRk
U3ViZnJhbWUoKSIpOwogICAgICAgICB9CiAgICAgfSk7CiAKICAgICBzdWl0ZS5hZGRUZXN0Q2Fz
ZSh7CiAgICAgICAgIG5hbWU6ICJDaGVja1N0eWxlU2hlZXRzQWZ0ZXJSZW1vdmluZ1N1YmZyYW1l
IiwKICAgICAgICAgZGVzY3JpcHRpb246ICJFbnN1cmUgc3ViZnJhbWUgc3R5bGVzaGVldHMgYXJl
IHJlbW92ZWQuIiwKLSAgICAgICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAg
ICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgicmVtb3ZlU3ViZnJhbWUoKSIpOwot
ICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRM
aXN0ZW5lcihXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1v
dmVkLCBmdW5jdGlvbihldmVudCkgeworICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgewor
ICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5hd2FpdEV2ZW50KFdlYklu
c3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldFJlbW92ZWQpCisgICAgICAg
ICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4
cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zdHlsZVNoZWV0cy5sZW5ndGgg
PT09IDEsICJTaG91bGQgYmUgb25lIHN0eWxlc2hlZXQuIik7CiAgICAgICAgICAgICAgICAgSW5z
cGVjdG9yVGVzdC5leHBlY3RUaGF0KGV2ZW50LmRhdGEuc3R5bGVTaGVldC5wYXJlbnRGcmFtZSAh
PT0gV2ViSW5zcGVjdG9yLmZyYW1lUmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZS5pZCwgIlJlbW92
ZWQgU3R5bGVTaGVldCBpcyBmb3IgYSBzdWJmcmFtZSIpOwogICAgICAgICAgICAgICAgIGxvZ1N0
eWxlU2hlZXRzKCk7Ci0gICAgICAgICAgICAgICAgcmVzb2x2ZSgpOwotICAgICAgICAgICAgfSk7
CisgICAgICAgICAgICB9KQorICAgICAgICAgICAgLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsKKwor
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgicmVtb3ZlU3ViZnJhbWUo
KSIpOwogICAgICAgICB9CiAgICAgfSk7CiAK
</data>
<flag name="review"
          id="312376"
          type_id="1"
          status="+"
          setter="bburg"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289273</attachid>
            <date>2016-09-19 16:20:04 -0700</date>
            <delta_ts>2016-09-19 16:53:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>162071.diff</filename>
            <type>text/plain</type>
            <size>28682</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjOTU5YjMyLi42M2JlZGU0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTYtMDkt
MTkgIERldmluIFJvdXNzbyAgPGRjcm91c3NvK3dlYmtpdEBnbWFpbC5jb20+CisKKyAgICAgICAg
V2ViIEluc3BlY3RvcjogYWRvcHQgT2JqZWN0LmF3YWl0RXZlbnQgaW4gTGF5b3V0VGVzdHMvaW5z
cGVjdG9yL2NzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTYyMDcxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJpYW4gQnVyZy4KKworICAgICAgICBS
ZXBsYWNlIGluc3RhbmNlcyBvZiBzaW5nbGVGaXJlRXZlbnRMaXN0ZW5lciB3aXRoIGF3YWl0RXZl
bnQgYW5kIHVzZSBwcm9taXNlIGxvZ2ljIHRvIG1ha2UKKyAgICAgICAgdGVzdHMgbW9yZSByZWFk
YWJsZS4KKworICAgICAgICAqIGluc3BlY3Rvci9jc3MvY3JlYXRlU3R5bGVTaGVldC5odG1sOgor
ICAgICAgICAqIGluc3BlY3Rvci9jc3MvZ2VuZXJhdGUtY3NzLXJ1bGUtc3RyaW5nLmh0bWw6Cisg
ICAgICAgICogaW5zcGVjdG9yL2Nzcy9tYW5hZ2VyLXByZWZlcnJlZEluc3BlY3RvclN0eWxlU2hl
ZXRGb3JGcmFtZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL2Nzcy9tYW5hZ2Vy
LXByZWZlcnJlZEluc3BlY3RvclN0eWxlU2hlZXRGb3JGcmFtZS5odG1sOgorICAgICAgICAqIGlu
c3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVudHMtYmFzaWMuaHRtbDoKKyAgICAgICAgKiBpbnNw
ZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZlbnRzLWluc3BlY3Rvci1zdHlsZXNoZWV0Lmh0bWw6Cisg
ICAgICAgICogaW5zcGVjdG9yL2Nzcy9zdHlsZXNoZWV0LWV2ZW50cy1tdWx0aXBsZS1kb2N1bWVu
dHMuaHRtbDoKKwogMjAxNi0wOS0xNiAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4K
IAogICAgICAgICBVbnJldmlld2VkIGdhcmRlbmluZzsgZW5hYmxlIG5ld2x5IHBhc3NpbmcgbWVk
aWEvbWVkaWEtc291cmNlLyB0ZXN0cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rv
ci9jc3MvY3JlYXRlU3R5bGVTaGVldC5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9j
cmVhdGVTdHlsZVNoZWV0Lmh0bWwKaW5kZXggMjBiYTcwOS4uMmQ0MmE3YyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9jcmVhdGVTdHlsZVNoZWV0Lmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9jcmVhdGVTdHlsZVNoZWV0Lmh0bWwKQEAgLTEzLDcgKzEz
LDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBu
YW1lOiAiQ2hlY2tOb1N0eWxlU2hlZXRzIiwKICAgICAgICAgZGVzY3JpcHRpb246ICJFbnN1cmUg
dGhlcmUgYXJlIG5vIHN0eWxlc2hlZXRzLiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWpl
Y3QpID0+IHsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgICAgIElu
c3BlY3RvclRlc3QuZXhwZWN0VGhhdChXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxl
U2hlZXRzLmxlbmd0aCA9PT0gMCwgIlNob3VsZCBiZSBubyBzdHlsZXNoZWV0cy4iKTsKICAgICAg
ICAgICAgIHJlc29sdmUoKTsKICAgICAgICAgfQpAQCAtMjMsOSArMjMsOSBAQCBmdW5jdGlvbiB0
ZXN0KCkKICAgICAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICAgICAgbmFtZTogIkNy
ZWF0ZUluc3BlY3RvclN0eWxlU2hlZXRDYWxsIiArIGksCiAgICAgICAgICAgICBkZXNjcmlwdGlv
bjogIlNob3VsZCBjcmVhdGUgYSBuZXcgaW5zcGVjdG9yIHN0eWxlc2hlZXQuIiwKLSAgICAgICAg
ICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAgICAgICAgICAgICBDU1NBZ2Vu
dC5jcmVhdGVTdHlsZVNoZWV0KG1haW5GcmFtZS5pZCk7Ci0gICAgICAgICAgICAgICAgV2ViSW5z
cGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0
b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCwgZnVuY3Rpb24oZXZlbnQp
IHsKKyAgICAgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICAgICAg
V2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5DU1NT
dHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldEFkZGVkKQorICAgICAgICAgICAgICAgIC50aGVu
KChldmVudCkgPT4gewogICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRo
YXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zdHlsZVNoZWV0cy5sZW5ndGggPT09IGks
ICJTaG91bGQgaW5jcmVhc2UgdGhlIGxpc3Qgb2Ygc3R5bGVzaGVldHMuIik7CiAgICAgICAgICAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChldmVudC5kYXRhLnN0eWxlU2hlZXQu
b3JpZ2luID09PSBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldC5UeXBlLkluc3BlY3RvciwgIkFk
ZGVkIFN0eWxlU2hlZXQgb3JpZ2luIHNob3VsZCBiZSAnaW5zcGVjdG9yJy4iKTsKICAgICAgICAg
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KGV2ZW50LmRhdGEuc3R5bGVTaGVl
dC5pc0luc3BlY3RvclN0eWxlU2hlZXQoKSwgIlN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNo
ZWV0KCkgc2hvdWxkIGJlIHRydWUuIik7CkBAIC0zMywxNCArMzMsMTcgQEAgZnVuY3Rpb24gdGVz
dCgpCiAgICAgICAgICAgICAgICAgICAgIGlmIChhZGRlZFN0eWxlU2hlZXQpCiAgICAgICAgICAg
ICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoZXZlbnQuZGF0YS5zdHlsZVNo
ZWV0ICE9PSBhZGRlZFN0eWxlU2hlZXQsICJBZGRlZCBTdHlsZVNoZWV0IHNob3VsZCBiZSBkaWZm
ZXJlbnQgZnJvbSB0aGUgbGFzdCBhZGRlZCBzdHlsZXNoZWV0LiIpOwogICAgICAgICAgICAgICAg
ICAgICBhZGRlZFN0eWxlU2hlZXQgPSBldmVudC5kYXRhLnN0eWxlU2hlZXQ7Ci0gICAgICAgICAg
ICAgICAgICAgIHJlc29sdmUoKTsKLSAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAg
ICB9KQorICAgICAgICAgICAgICAgIC50aGVuKHJlc29sdmUsIHJlamVjdCk7CisKKyAgICAgICAg
ICAgICAgICBDU1NBZ2VudC5jcmVhdGVTdHlsZVNoZWV0KG1haW5GcmFtZS5pZCk7CiAgICAgICAg
ICAgICB9CiAgICAgICAgIH0pOwogICAgIH0KIAotICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1h
bmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdl
ci5FdmVudC5TdHlsZVNoZWV0UmVtb3ZlZCwgZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgSW5z
cGVjdG9yVGVzdC5hc3NlcnQoZmFsc2UsICJTaG91bGQgbm90IGJlIHJlbW92aW5nIGFueSBTdHls
ZVNoZWV0cyBpbiB0aGlzIHRlc3QuIik7CisgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdl
ci5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVl
dFJlbW92ZWQpCisgICAgLnRoZW4oKGV2ZW50KSA9PiB7CisgICAgICAgIEluc3BlY3RvclRlc3Qu
ZmFpbCgiU2hvdWxkIG5vdCBiZSByZW1vdmluZyBhbnkgU3R5bGVTaGVldHMgaW4gdGhpcyB0ZXN0
LiIpOwogICAgIH0pOwogCiAgICAgc3VpdGUucnVuVGVzdENhc2VzQW5kRmluaXNoKCk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL2dlbmVyYXRlLWNzcy1ydWxlLXN0cmlu
Zy5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9nZW5lcmF0ZS1jc3MtcnVsZS1zdHJp
bmcuaHRtbAppbmRleCAyNzJhMDFkLi42OGI0ZTUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvY3NzL2dlbmVyYXRlLWNzcy1ydWxlLXN0cmluZy5odG1sCisrKyBiL0xheW91dFRl
c3RzL2luc3BlY3Rvci9jc3MvZ2VuZXJhdGUtY3NzLXJ1bGUtc3RyaW5nLmh0bWwKQEAgLTIzLDcg
KzIzLDcgQEAgZnVuY3Rpb24gdGVzdCgpIHsKICAgICAgICAgc3VpdGUuYWRkVGVzdENhc2Uoewog
ICAgICAgICAgICAgbmFtZTogIklubGluZVN0eWxlU3RyaW5nIiwKICAgICAgICAgICAgIGRlc2Ny
aXB0aW9uOiAiQ2hlY2sgdGhlIGZvcm1hdHRpbmcgb2YgdGhlIGdlbmVyYXRlZCBpbmxpbmUgc3R5
bGUgc3RyaW5nLiIsCi0gICAgICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Cisg
ICAgICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgICAgICAgIEluc3Bl
Y3RvclRlc3QubG9nKG5vZGVTdHlsZXMuaW5saW5lU3R5bGUuZ2VuZXJhdGVDU1NSdWxlU3RyaW5n
KCkpOwogICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKICAgICAgICAgICAgIH0KQEAgLTM0LDcg
KzM0LDcgQEAgZnVuY3Rpb24gdGVzdCgpIHsKICAgICAgICAgICAgIHN1aXRlLmFkZFRlc3RDYXNl
KHsKICAgICAgICAgICAgICAgICBuYW1lOiAiQ1NTUnVsZVN0cmluZyIgKyBpLAogICAgICAgICAg
ICAgICAgIGRlc2NyaXB0aW9uOiAiQ2hlY2sgdGhlIGZvcm1hdHRpbmcgb2YgdGhlIGdlbmVyYXRl
ZCBzdHJpbmcgZm9yIHRoZSBtYXRjaGVkIENTUyBydWxlLiIsCi0gICAgICAgICAgICAgICAgdGVz
dDogKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICAgICAgICAgIHRlc3QocmVzb2x2ZSwg
cmVqZWN0KSB7CiAgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QubG9nKHJ1bGUuc3R5
bGUuZ2VuZXJhdGVDU1NSdWxlU3RyaW5nKCkpOwogICAgICAgICAgICAgICAgICAgICByZXNvbHZl
KCk7CiAgICAgICAgICAgICAgICAgfQpAQCAtNDQsMTkgKzQ0LDIxIEBAIGZ1bmN0aW9uIHRlc3Qo
KSB7CiAgICAgICAgIHN1aXRlLnJ1blRlc3RDYXNlc0FuZEZpbmlzaCgpOwogICAgIH0KIAotICAg
IFdlYkluc3BlY3Rvci5kb21UcmVlTWFuYWdlci5yZXF1ZXN0RG9jdW1lbnQoZnVuY3Rpb24oZG9j
dW1lbnROb2RlKSB7Ci0gICAgICAgIFdlYkluc3BlY3Rvci5kb21UcmVlTWFuYWdlci5xdWVyeVNl
bGVjdG9yKGRvY3VtZW50Tm9kZS5pZCwgIiN0ZXN0LW5vZGUiLCBmdW5jdGlvbihjb250ZW50Tm9k
ZUlkKSB7Ci0gICAgICAgICAgICBpZiAoY29udGVudE5vZGVJZCkgewotICAgICAgICAgICAgICAg
IGxldCBkb21Ob2RlID0gV2ViSW5zcGVjdG9yLmRvbVRyZWVNYW5hZ2VyLm5vZGVGb3JJZChjb250
ZW50Tm9kZUlkKTsKLSAgICAgICAgICAgICAgICBub2RlU3R5bGVzID0gV2ViSW5zcGVjdG9yLmNz
c1N0eWxlTWFuYWdlci5zdHlsZXNGb3JOb2RlKGRvbU5vZGUpOwotICAgICAgICAgICAgICAgIGlm
IChub2RlU3R5bGVzLm5lZWRzUmVmcmVzaCkKLSAgICAgICAgICAgICAgICAgICAgbm9kZVN0eWxl
cy5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRE9NTm9kZVN0eWxlcy5FdmVu
dC5SZWZyZXNoZWQsIHZhbGlkYXRlU2VsZWN0b3JzLCB0aGlzKTsKLSAgICAgICAgICAgICAgICBl
bHNlCi0gICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlU2VsZWN0b3JzKCk7Ci0gICAgICAgICAg
ICB9IGVsc2UgeworICAgIFdlYkluc3BlY3Rvci5kb21UcmVlTWFuYWdlci5yZXF1ZXN0RG9jdW1l
bnQoKGRvY3VtZW50Tm9kZSkgPT4geworICAgICAgICBXZWJJbnNwZWN0b3IuZG9tVHJlZU1hbmFn
ZXIucXVlcnlTZWxlY3Rvcihkb2N1bWVudE5vZGUuaWQsICIjdGVzdC1ub2RlIiwgKGNvbnRlbnRO
b2RlSWQpID0+IHsKKyAgICAgICAgICAgIGlmICghY29udGVudE5vZGVJZCkgewogICAgICAgICAg
ICAgICAgIEluc3BlY3RvclRlc3QubG9nKCJET00gbm9kZSBub3QgZm91bmQuIik7CiAgICAgICAg
ICAgICAgICAgSW5zcGVjdG9yVGVzdC5jb21wbGV0ZVRlc3QoKTsKKyAgICAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGxldCBkb21Ob2RlID0gV2ViSW5z
cGVjdG9yLmRvbVRyZWVNYW5hZ2VyLm5vZGVGb3JJZChjb250ZW50Tm9kZUlkKTsKKyAgICAgICAg
ICAgIG5vZGVTdHlsZXMgPSBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxlc0Zvck5v
ZGUoZG9tTm9kZSk7CisgICAgICAgICAgICBpZiAobm9kZVN0eWxlcy5uZWVkc1JlZnJlc2gpIHsK
KyAgICAgICAgICAgICAgICBub2RlU3R5bGVzLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkRPTU5v
ZGVTdHlsZXMuRXZlbnQuUmVmcmVzaGVkKQorICAgICAgICAgICAgICAgIC50aGVuKHZhbGlkYXRl
U2VsZWN0b3JzKTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIHZhbGlkYXRl
U2VsZWN0b3JzKCk7CiAgICAgICAgIH0pOwogICAgIH0pOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL2Nzcy9tYW5hZ2VyLXByZWZlcnJlZEluc3BlY3RvclN0eWxlU2hlZXRG
b3JGcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL21hbmFnZXIt
cHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVldEZvckZyYW1lLWV4cGVjdGVkLnR4dAppbmRleCAx
ZTAwMGQyLi40NDM4ZGNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL21h
bmFnZXItcHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVldEZvckZyYW1lLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL21hbmFnZXItcHJlZmVycmVkSW5zcGVjdG9y
U3R5bGVTaGVldEZvckZyYW1lLWV4cGVjdGVkLnR4dApAQCAtNywxMiArNywxMiBAQCBUZXN0IENT
U01hbmFnZXIucHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVldEZvckZyYW1lLgogUEFTUzogU2hv
dWxkIGJlIG5vIHN0eWxlc2hlZXRzLgogCiAtLSBSdW5uaW5nIHRlc3QgY2FzZTogQ3JlYXRlTWFp
bkZyYW1lSW5zcGVjdG9yU3R5bGVTaGVldAotUEFTUzogQWRkZWQgU3R5bGVTaGVldCBvcmlnaW4g
c2hvdWxkIGJlICdpbnNwZWN0b3InLgotUEFTUzogU3R5bGVTaGVldC5pc0luc3BlY3RvclN0eWxl
U2hlZXQoKSBzaG91bGQgYmUgdHJ1ZS4KLVBBU1M6IEFkZGVkIFN0eWxlU2hlZXQgZnJhbWUgc2hv
dWxkIGJlIHRoZSBtYWluIGZyYW1lLgogUEFTUzogU2hvdWxkIGJlIG9uZSBzdHlsZXNoZWV0Lgog
UEFTUzogU3R5bGVTaGVldCBvcmlnaW4gaXMgaW5zcGVjdG9yLgogUEFTUzogU3R5bGVTaGVldC5p
c0luc3BlY3RvclN0eWxlU2hlZXQoKSBzaG91bGQgYmUgdHJ1ZS4KK1BBU1M6IEFkZGVkIFN0eWxl
U2hlZXQgb3JpZ2luIHNob3VsZCBiZSAnaW5zcGVjdG9yJy4KK1BBU1M6IFN0eWxlU2hlZXQuaXNJ
bnNwZWN0b3JTdHlsZVNoZWV0KCkgc2hvdWxkIGJlIHRydWUuCitQQVNTOiBBZGRlZCBTdHlsZVNo
ZWV0IGZyYW1lIHNob3VsZCBiZSB0aGUgbWFpbiBmcmFtZS4KIAogLS0gUnVubmluZyB0ZXN0IGNh
c2U6IEFub3RoZXJNYWluRnJhbWVSZXF1ZXN0RG9lc05vdGhpbmcKIFBBU1M6IFNob3VsZCBzdGls
bCBiZSBvbmUgc3R5bGVzaGVldC4KQEAgLTIwLDEyICsyMCwxMiBAQCBQQVNTOiBTdHlsZVNoZWV0
IG9yaWdpbiBzaG91bGQgYmUgJ2luc3BlY3RvcicuCiBQQVNTOiBTdHlsZVNoZWV0LmlzSW5zcGVj
dG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0cnVlLgogCiAtLSBSdW5uaW5nIHRlc3QgY2FzZTog
Q3JlYXRlU3ViRnJhbWVJbnNwZWN0b3JTdHlsZVNoZWV0Ci1QQVNTOiBBZGRlZCBTdHlsZVNoZWV0
IG9yaWdpbiBzaG91bGQgYmUgJ2luc3BlY3RvcicuCi1QQVNTOiBTdHlsZVNoZWV0LmlzSW5zcGVj
dG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0cnVlLgotUEFTUzogQWRkZWQgU3R5bGVTaGVldCBm
cmFtZSBzaG91bGQgYmUgYSBjaGlsZCBmcmFtZS4KIFBBU1M6IFNob3VsZCBiZSB0d28gc3R5bGVz
aGVldHMuCiBQQVNTOiBTdHlsZVNoZWV0IG9yaWdpbiBzaG91bGQgYmUgJ2luc3BlY3RvcicuCiBQ
QVNTOiBTdHlsZVNoZWV0LmlzSW5zcGVjdG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0cnVlLgor
UEFTUzogQWRkZWQgU3R5bGVTaGVldCBvcmlnaW4gc2hvdWxkIGJlICdpbnNwZWN0b3InLgorUEFT
UzogU3R5bGVTaGVldC5pc0luc3BlY3RvclN0eWxlU2hlZXQoKSBzaG91bGQgYmUgdHJ1ZS4KK1BB
U1M6IEFkZGVkIFN0eWxlU2hlZXQgZnJhbWUgc2hvdWxkIGJlIGEgY2hpbGQgZnJhbWUuCiAKIC0t
IFJ1bm5pbmcgdGVzdCBjYXNlOiBBbm90aGVyU3ViRnJhbWVSZXF1ZXN0RG9lc05vdGhpbmcKIFBB
U1M6IFNob3VsZCBiZSB0d28gc3R5bGVzaGVldHMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvY3NzL21hbmFnZXItcHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVldEZvckZyYW1l
Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL21hbmFnZXItcHJlZmVycmVkSW5zcGVj
dG9yU3R5bGVTaGVldEZvckZyYW1lLmh0bWwKaW5kZXggNGEwOWU4Zi4uNDhmYzQ4MSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9tYW5hZ2VyLXByZWZlcnJlZEluc3BlY3Rv
clN0eWxlU2hlZXRGb3JGcmFtZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3Mv
bWFuYWdlci1wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUuaHRtbApAQCAtMTMs
NyArMTMsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAg
ICAgIG5hbWU6ICJDaGVja05vU3R5bGVTaGVldHMiLAogICAgICAgICBkZXNjcmlwdGlvbjogIkVu
c3VyZSB0aGVyZSBhcmUgbm8gc3R5bGVzaGVldHMuIiwKLSAgICAgICAgdGVzdDogKHJlc29sdmUs
IHJlamVjdCkgPT4geworICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIu
c3R5bGVTaGVldHMubGVuZ3RoID09PSAwLCAiU2hvdWxkIGJlIG5vIHN0eWxlc2hlZXRzLiIpOwog
ICAgICAgICAgICAgcmVzb2x2ZSgpOwogICAgICAgICB9CkBAIC0yMiwxMyArMjIsMTUgQEAgZnVu
Y3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1lOiAiQ3Jl
YXRlTWFpbkZyYW1lSW5zcGVjdG9yU3R5bGVTaGVldCIsCiAgICAgICAgIGRlc2NyaXB0aW9uOiAi
Rmlyc3QgcmVxdWVzdCBmb3IgbWFpbiBmcmFtZSBzaG91bGQgY3JlYXRlIGluc3BlY3RvciBzdHls
ZXNoZWV0LiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAgICAg
ICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIo
V2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0QWRkZWQsIGZ1bmN0
aW9uKGV2ZW50KSB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAg
ICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkNT
U1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0QWRkZWQpCisgICAgICAgICAgICAudGhlbigo
ZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoZXZl
bnQuZGF0YS5zdHlsZVNoZWV0Lm9yaWdpbiA9PT0gV2ViSW5zcGVjdG9yLkNTU1N0eWxlU2hlZXQu
VHlwZS5JbnNwZWN0b3IsICJBZGRlZCBTdHlsZVNoZWV0IG9yaWdpbiBzaG91bGQgYmUgJ2luc3Bl
Y3RvcicuIik7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KGV2ZW50
LmRhdGEuc3R5bGVTaGVldC5pc0luc3BlY3RvclN0eWxlU2hlZXQoKSwgIlN0eWxlU2hlZXQuaXNJ
bnNwZWN0b3JTdHlsZVNoZWV0KCkgc2hvdWxkIGJlIHRydWUuIik7CiAgICAgICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KGV2ZW50LmRhdGEuc3R5bGVTaGVldC5wYXJlbnRGcmFt
ZSA9PT0gbWFpbkZyYW1lLCAiQWRkZWQgU3R5bGVTaGVldCBmcmFtZSBzaG91bGQgYmUgdGhlIG1h
aW4gZnJhbWUuIik7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5j
c3NTdHlsZU1hbmFnZXIucHJlZmVycmVkSW5zcGVjdG9yU3R5bGVTaGVldEZvckZyYW1lKG1haW5G
cmFtZSwgZnVuY3Rpb24oc3R5bGVTaGVldCkgeworCisgICAgICAgICAgICBXZWJJbnNwZWN0b3Iu
Y3NzU3R5bGVNYW5hZ2VyLnByZWZlcnJlZEluc3BlY3RvclN0eWxlU2hlZXRGb3JGcmFtZShtYWlu
RnJhbWUsIChzdHlsZVNoZWV0KSA9PiB7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5l
eHBlY3RUaGF0KFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc3R5bGVTaGVldHMubGVuZ3Ro
ID09PSAxLCAiU2hvdWxkIGJlIG9uZSBzdHlsZXNoZWV0LiIpOwogICAgICAgICAgICAgICAgIElu
c3BlY3RvclRlc3QuZXhwZWN0VGhhdChzdHlsZVNoZWV0Lm9yaWdpbiA9PT0gV2ViSW5zcGVjdG9y
LkNTU1N0eWxlU2hlZXQuVHlwZS5JbnNwZWN0b3IsICJTdHlsZVNoZWV0IG9yaWdpbiBpcyBpbnNw
ZWN0b3IuIik7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KHN0eWxl
U2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCksICJTdHlsZVNoZWV0LmlzSW5zcGVjdG9yU3R5
bGVTaGVldCgpIHNob3VsZCBiZSB0cnVlLiIpOwpAQCAtNDAsMTEgKzQyLDExIEBAIGZ1bmN0aW9u
IHRlc3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIkFub3RoZXJN
YWluRnJhbWVSZXF1ZXN0RG9lc05vdGhpbmciLAogICAgICAgICBkZXNjcmlwdGlvbjogIlNlY29u
ZCByZXF1ZXN0IGZvciBtYWluIGZyYW1lIHNob3VsZCBub3QgY3JlYXRlIGEgbmV3IHN0eWxlc2hl
ZXQuIiwKLSAgICAgICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICAgICAg
bGV0IGxpc3RlbmVyID0gV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZl
bnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRB
ZGRlZCwgZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsK
KyAgICAgICAgICAgIGxldCBsaXN0ZW5lciA9IFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIu
c2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVu
dC5TdHlsZVNoZWV0QWRkZWQsIChldmVudCkgPT4gewogICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuYXNzZXJ0KGZhbHNlLCAiU2hvdWxkIG5vdCBjcmVhdGUgYSBuZXcgU3R5bGVTaGVldCwg
c2hvdWxkIHJldXNlIHRoZSBleGlzdGluZyBvbmUiKTsKICAgICAgICAgICAgIH0pOwotICAgICAg
ICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5wcmVmZXJyZWRJbnNwZWN0b3JTdHls
ZVNoZWV0Rm9yRnJhbWUobWFpbkZyYW1lLCBmdW5jdGlvbihzdHlsZVNoZWV0KSB7CisgICAgICAg
ICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnByZWZlcnJlZEluc3BlY3RvclN0eWxl
U2hlZXRGb3JGcmFtZShtYWluRnJhbWUsIChzdHlsZVNoZWV0KSA9PiB7CiAgICAgICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIu
c3R5bGVTaGVldHMubGVuZ3RoID09PSAxLCAiU2hvdWxkIHN0aWxsIGJlIG9uZSBzdHlsZXNoZWV0
LiIpOwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChzdHlsZVNoZWV0
Lm9yaWdpbiA9PT0gV2ViSW5zcGVjdG9yLkNTU1N0eWxlU2hlZXQuVHlwZS5JbnNwZWN0b3IsICJT
dHlsZVNoZWV0IG9yaWdpbiBzaG91bGQgYmUgJ2luc3BlY3RvcicuIik7CiAgICAgICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KHN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNo
ZWV0KCksICJTdHlsZVNoZWV0LmlzSW5zcGVjdG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0cnVl
LiIpOwpAQCAtNTcsMTMgKzU5LDE1IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRlLmFkZFRl
c3RDYXNlKHsKICAgICAgICAgbmFtZTogIkNyZWF0ZVN1YkZyYW1lSW5zcGVjdG9yU3R5bGVTaGVl
dCIsCiAgICAgICAgIGRlc2NyaXB0aW9uOiAiRmlyc3QgcmVxdWVzdCBmb3Igc3ViZnJhbWUgc2hv
dWxkIGNyZWF0ZSBpbnNwZWN0b3Igc3R5bGVzaGVldC4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2
ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2Vy
LnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZl
bnQuU3R5bGVTaGVldEFkZGVkLCBmdW5jdGlvbihldmVudCkgeworICAgICAgICB0ZXN0KHJlc29s
dmUsIHJlamVjdCkgeworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5h
d2FpdEV2ZW50KFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldEFk
ZGVkKQorICAgICAgICAgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgSW5z
cGVjdG9yVGVzdC5leHBlY3RUaGF0KGV2ZW50LmRhdGEuc3R5bGVTaGVldC5vcmlnaW4gPT09IFdl
Ykluc3BlY3Rvci5DU1NTdHlsZVNoZWV0LlR5cGUuSW5zcGVjdG9yLCAiQWRkZWQgU3R5bGVTaGVl
dCBvcmlnaW4gc2hvdWxkIGJlICdpbnNwZWN0b3InLiIpOwogICAgICAgICAgICAgICAgIEluc3Bl
Y3RvclRlc3QuZXhwZWN0VGhhdChldmVudC5kYXRhLnN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHls
ZVNoZWV0KCksICJTdHlsZVNoZWV0LmlzSW5zcGVjdG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0
cnVlLiIpOwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChldmVudC5k
YXRhLnN0eWxlU2hlZXQucGFyZW50RnJhbWUgPT09IGNoaWxkRnJhbWUsICJBZGRlZCBTdHlsZVNo
ZWV0IGZyYW1lIHNob3VsZCBiZSBhIGNoaWxkIGZyYW1lLiIpOwogICAgICAgICAgICAgfSk7Ci0g
ICAgICAgICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnByZWZlcnJlZEluc3BlY3Rv
clN0eWxlU2hlZXRGb3JGcmFtZShjaGlsZEZyYW1lLCBmdW5jdGlvbihzdHlsZVNoZWV0KSB7CisK
KyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIucHJlZmVycmVkSW5zcGVj
dG9yU3R5bGVTaGVldEZvckZyYW1lKGNoaWxkRnJhbWUsIChzdHlsZVNoZWV0KSA9PiB7CiAgICAg
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KFdlYkluc3BlY3Rvci5jc3NTdHls
ZU1hbmFnZXIuc3R5bGVTaGVldHMubGVuZ3RoID09PSAyLCAiU2hvdWxkIGJlIHR3byBzdHlsZXNo
ZWV0cy4iKTsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoc3R5bGVT
aGVldC5vcmlnaW4gPT09IFdlYkluc3BlY3Rvci5DU1NTdHlsZVNoZWV0LlR5cGUuSW5zcGVjdG9y
LCAiU3R5bGVTaGVldCBvcmlnaW4gc2hvdWxkIGJlICdpbnNwZWN0b3InLiIpOwogICAgICAgICAg
ICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChzdHlsZVNoZWV0LmlzSW5zcGVjdG9yU3R5
bGVTaGVldCgpLCAiU3R5bGVTaGVldC5pc0luc3BlY3RvclN0eWxlU2hlZXQoKSBzaG91bGQgYmUg
dHJ1ZS4iKTsKQEAgLTc1LDExICs3OSwxMSBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5h
ZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5hbWU6ICJBbm90aGVyU3ViRnJhbWVSZXF1ZXN0RG9lc05v
dGhpbmciLAogICAgICAgICBkZXNjcmlwdGlvbjogIlNlY29uZCByZXF1ZXN0IGZvciBtYWluIGZy
YW1lIHNob3VsZCBub3QgY3JlYXRlIGEgbmV3IHN0eWxlc2hlZXQuIiwKLSAgICAgICAgdGVzdDog
KHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICAgICAgbGV0IGxpc3RlbmVyID0gV2ViSW5z
cGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0
b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCwgZnVuY3Rpb24oZXZlbnQp
IHsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAgIGxldCBsaXN0
ZW5lciA9IFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVu
ZXIoV2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0QWRkZWQsIChl
dmVudCkgPT4gewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0KGZhbHNlLCAi
U2hvdWxkIG5vdCBjcmVhdGUgYSBuZXcgU3R5bGVTaGVldCwgc2hvdWxkIHJldXNlIHRoZSBleGlz
dGluZyBvbmUiKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNz
c1N0eWxlTWFuYWdlci5wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUoY2hpbGRG
cmFtZSwgZnVuY3Rpb24oc3R5bGVTaGVldCkgeworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNz
c1N0eWxlTWFuYWdlci5wcmVmZXJyZWRJbnNwZWN0b3JTdHlsZVNoZWV0Rm9yRnJhbWUoY2hpbGRG
cmFtZSwgKHN0eWxlU2hlZXQpID0+IHsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4
cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zdHlsZVNoZWV0cy5sZW5ndGgg
PT09IDIsICJTaG91bGQgYmUgdHdvIHN0eWxlc2hlZXRzLiIpOwogICAgICAgICAgICAgICAgIElu
c3BlY3RvclRlc3QuZXhwZWN0VGhhdChzdHlsZVNoZWV0Lm9yaWdpbiA9PT0gV2ViSW5zcGVjdG9y
LkNTU1N0eWxlU2hlZXQuVHlwZS5JbnNwZWN0b3IsICJTdHlsZVNoZWV0IG9yaWdpbiBzaG91bGQg
YmUgJ2luc3BlY3RvcicuIik7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RU
aGF0KHN0eWxlU2hlZXQuaXNJbnNwZWN0b3JTdHlsZVNoZWV0KCksICJTdHlsZVNoZWV0LmlzSW5z
cGVjdG9yU3R5bGVTaGVldCgpIHNob3VsZCBiZSB0cnVlLiIpOwpAQCAtODksNyArOTMsOCBAQCBm
dW5jdGlvbiB0ZXN0KCkKICAgICAgICAgfQogICAgIH0pOwogCi0gICAgV2ViSW5zcGVjdG9yLmNz
c1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQ1NTU3R5
bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1vdmVkLCBmdW5jdGlvbihldmVudCkgeworICAg
IFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuYXdhaXRFdmVudChXZWJJbnNwZWN0b3IuQ1NT
U3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1vdmVkKQorICAgIC50aGVuKChldmVudCkg
PT4gewogICAgICAgICBJbnNwZWN0b3JUZXN0LmFzc2VydChmYWxzZSwgIlNob3VsZCBub3QgYmUg
cmVtb3ZpbmcgYW55IFN0eWxlU2hlZXRzIGluIHRoaXMgdGVzdC4iKTsKICAgICB9KTsKIApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9zdHlsZXNoZWV0LWV2ZW50cy1iYXNp
Yy5odG1sIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9zdHlsZXNoZWV0LWV2ZW50cy1iYXNp
Yy5odG1sCmluZGV4IDYzNWIyOWYuLmMwYWM0ZjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVudHMtYmFzaWMuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZlbnRzLWJhc2ljLmh0bWwKQEAgLTUzLDcgKzUz
LDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBu
YW1lOiAiQ2hlY2tOb1N0eWxlU2hlZXRzIiwKICAgICAgICAgZGVzY3JpcHRpb246ICJFbnN1cmUg
dGhlcmUgYXJlIGN1cnJlbnRseSBubyBzdHlsZXNoZWV0cy4iLAotICAgICAgICB0ZXN0OiAocmVz
b2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAg
ICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFu
YWdlci5zdHlsZVNoZWV0cy5sZW5ndGggPT09IDAsICJTaG91bGQgYmUgbm8gc3R5bGVzaGVldHMu
Iik7CiAgICAgICAgICAgICByZXNvbHZlKCk7CiAgICAgICAgIH0KQEAgLTY2LDQyICs2Niw0OCBA
QCBmdW5jdGlvbiB0ZXN0KCkKIAogICAgICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAg
ICAgICBuYW1lOiBgQWRkJHt0aXRsZX1gLAotICAgICAgICAgICAgdGVzdDogKHJlc29sdmUsIHJl
amVjdCkgPT4gewotICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2Uo
YWRkRXhwcmVzc2lvbik7Ci0gICAgICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFu
YWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2Vy
LkV2ZW50LlN0eWxlU2hlZXRBZGRlZCwgZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgIHRl
c3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0
eWxlTWFuYWdlci5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQu
U3R5bGVTaGVldEFkZGVkKQorICAgICAgICAgICAgICAgIC50aGVuKChldmVudCkgPT4gewogICAg
ICAgICAgICAgICAgICAgICBhZGRlZFN0eWxlU2hlZXQgPSBldmVudC5kYXRhLnN0eWxlU2hlZXQ7
CiAgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChhZGRlZFN0eWxl
U2hlZXQgaW5zdGFuY2VvZiBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldCwgIlN0eWxlU2hlZXRB
ZGRlZCBldmVudCBzaG91bGQgZmlyZS4iKTsKICAgICAgICAgICAgICAgICAgICAgaWYgKGNoZWNr
U3R5bGVTaGVldFJlbW92ZWRDYWxsYmFjaykKICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNr
U3R5bGVTaGVldEFkZGVkQ2FsbGJhY2soYWRkZWRTdHlsZVNoZWV0KTsKLSAgICAgICAgICAgICAg
ICAgICAgcmVzb2x2ZSgpOwotICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0p
CisgICAgICAgICAgICAgICAgLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsKKworICAgICAgICAgICAg
ICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoYWRkRXhwcmVzc2lvbik7CiAgICAgICAg
ICAgICB9CiAgICAgICAgIH0pOwogCiAgICAgICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAg
ICAgICAgIG5hbWU6IGBEaXNhYmxlJHt0aXRsZX1gLAogICAgICAgICAgICAgZGVzY3JpcHRpb246
ICJEaXNhYmxlIHRoZSBuZXdseSBhZGRlZCBzdHlsZXNoZWV0LiIsCi0gICAgICAgICAgICB0ZXN0
OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5l
dmFsdWF0ZUluUGFnZSgiZGlzYWJsZVN0eWxlU2hlZXQoKSIpOwotICAgICAgICAgICAgICAgIFdl
Ykluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5z
cGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0UmVtb3ZlZCwgZnVuY3Rpb24o
ZXZlbnQpIHsKKyAgICAgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAg
ICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5hd2FpdEV2ZW50KFdlYkluc3BlY3Rv
ci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldFJlbW92ZWQpCisgICAgICAgICAgICAg
ICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3Qu
YXNzZXJ0KGV2ZW50LmRhdGEuc3R5bGVTaGVldCBpbnN0YW5jZW9mIFdlYkluc3BlY3Rvci5DU1NT
dHlsZVNoZWV0LCAiRXZlbnQgZGF0YSBzaG91bGQgYmUgYSBDU1NTdHlsZVNoZWV0Iik7CiAgICAg
ICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChhZGRlZFN0eWxlU2hlZXQg
PT09IGV2ZW50LmRhdGEuc3R5bGVTaGVldCwgIlN0eWxlU2hlZXRSZW1vdmVkIGV2ZW50IHNob3Vs
ZCBmaXJlIGZvciB0aGUgc2FtZSBDU1NTdHlsZVNoZWV0LiIpOwotICAgICAgICAgICAgICAgICAg
ICByZXNvbHZlKCk7Ci0gICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgfSkKKyAg
ICAgICAgICAgICAgICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgiZGlzYWJsZVN0eWxlU2hlZXQoKSIpOwogICAg
ICAgICAgICAgfQogICAgICAgICB9KTsKIAogICAgICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAg
ICAgICAgICAgICBuYW1lOiBgRW5hYmxlJHt0aXRsZX1gLAogICAgICAgICAgICAgZGVzY3JpcHRp
b246ICJFbmFibGUgdGhlIGp1c3QgZGlzYWJsZWQgc3R5bGVzaGVldC4iLAotICAgICAgICAgICAg
dGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICAgICAgICAgIEluc3BlY3RvclRl
c3QuZXZhbHVhdGVJblBhZ2UoImVuYWJsZVN0eWxlU2hlZXQoKSIpOwotICAgICAgICAgICAgICAg
IFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2Vi
SW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0QWRkZWQsIGZ1bmN0aW9u
KGV2ZW50KSB7CisgICAgICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAg
ICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuYXdhaXRFdmVudChXZWJJbnNwZWN0
b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCkKKyAgICAgICAgICAgICAg
ICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5h
c3NlcnQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0IGluc3RhbmNlb2YgV2ViSW5zcGVjdG9yLkNTU1N0
eWxlU2hlZXQsICJFdmVudCBkYXRhIHNob3VsZCBiZSBhIENTU1N0eWxlU2hlZXQiKTsKICAgICAg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KGFkZGVkU3R5bGVTaGVldCAh
PT0gZXZlbnQuZGF0YS5zdHlsZVNoZWV0LCAiU3R5bGVTaGVldEFkZGVkIGV2ZW50IHNob3VsZCBm
aXJlIHdpdGggYSBuZXcgQ1NTU3R5bGVTaGVldC4iKTsKICAgICAgICAgICAgICAgICAgICAgYWRk
ZWRTdHlsZVNoZWV0ID0gZXZlbnQuZGF0YS5zdHlsZVNoZWV0OwotICAgICAgICAgICAgICAgICAg
ICByZXNvbHZlKCk7Ci0gICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgfSkKKyAg
ICAgICAgICAgICAgICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgiZW5hYmxlU3R5bGVTaGVldCgpIik7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0pOwogCkBAIC0xMTEsNDEgKzExNyw0NyBAQCBmdW5jdGlvbiB0
ZXN0KCkKIAogICAgICAgICAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICAgICAgICAg
IG5hbWU6IGV4dHJhRGlzYWJsZVRpdGxlLAotICAgICAgICAgICAgICAgIHRlc3Q6IChyZXNvbHZl
LCByZWplY3QpID0+IHsKLSAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0
ZUluUGFnZShleHRyYURpc2FibGVFeHByZXNzaW9uKTsKLSAgICAgICAgICAgICAgICAgICAgV2Vi
SW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNw
ZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1vdmVkLCBmdW5jdGlvbihl
dmVudCkgeworICAgICAgICAgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAg
ICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuYXdhaXRFdmVudChXZWJJ
bnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1vdmVkKQorICAgICAg
ICAgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAg
IEluc3BlY3RvclRlc3QuYXNzZXJ0KGV2ZW50LmRhdGEuc3R5bGVTaGVldCBpbnN0YW5jZW9mIFdl
Ykluc3BlY3Rvci5DU1NTdHlsZVNoZWV0LCAiRXZlbnQgZGF0YSBzaG91bGQgYmUgYSBDU1NTdHls
ZVNoZWV0Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRo
YXQoYWRkZWRTdHlsZVNoZWV0ID09PSBldmVudC5kYXRhLnN0eWxlU2hlZXQsICJTdHlsZVNoZWV0
UmVtb3ZlZCBldmVudCBzaG91bGQgZmlyZSBmb3IgdGhlIHNhbWUgQ1NTU3R5bGVTaGVldC4iKTsK
LSAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKLSAgICAgICAgICAgICAgICAgICAg
fSk7CisgICAgICAgICAgICAgICAgICAgIH0pCisgICAgICAgICAgICAgICAgICAgIC50aGVuKHJl
c29sdmUsIHJlamVjdCk7CisKKyAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFs
dWF0ZUluUGFnZShleHRyYURpc2FibGVFeHByZXNzaW9uKTsKICAgICAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICB9KTsKIAogICAgICAgICAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAg
ICAgICAgICAgIG5hbWU6IGV4dHJhRW5hYmxlVGl0bGUsCi0gICAgICAgICAgICAgICAgdGVzdDog
KHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0
LmV2YWx1YXRlSW5QYWdlKGV4dHJhRW5hYmxlRXhwcmVzc2lvbik7Ci0gICAgICAgICAgICAgICAg
ICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIo
V2ViSW5zcGVjdG9yLkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0QWRkZWQsIGZ1bmN0
aW9uKGV2ZW50KSB7CisgICAgICAgICAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAg
ICAgICAgICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5hd2FpdEV2ZW50
KFdlYkluc3BlY3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldEFkZGVkKQorICAg
ICAgICAgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICAgICAg
ICAgIEluc3BlY3RvclRlc3QuYXNzZXJ0KGV2ZW50LmRhdGEuc3R5bGVTaGVldCBpbnN0YW5jZW9m
IFdlYkluc3BlY3Rvci5DU1NTdHlsZVNoZWV0LCAiRXZlbnQgZGF0YSBzaG91bGQgYmUgYSBDU1NT
dHlsZVNoZWV0Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVj
dFRoYXQoYWRkZWRTdHlsZVNoZWV0ICE9PSBldmVudC5kYXRhLnN0eWxlU2hlZXQsICJTdHlsZVNo
ZWV0QWRkZWQgZXZlbnQgc2hvdWxkIGZpcmUgd2l0aCBhIG5ldyBDU1NTdHlsZVNoZWV0LiIpOwog
ICAgICAgICAgICAgICAgICAgICAgICAgYWRkZWRTdHlsZVNoZWV0ID0gZXZlbnQuZGF0YS5zdHls
ZVNoZWV0OwotICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgpOwotICAgICAgICAgICAg
ICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICAgICAgfSkKKyAgICAgICAgICAgICAgICAgICAg
LnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTsKKworICAgICAgICAgICAgICAgICAgICBJbnNwZWN0b3JU
ZXN0LmV2YWx1YXRlSW5QYWdlKGV4dHJhRW5hYmxlRXhwcmVzc2lvbik7CiAgICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0KIAogICAgICAgICBzdWl0ZS5hZGRUZXN0
Q2FzZSh7CiAgICAgICAgICAgICBuYW1lOiBgUmVtb3ZlJHt0aXRsZX1gLAotICAgICAgICAgICAg
dGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICAgICAgICAgIEluc3BlY3RvclRl
c3QuZXZhbHVhdGVJblBhZ2UocmVtb3ZlRXhwcmVzc2lvbik7Ci0gICAgICAgICAgICAgICAgV2Vi
SW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNw
ZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRSZW1vdmVkLCBmdW5jdGlvbihl
dmVudCkgeworICAgICAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAg
ICAgICBXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9y
LkNTU1N0eWxlTWFuYWdlci5FdmVudC5TdHlsZVNoZWV0UmVtb3ZlZCkKKyAgICAgICAgICAgICAg
ICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5l
eHBlY3RUaGF0KGV2ZW50LmRhdGEuc3R5bGVTaGVldCBpbnN0YW5jZW9mIFdlYkluc3BlY3Rvci5D
U1NTdHlsZVNoZWV0LCAiU3R5bGVTaGVldEFkZGVkIGV2ZW50IHNob3VsZCBmaXJlLiIpOwogICAg
ICAgICAgICAgICAgICAgICBpZiAoY2hlY2tTdHlsZVNoZWV0UmVtb3ZlZENhbGxiYWNrKQogICAg
ICAgICAgICAgICAgICAgICAgICAgY2hlY2tTdHlsZVNoZWV0UmVtb3ZlZENhbGxiYWNrKGV2ZW50
LmRhdGEuc3R5bGVTaGVldCk7CiAgICAgICAgICAgICAgICAgICAgIGFkZGVkU3R5bGVTaGVldCA9
IG51bGw7Ci0gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKLSAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgICAgICAgICB9KQorICAgICAgICAgICAgICAgIC50aGVuKHJlc29sdmUsIHJl
amVjdCk7CisKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKHJl
bW92ZUV4cHJlc3Npb24pOwogICAgICAgICAgICAgfQogICAgICAgICB9KTsKICAgICB9CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZlbnRzLWluc3Bl
Y3Rvci1zdHlsZXNoZWV0Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hl
ZXQtZXZlbnRzLWluc3BlY3Rvci1zdHlsZXNoZWV0Lmh0bWwKaW5kZXggZmU2NjQ3Ny4uZjMxMDZj
MzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVu
dHMtaW5zcGVjdG9yLXN0eWxlc2hlZXQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
Y3NzL3N0eWxlc2hlZXQtZXZlbnRzLWluc3BlY3Rvci1zdHlsZXNoZWV0Lmh0bWwKQEAgLTEwLDcg
KzEwLDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAg
ICBuYW1lOiAiQ2hlY2tOb1N0eWxlU2hlZXRzIiwKICAgICAgICAgZGVzY3JpcHRpb246ICJFbnN1
cmUgdGhlcmUgYXJlIGN1cnJlbnRseSBubyBzdHlsZXNoZWV0cy4iLAotICAgICAgICB0ZXN0OiAo
cmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CiAg
ICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoV2ViSW5zcGVjdG9yLmNzc1N0eWxl
TWFuYWdlci5zdHlsZVNoZWV0cy5sZW5ndGggPT09IDAsICJTaG91bGQgYmUgbm8gc3R5bGVzaGVl
dHMuIik7CiAgICAgICAgICAgICByZXNvbHZlKCk7CiAgICAgICAgIH0KQEAgLTE5LDE0ICsxOSwx
NiBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5h
bWU6ICJDcmVhdGVJbnNwZWN0b3JTdHlsZVNoZWV0IiwKICAgICAgICAgZGVzY3JpcHRpb246ICJD
cmVhdGluZyBhbiBpbnNwZWN0b3Igc3R5bGVzaGVldCBhZGRzIGEgc3R5bGVzaGVldC4iLAotICAg
ICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBDU1NBZ2VudC5j
cmVhdGVTdHlsZVNoZWV0KFdlYkluc3BlY3Rvci5mcmFtZVJlc291cmNlTWFuYWdlci5tYWluRnJh
bWUuaWQpOwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVG
aXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxl
U2hlZXRBZGRlZCwgZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWpl
Y3QpIHsKKyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuYXdhaXRFdmVu
dChXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCkKKyAg
ICAgICAgICAgIC50aGVuKChldmVudCkgPT4gewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRl
c3QuZXhwZWN0VGhhdChXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxlU2hlZXRzLmxl
bmd0aCA9PT0gMSwgIlNob3VsZCBiZSBvbmUgc3R5bGVzaGVldC4iKTsKICAgICAgICAgICAgICAg
ICBJbnNwZWN0b3JUZXN0LmFzc2VydChldmVudC5kYXRhLnN0eWxlU2hlZXQgaW5zdGFuY2VvZiBX
ZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldCwgIkV2ZW50IGRhdGEgc2hvdWxkIGJlIGEgQ1NTU3R5
bGVTaGVldCIpOwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChldmVu
dC5kYXRhLnN0eWxlU2hlZXQub3JpZ2luID09PSBXZWJJbnNwZWN0b3IuQ1NTU3R5bGVTaGVldC5U
eXBlLkluc3BlY3RvciwgIlN0eWxlU2hlZXQgb3JpZ2luIHNob3VsZCBiZSAnaW5zcGVjdG9yJy4i
KTsKLSAgICAgICAgICAgICAgICByZXNvbHZlKCk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAg
ICAgIH0pCisgICAgICAgICAgICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAg
ICBDU1NBZ2VudC5jcmVhdGVTdHlsZVNoZWV0KFdlYkluc3BlY3Rvci5mcmFtZVJlc291cmNlTWFu
YWdlci5tYWluRnJhbWUuaWQpOwogICAgICAgICB9CiAgICAgfSk7CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVudHMtbXVsdGlwbGUtZG9jdW1l
bnRzLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvY3NzL3N0eWxlc2hlZXQtZXZlbnRzLW11
bHRpcGxlLWRvY3VtZW50cy5odG1sCmluZGV4IDAyMGFlOWEuLjliZTNlNzkgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2luc3BlY3Rvci9jc3Mvc3R5bGVzaGVldC1ldmVudHMtbXVsdGlwbGUtZG9j
dW1lbnRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2Nzcy9zdHlsZXNoZWV0LWV2
ZW50cy1tdWx0aXBsZS1kb2N1bWVudHMuaHRtbApAQCAtNSw3ICs1LDcgQEAKIDxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0icmVzb3VyY2VzL2V4dGVybmFsLmNzcyI+CiA8c2NyaXB0PgogZnVu
Y3Rpb24gYWRkU3ViZnJhbWUoKSB7Ci0gICAgdmFyIGlmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImlmcmFtZSIpOworICAgIGxldCBpZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJpZnJhbWUiKTsKICAgICBpZnJhbWUuaWQgPSAic3ViZnJhbWUiOwogICAgIGlmcmFtZS5zcmMg
PSAicmVzb3VyY2VzL3N0eWxlc2hlZXQtZXZlbnRzLXN1YmZyYW1lLmh0bWwiOwogICAgIGRvY3Vt
ZW50LmJvZHkuYXBwZW5kQ2hpbGQoaWZyYW1lKTsKQEAgLTIyLDggKzIyLDggQEAgZnVuY3Rpb24g
dGVzdCgpCiAgICAgfQogCiAgICAgZnVuY3Rpb24gbG9nU3R5bGVTaGVldHMoKSB7Ci0gICAgICAg
IFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuc3R5bGVTaGVldHMuc29ydCgoYSwgYikgPT4g
YS51cmwubG9jYWxlQ29tcGFyZShiLnVybCkpLmZvckVhY2goZnVuY3Rpb24oc3R5bGVTaGVldCkg
ewotICAgICAgICAgICAgdmFyIGZyYW1lU3RyaW5nID0gc3R5bGVTaGVldC5wYXJlbnRGcmFtZS5p
ZCA9PT0gV2ViSW5zcGVjdG9yLmZyYW1lUmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZS5pZCA/ICI8
bWFpbmZyYW1lPiIgOiAiPGNoaWxkZnJhbWU+IjsKKyAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0
eWxlTWFuYWdlci5zdHlsZVNoZWV0cy5zb3J0KChhLCBiKSA9PiBhLnVybC5sb2NhbGVDb21wYXJl
KGIudXJsKSkuZm9yRWFjaCgoc3R5bGVTaGVldCkgPT4geworICAgICAgICAgICAgbGV0IGZyYW1l
U3RyaW5nID0gc3R5bGVTaGVldC5wYXJlbnRGcmFtZS5pZCA9PT0gV2ViSW5zcGVjdG9yLmZyYW1l
UmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZS5pZCA/ICI8bWFpbmZyYW1lPiIgOiAiPGNoaWxkZnJh
bWU+IjsKICAgICAgICAgICAgIEluc3BlY3RvclRlc3QubG9nKGBVUkw6ICR7c2FuaXRpemVVUkwo
c3R5bGVTaGVldC51cmwpfSAke2ZyYW1lU3RyaW5nfWApOwogICAgICAgICB9KTsKICAgICB9CkBA
IC0zMyw3ICszMyw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsK
ICAgICAgICAgbmFtZTogIkNoZWNrU3R5bGVTaGVldHMiLAogICAgICAgICBkZXNjcmlwdGlvbjog
IkVuc3VyZSB0aGVyZSBpcyBjdXJyZW50bHkgb25lIHN0eWxlc2hlZXQuIiwKLSAgICAgICAgdGVz
dDogKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkg
ewogICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KFdlYkluc3BlY3Rvci5jc3NT
dHlsZU1hbmFnZXIuc3R5bGVTaGVldHMubGVuZ3RoID09PSAxLCAiU2hvdWxkIGJlIG9uZSBzdHls
ZXNoZWV0cy4iKTsKICAgICAgICAgICAgIGxvZ1N0eWxlU2hlZXRzKCk7CiAgICAgICAgICAgICBy
ZXNvbHZlKCk7CkBAIC00MywyOCArNDMsMzIgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUu
YWRkVGVzdENhc2UoewogICAgICAgICBuYW1lOiAiQ2hlY2tTdHlsZVNoZWV0c0FmdGVyQWRkaW5n
U3ViZnJhbWUiLAogICAgICAgICBkZXNjcmlwdGlvbjogIkVuc3VyZSBzdWJmcmFtZSBzdHlsZXNo
ZWV0cyBhcmUgYWRkZWQuIiwKLSAgICAgICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4gewot
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgiYWRkU3ViZnJhbWUoKSIp
OwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmNzc1N0eWxlTWFuYWdlci5zaW5nbGVGaXJlRXZl
bnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRB
ZGRlZCwgZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsK
KyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5jc3NTdHlsZU1hbmFnZXIuYXdhaXRFdmVudChXZWJJ
bnNwZWN0b3IuQ1NTU3R5bGVNYW5hZ2VyLkV2ZW50LlN0eWxlU2hlZXRBZGRlZCkKKyAgICAgICAg
ICAgIC50aGVuKChldmVudCkgPT4gewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhw
ZWN0VGhhdChXZWJJbnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxlU2hlZXRzLmxlbmd0aCA9
PT0gMiwgIlNob3VsZCBiZSB0d28gc3R5bGVzaGVldHMuIik7CiAgICAgICAgICAgICAgICAgSW5z
cGVjdG9yVGVzdC5leHBlY3RUaGF0KGV2ZW50LmRhdGEuc3R5bGVTaGVldC5wYXJlbnRGcmFtZSAh
PT0gV2ViSW5zcGVjdG9yLmZyYW1lUmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZS5pZCwgIk5ldyBT
dHlsZVNoZWV0IGlzIGZvciBhIHN1YmZyYW1lIik7CiAgICAgICAgICAgICAgICAgbG9nU3R5bGVT
aGVldHMoKTsKLSAgICAgICAgICAgICAgICByZXNvbHZlKCk7Ci0gICAgICAgICAgICB9KTsKKyAg
ICAgICAgICAgIH0pCisgICAgICAgICAgICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAg
ICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJhZGRTdWJmcmFtZSgpIik7CiAg
ICAgICAgIH0KICAgICB9KTsKIAogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFt
ZTogIkNoZWNrU3R5bGVTaGVldHNBZnRlclJlbW92aW5nU3ViZnJhbWUiLAogICAgICAgICBkZXNj
cmlwdGlvbjogIkVuc3VyZSBzdWJmcmFtZSBzdHlsZXNoZWV0cyBhcmUgcmVtb3ZlZC4iLAotICAg
ICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBJbnNwZWN0b3JU
ZXN0LmV2YWx1YXRlSW5QYWdlKCJyZW1vdmVTdWJmcmFtZSgpIik7Ci0gICAgICAgICAgICBXZWJJ
bnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3Bl
Y3Rvci5DU1NTdHlsZU1hbmFnZXIuRXZlbnQuU3R5bGVTaGVldFJlbW92ZWQsIGZ1bmN0aW9uKGV2
ZW50KSB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBXZWJJ
bnNwZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkNTU1N0eWxl
TWFuYWdlci5FdmVudC5TdHlsZVNoZWV0UmVtb3ZlZCkKKyAgICAgICAgICAgIC50aGVuKChldmVu
dCkgPT4gewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChXZWJJbnNw
ZWN0b3IuY3NzU3R5bGVNYW5hZ2VyLnN0eWxlU2hlZXRzLmxlbmd0aCA9PT0gMSwgIlNob3VsZCBi
ZSBvbmUgc3R5bGVzaGVldC4iKTsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVj
dFRoYXQoZXZlbnQuZGF0YS5zdHlsZVNoZWV0LnBhcmVudEZyYW1lICE9PSBXZWJJbnNwZWN0b3Iu
ZnJhbWVSZXNvdXJjZU1hbmFnZXIubWFpbkZyYW1lLmlkLCAiUmVtb3ZlZCBTdHlsZVNoZWV0IGlz
IGZvciBhIHN1YmZyYW1lIik7CiAgICAgICAgICAgICAgICAgbG9nU3R5bGVTaGVldHMoKTsKLSAg
ICAgICAgICAgICAgICByZXNvbHZlKCk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIH0p
CisgICAgICAgICAgICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICBJbnNw
ZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJyZW1vdmVTdWJmcmFtZSgpIik7CiAgICAgICAgIH0K
ICAgICB9KTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>