<?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>165554</bug_id>
          
          <creation_ts>2016-12-07 15:02:03 -0800</creation_ts>
          <short_desc>[WebCrypto] Migrate some tests from webkitSubtle to subtle</short_desc>
          <delta_ts>2016-12-12 17:33:33 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>160880</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jiewen Tan">jiewen_tan</reporter>
          <assigned_to name="Jiewen Tan">jiewen_tan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>lforschler</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1257391</commentid>
    <comment_count>0</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2016-12-07 15:02:03 -0800</bug_when>
    <thetext>Replicate some webkitSubtle tests for subtle to increase test coverage for subtle.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1257395</commentid>
    <comment_count>1</comment_count>
      <attachid>296427</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2016-12-07 15:16:09 -0800</bug_when>
    <thetext>Created attachment 296427
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1257705</commentid>
    <comment_count>2</comment_count>
      <attachid>296427</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2016-12-08 08:29:28 -0800</bug_when>
    <thetext>Comment on attachment 296427
Patch

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

I think you did a move, when you just meant to copy. r- unless I misunderstood the point of this patch.

&gt; LayoutTests/ChangeLog:3
&gt; +        [WebCrypto] Replicate some webkitSubtle tests for subtle

You say &quot;replicate&quot; in the patch notes, but you appear to be doing a &apos;svn mv&apos;, which gets rid of the old &quot;webkitSubtle&quot; version. Was this intentional?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1257809</commentid>
    <comment_count>3</comment_count>
      <attachid>296427</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2016-12-08 12:25:02 -0800</bug_when>
    <thetext>Comment on attachment 296427
Patch

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

&gt;&gt; LayoutTests/ChangeLog:3
&gt;&gt; +        [WebCrypto] Replicate some webkitSubtle tests for subtle
&gt; 
&gt; You say &quot;replicate&quot; in the patch notes, but you appear to be doing a &apos;svn mv&apos;, which gets rid of the old &quot;webkitSubtle&quot; version. Was this intentional?

Yes. For those two tests, the intention is to test CryptoKey interface instead of SubtleCrypto/WebkitSubtleCrypto. Therefore, it doesn&apos;t matter which SubtleCrypto interface is used to generate the key.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1259188</commentid>
    <comment_count>4</comment_count>
      <attachid>296427</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2016-12-12 13:47:38 -0800</bug_when>
    <thetext>Comment on attachment 296427
Patch

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

Looks good. Please revise the title as I suggest to make it clearer that you are &quot;moving&quot; some &apos;webkitSubtle&apos; tests to use the new &apos;subtle&apos; API.

&gt;&gt;&gt; LayoutTests/ChangeLog:3
&gt;&gt;&gt; +        [WebCrypto] Replicate some webkitSubtle tests for subtle
&gt;&gt; 
&gt;&gt; You say &quot;replicate&quot; in the patch notes, but you appear to be doing a &apos;svn mv&apos;, which gets rid of the old &quot;webkitSubtle&quot; version. Was this intentional?
&gt; 
&gt; Yes. For those two tests, the intention is to test CryptoKey interface instead of SubtleCrypto/WebkitSubtleCrypto. Therefore, it doesn&apos;t matter which SubtleCrypto interface is used to generate the key.

I suggest that you change the title to &quot;Migrate some tests from webkitSubtle to subtle&quot;

&gt; LayoutTests/platform/ios-simulator-wk1/TestExpectations:1027
&gt; +crypto/subtle/rsa-indexeddb.html

Do we know why these tests don&apos;t work on the simulator? Does the SDK lack some features we need? We should probably file some Radars if that is the case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1259224</commentid>
    <comment_count>5</comment_count>
      <attachid>296427</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2016-12-12 15:02:55 -0800</bug_when>
    <thetext>Comment on attachment 296427
Patch

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

Thanks Brent for r+ my patch.

&gt;&gt;&gt;&gt; LayoutTests/ChangeLog:3
&gt;&gt;&gt;&gt; +        [WebCrypto] Replicate some webkitSubtle tests for subtle
&gt;&gt;&gt; 
&gt;&gt;&gt; You say &quot;replicate&quot; in the patch notes, but you appear to be doing a &apos;svn mv&apos;, which gets rid of the old &quot;webkitSubtle&quot; version. Was this intentional?
&gt;&gt; 
&gt;&gt; Yes. For those two tests, the intention is to test CryptoKey interface instead of SubtleCrypto/WebkitSubtleCrypto. Therefore, it doesn&apos;t matter which SubtleCrypto interface is used to generate the key.
&gt; 
&gt; I suggest that you change the title to &quot;Migrate some tests from webkitSubtle to subtle&quot;

Fixed.

&gt;&gt; LayoutTests/platform/ios-simulator-wk1/TestExpectations:1027
&gt;&gt; +crypto/subtle/rsa-indexeddb.html
&gt; 
&gt; Do we know why these tests don&apos;t work on the simulator? Does the SDK lack some features we need? We should probably file some Radars if that is the case.

I believe it is just indexedDB is not available in iOS WK1.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1259237</commentid>
    <comment_count>6</comment_count>
      <attachid>296959</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2016-12-12 15:30:04 -0800</bug_when>
    <thetext>Created attachment 296959
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1259289</commentid>
    <comment_count>7</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2016-12-12 17:33:33 -0800</bug_when>
    <thetext>Committed r209749: &lt;http://trac.webkit.org/changeset/209749&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>296427</attachid>
            <date>2016-12-07 15:16:09 -0800</date>
            <delta_ts>2016-12-12 15:44:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-165554-20161207151530.patch</filename>
            <type>text/plain</type>
            <size>30814</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA5NDM4CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZDU1ZTg3MWI4NDc1M2M3MjAxY2E5
