<?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>171310</bug_id>
          
          <creation_ts>2017-04-25 19:08:35 -0700</creation_ts>
          <short_desc>We incorrectly allow escaped characters in keyword tokens</short_desc>
          <delta_ts>2017-06-12 11:24:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Saam Barati">saam</reporter>
          <assigned_to name="GSkachkov">gskachkov</assigned_to>
          <cc>benjamin</cc>
    
    <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>gskachkov</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ticaiolima</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1301412</commentid>
    <comment_count>0</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-04-25 19:08:35 -0700</bug_when>
    <thetext>e.g, we parse: &quot;i\u006E&quot; as &quot;in&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317461</commentid>
    <comment_count>1</comment_count>
    <who name="GSkachkov">gskachkov</who>
    <bug_when>2017-06-09 10:01:08 -0700</bug_when>
    <thetext>There is a link to spec https://tc39.github.io/ecma262/#sec-reserved-words</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317621</commentid>
    <comment_count>2</comment_count>
      <attachid>312488</attachid>
    <who name="GSkachkov">gskachkov</who>
    <bug_when>2017-06-09 14:12:23 -0700</bug_when>
    <thetext>Created attachment 312488
Patch

WIP: test is coming</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317640</commentid>
    <comment_count>3</comment_count>
      <attachid>312488</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-06-09 14:52:43 -0700</bug_when>
    <thetext>Comment on attachment 312488
Patch

Attachment 312488 did not pass jsc-ews (mac):
Output: http://webkit-queues.webkit.org/results/3902642

New failing tests:
stress/error-messages-for-in-operator-should-not-crash.js.ftl-no-cjit-no-inline-validate
stress/error-messages-for-in-operator-should-not-crash.js.dfg-eager
stress/reserved-word-with-escape.js.no-ftl
stress/destructuring-assignment-syntax.js.dfg-eager-no-cjit-validate
stress/reserved-word-with-escape.js.ftl-no-cjit-b3o1
stress/error-messages-for-in-operator-should-not-crash.js.ftl-eager
stress/error-messages-for-in-operator-should-not-crash.js.ftl-eager-no-cjit
stress/reserved-word-with-escape.js.no-llint
stress/reserved-word-with-escape.js.ftl-eager
stress/destructuring-assignment-syntax.js.ftl-eager-no-cjit-b3o1
stress/error-messages-for-in-operator-should-not-crash.js.dfg-maximal-flush-validate-no-cjit
stress/destructuring-assignment-syntax.js.ftl-no-cjit-validate-sampling-profiler
stress/error-messages-for-in-operator-should-not-crash.js.ftl-eager-no-cjit-b3o1
stress/error-messages-for-in-operator-should-not-crash.js.default
stress/reserved-word-with-escape.js.dfg-maximal-flush-validate-no-cjit
stress/error-messages-for-in-operator-should-not-crash.js.ftl-no-cjit-no-put-stack-validate
stress/destructuring-assignment-syntax.js.no-ftl
stress/error-messages-for-in-operator-should-not-crash.js.dfg-eager-no-cjit-validate
stress/destructuring-assignment-syntax.js.no-cjit-collect-continuously
stress/destructuring-assignment-syntax.js.ftl-eager-no-cjit
stress/destructuring-assignment-syntax.js.no-cjit-validate-phases
stress/reserved-word-with-escape.js.ftl-eager-no-cjit-b3o1
stress/reserved-word-with-escape.js.ftl-no-cjit-no-put-stack-validate
stress/destructuring-assignment-syntax.js.no-llint
stress/destructuring-assignment-syntax.js.default
stress/destructuring-assignment-syntax.js.ftl-no-cjit-no-put-stack-validate
stress/reserved-word-with-escape.js.dfg-eager-no-cjit-validate
stress/error-messages-for-in-operator-should-not-crash.js.ftl-no-cjit-small-pool
stress/error-messages-for-in-operator-should-not-crash.js.no-llint
ChakraCore.yaml/ChakraCore/test/Basics/IdsWithEscapes.js.default
stress/destructuring-assignment-syntax.js.ftl-no-cjit-small-pool
stress/error-messages-for-in-operator-should-not-crash.js.no-cjit-collect-continuously
stress/reserved-word-with-escape.js.default
stress/destructuring-assignment-syntax.js.ftl-no-cjit-b3o1
stress/reserved-word-with-escape.js.no-cjit-collect-continuously
stress/error-messages-for-in-operator-should-not-crash.js.ftl-no-cjit-validate-sampling-profiler
stress/error-messages-for-in-operator-should-not-crash.js.no-cjit-validate-phases
stress/reserved-word-with-escape.js.ftl-no-cjit-validate-sampling-profiler
stress/destructuring-assignment-syntax.js.dfg-eager
stress/reserved-word-with-escape.js.dfg-eager
stress/error-messages-for-in-operator-should-not-crash.js.no-ftl
stress/destructuring-assignment-syntax.js.dfg-maximal-flush-validate-no-cjit
stress/destructuring-assignment-syntax.js.ftl-eager
stress/reserved-word-with-escape.js.ftl-eager-no-cjit
stress/reserved-word-with-escape.js.ftl-no-cjit-small-pool
stress/destructuring-assignment-syntax.js.ftl-no-cjit-no-inline-validate
stress/reserved-word-with-escape.js.ftl-no-cjit-no-inline-validate
stress/reserved-word-with-escape.js.no-cjit-validate-phases
stress/error-messages-for-in-operator-should-not-crash.js.ftl-no-cjit-b3o1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317887</commentid>
    <comment_count>4</comment_count>
      <attachid>312568</attachid>
    <who name="GSkachkov">gskachkov</who>
    <bug_when>2017-06-10 02:50:44 -0700</bug_when>
    <thetext>Created attachment 312568
Patch

Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317890</commentid>
    <comment_count>5</comment_count>
      <attachid>312568</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-06-10 03:32:13 -0700</bug_when>
    <thetext>Comment on attachment 312568
Patch

Attachment 312568 did not pass jsc-ews (mac):
Output: http://webkit-queues.webkit.org/results/3906552

New failing tests:
ChakraCore.yaml/ChakraCore/test/Basics/IdsWithEscapes.js.default</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317928</commentid>
    <comment_count>6</comment_count>
      <attachid>312579</attachid>
    <who name="GSkachkov">gskachkov</who>
    <bug_when>2017-06-10 14:17:49 -0700</bug_when>
    <thetext>Created attachment 312579
Patch

Fix tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318213</commentid>
    <comment_count>7</comment_count>
      <attachid>312579</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-06-12 06:57:22 -0700</bug_when>
    <thetext>Comment on attachment 312579
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=312579&amp;action=review

&gt; Source/JavaScriptCore/ChangeLog:10
&gt; +        Current patch implements this requirements.

The spec text says

&quot;The ReservedWord definitions are specified as literal sequences of specific SourceCharacter elements. A code point in a ReservedWord cannot be expressed by a \ UnicodeEscapeSequence.&quot;

Does it mean that fals\x65 is allowed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318269</commentid>
    <comment_count>8</comment_count>
      <attachid>312579</attachid>
    <who name="GSkachkov">gskachkov</who>
    <bug_when>2017-06-12 10:13:56 -0700</bug_when>
    <thetext>Comment on attachment 312579
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=312579&amp;action=review

&gt;&gt; Source/JavaScriptCore/ChangeLog:10
&gt;&gt; +        Current patch implements this requirements.
&gt; 
&gt; The spec text says
&gt; 
&gt; &quot;The ReservedWord definitions are specified as literal sequences of specific SourceCharacter elements. A code point in a ReservedWord cannot be expressed by a \ UnicodeEscapeSequence.&quot;
&gt; 
&gt; Does it mean that fals\x65 is allowed?

No, I think that it is not allowed. 
According to spec ReservedWord is &quot;A reserved word is an `IdentifierName` that cannot be used as an Identifier.&quot;, and the IdentifierName according to the https://tc39.github.io/ecma262/#prod-IdentifierName allows to use  \UnicodeEscapeSequence and UnicodeIDStart, $, _, so this NOTE means that we remove from the list of allowed symbols `\UnicodeEscapeSequence`, but it does not mean that we can use other symbols expect UnicodeIDStart/UnicodeIDContinue, $, _</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318289</commentid>
    <comment_count>9</comment_count>
      <attachid>312579</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-06-12 10:53:30 -0700</bug_when>
    <thetext>Comment on attachment 312579
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318299</commentid>
    <comment_count>10</comment_count>
      <attachid>312579</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-12 11:24:03 -0700</bug_when>
    <thetext>Comment on attachment 312579
Patch

Clearing flags on attachment: 312579

Committed r218111: &lt;http://trac.webkit.org/changeset/218111&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1318300</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-06-12 11:24:05 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312488</attachid>
            <date>2017-06-09 14:12:23 -0700</date>
            <delta_ts>2017-06-10 02:50:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171310-20170610001221.patch</filename>
            <type>text/plain</type>
            <size>3091</size>
            <attacher name="GSkachkov">gskachkov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3OTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
NjBmNzM5ZDE2NWViY2NlNzU4M2E2MzQ2OTU1OGJhNTIyNGM0ZjRjLi42YmI0ZjJkN2Y3ZmRhNjg3
ZjNkYzUwYTU2MWUzMTljODFlMmNlYTZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxNy0wNi0wOSAgT2xla3NhbmRyIFNrYWNoa292ICA8Z3NrYWNoa292QGdt
YWlsLmNvbT4KKworICAgICAgICBXZSBpbmNvcnJlY3RseSBhbGxvdyBlc2NhcGVkIGNoYXJhY3Rl
cnMgaW4ga2V5d29yZCB0b2tlbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3MTMxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogcGFyc2VyL0xleGVyLmNwcDoKKyAgICAgICAgKEpTQzo6TGV4ZXI8Q2hh
cmFjdGVyVHlwZT46OnBhcnNlSWRlbnRpZmllclNsb3dDYXNlKToKKyAgICAgICAgKiBwYXJzZXIv
UGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyPExleGVyVHlwZT46OnByaW50VW5leHBl
Y3RlZFRva2VuVGV4dCk6CisgICAgICAgICogcGFyc2VyL1BhcnNlclRva2Vucy5oOgorCiAyMDE3
LTA0LTEzICBTa2FjaGtvdiBPbGVrc2FuZHIgIDxnc2thY2hrb3ZAZ21haWwuY29tPgogCiAgICAg
ICAgIFtFU05leHRdIEFzeW5jIGl0ZXJhdGlvbiAtIEltcGxlbWVudCBBc3luYyBHZW5lcmF0b3IK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKaW5kZXggN2M1ZGY0MTIwOWVkYjBi
MmNmNjk1OWNkOTE1OWRjNTAyYWQ2NDIxMS4uY2ViOGY0NDY3NWM5MWRhN2FlMGE3NTY4ZjE0MzQ1
YTI1NDk1NWZjNCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhl
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9MZXhlci5jcHAKQEAgLTEx
MjksNyArMTEyOSw4IEBAIHRlbXBsYXRlPHR5cGVuYW1lIENoYXJhY3RlclR5cGU+IHRlbXBsYXRl
PGJvb2wgc2hvdWxkQ3JlYXRlSWRlbnRpZmllcj4gSlNUb2tlblR5CiAgICAgICAgIGlmICghZW50
cnkpCiAgICAgICAgICAgICByZXR1cm4gSURFTlQ7CiAgICAgICAgIEpTVG9rZW5UeXBlIHRva2Vu
ID0gc3RhdGljX2Nhc3Q8SlNUb2tlblR5cGU+KGVudHJ5LT5sZXhlclZhbHVlKCkpOwotICAgICAg
ICByZXR1cm4gKHRva2VuICE9IFJFU0VSVkVEX0lGX1NUUklDVCkgfHwgc3RyaWN0TW9kZSA/IHRv
a2VuIDogSURFTlQ7CisgICAgICAgIGlmICgodG9rZW4gIT0gUkVTRVJWRURfSUZfU1RSSUNUKSB8
fCBzdHJpY3RNb2RlKQorICAgICAgICAgICAgcmV0dXJuIGJ1ZmZlclJlcXVpcmVkID8gVU5FWFBF
Q1RFRF9FU0NBUEVfRVJST1JUT0sgOiB0b2tlbjsKICAgICB9CiAKICAgICByZXR1cm4gSURFTlQ7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKaW5kZXggOTcyZDQwYTU1ZDlh
YjM2OTM0MGY1YjEyY2E5MzhiNTA2NDk3NjBhYi4uY2YxNjhiYWRmZjA0Y2E1N2I2OGIzYzA5MDQw
YWMzNWRiZjg3ZDMzYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Q
YXJzZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcApA
QCAtNDkzNSw2ICs0OTM1LDkgQEAgdGVtcGxhdGUgPHR5cGVuYW1lIExleGVyVHlwZT4gdm9pZCBQ
YXJzZXI8TGV4ZXJUeXBlPjo6cHJpbnRVbmV4cGVjdGVkVG9rZW5UZXh0KFcKICAgICBjYXNlIElO
VkFMSURfSURFTlRJRklFUl9FU0NBUEVfRVJST1JUT0s6CiAgICAgICAgIG91dC5wcmludCgiSW52
YWxpZCBlc2NhcGUgaW4gaWRlbnRpZmllcjogJyIsIGdldFRva2VuKCksICInIik7CiAgICAgICAg
IHJldHVybjsKKyAgICBjYXNlIFVORVhQRUNURURfRVNDQVBFX0VSUk9SVE9LOgorICAgICAgICBv
dXQucHJpbnQoIlVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2Vu
OiAnIiwgZ2V0VG9rZW4oKSwgIiciKTsKKyAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgSU5WQUxJ
RF9JREVOVElGSUVSX1VOSUNPREVfRVNDQVBFX0VSUk9SVE9LOgogICAgICAgICBvdXQucHJpbnQo
IkludmFsaWQgdW5pY29kZSBlc2NhcGUgaW4gaWRlbnRpZmllcjogJyIsIGdldFRva2VuKCksICIn
Iik7CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
YXJzZXIvUGFyc2VyVG9rZW5zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNl
clRva2Vucy5oCmluZGV4IGEwNTU0ZmYzNmUxNDc0ZWFmNWIwMjk4MWUzNmEzYjAyZDg2MGM4NTIu
LjE3M2Q4OGY0MzRhOTM2ZWJiOTZmOWJkMGJlZTFlZWJkNGIzZDkzNzAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJUb2tlbnMuaApAQCAtMTg4LDYgKzE4OCw3IEBAIGVu
dW0gSlNUb2tlblR5cGUgewogICAgIFVOVEVSTUlOQVRFRF9URU1QTEFURV9MSVRFUkFMX0VSUk9S
VE9LID0gMTMgfCBFcnJvclRva2VuRmxhZyB8IFVudGVybWluYXRlZEVycm9yVG9rZW5GbGFnLAog
ICAgIFVOVEVSTUlOQVRFRF9SRUdFWFBfTElURVJBTF9FUlJPUlRPSyA9IDE0IHwgRXJyb3JUb2tl
bkZsYWcgfCBVbnRlcm1pbmF0ZWRFcnJvclRva2VuRmxhZywKICAgICBJTlZBTElEX1RFTVBMQVRF
X0xJVEVSQUxfRVJST1JUT0sgPSAxNSB8IEVycm9yVG9rZW5GbGFnLAorICAgIFVORVhQRUNURURf
RVNDQVBFX0VSUk9SVE9LID0gMTYgfCBFcnJvclRva2VuRmxhZywKIH07CiAKIHN0cnVjdCBKU1Rl
eHRQb3NpdGlvbiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312568</attachid>
            <date>2017-06-10 02:50:44 -0700</date>
            <delta_ts>2017-06-10 14:17:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171310-20170610125042.patch</filename>
            <type>text/plain</type>
            <size>28962</size>
            <attacher name="GSkachkov">gskachkov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3OTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
