<?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>124388</bug_id>
          
          <creation_ts>2013-11-14 17:22:37 -0800</creation_ts>
          <short_desc>Update WebCrypto tests</short_desc>
          <delta_ts>2013-11-14 18:48:27 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>122679</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>andersca</cc>
    
    <cc>commit-queue</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>950910</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-11-14 17:22:37 -0800</bug_when>
    <thetext>Update common.js to a newer version from Blink, because it&apos;s nicer, and lets run their tests locally for comparison.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>950911</commentid>
    <comment_count>1</comment_count>
      <attachid>217000</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-11-14 17:29:27 -0800</bug_when>
    <thetext>Created attachment 217000
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>950929</commentid>
    <comment_count>2</comment_count>
      <attachid>217000</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-14 18:48:25 -0800</bug_when>
    <thetext>Comment on attachment 217000
proposed patch

Clearing flags on attachment: 217000

Committed r159327: &lt;http://trac.webkit.org/changeset/159327&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>950930</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-14 18:48:27 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217000</attachid>
            <date>2013-11-14 17:29:27 -0800</date>
            <delta_ts>2013-11-14 18:48:25 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>UpdateTests.txt</filename>
            <type>text/plain</type>
            <size>93533</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE1OTMyMykKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDY1IEBACisyMDEzLTExLTE0ICBBbGV4ZXkgUHJvc2t1cnlh
