<?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>50105</bug_id>
          
          <creation_ts>2010-11-26 03:16:20 -0800</creation_ts>
          <short_desc>Make IDBKeyRange match the spec</short_desc>
          <delta_ts>2010-11-26 08:37:34 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>
          <dependson>50093</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Orlow">jorlow</reporter>
          <assigned_to name="Jeremy Orlow">jorlow</assigned_to>
          <cc>andreip</cc>
    
    <cc>hans</cc>
    
    <cc>steveblock</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>313938</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-26 03:16:20 -0800</bug_when>
    <thetext>Remove flags and instead add two booleans for being open.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313939</commentid>
    <comment_count>1</comment_count>
      <attachid>74911</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-26 03:17:49 -0800</bug_when>
    <thetext>Created attachment 74911
almost

needs change log and has one bug in it, but It&apos;s 99% there</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313953</commentid>
    <comment_count>2</comment_count>
      <attachid>74911</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-26 04:27:16 -0800</bug_when>
    <thetext>Comment on attachment 74911
almost

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

&gt; WebCore/inspector/InspectorResourceAgent.cpp:349
&gt; +    //m_frontend-&gt;setInitialContent(identifier, sourceString, type);

What&apos;s this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313954</commentid>
    <comment_count>3</comment_count>
      <attachid>74917</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-26 04:28:50 -0800</bug_when>
    <thetext>Created attachment 74917
done

fixed the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313955</commentid>
    <comment_count>4</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-26 04:29:31 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 74911 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=74911&amp;action=review
&gt; 
&gt; &gt; WebCore/inspector/InspectorResourceAgent.cpp:349
&gt; &gt; +    //m_frontend-&gt;setInitialContent(identifier, sourceString, type);
&gt; 
&gt; What&apos;s this?

Making Chrome build.  It&apos;s now removed (and fixed upstream, so I don&apos;t need it).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313984</commentid>
    <comment_count>5</comment_count>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2010-11-26 05:47:49 -0800</bug_when>
    <thetext>LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>314035</commentid>
    <comment_count>6</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-26 08:37:34 -0800</bug_when>
    <thetext>Committed r72767: &lt;http://trac.webkit.org/changeset/72767&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74911</attachid>
            <date>2010-11-26 03:17:49 -0800</date>
            <delta_ts>2010-11-26 04:28:50 -0800</delta_ts>
            <desc>almost</desc>
            <filename>a</filename>
            <type>text/plain</type>
            <size>43093</size>
            <attacher name="Jeremy Orlow">jorlow</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jb25zdGFudHMtZXhwZWN0