NjBmNzM5ZDE2NWViY2NlNzU4M2E2MzQ2OTU1OGJhNTIyNGM0ZjRjLi4yNWEwMmY3NDhjNzk5ZWQ3
ZGFlYjNhZDhlYTU4NDZlZWRiYzRjYzNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAxNy0wNi0xMCAgT2xla3NhbmRyIFNrYWNoa292ICA8Z3NrYWNoa292QGdt
YWlsLmNvbT4KKworICAgICAgICBXZSBpbmNvcnJlY3RseSBhbGxvdyBlc2NhcGVkIGNoYXJhY3Rl
cnMgaW4ga2V5d29yZCB0b2tlbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3MTMxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFjY29yZGluZyBzcGVjIGl0IGlzIG5vdCBhbGxvdyB0byB1c2UgZXNjYXBl
ZCBjaGFyYWN0ZXJzIGluIAorICAgICAgICBrZXl3b3Jkcy4gaHR0cHM6Ly90YzM5LmdpdGh1Yi5p
by9lY21hMjYyLyNzZWMtcmVzZXJ2ZWQtd29yZHMKKyAgICAgICAgQ3VycmVudCBwYXRjaCBpbXBs
ZW1lbnRzIHRoaXMgcmVxdWlyZW1lbnRzLgorCisKKyAgICAgICAgKiBwYXJzZXIvTGV4ZXIuY3Bw
OgorICAgICAgICAoSlNDOjpMZXhlcjxDaGFyYWN0ZXJUeXBlPjo6cGFyc2VJZGVudGlmaWVyU2xv
d0Nhc2UpOgorICAgICAgICAqIHBhcnNlci9QYXJzZXIuY3BwOgorICAgICAgICAoSlNDOjpQYXJz
ZXI8TGV4ZXJUeXBlPjo6cHJpbnRVbmV4cGVjdGVkVG9rZW5UZXh0KToKKyAgICAgICAgKiBwYXJz
ZXIvUGFyc2VyVG9rZW5zLmg6CisKIDIwMTctMDQtMTMgIFNrYWNoa292IE9sZWtzYW5kciAgPGdz
a2FjaGtvdkBnbWFpbC5jb20+CiAKICAgICAgICAgW0VTTmV4dF0gQXN5bmMgaXRlcmF0aW9uIC0g
SW1wbGVtZW50IEFzeW5jIEdlbmVyYXRvcgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9MZXhlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVy
LmNwcAppbmRleCA3YzVkZjQxMjA5ZWRiMGIyY2Y2OTU5Y2Q5MTU5ZGM1MDJhZDY0MjExLi5jZWI4
ZjQ0Njc1YzkxZGE3YWUwYTc1NjhmMTQzNDVhMjU0OTU1ZmM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcGFyc2VyL0xleGVyLmNwcApAQCAtMTEyOSw3ICsxMTI5LDggQEAgdGVtcGxhdGU8dHlwZW5h
bWUgQ2hhcmFjdGVyVHlwZT4gdGVtcGxhdGU8Ym9vbCBzaG91bGRDcmVhdGVJZGVudGlmaWVyPiBK
U1Rva2VuVHkKICAgICAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgICAgIHJldHVybiBJREVOVDsK
ICAgICAgICAgSlNUb2tlblR5cGUgdG9rZW4gPSBzdGF0aWNfY2FzdDxKU1Rva2VuVHlwZT4oZW50
cnktPmxleGVyVmFsdWUoKSk7Ci0gICAgICAgIHJldHVybiAodG9rZW4gIT0gUkVTRVJWRURfSUZf
U1RSSUNUKSB8fCBzdHJpY3RNb2RlID8gdG9rZW4gOiBJREVOVDsKKyAgICAgICAgaWYgKCh0b2tl
biAhPSBSRVNFUlZFRF9JRl9TVFJJQ1QpIHx8IHN0cmljdE1vZGUpCisgICAgICAgICAgICByZXR1
cm4gYnVmZmVyUmVxdWlyZWQgPyBVTkVYUEVDVEVEX0VTQ0FQRV9FUlJPUlRPSyA6IHRva2VuOwog
ICAgIH0KIAogICAgIHJldHVybiBJREVOVDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFy
c2VyLmNwcAppbmRleCA5NzJkNDBhNTVkOWFiMzY5MzQwZjViMTJjYTkzOGI1MDY0OTc2MGFiLi5j
ZjE2OGJhZGZmMDRjYTU3YjY4YjNjMDkwNDBhYzM1ZGJmODdkMzNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC00OTM1LDYgKzQ5MzUsOSBAQCB0ZW1wbGF0ZSA8
dHlwZW5hbWUgTGV4ZXJUeXBlPiB2b2lkIFBhcnNlcjxMZXhlclR5cGU+OjpwcmludFVuZXhwZWN0
ZWRUb2tlblRleHQoVwogICAgIGNhc2UgSU5WQUxJRF9JREVOVElGSUVSX0VTQ0FQRV9FUlJPUlRP
SzoKICAgICAgICAgb3V0LnByaW50KCJJbnZhbGlkIGVzY2FwZSBpbiBpZGVudGlmaWVyOiAnIiwg
Z2V0VG9rZW4oKSwgIiciKTsKICAgICAgICAgcmV0dXJuOworICAgIGNhc2UgVU5FWFBFQ1RFRF9F
U0NBUEVfRVJST1JUT0s6CisgICAgICAgIG91dC5wcmludCgiVW5leHBlY3RlZCBlc2NhcGVkIGNo
YXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICciLCBnZXRUb2tlbigpLCAiJyIpOworICAgICAg
ICByZXR1cm47CiAgICAgY2FzZSBJTlZBTElEX0lERU5USUZJRVJfVU5JQ09ERV9FU0NBUEVfRVJS
T1JUT0s6CiAgICAgICAgIG91dC5wcmludCgiSW52YWxpZCB1bmljb2RlIGVzY2FwZSBpbiBpZGVu
dGlmaWVyOiAnIiwgZ2V0VG9rZW4oKSwgIiciKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJUb2tlbnMuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmgKaW5kZXggYTA1NTRmZjM2ZTE0NzRl
YWY1YjAyOTgxZTM2YTNiMDJkODYwYzg1Mi4uMTczZDg4ZjQzNGE5MzZlYmI5NmY5YmQwYmVlMWVl
YmQ0YjNkOTM3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJz
ZXJUb2tlbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlclRva2Vu
cy5oCkBAIC0xODgsNiArMTg4LDcgQEAgZW51bSBKU1Rva2VuVHlwZSB7CiAgICAgVU5URVJNSU5B
VEVEX1RFTVBMQVRFX0xJVEVSQUxfRVJST1JUT0sgPSAxMyB8IEVycm9yVG9rZW5GbGFnIHwgVW50
ZXJtaW5hdGVkRXJyb3JUb2tlbkZsYWcsCiAgICAgVU5URVJNSU5BVEVEX1JFR0VYUF9MSVRFUkFM
X0VSUk9SVE9LID0gMTQgfCBFcnJvclRva2VuRmxhZyB8IFVudGVybWluYXRlZEVycm9yVG9rZW5G
bGFnLAogICAgIElOVkFMSURfVEVNUExBVEVfTElURVJBTF9FUlJPUlRPSyA9IDE1IHwgRXJyb3JU
b2tlbkZsYWcsCisgICAgVU5FWFBFQ1RFRF9FU0NBUEVfRVJST1JUT0sgPSAxNiB8IEVycm9yVG9r
ZW5GbGFnLAogfTsKIAogc3RydWN0IEpTVGV4dFBvc2l0aW9uIHsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvc3RyZXNzL2Rlc3RydWN0dXJpbmctYXNzaWdubWVudC1zeW50YXguanMgYi9KU1Rlc3RzL3N0
cmVzcy9kZXN0cnVjdHVyaW5nLWFzc2lnbm1lbnQtc3ludGF4LmpzCmluZGV4IDIzOWNhMzVhNGNj
MTIwMmJiOTE2ZDQwMzAwMGMzYWY0MGUzNTZjNjYuLjU4MDhmZDI0ZDRlZTEwY2IyY2EzYmFkN2E2
NTc0NzRkNDk5Y2M1ZWEgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvc3RyZXNzL2Rlc3RydWN0dXJpbmct
YXNzaWdubWVudC1zeW50YXguanMKKysrIGIvSlNUZXN0cy9zdHJlc3MvZGVzdHJ1Y3R1cmluZy1h
c3NpZ25tZW50LXN5bnRheC5qcwpAQCAtNDcsMTYgKzQ3LDE2IEBAIHRlc3RTeW50YXgoIlt7cHJv
cDogMX0ucHJvcF0gPSBbXSIpOwogdGVzdFN5bnRheEVycm9yKCJbLi4uYyA9IDFdID0gW10iLCAi
U3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdG9rZW4gJz0nLiBFeHBlY3RlZCBhIGNsb3NpbmcgJ10n
IGZvbGxvd2luZyBhIHJlc3QgZWxlbWVudCBkZXN0cnVjdHVyaW5nIHBhdHRlcm4uIik7CiB0ZXN0
U3ludGF4RXJyb3IoIlsuLi5jLCBkXSA9IFtdIiwgIlN5bnRheEVycm9yOiBVbmV4cGVjdGVkIHRv
a2VuICcsJy4gRXhwZWN0ZWQgYSBjbG9zaW5nICddJyBmb2xsb3dpbmcgYSByZXN0IGVsZW1lbnQg
ZGVzdHJ1Y3R1cmluZyBwYXR0ZXJuLiIpOwogdGVzdFN5bnRheEVycm9yKCJbdGhpc10gPSBbXSIs
ICJTeW50YXhFcnJvcjogSW52YWxpZCBkZXN0cnVjdHVyaW5nIGFzc2lnbm1lbnQgdGFyZ2V0LiIp
OwotdGVzdFN5bnRheEVycm9yKCJbdGhcXHV7Njl9c10gPSBbXSIsICJTeW50YXhFcnJvcjogSW52
YWxpZCBkZXN0cnVjdHVyaW5nIGFzc2lnbm1lbnQgdGFyZ2V0LiIpOwordGVzdFN5bnRheEVycm9y
KCJbdGhcXHV7Njl9c10gPSBbXSIsICJTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNo
YXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd0aFxcdXs2OX1zJyIpOwogdGVzdFN5bnRheEVy
cm9yKCJbZnVuY3Rpb24oKSB7fV0gPSBbXSIsICJTeW50YXhFcnJvcjogSW52YWxpZCBkZXN0cnVj
dHVyaW5nIGFzc2lnbm1lbnQgdGFyZ2V0LiIpOwogdGVzdFN5bnRheEVycm9yKCJbJ3N0cmluZydd
ID0gW10iLCAiU3ludGF4RXJyb3I6IEludmFsaWQgZGVzdHJ1Y3R1cmluZyBhc3NpZ25tZW50IHRh
cmdldC4iKTsKIHRlc3RTeW50YXhFcnJvcigiWzEyM10gPSBbXSIsICJTeW50YXhFcnJvcjogSW52
YWxpZCBkZXN0cnVjdHVyaW5nIGFzc2lnbm1lbnQgdGFyZ2V0LiIpOwogdGVzdFN5bnRheEVycm9y
KCJbdHJ1ZV0gPSBbXSIsICJTeW50YXhFcnJvcjogSW52YWxpZCBkZXN0cnVjdHVyaW5nIGFzc2ln
bm1lbnQgdGFyZ2V0LiIpOwotdGVzdFN5bnRheEVycm9yKCJbdHJ1XFx1MDA2NV0gPSBbXSIsICJT
eW50YXhFcnJvcjogSW52YWxpZCBkZXN0cnVjdHVyaW5nIGFzc2lnbm1lbnQgdGFyZ2V0LiIpOwor
dGVzdFN5bnRheEVycm9yKCJbdHJ1XFx1MDA2NV0gPSBbXSIsICJTeW50YXhFcnJvcjogVW5leHBl
Y3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd0cnVcXHUwMDY1JyIp
OwogdGVzdFN5bnRheEVycm9yKCJbZmFsc2VdID0gW10iLCAiU3ludGF4RXJyb3I6IEludmFsaWQg
ZGVzdHJ1Y3R1cmluZyBhc3NpZ25tZW50IHRhcmdldC4iKTsKLXRlc3RTeW50YXhFcnJvcigiW2Zc
XHUwMDYxbHNlXSA9IFtdIiwgIlN5bnRheEVycm9yOiBJbnZhbGlkIGRlc3RydWN0dXJpbmcgYXNz
aWdubWVudCB0YXJnZXQuIik7Cit0ZXN0U3ludGF4RXJyb3IoIltmXFx1MDA2MWxzZV0gPSBbXSIs
ICJTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0
b2NrZW46ICdmXFx1MDA2MWxzZSciKTsKIHRlc3RTeW50YXhFcnJvcigiW251bGxdID0gW10iLCAi
U3ludGF4RXJyb3I6IEludmFsaWQgZGVzdHJ1Y3R1cmluZyBhc3NpZ25tZW50IHRhcmdldC4iKTsK
LXRlc3RTeW50YXhFcnJvcigiW25cXHV7NzV9bGxdID0gW10iLCAiU3ludGF4RXJyb3I6IEludmFs
aWQgZGVzdHJ1Y3R1cmluZyBhc3NpZ25tZW50IHRhcmdldC4iKTsKK3Rlc3RTeW50YXhFcnJvcigi
W25cXHV7NzV9bGxdID0gW10iLCAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFy
YWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAnblxcdXs3NX1sbCciKTsKIAogdGVzdFN5bnRheEVy
cm9yKCIndXNlIHN0cmljdCc7ICh7IGV2YWwgfSA9IHt9KSIsICJTeW50YXhFcnJvcjogQ2Fubm90
IG1vZGlmeSAnZXZhbCcgaW4gc3RyaWN0IG1vZGUuIik7CiB0ZXN0U3ludGF4RXJyb3IoIid1c2Ug
c3RyaWN0JzsgKHsgZXZhbCA9IDAgfSA9IHt9KSIsICJTeW50YXhFcnJvcjogQ2Fubm90IG1vZGlm
eSAnZXZhbCcgaW4gc3RyaWN0IG1vZGUuIik7CmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9l
cnJvci1tZXNzYWdlcy1mb3ItaW4tb3BlcmF0b3Itc2hvdWxkLW5vdC1jcmFzaC5qcyBiL0pTVGVz
dHMvc3RyZXNzL2Vycm9yLW1lc3NhZ2VzLWZvci1pbi1vcGVyYXRvci1zaG91bGQtbm90LWNyYXNo
LmpzCmluZGV4IGQ2OTlkZTA5NDRmMTM4OWZhM2JhZDRkOWRiNmI5NDZiYzIyODRjZWEuLmI1NDU4
MGNjMjhiNTkyMDU0MTM0Nzc0YzY0ZjY4MzY4Y2E3NTM1ODkgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMv
c3RyZXNzL2Vycm9yLW1lc3NhZ2VzLWZvci1pbi1vcGVyYXRvci1zaG91bGQtbm90LWNyYXNoLmpz
CisrKyBiL0pTVGVzdHMvc3RyZXNzL2Vycm9yLW1lc3NhZ2VzLWZvci1pbi1vcGVyYXRvci1zaG91
bGQtbm90LWNyYXNoLmpzCkBAIC0xLDExICsxLDMwIEBACi0vLyBUaGlzIHRlc3Qgc2hvdWxkIG5v
dCBjcmFzaC4KLQogbGV0IGVycm9yID0gbnVsbDsKIHRyeSB7Ci0gICAgLy8gRklYTUU6IFdlIHNo
b3VsZCBub3QgcGFyc2UgdGhpcyBhcyBhbiAiaW4iIG9wZXJhdGlvbi4KLSAgICBsZXQgciA9ICJw
cm9wIiBpXHUwMDZFIDIwOworICAgIGV2YWwoJ2xldCByID0gInByb3AiIGlcXHV7MDA2RX0gMjAn
KTsKIH0gY2F0Y2goZSkgewogICAgIGVycm9yID0gZTsKIH0KLWlmIChlcnJvci5tZXNzYWdlICE9
PSAiMjAgaXMgbm90IGFuIE9iamVjdC4iKQorCitpZiAoIWVycm9yIHx8IGVycm9yLm1lc3NhZ2Ug
IT09ICJVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ2lc
XHV7MDA2RX0nIikKICAgICB0aHJvdyBuZXcgRXJyb3IoIkJhZCIpOworCitlcnJvciA9IG51bGw7
Cit0cnkgeworICAgIGV2YWwoJ2xldCByID0gInByb3AiIGlcXHUwMDZFIDIwJyk7Cit9IGNhdGNo
KGUpIHsKKyAgICBlcnJvciA9IGU7Cit9CisKK2lmICghZXJyb3IgfHwgZXJyb3IubWVzc2FnZSAh
PT0gIlVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAnaVxc
dTAwNkUnIikKKyAgICB0aHJvdyBuZXcgRXJyb3IoIkJhZCIpOworCisvLyBUaGlzIHRlc3Qgc2hv
dWxkIG5vdCBjcmFzaC4KK2Vycm9yID0gbnVsbDsKK3RyeSB7CisgICAgZXZhbCgnbGV0IHIgPSAi
cHJvcCIgaVx1MDA2RSAyMCcpOworfSBjYXRjaChlKSB7CisgICAgZXJyb3IgPSBlOworfQorCitp
ZiAoIWVycm9yIHx8IGVycm9yLm1lc3NhZ2UgIT09ICIyMCBpcyBub3QgYW4gT2JqZWN0LiAoZXZh
bHVhdGluZyBcJ1wicHJvcFwiIGluIDIwXCcpIikKKyAgICB0aHJvdyBuZXcgRXJyb3IoIkJhZCIp
OwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNz
L3Jlc2VydmVkLXdvcmQtd2l0aC1lc2NhcGUuanMgYi9KU1Rlc3RzL3N0cmVzcy9yZXNlcnZlZC13
b3JkLXdpdGgtZXNjYXBlLmpzCmluZGV4IGY1MmRjNGUyMWJmNzFlMjZhMmNlNzNmMzZhMjA5YmIx
ZTI0NGVjNWIuLjBmNjg4ZTA3OGQzN2UyMmIxNDM2YTRlMmU0MjcyM2Q4MzBiY2MzOGUgMTAwNjQ0
Ci0tLSBhL0pTVGVzdHMvc3RyZXNzL3Jlc2VydmVkLXdvcmQtd2l0aC1lc2NhcGUuanMKKysrIGIv
SlNUZXN0cy9zdHJlc3MvcmVzZXJ2ZWQtd29yZC13aXRoLWVzY2FwZS5qcwpAQCAtMjUsMTE3ICsy
NSwxMjggQEAgdGVzdFN5bnRheCgidmFyIGNvY29hIik7CiB0ZXN0U3ludGF4KCJ2YXIgY1x1MDA2
ZmNvYSIpOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIgdmFyYCwgU3RyaW5nLnJh
d2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIHZhcmlhYmxl
IG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIgdlx1MDA2MXJgLCBTdHJp
bmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMg
YSB2YXJpYWJsZSBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHZcdXsw
MDYxfXJgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2
XHV7MDA2MX1yJyBhcyBhIHZhcmlhYmxlIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5n
LnJhd2B2YXIgdlx1MDA2MXJgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVz
Y2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5
bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHZcdXswMDYxfXJgLCBTdHJpbmcucmF3YFN5bnRheEVy
cm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3Zc
dXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YHZhciB2YXIgPSAyMDAw
MDAwO2AsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3Zh
cicgYXMgYSB2YXJpYWJsZSBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFy
IHZcdTAwNjFyID0gMjAwMDAwMDtgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNl
IHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSB2YXJpYWJsZSBuYW1lLmApOwotdGVzdFN5bnRh
eEVycm9yKFN0cmluZy5yYXdgdmFyIHZcdXswMDYxfXIgPSAyMDAwMDAwYCwgU3RyaW5nLnJhd2BT
eW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSB2YXJp
YWJsZSBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHZcdTAwNjFyID0g
MjAwMDAwMDtgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hh
cmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9y
KFN0cmluZy5yYXdgdmFyIHZcdXswMDYxfXIgPSAyMDAwMDAwYCwgU3RyaW5nLnJhd2BTeW50YXhF
cnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2
XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIge3Zhcn0gPSBv
YmopYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0
cnVjdHVyaW5nIHN5bnRheCBmb3Iga2V5d29yZCAndmFyJy5gKTsKLXRlc3RTeW50YXhFcnJvcihT
dHJpbmcucmF3YHZhciB7dlx1MDA2MXJ9ID0gb2JqYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjog
Q2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5nIHN5bnRheCBmb3Iga2V5d29yZCAn
dmFyJy5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YHZhciB7dlx1ezAwNjF9cn0gPSBv
YmpgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIGFiYnJldmlhdGVkIGRlc3Ry
dWN0dXJpbmcgc3ludGF4IGZvciBrZXl3b3JkICd2YXInLmApOwordGVzdFN5bnRheEVycm9yKFN0
cmluZy5yYXdgdmFyIHt2XHUwMDYxcn0gPSBvYmpgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFy
J2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHt2XHV7MDA2MX1yfSA9IG9iamAs
IFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGlu
IGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmlu
Zy5yYXdgdmFyIHt2YXI6dmFyfSA9IG9iailgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5u
b3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgdmFyaWFibGUgbmFtZS5gKTsKLXRlc3RTeW50
YXhFcnJvcihTdHJpbmcucmF3YHZhciB7dmFyOnZcdTAwNjFyfSA9IG9iamAsIFN0cmluZy5yYXdg
U3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdTAwNjFyJyBhcyBhIHZhcmlh
YmxlIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIge3Zhcjp2XHV7MDA2
MX1yfSA9IG9iamAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdv
cmQgJ3ZcdXswMDYxfXInIGFzIGEgdmFyaWFibGUgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJvcihT
dHJpbmcucmF3YHZhciB7dmFyOnZcdTAwNjFyfSA9IG9iamAsIFN0cmluZy5yYXdgU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1
MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIge3Zhcjp2XHV7MDA2MX1y
fSA9IG9iamAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFy
YWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVy
cm9yKFN0cmluZy5yYXdgdmFyIFt2YXJdID0gb2JqYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjog
Q2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIHZhcmlhYmxlIG5hbWUuYCk7Ci10ZXN0
U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIgW3ZcdTAwNjFyXSA9IG9iamAsIFN0cmluZy5yYXdg
U3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdTAwNjFyJyBhcyBhIHZhcmlh
YmxlIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIgW3ZcdXswMDYxfXJd
ID0gb2JqYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAn
dlx1ezAwNjF9cicgYXMgYSB2YXJpYWJsZSBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmlu
Zy5yYXdgdmFyIFt2XHUwMDYxcl0gPSBvYmpgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4
cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2Ap
OwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIFt2XHV7MDA2MX1yXSA9IG9iamAsIFN0
cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtl
eXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5y
YXdgW3Zhcl0gPSBvYmpgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGtleXdv
cmQgJ3ZhcidgKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YFt2XHUwMDYxcl0gPSBvYmpg
LCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGtleXdvcmQgJ3ZcdTAwNjFyJ2Ap
OwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgW3ZcdXswMDYxfXJdID0gb2JqYCwgU3RyaW5n
LnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBrZXl3b3JkICd2XHV7MDA2MX1yJ2ApOwordGVz
dFN5bnRheEVycm9yKFN0cmluZy5yYXdgW3ZcdTAwNjFyXSA9IG9iamAsIFN0cmluZy5yYXdgU3lu
dGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2Vu
OiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2Bbdlx1ezAwNjF9cl0g
PSBvYmpgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFj
dGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJv
cihTdHJpbmcucmF3YGZ1bmN0aW9uIHZhcigpIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6
IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZhcicgYXMgYSBmdW5jdGlvbiBuYW1lLmApOwotdGVz
dFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gdlx1MDA2MXIoKSB7IH1gLCBTdHJpbmcu
cmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSBm
dW5jdGlvbiBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gdlx1
ezAwNjF9cigpIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtl
eXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgZnVuY3Rpb24gbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJv
cihTdHJpbmcucmF3YGZ1bmN0aW9uIHZcdTAwNjFyKCkgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhF
cnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2
XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIHZcdXswMDYx
fXIoKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hh
cmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhF
cnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEodmFyKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVy
cm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7
Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKHZcdTAwNjFyKSB7IH1gLCBT
dHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicg
YXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0
aW9uIGEodlx1ezAwNjF9cikgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVz
ZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKK3Rlc3RT
eW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEodlx1MDA2MXIpIHsgfWAsIFN0cmluZy5y
YXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQg
dG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlv
biBhKHZcdXswMDYxfXIpIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
ZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAog
dGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gYSh7dmFyfSkgeyB9YCwgU3RyaW5n
LnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5nIHN5
bnRheCBmb3Iga2V5d29yZCAndmFyJy5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1
bmN0aW9uIGEoe3ZcdTAwNjFyfSkgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90
IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5nIHN5bnRheCBmb3Iga2V5d29yZCAndmFyJy5g
KTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEoe3ZcdXswMDYxfXJ9KSB7
IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIGFiYnJldmlhdGVkIGRlc3Ry
dWN0dXJpbmcgc3ludGF4IGZvciBrZXl3b3JkICd2YXInLmApOwordGVzdFN5bnRheEVycm9yKFN0
cmluZy5yYXdgZnVuY3Rpb24gYSh7dlx1MDA2MXJ9KSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVy
cm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3Zc
dTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gYSh7dlx1ezAw
NjF9cn0pIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBj
aGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRh
eEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gYSh7dmFyOnZhcn0pIHsgfWAsIFN0cmluZy5yYXdg
U3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZhcicgYXMgYSBwYXJhbWV0ZXIg
bmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEoe3Zhcjp2XHUw
MDYxcn0pIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdv
cmQgJ3ZcdTAwNjFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0
cmluZy5yYXdgZnVuY3Rpb24gYSh7dmFyOnZcdXswMDYxfXJ9KSB7IH1gLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHV7MDA2MX1yJyBhcyBhIHBhcmFt
ZXRlciBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gYSh7dmFy
OnZcdTAwNjFyfSkgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2Nh
cGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50
YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEoe3Zhcjp2XHV7MDA2MX1yfSkgeyB9YCwgU3Ry
aW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5
d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJh
d2BmdW5jdGlvbiBhKFt2YXJdKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3Qg
dXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4
RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKFt2XHUwMDYxcl0pIHsgfWAsIFN0cmluZy5yYXdg
U3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdTAwNjFyJyBhcyBhIHBhcmFt
ZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gYShbdlx1
ezAwNjF9cl0pIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtl
eXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJy
b3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKFt2XHUwMDYxcl0pIHsgfWAsIFN0cmluZy5yYXdgU3lu
dGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2Vu
OiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKFt2
XHV7MDA2MX1yXSkgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2Nh
cGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0
U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gdmFyKCkgeyB9KWAsIFN0cmluZy5yYXdg
U3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZhcicgYXMgYSBmdW5jdGlvbiBu
YW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIHZcdTAwNjFyKCkg
eyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3Zc
dTAwNjFyJyBhcyBhIGZ1bmN0aW9uIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJh
d2AoZnVuY3Rpb24gdlx1ezAwNjF9cigpIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBD
YW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHV7MDA2MX1yJyBhcyBhIGZ1bmN0aW9uIG5hbWUuYCk7
Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gdlx1MDA2MXIoKSB7IH0pYCwg
U3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4g
a2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3
YChmdW5jdGlvbiB2XHV7MDA2MX1yKCkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVu
ZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9
cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEodmFyKSB7IH0p
YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBh
cyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0
aW9uIGEodlx1MDA2MXIpIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNl
IHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50
YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHZcdXswMDYxfXIpIHsgfSlgLCBTdHJpbmcu
cmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHV7MDA2MX1yJyBhcyBh
IHBhcmFtZXRlciBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9u
IGEodlx1MDA2MXIpIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVz
Y2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5
bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEodlx1ezAwNjF9cikgeyB9KWAsIFN0cmlu
Zy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdv
cmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdg
KGZ1bmN0aW9uIGEoe3Zhcn0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3Qg
dXNlIGFiYnJldmlhdGVkIGRlc3RydWN0dXJpbmcgc3ludGF4IGZvciBrZXl3b3JkICd2YXInLmAp
OwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoe3ZcdTAwNjFyfSkgeyB9
KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1
Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3Ry
aW5nLnJhd2AoZnVuY3Rpb24gYSh7dlx1ezAwNjF9cn0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRh
eEVycm9yOiBDYW5ub3QgdXNlIGFiYnJldmlhdGVkIGRlc3RydWN0dXJpbmcgc3ludGF4IGZvciBr
ZXl3b3JkICd2YXInLmApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEo
e3ZcdTAwNjFyfSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNj
YXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3lu
dGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7dlx1ezAwNjF9cn0pIHsgfSlgLCBTdHJp
bmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3
b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3
YChmdW5jdGlvbiBhKHt2YXI6dmFyfSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENh
bm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZhcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RT
eW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHt2YXI6dlx1MDA2MXJ9KSB7IH0pYCwg
U3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1MDA2MXIn
IGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVu
Y3Rpb24gYSh7dmFyOnZcdXswMDYxfXJ9KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjog
Q2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5g
KTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHt2YXI6dlx1MDA2MXJ9
KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJh
Y3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihT
dHJpbmcucmF3YChmdW5jdGlvbiBhKHt2YXI6dlx1ezAwNjF9cn0pIHsgfSlgLCBTdHJpbmcucmF3
YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRv
Y2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5j
dGlvbiBhKFt2YXJdKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0
aGUga2V5d29yZCAndmFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9y
KFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW3ZcdTAwNjFyXSkgeyB9KWAsIFN0cmluZy5yYXdgU3lu
dGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdTAwNjFyJyBhcyBhIHBhcmFtZXRl
ciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW3ZcdXsw
MDYxfXJdKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5
d29yZCAndlx1ezAwNjF9cicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJv
cihTdHJpbmcucmF3YChmdW5jdGlvbiBhKFt2XHUwMDYxcl0pIHsgfSlgLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tl
bjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEo
W3ZcdXswMDYxfXJdKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBl
c2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0
ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYShbe3Zhcn1dKSB7IH0pYCwgU3Ry
aW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5n
IHN5bnRheCBmb3Iga2V5d29yZCAndmFyJy5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3
YChmdW5jdGlvbiBhKFt7dlx1MDA2MXJ9XSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6
IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQg
J3ZhcicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYShbe3ZcdXsw
MDYxfXJ9XSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgYWJicmV2
aWF0ZWQgZGVzdHJ1Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7Cit0ZXN0U3lu
dGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYShbe3ZcdTAwNjFyfV0pIHsgfSlgLCBTdHJp
bmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3
b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1
bmN0aW9uIGEoW3t2XHV7MDA2MX1yfV0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBV
bmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYx
fXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKFt7dmFyOnZh
cn1dKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29y
ZCAndmFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5y
YXdgKGZ1bmN0aW9uIGEoW3t2YXI6dlx1MDA2MXJ9XSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4
RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdTAwNjFyJyBhcyBhIHBhcmFtZXRlciBu
YW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW3t2YXI6dlx1
ezAwNjF9cn1dKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUg
a2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKK3Rlc3RTeW50YXhF
cnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKFt7dmFyOnZcdTAwNjFyfV0pIHsgfSlgLCBTdHJp
bmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3
b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1
bmN0aW9uIGEoW3t2YXI6dlx1ezAwNjF9cn1dKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7
MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYShbW3Zh
cl1dKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29y
ZCAndmFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5y
YXdgKGZ1bmN0aW9uIGEoW1t2XHUwMDYxcl1dKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEgcGFyYW1ldGVyIG5hbWUu
YCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYShbW3ZcdXswMDYxfXJd
XSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQg
J3ZcdXswMDYxfXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3Ry
aW5nLnJhd2AoZnVuY3Rpb24gYShbW3ZcdTAwNjFyXV0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRh
eEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjog
J3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW1t2
XHV7MDA2MX1yXV0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVz
Y2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRl
c3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgaGVsbG86IHt2YXJ9fSkgeyB9
KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1
Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3Ry
aW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhlbGxvOiB7dlx1MDA2MXJ9fSkgeyB9KWAsIFN0cmluZy5y
YXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1Y3R1cmluZyBzeW50
YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVu
Y3Rpb24gYSh7IGhlbGxvOiB7dlx1ezAwNjF9cn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhF
cnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5nIHN5bnRheCBmb3Iga2V5
d29yZCAndmFyJy5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsg
aGVsbG86IHt2XHUwMDYxcn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBl
Y3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsK
K3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgaGVsbG86IHt2XHV7MDA2
MX1yfX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQg
Y2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50
YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgaGVsbG86IHt2YXI6dmFyfX0pIHsgfSlg
LCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFz
IGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rp
b24gYSh7IGhlbGxvOiB7dmFyOnZcdTAwNjFyfX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVy
cm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0ZXIgbmFt
ZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgaGVsbG86IHt2
YXI6dlx1ezAwNjF9cn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVz
ZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKK3Rlc3RT
eW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgaGVsbG86IHt2YXI6dlx1MDA2MXJ9
fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFy
YWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3Io
U3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhlbGxvOiB7dmFyOnZcdXswMDYxfXJ9fSkgeyB9KWAs
IFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGlu
IGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmlu
Zy5yYXdgKGZ1bmN0aW9uIGEoeyBoZWxsbzogW3Zhcl19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50
YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIHBhcmFtZXRlciBuYW1l
LmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyBoZWxsbzogW3Zc
dTAwNjFyXX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBr
ZXl3b3JkICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJv
cihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgaGVsbG86IFt2XHV7MDA2MX1yXX0pIHsgfSlgLCBT
dHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHV7MDA2MX1y
JyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1
bmN0aW9uIGEoeyBoZWxsbzogW3ZcdTAwNjFyXX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVy
cm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3Zc
dTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyBoZWxs
bzogW3ZcdXswMDYxfXJdfSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0
ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsK
IAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiB7dmFyfSB9KSB7
IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0
cnVjdHVyaW5nIHN5bnRheCBmb3Iga2V5d29yZCAndmFyJy5gKTsKLXRlc3RTeW50YXhFcnJvcihT
dHJpbmcucmF3YChmdW5jdGlvbiBhKHsgMDoge3ZcdTAwNjFyfX0pIHsgfSlgLCBTdHJpbmcucmF3
YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIGFiYnJldmlhdGVkIGRlc3RydWN0dXJpbmcgc3ludGF4
IGZvciBrZXl3b3JkICd2YXInLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0
aW9uIGEoeyAwOiB7dlx1ezAwNjF9cn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjog
Q2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5nIHN5bnRheCBmb3Iga2V5d29yZCAn
dmFyJy5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgMDoge3Zc
dTAwNjFyfX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2Fw
ZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRh
eEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiB7dlx1ezAwNjF9cn19KSB7IH0pYCwg
U3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4g
a2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5n
LnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2YXI6dmFyfX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRh
eEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgcGFyYW1ldGVyIG5hbWUu
YCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2YXI6dlx1
MDA2MXJ9fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtl
eXdvcmQgJ3ZcdTAwNjFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9y
KFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiB7dmFyOnZcdXswMDYxfXJ9fSkgeyB9KWAsIFN0
cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdXswMDYxfXIn
IGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVu
Y3Rpb24gYSh7IDA6IHt2YXI6dlx1MDA2MXJ9fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1
MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2
YXI6dlx1ezAwNjF9cn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3Rl
ZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwog
CiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2YWx1ZTp2YXJ9
fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQg
J3ZhcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3
YChmdW5jdGlvbiBhKHsgMDoge3ZhbHVlOnZcdTAwNjFyfX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0
ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgMDog
e3ZhbHVlOnZcdXswMDYxfXJ9fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5v
dCB1c2UgdGhlIGtleXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Cit0
ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2YWx1ZTp2XHUwMDYx
cn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNo
YXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJv
cihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgMDoge3ZhbHVlOnZcdXswMDYxfXJ9fSkgeyB9KWAs
IFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGlu
IGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmlu
Zy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiBbdmFyXX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVy
cm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7
Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IFt2XHUwMDYxcl19
KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAn
dlx1MDA2MXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5n
LnJhd2AoZnVuY3Rpb24gYSh7IDA6IFt2XHV7MDA2MX1yXX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHV7MDA2MX1yJyBhcyBhIHBhcmFt
ZXRlciBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAw
OiBbdlx1MDA2MXJdfSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
ZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0
U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IFt2XHV7MDA2MX1yXX0pIHsg
fSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVy
cyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihT
dHJpbmcucmF3YHRyeSB7IH0gY2F0Y2godmFyKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9y
OiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgY2F0Y2ggcGFyYW1ldGVyIG5hbWUu
YCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B0cnkgeyB9IGNhdGNoKHZcdTAwNjFyKSB7
IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUw
MDYxcicgYXMgYSBjYXRjaCBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJp
bmcucmF3YHRyeSB7IH0gY2F0Y2godlx1ezAwNjF9cikgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhF
cnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBjYXRjaCBwYXJh
bWV0ZXIgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YHRyeSB7IH0gY2F0Y2go
dlx1MDA2MXIpIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBl
ZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4
RXJyb3IoU3RyaW5nLnJhd2B0cnkgeyB9IGNhdGNoKHZcdXswMDYxfXIpIHsgfWAsIFN0cmluZy5y
YXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQg
dG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgY2xh
c3MgdmFyIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdv
cmQgJ3ZhcicgYXMgYSBjbGFzcyBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdg
Y2xhc3Mgdlx1MDA2MXIgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0
aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEgY2xhc3MgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJv
cihTdHJpbmcucmF3YGNsYXNzIHZcdXswMDYxfXIgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBjbGFzcyBuYW1lLmAp
OwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgY2xhc3Mgdlx1MDA2MXIgeyB9YCwgU3RyaW5n
LnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29y
ZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGNsYXNz
IHZcdXswMDYxfXIgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2Nh
cGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCi0vLyBB
bGxvd2VkIGluIG5vbi1rZXl3b3JkIGF3YXJlIGNvbnRleHQuCi10ZXN0U3ludGF4KFN0cmluZy5y
YXdgKHsgdlx1MDA2MXI6ICdDb2NvYScgfSlgKTsKLXRlc3RTeW50YXgoU3RyaW5nLnJhd2AoeyB2
XHV7MDA2MX1yOiAnQ29jb2EnIH0pYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoeyB2
XHUwMDYxcjogJ0NvY29hJyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
ZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0
U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoeyB2XHV7MDA2MX1yOiAnQ29jb2EnIH0pYCwgU3RyaW5n
LnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29y
ZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOworCit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B7
Zm9yKG8gaVx1MDA2RSB7fSl7fX1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVk
IGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ2lcdTAwNkUnYCk7Cit0ZXN0
U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B7Zm9yKG8gaVx1ezAwNkV9IHt9KXt9fWAsIFN0cmluZy5y
YXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQg
dG9ja2VuOiAnaVx1ezAwNkV9J2ApOworCisKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGlt
cGxlbWVudHNgLCBTdHJpbmcucmF3YFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxl
OiBpbXBsZW1lbnRzYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BpbXBsZW1lXHUwMDZF
dHNgLCBTdHJpbmcucmF3YFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBpbXBs
ZW1lbnRzYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BpbXBsZW1lXHV7MDA2RX10c2As
IFN0cmluZy5yYXdgUmVmZXJlbmNlRXJyb3I6IENhbid0IGZpbmQgdmFyaWFibGU6IGltcGxlbWVu
dHNgKTsKKwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgJ3VzZSBzdHJpY3QnOyBpbXBsZW1l
bnRzYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCB1c2Ugb2YgcmVzZXJ2ZWQg
d29yZCAnaW1wbGVtZW50cycgaW4gc3RyaWN0IG1vZGVgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJp
bmcucmF3YCd1c2Ugc3RyaWN0JzsgaW1wbGVtZVx1MDA2RXRzYCwgU3RyaW5nLnJhd2BTeW50YXhF
cnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICdp
bXBsZW1lXHUwMDZFdHMnYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AndXNlIHN0cmlj
dCc7IGltcGxlbWVcdXswMDZFfXRzYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3Rl
ZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICdpbXBsZW1lXHV7MDA2RX10
cydgKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312579</attachid>
            <date>2017-06-10 14:17:49 -0700</date>
            <delta_ts>2017-06-12 11:24:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171310-20170611001745.patch</filename>
            <type>text/plain</type>
            <size>31582</size>
            <attacher name="GSkachkov">gskachkov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE3OTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
