<?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>162074</bug_id>
          
          <creation_ts>2016-09-16 10:51:02 -0700</creation_ts>
          <short_desc>Web Inspector: adopt Object.awaitEvent in LayoutTests/inspector/model</short_desc>
          <delta_ts>2016-09-20 10:31:08 -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>1230474</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-09-16 10:51:02 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1230475</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-09-16 10:51:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/28340084&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1230684</commentid>
    <comment_count>2</comment_count>
      <attachid>289135</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-09-16 16:40:14 -0700</bug_when>
    <thetext>Created attachment 289135
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231072</commentid>
    <comment_count>3</comment_count>
      <attachid>289135</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2016-09-19 06:59:03 -0700</bug_when>
    <thetext>Comment on attachment 289135
Patch

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

Please post a new version that reverts setTimeout changes for EWS. then I will r+ it.

&gt; LayoutTests/inspector/model/scope-chain-node.html:77
&gt; +            InspectorTest.evaluateInPage(&quot;testAllScopes()&quot;);

Please keep this as a setTimeout. Joe says it is necessary to do this whenever we rely on stack traces not including stack frames from InspectorTest code.

&gt; LayoutTests/inspector/model/scope-chain-node.html:97
&gt; +            InspectorTest.evaluateInPage(&quot;testFunctionNameScope1()&quot;);

See above.

&gt; LayoutTests/inspector/model/scope-chain-node.html:117
&gt; +            InspectorTest.evaluateInPage(&quot;testFunctionNameScope2()&quot;);

Ditto.

&gt; LayoutTests/inspector/model/scope-chain-node.html:167
&gt; +            InspectorTest.evaluateInPage(&quot;testBlockScopes()&quot;);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231391</commentid>
    <comment_count>4</comment_count>
      <attachid>289274</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2016-09-19 16:23:04 -0700</bug_when>
    <thetext>Created attachment 289274
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231587</commentid>
    <comment_count>5</comment_count>
      <attachid>289274</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2016-09-20 03:13:06 -0700</bug_when>
    <thetext>Comment on attachment 289274
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231752</commentid>
    <comment_count>6</comment_count>
      <attachid>289274</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-20 10:31:04 -0700</bug_when>
    <thetext>Comment on attachment 289274
Patch

Clearing flags on attachment: 289274

Committed r206152: &lt;http://trac.webkit.org/changeset/206152&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1231753</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-09-20 10:31:08 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289135</attachid>
            <date>2016-09-16 16:40:14 -0700</date>
            <delta_ts>2016-09-19 16:23:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162074-20160916163734.patch</filename>
            <type>text/plain</type>
            <size>18329</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjOTU5YjMyMmFlMjAyYzg5MjEzMjMxYzNlY2Q4YjhlOTY5YjNjYjAzLi4wMzczNjRi