a292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFVwZGF0ZSBXZWJDcnlwdG8gdGVzdHMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDM4OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZWQgdGVz
dHMgZm9yIG5ld2VyIGNvbW1vbi5qcy4gQ2hhbmdlZCBzb21lIHRlc3RzIGZyb20ganVzdCBkdW1w
aW5nIHJlc3VsdHMKKyAgICAgICAgdG8gY29tcGFyaW5nIHRoZW0gdG8ga25vd24gZXhwZWN0ZWQg
b25lcy4gRml4ZWQgYSBzeW50YXggZXJyb3IgaW4KKyAgICAgICAgYWVzLWNiYy1pbnZhbGlkLWxl
bmd0aC5odG1sLCBzbyBpdCBub3cgYWN0dWFsbHkgcnVucy4KKworICAgICAgICAqIGNyeXB0by9z
dWJ0bGUvcmVzb3VyY2VzL2NvbW1vbi5qczogVXBkYXRlIHRvIGEgbmV3IHZlcnNpb24gZnJvbSBC
bGluaywgYmVjYXVzZQorICAgICAgICBpdCdzIG11Y2ggbmljZXIgdGhhbiB0aGUgb2xkIG9uZSwg
YW5kIGl0J3MgZ29vZCB0byBiZSBjb21wYXRpYmxlIGF0IHRlc3QgbGV2ZWwuCisgICAgICAgIE1v
dmVkIGNyeXB0by5zdWJ0bGUgZGVmaW5pdGlvbiBmcm9tIHdlYmtpdFN1YnRsZSBoZXJlIHRvIGF2
b2lkIHJlcGVhdGluZyBpdCBpbiBhbGwKKyAgICAgICAgdGVzdHMuIEFkZGVkIGEgcXVpY2sgYW5k
IGRpcnR5IFByb21pc2UuYWxsIGltcGxlbWVudGF0aW9uLgorCisgICAgICAgICogY3J5cHRvL3N1
YnRsZS9hZXMtY2JjLTE5Mi1lbmNyeXB0LWRlY3J5cHQtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IGNyeXB0by9zdWJ0bGUvYWVzLWNiYy0xOTItZW5jcnlwdC1kZWNyeXB0Lmh0bWw6CisgICAgICAg
ICogY3J5cHRvL3N1YnRsZS9hZXMtY2JjLTI1Ni1lbmNyeXB0LWRlY3J5cHQtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUvYWVzLWNiYy0yNTYtZW5jcnlwdC1kZWNyeXB0Lmh0
bWw6CisgICAgICAgICogY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVjcnlwdC1leHBl
Y3RlZC50eHQ6CisgICAgICAgICogY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVjcnlw
dC13aXRoLXBhZGRpbmctZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUvYWVz
LWNiYy1lbmNyeXB0LWRlY3J5cHQtd2l0aC1wYWRkaW5nLmh0bWw6CisgICAgICAgICogY3J5cHRv
L3N1YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVjcnlwdC5odG1sOgorICAgICAgICAqIGNyeXB0by9z
dWJ0bGUvYWVzLWNiYy1nZW5lcmF0ZS1rZXkuaHRtbDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxl
L2Flcy1jYmMtaW1wb3J0LWp3ay1leHBlY3RlZC50eHQ6CisgICAgICAgICogY3J5cHRvL3N1YnRs
ZS9hZXMtY2JjLWltcG9ydC1qd2suaHRtbDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL2Flcy1j
YmMtaW52YWxpZC1sZW5ndGgtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUv
YWVzLWNiYy1pbnZhbGlkLWxlbmd0aC5odG1sOgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUvYWVz
LWNiYy13cm9uZy1rZXktY2xhc3MuaHRtbDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL2Flcy1l
eHBvcnQta2V5LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL2Flcy1leHBv
cnQta2V5Lmh0bWw6CisgICAgICAgICogY3J5cHRvL3N1YnRsZS9hcmd1bWVudC1jb252ZXJzaW9u
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL2FyZ3VtZW50LWNvbnZlcnNp
b24uaHRtbDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL2htYWMtZXhwb3J0LWtleS1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogY3J5cHRvL3N1YnRsZS9obWFjLWV4cG9ydC1rZXkuaHRtbDoKKyAg
ICAgICAgKiBjcnlwdG8vc3VidGxlL2htYWMtZ2VuZXJhdGUta2V5Lmh0bWw6CisgICAgICAgICog
Y3J5cHRvL3N1YnRsZS9obWFjLWltcG9ydC1qd2stZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGNy
eXB0by9zdWJ0bGUvaG1hYy1pbXBvcnQtandrLmh0bWw6CisgICAgICAgICogY3J5cHRvL3N1YnRs
ZS9obWFjLXNpZ24tdmVyaWZ5LWVtcHR5LWtleS1leHBlY3RlZC50eHQ6CisgICAgICAgICogY3J5
cHRvL3N1YnRsZS9obWFjLXNpZ24tdmVyaWZ5LWVtcHR5LWtleS5odG1sOgorICAgICAgICAqIGNy
eXB0by9zdWJ0bGUvaG1hYy1zaWduLXZlcmlmeS1leHBlY3RlZC50eHQ6CisgICAgICAgICogY3J5
cHRvL3N1YnRsZS9obWFjLXNpZ24tdmVyaWZ5Lmh0bWw6CisgICAgICAgICogY3J5cHRvL3N1YnRs
ZS9pbXBvcnQtandrLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL2ltcG9y
dC1qd2suaHRtbDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWdl
bmVyYXRlLWtleS1leHBlY3RlZC50eHQ6CisgICAgICAgICogY3J5cHRvL3N1YnRsZS9yc2Fzc2Et
cGtjczEtdjFfNS1nZW5lcmF0ZS1rZXkuaHRtbDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3Jz
YXNzYS1wa2NzMS12MV81LWltcG9ydC1qd2stZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGNyeXB0
by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtaW1wb3J0LWp3ay5odG1sOgorICAgICAgICAqIGNy
eXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtc2lnbi12ZXJpZnktZXhwZWN0ZWQudHh0Ogor
ICAgICAgICAqIGNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtc2lnbi12ZXJpZnkuaHRt
bDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3NoYS0xLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBjcnlwdG8vc3VidGxlL3NoYS0xLmh0bWw6CisgICAgICAgICogY3J5cHRvL3N1YnRsZS9zaGEt
MjI0LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3NoYS0yMjQuaHRtbDoK
KyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3NoYS0yNTYtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IGNyeXB0by9zdWJ0bGUvc2hhLTI1Ni5odG1sOgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUvc2hh
LTM4NC1leHBlY3RlZC50eHQ6CisgICAgICAgICogY3J5cHRvL3N1YnRsZS9zaGEtMzg0Lmh0bWw6
CisgICAgICAgICogY3J5cHRvL3N1YnRsZS9zaGEtNTEyLWV4cGVjdGVkLnR4dDoKKyAgICAgICAg
KiBjcnlwdG8vc3VidGxlL3NoYS01MTIuaHRtbDoKKwogMjAxMy0xMS0xNCAgVmljdG9yIENvc3Rh
biAgPGNvc3RhbkBnbWFpbC5jb20+CiAKICAgICAgICAgQ2xlYW4gdXAgc2VxdWVuY2UgaGFuZGxp
bmcgaW4gQmxvYiBjb25zdHJ1Y3RvcgpJbmRleDogTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9h
ZXMtY2JjLTE5Mi1lbmNyeXB0LWRlY3J5cHQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy0xOTItZW5jcnlwdC1kZWNyeXB0LWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9h
ZXMtY2JjLTE5Mi1lbmNyeXB0LWRlY3J5cHQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBA
IC0xMCw3ICsxMCw3IEBAIFBBU1Mga2V5LmFsZ29yaXRobS5uYW1lIGlzICdhZXMtY2JjJwogUEFT
UyBrZXkuYWxnb3JpdGhtLmxlbmd0aCBpcyAxOTIKIFBBU1Mga2V5LnVzYWdlcyBpcyBbJ2VuY3J5
cHQnLCAnZGVjcnlwdCddCiBVc2luZyB0aGUga2V5IHRvIGVuY3J5cHQgcGxhaW50ZXh0Li4uCi1Q
QVNTIGJ5dGVBcnJheVRvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGVuY3J5cHRpb25SZXN1bHQp
KSBpcyAnWzRmIDAyIDFkIGIyIDQzIGJjIDYzIDNkIDcxIDc4IDE4IDNhIDlmIGEwIDcxIGU4IGI0
IGQ5IGFkIGE5IGFkIDdkIGVkIGY0IGU1IGU3IDM4IDc2IDNmIDY5IDE0IDVhIDU3IDFiIDI0IDIw
IDEyIGZiIDdhIGUwIDdmIGE5IGJhIGFjIDNkIGYxIDAyIGUwIDA4IGIwIGUyIDc5IDg4IDU5IDg4
IDgxIGQ5IDIwIGE5IGU2IDRmIDU2IDE1IGNkIDYxIDJjIGNkIDc5IDIyIDRiIDM1IDA5IDM1IGQ0
IDVkIGQ2IGE5IDhmIDgxIDc2XScKK1BBU1MgYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJh
eShlbmNyeXB0aW9uUmVzdWx0KSkgaXMgJzRmMDIxZGIyNDNiYzYzM2Q3MTc4MTgzYTlmYTA3MWU4
YjRkOWFkYTlhZDdkZWRmNGU1ZTczODc2M2Y2OTE0NWE1NzFiMjQyMDEyZmI3YWUwN2ZhOWJhYWMz
ZGYxMDJlMDA4YjBlMjc5ODg1OTg4ODFkOTIwYTllNjRmNTYxNWNkNjEyY2NkNzkyMjRiMzUwOTM1
ZDQ1ZGQ2YTk4ZjgxNzYnCiBEZWNyeXB0aW5nIGl0IGJhY2suLi4KIFBBU1MgbmV3IFVpbnQ4QXJy
YXkoZGVjcnlwdGlvblJlc3VsdCkgaXMgcGxhaW50ZXh0CiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2Flcy1jYmMtMTkyLWVu
Y3J5cHQtZGVjcnlwdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NyeXB0by9zdWJ0
bGUvYWVzLWNiYy0xOTItZW5jcnlwdC1kZWNyeXB0Lmh0bWwJKHJldmlzaW9uIDE1OTI5NSkKKysr
IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy0xOTItZW5jcnlwdC1kZWNyeXB0Lmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTEzLDEyICsxMyw5IEBAIGRlc2NyaXB0aW9uKCJUZXN0IEFF
Uy1DQkMgZW5jcnlwdCBhbmQgZGUKIAoganNUZXN0SXNBc3luYyA9IHRydWU7CiAKLWlmICghd2lu
ZG93LnN1YnRsZSkKLSAgICB3aW5kb3cuY3J5cHRvLnN1YnRsZSA9IHdpbmRvdy5jcnlwdG8ud2Vi
a2l0U3VidGxlOwotCi12YXIga2V5RGF0YSA9IGhleFRvQXJyYXlCdWZmZXIoIjhlNzNiMGY3ZGEw
ZTY0NTJjODEwZjMyYjgwOTA3OWU1NjJmOGVhZDI1MjJjNmI3YiIpOwotdmFyIGl2ID0gaGV4VG9B
cnJheUJ1ZmZlcigiMDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBlMGYiKTsKLXZhciBwbGFp
bnRleHQgPSBoZXhUb0FycmF5QnVmZmVyKCI2YmMxYmVlMjJlNDA5Zjk2ZTkzZDdlMTE3MzkzMTcy
YWFlMmQ4YTU3MWUwM2FjOWM5ZWI3NmZhYzQ1YWY4ZTUxMzBjODFjNDZhMzVjZTQxMWU1ZmJjMTE5
MWEwYTUyZWZmNjlmMjQ0NWRmNGY5YjE3YWQyYjQxN2JlNjZjMzcxMCIpOwordmFyIGtleURhdGEg
PSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoIjhlNzNiMGY3ZGEwZTY0NTJjODEwZjMyYjgwOTA3OWU1
NjJmOGVhZDI1MjJjNmI3YiIpOwordmFyIGl2ID0gaGV4U3RyaW5nVG9VaW50OEFycmF5KCIwMDAx
MDIwMzA0MDUwNjA3MDgwOTBhMGIwYzBkMGUwZiIpOwordmFyIHBsYWludGV4dCA9IGhleFN0cmlu
Z1RvVWludDhBcnJheSgiNmJjMWJlZTIyZTQwOWY5NmU5M2Q3ZTExNzM5MzE3MmFhZTJkOGE1NzFl
MDNhYzljOWViNzZmYWM0NWFmOGU1MTMwYzgxYzQ2YTM1Y2U0MTFlNWZiYzExOTFhMGE1MmVmZjY5
ZjI0NDVkZjRmOWIxN2FkMmI0MTdiZTY2YzM3MTAiKTsKIHZhciBleHRyYWN0YWJsZSA9IHRydWU7
CiAKIGRlYnVnKCJJbXBvcnRpbmcgYSByYXcgQUVTIGtleSBmcm9tIHN0cmluZyBsaXRlcmFsLi4u
Iik7CkBAIC0zNCw3ICszMSw3IEBAIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJyYXciLCBrZXlE
YXRhLCAKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5lbmNyeXB0KHtuYW1lOiAiYWVzLWNiYyIs
IGl2OiBpdn0sIGtleSwgW3BsYWludGV4dF0pOwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsK
ICAgICBlbmNyeXB0aW9uUmVzdWx0ID0gcmVzdWx0OwotICAgIHNob3VsZEJlKCJieXRlQXJyYXlU
b0hleFN0cmluZyhuZXcgVWludDhBcnJheShlbmNyeXB0aW9uUmVzdWx0KSkiLCAiJ1s0ZiAwMiAx
ZCBiMiA0MyBiYyA2MyAzZCA3MSA3OCAxOCAzYSA5ZiBhMCA3MSBlOCBiNCBkOSBhZCBhOSBhZCA3
ZCBlZCBmNCBlNSBlNyAzOCA3NiAzZiA2OSAxNCA1YSA1NyAxYiAyNCAyMCAxMiBmYiA3YSBlMCA3
ZiBhOSBiYSBhYyAzZCBmMSAwMiBlMCAwOCBiMCBlMiA3OSA4OCA1OSA4OCA4MSBkOSAyMCBhOSBl
NiA0ZiA1NiAxNSBjZCA2MSAyYyBjZCA3OSAyMiA0YiAzNSAwOSAzNSBkNCA1ZCBkNiBhOSA4ZiA4
MSA3Nl0nIik7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXko
ZW5jcnlwdGlvblJlc3VsdCkpIiwgIic0ZjAyMWRiMjQzYmM2MzNkNzE3ODE4M2E5ZmEwNzFlOGI0
ZDlhZGE5YWQ3ZGVkZjRlNWU3Mzg3NjNmNjkxNDVhNTcxYjI0MjAxMmZiN2FlMDdmYTliYWFjM2Rm
MTAyZTAwOGIwZTI3OTg4NTk4ODgxZDkyMGE5ZTY0ZjU2MTVjZDYxMmNjZDc5MjI0YjM1MDkzNWQ0
NWRkNmE5OGY4MTc2JyIpOwogCiAgICAgZGVidWcoIkRlY3J5cHRpbmcgaXQgYmFjay4uLiIpOwog
ICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmRlY3J5cHQoe25hbWU6ICJhZXMtY2JjIiwgaXY6IGl2
fSwga2V5LCBbcmVzdWx0XSk7CkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2Flcy1j
YmMtMjU2LWVuY3J5cHQtZGVjcnlwdC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLTI1Ni1lbmNyeXB0LWRlY3J5cHQtZXhwZWN0ZWQu
dHh0CShyZXZpc2lvbiAxNTkyOTUpCisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2Flcy1j
YmMtMjU2LWVuY3J5cHQtZGVjcnlwdC1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTEw
LDcgKzEwLDcgQEAgUEFTUyBrZXkuYWxnb3JpdGhtLm5hbWUgaXMgJ2Flcy1jYmMnCiBQQVNTIGtl
eS5hbGdvcml0aG0ubGVuZ3RoIGlzIDI1NgogUEFTUyBrZXkudXNhZ2VzIGlzIFsnZW5jcnlwdCcs
ICdkZWNyeXB0J10KIFVzaW5nIHRoZSBrZXkgdG8gZW5jcnlwdCBwbGFpbnRleHQuLi4KLVBBU1Mg
Ynl0ZUFycmF5VG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZW5jcnlwdGlvblJlc3VsdCkpIGlz
ICdbZjUgOGMgNGMgMDQgZDYgZTUgZjEgYmEgNzcgOWUgYWIgZmIgNWYgN2IgZmIgZDYgOWMgZmMg
NGUgOTYgN2UgZGIgODAgOGQgNjcgOWYgNzcgN2IgYzYgNzAgMmMgN2QgMzkgZjIgMzMgNjkgYTkg
ZDkgYmEgY2YgYTUgMzAgZTIgNjMgMDQgMjMgMTQgNjEgYjIgZWIgMDUgZTIgYzMgOWIgZTkgZmMg
ZGEgNmMgMTkgMDcgOGMgNmEgOWQgMWIgM2YgNDYgMTcgOTYgZDYgYjAgZDYgYjIgZTAgYzIgYTcg
MmIgNGQgODAgZTYgNDRdJworUEFTUyBieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGVu
Y3J5cHRpb25SZXN1bHQpKSBpcyAnZjU4YzRjMDRkNmU1ZjFiYTc3OWVhYmZiNWY3YmZiZDY5Y2Zj
NGU5NjdlZGI4MDhkNjc5Zjc3N2JjNjcwMmM3ZDM5ZjIzMzY5YTlkOWJhY2ZhNTMwZTI2MzA0MjMx
NDYxYjJlYjA1ZTJjMzliZTlmY2RhNmMxOTA3OGM2YTlkMWIzZjQ2MTc5NmQ2YjBkNmIyZTBjMmE3
MmI0ZDgwZTY0NCcKIERlY3J5cHRpbmcgaXQgYmFjay4uLgogUEFTUyBuZXcgVWludDhBcnJheShk
ZWNyeXB0aW9uUmVzdWx0KSBpcyBwbGFpbnRleHQKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlz
IHRydWUKSW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy0yNTYtZW5jcnlw
dC1kZWNyeXB0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9h
ZXMtY2JjLTI1Ni1lbmNyeXB0LWRlY3J5cHQuaHRtbAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5
b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLTI1Ni1lbmNyeXB0LWRlY3J5cHQuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMTMsMTIgKzEzLDkgQEAgZGVzY3JpcHRpb24oIlRlc3QgQUVTLUNC
QyBlbmNyeXB0IGFuZCBkZQogCiBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKIAotaWYgKCF3aW5kb3cu
c3VidGxlKQotICAgIHdpbmRvdy5jcnlwdG8uc3VidGxlID0gd2luZG93LmNyeXB0by53ZWJraXRT
dWJ0bGU7Ci0KLXZhciBrZXlEYXRhID0gaGV4VG9BcnJheUJ1ZmZlcigiNjAzZGViMTAxNWNhNzFi
ZTJiNzNhZWYwODU3ZDc3ODExZjM1MmMwNzNiNjEwOGQ3MmQ5ODEwYTMwOTE0ZGZmNCIpOwotdmFy
IGl2ID0gaGV4VG9BcnJheUJ1ZmZlcigiMDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBlMGYi
KTsKLXZhciBwbGFpbnRleHQgPSBoZXhUb0FycmF5QnVmZmVyKCI2YmMxYmVlMjJlNDA5Zjk2ZTkz
ZDdlMTE3MzkzMTcyYWFlMmQ4YTU3MWUwM2FjOWM5ZWI3NmZhYzQ1YWY4ZTUxMzBjODFjNDZhMzVj
ZTQxMWU1ZmJjMTE5MWEwYTUyZWZmNjlmMjQ0NWRmNGY5YjE3YWQyYjQxN2JlNjZjMzcxMCIpOwor
dmFyIGtleURhdGEgPSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoIjYwM2RlYjEwMTVjYTcxYmUyYjcz
YWVmMDg1N2Q3NzgxMWYzNTJjMDczYjYxMDhkNzJkOTgxMGEzMDkxNGRmZjQiKTsKK3ZhciBpdiA9
IGhleFN0cmluZ1RvVWludDhBcnJheSgiMDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBlMGYi
KTsKK3ZhciBwbGFpbnRleHQgPSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoIjZiYzFiZWUyMmU0MDlm
OTZlOTNkN2UxMTczOTMxNzJhYWUyZDhhNTcxZTAzYWM5YzllYjc2ZmFjNDVhZjhlNTEzMGM4MWM0
NmEzNWNlNDExZTVmYmMxMTkxYTBhNTJlZmY2OWYyNDQ1ZGY0ZjliMTdhZDJiNDE3YmU2NmMzNzEw
Iik7CiB2YXIgZXh0cmFjdGFibGUgPSB0cnVlOwogCiBkZWJ1ZygiSW1wb3J0aW5nIGEgcmF3IEFF
UyBrZXkgZnJvbSBzdHJpbmcgbGl0ZXJhbC4uLiIpOwpAQCAtMzQsNyArMzEsNyBAQCBjcnlwdG8u
c3VidGxlLmltcG9ydEtleSgicmF3Iiwga2V5RGF0YSwgCiAgICAgcmV0dXJuIGNyeXB0by5zdWJ0
bGUuZW5jcnlwdCh7bmFtZTogImFlcy1jYmMiLCBpdjogaXZ9LCBrZXksIFtwbGFpbnRleHRdKTsK
IH0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7CiAgICAgZW5jcnlwdGlvblJlc3VsdCA9IHJlc3Vs
dDsKLSAgICBzaG91bGRCZSgiYnl0ZUFycmF5VG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZW5j
cnlwdGlvblJlc3VsdCkpIiwgIidbZjUgOGMgNGMgMDQgZDYgZTUgZjEgYmEgNzcgOWUgYWIgZmIg
NWYgN2IgZmIgZDYgOWMgZmMgNGUgOTYgN2UgZGIgODAgOGQgNjcgOWYgNzcgN2IgYzYgNzAgMmMg
N2QgMzkgZjIgMzMgNjkgYTkgZDkgYmEgY2YgYTUgMzAgZTIgNjMgMDQgMjMgMTQgNjEgYjIgZWIg
MDUgZTIgYzMgOWIgZTkgZmMgZGEgNmMgMTkgMDcgOGMgNmEgOWQgMWIgM2YgNDYgMTcgOTYgZDYg
YjAgZDYgYjIgZTAgYzIgYTcgMmIgNGQgODAgZTYgNDRdJyIpOworICAgIHNob3VsZEJlKCJieXRl
c1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGVuY3J5cHRpb25SZXN1bHQpKSIsICInZjU4YzRj
MDRkNmU1ZjFiYTc3OWVhYmZiNWY3YmZiZDY5Y2ZjNGU5NjdlZGI4MDhkNjc5Zjc3N2JjNjcwMmM3
ZDM5ZjIzMzY5YTlkOWJhY2ZhNTMwZTI2MzA0MjMxNDYxYjJlYjA1ZTJjMzliZTlmY2RhNmMxOTA3
OGM2YTlkMWIzZjQ2MTc5NmQ2YjBkNmIyZTBjMmE3MmI0ZDgwZTY0NCciKTsKIAogICAgIGRlYnVn
KCJEZWNyeXB0aW5nIGl0IGJhY2suLi4iKTsKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kZWNy
eXB0KHtuYW1lOiAiYWVzLWNiYyIsIGl2OiBpdn0sIGtleSwgW3Jlc3VsdF0pOwpJbmRleDogTGF5
b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVjcnlwdC1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWVuY3J5
cHQtZGVjcnlwdC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDE1OTI5NSkKKysrIExheW91dFRlc3Rz
L2NyeXB0by9zdWJ0bGUvYWVzLWNiYy1lbmNyeXB0LWRlY3J5cHQtZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMCw3ICsxMCw3IEBAIFBBU1Mga2V5LmFsZ29yaXRobS5uYW1lIGlzICdh
ZXMtY2JjJwogUEFTUyBrZXkuYWxnb3JpdGhtLmxlbmd0aCBpcyAxMjgKIFBBU1Mga2V5LnVzYWdl
cyBpcyBbJ2VuY3J5cHQnLCAnZGVjcnlwdCddCiBVc2luZyB0aGUga2V5IHRvIGVuY3J5cHQgcGxh
aW50ZXh0Li4uCi1QQVNTIGJ5dGVBcnJheVRvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGVuY3J5
cHRpb25SZXN1bHQpKSBpcyAnWzc2IDQ5IGFiIGFjIDgxIDE5IGIyIDQ2IGNlIGU5IDhlIDliIDEy
IGU5IDE5IDdkIDUwIDg2IGNiIDliIDUwIDcyIDE5IGVlIDk1IGRiIDExIDNhIDkxIDc2IDc4IGIy
IDczIGJlIGQ2IGI4IGUzIGMxIDc0IDNiIDcxIDE2IGU2IDllIDIyIDIyIDk1IDE2IDNmIGYxIGNh
IGExIDY4IDFmIGFjIDA5IDEyIDBlIGNhIDMwIDc1IDg2IGUxIGE3IDhjIGI4IDI4IDA3IDIzIDBl
IDEzIDIxIGQzIGZhIGUwIDBkIDE4IGNjIDIwIDEyXScKK1BBU1MgYnl0ZXNUb0hleFN0cmluZyhu
ZXcgVWludDhBcnJheShlbmNyeXB0aW9uUmVzdWx0KSkgaXMgJzc2NDlhYmFjODExOWIyNDZjZWU5
OGU5YjEyZTkxOTdkNTA4NmNiOWI1MDcyMTllZTk1ZGIxMTNhOTE3Njc4YjI3M2JlZDZiOGUzYzE3
NDNiNzExNmU2OWUyMjIyOTUxNjNmZjFjYWExNjgxZmFjMDkxMjBlY2EzMDc1ODZlMWE3OGNiODI4
MDcyMzBlMTMyMWQzZmFlMDBkMThjYzIwMTInCiBEZWNyeXB0aW5nIGl0IGJhY2suLi4KIFBBU1Mg
bmV3IFVpbnQ4QXJyYXkoZGVjcnlwdGlvblJlc3VsdCkgaXMgcGxhaW50ZXh0CiBUZXN0aW5nIGlu
aXRpYWxpemF0aW9uIHZlY3RvciBiaW5kaW5ncy4uLgpJbmRleDogTGF5b3V0VGVzdHMvY3J5cHRv
L3N1YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVjcnlwdC13aXRoLXBhZGRpbmctZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy1lbmNyeXB0
LWRlY3J5cHQtd2l0aC1wYWRkaW5nLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTU5Mjk1KQorKysg
TGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVjcnlwdC13aXRoLXBh
ZGRpbmctZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMCw3ICsxMCw3IEBAIFBBU1Mg
a2V5LmFsZ29yaXRobS5uYW1lIGlzICdhZXMtY2JjJwogUEFTUyBrZXkuYWxnb3JpdGhtLmxlbmd0
aCBpcyAxMjgKIFBBU1Mga2V5LnVzYWdlcyBpcyBbJ2VuY3J5cHQnLCAnZGVjcnlwdCddCiBVc2lu
ZyB0aGUga2V5IHRvIGVuY3J5cHQgcGxhaW50ZXh0Li4uCi0gICAgPSBbNjMgMDEgOTkgYzUgZjIg
MDIgY2MgNzEgNjcgYmIgODQgYzYgYzcgMmIgMzQgOWRdCitQQVNTIGJ5dGVzVG9IZXhTdHJpbmco
bmV3IFVpbnQ4QXJyYXkoY3lwaGVydGV4dCkpIGlzICc2MzAxOTljNWYyMDJjYzcxNjdiYjg0YzZj
NzJiMzQ5ZCcKIERlY3J5cHRpbmcgaXQgYmFjay4uLgogUEFTUyBuZXcgVWludDhBcnJheShkZWNy
eXB0aW9uUmVzdWx0KSBpcyBwbGFpbnRleHQKIFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRy
dWUKSW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy1lbmNyeXB0LWRlY3J5
cHQtd2l0aC1wYWRkaW5nLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1
YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVjcnlwdC13aXRoLXBhZGRpbmcuaHRtbAkocmV2aXNpb24g
MTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVj
cnlwdC13aXRoLXBhZGRpbmcuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsMTIgKzEzLDkgQEAg
ZGVzY3JpcHRpb24oIlRlc3QgQUVTLUNCQyBlbmNyeXB0IGFuZCBkZQogCiBqc1Rlc3RJc0FzeW5j
ID0gdHJ1ZTsKIAotaWYgKCF3aW5kb3cuc3VidGxlKQotICAgIHdpbmRvdy5jcnlwdG8uc3VidGxl
ID0gd2luZG93LmNyeXB0by53ZWJraXRTdWJ0bGU7Ci0KLXZhciBrZXlEYXRhID0gaGV4VG9BcnJh
eUJ1ZmZlcigiMmI3ZTE1MTYyOGFlZDJhNmFiZjcxNTg4MDljZjRmM2MiKTsKLXZhciBpdiA9IGhl
eFRvQXJyYXlCdWZmZXIoIjAwMDEwMjAzMDQwNTA2MDcwODA5MGEwYjBjMGQwZTBmIik7Ci12YXIg
cGxhaW50ZXh0ID0gYXNjaWlUb0FycmF5QnVmZmVyKCJ0ZXN0Iik7Cit2YXIga2V5RGF0YSA9IGhl
eFN0cmluZ1RvVWludDhBcnJheSgiMmI3ZTE1MTYyOGFlZDJhNmFiZjcxNTg4MDljZjRmM2MiKTsK
K3ZhciBpdiA9IGhleFN0cmluZ1RvVWludDhBcnJheSgiMDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBi
MGMwZDBlMGYiKTsKK3ZhciBwbGFpbnRleHQgPSBhc2NpaVRvVWludDhBcnJheSgidGVzdCIpOwog
dmFyIGV4dHJhY3RhYmxlID0gdHJ1ZTsKIAogZGVidWcoIkltcG9ydGluZyBhIHJhdyBBRVMga2V5
IGZyb20gc3RyaW5nIGxpdGVyYWwuLi4iKTsKQEAgLTMzLDcgKzMwLDggQEAgY3J5cHRvLnN1YnRs
ZS5pbXBvcnRLZXkoInJhdyIsIGtleURhdGEsIAogICAgIGRlYnVnKCJVc2luZyB0aGUga2V5IHRv
IGVuY3J5cHQgcGxhaW50ZXh0Li4uIik7CiAgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuZW5jcnlw
dCh7bmFtZTogImFlcy1jYmMiLCBpdjogaXZ9LCBrZXksIFtwbGFpbnRleHRdKTsKIH0pLnRoZW4o
ZnVuY3Rpb24ocmVzdWx0KSB7Ci0gICAgcHJpbnRBY2NlcHRlZFJlc3VsdChyZXN1bHQpOworICAg
IGN5cGhlcnRleHQgPSByZXN1bHQ7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3
IFVpbnQ4QXJyYXkoY3lwaGVydGV4dCkpIiwgIic2MzAxOTljNWYyMDJjYzcxNjdiYjg0YzZjNzJi
MzQ5ZCciKTsKIAogICAgIGRlYnVnKCJEZWNyeXB0aW5nIGl0IGJhY2suLi4iKTsKICAgICByZXR1
cm4gY3J5cHRvLnN1YnRsZS5kZWNyeXB0KHtuYW1lOiAiYWVzLWNiYyIsIGl2OiBpdn0sIGtleSwg
W3Jlc3VsdF0pOwpJbmRleDogTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWVuY3J5
cHQtZGVjcnlwdC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUv
YWVzLWNiYy1lbmNyeXB0LWRlY3J5cHQuaHRtbAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0
VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWVuY3J5cHQtZGVjcnlwdC5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0xMywxMiArMTMsOSBAQCBkZXNjcmlwdGlvbigiVGVzdCBBRVMtQ0JDIGVuY3J5
cHQgYW5kIGRlCiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAoIXdpbmRvdy5zdWJ0bGUp
Ci0gICAgd2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRvLndlYmtpdFN1YnRsZTsK
LQotdmFyIGtleURhdGEgPSBoZXhUb0FycmF5QnVmZmVyKCIyYjdlMTUxNjI4YWVkMmE2YWJmNzE1
ODgwOWNmNGYzYyIpOwotdmFyIGl2ID0gaGV4VG9BcnJheUJ1ZmZlcigiMDAwMTAyMDMwNDA1MDYw
NzA4MDkwYTBiMGMwZDBlMGYiKTsKLXZhciBwbGFpbnRleHQgPSBoZXhUb0FycmF5QnVmZmVyKCI2
YmMxYmVlMjJlNDA5Zjk2ZTkzZDdlMTE3MzkzMTcyYWFlMmQ4YTU3MWUwM2FjOWM5ZWI3NmZhYzQ1
YWY4ZTUxMzBjODFjNDZhMzVjZTQxMWU1ZmJjMTE5MWEwYTUyZWZmNjlmMjQ0NWRmNGY5YjE3YWQy
YjQxN2JlNjZjMzcxMCIpOwordmFyIGtleURhdGEgPSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoIjJi
N2UxNTE2MjhhZWQyYTZhYmY3MTU4ODA5Y2Y0ZjNjIik7Cit2YXIgaXYgPSBoZXhTdHJpbmdUb1Vp
bnQ4QXJyYXkoIjAwMDEwMjAzMDQwNTA2MDcwODA5MGEwYjBjMGQwZTBmIik7Cit2YXIgcGxhaW50
ZXh0ID0gaGV4U3RyaW5nVG9VaW50OEFycmF5KCI2YmMxYmVlMjJlNDA5Zjk2ZTkzZDdlMTE3Mzkz
MTcyYWFlMmQ4YTU3MWUwM2FjOWM5ZWI3NmZhYzQ1YWY4ZTUxMzBjODFjNDZhMzVjZTQxMWU1ZmJj
MTE5MWEwYTUyZWZmNjlmMjQ0NWRmNGY5YjE3YWQyYjQxN2JlNjZjMzcxMCIpOwogdmFyIGV4dHJh
Y3RhYmxlID0gdHJ1ZTsKIAogZGVidWcoIkltcG9ydGluZyBhIHJhdyBBRVMga2V5IGZyb20gc3Ry
aW5nIGxpdGVyYWwuLi4iKTsKQEAgLTM0LDcgKzMxLDcgQEAgY3J5cHRvLnN1YnRsZS5pbXBvcnRL
ZXkoInJhdyIsIGtleURhdGEsIAogICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmVuY3J5cHQoe25h
bWU6ICJhZXMtY2JjIiwgaXY6IGl2fSwga2V5LCBbcGxhaW50ZXh0XSk7CiB9KS50aGVuKGZ1bmN0
aW9uKHJlc3VsdCkgewogICAgIGVuY3J5cHRpb25SZXN1bHQgPSByZXN1bHQ7Ci0gICAgc2hvdWxk
QmUoImJ5dGVBcnJheVRvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGVuY3J5cHRpb25SZXN1bHQp
KSIsICInWzc2IDQ5IGFiIGFjIDgxIDE5IGIyIDQ2IGNlIGU5IDhlIDliIDEyIGU5IDE5IDdkIDUw
IDg2IGNiIDliIDUwIDcyIDE5IGVlIDk1IGRiIDExIDNhIDkxIDc2IDc4IGIyIDczIGJlIGQ2IGI4
IGUzIGMxIDc0IDNiIDcxIDE2IGU2IDllIDIyIDIyIDk1IDE2IDNmIGYxIGNhIGExIDY4IDFmIGFj
IDA5IDEyIDBlIGNhIDMwIDc1IDg2IGUxIGE3IDhjIGI4IDI4IDA3IDIzIDBlIDEzIDIxIGQzIGZh
IGUwIDBkIDE4IGNjIDIwIDEyXSciKTsKKyAgICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmluZyhu
ZXcgVWludDhBcnJheShlbmNyeXB0aW9uUmVzdWx0KSkiLCAiJzc2NDlhYmFjODExOWIyNDZjZWU5
OGU5YjEyZTkxOTdkNTA4NmNiOWI1MDcyMTllZTk1ZGIxMTNhOTE3Njc4YjI3M2JlZDZiOGUzYzE3
NDNiNzExNmU2OWUyMjIyOTUxNjNmZjFjYWExNjgxZmFjMDkxMjBlY2EzMDc1ODZlMWE3OGNiODI4
MDcyMzBlMTMyMWQzZmFlMDBkMThjYzIwMTInIik7CiAKICAgICBkZWJ1ZygiRGVjcnlwdGluZyBp
dCBiYWNrLi4uIik7CiAgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuZGVjcnlwdCh7bmFtZTogImFl
cy1jYmMiLCBpdjogaXZ9LCBrZXksIFtyZXN1bHRdKTsKSW5kZXg6IExheW91dFRlc3RzL2NyeXB0
by9zdWJ0bGUvYWVzLWNiYy1nZW5lcmF0ZS1rZXkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9jcnlwdG8vc3VidGxlL2Flcy1jYmMtZ2VuZXJhdGUta2V5Lmh0bWwJKHJldmlzaW9uIDE1
OTI5NSkKKysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy1nZW5lcmF0ZS1rZXku
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsOSArMTMsNiBAQCBkZXNjcmlwdGlvbigiVGVzdCBn
ZW5lcmF0aW5nIGFuIEFFUyBrZXkgCiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAoIXdp
bmRvdy5zdWJ0bGUpCi0gICAgd2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRvLndl
YmtpdFN1YnRsZTsKLQogdmFyIGV4dHJhY3RhYmxlID0gdHJ1ZTsKIAogc2hvdWxkVGhyb3coJ2Ny
eXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoImFlcy1jYmMiLCBleHRyYWN0YWJsZSwgWyJlbmNyeXB0
IiwgImRlY3J5cHQiXSknKTsKSW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNi
Yy1pbXBvcnQtandrLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jcnlw
dG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0LWp3ay1leHBlY3RlZC50eHQJKHJldmlzaW9uIDE1OTI5
NSkKKysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy1pbXBvcnQtandrLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTIsNyArMTIsNyBAQCBQQVNTIGtleS5hbGdvcml0
aG0ubGVuZ3RoIGlzIDE5MgogUEFTUyBrZXkudXNhZ2VzIGlzIFsiZW5jcnlwdCJdCiAKIFVzaW5n
IHRoZSBrZXkgdG8gZW5jcnlwdCBwbGFpbnRleHQuLi4KLVBBU1MgYnl0ZUFycmF5VG9IZXhTdHJp
bmcobmV3IFVpbnQ4QXJyYXkoZW5jcnlwdGlvblJlc3VsdCkpIGlzICdbNGYgMDIgMWQgYjIgNDMg
YmMgNjMgM2QgNzEgNzggMTggM2EgOWYgYTAgNzEgZTggYjQgZDkgYWQgYTkgYWQgN2QgZWQgZjQg
ZTUgZTcgMzggNzYgM2YgNjkgMTQgNWEgNTcgMWIgMjQgMjAgMTIgZmIgN2EgZTAgN2YgYTkgYmEg
YWMgM2QgZjEgMDIgZTAgMDggYjAgZTIgNzkgODggNTkgODggODEgZDkgMjAgYTkgZTYgNGYgNTYg
MTUgY2QgNjEgMmMgY2QgNzkgMjIgNGIgMzUgMDkgMzUgZDQgNWQgZDYgYTkgOGYgODEgNzZdJwor
UEFTUyBieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGVuY3J5cHRpb25SZXN1bHQpKSBp
cyAnNGYwMjFkYjI0M2JjNjMzZDcxNzgxODNhOWZhMDcxZThiNGQ5YWRhOWFkN2RlZGY0ZTVlNzM4
NzYzZjY5MTQ1YTU3MWIyNDIwMTJmYjdhZTA3ZmE5YmFhYzNkZjEwMmUwMDhiMGUyNzk4ODU5ODg4
MWQ5MjBhOWU2NGY1NjE1Y2Q2MTJjY2Q3OTIyNGIzNTA5MzVkNDVkZDZhOThmODE3NicKIFBBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJbmRleDogTGF5b3V0
VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWltcG9ydC1qd2suaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0LWp3ay5odG1sCShyZXZp
c2lvbiAxNTkyOTUpCisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2Flcy1jYmMtaW1wb3J0
LWp3ay5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMywxMyArMTMsMTAgQEAgZGVzY3JpcHRpb24o
IlRlc3QgaW1wb3J0aW5nIGEgSldLIGtleSBmbwogCiBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKIAot
aWYgKCF3aW5kb3cuc3VidGxlKQotICAgIHdpbmRvdy5jcnlwdG8uc3VidGxlID0gd2luZG93LmNy
eXB0by53ZWJraXRTdWJ0bGU7Ci0KIHZhciBleHRyYWN0YWJsZSA9IHRydWU7CiAKLXZhciBpdiA9
IGhleFRvQXJyYXlCdWZmZXIoIjAwMDEwMjAzMDQwNTA2MDcwODA5MGEwYjBjMGQwZTBmIik7Ci12
YXIgcGxhaW50ZXh0ID0gaGV4VG9BcnJheUJ1ZmZlcigiNmJjMWJlZTIyZTQwOWY5NmU5M2Q3ZTEx
NzM5MzE3MmFhZTJkOGE1NzFlMDNhYzljOWViNzZmYWM0NWFmOGU1MTMwYzgxYzQ2YTM1Y2U0MTFl
NWZiYzExOTFhMGE1MmVmZjY5ZjI0NDVkZjRmOWIxN2FkMmI0MTdiZTY2YzM3MTAiKTsKK3ZhciBp
diA9IGhleFN0cmluZ1RvVWludDhBcnJheSgiMDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBl
MGYiKTsKK3ZhciBwbGFpbnRleHQgPSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoIjZiYzFiZWUyMmU0
MDlmOTZlOTNkN2UxMTczOTMxNzJhYWUyZDhhNTcxZTAzYWM5YzllYjc2ZmFjNDVhZjhlNTEzMGM4
MWM0NmEzNWNlNDExZTVmYmMxMTkxYTBhNTJlZmY2OWYyNDQ1ZGY0ZjliMTdhZDJiNDE3YmU2NmMz
NzEwIik7CiAKIHZhciBqd2tLZXkgPSB7CiAgICAgImt0eSI6ICJvY3QiLApAQCAtMjksNyArMjYs
NyBAQCB2YXIgandrS2V5ID0gewogICAgICJrIjogImpuT3c5OW9PWkZMSUVQTXJnSkI1NVdMNDZ0
SlNMR3Q3IgogfTsKIAotdmFyIGp3a0tleUFzQXJyYXlCdWZmZXIgPSBhc2NpaVRvQXJyYXlCdWZm
ZXIoSlNPTi5zdHJpbmdpZnkoandrS2V5KSk7Cit2YXIgandrS2V5QXNBcnJheUJ1ZmZlciA9IGFz
Y2lpVG9VaW50OEFycmF5KEpTT04uc3RyaW5naWZ5KGp3a0tleSkpOwogCiBkZWJ1ZygiSW1wb3J0
aW5nIGEga2V5Li4uXG4iKTsKIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBqd2tLZXlB
c0FycmF5QnVmZmVyLCBudWxsLCBmYWxzZSwgWyJlbmNyeXB0Il0pLnRoZW4oZnVuY3Rpb24ocmVz
dWx0KSB7CkBAIC00NSw3ICs0Miw3IEBAIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBq
d2tLZXlBc0EKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5lbmNyeXB0KHtuYW1lOiAiYWVzLWNi
YyIsIGl2OiBpdn0sIGtleSwgW3BsYWludGV4dF0pOwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQp
IHsKICAgICBlbmNyeXB0aW9uUmVzdWx0ID0gcmVzdWx0OwotICAgIHNob3VsZEJlKCJieXRlQXJy
YXlUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShlbmNyeXB0aW9uUmVzdWx0KSkiLCAiJ1s0ZiAw
MiAxZCBiMiA0MyBiYyA2MyAzZCA3MSA3OCAxOCAzYSA5ZiBhMCA3MSBlOCBiNCBkOSBhZCBhOSBh
ZCA3ZCBlZCBmNCBlNSBlNyAzOCA3NiAzZiA2OSAxNCA1YSA1NyAxYiAyNCAyMCAxMiBmYiA3YSBl
MCA3ZiBhOSBiYSBhYyAzZCBmMSAwMiBlMCAwOCBiMCBlMiA3OSA4OCA1OSA4OCA4MSBkOSAyMCBh
OSBlNiA0ZiA1NiAxNSBjZCA2MSAyYyBjZCA3OSAyMiA0YiAzNSAwOSAzNSBkNCA1ZCBkNiBhOSA4
ZiA4MSA3Nl0nIik7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJy
YXkoZW5jcnlwdGlvblJlc3VsdCkpIiwgIic0ZjAyMWRiMjQzYmM2MzNkNzE3ODE4M2E5ZmEwNzFl
OGI0ZDlhZGE5YWQ3ZGVkZjRlNWU3Mzg3NjNmNjkxNDVhNTcxYjI0MjAxMmZiN2FlMDdmYTliYWFj
M2RmMTAyZTAwOGIwZTI3OTg4NTk4ODgxZDkyMGE5ZTY0ZjU2MTVjZDYxMmNjZDc5MjI0YjM1MDkz
NWQ0NWRkNmE5OGY4MTc2JyIpOwogICAgIGZpbmlzaEpTVGVzdCgpOwogfSk7CiA8L3NjcmlwdD4K
SW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy1pbnZhbGlkLWxlbmd0aC1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMt
Y2JjLWludmFsaWQtbGVuZ3RoLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5
b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWludmFsaWQtbGVuZ3RoLWV4cGVjdGVkLnR4
dAkod29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDE3IEBACi1DT05TT0xFIE1FU1NBR0U6IGxpbmUg
Mzg6IFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGlkZW50aWZpZXIgJ2ZpbmlzaEpTVGVzdCcuIEV4
cGVjdGVkICcpJyB0byBlbmQgYSBhcmd1bWVudCBsaXN0LgotRkFJTCBzdWNjZXNzZnVsbHlQYXJz
ZWQgc2hvdWxkIGJlIHRydWUgKG9mIHR5cGUgYm9vbGVhbikuIFdhcyB1bmRlZmluZWQgKG9mIHR5
cGUgdW5kZWZpbmVkKS4KK1Rlc3QgYW4gdW5zdXBwb3J0ZWQgQUVTIGtleSBsZW5ndGguCisKK09u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitJbXBvcnRpbmcgYSByYXcgQUVTIGtleSBmcm9t
IHN0cmluZyBsaXRlcmFsLi4uCitQQVNTIGtleS50eXBlIGlzICdzZWNyZXQnCitQQVNTIGtleS5l
eHRyYWN0YWJsZSBpcyB0cnVlCitQQVNTIGtleS5hbGdvcml0aG0ubmFtZSBpcyAnYWVzLWNiYycK
K1BBU1Mga2V5LmFsZ29yaXRobS5sZW5ndGggaXMgMTc2CitQQVNTIGtleS51c2FnZXMgaXMgWydl
bmNyeXB0JywgJ2RlY3J5cHQnXQorVXNpbmcgdGhlIGtleSB0byBlbmNyeXB0IHBsYWludGV4dC4u
LgorRmFpbGVkLCBhcyBleHBlY3RlZC4gTm90ZSB0aGF0IHRoZSBzcGVjIGRvZXNuJ3QgYXBwZWFy
IHRvIGNsZWFybHkgZGVmaW5lIHdoaWNoIHN0ZXAgc2hvdWxkIGZhaWwuCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKIApJbmRleDogTGF5b3V0VGVzdHMv
Y3J5cHRvL3N1YnRsZS9hZXMtY2JjLWludmFsaWQtbGVuZ3RoLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLWludmFsaWQtbGVuZ3RoLmh0bWwJKHJl
dmlzaW9uIDE1OTI5NSkKKysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWNiYy1pbnZh
bGlkLWxlbmd0aC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMywxMiArMTMsOSBAQCBkZXNjcmlw
dGlvbigiVGVzdCBhbiB1bnN1cHBvcnRlZCBBRVMga2V5CiAKIGpzVGVzdElzQXN5bmMgPSB0cnVl
OwogCi1pZiAoIXdpbmRvdy5zdWJ0bGUpCi0gICAgd2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5k
b3cuY3J5cHRvLndlYmtpdFN1YnRsZTsKLQotdmFyIGtleURhdGEgPSBoZXhUb0FycmF5QnVmZmVy
KCI4ZTczYjBmN2RhMGU2NDUyYzgxMGYzMmI4MDkwNzllNTYyZjhlYWQyNTIyYyIpOwotdmFyIGl2
ID0gaGV4VG9BcnJheUJ1ZmZlcigiMDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBlMGYiKTsK
LXZhciBwbGFpbnRleHQgPSBoZXhUb0FycmF5QnVmZmVyKCI2YmMxYmVlMjJlNDA5Zjk2ZTkzZDdl
MTE3MzkzMTcyYWFlMmQ4YTU3MWUwM2FjOWM5ZWI3NmZhYzQ1YWY4ZTUxMzBjODFjNDZhMzVjZTQx
MWU1ZmJjMTE5MWEwYTUyZWZmNjlmMjQ0NWRmNGY5YjE3YWQyYjQxN2JlNjZjMzcxMCIpOwordmFy
IGtleURhdGEgPSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXkoIjhlNzNiMGY3ZGEwZTY0NTJjODEwZjMy
YjgwOTA3OWU1NjJmOGVhZDI1MjJjIik7Cit2YXIgaXYgPSBoZXhTdHJpbmdUb1VpbnQ4QXJyYXko
IjAwMDEwMjAzMDQwNTA2MDcwODA5MGEwYjBjMGQwZTBmIik7Cit2YXIgcGxhaW50ZXh0ID0gaGV4
U3RyaW5nVG9VaW50OEFycmF5KCI2YmMxYmVlMjJlNDA5Zjk2ZTkzZDdlMTE3MzkzMTcyYWFlMmQ4
YTU3MWUwM2FjOWM5ZWI3NmZhYzQ1YWY4ZTUxMzBjODFjNDZhMzVjZTQxMWU1ZmJjMTE5MWEwYTUy
ZWZmNjlmMjQ0NWRmNGY5YjE3YWQyYjQxN2JlNjZjMzcxMCIpOwogdmFyIGV4dHJhY3RhYmxlID0g
dHJ1ZTsKIAogZGVidWcoIkltcG9ydGluZyBhIHJhdyBBRVMga2V5IGZyb20gc3RyaW5nIGxpdGVy
YWwuLi4iKTsKQEAgLTMzLDcgKzMwLDcgQEAgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoInJhdyIs
IGtleURhdGEsIAogICAgIGRlYnVnKCJVc2luZyB0aGUga2V5IHRvIGVuY3J5cHQgcGxhaW50ZXh0
Li4uIik7CiAgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuZW5jcnlwdCh7bmFtZTogImFlcy1jYmMi
LCBpdjogaXZ9LCBrZXksIFtwbGFpbnRleHRdKTsKIH0pLnRoZW4odW5kZWZpbmVkLCBmdW5jdGlv
bihyZXN1bHQpIHsKLSAgICBkZWJ1ZygiRmFpbGVkLCBhcyBleHBlY3RlZC4gTm90ZSB0aGF0IHRo
ZSBzcGVjIGRvZXNuJ3QgYXBwZWFyIHRvIGNsZWFybHkgZGVmaW5lIHdoaWNoIHN0ZXAgc2hvdWxk
IGZhaWwuIgorICAgIGRlYnVnKCJGYWlsZWQsIGFzIGV4cGVjdGVkLiBOb3RlIHRoYXQgdGhlIHNw
ZWMgZG9lc24ndCBhcHBlYXIgdG8gY2xlYXJseSBkZWZpbmUgd2hpY2ggc3RlcCBzaG91bGQgZmFp
bC4iKTsKIAogICAgIGZpbmlzaEpTVGVzdCgpOwogfSk7CkluZGV4OiBMYXlvdXRUZXN0cy9jcnlw
dG8vc3VidGxlL2Flcy1jYmMtd3Jvbmcta2V5LWNsYXNzLmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtY2JjLXdyb25nLWtleS1jbGFzcy5odG1sCShyZXZp
c2lvbiAxNTkyOTUpCisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2Flcy1jYmMtd3Jvbmct
a2V5LWNsYXNzLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEzLDEyICsxMyw5IEBAIGRlc2NyaXB0
aW9uKCJUZXN0IGNhbGxpbmcgQUVTLUNCQyBlbmNyeXAKIAoganNUZXN0SXNBc3luYyA9IHRydWU7
CiAKLWlmICghd2luZG93LnN1YnRsZSkKLSAgICB3aW5kb3cuY3J5cHRvLnN1YnRsZSA9IHdpbmRv
dy5jcnlwdG8ud2Via2l0U3VidGxlOwotCi12YXIgaXYgPSBoZXhUb0FycmF5QnVmZmVyKCIwMDAx
MDIwMzA0MDUwNjA3MDgwOTBhMGIwYzBkMGUwZiIpOwotdmFyIHBsYWludGV4dCA9IGhleFRvQXJy
YXlCdWZmZXIoIjZiYzFiZWUyMmU0MDlmOTZlOTNkN2UxMTczOTMxNzJhYWUyZDhhNTcxZTAzYWM5
YzllYjc2ZmFjNDVhZjhlNTEzMGM4MWM0NmEzNWNlNDExZTVmYmMxMTkxYTBhNTJlZmY2OWYyNDQ1
ZGY0ZjliMTdhZDJiNDE3YmU2NmMzNzEwIik7Ci12YXIgaG1hY0tleSA9IGFzY2lpVG9BcnJheUJ1
ZmZlcignYScpOwordmFyIGl2ID0gaGV4U3RyaW5nVG9VaW50OEFycmF5KCIwMDAxMDIwMzA0MDUw
NjA3MDgwOTBhMGIwYzBkMGUwZiIpOwordmFyIHBsYWludGV4dCA9IGhleFN0cmluZ1RvVWludDhB
cnJheSgiNmJjMWJlZTIyZTQwOWY5NmU5M2Q3ZTExNzM5MzE3MmFhZTJkOGE1NzFlMDNhYzljOWVi
NzZmYWM0NWFmOGU1MTMwYzgxYzQ2YTM1Y2U0MTFlNWZiYzExOTFhMGE1MmVmZjY5ZjI0NDVkZjRm
OWIxN2FkMmI0MTdiZTY2YzM3MTAiKTsKK3ZhciBobWFjS2V5ID0gYXNjaWlUb1VpbnQ4QXJyYXko
J2EnKTsKIHZhciBleHRyYWN0YWJsZSA9IHRydWU7CiAKIGRlYnVnKCJJbXBvcnRpbmcgYSByYXcg
SE1BQyBrZXkgZnJvbSBzdHJpbmcgbGl0ZXJhbC4uLiIpOwpJbmRleDogTGF5b3V0VGVzdHMvY3J5
cHRvL3N1YnRsZS9hZXMtZXhwb3J0LWtleS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hZXMtZXhwb3J0LWtleS1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDE1OTMxMCkKKysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWV4cG9ydC1rZXkt
ZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC01LDcgKzUsNyBAQCBPbiBzdWNjZXNzLCB5
b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIEltcG9ydGluZyBhIEpXSyBrZXkuLi4KIEV4
cG9ydGluZyB0aGUga2V5IGFzIHJhdyBkYXRhLi4uCi1QQVNTIGJ5dGVBcnJheVRvSGV4U3RyaW5n
KG5ldyBVaW50OEFycmF5KGV4cG9ydGVkRGF0YSkpIGlzICdbOGUgNzMgYjAgZjcgZGEgMGUgNjQg
NTIgYzggMTAgZjMgMmIgODAgOTAgNzkgZTUgNjIgZjggZWEgZDIgNTIgMmMgNmIgN2JdJworUEFT
UyBieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGV4cG9ydGVkRGF0YSkpIGlzICc4ZTcz
YjBmN2RhMGU2NDUyYzgxMGYzMmI4MDkwNzllNTYyZjhlYWQyNTIyYzZiN2InCiBQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKSW5kZXg6IExheW91dFRlc3Rz
L2NyeXB0by9zdWJ0bGUvYWVzLWV4cG9ydC1rZXkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9jcnlwdG8vc3VidGxlL2Flcy1leHBvcnQta2V5Lmh0bWwJKHJldmlzaW9uIDE1OTMxMCkK
KysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYWVzLWV4cG9ydC1rZXkuaHRtbAkod29ya2lu
ZyBjb3B5KQpAQCAtMTMsOSArMTMsNiBAQCBkZXNjcmlwdGlvbigiVGVzdCBleHBvcnRpbmcgYW4g
QUVTIGtleS4iCiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAoIXdpbmRvdy5zdWJ0bGUp
Ci0gICAgd2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRvLndlYmtpdFN1YnRsZTsK
LQogdmFyIGV4dHJhY3RhYmxlID0gdHJ1ZTsKIAogdmFyIGp3a0tleSA9IHsKQEAgLTIzLDcgKzIw
LDcgQEAgdmFyIGp3a0tleSA9IHsKICAgICAiayI6ICJqbk93OTlvT1pGTElFUE1yZ0pCNTVXTDQ2
dEpTTEd0NyIKIH07CiAKLXZhciBqd2tLZXlBc0FycmF5QnVmZmVyID0gYXNjaWlUb0FycmF5QnVm
ZmVyKEpTT04uc3RyaW5naWZ5KGp3a0tleSkpOwordmFyIGp3a0tleUFzQXJyYXlCdWZmZXIgPSBh
c2NpaVRvVWludDhBcnJheShKU09OLnN0cmluZ2lmeShqd2tLZXkpKTsKIAogZGVidWcoIkltcG9y
dGluZyBhIEpXSyBrZXkuLi4iKTsKIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBqd2tL
ZXlBc0FycmF5QnVmZmVyLCAiQUVTLUNCQyIsIGV4dHJhY3RhYmxlLCBbXSkudGhlbihmdW5jdGlv
bihyZXN1bHQpIHsKQEAgLTMzLDcgKzMwLDcgQEAgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3
ayIsIGp3a0tleUFzQQogICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmV4cG9ydEtleSgicmF3Iiwg
a2V5KTsKIH0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7CiAgICAgZXhwb3J0ZWREYXRhID0gcmVz
dWx0OwotICAgIHNob3VsZEJlKCJieXRlQXJyYXlUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShl
eHBvcnRlZERhdGEpKSIsICInWzhlIDczIGIwIGY3IGRhIDBlIDY0IDUyIGM4IDEwIGYzIDJiIDgw
IDkwIDc5IGU1IDYyIGY4IGVhIGQyIDUyIDJjIDZiIDdiXSciKTsKKyAgICBzaG91bGRCZSgiYnl0
ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShleHBvcnRlZERhdGEpKSIsICInOGU3M2IwZjdk
YTBlNjQ1MmM4MTBmMzJiODA5MDc5ZTU2MmY4ZWFkMjUyMmM2YjdiJyIpOwogCiAgICAgZmluaXNo
SlNUZXN0KCk7CiB9KTsKSW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYXJndW1lbnQt
Y29udmVyc2lvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRv
L3N1YnRsZS9hcmd1bWVudC1jb252ZXJzaW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTU5Mjk1
KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9hcmd1bWVudC1jb252ZXJzaW9uLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNCw3ICs0LDcgQEAgT24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQQogCiAKIFNIQTEgb2YgbmV3IFVpbnQ4QXJyYXkoW10pKQot
ICAgID0gW2RhIDM5IGEzIGVlIDVlIDZiIDRiIDBkIDMyIDU1IGJmIGVmIDk1IDYwIDE4IDkwIGFm
IGQ4IDA3IDA5XQorUEFTUyBieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkp
IGlzICdkYTM5YTNlZTVlNmI0YjBkMzI1NWJmZWY5NTYwMTg5MGFmZDgwNzA5JwogCiBQYXNzaW5n
IGFsZ29yaXRobSBuYW1lIGFzIGEgc3RyaW5nIG9iamVjdC4uLgogUEFTUyAuLi5zdWNjZWVkZWQK
SW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYXJndW1lbnQtY29udmVyc2lvbi5odG1s
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvYXJndW1lbnQtY29udmVy
c2lvbi5odG1sCShyZXZpc2lvbiAxNTkyOTUpCisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxl
L2FyZ3VtZW50LWNvbnZlcnNpb24uaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTMsMTYgKzEzLDE1
IEBAIGRlc2NyaXB0aW9uKCJUZXN0IGNyeXB0by5zdWJ0bGUgYXJndW1lbnQKIAoganNUZXN0SXNB
c3luYyA9IHRydWU7CiAKLWlmICghd2luZG93LnN1YnRsZSkKLSAgICB3aW5kb3cuY3J5cHRvLnN1
YnRsZSA9IHdpbmRvdy5jcnlwdG8ud2Via2l0U3VidGxlOwotCiBQcm9taXNlLmZ1bGZpbGwobnVs
bCkudGhlbihmdW5jdGlvbigpIHsKICAgICAvLyBUaGlzIGxvb2tzIGxpa2UgaW52YWxpZCBpbnB1
dCwgYnV0IGl0IGFjdHVhbGx5IGlzbid0IC0gVWludDhBcnJheSBpcyBhIHNlcXVlbmNlIHRvbywK
ICAgICAvLyBzbyBpdCdzIGp1c3QgYW4gZW1wdHkgc2VxdWVuY2UsIHNhbWUgYXMgcGFzc2luZyBb
XS4KICAgICBkZWJ1ZygiU0hBMSBvZiBuZXcgVWludDhBcnJheShbXSkpIik7CiAgICAgcmV0dXJu
IGNyeXB0by5zdWJ0bGUuZGlnZXN0KCdzaGEtMScsIG5ldyBVaW50OEFycmF5KFtdKSk7CiB9KS50
aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewotICAgIHByaW50QWNjZXB0ZWRSZXN1bHQocmVzdWx0KTsK
KyAgICBkaWdlc3QgPSByZXN1bHQ7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3
IFVpbnQ4QXJyYXkoZGlnZXN0KSkiLCAiJ2RhMzlhM2VlNWU2YjRiMGQzMjU1YmZlZjk1NjAxODkw
YWZkODA3MDknIik7CisKICAgICBkZWJ1ZygiXG5QYXNzaW5nIGFsZ29yaXRobSBuYW1lIGFzIGEg
c3RyaW5nIG9iamVjdC4uLiIpOwogICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmRpZ2VzdChuZXcg
U3RyaW5nKCdzaGEtMScpLCBbXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewpJbmRleDog
TGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9obWFjLWV4cG9ydC1rZXktZXhwZWN0ZWQudHh0Cj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvaG1hYy1leHBvcnQta2V5LWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMTU5MzEwKQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRs
ZS9obWFjLWV4cG9ydC1rZXktZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC01LDcgKzUs
NyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIEltcG9ydGlu
ZyBhIEpXSyBrZXkuLi4KIEV4cG9ydGluZyB0aGUga2V5IGFzIHJhdyBkYXRhLi4uCi1QQVNTIGJ5
dGVBcnJheVRvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGV4cG9ydGVkRGF0YSkpIGlzICdbNmEg
MTggZTQgOWYgZWYgZjcgZjMgYjcgZTAgOWUgYzggOWIgN2YgNmQgZWEgYjIgZjYgYTEgOGUgNDkg
ZmUgZmYgN2YgM2IgN2UgMDkgZWMgODkgYjcgZjYgZGUgYWJdJworUEFTUyBieXRlc1RvSGV4U3Ry
aW5nKG5ldyBVaW50OEFycmF5KGV4cG9ydGVkRGF0YSkpIGlzICc2YTE4ZTQ5ZmVmZjdmM2I3ZTA5
ZWM4OWI3ZjZkZWFiMmY2YTE4ZTQ5ZmVmZjdmM2I3ZTA5ZWM4OWI3ZjZkZWFiJwogUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0
cy9jcnlwdG8vc3VidGxlL2htYWMtZXhwb3J0LWtleS5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2NyeXB0by9zdWJ0bGUvaG1hYy1leHBvcnQta2V5Lmh0bWwJKHJldmlzaW9uIDE1OTMx
MCkKKysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvaG1hYy1leHBvcnQta2V5Lmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTEzLDkgKzEzLDYgQEAgZGVzY3JpcHRpb24oIlRlc3QgZXhwb3J0aW5n
IGFuIEFFUyBrZXkuIgogCiBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKIAotaWYgKCF3aW5kb3cuc3Vi
dGxlKQotICAgIHdpbmRvdy5jcnlwdG8uc3VidGxlID0gd2luZG93LmNyeXB0by53ZWJraXRTdWJ0
bGU7Ci0KIHZhciBleHRyYWN0YWJsZSA9IHRydWU7CiAKIHZhciBqd2tLZXkgPSB7CkBAIC0yMyw3
ICsyMCw3IEBAIHZhciBqd2tLZXkgPSB7CiAgICAgImsiOiAiYWhqa24tXzM4N2ZnbnNpYmYyM3Fz
dmFoamtuLV8zODdmZ25zaWJmMjNxcyIKIH07CiAKLXZhciBqd2tLZXlBc0FycmF5QnVmZmVyID0g
YXNjaWlUb0FycmF5QnVmZmVyKEpTT04uc3RyaW5naWZ5KGp3a0tleSkpOwordmFyIGp3a0tleUFz
QXJyYXlCdWZmZXIgPSBhc2NpaVRvVWludDhBcnJheShKU09OLnN0cmluZ2lmeShqd2tLZXkpKTsK
IAogZGVidWcoIkltcG9ydGluZyBhIEpXSyBrZXkuLi4iKTsKIGNyeXB0by5zdWJ0bGUuaW1wb3J0
S2V5KCJqd2siLCBqd2tLZXlBc0FycmF5QnVmZmVyLCB7IG5hbWU6ICJITUFDIiwgaGFzaDogIlNI
QS01MTIiIH0sIGV4dHJhY3RhYmxlLCBbInNpZ24iLCAidmVyaWZ5Il0pLnRoZW4oZnVuY3Rpb24o
cmVzdWx0KSB7CkBAIC0zMyw3ICszMCw3IEBAIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2si
LCBqd2tLZXlBc0EKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5leHBvcnRLZXkoInJhdyIsIGtl
eSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewogICAgIGV4cG9ydGVkRGF0YSA9IHJlc3Vs
dDsKLSAgICBzaG91bGRCZSgiYnl0ZUFycmF5VG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZXhw
b3J0ZWREYXRhKSkiLCAiJ1s2YSAxOCBlNCA5ZiBlZiBmNyBmMyBiNyBlMCA5ZSBjOCA5YiA3ZiA2
ZCBlYSBiMiBmNiBhMSA4ZSA0OSBmZSBmZiA3ZiAzYiA3ZSAwOSBlYyA4OSBiNyBmNiBkZSBhYl0n
Iik7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZXhwb3J0
ZWREYXRhKSkiLCAiJzZhMThlNDlmZWZmN2YzYjdlMDllYzg5YjdmNmRlYWIyZjZhMThlNDlmZWZm
N2YzYjdlMDllYzg5YjdmNmRlYWInIik7CiAKICAgICBmaW5pc2hKU1Rlc3QoKTsKIH0pOwpJbmRl
eDogTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9obWFjLWdlbmVyYXRlLWtleS5odG1sCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvaG1hYy1nZW5lcmF0ZS1rZXkuaHRt
bAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9obWFjLWdl
bmVyYXRlLWtleS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMyw5ICsxMyw2IEBAIGRlc2NyaXB0
aW9uKCJUZXN0IGdlbmVyYXRpbmcgYSBITUFDIGtleS4KIAoganNUZXN0SXNBc3luYyA9IHRydWU7
CiAKLWlmICghd2luZG93LnN1YnRsZSkKLSAgICB3aW5kb3cuY3J5cHRvLnN1YnRsZSA9IHdpbmRv
dy5jcnlwdG8ud2Via2l0U3VidGxlOwotCiB2YXIgZXh0cmFjdGFibGUgPSB0cnVlOwogCiBzaG91
bGRUaHJvdygnY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSgiaG1hYyIsIGV4dHJhY3RhYmxlLCBb
InNpZ24iLCAidmVyaWZ5Il0pJyk7CkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2ht
YWMtaW1wb3J0LWp3ay1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5
cHRvL3N1YnRsZS9obWFjLWltcG9ydC1qd2stZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxNTkyOTUp
CisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2htYWMtaW1wb3J0LWp3ay1leHBlY3RlZC50
eHQJKHdvcmtpbmcgY29weSkKQEAgLTEyLDcgKzEyLDcgQEAgUEFTUyBrZXkuYWxnb3JpdGhtLmxl
bmd0aCBpcyAzMgogUEFTUyBrZXkudXNhZ2VzIGlzIFsic2lnbiIsICJ2ZXJpZnkiXQogCiBVc2lu
ZyB0aGUga2V5IHRvIHNpZ24gbWVzc2FnZSAnZm9vJy4uLgotUEFTUyBieXRlQXJyYXlUb0hleFN0
cmluZyhuZXcgVWludDhBcnJheShzaWduYXR1cmUpKSBpcyAnW2UwIDM3IDM2IGZlIDA5IDg4IDky
IGIyIGEyIGRhIDc3IDgxIDI0IDMxIGY3IGMwIDE0IGQzIDJlIDJmIGQ2IDlmIDNiIGNmIGY4IDgz
IGFjIDkyIDNhIDhmIGEyIGRhXScKK1BBU1MgYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJh
eShzaWduYXR1cmUpKSBpcyAnZTAzNzM2ZmUwOTg4OTJiMmEyZGE3NzgxMjQzMWY3YzAxNGQzMmUy
ZmQ2OWYzYmNmZjg4M2FjOTIzYThmYTJkYScKIAogVmVyaWZ5aW5nIHRoZSBzaWduYXR1cmUuLi4K
IFBBU1MgdmVyaWZpY2F0aW9uUmVzdWx0IGlzIHRydWUKSW5kZXg6IExheW91dFRlc3RzL2NyeXB0
by9zdWJ0bGUvaG1hYy1pbXBvcnQtandrLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
Y3J5cHRvL3N1YnRsZS9obWFjLWltcG9ydC1qd2suaHRtbAkocmV2aXNpb24gMTU5Mjk1KQorKysg
TGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9obWFjLWltcG9ydC1qd2suaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMTMsOSArMTMsNiBAQCBkZXNjcmlwdGlvbigiVGVzdCBpbXBvcnRpbmcgYSBKV0sg
a2V5IGZvCiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAoIXdpbmRvdy5zdWJ0bGUpCi0g
ICAgd2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRvLndlYmtpdFN1YnRsZTsKLQog
dmFyIGV4dHJhY3RhYmxlID0gdHJ1ZTsKIAogdmFyIGhtYWNLZXkgPSB7CkBAIC0yNiw3ICsyMyw3
IEBAIHZhciBobWFjS2V5ID0gewogICAgICJrIjogImFoamtuLV8zODdmZ25zaWJmMjNxc3ZhaGpr
bi1fMzg3Zmduc2liZjIzcXMiCiB9OwogCi12YXIgaG1hY0tleUFzQXJyYXlCdWZmZXIgPSBhc2Np
aVRvQXJyYXlCdWZmZXIoSlNPTi5zdHJpbmdpZnkoaG1hY0tleSkpOwordmFyIGhtYWNLZXlBc0Fy
cmF5QnVmZmVyID0gYXNjaWlUb1VpbnQ4QXJyYXkoSlNPTi5zdHJpbmdpZnkoaG1hY0tleSkpOwog
CiBkZWJ1ZygiSW1wb3J0aW5nIGEga2V5Li4uXG4iKTsKIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCBobWFjS2V5QXNBcnJheUJ1ZmZlciwgbnVsbCwgZXh0cmFjdGFibGUsIFsic2lnbiIs
ICJ2ZXJpZnkiXSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKQEAgLTM5LDEzICszNiwxMyBAQCBj
cnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgaG1hY0tleUFzCiAgICAgc2hvdWxkQmUoImtl
eS51c2FnZXMiLCAnWyJzaWduIiwgInZlcmlmeSJdJyk7CiAKICAgICBkZWJ1ZygiXG5Vc2luZyB0
aGUga2V5IHRvIHNpZ24gbWVzc2FnZSAnZm9vJy4uLiIpOwotICAgIHJldHVybiBjcnlwdG8uc3Vi
dGxlLnNpZ24oa2V5LmFsZ29yaXRobSwga2V5LCBbYXNjaWlUb0FycmF5QnVmZmVyKCdmb28nKV0p
OworICAgIHJldHVybiBjcnlwdG8uc3VidGxlLnNpZ24oa2V5LmFsZ29yaXRobSwga2V5LCBbYXNj
aWlUb1VpbnQ4QXJyYXkoJ2ZvbycpXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewogICAg
IHNpZ25hdHVyZSA9IHJlc3VsdDsKLSAgICBzaG91bGRCZSgiYnl0ZUFycmF5VG9IZXhTdHJpbmco
bmV3IFVpbnQ4QXJyYXkoc2lnbmF0dXJlKSkiLCAiJ1tlMCAzNyAzNiBmZSAwOSA4OCA5MiBiMiBh
MiBkYSA3NyA4MSAyNCAzMSBmNyBjMCAxNCBkMyAyZSAyZiBkNiA5ZiAzYiBjZiBmOCA4MyBhYyA5
MiAzYSA4ZiBhMiBkYV0nIik7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVp
bnQ4QXJyYXkoc2lnbmF0dXJlKSkiLCAiJ2UwMzczNmZlMDk4ODkyYjJhMmRhNzc4MTI0MzFmN2Mw
MTRkMzJlMmZkNjlmM2JjZmY4ODNhYzkyM2E4ZmEyZGEnIik7CiAKICAgICBkZWJ1ZygiXG5WZXJp
ZnlpbmcgdGhlIHNpZ25hdHVyZS4uLiIpOwotICAgIHJldHVybiBjcnlwdG8uc3VidGxlLnZlcmlm
eShrZXkuYWxnb3JpdGhtLCBrZXksIHJlc3VsdCwgW2FzY2lpVG9BcnJheUJ1ZmZlcignZm9vJyld
KTsKKyAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS52ZXJpZnkoa2V5LmFsZ29yaXRobSwga2V5LCBy
ZXN1bHQsIFthc2NpaVRvVWludDhBcnJheSgnZm9vJyldKTsKIH0pLnRoZW4oZnVuY3Rpb24ocmVz
dWx0KSB7CiAgICAgdmVyaWZpY2F0aW9uUmVzdWx0ID0gcmVzdWx0OwogICAgIHNob3VsZEJlKCJ2
ZXJpZmljYXRpb25SZXN1bHQiLCAidHJ1ZSIpOwpJbmRleDogTGF5b3V0VGVzdHMvY3J5cHRvL3N1
YnRsZS9obWFjLXNpZ24tdmVyaWZ5LWVtcHR5LWtleS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9obWFjLXNpZ24tdmVyaWZ5LWVtcHR5LWtleS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDE1OTI5OSkKKysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0
bGUvaG1hYy1zaWduLXZlcmlmeS1lbXB0eS1rZXktZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC0xMSw3ICsxMSw3IEBAIFBBU1Mga2V5LmFsZ29yaXRobS5sZW5ndGggaXMgMAogUEFTUyBr
ZXkuYWxnb3JpdGhtLmhhc2gubmFtZSBpcyAnc2hhLTEnCiBQQVNTIGtleS51c2FnZXMgaXMgWydz
aWduJywgJ3ZlcmlmeSddCiBVc2luZyB0aGUga2V5IHRvIHNpZ24gJ2ZvbycuLi4KLVBBU1MgYnl0
ZUFycmF5VG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoc2lnbmF0dXJlKSkgaXMgJ1thMyBjYyA3
NyAwZiBjMCAzMyBlMiBjYiA0MSA5ZCA0MiBiNiA0ZSAwMCA4MSBhMyBiZCAzYiBlMyAwZV0nCitQ
QVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoc2lnbmF0dXJlKSkgaXMgJ2EzY2M3
NzBmYzAzM2UyY2I0MTlkNDJiNjRlMDA4MWEzYmQzYmUzMGUnCiBWZXJpZnlpbmcgdGhlIHNpZ25h
dHVyZS4uLgogUEFTUyB2ZXJpZmljYXRpb25SZXN1bHQgaXMgdHJ1ZQogUEFTUyBzdWNjZXNzZnVs
bHlQYXJzZWQgaXMgdHJ1ZQpJbmRleDogTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9obWFjLXNp
Z24tdmVyaWZ5LWVtcHR5LWtleS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NyeXB0
by9zdWJ0bGUvaG1hYy1zaWduLXZlcmlmeS1lbXB0eS1rZXkuaHRtbAkocmV2aXNpb24gMTU5Mjk5
KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9obWFjLXNpZ24tdmVyaWZ5LWVtcHR5LWtl
eS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMywxMCArMTMsNyBAQCBkZXNjcmlwdGlvbigiVGVz
dCBITUFDIHNpZ24gYW5kIHZlcmlmeSBmCiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAo
IXdpbmRvdy5zdWJ0bGUpCi0gICAgd2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRv
LndlYmtpdFN1YnRsZTsKLQotdmFyIGhtYWNLZXkgPSBhc2NpaVRvQXJyYXlCdWZmZXIoJycpOwor
dmFyIGhtYWNLZXkgPSBhc2NpaVRvVWludDhBcnJheSgnJyk7CiB2YXIgZXh0cmFjdGFibGUgPSB0
cnVlOwogCiBkZWJ1ZygiSW1wb3J0aW5nIGEgcmF3IEhNQUMga2V5IGZyb20gc3RyaW5nIGxpdGVy
YWwuLi4iKTsKQEAgLTMwLDEzICsyNywxMyBAQCBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgicmF3
IiwgaG1hY0tleSwgCiAgICAgc2hvdWxkQmUoImtleS51c2FnZXMiLCAiWydzaWduJywgJ3Zlcmlm
eSddIik7CiAKICAgICBkZWJ1ZygiVXNpbmcgdGhlIGtleSB0byBzaWduICdmb28nLi4uIik7Ci0g
ICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuc2lnbihrZXkuYWxnb3JpdGhtLCBrZXksIFthc2NpaVRv
QXJyYXlCdWZmZXIoJ2ZvbycpXSk7CisgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuc2lnbihrZXku
YWxnb3JpdGhtLCBrZXksIFthc2NpaVRvVWludDhBcnJheSgnZm9vJyldKTsKIH0pLnRoZW4oZnVu
Y3Rpb24ocmVzdWx0KSB7CiAgICAgc2lnbmF0dXJlID0gcmVzdWx0OwotICAgIHNob3VsZEJlKCJi
eXRlQXJyYXlUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShzaWduYXR1cmUpKSIsICInW2EzIGNj
IDc3IDBmIGMwIDMzIGUyIGNiIDQxIDlkIDQyIGI2IDRlIDAwIDgxIGEzIGJkIDNiIGUzIDBlXSci
KTsKKyAgICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShzaWduYXR1
cmUpKSIsICInYTNjYzc3MGZjMDMzZTJjYjQxOWQ0MmI2NGUwMDgxYTNiZDNiZTMwZSciKTsKIAog
ICAgIGRlYnVnKCJWZXJpZnlpbmcgdGhlIHNpZ25hdHVyZS4uLiIpOwotICAgIHJldHVybiBjcnlw
dG8uc3VidGxlLnZlcmlmeShrZXkuYWxnb3JpdGhtLCBrZXksIHJlc3VsdCwgW2FzY2lpVG9BcnJh
eUJ1ZmZlcignZm9vJyldKTsKKyAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS52ZXJpZnkoa2V5LmFs
Z29yaXRobSwga2V5LCByZXN1bHQsIFthc2NpaVRvVWludDhBcnJheSgnZm9vJyldKTsKIH0pLnRo
ZW4oZnVuY3Rpb24ocmVzdWx0KSB7CiAgICAgdmVyaWZpY2F0aW9uUmVzdWx0ID0gcmVzdWx0Owog
ICAgIHNob3VsZEJlKCJ2ZXJpZmljYXRpb25SZXN1bHQiLCAidHJ1ZSIpOwpJbmRleDogTGF5b3V0
VGVzdHMvY3J5cHRvL3N1YnRsZS9obWFjLXNpZ24tdmVyaWZ5LWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2htYWMtc2lnbi12ZXJpZnktZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAxNTkyOTUpCisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2ht
YWMtc2lnbi12ZXJpZnktZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xMSw3ICsxMSw3
IEBAIFBBU1Mga2V5LmFsZ29yaXRobS5sZW5ndGggaXMgMQogUEFTUyBrZXkuYWxnb3JpdGhtLmhh
c2gubmFtZSBpcyAnc2hhLTEnCiBQQVNTIGtleS51c2FnZXMgaXMgWydzaWduJywgJ3ZlcmlmeSdd
CiBVc2luZyB0aGUga2V5IHRvIHNpZ24gJ2ZvbycuLi4KLSAgICA9IFtiZSBiYiBjMCAyZSA0NiBi
MCBmOCAxMSA4MyBmNCAwYyAyNSBkYyBlMiAzZSA1MCA0NSBkNiA1NSAxOV0KK1BBU1MgYnl0ZXNU
b0hleFN0cmluZyhuZXcgVWludDhBcnJheShzaWduYXR1cmUpKSBpcyAnYmViYmMwMmU0NmIwZjgx
MTgzZjQwYzI1ZGNlMjNlNTA0NWQ2NTUxOScKIFZlcmlmeWluZyB0aGUgc2lnbmF0dXJlLi4uCiBQ
QVNTIHZlcmlmaWNhdGlvblJlc3VsdCBpcyB0cnVlCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2htYWMtc2lnbi12ZXJpZnku
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2htYWMtc2lnbi12
ZXJpZnkuaHRtbAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRs
ZS9obWFjLXNpZ24tdmVyaWZ5Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEzLDEwICsxMyw3IEBA
IGRlc2NyaXB0aW9uKCJUZXN0IEhNQUMgc2lnbiBhbmQgdmVyaWZ5IGYKIAoganNUZXN0SXNBc3lu
YyA9IHRydWU7CiAKLWlmICghd2luZG93LnN1YnRsZSkKLSAgICB3aW5kb3cuY3J5cHRvLnN1YnRs
ZSA9IHdpbmRvdy5jcnlwdG8ud2Via2l0U3VidGxlOwotCi12YXIgaG1hY0tleSA9IGFzY2lpVG9B
cnJheUJ1ZmZlcignYScpOwordmFyIGhtYWNLZXkgPSBhc2NpaVRvVWludDhBcnJheSgnYScpOwog
dmFyIGV4dHJhY3RhYmxlID0gdHJ1ZTsKIAogZGVidWcoIkltcG9ydGluZyBhIHJhdyBITUFDIGtl
eSBmcm9tIHN0cmluZyBsaXRlcmFsLi4uIik7CkBAIC0zMCwxMiArMjcsMTMgQEAgY3J5cHRvLnN1
YnRsZS5pbXBvcnRLZXkoInJhdyIsIGhtYWNLZXksIAogICAgIHNob3VsZEJlKCJrZXkudXNhZ2Vz
IiwgIlsnc2lnbicsICd2ZXJpZnknXSIpOwogCiAgICAgZGVidWcoIlVzaW5nIHRoZSBrZXkgdG8g
c2lnbiAnZm9vJy4uLiIpOwotICAgIHJldHVybiBjcnlwdG8uc3VidGxlLnNpZ24oa2V5LmFsZ29y
aXRobSwga2V5LCBbYXNjaWlUb0FycmF5QnVmZmVyKCdmb28nKV0pOworICAgIHJldHVybiBjcnlw
dG8uc3VidGxlLnNpZ24oa2V5LmFsZ29yaXRobSwga2V5LCBbYXNjaWlUb1VpbnQ4QXJyYXkoJ2Zv
bycpXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewotICAgIHByaW50QWNjZXB0ZWRSZXN1
bHQocmVzdWx0KTsKKyAgICBzaWduYXR1cmUgPSByZXN1bHQ7CisgICAgc2hvdWxkQmUoImJ5dGVz
VG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoc2lnbmF0dXJlKSkiLCAiJ2JlYmJjMDJlNDZiMGY4
MTE4M2Y0MGMyNWRjZTIzZTUwNDVkNjU1MTknIik7CiAKICAgICBkZWJ1ZygiVmVyaWZ5aW5nIHRo
ZSBzaWduYXR1cmUuLi4iKTsKLSAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS52ZXJpZnkoa2V5LmFs
Z29yaXRobSwga2V5LCByZXN1bHQsIFthc2NpaVRvQXJyYXlCdWZmZXIoJ2ZvbycpXSk7CisgICAg
cmV0dXJuIGNyeXB0by5zdWJ0bGUudmVyaWZ5KGtleS5hbGdvcml0aG0sIGtleSwgcmVzdWx0LCBb
YXNjaWlUb1VpbnQ4QXJyYXkoJ2ZvbycpXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewog
ICAgIHZlcmlmaWNhdGlvblJlc3VsdCA9IHJlc3VsdDsKICAgICBzaG91bGRCZSgidmVyaWZpY2F0
aW9uUmVzdWx0IiwgInRydWUiKTsKSW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvaW1w
b3J0LWp3ay1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1
YnRsZS9pbXBvcnQtandrLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0
VGVzdHMvY3J5cHRvL3N1YnRsZS9pbXBvcnQtandrLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5
KQpAQCAtMywyNyArMywyNyBAQCBUZXN0IGVycm9yIGhhbmRsaW5nIGZvciBKV0sgaW1wb3J0Lgog
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRL
ZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcignJyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IEludmFsaWQgSldLIHNlcmlhbGl6YXRpb24uCi1QQVNTIGNyeXB0by5zdWJ0bGUu
aW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoJ3snKSwgbnVsbCkgdGhyZXcgZXhj
ZXB0aW9uIFR5cGVFcnJvcjogSW52YWxpZCBKV0sgc2VyaWFsaXphdGlvbi4KLVBBU1MgY3J5cHRv
LnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcignbnVsbCcpLCBudWxs
KSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBJbnZhbGlkIEpXSyBzZXJpYWxpemF0aW9uLgot
UEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb0FycmF5QnVmZmVyKCd1
bmRlZmluZWQnKSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW52YWxpZCBKV0sg
c2VyaWFsaXphdGlvbi4KLVBBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lp
VG9BcnJheUJ1ZmZlcigne30nKSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogTmVp
dGhlciBrZXkgbm9yIGZ1bmN0aW9uIGFyZ3VtZW50IGhhcyBjcnlwdG8gYWxnb3JpdGhtIHNwZWNp
ZmllZC4KLVBBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1
ZmZlcigne30nKSwgImFlcy1jYmMiKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBSZXF1aXJl
ZCBKV0sgImt0eSIgbWVtYmVyIGlzIG1pc3NpbmcuCi1QQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0
S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoJ3sgImt0eSI6ICJmb29iYXIiLCAiYWxnIjog
IkhTMjU2IiwgInVzZSI6ICJzaWciLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24z
NzM4N2ZnbnNpYmYyM3FzIiB9JyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFVu
c3VwcG9ydGVkIEpXSyBrZXkgdHlwZSBmb29iYXIuCi1QQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0
S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogImZv
b2JhciIsICJ1c2UiOiAic2lnIiwgImsiOiAiYWhqa24yMzM4N2ZnbnNpYmYyM3FzdmFoamtuMzcz
ODdmZ25zaWJmMjNxcyIgfScpLCBudWxsKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBVbnN1
cHBvcnRlZCBKV0sgYWxnb3JpdGhtIGZvb2Jhci4KLVBBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRL
ZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcigneyAia3R5IjogIm9jdCIsICJhbGciOiAiSFMy
NTYiLCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIzMzg3
Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9JyksICJhZXMtY2JjIikgdGhyZXcg
ZXhjZXB0aW9uIFR5cGVFcnJvcjogQWxnb3JpdGhtIHNwZWNpZmllZCBpbiBrZXkgaXMgbm90IGNv
bXBhdGlibGUgd2l0aCBvbmUgcGFzc2VkIHRvIGltcG9ydEtleSBhcyBhcmd1bWVudC4KLVBBU1Mg
Y3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcigneyAia3R5
IjogIm9jdCIsICJhbGciOiAiSFMyNTYiLCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZh
bHNlLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9
JyksIHsgbmFtZTogImhtYWMiLCBoYXNoOiAic2hhLTEiIH0pIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IEFsZ29yaXRobSBzcGVjaWZpZWQgaW4ga2V5IGlzIG5vdCBjb21wYXRpYmxlIHdpdGgg
b25lIHBhc3NlZCB0byBpbXBvcnRLZXkgYXMgYXJndW1lbnQuCi1QQVNTIGNyeXB0by5zdWJ0bGUu
aW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoJ3sgImt0eSI6ICJvY3QiLCAiYWxn
IjogIkhTMjU2IiB9JyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFNlY3JldCBr
ZXkgZGF0YSBpcyBub3QgcHJlc2VudCBpcyBKV0suCi1QQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0
S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkEx
MjhDQkMiIH0nKSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogU2VjcmV0IGtleSBk
YXRhIGlzIG5vdCBwcmVzZW50IGlzIEpXSy4KLVBBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXko
Imp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcigneyAia3R5IjogIm9jdCIsICJhbGciOiAiSFMyNTYi
LCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICIxMjM0IiB9JyksIG51
bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEtleSBzaXplIGlzIG5vdCB2YWxpZCBmb3Ig
SFMyNTYuCi1QQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlC
dWZmZXIoJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkExMjhDQkMiLCAidXNlIjogInNpZyIsICJl
eHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICIxMjM0IiB9JyksIG51bGwpIHRocmV3IGV4Y2VwdGlv
biBUeXBlRXJyb3I6IEtleSBzaXplIGlzIG5vdCB2YWxpZCBmb3IgQTEyOENCQy4KLVBBU1MgY3J5
cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcigneyAia3R5Ijog
Im9jdCIsICJhbGciOiAiQTEyOENCQyIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFs
c2UsICJrIjogImFoamtuMjMzODdmZ25zaWJmMjNxc3ZhaGprbjM3Mzg3Zmduc2liZjIzcXMiIH0n
KSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogS2V5IHNpemUgaXMgbm90IHZhbGlk
IGZvciBBMTI4Q0JDLgotUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlU
b0FycmF5QnVmZmVyKCd7ICJrdHkiOiAib2N0IiwgImFsZyI6ICJIUzI1NiIsICJ1c2UiOiAic2ln
IiwgImV4dHJhY3RhYmxlIjogZmFsc2UsICJrIjogImFoamtuMjMzODdmK25zaWJmMjNxc3ZhaGpr
bjM3Mzg3Zmduc2liZjIzcXMiIH0nKSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjog
Q2Fubm90IGRlY29kZSBiYXNlNjR1cmwga2V5IGRhdGEgaW4gSldLLgotUEFTUyBjcnlwdG8uc3Vi
dGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb0FycmF5QnVmZmVyKCd7ICJrdHkiOiAxLCAiYWxn
IjogIkhTMjU2IiwgInVzZSI6ICJzaWciLCAiZXh0cmFjdGFibGUiOiBmYWxzZSwgImsiOiAiYWhq
a24yMzM4N2ZnbnNpYmYyM3FzdmFoamtuMzczODdmZ25zaWJmMjNxcyIgfScpLCBudWxsKSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiBFeHBlY3RlZCBhIHN0cmluZyB2YWx1ZSBmb3IgImt0eSIg
SlNPTiBrZXkuCi1QQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXJy
YXlCdWZmZXIoJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogMSwgInVzZSI6ICJzaWciLCAiZXh0cmFj
dGFibGUiOiBmYWxzZSwgImsiOiAiYWhqa24yMzM4N2ZnbnNpYmYyM3FzdmFoamtuMzczODdmZ25z
aWJmMjNxcyIgfScpLCBudWxsKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBFeHBlY3RlZCBh
IHN0cmluZyB2YWx1ZSBmb3IgImFsZyIgSlNPTiBrZXkuCi1QQVNTIGNyeXB0by5zdWJ0bGUuaW1w
b3J0S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjog
IkhTMjU2IiwgInVzZSI6IDEsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIzMzg3
Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9JyksIG51bGwpIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IEV4cGVjdGVkIGEgc3RyaW5nIHZhbHVlIGZvciAidXNlIiBKU09OIGtl
eS4KLVBBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZl
cigneyAia3R5IjogIm9jdCIsICJhbGciOiAiSFMyNTYiLCAidXNlIjogInNpZyIsICJleHRyYWN0
YWJsZSI6ICJmYWxzZSIsICJrIjogImFoamtuMjMzODdmZ25zaWJmMjNxc3ZhaGprbjM3Mzg3Zmdu
c2liZjIzcXMiIH0nKSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogRXhwZWN0ZWQg
YSBib29sZWFuIHZhbHVlIGZvciAiZXh0cmFjdGFibGUiIEpTT04ga2V5LgotUEFTUyBjcnlwdG8u
c3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb0FycmF5QnVmZmVyKCd7ICJrdHkiOiAib2N0
IiwgImFsZyI6ICJIUzI1NiIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFsc2UsICJr
IjogMSB9JyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEV4cGVjdGVkIGEgc3Ry
aW5nIHZhbHVlIGZvciAiayIgSlNPTiBrZXkuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCBhc2NpaVRvVWludDhBcnJheSgnJyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBl
RXJyb3I6IEludmFsaWQgSldLIHNlcmlhbGl6YXRpb24uCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1w
b3J0S2V5KCJqd2siLCBhc2NpaVRvVWludDhBcnJheSgneycpLCBudWxsKSB0aHJldyBleGNlcHRp
b24gVHlwZUVycm9yOiBJbnZhbGlkIEpXSyBzZXJpYWxpemF0aW9uLgorUEFTUyBjcnlwdG8uc3Vi
dGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoJ251bGwnKSwgbnVsbCkgdGhy
ZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW52YWxpZCBKV0sgc2VyaWFsaXphdGlvbi4KK1BBU1Mg
Y3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5KCd1bmRlZmlu
ZWQnKSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogSW52YWxpZCBKV0sgc2VyaWFs
aXphdGlvbi4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50
OEFycmF5KCd7fScpLCBudWxsKSB0aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBOZWl0aGVyIGtl
eSBub3IgZnVuY3Rpb24gYXJndW1lbnQgaGFzIGNyeXB0byBhbGdvcml0aG0gc3BlY2lmaWVkLgor
UEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoJ3t9
JyksICJhZXMtY2JjIikgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogUmVxdWlyZWQgSldLICJr
dHkiIG1lbWJlciBpcyBtaXNzaW5nLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandr
IiwgYXNjaWlUb1VpbnQ4QXJyYXkoJ3sgImt0eSI6ICJmb29iYXIiLCAiYWxnIjogIkhTMjU2Iiwg
InVzZSI6ICJzaWciLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNp
YmYyM3FzIiB9JyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFVuc3VwcG9ydGVk
IEpXSyBrZXkgdHlwZSBmb29iYXIuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2si
LCBhc2NpaVRvVWludDhBcnJheSgneyAia3R5IjogIm9jdCIsICJhbGciOiAiZm9vYmFyIiwgInVz
ZSI6ICJzaWciLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYy
M3FzIiB9JyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFVuc3VwcG9ydGVkIEpX
SyBhbGdvcml0aG0gZm9vYmFyLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwg
YXNjaWlUb1VpbnQ4QXJyYXkoJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkhTMjU2IiwgInVzZSI6
ICJzaWciLCAiZXh0cmFjdGFibGUiOiBmYWxzZSwgImsiOiAiYWhqa24yMzM4N2ZnbnNpYmYyM3Fz
dmFoamtuMzczODdmZ25zaWJmMjNxcyIgfScpLCAiYWVzLWNiYyIpIHRocmV3IGV4Y2VwdGlvbiBU
eXBlRXJyb3I6IEFsZ29yaXRobSBzcGVjaWZpZWQgaW4ga2V5IGlzIG5vdCBjb21wYXRpYmxlIHdp
dGggb25lIHBhc3NlZCB0byBpbXBvcnRLZXkgYXMgYXJndW1lbnQuCitQQVNTIGNyeXB0by5zdWJ0
bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvVWludDhBcnJheSgneyAia3R5IjogIm9jdCIsICJh
bGciOiAiSFMyNTYiLCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJh
aGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9JyksIHsgbmFtZTog
ImhtYWMiLCBoYXNoOiAic2hhLTEiIH0pIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEFsZ29y
aXRobSBzcGVjaWZpZWQgaW4ga2V5IGlzIG5vdCBjb21wYXRpYmxlIHdpdGggb25lIHBhc3NlZCB0
byBpbXBvcnRLZXkgYXMgYXJndW1lbnQuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJq
d2siLCBhc2NpaVRvVWludDhBcnJheSgneyAia3R5IjogIm9jdCIsICJhbGciOiAiSFMyNTYiIH0n
KSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogU2VjcmV0IGtleSBkYXRhIGlzIG5v
dCBwcmVzZW50IGlzIEpXSy4KK1BBU1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFz
Y2lpVG9VaW50OEFycmF5KCd7ICJrdHkiOiAib2N0IiwgImFsZyI6ICJBMTI4Q0JDIiB9JyksIG51
bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IFNlY3JldCBrZXkgZGF0YSBpcyBub3QgcHJl
c2VudCBpcyBKV0suCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRv
VWludDhBcnJheSgneyAia3R5IjogIm9jdCIsICJhbGciOiAiSFMyNTYiLCAidXNlIjogInNpZyIs
ICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICIxMjM0IiB9JyksIG51bGwpIHRocmV3IGV4Y2Vw
dGlvbiBUeXBlRXJyb3I6IEtleSBzaXplIGlzIG5vdCB2YWxpZCBmb3IgSFMyNTYuCitQQVNTIGNy
eXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvVWludDhBcnJheSgneyAia3R5Ijog
Im9jdCIsICJhbGciOiAiQTEyOENCQyIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFs
c2UsICJrIjogIjEyMzQiIH0nKSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogS2V5
IHNpemUgaXMgbm90IHZhbGlkIGZvciBBMTI4Q0JDLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9y
dEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkEx
MjhDQkMiLCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIz
Mzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9JyksIG51bGwpIHRocmV3IGV4
Y2VwdGlvbiBUeXBlRXJyb3I6IEtleSBzaXplIGlzIG5vdCB2YWxpZCBmb3IgQTEyOENCQy4KK1BB
U1MgY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5KCd7ICJr
dHkiOiAib2N0IiwgImFsZyI6ICJIUzI1NiIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjog
ZmFsc2UsICJrIjogImFoamtuMjMzODdmK25zaWJmMjNxc3ZhaGprbjM3Mzg3Zmduc2liZjIzcXMi
IH0nKSwgbnVsbCkgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogQ2Fubm90IGRlY29kZSBiYXNl
NjR1cmwga2V5IGRhdGEgaW4gSldLLgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandr
IiwgYXNjaWlUb1VpbnQ4QXJyYXkoJ3sgImt0eSI6IDEsICJhbGciOiAiSFMyNTYiLCAidXNlIjog
InNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2
YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9JyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJy
b3I6IEV4cGVjdGVkIGEgc3RyaW5nIHZhbHVlIGZvciAia3R5IiBKU09OIGtleS4KK1BBU1MgY3J5
cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5KCd7ICJrdHkiOiAi
b2N0IiwgImFsZyI6IDEsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFsc2UsICJrIjog
ImFoamtuMjMzODdmZ25zaWJmMjNxc3ZhaGprbjM3Mzg3Zmduc2liZjIzcXMiIH0nKSwgbnVsbCkg
dGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogRXhwZWN0ZWQgYSBzdHJpbmcgdmFsdWUgZm9yICJh
bGciIEpTT04ga2V5LgorUEFTUyBjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlU
b1VpbnQ4QXJyYXkoJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkhTMjU2IiwgInVzZSI6IDEsICJl
eHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4
N2ZnbnNpYmYyM3FzIiB9JyksIG51bGwpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IEV4cGVj
dGVkIGEgc3RyaW5nIHZhbHVlIGZvciAidXNlIiBKU09OIGtleS4KK1BBU1MgY3J5cHRvLnN1YnRs
ZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5KCd7ICJrdHkiOiAib2N0IiwgImFs
ZyI6ICJIUzI1NiIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogImZhbHNlIiwgImsiOiAi
YWhqa24yMzM4N2ZnbnNpYmYyM3FzdmFoamtuMzczODdmZ25zaWJmMjNxcyIgfScpLCBudWxsKSB0
aHJldyBleGNlcHRpb24gVHlwZUVycm9yOiBFeHBlY3RlZCBhIGJvb2xlYW4gdmFsdWUgZm9yICJl
eHRyYWN0YWJsZSIgSlNPTiBrZXkuCitQQVNTIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2si
LCBhc2NpaVRvVWludDhBcnJheSgneyAia3R5IjogIm9jdCIsICJhbGciOiAiSFMyNTYiLCAidXNl
IjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6IDEgfScpLCBudWxsKSB0aHJldyBl
eGNlcHRpb24gVHlwZUVycm9yOiBFeHBlY3RlZCBhIHN0cmluZyB2YWx1ZSBmb3IgImsiIEpTT04g
a2V5LgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCklu
ZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2ltcG9ydC1qd2suaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL2ltcG9ydC1qd2suaHRtbAkocmV2aXNpb24g
MTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9pbXBvcnQtandrLmh0bWwJKHdv
cmtpbmcgY29weSkKQEAgLTExLDQ0ICsxMSwzOSBAQAogPHNjcmlwdD4KIGRlc2NyaXB0aW9uKCJU
ZXN0IGVycm9yIGhhbmRsaW5nIGZvciBKV0sgaW1wb3J0LiIpOwogCi0vL2pzVGVzdElzQXN5bmMg
PSB0cnVlOwotCi1pZiAoIXdpbmRvdy5zdWJ0bGUpCi0gICAgd2luZG93LmNyeXB0by5zdWJ0bGUg
PSB3aW5kb3cuY3J5cHRvLndlYmtpdFN1YnRsZTsKLQotc2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0
bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoXCdcJyksIG51bGwpJykKLXNo
b3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb0FycmF5QnVm
ZmVyKFwne1wnKSwgbnVsbCknKQotc2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoXCdudWxsXCcpLCBudWxsKScpCi1zaG91bGRUaHJv
dygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihcJ3Vu
ZGVmaW5lZFwnKSwgbnVsbCknKQotc2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoXCd7fVwnKSwgbnVsbCknKQotc2hvdWxkVGhyb3co
J2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoXCd7fVwn
KSwgImFlcy1jYmMiKScpCitzaG91bGRUaHJvdygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3
ayIsIGFzY2lpVG9VaW50OEFycmF5KFwnXCcpLCBudWxsKScpCitzaG91bGRUaHJvdygnY3J5cHRv
LnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5KFwne1wnKSwgbnVsbCkn
KQorc2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvVWlu
dDhBcnJheShcJ251bGxcJyksIG51bGwpJykKK3Nob3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmlt
cG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoXCd1bmRlZmluZWRcJyksIG51bGwpJykK
K3Nob3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4
QXJyYXkoXCd7fVwnKSwgbnVsbCknKQorc2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0bGUuaW1wb3J0
S2V5KCJqd2siLCBhc2NpaVRvVWludDhBcnJheShcJ3t9XCcpLCAiYWVzLWNiYyIpJykKIAogLy8g
VW5rbm93bi9pbnZhbGlkIEpXSyB2YWx1ZXMuCi1zaG91bGRUaHJvdygnY3J5cHRvLnN1YnRsZS5p
bXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihcJ3sgImt0eSI6ICJmb29iYXIiLCAi
YWxnIjogIkhTMjU2IiwgInVzZSI6ICJzaWciLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2
YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCBudWxsKScpCi1zaG91bGRUaHJvdygnY3J5cHRv
LnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihcJ3sgImt0eSI6ICJv
Y3QiLCAiYWxnIjogImZvb2JhciIsICJ1c2UiOiAic2lnIiwgImsiOiAiYWhqa24yMzM4N2ZnbnNp
YmYyM3FzdmFoamtuMzczODdmZ25zaWJmMjNxcyIgfVwnKSwgbnVsbCknKQorc2hvdWxkVGhyb3co
J2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvVWludDhBcnJheShcJ3sgImt0
eSI6ICJmb29iYXIiLCAiYWxnIjogIkhTMjU2IiwgInVzZSI6ICJzaWciLCAiayI6ICJhaGprbjIz
Mzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCBudWxsKScpCitzaG91
bGRUaHJvdygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5
KFwneyAia3R5IjogIm9jdCIsICJhbGciOiAiZm9vYmFyIiwgInVzZSI6ICJzaWciLCAiayI6ICJh
aGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCBudWxsKScp
CiAKIC8vIEFsZ29yaXRobSBtaXNtYXRjaC4KLXNob3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmlt
cG9ydEtleSgiandrIiwgYXNjaWlUb0FycmF5QnVmZmVyKFwneyAia3R5IjogIm9jdCIsICJhbGci
OiAiSFMyNTYiLCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGpr
bjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCAiYWVzLWNiYyIp
JykKLXNob3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb0Fy
cmF5QnVmZmVyKFwneyAia3R5IjogIm9jdCIsICJhbGciOiAiSFMyNTYiLCAidXNlIjogInNpZyIs
ICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24z
NzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCB7IG5hbWU6ICJobWFjIiwgaGFzaDogInNoYS0xIiB9KScp
CitzaG91bGRUaHJvdygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50
OEFycmF5KFwneyAia3R5IjogIm9jdCIsICJhbGciOiAiSFMyNTYiLCAidXNlIjogInNpZyIsICJl
eHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4
N2ZnbnNpYmYyM3FzIiB9XCcpLCAiYWVzLWNiYyIpJykKK3Nob3VsZFRocm93KCdjcnlwdG8uc3Vi
dGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoXCd7ICJrdHkiOiAib2N0Iiwg
ImFsZyI6ICJIUzI1NiIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFsc2UsICJrIjog
ImFoamtuMjMzODdmZ25zaWJmMjNxc3ZhaGprbjM3Mzg3Zmduc2liZjIzcXMiIH1cJyksIHsgbmFt
ZTogImhtYWMiLCBoYXNoOiAic2hhLTEiIH0pJykKIAogLy8gTm8ga2V5IGRhdGEuCi1zaG91bGRU
aHJvdygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihc
J3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkhTMjU2IiB9XCcpLCBudWxsKScpCi1zaG91bGRUaHJv
dygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihcJ3sg
Imt0eSI6ICJvY3QiLCAiYWxnIjogIkExMjhDQkMiIH1cJyksIG51bGwpJykKK3Nob3VsZFRocm93
KCdjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoXCd7ICJr
dHkiOiAib2N0IiwgImFsZyI6ICJIUzI1NiIgfVwnKSwgbnVsbCknKQorc2hvdWxkVGhyb3coJ2Ny
eXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvVWludDhBcnJheShcJ3sgImt0eSI6
ICJvY3QiLCAiYWxnIjogIkExMjhDQkMiIH1cJyksIG51bGwpJykKIAogLy8gS2V5IGRhdGEgbGVu
Z3RoIGlzIGluY29ycmVjdCwgbm90IGFsbG93ZWQgaW4gSldLLgotc2hvdWxkVGhyb3coJ2NyeXB0
by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIoXCd7ICJrdHkiOiAi
b2N0IiwgImFsZyI6ICJIUzI1NiIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFsc2Us
ICJrIjogIjEyMzQiIH1cJyksIG51bGwpJykKLXNob3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmlt
cG9ydEtleSgiandrIiwgYXNjaWlUb0FycmF5QnVmZmVyKFwneyAia3R5IjogIm9jdCIsICJhbGci
OiAiQTEyOENCQyIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFsc2UsICJrIjogIjEy
MzQiIH1cJyksIG51bGwpJykKLXNob3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmltcG9ydEtleSgi
andrIiwgYXNjaWlUb0FycmF5QnVmZmVyKFwneyAia3R5IjogIm9jdCIsICJhbGciOiAiQTEyOENC
QyIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFsc2UsICJrIjogImFoamtuMjMzODdm
Z25zaWJmMjNxc3ZhaGprbjM3Mzg3Zmduc2liZjIzcXMiIH1cJyksIG51bGwpJykKK3Nob3VsZFRo
cm93KCdjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoXCd7
ICJrdHkiOiAib2N0IiwgImFsZyI6ICJIUzI1NiIsICJ1c2UiOiAic2lnIiwgImV4dHJhY3RhYmxl
IjogZmFsc2UsICJrIjogIjEyMzQiIH1cJyksIG51bGwpJykKK3Nob3VsZFRocm93KCdjcnlwdG8u
c3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoXCd7ICJrdHkiOiAib2N0
IiwgImFsZyI6ICJBMTI4Q0JDIiwgInVzZSI6ICJzaWciLCAiZXh0cmFjdGFibGUiOiBmYWxzZSwg
ImsiOiAiMTIzNCIgfVwnKSwgbnVsbCknKQorc2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0bGUuaW1w
b3J0S2V5KCJqd2siLCBhc2NpaVRvVWludDhBcnJheShcJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjog
IkExMjhDQkMiLCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGpr
bjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCBudWxsKScpCiAK
IC8vIEtleSBkYXRhIGlzIG5vdCB2YWxpZCBiYXNlNjR1cmwuCi1zaG91bGRUaHJvdygnY3J5cHRv
LnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihcJ3sgImt0eSI6ICJv
Y3QiLCAiYWxnIjogIkhTMjU2IiwgInVzZSI6ICJzaWciLCAiZXh0cmFjdGFibGUiOiBmYWxzZSwg
ImsiOiAiYWhqa24yMzM4N2YrbnNpYmYyM3FzdmFoamtuMzczODdmZ25zaWJmMjNxcyIgfVwnKSwg
bnVsbCknKQorc2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2Np
aVRvVWludDhBcnJheShcJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkhTMjU2IiwgInVzZSI6ICJz
aWciLCAiZXh0cmFjdGFibGUiOiBmYWxzZSwgImsiOiAiYWhqa24yMzM4N2YrbnNpYmYyM3FzdmFo
amtuMzczODdmZ25zaWJmMjNxcyIgfVwnKSwgbnVsbCknKQogCiAvLyBJbmNvcnJlY3QgZGF0YSB0
eXBlcy4KLXNob3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlU
b0FycmF5QnVmZmVyKFwneyAia3R5IjogMSwgImFsZyI6ICJIUzI1NiIsICJ1c2UiOiAic2lnIiwg
ImV4dHJhY3RhYmxlIjogZmFsc2UsICJrIjogImFoamtuMjMzODdmZ25zaWJmMjNxc3ZhaGprbjM3
Mzg3Zmduc2liZjIzcXMiIH1cJyksIG51bGwpJykKLXNob3VsZFRocm93KCdjcnlwdG8uc3VidGxl
LmltcG9ydEtleSgiandrIiwgYXNjaWlUb0FycmF5QnVmZmVyKFwneyAia3R5IjogIm9jdCIsICJh
bGciOiAxLCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIz
Mzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCBudWxsKScpCi1zaG91
bGRUaHJvdygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZl
cihcJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkhTMjU2IiwgInVzZSI6IDEsICJleHRyYWN0YWJs
ZSI6IGZhbHNlLCAiayI6ICJhaGprbjIzMzg3Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYy
M3FzIiB9XCcpLCBudWxsKScpCi1zaG91bGRUaHJvdygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXko
Imp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihcJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkhTMjU2
IiwgInVzZSI6ICJzaWciLCAiZXh0cmFjdGFibGUiOiAiZmFsc2UiLCAiayI6ICJhaGprbjIzMzg3
Zmduc2liZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCBudWxsKScpCi1zaG91bGRU
aHJvdygnY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihc
J3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkhTMjU2IiwgInVzZSI6ICJzaWciLCAiZXh0cmFjdGFi
bGUiOiBmYWxzZSwgImsiOiAxIH1cJyksIG51bGwpJykKK3Nob3VsZFRocm93KCdjcnlwdG8uc3Vi
dGxlLmltcG9ydEtleSgiandrIiwgYXNjaWlUb1VpbnQ4QXJyYXkoXCd7ICJrdHkiOiAxLCAiYWxn
IjogIkhTMjU2IiwgInVzZSI6ICJzaWciLCAiZXh0cmFjdGFibGUiOiBmYWxzZSwgImsiOiAiYWhq
a24yMzM4N2ZnbnNpYmYyM3FzdmFoamtuMzczODdmZ25zaWJmMjNxcyIgfVwnKSwgbnVsbCknKQor
c2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvVWludDhB
cnJheShcJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogMSwgInVzZSI6ICJzaWciLCAiZXh0cmFjdGFi
bGUiOiBmYWxzZSwgImsiOiAiYWhqa24yMzM4N2ZnbnNpYmYyM3FzdmFoamtuMzczODdmZ25zaWJm
MjNxcyIgfVwnKSwgbnVsbCknKQorc2hvdWxkVGhyb3coJ2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5
KCJqd2siLCBhc2NpaVRvVWludDhBcnJheShcJ3sgImt0eSI6ICJvY3QiLCAiYWxnIjogIkhTMjU2
IiwgInVzZSI6IDEsICJleHRyYWN0YWJsZSI6IGZhbHNlLCAiayI6ICJhaGprbjIzMzg3Zmduc2li
ZjIzcXN2YWhqa24zNzM4N2ZnbnNpYmYyM3FzIiB9XCcpLCBudWxsKScpCitzaG91bGRUaHJvdygn
Y3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5KFwneyAia3R5
IjogIm9jdCIsICJhbGciOiAiSFMyNTYiLCAidXNlIjogInNpZyIsICJleHRyYWN0YWJsZSI6ICJm
YWxzZSIsICJrIjogImFoamtuMjMzODdmZ25zaWJmMjNxc3ZhaGprbjM3Mzg3Zmduc2liZjIzcXMi
IH1cJyksIG51bGwpJykKK3Nob3VsZFRocm93KCdjcnlwdG8uc3VidGxlLmltcG9ydEtleSgiandr
IiwgYXNjaWlUb1VpbnQ4QXJyYXkoXCd7ICJrdHkiOiAib2N0IiwgImFsZyI6ICJIUzI1NiIsICJ1
c2UiOiAic2lnIiwgImV4dHJhY3RhYmxlIjogZmFsc2UsICJrIjogMSB9XCcpLCBudWxsKScpCiA8
L3NjcmlwdD4KIAogPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEt
djFfNS1nZW5lcmF0ZS1rZXktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2NyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUta2V5LWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Fzc2Et
cGtjczEtdjFfNS1nZW5lcmF0ZS1rZXktZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC04
LDEyICs4LDEyIEBAIFBBU1Mga2V5UGFpci50b1N0cmluZygpIGlzICdbb2JqZWN0IEtleVAKIFBB
U1Mga2V5UGFpci5wdWJsaWNLZXkudHlwZSBpcyAncHVibGljJwogUEFTUyBrZXlQYWlyLnB1Ymxp
Y0tleS5hbGdvcml0aG0ubmFtZSBpcyAncnNhc3NhLXBrY3MxLXYxXzUnCiBQQVNTIGtleVBhaXIu
cHVibGljS2V5LmFsZ29yaXRobS5tb2R1bHVzTGVuZ3RoIGlzIDIwNDgKLVBBU1MgYnl0ZUFycmF5
VG9IZXhTdHJpbmcoa2V5UGFpci5wdWJsaWNLZXkuYWxnb3JpdGhtLnB1YmxpY0V4cG9uZW50KSBp
cyAnWzAxIDAwIDAxXScKK1BBU1MgYnl0ZXNUb0hleFN0cmluZyhrZXlQYWlyLnB1YmxpY0tleS5h
bGdvcml0aG0ucHVibGljRXhwb25lbnQpIGlzICcwMTAwMDEnCiBQQVNTIGtleVBhaXIucHVibGlj
S2V5LmFsZ29yaXRobS5oYXNoIGlzIHVuZGVmaW5lZC4KIFBBU1Mga2V5UGFpci5wcml2YXRlS2V5
LnR5cGUgaXMgJ3ByaXZhdGUnCiBQQVNTIGtleVBhaXIucHJpdmF0ZUtleS5hbGdvcml0aG0ubmFt
ZSBpcyAncnNhc3NhLXBrY3MxLXYxXzUnCiBQQVNTIGtleVBhaXIucHJpdmF0ZUtleS5hbGdvcml0
aG0ubW9kdWx1c0xlbmd0aCBpcyAyMDQ4Ci1QQVNTIGJ5dGVBcnJheVRvSGV4U3RyaW5nKGtleVBh
aXIucHJpdmF0ZUtleS5hbGdvcml0aG0ucHVibGljRXhwb25lbnQpIGlzICdbMDEgMDAgMDFdJwor
UEFTUyBieXRlc1RvSGV4U3RyaW5nKGtleVBhaXIucHJpdmF0ZUtleS5hbGdvcml0aG0ucHVibGlj
RXhwb25lbnQpIGlzICcwMTAwMDEnCiBQQVNTIGtleVBhaXIucHJpdmF0ZUtleS5hbGdvcml0aG0u
aGFzaCBpcyB1bmRlZmluZWQuCiAKIFRlc3RpbmcgdGhhdCBjdXN0b20gYXR0cmlidXRlcyBvbiBr
ZXlzIHN1cnZpdmUgZ2FyYmFnZSBjb2xsZWN0aW9uLi4uCkluZGV4OiBMYXlvdXRUZXN0cy9jcnlw
dG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWdlbmVyYXRlLWtleS5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUt
a2V5Lmh0bWwJKHJldmlzaW9uIDE1OTI5NSkKKysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUv
cnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJhdGUta2V5Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEz
LDkgKzEzLDYgQEAgZGVzY3JpcHRpb24oIlRlc3QgZ2VuZXJhdGluZyBhbiBSU0Ega2V5IAogCiBq
c1Rlc3RJc0FzeW5jID0gdHJ1ZTsKIAotaWYgKCF3aW5kb3cuc3VidGxlKQotICAgIHdpbmRvdy5j
cnlwdG8uc3VidGxlID0gd2luZG93LmNyeXB0by53ZWJraXRTdWJ0bGU7Ci0KIHZhciBhbGdvcml0
aG1LZXlHZW4gPSB7CiAgICAgbmFtZTogIlJTQVNTQS1QS0NTMS12MV81IiwKICAgICAvLyBSc2FL
ZXlHZW5QYXJhbXMKQEAgLTMxLDEyICsyOCwxMiBAQCBjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5
KGFsZ29yaXRobUtleUdlCiAgICAgc2hvdWxkQmUoImtleVBhaXIucHVibGljS2V5LnR5cGUiLCAi
J3B1YmxpYyciKTsKICAgICBzaG91bGRCZSgia2V5UGFpci5wdWJsaWNLZXkuYWxnb3JpdGhtLm5h
bWUiLCAiJ3JzYXNzYS1wa2NzMS12MV81JyIpOwogICAgIHNob3VsZEJlKCJrZXlQYWlyLnB1Ymxp
Y0tleS5hbGdvcml0aG0ubW9kdWx1c0xlbmd0aCIsICIyMDQ4Iik7Ci0gICAgc2hvdWxkQmUoImJ5
dGVBcnJheVRvSGV4U3RyaW5nKGtleVBhaXIucHVibGljS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBv
bmVudCkiLCAiJ1swMSAwMCAwMV0nIik7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmco
a2V5UGFpci5wdWJsaWNLZXkuYWxnb3JpdGhtLnB1YmxpY0V4cG9uZW50KSIsICInMDEwMDAxJyIp
OwogICAgIHNob3VsZEJlVW5kZWZpbmVkKCJrZXlQYWlyLnB1YmxpY0tleS5hbGdvcml0aG0uaGFz
aCIpOwogICAgIHNob3VsZEJlKCJrZXlQYWlyLnByaXZhdGVLZXkudHlwZSIsICIncHJpdmF0ZSci
KTsKICAgICBzaG91bGRCZSgia2V5UGFpci5wcml2YXRlS2V5LmFsZ29yaXRobS5uYW1lIiwgIidy
c2Fzc2EtcGtjczEtdjFfNSciKTsKICAgICBzaG91bGRCZSgia2V5UGFpci5wcml2YXRlS2V5LmFs
Z29yaXRobS5tb2R1bHVzTGVuZ3RoIiwgIjIwNDgiKTsKLSAgICBzaG91bGRCZSgiYnl0ZUFycmF5
VG9IZXhTdHJpbmcoa2V5UGFpci5wcml2YXRlS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBvbmVudCki
LCAiJ1swMSAwMCAwMV0nIik7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcoa2V5UGFp
ci5wcml2YXRlS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBvbmVudCkiLCAiJzAxMDAwMSciKTsKICAg
ICBzaG91bGRCZVVuZGVmaW5lZCgia2V5UGFpci5wcml2YXRlS2V5LmFsZ29yaXRobS5oYXNoIik7
CiAKICAgICBkZWJ1ZygiXG5UZXN0aW5nIHRoYXQgY3VzdG9tIGF0dHJpYnV0ZXMgb24ga2V5cyBz
dXJ2aXZlIGdhcmJhZ2UgY29sbGVjdGlvbi4uLiIpOwpJbmRleDogTGF5b3V0VGVzdHMvY3J5cHRv
L3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBvcnQtandrLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9y
dC1qd2stZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAxNTkyOTUpCisrKyBMYXlvdXRUZXN0cy9jcnlw
dG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1qd2stZXhwZWN0ZWQudHh0CSh3b3Jr
aW5nIGNvcHkpCkBAIC05LDcgKzksNyBAQCBQQVNTIHB1YmxpY0tleS50eXBlIGlzICdwdWJsaWMn
CiBQQVNTIHB1YmxpY0tleS51c2FnZXMgaXMgWydzaWduJywndmVyaWZ5J10KIFBBU1MgcHVibGlj
S2V5LmFsZ29yaXRobS5uYW1lIGlzICdyc2Fzc2EtcGtjczEtdjFfNScKIFBBU1MgcHVibGljS2V5
LmFsZ29yaXRobS5tb2R1bHVzTGVuZ3RoIGlzIDIwNDgKLVBBU1MgYnl0ZUFycmF5VG9IZXhTdHJp
bmcocHVibGljS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBvbmVudCkgaXMgJ1swMSAwMCAwMV0nCitQ
QVNTIGJ5dGVzVG9IZXhTdHJpbmcocHVibGljS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBvbmVudCkg
aXMgJzAxMDAwMScKIFBBU1MgcHVibGljS2V5LmFsZ29yaXRobS5oYXNoLm5hbWUgaXMgJ3NoYS0y
NTYnCiAKIEltcG9ydGluZyBhIHByaXZhdGUga2V5Li4uCkBAIC0xOCw3ICsxOCw3IEBAIFBBU1Mg
cHJpdmF0ZUtleS50eXBlIGlzICdwcml2YXRlJwogUEFTUyBwcml2YXRlS2V5LnVzYWdlcyBpcyBb
J3NpZ24nLCd2ZXJpZnknXQogUEFTUyBwcml2YXRlS2V5LmFsZ29yaXRobS5uYW1lIGlzICdyc2Fz
c2EtcGtjczEtdjFfNScKIFBBU1MgcHJpdmF0ZUtleS5hbGdvcml0aG0ubW9kdWx1c0xlbmd0aCBp
cyAyMDQ4Ci1QQVNTIGJ5dGVBcnJheVRvSGV4U3RyaW5nKHByaXZhdGVLZXkuYWxnb3JpdGhtLnB1
YmxpY0V4cG9uZW50KSBpcyAnWzAxIDAwIDAxXScKK1BBU1MgYnl0ZXNUb0hleFN0cmluZyhwcml2
YXRlS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBvbmVudCkgaXMgJzAxMDAwMScKIFBBU1MgcHJpdmF0
ZUtleS5hbGdvcml0aG0uaGFzaC5uYW1lIGlzICdzaGEtMjU2JwogUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQogCkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYXNzYS1w
a2NzMS12MV81LWltcG9ydC1qd2suaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jcnlw
dG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWltcG9ydC1qd2suaHRtbAkocmV2aXNpb24gMTU5
Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1pbXBv
cnQtandrLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEzLDkgKzEzLDYgQEAgZGVzY3JpcHRpb24o
IlRlc3QgaW1wb3J0aW5nIGFuIFJTQSBrZXkgZgogCiBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKIAot
aWYgKCF3aW5kb3cuc3VidGxlKQotICAgIHdpbmRvdy5jcnlwdG8uc3VidGxlID0gd2luZG93LmNy
eXB0by53ZWJraXRTdWJ0bGU7Ci0KIHZhciBleHRyYWN0YWJsZSA9IHRydWU7CiAKIHZhciBwdWJs
aWNLZXlKU09OID0gewpAQCAtMzksMTcgKzM2LDE3IEBAIHZhciBwcml2YXRlS2V5SlNPTiA9IHsK
IH07CiAKIGRlYnVnKCJJbXBvcnRpbmcgYSBwdWJsaWMga2V5Li4uIik7Ci1jcnlwdG8uc3VidGxl
LmltcG9ydEtleSgiandrIiwgYXNjaWlUb0FycmF5QnVmZmVyKEpTT04uc3RyaW5naWZ5KHB1Ymxp
Y0tleUpTT04pKSwgbnVsbCwgZXh0cmFjdGFibGUsIFsic2lnbiIsICJ2ZXJpZnkiXSkudGhlbihm
dW5jdGlvbihyZXN1bHQpIHsKK2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRv
VWludDhBcnJheShKU09OLnN0cmluZ2lmeShwdWJsaWNLZXlKU09OKSksIG51bGwsIGV4dHJhY3Rh
YmxlLCBbInNpZ24iLCAidmVyaWZ5Il0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7CiAgICAgcHVi
bGljS2V5ID0gcmVzdWx0OwogICAgIHNob3VsZEJlKCJwdWJsaWNLZXkudG9TdHJpbmcoKSIsICIn
W29iamVjdCBLZXldJyIpOwogICAgIHNob3VsZEJlKCJwdWJsaWNLZXkudHlwZSIsICIncHVibGlj
JyIpOwogICAgIHNob3VsZEJlKCJwdWJsaWNLZXkudXNhZ2VzIiwgIlsnc2lnbicsJ3ZlcmlmeSdd
Iik7CiAgICAgc2hvdWxkQmUoInB1YmxpY0tleS5hbGdvcml0aG0ubmFtZSIsICIncnNhc3NhLXBr
Y3MxLXYxXzUnIik7CiAgICAgc2hvdWxkQmUoInB1YmxpY0tleS5hbGdvcml0aG0ubW9kdWx1c0xl
bmd0aCIsICIyMDQ4Iik7Ci0gICAgc2hvdWxkQmUoImJ5dGVBcnJheVRvSGV4U3RyaW5nKHB1Ymxp
Y0tleS5hbGdvcml0aG0ucHVibGljRXhwb25lbnQpIiwgIidbMDEgMDAgMDFdJyIpOworICAgIHNo
b3VsZEJlKCJieXRlc1RvSGV4U3RyaW5nKHB1YmxpY0tleS5hbGdvcml0aG0ucHVibGljRXhwb25l
bnQpIiwgIicwMTAwMDEnIik7CiAgICAgc2hvdWxkQmUoInB1YmxpY0tleS5hbGdvcml0aG0uaGFz
aC5uYW1lIiwgIidzaGEtMjU2JyIpOwogICAgIGRlYnVnKCJcbkltcG9ydGluZyBhIHByaXZhdGUg
a2V5Li4uIik7Ci0gICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2Np
aVRvQXJyYXlCdWZmZXIoSlNPTi5zdHJpbmdpZnkocHJpdmF0ZUtleUpTT04pKSwgbnVsbCwgZXh0
cmFjdGFibGUsIFsic2lnbiIsICJ2ZXJpZnkiXSk7CisgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUu
aW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvVWludDhBcnJheShKU09OLnN0cmluZ2lmeShwcml2YXRl
S2V5SlNPTikpLCBudWxsLCBleHRyYWN0YWJsZSwgWyJzaWduIiwgInZlcmlmeSJdKTsKIH0pLnRo
ZW4oZnVuY3Rpb24ocmVzdWx0KSB7CiAgICAgcHJpdmF0ZUtleSA9IHJlc3VsdDsKICAgICBzaG91
bGRCZSgicHJpdmF0ZUtleS50b1N0cmluZygpIiwgIidbb2JqZWN0IEtleV0nIik7CkBAIC01Nyw3
ICs1NCw3IEBAIGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXIKICAgICBz
aG91bGRCZSgicHJpdmF0ZUtleS51c2FnZXMiLCAiWydzaWduJywndmVyaWZ5J10iKTsKICAgICBz
aG91bGRCZSgicHJpdmF0ZUtleS5hbGdvcml0aG0ubmFtZSIsICIncnNhc3NhLXBrY3MxLXYxXzUn
Iik7CiAgICAgc2hvdWxkQmUoInByaXZhdGVLZXkuYWxnb3JpdGhtLm1vZHVsdXNMZW5ndGgiLCAi
MjA0OCIpOwotICAgIHNob3VsZEJlKCJieXRlQXJyYXlUb0hleFN0cmluZyhwcml2YXRlS2V5LmFs
Z29yaXRobS5wdWJsaWNFeHBvbmVudCkiLCAiJ1swMSAwMCAwMV0nIik7CisgICAgc2hvdWxkQmUo
ImJ5dGVzVG9IZXhTdHJpbmcocHJpdmF0ZUtleS5hbGdvcml0aG0ucHVibGljRXhwb25lbnQpIiwg
IicwMTAwMDEnIik7CiAgICAgc2hvdWxkQmUoInByaXZhdGVLZXkuYWxnb3JpdGhtLmhhc2gubmFt
ZSIsICInc2hhLTI1NiciKTsKICAgICBmaW5pc2hKU1Rlc3QoKTsKIH0pOwpJbmRleDogTGF5b3V0
VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1zaWduLXZlcmlmeS1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtj
czEtdjFfNS1zaWduLXZlcmlmeS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDE1OTI5NSkKKysrIExh
eW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtc2lnbi12ZXJpZnktZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC04LDcgKzgsNyBAQCBJbXBvcnRpbmcgYSBwdWJs
aWMga2V5Li4uCiBJbXBvcnRpbmcgYSBwcml2YXRlIGtleS4uLgogCiBTaWduaW5nIHNvbWUgdGV4
dC4uLgotUEFTUyBieXRlQXJyYXlUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShzaWduYXR1cmUp
KSBpcyAnWzBmIGQ5IGE4IGFlIGY0IGNjIDE4IDc2IGMwIGI3IDYyIDU0IDUzIDM2IGM2IGQxIGZi
IDMxIDVhIGUxIDZhIGU0IGI1IGU0IGJmIDM0IGQzIDg0IGQ4IDU4IDVlIGE3IGEwIDFlIDc2IGVh
IDA5IGVlIDdmIDdlIGU4IGQxIGMxIDIyIGU3IGRkIDE1IGI3IGM5IDRhIDU3IDNiIDJhIGEwIDcy
IDAzIGU4IGQxIDNiIGM2IGZkIDE2IDE1IDZjIGQ4IGU1IGYwIGMxIDVhIDE1IGRjIGNiIDYyIGQx
IDUyIDEyIDdmIGNhIDA5IDg4IDJmIGI1IDNiIGMzIGU2IDBhIGI1IDg2IGQxIDViIDk1IGNmIDQx
IDFlIDNhIGFiIDRhIDFjIDIzIDFhIDdlIDkxIGFhIGIwIDllIGUzIGQ0IGIxIDNkIDExIGU5IDc1
IDA1IGRkIGZmIDc3IDY4IDM0IDcwIGRhIDUxIDBlIGU3IDZlIDhiIGQ1IDMwIGM1IDZhIDg1IGY5
IDAxIDYyIDZhIDVhIDcxIDBmIDcxIDZmIDExIDNkIGZlIDljIGY2IGM0IDczIGVlIDE2IGZhIDI0
IDhhIGVhIDM0IDgwIGExIDAzIDNhIGJlIDMwIGY0IGMxIDI0IDMyIDg5IGE2IDYxIGU2IDRkIDc4
IDE4IGI1IDU2IDk4IDI4IDA2IDg4IDA5IDcxIDM1IDk2IDhjIDZkIDRiIDAyIDk0IDk2IGQ4IDVj
IGFiIDJhIDY3IGU0IDY5IDY3IDM3IDc4IDFmIDcwIGU0IDM5IDJjIDdkIGY3IDFiIGJkIDZjIDky
IDQ2IDU5IDQ3IGYwIDI5IGExIGRlIDQ4IDE2IDBhIGNlIGQxIDFiIDU3IDIxIGIxIGNkIDI1IDAz
IDlmIGUyIGMxIDZjIDJiIDM4IGRlIDczIGRmIDNiIDlhIDgzIGUzIGVhIDc1IDVmIGQwIGNmIGU1
IDFjIGEwIDZiIDYxIGZhIGRmIDZkIDg0IDY3IDdmIDk1XScKK1BBU1MgYnl0ZXNUb0hleFN0cmlu
ZyhuZXcgVWludDhBcnJheShzaWduYXR1cmUpKSBpcyAnMGZkOWE4YWVmNGNjMTg3NmMwYjc2MjU0
NTMzNmM2ZDFmYjMxNWFlMTZhZTRiNWU0YmYzNGQzODRkODU4NWVhN2EwMWU3NmVhMDllZTdmN2Vl
OGQxYzEyMmU3ZGQxNWI3Yzk0YTU3M2IyYWEwNzIwM2U4ZDEzYmM2ZmQxNjE1NmNkOGU1ZjBjMTVh
MTVkY2NiNjJkMTUyMTI3ZmNhMDk4ODJmYjUzYmMzZTYwYWI1ODZkMTViOTVjZjQxMWUzYWFiNGEx
YzIzMWE3ZTkxYWFiMDllZTNkNGIxM2QxMWU5NzUwNWRkZmY3NzY4MzQ3MGRhNTEwZWU3NmU4YmQ1
MzBjNTZhODVmOTAxNjI2YTVhNzEwZjcxNmYxMTNkZmU5Y2Y2YzQ3M2VlMTZmYTI0OGFlYTM0ODBh
MTAzM2FiZTMwZjRjMTI0MzI4OWE2NjFlNjRkNzgxOGI1NTY5ODI4MDY4ODA5NzEzNTk2OGM2ZDRi
MDI5NDk2ZDg1Y2FiMmE2N2U0Njk2NzM3NzgxZjcwZTQzOTJjN2RmNzFiYmQ2YzkyNDY1OTQ3ZjAy
OWExZGU0ODE2MGFjZWQxMWI1NzIxYjFjZDI1MDM5ZmUyYzE2YzJiMzhkZTczZGYzYjlhODNlM2Vh
NzU1ZmQwY2ZlNTFjYTA2YjYxZmFkZjZkODQ2NzdmOTUnCiAKIFZlcmlmeWluZyB0aGUgc2lnbmF0
dXJlLi4uCiBQQVNTIHZlcmlmaWNhdGlvblJlc3VsdCBpcyB0cnVlCkluZGV4OiBMYXlvdXRUZXN0
cy9jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LXNpZ24tdmVyaWZ5Lmh0bWwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1zaWdu
LXZlcmlmeS5odG1sCShyZXZpc2lvbiAxNTkyOTUpCisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3Vi
dGxlL3JzYXNzYS1wa2NzMS12MV81LXNpZ24tdmVyaWZ5Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTEzLDQ1ICsxMyw0MiBAQCBkZXNjcmlwdGlvbigiVGVzdCBpbXBvcnRpbmcgYW4gUlNBIGtleSBm
CiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAoIXdpbmRvdy5zdWJ0bGUpCi0gICAgd2lu
ZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRvLndlYmtpdFN1YnRsZTsKLQogdmFyIGV4
dHJhY3RhYmxlID0gdHJ1ZTsKIAogdmFyIHB1YmxpY0tleUpTT04gPSB7CiAgICAga3R5OiAiUlNB
IiwKICAgICBhbGc6ICJSUzI1NiIsCi0gICAgbjogQmFzZTY0VVJMLnN0cmluZ2lmeShoZXhUb0Fy
cmF5QnVmZmVyKCJBREMwOTQwQUZFQ0U3MzUxRDU2QTZENDMyMjEwQjNBQTQ5RDM4NTY2QjAzQTlG
MTAyRTRGMTk4QjJEQTlENzQwNzI4RDAxNDI2QTNBMDU4QjJCODA1QTVGOTFENTY1RDk2OUZFMzE4
QUQyRDFBREE3MTNGNUE4MjlDQzhDRENGOEM2Q0I0ODcyMDY4MTY0MDYzQjZENjUxQTIyMjZDQjk3
RUQ2N0UwRkM2QzcwMkE0NzNEQjJENzlBNzMwRjg3MzgwODRBMkVFRDc0OTIyQzNBMTE5RDFEMTAx
QjkzMkMwRTEwRkFCMzY4MTVGNjZDMDc5MkJCNjQwQjFCNEM1OUQwNjJGQkJFREFCM0NDMDY5QTUz
NTE5NUQ3MEU0QTA2NDMyQ0FGMTQ5QzI0QTAwMzUzQTBCOTlGN0NGNUIxNzI3M0NCNEUzODQyMUJE
MzE1MTI3Q0Y0QjNEQ0IzRDIwQTdDOThDRkFGMUEwRTM5OEE1NUUzNDdGQTI4M0NFN0IzOTI3MzI1
OUIxQjIxMzJEQzE4QjBFQjhBQUU5Rjc4RUU1MjUzNTZCMDlERjM5RTA5MEU3NkQ3OTg1QjJCNzFF
NTBBRjg1Q0EzNkNFOTFGOENDQjJBQkJEOEE1MjlEMzY5ODkwRDk4QTJDQTI4MjVDNEMyRkY4QjdG
QkYwOUU3OUMwQiIpKSwKLSAgICBlOiBCYXNlNjRVUkwuc3RyaW5naWZ5KGhleFRvQXJyYXlCdWZm
ZXIoIjAxMDAwMSIpKSwKKyAgICBuOiBCYXNlNjRVUkwuc3RyaW5naWZ5KGhleFN0cmluZ1RvVWlu
dDhBcnJheSgiQURDMDk0MEFGRUNFNzM1MUQ1NkE2RDQzMjIxMEIzQUE0OUQzODU2NkIwM0E5RjEw
MkU0RjE5OEIyREE5RDc0MDcyOEQwMTQyNkEzQTA1OEIyQjgwNUE1RjkxRDU2NUQ5NjlGRTMxOEFE
MkQxQURBNzEzRjVBODI5Q0M4Q0RDRjhDNkNCNDg3MjA2ODE2NDA2M0I2RDY1MUEyMjI2Q0I5N0VE
NjdFMEZDNkM3MDJBNDczREIyRDc5QTczMEY4NzM4MDg0QTJFRUQ3NDkyMkMzQTExOUQxRDEwMUI5
MzJDMEUxMEZBQjM2ODE1RjY2QzA3OTJCQjY0MEIxQjRDNTlEMDYyRkJCRURBQjNDQzA2OUE1MzUx
OTVENzBFNEEwNjQzMkNBRjE0OUMyNEEwMDM1M0EwQjk5RjdDRjVCMTcyNzNDQjRFMzg0MjFCRDMx
NTEyN0NGNEIzRENCM0QyMEE3Qzk4Q0ZBRjFBMEUzOThBNTVFMzQ3RkEyODNDRTdCMzkyNzMyNTlC
MUIyMTMyREMxOEIwRUI4QUFFOUY3OEVFNTI1MzU2QjA5REYzOUUwOTBFNzZENzk4NUIyQjcxRTUw
QUY4NUNBMzZDRTkxRjhDQ0IyQUJCRDhBNTI5RDM2OTg5MEQ5OEEyQ0EyODI1QzRDMkZGOEI3RkJG
MDlFNzlDMEIiKSksCisgICAgZTogQmFzZTY0VVJMLnN0cmluZ2lmeShoZXhTdHJpbmdUb1VpbnQ4
QXJyYXkoIjAxMDAwMSIpKSwKIH07CiAKIHZhciBwcml2YXRlS2V5SlNPTiA9IHsKICAgICBrdHk6
ICJSU0EiLAogICAgIGFsZzogIlJTMjU2IiwKLSAgICBuOiBCYXNlNjRVUkwuc3RyaW5naWZ5KGhl
eFRvQXJyYXlCdWZmZXIoIkFEQzA5NDBBRkVDRTczNTFENTZBNkQ0MzIyMTBCM0FBNDlEMzg1NjZC
MDNBOUYxMDJFNEYxOThCMkRBOUQ3NDA3MjhEMDE0MjZBM0EwNThCMkI4MDVBNUY5MUQ1NjVEOTY5
RkUzMThBRDJEMUFEQTcxM0Y1QTgyOUNDOENEQ0Y4QzZDQjQ4NzIwNjgxNjQwNjNCNkQ2NTFBMjIy
NkNCOTdFRDY3RTBGQzZDNzAyQTQ3M0RCMkQ3OUE3MzBGODczODA4NEEyRUVENzQ5MjJDM0ExMTlE
MUQxMDFCOTMyQzBFMTBGQUIzNjgxNUY2NkMwNzkyQkI2NDBCMUI0QzU5RDA2MkZCQkVEQUIzQ0Mw
NjlBNTM1MTk1RDcwRTRBMDY0MzJDQUYxNDlDMjRBMDAzNTNBMEI5OUY3Q0Y1QjE3MjczQ0I0RTM4
NDIxQkQzMTUxMjdDRjRCM0RDQjNEMjBBN0M5OENGQUYxQTBFMzk4QTU1RTM0N0ZBMjgzQ0U3QjM5
MjczMjU5QjFCMjEzMkRDMThCMEVCOEFBRTlGNzhFRTUyNTM1NkIwOURGMzlFMDkwRTc2RDc5ODVC
MkI3MUU1MEFGODVDQTM2Q0U5MUY4Q0NCMkFCQkQ4QTUyOUQzNjk4OTBEOThBMkNBMjgyNUM0QzJG
RjhCN0ZCRjA5RTc5QzBCIikpLAotICAgIGU6IEJhc2U2NFVSTC5zdHJpbmdpZnkoaGV4VG9BcnJh
eUJ1ZmZlcigiMDEwMDAxIikpLAotICAgIGQ6IEJhc2U2NFVSTC5zdHJpbmdpZnkoaGV4VG9BcnJh
eUJ1ZmZlcigiNzhEMkQyREZCNjgyQ0ZCNDU3NDhEM0MzRkMzQjRCMDQ5RUEzRTUzRjFDNEIxNzcz
NDQxMEEzM0RBMjNBNTlDMUFBMjY5RDdBOTZBREQ0NEYwQkE4MENCMDJBOTQwRjY4MTk4OUI2REZD
NzZDMjE2QTZFQjlDM0ZGOTUwQjVCNTlFRkJCNEE5QzY4MjNBRkVGOTk4MTlGRUQ4NTU0MUVGRDdF
MEM1RjZBODhFOTkyQUNDOTlEQzRDOUQ1M0IzNjE3NjNDNDVBNEZBQjYxM0UzOUZGMjc5NzFGMkQ1
REIxMjNGMkYwQjJCMzJEOUE5NzUyQzhEOTYwNUY0Q0QzNTIxQzJEQjlBODYwMDBBMzA0MEExNjIz
MUY2MTI3OEM3NzQ3QzNBQjE4REJFQzAwQTVENzEwMjNCNTBCMTM0QTI4RTUxQ0RCNDE5QTY2QkEx
NzBERjYxODgxNzM0MkY3ODYxMTc0QUE4RTc0OTlCOTc0REJGRUI5RkM2NDNCMEU5NTY0NUMxQzRE
ODExMDRCQ0U1M0RBNkU2Q0YzMUI2QTAwODVGNzlGMkUwNjI2NDgyRDY4QTVBMEE0NUM0RUFGNDU2
NDBENThEMkY4RTUxNjRENjQ1NjBDREVFQTA5ODIxMzhDQTg2N0E4NzBDRDAxQTYzNzQyODQ3QUNG
M0E1MTZGNDkiKSksCi0gICAgcDogQmFzZTY0VVJMLnN0cmluZ2lmeShoZXhUb0FycmF5QnVmZmVy
KCJFMjY4OTNCODA4Q0EzMUUxRjlCODlFNEEwNzdGN0I0MTRDMjE2RTQ2MDQ4MTI2REMwMzY5QTI3
RTY0QTRCQzREQjREN0M4MUJFNzlBQTQwNDcyQjU3OTVBRjI3RjVGRTZFMzcyQ0Q5NUNFOEVGREE5
M0E4MUZDREQ2NDg2NkY0QjkzNDIxQTMzRTVEMkFEM0RBNjU1MjlCQkNBODUzOTJCMjkwNzAwM0FF
RUExODdFRkE5NDU5NTkyRTdGRERFMzI4MjU0QkJDMUYyRUJCQjhGRjk2MkNGMkEyQ0JCM0UwRUE1
NEJCRTJDMjlBMkMzQTdDQjI1QUFDMENFNDA1RTlEIikpLAotICAgIHE6IEJhc2U2NFVSTC5zdHJp
bmdpZnkoaGV4VG9BcnJheUJ1ZmZlcigiQzQ3NjJCQ0U0OEFGQjY2OUYzRkVDMTlDODY3NTg2NzM0
QUJFQTQzM0E0MkEyNzI5QjUxQTZGREE5MzA1MjA4NUYxOUM1NUY5NjhDNzg0NUM4NjYzNTZFOEQ3
QjcwNTMyRDU0OTQ1MjBERDg2NjQ5NEFGQ0I5Mjg5RUZEOUFFRkQ3QzhEOUM1MUNDQ0RFNzQ3Rjgw
RERFN0I3QkJDODc1NTE0QUQ5MTdFQkQ0QkI1RkRFRTE0RkYxRUJCMzRERDVENzlEQ0Q0NDhBQ0E3
MzdCQTQ1OTc3M0E0QjkyODRDMDU2MTk1RjlDQzMzMzhGNzVDNTQwN0Q1Qjk5OTcxNTBDNyIpKSwK
LSAgICBkcDogQmFzZTY0VVJMLnN0cmluZ2lmeShoZXhUb0FycmF5QnVmZmVyKCI3QzFDQzNDRDgw
RDQwNjYwNTAxQThBN0IxRTdEMURCREZGRDNEQkI1N0E0NkFBNUNCNTZBMzRFRjgwOTA2NUMxNUIz
RjY2QUQxNTVCNEE0QTNERUY4OTY0RjdDNjI3NzY1NDdDREM4MjIwQzc3NUZBNENERTcxMTU5NDQz
QjVDMzAyMjg5QzYwOTJCREQ4QzYxMEU2NjI4ODU1NEU4RUI2NDAzOTVDNDBGMjBCOEU4RjJDODVC
RUE2RDc5MUVEM0E1NzAzQzgyMTVCREYyOUU0OTREQjNCQTE2Q0ZGRkZENkRCN0ExN0Y3RjFBMzBF
MEE2RjZDNjg5QzY0RjQxODY5IikpLAotICAgIGRxOiBCYXNlNjRVUkwuc3RyaW5naWZ5KGhleFRv
QXJyYXlCdWZmZXIoIjhFNjEzNjBFMjIwRjc2MUMwMzgwQjVDMDQyOTIxQTA2QTQzQ0Q1QjNCNzVE
RjU1M0ZDQjQ1NDJDMEMzMEMzMDk0RkI5MDU3NUUzQzFGNEUzMzk2MUY1MzI3QTYzNjE5OTFEOEEy
NDU3NTUzNDc4RTA2OTI3MTdFNDZGQjc0QjYyREE0OUE2RTg4MThEMTdGOEM4ODUwNEEwNjk2NDkw
OEZEMDk0OTlDNTQ4NUFGRTYyMzE5MTc1RjM0N0E5NjA2NEM2NTQ4QzY0QkVGQkQxMUY2NjIwMDRF
Nzc0NjkwN0VGM0U3MUZBQkY0QUMwMTY0NTBCODE0MjFCNjg2MEZGMzEiKSksCi0gICAgcWk6IEJh
c2U2NFVSTC5zdHJpbmdpZnkoaGV4VG9BcnJheUJ1ZmZlcigiNjAyNUZGQTRCQzFCMzAxMDM1NEUx
NTQ3RDE2NzMwOUE3Q0FEQThENzJCMzAyMTMwNEU2RUMxQzgwRDlFNTNBOUQ2NkQwQUQ0MkVGN0ZC
OUJERkU0Q0RGMkQ0NzIzQjI3QTQwNTY1MDUwMUI5MjRDNUNDQ0I0NEFBRTI5QjcwNkYyQzJDNkI5
Rjg2RjBBMDBFMzhFNDc2MkY3QkY4ODQyRjg0Q0FDRjVGQjYwMTRDRkY3OEI0QTM4RDFFNzkwMUY4
NkY3ODVBM0RCOUVEQUM4NzhDODNDMjMzOTRFQjk1NjBBN0ZERkI2NDJFMjgzQTE2NzkxNzVERUNE
QjFEQzUzOSIpKQorICAgIG46IEJhc2U2NFVSTC5zdHJpbmdpZnkoaGV4U3RyaW5nVG9VaW50OEFy
cmF5KCJBREMwOTQwQUZFQ0U3MzUxRDU2QTZENDMyMjEwQjNBQTQ5RDM4NTY2QjAzQTlGMTAyRTRG
MTk4QjJEQTlENzQwNzI4RDAxNDI2QTNBMDU4QjJCODA1QTVGOTFENTY1RDk2OUZFMzE4QUQyRDFB
REE3MTNGNUE4MjlDQzhDRENGOEM2Q0I0ODcyMDY4MTY0MDYzQjZENjUxQTIyMjZDQjk3RUQ2N0Uw
RkM2QzcwMkE0NzNEQjJENzlBNzMwRjg3MzgwODRBMkVFRDc0OTIyQzNBMTE5RDFEMTAxQjkzMkMw
RTEwRkFCMzY4MTVGNjZDMDc5MkJCNjQwQjFCNEM1OUQwNjJGQkJFREFCM0NDMDY5QTUzNTE5NUQ3
MEU0QTA2NDMyQ0FGMTQ5QzI0QTAwMzUzQTBCOTlGN0NGNUIxNzI3M0NCNEUzODQyMUJEMzE1MTI3
Q0Y0QjNEQ0IzRDIwQTdDOThDRkFGMUEwRTM5OEE1NUUzNDdGQTI4M0NFN0IzOTI3MzI1OUIxQjIx
MzJEQzE4QjBFQjhBQUU5Rjc4RUU1MjUzNTZCMDlERjM5RTA5MEU3NkQ3OTg1QjJCNzFFNTBBRjg1
Q0EzNkNFOTFGOENDQjJBQkJEOEE1MjlEMzY5ODkwRDk4QTJDQTI4MjVDNEMyRkY4QjdGQkYwOUU3
OUMwQiIpKSwKKyAgICBlOiBCYXNlNjRVUkwuc3RyaW5naWZ5KGhleFN0cmluZ1RvVWludDhBcnJh
eSgiMDEwMDAxIikpLAorICAgIGQ6IEJhc2U2NFVSTC5zdHJpbmdpZnkoaGV4U3RyaW5nVG9VaW50
OEFycmF5KCI3OEQyRDJERkI2ODJDRkI0NTc0OEQzQzNGQzNCNEIwNDlFQTNFNTNGMUM0QjE3NzM0
NDEwQTMzREEyM0E1OUMxQUEyNjlEN0E5NkFERDQ0RjBCQTgwQ0IwMkE5NDBGNjgxOTg5QjZERkM3
NkMyMTZBNkVCOUMzRkY5NTBCNUI1OUVGQkI0QTlDNjgyM0FGRUY5OTgxOUZFRDg1NTQxRUZEN0Uw
QzVGNkE4OEU5OTJBQ0M5OURDNEM5RDUzQjM2MTc2M0M0NUE0RkFCNjEzRTM5RkYyNzk3MUYyRDVE
QjEyM0YyRjBCMkIzMkQ5QTk3NTJDOEQ5NjA1RjRDRDM1MjFDMkRCOUE4NjAwMEEzMDQwQTE2MjMx
RjYxMjc4Qzc3NDdDM0FCMThEQkVDMDBBNUQ3MTAyM0I1MEIxMzRBMjhFNTFDREI0MTlBNjZCQTE3
MERGNjE4ODE3MzQyRjc4NjExNzRBQThFNzQ5OUI5NzREQkZFQjlGQzY0M0IwRTk1NjQ1QzFDNEQ4
MTEwNEJDRTUzREE2RTZDRjMxQjZBMDA4NUY3OUYyRTA2MjY0ODJENjhBNUEwQTQ1QzRFQUY0NTY0
MEQ1OEQyRjhFNTE2NEQ2NDU2MENERUVBMDk4MjEzOENBODY3QTg3MENEMDFBNjM3NDI4NDdBQ0Yz
QTUxNkY0OSIpKSwKKyAgICBwOiBCYXNlNjRVUkwuc3RyaW5naWZ5KGhleFN0cmluZ1RvVWludDhB
cnJheSgiRTI2ODkzQjgwOENBMzFFMUY5Qjg5RTRBMDc3RjdCNDE0QzIxNkU0NjA0ODEyNkRDMDM2
OUEyN0U2NEE0QkM0REI0RDdDODFCRTc5QUE0MDQ3MkI1Nzk1QUYyN0Y1RkU2RTM3MkNEOTVDRThF
RkRBOTNBODFGQ0RENjQ4NjZGNEI5MzQyMUEzM0U1RDJBRDNEQTY1NTI5QkJDQTg1MzkyQjI5MDcw
MDNBRUVBMTg3RUZBOTQ1OTU5MkU3RkRERTMyODI1NEJCQzFGMkVCQkI4RkY5NjJDRjJBMkNCQjNF
MEVBNTRCQkUyQzI5QTJDM0E3Q0IyNUFBQzBDRTQwNUU5RCIpKSwKKyAgICBxOiBCYXNlNjRVUkwu
c3RyaW5naWZ5KGhleFN0cmluZ1RvVWludDhBcnJheSgiQzQ3NjJCQ0U0OEFGQjY2OUYzRkVDMTlD
ODY3NTg2NzM0QUJFQTQzM0E0MkEyNzI5QjUxQTZGREE5MzA1MjA4NUYxOUM1NUY5NjhDNzg0NUM4
NjYzNTZFOEQ3QjcwNTMyRDU0OTQ1MjBERDg2NjQ5NEFGQ0I5Mjg5RUZEOUFFRkQ3QzhEOUM1MUND
Q0RFNzQ3RjgwRERFN0I3QkJDODc1NTE0QUQ5MTdFQkQ0QkI1RkRFRTE0RkYxRUJCMzRERDVENzlE
Q0Q0NDhBQ0E3MzdCQTQ1OTc3M0E0QjkyODRDMDU2MTk1RjlDQzMzMzhGNzVDNTQwN0Q1Qjk5OTcx
NTBDNyIpKSwKKyAgICBkcDogQmFzZTY0VVJMLnN0cmluZ2lmeShoZXhTdHJpbmdUb1VpbnQ4QXJy
YXkoIjdDMUNDM0NEODBENDA2NjA1MDFBOEE3QjFFN0QxREJERkZEM0RCQjU3QTQ2QUE1Q0I1NkEz
NEVGODA5MDY1QzE1QjNGNjZBRDE1NUI0QTRBM0RFRjg5NjRGN0M2Mjc3NjU0N0NEQzgyMjBDNzc1
RkE0Q0RFNzExNTk0NDNCNUMzMDIyODlDNjA5MkJERDhDNjEwRTY2Mjg4NTU0RThFQjY0MDM5NUM0
MEYyMEI4RThGMkM4NUJFQTZENzkxRUQzQTU3MDNDODIxNUJERjI5RTQ5NERCM0JBMTZDRkZGRkQ2
REI3QTE3RjdGMUEzMEUwQTZGNkM2ODlDNjRGNDE4NjkiKSksCisgICAgZHE6IEJhc2U2NFVSTC5z
dHJpbmdpZnkoaGV4U3RyaW5nVG9VaW50OEFycmF5KCI4RTYxMzYwRTIyMEY3NjFDMDM4MEI1QzA0
MjkyMUEwNkE0M0NENUIzQjc1REY1NTNGQ0I0NTQyQzBDMzBDMzA5NEZCOTA1NzVFM0MxRjRFMzM5
NjFGNTMyN0E2MzYxOTkxRDhBMjQ1NzU1MzQ3OEUwNjkyNzE3RTQ2RkI3NEI2MkRBNDlBNkU4ODE4
RDE3RjhDODg1MDRBMDY5NjQ5MDhGRDA5NDk5QzU0ODVBRkU2MjMxOTE3NUYzNDdBOTYwNjRDNjU0
OEM2NEJFRkJEMTFGNjYyMDA0RTc3NDY5MDdFRjNFNzFGQUJGNEFDMDE2NDUwQjgxNDIxQjY4NjBG
RjMxIikpLAorICAgIHFpOiBCYXNlNjRVUkwuc3RyaW5naWZ5KGhleFN0cmluZ1RvVWludDhBcnJh
eSgiNjAyNUZGQTRCQzFCMzAxMDM1NEUxNTQ3RDE2NzMwOUE3Q0FEQThENzJCMzAyMTMwNEU2RUMx
QzgwRDlFNTNBOUQ2NkQwQUQ0MkVGN0ZCOUJERkU0Q0RGMkQ0NzIzQjI3QTQwNTY1MDUwMUI5MjRD
NUNDQ0I0NEFBRTI5QjcwNkYyQzJDNkI5Rjg2RjBBMDBFMzhFNDc2MkY3QkY4ODQyRjg0Q0FDRjVG
QjYwMTRDRkY3OEI0QTM4RDFFNzkwMUY4NkY3ODVBM0RCOUVEQUM4NzhDODNDMjMzOTRFQjk1NjBB
N0ZERkI2NDJFMjgzQTE2NzkxNzVERUNEQjFEQzUzOSIpKQogfTsKIAotdmFyIGRhdGEgPSBhc2Np
aVRvQXJyYXlCdWZmZXIoIkhlbGxvLCB3b3JsZCEiKTsKK3ZhciBkYXRhID0gYXNjaWlUb1VpbnQ4
QXJyYXkoIkhlbGxvLCB3b3JsZCEiKTsKIAogZGVidWcoIkltcG9ydGluZyBhIHB1YmxpYyBrZXku
Li4iKTsKLWNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBhc2NpaVRvQXJyYXlCdWZmZXIo
SlNPTi5zdHJpbmdpZnkocHVibGljS2V5SlNPTikpLCBudWxsLCBleHRyYWN0YWJsZSwgWyJzaWdu
IiwgInZlcmlmeSJdKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgeworY3J5cHRvLnN1YnRsZS5pbXBv
cnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5KEpTT04uc3RyaW5naWZ5KHB1YmxpY0tleUpT
T04pKSwgbnVsbCwgZXh0cmFjdGFibGUsIFsic2lnbiIsICJ2ZXJpZnkiXSkudGhlbihmdW5jdGlv
bihyZXN1bHQpIHsKICAgICBwdWJsaWNLZXkgPSByZXN1bHQ7CiAgICAgZGVidWcoIlxuSW1wb3J0
aW5nIGEgcHJpdmF0ZSBrZXkuLi4iKTsKLSAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5pbXBvcnRL
ZXkoImp3ayIsIGFzY2lpVG9BcnJheUJ1ZmZlcihKU09OLnN0cmluZ2lmeShwcml2YXRlS2V5SlNP
TikpLCBudWxsLCBleHRyYWN0YWJsZSwgWyJzaWduIiwgInZlcmlmeSJdKTsKKyAgICByZXR1cm4g
Y3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGFzY2lpVG9VaW50OEFycmF5KEpTT04uc3Ry
aW5naWZ5KHByaXZhdGVLZXlKU09OKSksIG51bGwsIGV4dHJhY3RhYmxlLCBbInNpZ24iLCAidmVy
aWZ5Il0pOwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKICAgICBwcml2YXRlS2V5ID0gcmVz
dWx0OwogICAgIGRlYnVnKCJcblNpZ25pbmcgc29tZSB0ZXh0Li4uIik7CiAgICAgcmV0dXJuIGNy
eXB0by5zdWJ0bGUuc2lnbih7IG5hbWU6ICJSU0FTU0EtUEtDUzEtdjFfNSIsIGhhc2g6ICJTSEEt
MjU2IiB9LCBwcml2YXRlS2V5LCBbZGF0YV0pOwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsK
ICAgICBzaWduYXR1cmUgPSByZXN1bHQ7Ci0gICAgc2hvdWxkQmUoImJ5dGVBcnJheVRvSGV4U3Ry
aW5nKG5ldyBVaW50OEFycmF5KHNpZ25hdHVyZSkpIiwgIidbMGYgZDkgYTggYWUgZjQgY2MgMTgg
NzYgYzAgYjcgNjIgNTQgNTMgMzYgYzYgZDEgZmIgMzEgNWEgZTEgNmEgZTQgYjUgZTQgYmYgMzQg
ZDMgODQgZDggNTggNWUgYTcgYTAgMWUgNzYgZWEgMDkgZWUgN2YgN2UgZTggZDEgYzEgMjIgZTcg
ZGQgMTUgYjcgYzkgNGEgNTcgM2IgMmEgYTAgNzIgMDMgZTggZDEgM2IgYzYgZmQgMTYgMTUgNmMg
ZDggZTUgZjAgYzEgNWEgMTUgZGMgY2IgNjIgZDEgNTIgMTIgN2YgY2EgMDkgODggMmYgYjUgM2Ig
YzMgZTYgMGEgYjUgODYgZDEgNWIgOTUgY2YgNDEgMWUgM2EgYWIgNGEgMWMgMjMgMWEgN2UgOTEg
YWEgYjAgOWUgZTMgZDQgYjEgM2QgMTEgZTkgNzUgMDUgZGQgZmYgNzcgNjggMzQgNzAgZGEgNTEg
MGUgZTcgNmUgOGIgZDUgMzAgYzUgNmEgODUgZjkgMDEgNjIgNmEgNWEgNzEgMGYgNzEgNmYgMTEg
M2QgZmUgOWMgZjYgYzQgNzMgZWUgMTYgZmEgMjQgOGEgZWEgMzQgODAgYTEgMDMgM2EgYmUgMzAg
ZjQgYzEgMjQgMzIgODkgYTYgNjEgZTYgNGQgNzggMTggYjUgNTYgOTggMjggMDYgODggMDkgNzEg
MzUgOTYgOGMgNmQgNGIgMDIgOTQgOTYgZDggNWMgYWIgMmEgNjcgZTQgNjkgNjcgMzcgNzggMWYg
NzAgZTQgMzkgMmMgN2QgZjcgMWIgYmQgNmMgOTIgNDYgNTkgNDcgZjAgMjkgYTEgZGUgNDggMTYg
MGEgY2UgZDEgMWIgNTcgMjEgYjEgY2QgMjUgMDMgOWYgZTIgYzEgNmMgMmIgMzggZGUgNzMgZGYg
M2IgOWEgODMgZTMgZWEgNzUgNWYgZDAgY2YgZTUgMWMgYTAgNmIgNjEgZmEgZGYgNmQgODQgNjcg
N2YgOTVdJyIpOworICAgIHNob3VsZEJlKCJieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5
KHNpZ25hdHVyZSkpIiwgIicwZmQ5YThhZWY0Y2MxODc2YzBiNzYyNTQ1MzM2YzZkMWZiMzE1YWUx
NmFlNGI1ZTRiZjM0ZDM4NGQ4NTg1ZWE3YTAxZTc2ZWEwOWVlN2Y3ZWU4ZDFjMTIyZTdkZDE1Yjdj
OTRhNTczYjJhYTA3MjAzZThkMTNiYzZmZDE2MTU2Y2Q4ZTVmMGMxNWExNWRjY2I2MmQxNTIxMjdm
Y2EwOTg4MmZiNTNiYzNlNjBhYjU4NmQxNWI5NWNmNDExZTNhYWI0YTFjMjMxYTdlOTFhYWIwOWVl
M2Q0YjEzZDExZTk3NTA1ZGRmZjc3NjgzNDcwZGE1MTBlZTc2ZThiZDUzMGM1NmE4NWY5MDE2MjZh
NWE3MTBmNzE2ZjExM2RmZTljZjZjNDczZWUxNmZhMjQ4YWVhMzQ4MGExMDMzYWJlMzBmNGMxMjQz
Mjg5YTY2MWU2NGQ3ODE4YjU1Njk4MjgwNjg4MDk3MTM1OTY4YzZkNGIwMjk0OTZkODVjYWIyYTY3
ZTQ2OTY3Mzc3ODFmNzBlNDM5MmM3ZGY3MWJiZDZjOTI0NjU5NDdmMDI5YTFkZTQ4MTYwYWNlZDEx
YjU3MjFiMWNkMjUwMzlmZTJjMTZjMmIzOGRlNzNkZjNiOWE4M2UzZWE3NTVmZDBjZmU1MWNhMDZi
NjFmYWRmNmQ4NDY3N2Y5NSciKTsKIAogICAgIGRlYnVnKCJcblZlcmlmeWluZyB0aGUgc2lnbmF0
dXJlLi4uIik7CiAgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUudmVyaWZ5KHsgbmFtZTogIlJTQVNT
QS1QS0NTMS12MV81IiwgaGFzaDogIlNIQS0yNTYiIH0sIHB1YmxpY0tleSwgc2lnbmF0dXJlLCBb
ZGF0YV0pOwpJbmRleDogTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEtMS1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEtMS1leHBlY3Rl
ZC50eHQJKHJldmlzaW9uIDE1OTI5NSkKKysrIExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvc2hh
LTEtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC00LDEzICs0LDEzIEBAIE9uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEEKIAogCiBTSEExIG9mIFtdCi0gICAgPSBb
ZGEgMzkgYTMgZWUgNWUgNmIgNGIgMGQgMzIgNTUgYmYgZWYgOTUgNjAgMTggOTAgYWYgZDggMDcg
MDldCitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkgaXMgJ2Rh
MzlhM2VlNWU2YjRiMGQzMjU1YmZlZjk1NjAxODkwYWZkODA3MDknCiBTSEExIG9mIFsweDBdCi0g
ICAgPSBbNWIgYTkgM2MgOWQgYjAgY2YgZjkgM2YgNTIgYjUgMjEgZDcgNDIgMGUgNDMgZjYgZWQg
YTIgNzggNGZdCitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkg
aXMgJzViYTkzYzlkYjBjZmY5M2Y1MmI1MjFkNzQyMGU0M2Y2ZWRhMjc4NGYnCiBTSEExIG9mIFsw
LCAxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAxMF0KLSAgICA9IFsyYyA3ZSA3YyAzOCA0ZiA3
OCAyOSA2OSA0MiA4MiBiMSBlMyBhNiAyMSA2ZCBlZiA4MCA4MiBkMCA1NV0KK1BBU1MgYnl0ZXNU
b0hleFN0cmluZyhuZXcgVWludDhBcnJheShkaWdlc3QpKSBpcyAnMmM3ZTdjMzg0Zjc4Mjk2OTQy
ODJiMWUzYTYyMTZkZWY4MDgyZDA1NScKIFNIQTEgb2YgW25ldyBVaW50OEFycmF5KFswLCAxLCAy
LCAzLCA0XSksIG5ldyBVaW50OEFycmF5KDUsIDYsIDcsIDgsIDksIDEwXSldCi0gICAgPSBbMmMg
N2UgN2MgMzggNGYgNzggMjkgNjkgNDIgODIgYjEgZTMgYTYgMjEgNmQgZWYgODAgODIgZDAgNTVd
CitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkgaXMgJzJjN2U3
YzM4NGY3ODI5Njk0MjgyYjFlM2E2MjE2ZGVmODA4MmQwNTUnCiBQQVNTIGNyeXB0by5zdWJ0bGUu
Z2VuZXJhdGVLZXkoJ3NoYS0xJykgdGhyZXcgZXhjZXB0aW9uIEVycm9yOiBOb3RTdXBwb3J0ZWRF
cnJvcjogRE9NIEV4Y2VwdGlvbiA5LgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQog
CkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3NoYS0xLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEtMS5odG1sCShyZXZpc2lvbiAxNTkyOTUp
CisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3NoYS0xLmh0bWwJKHdvcmtpbmcgY29weSkK
QEAgLTEzLDMwICsxMywzMSBAQCBkZXNjcmlwdGlvbigiVGVzdCBjcnlwdG8uc3VidGxlLmRpZ2Vz
dC4iCiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAoIXdpbmRvdy5zdWJ0bGUpCi0gICAg
d2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRvLndlYmtpdFN1YnRsZTsKLQogUHJv
bWlzZS5mdWxmaWxsKG51bGwpLnRoZW4oZnVuY3Rpb24oKSB7CiAgICAgZGVidWcoIlNIQTEgb2Yg
W10iKTsKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3QoJ3NoYS0xJywgW25ldyBVaW50
OEFycmF5KFtdKV0pOwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKLSAgICBwcmludEFjY2Vw
dGVkUmVzdWx0KHJlc3VsdCk7CisgICAgZGlnZXN0ID0gcmVzdWx0OworICAgIHNob3VsZEJlKCJi
eXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIiwgIidkYTM5YTNlZTVlNmI0
YjBkMzI1NWJmZWY5NTYwMTg5MGFmZDgwNzA5JyIpOwogCiAgICAgZGVidWcoIlNIQTEgb2YgWzB4
MF0iKQogICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmRpZ2VzdCh7bmFtZTogJ3NoYS0xJ30sIFtu
ZXcgVWludDhBcnJheShbMF0pXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewotICAgIHBy
aW50QWNjZXB0ZWRSZXN1bHQocmVzdWx0KTsKKyAgICBkaWdlc3QgPSByZXN1bHQ7CisgICAgc2hv
dWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkiLCAiJzViYTkz
YzlkYjBjZmY5M2Y1MmI1MjFkNzQyMGU0M2Y2ZWRhMjc4NGYnIik7CiAKICAgICBkZWJ1ZygiU0hB
MSBvZiBbMCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBdIik7CiAgICAgdmFyIGRhdGEg
PSBuZXcgVWludDhBcnJheShbMCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBdKTsKICAg
ICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3Qoe25hbWU6ICdzaGEtMSd9LCBbZGF0YV0pOwog
fSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKLSAgICBwcmludEFjY2VwdGVkUmVzdWx0KHJlc3Vs
dCk7CisgICAgZGlnZXN0ID0gcmVzdWx0OworICAgIHNob3VsZEJlKCJieXRlc1RvSGV4U3RyaW5n
KG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIiwgIicyYzdlN2MzODRmNzgyOTY5NDI4MmIxZTNhNjIx
NmRlZjgwODJkMDU1JyIpOwogCiAgICAgZGVidWcoIlNIQTEgb2YgW25ldyBVaW50OEFycmF5KFsw
LCAxLCAyLCAzLCA0XSksIG5ldyBVaW50OEFycmF5KDUsIDYsIDcsIDgsIDksIDEwXSldIik7CiAg
ICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuZGlnZXN0KHtuYW1lOiAnc2hhLTEnfSwgW25ldyBVaW50
OEFycmF5KFswLCAxLCAyLCAzLCA0XSksIG5ldyBVaW50OEFycmF5KFs1LCA2LCA3LCA4LCA5LCAx
MF0pXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewotICAgIHByaW50QWNjZXB0ZWRSZXN1
bHQocmVzdWx0KTsKKyAgICBkaWdlc3QgPSByZXN1bHQ7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9I
ZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkiLCAiJzJjN2U3YzM4NGY3ODI5Njk0Mjgy
YjFlM2E2MjE2ZGVmODA4MmQwNTUnIik7CiAgICAgLy8gQWxsIFNIQS0xIGNhbiBkbyBpcyBkaWdl
c3QuCiAgICAgc2hvdWxkVGhyb3coImNyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoJ3NoYS0xJyki
KTsKICAgICBmaW5pc2hKU1Rlc3QoKTsKSW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUv
c2hhLTIyNC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1
YnRsZS9zaGEtMjI0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVz
dHMvY3J5cHRvL3N1YnRsZS9zaGEtMjI0LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAt
NCwxMyArNCwxMyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAK
IAogU0hBMjI0IG9mIFtdCi0gICAgPSBbZDEgNGEgMDIgOGMgMmEgM2EgMmIgYzkgNDcgNjEgMDIg
YmIgMjggODIgMzQgYzQgMTUgYTIgYjAgMWYgODIgOGUgYTYgMmEgYzUgYjMgZTQgMmZdCitQQVNT
IGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkgaXMgJ2QxNGEwMjhjMmEz
YTJiYzk0NzYxMDJiYjI4ODIzNGM0MTVhMmIwMWY4MjhlYTYyYWM1YjNlNDJmJwogU0hBMjI0IG9m
IFsweDBdCi0gICAgPSBbZmYgZjkgMjkgMmIgNDIgMDEgNjEgN2IgZGMgNGQgMzAgNTMgZmMgZTAg
MjcgMzQgMTYgNmEgNjggM2QgN2QgODUgOGEgN2YgNWYgNTkgYjAgNzNdCitQQVNTIGJ5dGVzVG9I
ZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkgaXMgJ2ZmZjkyOTJiNDIwMTYxN2JkYzRk
MzA1M2ZjZTAyNzM0MTY2YTY4M2Q3ZDg1OGE3ZjVmNTliMDczJwogU0hBMjI0IG9mIFswLCAxLCAy
LCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAxMF0KLSAgICA9IFs3NiA3ZCAwYyBkYyAxMSAwNyA5YiBh
OCBkYyBhMiA3NiBkZiA1YyA0YiA4NSA1MCA3ZCBlNiA3ZCBjZSA0NyBlZCBhNCBjZCA5MSA5NiBk
MyAxMl0KK1BBU1MgYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShkaWdlc3QpKSBpcyAn
NzY3ZDBjZGMxMTA3OWJhOGRjYTI3NmRmNWM0Yjg1NTA3ZGU2N2RjZTQ3ZWRhNGNkOTE5NmQzMTIn
CiBTSEEyMjQgb2YgW25ldyBVaW50OEFycmF5KFswLCAxLCAyLCAzLCA0XSksIG5ldyBVaW50OEFy
cmF5KDUsIDYsIDcsIDgsIDksIDEwXSldCi0gICAgPSBbNzYgN2QgMGMgZGMgMTEgMDcgOWIgYTgg
ZGMgYTIgNzYgZGYgNWMgNGIgODUgNTAgN2QgZTYgN2QgY2UgNDcgZWQgYTQgY2QgOTEgOTYgZDMg
MTJdCitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkgaXMgJzc2
N2QwY2RjMTEwNzliYThkY2EyNzZkZjVjNGI4NTUwN2RlNjdkY2U0N2VkYTRjZDkxOTZkMzEyJwog
UEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBM
YXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3NoYS0yMjQuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9jcnlwdG8vc3VidGxlL3NoYS0yMjQuaHRtbAkocmV2aXNpb24gMTU5Mjk1KQorKysg
TGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEtMjI0Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAg
LTEzLDMwICsxMywzMSBAQCBkZXNjcmlwdGlvbigiVGVzdCBjcnlwdG8uc3VidGxlLmRpZ2VzdC4i
CiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAoIXdpbmRvdy5zdWJ0bGUpCi0gICAgd2lu
ZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRvLndlYmtpdFN1YnRsZTsKLQogUHJvbWlz
ZS5mdWxmaWxsKG51bGwpLnRoZW4oZnVuY3Rpb24oKSB7CiAgICAgZGVidWcoIlNIQTIyNCBvZiBb
XSIpOwogICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmRpZ2VzdCgnc2hhLTIyNCcsIFtuZXcgVWlu
dDhBcnJheShbXSldKTsKIH0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7Ci0gICAgcHJpbnRBY2Nl
cHRlZFJlc3VsdChyZXN1bHQpOworICAgIGRpZ2VzdCA9IHJlc3VsdDsKKyAgICBzaG91bGRCZSgi
Ynl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShkaWdlc3QpKSIsICInZDE0YTAyOGMyYTNh
MmJjOTQ3NjEwMmJiMjg4MjM0YzQxNWEyYjAxZjgyOGVhNjJhYzViM2U0MmYnIik7CiAKICAgICBk
ZWJ1ZygiU0hBMjI0IG9mIFsweDBdIikKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3Qo
e25hbWU6ICdzaGEtMjI0J30sIFtuZXcgVWludDhBcnJheShbMF0pXSk7CiB9KS50aGVuKGZ1bmN0
aW9uKHJlc3VsdCkgewotICAgIHByaW50QWNjZXB0ZWRSZXN1bHQocmVzdWx0KTsKKyAgICBkaWdl
c3QgPSByZXN1bHQ7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJy
YXkoZGlnZXN0KSkiLCAiJ2ZmZjkyOTJiNDIwMTYxN2JkYzRkMzA1M2ZjZTAyNzM0MTY2YTY4M2Q3
ZDg1OGE3ZjVmNTliMDczJyIpOwogCiAgICAgZGVidWcoIlNIQTIyNCBvZiBbMCwgMSwgMiwgMywg
NCwgNSwgNiwgNywgOCwgOSwgMTBdIik7CiAgICAgdmFyIGRhdGEgPSBuZXcgVWludDhBcnJheShb
MCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBdKTsKICAgICByZXR1cm4gY3J5cHRvLnN1
YnRsZS5kaWdlc3Qoe25hbWU6ICdzaGEtMjI0J30sIFtkYXRhXSk7CiB9KS50aGVuKGZ1bmN0aW9u
KHJlc3VsdCkgewotICAgIHByaW50QWNjZXB0ZWRSZXN1bHQocmVzdWx0KTsKKyAgICBkaWdlc3Qg
PSByZXN1bHQ7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXko
ZGlnZXN0KSkiLCAiJzc2N2QwY2RjMTEwNzliYThkY2EyNzZkZjVjNGI4NTUwN2RlNjdkY2U0N2Vk
YTRjZDkxOTZkMzEyJyIpOwogCiAgICAgZGVidWcoIlNIQTIyNCBvZiBbbmV3IFVpbnQ4QXJyYXko
WzAsIDEsIDIsIDMsIDRdKSwgbmV3IFVpbnQ4QXJyYXkoNSwgNiwgNywgOCwgOSwgMTBdKV0iKTsK
ICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3Qoe25hbWU6ICdzaGEtMjI0J30sIFtuZXcg
VWludDhBcnJheShbMCwgMSwgMiwgMywgNF0pLCBuZXcgVWludDhBcnJheShbNSwgNiwgNywgOCwg
OSwgMTBdKV0pOwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKLSAgICBwcmludEFjY2VwdGVk
UmVzdWx0KHJlc3VsdCk7CisgICAgZGlnZXN0ID0gcmVzdWx0OworICAgIHNob3VsZEJlKCJieXRl
c1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIiwgIic3NjdkMGNkYzExMDc5YmE4
ZGNhMjc2ZGY1YzRiODU1MDdkZTY3ZGNlNDdlZGE0Y2Q5MTk2ZDMxMiciKTsKICAgICBmaW5pc2hK
U1Rlc3QoKTsKIH0pOwogPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxl
L3NoYS0yNTYtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2NyeXB0by9z
dWJ0bGUvc2hhLTI1Ni1leHBlY3RlZC50eHQJKHJldmlzaW9uIDE1OTI5NSkKKysrIExheW91dFRl
c3RzL2NyeXB0by9zdWJ0bGUvc2hhLTI1Ni1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAg
LTQsMTMgKzQsMTMgQEAgT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQQog
CiAKIFNIQTI1NiBvZiBbXQotICAgID0gW2UzIGIwIGM0IDQyIDk4IGZjIDFjIDE0IDlhIGZiIGY0
IGM4IDk5IDZmIGI5IDI0IDI3IGFlIDQxIGU0IDY0IDliIDkzIDRjIGE0IDk1IDk5IDFiIDc4IDUy
IGI4IDU1XQorUEFTUyBieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIGlz
ICdlM2IwYzQ0Mjk4ZmMxYzE0OWFmYmY0Yzg5OTZmYjkyNDI3YWU0MWU0NjQ5YjkzNGNhNDk1OTkx
Yjc4NTJiODU1JwogU0hBMjU2IG9mIFsweDBdCi0gICAgPSBbNmUgMzQgMGIgOWMgZmYgYjMgN2Eg
OTggOWMgYTUgNDQgZTYgYmIgNzggMGEgMmMgNzggOTAgMWQgM2YgYjMgMzcgMzggNzYgODUgMTEg
YTMgMDYgMTcgYWYgYTAgMWRdCitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXko
ZGlnZXN0KSkgaXMgJzZlMzQwYjljZmZiMzdhOTg5Y2E1NDRlNmJiNzgwYTJjNzg5MDFkM2ZiMzM3
Mzg3Njg1MTFhMzA2MTdhZmEwMWQnCiBTSEEyNTYgb2YgWzAsIDEsIDIsIDMsIDQsIDUsIDYsIDcs
IDgsIDksIDEwXQotICAgID0gWzc4IGE2IDI3IDMxIDAzIGQxIDdjIDM5IGEwIGI2IDEyIDZlIDIy
IDZjIGVjIDcwIGUzIDMzIDM3IGY0IGJjIDZhIDM4IDA2IDc0IDAxIGI1IDRhIDMzIGU3IDhlIGFk
XQorUEFTUyBieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIGlzICc3OGE2
MjczMTAzZDE3YzM5YTBiNjEyNmUyMjZjZWM3MGUzMzMzN2Y0YmM2YTM4MDY3NDAxYjU0YTMzZTc4
ZWFkJwogU0hBMjU2IG9mIFtuZXcgVWludDhBcnJheShbMCwgMSwgMiwgMywgNF0pLCBuZXcgVWlu
dDhBcnJheSg1LCA2LCA3LCA4LCA5LCAxMF0pXQotICAgID0gWzc4IGE2IDI3IDMxIDAzIGQxIDdj
IDM5IGEwIGI2IDEyIDZlIDIyIDZjIGVjIDcwIGUzIDMzIDM3IGY0IGJjIDZhIDM4IDA2IDc0IDAx
IGI1IDRhIDMzIGU3IDhlIGFkXQorUEFTUyBieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5
KGRpZ2VzdCkpIGlzICc3OGE2MjczMTAzZDE3YzM5YTBiNjEyNmUyMjZjZWM3MGUzMzMzN2Y0YmM2
YTM4MDY3NDAxYjU0YTMzZTc4ZWFkJwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQog
CiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3NoYS0yNTYu
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3NoYS0yNTYuaHRt
bAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEtMjU2
Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEzLDMwICsxMywzMSBAQCBkZXNjcmlwdGlvbigiVGVz
dCBjcnlwdG8uc3VidGxlLmRpZ2VzdC4iCiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1pZiAo
IXdpbmRvdy5zdWJ0bGUpCi0gICAgd2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5cHRv
LndlYmtpdFN1YnRsZTsKLQogUHJvbWlzZS5mdWxmaWxsKG51bGwpLnRoZW4oZnVuY3Rpb24oKSB7
CiAgICAgZGVidWcoIlNIQTI1NiBvZiBbXSIpOwogICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmRp
Z2VzdCgnc2hhLTI1NicsIFtuZXcgVWludDhBcnJheShbXSldKTsKIH0pLnRoZW4oZnVuY3Rpb24o
cmVzdWx0KSB7Ci0gICAgcHJpbnRBY2NlcHRlZFJlc3VsdChyZXN1bHQpOworICAgIGRpZ2VzdCA9
IHJlc3VsdDsKKyAgICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShk
aWdlc3QpKSIsICInZTNiMGM0NDI5OGZjMWMxNDlhZmJmNGM4OTk2ZmI5MjQyN2FlNDFlNDY0OWI5
MzRjYTQ5NTk5MWI3ODUyYjg1NSciKTsKIAogICAgIGRlYnVnKCJTSEEyNTYgb2YgWzB4MF0iKQog
ICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmRpZ2VzdCh7bmFtZTogJ3NoYS0yNTYnfSwgW25ldyBV
aW50OEFycmF5KFswXSldKTsKIH0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7Ci0gICAgcHJpbnRB
Y2NlcHRlZFJlc3VsdChyZXN1bHQpOworICAgIGRpZ2VzdCA9IHJlc3VsdDsKKyAgICBzaG91bGRC
ZSgiYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShkaWdlc3QpKSIsICInNmUzNDBiOWNm
ZmIzN2E5ODljYTU0NGU2YmI3ODBhMmM3ODkwMWQzZmIzMzczODc2ODUxMWEzMDYxN2FmYTAxZCci
KTsKIAogICAgIGRlYnVnKCJTSEEyNTYgb2YgWzAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDks
IDEwXSIpOwogICAgIHZhciBkYXRhID0gbmV3IFVpbnQ4QXJyYXkoWzAsIDEsIDIsIDMsIDQsIDUs
IDYsIDcsIDgsIDksIDEwXSk7CiAgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuZGlnZXN0KHtuYW1l
OiAnc2hhLTI1Nid9LCBbZGF0YV0pOwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKLSAgICBw
cmludEFjY2VwdGVkUmVzdWx0KHJlc3VsdCk7CisgICAgZGlnZXN0ID0gcmVzdWx0OworICAgIHNo
b3VsZEJlKCJieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIiwgIic3OGE2
MjczMTAzZDE3YzM5YTBiNjEyNmUyMjZjZWM3MGUzMzMzN2Y0YmM2YTM4MDY3NDAxYjU0YTMzZTc4
ZWFkJyIpOwogCiAgICAgZGVidWcoIlNIQTI1NiBvZiBbbmV3IFVpbnQ4QXJyYXkoWzAsIDEsIDIs
IDMsIDRdKSwgbmV3IFVpbnQ4QXJyYXkoNSwgNiwgNywgOCwgOSwgMTBdKV0iKTsKICAgICByZXR1
cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3Qoe25hbWU6ICdzaGEtMjU2J30sIFtuZXcgVWludDhBcnJh
eShbMCwgMSwgMiwgMywgNF0pLCBuZXcgVWludDhBcnJheShbNSwgNiwgNywgOCwgOSwgMTBdKV0p
OwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKLSAgICBwcmludEFjY2VwdGVkUmVzdWx0KHJl
c3VsdCk7CisgICAgZGlnZXN0ID0gcmVzdWx0OworICAgIHNob3VsZEJlKCJieXRlc1RvSGV4U3Ry
aW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIiwgIic3OGE2MjczMTAzZDE3YzM5YTBiNjEyNmUy
MjZjZWM3MGUzMzMzN2Y0YmM2YTM4MDY3NDAxYjU0YTMzZTc4ZWFkJyIpOwogICAgIGZpbmlzaEpT
VGVzdCgpOwogfSk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUv
c2hhLTM4NC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1
YnRsZS9zaGEtMzg0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVz
dHMvY3J5cHRvL3N1YnRsZS9zaGEtMzg0LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAt
NCwxMyArNCwxMyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAK
IAogU0hBMzg0IG9mIFtdCi0gICAgPSBbMzggYjAgNjAgYTcgNTEgYWMgOTYgMzggNGMgZDkgMzIg
N2UgYjEgYjEgZTMgNmEgMjEgZmQgYjcgMTEgMTQgYmUgMDcgNDMgNGMgMGMgYzcgYmYgNjMgZjYg
ZTEgZGEgMjcgNGUgZGUgYmYgZTcgNmYgNjUgZmIgZDUgMWEgZDIgZjEgNDggOTggYjkgNWJdCitQ
QVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkgaXMgJzM4YjA2MGE3
NTFhYzk2Mzg0Y2Q5MzI3ZWIxYjFlMzZhMjFmZGI3MTExNGJlMDc0MzRjMGNjN2JmNjNmNmUxZGEy
NzRlZGViZmU3NmY2NWZiZDUxYWQyZjE0ODk4Yjk1YicKIFNIQTM4NCBvZiBbMHgwXQotICAgID0g
W2JlIGMwIDIxIGI0IGYzIDY4IGUzIDA2IDkxIDM0IGUwIDEyIGMyIGI0IDMwIDcwIDgzIGQzIGE5
IGJkIGQyIDA2IGUyIDRlIDVmIDBkIDg2IGUxIDNkIDY2IDM2IDY1IDU5IDMzIGVjIDJiIDQxIDM0
IDY1IDk2IDY4IDE3IGE5IGMyIDA4IGExIDE3IDE3XQorUEFTUyBieXRlc1RvSGV4U3RyaW5nKG5l
dyBVaW50OEFycmF5KGRpZ2VzdCkpIGlzICdiZWMwMjFiNGYzNjhlMzA2OTEzNGUwMTJjMmI0MzA3
MDgzZDNhOWJkZDIwNmUyNGU1ZjBkODZlMTNkNjYzNjY1NTkzM2VjMmI0MTM0NjU5NjY4MTdhOWMy
MDhhMTE3MTcnCiBTSEEzODQgb2YgWzAsIDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwXQot
ICAgID0gWzg5IGJmIGNmIDU2IDlhIGU0IGFmIDcxIDg1IDEwIGRhIDc4IGM2IDc0IDE0IDEwIDlm
IDU3IDM5IGJiIDVjIDQwIGQ1IDFjIDljIDhjIDUwIGUyIGIyIGNlIGU4IDZmIDJmIDgwIGM4IGI5
IGQ2IDhmIDdjIDAxIDIwIDFhIDA3IDE0IDU3IDJmIGU2IDAyXQorUEFTUyBieXRlc1RvSGV4U3Ry
aW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIGlzICc4OWJmY2Y1NjlhZTRhZjcxODUxMGRhNzhj
Njc0MTQxMDlmNTczOWJiNWM0MGQ1MWM5YzhjNTBlMmIyY2VlODZmMmY4MGM4YjlkNjhmN2MwMTIw
MWEwNzE0NTcyZmU2MDInCiBTSEEzODQgb2YgW25ldyBVaW50OEFycmF5KFswLCAxLCAyLCAzLCA0
XSksIG5ldyBVaW50OEFycmF5KDUsIDYsIDcsIDgsIDksIDEwXSldCi0gICAgPSBbODkgYmYgY2Yg
NTYgOWEgZTQgYWYgNzEgODUgMTAgZGEgNzggYzYgNzQgMTQgMTAgOWYgNTcgMzkgYmIgNWMgNDAg
ZDUgMWMgOWMgOGMgNTAgZTIgYjIgY2UgZTggNmYgMmYgODAgYzggYjkgZDYgOGYgN2MgMDEgMjAg
MWEgMDcgMTQgNTcgMmYgZTYgMDJdCitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJy
YXkoZGlnZXN0KSkgaXMgJzg5YmZjZjU2OWFlNGFmNzE4NTEwZGE3OGM2NzQxNDEwOWY1NzM5YmI1
YzQwZDUxYzljOGM1MGUyYjJjZWU4NmYyZjgwYzhiOWQ2OGY3YzAxMjAxYTA3MTQ1NzJmZTYwMicK
IFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpJbmRleDog
TGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEtMzg0Lmh0bWwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEtMzg0Lmh0bWwJKHJldmlzaW9uIDE1OTI5NSkKKysr
IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvc2hhLTM4NC5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0xMywzMCArMTMsMzEgQEAgZGVzY3JpcHRpb24oIlRlc3QgY3J5cHRvLnN1YnRsZS5kaWdlc3Qu
IgogCiBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKIAotaWYgKCF3aW5kb3cuc3VidGxlKQotICAgIHdp
bmRvdy5jcnlwdG8uc3VidGxlID0gd2luZG93LmNyeXB0by53ZWJraXRTdWJ0bGU7Ci0KIFByb21p
c2UuZnVsZmlsbChudWxsKS50aGVuKGZ1bmN0aW9uKCkgewogICAgIGRlYnVnKCJTSEEzODQgb2Yg
W10iKTsKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3QoJ3NoYS0zODQnLCBbbmV3IFVp
bnQ4QXJyYXkoW10pXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewotICAgIHByaW50QWNj
ZXB0ZWRSZXN1bHQocmVzdWx0KTsKKyAgICBkaWdlc3QgPSByZXN1bHQ7CisgICAgc2hvdWxkQmUo
ImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkiLCAiJzM4YjA2MGE3NTFh
Yzk2Mzg0Y2Q5MzI3ZWIxYjFlMzZhMjFmZGI3MTExNGJlMDc0MzRjMGNjN2JmNjNmNmUxZGEyNzRl
ZGViZmU3NmY2NWZiZDUxYWQyZjE0ODk4Yjk1YiciKTsKIAogICAgIGRlYnVnKCJTSEEzODQgb2Yg
WzB4MF0iKQogICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmRpZ2VzdCh7bmFtZTogJ3NoYS0zODQn
fSwgW25ldyBVaW50OEFycmF5KFswXSldKTsKIH0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7Ci0g
ICAgcHJpbnRBY2NlcHRlZFJlc3VsdChyZXN1bHQpOworICAgIGRpZ2VzdCA9IHJlc3VsdDsKKyAg
ICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShkaWdlc3QpKSIsICIn
YmVjMDIxYjRmMzY4ZTMwNjkxMzRlMDEyYzJiNDMwNzA4M2QzYTliZGQyMDZlMjRlNWYwZDg2ZTEz
ZDY2MzY2NTU5MzNlYzJiNDEzNDY1OTY2ODE3YTljMjA4YTExNzE3JyIpOwogCiAgICAgZGVidWco
IlNIQTM4NCBvZiBbMCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBdIik7CiAgICAgdmFy
IGRhdGEgPSBuZXcgVWludDhBcnJheShbMCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBd
KTsKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3Qoe25hbWU6ICdzaGEtMzg0J30sIFtk
YXRhXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewotICAgIHByaW50QWNjZXB0ZWRSZXN1
bHQocmVzdWx0KTsKKyAgICBkaWdlc3QgPSByZXN1bHQ7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9I
ZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkiLCAiJzg5YmZjZjU2OWFlNGFmNzE4NTEw
ZGE3OGM2NzQxNDEwOWY1NzM5YmI1YzQwZDUxYzljOGM1MGUyYjJjZWU4NmYyZjgwYzhiOWQ2OGY3
YzAxMjAxYTA3MTQ1NzJmZTYwMiciKTsKIAogICAgIGRlYnVnKCJTSEEzODQgb2YgW25ldyBVaW50
OEFycmF5KFswLCAxLCAyLCAzLCA0XSksIG5ldyBVaW50OEFycmF5KDUsIDYsIDcsIDgsIDksIDEw
XSldIik7CiAgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUuZGlnZXN0KHtuYW1lOiAnc2hhLTM4NCd9
LCBbbmV3IFVpbnQ4QXJyYXkoWzAsIDEsIDIsIDMsIDRdKSwgbmV3IFVpbnQ4QXJyYXkoWzUsIDYs
IDcsIDgsIDksIDEwXSldKTsKIH0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7Ci0gICAgcHJpbnRB
Y2NlcHRlZFJlc3VsdChyZXN1bHQpOworICAgIGRpZ2VzdCA9IHJlc3VsdDsKKyAgICBzaG91bGRC
ZSgiYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShkaWdlc3QpKSIsICInODliZmNmNTY5
YWU0YWY3MTg1MTBkYTc4YzY3NDE0MTA5ZjU3MzliYjVjNDBkNTFjOWM4YzUwZTJiMmNlZTg2ZjJm
ODBjOGI5ZDY4ZjdjMDEyMDFhMDcxNDU3MmZlNjAyJyIpOwogICAgIGZpbmlzaEpTVGVzdCgpOwog
fSk7CiA8L3NjcmlwdD4KSW5kZXg6IExheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvc2hhLTUxMi1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEt
NTEyLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRv
L3N1YnRsZS9zaGEtNTEyLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtNCwxMyArNCwx
MyBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBCiAKIAogU0hBNTEy
IG9mIFtdCi0gICAgPSBbY2YgODMgZTEgMzUgN2UgZWYgYjggYmQgZjEgNTQgMjggNTAgZDYgNmQg
ODAgMDcgZDYgMjAgZTQgMDUgMGIgNTcgMTUgZGMgODMgZjQgYTkgMjEgZDMgNmMgZTkgY2UgNDcg
ZDAgZDEgM2MgNWQgODUgZjIgYjAgZmYgODMgMTggZDIgODcgN2UgZWMgMmYgNjMgYjkgMzEgYmQg
NDcgNDEgN2EgODEgYTUgMzggMzIgN2EgZjkgMjcgZGEgM2VdCitQQVNTIGJ5dGVzVG9IZXhTdHJp
bmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkgaXMgJ2NmODNlMTM1N2VlZmI4YmRmMTU0Mjg1MGQ2
NmQ4MDA3ZDYyMGU0MDUwYjU3MTVkYzgzZjRhOTIxZDM2Y2U5Y2U0N2QwZDEzYzVkODVmMmIwZmY4
MzE4ZDI4NzdlZWMyZjYzYjkzMWJkNDc0MTdhODFhNTM4MzI3YWY5MjdkYTNlJwogU0hBNTEyIG9m
IFsweDBdCi0gICAgPSBbYjggMjQgNGQgMDIgODkgODEgZDYgOTMgYWYgN2IgNDUgNmEgZjggZWYg
YTQgY2EgZDYgM2QgMjggMmUgMTkgZmYgMTQgOTQgMmMgMjQgNmUgNTAgZDkgMzUgMWQgMjIgNzAg
NGEgODAgMmEgNzEgYzMgNTggMGIgNjMgNzAgZGUgNGMgZWIgMjkgM2MgMzIgNGEgODQgMjMgMzQg
MjUgNTcgZDQgZTUgYzMgODQgMzggZjAgZTMgNjkgMTAgZWVdCitQQVNTIGJ5dGVzVG9IZXhTdHJp
bmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkgaXMgJ2I4MjQ0ZDAyODk4MWQ2OTNhZjdiNDU2YWY4
ZWZhNGNhZDYzZDI4MmUxOWZmMTQ5NDJjMjQ2ZTUwZDkzNTFkMjI3MDRhODAyYTcxYzM1ODBiNjM3
MGRlNGNlYjI5M2MzMjRhODQyMzM0MjU1N2Q0ZTVjMzg0MzhmMGUzNjkxMGVlJwogU0hBNTEyIG9m
IFswLCAxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAxMF0KLSAgICA9IFs4ZiBmYSBlZSAwYyBj
YyBjMSA2MiA4NSAxZiBhZiAwNSAxYSBlMyA4NiA2NyBlZSBmZCA0MiAzYyAwMSA2NCBjNSAwMCA1
NSBmOCBhZCBlMCAwYSBmYyAzNyAwNSBlMyBjZCBlYiA5OSAwMCAwMCA0YiAwZSA0MiA2YyBhNiA2
YSBiNiAzYSBhMyBiOSA5YiAwNyA1MiA3MyBmNCA0ZiBkMyA3YyAyMiBhMyA1NSA1YyA2ZiBkMSBm
MyA3YyBjYl0KK1BBU1MgYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJheShkaWdlc3QpKSBp
cyAnOGZmYWVlMGNjY2MxNjI4NTFmYWYwNTFhZTM4NjY3ZWVmZDQyM2MwMTY0YzUwMDU1ZjhhZGUw
MGFmYzM3MDVlM2NkZWI5OTAwMDA0YjBlNDI2Y2E2NmFiNjNhYTNiOTliMDc1MjczZjQ0ZmQzN2My
MmEzNTU1YzZmZDFmMzdjY2InCiBTSEE1MTIgb2YgW25ldyBVaW50OEFycmF5KFswLCAxLCAyLCAz
LCA0XSksIG5ldyBVaW50OEFycmF5KDUsIDYsIDcsIDgsIDksIDEwXSldCi0gICAgPSBbOGYgZmEg
ZWUgMGMgY2MgYzEgNjIgODUgMWYgYWYgMDUgMWEgZTMgODYgNjcgZWUgZmQgNDIgM2MgMDEgNjQg
YzUgMDAgNTUgZjggYWQgZTAgMGEgZmMgMzcgMDUgZTMgY2QgZWIgOTkgMDAgMDAgNGIgMGUgNDIg
NmMgYTYgNmEgYjYgM2EgYTMgYjkgOWIgMDcgNTIgNzMgZjQgNGYgZDMgN2MgMjIgYTMgNTUgNWMg
NmYgZDEgZjMgN2MgY2JdCitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGln
ZXN0KSkgaXMgJzhmZmFlZTBjY2NjMTYyODUxZmFmMDUxYWUzODY2N2VlZmQ0MjNjMDE2NGM1MDA1
NWY4YWRlMDBhZmMzNzA1ZTNjZGViOTkwMDAwNGIwZTQyNmNhNjZhYjYzYWEzYjk5YjA3NTI3M2Y0
NGZkMzdjMjJhMzU1NWM2ZmQxZjM3Y2NiJwogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQogCiBURVNUIENPTVBMRVRFCkluZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3NoYS01
MTIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3NoYS01MTIu
aHRtbAkocmV2aXNpb24gMTU5Mjk1KQorKysgTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9zaGEt
NTEyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTEzLDMwICsxMywzMSBAQCBkZXNjcmlwdGlvbigi
VGVzdCBjcnlwdG8uc3VidGxlLmRpZ2VzdC4iCiAKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1p
ZiAoIXdpbmRvdy5zdWJ0bGUpCi0gICAgd2luZG93LmNyeXB0by5zdWJ0bGUgPSB3aW5kb3cuY3J5
cHRvLndlYmtpdFN1YnRsZTsKLQogUHJvbWlzZS5mdWxmaWxsKG51bGwpLnRoZW4oZnVuY3Rpb24o
KSB7CiAgICAgZGVidWcoIlNIQTUxMiBvZiBbXSIpOwogICAgIHJldHVybiBjcnlwdG8uc3VidGxl
LmRpZ2VzdCgnc2hhLTUxMicsIFtuZXcgVWludDhBcnJheShbXSldKTsKIH0pLnRoZW4oZnVuY3Rp
b24ocmVzdWx0KSB7Ci0gICAgcHJpbnRBY2NlcHRlZFJlc3VsdChyZXN1bHQpOworICAgIGRpZ2Vz
dCA9IHJlc3VsdDsKKyAgICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmluZyhuZXcgVWludDhBcnJh
eShkaWdlc3QpKSIsICInY2Y4M2UxMzU3ZWVmYjhiZGYxNTQyODUwZDY2ZDgwMDdkNjIwZTQwNTBi
NTcxNWRjODNmNGE5MjFkMzZjZTljZTQ3ZDBkMTNjNWQ4NWYyYjBmZjgzMThkMjg3N2VlYzJmNjNi
OTMxYmQ0NzQxN2E4MWE1MzgzMjdhZjkyN2RhM2UnIik7CiAKICAgICBkZWJ1ZygiU0hBNTEyIG9m
IFsweDBdIikKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3Qoe25hbWU6ICdzaGEtNTEy
J30sIFtuZXcgVWludDhBcnJheShbMF0pXSk7CiB9KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewot
ICAgIHByaW50QWNjZXB0ZWRSZXN1bHQocmVzdWx0KTsKKyAgICBkaWdlc3QgPSByZXN1bHQ7Cisg
ICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXkoZGlnZXN0KSkiLCAi
J2I4MjQ0ZDAyODk4MWQ2OTNhZjdiNDU2YWY4ZWZhNGNhZDYzZDI4MmUxOWZmMTQ5NDJjMjQ2ZTUw
ZDkzNTFkMjI3MDRhODAyYTcxYzM1ODBiNjM3MGRlNGNlYjI5M2MzMjRhODQyMzM0MjU1N2Q0ZTVj
Mzg0MzhmMGUzNjkxMGVlJyIpOwogCiAgICAgZGVidWcoIlNIQTUxMiBvZiBbMCwgMSwgMiwgMywg
NCwgNSwgNiwgNywgOCwgOSwgMTBdIik7CiAgICAgdmFyIGRhdGEgPSBuZXcgVWludDhBcnJheShb
MCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTBdKTsKICAgICByZXR1cm4gY3J5cHRvLnN1
YnRsZS5kaWdlc3Qoe25hbWU6ICdzaGEtNTEyJ30sIFtkYXRhXSk7CiB9KS50aGVuKGZ1bmN0aW9u
KHJlc3VsdCkgewotICAgIHByaW50QWNjZXB0ZWRSZXN1bHQocmVzdWx0KTsKKyAgICBkaWdlc3Qg
PSByZXN1bHQ7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcobmV3IFVpbnQ4QXJyYXko
ZGlnZXN0KSkiLCAiJzhmZmFlZTBjY2NjMTYyODUxZmFmMDUxYWUzODY2N2VlZmQ0MjNjMDE2NGM1
MDA1NWY4YWRlMDBhZmMzNzA1ZTNjZGViOTkwMDAwNGIwZTQyNmNhNjZhYjYzYWEzYjk5YjA3NTI3
M2Y0NGZkMzdjMjJhMzU1NWM2ZmQxZjM3Y2NiJyIpOwogCiAgICAgZGVidWcoIlNIQTUxMiBvZiBb
bmV3IFVpbnQ4QXJyYXkoWzAsIDEsIDIsIDMsIDRdKSwgbmV3IFVpbnQ4QXJyYXkoNSwgNiwgNywg
OCwgOSwgMTBdKV0iKTsKICAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5kaWdlc3Qoe25hbWU6ICdz
aGEtNTEyJ30sIFtuZXcgVWludDhBcnJheShbMCwgMSwgMiwgMywgNF0pLCBuZXcgVWludDhBcnJh
eShbNSwgNiwgNywgOCwgOSwgMTBdKV0pOwogfSkudGhlbihmdW5jdGlvbihyZXN1bHQpIHsKLSAg
ICBwcmludEFjY2VwdGVkUmVzdWx0KHJlc3VsdCk7CisgICAgZGlnZXN0ID0gcmVzdWx0OworICAg
IHNob3VsZEJlKCJieXRlc1RvSGV4U3RyaW5nKG5ldyBVaW50OEFycmF5KGRpZ2VzdCkpIiwgIic4
ZmZhZWUwY2NjYzE2Mjg1MWZhZjA1MWFlMzg2NjdlZWZkNDIzYzAxNjRjNTAwNTVmOGFkZTAwYWZj
MzcwNWUzY2RlYjk5MDAwMDRiMGU0MjZjYTY2YWI2M2FhM2I5OWIwNzUyNzNmNDRmZDM3YzIyYTM1
NTVjNmZkMWYzN2NjYiciKTsKICAgICBmaW5pc2hKU1Rlc3QoKTsKIH0pOwogPC9zY3JpcHQ+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jlc291cmNlcy9jb21tb24uanMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yZXNvdXJjZXMvY29tbW9uLmpzCShy
ZXZpc2lvbiAxNTkyOTUpCisrKyBMYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jlc291cmNlcy9j
b21tb24uanMJKHdvcmtpbmcgY29weSkKQEAgLTEsMzAgKzEsNDcgQEAKIGZ1bmN0aW9uIGltcG9y
dFRlc3RLZXlzKCkKIHsKLSAgICB2YXIga2V5Rm9ybWF0ID0gInNwa2kiOwotICAgIHZhciBkYXRh
ID0gbmV3IFVpbnQ4QXJyYXkoW10pOwotICAgIHZhciBleHRyYWN0YWJsZSA9IGZhbHNlOworICAg
IHZhciBrZXlGb3JtYXQgPSAicmF3IjsKKyAgICB2YXIgZGF0YSA9IGFzY2lpVG9VaW50OEFycmF5
KCIxNiBieXRlcyBvZiBrZXkhIik7CisgICAgdmFyIGV4dHJhY3RhYmxlID0gdHJ1ZTsKICAgICB2
YXIga2V5VXNhZ2VzID0gWydlbmNyeXB0JywgJ2RlY3J5cHQnLCAnc2lnbicsICd2ZXJpZnknXTsK
IAogICAgIHZhciBobWFjUHJvbWlzZSA9IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KGtleUZvcm1h
dCwgZGF0YSwge25hbWU6ICdobWFjJywgaGFzaDoge25hbWU6ICdzaGEtMSd9fSwgZXh0cmFjdGFi
bGUsIGtleVVzYWdlcyk7Ci0gICAgdmFyIHJzYVNzYVByb21pc2UgPSBjcnlwdG8uc3VidGxlLmlt
cG9ydEtleShrZXlGb3JtYXQsIGRhdGEsIHtuYW1lOiAnUlNBU1NBLVBLQ1MxLXYxXzUnLCBoYXNo
OiB7bmFtZTogJ3NoYS0xJ319LCBleHRyYWN0YWJsZSwga2V5VXNhZ2VzKTsKICAgICB2YXIgYWVz
Q2JjUHJvbWlzZSA9IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KGtleUZvcm1hdCwgZGF0YSwge25h
bWU6ICdBRVMtQ0JDJ30sIGV4dHJhY3RhYmxlLCBrZXlVc2FnZXMpOwotICAgIHZhciBhZXNDYmNK
dXN0RGVjcnlwdCA9IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KGtleUZvcm1hdCwgZGF0YSwge25h
bWU6ICdBRVMtQ0JDJ30sIGV4dHJhY3RhYmxlLCBbJ2RlY3J5cHQnXSk7CisgICAgdmFyIGFlc0Ni
Y0p1c3REZWNyeXB0ID0gY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoa2V5Rm9ybWF0LCBkYXRhLCB7
bmFtZTogJ0FFUy1DQkMnfSwgZmFsc2UsIFsnZGVjcnlwdCddKTsKIAotICAgIHJldHVybiBQcm9t
aXNlLmV2ZXJ5KGhtYWNQcm9taXNlLCByc2FTc2FQcm9taXNlLCBhZXNDYmNQcm9taXNlLCBhZXND
YmNKdXN0RGVjcnlwdCkudGhlbihmdW5jdGlvbihyZXN1bHRzKSB7CisgICAgcmV0dXJuIFByb21p
c2UuYWxsKFtobWFjUHJvbWlzZSwgYWVzQ2JjUHJvbWlzZSwgYWVzQ2JjSnVzdERlY3J5cHRdKS50
aGVuKGZ1bmN0aW9uKHJlc3VsdHMpIHsKICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgIGht
YWNTaGExOiByZXN1bHRzWzBdLAotICAgICAgICAgICAgcnNhU3NhU2hhMTogcmVzdWx0c1sxXSwK
LSAgICAgICAgICAgIGFlc0NiYzogcmVzdWx0c1syXSwKLSAgICAgICAgICAgIGFlc0NiY0p1c3RE
ZWNyeXB0OiByZXN1bHRzWzNdLAorICAgICAgICAgICAgYWVzQ2JjOiByZXN1bHRzWzFdLAorICAg
ICAgICAgICAgYWVzQ2JjSnVzdERlY3J5cHQ6IHJlc3VsdHNbMl0sCiAgICAgICAgIH07CiAgICAg
fSk7CiB9CiAKLS8vIEJ1aWxkcyBhIGhleCBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW55IGFy
cmF5LWxpa2UgaW5wdXQgKGFycmF5IG9yCi0vLyBBcnJheUJ1ZmZlclZpZXcpLiBUaGUgb3V0cHV0
IGxvb2tzIGxpa2UgdGhpczoKLS8vICAgIFthYiAwMyA0YyA5OV0KLWZ1bmN0aW9uIGJ5dGVBcnJh
eVRvSGV4U3RyaW5nKGJ5dGVzKQorLy8gVmVyaWZpZXMgdGhhdCB0aGUgZ2l2ZW4gImJ5dGVzIiBo
b2xkcyB0aGUgc2FtZSB2YWx1ZSBhcyAiZXhwZWN0ZWRIZXhTdHJpbmciLgorLy8gImJ5dGVzIiBj
YW4gYmUgYW55dGhpbmcgcmVjb2duaXplZCBieSAiYnl0ZXNUb0hleFN0cmluZygpIi4KK2Z1bmN0
aW9uIGJ5dGVzU2hvdWxkTWF0Y2hIZXhTdHJpbmcodGVzdERlc2NyaXB0aW9uLCBleHBlY3RlZEhl
eFN0cmluZywgYnl0ZXMpCit7CisgICAgZXhwZWN0ZWRIZXhTdHJpbmcgPSAiWyIgKyBleHBlY3Rl
ZEhleFN0cmluZy50b0xvd2VyQ2FzZSgpICsgIl0iOworICAgIHZhciBhY3R1YWxIZXhTdHJpbmcg
PSAiWyIgKyBieXRlc1RvSGV4U3RyaW5nKGJ5dGVzKSArICJdIjsKKworICAgIGlmIChhY3R1YWxI
ZXhTdHJpbmcgPT09IGV4cGVjdGVkSGV4U3RyaW5nKSB7CisgICAgICAgIGRlYnVnKCJQQVNTOiAi
ICsgdGVzdERlc2NyaXB0aW9uICsgIiBzaG91bGQgYmUgIiArIGV4cGVjdGVkSGV4U3RyaW5nICsg
IiBhbmQgd2FzIik7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZGVidWcoIkZBSUw6ICIgKyB0ZXN0
RGVzY3JpcHRpb24gKyAiIHNob3VsZCBiZSAiICsgZXhwZWN0ZWRIZXhTdHJpbmcgKyAiIGJ1dCB3
YXMgIiArIGFjdHVhbEhleFN0cmluZyk7CisgICAgfQorfQorCisvLyBCdWlsZHMgYSBoZXggc3Ry
aW5nIHJlcHJlc2VudGF0aW9uIGZvciBhbiBhcnJheS1saWtlIGlucHV0LgorLy8gImJ5dGVzIiBj
YW4gYmUgYW4gQXJyYXkgb2YgYnl0ZXMsIGFuIEFycmF5QnVmZmVyLCBvciBhbnkgVHlwZWRBcnJh
eS4KKy8vIFRoZSBvdXRwdXQgbG9va3MgbGlrZSB0aGlzOgorLy8gICAgYWIwMzRjOTkKK2Z1bmN0
aW9uIGJ5dGVzVG9IZXhTdHJpbmcoYnl0ZXMpCiB7CisgICAgaWYgKCFieXRlcykKKyAgICAgICAg
cmV0dXJuIG51bGw7CisKKyAgICBieXRlcyA9IG5ldyBVaW50OEFycmF5KGJ5dGVzKTsKICAgICB2
YXIgaGV4Qnl0ZXMgPSBbXTsKIAogICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYnl0ZXMubGVuZ3Ro
OyArK2kpIHsKQEAgLTM0LDEwICs1MSwyNiBAQCBmdW5jdGlvbiBieXRlQXJyYXlUb0hleFN0cmlu
ZyhieXRlcykKICAgICAgICAgaGV4Qnl0ZXMucHVzaChieXRlU3RyaW5nKTsKICAgICB9CiAKLSAg
ICByZXR1cm4gIlsiICsgaGV4Qnl0ZXMuam9pbigiICIpICsgIl0iOworICAgIHJldHVybiBoZXhC
eXRlcy5qb2luKCIiKTsKK30KKworZnVuY3Rpb24gaGV4U3RyaW5nVG9VaW50OEFycmF5KGhleFN0
cmluZykKK3sKKyAgICBpZiAoaGV4U3RyaW5nLmxlbmd0aCAlIDIgIT0gMCkKKyAgICAgICAgdGhy
b3cgIkludmFsaWQgaGV4U3RyaW5nIjsKKyAgICB2YXIgYXJyYXlCdWZmZXIgPSBuZXcgVWludDhB
cnJheShoZXhTdHJpbmcubGVuZ3RoIC8gMik7CisKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IGhl
eFN0cmluZy5sZW5ndGg7IGkgKz0gMikgeworICAgICAgICB2YXIgYnl0ZVZhbHVlID0gcGFyc2VJ
bnQoaGV4U3RyaW5nLnN1YnN0cihpLCAyKSwgMTYpOworICAgICAgICBpZiAoYnl0ZVZhbHVlID09
IE5hTikKKyAgICAgICAgICAgIHRocm93ICJJbnZhbGlkIGhleFN0cmluZyI7CisgICAgICAgIGFy
cmF5QnVmZmVyW2kvMl0gPSBieXRlVmFsdWU7CisgICAgfQorCisgICAgcmV0dXJuIGFycmF5QnVm
ZmVyOwogfQogCi1mdW5jdGlvbiBhc2NpaVRvQXJyYXlCdWZmZXIoc3RyKQorZnVuY3Rpb24gYXNj
aWlUb1VpbnQ4QXJyYXkoc3RyKQogewogICAgIHZhciBjaGFycyA9IFtdOwogICAgIGZvciAodmFy
IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgKytpKQpAQCAtNDUsMTQgKzc4LDExIEBAIGZ1bmN0aW9u
IGFzY2lpVG9BcnJheUJ1ZmZlcihzdHIpCiAgICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGNoYXJz
KTsKIH0KIAotZnVuY3Rpb24gaGV4VG9BcnJheUJ1ZmZlcihzdHIpCitmdW5jdGlvbiBmYWlsQW5k
RmluaXNoSlNUZXN0KGVycm9yKQogewotICAgIGlmIChzdHIubGVuZ3RoICUgMikKLSAgICAgICAg
dGhyb3cgIkhleCBzdHJpbmcgbGVuZ3RoIG11c3QgYmUgZXZlbiI7Ci0gICAgdmFyIGNoYXJzID0g
W107Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyBpICs9IDIpCi0gICAgICAg
IGNoYXJzLnB1c2gocGFyc2VJbnQoc3RyLnN1YnN0cihpLCAyKSwgMTYpKTsKLSAgICByZXR1cm4g
bmV3IFVpbnQ4QXJyYXkoY2hhcnMpOworICAgIGlmIChlcnJvcikKKyAgICAgICBkZWJ1ZyhlcnJv
cik7CisgICAgZmluaXNoSlNUZXN0KCk7CiB9CiAKIHZhciBCYXNlNjRVUkwgPSB7CkBAIC02Niwx
OSArOTYsMjMgQEAgdmFyIEJhc2U2NFVSTCA9IHsKICAgICB9CiB9OwogCi1mdW5jdGlvbiBwcmlu
dFJlamVjdGVkUmVzdWx0KHZhbHVlKQotewotICAgIGRlYnVnKCIgICAgcmVqZWN0ZWQgd2l0aCB2
YWx1ZSBvZiAiICsgdmFsdWUpOwotfQotCi1mdW5jdGlvbiBwcmludEFjY2VwdGVkUmVzdWx0KHJl
c3VsdCkKLXsKLSAgICBkZWJ1ZygiICAgID0gIiArIGJ5dGVBcnJheVRvSGV4U3RyaW5nKG5ldyBV
aW50OEFycmF5KHJlc3VsdCkpKTsKK2lmICghUHJvbWlzZS5hbGwpIHsKKyAgICAvLyBBIHZlcnkg
c2ltcGxlIHRlbXBvcmFyeSBpbXBsZW1lbnRhdGlvbiBvbmx5IGZvciBXZWJDcnlwdG8gdGVzdHMu
CisgICAgUHJvbWlzZS5hbGwgPSBmdW5jdGlvbihwcm9taXNlcykgeworICAgICAgICB2YXIgcmVz
dWx0cyA9IFtdOworICAgICAgICB2YXIgcmVzdWx0Q291bnQgPSAwOworICAgICAgICB2YXIgcmVz
b2x2ZXI7CisgICAgICAgIGZ1bmN0aW9uIG5leHQocmVzdWx0KSB7CisgICAgICAgICAgICByZXN1
bHRzW3Jlc3VsdENvdW50KytdID0gcmVzdWx0OworICAgICAgICAgICAgaWYgKHJlc3VsdENvdW50
IDwgcHJvbWlzZXMubGVuZ3RoKQorICAgICAgICAgICAgICAgIHByb21pc2VzW3Jlc3VsdENvdW50
XS50aGVuKG5leHQpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJlc29sdmVy
LmZ1bGZpbGwocmVzdWx0cyk7CisgICAgICAgIH0KKyAgICAgICAgcHJvbWlzZXNbMF0udGhlbihu
ZXh0LCBmdW5jdGlvbigpIHsgcmVzb2x2ZXIucmVqZWN0KG51bGwpIH0pOworICAgICAgICByZXR1
cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocikgeyByZXNvbHZlciA9IHI7IH0pOworICAgIH0KIH0K
IAotZnVuY3Rpb24gZmFpbEFuZEZpbmlzaEpTVGVzdChlcnJvcikKLXsKLSAgICBpZiAoZXJyb3Ip
Ci0gICAgICAgZGVidWcoZXJyb3IpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfQoraWYgKCFjcnlw
dG8uc3VidGxlKQorICAgIGNyeXB0by5zdWJ0bGUgPSBjcnlwdG8ud2Via2l0U3VidGxlOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>