<?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>160209</bug_id>
          
          <creation_ts>2016-07-26 13:41:51 -0700</creation_ts>
          <short_desc>Remove the tests for legacy custom elements API</short_desc>
          <delta_ts>2016-07-26 14:00:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>154907</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1214643</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2016-07-26 13:41:51 -0700</bug_when>
    <thetext>Remove the tests for legacy custom elements API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214644</commentid>
    <comment_count>1</comment_count>
      <attachid>284624</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2016-07-26 13:42:34 -0700</bug_when>
    <thetext>Created attachment 284624
Removed tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214646</commentid>
    <comment_count>2</comment_count>
      <attachid>284626</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2016-07-26 13:45:58 -0700</bug_when>
    <thetext>Created attachment 284626
Removed entries from TestExpectations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214649</commentid>
    <comment_count>3</comment_count>
      <attachid>284626</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-07-26 13:48:14 -0700</bug_when>
    <thetext>Comment on attachment 284626
Removed entries from TestExpectations

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214655</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2016-07-26 14:00:47 -0700</bug_when>
    <thetext>Committed r203735: &lt;http://trac.webkit.org/changeset/203735&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284624</attachid>
            <date>2016-07-26 13:42:34 -0700</date>
            <delta_ts>2016-07-26 13:45:55 -0700</delta_ts>
            <desc>Removed tests</desc>
            <filename>bug-160209-20160726134125.patch</filename>
            <type>text/plain</type>
            <size>102152</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDQyIEBACisyMDE2LTA3LTI2ICBSeW9zdWtlIE5pd2EgIDxy
bml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSB0aGUgdGVzdHMgZm9yIGxlZ2FjeSBj
dXN0b20gZWxlbWVudHMgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNjAyMDkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBSZW1vdmVkIHRoZSB0ZXN0cyBmb3IgbGVnYWN5IGN1c3RvbSBlbGVtZW50cyB2
MCBBUEkuIFRoZSB0ZXN0cyBmb3IgdGhlIG5ldyB2MSBBUEkgaXMgYXQgZmFzdC9jdXN0b20tZWxl
bWVudHMuCisKKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b206IFJlbW92ZWQuCisgICAgICAgICog
ZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLWJhc2ljLWV4cGVjdGVkLnR4dDogUmVt
b3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItYmFzaWMu
aHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0
ZXItbmFtZXNwYWNlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9j
dXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItbmFtZXNwYWNlLmh0bWw6IFJlbW92ZWQuCisgICAgICAg
ICogZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1udWxsLWNvbnN0
cnVjdG9yLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20v
ZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LW51bGwtY29uc3RydWN0b3IuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50
LXJldHVybmluZy1mYWtlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJl
ZW50cmFudC10aHJvd2luZy1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAg
ICAgICogZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC10aHJvd2lu
Zy1jb25zdHJ1Y3Rvci5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9k
b2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgor
ICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lv
bnMuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJl
YWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJzaW9uLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBmYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJz
aW9uLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1y
ZWFkeS1jcmVhdGVFbGVtZW50LXJlZW50cmFuY3ktZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWVu
dHJhbmN5Lmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNs
ZS1yZWFkeS1jcmVhdGlvbi1hcGktZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGZh
c3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRpb24tYXBpLmh0bWw6IFJlbW92ZWQu
CisgICAgICAgICogZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhUTUwtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUt
cmVhZHktaW5uZXJIVE1MLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9kb20vY3VzdG9t
L2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItb25seS1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAg
ICAgICAqIGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLW9ubHkuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNl
ci1zY3JpcHQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvZG9tL2N1c3Rv
bS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNjcmlwdC5odG1sOiBSZW1vdmVkLgorICAgICAgICAq
IGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUtZXhwZWN0ZWQudHh0OiBSZW1v
dmVkLgorICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUuaHRt
bDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vcmVzb3VyY2VzOiBSZW1vdmVk
LgorICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9yZXNvdXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXIt
ZnV6ei5qczogUmVtb3ZlZC4KKwogMjAxNi0wNy0yNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBh
cHBsZS5jb20+CiAKICAgICAgICAgW0ZldGNoIEFQSV0gQWRkIHN1cHBvcnQgZm9yIGZldGNoIG1v
ZGUsIGluIHBhcnRpY3VsYXIgY29ycwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9t
L2RvY3VtZW50LXJlZ2lzdGVyLWJhc2ljLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItYmFzaWMtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9j
dW1lbnQtcmVnaXN0ZXItYmFzaWMtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsNDkg
KzAsMCBAQAotVGVzdGluZyBkb2N1bWVudC5yZWdpc3RlcigpIGJhc2ljIGJlaGF2aW9ycy4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIoJ2Zv
bycsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpIHRocmV3IGV4Y2VwdGlvbiBJbnZhbGlkQ2hh
cmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24gNSk6IFRoZSBzdHJpbmcgY29udGFpbnMgaW52YWxp
ZCBjaGFyYWN0ZXJzLi4KLVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIoJ3hmb28nLCBjcmVhdGVSZWdp
c3RlclBhcmFtdGVycygpKSB0aHJldyBleGNlcHRpb24gSW52YWxpZENoYXJhY3RlckVycm9yIChE
T00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVycy4u
Ci1QQVNTIGRvY3VtZW50LnJlZ2lzdGVyKCdtaXNzaW5nLWdseXBoJywgY3JlYXRlUmVnaXN0ZXJQ
YXJhbXRlcnMoKSkgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4
Y2VwdGlvbiA1KTogVGhlIHN0cmluZyBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcnMuLgotUEFT
UyB0eXBlb2YgZm9vQ29uc3RydWN0b3IgaXMgJ2Z1bmN0aW9uJwotUEFTUyBmb29Db25zdHJ1Y3Rv
ci5wcm90b3R5cGUuX19wcm90b19fIGlzIEhUTUxFbGVtZW50LnByb3RvdHlwZQotUEFTUyBmb29D
b25zdHJ1Y3Rvci5wcm90b3R5cGUudGhpc0lzUHJvdG90eXBlIGlzIHRydWUKLVBBU1MgZG9jdW1l
bnQucmVnaXN0ZXIoJ3gtZm9vJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkgdGhyZXcgZXhj
ZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBp
cyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4KLVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIoJ1gtRk9PJywg
Y3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRTdGF0ZUVy
cm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRl
Li4KLVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFkLWEnLCB7IHByb3RvdHlwZTogSFRNTEVs
ZW1lbnQucHJvdG90eXBlIH0pIHRocmV3IGV4Y2VwdGlvbiBJbnZhbGlkU3RhdGVFcnJvciAoRE9N
IEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4uCi1QQVNT
IGRvY3VtZW50LnJlZ2lzdGVyKCd4LWJhZC1iJywgeyBwcm90b3R5cGU6IHt9IH0pIHRocmV3IGV4
Y2VwdGlvbiBJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3Qg
aXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4uCi1QQVNTIGRvY3VtZW50LnJlZ2lzdGVyKCd4LWJhZC1j
JywgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoRG9jdW1lbnQucHJvdG90eXBlKSB9KSB0aHJl
dyBleGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNlcHRpb24gMTEpOiBUaGUgb2Jq
ZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLgotUEFTUyBmb29Db25zdHJ1Y3RvcigpIHRocmV3
IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IERPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNh
bGxlZCBhcyBhIGZ1bmN0aW9uLi4KLVBBU1MgY3JlYXRlZEZvby5fX3Byb3RvX18gaXMgZm9vQ29u
c3RydWN0b3IucHJvdG90eXBlCi1QQVNTIGNyZWF0ZWRGb28uY29uc3RydWN0b3IgaXMgZm9vQ29u
c3RydWN0b3IKLVBBU1MgY3JlYXRlZEZvby50YWdOYW1lIGlzICdYLUZPTycKLVBBU1MgY3JlYXRl
ZEZvby50ZXh0Q29udGVudCBpcyAnSGVsbG8nCi1QQVNTIGNyZWF0ZWRGb28ubGFzdENoaWxkIGlz
IGNoaWxkRGl2Ci1QQVNTIHBhcnNlZEZvby5fX3Byb3RvX18gaXMgZm9vQ29uc3RydWN0b3IucHJv
dG90eXBlCi1QQVNTIHBhcnNlZEZvby50YWdOYW1lIGlzICdYLUZPTycKLVBBU1MgcGFyc2VkRm9v
LnNvbWVQcm9wZXJ0eSBpcyBjb250YWluZXIuZmlyc3RDaGlsZC5zb21lUHJvcGVydHkKLVBBU1Mg
YmFyQ29uc3RydWN0b3IgIT09IGZvb0NvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgY3JlYXRlZEJh
ci50YWdOYW1lIGlzICdYLUJBUicKLVBBU1MgY3JlYXRlZEJhei50YWdOYW1lIGlzICdYLUJBWicK
LVBBU1MgY3JlYXRlZEJhei50aGlzSXNQcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBjcmVhdGVkQmF6
LnRoaXNJc0Fsc29Qcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBjcmVhdGVkVXBwZXJCYXIuY29uc3Ry
dWN0b3IgaXMgYmFyQ29uc3RydWN0b3IKLVBBU1MgY3JlYXRlZFVwcGVyQmFyLnRhZ05hbWUgaXMg
J1gtQkFSJwotUEFTUyBjcmVhdGVkTWl4ZWRCYXIuY29uc3RydWN0b3IgaXMgYmFyQ29uc3RydWN0
b3IKLVBBU1MgY3JlYXRlZE1peGVkQmFyLnRhZ05hbWUgaXMgJ1gtQkFSJwotUEFTUyBjb250YWlu
ZXIuZmlyc3RDaGlsZC5jb25zdHJ1Y3RvciBpcyBiYXJDb25zdHJ1Y3RvcgotUEFTUyBjb250YWlu
ZXIuZmlyc3RDaGlsZC50YWdOYW1lIGlzICdYLUJBUicKLVBBU1MgY29udGFpbmVyLmxhc3RDaGls
ZC5jb25zdHJ1Y3RvciBpcyBiYXJDb25zdHJ1Y3RvcgotUEFTUyBjb250YWluZXIubGFzdENoaWxk
LnRhZ05hbWUgaXMgJ1gtQkFSJwotUEFTUyAobmV3IChkb2N1bWVudC5yZWdpc3RlcigneS1iYXIn
LCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSkoKSkudGFnTmFtZSBpcyAnWS1CQVInCi1QQVNT
IChuZXcgKGRvY3VtZW50LnJlZ2lzdGVyKCd5ei1iYXInLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVy
cygpKSkoKSkudGFnTmFtZSBpcyAnWVotQkFSJwotUEFTUyAobmV3IChkb2N1bWVudC5yZWdpc3Rl
cigneS16LWJhcicsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpKSgpKS50YWdOYW1lIGlzICdZ
LVotQkFSJwotUEFTUyAobmV3IChkb2N1bWVudC5yZWdpc3RlcigneS0tYmFyJywgY3JlYXRlUmVn
aXN0ZXJQYXJhbXRlcnMoKSkpKCkpLnRhZ05hbWUgaXMgJ1ktLUJBUicKLVBBU1MgKG5ldyBmb29D
b25zdHJ1Y3RvcikudGFnTmFtZSBpcyAnWC1GT08nCi1QQVNTIChuZXcgYmFyQ29uc3RydWN0b3Ip
LnRhZ05hbWUgaXMgJ1gtQkFSJwotUEFTUyAobmV3IGJhekNvbnN0cnVjdG9yKS50YWdOYW1lIGlz
ICdYLUJBWicKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVU
RQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXIt
YmFzaWMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9j
dW1lbnQtcmVnaXN0ZXItYmFzaWMuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVz
dHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLWJhc2ljLmh0bWwJKG5vbmV4aXN0
ZW50KQpAQCAtMSwxMTcgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgot
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Ci08c2NyaXB0Pgot
ZGVzY3JpcHRpb24oIlRlc3RpbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSBiYXNpYyBiZWhhdmlvcnMu
Iik7Ci0KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQo
KTsKLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Vi
a2l0UmVnaXN0ZXI7Ci0KLWZ1bmN0aW9uIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkKLXsKLSAg
ICByZXR1cm4gewotICAgICAgICBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQu
cHJvdG90eXBlLCB7IHRoaXNJc1Byb3RvdHlwZTogeyB2YWx1ZTogdHJ1ZSB9IH0pCi0gICAgfTsK
LX0KLQotLy8gSW52YWxpZCBuYW1lcwotc2hvdWxkVGhyb3coImRvY3VtZW50LnJlZ2lzdGVyKCdm
b28nLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSIsICInSW52YWxpZENoYXJhY3RlckVycm9y
IChET00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVy
cy4nIik7Ci1zaG91bGRUaHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ3hmb28nLCBjcmVhdGVSZWdp
c3RlclBhcmFtdGVycygpKSIsICInSW52YWxpZENoYXJhY3RlckVycm9yIChET00gRXhjZXB0aW9u
IDUpOiBUaGUgc3RyaW5nIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVycy4nIik7Ci1zaG91bGRU
aHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ21pc3NpbmctZ2x5cGgnLCBjcmVhdGVSZWdpc3RlclBh
cmFtdGVycygpKSIsICInSW52YWxpZENoYXJhY3RlckVycm9yIChET00gRXhjZXB0aW9uIDUpOiBU
aGUgc3RyaW5nIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVycy4nIik7Ci0KLXZhciBmb29Db25z
dHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lzdGVyKCJ4LWZvbyIsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10
ZXJzKCkpOwotc2hvdWxkQmUoInR5cGVvZiBmb29Db25zdHJ1Y3RvciIsICInZnVuY3Rpb24nIik7
Ci1zaG91bGRCZSgiZm9vQ29uc3RydWN0b3IucHJvdG90eXBlLl9fcHJvdG9fXyIsICJIVE1MRWxl
bWVudC5wcm90b3R5cGUiKTsKLXNob3VsZEJlVHJ1ZSgiZm9vQ29uc3RydWN0b3IucHJvdG90eXBl
LnRoaXNJc1Byb3RvdHlwZSIpOwotCi0vLyBOYW1lIGNvbmZsaWN0cwotc2hvdWxkVGhyb3coImRv
Y3VtZW50LnJlZ2lzdGVyKCd4LWZvbycsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpIiwgIidJ
bnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4g
aW52YWxpZCBzdGF0ZS4nIik7Ci1zaG91bGRUaHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ1gtRk9P
JywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkiLCAiJ0ludmFsaWRTdGF0ZUVycm9yIChET00g
RXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiciKTsKLQot
Ly8gQmFkIHByb3RvdHlwZTogY29uc3RydWN0b3IgcHJvcGVydHkgZXhpc3RzCi1zaG91bGRUaHJv
dygiZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFkLWEnLCB7IHByb3RvdHlwZTogSFRNTEVsZW1lbnQu
cHJvdG90eXBlIH0pIiwgIidJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRo
ZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4nIik7Ci0vLyBCYWQgcHJvdG90eXBlOiBt
aXNzaW5nIF9fcHJvdG9fXwotc2hvdWxkVGhyb3coImRvY3VtZW50LnJlZ2lzdGVyKCd4LWJhZC1i
JywgeyBwcm90b3R5cGU6IHt9IH0pIiwgIidJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlv
biAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4nIik7Ci0vLyBCYWQgcHJv
dG90eXBlOiB3cm9uZyBfX3Byb3RvX18KLXNob3VsZFRocm93KCJkb2N1bWVudC5yZWdpc3Rlcign
eC1iYWQtYycsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKERvY3VtZW50LnByb3RvdHlwZSkg
fSkiLCAiJ0ludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBp
cyBpbiBhbiBpbnZhbGlkIHN0YXRlLiciKTsKLS8vIENhbGwgYXMgZnVuY3Rpb24KLXNob3VsZFRo
cm93KCJmb29Db25zdHJ1Y3RvcigpIiwgIidUeXBlRXJyb3I6IERPTSBvYmplY3QgY29uc3RydWN0
b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLiciKQotCi0vLyBDb25zdHJ1Y3RvciBp
bml0aWF0ZWQgaW5zdGFudGlhdGlvbgotdmFyIGNyZWF0ZWRGb28gPSBuZXcgZm9vQ29uc3RydWN0
b3IoKTsKLQotLy8gSlMgYnVpbHQtaW4gcHJvcGVydGllcwotc2hvdWxkQmUoImNyZWF0ZWRGb28u
X19wcm90b19fIiwgImZvb0NvbnN0cnVjdG9yLnByb3RvdHlwZSIpOwotc2hvdWxkQmUoImNyZWF0
ZWRGb28uY29uc3RydWN0b3IiLCAiZm9vQ29uc3RydWN0b3IiKTsKLQotLy8gTmF0aXZlIGdldHRl
cgotc2hvdWxkQmUoImNyZWF0ZWRGb28udGFnTmFtZSIsICInWC1GT08nIik7Ci0KLS8vIE5hdGl2
ZSBzZXR0ZXIKLWNyZWF0ZWRGb28uaW5uZXJIVE1MID0gIkhlbGxvIjsKLXNob3VsZEJlKCJjcmVh
dGVkRm9vLnRleHRDb250ZW50IiwgIidIZWxsbyciKTsKLQotLy8gTmF0aXZlIG1ldGhvZAotdmFy
IGNoaWxkRGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci1jcmVhdGVkRm9vLmFw
cGVuZENoaWxkKGNoaWxkRGl2KTsKLXNob3VsZEJlKCJjcmVhdGVkRm9vLmxhc3RDaGlsZCIsICJj
aGlsZERpdiIpOwotCi0vLyBQYXJzZXIgaW5pdGlhdGVkIGluc3RhbnRpYXRpb24KLXZhciBjb250
YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGFpbmVyIik7Ci1jb250YWluZXIu
aW5uZXJIVE1MID0gIjx4LWZvbz48L3gtZm9vPiI7Ci1wYXJzZWRGb28gPSBjb250YWluZXIuZmly
c3RDaGlsZDsKLQotc2hvdWxkQmUoInBhcnNlZEZvby5fX3Byb3RvX18iLCAiZm9vQ29uc3RydWN0
b3IucHJvdG90eXBlIik7Ci1zaG91bGRCZSgicGFyc2VkRm9vLnRhZ05hbWUiLCAiJ1gtRk9PJyIp
OwotCi0vLyBFbnN1cmluZyB0aGUgd3JhcHBlciBpcyByZXRhaW5lZAotcGFyc2VkRm9vLnNvbWVQ
cm9wZXJ0eSA9ICJoZWxsbyI7Ci1zaG91bGRCZSgicGFyc2VkRm9vLnNvbWVQcm9wZXJ0eSIsICJj
b250YWluZXIuZmlyc3RDaGlsZC5zb21lUHJvcGVydHkiKTsKLQotLy8gSGF2aW5nIGFub3RoZXIg
Y29uc3RydWN0b3IKLXZhciBiYXJDb25zdHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lzdGVyKCJ4LWJh
ciIsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpOwotc2hvdWxkQmVUcnVlKCJiYXJDb25zdHJ1
Y3RvciAhPT0gZm9vQ29uc3RydWN0b3IiKTsKLXZhciBjcmVhdGVkQmFyID0gbmV3IGJhckNvbnN0
cnVjdG9yKCk7Ci1zaG91bGRCZSgiY3JlYXRlZEJhci50YWdOYW1lIiwgIidYLUJBUiciKTsKLQot
Ly8gSGF2aW5nIGEgc3ViY2xhc3MKLXZhciBiYXpDb25zdHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lz
dGVyKCJ4LWJheiIsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKGZvb0NvbnN0cnVjdG9yLnBy
b3RvdHlwZSwgeyB0aGlzSXNBbHNvUHJvdG90eXBlOiB7IHZhbHVlOiB0cnVlIH0gfSkgfSk7Ci12
YXIgY3JlYXRlZEJheiA9IG5ldyBiYXpDb25zdHJ1Y3RvcigpOwotc2hvdWxkQmUoImNyZWF0ZWRC
YXoudGFnTmFtZSIsICInWC1CQVonIik7Ci1zaG91bGRCZVRydWUoImNyZWF0ZWRCYXoudGhpc0lz
UHJvdG90eXBlIik7Ci1zaG91bGRCZVRydWUoImNyZWF0ZWRCYXoudGhpc0lzQWxzb1Byb3RvdHlw
ZSIpOwotCi0vLyBXaXRoIGlycmVndWxhciBjYXNlcwotdmFyIGNyZWF0ZWRVcHBlckJhciA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoIlgtQkFSIik7Ci12YXIgY3JlYXRlZE1peGVkQmFyID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiWC1CYXIiKTsKLXNob3VsZEJlKCJjcmVhdGVkVXBwZXJCYXIu
Y29uc3RydWN0b3IiLCAiYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlKCJjcmVhdGVkVXBwZXJC
YXIudGFnTmFtZSIsICInWC1CQVInIik7Ci1zaG91bGRCZSgiY3JlYXRlZE1peGVkQmFyLmNvbnN0
cnVjdG9yIiwgImJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZSgiY3JlYXRlZE1peGVkQmFyLnRh
Z05hbWUiLCAiJ1gtQkFSJyIpOwotCi1jb250YWluZXIuaW5uZXJIVE1MID0gIjxYLUJBUj48L1gt
QkFSPjxYLUJhcj48L1gtQmFyPiI7Ci1zaG91bGRCZSgiY29udGFpbmVyLmZpcnN0Q2hpbGQuY29u
c3RydWN0b3IiLCAiYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlKCJjb250YWluZXIuZmlyc3RD
aGlsZC50YWdOYW1lIiwgIidYLUJBUiciKTsKLXNob3VsZEJlKCJjb250YWluZXIubGFzdENoaWxk
LmNvbnN0cnVjdG9yIiwgImJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZSgiY29udGFpbmVyLmxh
c3RDaGlsZC50YWdOYW1lIiwgIidYLUJBUiciKTsKLQotLy8gU3RyYW5nZSBidXQgdmFsaWQgbmFt
ZXMKLXNob3VsZEJlKCIobmV3IChkb2N1bWVudC5yZWdpc3RlcigneS1iYXInLCBjcmVhdGVSZWdp
c3RlclBhcmFtdGVycygpKSkoKSkudGFnTmFtZSIsICInWS1CQVInIik7Ci1zaG91bGRCZSgiKG5l
dyAoZG9jdW1lbnQucmVnaXN0ZXIoJ3l6LWJhcicsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkp
KSgpKS50YWdOYW1lIiwgIidZWi1CQVInIik7Ci1zaG91bGRCZSgiKG5ldyAoZG9jdW1lbnQucmVn
aXN0ZXIoJ3ktei1iYXInLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSkoKSkudGFnTmFtZSIs
ICInWS1aLUJBUiciKTsKLXNob3VsZEJlKCIobmV3IChkb2N1bWVudC5yZWdpc3RlcigneS0tYmFy
JywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkpKCkpLnRhZ05hbWUiLCAiJ1ktLUJBUiciKTsK
LQotLy8gQ29uc3RydWN0b3Igc2hvdWxkbid0IGludGVyZmVyZSBlYWNoIG90ZWhyCi1zaG91bGRC
ZSgiKG5ldyBmb29Db25zdHJ1Y3RvcikudGFnTmFtZSIsICInWC1GT08nIik7Ci1zaG91bGRCZSgi
KG5ldyBiYXJDb25zdHJ1Y3RvcikudGFnTmFtZSIsICInWC1CQVInIik7Ci1zaG91bGRCZSgiKG5l
dyBiYXpDb25zdHJ1Y3RvcikudGFnTmFtZSIsICInWC1CQVonIik7Ci0KLTwvc2NyaXB0PgotPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgot
PC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3Vt
ZW50LXJlZ2lzdGVyLW5hbWVzcGFjZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLW5hbWVzcGFjZS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9k
b2N1bWVudC1yZWdpc3Rlci1uYW1lc3BhY2UtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAg
LTEsMzggKzAsMCBAQAotVXNpbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSBmb3IgZXh0ZW5kaW5nIEhU
TUwgYW5kIG5vbi1IVE1MIGVsZW1lbnRzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBz
ZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0K
LQotUEFTUyBodG1sMS5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwnCi1QQVNTIGh0bWwyLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94
aHRtbCcKLVBBU1MgaHRtbDMubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sJwotUEFTUyBodG1sNC5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwnCi1QQVNTIG5vdEhUTUwubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LmV4YW1w
bGUuY29tLycKLVBBU1Mgbm90SFRNTCBpbnN0YW5jZW9mIEN1c3RvbUhUTUxFbGVtZW50IGlzIGZh
bHNlCi1QQVNTIG5vdEhUTUwgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCBpcyBmYWxzZQotUEFTUyBz
dmcxLnRhZ05hbWUgaXMgJ3N2Zy1mb28nCi1QQVNTIHN2ZzEubmFtZXNwYWNlVVJJIGlzICdodHRw
Oi8vd3d3LnczLm9yZy8yMDAwL3N2ZycKLVBBU1Mgc3ZnMi50YWdOYW1lIGlzICdzdmctZm9vJwot
UEFTUyBzdmcyLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnCi1Q
QVNTIHN2ZzMudGFnTmFtZSBpcyAnc3ZnLWZvbycKLVBBU1Mgc3ZnMy5uYW1lc3BhY2VVUkkgaXMg
J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJwotUEFTUyBub3RTVkcxLm5hbWVzcGFjZVVSSSBp
cyAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcKLVBBU1Mgbm90U1ZHMSBpbnN0YW5jZW9m
IEN1c3RvbVNWR0VsZW1lbnQgaXMgZmFsc2UKLVBBU1Mgbm90U1ZHMSBpbnN0YW5jZW9mIEhUTUxV
bmtub3duRWxlbWVudCBpcyB0cnVlCi1QQVNTIG5vdFNWRzIubmFtZXNwYWNlVVJJIGlzICdodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJwotUEFTUyBub3RTVkcyIGluc3RhbmNlb2YgQ3VzdG9t
U1ZHRWxlbWVudCBpcyBmYWxzZQotUEFTUyBub3RTVkcyIGluc3RhbmNlb2YgSFRNTFVua25vd25F
bGVtZW50IGlzIHRydWUKLVBBU1MgeG1sMS50YWdOYW1lIGlzICd4bWwtZm9vJwotUEFTUyB4bWwx
Lm5hbWVzcGFjZVVSSSBpcyBudWxsCi1QQVNTIHhtbDIudGFnTmFtZSBpcyAneG1sLWZvbycKLVBB
U1MgeG1sMi5uYW1lc3BhY2VVUkkgaXMgbnVsbAotUEFTUyBub3RYTUwxLm5hbWVzcGFjZVVSSSBp
cyAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcKLVBBU1Mgbm90WE1MMSBpbnN0YW5jZW9m
IEN1c3RvbVhNTEVsZW1lbnQgaXMgZmFsc2UKLVBBU1Mgbm90WE1MMSBpbnN0YW5jZW9mIEhUTUxV
bmtub3duRWxlbWVudCBpcyB0cnVlCi1QQVNTIG5vdFhNTDIubmFtZXNwYWNlVVJJIGlzICdodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJwotUEFTUyBub3RYTUwyIGluc3RhbmNlb2YgQ3VzdG9t
WE1MRWxlbWVudCBpcyBmYWxzZQotUEFTUyBub3RYTUwyIGluc3RhbmNlb2YgSFRNTFVua25vd25F
bGVtZW50IGlzIHRydWUKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBD
T01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVn
aXN0ZXItbmFtZXNwYWNlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20v
Y3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLW5hbWVzcGFjZS5odG1sCShyZXZpc2lvbiAyMDM3MzIp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItbmFtZXNw
YWNlLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSw4MiArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4K
LTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9u
KCJVc2luZyBkb2N1bWVudC5yZWdpc3RlcigpIGZvciBleHRlbmRpbmcgSFRNTCBhbmQgbm9uLUhU
TUwgZWxlbWVudHMuIik7Ci0KLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQucmVnaXN0ZXIg
fHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci0KLWZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnRGcm9t
SFRNTChodG1sKQotewotICAgIHZhciBjb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKLSAgICBjb250YWluZXIuaW5uZXJIVE1MID0gaHRtbDsKLSAgICByZXR1cm4gY29u
dGFpbmVyLmZpcnN0Q2hpbGQ7Ci19Ci0KLWZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnRGcm9tU1ZHKHN2
ZykKLXsKLSAgICB2YXIgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7
Ci0gICAgY29udGFpbmVyLmlubmVySFRNTCA9ICI8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2Zyc+IiArIHN2ZyArICI8L3N2Zz4iOwotICAgIHJldHVybiBjb250YWluZXIuZmly
c3RDaGlsZC5maXJzdENoaWxkOwotfQotCi1DdXN0b21IVE1MRWxlbWVudCA9IGRvY3VtZW50LnJl
Z2lzdGVyKCdodG1sLWZvbycsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxFbGVtZW50
LnByb3RvdHlwZSkgfSk7Ci1DdXN0b21TVkdFbGVtZW50ID0gZG9jdW1lbnQucmVnaXN0ZXIoJ3N2
Zy1mb28nLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShTVkdFbGVtZW50LnByb3RvdHlwZSkg
fSk7Ci1DdXN0b21YTUxFbGVtZW50ID0gZG9jdW1lbnQucmVnaXN0ZXIoJ3htbC1mb28nLCB7IHBy
b3RvdHlwZTogT2JqZWN0LmNyZWF0ZShFbGVtZW50LnByb3RvdHlwZSkgfSk7Ci0KLXZhciBodG1s
MSA9IG5ldyBDdXN0b21IVE1MRWxlbWVudCgpOwotc2hvdWxkQmUoImh0bWwxLm5hbWVzcGFjZVVS
SSIsICInaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCciKTsKLXZhciBodG1sMiA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImh0bWwtZm9vIik7Ci1zaG91bGRCZSgiaHRtbDIubmFtZXNwYWNl
VVJJIiwgIidodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJyIpOwotdmFyIGh0bWwzID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiwgImh0
bWwtZm9vIik7Ci1zaG91bGRCZSgiaHRtbDMubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sJyIpOwotdmFyIGh0bWw0ID0gY3JlYXRlRWxlbWVudEZyb21IVE1MKCI8
aHRtbC1mb28+PC9odG1sLWZvbz4iKTsKLXNob3VsZEJlKCJodG1sNC5uYW1lc3BhY2VVUkkiLCAi
J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnIik7Ci0KLXZhciBub3RIVE1MID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LmV4YW1wbGUuY29tLyIsICJodG1sLWZvbyIp
Owotc2hvdWxkQmUoIm5vdEhUTUwubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3LmV4YW1wbGUu
Y29tLyciKTsKLXNob3VsZEJlRmFsc2UoIm5vdEhUTUwgaW5zdGFuY2VvZiBDdXN0b21IVE1MRWxl
bWVudCIpOwotc2hvdWxkQmVGYWxzZSgibm90SFRNTCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50Iik7
Ci0KLXZhciBzdmcxID0gbmV3IEN1c3RvbVNWR0VsZW1lbnQoKTsKLXNob3VsZEJlKCJzdmcxLnRh
Z05hbWUiLCAiJ3N2Zy1mb28nIik7Ci1zaG91bGRCZSgic3ZnMS5uYW1lc3BhY2VVUkkiLCAiJ2h0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyIpOwotdmFyIHN2ZzIgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwgInN2Zy1mb28iKTsKLXNob3Vs
ZEJlKCJzdmcyLnRhZ05hbWUiLCAiJ3N2Zy1mb28nIik7Ci1zaG91bGRCZSgic3ZnMi5uYW1lc3Bh
Y2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyIpOwotdmFyIHN2ZzMgPSBjcmVh
dGVFbGVtZW50RnJvbVNWRygiPHN2Zy1mb28+PC9zdmctZm9vPiIpOwotc2hvdWxkQmUoInN2ZzMu
dGFnTmFtZSIsICInc3ZnLWZvbyciKTsKLXNob3VsZEJlKCJzdmczLm5hbWVzcGFjZVVSSSIsICIn
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIik7Ci0KLXZhciBub3RTVkcxID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgic3ZnLWZvbyIpOwotc2hvdWxkQmUoIm5vdFNWRzEubmFtZXNwYWNlVVJJ
IiwgIidodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJyIpOwotc2hvdWxkQmVGYWxzZSgibm90
U1ZHMSBpbnN0YW5jZW9mIEN1c3RvbVNWR0VsZW1lbnQiKTsKLXNob3VsZEJlVHJ1ZSgibm90U1ZH
MSBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwotdmFyIG5vdFNWRzIgPSBjcmVhdGVF
bGVtZW50RnJvbUhUTUwoIjxzdmctZm9vPjwvc3ZnLWZvbz4iKTsKLXNob3VsZEJlKCJub3RTVkcy
Lm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCciKTsKLXNob3Vs
ZEJlRmFsc2UoIm5vdFNWRzIgaW5zdGFuY2VvZiBDdXN0b21TVkdFbGVtZW50Iik7Ci1zaG91bGRC
ZVRydWUoIm5vdFNWRzIgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotdmFyIHht
bDEgPSBuZXcgQ3VzdG9tWE1MRWxlbWVudCgpOwotc2hvdWxkQmUoInhtbDEudGFnTmFtZSIsICIn
eG1sLWZvbyciKTsKLXNob3VsZEJlKCJ4bWwxLm5hbWVzcGFjZVVSSSIsICJudWxsIik7Ci12YXIg
eG1sMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhudWxsLCAieG1sLWZvbyIpOwotc2hvdWxk
QmUoInhtbDIudGFnTmFtZSIsICIneG1sLWZvbyciKTsKLXNob3VsZEJlKCJ4bWwyLm5hbWVzcGFj
ZVVSSSIsICJudWxsIik7Ci0KLXZhciBub3RYTUwxID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
eG1sLWZvbyIpOwotc2hvdWxkQmUoIm5vdFhNTDEubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3
LnczLm9yZy8xOTk5L3hodG1sJyIpOwotc2hvdWxkQmVGYWxzZSgibm90WE1MMSBpbnN0YW5jZW9m
IEN1c3RvbVhNTEVsZW1lbnQiKTsKLXNob3VsZEJlVHJ1ZSgibm90WE1MMSBpbnN0YW5jZW9mIEhU
TUxVbmtub3duRWxlbWVudCIpOwotdmFyIG5vdFhNTDIgPSBjcmVhdGVFbGVtZW50RnJvbUhUTUwo
Ijx4bWwtZm9vPjwveG1sLWZvbz4iKTsKLXNob3VsZEJlKCJub3RYTUwyLm5hbWVzcGFjZVVSSSIs
ICInaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCciKTsKLXNob3VsZEJlRmFsc2UoIm5vdFhN
TDIgaW5zdGFuY2VvZiBDdXN0b21YTUxFbGVtZW50Iik7Ci1zaG91bGRCZVRydWUoIm5vdFhNTDIg
aW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotPC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVn
aXN0ZXItcmVlbnRyYW50LW51bGwtY29uc3RydWN0b3ItZXhwZWN0ZWQudHh0Cj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJh
bnQtbnVsbC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExh
eW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtbnVs
bC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSw5ICswLDAgQEAK
LUZ1enppbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0aHJvdWdoIGdldHRlcnMuIFBBU1MgdWxlc3Mg
Y3Jhc2guCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVz
c2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1udWxsLWNvbnN0cnVjdG9y
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50
LXJlZ2lzdGVyLXJlZW50cmFudC1udWxsLWNvbnN0cnVjdG9yLmh0bWwJKHJldmlzaW9uIDIwMzcz
MikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVu
dHJhbnQtbnVsbC1jb25zdHJ1Y3Rvci5odG1sCShub25leGlzdGVudCkKQEAgLTEsMjMgKzAsMCBA
QAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi9yZXNv
dXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9k
eT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIkZ1
enppbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0aHJvdWdoIGdldHRlcnMuIFBBU1MgdWxlc3MgY3Jh
c2guIik7Ci0KLXNldHVwT2JqZWN0SG9va3MoewotICAgIHByb3RvdHlwZUdldDogZnVuY3Rpb24o
KSB7IH0sCi0gICAgcHJvdG90eXBlU2V0OiBmdW5jdGlvbih2YWx1ZSkgeyB9LAotICAgIGNvbnN0
cnVjdG9yR2V0OiBmdW5jdGlvbigpIHsgfSwKLSAgICBjb25zdHJ1Y3RvclNldDogZnVuY3Rpb24o
dmFsdWUpIHsgfQotfSk7Ci0KLWV4ZXJjaXNlRG9jdW1lbnRSZWdpc3RlcigpOwotPC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20v
ZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0
ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAzNzMy
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50
cmFudC1yZXR1cm5pbmctZmFrZS1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSw5ICsw
LDAgQEAKLUZ1enppbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0aHJvdWdoIGdldHRlcnMuIFBBU1Mg
dWxlc3MgY3Jhc2guCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1yZXR1cm5pbmct
ZmFrZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1
bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtcmV0dXJuaW5nLWZha2UuaHRtbAkocmV2aXNpb24gMjAz
NzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJl
ZW50cmFudC1yZXR1cm5pbmctZmFrZS5odG1sCShub25leGlzdGVudCkKQEAgLTEsMjYgKzAsMCBA
QAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi9yZXNv
dXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9k
eT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIkZ1
enppbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0aHJvdWdoIGdldHRlcnMuIFBBU1MgdWxlc3MgY3Jh
c2guIik7Ci0KLXZhciBiYWRQcm90b3R5cGUgPSBJbWFnZS5wcm90b3R5cGU7Ci12YXIgYmFkQ29u
c3RydWN0b3IgPSBJbWFnZS5wcm90b3R5cGUuY29uc3RydWN0b3I7Ci0KLXNldHVwT2JqZWN0SG9v
a3MoewotICAgIHByb3RvdHlwZUdldDogZnVuY3Rpb24oKSB7IHJldHVybiBiYWRQcm90b3R5cGU7
IH0sCi0gICAgcHJvdG90eXBlU2V0OiBmdW5jdGlvbih2YWx1ZSkgeyAgfSwKLSAgICBjb25zdHJ1
Y3RvckdldDogZnVuY3Rpb24oKSB7IHJldHVybiBiYWRDb25zdHJ1Y3RvcjsgfSwKLSAgICBjb25z
dHJ1Y3RvclNldDogZnVuY3Rpb24odmFsdWUpIHsgIH0KLX0pOwotCi1leGVyY2lzZURvY3VtZW50
UmVnaXN0ZXIoKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC10aHJvd2lu
Zy1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC10aHJvd2luZy1jb25zdHJ1
Y3Rvci1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3Qv
ZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtdGhyb3dpbmctY29uc3RydWN0
b3ItZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsMTAgKzAsMCBAQAotRnV6emluZyBk
b2N1bWVudC5yZWdpc3RlcigpIHRocm91Z2ggZ2V0dGVycy4gUEFTUyB1bGVzcyBjcmFzaC4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLUNvbnN0cnVjdG9yIG9iamVjdCBpc24ndCBj
cmVhdGVkLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRF
Ci0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1y
ZWVudHJhbnQtdGhyb3dpbmctY29uc3RydWN0b3IuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXRocm93aW5n
LWNvbnN0cnVjdG9yLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3Qv
ZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtdGhyb3dpbmctY29uc3RydWN0
b3IuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDIzICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgot
PGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4vcmVzb3VyY2VzL2RvY3VtZW50LXJlZ2lz
dGVyLWZ1enouanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJjb250YWlu
ZXIiPjwvZGl2PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJGdXp6aW5nIGRvY3VtZW50LnJlZ2lz
dGVyKCkgdGhyb3VnaCBnZXR0ZXJzLiBQQVNTIHVsZXNzIGNyYXNoLiIpOwotCi1zZXR1cE9iamVj
dEhvb2tzKHsKLSAgICBwcm90b3R5cGVHZXQ6IGZ1bmN0aW9uKCkgeyB0aHJvdyAiRXJyb3IiOyB9
LAotICAgIHByb3RvdHlwZVNldDogZnVuY3Rpb24odmFsdWUpIHsgdGhyb3cgIkVycm9yIjsgfSwK
LSAgICBjb25zdHJ1Y3RvckdldDogZnVuY3Rpb24oKSB7IHRocm93ICJFcnJvciI7IH0sCi0gICAg
Y29uc3RydWN0b3JTZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7IHRocm93ICJFcnJvciI7IH0KLX0pOwot
Ci1leGVyY2lzZURvY3VtZW50UmVnaXN0ZXIoKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9o
dG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVy
LXR5cGUtZXh0ZW5zaW9ucy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXR5cGUtZXh0ZW5zaW9ucy1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9k
b2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMtZXhwZWN0ZWQudHh0CShub25leGlzdGVu
dCkKQEAgLTEsNjcgKzAsMCBAQAotVGVzdGluZyBkb2N1bWVudC5yZWdpc3RlcigpIHR5cGUgZXh0
ZW5zaW9uIGJlaGF2aW91cnMgdGhyb3VnaCBjcmVhdGVFbGVtZW50KCkuCi0KLU9uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGRvY3VtZW50LnJlZ2lzdGVyKCd4LWZvbycsIHsgcHJv
dG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxEaXZFbGVtZW50LnByb3RvdHlwZSkgfSkgdGhyZXcg
ZXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVj
dCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4KLVBBU1MgZm9vTmV3ZWQub3V0ZXJIVE1MIGlzICc8
eC1mb28+PC94LWZvbz4nCi1QQVNTIGZvb05ld2VkIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3Ig
JiYgZm9vTmV3ZWQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCBpcyB0cnVlCi1QQVNTIGZvb05ld2Vk
IGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIGZhbHNlCi1QQVNTIGJhck5ld2VkLm91
dGVySFRNTCBpcyAnPGlucHV0IGlzPSJ4LWJhciI+JwotUEFTUyBiYXJOZXdlZCBpbnN0YW5jZW9m
IGJhckNvbnN0cnVjdG9yICYmIGJhck5ld2VkIGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudCBp
cyB0cnVlCi1QQVNTIGlzRm9ybUNvbnRyb2woYmFyTmV3ZWQpIGlzIHRydWUKLVBBU1MgYmF6TmV3
ZWQub3V0ZXJIVE1MIGlzICc8eC1iYXo+PC94LWJhej4nCi1QQVNTIGJhek5ld2VkIGluc3RhbmNl
b2YgYmF6Q29uc3RydWN0b3IgJiYgYmF6TmV3ZWQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCBpcyB0
cnVlCi1QQVNTIGJhek5ld2VkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIGZhbHNl
Ci1QQVNTIHF1eE5ld2VkIGluc3RhbmNlb2YgcXV4Q29uc3RydWN0b3IgJiYgcXV4TmV3ZWQgaW5z
dGFuY2VvZiBiYXJDb25zdHJ1Y3RvciAmJiBxdXhOZXdlZCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVs
ZW1lbnQgaXMgdHJ1ZQotUEFTUyBxdXhOZXdlZC5vdXRlckhUTUwgaXMgJzxpbnB1dCBpcz0ieC1x
dXgiPicKLVBBU1MgaXNGb3JtQ29udHJvbChxdXhOZXdlZCkgaXMgdHJ1ZQotUEFTUyBmb29DcmVh
dGVkLm91dGVySFRNTCBpcyAnPHgtZm9vPjwveC1mb28+JwotUEFTUyBmb29DcmVhdGVkIGluc3Rh
bmNlb2YgZm9vQ29uc3RydWN0b3IgaXMgdHJ1ZQotUEFTUyBiYXJDcmVhdGVkLm91dGVySFRNTCBp
cyAnPHgtYmFyPjwveC1iYXI+JwotUEFTUyBiYXJDcmVhdGVkIGluc3RhbmNlb2YgYmFyQ29uc3Ry
dWN0b3IgaXMgZmFsc2UKLVBBU1MgYmFyQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxl
bWVudCBpcyB0cnVlCi1QQVNTIGJhekNyZWF0ZWQub3V0ZXJIVE1MIGlzICc8eC1iYXo+PC94LWJh
ej4nCi1QQVNTIGJhekNyZWF0ZWQgaW5zdGFuY2VvZiBiYXpDb25zdHJ1Y3RvciBpcyB0cnVlCi1Q
QVNTIGJhekNyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgZmFsc2UKLVBB
U1MgcXV4Q3JlYXRlZC5vdXRlckhUTUwgaXMgJzx4LXF1eD48L3gtcXV4PicKLVBBU1MgcXV4Q3Jl
YXRlZCBpbnN0YW5jZW9mIHF1eENvbnN0cnVjdG9yIGlzIGZhbHNlCi1QQVNTIHF1eENyZWF0ZWQg
aW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBkaXZGb29DcmVhdGVk
Lm91dGVySFRNTCBpcyAnPGRpdiBpcz0ieC1mb28iPjwvZGl2PicKLVBBU1MgZGl2Rm9vQ3JlYXRl
ZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlzIGZhbHNlCi1QQVNTIGRpdkZvb0NyZWF0ZWQg
aW5zdGFuY2VvZiBIVE1MRGl2RWxlbWVudCBpcyB0cnVlCi1QQVNTIGlucHV0QmFyQ3JlYXRlZC5v
dXRlckhUTUwgaXMgJzxpbnB1dCBpcz0ieC1iYXIiPicKLVBBU1MgaW5wdXRCYXJDcmVhdGVkIGlu
c3RhbmNlb2YgYmFyQ29uc3RydWN0b3IgaXMgdHJ1ZQotUEFTUyBpbnB1dEJhckNyZWF0ZWQgaW5z
dGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgZmFsc2UKLVBBU1MgaXNGb3JtQ29udHJvbChp
bnB1dEJhckNyZWF0ZWQpIGlzIHRydWUKLVBBU1MgZGl2QmFyQ3JlYXRlZC5vdXRlckhUTUwgaXMg
JzxkaXYgaXM9IngtYmFyIj48L2Rpdj4nCi1QQVNTIGRpdkJhckNyZWF0ZWQgaW5zdGFuY2VvZiBi
YXJDb25zdHJ1Y3RvciBpcyBmYWxzZQotUEFTUyBkaXZCYXJDcmVhdGVkIGluc3RhbmNlb2YgSFRN
TERpdkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBmb29CYXJDcmVhdGVkLm91dGVySFRNTCBpcyAnPHgt
Zm9vIGlzPSJ4LWJhciI+PC94LWZvbz4nCi1QQVNTIGZvb0JhckNyZWF0ZWQgaW5zdGFuY2VvZiBm
b29Db25zdHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGJhckZvb0NyZWF0ZWQub3V0ZXJIVE1MIGlzICc8
eC1iYXIgaXM9IngtZm9vIj48L3gtYmFyPicKLVBBU1MgYmFyRm9vQ3JlYXRlZCBpbnN0YW5jZW9m
IEhUTUxVbmtub3duRWxlbWVudCBpcyB0cnVlCi1QQVNTIGZvb0NyZWF0ZWROdWxsLm91dGVySFRN
TCBpcyAnPHgtZm9vPjwveC1mb28+JwotUEFTUyBmb29DcmVhdGVkTnVsbCBpbnN0YW5jZW9mIGZv
b0NvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgZm9vQ3JlYXRlZEVtcHR5Lm91dGVySFRNTCBpcyAn
PHgtZm9vPjwveC1mb28+JwotUEFTUyBmb29DcmVhdGVkRW1wdHkgaW5zdGFuY2VvZiBmb29Db25z
dHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ0BpbnZhbGlkJywg
J3gtYmFyJykgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4Y2Vw
dGlvbiA1KTogVGhlIHN0cmluZyBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcnMuLgotUEFTUyBm
b29DcmVhdGVkTlMub3V0ZXJIVE1MIGlzICc8eC1mb28+PC94LWZvbz4nCi1QQVNTIGZvb0NyZWF0
ZWROUyBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgYmFyQ3JlYXRlZE5T
Lm91dGVySFRNTCBpcyAnPGlucHV0IGlzPSJ4LWJhciI+JwotUEFTUyBiYXJDcmVhdGVkTlMgaW5z
dGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGlzRm9ybUNvbnRyb2woYmFyQ3Jl
YXRlZE5TKSBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygnaHR0cDovL2V4
YW1wbGUuY29tLzIwMTMvbm8tc3VjaC1uYW1lc3BhY2UnLCAneG1sOmxhbmcnLCAneC1iYXInKSB0
aHJldyBleGNlcHRpb24gTmFtZXNwYWNlRXJyb3IgKERPTSBFeGNlcHRpb24gMTQpOiBUaGUgb3Bl
cmF0aW9uIGlzIG5vdCBhbGxvd2VkIGJ5IE5hbWVzcGFjZXMgaW4gWE1MLi4KLVBBU1MgZm9vUGFy
c2VkIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IgaXMgdHJ1ZQotUEFTUyBiYXJQYXJzZWQgaW5z
dGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGlzRm9ybUNvbnRyb2woYmFyUGFy
c2VkKSBpcyB0cnVlCi1QQVNTIGRpdkZvb1BhcnNlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9y
IGlzIGZhbHNlCi1QQVNTIGRpdkZvb1BhcnNlZCBpbnN0YW5jZW9mIEhUTUxEaXZFbGVtZW50IGlz
IHRydWUKLVBBU1MgbmFtZWRCYXJQYXJzZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBpcyBm
YWxzZQotUEFTUyBuYW1lZEJhclBhcnNlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBp
cyB0cnVlCi1QQVNTIGRpdkJhclBhcnNlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIGlzIGZh
bHNlCi1QQVNTIGRpdkJhclBhcnNlZCBpbnN0YW5jZW9mIEhUTUxEaXZFbGVtZW50IGlzIHRydWUK
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCkluZGV4
OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItdHlwZS1leHRl
bnNpb25zLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2Rv
Y3VtZW50LXJlZ2lzdGVyLXR5cGUtZXh0ZW5zaW9ucy5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisr
KyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItdHlwZS1leHRl
bnNpb25zLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNzAgKzAsMCBAQAotPCFET0NUWVBFIGh0
bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImNvbnRhaW5l
ciI+PC9kaXY+Ci08Zm9ybSBpZD0idGVzdEZvcm0iPjwvZm9ybT4KLTxzY3JpcHQ+Ci1kZXNjcmlw
dGlvbigiVGVzdGluZyBkb2N1bWVudC5yZWdpc3RlcigpIHR5cGUgZXh0ZW5zaW9uIGJlaGF2aW91
cnMgdGhyb3VnaCBjcmVhdGVFbGVtZW50KCkuIik7Ci0KLWZ1bmN0aW9uIGlzRm9ybUNvbnRyb2wo
ZWxlbWVudCkKLXsKLSAgICB0ZXN0Rm9ybS5hcHBlbmRDaGlsZChlbGVtZW50KTsKLSAgICByZXR1
cm4gZWxlbWVudC5mb3JtID09IHRlc3RGb3JtOwotfQotCi1pZiAod2luZG93LnRlc3RSdW5uZXIp
Ci0gICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci1kb2N1bWVudC5yZWdpc3RlciA9IGRvY3Vt
ZW50LnJlZ2lzdGVyIHx8IGRvY3VtZW50LndlYmtpdFJlZ2lzdGVyOwotCi0vLwotLy8gSW5oZXJp
dGFuY2UgaGVyZSBpcyBzaGFwZWQgbGlrZSB0aGlzOgotLy8KLS8vIEhUTUxFbGVtZW50IDwtIGlu
cHV0IDwtIHgtYmFyIDwtIHgtcXV4Ci0vLyAgICAgICAgICAgICA8LSB4LWZvbyA8LSB4LWJhegot
Ly8KLQotZm9vQ29uc3RydWN0b3IgPSBkb2N1bWVudC5yZWdpc3RlcigneC1mb28nLCB7IHByb3Rv
dHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUpIH0pOwotYmFyQ29uc3Ry
dWN0b3IgPSBkb2N1bWVudC5yZWdpc3RlcigneC1iYXInLCB7IHByb3RvdHlwZTogT2JqZWN0LmNy
ZWF0ZShIVE1MSW5wdXRFbGVtZW50LnByb3RvdHlwZSkgfSk7Ci1iYXpDb25zdHJ1Y3RvciA9IGRv
Y3VtZW50LnJlZ2lzdGVyKCd4LWJheicsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKGZvb0Nv
bnN0cnVjdG9yLnByb3RvdHlwZSkgfSk7Ci1xdXhDb25zdHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lz
dGVyKCd4LXF1eCcsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKGJhckNvbnN0cnVjdG9yLnBy
b3RvdHlwZSkgfSk7Ci0KLS8vIFNhbWUgbmFtZSwgZGlmZmVyZW50IGxvY2FsIG5hbWUKLXNob3Vs
ZFRocm93KCJkb2N1bWVudC5yZWdpc3RlcigneC1mb28nLCB7IHByb3RvdHlwZTogT2JqZWN0LmNy
ZWF0ZShIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUpIH0pIiwgIidJbnZhbGlkU3RhdGVFcnJvciAo
RE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4nIik7
Ci0KLS8vCi0vLyBHZW5lcmF0ZWQgY29uc3RydWN0b3JzCi0vLwotCi1mb29OZXdlZCA9IG5ldyBm
b29Db25zdHJ1Y3RvcigpOwotZm9vT3V0ZXJIVE1MID0gIic8eC1mb28+PC94LWZvbz4nIjsKLXNo
b3VsZEJlKCJmb29OZXdlZC5vdXRlckhUTUwiLCBmb29PdXRlckhUTUwpOwotc2hvdWxkQmVUcnVl
KCJmb29OZXdlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yICYmIGZvb05ld2VkIGluc3RhbmNl
b2YgSFRNTEVsZW1lbnQiKTsKLXNob3VsZEJlRmFsc2UoImZvb05ld2VkIGluc3RhbmNlb2YgSFRN
TFVua25vd25FbGVtZW50Iik7Ci0KLWJhck5ld2VkID0gbmV3IGJhckNvbnN0cnVjdG9yKCk7Ci1i
YXJPdXRlckhUTUwgPSAiJzxpbnB1dCBpcz1cIngtYmFyXCI+JyI7Ci1zaG91bGRCZSgiYmFyTmV3
ZWQub3V0ZXJIVE1MIiwgYmFyT3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgiYmFyTmV3ZWQgaW5z
dGFuY2VvZiBiYXJDb25zdHJ1Y3RvciAmJiBiYXJOZXdlZCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVs
ZW1lbnQiKTsKLXNob3VsZEJlVHJ1ZSgiaXNGb3JtQ29udHJvbChiYXJOZXdlZCkiKTsKLQotYmF6
TmV3ZWQgPSBuZXcgYmF6Q29uc3RydWN0b3IoKTsKLWJhek91dGVySFRNTCA9ICInPHgtYmF6Pjwv
eC1iYXo+JyI7Ci1zaG91bGRCZSgiYmF6TmV3ZWQub3V0ZXJIVE1MIiwgYmF6T3V0ZXJIVE1MKTsK
LXNob3VsZEJlVHJ1ZSgiYmF6TmV3ZWQgaW5zdGFuY2VvZiBiYXpDb25zdHJ1Y3RvciAmJiBiYXpO
ZXdlZCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50Iik7Ci1zaG91bGRCZUZhbHNlKCJiYXpOZXdlZCBp
bnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwotCi1xdXhOZXdlZCA9IG5ldyBxdXhDb25z
dHJ1Y3RvcigpOwotcXV4T3V0ZXJIVE1MID0gIic8aW5wdXQgaXM9XCJ4LXF1eFwiPiciOwotc2hv
dWxkQmVUcnVlKCJxdXhOZXdlZCBpbnN0YW5jZW9mIHF1eENvbnN0cnVjdG9yICYmIHF1eE5ld2Vk
IGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IgJiYgcXV4TmV3ZWQgaW5zdGFuY2VvZiBIVE1MSW5w
dXRFbGVtZW50Iik7Ci1zaG91bGRCZSgicXV4TmV3ZWQub3V0ZXJIVE1MIiwgcXV4T3V0ZXJIVE1M
KTsKLXNob3VsZEJlVHJ1ZSgiaXNGb3JtQ29udHJvbChxdXhOZXdlZCkiKTsKLQotLy8KLS8vIFNp
bmdsZSBwYXJhbWV0ZXIgY3JlYXRlRWxlbWVudCgpCi0vLwotCi1mb29DcmVhdGVkID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgieC1mb28iKTsKLXNob3VsZEJlKCJmb29DcmVhdGVkLm91dGVySFRN
TCIsIGZvb091dGVySFRNTCk7Ci1zaG91bGRCZVRydWUoImZvb0NyZWF0ZWQgaW5zdGFuY2VvZiBm
b29Db25zdHJ1Y3RvciIpOwotCi1iYXJDcmVhdGVkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
eC1iYXIiKTsKLXNob3VsZEJlKCJiYXJDcmVhdGVkLm91dGVySFRNTCIsICInPHgtYmFyPjwveC1i
YXI+JyIpOwotc2hvdWxkQmVGYWxzZSgiYmFyQ3JlYXRlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVj
dG9yIik7Ci1zaG91bGRCZVRydWUoImJhckNyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVs
ZW1lbnQiKTsKLQotYmF6Q3JlYXRlZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtYmF6Iik7
Ci1zaG91bGRCZSgiYmF6Q3JlYXRlZC5vdXRlckhUTUwiLCAiJzx4LWJhej48L3gtYmF6PiciKTsK
LXNob3VsZEJlVHJ1ZSgiYmF6Q3JlYXRlZCBpbnN0YW5jZW9mIGJhekNvbnN0cnVjdG9yIik7Ci1z
aG91bGRCZUZhbHNlKCJiYXpDcmVhdGVkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50Iik7
Ci0KLXF1eENyZWF0ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LXF1eCIpOwotc2hvdWxk
QmUoInF1eENyZWF0ZWQub3V0ZXJIVE1MIiwgIic8eC1xdXg+PC94LXF1eD4nIik7Ci1zaG91bGRC
ZUZhbHNlKCJxdXhDcmVhdGVkIGluc3RhbmNlb2YgcXV4Q29uc3RydWN0b3IiKTsKLXNob3VsZEJl
VHJ1ZSgicXV4Q3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwotCi0vLwot
Ly8gY3JlYXRlRWxlbWVudCgpIHdpdGggdHlwZSBleHRlbnNpb25zCi0vLwotCi1kaXZGb29DcmVh
dGVkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiwgIngtZm9vIik7Ci1zaG91bGRCZSgi
ZGl2Rm9vQ3JlYXRlZC5vdXRlckhUTUwiLCAiJzxkaXYgaXM9XCJ4LWZvb1wiPjwvZGl2PiciKTsK
LXNob3VsZEJlRmFsc2UoImRpdkZvb0NyZWF0ZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciIp
Owotc2hvdWxkQmVUcnVlKCJkaXZGb29DcmVhdGVkIGluc3RhbmNlb2YgSFRNTERpdkVsZW1lbnQi
KTsKLQotaW5wdXRCYXJDcmVhdGVkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiLCAi
eC1iYXIiKTsKLXNob3VsZEJlKCJpbnB1dEJhckNyZWF0ZWQub3V0ZXJIVE1MIiwgYmFyT3V0ZXJI
VE1MKTsKLXNob3VsZEJlVHJ1ZSgiaW5wdXRCYXJDcmVhdGVkIGluc3RhbmNlb2YgYmFyQ29uc3Ry
dWN0b3IiKTsKLXNob3VsZEJlRmFsc2UoImlucHV0QmFyQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxV
bmtub3duRWxlbWVudCIpOwotc2hvdWxkQmVUcnVlKCJpc0Zvcm1Db250cm9sKGlucHV0QmFyQ3Jl
YXRlZCkiKTsKLQotZGl2QmFyQ3JlYXRlZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIs
ICJ4LWJhciIpOwotc2hvdWxkQmUoImRpdkJhckNyZWF0ZWQub3V0ZXJIVE1MIiwgIic8ZGl2IGlz
PVwieC1iYXJcIj48L2Rpdj4nIik7Ci1zaG91bGRCZUZhbHNlKCJkaXZCYXJDcmVhdGVkIGluc3Rh
bmNlb2YgYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlVHJ1ZSgiZGl2QmFyQ3JlYXRlZCBpbnN0
YW5jZW9mIEhUTUxEaXZFbGVtZW50Iik7Ci0KLWZvb0JhckNyZWF0ZWQgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJ4LWZvbyIsICJ4LWJhciIpOwotc2hvdWxkQmUoImZvb0JhckNyZWF0ZWQub3V0
ZXJIVE1MIiwgIic8eC1mb28gaXM9XCJ4LWJhclwiPjwveC1mb28+JyIpOwotc2hvdWxkQmVUcnVl
KCJmb29CYXJDcmVhdGVkIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IiKTsKLQotYmFyRm9vQ3Jl
YXRlZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtYmFyIiwgIngtZm9vIik7Ci1zaG91bGRC
ZSgiYmFyRm9vQ3JlYXRlZC5vdXRlckhUTUwiLCAiJzx4LWJhciBpcz1cIngtZm9vXCI+PC94LWJh
cj4nIik7Ci1zaG91bGRCZVRydWUoImJhckZvb0NyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93
bkVsZW1lbnQiKTsKLQotZm9vQ3JlYXRlZE51bGwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4
LWZvbyIsIG51bGwpOwotc2hvdWxkQmUoImZvb0NyZWF0ZWROdWxsLm91dGVySFRNTCIsIGZvb091
dGVySFRNTCk7Ci1zaG91bGRCZVRydWUoImZvb0NyZWF0ZWROdWxsIGluc3RhbmNlb2YgZm9vQ29u
c3RydWN0b3IiKTsKLQotZm9vQ3JlYXRlZEVtcHR5ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
eC1mb28iLCAiIik7Ci1zaG91bGRCZSgiZm9vQ3JlYXRlZEVtcHR5Lm91dGVySFRNTCIsIGZvb091
dGVySFRNTCk7Ci1zaG91bGRCZVRydWUoImZvb0NyZWF0ZWRFbXB0eSBpbnN0YW5jZW9mIGZvb0Nv
bnN0cnVjdG9yIik7Ci0KLXNob3VsZFRocm93KCJkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdAaW52
YWxpZCcsICd4LWJhcicpIiwgIidJbnZhbGlkQ2hhcmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24g
NSk6IFRoZSBzdHJpbmcgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzLiciKTsKLQotLy8KLS8v
IGNyZWF0ZUVsZW1lbnROUygpIHdpdGggdHlwZSBleHRlbnNpb25zCi0vLwotCi1mb29DcmVhdGVk
TlMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwiLCAieC1mb28iLCBudWxsKTsKLXNob3VsZEJlKCJmb29DcmVhdGVkTlMub3V0ZXJIVE1MIiwg
Zm9vT3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgiZm9vQ3JlYXRlZE5TIGluc3RhbmNlb2YgZm9v
Q29uc3RydWN0b3IiKTsKLQotYmFyQ3JlYXRlZE5TID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5T
KCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiwgImlucHV0IiwgIngtYmFyIik7Ci1zaG91
bGRCZSgiYmFyQ3JlYXRlZE5TLm91dGVySFRNTCIsIGJhck91dGVySFRNTCk7Ci1zaG91bGRCZVRy
dWUoImJhckNyZWF0ZWROUyBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRy
dWUoImlzRm9ybUNvbnRyb2woYmFyQ3JlYXRlZE5TKSIpOwotCi1zaG91bGRUaHJvdygiZG9jdW1l
bnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vZXhhbXBsZS5jb20vMjAxMy9uby1zdWNoLW5hbWVz
cGFjZScsICd4bWw6bGFuZycsICd4LWJhcicpIiwgIidOYW1lc3BhY2VFcnJvciAoRE9NIEV4Y2Vw
dGlvbiAxNCk6IFRoZSBvcGVyYXRpb24gaXMgbm90IGFsbG93ZWQgYnkgTmFtZXNwYWNlcyBpbiBY
TUwuJyIpOwotCi0vLyBwYXJzZXIKLWZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnRGcm9tSFRNTChodG1s
KSB7Ci0gICB2YXIgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0g
ICBjb250YWluZXIuaW5uZXJIVE1MID0gaHRtbDsKLSAgIHJldHVybiBjb250YWluZXIuZmlyc3RD
aGlsZDsKLX0KLQotZm9vUGFyc2VkID0gY3JlYXRlRWxlbWVudEZyb21IVE1MKCc8eC1mb28+Jyk7
Ci1zaG91bGRCZVRydWUoImZvb1BhcnNlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIik7Ci0K
LWJhclBhcnNlZCA9IGNyZWF0ZUVsZW1lbnRGcm9tSFRNTCgnPGlucHV0IGlzPXgtYmFyPicpCi1z
aG91bGRCZVRydWUoImJhclBhcnNlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIik7Ci1zaG91
bGRCZVRydWUoImlzRm9ybUNvbnRyb2woYmFyUGFyc2VkKSIpOwotCi1kaXZGb29QYXJzZWQgPSBj
cmVhdGVFbGVtZW50RnJvbUhUTUwoJzxkaXYgaXM9eC1mb28+JykKLXNob3VsZEJlRmFsc2UoImRp
dkZvb1BhcnNlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoImRp
dkZvb1BhcnNlZCBpbnN0YW5jZW9mIEhUTUxEaXZFbGVtZW50Iik7Ci0KLW5hbWVkQmFyUGFyc2Vk
ID0gY3JlYXRlRWxlbWVudEZyb21IVE1MKCc8eC1iYXI+JykKLXNob3VsZEJlRmFsc2UoIm5hbWVk
QmFyUGFyc2VkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlVHJ1ZSgibmFt
ZWRCYXJQYXJzZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotZGl2QmFyUGFy
c2VkID0gY3JlYXRlRWxlbWVudEZyb21IVE1MKCc8ZGl2IGlzPXgtYmFyPicpCi1zaG91bGRCZUZh
bHNlKCJkaXZCYXJQYXJzZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciIpOwotc2hvdWxkQmVU
cnVlKCJkaXZCYXJQYXJzZWQgaW5zdGFuY2VvZiBIVE1MRGl2RWxlbWVudCIpOwotCi08L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3Nj
cmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3Rv
bS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWN1cnNpb24tZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHkt
Y3JlYXRlRWxlbWVudC1yZWN1cnNpb24tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisr
KyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1l
bnQtcmVjdXJzaW9uLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDYgKzAsMCBAQAot
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDk6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2Fs
bCBzdGFjayBzaXplIGV4Y2VlZGVkLgotUEFTUyB1bmxlc3MgY3Jhc2gKLVBBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJzaW9uLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1y
ZWFkeS1jcmVhdGVFbGVtZW50LXJlY3Vyc2lvbi5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQt
cmVjdXJzaW9uLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNyArMCwwIEBACi08IURPQ1RZUEUg
aHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pz
LXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHNjcmlwdD4KLWRvY3Vt
ZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0
ZXI7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1mb28iLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0
ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogZnVuY3Rp
b24gKCkgeyB0aGlzLmlubmVySFRNTCA9ICI8eC1mb28+SGVsbG88L3gtZm9vPiI7IH0gfSB9KSB9
KTsKLWlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsK
LWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtZm9vIik7Ci1kZWJ1ZygiUEFTUyB1bmxlc3MgY3Jh
c2giKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMv
ZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlZW50cmFuY3kt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9s
aWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWVudHJhbmN5LWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1y
ZWFkeS1jcmVhdGVFbGVtZW50LXJlZW50cmFuY3ktZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkK
QEAgLTEsMTMgKzAsMCBAQAotVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNh
bGxiYWNrIG9mIGEgcGFyc2VyLW1hZGUgZWxlbWVudCBpcyB2aXNpYmxlIGluIGZvbGxvd2luZyBz
Y3JpcHQgYmxvY2suCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHdpbmRv
dy5jYWxsYmFja3NDYWxsZWQgaXMgW10KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBb
J1gtRk9PJ10KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ1gtRk9PJywgJ1gtQkFS
J10KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ1gtRk9PJywgJ1gtQkFSJ10KLVBB
U1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQt
cmVlbnRyYW5jeS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3Rv
bS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWVudHJhbmN5Lmh0bWwJKHJldmlzaW9u
IDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHkt
Y3JlYXRlRWxlbWVudC1yZWVudHJhbmN5Lmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwzNCArMCww
IEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4v
Li4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQ+Ci1kZXNjcmlw
dGlvbigiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxiYWNrIG9mIGEg
cGFyc2VyLW1hZGUgZWxlbWVudCBpcyB2aXNpYmxlIGluIGZvbGxvd2luZyBzY3JpcHQgYmxvY2su
IikKLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Vi
a2l0UmVnaXN0ZXI7Ci0KLXdpbmRvdy5jYWxsYmFja3NDYWxsZWQgPSBbXTsKLQotZnVuY3Rpb24g
Zm9vQ3JlYXRlZEZ1bmN0aW9uKCkgewotICBzaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxl
ZCIsICJbXSIpOwotICB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkLnB1c2godGhpcy50YWdOYW1lKTsK
LSAgdGhpcy5pbm5lckhUTUwgPSAiPHgtYmFyPjwveC1iYXI+IjsKLSAgc2hvdWxkQmUoIndpbmRv
dy5jYWxsYmFja3NDYWxsZWQiLCAiWydYLUZPTycsICdYLUJBUiddIik7Ci19Ci0KLWZ1bmN0aW9u
IGJhckNyZWF0ZWRGdW5jdGlvbigpIHsKLSAgc2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxs
ZWQiLCAiWydYLUZPTyddIik7Ci0gIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQucHVzaCh0aGlzLnRh
Z05hbWUpOwotfQotCi1kb2N1bWVudC5yZWdpc3RlcigieC1mb28iLCB7IHByb3RvdHlwZTogT2Jq
ZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1
ZTogZm9vQ3JlYXRlZEZ1bmN0aW9uIH0gfSkgfSk7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1iYXIi
LCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVh
ZHlDYWxsYmFjazogeyB2YWx1ZTogYmFyQ3JlYXRlZEZ1bmN0aW9uIH0gfSkgfSk7Ci08L3Njcmlw
dD4KLTwvaGVhZD4KLTxib2R5PgotPHNjcmlwdD4KLWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngt
Zm9vIik7Ci1zaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gtRk9PJywgJ1gt
QkFSJ10iKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGlvbi1hcGktZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUt
cmVhZHktY3JlYXRpb24tYXBpLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5
b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGlvbi1hcGktZXhw
ZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsMjcgKzAsMCBAQAotVGhpcyB0ZXN0IGVuc3Vy
ZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxiYWNrcyBvZiBBUEktb3JpZ2luYXRlZCBlbGVtZW50
cyBhcmUgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJsb2NrLgotCi1PbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVT
VCBDT01QTEVURSIuCi0KLQotUEFTUyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd4LWZvbycpLmNh
bGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2Rpdics
ICd4LWJhcicpLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnROUygnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcsICd4LWZvbycpLmNhbGxiYWNr
c0NhbGxlZCBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygnaHR0cDovL3d3
dy53My5vcmcvMTk5OS94aHRtbCcsICdkaXYnLCAneC1iYXInKS5jYWxsYmFja3NDYWxsZWQgaXMg
dHJ1ZQotUEFTUyBmb28uY2xvbmVOb2RlKCkuY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBBU1Mg
Zm9vLmNsb25lTm9kZSh0cnVlKS5maXJzdENoaWxkLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1Q
QVNTIGJhci5jbG9uZU5vZGUoKS5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyBiYXIuY2xv
bmVOb2RlKHRydWUpLmZpcnN0Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBBU1MgZm9y
ZWlnbkZvby5jYWxsYmFja3NDYWxsZWQgaXMgdW5kZWZpbmVkLgotUEFTUyBmb3JlaWduRm9vLmZp
cnN0Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIGlzIHVuZGVmaW5lZC4KLVBBU1MgaW1wb3J0ZWRGb28u
Y2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBBU1MgaW1wb3J0ZWRGb28uZmlyc3RDaGlsZC5jYWxs
YmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFtdCi1Q
QVNTIGltcG9ydGVkQmFyLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGltcG9ydGVkQmFy
LmZpcnN0Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBBU1Mgd2luZG93LmNhbGxiYWNr
c0NhbGxlZCBpcyBbJ0RJVicsICdYLUZPTyddCi1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQg
aXMgWydYLUZPTyddCi1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydYLUZPTyddCi1Q
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGlvbi1hcGku
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xl
LXJlYWR5LWNyZWF0aW9uLWFwaS5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0aW9uLWFwaS5odG1sCShub25l
eGlzdGVudCkKQEAgLTEsNzQgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxp
ZmVjeWNsZSBjYWxsYmFja3Mgb2YgQVBJLW9yaWdpbmF0ZWQgZWxlbWVudHMgYXJlIHZpc2libGUg
aW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4iKQotd2luZG93LmNhbGxiYWNrc0NhbGxlZCA9IFtd
OwotZnVuY3Rpb24gbWFya2luZ1JlYWR5Q2FsbGJhY2soKSB7Ci0gICAgd2luZG93LmNhbGxiYWNr
c0NhbGxlZC5wdXNoKHRoaXMudGFnTmFtZSk7Ci0gICAgdGhpcy5jYWxsYmFja3NDYWxsZWQgPSB0
cnVlOwotfQotCi1kb2N1bWVudC5yZWdpc3RlciA9IGRvY3VtZW50LnJlZ2lzdGVyIHx8IGRvY3Vt
ZW50LndlYmtpdFJlZ2lzdGVyOwotZG9jdW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5
cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6
IHsgdmFsdWU6IG1hcmtpbmdSZWFkeUNhbGxiYWNrIH0gfSkgfSk7Ci1kb2N1bWVudC5yZWdpc3Rl
cigieC1iYXIiLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRGl2RWxlbWVudC5wcm90
b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogbWFya2luZ1JlYWR5Q2FsbGJhY2sgfSB9
KSB9KTsKLTwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJjb250YWluZXIiPjwv
ZGl2PgotPGRpdiBpZD0iaG9zdCI+PC9kaXY+Ci0KLTxzY3JpcHQ+Ci0KLXNob3VsZEJlVHJ1ZSgi
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgneC1mb28nKS5jYWxsYmFja3NDYWxsZWQiKTsKLXNob3Vs
ZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JywgJ3gtYmFyJykuY2FsbGJhY2tz
Q2FsbGVkIik7Ci0KLXNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCdodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ3gtZm9vJykuY2FsbGJhY2tzQ2FsbGVkIik7Ci1z
aG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygnaHR0cDovL3d3dy53My5vcmcv
MTk5OS94aHRtbCcsICdkaXYnLCAneC1iYXInKS5jYWxsYmFja3NDYWxsZWQiKTsKLQotdmFyIGZv
byA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3gtZm9vJyk7Ci1mb28uYXBwZW5kQ2hpbGQoZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JywgJ3gtYmFyJykpOwotc2hvdWxkQmVUcnVlKCJmb28u
Y2xvbmVOb2RlKCkuY2FsbGJhY2tzQ2FsbGVkIik7Ci1zaG91bGRCZVRydWUoImZvby5jbG9uZU5v
ZGUodHJ1ZSkuZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQiKTsKLQotdmFyIGJhciA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicsICd4LWJhcicpOwotYmFyLmFwcGVuZENoaWxkKGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoJ3gtZm9vJykpOwotc2hvdWxkQmVUcnVlKCJiYXIuY2xvbmVOb2Rl
KCkuY2FsbGJhY2tzQ2FsbGVkIik7Ci1zaG91bGRCZVRydWUoImJhci5jbG9uZU5vZGUodHJ1ZSku
Zmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQiKTsKLQotdmFyIGZvcmVpZ25Eb2MgPSBkb2N1bWVu
dC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudCgnaHR0cDovL3d3dy53My5vcmcvMTk5OS94
aHRtbCcsICdodG1sJywgbnVsbCk7Ci0KLXZhciBmb3JlaWduRm9vID0gZm9yZWlnbkRvYy5jcmVh
dGVFbGVtZW50KCd4LWZvbycpOwotZm9yZWlnbkZvby5hcHBlbmRDaGlsZChmb3JlaWduRG9jLmNy
ZWF0ZUVsZW1lbnQoJ2RpdicsICd4LWJhcicpKTsKLXNob3VsZEJlVW5kZWZpbmVkKCJmb3JlaWdu
Rm9vLmNhbGxiYWNrc0NhbGxlZCIpOwotc2hvdWxkQmVVbmRlZmluZWQoImZvcmVpZ25Gb28uZmly
c3RDaGlsZC5jYWxsYmFja3NDYWxsZWQiKTsKLWltcG9ydGVkRm9vID0gZG9jdW1lbnQuaW1wb3J0
Tm9kZShmb3JlaWduRm9vKQotc2hvdWxkQmVUcnVlKCJpbXBvcnRlZEZvby5jYWxsYmFja3NDYWxs
ZWQiKTsKLXNob3VsZEJlVHJ1ZSgiaW1wb3J0ZWRGb28uZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxs
ZWQiKTsKLQotd2luZG93LmNhbGxiYWNrc0NhbGxlZCA9IFtdOwotdmFyIGZvcmVpZ25CYXIgPSBm
b3JlaWduRG9jLmNyZWF0ZUVsZW1lbnQoJ2RpdicsICd4LWJhcicpOwotZm9yZWlnbkJhci5hcHBl
bmRDaGlsZChmb3JlaWduRG9jLmNyZWF0ZUVsZW1lbnQoJ3gtZm9vJykpOwotc2hvdWxkQmUoIndp
bmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiW10iKTsKLWltcG9ydGVkQmFyID0gZG9jdW1lbnQuaW1w
b3J0Tm9kZShmb3JlaWduQmFyKTsKLXNob3VsZEJlVHJ1ZSgiaW1wb3J0ZWRCYXIuY2FsbGJhY2tz
Q2FsbGVkIik7Ci1zaG91bGRCZVRydWUoImltcG9ydGVkQmFyLmZpcnN0Q2hpbGQuY2FsbGJhY2tz
Q2FsbGVkIik7Ci1zaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ0RJVicsICdY
LUZPTyddIik7Ci0KLXdpbmRvdy5jYWxsYmFja3NDYWxsZWQgPSBbXTsKLXZhciB0b0JlUmVwbGFj
ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLWRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQodG9CZVJlcGxhY2VkKTsKLXRvQmVSZXBsYWNlZC5vdXRlckhUTUwgPSAiPHgtZm9vPjwv
eC1mb28+IjsKLXNob3VsZEJlKCJ3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIiwgIlsnWC1GT08nXSIp
OwotCi13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci12YXIgaW5zZXJ0aW9uUGxhY2VIb2xk
ZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLWRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQoaW5zZXJ0aW9uUGxhY2VIb2xkZXIpOwotaW5zZXJ0aW9uUGxhY2VIb2xkZXIuaW5zZXJ0
QWRqYWNlbnRIVE1MKCJiZWZvcmViZWdpbiIsICI8eC1mb28+PC94LWZvbz4iKTsKLXNob3VsZEJl
KCJ3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIiwgIlsnWC1GT08nXSIpOwotCi08L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
LTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZl
Y3ljbGUtcmVhZHktaW5uZXJIVE1MLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWlubmVySFRNTC1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZl
Y3ljbGUtcmVhZHktaW5uZXJIVE1MLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDEx
ICswLDAgQEAKLVRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxsYmFjayBv
ZiBhIHBhcnNlci1tYWRlIGVsZW1lbnQgaXMgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJs
b2NrLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyB3aW5kb3cuY2FsbGJh
Y2tzQ2FsbGVkIGlzIFsnYScsICdiJywgJ2MnXQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVk
IGlzIFsnYScsICdiJywgJ2MnXQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1U
RVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3lj
bGUtcmVhZHktaW5uZXJIVE1MLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9k
b20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhUTUwuaHRtbAkocmV2aXNpb24gMjAzNzMy
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhU
TUwuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDM2ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgot
PGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJUaGlzIHRlc3QgZW5zdXJl
cyB0aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJhY2sgb2YgYSBwYXJzZXItbWFkZSBlbGVtZW50IGlz
IHZpc2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4iKQotZG9jdW1lbnQucmVnaXN0ZXIg
PSBkb2N1bWVudC5yZWdpc3RlciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3RlcjsKLQotd2luZG93
LmNhbGxiYWNrc0NhbGxlZCA9IFtdOwotCi1mdW5jdGlvbiB0cmFja2luZ1JlYWR5Q2FsbGJhY2so
KQotewotICAgIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQucHVzaCh0aGlzLmlkKTsKLX0KLQotZG9j
dW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVs
ZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFsdWU6IHRyYWNraW5nUmVhZHlD
YWxsYmFjayB9IH0pIH0pOwotZG9jdW1lbnQucmVnaXN0ZXIoIngtYmFyIiwgeyBwcm90b3R5cGU6
IE9iamVjdC5jcmVhdGUoSFRNTERpdkVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6
IHsgdmFsdWU6IHRyYWNraW5nUmVhZHlDYWxsYmFjayB9IH0pIH0pOwotZG9jdW1lbnQucmVnaXN0
ZXIoIngtYmF6IiwgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90
eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFsdWU6IHRyYWNraW5nUmVhZHlDYWxsYmFjayB9IH0p
IH0pOwotPC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+Ci08
c2NyaXB0PgotLy8gVGVzdGluZyBlbGVtZW50IHNpYmxpbmdzCi13aW5kb3cuY2FsbGJhY2tzQ2Fs
bGVkID0gW107Ci1jb250YWluZXIuaW5uZXJIVE1MID0gIjx4LWZvbyBpZD0nYSc+PC94LWZvbz48
ZGl2IGlkPSdiJyBpcz0neC1iYXInPjwvZGl2Pjx4LWJheiBpZD0nYyc+PC94LWJhej4iOwotc2hv
dWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiWydhJywgJ2InLCAnYyddIik7Ci0KLS8v
IFRlc3RpbmcgbmVzdGVkIGVsZW1lbnRzCi13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci1j
b250YWluZXIuaW5uZXJIVE1MID0gIjx4LWZvbyBpZD0nYSc+PGRpdiBpZD0nYicgaXM9J3gtYmFy
Jz48eC1iYXogaWQ9J2MnPjwveC1iYXo+PC9kaXY+PC94LWZvbz4iOwotc2hvdWxkQmUoIndpbmRv
dy5jYWxsYmFja3NDYWxsZWQiLCAiWydhJywgJ2InLCAnYyddIik7Ci08L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3lj
bGUtcmVhZHktcGFyc2VyLW9ubHktZXhwZWN0ZWQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1vbmx5LWV4cGVjdGVk
Lmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9s
aWZlY3ljbGUtcmVhZHktcGFyc2VyLW9ubHktZXhwZWN0ZWQuaHRtbAkobm9uZXhpc3RlbnQpCkBA
IC0xLDYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxib2R5PgotPHNwYW4+SGVs
bG88L3NwYW4+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9j
dXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1vbmx5Lmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItb25seS5odG1s
CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5
Y2xlLXJlYWR5LXBhcnNlci1vbmx5Lmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMyArMCwwIEBA
Ci08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0PgotZG9jdW1lbnQucmVn
aXN0ZXIgPSBkb2N1bWVudC5yZWdpc3RlciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3RlcjsKLXBy
b3RvID0gT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFj
azogeyB2YWx1ZTogZnVuY3Rpb24oKSB7IHRoaXMuaW5uZXJIVE1MID0gIkhlbGxvIjsgfSB9IH0p
OwotZG9jdW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5cGU6IHByb3RvIH0pOwotPC9z
Y3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTx4LWZvbz48L3gtZm9vPgotPC9ib2R5PgotPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJz
ZXItc2NyaXB0LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1zY3JpcHQtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJl
YWR5LXBhcnNlci1zY3JpcHQtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsMTAgKzAs
MCBAQAotVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxiYWNrIG9mIGEg
cGFyc2VyLW1hZGUgZWxlbWVudCBpcyB2aXNpYmxlIGluIGZvbGxvd2luZyBzY3JpcHQgYmxvY2su
Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHdpbmRvdy5jYWxsYmFja3ND
YWxsZWQgaXMgdHJ1ZQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENP
TVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVh
ZHktcGFyc2VyLXNjcmlwdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9t
L2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNjcmlwdC5odG1sCShyZXZpc2lvbiAyMDM3
MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNl
ci1zY3JpcHQuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDE5ICswLDAgQEAKLTwhRE9DVFlQRSBo
dG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJUaGlzIHRlc3Qg
ZW5zdXJlcyB0aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJhY2sgb2YgYSBwYXJzZXItbWFkZSBlbGVt
ZW50IGlzIHZpc2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4iKQotZG9jdW1lbnQucmVn
aXN0ZXIgPSBkb2N1bWVudC5yZWdpc3RlciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3RlcjsKLXBy
b3RvID0gT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFj
azogeyB2YWx1ZTogZnVuY3Rpb24oKSB7IHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgPSB0cnVlOyB9
IH0gfSk7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1mb28iLCB7IHByb3RvdHlwZTogcHJvdG8gfSk7
Ci08L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHgtZm9vPjwveC1mb28+Ci08c2NyaXB0Pgot
c2hvdWxkQmVUcnVlKCJ3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIik7Ci08L3NjcmlwdD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwv
Ym9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3lj
bGUtcmVhZHktcGFzdGUtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5
LXBhc3RlLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDExICswLDAgQEAKLVRoaXMg
dGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxsYmFja3Mgb2YgZWRpdGluZy1vcmln
aW5hdGVkIGVsZW1lbnRzIGFyZSB2aXNpYmxlIGluIGZvbGxvd2luZyBzY3JpcHQgYmxvY2suCi0K
LU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxs
ZWQgaXMgWydYLUZPTycsICdESVYnXQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsn
WC1GT08nLCAnRElWJywgJ1gtRk9PJywgJ0RJViddCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3Vz
dG9tL2xpZmVjeWNsZS1yZWFkeS1wYXN0ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUuaHRtbAkocmV2aXNpb24gMjAz
NzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXN0
ZS5odG1sCShub25leGlzdGVudCkKQEAgLTEsMzAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08
aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBlbnN1cmVz
IHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxsYmFja3Mgb2YgZWRpdGluZy1vcmlnaW5hdGVkIGVsZW1l
bnRzIGFyZSB2aXNpYmxlIGluIGZvbGxvd2luZyBzY3JpcHQgYmxvY2suIikKLWRvY3VtZW50LnJl
Z2lzdGVyID0gZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci13
aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci1kb2N1bWVudC5yZWdpc3RlcigieC1mb28iLCB7
IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlD
YWxsYmFjazogeyB2YWx1ZTogZnVuY3Rpb24oKSB7IHdpbmRvdy5jYWxsYmFja3NDYWxsZWQucHVz
aCh0aGlzLnRhZ05hbWUpOyB9IH0gfSkgfSk7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1iYXIiLCB7
IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUsIHsgcmVh
ZHlDYWxsYmFjazogeyB2YWx1ZTogZnVuY3Rpb24oKSB7IHdpbmRvdy5jYWxsYmFja3NDYWxsZWQu
cHVzaCh0aGlzLnRhZ05hbWUpOyB9IH0gfSkgfSk7Ci08L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5
PgotPGRpdiBpZD0iY29udGFpbmVyIiBjb250ZW50ZWRpdGFibGU+Wzx4LWZvbz5Gb288L3gtZm9v
PjxkaXYgaXM9J3gtYmFyJz5CYXI8L2Rpdj5dPC9kaXY+Ci08c2NyaXB0PgotdmFyIHNlbGVjdGlv
biA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKLQotc2VsZWN0aW9uLnNlbGVjdEFsbENoaWxkcmVu
KGNvbnRhaW5lcik7Ci1kb2N1bWVudC5leGVjQ29tbWFuZCgiQ29weSIpOwotCi1zaG91bGRCZSgi
d2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gtRk9PJywgJ0RJViddIik7Ci1zZWxlY3Rpb24u
Y29sbGFwc2VUb0VuZCgpOwotZG9jdW1lbnQuZXhlY0NvbW1hbmQoIlBhc3RlIik7Ci1zaG91bGRC
ZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gtRk9PJywgJ0RJVicsICdYLUZPTycsICdE
SVYnXSIpOwotCi1jb250YWluZXIuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKLTwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0
PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL3Jl
c291cmNlcy9kb2N1bWVudC1yZWdpc3Rlci1mdXp6LmpzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvZG9tL2N1c3RvbS9yZXNvdXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcwko
cmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL3Jlc291cmNl
cy9kb2N1bWVudC1yZWdpc3Rlci1mdXp6LmpzCShub25leGlzdGVudCkKQEAgLTEsNDkgKzAsMCBA
QAotCi1mdW5jdGlvbiBzZXR1cE9iamVjdEhvb2tzKGhvb2tzKQotewotICAgIC8vIFdyYXBwZXIg
Zm9yIHRoZXNlIG9iamVjdCBzaG91bGQgYmUgbWF0ZXJpYWxpemVkIGJlZm9yZSBzZXR0aW5nIGhv
b2tzLgotICAgIGNvbnNvbGUubG9nOwotICAgIGRvY3VtZW50LndlYmtpdFJlZ2lzdGVyCi0gICAg
SFRNTFNwYW5FbGVtZW50LnByb3RvdHlwZTsKLQotICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShP
YmplY3QucHJvdG90eXBlLCAicHJvdG90eXBlIiwgewotICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkg
eyByZXR1cm4gaG9va3MucHJvdG90eXBlR2V0KCk7IH0sCi0gICAgICAgIHNldDogZnVuY3Rpb24o
dmFsdWUpIHsgcmV0dXJuIGhvb2tzLnByb3RvdHlwZVNldCh2YWx1ZSk7IH0KLSAgICB9KTsKLQot
ICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAiY29uc3RydWN0b3Ii
LCB7Ci0gICAgICAgIGdldDogZnVuY3Rpb24oKSB7IHJldHVybiBob29rcy5jb25zdHJ1Y3Rvckdl
dCgpOyB9LAotICAgICAgICBzZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7IHJldHVybiBob29rcy5jb25z
dHJ1Y3RvclNldCh2YWx1ZSk7IH0KLSAgICB9KTsKLQotICAgIHJldHVybiBob29rczsKLX0KLQot
ZnVuY3Rpb24gZXhlcmNpc2VEb2N1bWVudFJlZ2lzdGVyKCkKLXsKLSAgICB2YXIgbXlDb25zdHJ1
Y3RvciA9IG51bGw7Ci0gICAgdmFyIG15UHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShIVE1MRWxl
bWVudC5wcm90b3R5cGUpOwotICAgIHRyeSB7Ci0gICAgICAgIG15Q29uc3RydWN0b3IgPSBkb2N1
bWVudC53ZWJraXRSZWdpc3RlcigieC1kby1ub3RoaW5nIiwgeyBwcm90b3R5cGU6IG15UHJvdG90
eXBlIH0pOwotICAgIH0gY2F0Y2ggKGUpIHsgfQotCi0gICAgdHJ5IHsKLSAgICAgICAgaWYgKCFt
eUNvbnN0cnVjdG9yKSB7Ci0gICAgICAgICAgICBkZWJ1ZygiQ29uc3RydWN0b3Igb2JqZWN0IGlz
bid0IGNyZWF0ZWQuIik7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLQotICAgICAg
ICBpZiAobXlDb25zdHJ1Y3Rvci5wcm90b3R5cGUgIT0gbXlQcm90b3R5cGUpIHsKLSAgICAgICAg
ICAgIGNvbnNvbGUubG9nKCJGQUlMOiBiYWQgcHJvdG90eXBlIik7Ci0gICAgICAgICAgICByZXR1
cm47Ci0gICAgICAgICB9Ci0KLSAgICAgICAgdmFyIGVsZW1lbnQgPSBuZXcgbXlDb25zdHJ1Y3Rv
cigpOwotICAgICAgICBpZiAoIWVsZW1lbnQpCi0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
IGlmIChlbGVtZW50LmNvbnN0cnVjdG9yICE9IG15Q29uc3RydWN0b3IpIHsKLSAgICAgICAgICAg
IGNvbnNvbGUubG9nKCJGQUlMOiBiYWQgY29uc3RydWN0b3IiKTsKLSAgICAgICAgICAgIHJldHVy
bjsKLSAgICAgICAgIH0KLSAgICB9IGNhdGNoIChlKSB7IGNvbnNvbGUubG9nKGUpOyB9Ci19Cklu
ZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItYmFzaWMt
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9k
b2N1bWVudC1yZWdpc3Rlci1iYXNpYy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysr
IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1iYXNpYy1leHBl
Y3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSw0OSArMCwwIEBACi1UZXN0aW5nIGRvY3VtZW50
LnJlZ2lzdGVyKCkgYmFzaWMgYmVoYXZpb3JzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
Ci0KLQotUEFTUyBkb2N1bWVudC5yZWdpc3RlcignZm9vJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRl
cnMoKSkgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4Y2VwdGlv
biA1KTogVGhlIHN0cmluZyBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcnMuLgotUEFTUyBkb2N1
bWVudC5yZWdpc3RlcigneGZvbycsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpIHRocmV3IGV4
Y2VwdGlvbiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24gNSk6IFRoZSBzdHJp
bmcgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzLi4KLVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIo
J21pc3NpbmctZ2x5cGgnLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSB0aHJldyBleGNlcHRp
b24gSW52YWxpZENoYXJhY3RlckVycm9yIChET00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNv
bnRhaW5zIGludmFsaWQgY2hhcmFjdGVycy4uCi1QQVNTIHR5cGVvZiBmb29Db25zdHJ1Y3RvciBp
cyAnZnVuY3Rpb24nCi1QQVNTIGZvb0NvbnN0cnVjdG9yLnByb3RvdHlwZS5fX3Byb3RvX18gaXMg
SFRNTEVsZW1lbnQucHJvdG90eXBlCi1QQVNTIGZvb0NvbnN0cnVjdG9yLnByb3RvdHlwZS50aGlz
SXNQcm90b3R5cGUgaXMgdHJ1ZQotUEFTUyBkb2N1bWVudC5yZWdpc3RlcigneC1mb28nLCBjcmVh
dGVSZWdpc3RlclBhcmFtdGVycygpKSB0aHJldyBleGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3Ig
KERPTSBFeGNlcHRpb24gMTEpOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLgot
UEFTUyBkb2N1bWVudC5yZWdpc3RlcignWC1GT08nLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygp
KSB0aHJldyBleGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNlcHRpb24gMTEpOiBU
aGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLgotUEFTUyBkb2N1bWVudC5yZWdpc3Rl
cigneC1iYWQtYScsIHsgcHJvdG90eXBlOiBIVE1MRWxlbWVudC5wcm90b3R5cGUgfSkgdGhyZXcg
ZXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVj
dCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4KLVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFk
LWInLCB7IHByb3RvdHlwZToge30gfSkgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9y
IChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4K
LVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFkLWMnLCB7IHByb3RvdHlwZTogT2JqZWN0LmNy
ZWF0ZShEb2N1bWVudC5wcm90b3R5cGUpIH0pIHRocmV3IGV4Y2VwdGlvbiBJbnZhbGlkU3RhdGVF
cnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0
ZS4uCi1QQVNTIGZvb0NvbnN0cnVjdG9yKCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogRE9N
IG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uLgotUEFT
UyBjcmVhdGVkRm9vLl9fcHJvdG9fXyBpcyBmb29Db25zdHJ1Y3Rvci5wcm90b3R5cGUKLVBBU1Mg
Y3JlYXRlZEZvby5jb25zdHJ1Y3RvciBpcyBmb29Db25zdHJ1Y3RvcgotUEFTUyBjcmVhdGVkRm9v
LnRhZ05hbWUgaXMgJ1gtRk9PJwotUEFTUyBjcmVhdGVkRm9vLnRleHRDb250ZW50IGlzICdIZWxs
bycKLVBBU1MgY3JlYXRlZEZvby5sYXN0Q2hpbGQgaXMgY2hpbGREaXYKLVBBU1MgcGFyc2VkRm9v
Ll9fcHJvdG9fXyBpcyBmb29Db25zdHJ1Y3Rvci5wcm90b3R5cGUKLVBBU1MgcGFyc2VkRm9vLnRh
Z05hbWUgaXMgJ1gtRk9PJwotUEFTUyBwYXJzZWRGb28uc29tZVByb3BlcnR5IGlzIGNvbnRhaW5l
ci5maXJzdENoaWxkLnNvbWVQcm9wZXJ0eQotUEFTUyBiYXJDb25zdHJ1Y3RvciAhPT0gZm9vQ29u
c3RydWN0b3IgaXMgdHJ1ZQotUEFTUyBjcmVhdGVkQmFyLnRhZ05hbWUgaXMgJ1gtQkFSJwotUEFT
UyBjcmVhdGVkQmF6LnRhZ05hbWUgaXMgJ1gtQkFaJwotUEFTUyBjcmVhdGVkQmF6LnRoaXNJc1By
b3RvdHlwZSBpcyB0cnVlCi1QQVNTIGNyZWF0ZWRCYXoudGhpc0lzQWxzb1Byb3RvdHlwZSBpcyB0
cnVlCi1QQVNTIGNyZWF0ZWRVcHBlckJhci5jb25zdHJ1Y3RvciBpcyBiYXJDb25zdHJ1Y3Rvcgot
UEFTUyBjcmVhdGVkVXBwZXJCYXIudGFnTmFtZSBpcyAnWC1CQVInCi1QQVNTIGNyZWF0ZWRNaXhl
ZEJhci5jb25zdHJ1Y3RvciBpcyBiYXJDb25zdHJ1Y3RvcgotUEFTUyBjcmVhdGVkTWl4ZWRCYXIu
dGFnTmFtZSBpcyAnWC1CQVInCi1QQVNTIGNvbnRhaW5lci5maXJzdENoaWxkLmNvbnN0cnVjdG9y
IGlzIGJhckNvbnN0cnVjdG9yCi1QQVNTIGNvbnRhaW5lci5maXJzdENoaWxkLnRhZ05hbWUgaXMg
J1gtQkFSJwotUEFTUyBjb250YWluZXIubGFzdENoaWxkLmNvbnN0cnVjdG9yIGlzIGJhckNvbnN0
cnVjdG9yCi1QQVNTIGNvbnRhaW5lci5sYXN0Q2hpbGQudGFnTmFtZSBpcyAnWC1CQVInCi1QQVNT
IChuZXcgKGRvY3VtZW50LnJlZ2lzdGVyKCd5LWJhcicsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJz
KCkpKSgpKS50YWdOYW1lIGlzICdZLUJBUicKLVBBU1MgKG5ldyAoZG9jdW1lbnQucmVnaXN0ZXIo
J3l6LWJhcicsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpKSgpKS50YWdOYW1lIGlzICdZWi1C
QVInCi1QQVNTIChuZXcgKGRvY3VtZW50LnJlZ2lzdGVyKCd5LXotYmFyJywgY3JlYXRlUmVnaXN0
ZXJQYXJhbXRlcnMoKSkpKCkpLnRhZ05hbWUgaXMgJ1ktWi1CQVInCi1QQVNTIChuZXcgKGRvY3Vt
ZW50LnJlZ2lzdGVyKCd5LS1iYXInLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSkoKSkudGFn
TmFtZSBpcyAnWS0tQkFSJwotUEFTUyAobmV3IGZvb0NvbnN0cnVjdG9yKS50YWdOYW1lIGlzICdY
LUZPTycKLVBBU1MgKG5ldyBiYXJDb25zdHJ1Y3RvcikudGFnTmFtZSBpcyAnWC1CQVInCi1QQVNT
IChuZXcgYmF6Q29uc3RydWN0b3IpLnRhZ05hbWUgaXMgJ1gtQkFaJwotUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1iYXNpYy5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1iYXNpYy5odG1s
CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1l
bnQtcmVnaXN0ZXItYmFzaWMuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDExNyArMCwwIEBACi08
IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBp
ZD0iY29udGFpbmVyIj48L2Rpdj4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiVGVzdGluZyBkb2N1
bWVudC5yZWdpc3RlcigpIGJhc2ljIGJlaGF2aW9ycy4iKTsKLQotaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQotICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotZG9jdW1lbnQucmVnaXN0ZXIgPSBk
b2N1bWVudC5yZWdpc3RlciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3RlcjsKLQotZnVuY3Rpb24g
Y3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKQotewotICAgIHJldHVybiB7Ci0gICAgICAgIHByb3Rv
dHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgdGhpc0lzUHJvdG90
eXBlOiB7IHZhbHVlOiB0cnVlIH0gfSkKLSAgICB9OwotfQotCi0vLyBJbnZhbGlkIG5hbWVzCi1z
aG91bGRUaHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ2ZvbycsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10
ZXJzKCkpIiwgIidJbnZhbGlkQ2hhcmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24gNSk6IFRoZSBz
dHJpbmcgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzLiciKTsKLXNob3VsZFRocm93KCJkb2N1
bWVudC5yZWdpc3RlcigneGZvbycsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpIiwgIidJbnZh
bGlkQ2hhcmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24gNSk6IFRoZSBzdHJpbmcgY29udGFpbnMg
aW52YWxpZCBjaGFyYWN0ZXJzLiciKTsKLXNob3VsZFRocm93KCJkb2N1bWVudC5yZWdpc3Rlcign
bWlzc2luZy1nbHlwaCcsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpIiwgIidJbnZhbGlkQ2hh
cmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24gNSk6IFRoZSBzdHJpbmcgY29udGFpbnMgaW52YWxp
ZCBjaGFyYWN0ZXJzLiciKTsKLQotdmFyIGZvb0NvbnN0cnVjdG9yID0gZG9jdW1lbnQucmVnaXN0
ZXIoIngtZm9vIiwgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSk7Ci1zaG91bGRCZSgidHlwZW9m
IGZvb0NvbnN0cnVjdG9yIiwgIidmdW5jdGlvbiciKTsKLXNob3VsZEJlKCJmb29Db25zdHJ1Y3Rv
ci5wcm90b3R5cGUuX19wcm90b19fIiwgIkhUTUxFbGVtZW50LnByb3RvdHlwZSIpOwotc2hvdWxk
QmVUcnVlKCJmb29Db25zdHJ1Y3Rvci5wcm90b3R5cGUudGhpc0lzUHJvdG90eXBlIik7Ci0KLS8v
IE5hbWUgY29uZmxpY3RzCi1zaG91bGRUaHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ3gtZm9vJywg
Y3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkiLCAiJ0ludmFsaWRTdGF0ZUVycm9yIChET00gRXhj
ZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiciKTsKLXNob3Vs
ZFRocm93KCJkb2N1bWVudC5yZWdpc3RlcignWC1GT08nLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVy
cygpKSIsICInSW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNlcHRpb24gMTEpOiBUaGUgb2JqZWN0
IGlzIGluIGFuIGludmFsaWQgc3RhdGUuJyIpOwotCi0vLyBCYWQgcHJvdG90eXBlOiBjb25zdHJ1
Y3RvciBwcm9wZXJ0eSBleGlzdHMKLXNob3VsZFRocm93KCJkb2N1bWVudC5yZWdpc3RlcigneC1i
YWQtYScsIHsgcHJvdG90eXBlOiBIVE1MRWxlbWVudC5wcm90b3R5cGUgfSkiLCAiJ0ludmFsaWRT
dGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlk
IHN0YXRlLiciKTsKLS8vIEJhZCBwcm90b3R5cGU6IG1pc3NpbmcgX19wcm90b19fCi1zaG91bGRU
aHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFkLWInLCB7IHByb3RvdHlwZToge30gfSkiLCAi
J0ludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLiciKTsKLS8vIEJhZCBwcm90b3R5cGU6IHdyb25nIF9fcHJvdG9fXwot
c2hvdWxkVGhyb3coImRvY3VtZW50LnJlZ2lzdGVyKCd4LWJhZC1jJywgeyBwcm90b3R5cGU6IE9i
amVjdC5jcmVhdGUoRG9jdW1lbnQucHJvdG90eXBlKSB9KSIsICInSW52YWxpZFN0YXRlRXJyb3Ig
KERPTSBFeGNlcHRpb24gMTEpOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuJyIp
OwotLy8gQ2FsbCBhcyBmdW5jdGlvbgotc2hvdWxkVGhyb3coImZvb0NvbnN0cnVjdG9yKCkiLCAi
J1R5cGVFcnJvcjogRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEg
ZnVuY3Rpb24uJyIpCi0KLS8vIENvbnN0cnVjdG9yIGluaXRpYXRlZCBpbnN0YW50aWF0aW9uCi12
YXIgY3JlYXRlZEZvbyA9IG5ldyBmb29Db25zdHJ1Y3RvcigpOwotCi0vLyBKUyBidWlsdC1pbiBw
cm9wZXJ0aWVzCi1zaG91bGRCZSgiY3JlYXRlZEZvby5fX3Byb3RvX18iLCAiZm9vQ29uc3RydWN0
b3IucHJvdG90eXBlIik7Ci1zaG91bGRCZSgiY3JlYXRlZEZvby5jb25zdHJ1Y3RvciIsICJmb29D
b25zdHJ1Y3RvciIpOwotCi0vLyBOYXRpdmUgZ2V0dGVyCi1zaG91bGRCZSgiY3JlYXRlZEZvby50
YWdOYW1lIiwgIidYLUZPTyciKTsKLQotLy8gTmF0aXZlIHNldHRlcgotY3JlYXRlZEZvby5pbm5l
ckhUTUwgPSAiSGVsbG8iOwotc2hvdWxkQmUoImNyZWF0ZWRGb28udGV4dENvbnRlbnQiLCAiJ0hl
bGxvJyIpOwotCi0vLyBOYXRpdmUgbWV0aG9kCi12YXIgY2hpbGREaXYgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJkaXYiKTsKLWNyZWF0ZWRGb28uYXBwZW5kQ2hpbGQoY2hpbGREaXYpOwotc2hv
dWxkQmUoImNyZWF0ZWRGb28ubGFzdENoaWxkIiwgImNoaWxkRGl2Iik7Ci0KLS8vIFBhcnNlciBp
bml0aWF0ZWQgaW5zdGFudGlhdGlvbgotdmFyIGNvbnRhaW5lciA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJjb250YWluZXIiKTsKLWNvbnRhaW5lci5pbm5lckhUTUwgPSAiPHgtZm9vPjwveC1m
b28+IjsKLXBhcnNlZEZvbyA9IGNvbnRhaW5lci5maXJzdENoaWxkOwotCi1zaG91bGRCZSgicGFy
c2VkRm9vLl9fcHJvdG9fXyIsICJmb29Db25zdHJ1Y3Rvci5wcm90b3R5cGUiKTsKLXNob3VsZEJl
KCJwYXJzZWRGb28udGFnTmFtZSIsICInWC1GT08nIik7Ci0KLS8vIEVuc3VyaW5nIHRoZSB3cmFw
cGVyIGlzIHJldGFpbmVkCi1wYXJzZWRGb28uc29tZVByb3BlcnR5ID0gImhlbGxvIjsKLXNob3Vs
ZEJlKCJwYXJzZWRGb28uc29tZVByb3BlcnR5IiwgImNvbnRhaW5lci5maXJzdENoaWxkLnNvbWVQ
cm9wZXJ0eSIpOwotCi0vLyBIYXZpbmcgYW5vdGhlciBjb25zdHJ1Y3RvcgotdmFyIGJhckNvbnN0
cnVjdG9yID0gZG9jdW1lbnQucmVnaXN0ZXIoIngtYmFyIiwgY3JlYXRlUmVnaXN0ZXJQYXJhbXRl
cnMoKSk7Ci1zaG91bGRCZVRydWUoImJhckNvbnN0cnVjdG9yICE9PSBmb29Db25zdHJ1Y3RvciIp
OwotdmFyIGNyZWF0ZWRCYXIgPSBuZXcgYmFyQ29uc3RydWN0b3IoKTsKLXNob3VsZEJlKCJjcmVh
dGVkQmFyLnRhZ05hbWUiLCAiJ1gtQkFSJyIpOwotCi0vLyBIYXZpbmcgYSBzdWJjbGFzcwotdmFy
IGJhekNvbnN0cnVjdG9yID0gZG9jdW1lbnQucmVnaXN0ZXIoIngtYmF6IiwgeyBwcm90b3R5cGU6
IE9iamVjdC5jcmVhdGUoZm9vQ29uc3RydWN0b3IucHJvdG90eXBlLCB7IHRoaXNJc0Fsc29Qcm90
b3R5cGU6IHsgdmFsdWU6IHRydWUgfSB9KSB9KTsKLXZhciBjcmVhdGVkQmF6ID0gbmV3IGJhekNv
bnN0cnVjdG9yKCk7Ci1zaG91bGRCZSgiY3JlYXRlZEJhei50YWdOYW1lIiwgIidYLUJBWiciKTsK
LXNob3VsZEJlVHJ1ZSgiY3JlYXRlZEJhei50aGlzSXNQcm90b3R5cGUiKTsKLXNob3VsZEJlVHJ1
ZSgiY3JlYXRlZEJhei50aGlzSXNBbHNvUHJvdG90eXBlIik7Ci0KLS8vIFdpdGggaXJyZWd1bGFy
IGNhc2VzCi12YXIgY3JlYXRlZFVwcGVyQmFyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiWC1C
QVIiKTsKLXZhciBjcmVhdGVkTWl4ZWRCYXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJYLUJh
ciIpOwotc2hvdWxkQmUoImNyZWF0ZWRVcHBlckJhci5jb25zdHJ1Y3RvciIsICJiYXJDb25zdHJ1
Y3RvciIpOwotc2hvdWxkQmUoImNyZWF0ZWRVcHBlckJhci50YWdOYW1lIiwgIidYLUJBUiciKTsK
LXNob3VsZEJlKCJjcmVhdGVkTWl4ZWRCYXIuY29uc3RydWN0b3IiLCAiYmFyQ29uc3RydWN0b3Ii
KTsKLXNob3VsZEJlKCJjcmVhdGVkTWl4ZWRCYXIudGFnTmFtZSIsICInWC1CQVInIik7Ci0KLWNv
bnRhaW5lci5pbm5lckhUTUwgPSAiPFgtQkFSPjwvWC1CQVI+PFgtQmFyPjwvWC1CYXI+IjsKLXNo
b3VsZEJlKCJjb250YWluZXIuZmlyc3RDaGlsZC5jb25zdHJ1Y3RvciIsICJiYXJDb25zdHJ1Y3Rv
ciIpOwotc2hvdWxkQmUoImNvbnRhaW5lci5maXJzdENoaWxkLnRhZ05hbWUiLCAiJ1gtQkFSJyIp
Owotc2hvdWxkQmUoImNvbnRhaW5lci5sYXN0Q2hpbGQuY29uc3RydWN0b3IiLCAiYmFyQ29uc3Ry
dWN0b3IiKTsKLXNob3VsZEJlKCJjb250YWluZXIubGFzdENoaWxkLnRhZ05hbWUiLCAiJ1gtQkFS
JyIpOwotCi0vLyBTdHJhbmdlIGJ1dCB2YWxpZCBuYW1lcwotc2hvdWxkQmUoIihuZXcgKGRvY3Vt
ZW50LnJlZ2lzdGVyKCd5LWJhcicsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpKSgpKS50YWdO
YW1lIiwgIidZLUJBUiciKTsKLXNob3VsZEJlKCIobmV3IChkb2N1bWVudC5yZWdpc3RlcigneXot
YmFyJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkpKCkpLnRhZ05hbWUiLCAiJ1laLUJBUici
KTsKLXNob3VsZEJlKCIobmV3IChkb2N1bWVudC5yZWdpc3RlcigneS16LWJhcicsIGNyZWF0ZVJl
Z2lzdGVyUGFyYW10ZXJzKCkpKSgpKS50YWdOYW1lIiwgIidZLVotQkFSJyIpOwotc2hvdWxkQmUo
IihuZXcgKGRvY3VtZW50LnJlZ2lzdGVyKCd5LS1iYXInLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVy
cygpKSkoKSkudGFnTmFtZSIsICInWS0tQkFSJyIpOwotCi0vLyBDb25zdHJ1Y3RvciBzaG91bGRu
J3QgaW50ZXJmZXJlIGVhY2ggb3RlaHIKLXNob3VsZEJlKCIobmV3IGZvb0NvbnN0cnVjdG9yKS50
YWdOYW1lIiwgIidYLUZPTyciKTsKLXNob3VsZEJlKCIobmV3IGJhckNvbnN0cnVjdG9yKS50YWdO
YW1lIiwgIidYLUJBUiciKTsKLXNob3VsZEJlKCIobmV3IGJhekNvbnN0cnVjdG9yKS50YWdOYW1l
IiwgIidYLUJBWiciKTsKLQotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItbmFtZXNwYWNlLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9j
dW1lbnQtcmVnaXN0ZXItbmFtZXNwYWNlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAzNzMyKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLW5hbWVzcGFj
ZS1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSwzOCArMCwwIEBACi1Vc2luZyBkb2N1
bWVudC5yZWdpc3RlcigpIGZvciBleHRlbmRpbmcgSFRNTCBhbmQgbm9uLUhUTUwgZWxlbWVudHMu
Ci0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGh0bWwxLm5hbWVzcGFjZVVS
SSBpcyAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcKLVBBU1MgaHRtbDIubmFtZXNwYWNl
VVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJwotUEFTUyBodG1sMy5uYW1lc3Bh
Y2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnCi1QQVNTIGh0bWw0Lm5hbWVz
cGFjZVVSSSBpcyAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcKLVBBU1Mgbm90SFRNTC5u
YW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cuZXhhbXBsZS5jb20vJwotUEFTUyBub3RIVE1MIGlu
c3RhbmNlb2YgQ3VzdG9tSFRNTEVsZW1lbnQgaXMgZmFsc2UKLVBBU1Mgbm90SFRNTCBpbnN0YW5j
ZW9mIEhUTUxFbGVtZW50IGlzIGZhbHNlCi1QQVNTIHN2ZzEudGFnTmFtZSBpcyAnc3ZnLWZvbycK
LVBBU1Mgc3ZnMS5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJwot
UEFTUyBzdmcyLnRhZ05hbWUgaXMgJ3N2Zy1mb28nCi1QQVNTIHN2ZzIubmFtZXNwYWNlVVJJIGlz
ICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycKLVBBU1Mgc3ZnMy50YWdOYW1lIGlzICdzdmct
Zm9vJwotUEFTUyBzdmczLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9z
dmcnCi1QQVNTIG5vdFNWRzEubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sJwotUEFTUyBub3RTVkcxIGluc3RhbmNlb2YgQ3VzdG9tU1ZHRWxlbWVudCBpcyBmYWxz
ZQotUEFTUyBub3RTVkcxIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRydWUKLVBB
U1Mgbm90U1ZHMi5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwn
Ci1QQVNTIG5vdFNWRzIgaW5zdGFuY2VvZiBDdXN0b21TVkdFbGVtZW50IGlzIGZhbHNlCi1QQVNT
IG5vdFNWRzIgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyB4bWwx
LnRhZ05hbWUgaXMgJ3htbC1mb28nCi1QQVNTIHhtbDEubmFtZXNwYWNlVVJJIGlzIG51bGwKLVBB
U1MgeG1sMi50YWdOYW1lIGlzICd4bWwtZm9vJwotUEFTUyB4bWwyLm5hbWVzcGFjZVVSSSBpcyBu
dWxsCi1QQVNTIG5vdFhNTDEubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sJwotUEFTUyBub3RYTUwxIGluc3RhbmNlb2YgQ3VzdG9tWE1MRWxlbWVudCBpcyBmYWxz
ZQotUEFTUyBub3RYTUwxIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRydWUKLVBB
U1Mgbm90WE1MMi5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwn
Ci1QQVNTIG5vdFhNTDIgaW5zdGFuY2VvZiBDdXN0b21YTUxFbGVtZW50IGlzIGZhbHNlCi1QQVNT
IG5vdFhNTDIgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1uYW1lc3BhY2UuaHRtbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXIt
bmFtZXNwYWNlLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9t
L2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1uYW1lc3BhY2UuaHRtbAkobm9uZXhpc3RlbnQpCkBA
IC0xLDgyICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFk
PgotPGJvZHk+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIlVzaW5nIGRvY3VtZW50LnJlZ2lzdGVy
KCkgZm9yIGV4dGVuZGluZyBIVE1MIGFuZCBub24tSFRNTCBlbGVtZW50cy4iKTsKLQotZG9jdW1l
bnQucmVnaXN0ZXIgPSBkb2N1bWVudC5yZWdpc3RlciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3Rl
cjsKLQotZnVuY3Rpb24gY3JlYXRlRWxlbWVudEZyb21IVE1MKGh0bWwpCi17Ci0gICAgdmFyIGNv
bnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIGNvbnRhaW5lci5p
bm5lckhUTUwgPSBodG1sOwotICAgIHJldHVybiBjb250YWluZXIuZmlyc3RDaGlsZDsKLX0KLQot
ZnVuY3Rpb24gY3JlYXRlRWxlbWVudEZyb21TVkcoc3ZnKQotewotICAgIHZhciBjb250YWluZXIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBjb250YWluZXIuaW5uZXJIVE1M
ID0gIjxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz4iICsgc3ZnICsgIjwv
c3ZnPiI7Ci0gICAgcmV0dXJuIGNvbnRhaW5lci5maXJzdENoaWxkLmZpcnN0Q2hpbGQ7Ci19Ci0K
LUN1c3RvbUhUTUxFbGVtZW50ID0gZG9jdW1lbnQucmVnaXN0ZXIoJ2h0bWwtZm9vJywgeyBwcm90
b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlKSB9KTsKLUN1c3RvbVNW
R0VsZW1lbnQgPSBkb2N1bWVudC5yZWdpc3Rlcignc3ZnLWZvbycsIHsgcHJvdG90eXBlOiBPYmpl
Y3QuY3JlYXRlKFNWR0VsZW1lbnQucHJvdG90eXBlKSB9KTsKLUN1c3RvbVhNTEVsZW1lbnQgPSBk
b2N1bWVudC5yZWdpc3RlcigneG1sLWZvbycsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEVs
ZW1lbnQucHJvdG90eXBlKSB9KTsKLQotdmFyIGh0bWwxID0gbmV3IEN1c3RvbUhUTUxFbGVtZW50
KCk7Ci1zaG91bGRCZSgiaHRtbDEubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3LnczLm9yZy8x
OTk5L3hodG1sJyIpOwotdmFyIGh0bWwyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaHRtbC1m
b28iKTsKLXNob3VsZEJlKCJodG1sMi5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3Jn
LzE5OTkveGh0bWwnIik7Ci12YXIgaHRtbDMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiLCAiaHRtbC1mb28iKTsKLXNob3VsZEJlKCJodG1s
My5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnIik7Ci12YXIg
aHRtbDQgPSBjcmVhdGVFbGVtZW50RnJvbUhUTUwoIjxodG1sLWZvbz48L2h0bWwtZm9vPiIpOwot
c2hvdWxkQmUoImh0bWw0Lm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5vcmcvMTk5OS94
aHRtbCciKTsKLQotdmFyIG5vdEhUTUwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6
Ly93d3cuZXhhbXBsZS5jb20vIiwgImh0bWwtZm9vIik7Ci1zaG91bGRCZSgibm90SFRNTC5uYW1l
c3BhY2VVUkkiLCAiJ2h0dHA6Ly93d3cuZXhhbXBsZS5jb20vJyIpOwotc2hvdWxkQmVGYWxzZSgi
bm90SFRNTCBpbnN0YW5jZW9mIEN1c3RvbUhUTUxFbGVtZW50Iik7Ci1zaG91bGRCZUZhbHNlKCJu
b3RIVE1MIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQiKTsKLQotdmFyIHN2ZzEgPSBuZXcgQ3VzdG9t
U1ZHRWxlbWVudCgpOwotc2hvdWxkQmUoInN2ZzEudGFnTmFtZSIsICInc3ZnLWZvbyciKTsKLXNo
b3VsZEJlKCJzdmcxLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcn
Iik7Ci12YXIgc3ZnMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5v
cmcvMjAwMC9zdmciLCAic3ZnLWZvbyIpOwotc2hvdWxkQmUoInN2ZzIudGFnTmFtZSIsICInc3Zn
LWZvbyciKTsKLXNob3VsZEJlKCJzdmcyLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5v
cmcvMjAwMC9zdmcnIik7Ci12YXIgc3ZnMyA9IGNyZWF0ZUVsZW1lbnRGcm9tU1ZHKCI8c3ZnLWZv
bz48L3N2Zy1mb28+Iik7Ci1zaG91bGRCZSgic3ZnMy50YWdOYW1lIiwgIidzdmctZm9vJyIpOwot
c2hvdWxkQmUoInN2ZzMubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2
ZyciKTsKLQotdmFyIG5vdFNWRzEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdmctZm9vIik7
Ci1zaG91bGRCZSgibm90U1ZHMS5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3JnLzE5
OTkveGh0bWwnIik7Ci1zaG91bGRCZUZhbHNlKCJub3RTVkcxIGluc3RhbmNlb2YgQ3VzdG9tU1ZH
RWxlbWVudCIpOwotc2hvdWxkQmVUcnVlKCJub3RTVkcxIGluc3RhbmNlb2YgSFRNTFVua25vd25F
bGVtZW50Iik7Ci12YXIgbm90U1ZHMiA9IGNyZWF0ZUVsZW1lbnRGcm9tSFRNTCgiPHN2Zy1mb28+
PC9zdmctZm9vPiIpOwotc2hvdWxkQmUoIm5vdFNWRzIubmFtZXNwYWNlVVJJIiwgIidodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hodG1sJyIpOwotc2hvdWxkQmVGYWxzZSgibm90U1ZHMiBpbnN0YW5j
ZW9mIEN1c3RvbVNWR0VsZW1lbnQiKTsKLXNob3VsZEJlVHJ1ZSgibm90U1ZHMiBpbnN0YW5jZW9m
IEhUTUxVbmtub3duRWxlbWVudCIpOwotCi12YXIgeG1sMSA9IG5ldyBDdXN0b21YTUxFbGVtZW50
KCk7Ci1zaG91bGRCZSgieG1sMS50YWdOYW1lIiwgIid4bWwtZm9vJyIpOwotc2hvdWxkQmUoInht
bDEubmFtZXNwYWNlVVJJIiwgIm51bGwiKTsKLXZhciB4bWwyID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudE5TKG51bGwsICJ4bWwtZm9vIik7Ci1zaG91bGRCZSgieG1sMi50YWdOYW1lIiwgIid4bWwt
Zm9vJyIpOwotc2hvdWxkQmUoInhtbDIubmFtZXNwYWNlVVJJIiwgIm51bGwiKTsKLQotdmFyIG5v
dFhNTDEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4bWwtZm9vIik7Ci1zaG91bGRCZSgibm90
WE1MMS5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnIik7Ci1z
aG91bGRCZUZhbHNlKCJub3RYTUwxIGluc3RhbmNlb2YgQ3VzdG9tWE1MRWxlbWVudCIpOwotc2hv
dWxkQmVUcnVlKCJub3RYTUwxIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50Iik7Ci12YXIg
bm90WE1MMiA9IGNyZWF0ZUVsZW1lbnRGcm9tSFRNTCgiPHhtbC1mb28+PC94bWwtZm9vPiIpOwot
c2hvdWxkQmUoIm5vdFhNTDIubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3LnczLm9yZy8xOTk5
L3hodG1sJyIpOwotc2hvdWxkQmVGYWxzZSgibm90WE1MMiBpbnN0YW5jZW9mIEN1c3RvbVhNTEVs
ZW1lbnQiKTsKLXNob3VsZEJlVHJ1ZSgibm90WE1MMiBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxl
bWVudCIpOwotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtbnVsbC1jb25z
dHJ1Y3Rvci1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20v
Y3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1udWxsLWNvbnN0cnVjdG9yLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9t
L2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1udWxsLWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4
dAkobm9uZXhpc3RlbnQpCkBAIC0xLDkgKzAsMCBAQAotRnV6emluZyBkb2N1bWVudC5yZWdpc3Rl
cigpIHRocm91Z2ggZ2V0dGVycy4gUEFTUyB1bGVzcyBjcmFzaC4KLQotT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgotCi0KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBD
T01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVn
aXN0ZXItcmVlbnRyYW50LW51bGwtY29uc3RydWN0b3IuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LW51bGwt
Y29uc3RydWN0b3IuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9k
b20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1udWxsLWNvbnN0cnVjdG9yLmh0
bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwyMyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1s
PgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuL3Jlc291cmNlcy9kb2N1bWVudC1yZWdpc3Rlci1m
dXp6LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iY29udGFpbmVyIj48
L2Rpdj4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiRnV6emluZyBkb2N1bWVudC5yZWdpc3Rlcigp
IHRocm91Z2ggZ2V0dGVycy4gUEFTUyB1bGVzcyBjcmFzaC4iKTsKLQotc2V0dXBPYmplY3RIb29r
cyh7Ci0gICAgcHJvdG90eXBlR2V0OiBmdW5jdGlvbigpIHsgfSwKLSAgICBwcm90b3R5cGVTZXQ6
IGZ1bmN0aW9uKHZhbHVlKSB7IH0sCi0gICAgY29uc3RydWN0b3JHZXQ6IGZ1bmN0aW9uKCkgeyB9
LAotICAgIGNvbnN0cnVjdG9yU2V0OiBmdW5jdGlvbih2YWx1ZSkgeyB9Ci19KTsKLQotZXhlcmNp
c2VEb2N1bWVudFJlZ2lzdGVyKCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJh
bnQtcmV0dXJuaW5nLWZha2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtcmV0dXJuaW5nLWZh
a2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLWV4cGVj
dGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDkgKzAsMCBAQAotRnV6emluZyBkb2N1bWVudC5y
ZWdpc3RlcigpIHRocm91Z2ggZ2V0dGVycy4gUEFTUyB1bGVzcyBjcmFzaC4KLQotT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1l
bnQtcmVnaXN0ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1y
ZXR1cm5pbmctZmFrZS5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLmh0
bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwyNiArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1s
PgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuL3Jlc291cmNlcy9kb2N1bWVudC1yZWdpc3Rlci1m
dXp6LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iY29udGFpbmVyIj48
L2Rpdj4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiRnV6emluZyBkb2N1bWVudC5yZWdpc3Rlcigp
IHRocm91Z2ggZ2V0dGVycy4gUEFTUyB1bGVzcyBjcmFzaC4iKTsKLQotdmFyIGJhZFByb3RvdHlw
ZSA9IEltYWdlLnByb3RvdHlwZTsKLXZhciBiYWRDb25zdHJ1Y3RvciA9IEltYWdlLnByb3RvdHlw
ZS5jb25zdHJ1Y3RvcjsKLQotc2V0dXBPYmplY3RIb29rcyh7Ci0gICAgcHJvdG90eXBlR2V0OiBm
dW5jdGlvbigpIHsgcmV0dXJuIGJhZFByb3RvdHlwZTsgfSwKLSAgICBwcm90b3R5cGVTZXQ6IGZ1
bmN0aW9uKHZhbHVlKSB7ICB9LAotICAgIGNvbnN0cnVjdG9yR2V0OiBmdW5jdGlvbigpIHsgcmV0
dXJuIGJhZENvbnN0cnVjdG9yOyB9LAotICAgIGNvbnN0cnVjdG9yU2V0OiBmdW5jdGlvbih2YWx1
ZSkgeyAgfQotfSk7Ci0KLWV4ZXJjaXNlRG9jdW1lbnRSZWdpc3RlcigpOwotPC9zY3JpcHQ+Ci08
c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+
Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9j
dW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXRocm93aW5nLWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVn
aXN0ZXItcmVlbnRyYW50LXRocm93aW5nLWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lz
dGVyLXJlZW50cmFudC10aHJvd2luZy1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQJKG5vbmV4aXN0
ZW50KQpAQCAtMSwxMCArMCwwIEBACi1GdXp6aW5nIGRvY3VtZW50LnJlZ2lzdGVyKCkgdGhyb3Vn
aCBnZXR0ZXJzLiBQQVNTIHVsZXNzIGNyYXNoLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
Ci0KLQotQ29uc3RydWN0b3Igb2JqZWN0IGlzbid0IGNyZWF0ZWQuCi1QQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC10aHJvd2luZy1jb25zdHJ1
Y3Rvci5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1
bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtdGhyb3dpbmctY29uc3RydWN0b3IuaHRtbAkocmV2aXNp
b24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lz
dGVyLXJlZW50cmFudC10aHJvd2luZy1jb25zdHJ1Y3Rvci5odG1sCShub25leGlzdGVudCkKQEAg
LTEsMjMgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi9yZXNvdXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcyI+PC9zY3JpcHQ+Ci08
L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Ci08c2NyaXB0PgotZGVz
Y3JpcHRpb24oIkZ1enppbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0aHJvdWdoIGdldHRlcnMuIFBB
U1MgdWxlc3MgY3Jhc2guIik7Ci0KLXNldHVwT2JqZWN0SG9va3MoewotICAgIHByb3RvdHlwZUdl
dDogZnVuY3Rpb24oKSB7IHRocm93ICJFcnJvciI7IH0sCi0gICAgcHJvdG90eXBlU2V0OiBmdW5j
dGlvbih2YWx1ZSkgeyB0aHJvdyAiRXJyb3IiOyB9LAotICAgIGNvbnN0cnVjdG9yR2V0OiBmdW5j
dGlvbigpIHsgdGhyb3cgIkVycm9yIjsgfSwKLSAgICBjb25zdHJ1Y3RvclNldDogZnVuY3Rpb24o
dmFsdWUpIHsgdGhyb3cgIkVycm9yIjsgfQotfSk7Ci0KLWV4ZXJjaXNlRG9jdW1lbnRSZWdpc3Rl
cigpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItdHlwZS1leHRlbnNpb25zLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQt
cmVnaXN0ZXItdHlwZS1leHRlbnNpb25zLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAzNzMyKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXR5cGUtZXh0
ZW5zaW9ucy1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSw2NyArMCwwIEBACi1UZXN0
aW5nIGRvY3VtZW50LnJlZ2lzdGVyKCkgdHlwZSBleHRlbnNpb24gYmVoYXZpb3VycyB0aHJvdWdo
IGNyZWF0ZUVsZW1lbnQoKS4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1Mg
ZG9jdW1lbnQucmVnaXN0ZXIoJ3gtZm9vJywgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRN
TERpdkVsZW1lbnQucHJvdG90eXBlKSB9KSB0aHJldyBleGNlcHRpb24gSW52YWxpZFN0YXRlRXJy
b3IgKERPTSBFeGNlcHRpb24gMTEpOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUu
LgotUEFTUyBmb29OZXdlZC5vdXRlckhUTUwgaXMgJzx4LWZvbz48L3gtZm9vPicKLVBBU1MgZm9v
TmV3ZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciAmJiBmb29OZXdlZCBpbnN0YW5jZW9mIEhU
TUxFbGVtZW50IGlzIHRydWUKLVBBU1MgZm9vTmV3ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVs
ZW1lbnQgaXMgZmFsc2UKLVBBU1MgYmFyTmV3ZWQub3V0ZXJIVE1MIGlzICc8aW5wdXQgaXM9Ingt
YmFyIj4nCi1QQVNTIGJhck5ld2VkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IgJiYgYmFyTmV3
ZWQgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50IGlzIHRydWUKLVBBU1MgaXNGb3JtQ29udHJv
bChiYXJOZXdlZCkgaXMgdHJ1ZQotUEFTUyBiYXpOZXdlZC5vdXRlckhUTUwgaXMgJzx4LWJhej48
L3gtYmF6PicKLVBBU1MgYmF6TmV3ZWQgaW5zdGFuY2VvZiBiYXpDb25zdHJ1Y3RvciAmJiBiYXpO
ZXdlZCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50IGlzIHRydWUKLVBBU1MgYmF6TmV3ZWQgaW5zdGFu
Y2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgZmFsc2UKLVBBU1MgcXV4TmV3ZWQgaW5zdGFuY2Vv
ZiBxdXhDb25zdHJ1Y3RvciAmJiBxdXhOZXdlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yICYm
IHF1eE5ld2VkIGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudCBpcyB0cnVlCi1QQVNTIHF1eE5l
d2VkLm91dGVySFRNTCBpcyAnPGlucHV0IGlzPSJ4LXF1eCI+JwotUEFTUyBpc0Zvcm1Db250cm9s
KHF1eE5ld2VkKSBpcyB0cnVlCi1QQVNTIGZvb0NyZWF0ZWQub3V0ZXJIVE1MIGlzICc8eC1mb28+
PC94LWZvbz4nCi1QQVNTIGZvb0NyZWF0ZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciBpcyB0
cnVlCi1QQVNTIGJhckNyZWF0ZWQub3V0ZXJIVE1MIGlzICc8eC1iYXI+PC94LWJhcj4nCi1QQVNT
IGJhckNyZWF0ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBpcyBmYWxzZQotUEFTUyBiYXJD
cmVhdGVkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRydWUKLVBBU1MgYmF6Q3Jl
YXRlZC5vdXRlckhUTUwgaXMgJzx4LWJhej48L3gtYmF6PicKLVBBU1MgYmF6Q3JlYXRlZCBpbnN0
YW5jZW9mIGJhekNvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgYmF6Q3JlYXRlZCBpbnN0YW5jZW9m
IEhUTUxVbmtub3duRWxlbWVudCBpcyBmYWxzZQotUEFTUyBxdXhDcmVhdGVkLm91dGVySFRNTCBp
cyAnPHgtcXV4PjwveC1xdXg+JwotUEFTUyBxdXhDcmVhdGVkIGluc3RhbmNlb2YgcXV4Q29uc3Ry
dWN0b3IgaXMgZmFsc2UKLVBBU1MgcXV4Q3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxl
bWVudCBpcyB0cnVlCi1QQVNTIGRpdkZvb0NyZWF0ZWQub3V0ZXJIVE1MIGlzICc8ZGl2IGlzPSJ4
LWZvbyI+PC9kaXY+JwotUEFTUyBkaXZGb29DcmVhdGVkIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0
b3IgaXMgZmFsc2UKLVBBU1MgZGl2Rm9vQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxEaXZFbGVtZW50
IGlzIHRydWUKLVBBU1MgaW5wdXRCYXJDcmVhdGVkLm91dGVySFRNTCBpcyAnPGlucHV0IGlzPSJ4
LWJhciI+JwotUEFTUyBpbnB1dEJhckNyZWF0ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBp
cyB0cnVlCi1QQVNTIGlucHV0QmFyQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVu
dCBpcyBmYWxzZQotUEFTUyBpc0Zvcm1Db250cm9sKGlucHV0QmFyQ3JlYXRlZCkgaXMgdHJ1ZQot
UEFTUyBkaXZCYXJDcmVhdGVkLm91dGVySFRNTCBpcyAnPGRpdiBpcz0ieC1iYXIiPjwvZGl2PicK
LVBBU1MgZGl2QmFyQ3JlYXRlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIGlzIGZhbHNlCi1Q
QVNTIGRpdkJhckNyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MRGl2RWxlbWVudCBpcyB0cnVlCi1QQVNT
IGZvb0JhckNyZWF0ZWQub3V0ZXJIVE1MIGlzICc8eC1mb28gaXM9IngtYmFyIj48L3gtZm9vPicK
LVBBU1MgZm9vQmFyQ3JlYXRlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlzIHRydWUKLVBB
U1MgYmFyRm9vQ3JlYXRlZC5vdXRlckhUTUwgaXMgJzx4LWJhciBpcz0ieC1mb28iPjwveC1iYXI+
JwotUEFTUyBiYXJGb29DcmVhdGVkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRy
dWUKLVBBU1MgZm9vQ3JlYXRlZE51bGwub3V0ZXJIVE1MIGlzICc8eC1mb28+PC94LWZvbz4nCi1Q
QVNTIGZvb0NyZWF0ZWROdWxsIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IgaXMgdHJ1ZQotUEFT
UyBmb29DcmVhdGVkRW1wdHkub3V0ZXJIVE1MIGlzICc8eC1mb28+PC94LWZvbz4nCi1QQVNTIGZv
b0NyZWF0ZWRFbXB0eSBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnQGludmFsaWQnLCAneC1iYXInKSB0aHJldyBleGNlcHRpb24g
SW52YWxpZENoYXJhY3RlckVycm9yIChET00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNvbnRh
aW5zIGludmFsaWQgY2hhcmFjdGVycy4uCi1QQVNTIGZvb0NyZWF0ZWROUy5vdXRlckhUTUwgaXMg
Jzx4LWZvbz48L3gtZm9vPicKLVBBU1MgZm9vQ3JlYXRlZE5TIGluc3RhbmNlb2YgZm9vQ29uc3Ry
dWN0b3IgaXMgdHJ1ZQotUEFTUyBiYXJDcmVhdGVkTlMub3V0ZXJIVE1MIGlzICc8aW5wdXQgaXM9
IngtYmFyIj4nCi1QQVNTIGJhckNyZWF0ZWROUyBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIGlz
IHRydWUKLVBBU1MgaXNGb3JtQ29udHJvbChiYXJDcmVhdGVkTlMpIGlzIHRydWUKLVBBU1MgZG9j
dW1lbnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vZXhhbXBsZS5jb20vMjAxMy9uby1zdWNoLW5h
bWVzcGFjZScsICd4bWw6bGFuZycsICd4LWJhcicpIHRocmV3IGV4Y2VwdGlvbiBOYW1lc3BhY2VF
cnJvciAoRE9NIEV4Y2VwdGlvbiAxNCk6IFRoZSBvcGVyYXRpb24gaXMgbm90IGFsbG93ZWQgYnkg
TmFtZXNwYWNlcyBpbiBYTUwuLgotUEFTUyBmb29QYXJzZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1
Y3RvciBpcyB0cnVlCi1QQVNTIGJhclBhcnNlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIGlz
IHRydWUKLVBBU1MgaXNGb3JtQ29udHJvbChiYXJQYXJzZWQpIGlzIHRydWUKLVBBU1MgZGl2Rm9v
UGFyc2VkIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IgaXMgZmFsc2UKLVBBU1MgZGl2Rm9vUGFy
c2VkIGluc3RhbmNlb2YgSFRNTERpdkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBuYW1lZEJhclBhcnNl
ZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIGlzIGZhbHNlCi1QQVNTIG5hbWVkQmFyUGFyc2Vk
IGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRydWUKLVBBU1MgZGl2QmFyUGFyc2Vk
IGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IgaXMgZmFsc2UKLVBBU1MgZGl2QmFyUGFyc2VkIGlu
c3RhbmNlb2YgSFRNTERpdkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1
c3RvbS9kb2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItdHlwZS1leHRl
bnNpb25zLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1
c3RvbS9kb2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMuaHRtbAkobm9uZXhpc3RlbnQp
CkBAIC0xLDE3MCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwv
aGVhZD4KLTxib2R5PgotPGRpdiBpZD0iY29udGFpbmVyIj48L2Rpdj4KLTxmb3JtIGlkPSJ0ZXN0
Rm9ybSI+PC9mb3JtPgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJUZXN0aW5nIGRvY3VtZW50LnJl
Z2lzdGVyKCkgdHlwZSBleHRlbnNpb24gYmVoYXZpb3VycyB0aHJvdWdoIGNyZWF0ZUVsZW1lbnQo
KS4iKTsKLQotZnVuY3Rpb24gaXNGb3JtQ29udHJvbChlbGVtZW50KQotewotICAgIHRlc3RGb3Jt
LmFwcGVuZENoaWxkKGVsZW1lbnQpOwotICAgIHJldHVybiBlbGVtZW50LmZvcm0gPT0gdGVzdEZv
cm07Ci19Ci0KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQu
d2Via2l0UmVnaXN0ZXI7Ci0KLS8vCi0vLyBJbmhlcml0YW5jZSBoZXJlIGlzIHNoYXBlZCBsaWtl
IHRoaXM6Ci0vLwotLy8gSFRNTEVsZW1lbnQgPC0gaW5wdXQgPC0geC1iYXIgPC0geC1xdXgKLS8v
ICAgICAgICAgICAgIDwtIHgtZm9vIDwtIHgtYmF6Ci0vLwotCi1mb29Db25zdHJ1Y3RvciA9IGRv
Y3VtZW50LnJlZ2lzdGVyKCd4LWZvbycsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxF
bGVtZW50LnByb3RvdHlwZSkgfSk7Ci1iYXJDb25zdHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lzdGVy
KCd4LWJhcicsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxJbnB1dEVsZW1lbnQucHJv
dG90eXBlKSB9KTsKLWJhekNvbnN0cnVjdG9yID0gZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmF6Jywg
eyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoZm9vQ29uc3RydWN0b3IucHJvdG90eXBlKSB9KTsK
LXF1eENvbnN0cnVjdG9yID0gZG9jdW1lbnQucmVnaXN0ZXIoJ3gtcXV4JywgeyBwcm90b3R5cGU6
IE9iamVjdC5jcmVhdGUoYmFyQ29uc3RydWN0b3IucHJvdG90eXBlKSB9KTsKLQotLy8gU2FtZSBu
YW1lLCBkaWZmZXJlbnQgbG9jYWwgbmFtZQotc2hvdWxkVGhyb3coImRvY3VtZW50LnJlZ2lzdGVy
KCd4LWZvbycsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxEaXZFbGVtZW50LnByb3Rv
dHlwZSkgfSkiLCAiJ0ludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9i
amVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiciKTsKLQotLy8KLS8vIEdlbmVyYXRlZCBjb25z
dHJ1Y3RvcnMKLS8vCi0KLWZvb05ld2VkID0gbmV3IGZvb0NvbnN0cnVjdG9yKCk7Ci1mb29PdXRl
ckhUTUwgPSAiJzx4LWZvbz48L3gtZm9vPiciOwotc2hvdWxkQmUoImZvb05ld2VkLm91dGVySFRN
TCIsIGZvb091dGVySFRNTCk7Ci1zaG91bGRCZVRydWUoImZvb05ld2VkIGluc3RhbmNlb2YgZm9v
Q29uc3RydWN0b3IgJiYgZm9vTmV3ZWQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCIpOwotc2hvdWxk
QmVGYWxzZSgiZm9vTmV3ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotYmFy
TmV3ZWQgPSBuZXcgYmFyQ29uc3RydWN0b3IoKTsKLWJhck91dGVySFRNTCA9ICInPGlucHV0IGlz
PVwieC1iYXJcIj4nIjsKLXNob3VsZEJlKCJiYXJOZXdlZC5vdXRlckhUTUwiLCBiYXJPdXRlckhU
TUwpOwotc2hvdWxkQmVUcnVlKCJiYXJOZXdlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yICYm
IGJhck5ld2VkIGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudCIpOwotc2hvdWxkQmVUcnVlKCJp
c0Zvcm1Db250cm9sKGJhck5ld2VkKSIpOwotCi1iYXpOZXdlZCA9IG5ldyBiYXpDb25zdHJ1Y3Rv
cigpOwotYmF6T3V0ZXJIVE1MID0gIic8eC1iYXo+PC94LWJhej4nIjsKLXNob3VsZEJlKCJiYXpO
ZXdlZC5vdXRlckhUTUwiLCBiYXpPdXRlckhUTUwpOwotc2hvdWxkQmVUcnVlKCJiYXpOZXdlZCBp
bnN0YW5jZW9mIGJhekNvbnN0cnVjdG9yICYmIGJhek5ld2VkIGluc3RhbmNlb2YgSFRNTEVsZW1l
bnQiKTsKLXNob3VsZEJlRmFsc2UoImJhek5ld2VkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVt
ZW50Iik7Ci0KLXF1eE5ld2VkID0gbmV3IHF1eENvbnN0cnVjdG9yKCk7Ci1xdXhPdXRlckhUTUwg
PSAiJzxpbnB1dCBpcz1cIngtcXV4XCI+JyI7Ci1zaG91bGRCZVRydWUoInF1eE5ld2VkIGluc3Rh
bmNlb2YgcXV4Q29uc3RydWN0b3IgJiYgcXV4TmV3ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3Rv
ciAmJiBxdXhOZXdlZCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQiKTsKLXNob3VsZEJlKCJx
dXhOZXdlZC5vdXRlckhUTUwiLCBxdXhPdXRlckhUTUwpOwotc2hvdWxkQmVUcnVlKCJpc0Zvcm1D
b250cm9sKHF1eE5ld2VkKSIpOwotCi0vLwotLy8gU2luZ2xlIHBhcmFtZXRlciBjcmVhdGVFbGVt
ZW50KCkKLS8vCi0KLWZvb0NyZWF0ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LWZvbyIp
Owotc2hvdWxkQmUoImZvb0NyZWF0ZWQub3V0ZXJIVE1MIiwgZm9vT3V0ZXJIVE1MKTsKLXNob3Vs
ZEJlVHJ1ZSgiZm9vQ3JlYXRlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIik7Ci0KLWJhckNy
ZWF0ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LWJhciIpOwotc2hvdWxkQmUoImJhckNy
ZWF0ZWQub3V0ZXJIVE1MIiwgIic8eC1iYXI+PC94LWJhcj4nIik7Ci1zaG91bGRCZUZhbHNlKCJi
YXJDcmVhdGVkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlVHJ1ZSgiYmFy
Q3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwotCi1iYXpDcmVhdGVkID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgieC1iYXoiKTsKLXNob3VsZEJlKCJiYXpDcmVhdGVkLm91
dGVySFRNTCIsICInPHgtYmF6PjwveC1iYXo+JyIpOwotc2hvdWxkQmVUcnVlKCJiYXpDcmVhdGVk
IGluc3RhbmNlb2YgYmF6Q29uc3RydWN0b3IiKTsKLXNob3VsZEJlRmFsc2UoImJhekNyZWF0ZWQg
aW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotcXV4Q3JlYXRlZCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoIngtcXV4Iik7Ci1zaG91bGRCZSgicXV4Q3JlYXRlZC5vdXRlckhUTUwi
LCAiJzx4LXF1eD48L3gtcXV4PiciKTsKLXNob3VsZEJlRmFsc2UoInF1eENyZWF0ZWQgaW5zdGFu
Y2VvZiBxdXhDb25zdHJ1Y3RvciIpOwotc2hvdWxkQmVUcnVlKCJxdXhDcmVhdGVkIGluc3RhbmNl
b2YgSFRNTFVua25vd25FbGVtZW50Iik7Ci0KLS8vCi0vLyBjcmVhdGVFbGVtZW50KCkgd2l0aCB0
eXBlIGV4dGVuc2lvbnMKLS8vCi0KLWRpdkZvb0NyZWF0ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCJkaXYiLCAieC1mb28iKTsKLXNob3VsZEJlKCJkaXZGb29DcmVhdGVkLm91dGVySFRNTCIs
ICInPGRpdiBpcz1cIngtZm9vXCI+PC9kaXY+JyIpOwotc2hvdWxkQmVGYWxzZSgiZGl2Rm9vQ3Jl
YXRlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoImRpdkZvb0Ny
ZWF0ZWQgaW5zdGFuY2VvZiBIVE1MRGl2RWxlbWVudCIpOwotCi1pbnB1dEJhckNyZWF0ZWQgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIsICJ4LWJhciIpOwotc2hvdWxkQmUoImlucHV0
QmFyQ3JlYXRlZC5vdXRlckhUTUwiLCBiYXJPdXRlckhUTUwpOwotc2hvdWxkQmVUcnVlKCJpbnB1
dEJhckNyZWF0ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciIpOwotc2hvdWxkQmVGYWxzZSgi
aW5wdXRCYXJDcmVhdGVkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50Iik7Ci1zaG91bGRC
ZVRydWUoImlzRm9ybUNvbnRyb2woaW5wdXRCYXJDcmVhdGVkKSIpOwotCi1kaXZCYXJDcmVhdGVk
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiwgIngtYmFyIik7Ci1zaG91bGRCZSgiZGl2
QmFyQ3JlYXRlZC5vdXRlckhUTUwiLCAiJzxkaXYgaXM9XCJ4LWJhclwiPjwvZGl2PiciKTsKLXNo
b3VsZEJlRmFsc2UoImRpdkJhckNyZWF0ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciIpOwot
c2hvdWxkQmVUcnVlKCJkaXZCYXJDcmVhdGVkIGluc3RhbmNlb2YgSFRNTERpdkVsZW1lbnQiKTsK
LQotZm9vQmFyQ3JlYXRlZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtZm9vIiwgIngtYmFy
Iik7Ci1zaG91bGRCZSgiZm9vQmFyQ3JlYXRlZC5vdXRlckhUTUwiLCAiJzx4LWZvbyBpcz1cIngt
YmFyXCI+PC94LWZvbz4nIik7Ci1zaG91bGRCZVRydWUoImZvb0JhckNyZWF0ZWQgaW5zdGFuY2Vv
ZiBmb29Db25zdHJ1Y3RvciIpOwotCi1iYXJGb29DcmVhdGVkID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgieC1iYXIiLCAieC1mb28iKTsKLXNob3VsZEJlKCJiYXJGb29DcmVhdGVkLm91dGVySFRN
TCIsICInPHgtYmFyIGlzPVwieC1mb29cIj48L3gtYmFyPiciKTsKLXNob3VsZEJlVHJ1ZSgiYmFy
Rm9vQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwotCi1mb29DcmVhdGVk
TnVsbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtZm9vIiwgbnVsbCk7Ci1zaG91bGRCZSgi
Zm9vQ3JlYXRlZE51bGwub3V0ZXJIVE1MIiwgZm9vT3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgi
Zm9vQ3JlYXRlZE51bGwgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciIpOwotCi1mb29DcmVhdGVk
RW1wdHkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LWZvbyIsICIiKTsKLXNob3VsZEJlKCJm
b29DcmVhdGVkRW1wdHkub3V0ZXJIVE1MIiwgZm9vT3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgi
Zm9vQ3JlYXRlZEVtcHR5IGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IiKTsKLQotc2hvdWxkVGhy
b3coImRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ0BpbnZhbGlkJywgJ3gtYmFyJykiLCAiJ0ludmFs
aWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4Y2VwdGlvbiA1KTogVGhlIHN0cmluZyBjb250YWlucyBp
bnZhbGlkIGNoYXJhY3RlcnMuJyIpOwotCi0vLwotLy8gY3JlYXRlRWxlbWVudE5TKCkgd2l0aCB0
eXBlIGV4dGVuc2lvbnMKLS8vCi0KLWZvb0NyZWF0ZWROUyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsICJ4LWZvbyIsIG51bGwpOwotc2hv
dWxkQmUoImZvb0NyZWF0ZWROUy5vdXRlckhUTUwiLCBmb29PdXRlckhUTUwpOwotc2hvdWxkQmVU
cnVlKCJmb29DcmVhdGVkTlMgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciIpOwotCi1iYXJDcmVh
dGVkTlMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzE5OTkv
eGh0bWwiLCAiaW5wdXQiLCAieC1iYXIiKTsKLXNob3VsZEJlKCJiYXJDcmVhdGVkTlMub3V0ZXJI
VE1MIiwgYmFyT3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgiYmFyQ3JlYXRlZE5TIGluc3RhbmNl
b2YgYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlVHJ1ZSgiaXNGb3JtQ29udHJvbChiYXJDcmVh
dGVkTlMpIik7Ci0KLXNob3VsZFRocm93KCJkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoJ2h0dHA6
Ly9leGFtcGxlLmNvbS8yMDEzL25vLXN1Y2gtbmFtZXNwYWNlJywgJ3htbDpsYW5nJywgJ3gtYmFy
JykiLCAiJ05hbWVzcGFjZUVycm9yIChET00gRXhjZXB0aW9uIDE0KTogVGhlIG9wZXJhdGlvbiBp
cyBub3QgYWxsb3dlZCBieSBOYW1lc3BhY2VzIGluIFhNTC4nIik7Ci0KLS8vIHBhcnNlcgotZnVu
Y3Rpb24gY3JlYXRlRWxlbWVudEZyb21IVE1MKGh0bWwpIHsKLSAgIHZhciBjb250YWluZXIgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgIGNvbnRhaW5lci5pbm5lckhUTUwgPSBo
dG1sOwotICAgcmV0dXJuIGNvbnRhaW5lci5maXJzdENoaWxkOwotfQotCi1mb29QYXJzZWQgPSBj
cmVhdGVFbGVtZW50RnJvbUhUTUwoJzx4LWZvbz4nKTsKLXNob3VsZEJlVHJ1ZSgiZm9vUGFyc2Vk
IGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IiKTsKLQotYmFyUGFyc2VkID0gY3JlYXRlRWxlbWVu
dEZyb21IVE1MKCc8aW5wdXQgaXM9eC1iYXI+JykKLXNob3VsZEJlVHJ1ZSgiYmFyUGFyc2VkIGlu
c3RhbmNlb2YgYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlVHJ1ZSgiaXNGb3JtQ29udHJvbChi
YXJQYXJzZWQpIik7Ci0KLWRpdkZvb1BhcnNlZCA9IGNyZWF0ZUVsZW1lbnRGcm9tSFRNTCgnPGRp
diBpcz14LWZvbz4nKQotc2hvdWxkQmVGYWxzZSgiZGl2Rm9vUGFyc2VkIGluc3RhbmNlb2YgZm9v
Q29uc3RydWN0b3IiKTsKLXNob3VsZEJlVHJ1ZSgiZGl2Rm9vUGFyc2VkIGluc3RhbmNlb2YgSFRN
TERpdkVsZW1lbnQiKTsKLQotbmFtZWRCYXJQYXJzZWQgPSBjcmVhdGVFbGVtZW50RnJvbUhUTUwo
Jzx4LWJhcj4nKQotc2hvdWxkQmVGYWxzZSgibmFtZWRCYXJQYXJzZWQgaW5zdGFuY2VvZiBiYXJD
b25zdHJ1Y3RvciIpOwotc2hvdWxkQmVUcnVlKCJuYW1lZEJhclBhcnNlZCBpbnN0YW5jZW9mIEhU
TUxVbmtub3duRWxlbWVudCIpOwotCi1kaXZCYXJQYXJzZWQgPSBjcmVhdGVFbGVtZW50RnJvbUhU
TUwoJzxkaXYgaXM9eC1iYXI+JykKLXNob3VsZEJlRmFsc2UoImRpdkJhclBhcnNlZCBpbnN0YW5j
ZW9mIGJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoImRpdkJhclBhcnNlZCBpbnN0YW5j
ZW9mIEhUTUxEaXZFbGVtZW50Iik7Ci0KLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJ
bmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVF
bGVtZW50LXJlY3Vyc2lvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlY3Vyc2lvbi1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1
c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWN1cnNpb24tZXhwZWN0ZWQudHh0
CShub25leGlzdGVudCkKQEAgLTEsNiArMCwwIEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUgOTog
VW5jYXVnaHQgUmFuZ2VFcnJvcjogTWF4aW11bSBjYWxsIHN0YWNrIHNpemUgZXhjZWVkZWQuCi1Q
QVNTIHVubGVzcyBjcmFzaAotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNU
IENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUt
cmVhZHktY3JlYXRlRWxlbWVudC1yZWN1cnNpb24uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJz
aW9uLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3Rv
bS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWN1cnNpb24uaHRtbAkobm9uZXhpc3Rl
bnQpCkBAIC0xLDE3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxz
Y3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgot
PC9oZWFkPgotPGJvZHk+Ci08c2NyaXB0PgotZG9jdW1lbnQucmVnaXN0ZXIgPSBkb2N1bWVudC5y
ZWdpc3RlciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3RlcjsKLWRvY3VtZW50LnJlZ2lzdGVyKCJ4
LWZvbyIsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxFbGVtZW50LnByb3RvdHlwZSwg
eyByZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiBmdW5jdGlvbiAoKSB7IHRoaXMuaW5uZXJIVE1MID0g
Ijx4LWZvbz5IZWxsbzwveC1mb28+IjsgfSB9IH0pIH0pOwotaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQotICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
eC1mb28iKTsKLWRlYnVnKCJQQVNTIHVubGVzcyBjcmFzaCIpOwotPC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2Jv
ZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xl
LXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVlbnRyYW5jeS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVt
ZW50LXJlZW50cmFuY3ktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVlbnRy
YW5jeS1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMyArMCwwIEBACi1UaGlzIHRl
c3QgZW5zdXJlcyB0aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJhY2sgb2YgYSBwYXJzZXItbWFkZSBl
bGVtZW50IGlzIHZpc2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4KLQotT24gc3VjY2Vz
cywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkg
IlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbXQot
UEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsnWC1GT08nXQotUEFTUyB3aW5kb3cuY2Fs
bGJhY2tzQ2FsbGVkIGlzIFsnWC1GT08nLCAnWC1CQVInXQotUEFTUyB3aW5kb3cuY2FsbGJhY2tz
Q2FsbGVkIGlzIFsnWC1GT08nLCAnWC1CQVInXQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3Rv
bS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWVudHJhbmN5Lmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVF
bGVtZW50LXJlZW50cmFuY3kuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlZW50cmFuY3ku
aHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDM0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJUaGlzIHRlc3QgZW5zdXJlcyB0
aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJhY2sgb2YgYSBwYXJzZXItbWFkZSBlbGVtZW50IGlzIHZp
c2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4iKQotZG9jdW1lbnQucmVnaXN0ZXIgPSBk
b2N1bWVudC5yZWdpc3RlciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3RlcjsKLQotd2luZG93LmNh
bGxiYWNrc0NhbGxlZCA9IFtdOwotCi1mdW5jdGlvbiBmb29DcmVhdGVkRnVuY3Rpb24oKSB7Ci0g
IHNob3VsZEJlKCJ3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIiwgIltdIik7Ci0gIHdpbmRvdy5jYWxs
YmFja3NDYWxsZWQucHVzaCh0aGlzLnRhZ05hbWUpOwotICB0aGlzLmlubmVySFRNTCA9ICI8eC1i
YXI+PC94LWJhcj4iOwotICBzaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gt
Rk9PJywgJ1gtQkFSJ10iKTsKLX0KLQotZnVuY3Rpb24gYmFyQ3JlYXRlZEZ1bmN0aW9uKCkgewot
ICBzaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gtRk9PJ10iKTsKLSAgd2lu
ZG93LmNhbGxiYWNrc0NhbGxlZC5wdXNoKHRoaXMudGFnTmFtZSk7Ci19Ci0KLWRvY3VtZW50LnJl
Z2lzdGVyKCJ4LWZvbyIsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxFbGVtZW50LnBy
b3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiBmb29DcmVhdGVkRnVuY3Rpb24gfSB9
KSB9KTsKLWRvY3VtZW50LnJlZ2lzdGVyKCJ4LWJhciIsIHsgcHJvdG90eXBlOiBPYmplY3QuY3Jl
YXRlKEhUTUxFbGVtZW50LnByb3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiBiYXJD
cmVhdGVkRnVuY3Rpb24gfSB9KSB9KTsKLTwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08c2Ny
aXB0PgotZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgieC1mb28iKTsKLXNob3VsZEJlKCJ3aW5kb3cu
Y2FsbGJhY2tzQ2FsbGVkIiwgIlsnWC1GT08nLCAnWC1CQVInXSIpOwotPC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08
L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5
Y2xlLXJlYWR5LWNyZWF0aW9uLWFwaS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGlvbi1hcGktZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20v
bGlmZWN5Y2xlLXJlYWR5LWNyZWF0aW9uLWFwaS1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpA
QCAtMSwyNyArMCwwIEBACi1UaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHRoZSBsaWZlY3ljbGUgY2Fs
bGJhY2tzIG9mIEFQSS1vcmlnaW5hdGVkIGVsZW1lbnRzIGFyZSB2aXNpYmxlIGluIGZvbGxvd2lu
ZyBzY3JpcHQgYmxvY2suCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAi
UEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3gtZm9vJykuY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBB
U1MgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JywgJ3gtYmFyJykuY2FsbGJhY2tzQ2FsbGVk
IGlzIHRydWUKLVBBU1MgZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vd3d3LnczLm9y
Zy8xOTk5L3hodG1sJywgJ3gtZm9vJykuY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBBU1MgZG9j
dW1lbnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ2Rp
dicsICd4LWJhcicpLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGZvby5jbG9uZU5vZGUo
KS5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyBmb28uY2xvbmVOb2RlKHRydWUpLmZpcnN0
Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBBU1MgYmFyLmNsb25lTm9kZSgpLmNhbGxi
YWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGJhci5jbG9uZU5vZGUodHJ1ZSkuZmlyc3RDaGlsZC5j
YWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyBmb3JlaWduRm9vLmNhbGxiYWNrc0NhbGxlZCBp
cyB1bmRlZmluZWQuCi1QQVNTIGZvcmVpZ25Gb28uZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQg
aXMgdW5kZWZpbmVkLgotUEFTUyBpbXBvcnRlZEZvby5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQot
UEFTUyBpbXBvcnRlZEZvby5maXJzdENoaWxkLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNT
IHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgW10KLVBBU1MgaW1wb3J0ZWRCYXIuY2FsbGJhY2tz
Q2FsbGVkIGlzIHRydWUKLVBBU1MgaW1wb3J0ZWRCYXIuZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxs
ZWQgaXMgdHJ1ZQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsnRElWJywgJ1gtRk9P
J10KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ1gtRk9PJ10KLVBBU1Mgd2luZG93
LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ1gtRk9PJ10KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKLQotVEVTVCBDT01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0
b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0aW9uLWFwaS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRpb24tYXBpLmh0bWwJ
KHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3lj
bGUtcmVhZHktY3JlYXRpb24tYXBpLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSw3NCArMCwwIEBA
Ci08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlv
bigiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxiYWNrcyBvZiBBUEkt
b3JpZ2luYXRlZCBlbGVtZW50cyBhcmUgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJsb2Nr
LiIpCi13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci1mdW5jdGlvbiBtYXJraW5nUmVhZHlD
YWxsYmFjaygpIHsKLSAgICB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkLnB1c2godGhpcy50YWdOYW1l
KTsKLSAgICB0aGlzLmNhbGxiYWNrc0NhbGxlZCA9IHRydWU7Ci19Ci0KLWRvY3VtZW50LnJlZ2lz
dGVyID0gZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci1kb2N1
bWVudC5yZWdpc3RlcigieC1mb28iLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxl
bWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogbWFya2luZ1JlYWR5Q2Fs
bGJhY2sgfSB9KSB9KTsKLWRvY3VtZW50LnJlZ2lzdGVyKCJ4LWJhciIsIHsgcHJvdG90eXBlOiBP
YmplY3QuY3JlYXRlKEhUTUxEaXZFbGVtZW50LnByb3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7
IHZhbHVlOiBtYXJraW5nUmVhZHlDYWxsYmFjayB9IH0pIH0pOwotPC9zY3JpcHQ+Ci08L2hlYWQ+
Ci08Ym9keT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Ci08ZGl2IGlkPSJob3N0Ij48L2Rp
dj4KLQotPHNjcmlwdD4KLQotc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd4
LWZvbycpLmNhbGxiYWNrc0NhbGxlZCIpOwotc2hvdWxkQmVUcnVlKCJkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCdkaXYnLCAneC1iYXInKS5jYWxsYmFja3NDYWxsZWQiKTsKLQotc2hvdWxkQmVUcnVl
KCJkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwn
LCAneC1mb28nKS5jYWxsYmFja3NDYWxsZWQiKTsKLXNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudE5TKCdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ2RpdicsICd4LWJh
cicpLmNhbGxiYWNrc0NhbGxlZCIpOwotCi12YXIgZm9vID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgneC1mb28nKTsKLWZvby5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYn
LCAneC1iYXInKSk7Ci1zaG91bGRCZVRydWUoImZvby5jbG9uZU5vZGUoKS5jYWxsYmFja3NDYWxs
ZWQiKTsKLXNob3VsZEJlVHJ1ZSgiZm9vLmNsb25lTm9kZSh0cnVlKS5maXJzdENoaWxkLmNhbGxi
YWNrc0NhbGxlZCIpOwotCi12YXIgYmFyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jywg
J3gtYmFyJyk7Ci1iYXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgneC1mb28n
KSk7Ci1zaG91bGRCZVRydWUoImJhci5jbG9uZU5vZGUoKS5jYWxsYmFja3NDYWxsZWQiKTsKLXNo
b3VsZEJlVHJ1ZSgiYmFyLmNsb25lTm9kZSh0cnVlKS5maXJzdENoaWxkLmNhbGxiYWNrc0NhbGxl
ZCIpOwotCi12YXIgZm9yZWlnbkRvYyA9IGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZURv
Y3VtZW50KCdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ2h0bWwnLCBudWxsKTsKLQot
dmFyIGZvcmVpZ25Gb28gPSBmb3JlaWduRG9jLmNyZWF0ZUVsZW1lbnQoJ3gtZm9vJyk7Ci1mb3Jl
aWduRm9vLmFwcGVuZENoaWxkKGZvcmVpZ25Eb2MuY3JlYXRlRWxlbWVudCgnZGl2JywgJ3gtYmFy
JykpOwotc2hvdWxkQmVVbmRlZmluZWQoImZvcmVpZ25Gb28uY2FsbGJhY2tzQ2FsbGVkIik7Ci1z
aG91bGRCZVVuZGVmaW5lZCgiZm9yZWlnbkZvby5maXJzdENoaWxkLmNhbGxiYWNrc0NhbGxlZCIp
OwotaW1wb3J0ZWRGb28gPSBkb2N1bWVudC5pbXBvcnROb2RlKGZvcmVpZ25Gb28pCi1zaG91bGRC
ZVRydWUoImltcG9ydGVkRm9vLmNhbGxiYWNrc0NhbGxlZCIpOwotc2hvdWxkQmVUcnVlKCJpbXBv
cnRlZEZvby5maXJzdENoaWxkLmNhbGxiYWNrc0NhbGxlZCIpOwotCi13aW5kb3cuY2FsbGJhY2tz
Q2FsbGVkID0gW107Ci12YXIgZm9yZWlnbkJhciA9IGZvcmVpZ25Eb2MuY3JlYXRlRWxlbWVudCgn
ZGl2JywgJ3gtYmFyJyk7Ci1mb3JlaWduQmFyLmFwcGVuZENoaWxkKGZvcmVpZ25Eb2MuY3JlYXRl
RWxlbWVudCgneC1mb28nKSk7Ci1zaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJb
XSIpOwotaW1wb3J0ZWRCYXIgPSBkb2N1bWVudC5pbXBvcnROb2RlKGZvcmVpZ25CYXIpOwotc2hv
dWxkQmVUcnVlKCJpbXBvcnRlZEJhci5jYWxsYmFja3NDYWxsZWQiKTsKLXNob3VsZEJlVHJ1ZSgi
aW1wb3J0ZWRCYXIuZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQiKTsKLXNob3VsZEJlKCJ3aW5k
b3cuY2FsbGJhY2tzQ2FsbGVkIiwgIlsnRElWJywgJ1gtRk9PJ10iKTsKLQotd2luZG93LmNhbGxi
YWNrc0NhbGxlZCA9IFtdOwotdmFyIHRvQmVSZXBsYWNlZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImRpdiIpOwotZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0b0JlUmVwbGFjZWQpOwotdG9C
ZVJlcGxhY2VkLm91dGVySFRNTCA9ICI8eC1mb28+PC94LWZvbz4iOwotc2hvdWxkQmUoIndpbmRv
dy5jYWxsYmFja3NDYWxsZWQiLCAiWydYLUZPTyddIik7Ci0KLXdpbmRvdy5jYWxsYmFja3NDYWxs
ZWQgPSBbXTsKLXZhciBpbnNlcnRpb25QbGFjZUhvbGRlciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoImRpdiIpOwotZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbnNlcnRpb25QbGFjZUhvbGRl
cik7Ci1pbnNlcnRpb25QbGFjZUhvbGRlci5pbnNlcnRBZGphY2VudEhUTUwoImJlZm9yZWJlZ2lu
IiwgIjx4LWZvbz48L3gtZm9vPiIpOwotc2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQi
LCAiWydYLUZPTyddIik7Ci0KLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhUTUwtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZl
Y3ljbGUtcmVhZHktaW5uZXJIVE1MLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAzNzMyKQorKysg
TGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhUTUwtZXhw
ZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsMTEgKzAsMCBAQAotVGhpcyB0ZXN0IGVuc3Vy
ZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxiYWNrIG9mIGEgcGFyc2VyLW1hZGUgZWxlbWVudCBp
cyB2aXNpYmxlIGluIGZvbGxvd2luZyBzY3JpcHQgYmxvY2suCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KLQotCi1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydhJywgJ2InLCAn
YyddCi1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydhJywgJ2InLCAnYyddCi1QQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhUTUwuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5
LWlubmVySFRNTC5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWlubmVySFRNTC5odG1sCShub25leGlzdGVudCkKQEAg
LTEsMzYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0
PgotZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxs
YmFjayBvZiBhIHBhcnNlci1tYWRlIGVsZW1lbnQgaXMgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2Ny
aXB0IGJsb2NrLiIpCi1kb2N1bWVudC5yZWdpc3RlciA9IGRvY3VtZW50LnJlZ2lzdGVyIHx8IGRv
Y3VtZW50LndlYmtpdFJlZ2lzdGVyOwotCi13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci0K
LWZ1bmN0aW9uIHRyYWNraW5nUmVhZHlDYWxsYmFjaygpCi17Ci0gICAgd2luZG93LmNhbGxiYWNr
c0NhbGxlZC5wdXNoKHRoaXMuaWQpOwotfQotCi1kb2N1bWVudC5yZWdpc3RlcigieC1mb28iLCB7
IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlD
YWxsYmFjazogeyB2YWx1ZTogdHJhY2tpbmdSZWFkeUNhbGxiYWNrIH0gfSkgfSk7Ci1kb2N1bWVu
dC5yZWdpc3RlcigieC1iYXIiLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRGl2RWxl
bWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogdHJhY2tpbmdSZWFkeUNh
bGxiYWNrIH0gfSkgfSk7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1iYXoiLCB7IHByb3RvdHlwZTog
T2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2
YWx1ZTogdHJhY2tpbmdSZWFkeUNhbGxiYWNrIH0gfSkgfSk7Ci08L3NjcmlwdD4KLTwvaGVhZD4K
LTxib2R5PgotPGRpdiBpZD0iY29udGFpbmVyIj4KLTxzY3JpcHQ+Ci0vLyBUZXN0aW5nIGVsZW1l
bnQgc2libGluZ3MKLXdpbmRvdy5jYWxsYmFja3NDYWxsZWQgPSBbXTsKLWNvbnRhaW5lci5pbm5l
ckhUTUwgPSAiPHgtZm9vIGlkPSdhJz48L3gtZm9vPjxkaXYgaWQ9J2InIGlzPSd4LWJhcic+PC9k
aXY+PHgtYmF6IGlkPSdjJz48L3gtYmF6PiI7Ci1zaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0Nh
bGxlZCIsICJbJ2EnLCAnYicsICdjJ10iKTsKLQotLy8gVGVzdGluZyBuZXN0ZWQgZWxlbWVudHMK
LXdpbmRvdy5jYWxsYmFja3NDYWxsZWQgPSBbXTsKLWNvbnRhaW5lci5pbm5lckhUTUwgPSAiPHgt
Zm9vIGlkPSdhJz48ZGl2IGlkPSdiJyBpcz0neC1iYXInPjx4LWJheiBpZD0nYyc+PC94LWJhej48
L2Rpdj48L3gtZm9vPiI7Ci1zaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ2En
LCAnYicsICdjJ10iKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItb25seS1leHBl
Y3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZl
Y3ljbGUtcmVhZHktcGFyc2VyLW9ubHktZXhwZWN0ZWQuaHRtbAkocmV2aXNpb24gMjAzNzMyKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItb25s
eS1leHBlY3RlZC5odG1sCShub25leGlzdGVudCkKQEAgLTEsNiArMCwwIEBACi08IURPQ1RZUEUg
aHRtbD4KLTxodG1sPgotPGJvZHk+Ci08c3Bhbj5IZWxsbzwvc3Bhbj4KLTwvYm9keT4KLTwvaHRt
bD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFy
c2VyLW9ubHkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20v
bGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1vbmx5Lmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExh
eW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLW9ubHkuaHRt
bAkobm9uZXhpc3RlbnQpCkBAIC0xLDEzICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+
Ci08aGVhZD4KLTxzY3JpcHQ+Ci1kb2N1bWVudC5yZWdpc3RlciA9IGRvY3VtZW50LnJlZ2lzdGVy
IHx8IGRvY3VtZW50LndlYmtpdFJlZ2lzdGVyOwotcHJvdG8gPSBPYmplY3QuY3JlYXRlKEhUTUxF
bGVtZW50LnByb3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiBmdW5jdGlvbigpIHsg
dGhpcy5pbm5lckhUTUwgPSAiSGVsbG8iOyB9IH0gfSk7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1m
b28iLCB7IHByb3RvdHlwZTogcHJvdG8gfSk7Ci08L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5Pgot
PHgtZm9vPjwveC1mb28+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1zY3JpcHQtZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHkt
cGFyc2VyLXNjcmlwdC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRl
c3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNjcmlwdC1leHBlY3Rl
ZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMCArMCwwIEBACi1UaGlzIHRlc3QgZW5zdXJlcyB0
aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJhY2sgb2YgYSBwYXJzZXItbWFkZSBlbGVtZW50IGlzIHZp
c2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4KLQotT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgotCi0KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItc2NyaXB0Lmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1w
YXJzZXItc2NyaXB0Lmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3Qv
ZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNjcmlwdC5odG1sCShub25leGlzdGVu
dCkKQEAgLTEsMTkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNj
cmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08
c2NyaXB0PgotZGVzY3JpcHRpb24oIlRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNs
ZSBjYWxsYmFjayBvZiBhIHBhcnNlci1tYWRlIGVsZW1lbnQgaXMgdmlzaWJsZSBpbiBmb2xsb3dp
bmcgc2NyaXB0IGJsb2NrLiIpCi1kb2N1bWVudC5yZWdpc3RlciA9IGRvY3VtZW50LnJlZ2lzdGVy
IHx8IGRvY3VtZW50LndlYmtpdFJlZ2lzdGVyOwotcHJvdG8gPSBPYmplY3QuY3JlYXRlKEhUTUxF
bGVtZW50LnByb3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiBmdW5jdGlvbigpIHsg
d2luZG93LmNhbGxiYWNrc0NhbGxlZCA9IHRydWU7IH0gfSB9KTsKLWRvY3VtZW50LnJlZ2lzdGVy
KCJ4LWZvbyIsIHsgcHJvdG90eXBlOiBwcm90byB9KTsKLTwvc2NyaXB0PgotPC9oZWFkPgotPGJv
ZHk+Ci08eC1mb28+PC94LWZvbz4KLTxzY3JpcHQ+Ci1zaG91bGRCZVRydWUoIndpbmRvdy5jYWxs
YmFja3NDYWxsZWQiKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXN0ZS1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1y
ZWFkeS1wYXN0ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3Rz
L2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUtZXhwZWN0ZWQudHh0CShub25l
eGlzdGVudCkKQEAgLTEsMTEgKzAsMCBAQAotVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUgbGlm
ZWN5Y2xlIGNhbGxiYWNrcyBvZiBlZGl0aW5nLW9yaWdpbmF0ZWQgZWxlbWVudHMgYXJlIHZpc2li
bGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgotCi0KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ1gtRk9PJywgJ0RJViddCi1Q
QVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydYLUZPTycsICdESVYnLCAnWC1GT08nLCAn
RElWJ10KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQot
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhc3Rl
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNs
ZS1yZWFkeS1wYXN0ZS5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhc3RlLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAt
MSwzMCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQ+
Ci1kZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxi
YWNrcyBvZiBlZGl0aW5nLW9yaWdpbmF0ZWQgZWxlbWVudHMgYXJlIHZpc2libGUgaW4gZm9sbG93
aW5nIHNjcmlwdCBibG9jay4iKQotZG9jdW1lbnQucmVnaXN0ZXIgPSBkb2N1bWVudC5yZWdpc3Rl
ciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3RlcjsKLXdpbmRvdy5jYWxsYmFja3NDYWxsZWQgPSBb
XTsKLWRvY3VtZW50LnJlZ2lzdGVyKCJ4LWZvbyIsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRl
KEhUTUxFbGVtZW50LnByb3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiBmdW5jdGlv
bigpIHsgd2luZG93LmNhbGxiYWNrc0NhbGxlZC5wdXNoKHRoaXMudGFnTmFtZSk7IH0gfSB9KSB9
KTsKLWRvY3VtZW50LnJlZ2lzdGVyKCJ4LWJhciIsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRl
KEhUTUxEaXZFbGVtZW50LnByb3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiBmdW5j
dGlvbigpIHsgd2luZG93LmNhbGxiYWNrc0NhbGxlZC5wdXNoKHRoaXMudGFnTmFtZSk7IH0gfSB9
KSB9KTsKLTwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJjb250YWluZXIiIGNv
bnRlbnRlZGl0YWJsZT5bPHgtZm9vPkZvbzwveC1mb28+PGRpdiBpcz0neC1iYXInPkJhcjwvZGl2
Pl08L2Rpdj4KLTxzY3JpcHQ+Ci12YXIgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigp
OwotCi1zZWxlY3Rpb24uc2VsZWN0QWxsQ2hpbGRyZW4oY29udGFpbmVyKTsKLWRvY3VtZW50LmV4
ZWNDb21tYW5kKCJDb3B5Iik7Ci0KLXNob3VsZEJlKCJ3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIiwg
IlsnWC1GT08nLCAnRElWJ10iKTsKLXNlbGVjdGlvbi5jb2xsYXBzZVRvRW5kKCk7Ci1kb2N1bWVu
dC5leGVjQ29tbWFuZCgiUGFzdGUiKTsKLXNob3VsZEJlKCJ3aW5kb3cuY2FsbGJhY2tzQ2FsbGVk
IiwgIlsnWC1GT08nLCAnRElWJywgJ1gtRk9PJywgJ0RJViddIik7Ci0KLWNvbnRhaW5lci5zdHls
ZS5kaXNwbGF5ID0gIm5vbmUiOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4
OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vcmVzb3VyY2VzL2RvY3VtZW50LXJlZ2lzdGVy
LWZ1enouanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL3Jlc291
cmNlcy9kb2N1bWVudC1yZWdpc3Rlci1mdXp6LmpzCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vcmVzb3VyY2VzL2RvY3VtZW50LXJlZ2lzdGVyLWZ1enou
anMJKG5vbmV4aXN0ZW50KQpAQCAtMSw0OSArMCwwIEBACi0KLWZ1bmN0aW9uIHNldHVwT2JqZWN0
SG9va3MoaG9va3MpCi17Ci0gICAgLy8gV3JhcHBlciBmb3IgdGhlc2Ugb2JqZWN0IHNob3VsZCBi
ZSBtYXRlcmlhbGl6ZWQgYmVmb3JlIHNldHRpbmcgaG9va3MuCi0gICAgY29uc29sZS5sb2c7Ci0g
ICAgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXIKLSAgICBIVE1MU3BhbkVsZW1lbnQucHJvdG90eXBl
OwotCi0gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KE9iamVjdC5wcm90b3R5cGUsICJwcm90b3R5
cGUiLCB7Ci0gICAgICAgIGdldDogZnVuY3Rpb24oKSB7IHJldHVybiBob29rcy5wcm90b3R5cGVH
ZXQoKTsgfSwKLSAgICAgICAgc2V0OiBmdW5jdGlvbih2YWx1ZSkgeyByZXR1cm4gaG9va3MucHJv
dG90eXBlU2V0KHZhbHVlKTsgfQotICAgIH0pOwotCi0gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5
KE9iamVjdC5wcm90b3R5cGUsICJjb25zdHJ1Y3RvciIsIHsKLSAgICAgICAgZ2V0OiBmdW5jdGlv
bigpIHsgcmV0dXJuIGhvb2tzLmNvbnN0cnVjdG9yR2V0KCk7IH0sCi0gICAgICAgIHNldDogZnVu
Y3Rpb24odmFsdWUpIHsgcmV0dXJuIGhvb2tzLmNvbnN0cnVjdG9yU2V0KHZhbHVlKTsgfQotICAg
IH0pOwotCi0gICAgcmV0dXJuIGhvb2tzOwotfQotCi1mdW5jdGlvbiBleGVyY2lzZURvY3VtZW50
UmVnaXN0ZXIoKQotewotICAgIHZhciBteUNvbnN0cnVjdG9yID0gbnVsbDsKLSAgICB2YXIgbXlQ
cm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEhUTUxFbGVtZW50LnByb3RvdHlwZSk7Ci0gICAgdHJ5
IHsKLSAgICAgICAgbXlDb25zdHJ1Y3RvciA9IGRvY3VtZW50LndlYmtpdFJlZ2lzdGVyKCJ4LWRv
LW5vdGhpbmciLCB7IHByb3RvdHlwZTogbXlQcm90b3R5cGUgfSk7Ci0gICAgfSBjYXRjaCAoZSkg
eyB9Ci0KLSAgICB0cnkgewotICAgICAgICBpZiAoIW15Q29uc3RydWN0b3IpIHsKLSAgICAgICAg
ICAgIGRlYnVnKCJDb25zdHJ1Y3RvciBvYmplY3QgaXNuJ3QgY3JlYXRlZC4iKTsKLSAgICAgICAg
ICAgIHJldHVybjsKLSAgICAgICAgfQotCi0gICAgICAgIGlmIChteUNvbnN0cnVjdG9yLnByb3Rv
dHlwZSAhPSBteVByb3RvdHlwZSkgewotICAgICAgICAgICAgY29uc29sZS5sb2coIkZBSUw6IGJh
ZCBwcm90b3R5cGUiKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgIH0KLQotICAgICAg
ICB2YXIgZWxlbWVudCA9IG5ldyBteUNvbnN0cnVjdG9yKCk7Ci0gICAgICAgIGlmICghZWxlbWVu
dCkKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgaWYgKGVsZW1lbnQuY29uc3RydWN0b3Ig
IT0gbXlDb25zdHJ1Y3RvcikgewotICAgICAgICAgICAgY29uc29sZS5sb2coIkZBSUw6IGJhZCBj
b25zdHJ1Y3RvciIpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICAgfQotICAgIH0gY2F0
Y2ggKGUpIHsgY29uc29sZS5sb2coZSk7IH0KLX0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9t
L2N1c3RvbS9yZXNvdXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vcmVzb3VyY2VzL2RvY3VtZW50LXJlZ2lzdGVy
LWZ1enouanMJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3Rv
bS9yZXNvdXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcwkobm9uZXhpc3RlbnQpCkBAIC0x
LDQ5ICswLDAgQEAKLQotZnVuY3Rpb24gc2V0dXBPYmplY3RIb29rcyhob29rcykKLXsKLSAgICAv
LyBXcmFwcGVyIGZvciB0aGVzZSBvYmplY3Qgc2hvdWxkIGJlIG1hdGVyaWFsaXplZCBiZWZvcmUg
c2V0dGluZyBob29rcy4KLSAgICBjb25zb2xlLmxvZzsKLSAgICBkb2N1bWVudC53ZWJraXRSZWdp
c3RlcgotICAgIEhUTUxTcGFuRWxlbWVudC5wcm90b3R5cGU7Ci0KLSAgICBPYmplY3QuZGVmaW5l
UHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgInByb3RvdHlwZSIsIHsKLSAgICAgICAgZ2V0OiBm
dW5jdGlvbigpIHsgcmV0dXJuIGhvb2tzLnByb3RvdHlwZUdldCgpOyB9LAotICAgICAgICBzZXQ6
IGZ1bmN0aW9uKHZhbHVlKSB7IHJldHVybiBob29rcy5wcm90b3R5cGVTZXQodmFsdWUpOyB9Ci0g
ICAgfSk7Ci0KLSAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgImNv
bnN0cnVjdG9yIiwgewotICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgeyByZXR1cm4gaG9va3MuY29u
c3RydWN0b3JHZXQoKTsgfSwKLSAgICAgICAgc2V0OiBmdW5jdGlvbih2YWx1ZSkgeyByZXR1cm4g
aG9va3MuY29uc3RydWN0b3JTZXQodmFsdWUpOyB9Ci0gICAgfSk7Ci0KLSAgICByZXR1cm4gaG9v
a3M7Ci19Ci0KLWZ1bmN0aW9uIGV4ZXJjaXNlRG9jdW1lbnRSZWdpc3RlcigpCi17Ci0gICAgdmFy
IG15Q29uc3RydWN0b3IgPSBudWxsOwotICAgIHZhciBteVByb3RvdHlwZSA9IE9iamVjdC5jcmVh
dGUoSFRNTEVsZW1lbnQucHJvdG90eXBlKTsKLSAgICB0cnkgewotICAgICAgICBteUNvbnN0cnVj
dG9yID0gZG9jdW1lbnQud2Via2l0UmVnaXN0ZXIoIngtZG8tbm90aGluZyIsIHsgcHJvdG90eXBl
OiBteVByb3RvdHlwZSB9KTsKLSAgICB9IGNhdGNoIChlKSB7IH0KLQotICAgIHRyeSB7Ci0gICAg
ICAgIGlmICghbXlDb25zdHJ1Y3RvcikgewotICAgICAgICAgICAgZGVidWcoIkNvbnN0cnVjdG9y
IG9iamVjdCBpc24ndCBjcmVhdGVkLiIpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9
Ci0KLSAgICAgICAgaWYgKG15Q29uc3RydWN0b3IucHJvdG90eXBlICE9IG15UHJvdG90eXBlKSB7
Ci0gICAgICAgICAgICBjb25zb2xlLmxvZygiRkFJTDogYmFkIHByb3RvdHlwZSIpOwotICAgICAg
ICAgICAgcmV0dXJuOwotICAgICAgICAgfQotCi0gICAgICAgIHZhciBlbGVtZW50ID0gbmV3IG15
Q29uc3RydWN0b3IoKTsKLSAgICAgICAgaWYgKCFlbGVtZW50KQotICAgICAgICAgICAgcmV0dXJu
OwotICAgICAgICBpZiAoZWxlbWVudC5jb25zdHJ1Y3RvciAhPSBteUNvbnN0cnVjdG9yKSB7Ci0g
ICAgICAgICAgICBjb25zb2xlLmxvZygiRkFJTDogYmFkIGNvbnN0cnVjdG9yIik7Ci0gICAgICAg
ICAgICByZXR1cm47Ci0gICAgICAgICB9Ci0gICAgfSBjYXRjaCAoZSkgeyBjb25zb2xlLmxvZyhl
KTsgfQotfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>284626</attachid>
            <date>2016-07-26 13:45:58 -0700</date>
            <delta_ts>2016-07-26 13:48:14 -0700</delta_ts>
            <desc>Removed entries from TestExpectations</desc>
            <filename>bug-160209-20160726134449.patch</filename>
            <type>text/plain</type>
            <size>106605</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDQ3IEBACisyMDE2LTA3LTI2ICBSeW9zdWtlIE5pd2EgIDxy
bml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSB0aGUgdGVzdHMgZm9yIGxlZ2FjeSBj
dXN0b20gZWxlbWVudHMgQVBJCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNjAyMDkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBSZW1vdmVkIHRoZSB0ZXN0cyBmb3IgbGVnYWN5IGN1c3RvbSBlbGVtZW50cyB2
MCBBUEkuIFRoZSB0ZXN0cyBmb3IgdGhlIG5ldyB2MSBBUEkgaXMgYXQgZmFzdC9jdXN0b20tZWxl
bWVudHMuCisKKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b206IFJlbW92ZWQuCisgICAgICAgICog
ZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLWJhc2ljLWV4cGVjdGVkLnR4dDogUmVt
b3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItYmFzaWMu
aHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0
ZXItbmFtZXNwYWNlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9j
dXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItbmFtZXNwYWNlLmh0bWw6IFJlbW92ZWQuCisgICAgICAg
ICogZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1udWxsLWNvbnN0
cnVjdG9yLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20v
ZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LW51bGwtY29uc3RydWN0b3IuaHRtbDogUmVtb3Zl
ZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50
LXJldHVybmluZy1mYWtlLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2Rv
bS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLmh0bWw6
IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJl
ZW50cmFudC10aHJvd2luZy1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQ6IFJlbW92ZWQuCisgICAg
ICAgICogZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC10aHJvd2lu
Zy1jb25zdHJ1Y3Rvci5odG1sOiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9k
b2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgor
ICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lv
bnMuaHRtbDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJl
YWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJzaW9uLWV4cGVjdGVkLnR4dDogUmVtb3ZlZC4KKyAgICAg
ICAgKiBmYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJz
aW9uLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1y
ZWFkeS1jcmVhdGVFbGVtZW50LXJlZW50cmFuY3ktZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAg
ICAgICAqIGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWVu
dHJhbmN5Lmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNs
ZS1yZWFkeS1jcmVhdGlvbi1hcGktZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGZh
c3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRpb24tYXBpLmh0bWw6IFJlbW92ZWQu
CisgICAgICAgICogZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhUTUwtZXhw
ZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUt
cmVhZHktaW5uZXJIVE1MLmh0bWw6IFJlbW92ZWQuCisgICAgICAgICogZmFzdC9kb20vY3VzdG9t
L2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItb25seS1leHBlY3RlZC5odG1sOiBSZW1vdmVkLgorICAg
ICAgICAqIGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLW9ubHkuaHRtbDog
UmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNl
ci1zY3JpcHQtZXhwZWN0ZWQudHh0OiBSZW1vdmVkLgorICAgICAgICAqIGZhc3QvZG9tL2N1c3Rv
bS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNjcmlwdC5odG1sOiBSZW1vdmVkLgorICAgICAgICAq
IGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUtZXhwZWN0ZWQudHh0OiBSZW1v
dmVkLgorICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUuaHRt
bDogUmVtb3ZlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9jdXN0b20vcmVzb3VyY2VzOiBSZW1vdmVk
LgorICAgICAgICAqIGZhc3QvZG9tL2N1c3RvbS9yZXNvdXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXIt
ZnV6ei5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9u
czoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9uczoKKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3Mtc2ltdWxhdG9yL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZv
cm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vd2luL1Rlc3RFeHBl
Y3RhdGlvbnM6CisKIDIwMTYtMDctMjYgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29t
PgogCiAgICAgICAgIFtGZXRjaCBBUEldIEFkZCBzdXBwb3J0IGZvciBmZXRjaCBtb2RlLCBpbiBw
YXJ0aWN1bGFyIGNvcnMKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVu
dC1yZWdpc3Rlci1iYXNpYy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLWJhc2ljLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJl
Z2lzdGVyLWJhc2ljLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDQ5ICswLDAgQEAK
LVRlc3RpbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSBiYXNpYyBiZWhhdmlvcnMuCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGRvY3VtZW50LnJlZ2lzdGVyKCdmb28nLCBjcmVh
dGVSZWdpc3RlclBhcmFtdGVycygpKSB0aHJldyBleGNlcHRpb24gSW52YWxpZENoYXJhY3RlckVy
cm9yIChET00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNvbnRhaW5zIGludmFsaWQgY2hhcmFj
dGVycy4uCi1QQVNTIGRvY3VtZW50LnJlZ2lzdGVyKCd4Zm9vJywgY3JlYXRlUmVnaXN0ZXJQYXJh
bXRlcnMoKSkgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4Y2Vw
dGlvbiA1KTogVGhlIHN0cmluZyBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcnMuLgotUEFTUyBk
b2N1bWVudC5yZWdpc3RlcignbWlzc2luZy1nbHlwaCcsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJz
KCkpIHRocmV3IGV4Y2VwdGlvbiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24g
NSk6IFRoZSBzdHJpbmcgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzLi4KLVBBU1MgdHlwZW9m
IGZvb0NvbnN0cnVjdG9yIGlzICdmdW5jdGlvbicKLVBBU1MgZm9vQ29uc3RydWN0b3IucHJvdG90
eXBlLl9fcHJvdG9fXyBpcyBIVE1MRWxlbWVudC5wcm90b3R5cGUKLVBBU1MgZm9vQ29uc3RydWN0
b3IucHJvdG90eXBlLnRoaXNJc1Byb3RvdHlwZSBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LnJlZ2lz
dGVyKCd4LWZvbycsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpIHRocmV3IGV4Y2VwdGlvbiBJ
bnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4g
aW52YWxpZCBzdGF0ZS4uCi1QQVNTIGRvY3VtZW50LnJlZ2lzdGVyKCdYLUZPTycsIGNyZWF0ZVJl
Z2lzdGVyUGFyYW10ZXJzKCkpIHRocmV3IGV4Y2VwdGlvbiBJbnZhbGlkU3RhdGVFcnJvciAoRE9N
IEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4uCi1QQVNT
IGRvY3VtZW50LnJlZ2lzdGVyKCd4LWJhZC1hJywgeyBwcm90b3R5cGU6IEhUTUxFbGVtZW50LnBy
b3RvdHlwZSB9KSB0aHJldyBleGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNlcHRp
b24gMTEpOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLgotUEFTUyBkb2N1bWVu
dC5yZWdpc3RlcigneC1iYWQtYicsIHsgcHJvdG90eXBlOiB7fSB9KSB0aHJldyBleGNlcHRpb24g
SW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNlcHRpb24gMTEpOiBUaGUgb2JqZWN0IGlzIGluIGFu
IGludmFsaWQgc3RhdGUuLgotUEFTUyBkb2N1bWVudC5yZWdpc3RlcigneC1iYWQtYycsIHsgcHJv
dG90eXBlOiBPYmplY3QuY3JlYXRlKERvY3VtZW50LnByb3RvdHlwZSkgfSkgdGhyZXcgZXhjZXB0
aW9uIEludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBp
biBhbiBpbnZhbGlkIHN0YXRlLi4KLVBBU1MgZm9vQ29uc3RydWN0b3IoKSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBjYWxsZWQgYXMg
YSBmdW5jdGlvbi4uCi1QQVNTIGNyZWF0ZWRGb28uX19wcm90b19fIGlzIGZvb0NvbnN0cnVjdG9y
LnByb3RvdHlwZQotUEFTUyBjcmVhdGVkRm9vLmNvbnN0cnVjdG9yIGlzIGZvb0NvbnN0cnVjdG9y
Ci1QQVNTIGNyZWF0ZWRGb28udGFnTmFtZSBpcyAnWC1GT08nCi1QQVNTIGNyZWF0ZWRGb28udGV4
dENvbnRlbnQgaXMgJ0hlbGxvJwotUEFTUyBjcmVhdGVkRm9vLmxhc3RDaGlsZCBpcyBjaGlsZERp
dgotUEFTUyBwYXJzZWRGb28uX19wcm90b19fIGlzIGZvb0NvbnN0cnVjdG9yLnByb3RvdHlwZQot
UEFTUyBwYXJzZWRGb28udGFnTmFtZSBpcyAnWC1GT08nCi1QQVNTIHBhcnNlZEZvby5zb21lUHJv
cGVydHkgaXMgY29udGFpbmVyLmZpcnN0Q2hpbGQuc29tZVByb3BlcnR5Ci1QQVNTIGJhckNvbnN0
cnVjdG9yICE9PSBmb29Db25zdHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGNyZWF0ZWRCYXIudGFnTmFt
ZSBpcyAnWC1CQVInCi1QQVNTIGNyZWF0ZWRCYXoudGFnTmFtZSBpcyAnWC1CQVonCi1QQVNTIGNy
ZWF0ZWRCYXoudGhpc0lzUHJvdG90eXBlIGlzIHRydWUKLVBBU1MgY3JlYXRlZEJhei50aGlzSXNB
bHNvUHJvdG90eXBlIGlzIHRydWUKLVBBU1MgY3JlYXRlZFVwcGVyQmFyLmNvbnN0cnVjdG9yIGlz
IGJhckNvbnN0cnVjdG9yCi1QQVNTIGNyZWF0ZWRVcHBlckJhci50YWdOYW1lIGlzICdYLUJBUicK
LVBBU1MgY3JlYXRlZE1peGVkQmFyLmNvbnN0cnVjdG9yIGlzIGJhckNvbnN0cnVjdG9yCi1QQVNT
IGNyZWF0ZWRNaXhlZEJhci50YWdOYW1lIGlzICdYLUJBUicKLVBBU1MgY29udGFpbmVyLmZpcnN0
Q2hpbGQuY29uc3RydWN0b3IgaXMgYmFyQ29uc3RydWN0b3IKLVBBU1MgY29udGFpbmVyLmZpcnN0
Q2hpbGQudGFnTmFtZSBpcyAnWC1CQVInCi1QQVNTIGNvbnRhaW5lci5sYXN0Q2hpbGQuY29uc3Ry
dWN0b3IgaXMgYmFyQ29uc3RydWN0b3IKLVBBU1MgY29udGFpbmVyLmxhc3RDaGlsZC50YWdOYW1l
IGlzICdYLUJBUicKLVBBU1MgKG5ldyAoZG9jdW1lbnQucmVnaXN0ZXIoJ3ktYmFyJywgY3JlYXRl
UmVnaXN0ZXJQYXJhbXRlcnMoKSkpKCkpLnRhZ05hbWUgaXMgJ1ktQkFSJwotUEFTUyAobmV3IChk
b2N1bWVudC5yZWdpc3RlcigneXotYmFyJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkpKCkp
LnRhZ05hbWUgaXMgJ1laLUJBUicKLVBBU1MgKG5ldyAoZG9jdW1lbnQucmVnaXN0ZXIoJ3ktei1i
YXInLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSkoKSkudGFnTmFtZSBpcyAnWS1aLUJBUicK
LVBBU1MgKG5ldyAoZG9jdW1lbnQucmVnaXN0ZXIoJ3ktLWJhcicsIGNyZWF0ZVJlZ2lzdGVyUGFy
YW10ZXJzKCkpKSgpKS50YWdOYW1lIGlzICdZLS1CQVInCi1QQVNTIChuZXcgZm9vQ29uc3RydWN0
b3IpLnRhZ05hbWUgaXMgJ1gtRk9PJwotUEFTUyAobmV3IGJhckNvbnN0cnVjdG9yKS50YWdOYW1l
IGlzICdYLUJBUicKLVBBU1MgKG5ldyBiYXpDb25zdHJ1Y3RvcikudGFnTmFtZSBpcyAnWC1CQVon
Ci1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRl
eDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLWJhc2ljLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJl
Z2lzdGVyLWJhc2ljLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3Qv
ZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1iYXNpYy5odG1sCShub25leGlzdGVudCkKQEAg
LTEsMTE3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPC9oZWFk
PgotPGJvZHk+Ci08ZGl2IGlkPSJjb250YWluZXIiPjwvZGl2PgotPHNjcmlwdD4KLWRlc2NyaXB0
aW9uKCJUZXN0aW5nIGRvY3VtZW50LnJlZ2lzdGVyKCkgYmFzaWMgYmVoYXZpb3JzLiIpOwotCi1p
ZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci1kb2N1
bWVudC5yZWdpc3RlciA9IGRvY3VtZW50LnJlZ2lzdGVyIHx8IGRvY3VtZW50LndlYmtpdFJlZ2lz
dGVyOwotCi1mdW5jdGlvbiBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpCi17Ci0gICAgcmV0dXJu
IHsKLSAgICAgICAgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxFbGVtZW50LnByb3RvdHlw
ZSwgeyB0aGlzSXNQcm90b3R5cGU6IHsgdmFsdWU6IHRydWUgfSB9KQotICAgIH07Ci19Ci0KLS8v
IEludmFsaWQgbmFtZXMKLXNob3VsZFRocm93KCJkb2N1bWVudC5yZWdpc3RlcignZm9vJywgY3Jl
YXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkiLCAiJ0ludmFsaWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4
Y2VwdGlvbiA1KTogVGhlIHN0cmluZyBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcnMuJyIpOwot
c2hvdWxkVGhyb3coImRvY3VtZW50LnJlZ2lzdGVyKCd4Zm9vJywgY3JlYXRlUmVnaXN0ZXJQYXJh
bXRlcnMoKSkiLCAiJ0ludmFsaWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4Y2VwdGlvbiA1KTogVGhl
IHN0cmluZyBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcnMuJyIpOwotc2hvdWxkVGhyb3coImRv
Y3VtZW50LnJlZ2lzdGVyKCdtaXNzaW5nLWdseXBoJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMo
KSkiLCAiJ0ludmFsaWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4Y2VwdGlvbiA1KTogVGhlIHN0cmlu
ZyBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlcnMuJyIpOwotCi12YXIgZm9vQ29uc3RydWN0b3Ig
PSBkb2N1bWVudC5yZWdpc3RlcigieC1mb28iLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKTsK
LXNob3VsZEJlKCJ0eXBlb2YgZm9vQ29uc3RydWN0b3IiLCAiJ2Z1bmN0aW9uJyIpOwotc2hvdWxk
QmUoImZvb0NvbnN0cnVjdG9yLnByb3RvdHlwZS5fX3Byb3RvX18iLCAiSFRNTEVsZW1lbnQucHJv
dG90eXBlIik7Ci1zaG91bGRCZVRydWUoImZvb0NvbnN0cnVjdG9yLnByb3RvdHlwZS50aGlzSXNQ
cm90b3R5cGUiKTsKLQotLy8gTmFtZSBjb25mbGljdHMKLXNob3VsZFRocm93KCJkb2N1bWVudC5y
ZWdpc3RlcigneC1mb28nLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSIsICInSW52YWxpZFN0
YXRlRXJyb3IgKERPTSBFeGNlcHRpb24gMTEpOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQg
c3RhdGUuJyIpOwotc2hvdWxkVGhyb3coImRvY3VtZW50LnJlZ2lzdGVyKCdYLUZPTycsIGNyZWF0
ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpIiwgIidJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlv
biAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4nIik7Ci0KLS8vIEJhZCBw
cm90b3R5cGU6IGNvbnN0cnVjdG9yIHByb3BlcnR5IGV4aXN0cwotc2hvdWxkVGhyb3coImRvY3Vt
ZW50LnJlZ2lzdGVyKCd4LWJhZC1hJywgeyBwcm90b3R5cGU6IEhUTUxFbGVtZW50LnByb3RvdHlw
ZSB9KSIsICInSW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNlcHRpb24gMTEpOiBUaGUgb2JqZWN0
IGlzIGluIGFuIGludmFsaWQgc3RhdGUuJyIpOwotLy8gQmFkIHByb3RvdHlwZTogbWlzc2luZyBf
X3Byb3RvX18KLXNob3VsZFRocm93KCJkb2N1bWVudC5yZWdpc3RlcigneC1iYWQtYicsIHsgcHJv
dG90eXBlOiB7fSB9KSIsICInSW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNlcHRpb24gMTEpOiBU
aGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuJyIpOwotLy8gQmFkIHByb3RvdHlwZTog
d3JvbmcgX19wcm90b19fCi1zaG91bGRUaHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFkLWMn
LCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShEb2N1bWVudC5wcm90b3R5cGUpIH0pIiwgIidJ
bnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4g
aW52YWxpZCBzdGF0ZS4nIik7Ci0vLyBDYWxsIGFzIGZ1bmN0aW9uCi1zaG91bGRUaHJvdygiZm9v
Q29uc3RydWN0b3IoKSIsICInVHlwZUVycm9yOiBET00gb2JqZWN0IGNvbnN0cnVjdG9yIGNhbm5v
dCBiZSBjYWxsZWQgYXMgYSBmdW5jdGlvbi4nIikKLQotLy8gQ29uc3RydWN0b3IgaW5pdGlhdGVk
IGluc3RhbnRpYXRpb24KLXZhciBjcmVhdGVkRm9vID0gbmV3IGZvb0NvbnN0cnVjdG9yKCk7Ci0K
LS8vIEpTIGJ1aWx0LWluIHByb3BlcnRpZXMKLXNob3VsZEJlKCJjcmVhdGVkRm9vLl9fcHJvdG9f
XyIsICJmb29Db25zdHJ1Y3Rvci5wcm90b3R5cGUiKTsKLXNob3VsZEJlKCJjcmVhdGVkRm9vLmNv
bnN0cnVjdG9yIiwgImZvb0NvbnN0cnVjdG9yIik7Ci0KLS8vIE5hdGl2ZSBnZXR0ZXIKLXNob3Vs
ZEJlKCJjcmVhdGVkRm9vLnRhZ05hbWUiLCAiJ1gtRk9PJyIpOwotCi0vLyBOYXRpdmUgc2V0dGVy
Ci1jcmVhdGVkRm9vLmlubmVySFRNTCA9ICJIZWxsbyI7Ci1zaG91bGRCZSgiY3JlYXRlZEZvby50
ZXh0Q29udGVudCIsICInSGVsbG8nIik7Ci0KLS8vIE5hdGl2ZSBtZXRob2QKLXZhciBjaGlsZERp
diA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotY3JlYXRlZEZvby5hcHBlbmRDaGls
ZChjaGlsZERpdik7Ci1zaG91bGRCZSgiY3JlYXRlZEZvby5sYXN0Q2hpbGQiLCAiY2hpbGREaXYi
KTsKLQotLy8gUGFyc2VyIGluaXRpYXRlZCBpbnN0YW50aWF0aW9uCi12YXIgY29udGFpbmVyID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRhaW5lciIpOwotY29udGFpbmVyLmlubmVySFRN
TCA9ICI8eC1mb28+PC94LWZvbz4iOwotcGFyc2VkRm9vID0gY29udGFpbmVyLmZpcnN0Q2hpbGQ7
Ci0KLXNob3VsZEJlKCJwYXJzZWRGb28uX19wcm90b19fIiwgImZvb0NvbnN0cnVjdG9yLnByb3Rv
dHlwZSIpOwotc2hvdWxkQmUoInBhcnNlZEZvby50YWdOYW1lIiwgIidYLUZPTyciKTsKLQotLy8g
RW5zdXJpbmcgdGhlIHdyYXBwZXIgaXMgcmV0YWluZWQKLXBhcnNlZEZvby5zb21lUHJvcGVydHkg
PSAiaGVsbG8iOwotc2hvdWxkQmUoInBhcnNlZEZvby5zb21lUHJvcGVydHkiLCAiY29udGFpbmVy
LmZpcnN0Q2hpbGQuc29tZVByb3BlcnR5Iik7Ci0KLS8vIEhhdmluZyBhbm90aGVyIGNvbnN0cnVj
dG9yCi12YXIgYmFyQ29uc3RydWN0b3IgPSBkb2N1bWVudC5yZWdpc3RlcigieC1iYXIiLCBjcmVh
dGVSZWdpc3RlclBhcmFtdGVycygpKTsKLXNob3VsZEJlVHJ1ZSgiYmFyQ29uc3RydWN0b3IgIT09
IGZvb0NvbnN0cnVjdG9yIik7Ci12YXIgY3JlYXRlZEJhciA9IG5ldyBiYXJDb25zdHJ1Y3Rvcigp
Owotc2hvdWxkQmUoImNyZWF0ZWRCYXIudGFnTmFtZSIsICInWC1CQVInIik7Ci0KLS8vIEhhdmlu
ZyBhIHN1YmNsYXNzCi12YXIgYmF6Q29uc3RydWN0b3IgPSBkb2N1bWVudC5yZWdpc3RlcigieC1i
YXoiLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShmb29Db25zdHJ1Y3Rvci5wcm90b3R5cGUs
IHsgdGhpc0lzQWxzb1Byb3RvdHlwZTogeyB2YWx1ZTogdHJ1ZSB9IH0pIH0pOwotdmFyIGNyZWF0
ZWRCYXogPSBuZXcgYmF6Q29uc3RydWN0b3IoKTsKLXNob3VsZEJlKCJjcmVhdGVkQmF6LnRhZ05h
bWUiLCAiJ1gtQkFaJyIpOwotc2hvdWxkQmVUcnVlKCJjcmVhdGVkQmF6LnRoaXNJc1Byb3RvdHlw
ZSIpOwotc2hvdWxkQmVUcnVlKCJjcmVhdGVkQmF6LnRoaXNJc0Fsc29Qcm90b3R5cGUiKTsKLQot
Ly8gV2l0aCBpcnJlZ3VsYXIgY2FzZXMKLXZhciBjcmVhdGVkVXBwZXJCYXIgPSBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCJYLUJBUiIpOwotdmFyIGNyZWF0ZWRNaXhlZEJhciA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoIlgtQmFyIik7Ci1zaG91bGRCZSgiY3JlYXRlZFVwcGVyQmFyLmNvbnN0cnVj
dG9yIiwgImJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZSgiY3JlYXRlZFVwcGVyQmFyLnRhZ05h
bWUiLCAiJ1gtQkFSJyIpOwotc2hvdWxkQmUoImNyZWF0ZWRNaXhlZEJhci5jb25zdHJ1Y3RvciIs
ICJiYXJDb25zdHJ1Y3RvciIpOwotc2hvdWxkQmUoImNyZWF0ZWRNaXhlZEJhci50YWdOYW1lIiwg
IidYLUJBUiciKTsKLQotY29udGFpbmVyLmlubmVySFRNTCA9ICI8WC1CQVI+PC9YLUJBUj48WC1C
YXI+PC9YLUJhcj4iOwotc2hvdWxkQmUoImNvbnRhaW5lci5maXJzdENoaWxkLmNvbnN0cnVjdG9y
IiwgImJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZSgiY29udGFpbmVyLmZpcnN0Q2hpbGQudGFn
TmFtZSIsICInWC1CQVInIik7Ci1zaG91bGRCZSgiY29udGFpbmVyLmxhc3RDaGlsZC5jb25zdHJ1
Y3RvciIsICJiYXJDb25zdHJ1Y3RvciIpOwotc2hvdWxkQmUoImNvbnRhaW5lci5sYXN0Q2hpbGQu
dGFnTmFtZSIsICInWC1CQVInIik7Ci0KLS8vIFN0cmFuZ2UgYnV0IHZhbGlkIG5hbWVzCi1zaG91
bGRCZSgiKG5ldyAoZG9jdW1lbnQucmVnaXN0ZXIoJ3ktYmFyJywgY3JlYXRlUmVnaXN0ZXJQYXJh
bXRlcnMoKSkpKCkpLnRhZ05hbWUiLCAiJ1ktQkFSJyIpOwotc2hvdWxkQmUoIihuZXcgKGRvY3Vt
ZW50LnJlZ2lzdGVyKCd5ei1iYXInLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSkoKSkudGFn
TmFtZSIsICInWVotQkFSJyIpOwotc2hvdWxkQmUoIihuZXcgKGRvY3VtZW50LnJlZ2lzdGVyKCd5
LXotYmFyJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkpKCkpLnRhZ05hbWUiLCAiJ1ktWi1C
QVInIik7Ci1zaG91bGRCZSgiKG5ldyAoZG9jdW1lbnQucmVnaXN0ZXIoJ3ktLWJhcicsIGNyZWF0
ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpKSgpKS50YWdOYW1lIiwgIidZLS1CQVInIik7Ci0KLS8vIENv
bnN0cnVjdG9yIHNob3VsZG4ndCBpbnRlcmZlcmUgZWFjaCBvdGVocgotc2hvdWxkQmUoIihuZXcg
Zm9vQ29uc3RydWN0b3IpLnRhZ05hbWUiLCAiJ1gtRk9PJyIpOwotc2hvdWxkQmUoIihuZXcgYmFy
Q29uc3RydWN0b3IpLnRhZ05hbWUiLCAiJ1gtQkFSJyIpOwotc2hvdWxkQmUoIihuZXcgYmF6Q29u
c3RydWN0b3IpLnRhZ05hbWUiLCAiJ1gtQkFaJyIpOwotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4K
LTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdp
c3Rlci1uYW1lc3BhY2UtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1uYW1lc3BhY2UtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQt
cmVnaXN0ZXItbmFtZXNwYWNlLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDM4ICsw
LDAgQEAKLVVzaW5nIGRvY3VtZW50LnJlZ2lzdGVyKCkgZm9yIGV4dGVuZGluZyBIVE1MIGFuZCBu
b24tSFRNTCBlbGVtZW50cy4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1Mg
aHRtbDEubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJwotUEFT
UyBodG1sMi5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnCi1Q
QVNTIGh0bWwzLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcK
LVBBU1MgaHRtbDQubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1s
JwotUEFTUyBub3RIVE1MLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy5leGFtcGxlLmNvbS8n
Ci1QQVNTIG5vdEhUTUwgaW5zdGFuY2VvZiBDdXN0b21IVE1MRWxlbWVudCBpcyBmYWxzZQotUEFT
UyBub3RIVE1MIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgaXMgZmFsc2UKLVBBU1Mgc3ZnMS50YWdO
YW1lIGlzICdzdmctZm9vJwotUEFTUyBzdmcxLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53
My5vcmcvMjAwMC9zdmcnCi1QQVNTIHN2ZzIudGFnTmFtZSBpcyAnc3ZnLWZvbycKLVBBU1Mgc3Zn
Mi5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJwotUEFTUyBzdmcz
LnRhZ05hbWUgaXMgJ3N2Zy1mb28nCi1QQVNTIHN2ZzMubmFtZXNwYWNlVVJJIGlzICdodHRwOi8v
d3d3LnczLm9yZy8yMDAwL3N2ZycKLVBBU1Mgbm90U1ZHMS5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6
Ly93d3cudzMub3JnLzE5OTkveGh0bWwnCi1QQVNTIG5vdFNWRzEgaW5zdGFuY2VvZiBDdXN0b21T
VkdFbGVtZW50IGlzIGZhbHNlCi1QQVNTIG5vdFNWRzEgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVs
ZW1lbnQgaXMgdHJ1ZQotUEFTUyBub3RTVkcyLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53
My5vcmcvMTk5OS94aHRtbCcKLVBBU1Mgbm90U1ZHMiBpbnN0YW5jZW9mIEN1c3RvbVNWR0VsZW1l
bnQgaXMgZmFsc2UKLVBBU1Mgbm90U1ZHMiBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBp
cyB0cnVlCi1QQVNTIHhtbDEudGFnTmFtZSBpcyAneG1sLWZvbycKLVBBU1MgeG1sMS5uYW1lc3Bh
Y2VVUkkgaXMgbnVsbAotUEFTUyB4bWwyLnRhZ05hbWUgaXMgJ3htbC1mb28nCi1QQVNTIHhtbDIu
bmFtZXNwYWNlVVJJIGlzIG51bGwKLVBBU1Mgbm90WE1MMS5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6
Ly93d3cudzMub3JnLzE5OTkveGh0bWwnCi1QQVNTIG5vdFhNTDEgaW5zdGFuY2VvZiBDdXN0b21Y
TUxFbGVtZW50IGlzIGZhbHNlCi1QQVNTIG5vdFhNTDEgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVs
ZW1lbnQgaXMgdHJ1ZQotUEFTUyBub3RYTUwyLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53
My5vcmcvMTk5OS94aHRtbCcKLVBBU1Mgbm90WE1MMiBpbnN0YW5jZW9mIEN1c3RvbVhNTEVsZW1l
bnQgaXMgZmFsc2UKLVBBU1Mgbm90WE1MMiBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBp
cyB0cnVlCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUK
LQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLW5h
bWVzcGFjZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9k
b2N1bWVudC1yZWdpc3Rlci1uYW1lc3BhY2UuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5
b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLW5hbWVzcGFjZS5odG1s
CShub25leGlzdGVudCkKQEAgLTEsODIgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4K
LTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiVXNpbmcg
ZG9jdW1lbnQucmVnaXN0ZXIoKSBmb3IgZXh0ZW5kaW5nIEhUTUwgYW5kIG5vbi1IVE1MIGVsZW1l
bnRzLiIpOwotCi1kb2N1bWVudC5yZWdpc3RlciA9IGRvY3VtZW50LnJlZ2lzdGVyIHx8IGRvY3Vt
ZW50LndlYmtpdFJlZ2lzdGVyOwotCi1mdW5jdGlvbiBjcmVhdGVFbGVtZW50RnJvbUhUTUwoaHRt
bCkKLXsKLSAgICB2YXIgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7
Ci0gICAgY29udGFpbmVyLmlubmVySFRNTCA9IGh0bWw7Ci0gICAgcmV0dXJuIGNvbnRhaW5lci5m
aXJzdENoaWxkOwotfQotCi1mdW5jdGlvbiBjcmVhdGVFbGVtZW50RnJvbVNWRyhzdmcpCi17Ci0g
ICAgdmFyIGNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgIGNv
bnRhaW5lci5pbm5lckhUTUwgPSAiPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9z
dmcnPiIgKyBzdmcgKyAiPC9zdmc+IjsKLSAgICByZXR1cm4gY29udGFpbmVyLmZpcnN0Q2hpbGQu
Zmlyc3RDaGlsZDsKLX0KLQotQ3VzdG9tSFRNTEVsZW1lbnQgPSBkb2N1bWVudC5yZWdpc3Rlcign
aHRtbC1mb28nLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5
cGUpIH0pOwotQ3VzdG9tU1ZHRWxlbWVudCA9IGRvY3VtZW50LnJlZ2lzdGVyKCdzdmctZm9vJywg
eyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoU1ZHRWxlbWVudC5wcm90b3R5cGUpIH0pOwotQ3Vz
dG9tWE1MRWxlbWVudCA9IGRvY3VtZW50LnJlZ2lzdGVyKCd4bWwtZm9vJywgeyBwcm90b3R5cGU6
IE9iamVjdC5jcmVhdGUoRWxlbWVudC5wcm90b3R5cGUpIH0pOwotCi12YXIgaHRtbDEgPSBuZXcg
Q3VzdG9tSFRNTEVsZW1lbnQoKTsKLXNob3VsZEJlKCJodG1sMS5uYW1lc3BhY2VVUkkiLCAiJ2h0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnIik7Ci12YXIgaHRtbDIgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJodG1sLWZvbyIpOwotc2hvdWxkQmUoImh0bWwyLm5hbWVzcGFjZVVSSSIsICIn
aHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCciKTsKLXZhciBodG1sMyA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIsICJodG1sLWZvbyIp
Owotc2hvdWxkQmUoImh0bWwzLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5vcmcvMTk5
OS94aHRtbCciKTsKLXZhciBodG1sNCA9IGNyZWF0ZUVsZW1lbnRGcm9tSFRNTCgiPGh0bWwtZm9v
PjwvaHRtbC1mb28+Iik7Ci1zaG91bGRCZSgiaHRtbDQubmFtZXNwYWNlVVJJIiwgIidodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hodG1sJyIpOwotCi12YXIgbm90SFRNTCA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnROUygiaHR0cDovL3d3dy5leGFtcGxlLmNvbS8iLCAiaHRtbC1mb28iKTsKLXNob3Vs
ZEJlKCJub3RIVE1MLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy5leGFtcGxlLmNvbS8nIik7
Ci1zaG91bGRCZUZhbHNlKCJub3RIVE1MIGluc3RhbmNlb2YgQ3VzdG9tSFRNTEVsZW1lbnQiKTsK
LXNob3VsZEJlRmFsc2UoIm5vdEhUTUwgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCIpOwotCi12YXIg
c3ZnMSA9IG5ldyBDdXN0b21TVkdFbGVtZW50KCk7Ci1zaG91bGRCZSgic3ZnMS50YWdOYW1lIiwg
IidzdmctZm9vJyIpOwotc2hvdWxkQmUoInN2ZzEubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3
LnczLm9yZy8yMDAwL3N2ZyciKTsKLXZhciBzdmcyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5T
KCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsICJzdmctZm9vIik7Ci1zaG91bGRCZSgic3Zn
Mi50YWdOYW1lIiwgIidzdmctZm9vJyIpOwotc2hvdWxkQmUoInN2ZzIubmFtZXNwYWNlVVJJIiwg
IidodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyciKTsKLXZhciBzdmczID0gY3JlYXRlRWxlbWVu
dEZyb21TVkcoIjxzdmctZm9vPjwvc3ZnLWZvbz4iKTsKLXNob3VsZEJlKCJzdmczLnRhZ05hbWUi
LCAiJ3N2Zy1mb28nIik7Ci1zaG91bGRCZSgic3ZnMy5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6Ly93
d3cudzMub3JnLzIwMDAvc3ZnJyIpOwotCi12YXIgbm90U1ZHMSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoInN2Zy1mb28iKTsKLXNob3VsZEJlKCJub3RTVkcxLm5hbWVzcGFjZVVSSSIsICInaHR0
cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCciKTsKLXNob3VsZEJlRmFsc2UoIm5vdFNWRzEgaW5z
dGFuY2VvZiBDdXN0b21TVkdFbGVtZW50Iik7Ci1zaG91bGRCZVRydWUoIm5vdFNWRzEgaW5zdGFu
Y2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLXZhciBub3RTVkcyID0gY3JlYXRlRWxlbWVudEZy
b21IVE1MKCI8c3ZnLWZvbz48L3N2Zy1mb28+Iik7Ci1zaG91bGRCZSgibm90U1ZHMi5uYW1lc3Bh
Y2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnIik7Ci1zaG91bGRCZUZhbHNl
KCJub3RTVkcyIGluc3RhbmNlb2YgQ3VzdG9tU1ZHRWxlbWVudCIpOwotc2hvdWxkQmVUcnVlKCJu
b3RTVkcyIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50Iik7Ci0KLXZhciB4bWwxID0gbmV3
IEN1c3RvbVhNTEVsZW1lbnQoKTsKLXNob3VsZEJlKCJ4bWwxLnRhZ05hbWUiLCAiJ3htbC1mb28n
Iik7Ci1zaG91bGRCZSgieG1sMS5uYW1lc3BhY2VVUkkiLCAibnVsbCIpOwotdmFyIHhtbDIgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50TlMobnVsbCwgInhtbC1mb28iKTsKLXNob3VsZEJlKCJ4bWwy
LnRhZ05hbWUiLCAiJ3htbC1mb28nIik7Ci1zaG91bGRCZSgieG1sMi5uYW1lc3BhY2VVUkkiLCAi
bnVsbCIpOwotCi12YXIgbm90WE1MMSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInhtbC1mb28i
KTsKLXNob3VsZEJlKCJub3RYTUwxLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5vcmcv
MTk5OS94aHRtbCciKTsKLXNob3VsZEJlRmFsc2UoIm5vdFhNTDEgaW5zdGFuY2VvZiBDdXN0b21Y
TUxFbGVtZW50Iik7Ci1zaG91bGRCZVRydWUoIm5vdFhNTDEgaW5zdGFuY2VvZiBIVE1MVW5rbm93
bkVsZW1lbnQiKTsKLXZhciBub3RYTUwyID0gY3JlYXRlRWxlbWVudEZyb21IVE1MKCI8eG1sLWZv
bz48L3htbC1mb28+Iik7Ci1zaG91bGRCZSgibm90WE1MMi5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6
Ly93d3cudzMub3JnLzE5OTkveGh0bWwnIik7Ci1zaG91bGRCZUZhbHNlKCJub3RYTUwyIGluc3Rh
bmNlb2YgQ3VzdG9tWE1MRWxlbWVudCIpOwotc2hvdWxkQmVUcnVlKCJub3RYTUwyIGluc3RhbmNl
b2YgSFRNTFVua25vd25FbGVtZW50Iik7Ci0KLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJl
ZW50cmFudC1udWxsLWNvbnN0cnVjdG9yLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LW51bGwt
Y29uc3RydWN0b3ItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LW51bGwtY29uc3Ry
dWN0b3ItZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsOSArMCwwIEBACi1GdXp6aW5n
IGRvY3VtZW50LnJlZ2lzdGVyKCkgdGhyb3VnaCBnZXR0ZXJzLiBQQVNTIHVsZXNzIGNyYXNoLgot
Ci1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1
c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtbnVsbC1jb25zdHJ1Y3Rvci5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rl
ci1yZWVudHJhbnQtbnVsbC1jb25zdHJ1Y3Rvci5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBM
YXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LW51
bGwtY29uc3RydWN0b3IuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDIzICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4vcmVzb3VyY2VzL2Rv
Y3VtZW50LXJlZ2lzdGVyLWZ1enouanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2
IGlkPSJjb250YWluZXIiPjwvZGl2PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJGdXp6aW5nIGRv
Y3VtZW50LnJlZ2lzdGVyKCkgdGhyb3VnaCBnZXR0ZXJzLiBQQVNTIHVsZXNzIGNyYXNoLiIpOwot
Ci1zZXR1cE9iamVjdEhvb2tzKHsKLSAgICBwcm90b3R5cGVHZXQ6IGZ1bmN0aW9uKCkgeyB9LAot
ICAgIHByb3RvdHlwZVNldDogZnVuY3Rpb24odmFsdWUpIHsgfSwKLSAgICBjb25zdHJ1Y3Rvckdl
dDogZnVuY3Rpb24oKSB7IH0sCi0gICAgY29uc3RydWN0b3JTZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7
IH0KLX0pOwotCi1leGVyY2lzZURvY3VtZW50UmVnaXN0ZXIoKTsKLTwvc2NyaXB0PgotPHNjcmlw
dCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9i
b2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50
LXJlZ2lzdGVyLXJlZW50cmFudC1yZXR1cm5pbmctZmFrZS1leHBlY3RlZC50eHQKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50
cmFudC1yZXR1cm5pbmctZmFrZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExh
eW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtcmV0
dXJuaW5nLWZha2UtZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsOSArMCwwIEBACi1G
dXp6aW5nIGRvY3VtZW50LnJlZ2lzdGVyKCkgdGhyb3VnaCBnZXR0ZXJzLiBQQVNTIHVsZXNzIGNy
YXNoLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
ZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtcmV0dXJuaW5nLWZha2UuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVn
aXN0ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysr
IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQt
cmV0dXJuaW5nLWZha2UuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDI2ICswLDAgQEAKLTwhRE9D
VFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4vcmVzb3VyY2VzL2Rv
Y3VtZW50LXJlZ2lzdGVyLWZ1enouanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2
IGlkPSJjb250YWluZXIiPjwvZGl2PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJGdXp6aW5nIGRv
Y3VtZW50LnJlZ2lzdGVyKCkgdGhyb3VnaCBnZXR0ZXJzLiBQQVNTIHVsZXNzIGNyYXNoLiIpOwot
Ci12YXIgYmFkUHJvdG90eXBlID0gSW1hZ2UucHJvdG90eXBlOwotdmFyIGJhZENvbnN0cnVjdG9y
ID0gSW1hZ2UucHJvdG90eXBlLmNvbnN0cnVjdG9yOwotCi1zZXR1cE9iamVjdEhvb2tzKHsKLSAg
ICBwcm90b3R5cGVHZXQ6IGZ1bmN0aW9uKCkgeyByZXR1cm4gYmFkUHJvdG90eXBlOyB9LAotICAg
IHByb3RvdHlwZVNldDogZnVuY3Rpb24odmFsdWUpIHsgIH0sCi0gICAgY29uc3RydWN0b3JHZXQ6
IGZ1bmN0aW9uKCkgeyByZXR1cm4gYmFkQ29uc3RydWN0b3I7IH0sCi0gICAgY29uc3RydWN0b3JT
ZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7ICB9Ci19KTsKLQotZXhlcmNpc2VEb2N1bWVudFJlZ2lzdGVy
KCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1w
b3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtdGhyb3dpbmctY29uc3Ry
dWN0b3ItZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1
c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtdGhyb3dpbmctY29uc3RydWN0b3ItZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0
b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXRocm93aW5nLWNvbnN0cnVjdG9yLWV4cGVj
dGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDEwICswLDAgQEAKLUZ1enppbmcgZG9jdW1lbnQu
cmVnaXN0ZXIoKSB0aHJvdWdoIGdldHRlcnMuIFBBU1MgdWxlc3MgY3Jhc2guCi0KLU9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KLQotCi1Db25zdHJ1Y3RvciBvYmplY3QgaXNuJ3QgY3JlYXRlZC4K
LVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCkluZGV4
OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50
LXRocm93aW5nLWNvbnN0cnVjdG9yLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC10aHJvd2luZy1jb25zdHJ1
Y3Rvci5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0
b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXRocm93aW5nLWNvbnN0cnVjdG9yLmh0bWwJ
KG5vbmV4aXN0ZW50KQpAQCAtMSwyMyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgot
PGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuL3Jlc291cmNlcy9kb2N1bWVudC1yZWdpc3Rlci1mdXp6
LmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iY29udGFpbmVyIj48L2Rp
dj4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiRnV6emluZyBkb2N1bWVudC5yZWdpc3RlcigpIHRo
cm91Z2ggZ2V0dGVycy4gUEFTUyB1bGVzcyBjcmFzaC4iKTsKLQotc2V0dXBPYmplY3RIb29rcyh7
Ci0gICAgcHJvdG90eXBlR2V0OiBmdW5jdGlvbigpIHsgdGhyb3cgIkVycm9yIjsgfSwKLSAgICBw
cm90b3R5cGVTZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7IHRocm93ICJFcnJvciI7IH0sCi0gICAgY29u
c3RydWN0b3JHZXQ6IGZ1bmN0aW9uKCkgeyB0aHJvdyAiRXJyb3IiOyB9LAotICAgIGNvbnN0cnVj
dG9yU2V0OiBmdW5jdGlvbih2YWx1ZSkgeyB0aHJvdyAiRXJyb3IiOyB9Ci19KTsKLQotZXhlcmNp
c2VEb2N1bWVudFJlZ2lzdGVyKCk7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci10eXBlLWV4
dGVuc2lvbnMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9t
L2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQt
cmVnaXN0ZXItdHlwZS1leHRlbnNpb25zLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0x
LDY3ICswLDAgQEAKLVRlc3RpbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0eXBlIGV4dGVuc2lvbiBi
ZWhhdmlvdXJzIHRocm91Z2ggY3JlYXRlRWxlbWVudCgpLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCi0KLQotUEFTUyBkb2N1bWVudC5yZWdpc3RlcigneC1mb28nLCB7IHByb3RvdHlwZTog
T2JqZWN0LmNyZWF0ZShIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUpIH0pIHRocmV3IGV4Y2VwdGlv
biBJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4g
YW4gaW52YWxpZCBzdGF0ZS4uCi1QQVNTIGZvb05ld2VkLm91dGVySFRNTCBpcyAnPHgtZm9vPjwv
eC1mb28+JwotUEFTUyBmb29OZXdlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yICYmIGZvb05l
d2VkIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBmb29OZXdlZCBpbnN0YW5j
ZW9mIEhUTUxVbmtub3duRWxlbWVudCBpcyBmYWxzZQotUEFTUyBiYXJOZXdlZC5vdXRlckhUTUwg
aXMgJzxpbnB1dCBpcz0ieC1iYXIiPicKLVBBU1MgYmFyTmV3ZWQgaW5zdGFuY2VvZiBiYXJDb25z
dHJ1Y3RvciAmJiBiYXJOZXdlZCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQgaXMgdHJ1ZQot
UEFTUyBpc0Zvcm1Db250cm9sKGJhck5ld2VkKSBpcyB0cnVlCi1QQVNTIGJhek5ld2VkLm91dGVy
SFRNTCBpcyAnPHgtYmF6PjwveC1iYXo+JwotUEFTUyBiYXpOZXdlZCBpbnN0YW5jZW9mIGJhekNv
bnN0cnVjdG9yICYmIGJhek5ld2VkIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgaXMgdHJ1ZQotUEFT
UyBiYXpOZXdlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBpcyBmYWxzZQotUEFTUyBx
dXhOZXdlZCBpbnN0YW5jZW9mIHF1eENvbnN0cnVjdG9yICYmIHF1eE5ld2VkIGluc3RhbmNlb2Yg
YmFyQ29uc3RydWN0b3IgJiYgcXV4TmV3ZWQgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50IGlz
IHRydWUKLVBBU1MgcXV4TmV3ZWQub3V0ZXJIVE1MIGlzICc8aW5wdXQgaXM9IngtcXV4Ij4nCi1Q
QVNTIGlzRm9ybUNvbnRyb2wocXV4TmV3ZWQpIGlzIHRydWUKLVBBU1MgZm9vQ3JlYXRlZC5vdXRl
ckhUTUwgaXMgJzx4LWZvbz48L3gtZm9vPicKLVBBU1MgZm9vQ3JlYXRlZCBpbnN0YW5jZW9mIGZv
b0NvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgYmFyQ3JlYXRlZC5vdXRlckhUTUwgaXMgJzx4LWJh
cj48L3gtYmFyPicKLVBBU1MgYmFyQ3JlYXRlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIGlz
IGZhbHNlCi1QQVNTIGJhckNyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMg
dHJ1ZQotUEFTUyBiYXpDcmVhdGVkLm91dGVySFRNTCBpcyAnPHgtYmF6PjwveC1iYXo+JwotUEFT
UyBiYXpDcmVhdGVkIGluc3RhbmNlb2YgYmF6Q29uc3RydWN0b3IgaXMgdHJ1ZQotUEFTUyBiYXpD
cmVhdGVkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIGZhbHNlCi1QQVNTIHF1eENy
ZWF0ZWQub3V0ZXJIVE1MIGlzICc8eC1xdXg+PC94LXF1eD4nCi1QQVNTIHF1eENyZWF0ZWQgaW5z
dGFuY2VvZiBxdXhDb25zdHJ1Y3RvciBpcyBmYWxzZQotUEFTUyBxdXhDcmVhdGVkIGluc3RhbmNl
b2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRydWUKLVBBU1MgZGl2Rm9vQ3JlYXRlZC5vdXRlckhU
TUwgaXMgJzxkaXYgaXM9IngtZm9vIj48L2Rpdj4nCi1QQVNTIGRpdkZvb0NyZWF0ZWQgaW5zdGFu
Y2VvZiBmb29Db25zdHJ1Y3RvciBpcyBmYWxzZQotUEFTUyBkaXZGb29DcmVhdGVkIGluc3RhbmNl
b2YgSFRNTERpdkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBpbnB1dEJhckNyZWF0ZWQub3V0ZXJIVE1M
IGlzICc8aW5wdXQgaXM9IngtYmFyIj4nCi1QQVNTIGlucHV0QmFyQ3JlYXRlZCBpbnN0YW5jZW9m
IGJhckNvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgaW5wdXRCYXJDcmVhdGVkIGluc3RhbmNlb2Yg
SFRNTFVua25vd25FbGVtZW50IGlzIGZhbHNlCi1QQVNTIGlzRm9ybUNvbnRyb2woaW5wdXRCYXJD
cmVhdGVkKSBpcyB0cnVlCi1QQVNTIGRpdkJhckNyZWF0ZWQub3V0ZXJIVE1MIGlzICc8ZGl2IGlz
PSJ4LWJhciI+PC9kaXY+JwotUEFTUyBkaXZCYXJDcmVhdGVkIGluc3RhbmNlb2YgYmFyQ29uc3Ry
dWN0b3IgaXMgZmFsc2UKLVBBU1MgZGl2QmFyQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxEaXZFbGVt
ZW50IGlzIHRydWUKLVBBU1MgZm9vQmFyQ3JlYXRlZC5vdXRlckhUTUwgaXMgJzx4LWZvbyBpcz0i
eC1iYXIiPjwveC1mb28+JwotUEFTUyBmb29CYXJDcmVhdGVkIGluc3RhbmNlb2YgZm9vQ29uc3Ry
dWN0b3IgaXMgdHJ1ZQotUEFTUyBiYXJGb29DcmVhdGVkLm91dGVySFRNTCBpcyAnPHgtYmFyIGlz
PSJ4LWZvbyI+PC94LWJhcj4nCi1QQVNTIGJhckZvb0NyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5r
bm93bkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBmb29DcmVhdGVkTnVsbC5vdXRlckhUTUwgaXMgJzx4
LWZvbz48L3gtZm9vPicKLVBBU1MgZm9vQ3JlYXRlZE51bGwgaW5zdGFuY2VvZiBmb29Db25zdHJ1
Y3RvciBpcyB0cnVlCi1QQVNTIGZvb0NyZWF0ZWRFbXB0eS5vdXRlckhUTUwgaXMgJzx4LWZvbz48
L3gtZm9vPicKLVBBU1MgZm9vQ3JlYXRlZEVtcHR5IGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3Ig
aXMgdHJ1ZQotUEFTUyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdAaW52YWxpZCcsICd4LWJhcicp
IHRocmV3IGV4Y2VwdGlvbiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24gNSk6
IFRoZSBzdHJpbmcgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzLi4KLVBBU1MgZm9vQ3JlYXRl
ZE5TLm91dGVySFRNTCBpcyAnPHgtZm9vPjwveC1mb28+JwotUEFTUyBmb29DcmVhdGVkTlMgaW5z
dGFuY2VvZiBmb29Db25zdHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGJhckNyZWF0ZWROUy5vdXRlckhU
TUwgaXMgJzxpbnB1dCBpcz0ieC1iYXIiPicKLVBBU1MgYmFyQ3JlYXRlZE5TIGluc3RhbmNlb2Yg
YmFyQ29uc3RydWN0b3IgaXMgdHJ1ZQotUEFTUyBpc0Zvcm1Db250cm9sKGJhckNyZWF0ZWROUykg
aXMgdHJ1ZQotUEFTUyBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoJ2h0dHA6Ly9leGFtcGxlLmNv
bS8yMDEzL25vLXN1Y2gtbmFtZXNwYWNlJywgJ3htbDpsYW5nJywgJ3gtYmFyJykgdGhyZXcgZXhj
ZXB0aW9uIE5hbWVzcGFjZUVycm9yIChET00gRXhjZXB0aW9uIDE0KTogVGhlIG9wZXJhdGlvbiBp
cyBub3QgYWxsb3dlZCBieSBOYW1lc3BhY2VzIGluIFhNTC4uCi1QQVNTIGZvb1BhcnNlZCBpbnN0
YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgYmFyUGFyc2VkIGluc3RhbmNlb2Yg
YmFyQ29uc3RydWN0b3IgaXMgdHJ1ZQotUEFTUyBpc0Zvcm1Db250cm9sKGJhclBhcnNlZCkgaXMg
dHJ1ZQotUEFTUyBkaXZGb29QYXJzZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciBpcyBmYWxz
ZQotUEFTUyBkaXZGb29QYXJzZWQgaW5zdGFuY2VvZiBIVE1MRGl2RWxlbWVudCBpcyB0cnVlCi1Q
QVNTIG5hbWVkQmFyUGFyc2VkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IgaXMgZmFsc2UKLVBB
U1MgbmFtZWRCYXJQYXJzZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgdHJ1ZQot
UEFTUyBkaXZCYXJQYXJzZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBpcyBmYWxzZQotUEFT
UyBkaXZCYXJQYXJzZWQgaW5zdGFuY2VvZiBIVE1MRGl2RWxlbWVudCBpcyB0cnVlCi1QQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXR5cGUtZXh0ZW5zaW9ucy5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1y
ZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXR5cGUtZXh0ZW5zaW9ucy5o
dG1sCShub25leGlzdGVudCkKQEAgLTEsMTcwICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0
bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUu
anMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJjb250YWluZXIiPjwvZGl2
PgotPGZvcm0gaWQ9InRlc3RGb3JtIj48L2Zvcm0+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIlRl
c3RpbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0eXBlIGV4dGVuc2lvbiBiZWhhdmlvdXJzIHRocm91
Z2ggY3JlYXRlRWxlbWVudCgpLiIpOwotCi1mdW5jdGlvbiBpc0Zvcm1Db250cm9sKGVsZW1lbnQp
Ci17Ci0gICAgdGVzdEZvcm0uYXBwZW5kQ2hpbGQoZWxlbWVudCk7Ci0gICAgcmV0dXJuIGVsZW1l
bnQuZm9ybSA9PSB0ZXN0Rm9ybTsKLX0KLQotaWYgKHdpbmRvdy50ZXN0UnVubmVyKQotICAgIHRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOwotZG9jdW1lbnQucmVnaXN0ZXIgPSBkb2N1bWVudC5yZWdp
c3RlciB8fCBkb2N1bWVudC53ZWJraXRSZWdpc3RlcjsKLQotLy8KLS8vIEluaGVyaXRhbmNlIGhl
cmUgaXMgc2hhcGVkIGxpa2UgdGhpczoKLS8vCi0vLyBIVE1MRWxlbWVudCA8LSBpbnB1dCA8LSB4
LWJhciA8LSB4LXF1eAotLy8gICAgICAgICAgICAgPC0geC1mb28gPC0geC1iYXoKLS8vCi0KLWZv
b0NvbnN0cnVjdG9yID0gZG9jdW1lbnQucmVnaXN0ZXIoJ3gtZm9vJywgeyBwcm90b3R5cGU6IE9i
amVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlKSB9KTsKLWJhckNvbnN0cnVjdG9yID0g
ZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFyJywgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRN
TElucHV0RWxlbWVudC5wcm90b3R5cGUpIH0pOwotYmF6Q29uc3RydWN0b3IgPSBkb2N1bWVudC5y
ZWdpc3RlcigneC1iYXonLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShmb29Db25zdHJ1Y3Rv
ci5wcm90b3R5cGUpIH0pOwotcXV4Q29uc3RydWN0b3IgPSBkb2N1bWVudC5yZWdpc3RlcigneC1x
dXgnLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShiYXJDb25zdHJ1Y3Rvci5wcm90b3R5cGUp
IH0pOwotCi0vLyBTYW1lIG5hbWUsIGRpZmZlcmVudCBsb2NhbCBuYW1lCi1zaG91bGRUaHJvdygi
ZG9jdW1lbnQucmVnaXN0ZXIoJ3gtZm9vJywgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRN
TERpdkVsZW1lbnQucHJvdG90eXBlKSB9KSIsICInSW52YWxpZFN0YXRlRXJyb3IgKERPTSBFeGNl
cHRpb24gMTEpOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuJyIpOwotCi0vLwot
Ly8gR2VuZXJhdGVkIGNvbnN0cnVjdG9ycwotLy8KLQotZm9vTmV3ZWQgPSBuZXcgZm9vQ29uc3Ry
dWN0b3IoKTsKLWZvb091dGVySFRNTCA9ICInPHgtZm9vPjwveC1mb28+JyI7Ci1zaG91bGRCZSgi
Zm9vTmV3ZWQub3V0ZXJIVE1MIiwgZm9vT3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgiZm9vTmV3
ZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciAmJiBmb29OZXdlZCBpbnN0YW5jZW9mIEhUTUxF
bGVtZW50Iik7Ci1zaG91bGRCZUZhbHNlKCJmb29OZXdlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3du
RWxlbWVudCIpOwotCi1iYXJOZXdlZCA9IG5ldyBiYXJDb25zdHJ1Y3RvcigpOwotYmFyT3V0ZXJI
VE1MID0gIic8aW5wdXQgaXM9XCJ4LWJhclwiPiciOwotc2hvdWxkQmUoImJhck5ld2VkLm91dGVy
SFRNTCIsIGJhck91dGVySFRNTCk7Ci1zaG91bGRCZVRydWUoImJhck5ld2VkIGluc3RhbmNlb2Yg
YmFyQ29uc3RydWN0b3IgJiYgYmFyTmV3ZWQgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50Iik7
Ci1zaG91bGRCZVRydWUoImlzRm9ybUNvbnRyb2woYmFyTmV3ZWQpIik7Ci0KLWJhek5ld2VkID0g
bmV3IGJhekNvbnN0cnVjdG9yKCk7Ci1iYXpPdXRlckhUTUwgPSAiJzx4LWJhej48L3gtYmF6Pici
Owotc2hvdWxkQmUoImJhek5ld2VkLm91dGVySFRNTCIsIGJhek91dGVySFRNTCk7Ci1zaG91bGRC
ZVRydWUoImJhek5ld2VkIGluc3RhbmNlb2YgYmF6Q29uc3RydWN0b3IgJiYgYmF6TmV3ZWQgaW5z
dGFuY2VvZiBIVE1MRWxlbWVudCIpOwotc2hvdWxkQmVGYWxzZSgiYmF6TmV3ZWQgaW5zdGFuY2Vv
ZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotcXV4TmV3ZWQgPSBuZXcgcXV4Q29uc3RydWN0b3Io
KTsKLXF1eE91dGVySFRNTCA9ICInPGlucHV0IGlzPVwieC1xdXhcIj4nIjsKLXNob3VsZEJlVHJ1
ZSgicXV4TmV3ZWQgaW5zdGFuY2VvZiBxdXhDb25zdHJ1Y3RvciAmJiBxdXhOZXdlZCBpbnN0YW5j
ZW9mIGJhckNvbnN0cnVjdG9yICYmIHF1eE5ld2VkIGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVu
dCIpOwotc2hvdWxkQmUoInF1eE5ld2VkLm91dGVySFRNTCIsIHF1eE91dGVySFRNTCk7Ci1zaG91
bGRCZVRydWUoImlzRm9ybUNvbnRyb2wocXV4TmV3ZWQpIik7Ci0KLS8vCi0vLyBTaW5nbGUgcGFy
YW1ldGVyIGNyZWF0ZUVsZW1lbnQoKQotLy8KLQotZm9vQ3JlYXRlZCA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoIngtZm9vIik7Ci1zaG91bGRCZSgiZm9vQ3JlYXRlZC5vdXRlckhUTUwiLCBmb29P
dXRlckhUTUwpOwotc2hvdWxkQmVUcnVlKCJmb29DcmVhdGVkIGluc3RhbmNlb2YgZm9vQ29uc3Ry
dWN0b3IiKTsKLQotYmFyQ3JlYXRlZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtYmFyIik7
Ci1zaG91bGRCZSgiYmFyQ3JlYXRlZC5vdXRlckhUTUwiLCAiJzx4LWJhcj48L3gtYmFyPiciKTsK
LXNob3VsZEJlRmFsc2UoImJhckNyZWF0ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciIpOwot
c2hvdWxkQmVUcnVlKCJiYXJDcmVhdGVkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50Iik7
Ci0KLWJhekNyZWF0ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LWJheiIpOwotc2hvdWxk
QmUoImJhekNyZWF0ZWQub3V0ZXJIVE1MIiwgIic8eC1iYXo+PC94LWJhej4nIik7Ci1zaG91bGRC
ZVRydWUoImJhekNyZWF0ZWQgaW5zdGFuY2VvZiBiYXpDb25zdHJ1Y3RvciIpOwotc2hvdWxkQmVG
YWxzZSgiYmF6Q3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwotCi1xdXhD
cmVhdGVkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgieC1xdXgiKTsKLXNob3VsZEJlKCJxdXhD
cmVhdGVkLm91dGVySFRNTCIsICInPHgtcXV4PjwveC1xdXg+JyIpOwotc2hvdWxkQmVGYWxzZSgi
cXV4Q3JlYXRlZCBpbnN0YW5jZW9mIHF1eENvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoInF1
eENyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotLy8KLS8vIGNyZWF0
ZUVsZW1lbnQoKSB3aXRoIHR5cGUgZXh0ZW5zaW9ucwotLy8KLQotZGl2Rm9vQ3JlYXRlZCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIsICJ4LWZvbyIpOwotc2hvdWxkQmUoImRpdkZvb0Ny
ZWF0ZWQub3V0ZXJIVE1MIiwgIic8ZGl2IGlzPVwieC1mb29cIj48L2Rpdj4nIik7Ci1zaG91bGRC
ZUZhbHNlKCJkaXZGb29DcmVhdGVkIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IiKTsKLXNob3Vs
ZEJlVHJ1ZSgiZGl2Rm9vQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxEaXZFbGVtZW50Iik7Ci0KLWlu
cHV0QmFyQ3JlYXRlZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0IiwgIngtYmFyIik7
Ci1zaG91bGRCZSgiaW5wdXRCYXJDcmVhdGVkLm91dGVySFRNTCIsIGJhck91dGVySFRNTCk7Ci1z
aG91bGRCZVRydWUoImlucHV0QmFyQ3JlYXRlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIik7
Ci1zaG91bGRCZUZhbHNlKCJpbnB1dEJhckNyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVs
ZW1lbnQiKTsKLXNob3VsZEJlVHJ1ZSgiaXNGb3JtQ29udHJvbChpbnB1dEJhckNyZWF0ZWQpIik7
Ci0KLWRpdkJhckNyZWF0ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiLCAieC1iYXIi
KTsKLXNob3VsZEJlKCJkaXZCYXJDcmVhdGVkLm91dGVySFRNTCIsICInPGRpdiBpcz1cIngtYmFy
XCI+PC9kaXY+JyIpOwotc2hvdWxkQmVGYWxzZSgiZGl2QmFyQ3JlYXRlZCBpbnN0YW5jZW9mIGJh
ckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoImRpdkJhckNyZWF0ZWQgaW5zdGFuY2VvZiBI
VE1MRGl2RWxlbWVudCIpOwotCi1mb29CYXJDcmVhdGVkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgieC1mb28iLCAieC1iYXIiKTsKLXNob3VsZEJlKCJmb29CYXJDcmVhdGVkLm91dGVySFRNTCIs
ICInPHgtZm9vIGlzPVwieC1iYXJcIj48L3gtZm9vPiciKTsKLXNob3VsZEJlVHJ1ZSgiZm9vQmFy
Q3JlYXRlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIik7Ci0KLWJhckZvb0NyZWF0ZWQgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LWJhciIsICJ4LWZvbyIpOwotc2hvdWxkQmUoImJhckZv
b0NyZWF0ZWQub3V0ZXJIVE1MIiwgIic8eC1iYXIgaXM9XCJ4LWZvb1wiPjwveC1iYXI+JyIpOwot
c2hvdWxkQmVUcnVlKCJiYXJGb29DcmVhdGVkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50
Iik7Ci0KLWZvb0NyZWF0ZWROdWxsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgieC1mb28iLCBu
dWxsKTsKLXNob3VsZEJlKCJmb29DcmVhdGVkTnVsbC5vdXRlckhUTUwiLCBmb29PdXRlckhUTUwp
Owotc2hvdWxkQmVUcnVlKCJmb29DcmVhdGVkTnVsbCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9y
Iik7Ci0KLWZvb0NyZWF0ZWRFbXB0eSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtZm9vIiwg
IiIpOwotc2hvdWxkQmUoImZvb0NyZWF0ZWRFbXB0eS5vdXRlckhUTUwiLCBmb29PdXRlckhUTUwp
Owotc2hvdWxkQmVUcnVlKCJmb29DcmVhdGVkRW1wdHkgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3Rv
ciIpOwotCi1zaG91bGRUaHJvdygiZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnQGludmFsaWQnLCAn
eC1iYXInKSIsICInSW52YWxpZENoYXJhY3RlckVycm9yIChET00gRXhjZXB0aW9uIDUpOiBUaGUg
c3RyaW5nIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVycy4nIik7Ci0KLS8vCi0vLyBjcmVhdGVF
bGVtZW50TlMoKSB3aXRoIHR5cGUgZXh0ZW5zaW9ucwotLy8KLQotZm9vQ3JlYXRlZE5TID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiwgIngt
Zm9vIiwgbnVsbCk7Ci1zaG91bGRCZSgiZm9vQ3JlYXRlZE5TLm91dGVySFRNTCIsIGZvb091dGVy
SFRNTCk7Ci1zaG91bGRCZVRydWUoImZvb0NyZWF0ZWROUyBpbnN0YW5jZW9mIGZvb0NvbnN0cnVj
dG9yIik7Ci0KLWJhckNyZWF0ZWROUyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygiaHR0cDov
L3d3dy53My5vcmcvMTk5OS94aHRtbCIsICJpbnB1dCIsICJ4LWJhciIpOwotc2hvdWxkQmUoImJh
ckNyZWF0ZWROUy5vdXRlckhUTUwiLCBiYXJPdXRlckhUTUwpOwotc2hvdWxkQmVUcnVlKCJiYXJD
cmVhdGVkTlMgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciIpOwotc2hvdWxkQmVUcnVlKCJpc0Zv
cm1Db250cm9sKGJhckNyZWF0ZWROUykiKTsKLQotc2hvdWxkVGhyb3coImRvY3VtZW50LmNyZWF0
ZUVsZW1lbnROUygnaHR0cDovL2V4YW1wbGUuY29tLzIwMTMvbm8tc3VjaC1uYW1lc3BhY2UnLCAn
eG1sOmxhbmcnLCAneC1iYXInKSIsICInTmFtZXNwYWNlRXJyb3IgKERPTSBFeGNlcHRpb24gMTQp
OiBUaGUgb3BlcmF0aW9uIGlzIG5vdCBhbGxvd2VkIGJ5IE5hbWVzcGFjZXMgaW4gWE1MLiciKTsK
LQotLy8gcGFyc2VyCi1mdW5jdGlvbiBjcmVhdGVFbGVtZW50RnJvbUhUTUwoaHRtbCkgewotICAg
dmFyIGNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotICAgY29udGFp
bmVyLmlubmVySFRNTCA9IGh0bWw7Ci0gICByZXR1cm4gY29udGFpbmVyLmZpcnN0Q2hpbGQ7Ci19
Ci0KLWZvb1BhcnNlZCA9IGNyZWF0ZUVsZW1lbnRGcm9tSFRNTCgnPHgtZm9vPicpOwotc2hvdWxk
QmVUcnVlKCJmb29QYXJzZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciIpOwotCi1iYXJQYXJz
ZWQgPSBjcmVhdGVFbGVtZW50RnJvbUhUTUwoJzxpbnB1dCBpcz14LWJhcj4nKQotc2hvdWxkQmVU
cnVlKCJiYXJQYXJzZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciIpOwotc2hvdWxkQmVUcnVl
KCJpc0Zvcm1Db250cm9sKGJhclBhcnNlZCkiKTsKLQotZGl2Rm9vUGFyc2VkID0gY3JlYXRlRWxl
bWVudEZyb21IVE1MKCc8ZGl2IGlzPXgtZm9vPicpCi1zaG91bGRCZUZhbHNlKCJkaXZGb29QYXJz
ZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciIpOwotc2hvdWxkQmVUcnVlKCJkaXZGb29QYXJz
ZWQgaW5zdGFuY2VvZiBIVE1MRGl2RWxlbWVudCIpOwotCi1uYW1lZEJhclBhcnNlZCA9IGNyZWF0
ZUVsZW1lbnRGcm9tSFRNTCgnPHgtYmFyPicpCi1zaG91bGRCZUZhbHNlKCJuYW1lZEJhclBhcnNl
ZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoIm5hbWVkQmFyUGFy
c2VkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50Iik7Ci0KLWRpdkJhclBhcnNlZCA9IGNy
ZWF0ZUVsZW1lbnRGcm9tSFRNTCgnPGRpdiBpcz14LWJhcj4nKQotc2hvdWxkQmVGYWxzZSgiZGl2
QmFyUGFyc2VkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlVHJ1ZSgiZGl2
QmFyUGFyc2VkIGluc3RhbmNlb2YgSFRNTERpdkVsZW1lbnQiKTsKLQotPC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08
L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5
Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJzaW9uLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVs
ZW1lbnQtcmVjdXJzaW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlY3Vy
c2lvbi1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSw2ICswLDAgQEAKLUNPTlNPTEUg
TUVTU0FHRTogbGluZSA5OiBVbmNhdWdodCBSYW5nZUVycm9yOiBNYXhpbXVtIGNhbGwgc3RhY2sg
c2l6ZSBleGNlZWRlZC4KLVBBU1MgdW5sZXNzIGNyYXNoCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20v
Y3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlY3Vyc2lvbi5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3Jl
YXRlRWxlbWVudC1yZWN1cnNpb24uaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVz
dHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlY3Vyc2lv
bi5odG1sCShub25leGlzdGVudCkKQEAgLTEsMTcgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08
aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBy
ZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxzY3JpcHQ+Ci1kb2N1bWVudC5yZWdp
c3RlciA9IGRvY3VtZW50LnJlZ2lzdGVyIHx8IGRvY3VtZW50LndlYmtpdFJlZ2lzdGVyOwotZG9j
dW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVs
ZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFsdWU6IGZ1bmN0aW9uICgpIHsg
dGhpcy5pbm5lckhUTUwgPSAiPHgtZm9vPkhlbGxvPC94LWZvbz4iOyB9IH0gfSkgfSk7Ci1pZiAo
d2luZG93LnRlc3RSdW5uZXIpCi0gICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci1kb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJ4LWZvbyIpOwotZGVidWcoIlBBU1MgdW5sZXNzIGNyYXNoIik7Ci08
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9t
L2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWVudHJhbmN5LWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xl
LXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVlbnRyYW5jeS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIw
MzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3Jl
YXRlRWxlbWVudC1yZWVudHJhbmN5LWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDEz
ICswLDAgQEAKLVRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxsYmFjayBv
ZiBhIHBhcnNlci1tYWRlIGVsZW1lbnQgaXMgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJs
b2NrLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyB3aW5kb3cuY2FsbGJh
Y2tzQ2FsbGVkIGlzIFtdCi1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydYLUZPTydd
Ci1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydYLUZPTycsICdYLUJBUiddCi1QQVNT
IHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydYLUZPTycsICdYLUJBUiddCi1QQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlZW50cmFu
Y3kuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5
Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVlbnRyYW5jeS5odG1sCShyZXZpc2lvbiAyMDM3MzIp
CisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVs
ZW1lbnQtcmVlbnRyYW5jeS5odG1sCShub25leGlzdGVudCkKQEAgLTEsMzQgKzAsMCBAQAotPCFE
T0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIlRo
aXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxsYmFjayBvZiBhIHBhcnNlci1t
YWRlIGVsZW1lbnQgaXMgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJsb2NrLiIpCi1kb2N1
bWVudC5yZWdpc3RlciA9IGRvY3VtZW50LnJlZ2lzdGVyIHx8IGRvY3VtZW50LndlYmtpdFJlZ2lz
dGVyOwotCi13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci0KLWZ1bmN0aW9uIGZvb0NyZWF0
ZWRGdW5jdGlvbigpIHsKLSAgc2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiW10i
KTsKLSAgd2luZG93LmNhbGxiYWNrc0NhbGxlZC5wdXNoKHRoaXMudGFnTmFtZSk7Ci0gIHRoaXMu
aW5uZXJIVE1MID0gIjx4LWJhcj48L3gtYmFyPiI7Ci0gIHNob3VsZEJlKCJ3aW5kb3cuY2FsbGJh
Y2tzQ2FsbGVkIiwgIlsnWC1GT08nLCAnWC1CQVInXSIpOwotfQotCi1mdW5jdGlvbiBiYXJDcmVh
dGVkRnVuY3Rpb24oKSB7Ci0gIHNob3VsZEJlKCJ3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIiwgIlsn
WC1GT08nXSIpOwotICB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkLnB1c2godGhpcy50YWdOYW1lKTsK
LX0KLQotZG9jdW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVh
dGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFsdWU6IGZvb0Ny
ZWF0ZWRGdW5jdGlvbiB9IH0pIH0pOwotZG9jdW1lbnQucmVnaXN0ZXIoIngtYmFyIiwgeyBwcm90
b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJh
Y2s6IHsgdmFsdWU6IGJhckNyZWF0ZWRGdW5jdGlvbiB9IH0pIH0pOwotPC9zY3JpcHQ+Ci08L2hl
YWQ+Ci08Ym9keT4KLTxzY3JpcHQ+Ci1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LWZvbyIpOwot
c2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiWydYLUZPTycsICdYLUJBUiddIik7
Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
ZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRpb24tYXBpLWV4cGVjdGVkLnR4dAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNy
ZWF0aW9uLWFwaS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3Rz
L2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRpb24tYXBpLWV4cGVjdGVkLnR4
dAkobm9uZXhpc3RlbnQpCkBAIC0xLDI3ICswLDAgQEAKLVRoaXMgdGVzdCBlbnN1cmVzIHRoYXQg
dGhlIGxpZmVjeWNsZSBjYWxsYmFja3Mgb2YgQVBJLW9yaWdpbmF0ZWQgZWxlbWVudHMgYXJlIHZp
c2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4KLQotT24gc3VjY2VzcywgeW91IHdpbGwg
c2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExF
VEUiLgotCi0KLVBBU1MgZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgneC1mb28nKS5jYWxsYmFja3ND
YWxsZWQgaXMgdHJ1ZQotUEFTUyBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnLCAneC1iYXIn
KS5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMo
J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnLCAneC1mb28nKS5jYWxsYmFja3NDYWxsZWQg
aXMgdHJ1ZQotUEFTUyBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoJ2h0dHA6Ly93d3cudzMub3Jn
LzE5OTkveGh0bWwnLCAnZGl2JywgJ3gtYmFyJykuY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBB
U1MgZm9vLmNsb25lTm9kZSgpLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGZvby5jbG9u
ZU5vZGUodHJ1ZSkuZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyBiYXIu
Y2xvbmVOb2RlKCkuY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBBU1MgYmFyLmNsb25lTm9kZSh0
cnVlKS5maXJzdENoaWxkLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGZvcmVpZ25Gb28u
Y2FsbGJhY2tzQ2FsbGVkIGlzIHVuZGVmaW5lZC4KLVBBU1MgZm9yZWlnbkZvby5maXJzdENoaWxk
LmNhbGxiYWNrc0NhbGxlZCBpcyB1bmRlZmluZWQuCi1QQVNTIGltcG9ydGVkRm9vLmNhbGxiYWNr
c0NhbGxlZCBpcyB0cnVlCi1QQVNTIGltcG9ydGVkRm9vLmZpcnN0Q2hpbGQuY2FsbGJhY2tzQ2Fs
bGVkIGlzIHRydWUKLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbXQotUEFTUyBpbXBv
cnRlZEJhci5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyBpbXBvcnRlZEJhci5maXJzdENo
aWxkLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQg
aXMgWydESVYnLCAnWC1GT08nXQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsnWC1G
T08nXQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsnWC1GT08nXQotUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRpb24tYXBpLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1j
cmVhdGlvbi1hcGkuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9k
b20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGlvbi1hcGkuaHRtbAkobm9uZXhpc3RlbnQp
CkBAIC0xLDc0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3Jp
cHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNj
cmlwdD4KLWRlc2NyaXB0aW9uKCJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHRoZSBsaWZlY3ljbGUg
Y2FsbGJhY2tzIG9mIEFQSS1vcmlnaW5hdGVkIGVsZW1lbnRzIGFyZSB2aXNpYmxlIGluIGZvbGxv
d2luZyBzY3JpcHQgYmxvY2suIikKLXdpbmRvdy5jYWxsYmFja3NDYWxsZWQgPSBbXTsKLWZ1bmN0
aW9uIG1hcmtpbmdSZWFkeUNhbGxiYWNrKCkgewotICAgIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQu
cHVzaCh0aGlzLnRhZ05hbWUpOwotICAgIHRoaXMuY2FsbGJhY2tzQ2FsbGVkID0gdHJ1ZTsKLX0K
LQotZG9jdW1lbnQucmVnaXN0ZXIgPSBkb2N1bWVudC5yZWdpc3RlciB8fCBkb2N1bWVudC53ZWJr
aXRSZWdpc3RlcjsKLWRvY3VtZW50LnJlZ2lzdGVyKCJ4LWZvbyIsIHsgcHJvdG90eXBlOiBPYmpl
Y3QuY3JlYXRlKEhUTUxFbGVtZW50LnByb3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVl
OiBtYXJraW5nUmVhZHlDYWxsYmFjayB9IH0pIH0pOwotZG9jdW1lbnQucmVnaXN0ZXIoIngtYmFy
IiwgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTERpdkVsZW1lbnQucHJvdG90eXBlLCB7
IHJlYWR5Q2FsbGJhY2s6IHsgdmFsdWU6IG1hcmtpbmdSZWFkeUNhbGxiYWNrIH0gfSkgfSk7Ci08
L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iY29udGFpbmVyIj48L2Rpdj4KLTxk
aXYgaWQ9Imhvc3QiPjwvZGl2PgotCi08c2NyaXB0PgotCi1zaG91bGRCZVRydWUoImRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoJ3gtZm9vJykuY2FsbGJhY2tzQ2FsbGVkIik7Ci1zaG91bGRCZVRydWUo
ImRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicsICd4LWJhcicpLmNhbGxiYWNrc0NhbGxlZCIp
OwotCi1zaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygnaHR0cDovL3d3dy53
My5vcmcvMTk5OS94aHRtbCcsICd4LWZvbycpLmNhbGxiYWNrc0NhbGxlZCIpOwotc2hvdWxkQmVU
cnVlKCJkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0
bWwnLCAnZGl2JywgJ3gtYmFyJykuY2FsbGJhY2tzQ2FsbGVkIik7Ci0KLXZhciBmb28gPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCd4LWZvbycpOwotZm9vLmFwcGVuZENoaWxkKGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ2RpdicsICd4LWJhcicpKTsKLXNob3VsZEJlVHJ1ZSgiZm9vLmNsb25lTm9k
ZSgpLmNhbGxiYWNrc0NhbGxlZCIpOwotc2hvdWxkQmVUcnVlKCJmb28uY2xvbmVOb2RlKHRydWUp
LmZpcnN0Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIik7Ci0KLXZhciBiYXIgPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCdkaXYnLCAneC1iYXInKTsKLWJhci5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCd4LWZvbycpKTsKLXNob3VsZEJlVHJ1ZSgiYmFyLmNsb25lTm9kZSgpLmNhbGxi
YWNrc0NhbGxlZCIpOwotc2hvdWxkQmVUcnVlKCJiYXIuY2xvbmVOb2RlKHRydWUpLmZpcnN0Q2hp
bGQuY2FsbGJhY2tzQ2FsbGVkIik7Ci0KLXZhciBmb3JlaWduRG9jID0gZG9jdW1lbnQuaW1wbGVt
ZW50YXRpb24uY3JlYXRlRG9jdW1lbnQoJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnLCAn
aHRtbCcsIG51bGwpOwotCi12YXIgZm9yZWlnbkZvbyA9IGZvcmVpZ25Eb2MuY3JlYXRlRWxlbWVu
dCgneC1mb28nKTsKLWZvcmVpZ25Gb28uYXBwZW5kQ2hpbGQoZm9yZWlnbkRvYy5jcmVhdGVFbGVt
ZW50KCdkaXYnLCAneC1iYXInKSk7Ci1zaG91bGRCZVVuZGVmaW5lZCgiZm9yZWlnbkZvby5jYWxs
YmFja3NDYWxsZWQiKTsKLXNob3VsZEJlVW5kZWZpbmVkKCJmb3JlaWduRm9vLmZpcnN0Q2hpbGQu
Y2FsbGJhY2tzQ2FsbGVkIik7Ci1pbXBvcnRlZEZvbyA9IGRvY3VtZW50LmltcG9ydE5vZGUoZm9y
ZWlnbkZvbykKLXNob3VsZEJlVHJ1ZSgiaW1wb3J0ZWRGb28uY2FsbGJhY2tzQ2FsbGVkIik7Ci1z
aG91bGRCZVRydWUoImltcG9ydGVkRm9vLmZpcnN0Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIik7Ci0K
LXdpbmRvdy5jYWxsYmFja3NDYWxsZWQgPSBbXTsKLXZhciBmb3JlaWduQmFyID0gZm9yZWlnbkRv
Yy5jcmVhdGVFbGVtZW50KCdkaXYnLCAneC1iYXInKTsKLWZvcmVpZ25CYXIuYXBwZW5kQ2hpbGQo
Zm9yZWlnbkRvYy5jcmVhdGVFbGVtZW50KCd4LWZvbycpKTsKLXNob3VsZEJlKCJ3aW5kb3cuY2Fs
bGJhY2tzQ2FsbGVkIiwgIltdIik7Ci1pbXBvcnRlZEJhciA9IGRvY3VtZW50LmltcG9ydE5vZGUo
Zm9yZWlnbkJhcik7Ci1zaG91bGRCZVRydWUoImltcG9ydGVkQmFyLmNhbGxiYWNrc0NhbGxlZCIp
Owotc2hvdWxkQmVUcnVlKCJpbXBvcnRlZEJhci5maXJzdENoaWxkLmNhbGxiYWNrc0NhbGxlZCIp
Owotc2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiWydESVYnLCAnWC1GT08nXSIp
OwotCi13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci12YXIgdG9CZVJlcGxhY2VkID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci1kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRv
QmVSZXBsYWNlZCk7Ci10b0JlUmVwbGFjZWQub3V0ZXJIVE1MID0gIjx4LWZvbz48L3gtZm9vPiI7
Ci1zaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gtRk9PJ10iKTsKLQotd2lu
ZG93LmNhbGxiYWNrc0NhbGxlZCA9IFtdOwotdmFyIGluc2VydGlvblBsYWNlSG9sZGVyID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci1kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlu
c2VydGlvblBsYWNlSG9sZGVyKTsKLWluc2VydGlvblBsYWNlSG9sZGVyLmluc2VydEFkamFjZW50
SFRNTCgiYmVmb3JlYmVnaW4iLCAiPHgtZm9vPjwveC1mb28+Iik7Ci1zaG91bGRCZSgid2luZG93
LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gtRk9PJ10iKTsKLQotPC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJl
YWR5LWlubmVySFRNTC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhUTUwtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJl
YWR5LWlubmVySFRNTC1leHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMSArMCwwIEBA
Ci1UaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJhY2sgb2YgYSBwYXJz
ZXItbWFkZSBlbGVtZW50IGlzIHZpc2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4KLQot
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxl
ZCBpcyBbJ2EnLCAnYicsICdjJ10KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ2En
LCAnYicsICdjJ10KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01Q
TEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5
LWlubmVySFRNTC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3Rv
bS9saWZlY3ljbGUtcmVhZHktaW5uZXJIVE1MLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExh
eW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktaW5uZXJIVE1MLmh0bWwJ
KG5vbmV4aXN0ZW50KQpAQCAtMSwzNiArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgot
PGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0
aGUgbGlmZWN5Y2xlIGNhbGxiYWNrIG9mIGEgcGFyc2VyLW1hZGUgZWxlbWVudCBpcyB2aXNpYmxl
IGluIGZvbGxvd2luZyBzY3JpcHQgYmxvY2suIikKLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1l
bnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci0KLXdpbmRvdy5jYWxsYmFj
a3NDYWxsZWQgPSBbXTsKLQotZnVuY3Rpb24gdHJhY2tpbmdSZWFkeUNhbGxiYWNrKCkKLXsKLSAg
ICB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkLnB1c2godGhpcy5pZCk7Ci19Ci0KLWRvY3VtZW50LnJl
Z2lzdGVyKCJ4LWZvbyIsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxFbGVtZW50LnBy
b3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiB0cmFja2luZ1JlYWR5Q2FsbGJhY2sg
fSB9KSB9KTsKLWRvY3VtZW50LnJlZ2lzdGVyKCJ4LWJhciIsIHsgcHJvdG90eXBlOiBPYmplY3Qu
Y3JlYXRlKEhUTUxEaXZFbGVtZW50LnByb3RvdHlwZSwgeyByZWFkeUNhbGxiYWNrOiB7IHZhbHVl
OiB0cmFja2luZ1JlYWR5Q2FsbGJhY2sgfSB9KSB9KTsKLWRvY3VtZW50LnJlZ2lzdGVyKCJ4LWJh
eiIsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxFbGVtZW50LnByb3RvdHlwZSwgeyBy
ZWFkeUNhbGxiYWNrOiB7IHZhbHVlOiB0cmFja2luZ1JlYWR5Q2FsbGJhY2sgfSB9KSB9KTsKLTwv
c2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08ZGl2IGlkPSJjb250YWluZXIiPgotPHNjcmlwdD4K
LS8vIFRlc3RpbmcgZWxlbWVudCBzaWJsaW5ncwotd2luZG93LmNhbGxiYWNrc0NhbGxlZCA9IFtd
OwotY29udGFpbmVyLmlubmVySFRNTCA9ICI8eC1mb28gaWQ9J2EnPjwveC1mb28+PGRpdiBpZD0n
YicgaXM9J3gtYmFyJz48L2Rpdj48eC1iYXogaWQ9J2MnPjwveC1iYXo+IjsKLXNob3VsZEJlKCJ3
aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIiwgIlsnYScsICdiJywgJ2MnXSIpOwotCi0vLyBUZXN0aW5n
IG5lc3RlZCBlbGVtZW50cwotd2luZG93LmNhbGxiYWNrc0NhbGxlZCA9IFtdOwotY29udGFpbmVy
LmlubmVySFRNTCA9ICI8eC1mb28gaWQ9J2EnPjxkaXYgaWQ9J2InIGlzPSd4LWJhcic+PHgtYmF6
IGlkPSdjJz48L3gtYmF6PjwvZGl2PjwveC1mb28+IjsKLXNob3VsZEJlKCJ3aW5kb3cuY2FsbGJh
Y2tzQ2FsbGVkIiwgIlsnYScsICdiJywgJ2MnXSIpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08
L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5
LXBhcnNlci1vbmx5LWV4cGVjdGVkLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItb25seS1leHBlY3RlZC5odG1sCShy
ZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xl
LXJlYWR5LXBhcnNlci1vbmx5LWV4cGVjdGVkLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSw2ICsw
LDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08Ym9keT4KLTxzcGFuPkhlbGxvPC9zcGFu
PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xp
ZmVjeWNsZS1yZWFkeS1wYXJzZXItb25seS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLW9ubHkuaHRtbAkocmV2aXNp
b24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFk
eS1wYXJzZXItb25seS5odG1sCShub25leGlzdGVudCkKQEAgLTEsMTMgKzAsMCBAQAotPCFET0NU
WVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdD4KLWRvY3VtZW50LnJlZ2lzdGVyID0g
ZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci1wcm90byA9IE9i
amVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFs
dWU6IGZ1bmN0aW9uKCkgeyB0aGlzLmlubmVySFRNTCA9ICJIZWxsbyI7IH0gfSB9KTsKLWRvY3Vt
ZW50LnJlZ2lzdGVyKCJ4LWZvbyIsIHsgcHJvdG90eXBlOiBwcm90byB9KTsKLTwvc2NyaXB0Pgot
PC9oZWFkPgotPGJvZHk+Ci08eC1mb28+PC94LWZvbz4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNjcmlw
dC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9t
L2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItc2NyaXB0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAz
NzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJz
ZXItc2NyaXB0LWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCkBAIC0xLDEwICswLDAgQEAKLVRo
aXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxsYmFjayBvZiBhIHBhcnNlci1t
YWRlIGVsZW1lbnQgaXMgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJsb2NrLgotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlz
IHRydWUKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQot
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNl
ci1zY3JpcHQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20v
bGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1zY3JpcHQuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysg
TGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItc2NyaXB0
Lmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwxOSArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxo
dG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGVuc3VyZXMg
dGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxiYWNrIG9mIGEgcGFyc2VyLW1hZGUgZWxlbWVudCBpcyB2
aXNpYmxlIGluIGZvbGxvd2luZyBzY3JpcHQgYmxvY2suIikKLWRvY3VtZW50LnJlZ2lzdGVyID0g
ZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci1wcm90byA9IE9i
amVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFs
dWU6IGZ1bmN0aW9uKCkgeyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gdHJ1ZTsgfSB9IH0pOwot
ZG9jdW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5cGU6IHByb3RvIH0pOwotPC9zY3Jp
cHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTx4LWZvbz48L3gtZm9vPgotPHNjcmlwdD4KLXNob3VsZEJl
VHJ1ZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
Li4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08
L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5
LXBhc3RlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9j
dXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhc3RlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAzNzMy
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXN0ZS1l
eHBlY3RlZC50eHQJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMSArMCwwIEBACi1UaGlzIHRlc3QgZW5z
dXJlcyB0aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJhY2tzIG9mIGVkaXRpbmctb3JpZ2luYXRlZCBl
bGVtZW50cyBhcmUgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJsb2NrLgotCi1PbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsn
WC1GT08nLCAnRElWJ10KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ1gtRk9PJywg
J0RJVicsICdYLUZPTycsICdESVYnXQotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQot
Ci1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZl
Y3ljbGUtcmVhZHktcGFzdGUuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhc3RlLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysr
IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUuaHRtbAko
bm9uZXhpc3RlbnQpCkBAIC0xLDMwICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08
aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHRo
ZSBsaWZlY3ljbGUgY2FsbGJhY2tzIG9mIGVkaXRpbmctb3JpZ2luYXRlZCBlbGVtZW50cyBhcmUg
dmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJsb2NrLiIpCi1kb2N1bWVudC5yZWdpc3RlciA9
IGRvY3VtZW50LnJlZ2lzdGVyIHx8IGRvY3VtZW50LndlYmtpdFJlZ2lzdGVyOwotd2luZG93LmNh
bGxiYWNrc0NhbGxlZCA9IFtdOwotZG9jdW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5
cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6
IHsgdmFsdWU6IGZ1bmN0aW9uKCkgeyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkLnB1c2godGhpcy50
YWdOYW1lKTsgfSB9IH0pIH0pOwotZG9jdW1lbnQucmVnaXN0ZXIoIngtYmFyIiwgeyBwcm90b3R5
cGU6IE9iamVjdC5jcmVhdGUoSFRNTERpdkVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJh
Y2s6IHsgdmFsdWU6IGZ1bmN0aW9uKCkgeyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkLnB1c2godGhp
cy50YWdOYW1lKTsgfSB9IH0pIH0pOwotPC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYg
aWQ9ImNvbnRhaW5lciIgY29udGVudGVkaXRhYmxlPls8eC1mb28+Rm9vPC94LWZvbz48ZGl2IGlz
PSd4LWJhcic+QmFyPC9kaXY+XTwvZGl2PgotPHNjcmlwdD4KLXZhciBzZWxlY3Rpb24gPSB3aW5k
b3cuZ2V0U2VsZWN0aW9uKCk7Ci0KLXNlbGVjdGlvbi5zZWxlY3RBbGxDaGlsZHJlbihjb250YWlu
ZXIpOwotZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkNvcHkiKTsKLQotc2hvdWxkQmUoIndpbmRvdy5j
YWxsYmFja3NDYWxsZWQiLCAiWydYLUZPTycsICdESVYnXSIpOwotc2VsZWN0aW9uLmNvbGxhcHNl
VG9FbmQoKTsKLWRvY3VtZW50LmV4ZWNDb21tYW5kKCJQYXN0ZSIpOwotc2hvdWxkQmUoIndpbmRv
dy5jYWxsYmFja3NDYWxsZWQiLCAiWydYLUZPTycsICdESVYnLCAnWC1GT08nLCAnRElWJ10iKTsK
LQotY29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7Ci08L3NjcmlwdD4KLTxzY3JpcHQg
c3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9k
eT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9yZXNvdXJjZXMv
ZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9jdXN0b20vcmVzb3VyY2VzL2RvY3VtZW50LXJlZ2lzdGVyLWZ1enouanMJKHJldmlzaW9u
IDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9yZXNvdXJjZXMvZG9jdW1l
bnQtcmVnaXN0ZXItZnV6ei5qcwkobm9uZXhpc3RlbnQpCkBAIC0xLDQ5ICswLDAgQEAKLQotZnVu
Y3Rpb24gc2V0dXBPYmplY3RIb29rcyhob29rcykKLXsKLSAgICAvLyBXcmFwcGVyIGZvciB0aGVz
ZSBvYmplY3Qgc2hvdWxkIGJlIG1hdGVyaWFsaXplZCBiZWZvcmUgc2V0dGluZyBob29rcy4KLSAg
ICBjb25zb2xlLmxvZzsKLSAgICBkb2N1bWVudC53ZWJraXRSZWdpc3RlcgotICAgIEhUTUxTcGFu
RWxlbWVudC5wcm90b3R5cGU7Ci0KLSAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnBy
b3RvdHlwZSwgInByb3RvdHlwZSIsIHsKLSAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJu
IGhvb2tzLnByb3RvdHlwZUdldCgpOyB9LAotICAgICAgICBzZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7
IHJldHVybiBob29rcy5wcm90b3R5cGVTZXQodmFsdWUpOyB9Ci0gICAgfSk7Ci0KLSAgICBPYmpl
Y3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgImNvbnN0cnVjdG9yIiwgewotICAg
ICAgICBnZXQ6IGZ1bmN0aW9uKCkgeyByZXR1cm4gaG9va3MuY29uc3RydWN0b3JHZXQoKTsgfSwK
LSAgICAgICAgc2V0OiBmdW5jdGlvbih2YWx1ZSkgeyByZXR1cm4gaG9va3MuY29uc3RydWN0b3JT
ZXQodmFsdWUpOyB9Ci0gICAgfSk7Ci0KLSAgICByZXR1cm4gaG9va3M7Ci19Ci0KLWZ1bmN0aW9u
IGV4ZXJjaXNlRG9jdW1lbnRSZWdpc3RlcigpCi17Ci0gICAgdmFyIG15Q29uc3RydWN0b3IgPSBu
dWxsOwotICAgIHZhciBteVByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJv
dG90eXBlKTsKLSAgICB0cnkgewotICAgICAgICBteUNvbnN0cnVjdG9yID0gZG9jdW1lbnQud2Vi
a2l0UmVnaXN0ZXIoIngtZG8tbm90aGluZyIsIHsgcHJvdG90eXBlOiBteVByb3RvdHlwZSB9KTsK
LSAgICB9IGNhdGNoIChlKSB7IH0KLQotICAgIHRyeSB7Ci0gICAgICAgIGlmICghbXlDb25zdHJ1
Y3RvcikgewotICAgICAgICAgICAgZGVidWcoIkNvbnN0cnVjdG9yIG9iamVjdCBpc24ndCBjcmVh
dGVkLiIpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKG15
Q29uc3RydWN0b3IucHJvdG90eXBlICE9IG15UHJvdG90eXBlKSB7Ci0gICAgICAgICAgICBjb25z
b2xlLmxvZygiRkFJTDogYmFkIHByb3RvdHlwZSIpOwotICAgICAgICAgICAgcmV0dXJuOwotICAg
ICAgICAgfQotCi0gICAgICAgIHZhciBlbGVtZW50ID0gbmV3IG15Q29uc3RydWN0b3IoKTsKLSAg
ICAgICAgaWYgKCFlbGVtZW50KQotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBpZiAoZWxl
bWVudC5jb25zdHJ1Y3RvciAhPSBteUNvbnN0cnVjdG9yKSB7Ci0gICAgICAgICAgICBjb25zb2xl
LmxvZygiRkFJTDogYmFkIGNvbnN0cnVjdG9yIik7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAg
ICAgICB9Ci0gICAgfSBjYXRjaCAoZSkgeyBjb25zb2xlLmxvZyhlKTsgfQotfQpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLWJhc2ljLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQt
cmVnaXN0ZXItYmFzaWMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItYmFzaWMtZXhwZWN0ZWQudHh0
CShub25leGlzdGVudCkKQEAgLTEsNDkgKzAsMCBAQAotVGVzdGluZyBkb2N1bWVudC5yZWdpc3Rl
cigpIGJhc2ljIGJlaGF2aW9ycy4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLVBB
U1MgZG9jdW1lbnQucmVnaXN0ZXIoJ2ZvbycsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpIHRo
cmV3IGV4Y2VwdGlvbiBJbnZhbGlkQ2hhcmFjdGVyRXJyb3IgKERPTSBFeGNlcHRpb24gNSk6IFRo
ZSBzdHJpbmcgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzLi4KLVBBU1MgZG9jdW1lbnQucmVn
aXN0ZXIoJ3hmb28nLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSB0aHJldyBleGNlcHRpb24g
SW52YWxpZENoYXJhY3RlckVycm9yIChET00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNvbnRh
aW5zIGludmFsaWQgY2hhcmFjdGVycy4uCi1QQVNTIGRvY3VtZW50LnJlZ2lzdGVyKCdtaXNzaW5n
LWdseXBoJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkgdGhyZXcgZXhjZXB0aW9uIEludmFs
aWRDaGFyYWN0ZXJFcnJvciAoRE9NIEV4Y2VwdGlvbiA1KTogVGhlIHN0cmluZyBjb250YWlucyBp
bnZhbGlkIGNoYXJhY3RlcnMuLgotUEFTUyB0eXBlb2YgZm9vQ29uc3RydWN0b3IgaXMgJ2Z1bmN0
aW9uJwotUEFTUyBmb29Db25zdHJ1Y3Rvci5wcm90b3R5cGUuX19wcm90b19fIGlzIEhUTUxFbGVt
ZW50LnByb3RvdHlwZQotUEFTUyBmb29Db25zdHJ1Y3Rvci5wcm90b3R5cGUudGhpc0lzUHJvdG90
eXBlIGlzIHRydWUKLVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIoJ3gtZm9vJywgY3JlYXRlUmVnaXN0
ZXJQYXJhbXRlcnMoKSkgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yIChET00gRXhj
ZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4KLVBBU1MgZG9j
dW1lbnQucmVnaXN0ZXIoJ1gtRk9PJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkgdGhyZXcg
ZXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVj
dCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4KLVBBU1MgZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFk
LWEnLCB7IHByb3RvdHlwZTogSFRNTEVsZW1lbnQucHJvdG90eXBlIH0pIHRocmV3IGV4Y2VwdGlv
biBJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4g
YW4gaW52YWxpZCBzdGF0ZS4uCi1QQVNTIGRvY3VtZW50LnJlZ2lzdGVyKCd4LWJhZC1iJywgeyBw
cm90b3R5cGU6IHt9IH0pIHRocmV3IGV4Y2VwdGlvbiBJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4
Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4uCi1QQVNTIGRv
Y3VtZW50LnJlZ2lzdGVyKCd4LWJhZC1jJywgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoRG9j
dW1lbnQucHJvdG90eXBlKSB9KSB0aHJldyBleGNlcHRpb24gSW52YWxpZFN0YXRlRXJyb3IgKERP
TSBFeGNlcHRpb24gMTEpOiBUaGUgb2JqZWN0IGlzIGluIGFuIGludmFsaWQgc3RhdGUuLgotUEFT
UyBmb29Db25zdHJ1Y3RvcigpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IERPTSBvYmplY3Qg
Y29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLi4KLVBBU1MgY3JlYXRl
ZEZvby5fX3Byb3RvX18gaXMgZm9vQ29uc3RydWN0b3IucHJvdG90eXBlCi1QQVNTIGNyZWF0ZWRG
b28uY29uc3RydWN0b3IgaXMgZm9vQ29uc3RydWN0b3IKLVBBU1MgY3JlYXRlZEZvby50YWdOYW1l
IGlzICdYLUZPTycKLVBBU1MgY3JlYXRlZEZvby50ZXh0Q29udGVudCBpcyAnSGVsbG8nCi1QQVNT
IGNyZWF0ZWRGb28ubGFzdENoaWxkIGlzIGNoaWxkRGl2Ci1QQVNTIHBhcnNlZEZvby5fX3Byb3Rv
X18gaXMgZm9vQ29uc3RydWN0b3IucHJvdG90eXBlCi1QQVNTIHBhcnNlZEZvby50YWdOYW1lIGlz
ICdYLUZPTycKLVBBU1MgcGFyc2VkRm9vLnNvbWVQcm9wZXJ0eSBpcyBjb250YWluZXIuZmlyc3RD
aGlsZC5zb21lUHJvcGVydHkKLVBBU1MgYmFyQ29uc3RydWN0b3IgIT09IGZvb0NvbnN0cnVjdG9y
IGlzIHRydWUKLVBBU1MgY3JlYXRlZEJhci50YWdOYW1lIGlzICdYLUJBUicKLVBBU1MgY3JlYXRl
ZEJhei50YWdOYW1lIGlzICdYLUJBWicKLVBBU1MgY3JlYXRlZEJhei50aGlzSXNQcm90b3R5cGUg
aXMgdHJ1ZQotUEFTUyBjcmVhdGVkQmF6LnRoaXNJc0Fsc29Qcm90b3R5cGUgaXMgdHJ1ZQotUEFT
UyBjcmVhdGVkVXBwZXJCYXIuY29uc3RydWN0b3IgaXMgYmFyQ29uc3RydWN0b3IKLVBBU1MgY3Jl
YXRlZFVwcGVyQmFyLnRhZ05hbWUgaXMgJ1gtQkFSJwotUEFTUyBjcmVhdGVkTWl4ZWRCYXIuY29u
c3RydWN0b3IgaXMgYmFyQ29uc3RydWN0b3IKLVBBU1MgY3JlYXRlZE1peGVkQmFyLnRhZ05hbWUg
aXMgJ1gtQkFSJwotUEFTUyBjb250YWluZXIuZmlyc3RDaGlsZC5jb25zdHJ1Y3RvciBpcyBiYXJD
b25zdHJ1Y3RvcgotUEFTUyBjb250YWluZXIuZmlyc3RDaGlsZC50YWdOYW1lIGlzICdYLUJBUicK
LVBBU1MgY29udGFpbmVyLmxhc3RDaGlsZC5jb25zdHJ1Y3RvciBpcyBiYXJDb25zdHJ1Y3Rvcgot
UEFTUyBjb250YWluZXIubGFzdENoaWxkLnRhZ05hbWUgaXMgJ1gtQkFSJwotUEFTUyAobmV3IChk
b2N1bWVudC5yZWdpc3RlcigneS1iYXInLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSkoKSku
dGFnTmFtZSBpcyAnWS1CQVInCi1QQVNTIChuZXcgKGRvY3VtZW50LnJlZ2lzdGVyKCd5ei1iYXIn
LCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSkoKSkudGFnTmFtZSBpcyAnWVotQkFSJwotUEFT
UyAobmV3IChkb2N1bWVudC5yZWdpc3RlcigneS16LWJhcicsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10
ZXJzKCkpKSgpKS50YWdOYW1lIGlzICdZLVotQkFSJwotUEFTUyAobmV3IChkb2N1bWVudC5yZWdp
c3RlcigneS0tYmFyJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkpKCkpLnRhZ05hbWUgaXMg
J1ktLUJBUicKLVBBU1MgKG5ldyBmb29Db25zdHJ1Y3RvcikudGFnTmFtZSBpcyAnWC1GT08nCi1Q
QVNTIChuZXcgYmFyQ29uc3RydWN0b3IpLnRhZ05hbWUgaXMgJ1gtQkFSJwotUEFTUyAobmV3IGJh
ekNvbnN0cnVjdG9yKS50YWdOYW1lIGlzICdYLUJBWicKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9j
dXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItYmFzaWMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItYmFzaWMuaHRtbAkocmV2aXNp
b24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lz
dGVyLWJhc2ljLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwxMTcgKzAsMCBAQAotPCFET0NUWVBF
IGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImNvbnRh
aW5lciI+PC9kaXY+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIlRlc3RpbmcgZG9jdW1lbnQucmVn
aXN0ZXIoKSBiYXNpYyBiZWhhdmlvcnMuIik7Ci0KLWlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAg
ICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQu
cmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci0KLWZ1bmN0aW9uIGNyZWF0ZVJl
Z2lzdGVyUGFyYW10ZXJzKCkKLXsKLSAgICByZXR1cm4gewotICAgICAgICBwcm90b3R5cGU6IE9i
amVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHRoaXNJc1Byb3RvdHlwZTogeyB2
YWx1ZTogdHJ1ZSB9IH0pCi0gICAgfTsKLX0KLQotLy8gSW52YWxpZCBuYW1lcwotc2hvdWxkVGhy
b3coImRvY3VtZW50LnJlZ2lzdGVyKCdmb28nLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSIs
ICInSW52YWxpZENoYXJhY3RlckVycm9yIChET00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNv
bnRhaW5zIGludmFsaWQgY2hhcmFjdGVycy4nIik7Ci1zaG91bGRUaHJvdygiZG9jdW1lbnQucmVn
aXN0ZXIoJ3hmb28nLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSIsICInSW52YWxpZENoYXJh
Y3RlckVycm9yIChET00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNvbnRhaW5zIGludmFsaWQg
Y2hhcmFjdGVycy4nIik7Ci1zaG91bGRUaHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ21pc3Npbmct
Z2x5cGgnLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSIsICInSW52YWxpZENoYXJhY3RlckVy
cm9yIChET00gRXhjZXB0aW9uIDUpOiBUaGUgc3RyaW5nIGNvbnRhaW5zIGludmFsaWQgY2hhcmFj
dGVycy4nIik7Ci0KLXZhciBmb29Db25zdHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lzdGVyKCJ4LWZv
byIsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpOwotc2hvdWxkQmUoInR5cGVvZiBmb29Db25z
dHJ1Y3RvciIsICInZnVuY3Rpb24nIik7Ci1zaG91bGRCZSgiZm9vQ29uc3RydWN0b3IucHJvdG90
eXBlLl9fcHJvdG9fXyIsICJIVE1MRWxlbWVudC5wcm90b3R5cGUiKTsKLXNob3VsZEJlVHJ1ZSgi
Zm9vQ29uc3RydWN0b3IucHJvdG90eXBlLnRoaXNJc1Byb3RvdHlwZSIpOwotCi0vLyBOYW1lIGNv
bmZsaWN0cwotc2hvdWxkVGhyb3coImRvY3VtZW50LnJlZ2lzdGVyKCd4LWZvbycsIGNyZWF0ZVJl
Z2lzdGVyUGFyYW10ZXJzKCkpIiwgIidJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAx
MSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4nIik7Ci1zaG91bGRUaHJvdygi
ZG9jdW1lbnQucmVnaXN0ZXIoJ1gtRk9PJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkiLCAi
J0ludmFsaWRTdGF0ZUVycm9yIChET00gRXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBh
biBpbnZhbGlkIHN0YXRlLiciKTsKLQotLy8gQmFkIHByb3RvdHlwZTogY29uc3RydWN0b3IgcHJv
cGVydHkgZXhpc3RzCi1zaG91bGRUaHJvdygiZG9jdW1lbnQucmVnaXN0ZXIoJ3gtYmFkLWEnLCB7
IHByb3RvdHlwZTogSFRNTEVsZW1lbnQucHJvdG90eXBlIH0pIiwgIidJbnZhbGlkU3RhdGVFcnJv
ciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxpZCBzdGF0ZS4n
Iik7Ci0vLyBCYWQgcHJvdG90eXBlOiBtaXNzaW5nIF9fcHJvdG9fXwotc2hvdWxkVGhyb3coImRv
Y3VtZW50LnJlZ2lzdGVyKCd4LWJhZC1iJywgeyBwcm90b3R5cGU6IHt9IH0pIiwgIidJbnZhbGlk
U3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMgaW4gYW4gaW52YWxp
ZCBzdGF0ZS4nIik7Ci0vLyBCYWQgcHJvdG90eXBlOiB3cm9uZyBfX3Byb3RvX18KLXNob3VsZFRo
cm93KCJkb2N1bWVudC5yZWdpc3RlcigneC1iYWQtYycsIHsgcHJvdG90eXBlOiBPYmplY3QuY3Jl
YXRlKERvY3VtZW50LnByb3RvdHlwZSkgfSkiLCAiJ0ludmFsaWRTdGF0ZUVycm9yIChET00gRXhj
ZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLiciKTsKLS8vIENh
bGwgYXMgZnVuY3Rpb24KLXNob3VsZFRocm93KCJmb29Db25zdHJ1Y3RvcigpIiwgIidUeXBlRXJy
b3I6IERPTSBvYmplY3QgY29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9u
LiciKQotCi0vLyBDb25zdHJ1Y3RvciBpbml0aWF0ZWQgaW5zdGFudGlhdGlvbgotdmFyIGNyZWF0
ZWRGb28gPSBuZXcgZm9vQ29uc3RydWN0b3IoKTsKLQotLy8gSlMgYnVpbHQtaW4gcHJvcGVydGll
cwotc2hvdWxkQmUoImNyZWF0ZWRGb28uX19wcm90b19fIiwgImZvb0NvbnN0cnVjdG9yLnByb3Rv
dHlwZSIpOwotc2hvdWxkQmUoImNyZWF0ZWRGb28uY29uc3RydWN0b3IiLCAiZm9vQ29uc3RydWN0
b3IiKTsKLQotLy8gTmF0aXZlIGdldHRlcgotc2hvdWxkQmUoImNyZWF0ZWRGb28udGFnTmFtZSIs
ICInWC1GT08nIik7Ci0KLS8vIE5hdGl2ZSBzZXR0ZXIKLWNyZWF0ZWRGb28uaW5uZXJIVE1MID0g
IkhlbGxvIjsKLXNob3VsZEJlKCJjcmVhdGVkRm9vLnRleHRDb250ZW50IiwgIidIZWxsbyciKTsK
LQotLy8gTmF0aXZlIG1ldGhvZAotdmFyIGNoaWxkRGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7Ci1jcmVhdGVkRm9vLmFwcGVuZENoaWxkKGNoaWxkRGl2KTsKLXNob3VsZEJlKCJj
cmVhdGVkRm9vLmxhc3RDaGlsZCIsICJjaGlsZERpdiIpOwotCi0vLyBQYXJzZXIgaW5pdGlhdGVk
IGluc3RhbnRpYXRpb24KLXZhciBjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
Y29udGFpbmVyIik7Ci1jb250YWluZXIuaW5uZXJIVE1MID0gIjx4LWZvbz48L3gtZm9vPiI7Ci1w
YXJzZWRGb28gPSBjb250YWluZXIuZmlyc3RDaGlsZDsKLQotc2hvdWxkQmUoInBhcnNlZEZvby5f
X3Byb3RvX18iLCAiZm9vQ29uc3RydWN0b3IucHJvdG90eXBlIik7Ci1zaG91bGRCZSgicGFyc2Vk
Rm9vLnRhZ05hbWUiLCAiJ1gtRk9PJyIpOwotCi0vLyBFbnN1cmluZyB0aGUgd3JhcHBlciBpcyBy
ZXRhaW5lZAotcGFyc2VkRm9vLnNvbWVQcm9wZXJ0eSA9ICJoZWxsbyI7Ci1zaG91bGRCZSgicGFy
c2VkRm9vLnNvbWVQcm9wZXJ0eSIsICJjb250YWluZXIuZmlyc3RDaGlsZC5zb21lUHJvcGVydHki
KTsKLQotLy8gSGF2aW5nIGFub3RoZXIgY29uc3RydWN0b3IKLXZhciBiYXJDb25zdHJ1Y3RvciA9
IGRvY3VtZW50LnJlZ2lzdGVyKCJ4LWJhciIsIGNyZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpOwot
c2hvdWxkQmVUcnVlKCJiYXJDb25zdHJ1Y3RvciAhPT0gZm9vQ29uc3RydWN0b3IiKTsKLXZhciBj
cmVhdGVkQmFyID0gbmV3IGJhckNvbnN0cnVjdG9yKCk7Ci1zaG91bGRCZSgiY3JlYXRlZEJhci50
YWdOYW1lIiwgIidYLUJBUiciKTsKLQotLy8gSGF2aW5nIGEgc3ViY2xhc3MKLXZhciBiYXpDb25z
dHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lzdGVyKCJ4LWJheiIsIHsgcHJvdG90eXBlOiBPYmplY3Qu
Y3JlYXRlKGZvb0NvbnN0cnVjdG9yLnByb3RvdHlwZSwgeyB0aGlzSXNBbHNvUHJvdG90eXBlOiB7
IHZhbHVlOiB0cnVlIH0gfSkgfSk7Ci12YXIgY3JlYXRlZEJheiA9IG5ldyBiYXpDb25zdHJ1Y3Rv
cigpOwotc2hvdWxkQmUoImNyZWF0ZWRCYXoudGFnTmFtZSIsICInWC1CQVonIik7Ci1zaG91bGRC
ZVRydWUoImNyZWF0ZWRCYXoudGhpc0lzUHJvdG90eXBlIik7Ci1zaG91bGRCZVRydWUoImNyZWF0
ZWRCYXoudGhpc0lzQWxzb1Byb3RvdHlwZSIpOwotCi0vLyBXaXRoIGlycmVndWxhciBjYXNlcwot
dmFyIGNyZWF0ZWRVcHBlckJhciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIlgtQkFSIik7Ci12
YXIgY3JlYXRlZE1peGVkQmFyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiWC1CYXIiKTsKLXNo
b3VsZEJlKCJjcmVhdGVkVXBwZXJCYXIuY29uc3RydWN0b3IiLCAiYmFyQ29uc3RydWN0b3IiKTsK
LXNob3VsZEJlKCJjcmVhdGVkVXBwZXJCYXIudGFnTmFtZSIsICInWC1CQVInIik7Ci1zaG91bGRC
ZSgiY3JlYXRlZE1peGVkQmFyLmNvbnN0cnVjdG9yIiwgImJhckNvbnN0cnVjdG9yIik7Ci1zaG91
bGRCZSgiY3JlYXRlZE1peGVkQmFyLnRhZ05hbWUiLCAiJ1gtQkFSJyIpOwotCi1jb250YWluZXIu
aW5uZXJIVE1MID0gIjxYLUJBUj48L1gtQkFSPjxYLUJhcj48L1gtQmFyPiI7Ci1zaG91bGRCZSgi
Y29udGFpbmVyLmZpcnN0Q2hpbGQuY29uc3RydWN0b3IiLCAiYmFyQ29uc3RydWN0b3IiKTsKLXNo
b3VsZEJlKCJjb250YWluZXIuZmlyc3RDaGlsZC50YWdOYW1lIiwgIidYLUJBUiciKTsKLXNob3Vs
ZEJlKCJjb250YWluZXIubGFzdENoaWxkLmNvbnN0cnVjdG9yIiwgImJhckNvbnN0cnVjdG9yIik7
Ci1zaG91bGRCZSgiY29udGFpbmVyLmxhc3RDaGlsZC50YWdOYW1lIiwgIidYLUJBUiciKTsKLQot
Ly8gU3RyYW5nZSBidXQgdmFsaWQgbmFtZXMKLXNob3VsZEJlKCIobmV3IChkb2N1bWVudC5yZWdp
c3RlcigneS1iYXInLCBjcmVhdGVSZWdpc3RlclBhcmFtdGVycygpKSkoKSkudGFnTmFtZSIsICIn
WS1CQVInIik7Ci1zaG91bGRCZSgiKG5ldyAoZG9jdW1lbnQucmVnaXN0ZXIoJ3l6LWJhcicsIGNy
ZWF0ZVJlZ2lzdGVyUGFyYW10ZXJzKCkpKSgpKS50YWdOYW1lIiwgIidZWi1CQVInIik7Ci1zaG91
bGRCZSgiKG5ldyAoZG9jdW1lbnQucmVnaXN0ZXIoJ3ktei1iYXInLCBjcmVhdGVSZWdpc3RlclBh
cmFtdGVycygpKSkoKSkudGFnTmFtZSIsICInWS1aLUJBUiciKTsKLXNob3VsZEJlKCIobmV3IChk
b2N1bWVudC5yZWdpc3RlcigneS0tYmFyJywgY3JlYXRlUmVnaXN0ZXJQYXJhbXRlcnMoKSkpKCkp
LnRhZ05hbWUiLCAiJ1ktLUJBUiciKTsKLQotLy8gQ29uc3RydWN0b3Igc2hvdWxkbid0IGludGVy
ZmVyZSBlYWNoIG90ZWhyCi1zaG91bGRCZSgiKG5ldyBmb29Db25zdHJ1Y3RvcikudGFnTmFtZSIs
ICInWC1GT08nIik7Ci1zaG91bGRCZSgiKG5ldyBiYXJDb25zdHJ1Y3RvcikudGFnTmFtZSIsICIn
WC1CQVInIik7Ci1zaG91bGRCZSgiKG5ldyBiYXpDb25zdHJ1Y3RvcikudGFnTmFtZSIsICInWC1C
QVonIik7Ci0KLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLW5hbWVzcGFjZS1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJl
Z2lzdGVyLW5hbWVzcGFjZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91
dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1uYW1lc3BhY2UtZXhwZWN0
ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsMzggKzAsMCBAQAotVXNpbmcgZG9jdW1lbnQucmVn
aXN0ZXIoKSBmb3IgZXh0ZW5kaW5nIEhUTUwgYW5kIG5vbi1IVE1MIGVsZW1lbnRzLgotCi1PbiBz
dWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dl
ZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyBodG1sMS5uYW1lc3BhY2VVUkkgaXMgJ2h0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnCi1QQVNTIGh0bWwyLm5hbWVzcGFjZVVSSSBpcyAn
aHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcKLVBBU1MgaHRtbDMubmFtZXNwYWNlVVJJIGlz
ICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJwotUEFTUyBodG1sNC5uYW1lc3BhY2VVUkkg
aXMgJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnCi1QQVNTIG5vdEhUTUwubmFtZXNwYWNl
VVJJIGlzICdodHRwOi8vd3d3LmV4YW1wbGUuY29tLycKLVBBU1Mgbm90SFRNTCBpbnN0YW5jZW9m
IEN1c3RvbUhUTUxFbGVtZW50IGlzIGZhbHNlCi1QQVNTIG5vdEhUTUwgaW5zdGFuY2VvZiBIVE1M
RWxlbWVudCBpcyBmYWxzZQotUEFTUyBzdmcxLnRhZ05hbWUgaXMgJ3N2Zy1mb28nCi1QQVNTIHN2
ZzEubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycKLVBBU1Mgc3Zn
Mi50YWdOYW1lIGlzICdzdmctZm9vJwotUEFTUyBzdmcyLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDov
L3d3dy53My5vcmcvMjAwMC9zdmcnCi1QQVNTIHN2ZzMudGFnTmFtZSBpcyAnc3ZnLWZvbycKLVBB
U1Mgc3ZnMy5uYW1lc3BhY2VVUkkgaXMgJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJwotUEFT
UyBub3RTVkcxLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcK
LVBBU1Mgbm90U1ZHMSBpbnN0YW5jZW9mIEN1c3RvbVNWR0VsZW1lbnQgaXMgZmFsc2UKLVBBU1Mg
bm90U1ZHMSBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBpcyB0cnVlCi1QQVNTIG5vdFNW
RzIubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJwotUEFTUyBu
b3RTVkcyIGluc3RhbmNlb2YgQ3VzdG9tU1ZHRWxlbWVudCBpcyBmYWxzZQotUEFTUyBub3RTVkcy
IGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRydWUKLVBBU1MgeG1sMS50YWdOYW1l
IGlzICd4bWwtZm9vJwotUEFTUyB4bWwxLm5hbWVzcGFjZVVSSSBpcyBudWxsCi1QQVNTIHhtbDIu
dGFnTmFtZSBpcyAneG1sLWZvbycKLVBBU1MgeG1sMi5uYW1lc3BhY2VVUkkgaXMgbnVsbAotUEFT
UyBub3RYTUwxLm5hbWVzcGFjZVVSSSBpcyAnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcK
LVBBU1Mgbm90WE1MMSBpbnN0YW5jZW9mIEN1c3RvbVhNTEVsZW1lbnQgaXMgZmFsc2UKLVBBU1Mg
bm90WE1MMSBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBpcyB0cnVlCi1QQVNTIG5vdFhN
TDIubmFtZXNwYWNlVVJJIGlzICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJwotUEFTUyBu
b3RYTUwyIGluc3RhbmNlb2YgQ3VzdG9tWE1MRWxlbWVudCBpcyBmYWxzZQotUEFTUyBub3RYTUwy
IGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlzIHRydWUKLVBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItbmFtZXNwYWNlLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLW5hbWVzcGFj
ZS5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20v
ZG9jdW1lbnQtcmVnaXN0ZXItbmFtZXNwYWNlLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSw4MiAr
MCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNyYz0iLi4v
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5
PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9uKCJVc2luZyBkb2N1bWVudC5yZWdpc3RlcigpIGZvciBl
eHRlbmRpbmcgSFRNTCBhbmQgbm9uLUhUTUwgZWxlbWVudHMuIik7Ci0KLWRvY3VtZW50LnJlZ2lz
dGVyID0gZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci0KLWZ1
bmN0aW9uIGNyZWF0ZUVsZW1lbnRGcm9tSFRNTChodG1sKQotewotICAgIHZhciBjb250YWluZXIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLSAgICBjb250YWluZXIuaW5uZXJIVE1M
ID0gaHRtbDsKLSAgICByZXR1cm4gY29udGFpbmVyLmZpcnN0Q2hpbGQ7Ci19Ci0KLWZ1bmN0aW9u
IGNyZWF0ZUVsZW1lbnRGcm9tU1ZHKHN2ZykKLXsKLSAgICB2YXIgY29udGFpbmVyID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICAgY29udGFpbmVyLmlubmVySFRNTCA9ICI8c3Zn
IHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+IiArIHN2ZyArICI8L3N2Zz4iOwot
ICAgIHJldHVybiBjb250YWluZXIuZmlyc3RDaGlsZC5maXJzdENoaWxkOwotfQotCi1DdXN0b21I
VE1MRWxlbWVudCA9IGRvY3VtZW50LnJlZ2lzdGVyKCdodG1sLWZvbycsIHsgcHJvdG90eXBlOiBP
YmplY3QuY3JlYXRlKEhUTUxFbGVtZW50LnByb3RvdHlwZSkgfSk7Ci1DdXN0b21TVkdFbGVtZW50
ID0gZG9jdW1lbnQucmVnaXN0ZXIoJ3N2Zy1mb28nLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0
ZShTVkdFbGVtZW50LnByb3RvdHlwZSkgfSk7Ci1DdXN0b21YTUxFbGVtZW50ID0gZG9jdW1lbnQu
cmVnaXN0ZXIoJ3htbC1mb28nLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShFbGVtZW50LnBy
b3RvdHlwZSkgfSk7Ci0KLXZhciBodG1sMSA9IG5ldyBDdXN0b21IVE1MRWxlbWVudCgpOwotc2hv
dWxkQmUoImh0bWwxLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRt
bCciKTsKLXZhciBodG1sMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImh0bWwtZm9vIik7Ci1z
aG91bGRCZSgiaHRtbDIubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3LnczLm9yZy8xOTk5L3ho
dG1sJyIpOwotdmFyIGh0bWwzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3
LnczLm9yZy8xOTk5L3hodG1sIiwgImh0bWwtZm9vIik7Ci1zaG91bGRCZSgiaHRtbDMubmFtZXNw
YWNlVVJJIiwgIidodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJyIpOwotdmFyIGh0bWw0ID0g
Y3JlYXRlRWxlbWVudEZyb21IVE1MKCI8aHRtbC1mb28+PC9odG1sLWZvbz4iKTsKLXNob3VsZEJl
KCJodG1sNC5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnIik7
Ci0KLXZhciBub3RIVE1MID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LmV4
YW1wbGUuY29tLyIsICJodG1sLWZvbyIpOwotc2hvdWxkQmUoIm5vdEhUTUwubmFtZXNwYWNlVVJJ
IiwgIidodHRwOi8vd3d3LmV4YW1wbGUuY29tLyciKTsKLXNob3VsZEJlRmFsc2UoIm5vdEhUTUwg
aW5zdGFuY2VvZiBDdXN0b21IVE1MRWxlbWVudCIpOwotc2hvdWxkQmVGYWxzZSgibm90SFRNTCBp
bnN0YW5jZW9mIEhUTUxFbGVtZW50Iik7Ci0KLXZhciBzdmcxID0gbmV3IEN1c3RvbVNWR0VsZW1l
bnQoKTsKLXNob3VsZEJlKCJzdmcxLnRhZ05hbWUiLCAiJ3N2Zy1mb28nIik7Ci1zaG91bGRCZSgi
c3ZnMS5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyIpOwotdmFy
IHN2ZzIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzIwMDAv
c3ZnIiwgInN2Zy1mb28iKTsKLXNob3VsZEJlKCJzdmcyLnRhZ05hbWUiLCAiJ3N2Zy1mb28nIik7
Ci1zaG91bGRCZSgic3ZnMi5uYW1lc3BhY2VVUkkiLCAiJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAv
c3ZnJyIpOwotdmFyIHN2ZzMgPSBjcmVhdGVFbGVtZW50RnJvbVNWRygiPHN2Zy1mb28+PC9zdmct
Zm9vPiIpOwotc2hvdWxkQmUoInN2ZzMudGFnTmFtZSIsICInc3ZnLWZvbyciKTsKLXNob3VsZEJl
KCJzdmczLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIik7Ci0K
LXZhciBub3RTVkcxID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3ZnLWZvbyIpOwotc2hvdWxk
QmUoIm5vdFNWRzEubmFtZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1s
JyIpOwotc2hvdWxkQmVGYWxzZSgibm90U1ZHMSBpbnN0YW5jZW9mIEN1c3RvbVNWR0VsZW1lbnQi
KTsKLXNob3VsZEJlVHJ1ZSgibm90U1ZHMSBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIp
OwotdmFyIG5vdFNWRzIgPSBjcmVhdGVFbGVtZW50RnJvbUhUTUwoIjxzdmctZm9vPjwvc3ZnLWZv
bz4iKTsKLXNob3VsZEJlKCJub3RTVkcyLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5v
cmcvMTk5OS94aHRtbCciKTsKLXNob3VsZEJlRmFsc2UoIm5vdFNWRzIgaW5zdGFuY2VvZiBDdXN0
b21TVkdFbGVtZW50Iik7Ci1zaG91bGRCZVRydWUoIm5vdFNWRzIgaW5zdGFuY2VvZiBIVE1MVW5r
bm93bkVsZW1lbnQiKTsKLQotdmFyIHhtbDEgPSBuZXcgQ3VzdG9tWE1MRWxlbWVudCgpOwotc2hv
dWxkQmUoInhtbDEudGFnTmFtZSIsICIneG1sLWZvbyciKTsKLXNob3VsZEJlKCJ4bWwxLm5hbWVz
cGFjZVVSSSIsICJudWxsIik7Ci12YXIgeG1sMiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhu
dWxsLCAieG1sLWZvbyIpOwotc2hvdWxkQmUoInhtbDIudGFnTmFtZSIsICIneG1sLWZvbyciKTsK
LXNob3VsZEJlKCJ4bWwyLm5hbWVzcGFjZVVSSSIsICJudWxsIik7Ci0KLXZhciBub3RYTUwxID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgieG1sLWZvbyIpOwotc2hvdWxkQmUoIm5vdFhNTDEubmFt
ZXNwYWNlVVJJIiwgIidodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJyIpOwotc2hvdWxkQmVG
YWxzZSgibm90WE1MMSBpbnN0YW5jZW9mIEN1c3RvbVhNTEVsZW1lbnQiKTsKLXNob3VsZEJlVHJ1
ZSgibm90WE1MMSBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwotdmFyIG5vdFhNTDIg
PSBjcmVhdGVFbGVtZW50RnJvbUhUTUwoIjx4bWwtZm9vPjwveG1sLWZvbz4iKTsKLXNob3VsZEJl
KCJub3RYTUwyLm5hbWVzcGFjZVVSSSIsICInaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCci
KTsKLXNob3VsZEJlRmFsc2UoIm5vdFhNTDIgaW5zdGFuY2VvZiBDdXN0b21YTUxFbGVtZW50Iik7
Ci1zaG91bGRCZVRydWUoIm5vdFhNTDIgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsK
LQotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LW51bGwtY29uc3RydWN0b3It
ZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9k
b2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtbnVsbC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVu
dC1yZWdpc3Rlci1yZWVudHJhbnQtbnVsbC1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQJKG5vbmV4
aXN0ZW50KQpAQCAtMSw5ICswLDAgQEAKLUZ1enppbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0aHJv
dWdoIGdldHRlcnMuIFBBU1MgdWxlc3MgY3Jhc2guCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNl
ZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRF
Ii4KLQotCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUK
LQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJl
ZW50cmFudC1udWxsLWNvbnN0cnVjdG9yLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
ZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1udWxsLWNvbnN0cnVj
dG9yLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3Rv
bS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtbnVsbC1jb25zdHJ1Y3Rvci5odG1sCShub25l
eGlzdGVudCkKQEAgLTEsMjMgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0iLi9yZXNvdXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcyI+
PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Ci08
c2NyaXB0PgotZGVzY3JpcHRpb24oIkZ1enppbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0aHJvdWdo
IGdldHRlcnMuIFBBU1MgdWxlc3MgY3Jhc2guIik7Ci0KLXNldHVwT2JqZWN0SG9va3MoewotICAg
IHByb3RvdHlwZUdldDogZnVuY3Rpb24oKSB7IH0sCi0gICAgcHJvdG90eXBlU2V0OiBmdW5jdGlv
bih2YWx1ZSkgeyB9LAotICAgIGNvbnN0cnVjdG9yR2V0OiBmdW5jdGlvbigpIHsgfSwKLSAgICBj
b25zdHJ1Y3RvclNldDogZnVuY3Rpb24odmFsdWUpIHsgfQotfSk7Ci0KLWV4ZXJjaXNlRG9jdW1l
bnRSZWdpc3RlcigpOwotPC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXJldHVy
bmluZy1mYWtlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXJldHVybmluZy1mYWtlLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9t
L2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1yZXR1cm5pbmctZmFrZS1leHBlY3RlZC50eHQJ
KG5vbmV4aXN0ZW50KQpAQCAtMSw5ICswLDAgQEAKLUZ1enppbmcgZG9jdW1lbnQucmVnaXN0ZXIo
KSB0aHJvdWdoIGdldHRlcnMuIFBBU1MgdWxlc3MgY3Jhc2guCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KLQotCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09N
UExFVEUKLQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lz
dGVyLXJlZW50cmFudC1yZXR1cm5pbmctZmFrZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtcmV0dXJuaW5n
LWZha2UuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3Vz
dG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJlZW50cmFudC1yZXR1cm5pbmctZmFrZS5odG1sCShub25l
eGlzdGVudCkKQEAgLTEsMjYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFk
PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0iLi9yZXNvdXJjZXMvZG9jdW1lbnQtcmVnaXN0ZXItZnV6ei5qcyI+
PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Ci08
c2NyaXB0PgotZGVzY3JpcHRpb24oIkZ1enppbmcgZG9jdW1lbnQucmVnaXN0ZXIoKSB0aHJvdWdo
IGdldHRlcnMuIFBBU1MgdWxlc3MgY3Jhc2guIik7Ci0KLXZhciBiYWRQcm90b3R5cGUgPSBJbWFn
ZS5wcm90b3R5cGU7Ci12YXIgYmFkQ29uc3RydWN0b3IgPSBJbWFnZS5wcm90b3R5cGUuY29uc3Ry
dWN0b3I7Ci0KLXNldHVwT2JqZWN0SG9va3MoewotICAgIHByb3RvdHlwZUdldDogZnVuY3Rpb24o
KSB7IHJldHVybiBiYWRQcm90b3R5cGU7IH0sCi0gICAgcHJvdG90eXBlU2V0OiBmdW5jdGlvbih2
YWx1ZSkgeyAgfSwKLSAgICBjb25zdHJ1Y3RvckdldDogZnVuY3Rpb24oKSB7IHJldHVybiBiYWRD
b25zdHJ1Y3RvcjsgfSwKLSAgICBjb25zdHJ1Y3RvclNldDogZnVuY3Rpb24odmFsdWUpIHsgIH0K
LX0pOwotCi1leGVyY2lzZURvY3VtZW50UmVnaXN0ZXIoKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5
PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJl
Z2lzdGVyLXJlZW50cmFudC10aHJvd2luZy1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXJl
ZW50cmFudC10aHJvd2luZy1jb25zdHJ1Y3Rvci1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzcz
MikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVu
dHJhbnQtdGhyb3dpbmctY29uc3RydWN0b3ItZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAg
LTEsMTAgKzAsMCBAQAotRnV6emluZyBkb2N1bWVudC5yZWdpc3RlcigpIHRocm91Z2ggZ2V0dGVy
cy4gUEFTUyB1bGVzcyBjcmFzaC4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLUNv
bnN0cnVjdG9yIG9iamVjdCBpc24ndCBjcmVhdGVkLgotUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL2N1
c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtdGhyb3dpbmctY29uc3RydWN0b3IuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVn
aXN0ZXItcmVlbnRyYW50LXRocm93aW5nLWNvbnN0cnVjdG9yLmh0bWwJKHJldmlzaW9uIDIwMzcz
MikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVu
dHJhbnQtdGhyb3dpbmctY29uc3RydWN0b3IuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDIzICsw
LDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4v
cmVzb3VyY2VzL2RvY3VtZW50LXJlZ2lzdGVyLWZ1enouanMiPjwvc2NyaXB0PgotPC9oZWFkPgot
PGJvZHk+Ci08ZGl2IGlkPSJjb250YWluZXIiPjwvZGl2PgotPHNjcmlwdD4KLWRlc2NyaXB0aW9u
KCJGdXp6aW5nIGRvY3VtZW50LnJlZ2lzdGVyKCkgdGhyb3VnaCBnZXR0ZXJzLiBQQVNTIHVsZXNz
IGNyYXNoLiIpOwotCi1zZXR1cE9iamVjdEhvb2tzKHsKLSAgICBwcm90b3R5cGVHZXQ6IGZ1bmN0
aW9uKCkgeyB0aHJvdyAiRXJyb3IiOyB9LAotICAgIHByb3RvdHlwZVNldDogZnVuY3Rpb24odmFs
dWUpIHsgdGhyb3cgIkVycm9yIjsgfSwKLSAgICBjb25zdHJ1Y3RvckdldDogZnVuY3Rpb24oKSB7
IHRocm93ICJFcnJvciI7IH0sCi0gICAgY29uc3RydWN0b3JTZXQ6IGZ1bmN0aW9uKHZhbHVlKSB7
IHRocm93ICJFcnJvciI7IH0KLX0pOwotCi1leGVyY2lzZURvY3VtZW50UmVnaXN0ZXIoKTsKLTwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20v
Y3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXR5cGUtZXh0ZW5zaW9ucy1leHBlY3RlZC50eHQKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVy
LXR5cGUtZXh0ZW5zaW9ucy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91
dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1yZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMt
ZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsNjcgKzAsMCBAQAotVGVzdGluZyBkb2N1
bWVudC5yZWdpc3RlcigpIHR5cGUgZXh0ZW5zaW9uIGJlaGF2aW91cnMgdGhyb3VnaCBjcmVhdGVF
bGVtZW50KCkuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIg
bWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1QQVNTIGRvY3VtZW50
LnJlZ2lzdGVyKCd4LWZvbycsIHsgcHJvdG90eXBlOiBPYmplY3QuY3JlYXRlKEhUTUxEaXZFbGVt
ZW50LnByb3RvdHlwZSkgfSkgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRTdGF0ZUVycm9yIChET00g
RXhjZXB0aW9uIDExKTogVGhlIG9iamVjdCBpcyBpbiBhbiBpbnZhbGlkIHN0YXRlLi4KLVBBU1Mg
Zm9vTmV3ZWQub3V0ZXJIVE1MIGlzICc8eC1mb28+PC94LWZvbz4nCi1QQVNTIGZvb05ld2VkIGlu
c3RhbmNlb2YgZm9vQ29uc3RydWN0b3IgJiYgZm9vTmV3ZWQgaW5zdGFuY2VvZiBIVE1MRWxlbWVu
dCBpcyB0cnVlCi1QQVNTIGZvb05ld2VkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50IGlz
IGZhbHNlCi1QQVNTIGJhck5ld2VkLm91dGVySFRNTCBpcyAnPGlucHV0IGlzPSJ4LWJhciI+Jwot
UEFTUyBiYXJOZXdlZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yICYmIGJhck5ld2VkIGluc3Rh
bmNlb2YgSFRNTElucHV0RWxlbWVudCBpcyB0cnVlCi1QQVNTIGlzRm9ybUNvbnRyb2woYmFyTmV3
ZWQpIGlzIHRydWUKLVBBU1MgYmF6TmV3ZWQub3V0ZXJIVE1MIGlzICc8eC1iYXo+PC94LWJhej4n
Ci1QQVNTIGJhek5ld2VkIGluc3RhbmNlb2YgYmF6Q29uc3RydWN0b3IgJiYgYmF6TmV3ZWQgaW5z
dGFuY2VvZiBIVE1MRWxlbWVudCBpcyB0cnVlCi1QQVNTIGJhek5ld2VkIGluc3RhbmNlb2YgSFRN
TFVua25vd25FbGVtZW50IGlzIGZhbHNlCi1QQVNTIHF1eE5ld2VkIGluc3RhbmNlb2YgcXV4Q29u
c3RydWN0b3IgJiYgcXV4TmV3ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciAmJiBxdXhOZXdl
ZCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBxdXhOZXdlZC5vdXRl
ckhUTUwgaXMgJzxpbnB1dCBpcz0ieC1xdXgiPicKLVBBU1MgaXNGb3JtQ29udHJvbChxdXhOZXdl
ZCkgaXMgdHJ1ZQotUEFTUyBmb29DcmVhdGVkLm91dGVySFRNTCBpcyAnPHgtZm9vPjwveC1mb28+
JwotUEFTUyBmb29DcmVhdGVkIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IgaXMgdHJ1ZQotUEFT
UyBiYXJDcmVhdGVkLm91dGVySFRNTCBpcyAnPHgtYmFyPjwveC1iYXI+JwotUEFTUyBiYXJDcmVh
dGVkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IgaXMgZmFsc2UKLVBBU1MgYmFyQ3JlYXRlZCBp
bnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBpcyB0cnVlCi1QQVNTIGJhekNyZWF0ZWQub3V0
ZXJIVE1MIGlzICc8eC1iYXo+PC94LWJhej4nCi1QQVNTIGJhekNyZWF0ZWQgaW5zdGFuY2VvZiBi
YXpDb25zdHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGJhekNyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5r
bm93bkVsZW1lbnQgaXMgZmFsc2UKLVBBU1MgcXV4Q3JlYXRlZC5vdXRlckhUTUwgaXMgJzx4LXF1
eD48L3gtcXV4PicKLVBBU1MgcXV4Q3JlYXRlZCBpbnN0YW5jZW9mIHF1eENvbnN0cnVjdG9yIGlz
IGZhbHNlCi1QQVNTIHF1eENyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMg
dHJ1ZQotUEFTUyBkaXZGb29DcmVhdGVkLm91dGVySFRNTCBpcyAnPGRpdiBpcz0ieC1mb28iPjwv
ZGl2PicKLVBBU1MgZGl2Rm9vQ3JlYXRlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlzIGZh
bHNlCi1QQVNTIGRpdkZvb0NyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MRGl2RWxlbWVudCBpcyB0cnVl
Ci1QQVNTIGlucHV0QmFyQ3JlYXRlZC5vdXRlckhUTUwgaXMgJzxpbnB1dCBpcz0ieC1iYXIiPicK
LVBBU1MgaW5wdXRCYXJDcmVhdGVkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IgaXMgdHJ1ZQot
UEFTUyBpbnB1dEJhckNyZWF0ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQgaXMgZmFs
c2UKLVBBU1MgaXNGb3JtQ29udHJvbChpbnB1dEJhckNyZWF0ZWQpIGlzIHRydWUKLVBBU1MgZGl2
QmFyQ3JlYXRlZC5vdXRlckhUTUwgaXMgJzxkaXYgaXM9IngtYmFyIj48L2Rpdj4nCi1QQVNTIGRp
dkJhckNyZWF0ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBpcyBmYWxzZQotUEFTUyBkaXZC
YXJDcmVhdGVkIGluc3RhbmNlb2YgSFRNTERpdkVsZW1lbnQgaXMgdHJ1ZQotUEFTUyBmb29CYXJD
cmVhdGVkLm91dGVySFRNTCBpcyAnPHgtZm9vIGlzPSJ4LWJhciI+PC94LWZvbz4nCi1QQVNTIGZv
b0JhckNyZWF0ZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGJhckZv
b0NyZWF0ZWQub3V0ZXJIVE1MIGlzICc8eC1iYXIgaXM9IngtZm9vIj48L3gtYmFyPicKLVBBU1Mg
YmFyRm9vQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCBpcyB0cnVlCi1QQVNT
IGZvb0NyZWF0ZWROdWxsLm91dGVySFRNTCBpcyAnPHgtZm9vPjwveC1mb28+JwotUEFTUyBmb29D
cmVhdGVkTnVsbCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlzIHRydWUKLVBBU1MgZm9vQ3Jl
YXRlZEVtcHR5Lm91dGVySFRNTCBpcyAnPHgtZm9vPjwveC1mb28+JwotUEFTUyBmb29DcmVhdGVk
RW1wdHkgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ0BpbnZhbGlkJywgJ3gtYmFyJykgdGhyZXcgZXhjZXB0aW9uIEludmFsaWRD
aGFyYWN0ZXJFcnJvciAoRE9NIEV4Y2VwdGlvbiA1KTogVGhlIHN0cmluZyBjb250YWlucyBpbnZh
bGlkIGNoYXJhY3RlcnMuLgotUEFTUyBmb29DcmVhdGVkTlMub3V0ZXJIVE1MIGlzICc8eC1mb28+
PC94LWZvbz4nCi1QQVNTIGZvb0NyZWF0ZWROUyBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlz
IHRydWUKLVBBU1MgYmFyQ3JlYXRlZE5TLm91dGVySFRNTCBpcyAnPGlucHV0IGlzPSJ4LWJhciI+
JwotUEFTUyBiYXJDcmVhdGVkTlMgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBpcyB0cnVlCi1Q
QVNTIGlzRm9ybUNvbnRyb2woYmFyQ3JlYXRlZE5TKSBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnROUygnaHR0cDovL2V4YW1wbGUuY29tLzIwMTMvbm8tc3VjaC1uYW1lc3BhY2Un
LCAneG1sOmxhbmcnLCAneC1iYXInKSB0aHJldyBleGNlcHRpb24gTmFtZXNwYWNlRXJyb3IgKERP
TSBFeGNlcHRpb24gMTQpOiBUaGUgb3BlcmF0aW9uIGlzIG5vdCBhbGxvd2VkIGJ5IE5hbWVzcGFj
ZXMgaW4gWE1MLi4KLVBBU1MgZm9vUGFyc2VkIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IgaXMg
dHJ1ZQotUEFTUyBiYXJQYXJzZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciBpcyB0cnVlCi1Q
QVNTIGlzRm9ybUNvbnRyb2woYmFyUGFyc2VkKSBpcyB0cnVlCi1QQVNTIGRpdkZvb1BhcnNlZCBp
bnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIGlzIGZhbHNlCi1QQVNTIGRpdkZvb1BhcnNlZCBpbnN0
YW5jZW9mIEhUTUxEaXZFbGVtZW50IGlzIHRydWUKLVBBU1MgbmFtZWRCYXJQYXJzZWQgaW5zdGFu
Y2VvZiBiYXJDb25zdHJ1Y3RvciBpcyBmYWxzZQotUEFTUyBuYW1lZEJhclBhcnNlZCBpbnN0YW5j
ZW9mIEhUTUxVbmtub3duRWxlbWVudCBpcyB0cnVlCi1QQVNTIGRpdkJhclBhcnNlZCBpbnN0YW5j
ZW9mIGJhckNvbnN0cnVjdG9yIGlzIGZhbHNlCi1QQVNTIGRpdkJhclBhcnNlZCBpbnN0YW5jZW9m
IEhUTUxEaXZFbGVtZW50IGlzIHRydWUKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUK
LQotVEVTVCBDT01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9j
dW1lbnQtcmVnaXN0ZXItdHlwZS1leHRlbnNpb25zLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL2RvY3VtZW50LXJlZ2lzdGVyLXR5cGUtZXh0ZW5zaW9ucy5o
dG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vZG9j
dW1lbnQtcmVnaXN0ZXItdHlwZS1leHRlbnNpb25zLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAtMSwx
NzAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08L2hlYWQ+Ci08
Ym9keT4KLTxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+Ci08Zm9ybSBpZD0idGVzdEZvcm0iPjwv
Zm9ybT4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiVGVzdGluZyBkb2N1bWVudC5yZWdpc3Rlcigp
IHR5cGUgZXh0ZW5zaW9uIGJlaGF2aW91cnMgdGhyb3VnaCBjcmVhdGVFbGVtZW50KCkuIik7Ci0K
LWZ1bmN0aW9uIGlzRm9ybUNvbnRyb2woZWxlbWVudCkKLXsKLSAgICB0ZXN0Rm9ybS5hcHBlbmRD
aGlsZChlbGVtZW50KTsKLSAgICByZXR1cm4gZWxlbWVudC5mb3JtID09IHRlc3RGb3JtOwotfQot
Ci1pZiAod2luZG93LnRlc3RSdW5uZXIpCi0gICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Ci1k
b2N1bWVudC5yZWdpc3RlciA9IGRvY3VtZW50LnJlZ2lzdGVyIHx8IGRvY3VtZW50LndlYmtpdFJl
Z2lzdGVyOwotCi0vLwotLy8gSW5oZXJpdGFuY2UgaGVyZSBpcyBzaGFwZWQgbGlrZSB0aGlzOgot
Ly8KLS8vIEhUTUxFbGVtZW50IDwtIGlucHV0IDwtIHgtYmFyIDwtIHgtcXV4Ci0vLyAgICAgICAg
ICAgICA8LSB4LWZvbyA8LSB4LWJhegotLy8KLQotZm9vQ29uc3RydWN0b3IgPSBkb2N1bWVudC5y
ZWdpc3RlcigneC1mb28nLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5w
cm90b3R5cGUpIH0pOwotYmFyQ29uc3RydWN0b3IgPSBkb2N1bWVudC5yZWdpc3RlcigneC1iYXIn
LCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MSW5wdXRFbGVtZW50LnByb3RvdHlwZSkg
fSk7Ci1iYXpDb25zdHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lzdGVyKCd4LWJheicsIHsgcHJvdG90
eXBlOiBPYmplY3QuY3JlYXRlKGZvb0NvbnN0cnVjdG9yLnByb3RvdHlwZSkgfSk7Ci1xdXhDb25z
dHJ1Y3RvciA9IGRvY3VtZW50LnJlZ2lzdGVyKCd4LXF1eCcsIHsgcHJvdG90eXBlOiBPYmplY3Qu
Y3JlYXRlKGJhckNvbnN0cnVjdG9yLnByb3RvdHlwZSkgfSk7Ci0KLS8vIFNhbWUgbmFtZSwgZGlm
ZmVyZW50IGxvY2FsIG5hbWUKLXNob3VsZFRocm93KCJkb2N1bWVudC5yZWdpc3RlcigneC1mb28n
LCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUpIH0p
IiwgIidJbnZhbGlkU3RhdGVFcnJvciAoRE9NIEV4Y2VwdGlvbiAxMSk6IFRoZSBvYmplY3QgaXMg
aW4gYW4gaW52YWxpZCBzdGF0ZS4nIik7Ci0KLS8vCi0vLyBHZW5lcmF0ZWQgY29uc3RydWN0b3Jz
Ci0vLwotCi1mb29OZXdlZCA9IG5ldyBmb29Db25zdHJ1Y3RvcigpOwotZm9vT3V0ZXJIVE1MID0g
Iic8eC1mb28+PC94LWZvbz4nIjsKLXNob3VsZEJlKCJmb29OZXdlZC5vdXRlckhUTUwiLCBmb29P
dXRlckhUTUwpOwotc2hvdWxkQmVUcnVlKCJmb29OZXdlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVj
dG9yICYmIGZvb05ld2VkIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQiKTsKLXNob3VsZEJlRmFsc2Uo
ImZvb05ld2VkIGluc3RhbmNlb2YgSFRNTFVua25vd25FbGVtZW50Iik7Ci0KLWJhck5ld2VkID0g
bmV3IGJhckNvbnN0cnVjdG9yKCk7Ci1iYXJPdXRlckhUTUwgPSAiJzxpbnB1dCBpcz1cIngtYmFy
XCI+JyI7Ci1zaG91bGRCZSgiYmFyTmV3ZWQub3V0ZXJIVE1MIiwgYmFyT3V0ZXJIVE1MKTsKLXNo
b3VsZEJlVHJ1ZSgiYmFyTmV3ZWQgaW5zdGFuY2VvZiBiYXJDb25zdHJ1Y3RvciAmJiBiYXJOZXdl
ZCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQiKTsKLXNob3VsZEJlVHJ1ZSgiaXNGb3JtQ29u
dHJvbChiYXJOZXdlZCkiKTsKLQotYmF6TmV3ZWQgPSBuZXcgYmF6Q29uc3RydWN0b3IoKTsKLWJh
ek91dGVySFRNTCA9ICInPHgtYmF6PjwveC1iYXo+JyI7Ci1zaG91bGRCZSgiYmF6TmV3ZWQub3V0
ZXJIVE1MIiwgYmF6T3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgiYmF6TmV3ZWQgaW5zdGFuY2Vv
ZiBiYXpDb25zdHJ1Y3RvciAmJiBiYXpOZXdlZCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50Iik7Ci1z
aG91bGRCZUZhbHNlKCJiYXpOZXdlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwot
Ci1xdXhOZXdlZCA9IG5ldyBxdXhDb25zdHJ1Y3RvcigpOwotcXV4T3V0ZXJIVE1MID0gIic8aW5w
dXQgaXM9XCJ4LXF1eFwiPiciOwotc2hvdWxkQmVUcnVlKCJxdXhOZXdlZCBpbnN0YW5jZW9mIHF1
eENvbnN0cnVjdG9yICYmIHF1eE5ld2VkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IgJiYgcXV4
TmV3ZWQgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50Iik7Ci1zaG91bGRCZSgicXV4TmV3ZWQu
b3V0ZXJIVE1MIiwgcXV4T3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgiaXNGb3JtQ29udHJvbChx
dXhOZXdlZCkiKTsKLQotLy8KLS8vIFNpbmdsZSBwYXJhbWV0ZXIgY3JlYXRlRWxlbWVudCgpCi0v
LwotCi1mb29DcmVhdGVkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgieC1mb28iKTsKLXNob3Vs
ZEJlKCJmb29DcmVhdGVkLm91dGVySFRNTCIsIGZvb091dGVySFRNTCk7Ci1zaG91bGRCZVRydWUo
ImZvb0NyZWF0ZWQgaW5zdGFuY2VvZiBmb29Db25zdHJ1Y3RvciIpOwotCi1iYXJDcmVhdGVkID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgieC1iYXIiKTsKLXNob3VsZEJlKCJiYXJDcmVhdGVkLm91
dGVySFRNTCIsICInPHgtYmFyPjwveC1iYXI+JyIpOwotc2hvdWxkQmVGYWxzZSgiYmFyQ3JlYXRl
ZCBpbnN0YW5jZW9mIGJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoImJhckNyZWF0ZWQg
aW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotYmF6Q3JlYXRlZCA9IGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoIngtYmF6Iik7Ci1zaG91bGRCZSgiYmF6Q3JlYXRlZC5vdXRlckhUTUwi
LCAiJzx4LWJhej48L3gtYmF6PiciKTsKLXNob3VsZEJlVHJ1ZSgiYmF6Q3JlYXRlZCBpbnN0YW5j
ZW9mIGJhekNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZUZhbHNlKCJiYXpDcmVhdGVkIGluc3RhbmNl
b2YgSFRNTFVua25vd25FbGVtZW50Iik7Ci0KLXF1eENyZWF0ZWQgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJ4LXF1eCIpOwotc2hvdWxkQmUoInF1eENyZWF0ZWQub3V0ZXJIVE1MIiwgIic8eC1x
dXg+PC94LXF1eD4nIik7Ci1zaG91bGRCZUZhbHNlKCJxdXhDcmVhdGVkIGluc3RhbmNlb2YgcXV4
Q29uc3RydWN0b3IiKTsKLXNob3VsZEJlVHJ1ZSgicXV4Q3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxV
bmtub3duRWxlbWVudCIpOwotCi0vLwotLy8gY3JlYXRlRWxlbWVudCgpIHdpdGggdHlwZSBleHRl
bnNpb25zCi0vLwotCi1kaXZGb29DcmVhdGVkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2
IiwgIngtZm9vIik7Ci1zaG91bGRCZSgiZGl2Rm9vQ3JlYXRlZC5vdXRlckhUTUwiLCAiJzxkaXYg
aXM9XCJ4LWZvb1wiPjwvZGl2PiciKTsKLXNob3VsZEJlRmFsc2UoImRpdkZvb0NyZWF0ZWQgaW5z
dGFuY2VvZiBmb29Db25zdHJ1Y3RvciIpOwotc2hvdWxkQmVUcnVlKCJkaXZGb29DcmVhdGVkIGlu
c3RhbmNlb2YgSFRNTERpdkVsZW1lbnQiKTsKLQotaW5wdXRCYXJDcmVhdGVkID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiaW5wdXQiLCAieC1iYXIiKTsKLXNob3VsZEJlKCJpbnB1dEJhckNyZWF0
ZWQub3V0ZXJIVE1MIiwgYmFyT3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgiaW5wdXRCYXJDcmVh
dGVkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJlRmFsc2UoImlucHV0QmFy
Q3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxVbmtub3duRWxlbWVudCIpOwotc2hvdWxkQmVUcnVlKCJp
c0Zvcm1Db250cm9sKGlucHV0QmFyQ3JlYXRlZCkiKTsKLQotZGl2QmFyQ3JlYXRlZCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIsICJ4LWJhciIpOwotc2hvdWxkQmUoImRpdkJhckNyZWF0
ZWQub3V0ZXJIVE1MIiwgIic8ZGl2IGlzPVwieC1iYXJcIj48L2Rpdj4nIik7Ci1zaG91bGRCZUZh
bHNlKCJkaXZCYXJDcmVhdGVkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0b3IiKTsKLXNob3VsZEJl
VHJ1ZSgiZGl2QmFyQ3JlYXRlZCBpbnN0YW5jZW9mIEhUTUxEaXZFbGVtZW50Iik7Ci0KLWZvb0Jh
ckNyZWF0ZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LWZvbyIsICJ4LWJhciIpOwotc2hv
dWxkQmUoImZvb0JhckNyZWF0ZWQub3V0ZXJIVE1MIiwgIic8eC1mb28gaXM9XCJ4LWJhclwiPjwv
eC1mb28+JyIpOwotc2hvdWxkQmVUcnVlKCJmb29CYXJDcmVhdGVkIGluc3RhbmNlb2YgZm9vQ29u
c3RydWN0b3IiKTsKLQotYmFyRm9vQ3JlYXRlZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngt
YmFyIiwgIngtZm9vIik7Ci1zaG91bGRCZSgiYmFyRm9vQ3JlYXRlZC5vdXRlckhUTUwiLCAiJzx4
LWJhciBpcz1cIngtZm9vXCI+PC94LWJhcj4nIik7Ci1zaG91bGRCZVRydWUoImJhckZvb0NyZWF0
ZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93bkVsZW1lbnQiKTsKLQotZm9vQ3JlYXRlZE51bGwgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJ4LWZvbyIsIG51bGwpOwotc2hvdWxkQmUoImZvb0NyZWF0
ZWROdWxsLm91dGVySFRNTCIsIGZvb091dGVySFRNTCk7Ci1zaG91bGRCZVRydWUoImZvb0NyZWF0
ZWROdWxsIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IiKTsKLQotZm9vQ3JlYXRlZEVtcHR5ID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgieC1mb28iLCAiIik7Ci1zaG91bGRCZSgiZm9vQ3JlYXRl
ZEVtcHR5Lm91dGVySFRNTCIsIGZvb091dGVySFRNTCk7Ci1zaG91bGRCZVRydWUoImZvb0NyZWF0
ZWRFbXB0eSBpbnN0YW5jZW9mIGZvb0NvbnN0cnVjdG9yIik7Ci0KLXNob3VsZFRocm93KCJkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCdAaW52YWxpZCcsICd4LWJhcicpIiwgIidJbnZhbGlkQ2hhcmFj
dGVyRXJyb3IgKERPTSBFeGNlcHRpb24gNSk6IFRoZSBzdHJpbmcgY29udGFpbnMgaW52YWxpZCBj
aGFyYWN0ZXJzLiciKTsKLQotLy8KLS8vIGNyZWF0ZUVsZW1lbnROUygpIHdpdGggdHlwZSBleHRl
bnNpb25zCi0vLwotCi1mb29DcmVhdGVkTlMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMoImh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiLCAieC1mb28iLCBudWxsKTsKLXNob3VsZEJlKCJm
b29DcmVhdGVkTlMub3V0ZXJIVE1MIiwgZm9vT3V0ZXJIVE1MKTsKLXNob3VsZEJlVHJ1ZSgiZm9v
Q3JlYXRlZE5TIGluc3RhbmNlb2YgZm9vQ29uc3RydWN0b3IiKTsKLQotYmFyQ3JlYXRlZE5TID0g
ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIiwg
ImlucHV0IiwgIngtYmFyIik7Ci1zaG91bGRCZSgiYmFyQ3JlYXRlZE5TLm91dGVySFRNTCIsIGJh
ck91dGVySFRNTCk7Ci1zaG91bGRCZVRydWUoImJhckNyZWF0ZWROUyBpbnN0YW5jZW9mIGJhckNv
bnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoImlzRm9ybUNvbnRyb2woYmFyQ3JlYXRlZE5TKSIp
OwotCi1zaG91bGRUaHJvdygiZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vZXhhbXBs
ZS5jb20vMjAxMy9uby1zdWNoLW5hbWVzcGFjZScsICd4bWw6bGFuZycsICd4LWJhcicpIiwgIidO
YW1lc3BhY2VFcnJvciAoRE9NIEV4Y2VwdGlvbiAxNCk6IFRoZSBvcGVyYXRpb24gaXMgbm90IGFs
bG93ZWQgYnkgTmFtZXNwYWNlcyBpbiBYTUwuJyIpOwotCi0vLyBwYXJzZXIKLWZ1bmN0aW9uIGNy
ZWF0ZUVsZW1lbnRGcm9tSFRNTChodG1sKSB7Ci0gICB2YXIgY29udGFpbmVyID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiZGl2Iik7Ci0gICBjb250YWluZXIuaW5uZXJIVE1MID0gaHRtbDsKLSAg
IHJldHVybiBjb250YWluZXIuZmlyc3RDaGlsZDsKLX0KLQotZm9vUGFyc2VkID0gY3JlYXRlRWxl
bWVudEZyb21IVE1MKCc8eC1mb28+Jyk7Ci1zaG91bGRCZVRydWUoImZvb1BhcnNlZCBpbnN0YW5j
ZW9mIGZvb0NvbnN0cnVjdG9yIik7Ci0KLWJhclBhcnNlZCA9IGNyZWF0ZUVsZW1lbnRGcm9tSFRN
TCgnPGlucHV0IGlzPXgtYmFyPicpCi1zaG91bGRCZVRydWUoImJhclBhcnNlZCBpbnN0YW5jZW9m
IGJhckNvbnN0cnVjdG9yIik7Ci1zaG91bGRCZVRydWUoImlzRm9ybUNvbnRyb2woYmFyUGFyc2Vk
KSIpOwotCi1kaXZGb29QYXJzZWQgPSBjcmVhdGVFbGVtZW50RnJvbUhUTUwoJzxkaXYgaXM9eC1m
b28+JykKLXNob3VsZEJlRmFsc2UoImRpdkZvb1BhcnNlZCBpbnN0YW5jZW9mIGZvb0NvbnN0cnVj
dG9yIik7Ci1zaG91bGRCZVRydWUoImRpdkZvb1BhcnNlZCBpbnN0YW5jZW9mIEhUTUxEaXZFbGVt
ZW50Iik7Ci0KLW5hbWVkQmFyUGFyc2VkID0gY3JlYXRlRWxlbWVudEZyb21IVE1MKCc8eC1iYXI+
JykKLXNob3VsZEJlRmFsc2UoIm5hbWVkQmFyUGFyc2VkIGluc3RhbmNlb2YgYmFyQ29uc3RydWN0
b3IiKTsKLXNob3VsZEJlVHJ1ZSgibmFtZWRCYXJQYXJzZWQgaW5zdGFuY2VvZiBIVE1MVW5rbm93
bkVsZW1lbnQiKTsKLQotZGl2QmFyUGFyc2VkID0gY3JlYXRlRWxlbWVudEZyb21IVE1MKCc8ZGl2
IGlzPXgtYmFyPicpCi1zaG91bGRCZUZhbHNlKCJkaXZCYXJQYXJzZWQgaW5zdGFuY2VvZiBiYXJD
b25zdHJ1Y3RvciIpOwotc2hvdWxkQmVUcnVlKCJkaXZCYXJQYXJzZWQgaW5zdGFuY2VvZiBIVE1M
RGl2RWxlbWVudCIpOwotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExh
eW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1y
ZWN1cnNpb24tZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9t
L2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWN1cnNpb24tZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlm
ZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJzaW9uLWV4cGVjdGVkLnR4dAkobm9uZXhp
c3RlbnQpCkBAIC0xLDYgKzAsMCBAQAotQ09OU09MRSBNRVNTQUdFOiBsaW5lIDk6IFVuY2F1Z2h0
IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkLgotUEFTUyB1bmxl
c3MgY3Jhc2gKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVU
RQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNy
ZWF0ZUVsZW1lbnQtcmVjdXJzaW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlY3Vyc2lvbi5odG1s
CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5
Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVjdXJzaW9uLmh0bWwJKG5vbmV4aXN0ZW50KQpAQCAt
MSwxNyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+Ci08c2NyaXB0IHNy
Yz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4K
LTxib2R5PgotPHNjcmlwdD4KLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQucmVnaXN0ZXIg
fHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1mb28iLCB7
IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlD
YWxsYmFjazogeyB2YWx1ZTogZnVuY3Rpb24gKCkgeyB0aGlzLmlubmVySFRNTCA9ICI8eC1mb28+
SGVsbG88L3gtZm9vPiI7IH0gfSB9KSB9KTsKLWlmICh3aW5kb3cudGVzdFJ1bm5lcikKLSAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKLWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtZm9vIik7
Ci1kZWJ1ZygiUEFTUyB1bmxlc3MgY3Jhc2giKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4u
Ly4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9o
dG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1j
cmVhdGVFbGVtZW50LXJlZW50cmFuY3ktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWVu
dHJhbmN5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFz
dC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlZW50cmFuY3ktZXhw
ZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsMTMgKzAsMCBAQAotVGhpcyB0ZXN0IGVuc3Vy
ZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxiYWNrIG9mIGEgcGFyc2VyLW1hZGUgZWxlbWVudCBp
cyB2aXNpYmxlIGluIGZvbGxvd2luZyBzY3JpcHQgYmxvY2suCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KLQotCi1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgW10KLVBBU1Mgd2lu
ZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ1gtRk9PJ10KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0Nh
bGxlZCBpcyBbJ1gtRk9PJywgJ1gtQkFSJ10KLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBp
cyBbJ1gtRk9PJywgJ1gtQkFSJ10KLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQot
VEVTVCBDT01QTEVURQotCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5
Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVlbnRyYW5jeS5odG1sCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1y
ZWVudHJhbmN5Lmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL2Zhc3QvZG9t
L2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRlRWxlbWVudC1yZWVudHJhbmN5Lmh0bWwJKG5v
bmV4aXN0ZW50KQpAQCAtMSwzNCArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhl
YWQ+Ci08c2NyaXB0IHNyYz0iLi4vLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KLTxzY3JpcHQ+Ci1kZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUg
bGlmZWN5Y2xlIGNhbGxiYWNrIG9mIGEgcGFyc2VyLW1hZGUgZWxlbWVudCBpcyB2aXNpYmxlIGlu
IGZvbGxvd2luZyBzY3JpcHQgYmxvY2suIikKLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQu
cmVnaXN0ZXIgfHwgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXI7Ci0KLXdpbmRvdy5jYWxsYmFja3ND
YWxsZWQgPSBbXTsKLQotZnVuY3Rpb24gZm9vQ3JlYXRlZEZ1bmN0aW9uKCkgewotICBzaG91bGRC
ZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbXSIpOwotICB3aW5kb3cuY2FsbGJhY2tzQ2Fs
bGVkLnB1c2godGhpcy50YWdOYW1lKTsKLSAgdGhpcy5pbm5lckhUTUwgPSAiPHgtYmFyPjwveC1i
YXI+IjsKLSAgc2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiWydYLUZPTycsICdY
LUJBUiddIik7Ci19Ci0KLWZ1bmN0aW9uIGJhckNyZWF0ZWRGdW5jdGlvbigpIHsKLSAgc2hvdWxk
QmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiWydYLUZPTyddIik7Ci0gIHdpbmRvdy5jYWxs
YmFja3NDYWxsZWQucHVzaCh0aGlzLnRhZ05hbWUpOwotfQotCi1kb2N1bWVudC5yZWdpc3Rlcigi
eC1mb28iLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUs
IHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogZm9vQ3JlYXRlZEZ1bmN0aW9uIH0gfSkgfSk7Ci1k
b2N1bWVudC5yZWdpc3RlcigieC1iYXIiLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1M
RWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogYmFyQ3JlYXRlZEZ1
bmN0aW9uIH0gfSkgfSk7Ci08L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHNjcmlwdD4KLWRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoIngtZm9vIik7Ci1zaG91bGRCZSgid2luZG93LmNhbGxiYWNr
c0NhbGxlZCIsICJbJ1gtRk9PJywgJ1gtQkFSJ10iKTsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5Pgot
PC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFk
eS1jcmVhdGlvbi1hcGktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zh
c3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktY3JlYXRpb24tYXBpLWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNs
ZS1yZWFkeS1jcmVhdGlvbi1hcGktZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKQEAgLTEsMjcg
KzAsMCBAQAotVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUgbGlmZWN5Y2xlIGNhbGxiYWNrcyBv
ZiBBUEktb3JpZ2luYXRlZCBlbGVtZW50cyBhcmUgdmlzaWJsZSBpbiBmb2xsb3dpbmcgc2NyaXB0
IGJsb2NrLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1l
c3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotUEFTUyBkb2N1bWVudC5j
cmVhdGVFbGVtZW50KCd4LWZvbycpLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicsICd4LWJhcicpLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVl
Ci1QQVNTIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUygnaHR0cDovL3d3dy53My5vcmcvMTk5OS94
aHRtbCcsICd4LWZvbycpLmNhbGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnROUygnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcsICdkaXYnLCAneC1i
YXInKS5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyBmb28uY2xvbmVOb2RlKCkuY2FsbGJh
Y2tzQ2FsbGVkIGlzIHRydWUKLVBBU1MgZm9vLmNsb25lTm9kZSh0cnVlKS5maXJzdENoaWxkLmNh
bGxiYWNrc0NhbGxlZCBpcyB0cnVlCi1QQVNTIGJhci5jbG9uZU5vZGUoKS5jYWxsYmFja3NDYWxs
ZWQgaXMgdHJ1ZQotUEFTUyBiYXIuY2xvbmVOb2RlKHRydWUpLmZpcnN0Q2hpbGQuY2FsbGJhY2tz
Q2FsbGVkIGlzIHRydWUKLVBBU1MgZm9yZWlnbkZvby5jYWxsYmFja3NDYWxsZWQgaXMgdW5kZWZp
bmVkLgotUEFTUyBmb3JlaWduRm9vLmZpcnN0Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIGlzIHVuZGVm
aW5lZC4KLVBBU1MgaW1wb3J0ZWRGb28uY2FsbGJhY2tzQ2FsbGVkIGlzIHRydWUKLVBBU1MgaW1w
b3J0ZWRGb28uZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyB3aW5kb3cu
Y2FsbGJhY2tzQ2FsbGVkIGlzIFtdCi1QQVNTIGltcG9ydGVkQmFyLmNhbGxiYWNrc0NhbGxlZCBp
cyB0cnVlCi1QQVNTIGltcG9ydGVkQmFyLmZpcnN0Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIGlzIHRy
dWUKLVBBU1Mgd2luZG93LmNhbGxiYWNrc0NhbGxlZCBpcyBbJ0RJVicsICdYLUZPTyddCi1QQVNT
IHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydYLUZPTyddCi1QQVNTIHdpbmRvdy5jYWxsYmFj
a3NDYWxsZWQgaXMgWydYLUZPTyddCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0K
LVRFU1QgQ09NUExFVEUKLQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVj
eWNsZS1yZWFkeS1jcmVhdGlvbi1hcGkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9m
YXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0aW9uLWFwaS5odG1sCShyZXZpc2lv
biAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5
LWNyZWF0aW9uLWFwaS5odG1sCShub25leGlzdGVudCkKQEAgLTEsNzQgKzAsMCBAQAotPCFET0NU
WVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0PgotZGVzY3JpcHRpb24oIlRoaXMg
dGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxsYmFja3Mgb2YgQVBJLW9yaWdpbmF0
ZWQgZWxlbWVudHMgYXJlIHZpc2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9jay4iKQotd2lu
ZG93LmNhbGxiYWNrc0NhbGxlZCA9IFtdOwotZnVuY3Rpb24gbWFya2luZ1JlYWR5Q2FsbGJhY2so
KSB7Ci0gICAgd2luZG93LmNhbGxiYWNrc0NhbGxlZC5wdXNoKHRoaXMudGFnTmFtZSk7Ci0gICAg
dGhpcy5jYWxsYmFja3NDYWxsZWQgPSB0cnVlOwotfQotCi1kb2N1bWVudC5yZWdpc3RlciA9IGRv
Y3VtZW50LnJlZ2lzdGVyIHx8IGRvY3VtZW50LndlYmtpdFJlZ2lzdGVyOwotZG9jdW1lbnQucmVn
aXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJv
dG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFsdWU6IG1hcmtpbmdSZWFkeUNhbGxiYWNrIH0g
fSkgfSk7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1iYXIiLCB7IHByb3RvdHlwZTogT2JqZWN0LmNy
ZWF0ZShIVE1MRGl2RWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTog
bWFya2luZ1JlYWR5Q2FsbGJhY2sgfSB9KSB9KTsKLTwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+
Ci08ZGl2IGlkPSJjb250YWluZXIiPjwvZGl2PgotPGRpdiBpZD0iaG9zdCI+PC9kaXY+Ci0KLTxz
Y3JpcHQ+Ci0KLXNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgneC1mb28nKS5j
YWxsYmFja3NDYWxsZWQiKTsKLXNob3VsZEJlVHJ1ZSgiZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgn
ZGl2JywgJ3gtYmFyJykuY2FsbGJhY2tzQ2FsbGVkIik7Ci0KLXNob3VsZEJlVHJ1ZSgiZG9jdW1l
bnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sJywgJ3gtZm9v
JykuY2FsbGJhY2tzQ2FsbGVkIik7Ci1zaG91bGRCZVRydWUoImRvY3VtZW50LmNyZWF0ZUVsZW1l
bnROUygnaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcsICdkaXYnLCAneC1iYXInKS5jYWxs
YmFja3NDYWxsZWQiKTsKLQotdmFyIGZvbyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3gtZm9v
Jyk7Ci1mb28uYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JywgJ3gtYmFy
JykpOwotc2hvdWxkQmVUcnVlKCJmb28uY2xvbmVOb2RlKCkuY2FsbGJhY2tzQ2FsbGVkIik7Ci1z
aG91bGRCZVRydWUoImZvby5jbG9uZU5vZGUodHJ1ZSkuZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxs
ZWQiKTsKLQotdmFyIGJhciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicsICd4LWJhcicp
OwotYmFyLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3gtZm9vJykpOwotc2hv
dWxkQmVUcnVlKCJiYXIuY2xvbmVOb2RlKCkuY2FsbGJhY2tzQ2FsbGVkIik7Ci1zaG91bGRCZVRy
dWUoImJhci5jbG9uZU5vZGUodHJ1ZSkuZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQiKTsKLQot
dmFyIGZvcmVpZ25Eb2MgPSBkb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVEb2N1bWVudCgn
aHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCcsICdodG1sJywgbnVsbCk7Ci0KLXZhciBmb3Jl
aWduRm9vID0gZm9yZWlnbkRvYy5jcmVhdGVFbGVtZW50KCd4LWZvbycpOwotZm9yZWlnbkZvby5h
cHBlbmRDaGlsZChmb3JlaWduRG9jLmNyZWF0ZUVsZW1lbnQoJ2RpdicsICd4LWJhcicpKTsKLXNo
b3VsZEJlVW5kZWZpbmVkKCJmb3JlaWduRm9vLmNhbGxiYWNrc0NhbGxlZCIpOwotc2hvdWxkQmVV
bmRlZmluZWQoImZvcmVpZ25Gb28uZmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQiKTsKLWltcG9y
dGVkRm9vID0gZG9jdW1lbnQuaW1wb3J0Tm9kZShmb3JlaWduRm9vKQotc2hvdWxkQmVUcnVlKCJp
bXBvcnRlZEZvby5jYWxsYmFja3NDYWxsZWQiKTsKLXNob3VsZEJlVHJ1ZSgiaW1wb3J0ZWRGb28u
Zmlyc3RDaGlsZC5jYWxsYmFja3NDYWxsZWQiKTsKLQotd2luZG93LmNhbGxiYWNrc0NhbGxlZCA9
IFtdOwotdmFyIGZvcmVpZ25CYXIgPSBmb3JlaWduRG9jLmNyZWF0ZUVsZW1lbnQoJ2RpdicsICd4
LWJhcicpOwotZm9yZWlnbkJhci5hcHBlbmRDaGlsZChmb3JlaWduRG9jLmNyZWF0ZUVsZW1lbnQo
J3gtZm9vJykpOwotc2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiW10iKTsKLWlt
cG9ydGVkQmFyID0gZG9jdW1lbnQuaW1wb3J0Tm9kZShmb3JlaWduQmFyKTsKLXNob3VsZEJlVHJ1
ZSgiaW1wb3J0ZWRCYXIuY2FsbGJhY2tzQ2FsbGVkIik7Ci1zaG91bGRCZVRydWUoImltcG9ydGVk
QmFyLmZpcnN0Q2hpbGQuY2FsbGJhY2tzQ2FsbGVkIik7Ci1zaG91bGRCZSgid2luZG93LmNhbGxi
YWNrc0NhbGxlZCIsICJbJ0RJVicsICdYLUZPTyddIik7Ci0KLXdpbmRvdy5jYWxsYmFja3NDYWxs
ZWQgPSBbXTsKLXZhciB0b0JlUmVwbGFjZWQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKLWRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodG9CZVJlcGxhY2VkKTsKLXRvQmVSZXBsYWNl
ZC5vdXRlckhUTUwgPSAiPHgtZm9vPjwveC1mb28+IjsKLXNob3VsZEJlKCJ3aW5kb3cuY2FsbGJh
Y2tzQ2FsbGVkIiwgIlsnWC1GT08nXSIpOwotCi13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107
Ci12YXIgaW5zZXJ0aW9uUGxhY2VIb2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKLWRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaW5zZXJ0aW9uUGxhY2VIb2xkZXIpOwotaW5z
ZXJ0aW9uUGxhY2VIb2xkZXIuaW5zZXJ0QWRqYWNlbnRIVE1MKCJiZWZvcmViZWdpbiIsICI8eC1m
b28+PC94LWZvbz4iKTsKLXNob3VsZEJlKCJ3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIiwgIlsnWC1G
T08nXSIpOwotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMt
dGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRl
c3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktaW5uZXJIVE1MLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJl
YWR5LWlubmVySFRNTC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRl
c3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktaW5uZXJIVE1MLWV4cGVjdGVkLnR4
dAkobm9uZXhpc3RlbnQpCkBAIC0xLDExICswLDAgQEAKLVRoaXMgdGVzdCBlbnN1cmVzIHRoYXQg
dGhlIGxpZmVjeWNsZSBjYWxsYmFjayBvZiBhIHBhcnNlci1tYWRlIGVsZW1lbnQgaXMgdmlzaWJs
ZSBpbiBmb2xsb3dpbmcgc2NyaXB0IGJsb2NrLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
Ci0KLQotUEFTUyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsnYScsICdiJywgJ2MnXQotUEFT
UyB3aW5kb3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsnYScsICdiJywgJ2MnXQotUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktaW5uZXJIVE1MLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1pbm5lckhU
TUwuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9t
L2xpZmVjeWNsZS1yZWFkeS1pbm5lckhUTUwuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDM2ICsw
LDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3JjPSIuLi8u
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdD4KLWRlc2Ny
aXB0aW9uKCJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJhY2sgb2Yg
YSBwYXJzZXItbWFkZSBlbGVtZW50IGlzIHZpc2libGUgaW4gZm9sbG93aW5nIHNjcmlwdCBibG9j
ay4iKQotZG9jdW1lbnQucmVnaXN0ZXIgPSBkb2N1bWVudC5yZWdpc3RlciB8fCBkb2N1bWVudC53
ZWJraXRSZWdpc3RlcjsKLQotd2luZG93LmNhbGxiYWNrc0NhbGxlZCA9IFtdOwotCi1mdW5jdGlv
biB0cmFja2luZ1JlYWR5Q2FsbGJhY2soKQotewotICAgIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQu
cHVzaCh0aGlzLmlkKTsKLX0KLQotZG9jdW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBwcm90b3R5
cGU6IE9iamVjdC5jcmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6
IHsgdmFsdWU6IHRyYWNraW5nUmVhZHlDYWxsYmFjayB9IH0pIH0pOwotZG9jdW1lbnQucmVnaXN0
ZXIoIngtYmFyIiwgeyBwcm90b3R5cGU6IE9iamVjdC5jcmVhdGUoSFRNTERpdkVsZW1lbnQucHJv
dG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFsdWU6IHRyYWNraW5nUmVhZHlDYWxsYmFjayB9
IH0pIH0pOwotZG9jdW1lbnQucmVnaXN0ZXIoIngtYmF6IiwgeyBwcm90b3R5cGU6IE9iamVjdC5j
cmVhdGUoSFRNTEVsZW1lbnQucHJvdG90eXBlLCB7IHJlYWR5Q2FsbGJhY2s6IHsgdmFsdWU6IHRy
YWNraW5nUmVhZHlDYWxsYmFjayB9IH0pIH0pOwotPC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4K
LTxkaXYgaWQ9ImNvbnRhaW5lciI+Ci08c2NyaXB0PgotLy8gVGVzdGluZyBlbGVtZW50IHNpYmxp
bmdzCi13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci1jb250YWluZXIuaW5uZXJIVE1MID0g
Ijx4LWZvbyBpZD0nYSc+PC94LWZvbz48ZGl2IGlkPSdiJyBpcz0neC1iYXInPjwvZGl2Pjx4LWJh
eiBpZD0nYyc+PC94LWJhej4iOwotc2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAi
WydhJywgJ2InLCAnYyddIik7Ci0KLS8vIFRlc3RpbmcgbmVzdGVkIGVsZW1lbnRzCi13aW5kb3cu
Y2FsbGJhY2tzQ2FsbGVkID0gW107Ci1jb250YWluZXIuaW5uZXJIVE1MID0gIjx4LWZvbyBpZD0n
YSc+PGRpdiBpZD0nYicgaXM9J3gtYmFyJz48eC1iYXogaWQ9J2MnPjwveC1iYXo+PC9kaXY+PC94
LWZvbz4iOwotc2hvdWxkQmUoIndpbmRvdy5jYWxsYmFja3NDYWxsZWQiLCAiWydhJywgJ2InLCAn
YyddIik7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLW9ubHktZXhwZWN0ZWQuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJl
YWR5LXBhcnNlci1vbmx5LWV4cGVjdGVkLmh0bWwJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91
dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLW9ubHktZXhwZWN0
ZWQuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0xLDYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08
aHRtbD4KLTxib2R5PgotPHNwYW4+SGVsbG88L3NwYW4+Ci08L2JvZHk+Ci08L2h0bWw+CkluZGV4
OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1vbmx5
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNs
ZS1yZWFkeS1wYXJzZXItb25seS5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0
cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1vbmx5Lmh0bWwJKG5vbmV4
aXN0ZW50KQpAQCAtMSwxMyArMCwwIEBACi08IURPQ1RZUEUgaHRtbD4KLTxodG1sPgotPGhlYWQ+
Ci08c2NyaXB0PgotZG9jdW1lbnQucmVnaXN0ZXIgPSBkb2N1bWVudC5yZWdpc3RlciB8fCBkb2N1
bWVudC53ZWJraXRSZWdpc3RlcjsKLXByb3RvID0gT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5w
cm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogZnVuY3Rpb24oKSB7IHRoaXMuaW5u
ZXJIVE1MID0gIkhlbGxvIjsgfSB9IH0pOwotZG9jdW1lbnQucmVnaXN0ZXIoIngtZm9vIiwgeyBw
cm90b3R5cGU6IHByb3RvIH0pOwotPC9zY3JpcHQ+Ci08L2hlYWQ+Ci08Ym9keT4KLTx4LWZvbz48
L3gtZm9vPgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9kb20vY3Vz
dG9tL2xpZmVjeWNsZS1yZWFkeS1wYXJzZXItc2NyaXB0LWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1z
Y3JpcHQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1zY3JpcHQtZXhwZWN0ZWQudHh0CShu
b25leGlzdGVudCkKQEAgLTEsMTAgKzAsMCBAQAotVGhpcyB0ZXN0IGVuc3VyZXMgdGhhdCB0aGUg
bGlmZWN5Y2xlIGNhbGxiYWNrIG9mIGEgcGFyc2VyLW1hZGUgZWxlbWVudCBpcyB2aXNpYmxlIGlu
IGZvbGxvd2luZyBzY3JpcHQgYmxvY2suCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQot
Ci1QQVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgdHJ1ZQotUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
ZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNjcmlwdC5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNj
cmlwdC5odG1sCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0
b20vbGlmZWN5Y2xlLXJlYWR5LXBhcnNlci1zY3JpcHQuaHRtbAkobm9uZXhpc3RlbnQpCkBAIC0x
LDE5ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxzY3JpcHQgc3Jj
PSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdD4K
LWRlc2NyaXB0aW9uKCJUaGlzIHRlc3QgZW5zdXJlcyB0aGF0IHRoZSBsaWZlY3ljbGUgY2FsbGJh
Y2sgb2YgYSBwYXJzZXItbWFkZSBlbGVtZW50IGlzIHZpc2libGUgaW4gZm9sbG93aW5nIHNjcmlw
dCBibG9jay4iKQotZG9jdW1lbnQucmVnaXN0ZXIgPSBkb2N1bWVudC5yZWdpc3RlciB8fCBkb2N1
bWVudC53ZWJraXRSZWdpc3RlcjsKLXByb3RvID0gT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5w
cm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogZnVuY3Rpb24oKSB7IHdpbmRvdy5j
YWxsYmFja3NDYWxsZWQgPSB0cnVlOyB9IH0gfSk7Ci1kb2N1bWVudC5yZWdpc3RlcigieC1mb28i
LCB7IHByb3RvdHlwZTogcHJvdG8gfSk7Ci08L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHgt
Zm9vPjwveC1mb28+Ci08c2NyaXB0Pgotc2hvdWxkQmVUcnVlKCJ3aW5kb3cuY2FsbGJhY2tzQ2Fs
bGVkIik7Ci08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFz
dGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LXBhc3RlLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQp
CkBAIC0xLDExICswLDAgQEAKLVRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBj
YWxsYmFja3Mgb2YgZWRpdGluZy1vcmlnaW5hdGVkIGVsZW1lbnRzIGFyZSB2aXNpYmxlIGluIGZv
bGxvd2luZyBzY3JpcHQgYmxvY2suCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi1Q
QVNTIHdpbmRvdy5jYWxsYmFja3NDYWxsZWQgaXMgWydYLUZPTycsICdESVYnXQotUEFTUyB3aW5k
b3cuY2FsbGJhY2tzQ2FsbGVkIGlzIFsnWC1GT08nLCAnRElWJywgJ1gtRk9PJywgJ0RJViddCi1Q
QVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpJbmRleDog
TGF5b3V0VGVzdHMvZmFzdC9kb20vY3VzdG9tL2xpZmVjeWNsZS1yZWFkeS1wYXN0ZS5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9saWZlY3ljbGUtcmVhZHkt
cGFzdGUuaHRtbAkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMvZmFzdC9kb20vY3Vz
dG9tL2xpZmVjeWNsZS1yZWFkeS1wYXN0ZS5odG1sCShub25leGlzdGVudCkKQEAgLTEsMzAgKzAs
MCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0PgotZGVzY3Jp
cHRpb24oIlRoaXMgdGVzdCBlbnN1cmVzIHRoYXQgdGhlIGxpZmVjeWNsZSBjYWxsYmFja3Mgb2Yg
ZWRpdGluZy1vcmlnaW5hdGVkIGVsZW1lbnRzIGFyZSB2aXNpYmxlIGluIGZvbGxvd2luZyBzY3Jp
cHQgYmxvY2suIikKLWRvY3VtZW50LnJlZ2lzdGVyID0gZG9jdW1lbnQucmVnaXN0ZXIgfHwgZG9j
dW1lbnQud2Via2l0UmVnaXN0ZXI7Ci13aW5kb3cuY2FsbGJhY2tzQ2FsbGVkID0gW107Ci1kb2N1
bWVudC5yZWdpc3RlcigieC1mb28iLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRWxl
bWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogZnVuY3Rpb24oKSB7IHdp
bmRvdy5jYWxsYmFja3NDYWxsZWQucHVzaCh0aGlzLnRhZ05hbWUpOyB9IH0gfSkgfSk7Ci1kb2N1
bWVudC5yZWdpc3RlcigieC1iYXIiLCB7IHByb3RvdHlwZTogT2JqZWN0LmNyZWF0ZShIVE1MRGl2
RWxlbWVudC5wcm90b3R5cGUsIHsgcmVhZHlDYWxsYmFjazogeyB2YWx1ZTogZnVuY3Rpb24oKSB7
IHdpbmRvdy5jYWxsYmFja3NDYWxsZWQucHVzaCh0aGlzLnRhZ05hbWUpOyB9IH0gfSkgfSk7Ci08
L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPGRpdiBpZD0iY29udGFpbmVyIiBjb250ZW50ZWRp
dGFibGU+Wzx4LWZvbz5Gb288L3gtZm9vPjxkaXYgaXM9J3gtYmFyJz5CYXI8L2Rpdj5dPC9kaXY+
Ci08c2NyaXB0PgotdmFyIHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKLQotc2Vs
ZWN0aW9uLnNlbGVjdEFsbENoaWxkcmVuKGNvbnRhaW5lcik7Ci1kb2N1bWVudC5leGVjQ29tbWFu
ZCgiQ29weSIpOwotCi1zaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gtRk9P
JywgJ0RJViddIik7Ci1zZWxlY3Rpb24uY29sbGFwc2VUb0VuZCgpOwotZG9jdW1lbnQuZXhlY0Nv
bW1hbmQoIlBhc3RlIik7Ci1zaG91bGRCZSgid2luZG93LmNhbGxiYWNrc0NhbGxlZCIsICJbJ1gt
Rk9PJywgJ0RJVicsICdYLUZPTycsICdESVYnXSIpOwotCi1jb250YWluZXIuc3R5bGUuZGlzcGxh
eSA9ICJub25lIjsKLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3Jlc291cmNlcy9q
cy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL3Jlc291cmNlcy9kb2N1bWVudC1yZWdpc3Rlci1mdXp6Lmpz
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL2N1c3RvbS9yZXNvdXJjZXMvZG9j
dW1lbnQtcmVnaXN0ZXItZnV6ei5qcwkocmV2aXNpb24gMjAzNzMyKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9kb20vY3VzdG9tL3Jlc291cmNlcy9kb2N1bWVudC1yZWdpc3Rlci1mdXp6LmpzCShub25l
eGlzdGVudCkKQEAgLTEsNDkgKzAsMCBAQAotCi1mdW5jdGlvbiBzZXR1cE9iamVjdEhvb2tzKGhv
b2tzKQotewotICAgIC8vIFdyYXBwZXIgZm9yIHRoZXNlIG9iamVjdCBzaG91bGQgYmUgbWF0ZXJp
YWxpemVkIGJlZm9yZSBzZXR0aW5nIGhvb2tzLgotICAgIGNvbnNvbGUubG9nOwotICAgIGRvY3Vt
ZW50LndlYmtpdFJlZ2lzdGVyCi0gICAgSFRNTFNwYW5FbGVtZW50LnByb3RvdHlwZTsKLQotICAg
IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAicHJvdG90eXBlIiwgewot
ICAgICAgICBnZXQ6IGZ1bmN0aW9uKCkgeyByZXR1cm4gaG9va3MucHJvdG90eXBlR2V0KCk7IH0s
Ci0gICAgICAgIHNldDogZnVuY3Rpb24odmFsdWUpIHsgcmV0dXJuIGhvb2tzLnByb3RvdHlwZVNl
dCh2YWx1ZSk7IH0KLSAgICB9KTsKLQotICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3Qu
cHJvdG90eXBlLCAiY29uc3RydWN0b3IiLCB7Ci0gICAgICAgIGdldDogZnVuY3Rpb24oKSB7IHJl
dHVybiBob29rcy5jb25zdHJ1Y3RvckdldCgpOyB9LAotICAgICAgICBzZXQ6IGZ1bmN0aW9uKHZh
bHVlKSB7IHJldHVybiBob29rcy5jb25zdHJ1Y3RvclNldCh2YWx1ZSk7IH0KLSAgICB9KTsKLQot
ICAgIHJldHVybiBob29rczsKLX0KLQotZnVuY3Rpb24gZXhlcmNpc2VEb2N1bWVudFJlZ2lzdGVy
KCkKLXsKLSAgICB2YXIgbXlDb25zdHJ1Y3RvciA9IG51bGw7Ci0gICAgdmFyIG15UHJvdG90eXBl
ID0gT2JqZWN0LmNyZWF0ZShIVE1MRWxlbWVudC5wcm90b3R5cGUpOwotICAgIHRyeSB7Ci0gICAg
ICAgIG15Q29uc3RydWN0b3IgPSBkb2N1bWVudC53ZWJraXRSZWdpc3RlcigieC1kby1ub3RoaW5n
IiwgeyBwcm90b3R5cGU6IG15UHJvdG90eXBlIH0pOwotICAgIH0gY2F0Y2ggKGUpIHsgfQotCi0g
ICAgdHJ5IHsKLSAgICAgICAgaWYgKCFteUNvbnN0cnVjdG9yKSB7Ci0gICAgICAgICAgICBkZWJ1
ZygiQ29uc3RydWN0b3Igb2JqZWN0IGlzbid0IGNyZWF0ZWQuIik7Ci0gICAgICAgICAgICByZXR1
cm47Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAobXlDb25zdHJ1Y3Rvci5wcm90b3R5cGUgIT0g
bXlQcm90b3R5cGUpIHsKLSAgICAgICAgICAgIGNvbnNvbGUubG9nKCJGQUlMOiBiYWQgcHJvdG90
eXBlIik7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICB9Ci0KLSAgICAgICAgdmFyIGVs
ZW1lbnQgPSBuZXcgbXlDb25zdHJ1Y3RvcigpOwotICAgICAgICBpZiAoIWVsZW1lbnQpCi0gICAg
ICAgICAgICByZXR1cm47Ci0gICAgICAgIGlmIChlbGVtZW50LmNvbnN0cnVjdG9yICE9IG15Q29u
c3RydWN0b3IpIHsKLSAgICAgICAgICAgIGNvbnNvbGUubG9nKCJGQUlMOiBiYWQgY29uc3RydWN0
b3IiKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgIH0KLSAgICB9IGNhdGNoIChlKSB7
IGNvbnNvbGUubG9nKGUpOyB9Ci19CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20v
cmVzb3VyY2VzL2RvY3VtZW50LXJlZ2lzdGVyLWZ1enouanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9kb20vY3VzdG9tL3Jlc291cmNlcy9kb2N1bWVudC1yZWdpc3Rlci1mdXp6Lmpz
CShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9jdXN0b20vcmVzb3Vy
Y2VzL2RvY3VtZW50LXJlZ2lzdGVyLWZ1enouanMJKG5vbmV4aXN0ZW50KQpAQCAtMSw0OSArMCww
IEBACi0KLWZ1bmN0aW9uIHNldHVwT2JqZWN0SG9va3MoaG9va3MpCi17Ci0gICAgLy8gV3JhcHBl
ciBmb3IgdGhlc2Ugb2JqZWN0IHNob3VsZCBiZSBtYXRlcmlhbGl6ZWQgYmVmb3JlIHNldHRpbmcg
aG9va3MuCi0gICAgY29uc29sZS5sb2c7Ci0gICAgZG9jdW1lbnQud2Via2l0UmVnaXN0ZXIKLSAg
ICBIVE1MU3BhbkVsZW1lbnQucHJvdG90eXBlOwotCi0gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5
KE9iamVjdC5wcm90b3R5cGUsICJwcm90b3R5cGUiLCB7Ci0gICAgICAgIGdldDogZnVuY3Rpb24o
KSB7IHJldHVybiBob29rcy5wcm90b3R5cGVHZXQoKTsgfSwKLSAgICAgICAgc2V0OiBmdW5jdGlv
bih2YWx1ZSkgeyByZXR1cm4gaG9va3MucHJvdG90eXBlU2V0KHZhbHVlKTsgfQotICAgIH0pOwot
Ci0gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KE9iamVjdC5wcm90b3R5cGUsICJjb25zdHJ1Y3Rv
ciIsIHsKLSAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJuIGhvb2tzLmNvbnN0cnVjdG9y
R2V0KCk7IH0sCi0gICAgICAgIHNldDogZnVuY3Rpb24odmFsdWUpIHsgcmV0dXJuIGhvb2tzLmNv
bnN0cnVjdG9yU2V0KHZhbHVlKTsgfQotICAgIH0pOwotCi0gICAgcmV0dXJuIGhvb2tzOwotfQot
Ci1mdW5jdGlvbiBleGVyY2lzZURvY3VtZW50UmVnaXN0ZXIoKQotewotICAgIHZhciBteUNvbnN0
cnVjdG9yID0gbnVsbDsKLSAgICB2YXIgbXlQcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEhUTUxF
bGVtZW50LnByb3RvdHlwZSk7Ci0gICAgdHJ5IHsKLSAgICAgICAgbXlDb25zdHJ1Y3RvciA9IGRv
Y3VtZW50LndlYmtpdFJlZ2lzdGVyKCJ4LWRvLW5vdGhpbmciLCB7IHByb3RvdHlwZTogbXlQcm90
b3R5cGUgfSk7Ci0gICAgfSBjYXRjaCAoZSkgeyB9Ci0KLSAgICB0cnkgewotICAgICAgICBpZiAo
IW15Q29uc3RydWN0b3IpIHsKLSAgICAgICAgICAgIGRlYnVnKCJDb25zdHJ1Y3RvciBvYmplY3Qg
aXNuJ3QgY3JlYXRlZC4iKTsKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQotCi0gICAg
ICAgIGlmIChteUNvbnN0cnVjdG9yLnByb3RvdHlwZSAhPSBteVByb3RvdHlwZSkgewotICAgICAg
ICAgICAgY29uc29sZS5sb2coIkZBSUw6IGJhZCBwcm90b3R5cGUiKTsKLSAgICAgICAgICAgIHJl
dHVybjsKLSAgICAgICAgIH0KLQotICAgICAgICB2YXIgZWxlbWVudCA9IG5ldyBteUNvbnN0cnVj
dG9yKCk7Ci0gICAgICAgIGlmICghZWxlbWVudCkKLSAgICAgICAgICAgIHJldHVybjsKLSAgICAg
ICAgaWYgKGVsZW1lbnQuY29uc3RydWN0b3IgIT0gbXlDb25zdHJ1Y3RvcikgewotICAgICAgICAg
ICAgY29uc29sZS5sb2coIkZBSUw6IGJhZCBjb25zdHJ1Y3RvciIpOwotICAgICAgICAgICAgcmV0
dXJuOwotICAgICAgICAgfQotICAgIH0gY2F0Y2ggKGUpIHsgY29uc29sZS5sb2coZSk7IH0KLX0K
SW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCShyZXZpc2lv
biAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucwko
d29ya2luZyBjb3B5KQpAQCAtMTc2Miw5ICsxNzYyLDYgQEAgd2Via2l0Lm9yZy9iLzgzODY5IG1l
ZGlhL3ZpZGVvLW5vLWF1ZGlvLgogCiB3ZWJraXQub3JnL2IvMTA5OTUwIGZhc3QvZG9tL1dpbmRv
dy93ZWJraXRDb252ZXJ0UG9pbnQuaHRtbCBbIEZhaWx1cmUgXQogCi0jIENVU1RPTV9FTEVNRU5U
UyBpcyBub3QgZW5hYmxlZC4KLXdlYmtpdC5vcmcvYi8xMTA5NTggZmFzdC9kb20vY3VzdG9tIFsg
U2tpcCBdCi0KICMgTmV3IHRlc3QKIHdlYmtpdC5vcmcvYi8xMTA2NTQgY3NzMy9mbGV4Ym94L2J1
dHRvbi5odG1sIFsgRmFpbHVyZSBdCiAKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9U
ZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9U
ZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9ndGsvVGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtMzkxLDkgKzM5MSw2IEBA
IHdlYmtpdC5vcmcvYi8xMzE1NDYgbWVkaWEvdHJhY2svdHJhY2staW4KIEJ1ZyhHVEspIGh0dHAv
dGVzdHMvbWVkaWEvdHJhY2staW4tYmFuZC1obHMtbWV0YWRhdGEuaHRtbCBbIFNraXAgXQogQnVn
KEdUSykgbWVkaWEvdHJhY2svdHJhY2stZGF0YWN1ZS12YWx1ZS5odG1sIFsgU2tpcCBdCiAKLSMg
UmVxdWlyZSBFTkFCTEUoQ1VTVE9NX0VMRU1FTlRTKSBzdXBwb3J0Ci13ZWJraXQub3JnL2IvMTEw
NzM1IGZhc3QvZG9tL2N1c3RvbSBbIFNraXAgXQotCiAjIFNuYXBzaG90dGVkIHBsdWdpbnMgbm90
IGVuYWJsZWQKIHdlYmtpdC5vcmcvYi85ODY5NiBwbHVnaW5zL3NuYXBzaG90dGluZyBbIFNraXAg
XQogCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtc2ltdWxhdG9yL1Rlc3RFeHBlY3Rh
dGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXNpbXVsYXRvci9U
ZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9pb3Mtc2ltdWxhdG9yL1Rlc3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTE1MzYs
MTcgKzE1MzYsNiBAQCBmYXN0L2RvbS9hdHRyX2RlYWRfZG9jLmh0bWwgWyBGYWlsdXJlIF0KIGZh
c3QvZG9tL2NsaWVudC13aWR0aC1oZWlnaHQtcXVpcmtzLmh0bWwgWyBGYWlsdXJlIF0KIGZhc3Qv
ZG9tL2NsaWVudC13aWR0aC1oZWlnaHQuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9kb20vY29tbWVu
dC1ub3QtZG9jdW1lbnRFbGVtZW50Lmh0bWwgWyBGYWlsdXJlIF0KLWZhc3QvZG9tL2N1c3RvbS9k
b2N1bWVudC1yZWdpc3Rlci1iYXNpYy5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2RvbS9jdXN0b20v
ZG9jdW1lbnQtcmVnaXN0ZXItbmFtZXNwYWNlLmh0bWwgWyBGYWlsdXJlIF0KLWZhc3QvZG9tL2N1
c3RvbS9kb2N1bWVudC1yZWdpc3Rlci1yZWVudHJhbnQtbnVsbC1jb25zdHJ1Y3Rvci5odG1sIFsg
RmFpbHVyZSBdCi1mYXN0L2RvbS9jdXN0b20vZG9jdW1lbnQtcmVnaXN0ZXItcmVlbnRyYW50LXJl
dHVybmluZy1mYWtlLmh0bWwgWyBGYWlsdXJlIF0KLWZhc3QvZG9tL2N1c3RvbS9kb2N1bWVudC1y
ZWdpc3Rlci10eXBlLWV4dGVuc2lvbnMuaHRtbCBbIEZhaWx1cmUgXQotZmFzdC9kb20vY3VzdG9t
L2xpZmVjeWNsZS1yZWFkeS1jcmVhdGVFbGVtZW50LXJlY3Vyc2lvbi5odG1sIFsgRmFpbHVyZSBd
Ci1mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0ZUVsZW1lbnQtcmVlbnRyYW5j
eS5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5LWNyZWF0
aW9uLWFwaS5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJlYWR5
LWlubmVySFRNTC5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2RvbS9jdXN0b20vbGlmZWN5Y2xlLXJl
YWR5LXBhcnNlci1vbmx5Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KLWZhc3QvZG9tL2N1c3Rv
bS9saWZlY3ljbGUtcmVhZHktcGFyc2VyLXNjcmlwdC5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2Rv
bS9ob3Jpem9udGFsLXNjcm9sbGJhci1pbi1ydGwuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9kb20v
aG9yaXpvbnRhbC1zY3JvbGxiYXItd2hlbi1kaXItY2hhbmdlLmh0bWwgWyBGYWlsdXJlIF0KIGZh
c3QvZG9tL2pzRGV2aWNlUGl4ZWxSYXRpby5odG1sIFsgRmFpbHVyZSBdCkBAIC0yNjQ4LDcgKzI2
MzcsNiBAQCBlZGl0aW5nL3N0eWxlL2FwcGx5LXRocm91Z2gtZW5kLW9mLWRvY3VtCiBlZGl0aW5n
L3N0eWxlL2ZvbnQtZmFtaWx5LXdpdGgtc3BhY2UuaHRtbCBbIFNraXAgXQogZWRpdGluZy9zdHls
ZS9ub24taW5oZXJpdGFibGUtc3R5bGVzLmh0bWwgWyBTa2lwIF0KIGVkaXRpbmcvdW5kby91bmRv
LXBhc3RlLXdoZW4tY2FyZXQtaXMtbm90LWluLXJhbmdlLmh0bWwgWyBTa2lwIF0KLWZhc3QvZG9t
L2N1c3RvbS9saWZlY3ljbGUtcmVhZHktcGFzdGUuaHRtbCBbIFNraXAgXQogaHR0cC90ZXN0cy9t
aXNjL2NvcHktcmVzb2x2ZXMtdXJscy5odG1sIFsgU2tpcCBdCiBlZGl0aW5nL2luc2VydGluZy9p
bnNlcnQtMzkwNzQyMi1maXguaHRtbCBbIFNraXAgXQogZmFzdC9mb3Jtcy90ZXh0YXJlYS1wYXN0
ZS1uZXdsaW5lLmh0bWwgWyBTa2lwIF0KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9U
ZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9U
ZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAyMDM3MzIpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvVGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtNTEzLDkgKzUxMyw2IEBA
IHBsdWdpbnMvbnBydW50aW1lL2ludm9rZS1mYWlsdXJlLmh0bWwKIAogd2Via2l0Lm9yZy9iLzkz
NTg5IHN2Zy9kb20vU1ZHU2NyaXB0RWxlbWVudC9zY3JpcHQtY2hhbmdlLWV4dGVybmFsUmVzb3Vy
Y2VzUmVxdWlyZWQtd2hpbGUtbG9hZGluZy5zdmcgWyBQYXNzIFRpbWVvdXQgXQogCi0jIEVOQUJM
RShDVVNUT01fRUxFTUVOVFMpIGlzIGRpc2FibGVkLgotZmFzdC9kb20vY3VzdG9tCi0KICMgQ1NT
IGltYWdlLXJlc29sdXRpb24gaXMgbm90IHlldCBlbmFibGVkLgogd2Via2l0Lm9yZy9iLzg1MjYy
IGZhc3QvY3NzL2ltYWdlLXJlc29sdXRpb24KIApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0v
d2luL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlzaW9uIDIwMzczMikKKysrIExheW91dFRlc3RzL3Bs
YXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC01NzcsOSArNTc3
LDYgQEAgd2Via2l0Lm9yZy9iLzE0MDUxOCBbIERlYnVnIF0gZmFzdC9ldmVudAogd2Via2l0Lm9y
Zy9iLzE0MDUxOCBbIFJlbGVhc2UgXSBmYXN0L2V2ZW50cy9kcmFnLWFuZC1kcm9wLWF1dG9zY3Jv
bGwuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9ldmVudHMvY2xlYXItZHJhZy1zdGF0ZS5odG1sIFsg
RmFpbHVyZSBdCiAKLSMgRGlzYWJsZSBkb2N1bWVudC5yZWdpc3RlciB0ZXN0cywgRU5BQkxFX0NV
U1RPTV9FTEVNRU5UIGRpc2FibGVkCi1mYXN0L2RvbS9jdXN0b20vIFsgU2tpcCBdCi0KICMgVE9E
TyBVc2VyIFRpbWluZyBpcyBub3QgZW5hYmxlZCB5ZXQuIHNvIHNraXAgaXQuCiB3ZWJraXQub3Jn
L2IvODQ4OTMgaHR0cC90ZXN0cy93M2Mvd2VicGVyZi9zdWJtaXNzaW9uL0ludGVsL3VzZXItdGlt
aW5nIFsgU2tpcCBdCiAK
</data>
<flag name="review"
          id="308257"
          type_id="1"
          status="+"
          setter="cdumez"
    />
          </attachment>
      

    </bug>

</bugzilla>