NmNmZDQ5ZjYwMjU1YjU2MDcwMjFiMjU5MmM0ZjBiZmUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMTYtMDktMTYgIERldmluIFJvdXNzbyAgPGRjcm91c3NvK3dlYmtpdEBnbWFpbC5jb20+CisK
KyAgICAgICAgV2ViIEluc3BlY3RvcjogYWRvcHQgT2JqZWN0LmF3YWl0RXZlbnQgaW4gTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL21vZGVsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjIwNzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBSZXBsYWNlIGluc3RhbmNlcyBvZiBzaW5nbGVGaXJlRXZlbnRMaXN0ZW5l
ciB3aXRoIGF3YWl0RXZlbnQgYW5kIHVzZSBwcm9taXNlIGxvZ2ljIHRvIG1ha2UKKyAgICAgICAg
dGVzdHMgbW9yZSByZWFkYWJsZS4KKworICAgICAgICAqIGluc3BlY3Rvci9tb2RlbC9mcmFtZS1l
eHRyYS1zY3JpcHRzLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL21vZGVsL3Njb3BlLWNoYWlu
LW5vZGUuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvbW9kZWwvc2NyaXB0LXJlc291cmNlLXJl
bGF0aW9uc2hpcC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL21vZGVsL3Njcmlw
dC1yZXNvdXJjZS1yZWxhdGlvbnNoaXAuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvbW9kZWwv
c3RhY2stdHJhY2UuaHRtbDoKKwogMjAxNi0wOS0xNiAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFw
cGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIGdhcmRlbmluZzsgZW5hYmxlIG5ld2x5IHBh
c3NpbmcgbWVkaWEvbWVkaWEtc291cmNlLyB0ZXN0cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9tb2RlbC9mcmFtZS1leHRyYS1zY3JpcHRzLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvbW9kZWwvZnJhbWUtZXh0cmEtc2NyaXB0cy5odG1sCmluZGV4IDM1M2M2NDAyMmVh
YTU2ZmM2YmVlYmVhNTQzZTA4NTcyNjE1YTdjNjMuLjZlYjliN2E3M2Q5NTI4ZjY4ZjFlYmQxNWNm
YzFkNjE5ZGY2NzY3ZDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9m
cmFtZS1leHRyYS1zY3JpcHRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVs
L2ZyYW1lLWV4dHJhLXNjcmlwdHMuaHRtbApAQCAtMTYsNyArMTYsNyBAQCBmdW5jdGlvbiB0ZXN0
KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5hbWU6ICJGcmFtZUhhc05vRXh0
cmFTY3JpcHRzWWV0IiwKICAgICAgICAgZGVzY3JpcHRpb246ICJObyBleHRyYSBzY3JpcHRzIHll
dC4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAgIHRlc3Qo
cmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgICBsZXQgbWFpbkZyYW1lID0gV2ViSW5zcGVj
dG9yLmZyYW1lUmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZTsKICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuZXhwZWN0VGhhdChtYWluRnJhbWUuZXh0cmFTY3JpcHRzLmxlbmd0aCA9PT0gMCwgIk1h
aW4gZnJhbWUgc2hvdWxkIGhhdmUgbm8gZHluYW1pYyBzY3JpcHRzLiIpOwogICAgICAgICAgICAg
cmVzb2x2ZSgpOwpAQCAtMjYsMTcgKzI2LDE4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRl
LmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIkFkZEV4dHJhU2NyaXB0IiwKICAgICAgICAg
ZGVzY3JpcHRpb246ICJBZGQgZXh0cmEgc2NyaXB0LiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZl
LCByZWplY3QpID0+IHsgICAgICAgICAgICAKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5mcmFt
ZVJlc291cmNlTWFuYWdlci5tYWluRnJhbWUuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5z
cGVjdG9yLkZyYW1lLkV2ZW50LkV4dHJhU2NyaXB0QWRkZWQsIChldmVudCkgPT4geworICAgICAg
ICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmZyYW1l
UmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZS5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5GcmFtZS5F
dmVudC5FeHRyYVNjcmlwdEFkZGVkKQorICAgICAgICAgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5wYXNzKCJFeHRyYVNjcmlwdEFkZGVkIGV2ZW50
IGZpcmVkLiIpOwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChldmVu
dC5kYXRhLnNjcmlwdC5keW5hbWljYWxseUFkZGVkU2NyaXB0RWxlbWVudCwgIlNjcmlwdCBzaG91
bGQgaWRlbnRpZnkgYXMgZHluYW1pYy4iKTsKLSAgICAgICAgICAgIH0pOwogCi0gICAgICAgICAg
ICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJ0cmlnZ2VyQWRkU2NyaXB0RWxlbWVudCgp
IiwgKCkgPT4gewogICAgICAgICAgICAgICAgIGxldCBtYWluRnJhbWUgPSBXZWJJbnNwZWN0b3Iu
ZnJhbWVSZXNvdXJjZU1hbmFnZXIubWFpbkZyYW1lOwogICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuZXhwZWN0VGhhdChtYWluRnJhbWUuZXh0cmFTY3JpcHRzLmxlbmd0aCA9PT0gMSwgIk1h
aW4gZnJhbWUgc2hvdWxkIGhhdmUgMSBkeW5hbWljIHNjcmlwdC4iKTsKLSAgICAgICAgICAgICAg
ICByZXNvbHZlKCk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIH0pCisgICAgICAgICAg
ICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2
YWx1YXRlSW5QYWdlKCJ0cmlnZ2VyQWRkU2NyaXB0RWxlbWVudCgpIik7CiAgICAgICAgIH0KICAg
ICB9KTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3Njb3BlLWNo
YWluLW5vZGUuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9zY29wZS1jaGFpbi1u
b2RlLmh0bWwKaW5kZXggZjU3YTVlMDM0NjBmZTI1NjQ5ZTllNzYyMzNkOGFiOWJmMWU3NTliNS4u
ZjM3NzVhZGFiNzI2OGMyMTlkZjAwOWM1YjA1MGNhNGE3YTRkMjk5MSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3Njb3BlLWNoYWluLW5vZGUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvc2NvcGUtY2hhaW4tbm9kZS5odG1sCkBAIC0yMyw3ICsy
Myw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICByZXR1cm4gIlVuZXhwZWN0ZWQgU2NvcGUg
VHlwZSI7CiAgICAgfQogCi0gICAgZnVuY3Rpb24gaGFydmVzdFNjb3BlQ2hhaW4oc2NvcGVDaGFp
bikgeyAgICAgICAgCisgICAgZnVuY3Rpb24gaGFydmVzdFNjb3BlQ2hhaW4oc2NvcGVDaGFpbikg
ewogICAgICAgICBsZXQgcHJvbWlzZXMgPSBbXTsKICAgICAgICAgZm9yIChsZXQgc2NvcGUgb2Yg
c2NvcGVDaGFpbikgewogICAgICAgICAgICAgcHJvbWlzZXMucHVzaChuZXcgUHJvbWlzZSgocmVz
b2x2ZSwgcmVqZWN0KSA9PiB7CkBAIC00MCw3ICs0MCw4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAg
IH0KIAogICAgIGZ1bmN0aW9uIGxvZ1Njb3BlQ2hhaW4oc2NvcGVDaGFpbikgewotICAgICAgICBy
ZXR1cm4gaGFydmVzdFNjb3BlQ2hhaW4oc2NvcGVDaGFpbikudGhlbigocmVzdWx0cykgPT4gewor
ICAgICAgICByZXR1cm4gaGFydmVzdFNjb3BlQ2hhaW4oc2NvcGVDaGFpbikKKyAgICAgICAgLnRo
ZW4oKHJlc3VsdHMpID0+IHsKICAgICAgICAgICAgIEluc3BlY3RvclRlc3QubG9nKCJTQ09QRSBD
SEFJTjoiKTsKICAgICAgICAgICAgIGZvciAobGV0IHtzY29wZSwgcHJvcGVydHlEZXNjcmlwdG9y
c30gb2YgcmVzdWx0cykgewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QubG9nKGAgICAg
JHtzY29wZVR5cGVUb1N0cmluZyhzY29wZS50eXBlKX1gKTsKQEAgLTU5LDY5ICs2MCw3NSBAQCBm
dW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5hbWU6ICJX
ZWJJbnNwZWN0b3IuU2NvcGVDaGFpbk5vZGUuQWxsVHlwZXMiLAogICAgICAgICBkZXNjcmlwdGlv
bjogIlRlc3RzIGZvciBlYWNoIG9mIHRoZSBkaWZmZXJlbnQgc2NvcGUgY2hhaW4gbm9kZSB0eXBl
cy4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJzZXRUaW1lb3V0KHRlc3RBbGxTY29wZXMpIik7
Ci0gICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnNpbmdsZUZpcmVFdmVu
dExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuQ2FsbEZyYW1lc0Rp
ZENoYW5nZSwgKGV2ZW50KSA9PiB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7Cisg
ICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5z
cGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5FdmVudC5DYWxsRnJhbWVzRGlkQ2hhbmdlKQorICAgICAg
ICAgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgbGV0IHNjb3BlQ2hhaW4g
PSBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmFjdGl2ZUNhbGxGcmFtZS5zY29wZUNoYWlu
OwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChzY29wZUNoYWluLmxl
bmd0aCA9PT0gMTMsICJTY29wZUNoYWluIHNob3VsZCBoYXZlIDEzIHNjb3Blcy4iKTsKLSAgICAg
ICAgICAgICAgICBsb2dTY29wZUNoYWluKHNjb3BlQ2hhaW4pLnRoZW4oKHJlc3VsdCkgPT4gewot
ICAgICAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnJlc3VtZSgp
OwotICAgICAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnNpbmds
ZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuUmVz
dW1lZCwgKGV2ZW50KSA9PiB7Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7Ci0g
ICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAg
fSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIGxvZ1Njb3BlQ2hhaW4oc2NvcGVDaGFpbik7Cisg
ICAgICAgICAgICB9KQorICAgICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4geworICAgICAgICAg
ICAgICAgIGxldCBwcm9taXNlID0gV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hd2FpdEV2
ZW50KFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuUmVzdW1lZCk7CisgICAgICAg
ICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5yZXN1bWUoKTsKKyAgICAgICAg
ICAgICAgICByZXR1cm4gcHJvbWlzZTsKKyAgICAgICAgICAgIH0pCisgICAgICAgICAgICAudGhl
bihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRl
SW5QYWdlKCJ0ZXN0QWxsU2NvcGVzKCkiKTsKICAgICAgICAgfQogICAgIH0pOwogCiAgICAgc3Vp
dGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1lOiAiV2ViSW5zcGVjdG9yLlNjb3BlQ2hhaW5O
b2RlLkZ1bmN0aW9uTmFtZUluRnVuY3Rpb25FeHByZXNzaW9uIiwKICAgICAgICAgZGVzY3JpcHRp
b246ICJUZXN0cyB0aGF0IHRoZXJlIHNob3VsZCBiZSBhIEZ1bmN0aW9uTmFtZSBzY29wZSBpbnNp
ZGUgYSBmdW5jdGlvbiBleHByZXNzaW9uLiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWpl
Y3QpID0+IHsKLSAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoInNldFRp
bWVvdXQodGVzdEZ1bmN0aW9uTmFtZVNjb3BlMSkiKTsKLSAgICAgICAgICAgIFdlYkluc3BlY3Rv
ci5kZWJ1Z2dlck1hbmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRl
YnVnZ2VyTWFuYWdlci5FdmVudC5DYWxsRnJhbWVzRGlkQ2hhbmdlLCAoZXZlbnQpID0+IHsKKyAg
ICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5k
ZWJ1Z2dlck1hbmFnZXIuYXdhaXRFdmVudChXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2
ZW50LkNhbGxGcmFtZXNEaWRDaGFuZ2UpCisgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsK
ICAgICAgICAgICAgICAgICBsZXQgc2NvcGVDaGFpbiA9IFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1h
bmFnZXIuYWN0aXZlQ2FsbEZyYW1lLnNjb3BlQ2hhaW47Ci0gICAgICAgICAgICAgICAgbG9nU2Nv
cGVDaGFpbihzY29wZUNoYWluKS50aGVuKChyZXN1bHQpID0+IHsKLSAgICAgICAgICAgICAgICAg
ICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5yZXN1bWUoKTsKLSAgICAgICAgICAgICAg
ICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5l
cihXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2ZW50LlJlc3VtZWQsIChldmVudCkgPT4g
ewotICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSgpOwotICAgICAgICAgICAgICAgICAg
ICB9KTsKLSAgICAgICAgICAgICAgICB9KTsKLSAgICAgICAgICAgIH0pOworICAgICAgICAgICAg
ICAgIHJldHVybiBsb2dTY29wZUNoYWluKHNjb3BlQ2hhaW4pOworICAgICAgICAgICAgfSkKKyAg
ICAgICAgICAgIC50aGVuKChyZXN1bHQpID0+IHsKKyAgICAgICAgICAgICAgICBsZXQgcHJvbWlz
ZSA9IFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuYXdhaXRFdmVudChXZWJJbnNwZWN0b3Iu
RGVidWdnZXJNYW5hZ2VyLkV2ZW50LlJlc3VtZWQpOworICAgICAgICAgICAgICAgIFdlYkluc3Bl
Y3Rvci5kZWJ1Z2dlck1hbmFnZXIucmVzdW1lKCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHBy
b21pc2U7CisgICAgICAgICAgICB9KQorICAgICAgICAgICAgLnRoZW4ocmVzb2x2ZSwgcmVqZWN0
KTsKKworICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgidGVzdEZ1bmN0
aW9uTmFtZVNjb3BlMSgpIik7CiAgICAgICAgIH0KICAgICB9KTsKIAogICAgIHN1aXRlLmFkZFRl
c3RDYXNlKHsKICAgICAgICAgbmFtZTogIldlYkluc3BlY3Rvci5TY29wZUNoYWluTm9kZS5GdW5j
dGlvbk5hbWVJbkNsYXNzTWV0aG9kIiwKICAgICAgICAgZGVzY3JpcHRpb246ICJUZXN0cyB0aGF0
IHRoZXJlIHNob3VsZCBiZSBhIEZ1bmN0aW9uTmFtZSBzY29wZSBpbnNpZGUgYSBjbGFzcyBtZXRo
b2QuIiwKLSAgICAgICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4gewotICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5ldmFsdWF0ZUluUGFnZSgic2V0VGltZW91dCh0ZXN0RnVuY3Rpb25OYW1l
U2NvcGUyKSIpOwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5zaW5n
bGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2ZW50LkNh
bGxGcmFtZXNEaWRDaGFuZ2UsIChldmVudCkgPT4geworICAgICAgICB0ZXN0KHJlc29sdmUsIHJl
amVjdCkgeworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hd2FpdEV2
ZW50KFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuQ2FsbEZyYW1lc0RpZENoYW5n
ZSkKKyAgICAgICAgICAgIC50aGVuKChldmVudCkgPT4gewogICAgICAgICAgICAgICAgIGxldCBz
Y29wZUNoYWluID0gV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hY3RpdmVDYWxsRnJhbWUu
c2NvcGVDaGFpbjsKLSAgICAgICAgICAgICAgICBsb2dTY29wZUNoYWluKHNjb3BlQ2hhaW4pLnRo
ZW4oKHJlc3VsdCkgPT4gewotICAgICAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdn
ZXJNYW5hZ2VyLnJlc3VtZSgpOwotICAgICAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVi
dWdnZXJNYW5hZ2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dl
ck1hbmFnZXIuRXZlbnQuUmVzdW1lZCwgKGV2ZW50KSA9PiB7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICByZXNvbHZlKCk7Ci0gICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAg
IH0pOwotICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIGxvZ1Njb3BlQ2hh
aW4oc2NvcGVDaGFpbik7CisgICAgICAgICAgICB9KQorICAgICAgICAgICAgLnRoZW4oKHJlc3Vs
dCkgPT4geworICAgICAgICAgICAgICAgIGxldCBwcm9taXNlID0gV2ViSW5zcGVjdG9yLmRlYnVn
Z2VyTWFuYWdlci5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQu
UmVzdW1lZCk7CisgICAgICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5y
ZXN1bWUoKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gcHJvbWlzZTsKKyAgICAgICAgICAgIH0p
CisgICAgICAgICAgICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICBJbnNw
ZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJ0ZXN0RnVuY3Rpb25OYW1lU2NvcGUyKCkiKTsKICAg
ICAgICAgfQogICAgIH0pOwogCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1l
OiAiV2ViSW5zcGVjdG9yLlNjb3BlQ2hhaW5Ob2RlLkJsb2NrU2NvcGVzIiwKICAgICAgICAgZGVz
Y3JpcHRpb246ICJUZXN0cyBmb3IgYSBCbG9jayBzY29wZSBpbnNpZGUgYWxsIHRoZSBkaWZmZXJl
bnQgdHlwZXMgb2YgYmxvY2tzLiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3QpID0+
IHsKLSAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoInNldFRpbWVvdXQo
dGVzdEJsb2NrU2NvcGVzKSIpOwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFu
YWdlci5hZGRFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQu
QWN0aXZlQ2FsbEZyYW1lRGlkQ2hhbmdlLCBjYWxsRnJhbWVzRGlkQ2hhbmdlTGlzdGVuZXIpOwot
CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgICBsZXQgcGF1c2VD
b3VudCA9IDA7CiAgICAgICAgICAgICBsZXQgcGF1c2VFdmVudHNFeHBlY3RlZCA9IDE5OwogICAg
ICAgICAgICAgZnVuY3Rpb24gY2FsbEZyYW1lc0RpZENoYW5nZUxpc3RlbmVyKGV2ZW50KSB7CiAg
ICAgICAgICAgICAgICAgaWYgKCFXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmFjdGl2ZUNh
bGxGcmFtZSkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgICAgICAgICAg
cGF1c2VDb3VudCsrOyAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICBwYXVzZUNvdW50
Kys7CiAgICAgICAgICAgICAgICAgbGV0IHNjb3BlQ2hhaW4gPSBXZWJJbnNwZWN0b3IuZGVidWdn
ZXJNYW5hZ2VyLmFjdGl2ZUNhbGxGcmFtZS5zY29wZUNoYWluOwogCiAgICAgICAgICAgICAgICAg
Ly8gRmlyc3QsIG5vcm1hbCBmdW5jdGlvbiBzY29wZS4KQEAgLTE0OSwxMCArMTU2LDE1IEBAIGZ1
bmN0aW9uIHRlc3QoKQogCiAgICAgICAgICAgICAgICAgLy8gUHJpbnQgb3V0IHRoZSBmdWxsIHNj
b3BlIG9mIHRoZSBsYXN0IGZldyB3aGVyZSB0aGVyZSBhcmUgbmVzdGVkIG9yIGJ1cmllZCBibG9j
ayBzY29wZXMuCiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KHNjb3Bl
Q2hhaW4uc29tZSgoc2NvcGVDaGFpbikgPT4gc2NvcGVDaGFpbi50eXBlID09PSBXZWJJbnNwZWN0
b3IuU2NvcGVDaGFpbk5vZGUuVHlwZS5CbG9jayksIGBQYXVzZSAjJHtwYXVzZUNvdW50fSAtIENv
bnRhaW5zIGEgQmxvY2sgc2NvcGUuYCk7Ci0gICAgICAgICAgICAgICAgbG9nU2NvcGVDaGFpbihz
Y29wZUNoYWluKS50aGVuKChyZXN1bHQpID0+IHsKKworICAgICAgICAgICAgICAgIGxvZ1Njb3Bl
Q2hhaW4oc2NvcGVDaGFpbikKKyAgICAgICAgICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7CiAg
ICAgICAgICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIucmVzdW1lKCk7
CiAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIFdlYklu
c3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVi
dWdnZXJNYW5hZ2VyLkV2ZW50LkFjdGl2ZUNhbGxGcmFtZURpZENoYW5nZSwgY2FsbEZyYW1lc0Rp
ZENoYW5nZUxpc3RlbmVyKTsKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBh
Z2UoInRlc3RCbG9ja1Njb3BlcygpIik7CiAgICAgICAgIH0KICAgICB9KTsKIApkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3NjcmlwdC1yZXNvdXJjZS1yZWxhdGlvbnNo
aXAtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3NjcmlwdC1yZXNv
dXJjZS1yZWxhdGlvbnNoaXAtZXhwZWN0ZWQudHh0CmluZGV4IGVkNjIyMjAwMzJjYWU3MWQzMGIx
ZTVmMWFjNDExMzA3ZjY3YmQzYzkuLjg1MGE2MWMxZWJiYmRjY2QxYTg3YzlmZDRkNDA1ZmFlY2E1
YzRkZjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9zY3JpcHQtcmVz
b3VyY2UtcmVsYXRpb25zaGlwLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvbW9kZWwvc2NyaXB0LXJlc291cmNlLXJlbGF0aW9uc2hpcC1leHBlY3RlZC50eHQKQEAgLTMs
OCArMyw3IEBAIFdlYkluc3BlY3Rvci5TY3JpcHQgYW5kIFdlYkluc3BlY3Rvci5SZXNvdXJjZSBy
ZWxhdGlvbnNoaXAuCiAKID09IFJ1bm5pbmcgdGVzdCBzdWl0ZTogV2ViSW5zcGVjdG9yLlNjcmlw
dCBhbmQgV2ViSW5zcGVjdG9yLlJlc291cmNlIHJlbGF0aW9uc2hpcAogLS0gUnVubmluZyB0ZXN0
IGNhc2U6IFNjcmlwdFdpdGhSZXNvdXJjZQotUEFTUzogUmVzb3VyY2Ugd2FzIGFkZGVkLgotUEFT
UzogU2NyaXB0IHdhcyBhZGRlZC4KK1BBU1M6IE9ubHkgb25lIFNjcmlwdCBzaG91bGQgYmUgYWRk
ZWQuCiBQQVNTOiBSZXNvdXJjZSBhbmQgU2NyaXB0IGhhdmUgdGhlIHNhbWUgVVJMLgogUEFTUzog
UmVzb3VyY2Ugc2hvdWxkIGJlIHJlbGF0ZWQgdG8gb25lIHNjcmlwdC4KIFBBU1M6IFJlc291cmNl
IHNob3VsZCBiZSByZWxhdGVkIHRvIHRoZSBuZXdseSBhZGRlZCBzY3JpcHQuCkBAIC0xMiw4ICsx
MSw3IEBAIFBBU1M6IFNjcmlwdCBzaG91bGQgYmUgcmVsYXRlZCB0byB0aGUgcmVzb3VyY2UuCiBQ
QVNTOiBTY3JpcHQgc2hvdWxkIG5vdCBoYXZlIGEgc291cmNlVVJMLgogCiAtLSBSdW5uaW5nIHRl
c3QgY2FzZTogTmFtZWRTY3JpcHRXaXRoUmVzb3VyY2UKLVBBU1M6IFJlc291cmNlIHdhcyBhZGRl
ZC4KLVBBU1M6IFNjcmlwdCB3YXMgYWRkZWQuCitQQVNTOiBPbmx5IG9uZSBTY3JpcHQgc2hvdWxk
IGJlIGFkZGVkLgogUEFTUzogUmVzb3VyY2UgYW5kIFNjcmlwdCBoYXZlIHRoZSBzYW1lIFVSTC4K
IFBBU1M6IFJlc291cmNlIHNob3VsZCBiZSByZWxhdGVkIHRvIG9uZSBzY3JpcHQuCiBQQVNTOiBS
ZXNvdXJjZSBzaG91bGQgYmUgcmVsYXRlZCB0byB0aGUgbmV3bHkgYWRkZWQgc2NyaXB0LgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3NjcmlwdC1yZXNvdXJjZS1yZWxh
dGlvbnNoaXAuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9zY3JpcHQtcmVzb3Vy
Y2UtcmVsYXRpb25zaGlwLmh0bWwKaW5kZXggYzNmZmE2NTJjNWY1OTYzNTgwNmJiNDcyZjQwNWYx
OTA4NWI2MTU2MS4uY2MwMDcwNTU2OGU4YjAyMTJjODg4NGYxYTE2NTcwZGYzM2JhNjlkOCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3NjcmlwdC1yZXNvdXJjZS1yZWxh
dGlvbnNoaXAuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvc2NyaXB0LXJl
c291cmNlLXJlbGF0aW9uc2hpcC5odG1sCkBAIC00NiwyNCArNDYsMzEgQEAgZnVuY3Rpb24gdGVz
dCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1lOiAiU2NyaXB0V2l0aFJl
c291cmNlIiwKICAgICAgICAgZGVzY3JpcHRpb246ICJOb3JtYWwgcmVsYXRpb25zaGlwIGJldHdl
ZW4gYSBzY3JpcHQgYW5kIGEgcmVzb3VyY2UuIiwKLSAgICAgICAgdGVzdDogKHJlc29sdmUsIHJl
amVjdCkgPT4gewotICAgICAgICAgICAgbGV0IHNjcmlwdCA9IG51bGwsIHJlc291cmNlID0gbnVs
bDsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAgIGxldCBzY3Jp
cHQgPSBudWxsOworICAgICAgICAgICAgbGV0IHJlc291cmNlID0gbnVsbDsKICAgICAgICAgICAg
IAogICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hZGRFdmVudExpc3Rl
bmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuU2NyaXB0QWRkZWQsIHNjcmlw
dExpc3RlbmVyKTsKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5GcmFtZS5zaW5nbGVGaXJlRXZl
bnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRnJhbWUuRXZlbnQuUmVzb3VyY2VXYXNBZGRlZCwgKGV2
ZW50KSA9PiB7Ci0gICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5wYXNzKCJSZXNvdXJjZSB3
YXMgYWRkZWQuIik7CisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuRnJhbWUuYXdhaXRFdmVudChX
ZWJJbnNwZWN0b3IuRnJhbWUuRXZlbnQuUmVzb3VyY2VXYXNBZGRlZCkKKyAgICAgICAgICAgIC50
aGVuKChldmVudCkgPT4gewogICAgICAgICAgICAgICAgIHJlc291cmNlID0gZXZlbnQuZGF0YS5y
ZXNvdXJjZTsKKyAgICAgICAgICAgICAgICB2YWxpZGF0ZVJlbGF0aW9uc2hpcCgpOwogICAgICAg
ICAgICAgfSk7CiAgICAgICAgICAgICAKICAgICAgICAgICAgIGZ1bmN0aW9uIHNjcmlwdExpc3Rl
bmVyKGV2ZW50KSB7CiAgICAgICAgICAgICAgICAgaWYgKCFldmVudC5kYXRhLnNjcmlwdC51cmwp
CiAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgICAgICBJbnNwZWN0b3JU
ZXN0LnBhc3MoIlNjcmlwdCB3YXMgYWRkZWQuIik7CisKKyAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV4cGVjdFRoYXQoIXNjcmlwdCwgIk9ubHkgb25lIFNjcmlwdCBzaG91bGQgYmUgYWRk
ZWQuIik7CisKICAgICAgICAgICAgICAgICBzY3JpcHQgPSBldmVudC5kYXRhLnNjcmlwdDsKICAg
ICAgICAgICAgICAgICB2YWxpZGF0ZVJlbGF0aW9uc2hpcCgpOwogICAgICAgICAgICAgfQogCiAg
ICAgICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVJlbGF0aW9uc2hpcCgpIHsKKyAgICAgICAgICAg
ICAgICBpZiAoIXJlc291cmNlIHx8ICFzY3JpcHQpCisgICAgICAgICAgICAgICAgICAgIHJldHVy
bjsKKwogICAgICAgICAgICAgICAgIHZhbGlkYXRlTm9ybWFsUmVsYXRpb25zaGlwKHJlc291cmNl
LCBzY3JpcHQpOwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdCghc2Ny
aXB0LnNvdXJjZVVSTCwgIlNjcmlwdCBzaG91bGQgbm90IGhhdmUgYSBzb3VyY2VVUkwuIik7CiAK
QEAgLTc4LDI0ICs4NSwzMSBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2Fz
ZSh7CiAgICAgICAgIG5hbWU6ICJOYW1lZFNjcmlwdFdpdGhSZXNvdXJjZSIsCiAgICAgICAgIGRl
c2NyaXB0aW9uOiAiTm9ybWFsIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGEgbmFtZWQgc2NyaXB0IGFu
ZCBhIHJlc291cmNlLiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAg
ICAgICAgICAgIGxldCBzY3JpcHQgPSBudWxsLCByZXNvdXJjZSA9IG51bGw7CisgICAgICAgIHRl
c3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBsZXQgc2NyaXB0ID0gbnVsbDsKKyAg
ICAgICAgICAgIGxldCByZXNvdXJjZSA9IG51bGw7CiAKICAgICAgICAgICAgIFdlYkluc3BlY3Rv
ci5kZWJ1Z2dlck1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJN
YW5hZ2VyLkV2ZW50LlNjcmlwdEFkZGVkLCBzY3JpcHRMaXN0ZW5lcik7Ci0gICAgICAgICAgICBX
ZWJJbnNwZWN0b3IuRnJhbWUuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkZy
YW1lLkV2ZW50LlJlc291cmNlV2FzQWRkZWQsIChldmVudCkgPT4gewotICAgICAgICAgICAgICAg
IEluc3BlY3RvclRlc3QucGFzcygiUmVzb3VyY2Ugd2FzIGFkZGVkLiIpOworICAgICAgICAgICAg
V2ViSW5zcGVjdG9yLkZyYW1lLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkZyYW1lLkV2ZW50LlJl
c291cmNlV2FzQWRkZWQpCisgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAg
ICAgICAgICByZXNvdXJjZSA9IGV2ZW50LmRhdGEucmVzb3VyY2U7CisgICAgICAgICAgICAgICAg
dmFsaWRhdGVSZWxhdGlvbnNoaXAoKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgICAgICBm
dW5jdGlvbiBzY3JpcHRMaXN0ZW5lcihldmVudCkgewogICAgICAgICAgICAgICAgIGlmICghZXZl
bnQuZGF0YS5zY3JpcHQudXJsKQogICAgICAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
ICAgICAgICAgSW5zcGVjdG9yVGVzdC5wYXNzKCJTY3JpcHQgd2FzIGFkZGVkLiIpOworCisgICAg
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KCFzY3JpcHQsICJPbmx5IG9uZSBT
Y3JpcHQgc2hvdWxkIGJlIGFkZGVkLiIpOworCiAgICAgICAgICAgICAgICAgc2NyaXB0ID0gZXZl
bnQuZGF0YS5zY3JpcHQ7CiAgICAgICAgICAgICAgICAgdmFsaWRhdGVSZWxhdGlvbnNoaXAoKTsK
ICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgZnVuY3Rpb24gdmFsaWRhdGVSZWxhdGlvbnNo
aXAoKSB7CisgICAgICAgICAgICAgICAgaWYgKCFyZXNvdXJjZSB8fCAhc2NyaXB0KQorICAgICAg
ICAgICAgICAgICAgICByZXR1cm47CisKICAgICAgICAgICAgICAgICB2YWxpZGF0ZU5vcm1hbFJl
bGF0aW9uc2hpcChyZXNvdXJjZSwgc2NyaXB0KTsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JU
ZXN0LmV4cGVjdFRoYXQoc2NyaXB0LnNvdXJjZVVSTCA9PT0gImZvby5qcyIsICJTY3JpcHQgc2hv
dWxkIGhhdmUgYSBzb3VyY2VVUkwuIik7CiAgICAgICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRl
YnVnZ2VyTWFuYWdlci5yZW1vdmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1h
bmFnZXIuRXZlbnQuU2NyaXB0QWRkZWQsIHNjcmlwdExpc3RlbmVyLCBudWxsKTsKQEAgLTEwOSw3
ICsxMjMsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAg
ICAgIG5hbWU6ICJTY3JpcHRXaXRob3V0UmVzb3VyY2UiLAogICAgICAgICBkZXNjcmlwdGlvbjog
IkEgbmFtZWQgZXZhbCBkb2VzIG5vdCBoYXZlIGEgcmVzb3VyY2UuIiwKLSAgICAgICAgdGVzdDog
KHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgewog
ICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hZGRFdmVudExpc3RlbmVy
KFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuU2NyaXB0QWRkZWQsIHNjcmlwdExp
c3RlbmVyKTsKICAgICAgICAgICAgIGxldCByZXNvdXJjZUxpc3RlbmVyID0gV2ViSW5zcGVjdG9y
LkZyYW1lLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5GcmFtZS5FdmVudC5S
ZXNvdXJjZVdhc0FkZGVkLCAoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JU
ZXN0LmZhaWwoIlJlc291cmNlIHNob3VsZCBub3QgYmUgYWRkZWQuIik7CkBAIC0xMzgsNyArMTUy
LDcgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBu
YW1lOiAiRHluYW1pY2FsbHlBZGRlZFNjcmlwdEVsZW1lbnROb1Jlc291cmNlIiwKICAgICAgICAg
ZGVzY3JpcHRpb246ICJBIGR5bmFtaWNhbGx5IGFkZGVkIHNjcmlwdCBlbGVtZW50IGhhcyBubyBy
ZXNvdXJjZS4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAg
IHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdn
ZXJNYW5hZ2VyLmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5F
dmVudC5TY3JpcHRBZGRlZCwgc2NyaXB0TGlzdGVuZXIpOwogCiAgICAgICAgICAgICBmdW5jdGlv
biBzY3JpcHRMaXN0ZW5lcihldmVudCkgewpAQCAtMTYxLDcgKzE3NSw3IEBAIGZ1bmN0aW9uIHRl
c3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIkRvY3VtZW50V2l0
aElubGluZVNjcmlwdHMiLAogICAgICAgICBkZXNjcmlwdGlvbjogIkEgZG9jdW1lbnQgcmVzb3Vy
Y2UgbWF5IGJlIGFzc29jaWF0ZWQgd2l0aCBtdWx0aXBsZSBpbmxpbmUgc2NyaXB0cy4iLAotICAg
ICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwg
cmVqZWN0KSB7CiAgICAgICAgICAgICBsZXQgbWFpblJlc291cmNlID0gV2ViSW5zcGVjdG9yLmZy
YW1lUmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZS5tYWluUmVzb3VyY2U7CiAgICAgICAgICAgICBs
ZXQgc2NyaXB0cyA9IG1haW5SZXNvdXJjZS5zY3JpcHRzLnNsaWNlKCkuc29ydCgoYSwgYikgPT4g
YS5yYW5nZS5zdGFydExpbmUgLSBiLnJhbmdlLnN0YXJ0TGluZSk7CiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9zdGFjay10cmFjZS5odG1sIGIvTGF5b3V0VGVzdHMv
aW5zcGVjdG9yL21vZGVsL3N0YWNrLXRyYWNlLmh0bWwKaW5kZXggMGJkODA5ZmVmY2FkODNmMDZi
Y2EzOGY4NjQ0YTE1ZjFiMDc4MmU0NS4uZjI5YzhlZjE0MDY3N2Q3OTAwZWZkNTBjMzhkNzYxZGE3
MDdmZDFiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3N0YWNrLXRy
YWNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3N0YWNrLXRyYWNlLmh0
bWwKQEAgLTMwLDkgKzMwLDkgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENh
c2UoewogICAgICAgICBuYW1lOiAiV2ViSW5zcGVjdG9yLkNvbnNvbGVNZXNzYWdlLlN0YWNrVHJh
Y2UiLAogICAgICAgICBkZXNjcmlwdGlvbjogIlRlc3Qgd2UgY2FuIGNyZWF0ZSBhIFN0YWNrVHJh
Y2UgZnJvbSBjb25zb2xlIG1lc3NhZ2VzIChDb25zb2xlLlN0YWNrVHJhY2UpLiIsCi0gICAgICAg
IHRlc3Q6IChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAgICAgICAgIEluc3BlY3RvclRlc3Qu
ZXZhbHVhdGVJblBhZ2UoInRyaWdnZXJDb25zb2xlTWVzc2FnZSgpIik7Ci0gICAgICAgICAgICBX
ZWJJbnNwZWN0b3IubG9nTWFuYWdlci5zaW5nbGVGaXJlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0
b3IuTG9nTWFuYWdlci5FdmVudC5NZXNzYWdlQWRkZWQsIGZ1bmN0aW9uIGFkZExpc3RlbmVyKGV2
ZW50KSB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBXZWJJ
bnNwZWN0b3IubG9nTWFuYWdlci5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5Mb2dNYW5hZ2VyLkV2
ZW50Lk1lc3NhZ2VBZGRlZCkKKyAgICAgICAgICAgIC50aGVuKChldmVudCkgPT4gewogICAgICAg
ICAgICAgICAgIC8vIFRyYWNlIG1lc3NhZ2Ugc2hvdWxkIGFsd2F5cyBoYXZlIGEgc3RhY2sgdHJh
Y2UuCiAgICAgICAgICAgICAgICAgbGV0IGNvbnNvbGVNZXNzYWdlID0gZXZlbnQuZGF0YS5tZXNz
YWdlOwogICAgICAgICAgICAgICAgIGxldCBzdGFja1RyYWNlID0gY29uc29sZU1lc3NhZ2Uuc3Rh
Y2tUcmFjZTsKQEAgLTQ1LDggKzQ1LDEwIEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICAgICAg
ICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdCghc3RhY2tUcmFjZS5jYWxsRnJhbWVzWzBdLnNj
b3BlQ2hhaW4ubGVuZ3RoLCAiQ2FsbEZyYW1lIGluIFN0YWNrVHJhY2UgaGFzIG5vIHNjb3BlQ2hh
aW4uIik7CiAKICAgICAgICAgICAgICAgICBsb2dTdGFja1RyYWNlKGNvbnNvbGVNZXNzYWdlLnN0
YWNrVHJhY2UpOwotICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKLSAgICAgICAgICAgIH0pOwor
ICAgICAgICAgICAgfSkKKyAgICAgICAgICAgIC50aGVuKHJlc29sdmUsIHJlamVjdCk7CisKKyAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoInRyaWdnZXJDb25zb2xlTWVz
c2FnZSgpIik7CiAgICAgICAgIH0KICAgICB9KTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>289274</attachid>
            <date>2016-09-19 16:23:04 -0700</date>
            <delta_ts>2016-09-20 10:31:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162074-20160919162019.patch</filename>
            <type>text/plain</type>
            <size>18369</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjOTU5YjMyMmFlMjAyYzg5MjEzMjMxYzNlY2Q4YjhlOTY5YjNjYjAzLi5mMmMyNTZj
