<?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>69309</bug_id>
          
          <creation_ts>2011-10-03 17:17:31 -0700</creation_ts>
          <short_desc>garden-o-matic should remove builders from the failure grid once they start to pass</short_desc>
          <delta_ts>2011-10-12 17:09:50 -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>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>69227</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>477364</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-03 17:17:31 -0700</bug_when>
    <thetext>garden-o-matic should remove builders from the failure grid once they start to pass</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477365</commentid>
    <comment_count>1</comment_count>
      <attachid>109556</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-03 17:18:27 -0700</bug_when>
    <thetext>Created attachment 109556
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477384</commentid>
    <comment_count>2</comment_count>
      <attachid>109563</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-03 18:02:42 -0700</bug_when>
    <thetext>Created attachment 109563
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477387</commentid>
    <comment_count>3</comment_count>
      <attachid>109564</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-03 18:07:23 -0700</bug_when>
    <thetext>Created attachment 109564
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477400</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-03 18:59:11 -0700</bug_when>
    <thetext>Committed r96565: &lt;http://trac.webkit.org/changeset/96565&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109556</attachid>
            <date>2011-10-03 17:18:27 -0700</date>
            <delta_ts>2011-10-03 18:02:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69309-20111003171826.patch</filename>
            <type>text/plain</type>
            <size>8845</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDk2NTU5KQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMTcgQEAKKzIwMTEtMTAtMDMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBnYXJkZW4tby1tYXRpYyBzaG91bGQgcmVtb3ZlIGJ1aWxkZXJzIGZyb20gdGhlIGZh
aWx1cmUgZ3JpZCBvbmNlIHRoZXkgc3RhcnQgdG8gcGFzcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjkzMDkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGZvbGxvd3MgdGhlIHVwZGF0ZS9w
dXJnZSBtb2RlbCBmcm9tIFVwZGF0ZVRyYWNrZXIuCisKKyAgICAgICAgKiBCdWlsZFNsYXZlU3Vw
cG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2Ny
aXB0cy9jb250cm9sbGVycy5qczoKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53
ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9mYWls
dXJlcy5qczoKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNv
bmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9mYWlsdXJlc191bml0dGVz
dHMuanM6CisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkvbm90aWZpY2F0aW9ucy5qczoK
KwogMjAxMS0xMC0wMyAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIEFkZCBteXNlbGYgdG8gdGhlIHdhdGNobGlzdCBmb3IgcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0KSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmct
Y29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL2NvbnRyb2xsZXJzLmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29u
ZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL2NvbnRyb2xsZXJzLmpzCShyZXZp
c2lvbiA5NjU1MCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmct
Y29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL2NvbnRyb2xsZXJzLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC0xMzEsNiArMTMxLDkgQEAgdmFyIEZhaWx1cmVTdHJlYW1Db250cm9s
bGVyID0gYmFzZS5leHRlbgogICAgICAgICB0aGlzLl90ZXN0RmFpbHVyZXMucHVyZ2UoZnVuY3Rp
b24oZmFpbHVyZSkgewogICAgICAgICAgICAgZmFpbHVyZS5kaXNtaXNzKCk7CiAgICAgICAgIH0p
OworICAgICAgICB0aGlzLl90ZXN0RmFpbHVyZXMuZm9yRWFjaChmdW5jdGlvbihmYWlsdXJlKSB7
CisgICAgICAgICAgICBmYWlsdXJlLnB1cmdlKCk7CisgICAgICAgIH0pOwogICAgIH0sCiAgICAg
b25FeGFtaW5lOiBmdW5jdGlvbihmYWlsdXJlcykKICAgICB7CkluZGV4OiBUb29scy9CdWlsZFNs
YXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVy
ZXMvc2NyaXB0cy91aS9mYWlsdXJlcy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZl
U3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMv
c2NyaXB0cy91aS9mYWlsdXJlcy5qcwkocmV2aXNpb24gOTY1NTApCisrKyBUb29scy9CdWlsZFNs
YXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVy
ZXMvc2NyaXB0cy91aS9mYWlsdXJlcy5qcwkod29ya2luZyBjb3B5KQpAQCAtNzUsMTAgKzc1LDcg
QEAgdWkuZmFpbHVyZXMuRmFpbHVyZUdyaWQgPSBiYXNlLmV4dGVuZHMoJwogICAgICAgICB0aXRs
ZXMuaW5zZXJ0Q2VsbCgpLnRleHRDb250ZW50ID0gJ3JlbGVhc2UnOwogICAgICAgICB0aXRsZXMu
aW5zZXJ0Q2VsbCgpLnRleHRDb250ZW50ID0gJ3R5cGUnOwogICAgICAgICB0aGlzLl9ib2R5ID0g
dGhpcy5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0Ym9keScpKTsKLSAgICAg
ICAgdGhpcy5fcmVzdWx0Um93cyA9IHt9OwotICAgICAgICAvLyBBZGQgdGhlIEJVSUxESU5HIHJv
dyBlYWdlcmx5IHNvIHRoYXQgaXQgYXBwZWFycyBsYXN0LgotICAgICAgICB0aGlzLl9yb3dCeVJl
c3VsdChrQnVpbGRpbmdSZXN1bHQpOwotICAgICAgICAkKHRoaXMuX3Jlc3VsdFJvd3Nba0J1aWxk
aW5nUmVzdWx0XSkuaGlkZSgpOworICAgICAgICB0aGlzLl9yZXNldCgpOwogICAgIH0sCiAgICAg
X3Jvd0J5UmVzdWx0OiBmdW5jdGlvbihyZXN1bHQpCiAgICAgewpAQCAtOTQsMjQgKzkxLDM0IEBA
IHVpLmZhaWx1cmVzLkZhaWx1cmVHcmlkID0gYmFzZS5leHRlbmRzKCcKICAgICAgICAgcm93Lmlu
c2VydENlbGwoKS50ZXh0Q29udGVudCA9IHJlc3VsdDsKICAgICAgICAgcmV0dXJuIHJvdzsKICAg
ICB9LAotICAgIHJlbW92ZVJlc3VsdFJvd3M6IGZ1bmN0aW9uKCkKLSAgICB7Ci0gICAgICAgIE9i
amVjdC5rZXlzKHRoaXMuX3Jlc3VsdFJvd3MpLmZvckVhY2goZnVuY3Rpb24ocmVzdWx0KSB7Ci0g
ICAgICAgICAgICB2YXIgcm93ID0gdGhpcy5fcmVzdWx0Um93c1tyZXN1bHRdOwotICAgICAgICAg
ICAgcm93LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQocm93KTsKLSAgICAgICAgfSwgdGhpcyk7Ci0g
ICAgICAgIHRoaXMuX3Jlc3VsdFJvd3MgPSB7fTsKLSAgICB9LAotICAgIGFkZDogZnVuY3Rpb24o
cmVzdWx0c0J5QnVpbGRlcikKKyAgICB1cGRhdGU6IGZ1bmN0aW9uKHJlc3VsdHNCeUJ1aWxkZXIp
CiAgICAgeworICAgICAgICBpZiAodGhpcy5fcGVuZGluZ1Jlc2V0KQorICAgICAgICAgICAgdGhp
cy5fcmVzZXQoKTsKKwogICAgICAgICBPYmplY3Qua2V5cyhyZXN1bHRzQnlCdWlsZGVyKS5mb3JF
YWNoKGZ1bmN0aW9uKGJ1aWxkZXJOYW1lKSB7CiAgICAgICAgICAgICB2YXIgY29uZmlndXJhdGlv
biA9IGNvbmZpZy5rQnVpbGRlcnNbYnVpbGRlck5hbWVdOworICAgICAgICAgICAgaWYgKCFjb25m
aWd1cmF0aW9uKQorICAgICAgICAgICAgICAgIHRocm93ICJVbmtub3duIGJ1aWxkZXIgbmFtZTog
IiArIGJ1aWxkZXJOYW1lOwogICAgICAgICAgICAgdmFyIHJvdyA9IHRoaXMuX3Jvd0J5UmVzdWx0
KHJlc3VsdHNCeUJ1aWxkZXJbYnVpbGRlck5hbWVdLmFjdHVhbCk7CiAgICAgICAgICAgICB2YXIg
Y2VsbCA9IGNlbGxCeUJ1aWxkVHlwZShyb3csIGNvbmZpZ3VyYXRpb24pOwogICAgICAgICAgICAg
aWYgKGNlbGxDb250YWluc0NvbmZpZ3VyYXRpb24oY2VsbCwgY29uZmlndXJhdGlvbikpCiAgICAg
ICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgY2VsbC5hcHBlbmRDaGlsZChuZXcgdWku
ZmFpbHVyZXMuQ29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uKSkuaHJlZiA9IHVpLmRpc3BsYXlV
UkxGb3JCdWlsZGVyKGJ1aWxkZXJOYW1lKTsKICAgICAgICAgfSwgdGhpcyk7CisgICAgfSwKKyAg
ICBwdXJnZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy5fcGVuZGluZ1Jlc2V0ID0g
dHJ1ZTsKKyAgICB9LAorICAgIF9yZXNldDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhp
cy5fcGVuZGluZ1Jlc2V0ID0gZmFsc2U7CisgICAgICAgIHRoaXMuX3Jlc3VsdFJvd3MgPSB7fTsK
KyAgICAgICAgJCh0aGlzLl9ib2R5KS5lbXB0eSgpOworICAgICAgICAvLyBBZGQgdGhlIEJVSUxE
SU5HIHJvdyBlYWdlcmx5IHNvIHRoYXQgaXQgYXBwZWFycyBsYXN0LgorICAgICAgICB0aGlzLl9y
b3dCeVJlc3VsdChrQnVpbGRpbmdSZXN1bHQpOworICAgICAgICAkKHRoaXMuX3Jlc3VsdFJvd3Nb
a0J1aWxkaW5nUmVzdWx0XSkuaGlkZSgpOwogICAgIH0KIH0pOwogCkluZGV4OiBUb29scy9CdWls
ZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFp
bHVyZXMvc2NyaXB0cy91aS9mYWlsdXJlc191bml0dGVzdHMuanMKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9v
bHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwv
VGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkvZmFpbHVyZXNfdW5pdHRlc3RzLmpzCShyZXZpc2lvbiA5
NjU1MCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmln
L3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzX3VuaXR0ZXN0cy5q
cwkod29ya2luZyBjb3B5KQpAQCAtNTAsMTMgKzUwLDE0IEBAIHRlc3QoJ0NvbmZpZ3VyYXRpb24n
LCA4LCBmdW5jdGlvbigpIHsKICAgICBvayghY29uZmlndXJhdGlvbi5lcXVhbHMoe3ZlcnNpb246
ICdsdWNpZCcsaXM2NGJpdDogdHJ1ZX0pKTsKIH0pOwogCi10ZXN0KCdGYWlsdXJlR3JpZCcsIDks
IGZ1bmN0aW9uKCkgewordGVzdCgnRmFpbHVyZUdyaWQnLCAxMCwgZnVuY3Rpb24oKSB7CiAgICAg
dmFyIGdyaWQgPSBuZXcgdWkuZmFpbHVyZXMuRmFpbHVyZUdyaWQoKTsKICAgICBkZWVwRXF1YWwo
T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZ3JpZC5fX3Byb3RvX18pLnNvcnQoKSwgWworICAg
ICAgICAiX3Jlc2V0IiwKICAgICAgICAgIl9yb3dCeVJlc3VsdCIsCi0gICAgICAgICJhZGQiLAog
ICAgICAgICAiaW5pdCIsCi0gICAgICAgICJyZW1vdmVSZXN1bHRSb3dzIiwKKyAgICAgICAgInB1
cmdlIiwKKyAgICAgICAgInVwZGF0ZSIKICAgICBdKTsKICAgICBlcXVhbChncmlkLm91dGVySFRN
TCwgJzx0YWJsZSBjbGFzcz0iZmFpbHVyZXMiPicgKwogICAgICAgICAnPHRoZWFkPjx0cj48dGQ+
dHlwZTwvdGQ+PHRkPnJlbGVhc2U8L3RkPjx0ZD5kZWJ1ZzwvdGQ+PC90cj48L3RoZWFkPicgKwpA
QCAtNzMsNyArNzQsNyBAQCB0ZXN0KCdGYWlsdXJlR3JpZCcsIDksIGZ1bmN0aW9uKCkgewogICAg
ICAgICAnPC90Ym9keT4nICsKICAgICAnPC90YWJsZT4nKTsKICAgICBlcXVhbChyb3cub3V0ZXJI
VE1MLCAnPHRyIGNsYXNzPSJURVhUIj48dGQ+VEVYVDwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+PC90
cj4nKTsKLSAgICBncmlkLmFkZCh7fSk7CisgICAgZ3JpZC51cGRhdGUoe30pOwogICAgIGVxdWFs
KGdyaWQub3V0ZXJIVE1MLCAnPHRhYmxlIGNsYXNzPSJmYWlsdXJlcyI+JyArCiAgICAgICAgICc8
dGhlYWQ+PHRyPjx0ZD50eXBlPC90ZD48dGQ+cmVsZWFzZTwvdGQ+PHRkPmRlYnVnPC90ZD48L3Ry
PjwvdGhlYWQ+JyArCiAgICAgICAgICc8dGJvZHk+JyArCkBAIC04Niw3ICs4Nyw3IEBAIHRlc3Qo
J0ZhaWx1cmVHcmlkJywgOSwgZnVuY3Rpb24oKSB7CiAgICAgcmFpc2VzKGZ1bmN0aW9uKCkgewog
ICAgICAgICBncmlkLnVwZGF0ZSh7J0F0YXJpJzoge319KQogICAgIH0pOwotICAgIGdyaWQuYWRk
KHsnV2Via2l0IExpbnV4IChkYmcpKDEpJzogeyBhY3R1YWw6ICdURVhUJ319KTsKKyAgICBncmlk
LnVwZGF0ZSh7J1dlYmtpdCBMaW51eCAoZGJnKSgxKSc6IHsgYWN0dWFsOiAnVEVYVCd9fSk7CiAg
ICAgZXF1YWwoZ3JpZC5vdXRlckhUTUwsICc8dGFibGUgY2xhc3M9ImZhaWx1cmVzIj4nICsKICAg
ICAgICAgJzx0aGVhZD48dHI+PHRkPnR5cGU8L3RkPjx0ZD5yZWxlYXNlPC90ZD48dGQ+ZGVidWc8
L3RkPjwvdHI+PC90aGVhZD4nICsKICAgICAgICAgJzx0Ym9keT4nICsKQEAgLTk4LDcgKzk5LDcg
QEAgdGVzdCgnRmFpbHVyZUdyaWQnLCA5LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICc8dHIg
Y2xhc3M9IkJVSUxESU5HIiBzdHlsZT0iZGlzcGxheTogbm9uZTsgIj48dGQ+QlVJTERJTkc8L3Rk
Pjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+JyArCiAgICAgICAgICc8L3Rib2R5PicgKwogICAgICc8
L3RhYmxlPicpOwotICAgIGdyaWQuYWRkKHsnV2Via2l0IE1hYzEwLjUgKENHKSc6IHsgYWN0dWFs
OiAnSU1BR0UrVEVYVCd9fSk7CisgICAgZ3JpZC51cGRhdGUoeydXZWJraXQgTWFjMTAuNSAoQ0cp
JzogeyBhY3R1YWw6ICdJTUFHRStURVhUJ319KTsKICAgICBlcXVhbChncmlkLm91dGVySFRNTCwg
Jzx0YWJsZSBjbGFzcz0iZmFpbHVyZXMiPicgKwogICAgICAgICAnPHRoZWFkPjx0cj48dGQ+dHlw
ZTwvdGQ+PHRkPnJlbGVhc2U8L3RkPjx0ZD5kZWJ1ZzwvdGQ+PC90cj48L3RoZWFkPicgKwogICAg
ICAgICAnPHRib2R5PicgKwpAQCAtMTE1LDcgKzExNiw3IEBAIHRlc3QoJ0ZhaWx1cmVHcmlkJywg
OSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAnPHRyIGNsYXNzPSJCVUlMRElORyIgc3R5bGU9
ImRpc3BsYXk6IG5vbmU7ICI+PHRkPkJVSUxESU5HPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3Ry
PicgKwogICAgICAgICAnPC90Ym9keT4nICsKICAgICAnPC90YWJsZT4nKTsKLSAgICBncmlkLmFk
ZCh7J1dlYmtpdCBNYWMxMC41IChDRyknOiB7IGFjdHVhbDogJ0lNQUdFK1RFWFQnfX0pOworICAg
IGdyaWQudXBkYXRlKHsnV2Via2l0IE1hYzEwLjUgKENHKSc6IHsgYWN0dWFsOiAnSU1BR0UrVEVY
VCd9fSk7CiAgICAgZXF1YWwoZ3JpZC5vdXRlckhUTUwsICc8dGFibGUgY2xhc3M9ImZhaWx1cmVz
Ij4nICsKICAgICAgICAgJzx0aGVhZD48dHI+PHRkPnR5cGU8L3RkPjx0ZD5yZWxlYXNlPC90ZD48
dGQ+ZGVidWc8L3RkPjwvdHI+PC90aGVhZD4nICsKICAgICAgICAgJzx0Ym9keT4nICsKQEAgLTEz
Miw2ICsxMzMsMTkgQEAgdGVzdCgnRmFpbHVyZUdyaWQnLCA5LCBmdW5jdGlvbigpIHsKICAgICAg
ICAgICAgICc8dHIgY2xhc3M9IkJVSUxESU5HIiBzdHlsZT0iZGlzcGxheTogbm9uZTsgIj48dGQ+
QlVJTERJTkc8L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+JyArCiAgICAgICAgICc8L3Rib2R5
PicgKwogICAgICc8L3RhYmxlPicpOworICAgIGdyaWQucHVyZ2UoKTsKKyAgICBncmlkLnVwZGF0
ZSh7J1dlYmtpdCBMaW51eCAoZGJnKSgxKSc6IHsgYWN0dWFsOiAnVEVYVCd9fSk7CisgICAgZXF1
YWwoZ3JpZC5vdXRlckhUTUwsICc8dGFibGUgY2xhc3M9ImZhaWx1cmVzIj4nICsKKyAgICAgICAg
Jzx0aGVhZD48dHI+PHRkPnR5cGU8L3RkPjx0ZD5yZWxlYXNlPC90ZD48dGQ+ZGVidWc8L3RkPjwv
dHI+PC90aGVhZD4nICsKKyAgICAgICAgJzx0Ym9keT4nICsKKyAgICAgICAgICAgICc8dHIgY2xh
c3M9IlRFWFQiPicgKworICAgICAgICAgICAgICAgICc8dGQ+VEVYVDwvdGQ+JyArCisgICAgICAg
ICAgICAgICAgJzx0ZD48L3RkPicgKworICAgICAgICAgICAgICAgICc8dGQ+PGEgdGFyZ2V0PSJf
YmxhbmsiIGhyZWY9Imh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS53ZWJraXQv
d2F0ZXJmYWxsP2J1aWxkZXI9V2Via2l0K0xpbnV4KyhkYmcpKDEpIj48c3BhbiBjbGFzcz0idmVy
c2lvbiI+bHVjaWQ8L3NwYW4+PHNwYW4gY2xhc3M9ImFyY2hpdGVjdHVyZSI+NjQtYml0PC9zcGFu
PjwvYT48L3RkPicgKworICAgICAgICAgICAgJzwvdHI+JyArCisgICAgICAgICAgICAnPHRyIGNs
YXNzPSJCVUlMRElORyIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7ICI+PHRkPkJVSUxESU5HPC90ZD48
dGQ+PC90ZD48dGQ+PC90ZD48L3RyPicgKworICAgICAgICAnPC90Ym9keT4nICsKKyAgICAnPC90
YWJsZT4nKTsKIH0pOwogCiB9KCkpOwpJbmRleDogVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVp
bGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkv
bm90aWZpY2F0aW9ucy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9i
dWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91
aS9ub3RpZmljYXRpb25zLmpzCShyZXZpc2lvbiA5NjU1MCkKKysrIFRvb2xzL0J1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9z
Y3JpcHRzL3VpL25vdGlmaWNhdGlvbnMuanMJKHdvcmtpbmcgY29weSkKQEAgLTIwNCw5ICsyMDQs
MTIgQEAgdWkubm90aWZpY2F0aW9ucy5GYWlsaW5nVGVzdHNTdW1tYXJ5ID0gYgogICAgICAgICB0
aGlzLl93aGVyZSA9IHRoaXMuX2hvdy5hcHBlbmRDaGlsZChuZXcgdWkuZmFpbHVyZXMuRmFpbHVy
ZUdyaWQoKSk7CiAgICAgICAgIHRoaXMuX2NvbW1pdERhdGFQaW5uZWQgPSBmYWxzZTsKICAgICB9
LAorICAgIHB1cmdlOiBmdW5jdGlvbigpIHsKKyAgICAgICAgdGhpcy5fd2hlcmUucHVyZ2UoKTsK
KyAgICB9LAogICAgIHVwZGF0ZUJ1aWxkZXJSZXN1bHRzOiBmdW5jdGlvbihyZXN1bHROb2Rlc0J5
QnVpbGRlcikKICAgICB7Ci0gICAgICAgIHRoaXMuX3doZXJlLmFkZChyZXN1bHROb2Rlc0J5QnVp
bGRlcik7CisgICAgICAgIHRoaXMuX3doZXJlLnVwZGF0ZShyZXN1bHROb2Rlc0J5QnVpbGRlcik7
CiAgICAgfSwKICAgICBhZGRGYWlsdXJlQW5hbHlzaXM6IGZ1bmN0aW9uKGZhaWx1cmVBbmFseXNp
cykKICAgICB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109563</attachid>
            <date>2011-10-03 18:02:42 -0700</date>
            <delta_ts>2011-10-03 18:07:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69309-20111003180240.patch</filename>
            <type>text/plain</type>
            <size>32472</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDk2NTU5KQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMjAgQEAKKzIwMTEtMTAtMDMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBnYXJkZW4tby1tYXRpYyBzaG91bGQgcmVtb3ZlIGJ1aWxkZXJzIGZyb20gdGhlIGZh