NDQxNGY2MjE3NWNmZWQzOTVkOS4uMzY0MzM4YTFjNWFlMTEzNGVlMjY2ZjI2NWRhYTExMjBhOGRm
YWY4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE2LTEyLTA3ICBKaWV3ZW4gVGFuICA8amll
d2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0b10gUmVwbGljYXRlIHNvbWUg
d2Via2l0U3VidGxlIHRlc3RzIGZvciBzdWJ0bGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NTU1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRvIGltcHJvdmUgdGVzdCBjb3ZlcmFnZSBmb3Igc3VidGxl
LgorCisgICAgICAgICogY3J5cHRvL2NyeXB0by1rZXktYWxnb3JpdGhtLWdjLWV4cGVjdGVkLnR4
dDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2NyeXB0by93ZWJraXRTdWJ0bGUvY3J5cHRvLWtl
eS1hbGdvcml0aG0tZ2MtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIGNyeXB0by9jcnlwdG8ta2V5
LWFsZ29yaXRobS1nYy5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtp
dFN1YnRsZS9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy5odG1sLgorICAgICAgICAqIGNyeXB0by9j
cnlwdG8ta2V5LXVzYWdlcy1nYy1leHBlY3RlZC50eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0
cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0by1rZXktdXNhZ2VzLWdjLWV4cGVjdGVkLnR4dC4K
KyAgICAgICAgKiBjcnlwdG8vY3J5cHRvLWtleS11c2FnZXMtZ2MuaHRtbDogUmVuYW1lZCBmcm9t
IExheW91dFRlc3RzL2NyeXB0by93ZWJraXRTdWJ0bGUvY3J5cHRvLWtleS11c2FnZXMtZ2MuaHRt
bC4KKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3Jlc291cmNlcy9yc2EtaW5kZXhlZGRiLW5vbi1l
eHBvcnRhYmxlLmpzOiBBZGRlZC4KKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3Jlc291cmNlcy9y
c2EtaW5kZXhlZGRiLmpzOiBBZGRlZC4KKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3JzYS1pbmRl
eGVkZGItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3JzYS1p
bmRleGVkZGItbm9uLWV4cG9ydGFibGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBj
cnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUtcHJpdmF0ZS1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1ub24t
ZXhwb3J0YWJsZS1wcml2YXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUv
cnNhLWluZGV4ZWRkYi1ub24tZXhwb3J0YWJsZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjcnlw
dG8vc3VidGxlL3JzYS1pbmRleGVkZGItcHJpdmF0ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGNyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1wcml2YXRlLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIGNyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBjcnlwdG8vc3VidGxlL3JzYS1vYWVwLXBsYWludGV4dC1sZW5ndGgtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3JzYS1vYWVwLXBsYWludGV4dC1sZW5n
dGguaHRtbDogQWRkZWQuCisgICAgICAgICogY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFf
NS1nZW5lcmF0ZS1rZXktd2l0aC1sZWFkaW5nLXplcm9lcy1pbi1leHBvbmVudC1leHBlY3RlZC50
eHQ6IEFkZGVkLgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2Vu
ZXJhdGUta2V5LXdpdGgtbGVhZGluZy16ZXJvZXMtaW4tZXhwb25lbnQuaHRtbDogQWRkZWQuCisg
ICAgICAgICogcGxhdGZvcm0vaW9zLXNpbXVsYXRvci13azEvVGVzdEV4cGVjdGF0aW9uczoKKwog
MjAxNi0xMi0wNSAgSmlld2VuIFRhbiAgPGppZXdlbl90YW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFtQYXJ0IDEgb2YgMl0gQWRkIHN1cHBvcnQgZm9yIFNQS0kgZm9ybWF0IHdoaWxlIGRvaW5nIFN1
YnRsZUNyeXB0by5pbXBvcnRLZXkvZXhwb3J0S2V5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
cnlwdG8vY3J5cHRvLWtleS1hbGdvcml0aG0tZ2MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
Y3J5cHRvL2NyeXB0by1rZXktYWxnb3JpdGhtLWdjLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5i
ZjkyZTA3ZDcyZmIxZmZlOTU3MDE3MTdhNTJiYWYxMWNmMzgzZjhjCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvY3J5cHRvL2NyeXB0by1rZXktYWxnb3JpdGhtLWdjLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDkgQEAKK1Rlc3QgdGhhdCBDcnlwdG9LZXkuYWxnb3JpdGhtIHByZXNlcnZl
cyBjdXN0b20gcHJvcGVydGllcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKwor
R2VuZXJhdGluZyBhIEhNQUMga2V5IHdpdGggZGVmYXVsdCBsZW5ndGguLi4KK1BBU1Mga2V5LmFs
Z29yaXRobSA9PT0ga2V5LmFsZ29yaXRobSBpcyB0cnVlCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2NyeXB0by9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy5odG1sIGIvTGF5b3V0VGVzdHMvY3J5
cHRvL2NyeXB0by1rZXktYWxnb3JpdGhtLWdjLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODgxODhmOWI2MmE2
ZmQ5M2YwMzdhNThmYmU5MjZjNGU1NTg0YmJiYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2NyeXB0by9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy5odG1sCkBAIC0wLDAgKzEsNDQgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4K
KzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNj
cmlwdCBzcmM9InJlc291cmNlcy9jb21tb24uanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+
Cis8c2NyaXB0PgorCitkZXNjcmlwdGlvbigiVGVzdCB0aGF0IENyeXB0b0tleS5hbGdvcml0aG0g
cHJlc2VydmVzIGN1c3RvbSBwcm9wZXJ0aWVzLiIpOworanNUZXN0SXNBc3luYyA9IHRydWU7CisK
K2RlYnVnKCJcbkdlbmVyYXRpbmcgYSBITUFDIGtleSB3aXRoIGRlZmF1bHQgbGVuZ3RoLi4uIik7
CitjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiaG1hYyIsIGhhc2g6ICJzaGEtMSJ9
LCB0cnVlLCBbInNpZ24iLCAidmVyaWZ5Il0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7CisgICAg
a2V5ID0gcmVzdWx0OworICAgIHN0YXJ0VGVzdCgpOworfSk7CisKK2Z1bmN0aW9uIHN0YXJ0VGVz
dCgpCit7CisgICAgc2hvdWxkQmVUcnVlKCJrZXkuYWxnb3JpdGhtID09PSBrZXkuYWxnb3JpdGht
Iik7CisgICAga2V5LmFsZ29yaXRobS5mb28gPSAiYmFyIjsKKyAgICBnYygpOworICAgIHNldFRp
bWVvdXQoY29udGludWVUZXN0LCAxMCk7Cit9CisKK2Z1bmN0aW9uIGNvbnRpbnVlVGVzdCgpCit7
CisgICAgZ2MoKTsKKyAgICBzZXRUaW1lb3V0KGZpbmlzaFRlc3QsIDEwKTsKK30KKworZnVuY3Rp
b24gZmluaXNoVGVzdCgpCit7CisgICAgZ2MoKTsKKyAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
J2tleS5hbGdvcml0aG0uZm9vJywgJ2JhcicpOworICAgIGZpbmlzaEpTVGVzdCgpOworfQorCis8
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48
L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NyeXB0
by9jcnlwdG8ta2V5LXVzYWdlcy1nYy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jcnlwdG8v
Y3J5cHRvLWtleS11c2FnZXMtZ2MtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRkNzdkZGU4NzBi
ODdmNmY1MGI5NWQzNzYwNDY5ZTJhZDBmNTY4ZDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9jcnlwdG8vY3J5cHRvLWtleS11c2FnZXMtZ2MtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEs
OSBAQAorVGVzdCB0aGF0IENyeXB0b0tleS51c2FnZXMgcHJlc2VydmVzIGN1c3RvbSBwcm9wZXJ0
aWVzLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworCitHZW5lcmF0aW5nIGEgSE1B
QyBrZXkgd2l0aCBkZWZhdWx0IGxlbmd0aC4uLgorUEFTUyBrZXkudXNhZ2VzID09PSBrZXkudXNh
Z2VzIGlzIHRydWUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3J5cHRvL2NyeXB0by1rZXkt
dXNhZ2VzLWdjLmh0bWwgYi9MYXlvdXRUZXN0cy9jcnlwdG8vY3J5cHRvLWtleS11c2FnZXMtZ2Mu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi44YzYzYjk3ODExODRkODc1OGY1N2RmOWQ2MGRlYjY2NWUzNTE1Y2U5
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3J5cHRvL2NyeXB0by1rZXktdXNhZ2Vz
LWdjLmh0bWwKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFk
PgorPG1ldGEgY2hhcnNldD0idXRmLTgiPgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10
ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2NvbW1vbi5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+CisKK2Rlc2NyaXB0aW9uKCJUZXN0
IHRoYXQgQ3J5cHRvS2V5LnVzYWdlcyBwcmVzZXJ2ZXMgY3VzdG9tIHByb3BlcnRpZXMuIik7Citq
c1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworZGVidWcoIlxuR2VuZXJhdGluZyBhIEhNQUMga2V5IHdp
dGggZGVmYXVsdCBsZW5ndGguLi4iKTsKK2NyeXB0by5zdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6
ICJobWFjIiwgaGFzaDogInNoYS0xIn0sIHRydWUsIFsic2lnbiIsICJ2ZXJpZnkiXSkudGhlbihm
dW5jdGlvbihyZXN1bHQpIHsKKyAgICBrZXkgPSByZXN1bHQ7CisgICAgc3RhcnRUZXN0KCk7Cit9
KTsKKworZnVuY3Rpb24gc3RhcnRUZXN0KCkKK3sKKyAgICBzaG91bGRCZVRydWUoImtleS51c2Fn
ZXMgPT09IGtleS51c2FnZXMiKTsKKyAgICBrZXkudXNhZ2VzLmZvbyA9ICJiYXIiOworICAgIGdj
KCk7CisgICAgc2V0VGltZW91dChjb250aW51ZVRlc3QsIDEwKTsKK30KKworZnVuY3Rpb24gY29u
dGludWVUZXN0KCkKK3sKKyAgICBnYygpOworICAgIHNldFRpbWVvdXQoZmluaXNoVGVzdCwgMTAp
OworfQorCitmdW5jdGlvbiBmaW5pc2hUZXN0KCkKK3sKKyAgICBnYygpOworICAgIHNob3VsZEJl
RXF1YWxUb1N0cmluZygna2V5LnVzYWdlcy5mb28nLCAnYmFyJyk7CisgICAgZmluaXNoSlNUZXN0
KCk7Cit9CisKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvY3J5cHRvL3N1YnRsZS9yZXNvdXJjZXMvcnNhLWluZGV4ZWRkYi1ub24tZXhwb3J0YWJs
ZS5qcyBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcmVzb3VyY2VzL3JzYS1pbmRleGVkZGIt
bm9uLWV4cG9ydGFibGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzgzOWQ4YWQwZmRhNGVlMDhkZWIxYzBhYTg4
OGZjMDU3MWRjYmRkMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0
bGUvcmVzb3VyY2VzL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUuanMKQEAgLTAsMCArMSw2
MiBAQAorZGVzY3JpcHRpb24oIlRlc3Qgc3RvcmluZyBhIHByaXZhdGUgUlNBIGtleSBpbiBJbmRl
eGVkREIsIGFuZCByZXRyaWV2aW5nIGl0LiIpOworCitqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKwor
dmFyIHByaXZhdGVLZXlKU09OID0geworICAgIGt0eTogIlJTQSIsCisgICAgYWxnOiAiUlMyNTYi
LAorICAgIG46ICJyY0NVQ3Y3T2MxSFZhbTFESWhDenFrblRoV2F3T3A4UUxrOFppeTJwMTBCeWpR
RkNham9GaXl1QVdsLVIxV1haYWY0eGl0TFJyYWNUOWFncHpJemMtTWJMU0hJR2dXUUdPMjFsR2lJ
bXk1ZnRaLUQ4YkhBcVJ6MnkxNXB6RDRjNENFb3U3WFNTTERvUm5SMFFHNU1zRGhENnMyZ1Y5bXdI
a3J0a0N4dE1XZEJpLTc3YXM4d0dtbE5SbGRjT1NnWkRMSzhVbkNTZ0ExT2d1Wjk4OWJGeWM4dE9P
RUliMHhVU2ZQU3ozTFBTQ255WXo2OGFEam1LVmVOSC1pZzg1N09TY3lXYkd5RXkzQml3NjRxdW4z
anVVbE5Xc0ozem5na09kdGVZV3l0eDVRcjRYS05zNlItTXl5cTcyS1VwMDJtSkRaaWl5aWdseE1M
X2kzLV9DZWVjQ3ciLAorICAgIGU6ICJBUUFCIiwKKyAgICBkOiAiZU5MUzM3YUN6N1JYU05QRF9E
dExCSjZqNVQ4Y1N4ZHpSQkNqUGFJNldjR3FKcDE2bHEzVVR3dW9ETEFxbEE5b0dZbTIzOGRzSVdw
dXVjUF9sUXRiV2UtN1NweG9JNl92bVlHZjdZVlVIdjEtREY5cWlPbVNyTW1keE1uVk96WVhZOFJh
VDZ0aFBqbl9KNWNmTFYyeElfTHdzck10bXBkU3lObGdYMHpUVWh3dHVhaGdBS01FQ2hZakgyRW5q
SGRIdzZzWTItd0FwZGNRSTdVTEUwb281UnpiUVpwbXVoY045aGlCYzBMM2hoRjBxbzUwbWJsMDJf
NjVfR1E3RHBWa1hCeE5nUkJMemxQYWJtenpHMm9BaGZlZkxnWW1TQzFvcGFDa1hFNnZSV1FOV05M
NDVSWk5aRllNM3VvSmdoT01xR2VvY00wQnBqZENoSHJQT2xGdlNRIiwKKyAgICBwOiAiNG1pVHVB
aktNZUg1dUo1S0IzOTdRVXdoYmtZRWdTYmNBMm1pZm1Ta3ZFMjAxOGdiNTVxa0JISzFlVnJ5ZjFf
bTQzTE5sYzZPX2FrNmdmemRaSVp2UzVOQ0dqUGwwcTA5cGxVcHU4cUZPU3NwQndBNjdxR0g3NmxG
bFpMbl9kNHlnbFM3d2ZMcnU0XzVZczhxTExzLURxVkx2aXdwb3NPbnl5V3F3TTVBWHAwIiwKKyAg
ICBxOiAieEhZcnpraXZ0bW56X3NHY2huV0djMHEtcERPa0tpY3B0UnB2MnBNRklJWHhuRlg1YU1l
RVhJWmpWdWpYdHdVeTFVbEZJTjJHWkpTdnk1S0o3OW11X1h5Tm5GSE16ZWRILUEzZWUzdThoMVVV
clpGLXZVdTFfZTRVX3g2N05OMWRlZHpVU0t5bk43cEZsM09rdVNoTUJXR1YtY3d6T1BkY1ZBZlZ1
Wmx4VU1jIiwKKyAgICBkcDogImZCekR6WURVQm1CUUdvcDdIbjBkdmZfVDI3VjZScXBjdFdvMDc0
Q1FaY0ZiUDJhdEZWdEtTajN2aVdUM3hpZDJWSHpjZ2lESGRmcE0zbkVWbEVPMXd3SW9uR0NTdmRq
R0VPWmlpRlZPanJaQU9WeEE4Z3VPanl5RnZxYlhrZTA2VndQSUlWdmZLZVNVMnp1aGJQX18xdHQ2
Rl9meG93NEtiMnhvbkdUMEdHayIsCisgICAgZHE6ICJqbUUyRGlJUGRod0RnTFhBUXBJYUJxUTgx
Yk8zWGZWVF9MUlVMQXd3d3dsUHVRVjE0OEgwNHpsaDlUSjZZMkdaSFlva1YxVTBlT0JwSnhma2I3
ZExZdHBKcHVpQmpSZjR5SVVFb0dsa2tJX1FsSm5GU0ZyLVlqR1JkZk5IcVdCa3hsU01aTDc3MFI5
bUlBVG5kR2tIN3o1eC1yOUt3QlpGQzRGQ0cyaGdfekUiLAorICAgIHFpOiAiWUNYX3BMd2JNQkEx
VGhWSDBXY3dtbnl0cU5jck1DRXdUbTdCeUEyZVU2bldiUXJVTHZmN205X2t6ZkxVY2pzbnBBVmxC
UUc1Sk1YTXkwU3E0cHR3Ynl3c2E1LUc4S0FPT09SMkwzdjRoQy1FeXM5ZnRnRk1fM2kwbzQwZWVR
SDRiM2hhUGJudHJJZU1nOEl6bE91VllLZjktMlF1S0RvV2VSZGQ3TnNkeFRrIgorfTsKKworY3J5
cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHByaXZhdGVLZXlKU09OLCB7IG5hbWU6ICdSU0FT
U0EtUEtDUzEtdjFfNScsIGhhc2g6ICJzaGEtMjU2IiB9LCBmYWxzZSwgWyJzaWduIl0pLnRoZW4o
ZnVuY3Rpb24oa2V5KSB7CisgICAgdmFyIG9wZW5SZXF1ZXN0ID0gaW5kZXhlZERCLm9wZW4oImNy
eXB0b19zdWJ0bGUiKTsKKyAgICBvcGVuUmVxdWVzdC5vbnVwZ3JhZGVuZWVkZWQgPSBmdW5jdGlv
bihldmVudCkgeworICAgICAgICB2YXIgb2JqZWN0U3RvcmUgPSBldmVudC50YXJnZXQucmVzdWx0
LmNyZWF0ZU9iamVjdFN0b3JlKCJyc2EtaW5kZXhlZGRiIik7CisgICAgfQorICAgIG9wZW5SZXF1
ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbihldmVudCkgeworICAgICAgICB0ZXN0RmFpbGVkKCJDb3Vs
ZCBub3Qgb3BlbiBkYXRhYmFzZTogIiArIGV2ZW50LnRhcmdldC5lcnJvci5uYW1lKTsKKyAgICAg
ICAgZmluaXNoSlNUZXN0KCk7CisgICAgfQorICAgIG9wZW5SZXF1ZXN0Lm9uc3VjY2VzcyA9IGZ1
bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIGRiID0gZXZlbnQudGFyZ2V0LnJlc3VsdDsKKyAgICAg
ICAgc3RvcmVLZXkoKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzdG9yZUtleSgpIHsKKyAgICAg
ICAgdmFyIG9iamVjdFN0b3JlID0gZGIudHJhbnNhY3Rpb24oInJzYS1pbmRleGVkZGIiLCAicmVh
ZHdyaXRlIikub2JqZWN0U3RvcmUoInJzYS1pbmRleGVkZGIiKTsKKyAgICAgICAgdmFyIHJlcSA9
IG9iamVjdFN0b3JlLnB1dChrZXksICJteWtleSIpOworICAgICAgICByZXEub25lcnJvciA9IGZ1
bmN0aW9uKGV2ZW50KSB7CisgICAgICAgICAgICB0ZXN0RmFpbGVkKCJDb3VsZCBub3QgcHV0IGEg
a2V5IGludG8gZGF0YWJhc2U6ICIgKyBldmVudC50YXJnZXQuZXJyb3IubmFtZSk7CisgICAgICAg
ICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICAgICByZXEub25zdWNjZXNzID0g
ZnVuY3Rpb24oZXZlbnQpIHsgcmVhZEtleSgpOyB9CisgICAgfQorCisgICAgZnVuY3Rpb24gcmVh
ZEtleSgpIHsKKyAgICAgICAgdmFyIG9iamVjdFN0b3JlID0gZGIudHJhbnNhY3Rpb24oInJzYS1p
bmRleGVkZGIiKS5vYmplY3RTdG9yZSgicnNhLWluZGV4ZWRkYiIpOworICAgICAgICB2YXIgcmVx
ID0gb2JqZWN0U3RvcmUuZ2V0KCJteWtleSIpOworICAgICAgICByZXEub25lcnJvciA9IGZ1bmN0
aW9uKGV2ZW50KSB7CisgICAgICAgICAgICB0ZXN0RmFpbGVkKCJDb3VsZCBub3QgZ2V0IGEga2V5
IGZyb20gZGF0YWJhc2U6ICIgKyBldmVudC50YXJnZXQuZXJyb3IubmFtZSk7CisgICAgICAgICAg
ICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICAgICByZXEub25zdWNjZXNzID0gZnVu
Y3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgIHdpbmRvdy5yZXRyaWV2ZWRLZXkgPSBldmVudC50
YXJnZXQucmVzdWx0OworICAgICAgICAgICAgc2hvdWxkQmUoInJldHJpZXZlZEtleS50eXBlIiwg
Iidwcml2YXRlJyIpOworICAgICAgICAgICAgc2hvdWxkQmUoInJldHJpZXZlZEtleS5leHRyYWN0
YWJsZSIsICJmYWxzZSIpOworICAgICAgICAgICAgc2hvdWxkQmUoInJldHJpZXZlZEtleS5hbGdv
cml0aG0ubmFtZSIsICInUlNBU1NBLVBLQ1MxLXYxXzUnIik7CisgICAgICAgICAgICBzaG91bGRC
ZSgicmV0cmlldmVkS2V5LmFsZ29yaXRobS5tb2R1bHVzTGVuZ3RoIiwgIjIwNDgiKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlKCJieXRlc1RvSGV4U3RyaW5nKHJldHJpZXZlZEtleS5hbGdvcml0aG0u
cHVibGljRXhwb25lbnQpIiwgIicwMTAwMDEnIik7CisgICAgICAgICAgICBzaG91bGRCZSgicmV0
cmlldmVkS2V5LmFsZ29yaXRobS5oYXNoLm5hbWUiLCAiJ1NIQS0yNTYnIik7CisgICAgICAgICAg
ICBzaG91bGRCZSgicmV0cmlldmVkS2V5LnVzYWdlcyIsICdbInNpZ24iXScpOworCisgICAgICAg
ICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgIH0KK30pOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yZXNvdXJjZXMvcnNhLWluZGV4ZWRkYi5qcyBiL0xh
eW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcmVzb3VyY2VzL3JzYS1pbmRleGVkZGIuanMKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjcxZmY4NzJjNTA3YjgyODgxYzJhZDhjNmU4MTY1YWE0NDAwMzZkYQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcmVzb3VyY2VzL3JzYS1pbmRleGVk
ZGIuanMKQEAgLTAsMCArMSw2MiBAQAorZGVzY3JpcHRpb24oIlRlc3Qgc3RvcmluZyBhIHByaXZh
dGUgUlNBIGtleSBpbiBJbmRleGVkREIsIGFuZCByZXRyaWV2aW5nIGl0LiIpOworCitqc1Rlc3RJ
c0FzeW5jID0gdHJ1ZTsKKwordmFyIHByaXZhdGVLZXlKU09OID0geworICAgIGt0eTogIlJTQSIs
CisgICAgYWxnOiAiUlMyNTYiLAorICAgIG46ICJyY0NVQ3Y3T2MxSFZhbTFESWhDenFrblRoV2F3
T3A4UUxrOFppeTJwMTBCeWpRRkNham9GaXl1QVdsLVIxV1haYWY0eGl0TFJyYWNUOWFncHpJemMt
TWJMU0hJR2dXUUdPMjFsR2lJbXk1ZnRaLUQ4YkhBcVJ6MnkxNXB6RDRjNENFb3U3WFNTTERvUm5S
MFFHNU1zRGhENnMyZ1Y5bXdIa3J0a0N4dE1XZEJpLTc3YXM4d0dtbE5SbGRjT1NnWkRMSzhVbkNT
Z0ExT2d1Wjk4OWJGeWM4dE9PRUliMHhVU2ZQU3ozTFBTQ255WXo2OGFEam1LVmVOSC1pZzg1N09T
Y3lXYkd5RXkzQml3NjRxdW4zanVVbE5Xc0ozem5na09kdGVZV3l0eDVRcjRYS05zNlItTXl5cTcy
S1VwMDJtSkRaaWl5aWdseE1MX2kzLV9DZWVjQ3ciLAorICAgIGU6ICJBUUFCIiwKKyAgICBkOiAi
ZU5MUzM3YUN6N1JYU05QRF9EdExCSjZqNVQ4Y1N4ZHpSQkNqUGFJNldjR3FKcDE2bHEzVVR3dW9E
TEFxbEE5b0dZbTIzOGRzSVdwdXVjUF9sUXRiV2UtN1NweG9JNl92bVlHZjdZVlVIdjEtREY5cWlP
bVNyTW1keE1uVk96WVhZOFJhVDZ0aFBqbl9KNWNmTFYyeElfTHdzck10bXBkU3lObGdYMHpUVWh3
dHVhaGdBS01FQ2hZakgyRW5qSGRIdzZzWTItd0FwZGNRSTdVTEUwb281UnpiUVpwbXVoY045aGlC
YzBMM2hoRjBxbzUwbWJsMDJfNjVfR1E3RHBWa1hCeE5nUkJMemxQYWJtenpHMm9BaGZlZkxnWW1T
QzFvcGFDa1hFNnZSV1FOV05MNDVSWk5aRllNM3VvSmdoT01xR2VvY00wQnBqZENoSHJQT2xGdlNR
IiwKKyAgICBwOiAiNG1pVHVBaktNZUg1dUo1S0IzOTdRVXdoYmtZRWdTYmNBMm1pZm1Ta3ZFMjAx
OGdiNTVxa0JISzFlVnJ5ZjFfbTQzTE5sYzZPX2FrNmdmemRaSVp2UzVOQ0dqUGwwcTA5cGxVcHU4
cUZPU3NwQndBNjdxR0g3NmxGbFpMbl9kNHlnbFM3d2ZMcnU0XzVZczhxTExzLURxVkx2aXdwb3NP
bnl5V3F3TTVBWHAwIiwKKyAgICBxOiAieEhZcnpraXZ0bW56X3NHY2huV0djMHEtcERPa0tpY3B0
UnB2MnBNRklJWHhuRlg1YU1lRVhJWmpWdWpYdHdVeTFVbEZJTjJHWkpTdnk1S0o3OW11X1h5Tm5G
SE16ZWRILUEzZWUzdThoMVVVclpGLXZVdTFfZTRVX3g2N05OMWRlZHpVU0t5bk43cEZsM09rdVNo
TUJXR1YtY3d6T1BkY1ZBZlZ1Wmx4VU1jIiwKKyAgICBkcDogImZCekR6WURVQm1CUUdvcDdIbjBk
dmZfVDI3VjZScXBjdFdvMDc0Q1FaY0ZiUDJhdEZWdEtTajN2aVdUM3hpZDJWSHpjZ2lESGRmcE0z
bkVWbEVPMXd3SW9uR0NTdmRqR0VPWmlpRlZPanJaQU9WeEE4Z3VPanl5RnZxYlhrZTA2VndQSUlW
dmZLZVNVMnp1aGJQX18xdHQ2Rl9meG93NEtiMnhvbkdUMEdHayIsCisgICAgZHE6ICJqbUUyRGlJ
UGRod0RnTFhBUXBJYUJxUTgxYk8zWGZWVF9MUlVMQXd3d3dsUHVRVjE0OEgwNHpsaDlUSjZZMkda
SFlva1YxVTBlT0JwSnhma2I3ZExZdHBKcHVpQmpSZjR5SVVFb0dsa2tJX1FsSm5GU0ZyLVlqR1Jk
Zk5IcVdCa3hsU01aTDc3MFI5bUlBVG5kR2tIN3o1eC1yOUt3QlpGQzRGQ0cyaGdfekUiLAorICAg
IHFpOiAiWUNYX3BMd2JNQkExVGhWSDBXY3dtbnl0cU5jck1DRXdUbTdCeUEyZVU2bldiUXJVTHZm
N205X2t6ZkxVY2pzbnBBVmxCUUc1Sk1YTXkwU3E0cHR3Ynl3c2E1LUc4S0FPT09SMkwzdjRoQy1F
eXM5ZnRnRk1fM2kwbzQwZWVRSDRiM2hhUGJudHJJZU1nOEl6bE91VllLZjktMlF1S0RvV2VSZGQ3
TnNkeFRrIgorfTsKKworY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHByaXZhdGVLZXlK
U09OLCB7IG5hbWU6ICdSU0FTU0EtUEtDUzEtdjFfNScsIGhhc2g6ICJzaGEtMjU2IiB9LCB0cnVl
LCBbInNpZ24iXSkudGhlbihmdW5jdGlvbihrZXkpIHsKKyAgICB2YXIgb3BlblJlcXVlc3QgPSBp
bmRleGVkREIub3BlbigiY3J5cHRvX3N1YnRsZSIpOworICAgIG9wZW5SZXF1ZXN0Lm9udXBncmFk
ZW5lZWRlZCA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIHZhciBvYmplY3RTdG9yZSA9IGV2
ZW50LnRhcmdldC5yZXN1bHQuY3JlYXRlT2JqZWN0U3RvcmUoInJzYS1pbmRleGVkZGIiKTsKKyAg
ICB9CisgICAgb3BlblJlcXVlc3Qub25lcnJvciA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAg
IHRlc3RGYWlsZWQoIkNvdWxkIG5vdCBvcGVuIGRhdGFiYXNlOiAiICsgZXZlbnQudGFyZ2V0LmVy
cm9yLm5hbWUpOworICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICB9CisgICAgb3BlblJlcXVl
c3Qub25zdWNjZXNzID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgZGIgPSBldmVudC50YXJn
ZXQucmVzdWx0OworICAgICAgICBzdG9yZUtleSgpOworICAgIH0KKworICAgIGZ1bmN0aW9uIHN0
b3JlS2V5KCkgeworICAgICAgICB2YXIgb2JqZWN0U3RvcmUgPSBkYi50cmFuc2FjdGlvbigicnNh
LWluZGV4ZWRkYiIsICJyZWFkd3JpdGUiKS5vYmplY3RTdG9yZSgicnNhLWluZGV4ZWRkYiIpOwor
ICAgICAgICB2YXIgcmVxID0gb2JqZWN0U3RvcmUucHV0KGtleSwgIm15a2V5Iik7CisgICAgICAg
IHJlcS5vbmVycm9yID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQo
IkNvdWxkIG5vdCBwdXQgYSBrZXkgaW50byBkYXRhYmFzZTogIiArIGV2ZW50LnRhcmdldC5lcnJv
ci5uYW1lKTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9CisgICAgICAg
IHJlcS5vbnN1Y2Nlc3MgPSBmdW5jdGlvbihldmVudCkgeyByZWFkS2V5KCk7IH0KKyAgICB9CisK
KyAgICBmdW5jdGlvbiByZWFkS2V5KCkgeworICAgICAgICB2YXIgb2JqZWN0U3RvcmUgPSBkYi50
cmFuc2FjdGlvbigicnNhLWluZGV4ZWRkYiIpLm9iamVjdFN0b3JlKCJyc2EtaW5kZXhlZGRiIik7
CisgICAgICAgIHZhciByZXEgPSBvYmplY3RTdG9yZS5nZXQoIm15a2V5Iik7CisgICAgICAgIHJl
cS5vbmVycm9yID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgIHRlc3RGYWlsZWQoIkNv
dWxkIG5vdCBnZXQgYSBrZXkgZnJvbSBkYXRhYmFzZTogIiArIGV2ZW50LnRhcmdldC5lcnJvci5u
YW1lKTsKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9CisgICAgICAgIHJl
cS5vbnN1Y2Nlc3MgPSBmdW5jdGlvbihldmVudCkgeworICAgICAgICAgICAgd2luZG93LnJldHJp
ZXZlZEtleSA9IGV2ZW50LnRhcmdldC5yZXN1bHQ7CisgICAgICAgICAgICBzaG91bGRCZSgicmV0
cmlldmVkS2V5LnR5cGUiLCAiJ3ByaXZhdGUnIik7CisgICAgICAgICAgICBzaG91bGRCZSgicmV0
cmlldmVkS2V5LmV4dHJhY3RhYmxlIiwgInRydWUiKTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJy
ZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLm5hbWUiLCAiJ1JTQVNTQS1QS0NTMS12MV81JyIpOworICAg
ICAgICAgICAgc2hvdWxkQmUoInJldHJpZXZlZEtleS5hbGdvcml0aG0ubW9kdWx1c0xlbmd0aCIs
ICIyMDQ4Iik7CisgICAgICAgICAgICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmluZyhyZXRyaWV2
ZWRLZXkuYWxnb3JpdGhtLnB1YmxpY0V4cG9uZW50KSIsICInMDEwMDAxJyIpOworICAgICAgICAg
ICAgc2hvdWxkQmUoInJldHJpZXZlZEtleS5hbGdvcml0aG0uaGFzaC5uYW1lIiwgIidTSEEtMjU2
JyIpOworICAgICAgICAgICAgc2hvdWxkQmUoInJldHJpZXZlZEtleS51c2FnZXMiLCAnWyJzaWdu
Il0nKTsKKworICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0KKyAgICB9Cit9
LCBmYWlsQW5kRmluaXNoSlNUZXN0KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NyeXB0by9z
dWJ0bGUvcnNhLWluZGV4ZWRkYi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3Vi
dGxlL3JzYS1pbmRleGVkZGItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYzODk5NjA2M2UxNmI5
ZmZjOGVhNTc2MGQ4Y2M4MTUwNWI2MTIyOTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTYg
QEAKK1Rlc3Qgc3RvcmluZyBhIHByaXZhdGUgUlNBIGtleSBpbiBJbmRleGVkREIsIGFuZCByZXRy
aWV2aW5nIGl0LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyByZXRyaWV2
ZWRLZXkudHlwZSBpcyAncHJpdmF0ZScKK1BBU1MgcmV0cmlldmVkS2V5LmV4dHJhY3RhYmxlIGlz
IHRydWUKK1BBU1MgcmV0cmlldmVkS2V5LmFsZ29yaXRobS5uYW1lIGlzICdSU0FTU0EtUEtDUzEt
djFfNScKK1BBU1MgcmV0cmlldmVkS2V5LmFsZ29yaXRobS5tb2R1bHVzTGVuZ3RoIGlzIDIwNDgK
K1BBU1MgYnl0ZXNUb0hleFN0cmluZyhyZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLnB1YmxpY0V4cG9u
ZW50KSBpcyAnMDEwMDAxJworUEFTUyByZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLmhhc2gubmFtZSBp
cyAnU0hBLTI1NicKK1BBU1MgcmV0cmlldmVkS2V5LnVzYWdlcyBpcyBbInNpZ24iXQorUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1ub24tZXhwb3J0YWJsZS1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9u
LWV4cG9ydGFibGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdjOTBiZGI5MTI0ZDYwMDYyMGFm
YzVjMzgzMGI5MGUyYTc4MTMxMjAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jcnlw
dG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMTYgQEAKK1Rlc3Qgc3RvcmluZyBhIHByaXZhdGUgUlNBIGtleSBpbiBJbmRleGVkREIs
IGFuZCByZXRyaWV2aW5nIGl0LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFT
UyByZXRyaWV2ZWRLZXkudHlwZSBpcyAncHJpdmF0ZScKK1BBU1MgcmV0cmlldmVkS2V5LmV4dHJh
Y3RhYmxlIGlzIGZhbHNlCitQQVNTIHJldHJpZXZlZEtleS5hbGdvcml0aG0ubmFtZSBpcyAnUlNB
U1NBLVBLQ1MxLXYxXzUnCitQQVNTIHJldHJpZXZlZEtleS5hbGdvcml0aG0ubW9kdWx1c0xlbmd0
aCBpcyAyMDQ4CitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcocmV0cmlldmVkS2V5LmFsZ29yaXRobS5w
dWJsaWNFeHBvbmVudCkgaXMgJzAxMDAwMScKK1BBU1MgcmV0cmlldmVkS2V5LmFsZ29yaXRobS5o
YXNoLm5hbWUgaXMgJ1NIQS0yNTYnCitQQVNTIHJldHJpZXZlZEtleS51c2FnZXMgaXMgWyJzaWdu
Il0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4
cG9ydGFibGUtcHJpdmF0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxl
L3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUtcHJpdmF0ZS1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uN2M5MGJkYjkxMjRkNjAwNjIwYWZjNWMzODMwYjkwZTJhNzgxMzEyMAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1ub24tZXhw
b3J0YWJsZS1wcml2YXRlLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE2IEBACitUZXN0IHN0b3Jp
bmcgYSBwcml2YXRlIFJTQSBrZXkgaW4gSW5kZXhlZERCLCBhbmQgcmV0cmlldmluZyBpdC4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgcmV0cmlldmVkS2V5LnR5cGUgaXMg
J3ByaXZhdGUnCitQQVNTIHJldHJpZXZlZEtleS5leHRyYWN0YWJsZSBpcyBmYWxzZQorUEFTUyBy
ZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLm5hbWUgaXMgJ1JTQVNTQS1QS0NTMS12MV81JworUEFTUyBy
ZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLm1vZHVsdXNMZW5ndGggaXMgMjA0OAorUEFTUyBieXRlc1Rv
SGV4U3RyaW5nKHJldHJpZXZlZEtleS5hbGdvcml0aG0ucHVibGljRXhwb25lbnQpIGlzICcwMTAw
MDEnCitQQVNTIHJldHJpZXZlZEtleS5hbGdvcml0aG0uaGFzaC5uYW1lIGlzICdTSEEtMjU2Jwor
UEFTUyByZXRyaWV2ZWRLZXkudXNhZ2VzIGlzIFsic2lnbiJdCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLXByaXZhdGUuaHRtbCBi
L0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1ub24tZXhwb3J0YWJsZS1w
cml2YXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjUxYTE0MDYxMWQ1YzBmNTIyMmU2NjY5ZmY3ZGQyMWFj
N2MwNThhZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNh
LWluZGV4ZWRkYi1ub24tZXhwb3J0YWJsZS1wcml2YXRlLmh0bWwKQEAgLTAsMCArMSwxNCBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2VuYWJsZVByaXZhdGVC
cm93c2luZyA9IHRydWU7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9jb21t
b24uanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2Vz
L3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRi
LW5vbi1leHBvcnRhYmxlLmh0bWwgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRl
eGVkZGItbm9uLWV4cG9ydGFibGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zM2U2YWE3NTc0MTFmY2VlNzIy
ZDU5Yjk4M2VmYzk3YjdhMWI2N2EwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3J5
cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLmh0bWwKQEAgLTAsMCArMSwx
MSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVz
b3VyY2VzL2NvbW1vbi5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQgc3Jj
PSJyZXNvdXJjZXMvcnNhLWluZGV4ZWRkYi1ub24tZXhwb3J0YWJsZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jz
YS1pbmRleGVkZGItcHJpdmF0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3Vi
dGxlL3JzYS1pbmRleGVkZGItcHJpdmF0ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjM4OTk2
MDYzZTE2YjlmZmM4ZWE1NzYwZDhjYzgxNTA1YjYxMjI5OAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1wcml2YXRlLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDE2IEBACitUZXN0IHN0b3JpbmcgYSBwcml2YXRlIFJTQSBrZXkgaW4gSW5k
ZXhlZERCLCBhbmQgcmV0cmlldmluZyBpdC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgor
CisKK1BBU1MgcmV0cmlldmVkS2V5LnR5cGUgaXMgJ3ByaXZhdGUnCitQQVNTIHJldHJpZXZlZEtl
eS5leHRyYWN0YWJsZSBpcyB0cnVlCitQQVNTIHJldHJpZXZlZEtleS5hbGdvcml0aG0ubmFtZSBp
cyAnUlNBU1NBLVBLQ1MxLXYxXzUnCitQQVNTIHJldHJpZXZlZEtleS5hbGdvcml0aG0ubW9kdWx1
c0xlbmd0aCBpcyAyMDQ4CitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcocmV0cmlldmVkS2V5LmFsZ29y
aXRobS5wdWJsaWNFeHBvbmVudCkgaXMgJzAxMDAwMScKK1BBU1MgcmV0cmlldmVkS2V5LmFsZ29y
aXRobS5oYXNoLm5hbWUgaXMgJ1NIQS0yNTYnCitQQVNTIHJldHJpZXZlZEtleS51c2FnZXMgaXMg
WyJzaWduIl0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGIt
cHJpdmF0ZS5odG1sIGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLXBy
aXZhdGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iMWVlNjA1Y2IxZmYxN2FkZDcyZGZhMzFmZjRjNTZmNzBl
YjhhMjc5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Et
aW5kZXhlZGRiLXByaXZhdGUuaHRtbApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUgaHRtbD4K
KzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorZW5hYmxlUHJpdmF0ZUJyb3dzaW5nID0gdHJ1ZTsK
Kzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2NvbW1vbi5qcyI+PC9zY3JpcHQ+
Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvcnNhLWluZGV4ZWRkYi5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
cnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGIuaHRtbCBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0
bGUvcnNhLWluZGV4ZWRkYi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ1NGUxZGQzMTMzMjcyZTE3ZGNlMTZk
MTg3ZDU4OWViMjM0NDYxZDkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jcnlwdG8v
c3VidGxlL3JzYS1pbmRleGVkZGIuaHRtbApAQCAtMCwwICsxLDExIEBACis8IURPQ1RZUEUgaHRt
bD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvY29tbW9uLmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9yc2EtaW5k
ZXhlZGRiLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhLW9hZXAtcGxhaW50ZXh0LWxlbmd0aC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1vYWVwLXBsYWludGV4dC1sZW5ndGgt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZjYjZjYTQ1ODc0NzYxN2UzMDRiZTE5YWMzZDUxODY4
ZDQyNzFkZjcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jz
YS1vYWVwLXBsYWludGV4dC1sZW5ndGgtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTQgQEAKK1Rl
c3Qgd2hhdCBoYXBwZW5zIHdoZW4gdHJ5aW5nIHRvIGVuY3J5cHQgYSB0b28gbGFyZ2UgcGxhaW4g
dGV4dCB3aXRoIFJTQS1PQUVQLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMg
b2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworSW1w
b3J0aW5nIFJTQSBrZXlzLi4uCitFbmNyeXB0aW5nIGEgMjE0IGJ5dGUgYnVmZmVyIHdpdGggUlNB
LU9BRVAgU0hBLTEsIDIwNDggYml0IGtleS4uLgorUEFTUyBTdWNjZWVkZWQKK0VuY3J5cHRpbmcg
YSAyMTUgYnl0ZSBidWZmZXIuLi4KK1BBU1MgUmVqZWN0ZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFy
c2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9j
cnlwdG8vc3VidGxlL3JzYS1vYWVwLXBsYWludGV4dC1sZW5ndGguaHRtbCBiL0xheW91dFRlc3Rz
L2NyeXB0by9zdWJ0bGUvcnNhLW9hZXAtcGxhaW50ZXh0LWxlbmd0aC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjUwMGE1YTIxNDAyMzhlZDVmMzVlNmU5NWMzOGQ2YmU5MmUwN2VhNmMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1vYWVwLXBsYWludGV4dC1sZW5ndGgu
aHRtbApAQCAtMCwwICsxLDQ2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvY29tbW9uLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KworPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCJUZXN0IHdoYXQgaGFwcGVucyB3aGVuIHRyeWluZyB0
byBlbmNyeXB0IGEgdG9vIGxhcmdlIHBsYWluIHRleHQgd2l0aCBSU0EtT0FFUC4iKTsKKworanNU
ZXN0SXNBc3luYyA9IHRydWU7CisKK3ZhciBwdWJsaWNLZXlKU09OID0geworICAgIGt0eTogIlJT
QSIsCisgICAgYWxnOiAiUlNBLU9BRVAiLAorICAgIG46ICJyY0NVQ3Y3T2MxSFZhbTFESWhDenFr
blRoV2F3T3A4UUxrOFppeTJwMTBCeWpRRkNham9GaXl1QVdsLVIxV1haYWY0eGl0TFJyYWNUOWFn
cHpJemMtTWJMU0hJR2dXUUdPMjFsR2lJbXk1ZnRaLUQ4YkhBcVJ6MnkxNXB6RDRjNENFb3U3WFNT
TERvUm5SMFFHNU1zRGhENnMyZ1Y5bXdIa3J0a0N4dE1XZEJpLTc3YXM4d0dtbE5SbGRjT1NnWkRM
SzhVbkNTZ0ExT2d1Wjk4OWJGeWM4dE9PRUliMHhVU2ZQU3ozTFBTQ255WXo2OGFEam1LVmVOSC1p
Zzg1N09TY3lXYkd5RXkzQml3NjRxdW4zanVVbE5Xc0ozem5na09kdGVZV3l0eDVRcjRYS05zNlIt
TXl5cTcyS1VwMDJtSkRaaWl5aWdseE1MX2kzLV9DZWVjQ3ciLAorICAgIGU6ICJBUUFCIgorfTsK
KwordmFyIGV4dHJhY3RhYmxlID0gdHJ1ZTsKKworZGVidWcoIkltcG9ydGluZyBSU0Ega2V5cy4u
LiIpOworY3J5cHRvLnN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIHB1YmxpY0tleUpTT04sIHtuYW1l
OiAiUlNBLU9BRVAiLCBoYXNoOiAic2hhLTEifSwgZXh0cmFjdGFibGUsIFsiZW5jcnlwdCJdKS50
aGVuKGZ1bmN0aW9uKHJlc3VsdCkgeworICAgIHB1YmxpY0tleSA9IHJlc3VsdDsKKworICAgIGRl
YnVnKCJFbmNyeXB0aW5nIGEgMjE0IGJ5dGUgYnVmZmVyIHdpdGggUlNBLU9BRVAgU0hBLTEsIDIw
NDggYml0IGtleS4uLiIpOworICAgIHJldHVybiBjcnlwdG8uc3VidGxlLmVuY3J5cHQoIlJTQS1P
QUVQIiwgcHVibGljS2V5LCBuZXcgVWludDhBcnJheSgyMTQpKTsKK30pLnRoZW4oZnVuY3Rpb24o
cmVzdWx0KSB7CisgICAgdGVzdFBhc3NlZCgiU3VjY2VlZGVkIik7CisgICAgZGVidWcoIkVuY3J5
cHRpbmcgYSAyMTUgYnl0ZSBidWZmZXIuLi4iKTsKKyAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5l
bmNyeXB0KCJSU0EtT0FFUCIsIHB1YmxpY0tleSwgbmV3IFVpbnQ4QXJyYXkoMjE1KSk7Cit9KS50
aGVuKGZ1bmN0aW9uKHJlc3VsdCkgeworICAgIHRlc3RGYWlsZWQoIlN1Y2NlZWRlZCIpOworICAg
IGZpbmlzaEpTVGVzdCgpOworfSwgZnVuY3Rpb24ocmVzdWx0KSB7CisgICAgdGVzdFBhc3NlZCgi
UmVqZWN0ZWQiKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30pOworPC9zY3JpcHQ+CisKKzxzY3Jp
cHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhc3Nh
LXBrY3MxLXYxXzUtZ2VuZXJhdGUta2V5LXdpdGgtbGVhZGluZy16ZXJvZXMtaW4tZXhwb25lbnQt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFf
NS1nZW5lcmF0ZS1rZXktd2l0aC1sZWFkaW5nLXplcm9lcy1pbi1leHBvbmVudC1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uZjYwYzIzZWVhYmY1ZDQ3OTUxNzM3ZTMxODExNDQ1ZGEwNDU4ZDdhMgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3Mx
LXYxXzUtZ2VuZXJhdGUta2V5LXdpdGgtbGVhZGluZy16ZXJvZXMtaW4tZXhwb25lbnQtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTcgQEAKK1Rlc3QgZ2VuZXJhdGluZyBhbiBSU0Ega2V5IHBhaXIg
Zm9yIFJTQVNTQS1QS0NTMS12MV81IHdoZW4gZXhwb25lbnQgaGFzIGxlYWRpbmcgemVyb2VzLgor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworR2VuZXJhdGluZyBhIGtleSBwYWlyLi4u
CitQQVNTIGtleVBhaXIudG9TdHJpbmcoKSBpcyAnW29iamVjdCBPYmplY3RdJworUEFTUyBrZXlQ
YWlyLnB1YmxpY0tleS50eXBlIGlzICdwdWJsaWMnCitQQVNTIGtleVBhaXIucHVibGljS2V5LmFs
Z29yaXRobS5uYW1lIGlzICdSU0FTU0EtUEtDUzEtdjFfNScKK1BBU1Mga2V5UGFpci5wdWJsaWNL
ZXkuYWxnb3JpdGhtLm1vZHVsdXNMZW5ndGggaXMgMjA0OAorUEFTUyBrZXlQYWlyLnB1YmxpY0tl
eS5hbGdvcml0aG0uaGFzaC5uYW1lIGlzICdTSEEtMScKK1BBU1MgYnl0ZXNUb0hleFN0cmluZyhr
ZXlQYWlyLnB1YmxpY0tleS5hbGdvcml0aG0ucHVibGljRXhwb25lbnQpIGlzICcwMTAwMDEnCitQ
QVNTIGJ5dGVzVG9IZXhTdHJpbmcoa2V5UGFpci5wcml2YXRlS2V5LmFsZ29yaXRobS5wdWJsaWNF
eHBvbmVudCkgaXMgJzAxMDAwMScKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKwor
VEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jz
YXNzYS1wa2NzMS12MV81LWdlbmVyYXRlLWtleS13aXRoLWxlYWRpbmctemVyb2VzLWluLWV4cG9u
ZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWdl
bmVyYXRlLWtleS13aXRoLWxlYWRpbmctemVyb2VzLWluLWV4cG9uZW50Lmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uZTY1OTZiOWZkYmNlMmNhYzIzZTMyMjgzY2E5MTBhMTVmMjNkNzU5MAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYxXzUtZ2VuZXJh
dGUta2V5LXdpdGgtbGVhZGluZy16ZXJvZXMtaW4tZXhwb25lbnQuaHRtbApAQCAtMCwwICsxLDQy
IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNv
dXJjZXMvY29tbW9uLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2Ny
aXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KK2Rlc2Ny
aXB0aW9uKCJUZXN0IGdlbmVyYXRpbmcgYW4gUlNBIGtleSBwYWlyIGZvciBSU0FTU0EtUEtDUzEt
djFfNSB3aGVuIGV4cG9uZW50IGhhcyBsZWFkaW5nIHplcm9lcy4iKTsKKworanNUZXN0SXNBc3lu
YyA9IHRydWU7CisKK3ZhciBhbGdvcml0aG1LZXlHZW4gPSB7CisgICAgbmFtZTogIlJTQVNTQS1Q
S0NTMS12MV81IiwKKyAgICAvLyBSc2FLZXlHZW5QYXJhbXMKKyAgICBtb2R1bHVzTGVuZ3RoOiAy
MDQ4LAorICAgIHB1YmxpY0V4cG9uZW50OiBuZXcgVWludDhBcnJheShbMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMCwgMHgwMSwgMHgwMCwgMHgwMV0pLCAgLy8gRXF1aXZhbGVudCB0byA2NTUz
NworICAgIGhhc2g6ICJzaGEtMSIsCit9OwordmFyIGV4dHJhY3RhYmxlID0gdHJ1ZTsKKworZGVi
dWcoIkdlbmVyYXRpbmcgYSBrZXkgcGFpci4uLiIpOworY3J5cHRvLndlYmtpdFN1YnRsZS5nZW5l
cmF0ZUtleShhbGdvcml0aG1LZXlHZW4sIGV4dHJhY3RhYmxlLCBbInNpZ24iLCAidmVyaWZ5Il0p
LnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7CisgICAga2V5UGFpciA9IHJlc3VsdDsKKyAgICBzaG91
bGRCZSgia2V5UGFpci50b1N0cmluZygpIiwgIidbb2JqZWN0IE9iamVjdF0nIik7CisgICAgc2hv
dWxkQmUoImtleVBhaXIucHVibGljS2V5LnR5cGUiLCAiJ3B1YmxpYyciKTsKKyAgICBzaG91bGRC
ZSgia2V5UGFpci5wdWJsaWNLZXkuYWxnb3JpdGhtLm5hbWUiLCAiJ1JTQVNTQS1QS0NTMS12MV81
JyIpOworICAgIHNob3VsZEJlKCJrZXlQYWlyLnB1YmxpY0tleS5hbGdvcml0aG0ubW9kdWx1c0xl
bmd0aCIsICIyMDQ4Iik7CisgICAgc2hvdWxkQmUoImtleVBhaXIucHVibGljS2V5LmFsZ29yaXRo
bS5oYXNoLm5hbWUiLCAiJ1NIQS0xJyIpOworICAgIHNob3VsZEJlKCJieXRlc1RvSGV4U3RyaW5n
KGtleVBhaXIucHVibGljS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBvbmVudCkiLCAiJzAxMDAwMSci
KTsKKyAgICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmluZyhrZXlQYWlyLnByaXZhdGVLZXkuYWxn
b3JpdGhtLnB1YmxpY0V4cG9uZW50KSIsICInMDEwMDAxJyIpOworCisgICAgZmluaXNoSlNUZXN0
KCk7Cit9KTsKKzwvc2NyaXB0PgorCis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0by1rZXktYWxnb3JpdGhtLWdjLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2NyeXB0by93ZWJraXRTdWJ0bGUvY3J5cHRvLWtleS1hbGdv
cml0aG0tZ2MtZXhwZWN0ZWQudHh0CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3N2Qx
NzY2OTJjZGUzNGY1YzA2NmM5MWZiNzVhYWQ1YjQ0MDFjYTJjLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NyeXB0by93ZWJraXRTdWJ0
bGUvY3J5cHRvLWtleS1hbGdvcml0aG0tZ2MtZXhwZWN0ZWQudHh0CisrKyAvZGV2L251bGwKQEAg
LTEsMTMgKzAsMCBAQAotVGVzdCB0aGF0IENyeXB0b0tleS5hbGdvcml0aG0gcHJlc2VydmVzIGN1
c3RvbSBwcm9wZXJ0aWVzLgotCi1PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCi0KLQotCi1HZW5l
cmF0aW5nIGEgSE1BQyBrZXkgd2l0aCBkZWZhdWx0IGxlbmd0aC4uLgotUEFTUyBrZXkuYWxnb3Jp
dGhtID09PSBrZXkuYWxnb3JpdGhtIGlzIHRydWUKLVBBU1Mga2V5LmFsZ29yaXRobS5mb28gaXMg
ImJhciIKLVBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKLQotVEVTVCBDT01QTEVURQot
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0by1rZXkt
YWxnb3JpdGhtLWdjLmh0bWwgYi9MYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0
by1rZXktYWxnb3JpdGhtLWdjLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZl
NGRiYzJmNmRmN2YyZGZmY2VhMjFlZjM3YjUzZjhiYWUxZWFkOGEuLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1
YnRsZS9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDQg
KzAsMCBAQAotPCFET0NUWVBFIGh0bWw+Ci08aHRtbD4KLTxoZWFkPgotPG1ldGEgY2hhcnNldD0i
dXRmLTgiPgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9z
Y3JpcHQ+Ci08c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2NvbW1vbi5qcyI+PC9zY3JpcHQ+Ci08
L2hlYWQ+Ci08Ym9keT4KLTxzY3JpcHQ+Ci0KLWRlc2NyaXB0aW9uKCJUZXN0IHRoYXQgQ3J5cHRv
S2V5LmFsZ29yaXRobSBwcmVzZXJ2ZXMgY3VzdG9tIHByb3BlcnRpZXMuIik7Ci1qc1Rlc3RJc0Fz
eW5jID0gdHJ1ZTsKLQotZGVidWcoIlxuR2VuZXJhdGluZyBhIEhNQUMga2V5IHdpdGggZGVmYXVs
dCBsZW5ndGguLi4iKTsKLWNyeXB0by53ZWJraXRTdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJo
bWFjIiwgaGFzaDogInNoYS0xIn0sIHRydWUsIFsic2lnbiIsICJ2ZXJpZnkiXSkudGhlbihmdW5j
dGlvbihyZXN1bHQpIHsKLSAgICBrZXkgPSByZXN1bHQ7Ci0gICAgc3RhcnRUZXN0KCk7Ci19KTsK
LQotZnVuY3Rpb24gc3RhcnRUZXN0KCkKLXsKLSAgICBzaG91bGRCZVRydWUoImtleS5hbGdvcml0
aG0gPT09IGtleS5hbGdvcml0aG0iKTsKLSAgICBrZXkuYWxnb3JpdGhtLmZvbyA9ICJiYXIiOwot
ICAgIGdjKCk7Ci0gICAgc2V0VGltZW91dChjb250aW51ZVRlc3QsIDEwKTsKLX0KLQotZnVuY3Rp
b24gY29udGludWVUZXN0KCkKLXsKLSAgICBnYygpOwotICAgIHNldFRpbWVvdXQoZmluaXNoVGVz
dCwgMTApOwotfQotCi1mdW5jdGlvbiBmaW5pc2hUZXN0KCkKLXsKLSAgICBnYygpOwotICAgIHNo
b3VsZEJlRXF1YWxUb1N0cmluZygna2V5LmFsZ29yaXRobS5mb28nLCAnYmFyJyk7Ci0gICAgZmlu
aXNoSlNUZXN0KCk7Ci19Ci0KLTwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1YnRsZS9jcnlwdG8ta2V5LXVzYWdlcy1nYy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0by1rZXkt
dXNhZ2VzLWdjLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWQx
NTVmMDc0Yzc2N2IyNTM1OTUzMzcxOWUzYmM2ZGRiZmIzNDVjZi4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3Vi
dGxlL2NyeXB0by1rZXktdXNhZ2VzLWdjLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBAIC0x
LDEzICswLDAgQEAKLVRlc3QgdGhhdCBDcnlwdG9LZXkudXNhZ2VzIHByZXNlcnZlcyBjdXN0b20g
cHJvcGVydGllcy4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotR2VuZXJhdGlu
ZyBhIEhNQUMga2V5IHdpdGggZGVmYXVsdCBsZW5ndGguLi4KLVBBU1Mga2V5LnVzYWdlcyA9PT0g
a2V5LnVzYWdlcyBpcyB0cnVlCi1QQVNTIGtleS51c2FnZXMuZm9vIGlzICJiYXIiCi1QQVNTIHN1
Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUKLQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1YnRsZS9jcnlwdG8ta2V5LXVzYWdlcy1nYy5odG1s
IGIvTGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1YnRsZS9jcnlwdG8ta2V5LXVzYWdlcy1nYy5o
dG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5NzhiNjhjNjVmMGM1OGI2ZDcwMjZj
ZDlhZmIwZjM1NTI4OWUyMWZmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL0xheW91dFRlc3RzL2NyeXB0by93ZWJraXRTdWJ0bGUvY3J5cHRvLWtleS11c2Fn
ZXMtZ2MuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1s
PgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIu
Li8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4u
L3Jlc291cmNlcy9jb21tb24uanMiPjwvc2NyaXB0PgotPC9oZWFkPgotPGJvZHk+Ci08c2NyaXB0
PgotCi1kZXNjcmlwdGlvbigiVGVzdCB0aGF0IENyeXB0b0tleS51c2FnZXMgcHJlc2VydmVzIGN1
c3RvbSBwcm9wZXJ0aWVzLiIpOwotanNUZXN0SXNBc3luYyA9IHRydWU7Ci0KLWRlYnVnKCJcbkdl
bmVyYXRpbmcgYSBITUFDIGtleSB3aXRoIGRlZmF1bHQgbGVuZ3RoLi4uIik7Ci1jcnlwdG8ud2Vi
a2l0U3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAiaG1hYyIsIGhhc2g6ICJzaGEtMSJ9LCB0cnVl
LCBbInNpZ24iLCAidmVyaWZ5Il0pLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7Ci0gICAga2V5ID0g
cmVzdWx0OwotICAgIHN0YXJ0VGVzdCgpOwotfSk7Ci0KLWZ1bmN0aW9uIHN0YXJ0VGVzdCgpCi17
Ci0gICAgc2hvdWxkQmVUcnVlKCJrZXkudXNhZ2VzID09PSBrZXkudXNhZ2VzIik7Ci0gICAga2V5
LnVzYWdlcy5mb28gPSAiYmFyIjsKLSAgICBnYygpOwotICAgIHNldFRpbWVvdXQoY29udGludWVU
ZXN0LCAxMCk7Ci19Ci0KLWZ1bmN0aW9uIGNvbnRpbnVlVGVzdCgpCi17Ci0gICAgZ2MoKTsKLSAg
ICBzZXRUaW1lb3V0KGZpbmlzaFRlc3QsIDEwKTsKLX0KLQotZnVuY3Rpb24gZmluaXNoVGVzdCgp
Ci17Ci0gICAgZ2MoKTsKLSAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoJ2tleS51c2FnZXMuZm9v
JywgJ2JhcicpOwotICAgIGZpbmlzaEpTVGVzdCgpOwotfQotCi08L3NjcmlwdD4KLTxzY3JpcHQg
c3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4K
LTwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy1zaW11bGF0b3It
d2sxL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtc2ltdWxhdG9y
LXdrMS9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDg5YzVjNWYzYTg0YjU4OGNiNjdjZmEyOTMwODFh
MmFlNjg5ZWIzZmQuLjZhMTBiZWM5YTUyMmU2NTk0NjRkODZlM2U2OTE2OGFlMTI4MmI4YTAgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy1zaW11bGF0b3Itd2sxL1Rlc3RFeHBl
Y3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXNpbXVsYXRvci13azEvVGVz
dEV4cGVjdGF0aW9ucwpAQCAtMTAyMSw2ICsxMDIxLDEwIEBAIGNyeXB0by93ZWJraXRTdWJ0bGUv
cnNhLWluZGV4ZWRkYi1wcml2YXRlLmh0bWwKIGNyeXB0by93ZWJraXRTdWJ0bGUvcnNhLWluZGV4
ZWRkYi5odG1sCiBmYXN0L2hpc3RvcnkvcGFnZS1jYWNoZS1pbmRleGVkLWNsb3NlZC1kYi5odG1s
CiBmYXN0L2hpc3RvcnkvcGFnZS1jYWNoZS1pbmRleGVkLW9wZW5lZC1kYi5odG1sCitjcnlwdG8v
c3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUtcHJpdmF0ZS5odG1sCitjcnlwdG8v
c3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUuaHRtbAorY3J5cHRvL3N1YnRsZS9y
c2EtaW5kZXhlZGRiLXByaXZhdGUuaHRtbAorY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLmh0
bWwKIAogIyBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzIG5vdCB5ZXQgc3VwcG9ydGVkIGluIFdLMQog
bG9hZGVyL25hdmlnYXRpb24tcG9saWN5IFsgU2tpcCBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>296959</attachid>
            <date>2016-12-12 15:30:04 -0800</date>
            <delta_ts>2016-12-12 16:44:21 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-165554-20161212152916.patch</filename>
            <type>text/plain</type>
            <size>30815</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA5NDM4CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZDU1ZTg3MWI4NDc1M2M3MjAxY2E5