NjBmNzM5ZDE2NWViY2NlNzU4M2E2MzQ2OTU1OGJhNTIyNGM0ZjRjLi4yNWEwMmY3NDhjNzk5ZWQ3
ZGFlYjNhZDhlYTU4NDZlZWRiYzRjYzNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAxNy0wNi0xMCAgT2xla3NhbmRyIFNrYWNoa292ICA8Z3NrYWNoa292QGdt
YWlsLmNvbT4KKworICAgICAgICBXZSBpbmNvcnJlY3RseSBhbGxvdyBlc2NhcGVkIGNoYXJhY3Rl
cnMgaW4ga2V5d29yZCB0b2tlbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE3MTMxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFjY29yZGluZyBzcGVjIGl0IGlzIG5vdCBhbGxvdyB0byB1c2UgZXNjYXBl
ZCBjaGFyYWN0ZXJzIGluIAorICAgICAgICBrZXl3b3Jkcy4gaHR0cHM6Ly90YzM5LmdpdGh1Yi5p
by9lY21hMjYyLyNzZWMtcmVzZXJ2ZWQtd29yZHMKKyAgICAgICAgQ3VycmVudCBwYXRjaCBpbXBs
ZW1lbnRzIHRoaXMgcmVxdWlyZW1lbnRzLgorCisKKyAgICAgICAgKiBwYXJzZXIvTGV4ZXIuY3Bw
OgorICAgICAgICAoSlNDOjpMZXhlcjxDaGFyYWN0ZXJUeXBlPjo6cGFyc2VJZGVudGlmaWVyU2xv
d0Nhc2UpOgorICAgICAgICAqIHBhcnNlci9QYXJzZXIuY3BwOgorICAgICAgICAoSlNDOjpQYXJz
ZXI8TGV4ZXJUeXBlPjo6cHJpbnRVbmV4cGVjdGVkVG9rZW5UZXh0KToKKyAgICAgICAgKiBwYXJz
ZXIvUGFyc2VyVG9rZW5zLmg6CisKIDIwMTctMDQtMTMgIFNrYWNoa292IE9sZWtzYW5kciAgPGdz
a2FjaGtvdkBnbWFpbC5jb20+CiAKICAgICAgICAgW0VTTmV4dF0gQXN5bmMgaXRlcmF0aW9uIC0g
SW1wbGVtZW50IEFzeW5jIEdlbmVyYXRvcgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9MZXhlci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVy
LmNwcAppbmRleCA3YzVkZjQxMjA5ZWRiMGIyY2Y2OTU5Y2Q5MTU5ZGM1MDJhZDY0MjExLi5jZWI4
ZjQ0Njc1YzkxZGE3YWUwYTc1NjhmMTQzNDVhMjU0OTU1ZmM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcGFyc2VyL0xleGVyLmNwcApAQCAtMTEyOSw3ICsxMTI5LDggQEAgdGVtcGxhdGU8dHlwZW5h
bWUgQ2hhcmFjdGVyVHlwZT4gdGVtcGxhdGU8Ym9vbCBzaG91bGRDcmVhdGVJZGVudGlmaWVyPiBK
U1Rva2VuVHkKICAgICAgICAgaWYgKCFlbnRyeSkKICAgICAgICAgICAgIHJldHVybiBJREVOVDsK
ICAgICAgICAgSlNUb2tlblR5cGUgdG9rZW4gPSBzdGF0aWNfY2FzdDxKU1Rva2VuVHlwZT4oZW50
cnktPmxleGVyVmFsdWUoKSk7Ci0gICAgICAgIHJldHVybiAodG9rZW4gIT0gUkVTRVJWRURfSUZf
U1RSSUNUKSB8fCBzdHJpY3RNb2RlID8gdG9rZW4gOiBJREVOVDsKKyAgICAgICAgaWYgKCh0b2tl
biAhPSBSRVNFUlZFRF9JRl9TVFJJQ1QpIHx8IHN0cmljdE1vZGUpCisgICAgICAgICAgICByZXR1
cm4gYnVmZmVyUmVxdWlyZWQgPyBVTkVYUEVDVEVEX0VTQ0FQRV9FUlJPUlRPSyA6IHRva2VuOwog
ICAgIH0KIAogICAgIHJldHVybiBJREVOVDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFy
c2VyLmNwcAppbmRleCA5NzJkNDBhNTVkOWFiMzY5MzQwZjViMTJjYTkzOGI1MDY0OTc2MGFiLi5j
ZjE2OGJhZGZmMDRjYTU3YjY4YjNjMDkwNDBhYzM1ZGJmODdkMzNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC00OTM1LDYgKzQ5MzUsOSBAQCB0ZW1wbGF0ZSA8
dHlwZW5hbWUgTGV4ZXJUeXBlPiB2b2lkIFBhcnNlcjxMZXhlclR5cGU+OjpwcmludFVuZXhwZWN0
ZWRUb2tlblRleHQoVwogICAgIGNhc2UgSU5WQUxJRF9JREVOVElGSUVSX0VTQ0FQRV9FUlJPUlRP
SzoKICAgICAgICAgb3V0LnByaW50KCJJbnZhbGlkIGVzY2FwZSBpbiBpZGVudGlmaWVyOiAnIiwg
Z2V0VG9rZW4oKSwgIiciKTsKICAgICAgICAgcmV0dXJuOworICAgIGNhc2UgVU5FWFBFQ1RFRF9F
U0NBUEVfRVJST1JUT0s6CisgICAgICAgIG91dC5wcmludCgiVW5leHBlY3RlZCBlc2NhcGVkIGNo
YXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICciLCBnZXRUb2tlbigpLCAiJyIpOworICAgICAg
ICByZXR1cm47CiAgICAgY2FzZSBJTlZBTElEX0lERU5USUZJRVJfVU5JQ09ERV9FU0NBUEVfRVJS
T1JUT0s6CiAgICAgICAgIG91dC5wcmludCgiSW52YWxpZCB1bmljb2RlIGVzY2FwZSBpbiBpZGVu
dGlmaWVyOiAnIiwgZ2V0VG9rZW4oKSwgIiciKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJUb2tlbnMuaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmgKaW5kZXggYTA1NTRmZjM2ZTE0NzRl
YWY1YjAyOTgxZTM2YTNiMDJkODYwYzg1Mi4uMTczZDg4ZjQzNGE5MzZlYmI5NmY5YmQwYmVlMWVl
YmQ0YjNkOTM3MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJz
ZXJUb2tlbnMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlclRva2Vu
cy5oCkBAIC0xODgsNiArMTg4LDcgQEAgZW51bSBKU1Rva2VuVHlwZSB7CiAgICAgVU5URVJNSU5B
VEVEX1RFTVBMQVRFX0xJVEVSQUxfRVJST1JUT0sgPSAxMyB8IEVycm9yVG9rZW5GbGFnIHwgVW50
ZXJtaW5hdGVkRXJyb3JUb2tlbkZsYWcsCiAgICAgVU5URVJNSU5BVEVEX1JFR0VYUF9MSVRFUkFM
X0VSUk9SVE9LID0gMTQgfCBFcnJvclRva2VuRmxhZyB8IFVudGVybWluYXRlZEVycm9yVG9rZW5G
bGFnLAogICAgIElOVkFMSURfVEVNUExBVEVfTElURVJBTF9FUlJPUlRPSyA9IDE1IHwgRXJyb3JU
b2tlbkZsYWcsCisgICAgVU5FWFBFQ1RFRF9FU0NBUEVfRVJST1JUT0sgPSAxNiB8IEVycm9yVG9r
ZW5GbGFnLAogfTsKIAogc3RydWN0IEpTVGV4dFBvc2l0aW9uIHsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvQ2hha3JhQ29yZS90ZXN0L0Jhc2ljcy9JZHNXaXRoRXNjYXBlcy5iYXNlbGluZS1qc2MgYi9K
U1Rlc3RzL0NoYWtyYUNvcmUvdGVzdC9CYXNpY3MvSWRzV2l0aEVzY2FwZXMuYmFzZWxpbmUtanNj
CmluZGV4IDA2NDRlOGFjMTU2OGNmNWUwZTFjMTg2Mzg5NGQ5YmJlZDQ0NjJlMGIuLjE4ZDYwYzVk
YWIyYzI3OTRiYmZkNThmZTI3ZTdlZDI3NTAxYTIzZDUgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvQ2hh
a3JhQ29yZS90ZXN0L0Jhc2ljcy9JZHNXaXRoRXNjYXBlcy5iYXNlbGluZS1qc2MKKysrIGIvSlNU
ZXN0cy9DaGFrcmFDb3JlL3Rlc3QvQmFzaWNzL0lkc1dpdGhFc2NhcGVzLmJhc2VsaW5lLWpzYwpA
QCAtMywyMCArMywyMCBAQAogMjAKIDIwCiBSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJp
YWJsZTogaGVsbG8yCi1mYWxzZQotZmFsc2UKLXRydWUKK1N5bnRheEVycm9yOiBVbmV4cGVjdGVk
IGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ2ZhbHNcdTAwNjUnCitTeW50
YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46
ICdmYWxzXHUwMDY1JworU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJz
IGluIGtleXdvcmQgdG9ja2VuOiAndHJ1XHUwMDY1JwogU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
a2V5d29yZCAndmFyJwotU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQga2V5d29yZCAndlx1MDA2MXIn
CitTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0
b2NrZW46ICd2XHUwMDYxcicKIFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGtleXdvcmQgJ2Vsc2Un
Ci1TeW50YXhFcnJvcjogVW5leHBlY3RlZCBrZXl3b3JkICdlbHNcdTAwNjUnCitTeW50YXhFcnJv
cjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICdlbHNc
dTAwNjUnCiBTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAnZmFsc2UnIGFzIGEg
dmFyaWFibGUgbmFtZS4KIFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXIn
IGFzIGEgdmFyaWFibGUgbmFtZS4KLVN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3Jk
ICdmYWxzXHUwMDY1JyBhcyBhIHZhcmlhYmxlIG5hbWUuCi1TeW50YXhFcnJvcjogQ2Fubm90IHVz
ZSB0aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEgdmFyaWFibGUgbmFtZS4KK1N5bnRheEVycm9y
OiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ2ZhbHNc
dTAwNjUnCitTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5
d29yZCB0b2NrZW46ICd2XHUwMDYxcicKIDEwCiAxMAogMTAKIDEwCiBTeW50YXhFcnJvcjogQ2Fu
bm90IHVzZSB0aGUga2V5d29yZCAnZWxzZScgYXMgYSBmdW5jdGlvbiBuYW1lLgotU3ludGF4RXJy
b3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ2Vsc1x1MDA2NScgYXMgYSBmdW5jdGlvbiBuYW1l
LgorU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQg
dG9ja2VuOiAnZWxzXHUwMDY1JwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rl
c3RzL0NoYW5nZUxvZwppbmRleCBjMjcyYmRhOTU0OTYyODZlMWRhMjI2MTY3ZTliZTA5NDk3NjBl
OTM2Li4wYjcwYWU3ODM3ZGNlODcwNmE3ZmYwZWM4Y2Q0OWNiYjc0MDVhYTczIDEwMDY0NAotLS0g
YS9KU1Rlc3RzL0NoYW5nZUxvZworKysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5
IEBACisyMDE3LTA2LTEwICBPbGVrc2FuZHIgU2thY2hrb3YgIDxnc2thY2hrb3ZAZ21haWwuY29t
PgorCisgICAgICAgIFdlIGluY29ycmVjdGx5IGFsbG93IGVzY2FwZWQgY2hhcmFjdGVycyBpbiBr
ZXl3b3JkIHRva2VucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTcxMzEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBzdHJlc3MvZGVzdHJ1Y3R1cmluZy1hc3NpZ25tZW50LXN5bnRheC5qczoKKyAgICAg
ICAgKiBzdHJlc3MvZXJyb3ItbWVzc2FnZXMtZm9yLWluLW9wZXJhdG9yLXNob3VsZC1ub3QtY3Jh
c2guanM6CisgICAgICAgIChjYXRjaCk6CisgICAgICAgICogc3RyZXNzL3Jlc2VydmVkLXdvcmQt
d2l0aC1lc2NhcGUuanM6CisgICAgICAgICh0ZXN0U3ludGF4RXJyb3IuU3RyaW5nLnJhdy52KToK
KyAgICAgICAgKFN0cmluZy5yYXcuU3ludGF4RXJyb3IuQ2Fubm90LnVzZS50aGUua2V5d29yZC5z
dHJpbmdfYXBwZWFyZWRfaGVyZS5hcy5hLm5hbWUpOgorICAgICAgICAodGVzdFN5bnRheEVycm9y
LlN0cmluZy5yYXcuYSk6CisgICAgICAgICogSlNUZXN0cy9DaGFrcmFDb3JlL3Rlc3QvQmFzaWNz
L0lkc1dpdGhFc2NhcGVzLmJhc2VsaW5lLWpzYzoKKwogMjAxNy0wNC0xMyAgU2thY2hrb3YgT2xl
a3NhbmRyICA8Z3NrYWNoa292QGdtYWlsLmNvbT4KIAogICAgICAgICBbRVNOZXh0XSBBc3luYyBp
dGVyYXRpb24gLSBJbXBsZW1lbnQgQXN5bmMgR2VuZXJhdG9yCmRpZmYgLS1naXQgYS9KU1Rlc3Rz
L3N0cmVzcy9kZXN0cnVjdHVyaW5nLWFzc2lnbm1lbnQtc3ludGF4LmpzIGIvSlNUZXN0cy9zdHJl
c3MvZGVzdHJ1Y3R1cmluZy1hc3NpZ25tZW50LXN5bnRheC5qcwppbmRleCAyMzljYTM1YTRjYzEy
MDJiYjkxNmQ0MDMwMDBjM2FmNDBlMzU2YzY2Li41ODA4ZmQyNGQ0ZWUxMGNiMmNhM2JhZDdhNjU3
NDc0ZDQ5OWNjNWVhIDEwMDY0NAotLS0gYS9KU1Rlc3RzL3N0cmVzcy9kZXN0cnVjdHVyaW5nLWFz
c2lnbm1lbnQtc3ludGF4LmpzCisrKyBiL0pTVGVzdHMvc3RyZXNzL2Rlc3RydWN0dXJpbmctYXNz
aWdubWVudC1zeW50YXguanMKQEAgLTQ3LDE2ICs0NywxNiBAQCB0ZXN0U3ludGF4KCJbe3Byb3A6
IDF9LnByb3BdID0gW10iKTsKIHRlc3RTeW50YXhFcnJvcigiWy4uLmMgPSAxXSA9IFtdIiwgIlN5
bnRheEVycm9yOiBVbmV4cGVjdGVkIHRva2VuICc9Jy4gRXhwZWN0ZWQgYSBjbG9zaW5nICddJyBm
b2xsb3dpbmcgYSByZXN0IGVsZW1lbnQgZGVzdHJ1Y3R1cmluZyBwYXR0ZXJuLiIpOwogdGVzdFN5
bnRheEVycm9yKCJbLi4uYywgZF0gPSBbXSIsICJTeW50YXhFcnJvcjogVW5leHBlY3RlZCB0b2tl
biAnLCcuIEV4cGVjdGVkIGEgY2xvc2luZyAnXScgZm9sbG93aW5nIGEgcmVzdCBlbGVtZW50IGRl
c3RydWN0dXJpbmcgcGF0dGVybi4iKTsKIHRlc3RTeW50YXhFcnJvcigiW3RoaXNdID0gW10iLCAi
U3ludGF4RXJyb3I6IEludmFsaWQgZGVzdHJ1Y3R1cmluZyBhc3NpZ25tZW50IHRhcmdldC4iKTsK
LXRlc3RTeW50YXhFcnJvcigiW3RoXFx1ezY5fXNdID0gW10iLCAiU3ludGF4RXJyb3I6IEludmFs
aWQgZGVzdHJ1Y3R1cmluZyBhc3NpZ25tZW50IHRhcmdldC4iKTsKK3Rlc3RTeW50YXhFcnJvcigi
W3RoXFx1ezY5fXNdID0gW10iLCAiU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFy
YWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndGhcXHV7Njl9cyciKTsKIHRlc3RTeW50YXhFcnJv
cigiW2Z1bmN0aW9uKCkge31dID0gW10iLCAiU3ludGF4RXJyb3I6IEludmFsaWQgZGVzdHJ1Y3R1
cmluZyBhc3NpZ25tZW50IHRhcmdldC4iKTsKIHRlc3RTeW50YXhFcnJvcigiWydzdHJpbmcnXSA9
IFtdIiwgIlN5bnRheEVycm9yOiBJbnZhbGlkIGRlc3RydWN0dXJpbmcgYXNzaWdubWVudCB0YXJn
ZXQuIik7CiB0ZXN0U3ludGF4RXJyb3IoIlsxMjNdID0gW10iLCAiU3ludGF4RXJyb3I6IEludmFs
aWQgZGVzdHJ1Y3R1cmluZyBhc3NpZ25tZW50IHRhcmdldC4iKTsKIHRlc3RTeW50YXhFcnJvcigi
W3RydWVdID0gW10iLCAiU3ludGF4RXJyb3I6IEludmFsaWQgZGVzdHJ1Y3R1cmluZyBhc3NpZ25t
ZW50IHRhcmdldC4iKTsKLXRlc3RTeW50YXhFcnJvcigiW3RydVxcdTAwNjVdID0gW10iLCAiU3lu
dGF4RXJyb3I6IEludmFsaWQgZGVzdHJ1Y3R1cmluZyBhc3NpZ25tZW50IHRhcmdldC4iKTsKK3Rl
c3RTeW50YXhFcnJvcigiW3RydVxcdTAwNjVdID0gW10iLCAiU3ludGF4RXJyb3I6IFVuZXhwZWN0
ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndHJ1XFx1MDA2NSciKTsK
IHRlc3RTeW50YXhFcnJvcigiW2ZhbHNlXSA9IFtdIiwgIlN5bnRheEVycm9yOiBJbnZhbGlkIGRl
c3RydWN0dXJpbmcgYXNzaWdubWVudCB0YXJnZXQuIik7Ci10ZXN0U3ludGF4RXJyb3IoIltmXFx1
MDA2MWxzZV0gPSBbXSIsICJTeW50YXhFcnJvcjogSW52YWxpZCBkZXN0cnVjdHVyaW5nIGFzc2ln
bm1lbnQgdGFyZ2V0LiIpOwordGVzdFN5bnRheEVycm9yKCJbZlxcdTAwNjFsc2VdID0gW10iLCAi
U3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9j
a2VuOiAnZlxcdTAwNjFsc2UnIik7CiB0ZXN0U3ludGF4RXJyb3IoIltudWxsXSA9IFtdIiwgIlN5
bnRheEVycm9yOiBJbnZhbGlkIGRlc3RydWN0dXJpbmcgYXNzaWdubWVudCB0YXJnZXQuIik7Ci10
ZXN0U3ludGF4RXJyb3IoIltuXFx1ezc1fWxsXSA9IFtdIiwgIlN5bnRheEVycm9yOiBJbnZhbGlk
IGRlc3RydWN0dXJpbmcgYXNzaWdubWVudCB0YXJnZXQuIik7Cit0ZXN0U3ludGF4RXJyb3IoIltu
XFx1ezc1fWxsXSA9IFtdIiwgIlN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFj
dGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ25cXHV7NzV9bGwnIik7CiAKIHRlc3RTeW50YXhFcnJv
cigiJ3VzZSBzdHJpY3QnOyAoeyBldmFsIH0gPSB7fSkiLCAiU3ludGF4RXJyb3I6IENhbm5vdCBt
b2RpZnkgJ2V2YWwnIGluIHN0cmljdCBtb2RlLiIpOwogdGVzdFN5bnRheEVycm9yKCIndXNlIHN0
cmljdCc7ICh7IGV2YWwgPSAwIH0gPSB7fSkiLCAiU3ludGF4RXJyb3I6IENhbm5vdCBtb2RpZnkg
J2V2YWwnIGluIHN0cmljdCBtb2RlLiIpOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3MvZXJy
b3ItbWVzc2FnZXMtZm9yLWluLW9wZXJhdG9yLXNob3VsZC1ub3QtY3Jhc2guanMgYi9KU1Rlc3Rz
L3N0cmVzcy9lcnJvci1tZXNzYWdlcy1mb3ItaW4tb3BlcmF0b3Itc2hvdWxkLW5vdC1jcmFzaC5q
cwppbmRleCBkNjk5ZGUwOTQ0ZjEzODlmYTNiYWQ0ZDlkYjZiOTQ2YmMyMjg0Y2VhLi5iNTQ1ODBj
YzI4YjU5MjA1NDEzNDc3NGM2NGY2ODM2OGNhNzUzNTg5IDEwMDY0NAotLS0gYS9KU1Rlc3RzL3N0
cmVzcy9lcnJvci1tZXNzYWdlcy1mb3ItaW4tb3BlcmF0b3Itc2hvdWxkLW5vdC1jcmFzaC5qcwor
KysgYi9KU1Rlc3RzL3N0cmVzcy9lcnJvci1tZXNzYWdlcy1mb3ItaW4tb3BlcmF0b3Itc2hvdWxk
LW5vdC1jcmFzaC5qcwpAQCAtMSwxMSArMSwzMCBAQAotLy8gVGhpcyB0ZXN0IHNob3VsZCBub3Qg
Y3Jhc2guCi0KIGxldCBlcnJvciA9IG51bGw7CiB0cnkgewotICAgIC8vIEZJWE1FOiBXZSBzaG91
bGQgbm90IHBhcnNlIHRoaXMgYXMgYW4gImluIiBvcGVyYXRpb24uCi0gICAgbGV0IHIgPSAicHJv
cCIgaVx1MDA2RSAyMDsKKyAgICBldmFsKCdsZXQgciA9ICJwcm9wIiBpXFx1ezAwNkV9IDIwJyk7
CiB9IGNhdGNoKGUpIHsKICAgICBlcnJvciA9IGU7CiB9Ci1pZiAoZXJyb3IubWVzc2FnZSAhPT0g
IjIwIGlzIG5vdCBhbiBPYmplY3QuIikKKworaWYgKCFlcnJvciB8fCBlcnJvci5tZXNzYWdlICE9
PSAiVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICdpXFx1
ezAwNkV9JyIpCiAgICAgdGhyb3cgbmV3IEVycm9yKCJCYWQiKTsKKworZXJyb3IgPSBudWxsOwor
dHJ5IHsKKyAgICBldmFsKCdsZXQgciA9ICJwcm9wIiBpXFx1MDA2RSAyMCcpOworfSBjYXRjaChl
KSB7CisgICAgZXJyb3IgPSBlOworfQorCitpZiAoIWVycm9yIHx8IGVycm9yLm1lc3NhZ2UgIT09
ICJVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ2lcXHUw
MDZFJyIpCisgICAgdGhyb3cgbmV3IEVycm9yKCJCYWQiKTsKKworLy8gVGhpcyB0ZXN0IHNob3Vs
ZCBub3QgY3Jhc2guCitlcnJvciA9IG51bGw7Cit0cnkgeworICAgIGV2YWwoJ2xldCByID0gInBy
b3AiIGlcdTAwNkUgMjAnKTsKK30gY2F0Y2goZSkgeworICAgIGVycm9yID0gZTsKK30KKworaWYg
KCFlcnJvciB8fCBlcnJvci5tZXNzYWdlICE9PSAiMjAgaXMgbm90IGFuIE9iamVjdC4gKGV2YWx1
YXRpbmcgXCdcInByb3BcIiBpbiAyMFwnKSIpCisgICAgdGhyb3cgbmV3IEVycm9yKCJCYWQiKTsK
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9y
ZXNlcnZlZC13b3JkLXdpdGgtZXNjYXBlLmpzIGIvSlNUZXN0cy9zdHJlc3MvcmVzZXJ2ZWQtd29y
ZC13aXRoLWVzY2FwZS5qcwppbmRleCBmNTJkYzRlMjFiZjcxZTI2YTJjZTczZjM2YTIwOWJiMWUy
NDRlYzViLi4wZjY4OGUwNzhkMzdlMjJiMTQzNmE0ZTJlNDI3MjNkODMwYmNjMzhlIDEwMDY0NAot
LS0gYS9KU1Rlc3RzL3N0cmVzcy9yZXNlcnZlZC13b3JkLXdpdGgtZXNjYXBlLmpzCisrKyBiL0pT
VGVzdHMvc3RyZXNzL3Jlc2VydmVkLXdvcmQtd2l0aC1lc2NhcGUuanMKQEAgLTI1LDExNyArMjUs
MTI4IEBAIHRlc3RTeW50YXgoInZhciBjb2NvYSIpOwogdGVzdFN5bnRheCgidmFyIGNcdTAwNmZj
b2EiKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHZhcmAsIFN0cmluZy5yYXdg
U3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZhcicgYXMgYSB2YXJpYWJsZSBu
YW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHZcdTAwNjFyYCwgU3RyaW5n
LnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEg
dmFyaWFibGUgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YHZhciB2XHV7MDA2
MX1yYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1
ezAwNjF9cicgYXMgYSB2YXJpYWJsZSBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5y
YXdgdmFyIHZcdTAwNjFyYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2Nh
cGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50
YXhFcnJvcihTdHJpbmcucmF3YHZhciB2XHV7MDA2MX1yYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7
MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIgdmFyID0gMjAwMDAw
MDtgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXIn
IGFzIGEgdmFyaWFibGUgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YHZhciB2
XHUwMDYxciA9IDIwMDAwMDA7YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0
aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEgdmFyaWFibGUgbmFtZS5gKTsKLXRlc3RTeW50YXhF
cnJvcihTdHJpbmcucmF3YHZhciB2XHV7MDA2MX1yID0gMjAwMDAwMGAsIFN0cmluZy5yYXdgU3lu
dGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgdmFyaWFi
bGUgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YHZhciB2XHUwMDYxciA9IDIw
MDAwMDA7YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJh
Y3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihT
dHJpbmcucmF3YHZhciB2XHV7MDA2MX1yID0gMjAwMDAwMGAsIFN0cmluZy5yYXdgU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1
ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHt2YXJ9ID0gb2Jq
KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1
Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3Ry
aW5nLnJhd2B2YXIge3ZcdTAwNjFyfSA9IG9iamAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENh
bm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQgJ3Zh
cicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B2YXIge3ZcdXswMDYxfXJ9ID0gb2Jq
YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVj
dHVyaW5nIHN5bnRheCBmb3Iga2V5d29yZCAndmFyJy5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJp
bmcucmF3YHZhciB7dlx1MDA2MXJ9ID0gb2JqYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5l
eHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidg
KTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YHZhciB7dlx1ezAwNjF9cn0gPSBvYmpgLCBT
dHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBr
ZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcu
cmF3YHZhciB7dmFyOnZhcn0gPSBvYmopYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90
IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIHZhcmlhYmxlIG5hbWUuYCk7Ci10ZXN0U3ludGF4
RXJyb3IoU3RyaW5nLnJhd2B2YXIge3Zhcjp2XHUwMDYxcn0gPSBvYmpgLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSB2YXJpYWJs
ZSBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHt2YXI6dlx1ezAwNjF9
cn0gPSBvYmpgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3Jk
ICd2XHV7MDA2MX1yJyBhcyBhIHZhcmlhYmxlIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3Ry
aW5nLnJhd2B2YXIge3Zhcjp2XHUwMDYxcn0gPSBvYmpgLCBTdHJpbmcucmF3YFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAw
NjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIHt2YXI6dlx1ezAwNjF9cn0g
PSBvYmpgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFj
dGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJv
cihTdHJpbmcucmF3YHZhciBbdmFyXSA9IG9iamAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENh
bm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZhcicgYXMgYSB2YXJpYWJsZSBuYW1lLmApOwotdGVzdFN5
bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIFt2XHUwMDYxcl0gPSBvYmpgLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSB2YXJpYWJs
ZSBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdmFyIFt2XHV7MDA2MX1yXSA9
IG9iamAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3Zc
dXswMDYxfXInIGFzIGEgdmFyaWFibGUgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcu
cmF3YHZhciBbdlx1MDA2MXJdID0gb2JqYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBl
Y3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsK
K3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YHZhciBbdlx1ezAwNjF9cl0gPSBvYmpgLCBTdHJp
bmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3
b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3
YFt2YXJdID0gb2JqYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBrZXl3b3Jk
ICd2YXInYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2Bbdlx1MDA2MXJdID0gb2JqYCwg
U3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBrZXl3b3JkICd2XHUwMDYxcidgKTsK
LXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YFt2XHV7MDA2MX1yXSA9IG9iamAsIFN0cmluZy5y
YXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQga2V5d29yZCAndlx1ezAwNjF9cidgKTsKK3Rlc3RT
eW50YXhFcnJvcihTdHJpbmcucmF3YFt2XHUwMDYxcl0gPSBvYmpgLCBTdHJpbmcucmF3YFN5bnRh
eEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjog
J3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgW3ZcdXswMDYxfXJdID0g
b2JqYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3Rl
cnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3Io
U3RyaW5nLnJhd2BmdW5jdGlvbiB2YXIoKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBD
YW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgZnVuY3Rpb24gbmFtZS5gKTsKLXRlc3RT
eW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIHZcdTAwNjFyKCkgeyB9YCwgU3RyaW5nLnJh
d2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEgZnVu
Y3Rpb24gbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIHZcdXsw
MDYxfXIoKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3
b3JkICd2XHV7MDA2MX1yJyBhcyBhIGZ1bmN0aW9uIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJyb3Io
U3RyaW5nLnJhd2BmdW5jdGlvbiB2XHUwMDYxcigpIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1
MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlvbiB2XHV7MDA2MX1y
KCkgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJh
Y3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJy
b3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKHZhcikgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwot
dGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gYSh2XHUwMDYxcikgeyB9YCwgU3Ry
aW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1MDA2MXInIGFz
IGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlv
biBhKHZcdXswMDYxfXIpIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2Ug
dGhlIGtleXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Cit0ZXN0U3lu
dGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKHZcdTAwNjFyKSB7IH1gLCBTdHJpbmcucmF3
YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRv
Y2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24g
YSh2XHV7MDA2MX1yKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVz
Y2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRl
c3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEoe3Zhcn0pIHsgfWAsIFN0cmluZy5y
YXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1Y3R1cmluZyBzeW50
YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5j
dGlvbiBhKHt2XHUwMDYxcn0pIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1
c2UgYWJicmV2aWF0ZWQgZGVzdHJ1Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7
Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKHt2XHV7MDA2MX1yfSkgeyB9
YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVj
dHVyaW5nIHN5bnRheCBmb3Iga2V5d29yZCAndmFyJy5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJp
bmcucmF3YGZ1bmN0aW9uIGEoe3ZcdTAwNjFyfSkgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUw
MDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEoe3ZcdXswMDYx
fXJ9KSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hh
cmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhF
cnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEoe3Zhcjp2YXJ9KSB7IH1gLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgcGFyYW1ldGVyIG5h
bWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKHt2YXI6dlx1MDA2
MXJ9KSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3Jk
ICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJp
bmcucmF3YGZ1bmN0aW9uIGEoe3Zhcjp2XHV7MDA2MX1yfSkgeyB9YCwgU3RyaW5nLnJhd2BTeW50
YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBwYXJhbWV0
ZXIgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEoe3Zhcjp2
XHUwMDYxcn0pIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBl
ZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4
RXJyb3IoU3RyaW5nLnJhd2BmdW5jdGlvbiBhKHt2YXI6dlx1ezAwNjF9cn0pIHsgfWAsIFN0cmlu
Zy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdv
cmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdg
ZnVuY3Rpb24gYShbdmFyXSkgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVz
ZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVy
cm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gYShbdlx1MDA2MXJdKSB7IH1gLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0
ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGZ1bmN0aW9uIGEoW3ZcdXsw
MDYxfXJdKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3
b3JkICd2XHV7MDA2MX1yJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwordGVzdFN5bnRheEVycm9y
KFN0cmluZy5yYXdgZnVuY3Rpb24gYShbdlx1MDA2MXJdKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRh
eEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjog
J3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgZnVuY3Rpb24gYShbdlx1
ezAwNjF9cl0pIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBl
ZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5
bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIHZhcigpIHsgfSlgLCBTdHJpbmcucmF3YFN5
bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgZnVuY3Rpb24gbmFt
ZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiB2XHUwMDYxcigpIHsg
fSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUw
MDYxcicgYXMgYSBmdW5jdGlvbiBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdg
KGZ1bmN0aW9uIHZcdXswMDYxfXIoKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fu
bm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBmdW5jdGlvbiBuYW1lLmApOwor
dGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIHZcdTAwNjFyKCkgeyB9KWAsIFN0
cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtl
eXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2Ao
ZnVuY3Rpb24gdlx1ezAwNjF9cigpIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4
cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXIn
YCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHZhcikgeyB9KWAs
IFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZhcicgYXMg
YSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlv
biBhKHZcdTAwNjFyKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0
aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4
RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh2XHV7MDA2MX1yKSB7IH0pYCwgU3RyaW5nLnJh
d2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBw
YXJhbWV0ZXIgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBh
KHZcdTAwNjFyKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2Nh
cGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50
YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHZcdXswMDYxfXIpIHsgfSlgLCBTdHJpbmcu
cmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3Jk
IHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChm
dW5jdGlvbiBhKHt2YXJ9KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVz
ZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5nIHN5bnRheCBmb3Iga2V5d29yZCAndmFyJy5gKTsK
LXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHt2XHUwMDYxcn0pIHsgfSlg
LCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIGFiYnJldmlhdGVkIGRlc3RydWN0
dXJpbmcgc3ludGF4IGZvciBrZXl3b3JkICd2YXInLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmlu
Zy5yYXdgKGZ1bmN0aW9uIGEoe3ZcdXswMDYxfXJ9KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhF
cnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5nIHN5bnRheCBmb3Iga2V5
d29yZCAndmFyJy5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHt2
XHUwMDYxcn0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2Fw
ZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRh
eEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoe3ZcdXswMDYxfXJ9KSB7IH0pYCwgU3RyaW5n
LnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29y
ZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2Ao
ZnVuY3Rpb24gYSh7dmFyOnZhcn0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5u
b3QgdXNlIHRoZSBrZXl3b3JkICd2YXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3lu
dGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7dmFyOnZcdTAwNjFyfSkgeyB9KWAsIFN0
cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdTAwNjFyJyBh
cyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0
aW9uIGEoe3Zhcjp2XHV7MDA2MX1yfSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENh
bm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7
Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7dmFyOnZcdTAwNjFyfSkg
eyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0
ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3Ry
aW5nLnJhd2AoZnVuY3Rpb24gYSh7dmFyOnZcdXswMDYxfXJ9KSB7IH0pYCwgU3RyaW5nLnJhd2BT
eW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2Nr
ZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rp
b24gYShbdmFyXSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhl
IGtleXdvcmQgJ3ZhcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihT
dHJpbmcucmF3YChmdW5jdGlvbiBhKFt2XHUwMDYxcl0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRh
eEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0ZXIg
bmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKFt2XHV7MDA2
MX1yXSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdv
cmQgJ3ZcdXswMDYxfXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJyb3Io
U3RyaW5nLnJhd2AoZnVuY3Rpb24gYShbdlx1MDA2MXJdKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50
YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46
ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKFt2
XHV7MDA2MX1yXSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNj
YXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVz
dFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW3t2YXJ9XSkgeyB9KWAsIFN0cmlu
Zy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1Y3R1cmluZyBz
eW50YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2Ao
ZnVuY3Rpb24gYShbe3ZcdTAwNjFyfV0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBD
YW5ub3QgdXNlIGFiYnJldmlhdGVkIGRlc3RydWN0dXJpbmcgc3ludGF4IGZvciBrZXl3b3JkICd2
YXInLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW3t2XHV7MDA2
MX1yfV0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIGFiYnJldmlh
dGVkIGRlc3RydWN0dXJpbmcgc3ludGF4IGZvciBrZXl3b3JkICd2YXInLmApOwordGVzdFN5bnRh
eEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW3t2XHUwMDYxcn1dKSB7IH0pYCwgU3RyaW5n
LnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29y
ZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5j
dGlvbiBhKFt7dlx1ezAwNjF9cn1dKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5l
eHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1y
J2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYShbe3Zhcjp2YXJ9
XSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQg
J3ZhcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3
YChmdW5jdGlvbiBhKFt7dmFyOnZcdTAwNjFyfV0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVy
cm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0ZXIgbmFt
ZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKFt7dmFyOnZcdXsw
MDYxfXJ9XSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtl
eXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJy
b3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYShbe3Zhcjp2XHUwMDYxcn1dKSB7IH0pYCwgU3RyaW5n
LnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29y
ZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5j
dGlvbiBhKFt7dmFyOnZcdXswMDYxfXJ9XSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6
IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAw
NjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW1t2YXJd
XSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQg
J3ZhcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3
YChmdW5jdGlvbiBhKFtbdlx1MDA2MXJdXSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6
IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdTAwNjFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmAp
OwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoW1t2XHV7MDA2MX1yXV0p
IHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2
XHV7MDA2MX1yJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmlu
Zy5yYXdgKGZ1bmN0aW9uIGEoW1t2XHUwMDYxcl1dKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhF
cnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2
XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKFtbdlx1
ezAwNjF9cl1dKSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2Nh
cGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0
U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhlbGxvOiB7dmFyfX0pIHsgfSlg
LCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIGFiYnJldmlhdGVkIGRlc3RydWN0
dXJpbmcgc3ludGF4IGZvciBrZXl3b3JkICd2YXInLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmlu
Zy5yYXdgKGZ1bmN0aW9uIGEoeyBoZWxsbzoge3ZcdTAwNjFyfX0pIHsgfSlgLCBTdHJpbmcucmF3
YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIGFiYnJldmlhdGVkIGRlc3RydWN0dXJpbmcgc3ludGF4
IGZvciBrZXl3b3JkICd2YXInLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0
aW9uIGEoeyBoZWxsbzoge3ZcdXswMDYxfXJ9fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJy
b3I6IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1Y3R1cmluZyBzeW50YXggZm9yIGtleXdv
cmQgJ3ZhcicuYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhl
bGxvOiB7dlx1MDA2MXJ9fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0
ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0
ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhlbGxvOiB7dlx1ezAwNjF9
cn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNo
YXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4
RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhlbGxvOiB7dmFyOnZhcn19KSB7IH0pYCwg
U3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBh
IHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9u
IGEoeyBoZWxsbzoge3Zhcjp2XHUwMDYxcn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEgcGFyYW1ldGVyIG5hbWUu
YCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhlbGxvOiB7dmFy
OnZcdXswMDYxfXJ9fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2Ug
dGhlIGtleXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Cit0ZXN0U3lu
dGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhlbGxvOiB7dmFyOnZcdTAwNjFyfX0p
IHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFj
dGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0
cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyBoZWxsbzoge3Zhcjp2XHV7MDA2MX1yfX0pIHsgfSlgLCBT
dHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBr
ZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcu
cmF3YChmdW5jdGlvbiBhKHsgaGVsbG86IFt2YXJdfSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4
RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZhcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5g
KTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgaGVsbG86IFt2XHUw
MDYxcl19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5
d29yZCAndlx1MDA2MXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3Io
U3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IGhlbGxvOiBbdlx1ezAwNjF9cl19KSB7IH0pYCwgU3Ry
aW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicg
YXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5j
dGlvbiBhKHsgaGVsbG86IFt2XHUwMDYxcl19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUw
MDYxcidgKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgaGVsbG86
IFt2XHV7MDA2MX1yXX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVk
IGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAK
IHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgMDoge3Zhcn0gfSkgeyB9
KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1
Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQgJ3ZhcicuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3Ry
aW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2XHUwMDYxcn19KSB7IH0pYCwgU3RyaW5nLnJhd2BT
eW50YXhFcnJvcjogQ2Fubm90IHVzZSBhYmJyZXZpYXRlZCBkZXN0cnVjdHVyaW5nIHN5bnRheCBm
b3Iga2V5d29yZCAndmFyJy5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlv
biBhKHsgMDoge3ZcdXswMDYxfXJ9fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENh
bm5vdCB1c2UgYWJicmV2aWF0ZWQgZGVzdHJ1Y3R1cmluZyBzeW50YXggZm9yIGtleXdvcmQgJ3Zh
cicuYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2XHUw
MDYxcn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVk
IGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICd2XHUwMDYxcidgKTsKK3Rlc3RTeW50YXhF
cnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgMDoge3ZcdXswMDYxfXJ9fSkgeyB9KWAsIFN0
cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtl
eXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAogdGVzdFN5bnRheEVycm9yKFN0cmluZy5y
YXdgKGZ1bmN0aW9uIGEoeyAwOiB7dmFyOnZhcn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhF
cnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmAp
OwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiB7dmFyOnZcdTAw
NjFyfX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3
b3JkICd2XHUwMDYxcicgYXMgYSBwYXJhbWV0ZXIgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihT
dHJpbmcucmF3YChmdW5jdGlvbiBhKHsgMDoge3Zhcjp2XHV7MDA2MX1yfX0pIHsgfSlgLCBTdHJp
bmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2XHV7MDA2MX1yJyBh
cyBhIHBhcmFtZXRlciBuYW1lLmApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0
aW9uIGEoeyAwOiB7dmFyOnZcdTAwNjFyfX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9y
OiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAw
NjFyJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiB7dmFy
OnZcdXswMDYxfXJ9fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
ZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAog
dGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiB7dmFsdWU6dmFyfX0p
IHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3JkICd2
YXInIGFzIGEgcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2Ao
ZnVuY3Rpb24gYSh7IDA6IHt2YWx1ZTp2XHUwMDYxcn19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50
YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1MDA2MXInIGFzIGEgcGFyYW1ldGVy
IG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2
YWx1ZTp2XHV7MDA2MX1yfX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3Qg
dXNlIHRoZSBrZXl3b3JkICd2XHV7MDA2MX1yJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwordGVz
dFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiB7dmFsdWU6dlx1MDA2MXJ9
fSkgeyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFy
YWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3Io
U3RyaW5nLnJhd2AoZnVuY3Rpb24gYSh7IDA6IHt2YWx1ZTp2XHV7MDA2MX1yfX0pIHsgfSlgLCBT
dHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBr
ZXl3b3JkIHRvY2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcu
cmF3YChmdW5jdGlvbiBhKHsgMDogW3Zhcl19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50YXhFcnJv
cjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwot
dGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiBbdlx1MDA2MXJdfSkg
eyB9KWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3Zc
dTAwNjFyJyBhcyBhIHBhcmFtZXRlciBuYW1lLmApOwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5y
YXdgKGZ1bmN0aW9uIGEoeyAwOiBbdlx1ezAwNjF9cl19KSB7IH0pYCwgU3RyaW5nLnJhd2BTeW50
YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1ezAwNjF9cicgYXMgYSBwYXJhbWV0
ZXIgbmFtZS5gKTsKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YChmdW5jdGlvbiBhKHsgMDog
W3ZcdTAwNjFyXX0pIHsgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVz
Y2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5
bnRheEVycm9yKFN0cmluZy5yYXdgKGZ1bmN0aW9uIGEoeyAwOiBbdlx1ezAwNjF9cl19KSB7IH0p
YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBlc2NhcGVkIGNoYXJhY3RlcnMg
aW4ga2V5d29yZCB0b2NrZW46ICd2XHV7MDA2MX1yJ2ApOwogCiB0ZXN0U3ludGF4RXJyb3IoU3Ry
aW5nLnJhd2B0cnkgeyB9IGNhdGNoKHZhcikgeyB9YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjog
Q2Fubm90IHVzZSB0aGUga2V5d29yZCAndmFyJyBhcyBhIGNhdGNoIHBhcmFtZXRlciBuYW1lLmAp
OwotdGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgdHJ5IHsgfSBjYXRjaCh2XHUwMDYxcikgeyB9
YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogQ2Fubm90IHVzZSB0aGUga2V5d29yZCAndlx1MDA2
MXInIGFzIGEgY2F0Y2ggcGFyYW1ldGVyIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3IoU3RyaW5n
LnJhd2B0cnkgeyB9IGNhdGNoKHZcdXswMDYxfXIpIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJy
b3I6IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgY2F0Y2ggcGFyYW1l
dGVyIG5hbWUuYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2B0cnkgeyB9IGNhdGNoKHZc
dTAwNjFyKSB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQg
Y2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5bnRheEVy
cm9yKFN0cmluZy5yYXdgdHJ5IHsgfSBjYXRjaCh2XHV7MDA2MX1yKSB7IH1gLCBTdHJpbmcucmF3
YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRv
Y2tlbjogJ3ZcdXswMDYxfXInYCk7CiAKIHRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGNsYXNz
IHZhciB7IH1gLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBDYW5ub3QgdXNlIHRoZSBrZXl3b3Jk
ICd2YXInIGFzIGEgY2xhc3MgbmFtZS5gKTsKLXRlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGNs
YXNzIHZcdTAwNjFyIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IENhbm5vdCB1c2UgdGhl
IGtleXdvcmQgJ3ZcdTAwNjFyJyBhcyBhIGNsYXNzIG5hbWUuYCk7Ci10ZXN0U3ludGF4RXJyb3Io
U3RyaW5nLnJhd2BjbGFzcyB2XHV7MDA2MX1yIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6
IENhbm5vdCB1c2UgdGhlIGtleXdvcmQgJ3ZcdXswMDYxfXInIGFzIGEgY2xhc3MgbmFtZS5gKTsK
K3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YGNsYXNzIHZcdTAwNjFyIHsgfWAsIFN0cmluZy5y
YXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQg
dG9ja2VuOiAndlx1MDA2MXInYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BjbGFzcyB2
XHV7MDA2MX1yIHsgfWAsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBl
ZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAndlx1ezAwNjF9cidgKTsKIAotLy8gQWxs
b3dlZCBpbiBub24ta2V5d29yZCBhd2FyZSBjb250ZXh0LgotdGVzdFN5bnRheChTdHJpbmcucmF3
YCh7IHZcdTAwNjFyOiAnQ29jb2EnIH0pYCk7Ci10ZXN0U3ludGF4KFN0cmluZy5yYXdgKHsgdlx1
ezAwNjF9cjogJ0NvY29hJyB9KWApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgKHsgdlx1
MDA2MXI6ICdDb2NvYScgfSlgLCBTdHJpbmcucmF3YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVz
Y2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRvY2tlbjogJ3ZcdTAwNjFyJ2ApOwordGVzdFN5
bnRheEVycm9yKFN0cmluZy5yYXdgKHsgdlx1ezAwNjF9cjogJ0NvY29hJyB9KWAsIFN0cmluZy5y
YXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQg
dG9ja2VuOiAndlx1ezAwNjF9cidgKTsKKwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdge2Zv
cihvIGlcdTAwNkUge30pe319YCwgU3RyaW5nLnJhd2BTeW50YXhFcnJvcjogVW5leHBlY3RlZCBl
c2NhcGVkIGNoYXJhY3RlcnMgaW4ga2V5d29yZCB0b2NrZW46ICdpXHUwMDZFJ2ApOwordGVzdFN5
bnRheEVycm9yKFN0cmluZy5yYXdge2ZvcihvIGlcdXswMDZFfSB7fSl7fX1gLCBTdHJpbmcucmF3
YFN5bnRheEVycm9yOiBVbmV4cGVjdGVkIGVzY2FwZWQgY2hhcmFjdGVycyBpbiBrZXl3b3JkIHRv
Y2tlbjogJ2lcdXswMDZFfSdgKTsKKworCit0ZXN0U3ludGF4RXJyb3IoU3RyaW5nLnJhd2BpbXBs
ZW1lbnRzYCwgU3RyaW5nLnJhd2BSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTog
aW1wbGVtZW50c2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgaW1wbGVtZVx1MDA2RXRz
YCwgU3RyaW5nLnJhd2BSZWZlcmVuY2VFcnJvcjogQ2FuJ3QgZmluZCB2YXJpYWJsZTogaW1wbGVt
ZW50c2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgaW1wbGVtZVx1ezAwNkV9dHNgLCBT
dHJpbmcucmF3YFJlZmVyZW5jZUVycm9yOiBDYW4ndCBmaW5kIHZhcmlhYmxlOiBpbXBsZW1lbnRz
YCk7CisKK3Rlc3RTeW50YXhFcnJvcihTdHJpbmcucmF3YCd1c2Ugc3RyaWN0JzsgaW1wbGVtZW50
c2AsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQgdXNlIG9mIHJlc2VydmVkIHdv
cmQgJ2ltcGxlbWVudHMnIGluIHN0cmljdCBtb2RlYCk7Cit0ZXN0U3ludGF4RXJyb3IoU3RyaW5n
LnJhd2AndXNlIHN0cmljdCc7IGltcGxlbWVcdTAwNkV0c2AsIFN0cmluZy5yYXdgU3ludGF4RXJy
b3I6IFVuZXhwZWN0ZWQgZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAnaW1w
bGVtZVx1MDA2RXRzJ2ApOwordGVzdFN5bnRheEVycm9yKFN0cmluZy5yYXdgJ3VzZSBzdHJpY3Qn
OyBpbXBsZW1lXHV7MDA2RX10c2AsIFN0cmluZy5yYXdgU3ludGF4RXJyb3I6IFVuZXhwZWN0ZWQg
ZXNjYXBlZCBjaGFyYWN0ZXJzIGluIGtleXdvcmQgdG9ja2VuOiAnaW1wbGVtZVx1ezAwNkV9dHMn
YCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>