aWx1cmUgZ3JpZCBvbmNlIHRoZXkgc3RhcnQgdG8gcGFzcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjkzMDkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGZvbGxvd3MgdGhlIHVwZGF0ZS9w
dXJnZSBtb2RlbCBmcm9tIFVwZGF0ZVRyYWNrZXIuICBUaGlzCisgICAgICAgIHBhdGNoIGlzIGxl
c3MgYXdlc29tZSB0aGFuIGl0IGNvdWxkIGJlIGJlY2F1c2UgaXQgY2F1c2VzIHRoZSBVSSB0bwor
ICAgICAgICBmbGFzaCBzbGlnaHRseS4gIEluIGEgZnV0dXJlIHBhdGNoLCB3ZSdsbCB3YW50IHRv
IHVzZSB0aGVzZQorICAgICAgICB1cGRhdGUvcHVyZ2Ugbm90aWZpY2F0aW9ucyB0byB1cGRhdGUg
dGhlIFVJIHdpdGhvdXQgZmxhc2hpbmcuCisKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9i
dWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy9j
b250cm9sbGVycy5qczoKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQu
b3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9mYWlsdXJlcy5q
czoKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9w
dWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9mYWlsdXJlc191bml0dGVzdHMuanM6
CisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVi
bGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkvbm90aWZpY2F0aW9ucy5qczoKKwogMjAx
MS0xMC0wMyAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IEFkZCBteXNlbGYgdG8gdGhlIHdhdGNobGlzdCBmb3IgcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0KQEAgLTc4LDk1ICs5NSw2IEBACiAKICAgICAgICAgKEknbSBsZWF2aW5nIHRoZSBjb21wYW55
IGFuZCBteSBAb3BlbmJvc3NhLm9yZyB3aWxsIGJlIG5vIG1vcmUpCiAKLSAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvY29tbWl0dGVycy5weToKLQotMjAxMS0xMC0wMyAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+Ci0KLSAgICAgICAgW0dU
S10gRml4IG1lbW9yeSBsZWFrIHdoZW4gbG9hZGluZyB1cmwKLSAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY5MjQ3Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkg
TWFydGluIFJvYmluc29uLgotCi0gICAgICAgIFJlbGVhc2UgVVJMIGNyZWF0ZWQgd2l0aCBXS1VS
TENyZWF0ZVdpdGhVVEY4Q1N0cmluZygpLgotCi0gICAgICAgICogTWluaUJyb3dzZXIvZ3RrL0Jy
b3dzZXJXaW5kb3cuYzoKLSAgICAgICAgKGFjdGl2YXRlVXJpRW50cnlDYWxsYmFjayk6Ci0gICAg
ICAgICogTWluaUJyb3dzZXIvZ3RrL21haW4uYzoKLSAgICAgICAgKGxvYWRVUkkpOgotCi0yMDEx
LTEwLTAzICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAg
VW5yZXZpZXdlZC4gQWRkIFpvbHTDoW4gw4FydmFpIGFzIGNvbnRyaWJ1dG9yLgotCi0gICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vY29uZmlnL2NvbW1pdHRlcnMucHk6Ci0KLTIwMTEt
MTAtMDMgIFJhcGhhZWwgS3VibyBkYSBDb3N0YSAgPGt1Ym9AcHJvZnVzaW9uLm1vYmk+Ci0KLSAg
ICAgICAgW0VGTF0gRFJUOiBBZGQgRHVtcEhpc3RvcnlJdGVtLntjcHAsaH0KLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYzOTkyCi0KLSAgICAgICAgUmV2
aWV3ZWQgYnkgQW50b25pbyBHb21lcy4KLQotICAgICAgICBUaGlzIGlzIHRoZSBjb2RlIHJlc3Bv
bnNpYmxlIGZvciBkdW1waW5nIHRoZSBiYWNrIGFuZCBmb3J3YXJkIGhpc3RvcnkKLSAgICAgICAg
bGlzdC4KLQotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wSGlzdG9yeUl0ZW0uY3Bw
OiBBZGRlZC4KLSAgICAgICAgKGR1bXBIaXN0b3J5SXRlbSk6Ci0gICAgICAgIChkdW1wQmFja0Zv
cndhcmRMaXN0Rm9yV2ViVmlldyk6Ci0gICAgICAgIChkdW1wQmFja0ZvcndhcmRMaXN0Rm9yV2Vi
Vmlld3MpOgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wSGlzdG9yeUl0ZW0uaDog
QWRkZWQuCi0KLTIwMTEtMTAtMDMgIFplbm8gQWxiaXNzZXIgIDx6ZW5vLmFsYmlzc2VyQG5va2lh
LmNvbT4KLQotICAgICAgICBbUXRdW1dLMl1bTWFjXSBXZWJLaXQyIGRvZXMgbm90IGJ1aWxkIG9u
IG1hYyBhZnRlciBtZXJnZSBvZiBRdDUgcmVmYWN0b3IgYnJhbmNoLgotICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjkyMjMKLQotICAgICAgICBXZWJLaXRU
ZXN0UnVubmVyIG11c3QgaW5jbHVkZSBRdCAvIHFuYW1lc3BhY2UgaGVhZGVyCi0gICAgICAgIHRv
IGdldCBhIGRlZmluaXRpb24gb2YgUXQ6Ok1vdXNlQnV0dG9ucy4KLQotICAgICAgICBSZXZpZXdl
ZCBieSBBbmRyZWFzIEtsaW5nLgotCi0gICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNl
bmRlclByb3h5Lmg6Ci0KLTIwMTEtMTAtMDMgIENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Vi
a2l0Lm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLiBBZGQgWm9sdMOhbiDDgXJ2YWkgYXMgY29u
dHJpYnV0b3IuCi0KLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvY29t
bWl0dGVycy5weToKLQotMjAxMS0xMC0wMiAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3Jn
PgotCi0gICAgICAgIENsZWFuIHVwIG9ic29sZXRlIGNvZGUgaW4gZ2FyZGVuaW5nc2VydmVyLnB5
IHJlbGF0ZWQgdG8KLSAgICAgICAgU1RBVElDX0ZJTEVfTkFNRVMuICBSYXRoZXIgdGhhbiBzZXJ2
ZSB0aGUgVUkgdmlhIHRoZSBQeXRob24gSFRUUAotICAgICAgICBzZXJ2ZXIsIHdlIGp1c3Qgc2Vy
dmUgaXQgb2ZmIHRoZSBmaWxlc3lzdGVtIGRpcmVjdGx5LgotCi0gICAgICAgIFdlIGhhZCBwbGFu
bmVkIHRvIHNlcnZlIHRoZSBVSSBvZmYgYnVpbGQud2Via2l0Lm9yZywgYnV0IHRoYXQgc2VydmVy
IGlzCi0gICAgICAgIHNvbWV3aGF0IHNsb3cuICBXZSdsbCBwcm9iYWJseSBzZXJ2ZSB0aGUgVUkg
b2Ygc29tZSB3ZWIgc2VydmVyLCBidXQKLSAgICAgICAgd2UnbGwgbmVlZCB0byB3b3JrIHRoYXQg
b3V0IGxhdGVyLgotCi0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2dh
cmRlbm9tYXRpYy5weToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9n
YXJkZW5pbmdzZXJ2ZXIucHk6Ci0KLTIwMTEtMTAtMDIgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KLQotICAgICAgICBSaXAgb3V0IGhhbGYtYmFja2VkIGdhcmRlbi1vLW1hdGljIGZl
YXR1cmVzIGluIHByZXBhcmF0aW9uIGZvciB3aWRlciB1c2UKLSAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY5MjI2Ci0KLSAgICAgICAgVGhpcyBwYXRjaCBy
aXBzIG91dCBhIGJ1bmNoIG9mIGhhbGYtYmFrZWQgZmVhdHVyZXMgYW5kIGNsZWFucyB1cCBhCi0g
ICAgICAgIGJ1bmNoIG9mIHNtYWxsIG5pdHMgd2l0aCB0aGUgY29yZSBzZXQgb2YgZmVhdHVyZXMu
ICBXZSdyZSBnb2luZyB0byBhc2sKLSAgICAgICAgbW9yZSBmb2xrcyB0byBzdGFydCB1c2luZyB0
aGUgdG9vbCwgYW5kIGhhdmluZyBhIGJ1bmNoIG9mIGhhbGYtYmFrZWQKLSAgICAgICAgZmVhdHVy
ZXMgYXJvdW5kIGlzIGRpc3RyYWN0aW5nLiAgV2UgY2FuIGFkZCB0aGVzZSBmZWF0dXJlcyBiYWNr
IHVuZGVyIGEKLSAgICAgICAgZmxhZyBhbmQgaW50ZXJhdGUgb24gdGhlbSBhZnRlciB3ZSd2ZSBn
b3QgdGhlIGNvcmUgZnVuY3Rpb25hbGl0eQotICAgICAgICBuYWlsZWQuCi0KLSAgICAgICAgKiBC
dWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0
RmFpbHVyZXMvc2NyaXB0cy9jaGVja291dF91bml0dGVzdHMuanM6Ci0gICAgICAgICogQnVpbGRT
bGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1
cmVzL3NjcmlwdHMvY29uZmlnLmpzOgotICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxk
LndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL2dhcmRl
bi1vLW1hdGljLmpzOgotICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5v
cmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpLmpzOgotICAgICAg
ICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1s
L1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzLmpzOgotICAgICAgICAqIEJ1aWxkU2xh
dmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJl
cy9zY3JpcHRzL3VpL2ZhaWx1cmVzX3VuaXR0ZXN0cy5qczoKLSAgICAgICAgKiBCdWlsZFNsYXZl
U3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMv
c2NyaXB0cy91aS9ub3RpZmljYXRpb25zLmpzOgotICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0
L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRz
L3VpL25vdGlmaWNhdGlvbnNfdW5pdHRlc3RzLmpzOgogICAgICAgICAqIEJ1aWxkU2xhdmVTdXBw
b3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zdHls
ZXMvbm90aWZpY2F0aW9ucy5jc3M6CiAKIDIwMTEtMTAtMDEgIEJyZW50IEZ1bGdoYW0gIDxiZnVs
Z2hhbUB3ZWJraXQub3JnPgpAQCAtMTA4MDEsMTYzICsxMDcyOSw2IEBACiAyMDExLTA3LTEyICBK
b3NlcGggUGVjb3Jhcm8gIDxqb2VwZWNrQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdl
ZC4gU2tpcHBpbmcgYSBmZXcgdGVzdHMgd2hpY2ggZmFpbCBkdWUgdG8gZGlmZmVyaW5nIG91dHB1
dAotICAgICAgICBpbiByZWNlbnQgQXBwbGljYXRpb25DYWNoZSBxdW90YSB0ZXN0cy4gUmVlbmFi
bGluZyB0aGUgdGVzdHMgaXMKLSAgICAgICAgdHJhY2tlZCBieSA8aHR0cDovL3dlYmtpdC5vcmcv
Yi82NDQxMD4uCi0KLSAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpkdW1wQXBwbGljYXRpb25D
YWNoZVF1b3RhKTogVGhpcyBzaG91bGQKLSAgICAgICAgaGF2ZSBiZWVuIGEgc3BhY2UsIG5vdCBh
IG5ld2xpbmUuCi0KLTIwMTEtMDctMTIgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4K
LQotICAgICAgICBnYXJkZW4tby1tYXRpYyBzaG91bGQgZGlzcGxheSByZWdyZXNzaW9uIHJhbmdl
cwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQ0MDcK
LQotICAgICAgICBSZXZpZXdlZCBieSBEaW1pdHJpIEdsYXprb3YuCi0KLSAgICAgICAgVGhpcyBw
YXRjaCBjb21wdXRlcyBhIHJlZ3Jlc3Npb24gcmFuZ2UgZm9yIGEgZmFpbHVyZSBieSBpbnRlcnNl
Y3RpbmcKLSAgICAgICAgdGhlIHJlZ3Jlc3Npb24gcmFuZ2VzIHNlZW4gYnkgdGhlIHZhcmlvdXMg
Ym90cy4gIFdlIG1ha2UgdGhlIHVuZGVybHlpbmcKLSAgICAgICAgYXNzdW1wdGlvbiB0aGF0IGEg
dGVzdCBpcyBvbmx5IGZhaWxpbmcgZHVlIHRvIG9uZSByZXZpc2lvbiBhdCBhbnkgZ2l2ZW4KLSAg
ICAgICAgbW9tZW50LiAgSWYgdGhhdCdzIG5vdCB0cnVlLCB0aGlzIGNvZGUgcHJvYmFibHkgZXhw
bG9kZXMuCi0KLSAgICAgICAgVGhlIHJlZ3Jlc3Npb24gcmFuZ2VzIGFwcGVhciBhc3luY2hyb25v
dXNseSwgd2hpY2ggbWlnaHQgYmUgYSBqYXJyaW5nCi0gICAgICAgIFVJLiAgV2UnbGwgaGF2ZSB0
byBleHBlcmltZW50IHRvIHNlZS4KLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9z
ZXJ2ZXJzL2RhdGEvZ2FyZGVuaW5nc2VydmVyL2Jhc2UuanM6Ci0gICAgICAgICogU2NyaXB0cy93
ZWJraXRweS90b29sL3NlcnZlcnMvZGF0YS9nYXJkZW5pbmdzZXJ2ZXIvYmFzZV91bml0dGVzdHMu
anM6Ci0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvZGF0YS9nYXJkZW5p
bmdzZXJ2ZXIvbWFpbi5qczoKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVy
cy9kYXRhL2dhcmRlbmluZ3NlcnZlci9yZXN1bHRzLmpzOgotICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9zZXJ2ZXJzL2RhdGEvZ2FyZGVuaW5nc2VydmVyL3Jlc3VsdHNfdW5pdHRlc3Rz
LmpzOgotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2RhdGEvZ2FyZGVu
aW5nc2VydmVyL3VpLmpzOgotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJz
L2RhdGEvZ2FyZGVuaW5nc2VydmVyL3VpX3VuaXR0ZXN0cy5qczoKLQotMjAxMS0wNy0xMiAgQWRh
bSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIGNyLWxpbnV4LWV3cyBzaG91
bGQgcnVuIHBpeGVsIHRlc3RzCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD02NDM5NAotCi0gICAgICAgIFJldmlld2VkIGJ5IE9qYW4gVmFmYWkuCi0KLSAg
ICAgICAgVGhpcyBwYXRjaCBlbmFibGVkIHBpeGVsIHRlc3Qgb24gdGhlIGNyLWxpbnV4LWV3cy4g
IFJ1bm5pbmcgYSBxdWljawotICAgICAgICB0ZXN0IG9uIHRoZSBib3RzLCBpdCBsb29rcyBsaWtl
IHdlIGhhdmUgZml2ZSBwaXhlbCBmYWlsdXJlcywgcmVsYXRlZCB0bwotICAgICAgICBzb21lIG1p
c3NpbmcgZm9udHMuICBJJ3ZlIGFsc28gbWFkZSB0aGUgYm90cyBza2lwIGZhaWxpbmcgdGVzdHMg
dG8KLSAgICAgICAgYXZvaWQgdXBsb2FkaW5nIGh1Z2UgemlwIGZpbGVzIHRvIGJ1Z3Mud2Via2l0
Lm9yZyAod2l0aCBhbGwgdGhlIGV4ZWN0ZWQKLSAgICAgICAgSU1BR0UgZmFpbHVyZXMpLgotCi0g
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vY29uZmlnL3BvcnRzLnB5OgotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NvbmZpZy9wb3J0c191bml0dGVzdC5weToKLQot
MjAxMS0wNy0xMiAgSm9zZXBoIFBlY29yYXJvICA8am9lcGVja0B3ZWJraXQub3JnPgotCi0gICAg
ICAgIEFwcGxpY2F0aW9uQ2FjaGUgdXBkYXRlIHNob3VsZCBub3QgaW1tZWRpYXRlbHkgZmFpbCB3
aGVuIHJlYWNoaW5nIHBlci1vcmlnaW4gcXVvdGEKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTY0MTc3Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5
IFByb3NrdXJ5YWtvdi4KLQotICAgICAgICBBZGQgbGF5b3V0VGVzdENvbnRyb2xsZXIuZGlzYWxs
b3dJbmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90YSgpCi0gICAgICAgIHRvIGRpc2FibGUg
dGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgcmFpc2luZyB0aGUgZGVmYXVsdCBwZXItb3JpZ2luCi0g
ICAgICAgIHF1b3RhIHRvIDVNQiB3aGVuIHJlYWNoZWQuIFRoaXMgYWxsb3dzIHVzIHRvIHRlc3Qg
d2hhdCBoYXBwZW5zCi0gICAgICAgIHdoZW4gdGhlIHF1b3RhIGlzIHJlYWNoZWQgYW5kIG5vdCBp
bmNyZWFzZWQuCi0KLSAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxl
ci5jcHA6Ci0gICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6TGF5b3V0VGVzdENvbnRyb2xs
ZXIpOgotICAgICAgICAoZGlzYWxsb3dJbmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90YUNh
bGxiYWNrKToKLSAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzdGF0aWNGdW5jdGlvbnMp
OgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmg6Ci0gICAg
ICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZGlzYWxsb3dJbmNyZWFzZUZvckFwcGxpY2F0aW9u
Q2FjaGVRdW90YSk6Ci0gICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0RGlzYWxsb3dJ
bmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90YSk6Ci0gICAgICAgICogRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHA6Ci0gICAgICAgIChMYXlvdXRUZXN0Q29u
dHJvbGxlcjo6cmVzZXQpOgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RD
b250cm9sbGVyUXQuaDoKLSAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpkaXNhbGxvd0lu
Y3JlYXNlRm9yQXBwbGljYXRpb25DYWNoZVF1b3RhKToKLSAgICAgICAgKExheW91dFRlc3RDb250
cm9sbGVyOjpkdW1wQXBwbGljYXRpb25DYWNoZURlbGVnYXRlQ2FsbGJhY2tzKToKLSAgICAgICAg
RXhwb3NlIGEgZnVuY3Rpb24gdG8gcHJldmVudCBhdXRvbWF0aWNhbGx5IGluY3JlYXNpbmcgdGhl
IHBlci1vcmlnaW4KLSAgICAgICAgcXVvdGEgd2hlbiB0aGUgcXVvdGEgaXMgcmVhY2hlZC4gVGhp
cyBhbGxvd3MgdXMgdG8gdGVzdCB3aGF0IGhhcHBlbnMKLSAgICAgICAgd2hlbiBhIHVzZXIgd291
bGQgImRpc2FsbG93IiBhIHF1b3RhIGluY3JlYXNlLgotCi0gICAgICAgICogRHVtcFJlbmRlclRy
ZWUvbWFjL1VJRGVsZWdhdGUubW06Ci0gICAgICAgICgtW1VJRGVsZWdhdGUgd2ViVmlldzpleGNl
ZWRlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YUZvclNlY3VyaXR5T3JpZ2luOnNwYWNlTmVl
ZGVkOl0pOgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3Bw
OgotICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6OmR1bXBBcHBsaWNhdGlvbkNhY2hl
UXVvdGEpOgotICAgICAgICBSZXNwZWN0IHRoZSBuZXcgZGlzYWxsb3dJbmNyZWFzZSBmbGFnIGFu
ZCBkdW1wIHRoZSBzcGFjZU5lZWRlZCB2YWx1ZXMKLSAgICAgICAgZm9yIHBvcnRzIHRoYXQgaW1w
bGVtZW50IGFwcGxpY2F0aW9uIGNhY2hlIHF1b3Rhcy4KLQotMjAxMS0wNy0xMiAgT2phbiBWYWZh
aSAgPG9qYW5AY2hyb21pdW0ub3JnPgotCi0gICAgICAgIGZpeCBmbGFraW5lc3MgZGFzaGJvYXJk
IHRvIHdvcmsgd2l0aCBuZXcgY3Jhc2ggbG9nIGZpbGVuYW1lcwotICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQzOTMKLQotICAgICAgICBSZXZpZXdlZCBi
eSBBZGFtIEJhcnRoLgotCi0gICAgICAgICogVGVzdFJlc3VsdFNlcnZlci9zdGF0aWMtZGFzaGJv
YXJkcy9mbGFraW5lc3NfZGFzaGJvYXJkLmh0bWw6Ci0KLTIwMTEtMDctMTIgIEFkYW0gQmFydGgg
IDxhYmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBBZGQgYSBoYXBweSBhbmltYXRpb24gdG8g
Z2FyZGVuLW8tbWF0aWMgd2hlbiB0aGVyZSBhcmUgbm8gZmFpbHVyZXMKLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0MzgyCi0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgT2phbiBWYWZhaS4KLQotICAgICAgICBBcyByZXF1ZXN0ZWQgYnkgT2phbi4KLQotICAg
ICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2RhdGEvZ2FyZGVuaW5nc2VydmVy
L21haW4uY3NzOgotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2RhdGEv
Z2FyZGVuaW5nc2VydmVyL21haW4uanM6Ci0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29s
L3NlcnZlcnMvZGF0YS9nYXJkZW5pbmdzZXJ2ZXIvcGFydHl0aW1lLmdpZjogQWRkZWQuCi0gICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvZ2FyZGVuaW5nc2VydmVyLnB5Ogot
Ci0yMDExLTA3LTEyICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAg
c2hlcmlmZmJvdCBjYW4ndCBwZXJmb3JtIHJvbGxvdXRzCi0gICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDM3MAotCi0gICAgICAgIFJldmlld2VkIGJ5IEVy
aWMgU2VpZGVsLgotCi0gICAgICAgIE5vdyB0aGF0IHdlJ3JlIG5vdCB1cGRhdGluZyB0aGUgd29y
a2luZyBjb3B5IGJlZm9yZSBwcm9jZXNzaW5nIGV2ZXJ5Ci0gICAgICAgIElSQyBtZXNzYWdlLCB0
aGUgcm9sbG91dCBjb21tYW5kIG5lZWRzIHRvIHVwZGF0ZSBpdCBtYW51YWxseS4KLQotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvaXJjX2NvbW1hbmQucHk6Ci0gICAgICAgICog
U2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9pcmNfY29tbWFuZF91bml0dGVzdC5weToKLQotMjAx
MS0wNy0xMiAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIEZpeCB0
aGUgZ3JhbW1hciBpbiB0aGUgRklYTUUgY29tbWVudC4KLQotICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL25ldC9yZXN1bHRzanNvbnBhcnNlci5weToKLQotMjAxMS0wNy0xMiAgRXJp
YyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgTlJXVCBzaG91bGQgb3BlbiB0
ZXN0IHJlc3VsdHMgcGFnZSB3aXRoIFNhZmFyaSB0cnVuaywgbm90IHRoZSBzeXN0ZW0gcHJvdmlk
ZWQgb25lIG9uIE1hYwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NjQzNDYKLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAg
IFRvIGZpeCB0aGlzIEkgaW1wbGVtZW50ZWQgUG9ydC5zaG93X3Jlc3VsdHNfaHRtbF9maWxlIGlu
IE1hYywgR3RrIGFuZCBRdCBwb3J0cyB3aXRoCi0gICAgICAgIGltcGxlbWVudGF0aW9ucyAobW9z
dGx5KSBtYXRjaGluZyB0aG9zZSBmb3VuZCBpbiBvbGQtcnVuLXdlYmtpdC10ZXN0cy4KLSAgICAg
ICAgVGhlcmUgYXJlIHN0aWxsIHNvbWUgbWlub3IgZGlmZmVyZW5jZXMgZm9yIFF0IHdoaWNoIFF0
IGhhY2tlcnMgbWF5IHdpc2ggdG8gdHdlYWsuCi0KLSAgICAgICAgSSBoYWQgdG8gYWRkIGEgV2Vi
S2l0UG9ydC5fcG9ydF9mbGFnX2Zvcl9zY3JpcHRzIG1ldGhvZCAoc2ltaWxhciB0byBmbGFnKCkg
aW4gY29tbW9uLmNvbmZpZy5wb3J0cy5weSkKLSAgICAgICAgZm9yIHRoZSBRdC9HdGsgcG9ydHMg
d2hpY2ggYWx3YXlzIHJlcXVpcmUgYSBmbGFnIHBhc3NlZCB0byBzY3JpcHRzLgotCi0gICAgICAg
IFdoaWxlIHRyeWluZyB0byB0ZXN0IHRoaXMsIEkgZm91bmQgdGhhdCBGYWN0b3J5VGVzdC50ZXN0
X2Nocm9taXVtX2dwdV9saW51eAotICAgICAgICB3YXMgdXNpbmcgYSByZWFsIGZpbGVzeXN0ZW0g
KGR1ZSB0byBhc3NlcnRfcGxhdGZvcm0pIHdoaWNoIGR1ZSB0bwotICAgICAgICBnbG9iYWwgdmFy
aWFibGVzIGluIGNvbmZpZy5weSB3YXMgY2F1c2luZyBzZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24g
dG8gaGF2ZQotICAgICAgICBhbiBhZmZlY3Qgb24gdW5pdCB0ZXN0IHJlc3VsdHMhICBTbyBJIGZp
eGVkIHRoaXMgYnkgbWFraW5nIEZhY3RvcnlUZXN0LmFzc2VydF9wb3J0Ci0gICAgICAgIHBhc3Mg
YSBtb2NrIGZpbGUgc3lzdGVtIHdoZW5ldmVyIGNhbGxpbmcgZmFjdG9yeS5nZXQuCi0KLSAgICAg
ICAgVW5mb3J0dW5hdGVseSBUZXN0UG9ydCB3YXMgZGVwZW5kaW5nIG9uIGFsd2F5cyBiZWluZyBw
YXNzZWQgYSBOb25lIGZpbGVzeXN0ZW0KLSAgICAgICAgYW5kIGFzc2VydGluZyBmaWxlc3lzdGVt
Ll90ZXN0cyAob25seSB0cnVlIGZvciB1bml0X3Rlc3RfZmlsZXN5c3RlbSgpKS4KLSAgICAgICAg
U28gSSBqdXN0IHJlbW92ZWQgdGhlIEZhY3RvcnlUZXN0LnRlc3RfdGVzdCBhbmQgRmFjdG9yeVRl
c3QudGVzdF9kcnlydW4gdGVzdHMKLSAgICAgICAgZGVjaWRpbmcgdGhhdCB0aGV5IHdlcmUgcHJl
dHR5IG11Y2ggdXNlbGVzcyBhbnl3YXkuICBJZiBvdGhlcnMgZmVlbCBzdHJvbmdseQotICAgICAg
ICBJJ20gaGFwcHkgdG8gZml4IHRoaXMgaW4gYSBkaWZmZXJlbnQgd2F5LgotCi0gICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZS5weToKLSAgICAgICAgIC0g
ZGVmYXVsdCBhcmd1bWVudHMgaW4gcHl0aG9uIGFyZSBzY3Jld3kuICBUaGV5IHVzZSBhIHNpbmds
ZSBzaGFyZWQKLSAgICAgICAgICAgaW5zdGFuY2UsIHNvIGl0J3MgYmV0dGVyIHRvIHVzZSBhcmd1
bWVudD1Ob25lIGFuZCB0aGVuIGFyZ3VtZW50ID0gYXJndW1lbnQgb3IgRGVmYXVsdCgpCi0gICAg
ICAgICAgIGlmIHlvdSBoYXZlIGFueSBjaGFuY2Ugb2YgbXV0YXRpbmcgKG9yIHJldHVybmluZykg
dGhlIGRlZmF1bHQgYXJndW1lbnQuCi0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9jb25maWcucHk6Ci0gICAgICAgICAtIFRoaXMgY29kZSBpcyB3cm9uZy4gIFdl
IGRvbid0IG5lZWQgdG8gdXNlIGEgZ2xvYmFsIHZhcmlhYmxlIGhlcmUgKGFzIGZhciBhcyBJIGNh
biB0ZWxsKS4KLSAgICAgICAgICAgSSdtIG5vdCBmaXhpbmcgaXQgaW4gdGhpcyBwYXRjaCwgYnV0
IEkndmUgbWFya2VkIGl0IHdpdGggYSBGSVhNRSBhbmQgd2UgY2FuIGNvbnZlcnQgdG8KLSAgICAg
ICAgICAgc3RvcmluZyB0aGUgcmVzdWx0cyBvZiB0aGUgcmVhZCBvbiB0aGUgQ29uZmlnIG9iamVj
dCAod2hpY2ggc2hvdWxkIG9ubHkgYmUgY3JlYXRlZCBvbmNlIGR1cmluZyBub3JtYWwgb3BlcmF0
aW9uKS4KICAgICAgICAgICAgVW5pdCB0ZXN0cyBzaG91bGRuJ3QgYmUgaGl0dGluZyB0aGUgZGlz
ayBhbnl3YXkuICBJdCdzIHBvc3NpYmxlIENvbmZpZyBzaG91bGQgbW92ZSBvZmYgb2YgUG9ydCBh
bmQgb250byBUb29sL0hvc3QgZGlyZWN0bHkuCiAgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9mYWN0b3J5LnB5OgogICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvZmFjdG9yeV91bml0dGVzdC5weToKQEAgLTIxOTIxLDMyMSArMjE2
OTIsNiBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgogCi0gICAgICAgIHdl
YmtpdC1wYXRjaCAtLW5vbi1pbnRlcmFjdGl2ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBuZXctcnVu
LXdlYmtpdC10ZXN0cwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NTk5MTkKLQotICAgICAgICBuZXctcnVuLXdlYmtpdC10ZXN0cyBkb2Vzbid0IHN1cHBv
cnQgLS13YWl0LWZvci1odHRwZCAoYmVjYXVzZSBpdAotICAgICAgICBhbHdheXMgd2FpdHMgZm9y
IEhUVFBELCBhcyBJIHVuZGVyc3RhbmQgdGhpbmdzKS4gIEl0IHR1cm5zIG91dCB3ZSdyZQotICAg
ICAgICBub3QgcmVhbGx5IHVzaW5nIHRoaXMgZmxhZyBmb3IgYW55dGhpbmcsIHNvIHdlIHNob3Vs
ZCBqdXN0IHJlbW92ZSBpdC4KLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVw
cy9ydW50ZXN0cy5weToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvc3Rl
cHNfdW5pdHRlc3QucHk6Ci0KLTIwMTEtMDUtMDEgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQu
b3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgVGhlIGJv
dHMgc2hvdWxkIGxlYXJuIGZyb20gZXhwZWN0ZWQgZmFpbHVyZXMgd2l0aG91dCBoYXZpbmcgdG8g
cmV0cnkKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5
Mjc5Ci0KLSAgICAgICAgUmF0aGVyIHRoYW4gcmUtdHJ5aW5nIHRoZSB3aG9sZSBwYXRjaCwgd2Ug
Y2FuIGp1c3QgY2hlY2sgd2hldGhlciB3ZSBub3cKLSAgICAgICAgZXhwZWN0IHRoZSBmYWlsdXJl
cyB3ZSBzZWUgd2l0aCB0aGUgcGF0Y2ggYXBwbGllZCwgc2F2aW5nIGEgbG90IG9mIHRpbWUuCi0K
LSAgICAgICAgVGhpcyBwYXRjaCBhbHNvIHRlYWNoZXMgdGhlIENvbW1pdFF1ZXVlIGhvdyB0byBy
ZWplY3QgcGF0Y2hlcyBldmVuCi0gICAgICAgIHdoZW4gdGhlIHRyZWUgaXMgcmVkIHVzaW5nIHRo
ZSBuZXcgdW5leHBlY3RlZF9mYWlsdXJlcygpIG1ldGhvZCBvbgotICAgICAgICBFeHBlY3RlZEZh
aWx1cmVzLgotCi0gICAgICAgIEZpbmFsbHkgaW4gdGVzdGluZyB3ZSBmb3VuZCBhIGJ1ZyBpbiBF
eHBlY3RlZEZhaWx1cmVzIHdoZXJlIGl0IHdvdWxkCi0gICAgICAgICJ0cnVzdCIgcmVzdWx0cyB3
aGljaCBoYWQgbWFueSBtYW55IGZhaWx1cmVzLCBkdWUgdG8gdXNpbmcgYW4KLSAgICAgICAgZXF1
YWwgc2lnbiBpbnN0ZWFkIG9mIGEgbGVzcy10aGFuIHNpZ24uCi0KLSAgICAgICAgKiBTY3JpcHRz
L3dlYmtpdHB5L3Rvb2wvYm90L2NvbW1pdHF1ZXVldGFza191bml0dGVzdC5weQotICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvZXhwZWN0ZWRmYWlsdXJlcy5weQotICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvZXhwZWN0ZWRmYWlsdXJlc191bml0dGVzdC5weQot
ICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcGF0Y2hhbmFseXNpc3Rhc2sucHkK
LQotCi0yMDExLTA1LTAyICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgd29ya3NwYWNlLnB5IGZhaWxz
IHRvIGltcG9ydCBTY3JpcHRFcnJvcgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NTk5MTUKLQotICAgICAgICBJZiB0aGUgd29ya3NwYWNlIGZhaWxzIHRv
IGNyZWF0ZSBhIHppcCwgd2Via2l0cHkgY3Jhc2hlcyBpbnN0ZWFkIG9mCi0gICAgICAgIGhhbmRs
aW5nIHRoZSBlcnJvciBhcyBleHBlY3RlZC4KLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
Y29tbW9uL3N5c3RlbS93b3Jrc3BhY2UucHk6Ci0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS9j
b21tb24vc3lzdGVtL3dvcmtzcGFjZV91bml0dGVzdC5weToKLSAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvbW9ja3Rvb2wucHk6Ci0KLTIwMTEtMDUtMDEgIEFkYW0gQmFydGggIDxhYmFy
dGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZW1vdmUgdW5hZHZlcnRhbnRseSBhZGRlZCBmaWxl
LgotCi0gICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6Ci0KLTIwMTEtMDUtMDEgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9y
Zz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBleHBlY3Rl
ZGZhaWx1cmVzLnB5IHNob3VsZCByZXBvcnQgdGhlIHVuZXhwZWN0ZWQgZmFpbHVyZXMgd2hlbiBh
c2tlZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk5
MTYKLQotICAgICAgICBUaGlzIGluZm9ybWF0aW9uIGlzIHVzZWZ1bCB3aGVuIHRoZSBFV1MgcnVu
cyB0ZXN0cy4KLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvZXhwZWN0ZWRm
YWlsdXJlcy5weToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2V4cGVjdGVk
ZmFpbHVyZXNfdW5pdHRlc3QucHk6Ci0KLTIwMTEtMDUtMDEgIEFkYW0gQmFydGggIDxhYmFydGhA
d2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAg
ICBKU09OVGVzdFJlc3VsdCBuZWVkcyB0byBoYW5kbGUgbXVsdGlwbGUgcmVzdWx0cwotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTkyNjkKLQotICAgICAg
ICBUaGlzIGNhc2Ugb2NjdXJzIHdoZW4gYSB0ZXN0IGlzIGZsYWt5IGJlY2F1c2UgTlJXVCB3aWxs
IHJ1biB0aGUgdGVzdAotICAgICAgICB0d2ljZSBhbmQgcmVwb3J0IGJvdGggcmVzdWx0cyBhcyAi
YWN0dWFsLiIKLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL25ldC9yZXN1bHRz
anNvbnBhcnNlci5weToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9uZXQvcmVz
dWx0c2pzb25wYXJzZXJfdW5pdHRlc3QucHk6Ci0KLTIwMTEtMDUtMDEgIEFkYW0gQmFydGggIDxh
YmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQot
ICAgICAgICBNb3ZlIGNoZWNrb3V0L2FwaS5weSB0byBjaGVja291dC9jaGVja291dC5weQotICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk5MDYKLQotICAg
ICAgICBUaGlzIGlzIG1vcmUgY29uc2lzdGVudCB3aXRoIFB5dGhvbiBzdHlsZS4KLQotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L19faW5pdF9fLnB5OgotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbV91bml0dGVzdC5weToKLSAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9ob3N0LnB5OgotICAgICAgICAqIFNjcmlw
dHMvd2Via2l0cHkvdG9vbC9tYWluLnB5OgotCi0yMDExLTA1LTAxICBFcmljIFNlaWRlbCAgPGVy
aWNAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAg
ICAgIHNjbS5weSBzaG91bGQgYmUgc3BsaXQgaW50byBtYW55IHBpZWNlcwotICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk5MDgKLQotICAgICAgICBGb3Jn
b3QgYW4gQXV0aGVudGljYXRpb25FcnJvciBpbXBvcnQuCi0KLSAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20vZ2l0LnB5OgotICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zdm4ucHk6Ci0KLTIwMTEtMDUtMDEgIEFybm8gUmVu
ZXZpZXIgIDxhcm5vQHJlbmV2aWVyLm5ldD4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNl
aWRlbC4KLQotICAgICAgICB3cm9uZyBleGNlcHRpb24gcmFpc2VkIGluIExpZ2h0dHBkIHN0YXJ0
IG1ldGhvZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTkyODMKLQotICAgICAgICByYWlzZSBzdGFuZGFyZCBFeGNlcHRpb24gaW5zdGVhZCBvZiBub24g
ZXhpc3RlbnQKLSAgICAgICAgZ29vZ2xlLmh0dHBkX3V0aWxzLkh0dHBkTm90U3RhcnRlZAotCi0g
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9odHRwX3NlcnZlci5w
eToKLQotMjAxMS0wNS0wMSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBzY20ucHkgc2hvdWxkIGJlIHNw
bGl0IGludG8gbWFueSBwaWVjZXMKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU5OTA4Ci0KLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9j
aGVja291dC9zY20vX19pbml0X18ucHk6Ci0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21t
b24vY2hlY2tvdXQvc2NtL2NvbW1pdG1lc3NhZ2UucHk6IEFkZGVkLgotICAgICAgICAqIFNjcmlw
dHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9naXQucHk6IEFkZGVkLgotICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zY20ucHk6Ci0gICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvc2NtL3NjbV91bml0dGVzdC5weToKLSAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20vc3ZuLnB5OiBBZGRl
ZC4KLQotMjAxMS0wNS0wMSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBNYWtlIG1vc3Qgc2NtLnB5IHRl
c3RzIHBhc3MgaW4gcHJlcGFyYXRpb24gZm9yIHNwbGl0dGluZyB0aGVtIHVwCi0gICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01OTkwNAotCi0gICAgICAgIFRo
ZXJlIGlzIG9uZSByZW1haW5pbmcgZmFpbHVyZToKLSAgICAgICAgd2Via2l0cHkuY29tbW9uLmNo
ZWNrb3V0LnNjbS5zY21fdW5pdHRlc3QuR2l0VGVzdFdpdGhNb2NrLnRlc3RfY3JlYXRlX3BhdGNo
Ci0gICAgICAgIHdoaWNoIGlkZW50aWZpZXMgYSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIFNWTiBh
bmQgR2l0IHZlcnNpb25zIG9mIHRoZQotICAgICAgICBTQ00gYXBpLiAgSSdtIG5vdCBnb2luZyB0
byBib3RoZXIgZml4aW5nIHRoYXQgdW50aWwgd2Ugc3BsaXQgb3V0IGFsbAotICAgICAgICB0aGUg
dGVzdHMuCi0KLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20v
c2NtX3VuaXR0ZXN0LnB5OgotCi0yMDExLTA1LTAxICBQYXRyaWNrIEdhbnN0ZXJlciAgPHBhcm9n
YUB3ZWJraXQub3JnPgotCi0gICAgICAgIFtXSU5dIFVucmV2aWV3ZWQgYnVpbGRmaXggYWZ0ZXIg
cjg1NDQwLgotCi0gICAgICAgICogRHVtcFJlbmRlclRyZWUvd2luL1VJRGVsZWdhdGUuY3BwOgot
ICAgICAgICAoVUlEZWxlZ2F0ZTo6VUlEZWxlZ2F0ZSk6IFJlbW92ZWQgYWNjaWRlbnRhbCBhZGRl
ZCBhZG9wdFB0ci4KLQotMjAxMS0wNS0wMSAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJvZ2FAd2Vi
a2l0Lm9yZz4KLQotICAgICAgICBbV0lOXSBVbnJldmlld2VkIGJ1aWxkZml4IGFmdGVyIHI4NTQz
NC4KLQotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9GcmFtZUxvYWREZWxlZ2F0ZS5jcHA6
IEFkZGVkIG1pc3NpbmcgaGVhZGVyLgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9VSURl
bGVnYXRlLmNwcDogRGl0dG8uCi0KLTIwMTEtMDUtMDEgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFy
b2dhQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgW1dJTl0gVW5yZXZpZXdlZCBidWlsZGZpeCBhZnRl
ciByODU0MzQuCi0KLSAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS93aW4vRnJhbWVMb2FkRGVsZWdh
dGUuY3BwOgotICAgICAgICAoRnJhbWVMb2FkRGVsZWdhdGU6OkZyYW1lTG9hZERlbGVnYXRlKToK
LSAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS93aW4vVUlEZWxlZ2F0ZS5jcHA6Ci0gICAgICAgIChE
UlRVbmRvTWFuYWdlcjo6RFJUVW5kb01hbmFnZXIpOgotICAgICAgICAoVUlEZWxlZ2F0ZTo6VUlE
ZWxlZ2F0ZSk6Ci0gICAgICAgIChVSURlbGVnYXRlOjpyZXNldFVuZG9NYW5hZ2VyKToKLQotMjAx
MS0wNS0wMSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBNb3ZlIHNjbS5weSBpbnRvIGl0cyBvd24gbW9k
dWxlIGluIHByZXBhcmF0aW9uIGZvciBzcGxpdHRpbmcgaXQgdXAKLSAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5ODg0Ci0KLSAgICAgICAgKiBTY3JpcHRz
L3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20vX19pbml0X18ucHk6IEFkZGVkLgotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zY20ucHk6IE1vdmVkLgot
ICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zY21fdW5pdHRl
c3QucHk6IE1vdmVkLgotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdGVzdC9tYWluLnB5Ogot
Ci0yMDExLTA1LTAxICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAg
UmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgd2Via2l0LXBhdGNoIGZhaWxzIHdo
ZW4gbm90IHJ1biBmcm9tIHJvb3QKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU5ODgyCi0KLSAgICAgICAgV2UgbmVlZCB0byBzZXQgdGhlIENXRCB3aGVu
IHJ1bm5pbmcgc3ZuIHNvIHRoYXQgc3ZuIGludGVycHJldHMgZmlsZQotICAgICAgICBwYXRocyBy
ZWxhdGl2ZSB0byB0aGUgcm9vdCBvZiB0aGUgd29ya2luZyBjb3B5LgotCi0gICAgICAgICogU2Ny
aXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvc2NtLnB5OgotCi0yMDExLTA0LTI5ICBFcmlj
IFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJh
cnRoLgotCi0gICAgICAgIGxhbmQtc2FmZWx5IHBhdGNoZXMgc2hvdWxkIHNob3cgc2hvdyB0aGVp
ciBwbGFjZSBpbiB0aGUgY29tbWl0LXF1ZXVlCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01OTg1MwotCi0gICAgICAgIFRoaXMgY29tcGxpY2F0ZWQgdGhl
ICJzaG91bGQgd2Ugc2hvdyB0aGUgYnViYmxlcyBvciB0aGUgc3VibWl0LXRvLWV3cyBidXR0b24i
Ci0gICAgICAgIGxvZ2ljIHN1YnN0YW50aWFsbHkuIDooICBCdXQgbm93IHdlJ2xsIHNob3cgYm90
aCB0aGUgY29tbWl0LXF1ZXVlIHBvc2l0aW9uCi0gICAgICAgIGFzIHdlbGwgYXMgdGhlIHN1Ym1p
dC10by1ld3MgYnV0dG9uIGZvciBsYW5kLXNhZmVseSAoY3ErIG9ubHkpIHBhdGNoZXMuCi0gICAg
ICAgIFByZXZpb3VzbHkgd2Ugd291bGQgb25seSBzaG93IHRoZSBzdWJtaXQtdG8tZXdzIGJ1dHRv
bi4KLQotICAgICAgICAqIFF1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3N0YXR1c2J1YmJsZS5w
eToKLSAgICAgICAgKiBRdWV1ZVN0YXR1c1NlcnZlci90ZW1wbGF0ZXMvc3RhdHVzYnViYmxlLmh0
bWw6Ci0KLTIwMTEtMDQtMjkgIE5hb2tpIFRha2FubyAgPHRha2Fuby5uYW9raUBnbWFpbC5jb20+
Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBBZGQgbXkgbmFt
ZSB0byBjb250cmlidXRlcnMuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01OTg1NAotCi0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vY29u
ZmlnL2NvbW1pdHRlcnMucHk6Ci0KLTIwMTEtMDQtMjkgIEtlaXRoIEt5eml2YXQgIDxrZWl0aC5r
eXppdmF0QG5va2lhLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBDc2FiYSBPc3p0cm9nb27D
oWMuCi0KLSAgICAgICAgW1F0XSBEb24ndCBidWlsZCBUZXN0TmV0c2NhcGVQbHVnaW4gaWYgRU5B
QkxFX05FVFNDQVBFX1BMVUdJTl9BUEk9MAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NTk3NzIKLQotICAgICAgICAqIFRvb2xzLnBybzoKLQotMjAxMS0w
NC0yOSAgU3RlcGhhbmllIExld2lzICA8c2xld2lzQGFwcGxlLmNvbT4KLQotICAgICAgICBSdWJi
ZXItc3RhbXBlZCBieSBBZGFtIFJvYmVuLiAgIAotCi0gICAgICAgIFJlbW92ZSB0aGUgcHJvZHVj
dGlvbiBjb25maWd1cmF0aW9uIGd1YXJkIHNpbmNlIGluc3RhbGxzIG9ubHkgaGFwcGVuIGluIHBy
b2R1Y3Rpb24gYW55d2F5LiAgCi0gICAgICAgIFdvcmtzIGFyb3VuZCBhIGJ1ZyBpbiBYY29kZQot
Ci0gICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL1BlcmxTdXBwb3J0L01ha2VmaWxlOgotCi0y
MDExLTA0LTI5ICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KLQotICAgICAgICBSZW1v
dmUgYSBQSFAgc2V0dGluZyB0aGF0IGlzIG5vdyBwcm92aWRlZCBieSBodHRwZC5jb25mCi0KLSAg
ICAgICAgcjg1MTU1IGFkZGVkIHRoaXMgc2V0dGluZywgYnV0IHB1dHRpbmcgaXQgaW4gaHR0cGQu
Y29uZiBtYWtlcyBtb3JlIHNlbnNlIChzaW5jZSB0aGUgc2V0dGluZwotICAgICAgICBpc24ndCBk
ZXBlbmRlbnQgb24gcGF0aHMgdGhhdCBjb3VsZCBiZSBkaWZmZXJlbnQgb24gZWFjaCB1c2VyJ3Mg
bWFjaGluZSkuCi0KLSAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KLQotICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cGVybC9odHRwZC5wbToKLSAgICAgICAgKGdldERlZmF1bHRDb25maWdG
b3JUZXN0RGlyZWN0b3J5KTogUmVtb3ZlZCBsb2dfZXJyb3JzIHNldHRpbmcuCi0KLTIwMTEtMDQt
MjkgIEpvbiBMZWUgIDxqb25sZWVAYXBwbGUuY29tPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIEFk
ZGluZyBKb24gTGVlIGFzIGEgY29tbWl0dGVyCi0KLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9jb25maWcvY29tbWl0dGVycy5weToKLQotMjAxMS0wNC0yOCAgT2phbiBWYWZhaSAg
PG9qYW5AY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IFRvbnkgQ2hhbmcuCi0K
LSAgICAgICAgZml4IHByZXR0eV9wYXRjaF9hdmFpbGFibGUgYW5kIHdkaWZmX2F2YWlsYWJsZQot
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk3NjEKLQot
ICAgICAgICBUaGVzZSBtZXRob2RzIHJlbHkgb24gdGhlIGNoZWNrXyogbWV0aG9kIGJlaW5nIGNh
bGxlZCBmaXJzdC4KLSAgICAgICAgVGhpcyB3b3VsZCBvbmx5IGhhcHBlbiB3aGVuIHdlIGFjdHVh
bGx5IHRyaWVkIHRvIGNvbXB1dGUgYSBkaWZmLAotICAgICAgICBidXQgY29tcHV0aW5nIHRoZSBk
aWZmIGhhcHBlbnMgb24gYSBkaWZmZXJlbnQgcHJvY2Vzcy4KLSAgICAgICAgCi0gICAgICAgIEFs
c28gZml4IHNldHRpbmcgX3dkaWZmX2F2aWFsYWJsZSB0byBUcnVlIGJ5IGRlZmF1bHQuCi0KLSAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHk6Ci0gICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9saW51eC5w
eToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVt
X2xpbnV4X3VuaXR0ZXN0LnB5OgotCi0yMDExLTA0LTI5ICBPamFuIFZhZmFpICA8b2phbkBjaHJv
bWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAg
ZXhjbHVkZSBza2lwcGVkIHRlc3RzIGZyb20gdGhlIHN1bW1hcml6ZWQgcmVzdWx0cwotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk4MTMKLQotICAgICAg
ICBJZiB3ZSBmaW5kIGEgbmVlZCBmbyBza2lwcGVkIHRlc3RzIGxhdGVyLCB3ZSBzaG91bGQgZWl0
aGVyIGNyZWF0ZQotICAgICAgICBhIHNraXBwZWQuanNvbiBmaWxlIG9yIGV4cG9zZSB0aGlzIHNv
bWUgb3RoZXIgd2F5LiBBcyBpdCBpcywgdGhlIGRhdGEKLSAgICAgICAgaXMgdW51c2VkIGFuZCBp
cyBodWdlbHkgYmxvYXRpbmcgdGhlIHNpemUgb2YgZnVsbF9yZXN1bHRzLmpzb24uCi0KLSAgICAg
ICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9sYXlvdXRfcGFja2FnZS9tYW5hZ2Vy
LnB5OgotCi0yMDExLTA0LTI5ICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KLQotICAg
ICAgICBNYWtlIER1bXBSZW5kZXJUcmVlU3VwcG9ydCBnZXQgaW5zdGFsbGVkIHdoZW4gdGhlIGRl
ZmF1bHQgY29uZmlndXJhdGlvbiBpcyBidWlsdAotCi0gICAgICAgIFRoZSBkZWZhdWx0IGNvbmZp
Z3VyYXRpb24gaXMgUHJvZHVjdGlvbiwgYnV0IGluIHRoYXQgY2FzZSB0aGUgQ09ORklHVVJBVElP
TiBlbnZpcm9ubWVudAotICAgICAgICB2YXJpYWJsZSBpcyBzZXQgdG8gdGhlIGVtcHR5IHN0cmlu
Zy4KLQotICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgotCi0gICAgICAgICogRHVtcFJl
bmRlclRyZWUvbWFjL1BlcmxTdXBwb3J0L01ha2VmaWxlOiBTZXQgQ09ORklHVVJBVElPTiB0byBQ
cm9kdWN0aW9uIGlmIGl0IGlzbid0Ci0gICAgICAgIGFscmVhZHkgc2V0IHNvIHRoYXQgbGF0ZXIg
bG9naWMgdGhhdCBkZXBlbmRzIG9uIENPTkZJR1VSQVRJT04gaGF2aW5nIHRoYXQgdmFsdWUgd2ls
bCB3b3JrLgotCi0yMDExLTA0LTI5ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KLQot
ICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCi0KLSAgICAgICAgQWRkIEVOQUJMRSBt
YWNybyBmb3IgV2ViS2l0QW5pbWF0aW9uCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD01OTcyOQotCi0gICAgICAgIEFkZCBuZXcgZmVhdHVyZSB0byB0b2dn
bGUgV2ViS2l0IEFuaW1hdGlvbiBBUEkuCi0KLSAgICAgICAgKiBTY3JpcHRzL2J1aWxkLXdlYmtp
dDoKLQotMjAxMS0wNC0yOSAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgotCi0gICAgICAg
IFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCi0KLSAgICAgICAgTWFrZSBwcm9kdWN0aW9uIHRoZSBk
ZWZhdWx0IGJ1aWxkIHR5cGUgZm9yIFdlYktpdFRlc3RSdW5uZXIsIG1hdGNoaW5nCi0gICAgICAg
IGFsbCBvdGhlciBwcm9qZWN0cy4KLQogICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvV2ViS2l0
VGVzdFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgogCiAyMDExLTA0LTI5ICBLZXZp
biBPbGxpdmllciAgPGtldmlub0B0aGVvbGxpdmllcnMuY29tPgpJbmRleDogVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1
cmVzL3NjcmlwdHMvY29udHJvbGxlcnMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVpbGRTbGF2
ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVz
L3NjcmlwdHMvY29udHJvbGxlcnMuanMJKHJldmlzaW9uIDk2NTUwKQorKysgVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1
cmVzL3NjcmlwdHMvY29udHJvbGxlcnMuanMJKHdvcmtpbmcgY29weSkKQEAgLTEzMSw2ICsxMzEs
OSBAQCB2YXIgRmFpbHVyZVN0cmVhbUNvbnRyb2xsZXIgPSBiYXNlLmV4dGVuCiAgICAgICAgIHRo
aXMuX3Rlc3RGYWlsdXJlcy5wdXJnZShmdW5jdGlvbihmYWlsdXJlKSB7CiAgICAgICAgICAgICBm
YWlsdXJlLmRpc21pc3MoKTsKICAgICAgICAgfSk7CisgICAgICAgIHRoaXMuX3Rlc3RGYWlsdXJl
cy5mb3JFYWNoKGZ1bmN0aW9uKGZhaWx1cmUpIHsKKyAgICAgICAgICAgIGZhaWx1cmUucHVyZ2Uo
KTsKKyAgICAgICAgfSk7CiAgICAgfSwKICAgICBvbkV4YW1pbmU6IGZ1bmN0aW9uKGZhaWx1cmVz
KQogICAgIHsKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmct
Y29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzLmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29u
ZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzLmpzCShyZXZp
c2lvbiA5NjU1MCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmct
Y29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC03NSwxMCArNzUsNyBAQCB1aS5mYWlsdXJlcy5GYWlsdXJlR3JpZCA9
IGJhc2UuZXh0ZW5kcygnCiAgICAgICAgIHRpdGxlcy5pbnNlcnRDZWxsKCkudGV4dENvbnRlbnQg
PSAncmVsZWFzZSc7CiAgICAgICAgIHRpdGxlcy5pbnNlcnRDZWxsKCkudGV4dENvbnRlbnQgPSAn
dHlwZSc7CiAgICAgICAgIHRoaXMuX2JvZHkgPSB0aGlzLmFwcGVuZENoaWxkKGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ3Rib2R5JykpOwotICAgICAgICB0aGlzLl9yZXN1bHRSb3dzID0ge307Ci0g
ICAgICAgIC8vIEFkZCB0aGUgQlVJTERJTkcgcm93IGVhZ2VybHkgc28gdGhhdCBpdCBhcHBlYXJz
IGxhc3QuCi0gICAgICAgIHRoaXMuX3Jvd0J5UmVzdWx0KGtCdWlsZGluZ1Jlc3VsdCk7Ci0gICAg
ICAgICQodGhpcy5fcmVzdWx0Um93c1trQnVpbGRpbmdSZXN1bHRdKS5oaWRlKCk7CisgICAgICAg
IHRoaXMuX3Jlc2V0KCk7CiAgICAgfSwKICAgICBfcm93QnlSZXN1bHQ6IGZ1bmN0aW9uKHJlc3Vs
dCkKICAgICB7CkBAIC05NCwyNCArOTEsMzQgQEAgdWkuZmFpbHVyZXMuRmFpbHVyZUdyaWQgPSBi
YXNlLmV4dGVuZHMoJwogICAgICAgICByb3cuaW5zZXJ0Q2VsbCgpLnRleHRDb250ZW50ID0gcmVz
dWx0OwogICAgICAgICByZXR1cm4gcm93OwogICAgIH0sCi0gICAgcmVtb3ZlUmVzdWx0Um93czog
ZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgT2JqZWN0LmtleXModGhpcy5fcmVzdWx0Um93cyku
Zm9yRWFjaChmdW5jdGlvbihyZXN1bHQpIHsKLSAgICAgICAgICAgIHZhciByb3cgPSB0aGlzLl9y
ZXN1bHRSb3dzW3Jlc3VsdF07Ci0gICAgICAgICAgICByb3cucGFyZW50Tm9kZS5yZW1vdmVDaGls
ZChyb3cpOwotICAgICAgICB9LCB0aGlzKTsKLSAgICAgICAgdGhpcy5fcmVzdWx0Um93cyA9IHt9
OwotICAgIH0sCi0gICAgYWRkOiBmdW5jdGlvbihyZXN1bHRzQnlCdWlsZGVyKQorICAgIHVwZGF0
ZTogZnVuY3Rpb24ocmVzdWx0c0J5QnVpbGRlcikKICAgICB7CisgICAgICAgIGlmICh0aGlzLl9w
ZW5kaW5nUmVzZXQpCisgICAgICAgICAgICB0aGlzLl9yZXNldCgpOworCiAgICAgICAgIE9iamVj
dC5rZXlzKHJlc3VsdHNCeUJ1aWxkZXIpLmZvckVhY2goZnVuY3Rpb24oYnVpbGRlck5hbWUpIHsK
ICAgICAgICAgICAgIHZhciBjb25maWd1cmF0aW9uID0gY29uZmlnLmtCdWlsZGVyc1tidWlsZGVy
TmFtZV07CisgICAgICAgICAgICBpZiAoIWNvbmZpZ3VyYXRpb24pCisgICAgICAgICAgICAgICAg
dGhyb3cgIlVua25vd24gYnVpbGRlciBuYW1lOiAiICsgYnVpbGRlck5hbWU7CiAgICAgICAgICAg
ICB2YXIgcm93ID0gdGhpcy5fcm93QnlSZXN1bHQocmVzdWx0c0J5QnVpbGRlcltidWlsZGVyTmFt
ZV0uYWN0dWFsKTsKICAgICAgICAgICAgIHZhciBjZWxsID0gY2VsbEJ5QnVpbGRUeXBlKHJvdywg
Y29uZmlndXJhdGlvbik7CiAgICAgICAgICAgICBpZiAoY2VsbENvbnRhaW5zQ29uZmlndXJhdGlv
bihjZWxsLCBjb25maWd1cmF0aW9uKSkKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAg
ICAgICBjZWxsLmFwcGVuZENoaWxkKG5ldyB1aS5mYWlsdXJlcy5Db25maWd1cmF0aW9uKGNvbmZp
Z3VyYXRpb24pKS5ocmVmID0gdWkuZGlzcGxheVVSTEZvckJ1aWxkZXIoYnVpbGRlck5hbWUpOwog
ICAgICAgICB9LCB0aGlzKTsKKyAgICB9LAorICAgIHB1cmdlOiBmdW5jdGlvbigpCisgICAgewor
ICAgICAgICB0aGlzLl9wZW5kaW5nUmVzZXQgPSB0cnVlOworICAgIH0sCisgICAgX3Jlc2V0OiBm
dW5jdGlvbigpCisgICAgeworICAgICAgICB0aGlzLl9wZW5kaW5nUmVzZXQgPSBmYWxzZTsKKyAg
ICAgICAgdGhpcy5fcmVzdWx0Um93cyA9IHt9OworICAgICAgICAkKHRoaXMuX2JvZHkpLmVtcHR5
KCk7CisgICAgICAgIC8vIEFkZCB0aGUgQlVJTERJTkcgcm93IGVhZ2VybHkgc28gdGhhdCBpdCBh
cHBlYXJzIGxhc3QuCisgICAgICAgIHRoaXMuX3Jvd0J5UmVzdWx0KGtCdWlsZGluZ1Jlc3VsdCk7
CisgICAgICAgICQodGhpcy5fcmVzdWx0Um93c1trQnVpbGRpbmdSZXN1bHRdKS5oaWRlKCk7CiAg
ICAgfQogfSk7CiAKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5v
cmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzX3Vu
aXR0ZXN0cy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53
ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9mYWls
dXJlc191bml0dGVzdHMuanMJKHJldmlzaW9uIDk2NTUwKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1
cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3Nj
cmlwdHMvdWkvZmFpbHVyZXNfdW5pdHRlc3RzLmpzCSh3b3JraW5nIGNvcHkpCkBAIC01MCwxMyAr
NTAsMTQgQEAgdGVzdCgnQ29uZmlndXJhdGlvbicsIDgsIGZ1bmN0aW9uKCkgewogICAgIG9rKCFj
b25maWd1cmF0aW9uLmVxdWFscyh7dmVyc2lvbjogJ2x1Y2lkJyxpczY0Yml0OiB0cnVlfSkpOwog
fSk7CiAKLXRlc3QoJ0ZhaWx1cmVHcmlkJywgOSwgZnVuY3Rpb24oKSB7Cit0ZXN0KCdGYWlsdXJl
R3JpZCcsIDEwLCBmdW5jdGlvbigpIHsKICAgICB2YXIgZ3JpZCA9IG5ldyB1aS5mYWlsdXJlcy5G
YWlsdXJlR3JpZCgpOwogICAgIGRlZXBFcXVhbChPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhn
cmlkLl9fcHJvdG9fXykuc29ydCgpLCBbCisgICAgICAgICJfcmVzZXQiLAogICAgICAgICAiX3Jv
d0J5UmVzdWx0IiwKLSAgICAgICAgImFkZCIsCiAgICAgICAgICJpbml0IiwKLSAgICAgICAgInJl
bW92ZVJlc3VsdFJvd3MiLAorICAgICAgICAicHVyZ2UiLAorICAgICAgICAidXBkYXRlIgogICAg
IF0pOwogICAgIGVxdWFsKGdyaWQub3V0ZXJIVE1MLCAnPHRhYmxlIGNsYXNzPSJmYWlsdXJlcyI+
JyArCiAgICAgICAgICc8dGhlYWQ+PHRyPjx0ZD50eXBlPC90ZD48dGQ+cmVsZWFzZTwvdGQ+PHRk
PmRlYnVnPC90ZD48L3RyPjwvdGhlYWQ+JyArCkBAIC03Myw3ICs3NCw3IEBAIHRlc3QoJ0ZhaWx1
cmVHcmlkJywgOSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICc8L3Rib2R5PicgKwogICAgICc8L3Rh
YmxlPicpOwogICAgIGVxdWFsKHJvdy5vdXRlckhUTUwsICc8dHIgY2xhc3M9IlRFWFQiPjx0ZD5U
RVhUPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPicpOwotICAgIGdyaWQuYWRkKHt9KTsKKyAg
ICBncmlkLnVwZGF0ZSh7fSk7CiAgICAgZXF1YWwoZ3JpZC5vdXRlckhUTUwsICc8dGFibGUgY2xh
c3M9ImZhaWx1cmVzIj4nICsKICAgICAgICAgJzx0aGVhZD48dHI+PHRkPnR5cGU8L3RkPjx0ZD5y
ZWxlYXNlPC90ZD48dGQ+ZGVidWc8L3RkPjwvdHI+PC90aGVhZD4nICsKICAgICAgICAgJzx0Ym9k
eT4nICsKQEAgLTg2LDcgKzg3LDcgQEAgdGVzdCgnRmFpbHVyZUdyaWQnLCA5LCBmdW5jdGlvbigp
IHsKICAgICByYWlzZXMoZnVuY3Rpb24oKSB7CiAgICAgICAgIGdyaWQudXBkYXRlKHsnQXRhcmkn
OiB7fX0pCiAgICAgfSk7Ci0gICAgZ3JpZC5hZGQoeydXZWJraXQgTGludXggKGRiZykoMSknOiB7
IGFjdHVhbDogJ1RFWFQnfX0pOworICAgIGdyaWQudXBkYXRlKHsnV2Via2l0IExpbnV4IChkYmcp
KDEpJzogeyBhY3R1YWw6ICdURVhUJ319KTsKICAgICBlcXVhbChncmlkLm91dGVySFRNTCwgJzx0
YWJsZSBjbGFzcz0iZmFpbHVyZXMiPicgKwogICAgICAgICAnPHRoZWFkPjx0cj48dGQ+dHlwZTwv
dGQ+PHRkPnJlbGVhc2U8L3RkPjx0ZD5kZWJ1ZzwvdGQ+PC90cj48L3RoZWFkPicgKwogICAgICAg
ICAnPHRib2R5PicgKwpAQCAtOTgsNyArOTksNyBAQCB0ZXN0KCdGYWlsdXJlR3JpZCcsIDksIGZ1
bmN0aW9uKCkgewogICAgICAgICAgICAgJzx0ciBjbGFzcz0iQlVJTERJTkciIHN0eWxlPSJkaXNw
bGF5OiBub25lOyAiPjx0ZD5CVUlMRElORzwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+PC90cj4nICsK
ICAgICAgICAgJzwvdGJvZHk+JyArCiAgICAgJzwvdGFibGU+Jyk7Ci0gICAgZ3JpZC5hZGQoeydX
ZWJraXQgTWFjMTAuNSAoQ0cpJzogeyBhY3R1YWw6ICdJTUFHRStURVhUJ319KTsKKyAgICBncmlk
LnVwZGF0ZSh7J1dlYmtpdCBNYWMxMC41IChDRyknOiB7IGFjdHVhbDogJ0lNQUdFK1RFWFQnfX0p
OwogICAgIGVxdWFsKGdyaWQub3V0ZXJIVE1MLCAnPHRhYmxlIGNsYXNzPSJmYWlsdXJlcyI+JyAr
CiAgICAgICAgICc8dGhlYWQ+PHRyPjx0ZD50eXBlPC90ZD48dGQ+cmVsZWFzZTwvdGQ+PHRkPmRl
YnVnPC90ZD48L3RyPjwvdGhlYWQ+JyArCiAgICAgICAgICc8dGJvZHk+JyArCkBAIC0xMTUsNyAr
MTE2LDcgQEAgdGVzdCgnRmFpbHVyZUdyaWQnLCA5LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAg
ICc8dHIgY2xhc3M9IkJVSUxESU5HIiBzdHlsZT0iZGlzcGxheTogbm9uZTsgIj48dGQ+QlVJTERJ
Tkc8L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+JyArCiAgICAgICAgICc8L3Rib2R5PicgKwog
ICAgICc8L3RhYmxlPicpOwotICAgIGdyaWQuYWRkKHsnV2Via2l0IE1hYzEwLjUgKENHKSc6IHsg
YWN0dWFsOiAnSU1BR0UrVEVYVCd9fSk7CisgICAgZ3JpZC51cGRhdGUoeydXZWJraXQgTWFjMTAu
NSAoQ0cpJzogeyBhY3R1YWw6ICdJTUFHRStURVhUJ319KTsKICAgICBlcXVhbChncmlkLm91dGVy
SFRNTCwgJzx0YWJsZSBjbGFzcz0iZmFpbHVyZXMiPicgKwogICAgICAgICAnPHRoZWFkPjx0cj48
dGQ+dHlwZTwvdGQ+PHRkPnJlbGVhc2U8L3RkPjx0ZD5kZWJ1ZzwvdGQ+PC90cj48L3RoZWFkPicg
KwogICAgICAgICAnPHRib2R5PicgKwpAQCAtMTMyLDYgKzEzMywxOSBAQCB0ZXN0KCdGYWlsdXJl
R3JpZCcsIDksIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgJzx0ciBjbGFzcz0iQlVJTERJTkci
IHN0eWxlPSJkaXNwbGF5OiBub25lOyAiPjx0ZD5CVUlMRElORzwvdGQ+PHRkPjwvdGQ+PHRkPjwv
dGQ+PC90cj4nICsKICAgICAgICAgJzwvdGJvZHk+JyArCiAgICAgJzwvdGFibGU+Jyk7CisgICAg
Z3JpZC5wdXJnZSgpOworICAgIGdyaWQudXBkYXRlKHsnV2Via2l0IExpbnV4IChkYmcpKDEpJzog
eyBhY3R1YWw6ICdURVhUJ319KTsKKyAgICBlcXVhbChncmlkLm91dGVySFRNTCwgJzx0YWJsZSBj
bGFzcz0iZmFpbHVyZXMiPicgKworICAgICAgICAnPHRoZWFkPjx0cj48dGQ+dHlwZTwvdGQ+PHRk
PnJlbGVhc2U8L3RkPjx0ZD5kZWJ1ZzwvdGQ+PC90cj48L3RoZWFkPicgKworICAgICAgICAnPHRi
b2R5PicgKworICAgICAgICAgICAgJzx0ciBjbGFzcz0iVEVYVCI+JyArCisgICAgICAgICAgICAg
ICAgJzx0ZD5URVhUPC90ZD4nICsKKyAgICAgICAgICAgICAgICAnPHRkPjwvdGQ+JyArCisgICAg
ICAgICAgICAgICAgJzx0ZD48YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cDovL2J1aWxkLmNo
cm9taXVtLm9yZy9wL2Nocm9taXVtLndlYmtpdC93YXRlcmZhbGw/YnVpbGRlcj1XZWJraXQrTGlu
dXgrKGRiZykoMSkiPjxzcGFuIGNsYXNzPSJ2ZXJzaW9uIj5sdWNpZDwvc3Bhbj48c3BhbiBjbGFz
cz0iYXJjaGl0ZWN0dXJlIj42NC1iaXQ8L3NwYW4+PC9hPjwvdGQ+JyArCisgICAgICAgICAgICAn
PC90cj4nICsKKyAgICAgICAgICAgICc8dHIgY2xhc3M9IkJVSUxESU5HIiBzdHlsZT0iZGlzcGxh
eTogbm9uZTsgIj48dGQ+QlVJTERJTkc8L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+JyArCisg
ICAgICAgICc8L3Rib2R5PicgKworICAgICc8L3RhYmxlPicpOwogfSk7CiAKIH0oKSk7CkluZGV4
OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNf
aHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9ub3RpZmljYXRpb25zLmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1Ymxp
Y19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL25vdGlmaWNhdGlvbnMuanMJKHJldmlzaW9u
IDk2NTUwKQorKysgVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkvbm90aWZpY2F0aW9ucy5qcwko
d29ya2luZyBjb3B5KQpAQCAtMjA0LDkgKzIwNCwxMiBAQCB1aS5ub3RpZmljYXRpb25zLkZhaWxp
bmdUZXN0c1N1bW1hcnkgPSBiCiAgICAgICAgIHRoaXMuX3doZXJlID0gdGhpcy5faG93LmFwcGVu
ZENoaWxkKG5ldyB1aS5mYWlsdXJlcy5GYWlsdXJlR3JpZCgpKTsKICAgICAgICAgdGhpcy5fY29t
bWl0RGF0YVBpbm5lZCA9IGZhbHNlOwogICAgIH0sCisgICAgcHVyZ2U6IGZ1bmN0aW9uKCkgewor
ICAgICAgICB0aGlzLl93aGVyZS5wdXJnZSgpOworICAgIH0sCiAgICAgdXBkYXRlQnVpbGRlclJl
c3VsdHM6IGZ1bmN0aW9uKHJlc3VsdE5vZGVzQnlCdWlsZGVyKQogICAgIHsKLSAgICAgICAgdGhp
cy5fd2hlcmUuYWRkKHJlc3VsdE5vZGVzQnlCdWlsZGVyKTsKKyAgICAgICAgdGhpcy5fd2hlcmUu
dXBkYXRlKHJlc3VsdE5vZGVzQnlCdWlsZGVyKTsKICAgICB9LAogICAgIGFkZEZhaWx1cmVBbmFs
eXNpczogZnVuY3Rpb24oZmFpbHVyZUFuYWx5c2lzKQogICAgIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109564</attachid>
            <date>2011-10-03 18:07:23 -0700</date>
            <delta_ts>2011-10-12 17:09:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69309-20111003180722.patch</filename>
            <type>text/plain</type>
            <size>32863</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDk2NTU5KQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMjAgQEAKKzIwMTEtMTAtMDMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBnYXJkZW4tby1tYXRpYyBzaG91bGQgcmVtb3ZlIGJ1aWxkZXJzIGZyb20gdGhlIGZh