NDQxNGY2MjE3NWNmZWQzOTVkOS4uNmZhMGYyMDE2OTkwZWQ0MmRjZGE3NzllMGE2YmI2MmY0N2Rk
ODZmOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE2LTEyLTA3ICBKaWV3ZW4gVGFuICA8amll
d2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkNyeXB0b10gTWlncmF0ZSBzb21lIHRl
c3RzIGZyb20gd2Via2l0U3VidGxlIHRvIHN1YnRsZQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY1NTU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJl
bnQgRnVsZ2hhbS4KKworICAgICAgICBUbyBpbXByb3ZlIHRlc3QgY292ZXJhZ2UgZm9yIHN1YnRs
ZS4KKworICAgICAgICAqIGNyeXB0by9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy1leHBlY3RlZC50
eHQ6IFJlbmFtZWQgZnJvbSBMYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0by1r
ZXktYWxnb3JpdGhtLWdjLWV4cGVjdGVkLnR4dC4KKyAgICAgICAgKiBjcnlwdG8vY3J5cHRvLWtl
eS1hbGdvcml0aG0tZ2MuaHRtbDogUmVuYW1lZCBmcm9tIExheW91dFRlc3RzL2NyeXB0by93ZWJr
aXRTdWJ0bGUvY3J5cHRvLWtleS1hbGdvcml0aG0tZ2MuaHRtbC4KKyAgICAgICAgKiBjcnlwdG8v
Y3J5cHRvLWtleS11c2FnZXMtZ2MtZXhwZWN0ZWQudHh0OiBSZW5hbWVkIGZyb20gTGF5b3V0VGVz
dHMvY3J5cHRvL3dlYmtpdFN1YnRsZS9jcnlwdG8ta2V5LXVzYWdlcy1nYy1leHBlY3RlZC50eHQu
CisgICAgICAgICogY3J5cHRvL2NyeXB0by1rZXktdXNhZ2VzLWdjLmh0bWw6IFJlbmFtZWQgZnJv
bSBMYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0by1rZXktdXNhZ2VzLWdjLmh0
bWwuCisgICAgICAgICogY3J5cHRvL3N1YnRsZS9yZXNvdXJjZXMvcnNhLWluZGV4ZWRkYi1ub24t
ZXhwb3J0YWJsZS5qczogQWRkZWQuCisgICAgICAgICogY3J5cHRvL3N1YnRsZS9yZXNvdXJjZXMv
cnNhLWluZGV4ZWRkYi5qczogQWRkZWQuCisgICAgICAgICogY3J5cHRvL3N1YnRsZS9yc2EtaW5k
ZXhlZGRiLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY3J5cHRvL3N1YnRsZS9yc2Et
aW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICog
Y3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLXByaXZhdGUtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9u
LWV4cG9ydGFibGUtcHJpdmF0ZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBjcnlwdG8vc3VidGxl
L3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUuaHRtbDogQWRkZWQuCisgICAgICAgICogY3J5
cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLXByaXZhdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBjcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItcHJpdmF0ZS5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGIuaHRtbDogQWRkZWQuCisgICAg
ICAgICogY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1wbGFpbnRleHQtbGVuZ3RoLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1wbGFpbnRleHQtbGVu
Z3RoLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGNyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYx
XzUtZ2VuZXJhdGUta2V5LXdpdGgtbGVhZGluZy16ZXJvZXMtaW4tZXhwb25lbnQtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKyAgICAgICAgKiBjcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWdl
bmVyYXRlLWtleS13aXRoLWxlYWRpbmctemVyb2VzLWluLWV4cG9uZW50Lmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL2lvcy1zaW11bGF0b3Itd2sxL1Rlc3RFeHBlY3RhdGlvbnM6CisK
IDIwMTYtMTItMDUgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbUGFydCAxIG9mIDJdIEFkZCBzdXBwb3J0IGZvciBTUEtJIGZvcm1hdCB3aGlsZSBkb2luZyBT
dWJ0bGVDcnlwdG8uaW1wb3J0S2V5L2V4cG9ydEtleQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3J5cHRvL2NyeXB0by1rZXktYWxnb3JpdGhtLWdjLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2NyeXB0by9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
YmY5MmUwN2Q3MmZiMWZmZTk1NzAxNzE3YTUyYmFmMTFjZjM4M2Y4YwotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2NyeXB0by9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSw5IEBACitUZXN0IHRoYXQgQ3J5cHRvS2V5LmFsZ29yaXRobSBwcmVzZXJ2
ZXMgY3VzdG9tIHByb3BlcnRpZXMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCisK
K0dlbmVyYXRpbmcgYSBITUFDIGtleSB3aXRoIGRlZmF1bHQgbGVuZ3RoLi4uCitQQVNTIGtleS5h
bGdvcml0aG0gPT09IGtleS5hbGdvcml0aG0gaXMgdHJ1ZQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9jcnlwdG8vY3J5cHRvLWtleS1hbGdvcml0aG0tZ2MuaHRtbCBiL0xheW91dFRlc3RzL2Ny
eXB0by9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg4MTg4ZjliNjJh
NmZkOTNmMDM3YTU4ZmJlOTI2YzRlNTU4NGJiYmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9jcnlwdG8vY3J5cHRvLWtleS1hbGdvcml0aG0tZ2MuaHRtbApAQCAtMCwwICsxLDQ0IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+
Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSJyZXNvdXJjZXMvY29tbW9uLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPHNjcmlwdD4KKworZGVzY3JpcHRpb24oIlRlc3QgdGhhdCBDcnlwdG9LZXkuYWxnb3JpdGht
IHByZXNlcnZlcyBjdXN0b20gcHJvcGVydGllcy4iKTsKK2pzVGVzdElzQXN5bmMgPSB0cnVlOwor
CitkZWJ1ZygiXG5HZW5lcmF0aW5nIGEgSE1BQyBrZXkgd2l0aCBkZWZhdWx0IGxlbmd0aC4uLiIp
OworY3J5cHRvLnN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogImhtYWMiLCBoYXNoOiAic2hhLTEi
fSwgdHJ1ZSwgWyJzaWduIiwgInZlcmlmeSJdKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgeworICAg
IGtleSA9IHJlc3VsdDsKKyAgICBzdGFydFRlc3QoKTsKK30pOworCitmdW5jdGlvbiBzdGFydFRl
c3QoKQoreworICAgIHNob3VsZEJlVHJ1ZSgia2V5LmFsZ29yaXRobSA9PT0ga2V5LmFsZ29yaXRo
bSIpOworICAgIGtleS5hbGdvcml0aG0uZm9vID0gImJhciI7CisgICAgZ2MoKTsKKyAgICBzZXRU
aW1lb3V0KGNvbnRpbnVlVGVzdCwgMTApOworfQorCitmdW5jdGlvbiBjb250aW51ZVRlc3QoKQor
eworICAgIGdjKCk7CisgICAgc2V0VGltZW91dChmaW5pc2hUZXN0LCAxMCk7Cit9CisKK2Z1bmN0
aW9uIGZpbmlzaFRlc3QoKQoreworICAgIGdjKCk7CisgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCdrZXkuYWxnb3JpdGhtLmZvbycsICdiYXInKTsKKyAgICBmaW5pc2hKU1Rlc3QoKTsKK30KKwor
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+
PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jcnlw
dG8vY3J5cHRvLWtleS11c2FnZXMtZ2MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3J5cHRv
L2NyeXB0by1rZXktdXNhZ2VzLWdjLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZDc3ZGRlODcw
Yjg3ZjZmNTBiOTVkMzc2MDQ2OWUyYWQwZjU2OGQwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvY3J5cHRvL2NyeXB0by1rZXktdXNhZ2VzLWdjLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDkgQEAKK1Rlc3QgdGhhdCBDcnlwdG9LZXkudXNhZ2VzIHByZXNlcnZlcyBjdXN0b20gcHJvcGVy
dGllcy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNz
YWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKKworR2VuZXJhdGluZyBhIEhN
QUMga2V5IHdpdGggZGVmYXVsdCBsZW5ndGguLi4KK1BBU1Mga2V5LnVzYWdlcyA9PT0ga2V5LnVz
YWdlcyBpcyB0cnVlCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NyeXB0by9jcnlwdG8ta2V5
LXVzYWdlcy1nYy5odG1sIGIvTGF5b3V0VGVzdHMvY3J5cHRvL2NyeXB0by1rZXktdXNhZ2VzLWdj
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uOGM2M2I5NzgxMTg0ZDg3NThmNTdkZjlkNjBkZWI2NjVlMzUxNWNl
OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NyeXB0by9jcnlwdG8ta2V5LXVzYWdl
cy1nYy5odG1sCkBAIC0wLDAgKzEsNDQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVh
ZD4KKzxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9jb21tb24uanMi
Pjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorCitkZXNjcmlwdGlvbigiVGVz
dCB0aGF0IENyeXB0b0tleS51c2FnZXMgcHJlc2VydmVzIGN1c3RvbSBwcm9wZXJ0aWVzLiIpOwor
anNUZXN0SXNBc3luYyA9IHRydWU7CisKK2RlYnVnKCJcbkdlbmVyYXRpbmcgYSBITUFDIGtleSB3
aXRoIGRlZmF1bHQgbGVuZ3RoLi4uIik7CitjcnlwdG8uc3VidGxlLmdlbmVyYXRlS2V5KHtuYW1l
OiAiaG1hYyIsIGhhc2g6ICJzaGEtMSJ9LCB0cnVlLCBbInNpZ24iLCAidmVyaWZ5Il0pLnRoZW4o
ZnVuY3Rpb24ocmVzdWx0KSB7CisgICAga2V5ID0gcmVzdWx0OworICAgIHN0YXJ0VGVzdCgpOwor
fSk7CisKK2Z1bmN0aW9uIHN0YXJ0VGVzdCgpCit7CisgICAgc2hvdWxkQmVUcnVlKCJrZXkudXNh
Z2VzID09PSBrZXkudXNhZ2VzIik7CisgICAga2V5LnVzYWdlcy5mb28gPSAiYmFyIjsKKyAgICBn
YygpOworICAgIHNldFRpbWVvdXQoY29udGludWVUZXN0LCAxMCk7Cit9CisKK2Z1bmN0aW9uIGNv
bnRpbnVlVGVzdCgpCit7CisgICAgZ2MoKTsKKyAgICBzZXRUaW1lb3V0KGZpbmlzaFRlc3QsIDEw
KTsKK30KKworZnVuY3Rpb24gZmluaXNoVGVzdCgpCit7CisgICAgZ2MoKTsKKyAgICBzaG91bGRC
ZUVxdWFsVG9TdHJpbmcoJ2tleS51c2FnZXMuZm9vJywgJ2JhcicpOworICAgIGZpbmlzaEpTVGVz
dCgpOworfQorCis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2NyeXB0by9zdWJ0bGUvcmVzb3VyY2VzL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFi
bGUuanMgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jlc291cmNlcy9yc2EtaW5kZXhlZGRi
LW5vbi1leHBvcnRhYmxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjc4MzlkOGFkMGZkYTRlZTA4ZGViMWMwYWE4
ODhmYzA1NzFkY2JkZDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3Vi
dGxlL3Jlc291cmNlcy9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLmpzCkBAIC0wLDAgKzEs
NjIgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0IHN0b3JpbmcgYSBwcml2YXRlIFJTQSBrZXkgaW4gSW5k
ZXhlZERCLCBhbmQgcmV0cmlldmluZyBpdC4iKTsKKworanNUZXN0SXNBc3luYyA9IHRydWU7CisK
K3ZhciBwcml2YXRlS2V5SlNPTiA9IHsKKyAgICBrdHk6ICJSU0EiLAorICAgIGFsZzogIlJTMjU2
IiwKKyAgICBuOiAicmNDVUN2N09jMUhWYW0xREloQ3pxa25UaFdhd09wOFFMazhaaXkycDEwQnlq
UUZDYWpvRml5dUFXbC1SMVdYWmFmNHhpdExScmFjVDlhZ3B6SXpjLU1iTFNISUdnV1FHTzIxbEdp
SW15NWZ0Wi1EOGJIQXFSejJ5MTVwekQ0YzRDRW91N1hTU0xEb1JuUjBRRzVNc0RoRDZzMmdWOW13
SGtydGtDeHRNV2RCaS03N2FzOHdHbWxOUmxkY09TZ1pETEs4VW5DU2dBMU9ndVo5ODliRnljOHRP
T0VJYjB4VVNmUFN6M0xQU0NueVl6NjhhRGptS1ZlTkgtaWc4NTdPU2N5V2JHeUV5M0JpdzY0cXVu
M2p1VWxOV3NKM3puZ2tPZHRlWVd5dHg1UXI0WEtOczZSLU15eXE3MktVcDAybUpEWmlpeWlnbHhN
TF9pMy1fQ2VlY0N3IiwKKyAgICBlOiAiQVFBQiIsCisgICAgZDogImVOTFMzN2FDejdSWFNOUERf
RHRMQko2ajVUOGNTeGR6UkJDalBhSTZXY0dxSnAxNmxxM1VUd3VvRExBcWxBOW9HWW0yMzhkc0lX
cHV1Y1BfbFF0YldlLTdTcHhvSTZfdm1ZR2Y3WVZVSHYxLURGOXFpT21Tck1tZHhNblZPellYWThS
YVQ2dGhQam5fSjVjZkxWMnhJX0x3c3JNdG1wZFN5TmxnWDB6VFVod3R1YWhnQUtNRUNoWWpIMkVu
akhkSHc2c1kyLXdBcGRjUUk3VUxFMG9vNVJ6YlFacG11aGNOOWhpQmMwTDNoaEYwcW81MG1ibDAy
XzY1X0dRN0RwVmtYQnhOZ1JCTHpsUGFibXp6RzJvQWhmZWZMZ1ltU0Mxb3BhQ2tYRTZ2UldRTldO
TDQ1UlpOWkZZTTN1b0pnaE9NcUdlb2NNMEJwamRDaEhyUE9sRnZTUSIsCisgICAgcDogIjRtaVR1
QWpLTWVINXVKNUtCMzk3UVV3aGJrWUVnU2JjQTJtaWZtU2t2RTIwMThnYjU1cWtCSEsxZVZyeWYx
X200M0xObGM2T19hazZnZnpkWkladlM1TkNHalBsMHEwOXBsVXB1OHFGT1NzcEJ3QTY3cUdINzZs
RmxaTG5fZDR5Z2xTN3dmTHJ1NF81WXM4cUxMcy1EcVZMdml3cG9zT255eVdxd001QVhwMCIsCisg
ICAgcTogInhIWXJ6a2l2dG1uel9zR2NobldHYzBxLXBET2tLaWNwdFJwdjJwTUZJSVh4bkZYNWFN
ZUVYSVpqVnVqWHR3VXkxVWxGSU4yR1pKU3Z5NUtKNzltdV9YeU5uRkhNemVkSC1BM2VlM3U4aDFV
VXJaRi12VXUxX2U0VV94NjdOTjFkZWR6VVNLeW5ON3BGbDNPa3VTaE1CV0dWLWN3ek9QZGNWQWZW
dVpseFVNYyIsCisgICAgZHA6ICJmQnpEellEVUJtQlFHb3A3SG4wZHZmX1QyN1Y2UnFwY3RXbzA3
NENRWmNGYlAyYXRGVnRLU2ozdmlXVDN4aWQyVkh6Y2dpREhkZnBNM25FVmxFTzF3d0lvbkdDU3Zk
akdFT1ppaUZWT2pyWkFPVnhBOGd1T2p5eUZ2cWJYa2UwNlZ3UElJVnZmS2VTVTJ6dWhiUF9fMXR0
NkZfZnhvdzRLYjJ4b25HVDBHR2siLAorICAgIGRxOiAiam1FMkRpSVBkaHdEZ0xYQVFwSWFCcVE4
MWJPM1hmVlRfTFJVTEF3d3d3bFB1UVYxNDhIMDR6bGg5VEo2WTJHWkhZb2tWMVUwZU9CcEp4Zmti
N2RMWXRwSnB1aUJqUmY0eUlVRW9HbGtrSV9RbEpuRlNGci1ZakdSZGZOSHFXQmt4bFNNWkw3NzBS
OW1JQVRuZEdrSDd6NXgtcjlLd0JaRkM0RkNHMmhnX3pFIiwKKyAgICBxaTogIllDWF9wTHdiTUJB
MVRoVkgwV2N3bW55dHFOY3JNQ0V3VG03QnlBMmVVNm5XYlFyVUx2ZjdtOV9remZMVWNqc25wQVZs
QlFHNUpNWE15MFNxNHB0d2J5d3NhNS1HOEtBT09PUjJMM3Y0aEMtRXlzOWZ0Z0ZNXzNpMG80MGVl
UUg0YjNoYVBibnRySWVNZzhJemxPdVZZS2Y5LTJRdUtEb1dlUmRkN05zZHhUayIKK307CisKK2Ny
eXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBwcml2YXRlS2V5SlNPTiwgeyBuYW1lOiAnUlNB
U1NBLVBLQ1MxLXYxXzUnLCBoYXNoOiAic2hhLTI1NiIgfSwgZmFsc2UsIFsic2lnbiJdKS50aGVu
KGZ1bmN0aW9uKGtleSkgeworICAgIHZhciBvcGVuUmVxdWVzdCA9IGluZGV4ZWREQi5vcGVuKCJj
cnlwdG9fc3VidGxlIik7CisgICAgb3BlblJlcXVlc3Qub251cGdyYWRlbmVlZGVkID0gZnVuY3Rp
b24oZXZlbnQpIHsKKyAgICAgICAgdmFyIG9iamVjdFN0b3JlID0gZXZlbnQudGFyZ2V0LnJlc3Vs
dC5jcmVhdGVPYmplY3RTdG9yZSgicnNhLWluZGV4ZWRkYiIpOworICAgIH0KKyAgICBvcGVuUmVx
dWVzdC5vbmVycm9yID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgdGVzdEZhaWxlZCgiQ291
bGQgbm90IG9wZW4gZGF0YWJhc2U6ICIgKyBldmVudC50YXJnZXQuZXJyb3IubmFtZSk7CisgICAg
ICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0KKyAgICBvcGVuUmVxdWVzdC5vbnN1Y2Nlc3MgPSBm
dW5jdGlvbihldmVudCkgeworICAgICAgICBkYiA9IGV2ZW50LnRhcmdldC5yZXN1bHQ7CisgICAg
ICAgIHN0b3JlS2V5KCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RvcmVLZXkoKSB7CisgICAg
ICAgIHZhciBvYmplY3RTdG9yZSA9IGRiLnRyYW5zYWN0aW9uKCJyc2EtaW5kZXhlZGRiIiwgInJl
YWR3cml0ZSIpLm9iamVjdFN0b3JlKCJyc2EtaW5kZXhlZGRiIik7CisgICAgICAgIHZhciByZXEg
PSBvYmplY3RTdG9yZS5wdXQoa2V5LCAibXlrZXkiKTsKKyAgICAgICAgcmVxLm9uZXJyb3IgPSBm
dW5jdGlvbihldmVudCkgeworICAgICAgICAgICAgdGVzdEZhaWxlZCgiQ291bGQgbm90IHB1dCBh
IGtleSBpbnRvIGRhdGFiYXNlOiAiICsgZXZlbnQudGFyZ2V0LmVycm9yLm5hbWUpOworICAgICAg
ICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0KKyAgICAgICAgcmVxLm9uc3VjY2VzcyA9
IGZ1bmN0aW9uKGV2ZW50KSB7IHJlYWRLZXkoKTsgfQorICAgIH0KKworICAgIGZ1bmN0aW9uIHJl
YWRLZXkoKSB7CisgICAgICAgIHZhciBvYmplY3RTdG9yZSA9IGRiLnRyYW5zYWN0aW9uKCJyc2Et
aW5kZXhlZGRiIikub2JqZWN0U3RvcmUoInJzYS1pbmRleGVkZGIiKTsKKyAgICAgICAgdmFyIHJl
cSA9IG9iamVjdFN0b3JlLmdldCgibXlrZXkiKTsKKyAgICAgICAgcmVxLm9uZXJyb3IgPSBmdW5j
dGlvbihldmVudCkgeworICAgICAgICAgICAgdGVzdEZhaWxlZCgiQ291bGQgbm90IGdldCBhIGtl
eSBmcm9tIGRhdGFiYXNlOiAiICsgZXZlbnQudGFyZ2V0LmVycm9yLm5hbWUpOworICAgICAgICAg
ICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0KKyAgICAgICAgcmVxLm9uc3VjY2VzcyA9IGZ1
bmN0aW9uKGV2ZW50KSB7CisgICAgICAgICAgICB3aW5kb3cucmV0cmlldmVkS2V5ID0gZXZlbnQu
dGFyZ2V0LnJlc3VsdDsKKyAgICAgICAgICAgIHNob3VsZEJlKCJyZXRyaWV2ZWRLZXkudHlwZSIs
ICIncHJpdmF0ZSciKTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJyZXRyaWV2ZWRLZXkuZXh0cmFj
dGFibGUiLCAiZmFsc2UiKTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJyZXRyaWV2ZWRLZXkuYWxn
b3JpdGhtLm5hbWUiLCAiJ1JTQVNTQS1QS0NTMS12MV81JyIpOworICAgICAgICAgICAgc2hvdWxk
QmUoInJldHJpZXZlZEtleS5hbGdvcml0aG0ubW9kdWx1c0xlbmd0aCIsICIyMDQ4Iik7CisgICAg
ICAgICAgICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmluZyhyZXRyaWV2ZWRLZXkuYWxnb3JpdGht
LnB1YmxpY0V4cG9uZW50KSIsICInMDEwMDAxJyIpOworICAgICAgICAgICAgc2hvdWxkQmUoInJl
dHJpZXZlZEtleS5hbGdvcml0aG0uaGFzaC5uYW1lIiwgIidTSEEtMjU2JyIpOworICAgICAgICAg
ICAgc2hvdWxkQmUoInJldHJpZXZlZEtleS51c2FnZXMiLCAnWyJzaWduIl0nKTsKKworICAgICAg
ICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgICAgIH0KKyAgICB9Cit9KTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcmVzb3VyY2VzL3JzYS1pbmRleGVkZGIuanMgYi9M
YXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jlc291cmNlcy9yc2EtaW5kZXhlZGRiLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjY3MWZmODcyYzUwN2I4Mjg4MWMyYWQ4YzZlODE2NWFhNDQwMDM2ZGEKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jlc291cmNlcy9yc2EtaW5kZXhl
ZGRiLmpzCkBAIC0wLDAgKzEsNjIgQEAKK2Rlc2NyaXB0aW9uKCJUZXN0IHN0b3JpbmcgYSBwcml2
YXRlIFJTQSBrZXkgaW4gSW5kZXhlZERCLCBhbmQgcmV0cmlldmluZyBpdC4iKTsKKworanNUZXN0
SXNBc3luYyA9IHRydWU7CisKK3ZhciBwcml2YXRlS2V5SlNPTiA9IHsKKyAgICBrdHk6ICJSU0Ei
LAorICAgIGFsZzogIlJTMjU2IiwKKyAgICBuOiAicmNDVUN2N09jMUhWYW0xREloQ3pxa25UaFdh
d09wOFFMazhaaXkycDEwQnlqUUZDYWpvRml5dUFXbC1SMVdYWmFmNHhpdExScmFjVDlhZ3B6SXpj
LU1iTFNISUdnV1FHTzIxbEdpSW15NWZ0Wi1EOGJIQXFSejJ5MTVwekQ0YzRDRW91N1hTU0xEb1Ju
UjBRRzVNc0RoRDZzMmdWOW13SGtydGtDeHRNV2RCaS03N2FzOHdHbWxOUmxkY09TZ1pETEs4VW5D
U2dBMU9ndVo5ODliRnljOHRPT0VJYjB4VVNmUFN6M0xQU0NueVl6NjhhRGptS1ZlTkgtaWc4NTdP
U2N5V2JHeUV5M0JpdzY0cXVuM2p1VWxOV3NKM3puZ2tPZHRlWVd5dHg1UXI0WEtOczZSLU15eXE3
MktVcDAybUpEWmlpeWlnbHhNTF9pMy1fQ2VlY0N3IiwKKyAgICBlOiAiQVFBQiIsCisgICAgZDog
ImVOTFMzN2FDejdSWFNOUERfRHRMQko2ajVUOGNTeGR6UkJDalBhSTZXY0dxSnAxNmxxM1VUd3Vv
RExBcWxBOW9HWW0yMzhkc0lXcHV1Y1BfbFF0YldlLTdTcHhvSTZfdm1ZR2Y3WVZVSHYxLURGOXFp
T21Tck1tZHhNblZPellYWThSYVQ2dGhQam5fSjVjZkxWMnhJX0x3c3JNdG1wZFN5TmxnWDB6VFVo
d3R1YWhnQUtNRUNoWWpIMkVuakhkSHc2c1kyLXdBcGRjUUk3VUxFMG9vNVJ6YlFacG11aGNOOWhp
QmMwTDNoaEYwcW81MG1ibDAyXzY1X0dRN0RwVmtYQnhOZ1JCTHpsUGFibXp6RzJvQWhmZWZMZ1lt
U0Mxb3BhQ2tYRTZ2UldRTldOTDQ1UlpOWkZZTTN1b0pnaE9NcUdlb2NNMEJwamRDaEhyUE9sRnZT
USIsCisgICAgcDogIjRtaVR1QWpLTWVINXVKNUtCMzk3UVV3aGJrWUVnU2JjQTJtaWZtU2t2RTIw
MThnYjU1cWtCSEsxZVZyeWYxX200M0xObGM2T19hazZnZnpkWkladlM1TkNHalBsMHEwOXBsVXB1
OHFGT1NzcEJ3QTY3cUdINzZsRmxaTG5fZDR5Z2xTN3dmTHJ1NF81WXM4cUxMcy1EcVZMdml3cG9z
T255eVdxd001QVhwMCIsCisgICAgcTogInhIWXJ6a2l2dG1uel9zR2NobldHYzBxLXBET2tLaWNw
dFJwdjJwTUZJSVh4bkZYNWFNZUVYSVpqVnVqWHR3VXkxVWxGSU4yR1pKU3Z5NUtKNzltdV9YeU5u
RkhNemVkSC1BM2VlM3U4aDFVVXJaRi12VXUxX2U0VV94NjdOTjFkZWR6VVNLeW5ON3BGbDNPa3VT
aE1CV0dWLWN3ek9QZGNWQWZWdVpseFVNYyIsCisgICAgZHA6ICJmQnpEellEVUJtQlFHb3A3SG4w
ZHZmX1QyN1Y2UnFwY3RXbzA3NENRWmNGYlAyYXRGVnRLU2ozdmlXVDN4aWQyVkh6Y2dpREhkZnBN
M25FVmxFTzF3d0lvbkdDU3ZkakdFT1ppaUZWT2pyWkFPVnhBOGd1T2p5eUZ2cWJYa2UwNlZ3UElJ
VnZmS2VTVTJ6dWhiUF9fMXR0NkZfZnhvdzRLYjJ4b25HVDBHR2siLAorICAgIGRxOiAiam1FMkRp
SVBkaHdEZ0xYQVFwSWFCcVE4MWJPM1hmVlRfTFJVTEF3d3d3bFB1UVYxNDhIMDR6bGg5VEo2WTJH
WkhZb2tWMVUwZU9CcEp4ZmtiN2RMWXRwSnB1aUJqUmY0eUlVRW9HbGtrSV9RbEpuRlNGci1ZakdS
ZGZOSHFXQmt4bFNNWkw3NzBSOW1JQVRuZEdrSDd6NXgtcjlLd0JaRkM0RkNHMmhnX3pFIiwKKyAg
ICBxaTogIllDWF9wTHdiTUJBMVRoVkgwV2N3bW55dHFOY3JNQ0V3VG03QnlBMmVVNm5XYlFyVUx2
ZjdtOV9remZMVWNqc25wQVZsQlFHNUpNWE15MFNxNHB0d2J5d3NhNS1HOEtBT09PUjJMM3Y0aEMt
RXlzOWZ0Z0ZNXzNpMG80MGVlUUg0YjNoYVBibnRySWVNZzhJemxPdVZZS2Y5LTJRdUtEb1dlUmRk
N05zZHhUayIKK307CisKK2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBwcml2YXRlS2V5
SlNPTiwgeyBuYW1lOiAnUlNBU1NBLVBLQ1MxLXYxXzUnLCBoYXNoOiAic2hhLTI1NiIgfSwgdHJ1
ZSwgWyJzaWduIl0pLnRoZW4oZnVuY3Rpb24oa2V5KSB7CisgICAgdmFyIG9wZW5SZXF1ZXN0ID0g
aW5kZXhlZERCLm9wZW4oImNyeXB0b19zdWJ0bGUiKTsKKyAgICBvcGVuUmVxdWVzdC5vbnVwZ3Jh
ZGVuZWVkZWQgPSBmdW5jdGlvbihldmVudCkgeworICAgICAgICB2YXIgb2JqZWN0U3RvcmUgPSBl
dmVudC50YXJnZXQucmVzdWx0LmNyZWF0ZU9iamVjdFN0b3JlKCJyc2EtaW5kZXhlZGRiIik7Cisg
ICAgfQorICAgIG9wZW5SZXF1ZXN0Lm9uZXJyb3IgPSBmdW5jdGlvbihldmVudCkgeworICAgICAg
ICB0ZXN0RmFpbGVkKCJDb3VsZCBub3Qgb3BlbiBkYXRhYmFzZTogIiArIGV2ZW50LnRhcmdldC5l
cnJvci5uYW1lKTsKKyAgICAgICAgZmluaXNoSlNUZXN0KCk7CisgICAgfQorICAgIG9wZW5SZXF1
ZXN0Lm9uc3VjY2VzcyA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIGRiID0gZXZlbnQudGFy
Z2V0LnJlc3VsdDsKKyAgICAgICAgc3RvcmVLZXkoKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBz
dG9yZUtleSgpIHsKKyAgICAgICAgdmFyIG9iamVjdFN0b3JlID0gZGIudHJhbnNhY3Rpb24oInJz
YS1pbmRleGVkZGIiLCAicmVhZHdyaXRlIikub2JqZWN0U3RvcmUoInJzYS1pbmRleGVkZGIiKTsK
KyAgICAgICAgdmFyIHJlcSA9IG9iamVjdFN0b3JlLnB1dChrZXksICJteWtleSIpOworICAgICAg
ICByZXEub25lcnJvciA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgICAgICB0ZXN0RmFpbGVk
KCJDb3VsZCBub3QgcHV0IGEga2V5IGludG8gZGF0YWJhc2U6ICIgKyBldmVudC50YXJnZXQuZXJy
b3IubmFtZSk7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICAg
ICByZXEub25zdWNjZXNzID0gZnVuY3Rpb24oZXZlbnQpIHsgcmVhZEtleSgpOyB9CisgICAgfQor
CisgICAgZnVuY3Rpb24gcmVhZEtleSgpIHsKKyAgICAgICAgdmFyIG9iamVjdFN0b3JlID0gZGIu
dHJhbnNhY3Rpb24oInJzYS1pbmRleGVkZGIiKS5vYmplY3RTdG9yZSgicnNhLWluZGV4ZWRkYiIp
OworICAgICAgICB2YXIgcmVxID0gb2JqZWN0U3RvcmUuZ2V0KCJteWtleSIpOworICAgICAgICBy
ZXEub25lcnJvciA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgICAgICB0ZXN0RmFpbGVkKCJD
b3VsZCBub3QgZ2V0IGEga2V5IGZyb20gZGF0YWJhc2U6ICIgKyBldmVudC50YXJnZXQuZXJyb3Iu
bmFtZSk7CisgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgfQorICAgICAgICBy
ZXEub25zdWNjZXNzID0gZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgICAgIHdpbmRvdy5yZXRy
aWV2ZWRLZXkgPSBldmVudC50YXJnZXQucmVzdWx0OworICAgICAgICAgICAgc2hvdWxkQmUoInJl
dHJpZXZlZEtleS50eXBlIiwgIidwcml2YXRlJyIpOworICAgICAgICAgICAgc2hvdWxkQmUoInJl
dHJpZXZlZEtleS5leHRyYWN0YWJsZSIsICJ0cnVlIik7CisgICAgICAgICAgICBzaG91bGRCZSgi
cmV0cmlldmVkS2V5LmFsZ29yaXRobS5uYW1lIiwgIidSU0FTU0EtUEtDUzEtdjFfNSciKTsKKyAg
ICAgICAgICAgIHNob3VsZEJlKCJyZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLm1vZHVsdXNMZW5ndGgi
LCAiMjA0OCIpOworICAgICAgICAgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcocmV0cmll
dmVkS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBvbmVudCkiLCAiJzAxMDAwMSciKTsKKyAgICAgICAg
ICAgIHNob3VsZEJlKCJyZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLmhhc2gubmFtZSIsICInU0hBLTI1
NiciKTsKKyAgICAgICAgICAgIHNob3VsZEJlKCJyZXRyaWV2ZWRLZXkudXNhZ2VzIiwgJ1sic2ln
biJdJyk7CisKKyAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgICAgICB9CisgICAgfQor
fSwgZmFpbEFuZEZpbmlzaEpTVGVzdCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jcnlwdG8v
c3VidGxlL3JzYS1pbmRleGVkZGItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1
YnRsZS9yc2EtaW5kZXhlZGRiLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mMzg5OTYwNjNlMTZi
OWZmYzhlYTU3NjBkOGNjODE1MDViNjEyMjk4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE2
IEBACitUZXN0IHN0b3JpbmcgYSBwcml2YXRlIFJTQSBrZXkgaW4gSW5kZXhlZERCLCBhbmQgcmV0
cmlldmluZyBpdC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgcmV0cmll
dmVkS2V5LnR5cGUgaXMgJ3ByaXZhdGUnCitQQVNTIHJldHJpZXZlZEtleS5leHRyYWN0YWJsZSBp
cyB0cnVlCitQQVNTIHJldHJpZXZlZEtleS5hbGdvcml0aG0ubmFtZSBpcyAnUlNBU1NBLVBLQ1Mx
LXYxXzUnCitQQVNTIHJldHJpZXZlZEtleS5hbGdvcml0aG0ubW9kdWx1c0xlbmd0aCBpcyAyMDQ4
CitQQVNTIGJ5dGVzVG9IZXhTdHJpbmcocmV0cmlldmVkS2V5LmFsZ29yaXRobS5wdWJsaWNFeHBv
bmVudCkgaXMgJzAxMDAwMScKK1BBU1MgcmV0cmlldmVkS2V5LmFsZ29yaXRobS5oYXNoLm5hbWUg
aXMgJ1NIQS0yNTYnCitQQVNTIHJldHJpZXZlZEtleS51c2FnZXMgaXMgWyJzaWduIl0KK1BBU1Mg
c3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5v
bi1leHBvcnRhYmxlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43YzkwYmRiOTEyNGQ2MDA2MjBh
ZmM1YzM4MzBiOTBlMmE3ODEzMTIwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3J5
cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDE2IEBACitUZXN0IHN0b3JpbmcgYSBwcml2YXRlIFJTQSBrZXkgaW4gSW5kZXhlZERC
LCBhbmQgcmV0cmlldmluZyBpdC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BB
U1MgcmV0cmlldmVkS2V5LnR5cGUgaXMgJ3ByaXZhdGUnCitQQVNTIHJldHJpZXZlZEtleS5leHRy
YWN0YWJsZSBpcyBmYWxzZQorUEFTUyByZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLm5hbWUgaXMgJ1JT
QVNTQS1QS0NTMS12MV81JworUEFTUyByZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLm1vZHVsdXNMZW5n
dGggaXMgMjA0OAorUEFTUyBieXRlc1RvSGV4U3RyaW5nKHJldHJpZXZlZEtleS5hbGdvcml0aG0u
cHVibGljRXhwb25lbnQpIGlzICcwMTAwMDEnCitQQVNTIHJldHJpZXZlZEtleS5hbGdvcml0aG0u
aGFzaC5uYW1lIGlzICdTSEEtMjU2JworUEFTUyByZXRyaWV2ZWRLZXkudXNhZ2VzIGlzIFsic2ln
biJdCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1l
eHBvcnRhYmxlLXByaXZhdGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRs
ZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLXByaXZhdGUtZXhwZWN0ZWQudHh0Cm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLjdjOTBiZGI5MTI0ZDYwMDYyMGFmYzVjMzgzMGI5MGUyYTc4MTMxMjAKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4
cG9ydGFibGUtcHJpdmF0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNiBAQAorVGVzdCBzdG9y
aW5nIGEgcHJpdmF0ZSBSU0Ega2V5IGluIEluZGV4ZWREQiwgYW5kIHJldHJpZXZpbmcgaXQuCisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHJldHJpZXZlZEtleS50eXBlIGlz
ICdwcml2YXRlJworUEFTUyByZXRyaWV2ZWRLZXkuZXh0cmFjdGFibGUgaXMgZmFsc2UKK1BBU1Mg
cmV0cmlldmVkS2V5LmFsZ29yaXRobS5uYW1lIGlzICdSU0FTU0EtUEtDUzEtdjFfNScKK1BBU1Mg
cmV0cmlldmVkS2V5LmFsZ29yaXRobS5tb2R1bHVzTGVuZ3RoIGlzIDIwNDgKK1BBU1MgYnl0ZXNU
b0hleFN0cmluZyhyZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLnB1YmxpY0V4cG9uZW50KSBpcyAnMDEw
MDAxJworUEFTUyByZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLmhhc2gubmFtZSBpcyAnU0hBLTI1NicK
K1BBU1MgcmV0cmlldmVkS2V5LnVzYWdlcyBpcyBbInNpZ24iXQorUEFTUyBzdWNjZXNzZnVsbHlQ
YXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1ub24tZXhwb3J0YWJsZS1wcml2YXRlLmh0bWwg
Yi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUt
cHJpdmF0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1MWExNDA2MTFkNWMwZjUyMjJlNjY2OWZmN2RkMjFh
YzdjMDU4YWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3Jz
YS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUtcHJpdmF0ZS5odG1sCkBAIC0wLDAgKzEsMTQgQEAK
KzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CitlbmFibGVQcml2YXRl
QnJvd3NpbmcgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvY29t
bW9uLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdCBzcmM9InJlc291cmNl
cy9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRk
Yi1ub24tZXhwb3J0YWJsZS5odG1sIGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2EtaW5k
ZXhlZGRiLW5vbi1leHBvcnRhYmxlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzNlNmFhNzU3NDExZmNlZTcy
MmQ1OWI5ODNlZmM5N2I3YTFiNjdhMAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Ny
eXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1ub24tZXhwb3J0YWJsZS5odG1sCkBAIC0wLDAgKzEs
MTEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jl
c291cmNlcy9jb21tb24uanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL3JzYS1pbmRleGVkZGItbm9uLWV4cG9ydGFibGUuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0Pgor
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9y
c2EtaW5kZXhlZGRiLXByaXZhdGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1
YnRsZS9yc2EtaW5kZXhlZGRiLXByaXZhdGUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYzODk5
NjA2M2UxNmI5ZmZjOGVhNTc2MGQ4Y2M4MTUwNWI2MTIyOTgKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1pbmRleGVkZGItcHJpdmF0ZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwxNiBAQAorVGVzdCBzdG9yaW5nIGEgcHJpdmF0ZSBSU0Ega2V5IGluIElu
ZGV4ZWREQiwgYW5kIHJldHJpZXZpbmcgaXQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTIHJldHJpZXZlZEtleS50eXBlIGlzICdwcml2YXRlJworUEFTUyByZXRyaWV2ZWRL
ZXkuZXh0cmFjdGFibGUgaXMgdHJ1ZQorUEFTUyByZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLm5hbWUg
aXMgJ1JTQVNTQS1QS0NTMS12MV81JworUEFTUyByZXRyaWV2ZWRLZXkuYWxnb3JpdGhtLm1vZHVs
dXNMZW5ndGggaXMgMjA0OAorUEFTUyBieXRlc1RvSGV4U3RyaW5nKHJldHJpZXZlZEtleS5hbGdv
cml0aG0ucHVibGljRXhwb25lbnQpIGlzICcwMTAwMDEnCitQQVNTIHJldHJpZXZlZEtleS5hbGdv
cml0aG0uaGFzaC5uYW1lIGlzICdTSEEtMjU2JworUEFTUyByZXRyaWV2ZWRLZXkudXNhZ2VzIGlz
IFsic2lnbiJdCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRi
LXByaXZhdGUuaHRtbCBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi1w
cml2YXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjFlZTYwNWNiMWZmMTdhZGQ3MmRmYTMxZmY0YzU2Zjcw
ZWI4YTI3OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNh
LWluZGV4ZWRkYi1wcml2YXRlLmh0bWwKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2VuYWJsZVByaXZhdGVCcm93c2luZyA9IHRydWU7
Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9jb21tb24uanMiPjwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3JzYS1pbmRleGVkZGIu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3J5cHRvL3N1YnRsZS9yc2EtaW5kZXhlZGRiLmh0bWwgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3Vi
dGxlL3JzYS1pbmRleGVkZGIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNTRlMWRkMzEzMzI3MmUxN2RjZTE2
ZDE4N2Q1ODllYjIzNDQ2MWQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3J5cHRv
L3N1YnRsZS9yc2EtaW5kZXhlZGRiLmh0bWwKQEAgLTAsMCArMSwxMSBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2NvbW1vbi5qcyI+
PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvcnNhLWlu
ZGV4ZWRkYi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYS1vYWVwLXBsYWludGV4dC1sZW5ndGgtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1wbGFpbnRleHQtbGVuZ3Ro
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42Y2I2Y2E0NTg3NDc2MTdlMzA0YmUxOWFjM2Q1MTg2
OGQ0MjcxZGY3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9y
c2Etb2FlcC1wbGFpbnRleHQtbGVuZ3RoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitU
ZXN0IHdoYXQgaGFwcGVucyB3aGVuIHRyeWluZyB0byBlbmNyeXB0IGEgdG9vIGxhcmdlIHBsYWlu
IHRleHQgd2l0aCBSU0EtT0FFUC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVz
IG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK0lt
cG9ydGluZyBSU0Ega2V5cy4uLgorRW5jcnlwdGluZyBhIDIxNCBieXRlIGJ1ZmZlciB3aXRoIFJT
QS1PQUVQIFNIQS0xLCAyMDQ4IGJpdCBrZXkuLi4KK1BBU1MgU3VjY2VlZGVkCitFbmNyeXB0aW5n
IGEgMjE1IGJ5dGUgYnVmZmVyLi4uCitQQVNTIFJlamVjdGVkCitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Y3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1wbGFpbnRleHQtbGVuZ3RoLmh0bWwgYi9MYXlvdXRUZXN0
cy9jcnlwdG8vc3VidGxlL3JzYS1vYWVwLXBsYWludGV4dC1sZW5ndGguaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li41MDBhNWEyMTQwMjM4ZWQ1ZjM1ZTZlOTVjMzhkNmJlOTJlMDdlYTZjCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Etb2FlcC1wbGFpbnRleHQtbGVuZ3Ro
Lmh0bWwKQEAgLTAsMCArMSw0NiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2NvbW1vbi5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8
Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+
CisKKzxzY3JpcHQ+CitkZXNjcmlwdGlvbigiVGVzdCB3aGF0IGhhcHBlbnMgd2hlbiB0cnlpbmcg
dG8gZW5jcnlwdCBhIHRvbyBsYXJnZSBwbGFpbiB0ZXh0IHdpdGggUlNBLU9BRVAuIik7CisKK2pz
VGVzdElzQXN5bmMgPSB0cnVlOworCit2YXIgcHVibGljS2V5SlNPTiA9IHsKKyAgICBrdHk6ICJS
U0EiLAorICAgIGFsZzogIlJTQS1PQUVQIiwKKyAgICBuOiAicmNDVUN2N09jMUhWYW0xREloQ3px
a25UaFdhd09wOFFMazhaaXkycDEwQnlqUUZDYWpvRml5dUFXbC1SMVdYWmFmNHhpdExScmFjVDlh
Z3B6SXpjLU1iTFNISUdnV1FHTzIxbEdpSW15NWZ0Wi1EOGJIQXFSejJ5MTVwekQ0YzRDRW91N1hT
U0xEb1JuUjBRRzVNc0RoRDZzMmdWOW13SGtydGtDeHRNV2RCaS03N2FzOHdHbWxOUmxkY09TZ1pE
TEs4VW5DU2dBMU9ndVo5ODliRnljOHRPT0VJYjB4VVNmUFN6M0xQU0NueVl6NjhhRGptS1ZlTkgt
aWc4NTdPU2N5V2JHeUV5M0JpdzY0cXVuM2p1VWxOV3NKM3puZ2tPZHRlWVd5dHg1UXI0WEtOczZS
LU15eXE3MktVcDAybUpEWmlpeWlnbHhNTF9pMy1fQ2VlY0N3IiwKKyAgICBlOiAiQVFBQiIKK307
CisKK3ZhciBleHRyYWN0YWJsZSA9IHRydWU7CisKK2RlYnVnKCJJbXBvcnRpbmcgUlNBIGtleXMu
Li4iKTsKK2NyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KCJqd2siLCBwdWJsaWNLZXlKU09OLCB7bmFt
ZTogIlJTQS1PQUVQIiwgaGFzaDogInNoYS0xIn0sIGV4dHJhY3RhYmxlLCBbImVuY3J5cHQiXSku
dGhlbihmdW5jdGlvbihyZXN1bHQpIHsKKyAgICBwdWJsaWNLZXkgPSByZXN1bHQ7CisKKyAgICBk
ZWJ1ZygiRW5jcnlwdGluZyBhIDIxNCBieXRlIGJ1ZmZlciB3aXRoIFJTQS1PQUVQIFNIQS0xLCAy
MDQ4IGJpdCBrZXkuLi4iKTsKKyAgICByZXR1cm4gY3J5cHRvLnN1YnRsZS5lbmNyeXB0KCJSU0Et
T0FFUCIsIHB1YmxpY0tleSwgbmV3IFVpbnQ4QXJyYXkoMjE0KSk7Cit9KS50aGVuKGZ1bmN0aW9u
KHJlc3VsdCkgeworICAgIHRlc3RQYXNzZWQoIlN1Y2NlZWRlZCIpOworICAgIGRlYnVnKCJFbmNy
eXB0aW5nIGEgMjE1IGJ5dGUgYnVmZmVyLi4uIik7CisgICAgcmV0dXJuIGNyeXB0by5zdWJ0bGUu
ZW5jcnlwdCgiUlNBLU9BRVAiLCBwdWJsaWNLZXksIG5ldyBVaW50OEFycmF5KDIxNSkpOworfSku
dGhlbihmdW5jdGlvbihyZXN1bHQpIHsKKyAgICB0ZXN0RmFpbGVkKCJTdWNjZWVkZWQiKTsKKyAg
ICBmaW5pc2hKU1Rlc3QoKTsKK30sIGZ1bmN0aW9uKHJlc3VsdCkgeworICAgIHRlc3RQYXNzZWQo
IlJlamVjdGVkIik7CisgICAgZmluaXNoSlNUZXN0KCk7Cit9KTsKKzwvc2NyaXB0PgorCis8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYXNz
YS1wa2NzMS12MV81LWdlbmVyYXRlLWtleS13aXRoLWxlYWRpbmctemVyb2VzLWluLWV4cG9uZW50
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NyeXB0by9zdWJ0bGUvcnNhc3NhLXBrY3MxLXYx
XzUtZ2VuZXJhdGUta2V5LXdpdGgtbGVhZGluZy16ZXJvZXMtaW4tZXhwb25lbnQtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmY2MGMyM2VlYWJmNWQ0Nzk1MTczN2UzMTgxMTQ0NWRhMDQ1OGQ3YTIK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2Nz
MS12MV81LWdlbmVyYXRlLWtleS13aXRoLWxlYWRpbmctemVyb2VzLWluLWV4cG9uZW50LWV4cGVj
dGVkLnR4dApAQCAtMCwwICsxLDE3IEBACitUZXN0IGdlbmVyYXRpbmcgYW4gUlNBIGtleSBwYWly
IGZvciBSU0FTU0EtUEtDUzEtdjFfNSB3aGVuIGV4cG9uZW50IGhhcyBsZWFkaW5nIHplcm9lcy4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK0dlbmVyYXRpbmcgYSBrZXkgcGFpci4u
LgorUEFTUyBrZXlQYWlyLnRvU3RyaW5nKCkgaXMgJ1tvYmplY3QgT2JqZWN0XScKK1BBU1Mga2V5
UGFpci5wdWJsaWNLZXkudHlwZSBpcyAncHVibGljJworUEFTUyBrZXlQYWlyLnB1YmxpY0tleS5h
bGdvcml0aG0ubmFtZSBpcyAnUlNBU1NBLVBLQ1MxLXYxXzUnCitQQVNTIGtleVBhaXIucHVibGlj
S2V5LmFsZ29yaXRobS5tb2R1bHVzTGVuZ3RoIGlzIDIwNDgKK1BBU1Mga2V5UGFpci5wdWJsaWNL
ZXkuYWxnb3JpdGhtLmhhc2gubmFtZSBpcyAnU0hBLTEnCitQQVNTIGJ5dGVzVG9IZXhTdHJpbmco
a2V5UGFpci5wdWJsaWNLZXkuYWxnb3JpdGhtLnB1YmxpY0V4cG9uZW50KSBpcyAnMDEwMDAxJwor
UEFTUyBieXRlc1RvSGV4U3RyaW5nKGtleVBhaXIucHJpdmF0ZUtleS5hbGdvcml0aG0ucHVibGlj
RXhwb25lbnQpIGlzICcwMTAwMDEnCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9y
c2Fzc2EtcGtjczEtdjFfNS1nZW5lcmF0ZS1rZXktd2l0aC1sZWFkaW5nLXplcm9lcy1pbi1leHBv
bmVudC5odG1sIGIvTGF5b3V0VGVzdHMvY3J5cHRvL3N1YnRsZS9yc2Fzc2EtcGtjczEtdjFfNS1n
ZW5lcmF0ZS1rZXktd2l0aC1sZWFkaW5nLXplcm9lcy1pbi1leHBvbmVudC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmU2NTk2YjlmZGJjZTJjYWMyM2UzMjI4M2NhOTEwYTE1ZjIzZDc1OTAKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9jcnlwdG8vc3VidGxlL3JzYXNzYS1wa2NzMS12MV81LWdlbmVy
YXRlLWtleS13aXRoLWxlYWRpbmctemVyb2VzLWluLWV4cG9uZW50Lmh0bWwKQEAgLTAsMCArMSw0
MiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uLy4u
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVz
b3VyY2VzL2NvbW1vbi5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNj
cmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+CitkZXNj
cmlwdGlvbigiVGVzdCBnZW5lcmF0aW5nIGFuIFJTQSBrZXkgcGFpciBmb3IgUlNBU1NBLVBLQ1Mx
LXYxXzUgd2hlbiBleHBvbmVudCBoYXMgbGVhZGluZyB6ZXJvZXMuIik7CisKK2pzVGVzdElzQXN5
bmMgPSB0cnVlOworCit2YXIgYWxnb3JpdGhtS2V5R2VuID0geworICAgIG5hbWU6ICJSU0FTU0Et
UEtDUzEtdjFfNSIsCisgICAgLy8gUnNhS2V5R2VuUGFyYW1zCisgICAgbW9kdWx1c0xlbmd0aDog
MjA0OCwKKyAgICBwdWJsaWNFeHBvbmVudDogbmV3IFVpbnQ4QXJyYXkoWzB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDFdKSwgIC8vIEVxdWl2YWxlbnQgdG8gNjU1
MzcKKyAgICBoYXNoOiAic2hhLTEiLAorfTsKK3ZhciBleHRyYWN0YWJsZSA9IHRydWU7CisKK2Rl
YnVnKCJHZW5lcmF0aW5nIGEga2V5IHBhaXIuLi4iKTsKK2NyeXB0by53ZWJraXRTdWJ0bGUuZ2Vu
ZXJhdGVLZXkoYWxnb3JpdGhtS2V5R2VuLCBleHRyYWN0YWJsZSwgWyJzaWduIiwgInZlcmlmeSJd
KS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgeworICAgIGtleVBhaXIgPSByZXN1bHQ7CisgICAgc2hv
dWxkQmUoImtleVBhaXIudG9TdHJpbmcoKSIsICInW29iamVjdCBPYmplY3RdJyIpOworICAgIHNo
b3VsZEJlKCJrZXlQYWlyLnB1YmxpY0tleS50eXBlIiwgIidwdWJsaWMnIik7CisgICAgc2hvdWxk
QmUoImtleVBhaXIucHVibGljS2V5LmFsZ29yaXRobS5uYW1lIiwgIidSU0FTU0EtUEtDUzEtdjFf
NSciKTsKKyAgICBzaG91bGRCZSgia2V5UGFpci5wdWJsaWNLZXkuYWxnb3JpdGhtLm1vZHVsdXNM
ZW5ndGgiLCAiMjA0OCIpOworICAgIHNob3VsZEJlKCJrZXlQYWlyLnB1YmxpY0tleS5hbGdvcml0
aG0uaGFzaC5uYW1lIiwgIidTSEEtMSciKTsKKyAgICBzaG91bGRCZSgiYnl0ZXNUb0hleFN0cmlu
ZyhrZXlQYWlyLnB1YmxpY0tleS5hbGdvcml0aG0ucHVibGljRXhwb25lbnQpIiwgIicwMTAwMDEn
Iik7CisgICAgc2hvdWxkQmUoImJ5dGVzVG9IZXhTdHJpbmcoa2V5UGFpci5wcml2YXRlS2V5LmFs
Z29yaXRobS5wdWJsaWNFeHBvbmVudCkiLCAiJzAxMDAwMSciKTsKKworICAgIGZpbmlzaEpTVGVz
dCgpOworfSk7Cis8L3NjcmlwdD4KKworPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy9qcy10
ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1YnRsZS9jcnlwdG8ta2V5LWFsZ29yaXRobS1nYy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0by1rZXktYWxn
b3JpdGhtLWdjLWV4cGVjdGVkLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzdk
MTc2NjkyY2RlMzRmNWMwNjZjOTFmYjc1YWFkNWI0NDAxY2EyYy4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3Vi
dGxlL2NyeXB0by1rZXktYWxnb3JpdGhtLWdjLWV4cGVjdGVkLnR4dAorKysgL2Rldi9udWxsCkBA
IC0xLDEzICswLDAgQEAKLVRlc3QgdGhhdCBDcnlwdG9LZXkuYWxnb3JpdGhtIHByZXNlcnZlcyBj
dXN0b20gcHJvcGVydGllcy4KLQotT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9m
ICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgotCi0KLQotR2Vu
ZXJhdGluZyBhIEhNQUMga2V5IHdpdGggZGVmYXVsdCBsZW5ndGguLi4KLVBBU1Mga2V5LmFsZ29y
aXRobSA9PT0ga2V5LmFsZ29yaXRobSBpcyB0cnVlCi1QQVNTIGtleS5hbGdvcml0aG0uZm9vIGlz
ICJiYXIiCi1QQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCi0KLVRFU1QgQ09NUExFVEUK
LQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1YnRsZS9jcnlwdG8ta2V5
LWFsZ29yaXRobS1nYy5odG1sIGIvTGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1YnRsZS9jcnlw
dG8ta2V5LWFsZ29yaXRobS1nYy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
ZTRkYmMyZjZkZjdmMmRmZmNlYTIxZWYzN2I1M2Y4YmFlMWVhZDhhLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL0xheW91dFRlc3RzL2NyeXB0by93ZWJraXRT
dWJ0bGUvY3J5cHRvLWtleS1hbGdvcml0aG0tZ2MuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ0
ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sPgotPGh0bWw+Ci08aGVhZD4KLTxtZXRhIGNoYXJzZXQ9
InV0Zi04Ij4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgotPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9jb21tb24uanMiPjwvc2NyaXB0Pgot
PC9oZWFkPgotPGJvZHk+Ci08c2NyaXB0PgotCi1kZXNjcmlwdGlvbigiVGVzdCB0aGF0IENyeXB0
b0tleS5hbGdvcml0aG0gcHJlc2VydmVzIGN1c3RvbSBwcm9wZXJ0aWVzLiIpOwotanNUZXN0SXNB
c3luYyA9IHRydWU7Ci0KLWRlYnVnKCJcbkdlbmVyYXRpbmcgYSBITUFDIGtleSB3aXRoIGRlZmF1
bHQgbGVuZ3RoLi4uIik7Ci1jcnlwdG8ud2Via2l0U3VidGxlLmdlbmVyYXRlS2V5KHtuYW1lOiAi
aG1hYyIsIGhhc2g6ICJzaGEtMSJ9LCB0cnVlLCBbInNpZ24iLCAidmVyaWZ5Il0pLnRoZW4oZnVu
Y3Rpb24ocmVzdWx0KSB7Ci0gICAga2V5ID0gcmVzdWx0OwotICAgIHN0YXJ0VGVzdCgpOwotfSk7
Ci0KLWZ1bmN0aW9uIHN0YXJ0VGVzdCgpCi17Ci0gICAgc2hvdWxkQmVUcnVlKCJrZXkuYWxnb3Jp
dGhtID09PSBrZXkuYWxnb3JpdGhtIik7Ci0gICAga2V5LmFsZ29yaXRobS5mb28gPSAiYmFyIjsK
LSAgICBnYygpOwotICAgIHNldFRpbWVvdXQoY29udGludWVUZXN0LCAxMCk7Ci19Ci0KLWZ1bmN0
aW9uIGNvbnRpbnVlVGVzdCgpCi17Ci0gICAgZ2MoKTsKLSAgICBzZXRUaW1lb3V0KGZpbmlzaFRl
c3QsIDEwKTsKLX0KLQotZnVuY3Rpb24gZmluaXNoVGVzdCgpCi17Ci0gICAgZ2MoKTsKLSAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoJ2tleS5hbGdvcml0aG0uZm9vJywgJ2JhcicpOwotICAgIGZp
bmlzaEpTVGVzdCgpOwotfQotCi08L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIuLi8uLi9yZXNvdXJj
ZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2NyeXB0by93ZWJraXRTdWJ0bGUvY3J5cHRvLWtleS11c2FnZXMtZ2Mt
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1YnRsZS9jcnlwdG8ta2V5
LXVzYWdlcy1nYy1leHBlY3RlZC50eHQKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGVk
MTU1ZjA3NGM3NjdiMjUzNTk1MzM3MTllM2JjNmRkYmZiMzQ1Y2YuLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvTGF5b3V0VGVzdHMvY3J5cHRvL3dlYmtpdFN1
YnRsZS9jcnlwdG8ta2V5LXVzYWdlcy1nYy1leHBlY3RlZC50eHQKKysrIC9kZXYvbnVsbApAQCAt
MSwxMyArMCwwIEBACi1UZXN0IHRoYXQgQ3J5cHRvS2V5LnVzYWdlcyBwcmVzZXJ2ZXMgY3VzdG9t
IHByb3BlcnRpZXMuCi0KLU9uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KLQotCi0KLUdlbmVyYXRp
bmcgYSBITUFDIGtleSB3aXRoIGRlZmF1bHQgbGVuZ3RoLi4uCi1QQVNTIGtleS51c2FnZXMgPT09
IGtleS51c2FnZXMgaXMgdHJ1ZQotUEFTUyBrZXkudXNhZ2VzLmZvbyBpcyAiYmFyIgotUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQotCi1URVNUIENPTVBMRVRFCi0KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2NyeXB0by93ZWJraXRTdWJ0bGUvY3J5cHRvLWtleS11c2FnZXMtZ2MuaHRt
bCBiL0xheW91dFRlc3RzL2NyeXB0by93ZWJraXRTdWJ0bGUvY3J5cHRvLWtleS11c2FnZXMtZ2Mu
aHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTc4YjY4YzY1ZjBjNThiNmQ3MDI2
Y2Q5YWZiMGYzNTUyODllMjFmZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMAotLS0gYS9MYXlvdXRUZXN0cy9jcnlwdG8vd2Via2l0U3VidGxlL2NyeXB0by1rZXktdXNh
Z2VzLWdjLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw0NCArMCwwIEBACi08IURPQ1RZUEUgaHRt
bD4KLTxodG1sPgotPGhlYWQ+Ci08bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Ci08c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSIu
Li9yZXNvdXJjZXMvY29tbW9uLmpzIj48L3NjcmlwdD4KLTwvaGVhZD4KLTxib2R5PgotPHNjcmlw
dD4KLQotZGVzY3JpcHRpb24oIlRlc3QgdGhhdCBDcnlwdG9LZXkudXNhZ2VzIHByZXNlcnZlcyBj
dXN0b20gcHJvcGVydGllcy4iKTsKLWpzVGVzdElzQXN5bmMgPSB0cnVlOwotCi1kZWJ1ZygiXG5H
ZW5lcmF0aW5nIGEgSE1BQyBrZXkgd2l0aCBkZWZhdWx0IGxlbmd0aC4uLiIpOwotY3J5cHRvLndl
YmtpdFN1YnRsZS5nZW5lcmF0ZUtleSh7bmFtZTogImhtYWMiLCBoYXNoOiAic2hhLTEifSwgdHJ1
ZSwgWyJzaWduIiwgInZlcmlmeSJdKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkgewotICAgIGtleSA9
IHJlc3VsdDsKLSAgICBzdGFydFRlc3QoKTsKLX0pOwotCi1mdW5jdGlvbiBzdGFydFRlc3QoKQot
ewotICAgIHNob3VsZEJlVHJ1ZSgia2V5LnVzYWdlcyA9PT0ga2V5LnVzYWdlcyIpOwotICAgIGtl
eS51c2FnZXMuZm9vID0gImJhciI7Ci0gICAgZ2MoKTsKLSAgICBzZXRUaW1lb3V0KGNvbnRpbnVl
VGVzdCwgMTApOwotfQotCi1mdW5jdGlvbiBjb250aW51ZVRlc3QoKQotewotICAgIGdjKCk7Ci0g
ICAgc2V0VGltZW91dChmaW5pc2hUZXN0LCAxMCk7Ci19Ci0KLWZ1bmN0aW9uIGZpbmlzaFRlc3Qo
KQotewotICAgIGdjKCk7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCdrZXkudXNhZ2VzLmZv
bycsICdiYXInKTsKLSAgICBmaW5pc2hKU1Rlc3QoKTsKLX0KLQotPC9zY3JpcHQ+Ci08c2NyaXB0
IHNyYz0iLi4vLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Ci08L2JvZHk+
Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtc2ltdWxhdG9y
LXdrMS9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXNpbXVsYXRv
ci13azEvVGVzdEV4cGVjdGF0aW9ucwppbmRleCA4OWM1YzVmM2E4NGI1ODhjYjY3Y2ZhMjkzMDgx
YTJhZTY4OWViM2ZkLi42YTEwYmVjOWE1MjJlNjU5NDY0ZDg2ZTNlNjkxNjhhZTEyODJiOGEwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtc2ltdWxhdG9yLXdrMS9UZXN0RXhw
ZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy1zaW11bGF0b3Itd2sxL1Rl
c3RFeHBlY3RhdGlvbnMKQEAgLTEwMjEsNiArMTAyMSwxMCBAQCBjcnlwdG8vd2Via2l0U3VidGxl
L3JzYS1pbmRleGVkZGItcHJpdmF0ZS5odG1sCiBjcnlwdG8vd2Via2l0U3VidGxlL3JzYS1pbmRl
eGVkZGIuaHRtbAogZmFzdC9oaXN0b3J5L3BhZ2UtY2FjaGUtaW5kZXhlZC1jbG9zZWQtZGIuaHRt
bAogZmFzdC9oaXN0b3J5L3BhZ2UtY2FjaGUtaW5kZXhlZC1vcGVuZWQtZGIuaHRtbAorY3J5cHRv
L3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLXByaXZhdGUuaHRtbAorY3J5cHRv
L3N1YnRsZS9yc2EtaW5kZXhlZGRiLW5vbi1leHBvcnRhYmxlLmh0bWwKK2NyeXB0by9zdWJ0bGUv
cnNhLWluZGV4ZWRkYi1wcml2YXRlLmh0bWwKK2NyeXB0by9zdWJ0bGUvcnNhLWluZGV4ZWRkYi5o
dG1sCiAKICMgU2hvdWxkT3BlbkV4dGVybmFsVVJMcyBub3QgeWV0IHN1cHBvcnRlZCBpbiBXSzEK
IGxvYWRlci9uYXZpZ2F0aW9uLXBvbGljeSBbIFNraXAgXQo=
</data>
<flag name="commit-queue"
          id="319318"
          type_id="3"
          status="-"
          setter="jiewen_tan"
    />
          </attachment>
      

    </bug>

</bugzilla>