<?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>218355</bug_id>
          
          <creation_ts>2020-10-29 14:06:58 -0700</creation_ts>
          <short_desc>Remove all remaining boolean overridePreference calls</short_desc>
          <delta_ts>2020-10-29 18:18:22 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1702855</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-10-29 14:06:58 -0700</bug_when>
    <thetext>Remove all remaining boolean overridePreference calls</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702863</commentid>
    <comment_count>1</comment_count>
      <attachid>412686</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-10-29 14:25:51 -0700</bug_when>
    <thetext>Created attachment 412686
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702901</commentid>
    <comment_count>2</comment_count>
      <attachid>412695</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-10-29 15:40:02 -0700</bug_when>
    <thetext>Created attachment 412695
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702902</commentid>
    <comment_count>3</comment_count>
      <attachid>412695</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-29 15:46:34 -0700</bug_when>
    <thetext>Comment on attachment 412695
Patch

A lot of unneeded &quot;window.&quot; prefixes in these tests. Once we know we’re running in a test runner, then &quot;internals&quot; works, and we don’t need &quot;window.internals&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702938</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-29 18:17:34 -0700</bug_when>
    <thetext>Committed r269176: &lt;https://trac.webkit.org/changeset/269176&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 412695.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1702939</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-29 18:18:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/70837130&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412686</attachid>
            <date>2020-10-29 14:25:51 -0700</date>
            <delta_ts>2020-10-29 15:40:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218355-20201029142550.patch</filename>
            <type>text/plain</type>
            <size>29637</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI2OTE2OCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE2IEBACisyMDIwLTEwLTI5ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKwor
ICAgICAgICBSZW1vdmUgYWxsIHJlbWFpbmluZyBib29sZWFuIG92ZXJyaWRlUHJlZmVyZW5jZSBj
YWxscworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4
MzU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAg
ICAgICBBZGQgYSBmZXcgbW9yZSBkZWZhdWx0cyBmb3IgRHVtcFJlbmRlclRyZWUgdG8gYWxsb3cg
dGhlbSB0byBiZQorICAgICAgICB1c2VkIGFzIHRlc3QgaGVhZGVyIGNvbW1hbmRzLgorCisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwOgorICAgICAgICAoV1RSOjpUZXN0
T3B0aW9uczo6ZGVmYXVsdHMpOgorCiAyMDIwLTEwLTI5ICBTaWh1aSBMaXUgIDxzaWh1aV9saXVA
YXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjY4MTkyLgpJbmRl
eDogVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcAkocmV2aXNpb24gMjY5MTY0KQorKysg
VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01
MSwxOSArNTEsMjMgQEAgY29uc3QgVGVzdEZlYXR1cmVzJiBUZXN0T3B0aW9uczo6ZGVmYXVsdAog
ICAgICAgICBmZWF0dXJlcy5ib29sV2ViUHJlZmVyZW5jZUZlYXR1cmVzID0gewogICAgICAgICAg
ICAgLy8gVGhlc2UgYXJlIFdlYlByZWZlcmVuY2UgdmFsdWVzIHRoYXQgbXVzdCBhbHdheXMgYmUg
c2V0IGFzIHRoZXkgbWF5CiAgICAgICAgICAgICAvLyBkaWZmZXIgZnJvbSB0aGUgZGVmYXVsdCBz
ZXQgaW4gdGhlIFdlYlByZWZlcmVuY2VzKi55YW1sIGNvbmZpZ3VyYXRpb24uCisgICAgICAgICAg
ICB7ICJBY2NlbGVyYXRlZERyYXdpbmdFbmFibGVkIiwgZmFsc2UgfSwKICAgICAgICAgICAgIHsg
IkFsbG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNyZWRlbnRpYWxzIiwgZmFsc2Ug
fSwKICAgICAgICAgICAgIHsgIkFsbG93VG9wTmF2aWdhdGlvblRvRGF0YVVSTHMiLCB0cnVlIH0s
Ci0gICAgICAgICAgICB7ICJBY2NlbGVyYXRlZERyYXdpbmdFbmFibGVkIiwgZmFsc2UgfSwKICAg
ICAgICAgICAgIHsgIkF0dGFjaG1lbnRFbGVtZW50RW5hYmxlZCIsIGZhbHNlIH0sCi0gICAgICAg
ICAgICB7ICJVc2VzQmFja0ZvcndhcmRDYWNoZSIsIGZhbHNlIH0sCiAgICAgICAgICAgICB7ICJD
b2xvckZpbHRlckVuYWJsZWQiLCBmYWxzZSB9LAorICAgICAgICAgICAgeyAiSGlkZGVuUGFnZURP
TVRpbWVyVGhyb3R0bGluZ0VuYWJsZWQiLCBmYWxzZSB9LAogICAgICAgICAgICAgeyAiSW5zcGVj
dG9yQWRkaXRpb25zRW5hYmxlZCIsIGZhbHNlIH0sCiAgICAgICAgICAgICB7ICJJbnRlcnNlY3Rp
b25PYnNlcnZlckVuYWJsZWQiLCBmYWxzZSB9LAorICAgICAgICAgICAgeyAiSmF2YVNjcmlwdEVu
YWJsZWQiLCB0cnVlIH0sCiAgICAgICAgICAgICB7ICJLZXlnZW5FbGVtZW50RW5hYmxlZCIsIGZh
bHNlIH0sCisgICAgICAgICAgICB7ICJMb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHkiLCB0cnVlIH0s
CisgICAgICAgICAgICB7ICJNYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkIiwg
ZmFsc2UgfSwKICAgICAgICAgICAgIHsgIk1lbnVJdGVtRWxlbWVudEVuYWJsZWQiLCBmYWxzZSB9
LAogICAgICAgICAgICAgeyAiTW9kZXJuTWVkaWFDb250cm9sc0VuYWJsZWQiLCB0cnVlIH0sCiAg
ICAgICAgICAgICB7ICJTcGF0aWFsTmF2aWdhdGlvbkVuYWJsZWQiLCBmYWxzZSB9LAogICAgICAg
ICAgICAgeyAiVGFic1RvTGlua3MiLCBmYWxzZSB9LAorICAgICAgICAgICAgeyAiVXNlc0JhY2tG
b3J3YXJkQ2FjaGUiLCBmYWxzZSB9LAogCiAgICAgICAgICAgICB7ICJDU1NMb2dpY2FsRW5hYmxl
ZCIsIGZhbHNlIH0sCiAgICAgICAgICAgICB7ICJMaW5lSGVpZ2h0VW5pdHNFbmFibGVkIiwgZmFs
c2UgfSwKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2OTE2NikKKysrIExheW91dFRlc3RzL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ0IEBACisyMDIwLTEwLTI5ICBTYW0gV2Vpbmln
ICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgYWxsIHJlbWFpbmluZyBib29s
ZWFuIG92ZXJyaWRlUHJlZmVyZW5jZSBjYWxscworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MzU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2NhbnZhcy93ZWJnbC9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanM6CisgICAgICAgICogZmFzdC9kb20vdGltZXItdGhyb3R0bGluZy1oaWRkZW4tcGFn
ZS1ub24tbmVzdGVkLmh0bWw6CisgICAgICAgICogZmFzdC9kb20vdGltZXItdGhyb3R0bGluZy1o
aWRkZW4tcGFnZS5odG1sOgorICAgICAgICAqIGZhc3QvZXZlbnRzL3Jlc291cmNlcy90YWJpbmRl
eC1mb2N1cy1ibHVyLWFsbC5qczoKKyAgICAgICAgKiBmYXN0L2hhcm5lc3Mvb3ZlcnJpZGUtcHJl
ZmVyZW5jZXMtMi1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9oYXJuZXNz
L292ZXJyaWRlLXByZWZlcmVuY2VzLTIuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2hh
cm5lc3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAg
ICAqIGZhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNlcy5odG1sOiBSZW1vdmVkLgorICAg
ICAgICAqIGZhc3QvbG9hZGVyL2Rpc3BsYXktaW1hZ2UtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFu
ZC1jYW4tcmVsb2FkLWluLXBsYWNlLmh0bWw6CisgICAgICAgICogZmFzdC9sb2FkZXIvaW1hZ2Vz
LWVuYWJsZWQtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBsYWNlLmh0
bWw6CisgICAgICAgICogZmFzdC9tZWRpYWNhcHR1cmVmcm9tZWxlbWVudC9yZXNvdXJjZXMvd2Vi
Z2wtdGVzdC5qczoKKyAgICAgICAgKGluaXROb25LaHJvbm9zRnJhbWV3b3JrKToKKyAgICAgICAg
KiBmYXN0L3BhcnNlci9ub3NjcmlwdC13aXRoLWphdmFzY3JpcHQtZGlzYWJsZWQuaHRtbDoKKyAg
ICAgICAgKiBmYXN0L3BhcnNlci9ub3NjcmlwdC13aXRoLWphdmFzY3JpcHQtZW5hYmxlZC5odG1s
OgorICAgICAgICAqIGh0dHAvdGVzdHMvY2FjaGUvZGlzcGxheS1pbWFnZS11bnNldC1hbGxvd3Mt
Y2FjaGVkLWltYWdlLWxvYWQuaHRtbDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2MvZmF2aWNv
bi1sb2Fkcy13aXRoLWljb24tbG9hZGluZy1vdmVycmlkZS5odG1sOgorICAgICAgICAqIGh0dHAv
dGVzdHMvbWlzYy9mYXZpY29uLWxvYWRzLXdpdGgtaW1hZ2VzLWRpc2FibGVkLmh0bWw6CisgICAg
ICAgICogaHR0cC90ZXN0cy94c2wveHNsdC10cmFuc2Zvcm0td2l0aC1qYXZhc2NyaXB0LWRpc2Fi
bGVkLmh0bWw6CisgICAgICAgICogbWVkaWEvcmVtb3ZlLXZpZGVvLWJlc3QtbWVkaWEtZWxlbWVu
dC1pbi1tYWluLWZyYW1lLWNyYXNoLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMi9w
bHVnaW5zL2FzeWNocm9ub3VzLWRlYWRsb2NrLXdpdGgtdGltZXItYW5kLWV2YWx1YXRlLmh0bWw6
CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL2FzeW5jaHJvbm91cy1kZXN0cm95
LWJlZm9yZS1pbml0aWFsaXphdGlvbi5odG1sOgorICAgICAgICAqIHBsYXRmb3JtL21hYy13azIv
cGx1Z2lucy9kZXN0cm95LWR1cmluZy1hc3luYy1ucHAtbmV3Lmh0bWw6CisgICAgICAgICogcGxh
dGZvcm0vbWFjLXdrMi9wbHVnaW5zL3NjcmlwdC1vYmplY3QtYWNjZXNzLWZhaWxzLWR1cmluZy1z
bG93LWluaXRpYWxpemF0aW9uLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMi9wbHVn
aW5zL3Nsb3cvYXN5bmNocm9ub3VzLXBsdWdpbi1pbml0aWFsaXphdGlvbi1tdWx0aXBsZS5odG1s
OgorICAgICAgICAqIHBsYXRmb3JtL21hYy13azIvcGx1Z2lucy9zbG93L2FzeW5jaHJvbm91cy1w
bHVnaW4taW5pdGlhbGl6YXRpb24uaHRtbDoKKyAgICAgICAgKiBzdmcvYXMtaW1hZ2Uvc3ZnLWlt
YWdlLXdpdGgtZGF0YS11cmktaW1hZ2VzLWRpc2FibGVkLmh0bWw6CisgICAgICAgICogd2ViYXVk
aW8vcmVzb3VyY2VzL2F1ZGlvLXRlc3RpbmcuanM6CisgICAgICAgICogd2ViZ2wvMS4wLjMvcmVz
b3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2UvbW9yZS91bml0LmpzOgorICAgICAg
ICAqIHdlYmdsLzEuMC4zL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qczoKKyAgICAgICAgKiB3ZWJnbC8yLjAuMC9yZXNvdXJjZXMvd2ViZ2xfdGVzdF9m
aWxlcy9jb25mb3JtYW5jZS9tb3JlL3VuaXQuanM6CisgICAgICAgICogd2ViZ2wvMi4wLjAvcmVz
b3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wcmUuanM6CisgICAgICAgICogd2Vi
Z2wvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzOgorICAgICAgICAqIHdlYmdsL3Jlc291cmNlcy93
ZWJnbF90ZXN0X2ZpbGVzL2pzL2pzLXRlc3QtcHJlLmpzOgorCiAyMDIwLTEwLTI5ICBMYXVybyBN
b3VyYSAgPGxtb3VyYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHTElCXSBHYXJkZW5pbmcgc29t
ZSBmYWlsdXJlcwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvY2FudmFzL3dl
YmdsL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcwkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0
VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzCSh3b3JraW5n
IGNvcHkpCkBAIC0zOCw3ICszOCw2IEBACiAgICAgfQogCiAgICAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikgewotICAgICAgd2luZG93LmxheW91dFRlc3RDb250cm9sbGVyLm92ZXJy
aWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKICAgICAgIHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CiAgICAgICB3aW5kb3cubGF5b3V0VGVz
dENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogICAgIH0KSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvZG9tL3RpbWVyLXRocm90dGxpbmctaGlkZGVuLXBhZ2Utbm9uLW5lc3RlZC5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL3RpbWVyLXRocm90dGxpbmctaGlkZGVuLXBh
Z2Utbm9uLW5lc3RlZC5odG1sCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2RvbS90aW1lci10aHJvdHRsaW5nLWhpZGRlbi1wYWdlLW5vbi1uZXN0ZWQuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKLTxodG1sPgorPGh0bWw+PCEtLSB3ZWJraXQtdGVzdC1y
dW5uZXIgWyBIaWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5nRW5hYmxlZD10cnVlIF0gLS0+CiA8
aGVhZD4KICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KICAgICA8c2NyaXB0PgpAQCAtMzUsNyArMzUsNiBAQAogICAgICAgICAgICAgICAg
IGRlYnVnKCdUaGlzIHRlc3QgcmVxdWlyZXMgdGVzdFJ1bm5lcicpOwogICAgICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQ
cmVmZXJlbmNlKCJXZWJLaXRIaWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5nRW5hYmxlZCIsIDEp
OwogCiAgICAgICAgICAgICB0aW1lckhhbmRsZSA9IHNldFRpbWVvdXQodGVzdFRpbWVyLCB0aW1l
b3V0SW50ZXJ2YWwpOwogICAgICAgICAgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmlzVGlt
ZXJUaHJvdHRsZWQodGltZXJIYW5kbGUpIik7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS90
aW1lci10aHJvdHRsaW5nLWhpZGRlbi1wYWdlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVz
dHMvZmFzdC9kb20vdGltZXItdGhyb3R0bGluZy1oaWRkZW4tcGFnZS5odG1sCShyZXZpc2lvbiAy
NjkxNjApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS90aW1lci10aHJvdHRsaW5nLWhpZGRlbi1w
YWdlLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACi08aHRtbD4KKzxodG1sPjwh
LS0gd2Via2l0LXRlc3QtcnVubmVyIFsgSGlkZGVuUGFnZURPTVRpbWVyVGhyb3R0bGluZ0VuYWJs
ZWQ9dHJ1ZSBdIC0tPgogPGJvZHk+CiAgICAgPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0PgpAQCAtMzEsNyArMzEsNiBAQAogICAg
ICAgICAgICAgICAgIGRlYnVnKCdUaGlzIHRlc3QgcmVxdWlyZXMgdGVzdFJ1bm5lcicpOwogICAg
ICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRIaWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5n
RW5hYmxlZCIsIDEpOwogCiAgICAgICAgICAgICB0aW1lckhhbmRsZSA9IHNldFRpbWVvdXQodGVz
dFRpbWVyLCB0aW1lb3V0SW50ZXJ2YWwpOwogICAgICAgICAgICAgc2hvdWxkQmVGYWxzZSgiaW50
ZXJuYWxzLmlzVGltZXJUaHJvdHRsZWQodGltZXJIYW5kbGUpIik7CkluZGV4OiBMYXlvdXRUZXN0
cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwuanMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL3RhYmluZGV4LWZvY3Vz
LWJsdXItYWxsLmpzCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50
cy9yZXNvdXJjZXMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwuanMJKHdvcmtpbmcgY29weSkKQEAg
LTEsNSArMSw0IEBACiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICB0ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0SmF2YUVuYWJsZWQiLCAiMCIpOwogICAgIHRlc3RSdW5u
ZXIud2FpdFVudGlsRG9uZSgpOwogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogfQpJbmRl
eDogTGF5b3V0VGVzdHMvZmFzdC9oYXJuZXNzL292ZXJyaWRlLXByZWZlcmVuY2VzLTItZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvaGFybmVzcy9vdmVycmlkZS1w
cmVmZXJlbmNlcy0yLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVz
dHMvZmFzdC9oYXJuZXNzL292ZXJyaWRlLXByZWZlcmVuY2VzLTItZXhwZWN0ZWQudHh0CShub25l
eGlzdGVudCkKQEAgLTEsMyArMCwwIEBACi1UaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCB0ZXN0UnVu
bmVyIGNhbiBoYXZlIGl0cyBkZWZhdWx0IHByZWZlcmVuY2VzIG92ZXJyaWRlbi4gVGhpcyB0ZXN0
IHZlcmlmaWVzIHRoYXQgdGhlIEFQSSB3aWxsIGFjY2VwdCBzdHJpbmcgdmFsdWVzIGFuZCBhbHNv
IG92ZXJyaWRlIHRoZSBkZWZhdWx0IGZvbnQgc2l6ZS4gWW91IHNob3VsZCBzZWUgIlBBU1MiIGJl
bG93LgotCi1QQVNTCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2hhcm5lc3Mvb3ZlcnJpZGUtcHJl
ZmVyZW5jZXMtMi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvaGFybmVzcy9v
dmVycmlkZS1wcmVmZXJlbmNlcy0yLmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRl
c3RzL2Zhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNlcy0yLmh0bWwJKG5vbmV4aXN0ZW50
KQpAQCAtMSwxOCArMCwwIEBACi08aHRtbD4KLTxzY3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy50ZXN0
UnVubmVyKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICB0ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0RGVmYXVsdEZvbnRTaXplIiwgIjI0Iik7
Ci0gICAgfQotPC9zY3JpcHQ+Ci08Ym9keT4KLSAgICA8cD5UaGlzIHRlc3QgdmVyaWZpZXMgdGhh
dCB0ZXN0UnVubmVyIGNhbiBoYXZlIGl0cyBkZWZhdWx0IHByZWZlcmVuY2VzIG92ZXJyaWRlbi4K
LSAgICBUaGlzIHRlc3QgdmVyaWZpZXMgdGhhdCB0aGUgQVBJIHdpbGwgYWNjZXB0IHN0cmluZyB2
YWx1ZXMgYW5kIGFsc28gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgZm9udCBzaXplLgotICAgIFlvdSBz
aG91bGQgc2VlICJQQVNTIiBiZWxvdy48L3A+Ci0gICAgPHNjcmlwdD4KLSAgICAgICAgdmFyIHAg
PSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgicCIpWzBdOwotICAgICAgICBpZiAoIXdp
bmRvdy50ZXN0UnVubmVyIHx8IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHApLmZvbnRTaXplID09
ICIyNHB4IikKLSAgICAgICAgICAgIGRvY3VtZW50LndyaXRlKCJQQVNTIik7Ci0gICAgPC9zY3Jp
cHQ+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2hhcm5lc3Mvb3Zl
cnJpZGUtcHJlZmVyZW5jZXMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNlcy1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDI2OTE2MCkKKysrIExheW91dFRlc3RzL2Zhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNl
cy1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSwzICswLDAgQEAKLVRoaXMgaXMgYSB0
ZXN0IHRoYXQgdmVyaWZpZXMgdGhhdCB0ZXN0UnVubmVyIGNhbiBoYXZlIGl0cyBkZWZhdWx0IHBy
ZWZlcmVuY2VzIG92ZXJyaWRkZW4uIFRoaXMgdGVzdCBzcGVjaWZpY2FsbHkgY2hlY2tzIHRoYXQg
SmF2YXNjcmlwdCBjYW4gYmUgZGlzYWJsZWQsIGFuZCB5b3Ugc2hvdWxkIHNlZSAiUEFTUyIgYmVs
b3cgaWYgdmlld2luZyB3aXRoIGEgYnJvd3Nlci4KLQotUEFTUwpJbmRleDogTGF5b3V0VGVzdHMv
ZmFzdC9oYXJuZXNzL292ZXJyaWRlLXByZWZlcmVuY2VzLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9oYXJuZXNzL292ZXJyaWRlLXByZWZlcmVuY2VzLmh0bWwJKHJldmlzaW9u
IDI2OTE2MCkKKysrIExheW91dFRlc3RzL2Zhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNl
cy5odG1sCShub25leGlzdGVudCkKQEAgLTEsMTggKzAsMCBAQAotPGh0bWw+Ci08Ym9keT4KLTxz
Y3JpcHQ+Ci0gICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7Ci0gICAgICAgIHRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpCi0gICAgICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRKYXZhU2NyaXB0RW5hYmxlZCIsIGZhbHNlKTsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiBsb2Fk
c3RhdHVzKCkgewotICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgICAgICAgICBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RhdHVzIikuaW5uZXJIVE1MID0gIkZBSUwiOwotICAg
IH0KLTwvc2NyaXB0PgotPGJvZHkgb25sb2FkPSJsb2Fkc3RhdHVzKCkiPgotICAgIDxwPlRoaXMg
aXMgYSB0ZXN0IHRoYXQgdmVyaWZpZXMgdGhhdCB0ZXN0UnVubmVyIGNhbiBoYXZlIGl0cyBkZWZh
dWx0IHByZWZlcmVuY2VzIG92ZXJyaWRkZW4uICBUaGlzIHRlc3Qgc3BlY2lmaWNhbGx5IGNoZWNr
cyB0aGF0IEphdmFzY3JpcHQgY2FuIGJlIGRpc2FibGVkLCBhbmQgeW91IHNob3VsZCBzZWUgIlBB
U1MiIGJlbG93IGlmIHZpZXdpbmcgd2l0aCBhIGJyb3dzZXIuPC9wPgotICAgIDxzcGFuIGlkPSJz
dGF0dXMiPlBBU1M8L3NwYW4+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2xvYWRlci9kaXNwbGF5LWltYWdlLXVuc2V0LWNhbi1ibG9jay1pbWFnZS1hbmQtY2FuLXJl
bG9hZC1pbi1wbGFjZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvbG9hZGVy
L2Rpc3BsYXktaW1hZ2UtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBs
YWNlLmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL2Zhc3QvbG9hZGVyL2Rp
c3BsYXktaW1hZ2UtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBsYWNl
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNyArMSw3IEBACiA8aHRtbD4KIDxoZWFkPgogPHNj
cmlwdD4KLS8vIFNldHRpbmcgV2ViS2l0RGlzcGxheUltYWdlc0tleSBpcyBhc3luY2hyb25vdXMs
IHNvIHVzaW5nIHF1ZXVlUmVsb2FkIGFuZCBzZXRJbnRlcnZhbCB0byBjaGVjayB3aGVuIHRoZSBz
ZXR0aW5nIGFjdHVhbGx5IHRha2UgZWZmZWN0LgorLy8gU2V0dGluZyBsb2Fkc0ltYWdlc0F1dG9t
YXRpY2FsbHkgaXMgYXN5bmNocm9ub3VzLCBzbyB1c2luZyBxdWV1ZVJlbG9hZCBhbmQgc2V0SW50
ZXJ2YWwgdG8gY2hlY2sgd2hlbiB0aGUgc2V0dGluZyBhY3R1YWxseSB0YWtlIGVmZmVjdC4KIAog
dmFyIGludGVydmFsSWQ7CiB2YXIgaW1hZ2VPbmxvYWRGaXJlZCA9IDA7CkBAIC05LDcgKzksNyBA
QCB2YXIgaW1hZ2VPbmxvYWRGaXJlZCA9IDA7CiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKICAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdz
LnNldEltYWdlc0VuYWJsZWQodHJ1ZSk7Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVu
Y2UoJ1dlYktpdERpc3BsYXlJbWFnZXNLZXknLCAwKTsKKyAgICB3aW5kb3cuaW50ZXJuYWxzLnNl
dHRpbmdzLnNldExvYWRzSW1hZ2VzQXV0b21hdGljYWxseShmYWxzZSk7CiAgICAgdGVzdFJ1bm5l
ci5xdWV1ZVJlbG9hZCgpOwogfQogCkBAIC0xNywxMiArMTcsMTIgQEAgZnVuY3Rpb24gcnVuVGVz
dCgpCiB7CiAgICAgdmFyIGltYWdlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ltYWdlJyk7
CiAgICAgaWYgKGltYWdlLm5hdHVyYWxIZWlnaHQgIT0gMCB8fCBpbWFnZS5uYXR1cmFsV2lkdGgg
IT0gMCB8fCBpbWFnZU9ubG9hZEZpcmVkICE9IDApIHsKLSAgICAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3Jlc3VsdCcpLmlubmVySFRNTCA9ICdGQUlMVVJFOiBJbWFnZSBzaG91bGQgbm90
IGJlIGxvYWRlZCB3aGVuIERpc3BsYXlJbWFnZSBpcyB1bnNldCc7CisgICAgICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQnKS5pbm5lckhUTUwgPSAnRkFJTFVSRTogSW1hZ2Ugc2hv
dWxkIG5vdCBiZSBsb2FkZWQgd2hlbiBsb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHkgaXMgdW5zZXQn
OwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZl
cmVuY2UoJ1dlYktpdERpc3BsYXlJbWFnZXNLZXknLCAxKTsKLSAgICBkb2N1bWVudC5nZXRFbGVt
ZW50QnlJZCgncmVzdWx0JykuaW5uZXJIVE1MID0gJ0ZBSUxVUkU6IEltYWdlIHNob3VsZCByZWxv
YWQgaW4tcGxhY2Ugd2hlbiBEaXNwYWx5SW1hZ2UgaXMgY2hhbmdlcyBmcm9tIHVuc2V0IHRvIHNl
dCc7CisgICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRMb2Fkc0ltYWdlc0F1dG9tYXRp
Y2FsbHkodHJ1ZSk7CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdCcpLmlubmVy
SFRNTCA9ICdGQUlMVVJFOiBJbWFnZSBzaG91bGQgcmVsb2FkIGluLXBsYWNlIHdoZW4gbG9hZHNJ
bWFnZXNBdXRvbWF0aWNhbGx5IGlzIGNoYW5nZXMgZnJvbSB1bnNldCB0byBzZXQnOwogICAgIHRl
c3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgIGludGVydmFsSWQgPSB3aW5kb3cuc2V0SW50
ZXJ2YWwocnVuVGVzdFJlc3QsIDEwKTsKIH0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvbG9hZGVy
L2ltYWdlcy1lbmFibGVkLXVuc2V0LWNhbi1ibG9jay1pbWFnZS1hbmQtY2FuLXJlbG9hZC1pbi1w
bGFjZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvbG9hZGVyL2ltYWdlcy1l
bmFibGVkLXVuc2V0LWNhbi1ibG9jay1pbWFnZS1hbmQtY2FuLXJlbG9hZC1pbi1wbGFjZS5odG1s
CShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9pbWFnZXMtZW5h
YmxlZC11bnNldC1jYW4tYmxvY2staW1hZ2UtYW5kLWNhbi1yZWxvYWQtaW4tcGxhY2UuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtOCw3ICs4LDYgQEAgdmFyIGltYWdlT25sb2FkRmlyZWQgPSAwOwog
CiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
LSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgnV2ViS2l0RGlzcGxheUltYWdlc0tl
eScsIDEpOwogICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW1hZ2VzRW5hYmxlZChm
YWxzZSk7CiAgICAgdGVzdFJ1bm5lci5xdWV1ZVJlbG9hZCgpOwogfQpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9tZWRpYWNhcHR1cmVmcm9tZWxlbWVudC9yZXNvdXJjZXMvd2ViZ2wtdGVzdC5qcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L21lZGlhY2FwdHVyZWZyb21lbGVtZW50L3Jl
c291cmNlcy93ZWJnbC10ZXN0LmpzCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9m
YXN0L21lZGlhY2FwdHVyZWZyb21lbGVtZW50L3Jlc291cmNlcy93ZWJnbC10ZXN0LmpzCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDcgKzEsNSBAQAogLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAvLyBEaWZmZXJlbmNl
cyB3aXRoIHJlc3BlY3QgdG8gS2hyb25vcyB2ZXJzaW9uIG9mIHdlYmdsLXRlc3QuanMKLWlmICh3
aW5kb3cudGVzdFJ1bm5lcikKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKIAogZnVuY3Rpb24gYXNzZXJ0TXNnKGFzc2VydGlvbiwg
bXNnKSB7CiAgICAgaWYgKGFzc2VydGlvbikgewpAQCAtMTMsNyArMTEsNiBAQCBmdW5jdGlvbiBh
c3NlcnRNc2coYXNzZXJ0aW9uLCBtc2cpIHsKIAogZnVuY3Rpb24gaW5pdE5vbktocm9ub3NGcmFt
ZXdvcmsod2FpdFVudGlsRG9uZSkgewogICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICB0
ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsK
ICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICBpZiAod2FpdFVudGlsRG9uZSkgewog
ICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMgPSB0cnVlOwpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9wYXJzZXIvbm9zY3JpcHQtd2l0aC1qYXZhc2NyaXB0LWRpc2FibGVkLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9wYXJzZXIvbm9zY3JpcHQtd2l0aC1qYXZhc2NyaXB0LWRp
c2FibGVkLmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL2Zhc3QvcGFyc2Vy
L25vc2NyaXB0LXdpdGgtamF2YXNjcmlwdC1kaXNhYmxlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDEwICsxLDkgQEAKLTxodG1sPgorPGh0bWw+PCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBK
YXZhU2NyaXB0RW5hYmxlZD1mYWxzZSBdIC0tPgogCiA8c2NyaXB0PgogaWYgKHdpbmRvdy50ZXN0
UnVubmVyKSB7CiAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAgICAgdGVzdFJ1bm5lci5k
dW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5j
ZSgiV2ViS2l0SmF2YVNjcmlwdEVuYWJsZWQiLCBmYWxzZSk7CiB9CiA8L3NjcmlwdD4KIApJbmRl
eDogTGF5b3V0VGVzdHMvZmFzdC9wYXJzZXIvbm9zY3JpcHQtd2l0aC1qYXZhc2NyaXB0LWVuYWJs
ZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L3BhcnNlci9ub3NjcmlwdC13
aXRoLWphdmFzY3JpcHQtZW5hYmxlZC5odG1sCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L3BhcnNlci9ub3NjcmlwdC13aXRoLWphdmFzY3JpcHQtZW5hYmxlZC5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0zLDcgKzMsNiBAQAogPHNjcmlwdD4KIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikgewogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIHRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRKYXZhU2NyaXB0RW5hYmxlZCIsIHRydWUpOwogfQogPC9z
Y3JpcHQ+CiAKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvY2FjaGUvZGlzcGxheS1pbWFn
ZS11bnNldC1hbGxvd3MtY2FjaGVkLWltYWdlLWxvYWQuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL2Rpc3BsYXktaW1hZ2UtdW5zZXQtYWxsb3dzLWNhY2hl
ZC1pbWFnZS1sb2FkLmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvY2FjaGUvZGlzcGxheS1pbWFnZS11bnNldC1hbGxvd3MtY2FjaGVkLWltYWdlLWxvYWQu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMyw3ICszLDcgQEAKIDxoZWFkPgogPHNjcmlwdD4KIC8v
IE9wZW5zIHR3byB3aW5kb3dzIGNvbnRhaW5pbmcgdGhlIHNhbWUgaW1hZ2UuIEZpcnN0IHdpbmRv
dyB3aWxsIHBvcHVsYXRlIHRoZSBjYWNoZSB3aXRoCi0vLyBpbWFnZS4gVGhlIHNlY29uZCB3aW5k
b3cgaXMgb3BlbmVkIHdpdGggV2ViS2l0RGlzcGxheUltYWdlc0tleSB1bnNldCwgYnV0IGltYWdl
IHNob3VsZAorLy8gaW1hZ2UuIFRoZSBzZWNvbmQgd2luZG93IGlzIG9wZW5lZCB3aXRoIGxvYWRz
SW1hZ2VzQXV0b21hdGljYWxseSB1bnNldCwgYnV0IGltYWdlIHNob3VsZAogLy8gc3RpbGwgbG9h
ZCBzaW5jZSBpdCBpcyBpbiBjYWNoZS4KIGZ1bmN0aW9uIHJ1blRlc3QoKQogewpAQCAtMTksNyAr
MTksNyBAQCBmdW5jdGlvbiBydW5UZXN0KCkKIAogZnVuY3Rpb24gaW1hZ2UxTG9hZGVkKCkKIHsK
LSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgnV2ViS2l0RGlzcGxheUltYWdlc0tl
eScsIDApOworICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0TG9hZHNJbWFnZXNBdXRv
bWF0aWNhbGx5KGZhbHNlKTsKICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0Jyku
aW5uZXJIVE1MID0gJ0ZBSUxVUkU6IGltYWdlMi5odG1sIG5vdCBsb2FkZWQnOwogICAgIHdpbmRv
dy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCkge3dpbmRvdy5vcGVuKCJyZXNvdXJjZXMvaW1hZ2UyLmh0
bWwiLCAiX2JsYW5rIik7fSwgMCk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21p
c2MvZmF2aWNvbi1sb2Fkcy13aXRoLWljb24tbG9hZGluZy1vdmVycmlkZS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9mYXZpY29uLWxvYWRzLXdpdGgtaWNv
bi1sb2FkaW5nLW92ZXJyaWRlLmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbWlzYy9mYXZpY29uLWxvYWRzLXdpdGgtaWNvbi1sb2FkaW5nLW92ZXJyaWRl
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACi08aHRtbD4KKzxodG1sPjwhLS0g
d2Via2l0LXRlc3QtcnVubmVyIFsgTG9hZHNJbWFnZXNBdXRvbWF0aWNhbGx5PWZhbHNlIF0gLS0+
CiA8aGVhZD4KIDxzY3JpcHQ+CiBmdW5jdGlvbiBydW5UZXN0KCkKQEAgLTcsNyArNyw2IEBAIGZ1
bmN0aW9uIHJ1blRlc3QoKQogICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICAg
ICAgdGVzdFJ1bm5lci5kdW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tzKCk7CiAgICAgICAgIHRlc3RS
dW5uZXIuc2V0SWNvbkRhdGFiYXNlRW5hYmxlZCh0cnVlKTsKLSAgICAgICAgdGVzdFJ1bm5lci5v
dmVycmlkZVByZWZlcmVuY2UoIldlYktpdERpc3BsYXlJbWFnZXNLZXkiLCAwKTsKICAgICAgICAg
aW50ZXJuYWxzLnNldExvYWRzU2l0ZUljb25zSWdub3JpbmdJbWFnZUxvYWRpbmdTZXR0aW5nKHRy
dWUpOwogICAgICAgICB0ZXN0UnVubmVyLnF1ZXVlUmVsb2FkKCk7CiAgICAgfQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2Zhdmljb24tbG9hZHMtd2l0aC1pbWFnZXMtZGlzYWJs
ZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvZmF2aWNv
bi1sb2Fkcy13aXRoLWltYWdlcy1kaXNhYmxlZC5odG1sCShyZXZpc2lvbiAyNjkxNjApCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvZmF2aWNvbi1sb2Fkcy13aXRoLWltYWdlcy1kaXNh
YmxlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQgKzEsNCBAQAotPGh0bWw+Cis8aHRtbD48
IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIExvYWRzSW1hZ2VzQXV0b21hdGljYWxseT1mYWxzZSBd
IC0tPgogPGhlYWQ+CiA8c2NyaXB0PgogZnVuY3Rpb24gcnVuVGVzdCgpCkluZGV4OiBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3hzbC94c2x0LXRyYW5zZm9ybS13aXRoLWphdmFzY3JpcHQtZGlzYWJs
ZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3hzbC94c2x0LXRy
YW5zZm9ybS13aXRoLWphdmFzY3JpcHQtZGlzYWJsZWQuaHRtbAkocmV2aXNpb24gMjY5MTYwKQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94c2wveHNsdC10cmFuc2Zvcm0td2l0aC1qYXZhc2Ny
aXB0LWRpc2FibGVkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsMTAgKzEsOSBAQAotPGh0bWw+
Cis8aHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIEphdmFTY3JpcHRFbmFibGVkPWZhbHNl
IF0gLS0+CiA8aGVhZD4KIDxzY3JpcHQ+CiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0Fz
VGV4dCgpOwotICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRKYXZhU2Ny
aXB0RW5hYmxlZCIsIGZhbHNlKTsKIH0KIAogZnVuY3Rpb24gc2hvdWxkTm90QmVFeGVjdXRlZCgp
CkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9yZW1vdmUtdmlkZW8tYmVzdC1tZWRpYS1lbGVtZW50
LWluLW1haW4tZnJhbWUtY3Jhc2guaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRp
YS9yZW1vdmUtdmlkZW8tYmVzdC1tZWRpYS1lbGVtZW50LWluLW1haW4tZnJhbWUtY3Jhc2guaHRt
bAkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvcmVtb3ZlLXZpZGVvLWJl
c3QtbWVkaWEtZWxlbWVudC1pbi1tYWluLWZyYW1lLWNyYXNoLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTEsNCArMSw0IEBACi08IURPQ1RZUEUgaHRtbD4KKzwhRE9DVFlQRSBodG1sPjwhLS0gd2Vi
a2l0LXRlc3QtcnVubmVyIFsgTWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZD10
cnVlIF0gLS0+CiA8aHRtbD4KIDxib2R5PgogPHAgaWQ9ImRlc2NyaXB0aW9uIj5UaGlzIHRlc3Rz
IHJlbW92aW5nIGEgdmlkZW8gZWxlbWVudCBpbnNpZGUgYW4gaWZyYW1lIHdoaWxlIGFub3RoZXIg
dmlkZW8gaW4gdGhlIG1haW4gZnJhbWUgaXMgcGxheWluZyBkb2VzIG5vdCBoaXQgYSByZWxlYXNl
IGFzc2VydGlvbi48L3A+CkBAIC0yNiw3ICsyNiw2IEBAIGZ1bmN0aW9uIGNvbnRpbnVlVGVzdCgp
IHsKIH0KIAogaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRl
UHJlZmVyZW5jZSgiV2ViS2l0TWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZCIs
IDEpOwogICAgIGludGVybmFscy5zZXRNZWRpYUVsZW1lbnRSZXN0cmljdGlvbnModmlkZW8sICJP
dmVycmlkZVVzZXJHZXN0dXJlUmVxdWlyZW1lbnRGb3JNYWluQ29udGVudCIpOwogfSBlbHNlCiAg
ICAgZGVzY3JpcHRpb24uaW5uZXJIVE1MICs9ICc8YnI+VGhpcyB0ZXN0IHJlcXVyaWVzIE92ZXJy
aWRlVXNlckdlc3R1cmVSZXF1aXJlbWVudEZvck1haW5Db250ZW50LiBNYW51YWxseSBzZXQgdGhp
cyBzZXR0aW5nIG9yIHVzZSBXZWJLaXRUZXN0UnVubmVyLic7CkluZGV4OiBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvYXN5Y2hyb25vdXMtZGVhZGxvY2std2l0aC10aW1lci1h
bmQtZXZhbHVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMt
d2syL3BsdWdpbnMvYXN5Y2hyb25vdXMtZGVhZGxvY2std2l0aC10aW1lci1hbmQtZXZhbHVhdGUu
aHRtbAkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9w
bHVnaW5zL2FzeWNocm9ub3VzLWRlYWRsb2NrLXdpdGgtdGltZXItYW5kLWV2YWx1YXRlLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTEsOSArMSw3IEBACi08aGVhZD4KKzxoZWFkPjwhLS0gd2Via2l0
LXRlc3QtcnVubmVyIFsgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkPXRy
dWUgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkRm9yQWxsUGx1Z2lucz10
cnVlIF0gLS0+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQ+CiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICB0ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0MkFzeW5jaHJvbm91c1BsdWdpbkluaXRp
YWxpemF0aW9uRW5hYmxlZCIsICIxIik7Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVu
Y2UoIldlYktpdDJBc3luY2hyb25vdXNQbHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWRGb3JBbGxQ
bHVnaW5zIiwgIjEiKTsKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKIH0KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13
azIvcGx1Z2lucy9hc3luY2hyb25vdXMtZGVzdHJveS1iZWZvcmUtaW5pdGlhbGl6YXRpb24uaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvYXN5
bmNocm9ub3VzLWRlc3Ryb3ktYmVmb3JlLWluaXRpYWxpemF0aW9uLmh0bWwJKHJldmlzaW9uIDI2
OTE2MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9hc3luY2hyb25v
dXMtZGVzdHJveS1iZWZvcmUtaW5pdGlhbGl6YXRpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MSwxMiArMSwxMCBAQAotPGhlYWQ+Cis8aGVhZD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIEFz
eW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZD10cnVlIEFzeW5jaHJvbm91c1Bs
dWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZEZvckFsbFBsdWdpbnM9dHJ1ZSBdIC0tPgogPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0PgogCiB2YXIgc3RhcnRUaW1lID0gbmV3IERhdGU7CiAKIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewotICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXQyQXN5bmNocm9u
b3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkIiwgIjEiKTsKLSAgICB0ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0MkFzeW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9u
RW5hYmxlZEZvckFsbFBsdWdpbnMiLCAiMSIpOwogICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0Q2FuU3RhcnRNZWRpYShmYWxzZSk7CiAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMtd2syL3BsdWdpbnMvZGVzdHJveS1kdXJpbmctYXN5bmMtbnBwLW5ldy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9kZXN0cm95
LWR1cmluZy1hc3luYy1ucHAtbmV3Lmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9kZXN0cm95LWR1cmluZy1hc3luYy1ucHAtbmV3
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMSw3IEBACi08aGVhZD4KKzxoZWFkPjwhLS0g
d2Via2l0LXRlc3QtcnVubmVyIFsgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFi
bGVkPXRydWUgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkRm9yQWxsUGx1
Z2lucz10cnVlIF0gLS0+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAg
ICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0MkFzeW5jaHJvbm91c1BsdWdp
bkluaXRpYWxpemF0aW9uRW5hYmxlZCIsICIxIik7Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVBy
ZWZlcmVuY2UoIldlYktpdDJBc3luY2hyb25vdXNQbHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWRG
b3JBbGxQbHVnaW5zIiwgIjEiKTsKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICB0
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKIH0KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azIvcGx1Z2lucy9zY3JpcHQtb2JqZWN0LWFjY2Vzcy1mYWlscy1kdXJpbmctc2xvdy1p
bml0aWFsaXphdGlvbi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azIvcGx1Z2lucy9zY3JpcHQtb2JqZWN0LWFjY2Vzcy1mYWlscy1kdXJpbmctc2xvdy1pbml0
aWFsaXphdGlvbi5odG1sCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2syL3BsdWdpbnMvc2NyaXB0LW9iamVjdC1hY2Nlc3MtZmFpbHMtZHVyaW5nLXNsb3ct
aW5pdGlhbGl6YXRpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwxMiArMSwxMCBAQAotPGhl
YWQ+Cis8aGVhZD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIEFzeW5jaHJvbm91c1BsdWdpbklu
aXRpYWxpemF0aW9uRW5hYmxlZD10cnVlIEFzeW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9u
RW5hYmxlZEZvckFsbFBsdWdpbnM9dHJ1ZSBdIC0tPgogPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogCiB2YXIgc3RhcnRU
aW1lID0gbmV3IERhdGU7CiAKIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgIHRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXQyQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6
YXRpb25FbmFibGVkIiwgIjEiKTsKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgi
V2ViS2l0MkFzeW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZEZvckFsbFBsdWdp
bnMiLCAiMSIpOwogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOwogfQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9w
bHVnaW5zL3Nsb3cvYXN5bmNocm9ub3VzLXBsdWdpbi1pbml0aWFsaXphdGlvbi1tdWx0aXBsZS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9z
bG93L2FzeW5jaHJvbm91cy1wbHVnaW4taW5pdGlhbGl6YXRpb24tbXVsdGlwbGUuaHRtbAkocmV2
aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3Ns
b3cvYXN5bmNocm9ub3VzLXBsdWdpbi1pbml0aWFsaXphdGlvbi1tdWx0aXBsZS5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDQgKzEsNCBAQAotPGhlYWQ+Cis8aGVhZD48IS0tIHdlYmtpdC10ZXN0
LXJ1bm5lciBbIEFzeW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZD10cnVlIEFz
eW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZEZvckFsbFBsdWdpbnM9dHJ1ZSBd
IC0tPgogPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CkBAIC0yNCw4ICsy
NCw2IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKSAKIAogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OwogICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgIHRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXQyQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFi
bGVkIiwgIjEiKTsKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0MkFz
eW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZEZvckFsbFBsdWdpbnMiLCAiMSIp
OwogCiAgICAgLy8gR3JhYiB0aGUgdGltZSBiZWZvcmUgd2UgY3JlYXRlIGFuZCBhcHBlbmQgMjAg
c2xvdyBwbHVnLWlucy4KICAgICBzZXNzaW9uU3RvcmFnZS5iZWZvcmVEYXRlID0gKG5ldyBEYXRl
KS52YWx1ZU9mKCk7CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMv
c2xvdy9hc3luY2hyb25vdXMtcGx1Z2luLWluaXRpYWxpemF0aW9uLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3Nsb3cvYXN5bmNocm9ub3Vz
LXBsdWdpbi1pbml0aWFsaXphdGlvbi5odG1sCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvc2xvdy9hc3luY2hyb25vdXMtcGx1Z2luLWlu
aXRpYWxpemF0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACi08aGVhZD4K
KzxoZWFkPjwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlh
bGl6YXRpb25FbmFibGVkPXRydWUgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFi
bGVkRm9yQWxsUGx1Z2lucz10cnVlIF0gLS0+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5IG9ubG9hZD0i
cnVuVGVzdCgpIj4KQEAgLTI0LDggKzI0LDYgQEAgZnVuY3Rpb24gcnVuVGVzdCgpIAogCiAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdDJBc3luY2hyb25vdXNQ
bHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWQiLCAiMSIpOwotICAgIHRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXQyQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFi
bGVkRm9yQWxsUGx1Z2lucyIsICIxIik7CiAKICAgICB2YXIgYmVmb3JlRGF0ZSA9IG5ldyBEYXRl
OwogICAgIApJbmRleDogTGF5b3V0VGVzdHMvc3ZnL2FzLWltYWdlL3N2Zy1pbWFnZS13aXRoLWRh
dGEtdXJpLWltYWdlcy1kaXNhYmxlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2
Zy9hcy1pbWFnZS9zdmctaW1hZ2Utd2l0aC1kYXRhLXVyaS1pbWFnZXMtZGlzYWJsZWQuaHRtbAko
cmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2FzLWltYWdlL3N2Zy1pbWFnZS13
aXRoLWRhdGEtdXJpLWltYWdlcy1kaXNhYmxlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3
ICsxMSw3IEBACiAgIDxzY3JpcHQ+CiAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAg
ICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldEltYWdlc0VuYWJsZWQoZmFsc2UpOwotICAg
ICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoJ1dlYktpdERpc3BsYXlJbWFnZXNLZXkn
LCAwKTsKKyAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0TG9hZHNJbWFnZXNBdXRv
bWF0aWNhbGx5KGZhbHNlKTsKICAgICAgIHRlc3RSdW5uZXIucXVldWVSZWxvYWQoKTsKICAgICB9
CiAgIDwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3VyY2VzL2F1ZGlv
LXRlc3RpbmcuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3VyY2Vz
L2F1ZGlvLXRlc3RpbmcuanMJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL3dlYmF1
ZGlvL3Jlc291cmNlcy9hdWRpby10ZXN0aW5nLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xLDYgKzEs
MyBAQAotaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRXZWJBdWRpb0VuYWJsZWQiLCAiMSIpOwotCiBmdW5jdGlvbiB3cml0ZVN0
cmluZyhzLCBhLCBvZmZzZXQpIHsKICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHMubGVuZ3RoOyAr
K2kpIHsKICAgICAgICAgYVtvZmZzZXQgKyBpXSA9IHMuY2hhckNvZGVBdChpKTsKSW5kZXg6IExh
eW91dFRlc3RzL3dlYmdsLzEuMC4zL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1h
bmNlL21vcmUvdW5pdC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93ZWJnbC8xLjAuMy9y
ZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9jb25mb3JtYW5jZS9tb3JlL3VuaXQuanMJKHJldmlz
aW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL3dlYmdsLzEuMC4zL3Jlc291cmNlcy93ZWJnbF90
ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL21vcmUvdW5pdC5qcwkod29ya2luZyBjb3B5KQpAQCAtMzMs
NyArMzMsNiBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIgJiYgIXdpbmRvdy5sYXlvdXRUCiB9CiAK
IGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKLSAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwogICBsYXlv
dXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CiAgIGxheW91dFRlc3RDb250cm9sbGVyLndh
aXRVbnRpbERvbmUoKTsKIApJbmRleDogTGF5b3V0VGVzdHMvd2ViZ2wvMS4wLjMvcmVzb3VyY2Vz
L3dlYmdsX3Rlc3RfZmlsZXMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL3dlYmdsLzEuMC4zL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcwkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvd2Vi
Z2wvMS4wLjMvcmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw3ICszOCw2IEBACiAgICAgfQogCiAgICAgaWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewotICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwogICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwogICAgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIud2FpdFVudGlsRG9uZSgpOwogICAgIH0KSW5kZXg6IExheW91dFRlc3RzL3dlYmdsLzIuMC4w
L3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL21vcmUvdW5pdC5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93ZWJnbC8yLjAuMC9yZXNvdXJjZXMvd2ViZ2xfdGVzdF9m
aWxlcy9jb25mb3JtYW5jZS9tb3JlL3VuaXQuanMJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91
dFRlc3RzL3dlYmdsLzIuMC4wL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNl
L21vcmUvdW5pdC5qcwkod29ya2luZyBjb3B5KQpAQCAtMzMsNyArMzMsNiBAQCBpZiAod2luZG93
LnRlc3RSdW5uZXIgJiYgIXdpbmRvdy5sYXlvdXRUCiB9CiAKIGlmICh3aW5kb3cubGF5b3V0VGVz
dENvbnRyb2xsZXIpIHsKLSAgbGF5b3V0VGVzdENvbnRyb2xsZXIub3ZlcnJpZGVQcmVmZXJlbmNl
KCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwogICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
QXNUZXh0KCk7CiAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKIApJbmRl
eDogTGF5b3V0VGVzdHMvd2ViZ2wvMi4wLjAvcmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMv
anMtdGVzdC1wcmUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd2ViZ2wvMi4wLjAvcmVz
b3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wcmUuanMJKHJldmlzaW9uIDI2OTE2
MCkKKysrIExheW91dFRlc3RzL3dlYmdsLzIuMC4wL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVz
L2pzL2pzLXRlc3QtcHJlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw3ICszOCw2IEBACiAgICAg
fQogCiAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewotICAgICAgd2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFi
bGVkIiwgIjEiKTsKICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CiAgICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwog
ICAgIH0KSW5kZXg6IExheW91dFRlc3RzL3dlYmdsL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93ZWJnbC9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMJ
KHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL3dlYmdsL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcwkod29ya2luZyBjb3B5KQpAQCAtMzgsNyArMzgsNiBAQAogICAgIH0KIAogICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKLSAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEiKTsKICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKICAgICAgIGxheW91dFRlc3RDb250
cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKICAgICB9CkluZGV4OiBMYXlvdXRUZXN0cy93ZWJnbC9y
ZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0LXByZS5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy93ZWJnbC9yZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0
LXByZS5qcwkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvd2ViZ2wvcmVzb3VyY2Vz
L3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wcmUuanMJKHdvcmtpbmcgY29weSkKQEAgLTIx
LDcgKzIxLDYgQEAgZm91bmQgaW4gdGhlIExJQ0VOU0UudHh0IGZpbGUuCiAgICAgfQogCiAgICAg
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewotICAgICAgd2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0V2ViR0xFbmFibGVkIiwgIjEi
KTsKICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CiAgICAg
ICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412695</attachid>
            <date>2020-10-29 15:40:02 -0700</date>
            <delta_ts>2020-10-29 18:17:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218355-20201029154001.patch</filename>
            <type>text/plain</type>
            <size>31205</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI2OTE2OCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDE2IEBACisyMDIwLTEwLTI5ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKwor
ICAgICAgICBSZW1vdmUgYWxsIHJlbWFpbmluZyBib29sZWFuIG92ZXJyaWRlUHJlZmVyZW5jZSBj
YWxscworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4
MzU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAg
ICAgICBBZGQgYSBmZXcgbW9yZSBkZWZhdWx0cyBmb3IgRHVtcFJlbmRlclRyZWUgdG8gYWxsb3cg
dGhlbSB0byBiZQorICAgICAgICB1c2VkIGFzIHRlc3QgaGVhZGVyIGNvbW1hbmRzLgorCisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwOgorICAgICAgICAoV1RSOjpUZXN0
T3B0aW9uczo6ZGVmYXVsdHMpOgorCiAyMDIwLTEwLTI5ICBTaWh1aSBMaXUgIDxzaWh1aV9saXVA
YXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJldmVydGluZyByMjY4MTkyLgpJbmRl
eDogVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3RPcHRpb25zLmNwcAkocmV2aXNpb24gMjY5MTY0KQorKysg
VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE9wdGlvbnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01
MSwxOSArNTEsMjMgQEAgY29uc3QgVGVzdEZlYXR1cmVzJiBUZXN0T3B0aW9uczo6ZGVmYXVsdAog
ICAgICAgICBmZWF0dXJlcy5ib29sV2ViUHJlZmVyZW5jZUZlYXR1cmVzID0gewogICAgICAgICAg
ICAgLy8gVGhlc2UgYXJlIFdlYlByZWZlcmVuY2UgdmFsdWVzIHRoYXQgbXVzdCBhbHdheXMgYmUg
c2V0IGFzIHRoZXkgbWF5CiAgICAgICAgICAgICAvLyBkaWZmZXIgZnJvbSB0aGUgZGVmYXVsdCBz
ZXQgaW4gdGhlIFdlYlByZWZlcmVuY2VzKi55YW1sIGNvbmZpZ3VyYXRpb24uCisgICAgICAgICAg
ICB7ICJBY2NlbGVyYXRlZERyYXdpbmdFbmFibGVkIiwgZmFsc2UgfSwKICAgICAgICAgICAgIHsg
IkFsbG93Q3Jvc3NPcmlnaW5TdWJyZXNvdXJjZXNUb0Fza0ZvckNyZWRlbnRpYWxzIiwgZmFsc2Ug
fSwKICAgICAgICAgICAgIHsgIkFsbG93VG9wTmF2aWdhdGlvblRvRGF0YVVSTHMiLCB0cnVlIH0s
Ci0gICAgICAgICAgICB7ICJBY2NlbGVyYXRlZERyYXdpbmdFbmFibGVkIiwgZmFsc2UgfSwKICAg
ICAgICAgICAgIHsgIkF0dGFjaG1lbnRFbGVtZW50RW5hYmxlZCIsIGZhbHNlIH0sCi0gICAgICAg
ICAgICB7ICJVc2VzQmFja0ZvcndhcmRDYWNoZSIsIGZhbHNlIH0sCiAgICAgICAgICAgICB7ICJD
b2xvckZpbHRlckVuYWJsZWQiLCBmYWxzZSB9LAorICAgICAgICAgICAgeyAiSGlkZGVuUGFnZURP
TVRpbWVyVGhyb3R0bGluZ0VuYWJsZWQiLCBmYWxzZSB9LAogICAgICAgICAgICAgeyAiSW5zcGVj
dG9yQWRkaXRpb25zRW5hYmxlZCIsIGZhbHNlIH0sCiAgICAgICAgICAgICB7ICJJbnRlcnNlY3Rp
b25PYnNlcnZlckVuYWJsZWQiLCBmYWxzZSB9LAorICAgICAgICAgICAgeyAiSmF2YVNjcmlwdEVu
YWJsZWQiLCB0cnVlIH0sCiAgICAgICAgICAgICB7ICJLZXlnZW5FbGVtZW50RW5hYmxlZCIsIGZh
bHNlIH0sCisgICAgICAgICAgICB7ICJMb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHkiLCB0cnVlIH0s
CisgICAgICAgICAgICB7ICJNYWluQ29udGVudFVzZXJHZXN0dXJlT3ZlcnJpZGVFbmFibGVkIiwg
ZmFsc2UgfSwKICAgICAgICAgICAgIHsgIk1lbnVJdGVtRWxlbWVudEVuYWJsZWQiLCBmYWxzZSB9
LAogICAgICAgICAgICAgeyAiTW9kZXJuTWVkaWFDb250cm9sc0VuYWJsZWQiLCB0cnVlIH0sCiAg
ICAgICAgICAgICB7ICJTcGF0aWFsTmF2aWdhdGlvbkVuYWJsZWQiLCBmYWxzZSB9LAogICAgICAg
ICAgICAgeyAiVGFic1RvTGlua3MiLCBmYWxzZSB9LAorICAgICAgICAgICAgeyAiVXNlc0JhY2tG
b3J3YXJkQ2FjaGUiLCBmYWxzZSB9LAogCiAgICAgICAgICAgICB7ICJDU1NMb2dpY2FsRW5hYmxl
ZCIsIGZhbHNlIH0sCiAgICAgICAgICAgICB7ICJMaW5lSGVpZ2h0VW5pdHNFbmFibGVkIiwgZmFs
c2UgfSwKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI2OTE2NikKKysrIExheW91dFRlc3RzL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ3IEBACisyMDIwLTEwLTI5ICBTYW0gV2Vpbmln
ICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgYWxsIHJlbWFpbmluZyBib29s
ZWFuIG92ZXJyaWRlUHJlZmVyZW5jZSBjYWxscworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE4MzU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgUmVtb3ZlIHVubmVjZXNzYXJ5IHRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlIGNhbGxzIChmb3IgZmVhdHVyZXMgb24KKyAgICAgICAgYnkgZGVmYXVsdCkg
YW5kIHJlcGxhY2Ugb3RoZXJzIHdpdGggdGVzdCBoZWFkZXIgY29tbWFuZHMgb3IgaW50ZXJuYWxz
LnNldHRpbmdzCisgICAgICAgIGFzIGFwcHJvcHJpYXRlLiAKKworICAgICAgICAqIGZhc3QvY2Fu
dmFzL3dlYmdsL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qczoKKyAgICAgICAgKiBmYXN0L2RvbS90
aW1lci10aHJvdHRsaW5nLWhpZGRlbi1wYWdlLW5vbi1uZXN0ZWQuaHRtbDoKKyAgICAgICAgKiBm
YXN0L2RvbS90aW1lci10aHJvdHRsaW5nLWhpZGRlbi1wYWdlLmh0bWw6CisgICAgICAgICogZmFz
dC9ldmVudHMvcmVzb3VyY2VzL3RhYmluZGV4LWZvY3VzLWJsdXItYWxsLmpzOgorICAgICAgICAq
IGZhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNlcy0yLWV4cGVjdGVkLnR4dDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBmYXN0L2hhcm5lc3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMtMi5odG1sOiBS
ZW1vdmVkLgorICAgICAgICAqIGZhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNlcy1leHBl
Y3RlZC50eHQ6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9oYXJuZXNzL292ZXJyaWRlLXByZWZl
cmVuY2VzLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9sb2FkZXIvZGlzcGxheS1pbWFn
ZS11bnNldC1jYW4tYmxvY2staW1hZ2UtYW5kLWNhbi1yZWxvYWQtaW4tcGxhY2UuaHRtbDoKKyAg
ICAgICAgKiBmYXN0L2xvYWRlci9pbWFnZXMtZW5hYmxlZC11bnNldC1jYW4tYmxvY2staW1hZ2Ut
YW5kLWNhbi1yZWxvYWQtaW4tcGxhY2UuaHRtbDoKKyAgICAgICAgKiBmYXN0L21lZGlhY2FwdHVy
ZWZyb21lbGVtZW50L3Jlc291cmNlcy93ZWJnbC10ZXN0LmpzOgorICAgICAgICAqIGZhc3QvcGFy
c2VyL25vc2NyaXB0LXdpdGgtamF2YXNjcmlwdC1kaXNhYmxlZC5odG1sOgorICAgICAgICAqIGZh
c3QvcGFyc2VyL25vc2NyaXB0LXdpdGgtamF2YXNjcmlwdC1lbmFibGVkLmh0bWw6CisgICAgICAg
ICogaHR0cC90ZXN0cy9jYWNoZS9kaXNwbGF5LWltYWdlLXVuc2V0LWFsbG93cy1jYWNoZWQtaW1h
Z2UtbG9hZC5odG1sOgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9mYXZpY29uLWxvYWRzLXdp
dGgtaWNvbi1sb2FkaW5nLW92ZXJyaWRlLmh0bWw6CisgICAgICAgICogaHR0cC90ZXN0cy9taXNj
L2Zhdmljb24tbG9hZHMtd2l0aC1pbWFnZXMtZGlzYWJsZWQuaHRtbDoKKyAgICAgICAgKiBodHRw
L3Rlc3RzL3hzbC94c2x0LXRyYW5zZm9ybS13aXRoLWphdmFzY3JpcHQtZGlzYWJsZWQuaHRtbDoK
KyAgICAgICAgKiBtZWRpYS9yZW1vdmUtdmlkZW8tYmVzdC1tZWRpYS1lbGVtZW50LWluLW1haW4t
ZnJhbWUtY3Jhc2guaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvYXN5
Y2hyb25vdXMtZGVhZGxvY2std2l0aC10aW1lci1hbmQtZXZhbHVhdGUuaHRtbDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvYXN5bmNocm9ub3VzLWRlc3Ryb3ktYmVmb3JlLWlu
aXRpYWxpemF0aW9uLmh0bWw6CisgICAgICAgICogcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL2Rl
c3Ryb3ktZHVyaW5nLWFzeW5jLW5wcC1uZXcuaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMt
d2syL3BsdWdpbnMvc2NyaXB0LW9iamVjdC1hY2Nlc3MtZmFpbHMtZHVyaW5nLXNsb3ctaW5pdGlh
bGl6YXRpb24uaHRtbDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvc2xvdy9h
c3luY2hyb25vdXMtcGx1Z2luLWluaXRpYWxpemF0aW9uLW11bHRpcGxlLmh0bWw6CisgICAgICAg
ICogcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3Nsb3cvYXN5bmNocm9ub3VzLXBsdWdpbi1pbml0
aWFsaXphdGlvbi5odG1sOgorICAgICAgICAqIHN2Zy9hcy1pbWFnZS9zdmctaW1hZ2Utd2l0aC1k
YXRhLXVyaS1pbWFnZXMtZGlzYWJsZWQuaHRtbDoKKyAgICAgICAgKiB3ZWJhdWRpby9yZXNvdXJj
ZXMvYXVkaW8tdGVzdGluZy5qczoKKyAgICAgICAgKiB3ZWJnbC8xLjAuMy9yZXNvdXJjZXMvd2Vi
Z2xfdGVzdF9maWxlcy9jb25mb3JtYW5jZS9tb3JlL3VuaXQuanM6CisgICAgICAgICogd2ViZ2wv
MS4wLjMvcmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
OgorICAgICAgICAqIHdlYmdsLzIuMC4wL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZv
cm1hbmNlL21vcmUvdW5pdC5qczoKKyAgICAgICAgKiB3ZWJnbC8yLjAuMC9yZXNvdXJjZXMvd2Vi
Z2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0LXByZS5qczoKKyAgICAgICAgKiB3ZWJnbC9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanM6CisgICAgICAgICogd2ViZ2wvcmVzb3VyY2VzL3dlYmdsX3Rlc3Rf
ZmlsZXMvanMvanMtdGVzdC1wcmUuanM6CisKIDIwMjAtMTAtMjkgIExhdXJvIE1vdXJhICA8bG1v
dXJhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dMSUJdIEdhcmRlbmluZyBzb21lIGZhaWx1cmVz
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2NhbnZhcy93ZWJnbC9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9jYW52YXMvd2ViZ2wvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2NhbnZhcy93ZWJnbC9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMJKHdvcmtpbmcgY29weSkKQEAg
LTM4LDcgKzM4LDYgQEAKICAgICB9CiAKICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKSB7Ci0gICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwogICAgICAgd2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyLmR1bXBBc1RleHQoKTsKICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
ci53YWl0VW50aWxEb25lKCk7CiAgICAgfQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vdGlt
ZXItdGhyb3R0bGluZy1oaWRkZW4tcGFnZS1ub24tbmVzdGVkLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvZmFzdC9kb20vdGltZXItdGhyb3R0bGluZy1oaWRkZW4tcGFnZS1ub24tbmVz
dGVkLmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL3RpbWVy
LXRocm90dGxpbmctaGlkZGVuLXBhZ2Utbm9uLW5lc3RlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDQgKzEsNCBAQAotPGh0bWw+Cis8aHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIEhp
ZGRlblBhZ2VET01UaW1lclRocm90dGxpbmdFbmFibGVkPXRydWUgXSAtLT4KIDxoZWFkPgogICAg
IDxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQ+CkBAIC0zNSw3ICszNSw2IEBACiAgICAgICAgICAgICAgICAgZGVidWcoJ1Ro
aXMgdGVzdCByZXF1aXJlcyB0ZXN0UnVubmVyJyk7CiAgICAgICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICAgICAgfQotICAgICAgICAgICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2Uo
IldlYktpdEhpZGRlblBhZ2VET01UaW1lclRocm90dGxpbmdFbmFibGVkIiwgMSk7CiAKICAgICAg
ICAgICAgIHRpbWVySGFuZGxlID0gc2V0VGltZW91dCh0ZXN0VGltZXIsIHRpbWVvdXRJbnRlcnZh
bCk7CiAgICAgICAgICAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaXNUaW1lclRocm90dGxl
ZCh0aW1lckhhbmRsZSkiKTsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL3RpbWVyLXRocm90
dGxpbmctaGlkZGVuLXBhZ2UuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS90aW1lci10aHJvdHRsaW5nLWhpZGRlbi1wYWdlLmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysr
IExheW91dFRlc3RzL2Zhc3QvZG9tL3RpbWVyLXRocm90dGxpbmctaGlkZGVuLXBhZ2UuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQgQEAKLTxodG1sPgorPGh0bWw+PCEtLSB3ZWJraXQt
dGVzdC1ydW5uZXIgWyBIaWRkZW5QYWdlRE9NVGltZXJUaHJvdHRsaW5nRW5hYmxlZD10cnVlIF0g
LS0+CiA8Ym9keT4KICAgICA8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMi
Pjwvc2NyaXB0PgogICAgIDxzY3JpcHQ+CkBAIC0zMSw3ICszMSw2IEBACiAgICAgICAgICAgICAg
ICAgZGVidWcoJ1RoaXMgdGVzdCByZXF1aXJlcyB0ZXN0UnVubmVyJyk7CiAgICAgICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgdGVzdFJ1bm5lci5vdmVycmlk
ZVByZWZlcmVuY2UoIldlYktpdEhpZGRlblBhZ2VET01UaW1lclRocm90dGxpbmdFbmFibGVkIiwg
MSk7CiAKICAgICAgICAgICAgIHRpbWVySGFuZGxlID0gc2V0VGltZW91dCh0ZXN0VGltZXIsIHRp
bWVvdXRJbnRlcnZhbCk7CiAgICAgICAgICAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaXNU
aW1lclRocm90dGxlZCh0aW1lckhhbmRsZSkiKTsKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3Jlc291cmNlcy90YWJpbmRleC1mb2N1cy1ibHVyLWFsbC5qcwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwu
anMJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Jlc291cmNl
cy90YWJpbmRleC1mb2N1cy1ibHVyLWFsbC5qcwkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDQg
QEAKIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVm
ZXJlbmNlKCJXZWJLaXRKYXZhRW5hYmxlZCIsICIwIik7CiAgICAgdGVzdFJ1bm5lci53YWl0VW50
aWxEb25lKCk7CiAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiB9CkluZGV4OiBMYXlvdXRU
ZXN0cy9mYXN0L2hhcm5lc3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMtMi1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9oYXJuZXNzL292ZXJyaWRlLXByZWZlcmVuY2Vz
LTItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2hh
cm5lc3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMtMi1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpA
QCAtMSwzICswLDAgQEAKLVRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IHRlc3RSdW5uZXIgY2FuIGhh
dmUgaXRzIGRlZmF1bHQgcHJlZmVyZW5jZXMgb3ZlcnJpZGVuLiBUaGlzIHRlc3QgdmVyaWZpZXMg
dGhhdCB0aGUgQVBJIHdpbGwgYWNjZXB0IHN0cmluZyB2YWx1ZXMgYW5kIGFsc28gb3ZlcnJpZGUg
dGhlIGRlZmF1bHQgZm9udCBzaXplLiBZb3Ugc2hvdWxkIHNlZSAiUEFTUyIgYmVsb3cuCi0KLVBB
U1MKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNlcy0y
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9oYXJuZXNzL292ZXJyaWRlLXBy
ZWZlcmVuY2VzLTIuaHRtbAkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9o
YXJuZXNzL292ZXJyaWRlLXByZWZlcmVuY2VzLTIuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDE4
ICswLDAgQEAKLTxodG1sPgotPHNjcmlwdD4KLSAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
LSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgIHRlc3RSdW5uZXIub3Zl
cnJpZGVQcmVmZXJlbmNlKCJXZWJLaXREZWZhdWx0Rm9udFNpemUiLCAiMjQiKTsKLSAgICB9Ci08
L3NjcmlwdD4KLTxib2R5PgotICAgIDxwPlRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IHRlc3RSdW5u
ZXIgY2FuIGhhdmUgaXRzIGRlZmF1bHQgcHJlZmVyZW5jZXMgb3ZlcnJpZGVuLgotICAgIFRoaXMg
dGVzdCB2ZXJpZmllcyB0aGF0IHRoZSBBUEkgd2lsbCBhY2NlcHQgc3RyaW5nIHZhbHVlcyBhbmQg
YWxzbyBvdmVycmlkZSB0aGUgZGVmYXVsdCBmb250IHNpemUuCi0gICAgWW91IHNob3VsZCBzZWUg
IlBBU1MiIGJlbG93LjwvcD4KLSAgICA8c2NyaXB0PgotICAgICAgICB2YXIgcCA9IGRvY3VtZW50
LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJwIilbMF07Ci0gICAgICAgIGlmICghd2luZG93LnRlc3RS
dW5uZXIgfHwgd2luZG93LmdldENvbXB1dGVkU3R5bGUocCkuZm9udFNpemUgPT0gIjI0cHgiKQot
ICAgICAgICAgICAgZG9jdW1lbnQud3JpdGUoIlBBU1MiKTsKLSAgICA8L3NjcmlwdD4KLTwvYm9k
eT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVm
ZXJlbmNlcy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9oYXJu
ZXNzL292ZXJyaWRlLXByZWZlcmVuY2VzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjY5MTYwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9oYXJuZXNzL292ZXJyaWRlLXByZWZlcmVuY2VzLWV4cGVjdGVk
LnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDMgKzAsMCBAQAotVGhpcyBpcyBhIHRlc3QgdGhhdCB2
ZXJpZmllcyB0aGF0IHRlc3RSdW5uZXIgY2FuIGhhdmUgaXRzIGRlZmF1bHQgcHJlZmVyZW5jZXMg
b3ZlcnJpZGRlbi4gVGhpcyB0ZXN0IHNwZWNpZmljYWxseSBjaGVja3MgdGhhdCBKYXZhc2NyaXB0
IGNhbiBiZSBkaXNhYmxlZCwgYW5kIHlvdSBzaG91bGQgc2VlICJQQVNTIiBiZWxvdyBpZiB2aWV3
aW5nIHdpdGggYSBicm93c2VyLgotCi1QQVNTCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2hhcm5l
c3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9m
YXN0L2hhcm5lc3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMuaHRtbAkocmV2aXNpb24gMjY5MTYwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9oYXJuZXNzL292ZXJyaWRlLXByZWZlcmVuY2VzLmh0bWwJKG5v
bmV4aXN0ZW50KQpAQCAtMSwxOCArMCwwIEBACi08aHRtbD4KLTxib2R5PgotPHNjcmlwdD4KLSAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0
KCkKLSAgICAgICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdEphdmFTY3Jp
cHRFbmFibGVkIiwgZmFsc2UpOwotICAgIH0KLQotICAgIGZ1bmN0aW9uIGxvYWRzdGF0dXMoKSB7
Ci0gICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICAgICAgICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJzdGF0dXMiKS5pbm5lckhUTUwgPSAiRkFJTCI7Ci0gICAgfQotPC9zY3Jp
cHQ+Ci08Ym9keSBvbmxvYWQ9ImxvYWRzdGF0dXMoKSI+Ci0gICAgPHA+VGhpcyBpcyBhIHRlc3Qg
dGhhdCB2ZXJpZmllcyB0aGF0IHRlc3RSdW5uZXIgY2FuIGhhdmUgaXRzIGRlZmF1bHQgcHJlZmVy
ZW5jZXMgb3ZlcnJpZGRlbi4gIFRoaXMgdGVzdCBzcGVjaWZpY2FsbHkgY2hlY2tzIHRoYXQgSmF2
YXNjcmlwdCBjYW4gYmUgZGlzYWJsZWQsIGFuZCB5b3Ugc2hvdWxkIHNlZSAiUEFTUyIgYmVsb3cg
aWYgdmlld2luZyB3aXRoIGEgYnJvd3Nlci48L3A+Ci0gICAgPHNwYW4gaWQ9InN0YXR1cyI+UEFT
Uzwvc3Bhbj4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvbG9hZGVy
L2Rpc3BsYXktaW1hZ2UtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBs
YWNlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvZGlzcGxheS1p
bWFnZS11bnNldC1jYW4tYmxvY2staW1hZ2UtYW5kLWNhbi1yZWxvYWQtaW4tcGxhY2UuaHRtbAko
cmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvZGlzcGxheS1pbWFn
ZS11bnNldC1jYW4tYmxvY2staW1hZ2UtYW5kLWNhbi1yZWxvYWQtaW4tcGxhY2UuaHRtbAkod29y
a2luZyBjb3B5KQpAQCAtMSw3ICsxLDcgQEAKIDxodG1sPgogPGhlYWQ+CiA8c2NyaXB0PgotLy8g
U2V0dGluZyBXZWJLaXREaXNwbGF5SW1hZ2VzS2V5IGlzIGFzeW5jaHJvbm91cywgc28gdXNpbmcg
cXVldWVSZWxvYWQgYW5kIHNldEludGVydmFsIHRvIGNoZWNrIHdoZW4gdGhlIHNldHRpbmcgYWN0
dWFsbHkgdGFrZSBlZmZlY3QuCisvLyBTZXR0aW5nIGxvYWRzSW1hZ2VzQXV0b21hdGljYWxseSBp
cyBhc3luY2hyb25vdXMsIHNvIHVzaW5nIHF1ZXVlUmVsb2FkIGFuZCBzZXRJbnRlcnZhbCB0byBj
aGVjayB3aGVuIHRoZSBzZXR0aW5nIGFjdHVhbGx5IHRha2UgZWZmZWN0LgogCiB2YXIgaW50ZXJ2
YWxJZDsKIHZhciBpbWFnZU9ubG9hZEZpcmVkID0gMDsKQEAgLTksNyArOSw3IEBAIHZhciBpbWFn
ZU9ubG9hZEZpcmVkID0gMDsKIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgIHRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpOwogICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0SW1hZ2Vz
RW5hYmxlZCh0cnVlKTsKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgnV2ViS2l0
RGlzcGxheUltYWdlc0tleScsIDApOworICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Muc2V0
TG9hZHNJbWFnZXNBdXRvbWF0aWNhbGx5KGZhbHNlKTsKICAgICB0ZXN0UnVubmVyLnF1ZXVlUmVs
b2FkKCk7CiB9CiAKQEAgLTE3LDEyICsxNywxMiBAQCBmdW5jdGlvbiBydW5UZXN0KCkKIHsKICAg
ICB2YXIgaW1hZ2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaW1hZ2UnKTsKICAgICBpZiAo
aW1hZ2UubmF0dXJhbEhlaWdodCAhPSAwIHx8IGltYWdlLm5hdHVyYWxXaWR0aCAhPSAwIHx8IGlt
YWdlT25sb2FkRmlyZWQgIT0gMCkgewotICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgn
cmVzdWx0JykuaW5uZXJIVE1MID0gJ0ZBSUxVUkU6IEltYWdlIHNob3VsZCBub3QgYmUgbG9hZGVk
IHdoZW4gRGlzcGxheUltYWdlIGlzIHVuc2V0JzsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ3Jlc3VsdCcpLmlubmVySFRNTCA9ICdGQUlMVVJFOiBJbWFnZSBzaG91bGQgbm90IGJl
IGxvYWRlZCB3aGVuIGxvYWRzSW1hZ2VzQXV0b21hdGljYWxseSBpcyB1bnNldCc7CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgnV2Vi
S2l0RGlzcGxheUltYWdlc0tleScsIDEpOwotICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdy
ZXN1bHQnKS5pbm5lckhUTUwgPSAnRkFJTFVSRTogSW1hZ2Ugc2hvdWxkIHJlbG9hZCBpbi1wbGFj
ZSB3aGVuIERpc3BhbHlJbWFnZSBpcyBjaGFuZ2VzIGZyb20gdW5zZXQgdG8gc2V0JzsKKyAgICB3
aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldExvYWRzSW1hZ2VzQXV0b21hdGljYWxseSh0cnVl
KTsKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0JykuaW5uZXJIVE1MID0gJ0ZB
SUxVUkU6IEltYWdlIHNob3VsZCByZWxvYWQgaW4tcGxhY2Ugd2hlbiBsb2Fkc0ltYWdlc0F1dG9t
YXRpY2FsbHkgaXMgY2hhbmdlcyBmcm9tIHVuc2V0IHRvIHNldCc7CiAgICAgdGVzdFJ1bm5lci53
YWl0VW50aWxEb25lKCk7CiAgICAgaW50ZXJ2YWxJZCA9IHdpbmRvdy5zZXRJbnRlcnZhbChydW5U
ZXN0UmVzdCwgMTApOwogfQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaW1hZ2VzLWVu
YWJsZWQtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBsYWNlLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvaW1hZ2VzLWVuYWJsZWQtdW5z
ZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBsYWNlLmh0bWwJKHJldmlzaW9u
IDI2OTE2MCkKKysrIExheW91dFRlc3RzL2Zhc3QvbG9hZGVyL2ltYWdlcy1lbmFibGVkLXVuc2V0
LWNhbi1ibG9jay1pbWFnZS1hbmQtY2FuLXJlbG9hZC1pbi1wbGFjZS5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC04LDcgKzgsNiBAQCB2YXIgaW1hZ2VPbmxvYWRGaXJlZCA9IDA7CiAKIGlmICh3aW5k
b3cudGVzdFJ1bm5lcikgewogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotICAgIHRlc3RS
dW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCdXZWJLaXREaXNwbGF5SW1hZ2VzS2V5JywgMSk7CiAg
ICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRJbWFnZXNFbmFibGVkKGZhbHNlKTsKICAg
ICB0ZXN0UnVubmVyLnF1ZXVlUmVsb2FkKCk7CiB9CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L21l
ZGlhY2FwdHVyZWZyb21lbGVtZW50L3Jlc291cmNlcy93ZWJnbC10ZXN0LmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2Zhc3QvbWVkaWFjYXB0dXJlZnJvbWVsZW1lbnQvcmVzb3VyY2VzL3dl
YmdsLXRlc3QuanMJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL2Zhc3QvbWVkaWFj
YXB0dXJlZnJvbWVsZW1lbnQvcmVzb3VyY2VzL3dlYmdsLXRlc3QuanMJKHdvcmtpbmcgY29weSkK
QEAgLTEsNyArMSw1IEBACiAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIC8vIERpZmZlcmVuY2VzIHdpdGggcmVz
cGVjdCB0byBLaHJvbm9zIHZlcnNpb24gb2Ygd2ViZ2wtdGVzdC5qcwotaWYgKHdpbmRvdy50ZXN0
UnVubmVyKQotICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVu
YWJsZWQiLCAiMSIpOwogCiBmdW5jdGlvbiBhc3NlcnRNc2coYXNzZXJ0aW9uLCBtc2cpIHsKICAg
ICBpZiAoYXNzZXJ0aW9uKSB7CkBAIC0xMyw3ICsxMSw2IEBAIGZ1bmN0aW9uIGFzc2VydE1zZyhh
c3NlcnRpb24sIG1zZykgewogCiBmdW5jdGlvbiBpbml0Tm9uS2hyb25vc0ZyYW1ld29yayh3YWl0
VW50aWxEb25lKSB7CiAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgIHRlc3RSdW5uZXIu
b3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwogICAgIHRlc3RS
dW5uZXIuZHVtcEFzVGV4dCgpOwogICAgIGlmICh3YWl0VW50aWxEb25lKSB7CiAgICAgICB3aW5k
b3cuanNUZXN0SXNBc3luYyA9IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3BhcnNlci9u
b3NjcmlwdC13aXRoLWphdmFzY3JpcHQtZGlzYWJsZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L3BhcnNlci9ub3NjcmlwdC13aXRoLWphdmFzY3JpcHQtZGlzYWJsZWQuaHRt
bAkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9wYXJzZXIvbm9zY3JpcHQt
d2l0aC1qYXZhc2NyaXB0LWRpc2FibGVkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTQsNyArNCw3
IEBACiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKICAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1lc0FzVGV4dCgpOwotICAgIHRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRKYXZhU2NyaXB0RW5hYmxlZCIsIGZhbHNlKTsK
KyAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFNjcmlwdEVuYWJsZWQoZmFsc2UpOwog
fQogPC9zY3JpcHQ+CiAKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvcGFyc2VyL25vc2NyaXB0LXdp
dGgtamF2YXNjcmlwdC1lbmFibGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9wYXJzZXIvbm9zY3JpcHQtd2l0aC1qYXZhc2NyaXB0LWVuYWJsZWQuaHRtbAkocmV2aXNpb24g
MjY5MTYwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9wYXJzZXIvbm9zY3JpcHQtd2l0aC1qYXZhc2Ny
aXB0LWVuYWJsZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMyw3ICszLDYgQEAKIDxzY3JpcHQ+
CiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
LSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0SmF2YVNjcmlwdEVuYWJs
ZWQiLCB0cnVlKTsKIH0KIDwvc2NyaXB0PgogCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L2NhY2hlL2Rpc3BsYXktaW1hZ2UtdW5zZXQtYWxsb3dzLWNhY2hlZC1pbWFnZS1sb2FkLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9jYWNoZS9kaXNwbGF5LWltYWdl
LXVuc2V0LWFsbG93cy1jYWNoZWQtaW1hZ2UtbG9hZC5odG1sCShyZXZpc2lvbiAyNjkxNjApCisr
KyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2NhY2hlL2Rpc3BsYXktaW1hZ2UtdW5zZXQtYWxsb3dz
LWNhY2hlZC1pbWFnZS1sb2FkLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTMsNyArMyw3IEBACiA8
aGVhZD4KIDxzY3JpcHQ+CiAvLyBPcGVucyB0d28gd2luZG93cyBjb250YWluaW5nIHRoZSBzYW1l
IGltYWdlLiBGaXJzdCB3aW5kb3cgd2lsbCBwb3B1bGF0ZSB0aGUgY2FjaGUgd2l0aAotLy8gaW1h
Z2UuIFRoZSBzZWNvbmQgd2luZG93IGlzIG9wZW5lZCB3aXRoIFdlYktpdERpc3BsYXlJbWFnZXNL
ZXkgdW5zZXQsIGJ1dCBpbWFnZSBzaG91bGQKKy8vIGltYWdlLiBUaGUgc2Vjb25kIHdpbmRvdyBp
cyBvcGVuZWQgd2l0aCBsb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHkgdW5zZXQsIGJ1dCBpbWFnZSBz
aG91bGQKIC8vIHN0aWxsIGxvYWQgc2luY2UgaXQgaXMgaW4gY2FjaGUuCiBmdW5jdGlvbiBydW5U
ZXN0KCkKIHsKQEAgLTE5LDcgKzE5LDcgQEAgZnVuY3Rpb24gcnVuVGVzdCgpCiAKIGZ1bmN0aW9u
IGltYWdlMUxvYWRlZCgpCiB7Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoJ1dl
YktpdERpc3BsYXlJbWFnZXNLZXknLCAwKTsKKyAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdz
LnNldExvYWRzSW1hZ2VzQXV0b21hdGljYWxseShmYWxzZSk7CiAgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoJ3Jlc3VsdCcpLmlubmVySFRNTCA9ICdGQUlMVVJFOiBpbWFnZTIuaHRtbCBub3Qg
bG9hZGVkJzsKICAgICB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpIHt3aW5kb3cub3Blbigi
cmVzb3VyY2VzL2ltYWdlMi5odG1sIiwgIl9ibGFuayIpO30sIDApOwogfQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9taXNjL2Zhdmljb24tbG9hZHMtd2l0aC1pY29uLWxvYWRpbmctb3Zl
cnJpZGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvZmF2
aWNvbi1sb2Fkcy13aXRoLWljb24tbG9hZGluZy1vdmVycmlkZS5odG1sCShyZXZpc2lvbiAyNjkx
NjApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvZmF2aWNvbi1sb2Fkcy13aXRoLWlj
b24tbG9hZGluZy1vdmVycmlkZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQgKzEsNCBAQAot
PGh0bWw+Cis8aHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIExvYWRzSW1hZ2VzQXV0b21h
dGljYWxseT1mYWxzZSBdIC0tPgogPGhlYWQ+CiA8c2NyaXB0PgogZnVuY3Rpb24gcnVuVGVzdCgp
CkBAIC03LDcgKzcsNiBAQCBmdW5jdGlvbiBydW5UZXN0KCkKICAgICAgICAgdGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CiAgICAgICAgIHRlc3RSdW5uZXIuZHVtcFJlc291cmNlTG9hZENhbGxiYWNr
cygpOwogICAgICAgICB0ZXN0UnVubmVyLnNldEljb25EYXRhYmFzZUVuYWJsZWQodHJ1ZSk7Ci0g
ICAgICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXREaXNwbGF5SW1hZ2Vz
S2V5IiwgMCk7CiAgICAgICAgIGludGVybmFscy5zZXRMb2Fkc1NpdGVJY29uc0lnbm9yaW5nSW1h
Z2VMb2FkaW5nU2V0dGluZyh0cnVlKTsKICAgICAgICAgdGVzdFJ1bm5lci5xdWV1ZVJlbG9hZCgp
OwogICAgIH0KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9mYXZpY29uLWxvYWRz
LXdpdGgtaW1hZ2VzLWRpc2FibGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9taXNjL2Zhdmljb24tbG9hZHMtd2l0aC1pbWFnZXMtZGlzYWJsZWQuaHRtbAkocmV2
aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL2Zhdmljb24tbG9h
ZHMtd2l0aC1pbWFnZXMtZGlzYWJsZWQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSw0ICsxLDQg
QEAKLTxodG1sPgorPGh0bWw+PCEtLSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBMb2Fkc0ltYWdlc0F1
dG9tYXRpY2FsbHk9ZmFsc2UgXSAtLT4KIDxoZWFkPgogPHNjcmlwdD4KIGZ1bmN0aW9uIHJ1blRl
c3QoKQpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94c2wveHNsdC10cmFuc2Zvcm0td2l0
aC1qYXZhc2NyaXB0LWRpc2FibGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy94c2wveHNsdC10cmFuc2Zvcm0td2l0aC1qYXZhc2NyaXB0LWRpc2FibGVkLmh0bWwJ
KHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMveHNsL3hzbHQtdHJh
bnNmb3JtLXdpdGgtamF2YXNjcmlwdC1kaXNhYmxlZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC00
LDcgKzQsNyBAQAogaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICAgdGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7CiAgICAgdGVzdFJ1bm5lci5kdW1wQ2hpbGRGcmFtZXNBc1RleHQoKTsKLSAgICB0
ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0SmF2YVNjcmlwdEVuYWJsZWQiLCBm
YWxzZSk7CisgICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRTY3JpcHRFbmFibGVkKGZh
bHNlKTsKIH0KIAogZnVuY3Rpb24gc2hvdWxkTm90QmVFeGVjdXRlZCgpCkluZGV4OiBMYXlvdXRU
ZXN0cy9tZWRpYS9yZW1vdmUtdmlkZW8tYmVzdC1tZWRpYS1lbGVtZW50LWluLW1haW4tZnJhbWUt
Y3Jhc2guaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9yZW1vdmUtdmlkZW8t
YmVzdC1tZWRpYS1lbGVtZW50LWluLW1haW4tZnJhbWUtY3Jhc2guaHRtbAkocmV2aXNpb24gMjY5
MTYwKQorKysgTGF5b3V0VGVzdHMvbWVkaWEvcmVtb3ZlLXZpZGVvLWJlc3QtbWVkaWEtZWxlbWVu
dC1pbi1tYWluLWZyYW1lLWNyYXNoLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBA
Ci08IURPQ1RZUEUgaHRtbD4KKzwhRE9DVFlQRSBodG1sPjwhLS0gd2Via2l0LXRlc3QtcnVubmVy
IFsgTWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZD10cnVlIF0gLS0+CiA8aHRt
bD4KIDxib2R5PgogPHAgaWQ9ImRlc2NyaXB0aW9uIj5UaGlzIHRlc3RzIHJlbW92aW5nIGEgdmlk
ZW8gZWxlbWVudCBpbnNpZGUgYW4gaWZyYW1lIHdoaWxlIGFub3RoZXIgdmlkZW8gaW4gdGhlIG1h
aW4gZnJhbWUgaXMgcGxheWluZyBkb2VzIG5vdCBoaXQgYSByZWxlYXNlIGFzc2VydGlvbi48L3A+
CkBAIC0yNiw3ICsyNiw2IEBAIGZ1bmN0aW9uIGNvbnRpbnVlVGVzdCgpIHsKIH0KIAogaWYgKHdp
bmRvdy5pbnRlcm5hbHMpIHsKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2Vi
S2l0TWFpbkNvbnRlbnRVc2VyR2VzdHVyZU92ZXJyaWRlRW5hYmxlZCIsIDEpOwogICAgIGludGVy
bmFscy5zZXRNZWRpYUVsZW1lbnRSZXN0cmljdGlvbnModmlkZW8sICJPdmVycmlkZVVzZXJHZXN0
dXJlUmVxdWlyZW1lbnRGb3JNYWluQ29udGVudCIpOwogfSBlbHNlCiAgICAgZGVzY3JpcHRpb24u
aW5uZXJIVE1MICs9ICc8YnI+VGhpcyB0ZXN0IHJlcXVyaWVzIE92ZXJyaWRlVXNlckdlc3R1cmVS
ZXF1aXJlbWVudEZvck1haW5Db250ZW50LiBNYW51YWxseSBzZXQgdGhpcyBzZXR0aW5nIG9yIHVz
ZSBXZWJLaXRUZXN0UnVubmVyLic7CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2sy
L1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9z
LXdrMi9UZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9pb3Mtd2syL1Rlc3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTQyOCw3
ICs0MjgsNiBAQCBmYXN0L2ZyYW1lcy9mcmFtZS1wcm9ncmFtbWF0aWMtbm9yZXNpemUuCiBmYXN0
L2ZyYW1lcy9mcmFtZS13aXRoLW5vcmVzaXplLWNhbi1iZS1yZXNpemVkLWFmdGVyLXJlbW92YWwt
b2Ytbm9yZXNpemUuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9mcmFtZXMvZnJhbWUtd2l0aC1ub3Jl
c2l6ZS1jYW4tYmUtcmVzaXplZC1hZnRlci1zZXR0aW5nLW5vUmVzaXplLXRvLWZhbHNlLmh0bWwg
WyBGYWlsdXJlIF0KIGZhc3QvZnJhbWVzL2xvY2F0aW9uLXJlZGlyZWN0LXVzZXItZ2VzdHVyZS5o
dG1sIFsgRmFpbHVyZSBdCi1mYXN0L2hhcm5lc3Mvb3ZlcnJpZGUtcHJlZmVyZW5jZXMtMi5odG1s
IFsgRmFpbHVyZSBdCiBmYXN0L3NlbGVjdG9ycy9xdWVyeVNlbGVjdG9yLXdpbmRvdy1pbmFjdGl2
ZS5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LW9ubHktY2xp
cHBlZC1vdmVyZmxvdy1jb250ZW50Lmh0bWwgWyBGYWlsdXJlIF0KIGZhc3Qvc3BhdGlhbC1uYXZp
Z2F0aW9uL3NuYXYtei1pbmRleC5odG1sIFsgRmFpbHVyZSBdCkluZGV4OiBMYXlvdXRUZXN0cy9w
bGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvYXN5Y2hyb25vdXMtZGVhZGxvY2std2l0aC10aW1lci1h
bmQtZXZhbHVhdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMt
d2syL3BsdWdpbnMvYXN5Y2hyb25vdXMtZGVhZGxvY2std2l0aC10aW1lci1hbmQtZXZhbHVhdGUu
aHRtbAkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9w
bHVnaW5zL2FzeWNocm9ub3VzLWRlYWRsb2NrLXdpdGgtdGltZXItYW5kLWV2YWx1YXRlLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTEsOSArMSw3IEBACi08aGVhZD4KKzxoZWFkPjwhLS0gd2Via2l0
LXRlc3QtcnVubmVyIFsgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkPXRy
dWUgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkRm9yQWxsUGx1Z2lucz10
cnVlIF0gLS0+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQ+CiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAgICB0ZXN0
UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0MkFzeW5jaHJvbm91c1BsdWdpbkluaXRp
YWxpemF0aW9uRW5hYmxlZCIsICIxIik7Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVu
Y2UoIldlYktpdDJBc3luY2hyb25vdXNQbHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWRGb3JBbGxQ
bHVnaW5zIiwgIjEiKTsKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICB0ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKIH0KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13
azIvcGx1Z2lucy9hc3luY2hyb25vdXMtZGVzdHJveS1iZWZvcmUtaW5pdGlhbGl6YXRpb24uaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvYXN5
bmNocm9ub3VzLWRlc3Ryb3ktYmVmb3JlLWluaXRpYWxpemF0aW9uLmh0bWwJKHJldmlzaW9uIDI2
OTE2MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9hc3luY2hyb25v
dXMtZGVzdHJveS1iZWZvcmUtaW5pdGlhbGl6YXRpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
MSwxMiArMSwxMCBAQAotPGhlYWQ+Cis8aGVhZD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIEFz
eW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZD10cnVlIEFzeW5jaHJvbm91c1Bs
dWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZEZvckFsbFBsdWdpbnM9dHJ1ZSBdIC0tPgogPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0PgogCiB2YXIgc3RhcnRUaW1lID0gbmV3IERhdGU7CiAKIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgewotICAgIHRlc3RSdW5uZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXQyQXN5bmNocm9u
b3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkIiwgIjEiKTsKLSAgICB0ZXN0UnVubmVyLm92
ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0MkFzeW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9u
RW5hYmxlZEZvckFsbFBsdWdpbnMiLCAiMSIpOwogICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGlu
Z3Muc2V0Q2FuU3RhcnRNZWRpYShmYWxzZSk7CiAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMtd2syL3BsdWdpbnMvZGVzdHJveS1kdXJpbmctYXN5bmMtbnBwLW5ldy5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9kZXN0cm95
LWR1cmluZy1hc3luYy1ucHAtbmV3Lmh0bWwJKHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9kZXN0cm95LWR1cmluZy1hc3luYy1ucHAtbmV3
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsOSArMSw3IEBACi08aGVhZD4KKzxoZWFkPjwhLS0g
d2Via2l0LXRlc3QtcnVubmVyIFsgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFi
bGVkPXRydWUgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFibGVkRm9yQWxsUGx1
Z2lucz10cnVlIF0gLS0+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+CiBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKLSAg
ICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0MkFzeW5jaHJvbm91c1BsdWdp
bkluaXRpYWxpemF0aW9uRW5hYmxlZCIsICIxIik7Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVBy
ZWZlcmVuY2UoIldlYktpdDJBc3luY2hyb25vdXNQbHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWRG
b3JBbGxQbHVnaW5zIiwgIjEiKTsKICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKICAgICB0
ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKIH0KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azIvcGx1Z2lucy9zY3JpcHQtb2JqZWN0LWFjY2Vzcy1mYWlscy1kdXJpbmctc2xvdy1p
bml0aWFsaXphdGlvbi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azIvcGx1Z2lucy9zY3JpcHQtb2JqZWN0LWFjY2Vzcy1mYWlscy1kdXJpbmctc2xvdy1pbml0
aWFsaXphdGlvbi5odG1sCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2syL3BsdWdpbnMvc2NyaXB0LW9iamVjdC1hY2Nlc3MtZmFpbHMtZHVyaW5nLXNsb3ct
aW5pdGlhbGl6YXRpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMSwxMiArMSwxMCBAQAotPGhl
YWQ+Cis8aGVhZD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIEFzeW5jaHJvbm91c1BsdWdpbklu
aXRpYWxpemF0aW9uRW5hYmxlZD10cnVlIEFzeW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9u
RW5hYmxlZEZvckFsbFBsdWdpbnM9dHJ1ZSBdIC0tPgogPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0PgogCiB2YXIgc3RhcnRU
aW1lID0gbmV3IERhdGU7CiAKIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewotICAgIHRlc3RSdW5u
ZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXQyQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6
YXRpb25FbmFibGVkIiwgIjEiKTsKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgi
V2ViS2l0MkFzeW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZEZvckFsbFBsdWdp
bnMiLCAiMSIpOwogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOwogfQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9w
bHVnaW5zL3Nsb3cvYXN5bmNocm9ub3VzLXBsdWdpbi1pbml0aWFsaXphdGlvbi1tdWx0aXBsZS5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9z
bG93L2FzeW5jaHJvbm91cy1wbHVnaW4taW5pdGlhbGl6YXRpb24tbXVsdGlwbGUuaHRtbAkocmV2
aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3Ns
b3cvYXN5bmNocm9ub3VzLXBsdWdpbi1pbml0aWFsaXphdGlvbi1tdWx0aXBsZS5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDQgKzEsNCBAQAotPGhlYWQ+Cis8aGVhZD48IS0tIHdlYmtpdC10ZXN0
LXJ1bm5lciBbIEFzeW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZD10cnVlIEFz
eW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZEZvckFsbFBsdWdpbnM9dHJ1ZSBd
IC0tPgogPHNjcmlwdCBzcmM9Ii4uLy4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CkBAIC0yNCw4ICsy
NCw2IEBAIGZ1bmN0aW9uIHJ1blRlc3QoKSAKIAogICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OwogICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwotICAgIHRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXQyQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFi
bGVkIiwgIjEiKTsKLSAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVyZW5jZSgiV2ViS2l0MkFz
eW5jaHJvbm91c1BsdWdpbkluaXRpYWxpemF0aW9uRW5hYmxlZEZvckFsbFBsdWdpbnMiLCAiMSIp
OwogCiAgICAgLy8gR3JhYiB0aGUgdGltZSBiZWZvcmUgd2UgY3JlYXRlIGFuZCBhcHBlbmQgMjAg
c2xvdyBwbHVnLWlucy4KICAgICBzZXNzaW9uU3RvcmFnZS5iZWZvcmVEYXRlID0gKG5ldyBEYXRl
KS52YWx1ZU9mKCk7CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMv
c2xvdy9hc3luY2hyb25vdXMtcGx1Z2luLWluaXRpYWxpemF0aW9uLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3Nsb3cvYXN5bmNocm9ub3Vz
LXBsdWdpbi1pbml0aWFsaXphdGlvbi5odG1sCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvc2xvdy9hc3luY2hyb25vdXMtcGx1Z2luLWlu
aXRpYWxpemF0aW9uLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEsNCArMSw0IEBACi08aGVhZD4K
KzxoZWFkPjwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlh
bGl6YXRpb25FbmFibGVkPXRydWUgQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFi
bGVkRm9yQWxsUGx1Z2lucz10cnVlIF0gLS0+CiA8c2NyaXB0IHNyYz0iLi4vLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5IG9ubG9hZD0i
cnVuVGVzdCgpIj4KQEAgLTI0LDggKzI0LDYgQEAgZnVuY3Rpb24gcnVuVGVzdCgpIAogCiAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CiAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7
Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdDJBc3luY2hyb25vdXNQ
bHVnaW5Jbml0aWFsaXphdGlvbkVuYWJsZWQiLCAiMSIpOwotICAgIHRlc3RSdW5uZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXQyQXN5bmNocm9ub3VzUGx1Z2luSW5pdGlhbGl6YXRpb25FbmFi
bGVkRm9yQWxsUGx1Z2lucyIsICIxIik7CiAKICAgICB2YXIgYmVmb3JlRGF0ZSA9IG5ldyBEYXRl
OwogICAgIApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2syL1Rlc3RFeHBlY3RhdGlvbnMJ
KHJldmlzaW9uIDI2OTE2MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3drMi9UZXN0RXhwZWN0
YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC01OSw3ICs1OSw2IEBAIHdlYmtpdC5vcmcvYi82MDY0
OCBmYXN0L2ZyYW1lcy9mbGF0dGVuaW4KIAogIyBXZWJLaXRUZXN0UnVubmVyIG5lZWRzIG92ZXJy
aWRlUHJlZmVyZW5jZSBmb3Igbm9uLWJvb2xlYW4gdmFsdWVzCiAjICh6ZXJvLWZvbnQtc2l6ZS5o
dG1sIHBhc3NlcyBiZWNhdXNlIG92ZXJyaWRlUHJlZmVyZW5jZSBkb2VzIG5vdCB3b3JrKQotd2Vi
a2l0Lm9yZy9iLzQyMTk3IGZhc3QvaGFybmVzcy9vdmVycmlkZS1wcmVmZXJlbmNlcy0yLmh0bWwg
WyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi80MjE5NyBmYXN0L3RleHQvemVyby1mb250LXNpemUu
aHRtbCBbIFBhc3MgXQogCiB3ZWJraXQub3JnL2IvODI2NjUgaHR0cC90ZXN0cy93ZWJhcmNoaXZl
L3Rlc3QtY3NzLXVybC1lbmNvZGluZy5odG1sIFsgU2tpcCBdCkluZGV4OiBMYXlvdXRUZXN0cy9z
dmcvYXMtaW1hZ2Uvc3ZnLWltYWdlLXdpdGgtZGF0YS11cmktaW1hZ2VzLWRpc2FibGVkLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvc3ZnL2FzLWltYWdlL3N2Zy1pbWFnZS13aXRoLWRh
dGEtdXJpLWltYWdlcy1kaXNhYmxlZC5odG1sCShyZXZpc2lvbiAyNjkxNjApCisrKyBMYXlvdXRU
ZXN0cy9zdmcvYXMtaW1hZ2Uvc3ZnLWltYWdlLXdpdGgtZGF0YS11cmktaW1hZ2VzLWRpc2FibGVk
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTExLDcgKzExLDcgQEAKICAgPHNjcmlwdD4KICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0dGluZ3Mu
c2V0SW1hZ2VzRW5hYmxlZChmYWxzZSk7Ci0gICAgICB0ZXN0UnVubmVyLm92ZXJyaWRlUHJlZmVy
ZW5jZSgnV2ViS2l0RGlzcGxheUltYWdlc0tleScsIDApOworICAgICAgd2luZG93LmludGVybmFs
cy5zZXR0aW5ncy5zZXRMb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHkoZmFsc2UpOwogICAgICAgdGVz
dFJ1bm5lci5xdWV1ZVJlbG9hZCgpOwogICAgIH0KICAgPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRU
ZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMvYXVkaW8tdGVzdGluZy5qcwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMvYXVkaW8tdGVzdGluZy5qcwkocmV2aXNpb24g
MjY5MTYwKQorKysgTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3VyY2VzL2F1ZGlvLXRlc3Rpbmcu
anMJKHdvcmtpbmcgY29weSkKQEAgLTEsNiArMSwzIEBACi1pZiAod2luZG93LnRlc3RSdW5uZXIp
Ci0gICAgdGVzdFJ1bm5lci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkF1ZGlvRW5hYmxl
ZCIsICIxIik7Ci0KIGZ1bmN0aW9uIHdyaXRlU3RyaW5nKHMsIGEsIG9mZnNldCkgewogICAgIGZv
ciAodmFyIGkgPSAwOyBpIDwgcy5sZW5ndGg7ICsraSkgewogICAgICAgICBhW29mZnNldCArIGld
ID0gcy5jaGFyQ29kZUF0KGkpOwpJbmRleDogTGF5b3V0VGVzdHMvd2ViZ2wvMS4wLjMvcmVzb3Vy
Y2VzL3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2UvbW9yZS91bml0LmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL3dlYmdsLzEuMC4zL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2Nv
bmZvcm1hbmNlL21vcmUvdW5pdC5qcwkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMv
d2ViZ2wvMS4wLjMvcmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2UvbW9yZS91
bml0LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw3ICszMyw2IEBAIGlmICh3aW5kb3cudGVzdFJ1
bm5lciAmJiAhd2luZG93LmxheW91dFQKIH0KIAogaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikgewotICBsYXlvdXRUZXN0Q29udHJvbGxlci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktp
dFdlYkdMRW5hYmxlZCIsICIxIik7CiAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsKICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogCkluZGV4OiBMYXlv
dXRUZXN0cy93ZWJnbC8xLjAuMy9yZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd2ViZ2wvMS4wLjMvcmVz
b3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzCShyZXZpc2lv
biAyNjkxNjApCisrKyBMYXlvdXRUZXN0cy93ZWJnbC8xLjAuMy9yZXNvdXJjZXMvd2ViZ2xfdGVz
dF9maWxlcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMJKHdvcmtpbmcgY29weSkKQEAgLTM4LDcg
KzM4LDYgQEAKICAgICB9CiAKICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7
Ci0gICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdl
YkdMRW5hYmxlZCIsICIxIik7CiAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CiAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CiAgICAgfQpJ
bmRleDogTGF5b3V0VGVzdHMvd2ViZ2wvMi4wLjAvcmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMv
Y29uZm9ybWFuY2UvbW9yZS91bml0LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dlYmds
LzIuMC4wL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL21vcmUvdW5pdC5q
cwkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvd2ViZ2wvMi4wLjAvcmVzb3VyY2Vz
L3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2UvbW9yZS91bml0LmpzCSh3b3JraW5nIGNvcHkp
CkBAIC0zMyw3ICszMyw2IEBAIGlmICh3aW5kb3cudGVzdFJ1bm5lciAmJiAhd2luZG93LmxheW91
dFQKIH0KIAogaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewotICBsYXlvdXRUZXN0
Q29udHJvbGxlci5vdmVycmlkZVByZWZlcmVuY2UoIldlYktpdFdlYkdMRW5hYmxlZCIsICIxIik7
CiAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIud2FpdFVudGlsRG9uZSgpOwogCkluZGV4OiBMYXlvdXRUZXN0cy93ZWJnbC8yLjAuMC9y
ZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0LXByZS5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy93ZWJnbC8yLjAuMC9yZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9q
cy10ZXN0LXByZS5qcwkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0VGVzdHMvd2ViZ2wvMi4w
LjAvcmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvanMvanMtdGVzdC1wcmUuanMJKHdvcmtpbmcg
Y29weSkKQEAgLTM4LDcgKzM4LDYgQEAKICAgICB9CiAKICAgICBpZiAod2luZG93LmxheW91dFRl
c3RDb250cm9sbGVyKSB7Ci0gICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIub3ZlcnJp
ZGVQcmVmZXJlbmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwogICAgICAgd2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CiAgICAgfQpJbmRleDogTGF5b3V0VGVzdHMvd2Vi
Z2wvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dl
YmdsL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcwkocmV2aXNpb24gMjY5MTYwKQorKysgTGF5b3V0
VGVzdHMvd2ViZ2wvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0z
OCw3ICszOCw2IEBACiAgICAgfQogCiAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikgewotICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJL
aXRXZWJHTEVuYWJsZWQiLCAiMSIpOwogICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFz
VGV4dCgpOwogICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogICAg
IH0KSW5kZXg6IExheW91dFRlc3RzL3dlYmdsL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2pz
L2pzLXRlc3QtcHJlLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dlYmdsL3Jlc291cmNl
cy93ZWJnbF90ZXN0X2ZpbGVzL2pzL2pzLXRlc3QtcHJlLmpzCShyZXZpc2lvbiAyNjkxNjApCisr
KyBMYXlvdXRUZXN0cy93ZWJnbC9yZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9qcy9qcy10ZXN0
LXByZS5qcwkod29ya2luZyBjb3B5KQpAQCAtMjEsNyArMjEsNiBAQCBmb3VuZCBpbiB0aGUgTElD
RU5TRS50eHQgZmlsZS4KICAgICB9CiAKICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKSB7Ci0gICAgICB3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIub3ZlcnJpZGVQcmVmZXJl
bmNlKCJXZWJLaXRXZWJHTEVuYWJsZWQiLCAiMSIpOwogICAgICAgd2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyLmR1bXBBc1RleHQoKTsKICAgICAgIHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
ci53YWl0VW50aWxEb25lKCk7CiAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>