<?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>67257</bug_id>
          
          <creation_ts>2011-08-30 20:33:17 -0700</creation_ts>
          <short_desc>Remove old-style UI from garden-o-matic</short_desc>
          <delta_ts>2011-08-30 21:55:46 -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>64188</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>459404</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-30 20:33:17 -0700</bug_when>
    <thetext>Remove old-style UI from garden-o-matic</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>459406</commentid>
    <comment_count>1</comment_count>
      <attachid>105732</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-08-30 20:34:22 -0700</bug_when>
    <thetext>Created attachment 105732
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>459434</commentid>
    <comment_count>2</comment_count>
      <attachid>105732</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-30 21:55:42 -0700</bug_when>
    <thetext>Comment on attachment 105732
Patch

Clearing flags on attachment: 105732

Committed r94150: &lt;http://trac.webkit.org/changeset/94150&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>459435</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-30 21:55:46 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>105732</attachid>
            <date>2011-08-30 20:34:22 -0700</date>
            <delta_ts>2011-08-30 21:55:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67257-20110830203421.patch</filename>
            <type>text/plain</type>
            <size>31153</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTQxMTMKZGlmZiAtLWdpdCBhL1Rvb2xzL0J1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9n
YXJkZW4tby1tYXRpYy5odG1sIGIvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0
Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL2dhcmRlbi1vLW1hdGljLmh0bWwK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhlYTI2OTNjMTRiM2U0MzEyYWJjNzU4ZjMx
MWYwMDZjMzkzNjljZjEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVi
bGljX2h0bWwvVGVzdEZhaWx1cmVzL2dhcmRlbi1vLW1hdGljLmh0bWwKKysrIC9kZXYvbnVsbApA
QCAtMSw2OCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTwhLS0KLUNvcHlyaWdodCAoQykgMjAx
MSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotCi1SZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLW1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotYXJlIG1ldDoKLTEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0yLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQotICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLQotVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi1USEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi1QVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKLUJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1TVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MKLUlOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi1DT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgotVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotCi1UaGUgZmF2aWNvbnMgYXJlIGZy
b20gdGhlIGF3ZXNvbWUgZmFtZmFtZmFtLmNvbSwgd2hpY2ggaXMgdGhlIHdlYnNpdGUgb2YgTWFy
awotSmFtZXMsIGEgd2ViIGRldmVsb3BlciBmcm9tIEJpcm1pbmdoYW0sIFVLLgotLS0+Ci08aHRt
bD4KLTxoZWFkPgotPHRpdGxlPkdhcmRlbi1PLU1hdGljPC90aXRsZT4KLTxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0ic3R5bGVzL21haW4uY3NzIj4KLTxsaW5rIHJlbD0iaWNvbiIgaWQ9ImZh
dmljb24iIHR5cGU9ImltYWdlL3BuZyIgaHJlZj0iaW1hZ2VzL2Zhdmljb24tZ3JlZW4ucG5nIj4K
LTwvaGVhZD4KLTxib2R5PgotPGRpdiBjbGFzcz0iYnV0dGVyYmFyIj48c3BhbiBjbGFzcz0ic3Rh
dHVzIj5Mb2FkaW5nLi4uPC9zcGFuPjwvZGl2PgotPGRpdiBjbGFzcz0iaW5mb2JhciI+PHNwYW4g
Y2xhc3M9InN0YXR1cyI+PC9zcGFuPjwvZGl2PgotPGRpdiBjbGFzcz0iYWN0aW9ucyI+Ci0gICAg
PGJ1dHRvbiBjbGFzcz0ic2hvdy1zZWxlY3RlZC1mYWlsdXJlcyI+U2hvdyBTZWxlY3RlZCBGYWls
dXJlczwvYnV0dG9uPjxidXR0b24gY2xhc3M9InJlYmFzZWxpbmUtc2VsZWN0ZWQiPlJlYmFzZWxp
bmUgU2VsZWN0ZWQ8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJ1cGRhdGUtZXhwZWN0YXRpb25zLXNl
bGVjdGVkIj5NYXJrIFNlbGVjdGVkIGFzIEV4cGVjdGVkPC9idXR0b24+PGJ1dHRvbiBjbGFzcz0i
cmVmcmVzaCI+UmVmcmVzaDwvYnV0dG9uPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJyZWNlbnQtaGlz
dG9yeSI+PC9kaXY+Ci08ZGl2IGNsYXNzPSJyZXN1bHRzLWRldGFpbCByZXN1bHRzLXZpZXcgb2xk
LXJlc3VsdHMtdmlldyI+Ci0gICAgPGRpdiBjbGFzcz0idG9vbGJhciI+Ci0gICAgICAgIDxkaXYg
Y2xhc3M9ImFjdGlvbnMiPgotICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0icmViYXNlbGluZSBk
ZWZhdWx0Ij5BZGQgdG8gUmViYXNlbGluZSBRdWV1ZTwvYnV0dG9uPjxidXR0b24gY2xhc3M9InVw
ZGF0ZS1leHBlY3RhdGlvbiI+TWFyayBGYWlsdXJlIGFzIEV4cGVjdGVkPC9idXR0b24+PGJ1dHRv
biBjbGFzcz0icHJldmlvdXMiPiYjOTY2NDs8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJuZXh0Ij4m
Izk2NTQ7PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iZGlzbWlzcyI+Q2xvc2U8L2J1dHRvbj4KLSAg
ICAgICAgPC9kaXY+Ci0gICAgICAgIDxkaXYgY2xhc3M9InN0YXR1cyI+PC9kaXY+Ci0gICAgICAg
IDxkaXYgY2xhc3M9ImNsZWFyIj48L2Rpdj4KLSAgICA8L2Rpdj4KLSAgICA8ZGl2IGNsYXNzPSJj
b250ZW50Ij48L2Rpdj4KLTwvZGl2PgotPHNjcmlwdCBzcmM9Imh0dHBzOi8vYWpheC5nb29nbGVh
cGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5LzEuNi4yL2pxdWVyeS5taW4uanMiPjwvc2NyaXB0PiAK
LTxzY3JpcHQgc3JjPSJzY3JpcHRzL2NvbmZpZy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
c2NyaXB0cy9iYXNlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHRzL25ldC5qcyI+
PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0cy9UcmFjLmpzIj48L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSJzY3JpcHRzL0J1Z3ppbGxhLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3Jp
cHRzL2J1aWxkZXJzLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHRzL2NoZWNrb3V0
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHRzL3Jlc3VsdHMuanMiPjwvc2NyaXB0
PgotPHNjcmlwdCBzcmM9InNjcmlwdHMvdWkuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNj
cmlwdHMvdWkvYWN0aW9ucy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0cy91aS9y
ZXN1bHRzLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHRzL21vZGVsLmpzIj48L3Nj
cmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHRzL2NvbnRyb2xsZXJzLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSJzY3JpcHRzL21haW4uanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpk
aWZmIC0tZ2l0IGEvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25m
aWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvbWFpbi5qcyBiL1Rvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWls
dXJlcy9zY3JpcHRzL21haW4uanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMzMGU1
YjRlYmU0MDljMTVhZTVjNTA5Yjc0YzA4M2RhNTBjMWFhY2UuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQu
d2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvbWFpbi5q
cworKysgL2Rldi9udWxsCkBAIC0xLDMxMyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLShmdW5jdGlv
bigpIHsKLQotdmFyIGtGYXN0TG9hZGluZ0RFQlVHID0gZmFsc2U7Ci0KLXZhciBnX3VwZGF0ZVRp
bWVySWQgPSAwOwotdmFyIGdfcmVzdWx0c0RldGFpbHNJdGVyYXRvciA9IG51bGw7Ci12YXIgZ190
cmVlU3RhdGUgPSB7fTsKLQotdmFyIGtCdWlsZEZhaWxlZEluZm9iYXJUeXBlID0gJ2J1aWxkLWZh
aWxlZCc7Ci0KLWZ1bmN0aW9uIGRpc21pc3NCdXR0ZXJiYXIoKQotewotICAgICQoJy5idXR0ZXJi
YXInKS5mYWRlT3V0KCdmYXN0Jyk7Ci0gICAgY2hlY2tGb3JMb2NhbFNlcnZlcigpOwotfQotCi1m
dW5jdGlvbiBkaXNwbGF5T25CdXR0ZXJiYXIobWVzc2FnZSkKLXsKLSAgICAkKCcuYnV0dGVyYmFy
IC5zdGF0dXMnKS50ZXh0KG1lc3NhZ2UpOwotICAgICQoJy5idXR0ZXJiYXInKS5mYWRlSW4oJ2Zh
c3QnKTsKLX0KLQotZnVuY3Rpb24gaGlkZUluZm9iYXIoKQotewotICAgICQoJy5pbmZvYmFyJyku
YW5pbWF0ZSh7Ci0gICAgICAgIG9wYWNpdHk6ICd0b2dnbGUnLAotICAgICAgICBoZWlnaHQ6ICd0
b2dnbGUnLAotICAgIH0pOwotfQotCi1mdW5jdGlvbiBoaWRlSW5mb2JhcklmT2ZUeXBlKHR5cGUp
Ci17Ci0gICAgaWYgKCEkKCcuaW5mb2JhciAuc3RhdHVzJykuaXMoJzp2aXNpYmxlJykpCi0gICAg
ICAgIHJldHVybjsKLSAgICBpZiAoJCgnLmluZm9iYXIgLnN0YXR1cycpLmF0dHIoY29uZmlnLmtJ
bmZvYmFyVHlwZUF0dHIpICE9IHR5cGUpCi0gICAgICAgIHJldHVybjsKLSAgICBoaWRlSW5mb2Jh
cigpOwotfQotCi1mdW5jdGlvbiBkaXNwbGF5SW5mb2JhcihtZXNzYWdlLCB0eXBlKQotewotICAg
ICQoJy5pbmZvYmFyIC5zdGF0dXMnKS5lbXB0eSgpLmF0dHIoY29uZmlnLmtJbmZvYmFyVHlwZUF0
dHIsIHR5cGUpLmFwcGVuZChtZXNzYWdlKTsKLSAgICAkKCcuaW5mb2JhcicpLmFuaW1hdGUoewot
ICAgICAgICBvcGFjaXR5OiAndG9nZ2xlJywKLSAgICAgICAgaGVpZ2h0OiAndG9nZ2xlJywKLSAg
ICB9KTsKLX0KLQotZnVuY3Rpb24gc2V0SWNvblN0YXRlKGhhc0ZhaWx1cmVzKQotewotICAgIHZh
ciBmYXZpY29uVVJMID0gJ2ltYWdlcy9mYXZpY29uLScgKyAoaGFzRmFpbHVyZXMgPyAncmVkJyA6
ICdncmVlbicpICsgJy5wbmcnOwotICAgICQoJyNmYXZpY29uJykuYXR0cignaHJlZicsIGZhdmlj
b25VUkwpOwotfQotCi1mdW5jdGlvbiB0b2dnbGVCdXR0b24oYnV0dG9uLCBpc0VuYWJsZWQpCi17
Ci0gICAgaWYgKGlzRW5hYmxlZCkKLSAgICAgICAgYnV0dG9uLnJlbW92ZUF0dHIoJ2Rpc2FibGVk
Jyk7Ci0gICAgZWxzZQotICAgICAgICBidXR0b24uYXR0cignZGlzYWJsZWQnLCB0cnVlKQotfQot
Ci1mdW5jdGlvbiByZWJhc2VsaW5lKGZhaWx1cmVJbmZvTGlzdCkKLXsKLSAgICBpZiAoIWZhaWx1
cmVJbmZvTGlzdC5sZW5ndGgpCi0gICAgICAgIHJldHVybjsKLSAgICBkaXNwbGF5T25CdXR0ZXJi
YXIoJ1JlYmFzZWxpbmluZy4uLicpOwotICAgIGNoZWNrb3V0LnJlYmFzZWxpbmUoZmFpbHVyZUlu
Zm9MaXN0LCBmdW5jdGlvbigpIHsKLSAgICAgICAgZGlzbWlzc0J1dHRlcmJhcigpOwotICAgICAg
ICAvLyBGSVhNRTogV2Ugc2hvdWxkIHVzZSBzb21ldGhpbmcgbGlrZSBhIGxpZ2h0Ym94IHJhdGhl
ciB0aGFuIGFsZXJ0IQotICAgICAgICBhbGVydCgnTmV3IHJlc3VsdHMgZG93bmxvYWRlZCB0byB5
b3VyIHdvcmtpbmcgY29weS4gUGxlYXNlIHVzZSAid2Via2l0LXBhdGNoIGxhbmQtY293Ym95IiB0
byBsYW5kIHRoZSB1cGRhdGVkIGJhc2VsaW5lcy4nKTsKLSAgICB9KTsKLX0KLQotZnVuY3Rpb24g
c2hvd1Jlc3VsdHNEZXRhaWwoZmFpbHVyZUluZm8pCi17Ci0gICAgdmFyIGZhaWx1cmVUeXBlcyA9
IGZhaWx1cmVJbmZvLmZhaWx1cmVUeXBlTGlzdC5qb2luKCcgJyk7Ci0KLSAgICB2YXIgY29udGVu
dCA9ICQoJy5yZXN1bHRzLWRldGFpbCAuY29udGVudCcpOwotCi0gICAgaWYgKCQoJy5mYWlsdXJl
LWRldGFpbHMnLCBjb250ZW50KS5hdHRyKGNvbmZpZy5rQnVpbGRlck5hbWVBdHRyKSA9PSBmYWls
dXJlSW5mby5idWlsZGVyTmFtZSAmJgotICAgICAgICAkKCcuZmFpbHVyZS1kZXRhaWxzJywgY29u
dGVudCkuYXR0cihjb25maWcua1Rlc3ROYW1lQXR0cikgPT0gZmFpbHVyZUluZm8udGVzdE5hbWUg
JiYKLSAgICAgICAgJCgnLmZhaWx1cmUtZGV0YWlscycsIGNvbnRlbnQpLmF0dHIoY29uZmlnLmtG
YWlsdXJlVHlwZXNBdHRyKSA9PSBmYWlsdXJlVHlwZXMpCi0gICAgICAgIHJldHVybjsKLQotICAg
IGRpc3BsYXlPbkJ1dHRlcmJhcignTG9hZGluZy4uLicpOwotCi0gICAgcmVzdWx0cy5mZXRjaFJl
c3VsdHNVUkxzKGZhaWx1cmVJbmZvLCBmdW5jdGlvbihyZXN1bHRzVVJMcykgewotICAgICAgICB2
YXIgc3RhdHVzID0gJCgnLnJlc3VsdHMtZGV0YWlsIC50b29sYmFyIC5zdGF0dXMnKTsKLQotICAg
ICAgICBzdGF0dXMuZW1wdHkoKTsKLSAgICAgICAgY29udGVudC5lbXB0eSgpOwotCi0gICAgICAg
IC8vIEZJWE1FOiBXZSBzaG91bGQgYmUgcGFzc2luZyB0aGUgZnVsbCBsaXN0IG9mIGZhaWxpbmcg
YnVpbGRlciBuYW1lcyBhcyB0aGUgZm91cnRoIGFyZ3VtZW50LgotICAgICAgICBzdGF0dXMuYXBw
ZW5kKHVpLmZhaWx1cmVEZXRhaWxzU3RhdHVzKGZhaWx1cmVJbmZvLCBbZmFpbHVyZUluZm8uYnVp
bGRlck5hbWVdKSk7Ci0gICAgICAgIHZhciByZXN1bHRzR3JpZCA9IG5ldyB1aS5yZXN1bHRzLlJl
c3VsdHNHcmlkKCk7Ci0gICAgICAgIHJlc3VsdHNHcmlkLmFkZFJlc3VsdHMocmVzdWx0c1VSTHMp
OwotICAgICAgICBjb250ZW50LmFwcGVuZChyZXN1bHRzR3JpZCk7Ci0KLSAgICAgICAgdG9nZ2xl
QnV0dG9uKCQoJy5yZXN1bHRzLWRldGFpbCAuYWN0aW9ucyAubmV4dCcpLCBnX3Jlc3VsdHNEZXRh
aWxzSXRlcmF0b3IuaGFzTmV4dCgpKTsKLSAgICAgICAgdG9nZ2xlQnV0dG9uKCQoJy5yZXN1bHRz
LWRldGFpbCAuYWN0aW9ucyAucHJldmlvdXMnKSwgZ19yZXN1bHRzRGV0YWlsc0l0ZXJhdG9yLmhh
c1ByZXZpb3VzKCkpOwotICAgICAgICB0b2dnbGVCdXR0b24oJCgnLnJlc3VsdHMtZGV0YWlsIC5h
Y3Rpb25zIC5yZWJhc2VsaW5lJyksIHJlc3VsdHMuY2FuUmViYXNlbGluZShmYWlsdXJlSW5mby5m
YWlsdXJlVHlwZUxpc3QpKTsKLQotICAgICAgICAkKCcuZmFpbHVyZS1kZXRhaWxzJywgY29udGVu
dCkuYXR0cihjb25maWcua1Rlc3ROYW1lQXR0ciwgZmFpbHVyZUluZm8udGVzdE5hbWUpOwotICAg
ICAgICAkKCcuZmFpbHVyZS1kZXRhaWxzJywgY29udGVudCkuYXR0cihjb25maWcua0J1aWxkZXJO
YW1lQXR0ciwgZmFpbHVyZUluZm8uYnVpbGRlck5hbWUpOwotICAgICAgICAkKCcuZmFpbHVyZS1k
ZXRhaWxzJywgY29udGVudCkuYXR0cihjb25maWcua0ZhaWx1cmVUeXBlc0F0dHIsIGZhaWx1cmVU
eXBlcyk7Ci0KLSAgICAgICAgaWYgKCEkKCcucmVzdWx0cy1kZXRhaWwnKS5pcygiOnZpc2libGUi
KSkKLSAgICAgICAgICAgICQoJy5yZXN1bHRzLWRldGFpbCcpLmZhZGVJbignZmFzdCcsIGRpc21p
c3NCdXR0ZXJiYXIpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBkaXNtaXNzQnV0dGVyYmFy
KCk7Ci0gICAgfSk7Ci19Ci0KLWZ1bmN0aW9uIGhpZGVSZXN1bHRzRGV0YWlsKCkKLXsKLSAgICAk
KCcucmVzdWx0cy1kZXRhaWwnKS5mYWRlT3V0KCdmYXN0JywgZnVuY3Rpb24oKSB7Ci0gICAgICAg
ICQoJy5yZXN1bHRzLWRldGFpbCAuc3RhdHVzJykuZW1wdHkoKTsKLSAgICAgICAgJCgnLnJlc3Vs
dHMtZGV0YWlsIC5jb250ZW50JykuZW1wdHkoKTsKLSAgICAgICAgLy8gU3RyaWN0bHkgc3BlYWtp
bmcsIHdlIGRvbid0IG5lZWQgdG8gY2xlYXIgZ19yZXN1bHRzRGV0YWlsc0l0ZXJhdG9yLAotICAg
ICAgICAvLyBidXQgZG9pbmcgc28gaGVscHMgdGhlIGdhcmJhZ2UgY29sbGVjdG9yIGZyZWUgbWVt
b3J5LgotICAgICAgICBnX3Jlc3VsdHNEZXRhaWxzSXRlcmF0b3IgPSBudWxsOwotICAgIH0pOwot
ICAgIGNoZWNrb3V0LnVwZGF0ZUV4cGVjdGF0aW9ucyhtb2RlbC50YWtlRXhwZWN0YXRpb25VcGRh
dGVRdWV1ZSgpLCBmdW5jdGlvbigpIHsKLSAgICAgICAgLy8gRklYTUU6IFNob3VsZCB3ZSBjb25m
aXJtIHdpdGggdGhlIHVzZSBiZWZvcmUgZXhlY3V0aW5nIHRoZSBxdWV1ZT8KLSAgICAgICAgcmVi
YXNlbGluZShtb2RlbC50YWtlUmViYXNlbGluZVF1ZXVlKCkpOwotICAgIH0pOwotfQotCi1mdW5j
dGlvbiBuZXh0UmVzdWx0c0RldGFpbCgpCi17Ci0gICAgaWYgKGdfcmVzdWx0c0RldGFpbHNJdGVy
YXRvci5oYXNOZXh0KCkpCi0gICAgICAgIGdfcmVzdWx0c0RldGFpbHNJdGVyYXRvci5jYWxsTmV4
dCgpOwotICAgIGVsc2UKLSAgICAgICAgaGlkZVJlc3VsdHNEZXRhaWwoKTsKLX0KLQotZnVuY3Rp
b24gcHJldmlvdXNSZXN1bHRzRGV0YWlsKCkKLXsKLSAgICBnX3Jlc3VsdHNEZXRhaWxzSXRlcmF0
b3IuY2FsbFByZXZpb3VzKCk7Ci19Ci0KLWZ1bmN0aW9uIGZhaWx1cmVJbmZvRnJvbVJlc3VsdHNE
ZXRhaWwoKQotewotICAgIHZhciBmYWlsdXJlRGV0YWlscyA9ICQoJy5yZXN1bHRzLWRldGFpbCAu
ZmFpbHVyZS1kZXRhaWxzJyk7Ci0gICAgcmV0dXJuIHsKLSAgICAgICAgJ2J1aWxkZXJOYW1lJzog
ZmFpbHVyZURldGFpbHMuYXR0cihjb25maWcua0J1aWxkZXJOYW1lQXR0ciksCi0gICAgICAgICd0
ZXN0TmFtZSc6IGZhaWx1cmVEZXRhaWxzLmF0dHIoY29uZmlnLmtUZXN0TmFtZUF0dHIpLAotICAg
ICAgICAnZmFpbHVyZVR5cGVMaXN0JzogcmVzdWx0cy5mYWlsdXJlVHlwZUxpc3QoZmFpbHVyZURl
dGFpbHMuYXR0cihjb25maWcua0ZhaWx1cmVUeXBlc0F0dHIpKSwKLSAgICB9Ci19Ci0KLWZ1bmN0
aW9uIGFkZFRvUmViYXNlbGluZVF1ZXVlKCkKLXsKLSAgICBtb2RlbC5xdWV1ZUZvclJlYmFzZWxp
bmUoZmFpbHVyZUluZm9Gcm9tUmVzdWx0c0RldGFpbCgpKTsKLSAgICBuZXh0UmVzdWx0c0RldGFp
bCgpOwotfQotCi1mdW5jdGlvbiBhZGRUb0V4cGVjdGF0aW9uVXBkYXRlUXVldWUoKQotewotICAg
IG1vZGVsLnF1ZXVlRm9yRXhwZWN0YXRpb25VcGRhdGUoZmFpbHVyZUluZm9Gcm9tUmVzdWx0c0Rl
dGFpbCgpKTsKLSAgICBuZXh0UmVzdWx0c0RldGFpbCgpOwotfQotCi1mdW5jdGlvbiBzZWxlY3Rl
ZEZhaWx1cmVzKCkKLXsKLSAgICB2YXIgZmFpbHVyZUluZm9MaXN0ID0gW107Ci0KLSAgICAkKCcu
dGVzdCBpbnB1dDpjaGVja2JveCcpLmVhY2goZnVuY3Rpb24oKSB7Ci0gICAgICAgIGlmICghdGhp
cy5jaGVja2VkKQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBmYWlsdXJlSW5mb0xpc3Qg
PSBmYWlsdXJlSW5mb0xpc3QuY29uY2F0KHVpLmZhaWx1cmVJbmZvTGlzdEZvclN1bW1hcnkoJCh0
aGlzKS5wYXJlbnRzKCcucmVzdWx0JykpKTsKLSAgICB9KTsKLQotICAgIHJldHVybiBmYWlsdXJl
SW5mb0xpc3Q7Ci19Ci0KLWZ1bmN0aW9uIHJlYmFzZWxpbmVTZWxlY3RlZCgpCi17Ci0gICAgcmVi
YXNlbGluZShzZWxlY3RlZEZhaWx1cmVzKCkpOwotfQotCi1mdW5jdGlvbiB1cGRhdGVFeHBlY3Rh
dGlvbnNGb3JTZWxlY3RlZCgpCi17Ci0gICAgY2hlY2tvdXQudXBkYXRlRXhwZWN0YXRpb25zKHNl
bGVjdGVkRmFpbHVyZXMoKSwgJC5ub29wKTsKLX0KLQotZnVuY3Rpb24gc2hvd1NlbGVjdGVkRmFp
bHVyZXMoKQotewotICAgIHZhciBsaXN0T2ZBcmd1bWVudEFycmF5cyA9IHNlbGVjdGVkRmFpbHVy
ZXMoKS5tYXAoZnVuY3Rpb24oZmFpbHVyZUluZm8pIHsgcmV0dXJuIFtmYWlsdXJlSW5mb107IH0p
OwotICAgIGdfcmVzdWx0c0RldGFpbHNJdGVyYXRvciA9IG5ldyBiYXNlLkNhbGxiYWNrSXRlcmF0
b3Ioc2hvd1Jlc3VsdHNEZXRhaWwsIGxpc3RPZkFyZ3VtZW50QXJyYXlzKTsKLSAgICBnX3Jlc3Vs
dHNEZXRhaWxzSXRlcmF0b3IuY2FsbE5leHQoKTsKLX0KLQotZnVuY3Rpb24gcm93c0luUmV2aXNp
b25SYW5nZShlYXJsaWVzdFJldmlzaW9uLCBsYXRlc3RSZXZpc2lvbikKLXsKLSAgICB2YXIgZWFy
bGllc3RSZXZpc2lvbiA9IGJhc2UuYXNJbnRlZ2VyKGVhcmxpZXN0UmV2aXNpb24pOwotICAgIHZh
ciBsYXRlc3RSZXZpc2lvbiA9IGJhc2UuYXNJbnRlZ2VyKGxhdGVzdFJldmlzaW9uKTsKLQotICAg
IHZhciByb3dzID0gW107Ci0gICAgJCgnLnJlY2VudC1oaXN0b3J5IHRyJykuZWFjaChmdW5jdGlv
bigpIHsKLSAgICAgICAgdmFyIHJldmlzaW9uID0gcGFyc2VJbnQoJCh0aGlzKS5hdHRyKGNvbmZp
Zy5rUmV2aXNpb25BdHRyKSk7Ci0gICAgICAgIGlmIChlYXJsaWVzdFJldmlzaW9uIDw9IHJldmlz
aW9uICYmIHJldmlzaW9uIDw9IGxhdGVzdFJldmlzaW9uKQotICAgICAgICAgICAgcm93cy5wdXNo
KHRoaXMpOwotICAgIH0pOwotCi0gICAgcmV0dXJuICQocm93cyk7Ci19Ci0KLWZ1bmN0aW9uIHJv
d3NCZWZvcmVSZXZpc2lvbihsYXRlc3RSZXZpc2lvbikKLXsKLSAgICByZXR1cm4gcm93c0luUmV2
aXNpb25SYW5nZSgwLCBsYXRlc3RSZXZpc2lvbikKLX0KLQotZnVuY3Rpb24gc2hvd1JlY2VudENv
bW1pdHMoKQotewotICAgICQoJy5yZWNlbnQtaGlzdG9yeScpLmVtcHR5KCkuYXBwZW5kKHVpLmNo
YW5nZWxvZyhtb2RlbC5zdGF0ZS5yZWNlbnRDb21taXRzKSk7Ci19Ci0KLWZ1bmN0aW9uIHNob3dC
dWlsZGVyUHJvZ3Jlc3MoKQotewotICAgICQuZWFjaChtb2RlbC5zdGF0ZS5yZXN1bHRzQnlCdWls
ZGVyLCBmdW5jdGlvbihidWlsZGVyTmFtZSwgcmVzdWx0c1RyZWUpIHsKLSAgICAgICAgdmFyIGJ1
aWxkZXJJbmRleCA9IE9iamVjdC5rZXlzKGNvbmZpZy5rQnVpbGRlcnMpLmluZGV4T2YoYnVpbGRl
ck5hbWUpOwotICAgICAgICByb3dzQmVmb3JlUmV2aXNpb24ocmVzdWx0c1RyZWUucmV2aXNpb24p
LmVhY2goZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAkKCQodGhpcykuY2hpbGRyZW4oKVtidWls
ZGVySW5kZXhdKS5hZGRDbGFzcygnYnVpbHQnKTsKLSAgICAgICAgfSk7Ci0gICAgfSk7Ci19Ci0K
LWZ1bmN0aW9uIHNob3dVbmV4cGVjdGVkRmFpbHVyZShmYWlsdXJlQW5hbHlzaXMpCi17Ci0gICAg
dmFyIGltcGxpZWRGaXJzdEZhaWxpbmdSZXZpc2lvbiA9IGZhaWx1cmVBbmFseXNpcy5uZXdlc3RQ
YXNzaW5nUmV2aXNpb24gKyAxOwotICAgIHZhciByZWdyZXNzaW9uUm93cyA9IHJvd3NJblJldmlz
aW9uUmFuZ2UoaW1wbGllZEZpcnN0RmFpbGluZ1JldmlzaW9uLCBmYWlsdXJlQW5hbHlzaXMub2xk
ZXN0RmFpbGluZ1JldmlzaW9uKTsKLQotICAgICQoJy5lbnRyeScsIHJlZ3Jlc3Npb25Sb3dzKS5h
ZGRDbGFzcygncG9zc2libGUtcmVncmVzc2lvbicpOwotCi0gICAgdmFyIGZhaWx1cmVTdW1tYXJ5
ID0gdWkuc3VtbWFyaXplRmFpbHVyZShmYWlsdXJlQW5hbHlzaXMpLmF0dHIoY29uZmlnLmtSZXZp
c2lvbkF0dHIsIGltcGxpZWRGaXJzdEZhaWxpbmdSZXZpc2lvbik7Ci0gICAgKHJlZ3Jlc3Npb25S
b3dzLmxlbmd0aCA/IHJlZ3Jlc3Npb25Sb3dzIDogJCgnLnJlY2VudC1oaXN0b3J5IHRyJykpLmxh
c3QoKS5hZnRlcihmYWlsdXJlU3VtbWFyeSk7Ci0KLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGp1
c3QgY29tcHV0ZSB0aGlzIGZvciBmYWlsdXJlU3VtbWFyeSBpbnN0ZWFkIG9mIHJlY29tcHV0aW5n
IHRoZSB3aG9sZSBwYWdlLgotICAgIHNob3dCdWlsZGVyUHJvZ3Jlc3MoKTsKLX0KLQotZnVuY3Rp
b24gc2hvd0ZhaWxpbmdCdWlsZGVyc0luZm9iYXIoYnVpbGRlck5hbWVMaXN0KQotewotICAgIGlm
IChidWlsZGVyTmFtZUxpc3QubGVuZ3RoKQotICAgICAgICBkaXNwbGF5SW5mb2Jhcih1aS5pbmZv
YmFyTWVzc2FnZUZvckNvbXBpbGVFcnJvcnMoYnVpbGRlck5hbWVMaXN0KSwga0J1aWxkRmFpbGVk
SW5mb2JhclR5cGUpOwotICAgIGVsc2UKLSAgICAgICAgaGlkZUluZm9iYXJJZk9mVHlwZShrQnVp
bGRGYWlsZWRJbmZvYmFyVHlwZSk7Ci19Ci0KLWZ1bmN0aW9uIGNoZWNrRm9yTG9jYWxTZXJ2ZXIo
KQotewotICAgIGNoZWNrb3V0LmlzQXZhaWxhYmxlKGZ1bmN0aW9uKGF2YWlsYWJsZSkgewotICAg
ICAgICBpZiAoIWF2YWlsYWJsZSkKLSAgICAgICAgICAgIGRpc3BsYXlPbkJ1dHRlcmJhcignUnVu
ICJ3ZWJraXQtcGF0Y2ggZ2FyZGVuLW8tbWF0aWMiIHRvIGVuYWJsZSByZWJhc2VsaW5lIGZlYXR1
cmVzLicpCi0gICAgfSk7Ci19Ci0KLWZ1bmN0aW9uIHVwZGF0ZSgpCi17Ci0gICAgZGlzcGxheU9u
QnV0dGVyYmFyKCdMb2FkaW5nLi4uJyk7Ci0gICAgYnVpbGRlcnMuYnVpbGRlcnNGYWlsaW5nU3Rl
cFJlcXVyZWRGb3JUZXN0Q292ZXJhZ2Uoc2hvd0ZhaWxpbmdCdWlsZGVyc0luZm9iYXIpOwotICAg
IGJhc2UuY2FsbEluUGFyYWxsZWwoW21vZGVsLnVwZGF0ZVJlY2VudENvbW1pdHMsIG1vZGVsLnVw
ZGF0ZVJlc3VsdHNCeUJ1aWxkZXJdLCBmdW5jdGlvbigpIHsKLSAgICAgICAgc2hvd1JlY2VudENv
bW1pdHMoKTsKLSAgICAgICAgc2hvd0J1aWxkZXJQcm9ncmVzcygpOwotICAgICAgICBtb2RlbC5h
bmFseXplVW5leHBlY3RlZEZhaWx1cmVzKHNob3dVbmV4cGVjdGVkRmFpbHVyZSwgZGlzbWlzc0J1
dHRlcmJhcik7Ci0gICAgICAgIGNoZWNrRm9yTG9jYWxTZXJ2ZXIoKTsKLSAgICB9KTsKLX0KLQot
JCgnLnNob3ctc2VsZWN0ZWQtZmFpbHVyZXMnKS5saXZlKCdjbGljaycsIHNob3dTZWxlY3RlZEZh
aWx1cmVzKTsKLSQoJy5yZWJhc2VsaW5lLXNlbGVjdGVkJykubGl2ZSgnY2xpY2snLCByZWJhc2Vs
aW5lU2VsZWN0ZWQpOwotJCgnLnVwZGF0ZS1leHBlY3RhdGlvbnMtc2VsZWN0ZWQnKS5saXZlKCdj
bGljaycsIHVwZGF0ZUV4cGVjdGF0aW9uc0ZvclNlbGVjdGVkKTsKLSQoJy5yZWZyZXNoJykubGl2
ZSgnY2xpY2snLCB1cGRhdGUpOwotCi0kKCcucmVzdWx0cy1kZXRhaWwgLmFjdGlvbnMgLm5leHQn
KS5saXZlKCdjbGljaycsIG5leHRSZXN1bHRzRGV0YWlsKTsKLSQoJy5yZXN1bHRzLWRldGFpbCAu
YWN0aW9ucyAucHJldmlvdXMnKS5saXZlKCdjbGljaycsIHByZXZpb3VzUmVzdWx0c0RldGFpbCk7
Ci0kKCcucmVzdWx0cy1kZXRhaWwgLmFjdGlvbnMgLnJlYmFzZWxpbmUnKS5saXZlKCdjbGljaycs
IGFkZFRvUmViYXNlbGluZVF1ZXVlKTsKLSQoJy5yZXN1bHRzLWRldGFpbCAuYWN0aW9ucyAudXBk
YXRlLWV4cGVjdGF0aW9uJykubGl2ZSgnY2xpY2snLCBhZGRUb0V4cGVjdGF0aW9uVXBkYXRlUXVl
dWUpOwotJCgnLnJlc3VsdHMtZGV0YWlsIC5hY3Rpb25zIC5kaXNtaXNzJykubGl2ZSgnY2xpY2sn
LCBoaWRlUmVzdWx0c0RldGFpbCk7Ci0KLSQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgewot
ICAgIGdfdXBkYXRlVGltZXJJZCA9IHdpbmRvdy5zZXRJbnRlcnZhbCh1cGRhdGUsIGNvbmZpZy5r
VXBkYXRlRnJlcXVlbmN5KTsKLSAgICB1cGRhdGUoKTsKLX0pOwotCi19KSgpOwpkaWZmIC0tZ2l0
IGEvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGlj
X2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWkuanMgYi9Ub29scy9CdWlsZFNsYXZlU3VwcG9y
dC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0
cy91aS5qcwppbmRleCBiZTExNGFjNzVlYTBhYjEyMzg0NmU0MzUxZmJmYTE5MGQ5N2FlYmVjLi45
YTM2Zjc5NWI3N2I0N2VjM2UyMGVlNzUwY2M4NzY2ZjQyMTcxMjgyIDEwMDY0NAotLS0gYS9Ub29s
cy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9U
ZXN0RmFpbHVyZXMvc2NyaXB0cy91aS5qcworKysgYi9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9i
dWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91
aS5qcwpAQCAtMzksNDkgKzM5LDExIEBAIHVpLmRpc3BsYXlOYW1lRm9yQnVpbGRlciA9IGZ1bmN0
aW9uKGJ1aWxkZXJOYW1lKQogICAgIHJldHVybiBidWlsZGVyTmFtZS5yZXBsYWNlKC9XZWJraXQg
LywgJycpOwogfQogCi1mdW5jdGlvbiBkaXNwbGF5TmFtZUZvclJldmlzaW9uKHJldmlzaW9uTnVt
YmVyKQotewotICAgIHJldHVybiAncicgKyByZXZpc2lvbk51bWJlcjsKLX0KLQogdWkudXJsRm9y
VGVzdCA9IGZ1bmN0aW9uKHRlc3ROYW1lKQogewogICAgIHJldHVybiAnaHR0cDovL3RyYWMud2Vi
a2l0Lm9yZy9icm93c2VyL3RydW5rL0xheW91dFRlc3RzLycgKyB0ZXN0TmFtZTsKIH0KIAotdWku
aW5mb2Jhck1lc3NhZ2VGb3JDb21waWxlRXJyb3JzID0gZnVuY3Rpb24oYnVpbGRlck5hbWVMaXN0
KQotewotICAgIHZhciBibG9jayA9ICQoJzxkaXYgY2xhc3M9ImNvbXBpbGUtZXJyb3JzIj5CdWls
ZCBGYWlsZWQ6PHVsPjwvdWw+PC9kaXY+Jyk7Ci0KLSAgICB2YXIgbGlzdCA9ICQoJ3VsJywgYmxv
Y2spOwotICAgICQuZWFjaChidWlsZGVyTmFtZUxpc3QsIGZ1bmN0aW9uKGluZGV4LCBidWlsZGVy
TmFtZSkgewotICAgICAgICB2YXIgbGlzdEVsZW1lbnQgPSAkKCc8bGk+PGEgdGFyZ2V0PSJfYmxh
bmsiPjwvYT48L2xpPicpOwotICAgICAgICBsaXN0LmFwcGVuZChsaXN0RWxlbWVudCk7Ci0gICAg
ICAgICQoJ2EnLCBsaXN0RWxlbWVudCkuYXR0cignaHJlZicsIHVpLmRpc3BsYXlVUkxGb3JCdWls
ZGVyKGJ1aWxkZXJOYW1lKSkudGV4dCh1aS5kaXNwbGF5TmFtZUZvckJ1aWxkZXIoYnVpbGRlck5h
bWUpKTsKLSAgICB9KTsKLQotICAgIHJldHVybiBibG9jazsKLX07Ci0KLXVpLmZhaWx1cmVEZXRh
aWxzU3RhdHVzID0gZnVuY3Rpb24oZmFpbHVyZUluZm8sIGJ1aWxkZXJOYW1lTGlzdCkKLXsKLSAg
ICB2YXIgZmFpbHVyZVR5cGVzID0gZmFpbHVyZUluZm8uZmFpbHVyZVR5cGVMaXN0LmpvaW4oJyAn
KTsKLQotICAgIHZhciBibG9jayA9ICQoJzxzcGFuPjxzcGFuIGNsYXNzPSJ0ZXN0LW5hbWUiPjwv
c3Bhbj48c3BhbiBjbGFzcz0iYnVpbGRlci1saXN0Ij48L3NwYW4+PC9zcGFuPicpOwotICAgICQo
Jy50ZXN0LW5hbWUnLCBibG9jaykuYWRkQ2xhc3MoZmFpbHVyZVR5cGVzKS50ZXh0KGZhaWx1cmVJ
bmZvLnRlc3ROYW1lKTsKLQotICAgIHZhciBidWlsZGVyTGlzdCA9ICQoJy5idWlsZGVyLWxpc3Qn
LCBibG9jayk7Ci0gICAgJC5lYWNoKGJ1aWxkZXJOYW1lTGlzdCwgZnVuY3Rpb24oaW5kZXgsIGJ1
aWxkZXJOYW1lKSB7Ci0gICAgICAgIHZhciBidWlsZGVyID0gJCgnPHNwYW4gY2xhc3M9ImJ1aWxk
ZXItbmFtZSI+PC9zcGFuPicpCi0gICAgICAgIGJ1aWxkZXIudGV4dChidWlsZGVyTmFtZSk7Ci0g
ICAgICAgIGlmIChidWlsZGVyTmFtZSA9PSBmYWlsdXJlSW5mby5idWlsZGVyTmFtZSkKLSAgICAg
ICAgICAgIGJ1aWxkZXIuYWRkQ2xhc3MoJ3NlbGVjdGVkJyk7Ci0gICAgICAgIGJ1aWxkZXJMaXN0
LmFwcGVuZChidWlsZGVyKTsKLSAgICB9KTsKLQotICAgIHJldHVybiBibG9jazsKLX07Ci0KIHVp
LnJvbGxvdXRSZWFzb25Gb3JUZXN0TmFtZUxpc3QgPSBmdW5jdGlvbih0ZXN0TmFtZUxpc3QpCiB7
CiAgICAgcmV0dXJuICdCcm9rZTpcbicgKyB0ZXN0TmFtZUxpc3QubWFwKGZ1bmN0aW9uKHRlc3RO
YW1lKSB7CkBAIC04OSwxMDEgKzUxLDYgQEAgdWkucm9sbG91dFJlYXNvbkZvclRlc3ROYW1lTGlz
dCA9IGZ1bmN0aW9uKHRlc3ROYW1lTGlzdCkKICAgICB9KS5qb2luKCdcbicpOwogfQogCi1mdW5j
dGlvbiBidWlsZGVyVGFibGVEYXRhQ2VsbHMocmVzdWx0Tm9kZXNCeUJ1aWxkZXIpCi17Ci0gICAg
aWYgKCFyZXN1bHROb2Rlc0J5QnVpbGRlcikKLSAgICAgICAgcmVzdWx0Tm9kZXNCeUJ1aWxkZXIg
PSB7fTsKLQotICAgIHZhciBsaXN0ID0gW107Ci0KLSAgICAkLmVhY2goT2JqZWN0LmtleXMoY29u
ZmlnLmtCdWlsZGVycyksIGZ1bmN0aW9uKGluZGV4LCBidWlsZGVyTmFtZSkgewotICAgICAgICB2
YXIgYmxvY2sgPSAkKCc8dGQgY2xhc3M9ImJ1aWxkZXIiPjwvdGQ+Jyk7Ci0gICAgICAgIGJsb2Nr
LmF0dHIoJ3RpdGxlJywgdWkuZGlzcGxheU5hbWVGb3JCdWlsZGVyKGJ1aWxkZXJOYW1lKSk7Ci0g
ICAgICAgIGJsb2NrLmF0dHIoY29uZmlnLmtCdWlsZGVyTmFtZUF0dHIsIGJ1aWxkZXJOYW1lKTsK
LQotICAgICAgICBpZiAoYnVpbGRlck5hbWUgaW4gcmVzdWx0Tm9kZXNCeUJ1aWxkZXIpIHsKLSAg
ICAgICAgICAgIHZhciB1bmV4cGVjdGVkRmFpbHVyZXMgPSByZXN1bHRzLnVuZXhwZWN0ZWRSZXN1
bHRzKHJlc3VsdE5vZGVzQnlCdWlsZGVyW2J1aWxkZXJOYW1lXSk7Ci0gICAgICAgICAgICB2YXIg
ZmFpbHVyZVR5cGVzID0gdW5leHBlY3RlZEZhaWx1cmVzLmpvaW4oJyAnKTsKLSAgICAgICAgICAg
IGJsb2NrLmF0dHIoY29uZmlnLmtGYWlsdXJlVHlwZXNBdHRyLCBmYWlsdXJlVHlwZXMpOwotICAg
ICAgICB9Ci0KLSAgICAgICAgbGlzdC5wdXNoKGJsb2NrWzBdKQotICAgIH0pOwotCi0gICAgcmV0
dXJuICQobGlzdCk7Ci19Ci0KLXVpLnN1bW1hcml6ZUZhaWx1cmUgPSBmdW5jdGlvbihmYWlsdXJl
QW5hbHlzaXMpCi17Ci0gICAgdmFyIGJsb2NrID0gJCgnPHRyIGNsYXNzPSJyZXN1bHQiPjwvdHI+
Jyk7Ci0gICAgYmxvY2suYXBwZW5kKGJ1aWxkZXJUYWJsZURhdGFDZWxscyhmYWlsdXJlQW5hbHlz
aXMucmVzdWx0Tm9kZXNCeUJ1aWxkZXIpKTsKLSAgICBibG9jay5hcHBlbmQoCi0gICAgICAgICc8
dGQgY2xhc3M9InRlc3QiPicgKwotICAgICAgICAgICc8ZGl2IGNsYXNzPSJ3aGF0Ij48aW5wdXQg
dHlwZT0iY2hlY2tib3giPiA8YSBjbGFzcz0idGVzdC1uYW1lIj48L2E+PC9kaXY+JyArCi0gICAg
ICAgICc8L3RkPjwvdHI+Jyk7Ci0gICAgYmxvY2suYXR0cihjb25maWcua1Rlc3ROYW1lQXR0ciwg
ZmFpbHVyZUFuYWx5c2lzLnRlc3ROYW1lKTsKLQotICAgIHZhciB1bmV4cGVjdGVkUmVzdWx0cyA9
IHJlc3VsdHMuY29sbGVjdFVuZXhwZWN0ZWRSZXN1bHRzKGZhaWx1cmVBbmFseXNpcy5yZXN1bHRO
b2Rlc0J5QnVpbGRlcik7Ci0gICAgdmFyIGZhaWx1cmVUeXBlcyA9IHVuZXhwZWN0ZWRSZXN1bHRz
LmpvaW4oJyAnKTsKLSAgICAkKCcudGVzdC1uYW1lJywgYmxvY2spLnRleHQoZmFpbHVyZUFuYWx5
c2lzLnRlc3ROYW1lKS5hdHRyKCdocmVmJywgdWkudXJsRm9yVGVzdChmYWlsdXJlQW5hbHlzaXMu
dGVzdE5hbWUpKS5hZGRDbGFzcyhmYWlsdXJlVHlwZXMpOwotCi0gICAgcmV0dXJuIGJsb2NrOwot
fTsKLQotdWkuZmFpbHVyZUluZm9MaXN0Rm9yU3VtbWFyeSA9IGZ1bmN0aW9uKHRlc3RTdW1tYXJ5
KQotewotICAgIHZhciBmYWlsdXJlSW5mb0xpc3QgPSBbXTsKLQotICAgIHZhciB0ZXN0TmFtZSA9
IHRlc3RTdW1tYXJ5LmF0dHIoY29uZmlnLmtUZXN0TmFtZUF0dHIpOwotICAgICQoJy5idWlsZGVy
JywgdGVzdFN1bW1hcnkpLmVhY2goZnVuY3Rpb24oKSB7Ci0gICAgICAgIHZhciBmYWlsdXJlVHlw
ZXMgPSAkKHRoaXMpLmF0dHIoY29uZmlnLmtGYWlsdXJlVHlwZXNBdHRyKTsKLSAgICAgICAgaWYg
KCFmYWlsdXJlVHlwZXMpCi0gICAgICAgICAgICByZXR1cm4KLSAgICAgICAgdmFyIGZhaWx1cmVU
eXBlTGlzdCA9IHJlc3VsdHMuZmFpbHVyZVR5cGVMaXN0KGZhaWx1cmVUeXBlcyk7Ci0gICAgICAg
IHZhciBidWlsZGVyTmFtZSA9ICQodGhpcykuYXR0cihjb25maWcua0J1aWxkZXJOYW1lQXR0cik7
Ci0gICAgICAgIGZhaWx1cmVJbmZvTGlzdC5wdXNoKHsKLSAgICAgICAgICAgICd0ZXN0TmFtZSc6
IHRlc3ROYW1lLAotICAgICAgICAgICAgJ2J1aWxkZXJOYW1lJzogYnVpbGRlck5hbWUsCi0gICAg
ICAgICAgICAnZmFpbHVyZVR5cGVMaXN0JzogZmFpbHVyZVR5cGVMaXN0LAotICAgICAgICB9KTsK
LSAgICB9KTsKLQotICAgIHJldHVybiBmYWlsdXJlSW5mb0xpc3Q7Ci19OwotCi11aS5jb21taXRF
bnRyeSA9IGZ1bmN0aW9uKGNvbW1pdERhdGEpCi17Ci0gICAgdmFyIGVudHJ5ID0gJCgnPHRkIGNs
YXNzPSJlbnRyeSI+PC90ZD4nKTsKLQotICAgIGVudHJ5LmFwcGVuZCgnPGRpdiBjbGFzcz0iZGV0
YWlscyI+PGEgdGFyZ2V0PSJfYmxhbmsiIGNsYXNzPSJyZXZpc2lvbiI+PC9hPiA8c3BhbiBjbGFz
cz0ic3VtbWFyeSI+PC9zcGFuPiA8c3BhbiBjbGFzcz0iYXV0aG9yIj48L3NwYW4+IDxzcGFuIGNs
YXNzPSJyZXZpZXdlci1jb250YWluZXIiPihSZXZpZXdlcjogPHNwYW4gY2xhc3M9InJldmlld2Vy
Ij48L3NwYW4+KTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJyZWdyZXNzaW9ucyI+PC9kaXY+Jyk7
Ci0gICAgJCgnLnN1bW1hcnknLCBlbnRyeSkudGV4dChjb21taXREYXRhLnN1bW1hcnkpOwotICAg
ICQoJy5yZXZpc2lvbicsIGVudHJ5KS5hdHRyKCdocmVmJywgdHJhYy5jaGFuZ2VzZXRVUkwoY29t
bWl0RGF0YS5yZXZpc2lvbikpLnRleHQoZGlzcGxheU5hbWVGb3JSZXZpc2lvbihjb21taXREYXRh
LnJldmlzaW9uKSk7Ci0gICAgJCgnLmF1dGhvcicsIGVudHJ5KS50ZXh0KGNvbW1pdERhdGEuYXV0
aG9yKTsKLSAgICBpZiAoY29tbWl0RGF0YS5yZXZpZXdlcikKLSAgICAgICAgJCgnLnJldmlld2Vy
JywgZW50cnkpLnRleHQoY29tbWl0RGF0YS5yZXZpZXdlcik7Ci0gICAgZWxzZQotICAgICAgICAk
KCcucmV2aWV3ZXItY29udGFpbmVyJywgZW50cnkpLmRldGFjaCgpOwotICAgIGlmIChjb21taXRE
YXRhLndhc1JldmVydGVkKQotICAgICAgICBlbnRyeS5hZGRDbGFzcygncmV2ZXJ0ZWQnKTsKLQot
ICAgIHJldHVybiBlbnRyeTsKLX0KLQotdWkuY2hhbmdlbG9nID0gZnVuY3Rpb24oY29tbWl0RGF0
YUxpc3QpCi17Ci0gICAgdmFyIGJsb2NrID0gJCgnPHRhYmxlIGNsYXNzPSJjaGFuZ2Vsb2ciPjx0
Ym9keT48L3Rib2R5PjwvdGFibGU+Jyk7Ci0KLSAgICAkLmVhY2goY29tbWl0RGF0YUxpc3QsIGZ1
bmN0aW9uKGluZGV4LCBjb21taXREYXRhKSB7Ci0gICAgICAgIHZhciByb3cgPSAkKCc8dHIgY2xh
c3M9InJldmlzaW9uIj48L3RyPicpOwotICAgICAgICByb3cuYXBwZW5kKGJ1aWxkZXJUYWJsZURh
dGFDZWxscygpKTsKLSAgICAgICAgcm93LmF0dHIoY29uZmlnLmtSZXZpc2lvbkF0dHIsIGNvbW1p
dERhdGEucmV2aXNpb24pOwotICAgICAgICByb3cuYXBwZW5kKHVpLmNvbW1pdEVudHJ5KGNvbW1p
dERhdGEpKTsKLSAgICAgICAgJCgndGJvZHknLCBibG9jaykuYXBwZW5kKHJvdyk7Ci0gICAgfSk7
Ci0KLSAgICByZXR1cm4gYmxvY2s7Ci19OwotCiBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHsKICAg
ICBBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwo
InRpbWUucmVsYXRpdmUiKSwgZnVuY3Rpb24odGltZSkgewogICAgICAgICB0aW1lLnVwZGF0ZSAm
JiB0aW1lLnVwZGF0ZSgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVp
bGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWlf
dW5pdHRlc3RzLmpzIGIvVG9vbHMvQnVpbGRTbGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1j
b25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1cmVzL3NjcmlwdHMvdWlfdW5pdHRlc3RzLmpzCmlu
ZGV4IDExNjc0Njg2N2RkMWY4N2ZmOGFmYmM3NjI3ZDA0ZTI0Mzc5ZDU3OGUuLjA1OTU0ZjI1MTMx
ODU4N2Y4MTA1YWFiMjljYjZjNGU1NjBjYWEyMWEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0J1aWxkU2xh
dmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJl
cy9zY3JpcHRzL3VpX3VuaXR0ZXN0cy5qcworKysgYi9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9i
dWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91
aV91bml0dGVzdHMuanMKQEAgLTQ2LDM4ICs0Niw2IEBAIHZhciBrRXhhbXBsZVJlc3VsdHNCeVRl
c3QgPSB7CiAgICAgfQogfQogCi10ZXN0KCJpbmZvYmFyTWVzc2FnZUZvckNvbXBpbGVFcnJvcnMi
LCAxLCBmdW5jdGlvbigpIHsKLSAgICB2YXIgbWVzc2FnZSA9IHVpLmluZm9iYXJNZXNzYWdlRm9y
Q29tcGlsZUVycm9ycyhbJ01vY2sgQnVpbGRlcicsICdBbm90aGVyIEJ1aWxkZXInXSk7Ci0gICAg
bWVzc2FnZS53cmFwKCc8d3JhcHBlcj48L3dyYXBwZXI+Jyk7Ci0gICAgZXF1YWwobWVzc2FnZS5w
YXJlbnQoKS5odG1sKCksCi0gICAgICAgICc8ZGl2IGNsYXNzPSJjb21waWxlLWVycm9ycyI+QnVp
bGQgRmFpbGVkOjx1bD4nICsKLSAgICAgICAgICAgICc8bGk+PGEgdGFyZ2V0PSJfYmxhbmsiIGhy
ZWY9Imh0dHA6Ly9idWlsZC5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS53ZWJraXQvd2F0ZXJmYWxs
P2J1aWxkZXI9TW9jaytCdWlsZGVyIj5Nb2NrIEJ1aWxkZXI8L2E+PC9saT4nICsKLSAgICAgICAg
ICAgICc8bGk+PGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly9idWlsZC5jaHJvbWl1bS5v
cmcvcC9jaHJvbWl1bS53ZWJraXQvd2F0ZXJmYWxsP2J1aWxkZXI9QW5vdGhlcitCdWlsZGVyIj5B
bm90aGVyIEJ1aWxkZXI8L2E+PC9saT4nICsKLSAgICAgICAgJzwvdWw+PC9kaXY+Jyk7Ci19KTsK
LQotdGVzdCgicm9sbG91dFJlYXNvbkZvclRlc3ROYW1lTGlzdCIsIDIsIGZ1bmN0aW9uKCkgewot
ICAgIGVxdWFsKHVpLnJvbGxvdXRSZWFzb25Gb3JUZXN0TmFtZUxpc3QoWyJwYXRoL3RvL3Rlc3Qu
aHRtbCJdKSwgIkJyb2tlOlxuKiBwYXRoL3RvL3Rlc3QuaHRtbCIpOwotICAgIGVxdWFsKHVpLnJv
bGxvdXRSZWFzb25Gb3JUZXN0TmFtZUxpc3QoWyJwYXRoL3RvL3Rlc3QuaHRtbCIsICJhbm90aGVy
L3Rlc3QuaHRtbCJdKSwgIkJyb2tlOlxuKiBwYXRoL3RvL3Rlc3QuaHRtbFxuKiBhbm90aGVyL3Rl
c3QuaHRtbCIpOwotfSk7Ci0KLXRlc3QoImZhaWx1cmVEZXRhaWxzU3RhdHVzIiwgMSwgZnVuY3Rp
b24oKSB7Ci0gICAgdmFyIHN0YXR1cyA9IHVpLmZhaWx1cmVEZXRhaWxzU3RhdHVzKHsKLSAgICAg
ICAgJ2J1aWxkZXJOYW1lJzogJ01vY2sgQnVpbGRlcicsCi0gICAgICAgICd0ZXN0TmFtZSc6ICd1
c2Vyc2NyaXB0cy9hbm90aGVyLXRlc3QuaHRtbCcsCi0gICAgICAgICdmYWlsdXJlVHlwZUxpc3Qn
OiBbJ1RFWFQnXSwKLSAgICB9LCBbJ01vY2sgQnVpbGRlcicsICdBbm90aGVyIEJ1aWxkZXInXSk7
Ci0gICAgc3RhdHVzLndyYXAoJzx3cmFwcGVyPjwvd3JhcHBlcj4nKTsKLSAgICBlcXVhbChzdGF0
dXMucGFyZW50KCkuaHRtbCgpLAotICAgICAgICAnPHNwYW4+JyArCi0gICAgICAgICAgICAnPHNw
YW4gY2xhc3M9InRlc3QtbmFtZSBURVhUIj51c2Vyc2NyaXB0cy9hbm90aGVyLXRlc3QuaHRtbDwv
c3Bhbj4nICsKLSAgICAgICAgICAgICc8c3BhbiBjbGFzcz0iYnVpbGRlci1saXN0Ij4nICsKLSAg
ICAgICAgICAgICAgICAnPHNwYW4gY2xhc3M9ImJ1aWxkZXItbmFtZSBzZWxlY3RlZCI+TW9jayBC
dWlsZGVyPC9zcGFuPicgKwotICAgICAgICAgICAgICAgICc8c3BhbiBjbGFzcz0iYnVpbGRlci1u
YW1lIj5Bbm90aGVyIEJ1aWxkZXI8L3NwYW4+JyArCi0gICAgICAgICAgICAnPC9zcGFuPicgKwot
ICAgICAgICAnPC9zcGFuPicpOwotfSk7Ci0KIHRlc3QoInJlc3VsdHMuUmVzdWx0c0dyaWQiLCAx
LCBmdW5jdGlvbigpIHsKICAgICB2YXIgZ3JpZCA9IG5ldyB1aS5yZXN1bHRzLlJlc3VsdHNHcmlk
KCkKICAgICBncmlkLmFkZFJlc3VsdHMoWwpAQCAtMTMzLDQwICsxMDEsNiBAQCB0ZXN0KCJyZXN1
bHRzLlJlc3VsdHNHcmlkIChlbXB0eSkiLCAxLCBmdW5jdGlvbigpIHsKICAgICBlcXVhbChncmlk
LmlubmVySFRNTCwgJycpOwogfSk7CiAKLXRlc3QoInN1bW1hcml6ZUZhaWx1cmUiLCAxLCBmdW5j
dGlvbigpIHsKLSAgICB2YXIgZmFpbHVyZUFuYWx5c2lzID0gewotICAgICAgICAidGVzdE5hbWUi
OiAic3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVtZW50LXN2Z2RvbS1iYXNl
RnJlcXVlbmN5LXByb3AuaHRtbCIsCi0gICAgICAgICJyZXN1bHROb2Rlc0J5QnVpbGRlciI6IHsK
LSAgICAgICAgICAgICJXZWJraXQgTWFjMTAuNSAoQ0cpIjogewotICAgICAgICAgICAgICAgICJl
eHBlY3RlZCI6ICJJTUFHRSIsCi0gICAgICAgICAgICAgICAgImFjdHVhbCI6ICJQQVNTIgotICAg
ICAgICAgICAgfSwKLSAgICAgICAgICAgICJXZWJraXQgTWFjMTAuNSAoQ0cpKGRiZykoMikiOiB7
Ci0gICAgICAgICAgICAgICAgImV4cGVjdGVkIjogIklNQUdFIiwKLSAgICAgICAgICAgICAgICAi
YWN0dWFsIjoiUEFTUyIKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIHZh
ciBmYWlsdXJlU3VtbWFyeSA9IHVpLnN1bW1hcml6ZUZhaWx1cmUoZmFpbHVyZUFuYWx5c2lzKTsK
LSAgICB2YXIgZmFpbHVyZUluZm9MaXN0ID0gdWkuZmFpbHVyZUluZm9MaXN0Rm9yU3VtbWFyeShm
YWlsdXJlU3VtbWFyeSk7Ci0KLSAgICBkZWVwRXF1YWwoZmFpbHVyZUluZm9MaXN0LCBbewotICAg
ICAgICAidGVzdE5hbWUiOiAic3ZnL2R5bmFtaWMtdXBkYXRlcy9TVkdGRVR1cmJ1bGVuY2VFbGVt
ZW50LXN2Z2RvbS1iYXNlRnJlcXVlbmN5LXByb3AuaHRtbCIsCi0gICAgICAgICJidWlsZGVyTmFt
ZSI6ICJXZWJraXQgTWFjMTAuNSAoQ0cpIiwKLSAgICAgICAgImZhaWx1cmVUeXBlTGlzdCI6IFsK
LSAgICAgICAgICAgICJQQVNTIgotICAgICAgICBdCi0gICAgICB9LCB7Ci0gICAgICAgICJ0ZXN0
TmFtZSI6ICJzdmcvZHluYW1pYy11cGRhdGVzL1NWR0ZFVHVyYnVsZW5jZUVsZW1lbnQtc3ZnZG9t
LWJhc2VGcmVxdWVuY3ktcHJvcC5odG1sIiwKLSAgICAgICAgImJ1aWxkZXJOYW1lIjogIldlYmtp
dCBNYWMxMC41IChDRykoZGJnKSgyKSIsCi0gICAgICAgICJmYWlsdXJlVHlwZUxpc3QiOiBbCi0g
ICAgICAgICAgICAiUEFTUyIKLSAgICAgICAgXQotICAgICAgfQotICAgIF0pOwotfSk7Ci0KIHRl
c3QoInRpbWUiLCA2LCBmdW5jdGlvbigpIHsKICAgICB2YXIgdGltZSA9IG5ldyB1aS5SZWxhdGl2
ZVRpbWUoKTsKICAgICBlcXVhbCh0aW1lLnRhZ05hbWUsICdUSU1FJyk7CmRpZmYgLS1naXQgYS9U
b29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRt
bC9UZXN0RmFpbHVyZXMvc2NyaXB0cy91bmV4cGVjdGVkLXBhc3Nlcy5qcyBiL1Rvb2xzL0J1aWxk
U2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWls
dXJlcy9zY3JpcHRzL3VuZXhwZWN0ZWQtcGFzc2VzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwNmU4ZjJlNzZhNjc0NTM1MjRjZTUwMWViNjU1ZDcyODAwYWM2MjU5Li4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL0J1aWxkU2xhdmVT
dXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9z
Y3JpcHRzL3VuZXhwZWN0ZWQtcGFzc2VzLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNjMgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi0oZnVuY3Rpb24oKSB7Ci0KLWZ1bmN0aW9uIHNlbGVjdGVkU3VjY2Vz
c2VzKCkKLXsKLSAgICB2YXIgZmFpbHVyZUluZm9MaXN0ID0gW107Ci0KLSAgICAkKCcudGVzdCBp
bnB1dDpjaGVja2JveCcpLmVhY2goZnVuY3Rpb24oKSB7Ci0gICAgICAgIGlmICghdGhpcy5jaGVj
a2VkKQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBmYWlsdXJlSW5mb0xpc3QgPSBmYWls
dXJlSW5mb0xpc3QuY29uY2F0KHVpLmZhaWx1cmVJbmZvTGlzdEZvclN1bW1hcnkoJCh0aGlzKS5w
YXJlbnRzKCcucmVzdWx0JykpKTsKLSAgICB9KTsKLQotICAgIHJldHVybiBmYWlsdXJlSW5mb0xp
c3Q7Ci19Ci0KLWZ1bmN0aW9uIHVwZGF0ZUV4cGVjdGF0aW9uc0ZvclNlbGVjdGVkKCkKLXsKLSAg
ICBjaGVja291dC51cGRhdGVFeHBlY3RhdGlvbnMoc2VsZWN0ZWRTdWNjZXNzZXMoKSwgJC5ub29w
KTsKLX0KLQotZnVuY3Rpb24gc2hvd1VuZXhwZWN0ZWRTdWNjZXNzKHN1Y2Nlc3NBbmFseXNpcykK
LXsKLSAgICAvLyBGSVhNRTogUmVuYW1lIHN1bW1hcml6ZUZhaWx1cmUgdG8gbWFrZSBpdCBhcHBy
b3ByaWF0ZSB0byB1c2UgaGVyZS4KLSAgICAkKCcucmVjZW50LWhpc3RvcnkgdGFibGUnKS5hcHBl
bmQodWkuc3VtbWFyaXplRmFpbHVyZShzdWNjZXNzQW5hbHlzaXMpKTsKLX0KLQotZnVuY3Rpb24g
dXBkYXRlKCkKLXsKLSAgICBtb2RlbC51cGRhdGVSZXN1bHRzQnlCdWlsZGVyKGZ1bmN0aW9uKCkg
ewotICAgICAgICBtb2RlbC5hbmFseXplVW5leHBlY3RlZFN1Y2Nlc3NlcyhzaG93VW5leHBlY3Rl
ZFN1Y2Nlc3MpOwotICAgIH0pOwotfQotCi0kKCcudXBkYXRlLWV4cGVjdGF0aW9ucy1zZWxlY3Rl
ZCcpLmxpdmUoJ2NsaWNrJywgdXBkYXRlRXhwZWN0YXRpb25zRm9yU2VsZWN0ZWQpOwotCi0kKGRv
Y3VtZW50KS5yZWFkeSh1cGRhdGUpOwotCi19KSgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQnVpbGRT
bGF2ZVN1cHBvcnQvYnVpbGQud2Via2l0Lm9yZy1jb25maWcvcHVibGljX2h0bWwvVGVzdEZhaWx1
cmVzL3VuZXhwZWN0ZWQtcGFzc2VzLmh0bWwgYi9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWls
ZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvdW5leHBlY3RlZC1w
YXNzZXMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGE1NTRmNmIxY2Y2ZGU1
N2Y4OTM5NDZiZjRmMzljNDA2ZjIxY2VjZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Ub29scy9CdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3Jn
LWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvdW5leHBlY3RlZC1wYXNzZXMuaHRtbAor
KysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPCEtLQotQ29w
eXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0KLVJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLTIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCi0gICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi1BTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKLVRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKLVBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKLVNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLUNPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
Ci1BUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCi1USEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0tLT4KLTxo
dG1sPgotPGhlYWQ+Ci08dGl0bGU+VW5leHBlY3RlZCBQYXNzZXM8L3RpdGxlPgotPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiBocmVmPSJzdHlsZXMvbWFpbi5jc3MiPgotPC9oZWFkPgotPGJvZHk+Ci08
ZGl2IGNsYXNzPSJhY3Rpb25zIj4KLSAgICA8YnV0dG9uIGNsYXNzPSJ1cGRhdGUtZXhwZWN0YXRp
b25zLXNlbGVjdGVkIj5NYXJrIFNlbGVjdGVkIGFzIEV4cGVjdGVkPC9idXR0b24+Ci08L2Rpdj4K
LTxkaXYgY2xhc3M9InJlY2VudC1oaXN0b3J5Ij48dGFibGUgY2xhc3M9ImNoYW5nZWxvZyI+PC90
YWJsZT48L2Rpdj4KLTxzY3JpcHQgc3JjPSJodHRwczovL2FqYXguZ29vZ2xlYXBpcy5jb20vYWph
eC9saWJzL2pxdWVyeS8xLjYuMi9qcXVlcnkubWluLmpzIj48L3NjcmlwdD4gCi08c2NyaXB0IHNy
Yz0ic2NyaXB0cy9jb25maWcuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9InNjcmlwdHMvYmFz
ZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0cy9uZXQuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9InNjcmlwdHMvVHJhYy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2Ny
aXB0cy9CdWd6aWxsYS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0cy9idWlsZGVy
cy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0cy9jaGVja291dC5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0ic2NyaXB0cy9yZXN1bHRzLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQg
c3JjPSJzY3JpcHRzL3VpLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHRzL21vZGVs
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJzY3JpcHRzL3VuZXhwZWN0ZWQtcGFzc2VzLmpz
Ij48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxv
ZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBlOTcxNDA2NjJiMGU0MmY2Yjk2NGI2MThjYjljYTFk
MWQyOWQwMWUwLi5kMjc1NmFhZDRiZmFjNDM3YzhkZWY5OTA5YjM4NGUxOTgyOTcyNTVlIDEwMDY0
NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MjAgQEAKKzIwMTEtMDgtMzAgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAg
ICAgICBSZW1vdmUgb2xkLXN0eWxlIFVJIGZyb20gZ2FyZGVuLW8tbWF0aWMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3MjU3CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBjb2RlIGlzIG5vd2hlcmUg
bmVhciBhcyBhd2Vzb21lIGFzIHRoZSBuZXcgaG90bmVzcy4gIExldCdzIHJlbW92ZQorICAgICAg
ICBpdCBzbyBpdCBkb2Vzbid0IHdlaWdoIHVzIGRvd24uCisKKyAgICAgICAgKiBCdWlsZFNsYXZl
U3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMv
Z2FyZGVuLW8tbWF0aWMuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBCdWlsZFNsYXZlU3VwcG9y
dC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0RmFpbHVyZXMvc2NyaXB0
cy9tYWluLmpzOiBSZW1vdmVkLgorICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndl
YmtpdC5vcmctY29uZmlnL3B1YmxpY19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpLmpzOgor
ICAgICAgICAqIEJ1aWxkU2xhdmVTdXBwb3J0L2J1aWxkLndlYmtpdC5vcmctY29uZmlnL3B1Ymxp
Y19odG1sL1Rlc3RGYWlsdXJlcy9zY3JpcHRzL3VpX3VuaXR0ZXN0cy5qczoKKyAgICAgICAgKiBC
dWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9UZXN0
RmFpbHVyZXMvc2NyaXB0cy91bmV4cGVjdGVkLXBhc3Nlcy5qczogUmVtb3ZlZC4KKyAgICAgICAg
KiBCdWlsZFNsYXZlU3VwcG9ydC9idWlsZC53ZWJraXQub3JnLWNvbmZpZy9wdWJsaWNfaHRtbC9U
ZXN0RmFpbHVyZXMvdW5leHBlY3RlZC1wYXNzZXMuaHRtbDogUmVtb3ZlZC4KKwogMjAxMS0wOC0z
MCAgQ2FpbyBNYXJjZWxvIGRlIE9saXZlaXJhIEZpbGhvICA8Y2Fpby5vbGl2ZWlyYUBvcGVuYm9z
c2Eub3JnPgogCiAgICAgICAgIEVtaXQgbGFzdCBwcm9ncmVzcyBub3RpZmljYXRpb24gYmVmb3Jl
IGNhbGxpbmcgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>