aWx1cmUgZ3JpZCBvbmNlIHRoZXkgc3RhcnQgdG8gcGFzcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjkzMDkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGZvbGxvd3MgdGhlIHVwZGF0ZS9w
dXJnZSBtb2RlbCBmcm9tIFVwZGF0ZVRyYWNrZXIuICBUaGlzCisgICAgICAgIHBhdGNoIGlzIGxl
c3MgYXdlc29tZSB0aGFuIGl0IGNvdWxkIGJlIGJlY2F1c2UgaXQgY2F1c2VzIHRoZSBVSSB0bwor
ICAgICAgICBmbGFzaCBzbGlnaHRseS4gIEluIGEgZnV0dXJlIHBhdGNoLCB3ZSdsbCB3YW50IHRv
IHVzZSB0aGVzZQorICAgICAgICB1cGRhdGUvcHVyZ2Ugbm90aWZpY2F0aW9ucyB0byB1cGRhdGUg
dGhlIFVJIHdpdGhvdXQgZmxhc2hpbmcuCisKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9i
dWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy9j
b250cm9sbGVycy5qczoKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQu
b3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9mYWlsdXJlcy5q
czoKKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9w
dWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9mYWlsdXJlc191bml0dGVzdHMuanM6
CisgICAgICAgICogQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVi
bGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkvbm90aWZpY2F0aW9ucy5qczoKKwogMjAx
MS0xMC0wMyAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IEFkZCBteXNlbGYgdG8gdGhlIHdhdGNobGlzdCBmb3IgcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0KQEAgLTc4LDk1ICs5NSw2IEBACiAKICAgICAgICAgKEknbSBsZWF2aW5nIHRoZSBjb21wYW55
IGFuZCBteSBAb3BlbmJvc3NhLm9yZyB3aWxsIGJlIG5vIG1vcmUpCiAKLSAgICAgICAgKiBTY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvY29tbWl0dGVycy5weToKLQotMjAxMS0xMC0wMyAg
Q2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+Ci0KLSAgICAgICAgW0dU
S10gRml4IG1lbW9yeSBsZWFrIHdoZW4gbG9hZGluZyB1cmwKLSAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY5MjQ3Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkg
TWFydGluIFJvYmluc29uLgotCi0gICAgICAgIFJlbGVhc2UgVVJMIGNyZWF0ZWQgd2l0aCBXS1VS
TENyZWF0ZVdpdGhVVEY4Q1N0cmluZygpLgotCi0gICAgICAgICogTWluaUJyb3dzZXIvZ3RrL0Jy
b3dzZXJXaW5kb3cuYzoKLSAgICAgICAgKGFjdGl2YXRlVXJpRW50cnlDYWxsYmFjayk6Ci0gICAg
ICAgICogTWluaUJyb3dzZXIvZ3RrL21haW4uYzoKLSAgICAgICAgKGxvYWRVUkkpOgotCi0yMDEx
LTEwLTAzICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+Ci0KLSAgICAgICAg
VW5yZXZpZXdlZC4gQWRkIFpvbHTDoW4gw4FydmFpIGFzIGNvbnRyaWJ1dG9yLgotCi0gICAgICAg
ICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vY29uZmlnL2NvbW1pdHRlcnMucHk6Ci0KLTIwMTEt
MTAtMDMgIFJhcGhhZWwgS3VibyBkYSBDb3N0YSAgPGt1Ym9AcHJvZnVzaW9uLm1vYmk+Ci0KLSAg
ICAgICAgW0VGTF0gRFJUOiBBZGQgRHVtcEhpc3RvcnlJdGVtLntjcHAsaH0KLSAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYzOTkyCi0KLSAgICAgICAgUmV2
aWV3ZWQgYnkgQW50b25pbyBHb21lcy4KLQotICAgICAgICBUaGlzIGlzIHRoZSBjb2RlIHJlc3Bv
bnNpYmxlIGZvciBkdW1waW5nIHRoZSBiYWNrIGFuZCBmb3J3YXJkIGhpc3RvcnkKLSAgICAgICAg
bGlzdC4KLQotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wSGlzdG9yeUl0ZW0uY3Bw
OiBBZGRlZC4KLSAgICAgICAgKGR1bXBIaXN0b3J5SXRlbSk6Ci0gICAgICAgIChkdW1wQmFja0Zv
cndhcmRMaXN0Rm9yV2ViVmlldyk6Ci0gICAgICAgIChkdW1wQmFja0ZvcndhcmRMaXN0Rm9yV2Vi
Vmlld3MpOgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wSGlzdG9yeUl0ZW0uaDog
QWRkZWQuCi0KLTIwMTEtMTAtMDMgIFplbm8gQWxiaXNzZXIgIDx6ZW5vLmFsYmlzc2VyQG5va2lh
LmNvbT4KLQotICAgICAgICBbUXRdW1dLMl1bTWFjXSBXZWJLaXQyIGRvZXMgbm90IGJ1aWxkIG9u
IG1hYyBhZnRlciBtZXJnZSBvZiBRdDUgcmVmYWN0b3IgYnJhbmNoLgotICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjkyMjMKLQotICAgICAgICBXZWJLaXRU
ZXN0UnVubmVyIG11c3QgaW5jbHVkZSBRdCAvIHFuYW1lc3BhY2UgaGVhZGVyCi0gICAgICAgIHRv
IGdldCBhIGRlZmluaXRpb24gb2YgUXQ6Ok1vdXNlQnV0dG9ucy4KLQotICAgICAgICBSZXZpZXdl
ZCBieSBBbmRyZWFzIEtsaW5nLgotCi0gICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9FdmVudFNl
bmRlclByb3h5Lmg6Ci0KLTIwMTEtMTAtMDMgIENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Vi
a2l0Lm9yZz4KLQotICAgICAgICBVbnJldmlld2VkLiBBZGQgWm9sdMOhbiDDgXJ2YWkgYXMgY29u
dHJpYnV0b3IuCi0KLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jb25maWcvY29t
bWl0dGVycy5weToKLQotMjAxMS0xMC0wMiAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3Jn
PgotCi0gICAgICAgIENsZWFuIHVwIG9ic29sZXRlIGNvZGUgaW4gZ2FyZGVuaW5nc2VydmVyLnB5
IHJlbGF0ZWQgdG8KLSAgICAgICAgU1RBVElDX0ZJTEVfTkFNRVMuICBSYXRoZXIgdGhhbiBzZXJ2
ZSB0aGUgVUkgdmlhIHRoZSBQeXRob24gSFRUUAotICAgICAgICBzZXJ2ZXIsIHdlIGp1c3Qgc2Vy
dmUgaXQgb2ZmIHRoZSBmaWxlc3lzdGVtIGRpcmVjdGx5LgotCi0gICAgICAgIFdlIGhhZCBwbGFu
bmVkIHRvIHNlcnZlIHRoZSBVSSBvZmYgYnVpbGQud2Via2l0Lm9yZywgYnV0IHRoYXQgc2VydmVy
IGlzCi0gICAgICAgIHNvbWV3aGF0IHNsb3cuICBXZSdsbCBwcm9iYWJseSBzZXJ2ZSB0aGUgVUkg
b2Ygc29tZSB3ZWIgc2VydmVyLCBidXQKLSAgICAgICAgd2UnbGwgbmVlZCB0byB3b3JrIHRoYXQg
b3V0IGxhdGVyLgotCi0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL2NvbW1hbmRzL2dh
cmRlbm9tYXRpYy5weToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVycy9n
YXJkZW5pbmdzZXJ2ZXIucHk6Ci0KLTIwMTEtMTAtMDIgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KLQotICAgICAgICBSaXAgb3V0IGhhbGYtYmFja2VkIGdhcmRlbi1vLW1hdGljIGZl
YXR1cmVzIGluIHByZXBhcmF0aW9uIGZvciB3aWRlciB1c2UKLSAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY5MjI2Ci0KLSAgICAgICAgVGhpcyBwYXRjaCBy
aXBzIG91dCBhIGJ1bmNoIG9mIGhhbGYtYmFrZWQgZmVhdHVyZXMgYW5kIGNsZWFucyB1cCBhCi0g
ICAgICAgIGJ1bmNoIG9mIHNtYWxsIG5pdHMgd2l0aCB0aGUgY29yZSBzZXQgb2YgZmVhdHVyZXMu
ICBXZSdyZSBnb2luZyB0byBhc2sKLSAgICAgICAgbW9yZSBmb2xrcyB0byBzdGFydCB1c2luZyB0
aGUgdG9vbCwgYW5kIGhhdmluZyBhIGJ1bmNoIG9mIGhhbGYtYmFrZWQKLSAgICAgICAgZmVhdHVy
ZXMgYXJvdW5kIGlzIGRpc3RyYWN0aW5nLiAgV2UgY2FuIGFkZCB0aGVzZSBmZWF0dXJlcyBiYWNr
IHVuZGVyIGEKLSAgICAgICAgZmxhZyBhbmQgaW50ZXJhdGUgb24gdGhlbSBhZnRlciB3ZSd2ZSBn
b3QgdGhlIGNvcmUgZnVuY3Rpb25hbGl0eQotICAgICAgICBuYWlsZWQuCi0KLSAgICAgICAgKiBC
dWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0
RmFpbHVyZXMvc2NyaXB0cy9jaGVja291dF91bml0dGVzdHMuanM6Ci0gICAgICAgICogQnVpbGRT
bGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1
cmVzL3NjcmlwdHMvY29uZmlnLmpzOgotICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxk
LndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL2dhcmRl
bi1vLW1hdGljLmpzOgotICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5v
cmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpLmpzOgotICAgICAg
ICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1s
L1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzLmpzOgotICAgICAgICAqIEJ1aWxkU2xh
dmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJl
cy9zY3JpcHRzL3VpL2ZhaWx1cmVzX3VuaXR0ZXN0cy5qczoKLSAgICAgICAgKiBCdWlsZFNsYXZl
U3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMv
c2NyaXB0cy91aS9ub3RpZmljYXRpb25zLmpzOgotICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0
L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRz
L3VpL25vdGlmaWNhdGlvbnNfdW5pdHRlc3RzLmpzOgogICAgICAgICAqIEJ1aWxkU2xhdmVTdXBw
b3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zdHls
ZXMvbm90aWZpY2F0aW9ucy5jc3M6CiAKIDIwMTEtMTAtMDEgIEJyZW50IEZ1bGdoYW0gIDxiZnVs
Z2hhbUB3ZWJraXQub3JnPgpAQCAtMTA4MDEsMTYzICsxMDcyOSw2IEBACiAyMDExLTA3LTEyICBK
b3NlcGggUGVjb3Jhcm8gIDxqb2VwZWNrQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdl
ZC4gU2tpcHBpbmcgYSBmZXcgdGVzdHMgd2hpY2ggZmFpbCBkdWUgdG8gZGlmZmVyaW5nIG91dHB1
dAotICAgICAgICBpbiByZWNlbnQgQXBwbGljYXRpb25DYWNoZSBxdW90YSB0ZXN0cy4gUmVlbmFi
bGluZyB0aGUgdGVzdHMgaXMKLSAgICAgICAgdHJhY2tlZCBieSA8aHR0cDovL3dlYmtpdC5vcmcv
Yi82NDQxMD4uCi0KLSAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0
LmNwcDoKLSAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpkdW1wQXBwbGljYXRpb25D
YWNoZVF1b3RhKTogVGhpcyBzaG91bGQKLSAgICAgICAgaGF2ZSBiZWVuIGEgc3BhY2UsIG5vdCBh
IG5ld2xpbmUuCi0KLTIwMTEtMDctMTIgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4K
LQotICAgICAgICBnYXJkZW4tby1tYXRpYyBzaG91bGQgZGlzcGxheSByZWdyZXNzaW9uIHJhbmdl
cwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQ0MDcK
LQotICAgICAgICBSZXZpZXdlZCBieSBEaW1pdHJpIEdsYXprb3YuCi0KLSAgICAgICAgVGhpcyBw
YXRjaCBjb21wdXRlcyBhIHJlZ3Jlc3Npb24gcmFuZ2UgZm9yIGEgZmFpbHVyZSBieSBpbnRlcnNl
Y3RpbmcKLSAgICAgICAgdGhlIHJlZ3Jlc3Npb24gcmFuZ2VzIHNlZW4gYnkgdGhlIHZhcmlvdXMg
Ym90cy4gIFdlIG1ha2UgdGhlIHVuZGVybHlpbmcKLSAgICAgICAgYXNzdW1wdGlvbiB0aGF0IGEg
dGVzdCBpcyBvbmx5IGZhaWxpbmcgZHVlIHRvIG9uZSByZXZpc2lvbiBhdCBhbnkgZ2l2ZW4KLSAg
ICAgICAgbW9tZW50LiAgSWYgdGhhdCdzIG5vdCB0cnVlLCB0aGlzIGNvZGUgcHJvYmFibHkgZXhw
bG9kZXMuCi0KLSAgICAgICAgVGhlIHJlZ3Jlc3Npb24gcmFuZ2VzIGFwcGVhciBhc3luY2hyb25v
dXNseSwgd2hpY2ggbWlnaHQgYmUgYSBqYXJyaW5nCi0gICAgICAgIFVJLiAgV2UnbGwgaGF2ZSB0
byBleHBlcmltZW50IHRvIHNlZS4KLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9z
ZXJ2ZXJzL2RhdGEvZ2FyZGVuaW5nc2VydmVyL2Jhc2UuanM6Ci0gICAgICAgICogU2NyaXB0cy93
ZWJraXRweS90b29sL3NlcnZlcnMvZGF0YS9nYXJkZW5pbmdzZXJ2ZXIvYmFzZV91bml0dGVzdHMu
anM6Ci0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvZGF0YS9nYXJkZW5p
bmdzZXJ2ZXIvbWFpbi5qczoKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc2VydmVy
cy9kYXRhL2dhcmRlbmluZ3NlcnZlci9yZXN1bHRzLmpzOgotICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvdG9vbC9zZXJ2ZXJzL2RhdGEvZ2FyZGVuaW5nc2VydmVyL3Jlc3VsdHNfdW5pdHRlc3Rz
LmpzOgotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2RhdGEvZ2FyZGVu
aW5nc2VydmVyL3VpLmpzOgotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJz
L2RhdGEvZ2FyZGVuaW5nc2VydmVyL3VpX3VuaXR0ZXN0cy5qczoKLQotMjAxMS0wNy0xMiAgQWRh
bSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIGNyLWxpbnV4LWV3cyBzaG91
bGQgcnVuIHBpeGVsIHRlc3RzCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD02NDM5NAotCi0gICAgICAgIFJldmlld2VkIGJ5IE9qYW4gVmFmYWkuCi0KLSAg
ICAgICAgVGhpcyBwYXRjaCBlbmFibGVkIHBpeGVsIHRlc3Qgb24gdGhlIGNyLWxpbnV4LWV3cy4g
IFJ1bm5pbmcgYSBxdWljawotICAgICAgICB0ZXN0IG9uIHRoZSBib3RzLCBpdCBsb29rcyBsaWtl
IHdlIGhhdmUgZml2ZSBwaXhlbCBmYWlsdXJlcywgcmVsYXRlZCB0bwotICAgICAgICBzb21lIG1p
c3NpbmcgZm9udHMuICBJJ3ZlIGFsc28gbWFkZSB0aGUgYm90cyBza2lwIGZhaWxpbmcgdGVzdHMg
dG8KLSAgICAgICAgYXZvaWQgdXBsb2FkaW5nIGh1Z2UgemlwIGZpbGVzIHRvIGJ1Z3Mud2Via2l0
Lm9yZyAod2l0aCBhbGwgdGhlIGV4ZWN0ZWQKLSAgICAgICAgSU1BR0UgZmFpbHVyZXMpLgotCi0g
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vY29uZmlnL3BvcnRzLnB5OgotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NvbmZpZy9wb3J0c191bml0dGVzdC5weToKLQot
MjAxMS0wNy0xMiAgSm9zZXBoIFBlY29yYXJvICA8am9lcGVja0B3ZWJraXQub3JnPgotCi0gICAg
ICAgIEFwcGxpY2F0aW9uQ2FjaGUgdXBkYXRlIHNob3VsZCBub3QgaW1tZWRpYXRlbHkgZmFpbCB3
aGVuIHJlYWNoaW5nIHBlci1vcmlnaW4gcXVvdGEKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTY0MTc3Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5
IFByb3NrdXJ5YWtvdi4KLQotICAgICAgICBBZGQgbGF5b3V0VGVzdENvbnRyb2xsZXIuZGlzYWxs
b3dJbmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90YSgpCi0gICAgICAgIHRvIGRpc2FibGUg
dGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgcmFpc2luZyB0aGUgZGVmYXVsdCBwZXItb3JpZ2luCi0g
ICAgICAgIHF1b3RhIHRvIDVNQiB3aGVuIHJlYWNoZWQuIFRoaXMgYWxsb3dzIHVzIHRvIHRlc3Qg
d2hhdCBoYXBwZW5zCi0gICAgICAgIHdoZW4gdGhlIHF1b3RhIGlzIHJlYWNoZWQgYW5kIG5vdCBp
bmNyZWFzZWQuCi0KLSAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxl
ci5jcHA6Ci0gICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6TGF5b3V0VGVzdENvbnRyb2xs
ZXIpOgotICAgICAgICAoZGlzYWxsb3dJbmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90YUNh
bGxiYWNrKToKLSAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzdGF0aWNGdW5jdGlvbnMp
OgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmg6Ci0gICAg
ICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6ZGlzYWxsb3dJbmNyZWFzZUZvckFwcGxpY2F0aW9u
Q2FjaGVRdW90YSk6Ci0gICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0RGlzYWxsb3dJ
bmNyZWFzZUZvckFwcGxpY2F0aW9uQ2FjaGVRdW90YSk6Ci0gICAgICAgICogRHVtcFJlbmRlclRy
ZWUvcXQvTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHA6Ci0gICAgICAgIChMYXlvdXRUZXN0Q29u
dHJvbGxlcjo6cmVzZXQpOgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RD
b250cm9sbGVyUXQuaDoKLSAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpkaXNhbGxvd0lu
Y3JlYXNlRm9yQXBwbGljYXRpb25DYWNoZVF1b3RhKToKLSAgICAgICAgKExheW91dFRlc3RDb250
cm9sbGVyOjpkdW1wQXBwbGljYXRpb25DYWNoZURlbGVnYXRlQ2FsbGJhY2tzKToKLSAgICAgICAg
RXhwb3NlIGEgZnVuY3Rpb24gdG8gcHJldmVudCBhdXRvbWF0aWNhbGx5IGluY3JlYXNpbmcgdGhl
IHBlci1vcmlnaW4KLSAgICAgICAgcXVvdGEgd2hlbiB0aGUgcXVvdGEgaXMgcmVhY2hlZC4gVGhp
cyBhbGxvd3MgdXMgdG8gdGVzdCB3aGF0IGhhcHBlbnMKLSAgICAgICAgd2hlbiBhIHVzZXIgd291
bGQgImRpc2FsbG93IiBhIHF1b3RhIGluY3JlYXNlLgotCi0gICAgICAgICogRHVtcFJlbmRlclRy
ZWUvbWFjL1VJRGVsZWdhdGUubW06Ci0gICAgICAgICgtW1VJRGVsZWdhdGUgd2ViVmlldzpleGNl
ZWRlZEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5RdW90YUZvclNlY3VyaXR5T3JpZ2luOnNwYWNlTmVl
ZGVkOl0pOgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3Bw
OgotICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6OmR1bXBBcHBsaWNhdGlvbkNhY2hl
UXVvdGEpOgotICAgICAgICBSZXNwZWN0IHRoZSBuZXcgZGlzYWxsb3dJbmNyZWFzZSBmbGFnIGFu
ZCBkdW1wIHRoZSBzcGFjZU5lZWRlZCB2YWx1ZXMKLSAgICAgICAgZm9yIHBvcnRzIHRoYXQgaW1w
bGVtZW50IGFwcGxpY2F0aW9uIGNhY2hlIHF1b3Rhcy4KLQotMjAxMS0wNy0xMiAgT2phbiBWYWZh
aSAgPG9qYW5AY2hyb21pdW0ub3JnPgotCi0gICAgICAgIGZpeCBmbGFraW5lc3MgZGFzaGJvYXJk
IHRvIHdvcmsgd2l0aCBuZXcgY3Jhc2ggbG9nIGZpbGVuYW1lcwotICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQzOTMKLQotICAgICAgICBSZXZpZXdlZCBi
eSBBZGFtIEJhcnRoLgotCi0gICAgICAgICogVGVzdFJlc3VsdFNlcnZlci9zdGF0aWMtZGFzaGJv
YXJkcy9mbGFraW5lc3NfZGFzaGJvYXJkLmh0bWw6Ci0KLTIwMTEtMDctMTIgIEFkYW0gQmFydGgg
IDxhYmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBBZGQgYSBoYXBweSBhbmltYXRpb24gdG8g
Z2FyZGVuLW8tbWF0aWMgd2hlbiB0aGVyZSBhcmUgbm8gZmFpbHVyZXMKLSAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0MzgyCi0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgT2phbiBWYWZhaS4KLQotICAgICAgICBBcyByZXF1ZXN0ZWQgYnkgT2phbi4KLQotICAg
ICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2RhdGEvZ2FyZGVuaW5nc2VydmVy
L21haW4uY3NzOgotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zZXJ2ZXJzL2RhdGEv
Z2FyZGVuaW5nc2VydmVyL21haW4uanM6Ci0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS90b29s
L3NlcnZlcnMvZGF0YS9nYXJkZW5pbmdzZXJ2ZXIvcGFydHl0aW1lLmdpZjogQWRkZWQuCi0gICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS90b29sL3NlcnZlcnMvZ2FyZGVuaW5nc2VydmVyLnB5Ogot
Ci0yMDExLTA3LTEyICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAg
c2hlcmlmZmJvdCBjYW4ndCBwZXJmb3JtIHJvbGxvdXRzCi0gICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NDM3MAotCi0gICAgICAgIFJldmlld2VkIGJ5IEVy
aWMgU2VpZGVsLgotCi0gICAgICAgIE5vdyB0aGF0IHdlJ3JlIG5vdCB1cGRhdGluZyB0aGUgd29y
a2luZyBjb3B5IGJlZm9yZSBwcm9jZXNzaW5nIGV2ZXJ5Ci0gICAgICAgIElSQyBtZXNzYWdlLCB0
aGUgcm9sbG91dCBjb21tYW5kIG5lZWRzIHRvIHVwZGF0ZSBpdCBtYW51YWxseS4KLQotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvaXJjX2NvbW1hbmQucHk6Ci0gICAgICAgICog
U2NyaXB0cy93ZWJraXRweS90b29sL2JvdC9pcmNfY29tbWFuZF91bml0dGVzdC5weToKLQotMjAx
MS0wNy0xMiAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgotCi0gICAgICAgIEZpeCB0
aGUgZ3JhbW1hciBpbiB0aGUgRklYTUUgY29tbWVudC4KLQotICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL25ldC9yZXN1bHRzanNvbnBhcnNlci5weToKLQotMjAxMS0wNy0xMiAgRXJp
YyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgTlJXVCBzaG91bGQgb3BlbiB0
ZXN0IHJlc3VsdHMgcGFnZSB3aXRoIFNhZmFyaSB0cnVuaywgbm90IHRoZSBzeXN0ZW0gcHJvdmlk
ZWQgb25lIG9uIE1hYwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NjQzNDYKLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAgICAg
IFRvIGZpeCB0aGlzIEkgaW1wbGVtZW50ZWQgUG9ydC5zaG93X3Jlc3VsdHNfaHRtbF9maWxlIGlu
IE1hYywgR3RrIGFuZCBRdCBwb3J0cyB3aXRoCi0gICAgICAgIGltcGxlbWVudGF0aW9ucyAobW9z
dGx5KSBtYXRjaGluZyB0aG9zZSBmb3VuZCBpbiBvbGQtcnVuLXdlYmtpdC10ZXN0cy4KLSAgICAg
ICAgVGhlcmUgYXJlIHN0aWxsIHNvbWUgbWlub3IgZGlmZmVyZW5jZXMgZm9yIFF0IHdoaWNoIFF0
IGhhY2tlcnMgbWF5IHdpc2ggdG8gdHdlYWsuCi0KLSAgICAgICAgSSBoYWQgdG8gYWRkIGEgV2Vi
S2l0UG9ydC5fcG9ydF9mbGFnX2Zvcl9zY3JpcHRzIG1ldGhvZCAoc2ltaWxhciB0byBmbGFnKCkg
aW4gY29tbW9uLmNvbmZpZy5wb3J0cy5weSkKLSAgICAgICAgZm9yIHRoZSBRdC9HdGsgcG9ydHMg
d2hpY2ggYWx3YXlzIHJlcXVpcmUgYSBmbGFnIHBhc3NlZCB0byBzY3JpcHRzLgotCi0gICAgICAg
IFdoaWxlIHRyeWluZyB0byB0ZXN0IHRoaXMsIEkgZm91bmQgdGhhdCBGYWN0b3J5VGVzdC50ZXN0
X2Nocm9taXVtX2dwdV9saW51eAotICAgICAgICB3YXMgdXNpbmcgYSByZWFsIGZpbGVzeXN0ZW0g
KGR1ZSB0byBhc3NlcnRfcGxhdGZvcm0pIHdoaWNoIGR1ZSB0bwotICAgICAgICBnbG9iYWwgdmFy
aWFibGVzIGluIGNvbmZpZy5weSB3YXMgY2F1c2luZyBzZXQtd2Via2l0LWNvbmZpZ3VyYXRpb24g
dG8gaGF2ZQotICAgICAgICBhbiBhZmZlY3Qgb24gdW5pdCB0ZXN0IHJlc3VsdHMhICBTbyBJIGZp
eGVkIHRoaXMgYnkgbWFraW5nIEZhY3RvcnlUZXN0LmFzc2VydF9wb3J0Ci0gICAgICAgIHBhc3Mg
YSBtb2NrIGZpbGUgc3lzdGVtIHdoZW5ldmVyIGNhbGxpbmcgZmFjdG9yeS5nZXQuCi0KLSAgICAg
ICAgVW5mb3J0dW5hdGVseSBUZXN0UG9ydCB3YXMgZGVwZW5kaW5nIG9uIGFsd2F5cyBiZWluZyBw
YXNzZWQgYSBOb25lIGZpbGVzeXN0ZW0KLSAgICAgICAgYW5kIGFzc2VydGluZyBmaWxlc3lzdGVt
Ll90ZXN0cyAob25seSB0cnVlIGZvciB1bml0X3Rlc3RfZmlsZXN5c3RlbSgpKS4KLSAgICAgICAg
U28gSSBqdXN0IHJlbW92ZWQgdGhlIEZhY3RvcnlUZXN0LnRlc3RfdGVzdCBhbmQgRmFjdG9yeVRl
c3QudGVzdF9kcnlydW4gdGVzdHMKLSAgICAgICAgZGVjaWRpbmcgdGhhdCB0aGV5IHdlcmUgcHJl
dHR5IG11Y2ggdXNlbGVzcyBhbnl3YXkuICBJZiBvdGhlcnMgZmVlbCBzdHJvbmdseQotICAgICAg
ICBJJ20gaGFwcHkgdG8gZml4IHRoaXMgaW4gYSBkaWZmZXJlbnQgd2F5LgotCi0gICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZS5weToKLSAgICAgICAgIC0g
ZGVmYXVsdCBhcmd1bWVudHMgaW4gcHl0aG9uIGFyZSBzY3Jld3kuICBUaGV5IHVzZSBhIHNpbmds
ZSBzaGFyZWQKLSAgICAgICAgICAgaW5zdGFuY2UsIHNvIGl0J3MgYmV0dGVyIHRvIHVzZSBhcmd1
bWVudD1Ob25lIGFuZCB0aGVuIGFyZ3VtZW50ID0gYXJndW1lbnQgb3IgRGVmYXVsdCgpCi0gICAg
ICAgICAgIGlmIHlvdSBoYXZlIGFueSBjaGFuY2Ugb2YgbXV0YXRpbmcgKG9yIHJldHVybmluZykg
dGhlIGRlZmF1bHQgYXJndW1lbnQuCi0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRf
dGVzdHMvcG9ydC9jb25maWcucHk6Ci0gICAgICAgICAtIFRoaXMgY29kZSBpcyB3cm9uZy4gIFdl
IGRvbid0IG5lZWQgdG8gdXNlIGEgZ2xvYmFsIHZhcmlhYmxlIGhlcmUgKGFzIGZhciBhcyBJIGNh
biB0ZWxsKS4KLSAgICAgICAgICAgSSdtIG5vdCBmaXhpbmcgaXQgaW4gdGhpcyBwYXRjaCwgYnV0
IEkndmUgbWFya2VkIGl0IHdpdGggYSBGSVhNRSBhbmQgd2UgY2FuIGNvbnZlcnQgdG8KLSAgICAg
ICAgICAgc3RvcmluZyB0aGUgcmVzdWx0cyBvZiB0aGUgcmVhZCBvbiB0aGUgQ29uZmlnIG9iamVj
dCAod2hpY2ggc2hvdWxkIG9ubHkgYmUgY3JlYXRlZCBvbmNlIGR1cmluZyBub3JtYWwgb3BlcmF0
aW9uKS4KICAgICAgICAgICAgVW5pdCB0ZXN0cyBzaG91bGRuJ3QgYmUgaGl0dGluZyB0aGUgZGlz
ayBhbnl3YXkuICBJdCdzIHBvc3NpYmxlIENvbmZpZyBzaG91bGQgbW92ZSBvZmYgb2YgUG9ydCBh
bmQgb250byBUb29sL0hvc3QgZGlyZWN0bHkuCiAgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvcG9ydC9mYWN0b3J5LnB5OgogICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvZmFjdG9yeV91bml0dGVzdC5weToKQEAgLTIxOTIxLDMyMSArMjE2
OTIsNiBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgogCi0gICAgICAgIHdl
YmtpdC1wYXRjaCAtLW5vbi1pbnRlcmFjdGl2ZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBuZXctcnVu
LXdlYmtpdC10ZXN0cwotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NTk5MTkKLQotICAgICAgICBuZXctcnVuLXdlYmtpdC10ZXN0cyBkb2Vzbid0IHN1cHBv
cnQgLS13YWl0LWZvci1odHRwZCAoYmVjYXVzZSBpdAotICAgICAgICBhbHdheXMgd2FpdHMgZm9y
IEhUVFBELCBhcyBJIHVuZGVyc3RhbmQgdGhpbmdzKS4gIEl0IHR1cm5zIG91dCB3ZSdyZQotICAg
ICAgICBub3QgcmVhbGx5IHVzaW5nIHRoaXMgZmxhZyBmb3IgYW55dGhpbmcsIHNvIHdlIHNob3Vs
ZCBqdXN0IHJlbW92ZSBpdC4KLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9zdGVw
cy9ydW50ZXN0cy5weToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvc3RlcHMvc3Rl
cHNfdW5pdHRlc3QucHk6Ci0KLTIwMTEtMDUtMDEgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQu
b3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCi0KLSAgICAgICAgVGhlIGJv
dHMgc2hvdWxkIGxlYXJuIGZyb20gZXhwZWN0ZWQgZmFpbHVyZXMgd2l0aG91dCBoYXZpbmcgdG8g
cmV0cnkKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5
Mjc5Ci0KLSAgICAgICAgUmF0aGVyIHRoYW4gcmUtdHJ5aW5nIHRoZSB3aG9sZSBwYXRjaCwgd2Ug
Y2FuIGp1c3QgY2hlY2sgd2hldGhlciB3ZSBub3cKLSAgICAgICAgZXhwZWN0IHRoZSBmYWlsdXJl
cyB3ZSBzZWUgd2l0aCB0aGUgcGF0Y2ggYXBwbGllZCwgc2F2aW5nIGEgbG90IG9mIHRpbWUuCi0K
LSAgICAgICAgVGhpcyBwYXRjaCBhbHNvIHRlYWNoZXMgdGhlIENvbW1pdFF1ZXVlIGhvdyB0byBy
ZWplY3QgcGF0Y2hlcyBldmVuCi0gICAgICAgIHdoZW4gdGhlIHRyZWUgaXMgcmVkIHVzaW5nIHRo
ZSBuZXcgdW5leHBlY3RlZF9mYWlsdXJlcygpIG1ldGhvZCBvbgotICAgICAgICBFeHBlY3RlZEZh
aWx1cmVzLgotCi0gICAgICAgIEZpbmFsbHkgaW4gdGVzdGluZyB3ZSBmb3VuZCBhIGJ1ZyBpbiBF
eHBlY3RlZEZhaWx1cmVzIHdoZXJlIGl0IHdvdWxkCi0gICAgICAgICJ0cnVzdCIgcmVzdWx0cyB3
aGljaCBoYWQgbWFueSBtYW55IGZhaWx1cmVzLCBkdWUgdG8gdXNpbmcgYW4KLSAgICAgICAgZXF1
YWwgc2lnbiBpbnN0ZWFkIG9mIGEgbGVzcy10aGFuIHNpZ24uCi0KLSAgICAgICAgKiBTY3JpcHRz
L3dlYmtpdHB5L3Rvb2wvYm90L2NvbW1pdHF1ZXVldGFza191bml0dGVzdC5weQotICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvZXhwZWN0ZWRmYWlsdXJlcy5weQotICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvZXhwZWN0ZWRmYWlsdXJlc191bml0dGVzdC5weQot
ICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvcGF0Y2hhbmFseXNpc3Rhc2sucHkK
LQotCi0yMDExLTA1LTAyICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgd29ya3NwYWNlLnB5IGZhaWxz
IHRvIGltcG9ydCBTY3JpcHRFcnJvcgotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NTk5MTUKLQotICAgICAgICBJZiB0aGUgd29ya3NwYWNlIGZhaWxzIHRv
IGNyZWF0ZSBhIHppcCwgd2Via2l0cHkgY3Jhc2hlcyBpbnN0ZWFkIG9mCi0gICAgICAgIGhhbmRs
aW5nIHRoZSBlcnJvciBhcyBleHBlY3RlZC4KLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
Y29tbW9uL3N5c3RlbS93b3Jrc3BhY2UucHk6Ci0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS9j
b21tb24vc3lzdGVtL3dvcmtzcGFjZV91bml0dGVzdC5weToKLSAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L3Rvb2wvbW9ja3Rvb2wucHk6Ci0KLTIwMTEtMDUtMDEgIEFkYW0gQmFydGggIDxhYmFy
dGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZW1vdmUgdW5hZHZlcnRhbnRseSBhZGRlZCBmaWxl
LgotCi0gICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0V2ViS2l0QVBJLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6Ci0KLTIwMTEtMDUtMDEgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9y
Zz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAgICBleHBlY3Rl
ZGZhaWx1cmVzLnB5IHNob3VsZCByZXBvcnQgdGhlIHVuZXhwZWN0ZWQgZmFpbHVyZXMgd2hlbiBh
c2tlZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk5
MTYKLQotICAgICAgICBUaGlzIGluZm9ybWF0aW9uIGlzIHVzZWZ1bCB3aGVuIHRoZSBFV1MgcnVu
cyB0ZXN0cy4KLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdG9vbC9ib3QvZXhwZWN0ZWRm
YWlsdXJlcy5weToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3Rvb2wvYm90L2V4cGVjdGVk
ZmFpbHVyZXNfdW5pdHRlc3QucHk6Ci0KLTIwMTEtMDUtMDEgIEFkYW0gQmFydGggIDxhYmFydGhA
d2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQotICAgICAg
ICBKU09OVGVzdFJlc3VsdCBuZWVkcyB0byBoYW5kbGUgbXVsdGlwbGUgcmVzdWx0cwotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTkyNjkKLQotICAgICAg
ICBUaGlzIGNhc2Ugb2NjdXJzIHdoZW4gYSB0ZXN0IGlzIGZsYWt5IGJlY2F1c2UgTlJXVCB3aWxs
IHJ1biB0aGUgdGVzdAotICAgICAgICB0d2ljZSBhbmQgcmVwb3J0IGJvdGggcmVzdWx0cyBhcyAi
YWN0dWFsLiIKLQotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL25ldC9yZXN1bHRz
anNvbnBhcnNlci5weToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9uZXQvcmVz
dWx0c2pzb25wYXJzZXJfdW5pdHRlc3QucHk6Ci0KLTIwMTEtMDUtMDEgIEFkYW0gQmFydGggIDxh
YmFydGhAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KLQot
ICAgICAgICBNb3ZlIGNoZWNrb3V0L2FwaS5weSB0byBjaGVja291dC9jaGVja291dC5weQotICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk5MDYKLQotICAg
ICAgICBUaGlzIGlzIG1vcmUgY29uc2lzdGVudCB3aXRoIFB5dGhvbiBzdHlsZS4KLQotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L19faW5pdF9fLnB5OgotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbV91bml0dGVzdC5weToKLSAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9ob3N0LnB5OgotICAgICAgICAqIFNjcmlw
dHMvd2Via2l0cHkvdG9vbC9tYWluLnB5OgotCi0yMDExLTA1LTAxICBFcmljIFNlaWRlbCAgPGVy
aWNAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgotCi0gICAg
ICAgIHNjbS5weSBzaG91bGQgYmUgc3BsaXQgaW50byBtYW55IHBpZWNlcwotICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk5MDgKLQotICAgICAgICBGb3Jn
b3QgYW4gQXV0aGVudGljYXRpb25FcnJvciBpbXBvcnQuCi0KLSAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20vZ2l0LnB5OgotICAgICAgICAqIFNjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zdm4ucHk6Ci0KLTIwMTEtMDUtMDEgIEFybm8gUmVu
ZXZpZXIgIDxhcm5vQHJlbmV2aWVyLm5ldD4KLQotICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNl
aWRlbC4KLQotICAgICAgICB3cm9uZyBleGNlcHRpb24gcmFpc2VkIGluIExpZ2h0dHBkIHN0YXJ0
IG1ldGhvZAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTkyODMKLQotICAgICAgICByYWlzZSBzdGFuZGFyZCBFeGNlcHRpb24gaW5zdGVhZCBvZiBub24g
ZXhpc3RlbnQKLSAgICAgICAgZ29vZ2xlLmh0dHBkX3V0aWxzLkh0dHBkTm90U3RhcnRlZAotCi0g
ICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9odHRwX3NlcnZlci5w
eToKLQotMjAxMS0wNS0wMSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBzY20ucHkgc2hvdWxkIGJlIHNw
bGl0IGludG8gbWFueSBwaWVjZXMKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU5OTA4Ci0KLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9j
aGVja291dC9zY20vX19pbml0X18ucHk6Ci0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21t
b24vY2hlY2tvdXQvc2NtL2NvbW1pdG1lc3NhZ2UucHk6IEFkZGVkLgotICAgICAgICAqIFNjcmlw
dHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9naXQucHk6IEFkZGVkLgotICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zY20ucHk6Ci0gICAgICAgICog
U2NyaXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvc2NtL3NjbV91bml0dGVzdC5weToKLSAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20vc3ZuLnB5OiBBZGRl
ZC4KLQotMjAxMS0wNS0wMSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAg
ICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBNYWtlIG1vc3Qgc2NtLnB5IHRl
c3RzIHBhc3MgaW4gcHJlcGFyYXRpb24gZm9yIHNwbGl0dGluZyB0aGVtIHVwCi0gICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01OTkwNAotCi0gICAgICAgIFRo
ZXJlIGlzIG9uZSByZW1haW5pbmcgZmFpbHVyZToKLSAgICAgICAgd2Via2l0cHkuY29tbW9uLmNo
ZWNrb3V0LnNjbS5zY21fdW5pdHRlc3QuR2l0VGVzdFdpdGhNb2NrLnRlc3RfY3JlYXRlX3BhdGNo
Ci0gICAgICAgIHdoaWNoIGlkZW50aWZpZXMgYSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIFNWTiBh
bmQgR2l0IHZlcnNpb25zIG9mIHRoZQotICAgICAgICBTQ00gYXBpLiAgSSdtIG5vdCBnb2luZyB0
byBib3RoZXIgZml4aW5nIHRoYXQgdW50aWwgd2Ugc3BsaXQgb3V0IGFsbAotICAgICAgICB0aGUg
dGVzdHMuCi0KLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20v
c2NtX3VuaXR0ZXN0LnB5OgotCi0yMDExLTA1LTAxICBQYXRyaWNrIEdhbnN0ZXJlciAgPHBhcm9n
YUB3ZWJraXQub3JnPgotCi0gICAgICAgIFtXSU5dIFVucmV2aWV3ZWQgYnVpbGRmaXggYWZ0ZXIg
cjg1NDQwLgotCi0gICAgICAgICogRHVtcFJlbmRlclRyZWUvd2luL1VJRGVsZWdhdGUuY3BwOgot
ICAgICAgICAoVUlEZWxlZ2F0ZTo6VUlEZWxlZ2F0ZSk6IFJlbW92ZWQgYWNjaWRlbnRhbCBhZGRl
ZCBhZG9wdFB0ci4KLQotMjAxMS0wNS0wMSAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJvZ2FAd2Vi
a2l0Lm9yZz4KLQotICAgICAgICBbV0lOXSBVbnJldmlld2VkIGJ1aWxkZml4IGFmdGVyIHI4NTQz
NC4KLQotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9GcmFtZUxvYWREZWxlZ2F0ZS5jcHA6
IEFkZGVkIG1pc3NpbmcgaGVhZGVyLgotICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3dpbi9VSURl
bGVnYXRlLmNwcDogRGl0dG8uCi0KLTIwMTEtMDUtMDEgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFy
b2dhQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgW1dJTl0gVW5yZXZpZXdlZCBidWlsZGZpeCBhZnRl
ciByODU0MzQuCi0KLSAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS93aW4vRnJhbWVMb2FkRGVsZWdh
dGUuY3BwOgotICAgICAgICAoRnJhbWVMb2FkRGVsZWdhdGU6OkZyYW1lTG9hZERlbGVnYXRlKToK
LSAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS93aW4vVUlEZWxlZ2F0ZS5jcHA6Ci0gICAgICAgIChE
UlRVbmRvTWFuYWdlcjo6RFJUVW5kb01hbmFnZXIpOgotICAgICAgICAoVUlEZWxlZ2F0ZTo6VUlE
ZWxlZ2F0ZSk6Ci0gICAgICAgIChVSURlbGVnYXRlOjpyZXNldFVuZG9NYW5hZ2VyKToKLQotMjAx
MS0wNS0wMSAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAgUmV2aWV3
ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBNb3ZlIHNjbS5weSBpbnRvIGl0cyBvd24gbW9k
dWxlIGluIHByZXBhcmF0aW9uIGZvciBzcGxpdHRpbmcgaXQgdXAKLSAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU5ODg0Ci0KLSAgICAgICAgKiBTY3JpcHRz
L3dlYmtpdHB5L2NvbW1vbi9jaGVja291dC9zY20vX19pbml0X18ucHk6IEFkZGVkLgotICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zY20ucHk6IE1vdmVkLgot
ICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL2NoZWNrb3V0L3NjbS9zY21fdW5pdHRl
c3QucHk6IE1vdmVkLgotICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvdGVzdC9tYWluLnB5Ogot
Ci0yMDExLTA1LTAxICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+Ci0KLSAgICAgICAg
UmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAgd2Via2l0LXBhdGNoIGZhaWxzIHdo
ZW4gbm90IHJ1biBmcm9tIHJvb3QKLSAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU5ODgyCi0KLSAgICAgICAgV2UgbmVlZCB0byBzZXQgdGhlIENXRCB3aGVu
IHJ1bm5pbmcgc3ZuIHNvIHRoYXQgc3ZuIGludGVycHJldHMgZmlsZQotICAgICAgICBwYXRocyBy
ZWxhdGl2ZSB0byB0aGUgcm9vdCBvZiB0aGUgd29ya2luZyBjb3B5LgotCi0gICAgICAgICogU2Ny
aXB0cy93ZWJraXRweS9jb21tb24vY2hlY2tvdXQvc2NtLnB5OgotCi0yMDExLTA0LTI5ICBFcmlj
IFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KLQotICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJh
cnRoLgotCi0gICAgICAgIGxhbmQtc2FmZWx5IHBhdGNoZXMgc2hvdWxkIHNob3cgc2hvdyB0aGVp
ciBwbGFjZSBpbiB0aGUgY29tbWl0LXF1ZXVlCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01OTg1MwotCi0gICAgICAgIFRoaXMgY29tcGxpY2F0ZWQgdGhl
ICJzaG91bGQgd2Ugc2hvdyB0aGUgYnViYmxlcyBvciB0aGUgc3VibWl0LXRvLWV3cyBidXR0b24i
Ci0gICAgICAgIGxvZ2ljIHN1YnN0YW50aWFsbHkuIDooICBCdXQgbm93IHdlJ2xsIHNob3cgYm90
aCB0aGUgY29tbWl0LXF1ZXVlIHBvc2l0aW9uCi0gICAgICAgIGFzIHdlbGwgYXMgdGhlIHN1Ym1p
dC10by1ld3MgYnV0dG9uIGZvciBsYW5kLXNhZmVseSAoY3ErIG9ubHkpIHBhdGNoZXMuCi0gICAg
ICAgIFByZXZpb3VzbHkgd2Ugd291bGQgb25seSBzaG93IHRoZSBzdWJtaXQtdG8tZXdzIGJ1dHRv
bi4KLQotICAgICAgICAqIFF1ZXVlU3RhdHVzU2VydmVyL2hhbmRsZXJzL3N0YXR1c2J1YmJsZS5w
eToKLSAgICAgICAgKiBRdWV1ZVN0YXR1c1NlcnZlci90ZW1wbGF0ZXMvc3RhdHVzYnViYmxlLmh0
bWw6Ci0KLTIwMTEtMDQtMjkgIE5hb2tpIFRha2FubyAgPHRha2Fuby5uYW9raUBnbWFpbC5jb20+
Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KLQotICAgICAgICBBZGQgbXkgbmFt
ZSB0byBjb250cmlidXRlcnMuCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01OTg1NAotCi0gICAgICAgICogU2NyaXB0cy93ZWJraXRweS9jb21tb24vY29u
ZmlnL2NvbW1pdHRlcnMucHk6Ci0KLTIwMTEtMDQtMjkgIEtlaXRoIEt5eml2YXQgIDxrZWl0aC5r
eXppdmF0QG5va2lhLmNvbT4KLQotICAgICAgICBSZXZpZXdlZCBieSBDc2FiYSBPc3p0cm9nb27D
oWMuCi0KLSAgICAgICAgW1F0XSBEb24ndCBidWlsZCBUZXN0TmV0c2NhcGVQbHVnaW4gaWYgRU5B
QkxFX05FVFNDQVBFX1BMVUdJTl9BUEk9MAotICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NTk3NzIKLQotICAgICAgICAqIFRvb2xzLnBybzoKLQotMjAxMS0w
NC0yOSAgU3RlcGhhbmllIExld2lzICA8c2xld2lzQGFwcGxlLmNvbT4KLQotICAgICAgICBSdWJi
ZXItc3RhbXBlZCBieSBBZGFtIFJvYmVuLiAgIAotCi0gICAgICAgIFJlbW92ZSB0aGUgcHJvZHVj
dGlvbiBjb25maWd1cmF0aW9uIGd1YXJkIHNpbmNlIGluc3RhbGxzIG9ubHkgaGFwcGVuIGluIHBy
b2R1Y3Rpb24gYW55d2F5LiAgCi0gICAgICAgIFdvcmtzIGFyb3VuZCBhIGJ1ZyBpbiBYY29kZQot
Ci0gICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL1BlcmxTdXBwb3J0L01ha2VmaWxlOgotCi0y
MDExLTA0LTI5ICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KLQotICAgICAgICBSZW1v
dmUgYSBQSFAgc2V0dGluZyB0aGF0IGlzIG5vdyBwcm92aWRlZCBieSBodHRwZC5jb25mCi0KLSAg
ICAgICAgcjg1MTU1IGFkZGVkIHRoaXMgc2V0dGluZywgYnV0IHB1dHRpbmcgaXQgaW4gaHR0cGQu
Y29uZiBtYWtlcyBtb3JlIHNlbnNlIChzaW5jZSB0aGUgc2V0dGluZwotICAgICAgICBpc24ndCBk
ZXBlbmRlbnQgb24gcGF0aHMgdGhhdCBjb3VsZCBiZSBkaWZmZXJlbnQgb24gZWFjaCB1c2VyJ3Mg
bWFjaGluZSkuCi0KLSAgICAgICAgUmV2aWV3ZWQgYnkgU2FtIFdlaW5pZy4KLQotICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cGVybC9odHRwZC5wbToKLSAgICAgICAgKGdldERlZmF1bHRDb25maWdG
b3JUZXN0RGlyZWN0b3J5KTogUmVtb3ZlZCBsb2dfZXJyb3JzIHNldHRpbmcuCi0KLTIwMTEtMDQt
MjkgIEpvbiBMZWUgIDxqb25sZWVAYXBwbGUuY29tPgotCi0gICAgICAgIFVucmV2aWV3ZWQsIEFk
ZGluZyBKb24gTGVlIGFzIGEgY29tbWl0dGVyCi0KLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L2NvbW1vbi9jb25maWcvY29tbWl0dGVycy5weToKLQotMjAxMS0wNC0yOCAgT2phbiBWYWZhaSAg
PG9qYW5AY2hyb21pdW0ub3JnPgotCi0gICAgICAgIFJldmlld2VkIGJ5IFRvbnkgQ2hhbmcuCi0K
LSAgICAgICAgZml4IHByZXR0eV9wYXRjaF9hdmFpbGFibGUgYW5kIHdkaWZmX2F2YWlsYWJsZQot
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk3NjEKLQot
ICAgICAgICBUaGVzZSBtZXRob2RzIHJlbHkgb24gdGhlIGNoZWNrXyogbWV0aG9kIGJlaW5nIGNh
bGxlZCBmaXJzdC4KLSAgICAgICAgVGhpcyB3b3VsZCBvbmx5IGhhcHBlbiB3aGVuIHdlIGFjdHVh
bGx5IHRyaWVkIHRvIGNvbXB1dGUgYSBkaWZmLAotICAgICAgICBidXQgY29tcHV0aW5nIHRoZSBk
aWZmIGhhcHBlbnMgb24gYSBkaWZmZXJlbnQgcHJvY2Vzcy4KLSAgICAgICAgCi0gICAgICAgIEFs
c28gZml4IHNldHRpbmcgX3dkaWZmX2F2aWFsYWJsZSB0byBUcnVlIGJ5IGRlZmF1bHQuCi0KLSAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHk6Ci0gICAg
ICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9saW51eC5w
eToKLSAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVt
X2xpbnV4X3VuaXR0ZXN0LnB5OgotCi0yMDExLTA0LTI5ICBPamFuIFZhZmFpICA8b2phbkBjaHJv
bWl1bS5vcmc+Ci0KLSAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCi0KLSAgICAgICAg
ZXhjbHVkZSBza2lwcGVkIHRlc3RzIGZyb20gdGhlIHN1bW1hcml6ZWQgcmVzdWx0cwotICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTk4MTMKLQotICAgICAg
ICBJZiB3ZSBmaW5kIGEgbmVlZCBmbyBza2lwcGVkIHRlc3RzIGxhdGVyLCB3ZSBzaG91bGQgZWl0
aGVyIGNyZWF0ZQotICAgICAgICBhIHNraXBwZWQuanNvbiBmaWxlIG9yIGV4cG9zZSB0aGlzIHNv
bWUgb3RoZXIgd2F5LiBBcyBpdCBpcywgdGhlIGRhdGEKLSAgICAgICAgaXMgdW51c2VkIGFuZCBp
cyBodWdlbHkgYmxvYXRpbmcgdGhlIHNpemUgb2YgZnVsbF9yZXN1bHRzLmpzb24uCi0KLSAgICAg
ICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9sYXlvdXRfcGFja2FnZS9tYW5hZ2Vy
LnB5OgotCi0yMDExLTA0LTI5ICBBZGFtIFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KLQotICAg
ICAgICBNYWtlIER1bXBSZW5kZXJUcmVlU3VwcG9ydCBnZXQgaW5zdGFsbGVkIHdoZW4gdGhlIGRl
ZmF1bHQgY29uZmlndXJhdGlvbiBpcyBidWlsdAotCi0gICAgICAgIFRoZSBkZWZhdWx0IGNvbmZp
Z3VyYXRpb24gaXMgUHJvZHVjdGlvbiwgYnV0IGluIHRoYXQgY2FzZSB0aGUgQ09ORklHVVJBVElP
TiBlbnZpcm9ubWVudAotICAgICAgICB2YXJpYWJsZSBpcyBzZXQgdG8gdGhlIGVtcHR5IHN0cmlu
Zy4KLQotICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2VpbmlnLgotCi0gICAgICAgICogRHVtcFJl
bmRlclRyZWUvbWFjL1BlcmxTdXBwb3J0L01ha2VmaWxlOiBTZXQgQ09ORklHVVJBVElPTiB0byBQ
cm9kdWN0aW9uIGlmIGl0IGlzbid0Ci0gICAgICAgIGFscmVhZHkgc2V0IHNvIHRoYXQgbGF0ZXIg
bG9naWMgdGhhdCBkZXBlbmRzIG9uIENPTkZJR1VSQVRJT04gaGF2aW5nIHRoYXQgdmFsdWUgd2ls
bCB3b3JrLgotCi0yMDExLTA0LTI5ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KLQot
ICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCi0KLSAgICAgICAgQWRkIEVOQUJMRSBt
YWNybyBmb3IgV2ViS2l0QW5pbWF0aW9uCi0gICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD01OTcyOQotCi0gICAgICAgIEFkZCBuZXcgZmVhdHVyZSB0byB0b2dn
bGUgV2ViS2l0IEFuaW1hdGlvbiBBUEkuCi0KLSAgICAgICAgKiBTY3JpcHRzL2J1aWxkLXdlYmtp
dDoKLQotMjAxMS0wNC0yOSAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgotCi0gICAgICAg
IFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCi0KLSAgICAgICAgTWFrZSBwcm9kdWN0aW9uIHRoZSBk
ZWZhdWx0IGJ1aWxkIHR5cGUgZm9yIFdlYktpdFRlc3RSdW5uZXIsIG1hdGNoaW5nCi0gICAgICAg
IGFsbCBvdGhlciBwcm9qZWN0cy4KLQogICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvV2ViS2l0
VGVzdFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgogCiAyMDExLTA0LTI5ICBLZXZp
biBPbGxpdmllciAgPGtldmlub0B0aGVvbGxpdmllcnMuY29tPgpJbmRleDogVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1
cmVzL3NjcmlwdHMvY29udHJvbGxlcnMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVpbGRTbGF2
ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVz
L3NjcmlwdHMvY29udHJvbGxlcnMuanMJKHJldmlzaW9uIDk2NTUwKQorKysgVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1
cmVzL3NjcmlwdHMvY29udHJvbGxlcnMuanMJKHdvcmtpbmcgY29weSkKQEAgLTEzMSw2ICsxMzEs
OSBAQCB2YXIgRmFpbHVyZVN0cmVhbUNvbnRyb2xsZXIgPSBiYXNlLmV4dGVuCiAgICAgICAgIHRo
aXMuX3Rlc3RGYWlsdXJlcy5wdXJnZShmdW5jdGlvbihmYWlsdXJlKSB7CiAgICAgICAgICAgICBm
YWlsdXJlLmRpc21pc3MoKTsKICAgICAgICAgfSk7CisgICAgICAgIHRoaXMuX3Rlc3RGYWlsdXJl
cy5mb3JFYWNoKGZ1bmN0aW9uKGZhaWx1cmUpIHsKKyAgICAgICAgICAgIGZhaWx1cmUucHVyZ2Uo
KTsKKyAgICAgICAgfSk7CiAgICAgfSwKICAgICBvbkV4YW1pbmU6IGZ1bmN0aW9uKGZhaWx1cmVz
KQogICAgIHsKSW5kZXg6IFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmct
Y29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzLmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29u
ZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzLmpzCShyZXZp
c2lvbiA5NjU1MCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmct
Y29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL2ZhaWx1cmVzLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC03NSwxMCArNzUsNyBAQCB1aS5mYWlsdXJlcy5GYWlsdXJlR3JpZCA9
IGJhc2UuZXh0ZW5kcygnCiAgICAgICAgIHRpdGxlcy5pbnNlcnRDZWxsKCkudGV4dENvbnRlbnQg
PSAncmVsZWFzZSc7CiAgICAgICAgIHRpdGxlcy5pbnNlcnRDZWxsKCkudGV4dENvbnRlbnQgPSAn
dHlwZSc7CiAgICAgICAgIHRoaXMuX2JvZHkgPSB0aGlzLmFwcGVuZENoaWxkKGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ3Rib2R5JykpOwotICAgICAgICB0aGlzLl9yZXN1bHRSb3dzID0ge307Ci0g
ICAgICAgIC8vIEFkZCB0aGUgQlVJTERJTkcgcm93IGVhZ2VybHkgc28gdGhhdCBpdCBhcHBlYXJz
IGxhc3QuCi0gICAgICAgIHRoaXMuX3Jvd0J5UmVzdWx0KGtCdWlsZGluZ1Jlc3VsdCk7Ci0gICAg
ICAgICQodGhpcy5fcmVzdWx0Um93c1trQnVpbGRpbmdSZXN1bHRdKS5oaWRlKCk7CisgICAgICAg
IHRoaXMuX3Jlc2V0KCk7CiAgICAgfSwKICAgICBfcm93QnlSZXN1bHQ6IGZ1bmN0aW9uKHJlc3Vs
dCkKICAgICB7CkBAIC05NCwyNCArOTEsMzcgQEAgdWkuZmFpbHVyZXMuRmFpbHVyZUdyaWQgPSBi
YXNlLmV4dGVuZHMoJwogICAgICAgICByb3cuaW5zZXJ0Q2VsbCgpLnRleHRDb250ZW50ID0gcmVz
dWx0OwogICAgICAgICByZXR1cm4gcm93OwogICAgIH0sCi0gICAgcmVtb3ZlUmVzdWx0Um93czog
ZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgT2JqZWN0LmtleXModGhpcy5fcmVzdWx0Um93cyku
Zm9yRWFjaChmdW5jdGlvbihyZXN1bHQpIHsKLSAgICAgICAgICAgIHZhciByb3cgPSB0aGlzLl9y
ZXN1bHRSb3dzW3Jlc3VsdF07Ci0gICAgICAgICAgICByb3cucGFyZW50Tm9kZS5yZW1vdmVDaGls
ZChyb3cpOwotICAgICAgICB9LCB0aGlzKTsKLSAgICAgICAgdGhpcy5fcmVzdWx0Um93cyA9IHt9
OwotICAgIH0sCi0gICAgYWRkOiBmdW5jdGlvbihyZXN1bHRzQnlCdWlsZGVyKQorICAgIHVwZGF0
ZTogZnVuY3Rpb24ocmVzdWx0c0J5QnVpbGRlcikKICAgICB7CisgICAgICAgIGlmICh0aGlzLl9w
ZW5kaW5nUmVzZXQpCisgICAgICAgICAgICB0aGlzLl9yZXNldCgpOworCisgICAgICAgIGlmICgh
cmVzdWx0c0J5QnVpbGRlcikKKyAgICAgICAgICAgIHJldHVybjsKKwogICAgICAgICBPYmplY3Qu
a2V5cyhyZXN1bHRzQnlCdWlsZGVyKS5mb3JFYWNoKGZ1bmN0aW9uKGJ1aWxkZXJOYW1lKSB7CiAg
ICAgICAgICAgICB2YXIgY29uZmlndXJhdGlvbiA9IGNvbmZpZy5rQnVpbGRlcnNbYnVpbGRlck5h
bWVdOworICAgICAgICAgICAgaWYgKCFjb25maWd1cmF0aW9uKQorICAgICAgICAgICAgICAgIHRo
cm93ICJVbmtub3duIGJ1aWxkZXIgbmFtZTogIiArIGJ1aWxkZXJOYW1lOwogICAgICAgICAgICAg
dmFyIHJvdyA9IHRoaXMuX3Jvd0J5UmVzdWx0KHJlc3VsdHNCeUJ1aWxkZXJbYnVpbGRlck5hbWVd
LmFjdHVhbCk7CiAgICAgICAgICAgICB2YXIgY2VsbCA9IGNlbGxCeUJ1aWxkVHlwZShyb3csIGNv
bmZpZ3VyYXRpb24pOwogICAgICAgICAgICAgaWYgKGNlbGxDb250YWluc0NvbmZpZ3VyYXRpb24o
Y2VsbCwgY29uZmlndXJhdGlvbikpCiAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAg
ICAgY2VsbC5hcHBlbmRDaGlsZChuZXcgdWkuZmFpbHVyZXMuQ29uZmlndXJhdGlvbihjb25maWd1
cmF0aW9uKSkuaHJlZiA9IHVpLmRpc3BsYXlVUkxGb3JCdWlsZGVyKGJ1aWxkZXJOYW1lKTsKICAg
ICAgICAgfSwgdGhpcyk7CisgICAgfSwKKyAgICBwdXJnZTogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICAgICAgdGhpcy5fcGVuZGluZ1Jlc2V0ID0gdHJ1ZTsKKyAgICB9LAorICAgIF9yZXNldDogZnVu
Y3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy5fcGVuZGluZ1Jlc2V0ID0gZmFsc2U7CisgICAg
ICAgIHRoaXMuX3Jlc3VsdFJvd3MgPSB7fTsKKyAgICAgICAgJCh0aGlzLl9ib2R5KS5lbXB0eSgp
OworICAgICAgICAvLyBBZGQgdGhlIEJVSUxESU5HIHJvdyBlYWdlcmx5IHNvIHRoYXQgaXQgYXBw
ZWFycyBsYXN0LgorICAgICAgICB0aGlzLl9yb3dCeVJlc3VsdChrQnVpbGRpbmdSZXN1bHQpOwor
ICAgICAgICAkKHRoaXMuX3Jlc3VsdFJvd3Nba0J1aWxkaW5nUmVzdWx0XSkuaGlkZSgpOwogICAg
IH0KIH0pOwogCkluZGV4OiBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3Jn
LWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9mYWlsdXJlc191bml0
dGVzdHMuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Vi
a2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkvZmFpbHVy
ZXNfdW5pdHRlc3RzLmpzCShyZXZpc2lvbiA5NjU1MCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBw
b3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3Jp
cHRzL3VpL2ZhaWx1cmVzX3VuaXR0ZXN0cy5qcwkod29ya2luZyBjb3B5KQpAQCAtNTAsMTMgKzUw
LDE0IEBAIHRlc3QoJ0NvbmZpZ3VyYXRpb24nLCA4LCBmdW5jdGlvbigpIHsKICAgICBvayghY29u
ZmlndXJhdGlvbi5lcXVhbHMoe3ZlcnNpb246ICdsdWNpZCcsaXM2NGJpdDogdHJ1ZX0pKTsKIH0p
OwogCi10ZXN0KCdGYWlsdXJlR3JpZCcsIDksIGZ1bmN0aW9uKCkgewordGVzdCgnRmFpbHVyZUdy
aWQnLCAxMCwgZnVuY3Rpb24oKSB7CiAgICAgdmFyIGdyaWQgPSBuZXcgdWkuZmFpbHVyZXMuRmFp
bHVyZUdyaWQoKTsKICAgICBkZWVwRXF1YWwoT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZ3Jp
ZC5fX3Byb3RvX18pLnNvcnQoKSwgWworICAgICAgICAiX3Jlc2V0IiwKICAgICAgICAgIl9yb3dC
eVJlc3VsdCIsCi0gICAgICAgICJhZGQiLAogICAgICAgICAiaW5pdCIsCi0gICAgICAgICJyZW1v
dmVSZXN1bHRSb3dzIiwKKyAgICAgICAgInB1cmdlIiwKKyAgICAgICAgInVwZGF0ZSIKICAgICBd
KTsKICAgICBlcXVhbChncmlkLm91dGVySFRNTCwgJzx0YWJsZSBjbGFzcz0iZmFpbHVyZXMiPicg
KwogICAgICAgICAnPHRoZWFkPjx0cj48dGQ+dHlwZTwvdGQ+PHRkPnJlbGVhc2U8L3RkPjx0ZD5k
ZWJ1ZzwvdGQ+PC90cj48L3RoZWFkPicgKwpAQCAtNzMsNyArNzQsNyBAQCB0ZXN0KCdGYWlsdXJl
R3JpZCcsIDksIGZ1bmN0aW9uKCkgewogICAgICAgICAnPC90Ym9keT4nICsKICAgICAnPC90YWJs
ZT4nKTsKICAgICBlcXVhbChyb3cub3V0ZXJIVE1MLCAnPHRyIGNsYXNzPSJURVhUIj48dGQ+VEVY
VDwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+PC90cj4nKTsKLSAgICBncmlkLmFkZCh7fSk7CisgICAg
Z3JpZC51cGRhdGUoe30pOwogICAgIGVxdWFsKGdyaWQub3V0ZXJIVE1MLCAnPHRhYmxlIGNsYXNz
PSJmYWlsdXJlcyI+JyArCiAgICAgICAgICc8dGhlYWQ+PHRyPjx0ZD50eXBlPC90ZD48dGQ+cmVs
ZWFzZTwvdGQ+PHRkPmRlYnVnPC90ZD48L3RyPjwvdGhlYWQ+JyArCiAgICAgICAgICc8dGJvZHk+
JyArCkBAIC04Niw3ICs4Nyw3IEBAIHRlc3QoJ0ZhaWx1cmVHcmlkJywgOSwgZnVuY3Rpb24oKSB7
CiAgICAgcmFpc2VzKGZ1bmN0aW9uKCkgewogICAgICAgICBncmlkLnVwZGF0ZSh7J0F0YXJpJzog
e319KQogICAgIH0pOwotICAgIGdyaWQuYWRkKHsnV2Via2l0IExpbnV4IChkYmcpKDEpJzogeyBh
Y3R1YWw6ICdURVhUJ319KTsKKyAgICBncmlkLnVwZGF0ZSh7J1dlYmtpdCBMaW51eCAoZGJnKSgx
KSc6IHsgYWN0dWFsOiAnVEVYVCd9fSk7CiAgICAgZXF1YWwoZ3JpZC5vdXRlckhUTUwsICc8dGFi
bGUgY2xhc3M9ImZhaWx1cmVzIj4nICsKICAgICAgICAgJzx0aGVhZD48dHI+PHRkPnR5cGU8L3Rk
Pjx0ZD5yZWxlYXNlPC90ZD48dGQ+ZGVidWc8L3RkPjwvdHI+PC90aGVhZD4nICsKICAgICAgICAg
Jzx0Ym9keT4nICsKQEAgLTk4LDcgKzk5LDcgQEAgdGVzdCgnRmFpbHVyZUdyaWQnLCA5LCBmdW5j
dGlvbigpIHsKICAgICAgICAgICAgICc8dHIgY2xhc3M9IkJVSUxESU5HIiBzdHlsZT0iZGlzcGxh
eTogbm9uZTsgIj48dGQ+QlVJTERJTkc8L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+JyArCiAg
ICAgICAgICc8L3Rib2R5PicgKwogICAgICc8L3RhYmxlPicpOwotICAgIGdyaWQuYWRkKHsnV2Vi
a2l0IE1hYzEwLjUgKENHKSc6IHsgYWN0dWFsOiAnSU1BR0UrVEVYVCd9fSk7CisgICAgZ3JpZC51
cGRhdGUoeydXZWJraXQgTWFjMTAuNSAoQ0cpJzogeyBhY3R1YWw6ICdJTUFHRStURVhUJ319KTsK
ICAgICBlcXVhbChncmlkLm91dGVySFRNTCwgJzx0YWJsZSBjbGFzcz0iZmFpbHVyZXMiPicgKwog
ICAgICAgICAnPHRoZWFkPjx0cj48dGQ+dHlwZTwvdGQ+PHRkPnJlbGVhc2U8L3RkPjx0ZD5kZWJ1
ZzwvdGQ+PC90cj48L3RoZWFkPicgKwogICAgICAgICAnPHRib2R5PicgKwpAQCAtMTE1LDcgKzEx
Niw3IEBAIHRlc3QoJ0ZhaWx1cmVHcmlkJywgOSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAn
PHRyIGNsYXNzPSJCVUlMRElORyIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7ICI+PHRkPkJVSUxESU5H
PC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPicgKwogICAgICAgICAnPC90Ym9keT4nICsKICAg
ICAnPC90YWJsZT4nKTsKLSAgICBncmlkLmFkZCh7J1dlYmtpdCBNYWMxMC41IChDRyknOiB7IGFj
dHVhbDogJ0lNQUdFK1RFWFQnfX0pOworICAgIGdyaWQudXBkYXRlKHsnV2Via2l0IE1hYzEwLjUg
KENHKSc6IHsgYWN0dWFsOiAnSU1BR0UrVEVYVCd9fSk7CiAgICAgZXF1YWwoZ3JpZC5vdXRlckhU
TUwsICc8dGFibGUgY2xhc3M9ImZhaWx1cmVzIj4nICsKICAgICAgICAgJzx0aGVhZD48dHI+PHRk
PnR5cGU8L3RkPjx0ZD5yZWxlYXNlPC90ZD48dGQ+ZGVidWc8L3RkPjwvdHI+PC90aGVhZD4nICsK
ICAgICAgICAgJzx0Ym9keT4nICsKQEAgLTEzMiw2ICsxMzMsMTkgQEAgdGVzdCgnRmFpbHVyZUdy
aWQnLCA5LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICc8dHIgY2xhc3M9IkJVSUxESU5HIiBz
dHlsZT0iZGlzcGxheTogbm9uZTsgIj48dGQ+QlVJTERJTkc8L3RkPjx0ZD48L3RkPjx0ZD48L3Rk
PjwvdHI+JyArCiAgICAgICAgICc8L3Rib2R5PicgKwogICAgICc8L3RhYmxlPicpOworICAgIGdy
aWQucHVyZ2UoKTsKKyAgICBncmlkLnVwZGF0ZSh7J1dlYmtpdCBMaW51eCAoZGJnKSgxKSc6IHsg
YWN0dWFsOiAnVEVYVCd9fSk7CisgICAgZXF1YWwoZ3JpZC5vdXRlckhUTUwsICc8dGFibGUgY2xh
c3M9ImZhaWx1cmVzIj4nICsKKyAgICAgICAgJzx0aGVhZD48dHI+PHRkPnR5cGU8L3RkPjx0ZD5y
ZWxlYXNlPC90ZD48dGQ+ZGVidWc8L3RkPjwvdHI+PC90aGVhZD4nICsKKyAgICAgICAgJzx0Ym9k
eT4nICsKKyAgICAgICAgICAgICc8dHIgY2xhc3M9IlRFWFQiPicgKworICAgICAgICAgICAgICAg
ICc8dGQ+VEVYVDwvdGQ+JyArCisgICAgICAgICAgICAgICAgJzx0ZD48L3RkPicgKworICAgICAg
ICAgICAgICAgICc8dGQ+PGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly9idWlsZC5jaHJv
bWl1bS5vcmcvcC9jaHJvbWl1bS53ZWJraXQvd2F0ZXJmYWxsP2J1aWxkZXI9V2Via2l0K0xpbnV4
KyhkYmcpKDEpIj48c3BhbiBjbGFzcz0idmVyc2lvbiI+bHVjaWQ8L3NwYW4+PHNwYW4gY2xhc3M9
ImFyY2hpdGVjdHVyZSI+NjQtYml0PC9zcGFuPjwvYT48L3RkPicgKworICAgICAgICAgICAgJzwv
dHI+JyArCisgICAgICAgICAgICAnPHRyIGNsYXNzPSJCVUlMRElORyIgc3R5bGU9ImRpc3BsYXk6
IG5vbmU7ICI+PHRkPkJVSUxESU5HPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPicgKworICAg
ICAgICAnPC90Ym9keT4nICsKKyAgICAnPC90YWJsZT4nKTsKIH0pOwogCiB9KCkpOwpJbmRleDog
VG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0
bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkvbm90aWZpY2F0aW9ucy5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNf
aHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91aS9ub3RpZmljYXRpb25zLmpzCShyZXZpc2lvbiA5
NjU1MCkKKysrIFRvb2xzL0J1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmln
L3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpL25vdGlmaWNhdGlvbnMuanMJKHdv
cmtpbmcgY29weSkKQEAgLTIwNCwxNSArMjA0LDE4IEBAIHVpLm5vdGlmaWNhdGlvbnMuRmFpbGlu
Z1Rlc3RzU3VtbWFyeSA9IGIKICAgICAgICAgdGhpcy5fd2hlcmUgPSB0aGlzLl9ob3cuYXBwZW5k
Q2hpbGQobmV3IHVpLmZhaWx1cmVzLkZhaWx1cmVHcmlkKCkpOwogICAgICAgICB0aGlzLl9jb21t
aXREYXRhUGlubmVkID0gZmFsc2U7CiAgICAgfSwKKyAgICBwdXJnZTogZnVuY3Rpb24oKSB7Cisg
ICAgICAgIHRoaXMuX3doZXJlLnB1cmdlKCk7CisgICAgfSwKICAgICB1cGRhdGVCdWlsZGVyUmVz
dWx0czogZnVuY3Rpb24ocmVzdWx0Tm9kZXNCeUJ1aWxkZXIpCiAgICAgewotICAgICAgICB0aGlz
Ll93aGVyZS5hZGQocmVzdWx0Tm9kZXNCeUJ1aWxkZXIpOworICAgICAgICB0aGlzLl93aGVyZS51
cGRhdGUocmVzdWx0Tm9kZXNCeUJ1aWxkZXIpOwogICAgIH0sCiAgICAgYWRkRmFpbHVyZUFuYWx5
c2lzOiBmdW5jdGlvbihmYWlsdXJlQW5hbHlzaXMpCiAgICAgeworICAgICAgICB0aGlzLnVwZGF0
ZUJ1aWxkZXJSZXN1bHRzKGZhaWx1cmVBbmFseXNpcy5yZXN1bHROb2Rlc0J5QnVpbGRlcik7CiAg
ICAgICAgIGlmICghdWkubm90aWZpY2F0aW9ucy5GYWlsaW5nVGVzdHMucHJvdG90eXBlLmFkZEZh
aWx1cmVBbmFseXNpcy5jYWxsKHRoaXMsIGZhaWx1cmVBbmFseXNpcykpCiAgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgICAgIHRoaXMudXBkYXRlQnVpbGRlclJlc3VsdHMoZmFpbHVyZUFu
YWx5c2lzLnJlc3VsdE5vZGVzQnlCdWlsZGVyKTsKICAgICB9LAogICAgIHBpblRvQ29tbWl0RGF0
YTogZnVuY3Rpb24oY29tbWl0RGF0YSkKICAgICB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>