<?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>52212</bug_id>
          
          <creation_ts>2011-01-11 07:58:52 -0800</creation_ts>
          <short_desc>Web Inspector: Employ TextPrompt for CSS property name/value autocompletion</short_desc>
          <delta_ts>2011-01-19 05:26:22 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexander Pavlov (apavlov)">apavlov</reporter>
          <assigned_to name="Alexander Pavlov (apavlov)">apavlov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>332337</commentid>
    <comment_count>0</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-01-11 07:58:52 -0800</bug_when>
    <thetext>TextPrompt features text autocompletion, which is a great feature we could use for autocompleting CSS property names/values instead of writing ad-hoc autocompletions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>333743</commentid>
    <comment_count>1</comment_count>
      <attachid>78819</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-01-13 09:39:55 -0800</bug_when>
    <thetext>Created attachment 78819
[PATCH] Suggested solution</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334267</commentid>
    <comment_count>2</comment_count>
      <attachid>78819</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-01-14 06:02:43 -0800</bug_when>
    <thetext>Comment on attachment 78819
[PATCH] Suggested solution

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

&gt; Source/WebCore/inspector/front-end/CSSKeywordCompletions.js:2
&gt; + * Copyright (C) 2010 Google Inc. All rights reserved.

2011

&gt; Source/WebCore/inspector/front-end/StylesSidebarPane.js:1630
&gt; +                    return { keyIdentifier: &quot;___&quot;, handled: false };

___ looks weird, can you use null or undefined instead?

&gt; Source/WebCore/inspector/front-end/TextPrompt.js:76
&gt; +        if (this._customKeyDownHandler) {

Let&apos;s extract Up, Down and Tab handlers into their own methods to allow overriding them. r- for this.

&gt; Source/WebCore/inspector/front-end/TextPrompt.js:400
&gt; +    _tabKeyPressed: function(reverse)

This method can be inlined.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334289</commentid>
    <comment_count>3</comment_count>
      <attachid>78939</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-01-14 07:10:26 -0800</bug_when>
    <thetext>Created attachment 78939
[PATCH] Comments addressed

Introduced a customKeyHandlers parameter into the TextPrompt ctor to pass in custom Up, Down, and Tab handlers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>334329</commentid>
    <comment_count>4</comment_count>
      <attachid>78946</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-01-14 08:51:58 -0800</bug_when>
    <thetext>Created attachment 78946
[PATCH] Inherited TextPrompt to override key handlers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335208</commentid>
    <comment_count>5</comment_count>
      <attachid>78946</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-01-17 01:45:48 -0800</bug_when>
    <thetext>Comment on attachment 78946
[PATCH] Inherited TextPrompt to override key handlers

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

r- is for managing selection in the sidebar, rest seems fine.

&gt; Source/WebCore/inspector/front-end/CSSKeywordCompletions.js:45
&gt; +WebInspector.CSSKeywordCompletions._colors = [

Nit: please compress to ~120 chars per line.

&gt; Source/WebCore/inspector/front-end/CSSKeywordCompletions.js:197
&gt; +WebInspector.CSSKeywordCompletions._colorAwareProperties = [

ditto

&gt; Source/WebCore/inspector/front-end/CSSKeywordCompletions.js:224
&gt; +WebInspector.CSSKeywordCompletions._propertyKeywordMap = {

ditto

&gt; Source/WebCore/inspector/front-end/StylesSidebarPane.js:1690
&gt; +            finalSelectionRange.setStart(replacementTextNode, 0);

I would expect all the selection management code to move to the prompt. Why is it still here?

&gt; Source/WebCore/inspector/front-end/StylesSidebarPane.js:1902
&gt; +

Nit: blank line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335227</commentid>
    <comment_count>6</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-01-17 03:03:57 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 78946 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=78946&amp;action=review
&gt; 
&gt; r- is for managing selection in the sidebar, rest seems fine.
&gt; 
&gt; &gt; Source/WebCore/inspector/front-end/CSSKeywordCompletions.js:45
&gt; &gt; +WebInspector.CSSKeywordCompletions._colors = [
&gt; 
&gt; Nit: please compress to ~120 chars per line.

Done.

&gt; &gt; Source/WebCore/inspector/front-end/StylesSidebarPane.js:1690
&gt; &gt; +            finalSelectionRange.setStart(replacementTextNode, 0);
&gt; 
&gt; I would expect all the selection management code to move to the prompt. Why is it still here?

I don&apos;t understand why you would expect this. I&apos;d rather understand you expect all the _prompt_ management code move there. But scrolling numeric values is a whole different thing, isn&apos;t it? It does not match the TextPrompt responsibilities altogether.

&gt; &gt; Source/WebCore/inspector/front-end/StylesSidebarPane.js:1902
&gt; &gt; +
&gt; 
&gt; Nit: blank line.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335228</commentid>
    <comment_count>7</comment_count>
      <attachid>79146</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-01-17 03:04:32 -0800</bug_when>
    <thetext>Created attachment 79146
[PATCH] Comments from pfeldman addressed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336439</commentid>
    <comment_count>8</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-01-19 05:26:22 -0800</bug_when>
    <thetext>Landed with minor fixes: http://trac.webkit.org/changeset/76116</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78819</attachid>
            <date>2011-01-13 09:39:55 -0800</date>
            <delta_ts>2011-01-14 07:10:26 -0800</delta_ts>
            <desc>[PATCH] Suggested solution</desc>
            <filename>csstextprompt.patch</filename>
            <type>text/plain</type>
            <size>43500</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IGI3MjEwNDQ0OGMxNzZmOWM1ZmE1ODZiMjU4MWE1MTMzNjVjMmQ0NWEKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUaHUgSmFuIDEz
IDIwOjExOjExIDIwMTEgKzAzMDAKCiAgICBUZXh0IHByb21wdCBmb3IgdmFsdWVzCgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CmluZGV4IDA0NDFlYjguLjA5MTgzNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAx
MS0wMS0xMyAgQWxleGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IEVtcGxveSBUZXh0UHJvbXB0IGZvciBDU1MgcHJvcGVydHkgbmFtZS92YWx1ZSBhdXRvY29tcGxl
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIy
MTIKKworICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvQ1NTS2V5d29yZENvbXBsZXRpb25z
LmpzOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NLZXl3b3JkQ29tcGxldGlvbnMu
Zm9yUHJvcGVydHkpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvQ29uc29sZVZpZXcu
anM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRhYmFzZVF1ZXJ5Vmlldy5qczoK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5EYXRhYmFzZVF1ZXJ5Vmlldyk6CisgICAgICAgICogaW5z
cGVjdG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlLnVwZGF0ZVRpdGxlKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlLnNl
bGVjdEVsZW1lbnQuZXZlbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlU
cmVlRWxlbWVudC5wcm90b3R5cGUpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvVGV4
dFByb21wdC5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0KToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZS5fb25LZXlEb3duKToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZS5fdGFiS2V5UHJlc3NlZCk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90b3R5cGUuX21vdmVCYWNrSW5IaXN0b3J5
KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZS5fbW92ZUZvcndh
cmRJbkhpc3RvcnkpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNz
czoKKyAgICAgICAgKC5hdXRvLWNvbXBsZXRlLXRleHQsIC5lZGl0aW5nIC5hdXRvLWNvbXBsZXRl
LXRleHQpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmh0bWw6CisK
IDIwMTEtMDEtMTEgIFBhdmVsIFBvZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgUGF2ZWwgRmVsZG1hbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ1NTS2V5d29yZENvbXBsZXRpb25zLmpzIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanMK
bmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNWQ4MmQ4MAotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ1NTS2V5d29yZENvbXBs
ZXRpb25zLmpzCkBAIC0wLDAgKzEsMTExNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAg
KiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBO
ZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVN
UExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK1dlYkluc3BlY3Rvci5DU1NLZXl3b3JkQ29tcGxl
dGlvbnMgPSB7CisgICAgZm9yUHJvcGVydHk6IGZ1bmN0aW9uKHByb3BlcnR5TmFtZSkKKyAgICB7
CisgICAgICAgIHZhciBhY2NlcHRlZEtleXdvcmRzID0gWyJpbml0aWFsIl07CisgICAgICAgIGlm
IChwcm9wZXJ0eU5hbWUgaW4gdGhpcy5fcHJvcGVydHlLZXl3b3JkTWFwKQorICAgICAgICAgICAg
YWNjZXB0ZWRLZXl3b3JkcyA9IGFjY2VwdGVkS2V5d29yZHMuY29uY2F0KHRoaXMuX3Byb3BlcnR5
S2V5d29yZE1hcFtwcm9wZXJ0eU5hbWVdKTsKKyAgICAgICAgaWYgKHByb3BlcnR5TmFtZSBpbiB0
aGlzLl9jb2xvckF3YXJlUHJvcGVydGllcykKKyAgICAgICAgICAgIGFjY2VwdGVkS2V5d29yZHMg
PSBhY2NlcHRlZEtleXdvcmRzLmNvbmNhdChXZWJJbnNwZWN0b3IuQ1NTS2V5d29yZENvbXBsZXRp
b25zLl9jb2xvcnMpOworICAgICAgICBpZiAocHJvcGVydHlOYW1lIGluIFdlYkluc3BlY3Rvci5T
dHlsZXNTaWRlYmFyUGFuZS5Jbmhlcml0ZWRQcm9wZXJ0aWVzKQorICAgICAgICAgICAgYWNjZXB0
ZWRLZXl3b3Jkcy5wdXNoKCJpbmhlcml0Iik7CisgICAgICAgIHJldHVybiBuZXcgV2ViSW5zcGVj
dG9yLkNTU0NvbXBsZXRpb25zKGFjY2VwdGVkS2V5d29yZHMpOworICAgIH0KK307CisKK1dlYklu
c3BlY3Rvci5DU1NLZXl3b3JkQ29tcGxldGlvbnMuX2NvbG9ycyA9IFsKKyAgICAiYXF1YSIsCisg
ICAgImJsYWNrIiwKKyAgICAiYmx1ZSIsCisgICAgImZ1Y2hzaWEiLAorICAgICJncmF5IiwKKyAg
ICAiZ3JlZW4iLAorICAgICJsaW1lIiwKKyAgICAibWFyb29uIiwKKyAgICAibmF2eSIsCisgICAg
Im9saXZlIiwKKyAgICAib3JhbmdlIiwKKyAgICAicHVycGxlIiwKKyAgICAicmVkIiwKKyAgICAi
c2lsdmVyIiwKKyAgICAidGVhbCIsCisgICAgIndoaXRlIiwKKyAgICAieWVsbG93IiwKKyAgICAi
dHJhbnNwYXJlbnQiLAorICAgICJjdXJyZW50Y29sb3IiLAorICAgICJncmV5IiwKKyAgICAiYWxp
Y2VibHVlIiwKKyAgICAiYW50aXF1ZXdoaXRlIiwKKyAgICAiYXF1YW1hcmluZSIsCisgICAgImF6
dXJlIiwKKyAgICAiYmVpZ2UiLAorICAgICJiaXNxdWUiLAorICAgICJibGFuY2hlZGFsbW9uZCIs
CisgICAgImJsdWV2aW9sZXQiLAorICAgICJicm93biIsCisgICAgImJ1cmx5d29vZCIsCisgICAg
ImNhZGV0Ymx1ZSIsCisgICAgImNoYXJ0cmV1c2UiLAorICAgICJjaG9jb2xhdGUiLAorICAgICJj
b3JhbCIsCisgICAgImNvcm5mbG93ZXJibHVlIiwKKyAgICAiY29ybnNpbGsiLAorICAgICJjcmlt
c29uIiwKKyAgICAiY3lhbiIsCisgICAgImRhcmtibHVlIiwKKyAgICAiZGFya2N5YW4iLAorICAg
ICJkYXJrZ29sZGVucm9kIiwKKyAgICAiZGFya2dyYXkiLAorICAgICJkYXJrZ3JlZW4iLAorICAg
ICJkYXJrZ3JleSIsCisgICAgImRhcmtraGFraSIsCisgICAgImRhcmttYWdlbnRhIiwKKyAgICAi
ZGFya29saXZlZ3JlZW4iLAorICAgICJkYXJrb3JhbmdlIiwKKyAgICAiZGFya29yY2hpZCIsCisg
ICAgImRhcmtyZWQiLAorICAgICJkYXJrc2FsbW9uIiwKKyAgICAiZGFya3NlYWdyZWVuIiwKKyAg
ICAiZGFya3NsYXRlYmx1ZSIsCisgICAgImRhcmtzbGF0ZWdyYXkiLAorICAgICJkYXJrc2xhdGVn
cmV5IiwKKyAgICAiZGFya3R1cnF1b2lzZSIsCisgICAgImRhcmt2aW9sZXQiLAorICAgICJkZWVw
cGluayIsCisgICAgImRlZXBza3libHVlIiwKKyAgICAiZGltZ3JheSIsCisgICAgImRpbWdyZXki
LAorICAgICJkb2RnZXJibHVlIiwKKyAgICAiZmlyZWJyaWNrIiwKKyAgICAiZmxvcmFsd2hpdGUi
LAorICAgICJmb3Jlc3RncmVlbiIsCisgICAgImdhaW5zYm9ybyIsCisgICAgImdob3N0d2hpdGUi
LAorICAgICJnb2xkIiwKKyAgICAiZ29sZGVucm9kIiwKKyAgICAiZ3JlZW55ZWxsb3ciLAorICAg
ICJob25leWRldyIsCisgICAgImhvdHBpbmsiLAorICAgICJpbmRpYW5yZWQiLAorICAgICJpbmRp
Z28iLAorICAgICJpdm9yeSIsCisgICAgImtoYWtpIiwKKyAgICAibGF2ZW5kZXIiLAorICAgICJs
YXZlbmRlcmJsdXNoIiwKKyAgICAibGF3bmdyZWVuIiwKKyAgICAibGVtb25jaGlmZm9uIiwKKyAg
ICAibGlnaHRibHVlIiwKKyAgICAibGlnaHRjb3JhbCIsCisgICAgImxpZ2h0Y3lhbiIsCisgICAg
ImxpZ2h0Z29sZGVucm9keWVsbG93IiwKKyAgICAibGlnaHRncmF5IiwKKyAgICAibGlnaHRncmVl
biIsCisgICAgImxpZ2h0Z3JleSIsCisgICAgImxpZ2h0cGluayIsCisgICAgImxpZ2h0c2FsbW9u
IiwKKyAgICAibGlnaHRzZWFncmVlbiIsCisgICAgImxpZ2h0c2t5Ymx1ZSIsCisgICAgImxpZ2h0
c2xhdGVncmF5IiwKKyAgICAibGlnaHRzbGF0ZWdyZXkiLAorICAgICJsaWdodHN0ZWVsYmx1ZSIs
CisgICAgImxpZ2h0eWVsbG93IiwKKyAgICAibGltZWdyZWVuIiwKKyAgICAibGluZW4iLAorICAg
ICJtYWdlbnRhIiwKKyAgICAibWVkaXVtYXF1YW1hcmluZSIsCisgICAgIm1lZGl1bWJsdWUiLAor
ICAgICJtZWRpdW1vcmNoaWQiLAorICAgICJtZWRpdW1wdXJwbGUiLAorICAgICJtZWRpdW1zZWFn
cmVlbiIsCisgICAgIm1lZGl1bXNsYXRlYmx1ZSIsCisgICAgIm1lZGl1bXNwcmluZ2dyZWVuIiwK
KyAgICAibWVkaXVtdHVycXVvaXNlIiwKKyAgICAibWVkaXVtdmlvbGV0cmVkIiwKKyAgICAibWlk
bmlnaHRibHVlIiwKKyAgICAibWludGNyZWFtIiwKKyAgICAibWlzdHlyb3NlIiwKKyAgICAibW9j
Y2FzaW4iLAorICAgICJuYXZham93aGl0ZSIsCisgICAgIm9sZGxhY2UiLAorICAgICJvbGl2ZWRy
YWIiLAorICAgICJvcmFuZ2VyZWQiLAorICAgICJvcmNoaWQiLAorICAgICJwYWxlZ29sZGVucm9k
IiwKKyAgICAicGFsZWdyZWVuIiwKKyAgICAicGFsZXR1cnF1b2lzZSIsCisgICAgInBhbGV2aW9s
ZXRyZWQiLAorICAgICJwYXBheWF3aGlwIiwKKyAgICAicGVhY2hwdWZmIiwKKyAgICAicGVydSIs
CisgICAgInBpbmsiLAorICAgICJwbHVtIiwKKyAgICAicG93ZGVyYmx1ZSIsCisgICAgInJvc3li
cm93biIsCisgICAgInJveWFsYmx1ZSIsCisgICAgInNhZGRsZWJyb3duIiwKKyAgICAic2FsbW9u
IiwKKyAgICAic2FuZHlicm93biIsCisgICAgInNlYWdyZWVuIiwKKyAgICAic2Vhc2hlbGwiLAor
ICAgICJzaWVubmEiLAorICAgICJza3libHVlIiwKKyAgICAic2xhdGVibHVlIiwKKyAgICAic2xh
dGVncmF5IiwKKyAgICAic2xhdGVncmV5IiwKKyAgICAic25vdyIsCisgICAgInNwcmluZ2dyZWVu
IiwKKyAgICAic3RlZWxibHVlIiwKKyAgICAidGFuIiwKKyAgICAidGhpc3RsZSIsCisgICAgInRv
bWF0byIsCisgICAgInR1cnF1b2lzZSIsCisgICAgInZpb2xldCIsCisgICAgIndoZWF0IiwKKyAg
ICAid2hpdGVzbW9rZSIsCisgICAgInllbGxvd2dyZWVuIgorXSwKKworV2ViSW5zcGVjdG9yLkNT
U0tleXdvcmRDb21wbGV0aW9ucy5fY29sb3JBd2FyZVByb3BlcnRpZXMgPSBbCisgICAgImJhY2tn
cm91bmQiLAorICAgICJiYWNrZ3JvdW5kLWNvbG9yIiwKKyAgICAiYm9yZGVyIiwKKyAgICAiYm9y
ZGVyLWNvbG9yIiwKKyAgICAiYm9yZGVyLXRvcCIsCisgICAgImJvcmRlci1yaWdodCIsCisgICAg
ImJvcmRlci1ib3R0b20iLAorICAgICJib3JkZXItbGVmdCIsCisgICAgImJvcmRlci10b3AtY29s
b3IiLAorICAgICJib3JkZXItcmlnaHQtY29sb3IiLAorICAgICJib3JkZXItYm90dG9tLWNvbG9y
IiwKKyAgICAiYm9yZGVyLWxlZnQtY29sb3IiLAorICAgICJjb2xvciIsCisgICAgIm91dGxpbmUi
LAorICAgICJvdXRsaW5lLWNvbG9yIiwKKyAgICAidGV4dC1saW5lLXRocm91Z2giLAorICAgICJ0
ZXh0LWxpbmUtdGhyb3VnaC1jb2xvciIsCisgICAgInRleHQtb3ZlcmxpbmUiLAorICAgICJ0ZXh0
LW92ZXJsaW5lLWNvbG9yIiwKKyAgICAidGV4dC1zaGFkb3ciLAorICAgICJ0ZXh0LXVuZGVybGlu
ZSIsCisgICAgInRleHQtdW5kZXJsaW5lLWNvbG9yIiwKKyAgICAiLXdlYmtpdC10ZXh0LWVtcGhh
c2lzIiwKKyAgICAiLXdlYmtpdC10ZXh0LWVtcGhhc2lzLWNvbG9yIgorXS5rZXlTZXQoKTsKKwor
V2ViSW5zcGVjdG9yLkNTU0tleXdvcmRDb21wbGV0aW9ucy5fcHJvcGVydHlLZXl3b3JkTWFwID0g
eworICAgICJ0YWJsZS1sYXlvdXQiOiBbCisgICAgICAgICJhdXRvIiwKKyAgICAgICAgImZpeGVk
IgorICAgIF0sCisgICAgInZpc2liaWxpdHkiOiBbCisgICAgICAgICJoaWRkZW4iLAorICAgICAg
ICAidmlzaWJsZSIsCisgICAgICAgICJjb2xsYXBzZSIKKyAgICBdLAorICAgICJiYWNrZ3JvdW5k
LXJlcGVhdCI6IFsKKyAgICAgICAgInJlcGVhdCIsCisgICAgICAgICJyZXBlYXQteCIsCisgICAg
ICAgICJyZXBlYXQteSIsCisgICAgICAgICJuby1yZXBlYXQiLAorICAgICAgICAic3BhY2UiLAor
ICAgICAgICAicm91bmQiCisgICAgXSwKKyAgICAidGV4dC11bmRlcmxpbmUiOiBbCisgICAgICAg
ICJub25lIiwKKyAgICAgICAgImRvdHRlZCIsCisgICAgICAgICJkYXNoZWQiLAorICAgICAgICAi
c29saWQiLAorICAgICAgICAiZG91YmxlIiwKKyAgICAgICAgImRvdC1kYXNoIiwKKyAgICAgICAg
ImRvdC1kb3QtZGFzaCIsCisgICAgICAgICJ3YXZlIgorICAgIF0sCisgICAgImNvbnRlbnQiOiBb
CisgICAgICAgICJsaXN0LWl0ZW0iLAorICAgICAgICAiY2xvc2UtcXVvdGUiLAorICAgICAgICAi
bm8tY2xvc2UtcXVvdGUiLAorICAgICAgICAibm8tb3Blbi1xdW90ZSIsCisgICAgICAgICJvcGVu
LXF1b3RlIgorICAgIF0sCisgICAgImxpc3Qtc3R5bGUtaW1hZ2UiOiBbCisgICAgICAgICJub25l
IgorICAgIF0sCisgICAgImNsZWFyIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJsZWZ0
IiwKKyAgICAgICAgInJpZ2h0IiwKKyAgICAgICAgImJvdGgiCisgICAgXSwKKyAgICAidGV4dC11
bmRlcmxpbmUtbW9kZSI6IFsKKyAgICAgICAgImNvbnRpbnVvdXMiLAorICAgICAgICAic2tpcC13
aGl0ZS1zcGFjZSIKKyAgICBdLAorICAgICJvdmVyZmxvdy14IjogWworICAgICAgICAiaGlkZGVu
IiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAidmlzaWJsZSIsCisgICAgICAgICJvdmVybGF5
IiwKKyAgICAgICAgInNjcm9sbCIKKyAgICBdLAorICAgICJzdHJva2UtbGluZWpvaW4iOiBbCisg
ICAgICAgICJyb3VuZCIsCisgICAgICAgICJtaXRlciIsCisgICAgICAgICJiZXZlbCIKKyAgICBd
LAorICAgICJiYXNlbGluZS1zaGlmdCI6IFsKKyAgICAgICAgImJhc2VsaW5lIiwKKyAgICAgICAg
InN1YiIsCisgICAgICAgICJzdXBlciIKKyAgICBdLAorICAgICJib3JkZXItYm90dG9tLXdpZHRo
IjogWworICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgInRoaWNrIiwKKyAgICAgICAgInRoaW4i
CisgICAgXSwKKyAgICAibWFycXVlZS1zcGVlZCI6IFsKKyAgICAgICAgIm5vcm1hbCIsCisgICAg
ICAgICJzbG93IiwKKyAgICAgICAgImZhc3QiCisgICAgXSwKKyAgICAibWFyZ2luLXRvcC1jb2xs
YXBzZSI6IFsKKyAgICAgICAgImNvbGxhcHNlIiwKKyAgICAgICAgInNlcGFyYXRlIiwKKyAgICAg
ICAgImRpc2NhcmQiCisgICAgXSwKKyAgICAibWF4LWhlaWdodCI6IFsKKyAgICAgICAgIm5vbmUi
CisgICAgXSwKKyAgICAiYm94LW9yaWVudCI6IFsKKyAgICAgICAgImhvcml6b250YWwiLAorICAg
ICAgICAidmVydGljYWwiLAorICAgICAgICAiaW5saW5lLWF4aXMiLAorICAgICAgICAiYmxvY2st
YXhpcyIKKyAgICBdLAorICAgICJmb250LXN0cmV0Y2giOiBbCisgICAgICAgICJub3JtYWwiLAor
ICAgICAgICAid2lkZXIiLAorICAgICAgICAibmFycm93ZXIiLAorICAgICAgICAidWx0cmEtY29u
ZGVuc2VkIiwKKyAgICAgICAgImV4dHJhLWNvbmRlbnNlZCIsCisgICAgICAgICJjb25kZW5zZWQi
LAorICAgICAgICAic2VtaS1jb25kZW5zZWQiLAorICAgICAgICAic2VtaS1leHBhbmRlZCIsCisg
ICAgICAgICJleHBhbmRlZCIsCisgICAgICAgICJleHRyYS1leHBhbmRlZCIsCisgICAgICAgICJ1
bHRyYS1leHBhbmRlZCIKKyAgICBdLAorICAgICItd2Via2l0LWNvbG9yLWNvcnJlY3Rpb24iOiBb
CisgICAgICAgICJkZWZhdWx0IiwKKyAgICAgICAgInNyZ2IiCisgICAgXSwKKyAgICAidGV4dC11
bmRlcmxpbmUtc3R5bGUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImRvdHRlZCIsCisg
ICAgICAgICJkYXNoZWQiLAorICAgICAgICAic29saWQiLAorICAgICAgICAiZG91YmxlIiwKKyAg
ICAgICAgImRvdC1kYXNoIiwKKyAgICAgICAgImRvdC1kb3QtZGFzaCIsCisgICAgICAgICJ3YXZl
IgorICAgIF0sCisgICAgInRleHQtb3ZlcmxpbmUtbW9kZSI6IFsKKyAgICAgICAgImNvbnRpbnVv
dXMiLAorICAgICAgICAic2tpcC13aGl0ZS1zcGFjZSIKKyAgICBdLAorICAgICItd2Via2l0LWJh
Y2tncm91bmQtY29tcG9zaXRlIjogWworICAgICAgICAiaGlnaGxpZ2h0IiwKKyAgICAgICAgImNs
ZWFyIiwKKyAgICAgICAgImNvcHkiLAorICAgICAgICAic291cmNlLW92ZXIiLAorICAgICAgICAi
c291cmNlLWluIiwKKyAgICAgICAgInNvdXJjZS1vdXQiLAorICAgICAgICAic291cmNlLWF0b3Ai
LAorICAgICAgICAiZGVzdGluYXRpb24tb3ZlciIsCisgICAgICAgICJkZXN0aW5hdGlvbi1pbiIs
CisgICAgICAgICJkZXN0aW5hdGlvbi1vdXQiLAorICAgICAgICAiZGVzdGluYXRpb24tYXRvcCIs
CisgICAgICAgICJ4b3IiLAorICAgICAgICAicGx1cy1kYXJrZXIiLAorICAgICAgICAicGx1cy1s
aWdodGVyIgorICAgIF0sCisgICAgImJvcmRlci1sZWZ0LXdpZHRoIjogWworICAgICAgICAibWVk
aXVtIiwKKyAgICAgICAgInRoaWNrIiwKKyAgICAgICAgInRoaW4iCisgICAgXSwKKyAgICAiLXdl
YmtpdC13cml0aW5nLW1vZGUiOiBbCisgICAgICAgICJsciIsCisgICAgICAgICJybCIsCisgICAg
ICAgICJ0YiIsCisgICAgICAgICJsci10YiIsCisgICAgICAgICJybC10YiIsCisgICAgICAgICJ0
Yi1ybCIsCisgICAgICAgICJob3Jpem9udGFsLXRiIiwKKyAgICAgICAgInZlcnRpY2FsLXJsIiwK
KyAgICAgICAgInZlcnRpY2FsLWxyIiwKKyAgICAgICAgImhvcml6b250YWwtYnQiCisgICAgXSwK
KyAgICAidGV4dC1saW5lLXRocm91Z2gtbW9kZSI6IFsKKyAgICAgICAgImNvbnRpbnVvdXMiLAor
ICAgICAgICAic2tpcC13aGl0ZS1zcGFjZSIKKyAgICBdLAorICAgICJib3JkZXItY29sbGFwc2Ui
OiBbCisgICAgICAgICJjb2xsYXBzZSIsCisgICAgICAgICJzZXBhcmF0ZSIKKyAgICBdLAorICAg
ICJwYWdlLWJyZWFrLWluc2lkZSI6IFsKKyAgICAgICAgImF1dG8iLAorICAgICAgICAiYXZvaWQi
CisgICAgXSwKKyAgICAiYm9yZGVyLXRvcC13aWR0aCI6IFsKKyAgICAgICAgIm1lZGl1bSIsCisg
ICAgICAgICJ0aGljayIsCisgICAgICAgICJ0aGluIgorICAgIF0sCisgICAgIm91dGxpbmUtY29s
b3IiOiBbCisgICAgICAgICJpbnZlcnQiCisgICAgXSwKKyAgICAidGV4dC1saW5lLXRocm91Z2gt
c3R5bGUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImRvdHRlZCIsCisgICAgICAgICJk
YXNoZWQiLAorICAgICAgICAic29saWQiLAorICAgICAgICAiZG91YmxlIiwKKyAgICAgICAgImRv
dC1kYXNoIiwKKyAgICAgICAgImRvdC1kb3QtZGFzaCIsCisgICAgICAgICJ3YXZlIgorICAgIF0s
CisgICAgIm91dGxpbmUtc3R5bGUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImhpZGRl
biIsCisgICAgICAgICJpbnNldCIsCisgICAgICAgICJncm9vdmUiLAorICAgICAgICAicmlkZ2Ui
LAorICAgICAgICAib3V0c2V0IiwKKyAgICAgICAgImRvdHRlZCIsCisgICAgICAgICJkYXNoZWQi
LAorICAgICAgICAic29saWQiLAorICAgICAgICAiZG91YmxlIgorICAgIF0sCisgICAgImN1cnNv
ciI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiY29weSIsCisgICAgICAgICJhdXRvIiwK
KyAgICAgICAgImNyb3NzaGFpciIsCisgICAgICAgICJkZWZhdWx0IiwKKyAgICAgICAgInBvaW50
ZXIiLAorICAgICAgICAibW92ZSIsCisgICAgICAgICJ2ZXJ0aWNhbC10ZXh0IiwKKyAgICAgICAg
ImNlbGwiLAorICAgICAgICAiY29udGV4dC1tZW51IiwKKyAgICAgICAgImFsaWFzIiwKKyAgICAg
ICAgInByb2dyZXNzIiwKKyAgICAgICAgIm5vLWRyb3AiLAorICAgICAgICAibm90LWFsbG93ZWQi
LAorICAgICAgICAiLXdlYmtpdC16b29tLWluIiwKKyAgICAgICAgIi13ZWJraXQtem9vbS1vdXQi
LAorICAgICAgICAiZS1yZXNpemUiLAorICAgICAgICAibmUtcmVzaXplIiwKKyAgICAgICAgIm53
LXJlc2l6ZSIsCisgICAgICAgICJuLXJlc2l6ZSIsCisgICAgICAgICJzZS1yZXNpemUiLAorICAg
ICAgICAic3ctcmVzaXplIiwKKyAgICAgICAgInMtcmVzaXplIiwKKyAgICAgICAgInctcmVzaXpl
IiwKKyAgICAgICAgImV3LXJlc2l6ZSIsCisgICAgICAgICJucy1yZXNpemUiLAorICAgICAgICAi
bmVzdy1yZXNpemUiLAorICAgICAgICAibndzZS1yZXNpemUiLAorICAgICAgICAiY29sLXJlc2l6
ZSIsCisgICAgICAgICJyb3ctcmVzaXplIiwKKyAgICAgICAgInRleHQiLAorICAgICAgICAid2Fp
dCIsCisgICAgICAgICJoZWxwIiwKKyAgICAgICAgImFsbC1zY3JvbGwiLAorICAgICAgICAiLXdl
YmtpdC1ncmFiIiwKKyAgICAgICAgIi13ZWJraXQtZ3JhYmJpbmciCisgICAgXSwKKyAgICAiYm9y
ZGVyLXdpZHRoIjogWworICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgInRoaWNrIiwKKyAgICAg
ICAgInRoaW4iCisgICAgXSwKKyAgICAic2l6ZSI6IFsKKyAgICAgICAgImEzIiwKKyAgICAgICAg
ImE0IiwKKyAgICAgICAgImE1IiwKKyAgICAgICAgImI0IiwKKyAgICAgICAgImI1IiwKKyAgICAg
ICAgImxhbmRzY2FwZSIsCisgICAgICAgICJsZWRnZXIiLAorICAgICAgICAibGVnYWwiLAorICAg
ICAgICAibGV0dGVyIiwKKyAgICAgICAgInBvcnRyYWl0IgorICAgIF0sCisgICAgImJhY2tncm91
bmQtc2l6ZSI6IFsKKyAgICAgICAgImNvbnRhaW4iLAorICAgICAgICAiY292ZXIiCisgICAgXSwK
KyAgICAiZGlyZWN0aW9uIjogWworICAgICAgICAibHRyIiwKKyAgICAgICAgInJ0bCIKKyAgICBd
LAorICAgICJtYXJxdWVlLWRpcmVjdGlvbiI6IFsKKyAgICAgICAgImxlZnQiLAorICAgICAgICAi
cmlnaHQiLAorICAgICAgICAiYXV0byIsCisgICAgICAgICJyZXZlcnNlIiwKKyAgICAgICAgImZv
cndhcmRzIiwKKyAgICAgICAgImJhY2t3YXJkcyIsCisgICAgICAgICJhaGVhZCIsCisgICAgICAg
ICJ1cCIsCisgICAgICAgICJkb3duIgorICAgIF0sCisgICAgImVuYWJsZS1iYWNrZ3JvdW5kIjog
WworICAgICAgICAiYWNjdW11bGF0ZSIsCisgICAgICAgICJuZXciCisgICAgXSwKKyAgICAiZmxv
YXQiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImxlZnQiLAorICAgICAgICAicmlnaHQi
CisgICAgXSwKKyAgICAib3ZlcmZsb3cteSI6IFsKKyAgICAgICAgImhpZGRlbiIsCisgICAgICAg
ICJhdXRvIiwKKyAgICAgICAgInZpc2libGUiLAorICAgICAgICAib3ZlcmxheSIsCisgICAgICAg
ICJzY3JvbGwiCisgICAgXSwKKyAgICAibWFyZ2luLWJvdHRvbS1jb2xsYXBzZSI6IFsKKyAgICAg
ICAgImNvbGxhcHNlIiwKKyAgICAgICAgInNlcGFyYXRlIiwKKyAgICAgICAgImRpc2NhcmQiCisg
ICAgXSwKKyAgICAiYm94LXJlZmxlY3QiOiBbCisgICAgICAgICJsZWZ0IiwKKyAgICAgICAgInJp
Z2h0IiwKKyAgICAgICAgImFib3ZlIiwKKyAgICAgICAgImJlbG93IgorICAgIF0sCisgICAgIm92
ZXJmbG93IjogWworICAgICAgICAiaGlkZGVuIiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAi
dmlzaWJsZSIsCisgICAgICAgICJvdmVybGF5IiwKKyAgICAgICAgInNjcm9sbCIKKyAgICBdLAor
ICAgICJ0ZXh0LXJlbmRlcmluZyI6IFsKKyAgICAgICAgImF1dG8iLAorICAgICAgICAib3B0aW1p
emVzcGVlZCIsCisgICAgICAgICJvcHRpbWl6ZWxlZ2liaWxpdHkiLAorICAgICAgICAiZ2VvbWV0
cmljcHJlY2lzaW9uIgorICAgIF0sCisgICAgInRleHQtYWxpZ24iOiBbCisgICAgICAgICItd2Vi
a2l0LWF1dG8iLAorICAgICAgICAibGVmdCIsCisgICAgICAgICJyaWdodCIsCisgICAgICAgICJj
ZW50ZXIiLAorICAgICAgICAianVzdGlmeSIsCisgICAgICAgICItd2Via2l0LWxlZnQiLAorICAg
ICAgICAiLXdlYmtpdC1yaWdodCIsCisgICAgICAgICItd2Via2l0LWNlbnRlciIKKyAgICBdLAor
ICAgICJsaXN0LXN0eWxlLXBvc2l0aW9uIjogWworICAgICAgICAib3V0c2lkZSIsCisgICAgICAg
ICJpbnNpZGUiCisgICAgXSwKKyAgICAibWFyZ2luLWJvdHRvbSI6IFsKKyAgICAgICAgImF1dG8i
CisgICAgXSwKKyAgICAiY29sb3ItaW50ZXJwb2xhdGlvbiI6IFsKKyAgICAgICAgImxpbmVhcnJn
YiIKKyAgICBdLAorICAgICJiYWNrZ3JvdW5kLW9yaWdpbiI6IFsKKyAgICAgICAgImJvcmRlci1i
b3giLAorICAgICAgICAiY29udGVudC1ib3giLAorICAgICAgICAicGFkZGluZy1ib3giCisgICAg
XSwKKyAgICAid29yZC13cmFwIjogWworICAgICAgICAibm9ybWFsIiwKKyAgICAgICAgImJyZWFr
LXdvcmQiCisgICAgXSwKKyAgICAiZm9udC13ZWlnaHQiOiBbCisgICAgICAgICJub3JtYWwiLAor
ICAgICAgICAiYm9sZCIsCisgICAgICAgICJib2xkZXIiLAorICAgICAgICAibGlnaHRlciIsCisg
ICAgICAgICIxMDAiLAorICAgICAgICAiMjAwIiwKKyAgICAgICAgIjMwMCIsCisgICAgICAgICI0
MDAiLAorICAgICAgICAiNTAwIiwKKyAgICAgICAgIjYwMCIsCisgICAgICAgICI3MDAiLAorICAg
ICAgICAiODAwIiwKKyAgICAgICAgIjkwMCIKKyAgICBdLAorICAgICJtYXJnaW4tYmVmb3JlLWNv
bGxhcHNlIjogWworICAgICAgICAiY29sbGFwc2UiLAorICAgICAgICAic2VwYXJhdGUiLAorICAg
ICAgICAiZGlzY2FyZCIKKyAgICBdLAorICAgICJ0ZXh0LW92ZXJsaW5lLXdpZHRoIjogWworICAg
ICAgICAibm9ybWFsIiwKKyAgICAgICAgIm1lZGl1bSIsCisgICAgICAgICJhdXRvIiwKKyAgICAg
ICAgInRoaWNrIiwKKyAgICAgICAgInRoaW4iCisgICAgXSwKKyAgICAidGV4dC10cmFuc2Zvcm0i
OiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImNhcGl0YWxpemUiLAorICAgICAgICAidXBw
ZXJjYXNlIiwKKyAgICAgICAgImxvd2VyY2FzZSIKKyAgICBdLAorICAgICJib3JkZXItcmlnaHQt
c3R5bGUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImhpZGRlbiIsCisgICAgICAgICJp
bnNldCIsCisgICAgICAgICJncm9vdmUiLAorICAgICAgICAicmlkZ2UiLAorICAgICAgICAib3V0
c2V0IiwKKyAgICAgICAgImRvdHRlZCIsCisgICAgICAgICJkYXNoZWQiLAorICAgICAgICAic29s
aWQiLAorICAgICAgICAiZG91YmxlIgorICAgIF0sCisgICAgImJvcmRlci1sZWZ0LXN0eWxlIjog
WworICAgICAgICAibm9uZSIsCisgICAgICAgICJoaWRkZW4iLAorICAgICAgICAiaW5zZXQiLAor
ICAgICAgICAiZ3Jvb3ZlIiwKKyAgICAgICAgInJpZGdlIiwKKyAgICAgICAgIm91dHNldCIsCisg
ICAgICAgICJkb3R0ZWQiLAorICAgICAgICAiZGFzaGVkIiwKKyAgICAgICAgInNvbGlkIiwKKyAg
ICAgICAgImRvdWJsZSIKKyAgICBdLAorICAgICItd2Via2l0LXRleHQtZW1waGFzaXMiOiBbCisg
ICAgICAgICJjaXJjbGUiLAorICAgICAgICAiZmlsbGVkIiwKKyAgICAgICAgIm9wZW4iLAorICAg
ICAgICAiZG90IiwKKyAgICAgICAgImRvdWJsZS1jaXJjbGUiLAorICAgICAgICAidHJpYW5nbGUi
LAorICAgICAgICAic2VzYW1lIgorICAgIF0sCisgICAgImZvbnQtc3R5bGUiOiBbCisgICAgICAg
ICJpdGFsaWMiLAorICAgICAgICAib2JsaXF1ZSIsCisgICAgICAgICJub3JtYWwiCisgICAgXSwK
KyAgICAic3BlYWsiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgIm5vcm1hbCIsCisgICAg
ICAgICJzcGVsbC1vdXQiLAorICAgICAgICAiZGlnaXRzIiwKKyAgICAgICAgImxpdGVyYWwtcHVu
Y3R1YXRpb24iLAorICAgICAgICAibm8tcHVuY3R1YXRpb24iCisgICAgXSwKKyAgICAidGV4dC1s
aW5lLXRocm91Z2giOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImRvdHRlZCIsCisgICAg
ICAgICJkYXNoZWQiLAorICAgICAgICAic29saWQiLAorICAgICAgICAiZG91YmxlIiwKKyAgICAg
ICAgImRvdC1kYXNoIiwKKyAgICAgICAgImRvdC1kb3QtZGFzaCIsCisgICAgICAgICJ3YXZlIiwK
KyAgICAgICAgImNvbnRpbnVvdXMiLAorICAgICAgICAic2tpcC13aGl0ZS1zcGFjZSIKKyAgICBd
LAorICAgICJjb2xvci1yZW5kZXJpbmciOiBbCisgICAgICAgICJhdXRvIiwKKyAgICAgICAgIm9w
dGltaXplc3BlZWQiLAorICAgICAgICAib3B0aW1pemVxdWFsaXR5IgorICAgIF0sCisgICAgImxp
c3Qtc3R5bGUtdHlwZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiZGlzYyIsCisgICAg
ICAgICJjaXJjbGUiLAorICAgICAgICAic3F1YXJlIiwKKyAgICAgICAgImRlY2ltYWwiLAorICAg
ICAgICAiZGVjaW1hbC1sZWFkaW5nLXplcm8iLAorICAgICAgICAiYXJhYmljLWluZGljIiwKKyAg
ICAgICAgImJpbmFyeSIsCisgICAgICAgICJiZW5nYWxpIiwKKyAgICAgICAgImNhbWJvZGlhbiIs
CisgICAgICAgICJraG1lciIsCisgICAgICAgICJkZXZhbmFnYXJpIiwKKyAgICAgICAgImd1amFy
YXRpIiwKKyAgICAgICAgImd1cm11a2hpIiwKKyAgICAgICAgImthbm5hZGEiLAorICAgICAgICAi
bG93ZXItaGV4YWRlY2ltYWwiLAorICAgICAgICAibGFvIiwKKyAgICAgICAgIm1hbGF5YWxhbSIs
CisgICAgICAgICJtb25nb2xpYW4iLAorICAgICAgICAibXlhbm1hciIsCisgICAgICAgICJvY3Rh
bCIsCisgICAgICAgICJvcml5YSIsCisgICAgICAgICJwZXJzaWFuIiwKKyAgICAgICAgInVyZHUi
LAorICAgICAgICAidGVsdWd1IiwKKyAgICAgICAgInRpYmV0YW4iLAorICAgICAgICAidGhhaSIs
CisgICAgICAgICJ1cHBlci1oZXhhZGVjaW1hbCIsCisgICAgICAgICJsb3dlci1yb21hbiIsCisg
ICAgICAgICJ1cHBlci1yb21hbiIsCisgICAgICAgICJsb3dlci1ncmVlayIsCisgICAgICAgICJs
b3dlci1hbHBoYSIsCisgICAgICAgICJsb3dlci1sYXRpbiIsCisgICAgICAgICJ1cHBlci1hbHBo
YSIsCisgICAgICAgICJ1cHBlci1sYXRpbiIsCisgICAgICAgICJhZmFyIiwKKyAgICAgICAgImV0
aGlvcGljLWhhbGVoYW1lLWFhLWV0IiwKKyAgICAgICAgImV0aGlvcGljLWhhbGVoYW1lLWFhLWVy
IiwKKyAgICAgICAgImFtaGFyaWMiLAorICAgICAgICAiZXRoaW9waWMtaGFsZWhhbWUtYW0tZXQi
LAorICAgICAgICAiYW1oYXJpYy1hYmVnZWRlIiwKKyAgICAgICAgImV0aGlvcGljLWFiZWdlZGUt
YW0tZXQiLAorICAgICAgICAiY2prLWVhcnRobHktYnJhbmNoIiwKKyAgICAgICAgImNqay1oZWF2
ZW5seS1zdGVtIiwKKyAgICAgICAgImV0aGlvcGljIiwKKyAgICAgICAgImV0aGlvcGljLWhhbGVo
YW1lLWdleiIsCisgICAgICAgICJldGhpb3BpYy1hYmVnZWRlIiwKKyAgICAgICAgImV0aGlvcGlj
LWFiZWdlZGUtZ2V6IiwKKyAgICAgICAgImhhbmd1bC1jb25zb25hbnQiLAorICAgICAgICAiaGFu
Z3VsIiwKKyAgICAgICAgImxvd2VyLW5vcndlZ2lhbiIsCisgICAgICAgICJvcm9tbyIsCisgICAg
ICAgICJldGhpb3BpYy1oYWxlaGFtZS1vbS1ldCIsCisgICAgICAgICJzaWRhbWEiLAorICAgICAg
ICAiZXRoaW9waWMtaGFsZWhhbWUtc2lkLWV0IiwKKyAgICAgICAgInNvbWFsaSIsCisgICAgICAg
ICJldGhpb3BpYy1oYWxlaGFtZS1zby1ldCIsCisgICAgICAgICJ0aWdyZSIsCisgICAgICAgICJl
dGhpb3BpYy1oYWxlaGFtZS10aWciLAorICAgICAgICAidGlncmlueWEtZXIiLAorICAgICAgICAi
ZXRoaW9waWMtaGFsZWhhbWUtdGktZXIiLAorICAgICAgICAidGlncmlueWEtZXItYWJlZ2VkZSIs
CisgICAgICAgICJldGhpb3BpYy1hYmVnZWRlLXRpLWVyIiwKKyAgICAgICAgInRpZ3JpbnlhLWV0
IiwKKyAgICAgICAgImV0aGlvcGljLWhhbGVoYW1lLXRpLWV0IiwKKyAgICAgICAgInRpZ3Jpbnlh
LWV0LWFiZWdlZGUiLAorICAgICAgICAiZXRoaW9waWMtYWJlZ2VkZS10aS1ldCIsCisgICAgICAg
ICJ1cHBlci1ncmVlayIsCisgICAgICAgICJ1cHBlci1ub3J3ZWdpYW4iLAorICAgICAgICAiYXN0
ZXJpc2tzIiwKKyAgICAgICAgImZvb3Rub3RlcyIsCisgICAgICAgICJoZWJyZXciLAorICAgICAg
ICAiYXJtZW5pYW4iLAorICAgICAgICAibG93ZXItYXJtZW5pYW4iLAorICAgICAgICAidXBwZXIt
YXJtZW5pYW4iLAorICAgICAgICAiZ2VvcmdpYW4iLAorICAgICAgICAiY2prLWlkZW9ncmFwaGlj
IiwKKyAgICAgICAgImhpcmFnYW5hIiwKKyAgICAgICAgImthdGFrYW5hIiwKKyAgICAgICAgImhp
cmFnYW5hLWlyb2hhIiwKKyAgICAgICAgImthdGFrYW5hLWlyb2hhIgorICAgIF0sCisgICAgIi13
ZWJraXQtdGV4dC1jb21iaW5lIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJob3Jpem9u
dGFsIgorICAgIF0sCisgICAgIm91dGxpbmUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAg
ImhpZGRlbiIsCisgICAgICAgICJpbnNldCIsCisgICAgICAgICJncm9vdmUiLAorICAgICAgICAi
cmlkZ2UiLAorICAgICAgICAib3V0c2V0IiwKKyAgICAgICAgImRvdHRlZCIsCisgICAgICAgICJk
YXNoZWQiLAorICAgICAgICAic29saWQiLAorICAgICAgICAiZG91YmxlIgorICAgIF0sCisgICAg
ImZvbnQiOiBbCisgICAgICAgICJjYXB0aW9uIiwKKyAgICAgICAgImljb24iLAorICAgICAgICAi
bWVudSIsCisgICAgICAgICJtZXNzYWdlLWJveCIsCisgICAgICAgICJzbWFsbC1jYXB0aW9uIiwK
KyAgICAgICAgIi13ZWJraXQtbWluaS1jb250cm9sIiwKKyAgICAgICAgIi13ZWJraXQtc21hbGwt
Y29udHJvbCIsCisgICAgICAgICItd2Via2l0LWNvbnRyb2wiLAorICAgICAgICAic3RhdHVzLWJh
ciIsCisgICAgICAgICJpdGFsaWMiLAorICAgICAgICAib2JsaXF1ZSIsCisgICAgICAgICJzbWFs
bC1jYXBzIiwKKyAgICAgICAgIm5vcm1hbCIsCisgICAgICAgICJib2xkIiwKKyAgICAgICAgImJv
bGRlciIsCisgICAgICAgICJsaWdodGVyIiwKKyAgICAgICAgIjEwMCIsCisgICAgICAgICIyMDAi
LAorICAgICAgICAiMzAwIiwKKyAgICAgICAgIjQwMCIsCisgICAgICAgICI1MDAiLAorICAgICAg
ICAiNjAwIiwKKyAgICAgICAgIjcwMCIsCisgICAgICAgICI4MDAiLAorICAgICAgICAiOTAwIiwK
KyAgICAgICAgInh4LXNtYWxsIiwKKyAgICAgICAgIngtc21hbGwiLAorICAgICAgICAic21hbGwi
LAorICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgImxhcmdlIiwKKyAgICAgICAgIngtbGFyZ2Ui
LAorICAgICAgICAieHgtbGFyZ2UiLAorICAgICAgICAiLXdlYmtpdC14eHgtbGFyZ2UiLAorICAg
ICAgICAic21hbGxlciIsCisgICAgICAgICJsYXJnZXIiLAorICAgICAgICAic2VyaWYiLAorICAg
ICAgICAic2Fucy1zZXJpZiIsCisgICAgICAgICJjdXJzaXZlIiwKKyAgICAgICAgImZhbnRhc3ki
LAorICAgICAgICAibW9ub3NwYWNlIiwKKyAgICAgICAgIi13ZWJraXQtYm9keSIKKyAgICBdLAor
ICAgICJkb21pbmFudC1iYXNlbGluZSI6IFsKKyAgICAgICAgIm1pZGRsZSIsCisgICAgICAgICJh
dXRvIiwKKyAgICAgICAgImNlbnRyYWwiLAorICAgICAgICAidGV4dC1iZWZvcmUtZWRnZSIsCisg
ICAgICAgICJ0ZXh0LWFmdGVyLWVkZ2UiLAorICAgICAgICAiaWRlb2dyYXBoaWMiLAorICAgICAg
ICAiYWxwaGFiZXRpYyIsCisgICAgICAgICJoYW5naW5nIiwKKyAgICAgICAgIm1hdGhlbWF0aWNh
bCIsCisgICAgICAgICJ1c2Utc2NyaXB0IiwKKyAgICAgICAgIm5vLWNoYW5nZSIsCisgICAgICAg
ICJyZXNldC1zaXplIgorICAgIF0sCisgICAgImRpc3BsYXkiOiBbCisgICAgICAgICJub25lIiwK
KyAgICAgICAgImlubGluZSIsCisgICAgICAgICJibG9jayIsCisgICAgICAgICJsaXN0LWl0ZW0i
LAorICAgICAgICAicnVuLWluIiwKKyAgICAgICAgImNvbXBhY3QiLAorICAgICAgICAiaW5saW5l
LWJsb2NrIiwKKyAgICAgICAgInRhYmxlIiwKKyAgICAgICAgImlubGluZS10YWJsZSIsCisgICAg
ICAgICJ0YWJsZS1yb3ctZ3JvdXAiLAorICAgICAgICAidGFibGUtaGVhZGVyLWdyb3VwIiwKKyAg
ICAgICAgInRhYmxlLWZvb3Rlci1ncm91cCIsCisgICAgICAgICJ0YWJsZS1yb3ciLAorICAgICAg
ICAidGFibGUtY29sdW1uLWdyb3VwIiwKKyAgICAgICAgInRhYmxlLWNvbHVtbiIsCisgICAgICAg
ICJ0YWJsZS1jZWxsIiwKKyAgICAgICAgInRhYmxlLWNhcHRpb24iLAorICAgICAgICAiLXdlYmtp
dC1ib3giLAorICAgICAgICAiLXdlYmtpdC1pbmxpbmUtYm94IiwKKyAgICAgICAgIi13YXAtbWFy
cXVlZSIKKyAgICBdLAorICAgICItd2Via2l0LXRleHQtZW1waGFzaXMtcG9zaXRpb24iOiBbCisg
ICAgICAgICJvdmVyIiwKKyAgICAgICAgInVuZGVyIgorICAgIF0sCisgICAgImltYWdlLXJlbmRl
cmluZyI6IFsKKyAgICAgICAgImF1dG8iLAorICAgICAgICAib3B0aW1pemVzcGVlZCIsCisgICAg
ICAgICJvcHRpbWl6ZXF1YWxpdHkiCisgICAgXSwKKyAgICAiYWxpZ25tZW50LWJhc2VsaW5lIjog
WworICAgICAgICAiYmFzZWxpbmUiLAorICAgICAgICAibWlkZGxlIiwKKyAgICAgICAgImF1dG8i
LAorICAgICAgICAiYmVmb3JlLWVkZ2UiLAorICAgICAgICAiYWZ0ZXItZWRnZSIsCisgICAgICAg
ICJjZW50cmFsIiwKKyAgICAgICAgInRleHQtYmVmb3JlLWVkZ2UiLAorICAgICAgICAidGV4dC1h
ZnRlci1lZGdlIiwKKyAgICAgICAgImlkZW9ncmFwaGljIiwKKyAgICAgICAgImFscGhhYmV0aWMi
LAorICAgICAgICAiaGFuZ2luZyIsCisgICAgICAgICJtYXRoZW1hdGljYWwiCisgICAgXSwKKyAg
ICAib3V0bGluZS13aWR0aCI6IFsKKyAgICAgICAgIm1lZGl1bSIsCisgICAgICAgICJ0aGljayIs
CisgICAgICAgICJ0aGluIgorICAgIF0sCisgICAgInRleHQtbGluZS10aHJvdWdoLXdpZHRoIjog
WworICAgICAgICAibm9ybWFsIiwKKyAgICAgICAgIm1lZGl1bSIsCisgICAgICAgICJhdXRvIiwK
KyAgICAgICAgInRoaWNrIiwKKyAgICAgICAgInRoaW4iCisgICAgXSwKKyAgICAiYm94LWFsaWdu
IjogWworICAgICAgICAiYmFzZWxpbmUiLAorICAgICAgICAiY2VudGVyIiwKKyAgICAgICAgInN0
cmV0Y2giLAorICAgICAgICAic3RhcnQiLAorICAgICAgICAiZW5kIgorICAgIF0sCisgICAgImJv
cmRlci1yaWdodC13aWR0aCI6IFsKKyAgICAgICAgIm1lZGl1bSIsCisgICAgICAgICJ0aGljayIs
CisgICAgICAgICJ0aGluIgorICAgIF0sCisgICAgImJvcmRlci10b3Atc3R5bGUiOiBbCisgICAg
ICAgICJub25lIiwKKyAgICAgICAgImhpZGRlbiIsCisgICAgICAgICJpbnNldCIsCisgICAgICAg
ICJncm9vdmUiLAorICAgICAgICAicmlkZ2UiLAorICAgICAgICAib3V0c2V0IiwKKyAgICAgICAg
ImRvdHRlZCIsCisgICAgICAgICJkYXNoZWQiLAorICAgICAgICAic29saWQiLAorICAgICAgICAi
ZG91YmxlIgorICAgIF0sCisgICAgImxpbmUtaGVpZ2h0IjogWworICAgICAgICAibm9ybWFsIgor
ICAgIF0sCisgICAgInRleHQtb3ZlcmZsb3ciOiBbCisgICAgICAgICJjbGlwIiwKKyAgICAgICAg
ImVsbGlwc2lzIgorICAgIF0sCisgICAgImJveC1kaXJlY3Rpb24iOiBbCisgICAgICAgICJub3Jt
YWwiLAorICAgICAgICAicmV2ZXJzZSIKKyAgICBdLAorICAgICJtYXJnaW4tYWZ0ZXItY29sbGFw
c2UiOiBbCisgICAgICAgICJjb2xsYXBzZSIsCisgICAgICAgICJzZXBhcmF0ZSIsCisgICAgICAg
ICJkaXNjYXJkIgorICAgIF0sCisgICAgInBhZ2UtYnJlYWstYmVmb3JlIjogWworICAgICAgICAi
bGVmdCIsCisgICAgICAgICJyaWdodCIsCisgICAgICAgICJhdXRvIiwKKyAgICAgICAgImFsd2F5
cyIsCisgICAgICAgICJhdm9pZCIKKyAgICBdLAorICAgICItd2Via2l0LWh5cGhlbnMiOiBbCisg
ICAgICAgICJub25lIiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAibWFudWFsIgorICAgIF0s
CisgICAgImJvcmRlci1pbWFnZSI6IFsKKyAgICAgICAgInJlcGVhdCIsCisgICAgICAgICJzdHJl
dGNoIgorICAgIF0sCisgICAgInRleHQtZGVjb3JhdGlvbiI6IFsKKyAgICAgICAgImJsaW5rIiwK
KyAgICAgICAgImxpbmUtdGhyb3VnaCIsCisgICAgICAgICJvdmVybGluZSIsCisgICAgICAgICJ1
bmRlcmxpbmUiCisgICAgXSwKKyAgICAicG9zaXRpb24iOiBbCisgICAgICAgICJhYnNvbHV0ZSIs
CisgICAgICAgICJmaXhlZCIsCisgICAgICAgICJyZWxhdGl2ZSIsCisgICAgICAgICJzdGF0aWMi
CisgICAgXSwKKyAgICAiZm9udC1mYW1pbHkiOiBbCisgICAgICAgICJzZXJpZiIsCisgICAgICAg
ICJzYW5zLXNlcmlmIiwKKyAgICAgICAgImN1cnNpdmUiLAorICAgICAgICAiZmFudGFzeSIsCisg
ICAgICAgICJtb25vc3BhY2UiLAorICAgICAgICAiLXdlYmtpdC1ib2R5IgorICAgIF0sCisgICAg
InRleHQtb3ZlcmZsb3ctbW9kZSI6IFsKKyAgICAgICAgImNsaXAiLAorICAgICAgICAiZWxsaXBz
aXMiCisgICAgXSwKKyAgICAiYm9yZGVyLWJvdHRvbS1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUi
LAorICAgICAgICAiaGlkZGVuIiwKKyAgICAgICAgImluc2V0IiwKKyAgICAgICAgImdyb292ZSIs
CisgICAgICAgICJyaWRnZSIsCisgICAgICAgICJvdXRzZXQiLAorICAgICAgICAiZG90dGVkIiwK
KyAgICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiCisg
ICAgXSwKKyAgICAidW5pY29kZS1iaWRpIjogWworICAgICAgICAibm9ybWFsIiwKKyAgICAgICAg
ImJpZGktb3ZlcnJpZGUiLAorICAgICAgICAiZW1iZWQiCisgICAgXSwKKyAgICAiY2xpcC1ydWxl
IjogWworICAgICAgICAibm9uemVybyIsCisgICAgICAgICJldmVub2RkIgorICAgIF0sCisgICAg
Im1hcmdpbi1sZWZ0IjogWworICAgICAgICAiYXV0byIKKyAgICBdLAorICAgICJtYXJnaW4tdG9w
IjogWworICAgICAgICAiYXV0byIKKyAgICBdLAorICAgICJ6b29tIjogWworICAgICAgICAiZG9j
dW1lbnQiLAorICAgICAgICAicmVzZXQiCisgICAgXSwKKyAgICAidGV4dC1vdmVybGluZS1zdHls
ZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hl
ZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiLAorICAgICAgICAiZG90LWRh
c2giLAorICAgICAgICAiZG90LWRvdC1kYXNoIiwKKyAgICAgICAgIndhdmUiCisgICAgXSwKKyAg
ICAibWF4LXdpZHRoIjogWworICAgICAgICAibm9uZSIKKyAgICBdLAorICAgICJlbXB0eS1jZWxs
cyI6IFsKKyAgICAgICAgImhpZGUiLAorICAgICAgICAic2hvdyIKKyAgICBdLAorICAgICJwb2lu
dGVyLWV2ZW50cyI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiYWxsIiwKKyAgICAgICAg
ImF1dG8iLAorICAgICAgICAidmlzaWJsZSIsCisgICAgICAgICJ2aXNpYmxlcGFpbnRlZCIsCisg
ICAgICAgICJ2aXNpYmxlZmlsbCIsCisgICAgICAgICJ2aXNpYmxlc3Ryb2tlIiwKKyAgICAgICAg
InBhaW50ZWQiLAorICAgICAgICAiZmlsbCIsCisgICAgICAgICJzdHJva2UiCisgICAgXSwKKyAg
ICAibGV0dGVyLXNwYWNpbmciOiBbCisgICAgICAgICJub3JtYWwiCisgICAgXSwKKyAgICAiYmFj
a2dyb3VuZC1jbGlwIjogWworICAgICAgICAiYm9yZGVyLWJveCIsCisgICAgICAgICJjb250ZW50
LWJveCIsCisgICAgICAgICJwYWRkaW5nLWJveCIKKyAgICBdLAorICAgICItd2Via2l0LWZvbnQt
c21vb3RoaW5nIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJhdXRvIiwKKyAgICAgICAg
ImFudGlhbGlhc2VkIiwKKyAgICAgICAgInN1YnBpeGVsLWFudGlhbGlhc2VkIgorICAgIF0sCisg
ICAgImJvcmRlciI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiaGlkZGVuIiwKKyAgICAg
ICAgImluc2V0IiwKKyAgICAgICAgImdyb292ZSIsCisgICAgICAgICJyaWRnZSIsCisgICAgICAg
ICJvdXRzZXQiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAgICAg
ICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiCisgICAgXSwKKyAgICAiZm9udC1zaXplIjogWwor
ICAgICAgICAieHgtc21hbGwiLAorICAgICAgICAieC1zbWFsbCIsCisgICAgICAgICJzbWFsbCIs
CisgICAgICAgICJtZWRpdW0iLAorICAgICAgICAibGFyZ2UiLAorICAgICAgICAieC1sYXJnZSIs
CisgICAgICAgICJ4eC1sYXJnZSIsCisgICAgICAgICItd2Via2l0LXh4eC1sYXJnZSIsCisgICAg
ICAgICJzbWFsbGVyIiwKKyAgICAgICAgImxhcmdlciIKKyAgICBdLAorICAgICJmb250LXZhcmlh
bnQiOiBbCisgICAgICAgICJzbWFsbC1jYXBzIiwKKyAgICAgICAgIm5vcm1hbCIKKyAgICBdLAor
ICAgICJ2ZXJ0aWNhbC1hbGlnbiI6IFsKKyAgICAgICAgImJhc2VsaW5lIiwKKyAgICAgICAgIm1p
ZGRsZSIsCisgICAgICAgICJzdWIiLAorICAgICAgICAic3VwZXIiLAorICAgICAgICAidGV4dC10
b3AiLAorICAgICAgICAidGV4dC1ib3R0b20iLAorICAgICAgICAidG9wIiwKKyAgICAgICAgImJv
dHRvbSIsCisgICAgICAgICItd2Via2l0LWJhc2VsaW5lLW1pZGRsZSIKKyAgICBdLAorICAgICJt
YXJxdWVlLXN0eWxlIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJzY3JvbGwiLAorICAg
ICAgICAic2xpZGUiLAorICAgICAgICAiYWx0ZXJuYXRlIgorICAgIF0sCisgICAgIndoaXRlLXNw
YWNlIjogWworICAgICAgICAibm9ybWFsIiwKKyAgICAgICAgIm5vd3JhcCIsCisgICAgICAgICJw
cmUiLAorICAgICAgICAicHJlLWxpbmUiLAorICAgICAgICAicHJlLXdyYXAiCisgICAgXSwKKyAg
ICAidGV4dC11bmRlcmxpbmUtd2lkdGgiOiBbCisgICAgICAgICJub3JtYWwiLAorICAgICAgICAi
bWVkaXVtIiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAidGhpY2siLAorICAgICAgICAidGhp
biIKKyAgICBdLAorICAgICJib3gtbGluZXMiOiBbCisgICAgICAgICJzaW5nbGUiLAorICAgICAg
ICAibXVsdGlwbGUiCisgICAgXSwKKyAgICAicGFnZS1icmVhay1hZnRlciI6IFsKKyAgICAgICAg
ImxlZnQiLAorICAgICAgICAicmlnaHQiLAorICAgICAgICAiYXV0byIsCisgICAgICAgICJhbHdh
eXMiLAorICAgICAgICAiYXZvaWQiCisgICAgXSwKKyAgICAiY2xpcC1wYXRoIjogWworICAgICAg
ICAibm9uZSIKKyAgICBdLAorICAgICJtYXJnaW4iOiBbCisgICAgICAgICJhdXRvIgorICAgIF0s
CisgICAgIm1hcnF1ZWUtcmVwZXRpdGlvbiI6IFsKKyAgICAgICAgImluZmluaXRlIgorICAgIF0s
CisgICAgIm1hcmdpbi1yaWdodCI6IFsKKyAgICAgICAgImF1dG8iCisgICAgXSwKKyAgICAiLXdl
YmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlIjogWworICAgICAgICAiY2lyY2xlIiwKKyAgICAgICAg
ImZpbGxlZCIsCisgICAgICAgICJvcGVuIiwKKyAgICAgICAgImRvdCIsCisgICAgICAgICJkb3Vi
bGUtY2lyY2xlIiwKKyAgICAgICAgInRyaWFuZ2xlIiwKKyAgICAgICAgInNlc2FtZSIKKyAgICBd
Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbnNv
bGVWaWV3LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db25zb2xlVmll
dy5qcwppbmRleCBjOTg1NTJkLi5mMjlhYjY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0NvbnNvbGVWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvQ29uc29sZVZpZXcuanMKQEAgLTQ3LDcgKzQ3LDcgQEAgV2ViSW5z
cGVjdG9yLkNvbnNvbGVWaWV3ID0gZnVuY3Rpb24oZHJhd2VyKQogICAgIHRoaXMucHJvbXB0RWxl
bWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlLXByb21wdCIpOwogICAgIHRo
aXMucHJvbXB0RWxlbWVudC5jbGFzc05hbWUgPSAic291cmNlLWNvZGUiOwogICAgIHRoaXMucHJv
bXB0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgdGhpcy5fcHJvbXB0S2V5RG93
bi5iaW5kKHRoaXMpLCB0cnVlKTsKLSAgICB0aGlzLnByb21wdCA9IG5ldyBXZWJJbnNwZWN0b3Iu
VGV4dFByb21wdCh0aGlzLnByb21wdEVsZW1lbnQsIHRoaXMuY29tcGxldGlvbnMuYmluZCh0aGlz
KSwgRXhwcmVzc2lvblN0b3BDaGFyYWN0ZXJzICsgIi4iKTsKKyAgICB0aGlzLnByb21wdCA9IG5l
dyBXZWJJbnNwZWN0b3IuVGV4dFByb21wdCh0aGlzLnByb21wdEVsZW1lbnQsIHRoaXMuY29tcGxl
dGlvbnMuYmluZCh0aGlzKSwgRXhwcmVzc2lvblN0b3BDaGFyYWN0ZXJzICsgIi4iLCB0cnVlKTsK
ICAgICB0aGlzLnByb21wdC5oaXN0b3J5ID0gV2ViSW5zcGVjdG9yLnNldHRpbmdzLmNvbnNvbGVI
aXN0b3J5OwogCiAgICAgdGhpcy50b3BHcm91cCA9IG5ldyBXZWJJbnNwZWN0b3IuQ29uc29sZUdy
b3VwKG51bGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9EYXRhYmFzZVF1ZXJ5Vmlldy5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvRGF0YWJhc2VRdWVyeVZpZXcuanMKaW5kZXggMTExMjQ2Zi4uOTJjZGY0MiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRhYmFzZVF1ZXJ5Vmlldy5q
cworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RhdGFiYXNlUXVlcnlW
aWV3LmpzCkBAIC00Miw3ICs0Miw3IEBAIFdlYkluc3BlY3Rvci5EYXRhYmFzZVF1ZXJ5VmlldyA9
IGZ1bmN0aW9uKGRhdGFiYXNlKQogICAgIHRoaXMucHJvbXB0RWxlbWVudC5hZGRFdmVudExpc3Rl
bmVyKCJrZXlkb3duIiwgdGhpcy5fcHJvbXB0S2V5RG93bi5iaW5kKHRoaXMpLCB0cnVlKTsKICAg
ICB0aGlzLmVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5wcm9tcHRFbGVtZW50KTsKIAotICAgIHRo
aXMucHJvbXB0ID0gbmV3IFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0KHRoaXMucHJvbXB0RWxlbWVu
dCwgdGhpcy5jb21wbGV0aW9ucy5iaW5kKHRoaXMpLCAiICIpOworICAgIHRoaXMucHJvbXB0ID0g
bmV3IFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0KHRoaXMucHJvbXB0RWxlbWVudCwgdGhpcy5jb21w
bGV0aW9ucy5iaW5kKHRoaXMpLCAiICIsIHRydWUpOwogfQogCiBXZWJJbnNwZWN0b3IuRGF0YWJh
c2VRdWVyeVZpZXcucHJvdG90eXBlID0gewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvU3R5bGVzU2lkZWJhclBhbmUuanMKaW5kZXggZDY0NjgyOS4uNzAw
ZjIxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdHls
ZXNTaWRlYmFyUGFuZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5k
L1N0eWxlc1NpZGViYXJQYW5lLmpzCkBAIC0xMzc5LDYgKzEzNzksOCBAQCBXZWJJbnNwZWN0b3Iu
U3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogCiAgICAg
ICAgIHRoaXMubGlzdEl0ZW1FbGVtZW50LnJlbW92ZUNoaWxkcmVuKCk7CisgICAgICAgIG5hbWVF
bGVtZW50Lm5vcm1hbGl6ZSgpOworICAgICAgICB2YWx1ZUVsZW1lbnQubm9ybWFsaXplKCk7CiAK
ICAgICAgICAgaWYgKCF0aGlzLnRyZWVPdXRsaW5lKQogICAgICAgICAgICAgcmV0dXJuOwpAQCAt
MTUyOSwxNiArMTUzMSwxNSBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50
LnByb3RvdHlwZSA9IHsKICAgICAgICAgdmFyIGNvbnRleHQgPSB7CiAgICAgICAgICAgICBleHBh
bmRlZDogdGhpcy5leHBhbmRlZCwKICAgICAgICAgICAgIGhhc0NoaWxkcmVuOiB0aGlzLmhhc0No
aWxkcmVuLAotICAgICAgICAgICAga2V5RG93bkxpc3RlbmVyOiBpc0VkaXRpbmdOYW1lID8gdGhp
cy5lZGl0aW5nTmFtZUtleURvd24uYmluZCh0aGlzKSA6IHRoaXMuZWRpdGluZ1ZhbHVlS2V5RG93
bi5iaW5kKHRoaXMpLAotICAgICAgICAgICAga2V5UHJlc3NMaXN0ZW5lcjogaXNFZGl0aW5nTmFt
ZSA/IHRoaXMuZWRpdGluZ05hbWVLZXlQcmVzcy5iaW5kKHRoaXMpIDogdGhpcy5lZGl0aW5nVmFs
dWVLZXlQcmVzcy5iaW5kKHRoaXMpLAorICAgICAgICAgICAga2V5RG93bkxpc3RlbmVyOiBpc0Vk
aXRpbmdOYW1lID8gbnVsbCA6IHRoaXMuZWRpdGluZ1ZhbHVlS2V5RG93bi5iaW5kKHRoaXMpLAog
ICAgICAgICAgICAgaXNFZGl0aW5nTmFtZTogaXNFZGl0aW5nTmFtZSwKICAgICAgICAgfTsKIAog
ICAgICAgICAvLyBMaWUgYWJvdXQgb3VyIGNoaWxkcmVuIHRvIHByZXZlbnQgZXhwYW5kaW5nIG9u
IGRvdWJsZSBjbGljayBhbmQgdG8gY29sbGFwc2Ugc2hvcnRoYW5kcy4KICAgICAgICAgdGhpcy5o
YXNDaGlsZHJlbiA9IGZhbHNlOwogCi0gICAgICAgIHNlbGVjdEVsZW1lbnQuYWRkRXZlbnRMaXN0
ZW5lcigia2V5ZG93biIsIGNvbnRleHQua2V5RG93bkxpc3RlbmVyLCBmYWxzZSk7Ci0gICAgICAg
IHNlbGVjdEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5cHJlc3MiLCBjb250ZXh0LmtleVBy
ZXNzTGlzdGVuZXIsIGZhbHNlKTsKKyAgICAgICAgaWYgKCFpc0VkaXRpbmdOYW1lKQorICAgICAg
ICAgICAgc2VsZWN0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgY29udGV4dC5r
ZXlEb3duTGlzdGVuZXIsIGZhbHNlKTsKICAgICAgICAgaWYgKHNlbGVjdEVsZW1lbnQucGFyZW50
RWxlbWVudCkKICAgICAgICAgICAgIHNlbGVjdEVsZW1lbnQucGFyZW50RWxlbWVudC5hZGRTdHls
ZUNsYXNzKCJjaGlsZC1lZGl0aW5nIik7CiAgICAgICAgIHNlbGVjdEVsZW1lbnQudGV4dENvbnRl
bnQgPSBzZWxlY3RFbGVtZW50LnRleHRDb250ZW50OyAvLyByZW1vdmUgY29sb3Igc3dhdGNoIGFu
ZCB0aGUgbGlrZQpAQCAtMTYxMyw3NiArMTYxNCw2NSBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9w
ZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIGN1c3RvbUZpbmlzaEhh
bmRsZXI6IG5hbWVWYWx1ZUZpbmlzaEhhbmRsZXIuYmluZCh0aGlzLCBjb250ZXh0LCBpc0VkaXRp
bmdOYW1lKSwKICAgICAgICAgICAgIHBhc3RlSGFuZGxlcjogaXNFZGl0aW5nTmFtZSA/IHBhc3Rl
SGFuZGxlci5iaW5kKHRoaXMsIGNvbnRleHQpIDogbnVsbAogICAgICAgICB9KTsKLSAgICAgICAg
d2luZG93LmdldFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoc2VsZWN0RWxlbWVudCwgMCwg
c2VsZWN0RWxlbWVudCwgMSk7Ci0gICAgfSwKLQotICAgIGVkaXRpbmdOYW1lS2V5UHJlc3M6IGZ1
bmN0aW9uKGV2ZW50KQotICAgIHsKLSAgICAgICAgLy8gQ29tcGxldGUgcHJvcGVydHkgbmFtZXMu
Ci0gICAgICAgIHZhciBjaGFyYWN0ZXIgPSBldmVudC5kYXRhLnRvTG93ZXJDYXNlKCk7Ci0gICAg
ICAgIGlmIChjaGFyYWN0ZXIgJiYgL1thLXotXS8udGVzdChjaGFyYWN0ZXIpKSB7Ci0gICAgICAg
ICAgICB2YXIgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOwotICAgICAgICAgICAg
dmFyIHByZWZpeCA9IHNlbGVjdGlvbi5hbmNob3JOb2RlLnRleHRDb250ZW50LnN1YnN0cmluZygw
LCBzZWxlY3Rpb24uYW5jaG9yT2Zmc2V0KTsKLSAgICAgICAgICAgIHZhciBwcm9wZXJ0eSA9IFdl
Ykluc3BlY3Rvci5jc3NOYW1lQ29tcGxldGlvbnMuZmlyc3RTdGFydHNXaXRoKHByZWZpeCArIGNo
YXJhY3Rlcik7Ci0KLSAgICAgICAgICAgIGlmICghc2VsZWN0aW9uLmlzQ29sbGFwc2VkKQotICAg
ICAgICAgICAgICAgIHNlbGVjdGlvbi5kZWxldGVGcm9tRG9jdW1lbnQoKTsKIAotICAgICAgICAg
ICAgdGhpcy5yZXN0b3JlTmFtZUVsZW1lbnQoKTsKLQotICAgICAgICAgICAgaWYgKHByb3BlcnR5
KSB7Ci0gICAgICAgICAgICAgICAgaWYgKHByb3BlcnR5ICE9PSB0aGlzLm5hbWVFbGVtZW50LnRl
eHRDb250ZW50KQotICAgICAgICAgICAgICAgICAgICB0aGlzLm5hbWVFbGVtZW50LnRleHRDb250
ZW50ID0gcHJvcGVydHk7Ci0gICAgICAgICAgICAgICAgdGhpcy5uYW1lRWxlbWVudC5maXJzdENo
aWxkLnNlbGVjdChwcmVmaXgubGVuZ3RoICsgMSk7Ci0gICAgICAgICAgICAgICAgZXZlbnQucHJl
dmVudERlZmF1bHQoKTsKKyAgICAgICAgZnVuY3Rpb24gaGFuZGxlTmFtZU9yVmFsdWVLZXlEb3du
KGV2ZW50LCB0ZXh0UHJvbXB0KQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgcmVzdWx0Owor
ICAgICAgICAgICAgc3dpdGNoIChldmVudC5rZXlJZGVudGlmaWVyKSB7CisgICAgICAgICAgICAg
ICAgY2FzZSAiVXAiOgorICAgICAgICAgICAgICAgIGNhc2UgIkRvd24iOgorICAgICAgICAgICAg
ICAgICAgICB2YXIgcmV2ZXJzZSA9IGV2ZW50LmtleUlkZW50aWZpZXIgPT09ICJVcCI7CisgICAg
ICAgICAgICAgICAgICAgIGlmICh0ZXh0UHJvbXB0LmF1dG9Db21wbGV0ZUVsZW1lbnQpCisgICAg
ICAgICAgICAgICAgICAgICAgICB0ZXh0UHJvbXB0LmNvbXBsZXRlKGZhbHNlLCByZXZlcnNlKTsK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsga2V5SWRlbnRpZmllcjogIlUrMDAwOSIsIGRh
dGE6IHJldmVyc2UsIGhhbmRsZWQ6IHRydWUgfTsKKyAgICAgICAgICAgICAgICBjYXNlICJVKzAw
MDkiOgorICAgICAgICAgICAgICAgICAgICB0ZXh0UHJvbXB0LmFjY2VwdEF1dG9Db21wbGV0ZSgp
OworICAgICAgICAgICAgICAgICAgICByZXR1cm4geyBrZXlJZGVudGlmaWVyOiAiX19fIiwgaGFu
ZGxlZDogZmFsc2UgfTsKICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybiBudWxsOwog
ICAgICAgICB9Ci0gICAgfSwKIAotICAgIGVkaXRpbmdWYWx1ZUtleVByZXNzOiBmdW5jdGlvbihl
dmVudCkKLSAgICB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBjb21wbGV0ZSBwcm9w
ZXJ0eSB2YWx1ZXMuCisgICAgICAgIGNvbnN0IGRlbGltaXRlcnMgPSAiIFx0XG5cIic6OywvKCki
OworICAgICAgICB0aGlzLl9wcm9tcHQgPSBuZXcgV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQoc2Vs
ZWN0RWxlbWVudCwgKGlzRWRpdGluZ05hbWUgPyB0aGlzLl9wcm9wZXJ0eU5hbWVDb21wbGV0aW9u
cyA6IHRoaXMuX3Byb3BlcnR5VmFsdWVDb21wbGV0aW9ucykuYmluZCh0aGlzKSwgZGVsaW1pdGVy
cywgZmFsc2UsIGhhbmRsZU5hbWVPclZhbHVlS2V5RG93bik7CisgICAgICAgIGlmICghaXNFZGl0
aW5nTmFtZSkKKyAgICAgICAgICAgIHRoaXMuX3ZhbHVlQ29tcGxldGlvbnMgPSBXZWJJbnNwZWN0
b3IuQ1NTS2V5d29yZENvbXBsZXRpb25zLmZvclByb3BlcnR5KHRoaXMubmFtZSk7CisgICAgICAg
IHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0ZW50KHNlbGVjdEVsZW1lbnQsIDAs
IHNlbGVjdEVsZW1lbnQsIDEpOwogICAgIH0sCiAKLSAgICBlZGl0aW5nTmFtZUtleURvd246IGZ1
bmN0aW9uKGV2ZW50KQorICAgIF9jb2xsZWN0QW5kU3VnZ2VzdFByb3BlcnR5Q29tcGxldGlvbnM6
IGZ1bmN0aW9uKGNzc0NvbXBsZXRpb25zLCB3b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHksIGNvbXBs
ZXRpb25zUmVhZHlDYWxsYmFjaykKICAgICB7Ci0gICAgICAgIHZhciBzaG93TmV4dDsKLSAgICAg
ICAgaWYgKGV2ZW50LmtleUlkZW50aWZpZXIgPT09ICJVcCIpCi0gICAgICAgICAgICBzaG93TmV4
dCA9IGZhbHNlOwotICAgICAgICBlbHNlIGlmIChldmVudC5rZXlJZGVudGlmaWVyID09PSAiRG93
biIpCi0gICAgICAgICAgICBzaG93TmV4dCA9IHRydWU7Ci0gICAgICAgIGVsc2UKKyAgICAgICAg
dmFyIHByZWZpeCA9IHdvcmRSYW5nZS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCk7CisgICAgICAg
IGlmICghcHJlZml4Lmxlbmd0aCkKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICB2YXIg
c2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOwotICAgICAgICBpZiAoIXNlbGVjdGlv
bi5yYW5nZUNvdW50KQotICAgICAgICAgICAgcmV0dXJuOwotCi0gICAgICAgIHZhciBzZWxlY3Rp
b25SYW5nZSA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApOwotICAgICAgICBpZiAoc2VsZWN0aW9u
UmFuZ2UuY29tbW9uQW5jZXN0b3JDb250YWluZXIgIT09IHRoaXMubmFtZUVsZW1lbnQgJiYgIXNl
bGVjdGlvblJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyLmlzRGVzY2VuZGFudCh0aGlzLm5h
bWVFbGVtZW50KSkKLSAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgdmFyIHJlc3VsdHM7Cisg
ICAgICAgIGlmIChiZXN0TWF0Y2hPbmx5KSB7CisgICAgICAgICAgICByZXN1bHRzID0gW107Cisg
ICAgICAgICAgICB2YXIgZmlyc3RNYXRjaCA9IGNzc0NvbXBsZXRpb25zLmZpcnN0U3RhcnRzV2l0
aChwcmVmaXgpOworICAgICAgICAgICAgaWYgKGZpcnN0TWF0Y2gpCisgICAgICAgICAgICAgICAg
cmVzdWx0cy5wdXNoKGZpcnN0TWF0Y2gpOworICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25z
UmVhZHlDYWxsYmFjayhyZXN1bHRzKTsKKyAgICAgICAgfQogCi0gICAgICAgIGNvbnN0IHN0eWxl
VmFsdWVEZWxpbWV0ZXJzID0gIiBcdFxuXCInOjssLygpIjsKLSAgICAgICAgdmFyIHdvcmRSYW5n
ZSA9IHNlbGVjdGlvblJhbmdlLnN0YXJ0Q29udGFpbmVyLnJhbmdlT2ZXb3JkKHNlbGVjdGlvblJh
bmdlLnN0YXJ0T2Zmc2V0LCBzdHlsZVZhbHVlRGVsaW1ldGVycywgdGhpcy5uYW1lRWxlbWVudCk7
Ci0gICAgICAgIHZhciB3b3JkU3RyaW5nID0gd29yZFJhbmdlLnRvU3RyaW5nKCk7Ci0gICAgICAg
IHZhciBjdXJzb3JQb3NpdGlvbiA9IHNlbGVjdGlvblJhbmdlLnN0YXJ0T2Zmc2V0ICE9IHNlbGVj
dGlvblJhbmdlLmVuZE9mZnNldCA/IHNlbGVjdGlvblJhbmdlLnN0YXJ0T2Zmc2V0IDogMDsKLSAg
ICAgICAgdmFyIHByZWZpeCA9IHNlbGVjdGlvblJhbmdlLnN0YXJ0Q29udGFpbmVyLnRleHRDb250
ZW50LnN1YnN0cmluZygwLCBjdXJzb3JQb3NpdGlvbik7Ci0gICAgICAgIHZhciBwcm9wZXJ0eTsK
KyAgICAgICAgcmVzdWx0cyA9IGNzc0NvbXBsZXRpb25zLnN0YXJ0c1dpdGgocHJlZml4KTsKKyAg
ICAgICAgaWYgKHJlc3VsdHMpCisgICAgICAgICAgICBjb21wbGV0aW9uc1JlYWR5Q2FsbGJhY2so
cmVzdWx0cyk7CisgICAgfSwKIAotICAgICAgICBpZiAoc2hvd05leHQpCi0gICAgICAgICAgICBw
cm9wZXJ0eSA9IFdlYkluc3BlY3Rvci5jc3NOYW1lQ29tcGxldGlvbnMubmV4dCh3b3JkU3RyaW5n
LCBwcmVmaXgpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBwcm9wZXJ0eSA9IFdlYkluc3Bl
Y3Rvci5jc3NOYW1lQ29tcGxldGlvbnMucHJldmlvdXMod29yZFN0cmluZywgcHJlZml4KTsKKyAg
ICBfcHJvcGVydHlOYW1lQ29tcGxldGlvbnM6IGZ1bmN0aW9uKHdvcmRSYW5nZSwgYmVzdE1hdGNo
T25seSwgY29tcGxldGlvbnNSZWFkeUNhbGxiYWNrKQorICAgIHsKKyAgICAgICAgdGhpcy5fY29s
bGVjdEFuZFN1Z2dlc3RQcm9wZXJ0eUNvbXBsZXRpb25zKFdlYkluc3BlY3Rvci5jc3NOYW1lQ29t
cGxldGlvbnMsIHdvcmRSYW5nZSwgYmVzdE1hdGNoT25seSwgY29tcGxldGlvbnNSZWFkeUNhbGxi
YWNrKTsKKyAgICB9LAogCi0gICAgICAgIGlmIChwcm9wZXJ0eSkgewotICAgICAgICAgICAgdGhp
cy5uYW1lRWxlbWVudC50ZXh0Q29udGVudCA9IHByb3BlcnR5OwotICAgICAgICAgICAgdGhpcy5u
YW1lRWxlbWVudC5maXJzdENoaWxkLnNlbGVjdChjdXJzb3JQb3NpdGlvbik7Ci0gICAgICAgIH0K
LSAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKKyAgICBfcHJvcGVydHlWYWx1ZUNvbXBs
ZXRpb25zOiBmdW5jdGlvbih3b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHksIGNvbXBsZXRpb25zUmVh
ZHlDYWxsYmFjaykKKyAgICB7CisgICAgICAgIHRoaXMuX2NvbGxlY3RBbmRTdWdnZXN0UHJvcGVy
dHlDb21wbGV0aW9ucyh0aGlzLl92YWx1ZUNvbXBsZXRpb25zLCB3b3JkUmFuZ2UsIGJlc3RNYXRj
aE9ubHksIGNvbXBsZXRpb25zUmVhZHlDYWxsYmFjayk7CiAgICAgfSwKIAogICAgIGVkaXRpbmdW
YWx1ZUtleURvd246IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKKyAgICAgICAgaWYgKGV2ZW50Lmhh
bmRsZWQpCisgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIHZhciBhcnJvd0tleVByZXNzZWQg
PSAoZXZlbnQua2V5SWRlbnRpZmllciA9PT0gIlVwIiB8fCBldmVudC5rZXlJZGVudGlmaWVyID09
PSAiRG93biIpOwogICAgICAgICB2YXIgcGFnZUtleVByZXNzZWQgPSAoZXZlbnQua2V5SWRlbnRp
ZmllciA9PT0gIlBhZ2VVcCIgfHwgZXZlbnQua2V5SWRlbnRpZmllciA9PT0gIlBhZ2VEb3duIik7
CiAgICAgICAgIGlmICghYXJyb3dLZXlQcmVzc2VkICYmICFwYWdlS2V5UHJlc3NlZCkKQEAgLTE3
MzksNTAgKzE3MjksNTQgQEAgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVlRWxlbWVudC5w
cm90b3R5cGUgPSB7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIHJlcGxhY2VtZW50U3Ry
aW5nID0gcHJlZml4ICsgbnVtYmVyICsgc3VmZml4OwotICAgICAgICB9IGVsc2UgewotICAgICAg
ICAgICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIGN5Y2xlIHRocm91Z2gga25vd24ga2V5d29yZHMg
Zm9yIHRoZSBjdXJyZW50IHByb3BlcnR5IHZhbHVlLgotICAgICAgICB9CiAKLSAgICAgICAgdmFy
IHJlcGxhY2VtZW50VGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShyZXBsYWNlbWVu
dFN0cmluZyk7CisgICAgICAgICAgICB2YXIgcmVwbGFjZW1lbnRUZXh0Tm9kZSA9IGRvY3VtZW50
LmNyZWF0ZVRleHROb2RlKHJlcGxhY2VtZW50U3RyaW5nKTsKIAotICAgICAgICB3b3JkUmFuZ2Uu
ZGVsZXRlQ29udGVudHMoKTsKLSAgICAgICAgd29yZFJhbmdlLmluc2VydE5vZGUocmVwbGFjZW1l
bnRUZXh0Tm9kZSk7CisgICAgICAgICAgICB3b3JkUmFuZ2UuZGVsZXRlQ29udGVudHMoKTsKKyAg
ICAgICAgICAgIHdvcmRSYW5nZS5pbnNlcnROb2RlKHJlcGxhY2VtZW50VGV4dE5vZGUpOwogCi0g
ICAgICAgIHZhciBmaW5hbFNlbGVjdGlvblJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsK
LSAgICAgICAgZmluYWxTZWxlY3Rpb25SYW5nZS5zZXRTdGFydChyZXBsYWNlbWVudFRleHROb2Rl
LCAwKTsKLSAgICAgICAgZmluYWxTZWxlY3Rpb25SYW5nZS5zZXRFbmQocmVwbGFjZW1lbnRUZXh0
Tm9kZSwgcmVwbGFjZW1lbnRTdHJpbmcubGVuZ3RoKTsKKyAgICAgICAgICAgIHZhciBmaW5hbFNl
bGVjdGlvblJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAgICAgICAgICAgIGZpbmFs
U2VsZWN0aW9uUmFuZ2Uuc2V0U3RhcnQocmVwbGFjZW1lbnRUZXh0Tm9kZSwgMCk7CisgICAgICAg
ICAgICBmaW5hbFNlbGVjdGlvblJhbmdlLnNldEVuZChyZXBsYWNlbWVudFRleHROb2RlLCByZXBs
YWNlbWVudFN0cmluZy5sZW5ndGgpOwogCi0gICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5n
ZXMoKTsKLSAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKGZpbmFsU2VsZWN0aW9uUmFuZ2UpOwor
ICAgICAgICAgICAgc2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOworICAgICAgICAgICAgc2Vs
ZWN0aW9uLmFkZFJhbmdlKGZpbmFsU2VsZWN0aW9uUmFuZ2UpOwogCi0gICAgICAgIGV2ZW50LnBy
ZXZlbnREZWZhdWx0KCk7CisgICAgICAgICAgICBldmVudC5oYW5kbGVkID0gdHJ1ZTsKKyAgICAg
ICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CiAKLSAgICAgICAgaWYgKCEoIm9yaWdpbmFs
UHJvcGVydHlUZXh0IiBpbiB0aGlzKSkgewotICAgICAgICAgICAgLy8gUmVtZW1iZXIgdGhlIHJ1
bGUncyBvcmlnaW5hbCBDU1MgdGV4dCBvbiBbUGFnZV0oVXB8RG93biksIHNvIGl0IGNhbiBiZSBy
ZXN0b3JlZAotICAgICAgICAgICAgLy8gaWYgdGhlIGVkaXRpbmcgaXMgY2FuY2VsZWQuCi0gICAg
ICAgICAgICB0aGlzLm9yaWdpbmFsUHJvcGVydHlUZXh0ID0gdGhpcy5wcm9wZXJ0eS5wcm9wZXJ0
eVRleHQ7Ci0gICAgICAgIH0KKyAgICAgICAgICAgIGlmICghKCJvcmlnaW5hbFByb3BlcnR5VGV4
dCIgaW4gdGhpcykpIHsKKyAgICAgICAgICAgICAgICAvLyBSZW1lbWJlciB0aGUgcnVsZSdzIG9y
aWdpbmFsIENTUyB0ZXh0IG9uIFtQYWdlXShVcHxEb3duKSwgc28gaXQgY2FuIGJlIHJlc3RvcmVk
CisgICAgICAgICAgICAgICAgLy8gaWYgdGhlIGVkaXRpbmcgaXMgY2FuY2VsZWQuCisgICAgICAg
ICAgICAgICAgdGhpcy5vcmlnaW5hbFByb3BlcnR5VGV4dCA9IHRoaXMucHJvcGVydHkucHJvcGVy
dHlUZXh0OworICAgICAgICAgICAgfQogCi0gICAgICAgIC8vIFN5bnRoZXNpemUgcHJvcGVydHkg
dGV4dCBkaXNyZWdhcmRpbmcgYW55IGNvbW1lbnRzLCBjdXN0b20gd2hpdGVzcGFjZSBldGMuCi0g
ICAgICAgIHRoaXMuYXBwbHlTdHlsZVRleHQodGhpcy5uYW1lRWxlbWVudC50ZXh0Q29udGVudCAr
ICI6ICIgKyB0aGlzLnZhbHVlRWxlbWVudC50ZXh0Q29udGVudCk7CisgICAgICAgICAgICAvLyBT
eW50aGVzaXplIHByb3BlcnR5IHRleHQgZGlzcmVnYXJkaW5nIGFueSBjb21tZW50cywgY3VzdG9t
IHdoaXRlc3BhY2UgZXRjLgorICAgICAgICAgICAgdGhpcy5hcHBseVN0eWxlVGV4dCh0aGlzLm5h
bWVFbGVtZW50LnRleHRDb250ZW50ICsgIjogIiArIHRoaXMudmFsdWVFbGVtZW50LnRleHRDb250
ZW50KTsKKyAgICAgICAgfQogICAgIH0sCiAKICAgICBlZGl0aW5nRW5kZWQ6IGZ1bmN0aW9uKGNv
bnRleHQpCiAgICAgeworICAgICAgICBpZiAodGhpcy5fcHJvbXB0KQorICAgICAgICAgICAgdGhp
cy5fcHJvbXB0LmNsZWFyQXV0b0NvbXBsZXRlKHRydWUpOwogICAgICAgICB0aGlzLmhhc0NoaWxk
cmVuID0gY29udGV4dC5oYXNDaGlsZHJlbjsKICAgICAgICAgaWYgKGNvbnRleHQuZXhwYW5kZWQp
CiAgICAgICAgICAgICB0aGlzLmV4cGFuZCgpOwogICAgICAgICB2YXIgZWRpdGVkRWxlbWVudCA9
IGNvbnRleHQuaXNFZGl0aW5nTmFtZSA/IHRoaXMubmFtZUVsZW1lbnQgOiB0aGlzLnZhbHVlRWxl
bWVudDsKLSAgICAgICAgZWRpdGVkRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3du
IiwgY29udGV4dC5rZXlEb3duTGlzdGVuZXIsIGZhbHNlKTsKLSAgICAgICAgZWRpdGVkRWxlbWVu
dC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIsIGNvbnRleHQua2V5UHJlc3NMaXN0ZW5l
ciwgZmFsc2UpOworICAgICAgICBpZiAoIWNvbnRleHQuaXNFZGl0aW5nTmFtZSkKKyAgICAgICAg
ICAgIGVkaXRlZEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsIGNvbnRleHQu
a2V5RG93bkxpc3RlbmVyLCBmYWxzZSk7CiAgICAgICAgIGlmIChlZGl0ZWRFbGVtZW50LnBhcmVu
dEVsZW1lbnQpCiAgICAgICAgICAgICBlZGl0ZWRFbGVtZW50LnBhcmVudEVsZW1lbnQucmVtb3Zl
U3R5bGVDbGFzcygiY2hpbGQtZWRpdGluZyIpOwogCiAgICAgICAgIGRlbGV0ZSB0aGlzLm9yaWdp
bmFsUHJvcGVydHlUZXh0OworICAgICAgICBkZWxldGUgdGhpcy5fcHJvbXB0OworICAgICAgICBk
ZWxldGUgdGhpcy5fdmFsdWVDb21wbGV0aW9uczsKICAgICB9LAogCiAgICAgZWRpdGluZ0NhbmNl
bGxlZDogZnVuY3Rpb24oZWxlbWVudCwgY29udGV4dCkKICAgICB7CisgICAgICAgIHRoaXMuZWRp
dGluZ0VuZGVkKGNvbnRleHQpOwogICAgICAgICBpZiAoIm9yaWdpbmFsUHJvcGVydHlUZXh0IiBp
biB0aGlzKQogICAgICAgICAgICAgdGhpcy5hcHBseVN0eWxlVGV4dCh0aGlzLm9yaWdpbmFsUHJv
cGVydHlUZXh0LCB0cnVlKTsKICAgICAgICAgZWxzZSB7CkBAIC0xNzkxLDcgKzE3ODUsNiBAQCBX
ZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAg
ICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVRpdGxlKCk7CiAgICAgICAg
IH0KLSAgICAgICAgdGhpcy5lZGl0aW5nRW5kZWQoY29udGV4dCk7CiAgICAgfSwKIAogICAgIGVk
aXRpbmdDb21taXR0ZWQ6IGZ1bmN0aW9uKGVsZW1lbnQsIHVzZXJJbnB1dCwgcHJldmlvdXNDb250
ZW50LCBjb250ZXh0LCBtb3ZlRGlyZWN0aW9uKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0UHJvbXB0LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9UZXh0UHJvbXB0LmpzCmluZGV4IDIxYTViZGUuLjU0YWQ0OWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dFByb21wdC5qcwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRQcm9tcHQuanMKQEAg
LTI2LDE0ICsyNiwxNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi1XZWJJbnNwZWN0b3IuVGV4dFBy
b21wdCA9IGZ1bmN0aW9uKGVsZW1lbnQsIGNvbXBsZXRpb25zLCBzdG9wQ2hhcmFjdGVycykKK1dl
Ykluc3BlY3Rvci5UZXh0UHJvbXB0ID0gZnVuY3Rpb24oZWxlbWVudCwgY29tcGxldGlvbnMsIHN0
b3BDaGFyYWN0ZXJzLCBzdXBwb3J0SGlzdG9yeSwgY3VzdG9tS2V5RG93bkhhbmRsZXIpCiB7CiAg
ICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDsKICAgICB0aGlzLmVsZW1lbnQuYWRkU3R5bGVDbGFz
cygidGV4dC1wcm9tcHQiKTsKICAgICB0aGlzLmNvbXBsZXRpb25zID0gY29tcGxldGlvbnM7CiAg
ICAgdGhpcy5jb21wbGV0aW9uU3RvcENoYXJhY3RlcnMgPSBzdG9wQ2hhcmFjdGVyczsKLSAgICB0
aGlzLmhpc3RvcnkgPSBbXTsKLSAgICB0aGlzLmhpc3RvcnlPZmZzZXQgPSAwOworICAgIGlmIChz
dXBwb3J0SGlzdG9yeSkgeworICAgICAgICB0aGlzLmhpc3RvcnkgPSBbXTsKKyAgICAgICAgdGhp
cy5oaXN0b3J5T2Zmc2V0ID0gMDsKKyAgICB9CisgICAgdGhpcy5fY3VzdG9tS2V5RG93bkhhbmRs
ZXIgPSBjdXN0b21LZXlEb3duSGFuZGxlcjsKICAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0
ZW5lcigia2V5ZG93biIsIHRoaXMuX29uS2V5RG93bi5iaW5kKHRoaXMpLCB0cnVlKTsKIH0KIApA
QCAtNjMsOCArNjYsMjQgQEAgV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQucHJvdG90eXBlID0gewog
ICAgICAgICAgICAgdGhpcy5hdXRvQ29tcGxldGVTb29uKCk7CiAgICAgICAgIH0KIAorICAgICAg
ICBpZiAoZXZlbnQuaGFuZGxlZCkKKyAgICAgICAgICAgIHJldHVybjsKKwogICAgICAgICB2YXIg
aGFuZGxlZCA9IGZhbHNlOwotICAgICAgICBzd2l0Y2ggKGV2ZW50LmtleUlkZW50aWZpZXIpIHsK
KworICAgICAgICB2YXIga2V5SWRlbnRpZmllciA9IGV2ZW50LmtleUlkZW50aWZpZXI7CisgICAg
ICAgIHZhciBkYXRhOworICAgICAgICBpZiAodGhpcy5fY3VzdG9tS2V5RG93bkhhbmRsZXIpIHsK
KyAgICAgICAgICAgIC8vIG51bGwgLT4gdGhlIGV2ZW50IHdpbGwgYmUgaGFuZGxlZCBhcyB1c3Vh
bC4KKyAgICAgICAgICAgIHZhciBjdXN0b21LZXlEb3duUmVzdWx0ID0gdGhpcy5fY3VzdG9tS2V5
RG93bkhhbmRsZXIoZXZlbnQsIHRoaXMpOworICAgICAgICAgICAgaWYgKGN1c3RvbUtleURvd25S
ZXN1bHQpIHsKKyAgICAgICAgICAgICAgICBrZXlJZGVudGlmaWVyID0gY3VzdG9tS2V5RG93blJl
c3VsdC5rZXlJZGVudGlmaWVyOworICAgICAgICAgICAgICAgIGRhdGEgPSBjdXN0b21LZXlEb3du
UmVzdWx0LmRhdGE7CisgICAgICAgICAgICAgICAgaGFuZGxlZCA9IGN1c3RvbUtleURvd25SZXN1
bHQuaGFuZGxlZDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIHN3aXRjaCAo
a2V5SWRlbnRpZmllcikgewogICAgICAgICAgICAgY2FzZSAiVXAiOgogICAgICAgICAgICAgICAg
IHRoaXMuX3VwS2V5UHJlc3NlZChldmVudCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC03
Miw3ICs5MSw4IEBAIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKICAgICAg
ICAgICAgICAgICB0aGlzLl9kb3duS2V5UHJlc3NlZChldmVudCk7CiAgICAgICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgICAgICBjYXNlICJVKzAwMDkiOiAvLyBUYWIKLSAgICAgICAgICAgICAg
ICB0aGlzLl90YWJLZXlQcmVzc2VkKGV2ZW50KTsKKyAgICAgICAgICAgICAgICBoYW5kbGVkID0g
Y3VzdG9tS2V5RG93blJlc3VsdCA/IGhhbmRsZWQgOiB0cnVlOworICAgICAgICAgICAgICAgIHRo
aXMuX3RhYktleVByZXNzZWQoZGF0YSB8fCBldmVudC5zaGlmdEtleSk7CiAgICAgICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlICJSaWdodCI6CiAgICAgICAgICAgICBjYXNlICJF
bmQiOgpAQCAtODUsNyArMTA1LDcgQEAgV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQucHJvdG90eXBl
ID0gewogICAgICAgICAgICAgY2FzZSAiQ29udHJvbCI6CiAgICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgICAgICBjYXNlICJVKzAwNTAiOiAvLyBDdHJsK1AgPSBQcmV2aW91cwotICAgICAg
ICAgICAgICAgIGlmIChXZWJJbnNwZWN0b3IuaXNNYWMoKSAmJiBldmVudC5jdHJsS2V5ICYmICFl
dmVudC5tZXRhS2V5ICYmICFldmVudC5hbHRLZXkgJiYgIWV2ZW50LnNoaWZ0S2V5KSB7CisgICAg
ICAgICAgICAgICAgaWYgKHRoaXMuaGlzdG9yeSAmJiBXZWJJbnNwZWN0b3IuaXNNYWMoKSAmJiBl
dmVudC5jdHJsS2V5ICYmICFldmVudC5tZXRhS2V5ICYmICFldmVudC5hbHRLZXkgJiYgIWV2ZW50
LnNoaWZ0S2V5KSB7CiAgICAgICAgICAgICAgICAgICAgIGhhbmRsZWQgPSB0cnVlOwogICAgICAg
ICAgICAgICAgICAgICB0aGlzLl9tb3ZlQmFja0luSGlzdG9yeSgpOwogICAgICAgICAgICAgICAg
ICAgICBicmVhazsKQEAgLTkzLDcgKzExMyw3IEBAIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnBy
b3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgICBkZWZhdWx0QWN0aW9uLmNhbGwodGhpcyk7CiAg
ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlICJVKzAwNEUiOiAvLyBDdHJs
K04gPSBOZXh0Ci0gICAgICAgICAgICAgICAgaWYgKFdlYkluc3BlY3Rvci5pc01hYygpICYmIGV2
ZW50LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50LmFsdEtleSAmJiAhZXZlbnQu
c2hpZnRLZXkpIHsKKyAgICAgICAgICAgICAgICBpZiAodGhpcy5oaXN0b3J5ICYmIFdlYkluc3Bl
Y3Rvci5pc01hYygpICYmIGV2ZW50LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50
LmFsdEtleSAmJiAhZXZlbnQuc2hpZnRLZXkpIHsKICAgICAgICAgICAgICAgICAgICAgaGFuZGxl
ZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgIHRoaXMuX21vdmVGb3J3YXJkSW5IaXN0b3J5
KCk7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMTA2LDYgKzEyNiw3IEBAIFdlYklu
c3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogCiAgICAgICAgIGlm
IChoYW5kbGVkKSB7CisgICAgICAgICAgICBldmVudC5oYW5kbGVkID0gdHJ1ZTsKICAgICAgICAg
ICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFn
YXRpb24oKTsKICAgICAgICAgfQpAQCAtMzc2LDEyICszOTcsOSBAQCBXZWJJbnNwZWN0b3IuVGV4
dFByb21wdC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHNlbGVjdGlvbi5hZGRSYW5nZShzZWxlY3Rp
b25SYW5nZSk7CiAgICAgfSwKIAotICAgIF90YWJLZXlQcmVzc2VkOiBmdW5jdGlvbihldmVudCkK
KyAgICBfdGFiS2V5UHJlc3NlZDogZnVuY3Rpb24ocmV2ZXJzZSkKICAgICB7Ci0gICAgICAgIGV2
ZW50LnByZXZlbnREZWZhdWx0KCk7Ci0gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwot
Ci0gICAgICAgIHRoaXMuY29tcGxldGUoZmFsc2UsIGV2ZW50LnNoaWZ0S2V5KTsKKyAgICAgICAg
dGhpcy5jb21wbGV0ZShmYWxzZSwgcmV2ZXJzZSk7CiAgICAgfSwKIAogICAgIF91cEtleVByZXNz
ZWQ6IGZ1bmN0aW9uKGV2ZW50KQpAQCAtNDA4LDcgKzQyNiw3IEBAIFdlYkluc3BlY3Rvci5UZXh0
UHJvbXB0LnByb3RvdHlwZSA9IHsKIAogICAgIF9tb3ZlQmFja0luSGlzdG9yeTogZnVuY3Rpb24o
KQogICAgIHsKLSAgICAgICAgaWYgKHRoaXMuaGlzdG9yeU9mZnNldCA9PSB0aGlzLmhpc3Rvcnku
bGVuZ3RoKQorICAgICAgICBpZiAoIXRoaXMuaGlzdG9yeSB8fCB0aGlzLmhpc3RvcnlPZmZzZXQg
PT0gdGhpcy5oaXN0b3J5Lmxlbmd0aCkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB0
aGlzLmNsZWFyQXV0b0NvbXBsZXRlKHRydWUpOwpAQCAtNDM3LDcgKzQ1NSw3IEBAIFdlYkluc3Bl
Y3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKIAogICAgIF9tb3ZlRm9yd2FyZEluSGlzdG9y
eTogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAgaWYgKHRoaXMuaGlzdG9yeU9mZnNldCA9PT0g
MCkKKyAgICAgICAgaWYgKCF0aGlzLmhpc3RvcnkgfHwgdGhpcy5oaXN0b3J5T2Zmc2V0ID09PSAw
KQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHRoaXMuY2xlYXJBdXRvQ29tcGxldGUo
dHJ1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2lu
c3BlY3Rvci5jc3MgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rv
ci5jc3MKaW5kZXggYzkwODQyNy4uZjYyOWQxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcwpAQCAtNzc4LDggKzc3OCw4IEBAIGJvZHku
cGxhdGZvcm0tbGludXggLm1vbm9zcGFjZSwgYm9keS5wbGF0Zm9ybS1saW51eCAuc291cmNlLWNv
ZGUgewogICAgIGNvbG9yOiByZWQ7CiB9CiAKLS5hdXRvLWNvbXBsZXRlLXRleHQgewotICAgIGNv
bG9yOiByZ2IoMTI4LCAxMjgsIDEyOCk7CisuYXV0by1jb21wbGV0ZS10ZXh0LCAuZWRpdGluZyAu
YXV0by1jb21wbGV0ZS10ZXh0IHsKKyAgICBjb2xvcjogcmdiKDEyOCwgMTI4LCAxMjgpICFpbXBv
cnRhbnQ7CiAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAgICAtd2Via2l0LXVzZXIt
bW9kaWZ5OiByZWFkLW9ubHk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9pbnNwZWN0b3IuaHRtbAppbmRleCBlMTU5MGYyLi43ODFiOGI2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmh0bWwKQEAgLTky
LDYgKzkyLDcgQEAgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIg
c3JjPSJFdmVudExpc3RlbmVyc1NpZGViYXJQYW5lLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJDb2xvci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iQ1NTQ29tcGxldGlvbnMuanMiPjwvc2Ny
aXB0PgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IkNTU0tleXdvcmRD
b21wbGV0aW9ucy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3Jp
cHQiIHNyYz0iU3R5bGVzU2lkZWJhclBhbmUuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgdHlw
ZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IlBhbmVsRW5hYmxlclZpZXcuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IldlbGNvbWVWaWV3LmpzIj48
L3NjcmlwdD4K
</data>
<flag name="review"
          id="70186"
          type_id="1"
          status="-"
          setter="yurys"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78939</attachid>
            <date>2011-01-14 07:10:26 -0800</date>
            <delta_ts>2011-01-14 08:51:58 -0800</delta_ts>
            <desc>[PATCH] Comments addressed</desc>
            <filename>csstextprompt.patch</filename>
            <type>text/plain</type>
            <size>43672</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IGUxNDIxZjhmZmIzNGEyN2VhYmY2ODMzYjdjYmI1NjM2ZGJkMjVjMTUKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUaHUgSmFuIDEz
IDIwOjExOjExIDIwMTEgKzAzMDAKCiAgICBUZXh0IHByb21wdCBmb3IgdmFsdWVzCgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CmluZGV4IGE3YjZjNmUuLjA1ZGM0NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAx
MS0wMS0xNCAgQWxleGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IEVtcGxveSBUZXh0UHJvbXB0IGZvciBDU1MgcHJvcGVydHkgbmFtZS92YWx1ZSBhdXRvY29tcGxl
dGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIy
MTIKKworICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvQ1NTS2V5d29yZENvbXBsZXRpb25z
LmpzOiBBZGRlZC4KKyAgICAgICAgKFdlYkluc3BlY3Rvci5DU1NLZXl3b3JkQ29tcGxldGlvbnMu
Zm9yUHJvcGVydHkpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvQ29uc29sZVZpZXcu
anM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9EYXRhYmFzZVF1ZXJ5Vmlldy5qczoK
KyAgICAgICAgKFdlYkluc3BlY3Rvci5EYXRhYmFzZVF1ZXJ5Vmlldyk6CisgICAgICAgICogaW5z
cGVjdG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlLnVwZGF0ZVRpdGxlKToKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlLnNl
bGVjdEVsZW1lbnQuZXZlbnQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlU
cmVlRWxlbWVudC5wcm90b3R5cGUuc2VsZWN0RWxlbWVudCk6CisgICAgICAgIChXZWJJbnNwZWN0
b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZSk6CisgICAgICAgICogaW5zcGVj
dG9yL2Zyb250LWVuZC9UZXh0UHJvbXB0LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRQ
cm9tcHQpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQucHJvdG90eXBlLl9vbktl
eURvd24pOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQucHJvdG90eXBlLl9tb3Zl
QmFja0luSGlzdG9yeSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90b3R5
cGUuX21vdmVGb3J3YXJkSW5IaXN0b3J5KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L2luc3BlY3Rvci5jc3M6CisgICAgICAgICguYXV0by1jb21wbGV0ZS10ZXh0LCAuZWRpdGluZyAu
YXV0by1jb21wbGV0ZS10ZXh0KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL2luc3Bl
Y3Rvci5odG1sOgorCiAyMDExLTAxLTE0ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIE5vdCByZXZpZXdlZDogYnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NLZXl3b3JkQ29tcGxldGlvbnMu
anMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NTU0tleXdvcmRDb21wbGV0
aW9ucy5qcwpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4xMmI3M2U5Ci0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NLZXl3
b3JkQ29tcGxldGlvbnMuanMKQEAgLTAsMCArMSwxMTE2IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAq
ICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBp
dHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJv
ZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisg
KiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworV2ViSW5zcGVjdG9yLkNTU0tleXdv
cmRDb21wbGV0aW9ucyA9IHsKKyAgICBmb3JQcm9wZXJ0eTogZnVuY3Rpb24ocHJvcGVydHlOYW1l
KQorICAgIHsKKyAgICAgICAgdmFyIGFjY2VwdGVkS2V5d29yZHMgPSBbImluaXRpYWwiXTsKKyAg
ICAgICAgaWYgKHByb3BlcnR5TmFtZSBpbiB0aGlzLl9wcm9wZXJ0eUtleXdvcmRNYXApCisgICAg
ICAgICAgICBhY2NlcHRlZEtleXdvcmRzID0gYWNjZXB0ZWRLZXl3b3Jkcy5jb25jYXQodGhpcy5f
cHJvcGVydHlLZXl3b3JkTWFwW3Byb3BlcnR5TmFtZV0pOworICAgICAgICBpZiAocHJvcGVydHlO
YW1lIGluIHRoaXMuX2NvbG9yQXdhcmVQcm9wZXJ0aWVzKQorICAgICAgICAgICAgYWNjZXB0ZWRL
ZXl3b3JkcyA9IGFjY2VwdGVkS2V5d29yZHMuY29uY2F0KFdlYkluc3BlY3Rvci5DU1NLZXl3b3Jk
Q29tcGxldGlvbnMuX2NvbG9ycyk7CisgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgaW4gV2ViSW5z
cGVjdG9yLlN0eWxlc1NpZGViYXJQYW5lLkluaGVyaXRlZFByb3BlcnRpZXMpCisgICAgICAgICAg
ICBhY2NlcHRlZEtleXdvcmRzLnB1c2goImluaGVyaXQiKTsKKyAgICAgICAgcmV0dXJuIG5ldyBX
ZWJJbnNwZWN0b3IuQ1NTQ29tcGxldGlvbnMoYWNjZXB0ZWRLZXl3b3Jkcyk7CisgICAgfQorfTsK
KworV2ViSW5zcGVjdG9yLkNTU0tleXdvcmRDb21wbGV0aW9ucy5fY29sb3JzID0gWworICAgICJh
cXVhIiwKKyAgICAiYmxhY2siLAorICAgICJibHVlIiwKKyAgICAiZnVjaHNpYSIsCisgICAgImdy
YXkiLAorICAgICJncmVlbiIsCisgICAgImxpbWUiLAorICAgICJtYXJvb24iLAorICAgICJuYXZ5
IiwKKyAgICAib2xpdmUiLAorICAgICJvcmFuZ2UiLAorICAgICJwdXJwbGUiLAorICAgICJyZWQi
LAorICAgICJzaWx2ZXIiLAorICAgICJ0ZWFsIiwKKyAgICAid2hpdGUiLAorICAgICJ5ZWxsb3ci
LAorICAgICJ0cmFuc3BhcmVudCIsCisgICAgImN1cnJlbnRjb2xvciIsCisgICAgImdyZXkiLAor
ICAgICJhbGljZWJsdWUiLAorICAgICJhbnRpcXVld2hpdGUiLAorICAgICJhcXVhbWFyaW5lIiwK
KyAgICAiYXp1cmUiLAorICAgICJiZWlnZSIsCisgICAgImJpc3F1ZSIsCisgICAgImJsYW5jaGVk
YWxtb25kIiwKKyAgICAiYmx1ZXZpb2xldCIsCisgICAgImJyb3duIiwKKyAgICAiYnVybHl3b29k
IiwKKyAgICAiY2FkZXRibHVlIiwKKyAgICAiY2hhcnRyZXVzZSIsCisgICAgImNob2NvbGF0ZSIs
CisgICAgImNvcmFsIiwKKyAgICAiY29ybmZsb3dlcmJsdWUiLAorICAgICJjb3Juc2lsayIsCisg
ICAgImNyaW1zb24iLAorICAgICJjeWFuIiwKKyAgICAiZGFya2JsdWUiLAorICAgICJkYXJrY3lh
biIsCisgICAgImRhcmtnb2xkZW5yb2QiLAorICAgICJkYXJrZ3JheSIsCisgICAgImRhcmtncmVl
biIsCisgICAgImRhcmtncmV5IiwKKyAgICAiZGFya2toYWtpIiwKKyAgICAiZGFya21hZ2VudGEi
LAorICAgICJkYXJrb2xpdmVncmVlbiIsCisgICAgImRhcmtvcmFuZ2UiLAorICAgICJkYXJrb3Jj
aGlkIiwKKyAgICAiZGFya3JlZCIsCisgICAgImRhcmtzYWxtb24iLAorICAgICJkYXJrc2VhZ3Jl
ZW4iLAorICAgICJkYXJrc2xhdGVibHVlIiwKKyAgICAiZGFya3NsYXRlZ3JheSIsCisgICAgImRh
cmtzbGF0ZWdyZXkiLAorICAgICJkYXJrdHVycXVvaXNlIiwKKyAgICAiZGFya3Zpb2xldCIsCisg
ICAgImRlZXBwaW5rIiwKKyAgICAiZGVlcHNreWJsdWUiLAorICAgICJkaW1ncmF5IiwKKyAgICAi
ZGltZ3JleSIsCisgICAgImRvZGdlcmJsdWUiLAorICAgICJmaXJlYnJpY2siLAorICAgICJmbG9y
YWx3aGl0ZSIsCisgICAgImZvcmVzdGdyZWVuIiwKKyAgICAiZ2FpbnNib3JvIiwKKyAgICAiZ2hv
c3R3aGl0ZSIsCisgICAgImdvbGQiLAorICAgICJnb2xkZW5yb2QiLAorICAgICJncmVlbnllbGxv
dyIsCisgICAgImhvbmV5ZGV3IiwKKyAgICAiaG90cGluayIsCisgICAgImluZGlhbnJlZCIsCisg
ICAgImluZGlnbyIsCisgICAgIml2b3J5IiwKKyAgICAia2hha2kiLAorICAgICJsYXZlbmRlciIs
CisgICAgImxhdmVuZGVyYmx1c2giLAorICAgICJsYXduZ3JlZW4iLAorICAgICJsZW1vbmNoaWZm
b24iLAorICAgICJsaWdodGJsdWUiLAorICAgICJsaWdodGNvcmFsIiwKKyAgICAibGlnaHRjeWFu
IiwKKyAgICAibGlnaHRnb2xkZW5yb2R5ZWxsb3ciLAorICAgICJsaWdodGdyYXkiLAorICAgICJs
aWdodGdyZWVuIiwKKyAgICAibGlnaHRncmV5IiwKKyAgICAibGlnaHRwaW5rIiwKKyAgICAibGln
aHRzYWxtb24iLAorICAgICJsaWdodHNlYWdyZWVuIiwKKyAgICAibGlnaHRza3libHVlIiwKKyAg
ICAibGlnaHRzbGF0ZWdyYXkiLAorICAgICJsaWdodHNsYXRlZ3JleSIsCisgICAgImxpZ2h0c3Rl
ZWxibHVlIiwKKyAgICAibGlnaHR5ZWxsb3ciLAorICAgICJsaW1lZ3JlZW4iLAorICAgICJsaW5l
biIsCisgICAgIm1hZ2VudGEiLAorICAgICJtZWRpdW1hcXVhbWFyaW5lIiwKKyAgICAibWVkaXVt
Ymx1ZSIsCisgICAgIm1lZGl1bW9yY2hpZCIsCisgICAgIm1lZGl1bXB1cnBsZSIsCisgICAgIm1l
ZGl1bXNlYWdyZWVuIiwKKyAgICAibWVkaXVtc2xhdGVibHVlIiwKKyAgICAibWVkaXVtc3ByaW5n
Z3JlZW4iLAorICAgICJtZWRpdW10dXJxdW9pc2UiLAorICAgICJtZWRpdW12aW9sZXRyZWQiLAor
ICAgICJtaWRuaWdodGJsdWUiLAorICAgICJtaW50Y3JlYW0iLAorICAgICJtaXN0eXJvc2UiLAor
ICAgICJtb2NjYXNpbiIsCisgICAgIm5hdmFqb3doaXRlIiwKKyAgICAib2xkbGFjZSIsCisgICAg
Im9saXZlZHJhYiIsCisgICAgIm9yYW5nZXJlZCIsCisgICAgIm9yY2hpZCIsCisgICAgInBhbGVn
b2xkZW5yb2QiLAorICAgICJwYWxlZ3JlZW4iLAorICAgICJwYWxldHVycXVvaXNlIiwKKyAgICAi
cGFsZXZpb2xldHJlZCIsCisgICAgInBhcGF5YXdoaXAiLAorICAgICJwZWFjaHB1ZmYiLAorICAg
ICJwZXJ1IiwKKyAgICAicGluayIsCisgICAgInBsdW0iLAorICAgICJwb3dkZXJibHVlIiwKKyAg
ICAicm9zeWJyb3duIiwKKyAgICAicm95YWxibHVlIiwKKyAgICAic2FkZGxlYnJvd24iLAorICAg
ICJzYWxtb24iLAorICAgICJzYW5keWJyb3duIiwKKyAgICAic2VhZ3JlZW4iLAorICAgICJzZWFz
aGVsbCIsCisgICAgInNpZW5uYSIsCisgICAgInNreWJsdWUiLAorICAgICJzbGF0ZWJsdWUiLAor
ICAgICJzbGF0ZWdyYXkiLAorICAgICJzbGF0ZWdyZXkiLAorICAgICJzbm93IiwKKyAgICAic3By
aW5nZ3JlZW4iLAorICAgICJzdGVlbGJsdWUiLAorICAgICJ0YW4iLAorICAgICJ0aGlzdGxlIiwK
KyAgICAidG9tYXRvIiwKKyAgICAidHVycXVvaXNlIiwKKyAgICAidmlvbGV0IiwKKyAgICAid2hl
YXQiLAorICAgICJ3aGl0ZXNtb2tlIiwKKyAgICAieWVsbG93Z3JlZW4iCitdLAorCitXZWJJbnNw
ZWN0b3IuQ1NTS2V5d29yZENvbXBsZXRpb25zLl9jb2xvckF3YXJlUHJvcGVydGllcyA9IFsKKyAg
ICAiYmFja2dyb3VuZCIsCisgICAgImJhY2tncm91bmQtY29sb3IiLAorICAgICJib3JkZXIiLAor
ICAgICJib3JkZXItY29sb3IiLAorICAgICJib3JkZXItdG9wIiwKKyAgICAiYm9yZGVyLXJpZ2h0
IiwKKyAgICAiYm9yZGVyLWJvdHRvbSIsCisgICAgImJvcmRlci1sZWZ0IiwKKyAgICAiYm9yZGVy
LXRvcC1jb2xvciIsCisgICAgImJvcmRlci1yaWdodC1jb2xvciIsCisgICAgImJvcmRlci1ib3R0
b20tY29sb3IiLAorICAgICJib3JkZXItbGVmdC1jb2xvciIsCisgICAgImNvbG9yIiwKKyAgICAi
b3V0bGluZSIsCisgICAgIm91dGxpbmUtY29sb3IiLAorICAgICJ0ZXh0LWxpbmUtdGhyb3VnaCIs
CisgICAgInRleHQtbGluZS10aHJvdWdoLWNvbG9yIiwKKyAgICAidGV4dC1vdmVybGluZSIsCisg
ICAgInRleHQtb3ZlcmxpbmUtY29sb3IiLAorICAgICJ0ZXh0LXNoYWRvdyIsCisgICAgInRleHQt
dW5kZXJsaW5lIiwKKyAgICAidGV4dC11bmRlcmxpbmUtY29sb3IiLAorICAgICItd2Via2l0LXRl
eHQtZW1waGFzaXMiLAorICAgICItd2Via2l0LXRleHQtZW1waGFzaXMtY29sb3IiCitdLmtleVNl
dCgpOworCitXZWJJbnNwZWN0b3IuQ1NTS2V5d29yZENvbXBsZXRpb25zLl9wcm9wZXJ0eUtleXdv
cmRNYXAgPSB7CisgICAgInRhYmxlLWxheW91dCI6IFsKKyAgICAgICAgImF1dG8iLAorICAgICAg
ICAiZml4ZWQiCisgICAgXSwKKyAgICAidmlzaWJpbGl0eSI6IFsKKyAgICAgICAgImhpZGRlbiIs
CisgICAgICAgICJ2aXNpYmxlIiwKKyAgICAgICAgImNvbGxhcHNlIgorICAgIF0sCisgICAgImJh
Y2tncm91bmQtcmVwZWF0IjogWworICAgICAgICAicmVwZWF0IiwKKyAgICAgICAgInJlcGVhdC14
IiwKKyAgICAgICAgInJlcGVhdC15IiwKKyAgICAgICAgIm5vLXJlcGVhdCIsCisgICAgICAgICJz
cGFjZSIsCisgICAgICAgICJyb3VuZCIKKyAgICBdLAorICAgICJ0ZXh0LXVuZGVybGluZSI6IFsK
KyAgICAgICAgIm5vbmUiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisg
ICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiLAorICAgICAgICAiZG90LWRhc2giLAor
ICAgICAgICAiZG90LWRvdC1kYXNoIiwKKyAgICAgICAgIndhdmUiCisgICAgXSwKKyAgICAiY29u
dGVudCI6IFsKKyAgICAgICAgImxpc3QtaXRlbSIsCisgICAgICAgICJjbG9zZS1xdW90ZSIsCisg
ICAgICAgICJuby1jbG9zZS1xdW90ZSIsCisgICAgICAgICJuby1vcGVuLXF1b3RlIiwKKyAgICAg
ICAgIm9wZW4tcXVvdGUiCisgICAgXSwKKyAgICAibGlzdC1zdHlsZS1pbWFnZSI6IFsKKyAgICAg
ICAgIm5vbmUiCisgICAgXSwKKyAgICAiY2xlYXIiOiBbCisgICAgICAgICJub25lIiwKKyAgICAg
ICAgImxlZnQiLAorICAgICAgICAicmlnaHQiLAorICAgICAgICAiYm90aCIKKyAgICBdLAorICAg
ICJ0ZXh0LXVuZGVybGluZS1tb2RlIjogWworICAgICAgICAiY29udGludW91cyIsCisgICAgICAg
ICJza2lwLXdoaXRlLXNwYWNlIgorICAgIF0sCisgICAgIm92ZXJmbG93LXgiOiBbCisgICAgICAg
ICJoaWRkZW4iLAorICAgICAgICAiYXV0byIsCisgICAgICAgICJ2aXNpYmxlIiwKKyAgICAgICAg
Im92ZXJsYXkiLAorICAgICAgICAic2Nyb2xsIgorICAgIF0sCisgICAgInN0cm9rZS1saW5lam9p
biI6IFsKKyAgICAgICAgInJvdW5kIiwKKyAgICAgICAgIm1pdGVyIiwKKyAgICAgICAgImJldmVs
IgorICAgIF0sCisgICAgImJhc2VsaW5lLXNoaWZ0IjogWworICAgICAgICAiYmFzZWxpbmUiLAor
ICAgICAgICAic3ViIiwKKyAgICAgICAgInN1cGVyIgorICAgIF0sCisgICAgImJvcmRlci1ib3R0
b20td2lkdGgiOiBbCisgICAgICAgICJtZWRpdW0iLAorICAgICAgICAidGhpY2siLAorICAgICAg
ICAidGhpbiIKKyAgICBdLAorICAgICJtYXJxdWVlLXNwZWVkIjogWworICAgICAgICAibm9ybWFs
IiwKKyAgICAgICAgInNsb3ciLAorICAgICAgICAiZmFzdCIKKyAgICBdLAorICAgICJtYXJnaW4t
dG9wLWNvbGxhcHNlIjogWworICAgICAgICAiY29sbGFwc2UiLAorICAgICAgICAic2VwYXJhdGUi
LAorICAgICAgICAiZGlzY2FyZCIKKyAgICBdLAorICAgICJtYXgtaGVpZ2h0IjogWworICAgICAg
ICAibm9uZSIKKyAgICBdLAorICAgICJib3gtb3JpZW50IjogWworICAgICAgICAiaG9yaXpvbnRh
bCIsCisgICAgICAgICJ2ZXJ0aWNhbCIsCisgICAgICAgICJpbmxpbmUtYXhpcyIsCisgICAgICAg
ICJibG9jay1heGlzIgorICAgIF0sCisgICAgImZvbnQtc3RyZXRjaCI6IFsKKyAgICAgICAgIm5v
cm1hbCIsCisgICAgICAgICJ3aWRlciIsCisgICAgICAgICJuYXJyb3dlciIsCisgICAgICAgICJ1
bHRyYS1jb25kZW5zZWQiLAorICAgICAgICAiZXh0cmEtY29uZGVuc2VkIiwKKyAgICAgICAgImNv
bmRlbnNlZCIsCisgICAgICAgICJzZW1pLWNvbmRlbnNlZCIsCisgICAgICAgICJzZW1pLWV4cGFu
ZGVkIiwKKyAgICAgICAgImV4cGFuZGVkIiwKKyAgICAgICAgImV4dHJhLWV4cGFuZGVkIiwKKyAg
ICAgICAgInVsdHJhLWV4cGFuZGVkIgorICAgIF0sCisgICAgIi13ZWJraXQtY29sb3ItY29ycmVj
dGlvbiI6IFsKKyAgICAgICAgImRlZmF1bHQiLAorICAgICAgICAic3JnYiIKKyAgICBdLAorICAg
ICJ0ZXh0LXVuZGVybGluZS1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiZG90
dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3Vi
bGUiLAorICAgICAgICAiZG90LWRhc2giLAorICAgICAgICAiZG90LWRvdC1kYXNoIiwKKyAgICAg
ICAgIndhdmUiCisgICAgXSwKKyAgICAidGV4dC1vdmVybGluZS1tb2RlIjogWworICAgICAgICAi
Y29udGludW91cyIsCisgICAgICAgICJza2lwLXdoaXRlLXNwYWNlIgorICAgIF0sCisgICAgIi13
ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUiOiBbCisgICAgICAgICJoaWdobGlnaHQiLAorICAg
ICAgICAiY2xlYXIiLAorICAgICAgICAiY29weSIsCisgICAgICAgICJzb3VyY2Utb3ZlciIsCisg
ICAgICAgICJzb3VyY2UtaW4iLAorICAgICAgICAic291cmNlLW91dCIsCisgICAgICAgICJzb3Vy
Y2UtYXRvcCIsCisgICAgICAgICJkZXN0aW5hdGlvbi1vdmVyIiwKKyAgICAgICAgImRlc3RpbmF0
aW9uLWluIiwKKyAgICAgICAgImRlc3RpbmF0aW9uLW91dCIsCisgICAgICAgICJkZXN0aW5hdGlv
bi1hdG9wIiwKKyAgICAgICAgInhvciIsCisgICAgICAgICJwbHVzLWRhcmtlciIsCisgICAgICAg
ICJwbHVzLWxpZ2h0ZXIiCisgICAgXSwKKyAgICAiYm9yZGVyLWxlZnQtd2lkdGgiOiBbCisgICAg
ICAgICJtZWRpdW0iLAorICAgICAgICAidGhpY2siLAorICAgICAgICAidGhpbiIKKyAgICBdLAor
ICAgICItd2Via2l0LXdyaXRpbmctbW9kZSI6IFsKKyAgICAgICAgImxyIiwKKyAgICAgICAgInJs
IiwKKyAgICAgICAgInRiIiwKKyAgICAgICAgImxyLXRiIiwKKyAgICAgICAgInJsLXRiIiwKKyAg
ICAgICAgInRiLXJsIiwKKyAgICAgICAgImhvcml6b250YWwtdGIiLAorICAgICAgICAidmVydGlj
YWwtcmwiLAorICAgICAgICAidmVydGljYWwtbHIiLAorICAgICAgICAiaG9yaXpvbnRhbC1idCIK
KyAgICBdLAorICAgICJ0ZXh0LWxpbmUtdGhyb3VnaC1tb2RlIjogWworICAgICAgICAiY29udGlu
dW91cyIsCisgICAgICAgICJza2lwLXdoaXRlLXNwYWNlIgorICAgIF0sCisgICAgImJvcmRlci1j
b2xsYXBzZSI6IFsKKyAgICAgICAgImNvbGxhcHNlIiwKKyAgICAgICAgInNlcGFyYXRlIgorICAg
IF0sCisgICAgInBhZ2UtYnJlYWstaW5zaWRlIjogWworICAgICAgICAiYXV0byIsCisgICAgICAg
ICJhdm9pZCIKKyAgICBdLAorICAgICJib3JkZXItdG9wLXdpZHRoIjogWworICAgICAgICAibWVk
aXVtIiwKKyAgICAgICAgInRoaWNrIiwKKyAgICAgICAgInRoaW4iCisgICAgXSwKKyAgICAib3V0
bGluZS1jb2xvciI6IFsKKyAgICAgICAgImludmVydCIKKyAgICBdLAorICAgICJ0ZXh0LWxpbmUt
dGhyb3VnaC1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiZG90dGVkIiwKKyAg
ICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiLAorICAg
ICAgICAiZG90LWRhc2giLAorICAgICAgICAiZG90LWRvdC1kYXNoIiwKKyAgICAgICAgIndhdmUi
CisgICAgXSwKKyAgICAib3V0bGluZS1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAg
ICAiaGlkZGVuIiwKKyAgICAgICAgImluc2V0IiwKKyAgICAgICAgImdyb292ZSIsCisgICAgICAg
ICJyaWRnZSIsCisgICAgICAgICJvdXRzZXQiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAg
ImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiCisgICAgXSwKKyAg
ICAiY3Vyc29yIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJjb3B5IiwKKyAgICAgICAg
ImF1dG8iLAorICAgICAgICAiY3Jvc3NoYWlyIiwKKyAgICAgICAgImRlZmF1bHQiLAorICAgICAg
ICAicG9pbnRlciIsCisgICAgICAgICJtb3ZlIiwKKyAgICAgICAgInZlcnRpY2FsLXRleHQiLAor
ICAgICAgICAiY2VsbCIsCisgICAgICAgICJjb250ZXh0LW1lbnUiLAorICAgICAgICAiYWxpYXMi
LAorICAgICAgICAicHJvZ3Jlc3MiLAorICAgICAgICAibm8tZHJvcCIsCisgICAgICAgICJub3Qt
YWxsb3dlZCIsCisgICAgICAgICItd2Via2l0LXpvb20taW4iLAorICAgICAgICAiLXdlYmtpdC16
b29tLW91dCIsCisgICAgICAgICJlLXJlc2l6ZSIsCisgICAgICAgICJuZS1yZXNpemUiLAorICAg
ICAgICAibnctcmVzaXplIiwKKyAgICAgICAgIm4tcmVzaXplIiwKKyAgICAgICAgInNlLXJlc2l6
ZSIsCisgICAgICAgICJzdy1yZXNpemUiLAorICAgICAgICAicy1yZXNpemUiLAorICAgICAgICAi
dy1yZXNpemUiLAorICAgICAgICAiZXctcmVzaXplIiwKKyAgICAgICAgIm5zLXJlc2l6ZSIsCisg
ICAgICAgICJuZXN3LXJlc2l6ZSIsCisgICAgICAgICJud3NlLXJlc2l6ZSIsCisgICAgICAgICJj
b2wtcmVzaXplIiwKKyAgICAgICAgInJvdy1yZXNpemUiLAorICAgICAgICAidGV4dCIsCisgICAg
ICAgICJ3YWl0IiwKKyAgICAgICAgImhlbHAiLAorICAgICAgICAiYWxsLXNjcm9sbCIsCisgICAg
ICAgICItd2Via2l0LWdyYWIiLAorICAgICAgICAiLXdlYmtpdC1ncmFiYmluZyIKKyAgICBdLAor
ICAgICJib3JkZXItd2lkdGgiOiBbCisgICAgICAgICJtZWRpdW0iLAorICAgICAgICAidGhpY2si
LAorICAgICAgICAidGhpbiIKKyAgICBdLAorICAgICJzaXplIjogWworICAgICAgICAiYTMiLAor
ICAgICAgICAiYTQiLAorICAgICAgICAiYTUiLAorICAgICAgICAiYjQiLAorICAgICAgICAiYjUi
LAorICAgICAgICAibGFuZHNjYXBlIiwKKyAgICAgICAgImxlZGdlciIsCisgICAgICAgICJsZWdh
bCIsCisgICAgICAgICJsZXR0ZXIiLAorICAgICAgICAicG9ydHJhaXQiCisgICAgXSwKKyAgICAi
YmFja2dyb3VuZC1zaXplIjogWworICAgICAgICAiY29udGFpbiIsCisgICAgICAgICJjb3ZlciIK
KyAgICBdLAorICAgICJkaXJlY3Rpb24iOiBbCisgICAgICAgICJsdHIiLAorICAgICAgICAicnRs
IgorICAgIF0sCisgICAgIm1hcnF1ZWUtZGlyZWN0aW9uIjogWworICAgICAgICAibGVmdCIsCisg
ICAgICAgICJyaWdodCIsCisgICAgICAgICJhdXRvIiwKKyAgICAgICAgInJldmVyc2UiLAorICAg
ICAgICAiZm9yd2FyZHMiLAorICAgICAgICAiYmFja3dhcmRzIiwKKyAgICAgICAgImFoZWFkIiwK
KyAgICAgICAgInVwIiwKKyAgICAgICAgImRvd24iCisgICAgXSwKKyAgICAiZW5hYmxlLWJhY2tn
cm91bmQiOiBbCisgICAgICAgICJhY2N1bXVsYXRlIiwKKyAgICAgICAgIm5ldyIKKyAgICBdLAor
ICAgICJmbG9hdCI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAibGVmdCIsCisgICAgICAg
ICJyaWdodCIKKyAgICBdLAorICAgICJvdmVyZmxvdy15IjogWworICAgICAgICAiaGlkZGVuIiwK
KyAgICAgICAgImF1dG8iLAorICAgICAgICAidmlzaWJsZSIsCisgICAgICAgICJvdmVybGF5IiwK
KyAgICAgICAgInNjcm9sbCIKKyAgICBdLAorICAgICJtYXJnaW4tYm90dG9tLWNvbGxhcHNlIjog
WworICAgICAgICAiY29sbGFwc2UiLAorICAgICAgICAic2VwYXJhdGUiLAorICAgICAgICAiZGlz
Y2FyZCIKKyAgICBdLAorICAgICJib3gtcmVmbGVjdCI6IFsKKyAgICAgICAgImxlZnQiLAorICAg
ICAgICAicmlnaHQiLAorICAgICAgICAiYWJvdmUiLAorICAgICAgICAiYmVsb3ciCisgICAgXSwK
KyAgICAib3ZlcmZsb3ciOiBbCisgICAgICAgICJoaWRkZW4iLAorICAgICAgICAiYXV0byIsCisg
ICAgICAgICJ2aXNpYmxlIiwKKyAgICAgICAgIm92ZXJsYXkiLAorICAgICAgICAic2Nyb2xsIgor
ICAgIF0sCisgICAgInRleHQtcmVuZGVyaW5nIjogWworICAgICAgICAiYXV0byIsCisgICAgICAg
ICJvcHRpbWl6ZXNwZWVkIiwKKyAgICAgICAgIm9wdGltaXplbGVnaWJpbGl0eSIsCisgICAgICAg
ICJnZW9tZXRyaWNwcmVjaXNpb24iCisgICAgXSwKKyAgICAidGV4dC1hbGlnbiI6IFsKKyAgICAg
ICAgIi13ZWJraXQtYXV0byIsCisgICAgICAgICJsZWZ0IiwKKyAgICAgICAgInJpZ2h0IiwKKyAg
ICAgICAgImNlbnRlciIsCisgICAgICAgICJqdXN0aWZ5IiwKKyAgICAgICAgIi13ZWJraXQtbGVm
dCIsCisgICAgICAgICItd2Via2l0LXJpZ2h0IiwKKyAgICAgICAgIi13ZWJraXQtY2VudGVyIgor
ICAgIF0sCisgICAgImxpc3Qtc3R5bGUtcG9zaXRpb24iOiBbCisgICAgICAgICJvdXRzaWRlIiwK
KyAgICAgICAgImluc2lkZSIKKyAgICBdLAorICAgICJtYXJnaW4tYm90dG9tIjogWworICAgICAg
ICAiYXV0byIKKyAgICBdLAorICAgICJjb2xvci1pbnRlcnBvbGF0aW9uIjogWworICAgICAgICAi
bGluZWFycmdiIgorICAgIF0sCisgICAgImJhY2tncm91bmQtb3JpZ2luIjogWworICAgICAgICAi
Ym9yZGVyLWJveCIsCisgICAgICAgICJjb250ZW50LWJveCIsCisgICAgICAgICJwYWRkaW5nLWJv
eCIKKyAgICBdLAorICAgICJ3b3JkLXdyYXAiOiBbCisgICAgICAgICJub3JtYWwiLAorICAgICAg
ICAiYnJlYWstd29yZCIKKyAgICBdLAorICAgICJmb250LXdlaWdodCI6IFsKKyAgICAgICAgIm5v
cm1hbCIsCisgICAgICAgICJib2xkIiwKKyAgICAgICAgImJvbGRlciIsCisgICAgICAgICJsaWdo
dGVyIiwKKyAgICAgICAgIjEwMCIsCisgICAgICAgICIyMDAiLAorICAgICAgICAiMzAwIiwKKyAg
ICAgICAgIjQwMCIsCisgICAgICAgICI1MDAiLAorICAgICAgICAiNjAwIiwKKyAgICAgICAgIjcw
MCIsCisgICAgICAgICI4MDAiLAorICAgICAgICAiOTAwIgorICAgIF0sCisgICAgIm1hcmdpbi1i
ZWZvcmUtY29sbGFwc2UiOiBbCisgICAgICAgICJjb2xsYXBzZSIsCisgICAgICAgICJzZXBhcmF0
ZSIsCisgICAgICAgICJkaXNjYXJkIgorICAgIF0sCisgICAgInRleHQtb3ZlcmxpbmUtd2lkdGgi
OiBbCisgICAgICAgICJub3JtYWwiLAorICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgImF1dG8i
LAorICAgICAgICAidGhpY2siLAorICAgICAgICAidGhpbiIKKyAgICBdLAorICAgICJ0ZXh0LXRy
YW5zZm9ybSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiY2FwaXRhbGl6ZSIsCisgICAg
ICAgICJ1cHBlcmNhc2UiLAorICAgICAgICAibG93ZXJjYXNlIgorICAgIF0sCisgICAgImJvcmRl
ci1yaWdodC1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiaGlkZGVuIiwKKyAg
ICAgICAgImluc2V0IiwKKyAgICAgICAgImdyb292ZSIsCisgICAgICAgICJyaWRnZSIsCisgICAg
ICAgICJvdXRzZXQiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAg
ICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiCisgICAgXSwKKyAgICAiYm9yZGVyLWxlZnQt
c3R5bGUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImhpZGRlbiIsCisgICAgICAgICJp
bnNldCIsCisgICAgICAgICJncm9vdmUiLAorICAgICAgICAicmlkZ2UiLAorICAgICAgICAib3V0
c2V0IiwKKyAgICAgICAgImRvdHRlZCIsCisgICAgICAgICJkYXNoZWQiLAorICAgICAgICAic29s
aWQiLAorICAgICAgICAiZG91YmxlIgorICAgIF0sCisgICAgIi13ZWJraXQtdGV4dC1lbXBoYXNp
cyI6IFsKKyAgICAgICAgImNpcmNsZSIsCisgICAgICAgICJmaWxsZWQiLAorICAgICAgICAib3Bl
biIsCisgICAgICAgICJkb3QiLAorICAgICAgICAiZG91YmxlLWNpcmNsZSIsCisgICAgICAgICJ0
cmlhbmdsZSIsCisgICAgICAgICJzZXNhbWUiCisgICAgXSwKKyAgICAiZm9udC1zdHlsZSI6IFsK
KyAgICAgICAgIml0YWxpYyIsCisgICAgICAgICJvYmxpcXVlIiwKKyAgICAgICAgIm5vcm1hbCIK
KyAgICBdLAorICAgICJzcGVhayI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAibm9ybWFs
IiwKKyAgICAgICAgInNwZWxsLW91dCIsCisgICAgICAgICJkaWdpdHMiLAorICAgICAgICAibGl0
ZXJhbC1wdW5jdHVhdGlvbiIsCisgICAgICAgICJuby1wdW5jdHVhdGlvbiIKKyAgICBdLAorICAg
ICJ0ZXh0LWxpbmUtdGhyb3VnaCI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiZG90dGVk
IiwKKyAgICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUi
LAorICAgICAgICAiZG90LWRhc2giLAorICAgICAgICAiZG90LWRvdC1kYXNoIiwKKyAgICAgICAg
IndhdmUiLAorICAgICAgICAiY29udGludW91cyIsCisgICAgICAgICJza2lwLXdoaXRlLXNwYWNl
IgorICAgIF0sCisgICAgImNvbG9yLXJlbmRlcmluZyI6IFsKKyAgICAgICAgImF1dG8iLAorICAg
ICAgICAib3B0aW1pemVzcGVlZCIsCisgICAgICAgICJvcHRpbWl6ZXF1YWxpdHkiCisgICAgXSwK
KyAgICAibGlzdC1zdHlsZS10eXBlIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJkaXNj
IiwKKyAgICAgICAgImNpcmNsZSIsCisgICAgICAgICJzcXVhcmUiLAorICAgICAgICAiZGVjaW1h
bCIsCisgICAgICAgICJkZWNpbWFsLWxlYWRpbmctemVybyIsCisgICAgICAgICJhcmFiaWMtaW5k
aWMiLAorICAgICAgICAiYmluYXJ5IiwKKyAgICAgICAgImJlbmdhbGkiLAorICAgICAgICAiY2Ft
Ym9kaWFuIiwKKyAgICAgICAgImtobWVyIiwKKyAgICAgICAgImRldmFuYWdhcmkiLAorICAgICAg
ICAiZ3VqYXJhdGkiLAorICAgICAgICAiZ3VybXVraGkiLAorICAgICAgICAia2FubmFkYSIsCisg
ICAgICAgICJsb3dlci1oZXhhZGVjaW1hbCIsCisgICAgICAgICJsYW8iLAorICAgICAgICAibWFs
YXlhbGFtIiwKKyAgICAgICAgIm1vbmdvbGlhbiIsCisgICAgICAgICJteWFubWFyIiwKKyAgICAg
ICAgIm9jdGFsIiwKKyAgICAgICAgIm9yaXlhIiwKKyAgICAgICAgInBlcnNpYW4iLAorICAgICAg
ICAidXJkdSIsCisgICAgICAgICJ0ZWx1Z3UiLAorICAgICAgICAidGliZXRhbiIsCisgICAgICAg
ICJ0aGFpIiwKKyAgICAgICAgInVwcGVyLWhleGFkZWNpbWFsIiwKKyAgICAgICAgImxvd2VyLXJv
bWFuIiwKKyAgICAgICAgInVwcGVyLXJvbWFuIiwKKyAgICAgICAgImxvd2VyLWdyZWVrIiwKKyAg
ICAgICAgImxvd2VyLWFscGhhIiwKKyAgICAgICAgImxvd2VyLWxhdGluIiwKKyAgICAgICAgInVw
cGVyLWFscGhhIiwKKyAgICAgICAgInVwcGVyLWxhdGluIiwKKyAgICAgICAgImFmYXIiLAorICAg
ICAgICAiZXRoaW9waWMtaGFsZWhhbWUtYWEtZXQiLAorICAgICAgICAiZXRoaW9waWMtaGFsZWhh
bWUtYWEtZXIiLAorICAgICAgICAiYW1oYXJpYyIsCisgICAgICAgICJldGhpb3BpYy1oYWxlaGFt
ZS1hbS1ldCIsCisgICAgICAgICJhbWhhcmljLWFiZWdlZGUiLAorICAgICAgICAiZXRoaW9waWMt
YWJlZ2VkZS1hbS1ldCIsCisgICAgICAgICJjamstZWFydGhseS1icmFuY2giLAorICAgICAgICAi
Y2prLWhlYXZlbmx5LXN0ZW0iLAorICAgICAgICAiZXRoaW9waWMiLAorICAgICAgICAiZXRoaW9w
aWMtaGFsZWhhbWUtZ2V6IiwKKyAgICAgICAgImV0aGlvcGljLWFiZWdlZGUiLAorICAgICAgICAi
ZXRoaW9waWMtYWJlZ2VkZS1nZXoiLAorICAgICAgICAiaGFuZ3VsLWNvbnNvbmFudCIsCisgICAg
ICAgICJoYW5ndWwiLAorICAgICAgICAibG93ZXItbm9yd2VnaWFuIiwKKyAgICAgICAgIm9yb21v
IiwKKyAgICAgICAgImV0aGlvcGljLWhhbGVoYW1lLW9tLWV0IiwKKyAgICAgICAgInNpZGFtYSIs
CisgICAgICAgICJldGhpb3BpYy1oYWxlaGFtZS1zaWQtZXQiLAorICAgICAgICAic29tYWxpIiwK
KyAgICAgICAgImV0aGlvcGljLWhhbGVoYW1lLXNvLWV0IiwKKyAgICAgICAgInRpZ3JlIiwKKyAg
ICAgICAgImV0aGlvcGljLWhhbGVoYW1lLXRpZyIsCisgICAgICAgICJ0aWdyaW55YS1lciIsCisg
ICAgICAgICJldGhpb3BpYy1oYWxlaGFtZS10aS1lciIsCisgICAgICAgICJ0aWdyaW55YS1lci1h
YmVnZWRlIiwKKyAgICAgICAgImV0aGlvcGljLWFiZWdlZGUtdGktZXIiLAorICAgICAgICAidGln
cmlueWEtZXQiLAorICAgICAgICAiZXRoaW9waWMtaGFsZWhhbWUtdGktZXQiLAorICAgICAgICAi
dGlncmlueWEtZXQtYWJlZ2VkZSIsCisgICAgICAgICJldGhpb3BpYy1hYmVnZWRlLXRpLWV0IiwK
KyAgICAgICAgInVwcGVyLWdyZWVrIiwKKyAgICAgICAgInVwcGVyLW5vcndlZ2lhbiIsCisgICAg
ICAgICJhc3Rlcmlza3MiLAorICAgICAgICAiZm9vdG5vdGVzIiwKKyAgICAgICAgImhlYnJldyIs
CisgICAgICAgICJhcm1lbmlhbiIsCisgICAgICAgICJsb3dlci1hcm1lbmlhbiIsCisgICAgICAg
ICJ1cHBlci1hcm1lbmlhbiIsCisgICAgICAgICJnZW9yZ2lhbiIsCisgICAgICAgICJjamstaWRl
b2dyYXBoaWMiLAorICAgICAgICAiaGlyYWdhbmEiLAorICAgICAgICAia2F0YWthbmEiLAorICAg
ICAgICAiaGlyYWdhbmEtaXJvaGEiLAorICAgICAgICAia2F0YWthbmEtaXJvaGEiCisgICAgXSwK
KyAgICAiLXdlYmtpdC10ZXh0LWNvbWJpbmUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAg
Imhvcml6b250YWwiCisgICAgXSwKKyAgICAib3V0bGluZSI6IFsKKyAgICAgICAgIm5vbmUiLAor
ICAgICAgICAiaGlkZGVuIiwKKyAgICAgICAgImluc2V0IiwKKyAgICAgICAgImdyb292ZSIsCisg
ICAgICAgICJyaWRnZSIsCisgICAgICAgICJvdXRzZXQiLAorICAgICAgICAiZG90dGVkIiwKKyAg
ICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiCisgICAg
XSwKKyAgICAiZm9udCI6IFsKKyAgICAgICAgImNhcHRpb24iLAorICAgICAgICAiaWNvbiIsCisg
ICAgICAgICJtZW51IiwKKyAgICAgICAgIm1lc3NhZ2UtYm94IiwKKyAgICAgICAgInNtYWxsLWNh
cHRpb24iLAorICAgICAgICAiLXdlYmtpdC1taW5pLWNvbnRyb2wiLAorICAgICAgICAiLXdlYmtp
dC1zbWFsbC1jb250cm9sIiwKKyAgICAgICAgIi13ZWJraXQtY29udHJvbCIsCisgICAgICAgICJz
dGF0dXMtYmFyIiwKKyAgICAgICAgIml0YWxpYyIsCisgICAgICAgICJvYmxpcXVlIiwKKyAgICAg
ICAgInNtYWxsLWNhcHMiLAorICAgICAgICAibm9ybWFsIiwKKyAgICAgICAgImJvbGQiLAorICAg
ICAgICAiYm9sZGVyIiwKKyAgICAgICAgImxpZ2h0ZXIiLAorICAgICAgICAiMTAwIiwKKyAgICAg
ICAgIjIwMCIsCisgICAgICAgICIzMDAiLAorICAgICAgICAiNDAwIiwKKyAgICAgICAgIjUwMCIs
CisgICAgICAgICI2MDAiLAorICAgICAgICAiNzAwIiwKKyAgICAgICAgIjgwMCIsCisgICAgICAg
ICI5MDAiLAorICAgICAgICAieHgtc21hbGwiLAorICAgICAgICAieC1zbWFsbCIsCisgICAgICAg
ICJzbWFsbCIsCisgICAgICAgICJtZWRpdW0iLAorICAgICAgICAibGFyZ2UiLAorICAgICAgICAi
eC1sYXJnZSIsCisgICAgICAgICJ4eC1sYXJnZSIsCisgICAgICAgICItd2Via2l0LXh4eC1sYXJn
ZSIsCisgICAgICAgICJzbWFsbGVyIiwKKyAgICAgICAgImxhcmdlciIsCisgICAgICAgICJzZXJp
ZiIsCisgICAgICAgICJzYW5zLXNlcmlmIiwKKyAgICAgICAgImN1cnNpdmUiLAorICAgICAgICAi
ZmFudGFzeSIsCisgICAgICAgICJtb25vc3BhY2UiLAorICAgICAgICAiLXdlYmtpdC1ib2R5Igor
ICAgIF0sCisgICAgImRvbWluYW50LWJhc2VsaW5lIjogWworICAgICAgICAibWlkZGxlIiwKKyAg
ICAgICAgImF1dG8iLAorICAgICAgICAiY2VudHJhbCIsCisgICAgICAgICJ0ZXh0LWJlZm9yZS1l
ZGdlIiwKKyAgICAgICAgInRleHQtYWZ0ZXItZWRnZSIsCisgICAgICAgICJpZGVvZ3JhcGhpYyIs
CisgICAgICAgICJhbHBoYWJldGljIiwKKyAgICAgICAgImhhbmdpbmciLAorICAgICAgICAibWF0
aGVtYXRpY2FsIiwKKyAgICAgICAgInVzZS1zY3JpcHQiLAorICAgICAgICAibm8tY2hhbmdlIiwK
KyAgICAgICAgInJlc2V0LXNpemUiCisgICAgXSwKKyAgICAiZGlzcGxheSI6IFsKKyAgICAgICAg
Im5vbmUiLAorICAgICAgICAiaW5saW5lIiwKKyAgICAgICAgImJsb2NrIiwKKyAgICAgICAgImxp
c3QtaXRlbSIsCisgICAgICAgICJydW4taW4iLAorICAgICAgICAiY29tcGFjdCIsCisgICAgICAg
ICJpbmxpbmUtYmxvY2siLAorICAgICAgICAidGFibGUiLAorICAgICAgICAiaW5saW5lLXRhYmxl
IiwKKyAgICAgICAgInRhYmxlLXJvdy1ncm91cCIsCisgICAgICAgICJ0YWJsZS1oZWFkZXItZ3Jv
dXAiLAorICAgICAgICAidGFibGUtZm9vdGVyLWdyb3VwIiwKKyAgICAgICAgInRhYmxlLXJvdyIs
CisgICAgICAgICJ0YWJsZS1jb2x1bW4tZ3JvdXAiLAorICAgICAgICAidGFibGUtY29sdW1uIiwK
KyAgICAgICAgInRhYmxlLWNlbGwiLAorICAgICAgICAidGFibGUtY2FwdGlvbiIsCisgICAgICAg
ICItd2Via2l0LWJveCIsCisgICAgICAgICItd2Via2l0LWlubGluZS1ib3giLAorICAgICAgICAi
LXdhcC1tYXJxdWVlIgorICAgIF0sCisgICAgIi13ZWJraXQtdGV4dC1lbXBoYXNpcy1wb3NpdGlv
biI6IFsKKyAgICAgICAgIm92ZXIiLAorICAgICAgICAidW5kZXIiCisgICAgXSwKKyAgICAiaW1h
Z2UtcmVuZGVyaW5nIjogWworICAgICAgICAiYXV0byIsCisgICAgICAgICJvcHRpbWl6ZXNwZWVk
IiwKKyAgICAgICAgIm9wdGltaXplcXVhbGl0eSIKKyAgICBdLAorICAgICJhbGlnbm1lbnQtYmFz
ZWxpbmUiOiBbCisgICAgICAgICJiYXNlbGluZSIsCisgICAgICAgICJtaWRkbGUiLAorICAgICAg
ICAiYXV0byIsCisgICAgICAgICJiZWZvcmUtZWRnZSIsCisgICAgICAgICJhZnRlci1lZGdlIiwK
KyAgICAgICAgImNlbnRyYWwiLAorICAgICAgICAidGV4dC1iZWZvcmUtZWRnZSIsCisgICAgICAg
ICJ0ZXh0LWFmdGVyLWVkZ2UiLAorICAgICAgICAiaWRlb2dyYXBoaWMiLAorICAgICAgICAiYWxw
aGFiZXRpYyIsCisgICAgICAgICJoYW5naW5nIiwKKyAgICAgICAgIm1hdGhlbWF0aWNhbCIKKyAg
ICBdLAorICAgICJvdXRsaW5lLXdpZHRoIjogWworICAgICAgICAibWVkaXVtIiwKKyAgICAgICAg
InRoaWNrIiwKKyAgICAgICAgInRoaW4iCisgICAgXSwKKyAgICAidGV4dC1saW5lLXRocm91Z2gt
d2lkdGgiOiBbCisgICAgICAgICJub3JtYWwiLAorICAgICAgICAibWVkaXVtIiwKKyAgICAgICAg
ImF1dG8iLAorICAgICAgICAidGhpY2siLAorICAgICAgICAidGhpbiIKKyAgICBdLAorICAgICJi
b3gtYWxpZ24iOiBbCisgICAgICAgICJiYXNlbGluZSIsCisgICAgICAgICJjZW50ZXIiLAorICAg
ICAgICAic3RyZXRjaCIsCisgICAgICAgICJzdGFydCIsCisgICAgICAgICJlbmQiCisgICAgXSwK
KyAgICAiYm9yZGVyLXJpZ2h0LXdpZHRoIjogWworICAgICAgICAibWVkaXVtIiwKKyAgICAgICAg
InRoaWNrIiwKKyAgICAgICAgInRoaW4iCisgICAgXSwKKyAgICAiYm9yZGVyLXRvcC1zdHlsZSI6
IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiaGlkZGVuIiwKKyAgICAgICAgImluc2V0IiwK
KyAgICAgICAgImdyb292ZSIsCisgICAgICAgICJyaWRnZSIsCisgICAgICAgICJvdXRzZXQiLAor
ICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisg
ICAgICAgICJkb3VibGUiCisgICAgXSwKKyAgICAibGluZS1oZWlnaHQiOiBbCisgICAgICAgICJu
b3JtYWwiCisgICAgXSwKKyAgICAidGV4dC1vdmVyZmxvdyI6IFsKKyAgICAgICAgImNsaXAiLAor
ICAgICAgICAiZWxsaXBzaXMiCisgICAgXSwKKyAgICAiYm94LWRpcmVjdGlvbiI6IFsKKyAgICAg
ICAgIm5vcm1hbCIsCisgICAgICAgICJyZXZlcnNlIgorICAgIF0sCisgICAgIm1hcmdpbi1hZnRl
ci1jb2xsYXBzZSI6IFsKKyAgICAgICAgImNvbGxhcHNlIiwKKyAgICAgICAgInNlcGFyYXRlIiwK
KyAgICAgICAgImRpc2NhcmQiCisgICAgXSwKKyAgICAicGFnZS1icmVhay1iZWZvcmUiOiBbCisg
ICAgICAgICJsZWZ0IiwKKyAgICAgICAgInJpZ2h0IiwKKyAgICAgICAgImF1dG8iLAorICAgICAg
ICAiYWx3YXlzIiwKKyAgICAgICAgImF2b2lkIgorICAgIF0sCisgICAgIi13ZWJraXQtaHlwaGVu
cyI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiYXV0byIsCisgICAgICAgICJtYW51YWwi
CisgICAgXSwKKyAgICAiYm9yZGVyLWltYWdlIjogWworICAgICAgICAicmVwZWF0IiwKKyAgICAg
ICAgInN0cmV0Y2giCisgICAgXSwKKyAgICAidGV4dC1kZWNvcmF0aW9uIjogWworICAgICAgICAi
YmxpbmsiLAorICAgICAgICAibGluZS10aHJvdWdoIiwKKyAgICAgICAgIm92ZXJsaW5lIiwKKyAg
ICAgICAgInVuZGVybGluZSIKKyAgICBdLAorICAgICJwb3NpdGlvbiI6IFsKKyAgICAgICAgImFi
c29sdXRlIiwKKyAgICAgICAgImZpeGVkIiwKKyAgICAgICAgInJlbGF0aXZlIiwKKyAgICAgICAg
InN0YXRpYyIKKyAgICBdLAorICAgICJmb250LWZhbWlseSI6IFsKKyAgICAgICAgInNlcmlmIiwK
KyAgICAgICAgInNhbnMtc2VyaWYiLAorICAgICAgICAiY3Vyc2l2ZSIsCisgICAgICAgICJmYW50
YXN5IiwKKyAgICAgICAgIm1vbm9zcGFjZSIsCisgICAgICAgICItd2Via2l0LWJvZHkiCisgICAg
XSwKKyAgICAidGV4dC1vdmVyZmxvdy1tb2RlIjogWworICAgICAgICAiY2xpcCIsCisgICAgICAg
ICJlbGxpcHNpcyIKKyAgICBdLAorICAgICJib3JkZXItYm90dG9tLXN0eWxlIjogWworICAgICAg
ICAibm9uZSIsCisgICAgICAgICJoaWRkZW4iLAorICAgICAgICAiaW5zZXQiLAorICAgICAgICAi
Z3Jvb3ZlIiwKKyAgICAgICAgInJpZGdlIiwKKyAgICAgICAgIm91dHNldCIsCisgICAgICAgICJk
b3R0ZWQiLAorICAgICAgICAiZGFzaGVkIiwKKyAgICAgICAgInNvbGlkIiwKKyAgICAgICAgImRv
dWJsZSIKKyAgICBdLAorICAgICJ1bmljb2RlLWJpZGkiOiBbCisgICAgICAgICJub3JtYWwiLAor
ICAgICAgICAiYmlkaS1vdmVycmlkZSIsCisgICAgICAgICJlbWJlZCIKKyAgICBdLAorICAgICJj
bGlwLXJ1bGUiOiBbCisgICAgICAgICJub256ZXJvIiwKKyAgICAgICAgImV2ZW5vZGQiCisgICAg
XSwKKyAgICAibWFyZ2luLWxlZnQiOiBbCisgICAgICAgICJhdXRvIgorICAgIF0sCisgICAgIm1h
cmdpbi10b3AiOiBbCisgICAgICAgICJhdXRvIgorICAgIF0sCisgICAgInpvb20iOiBbCisgICAg
ICAgICJkb2N1bWVudCIsCisgICAgICAgICJyZXNldCIKKyAgICBdLAorICAgICJ0ZXh0LW92ZXJs
aW5lLXN0eWxlIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJkb3R0ZWQiLAorICAgICAg
ICAiZGFzaGVkIiwKKyAgICAgICAgInNvbGlkIiwKKyAgICAgICAgImRvdWJsZSIsCisgICAgICAg
ICJkb3QtZGFzaCIsCisgICAgICAgICJkb3QtZG90LWRhc2giLAorICAgICAgICAid2F2ZSIKKyAg
ICBdLAorICAgICJtYXgtd2lkdGgiOiBbCisgICAgICAgICJub25lIgorICAgIF0sCisgICAgImVt
cHR5LWNlbGxzIjogWworICAgICAgICAiaGlkZSIsCisgICAgICAgICJzaG93IgorICAgIF0sCisg
ICAgInBvaW50ZXItZXZlbnRzIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJhbGwiLAor
ICAgICAgICAiYXV0byIsCisgICAgICAgICJ2aXNpYmxlIiwKKyAgICAgICAgInZpc2libGVwYWlu
dGVkIiwKKyAgICAgICAgInZpc2libGVmaWxsIiwKKyAgICAgICAgInZpc2libGVzdHJva2UiLAor
ICAgICAgICAicGFpbnRlZCIsCisgICAgICAgICJmaWxsIiwKKyAgICAgICAgInN0cm9rZSIKKyAg
ICBdLAorICAgICJsZXR0ZXItc3BhY2luZyI6IFsKKyAgICAgICAgIm5vcm1hbCIKKyAgICBdLAor
ICAgICJiYWNrZ3JvdW5kLWNsaXAiOiBbCisgICAgICAgICJib3JkZXItYm94IiwKKyAgICAgICAg
ImNvbnRlbnQtYm94IiwKKyAgICAgICAgInBhZGRpbmctYm94IgorICAgIF0sCisgICAgIi13ZWJr
aXQtZm9udC1zbW9vdGhpbmciOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImF1dG8iLAor
ICAgICAgICAiYW50aWFsaWFzZWQiLAorICAgICAgICAic3VicGl4ZWwtYW50aWFsaWFzZWQiCisg
ICAgXSwKKyAgICAiYm9yZGVyIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJoaWRkZW4i
LAorICAgICAgICAiaW5zZXQiLAorICAgICAgICAiZ3Jvb3ZlIiwKKyAgICAgICAgInJpZGdlIiwK
KyAgICAgICAgIm91dHNldCIsCisgICAgICAgICJkb3R0ZWQiLAorICAgICAgICAiZGFzaGVkIiwK
KyAgICAgICAgInNvbGlkIiwKKyAgICAgICAgImRvdWJsZSIKKyAgICBdLAorICAgICJmb250LXNp
emUiOiBbCisgICAgICAgICJ4eC1zbWFsbCIsCisgICAgICAgICJ4LXNtYWxsIiwKKyAgICAgICAg
InNtYWxsIiwKKyAgICAgICAgIm1lZGl1bSIsCisgICAgICAgICJsYXJnZSIsCisgICAgICAgICJ4
LWxhcmdlIiwKKyAgICAgICAgInh4LWxhcmdlIiwKKyAgICAgICAgIi13ZWJraXQteHh4LWxhcmdl
IiwKKyAgICAgICAgInNtYWxsZXIiLAorICAgICAgICAibGFyZ2VyIgorICAgIF0sCisgICAgImZv
bnQtdmFyaWFudCI6IFsKKyAgICAgICAgInNtYWxsLWNhcHMiLAorICAgICAgICAibm9ybWFsIgor
ICAgIF0sCisgICAgInZlcnRpY2FsLWFsaWduIjogWworICAgICAgICAiYmFzZWxpbmUiLAorICAg
ICAgICAibWlkZGxlIiwKKyAgICAgICAgInN1YiIsCisgICAgICAgICJzdXBlciIsCisgICAgICAg
ICJ0ZXh0LXRvcCIsCisgICAgICAgICJ0ZXh0LWJvdHRvbSIsCisgICAgICAgICJ0b3AiLAorICAg
ICAgICAiYm90dG9tIiwKKyAgICAgICAgIi13ZWJraXQtYmFzZWxpbmUtbWlkZGxlIgorICAgIF0s
CisgICAgIm1hcnF1ZWUtc3R5bGUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgInNjcm9s
bCIsCisgICAgICAgICJzbGlkZSIsCisgICAgICAgICJhbHRlcm5hdGUiCisgICAgXSwKKyAgICAi
d2hpdGUtc3BhY2UiOiBbCisgICAgICAgICJub3JtYWwiLAorICAgICAgICAibm93cmFwIiwKKyAg
ICAgICAgInByZSIsCisgICAgICAgICJwcmUtbGluZSIsCisgICAgICAgICJwcmUtd3JhcCIKKyAg
ICBdLAorICAgICJ0ZXh0LXVuZGVybGluZS13aWR0aCI6IFsKKyAgICAgICAgIm5vcm1hbCIsCisg
ICAgICAgICJtZWRpdW0iLAorICAgICAgICAiYXV0byIsCisgICAgICAgICJ0aGljayIsCisgICAg
ICAgICJ0aGluIgorICAgIF0sCisgICAgImJveC1saW5lcyI6IFsKKyAgICAgICAgInNpbmdsZSIs
CisgICAgICAgICJtdWx0aXBsZSIKKyAgICBdLAorICAgICJwYWdlLWJyZWFrLWFmdGVyIjogWwor
ICAgICAgICAibGVmdCIsCisgICAgICAgICJyaWdodCIsCisgICAgICAgICJhdXRvIiwKKyAgICAg
ICAgImFsd2F5cyIsCisgICAgICAgICJhdm9pZCIKKyAgICBdLAorICAgICJjbGlwLXBhdGgiOiBb
CisgICAgICAgICJub25lIgorICAgIF0sCisgICAgIm1hcmdpbiI6IFsKKyAgICAgICAgImF1dG8i
CisgICAgXSwKKyAgICAibWFycXVlZS1yZXBldGl0aW9uIjogWworICAgICAgICAiaW5maW5pdGUi
CisgICAgXSwKKyAgICAibWFyZ2luLXJpZ2h0IjogWworICAgICAgICAiYXV0byIKKyAgICBdLAor
ICAgICItd2Via2l0LXRleHQtZW1waGFzaXMtc3R5bGUiOiBbCisgICAgICAgICJjaXJjbGUiLAor
ICAgICAgICAiZmlsbGVkIiwKKyAgICAgICAgIm9wZW4iLAorICAgICAgICAiZG90IiwKKyAgICAg
ICAgImRvdWJsZS1jaXJjbGUiLAorICAgICAgICAidHJpYW5nbGUiLAorICAgICAgICAic2VzYW1l
IgorICAgIF0KK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvQ29uc29sZVZpZXcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Nv
bnNvbGVWaWV3LmpzCmluZGV4IGM5ODU1MmQuLmYyOWFiNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29uc29sZVZpZXcuanMKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db25zb2xlVmlldy5qcwpAQCAtNDcsNyArNDcsNyBA
QCBXZWJJbnNwZWN0b3IuQ29uc29sZVZpZXcgPSBmdW5jdGlvbihkcmF3ZXIpCiAgICAgdGhpcy5w
cm9tcHRFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNvbGUtcHJvbXB0Iik7
CiAgICAgdGhpcy5wcm9tcHRFbGVtZW50LmNsYXNzTmFtZSA9ICJzb3VyY2UtY29kZSI7CiAgICAg
dGhpcy5wcm9tcHRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLCB0aGlzLl9wcm9t
cHRLZXlEb3duLmJpbmQodGhpcyksIHRydWUpOwotICAgIHRoaXMucHJvbXB0ID0gbmV3IFdlYklu
c3BlY3Rvci5UZXh0UHJvbXB0KHRoaXMucHJvbXB0RWxlbWVudCwgdGhpcy5jb21wbGV0aW9ucy5i
aW5kKHRoaXMpLCBFeHByZXNzaW9uU3RvcENoYXJhY3RlcnMgKyAiLiIpOworICAgIHRoaXMucHJv
bXB0ID0gbmV3IFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0KHRoaXMucHJvbXB0RWxlbWVudCwgdGhp
cy5jb21wbGV0aW9ucy5iaW5kKHRoaXMpLCBFeHByZXNzaW9uU3RvcENoYXJhY3RlcnMgKyAiLiIs
IHRydWUpOwogICAgIHRoaXMucHJvbXB0Lmhpc3RvcnkgPSBXZWJJbnNwZWN0b3Iuc2V0dGluZ3Mu
Y29uc29sZUhpc3Rvcnk7CiAKICAgICB0aGlzLnRvcEdyb3VwID0gbmV3IFdlYkluc3BlY3Rvci5D
b25zb2xlR3JvdXAobnVsbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL0RhdGFiYXNlUXVlcnlWaWV3LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9EYXRhYmFzZVF1ZXJ5Vmlldy5qcwppbmRleCAxMTEyNDZmLi45MmNkZjQyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RhdGFiYXNlUXVl
cnlWaWV3LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGF0YWJh
c2VRdWVyeVZpZXcuanMKQEAgLTQyLDcgKzQyLDcgQEAgV2ViSW5zcGVjdG9yLkRhdGFiYXNlUXVl
cnlWaWV3ID0gZnVuY3Rpb24oZGF0YWJhc2UpCiAgICAgdGhpcy5wcm9tcHRFbGVtZW50LmFkZEV2
ZW50TGlzdGVuZXIoImtleWRvd24iLCB0aGlzLl9wcm9tcHRLZXlEb3duLmJpbmQodGhpcyksIHRy
dWUpOwogICAgIHRoaXMuZWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLnByb21wdEVsZW1lbnQpOwog
Ci0gICAgdGhpcy5wcm9tcHQgPSBuZXcgV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQodGhpcy5wcm9t
cHRFbGVtZW50LCB0aGlzLmNvbXBsZXRpb25zLmJpbmQodGhpcyksICIgIik7CisgICAgdGhpcy5w
cm9tcHQgPSBuZXcgV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQodGhpcy5wcm9tcHRFbGVtZW50LCB0
aGlzLmNvbXBsZXRpb25zLmJpbmQodGhpcyksICIgIiwgdHJ1ZSk7CiB9CiAKIFdlYkluc3BlY3Rv
ci5EYXRhYmFzZVF1ZXJ5Vmlldy5wcm90b3R5cGUgPSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxlc1NpZGViYXJQYW5lLmpzIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcwppbmRleCBkNjQ2
ODI5Li4yZjdkZjc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1N0eWxlc1NpZGViYXJQYW5lLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvU3R5bGVzU2lkZWJhclBhbmUuanMKQEAgLTEzNzksNiArMTM3OSw4IEBAIFdlYklu
c3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICB9
CiAKICAgICAgICAgdGhpcy5saXN0SXRlbUVsZW1lbnQucmVtb3ZlQ2hpbGRyZW4oKTsKKyAgICAg
ICAgbmFtZUVsZW1lbnQubm9ybWFsaXplKCk7CisgICAgICAgIHZhbHVlRWxlbWVudC5ub3JtYWxp
emUoKTsKIAogICAgICAgICBpZiAoIXRoaXMudHJlZU91dGxpbmUpCiAgICAgICAgICAgICByZXR1
cm47CkBAIC0xNTI5LDE2ICsxNTMxLDE1IEBAIFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJl
ZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICB2YXIgY29udGV4dCA9IHsKICAgICAgICAg
ICAgIGV4cGFuZGVkOiB0aGlzLmV4cGFuZGVkLAogICAgICAgICAgICAgaGFzQ2hpbGRyZW46IHRo
aXMuaGFzQ2hpbGRyZW4sCi0gICAgICAgICAgICBrZXlEb3duTGlzdGVuZXI6IGlzRWRpdGluZ05h
bWUgPyB0aGlzLmVkaXRpbmdOYW1lS2V5RG93bi5iaW5kKHRoaXMpIDogdGhpcy5lZGl0aW5nVmFs
dWVLZXlEb3duLmJpbmQodGhpcyksCi0gICAgICAgICAgICBrZXlQcmVzc0xpc3RlbmVyOiBpc0Vk
aXRpbmdOYW1lID8gdGhpcy5lZGl0aW5nTmFtZUtleVByZXNzLmJpbmQodGhpcykgOiB0aGlzLmVk
aXRpbmdWYWx1ZUtleVByZXNzLmJpbmQodGhpcyksCisgICAgICAgICAgICBrZXlEb3duTGlzdGVu
ZXI6IGlzRWRpdGluZ05hbWUgPyBudWxsIDogdGhpcy5lZGl0aW5nVmFsdWVLZXlEb3duLmJpbmQo
dGhpcyksCiAgICAgICAgICAgICBpc0VkaXRpbmdOYW1lOiBpc0VkaXRpbmdOYW1lLAogICAgICAg
ICB9OwogCiAgICAgICAgIC8vIExpZSBhYm91dCBvdXIgY2hpbGRyZW4gdG8gcHJldmVudCBleHBh
bmRpbmcgb24gZG91YmxlIGNsaWNrIGFuZCB0byBjb2xsYXBzZSBzaG9ydGhhbmRzLgogICAgICAg
ICB0aGlzLmhhc0NoaWxkcmVuID0gZmFsc2U7CiAKLSAgICAgICAgc2VsZWN0RWxlbWVudC5hZGRF
dmVudExpc3RlbmVyKCJrZXlkb3duIiwgY29udGV4dC5rZXlEb3duTGlzdGVuZXIsIGZhbHNlKTsK
LSAgICAgICAgc2VsZWN0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIsIGNvbnRl
eHQua2V5UHJlc3NMaXN0ZW5lciwgZmFsc2UpOworICAgICAgICBpZiAoIWlzRWRpdGluZ05hbWUp
CisgICAgICAgICAgICBzZWxlY3RFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLCBj
b250ZXh0LmtleURvd25MaXN0ZW5lciwgZmFsc2UpOwogICAgICAgICBpZiAoc2VsZWN0RWxlbWVu
dC5wYXJlbnRFbGVtZW50KQogICAgICAgICAgICAgc2VsZWN0RWxlbWVudC5wYXJlbnRFbGVtZW50
LmFkZFN0eWxlQ2xhc3MoImNoaWxkLWVkaXRpbmciKTsKICAgICAgICAgc2VsZWN0RWxlbWVudC50
ZXh0Q29udGVudCA9IHNlbGVjdEVsZW1lbnQudGV4dENvbnRlbnQ7IC8vIHJlbW92ZSBjb2xvciBz
d2F0Y2ggYW5kIHRoZSBsaWtlCkBAIC0xNjEzLDc2ICsxNjE0LDY4IEBAIFdlYkluc3BlY3Rvci5T
dHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICAgICAgY3VzdG9t
RmluaXNoSGFuZGxlcjogbmFtZVZhbHVlRmluaXNoSGFuZGxlci5iaW5kKHRoaXMsIGNvbnRleHQs
IGlzRWRpdGluZ05hbWUpLAogICAgICAgICAgICAgcGFzdGVIYW5kbGVyOiBpc0VkaXRpbmdOYW1l
ID8gcGFzdGVIYW5kbGVyLmJpbmQodGhpcywgY29udGV4dCkgOiBudWxsCiAgICAgICAgIH0pOwot
ICAgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuc2V0QmFzZUFuZEV4dGVudChzZWxlY3RFbGVt
ZW50LCAwLCBzZWxlY3RFbGVtZW50LCAxKTsKLSAgICB9LAotCi0gICAgZWRpdGluZ05hbWVLZXlQ
cmVzczogZnVuY3Rpb24oZXZlbnQpCi0gICAgewotICAgICAgICAvLyBDb21wbGV0ZSBwcm9wZXJ0
eSBuYW1lcy4KLSAgICAgICAgdmFyIGNoYXJhY3RlciA9IGV2ZW50LmRhdGEudG9Mb3dlckNhc2Uo
KTsKLSAgICAgICAgaWYgKGNoYXJhY3RlciAmJiAvW2Etei1dLy50ZXN0KGNoYXJhY3RlcikpIHsK
LSAgICAgICAgICAgIHZhciBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7Ci0gICAg
ICAgICAgICB2YXIgcHJlZml4ID0gc2VsZWN0aW9uLmFuY2hvck5vZGUudGV4dENvbnRlbnQuc3Vi
c3RyaW5nKDAsIHNlbGVjdGlvbi5hbmNob3JPZmZzZXQpOwotICAgICAgICAgICAgdmFyIHByb3Bl
cnR5ID0gV2ViSW5zcGVjdG9yLmNzc05hbWVDb21wbGV0aW9ucy5maXJzdFN0YXJ0c1dpdGgocHJl
Zml4ICsgY2hhcmFjdGVyKTsKLQotICAgICAgICAgICAgaWYgKCFzZWxlY3Rpb24uaXNDb2xsYXBz
ZWQpCi0gICAgICAgICAgICAgICAgc2VsZWN0aW9uLmRlbGV0ZUZyb21Eb2N1bWVudCgpOwogCi0g
ICAgICAgICAgICB0aGlzLnJlc3RvcmVOYW1lRWxlbWVudCgpOworICAgICAgICBmdW5jdGlvbiBo
YW5kbGVOYW1lT3JWYWx1ZVVwRG93bihldmVudCwgdGV4dFByb21wdCkKKyAgICAgICAgeworICAg
ICAgICAgICAgdmFyIHJldmVyc2UgPSBldmVudC5rZXlJZGVudGlmaWVyID09PSAiVXAiOworICAg
ICAgICAgICAgaWYgKHRleHRQcm9tcHQuYXV0b0NvbXBsZXRlRWxlbWVudCkKKyAgICAgICAgICAg
ICAgICB0ZXh0UHJvbXB0LmNvbXBsZXRlKGZhbHNlLCByZXZlcnNlKTsgLy8gQWNjZXB0IHRoZSBj
dXJyZW50IHN1Z2dlc3Rpb24sIGlmIGFueS4KKyAgICAgICAgICAgIHRleHRQcm9tcHQuY29tcGxl
dGUoZmFsc2UsIHJldmVyc2UpOyAvLyBBY3R1YWxseSBpbmNyZW1lbnQvZGVjcmVtZW50IHRoZSBz
dWdnZXN0aW9uLgorICAgICAgICAgICAgZXZlbnQuaGFuZGxlZCA9IHRydWU7CisgICAgICAgIH0K
IAotICAgICAgICAgICAgaWYgKHByb3BlcnR5KSB7Ci0gICAgICAgICAgICAgICAgaWYgKHByb3Bl
cnR5ICE9PSB0aGlzLm5hbWVFbGVtZW50LnRleHRDb250ZW50KQotICAgICAgICAgICAgICAgICAg
ICB0aGlzLm5hbWVFbGVtZW50LnRleHRDb250ZW50ID0gcHJvcGVydHk7Ci0gICAgICAgICAgICAg
ICAgdGhpcy5uYW1lRWxlbWVudC5maXJzdENoaWxkLnNlbGVjdChwcmVmaXgubGVuZ3RoICsgMSk7
Ci0gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKLSAgICAgICAgICAgIH0K
KyAgICAgICAgZnVuY3Rpb24gaGFuZGxlTmFtZU9yVmFsdWVUYWIoZXZlbnQsIHRleHRQcm9tcHQp
CisgICAgICAgIHsKKyAgICAgICAgICAgIHRleHRQcm9tcHQuYWNjZXB0QXV0b0NvbXBsZXRlKCk7
CiAgICAgICAgIH0KLSAgICB9LAogCi0gICAgZWRpdGluZ1ZhbHVlS2V5UHJlc3M6IGZ1bmN0aW9u
KGV2ZW50KQotICAgIHsKLSAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGNvbXBsZXRlIHBy
b3BlcnR5IHZhbHVlcy4KKyAgICAgICAgdmFyIGN1c3RvbUtleUhhbmRsZXJzID0geworICAgICAg
ICAgICAgdXBLZXlIYW5kbGVyOiBoYW5kbGVOYW1lT3JWYWx1ZVVwRG93biwKKyAgICAgICAgICAg
IGRvd25LZXlIYW5kbGVyOiBoYW5kbGVOYW1lT3JWYWx1ZVVwRG93biwKKyAgICAgICAgICAgIHRh
YktleUhhbmRsZXI6IGhhbmRsZU5hbWVPclZhbHVlVGFiCisgICAgICAgIH07CisKKyAgICAgICAg
Y29uc3QgZGVsaW1pdGVycyA9ICIgXHRcblwiJzo7LC8oKSI7CisgICAgICAgIHRoaXMuX3Byb21w
dCA9IG5ldyBXZWJJbnNwZWN0b3IuVGV4dFByb21wdChzZWxlY3RFbGVtZW50LCAoaXNFZGl0aW5n
TmFtZSA/IHRoaXMuX3Byb3BlcnR5TmFtZUNvbXBsZXRpb25zIDogdGhpcy5fcHJvcGVydHlWYWx1
ZUNvbXBsZXRpb25zKS5iaW5kKHRoaXMpLCBkZWxpbWl0ZXJzLCBmYWxzZSwgY3VzdG9tS2V5SGFu
ZGxlcnMpOworICAgICAgICBpZiAoIWlzRWRpdGluZ05hbWUpCisgICAgICAgICAgICB0aGlzLl92
YWx1ZUNvbXBsZXRpb25zID0gV2ViSW5zcGVjdG9yLkNTU0tleXdvcmRDb21wbGV0aW9ucy5mb3JQ
cm9wZXJ0eSh0aGlzLm5hbWUpOworICAgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuc2V0QmFz
ZUFuZEV4dGVudChzZWxlY3RFbGVtZW50LCAwLCBzZWxlY3RFbGVtZW50LCAxKTsKICAgICB9LAog
Ci0gICAgZWRpdGluZ05hbWVLZXlEb3duOiBmdW5jdGlvbihldmVudCkKKyAgICBfY29sbGVjdEFu
ZFN1Z2dlc3RQcm9wZXJ0eUNvbXBsZXRpb25zOiBmdW5jdGlvbihjc3NDb21wbGV0aW9ucywgd29y
ZFJhbmdlLCBiZXN0TWF0Y2hPbmx5LCBjb21wbGV0aW9uc1JlYWR5Q2FsbGJhY2spCiAgICAgewot
ICAgICAgICB2YXIgc2hvd05leHQ7Ci0gICAgICAgIGlmIChldmVudC5rZXlJZGVudGlmaWVyID09
PSAiVXAiKQotICAgICAgICAgICAgc2hvd05leHQgPSBmYWxzZTsKLSAgICAgICAgZWxzZSBpZiAo
ZXZlbnQua2V5SWRlbnRpZmllciA9PT0gIkRvd24iKQotICAgICAgICAgICAgc2hvd05leHQgPSB0
cnVlOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgdmFyIHNl
bGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKLSAgICAgICAgaWYgKCFzZWxlY3Rpb24u
cmFuZ2VDb3VudCkKKyAgICAgICAgdmFyIHByZWZpeCA9IHdvcmRSYW5nZS50b1N0cmluZygpLnRv
TG93ZXJDYXNlKCk7CisgICAgICAgIGlmICghcHJlZml4Lmxlbmd0aCkKICAgICAgICAgICAgIHJl
dHVybjsKIAotICAgICAgICB2YXIgc2VsZWN0aW9uUmFuZ2UgPSBzZWxlY3Rpb24uZ2V0UmFuZ2VB
dCgwKTsKLSAgICAgICAgaWYgKHNlbGVjdGlvblJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVy
ICE9PSB0aGlzLm5hbWVFbGVtZW50ICYmICFzZWxlY3Rpb25SYW5nZS5jb21tb25BbmNlc3RvckNv
bnRhaW5lci5pc0Rlc2NlbmRhbnQodGhpcy5uYW1lRWxlbWVudCkpCi0gICAgICAgICAgICByZXR1
cm47CisgICAgICAgIHZhciByZXN1bHRzOworICAgICAgICBpZiAoYmVzdE1hdGNoT25seSkgewor
ICAgICAgICAgICAgcmVzdWx0cyA9IFtdOworICAgICAgICAgICAgdmFyIGZpcnN0TWF0Y2ggPSBj
c3NDb21wbGV0aW9ucy5maXJzdFN0YXJ0c1dpdGgocHJlZml4KTsKKyAgICAgICAgICAgIGlmIChm
aXJzdE1hdGNoKQorICAgICAgICAgICAgICAgIHJlc3VsdHMucHVzaChmaXJzdE1hdGNoKTsKKyAg
ICAgICAgICAgIHJldHVybiBjb21wbGV0aW9uc1JlYWR5Q2FsbGJhY2socmVzdWx0cyk7CisgICAg
ICAgIH0KIAotICAgICAgICBjb25zdCBzdHlsZVZhbHVlRGVsaW1ldGVycyA9ICIgXHRcblwiJzo7
LC8oKSI7Ci0gICAgICAgIHZhciB3b3JkUmFuZ2UgPSBzZWxlY3Rpb25SYW5nZS5zdGFydENvbnRh
aW5lci5yYW5nZU9mV29yZChzZWxlY3Rpb25SYW5nZS5zdGFydE9mZnNldCwgc3R5bGVWYWx1ZURl
bGltZXRlcnMsIHRoaXMubmFtZUVsZW1lbnQpOwotICAgICAgICB2YXIgd29yZFN0cmluZyA9IHdv
cmRSYW5nZS50b1N0cmluZygpOwotICAgICAgICB2YXIgY3Vyc29yUG9zaXRpb24gPSBzZWxlY3Rp
b25SYW5nZS5zdGFydE9mZnNldCAhPSBzZWxlY3Rpb25SYW5nZS5lbmRPZmZzZXQgPyBzZWxlY3Rp
b25SYW5nZS5zdGFydE9mZnNldCA6IDA7Ci0gICAgICAgIHZhciBwcmVmaXggPSBzZWxlY3Rpb25S
YW5nZS5zdGFydENvbnRhaW5lci50ZXh0Q29udGVudC5zdWJzdHJpbmcoMCwgY3Vyc29yUG9zaXRp
b24pOwotICAgICAgICB2YXIgcHJvcGVydHk7CisgICAgICAgIHJlc3VsdHMgPSBjc3NDb21wbGV0
aW9ucy5zdGFydHNXaXRoKHByZWZpeCk7CisgICAgICAgIGlmIChyZXN1bHRzKQorICAgICAgICAg
ICAgY29tcGxldGlvbnNSZWFkeUNhbGxiYWNrKHJlc3VsdHMpOworICAgIH0sCiAKLSAgICAgICAg
aWYgKHNob3dOZXh0KQotICAgICAgICAgICAgcHJvcGVydHkgPSBXZWJJbnNwZWN0b3IuY3NzTmFt
ZUNvbXBsZXRpb25zLm5leHQod29yZFN0cmluZywgcHJlZml4KTsKLSAgICAgICAgZWxzZQotICAg
ICAgICAgICAgcHJvcGVydHkgPSBXZWJJbnNwZWN0b3IuY3NzTmFtZUNvbXBsZXRpb25zLnByZXZp
b3VzKHdvcmRTdHJpbmcsIHByZWZpeCk7CisgICAgX3Byb3BlcnR5TmFtZUNvbXBsZXRpb25zOiBm
dW5jdGlvbih3b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHksIGNvbXBsZXRpb25zUmVhZHlDYWxsYmFj
aykKKyAgICB7CisgICAgICAgIHRoaXMuX2NvbGxlY3RBbmRTdWdnZXN0UHJvcGVydHlDb21wbGV0
aW9ucyhXZWJJbnNwZWN0b3IuY3NzTmFtZUNvbXBsZXRpb25zLCB3b3JkUmFuZ2UsIGJlc3RNYXRj
aE9ubHksIGNvbXBsZXRpb25zUmVhZHlDYWxsYmFjayk7CisgICAgfSwKIAotICAgICAgICBpZiAo
cHJvcGVydHkpIHsKLSAgICAgICAgICAgIHRoaXMubmFtZUVsZW1lbnQudGV4dENvbnRlbnQgPSBw
cm9wZXJ0eTsKLSAgICAgICAgICAgIHRoaXMubmFtZUVsZW1lbnQuZmlyc3RDaGlsZC5zZWxlY3Qo
Y3Vyc29yUG9zaXRpb24pOwotICAgICAgICB9Ci0gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0
KCk7CisgICAgX3Byb3BlcnR5VmFsdWVDb21wbGV0aW9uczogZnVuY3Rpb24od29yZFJhbmdlLCBi
ZXN0TWF0Y2hPbmx5LCBjb21wbGV0aW9uc1JlYWR5Q2FsbGJhY2spCisgICAgeworICAgICAgICB0
aGlzLl9jb2xsZWN0QW5kU3VnZ2VzdFByb3BlcnR5Q29tcGxldGlvbnModGhpcy5fdmFsdWVDb21w
bGV0aW9ucywgd29yZFJhbmdlLCBiZXN0TWF0Y2hPbmx5LCBjb21wbGV0aW9uc1JlYWR5Q2FsbGJh
Y2spOwogICAgIH0sCiAKICAgICBlZGl0aW5nVmFsdWVLZXlEb3duOiBmdW5jdGlvbihldmVudCkK
ICAgICB7CisgICAgICAgIGlmIChldmVudC5oYW5kbGVkKQorICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICB2YXIgYXJyb3dLZXlQcmVzc2VkID0gKGV2ZW50LmtleUlkZW50aWZpZXIgPT09ICJV
cCIgfHwgZXZlbnQua2V5SWRlbnRpZmllciA9PT0gIkRvd24iKTsKICAgICAgICAgdmFyIHBhZ2VL
ZXlQcmVzc2VkID0gKGV2ZW50LmtleUlkZW50aWZpZXIgPT09ICJQYWdlVXAiIHx8IGV2ZW50Lmtl
eUlkZW50aWZpZXIgPT09ICJQYWdlRG93biIpOwogICAgICAgICBpZiAoIWFycm93S2V5UHJlc3Nl
ZCAmJiAhcGFnZUtleVByZXNzZWQpCkBAIC0xNzM5LDUwICsxNzMyLDU0IEBAIFdlYkluc3BlY3Rv
ci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICAgICAgfQog
CiAgICAgICAgICAgICByZXBsYWNlbWVudFN0cmluZyA9IHByZWZpeCArIG51bWJlciArIHN1ZmZp
eDsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIC8vIEZJWE1FOiB0aGlzIHNob3VsZCBj
eWNsZSB0aHJvdWdoIGtub3duIGtleXdvcmRzIGZvciB0aGUgY3VycmVudCBwcm9wZXJ0eSB2YWx1
ZS4KLSAgICAgICAgfQogCi0gICAgICAgIHZhciByZXBsYWNlbWVudFRleHROb2RlID0gZG9jdW1l
bnQuY3JlYXRlVGV4dE5vZGUocmVwbGFjZW1lbnRTdHJpbmcpOworICAgICAgICAgICAgdmFyIHJl
cGxhY2VtZW50VGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShyZXBsYWNlbWVudFN0
cmluZyk7CisKKyAgICAgICAgICAgIHdvcmRSYW5nZS5kZWxldGVDb250ZW50cygpOworICAgICAg
ICAgICAgd29yZFJhbmdlLmluc2VydE5vZGUocmVwbGFjZW1lbnRUZXh0Tm9kZSk7CiAKLSAgICAg
ICAgd29yZFJhbmdlLmRlbGV0ZUNvbnRlbnRzKCk7Ci0gICAgICAgIHdvcmRSYW5nZS5pbnNlcnRO
b2RlKHJlcGxhY2VtZW50VGV4dE5vZGUpOworICAgICAgICAgICAgdmFyIGZpbmFsU2VsZWN0aW9u
UmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpOworICAgICAgICAgICAgZmluYWxTZWxlY3Rp
b25SYW5nZS5zZXRTdGFydChyZXBsYWNlbWVudFRleHROb2RlLCAwKTsKKyAgICAgICAgICAgIGZp
bmFsU2VsZWN0aW9uUmFuZ2Uuc2V0RW5kKHJlcGxhY2VtZW50VGV4dE5vZGUsIHJlcGxhY2VtZW50
U3RyaW5nLmxlbmd0aCk7CiAKLSAgICAgICAgdmFyIGZpbmFsU2VsZWN0aW9uUmFuZ2UgPSBkb2N1
bWVudC5jcmVhdGVSYW5nZSgpOwotICAgICAgICBmaW5hbFNlbGVjdGlvblJhbmdlLnNldFN0YXJ0
KHJlcGxhY2VtZW50VGV4dE5vZGUsIDApOwotICAgICAgICBmaW5hbFNlbGVjdGlvblJhbmdlLnNl
dEVuZChyZXBsYWNlbWVudFRleHROb2RlLCByZXBsYWNlbWVudFN0cmluZy5sZW5ndGgpOworICAg
ICAgICAgICAgc2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpOworICAgICAgICAgICAgc2VsZWN0
aW9uLmFkZFJhbmdlKGZpbmFsU2VsZWN0aW9uUmFuZ2UpOwogCi0gICAgICAgIHNlbGVjdGlvbi5y
ZW1vdmVBbGxSYW5nZXMoKTsKLSAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKGZpbmFsU2VsZWN0
aW9uUmFuZ2UpOworICAgICAgICAgICAgZXZlbnQuaGFuZGxlZCA9IHRydWU7CisgICAgICAgICAg
ICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwogCi0gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0
KCk7CisgICAgICAgICAgICBpZiAoISgib3JpZ2luYWxQcm9wZXJ0eVRleHQiIGluIHRoaXMpKSB7
CisgICAgICAgICAgICAgICAgLy8gUmVtZW1iZXIgdGhlIHJ1bGUncyBvcmlnaW5hbCBDU1MgdGV4
dCBvbiBbUGFnZV0oVXB8RG93biksIHNvIGl0IGNhbiBiZSByZXN0b3JlZAorICAgICAgICAgICAg
ICAgIC8vIGlmIHRoZSBlZGl0aW5nIGlzIGNhbmNlbGVkLgorICAgICAgICAgICAgICAgIHRoaXMu
b3JpZ2luYWxQcm9wZXJ0eVRleHQgPSB0aGlzLnByb3BlcnR5LnByb3BlcnR5VGV4dDsKKyAgICAg
ICAgICAgIH0KIAotICAgICAgICBpZiAoISgib3JpZ2luYWxQcm9wZXJ0eVRleHQiIGluIHRoaXMp
KSB7Ci0gICAgICAgICAgICAvLyBSZW1lbWJlciB0aGUgcnVsZSdzIG9yaWdpbmFsIENTUyB0ZXh0
IG9uIFtQYWdlXShVcHxEb3duKSwgc28gaXQgY2FuIGJlIHJlc3RvcmVkCi0gICAgICAgICAgICAv
LyBpZiB0aGUgZWRpdGluZyBpcyBjYW5jZWxlZC4KLSAgICAgICAgICAgIHRoaXMub3JpZ2luYWxQ
cm9wZXJ0eVRleHQgPSB0aGlzLnByb3BlcnR5LnByb3BlcnR5VGV4dDsKKyAgICAgICAgICAgIC8v
IFN5bnRoZXNpemUgcHJvcGVydHkgdGV4dCBkaXNyZWdhcmRpbmcgYW55IGNvbW1lbnRzLCBjdXN0
b20gd2hpdGVzcGFjZSBldGMuCisgICAgICAgICAgICB0aGlzLmFwcGx5U3R5bGVUZXh0KHRoaXMu
bmFtZUVsZW1lbnQudGV4dENvbnRlbnQgKyAiOiAiICsgdGhpcy52YWx1ZUVsZW1lbnQudGV4dENv
bnRlbnQpOwogICAgICAgICB9Ci0KLSAgICAgICAgLy8gU3ludGhlc2l6ZSBwcm9wZXJ0eSB0ZXh0
IGRpc3JlZ2FyZGluZyBhbnkgY29tbWVudHMsIGN1c3RvbSB3aGl0ZXNwYWNlIGV0Yy4KLSAgICAg
ICAgdGhpcy5hcHBseVN0eWxlVGV4dCh0aGlzLm5hbWVFbGVtZW50LnRleHRDb250ZW50ICsgIjog
IiArIHRoaXMudmFsdWVFbGVtZW50LnRleHRDb250ZW50KTsKICAgICB9LAogCiAgICAgZWRpdGlu
Z0VuZGVkOiBmdW5jdGlvbihjb250ZXh0KQogICAgIHsKKyAgICAgICAgaWYgKHRoaXMuX3Byb21w
dCkKKyAgICAgICAgICAgIHRoaXMuX3Byb21wdC5jbGVhckF1dG9Db21wbGV0ZSh0cnVlKTsKICAg
ICAgICAgdGhpcy5oYXNDaGlsZHJlbiA9IGNvbnRleHQuaGFzQ2hpbGRyZW47CiAgICAgICAgIGlm
IChjb250ZXh0LmV4cGFuZGVkKQogICAgICAgICAgICAgdGhpcy5leHBhbmQoKTsKICAgICAgICAg
dmFyIGVkaXRlZEVsZW1lbnQgPSBjb250ZXh0LmlzRWRpdGluZ05hbWUgPyB0aGlzLm5hbWVFbGVt
ZW50IDogdGhpcy52YWx1ZUVsZW1lbnQ7Ci0gICAgICAgIGVkaXRlZEVsZW1lbnQucmVtb3ZlRXZl
bnRMaXN0ZW5lcigia2V5ZG93biIsIGNvbnRleHQua2V5RG93bkxpc3RlbmVyLCBmYWxzZSk7Ci0g
ICAgICAgIGVkaXRlZEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5cHJlc3MiLCBjb250
ZXh0LmtleVByZXNzTGlzdGVuZXIsIGZhbHNlKTsKKyAgICAgICAgaWYgKCFjb250ZXh0LmlzRWRp
dGluZ05hbWUpCisgICAgICAgICAgICBlZGl0ZWRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIo
ImtleWRvd24iLCBjb250ZXh0LmtleURvd25MaXN0ZW5lciwgZmFsc2UpOwogICAgICAgICBpZiAo
ZWRpdGVkRWxlbWVudC5wYXJlbnRFbGVtZW50KQogICAgICAgICAgICAgZWRpdGVkRWxlbWVudC5w
YXJlbnRFbGVtZW50LnJlbW92ZVN0eWxlQ2xhc3MoImNoaWxkLWVkaXRpbmciKTsKIAogICAgICAg
ICBkZWxldGUgdGhpcy5vcmlnaW5hbFByb3BlcnR5VGV4dDsKKyAgICAgICAgZGVsZXRlIHRoaXMu
X3Byb21wdDsKKyAgICAgICAgZGVsZXRlIHRoaXMuX3ZhbHVlQ29tcGxldGlvbnM7CiAgICAgfSwK
IAogICAgIGVkaXRpbmdDYW5jZWxsZWQ6IGZ1bmN0aW9uKGVsZW1lbnQsIGNvbnRleHQpCiAgICAg
eworICAgICAgICB0aGlzLmVkaXRpbmdFbmRlZChjb250ZXh0KTsKICAgICAgICAgaWYgKCJvcmln
aW5hbFByb3BlcnR5VGV4dCIgaW4gdGhpcykKICAgICAgICAgICAgIHRoaXMuYXBwbHlTdHlsZVRl
eHQodGhpcy5vcmlnaW5hbFByb3BlcnR5VGV4dCwgdHJ1ZSk7CiAgICAgICAgIGVsc2UgewpAQCAt
MTc5MSw3ICsxNzg4LDYgQEAgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVlRWxlbWVudC5w
cm90b3R5cGUgPSB7CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgdGhpcy51cGRh
dGVUaXRsZSgpOwogICAgICAgICB9Ci0gICAgICAgIHRoaXMuZWRpdGluZ0VuZGVkKGNvbnRleHQp
OwogICAgIH0sCiAKICAgICBlZGl0aW5nQ29tbWl0dGVkOiBmdW5jdGlvbihlbGVtZW50LCB1c2Vy
SW5wdXQsIHByZXZpb3VzQ29udGVudCwgY29udGV4dCwgbW92ZURpcmVjdGlvbikKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dFByb21wdC5qcyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvVGV4dFByb21wdC5qcwppbmRleCAyMWE1
YmRlLi5kZGIzMDU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1RleHRQcm9tcHQuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9UZXh0UHJvbXB0LmpzCkBAIC0yNiwxNCArMjYsMTcgQEAKICAqIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAot
V2ViSW5zcGVjdG9yLlRleHRQcm9tcHQgPSBmdW5jdGlvbihlbGVtZW50LCBjb21wbGV0aW9ucywg
c3RvcENoYXJhY3RlcnMpCitXZWJJbnNwZWN0b3IuVGV4dFByb21wdCA9IGZ1bmN0aW9uKGVsZW1l
bnQsIGNvbXBsZXRpb25zLCBzdG9wQ2hhcmFjdGVycywgc3VwcG9ydEhpc3RvcnksIGN1c3RvbUtl
eUhhbmRsZXJzKQogewogICAgIHRoaXMuZWxlbWVudCA9IGVsZW1lbnQ7CiAgICAgdGhpcy5lbGVt
ZW50LmFkZFN0eWxlQ2xhc3MoInRleHQtcHJvbXB0Iik7CiAgICAgdGhpcy5jb21wbGV0aW9ucyA9
IGNvbXBsZXRpb25zOwogICAgIHRoaXMuY29tcGxldGlvblN0b3BDaGFyYWN0ZXJzID0gc3RvcENo
YXJhY3RlcnM7Ci0gICAgdGhpcy5oaXN0b3J5ID0gW107Ci0gICAgdGhpcy5oaXN0b3J5T2Zmc2V0
ID0gMDsKKyAgICBpZiAoc3VwcG9ydEhpc3RvcnkpIHsKKyAgICAgICAgdGhpcy5oaXN0b3J5ID0g
W107CisgICAgICAgIHRoaXMuaGlzdG9yeU9mZnNldCA9IDA7CisgICAgfQorICAgIHRoaXMuX2N1
c3RvbUtleUhhbmRsZXJzID0gY3VzdG9tS2V5SGFuZGxlcnM7CiAgICAgdGhpcy5lbGVtZW50LmFk
ZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLCB0aGlzLl9vbktleURvd24uYmluZCh0aGlzKSwgdHJ1
ZSk7CiB9CiAKQEAgLTYzLDE2ICs2NiwzMSBAQCBXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90
b3R5cGUgPSB7CiAgICAgICAgICAgICB0aGlzLmF1dG9Db21wbGV0ZVNvb24oKTsKICAgICAgICAg
fQogCisgICAgICAgIGlmIChldmVudC5oYW5kbGVkKQorICAgICAgICAgICAgcmV0dXJuOworCiAg
ICAgICAgIHZhciBoYW5kbGVkID0gZmFsc2U7CisKICAgICAgICAgc3dpdGNoIChldmVudC5rZXlJ
ZGVudGlmaWVyKSB7CiAgICAgICAgICAgICBjYXNlICJVcCI6Ci0gICAgICAgICAgICAgICAgdGhp
cy5fdXBLZXlQcmVzc2VkKGV2ZW50KTsKKyAgICAgICAgICAgICAgICBpZiAodGhpcy5fY3VzdG9t
S2V5SGFuZGxlcnMgJiYgdGhpcy5fY3VzdG9tS2V5SGFuZGxlcnMudXBLZXlIYW5kbGVyKQorICAg
ICAgICAgICAgICAgICAgICB0aGlzLl9jdXN0b21LZXlIYW5kbGVycy51cEtleUhhbmRsZXIoZXZl
bnQsIHRoaXMpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgdGhp
cy5fdXBLZXlQcmVzc2VkKGV2ZW50KTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAg
ICAgIGNhc2UgIkRvd24iOgotICAgICAgICAgICAgICAgIHRoaXMuX2Rvd25LZXlQcmVzc2VkKGV2
ZW50KTsKKyAgICAgICAgICAgICAgICBpZiAodGhpcy5fY3VzdG9tS2V5SGFuZGxlcnMgJiYgdGhp
cy5fY3VzdG9tS2V5SGFuZGxlcnMuZG93bktleUhhbmRsZXIpCisgICAgICAgICAgICAgICAgICAg
IHRoaXMuX2N1c3RvbUtleUhhbmRsZXJzLmRvd25LZXlIYW5kbGVyKGV2ZW50LCB0aGlzKTsKKyAg
ICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIHRoaXMuX2Rvd25LZXlQcmVz
c2VkKGV2ZW50KTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgIlUr
MDAwOSI6IC8vIFRhYgotICAgICAgICAgICAgICAgIHRoaXMuX3RhYktleVByZXNzZWQoZXZlbnQp
OworICAgICAgICAgICAgICAgIGlmICh0aGlzLl9jdXN0b21LZXlIYW5kbGVycyAmJiB0aGlzLl9j
dXN0b21LZXlIYW5kbGVycy50YWJLZXlIYW5kbGVyKQorICAgICAgICAgICAgICAgICAgICB0aGlz
Ll9jdXN0b21LZXlIYW5kbGVycy50YWJLZXlIYW5kbGVyKGV2ZW50LCB0aGlzKTsKKyAgICAgICAg
ICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wbGV0ZShmYWxzZSwg
ZXZlbnQuc2hpZnRLZXkpOworICAgICAgICAgICAgICAgICAgICBoYW5kbGVkID0gdHJ1ZTsKKyAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNl
ICJSaWdodCI6CiAgICAgICAgICAgICBjYXNlICJFbmQiOgpAQCAtODUsNyArMTAzLDcgQEAgV2Vi
SW5zcGVjdG9yLlRleHRQcm9tcHQucHJvdG90eXBlID0gewogICAgICAgICAgICAgY2FzZSAiQ29u
dHJvbCI6CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlICJVKzAwNTAi
OiAvLyBDdHJsK1AgPSBQcmV2aW91cwotICAgICAgICAgICAgICAgIGlmIChXZWJJbnNwZWN0b3Iu
aXNNYWMoKSAmJiBldmVudC5jdHJsS2V5ICYmICFldmVudC5tZXRhS2V5ICYmICFldmVudC5hbHRL
ZXkgJiYgIWV2ZW50LnNoaWZ0S2V5KSB7CisgICAgICAgICAgICAgICAgaWYgKHRoaXMuaGlzdG9y
eSAmJiBXZWJJbnNwZWN0b3IuaXNNYWMoKSAmJiBldmVudC5jdHJsS2V5ICYmICFldmVudC5tZXRh
S2V5ICYmICFldmVudC5hbHRLZXkgJiYgIWV2ZW50LnNoaWZ0S2V5KSB7CiAgICAgICAgICAgICAg
ICAgICAgIGhhbmRsZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICB0aGlzLl9tb3ZlQmFj
a0luSGlzdG9yeSgpOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTkzLDcgKzExMSw3
IEBAIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAg
ICBkZWZhdWx0QWN0aW9uLmNhbGwodGhpcyk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgICAgICBjYXNlICJVKzAwNEUiOiAvLyBDdHJsK04gPSBOZXh0Ci0gICAgICAgICAgICAgICAg
aWYgKFdlYkluc3BlY3Rvci5pc01hYygpICYmIGV2ZW50LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFL
ZXkgJiYgIWV2ZW50LmFsdEtleSAmJiAhZXZlbnQuc2hpZnRLZXkpIHsKKyAgICAgICAgICAgICAg
ICBpZiAodGhpcy5oaXN0b3J5ICYmIFdlYkluc3BlY3Rvci5pc01hYygpICYmIGV2ZW50LmN0cmxL
ZXkgJiYgIWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50LmFsdEtleSAmJiAhZXZlbnQuc2hpZnRLZXkp
IHsKICAgICAgICAgICAgICAgICAgICAgaGFuZGxlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAg
ICAgIHRoaXMuX21vdmVGb3J3YXJkSW5IaXN0b3J5KCk7CiAgICAgICAgICAgICAgICAgICAgIGJy
ZWFrOwpAQCAtMTA1LDcgKzEyMyw5IEBAIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlw
ZSA9IHsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogCisgICAgICAgIGhhbmRs
ZWQgfD0gZXZlbnQuaGFuZGxlZDsKICAgICAgICAgaWYgKGhhbmRsZWQpIHsKKyAgICAgICAgICAg
IGV2ZW50LmhhbmRsZWQgPSB0cnVlOwogICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQo
KTsKICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwogICAgICAgICB9CkBAIC0z
NzYsMTQgKzM5Niw2IEBAIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKICAg
ICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKHNlbGVjdGlvblJhbmdlKTsKICAgICB9LAogCi0gICAg
X3RhYktleVByZXNzZWQ6IGZ1bmN0aW9uKGV2ZW50KQotICAgIHsKLSAgICAgICAgZXZlbnQucHJl
dmVudERlZmF1bHQoKTsKLSAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7Ci0KLSAgICAg
ICAgdGhpcy5jb21wbGV0ZShmYWxzZSwgZXZlbnQuc2hpZnRLZXkpOwotICAgIH0sCi0KICAgICBf
dXBLZXlQcmVzc2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5p
c0NhcmV0T25GaXJzdExpbmUoKSkKQEAgLTQwOCw3ICs0MjAsNyBAQCBXZWJJbnNwZWN0b3IuVGV4
dFByb21wdC5wcm90b3R5cGUgPSB7CiAKICAgICBfbW92ZUJhY2tJbkhpc3Rvcnk6IGZ1bmN0aW9u
KCkKICAgICB7Ci0gICAgICAgIGlmICh0aGlzLmhpc3RvcnlPZmZzZXQgPT0gdGhpcy5oaXN0b3J5
Lmxlbmd0aCkKKyAgICAgICAgaWYgKCF0aGlzLmhpc3RvcnkgfHwgdGhpcy5oaXN0b3J5T2Zmc2V0
ID09IHRoaXMuaGlzdG9yeS5sZW5ndGgpCiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAg
dGhpcy5jbGVhckF1dG9Db21wbGV0ZSh0cnVlKTsKQEAgLTQzNyw3ICs0NDksNyBAQCBXZWJJbnNw
ZWN0b3IuVGV4dFByb21wdC5wcm90b3R5cGUgPSB7CiAKICAgICBfbW92ZUZvcndhcmRJbkhpc3Rv
cnk6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIGlmICh0aGlzLmhpc3RvcnlPZmZzZXQgPT09
IDApCisgICAgICAgIGlmICghdGhpcy5oaXN0b3J5IHx8IHRoaXMuaGlzdG9yeU9mZnNldCA9PT0g
MCkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICB0aGlzLmNsZWFyQXV0b0NvbXBsZXRl
KHRydWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9p
bnNwZWN0b3IuY3NzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0
b3IuY3NzCmluZGV4IGM5MDg0MjcuLmY2MjlkMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5jc3MKQEAgLTc3OCw4ICs3NzgsOCBAQCBib2R5
LnBsYXRmb3JtLWxpbnV4IC5tb25vc3BhY2UsIGJvZHkucGxhdGZvcm0tbGludXggLnNvdXJjZS1j
b2RlIHsKICAgICBjb2xvcjogcmVkOwogfQogCi0uYXV0by1jb21wbGV0ZS10ZXh0IHsKLSAgICBj
b2xvcjogcmdiKDEyOCwgMTI4LCAxMjgpOworLmF1dG8tY29tcGxldGUtdGV4dCwgLmVkaXRpbmcg
LmF1dG8tY29tcGxldGUtdGV4dCB7CisgICAgY29sb3I6IHJnYigxMjgsIDEyOCwgMTI4KSAhaW1w
b3J0YW50OwogICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgLXdlYmtpdC11c2Vy
LW1vZGlmeTogcmVhZC1vbmx5OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRtbCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvaW5zcGVjdG9yLmh0bWwKaW5kZXggNDRmMDk2Zi4uMTI5OGY5NCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRtbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sCkBAIC05
Miw2ICs5Miw3IEBAIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
IHNyYz0iRXZlbnRMaXN0ZW5lcnNTaWRlYmFyUGFuZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlw
dCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iQ29sb3IuanMiPjwvc2NyaXB0PgogICAgIDxz
Y3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IkNTU0NvbXBsZXRpb25zLmpzIj48L3Nj
cmlwdD4KKyAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJDU1NLZXl3b3Jk
Q29tcGxldGlvbnMuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0IiBzcmM9IlN0eWxlc1NpZGViYXJQYW5lLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHR5
cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJQYW5lbEVuYWJsZXJWaWV3LmpzIj48L3NjcmlwdD4K
ICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJXZWxjb21lVmlldy5qcyI+
PC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>78946</attachid>
            <date>2011-01-14 08:51:58 -0800</date>
            <delta_ts>2011-01-17 03:04:32 -0800</delta_ts>
            <desc>[PATCH] Inherited TextPrompt to override key handlers</desc>
            <filename>csstextprompt.patch</filename>
            <type>text/plain</type>
            <size>46099</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IDU4Y2IzYzYzYmU0MWI1ZmM2YmY3NDU4ZmI5Mjg5ZGEyNDM5NDQ2OTIKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUaHUgSmFuIDEz
IDIwOjExOjExIDIwMTEgKzAzMDAKCiAgICBUZXh0IHByb21wdCBmb3IgdmFsdWVzCgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IGU0OTFhYzAuLjhmMzA3NTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMS0wMS0xNCAgQWxl
eGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IEVtcGxveSBUZXh0
UHJvbXB0IGZvciBDU1MgcHJvcGVydHkgbmFtZS92YWx1ZSBhdXRvY29tcGxldGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIyMTIKKworICAgICAg
ICAqIGluc3BlY3Rvci9zdHlsZXMtYWRkLWJsYW5rLXByb3BlcnR5Lmh0bWw6IEZvbGxvdyB0aGUg
YWx0ZXJlZCBldmVudCBoYW5kbGluZy4KKyAgICAgICAgKiBpbnNwZWN0b3Ivc3R5bGVzLXVybC1s
aW5raWZ5Lmh0bWw6IEVsaW1pbmF0ZSBmbGFraW5lc3MuCisKIDIwMTEtMDEtMTQgIEhheWF0byBJ
dG8gIDxoYXlhdG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgY2hyb21pdW0g
ZXhwZWN0YXRpb25zIHVwZGF0ZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9z
dHlsZXMtYWRkLWJsYW5rLXByb3BlcnR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5
bGVzLWFkZC1ibGFuay1wcm9wZXJ0eS5odG1sCmluZGV4IGY0OTZiNTEuLjQ5Njg5MmQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtYWRkLWJsYW5rLXByb3BlcnR5Lmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy1hZGQtYmxhbmstcHJvcGVydHku
aHRtbApAQCAtMzYsNyArMzYsNiBAQCBmdW5jdGlvbiBmcm9udGVuZF9kdW1wSW5zcGVjdGVkU3R5
bGUodGVzdENvbnRyb2xsZXIpCiAgICAgc2VjdGlvbi5leHBhbmQoKTsKICAgICB2YXIgdHJlZUVs
ZW1lbnQgPSBzZWN0aW9uLmFkZE5ld0JsYW5rUHJvcGVydHkoKTsKICAgICB2YXIgZW50ZXJLZXlE
b3duID0gZnJvbnRlbmRfY3JlYXRlS2V5RXZlbnQoIkVudGVyIik7Ci0gICAgdmFyIGluY3JlbWVu
dEtleURvd24gPSBmcm9udGVuZF9jcmVhdGVLZXlFdmVudCgiVXAiKTsKIAogICAgIGZ1bmN0aW9u
IHJlbW92ZUVtcHR5KCkKICAgICB7CkBAIC00OCwxMiArNDcsMTEgQEAgZnVuY3Rpb24gZnJvbnRl
bmRfZHVtcEluc3BlY3RlZFN0eWxlKHRlc3RDb250cm9sbGVyKQogICAgIHsKICAgICAgICAgdHJl
ZUVsZW1lbnQudmFsdWVFbGVtZW50LmRpc3BhdGNoRXZlbnQoZW50ZXJLZXlEb3duKTsKICAgICAg
ICAgdGVzdENvbnRyb2xsZXIucnVuQWZ0ZXJQZW5kaW5nRGlzcGF0Y2hlcyhyZW1vdmVFbXB0eS5i
aW5kKHRoaXMpKTsKLSAgICAgICAgZnJvbnRlbmRfZHVtcFJlc3VsdHModGVzdENvbnRyb2xsZXIp
OwogICAgIH0KIAogICAgIGZ1bmN0aW9uIGluY3JlbWVudEFnYWluKCkKICAgICB7Ci0gICAgICAg
IHRyZWVFbGVtZW50LnZhbHVlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGluY3JlbWVudEtleURvd24p
OworICAgICAgICB0cmVlRWxlbWVudC52YWx1ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChmcm9udGVu
ZF9jcmVhdGVLZXlFdmVudCgiVXAiKSk7CiAgICAgICAgIHRlc3RDb250cm9sbGVyLnJ1bkFmdGVy
UGVuZGluZ0Rpc3BhdGNoZXMoY29tbWl0LmJpbmQodGhpcykpOwogICAgIH0KIApAQCAtNjIsNyAr
NjAsNyBAQCBmdW5jdGlvbiBmcm9udGVuZF9kdW1wSW5zcGVjdGVkU3R5bGUodGVzdENvbnRyb2xs
ZXIpCiAgICAgdHJlZUVsZW1lbnQubmFtZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChlbnRlcktleURv
d24pOwogICAgIHRyZWVFbGVtZW50LnZhbHVlRWxlbWVudC50ZXh0Q29udGVudCA9ICIxcHgiOwog
ICAgIHRyZWVFbGVtZW50LnZhbHVlRWxlbWVudC5maXJzdENoaWxkLnNlbGVjdCgpOwotICAgIHRy
ZWVFbGVtZW50LnZhbHVlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGluY3JlbWVudEtleURvd24pOwor
ICAgIHRyZWVFbGVtZW50LnZhbHVlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGZyb250ZW5kX2NyZWF0
ZUtleUV2ZW50KCJVcCIpKTsKICAgICB0ZXN0Q29udHJvbGxlci5ydW5BZnRlclBlbmRpbmdEaXNw
YXRjaGVzKGluY3JlbWVudEFnYWluLmJpbmQodGhpcykpOwogfQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzLXVybC1saW5raWZ5Lmh0bWwgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3Ivc3R5bGVzLXVybC1saW5raWZ5Lmh0bWwKaW5kZXggYWY3YWQ2ZC4uM2JjN2FjZCAx
MDA3NTUKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy11cmwtbGlua2lmeS5odG1s
CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtdXJsLWxpbmtpZnkuaHRtbApAQCAt
MjIsNyArMjIsMTggQEAgZnVuY3Rpb24gdGVzdCgpCiB7CiAgICAgZnVuY3Rpb24gZHVtcEhyZWYo
KQogICAgIHsKLSAgICAgICAgdmFyIGhyZWYgPSBXZWJJbnNwZWN0b3IucGFuZWxzLmVsZW1lbnRz
LnNpZGViYXJQYW5lcy5zdHlsZXMuc2VjdGlvbnNbMF1bMl0ucHJvcGVydGllc1RyZWVPdXRsaW5l
LmNoaWxkcmVuWzBdLnZhbHVlRWxlbWVudC5jaGlsZE5vZGVzWzJdLmhyZWY7CisgICAgICAgIHZh
ciBocmVmOworICAgICAgICB2YXIgdmFsdWVDaGlsZE5vZGVzID0gV2ViSW5zcGVjdG9yLnBhbmVs
cy5lbGVtZW50cy5zaWRlYmFyUGFuZXMuc3R5bGVzLnNlY3Rpb25zWzBdWzJdLnByb3BlcnRpZXNU
cmVlT3V0bGluZS5jaGlsZHJlblswXS52YWx1ZUVsZW1lbnQuY2hpbGROb2RlczsKKyAgICAgICAg
Zm9yICh2YXIgaSA9IDA7IGkgPCB2YWx1ZUNoaWxkTm9kZXMubGVuZ3RoOyArK2kpIHsKKyAgICAg
ICAgICAgIGlmICh2YWx1ZUNoaWxkTm9kZXNbaV0uaHJlZikgeworICAgICAgICAgICAgICAgIGhy
ZWYgPSB2YWx1ZUNoaWxkTm9kZXNbaV0uaHJlZjsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAoIWhyZWYpIHsKKyAgICAgICAgICAg
IEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJocmVmIHByb3BlcnR5IG5vdCBmb3VuZCIpOworICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgICAgIHZhciBzZWdtZW50cyA9IGhyZWYu
c3BsaXQoIi8iKTsKICAgICAgICAgdmFyIG91dHB1dCA9IFtdOwogICAgICAgICBmb3IgKHZhciBp
ID0gc2VnbWVudHMubGVuZ3RoIC0gMSwgbWluU2VnbWVudCA9IGkgLSAzOyBpID49IDAgJiYgaSA+
PSBtaW5TZWdtZW50OyAtLWkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTdiNmM2ZS4uNTAwMTY5OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDExLTAxLTE0ICBBbGV4YW5kZXIgUGF2bG92ICA8YXBh
dmxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogRW1wbG95IFRleHRQcm9tcHQgZm9yIENTUyBwcm9w
ZXJ0eSBuYW1lL3ZhbHVlIGF1dG9jb21wbGV0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjIxMgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250
LWVuZC9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanM6IEFkZGVkLgorICAgICAgICAoV2ViSW5zcGVj
dG9yLkNTU0tleXdvcmRDb21wbGV0aW9ucy5mb3JQcm9wZXJ0eSk6CisgICAgICAgICogaW5zcGVj
dG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlLnVwZGF0ZVRpdGxlKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlKToKKyAg
ICAgICAgKCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0UHJvbXB0LmpzOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlRleHRQcm9tcHQucHJvdG90eXBlLl9vbktleURvd24pOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlRleHRQcm9tcHQucHJvdG90eXBlLnRhYktleVByZXNzZWQpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlRleHRQcm9tcHQucHJvdG90eXBlLnVwS2V5UHJlc3NlZCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuVGV4dFByb21wdC5wcm90b3R5cGUuZG93bktleVByZXNzZWQpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlRleHRQcm9tcHQucHJvdG90eXBlLl9tb3ZlQmFja0luSGlzdG9yeSk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90b3R5cGUuX21vdmVGb3J3YXJkSW5IaXN0
b3J5KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5jc3M6CisgICAg
ICAgICguYXV0by1jb21wbGV0ZS10ZXh0LCAuZWRpdGluZyAuYXV0by1jb21wbGV0ZS10ZXh0KToK
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sOgorCiAyMDExLTAx
LTE0ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIE5v
dCByZXZpZXdlZDogYnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanMgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0NTU0tleXdvcmRDb21wbGV0aW9ucy5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDc1NQppbmRleCAwMDAwMDAwLi4xMmI3M2U5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanMKQEAg
LTAsMCArMSwxMTE2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisg
KiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5h
bWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisg
KiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg
Q09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAor
ICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworV2ViSW5zcGVjdG9yLkNTU0tleXdvcmRDb21wbGV0aW9ucyA9IHsKKyAg
ICBmb3JQcm9wZXJ0eTogZnVuY3Rpb24ocHJvcGVydHlOYW1lKQorICAgIHsKKyAgICAgICAgdmFy
IGFjY2VwdGVkS2V5d29yZHMgPSBbImluaXRpYWwiXTsKKyAgICAgICAgaWYgKHByb3BlcnR5TmFt
ZSBpbiB0aGlzLl9wcm9wZXJ0eUtleXdvcmRNYXApCisgICAgICAgICAgICBhY2NlcHRlZEtleXdv
cmRzID0gYWNjZXB0ZWRLZXl3b3Jkcy5jb25jYXQodGhpcy5fcHJvcGVydHlLZXl3b3JkTWFwW3By
b3BlcnR5TmFtZV0pOworICAgICAgICBpZiAocHJvcGVydHlOYW1lIGluIHRoaXMuX2NvbG9yQXdh
cmVQcm9wZXJ0aWVzKQorICAgICAgICAgICAgYWNjZXB0ZWRLZXl3b3JkcyA9IGFjY2VwdGVkS2V5
d29yZHMuY29uY2F0KFdlYkluc3BlY3Rvci5DU1NLZXl3b3JkQ29tcGxldGlvbnMuX2NvbG9ycyk7
CisgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgaW4gV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQ
YW5lLkluaGVyaXRlZFByb3BlcnRpZXMpCisgICAgICAgICAgICBhY2NlcHRlZEtleXdvcmRzLnB1
c2goImluaGVyaXQiKTsKKyAgICAgICAgcmV0dXJuIG5ldyBXZWJJbnNwZWN0b3IuQ1NTQ29tcGxl
dGlvbnMoYWNjZXB0ZWRLZXl3b3Jkcyk7CisgICAgfQorfTsKKworV2ViSW5zcGVjdG9yLkNTU0tl
eXdvcmRDb21wbGV0aW9ucy5fY29sb3JzID0gWworICAgICJhcXVhIiwKKyAgICAiYmxhY2siLAor
ICAgICJibHVlIiwKKyAgICAiZnVjaHNpYSIsCisgICAgImdyYXkiLAorICAgICJncmVlbiIsCisg
ICAgImxpbWUiLAorICAgICJtYXJvb24iLAorICAgICJuYXZ5IiwKKyAgICAib2xpdmUiLAorICAg
ICJvcmFuZ2UiLAorICAgICJwdXJwbGUiLAorICAgICJyZWQiLAorICAgICJzaWx2ZXIiLAorICAg
ICJ0ZWFsIiwKKyAgICAid2hpdGUiLAorICAgICJ5ZWxsb3ciLAorICAgICJ0cmFuc3BhcmVudCIs
CisgICAgImN1cnJlbnRjb2xvciIsCisgICAgImdyZXkiLAorICAgICJhbGljZWJsdWUiLAorICAg
ICJhbnRpcXVld2hpdGUiLAorICAgICJhcXVhbWFyaW5lIiwKKyAgICAiYXp1cmUiLAorICAgICJi
ZWlnZSIsCisgICAgImJpc3F1ZSIsCisgICAgImJsYW5jaGVkYWxtb25kIiwKKyAgICAiYmx1ZXZp
b2xldCIsCisgICAgImJyb3duIiwKKyAgICAiYnVybHl3b29kIiwKKyAgICAiY2FkZXRibHVlIiwK
KyAgICAiY2hhcnRyZXVzZSIsCisgICAgImNob2NvbGF0ZSIsCisgICAgImNvcmFsIiwKKyAgICAi
Y29ybmZsb3dlcmJsdWUiLAorICAgICJjb3Juc2lsayIsCisgICAgImNyaW1zb24iLAorICAgICJj
eWFuIiwKKyAgICAiZGFya2JsdWUiLAorICAgICJkYXJrY3lhbiIsCisgICAgImRhcmtnb2xkZW5y
b2QiLAorICAgICJkYXJrZ3JheSIsCisgICAgImRhcmtncmVlbiIsCisgICAgImRhcmtncmV5IiwK
KyAgICAiZGFya2toYWtpIiwKKyAgICAiZGFya21hZ2VudGEiLAorICAgICJkYXJrb2xpdmVncmVl
biIsCisgICAgImRhcmtvcmFuZ2UiLAorICAgICJkYXJrb3JjaGlkIiwKKyAgICAiZGFya3JlZCIs
CisgICAgImRhcmtzYWxtb24iLAorICAgICJkYXJrc2VhZ3JlZW4iLAorICAgICJkYXJrc2xhdGVi
bHVlIiwKKyAgICAiZGFya3NsYXRlZ3JheSIsCisgICAgImRhcmtzbGF0ZWdyZXkiLAorICAgICJk
YXJrdHVycXVvaXNlIiwKKyAgICAiZGFya3Zpb2xldCIsCisgICAgImRlZXBwaW5rIiwKKyAgICAi
ZGVlcHNreWJsdWUiLAorICAgICJkaW1ncmF5IiwKKyAgICAiZGltZ3JleSIsCisgICAgImRvZGdl
cmJsdWUiLAorICAgICJmaXJlYnJpY2siLAorICAgICJmbG9yYWx3aGl0ZSIsCisgICAgImZvcmVz
dGdyZWVuIiwKKyAgICAiZ2FpbnNib3JvIiwKKyAgICAiZ2hvc3R3aGl0ZSIsCisgICAgImdvbGQi
LAorICAgICJnb2xkZW5yb2QiLAorICAgICJncmVlbnllbGxvdyIsCisgICAgImhvbmV5ZGV3IiwK
KyAgICAiaG90cGluayIsCisgICAgImluZGlhbnJlZCIsCisgICAgImluZGlnbyIsCisgICAgIml2
b3J5IiwKKyAgICAia2hha2kiLAorICAgICJsYXZlbmRlciIsCisgICAgImxhdmVuZGVyYmx1c2gi
LAorICAgICJsYXduZ3JlZW4iLAorICAgICJsZW1vbmNoaWZmb24iLAorICAgICJsaWdodGJsdWUi
LAorICAgICJsaWdodGNvcmFsIiwKKyAgICAibGlnaHRjeWFuIiwKKyAgICAibGlnaHRnb2xkZW5y
b2R5ZWxsb3ciLAorICAgICJsaWdodGdyYXkiLAorICAgICJsaWdodGdyZWVuIiwKKyAgICAibGln
aHRncmV5IiwKKyAgICAibGlnaHRwaW5rIiwKKyAgICAibGlnaHRzYWxtb24iLAorICAgICJsaWdo
dHNlYWdyZWVuIiwKKyAgICAibGlnaHRza3libHVlIiwKKyAgICAibGlnaHRzbGF0ZWdyYXkiLAor
ICAgICJsaWdodHNsYXRlZ3JleSIsCisgICAgImxpZ2h0c3RlZWxibHVlIiwKKyAgICAibGlnaHR5
ZWxsb3ciLAorICAgICJsaW1lZ3JlZW4iLAorICAgICJsaW5lbiIsCisgICAgIm1hZ2VudGEiLAor
ICAgICJtZWRpdW1hcXVhbWFyaW5lIiwKKyAgICAibWVkaXVtYmx1ZSIsCisgICAgIm1lZGl1bW9y
Y2hpZCIsCisgICAgIm1lZGl1bXB1cnBsZSIsCisgICAgIm1lZGl1bXNlYWdyZWVuIiwKKyAgICAi
bWVkaXVtc2xhdGVibHVlIiwKKyAgICAibWVkaXVtc3ByaW5nZ3JlZW4iLAorICAgICJtZWRpdW10
dXJxdW9pc2UiLAorICAgICJtZWRpdW12aW9sZXRyZWQiLAorICAgICJtaWRuaWdodGJsdWUiLAor
ICAgICJtaW50Y3JlYW0iLAorICAgICJtaXN0eXJvc2UiLAorICAgICJtb2NjYXNpbiIsCisgICAg
Im5hdmFqb3doaXRlIiwKKyAgICAib2xkbGFjZSIsCisgICAgIm9saXZlZHJhYiIsCisgICAgIm9y
YW5nZXJlZCIsCisgICAgIm9yY2hpZCIsCisgICAgInBhbGVnb2xkZW5yb2QiLAorICAgICJwYWxl
Z3JlZW4iLAorICAgICJwYWxldHVycXVvaXNlIiwKKyAgICAicGFsZXZpb2xldHJlZCIsCisgICAg
InBhcGF5YXdoaXAiLAorICAgICJwZWFjaHB1ZmYiLAorICAgICJwZXJ1IiwKKyAgICAicGluayIs
CisgICAgInBsdW0iLAorICAgICJwb3dkZXJibHVlIiwKKyAgICAicm9zeWJyb3duIiwKKyAgICAi
cm95YWxibHVlIiwKKyAgICAic2FkZGxlYnJvd24iLAorICAgICJzYWxtb24iLAorICAgICJzYW5k
eWJyb3duIiwKKyAgICAic2VhZ3JlZW4iLAorICAgICJzZWFzaGVsbCIsCisgICAgInNpZW5uYSIs
CisgICAgInNreWJsdWUiLAorICAgICJzbGF0ZWJsdWUiLAorICAgICJzbGF0ZWdyYXkiLAorICAg
ICJzbGF0ZWdyZXkiLAorICAgICJzbm93IiwKKyAgICAic3ByaW5nZ3JlZW4iLAorICAgICJzdGVl
bGJsdWUiLAorICAgICJ0YW4iLAorICAgICJ0aGlzdGxlIiwKKyAgICAidG9tYXRvIiwKKyAgICAi
dHVycXVvaXNlIiwKKyAgICAidmlvbGV0IiwKKyAgICAid2hlYXQiLAorICAgICJ3aGl0ZXNtb2tl
IiwKKyAgICAieWVsbG93Z3JlZW4iCitdLAorCitXZWJJbnNwZWN0b3IuQ1NTS2V5d29yZENvbXBs
ZXRpb25zLl9jb2xvckF3YXJlUHJvcGVydGllcyA9IFsKKyAgICAiYmFja2dyb3VuZCIsCisgICAg
ImJhY2tncm91bmQtY29sb3IiLAorICAgICJib3JkZXIiLAorICAgICJib3JkZXItY29sb3IiLAor
ICAgICJib3JkZXItdG9wIiwKKyAgICAiYm9yZGVyLXJpZ2h0IiwKKyAgICAiYm9yZGVyLWJvdHRv
bSIsCisgICAgImJvcmRlci1sZWZ0IiwKKyAgICAiYm9yZGVyLXRvcC1jb2xvciIsCisgICAgImJv
cmRlci1yaWdodC1jb2xvciIsCisgICAgImJvcmRlci1ib3R0b20tY29sb3IiLAorICAgICJib3Jk
ZXItbGVmdC1jb2xvciIsCisgICAgImNvbG9yIiwKKyAgICAib3V0bGluZSIsCisgICAgIm91dGxp
bmUtY29sb3IiLAorICAgICJ0ZXh0LWxpbmUtdGhyb3VnaCIsCisgICAgInRleHQtbGluZS10aHJv
dWdoLWNvbG9yIiwKKyAgICAidGV4dC1vdmVybGluZSIsCisgICAgInRleHQtb3ZlcmxpbmUtY29s
b3IiLAorICAgICJ0ZXh0LXNoYWRvdyIsCisgICAgInRleHQtdW5kZXJsaW5lIiwKKyAgICAidGV4
dC11bmRlcmxpbmUtY29sb3IiLAorICAgICItd2Via2l0LXRleHQtZW1waGFzaXMiLAorICAgICIt
d2Via2l0LXRleHQtZW1waGFzaXMtY29sb3IiCitdLmtleVNldCgpOworCitXZWJJbnNwZWN0b3Iu
Q1NTS2V5d29yZENvbXBsZXRpb25zLl9wcm9wZXJ0eUtleXdvcmRNYXAgPSB7CisgICAgInRhYmxl
LWxheW91dCI6IFsKKyAgICAgICAgImF1dG8iLAorICAgICAgICAiZml4ZWQiCisgICAgXSwKKyAg
ICAidmlzaWJpbGl0eSI6IFsKKyAgICAgICAgImhpZGRlbiIsCisgICAgICAgICJ2aXNpYmxlIiwK
KyAgICAgICAgImNvbGxhcHNlIgorICAgIF0sCisgICAgImJhY2tncm91bmQtcmVwZWF0IjogWwor
ICAgICAgICAicmVwZWF0IiwKKyAgICAgICAgInJlcGVhdC14IiwKKyAgICAgICAgInJlcGVhdC15
IiwKKyAgICAgICAgIm5vLXJlcGVhdCIsCisgICAgICAgICJzcGFjZSIsCisgICAgICAgICJyb3Vu
ZCIKKyAgICBdLAorICAgICJ0ZXh0LXVuZGVybGluZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAg
ICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAg
ICAgICJkb3VibGUiLAorICAgICAgICAiZG90LWRhc2giLAorICAgICAgICAiZG90LWRvdC1kYXNo
IiwKKyAgICAgICAgIndhdmUiCisgICAgXSwKKyAgICAiY29udGVudCI6IFsKKyAgICAgICAgImxp
c3QtaXRlbSIsCisgICAgICAgICJjbG9zZS1xdW90ZSIsCisgICAgICAgICJuby1jbG9zZS1xdW90
ZSIsCisgICAgICAgICJuby1vcGVuLXF1b3RlIiwKKyAgICAgICAgIm9wZW4tcXVvdGUiCisgICAg
XSwKKyAgICAibGlzdC1zdHlsZS1pbWFnZSI6IFsKKyAgICAgICAgIm5vbmUiCisgICAgXSwKKyAg
ICAiY2xlYXIiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImxlZnQiLAorICAgICAgICAi
cmlnaHQiLAorICAgICAgICAiYm90aCIKKyAgICBdLAorICAgICJ0ZXh0LXVuZGVybGluZS1tb2Rl
IjogWworICAgICAgICAiY29udGludW91cyIsCisgICAgICAgICJza2lwLXdoaXRlLXNwYWNlIgor
ICAgIF0sCisgICAgIm92ZXJmbG93LXgiOiBbCisgICAgICAgICJoaWRkZW4iLAorICAgICAgICAi
YXV0byIsCisgICAgICAgICJ2aXNpYmxlIiwKKyAgICAgICAgIm92ZXJsYXkiLAorICAgICAgICAi
c2Nyb2xsIgorICAgIF0sCisgICAgInN0cm9rZS1saW5lam9pbiI6IFsKKyAgICAgICAgInJvdW5k
IiwKKyAgICAgICAgIm1pdGVyIiwKKyAgICAgICAgImJldmVsIgorICAgIF0sCisgICAgImJhc2Vs
aW5lLXNoaWZ0IjogWworICAgICAgICAiYmFzZWxpbmUiLAorICAgICAgICAic3ViIiwKKyAgICAg
ICAgInN1cGVyIgorICAgIF0sCisgICAgImJvcmRlci1ib3R0b20td2lkdGgiOiBbCisgICAgICAg
ICJtZWRpdW0iLAorICAgICAgICAidGhpY2siLAorICAgICAgICAidGhpbiIKKyAgICBdLAorICAg
ICJtYXJxdWVlLXNwZWVkIjogWworICAgICAgICAibm9ybWFsIiwKKyAgICAgICAgInNsb3ciLAor
ICAgICAgICAiZmFzdCIKKyAgICBdLAorICAgICJtYXJnaW4tdG9wLWNvbGxhcHNlIjogWworICAg
ICAgICAiY29sbGFwc2UiLAorICAgICAgICAic2VwYXJhdGUiLAorICAgICAgICAiZGlzY2FyZCIK
KyAgICBdLAorICAgICJtYXgtaGVpZ2h0IjogWworICAgICAgICAibm9uZSIKKyAgICBdLAorICAg
ICJib3gtb3JpZW50IjogWworICAgICAgICAiaG9yaXpvbnRhbCIsCisgICAgICAgICJ2ZXJ0aWNh
bCIsCisgICAgICAgICJpbmxpbmUtYXhpcyIsCisgICAgICAgICJibG9jay1heGlzIgorICAgIF0s
CisgICAgImZvbnQtc3RyZXRjaCI6IFsKKyAgICAgICAgIm5vcm1hbCIsCisgICAgICAgICJ3aWRl
ciIsCisgICAgICAgICJuYXJyb3dlciIsCisgICAgICAgICJ1bHRyYS1jb25kZW5zZWQiLAorICAg
ICAgICAiZXh0cmEtY29uZGVuc2VkIiwKKyAgICAgICAgImNvbmRlbnNlZCIsCisgICAgICAgICJz
ZW1pLWNvbmRlbnNlZCIsCisgICAgICAgICJzZW1pLWV4cGFuZGVkIiwKKyAgICAgICAgImV4cGFu
ZGVkIiwKKyAgICAgICAgImV4dHJhLWV4cGFuZGVkIiwKKyAgICAgICAgInVsdHJhLWV4cGFuZGVk
IgorICAgIF0sCisgICAgIi13ZWJraXQtY29sb3ItY29ycmVjdGlvbiI6IFsKKyAgICAgICAgImRl
ZmF1bHQiLAorICAgICAgICAic3JnYiIKKyAgICBdLAorICAgICJ0ZXh0LXVuZGVybGluZS1zdHls
ZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hl
ZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiLAorICAgICAgICAiZG90LWRh
c2giLAorICAgICAgICAiZG90LWRvdC1kYXNoIiwKKyAgICAgICAgIndhdmUiCisgICAgXSwKKyAg
ICAidGV4dC1vdmVybGluZS1tb2RlIjogWworICAgICAgICAiY29udGludW91cyIsCisgICAgICAg
ICJza2lwLXdoaXRlLXNwYWNlIgorICAgIF0sCisgICAgIi13ZWJraXQtYmFja2dyb3VuZC1jb21w
b3NpdGUiOiBbCisgICAgICAgICJoaWdobGlnaHQiLAorICAgICAgICAiY2xlYXIiLAorICAgICAg
ICAiY29weSIsCisgICAgICAgICJzb3VyY2Utb3ZlciIsCisgICAgICAgICJzb3VyY2UtaW4iLAor
ICAgICAgICAic291cmNlLW91dCIsCisgICAgICAgICJzb3VyY2UtYXRvcCIsCisgICAgICAgICJk
ZXN0aW5hdGlvbi1vdmVyIiwKKyAgICAgICAgImRlc3RpbmF0aW9uLWluIiwKKyAgICAgICAgImRl
c3RpbmF0aW9uLW91dCIsCisgICAgICAgICJkZXN0aW5hdGlvbi1hdG9wIiwKKyAgICAgICAgInhv
ciIsCisgICAgICAgICJwbHVzLWRhcmtlciIsCisgICAgICAgICJwbHVzLWxpZ2h0ZXIiCisgICAg
XSwKKyAgICAiYm9yZGVyLWxlZnQtd2lkdGgiOiBbCisgICAgICAgICJtZWRpdW0iLAorICAgICAg
ICAidGhpY2siLAorICAgICAgICAidGhpbiIKKyAgICBdLAorICAgICItd2Via2l0LXdyaXRpbmct
bW9kZSI6IFsKKyAgICAgICAgImxyIiwKKyAgICAgICAgInJsIiwKKyAgICAgICAgInRiIiwKKyAg
ICAgICAgImxyLXRiIiwKKyAgICAgICAgInJsLXRiIiwKKyAgICAgICAgInRiLXJsIiwKKyAgICAg
ICAgImhvcml6b250YWwtdGIiLAorICAgICAgICAidmVydGljYWwtcmwiLAorICAgICAgICAidmVy
dGljYWwtbHIiLAorICAgICAgICAiaG9yaXpvbnRhbC1idCIKKyAgICBdLAorICAgICJ0ZXh0LWxp
bmUtdGhyb3VnaC1tb2RlIjogWworICAgICAgICAiY29udGludW91cyIsCisgICAgICAgICJza2lw
LXdoaXRlLXNwYWNlIgorICAgIF0sCisgICAgImJvcmRlci1jb2xsYXBzZSI6IFsKKyAgICAgICAg
ImNvbGxhcHNlIiwKKyAgICAgICAgInNlcGFyYXRlIgorICAgIF0sCisgICAgInBhZ2UtYnJlYWst
aW5zaWRlIjogWworICAgICAgICAiYXV0byIsCisgICAgICAgICJhdm9pZCIKKyAgICBdLAorICAg
ICJib3JkZXItdG9wLXdpZHRoIjogWworICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgInRoaWNr
IiwKKyAgICAgICAgInRoaW4iCisgICAgXSwKKyAgICAib3V0bGluZS1jb2xvciI6IFsKKyAgICAg
ICAgImludmVydCIKKyAgICBdLAorICAgICJ0ZXh0LWxpbmUtdGhyb3VnaC1zdHlsZSI6IFsKKyAg
ICAgICAgIm5vbmUiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAg
ICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiLAorICAgICAgICAiZG90LWRhc2giLAorICAg
ICAgICAiZG90LWRvdC1kYXNoIiwKKyAgICAgICAgIndhdmUiCisgICAgXSwKKyAgICAib3V0bGlu
ZS1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiaGlkZGVuIiwKKyAgICAgICAg
Imluc2V0IiwKKyAgICAgICAgImdyb292ZSIsCisgICAgICAgICJyaWRnZSIsCisgICAgICAgICJv
dXRzZXQiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAgICAgICJz
b2xpZCIsCisgICAgICAgICJkb3VibGUiCisgICAgXSwKKyAgICAiY3Vyc29yIjogWworICAgICAg
ICAibm9uZSIsCisgICAgICAgICJjb3B5IiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAiY3Jv
c3NoYWlyIiwKKyAgICAgICAgImRlZmF1bHQiLAorICAgICAgICAicG9pbnRlciIsCisgICAgICAg
ICJtb3ZlIiwKKyAgICAgICAgInZlcnRpY2FsLXRleHQiLAorICAgICAgICAiY2VsbCIsCisgICAg
ICAgICJjb250ZXh0LW1lbnUiLAorICAgICAgICAiYWxpYXMiLAorICAgICAgICAicHJvZ3Jlc3Mi
LAorICAgICAgICAibm8tZHJvcCIsCisgICAgICAgICJub3QtYWxsb3dlZCIsCisgICAgICAgICIt
d2Via2l0LXpvb20taW4iLAorICAgICAgICAiLXdlYmtpdC16b29tLW91dCIsCisgICAgICAgICJl
LXJlc2l6ZSIsCisgICAgICAgICJuZS1yZXNpemUiLAorICAgICAgICAibnctcmVzaXplIiwKKyAg
ICAgICAgIm4tcmVzaXplIiwKKyAgICAgICAgInNlLXJlc2l6ZSIsCisgICAgICAgICJzdy1yZXNp
emUiLAorICAgICAgICAicy1yZXNpemUiLAorICAgICAgICAidy1yZXNpemUiLAorICAgICAgICAi
ZXctcmVzaXplIiwKKyAgICAgICAgIm5zLXJlc2l6ZSIsCisgICAgICAgICJuZXN3LXJlc2l6ZSIs
CisgICAgICAgICJud3NlLXJlc2l6ZSIsCisgICAgICAgICJjb2wtcmVzaXplIiwKKyAgICAgICAg
InJvdy1yZXNpemUiLAorICAgICAgICAidGV4dCIsCisgICAgICAgICJ3YWl0IiwKKyAgICAgICAg
ImhlbHAiLAorICAgICAgICAiYWxsLXNjcm9sbCIsCisgICAgICAgICItd2Via2l0LWdyYWIiLAor
ICAgICAgICAiLXdlYmtpdC1ncmFiYmluZyIKKyAgICBdLAorICAgICJib3JkZXItd2lkdGgiOiBb
CisgICAgICAgICJtZWRpdW0iLAorICAgICAgICAidGhpY2siLAorICAgICAgICAidGhpbiIKKyAg
ICBdLAorICAgICJzaXplIjogWworICAgICAgICAiYTMiLAorICAgICAgICAiYTQiLAorICAgICAg
ICAiYTUiLAorICAgICAgICAiYjQiLAorICAgICAgICAiYjUiLAorICAgICAgICAibGFuZHNjYXBl
IiwKKyAgICAgICAgImxlZGdlciIsCisgICAgICAgICJsZWdhbCIsCisgICAgICAgICJsZXR0ZXIi
LAorICAgICAgICAicG9ydHJhaXQiCisgICAgXSwKKyAgICAiYmFja2dyb3VuZC1zaXplIjogWwor
ICAgICAgICAiY29udGFpbiIsCisgICAgICAgICJjb3ZlciIKKyAgICBdLAorICAgICJkaXJlY3Rp
b24iOiBbCisgICAgICAgICJsdHIiLAorICAgICAgICAicnRsIgorICAgIF0sCisgICAgIm1hcnF1
ZWUtZGlyZWN0aW9uIjogWworICAgICAgICAibGVmdCIsCisgICAgICAgICJyaWdodCIsCisgICAg
ICAgICJhdXRvIiwKKyAgICAgICAgInJldmVyc2UiLAorICAgICAgICAiZm9yd2FyZHMiLAorICAg
ICAgICAiYmFja3dhcmRzIiwKKyAgICAgICAgImFoZWFkIiwKKyAgICAgICAgInVwIiwKKyAgICAg
ICAgImRvd24iCisgICAgXSwKKyAgICAiZW5hYmxlLWJhY2tncm91bmQiOiBbCisgICAgICAgICJh
Y2N1bXVsYXRlIiwKKyAgICAgICAgIm5ldyIKKyAgICBdLAorICAgICJmbG9hdCI6IFsKKyAgICAg
ICAgIm5vbmUiLAorICAgICAgICAibGVmdCIsCisgICAgICAgICJyaWdodCIKKyAgICBdLAorICAg
ICJvdmVyZmxvdy15IjogWworICAgICAgICAiaGlkZGVuIiwKKyAgICAgICAgImF1dG8iLAorICAg
ICAgICAidmlzaWJsZSIsCisgICAgICAgICJvdmVybGF5IiwKKyAgICAgICAgInNjcm9sbCIKKyAg
ICBdLAorICAgICJtYXJnaW4tYm90dG9tLWNvbGxhcHNlIjogWworICAgICAgICAiY29sbGFwc2Ui
LAorICAgICAgICAic2VwYXJhdGUiLAorICAgICAgICAiZGlzY2FyZCIKKyAgICBdLAorICAgICJi
b3gtcmVmbGVjdCI6IFsKKyAgICAgICAgImxlZnQiLAorICAgICAgICAicmlnaHQiLAorICAgICAg
ICAiYWJvdmUiLAorICAgICAgICAiYmVsb3ciCisgICAgXSwKKyAgICAib3ZlcmZsb3ciOiBbCisg
ICAgICAgICJoaWRkZW4iLAorICAgICAgICAiYXV0byIsCisgICAgICAgICJ2aXNpYmxlIiwKKyAg
ICAgICAgIm92ZXJsYXkiLAorICAgICAgICAic2Nyb2xsIgorICAgIF0sCisgICAgInRleHQtcmVu
ZGVyaW5nIjogWworICAgICAgICAiYXV0byIsCisgICAgICAgICJvcHRpbWl6ZXNwZWVkIiwKKyAg
ICAgICAgIm9wdGltaXplbGVnaWJpbGl0eSIsCisgICAgICAgICJnZW9tZXRyaWNwcmVjaXNpb24i
CisgICAgXSwKKyAgICAidGV4dC1hbGlnbiI6IFsKKyAgICAgICAgIi13ZWJraXQtYXV0byIsCisg
ICAgICAgICJsZWZ0IiwKKyAgICAgICAgInJpZ2h0IiwKKyAgICAgICAgImNlbnRlciIsCisgICAg
ICAgICJqdXN0aWZ5IiwKKyAgICAgICAgIi13ZWJraXQtbGVmdCIsCisgICAgICAgICItd2Via2l0
LXJpZ2h0IiwKKyAgICAgICAgIi13ZWJraXQtY2VudGVyIgorICAgIF0sCisgICAgImxpc3Qtc3R5
bGUtcG9zaXRpb24iOiBbCisgICAgICAgICJvdXRzaWRlIiwKKyAgICAgICAgImluc2lkZSIKKyAg
ICBdLAorICAgICJtYXJnaW4tYm90dG9tIjogWworICAgICAgICAiYXV0byIKKyAgICBdLAorICAg
ICJjb2xvci1pbnRlcnBvbGF0aW9uIjogWworICAgICAgICAibGluZWFycmdiIgorICAgIF0sCisg
ICAgImJhY2tncm91bmQtb3JpZ2luIjogWworICAgICAgICAiYm9yZGVyLWJveCIsCisgICAgICAg
ICJjb250ZW50LWJveCIsCisgICAgICAgICJwYWRkaW5nLWJveCIKKyAgICBdLAorICAgICJ3b3Jk
LXdyYXAiOiBbCisgICAgICAgICJub3JtYWwiLAorICAgICAgICAiYnJlYWstd29yZCIKKyAgICBd
LAorICAgICJmb250LXdlaWdodCI6IFsKKyAgICAgICAgIm5vcm1hbCIsCisgICAgICAgICJib2xk
IiwKKyAgICAgICAgImJvbGRlciIsCisgICAgICAgICJsaWdodGVyIiwKKyAgICAgICAgIjEwMCIs
CisgICAgICAgICIyMDAiLAorICAgICAgICAiMzAwIiwKKyAgICAgICAgIjQwMCIsCisgICAgICAg
ICI1MDAiLAorICAgICAgICAiNjAwIiwKKyAgICAgICAgIjcwMCIsCisgICAgICAgICI4MDAiLAor
ICAgICAgICAiOTAwIgorICAgIF0sCisgICAgIm1hcmdpbi1iZWZvcmUtY29sbGFwc2UiOiBbCisg
ICAgICAgICJjb2xsYXBzZSIsCisgICAgICAgICJzZXBhcmF0ZSIsCisgICAgICAgICJkaXNjYXJk
IgorICAgIF0sCisgICAgInRleHQtb3ZlcmxpbmUtd2lkdGgiOiBbCisgICAgICAgICJub3JtYWwi
LAorICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAidGhpY2siLAor
ICAgICAgICAidGhpbiIKKyAgICBdLAorICAgICJ0ZXh0LXRyYW5zZm9ybSI6IFsKKyAgICAgICAg
Im5vbmUiLAorICAgICAgICAiY2FwaXRhbGl6ZSIsCisgICAgICAgICJ1cHBlcmNhc2UiLAorICAg
ICAgICAibG93ZXJjYXNlIgorICAgIF0sCisgICAgImJvcmRlci1yaWdodC1zdHlsZSI6IFsKKyAg
ICAgICAgIm5vbmUiLAorICAgICAgICAiaGlkZGVuIiwKKyAgICAgICAgImluc2V0IiwKKyAgICAg
ICAgImdyb292ZSIsCisgICAgICAgICJyaWRnZSIsCisgICAgICAgICJvdXRzZXQiLAorICAgICAg
ICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAg
ICJkb3VibGUiCisgICAgXSwKKyAgICAiYm9yZGVyLWxlZnQtc3R5bGUiOiBbCisgICAgICAgICJu
b25lIiwKKyAgICAgICAgImhpZGRlbiIsCisgICAgICAgICJpbnNldCIsCisgICAgICAgICJncm9v
dmUiLAorICAgICAgICAicmlkZ2UiLAorICAgICAgICAib3V0c2V0IiwKKyAgICAgICAgImRvdHRl
ZCIsCisgICAgICAgICJkYXNoZWQiLAorICAgICAgICAic29saWQiLAorICAgICAgICAiZG91Ymxl
IgorICAgIF0sCisgICAgIi13ZWJraXQtdGV4dC1lbXBoYXNpcyI6IFsKKyAgICAgICAgImNpcmNs
ZSIsCisgICAgICAgICJmaWxsZWQiLAorICAgICAgICAib3BlbiIsCisgICAgICAgICJkb3QiLAor
ICAgICAgICAiZG91YmxlLWNpcmNsZSIsCisgICAgICAgICJ0cmlhbmdsZSIsCisgICAgICAgICJz
ZXNhbWUiCisgICAgXSwKKyAgICAiZm9udC1zdHlsZSI6IFsKKyAgICAgICAgIml0YWxpYyIsCisg
ICAgICAgICJvYmxpcXVlIiwKKyAgICAgICAgIm5vcm1hbCIKKyAgICBdLAorICAgICJzcGVhayI6
IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAibm9ybWFsIiwKKyAgICAgICAgInNwZWxsLW91
dCIsCisgICAgICAgICJkaWdpdHMiLAorICAgICAgICAibGl0ZXJhbC1wdW5jdHVhdGlvbiIsCisg
ICAgICAgICJuby1wdW5jdHVhdGlvbiIKKyAgICBdLAorICAgICJ0ZXh0LWxpbmUtdGhyb3VnaCI6
IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIs
CisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiLAorICAgICAgICAiZG90LWRhc2gi
LAorICAgICAgICAiZG90LWRvdC1kYXNoIiwKKyAgICAgICAgIndhdmUiLAorICAgICAgICAiY29u
dGludW91cyIsCisgICAgICAgICJza2lwLXdoaXRlLXNwYWNlIgorICAgIF0sCisgICAgImNvbG9y
LXJlbmRlcmluZyI6IFsKKyAgICAgICAgImF1dG8iLAorICAgICAgICAib3B0aW1pemVzcGVlZCIs
CisgICAgICAgICJvcHRpbWl6ZXF1YWxpdHkiCisgICAgXSwKKyAgICAibGlzdC1zdHlsZS10eXBl
IjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJkaXNjIiwKKyAgICAgICAgImNpcmNsZSIs
CisgICAgICAgICJzcXVhcmUiLAorICAgICAgICAiZGVjaW1hbCIsCisgICAgICAgICJkZWNpbWFs
LWxlYWRpbmctemVybyIsCisgICAgICAgICJhcmFiaWMtaW5kaWMiLAorICAgICAgICAiYmluYXJ5
IiwKKyAgICAgICAgImJlbmdhbGkiLAorICAgICAgICAiY2FtYm9kaWFuIiwKKyAgICAgICAgImto
bWVyIiwKKyAgICAgICAgImRldmFuYWdhcmkiLAorICAgICAgICAiZ3VqYXJhdGkiLAorICAgICAg
ICAiZ3VybXVraGkiLAorICAgICAgICAia2FubmFkYSIsCisgICAgICAgICJsb3dlci1oZXhhZGVj
aW1hbCIsCisgICAgICAgICJsYW8iLAorICAgICAgICAibWFsYXlhbGFtIiwKKyAgICAgICAgIm1v
bmdvbGlhbiIsCisgICAgICAgICJteWFubWFyIiwKKyAgICAgICAgIm9jdGFsIiwKKyAgICAgICAg
Im9yaXlhIiwKKyAgICAgICAgInBlcnNpYW4iLAorICAgICAgICAidXJkdSIsCisgICAgICAgICJ0
ZWx1Z3UiLAorICAgICAgICAidGliZXRhbiIsCisgICAgICAgICJ0aGFpIiwKKyAgICAgICAgInVw
cGVyLWhleGFkZWNpbWFsIiwKKyAgICAgICAgImxvd2VyLXJvbWFuIiwKKyAgICAgICAgInVwcGVy
LXJvbWFuIiwKKyAgICAgICAgImxvd2VyLWdyZWVrIiwKKyAgICAgICAgImxvd2VyLWFscGhhIiwK
KyAgICAgICAgImxvd2VyLWxhdGluIiwKKyAgICAgICAgInVwcGVyLWFscGhhIiwKKyAgICAgICAg
InVwcGVyLWxhdGluIiwKKyAgICAgICAgImFmYXIiLAorICAgICAgICAiZXRoaW9waWMtaGFsZWhh
bWUtYWEtZXQiLAorICAgICAgICAiZXRoaW9waWMtaGFsZWhhbWUtYWEtZXIiLAorICAgICAgICAi
YW1oYXJpYyIsCisgICAgICAgICJldGhpb3BpYy1oYWxlaGFtZS1hbS1ldCIsCisgICAgICAgICJh
bWhhcmljLWFiZWdlZGUiLAorICAgICAgICAiZXRoaW9waWMtYWJlZ2VkZS1hbS1ldCIsCisgICAg
ICAgICJjamstZWFydGhseS1icmFuY2giLAorICAgICAgICAiY2prLWhlYXZlbmx5LXN0ZW0iLAor
ICAgICAgICAiZXRoaW9waWMiLAorICAgICAgICAiZXRoaW9waWMtaGFsZWhhbWUtZ2V6IiwKKyAg
ICAgICAgImV0aGlvcGljLWFiZWdlZGUiLAorICAgICAgICAiZXRoaW9waWMtYWJlZ2VkZS1nZXoi
LAorICAgICAgICAiaGFuZ3VsLWNvbnNvbmFudCIsCisgICAgICAgICJoYW5ndWwiLAorICAgICAg
ICAibG93ZXItbm9yd2VnaWFuIiwKKyAgICAgICAgIm9yb21vIiwKKyAgICAgICAgImV0aGlvcGlj
LWhhbGVoYW1lLW9tLWV0IiwKKyAgICAgICAgInNpZGFtYSIsCisgICAgICAgICJldGhpb3BpYy1o
YWxlaGFtZS1zaWQtZXQiLAorICAgICAgICAic29tYWxpIiwKKyAgICAgICAgImV0aGlvcGljLWhh
bGVoYW1lLXNvLWV0IiwKKyAgICAgICAgInRpZ3JlIiwKKyAgICAgICAgImV0aGlvcGljLWhhbGVo
YW1lLXRpZyIsCisgICAgICAgICJ0aWdyaW55YS1lciIsCisgICAgICAgICJldGhpb3BpYy1oYWxl
aGFtZS10aS1lciIsCisgICAgICAgICJ0aWdyaW55YS1lci1hYmVnZWRlIiwKKyAgICAgICAgImV0
aGlvcGljLWFiZWdlZGUtdGktZXIiLAorICAgICAgICAidGlncmlueWEtZXQiLAorICAgICAgICAi
ZXRoaW9waWMtaGFsZWhhbWUtdGktZXQiLAorICAgICAgICAidGlncmlueWEtZXQtYWJlZ2VkZSIs
CisgICAgICAgICJldGhpb3BpYy1hYmVnZWRlLXRpLWV0IiwKKyAgICAgICAgInVwcGVyLWdyZWVr
IiwKKyAgICAgICAgInVwcGVyLW5vcndlZ2lhbiIsCisgICAgICAgICJhc3Rlcmlza3MiLAorICAg
ICAgICAiZm9vdG5vdGVzIiwKKyAgICAgICAgImhlYnJldyIsCisgICAgICAgICJhcm1lbmlhbiIs
CisgICAgICAgICJsb3dlci1hcm1lbmlhbiIsCisgICAgICAgICJ1cHBlci1hcm1lbmlhbiIsCisg
ICAgICAgICJnZW9yZ2lhbiIsCisgICAgICAgICJjamstaWRlb2dyYXBoaWMiLAorICAgICAgICAi
aGlyYWdhbmEiLAorICAgICAgICAia2F0YWthbmEiLAorICAgICAgICAiaGlyYWdhbmEtaXJvaGEi
LAorICAgICAgICAia2F0YWthbmEtaXJvaGEiCisgICAgXSwKKyAgICAiLXdlYmtpdC10ZXh0LWNv
bWJpbmUiOiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgImhvcml6b250YWwiCisgICAgXSwK
KyAgICAib3V0bGluZSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiaGlkZGVuIiwKKyAg
ICAgICAgImluc2V0IiwKKyAgICAgICAgImdyb292ZSIsCisgICAgICAgICJyaWRnZSIsCisgICAg
ICAgICJvdXRzZXQiLAorICAgICAgICAiZG90dGVkIiwKKyAgICAgICAgImRhc2hlZCIsCisgICAg
ICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiCisgICAgXSwKKyAgICAiZm9udCI6IFsKKyAg
ICAgICAgImNhcHRpb24iLAorICAgICAgICAiaWNvbiIsCisgICAgICAgICJtZW51IiwKKyAgICAg
ICAgIm1lc3NhZ2UtYm94IiwKKyAgICAgICAgInNtYWxsLWNhcHRpb24iLAorICAgICAgICAiLXdl
YmtpdC1taW5pLWNvbnRyb2wiLAorICAgICAgICAiLXdlYmtpdC1zbWFsbC1jb250cm9sIiwKKyAg
ICAgICAgIi13ZWJraXQtY29udHJvbCIsCisgICAgICAgICJzdGF0dXMtYmFyIiwKKyAgICAgICAg
Iml0YWxpYyIsCisgICAgICAgICJvYmxpcXVlIiwKKyAgICAgICAgInNtYWxsLWNhcHMiLAorICAg
ICAgICAibm9ybWFsIiwKKyAgICAgICAgImJvbGQiLAorICAgICAgICAiYm9sZGVyIiwKKyAgICAg
ICAgImxpZ2h0ZXIiLAorICAgICAgICAiMTAwIiwKKyAgICAgICAgIjIwMCIsCisgICAgICAgICIz
MDAiLAorICAgICAgICAiNDAwIiwKKyAgICAgICAgIjUwMCIsCisgICAgICAgICI2MDAiLAorICAg
ICAgICAiNzAwIiwKKyAgICAgICAgIjgwMCIsCisgICAgICAgICI5MDAiLAorICAgICAgICAieHgt
c21hbGwiLAorICAgICAgICAieC1zbWFsbCIsCisgICAgICAgICJzbWFsbCIsCisgICAgICAgICJt
ZWRpdW0iLAorICAgICAgICAibGFyZ2UiLAorICAgICAgICAieC1sYXJnZSIsCisgICAgICAgICJ4
eC1sYXJnZSIsCisgICAgICAgICItd2Via2l0LXh4eC1sYXJnZSIsCisgICAgICAgICJzbWFsbGVy
IiwKKyAgICAgICAgImxhcmdlciIsCisgICAgICAgICJzZXJpZiIsCisgICAgICAgICJzYW5zLXNl
cmlmIiwKKyAgICAgICAgImN1cnNpdmUiLAorICAgICAgICAiZmFudGFzeSIsCisgICAgICAgICJt
b25vc3BhY2UiLAorICAgICAgICAiLXdlYmtpdC1ib2R5IgorICAgIF0sCisgICAgImRvbWluYW50
LWJhc2VsaW5lIjogWworICAgICAgICAibWlkZGxlIiwKKyAgICAgICAgImF1dG8iLAorICAgICAg
ICAiY2VudHJhbCIsCisgICAgICAgICJ0ZXh0LWJlZm9yZS1lZGdlIiwKKyAgICAgICAgInRleHQt
YWZ0ZXItZWRnZSIsCisgICAgICAgICJpZGVvZ3JhcGhpYyIsCisgICAgICAgICJhbHBoYWJldGlj
IiwKKyAgICAgICAgImhhbmdpbmciLAorICAgICAgICAibWF0aGVtYXRpY2FsIiwKKyAgICAgICAg
InVzZS1zY3JpcHQiLAorICAgICAgICAibm8tY2hhbmdlIiwKKyAgICAgICAgInJlc2V0LXNpemUi
CisgICAgXSwKKyAgICAiZGlzcGxheSI6IFsKKyAgICAgICAgIm5vbmUiLAorICAgICAgICAiaW5s
aW5lIiwKKyAgICAgICAgImJsb2NrIiwKKyAgICAgICAgImxpc3QtaXRlbSIsCisgICAgICAgICJy
dW4taW4iLAorICAgICAgICAiY29tcGFjdCIsCisgICAgICAgICJpbmxpbmUtYmxvY2siLAorICAg
ICAgICAidGFibGUiLAorICAgICAgICAiaW5saW5lLXRhYmxlIiwKKyAgICAgICAgInRhYmxlLXJv
dy1ncm91cCIsCisgICAgICAgICJ0YWJsZS1oZWFkZXItZ3JvdXAiLAorICAgICAgICAidGFibGUt
Zm9vdGVyLWdyb3VwIiwKKyAgICAgICAgInRhYmxlLXJvdyIsCisgICAgICAgICJ0YWJsZS1jb2x1
bW4tZ3JvdXAiLAorICAgICAgICAidGFibGUtY29sdW1uIiwKKyAgICAgICAgInRhYmxlLWNlbGwi
LAorICAgICAgICAidGFibGUtY2FwdGlvbiIsCisgICAgICAgICItd2Via2l0LWJveCIsCisgICAg
ICAgICItd2Via2l0LWlubGluZS1ib3giLAorICAgICAgICAiLXdhcC1tYXJxdWVlIgorICAgIF0s
CisgICAgIi13ZWJraXQtdGV4dC1lbXBoYXNpcy1wb3NpdGlvbiI6IFsKKyAgICAgICAgIm92ZXIi
LAorICAgICAgICAidW5kZXIiCisgICAgXSwKKyAgICAiaW1hZ2UtcmVuZGVyaW5nIjogWworICAg
ICAgICAiYXV0byIsCisgICAgICAgICJvcHRpbWl6ZXNwZWVkIiwKKyAgICAgICAgIm9wdGltaXpl
cXVhbGl0eSIKKyAgICBdLAorICAgICJhbGlnbm1lbnQtYmFzZWxpbmUiOiBbCisgICAgICAgICJi
YXNlbGluZSIsCisgICAgICAgICJtaWRkbGUiLAorICAgICAgICAiYXV0byIsCisgICAgICAgICJi
ZWZvcmUtZWRnZSIsCisgICAgICAgICJhZnRlci1lZGdlIiwKKyAgICAgICAgImNlbnRyYWwiLAor
ICAgICAgICAidGV4dC1iZWZvcmUtZWRnZSIsCisgICAgICAgICJ0ZXh0LWFmdGVyLWVkZ2UiLAor
ICAgICAgICAiaWRlb2dyYXBoaWMiLAorICAgICAgICAiYWxwaGFiZXRpYyIsCisgICAgICAgICJo
YW5naW5nIiwKKyAgICAgICAgIm1hdGhlbWF0aWNhbCIKKyAgICBdLAorICAgICJvdXRsaW5lLXdp
ZHRoIjogWworICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgInRoaWNrIiwKKyAgICAgICAgInRo
aW4iCisgICAgXSwKKyAgICAidGV4dC1saW5lLXRocm91Z2gtd2lkdGgiOiBbCisgICAgICAgICJu
b3JtYWwiLAorICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAidGhp
Y2siLAorICAgICAgICAidGhpbiIKKyAgICBdLAorICAgICJib3gtYWxpZ24iOiBbCisgICAgICAg
ICJiYXNlbGluZSIsCisgICAgICAgICJjZW50ZXIiLAorICAgICAgICAic3RyZXRjaCIsCisgICAg
ICAgICJzdGFydCIsCisgICAgICAgICJlbmQiCisgICAgXSwKKyAgICAiYm9yZGVyLXJpZ2h0LXdp
ZHRoIjogWworICAgICAgICAibWVkaXVtIiwKKyAgICAgICAgInRoaWNrIiwKKyAgICAgICAgInRo
aW4iCisgICAgXSwKKyAgICAiYm9yZGVyLXRvcC1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLAor
ICAgICAgICAiaGlkZGVuIiwKKyAgICAgICAgImluc2V0IiwKKyAgICAgICAgImdyb292ZSIsCisg
ICAgICAgICJyaWRnZSIsCisgICAgICAgICJvdXRzZXQiLAorICAgICAgICAiZG90dGVkIiwKKyAg
ICAgICAgImRhc2hlZCIsCisgICAgICAgICJzb2xpZCIsCisgICAgICAgICJkb3VibGUiCisgICAg
XSwKKyAgICAibGluZS1oZWlnaHQiOiBbCisgICAgICAgICJub3JtYWwiCisgICAgXSwKKyAgICAi
dGV4dC1vdmVyZmxvdyI6IFsKKyAgICAgICAgImNsaXAiLAorICAgICAgICAiZWxsaXBzaXMiCisg
ICAgXSwKKyAgICAiYm94LWRpcmVjdGlvbiI6IFsKKyAgICAgICAgIm5vcm1hbCIsCisgICAgICAg
ICJyZXZlcnNlIgorICAgIF0sCisgICAgIm1hcmdpbi1hZnRlci1jb2xsYXBzZSI6IFsKKyAgICAg
ICAgImNvbGxhcHNlIiwKKyAgICAgICAgInNlcGFyYXRlIiwKKyAgICAgICAgImRpc2NhcmQiCisg
ICAgXSwKKyAgICAicGFnZS1icmVhay1iZWZvcmUiOiBbCisgICAgICAgICJsZWZ0IiwKKyAgICAg
ICAgInJpZ2h0IiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAiYWx3YXlzIiwKKyAgICAgICAg
ImF2b2lkIgorICAgIF0sCisgICAgIi13ZWJraXQtaHlwaGVucyI6IFsKKyAgICAgICAgIm5vbmUi
LAorICAgICAgICAiYXV0byIsCisgICAgICAgICJtYW51YWwiCisgICAgXSwKKyAgICAiYm9yZGVy
LWltYWdlIjogWworICAgICAgICAicmVwZWF0IiwKKyAgICAgICAgInN0cmV0Y2giCisgICAgXSwK
KyAgICAidGV4dC1kZWNvcmF0aW9uIjogWworICAgICAgICAiYmxpbmsiLAorICAgICAgICAibGlu
ZS10aHJvdWdoIiwKKyAgICAgICAgIm92ZXJsaW5lIiwKKyAgICAgICAgInVuZGVybGluZSIKKyAg
ICBdLAorICAgICJwb3NpdGlvbiI6IFsKKyAgICAgICAgImFic29sdXRlIiwKKyAgICAgICAgImZp
eGVkIiwKKyAgICAgICAgInJlbGF0aXZlIiwKKyAgICAgICAgInN0YXRpYyIKKyAgICBdLAorICAg
ICJmb250LWZhbWlseSI6IFsKKyAgICAgICAgInNlcmlmIiwKKyAgICAgICAgInNhbnMtc2VyaWYi
LAorICAgICAgICAiY3Vyc2l2ZSIsCisgICAgICAgICJmYW50YXN5IiwKKyAgICAgICAgIm1vbm9z
cGFjZSIsCisgICAgICAgICItd2Via2l0LWJvZHkiCisgICAgXSwKKyAgICAidGV4dC1vdmVyZmxv
dy1tb2RlIjogWworICAgICAgICAiY2xpcCIsCisgICAgICAgICJlbGxpcHNpcyIKKyAgICBdLAor
ICAgICJib3JkZXItYm90dG9tLXN0eWxlIjogWworICAgICAgICAibm9uZSIsCisgICAgICAgICJo
aWRkZW4iLAorICAgICAgICAiaW5zZXQiLAorICAgICAgICAiZ3Jvb3ZlIiwKKyAgICAgICAgInJp
ZGdlIiwKKyAgICAgICAgIm91dHNldCIsCisgICAgICAgICJkb3R0ZWQiLAorICAgICAgICAiZGFz
aGVkIiwKKyAgICAgICAgInNvbGlkIiwKKyAgICAgICAgImRvdWJsZSIKKyAgICBdLAorICAgICJ1
bmljb2RlLWJpZGkiOiBbCisgICAgICAgICJub3JtYWwiLAorICAgICAgICAiYmlkaS1vdmVycmlk
ZSIsCisgICAgICAgICJlbWJlZCIKKyAgICBdLAorICAgICJjbGlwLXJ1bGUiOiBbCisgICAgICAg
ICJub256ZXJvIiwKKyAgICAgICAgImV2ZW5vZGQiCisgICAgXSwKKyAgICAibWFyZ2luLWxlZnQi
OiBbCisgICAgICAgICJhdXRvIgorICAgIF0sCisgICAgIm1hcmdpbi10b3AiOiBbCisgICAgICAg
ICJhdXRvIgorICAgIF0sCisgICAgInpvb20iOiBbCisgICAgICAgICJkb2N1bWVudCIsCisgICAg
ICAgICJyZXNldCIKKyAgICBdLAorICAgICJ0ZXh0LW92ZXJsaW5lLXN0eWxlIjogWworICAgICAg
ICAibm9uZSIsCisgICAgICAgICJkb3R0ZWQiLAorICAgICAgICAiZGFzaGVkIiwKKyAgICAgICAg
InNvbGlkIiwKKyAgICAgICAgImRvdWJsZSIsCisgICAgICAgICJkb3QtZGFzaCIsCisgICAgICAg
ICJkb3QtZG90LWRhc2giLAorICAgICAgICAid2F2ZSIKKyAgICBdLAorICAgICJtYXgtd2lkdGgi
OiBbCisgICAgICAgICJub25lIgorICAgIF0sCisgICAgImVtcHR5LWNlbGxzIjogWworICAgICAg
ICAiaGlkZSIsCisgICAgICAgICJzaG93IgorICAgIF0sCisgICAgInBvaW50ZXItZXZlbnRzIjog
WworICAgICAgICAibm9uZSIsCisgICAgICAgICJhbGwiLAorICAgICAgICAiYXV0byIsCisgICAg
ICAgICJ2aXNpYmxlIiwKKyAgICAgICAgInZpc2libGVwYWludGVkIiwKKyAgICAgICAgInZpc2li
bGVmaWxsIiwKKyAgICAgICAgInZpc2libGVzdHJva2UiLAorICAgICAgICAicGFpbnRlZCIsCisg
ICAgICAgICJmaWxsIiwKKyAgICAgICAgInN0cm9rZSIKKyAgICBdLAorICAgICJsZXR0ZXItc3Bh
Y2luZyI6IFsKKyAgICAgICAgIm5vcm1hbCIKKyAgICBdLAorICAgICJiYWNrZ3JvdW5kLWNsaXAi
OiBbCisgICAgICAgICJib3JkZXItYm94IiwKKyAgICAgICAgImNvbnRlbnQtYm94IiwKKyAgICAg
ICAgInBhZGRpbmctYm94IgorICAgIF0sCisgICAgIi13ZWJraXQtZm9udC1zbW9vdGhpbmciOiBb
CisgICAgICAgICJub25lIiwKKyAgICAgICAgImF1dG8iLAorICAgICAgICAiYW50aWFsaWFzZWQi
LAorICAgICAgICAic3VicGl4ZWwtYW50aWFsaWFzZWQiCisgICAgXSwKKyAgICAiYm9yZGVyIjog
WworICAgICAgICAibm9uZSIsCisgICAgICAgICJoaWRkZW4iLAorICAgICAgICAiaW5zZXQiLAor
ICAgICAgICAiZ3Jvb3ZlIiwKKyAgICAgICAgInJpZGdlIiwKKyAgICAgICAgIm91dHNldCIsCisg
ICAgICAgICJkb3R0ZWQiLAorICAgICAgICAiZGFzaGVkIiwKKyAgICAgICAgInNvbGlkIiwKKyAg
ICAgICAgImRvdWJsZSIKKyAgICBdLAorICAgICJmb250LXNpemUiOiBbCisgICAgICAgICJ4eC1z
bWFsbCIsCisgICAgICAgICJ4LXNtYWxsIiwKKyAgICAgICAgInNtYWxsIiwKKyAgICAgICAgIm1l
ZGl1bSIsCisgICAgICAgICJsYXJnZSIsCisgICAgICAgICJ4LWxhcmdlIiwKKyAgICAgICAgInh4
LWxhcmdlIiwKKyAgICAgICAgIi13ZWJraXQteHh4LWxhcmdlIiwKKyAgICAgICAgInNtYWxsZXIi
LAorICAgICAgICAibGFyZ2VyIgorICAgIF0sCisgICAgImZvbnQtdmFyaWFudCI6IFsKKyAgICAg
ICAgInNtYWxsLWNhcHMiLAorICAgICAgICAibm9ybWFsIgorICAgIF0sCisgICAgInZlcnRpY2Fs
LWFsaWduIjogWworICAgICAgICAiYmFzZWxpbmUiLAorICAgICAgICAibWlkZGxlIiwKKyAgICAg
ICAgInN1YiIsCisgICAgICAgICJzdXBlciIsCisgICAgICAgICJ0ZXh0LXRvcCIsCisgICAgICAg
ICJ0ZXh0LWJvdHRvbSIsCisgICAgICAgICJ0b3AiLAorICAgICAgICAiYm90dG9tIiwKKyAgICAg
ICAgIi13ZWJraXQtYmFzZWxpbmUtbWlkZGxlIgorICAgIF0sCisgICAgIm1hcnF1ZWUtc3R5bGUi
OiBbCisgICAgICAgICJub25lIiwKKyAgICAgICAgInNjcm9sbCIsCisgICAgICAgICJzbGlkZSIs
CisgICAgICAgICJhbHRlcm5hdGUiCisgICAgXSwKKyAgICAid2hpdGUtc3BhY2UiOiBbCisgICAg
ICAgICJub3JtYWwiLAorICAgICAgICAibm93cmFwIiwKKyAgICAgICAgInByZSIsCisgICAgICAg
ICJwcmUtbGluZSIsCisgICAgICAgICJwcmUtd3JhcCIKKyAgICBdLAorICAgICJ0ZXh0LXVuZGVy
bGluZS13aWR0aCI6IFsKKyAgICAgICAgIm5vcm1hbCIsCisgICAgICAgICJtZWRpdW0iLAorICAg
ICAgICAiYXV0byIsCisgICAgICAgICJ0aGljayIsCisgICAgICAgICJ0aGluIgorICAgIF0sCisg
ICAgImJveC1saW5lcyI6IFsKKyAgICAgICAgInNpbmdsZSIsCisgICAgICAgICJtdWx0aXBsZSIK
KyAgICBdLAorICAgICJwYWdlLWJyZWFrLWFmdGVyIjogWworICAgICAgICAibGVmdCIsCisgICAg
ICAgICJyaWdodCIsCisgICAgICAgICJhdXRvIiwKKyAgICAgICAgImFsd2F5cyIsCisgICAgICAg
ICJhdm9pZCIKKyAgICBdLAorICAgICJjbGlwLXBhdGgiOiBbCisgICAgICAgICJub25lIgorICAg
IF0sCisgICAgIm1hcmdpbiI6IFsKKyAgICAgICAgImF1dG8iCisgICAgXSwKKyAgICAibWFycXVl
ZS1yZXBldGl0aW9uIjogWworICAgICAgICAiaW5maW5pdGUiCisgICAgXSwKKyAgICAibWFyZ2lu
LXJpZ2h0IjogWworICAgICAgICAiYXV0byIKKyAgICBdLAorICAgICItd2Via2l0LXRleHQtZW1w
aGFzaXMtc3R5bGUiOiBbCisgICAgICAgICJjaXJjbGUiLAorICAgICAgICAiZmlsbGVkIiwKKyAg
ICAgICAgIm9wZW4iLAorICAgICAgICAiZG90IiwKKyAgICAgICAgImRvdWJsZS1jaXJjbGUiLAor
ICAgICAgICAidHJpYW5nbGUiLAorICAgICAgICAic2VzYW1lIgorICAgIF0KK30KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3R5bGVzU2lkZWJhclBhbmUu
anMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxlc1NpZGViYXJQYW5l
LmpzCmluZGV4IGQ2NDY4MjkuLjlkY2IyOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvU3R5bGVzU2lkZWJhclBhbmUuanMKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcwpAQCAtODEsNiArODEs
OCBAQCBXZWJJbnNwZWN0b3IuU3R5bGVzU2lkZWJhclBhbmUgPSBmdW5jdGlvbihjb21wdXRlZFN0
eWxlUGFuZSkKICAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUi
LCB0aGlzLl9jb250ZXh0TWVudUV2ZW50RmlyZWQuYmluZCh0aGlzKSwgdHJ1ZSk7CiB9CiAKK1dl
Ykluc3BlY3Rvci5TdHlsZXNTaWRlYmFyUGFuZS5TdHlsZVZhbHVlRGVsaW1pdGVycyA9ICIgXHRc
blwiJzo7LC8oKSI7CisKIC8vIFRha2VuIGZyb20gaHR0cDovL3d3dy53My5vcmcvVFIvQ1NTMjEv
cHJvcGlkeC5odG1sLgogV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQYW5lLkluaGVyaXRlZFBy
b3BlcnRpZXMgPSBbCiAgICAgImF6aW11dGgiLCAiYm9yZGVyLWNvbGxhcHNlIiwgImJvcmRlci1z
cGFjaW5nIiwgImNhcHRpb24tc2lkZSIsICJjb2xvciIsICJjdXJzb3IiLCAiZGlyZWN0aW9uIiwg
ImVsZXZhdGlvbiIsCkBAIC0xMzc5LDYgKzEzODEsOCBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9w
ZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgfQogCiAgICAgICAgIHRoaXMu
bGlzdEl0ZW1FbGVtZW50LnJlbW92ZUNoaWxkcmVuKCk7CisgICAgICAgIG5hbWVFbGVtZW50Lm5v
cm1hbGl6ZSgpOworICAgICAgICB2YWx1ZUVsZW1lbnQubm9ybWFsaXplKCk7CiAKICAgICAgICAg
aWYgKCF0aGlzLnRyZWVPdXRsaW5lKQogICAgICAgICAgICAgcmV0dXJuOwpAQCAtMTUyOSwxNiAr
MTUzMywxNSBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlw
ZSA9IHsKICAgICAgICAgdmFyIGNvbnRleHQgPSB7CiAgICAgICAgICAgICBleHBhbmRlZDogdGhp
cy5leHBhbmRlZCwKICAgICAgICAgICAgIGhhc0NoaWxkcmVuOiB0aGlzLmhhc0NoaWxkcmVuLAot
ICAgICAgICAgICAga2V5RG93bkxpc3RlbmVyOiBpc0VkaXRpbmdOYW1lID8gdGhpcy5lZGl0aW5n
TmFtZUtleURvd24uYmluZCh0aGlzKSA6IHRoaXMuZWRpdGluZ1ZhbHVlS2V5RG93bi5iaW5kKHRo
aXMpLAotICAgICAgICAgICAga2V5UHJlc3NMaXN0ZW5lcjogaXNFZGl0aW5nTmFtZSA/IHRoaXMu
ZWRpdGluZ05hbWVLZXlQcmVzcy5iaW5kKHRoaXMpIDogdGhpcy5lZGl0aW5nVmFsdWVLZXlQcmVz
cy5iaW5kKHRoaXMpLAorICAgICAgICAgICAga2V5RG93bkxpc3RlbmVyOiBpc0VkaXRpbmdOYW1l
ID8gbnVsbCA6IHRoaXMuZWRpdGluZ1ZhbHVlS2V5RG93bi5iaW5kKHRoaXMpLAogICAgICAgICAg
ICAgaXNFZGl0aW5nTmFtZTogaXNFZGl0aW5nTmFtZSwKICAgICAgICAgfTsKIAogICAgICAgICAv
LyBMaWUgYWJvdXQgb3VyIGNoaWxkcmVuIHRvIHByZXZlbnQgZXhwYW5kaW5nIG9uIGRvdWJsZSBj
bGljayBhbmQgdG8gY29sbGFwc2Ugc2hvcnRoYW5kcy4KICAgICAgICAgdGhpcy5oYXNDaGlsZHJl
biA9IGZhbHNlOwogCi0gICAgICAgIHNlbGVjdEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5
ZG93biIsIGNvbnRleHQua2V5RG93bkxpc3RlbmVyLCBmYWxzZSk7Ci0gICAgICAgIHNlbGVjdEVs
ZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5cHJlc3MiLCBjb250ZXh0LmtleVByZXNzTGlzdGVu
ZXIsIGZhbHNlKTsKKyAgICAgICAgaWYgKCFpc0VkaXRpbmdOYW1lKQorICAgICAgICAgICAgc2Vs
ZWN0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgY29udGV4dC5rZXlEb3duTGlz
dGVuZXIsIGZhbHNlKTsKICAgICAgICAgaWYgKHNlbGVjdEVsZW1lbnQucGFyZW50RWxlbWVudCkK
ICAgICAgICAgICAgIHNlbGVjdEVsZW1lbnQucGFyZW50RWxlbWVudC5hZGRTdHlsZUNsYXNzKCJj
aGlsZC1lZGl0aW5nIik7CiAgICAgICAgIHNlbGVjdEVsZW1lbnQudGV4dENvbnRlbnQgPSBzZWxl
Y3RFbGVtZW50LnRleHRDb250ZW50OyAvLyByZW1vdmUgY29sb3Igc3dhdGNoIGFuZCB0aGUgbGlr
ZQpAQCAtMTYxMyw3NiArMTYxNiwxNSBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVF
bGVtZW50LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIGN1c3RvbUZpbmlzaEhhbmRsZXI6IG5h
bWVWYWx1ZUZpbmlzaEhhbmRsZXIuYmluZCh0aGlzLCBjb250ZXh0LCBpc0VkaXRpbmdOYW1lKSwK
ICAgICAgICAgICAgIHBhc3RlSGFuZGxlcjogaXNFZGl0aW5nTmFtZSA/IHBhc3RlSGFuZGxlci5i
aW5kKHRoaXMsIGNvbnRleHQpIDogbnVsbAogICAgICAgICB9KTsKLSAgICAgICAgd2luZG93Lmdl
dFNlbGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoc2VsZWN0RWxlbWVudCwgMCwgc2VsZWN0RWxl
bWVudCwgMSk7Ci0gICAgfSwKLQotICAgIGVkaXRpbmdOYW1lS2V5UHJlc3M6IGZ1bmN0aW9uKGV2
ZW50KQotICAgIHsKLSAgICAgICAgLy8gQ29tcGxldGUgcHJvcGVydHkgbmFtZXMuCi0gICAgICAg
IHZhciBjaGFyYWN0ZXIgPSBldmVudC5kYXRhLnRvTG93ZXJDYXNlKCk7Ci0gICAgICAgIGlmIChj
aGFyYWN0ZXIgJiYgL1thLXotXS8udGVzdChjaGFyYWN0ZXIpKSB7Ci0gICAgICAgICAgICB2YXIg
c2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOwotICAgICAgICAgICAgdmFyIHByZWZp
eCA9IHNlbGVjdGlvbi5hbmNob3JOb2RlLnRleHRDb250ZW50LnN1YnN0cmluZygwLCBzZWxlY3Rp
b24uYW5jaG9yT2Zmc2V0KTsKLSAgICAgICAgICAgIHZhciBwcm9wZXJ0eSA9IFdlYkluc3BlY3Rv
ci5jc3NOYW1lQ29tcGxldGlvbnMuZmlyc3RTdGFydHNXaXRoKHByZWZpeCArIGNoYXJhY3Rlcik7
CiAKLSAgICAgICAgICAgIGlmICghc2VsZWN0aW9uLmlzQ29sbGFwc2VkKQotICAgICAgICAgICAg
ICAgIHNlbGVjdGlvbi5kZWxldGVGcm9tRG9jdW1lbnQoKTsKLQotICAgICAgICAgICAgdGhpcy5y
ZXN0b3JlTmFtZUVsZW1lbnQoKTsKLQotICAgICAgICAgICAgaWYgKHByb3BlcnR5KSB7Ci0gICAg
ICAgICAgICAgICAgaWYgKHByb3BlcnR5ICE9PSB0aGlzLm5hbWVFbGVtZW50LnRleHRDb250ZW50
KQotICAgICAgICAgICAgICAgICAgICB0aGlzLm5hbWVFbGVtZW50LnRleHRDb250ZW50ID0gcHJv
cGVydHk7Ci0gICAgICAgICAgICAgICAgdGhpcy5uYW1lRWxlbWVudC5maXJzdENoaWxkLnNlbGVj
dChwcmVmaXgubGVuZ3RoICsgMSk7Ci0gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1
bHQoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0sCi0KLSAgICBlZGl0aW5nVmFs
dWVLZXlQcmVzczogZnVuY3Rpb24oZXZlbnQpCi0gICAgewotICAgICAgICAvLyBGSVhNRTogVGhp
cyBzaG91bGQgY29tcGxldGUgcHJvcGVydHkgdmFsdWVzLgotICAgIH0sCi0KLSAgICBlZGl0aW5n
TmFtZUtleURvd246IGZ1bmN0aW9uKGV2ZW50KQotICAgIHsKLSAgICAgICAgdmFyIHNob3dOZXh0
OwotICAgICAgICBpZiAoZXZlbnQua2V5SWRlbnRpZmllciA9PT0gIlVwIikKLSAgICAgICAgICAg
IHNob3dOZXh0ID0gZmFsc2U7Ci0gICAgICAgIGVsc2UgaWYgKGV2ZW50LmtleUlkZW50aWZpZXIg
PT09ICJEb3duIikKLSAgICAgICAgICAgIHNob3dOZXh0ID0gdHJ1ZTsKLSAgICAgICAgZWxzZQot
ICAgICAgICAgICAgcmV0dXJuOwotCi0gICAgICAgIHZhciBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0
U2VsZWN0aW9uKCk7Ci0gICAgICAgIGlmICghc2VsZWN0aW9uLnJhbmdlQ291bnQpCi0gICAgICAg
ICAgICByZXR1cm47Ci0KLSAgICAgICAgdmFyIHNlbGVjdGlvblJhbmdlID0gc2VsZWN0aW9uLmdl
dFJhbmdlQXQoMCk7Ci0gICAgICAgIGlmIChzZWxlY3Rpb25SYW5nZS5jb21tb25BbmNlc3RvckNv
bnRhaW5lciAhPT0gdGhpcy5uYW1lRWxlbWVudCAmJiAhc2VsZWN0aW9uUmFuZ2UuY29tbW9uQW5j
ZXN0b3JDb250YWluZXIuaXNEZXNjZW5kYW50KHRoaXMubmFtZUVsZW1lbnQpKQotICAgICAgICAg
ICAgcmV0dXJuOwotCi0gICAgICAgIGNvbnN0IHN0eWxlVmFsdWVEZWxpbWV0ZXJzID0gIiBcdFxu
XCInOjssLygpIjsKLSAgICAgICAgdmFyIHdvcmRSYW5nZSA9IHNlbGVjdGlvblJhbmdlLnN0YXJ0
Q29udGFpbmVyLnJhbmdlT2ZXb3JkKHNlbGVjdGlvblJhbmdlLnN0YXJ0T2Zmc2V0LCBzdHlsZVZh
bHVlRGVsaW1ldGVycywgdGhpcy5uYW1lRWxlbWVudCk7Ci0gICAgICAgIHZhciB3b3JkU3RyaW5n
ID0gd29yZFJhbmdlLnRvU3RyaW5nKCk7Ci0gICAgICAgIHZhciBjdXJzb3JQb3NpdGlvbiA9IHNl
bGVjdGlvblJhbmdlLnN0YXJ0T2Zmc2V0ICE9IHNlbGVjdGlvblJhbmdlLmVuZE9mZnNldCA/IHNl
bGVjdGlvblJhbmdlLnN0YXJ0T2Zmc2V0IDogMDsKLSAgICAgICAgdmFyIHByZWZpeCA9IHNlbGVj
dGlvblJhbmdlLnN0YXJ0Q29udGFpbmVyLnRleHRDb250ZW50LnN1YnN0cmluZygwLCBjdXJzb3JQ
b3NpdGlvbik7Ci0gICAgICAgIHZhciBwcm9wZXJ0eTsKLQotICAgICAgICBpZiAoc2hvd05leHQp
Ci0gICAgICAgICAgICBwcm9wZXJ0eSA9IFdlYkluc3BlY3Rvci5jc3NOYW1lQ29tcGxldGlvbnMu
bmV4dCh3b3JkU3RyaW5nLCBwcmVmaXgpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBwcm9w
ZXJ0eSA9IFdlYkluc3BlY3Rvci5jc3NOYW1lQ29tcGxldGlvbnMucHJldmlvdXMod29yZFN0cmlu
ZywgcHJlZml4KTsKLQotICAgICAgICBpZiAocHJvcGVydHkpIHsKLSAgICAgICAgICAgIHRoaXMu
bmFtZUVsZW1lbnQudGV4dENvbnRlbnQgPSBwcm9wZXJ0eTsKLSAgICAgICAgICAgIHRoaXMubmFt
ZUVsZW1lbnQuZmlyc3RDaGlsZC5zZWxlY3QoY3Vyc29yUG9zaXRpb24pOwotICAgICAgICB9Ci0g
ICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CisgICAgICAgIHRoaXMuX3Byb21wdCA9IG5l
dyBXZWJJbnNwZWN0b3IuU3R5bGVzU2lkZWJhclBhbmUuQ1NTUHJvcGVydHlQcm9tcHQoc2VsZWN0
RWxlbWVudCwgaXNFZGl0aW5nTmFtZSA/IFdlYkluc3BlY3Rvci5jc3NOYW1lQ29tcGxldGlvbnMg
OiBXZWJJbnNwZWN0b3IuQ1NTS2V5d29yZENvbXBsZXRpb25zLmZvclByb3BlcnR5KHRoaXMubmFt
ZSkpOworICAgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuc2V0QmFzZUFuZEV4dGVudChzZWxl
Y3RFbGVtZW50LCAwLCBzZWxlY3RFbGVtZW50LCAxKTsKICAgICB9LAogCiAgICAgZWRpdGluZ1Zh
bHVlS2V5RG93bjogZnVuY3Rpb24oZXZlbnQpCiAgICAgeworICAgICAgICBpZiAoZXZlbnQuaGFu
ZGxlZCkKKyAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgdmFyIGFycm93S2V5UHJlc3NlZCA9
IChldmVudC5rZXlJZGVudGlmaWVyID09PSAiVXAiIHx8IGV2ZW50LmtleUlkZW50aWZpZXIgPT09
ICJEb3duIik7CiAgICAgICAgIHZhciBwYWdlS2V5UHJlc3NlZCA9IChldmVudC5rZXlJZGVudGlm
aWVyID09PSAiUGFnZVVwIiB8fCBldmVudC5rZXlJZGVudGlmaWVyID09PSAiUGFnZURvd24iKTsK
ICAgICAgICAgaWYgKCFhcnJvd0tleVByZXNzZWQgJiYgIXBhZ2VLZXlQcmVzc2VkKQpAQCAtMTY5
Niw4ICsxNjM4LDcgQEAgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVlRWxlbWVudC5wcm90
b3R5cGUgPSB7CiAgICAgICAgIGlmIChzZWxlY3Rpb25SYW5nZS5jb21tb25BbmNlc3RvckNvbnRh
aW5lciAhPT0gdGhpcy52YWx1ZUVsZW1lbnQgJiYgIXNlbGVjdGlvblJhbmdlLmNvbW1vbkFuY2Vz
dG9yQ29udGFpbmVyLmlzRGVzY2VuZGFudCh0aGlzLnZhbHVlRWxlbWVudCkpCiAgICAgICAgICAg
ICByZXR1cm47CiAKLSAgICAgICAgY29uc3Qgc3R5bGVWYWx1ZURlbGltZXRlcnMgPSAiIFx0XG5c
Iic6OywvKCkiOwotICAgICAgICB2YXIgd29yZFJhbmdlID0gc2VsZWN0aW9uUmFuZ2Uuc3RhcnRD
b250YWluZXIucmFuZ2VPZldvcmQoc2VsZWN0aW9uUmFuZ2Uuc3RhcnRPZmZzZXQsIHN0eWxlVmFs
dWVEZWxpbWV0ZXJzLCB0aGlzLnZhbHVlRWxlbWVudCk7CisgICAgICAgIHZhciB3b3JkUmFuZ2Ug
PSBzZWxlY3Rpb25SYW5nZS5zdGFydENvbnRhaW5lci5yYW5nZU9mV29yZChzZWxlY3Rpb25SYW5n
ZS5zdGFydE9mZnNldCwgV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQYW5lLlN0eWxlVmFsdWVE
ZWxpbWl0ZXJzLCB0aGlzLnZhbHVlRWxlbWVudCk7CiAgICAgICAgIHZhciB3b3JkU3RyaW5nID0g
d29yZFJhbmdlLnRvU3RyaW5nKCk7CiAgICAgICAgIHZhciByZXBsYWNlbWVudFN0cmluZyA9IHdv
cmRTdHJpbmc7CiAKQEAgLTE3MzksNTAgKzE2ODAsNTMgQEAgV2ViSW5zcGVjdG9yLlN0eWxlUHJv
cGVydHlUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB9CiAKICAgICAgICAg
ICAgIHJlcGxhY2VtZW50U3RyaW5nID0gcHJlZml4ICsgbnVtYmVyICsgc3VmZml4OwotICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIGN5Y2xlIHRocm91
Z2gga25vd24ga2V5d29yZHMgZm9yIHRoZSBjdXJyZW50IHByb3BlcnR5IHZhbHVlLgotICAgICAg
ICB9CiAKLSAgICAgICAgdmFyIHJlcGxhY2VtZW50VGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVU
ZXh0Tm9kZShyZXBsYWNlbWVudFN0cmluZyk7CisgICAgICAgICAgICB2YXIgcmVwbGFjZW1lbnRU
ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHJlcGxhY2VtZW50U3RyaW5nKTsKIAot
ICAgICAgICB3b3JkUmFuZ2UuZGVsZXRlQ29udGVudHMoKTsKLSAgICAgICAgd29yZFJhbmdlLmlu
c2VydE5vZGUocmVwbGFjZW1lbnRUZXh0Tm9kZSk7CisgICAgICAgICAgICB3b3JkUmFuZ2UuZGVs
ZXRlQ29udGVudHMoKTsKKyAgICAgICAgICAgIHdvcmRSYW5nZS5pbnNlcnROb2RlKHJlcGxhY2Vt
ZW50VGV4dE5vZGUpOwogCi0gICAgICAgIHZhciBmaW5hbFNlbGVjdGlvblJhbmdlID0gZG9jdW1l
bnQuY3JlYXRlUmFuZ2UoKTsKLSAgICAgICAgZmluYWxTZWxlY3Rpb25SYW5nZS5zZXRTdGFydChy
ZXBsYWNlbWVudFRleHROb2RlLCAwKTsKLSAgICAgICAgZmluYWxTZWxlY3Rpb25SYW5nZS5zZXRF
bmQocmVwbGFjZW1lbnRUZXh0Tm9kZSwgcmVwbGFjZW1lbnRTdHJpbmcubGVuZ3RoKTsKKyAgICAg
ICAgICAgIHZhciBmaW5hbFNlbGVjdGlvblJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsK
KyAgICAgICAgICAgIGZpbmFsU2VsZWN0aW9uUmFuZ2Uuc2V0U3RhcnQocmVwbGFjZW1lbnRUZXh0
Tm9kZSwgMCk7CisgICAgICAgICAgICBmaW5hbFNlbGVjdGlvblJhbmdlLnNldEVuZChyZXBsYWNl
bWVudFRleHROb2RlLCByZXBsYWNlbWVudFN0cmluZy5sZW5ndGgpOwogCi0gICAgICAgIHNlbGVj
dGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKLSAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKGZpbmFs
U2VsZWN0aW9uUmFuZ2UpOworICAgICAgICAgICAgc2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygp
OworICAgICAgICAgICAgc2VsZWN0aW9uLmFkZFJhbmdlKGZpbmFsU2VsZWN0aW9uUmFuZ2UpOwog
Ci0gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CisgICAgICAgICAgICBldmVudC5oYW5k
bGVkID0gdHJ1ZTsKKyAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CiAKLSAgICAg
ICAgaWYgKCEoIm9yaWdpbmFsUHJvcGVydHlUZXh0IiBpbiB0aGlzKSkgewotICAgICAgICAgICAg
Ly8gUmVtZW1iZXIgdGhlIHJ1bGUncyBvcmlnaW5hbCBDU1MgdGV4dCBvbiBbUGFnZV0oVXB8RG93
biksIHNvIGl0IGNhbiBiZSByZXN0b3JlZAotICAgICAgICAgICAgLy8gaWYgdGhlIGVkaXRpbmcg
aXMgY2FuY2VsZWQuCi0gICAgICAgICAgICB0aGlzLm9yaWdpbmFsUHJvcGVydHlUZXh0ID0gdGhp
cy5wcm9wZXJ0eS5wcm9wZXJ0eVRleHQ7Ci0gICAgICAgIH0KKyAgICAgICAgICAgIGlmICghKCJv
cmlnaW5hbFByb3BlcnR5VGV4dCIgaW4gdGhpcykpIHsKKyAgICAgICAgICAgICAgICAvLyBSZW1l
bWJlciB0aGUgcnVsZSdzIG9yaWdpbmFsIENTUyB0ZXh0IG9uIFtQYWdlXShVcHxEb3duKSwgc28g
aXQgY2FuIGJlIHJlc3RvcmVkCisgICAgICAgICAgICAgICAgLy8gaWYgdGhlIGVkaXRpbmcgaXMg
Y2FuY2VsZWQuCisgICAgICAgICAgICAgICAgdGhpcy5vcmlnaW5hbFByb3BlcnR5VGV4dCA9IHRo
aXMucHJvcGVydHkucHJvcGVydHlUZXh0OworICAgICAgICAgICAgfQogCi0gICAgICAgIC8vIFN5
bnRoZXNpemUgcHJvcGVydHkgdGV4dCBkaXNyZWdhcmRpbmcgYW55IGNvbW1lbnRzLCBjdXN0b20g
d2hpdGVzcGFjZSBldGMuCi0gICAgICAgIHRoaXMuYXBwbHlTdHlsZVRleHQodGhpcy5uYW1lRWxl
bWVudC50ZXh0Q29udGVudCArICI6ICIgKyB0aGlzLnZhbHVlRWxlbWVudC50ZXh0Q29udGVudCk7
CisgICAgICAgICAgICAvLyBTeW50aGVzaXplIHByb3BlcnR5IHRleHQgZGlzcmVnYXJkaW5nIGFu
eSBjb21tZW50cywgY3VzdG9tIHdoaXRlc3BhY2UgZXRjLgorICAgICAgICAgICAgdGhpcy5hcHBs
eVN0eWxlVGV4dCh0aGlzLm5hbWVFbGVtZW50LnRleHRDb250ZW50ICsgIjogIiArIHRoaXMudmFs
dWVFbGVtZW50LnRleHRDb250ZW50KTsKKyAgICAgICAgfQogICAgIH0sCiAKICAgICBlZGl0aW5n
RW5kZWQ6IGZ1bmN0aW9uKGNvbnRleHQpCiAgICAgeworICAgICAgICBpZiAodGhpcy5fcHJvbXB0
KQorICAgICAgICAgICAgdGhpcy5fcHJvbXB0LmNsZWFyQXV0b0NvbXBsZXRlKHRydWUpOwogICAg
ICAgICB0aGlzLmhhc0NoaWxkcmVuID0gY29udGV4dC5oYXNDaGlsZHJlbjsKICAgICAgICAgaWYg
KGNvbnRleHQuZXhwYW5kZWQpCiAgICAgICAgICAgICB0aGlzLmV4cGFuZCgpOwogICAgICAgICB2
YXIgZWRpdGVkRWxlbWVudCA9IGNvbnRleHQuaXNFZGl0aW5nTmFtZSA/IHRoaXMubmFtZUVsZW1l
bnQgOiB0aGlzLnZhbHVlRWxlbWVudDsKLSAgICAgICAgZWRpdGVkRWxlbWVudC5yZW1vdmVFdmVu
dExpc3RlbmVyKCJrZXlkb3duIiwgY29udGV4dC5rZXlEb3duTGlzdGVuZXIsIGZhbHNlKTsKLSAg
ICAgICAgZWRpdGVkRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlwcmVzcyIsIGNvbnRl
eHQua2V5UHJlc3NMaXN0ZW5lciwgZmFsc2UpOworICAgICAgICBpZiAoIWNvbnRleHQuaXNFZGl0
aW5nTmFtZSkKKyAgICAgICAgICAgIGVkaXRlZEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigi
a2V5ZG93biIsIGNvbnRleHQua2V5RG93bkxpc3RlbmVyLCBmYWxzZSk7CiAgICAgICAgIGlmIChl
ZGl0ZWRFbGVtZW50LnBhcmVudEVsZW1lbnQpCiAgICAgICAgICAgICBlZGl0ZWRFbGVtZW50LnBh
cmVudEVsZW1lbnQucmVtb3ZlU3R5bGVDbGFzcygiY2hpbGQtZWRpdGluZyIpOwogCiAgICAgICAg
IGRlbGV0ZSB0aGlzLm9yaWdpbmFsUHJvcGVydHlUZXh0OworICAgICAgICBkZWxldGUgdGhpcy5f
cHJvbXB0OwogICAgIH0sCiAKICAgICBlZGl0aW5nQ2FuY2VsbGVkOiBmdW5jdGlvbihlbGVtZW50
LCBjb250ZXh0KQogICAgIHsKKyAgICAgICAgdGhpcy5lZGl0aW5nRW5kZWQoY29udGV4dCk7CiAg
ICAgICAgIGlmICgib3JpZ2luYWxQcm9wZXJ0eVRleHQiIGluIHRoaXMpCiAgICAgICAgICAgICB0
aGlzLmFwcGx5U3R5bGVUZXh0KHRoaXMub3JpZ2luYWxQcm9wZXJ0eVRleHQsIHRydWUpOwogICAg
ICAgICBlbHNlIHsKQEAgLTE3OTEsNyArMTczNSw2IEBAIFdlYkluc3BlY3Rvci5TdHlsZVByb3Bl
cnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICAgICAgZWxzZQogICAgICAgICAg
ICAgICAgIHRoaXMudXBkYXRlVGl0bGUoKTsKICAgICAgICAgfQotICAgICAgICB0aGlzLmVkaXRp
bmdFbmRlZChjb250ZXh0KTsKICAgICB9LAogCiAgICAgZWRpdGluZ0NvbW1pdHRlZDogZnVuY3Rp
b24oZWxlbWVudCwgdXNlcklucHV0LCBwcmV2aW91c0NvbnRlbnQsIGNvbnRleHQsIG1vdmVEaXJl
Y3Rpb24pCkBAIC0xOTQ4LDMgKzE4OTEsNTggQEAgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlU
cmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiB9CiAKIFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5
VHJlZUVsZW1lbnQucHJvdG90eXBlLl9fcHJvdG9fXyA9IFRyZWVFbGVtZW50LnByb3RvdHlwZTsK
KworV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQYW5lLkNTU1Byb3BlcnR5UHJvbXB0ID0gZnVu
Y3Rpb24oZWxlbWVudCwgY3NzQ29tcGxldGlvbnMpCit7CisgICAgV2ViSW5zcGVjdG9yLlRleHRQ
cm9tcHQuY2FsbCh0aGlzLCBlbGVtZW50LCB0aGlzLl9idWlsZFByb3BlcnR5Q29tcGxldGlvbnMu
YmluZCh0aGlzKSwgV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQYW5lLlN0eWxlVmFsdWVEZWxp
bWl0ZXJzLCB0cnVlKTsKKyAgICB0aGlzLl9jc3NDb21wbGV0aW9ucyA9IGNzc0NvbXBsZXRpb25z
OworfQorCitXZWJJbnNwZWN0b3IuU3R5bGVzU2lkZWJhclBhbmUuQ1NTUHJvcGVydHlQcm9tcHQu
cHJvdG90eXBlID0geworCisgICAgdXBLZXlQcmVzc2VkOiBmdW5jdGlvbihldmVudCkKKyAgICB7
CisgICAgICAgIHRoaXMuX2hhbmRsZU5hbWVPclZhbHVlVXBEb3duKGV2ZW50KTsKKyAgICB9LAor
CisgICAgZG93bktleVByZXNzZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhp
cy5faGFuZGxlTmFtZU9yVmFsdWVVcERvd24oZXZlbnQpOworICAgIH0sCisKKyAgICB0YWJLZXlQ
cmVzc2VkOiBmdW5jdGlvbihldmVudCkKKyAgICB7CisgICAgICAgIHRoaXMuYWNjZXB0QXV0b0Nv
bXBsZXRlKCk7CisgICAgfSwKKworICAgIF9oYW5kbGVOYW1lT3JWYWx1ZVVwRG93bjogZnVuY3Rp
b24oZXZlbnQpCisgICAgeworICAgICAgICB2YXIgcmV2ZXJzZSA9IGV2ZW50LmtleUlkZW50aWZp
ZXIgPT09ICJVcCI7CisgICAgICAgIGlmICh0aGlzLmF1dG9Db21wbGV0ZUVsZW1lbnQpCisgICAg
ICAgICAgICB0aGlzLmNvbXBsZXRlKGZhbHNlLCByZXZlcnNlKTsgLy8gQWNjZXB0IHRoZSBjdXJy
ZW50IHN1Z2dlc3Rpb24sIGlmIGFueS4KKyAgICAgICAgdGhpcy5jb21wbGV0ZShmYWxzZSwgcmV2
ZXJzZSk7IC8vIEFjdHVhbGx5IGluY3JlbWVudC9kZWNyZW1lbnQgdGhlIHN1Z2dlc3Rpb24uCisg
ICAgICAgIGV2ZW50LmhhbmRsZWQgPSB0cnVlOworICAgIH0sCisKKyAgICBfYnVpbGRQcm9wZXJ0
eUNvbXBsZXRpb25zOiBmdW5jdGlvbih3b3JkUmFuZ2UsIGJlc3RNYXRjaE9ubHksIGNvbXBsZXRp
b25zUmVhZHlDYWxsYmFjaykKKyAgICB7CisgICAgICAgIHZhciBwcmVmaXggPSB3b3JkUmFuZ2Uu
dG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpOworICAgICAgICBpZiAoIXByZWZpeC5sZW5ndGgpCisg
ICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgdmFyIHJlc3VsdHM7CisgICAgICAgIGlmIChi
ZXN0TWF0Y2hPbmx5KSB7CisgICAgICAgICAgICByZXN1bHRzID0gW107CisgICAgICAgICAgICB2
YXIgZmlyc3RNYXRjaCA9IHRoaXMuX2Nzc0NvbXBsZXRpb25zLmZpcnN0U3RhcnRzV2l0aChwcmVm
aXgpOworICAgICAgICAgICAgaWYgKGZpcnN0TWF0Y2gpCisgICAgICAgICAgICAgICAgcmVzdWx0
cy5wdXNoKGZpcnN0TWF0Y2gpOworICAgICAgICAgICAgcmV0dXJuIGNvbXBsZXRpb25zUmVhZHlD
YWxsYmFjayhyZXN1bHRzKTsKKyAgICAgICAgfQorCisgICAgICAgIHJlc3VsdHMgPSB0aGlzLl9j
c3NDb21wbGV0aW9ucy5zdGFydHNXaXRoKHByZWZpeCk7CisgICAgICAgIGlmIChyZXN1bHRzKQor
ICAgICAgICAgICAgY29tcGxldGlvbnNSZWFkeUNhbGxiYWNrKHJlc3VsdHMpOworICAgIH0KK30K
KworV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGViYXJQYW5lLkNTU1Byb3BlcnR5UHJvbXB0LnByb3Rv
dHlwZS5fX3Byb3RvX18gPSBXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90b3R5cGU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRQcm9tcHQuanMg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRQcm9tcHQuanMKaW5kZXgg
MjFhNWJkZS4uZDlhZTVmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9UZXh0UHJvbXB0LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvVGV4dFByb21wdC5qcwpAQCAtMjYsMTQgKzI2LDE2IEBACiAgKiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLVdlYkluc3BlY3Rvci5UZXh0UHJvbXB0ID0gZnVuY3Rpb24oZWxlbWVudCwgY29tcGxldGlv
bnMsIHN0b3BDaGFyYWN0ZXJzKQorV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQgPSBmdW5jdGlvbihl
bGVtZW50LCBjb21wbGV0aW9ucywgc3RvcENoYXJhY3RlcnMsIG9taXRIaXN0b3J5KQogewogICAg
IHRoaXMuZWxlbWVudCA9IGVsZW1lbnQ7CiAgICAgdGhpcy5lbGVtZW50LmFkZFN0eWxlQ2xhc3Mo
InRleHQtcHJvbXB0Iik7CiAgICAgdGhpcy5jb21wbGV0aW9ucyA9IGNvbXBsZXRpb25zOwogICAg
IHRoaXMuY29tcGxldGlvblN0b3BDaGFyYWN0ZXJzID0gc3RvcENoYXJhY3RlcnM7Ci0gICAgdGhp
cy5oaXN0b3J5ID0gW107Ci0gICAgdGhpcy5oaXN0b3J5T2Zmc2V0ID0gMDsKKyAgICBpZiAoIW9t
aXRIaXN0b3J5KSB7CisgICAgICAgIHRoaXMuaGlzdG9yeSA9IFtdOworICAgICAgICB0aGlzLmhp
c3RvcnlPZmZzZXQgPSAwOworICAgIH0KICAgICB0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5l
cigia2V5ZG93biIsIHRoaXMuX29uS2V5RG93bi5iaW5kKHRoaXMpLCB0cnVlKTsKIH0KIApAQCAt
NjMsMTYgKzY1LDIwIEBAIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKICAg
ICAgICAgICAgIHRoaXMuYXV0b0NvbXBsZXRlU29vbigpOwogICAgICAgICB9CiAKKyAgICAgICAg
aWYgKGV2ZW50LmhhbmRsZWQpCisgICAgICAgICAgICByZXR1cm47CisKICAgICAgICAgdmFyIGhh
bmRsZWQgPSBmYWxzZTsKKwogICAgICAgICBzd2l0Y2ggKGV2ZW50LmtleUlkZW50aWZpZXIpIHsK
ICAgICAgICAgICAgIGNhc2UgIlVwIjoKLSAgICAgICAgICAgICAgICB0aGlzLl91cEtleVByZXNz
ZWQoZXZlbnQpOworICAgICAgICAgICAgICAgIHRoaXMudXBLZXlQcmVzc2VkKGV2ZW50KTsKICAg
ICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgIkRvd24iOgotICAgICAgICAg
ICAgICAgIHRoaXMuX2Rvd25LZXlQcmVzc2VkKGV2ZW50KTsKKyAgICAgICAgICAgICAgICB0aGlz
LmRvd25LZXlQcmVzc2VkKGV2ZW50KTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAg
ICAgIGNhc2UgIlUrMDAwOSI6IC8vIFRhYgotICAgICAgICAgICAgICAgIHRoaXMuX3RhYktleVBy
ZXNzZWQoZXZlbnQpOworICAgICAgICAgICAgICAgIHRoaXMudGFiS2V5UHJlc3NlZChldmVudCk7
CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlICJSaWdodCI6CiAgICAg
ICAgICAgICBjYXNlICJFbmQiOgpAQCAtODUsNyArOTEsNyBAQCBXZWJJbnNwZWN0b3IuVGV4dFBy
b21wdC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICBjYXNlICJDb250cm9sIjoKICAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgIlUrMDA1MCI6IC8vIEN0cmwrUCA9IFBy
ZXZpb3VzCi0gICAgICAgICAgICAgICAgaWYgKFdlYkluc3BlY3Rvci5pc01hYygpICYmIGV2ZW50
LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50LmFsdEtleSAmJiAhZXZlbnQuc2hp
ZnRLZXkpIHsKKyAgICAgICAgICAgICAgICBpZiAodGhpcy5oaXN0b3J5ICYmIFdlYkluc3BlY3Rv
ci5pc01hYygpICYmIGV2ZW50LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50LmFs
dEtleSAmJiAhZXZlbnQuc2hpZnRLZXkpIHsKICAgICAgICAgICAgICAgICAgICAgaGFuZGxlZCA9
IHRydWU7CiAgICAgICAgICAgICAgICAgICAgIHRoaXMuX21vdmVCYWNrSW5IaXN0b3J5KCk7CiAg
ICAgICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtOTMsNyArOTksNyBAQCBXZWJJbnNwZWN0b3Iu
VGV4dFByb21wdC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICAgICAgZGVmYXVsdEFjdGlvbi5j
YWxsKHRoaXMpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2FzZSAiVSsw
MDRFIjogLy8gQ3RybCtOID0gTmV4dAotICAgICAgICAgICAgICAgIGlmIChXZWJJbnNwZWN0b3Iu
aXNNYWMoKSAmJiBldmVudC5jdHJsS2V5ICYmICFldmVudC5tZXRhS2V5ICYmICFldmVudC5hbHRL
ZXkgJiYgIWV2ZW50LnNoaWZ0S2V5KSB7CisgICAgICAgICAgICAgICAgaWYgKHRoaXMuaGlzdG9y
eSAmJiBXZWJJbnNwZWN0b3IuaXNNYWMoKSAmJiBldmVudC5jdHJsS2V5ICYmICFldmVudC5tZXRh
S2V5ICYmICFldmVudC5hbHRLZXkgJiYgIWV2ZW50LnNoaWZ0S2V5KSB7CiAgICAgICAgICAgICAg
ICAgICAgIGhhbmRsZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICB0aGlzLl9tb3ZlRm9y
d2FyZEluSGlzdG9yeSgpOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTEwNSw3ICsx
MTEsOSBAQCBXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90b3R5cGUgPSB7CiAgICAgICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgIH0KIAorICAgICAgICBoYW5kbGVkIHw9IGV2ZW50LmhhbmRs
ZWQ7CiAgICAgICAgIGlmIChoYW5kbGVkKSB7CisgICAgICAgICAgICBldmVudC5oYW5kbGVkID0g
dHJ1ZTsKICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgICBl
dmVudC5zdG9wUHJvcGFnYXRpb24oKTsKICAgICAgICAgfQpAQCAtMzc2LDM5ICszODQsMzMgQEAg
V2ViSW5zcGVjdG9yLlRleHRQcm9tcHQucHJvdG90eXBlID0gewogICAgICAgICBzZWxlY3Rpb24u
YWRkUmFuZ2Uoc2VsZWN0aW9uUmFuZ2UpOwogICAgIH0sCiAKLSAgICBfdGFiS2V5UHJlc3NlZDog
ZnVuY3Rpb24oZXZlbnQpCisgICAgdGFiS2V5UHJlc3NlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAg
ewotICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwotICAgICAgICBldmVudC5zdG9wUHJv
cGFnYXRpb24oKTsKLQorICAgICAgICBldmVudC5oYW5kbGVkID0gdHJ1ZTsKICAgICAgICAgdGhp
cy5jb21wbGV0ZShmYWxzZSwgZXZlbnQuc2hpZnRLZXkpOwogICAgIH0sCiAKLSAgICBfdXBLZXlQ
cmVzc2VkOiBmdW5jdGlvbihldmVudCkKKyAgICB1cEtleVByZXNzZWQ6IGZ1bmN0aW9uKGV2ZW50
KQogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLmlzQ2FyZXRPbkZpcnN0TGluZSgpKQogICAgICAg
ICAgICAgcmV0dXJuOwogCi0gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7Ci0gICAgICAg
IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwotCisgICAgICAgIGV2ZW50LmhhbmRsZWQgPSB0cnVl
OwogICAgICAgICB0aGlzLl9tb3ZlQmFja0luSGlzdG9yeSgpOwogICAgIH0sCiAKLSAgICBfZG93
bktleVByZXNzZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIGRvd25LZXlQcmVzc2VkOiBmdW5jdGlv
bihldmVudCkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5pc0NhcmV0T25MYXN0TGluZSgpKQog
ICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7Ci0g
ICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwotCisgICAgICAgIGV2ZW50LmhhbmRsZWQg
PSB0cnVlOwogICAgICAgICB0aGlzLl9tb3ZlRm9yd2FyZEluSGlzdG9yeSgpOwogICAgIH0sCiAK
ICAgICBfbW92ZUJhY2tJbkhpc3Rvcnk6IGZ1bmN0aW9uKCkKICAgICB7Ci0gICAgICAgIGlmICh0
aGlzLmhpc3RvcnlPZmZzZXQgPT0gdGhpcy5oaXN0b3J5Lmxlbmd0aCkKKyAgICAgICAgaWYgKCF0
aGlzLmhpc3RvcnkgfHwgdGhpcy5oaXN0b3J5T2Zmc2V0ID09IHRoaXMuaGlzdG9yeS5sZW5ndGgp
CiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgdGhpcy5jbGVhckF1dG9Db21wbGV0ZSh0
cnVlKTsKQEAgLTQzNyw3ICs0MzksNyBAQCBXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90b3R5
cGUgPSB7CiAKICAgICBfbW92ZUZvcndhcmRJbkhpc3Rvcnk6IGZ1bmN0aW9uKCkKICAgICB7Ci0g
ICAgICAgIGlmICh0aGlzLmhpc3RvcnlPZmZzZXQgPT09IDApCisgICAgICAgIGlmICghdGhpcy5o
aXN0b3J5IHx8IHRoaXMuaGlzdG9yeU9mZnNldCA9PT0gMCkKICAgICAgICAgICAgIHJldHVybjsK
IAogICAgICAgICB0aGlzLmNsZWFyQXV0b0NvbXBsZXRlKHRydWUpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuY3NzIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuY3NzCmluZGV4IGM5MDg0MjcuLmY2
MjlkMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5z
cGVjdG9yLmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3Bl
Y3Rvci5jc3MKQEAgLTc3OCw4ICs3NzgsOCBAQCBib2R5LnBsYXRmb3JtLWxpbnV4IC5tb25vc3Bh
Y2UsIGJvZHkucGxhdGZvcm0tbGludXggLnNvdXJjZS1jb2RlIHsKICAgICBjb2xvcjogcmVkOwog
fQogCi0uYXV0by1jb21wbGV0ZS10ZXh0IHsKLSAgICBjb2xvcjogcmdiKDEyOCwgMTI4LCAxMjgp
OworLmF1dG8tY29tcGxldGUtdGV4dCwgLmVkaXRpbmcgLmF1dG8tY29tcGxldGUtdGV4dCB7Cisg
ICAgY29sb3I6IHJnYigxMjgsIDEyOCwgMTI4KSAhaW1wb3J0YW50OwogICAgIC13ZWJraXQtdXNl
ci1zZWxlY3Q6IG5vbmU7CiAgICAgLXdlYmtpdC11c2VyLW1vZGlmeTogcmVhZC1vbmx5OwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3Iu
aHRtbCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmh0bWwK
aW5kZXggNDRmMDk2Zi4uMTI5OGY5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRtbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sCkBAIC05Miw2ICs5Miw3IEBAIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAg
ICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iRXZlbnRMaXN0ZW5lcnNTaWRl
YmFyUGFuZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQi
IHNyYz0iQ29sb3IuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0IiBzcmM9IkNTU0NvbXBsZXRpb25zLmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHR5cGU9
InRleHQvamF2YXNjcmlwdCIgc3JjPSJDU1NLZXl3b3JkQ29tcGxldGlvbnMuanMiPjwvc2NyaXB0
PgogICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IlN0eWxlc1NpZGViYXJQ
YW5lLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3Jj
PSJQYW5lbEVuYWJsZXJWaWV3LmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHR5cGU9InRleHQv
amF2YXNjcmlwdCIgc3JjPSJXZWxjb21lVmlldy5qcyI+PC9zY3JpcHQ+Cg==
</data>
<flag name="review"
          id="70323"
          type_id="1"
          status="-"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79146</attachid>
            <date>2011-01-17 03:04:32 -0800</date>
            <delta_ts>2011-01-19 02:36:35 -0800</delta_ts>
            <desc>[PATCH] Comments from pfeldman addressed</desc>
            <filename>csstextprompt.patch</filename>
            <type>text/plain</type>
            <size>40599</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IDlkOTY3NDdjZGY0MDg2OTRjNGNlZWI0NDRkOTY3NzJkYzFiNTY0ZDgKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUaHUgSmFuIDEz
IDIwOjExOjExIDIwMTEgKzAzMDAKCiAgICBUZXh0IHByb21wdCBmb3IgdmFsdWVzCgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4
IGU0OTFhYzAuLjhmMzA3NTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMS0wMS0xNCAgQWxl
eGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IEVtcGxveSBUZXh0
UHJvbXB0IGZvciBDU1MgcHJvcGVydHkgbmFtZS92YWx1ZSBhdXRvY29tcGxldGlvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIyMTIKKworICAgICAg
ICAqIGluc3BlY3Rvci9zdHlsZXMtYWRkLWJsYW5rLXByb3BlcnR5Lmh0bWw6IEZvbGxvdyB0aGUg
YWx0ZXJlZCBldmVudCBoYW5kbGluZy4KKyAgICAgICAgKiBpbnNwZWN0b3Ivc3R5bGVzLXVybC1s
aW5raWZ5Lmh0bWw6IEVsaW1pbmF0ZSBmbGFraW5lc3MuCisKIDIwMTEtMDEtMTQgIEhheWF0byBJ
dG8gIDxoYXlhdG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgY2hyb21pdW0g
ZXhwZWN0YXRpb25zIHVwZGF0ZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9z
dHlsZXMtYWRkLWJsYW5rLXByb3BlcnR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5
bGVzLWFkZC1ibGFuay1wcm9wZXJ0eS5odG1sCmluZGV4IGY0OTZiNTEuLjQ5Njg5MmQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtYWRkLWJsYW5rLXByb3BlcnR5Lmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy1hZGQtYmxhbmstcHJvcGVydHku
aHRtbApAQCAtMzYsNyArMzYsNiBAQCBmdW5jdGlvbiBmcm9udGVuZF9kdW1wSW5zcGVjdGVkU3R5
bGUodGVzdENvbnRyb2xsZXIpCiAgICAgc2VjdGlvbi5leHBhbmQoKTsKICAgICB2YXIgdHJlZUVs
ZW1lbnQgPSBzZWN0aW9uLmFkZE5ld0JsYW5rUHJvcGVydHkoKTsKICAgICB2YXIgZW50ZXJLZXlE
b3duID0gZnJvbnRlbmRfY3JlYXRlS2V5RXZlbnQoIkVudGVyIik7Ci0gICAgdmFyIGluY3JlbWVu
dEtleURvd24gPSBmcm9udGVuZF9jcmVhdGVLZXlFdmVudCgiVXAiKTsKIAogICAgIGZ1bmN0aW9u
IHJlbW92ZUVtcHR5KCkKICAgICB7CkBAIC00OCwxMiArNDcsMTEgQEAgZnVuY3Rpb24gZnJvbnRl
bmRfZHVtcEluc3BlY3RlZFN0eWxlKHRlc3RDb250cm9sbGVyKQogICAgIHsKICAgICAgICAgdHJl
ZUVsZW1lbnQudmFsdWVFbGVtZW50LmRpc3BhdGNoRXZlbnQoZW50ZXJLZXlEb3duKTsKICAgICAg
ICAgdGVzdENvbnRyb2xsZXIucnVuQWZ0ZXJQZW5kaW5nRGlzcGF0Y2hlcyhyZW1vdmVFbXB0eS5i
aW5kKHRoaXMpKTsKLSAgICAgICAgZnJvbnRlbmRfZHVtcFJlc3VsdHModGVzdENvbnRyb2xsZXIp
OwogICAgIH0KIAogICAgIGZ1bmN0aW9uIGluY3JlbWVudEFnYWluKCkKICAgICB7Ci0gICAgICAg
IHRyZWVFbGVtZW50LnZhbHVlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGluY3JlbWVudEtleURvd24p
OworICAgICAgICB0cmVlRWxlbWVudC52YWx1ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChmcm9udGVu
ZF9jcmVhdGVLZXlFdmVudCgiVXAiKSk7CiAgICAgICAgIHRlc3RDb250cm9sbGVyLnJ1bkFmdGVy
UGVuZGluZ0Rpc3BhdGNoZXMoY29tbWl0LmJpbmQodGhpcykpOwogICAgIH0KIApAQCAtNjIsNyAr
NjAsNyBAQCBmdW5jdGlvbiBmcm9udGVuZF9kdW1wSW5zcGVjdGVkU3R5bGUodGVzdENvbnRyb2xs
ZXIpCiAgICAgdHJlZUVsZW1lbnQubmFtZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChlbnRlcktleURv
d24pOwogICAgIHRyZWVFbGVtZW50LnZhbHVlRWxlbWVudC50ZXh0Q29udGVudCA9ICIxcHgiOwog
ICAgIHRyZWVFbGVtZW50LnZhbHVlRWxlbWVudC5maXJzdENoaWxkLnNlbGVjdCgpOwotICAgIHRy
ZWVFbGVtZW50LnZhbHVlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGluY3JlbWVudEtleURvd24pOwor
ICAgIHRyZWVFbGVtZW50LnZhbHVlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGZyb250ZW5kX2NyZWF0
ZUtleUV2ZW50KCJVcCIpKTsKICAgICB0ZXN0Q29udHJvbGxlci5ydW5BZnRlclBlbmRpbmdEaXNw
YXRjaGVzKGluY3JlbWVudEFnYWluLmJpbmQodGhpcykpOwogfQogCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzLXVybC1saW5raWZ5Lmh0bWwgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3Ivc3R5bGVzLXVybC1saW5raWZ5Lmh0bWwKaW5kZXggYWY3YWQ2ZC4uM2JjN2FjZCAx
MDA3NTUKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy11cmwtbGlua2lmeS5odG1s
CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMtdXJsLWxpbmtpZnkuaHRtbApAQCAt
MjIsNyArMjIsMTggQEAgZnVuY3Rpb24gdGVzdCgpCiB7CiAgICAgZnVuY3Rpb24gZHVtcEhyZWYo
KQogICAgIHsKLSAgICAgICAgdmFyIGhyZWYgPSBXZWJJbnNwZWN0b3IucGFuZWxzLmVsZW1lbnRz
LnNpZGViYXJQYW5lcy5zdHlsZXMuc2VjdGlvbnNbMF1bMl0ucHJvcGVydGllc1RyZWVPdXRsaW5l
LmNoaWxkcmVuWzBdLnZhbHVlRWxlbWVudC5jaGlsZE5vZGVzWzJdLmhyZWY7CisgICAgICAgIHZh
ciBocmVmOworICAgICAgICB2YXIgdmFsdWVDaGlsZE5vZGVzID0gV2ViSW5zcGVjdG9yLnBhbmVs
cy5lbGVtZW50cy5zaWRlYmFyUGFuZXMuc3R5bGVzLnNlY3Rpb25zWzBdWzJdLnByb3BlcnRpZXNU
cmVlT3V0bGluZS5jaGlsZHJlblswXS52YWx1ZUVsZW1lbnQuY2hpbGROb2RlczsKKyAgICAgICAg
Zm9yICh2YXIgaSA9IDA7IGkgPCB2YWx1ZUNoaWxkTm9kZXMubGVuZ3RoOyArK2kpIHsKKyAgICAg
ICAgICAgIGlmICh2YWx1ZUNoaWxkTm9kZXNbaV0uaHJlZikgeworICAgICAgICAgICAgICAgIGhy
ZWYgPSB2YWx1ZUNoaWxkTm9kZXNbaV0uaHJlZjsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAoIWhyZWYpIHsKKyAgICAgICAgICAg
IEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJocmVmIHByb3BlcnR5IG5vdCBmb3VuZCIpOworICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgICAgIHZhciBzZWdtZW50cyA9IGhyZWYu
c3BsaXQoIi8iKTsKICAgICAgICAgdmFyIG91dHB1dCA9IFtdOwogICAgICAgICBmb3IgKHZhciBp
ID0gc2VnbWVudHMubGVuZ3RoIC0gMSwgbWluU2VnbWVudCA9IGkgLSAzOyBpID49IDAgJiYgaSA+
PSBtaW5TZWdtZW50OyAtLWkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTdiNmM2ZS4uNTAwMTY5OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDExLTAxLTE0ICBBbGV4YW5kZXIgUGF2bG92ICA8YXBh
dmxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogRW1wbG95IFRleHRQcm9tcHQgZm9yIENTUyBwcm9w
ZXJ0eSBuYW1lL3ZhbHVlIGF1dG9jb21wbGV0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjIxMgorCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250
LWVuZC9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanM6IEFkZGVkLgorICAgICAgICAoV2ViSW5zcGVj
dG9yLkNTU0tleXdvcmRDb21wbGV0aW9ucy5mb3JQcm9wZXJ0eSk6CisgICAgICAgICogaW5zcGVj
dG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rv
ci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlLnVwZGF0ZVRpdGxlKToKKyAgICAg
ICAgKFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlKToKKyAg
ICAgICAgKCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0UHJvbXB0LmpzOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlRleHRQcm9tcHQucHJvdG90eXBlLl9vbktleURvd24pOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlRleHRQcm9tcHQucHJvdG90eXBlLnRhYktleVByZXNzZWQpOgorICAgICAgICAoV2ViSW5zcGVj
dG9yLlRleHRQcm9tcHQucHJvdG90eXBlLnVwS2V5UHJlc3NlZCk6CisgICAgICAgIChXZWJJbnNw
ZWN0b3IuVGV4dFByb21wdC5wcm90b3R5cGUuZG93bktleVByZXNzZWQpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlRleHRQcm9tcHQucHJvdG90eXBlLl9tb3ZlQmFja0luSGlzdG9yeSk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90b3R5cGUuX21vdmVGb3J3YXJkSW5IaXN0
b3J5KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5jc3M6CisgICAg
ICAgICguYXV0by1jb21wbGV0ZS10ZXh0LCAuZWRpdGluZyAuYXV0by1jb21wbGV0ZS10ZXh0KToK
KyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sOgorCiAyMDExLTAx
LTE0ICBQYXZlbCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIE5v
dCByZXZpZXdlZDogYnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanMgYi9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0NTU0tleXdvcmRDb21wbGV0aW9ucy5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDc1NQppbmRleCAwMDAwMDAwLi5hYzYyYWZmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9DU1NLZXl3b3JkQ29tcGxldGlvbnMuanMKQEAg
LTAsMCArMSw0MzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAq
IG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFt
ZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAq
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
CisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQ
QVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBD
T1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05T
RVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisg
KiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJB
Q1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB
TUFHRS4KKyAqLworCitXZWJJbnNwZWN0b3IuQ1NTS2V5d29yZENvbXBsZXRpb25zID0geworICAg
IGZvclByb3BlcnR5OiBmdW5jdGlvbihwcm9wZXJ0eU5hbWUpCisgICAgeworICAgICAgICB2YXIg
YWNjZXB0ZWRLZXl3b3JkcyA9IFsiaW5pdGlhbCJdOworICAgICAgICBpZiAocHJvcGVydHlOYW1l
IGluIHRoaXMuX3Byb3BlcnR5S2V5d29yZE1hcCkKKyAgICAgICAgICAgIGFjY2VwdGVkS2V5d29y
ZHMgPSBhY2NlcHRlZEtleXdvcmRzLmNvbmNhdCh0aGlzLl9wcm9wZXJ0eUtleXdvcmRNYXBbcHJv
cGVydHlOYW1lXSk7CisgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgaW4gdGhpcy5fY29sb3JBd2Fy
ZVByb3BlcnRpZXMpCisgICAgICAgICAgICBhY2NlcHRlZEtleXdvcmRzID0gYWNjZXB0ZWRLZXl3
b3Jkcy5jb25jYXQoV2ViSW5zcGVjdG9yLkNTU0tleXdvcmRDb21wbGV0aW9ucy5fY29sb3JzKTsK
KyAgICAgICAgaWYgKHByb3BlcnR5TmFtZSBpbiBXZWJJbnNwZWN0b3IuU3R5bGVzU2lkZWJhclBh
bmUuSW5oZXJpdGVkUHJvcGVydGllcykKKyAgICAgICAgICAgIGFjY2VwdGVkS2V5d29yZHMucHVz
aCgiaW5oZXJpdCIpOworICAgICAgICByZXR1cm4gbmV3IFdlYkluc3BlY3Rvci5DU1NDb21wbGV0
aW9ucyhhY2NlcHRlZEtleXdvcmRzKTsKKyAgICB9Cit9OworCitXZWJJbnNwZWN0b3IuQ1NTS2V5
d29yZENvbXBsZXRpb25zLl9jb2xvcnMgPSBbCisgICAgImFxdWEiLCAiYmxhY2siLCAiYmx1ZSIs
ICJmdWNoc2lhIiwgImdyYXkiLCAiZ3JlZW4iLCAibGltZSIsICJtYXJvb24iLCAibmF2eSIsICJv
bGl2ZSIsICJvcmFuZ2UiLCAicHVycGxlIiwgInJlZCIsCisgICAgInNpbHZlciIsICJ0ZWFsIiwg
IndoaXRlIiwgInllbGxvdyIsICJ0cmFuc3BhcmVudCIsICJjdXJyZW50Y29sb3IiLCAiZ3JleSIs
ICJhbGljZWJsdWUiLCAiYW50aXF1ZXdoaXRlIiwKKyAgICAiYXF1YW1hcmluZSIsICJhenVyZSIs
ICJiZWlnZSIsICJiaXNxdWUiLCAiYmxhbmNoZWRhbG1vbmQiLCAiYmx1ZXZpb2xldCIsICJicm93
biIsICJidXJseXdvb2QiLCAiY2FkZXRibHVlIiwKKyAgICAiY2hhcnRyZXVzZSIsICJjaG9jb2xh
dGUiLCAiY29yYWwiLCAiY29ybmZsb3dlcmJsdWUiLCAiY29ybnNpbGsiLCAiY3JpbXNvbiIsICJj
eWFuIiwgImRhcmtibHVlIiwgImRhcmtjeWFuIiwKKyAgICAiZGFya2dvbGRlbnJvZCIsICJkYXJr
Z3JheSIsICJkYXJrZ3JlZW4iLCAiZGFya2dyZXkiLCAiZGFya2toYWtpIiwgImRhcmttYWdlbnRh
IiwgImRhcmtvbGl2ZWdyZWVuIiwgImRhcmtvcmFuZ2UiLAorICAgICJkYXJrb3JjaGlkIiwgImRh
cmtyZWQiLCAiZGFya3NhbG1vbiIsICJkYXJrc2VhZ3JlZW4iLCAiZGFya3NsYXRlYmx1ZSIsICJk
YXJrc2xhdGVncmF5IiwgImRhcmtzbGF0ZWdyZXkiLAorICAgICJkYXJrdHVycXVvaXNlIiwgImRh
cmt2aW9sZXQiLCAiZGVlcHBpbmsiLCAiZGVlcHNreWJsdWUiLCAiZGltZ3JheSIsICJkaW1ncmV5
IiwgImRvZGdlcmJsdWUiLCAiZmlyZWJyaWNrIiwKKyAgICAiZmxvcmFsd2hpdGUiLCAiZm9yZXN0
Z3JlZW4iLCAiZ2FpbnNib3JvIiwgImdob3N0d2hpdGUiLCAiZ29sZCIsICJnb2xkZW5yb2QiLCAi
Z3JlZW55ZWxsb3ciLCAiaG9uZXlkZXciLCAiaG90cGluayIsCisgICAgImluZGlhbnJlZCIsICJp
bmRpZ28iLCAiaXZvcnkiLCAia2hha2kiLCAibGF2ZW5kZXIiLCAibGF2ZW5kZXJibHVzaCIsICJs
YXduZ3JlZW4iLCAibGVtb25jaGlmZm9uIiwgImxpZ2h0Ymx1ZSIsCisgICAgImxpZ2h0Y29yYWwi
LCAibGlnaHRjeWFuIiwgImxpZ2h0Z29sZGVucm9keWVsbG93IiwgImxpZ2h0Z3JheSIsICJsaWdo
dGdyZWVuIiwgImxpZ2h0Z3JleSIsICJsaWdodHBpbmsiLAorICAgICJsaWdodHNhbG1vbiIsICJs
aWdodHNlYWdyZWVuIiwgImxpZ2h0c2t5Ymx1ZSIsICJsaWdodHNsYXRlZ3JheSIsICJsaWdodHNs
YXRlZ3JleSIsICJsaWdodHN0ZWVsYmx1ZSIsICJsaWdodHllbGxvdyIsCisgICAgImxpbWVncmVl
biIsICJsaW5lbiIsICJtYWdlbnRhIiwgIm1lZGl1bWFxdWFtYXJpbmUiLCAibWVkaXVtYmx1ZSIs
ICJtZWRpdW1vcmNoaWQiLCAibWVkaXVtcHVycGxlIiwgIm1lZGl1bXNlYWdyZWVuIiwKKyAgICAi
bWVkaXVtc2xhdGVibHVlIiwgIm1lZGl1bXNwcmluZ2dyZWVuIiwgIm1lZGl1bXR1cnF1b2lzZSIs
ICJtZWRpdW12aW9sZXRyZWQiLCAibWlkbmlnaHRibHVlIiwgIm1pbnRjcmVhbSIsCisgICAgIm1p
c3R5cm9zZSIsICJtb2NjYXNpbiIsICJuYXZham93aGl0ZSIsICJvbGRsYWNlIiwgIm9saXZlZHJh
YiIsICJvcmFuZ2VyZWQiLCAib3JjaGlkIiwgInBhbGVnb2xkZW5yb2QiLCAicGFsZWdyZWVuIiwK
KyAgICAicGFsZXR1cnF1b2lzZSIsICJwYWxldmlvbGV0cmVkIiwgInBhcGF5YXdoaXAiLCAicGVh
Y2hwdWZmIiwgInBlcnUiLCAicGluayIsICJwbHVtIiwgInBvd2RlcmJsdWUiLCAicm9zeWJyb3du
IiwKKyAgICAicm95YWxibHVlIiwgInNhZGRsZWJyb3duIiwgInNhbG1vbiIsICJzYW5keWJyb3du
IiwgInNlYWdyZWVuIiwgInNlYXNoZWxsIiwgInNpZW5uYSIsICJza3libHVlIiwgInNsYXRlYmx1
ZSIsCisgICAgInNsYXRlZ3JheSIsICJzbGF0ZWdyZXkiLCAic25vdyIsICJzcHJpbmdncmVlbiIs
ICJzdGVlbGJsdWUiLCAidGFuIiwgInRoaXN0bGUiLCAidG9tYXRvIiwgInR1cnF1b2lzZSIsICJ2
aW9sZXQiLAorICAgICJ3aGVhdCIsICJ3aGl0ZXNtb2tlIiwgInllbGxvd2dyZWVuIgorXSwKKwor
V2ViSW5zcGVjdG9yLkNTU0tleXdvcmRDb21wbGV0aW9ucy5fY29sb3JBd2FyZVByb3BlcnRpZXMg
PSBbCisgICAgImJhY2tncm91bmQiLCAiYmFja2dyb3VuZC1jb2xvciIsICJib3JkZXIiLCAiYm9y
ZGVyLWNvbG9yIiwgImJvcmRlci10b3AiLCAiYm9yZGVyLXJpZ2h0IiwgImJvcmRlci1ib3R0b20i
LAorICAgICJib3JkZXItbGVmdCIsICJib3JkZXItdG9wLWNvbG9yIiwgImJvcmRlci1yaWdodC1j
b2xvciIsICJib3JkZXItYm90dG9tLWNvbG9yIiwgImJvcmRlci1sZWZ0LWNvbG9yIiwgImNvbG9y
IiwKKyAgICAib3V0bGluZSIsICJvdXRsaW5lLWNvbG9yIiwgInRleHQtbGluZS10aHJvdWdoIiwg
InRleHQtbGluZS10aHJvdWdoLWNvbG9yIiwgInRleHQtb3ZlcmxpbmUiLCAidGV4dC1vdmVybGlu
ZS1jb2xvciIsCisgICAgInRleHQtc2hhZG93IiwgInRleHQtdW5kZXJsaW5lIiwgInRleHQtdW5k
ZXJsaW5lLWNvbG9yIiwgIi13ZWJraXQtdGV4dC1lbXBoYXNpcyIsICItd2Via2l0LXRleHQtZW1w
aGFzaXMtY29sb3IiCitdLmtleVNldCgpOworCitXZWJJbnNwZWN0b3IuQ1NTS2V5d29yZENvbXBs
ZXRpb25zLl9wcm9wZXJ0eUtleXdvcmRNYXAgPSB7CisgICAgInRhYmxlLWxheW91dCI6IFsKKyAg
ICAgICAgImF1dG8iLCAiZml4ZWQiCisgICAgXSwKKyAgICAidmlzaWJpbGl0eSI6IFsKKyAgICAg
ICAgImhpZGRlbiIsICJ2aXNpYmxlIiwgImNvbGxhcHNlIgorICAgIF0sCisgICAgImJhY2tncm91
bmQtcmVwZWF0IjogWworICAgICAgICAicmVwZWF0IiwgInJlcGVhdC14IiwgInJlcGVhdC15Iiwg
Im5vLXJlcGVhdCIsICJzcGFjZSIsICJyb3VuZCIKKyAgICBdLAorICAgICJ0ZXh0LXVuZGVybGlu
ZSI6IFsKKyAgICAgICAgIm5vbmUiLCAiZG90dGVkIiwgImRhc2hlZCIsICJzb2xpZCIsICJkb3Vi
bGUiLCAiZG90LWRhc2giLCAiZG90LWRvdC1kYXNoIiwgIndhdmUiCisgICAgXSwKKyAgICAiY29u
dGVudCI6IFsKKyAgICAgICAgImxpc3QtaXRlbSIsICJjbG9zZS1xdW90ZSIsICJuby1jbG9zZS1x
dW90ZSIsICJuby1vcGVuLXF1b3RlIiwgIm9wZW4tcXVvdGUiCisgICAgXSwKKyAgICAibGlzdC1z
dHlsZS1pbWFnZSI6IFsKKyAgICAgICAgIm5vbmUiCisgICAgXSwKKyAgICAiY2xlYXIiOiBbCisg
ICAgICAgICJub25lIiwgImxlZnQiLCAicmlnaHQiLCAiYm90aCIKKyAgICBdLAorICAgICJ0ZXh0
LXVuZGVybGluZS1tb2RlIjogWworICAgICAgICAiY29udGludW91cyIsICJza2lwLXdoaXRlLXNw
YWNlIgorICAgIF0sCisgICAgIm92ZXJmbG93LXgiOiBbCisgICAgICAgICJoaWRkZW4iLCAiYXV0
byIsICJ2aXNpYmxlIiwgIm92ZXJsYXkiLCAic2Nyb2xsIgorICAgIF0sCisgICAgInN0cm9rZS1s
aW5lam9pbiI6IFsKKyAgICAgICAgInJvdW5kIiwgIm1pdGVyIiwgImJldmVsIgorICAgIF0sCisg
ICAgImJhc2VsaW5lLXNoaWZ0IjogWworICAgICAgICAiYmFzZWxpbmUiLCAic3ViIiwgInN1cGVy
IgorICAgIF0sCisgICAgImJvcmRlci1ib3R0b20td2lkdGgiOiBbCisgICAgICAgICJtZWRpdW0i
LCAidGhpY2siLCAidGhpbiIKKyAgICBdLAorICAgICJtYXJxdWVlLXNwZWVkIjogWworICAgICAg
ICAibm9ybWFsIiwgInNsb3ciLCAiZmFzdCIKKyAgICBdLAorICAgICJtYXJnaW4tdG9wLWNvbGxh
cHNlIjogWworICAgICAgICAiY29sbGFwc2UiLCAic2VwYXJhdGUiLCAiZGlzY2FyZCIKKyAgICBd
LAorICAgICJtYXgtaGVpZ2h0IjogWworICAgICAgICAibm9uZSIKKyAgICBdLAorICAgICJib3gt
b3JpZW50IjogWworICAgICAgICAiaG9yaXpvbnRhbCIsICJ2ZXJ0aWNhbCIsICJpbmxpbmUtYXhp
cyIsICJibG9jay1heGlzIgorICAgIF0sCisgICAgImZvbnQtc3RyZXRjaCI6IFsKKyAgICAgICAg
Im5vcm1hbCIsICJ3aWRlciIsICJuYXJyb3dlciIsICJ1bHRyYS1jb25kZW5zZWQiLCAiZXh0cmEt
Y29uZGVuc2VkIiwgImNvbmRlbnNlZCIsICJzZW1pLWNvbmRlbnNlZCIsCisgICAgICAgICJzZW1p
LWV4cGFuZGVkIiwgImV4cGFuZGVkIiwgImV4dHJhLWV4cGFuZGVkIiwgInVsdHJhLWV4cGFuZGVk
IgorICAgIF0sCisgICAgIi13ZWJraXQtY29sb3ItY29ycmVjdGlvbiI6IFsKKyAgICAgICAgImRl
ZmF1bHQiLCAic3JnYiIKKyAgICBdLAorICAgICJ0ZXh0LXVuZGVybGluZS1zdHlsZSI6IFsKKyAg
ICAgICAgIm5vbmUiLCAiZG90dGVkIiwgImRhc2hlZCIsICJzb2xpZCIsICJkb3VibGUiLCAiZG90
LWRhc2giLCAiZG90LWRvdC1kYXNoIiwgIndhdmUiCisgICAgXSwKKyAgICAidGV4dC1vdmVybGlu
ZS1tb2RlIjogWworICAgICAgICAiY29udGludW91cyIsICJza2lwLXdoaXRlLXNwYWNlIgorICAg
IF0sCisgICAgIi13ZWJraXQtYmFja2dyb3VuZC1jb21wb3NpdGUiOiBbCisgICAgICAgICJoaWdo
bGlnaHQiLCAiY2xlYXIiLCAiY29weSIsICJzb3VyY2Utb3ZlciIsICJzb3VyY2UtaW4iLCAic291
cmNlLW91dCIsICJzb3VyY2UtYXRvcCIsICJkZXN0aW5hdGlvbi1vdmVyIiwKKyAgICAgICAgImRl
c3RpbmF0aW9uLWluIiwgImRlc3RpbmF0aW9uLW91dCIsICJkZXN0aW5hdGlvbi1hdG9wIiwgInhv
ciIsICJwbHVzLWRhcmtlciIsICJwbHVzLWxpZ2h0ZXIiCisgICAgXSwKKyAgICAiYm9yZGVyLWxl
ZnQtd2lkdGgiOiBbCisgICAgICAgICJtZWRpdW0iLCAidGhpY2siLCAidGhpbiIKKyAgICBdLAor
ICAgICItd2Via2l0LXdyaXRpbmctbW9kZSI6IFsKKyAgICAgICAgImxyIiwgInJsIiwgInRiIiwg
ImxyLXRiIiwgInJsLXRiIiwgInRiLXJsIiwgImhvcml6b250YWwtdGIiLCAidmVydGljYWwtcmwi
LCAidmVydGljYWwtbHIiLCAiaG9yaXpvbnRhbC1idCIKKyAgICBdLAorICAgICJ0ZXh0LWxpbmUt
dGhyb3VnaC1tb2RlIjogWworICAgICAgICAiY29udGludW91cyIsICJza2lwLXdoaXRlLXNwYWNl
IgorICAgIF0sCisgICAgImJvcmRlci1jb2xsYXBzZSI6IFsKKyAgICAgICAgImNvbGxhcHNlIiwg
InNlcGFyYXRlIgorICAgIF0sCisgICAgInBhZ2UtYnJlYWstaW5zaWRlIjogWworICAgICAgICAi
YXV0byIsICJhdm9pZCIKKyAgICBdLAorICAgICJib3JkZXItdG9wLXdpZHRoIjogWworICAgICAg
ICAibWVkaXVtIiwgInRoaWNrIiwgInRoaW4iCisgICAgXSwKKyAgICAib3V0bGluZS1jb2xvciI6
IFsKKyAgICAgICAgImludmVydCIKKyAgICBdLAorICAgICJ0ZXh0LWxpbmUtdGhyb3VnaC1zdHls
ZSI6IFsKKyAgICAgICAgIm5vbmUiLCAiZG90dGVkIiwgImRhc2hlZCIsICJzb2xpZCIsICJkb3Vi
bGUiLCAiZG90LWRhc2giLCAiZG90LWRvdC1kYXNoIiwgIndhdmUiCisgICAgXSwKKyAgICAib3V0
bGluZS1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLCAiaGlkZGVuIiwgImluc2V0IiwgImdyb292
ZSIsICJyaWRnZSIsICJvdXRzZXQiLCAiZG90dGVkIiwgImRhc2hlZCIsICJzb2xpZCIsICJkb3Vi
bGUiCisgICAgXSwKKyAgICAiY3Vyc29yIjogWworICAgICAgICAibm9uZSIsICJjb3B5IiwgImF1
dG8iLCAiY3Jvc3NoYWlyIiwgImRlZmF1bHQiLCAicG9pbnRlciIsICJtb3ZlIiwgInZlcnRpY2Fs
LXRleHQiLCAiY2VsbCIsICJjb250ZXh0LW1lbnUiLAorICAgICAgICAiYWxpYXMiLCAicHJvZ3Jl
c3MiLCAibm8tZHJvcCIsICJub3QtYWxsb3dlZCIsICItd2Via2l0LXpvb20taW4iLCAiLXdlYmtp
dC16b29tLW91dCIsICJlLXJlc2l6ZSIsICJuZS1yZXNpemUiLAorICAgICAgICAibnctcmVzaXpl
IiwgIm4tcmVzaXplIiwgInNlLXJlc2l6ZSIsICJzdy1yZXNpemUiLCAicy1yZXNpemUiLCAidy1y
ZXNpemUiLCAiZXctcmVzaXplIiwgIm5zLXJlc2l6ZSIsCisgICAgICAgICJuZXN3LXJlc2l6ZSIs
ICJud3NlLXJlc2l6ZSIsICJjb2wtcmVzaXplIiwgInJvdy1yZXNpemUiLCAidGV4dCIsICJ3YWl0
IiwgImhlbHAiLCAiYWxsLXNjcm9sbCIsICItd2Via2l0LWdyYWIiLAorICAgICAgICAiLXdlYmtp
dC1ncmFiYmluZyIKKyAgICBdLAorICAgICJib3JkZXItd2lkdGgiOiBbCisgICAgICAgICJtZWRp
dW0iLCAidGhpY2siLCAidGhpbiIKKyAgICBdLAorICAgICJzaXplIjogWworICAgICAgICAiYTMi
LCAiYTQiLCAiYTUiLCAiYjQiLCAiYjUiLCAibGFuZHNjYXBlIiwgImxlZGdlciIsICJsZWdhbCIs
ICJsZXR0ZXIiLCAicG9ydHJhaXQiCisgICAgXSwKKyAgICAiYmFja2dyb3VuZC1zaXplIjogWwor
ICAgICAgICAiY29udGFpbiIsICJjb3ZlciIKKyAgICBdLAorICAgICJkaXJlY3Rpb24iOiBbCisg
ICAgICAgICJsdHIiLCAicnRsIgorICAgIF0sCisgICAgIm1hcnF1ZWUtZGlyZWN0aW9uIjogWwor
ICAgICAgICAibGVmdCIsICJyaWdodCIsICJhdXRvIiwgInJldmVyc2UiLCAiZm9yd2FyZHMiLCAi
YmFja3dhcmRzIiwgImFoZWFkIiwgInVwIiwgImRvd24iCisgICAgXSwKKyAgICAiZW5hYmxlLWJh
Y2tncm91bmQiOiBbCisgICAgICAgICJhY2N1bXVsYXRlIiwgIm5ldyIKKyAgICBdLAorICAgICJm
bG9hdCI6IFsKKyAgICAgICAgIm5vbmUiLCAibGVmdCIsICJyaWdodCIKKyAgICBdLAorICAgICJv
dmVyZmxvdy15IjogWworICAgICAgICAiaGlkZGVuIiwgImF1dG8iLCAidmlzaWJsZSIsICJvdmVy
bGF5IiwgInNjcm9sbCIKKyAgICBdLAorICAgICJtYXJnaW4tYm90dG9tLWNvbGxhcHNlIjogWwor
ICAgICAgICAiY29sbGFwc2UiLCAgInNlcGFyYXRlIiwgImRpc2NhcmQiCisgICAgXSwKKyAgICAi
Ym94LXJlZmxlY3QiOiBbCisgICAgICAgICJsZWZ0IiwgInJpZ2h0IiwgImFib3ZlIiwgImJlbG93
IgorICAgIF0sCisgICAgIm92ZXJmbG93IjogWworICAgICAgICAiaGlkZGVuIiwgImF1dG8iLCAi
dmlzaWJsZSIsICJvdmVybGF5IiwgInNjcm9sbCIKKyAgICBdLAorICAgICJ0ZXh0LXJlbmRlcmlu
ZyI6IFsKKyAgICAgICAgImF1dG8iLCAib3B0aW1pemVzcGVlZCIsICJvcHRpbWl6ZWxlZ2liaWxp
dHkiLCAiZ2VvbWV0cmljcHJlY2lzaW9uIgorICAgIF0sCisgICAgInRleHQtYWxpZ24iOiBbCisg
ICAgICAgICItd2Via2l0LWF1dG8iLCAibGVmdCIsICJyaWdodCIsICJjZW50ZXIiLCAianVzdGlm
eSIsICItd2Via2l0LWxlZnQiLCAiLXdlYmtpdC1yaWdodCIsICItd2Via2l0LWNlbnRlciIKKyAg
ICBdLAorICAgICJsaXN0LXN0eWxlLXBvc2l0aW9uIjogWworICAgICAgICAib3V0c2lkZSIsICJp
bnNpZGUiCisgICAgXSwKKyAgICAibWFyZ2luLWJvdHRvbSI6IFsKKyAgICAgICAgImF1dG8iCisg
ICAgXSwKKyAgICAiY29sb3ItaW50ZXJwb2xhdGlvbiI6IFsKKyAgICAgICAgImxpbmVhcnJnYiIK
KyAgICBdLAorICAgICJiYWNrZ3JvdW5kLW9yaWdpbiI6IFsKKyAgICAgICAgImJvcmRlci1ib3gi
LCAiY29udGVudC1ib3giLCAicGFkZGluZy1ib3giCisgICAgXSwKKyAgICAid29yZC13cmFwIjog
WworICAgICAgICAibm9ybWFsIiwgImJyZWFrLXdvcmQiCisgICAgXSwKKyAgICAiZm9udC13ZWln
aHQiOiBbCisgICAgICAgICJub3JtYWwiLCAiYm9sZCIsICJib2xkZXIiLCAibGlnaHRlciIsICIx
MDAiLCAiMjAwIiwgIjMwMCIsICI0MDAiLCAiNTAwIiwgIjYwMCIsICI3MDAiLCAiODAwIiwgIjkw
MCIKKyAgICBdLAorICAgICJtYXJnaW4tYmVmb3JlLWNvbGxhcHNlIjogWworICAgICAgICAiY29s
bGFwc2UiLCAic2VwYXJhdGUiLCAiZGlzY2FyZCIKKyAgICBdLAorICAgICJ0ZXh0LW92ZXJsaW5l
LXdpZHRoIjogWworICAgICAgICAibm9ybWFsIiwgIm1lZGl1bSIsICJhdXRvIiwgInRoaWNrIiwg
InRoaW4iCisgICAgXSwKKyAgICAidGV4dC10cmFuc2Zvcm0iOiBbCisgICAgICAgICJub25lIiwg
ImNhcGl0YWxpemUiLCAidXBwZXJjYXNlIiwgImxvd2VyY2FzZSIKKyAgICBdLAorICAgICJib3Jk
ZXItcmlnaHQtc3R5bGUiOiBbCisgICAgICAgICJub25lIiwgImhpZGRlbiIsICJpbnNldCIsICJn
cm9vdmUiLCAicmlkZ2UiLCAib3V0c2V0IiwgImRvdHRlZCIsICJkYXNoZWQiLCAic29saWQiLCAi
ZG91YmxlIgorICAgIF0sCisgICAgImJvcmRlci1sZWZ0LXN0eWxlIjogWworICAgICAgICAibm9u
ZSIsICJoaWRkZW4iLCAiaW5zZXQiLCAiZ3Jvb3ZlIiwgInJpZGdlIiwgIm91dHNldCIsICJkb3R0
ZWQiLCAiZGFzaGVkIiwgInNvbGlkIiwgImRvdWJsZSIKKyAgICBdLAorICAgICItd2Via2l0LXRl
eHQtZW1waGFzaXMiOiBbCisgICAgICAgICJjaXJjbGUiLCAiZmlsbGVkIiwgIm9wZW4iLCAiZG90
IiwgImRvdWJsZS1jaXJjbGUiLCAidHJpYW5nbGUiLCAic2VzYW1lIgorICAgIF0sCisgICAgImZv
bnQtc3R5bGUiOiBbCisgICAgICAgICJpdGFsaWMiLCAib2JsaXF1ZSIsICJub3JtYWwiCisgICAg
XSwKKyAgICAic3BlYWsiOiBbCisgICAgICAgICJub25lIiwgIm5vcm1hbCIsICJzcGVsbC1vdXQi
LCAiZGlnaXRzIiwgImxpdGVyYWwtcHVuY3R1YXRpb24iLCAibm8tcHVuY3R1YXRpb24iCisgICAg
XSwKKyAgICAidGV4dC1saW5lLXRocm91Z2giOiBbCisgICAgICAgICJub25lIiwgImRvdHRlZCIs
ICJkYXNoZWQiLCAic29saWQiLCAiZG91YmxlIiwgImRvdC1kYXNoIiwgImRvdC1kb3QtZGFzaCIs
ICJ3YXZlIiwgImNvbnRpbnVvdXMiLAorICAgICAgICAic2tpcC13aGl0ZS1zcGFjZSIKKyAgICBd
LAorICAgICJjb2xvci1yZW5kZXJpbmciOiBbCisgICAgICAgICJhdXRvIiwgIm9wdGltaXplc3Bl
ZWQiLCAib3B0aW1pemVxdWFsaXR5IgorICAgIF0sCisgICAgImxpc3Qtc3R5bGUtdHlwZSI6IFsK
KyAgICAgICAgIm5vbmUiLCAiZGlzYyIsICJjaXJjbGUiLCAic3F1YXJlIiwgImRlY2ltYWwiLCAi
ZGVjaW1hbC1sZWFkaW5nLXplcm8iLCAiYXJhYmljLWluZGljIiwgImJpbmFyeSIsICJiZW5nYWxp
IiwKKyAgICAgICAgImNhbWJvZGlhbiIsICJraG1lciIsICJkZXZhbmFnYXJpIiwgImd1amFyYXRp
IiwgImd1cm11a2hpIiwgImthbm5hZGEiLCAibG93ZXItaGV4YWRlY2ltYWwiLCAibGFvIiwgIm1h
bGF5YWxhbSIsCisgICAgICAgICJtb25nb2xpYW4iLCAibXlhbm1hciIsICJvY3RhbCIsICJvcml5
YSIsICJwZXJzaWFuIiwgInVyZHUiLCAidGVsdWd1IiwgInRpYmV0YW4iLCAidGhhaSIsICJ1cHBl
ci1oZXhhZGVjaW1hbCIsCisgICAgICAgICJsb3dlci1yb21hbiIsICJ1cHBlci1yb21hbiIsICJs
b3dlci1ncmVlayIsICJsb3dlci1hbHBoYSIsICJsb3dlci1sYXRpbiIsICJ1cHBlci1hbHBoYSIs
ICJ1cHBlci1sYXRpbiIsICJhZmFyIiwKKyAgICAgICAgImV0aGlvcGljLWhhbGVoYW1lLWFhLWV0
IiwgImV0aGlvcGljLWhhbGVoYW1lLWFhLWVyIiwgImFtaGFyaWMiLCAiZXRoaW9waWMtaGFsZWhh
bWUtYW0tZXQiLCAiYW1oYXJpYy1hYmVnZWRlIiwKKyAgICAgICAgImV0aGlvcGljLWFiZWdlZGUt
YW0tZXQiLCAiY2prLWVhcnRobHktYnJhbmNoIiwgImNqay1oZWF2ZW5seS1zdGVtIiwgImV0aGlv
cGljIiwgImV0aGlvcGljLWhhbGVoYW1lLWdleiIsCisgICAgICAgICJldGhpb3BpYy1hYmVnZWRl
IiwgImV0aGlvcGljLWFiZWdlZGUtZ2V6IiwgImhhbmd1bC1jb25zb25hbnQiLCAiaGFuZ3VsIiwg
Imxvd2VyLW5vcndlZ2lhbiIsICJvcm9tbyIsCisgICAgICAgICJldGhpb3BpYy1oYWxlaGFtZS1v
bS1ldCIsICJzaWRhbWEiLCAiZXRoaW9waWMtaGFsZWhhbWUtc2lkLWV0IiwgInNvbWFsaSIsICJl
dGhpb3BpYy1oYWxlaGFtZS1zby1ldCIsICJ0aWdyZSIsCisgICAgICAgICJldGhpb3BpYy1oYWxl
aGFtZS10aWciLCAidGlncmlueWEtZXIiLCAiZXRoaW9waWMtaGFsZWhhbWUtdGktZXIiLCAidGln
cmlueWEtZXItYWJlZ2VkZSIsCisgICAgICAgICJldGhpb3BpYy1hYmVnZWRlLXRpLWVyIiwgInRp
Z3JpbnlhLWV0IiwgImV0aGlvcGljLWhhbGVoYW1lLXRpLWV0IiwgInRpZ3JpbnlhLWV0LWFiZWdl
ZGUiLAorICAgICAgICAiZXRoaW9waWMtYWJlZ2VkZS10aS1ldCIsICJ1cHBlci1ncmVlayIsICJ1
cHBlci1ub3J3ZWdpYW4iLCAiYXN0ZXJpc2tzIiwgImZvb3Rub3RlcyIsICJoZWJyZXciLCAiYXJt
ZW5pYW4iLAorICAgICAgICAibG93ZXItYXJtZW5pYW4iLCAidXBwZXItYXJtZW5pYW4iLCAiZ2Vv
cmdpYW4iLCAiY2prLWlkZW9ncmFwaGljIiwgImhpcmFnYW5hIiwgImthdGFrYW5hIiwgImhpcmFn
YW5hLWlyb2hhIiwKKyAgICAgICAgImthdGFrYW5hLWlyb2hhIgorICAgIF0sCisgICAgIi13ZWJr
aXQtdGV4dC1jb21iaW5lIjogWworICAgICAgICAibm9uZSIsICJob3Jpem9udGFsIgorICAgIF0s
CisgICAgIm91dGxpbmUiOiBbCisgICAgICAgICJub25lIiwgImhpZGRlbiIsICJpbnNldCIsICJn
cm9vdmUiLCAicmlkZ2UiLCAib3V0c2V0IiwgImRvdHRlZCIsICJkYXNoZWQiLCAic29saWQiLCAi
ZG91YmxlIgorICAgIF0sCisgICAgImZvbnQiOiBbCisgICAgICAgICJjYXB0aW9uIiwgImljb24i
LCAibWVudSIsICJtZXNzYWdlLWJveCIsICJzbWFsbC1jYXB0aW9uIiwgIi13ZWJraXQtbWluaS1j
b250cm9sIiwgIi13ZWJraXQtc21hbGwtY29udHJvbCIsCisgICAgICAgICItd2Via2l0LWNvbnRy
b2wiLCAic3RhdHVzLWJhciIsICJpdGFsaWMiLCAib2JsaXF1ZSIsICJzbWFsbC1jYXBzIiwgIm5v
cm1hbCIsICJib2xkIiwgImJvbGRlciIsICJsaWdodGVyIiwKKyAgICAgICAgIjEwMCIsICIyMDAi
LCAiMzAwIiwgIjQwMCIsICI1MDAiLCAiNjAwIiwgIjcwMCIsICI4MDAiLCAiOTAwIiwgInh4LXNt
YWxsIiwgIngtc21hbGwiLCAic21hbGwiLCAibWVkaXVtIiwKKyAgICAgICAgImxhcmdlIiwgIngt
bGFyZ2UiLCAieHgtbGFyZ2UiLCAiLXdlYmtpdC14eHgtbGFyZ2UiLCAic21hbGxlciIsICJsYXJn
ZXIiLCAic2VyaWYiLCAic2Fucy1zZXJpZiIsICJjdXJzaXZlIiwKKyAgICAgICAgImZhbnRhc3ki
LCAibW9ub3NwYWNlIiwgIi13ZWJraXQtYm9keSIKKyAgICBdLAorICAgICJkb21pbmFudC1iYXNl
bGluZSI6IFsKKyAgICAgICAgIm1pZGRsZSIsICJhdXRvIiwgImNlbnRyYWwiLCAidGV4dC1iZWZv
cmUtZWRnZSIsICJ0ZXh0LWFmdGVyLWVkZ2UiLCAiaWRlb2dyYXBoaWMiLCAiYWxwaGFiZXRpYyIs
ICJoYW5naW5nIiwKKyAgICAgICAgIm1hdGhlbWF0aWNhbCIsICJ1c2Utc2NyaXB0IiwgIm5vLWNo
YW5nZSIsICJyZXNldC1zaXplIgorICAgIF0sCisgICAgImRpc3BsYXkiOiBbCisgICAgICAgICJu
b25lIiwgImlubGluZSIsICJibG9jayIsICJsaXN0LWl0ZW0iLCAicnVuLWluIiwgImNvbXBhY3Qi
LCAiaW5saW5lLWJsb2NrIiwgInRhYmxlIiwgImlubGluZS10YWJsZSIsCisgICAgICAgICJ0YWJs
ZS1yb3ctZ3JvdXAiLCAidGFibGUtaGVhZGVyLWdyb3VwIiwgInRhYmxlLWZvb3Rlci1ncm91cCIs
ICJ0YWJsZS1yb3ciLCAidGFibGUtY29sdW1uLWdyb3VwIiwKKyAgICAgICAgInRhYmxlLWNvbHVt
biIsICJ0YWJsZS1jZWxsIiwgInRhYmxlLWNhcHRpb24iLCAiLXdlYmtpdC1ib3giLCAiLXdlYmtp
dC1pbmxpbmUtYm94IiwgIi13YXAtbWFycXVlZSIKKyAgICBdLAorICAgICItd2Via2l0LXRleHQt
ZW1waGFzaXMtcG9zaXRpb24iOiBbCisgICAgICAgICJvdmVyIiwgInVuZGVyIgorICAgIF0sCisg
ICAgImltYWdlLXJlbmRlcmluZyI6IFsKKyAgICAgICAgImF1dG8iLCAib3B0aW1pemVzcGVlZCIs
ICJvcHRpbWl6ZXF1YWxpdHkiCisgICAgXSwKKyAgICAiYWxpZ25tZW50LWJhc2VsaW5lIjogWwor
ICAgICAgICAiYmFzZWxpbmUiLCAibWlkZGxlIiwgImF1dG8iLCAiYmVmb3JlLWVkZ2UiLCAiYWZ0
ZXItZWRnZSIsICJjZW50cmFsIiwgInRleHQtYmVmb3JlLWVkZ2UiLCAidGV4dC1hZnRlci1lZGdl
IiwKKyAgICAgICAgImlkZW9ncmFwaGljIiwgImFscGhhYmV0aWMiLCAiaGFuZ2luZyIsICJtYXRo
ZW1hdGljYWwiCisgICAgXSwKKyAgICAib3V0bGluZS13aWR0aCI6IFsKKyAgICAgICAgIm1lZGl1
bSIsICJ0aGljayIsICJ0aGluIgorICAgIF0sCisgICAgInRleHQtbGluZS10aHJvdWdoLXdpZHRo
IjogWworICAgICAgICAibm9ybWFsIiwgIm1lZGl1bSIsICJhdXRvIiwgInRoaWNrIiwgInRoaW4i
CisgICAgXSwKKyAgICAiYm94LWFsaWduIjogWworICAgICAgICAiYmFzZWxpbmUiLCAiY2VudGVy
IiwgInN0cmV0Y2giLCAic3RhcnQiLCAiZW5kIgorICAgIF0sCisgICAgImJvcmRlci1yaWdodC13
aWR0aCI6IFsKKyAgICAgICAgIm1lZGl1bSIsICJ0aGljayIsICJ0aGluIgorICAgIF0sCisgICAg
ImJvcmRlci10b3Atc3R5bGUiOiBbCisgICAgICAgICJub25lIiwgImhpZGRlbiIsICJpbnNldCIs
ICJncm9vdmUiLCAicmlkZ2UiLCAib3V0c2V0IiwgImRvdHRlZCIsICJkYXNoZWQiLCAic29saWQi
LCAiZG91YmxlIgorICAgIF0sCisgICAgImxpbmUtaGVpZ2h0IjogWworICAgICAgICAibm9ybWFs
IgorICAgIF0sCisgICAgInRleHQtb3ZlcmZsb3ciOiBbCisgICAgICAgICJjbGlwIiwgImVsbGlw
c2lzIgorICAgIF0sCisgICAgImJveC1kaXJlY3Rpb24iOiBbCisgICAgICAgICJub3JtYWwiLCAi
cmV2ZXJzZSIKKyAgICBdLAorICAgICJtYXJnaW4tYWZ0ZXItY29sbGFwc2UiOiBbCisgICAgICAg
ICJjb2xsYXBzZSIsICJzZXBhcmF0ZSIsICJkaXNjYXJkIgorICAgIF0sCisgICAgInBhZ2UtYnJl
YWstYmVmb3JlIjogWworICAgICAgICAibGVmdCIsICJyaWdodCIsICJhdXRvIiwgImFsd2F5cyIs
ICJhdm9pZCIKKyAgICBdLAorICAgICItd2Via2l0LWh5cGhlbnMiOiBbCisgICAgICAgICJub25l
IiwgImF1dG8iLCAibWFudWFsIgorICAgIF0sCisgICAgImJvcmRlci1pbWFnZSI6IFsKKyAgICAg
ICAgInJlcGVhdCIsICJzdHJldGNoIgorICAgIF0sCisgICAgInRleHQtZGVjb3JhdGlvbiI6IFsK
KyAgICAgICAgImJsaW5rIiwgImxpbmUtdGhyb3VnaCIsICJvdmVybGluZSIsICJ1bmRlcmxpbmUi
CisgICAgXSwKKyAgICAicG9zaXRpb24iOiBbCisgICAgICAgICJhYnNvbHV0ZSIsICJmaXhlZCIs
ICJyZWxhdGl2ZSIsICJzdGF0aWMiCisgICAgXSwKKyAgICAiZm9udC1mYW1pbHkiOiBbCisgICAg
ICAgICJzZXJpZiIsICJzYW5zLXNlcmlmIiwgImN1cnNpdmUiLCAiZmFudGFzeSIsICJtb25vc3Bh
Y2UiLCAiLXdlYmtpdC1ib2R5IgorICAgIF0sCisgICAgInRleHQtb3ZlcmZsb3ctbW9kZSI6IFsK
KyAgICAgICAgImNsaXAiLCAiZWxsaXBzaXMiCisgICAgXSwKKyAgICAiYm9yZGVyLWJvdHRvbS1z
dHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLCAiaGlkZGVuIiwgImluc2V0IiwgImdyb292ZSIsICJy
aWRnZSIsICJvdXRzZXQiLCAiZG90dGVkIiwgImRhc2hlZCIsICJzb2xpZCIsICJkb3VibGUiCisg
ICAgXSwKKyAgICAidW5pY29kZS1iaWRpIjogWworICAgICAgICAibm9ybWFsIiwgImJpZGktb3Zl
cnJpZGUiLCAiZW1iZWQiCisgICAgXSwKKyAgICAiY2xpcC1ydWxlIjogWworICAgICAgICAibm9u
emVybyIsICJldmVub2RkIgorICAgIF0sCisgICAgIm1hcmdpbi1sZWZ0IjogWworICAgICAgICAi
YXV0byIKKyAgICBdLAorICAgICJtYXJnaW4tdG9wIjogWworICAgICAgICAiYXV0byIKKyAgICBd
LAorICAgICJ6b29tIjogWworICAgICAgICAiZG9jdW1lbnQiLCAicmVzZXQiCisgICAgXSwKKyAg
ICAidGV4dC1vdmVybGluZS1zdHlsZSI6IFsKKyAgICAgICAgIm5vbmUiLCAiZG90dGVkIiwgImRh
c2hlZCIsICJzb2xpZCIsICJkb3VibGUiLCAiZG90LWRhc2giLCAiZG90LWRvdC1kYXNoIiwgIndh
dmUiCisgICAgXSwKKyAgICAibWF4LXdpZHRoIjogWworICAgICAgICAibm9uZSIKKyAgICBdLAor
ICAgICJlbXB0eS1jZWxscyI6IFsKKyAgICAgICAgImhpZGUiLCAic2hvdyIKKyAgICBdLAorICAg
ICJwb2ludGVyLWV2ZW50cyI6IFsKKyAgICAgICAgIm5vbmUiLCAiYWxsIiwgImF1dG8iLCAidmlz
aWJsZSIsICJ2aXNpYmxlcGFpbnRlZCIsICJ2aXNpYmxlZmlsbCIsICJ2aXNpYmxlc3Ryb2tlIiwg
InBhaW50ZWQiLCAiZmlsbCIsICJzdHJva2UiCisgICAgXSwKKyAgICAibGV0dGVyLXNwYWNpbmci
OiBbCisgICAgICAgICJub3JtYWwiCisgICAgXSwKKyAgICAiYmFja2dyb3VuZC1jbGlwIjogWwor
ICAgICAgICAiYm9yZGVyLWJveCIsICJjb250ZW50LWJveCIsICJwYWRkaW5nLWJveCIKKyAgICBd
LAorICAgICItd2Via2l0LWZvbnQtc21vb3RoaW5nIjogWworICAgICAgICAibm9uZSIsICJhdXRv
IiwgImFudGlhbGlhc2VkIiwgInN1YnBpeGVsLWFudGlhbGlhc2VkIgorICAgIF0sCisgICAgImJv
cmRlciI6IFsKKyAgICAgICAgIm5vbmUiLCAiaGlkZGVuIiwgImluc2V0IiwgImdyb292ZSIsICJy
aWRnZSIsICJvdXRzZXQiLCAiZG90dGVkIiwgImRhc2hlZCIsICJzb2xpZCIsICJkb3VibGUiCisg
ICAgXSwKKyAgICAiZm9udC1zaXplIjogWworICAgICAgICAieHgtc21hbGwiLCAieC1zbWFsbCIs
ICJzbWFsbCIsICJtZWRpdW0iLCAibGFyZ2UiLCAieC1sYXJnZSIsICJ4eC1sYXJnZSIsICItd2Vi
a2l0LXh4eC1sYXJnZSIsICJzbWFsbGVyIiwKKyAgICAgICAgImxhcmdlciIKKyAgICBdLAorICAg
ICJmb250LXZhcmlhbnQiOiBbCisgICAgICAgICJzbWFsbC1jYXBzIiwgIm5vcm1hbCIKKyAgICBd
LAorICAgICJ2ZXJ0aWNhbC1hbGlnbiI6IFsKKyAgICAgICAgImJhc2VsaW5lIiwgIm1pZGRsZSIs
ICJzdWIiLCAic3VwZXIiLCAidGV4dC10b3AiLCAidGV4dC1ib3R0b20iLCAidG9wIiwgImJvdHRv
bSIsICItd2Via2l0LWJhc2VsaW5lLW1pZGRsZSIKKyAgICBdLAorICAgICJtYXJxdWVlLXN0eWxl
IjogWworICAgICAgICAibm9uZSIsICJzY3JvbGwiLCAic2xpZGUiLCAiYWx0ZXJuYXRlIgorICAg
IF0sCisgICAgIndoaXRlLXNwYWNlIjogWworICAgICAgICAibm9ybWFsIiwgIm5vd3JhcCIsICJw
cmUiLCAicHJlLWxpbmUiLCAicHJlLXdyYXAiCisgICAgXSwKKyAgICAidGV4dC11bmRlcmxpbmUt
d2lkdGgiOiBbCisgICAgICAgICJub3JtYWwiLCAibWVkaXVtIiwgImF1dG8iLCAidGhpY2siLCAi
dGhpbiIKKyAgICBdLAorICAgICJib3gtbGluZXMiOiBbCisgICAgICAgICJzaW5nbGUiLCAibXVs
dGlwbGUiCisgICAgXSwKKyAgICAicGFnZS1icmVhay1hZnRlciI6IFsKKyAgICAgICAgImxlZnQi
LCAicmlnaHQiLCAiYXV0byIsICJhbHdheXMiLCAiYXZvaWQiCisgICAgXSwKKyAgICAiY2xpcC1w
YXRoIjogWworICAgICAgICAibm9uZSIKKyAgICBdLAorICAgICJtYXJnaW4iOiBbCisgICAgICAg
ICJhdXRvIgorICAgIF0sCisgICAgIm1hcnF1ZWUtcmVwZXRpdGlvbiI6IFsKKyAgICAgICAgImlu
ZmluaXRlIgorICAgIF0sCisgICAgIm1hcmdpbi1yaWdodCI6IFsKKyAgICAgICAgImF1dG8iCisg
ICAgXSwKKyAgICAiLXdlYmtpdC10ZXh0LWVtcGhhc2lzLXN0eWxlIjogWworICAgICAgICAiY2ly
Y2xlIiwgImZpbGxlZCIsICJvcGVuIiwgImRvdCIsICJkb3VibGUtY2lyY2xlIiwgInRyaWFuZ2xl
IiwgInNlc2FtZSIKKyAgICBdCit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1N0eWxlc1NpZGViYXJQYW5lLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcwppbmRleCBkNjQ2ODI5Li42YjU2Zjc4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxlc1Np
ZGViYXJQYW5lLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3R5
bGVzU2lkZWJhclBhbmUuanMKQEAgLTgxLDYgKzgxLDggQEAgV2ViSW5zcGVjdG9yLlN0eWxlc1Np
ZGViYXJQYW5lID0gZnVuY3Rpb24oY29tcHV0ZWRTdHlsZVBhbmUpCiAgICAgdGhpcy5lbGVtZW50
LmFkZEV2ZW50TGlzdGVuZXIoImNvbnRleHRtZW51IiwgdGhpcy5fY29udGV4dE1lbnVFdmVudEZp
cmVkLmJpbmQodGhpcyksIHRydWUpOwogfQogCitXZWJJbnNwZWN0b3IuU3R5bGVzU2lkZWJhclBh
bmUuU3R5bGVWYWx1ZURlbGltaXRlcnMgPSAiIFx0XG5cIic6OywvKCkiOworCiAvLyBUYWtlbiBm
cm9tIGh0dHA6Ly93d3cudzMub3JnL1RSL0NTUzIxL3Byb3BpZHguaHRtbC4KIFdlYkluc3BlY3Rv
ci5TdHlsZXNTaWRlYmFyUGFuZS5Jbmhlcml0ZWRQcm9wZXJ0aWVzID0gWwogICAgICJhemltdXRo
IiwgImJvcmRlci1jb2xsYXBzZSIsICJib3JkZXItc3BhY2luZyIsICJjYXB0aW9uLXNpZGUiLCAi
Y29sb3IiLCAiY3Vyc29yIiwgImRpcmVjdGlvbiIsICJlbGV2YXRpb24iLApAQCAtMTM3OSw2ICsx
MzgxLDggQEAgV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVlRWxlbWVudC5wcm90b3R5cGUg
PSB7CiAgICAgICAgIH0KIAogICAgICAgICB0aGlzLmxpc3RJdGVtRWxlbWVudC5yZW1vdmVDaGls
ZHJlbigpOworICAgICAgICBuYW1lRWxlbWVudC5ub3JtYWxpemUoKTsKKyAgICAgICAgdmFsdWVF
bGVtZW50Lm5vcm1hbGl6ZSgpOwogCiAgICAgICAgIGlmICghdGhpcy50cmVlT3V0bGluZSkKICAg
ICAgICAgICAgIHJldHVybjsKQEAgLTE1MjksMTYgKzE1MzMsMTUgQEAgV2ViSW5zcGVjdG9yLlN0
eWxlUHJvcGVydHlUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAgICAgIHZhciBjb250ZXh0
ID0gewogICAgICAgICAgICAgZXhwYW5kZWQ6IHRoaXMuZXhwYW5kZWQsCiAgICAgICAgICAgICBo
YXNDaGlsZHJlbjogdGhpcy5oYXNDaGlsZHJlbiwKLSAgICAgICAgICAgIGtleURvd25MaXN0ZW5l
cjogaXNFZGl0aW5nTmFtZSA/IHRoaXMuZWRpdGluZ05hbWVLZXlEb3duLmJpbmQodGhpcykgOiB0
aGlzLmVkaXRpbmdWYWx1ZUtleURvd24uYmluZCh0aGlzKSwKLSAgICAgICAgICAgIGtleVByZXNz
TGlzdGVuZXI6IGlzRWRpdGluZ05hbWUgPyB0aGlzLmVkaXRpbmdOYW1lS2V5UHJlc3MuYmluZCh0
aGlzKSA6IHRoaXMuZWRpdGluZ1ZhbHVlS2V5UHJlc3MuYmluZCh0aGlzKSwKKyAgICAgICAgICAg
IGtleURvd25MaXN0ZW5lcjogaXNFZGl0aW5nTmFtZSA/IG51bGwgOiB0aGlzLmVkaXRpbmdWYWx1
ZUtleURvd24uYmluZCh0aGlzKSwKICAgICAgICAgICAgIGlzRWRpdGluZ05hbWU6IGlzRWRpdGlu
Z05hbWUsCiAgICAgICAgIH07CiAKICAgICAgICAgLy8gTGllIGFib3V0IG91ciBjaGlsZHJlbiB0
byBwcmV2ZW50IGV4cGFuZGluZyBvbiBkb3VibGUgY2xpY2sgYW5kIHRvIGNvbGxhcHNlIHNob3J0
aGFuZHMuCiAgICAgICAgIHRoaXMuaGFzQ2hpbGRyZW4gPSBmYWxzZTsKIAotICAgICAgICBzZWxl
Y3RFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLCBjb250ZXh0LmtleURvd25MaXN0
ZW5lciwgZmFsc2UpOwotICAgICAgICBzZWxlY3RFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtl
eXByZXNzIiwgY29udGV4dC5rZXlQcmVzc0xpc3RlbmVyLCBmYWxzZSk7CisgICAgICAgIGlmICgh
aXNFZGl0aW5nTmFtZSkKKyAgICAgICAgICAgIHNlbGVjdEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5l
cigia2V5ZG93biIsIGNvbnRleHQua2V5RG93bkxpc3RlbmVyLCBmYWxzZSk7CiAgICAgICAgIGlm
IChzZWxlY3RFbGVtZW50LnBhcmVudEVsZW1lbnQpCiAgICAgICAgICAgICBzZWxlY3RFbGVtZW50
LnBhcmVudEVsZW1lbnQuYWRkU3R5bGVDbGFzcygiY2hpbGQtZWRpdGluZyIpOwogICAgICAgICBz
ZWxlY3RFbGVtZW50LnRleHRDb250ZW50ID0gc2VsZWN0RWxlbWVudC50ZXh0Q29udGVudDsgLy8g
cmVtb3ZlIGNvbG9yIHN3YXRjaCBhbmQgdGhlIGxpa2UKQEAgLTE2MTMsNzYgKzE2MTYsMTUgQEAg
V2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVydHlUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAg
ICAgICAgICBjdXN0b21GaW5pc2hIYW5kbGVyOiBuYW1lVmFsdWVGaW5pc2hIYW5kbGVyLmJpbmQo
dGhpcywgY29udGV4dCwgaXNFZGl0aW5nTmFtZSksCiAgICAgICAgICAgICBwYXN0ZUhhbmRsZXI6
IGlzRWRpdGluZ05hbWUgPyBwYXN0ZUhhbmRsZXIuYmluZCh0aGlzLCBjb250ZXh0KSA6IG51bGwK
ICAgICAgICAgfSk7Ci0gICAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5zZXRCYXNlQW5kRXh0
ZW50KHNlbGVjdEVsZW1lbnQsIDAsIHNlbGVjdEVsZW1lbnQsIDEpOwotICAgIH0sCi0KLSAgICBl
ZGl0aW5nTmFtZUtleVByZXNzOiBmdW5jdGlvbihldmVudCkKLSAgICB7Ci0gICAgICAgIC8vIENv
bXBsZXRlIHByb3BlcnR5IG5hbWVzLgotICAgICAgICB2YXIgY2hhcmFjdGVyID0gZXZlbnQuZGF0
YS50b0xvd2VyQ2FzZSgpOwotICAgICAgICBpZiAoY2hhcmFjdGVyICYmIC9bYS16LV0vLnRlc3Qo
Y2hhcmFjdGVyKSkgewotICAgICAgICAgICAgdmFyIHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxl
Y3Rpb24oKTsKLSAgICAgICAgICAgIHZhciBwcmVmaXggPSBzZWxlY3Rpb24uYW5jaG9yTm9kZS50
ZXh0Q29udGVudC5zdWJzdHJpbmcoMCwgc2VsZWN0aW9uLmFuY2hvck9mZnNldCk7Ci0gICAgICAg
ICAgICB2YXIgcHJvcGVydHkgPSBXZWJJbnNwZWN0b3IuY3NzTmFtZUNvbXBsZXRpb25zLmZpcnN0
U3RhcnRzV2l0aChwcmVmaXggKyBjaGFyYWN0ZXIpOwogCi0gICAgICAgICAgICBpZiAoIXNlbGVj
dGlvbi5pc0NvbGxhcHNlZCkKLSAgICAgICAgICAgICAgICBzZWxlY3Rpb24uZGVsZXRlRnJvbURv
Y3VtZW50KCk7Ci0KLSAgICAgICAgICAgIHRoaXMucmVzdG9yZU5hbWVFbGVtZW50KCk7Ci0KLSAg
ICAgICAgICAgIGlmIChwcm9wZXJ0eSkgewotICAgICAgICAgICAgICAgIGlmIChwcm9wZXJ0eSAh
PT0gdGhpcy5uYW1lRWxlbWVudC50ZXh0Q29udGVudCkKLSAgICAgICAgICAgICAgICAgICAgdGhp
cy5uYW1lRWxlbWVudC50ZXh0Q29udGVudCA9IHByb3BlcnR5OwotICAgICAgICAgICAgICAgIHRo
aXMubmFtZUVsZW1lbnQuZmlyc3RDaGlsZC5zZWxlY3QocHJlZml4Lmxlbmd0aCArIDEpOwotICAg
ICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7Ci0gICAgICAgICAgICB9Ci0gICAg
ICAgIH0KLSAgICB9LAotCi0gICAgZWRpdGluZ1ZhbHVlS2V5UHJlc3M6IGZ1bmN0aW9uKGV2ZW50
KQotICAgIHsKLSAgICAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGNvbXBsZXRlIHByb3BlcnR5
IHZhbHVlcy4KLSAgICB9LAotCi0gICAgZWRpdGluZ05hbWVLZXlEb3duOiBmdW5jdGlvbihldmVu
dCkKLSAgICB7Ci0gICAgICAgIHZhciBzaG93TmV4dDsKLSAgICAgICAgaWYgKGV2ZW50LmtleUlk
ZW50aWZpZXIgPT09ICJVcCIpCi0gICAgICAgICAgICBzaG93TmV4dCA9IGZhbHNlOwotICAgICAg
ICBlbHNlIGlmIChldmVudC5rZXlJZGVudGlmaWVyID09PSAiRG93biIpCi0gICAgICAgICAgICBz
aG93TmV4dCA9IHRydWU7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJldHVybjsKLQotICAg
ICAgICB2YXIgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOwotICAgICAgICBpZiAo
IXNlbGVjdGlvbi5yYW5nZUNvdW50KQotICAgICAgICAgICAgcmV0dXJuOwotCi0gICAgICAgIHZh
ciBzZWxlY3Rpb25SYW5nZSA9IHNlbGVjdGlvbi5nZXRSYW5nZUF0KDApOwotICAgICAgICBpZiAo
c2VsZWN0aW9uUmFuZ2UuY29tbW9uQW5jZXN0b3JDb250YWluZXIgIT09IHRoaXMubmFtZUVsZW1l
bnQgJiYgIXNlbGVjdGlvblJhbmdlLmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyLmlzRGVzY2VuZGFu
dCh0aGlzLm5hbWVFbGVtZW50KSkKLSAgICAgICAgICAgIHJldHVybjsKLQotICAgICAgICBjb25z
dCBzdHlsZVZhbHVlRGVsaW1ldGVycyA9ICIgXHRcblwiJzo7LC8oKSI7Ci0gICAgICAgIHZhciB3
b3JkUmFuZ2UgPSBzZWxlY3Rpb25SYW5nZS5zdGFydENvbnRhaW5lci5yYW5nZU9mV29yZChzZWxl
Y3Rpb25SYW5nZS5zdGFydE9mZnNldCwgc3R5bGVWYWx1ZURlbGltZXRlcnMsIHRoaXMubmFtZUVs
ZW1lbnQpOwotICAgICAgICB2YXIgd29yZFN0cmluZyA9IHdvcmRSYW5nZS50b1N0cmluZygpOwot
ICAgICAgICB2YXIgY3Vyc29yUG9zaXRpb24gPSBzZWxlY3Rpb25SYW5nZS5zdGFydE9mZnNldCAh
PSBzZWxlY3Rpb25SYW5nZS5lbmRPZmZzZXQgPyBzZWxlY3Rpb25SYW5nZS5zdGFydE9mZnNldCA6
IDA7Ci0gICAgICAgIHZhciBwcmVmaXggPSBzZWxlY3Rpb25SYW5nZS5zdGFydENvbnRhaW5lci50
ZXh0Q29udGVudC5zdWJzdHJpbmcoMCwgY3Vyc29yUG9zaXRpb24pOwotICAgICAgICB2YXIgcHJv
cGVydHk7Ci0KLSAgICAgICAgaWYgKHNob3dOZXh0KQotICAgICAgICAgICAgcHJvcGVydHkgPSBX
ZWJJbnNwZWN0b3IuY3NzTmFtZUNvbXBsZXRpb25zLm5leHQod29yZFN0cmluZywgcHJlZml4KTsK
LSAgICAgICAgZWxzZQotICAgICAgICAgICAgcHJvcGVydHkgPSBXZWJJbnNwZWN0b3IuY3NzTmFt
ZUNvbXBsZXRpb25zLnByZXZpb3VzKHdvcmRTdHJpbmcsIHByZWZpeCk7Ci0KLSAgICAgICAgaWYg
KHByb3BlcnR5KSB7Ci0gICAgICAgICAgICB0aGlzLm5hbWVFbGVtZW50LnRleHRDb250ZW50ID0g
cHJvcGVydHk7Ci0gICAgICAgICAgICB0aGlzLm5hbWVFbGVtZW50LmZpcnN0Q2hpbGQuc2VsZWN0
KGN1cnNvclBvc2l0aW9uKTsKLSAgICAgICAgfQotICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVs
dCgpOworICAgICAgICB0aGlzLl9wcm9tcHQgPSBuZXcgV2ViSW5zcGVjdG9yLlN0eWxlc1NpZGVi
YXJQYW5lLkNTU1Byb3BlcnR5UHJvbXB0KHNlbGVjdEVsZW1lbnQsIGlzRWRpdGluZ05hbWUgPyBX
ZWJJbnNwZWN0b3IuY3NzTmFtZUNvbXBsZXRpb25zIDogV2ViSW5zcGVjdG9yLkNTU0tleXdvcmRD
b21wbGV0aW9ucy5mb3JQcm9wZXJ0eSh0aGlzLm5hbWUpKTsKKyAgICAgICAgd2luZG93LmdldFNl
bGVjdGlvbigpLnNldEJhc2VBbmRFeHRlbnQoc2VsZWN0RWxlbWVudCwgMCwgc2VsZWN0RWxlbWVu
dCwgMSk7CiAgICAgfSwKIAogICAgIGVkaXRpbmdWYWx1ZUtleURvd246IGZ1bmN0aW9uKGV2ZW50
KQogICAgIHsKKyAgICAgICAgaWYgKGV2ZW50LmhhbmRsZWQpCisgICAgICAgICAgICByZXR1cm47
CiAgICAgICAgIHZhciBhcnJvd0tleVByZXNzZWQgPSAoZXZlbnQua2V5SWRlbnRpZmllciA9PT0g
IlVwIiB8fCBldmVudC5rZXlJZGVudGlmaWVyID09PSAiRG93biIpOwogICAgICAgICB2YXIgcGFn
ZUtleVByZXNzZWQgPSAoZXZlbnQua2V5SWRlbnRpZmllciA9PT0gIlBhZ2VVcCIgfHwgZXZlbnQu
a2V5SWRlbnRpZmllciA9PT0gIlBhZ2VEb3duIik7CiAgICAgICAgIGlmICghYXJyb3dLZXlQcmVz
c2VkICYmICFwYWdlS2V5UHJlc3NlZCkKQEAgLTE2OTYsOCArMTYzOCw3IEBAIFdlYkluc3BlY3Rv
ci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewogICAgICAgICBpZiAoc2Vs
ZWN0aW9uUmFuZ2UuY29tbW9uQW5jZXN0b3JDb250YWluZXIgIT09IHRoaXMudmFsdWVFbGVtZW50
ICYmICFzZWxlY3Rpb25SYW5nZS5jb21tb25BbmNlc3RvckNvbnRhaW5lci5pc0Rlc2NlbmRhbnQo
dGhpcy52YWx1ZUVsZW1lbnQpKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIGNvbnN0
IHN0eWxlVmFsdWVEZWxpbWV0ZXJzID0gIiBcdFxuXCInOjssLygpIjsKLSAgICAgICAgdmFyIHdv
cmRSYW5nZSA9IHNlbGVjdGlvblJhbmdlLnN0YXJ0Q29udGFpbmVyLnJhbmdlT2ZXb3JkKHNlbGVj
dGlvblJhbmdlLnN0YXJ0T2Zmc2V0LCBzdHlsZVZhbHVlRGVsaW1ldGVycywgdGhpcy52YWx1ZUVs
ZW1lbnQpOworICAgICAgICB2YXIgd29yZFJhbmdlID0gc2VsZWN0aW9uUmFuZ2Uuc3RhcnRDb250
YWluZXIucmFuZ2VPZldvcmQoc2VsZWN0aW9uUmFuZ2Uuc3RhcnRPZmZzZXQsIFdlYkluc3BlY3Rv
ci5TdHlsZXNTaWRlYmFyUGFuZS5TdHlsZVZhbHVlRGVsaW1pdGVycywgdGhpcy52YWx1ZUVsZW1l
bnQpOwogICAgICAgICB2YXIgd29yZFN0cmluZyA9IHdvcmRSYW5nZS50b1N0cmluZygpOwogICAg
ICAgICB2YXIgcmVwbGFjZW1lbnRTdHJpbmcgPSB3b3JkU3RyaW5nOwogCkBAIC0xNzM5LDUwICsx
NjgwLDUzIEBAIFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBl
ID0gewogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICByZXBsYWNlbWVudFN0cmluZyA9IHBy
ZWZpeCArIG51bWJlciArIHN1ZmZpeDsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIC8v
IEZJWE1FOiB0aGlzIHNob3VsZCBjeWNsZSB0aHJvdWdoIGtub3duIGtleXdvcmRzIGZvciB0aGUg
Y3VycmVudCBwcm9wZXJ0eSB2YWx1ZS4KLSAgICAgICAgfQogCi0gICAgICAgIHZhciByZXBsYWNl
bWVudFRleHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUocmVwbGFjZW1lbnRTdHJpbmcp
OworICAgICAgICAgICAgdmFyIHJlcGxhY2VtZW50VGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVU
ZXh0Tm9kZShyZXBsYWNlbWVudFN0cmluZyk7CiAKLSAgICAgICAgd29yZFJhbmdlLmRlbGV0ZUNv
bnRlbnRzKCk7Ci0gICAgICAgIHdvcmRSYW5nZS5pbnNlcnROb2RlKHJlcGxhY2VtZW50VGV4dE5v
ZGUpOworICAgICAgICAgICAgd29yZFJhbmdlLmRlbGV0ZUNvbnRlbnRzKCk7CisgICAgICAgICAg
ICB3b3JkUmFuZ2UuaW5zZXJ0Tm9kZShyZXBsYWNlbWVudFRleHROb2RlKTsKIAotICAgICAgICB2
YXIgZmluYWxTZWxlY3Rpb25SYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7Ci0gICAgICAg
IGZpbmFsU2VsZWN0aW9uUmFuZ2Uuc2V0U3RhcnQocmVwbGFjZW1lbnRUZXh0Tm9kZSwgMCk7Ci0g
ICAgICAgIGZpbmFsU2VsZWN0aW9uUmFuZ2Uuc2V0RW5kKHJlcGxhY2VtZW50VGV4dE5vZGUsIHJl
cGxhY2VtZW50U3RyaW5nLmxlbmd0aCk7CisgICAgICAgICAgICB2YXIgZmluYWxTZWxlY3Rpb25S
YW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgICAgICAgICBmaW5hbFNlbGVjdGlv
blJhbmdlLnNldFN0YXJ0KHJlcGxhY2VtZW50VGV4dE5vZGUsIDApOworICAgICAgICAgICAgZmlu
YWxTZWxlY3Rpb25SYW5nZS5zZXRFbmQocmVwbGFjZW1lbnRUZXh0Tm9kZSwgcmVwbGFjZW1lbnRT
dHJpbmcubGVuZ3RoKTsKIAotICAgICAgICBzZWxlY3Rpb24ucmVtb3ZlQWxsUmFuZ2VzKCk7Ci0g
ICAgICAgIHNlbGVjdGlvbi5hZGRSYW5nZShmaW5hbFNlbGVjdGlvblJhbmdlKTsKKyAgICAgICAg
ICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKKyAgICAgICAgICAgIHNlbGVjdGlvbi5h
ZGRSYW5nZShmaW5hbFNlbGVjdGlvblJhbmdlKTsKIAotICAgICAgICBldmVudC5wcmV2ZW50RGVm
YXVsdCgpOworICAgICAgICAgICAgZXZlbnQuaGFuZGxlZCA9IHRydWU7CisgICAgICAgICAgICBl
dmVudC5wcmV2ZW50RGVmYXVsdCgpOwogCi0gICAgICAgIGlmICghKCJvcmlnaW5hbFByb3BlcnR5
VGV4dCIgaW4gdGhpcykpIHsKLSAgICAgICAgICAgIC8vIFJlbWVtYmVyIHRoZSBydWxlJ3Mgb3Jp
Z2luYWwgQ1NTIHRleHQgb24gW1BhZ2VdKFVwfERvd24pLCBzbyBpdCBjYW4gYmUgcmVzdG9yZWQK
LSAgICAgICAgICAgIC8vIGlmIHRoZSBlZGl0aW5nIGlzIGNhbmNlbGVkLgotICAgICAgICAgICAg
dGhpcy5vcmlnaW5hbFByb3BlcnR5VGV4dCA9IHRoaXMucHJvcGVydHkucHJvcGVydHlUZXh0Owot
ICAgICAgICB9CisgICAgICAgICAgICBpZiAoISgib3JpZ2luYWxQcm9wZXJ0eVRleHQiIGluIHRo
aXMpKSB7CisgICAgICAgICAgICAgICAgLy8gUmVtZW1iZXIgdGhlIHJ1bGUncyBvcmlnaW5hbCBD
U1MgdGV4dCBvbiBbUGFnZV0oVXB8RG93biksIHNvIGl0IGNhbiBiZSByZXN0b3JlZAorICAgICAg
ICAgICAgICAgIC8vIGlmIHRoZSBlZGl0aW5nIGlzIGNhbmNlbGVkLgorICAgICAgICAgICAgICAg
IHRoaXMub3JpZ2luYWxQcm9wZXJ0eVRleHQgPSB0aGlzLnByb3BlcnR5LnByb3BlcnR5VGV4dDsK
KyAgICAgICAgICAgIH0KIAotICAgICAgICAvLyBTeW50aGVzaXplIHByb3BlcnR5IHRleHQgZGlz
cmVnYXJkaW5nIGFueSBjb21tZW50cywgY3VzdG9tIHdoaXRlc3BhY2UgZXRjLgotICAgICAgICB0
aGlzLmFwcGx5U3R5bGVUZXh0KHRoaXMubmFtZUVsZW1lbnQudGV4dENvbnRlbnQgKyAiOiAiICsg
dGhpcy52YWx1ZUVsZW1lbnQudGV4dENvbnRlbnQpOworICAgICAgICAgICAgLy8gU3ludGhlc2l6
ZSBwcm9wZXJ0eSB0ZXh0IGRpc3JlZ2FyZGluZyBhbnkgY29tbWVudHMsIGN1c3RvbSB3aGl0ZXNw
YWNlIGV0Yy4KKyAgICAgICAgICAgIHRoaXMuYXBwbHlTdHlsZVRleHQodGhpcy5uYW1lRWxlbWVu
dC50ZXh0Q29udGVudCArICI6ICIgKyB0aGlzLnZhbHVlRWxlbWVudC50ZXh0Q29udGVudCk7Cisg
ICAgICAgIH0KICAgICB9LAogCiAgICAgZWRpdGluZ0VuZGVkOiBmdW5jdGlvbihjb250ZXh0KQog
ICAgIHsKKyAgICAgICAgaWYgKHRoaXMuX3Byb21wdCkKKyAgICAgICAgICAgIHRoaXMuX3Byb21w
dC5jbGVhckF1dG9Db21wbGV0ZSh0cnVlKTsKICAgICAgICAgdGhpcy5oYXNDaGlsZHJlbiA9IGNv
bnRleHQuaGFzQ2hpbGRyZW47CiAgICAgICAgIGlmIChjb250ZXh0LmV4cGFuZGVkKQogICAgICAg
ICAgICAgdGhpcy5leHBhbmQoKTsKICAgICAgICAgdmFyIGVkaXRlZEVsZW1lbnQgPSBjb250ZXh0
LmlzRWRpdGluZ05hbWUgPyB0aGlzLm5hbWVFbGVtZW50IDogdGhpcy52YWx1ZUVsZW1lbnQ7Ci0g
ICAgICAgIGVkaXRlZEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsIGNvbnRl
eHQua2V5RG93bkxpc3RlbmVyLCBmYWxzZSk7Ci0gICAgICAgIGVkaXRlZEVsZW1lbnQucmVtb3Zl
RXZlbnRMaXN0ZW5lcigia2V5cHJlc3MiLCBjb250ZXh0LmtleVByZXNzTGlzdGVuZXIsIGZhbHNl
KTsKKyAgICAgICAgaWYgKCFjb250ZXh0LmlzRWRpdGluZ05hbWUpCisgICAgICAgICAgICBlZGl0
ZWRFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLCBjb250ZXh0LmtleURvd25M
aXN0ZW5lciwgZmFsc2UpOwogICAgICAgICBpZiAoZWRpdGVkRWxlbWVudC5wYXJlbnRFbGVtZW50
KQogICAgICAgICAgICAgZWRpdGVkRWxlbWVudC5wYXJlbnRFbGVtZW50LnJlbW92ZVN0eWxlQ2xh
c3MoImNoaWxkLWVkaXRpbmciKTsKIAogICAgICAgICBkZWxldGUgdGhpcy5vcmlnaW5hbFByb3Bl
cnR5VGV4dDsKKyAgICAgICAgZGVsZXRlIHRoaXMuX3Byb21wdDsKICAgICB9LAogCiAgICAgZWRp
dGluZ0NhbmNlbGxlZDogZnVuY3Rpb24oZWxlbWVudCwgY29udGV4dCkKICAgICB7CisgICAgICAg
IHRoaXMuZWRpdGluZ0VuZGVkKGNvbnRleHQpOwogICAgICAgICBpZiAoIm9yaWdpbmFsUHJvcGVy
dHlUZXh0IiBpbiB0aGlzKQogICAgICAgICAgICAgdGhpcy5hcHBseVN0eWxlVGV4dCh0aGlzLm9y
aWdpbmFsUHJvcGVydHlUZXh0LCB0cnVlKTsKICAgICAgICAgZWxzZSB7CkBAIC0xNzkxLDcgKzE3
MzUsNiBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZSA9
IHsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVRpdGxlKCk7
CiAgICAgICAgIH0KLSAgICAgICAgdGhpcy5lZGl0aW5nRW5kZWQoY29udGV4dCk7CiAgICAgfSwK
IAogICAgIGVkaXRpbmdDb21taXR0ZWQ6IGZ1bmN0aW9uKGVsZW1lbnQsIHVzZXJJbnB1dCwgcHJl
dmlvdXNDb250ZW50LCBjb250ZXh0LCBtb3ZlRGlyZWN0aW9uKQpAQCAtMTk0OCwzICsxODkxLDU3
IEBAIFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnR5VHJlZUVsZW1lbnQucHJvdG90eXBlID0gewog
fQogCiBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0eVRyZWVFbGVtZW50LnByb3RvdHlwZS5fX3By
b3RvX18gPSBUcmVlRWxlbWVudC5wcm90b3R5cGU7CisKK1dlYkluc3BlY3Rvci5TdHlsZXNTaWRl
YmFyUGFuZS5DU1NQcm9wZXJ0eVByb21wdCA9IGZ1bmN0aW9uKGVsZW1lbnQsIGNzc0NvbXBsZXRp
b25zKQoreworICAgIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LmNhbGwodGhpcywgZWxlbWVudCwg
dGhpcy5fYnVpbGRQcm9wZXJ0eUNvbXBsZXRpb25zLmJpbmQodGhpcyksIFdlYkluc3BlY3Rvci5T
dHlsZXNTaWRlYmFyUGFuZS5TdHlsZVZhbHVlRGVsaW1pdGVycywgdHJ1ZSk7CisgICAgdGhpcy5f
Y3NzQ29tcGxldGlvbnMgPSBjc3NDb21wbGV0aW9uczsKK30KKworV2ViSW5zcGVjdG9yLlN0eWxl
c1NpZGViYXJQYW5lLkNTU1Byb3BlcnR5UHJvbXB0LnByb3RvdHlwZSA9IHsKKyAgICB1cEtleVBy
ZXNzZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5faGFuZGxlTmFtZU9y
VmFsdWVVcERvd24oZXZlbnQpOworICAgIH0sCisKKyAgICBkb3duS2V5UHJlc3NlZDogZnVuY3Rp
b24oZXZlbnQpCisgICAgeworICAgICAgICB0aGlzLl9oYW5kbGVOYW1lT3JWYWx1ZVVwRG93bihl
dmVudCk7CisgICAgfSwKKworICAgIHRhYktleVByZXNzZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAg
IHsKKyAgICAgICAgdGhpcy5hY2NlcHRBdXRvQ29tcGxldGUoKTsKKyAgICB9LAorCisgICAgX2hh
bmRsZU5hbWVPclZhbHVlVXBEb3duOiBmdW5jdGlvbihldmVudCkKKyAgICB7CisgICAgICAgIHZh
ciByZXZlcnNlID0gZXZlbnQua2V5SWRlbnRpZmllciA9PT0gIlVwIjsKKyAgICAgICAgaWYgKHRo
aXMuYXV0b0NvbXBsZXRlRWxlbWVudCkKKyAgICAgICAgICAgIHRoaXMuY29tcGxldGUoZmFsc2Us
IHJldmVyc2UpOyAvLyBBY2NlcHQgdGhlIGN1cnJlbnQgc3VnZ2VzdGlvbiwgaWYgYW55LgorICAg
ICAgICB0aGlzLmNvbXBsZXRlKGZhbHNlLCByZXZlcnNlKTsgLy8gQWN0dWFsbHkgaW5jcmVtZW50
L2RlY3JlbWVudCB0aGUgc3VnZ2VzdGlvbi4KKyAgICAgICAgZXZlbnQuaGFuZGxlZCA9IHRydWU7
CisgICAgfSwKKworICAgIF9idWlsZFByb3BlcnR5Q29tcGxldGlvbnM6IGZ1bmN0aW9uKHdvcmRS
YW5nZSwgYmVzdE1hdGNoT25seSwgY29tcGxldGlvbnNSZWFkeUNhbGxiYWNrKQorICAgIHsKKyAg
ICAgICAgdmFyIHByZWZpeCA9IHdvcmRSYW5nZS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCk7Cisg
ICAgICAgIGlmICghcHJlZml4Lmxlbmd0aCkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAg
ICB2YXIgcmVzdWx0czsKKyAgICAgICAgaWYgKGJlc3RNYXRjaE9ubHkpIHsKKyAgICAgICAgICAg
IHJlc3VsdHMgPSBbXTsKKyAgICAgICAgICAgIHZhciBmaXJzdE1hdGNoID0gdGhpcy5fY3NzQ29t
cGxldGlvbnMuZmlyc3RTdGFydHNXaXRoKHByZWZpeCk7CisgICAgICAgICAgICBpZiAoZmlyc3RN
YXRjaCkKKyAgICAgICAgICAgICAgICByZXN1bHRzLnB1c2goZmlyc3RNYXRjaCk7CisgICAgICAg
ICAgICByZXR1cm4gY29tcGxldGlvbnNSZWFkeUNhbGxiYWNrKHJlc3VsdHMpOworICAgICAgICB9
CisKKyAgICAgICAgcmVzdWx0cyA9IHRoaXMuX2Nzc0NvbXBsZXRpb25zLnN0YXJ0c1dpdGgocHJl
Zml4KTsKKyAgICAgICAgaWYgKHJlc3VsdHMpCisgICAgICAgICAgICBjb21wbGV0aW9uc1JlYWR5
Q2FsbGJhY2socmVzdWx0cyk7CisgICAgfQorfQorCitXZWJJbnNwZWN0b3IuU3R5bGVzU2lkZWJh
clBhbmUuQ1NTUHJvcGVydHlQcm9tcHQucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rv
ci5UZXh0UHJvbXB0LnByb3RvdHlwZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvVGV4dFByb21wdC5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvVGV4dFByb21wdC5qcwppbmRleCAyMWE1YmRlLi5kOWFlNWYyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RleHRQcm9tcHQuanMKKysrIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UZXh0UHJvbXB0LmpzCkBAIC0yNiwx
NCArMjYsMTYgQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotV2ViSW5zcGVjdG9yLlRleHRQcm9tcHQg
PSBmdW5jdGlvbihlbGVtZW50LCBjb21wbGV0aW9ucywgc3RvcENoYXJhY3RlcnMpCitXZWJJbnNw
ZWN0b3IuVGV4dFByb21wdCA9IGZ1bmN0aW9uKGVsZW1lbnQsIGNvbXBsZXRpb25zLCBzdG9wQ2hh
cmFjdGVycywgb21pdEhpc3RvcnkpCiB7CiAgICAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDsKICAg
ICB0aGlzLmVsZW1lbnQuYWRkU3R5bGVDbGFzcygidGV4dC1wcm9tcHQiKTsKICAgICB0aGlzLmNv
bXBsZXRpb25zID0gY29tcGxldGlvbnM7CiAgICAgdGhpcy5jb21wbGV0aW9uU3RvcENoYXJhY3Rl
cnMgPSBzdG9wQ2hhcmFjdGVyczsKLSAgICB0aGlzLmhpc3RvcnkgPSBbXTsKLSAgICB0aGlzLmhp
c3RvcnlPZmZzZXQgPSAwOworICAgIGlmICghb21pdEhpc3RvcnkpIHsKKyAgICAgICAgdGhpcy5o
aXN0b3J5ID0gW107CisgICAgICAgIHRoaXMuaGlzdG9yeU9mZnNldCA9IDA7CisgICAgfQogICAg
IHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgdGhpcy5fb25LZXlEb3du
LmJpbmQodGhpcyksIHRydWUpOwogfQogCkBAIC02MywxNiArNjUsMjAgQEAgV2ViSW5zcGVjdG9y
LlRleHRQcm9tcHQucHJvdG90eXBlID0gewogICAgICAgICAgICAgdGhpcy5hdXRvQ29tcGxldGVT
b29uKCk7CiAgICAgICAgIH0KIAorICAgICAgICBpZiAoZXZlbnQuaGFuZGxlZCkKKyAgICAgICAg
ICAgIHJldHVybjsKKwogICAgICAgICB2YXIgaGFuZGxlZCA9IGZhbHNlOworCiAgICAgICAgIHN3
aXRjaCAoZXZlbnQua2V5SWRlbnRpZmllcikgewogICAgICAgICAgICAgY2FzZSAiVXAiOgotICAg
ICAgICAgICAgICAgIHRoaXMuX3VwS2V5UHJlc3NlZChldmVudCk7CisgICAgICAgICAgICAgICAg
dGhpcy51cEtleVByZXNzZWQoZXZlbnQpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAg
ICAgICAgY2FzZSAiRG93biI6Ci0gICAgICAgICAgICAgICAgdGhpcy5fZG93bktleVByZXNzZWQo
ZXZlbnQpOworICAgICAgICAgICAgICAgIHRoaXMuZG93bktleVByZXNzZWQoZXZlbnQpOwogICAg
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2FzZSAiVSswMDA5IjogLy8gVGFiCi0g
ICAgICAgICAgICAgICAgdGhpcy5fdGFiS2V5UHJlc3NlZChldmVudCk7CisgICAgICAgICAgICAg
ICAgdGhpcy50YWJLZXlQcmVzc2VkKGV2ZW50KTsKICAgICAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgICAgIGNhc2UgIlJpZ2h0IjoKICAgICAgICAgICAgIGNhc2UgIkVuZCI6CkBAIC04NSw3
ICs5MSw3IEBAIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAg
ICAgIGNhc2UgIkNvbnRyb2wiOgogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAg
Y2FzZSAiVSswMDUwIjogLy8gQ3RybCtQID0gUHJldmlvdXMKLSAgICAgICAgICAgICAgICBpZiAo
V2ViSW5zcGVjdG9yLmlzTWFjKCkgJiYgZXZlbnQuY3RybEtleSAmJiAhZXZlbnQubWV0YUtleSAm
JiAhZXZlbnQuYWx0S2V5ICYmICFldmVudC5zaGlmdEtleSkgeworICAgICAgICAgICAgICAgIGlm
ICh0aGlzLmhpc3RvcnkgJiYgV2ViSW5zcGVjdG9yLmlzTWFjKCkgJiYgZXZlbnQuY3RybEtleSAm
JiAhZXZlbnQubWV0YUtleSAmJiAhZXZlbnQuYWx0S2V5ICYmICFldmVudC5zaGlmdEtleSkgewog
ICAgICAgICAgICAgICAgICAgICBoYW5kbGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAg
dGhpcy5fbW92ZUJhY2tJbkhpc3RvcnkoKTsKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CkBA
IC05Myw3ICs5OSw3IEBAIFdlYkluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKICAg
ICAgICAgICAgICAgICBkZWZhdWx0QWN0aW9uLmNhbGwodGhpcyk7CiAgICAgICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgICAgICBjYXNlICJVKzAwNEUiOiAvLyBDdHJsK04gPSBOZXh0Ci0gICAg
ICAgICAgICAgICAgaWYgKFdlYkluc3BlY3Rvci5pc01hYygpICYmIGV2ZW50LmN0cmxLZXkgJiYg
IWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50LmFsdEtleSAmJiAhZXZlbnQuc2hpZnRLZXkpIHsKKyAg
ICAgICAgICAgICAgICBpZiAodGhpcy5oaXN0b3J5ICYmIFdlYkluc3BlY3Rvci5pc01hYygpICYm
IGV2ZW50LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50LmFsdEtleSAmJiAhZXZl
bnQuc2hpZnRLZXkpIHsKICAgICAgICAgICAgICAgICAgICAgaGFuZGxlZCA9IHRydWU7CiAgICAg
ICAgICAgICAgICAgICAgIHRoaXMuX21vdmVGb3J3YXJkSW5IaXN0b3J5KCk7CiAgICAgICAgICAg
ICAgICAgICAgIGJyZWFrOwpAQCAtMTA1LDcgKzExMSw5IEBAIFdlYkluc3BlY3Rvci5UZXh0UHJv
bXB0LnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogCisg
ICAgICAgIGhhbmRsZWQgfD0gZXZlbnQuaGFuZGxlZDsKICAgICAgICAgaWYgKGhhbmRsZWQpIHsK
KyAgICAgICAgICAgIGV2ZW50LmhhbmRsZWQgPSB0cnVlOwogICAgICAgICAgICAgZXZlbnQucHJl
dmVudERlZmF1bHQoKTsKICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwogICAg
ICAgICB9CkBAIC0zNzYsMzkgKzM4NCwzMyBAQCBXZWJJbnNwZWN0b3IuVGV4dFByb21wdC5wcm90
b3R5cGUgPSB7CiAgICAgICAgIHNlbGVjdGlvbi5hZGRSYW5nZShzZWxlY3Rpb25SYW5nZSk7CiAg
ICAgfSwKIAotICAgIF90YWJLZXlQcmVzc2VkOiBmdW5jdGlvbihldmVudCkKKyAgICB0YWJLZXlQ
cmVzc2VkOiBmdW5jdGlvbihldmVudCkKICAgICB7Ci0gICAgICAgIGV2ZW50LnByZXZlbnREZWZh
dWx0KCk7Ci0gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwotCisgICAgICAgIGV2ZW50
LmhhbmRsZWQgPSB0cnVlOwogICAgICAgICB0aGlzLmNvbXBsZXRlKGZhbHNlLCBldmVudC5zaGlm
dEtleSk7CiAgICAgfSwKIAotICAgIF91cEtleVByZXNzZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAg
IHVwS2V5UHJlc3NlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMu
aXNDYXJldE9uRmlyc3RMaW5lKCkpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgZXZl
bnQucHJldmVudERlZmF1bHQoKTsKLSAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7Ci0K
KyAgICAgICAgZXZlbnQuaGFuZGxlZCA9IHRydWU7CiAgICAgICAgIHRoaXMuX21vdmVCYWNrSW5I
aXN0b3J5KCk7CiAgICAgfSwKIAotICAgIF9kb3duS2V5UHJlc3NlZDogZnVuY3Rpb24oZXZlbnQp
CisgICAgZG93bktleVByZXNzZWQ6IGZ1bmN0aW9uKGV2ZW50KQogICAgIHsKICAgICAgICAgaWYg
KCF0aGlzLmlzQ2FyZXRPbkxhc3RMaW5lKCkpCiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAg
ICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKLSAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9u
KCk7Ci0KKyAgICAgICAgZXZlbnQuaGFuZGxlZCA9IHRydWU7CiAgICAgICAgIHRoaXMuX21vdmVG
b3J3YXJkSW5IaXN0b3J5KCk7CiAgICAgfSwKIAogICAgIF9tb3ZlQmFja0luSGlzdG9yeTogZnVu
Y3Rpb24oKQogICAgIHsKLSAgICAgICAgaWYgKHRoaXMuaGlzdG9yeU9mZnNldCA9PSB0aGlzLmhp
c3RvcnkubGVuZ3RoKQorICAgICAgICBpZiAoIXRoaXMuaGlzdG9yeSB8fCB0aGlzLmhpc3RvcnlP
ZmZzZXQgPT0gdGhpcy5oaXN0b3J5Lmxlbmd0aCkKICAgICAgICAgICAgIHJldHVybjsKIAogICAg
ICAgICB0aGlzLmNsZWFyQXV0b0NvbXBsZXRlKHRydWUpOwpAQCAtNDM3LDcgKzQzOSw3IEBAIFdl
Ykluc3BlY3Rvci5UZXh0UHJvbXB0LnByb3RvdHlwZSA9IHsKIAogICAgIF9tb3ZlRm9yd2FyZElu
SGlzdG9yeTogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAgaWYgKHRoaXMuaGlzdG9yeU9mZnNl
dCA9PT0gMCkKKyAgICAgICAgaWYgKCF0aGlzLmhpc3RvcnkgfHwgdGhpcy5oaXN0b3J5T2Zmc2V0
ID09PSAwKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHRoaXMuY2xlYXJBdXRvQ29t
cGxldGUodHJ1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL2luc3BlY3Rvci5jc3MgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2lu
c3BlY3Rvci5jc3MKaW5kZXggYzkwODQyNy4uZjYyOWQxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuY3NzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmNzcwpAQCAtNzc4LDggKzc3OCw4IEBA
IGJvZHkucGxhdGZvcm0tbGludXggLm1vbm9zcGFjZSwgYm9keS5wbGF0Zm9ybS1saW51eCAuc291
cmNlLWNvZGUgewogICAgIGNvbG9yOiByZWQ7CiB9CiAKLS5hdXRvLWNvbXBsZXRlLXRleHQgewot
ICAgIGNvbG9yOiByZ2IoMTI4LCAxMjgsIDEyOCk7CisuYXV0by1jb21wbGV0ZS10ZXh0LCAuZWRp
dGluZyAuYXV0by1jb21wbGV0ZS10ZXh0IHsKKyAgICBjb2xvcjogcmdiKDEyOCwgMTI4LCAxMjgp
ICFpbXBvcnRhbnQ7CiAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAgICAtd2Via2l0
LXVzZXItbW9kaWZ5OiByZWFkLW9ubHk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRtbAppbmRleCA0NGYwOTZmLi4xMjk4Zjk0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1s
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmh0bWwK
QEAgLTkyLDYgKzkyLDcgQEAgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCIgc3JjPSJFdmVudExpc3RlbmVyc1NpZGViYXJQYW5lLmpzIj48L3NjcmlwdD4KICAgICA8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJDb2xvci5qcyI+PC9zY3JpcHQ+CiAg
ICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iQ1NTQ29tcGxldGlvbnMuanMi
Pjwvc2NyaXB0PgorICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IkNTU0tl
eXdvcmRDb21wbGV0aW9ucy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiIHNyYz0iU3R5bGVzU2lkZWJhclBhbmUuanMiPjwvc2NyaXB0PgogICAgIDxzY3Jp
cHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IlBhbmVsRW5hYmxlclZpZXcuanMiPjwvc2Ny
aXB0PgogICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IldlbGNvbWVWaWV3
LmpzIj48L3NjcmlwdD4K
</data>
<flag name="review"
          id="70530"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>