MDk1MDc5YzQ3ZTI5NDQ4ZmNjYzBlMTg4MDdlNjI5ZTRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMTYtMDktMTkgIERldmluIFJvdXNzbyAgPGRjcm91c3NvK3dlYmtpdEBnbWFpbC5jb20+CisK
KyAgICAgICAgV2ViIEluc3BlY3RvcjogYWRvcHQgT2JqZWN0LmF3YWl0RXZlbnQgaW4gTGF5b3V0
VGVzdHMvaW5zcGVjdG9yL21vZGVsCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNjIwNzQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBSZXBsYWNlIGluc3RhbmNlcyBvZiBzaW5nbGVGaXJlRXZlbnRMaXN0ZW5l
ciB3aXRoIGF3YWl0RXZlbnQgYW5kIHVzZSBwcm9taXNlIGxvZ2ljIHRvIG1ha2UKKyAgICAgICAg
dGVzdHMgbW9yZSByZWFkYWJsZS4KKworICAgICAgICAqIGluc3BlY3Rvci9tb2RlbC9mcmFtZS1l
eHRyYS1zY3JpcHRzLmh0bWw6CisgICAgICAgICogaW5zcGVjdG9yL21vZGVsL3Njb3BlLWNoYWlu
LW5vZGUuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvbW9kZWwvc2NyaXB0LXJlc291cmNlLXJl
bGF0aW9uc2hpcC1leHBlY3RlZC50eHQ6CisgICAgICAgICogaW5zcGVjdG9yL21vZGVsL3Njcmlw
dC1yZXNvdXJjZS1yZWxhdGlvbnNoaXAuaHRtbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvbW9kZWwv
c3RhY2stdHJhY2UuaHRtbDoKKwogMjAxNi0wOS0xNiAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFw
cGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIGdhcmRlbmluZzsgZW5hYmxlIG5ld2x5IHBh
c3NpbmcgbWVkaWEvbWVkaWEtc291cmNlLyB0ZXN0cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2luc3BlY3Rvci9tb2RlbC9mcmFtZS1leHRyYS1zY3JpcHRzLmh0bWwgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3IvbW9kZWwvZnJhbWUtZXh0cmEtc2NyaXB0cy5odG1sCmluZGV4IDM1M2M2NDAyMmVh
YTU2ZmM2YmVlYmVhNTQzZTA4NTcyNjE1YTdjNjMuLjZlYjliN2E3M2Q5NTI4ZjY4ZjFlYmQxNWNm
YzFkNjE5ZGY2NzY3ZDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9m
cmFtZS1leHRyYS1zY3JpcHRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVs
L2ZyYW1lLWV4dHJhLXNjcmlwdHMuaHRtbApAQCAtMTYsNyArMTYsNyBAQCBmdW5jdGlvbiB0ZXN0
KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5hbWU6ICJGcmFtZUhhc05vRXh0
cmFTY3JpcHRzWWV0IiwKICAgICAgICAgZGVzY3JpcHRpb246ICJObyBleHRyYSBzY3JpcHRzIHll
dC4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CisgICAgICAgIHRlc3Qo
cmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgICAgICBsZXQgbWFpbkZyYW1lID0gV2ViSW5zcGVj
dG9yLmZyYW1lUmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZTsKICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuZXhwZWN0VGhhdChtYWluRnJhbWUuZXh0cmFTY3JpcHRzLmxlbmd0aCA9PT0gMCwgIk1h
aW4gZnJhbWUgc2hvdWxkIGhhdmUgbm8gZHluYW1pYyBzY3JpcHRzLiIpOwogICAgICAgICAgICAg
cmVzb2x2ZSgpOwpAQCAtMjYsMTcgKzI2LDE4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRl
LmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIkFkZEV4dHJhU2NyaXB0IiwKICAgICAgICAg
ZGVzY3JpcHRpb246ICJBZGQgZXh0cmEgc2NyaXB0LiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZl
LCByZWplY3QpID0+IHsgICAgICAgICAgICAKLSAgICAgICAgICAgIFdlYkluc3BlY3Rvci5mcmFt
ZVJlc291cmNlTWFuYWdlci5tYWluRnJhbWUuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5z
cGVjdG9yLkZyYW1lLkV2ZW50LkV4dHJhU2NyaXB0QWRkZWQsIChldmVudCkgPT4geworICAgICAg
ICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmZyYW1l
UmVzb3VyY2VNYW5hZ2VyLm1haW5GcmFtZS5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5GcmFtZS5F
dmVudC5FeHRyYVNjcmlwdEFkZGVkKQorICAgICAgICAgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAg
ICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5wYXNzKCJFeHRyYVNjcmlwdEFkZGVkIGV2ZW50
IGZpcmVkLiIpOwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChldmVu
dC5kYXRhLnNjcmlwdC5keW5hbWljYWxseUFkZGVkU2NyaXB0RWxlbWVudCwgIlNjcmlwdCBzaG91
bGQgaWRlbnRpZnkgYXMgZHluYW1pYy4iKTsKLSAgICAgICAgICAgIH0pOwogCi0gICAgICAgICAg
ICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJ0cmlnZ2VyQWRkU2NyaXB0RWxlbWVudCgp
IiwgKCkgPT4gewogICAgICAgICAgICAgICAgIGxldCBtYWluRnJhbWUgPSBXZWJJbnNwZWN0b3Iu
ZnJhbWVSZXNvdXJjZU1hbmFnZXIubWFpbkZyYW1lOwogICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuZXhwZWN0VGhhdChtYWluRnJhbWUuZXh0cmFTY3JpcHRzLmxlbmd0aCA9PT0gMSwgIk1h
aW4gZnJhbWUgc2hvdWxkIGhhdmUgMSBkeW5hbWljIHNjcmlwdC4iKTsKLSAgICAgICAgICAgICAg
ICByZXNvbHZlKCk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIH0pCisgICAgICAgICAg
ICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2
YWx1YXRlSW5QYWdlKCJ0cmlnZ2VyQWRkU2NyaXB0RWxlbWVudCgpIik7CiAgICAgICAgIH0KICAg
ICB9KTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3Njb3BlLWNo
YWluLW5vZGUuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9zY29wZS1jaGFpbi1u
b2RlLmh0bWwKaW5kZXggZjU3YTVlMDM0NjBmZTI1NjQ5ZTllNzYyMzNkOGFiOWJmMWU3NTliNS4u
NWY2YzI5YWQwZTQyNzJhNGE5ZWM1ZTJlNGQwYTI2OWI2YTA5N2QxZSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3Njb3BlLWNoYWluLW5vZGUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvc2NvcGUtY2hhaW4tbm9kZS5odG1sCkBAIC0yMyw3ICsy
Myw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICByZXR1cm4gIlVuZXhwZWN0ZWQgU2NvcGUg
VHlwZSI7CiAgICAgfQogCi0gICAgZnVuY3Rpb24gaGFydmVzdFNjb3BlQ2hhaW4oc2NvcGVDaGFp
bikgeyAgICAgICAgCisgICAgZnVuY3Rpb24gaGFydmVzdFNjb3BlQ2hhaW4oc2NvcGVDaGFpbikg
ewogICAgICAgICBsZXQgcHJvbWlzZXMgPSBbXTsKICAgICAgICAgZm9yIChsZXQgc2NvcGUgb2Yg
c2NvcGVDaGFpbikgewogICAgICAgICAgICAgcHJvbWlzZXMucHVzaChuZXcgUHJvbWlzZSgocmVz
b2x2ZSwgcmVqZWN0KSA9PiB7CkBAIC00MCw3ICs0MCw4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAg
IH0KIAogICAgIGZ1bmN0aW9uIGxvZ1Njb3BlQ2hhaW4oc2NvcGVDaGFpbikgewotICAgICAgICBy
ZXR1cm4gaGFydmVzdFNjb3BlQ2hhaW4oc2NvcGVDaGFpbikudGhlbigocmVzdWx0cykgPT4gewor
ICAgICAgICByZXR1cm4gaGFydmVzdFNjb3BlQ2hhaW4oc2NvcGVDaGFpbikKKyAgICAgICAgLnRo
ZW4oKHJlc3VsdHMpID0+IHsKICAgICAgICAgICAgIEluc3BlY3RvclRlc3QubG9nKCJTQ09QRSBD
SEFJTjoiKTsKICAgICAgICAgICAgIGZvciAobGV0IHtzY29wZSwgcHJvcGVydHlEZXNjcmlwdG9y
c30gb2YgcmVzdWx0cykgewogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QubG9nKGAgICAg
JHtzY29wZVR5cGVUb1N0cmluZyhzY29wZS50eXBlKX1gKTsKQEAgLTU5LDY5ICs2MCw3NSBAQCBm
dW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5hZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5hbWU6ICJX
ZWJJbnNwZWN0b3IuU2NvcGVDaGFpbk5vZGUuQWxsVHlwZXMiLAogICAgICAgICBkZXNjcmlwdGlv
bjogIlRlc3RzIGZvciBlYWNoIG9mIHRoZSBkaWZmZXJlbnQgc2NvcGUgY2hhaW4gbm9kZSB0eXBl
cy4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBJ
bnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJzZXRUaW1lb3V0KHRlc3RBbGxTY29wZXMpIik7
Ci0gICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnNpbmdsZUZpcmVFdmVu
dExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuQ2FsbEZyYW1lc0Rp
ZENoYW5nZSwgKGV2ZW50KSA9PiB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7Cisg
ICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5z
cGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5FdmVudC5DYWxsRnJhbWVzRGlkQ2hhbmdlKQorICAgICAg
ICAgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgbGV0IHNjb3BlQ2hhaW4g
PSBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmFjdGl2ZUNhbGxGcmFtZS5zY29wZUNoYWlu
OwogICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwZWN0VGhhdChzY29wZUNoYWluLmxl
bmd0aCA9PT0gMTMsICJTY29wZUNoYWluIHNob3VsZCBoYXZlIDEzIHNjb3Blcy4iKTsKLSAgICAg
ICAgICAgICAgICBsb2dTY29wZUNoYWluKHNjb3BlQ2hhaW4pLnRoZW4oKHJlc3VsdCkgPT4gewot
ICAgICAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnJlc3VtZSgp
OwotICAgICAgICAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnNpbmds
ZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuUmVz
dW1lZCwgKGV2ZW50KSA9PiB7Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKCk7Ci0g
ICAgICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAgICAgIH0pOwotICAgICAgICAgICAg
fSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIGxvZ1Njb3BlQ2hhaW4oc2NvcGVDaGFpbik7Cisg
ICAgICAgICAgICB9KQorICAgICAgICAgICAgLnRoZW4oKHJlc3VsdCkgPT4geworICAgICAgICAg
ICAgICAgIGxldCBwcm9taXNlID0gV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hd2FpdEV2
ZW50KFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuUmVzdW1lZCk7CisgICAgICAg
ICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5yZXN1bWUoKTsKKyAgICAgICAg
ICAgICAgICByZXR1cm4gcHJvbWlzZTsKKyAgICAgICAgICAgIH0pCisgICAgICAgICAgICAudGhl
bihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRl
SW5QYWdlKCJzZXRUaW1lb3V0KHRlc3RBbGxTY29wZXMpIik7CiAgICAgICAgIH0KICAgICB9KTsK
IAogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIldlYkluc3BlY3Rvci5T
Y29wZUNoYWluTm9kZS5GdW5jdGlvbk5hbWVJbkZ1bmN0aW9uRXhwcmVzc2lvbiIsCiAgICAgICAg
IGRlc2NyaXB0aW9uOiAiVGVzdHMgdGhhdCB0aGVyZSBzaG91bGQgYmUgYSBGdW5jdGlvbk5hbWUg
c2NvcGUgaW5zaWRlIGEgZnVuY3Rpb24gZXhwcmVzc2lvbi4iLAotICAgICAgICB0ZXN0OiAocmVz
b2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5Q
YWdlKCJzZXRUaW1lb3V0KHRlc3RGdW5jdGlvbk5hbWVTY29wZTEpIik7Ci0gICAgICAgICAgICBX
ZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYklu
c3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuQ2FsbEZyYW1lc0RpZENoYW5nZSwgKGV2ZW50
KSA9PiB7CisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBXZWJJ
bnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkRlYnVnZ2Vy
TWFuYWdlci5FdmVudC5DYWxsRnJhbWVzRGlkQ2hhbmdlKQorICAgICAgICAgICAgLnRoZW4oKGV2
ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgbGV0IHNjb3BlQ2hhaW4gPSBXZWJJbnNwZWN0b3Iu
ZGVidWdnZXJNYW5hZ2VyLmFjdGl2ZUNhbGxGcmFtZS5zY29wZUNoYWluOwotICAgICAgICAgICAg
ICAgIGxvZ1Njb3BlQ2hhaW4oc2NvcGVDaGFpbikudGhlbigocmVzdWx0KSA9PiB7Ci0gICAgICAg
ICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIucmVzdW1lKCk7Ci0gICAg
ICAgICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuc2luZ2xlRmlyZUV2
ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5FdmVudC5SZXN1bWVkLCAo
ZXZlbnQpID0+IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKLSAgICAgICAg
ICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9KTsKKyAg
ICAgICAgICAgICAgICByZXR1cm4gbG9nU2NvcGVDaGFpbihzY29wZUNoYWluKTsKKyAgICAgICAg
ICAgIH0pCisgICAgICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7CisgICAgICAgICAgICAgICAg
bGV0IHByb21pc2UgPSBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmF3YWl0RXZlbnQoV2Vi
SW5zcGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5FdmVudC5SZXN1bWVkKTsKKyAgICAgICAgICAgICAg
ICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLnJlc3VtZSgpOworICAgICAgICAgICAgICAg
IHJldHVybiBwcm9taXNlOworICAgICAgICAgICAgfSkKKyAgICAgICAgICAgIC50aGVuKHJlc29s
dmUsIHJlamVjdCk7CisKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2Uo
InNldFRpbWVvdXQodGVzdEZ1bmN0aW9uTmFtZVNjb3BlMSkiKTsKICAgICAgICAgfQogICAgIH0p
OwogCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1lOiAiV2ViSW5zcGVjdG9y
LlNjb3BlQ2hhaW5Ob2RlLkZ1bmN0aW9uTmFtZUluQ2xhc3NNZXRob2QiLAogICAgICAgICBkZXNj
cmlwdGlvbjogIlRlc3RzIHRoYXQgdGhlcmUgc2hvdWxkIGJlIGEgRnVuY3Rpb25OYW1lIHNjb3Bl
IGluc2lkZSBhIGNsYXNzIG1ldGhvZC4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0
KSA9PiB7Ci0gICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJzZXRUaW1l
b3V0KHRlc3RGdW5jdGlvbk5hbWVTY29wZTIpIik7Ci0gICAgICAgICAgICBXZWJJbnNwZWN0b3Iu
ZGVidWdnZXJNYW5hZ2VyLnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1
Z2dlck1hbmFnZXIuRXZlbnQuQ2FsbEZyYW1lc0RpZENoYW5nZSwgKGV2ZW50KSA9PiB7CisgICAg
ICAgIHRlc3QocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVi
dWdnZXJNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5FdmVu
dC5DYWxsRnJhbWVzRGlkQ2hhbmdlKQorICAgICAgICAgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAg
ICAgICAgICAgICAgICAgbGV0IHNjb3BlQ2hhaW4gPSBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5h
Z2VyLmFjdGl2ZUNhbGxGcmFtZS5zY29wZUNoYWluOwotICAgICAgICAgICAgICAgIGxvZ1Njb3Bl
Q2hhaW4oc2NvcGVDaGFpbikudGhlbigocmVzdWx0KSA9PiB7Ci0gICAgICAgICAgICAgICAgICAg
IFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIucmVzdW1lKCk7Ci0gICAgICAgICAgICAgICAg
ICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIo
V2ViSW5zcGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5FdmVudC5SZXN1bWVkLCAoZXZlbnQpID0+IHsK
LSAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTsKLSAgICAgICAgICAgICAgICAgICAg
fSk7Ci0gICAgICAgICAgICAgICAgfSk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gbG9nU2NvcGVDaGFpbihzY29wZUNoYWluKTsKKyAgICAgICAgICAgIH0pCisgICAg
ICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7CisgICAgICAgICAgICAgICAgbGV0IHByb21pc2Ug
PSBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkRl
YnVnZ2VyTWFuYWdlci5FdmVudC5SZXN1bWVkKTsKKyAgICAgICAgICAgICAgICBXZWJJbnNwZWN0
b3IuZGVidWdnZXJNYW5hZ2VyLnJlc3VtZSgpOworICAgICAgICAgICAgICAgIHJldHVybiBwcm9t
aXNlOworICAgICAgICAgICAgfSkKKyAgICAgICAgICAgIC50aGVuKHJlc29sdmUsIHJlamVjdCk7
CisKKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoInNldFRpbWVvdXQo
dGVzdEZ1bmN0aW9uTmFtZVNjb3BlMikiKTsKICAgICAgICAgfQogICAgIH0pOwogCiAgICAgc3Vp
dGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1lOiAiV2ViSW5zcGVjdG9yLlNjb3BlQ2hhaW5O
b2RlLkJsb2NrU2NvcGVzIiwKICAgICAgICAgZGVzY3JpcHRpb246ICJUZXN0cyBmb3IgYSBCbG9j
ayBzY29wZSBpbnNpZGUgYWxsIHRoZSBkaWZmZXJlbnQgdHlwZXMgb2YgYmxvY2tzLiIsCi0gICAg
ICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAgICAgICAgIEluc3BlY3RvclRl
c3QuZXZhbHVhdGVJblBhZ2UoInNldFRpbWVvdXQodGVzdEJsb2NrU2NvcGVzKSIpOwotICAgICAg
ICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hZGRFdmVudExpc3RlbmVyKFdlYklu
c3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuQWN0aXZlQ2FsbEZyYW1lRGlkQ2hhbmdlLCBj
YWxsRnJhbWVzRGlkQ2hhbmdlTGlzdGVuZXIpOwotCisgICAgICAgIHRlc3QocmVzb2x2ZSwgcmVq
ZWN0KSB7CiAgICAgICAgICAgICBsZXQgcGF1c2VDb3VudCA9IDA7CiAgICAgICAgICAgICBsZXQg
cGF1c2VFdmVudHNFeHBlY3RlZCA9IDE5OwogICAgICAgICAgICAgZnVuY3Rpb24gY2FsbEZyYW1l
c0RpZENoYW5nZUxpc3RlbmVyKGV2ZW50KSB7CiAgICAgICAgICAgICAgICAgaWYgKCFXZWJJbnNw
ZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmFjdGl2ZUNhbGxGcmFtZSkKICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuOwogCi0gICAgICAgICAgICAgICAgcGF1c2VDb3VudCsrOyAgICAgICAgICAgICAg
ICAKKyAgICAgICAgICAgICAgICBwYXVzZUNvdW50Kys7CiAgICAgICAgICAgICAgICAgbGV0IHNj
b3BlQ2hhaW4gPSBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2VyLmFjdGl2ZUNhbGxGcmFtZS5z
Y29wZUNoYWluOwogCiAgICAgICAgICAgICAgICAgLy8gRmlyc3QsIG5vcm1hbCBmdW5jdGlvbiBz
Y29wZS4KQEAgLTE0OSwxMCArMTU2LDE1IEBAIGZ1bmN0aW9uIHRlc3QoKQogCiAgICAgICAgICAg
ICAgICAgLy8gUHJpbnQgb3V0IHRoZSBmdWxsIHNjb3BlIG9mIHRoZSBsYXN0IGZldyB3aGVyZSB0
aGVyZSBhcmUgbmVzdGVkIG9yIGJ1cmllZCBibG9jayBzY29wZXMuCiAgICAgICAgICAgICAgICAg
SW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KHNjb3BlQ2hhaW4uc29tZSgoc2NvcGVDaGFpbikgPT4g
c2NvcGVDaGFpbi50eXBlID09PSBXZWJJbnNwZWN0b3IuU2NvcGVDaGFpbk5vZGUuVHlwZS5CbG9j
ayksIGBQYXVzZSAjJHtwYXVzZUNvdW50fSAtIENvbnRhaW5zIGEgQmxvY2sgc2NvcGUuYCk7Ci0g
ICAgICAgICAgICAgICAgbG9nU2NvcGVDaGFpbihzY29wZUNoYWluKS50aGVuKChyZXN1bHQpID0+
IHsKKworICAgICAgICAgICAgICAgIGxvZ1Njb3BlQ2hhaW4oc2NvcGVDaGFpbikKKyAgICAgICAg
ICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7CiAgICAgICAgICAgICAgICAgICAgIFdlYkluc3Bl
Y3Rvci5kZWJ1Z2dlck1hbmFnZXIucmVzdW1lKCk7CiAgICAgICAgICAgICAgICAgfSk7CiAgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuYWRk
RXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2ZW50LkFjdGl2ZUNh
bGxGcmFtZURpZENoYW5nZSwgY2FsbEZyYW1lc0RpZENoYW5nZUxpc3RlbmVyKTsKKyAgICAgICAg
ICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoInNldFRpbWVvdXQodGVzdEJsb2NrU2Nv
cGVzKSIpOwogICAgICAgICB9CiAgICAgfSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2lu
c3BlY3Rvci9tb2RlbC9zY3JpcHQtcmVzb3VyY2UtcmVsYXRpb25zaGlwLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9zY3JpcHQtcmVzb3VyY2UtcmVsYXRpb25zaGlw
LWV4cGVjdGVkLnR4dAppbmRleCBlZDYyMjIwMDMyY2FlNzFkMzBiMWU1ZjFhYzQxMTMwN2Y2N2Jk
M2M5Li44NTBhNjFjMWViYmJkY2NkMWE4N2M5ZmQ0ZDQwNWZhZWNhNWM0ZGY3IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvc2NyaXB0LXJlc291cmNlLXJlbGF0aW9uc2hp
cC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3NjcmlwdC1y
ZXNvdXJjZS1yZWxhdGlvbnNoaXAtZXhwZWN0ZWQudHh0CkBAIC0zLDggKzMsNyBAQCBXZWJJbnNw
ZWN0b3IuU2NyaXB0IGFuZCBXZWJJbnNwZWN0b3IuUmVzb3VyY2UgcmVsYXRpb25zaGlwLgogCiA9
PSBSdW5uaW5nIHRlc3Qgc3VpdGU6IFdlYkluc3BlY3Rvci5TY3JpcHQgYW5kIFdlYkluc3BlY3Rv
ci5SZXNvdXJjZSByZWxhdGlvbnNoaXAKIC0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBTY3JpcHRXaXRo
UmVzb3VyY2UKLVBBU1M6IFJlc291cmNlIHdhcyBhZGRlZC4KLVBBU1M6IFNjcmlwdCB3YXMgYWRk
ZWQuCitQQVNTOiBPbmx5IG9uZSBTY3JpcHQgc2hvdWxkIGJlIGFkZGVkLgogUEFTUzogUmVzb3Vy
Y2UgYW5kIFNjcmlwdCBoYXZlIHRoZSBzYW1lIFVSTC4KIFBBU1M6IFJlc291cmNlIHNob3VsZCBi
ZSByZWxhdGVkIHRvIG9uZSBzY3JpcHQuCiBQQVNTOiBSZXNvdXJjZSBzaG91bGQgYmUgcmVsYXRl
ZCB0byB0aGUgbmV3bHkgYWRkZWQgc2NyaXB0LgpAQCAtMTIsOCArMTEsNyBAQCBQQVNTOiBTY3Jp
cHQgc2hvdWxkIGJlIHJlbGF0ZWQgdG8gdGhlIHJlc291cmNlLgogUEFTUzogU2NyaXB0IHNob3Vs
ZCBub3QgaGF2ZSBhIHNvdXJjZVVSTC4KIAogLS0gUnVubmluZyB0ZXN0IGNhc2U6IE5hbWVkU2Ny
aXB0V2l0aFJlc291cmNlCi1QQVNTOiBSZXNvdXJjZSB3YXMgYWRkZWQuCi1QQVNTOiBTY3JpcHQg
d2FzIGFkZGVkLgorUEFTUzogT25seSBvbmUgU2NyaXB0IHNob3VsZCBiZSBhZGRlZC4KIFBBU1M6
IFJlc291cmNlIGFuZCBTY3JpcHQgaGF2ZSB0aGUgc2FtZSBVUkwuCiBQQVNTOiBSZXNvdXJjZSBz
aG91bGQgYmUgcmVsYXRlZCB0byBvbmUgc2NyaXB0LgogUEFTUzogUmVzb3VyY2Ugc2hvdWxkIGJl
IHJlbGF0ZWQgdG8gdGhlIG5ld2x5IGFkZGVkIHNjcmlwdC4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2luc3BlY3Rvci9tb2RlbC9zY3JpcHQtcmVzb3VyY2UtcmVsYXRpb25zaGlwLmh0bWwgYi9M
YXlvdXRUZXN0cy9pbnNwZWN0b3IvbW9kZWwvc2NyaXB0LXJlc291cmNlLXJlbGF0aW9uc2hpcC5o
dG1sCmluZGV4IGMzZmZhNjUyYzVmNTk2MzU4MDZiYjQ3MmY0MDVmMTkwODViNjE1NjEuLmNjMDA3
MDU1NjhlOGIwMjEyYzg4ODRmMWExNjU3MGRmMzNiYTY5ZDggMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2luc3BlY3Rvci9tb2RlbC9zY3JpcHQtcmVzb3VyY2UtcmVsYXRpb25zaGlwLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL21vZGVsL3NjcmlwdC1yZXNvdXJjZS1yZWxhdGlvbnNo
aXAuaHRtbApAQCAtNDYsMjQgKzQ2LDMxIEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRlLmFk
ZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIlNjcmlwdFdpdGhSZXNvdXJjZSIsCiAgICAgICAg
IGRlc2NyaXB0aW9uOiAiTm9ybWFsIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGEgc2NyaXB0IGFuZCBh
IHJlc291cmNlLiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3QpID0+IHsKLSAgICAg
ICAgICAgIGxldCBzY3JpcHQgPSBudWxsLCByZXNvdXJjZSA9IG51bGw7CisgICAgICAgIHRlc3Qo
cmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBsZXQgc2NyaXB0ID0gbnVsbDsKKyAgICAg
ICAgICAgIGxldCByZXNvdXJjZSA9IG51bGw7CiAgICAgICAgICAgICAKICAgICAgICAgICAgIFdl
Ykluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3Iu
RGVidWdnZXJNYW5hZ2VyLkV2ZW50LlNjcmlwdEFkZGVkLCBzY3JpcHRMaXN0ZW5lcik7Ci0gICAg
ICAgICAgICBXZWJJbnNwZWN0b3IuRnJhbWUuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5z
cGVjdG9yLkZyYW1lLkV2ZW50LlJlc291cmNlV2FzQWRkZWQsIChldmVudCkgPT4gewotICAgICAg
ICAgICAgICAgIEluc3BlY3RvclRlc3QucGFzcygiUmVzb3VyY2Ugd2FzIGFkZGVkLiIpOworICAg
ICAgICAgICAgV2ViSW5zcGVjdG9yLkZyYW1lLmF3YWl0RXZlbnQoV2ViSW5zcGVjdG9yLkZyYW1l
LkV2ZW50LlJlc291cmNlV2FzQWRkZWQpCisgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsK
ICAgICAgICAgICAgICAgICByZXNvdXJjZSA9IGV2ZW50LmRhdGEucmVzb3VyY2U7CisgICAgICAg
ICAgICAgICAgdmFsaWRhdGVSZWxhdGlvbnNoaXAoKTsKICAgICAgICAgICAgIH0pOwogICAgICAg
ICAgICAgCiAgICAgICAgICAgICBmdW5jdGlvbiBzY3JpcHRMaXN0ZW5lcihldmVudCkgewogICAg
ICAgICAgICAgICAgIGlmICghZXZlbnQuZGF0YS5zY3JpcHQudXJsKQogICAgICAgICAgICAgICAg
ICAgICByZXR1cm47Ci0gICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5wYXNzKCJTY3JpcHQg
d2FzIGFkZGVkLiIpOworCisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0
KCFzY3JpcHQsICJPbmx5IG9uZSBTY3JpcHQgc2hvdWxkIGJlIGFkZGVkLiIpOworCiAgICAgICAg
ICAgICAgICAgc2NyaXB0ID0gZXZlbnQuZGF0YS5zY3JpcHQ7CiAgICAgICAgICAgICAgICAgdmFs
aWRhdGVSZWxhdGlvbnNoaXAoKTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgZnVuY3Rp
b24gdmFsaWRhdGVSZWxhdGlvbnNoaXAoKSB7CisgICAgICAgICAgICAgICAgaWYgKCFyZXNvdXJj
ZSB8fCAhc2NyaXB0KQorICAgICAgICAgICAgICAgICAgICByZXR1cm47CisKICAgICAgICAgICAg
ICAgICB2YWxpZGF0ZU5vcm1hbFJlbGF0aW9uc2hpcChyZXNvdXJjZSwgc2NyaXB0KTsKICAgICAg
ICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV4cGVjdFRoYXQoIXNjcmlwdC5zb3VyY2VVUkwsICJT
Y3JpcHQgc2hvdWxkIG5vdCBoYXZlIGEgc291cmNlVVJMLiIpOwogCkBAIC03OCwyNCArODUsMzEg
QEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1l
OiAiTmFtZWRTY3JpcHRXaXRoUmVzb3VyY2UiLAogICAgICAgICBkZXNjcmlwdGlvbjogIk5vcm1h
bCByZWxhdGlvbnNoaXAgYmV0d2VlbiBhIG5hbWVkIHNjcmlwdCBhbmQgYSByZXNvdXJjZS4iLAot
ICAgICAgICB0ZXN0OiAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBsZXQgc2Ny
aXB0ID0gbnVsbCwgcmVzb3VyY2UgPSBudWxsOworICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVj
dCkgeworICAgICAgICAgICAgbGV0IHNjcmlwdCA9IG51bGw7CisgICAgICAgICAgICBsZXQgcmVz
b3VyY2UgPSBudWxsOwogCiAgICAgICAgICAgICBXZWJJbnNwZWN0b3IuZGVidWdnZXJNYW5hZ2Vy
LmFkZEV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkRlYnVnZ2VyTWFuYWdlci5FdmVudC5TY3Jp
cHRBZGRlZCwgc2NyaXB0TGlzdGVuZXIpOwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLkZyYW1l
LnNpbmdsZUZpcmVFdmVudExpc3RlbmVyKFdlYkluc3BlY3Rvci5GcmFtZS5FdmVudC5SZXNvdXJj
ZVdhc0FkZGVkLCAoZXZlbnQpID0+IHsKLSAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LnBh
c3MoIlJlc291cmNlIHdhcyBhZGRlZC4iKTsKKyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5GcmFt
ZS5hd2FpdEV2ZW50KFdlYkluc3BlY3Rvci5GcmFtZS5FdmVudC5SZXNvdXJjZVdhc0FkZGVkKQor
ICAgICAgICAgICAgLnRoZW4oKGV2ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgcmVzb3VyY2Ug
PSBldmVudC5kYXRhLnJlc291cmNlOworICAgICAgICAgICAgICAgIHZhbGlkYXRlUmVsYXRpb25z
aGlwKCk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gc2NyaXB0TGlz
dGVuZXIoZXZlbnQpIHsKICAgICAgICAgICAgICAgICBpZiAoIWV2ZW50LmRhdGEuc2NyaXB0LnVy
bCkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QucGFzcygiU2NyaXB0IHdhcyBhZGRlZC4iKTsKKworICAgICAgICAgICAgICAgIEluc3Bl
Y3RvclRlc3QuZXhwZWN0VGhhdCghc2NyaXB0LCAiT25seSBvbmUgU2NyaXB0IHNob3VsZCBiZSBh
ZGRlZC4iKTsKKwogICAgICAgICAgICAgICAgIHNjcmlwdCA9IGV2ZW50LmRhdGEuc2NyaXB0Owog
ICAgICAgICAgICAgICAgIHZhbGlkYXRlUmVsYXRpb25zaGlwKCk7CiAgICAgICAgICAgICB9CiAK
ICAgICAgICAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlUmVsYXRpb25zaGlwKCkgeworICAgICAgICAg
ICAgICAgIGlmICghcmVzb3VyY2UgfHwgIXNjcmlwdCkKKyAgICAgICAgICAgICAgICAgICAgcmV0
dXJuOworCiAgICAgICAgICAgICAgICAgdmFsaWRhdGVOb3JtYWxSZWxhdGlvbnNoaXAocmVzb3Vy
Y2UsIHNjcmlwdCk7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5leHBlY3RUaGF0KHNj
cmlwdC5zb3VyY2VVUkwgPT09ICJmb28uanMiLCAiU2NyaXB0IHNob3VsZCBoYXZlIGEgc291cmNl
VVJMLiIpOwogICAgICAgICAgICAgICAgIFdlYkluc3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIucmVt
b3ZlRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVidWdnZXJNYW5hZ2VyLkV2ZW50LlNjcmlw
dEFkZGVkLCBzY3JpcHRMaXN0ZW5lciwgbnVsbCk7CkBAIC0xMDksNyArMTIzLDcgQEAgZnVuY3Rp
b24gdGVzdCgpCiAgICAgc3VpdGUuYWRkVGVzdENhc2UoewogICAgICAgICBuYW1lOiAiU2NyaXB0
V2l0aG91dFJlc291cmNlIiwKICAgICAgICAgZGVzY3JpcHRpb246ICJBIG5hbWVkIGV2YWwgZG9l
cyBub3QgaGF2ZSBhIHJlc291cmNlLiIsCi0gICAgICAgIHRlc3Q6IChyZXNvbHZlLCByZWplY3Qp
ID0+IHsKKyAgICAgICAgdGVzdChyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgICAgIFdlYklu
c3BlY3Rvci5kZWJ1Z2dlck1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRGVi
dWdnZXJNYW5hZ2VyLkV2ZW50LlNjcmlwdEFkZGVkLCBzY3JpcHRMaXN0ZW5lcik7CiAgICAgICAg
ICAgICBsZXQgcmVzb3VyY2VMaXN0ZW5lciA9IFdlYkluc3BlY3Rvci5GcmFtZS5zaW5nbGVGaXJl
RXZlbnRMaXN0ZW5lcihXZWJJbnNwZWN0b3IuRnJhbWUuRXZlbnQuUmVzb3VyY2VXYXNBZGRlZCwg
KGV2ZW50KSA9PiB7CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5mYWlsKCJSZXNvdXJj
ZSBzaG91bGQgbm90IGJlIGFkZGVkLiIpOwpAQCAtMTM4LDcgKzE1Miw3IEBAIGZ1bmN0aW9uIHRl
c3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFtZTogIkR5bmFtaWNhbGx5
QWRkZWRTY3JpcHRFbGVtZW50Tm9SZXNvdXJjZSIsCiAgICAgICAgIGRlc2NyaXB0aW9uOiAiQSBk
eW5hbWljYWxseSBhZGRlZCBzY3JpcHQgZWxlbWVudCBoYXMgbm8gcmVzb3VyY2UuIiwKLSAgICAg
ICAgdGVzdDogKHJlc29sdmUsIHJlamVjdCkgPT4geworICAgICAgICB0ZXN0KHJlc29sdmUsIHJl
amVjdCkgewogICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmRlYnVnZ2VyTWFuYWdlci5hZGRFdmVu
dExpc3RlbmVyKFdlYkluc3BlY3Rvci5EZWJ1Z2dlck1hbmFnZXIuRXZlbnQuU2NyaXB0QWRkZWQs
IHNjcmlwdExpc3RlbmVyKTsKIAogICAgICAgICAgICAgZnVuY3Rpb24gc2NyaXB0TGlzdGVuZXIo
ZXZlbnQpIHsKQEAgLTE2MSw3ICsxNzUsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBzdWl0ZS5h
ZGRUZXN0Q2FzZSh7CiAgICAgICAgIG5hbWU6ICJEb2N1bWVudFdpdGhJbmxpbmVTY3JpcHRzIiwK
ICAgICAgICAgZGVzY3JpcHRpb246ICJBIGRvY3VtZW50IHJlc291cmNlIG1heSBiZSBhc3NvY2lh
dGVkIHdpdGggbXVsdGlwbGUgaW5saW5lIHNjcmlwdHMuIiwKLSAgICAgICAgdGVzdDogKHJlc29s
dmUsIHJlamVjdCkgPT4geworICAgICAgICB0ZXN0KHJlc29sdmUsIHJlamVjdCkgewogICAgICAg
ICAgICAgbGV0IG1haW5SZXNvdXJjZSA9IFdlYkluc3BlY3Rvci5mcmFtZVJlc291cmNlTWFuYWdl
ci5tYWluRnJhbWUubWFpblJlc291cmNlOwogICAgICAgICAgICAgbGV0IHNjcmlwdHMgPSBtYWlu
UmVzb3VyY2Uuc2NyaXB0cy5zbGljZSgpLnNvcnQoKGEsIGIpID0+IGEucmFuZ2Uuc3RhcnRMaW5l
IC0gYi5yYW5nZS5zdGFydExpbmUpOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvbW9kZWwvc3RhY2stdHJhY2UuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9z
dGFjay10cmFjZS5odG1sCmluZGV4IDBiZDgwOWZlZmNhZDgzZjA2YmNhMzhmODY0NGExNWYxYjA3
ODJlNDUuLmYyOWM4ZWYxNDA2NzdkNzkwMGVmZDUwYzM4ZDc2MWRhNzA3ZmQxYmQgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9zdGFjay10cmFjZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9tb2RlbC9zdGFjay10cmFjZS5odG1sCkBAIC0zMCw5ICszMCw5
IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHN1aXRlLmFkZFRlc3RDYXNlKHsKICAgICAgICAgbmFt
ZTogIldlYkluc3BlY3Rvci5Db25zb2xlTWVzc2FnZS5TdGFja1RyYWNlIiwKICAgICAgICAgZGVz
Y3JpcHRpb246ICJUZXN0IHdlIGNhbiBjcmVhdGUgYSBTdGFja1RyYWNlIGZyb20gY29uc29sZSBt
ZXNzYWdlcyAoQ29uc29sZS5TdGFja1RyYWNlKS4iLAotICAgICAgICB0ZXN0OiAocmVzb2x2ZSwg
cmVqZWN0KSA9PiB7Ci0gICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJ0
cmlnZ2VyQ29uc29sZU1lc3NhZ2UoKSIpOwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmxvZ01h
bmFnZXIuc2luZ2xlRmlyZUV2ZW50TGlzdGVuZXIoV2ViSW5zcGVjdG9yLkxvZ01hbmFnZXIuRXZl
bnQuTWVzc2FnZUFkZGVkLCBmdW5jdGlvbiBhZGRMaXN0ZW5lcihldmVudCkgeworICAgICAgICB0
ZXN0KHJlc29sdmUsIHJlamVjdCkgeworICAgICAgICAgICAgV2ViSW5zcGVjdG9yLmxvZ01hbmFn
ZXIuYXdhaXRFdmVudChXZWJJbnNwZWN0b3IuTG9nTWFuYWdlci5FdmVudC5NZXNzYWdlQWRkZWQp
CisgICAgICAgICAgICAudGhlbigoZXZlbnQpID0+IHsKICAgICAgICAgICAgICAgICAvLyBUcmFj
ZSBtZXNzYWdlIHNob3VsZCBhbHdheXMgaGF2ZSBhIHN0YWNrIHRyYWNlLgogICAgICAgICAgICAg
ICAgIGxldCBjb25zb2xlTWVzc2FnZSA9IGV2ZW50LmRhdGEubWVzc2FnZTsKICAgICAgICAgICAg
ICAgICBsZXQgc3RhY2tUcmFjZSA9IGNvbnNvbGVNZXNzYWdlLnN0YWNrVHJhY2U7CkBAIC00NSw4
ICs0NSwxMCBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0
LmV4cGVjdFRoYXQoIXN0YWNrVHJhY2UuY2FsbEZyYW1lc1swXS5zY29wZUNoYWluLmxlbmd0aCwg
IkNhbGxGcmFtZSBpbiBTdGFja1RyYWNlIGhhcyBubyBzY29wZUNoYWluLiIpOwogCiAgICAgICAg
ICAgICAgICAgbG9nU3RhY2tUcmFjZShjb25zb2xlTWVzc2FnZS5zdGFja1RyYWNlKTsKLSAgICAg
ICAgICAgICAgICByZXNvbHZlKCk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIH0pCisg
ICAgICAgICAgICAudGhlbihyZXNvbHZlLCByZWplY3QpOworCisgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV2YWx1YXRlSW5QYWdlKCJ0cmlnZ2VyQ29uc29sZU1lc3NhZ2UoKSIpOwogICAgICAg
ICB9CiAgICAgfSk7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>