ZWQudHh0CmluZGV4IDAxYjhmYTEuLmVhZDA5MzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
c3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLWV4cGVjdGVkLnR4dApAQCAtMywxMSArMyw2IEBA
IFRlc3QgSW5kZXhlZERCJ3MgY29uc3RhbnRzLgogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEg
c2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgog
CiAKLVBBU1Mgd2Via2l0SURCS2V5UmFuZ2UuU0lOR0xFIGlzIDAKLVBBU1Mgd2Via2l0SURCS2V5
UmFuZ2UuTEVGVF9PUEVOIGlzIDEKLVBBU1Mgd2Via2l0SURCS2V5UmFuZ2UuUklHSFRfT1BFTiBp
cyAyCi1QQVNTIHdlYmtpdElEQktleVJhbmdlLkxFRlRfQk9VTkQgaXMgNAotUEFTUyB3ZWJraXRJ
REJLZXlSYW5nZS5SSUdIVF9CT1VORCBpcyA4CiBQQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0
aW9uLlVOS05PV05fRVJSIGlzIDEKIFBBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9O
X1RSQU5TSUVOVF9FUlIgaXMgMQogUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1Rf
Rk9VTkRfRVJSIGlzIDIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L2NvbnN0YW50cy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRz
Lmh0bWwKaW5kZXggNTQyZWQzMi4uNzkwOWUyNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvY29uc3RhbnRzLmh0bWwKQEAgLTE2LDEyICsxNiw2IEBAIGlmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpCiAKIGZ1bmN0aW9uIHRlc3QoKQogewotICAgIHNob3VsZEJlKCJ3
ZWJraXRJREJLZXlSYW5nZS5TSU5HTEUiLCAiMCIpOwotICAgIHNob3VsZEJlKCJ3ZWJraXRJREJL
ZXlSYW5nZS5MRUZUX09QRU4iLCAiMSIpOwotICAgIHNob3VsZEJlKCJ3ZWJraXRJREJLZXlSYW5n
ZS5SSUdIVF9PUEVOIiwgIjIiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCS2V5UmFuZ2UuTEVG
VF9CT1VORCIsICI0Iik7Ci0gICAgc2hvdWxkQmUoIndlYmtpdElEQktleVJhbmdlLlJJR0hUX0JP
VU5EIiwgIjgiKTsKLQogICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5V
TktOT1dOX0VSUiIsICIxIik7CiAgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0
aW9uLk5PTl9UUkFOU0lFTlRfRVJSIiwgIjEiKTsKICAgICBzaG91bGRCZSgid2Via2l0SURCRGF0
YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUiIsICIyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbmRleC1jdXJzb3IuaHRtbCBiL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWN1cnNvci5odG1sCmluZGV4IDI4YTk1MDcuLjA2MWM0NzEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWN1cnNvci5o
dG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWN1cnNvci5odG1s
CkBAIC0xODEsMTEgKzE4MSwxMSBAQCBmdW5jdGlvbiBydW5OZXh0VGVzdCgpCiAgCiAgICAgdmFy
IGtleVJhbmdlOwogICAgIGlmIChsb3dlciAhPT0gbnVsbCAmJiB1cHBlciAhPT0gbnVsbCkKLSAg
ICAgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5ib3VuZCh0ZXN0RGF0YVtsb3dlcl0s
IHRlc3REYXRhW3VwcGVyXSwgbG93ZXJJc09wZW4sIHVwcGVySXNPcGVuKTsKKyAgICAgICAga2V5
UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5ib3VuZCh0ZXN0RGF0YVtsb3dlcl0sIHRlc3REYXRh
W3VwcGVyXSwge2xvd2VyT3BlbjogbG93ZXJJc09wZW4sIHVwcGVyT3BlbjogdXBwZXJJc09wZW59
KTsKICAgICBlbHNlIGlmIChsb3dlciAhPT0gbnVsbCkKLSAgICAgICAga2V5UmFuZ2UgPSB3ZWJr
aXRJREJLZXlSYW5nZS5sZWZ0Qm91bmQodGVzdERhdGFbbG93ZXJdLCBsb3dlcklzT3Blbik7Cisg
ICAgICAgIGtleVJhbmdlID0gd2Via2l0SURCS2V5UmFuZ2UubG93ZXJCb3VuZCh0ZXN0RGF0YVts
b3dlcl0sIGxvd2VySXNPcGVuKTsKICAgICBlbHNlCi0gICAgICAgIGtleVJhbmdlID0gd2Via2l0
SURCS2V5UmFuZ2UucmlnaHRCb3VuZCh0ZXN0RGF0YVt1cHBlcl0sIHVwcGVySXNPcGVuKTsKKyAg
ICAgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKHRlc3REYXRhW3Vw
cGVyXSwgdXBwZXJJc09wZW4pOwogIAogICAgIHZhciByZXF1ZXN0ID0gaW5kZXhPYmplY3Qub3Bl
bktleUN1cnNvcih7cmFuZ2U6IGtleVJhbmdlLCBkaXJlY3Rpb246IGFzY2VuZGluZyA/IHdlYmtp
dElEQkN1cnNvci5ORVhUIDogd2Via2l0SURCQ3Vyc29yLlBSRVZ9KTsKICAgICByZXF1ZXN0Lm9u
c3VjY2VzcyA9IGN1cnNvckl0ZXJhdGlvbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL2tleXJhbmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL2tleXJhbmdlLWV4cGVjdGVkLnR4dAppbmRleCAxYTdkZmZmLi5mYWFjOTM3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9rZXlyYW5nZS1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIva2V5cmFuZ2UtZXhwZWN0
ZWQudHh0CkBAIC0zLDE0OSArMywxNTUgQEAgVGVzdCBJbmRleGVkREIncyBLZXlSYW5nZS4KIE9u
IHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxv
d2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCi1QQVNTICdTSU5HTEUnIGluIHdlYmtpdElEQktl
eVJhbmdlIGlzIHRydWUKLVBBU1MgJ0xFRlRfT1BFTicgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMg
dHJ1ZQotUEFTUyAnUklHSFRfT1BFTicgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQotUEFT
UyAnTEVGVF9CT1VORCcgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQotUEFTUyAnUklHSFRf
Qk9VTkQnIGluIHdlYmtpdElEQktleVJhbmdlIGlzIHRydWUKLVBBU1MgJ2xlZnQnIGluIHdlYmtp
dElEQktleVJhbmdlIGlzIGZhbHNlCi1QQVNTICdyaWdodCcgaW4gd2Via2l0SURCS2V5UmFuZ2Ug
aXMgZmFsc2UKLVBBU1MgJ2ZsYWdzJyBpbiB3ZWJraXRJREJLZXlSYW5nZSBpcyBmYWxzZQorUEFT
UyAnbG93ZXInIGluIHdlYmtpdElEQktleVJhbmdlIGlzIGZhbHNlCitQQVNTICd1cHBlcicgaW4g
d2Via2l0SURCS2V5UmFuZ2UgaXMgZmFsc2UKK1BBU1MgJ2xvd2VyT3BlbicgaW4gd2Via2l0SURC
S2V5UmFuZ2UgaXMgZmFsc2UKK1BBU1MgJ3VwcGVyT3BlbicgaW4gd2Via2l0SURCS2V5UmFuZ2Ug
aXMgZmFsc2UKIFBBU1MgJ29ubHknIGluIHdlYmtpdElEQktleVJhbmdlIGlzIHRydWUKLVBBU1Mg
J2xlZnRCb3VuZCcgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQotUEFTUyAncmlnaHRCb3Vu
ZCcgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQorUEFTUyAnbG93ZXJCb3VuZCcgaW4gd2Vi
a2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQorUEFTUyAndXBwZXJCb3VuZCcgaW4gd2Via2l0SURCS2V5
UmFuZ2UgaXMgdHJ1ZQogUEFTUyAnYm91bmQnIGluIHdlYmtpdElEQktleVJhbmdlIGlzIHRydWUK
IAogaW5zdGFuY2UgPSB3ZWJraXRJREJLZXlSYW5nZS5vbmx5KDEpCi1QQVNTICdTSU5HTEUnIGlu
IGluc3RhbmNlIGlzIHRydWUKLVBBU1MgJ0xFRlRfT1BFTicgaW4gaW5zdGFuY2UgaXMgdHJ1ZQot
UEFTUyAnUklHSFRfT1BFTicgaW4gaW5zdGFuY2UgaXMgdHJ1ZQotUEFTUyAnTEVGVF9CT1VORCcg
aW4gaW5zdGFuY2UgaXMgdHJ1ZQotUEFTUyAnUklHSFRfQk9VTkQnIGluIGluc3RhbmNlIGlzIHRy
dWUKLVBBU1MgJ2xlZnQnIGluIGluc3RhbmNlIGlzIHRydWUKLVBBU1MgJ3JpZ2h0JyBpbiBpbnN0
YW5jZSBpcyB0cnVlCi1QQVNTICdmbGFncycgaW4gaW5zdGFuY2UgaXMgdHJ1ZQorUEFTUyAnbG93
ZXInIGluIGluc3RhbmNlIGlzIHRydWUKK1BBU1MgJ3VwcGVyJyBpbiBpbnN0YW5jZSBpcyB0cnVl
CitQQVNTICdsb3dlck9wZW4nIGluIGluc3RhbmNlIGlzIHRydWUKK1BBU1MgJ3VwcGVyT3Blbicg
aW4gaW5zdGFuY2UgaXMgdHJ1ZQogUEFTUyAnb25seScgaW4gaW5zdGFuY2UgaXMgZmFsc2UKLVBB
U1MgJ2xlZnRCb3VuZCcgaW4gaW5zdGFuY2UgaXMgZmFsc2UKLVBBU1MgJ3JpZ2h0Qm91bmQnIGlu
IGluc3RhbmNlIGlzIGZhbHNlCitQQVNTICdsb3dlckJvdW5kJyBpbiBpbnN0YW5jZSBpcyBmYWxz
ZQorUEFTUyAndXBwZXJCb3VuZCcgaW4gaW5zdGFuY2UgaXMgZmFsc2UKIFBBU1MgJ2JvdW5kJyBp
biBpbnN0YW5jZSBpcyBmYWxzZQogCiB3ZWJraXRJREJLZXlSYW5nZS5vbmx5KDEpCi1QQVNTIGtl
eVJhbmdlLmxlZnQgaXMgMQotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyAxCi1QQVNTIGtleVJhbmdl
LmZsYWdzIGlzIGtleVJhbmdlLlNJTkdMRQorUEFTUyBrZXlSYW5nZS5sb3dlciBpcyAxCitQQVNT
IGtleVJhbmdlLnVwcGVyIGlzIDEKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCitQ
QVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQogd2Via2l0SURCS2V5UmFuZ2Uub25seSgn
YScpCi1QQVNTIGtleVJhbmdlLmxlZnQgaXMgJ2EnCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzICdh
JwotUEFTUyBrZXlSYW5nZS5mbGFncyBpcyBrZXlSYW5nZS5TSU5HTEUKLXdlYmtpdElEQktleVJh
bmdlLmxlZnRCb3VuZCgxMCx0cnVlKQotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzIDEwCi1QQVNTIGtl
eVJhbmdlLnJpZ2h0IGlzIG51bGwKLVBBU1Mga2V5UmFuZ2UuZmxhZ3MgaXMga2V5UmFuZ2UuTEVG
VF9PUEVOIHwga2V5UmFuZ2UuTEVGVF9CT1VORAotd2Via2l0SURCS2V5UmFuZ2UubGVmdEJvdW5k
KDExLGZhbHNlKQotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzIDExCi1QQVNTIGtleVJhbmdlLnJpZ2h0
IGlzIG51bGwKLVBBU1Mga2V5UmFuZ2UuZmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9CT1VORAotd2Vi
a2l0SURCS2V5UmFuZ2UubGVmdEJvdW5kKDEyLHVuZGVmaW5lZCkKLVBBU1Mga2V5UmFuZ2UubGVm
dCBpcyAxMgotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdz
IGlzIGtleVJhbmdlLkxFRlRfQk9VTkQKLXdlYmtpdElEQktleVJhbmdlLmxlZnRCb3VuZCgnYWEn
LHRydWUpCi1QQVNTIGtleVJhbmdlLmxlZnQgaXMgJ2FhJwotUEFTUyBrZXlSYW5nZS5yaWdodCBp
cyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlzIGtleVJhbmdlLkxFRlRfT1BFTiB8IGtleVJh
bmdlLkxFRlRfQk9VTkQKLXdlYmtpdElEQktleVJhbmdlLmxlZnRCb3VuZCgnYWInLGZhbHNlKQot
UEFTUyBrZXlSYW5nZS5sZWZ0IGlzICdhYicKLVBBU1Mga2V5UmFuZ2UucmlnaHQgaXMgbnVsbAot
UEFTUyBrZXlSYW5nZS5mbGFncyBpcyBrZXlSYW5nZS5MRUZUX0JPVU5ECi13ZWJraXRJREJLZXlS
YW5nZS5sZWZ0Qm91bmQoJ2FjJyx1bmRlZmluZWQpCi1QQVNTIGtleVJhbmdlLmxlZnQgaXMgJ2Fj
JwotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlzIGtl
eVJhbmdlLkxFRlRfQk9VTkQKLXdlYmtpdElEQktleVJhbmdlLnJpZ2h0Qm91bmQoMjAsdHJ1ZSkK
LVBBU1Mga2V5UmFuZ2UucmlnaHQgaXMgMjAKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyBudWxsCi1Q
QVNTIGtleVJhbmdlLmZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5nZS5SSUdI
VF9CT1VORAotd2Via2l0SURCS2V5UmFuZ2UucmlnaHRCb3VuZCgyMSxmYWxzZSkKLVBBU1Mga2V5
UmFuZ2UucmlnaHQgaXMgMjEKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyBudWxsCi1QQVNTIGtleVJh
bmdlLmZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5yaWdo
dEJvdW5kKDIyLHVuZGVmaW5lZCkKLVBBU1Mga2V5UmFuZ2UucmlnaHQgaXMgMjIKLVBBU1Mga2V5
UmFuZ2UubGVmdCBpcyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlzIGtleVJhbmdlLlJJR0hU
X0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5yaWdodEJvdW5kKCdiYScsdHJ1ZSkKLVBBU1Mga2V5
UmFuZ2UucmlnaHQgaXMgJ2JhJwotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzIG51bGwKLVBBU1Mga2V5
UmFuZ2UuZmxhZ3MgaXMga2V5UmFuZ2UuUklHSFRfT1BFTiB8IGtleVJhbmdlLlJJR0hUX0JPVU5E
Ci13ZWJraXRJREJLZXlSYW5nZS5yaWdodEJvdW5kKCdiYicsZmFsc2UpCi1QQVNTIGtleVJhbmdl
LnJpZ2h0IGlzICdiYicKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyBudWxsCi1QQVNTIGtleVJhbmdl
LmZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5yaWdodEJv
dW5kKCdiYycsdW5kZWZpbmVkKQotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyAnYmMnCi1QQVNTIGtl
eVJhbmdlLmxlZnQgaXMgbnVsbAotUEFTUyBrZXlSYW5nZS5mbGFncyBpcyBrZXlSYW5nZS5SSUdI
VF9CT1VORAotd2Via2l0SURCS2V5UmFuZ2UuYm91bmQoMzAsNDAsdW5kZWZpbmVkLHVuZGVmaW5l
ZCkKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyAzMAotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyA0MAot
UEFTUyBsZWZ0RmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlz
IGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgzMSw0MSxmYWxz
ZSxmYWxzZSkKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyAzMQotUEFTUyBrZXlSYW5nZS5yaWdodCBp
cyA0MQotUEFTUyBsZWZ0RmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZs
YWdzIGlzIGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgzMiw0
MixmYWxzZSx0cnVlKQotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzIDMyCi1QQVNTIGtleVJhbmdlLnJp
Z2h0IGlzIDQyCi1QQVNTIGxlZnRGbGFncyBpcyBrZXlSYW5nZS5MRUZUX0JPVU5ECi1QQVNTIHJp
Z2h0RmxhZ3MgaXMga2V5UmFuZ2UuUklHSFRfT1BFTiB8IGtleVJhbmdlLlJJR0hUX0JPVU5ECi13
ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgzMyw0Myx0cnVlLGZhbHNlKQotUEFTUyBrZXlSYW5nZS5s
ZWZ0IGlzIDMzCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzIDQzCi1QQVNTIGxlZnRGbGFncyBpcyBr
ZXlSYW5nZS5MRUZUX09QRU4gfCBrZXlSYW5nZS5MRUZUX0JPVU5ECi1QQVNTIHJpZ2h0RmxhZ3Mg
aXMga2V5UmFuZ2UuUklHSFRfQk9VTkQKLXdlYmtpdElEQktleVJhbmdlLmJvdW5kKDM0LDQ0LHRy
dWUsdHJ1ZSkKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyAzNAotUEFTUyBrZXlSYW5nZS5yaWdodCBp
cyA0NAotUEFTUyBsZWZ0RmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9PUEVOIHwga2V5UmFuZ2UuTEVG
VF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5n
ZS5SSUdIVF9CT1VORAotd2Via2l0SURCS2V5UmFuZ2UuYm91bmQoJ2FhYScsJ2FiYScsZmFsc2Us
ZmFsc2UpCi1QQVNTIGtleVJhbmdlLmxlZnQgaXMgJ2FhYScKLVBBU1Mga2V5UmFuZ2UucmlnaHQg
aXMgJ2FiYScKLVBBU1MgbGVmdEZsYWdzIGlzIGtleVJhbmdlLkxFRlRfQk9VTkQKLVBBU1Mgcmln
aHRGbGFncyBpcyBrZXlSYW5nZS5SSUdIVF9CT1VORAotd2Via2l0SURCS2V5UmFuZ2UuYm91bmQo
J2FhYicsJ2FiYicsdW5kZWZpbmVkLHVuZGVmaW5lZCkKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyAn
YWFiJwotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyAnYWJiJwotUEFTUyBsZWZ0RmxhZ3MgaXMga2V5
UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX0JPVU5E
Ci13ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgnYWFjJywnYWJjJyxmYWxzZSxmYWxzZSkKLVBBU1Mg
a2V5UmFuZ2UubGVmdCBpcyAnYWFjJwotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyAnYWJjJwotUEFT
UyBsZWZ0RmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtl
eVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgnYWFkJywnYWJkJyxm
YWxzZSx0cnVlKQotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzICdhYWQnCi1QQVNTIGtleVJhbmdlLnJp
Z2h0IGlzICdhYmQnCi1QQVNTIGxlZnRGbGFncyBpcyBrZXlSYW5nZS5MRUZUX0JPVU5ECi1QQVNT
IHJpZ2h0RmxhZ3MgaXMga2V5UmFuZ2UuUklHSFRfT1BFTiB8IGtleVJhbmdlLlJJR0hUX0JPVU5E
Ci13ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgnYWFlJywnYWJlJyx0cnVlLGZhbHNlKQotUEFTUyBr
ZXlSYW5nZS5sZWZ0IGlzICdhYWUnCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzICdhYmUnCi1QQVNT
IGxlZnRGbGFncyBpcyBrZXlSYW5nZS5MRUZUX09QRU4gfCBrZXlSYW5nZS5MRUZUX0JPVU5ECi1Q
QVNTIHJpZ2h0RmxhZ3MgaXMga2V5UmFuZ2UuUklHSFRfQk9VTkQKLXdlYmtpdElEQktleVJhbmdl
LmJvdW5kKCdhYWYnLCdhYmYnLHRydWUsdHJ1ZSkKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyAnYWFm
JwotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyAnYWJmJwotUEFTUyBsZWZ0RmxhZ3MgaXMga2V5UmFu
Z2UuTEVGVF9PUEVOIHwga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtl
eVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5nZS5SSUdIVF9CT1VORAorUEFTUyBrZXlSYW5nZS5s
b3dlciBpcyAnYScKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgJ2EnCitQQVNTIGtleVJhbmdlLmxv
d2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK3dlYmtp
dElEQktleVJhbmdlLmxvd2VyQm91bmQoMTAsdHJ1ZSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMg
MTAKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIHRydWUKK1BBU1Mga2V5UmFuZ2UudXBwZXIg
aXMgbnVsbAorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJh
bmdlLmxvd2VyQm91bmQoMTEsZmFsc2UpCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDExCitQQVNT
IGtleVJhbmdlLmxvd2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlciBpcyBudWxs
CitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UubG93
ZXJCb3VuZCgxMix1bmRlZmluZWQpCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDEyCitQQVNTIGtl
eVJhbmdlLmxvd2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlciBpcyBudWxsCitQ
QVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UubG93ZXJC
b3VuZCgnYWEnLHRydWUpCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzICdhYScKK1BBU1Mga2V5UmFu
Z2UubG93ZXJPcGVuIGlzIHRydWUKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgbnVsbAorUEFTUyBr
ZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLmxvd2VyQm91bmQo
J2FiJyxmYWxzZSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgJ2FiJworUEFTUyBrZXlSYW5nZS5s
b3dlck9wZW4gaXMgZmFsc2UKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgbnVsbAorUEFTUyBrZXlS
YW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLmxvd2VyQm91bmQoJ2Fj
Jyx1bmRlZmluZWQpCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzICdhYycKK1BBU1Mga2V5UmFuZ2Uu
bG93ZXJPcGVuIGlzIGZhbHNlCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzIG51bGwKK1BBU1Mga2V5
UmFuZ2UudXBwZXJPcGVuIGlzIGZhbHNlCit3ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKDIw
LHRydWUpCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzIDIwCitQQVNTIGtleVJhbmdlLnVwcGVyT3Bl
biBpcyB0cnVlCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIG51bGwKK1BBU1Mga2V5UmFuZ2UubG93
ZXJPcGVuIGlzIGZhbHNlCit3ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKDIxLGZhbHNlKQor
UEFTUyBrZXlSYW5nZS51cHBlciBpcyAyMQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFs
c2UKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgbnVsbAorUEFTUyBrZXlSYW5nZS5sb3dlck9wZW4g
aXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLnVwcGVyQm91bmQoMjIsdW5kZWZpbmVkKQorUEFT
UyBrZXlSYW5nZS51cHBlciBpcyAyMgorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UK
K1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgbnVsbAorUEFTUyBrZXlSYW5nZS5sb3dlck9wZW4gaXMg
ZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLnVwcGVyQm91bmQoJ2JhJyx0cnVlKQorUEFTUyBrZXlS
YW5nZS51cHBlciBpcyAnYmEnCitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyB0cnVlCitQQVNT
IGtleVJhbmdlLmxvd2VyIGlzIG51bGwKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNl
Cit3ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKCdiYicsZmFsc2UpCitQQVNTIGtleVJhbmdl
LnVwcGVyIGlzICdiYicKK1BBU1Mga2V5UmFuZ2UudXBwZXJPcGVuIGlzIGZhbHNlCitQQVNTIGtl
eVJhbmdlLmxvd2VyIGlzIG51bGwKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCit3
ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKCdiYycsdW5kZWZpbmVkKQorUEFTUyBrZXlSYW5n
ZS51cHBlciBpcyAnYmMnCitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQorUEFTUyBr
ZXlSYW5nZS5sb3dlciBpcyBudWxsCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyBmYWxzZQor
d2Via2l0SURCS2V5UmFuZ2UuYm91bmQoMzAsNDAsIHtsb3dlck9wZW46IHVuZGVmaW5lZCwgdXBw
ZXJPcGVuOnVuZGVmaW5lZH0pCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDMwCitQQVNTIGtleVJh
bmdlLnVwcGVyIGlzIDQwCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyBmYWxzZQorUEFTUyBr
ZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLmJvdW5kKDMxLDQx
LCB7bG93ZXJPcGVuOiBmYWxzZSwgdXBwZXJPcGVuOmZhbHNlfSkKK1BBU1Mga2V5UmFuZ2UubG93
ZXIgaXMgMzEKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgNDEKK1BBU1Mga2V5UmFuZ2UubG93ZXJP
cGVuIGlzIGZhbHNlCitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURC
S2V5UmFuZ2UuYm91bmQoMzIsNDIsIHtsb3dlck9wZW46IGZhbHNlLCB1cHBlck9wZW46dHJ1ZX0p
CitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDMyCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzIDQyCitQ
QVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4g
aXMgdHJ1ZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQoMzMsNDMsIHtsb3dlck9wZW46IHRydWUs
IHVwcGVyT3BlbjpmYWxzZX0pCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDMzCitQQVNTIGtleVJh
bmdlLnVwcGVyIGlzIDQzCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyB0cnVlCitQQVNTIGtl
eVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQoMzQsNDQs
IHtsb3dlck9wZW46IHRydWUsIHVwcGVyT3Blbjp0cnVlfSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIg
aXMgMzQKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgNDQKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVu
IGlzIHRydWUKK1BBU1Mga2V5UmFuZ2UudXBwZXJPcGVuIGlzIHRydWUKK3dlYmtpdElEQktleVJh
bmdlLmJvdW5kKCdhYWEnLCdhYmEnLCB7bG93ZXJPcGVuOiBmYWxzZSwgdXBwZXJPcGVuOmZhbHNl
fSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgJ2FhYScKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMg
J2FiYScKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCitQQVNTIGtleVJhbmdlLnVw
cGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQoJ2FhYicsJ2FiYicsIHts
b3dlck9wZW46IHVuZGVmaW5lZCwgdXBwZXJPcGVuOnVuZGVmaW5lZH0pCitQQVNTIGtleVJhbmdl
Lmxvd2VyIGlzICdhYWInCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzICdhYmInCitQQVNTIGtleVJh
bmdlLmxvd2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UK
K3dlYmtpdElEQktleVJhbmdlLmJvdW5kKCdhYWMnLCdhYmMnLCB7bG93ZXJPcGVuOiBmYWxzZSwg
dXBwZXJPcGVuOmZhbHNlfSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgJ2FhYycKK1BBU1Mga2V5
UmFuZ2UudXBwZXIgaXMgJ2FiYycKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCitQ
QVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQo
J2FhZCcsJ2FiZCcsIHtsb3dlck9wZW46IGZhbHNlLCB1cHBlck9wZW46dHJ1ZX0pCitQQVNTIGtl
eVJhbmdlLmxvd2VyIGlzICdhYWQnCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzICdhYmQnCitQQVNT
IGtleVJhbmdlLmxvd2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMg
dHJ1ZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQoJ2FhZScsJ2FiZScsIHtsb3dlck9wZW46IHRy
dWUsIHVwcGVyT3BlbjpmYWxzZX0pCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzICdhYWUnCitQQVNT
IGtleVJhbmdlLnVwcGVyIGlzICdhYmUnCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyB0cnVl
CitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91
bmQoJ2FhZicsJ2FiZicsIHtsb3dlck9wZW46IHRydWUsIHVwcGVyT3Blbjp0cnVlfSkKK1BBU1Mg
a2V5UmFuZ2UubG93ZXIgaXMgJ2FhZicKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgJ2FiZicKK1BB
U1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIHRydWUKK1BBU1Mga2V5UmFuZ2UudXBwZXJPcGVuIGlz
IHRydWUKIFBhc3NpbmcgYW4gaW52YWxpZCBrZXkgaW50byBvbmx5KFtdKQogUEFTUyBDYXVnaHQg
ZXhjZXB0aW9uOiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcKLVBh
c3NpbmcgYW4gaW52YWxpZCBrZXkgaW50byByaWdodEJvdW5kKFtdKQorUGFzc2luZyBhbiBpbnZh
bGlkIGtleSBpbnRvIHVwcGVyQm91bmQoW10pCiBQQVNTIENhdWdodCBleGNlcHRpb246IEVycm9y
OiBUWVBFX01JU01BVENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNwotUGFzc2luZyBhbiBpbnZhbGlk
IGtleSBpbnRvIGxlZnRCb3VuZChbXSkKK1Bhc3NpbmcgYW4gaW52YWxpZCBrZXkgaW50byBsb3dl
ckJvdW5kKFtdKQogUEFTUyBDYXVnaHQgZXhjZXB0aW9uOiBFcnJvcjogVFlQRV9NSVNNQVRDSF9F
UlI6IERPTSBFeGNlcHRpb24gMTcKIFBhc3NpbmcgYW4gaW52YWxpZCBrZXkgaW50byBib3VuZChu
dWxsLCBbXSkKIFBBU1MgQ2F1Z2h0IGV4Y2VwdGlvbjogRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJS
OiBET00gRXhjZXB0aW9uIDE3CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9rZXlyYW5nZS5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIva2V5cmFu
Z2UuaHRtbAppbmRleCA0ODcwOGQ5Li40YjkyNmRhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9rZXlyYW5nZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL2tleXJhbmdlLmh0bWwKQEAgLTE3LDY3ICsxNyw2OCBAQCBpZiAod2luZG93Lmxh
eW91dFRlc3RDb250cm9sbGVyKQogZnVuY3Rpb24gY2hlY2tTaW5nbGVLZXlSYW5nZSh2YWx1ZSkK
IHsKICAgICBrZXlSYW5nZSA9IGV2YWxBbmRMb2coIndlYmtpdElEQktleVJhbmdlLm9ubHkoIiAr
IHZhbHVlICsgIikiKTsKLSAgICBzaG91bGRCZSgia2V5UmFuZ2UubGVmdCIsICIiICsgdmFsdWUp
OwotICAgIHNob3VsZEJlKCJrZXlSYW5nZS5yaWdodCIsICIiICsgdmFsdWUpOwotICAgIHNob3Vs
ZEJlKCJrZXlSYW5nZS5mbGFncyIsICJrZXlSYW5nZS5TSU5HTEUiKTsKKyAgICBzaG91bGRCZSgi
a2V5UmFuZ2UubG93ZXIiLCAiIiArIHZhbHVlKTsKKyAgICBzaG91bGRCZSgia2V5UmFuZ2UudXBw
ZXIiLCAiIiArIHZhbHVlKTsKKyAgICBzaG91bGRCZUZhbHNlKCJrZXlSYW5nZS5sb3dlck9wZW4i
KTsKKyAgICBzaG91bGRCZUZhbHNlKCJrZXlSYW5nZS51cHBlck9wZW4iKTsKIH0KIAotZnVuY3Rp
b24gY2hlY2tMZWZ0Qm91bmRLZXlSYW5nZSh2YWx1ZSwgb3BlbikKK2Z1bmN0aW9uIGNoZWNrTG93
ZXJCb3VuZEtleVJhbmdlKHZhbHVlLCBvcGVuKQogewotICAgIGtleVJhbmdlID0gZXZhbEFuZExv
Zygid2Via2l0SURCS2V5UmFuZ2UubGVmdEJvdW5kKCIgKyB2YWx1ZSArICIsIiArIG9wZW4gKyAi
KSIpOwotICAgIHNob3VsZEJlKCJrZXlSYW5nZS5sZWZ0IiwgIiIgKyB2YWx1ZSk7Ci0gICAgc2hv
dWxkQmVOdWxsKCJrZXlSYW5nZS5yaWdodCIpOwotICAgIHNob3VsZEJlKCJrZXlSYW5nZS5mbGFn
cyIsIG9wZW4gPyAia2V5UmFuZ2UuTEVGVF9PUEVOIHwga2V5UmFuZ2UuTEVGVF9CT1VORCIgOiAi
a2V5UmFuZ2UuTEVGVF9CT1VORCIpOworICAgIGtleVJhbmdlID0gZXZhbEFuZExvZygid2Via2l0
SURCS2V5UmFuZ2UubG93ZXJCb3VuZCgiICsgdmFsdWUgKyAiLCIgKyBvcGVuICsgIikiKTsKKyAg
ICBzaG91bGRCZSgia2V5UmFuZ2UubG93ZXIiLCAiIiArIHZhbHVlKTsKKyAgICBpZiAob3BlbiA9
PT0gdW5kZWZpbmVkKQorICAgICAgICBvcGVuID0gZmFsc2U7CisgICAgc2hvdWxkQmUoImtleVJh
bmdlLmxvd2VyT3BlbiIsICIiICsgb3Blbik7CisgICAgc2hvdWxkQmVOdWxsKCJrZXlSYW5nZS51
cHBlciIpOworICAgIHNob3VsZEJlRmFsc2UoImtleVJhbmdlLnVwcGVyT3BlbiIpOwogfQogCi1m
dW5jdGlvbiBjaGVja1JpZ2h0Qm91bmRLZXlSYW5nZSh2YWx1ZSwgb3BlbikKK2Z1bmN0aW9uIGNo
ZWNrVXBwZXJCb3VuZEtleVJhbmdlKHZhbHVlLCBvcGVuKQogewotICAgIGtleVJhbmdlID0gZXZh
bEFuZExvZygid2Via2l0SURCS2V5UmFuZ2UucmlnaHRCb3VuZCgiICsgdmFsdWUgKyAiLCIgKyBv
cGVuICsgIikiKTsKLSAgICBzaG91bGRCZSgia2V5UmFuZ2UucmlnaHQiLCAiIiArIHZhbHVlKTsK
LSAgICBzaG91bGRCZU51bGwoImtleVJhbmdlLmxlZnQiKTsKLSAgICBzaG91bGRCZSgia2V5UmFu
Z2UuZmxhZ3MiLCBvcGVuID8gImtleVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5nZS5SSUdIVF9C
T1VORCIgOiAia2V5UmFuZ2UuUklHSFRfQk9VTkQiKTsKKyAgICBrZXlSYW5nZSA9IGV2YWxBbmRM
b2coIndlYmtpdElEQktleVJhbmdlLnVwcGVyQm91bmQoIiArIHZhbHVlICsgIiwiICsgb3BlbiAr
ICIpIik7CisgICAgc2hvdWxkQmUoImtleVJhbmdlLnVwcGVyIiwgIiIgKyB2YWx1ZSk7CisgICAg
aWYgKG9wZW4gPT09IHVuZGVmaW5lZCkKKyAgICAgICAgb3BlbiA9IGZhbHNlOworICAgIHNob3Vs
ZEJlKCJrZXlSYW5nZS51cHBlck9wZW4iLCAiIiArIG9wZW4pOworICAgIHNob3VsZEJlTnVsbCgi
a2V5UmFuZ2UubG93ZXIiKTsKKyAgICBzaG91bGRCZUZhbHNlKCJrZXlSYW5nZS5sb3dlck9wZW4i
KTsKIH0KIAotZnVuY3Rpb24gY2hlY2tCb3VuZEtleVJhbmdlKGxlZnQsIHJpZ2h0LCBvcGVuTGVm
dCwgb3BlblJpZ2h0KQorZnVuY3Rpb24gY2hlY2tCb3VuZEtleVJhbmdlKGxvd2VyLCB1cHBlciwg
bG93ZXJPcGVuLCB1cHBlck9wZW4pCiB7Ci0gICAga2V5UmFuZ2UgPSBldmFsQW5kTG9nKCJ3ZWJr
aXRJREJLZXlSYW5nZS5ib3VuZCgiICsgbGVmdCArICIsIiArIHJpZ2h0ICsgIiwiICsgb3Blbkxl
ZnQgKyAiLCIgKyBvcGVuUmlnaHQgKyAiKSIpOwotICAgIHNob3VsZEJlKCJrZXlSYW5nZS5sZWZ0
IiwgIiIgKyBsZWZ0KTsKLSAgICBzaG91bGRCZSgia2V5UmFuZ2UucmlnaHQiLCAiIiArIHJpZ2h0
KTsKLSAgICBsZWZ0RmxhZ3MgPSBrZXlSYW5nZS5mbGFncyAmIChrZXlSYW5nZS5MRUZUX09QRU4g
fCBrZXlSYW5nZS5MRUZUX0JPVU5EKTsKLSAgICBzaG91bGRCZSgibGVmdEZsYWdzIiwgb3Blbkxl
ZnQgPyAia2V5UmFuZ2UuTEVGVF9PUEVOIHwga2V5UmFuZ2UuTEVGVF9CT1VORCIgOiAia2V5UmFu
Z2UuTEVGVF9CT1VORCIpOwotICAgIHJpZ2h0RmxhZ3MgPSBrZXlSYW5nZS5mbGFncyAmIChrZXlS
YW5nZS5SSUdIVF9PUEVOIHwga2V5UmFuZ2UuUklHSFRfQk9VTkQpOwotICAgIHNob3VsZEJlKCJy
aWdodEZsYWdzIiwgb3BlblJpZ2h0ID8gImtleVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5nZS5S
SUdIVF9CT1VORCIgOiAia2V5UmFuZ2UuUklHSFRfQk9VTkQiKTsKKyAgICBrZXlSYW5nZSA9IGV2
YWxBbmRMb2coIndlYmtpdElEQktleVJhbmdlLmJvdW5kKCIgKyBsb3dlciArICIsIiArIHVwcGVy
ICsgIiwge2xvd2VyT3BlbjogIiArIGxvd2VyT3BlbiArICIsIHVwcGVyT3BlbjoiICsgdXBwZXJP
cGVuICsgIn0pIik7CisgICAgc2hvdWxkQmUoImtleVJhbmdlLmxvd2VyIiwgIiIgKyBsb3dlcik7
CisgICAgc2hvdWxkQmUoImtleVJhbmdlLnVwcGVyIiwgIiIgKyB1cHBlcik7CisgICAgaWYgKGxv
d2VyT3BlbiA9PT0gdW5kZWZpbmVkKQorICAgICAgICBsb3dlck9wZW4gPSBmYWxzZTsKKyAgICBp
ZiAodXBwZXJPcGVuID09PSB1bmRlZmluZWQpCisgICAgICAgIHVwcGVyT3BlbiA9IGZhbHNlOwor
ICAgIHNob3VsZEJlKCJrZXlSYW5nZS5sb3dlck9wZW4iLCAiIiArIGxvd2VyT3Blbik7CisgICAg
c2hvdWxkQmUoImtleVJhbmdlLnVwcGVyT3BlbiIsICIiICsgdXBwZXJPcGVuKTsKIH0KIAogZnVu
Y3Rpb24gdGVzdCgpCiB7Ci0gICAgc2hvdWxkQmVUcnVlKCInU0lOR0xFJyBpbiB3ZWJraXRJREJL
ZXlSYW5nZSIpOwotICAgIHNob3VsZEJlVHJ1ZSgiJ0xFRlRfT1BFTicgaW4gd2Via2l0SURCS2V5
UmFuZ2UiKTsKLSAgICBzaG91bGRCZVRydWUoIidSSUdIVF9PUEVOJyBpbiB3ZWJraXRJREJLZXlS
YW5nZSIpOwotICAgIHNob3VsZEJlVHJ1ZSgiJ0xFRlRfQk9VTkQnIGluIHdlYmtpdElEQktleVJh
bmdlIik7Ci0gICAgc2hvdWxkQmVUcnVlKCInUklHSFRfQk9VTkQnIGluIHdlYmtpdElEQktleVJh
bmdlIik7Ci0gICAgc2hvdWxkQmVGYWxzZSgiJ2xlZnQnIGluIHdlYmtpdElEQktleVJhbmdlIik7
Ci0gICAgc2hvdWxkQmVGYWxzZSgiJ3JpZ2h0JyBpbiB3ZWJraXRJREJLZXlSYW5nZSIpOwotICAg
IHNob3VsZEJlRmFsc2UoIidmbGFncycgaW4gd2Via2l0SURCS2V5UmFuZ2UiKTsKKyAgICBzaG91
bGRCZUZhbHNlKCInbG93ZXInIGluIHdlYmtpdElEQktleVJhbmdlIik7CisgICAgc2hvdWxkQmVG
YWxzZSgiJ3VwcGVyJyBpbiB3ZWJraXRJREJLZXlSYW5nZSIpOworICAgIHNob3VsZEJlRmFsc2Uo
Iidsb3dlck9wZW4nIGluIHdlYmtpdElEQktleVJhbmdlIik7CisgICAgc2hvdWxkQmVGYWxzZSgi
J3VwcGVyT3BlbicgaW4gd2Via2l0SURCS2V5UmFuZ2UiKTsKICAgICBzaG91bGRCZVRydWUoIidv
bmx5JyBpbiB3ZWJraXRJREJLZXlSYW5nZSIpOwotICAgIHNob3VsZEJlVHJ1ZSgiJ2xlZnRCb3Vu
ZCcgaW4gd2Via2l0SURCS2V5UmFuZ2UiKTsKLSAgICBzaG91bGRCZVRydWUoIidyaWdodEJvdW5k
JyBpbiB3ZWJraXRJREJLZXlSYW5nZSIpOworICAgIHNob3VsZEJlVHJ1ZSgiJ2xvd2VyQm91bmQn
IGluIHdlYmtpdElEQktleVJhbmdlIik7CisgICAgc2hvdWxkQmVUcnVlKCIndXBwZXJCb3VuZCcg
aW4gd2Via2l0SURCS2V5UmFuZ2UiKTsKICAgICBzaG91bGRCZVRydWUoIidib3VuZCcgaW4gd2Vi
a2l0SURCS2V5UmFuZ2UiKTsKIAogICAgIGRlYnVnKCIiKTsKIAogICAgIHZhciBpbnN0YW5jZSA9
IGV2YWxBbmRMb2coImluc3RhbmNlID0gd2Via2l0SURCS2V5UmFuZ2Uub25seSgxKSIpOwotICAg
IHNob3VsZEJlVHJ1ZSgiJ1NJTkdMRScgaW4gaW5zdGFuY2UiKTsKLSAgICBzaG91bGRCZVRydWUo
IidMRUZUX09QRU4nIGluIGluc3RhbmNlIik7Ci0gICAgc2hvdWxkQmVUcnVlKCInUklHSFRfT1BF
TicgaW4gaW5zdGFuY2UiKTsKLSAgICBzaG91bGRCZVRydWUoIidMRUZUX0JPVU5EJyBpbiBpbnN0
YW5jZSIpOwotICAgIHNob3VsZEJlVHJ1ZSgiJ1JJR0hUX0JPVU5EJyBpbiBpbnN0YW5jZSIpOwot
ICAgIHNob3VsZEJlVHJ1ZSgiJ2xlZnQnIGluIGluc3RhbmNlIik7Ci0gICAgc2hvdWxkQmVUcnVl
KCIncmlnaHQnIGluIGluc3RhbmNlIik7Ci0gICAgc2hvdWxkQmVUcnVlKCInZmxhZ3MnIGluIGlu
c3RhbmNlIik7CisgICAgc2hvdWxkQmVUcnVlKCInbG93ZXInIGluIGluc3RhbmNlIik7CisgICAg
c2hvdWxkQmVUcnVlKCIndXBwZXInIGluIGluc3RhbmNlIik7CisgICAgc2hvdWxkQmVUcnVlKCIn
bG93ZXJPcGVuJyBpbiBpbnN0YW5jZSIpOworICAgIHNob3VsZEJlVHJ1ZSgiJ3VwcGVyT3Blbicg
aW4gaW5zdGFuY2UiKTsKICAgICBzaG91bGRCZUZhbHNlKCInb25seScgaW4gaW5zdGFuY2UiKTsK
LSAgICBzaG91bGRCZUZhbHNlKCInbGVmdEJvdW5kJyBpbiBpbnN0YW5jZSIpOwotICAgIHNob3Vs
ZEJlRmFsc2UoIidyaWdodEJvdW5kJyBpbiBpbnN0YW5jZSIpOworICAgIHNob3VsZEJlRmFsc2Uo
Iidsb3dlckJvdW5kJyBpbiBpbnN0YW5jZSIpOworICAgIHNob3VsZEJlRmFsc2UoIid1cHBlckJv
dW5kJyBpbiBpbnN0YW5jZSIpOwogICAgIHNob3VsZEJlRmFsc2UoIidib3VuZCcgaW4gaW5zdGFu
Y2UiKTsKIAogICAgIGRlYnVnKCIiKTsKQEAgLTg1LDE5ICs4NiwxOSBAQCBmdW5jdGlvbiB0ZXN0
KCkKICAgICBjaGVja1NpbmdsZUtleVJhbmdlKDEpOwogICAgIGNoZWNrU2luZ2xlS2V5UmFuZ2Uo
IidhJyIpOwogCi0gICAgY2hlY2tMZWZ0Qm91bmRLZXlSYW5nZSgxMCwgdHJ1ZSk7Ci0gICAgY2hl
Y2tMZWZ0Qm91bmRLZXlSYW5nZSgxMSwgZmFsc2UpOwotICAgIGNoZWNrTGVmdEJvdW5kS2V5UmFu
Z2UoMTIpOwotICAgIGNoZWNrTGVmdEJvdW5kS2V5UmFuZ2UoIidhYSciLCB0cnVlKTsKLSAgICBj
aGVja0xlZnRCb3VuZEtleVJhbmdlKCInYWInIiwgZmFsc2UpOwotICAgIGNoZWNrTGVmdEJvdW5k
S2V5UmFuZ2UoIidhYyciKTsKKyAgICBjaGVja0xvd2VyQm91bmRLZXlSYW5nZSgxMCwgdHJ1ZSk7
CisgICAgY2hlY2tMb3dlckJvdW5kS2V5UmFuZ2UoMTEsIGZhbHNlKTsKKyAgICBjaGVja0xvd2Vy
Qm91bmRLZXlSYW5nZSgxMik7CisgICAgY2hlY2tMb3dlckJvdW5kS2V5UmFuZ2UoIidhYSciLCB0
cnVlKTsKKyAgICBjaGVja0xvd2VyQm91bmRLZXlSYW5nZSgiJ2FiJyIsIGZhbHNlKTsKKyAgICBj
aGVja0xvd2VyQm91bmRLZXlSYW5nZSgiJ2FjJyIpOwogCi0gICAgY2hlY2tSaWdodEJvdW5kS2V5
UmFuZ2UoMjAsIHRydWUpOwotICAgIGNoZWNrUmlnaHRCb3VuZEtleVJhbmdlKDIxLCBmYWxzZSk7
Ci0gICAgY2hlY2tSaWdodEJvdW5kS2V5UmFuZ2UoMjIpOwotICAgIGNoZWNrUmlnaHRCb3VuZEtl
eVJhbmdlKCInYmEnIiwgdHJ1ZSk7Ci0gICAgY2hlY2tSaWdodEJvdW5kS2V5UmFuZ2UoIidiYici
LCBmYWxzZSk7Ci0gICAgY2hlY2tSaWdodEJvdW5kS2V5UmFuZ2UoIidiYyciKTsKKyAgICBjaGVj
a1VwcGVyQm91bmRLZXlSYW5nZSgyMCwgdHJ1ZSk7CisgICAgY2hlY2tVcHBlckJvdW5kS2V5UmFu
Z2UoMjEsIGZhbHNlKTsKKyAgICBjaGVja1VwcGVyQm91bmRLZXlSYW5nZSgyMik7CisgICAgY2hl
Y2tVcHBlckJvdW5kS2V5UmFuZ2UoIidiYSciLCB0cnVlKTsKKyAgICBjaGVja1VwcGVyQm91bmRL
ZXlSYW5nZSgiJ2JiJyIsIGZhbHNlKTsKKyAgICBjaGVja1VwcGVyQm91bmRLZXlSYW5nZSgiJ2Jj
JyIpOwogCiAgICAgY2hlY2tCb3VuZEtleVJhbmdlKDMwLCA0MCk7CiAgICAgY2hlY2tCb3VuZEtl
eVJhbmdlKDMxLCA0MSwgZmFsc2UsIGZhbHNlKTsKQEAgLTEyMSwxNiArMTIyLDE2IEBAIGZ1bmN0
aW9uIHRlc3QoKQogICAgIH0KIAogICAgIHRyeSB7Ci0gICAgICAgIGRlYnVnKCJQYXNzaW5nIGFu
IGludmFsaWQga2V5IGludG8gcmlnaHRCb3VuZChbXSkiKTsKLSAgICAgICAgd2Via2l0SURCS2V5
UmFuZ2UucmlnaHRCb3VuZChbXSk7CisgICAgICAgIGRlYnVnKCJQYXNzaW5nIGFuIGludmFsaWQg
a2V5IGludG8gdXBwZXJCb3VuZChbXSkiKTsKKyAgICAgICAgd2Via2l0SURCS2V5UmFuZ2UudXBw
ZXJCb3VuZChbXSk7CiAgICAgICAgIHRlc3RGYWlsZWQoIk5vIGV4Y2VwdGlvbiB0aHJvd24iKTsK
ICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgIHRlc3RQYXNzZWQoIkNhdWdodCBleGNlcHRpb246
ICIgKyBlLnRvU3RyaW5nKCkpOwogICAgIH0KICAKICAgICB0cnkgewotICAgICAgICBkZWJ1Zygi
UGFzc2luZyBhbiBpbnZhbGlkIGtleSBpbnRvIGxlZnRCb3VuZChbXSkiKTsKLSAgICAgICAgd2Vi
a2l0SURCS2V5UmFuZ2UubGVmdEJvdW5kKFtdKTsKKyAgICAgICAgZGVidWcoIlBhc3NpbmcgYW4g
aW52YWxpZCBrZXkgaW50byBsb3dlckJvdW5kKFtdKSIpOworICAgICAgICB3ZWJraXRJREJLZXlS
YW5nZS5sb3dlckJvdW5kKFtdKTsKICAgICAgICAgdGVzdEZhaWxlZCgiTm8gZXhjZXB0aW9uIHRo
cm93biIpOwogICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgdGVzdFBhc3NlZCgiQ2F1Z2h0IGV4
Y2VwdGlvbjogIiArIGUudG9TdHJpbmcoKSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1jdXJzb3IuaHRtbCBiL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWN1cnNvci5odG1sCmluZGV4IDEzZDg1NWMuLjU3Zjhk
YWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3Jl
LWN1cnNvci5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0
b3JlLWN1cnNvci5odG1sCkBAIC0xNTksMTEgKzE1OSwxMSBAQCBmdW5jdGlvbiBydW5OZXh0VGVz
dCgpCiAgCiAgICAgdmFyIGtleVJhbmdlOwogICAgIGlmIChsb3dlciAhPT0gbnVsbCAmJiB1cHBl
ciAhPT0gbnVsbCkKLSAgICAgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5ib3VuZCh0
ZXN0RGF0YVtsb3dlcl0sIHRlc3REYXRhW3VwcGVyXSwgbG93ZXJJc09wZW4sIHVwcGVySXNPcGVu
KTsKKyAgICAgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5ib3VuZCh0ZXN0RGF0YVts
b3dlcl0sIHRlc3REYXRhW3VwcGVyXSwge2xvd2VyT3BlbjogbG93ZXJJc09wZW4sIHVwcGVyT3Bl
bjogdXBwZXJJc09wZW59KTsKICAgICBlbHNlIGlmIChsb3dlciAhPT0gbnVsbCkKLSAgICAgICAg
a2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5sZWZ0Qm91bmQodGVzdERhdGFbbG93ZXJdLCBs
b3dlcklzT3Blbik7CisgICAgICAgIGtleVJhbmdlID0gd2Via2l0SURCS2V5UmFuZ2UubG93ZXJC
b3VuZCh0ZXN0RGF0YVtsb3dlcl0sIGxvd2VySXNPcGVuKTsKICAgICBlbHNlCi0gICAgICAgIGtl
eVJhbmdlID0gd2Via2l0SURCS2V5UmFuZ2UucmlnaHRCb3VuZCh0ZXN0RGF0YVt1cHBlcl0sIHVw
cGVySXNPcGVuKTsKKyAgICAgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS51cHBlckJv
dW5kKHRlc3REYXRhW3VwcGVyXSwgdXBwZXJJc09wZW4pOwogIAogICAgIHZhciByZXF1ZXN0ID0g
b2JqZWN0U3RvcmUub3BlbkN1cnNvcih7cmFuZ2U6IGtleVJhbmdlLCBkaXJlY3Rpb246IGFzY2Vu
ZGluZyA/IHdlYmtpdElEQkN1cnNvci5ORVhUIDogd2Via2l0SURCQ3Vyc29yLlBSRVZ9KTsKICAg
ICByZXF1ZXN0Lm9uc3VjY2VzcyA9IGN1cnNvckl0ZXJhdGlvbjsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29wZW4tY3Vyc29yLmh0bWwgYi9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9vcGVuLWN1cnNvci5odG1sCmluZGV4IDEyYTM2ZmUuLjg5ZDhkNmMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29wZW4tY3Vyc29yLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb3Blbi1jdXJzb3IuaHRtbApA
QCAtMjUsNyArMjUsNyBAQCBmdW5jdGlvbiBlbXB0eUN1cnNvclN1Y2Nlc3MoKQogZnVuY3Rpb24g
b3BlbkVtcHR5Q3Vyc29yKCkKIHsKICAgICBkZWJ1ZygiT3BlbmluZyBhbiBlbXB0eSBjdXJzb3Iu
Iik7Ci0gICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5sZWZ0Qm91bmQoIkluZXhpc3Rl
bnRLZXkiKTsKKyAgICBrZXlSYW5nZSA9IHdlYmtpdElEQktleVJhbmdlLmxvd2VyQm91bmQoIklu
ZXhpc3RlbnRLZXkiKTsKICAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJvYmplY3RTdG9yZS5vcGVu
Q3Vyc29yKHtyYW5nZToga2V5UmFuZ2V9KSIpOwogICAgIHZlcmlmeVJlc3VsdChyZXN1bHQpOwog
ICAgIHJlc3VsdC5vbnN1Y2Nlc3MgPSBlbXB0eUN1cnNvclN1Y2Nlc3M7CkBAIC01NSw3ICs1NSw3
IEBAIGZ1bmN0aW9uIGN1cnNvclN1Y2Nlc3MoKQogZnVuY3Rpb24gb3BlbkN1cnNvcigpCiB7CiAg
ICAgZGVidWcoIk9wZW5pbmcgY3Vyc29yIik7Ci0gICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlS
YW5nZS5sZWZ0Qm91bmQoIm15S2V5Iik7CisgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5n
ZS5sb3dlckJvdW5kKCJteUtleSIpOwogICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coImV2ZW50LnNv
dXJjZS5vcGVuQ3Vyc29yKHtyYW5nZToga2V5UmFuZ2V9KSIpOwogICAgIHZlcmlmeVJlc3VsdChy
ZXN1bHQpOwogICAgIHJlc3VsdC5vbnN1Y2Nlc3MgPSBjdXJzb3JTdWNjZXNzOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvdHV0b3JpYWwuaHRtbCBiL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3R1dG9yaWFsLmh0bWwKaW5kZXggMmVmZjEyMS4uMjc1YjI1
YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvdHV0b3JpYWwuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi90dXRvcmlhbC5odG1sCkBAIC0z
OTUsOSArMzk1LDkgQEAgZnVuY3Rpb24gb25JbmRleEdldFN1Y2Nlc3MoKQogICAgIC8vIGRpZmZl
cmVudCBJREJLZXlSYW5nZXMganVzdCB0byBkZW1vbnN0cmF0ZSBob3cgdG8gdXNlIHRoZW0sIGJ1
dCB3ZSB3b24ndCBib3RoZXIgdG8gaGFuZGxlCiAgICAgLy8gdGhlIG9uc3VjY2VzcyBjb25kaXRp
b25zLgogICAgIHZhciBsbmFtZSA9IGV2ZW50LnNvdXJjZTsKLSAgICBsbmFtZS5vcGVuQ3Vyc29y
KHtyYW5nZTogSURCS2V5UmFuZ2UubGVmdEJvdW5kKCJEb2UiLCBmYWxzZSksIGRpcmVjdGlvbjog
SURCQ3Vyc29yLk5FWFRfTk9fRFVQTElDQVRFfSk7CisgICAgbG5hbWUub3BlbkN1cnNvcih7cmFu
Z2U6IElEQktleVJhbmdlLmxvd2VyQm91bmQoIkRvZSIsIGZhbHNlKSwgZGlyZWN0aW9uOiBJREJD
dXJzb3IuTkVYVF9OT19EVVBMSUNBVEV9KTsKICAgICBsbmFtZS5vcGVuQ3Vyc29yKHtkaXJlY3Rp
b246IElEQkN1cnNvci5QUkVWX05PX0RVUExJQ0FURX0pOwotICAgIGxuYW1lLm9wZW5DdXJzb3Io
e3JhbmdlOiBJREJLZXlSYW5nZS5yaWdodEJvdW5kKCJaWlpaIil9KTsKKyAgICBsbmFtZS5vcGVu
Q3Vyc29yKHtyYW5nZTogSURCS2V5UmFuZ2UudXBwZXJCb3VuZCgiWlpaWiIpfSk7CiAgICAgbG5h
bWUub3BlbkN1cnNvcih7cmFuZ2U6IElEQktleVJhbmdlLm9ubHkoIkRvZSIpLCBkaXJlY3Rpb246
IElEQkN1cnNvci5QUkVWfSk7CiAgICAgbG5hbWUub3BlbkN1cnNvcigpOwogICAgIGxuYW1lLm9w
ZW5LZXlDdXJzb3IoKTsKQEAgLTQxMSw3ICs0MTEsOCBAQCBmdW5jdGlvbiBvbkluZGV4R2V0U3Vj
Y2VzcygpCiBmdW5jdGlvbiBvbkFsbERvbmUoKQogewogICAgIGxvZygiRXZlcnl0aGluZyB3b3Jr
ZWQhIik7Ci0gICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgIGlmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVy
Lm5vdGlmeURvbmUoKTsKIH0KIAogLy8gVGhlIHdheSBzZXRWZXJzaW9uIGlzIHN1cHBvc2VkIHRv
IHdvcms6CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFn
ZW50LmNwcCBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuY3BwCmlu
ZGV4IDlkYWIyNGEuLmYzZTIyNDAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvclJlc291cmNlQWdlbnQuY3BwCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJl
c291cmNlQWdlbnQuY3BwCkBAIC0zNDYsNyArMzQ2LDcgQEAgdm9pZCBJbnNwZWN0b3JSZXNvdXJj
ZUFnZW50OjpkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUoRG9jdW1lbnRMb2FkZXIqIGxv
YWQKIAogdm9pZCBJbnNwZWN0b3JSZXNvdXJjZUFnZW50OjpzZXRJbml0aWFsQ29udGVudCh1bnNp
Z25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgc291cmNlU3RyaW5nLCBjb25zdCBT
dHJpbmcmIHR5cGUpCiB7Ci0gICAgbV9mcm9udGVuZC0+c2V0SW5pdGlhbENvbnRlbnQoaWRlbnRp
Zmllciwgc291cmNlU3RyaW5nLCB0eXBlKTsKKyAgICAvL21fZnJvbnRlbmQtPnNldEluaXRpYWxD
b250ZW50KGlkZW50aWZpZXIsIHNvdXJjZVN0cmluZywgdHlwZSk7CiB9CiAKIHN0YXRpYyBQYXNz
UmVmUHRyPEluc3BlY3Rvck9iamVjdD4gYnVpbGRPYmplY3RGb3JGcmFtZShGcmFtZSogZnJhbWUp
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3JhZ2UvSURCSW5kZXhCYWNrZW5kSW1wbC5jcHAgYi9X
ZWJDb3JlL3N0b3JhZ2UvSURCSW5kZXhCYWNrZW5kSW1wbC5jcHAKaW5kZXggODRhZjIzNC4uNTk3
YThjMiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkluZGV4QmFja2VuZEltcGwuY3Bw
CisrKyBiL1dlYkNvcmUvc3RvcmFnZS9JREJJbmRleEJhY2tlbmRJbXBsLmNwcApAQCAtNzMsMTMg
KzczLDEzIEBAIHZvaWQgSURCSW5kZXhCYWNrZW5kSW1wbDo6b3BlbkN1cnNvckludGVybmFsKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyCiAgICAgICAgICAgICAgICAgICsgKG9i
amVjdEN1cnNvciA/ICJPYmplY3RTdG9yZURhdGEudmFsdWUgIiA6ICJPYmplY3RTdG9yZURhdGEu
a2V5U3RyaW5nLCBPYmplY3RTdG9yZURhdGEua2V5RGF0ZSwgT2JqZWN0U3RvcmVEYXRhLmtleU51
bWJlciAiKQogICAgICAgICAgICAgICAgICArICJGUk9NIEluZGV4RGF0YSBJTk5FUiBKT0lOIE9i
amVjdFN0b3JlRGF0YSBPTiBJbmRleERhdGEub2JqZWN0U3RvcmVEYXRhSWQgPSBPYmplY3RTdG9y
ZURhdGEuaWQgV0hFUkUgIjsKIAotICAgIGJvb2wgbGVmdEJvdW5kID0gcmFuZ2UgJiYgKHJhbmdl
LT5mbGFncygpICYgSURCS2V5UmFuZ2U6OkxFRlRfQk9VTkQgfHwgcmFuZ2UtPmZsYWdzKCkgPT0g
SURCS2V5UmFuZ2U6OlNJTkdMRSk7Ci0gICAgYm9vbCByaWdodEJvdW5kID0gcmFuZ2UgJiYgKHJh
bmdlLT5mbGFncygpICYgSURCS2V5UmFuZ2U6OlJJR0hUX0JPVU5EIHx8IHJhbmdlLT5mbGFncygp
ID09IElEQktleVJhbmdlOjpTSU5HTEUpOworICAgIGJvb2wgbG93ZXJCb3VuZCA9IHJhbmdlICYm
IHJhbmdlLT5sb3dlcigpOworICAgIGJvb2wgdXBwZXJCb3VuZCA9IHJhbmdlICYmIHJhbmdlLT51
cHBlcigpOwogICAgIAotICAgIGlmIChsZWZ0Qm91bmQpCi0gICAgICAgIHNxbCArPSByYW5nZS0+
bGVmdCgpLT5sZWZ0Q3Vyc29yV2hlcmVGcmFnbWVudChyYW5nZS0+bGVmdFdoZXJlQ2xhdXNlQ29t
cGFyaXNvbk9wZXJhdG9yKCksICJJbmRleERhdGEuIik7Ci0gICAgaWYgKHJpZ2h0Qm91bmQpCi0g
ICAgICAgIHNxbCArPSByYW5nZS0+cmlnaHQoKS0+cmlnaHRDdXJzb3JXaGVyZUZyYWdtZW50KHJh
bmdlLT5yaWdodFdoZXJlQ2xhdXNlQ29tcGFyaXNvbk9wZXJhdG9yKCksICJJbmRleERhdGEuIik7
CisgICAgaWYgKGxvd2VyQm91bmQpCisgICAgICAgIHNxbCArPSByYW5nZS0+bG93ZXIoKS0+bG93
ZXJDdXJzb3JXaGVyZUZyYWdtZW50KHJhbmdlLT5sb3dlcldoZXJlQ2xhdXNlQ29tcGFyaXNvbk9w
ZXJhdG9yKCksICJJbmRleERhdGEuIik7CisgICAgaWYgKHVwcGVyQm91bmQpCisgICAgICAgIHNx
bCArPSByYW5nZS0+dXBwZXIoKS0+dXBwZXJDdXJzb3JXaGVyZUZyYWdtZW50KHJhbmdlLT51cHBl
cldoZXJlQ2xhdXNlQ29tcGFyaXNvbk9wZXJhdG9yKCksICJJbmRleERhdGEuIik7CiAgICAgc3Fs
ICs9ICJJbmRleERhdGEuaW5kZXhJZCA9ID8gT1JERVIgQlkgIjsKIAogICAgIElEQkN1cnNvcjo6
RGlyZWN0aW9uIGRpcmVjdGlvbiA9IHN0YXRpY19jYXN0PElEQkN1cnNvcjo6RGlyZWN0aW9uPih1
bnR5cGVkRGlyZWN0aW9uKTsKQEAgLTkzLDEwICs5MywxMCBAQCB2b2lkIElEQkluZGV4QmFja2Vu
ZEltcGw6Om9wZW5DdXJzb3JJbnRlcm5hbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1Jl
ZlB0cgogICAgIEFTU0VSVF9VTlVTRUQob2ssIG9rKTsgLy8gRklYTUU6IEJldHRlciBlcnJvciBo
YW5kbGluZz8KIAogICAgIGludCBpbmRleENvbHVtbiA9IDE7Ci0gICAgaWYgKGxlZnRCb3VuZCkK
LSAgICAgICAgaW5kZXhDb2x1bW4gKz0gcmFuZ2UtPmxlZnQoKS0+YmluZCgqcXVlcnksIGluZGV4
Q29sdW1uKTsKLSAgICBpZiAocmlnaHRCb3VuZCkKLSAgICAgICAgaW5kZXhDb2x1bW4gKz0gcmFu
Z2UtPnJpZ2h0KCktPmJpbmQoKnF1ZXJ5LCBpbmRleENvbHVtbik7CisgICAgaWYgKGxvd2VyQm91
bmQpCisgICAgICAgIGluZGV4Q29sdW1uICs9IHJhbmdlLT5sb3dlcigpLT5iaW5kKCpxdWVyeSwg
aW5kZXhDb2x1bW4pOworICAgIGlmICh1cHBlckJvdW5kKQorICAgICAgICBpbmRleENvbHVtbiAr
PSByYW5nZS0+dXBwZXIoKS0+YmluZCgqcXVlcnksIGluZGV4Q29sdW1uKTsKICAgICBxdWVyeS0+
YmluZEludDY0KGluZGV4Q29sdW1uLCBpbmRleC0+aWQoKSk7CiAKICAgICBpZiAocXVlcnktPnN0
ZXAoKSAhPSBTUUxSZXN1bHRSb3cpIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJL
ZXkuY3BwIGIvV2ViQ29yZS9zdG9yYWdlL0lEQktleS5jcHAKaW5kZXggOGU0MTFiNy4uNGY4Mjg3
YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQktleS5jcHAKKysrIGIvV2ViQ29yZS9z
dG9yYWdlL0lEQktleS5jcHAKQEAgLTEwNSw3ICsxMDUsNyBAQCBTdHJpbmcgSURCS2V5Ojp3aGVy
ZVN5bnRheChTdHJpbmcgcXVhbGlmaWVkVGFibGVOYW1lKSBjb25zdAogICAgIHJldHVybiAiIjsK
IH0KIAotU3RyaW5nIElEQktleTo6bGVmdEN1cnNvcldoZXJlRnJhZ21lbnQoU3RyaW5nIGNvbXBh
cmlzb25PcGVyYXRvciwgU3RyaW5nIHF1YWxpZmllZFRhYmxlTmFtZSkKK1N0cmluZyBJREJLZXk6
Omxvd2VyQ3Vyc29yV2hlcmVGcmFnbWVudChTdHJpbmcgY29tcGFyaXNvbk9wZXJhdG9yLCBTdHJp
bmcgcXVhbGlmaWVkVGFibGVOYW1lKQogewogICAgIHN3aXRjaCAobV90eXBlKSB7CiAgICAgY2Fz
ZSBTdHJpbmdUeXBlOgpAQCAtMTIyLDcgKzEyMiw3IEBAIFN0cmluZyBJREJLZXk6OmxlZnRDdXJz
b3JXaGVyZUZyYWdtZW50KFN0cmluZyBjb21wYXJpc29uT3BlcmF0b3IsIFN0cmluZyBxdWFsaWZp
CiAgICAgcmV0dXJuICIiOwogfQogCi1TdHJpbmcgSURCS2V5OjpyaWdodEN1cnNvcldoZXJlRnJh
Z21lbnQoU3RyaW5nIGNvbXBhcmlzb25PcGVyYXRvciwgU3RyaW5nIHF1YWxpZmllZFRhYmxlTmFt
ZSkKK1N0cmluZyBJREJLZXk6OnVwcGVyQ3Vyc29yV2hlcmVGcmFnbWVudChTdHJpbmcgY29tcGFy
aXNvbk9wZXJhdG9yLCBTdHJpbmcgcXVhbGlmaWVkVGFibGVOYW1lKQogewogICAgIHN3aXRjaCAo
bV90eXBlKSB7CiAgICAgY2FzZSBTdHJpbmdUeXBlOgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9y
YWdlL0lEQktleS5oIGIvV2ViQ29yZS9zdG9yYWdlL0lEQktleS5oCmluZGV4IGIzMDJmZDcuLjlh
Mjc3NDIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJLZXkuaAorKysgYi9XZWJDb3Jl
L3N0b3JhZ2UvSURCS2V5LmgKQEAgLTc4LDggKzc4LDggQEAgcHVibGljOgogCiAgICAgYm9vbCBp
c0VxdWFsKElEQktleSogb3RoZXIpOwogICAgIFN0cmluZyB3aGVyZVN5bnRheChTdHJpbmcgcXVh
bGlmaWVkVGFibGVOYW1lID0gIiIpIGNvbnN0OwotICAgIFN0cmluZyBsZWZ0Q3Vyc29yV2hlcmVG
cmFnbWVudChTdHJpbmcgY29tcGFyaXNvbk9wZXJhdG9yLCBTdHJpbmcgcXVhbGlmaWVkVGFibGVO
YW1lID0gIiIpOwotICAgIFN0cmluZyByaWdodEN1cnNvcldoZXJlRnJhZ21lbnQoU3RyaW5nIGNv
bXBhcmlzb25PcGVyYXRvciwgU3RyaW5nIHF1YWxpZmllZFRhYmxlTmFtZSA9ICIiKTsKKyAgICBT
dHJpbmcgbG93ZXJDdXJzb3JXaGVyZUZyYWdtZW50KFN0cmluZyBjb21wYXJpc29uT3BlcmF0b3Is
IFN0cmluZyBxdWFsaWZpZWRUYWJsZU5hbWUgPSAiIik7CisgICAgU3RyaW5nIHVwcGVyQ3Vyc29y
V2hlcmVGcmFnbWVudChTdHJpbmcgY29tcGFyaXNvbk9wZXJhdG9yLCBTdHJpbmcgcXVhbGlmaWVk
VGFibGVOYW1lID0gIiIpOwogICAgIGludCBiaW5kKFNRTGl0ZVN0YXRlbWVudCYgcXVlcnksIGlu
dCBjb2x1bW4pIGNvbnN0OwogICAgIHZvaWQgYmluZFdpdGhOdWxscyhTUUxpdGVTdGF0ZW1lbnQm
IHF1ZXJ5LCBpbnQgYmFzZUNvbHVtbikgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3Rv
cmFnZS9JREJLZXlSYW5nZS5jcHAgYi9XZWJDb3JlL3N0b3JhZ2UvSURCS2V5UmFuZ2UuY3BwCmlu
ZGV4IDZjNjEyY2MuLjU3YTVmOGQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJLZXlS
YW5nZS5jcHAKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQktleVJhbmdlLmNwcApAQCAtMzIsNzMg
KzMyLDUzIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotSURCS2V5UmFuZ2U6OklEQktleVJh
bmdlKFBhc3NSZWZQdHI8SURCS2V5PiBsZWZ0LCBQYXNzUmVmUHRyPElEQktleT4gcmlnaHQsIHVu
c2lnbmVkIHNob3J0IGZsYWdzKQotICAgIDogbV9sZWZ0KGxlZnQpCi0gICAgLCBtX3JpZ2h0KHJp
Z2h0KQotICAgICwgbV9mbGFncyhmbGFncykKK0lEQktleVJhbmdlOjpJREJLZXlSYW5nZShQYXNz
UmVmUHRyPElEQktleT4gbG93ZXIsIFBhc3NSZWZQdHI8SURCS2V5PiB1cHBlciwgYm9vbCBsb3dl
ck9wZW4sIGJvb2wgdXBwZXJPcGVuKQorICAgIDogbV9sb3dlcihsb3dlcikKKyAgICAsIG1fdXBw
ZXIodXBwZXIpCisgICAgLCBtX2xvd2VyT3Blbihsb3dlck9wZW4pCisgICAgLCBtX3VwcGVyT3Bl
bih1cHBlck9wZW4pCiB7CiB9CiAKIFBhc3NSZWZQdHI8SURCS2V5UmFuZ2U+IElEQktleVJhbmdl
Ojpvbmx5KFBhc3NSZWZQdHI8SURCS2V5PiBwcnBWYWx1ZSkKIHsKICAgICBSZWZQdHI8SURCS2V5
PiB2YWx1ZSA9IHBycFZhbHVlOwotICAgIHJldHVybiBJREJLZXlSYW5nZTo6Y3JlYXRlKHZhbHVl
LCB2YWx1ZSwgSURCS2V5UmFuZ2U6OlNJTkdMRSk7CisgICAgcmV0dXJuIElEQktleVJhbmdlOjpj
cmVhdGUodmFsdWUsIHZhbHVlLCBmYWxzZSwgZmFsc2UpOwogfQogCi1QYXNzUmVmUHRyPElEQktl
eVJhbmdlPiBJREJLZXlSYW5nZTo6bGVmdEJvdW5kKFBhc3NSZWZQdHI8SURCS2V5PiBib3VuZCwg
Ym9vbCBvcGVuKQorUGFzc1JlZlB0cjxJREJLZXlSYW5nZT4gSURCS2V5UmFuZ2U6Omxvd2VyQm91
bmQoUGFzc1JlZlB0cjxJREJLZXk+IGJvdW5kLCBib29sIG9wZW4pCiB7Ci0gICAgdW5zaWduZWQg
c2hvcnQgZmxhZ3MgPSBJREJLZXlSYW5nZTo6TEVGVF9CT1VORDsKLSAgICBpZiAob3BlbikKLSAg
ICAgICAgZmxhZ3MgfD0gSURCS2V5UmFuZ2U6OkxFRlRfT1BFTjsKLSAgICByZXR1cm4gSURCS2V5
UmFuZ2U6OmNyZWF0ZShib3VuZCwgSURCS2V5OjpjcmVhdGUoKSwgZmxhZ3MpOworICAgIHJldHVy
biBJREJLZXlSYW5nZTo6Y3JlYXRlKGJvdW5kLCBJREJLZXk6OmNyZWF0ZSgpLCBvcGVuLCBmYWxz
ZSk7CiB9CiAKLVBhc3NSZWZQdHI8SURCS2V5UmFuZ2U+IElEQktleVJhbmdlOjpyaWdodEJvdW5k
KFBhc3NSZWZQdHI8SURCS2V5PiBib3VuZCwgYm9vbCBvcGVuKQorUGFzc1JlZlB0cjxJREJLZXlS
YW5nZT4gSURCS2V5UmFuZ2U6OnVwcGVyQm91bmQoUGFzc1JlZlB0cjxJREJLZXk+IGJvdW5kLCBi
b29sIG9wZW4pCiB7Ci0gICAgdW5zaWduZWQgc2hvcnQgZmxhZ3MgPSBJREJLZXlSYW5nZTo6UklH
SFRfQk9VTkQ7Ci0gICAgaWYgKG9wZW4pCi0gICAgICAgIGZsYWdzIHw9IElEQktleVJhbmdlOjpS
SUdIVF9PUEVOOwotICAgIHJldHVybiBJREJLZXlSYW5nZTo6Y3JlYXRlKElEQktleTo6Y3JlYXRl
KCksIGJvdW5kLCBmbGFncyk7CisgICAgcmV0dXJuIElEQktleVJhbmdlOjpjcmVhdGUoSURCS2V5
OjpjcmVhdGUoKSwgYm91bmQsIGZhbHNlLCBvcGVuKTsKIH0KIAotUGFzc1JlZlB0cjxJREJLZXlS
YW5nZT4gSURCS2V5UmFuZ2U6OmJvdW5kKFBhc3NSZWZQdHI8SURCS2V5PiBsZWZ0LCBQYXNzUmVm
UHRyPElEQktleT4gcmlnaHQsIGJvb2wgb3BlbkxlZnQsIGJvb2wgb3BlblJpZ2h0KQorUGFzc1Jl
ZlB0cjxJREJLZXlSYW5nZT4gSURCS2V5UmFuZ2U6OmJvdW5kKFBhc3NSZWZQdHI8SURCS2V5PiBs
b3dlciwgUGFzc1JlZlB0cjxJREJLZXk+IHVwcGVyLCBjb25zdCBPcHRpb25zT2JqZWN0JiBvcHRp
b25zKQogewotICAgIHVuc2lnbmVkIHNob3J0IGZsYWdzID0gSURCS2V5UmFuZ2U6OkxFRlRfQk9V
TkQgfCBJREJLZXlSYW5nZTo6UklHSFRfQk9VTkQ7Ci0gICAgaWYgKG9wZW5MZWZ0KQotICAgICAg
ICBmbGFncyB8PSBJREJLZXlSYW5nZTo6TEVGVF9PUEVOOwotICAgIGlmIChvcGVuUmlnaHQpCi0g
ICAgICAgIGZsYWdzIHw9IElEQktleVJhbmdlOjpSSUdIVF9PUEVOOwotICAgIHJldHVybiBJREJL
ZXlSYW5nZTo6Y3JlYXRlKGxlZnQsIHJpZ2h0LCBmbGFncyk7CisgICAgYm9vbCBsb3dlck9wZW4g
PSBmYWxzZTsKKyAgICBib29sIHVwcGVyT3BlbiA9IGZhbHNlOworICAgIG9wdGlvbnMuZ2V0S2V5
Qm9vbCgibG93ZXJPcGVuIiwgbG93ZXJPcGVuKTsKKyAgICBvcHRpb25zLmdldEtleUJvb2woInVw
cGVyT3BlbiIsIHVwcGVyT3Blbik7CisgICAgcmV0dXJuIElEQktleVJhbmdlOjpjcmVhdGUobG93
ZXIsIHVwcGVyLCBsb3dlck9wZW4sIHVwcGVyT3Blbik7CiB9CiAKLVN0cmluZyBJREJLZXlSYW5n
ZTo6bGVmdFdoZXJlQ2xhdXNlQ29tcGFyaXNvbk9wZXJhdG9yKCkgY29uc3QKK1N0cmluZyBJREJL
ZXlSYW5nZTo6bG93ZXJXaGVyZUNsYXVzZUNvbXBhcmlzb25PcGVyYXRvcigpIGNvbnN0CiB7Ci0g
ICAgaWYgKG1fZmxhZ3MgJiBMRUZUX09QRU4pCisgICAgQVNTRVJUKG1fbG93ZXIpOworICAgIGlm
IChtX2xvd2VyT3BlbikKICAgICAgICAgcmV0dXJuICI8IjsKLQotICAgIGlmIChtX2ZsYWdzICYg
TEVGVF9CT1VORCkKLSAgICAgICAgcmV0dXJuICI8PSI7Ci0KLSAgICBpZiAobV9mbGFncyA9PSBT
SU5HTEUpCi0gICAgICAgIHJldHVybiAiPSI7Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
LSAgICByZXR1cm4gIiI7CisgICAgcmV0dXJuICI8PSI7CiB9CiAKLVN0cmluZyBJREJLZXlSYW5n
ZTo6cmlnaHRXaGVyZUNsYXVzZUNvbXBhcmlzb25PcGVyYXRvcigpIGNvbnN0CitTdHJpbmcgSURC
S2V5UmFuZ2U6OnVwcGVyV2hlcmVDbGF1c2VDb21wYXJpc29uT3BlcmF0b3IoKSBjb25zdAogewot
ICAgIGlmIChtX2ZsYWdzICYgUklHSFRfT1BFTikKKyAgICBBU1NFUlQobV91cHBlcik7CisgICAg
aWYgKG1fdXBwZXJPcGVuKQogICAgICAgICByZXR1cm4gIjwiOwotCi0gICAgaWYgKG1fZmxhZ3Mg
JiBSSUdIVF9CT1VORCkKLSAgICAgICAgcmV0dXJuICI8PSI7Ci0KLSAgICBpZiAobV9mbGFncyA9
PSBTSU5HTEUpCi0gICAgICAgIHJldHVybiAiPSI7Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICByZXR1cm4gIiI7CisgICAgcmV0dXJuICI8PSI7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJLZXlSYW5nZS5oIGIvV2Vi
Q29yZS9zdG9yYWdlL0lEQktleVJhbmdlLmgKaW5kZXggZDI0NmViYy4uOGFmNDhmZSAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQktleVJhbmdlLmgKKysrIGIvV2ViQ29yZS9zdG9yYWdl
L0lEQktleVJhbmdlLmgKQEAgLTI5LDYgKzI5LDcgQEAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKIAogI2luY2x1ZGUgIklEQktleS5oIgorI2luY2x1ZGUgIk9wdGlvbnNPYmplY3QuaCIK
ICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4K
IApAQCAtMzYsNDEgKzM3LDMzIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSURCS2V5
UmFuZ2UgOiBwdWJsaWMgVGhyZWFkU2FmZVNoYXJlZDxJREJLZXlSYW5nZT4gewogcHVibGljOgot
ICAgIC8vIEtlZXAgaW4gc3luYyB3aXRoIHdoYXQncyBpbiB0aGUgLmlkbCBmaWxlLgotICAgIGVu
dW0gRmxhZ3MgewotICAgICAgICBTSU5HTEUgPSAwLAotICAgICAgICBMRUZUX09QRU4gPSAxLAot
ICAgICAgICBSSUdIVF9PUEVOID0gMiwKLSAgICAgICAgTEVGVF9CT1VORCA9IDQsCi0gICAgICAg
IFJJR0hUX0JPVU5EID0gOCwKLSAgICB9OwotCi0gICAgc3RhdGljIFBhc3NSZWZQdHI8SURCS2V5
UmFuZ2U+IGNyZWF0ZShQYXNzUmVmUHRyPElEQktleT4gbGVmdCwgUGFzc1JlZlB0cjxJREJLZXk+
IHJpZ2h0LCB1bnNpZ25lZCBzaG9ydCBmbGFncykKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxJREJL
ZXlSYW5nZT4gY3JlYXRlKFBhc3NSZWZQdHI8SURCS2V5PiBsb3dlciwgUGFzc1JlZlB0cjxJREJL
ZXk+IHVwcGVyLCBib29sIGxvd2VyT3BlbiwgYm9vbCB1cHBlck9wZW4pCiAgICAgewotICAgICAg
ICByZXR1cm4gYWRvcHRSZWYobmV3IElEQktleVJhbmdlKGxlZnQsIHJpZ2h0LCBmbGFncykpOwor
ICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IElEQktleVJhbmdlKGxvd2VyLCB1cHBlciwgbG93
ZXJPcGVuLCB1cHBlck9wZW4pKTsKICAgICB9Ci0KICAgICB+SURCS2V5UmFuZ2UoKSB7IH0KIAog
Ci0gICAgUGFzc1JlZlB0cjxJREJLZXk+IGxlZnQoKSBjb25zdCB7IHJldHVybiBtX2xlZnQ7IH0K
LSAgICBQYXNzUmVmUHRyPElEQktleT4gcmlnaHQoKSBjb25zdCB7IHJldHVybiBtX3JpZ2h0OyB9
Ci0gICAgdW5zaWduZWQgc2hvcnQgZmxhZ3MoKSBjb25zdCB7IHJldHVybiBtX2ZsYWdzOyB9Cisg
ICAgUGFzc1JlZlB0cjxJREJLZXk+IGxvd2VyKCkgY29uc3QgeyByZXR1cm4gbV9sb3dlcjsgfQor
ICAgIFBhc3NSZWZQdHI8SURCS2V5PiB1cHBlcigpIGNvbnN0IHsgcmV0dXJuIG1fdXBwZXI7IH0K
KyAgICBib29sIGxvd2VyT3BlbigpIGNvbnN0IHsgcmV0dXJuIG1fbG93ZXJPcGVuOyB9CisgICAg
Ym9vbCB1cHBlck9wZW4oKSBjb25zdCB7IHJldHVybiBtX3VwcGVyT3BlbjsgfQogCi0gICAgU3Ry
aW5nIGxlZnRXaGVyZUNsYXVzZUNvbXBhcmlzb25PcGVyYXRvcigpIGNvbnN0OwotICAgIFN0cmlu
ZyByaWdodFdoZXJlQ2xhdXNlQ29tcGFyaXNvbk9wZXJhdG9yKCkgY29uc3Q7CisgICAgU3RyaW5n
IGxvd2VyV2hlcmVDbGF1c2VDb21wYXJpc29uT3BlcmF0b3IoKSBjb25zdDsKKyAgICBTdHJpbmcg
dXBwZXJXaGVyZUNsYXVzZUNvbXBhcmlzb25PcGVyYXRvcigpIGNvbnN0OwogCiAgICAgc3RhdGlj
IFBhc3NSZWZQdHI8SURCS2V5UmFuZ2U+IG9ubHkoUGFzc1JlZlB0cjxJREJLZXk+IHZhbHVlKTsK
LSAgICBzdGF0aWMgUGFzc1JlZlB0cjxJREJLZXlSYW5nZT4gbGVmdEJvdW5kKFBhc3NSZWZQdHI8
SURCS2V5PiBib3VuZCwgYm9vbCBvcGVuID0gZmFsc2UpOwotICAgIHN0YXRpYyBQYXNzUmVmUHRy
PElEQktleVJhbmdlPiByaWdodEJvdW5kKFBhc3NSZWZQdHI8SURCS2V5PiBib3VuZCwgYm9vbCBv
cGVuID0gZmFsc2UpOwotICAgIHN0YXRpYyBQYXNzUmVmUHRyPElEQktleVJhbmdlPiBib3VuZChQ
YXNzUmVmUHRyPElEQktleT4gbGVmdCwgUGFzc1JlZlB0cjxJREJLZXk+IHJpZ2h0LCBib29sIG9w
ZW5MZWZ0ID0gZmFsc2UsIGJvb2wgb3BlblJpZ2h0ID0gZmFsc2UpOworICAgIHN0YXRpYyBQYXNz
UmVmUHRyPElEQktleVJhbmdlPiBsb3dlckJvdW5kKFBhc3NSZWZQdHI8SURCS2V5PiBib3VuZCwg
Ym9vbCBvcGVuID0gZmFsc2UpOworICAgIHN0YXRpYyBQYXNzUmVmUHRyPElEQktleVJhbmdlPiB1
cHBlckJvdW5kKFBhc3NSZWZQdHI8SURCS2V5PiBib3VuZCwgYm9vbCBvcGVuID0gZmFsc2UpOwor
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPElEQktleVJhbmdlPiBib3VuZChQYXNzUmVmUHRyPElEQktl
eT4gbG93ZXIsIFBhc3NSZWZQdHI8SURCS2V5PiB1cHBlciwgY29uc3QgT3B0aW9uc09iamVjdCYg
PSBPcHRpb25zT2JqZWN0KCkpOwogCiBwcml2YXRlOgotICAgIElEQktleVJhbmdlKFBhc3NSZWZQ
dHI8SURCS2V5PiBsZWZ0LCBQYXNzUmVmUHRyPElEQktleT4gcmlnaHQsIHVuc2lnbmVkIHNob3J0
IGZsYWdzKTsKKyAgICBJREJLZXlSYW5nZShQYXNzUmVmUHRyPElEQktleT4gbG93ZXIsIFBhc3NS
ZWZQdHI8SURCS2V5PiB1cHBlciwgYm9vbCBsb3dlck9wZW4sIGJvb2wgdXBwZXJPcGVuKTsKIAot
ICAgIFJlZlB0cjxJREJLZXk+IG1fbGVmdDsKLSAgICBSZWZQdHI8SURCS2V5PiBtX3JpZ2h0Owot
ICAgIHVuc2lnbmVkIHNob3J0IG1fZmxhZ3M7CisgICAgUmVmUHRyPElEQktleT4gbV9sb3dlcjsK
KyAgICBSZWZQdHI8SURCS2V5PiBtX3VwcGVyOworICAgIGJvb2wgbV9sb3dlck9wZW47CisgICAg
Ym9vbCBtX3VwcGVyT3BlbjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvc3RvcmFnZS9JREJLZXlSYW5nZS5pZGwgYi9XZWJDb3JlL3N0b3JhZ2UvSURC
S2V5UmFuZ2UuaWRsCmluZGV4IDhlNGQ2MWYuLmQ3ZmEwNzUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
c3RvcmFnZS9JREJLZXlSYW5nZS5pZGwKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQktleVJhbmdl
LmlkbApAQCAtMjgsMjIgKzI4LDE2IEBAIG1vZHVsZSBzdG9yYWdlIHsKICAgICBpbnRlcmZhY2Ug
WwogICAgICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFCiAgICAgXSBJREJLZXlSYW5n
ZSB7Ci0gICAgICAgIC8vIEtlZXAgaW4gc3luYyB3aXRoIHdoYXQncyBpbiB0aGUgLmggZmlsZS4K
LSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgU0lOR0xFID0gMDsKLSAgICAgICAgY29uc3Qg
dW5zaWduZWQgc2hvcnQgTEVGVF9PUEVOID0gMTsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hv
cnQgUklHSFRfT1BFTiA9IDI7Ci0gICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IExFRlRfQk9V
TkQgPSA0OwotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBSSUdIVF9CT1VORCA9IDg7Ci0K
LSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIElEQktleSBsZWZ0OwotICAgICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgSURCS2V5IHJpZ2h0OwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5z
aWduZWQgc2hvcnQgZmxhZ3M7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBJREJLZXkgbG93
ZXI7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBJREJLZXkgdXBwZXI7CisgICAgICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGxvd2VyT3BlbjsKKyAgICAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIGJvb2xlYW4gdXBwZXJPcGVuOwogCiAgICAgICAgIC8vIEZJWE1FOiBNYWtlIENsYXNz
TWV0aG9kIHdvcmsgZm9yIEpTQyBhcyB3ZWxsLgogICAgICAgICBbQ2xhc3NNZXRob2RdIElEQktl
eVJhbmdlIG9ubHkoaW4gSURCS2V5IHZhbHVlKTsKLSAgICAgICAgW0NsYXNzTWV0aG9kXSBJREJL
ZXlSYW5nZSBsZWZ0Qm91bmQoaW4gSURCS2V5IGJvdW5kLCBpbiBbT3B0aW9uYWxdIGJvb2xlYW4g
b3Blbik7Ci0gICAgICAgIFtDbGFzc01ldGhvZF0gSURCS2V5UmFuZ2UgcmlnaHRCb3VuZChpbiBJ
REJLZXkgYm91bmQsIGluIFtPcHRpb25hbF0gYm9vbGVhbiBvcGVuKTsKLSAgICAgICAgW0NsYXNz
TWV0aG9kXSBJREJLZXlSYW5nZSBib3VuZChpbiBJREJLZXkgbGVmdCwgaW4gSURCS2V5IHJpZ2h0
LCBpbiBbT3B0aW9uYWxdIGJvb2xlYW4gb3BlbkxlZnQsIGluIFtPcHRpb25hbF0gYm9vbGVhbiBv
cGVuUmlnaHQpOworICAgICAgICBbQ2xhc3NNZXRob2RdIElEQktleVJhbmdlIGxvd2VyQm91bmQo
aW4gSURCS2V5IGJvdW5kLCBpbiBbT3B0aW9uYWxdIGJvb2xlYW4gb3Blbik7CisgICAgICAgIFtD
bGFzc01ldGhvZF0gSURCS2V5UmFuZ2UgdXBwZXJCb3VuZChpbiBJREJLZXkgYm91bmQsIGluIFtP
cHRpb25hbF0gYm9vbGVhbiBvcGVuKTsKKyAgICAgICAgW0NsYXNzTWV0aG9kXSBJREJLZXlSYW5n
ZSBib3VuZChpbiBJREJLZXkgbG93ZXIsIGluIElEQktleSB1cHBlciwgaW4gW09wdGlvbmFsXSBP
cHRpb25zT2JqZWN0IG9wdGlvbnMpOwogICAgIH07CiAKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUv
c3RvcmFnZS9JREJPYmplY3RTdG9yZUJhY2tlbmRJbXBsLmNwcCBiL1dlYkNvcmUvc3RvcmFnZS9J
REJPYmplY3RTdG9yZUJhY2tlbmRJbXBsLmNwcAppbmRleCA3ZmM0Zjk4Li41NmFhMTY3IDEwMDY0
NAotLS0gYS9XZWJDb3JlL3N0b3JhZ2UvSURCT2JqZWN0U3RvcmVCYWNrZW5kSW1wbC5jcHAKKysr
IGIvV2ViQ29yZS9zdG9yYWdlL0lEQk9iamVjdFN0b3JlQmFja2VuZEltcGwuY3BwCkBAIC00MDMs
MTUgKzQwMywxNSBAQCB2b2lkIElEQk9iamVjdFN0b3JlQmFja2VuZEltcGw6Om9wZW5DdXJzb3Io
UGFzc1JlZlB0cjxJREJLZXlSYW5nZT4gcHJwUmFuZ2UsIHVucwogCiB2b2lkIElEQk9iamVjdFN0
b3JlQmFja2VuZEltcGw6Om9wZW5DdXJzb3JJbnRlcm5hbChTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiwgUGFzc1JlZlB0cjxJREJPYmplY3RTdG9yZUJhY2tlbmRJbXBsPiBvYmplY3RTdG9yZSwgUGFz
c1JlZlB0cjxJREJLZXlSYW5nZT4gcmFuZ2UsIHVuc2lnbmVkIHNob3J0IHRtcERpcmVjdGlvbiwg
UGFzc1JlZlB0cjxJREJDYWxsYmFja3M+IGNhbGxiYWNrcywgUGFzc1JlZlB0cjxJREJUcmFuc2Fj
dGlvbkJhY2tlbmRJbnRlcmZhY2U+IHRyYW5zYWN0aW9uKQogewotICAgIGJvb2wgbGVmdEJvdW5k
ID0gcmFuZ2UgJiYgKHJhbmdlLT5mbGFncygpICYgSURCS2V5UmFuZ2U6OkxFRlRfQk9VTkQgfHwg
cmFuZ2UtPmZsYWdzKCkgPT0gSURCS2V5UmFuZ2U6OlNJTkdMRSk7Ci0gICAgYm9vbCByaWdodEJv
dW5kID0gcmFuZ2UgJiYgKHJhbmdlLT5mbGFncygpICYgSURCS2V5UmFuZ2U6OlJJR0hUX0JPVU5E
IHx8IHJhbmdlLT5mbGFncygpID09IElEQktleVJhbmdlOjpTSU5HTEUpOworICAgIGJvb2wgbG93
ZXJCb3VuZCA9IHJhbmdlICYmIHJhbmdlLT5sb3dlcigpOworICAgIGJvb2wgdXBwZXJCb3VuZCA9
IHJhbmdlICYmIHJhbmdlLT51cHBlcigpOwogCiAgICAgLy8gU2V2ZXJhbCBmaWxlcyBkZXBlbmQg
b24gdGhpcyBvcmRlciBvZiBzZWxlY3RzLgogICAgIFN0cmluZyBzcWwgPSAiU0VMRUNUIGlkLCBr
ZXlTdHJpbmcsIGtleURhdGUsIGtleU51bWJlciwgdmFsdWUgRlJPTSBPYmplY3RTdG9yZURhdGEg
V0hFUkUgIjsKLSAgICBpZiAobGVmdEJvdW5kKQotICAgICAgICBzcWwgKz0gcmFuZ2UtPmxlZnQo
KS0+bGVmdEN1cnNvcldoZXJlRnJhZ21lbnQocmFuZ2UtPmxlZnRXaGVyZUNsYXVzZUNvbXBhcmlz
b25PcGVyYXRvcigpKTsKLSAgICBpZiAocmlnaHRCb3VuZCkKLSAgICAgICAgc3FsICs9IHJhbmdl
LT5yaWdodCgpLT5yaWdodEN1cnNvcldoZXJlRnJhZ21lbnQocmFuZ2UtPnJpZ2h0V2hlcmVDbGF1
c2VDb21wYXJpc29uT3BlcmF0b3IoKSk7CisgICAgaWYgKGxvd2VyQm91bmQpCisgICAgICAgIHNx
bCArPSByYW5nZS0+bG93ZXIoKS0+bG93ZXJDdXJzb3JXaGVyZUZyYWdtZW50KHJhbmdlLT5sb3dl
cldoZXJlQ2xhdXNlQ29tcGFyaXNvbk9wZXJhdG9yKCkpOworICAgIGlmICh1cHBlckJvdW5kKQor
ICAgICAgICBzcWwgKz0gcmFuZ2UtPnVwcGVyKCktPnVwcGVyQ3Vyc29yV2hlcmVGcmFnbWVudChy
YW5nZS0+dXBwZXJXaGVyZUNsYXVzZUNvbXBhcmlzb25PcGVyYXRvcigpKTsKICAgICBzcWwgKz0g
Im9iamVjdFN0b3JlSWQgPSA/IE9SREVSIEJZICI7CiAKICAgICBJREJDdXJzb3I6OkRpcmVjdGlv
biBkaXJlY3Rpb24gPSBzdGF0aWNfY2FzdDxJREJDdXJzb3I6OkRpcmVjdGlvbj4odG1wRGlyZWN0
aW9uKTsKQEAgLTQyNSwxMCArNDI1LDEwIEBAIHZvaWQgSURCT2JqZWN0U3RvcmVCYWNrZW5kSW1w
bDo6b3BlbkN1cnNvckludGVybmFsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzCiAgICAg
QVNTRVJUX1VOVVNFRChvaywgb2spOyAvLyBGSVhNRTogQmV0dGVyIGVycm9yIGhhbmRsaW5nPwog
CiAgICAgaW50IGN1cnJlbnRDb2x1bW4gPSAxOwotICAgIGlmIChsZWZ0Qm91bmQpCi0gICAgICAg
IGN1cnJlbnRDb2x1bW4gKz0gcmFuZ2UtPmxlZnQoKS0+YmluZCgqcXVlcnksIGN1cnJlbnRDb2x1
bW4pOwotICAgIGlmIChyaWdodEJvdW5kKQotICAgICAgICBjdXJyZW50Q29sdW1uICs9IHJhbmdl
LT5yaWdodCgpLT5iaW5kKCpxdWVyeSwgY3VycmVudENvbHVtbik7CisgICAgaWYgKGxvd2VyQm91
bmQpCisgICAgICAgIGN1cnJlbnRDb2x1bW4gKz0gcmFuZ2UtPmxvd2VyKCktPmJpbmQoKnF1ZXJ5
LCBjdXJyZW50Q29sdW1uKTsKKyAgICBpZiAodXBwZXJCb3VuZCkKKyAgICAgICAgY3VycmVudENv
bHVtbiArPSByYW5nZS0+dXBwZXIoKS0+YmluZCgqcXVlcnksIGN1cnJlbnRDb2x1bW4pOwogICAg
IHF1ZXJ5LT5iaW5kSW50NjQoY3VycmVudENvbHVtbiwgb2JqZWN0U3RvcmUtPmlkKCkpOwogCiAg
ICAgaWYgKHF1ZXJ5LT5zdGVwKCkgIT0gU1FMUmVzdWx0Um93KSB7CmRpZmYgLS1naXQgYS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYklEQktleVJhbmdlLmggYi9XZWJLaXQvY2hyb21pdW0vcHVi
bGljL1dlYklEQktleVJhbmdlLmgKaW5kZXggODI5NTNjZS4uNmE5YzZkYSAxMDA2NDQKLS0tIGEv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJJREJLZXlSYW5nZS5oCisrKyBiL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViSURCS2V5UmFuZ2UuaApAQCAtNDEsMTQgKzQxLDIyIEBAIHB1YmxpYzoK
ICAgICB+V2ViSURCS2V5UmFuZ2UoKSB7IHJlc2V0KCk7IH0KIAogICAgIFdlYklEQktleVJhbmdl
KGNvbnN0IFdlYklEQktleVJhbmdlJiBrZXlSYW5nZSkgeyBhc3NpZ24oa2V5UmFuZ2UpOyB9Ci0g
ICAgV2ViSURCS2V5UmFuZ2UoY29uc3QgV2ViSURCS2V5JiBsZWZ0LCBjb25zdCBXZWJJREJLZXkm
IHJpZ2h0LCB1bnNpZ25lZCBzaG9ydCBmbGFncykgeyBhc3NpZ24obGVmdCwgcmlnaHQsIGZsYWdz
KTsgfQorICAgIFdlYklEQktleVJhbmdlKGNvbnN0IFdlYklEQktleSYgbG93ZXIsIGNvbnN0IFdl
YklEQktleSYgdXBwZXIsIGJvb2wgbG93ZXJPcGVuLCBib29sIHVwcGVyT3BlbikgeyBhc3NpZ24o
bG93ZXIsIHVwcGVyLCBsb3dlck9wZW4sIHVwcGVyT3Blbik7IH0KIAorICAgIC8vIEZJWE1FOiBS
ZW1vdmUgbmV4dCAzIG1ldGhvZHMgYWZ0ZXIgbmV4dCByb2xsLgorICAgIFdlYklEQktleVJhbmdl
KGNvbnN0IFdlYklEQktleSYgbG93ZXIsIGNvbnN0IFdlYklEQktleSYgdXBwZXIsIHVuc2lnbmVk
IHNob3J0IGZsYWdzKSB7IGFzc2lnbihsb3dlciwgdXBwZXIsIGZsYWdzKTsgfQorICAgIFdFQktJ
VF9BUEkgdm9pZCBhc3NpZ24oY29uc3QgV2ViSURCS2V5JiBsb3dlciwgY29uc3QgV2ViSURCS2V5
JiB1cHBlciwgdW5zaWduZWQgc2hvcnQgZmxhZ3MpOworICAgIFdFQktJVF9BUEkgdW5zaWduZWQg
c2hvcnQgZmxhZ3MoKSBjb25zdDsKICAgICBXRUJLSVRfQVBJIFdlYklEQktleSBsZWZ0KCkgY29u
c3Q7CiAgICAgV0VCS0lUX0FQSSBXZWJJREJLZXkgcmlnaHQoKSBjb25zdDsKLSAgICBXRUJLSVRf
QVBJIHVuc2lnbmVkIHNob3J0IGZsYWdzKCkgY29uc3Q7CisKKyAgICBXRUJLSVRfQVBJIFdlYklE
QktleSBsb3dlcigpIGNvbnN0OworICAgIFdFQktJVF9BUEkgV2ViSURCS2V5IHVwcGVyKCkgY29u
c3Q7CisgICAgV0VCS0lUX0FQSSBib29sIGxvd2VyT3BlbigpIGNvbnN0OworICAgIFdFQktJVF9B
UEkgYm9vbCB1cHBlck9wZW4oKSBjb25zdDsKIAogICAgIFdFQktJVF9BUEkgdm9pZCBhc3NpZ24o
Y29uc3QgV2ViSURCS2V5UmFuZ2UmKTsKLSAgICBXRUJLSVRfQVBJIHZvaWQgYXNzaWduKGNvbnN0
IFdlYklEQktleSYgbGVmdCwgY29uc3QgV2ViSURCS2V5JiByaWdodCwgdW5zaWduZWQgc2hvcnQg
ZmxhZ3MpOworICAgIFdFQktJVF9BUEkgdm9pZCBhc3NpZ24oY29uc3QgV2ViSURCS2V5JiBsb3dl
ciwgY29uc3QgV2ViSURCS2V5JiB1cHBlciwgYm9vbCBsb3dlck9wZW4sIGJvb2wgdXBwZXJPcGVu
KTsKICAgICBXRUJLSVRfQVBJIHZvaWQgcmVzZXQoKTsKIAogI2lmIFdFQktJVF9JTVBMRU1FTlRB
VElPTgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJREJLZXlSYW5nZS5jcHAg
Yi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklEQktleVJhbmdlLmNwcAppbmRleCA3MjBhZjVmLi5l
YzViN2MyIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklEQktleVJhbmdlLmNw
cAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYklEQktleVJhbmdlLmNwcApAQCAtMzksMTIg
KzM5LDI0IEBAIHZvaWQgV2ViSURCS2V5UmFuZ2U6OmFzc2lnbihjb25zdCBXZWJJREJLZXlSYW5n
ZSYgb3RoZXIpCiAgICAgbV9wcml2YXRlID0gb3RoZXIubV9wcml2YXRlOwogfQogCi12b2lkIFdl
YklEQktleVJhbmdlOjphc3NpZ24oY29uc3QgV2ViSURCS2V5JiBsZWZ0LCBjb25zdCBXZWJJREJL
ZXkmIHJpZ2h0LCB1bnNpZ25lZCBzaG9ydCBmbGFncykKK3ZvaWQgV2ViSURCS2V5UmFuZ2U6OmFz
c2lnbihjb25zdCBXZWJJREJLZXkmIGxvd2VyLCBjb25zdCBXZWJJREJLZXkmIHVwcGVyLCBib29s
IGxvd2VyT3BlbiwgYm9vbCB1cHBlck9wZW4pCiB7Ci0gICAgaWYgKGxlZnQudHlwZSgpID09IFdl
YklEQktleTo6SW52YWxpZFR5cGUgJiYgcmlnaHQudHlwZSgpID09IFdlYklEQktleTo6SW52YWxp
ZFR5cGUpCisgICAgaWYgKGxvd2VyLnR5cGUoKSA9PSBXZWJJREJLZXk6OkludmFsaWRUeXBlICYm
IHVwcGVyLnR5cGUoKSA9PSBXZWJJREJLZXk6OkludmFsaWRUeXBlKQogICAgICAgICBtX3ByaXZh
dGUgPSAwOwogICAgIGVsc2UKLSAgICAgICAgbV9wcml2YXRlID0gSURCS2V5UmFuZ2U6OmNyZWF0
ZShsZWZ0LCByaWdodCwgZmxhZ3MpOworICAgICAgICBtX3ByaXZhdGUgPSBJREJLZXlSYW5nZTo6
Y3JlYXRlKGxvd2VyLCB1cHBlciwgbG93ZXJPcGVuLCB1cHBlck9wZW4pOworfQorCisvLyBGSVhN
RTogUmVtb3ZlIHRoaXMgYWZ0ZXIgbmV4dCByb2xsLgordm9pZCBXZWJJREJLZXlSYW5nZTo6YXNz
aWduKGNvbnN0IFdlYklEQktleSYgbG93ZXIsIGNvbnN0IFdlYklEQktleSYgdXBwZXIsIHVuc2ln
bmVkIHNob3J0IGZsYWdzKQoreworICAgIGJvb2wgbG93ZXJPcGVuID0gISEoZmxhZ3MgJiAxKTsK
KyAgICBib29sIHVwcGVyT3BlbiA9ICEhKGZsYWdzICYgMik7CisKKyAgICBpZiAobG93ZXIudHlw
ZSgpID09IFdlYklEQktleTo6SW52YWxpZFR5cGUgJiYgdXBwZXIudHlwZSgpID09IFdlYklEQktl
eTo6SW52YWxpZFR5cGUpCisgICAgICAgIG1fcHJpdmF0ZSA9IDA7CisgICAgZWxzZQorICAgICAg
ICBtX3ByaXZhdGUgPSBJREJLZXlSYW5nZTo6Y3JlYXRlKGxvd2VyLCB1cHBlciwgbG93ZXJPcGVu
LCB1cHBlck9wZW4pOwogfQogCiB2b2lkIFdlYklEQktleVJhbmdlOjpyZXNldCgpCkBAIC01NCwy
MyArNjYsNTAgQEAgdm9pZCBXZWJJREJLZXlSYW5nZTo6cmVzZXQoKQogCiBXZWJJREJLZXkgV2Vi
SURCS2V5UmFuZ2U6OmxlZnQoKSBjb25zdAogeworICAgIHJldHVybiBsb3dlcigpOworfQorCitX
ZWJJREJLZXkgV2ViSURCS2V5UmFuZ2U6OnJpZ2h0KCkgY29uc3QKK3sKKyAgICByZXR1cm4gdXBw
ZXIoKTsKK30KKworV2ViSURCS2V5IFdlYklEQktleVJhbmdlOjpsb3dlcigpIGNvbnN0Cit7CiAg
ICAgaWYgKCFtX3ByaXZhdGUuZ2V0KCkpCiAgICAgICAgIHJldHVybiBXZWJJREJLZXk6OmNyZWF0
ZUludmFsaWQoKTsKLSAgICByZXR1cm4gbV9wcml2YXRlLT5sZWZ0KCk7CisgICAgcmV0dXJuIG1f
cHJpdmF0ZS0+bG93ZXIoKTsKIH0KIAotV2ViSURCS2V5IFdlYklEQktleVJhbmdlOjpyaWdodCgp
IGNvbnN0CitXZWJJREJLZXkgV2ViSURCS2V5UmFuZ2U6OnVwcGVyKCkgY29uc3QKIHsKICAgICBp
ZiAoIW1fcHJpdmF0ZS5nZXQoKSkKICAgICAgICAgcmV0dXJuIFdlYklEQktleTo6Y3JlYXRlSW52
YWxpZCgpOwotICAgIHJldHVybiBtX3ByaXZhdGUtPnJpZ2h0KCk7CisgICAgcmV0dXJuIG1fcHJp
dmF0ZS0+dXBwZXIoKTsKK30KKworYm9vbCBXZWJJREJLZXlSYW5nZTo6bG93ZXJPcGVuKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9wcml2YXRlLmdldCgpICYmIG1fcHJpdmF0ZS0+bG93ZXJPcGVu
KCk7CiB9CiAKK2Jvb2wgV2ViSURCS2V5UmFuZ2U6OnVwcGVyT3BlbigpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fcHJpdmF0ZS5nZXQoKSAmJiBtX3ByaXZhdGUtPnVwcGVyT3BlbigpOworfQorCisv
LyBGSVhNRTogUmVtb3ZlIHRoaXMgYWZ0ZXIgbmV4dCByb2xsLgogdW5zaWduZWQgc2hvcnQgV2Vi
SURCS2V5UmFuZ2U6OmZsYWdzKCkgY29uc3QKIHsKICAgICBpZiAoIW1fcHJpdmF0ZS5nZXQoKSkK
ICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIG1fcHJpdmF0ZS0+ZmxhZ3MoKTsKKworICAg
IHVuc2lnbmVkIHNob3J0IGZsYWdzID0gMDsKKyAgICBpZiAobV9wcml2YXRlLT5sb3dlck9wZW4o
KSkKKyAgICAgICAgZmxhZ3MgfD0gMTsKKyAgICBpZiAobV9wcml2YXRlLT51cHBlck9wZW4oKSkK
KyAgICAgICAgZmxhZ3MgfD0gMjsKKyAgICByZXR1cm4gZmxhZ3M7CiB9CiAKIFdlYklEQktleVJh
bmdlOjpXZWJJREJLZXlSYW5nZShjb25zdCBQYXNzUmVmUHRyPElEQktleVJhbmdlPiYgdmFsdWUp
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74917</attachid>
            <date>2010-11-26 04:28:50 -0800</date>
            <delta_ts>2010-11-26 08:30:15 -0800</delta_ts>
            <desc>done</desc>
            <filename>a</filename>
            <type>text/plain</type>
            <size>47078</size>
            <attacher name="Jeremy Orlow">jorlow</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxZjFkMjYxLi5jMDk3M2Q1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTAtMTEt
MjYgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBJREJLZXlSYW5nZSBtYXRjaCB0
aGUgc3BlYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTAxMDUKKworICAgICAgICBSZW1vdmUgZmxhZ3MgYW5kIGluc3RlYWQgYWRkIHR3byBib29sZWFu
cyBmb3IgYmVpbmcgb3Blbi4KKyAgICAgICAgQ2hhbmdlIGxlZnQgdG8gbG93ZXIgYW5kIHJpZ2h0
IHRvIHVwcGVyIGV2ZXJ5d2hlcmUuCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9jb25z
dGFudHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50
cy5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWN1cnNvci5odG1sOgor
ICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2tleXJhbmdlLWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9rZXlyYW5nZS5odG1sOgorICAgICAgICAqIHN0b3JhZ2Uv
aW5kZXhlZGRiL29iamVjdHN0b3JlLWN1cnNvci5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5k
ZXhlZGRiL29wZW4tY3Vyc29yLmh0bWw6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvdHV0
b3JpYWwuaHRtbDoKKwogMjAxMC0xMS0yNSAgSmVyZW15IE9ybG93ICA8am9ybG93QGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jb25zdGFudHMtZXhwZWN0ZWQudHh0CmluZGV4
IDAxYjhmYTEuLmVhZDA5MzcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhl
ZGRiL2NvbnN0YW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvY29uc3RhbnRzLWV4cGVjdGVkLnR4dApAQCAtMywxMSArMyw2IEBAIFRlc3QgSW5kZXhl
ZERCJ3MgY29uc3RhbnRzLgogT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgogCiAKLVBBU1Mgd2Vi
a2l0SURCS2V5UmFuZ2UuU0lOR0xFIGlzIDAKLVBBU1Mgd2Via2l0SURCS2V5UmFuZ2UuTEVGVF9P
UEVOIGlzIDEKLVBBU1Mgd2Via2l0SURCS2V5UmFuZ2UuUklHSFRfT1BFTiBpcyAyCi1QQVNTIHdl
YmtpdElEQktleVJhbmdlLkxFRlRfQk9VTkQgaXMgNAotUEFTUyB3ZWJraXRJREJLZXlSYW5nZS5S
SUdIVF9CT1VORCBpcyA4CiBQQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlVOS05PV05f
RVJSIGlzIDEKIFBBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9OX1RSQU5TSUVOVF9F
UlIgaXMgMQogUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIGlz
IDIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy5o
dG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLmh0bWwKaW5kZXgg
NTQyZWQzMi4uNzkwOWUyNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvY29uc3RhbnRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29u
c3RhbnRzLmh0bWwKQEAgLTE2LDEyICsxNiw2IEBAIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpCiAKIGZ1bmN0aW9uIHRlc3QoKQogewotICAgIHNob3VsZEJlKCJ3ZWJraXRJREJLZXlS
YW5nZS5TSU5HTEUiLCAiMCIpOwotICAgIHNob3VsZEJlKCJ3ZWJraXRJREJLZXlSYW5nZS5MRUZU
X09QRU4iLCAiMSIpOwotICAgIHNob3VsZEJlKCJ3ZWJraXRJREJLZXlSYW5nZS5SSUdIVF9PUEVO
IiwgIjIiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCS2V5UmFuZ2UuTEVGVF9CT1VORCIsICI0
Iik7Ci0gICAgc2hvdWxkQmUoIndlYmtpdElEQktleVJhbmdlLlJJR0hUX0JPVU5EIiwgIjgiKTsK
LQogICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5VTktOT1dOX0VSUiIs
ICIxIik7CiAgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PTl9UUkFO
U0lFTlRfRVJSIiwgIjEiKTsKICAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRp
b24uTk9UX0ZPVU5EX0VSUiIsICIyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9pbmRleC1jdXJzb3IuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhl
ZGRiL2luZGV4LWN1cnNvci5odG1sCmluZGV4IDZhODE1MTQuLmZiMzE0N2QgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWN1cnNvci5odG1sCisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWN1cnNvci5odG1sCkBAIC0xODEsMTEg
KzE4MSwxMSBAQCBmdW5jdGlvbiBydW5OZXh0VGVzdCgpCiAgCiAgICAgdmFyIGtleVJhbmdlOwog
ICAgIGlmIChsb3dlciAhPT0gbnVsbCAmJiB1cHBlciAhPT0gbnVsbCkKLSAgICAgICAga2V5UmFu
Z2UgPSB3ZWJraXRJREJLZXlSYW5nZS5ib3VuZCh0ZXN0RGF0YVtsb3dlcl0sIHRlc3REYXRhW3Vw
cGVyXSwgbG93ZXJJc09wZW4sIHVwcGVySXNPcGVuKTsKKyAgICAgICAga2V5UmFuZ2UgPSB3ZWJr
aXRJREJLZXlSYW5nZS5ib3VuZCh0ZXN0RGF0YVtsb3dlcl0sIHRlc3REYXRhW3VwcGVyXSwge2xv
d2VyT3BlbjogbG93ZXJJc09wZW4sIHVwcGVyT3BlbjogdXBwZXJJc09wZW59KTsKICAgICBlbHNl
IGlmIChsb3dlciAhPT0gbnVsbCkKLSAgICAgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5n
ZS5sZWZ0Qm91bmQodGVzdERhdGFbbG93ZXJdLCBsb3dlcklzT3Blbik7CisgICAgICAgIGtleVJh
bmdlID0gd2Via2l0SURCS2V5UmFuZ2UubG93ZXJCb3VuZCh0ZXN0RGF0YVtsb3dlcl0sIGxvd2Vy
SXNPcGVuKTsKICAgICBlbHNlCi0gICAgICAgIGtleVJhbmdlID0gd2Via2l0SURCS2V5UmFuZ2Uu
cmlnaHRCb3VuZCh0ZXN0RGF0YVt1cHBlcl0sIHVwcGVySXNPcGVuKTsKKyAgICAgICAga2V5UmFu
Z2UgPSB3ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKHRlc3REYXRhW3VwcGVyXSwgdXBwZXJJ
c09wZW4pOwogIAogICAgIHZhciByZXF1ZXN0ID0gaW5kZXhPYmplY3Qub3BlbktleUN1cnNvcih7
cmFuZ2U6IGtleVJhbmdlLCBkaXJlY3Rpb246IGFzY2VuZGluZyA/IHdlYmtpdElEQkN1cnNvci5O
RVhUIDogd2Via2l0SURCQ3Vyc29yLlBSRVZ9KTsKICAgICByZXF1ZXN0Lm9uc3VjY2VzcyA9IGN1
cnNvckl0ZXJhdGlvbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L2tleXJhbmdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2tl
eXJhbmdlLWV4cGVjdGVkLnR4dAppbmRleCAxYTdkZmZmLi5mYWFjOTM3IDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9rZXlyYW5nZS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIva2V5cmFuZ2UtZXhwZWN0ZWQudHh0CkBAIC0z
LDE0OSArMywxNTUgQEAgVGVzdCBJbmRleGVkREIncyBLZXlSYW5nZS4KIE9uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KIAogCi1QQVNTICdTSU5HTEUnIGluIHdlYmtpdElEQktleVJhbmdlIGlzIHRy
dWUKLVBBU1MgJ0xFRlRfT1BFTicgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQotUEFTUyAn
UklHSFRfT1BFTicgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQotUEFTUyAnTEVGVF9CT1VO
RCcgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQotUEFTUyAnUklHSFRfQk9VTkQnIGluIHdl
YmtpdElEQktleVJhbmdlIGlzIHRydWUKLVBBU1MgJ2xlZnQnIGluIHdlYmtpdElEQktleVJhbmdl
IGlzIGZhbHNlCi1QQVNTICdyaWdodCcgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgZmFsc2UKLVBB
U1MgJ2ZsYWdzJyBpbiB3ZWJraXRJREJLZXlSYW5nZSBpcyBmYWxzZQorUEFTUyAnbG93ZXInIGlu
IHdlYmtpdElEQktleVJhbmdlIGlzIGZhbHNlCitQQVNTICd1cHBlcicgaW4gd2Via2l0SURCS2V5
UmFuZ2UgaXMgZmFsc2UKK1BBU1MgJ2xvd2VyT3BlbicgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMg
ZmFsc2UKK1BBU1MgJ3VwcGVyT3BlbicgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgZmFsc2UKIFBB
U1MgJ29ubHknIGluIHdlYmtpdElEQktleVJhbmdlIGlzIHRydWUKLVBBU1MgJ2xlZnRCb3VuZCcg
aW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1ZQotUEFTUyAncmlnaHRCb3VuZCcgaW4gd2Via2l0
SURCS2V5UmFuZ2UgaXMgdHJ1ZQorUEFTUyAnbG93ZXJCb3VuZCcgaW4gd2Via2l0SURCS2V5UmFu
Z2UgaXMgdHJ1ZQorUEFTUyAndXBwZXJCb3VuZCcgaW4gd2Via2l0SURCS2V5UmFuZ2UgaXMgdHJ1
ZQogUEFTUyAnYm91bmQnIGluIHdlYmtpdElEQktleVJhbmdlIGlzIHRydWUKIAogaW5zdGFuY2Ug
PSB3ZWJraXRJREJLZXlSYW5nZS5vbmx5KDEpCi1QQVNTICdTSU5HTEUnIGluIGluc3RhbmNlIGlz
IHRydWUKLVBBU1MgJ0xFRlRfT1BFTicgaW4gaW5zdGFuY2UgaXMgdHJ1ZQotUEFTUyAnUklHSFRf
T1BFTicgaW4gaW5zdGFuY2UgaXMgdHJ1ZQotUEFTUyAnTEVGVF9CT1VORCcgaW4gaW5zdGFuY2Ug
aXMgdHJ1ZQotUEFTUyAnUklHSFRfQk9VTkQnIGluIGluc3RhbmNlIGlzIHRydWUKLVBBU1MgJ2xl
ZnQnIGluIGluc3RhbmNlIGlzIHRydWUKLVBBU1MgJ3JpZ2h0JyBpbiBpbnN0YW5jZSBpcyB0cnVl
Ci1QQVNTICdmbGFncycgaW4gaW5zdGFuY2UgaXMgdHJ1ZQorUEFTUyAnbG93ZXInIGluIGluc3Rh
bmNlIGlzIHRydWUKK1BBU1MgJ3VwcGVyJyBpbiBpbnN0YW5jZSBpcyB0cnVlCitQQVNTICdsb3dl
ck9wZW4nIGluIGluc3RhbmNlIGlzIHRydWUKK1BBU1MgJ3VwcGVyT3BlbicgaW4gaW5zdGFuY2Ug
aXMgdHJ1ZQogUEFTUyAnb25seScgaW4gaW5zdGFuY2UgaXMgZmFsc2UKLVBBU1MgJ2xlZnRCb3Vu
ZCcgaW4gaW5zdGFuY2UgaXMgZmFsc2UKLVBBU1MgJ3JpZ2h0Qm91bmQnIGluIGluc3RhbmNlIGlz
IGZhbHNlCitQQVNTICdsb3dlckJvdW5kJyBpbiBpbnN0YW5jZSBpcyBmYWxzZQorUEFTUyAndXBw
ZXJCb3VuZCcgaW4gaW5zdGFuY2UgaXMgZmFsc2UKIFBBU1MgJ2JvdW5kJyBpbiBpbnN0YW5jZSBp
cyBmYWxzZQogCiB3ZWJraXRJREJLZXlSYW5nZS5vbmx5KDEpCi1QQVNTIGtleVJhbmdlLmxlZnQg
aXMgMQotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyAxCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlzIGtl
eVJhbmdlLlNJTkdMRQorUEFTUyBrZXlSYW5nZS5sb3dlciBpcyAxCitQQVNTIGtleVJhbmdlLnVw
cGVyIGlzIDEKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCitQQVNTIGtleVJhbmdl
LnVwcGVyT3BlbiBpcyBmYWxzZQogd2Via2l0SURCS2V5UmFuZ2Uub25seSgnYScpCi1QQVNTIGtl
eVJhbmdlLmxlZnQgaXMgJ2EnCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzICdhJwotUEFTUyBrZXlS
YW5nZS5mbGFncyBpcyBrZXlSYW5nZS5TSU5HTEUKLXdlYmtpdElEQktleVJhbmdlLmxlZnRCb3Vu
ZCgxMCx0cnVlKQotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzIDEwCi1QQVNTIGtleVJhbmdlLnJpZ2h0
IGlzIG51bGwKLVBBU1Mga2V5UmFuZ2UuZmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9PUEVOIHwga2V5
UmFuZ2UuTEVGVF9CT1VORAotd2Via2l0SURCS2V5UmFuZ2UubGVmdEJvdW5kKDExLGZhbHNlKQot
UEFTUyBrZXlSYW5nZS5sZWZ0IGlzIDExCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzIG51bGwKLVBB
U1Mga2V5UmFuZ2UuZmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9CT1VORAotd2Via2l0SURCS2V5UmFu
Z2UubGVmdEJvdW5kKDEyLHVuZGVmaW5lZCkKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyAxMgotUEFT
UyBrZXlSYW5nZS5yaWdodCBpcyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlzIGtleVJhbmdl
LkxFRlRfQk9VTkQKLXdlYmtpdElEQktleVJhbmdlLmxlZnRCb3VuZCgnYWEnLHRydWUpCi1QQVNT
IGtleVJhbmdlLmxlZnQgaXMgJ2FhJwotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyBudWxsCi1QQVNT
IGtleVJhbmdlLmZsYWdzIGlzIGtleVJhbmdlLkxFRlRfT1BFTiB8IGtleVJhbmdlLkxFRlRfQk9V
TkQKLXdlYmtpdElEQktleVJhbmdlLmxlZnRCb3VuZCgnYWInLGZhbHNlKQotUEFTUyBrZXlSYW5n
ZS5sZWZ0IGlzICdhYicKLVBBU1Mga2V5UmFuZ2UucmlnaHQgaXMgbnVsbAotUEFTUyBrZXlSYW5n
ZS5mbGFncyBpcyBrZXlSYW5nZS5MRUZUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5sZWZ0Qm91
bmQoJ2FjJyx1bmRlZmluZWQpCi1QQVNTIGtleVJhbmdlLmxlZnQgaXMgJ2FjJwotUEFTUyBrZXlS
YW5nZS5yaWdodCBpcyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlzIGtleVJhbmdlLkxFRlRf
Qk9VTkQKLXdlYmtpdElEQktleVJhbmdlLnJpZ2h0Qm91bmQoMjAsdHJ1ZSkKLVBBU1Mga2V5UmFu
Z2UucmlnaHQgaXMgMjAKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyBudWxsCi1QQVNTIGtleVJhbmdl
LmZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5nZS5SSUdIVF9CT1VORAotd2Vi
a2l0SURCS2V5UmFuZ2UucmlnaHRCb3VuZCgyMSxmYWxzZSkKLVBBU1Mga2V5UmFuZ2UucmlnaHQg
aXMgMjEKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlz
IGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5yaWdodEJvdW5kKDIyLHVu
ZGVmaW5lZCkKLVBBU1Mga2V5UmFuZ2UucmlnaHQgaXMgMjIKLVBBU1Mga2V5UmFuZ2UubGVmdCBp
cyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJr
aXRJREJLZXlSYW5nZS5yaWdodEJvdW5kKCdiYScsdHJ1ZSkKLVBBU1Mga2V5UmFuZ2UucmlnaHQg
aXMgJ2JhJwotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzIG51bGwKLVBBU1Mga2V5UmFuZ2UuZmxhZ3Mg
aXMga2V5UmFuZ2UuUklHSFRfT1BFTiB8IGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJL
ZXlSYW5nZS5yaWdodEJvdW5kKCdiYicsZmFsc2UpCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzICdi
YicKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyBudWxsCi1QQVNTIGtleVJhbmdlLmZsYWdzIGlzIGtl
eVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5yaWdodEJvdW5kKCdiYycsdW5k
ZWZpbmVkKQotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyAnYmMnCi1QQVNTIGtleVJhbmdlLmxlZnQg
aXMgbnVsbAotUEFTUyBrZXlSYW5nZS5mbGFncyBpcyBrZXlSYW5nZS5SSUdIVF9CT1VORAotd2Vi
a2l0SURCS2V5UmFuZ2UuYm91bmQoMzAsNDAsdW5kZWZpbmVkLHVuZGVmaW5lZCkKLVBBU1Mga2V5
UmFuZ2UubGVmdCBpcyAzMAotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyA0MAotUEFTUyBsZWZ0Rmxh
Z3MgaXMga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtleVJhbmdlLlJJ
R0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgzMSw0MSxmYWxzZSxmYWxzZSkKLVBB
U1Mga2V5UmFuZ2UubGVmdCBpcyAzMQotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyA0MQotUEFTUyBs
ZWZ0RmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtleVJh
bmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgzMiw0MixmYWxzZSx0cnVl
KQotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzIDMyCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzIDQyCi1Q
QVNTIGxlZnRGbGFncyBpcyBrZXlSYW5nZS5MRUZUX0JPVU5ECi1QQVNTIHJpZ2h0RmxhZ3MgaXMg
a2V5UmFuZ2UuUklHSFRfT1BFTiB8IGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJLZXlS
YW5nZS5ib3VuZCgzMyw0Myx0cnVlLGZhbHNlKQotUEFTUyBrZXlSYW5nZS5sZWZ0IGlzIDMzCi1Q
QVNTIGtleVJhbmdlLnJpZ2h0IGlzIDQzCi1QQVNTIGxlZnRGbGFncyBpcyBrZXlSYW5nZS5MRUZU
X09QRU4gfCBrZXlSYW5nZS5MRUZUX0JPVU5ECi1QQVNTIHJpZ2h0RmxhZ3MgaXMga2V5UmFuZ2Uu
UklHSFRfQk9VTkQKLXdlYmtpdElEQktleVJhbmdlLmJvdW5kKDM0LDQ0LHRydWUsdHJ1ZSkKLVBB
U1Mga2V5UmFuZ2UubGVmdCBpcyAzNAotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyA0NAotUEFTUyBs
ZWZ0RmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9PUEVOIHwga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFT
UyByaWdodEZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5nZS5SSUdIVF9CT1VO
RAotd2Via2l0SURCS2V5UmFuZ2UuYm91bmQoJ2FhYScsJ2FiYScsZmFsc2UsZmFsc2UpCi1QQVNT
IGtleVJhbmdlLmxlZnQgaXMgJ2FhYScKLVBBU1Mga2V5UmFuZ2UucmlnaHQgaXMgJ2FiYScKLVBB
U1MgbGVmdEZsYWdzIGlzIGtleVJhbmdlLkxFRlRfQk9VTkQKLVBBU1MgcmlnaHRGbGFncyBpcyBr
ZXlSYW5nZS5SSUdIVF9CT1VORAotd2Via2l0SURCS2V5UmFuZ2UuYm91bmQoJ2FhYicsJ2FiYics
dW5kZWZpbmVkLHVuZGVmaW5lZCkKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyAnYWFiJwotUEFTUyBr
ZXlSYW5nZS5yaWdodCBpcyAnYWJiJwotUEFTUyBsZWZ0RmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9C
T1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJL
ZXlSYW5nZS5ib3VuZCgnYWFjJywnYWJjJyxmYWxzZSxmYWxzZSkKLVBBU1Mga2V5UmFuZ2UubGVm
dCBpcyAnYWFjJwotUEFTUyBrZXlSYW5nZS5yaWdodCBpcyAnYWJjJwotUEFTUyBsZWZ0RmxhZ3Mg
aXMga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtleVJhbmdlLlJJR0hU
X0JPVU5ECi13ZWJraXRJREJLZXlSYW5nZS5ib3VuZCgnYWFkJywnYWJkJyxmYWxzZSx0cnVlKQot
UEFTUyBrZXlSYW5nZS5sZWZ0IGlzICdhYWQnCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzICdhYmQn
Ci1QQVNTIGxlZnRGbGFncyBpcyBrZXlSYW5nZS5MRUZUX0JPVU5ECi1QQVNTIHJpZ2h0RmxhZ3Mg
aXMga2V5UmFuZ2UuUklHSFRfT1BFTiB8IGtleVJhbmdlLlJJR0hUX0JPVU5ECi13ZWJraXRJREJL
ZXlSYW5nZS5ib3VuZCgnYWFlJywnYWJlJyx0cnVlLGZhbHNlKQotUEFTUyBrZXlSYW5nZS5sZWZ0
IGlzICdhYWUnCi1QQVNTIGtleVJhbmdlLnJpZ2h0IGlzICdhYmUnCi1QQVNTIGxlZnRGbGFncyBp
cyBrZXlSYW5nZS5MRUZUX09QRU4gfCBrZXlSYW5nZS5MRUZUX0JPVU5ECi1QQVNTIHJpZ2h0Rmxh
Z3MgaXMga2V5UmFuZ2UuUklHSFRfQk9VTkQKLXdlYmtpdElEQktleVJhbmdlLmJvdW5kKCdhYWYn
LCdhYmYnLHRydWUsdHJ1ZSkKLVBBU1Mga2V5UmFuZ2UubGVmdCBpcyAnYWFmJwotUEFTUyBrZXlS
YW5nZS5yaWdodCBpcyAnYWJmJwotUEFTUyBsZWZ0RmxhZ3MgaXMga2V5UmFuZ2UuTEVGVF9PUEVO
IHwga2V5UmFuZ2UuTEVGVF9CT1VORAotUEFTUyByaWdodEZsYWdzIGlzIGtleVJhbmdlLlJJR0hU
X09QRU4gfCBrZXlSYW5nZS5SSUdIVF9CT1VORAorUEFTUyBrZXlSYW5nZS5sb3dlciBpcyAnYScK
K1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgJ2EnCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyBm
YWxzZQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdl
Lmxvd2VyQm91bmQoMTAsdHJ1ZSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgMTAKK1BBU1Mga2V5
UmFuZ2UubG93ZXJPcGVuIGlzIHRydWUKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgbnVsbAorUEFT
UyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLmxvd2VyQm91
bmQoMTEsZmFsc2UpCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDExCitQQVNTIGtleVJhbmdlLmxv
d2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlciBpcyBudWxsCitQQVNTIGtleVJh
bmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UubG93ZXJCb3VuZCgxMix1
bmRlZmluZWQpCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDEyCitQQVNTIGtleVJhbmdlLmxvd2Vy
T3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlciBpcyBudWxsCitQQVNTIGtleVJhbmdl
LnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UubG93ZXJCb3VuZCgnYWEnLHRy
dWUpCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzICdhYScKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVu
IGlzIHRydWUKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgbnVsbAorUEFTUyBrZXlSYW5nZS51cHBl
ck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLmxvd2VyQm91bmQoJ2FiJyxmYWxzZSkK
K1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgJ2FiJworUEFTUyBrZXlSYW5nZS5sb3dlck9wZW4gaXMg
ZmFsc2UKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgbnVsbAorUEFTUyBrZXlSYW5nZS51cHBlck9w
ZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLmxvd2VyQm91bmQoJ2FjJyx1bmRlZmluZWQp
CitQQVNTIGtleVJhbmdlLmxvd2VyIGlzICdhYycKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlz
IGZhbHNlCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzIG51bGwKK1BBU1Mga2V5UmFuZ2UudXBwZXJP
cGVuIGlzIGZhbHNlCit3ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKDIwLHRydWUpCitQQVNT
IGtleVJhbmdlLnVwcGVyIGlzIDIwCitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyB0cnVlCitQ
QVNTIGtleVJhbmdlLmxvd2VyIGlzIG51bGwKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZh
bHNlCit3ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKDIxLGZhbHNlKQorUEFTUyBrZXlSYW5n
ZS51cHBlciBpcyAyMQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK1BBU1Mga2V5
UmFuZ2UubG93ZXIgaXMgbnVsbAorUEFTUyBrZXlSYW5nZS5sb3dlck9wZW4gaXMgZmFsc2UKK3dl
YmtpdElEQktleVJhbmdlLnVwcGVyQm91bmQoMjIsdW5kZWZpbmVkKQorUEFTUyBrZXlSYW5nZS51
cHBlciBpcyAyMgorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK1BBU1Mga2V5UmFu
Z2UubG93ZXIgaXMgbnVsbAorUEFTUyBrZXlSYW5nZS5sb3dlck9wZW4gaXMgZmFsc2UKK3dlYmtp
dElEQktleVJhbmdlLnVwcGVyQm91bmQoJ2JhJyx0cnVlKQorUEFTUyBrZXlSYW5nZS51cHBlciBp
cyAnYmEnCitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyB0cnVlCitQQVNTIGtleVJhbmdlLmxv
d2VyIGlzIG51bGwKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCit3ZWJraXRJREJL
ZXlSYW5nZS51cHBlckJvdW5kKCdiYicsZmFsc2UpCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzICdi
YicKK1BBU1Mga2V5UmFuZ2UudXBwZXJPcGVuIGlzIGZhbHNlCitQQVNTIGtleVJhbmdlLmxvd2Vy
IGlzIG51bGwKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCit3ZWJraXRJREJLZXlS
YW5nZS51cHBlckJvdW5kKCdiYycsdW5kZWZpbmVkKQorUEFTUyBrZXlSYW5nZS51cHBlciBpcyAn
YmMnCitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS5sb3dl
ciBpcyBudWxsCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5
UmFuZ2UuYm91bmQoMzAsNDAsIHtsb3dlck9wZW46IHVuZGVmaW5lZCwgdXBwZXJPcGVuOnVuZGVm
aW5lZH0pCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDMwCitQQVNTIGtleVJhbmdlLnVwcGVyIGlz
IDQwCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBl
ck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktleVJhbmdlLmJvdW5kKDMxLDQxLCB7bG93ZXJPcGVu
OiBmYWxzZSwgdXBwZXJPcGVuOmZhbHNlfSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgMzEKK1BB
U1Mga2V5UmFuZ2UudXBwZXIgaXMgNDEKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNl
CitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91
bmQoMzIsNDIsIHtsb3dlck9wZW46IGZhbHNlLCB1cHBlck9wZW46dHJ1ZX0pCitQQVNTIGtleVJh
bmdlLmxvd2VyIGlzIDMyCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzIDQyCitQQVNTIGtleVJhbmdl
Lmxvd2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgdHJ1ZQord2Vi
a2l0SURCS2V5UmFuZ2UuYm91bmQoMzMsNDMsIHtsb3dlck9wZW46IHRydWUsIHVwcGVyT3Blbjpm
YWxzZX0pCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzIDMzCitQQVNTIGtleVJhbmdlLnVwcGVyIGlz
IDQzCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyB0cnVlCitQQVNTIGtleVJhbmdlLnVwcGVy
T3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQoMzQsNDQsIHtsb3dlck9wZW46
IHRydWUsIHVwcGVyT3Blbjp0cnVlfSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgMzQKK1BBU1Mg
a2V5UmFuZ2UudXBwZXIgaXMgNDQKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIHRydWUKK1BB
U1Mga2V5UmFuZ2UudXBwZXJPcGVuIGlzIHRydWUKK3dlYmtpdElEQktleVJhbmdlLmJvdW5kKCdh
YWEnLCdhYmEnLCB7bG93ZXJPcGVuOiBmYWxzZSwgdXBwZXJPcGVuOmZhbHNlfSkKK1BBU1Mga2V5
UmFuZ2UubG93ZXIgaXMgJ2FhYScKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgJ2FiYScKK1BBU1Mg
a2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCitQQVNTIGtleVJhbmdlLnVwcGVyT3BlbiBpcyBm
YWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQoJ2FhYicsJ2FiYicsIHtsb3dlck9wZW46IHVu
ZGVmaW5lZCwgdXBwZXJPcGVuOnVuZGVmaW5lZH0pCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzICdh
YWInCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzICdhYmInCitQQVNTIGtleVJhbmdlLmxvd2VyT3Bl
biBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgZmFsc2UKK3dlYmtpdElEQktl
eVJhbmdlLmJvdW5kKCdhYWMnLCdhYmMnLCB7bG93ZXJPcGVuOiBmYWxzZSwgdXBwZXJPcGVuOmZh
bHNlfSkKK1BBU1Mga2V5UmFuZ2UubG93ZXIgaXMgJ2FhYycKK1BBU1Mga2V5UmFuZ2UudXBwZXIg
aXMgJ2FiYycKK1BBU1Mga2V5UmFuZ2UubG93ZXJPcGVuIGlzIGZhbHNlCitQQVNTIGtleVJhbmdl
LnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQoJ2FhZCcsJ2FiZCcs
IHtsb3dlck9wZW46IGZhbHNlLCB1cHBlck9wZW46dHJ1ZX0pCitQQVNTIGtleVJhbmdlLmxvd2Vy
IGlzICdhYWQnCitQQVNTIGtleVJhbmdlLnVwcGVyIGlzICdhYmQnCitQQVNTIGtleVJhbmdlLmxv
d2VyT3BlbiBpcyBmYWxzZQorUEFTUyBrZXlSYW5nZS51cHBlck9wZW4gaXMgdHJ1ZQord2Via2l0
SURCS2V5UmFuZ2UuYm91bmQoJ2FhZScsJ2FiZScsIHtsb3dlck9wZW46IHRydWUsIHVwcGVyT3Bl
bjpmYWxzZX0pCitQQVNTIGtleVJhbmdlLmxvd2VyIGlzICdhYWUnCitQQVNTIGtleVJhbmdlLnVw
cGVyIGlzICdhYmUnCitQQVNTIGtleVJhbmdlLmxvd2VyT3BlbiBpcyB0cnVlCitQQVNTIGtleVJh
bmdlLnVwcGVyT3BlbiBpcyBmYWxzZQord2Via2l0SURCS2V5UmFuZ2UuYm91bmQoJ2FhZicsJ2Fi
ZicsIHtsb3dlck9wZW46IHRydWUsIHVwcGVyT3Blbjp0cnVlfSkKK1BBU1Mga2V5UmFuZ2UubG93
ZXIgaXMgJ2FhZicKK1BBU1Mga2V5UmFuZ2UudXBwZXIgaXMgJ2FiZicKK1BBU1Mga2V5UmFuZ2Uu
bG93ZXJPcGVuIGlzIHRydWUKK1BBU1Mga2V5UmFuZ2UudXBwZXJPcGVuIGlzIHRydWUKIFBhc3Np
bmcgYW4gaW52YWxpZCBrZXkgaW50byBvbmx5KFtdKQogUEFTUyBDYXVnaHQgZXhjZXB0aW9uOiBF
cnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNlcHRpb24gMTcKLVBhc3NpbmcgYW4gaW52
YWxpZCBrZXkgaW50byByaWdodEJvdW5kKFtdKQorUGFzc2luZyBhbiBpbnZhbGlkIGtleSBpbnRv
IHVwcGVyQm91bmQoW10pCiBQQVNTIENhdWdodCBleGNlcHRpb246IEVycm9yOiBUWVBFX01JU01B
VENIX0VSUjogRE9NIEV4Y2VwdGlvbiAxNwotUGFzc2luZyBhbiBpbnZhbGlkIGtleSBpbnRvIGxl
ZnRCb3VuZChbXSkKK1Bhc3NpbmcgYW4gaW52YWxpZCBrZXkgaW50byBsb3dlckJvdW5kKFtdKQog
UEFTUyBDYXVnaHQgZXhjZXB0aW9uOiBFcnJvcjogVFlQRV9NSVNNQVRDSF9FUlI6IERPTSBFeGNl
cHRpb24gMTcKIFBhc3NpbmcgYW4gaW52YWxpZCBrZXkgaW50byBib3VuZChudWxsLCBbXSkKIFBB
U1MgQ2F1Z2h0IGV4Y2VwdGlvbjogRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9rZXlyYW5n
ZS5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIva2V5cmFuZ2UuaHRtbAppbmRl
eCA0ODcwOGQ5Li40YjkyNmRhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9rZXlyYW5nZS5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2tl
eXJhbmdlLmh0bWwKQEAgLTE3LDY3ICsxNyw2OCBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKQogZnVuY3Rpb24gY2hlY2tTaW5nbGVLZXlSYW5nZSh2YWx1ZSkKIHsKICAgICBrZXlS
YW5nZSA9IGV2YWxBbmRMb2coIndlYmtpdElEQktleVJhbmdlLm9ubHkoIiArIHZhbHVlICsgIiki
KTsKLSAgICBzaG91bGRCZSgia2V5UmFuZ2UubGVmdCIsICIiICsgdmFsdWUpOwotICAgIHNob3Vs
ZEJlKCJrZXlSYW5nZS5yaWdodCIsICIiICsgdmFsdWUpOwotICAgIHNob3VsZEJlKCJrZXlSYW5n
ZS5mbGFncyIsICJrZXlSYW5nZS5TSU5HTEUiKTsKKyAgICBzaG91bGRCZSgia2V5UmFuZ2UubG93
ZXIiLCAiIiArIHZhbHVlKTsKKyAgICBzaG91bGRCZSgia2V5UmFuZ2UudXBwZXIiLCAiIiArIHZh
bHVlKTsKKyAgICBzaG91bGRCZUZhbHNlKCJrZXlSYW5nZS5sb3dlck9wZW4iKTsKKyAgICBzaG91
bGRCZUZhbHNlKCJrZXlSYW5nZS51cHBlck9wZW4iKTsKIH0KIAotZnVuY3Rpb24gY2hlY2tMZWZ0
Qm91bmRLZXlSYW5nZSh2YWx1ZSwgb3BlbikKK2Z1bmN0aW9uIGNoZWNrTG93ZXJCb3VuZEtleVJh
bmdlKHZhbHVlLCBvcGVuKQogewotICAgIGtleVJhbmdlID0gZXZhbEFuZExvZygid2Via2l0SURC
S2V5UmFuZ2UubGVmdEJvdW5kKCIgKyB2YWx1ZSArICIsIiArIG9wZW4gKyAiKSIpOwotICAgIHNo
b3VsZEJlKCJrZXlSYW5nZS5sZWZ0IiwgIiIgKyB2YWx1ZSk7Ci0gICAgc2hvdWxkQmVOdWxsKCJr
ZXlSYW5nZS5yaWdodCIpOwotICAgIHNob3VsZEJlKCJrZXlSYW5nZS5mbGFncyIsIG9wZW4gPyAi
a2V5UmFuZ2UuTEVGVF9PUEVOIHwga2V5UmFuZ2UuTEVGVF9CT1VORCIgOiAia2V5UmFuZ2UuTEVG
VF9CT1VORCIpOworICAgIGtleVJhbmdlID0gZXZhbEFuZExvZygid2Via2l0SURCS2V5UmFuZ2Uu
bG93ZXJCb3VuZCgiICsgdmFsdWUgKyAiLCIgKyBvcGVuICsgIikiKTsKKyAgICBzaG91bGRCZSgi
a2V5UmFuZ2UubG93ZXIiLCAiIiArIHZhbHVlKTsKKyAgICBpZiAob3BlbiA9PT0gdW5kZWZpbmVk
KQorICAgICAgICBvcGVuID0gZmFsc2U7CisgICAgc2hvdWxkQmUoImtleVJhbmdlLmxvd2VyT3Bl
biIsICIiICsgb3Blbik7CisgICAgc2hvdWxkQmVOdWxsKCJrZXlSYW5nZS51cHBlciIpOworICAg
IHNob3VsZEJlRmFsc2UoImtleVJhbmdlLnVwcGVyT3BlbiIpOwogfQogCi1mdW5jdGlvbiBjaGVj
a1JpZ2h0Qm91bmRLZXlSYW5nZSh2YWx1ZSwgb3BlbikKK2Z1bmN0aW9uIGNoZWNrVXBwZXJCb3Vu
ZEtleVJhbmdlKHZhbHVlLCBvcGVuKQogewotICAgIGtleVJhbmdlID0gZXZhbEFuZExvZygid2Vi
a2l0SURCS2V5UmFuZ2UucmlnaHRCb3VuZCgiICsgdmFsdWUgKyAiLCIgKyBvcGVuICsgIikiKTsK
LSAgICBzaG91bGRCZSgia2V5UmFuZ2UucmlnaHQiLCAiIiArIHZhbHVlKTsKLSAgICBzaG91bGRC
ZU51bGwoImtleVJhbmdlLmxlZnQiKTsKLSAgICBzaG91bGRCZSgia2V5UmFuZ2UuZmxhZ3MiLCBv
cGVuID8gImtleVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5nZS5SSUdIVF9CT1VORCIgOiAia2V5
UmFuZ2UuUklHSFRfQk9VTkQiKTsKKyAgICBrZXlSYW5nZSA9IGV2YWxBbmRMb2coIndlYmtpdElE
QktleVJhbmdlLnVwcGVyQm91bmQoIiArIHZhbHVlICsgIiwiICsgb3BlbiArICIpIik7CisgICAg
c2hvdWxkQmUoImtleVJhbmdlLnVwcGVyIiwgIiIgKyB2YWx1ZSk7CisgICAgaWYgKG9wZW4gPT09
IHVuZGVmaW5lZCkKKyAgICAgICAgb3BlbiA9IGZhbHNlOworICAgIHNob3VsZEJlKCJrZXlSYW5n
ZS51cHBlck9wZW4iLCAiIiArIG9wZW4pOworICAgIHNob3VsZEJlTnVsbCgia2V5UmFuZ2UubG93
ZXIiKTsKKyAgICBzaG91bGRCZUZhbHNlKCJrZXlSYW5nZS5sb3dlck9wZW4iKTsKIH0KIAotZnVu
Y3Rpb24gY2hlY2tCb3VuZEtleVJhbmdlKGxlZnQsIHJpZ2h0LCBvcGVuTGVmdCwgb3BlblJpZ2h0
KQorZnVuY3Rpb24gY2hlY2tCb3VuZEtleVJhbmdlKGxvd2VyLCB1cHBlciwgbG93ZXJPcGVuLCB1
cHBlck9wZW4pCiB7Ci0gICAga2V5UmFuZ2UgPSBldmFsQW5kTG9nKCJ3ZWJraXRJREJLZXlSYW5n
ZS5ib3VuZCgiICsgbGVmdCArICIsIiArIHJpZ2h0ICsgIiwiICsgb3BlbkxlZnQgKyAiLCIgKyBv
cGVuUmlnaHQgKyAiKSIpOwotICAgIHNob3VsZEJlKCJrZXlSYW5nZS5sZWZ0IiwgIiIgKyBsZWZ0
KTsKLSAgICBzaG91bGRCZSgia2V5UmFuZ2UucmlnaHQiLCAiIiArIHJpZ2h0KTsKLSAgICBsZWZ0
RmxhZ3MgPSBrZXlSYW5nZS5mbGFncyAmIChrZXlSYW5nZS5MRUZUX09QRU4gfCBrZXlSYW5nZS5M
RUZUX0JPVU5EKTsKLSAgICBzaG91bGRCZSgibGVmdEZsYWdzIiwgb3BlbkxlZnQgPyAia2V5UmFu
Z2UuTEVGVF9PUEVOIHwga2V5UmFuZ2UuTEVGVF9CT1VORCIgOiAia2V5UmFuZ2UuTEVGVF9CT1VO
RCIpOwotICAgIHJpZ2h0RmxhZ3MgPSBrZXlSYW5nZS5mbGFncyAmIChrZXlSYW5nZS5SSUdIVF9P
UEVOIHwga2V5UmFuZ2UuUklHSFRfQk9VTkQpOwotICAgIHNob3VsZEJlKCJyaWdodEZsYWdzIiwg
b3BlblJpZ2h0ID8gImtleVJhbmdlLlJJR0hUX09QRU4gfCBrZXlSYW5nZS5SSUdIVF9CT1VORCIg
OiAia2V5UmFuZ2UuUklHSFRfQk9VTkQiKTsKKyAgICBrZXlSYW5nZSA9IGV2YWxBbmRMb2coIndl
YmtpdElEQktleVJhbmdlLmJvdW5kKCIgKyBsb3dlciArICIsIiArIHVwcGVyICsgIiwge2xvd2Vy
T3BlbjogIiArIGxvd2VyT3BlbiArICIsIHVwcGVyT3BlbjoiICsgdXBwZXJPcGVuICsgIn0pIik7
CisgICAgc2hvdWxkQmUoImtleVJhbmdlLmxvd2VyIiwgIiIgKyBsb3dlcik7CisgICAgc2hvdWxk
QmUoImtleVJhbmdlLnVwcGVyIiwgIiIgKyB1cHBlcik7CisgICAgaWYgKGxvd2VyT3BlbiA9PT0g
dW5kZWZpbmVkKQorICAgICAgICBsb3dlck9wZW4gPSBmYWxzZTsKKyAgICBpZiAodXBwZXJPcGVu
ID09PSB1bmRlZmluZWQpCisgICAgICAgIHVwcGVyT3BlbiA9IGZhbHNlOworICAgIHNob3VsZEJl
KCJrZXlSYW5nZS5sb3dlck9wZW4iLCAiIiArIGxvd2VyT3Blbik7CisgICAgc2hvdWxkQmUoImtl
eVJhbmdlLnVwcGVyT3BlbiIsICIiICsgdXBwZXJPcGVuKTsKIH0KIAogZnVuY3Rpb24gdGVzdCgp
CiB7Ci0gICAgc2hvdWxkQmVUcnVlKCInU0lOR0xFJyBpbiB3ZWJraXRJREJLZXlSYW5nZSIpOwot
ICAgIHNob3VsZEJlVHJ1ZSgiJ0xFRlRfT1BFTicgaW4gd2Via2l0SURCS2V5UmFuZ2UiKTsKLSAg
ICBzaG91bGRCZVRydWUoIidSSUdIVF9PUEVOJyBpbiB3ZWJraXRJREJLZXlSYW5nZSIpOwotICAg
IHNob3VsZEJlVHJ1ZSgiJ0xFRlRfQk9VTkQnIGluIHdlYmtpdElEQktleVJhbmdlIik7Ci0gICAg
c2hvdWxkQmVUcnVlKCInUklHSFRfQk9VTkQnIGluIHdlYmtpdElEQktleVJhbmdlIik7Ci0gICAg
c2hvdWxkQmVGYWxzZSgiJ2xlZnQnIGluIHdlYmtpdElEQktleVJhbmdlIik7Ci0gICAgc2hvdWxk
QmVGYWxzZSgiJ3JpZ2h0JyBpbiB3ZWJraXRJREJLZXlSYW5nZSIpOwotICAgIHNob3VsZEJlRmFs
c2UoIidmbGFncycgaW4gd2Via2l0SURCS2V5UmFuZ2UiKTsKKyAgICBzaG91bGRCZUZhbHNlKCIn
bG93ZXInIGluIHdlYmtpdElEQktleVJhbmdlIik7CisgICAgc2hvdWxkQmVGYWxzZSgiJ3VwcGVy
JyBpbiB3ZWJraXRJREJLZXlSYW5nZSIpOworICAgIHNob3VsZEJlRmFsc2UoIidsb3dlck9wZW4n
IGluIHdlYmtpdElEQktleVJhbmdlIik7CisgICAgc2hvdWxkQmVGYWxzZSgiJ3VwcGVyT3Blbicg
aW4gd2Via2l0SURCS2V5UmFuZ2UiKTsKICAgICBzaG91bGRCZVRydWUoIidvbmx5JyBpbiB3ZWJr
aXRJREJLZXlSYW5nZSIpOwotICAgIHNob3VsZEJlVHJ1ZSgiJ2xlZnRCb3VuZCcgaW4gd2Via2l0
SURCS2V5UmFuZ2UiKTsKLSAgICBzaG91bGRCZVRydWUoIidyaWdodEJvdW5kJyBpbiB3ZWJraXRJ
REJLZXlSYW5nZSIpOworICAgIHNob3VsZEJlVHJ1ZSgiJ2xvd2VyQm91bmQnIGluIHdlYmtpdElE
QktleVJhbmdlIik7CisgICAgc2hvdWxkQmVUcnVlKCIndXBwZXJCb3VuZCcgaW4gd2Via2l0SURC
S2V5UmFuZ2UiKTsKICAgICBzaG91bGRCZVRydWUoIidib3VuZCcgaW4gd2Via2l0SURCS2V5UmFu
Z2UiKTsKIAogICAgIGRlYnVnKCIiKTsKIAogICAgIHZhciBpbnN0YW5jZSA9IGV2YWxBbmRMb2co
Imluc3RhbmNlID0gd2Via2l0SURCS2V5UmFuZ2Uub25seSgxKSIpOwotICAgIHNob3VsZEJlVHJ1
ZSgiJ1NJTkdMRScgaW4gaW5zdGFuY2UiKTsKLSAgICBzaG91bGRCZVRydWUoIidMRUZUX09QRU4n
IGluIGluc3RhbmNlIik7Ci0gICAgc2hvdWxkQmVUcnVlKCInUklHSFRfT1BFTicgaW4gaW5zdGFu
Y2UiKTsKLSAgICBzaG91bGRCZVRydWUoIidMRUZUX0JPVU5EJyBpbiBpbnN0YW5jZSIpOwotICAg
IHNob3VsZEJlVHJ1ZSgiJ1JJR0hUX0JPVU5EJyBpbiBpbnN0YW5jZSIpOwotICAgIHNob3VsZEJl
VHJ1ZSgiJ2xlZnQnIGluIGluc3RhbmNlIik7Ci0gICAgc2hvdWxkQmVUcnVlKCIncmlnaHQnIGlu
IGluc3RhbmNlIik7Ci0gICAgc2hvdWxkQmVUcnVlKCInZmxhZ3MnIGluIGluc3RhbmNlIik7Cisg
ICAgc2hvdWxkQmVUcnVlKCInbG93ZXInIGluIGluc3RhbmNlIik7CisgICAgc2hvdWxkQmVUcnVl
KCIndXBwZXInIGluIGluc3RhbmNlIik7CisgICAgc2hvdWxkQmVUcnVlKCInbG93ZXJPcGVuJyBp
biBpbnN0YW5jZSIpOworICAgIHNob3VsZEJlVHJ1ZSgiJ3VwcGVyT3BlbicgaW4gaW5zdGFuY2Ui
KTsKICAgICBzaG91bGRCZUZhbHNlKCInb25seScgaW4gaW5zdGFuY2UiKTsKLSAgICBzaG91bGRC
ZUZhbHNlKCInbGVmdEJvdW5kJyBpbiBpbnN0YW5jZSIpOwotICAgIHNob3VsZEJlRmFsc2UoIidy
aWdodEJvdW5kJyBpbiBpbnN0YW5jZSIpOworICAgIHNob3VsZEJlRmFsc2UoIidsb3dlckJvdW5k
JyBpbiBpbnN0YW5jZSIpOworICAgIHNob3VsZEJlRmFsc2UoIid1cHBlckJvdW5kJyBpbiBpbnN0
YW5jZSIpOwogICAgIHNob3VsZEJlRmFsc2UoIidib3VuZCcgaW4gaW5zdGFuY2UiKTsKIAogICAg
IGRlYnVnKCIiKTsKQEAgLTg1LDE5ICs4NiwxOSBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICBjaGVj
a1NpbmdsZUtleVJhbmdlKDEpOwogICAgIGNoZWNrU2luZ2xlS2V5UmFuZ2UoIidhJyIpOwogCi0g
ICAgY2hlY2tMZWZ0Qm91bmRLZXlSYW5nZSgxMCwgdHJ1ZSk7Ci0gICAgY2hlY2tMZWZ0Qm91bmRL
ZXlSYW5nZSgxMSwgZmFsc2UpOwotICAgIGNoZWNrTGVmdEJvdW5kS2V5UmFuZ2UoMTIpOwotICAg
IGNoZWNrTGVmdEJvdW5kS2V5UmFuZ2UoIidhYSciLCB0cnVlKTsKLSAgICBjaGVja0xlZnRCb3Vu
ZEtleVJhbmdlKCInYWInIiwgZmFsc2UpOwotICAgIGNoZWNrTGVmdEJvdW5kS2V5UmFuZ2UoIidh
YyciKTsKKyAgICBjaGVja0xvd2VyQm91bmRLZXlSYW5nZSgxMCwgdHJ1ZSk7CisgICAgY2hlY2tM
b3dlckJvdW5kS2V5UmFuZ2UoMTEsIGZhbHNlKTsKKyAgICBjaGVja0xvd2VyQm91bmRLZXlSYW5n
ZSgxMik7CisgICAgY2hlY2tMb3dlckJvdW5kS2V5UmFuZ2UoIidhYSciLCB0cnVlKTsKKyAgICBj
aGVja0xvd2VyQm91bmRLZXlSYW5nZSgiJ2FiJyIsIGZhbHNlKTsKKyAgICBjaGVja0xvd2VyQm91
bmRLZXlSYW5nZSgiJ2FjJyIpOwogCi0gICAgY2hlY2tSaWdodEJvdW5kS2V5UmFuZ2UoMjAsIHRy
dWUpOwotICAgIGNoZWNrUmlnaHRCb3VuZEtleVJhbmdlKDIxLCBmYWxzZSk7Ci0gICAgY2hlY2tS
aWdodEJvdW5kS2V5UmFuZ2UoMjIpOwotICAgIGNoZWNrUmlnaHRCb3VuZEtleVJhbmdlKCInYmEn
IiwgdHJ1ZSk7Ci0gICAgY2hlY2tSaWdodEJvdW5kS2V5UmFuZ2UoIidiYiciLCBmYWxzZSk7Ci0g
ICAgY2hlY2tSaWdodEJvdW5kS2V5UmFuZ2UoIidiYyciKTsKKyAgICBjaGVja1VwcGVyQm91bmRL
ZXlSYW5nZSgyMCwgdHJ1ZSk7CisgICAgY2hlY2tVcHBlckJvdW5kS2V5UmFuZ2UoMjEsIGZhbHNl
KTsKKyAgICBjaGVja1VwcGVyQm91bmRLZXlSYW5nZSgyMik7CisgICAgY2hlY2tVcHBlckJvdW5k
S2V5UmFuZ2UoIidiYSciLCB0cnVlKTsKKyAgICBjaGVja1VwcGVyQm91bmRLZXlSYW5nZSgiJ2Ji
JyIsIGZhbHNlKTsKKyAgICBjaGVja1VwcGVyQm91bmRLZXlSYW5nZSgiJ2JjJyIpOwogCiAgICAg
Y2hlY2tCb3VuZEtleVJhbmdlKDMwLCA0MCk7CiAgICAgY2hlY2tCb3VuZEtleVJhbmdlKDMxLCA0
MSwgZmFsc2UsIGZhbHNlKTsKQEAgLTEyMSwxNiArMTIyLDE2IEBAIGZ1bmN0aW9uIHRlc3QoKQog
ICAgIH0KIAogICAgIHRyeSB7Ci0gICAgICAgIGRlYnVnKCJQYXNzaW5nIGFuIGludmFsaWQga2V5
IGludG8gcmlnaHRCb3VuZChbXSkiKTsKLSAgICAgICAgd2Via2l0SURCS2V5UmFuZ2UucmlnaHRC
b3VuZChbXSk7CisgICAgICAgIGRlYnVnKCJQYXNzaW5nIGFuIGludmFsaWQga2V5IGludG8gdXBw
ZXJCb3VuZChbXSkiKTsKKyAgICAgICAgd2Via2l0SURCS2V5UmFuZ2UudXBwZXJCb3VuZChbXSk7
CiAgICAgICAgIHRlc3RGYWlsZWQoIk5vIGV4Y2VwdGlvbiB0aHJvd24iKTsKICAgICB9IGNhdGNo
IChlKSB7CiAgICAgICAgIHRlc3RQYXNzZWQoIkNhdWdodCBleGNlcHRpb246ICIgKyBlLnRvU3Ry
aW5nKCkpOwogICAgIH0KICAKICAgICB0cnkgewotICAgICAgICBkZWJ1ZygiUGFzc2luZyBhbiBp
bnZhbGlkIGtleSBpbnRvIGxlZnRCb3VuZChbXSkiKTsKLSAgICAgICAgd2Via2l0SURCS2V5UmFu
Z2UubGVmdEJvdW5kKFtdKTsKKyAgICAgICAgZGVidWcoIlBhc3NpbmcgYW4gaW52YWxpZCBrZXkg
aW50byBsb3dlckJvdW5kKFtdKSIpOworICAgICAgICB3ZWJraXRJREJLZXlSYW5nZS5sb3dlckJv
dW5kKFtdKTsKICAgICAgICAgdGVzdEZhaWxlZCgiTm8gZXhjZXB0aW9uIHRocm93biIpOwogICAg
IH0gY2F0Y2ggKGUpIHsKICAgICAgICAgdGVzdFBhc3NlZCgiQ2F1Z2h0IGV4Y2VwdGlvbjogIiAr
IGUudG9TdHJpbmcoKSk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9vYmplY3RzdG9yZS1jdXJzb3IuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L29iamVjdHN0b3JlLWN1cnNvci5odG1sCmluZGV4IDIxNWVjOTEuLjMzNTg5MTcgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWN1cnNvci5odG1s
CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWN1cnNvci5o
dG1sCkBAIC0xNTksMTEgKzE1OSwxMSBAQCBmdW5jdGlvbiBydW5OZXh0VGVzdCgpCiAgCiAgICAg
dmFyIGtleVJhbmdlOwogICAgIGlmIChsb3dlciAhPT0gbnVsbCAmJiB1cHBlciAhPT0gbnVsbCkK
LSAgICAgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5ib3VuZCh0ZXN0RGF0YVtsb3dl
cl0sIHRlc3REYXRhW3VwcGVyXSwgbG93ZXJJc09wZW4sIHVwcGVySXNPcGVuKTsKKyAgICAgICAg
a2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5ib3VuZCh0ZXN0RGF0YVtsb3dlcl0sIHRlc3RE
YXRhW3VwcGVyXSwge2xvd2VyT3BlbjogbG93ZXJJc09wZW4sIHVwcGVyT3BlbjogdXBwZXJJc09w
ZW59KTsKICAgICBlbHNlIGlmIChsb3dlciAhPT0gbnVsbCkKLSAgICAgICAga2V5UmFuZ2UgPSB3
ZWJraXRJREJLZXlSYW5nZS5sZWZ0Qm91bmQodGVzdERhdGFbbG93ZXJdLCBsb3dlcklzT3Blbik7
CisgICAgICAgIGtleVJhbmdlID0gd2Via2l0SURCS2V5UmFuZ2UubG93ZXJCb3VuZCh0ZXN0RGF0
YVtsb3dlcl0sIGxvd2VySXNPcGVuKTsKICAgICBlbHNlCi0gICAgICAgIGtleVJhbmdlID0gd2Vi
a2l0SURCS2V5UmFuZ2UucmlnaHRCb3VuZCh0ZXN0RGF0YVt1cHBlcl0sIHVwcGVySXNPcGVuKTsK
KyAgICAgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS51cHBlckJvdW5kKHRlc3REYXRh
W3VwcGVyXSwgdXBwZXJJc09wZW4pOwogIAogICAgIHZhciByZXF1ZXN0ID0gb2JqZWN0U3RvcmUu
b3BlbkN1cnNvcih7cmFuZ2U6IGtleVJhbmdlLCBkaXJlY3Rpb246IGFzY2VuZGluZyA/IHdlYmtp
dElEQkN1cnNvci5ORVhUIDogd2Via2l0SURCQ3Vyc29yLlBSRVZ9KTsKICAgICByZXF1ZXN0Lm9u
c3VjY2VzcyA9IGN1cnNvckl0ZXJhdGlvbjsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL29wZW4tY3Vyc29yLmh0bWwgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9vcGVuLWN1cnNvci5odG1sCmluZGV4IGM1ZGQ3ZDguLmU0ZGM4ZjAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29wZW4tY3Vyc29yLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb3Blbi1jdXJzb3IuaHRtbApAQCAtMjUsNyArMjUs
NyBAQCBmdW5jdGlvbiBlbXB0eUN1cnNvclN1Y2Nlc3MoKQogZnVuY3Rpb24gb3BlbkVtcHR5Q3Vy
c29yKCkKIHsKICAgICBkZWJ1ZygiT3BlbmluZyBhbiBlbXB0eSBjdXJzb3IuIik7Ci0gICAga2V5
UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5sZWZ0Qm91bmQoIkluZXhpc3RlbnRLZXkiKTsKKyAg
ICBrZXlSYW5nZSA9IHdlYmtpdElEQktleVJhbmdlLmxvd2VyQm91bmQoIkluZXhpc3RlbnRLZXki
KTsKICAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJvYmplY3RTdG9yZS5vcGVuQ3Vyc29yKHtyYW5n
ZToga2V5UmFuZ2V9KSIpOwogICAgIHZlcmlmeVJlc3VsdChyZXN1bHQpOwogICAgIHJlc3VsdC5v
bnN1Y2Nlc3MgPSBlbXB0eUN1cnNvclN1Y2Nlc3M7CkBAIC01NSw3ICs1NSw3IEBAIGZ1bmN0aW9u
IGN1cnNvclN1Y2Nlc3MoKQogZnVuY3Rpb24gb3BlbkN1cnNvcigpCiB7CiAgICAgZGVidWcoIk9w
ZW5pbmcgY3Vyc29yIik7Ci0gICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5sZWZ0Qm91
bmQoIm15S2V5Iik7CisgICAga2V5UmFuZ2UgPSB3ZWJraXRJREJLZXlSYW5nZS5sb3dlckJvdW5k
KCJteUtleSIpOwogICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coImV2ZW50LnNvdXJjZS5vcGVuQ3Vy
c29yKHtyYW5nZToga2V5UmFuZ2V9KSIpOwogICAgIHZlcmlmeVJlc3VsdChyZXN1bHQpOwogICAg
IHJlc3VsdC5vbnN1Y2Nlc3MgPSBjdXJzb3JTdWNjZXNzOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvdHV0b3JpYWwuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL3R1dG9yaWFsLmh0bWwKaW5kZXggYzkwYTJiYy4uZDQwZGQ4ZSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvdHV0b3JpYWwuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi90dXRvcmlhbC5odG1sCkBAIC0zOTUsOSArMzk1LDkg
QEAgZnVuY3Rpb24gb25JbmRleEdldFN1Y2Nlc3MoKQogICAgIC8vIGRpZmZlcmVudCBJREJLZXlS
YW5nZXMganVzdCB0byBkZW1vbnN0cmF0ZSBob3cgdG8gdXNlIHRoZW0sIGJ1dCB3ZSB3b24ndCBi
b3RoZXIgdG8gaGFuZGxlCiAgICAgLy8gdGhlIG9uc3VjY2VzcyBjb25kaXRpb25zLgogICAgIHZh
ciBsbmFtZSA9IGV2ZW50LnNvdXJjZTsKLSAgICBsbmFtZS5vcGVuQ3Vyc29yKHtyYW5nZTogSURC
S2V5UmFuZ2UubGVmdEJvdW5kKCJEb2UiLCBmYWxzZSksIGRpcmVjdGlvbjogSURCQ3Vyc29yLk5F
WFRfTk9fRFVQTElDQVRFfSk7CisgICAgbG5hbWUub3BlbkN1cnNvcih7cmFuZ2U6IElEQktleVJh
bmdlLmxvd2VyQm91bmQoIkRvZSIsIGZhbHNlKSwgZGlyZWN0aW9uOiBJREJDdXJzb3IuTkVYVF9O
T19EVVBMSUNBVEV9KTsKICAgICBsbmFtZS5vcGVuQ3Vyc29yKHtkaXJlY3Rpb246IElEQkN1cnNv
ci5QUkVWX05PX0RVUExJQ0FURX0pOwotICAgIGxuYW1lLm9wZW5DdXJzb3Ioe3JhbmdlOiBJREJL
ZXlSYW5nZS5yaWdodEJvdW5kKCJaWlpaIil9KTsKKyAgICBsbmFtZS5vcGVuQ3Vyc29yKHtyYW5n
ZTogSURCS2V5UmFuZ2UudXBwZXJCb3VuZCgiWlpaWiIpfSk7CiAgICAgbG5hbWUub3BlbkN1cnNv
cih7cmFuZ2U6IElEQktleVJhbmdlLm9ubHkoIkRvZSIpLCBkaXJlY3Rpb246IElEQkN1cnNvci5Q
UkVWfSk7CiAgICAgbG5hbWUub3BlbkN1cnNvcigpOwogICAgIGxuYW1lLm9wZW5LZXlDdXJzb3Io
KTsKQEAgLTQxMSw3ICs0MTEsOCBAQCBmdW5jdGlvbiBvbkluZGV4R2V0U3VjY2VzcygpCiBmdW5j
dGlvbiBvbkFsbERvbmUoKQogewogICAgIGxvZygiRXZlcnl0aGluZyB3b3JrZWQhIik7Ci0gICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpOworICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUo
KTsKIH0KIAogLy8gVGhlIHdheSBzZXRWZXJzaW9uIGlzIHN1cHBvc2VkIHRvIHdvcms6CmRpZmYg
LS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDJmZmY0
MjcuLjNkMmY1NzcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMzcgQEAKKzIwMTAtMTEtMjYgIEplcmVteSBPcmxvdyAgPGpv
cmxvd0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgTWFrZSBJREJLZXlSYW5nZSBtYXRjaCB0aGUgc3BlYworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTAxMDUKKworICAgICAgICBSZW1v
dmUgZmxhZ3MgYW5kIGluc3RlYWQgYWRkIHR3byBib29sZWFucyBmb3IgYmVpbmcgb3Blbi4KKyAg
ICAgICAgQ2hhbmdlIGxlZnQgdG8gbG93ZXIgYW5kIHJpZ2h0IHRvIHVwcGVyIGV2ZXJ5d2hlcmUu
CisKKyAgICAgICAgKiBzdG9yYWdlL0lEQkluZGV4QmFja2VuZEltcGwuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SURCSW5kZXhCYWNrZW5kSW1wbDo6b3BlbkN1cnNvckludGVybmFsKToKKyAgICAg
ICAgKiBzdG9yYWdlL0lEQktleS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJLZXk6Omxvd2Vy
Q3Vyc29yV2hlcmVGcmFnbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpJREJLZXk6OnVwcGVyQ3Vy
c29yV2hlcmVGcmFnbWVudCk6CisgICAgICAgICogc3RvcmFnZS9JREJLZXkuaDoKKyAgICAgICAg
KiBzdG9yYWdlL0lEQktleVJhbmdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQktleVJhbmdl
OjpJREJLZXlSYW5nZSk6CisgICAgICAgIChXZWJDb3JlOjpJREJLZXlSYW5nZTo6b25seSk6Cisg
ICAgICAgIChXZWJDb3JlOjpJREJLZXlSYW5nZTo6bG93ZXJCb3VuZCk6CisgICAgICAgIChXZWJD
b3JlOjpJREJLZXlSYW5nZTo6dXBwZXJCb3VuZCk6CisgICAgICAgIChXZWJDb3JlOjpJREJLZXlS
YW5nZTo6Ym91bmQpOgorICAgICAgICAoV2ViQ29yZTo6SURCS2V5UmFuZ2U6Omxvd2VyV2hlcmVD
bGF1c2VDb21wYXJpc29uT3BlcmF0b3IpOgorICAgICAgICAoV2ViQ29yZTo6SURCS2V5UmFuZ2U6
OnVwcGVyV2hlcmVDbGF1c2VDb21wYXJpc29uT3BlcmF0b3IpOgorICAgICAgICAqIHN0b3JhZ2Uv
SURCS2V5UmFuZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OklEQktleVJhbmdlOjpjcmVhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6SURCS2V5UmFuZ2U6Omxvd2VyKToKKyAgICAgICAgKFdlYkNvcmU6
OklEQktleVJhbmdlOjp1cHBlcik6CisgICAgICAgIChXZWJDb3JlOjpJREJLZXlSYW5nZTo6bG93
ZXJPcGVuKToKKyAgICAgICAgKFdlYkNvcmU6OklEQktleVJhbmdlOjp1cHBlck9wZW4pOgorICAg
ICAgICAqIHN0b3JhZ2UvSURCS2V5UmFuZ2UuaWRsOgorICAgICAgICAqIHN0b3JhZ2UvSURCT2Jq
ZWN0U3RvcmVCYWNrZW5kSW1wbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJPYmplY3RTdG9y
ZUJhY2tlbmRJbXBsOjpvcGVuQ3Vyc29ySW50ZXJuYWwpOgorCiAyMDEwLTExLTI1ICBKZXJlbXkg
T3Jsb3cgIDxqb3Jsb3dAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2Vu
ZEltcGwuY3BwIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEltcGwuY3BwCmlu
ZGV4IDRhN2VmMzcuLjYxN2U3ZmYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRh
YmFzZUJhY2tlbmRJbXBsLmNwcAorKysgYi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNr
ZW5kSW1wbC5jcHAKQEAgLTIzNCwxMCArMjM0LDEwIEBAIHZvaWQgSURCRGF0YWJhc2VCYWNrZW5k
SW1wbDo6c2V0VmVyc2lvbkludGVybmFsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVm
CiAgICAgY2FsbGJhY2tzLT5vblN1Y2Nlc3ModHJhbnNhY3Rpb24pOwogfQogCi1QYXNzUmVmUHRy
PElEQlRyYW5zYWN0aW9uQmFja2VuZEludGVyZmFjZT4gSURCRGF0YWJhc2VCYWNrZW5kSW1wbDo6
dHJhbnNhY3Rpb24oRE9NU3RyaW5nTGlzdCogb2JqZWN0U3RvcmVOYW1lcywgdW5zaWduZWQgc2hv
cnQgbW9kZSwgdW5zaWduZWQgbG9uZyB0aW1lb3V0LCBFeGNlcHRpb25Db2RlJikKK1Bhc3NSZWZQ
dHI8SURCVHJhbnNhY3Rpb25CYWNrZW5kSW50ZXJmYWNlPiBJREJEYXRhYmFzZUJhY2tlbmRJbXBs
Ojp0cmFuc2FjdGlvbihET01TdHJpbmdMaXN0KiBvYmplY3RTdG9yZU5hbWVzLCB1bnNpZ25lZCBz
aG9ydCBtb2RlLCB1bnNpZ25lZCBsb25nIHRpbWVvdXQsIEV4Y2VwdGlvbkNvZGUmIGVjKQogewot
ICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgb2JqZWN0U3RvcmVzLT5sZW5ndGgoKTsgKytpKSB7
Ci0gICAgICAgIGlmICghbV9vYmplY3RTdG9yZXMuY29udGFpbnMob2JqZWN0U3RvcmVzLT5pdGVt
KGkpKSkgeworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgb2JqZWN0U3RvcmVOYW1lcy0+bGVu
Z3RoKCk7ICsraSkgeworICAgICAgICBpZiAoIW1fb2JqZWN0U3RvcmVzLmNvbnRhaW5zKG9iamVj
dFN0b3JlTmFtZXMtPml0ZW0oaSkpKSB7CiAgICAgICAgICAgICBlYyA9IElEQkRhdGFiYXNlRXhj
ZXB0aW9uOjpOT1RfRk9VTkRfRVJSOwogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0K
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJJbmRleEJhY2tlbmRJbXBsLmNwcCBiL1dl
YkNvcmUvc3RvcmFnZS9JREJJbmRleEJhY2tlbmRJbXBsLmNwcAppbmRleCA4NGFmMjM0Li41OTdh
OGMyIDEwMDY0NAotLS0gYS9XZWJDb3JlL3N0b3JhZ2UvSURCSW5kZXhCYWNrZW5kSW1wbC5jcHAK
KysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkluZGV4QmFja2VuZEltcGwuY3BwCkBAIC03MywxMyAr
NzMsMTMgQEAgdm9pZCBJREJJbmRleEJhY2tlbmRJbXBsOjpvcGVuQ3Vyc29ySW50ZXJuYWwoU2Ny
aXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHIKICAgICAgICAgICAgICAgICAgKyAob2Jq
ZWN0Q3Vyc29yID8gIk9iamVjdFN0b3JlRGF0YS52YWx1ZSAiIDogIk9iamVjdFN0b3JlRGF0YS5r
ZXlTdHJpbmcsIE9iamVjdFN0b3JlRGF0YS5rZXlEYXRlLCBPYmplY3RTdG9yZURhdGEua2V5TnVt
YmVyICIpCiAgICAgICAgICAgICAgICAgICsgIkZST00gSW5kZXhEYXRhIElOTkVSIEpPSU4gT2Jq
ZWN0U3RvcmVEYXRhIE9OIEluZGV4RGF0YS5vYmplY3RTdG9yZURhdGFJZCA9IE9iamVjdFN0b3Jl
RGF0YS5pZCBXSEVSRSAiOwogCi0gICAgYm9vbCBsZWZ0Qm91bmQgPSByYW5nZSAmJiAocmFuZ2Ut
PmZsYWdzKCkgJiBJREJLZXlSYW5nZTo6TEVGVF9CT1VORCB8fCByYW5nZS0+ZmxhZ3MoKSA9PSBJ
REJLZXlSYW5nZTo6U0lOR0xFKTsKLSAgICBib29sIHJpZ2h0Qm91bmQgPSByYW5nZSAmJiAocmFu
Z2UtPmZsYWdzKCkgJiBJREJLZXlSYW5nZTo6UklHSFRfQk9VTkQgfHwgcmFuZ2UtPmZsYWdzKCkg
PT0gSURCS2V5UmFuZ2U6OlNJTkdMRSk7CisgICAgYm9vbCBsb3dlckJvdW5kID0gcmFuZ2UgJiYg
cmFuZ2UtPmxvd2VyKCk7CisgICAgYm9vbCB1cHBlckJvdW5kID0gcmFuZ2UgJiYgcmFuZ2UtPnVw
cGVyKCk7CiAgICAgCi0gICAgaWYgKGxlZnRCb3VuZCkKLSAgICAgICAgc3FsICs9IHJhbmdlLT5s
ZWZ0KCktPmxlZnRDdXJzb3JXaGVyZUZyYWdtZW50KHJhbmdlLT5sZWZ0V2hlcmVDbGF1c2VDb21w
YXJpc29uT3BlcmF0b3IoKSwgIkluZGV4RGF0YS4iKTsKLSAgICBpZiAocmlnaHRCb3VuZCkKLSAg
ICAgICAgc3FsICs9IHJhbmdlLT5yaWdodCgpLT5yaWdodEN1cnNvcldoZXJlRnJhZ21lbnQocmFu
Z2UtPnJpZ2h0V2hlcmVDbGF1c2VDb21wYXJpc29uT3BlcmF0b3IoKSwgIkluZGV4RGF0YS4iKTsK
KyAgICBpZiAobG93ZXJCb3VuZCkKKyAgICAgICAgc3FsICs9IHJhbmdlLT5sb3dlcigpLT5sb3dl
ckN1cnNvcldoZXJlRnJhZ21lbnQocmFuZ2UtPmxvd2VyV2hlcmVDbGF1c2VDb21wYXJpc29uT3Bl
cmF0b3IoKSwgIkluZGV4RGF0YS4iKTsKKyAgICBpZiAodXBwZXJCb3VuZCkKKyAgICAgICAgc3Fs
ICs9IHJhbmdlLT51cHBlcigpLT51cHBlckN1cnNvcldoZXJlRnJhZ21lbnQocmFuZ2UtPnVwcGVy
V2hlcmVDbGF1c2VDb21wYXJpc29uT3BlcmF0b3IoKSwgIkluZGV4RGF0YS4iKTsKICAgICBzcWwg
Kz0gIkluZGV4RGF0YS5pbmRleElkID0gPyBPUkRFUiBCWSAiOwogCiAgICAgSURCQ3Vyc29yOjpE
aXJlY3Rpb24gZGlyZWN0aW9uID0gc3RhdGljX2Nhc3Q8SURCQ3Vyc29yOjpEaXJlY3Rpb24+KHVu
dHlwZWREaXJlY3Rpb24pOwpAQCAtOTMsMTAgKzkzLDEwIEBAIHZvaWQgSURCSW5kZXhCYWNrZW5k
SW1wbDo6b3BlbkN1cnNvckludGVybmFsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVm
UHRyCiAgICAgQVNTRVJUX1VOVVNFRChvaywgb2spOyAvLyBGSVhNRTogQmV0dGVyIGVycm9yIGhh
bmRsaW5nPwogCiAgICAgaW50IGluZGV4Q29sdW1uID0gMTsKLSAgICBpZiAobGVmdEJvdW5kKQot
ICAgICAgICBpbmRleENvbHVtbiArPSByYW5nZS0+bGVmdCgpLT5iaW5kKCpxdWVyeSwgaW5kZXhD
b2x1bW4pOwotICAgIGlmIChyaWdodEJvdW5kKQotICAgICAgICBpbmRleENvbHVtbiArPSByYW5n
ZS0+cmlnaHQoKS0+YmluZCgqcXVlcnksIGluZGV4Q29sdW1uKTsKKyAgICBpZiAobG93ZXJCb3Vu
ZCkKKyAgICAgICAgaW5kZXhDb2x1bW4gKz0gcmFuZ2UtPmxvd2VyKCktPmJpbmQoKnF1ZXJ5LCBp
bmRleENvbHVtbik7CisgICAgaWYgKHVwcGVyQm91bmQpCisgICAgICAgIGluZGV4Q29sdW1uICs9
IHJhbmdlLT51cHBlcigpLT5iaW5kKCpxdWVyeSwgaW5kZXhDb2x1bW4pOwogICAgIHF1ZXJ5LT5i
aW5kSW50NjQoaW5kZXhDb2x1bW4sIGluZGV4LT5pZCgpKTsKIAogICAgIGlmIChxdWVyeS0+c3Rl
cCgpICE9IFNRTFJlc3VsdFJvdykgewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lEQktl
eS5jcHAgYi9XZWJDb3JlL3N0b3JhZ2UvSURCS2V5LmNwcAppbmRleCA4ZTQxMWI3Li40ZjgyODdh
IDEwMDY0NAotLS0gYS9XZWJDb3JlL3N0b3JhZ2UvSURCS2V5LmNwcAorKysgYi9XZWJDb3JlL3N0
b3JhZ2UvSURCS2V5LmNwcApAQCAtMTA1LDcgKzEwNSw3IEBAIFN0cmluZyBJREJLZXk6OndoZXJl
U3ludGF4KFN0cmluZyBxdWFsaWZpZWRUYWJsZU5hbWUpIGNvbnN0CiAgICAgcmV0dXJuICIiOwog
fQogCi1TdHJpbmcgSURCS2V5OjpsZWZ0Q3Vyc29yV2hlcmVGcmFnbWVudChTdHJpbmcgY29tcGFy
aXNvbk9wZXJhdG9yLCBTdHJpbmcgcXVhbGlmaWVkVGFibGVOYW1lKQorU3RyaW5nIElEQktleTo6
bG93ZXJDdXJzb3JXaGVyZUZyYWdtZW50KFN0cmluZyBjb21wYXJpc29uT3BlcmF0b3IsIFN0cmlu
ZyBxdWFsaWZpZWRUYWJsZU5hbWUpCiB7CiAgICAgc3dpdGNoIChtX3R5cGUpIHsKICAgICBjYXNl
IFN0cmluZ1R5cGU6CkBAIC0xMjIsNyArMTIyLDcgQEAgU3RyaW5nIElEQktleTo6bGVmdEN1cnNv
cldoZXJlRnJhZ21lbnQoU3RyaW5nIGNvbXBhcmlzb25PcGVyYXRvciwgU3RyaW5nIHF1YWxpZmkK
ICAgICByZXR1cm4gIiI7CiB9CiAKLVN0cmluZyBJREJLZXk6OnJpZ2h0Q3Vyc29yV2hlcmVGcmFn
bWVudChTdHJpbmcgY29tcGFyaXNvbk9wZXJhdG9yLCBTdHJpbmcgcXVhbGlmaWVkVGFibGVOYW1l
KQorU3RyaW5nIElEQktleTo6dXBwZXJDdXJzb3JXaGVyZUZyYWdtZW50KFN0cmluZyBjb21wYXJp
c29uT3BlcmF0b3IsIFN0cmluZyBxdWFsaWZpZWRUYWJsZU5hbWUpCiB7CiAgICAgc3dpdGNoICht
X3R5cGUpIHsKICAgICBjYXNlIFN0cmluZ1R5cGU6CmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3Jh
Z2UvSURCS2V5LmggYi9XZWJDb3JlL3N0b3JhZ2UvSURCS2V5LmgKaW5kZXggYjMwMmZkNy4uOWEy
Nzc0MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQktleS5oCisrKyBiL1dlYkNvcmUv
c3RvcmFnZS9JREJLZXkuaApAQCAtNzgsOCArNzgsOCBAQCBwdWJsaWM6CiAKICAgICBib29sIGlz
RXF1YWwoSURCS2V5KiBvdGhlcik7CiAgICAgU3RyaW5nIHdoZXJlU3ludGF4KFN0cmluZyBxdWFs
aWZpZWRUYWJsZU5hbWUgPSAiIikgY29uc3Q7Ci0gICAgU3RyaW5nIGxlZnRDdXJzb3JXaGVyZUZy
YWdtZW50KFN0cmluZyBjb21wYXJpc29uT3BlcmF0b3IsIFN0cmluZyBxdWFsaWZpZWRUYWJsZU5h
bWUgPSAiIik7Ci0gICAgU3RyaW5nIHJpZ2h0Q3Vyc29yV2hlcmVGcmFnbWVudChTdHJpbmcgY29t
cGFyaXNvbk9wZXJhdG9yLCBTdHJpbmcgcXVhbGlmaWVkVGFibGVOYW1lID0gIiIpOworICAgIFN0
cmluZyBsb3dlckN1cnNvcldoZXJlRnJhZ21lbnQoU3RyaW5nIGNvbXBhcmlzb25PcGVyYXRvciwg
U3RyaW5nIHF1YWxpZmllZFRhYmxlTmFtZSA9ICIiKTsKKyAgICBTdHJpbmcgdXBwZXJDdXJzb3JX
aGVyZUZyYWdtZW50KFN0cmluZyBjb21wYXJpc29uT3BlcmF0b3IsIFN0cmluZyBxdWFsaWZpZWRU
YWJsZU5hbWUgPSAiIik7CiAgICAgaW50IGJpbmQoU1FMaXRlU3RhdGVtZW50JiBxdWVyeSwgaW50
IGNvbHVtbikgY29uc3Q7CiAgICAgdm9pZCBiaW5kV2l0aE51bGxzKFNRTGl0ZVN0YXRlbWVudCYg
cXVlcnksIGludCBiYXNlQ29sdW1uKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9y
YWdlL0lEQktleVJhbmdlLmNwcCBiL1dlYkNvcmUvc3RvcmFnZS9JREJLZXlSYW5nZS5jcHAKaW5k
ZXggNmM2MTJjYy4uMTQyYjNiZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQktleVJh
bmdlLmNwcAorKysgYi9XZWJDb3JlL3N0b3JhZ2UvSURCS2V5UmFuZ2UuY3BwCkBAIC0zMiw3MyAr
MzIsNTMgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1JREJLZXlSYW5nZTo6SURCS2V5UmFu
Z2UoUGFzc1JlZlB0cjxJREJLZXk+IGxlZnQsIFBhc3NSZWZQdHI8SURCS2V5PiByaWdodCwgdW5z
aWduZWQgc2hvcnQgZmxhZ3MpCi0gICAgOiBtX2xlZnQobGVmdCkKLSAgICAsIG1fcmlnaHQocmln
aHQpCi0gICAgLCBtX2ZsYWdzKGZsYWdzKQorSURCS2V5UmFuZ2U6OklEQktleVJhbmdlKFBhc3NS
ZWZQdHI8SURCS2V5PiBsb3dlciwgUGFzc1JlZlB0cjxJREJLZXk+IHVwcGVyLCBib29sIGxvd2Vy
T3BlbiwgYm9vbCB1cHBlck9wZW4pCisgICAgOiBtX2xvd2VyKGxvd2VyKQorICAgICwgbV91cHBl
cih1cHBlcikKKyAgICAsIG1fbG93ZXJPcGVuKGxvd2VyT3BlbikKKyAgICAsIG1fdXBwZXJPcGVu
KHVwcGVyT3BlbikKIHsKIH0KIAogUGFzc1JlZlB0cjxJREJLZXlSYW5nZT4gSURCS2V5UmFuZ2U6
Om9ubHkoUGFzc1JlZlB0cjxJREJLZXk+IHBycFZhbHVlKQogewogICAgIFJlZlB0cjxJREJLZXk+
IHZhbHVlID0gcHJwVmFsdWU7Ci0gICAgcmV0dXJuIElEQktleVJhbmdlOjpjcmVhdGUodmFsdWUs
IHZhbHVlLCBJREJLZXlSYW5nZTo6U0lOR0xFKTsKKyAgICByZXR1cm4gSURCS2V5UmFuZ2U6OmNy
ZWF0ZSh2YWx1ZSwgdmFsdWUsIGZhbHNlLCBmYWxzZSk7CiB9CiAKLVBhc3NSZWZQdHI8SURCS2V5
UmFuZ2U+IElEQktleVJhbmdlOjpsZWZ0Qm91bmQoUGFzc1JlZlB0cjxJREJLZXk+IGJvdW5kLCBi
b29sIG9wZW4pCitQYXNzUmVmUHRyPElEQktleVJhbmdlPiBJREJLZXlSYW5nZTo6bG93ZXJCb3Vu
ZChQYXNzUmVmUHRyPElEQktleT4gYm91bmQsIGJvb2wgb3BlbikKIHsKLSAgICB1bnNpZ25lZCBz
aG9ydCBmbGFncyA9IElEQktleVJhbmdlOjpMRUZUX0JPVU5EOwotICAgIGlmIChvcGVuKQotICAg
ICAgICBmbGFncyB8PSBJREJLZXlSYW5nZTo6TEVGVF9PUEVOOwotICAgIHJldHVybiBJREJLZXlS
YW5nZTo6Y3JlYXRlKGJvdW5kLCBJREJLZXk6OmNyZWF0ZSgpLCBmbGFncyk7CisgICAgcmV0dXJu
IElEQktleVJhbmdlOjpjcmVhdGUoYm91bmQsIDAsIG9wZW4sIGZhbHNlKTsKIH0KIAotUGFzc1Jl
ZlB0cjxJREJLZXlSYW5nZT4gSURCS2V5UmFuZ2U6OnJpZ2h0Qm91bmQoUGFzc1JlZlB0cjxJREJL
ZXk+IGJvdW5kLCBib29sIG9wZW4pCitQYXNzUmVmUHRyPElEQktleVJhbmdlPiBJREJLZXlSYW5n
ZTo6dXBwZXJCb3VuZChQYXNzUmVmUHRyPElEQktleT4gYm91bmQsIGJvb2wgb3BlbikKIHsKLSAg
ICB1bnNpZ25lZCBzaG9ydCBmbGFncyA9IElEQktleVJhbmdlOjpSSUdIVF9CT1VORDsKLSAgICBp
ZiAob3BlbikKLSAgICAgICAgZmxhZ3MgfD0gSURCS2V5UmFuZ2U6OlJJR0hUX09QRU47Ci0gICAg
cmV0dXJuIElEQktleVJhbmdlOjpjcmVhdGUoSURCS2V5OjpjcmVhdGUoKSwgYm91bmQsIGZsYWdz
KTsKKyAgICByZXR1cm4gSURCS2V5UmFuZ2U6OmNyZWF0ZSgwLCBib3VuZCwgZmFsc2UsIG9wZW4p
OwogfQogCi1QYXNzUmVmUHRyPElEQktleVJhbmdlPiBJREJLZXlSYW5nZTo6Ym91bmQoUGFzc1Jl
ZlB0cjxJREJLZXk+IGxlZnQsIFBhc3NSZWZQdHI8SURCS2V5PiByaWdodCwgYm9vbCBvcGVuTGVm
dCwgYm9vbCBvcGVuUmlnaHQpCitQYXNzUmVmUHRyPElEQktleVJhbmdlPiBJREJLZXlSYW5nZTo6
Ym91bmQoUGFzc1JlZlB0cjxJREJLZXk+IGxvd2VyLCBQYXNzUmVmUHRyPElEQktleT4gdXBwZXIs
IGNvbnN0IE9wdGlvbnNPYmplY3QmIG9wdGlvbnMpCiB7Ci0gICAgdW5zaWduZWQgc2hvcnQgZmxh
Z3MgPSBJREJLZXlSYW5nZTo6TEVGVF9CT1VORCB8IElEQktleVJhbmdlOjpSSUdIVF9CT1VORDsK
LSAgICBpZiAob3BlbkxlZnQpCi0gICAgICAgIGZsYWdzIHw9IElEQktleVJhbmdlOjpMRUZUX09Q
RU47Ci0gICAgaWYgKG9wZW5SaWdodCkKLSAgICAgICAgZmxhZ3MgfD0gSURCS2V5UmFuZ2U6OlJJ
R0hUX09QRU47Ci0gICAgcmV0dXJuIElEQktleVJhbmdlOjpjcmVhdGUobGVmdCwgcmlnaHQsIGZs
YWdzKTsKKyAgICBib29sIGxvd2VyT3BlbiA9IGZhbHNlOworICAgIGJvb2wgdXBwZXJPcGVuID0g
ZmFsc2U7CisgICAgb3B0aW9ucy5nZXRLZXlCb29sKCJsb3dlck9wZW4iLCBsb3dlck9wZW4pOwor
ICAgIG9wdGlvbnMuZ2V0S2V5Qm9vbCgidXBwZXJPcGVuIiwgdXBwZXJPcGVuKTsKKyAgICByZXR1
cm4gSURCS2V5UmFuZ2U6OmNyZWF0ZShsb3dlciwgdXBwZXIsIGxvd2VyT3BlbiwgdXBwZXJPcGVu
KTsKIH0KIAotU3RyaW5nIElEQktleVJhbmdlOjpsZWZ0V2hlcmVDbGF1c2VDb21wYXJpc29uT3Bl
cmF0b3IoKSBjb25zdAorU3RyaW5nIElEQktleVJhbmdlOjpsb3dlcldoZXJlQ2xhdXNlQ29tcGFy
aXNvbk9wZXJhdG9yKCkgY29uc3QKIHsKLSAgICBpZiAobV9mbGFncyAmIExFRlRfT1BFTikKKyAg
ICBBU1NFUlQobV9sb3dlcik7CisgICAgaWYgKG1fbG93ZXJPcGVuKQogICAgICAgICByZXR1cm4g
IjwiOwotCi0gICAgaWYgKG1fZmxhZ3MgJiBMRUZUX0JPVU5EKQotICAgICAgICByZXR1cm4gIjw9
IjsKLQotICAgIGlmIChtX2ZsYWdzID09IFNJTkdMRSkKLSAgICAgICAgcmV0dXJuICI9IjsKLQot
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiAiIjsKKyAgICByZXR1cm4gIjw9
IjsKIH0KIAotU3RyaW5nIElEQktleVJhbmdlOjpyaWdodFdoZXJlQ2xhdXNlQ29tcGFyaXNvbk9w
ZXJhdG9yKCkgY29uc3QKK1N0cmluZyBJREJLZXlSYW5nZTo6dXBwZXJXaGVyZUNsYXVzZUNvbXBh
cmlzb25PcGVyYXRvcigpIGNvbnN0CiB7Ci0gICAgaWYgKG1fZmxhZ3MgJiBSSUdIVF9PUEVOKQor
ICAgIEFTU0VSVChtX3VwcGVyKTsKKyAgICBpZiAobV91cHBlck9wZW4pCiAgICAgICAgIHJldHVy
biAiPCI7Ci0KLSAgICBpZiAobV9mbGFncyAmIFJJR0hUX0JPVU5EKQotICAgICAgICByZXR1cm4g
Ijw9IjsKLQotICAgIGlmIChtX2ZsYWdzID09IFNJTkdMRSkKLSAgICAgICAgcmV0dXJuICI9IjsK
LQotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiAiIjsKKyAgICByZXR1cm4g
Ijw9IjsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9z
dG9yYWdlL0lEQktleVJhbmdlLmggYi9XZWJDb3JlL3N0b3JhZ2UvSURCS2V5UmFuZ2UuaAppbmRl
eCBkMjQ2ZWJjLi44YWY0OGZlIDEwMDY0NAotLS0gYS9XZWJDb3JlL3N0b3JhZ2UvSURCS2V5UmFu
Z2UuaAorKysgYi9XZWJDb3JlL3N0b3JhZ2UvSURCS2V5UmFuZ2UuaApAQCAtMjksNiArMjksNyBA
QAogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogCiAjaW5jbHVkZSAiSURCS2V5LmgiCisj
aW5jbHVkZSAiT3B0aW9uc09iamVjdC5oIgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CiAj
aW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgogCkBAIC0zNiw0MSArMzcsMzMgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBjbGFzcyBJREJLZXlSYW5nZSA6IHB1YmxpYyBUaHJlYWRTYWZlU2hhcmVk
PElEQktleVJhbmdlPiB7CiBwdWJsaWM6Ci0gICAgLy8gS2VlcCBpbiBzeW5jIHdpdGggd2hhdCdz
IGluIHRoZSAuaWRsIGZpbGUuCi0gICAgZW51bSBGbGFncyB7Ci0gICAgICAgIFNJTkdMRSA9IDAs
Ci0gICAgICAgIExFRlRfT1BFTiA9IDEsCi0gICAgICAgIFJJR0hUX09QRU4gPSAyLAotICAgICAg
ICBMRUZUX0JPVU5EID0gNCwKLSAgICAgICAgUklHSFRfQk9VTkQgPSA4LAotICAgIH07Ci0KLSAg
ICBzdGF0aWMgUGFzc1JlZlB0cjxJREJLZXlSYW5nZT4gY3JlYXRlKFBhc3NSZWZQdHI8SURCS2V5
PiBsZWZ0LCBQYXNzUmVmUHRyPElEQktleT4gcmlnaHQsIHVuc2lnbmVkIHNob3J0IGZsYWdzKQor
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPElEQktleVJhbmdlPiBjcmVhdGUoUGFzc1JlZlB0cjxJREJL
ZXk+IGxvd2VyLCBQYXNzUmVmUHRyPElEQktleT4gdXBwZXIsIGJvb2wgbG93ZXJPcGVuLCBib29s
IHVwcGVyT3BlbikKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSURCS2V5UmFu
Z2UobGVmdCwgcmlnaHQsIGZsYWdzKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgSURC
S2V5UmFuZ2UobG93ZXIsIHVwcGVyLCBsb3dlck9wZW4sIHVwcGVyT3BlbikpOwogICAgIH0KLQog
ICAgIH5JREJLZXlSYW5nZSgpIHsgfQogCiAKLSAgICBQYXNzUmVmUHRyPElEQktleT4gbGVmdCgp
IGNvbnN0IHsgcmV0dXJuIG1fbGVmdDsgfQotICAgIFBhc3NSZWZQdHI8SURCS2V5PiByaWdodCgp
IGNvbnN0IHsgcmV0dXJuIG1fcmlnaHQ7IH0KLSAgICB1bnNpZ25lZCBzaG9ydCBmbGFncygpIGNv
bnN0IHsgcmV0dXJuIG1fZmxhZ3M7IH0KKyAgICBQYXNzUmVmUHRyPElEQktleT4gbG93ZXIoKSBj
b25zdCB7IHJldHVybiBtX2xvd2VyOyB9CisgICAgUGFzc1JlZlB0cjxJREJLZXk+IHVwcGVyKCkg
Y29uc3QgeyByZXR1cm4gbV91cHBlcjsgfQorICAgIGJvb2wgbG93ZXJPcGVuKCkgY29uc3QgeyBy
ZXR1cm4gbV9sb3dlck9wZW47IH0KKyAgICBib29sIHVwcGVyT3BlbigpIGNvbnN0IHsgcmV0dXJu
IG1fdXBwZXJPcGVuOyB9CiAKLSAgICBTdHJpbmcgbGVmdFdoZXJlQ2xhdXNlQ29tcGFyaXNvbk9w
ZXJhdG9yKCkgY29uc3Q7Ci0gICAgU3RyaW5nIHJpZ2h0V2hlcmVDbGF1c2VDb21wYXJpc29uT3Bl
cmF0b3IoKSBjb25zdDsKKyAgICBTdHJpbmcgbG93ZXJXaGVyZUNsYXVzZUNvbXBhcmlzb25PcGVy
YXRvcigpIGNvbnN0OworICAgIFN0cmluZyB1cHBlcldoZXJlQ2xhdXNlQ29tcGFyaXNvbk9wZXJh
dG9yKCkgY29uc3Q7CiAKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxJREJLZXlSYW5nZT4gb25seShQ
YXNzUmVmUHRyPElEQktleT4gdmFsdWUpOwotICAgIHN0YXRpYyBQYXNzUmVmUHRyPElEQktleVJh
bmdlPiBsZWZ0Qm91bmQoUGFzc1JlZlB0cjxJREJLZXk+IGJvdW5kLCBib29sIG9wZW4gPSBmYWxz
ZSk7Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8SURCS2V5UmFuZ2U+IHJpZ2h0Qm91bmQoUGFzc1Jl
ZlB0cjxJREJLZXk+IGJvdW5kLCBib29sIG9wZW4gPSBmYWxzZSk7Ci0gICAgc3RhdGljIFBhc3NS
ZWZQdHI8SURCS2V5UmFuZ2U+IGJvdW5kKFBhc3NSZWZQdHI8SURCS2V5PiBsZWZ0LCBQYXNzUmVm
UHRyPElEQktleT4gcmlnaHQsIGJvb2wgb3BlbkxlZnQgPSBmYWxzZSwgYm9vbCBvcGVuUmlnaHQg
PSBmYWxzZSk7CisgICAgc3RhdGljIFBhc3NSZWZQdHI8SURCS2V5UmFuZ2U+IGxvd2VyQm91bmQo
UGFzc1JlZlB0cjxJREJLZXk+IGJvdW5kLCBib29sIG9wZW4gPSBmYWxzZSk7CisgICAgc3RhdGlj
IFBhc3NSZWZQdHI8SURCS2V5UmFuZ2U+IHVwcGVyQm91bmQoUGFzc1JlZlB0cjxJREJLZXk+IGJv
dW5kLCBib29sIG9wZW4gPSBmYWxzZSk7CisgICAgc3RhdGljIFBhc3NSZWZQdHI8SURCS2V5UmFu
Z2U+IGJvdW5kKFBhc3NSZWZQdHI8SURCS2V5PiBsb3dlciwgUGFzc1JlZlB0cjxJREJLZXk+IHVw
cGVyLCBjb25zdCBPcHRpb25zT2JqZWN0JiA9IE9wdGlvbnNPYmplY3QoKSk7CiAKIHByaXZhdGU6
Ci0gICAgSURCS2V5UmFuZ2UoUGFzc1JlZlB0cjxJREJLZXk+IGxlZnQsIFBhc3NSZWZQdHI8SURC
S2V5PiByaWdodCwgdW5zaWduZWQgc2hvcnQgZmxhZ3MpOworICAgIElEQktleVJhbmdlKFBhc3NS
ZWZQdHI8SURCS2V5PiBsb3dlciwgUGFzc1JlZlB0cjxJREJLZXk+IHVwcGVyLCBib29sIGxvd2Vy
T3BlbiwgYm9vbCB1cHBlck9wZW4pOwogCi0gICAgUmVmUHRyPElEQktleT4gbV9sZWZ0OwotICAg
IFJlZlB0cjxJREJLZXk+IG1fcmlnaHQ7Ci0gICAgdW5zaWduZWQgc2hvcnQgbV9mbGFnczsKKyAg
ICBSZWZQdHI8SURCS2V5PiBtX2xvd2VyOworICAgIFJlZlB0cjxJREJLZXk+IG1fdXBwZXI7Cisg
ICAgYm9vbCBtX2xvd2VyT3BlbjsKKyAgICBib29sIG1fdXBwZXJPcGVuOwogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lEQktleVJhbmdl
LmlkbCBiL1dlYkNvcmUvc3RvcmFnZS9JREJLZXlSYW5nZS5pZGwKaW5kZXggOGU0ZDYxZi4uZDdm
YTA3NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQktleVJhbmdlLmlkbAorKysgYi9X
ZWJDb3JlL3N0b3JhZ2UvSURCS2V5UmFuZ2UuaWRsCkBAIC0yOCwyMiArMjgsMTYgQEAgbW9kdWxl
IHN0b3JhZ2UgewogICAgIGludGVyZmFjZSBbCiAgICAgICAgIENvbmRpdGlvbmFsPUlOREVYRURf
REFUQUJBU0UKICAgICBdIElEQktleVJhbmdlIHsKLSAgICAgICAgLy8gS2VlcCBpbiBzeW5jIHdp
dGggd2hhdCdzIGluIHRoZSAuaCBmaWxlLgotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBT
SU5HTEUgPSAwOwotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBMRUZUX09QRU4gPSAxOwot
ICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBSSUdIVF9PUEVOID0gMjsKLSAgICAgICAgY29u
c3QgdW5zaWduZWQgc2hvcnQgTEVGVF9CT1VORCA9IDQ7Ci0gICAgICAgIGNvbnN0IHVuc2lnbmVk
IHNob3J0IFJJR0hUX0JPVU5EID0gODsKLQotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgSURC
S2V5IGxlZnQ7Ci0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBJREJLZXkgcmlnaHQ7Ci0gICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCBmbGFnczsKKyAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIElEQktleSBsb3dlcjsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IElEQktleSB1cHBlcjsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gbG93ZXJP
cGVuOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiB1cHBlck9wZW47CiAKICAg
ICAgICAgLy8gRklYTUU6IE1ha2UgQ2xhc3NNZXRob2Qgd29yayBmb3IgSlNDIGFzIHdlbGwuCiAg
ICAgICAgIFtDbGFzc01ldGhvZF0gSURCS2V5UmFuZ2Ugb25seShpbiBJREJLZXkgdmFsdWUpOwot
ICAgICAgICBbQ2xhc3NNZXRob2RdIElEQktleVJhbmdlIGxlZnRCb3VuZChpbiBJREJLZXkgYm91
bmQsIGluIFtPcHRpb25hbF0gYm9vbGVhbiBvcGVuKTsKLSAgICAgICAgW0NsYXNzTWV0aG9kXSBJ
REJLZXlSYW5nZSByaWdodEJvdW5kKGluIElEQktleSBib3VuZCwgaW4gW09wdGlvbmFsXSBib29s
ZWFuIG9wZW4pOwotICAgICAgICBbQ2xhc3NNZXRob2RdIElEQktleVJhbmdlIGJvdW5kKGluIElE
QktleSBsZWZ0LCBpbiBJREJLZXkgcmlnaHQsIGluIFtPcHRpb25hbF0gYm9vbGVhbiBvcGVuTGVm
dCwgaW4gW09wdGlvbmFsXSBib29sZWFuIG9wZW5SaWdodCk7CisgICAgICAgIFtDbGFzc01ldGhv
ZF0gSURCS2V5UmFuZ2UgbG93ZXJCb3VuZChpbiBJREJLZXkgYm91bmQsIGluIFtPcHRpb25hbF0g
Ym9vbGVhbiBvcGVuKTsKKyAgICAgICAgW0NsYXNzTWV0aG9kXSBJREJLZXlSYW5nZSB1cHBlckJv
dW5kKGluIElEQktleSBib3VuZCwgaW4gW09wdGlvbmFsXSBib29sZWFuIG9wZW4pOworICAgICAg
ICBbQ2xhc3NNZXRob2RdIElEQktleVJhbmdlIGJvdW5kKGluIElEQktleSBsb3dlciwgaW4gSURC
S2V5IHVwcGVyLCBpbiBbT3B0aW9uYWxdIE9wdGlvbnNPYmplY3Qgb3B0aW9ucyk7CiAgICAgfTsK
IAogfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lEQk9iamVjdFN0b3JlQmFja2VuZElt
cGwuY3BwIGIvV2ViQ29yZS9zdG9yYWdlL0lEQk9iamVjdFN0b3JlQmFja2VuZEltcGwuY3BwCmlu
ZGV4IDdmYzRmOTguLjU2YWExNjcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJPYmpl
Y3RTdG9yZUJhY2tlbmRJbXBsLmNwcAorKysgYi9XZWJDb3JlL3N0b3JhZ2UvSURCT2JqZWN0U3Rv
cmVCYWNrZW5kSW1wbC5jcHAKQEAgLTQwMywxNSArNDAzLDE1IEBAIHZvaWQgSURCT2JqZWN0U3Rv
cmVCYWNrZW5kSW1wbDo6b3BlbkN1cnNvcihQYXNzUmVmUHRyPElEQktleVJhbmdlPiBwcnBSYW5n
ZSwgdW5zCiAKIHZvaWQgSURCT2JqZWN0U3RvcmVCYWNrZW5kSW1wbDo6b3BlbkN1cnNvckludGVy
bmFsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBQYXNzUmVmUHRyPElEQk9iamVjdFN0b3JlQmFj
a2VuZEltcGw+IG9iamVjdFN0b3JlLCBQYXNzUmVmUHRyPElEQktleVJhbmdlPiByYW5nZSwgdW5z
aWduZWQgc2hvcnQgdG1wRGlyZWN0aW9uLCBQYXNzUmVmUHRyPElEQkNhbGxiYWNrcz4gY2FsbGJh
Y2tzLCBQYXNzUmVmUHRyPElEQlRyYW5zYWN0aW9uQmFja2VuZEludGVyZmFjZT4gdHJhbnNhY3Rp
b24pCiB7Ci0gICAgYm9vbCBsZWZ0Qm91bmQgPSByYW5nZSAmJiAocmFuZ2UtPmZsYWdzKCkgJiBJ
REJLZXlSYW5nZTo6TEVGVF9CT1VORCB8fCByYW5nZS0+ZmxhZ3MoKSA9PSBJREJLZXlSYW5nZTo6
U0lOR0xFKTsKLSAgICBib29sIHJpZ2h0Qm91bmQgPSByYW5nZSAmJiAocmFuZ2UtPmZsYWdzKCkg
JiBJREJLZXlSYW5nZTo6UklHSFRfQk9VTkQgfHwgcmFuZ2UtPmZsYWdzKCkgPT0gSURCS2V5UmFu
Z2U6OlNJTkdMRSk7CisgICAgYm9vbCBsb3dlckJvdW5kID0gcmFuZ2UgJiYgcmFuZ2UtPmxvd2Vy
KCk7CisgICAgYm9vbCB1cHBlckJvdW5kID0gcmFuZ2UgJiYgcmFuZ2UtPnVwcGVyKCk7CiAKICAg
ICAvLyBTZXZlcmFsIGZpbGVzIGRlcGVuZCBvbiB0aGlzIG9yZGVyIG9mIHNlbGVjdHMuCiAgICAg
U3RyaW5nIHNxbCA9ICJTRUxFQ1QgaWQsIGtleVN0cmluZywga2V5RGF0ZSwga2V5TnVtYmVyLCB2
YWx1ZSBGUk9NIE9iamVjdFN0b3JlRGF0YSBXSEVSRSAiOwotICAgIGlmIChsZWZ0Qm91bmQpCi0g
ICAgICAgIHNxbCArPSByYW5nZS0+bGVmdCgpLT5sZWZ0Q3Vyc29yV2hlcmVGcmFnbWVudChyYW5n
ZS0+bGVmdFdoZXJlQ2xhdXNlQ29tcGFyaXNvbk9wZXJhdG9yKCkpOwotICAgIGlmIChyaWdodEJv
dW5kKQotICAgICAgICBzcWwgKz0gcmFuZ2UtPnJpZ2h0KCktPnJpZ2h0Q3Vyc29yV2hlcmVGcmFn
bWVudChyYW5nZS0+cmlnaHRXaGVyZUNsYXVzZUNvbXBhcmlzb25PcGVyYXRvcigpKTsKKyAgICBp
ZiAobG93ZXJCb3VuZCkKKyAgICAgICAgc3FsICs9IHJhbmdlLT5sb3dlcigpLT5sb3dlckN1cnNv
cldoZXJlRnJhZ21lbnQocmFuZ2UtPmxvd2VyV2hlcmVDbGF1c2VDb21wYXJpc29uT3BlcmF0b3Io
KSk7CisgICAgaWYgKHVwcGVyQm91bmQpCisgICAgICAgIHNxbCArPSByYW5nZS0+dXBwZXIoKS0+
dXBwZXJDdXJzb3JXaGVyZUZyYWdtZW50KHJhbmdlLT51cHBlcldoZXJlQ2xhdXNlQ29tcGFyaXNv
bk9wZXJhdG9yKCkpOwogICAgIHNxbCArPSAib2JqZWN0U3RvcmVJZCA9ID8gT1JERVIgQlkgIjsK
IAogICAgIElEQkN1cnNvcjo6RGlyZWN0aW9uIGRpcmVjdGlvbiA9IHN0YXRpY19jYXN0PElEQkN1
cnNvcjo6RGlyZWN0aW9uPih0bXBEaXJlY3Rpb24pOwpAQCAtNDI1LDEwICs0MjUsMTAgQEAgdm9p
ZCBJREJPYmplY3RTdG9yZUJhY2tlbmRJbXBsOjpvcGVuQ3Vyc29ySW50ZXJuYWwoU2NyaXB0RXhl
Y3V0aW9uQ29udGV4dCosIFBhc3MKICAgICBBU1NFUlRfVU5VU0VEKG9rLCBvayk7IC8vIEZJWE1F
OiBCZXR0ZXIgZXJyb3IgaGFuZGxpbmc/CiAKICAgICBpbnQgY3VycmVudENvbHVtbiA9IDE7Ci0g
ICAgaWYgKGxlZnRCb3VuZCkKLSAgICAgICAgY3VycmVudENvbHVtbiArPSByYW5nZS0+bGVmdCgp
LT5iaW5kKCpxdWVyeSwgY3VycmVudENvbHVtbik7Ci0gICAgaWYgKHJpZ2h0Qm91bmQpCi0gICAg
ICAgIGN1cnJlbnRDb2x1bW4gKz0gcmFuZ2UtPnJpZ2h0KCktPmJpbmQoKnF1ZXJ5LCBjdXJyZW50
Q29sdW1uKTsKKyAgICBpZiAobG93ZXJCb3VuZCkKKyAgICAgICAgY3VycmVudENvbHVtbiArPSBy
YW5nZS0+bG93ZXIoKS0+YmluZCgqcXVlcnksIGN1cnJlbnRDb2x1bW4pOworICAgIGlmICh1cHBl
ckJvdW5kKQorICAgICAgICBjdXJyZW50Q29sdW1uICs9IHJhbmdlLT51cHBlcigpLT5iaW5kKCpx
dWVyeSwgY3VycmVudENvbHVtbik7CiAgICAgcXVlcnktPmJpbmRJbnQ2NChjdXJyZW50Q29sdW1u
LCBvYmplY3RTdG9yZS0+aWQoKSk7CiAKICAgICBpZiAocXVlcnktPnN0ZXAoKSAhPSBTUUxSZXN1
bHRSb3cpIHsKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGY4NjYxMjAuLmI4YmFlYjcgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI1IEBACisyMDEwLTExLTI2ICBKZXJlbXkgT3Jsb3cgIDxqb3Jsb3dAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IE1ha2UgSURCS2V5UmFuZ2UgbWF0Y2ggdGhlIHNwZWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMTA1CisKKyAgICAgICAgUmVtb3ZlIGZsYWdzIGFu
ZCBpbnN0ZWFkIGFkZCB0d28gYm9vbGVhbnMgZm9yIGJlaW5nIG9wZW4uCisgICAgICAgIENoYW5n
ZSBsZWZ0IHRvIGxvd2VyIGFuZCByaWdodCB0byB1cHBlciBldmVyeXdoZXJlLgorCisgICAgICAg
ICogcHVibGljL1dlYklEQktleVJhbmdlLmg6CisgICAgICAgIChXZWJLaXQ6OldlYklEQktleVJh
bmdlOjpXZWJJREJLZXlSYW5nZSk6CisgICAgICAgICogc3JjL1dlYklEQktleVJhbmdlLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViSURCS2V5UmFuZ2U6OmFzc2lnbik6CisgICAgICAgIChXZWJL
aXQ6OldlYklEQktleVJhbmdlOjpsZWZ0KToKKyAgICAgICAgKFdlYktpdDo6V2ViSURCS2V5UmFu
Z2U6OnJpZ2h0KToKKyAgICAgICAgKFdlYktpdDo6V2ViSURCS2V5UmFuZ2U6Omxvd2VyKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViSURCS2V5UmFuZ2U6OnVwcGVyKToKKyAgICAgICAgKFdlYktpdDo6
V2ViSURCS2V5UmFuZ2U6Omxvd2VyT3Blbik6CisgICAgICAgIChXZWJLaXQ6OldlYklEQktleVJh
bmdlOjp1cHBlck9wZW4pOgorICAgICAgICAoV2ViS2l0OjpXZWJJREJLZXlSYW5nZTo6ZmxhZ3Mp
OgorCiAyMDEwLTExLTI1ICBKZXJlbXkgT3Jsb3cgIDxqb3Jsb3dAY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJJREJLZXlSYW5nZS5oIGIvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9X
ZWJJREJLZXlSYW5nZS5oCmluZGV4IDgyOTUzY2UuLjZhOWM2ZGEgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViSURCS2V5UmFuZ2UuaAorKysgYi9XZWJLaXQvY2hyb21pdW0v
cHVibGljL1dlYklEQktleVJhbmdlLmgKQEAgLTQxLDE0ICs0MSwyMiBAQCBwdWJsaWM6CiAgICAg
fldlYklEQktleVJhbmdlKCkgeyByZXNldCgpOyB9CiAKICAgICBXZWJJREJLZXlSYW5nZShjb25z
dCBXZWJJREJLZXlSYW5nZSYga2V5UmFuZ2UpIHsgYXNzaWduKGtleVJhbmdlKTsgfQotICAgIFdl
YklEQktleVJhbmdlKGNvbnN0IFdlYklEQktleSYgbGVmdCwgY29uc3QgV2ViSURCS2V5JiByaWdo
dCwgdW5zaWduZWQgc2hvcnQgZmxhZ3MpIHsgYXNzaWduKGxlZnQsIHJpZ2h0LCBmbGFncyk7IH0K
KyAgICBXZWJJREJLZXlSYW5nZShjb25zdCBXZWJJREJLZXkmIGxvd2VyLCBjb25zdCBXZWJJREJL
ZXkmIHVwcGVyLCBib29sIGxvd2VyT3BlbiwgYm9vbCB1cHBlck9wZW4pIHsgYXNzaWduKGxvd2Vy
LCB1cHBlciwgbG93ZXJPcGVuLCB1cHBlck9wZW4pOyB9CiAKKyAgICAvLyBGSVhNRTogUmVtb3Zl
IG5leHQgMyBtZXRob2RzIGFmdGVyIG5leHQgcm9sbC4KKyAgICBXZWJJREJLZXlSYW5nZShjb25z
dCBXZWJJREJLZXkmIGxvd2VyLCBjb25zdCBXZWJJREJLZXkmIHVwcGVyLCB1bnNpZ25lZCBzaG9y
dCBmbGFncykgeyBhc3NpZ24obG93ZXIsIHVwcGVyLCBmbGFncyk7IH0KKyAgICBXRUJLSVRfQVBJ
IHZvaWQgYXNzaWduKGNvbnN0IFdlYklEQktleSYgbG93ZXIsIGNvbnN0IFdlYklEQktleSYgdXBw
ZXIsIHVuc2lnbmVkIHNob3J0IGZsYWdzKTsKKyAgICBXRUJLSVRfQVBJIHVuc2lnbmVkIHNob3J0
IGZsYWdzKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBXZWJJREJLZXkgbGVmdCgpIGNvbnN0Owog
ICAgIFdFQktJVF9BUEkgV2ViSURCS2V5IHJpZ2h0KCkgY29uc3Q7Ci0gICAgV0VCS0lUX0FQSSB1
bnNpZ25lZCBzaG9ydCBmbGFncygpIGNvbnN0OworCisgICAgV0VCS0lUX0FQSSBXZWJJREJLZXkg
bG93ZXIoKSBjb25zdDsKKyAgICBXRUJLSVRfQVBJIFdlYklEQktleSB1cHBlcigpIGNvbnN0Owor
ICAgIFdFQktJVF9BUEkgYm9vbCBsb3dlck9wZW4oKSBjb25zdDsKKyAgICBXRUJLSVRfQVBJIGJv
b2wgdXBwZXJPcGVuKCkgY29uc3Q7CiAKICAgICBXRUJLSVRfQVBJIHZvaWQgYXNzaWduKGNvbnN0
IFdlYklEQktleVJhbmdlJik7Ci0gICAgV0VCS0lUX0FQSSB2b2lkIGFzc2lnbihjb25zdCBXZWJJ
REJLZXkmIGxlZnQsIGNvbnN0IFdlYklEQktleSYgcmlnaHQsIHVuc2lnbmVkIHNob3J0IGZsYWdz
KTsKKyAgICBXRUJLSVRfQVBJIHZvaWQgYXNzaWduKGNvbnN0IFdlYklEQktleSYgbG93ZXIsIGNv
bnN0IFdlYklEQktleSYgdXBwZXIsIGJvb2wgbG93ZXJPcGVuLCBib29sIHVwcGVyT3Blbik7CiAg
ICAgV0VCS0lUX0FQSSB2b2lkIHJlc2V0KCk7CiAKICNpZiBXRUJLSVRfSU1QTEVNRU5UQVRJT04K
ZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViSURCS2V5UmFuZ2UuY3BwIGIvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJJREJLZXlSYW5nZS5jcHAKaW5kZXggNzIwYWY1Zi4uZWM1Yjdj
MiAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJREJLZXlSYW5nZS5jcHAKKysr
IGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJJREJLZXlSYW5nZS5jcHAKQEAgLTM5LDEyICszOSwy
NCBAQCB2b2lkIFdlYklEQktleVJhbmdlOjphc3NpZ24oY29uc3QgV2ViSURCS2V5UmFuZ2UmIG90
aGVyKQogICAgIG1fcHJpdmF0ZSA9IG90aGVyLm1fcHJpdmF0ZTsKIH0KIAotdm9pZCBXZWJJREJL
ZXlSYW5nZTo6YXNzaWduKGNvbnN0IFdlYklEQktleSYgbGVmdCwgY29uc3QgV2ViSURCS2V5JiBy
aWdodCwgdW5zaWduZWQgc2hvcnQgZmxhZ3MpCit2b2lkIFdlYklEQktleVJhbmdlOjphc3NpZ24o
Y29uc3QgV2ViSURCS2V5JiBsb3dlciwgY29uc3QgV2ViSURCS2V5JiB1cHBlciwgYm9vbCBsb3dl
ck9wZW4sIGJvb2wgdXBwZXJPcGVuKQogewotICAgIGlmIChsZWZ0LnR5cGUoKSA9PSBXZWJJREJL
ZXk6OkludmFsaWRUeXBlICYmIHJpZ2h0LnR5cGUoKSA9PSBXZWJJREJLZXk6OkludmFsaWRUeXBl
KQorICAgIGlmIChsb3dlci50eXBlKCkgPT0gV2ViSURCS2V5OjpJbnZhbGlkVHlwZSAmJiB1cHBl
ci50eXBlKCkgPT0gV2ViSURCS2V5OjpJbnZhbGlkVHlwZSkKICAgICAgICAgbV9wcml2YXRlID0g
MDsKICAgICBlbHNlCi0gICAgICAgIG1fcHJpdmF0ZSA9IElEQktleVJhbmdlOjpjcmVhdGUobGVm
dCwgcmlnaHQsIGZsYWdzKTsKKyAgICAgICAgbV9wcml2YXRlID0gSURCS2V5UmFuZ2U6OmNyZWF0
ZShsb3dlciwgdXBwZXIsIGxvd2VyT3BlbiwgdXBwZXJPcGVuKTsKK30KKworLy8gRklYTUU6IFJl
bW92ZSB0aGlzIGFmdGVyIG5leHQgcm9sbC4KK3ZvaWQgV2ViSURCS2V5UmFuZ2U6OmFzc2lnbihj
b25zdCBXZWJJREJLZXkmIGxvd2VyLCBjb25zdCBXZWJJREJLZXkmIHVwcGVyLCB1bnNpZ25lZCBz
aG9ydCBmbGFncykKK3sKKyAgICBib29sIGxvd2VyT3BlbiA9ICEhKGZsYWdzICYgMSk7CisgICAg
Ym9vbCB1cHBlck9wZW4gPSAhIShmbGFncyAmIDIpOworCisgICAgaWYgKGxvd2VyLnR5cGUoKSA9
PSBXZWJJREJLZXk6OkludmFsaWRUeXBlICYmIHVwcGVyLnR5cGUoKSA9PSBXZWJJREJLZXk6Oklu
dmFsaWRUeXBlKQorICAgICAgICBtX3ByaXZhdGUgPSAwOworICAgIGVsc2UKKyAgICAgICAgbV9w
cml2YXRlID0gSURCS2V5UmFuZ2U6OmNyZWF0ZShsb3dlciwgdXBwZXIsIGxvd2VyT3BlbiwgdXBw
ZXJPcGVuKTsKIH0KIAogdm9pZCBXZWJJREJLZXlSYW5nZTo6cmVzZXQoKQpAQCAtNTQsMjMgKzY2
LDUwIEBAIHZvaWQgV2ViSURCS2V5UmFuZ2U6OnJlc2V0KCkKIAogV2ViSURCS2V5IFdlYklEQktl
eVJhbmdlOjpsZWZ0KCkgY29uc3QKIHsKKyAgICByZXR1cm4gbG93ZXIoKTsKK30KKworV2ViSURC
S2V5IFdlYklEQktleVJhbmdlOjpyaWdodCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIHVwcGVyKCk7
Cit9CisKK1dlYklEQktleSBXZWJJREJLZXlSYW5nZTo6bG93ZXIoKSBjb25zdAorewogICAgIGlm
ICghbV9wcml2YXRlLmdldCgpKQogICAgICAgICByZXR1cm4gV2ViSURCS2V5OjpjcmVhdGVJbnZh
bGlkKCk7Ci0gICAgcmV0dXJuIG1fcHJpdmF0ZS0+bGVmdCgpOworICAgIHJldHVybiBtX3ByaXZh
dGUtPmxvd2VyKCk7CiB9CiAKLVdlYklEQktleSBXZWJJREJLZXlSYW5nZTo6cmlnaHQoKSBjb25z
dAorV2ViSURCS2V5IFdlYklEQktleVJhbmdlOjp1cHBlcigpIGNvbnN0CiB7CiAgICAgaWYgKCFt
X3ByaXZhdGUuZ2V0KCkpCiAgICAgICAgIHJldHVybiBXZWJJREJLZXk6OmNyZWF0ZUludmFsaWQo
KTsKLSAgICByZXR1cm4gbV9wcml2YXRlLT5yaWdodCgpOworICAgIHJldHVybiBtX3ByaXZhdGUt
PnVwcGVyKCk7Cit9CisKK2Jvb2wgV2ViSURCS2V5UmFuZ2U6Omxvd2VyT3BlbigpIGNvbnN0Cit7
CisgICAgcmV0dXJuIG1fcHJpdmF0ZS5nZXQoKSAmJiBtX3ByaXZhdGUtPmxvd2VyT3BlbigpOwog
fQogCitib29sIFdlYklEQktleVJhbmdlOjp1cHBlck9wZW4oKSBjb25zdAoreworICAgIHJldHVy
biBtX3ByaXZhdGUuZ2V0KCkgJiYgbV9wcml2YXRlLT51cHBlck9wZW4oKTsKK30KKworLy8gRklY
TUU6IFJlbW92ZSB0aGlzIGFmdGVyIG5leHQgcm9sbC4KIHVuc2lnbmVkIHNob3J0IFdlYklEQktl
eVJhbmdlOjpmbGFncygpIGNvbnN0CiB7CiAgICAgaWYgKCFtX3ByaXZhdGUuZ2V0KCkpCiAgICAg
ICAgIHJldHVybiAwOwotICAgIHJldHVybiBtX3ByaXZhdGUtPmZsYWdzKCk7CisKKyAgICB1bnNp
Z25lZCBzaG9ydCBmbGFncyA9IDA7CisgICAgaWYgKG1fcHJpdmF0ZS0+bG93ZXJPcGVuKCkpCisg
ICAgICAgIGZsYWdzIHw9IDE7CisgICAgaWYgKG1fcHJpdmF0ZS0+dXBwZXJPcGVuKCkpCisgICAg
ICAgIGZsYWdzIHw9IDI7CisgICAgcmV0dXJuIGZsYWdzOwogfQogCiBXZWJJREJLZXlSYW5nZTo6
V2ViSURCS2V5UmFuZ2UoY29uc3QgUGFzc1JlZlB0cjxJREJLZXlSYW5nZT4mIHZhbHVlKQo=
</data>
<flag name="review"
          id="65628"
          type_id="1"
          status="+"
          setter="steveblock"
    />
          </attachment>
      

    </bug>

</bugzilla>