<?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>209923</bug_id>
          
          <creation_ts>2020-04-02 13:29:21 -0700</creation_ts>
          <short_desc>[WebAuthn] Cancel WebAuthn requests after users cancelling LocalAuthentication prompts</short_desc>
          <delta_ts>2020-04-07 16:01:27 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>181943</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jiewen Tan">jiewen_tan</reporter>
          <assigned_to name="Jiewen Tan">jiewen_tan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1637031</commentid>
    <comment_count>0</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2020-04-02 13:29:21 -0700</bug_when>
    <thetext>Cancel WebAuthn requests after users cancelling LocalAuthentication prompts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637032</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-02 13:30:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/61223713&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637046</commentid>
    <comment_count>2</comment_count>
      <attachid>395295</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2020-04-02 13:44:26 -0700</bug_when>
    <thetext>Created attachment 395295
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637181</commentid>
    <comment_count>3</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2020-04-02 17:56:02 -0700</bug_when>
    <thetext>Windows port failures don&apos;t seem to be related.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638134</commentid>
    <comment_count>4</comment_count>
      <attachid>395295</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-04-06 09:58:38 -0700</bug_when>
    <thetext>Comment on attachment 395295
Patch

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

Very nice! r=me (but please include my suggested changes).

&gt; Source/WebCore/ChangeLog:3
&gt; +        [WebAuthn] Cancel WebAuthn requests after users cancelling LocalAuthentication prompts

[WebAuthn] Cancel WebAuthn requests when users cancel LocalAuthentication prompts

&gt; Source/WebKit/ChangeLog:10
&gt; +        users cancellation on LocalAuthentication UI as it were on UI clients&apos; WebAuthn UI.

&quot;Here, we should treat user cancellation of the LocalAuthentication UI as if it were being done on the UI Client&apos;s WebAuthn UI.&quot;

&gt; Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:-63
&gt; -

Please remove this whitespace change, which will remove this entire file from the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638833</commentid>
    <comment_count>5</comment_count>
      <attachid>395295</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2020-04-07 15:12:31 -0700</bug_when>
    <thetext>Comment on attachment 395295
Patch

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

Thanks Brent for r+ this patch.

&gt;&gt; Source/WebCore/ChangeLog:3
&gt;&gt; +        [WebAuthn] Cancel WebAuthn requests after users cancelling LocalAuthentication prompts
&gt; 
&gt; [WebAuthn] Cancel WebAuthn requests when users cancel LocalAuthentication prompts

Fixed.

&gt;&gt; Source/WebKit/ChangeLog:10
&gt;&gt; +        users cancellation on LocalAuthentication UI as it were on UI clients&apos; WebAuthn UI.
&gt; 
&gt; &quot;Here, we should treat user cancellation of the LocalAuthentication UI as if it were being done on the UI Client&apos;s WebAuthn UI.&quot;

Fixed.

&gt;&gt; Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:-63
&gt;&gt; -
&gt; 
&gt; Please remove this whitespace change, which will remove this entire file from the patch.

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638836</commentid>
    <comment_count>6</comment_count>
      <attachid>395745</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2020-04-07 15:14:52 -0700</bug_when>
    <thetext>Created attachment 395745
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638865</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-07 16:01:27 -0700</bug_when>
    <thetext>Committed r259680: &lt;https://trac.webkit.org/changeset/259680&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 395745.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395295</attachid>
            <date>2020-04-02 13:44:26 -0700</date>
            <delta_ts>2020-04-06 09:58:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-209923-20200402134425.patch</filename>
            <type>text/plain</type>
            <size>43542</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5MzA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWY2ZjFjYjVmZWZhNjU0
N2ExYTUzNTM5YmZlZjI0MGVlYzE4OWI0NC4uMGNmMmViOGExOGM1NDExYzhiNTY3MmI0NTFkOTEz
ZmM0ZThkZTRjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA0LTAyICBKaWV3
ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkF1dGhuXSBDYW5j
ZWwgV2ViQXV0aG4gcmVxdWVzdHMgYWZ0ZXIgdXNlcnMgY2FuY2VsbGluZyBMb2NhbEF1dGhlbnRp
Y2F0aW9uIHByb21wdHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIwOTkyMworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjEyMjM3MTM+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ292ZXJlZCBieSBuZXcg
dGVzdHMgd2l0aGluIGV4aXN0aW5nIHRlc3QgZmlsZXMuCisKKyAgICAgICAgKiB0ZXN0aW5nL01v
Y2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Ok1v
Y2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246OkxvY2FsQ29uZmlndXJhdGlvbjo6ZW5j
b2RlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZp
Z3VyYXRpb246OkxvY2FsQ29uZmlndXJhdGlvbjo6ZGVjb2RlKToKKyAgICAgICAgKiB0ZXN0aW5n
L01vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaWRsOgorICAgICAgICBBZGRzIGEg
bmV3IHBhcmFtZXRlciB0byByZWZsZWN0IHVzZXIgY2FuY2VsbGF0aW9ucyBvbiBMb2NhbEF1dGhl
bnRpY2F0aW9uIFVJLgorCiAyMDIwLTAzLTMxICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+
CiAKICAgICAgICAgQXBwZW5kIFVwZ3JhZGUtSW5zZWN1cmUtUmVxdWVzdHMgaGVhZGVyIGluIENh
Y2hlZFJlc291cmNlTG9hZGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc5NTNlZjFlODM3NmY4Yzk3MWI1NTI4Yzll
NmZkNGM4MmIyYTZiZTAuLjMzOGVlZDhhNWIwNTE1YTU4OTZlMzlhM2Y3YmIxODU4ZjExZmFkNWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMzMgQEAKKzIwMjAtMDQtMDIgIEppZXdlbiBUYW4gIDxqaWV3
ZW5fdGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbV2ViQXV0aG5dIENhbmNlbCBXZWJBdXRobiBy
ZXF1ZXN0cyBhZnRlciB1c2VycyBjYW5jZWxsaW5nIExvY2FsQXV0aGVudGljYXRpb24gcHJvbXB0
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA5OTIz
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82MTIyMzcxMz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGludGVudHMgdG8gc3RyZWFt
bGluZSBXZWJBdXRobiBsb2NhbCBhdXRoZW50aWNhdG9yIFVYIGEgYml0IG1vcmUuIEhlcmUsIHdl
IHNob3VsZCB0cmVhdAorICAgICAgICB1c2VycyBjYW5jZWxsYXRpb24gb24gTG9jYWxBdXRoZW50
aWNhdGlvbiBVSSBhcyBpdCB3ZXJlIG9uIFVJIGNsaWVudHMnIFdlYkF1dGhuIFVJLgorCisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9yLmg6Cisg
ICAgICAgICogVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3JNYW5hZ2Vy
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6QXV0aGVudGljYXRvck1hbmFnZXI6OmNhbmNlbFJlcXVl
c3QpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9y
TWFuYWdlci5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9M
b2NhbEF1dGhlbnRpY2F0b3IuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViQXV0aGVudGljYXRp
b24vQ29jb2EvTG9jYWxBdXRoZW50aWNhdG9yLm1tOgorICAgICAgICAoV2ViS2l0OjpMb2NhbEF1
dGhlbnRpY2F0b3I6OmNvbnRpbnVlTWFrZUNyZWRlbnRpYWxBZnRlclVzZXJWZXJpZmljYXRpb24p
OgorICAgICAgICAoV2ViS2l0OjpMb2NhbEF1dGhlbnRpY2F0b3I6OmNvbnRpbnVlR2V0QXNzZXJ0
aW9uQWZ0ZXJVc2VyVmVyaWZpY2F0aW9uKToKKyAgICAgICAgKFdlYktpdDo6TG9jYWxBdXRoZW50
aWNhdG9yOjp2YWxpZGF0ZVVzZXJWZXJpZmljYXRpb24gY29uc3QpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbENvbm5lY3Rpb24uaDoKKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxDb25uZWN0aW9uLm1tOgor
ICAgICAgICAoV2ViS2l0OjpMb2NhbENvbm5lY3Rpb246OnZlcmlmeVVzZXIgY29uc3QpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Nb2NrL01vY2tMb2NhbENvbm5lY3Rp
b24ubW06CisgICAgICAgIChXZWJLaXQ6Ok1vY2tMb2NhbENvbm5lY3Rpb246Ok1vY2tMb2NhbENv
bm5lY3Rpb24pOgorICAgICAgICAoV2ViS2l0OjpNb2NrTG9jYWxDb25uZWN0aW9uOjp2ZXJpZnlV
c2VyIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6TW9ja0xvY2FsQ29ubmVjdGlvbjo6ZmlsdGVy
UmVzcG9uc2VzIGNvbnN0KToKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvajoKKwogMjAyMC0wMy0zMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJr
aXQub3JnPgogCiAgICAgICAgIEFkZCBTUEkgV0tXZWJwYWdlUHJlZmVyZW5jZXMuX3VzZXJDb250
ZW50Q29udHJvbGxlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9Nb2NrV2Vi
QXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01v
Y2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaAppbmRleCA3OWNmNDVmMWEyN2Q2ZGQ3
YTIzOWJlZGUwZjcxNGZmMWZhOGNiMjMyLi4xMmFjMDhlMjNjZDI1MDQ0MzA0YzA2YTE1OTY5NWE5
MWQ5N2QxZjEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01vY2tXZWJBdXRo
ZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01v
Y2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaApAQCAtNjEsOCArNjEsMTQgQEAgc3Ry
dWN0IE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24gewogICAgICAgICBNYWxpY2lv
dXNQYXlsb2FkCiAgICAgfTsKIAorICAgIGVudW0gY2xhc3MgVXNlclZlcmlmaWNhdGlvbiA6IHVp
bnQ4X3QgeworICAgICAgICBObywKKyAgICAgICAgWWVzLAorICAgICAgICBDYW5jZWwKKyAgICB9
OworCiAgICAgc3RydWN0IExvY2FsQ29uZmlndXJhdGlvbiB7Ci0gICAgICAgIGJvb2wgYWNjZXB0
QXV0aGVudGljYXRpb24geyBmYWxzZSB9OworICAgICAgICBVc2VyVmVyaWZpY2F0aW9uIHVzZXJW
ZXJpZmljYXRpb24geyBVc2VyVmVyaWZpY2F0aW9uOjpObyB9OwogICAgICAgICBib29sIGFjY2Vw
dEF0dGVzdGF0aW9uIHsgZmFsc2UgfTsKICAgICAgICAgU3RyaW5nIHByaXZhdGVLZXlCYXNlNjQ7
CiAgICAgICAgIFN0cmluZyB1c2VyQ2VydGlmaWNhdGVCYXNlNjQ7CkBAIC0xMTIsNyArMTE4LDcg
QEAgc3RydWN0IE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24gewogdGVtcGxhdGU8
Y2xhc3MgRW5jb2Rlcj4KIHZvaWQgTW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbjo6
TG9jYWxDb25maWd1cmF0aW9uOjplbmNvZGUoRW5jb2RlciYgZW5jb2RlcikgY29uc3QKIHsKLSAg
ICBlbmNvZGVyIDw8IGFjY2VwdEF1dGhlbnRpY2F0aW9uIDw8IGFjY2VwdEF0dGVzdGF0aW9uIDw8
IHByaXZhdGVLZXlCYXNlNjQgPDwgdXNlckNlcnRpZmljYXRlQmFzZTY0IDw8IGludGVybWVkaWF0
ZUNBQ2VydGlmaWNhdGVCYXNlNjQgPDwgcHJlZmVycmVkQ3JlZGVudGlhbElkQmFzZTY0OworICAg
IGVuY29kZXIgPDwgdXNlclZlcmlmaWNhdGlvbiA8PCBhY2NlcHRBdHRlc3RhdGlvbiA8PCBwcml2
YXRlS2V5QmFzZTY0IDw8IHVzZXJDZXJ0aWZpY2F0ZUJhc2U2NCA8PCBpbnRlcm1lZGlhdGVDQUNl
cnRpZmljYXRlQmFzZTY0IDw8IHByZWZlcnJlZENyZWRlbnRpYWxJZEJhc2U2NDsKIH0KIAogdGVt
cGxhdGU8Y2xhc3MgRGVjb2Rlcj4KQEAgLTEyMCwxMSArMTI2LDExIEBAIE9wdGlvbmFsPE1vY2tX
ZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246OkxvY2FsQ29uZmlndXJhdGlvbj4gTW9ja1dl
YkF1dGhlbnRpCiB7CiAgICAgTW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbjo6TG9j
YWxDb25maWd1cmF0aW9uIHJlc3VsdDsKIAotICAgIE9wdGlvbmFsPGJvb2w+IGFjY2VwdEF1dGhl
bnRpY2F0aW9uOwotICAgIGRlY29kZXIgPj4gYWNjZXB0QXV0aGVudGljYXRpb247Ci0gICAgaWYg
KCFhY2NlcHRBdXRoZW50aWNhdGlvbikKKyAgICBPcHRpb25hbDxVc2VyVmVyaWZpY2F0aW9uPiB1
c2VyVmVyaWZpY2F0aW9uOworICAgIGRlY29kZXIgPj4gdXNlclZlcmlmaWNhdGlvbjsKKyAgICBp
ZiAoIXVzZXJWZXJpZmljYXRpb24pCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7Ci0gICAg
cmVzdWx0LmFjY2VwdEF1dGhlbnRpY2F0aW9uID0gKmFjY2VwdEF1dGhlbnRpY2F0aW9uOworICAg
IHJlc3VsdC51c2VyVmVyaWZpY2F0aW9uID0gKnVzZXJWZXJpZmljYXRpb247CiAKICAgICBPcHRp
b25hbDxib29sPiBhY2NlcHRBdHRlc3RhdGlvbjsKICAgICBkZWNvZGVyID4+IGFjY2VwdEF0dGVz
dGF0aW9uOwpAQCAtMjk3LDYgKzMwMywxNSBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRz
PFdlYkNvcmU6Ok1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246Ok5mY0VycgogICAg
ID47CiB9OwogCit0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6Ok1vY2tXZWJB
dXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246OlVzZXJWZXJpZmljYXRpb24+IHsKKyAgICB1c2lu
ZyB2YWx1ZXMgPSBFbnVtVmFsdWVzPAorICAgICAgICBXZWJDb3JlOjpNb2NrV2ViQXV0aGVudGlj
YXRpb25Db25maWd1cmF0aW9uOjpVc2VyVmVyaWZpY2F0aW9uLAorICAgICAgICBXZWJDb3JlOjpN
b2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uOjpVc2VyVmVyaWZpY2F0aW9uOjpObywK
KyAgICAgICAgV2ViQ29yZTo6TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbjo6VXNl
clZlcmlmaWNhdGlvbjo6WWVzLAorICAgICAgICBXZWJDb3JlOjpNb2NrV2ViQXV0aGVudGljYXRp
b25Db25maWd1cmF0aW9uOjpVc2VyVmVyaWZpY2F0aW9uOjpDYW5jZWwKKyAgICA+OworfTsKKwog
fSAvLyBuYW1lc3BhY2UgV1RGCiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCX0FVVEhOKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9Nb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1
cmF0aW9uLmlkbCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTW9ja1dlYkF1dGhlbnRpY2F0aW9u
Q29uZmlndXJhdGlvbi5pZGwKaW5kZXggMjA5OTQzMWM2MDQxMDY0NGZlZTI5ZTY2YTEzNzcyMThl
MWM4ZGJiYS4uNDQ3M2IxMTNlMjUwM2UyOTRlNDU3YTAwMjE3YTAyMWEzMmVhZjUwZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9Nb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1
cmF0aW9uLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01vY2tXZWJBdXRoZW50aWNh
dGlvbkNvbmZpZ3VyYXRpb24uaWRsCkBAIC01OSw2ICs1OSwxNCBAQAogICAgICJtYWxpY2lvdXMt
cGF5bG9hZCIKIH07CiAKK1sKKyAgICBDb25kaXRpb25hbD1XRUJfQVVUSE4sCitdIGVudW0gVXNl
clZlcmlmaWNhdGlvbiB7CisgICAgIm5vIiwKKyAgICAieWVzIiwKKyAgICAiY2FuY2VsIgorfTsK
KwogWwogICAgIENvbmRpdGlvbmFsPVdFQl9BVVRITiwKIF0gZGljdGlvbmFyeSBNb2NrV2ViQXV0
aGVudGljYXRpb25Db25maWd1cmF0aW9uIHsKQEAgLTcxLDcgKzc5LDcgQEAKIFsKICAgICBDb25k
aXRpb25hbD1XRUJfQVVUSE4sCiBdIGRpY3Rpb25hcnkgTW9ja0xvY2FsQ29uZmlndXJhdGlvbiB7
Ci0gICAgYm9vbGVhbiBhY2NlcHRBdXRoZW50aWNhdGlvbiA9IGZhbHNlOworICAgIFVzZXJWZXJp
ZmljYXRpb24gdXNlclZlcmlmaWNhdGlvbiA9ICJubyI7CiAgICAgYm9vbGVhbiBhY2NlcHRBdHRl
c3RhdGlvbiA9IGZhbHNlOwogICAgIERPTVN0cmluZyBwcml2YXRlS2V5QmFzZTY0OwogICAgIERP
TVN0cmluZyB1c2VyQ2VydGlmaWNhdGVCYXNlNjQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2ViQXV0aGVudGljYXRpb25QYW5lbC5tbSBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1t
CmluZGV4IDI1ODYyYmRjYjcwYjA5NDc0MzhlZjJiNTdkYzk3ODNkOGQ0ODNlMDYuLjRjZTgyMGMw
NDIwMWZjMjk1ZGZmYTYyYzE2YjA5MWQ4ZmM4ZWNjNzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBhbmVsLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tXZWJBdXRoZW50aWNhdGlvblBh
bmVsLm1tCkBAIC02MCw3ICs2MCw2IEBAIC0gKHZvaWQpc2V0RGVsZWdhdGU6KGlkPF9XS1dlYkF1
dGhlbnRpY2F0aW9uUGFuZWxEZWxlZ2F0ZT4pZGVsZWdhdGUKICAgICBfcGFuZWwtPnNldENsaWVu
dChXVEZNb3ZlKGNsaWVudCkpOwogfQogCi0KIC0gKE5TU3RyaW5nICopcmVseWluZ1BhcnR5SUQK
IHsKICAgICByZXR1cm4gX3BhbmVsLT5ycElkKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9yLmggYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9yLmgKaW5kZXggNzhl
MzJmYjgwY2Y3NTE4YTM4NDcwZjQxNTlkMzc1OTEzMDI4YTFkYS4uMGUxODM2MTFhZmQ4NWE5MDEw
NTYzY2Y3NmZmZDcxNTAxYmY5NTc0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRvci5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3IuaApAQCAtNTcsNiArNTcs
NyBAQCBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwgdm9pZCByZXF1ZXN0UGluKHVpbnQ2NF90IHJl
dHJpZXMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoY29uc3QgV1RGOjpTdHJpbmcmKT4mJikgPSAw
OwogICAgICAgICB2aXJ0dWFsIHZvaWQgc2VsZWN0QXNzZXJ0aW9uUmVzcG9uc2UoY29uc3QgSGFz
aFNldDxSZWY8V2ViQ29yZTo6QXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlPj4mLCBXZWJB
dXRoZW50aWNhdGlvblNvdXJjZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpBdXRo
ZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UqKT4mJikgPSAwOwogICAgICAgICB2aXJ0dWFsIHZv
aWQgZGVjaWRlUG9saWN5Rm9yTG9jYWxBdXRoZW50aWNhdG9yKENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoTG9jYWxBdXRoZW50aWNhdG9yUG9saWN5KT4mJikgPSAwOworICAgICAgICB2aXJ0dWFsIHZv
aWQgY2FuY2VsUmVxdWVzdCgpID0gMDsKICAgICB9OwogCiAgICAgdmlydHVhbCB+QXV0aGVudGlj
YXRvcigpID0gZGVmYXVsdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dl
YkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3JNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3JNYW5hZ2VyLmNwcAppbmRl
eCBmMjMzMzYxY2ZlYTg0NmU4ZWFjYTIxMTljMjY2MTY2Yzg4ZDJjYjdmLi40MDc0MDJiMjM3ZDQ0
ODkxNzZiMzY5ZjQxMTRhZGI0NzhhZGIyMzBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9yTWFuYWdlci5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRvck1h
bmFnZXIuY3BwCkBAIC0xNzksOSArMTc5LDcgQEAgdm9pZCBBdXRoZW50aWNhdG9yTWFuYWdlcjo6
Y2FuY2VsUmVxdWVzdChjb25zdCBQYWdlSWRlbnRpZmllciYgcGFnZUlELCBjb25zdCBPcHQKICAg
ICAgICAgaWYgKGZyYW1lSUQgJiYgZnJhbWVJRCAhPSBwZW5kaW5nRnJhbWVJRC0+ZnJhbWVJRCkK
ICAgICAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgaW52b2tlUGVuZGluZ0NvbXBsZXRpb25I
YW5kbGVyKEV4Y2VwdGlvbkRhdGEgeyBOb3RBbGxvd2VkRXJyb3IsICJPcGVyYXRpb24gdGltZWQg
b3V0LiJfcyB9KTsKLSAgICBjbGVhclN0YXRlKCk7Ci0gICAgbV9yZXF1ZXN0VGltZU91dFRpbWVy
LnN0b3AoKTsKKyAgICBjYW5jZWxSZXF1ZXN0KCk7CiB9CiAKIC8vIFRoZSBmb2xsb3dpbmcgaW1w
bGVtZW50cyBwYXJ0IG9mIFN0ZXAgMjAuIG9mIGh0dHBzOi8vd3d3LnczLm9yZy9UUi93ZWJhdXRo
bi8jY3JlYXRlQ3JlZGVudGlhbApAQCAtMTkyLDkgKzE5MCw3IEBAIHZvaWQgQXV0aGVudGljYXRv
ck1hbmFnZXI6OmNhbmNlbFJlcXVlc3QoY29uc3QgQVBJOjpXZWJBdXRoZW50aWNhdGlvblBhbmVs
JiBwYW5lCiAgICAgUkVMRUFTRV9BU1NFUlQoUnVuTG9vcDo6aXNNYWluKCkpOwogICAgIGlmICgh
bV9wZW5kaW5nQ29tcGxldGlvbkhhbmRsZXIgfHwgbV9wZW5kaW5nUmVxdWVzdERhdGEucGFuZWwu
Z2V0KCkgIT0gJnBhbmVsKQogICAgICAgICByZXR1cm47Ci0gICAgaW52b2tlUGVuZGluZ0NvbXBs
ZXRpb25IYW5kbGVyKEV4Y2VwdGlvbkRhdGEgeyBOb3RBbGxvd2VkRXJyb3IsICJUaGlzIHJlcXVl
c3QgaGFzIGJlZW4gY2FuY2VsbGVkIGJ5IHRoZSB1c2VyLiJfcyB9KTsKLSAgICBjbGVhclN0YXRl
KCk7Ci0gICAgbV9yZXF1ZXN0VGltZU91dFRpbWVyLnN0b3AoKTsKKyAgICBjYW5jZWxSZXF1ZXN0
KCk7CiB9CiAKIHZvaWQgQXV0aGVudGljYXRvck1hbmFnZXI6OmNsZWFyU3RhdGVBc3luYygpCkBA
IC0yOTUsNiArMjkxLDEzIEBAIHZvaWQgQXV0aGVudGljYXRvck1hbmFnZXI6OmRlY2lkZVBvbGlj
eUZvckxvY2FsQXV0aGVudGljYXRvcihDb21wbGV0aW9uSGFuZGxlcjx2CiAgICAgfSk7CiB9CiAK
K3ZvaWQgQXV0aGVudGljYXRvck1hbmFnZXI6OmNhbmNlbFJlcXVlc3QoKQoreworICAgIGludm9r
ZVBlbmRpbmdDb21wbGV0aW9uSGFuZGxlcihFeGNlcHRpb25EYXRhIHsgTm90QWxsb3dlZEVycm9y
LCAiVGhpcyByZXF1ZXN0IGhhcyBiZWVuIGNhbmNlbGxlZCBieSB0aGUgdXNlci4iX3MgfSk7Cisg
ICAgY2xlYXJTdGF0ZSgpOworICAgIG1fcmVxdWVzdFRpbWVPdXRUaW1lci5zdG9wKCk7Cit9CisK
IFVuaXF1ZVJlZjxBdXRoZW50aWNhdG9yVHJhbnNwb3J0U2VydmljZT4gQXV0aGVudGljYXRvck1h
bmFnZXI6OmNyZWF0ZVNlcnZpY2UoQXV0aGVudGljYXRvclRyYW5zcG9ydCB0cmFuc3BvcnQsIEF1
dGhlbnRpY2F0b3JUcmFuc3BvcnRTZXJ2aWNlOjpPYnNlcnZlciYgb2JzZXJ2ZXIpIGNvbnN0CiB7
CiAgICAgcmV0dXJuIEF1dGhlbnRpY2F0b3JUcmFuc3BvcnRTZXJ2aWNlOjpjcmVhdGUodHJhbnNw
b3J0LCBvYnNlcnZlcik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJB
dXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9yTWFuYWdlci5oIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRvck1hbmFnZXIuaAppbmRleCA5ODIz
Mzg2YjlhMTY5ODdhMmU1ZmQ1Y2RlYmYyZjYyNDIxNDcyMDJkLi5kYzRhNjc5YTAwZDg5ODNkYzMz
ZGE2YjA0ZmI5MDcyNTYwYTM3MGVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9yTWFuYWdlci5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3JNYW5hZ2VyLmgK
QEAgLTg0LDYgKzg0LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlcXVlc3RQaW4odWludDY0X3Qg
cmV0cmllcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBXVEY6OlN0cmluZyYpPiYmKSBm
aW5hbDsKICAgICB2b2lkIHNlbGVjdEFzc2VydGlvblJlc3BvbnNlKGNvbnN0IEhhc2hTZXQ8UmVm
PFdlYkNvcmU6OkF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZT4+JiwgV2ViQXV0aGVudGlj
YXRpb25Tb3VyY2UsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoV2ViQ29yZTo6QXV0aGVudGljYXRv
ckFzc2VydGlvblJlc3BvbnNlKik+JiYpIGZpbmFsOwogICAgIHZvaWQgZGVjaWRlUG9saWN5Rm9y
TG9jYWxBdXRoZW50aWNhdG9yKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTG9jYWxBdXRoZW50aWNh
dG9yUG9saWN5KT4mJikgZmluYWw7CisgICAgdm9pZCBjYW5jZWxSZXF1ZXN0KCkgZmluYWw7CiAK
ICAgICAvLyBPdmVycmlkZW4gYnkgTW9ja0F1dGhlbnRpY2F0b3JNYW5hZ2VyLgogICAgIHZpcnR1
YWwgVW5pcXVlUmVmPEF1dGhlbnRpY2F0b3JUcmFuc3BvcnRTZXJ2aWNlPiBjcmVhdGVTZXJ2aWNl
KFdlYkNvcmU6OkF1dGhlbnRpY2F0b3JUcmFuc3BvcnQsIEF1dGhlbnRpY2F0b3JUcmFuc3BvcnRT
ZXJ2aWNlOjpPYnNlcnZlciYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxBdXRoZW50aWNhdG9yLmggYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbEF1dGhlbnRp
Y2F0b3IuaAppbmRleCAzNTE4YzlhZmE3OGU0ZjY3NDA5NjFmYzg5MTc4YWYxYjg2MGJkOTY4Li42
NjNmYmE2MjAxYmZjMzYzNWIxODE0YzM3ZWRlMDg0ZjA1ZjI1YjYwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbEF1dGhlbnRp
Y2F0b3IuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9D
b2NvYS9Mb2NhbEF1dGhlbnRpY2F0b3IuaApAQCAtNjgsNiArNjgsNyBAQCBwcml2YXRlOgogCiAg
ICAgdm9pZCByZWNlaXZlRXhjZXB0aW9uKFdlYkNvcmU6OkV4Y2VwdGlvbkRhdGEmJiwgV2ViQXV0
aGVudGljYXRpb25TdGF0dXMgPSBXZWJBdXRoZW50aWNhdGlvblN0YXR1czo6TEFFcnJvcikgY29u
c3Q7CiAgICAgdm9pZCBkZWxldGVEdXBsaWNhdGVDcmVkZW50aWFsKCkgY29uc3Q7CisgICAgYm9v
bCB2YWxpZGF0ZVVzZXJWZXJpZmljYXRpb24oTG9jYWxDb25uZWN0aW9uOjpVc2VyVmVyaWZpY2F0
aW9uKSBjb25zdDsKIAogICAgIFN0YXRlIG1fc3RhdGUgeyBTdGF0ZTo6SW5pdCB9OwogICAgIFVu
aXF1ZVJlZjxMb2NhbENvbm5lY3Rpb24+IG1fY29ubmVjdGlvbjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQXV0aGVudGlj
YXRvci5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0NvY29h
L0xvY2FsQXV0aGVudGljYXRvci5tbQppbmRleCA2MGQyN2M4NjZiMDlhYzBiNThhMmNiYjhkZGYw
NWM3NmE4YmRlOWRmLi44NDk5NGQ5MjkzNDFmMTIyNDdjMWE0YmRmNjMxMjQ5NTU2ZjlhMjNjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2Nv
YS9Mb2NhbEF1dGhlbnRpY2F0b3IubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
QXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxBdXRoZW50aWNhdG9yLm1tCkBAIC0yNzQsMTAgKzI3
NCw4IEBAIHZvaWQgTG9jYWxBdXRoZW50aWNhdG9yOjpjb250aW51ZU1ha2VDcmVkZW50aWFsQWZ0
ZXJVc2VyVmVyaWZpY2F0aW9uKFNlY0FjY2Vzc0NvCiAgICAgbV9zdGF0ZSA9IFN0YXRlOjpVc2Vy
VmVyaWZpZWQ7CiAgICAgYXV0byYgY3JlYXRpb25PcHRpb25zID0gV1RGOjpnZXQ8UHVibGljS2V5
Q3JlZGVudGlhbENyZWF0aW9uT3B0aW9ucz4ocmVxdWVzdERhdGEoKS5vcHRpb25zKTsKIAotICAg
IGlmICh2ZXJpZmljYXRpb24gPT0gTG9jYWxDb25uZWN0aW9uOjpVc2VyVmVyaWZpY2F0aW9uOjpO
bykgewotICAgICAgICByZWNlaXZlRXhjZXB0aW9uKHsgTm90QWxsb3dlZEVycm9yLCAiQ291bGRu
J3QgdmVyaWZ5IHVzZXIuIl9zIH0pOworICAgIGlmICghdmFsaWRhdGVVc2VyVmVyaWZpY2F0aW9u
KHZlcmlmaWNhdGlvbikpCiAgICAgICAgIHJldHVybjsKLSAgICB9CiAKICAgICAvLyBIZXJlIGlz
IHRoZSBrZXljaGFpbiBzY2hlbWEuCiAgICAgLy8ga1NlY0F0dHJMYWJlbDogUlAgSUQKQEAgLTUw
MCwxMCArNDk4LDggQEAgdm9pZCBMb2NhbEF1dGhlbnRpY2F0b3I6OmNvbnRpbnVlR2V0QXNzZXJ0
aW9uQWZ0ZXJVc2VyVmVyaWZpY2F0aW9uKFJlZjxXZWJDb3JlOjoKICAgICBBU1NFUlQobV9zdGF0
ZSA9PSBTdGF0ZTo6UmVzcG9uc2VTZWxlY3RlZCk7CiAgICAgbV9zdGF0ZSA9IFN0YXRlOjpVc2Vy
VmVyaWZpZWQ7CiAKLSAgICBpZiAodmVyaWZpY2F0aW9uID09IExvY2FsQ29ubmVjdGlvbjo6VXNl
clZlcmlmaWNhdGlvbjo6Tm8pIHsKLSAgICAgICAgcmVjZWl2ZUV4Y2VwdGlvbih7IE5vdEFsbG93
ZWRFcnJvciwgIkNvdWxkbid0IHZlcmlmeSB1c2VyLiJfcyB9KTsKKyAgICBpZiAoIXZhbGlkYXRl
VXNlclZlcmlmaWNhdGlvbih2ZXJpZmljYXRpb24pKQogICAgICAgICByZXR1cm47Ci0gICAgfQog
CiAgICAgLy8gU3RlcCAxMC4KICAgICBhdXRvIGF1dGhEYXRhID0gYnVpbGRBdXRoRGF0YShXVEY6
OmdldDxQdWJsaWNLZXlDcmVkZW50aWFsUmVxdWVzdE9wdGlvbnM+KHJlcXVlc3REYXRhKCkub3B0
aW9ucykucnBJZCwgZ2V0QXNzZXJ0aW9uRmxhZ3MsIGNvdW50ZXIsIHsgfSk7CkBAIC01ODgsNiAr
NTg0LDIyIEBAIHZvaWQgTG9jYWxBdXRoZW50aWNhdG9yOjpkZWxldGVEdXBsaWNhdGVDcmVkZW50
aWFsKCkgY29uc3QKICAgICB9KTsKIH0KIAorYm9vbCBMb2NhbEF1dGhlbnRpY2F0b3I6OnZhbGlk
YXRlVXNlclZlcmlmaWNhdGlvbihMb2NhbENvbm5lY3Rpb246OlVzZXJWZXJpZmljYXRpb24gdmVy
aWZpY2F0aW9uKSBjb25zdAoreworICAgIGlmICh2ZXJpZmljYXRpb24gPT0gTG9jYWxDb25uZWN0
aW9uOjpVc2VyVmVyaWZpY2F0aW9uOjpDYW5jZWwpIHsKKyAgICAgICAgaWYgKGF1dG8qIG9ic2Vy
dmVyID0gdGhpcy0+b2JzZXJ2ZXIoKSkKKyAgICAgICAgICAgIG9ic2VydmVyLT5jYW5jZWxSZXF1
ZXN0KCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAodmVyaWZpY2F0
aW9uID09IExvY2FsQ29ubmVjdGlvbjo6VXNlclZlcmlmaWNhdGlvbjo6Tm8pIHsKKyAgICAgICAg
cmVjZWl2ZUV4Y2VwdGlvbih7IE5vdEFsbG93ZWRFcnJvciwgIkNvdWxkbid0IHZlcmlmeSB1c2Vy
LiJfcyB9KTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIHJldHVybiB0cnVl
OworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVU
SE4pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlv
bi9Db2NvYS9Mb2NhbENvbm5lY3Rpb24uaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1
dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQ29ubmVjdGlvbi5oCmluZGV4IGE0YTJmOTQ1NTBiZjJk
MWU0ZWQ4ODFmNmE0NmJhZGY1YWVkYzE0MzEuLmZlYjA3YTgwMjQ1YzQxYzE4YmIyM2JlM2FhNTkz
M2YwZjc4MTliOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhl
bnRpY2F0aW9uL0NvY29hL0xvY2FsQ29ubmVjdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQ29ubmVjdGlvbi5oCkBAIC01MSw5
ICs1MSwxMCBAQCBjbGFzcyBMb2NhbENvbm5lY3Rpb24gewogICAgIFdURl9NQUtFX0ZBU1RfQUxM
T0NBVEVEOwogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKExvY2FsQ29ubmVjdGlvbik7CiBwdWJs
aWM6Ci0gICAgZW51bSBjbGFzcyBVc2VyVmVyaWZpY2F0aW9uIDogYm9vbCB7CisgICAgZW51bSBj
bGFzcyBVc2VyVmVyaWZpY2F0aW9uIDogdWludDhfdCB7CiAgICAgICAgIE5vLAotICAgICAgICBZ
ZXMKKyAgICAgICAgWWVzLAorICAgICAgICBDYW5jZWwKICAgICB9OwogCiAgICAgdXNpbmcgQXR0
ZXN0YXRpb25DYWxsYmFjayA9IENvbXBsZXRpb25IYW5kbGVyPHZvaWQoTlNBcnJheSAqLCBOU0Vy
cm9yICopPjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRp
Y2F0aW9uL0NvY29hL0xvY2FsQ29ubmVjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYkF1dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQ29ubmVjdGlvbi5tbQppbmRleCA4M2JkYWYx
NzMwODlhZTViOTExZjdiZTA0YjhiYzUxNGQ5NTlkYjZiLi5lYWZjMThjMDQ0ZTk0MTg3ZWJhMjFl
MjMzY2IwMWQwZjYyYmE0NzcyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbENvbm5lY3Rpb24ubW0KKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxDb25uZWN0aW9uLm1t
CkBAIC04Myw2ICs4Myw4IEBAIHZvaWQgTG9jYWxDb25uZWN0aW9uOjp2ZXJpZnlVc2VyKGNvbnN0
IFN0cmluZyYgcnBJZCwgQ2xpZW50RGF0YVR5cGUgdHlwZSwgU2VjQWNjCiAgICAgICAgIGlmIChl
cnJvcikgewogICAgICAgICAgICAgTE9HX0VSUk9SKCJDb3VsZG4ndCBhdXRoZW50aWNhdGUgd2l0
aCBiaW9tZXRyaWNzOiAlQCIsIGVycm9yKTsKICAgICAgICAgICAgIHZlcmlmaWNhdGlvbiA9IFVz
ZXJWZXJpZmljYXRpb246Ok5vOworICAgICAgICAgICAgaWYgKGVycm9yLmNvZGUgPT0gTEFFcnJv
clVzZXJDYW5jZWwpCisgICAgICAgICAgICAgICAgdmVyaWZpY2F0aW9uID0gVXNlclZlcmlmaWNh
dGlvbjo6Q2FuY2VsOwogICAgICAgICB9CiAgICAgICAgIFJ1bkxvb3A6Om1haW4oKS5kaXNwYXRj
aChbY29tcGxldGlvbkhhbmRsZXIgPSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSwgdmVyaWZp
Y2F0aW9uLCBjb250ZXh0ID0gV1RGTW92ZShjb250ZXh0KV0gKCkgbXV0YWJsZSB7CiAgICAgICAg
ICAgICBjb21wbGV0aW9uSGFuZGxlcih2ZXJpZmljYXRpb24sIGNvbnRleHQuZ2V0KCkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vTW9jay9N
b2NrTG9jYWxDb25uZWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViQXV0aGVu
dGljYXRpb24vTW9jay9Nb2NrTG9jYWxDb25uZWN0aW9uLm1tCmluZGV4IDc0ODg3ZjE3MjM0Y2Fj
NzczYWExMjUxYjc4MDUwNGFhZmNmNWFiNDYuLmZlNDkzZjk1MWU1YTM4YTcwNTVkODdkNDg3MzEw
OWMxZDg5ODk4YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhl
bnRpY2F0aW9uL01vY2svTW9ja0xvY2FsQ29ubmVjdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Nb2NrL01vY2tMb2NhbENvbm5lY3Rpb24ubW0K
QEAgLTM4LDIyICszOCwzMSBAQAogI2ltcG9ydCAiTG9jYWxBdXRoZW50aWNhdGlvblNvZnRMaW5r
LmgiCiAKIG5hbWVzcGFjZSBXZWJLaXQgewordXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKLU1v
Y2tMb2NhbENvbm5lY3Rpb246Ok1vY2tMb2NhbENvbm5lY3Rpb24oY29uc3QgV2ViQ29yZTo6TW9j
a1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbiYgY29uZmlndXJhdGlvbikKK01vY2tMb2Nh
bENvbm5lY3Rpb246Ok1vY2tMb2NhbENvbm5lY3Rpb24oY29uc3QgTW9ja1dlYkF1dGhlbnRpY2F0
aW9uQ29uZmlndXJhdGlvbiYgY29uZmlndXJhdGlvbikKICAgICA6IG1fY29uZmlndXJhdGlvbihj
b25maWd1cmF0aW9uKQogewogfQogCi12b2lkIE1vY2tMb2NhbENvbm5lY3Rpb246OnZlcmlmeVVz
ZXIoY29uc3QgU3RyaW5nJiwgV2ViQ29yZTo6Q2xpZW50RGF0YVR5cGUsIFNlY0FjY2Vzc0NvbnRy
b2xSZWYsIFVzZXJWZXJpZmljYXRpb25DYWxsYmFjayYmIGNhbGxiYWNrKSBjb25zdAordm9pZCBN
b2NrTG9jYWxDb25uZWN0aW9uOjp2ZXJpZnlVc2VyKGNvbnN0IFN0cmluZyYsIENsaWVudERhdGFU
eXBlLCBTZWNBY2Nlc3NDb250cm9sUmVmLCBVc2VyVmVyaWZpY2F0aW9uQ2FsbGJhY2smJiBjYWxs
YmFjaykgY29uc3QKIHsKICAgICAvLyBNb2NrIGFzeW5jIG9wZXJhdGlvbnMuCiAgICAgUnVuTG9v
cDo6bWFpbigpLmRpc3BhdGNoKFtjb25maWd1cmF0aW9uID0gbV9jb25maWd1cmF0aW9uLCBjYWxs
YmFjayA9IFdURk1vdmUoY2FsbGJhY2spXSgpIG11dGFibGUgewogICAgICAgICBBU1NFUlQoY29u
ZmlndXJhdGlvbi5sb2NhbCk7Ci0gICAgICAgIGlmICghY29uZmlndXJhdGlvbi5sb2NhbC0+YWNj
ZXB0QXV0aGVudGljYXRpb24pIHsKLSAgICAgICAgICAgIGNhbGxiYWNrKFVzZXJWZXJpZmljYXRp
b246Ok5vLCBuaWwpOwotICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIFVzZXJWZXJpZmlj
YXRpb24gdXNlclZlcmlmaWNhdGlvbiA9IFVzZXJWZXJpZmljYXRpb246Ok5vOworICAgICAgICBz
d2l0Y2ggKGNvbmZpZ3VyYXRpb24ubG9jYWwtPnVzZXJWZXJpZmljYXRpb24pIHsKKyAgICAgICAg
Y2FzZSBNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uOjpVc2VyVmVyaWZpY2F0aW9u
OjpObzoKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIE1vY2tXZWJBdXRoZW50aWNh
dGlvbkNvbmZpZ3VyYXRpb246OlVzZXJWZXJpZmljYXRpb246OlllczoKKyAgICAgICAgICAgIHVz
ZXJWZXJpZmljYXRpb24gPSBVc2VyVmVyaWZpY2F0aW9uOjpZZXM7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgY2FzZSBNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uOjpVc2Vy
VmVyaWZpY2F0aW9uOjpDYW5jZWw6CisgICAgICAgICAgICB1c2VyVmVyaWZpY2F0aW9uID0gVXNl
clZlcmlmaWNhdGlvbjo6Q2FuY2VsOwogICAgICAgICB9Ci0gICAgICAgIGNhbGxiYWNrKFVzZXJW
ZXJpZmljYXRpb246OlllcywgYWRvcHROUyhbYWxsb2NMQUNvbnRleHRJbnN0YW5jZSgpIGluaXRd
KS5nZXQoKSk7CisKKyAgICAgICAgY2FsbGJhY2sodXNlclZlcmlmaWNhdGlvbiwgYWRvcHROUyhb
YWxsb2NMQUNvbnRleHRJbnN0YW5jZSgpIGluaXRdKS5nZXQoKSk7CiAgICAgfSk7CiB9CiAKQEAg
LTExMyw3ICsxMjIsNyBAQCB2b2lkIE1vY2tMb2NhbENvbm5lY3Rpb246OmdldEF0dGVzdGF0aW9u
KFNlY0tleVJlZiwgTlNEYXRhICosIE5TRGF0YSAqLCBBdHRlc3RhdAogICAgIH0pOwogfQogCi12
b2lkIE1vY2tMb2NhbENvbm5lY3Rpb246OmZpbHRlclJlc3BvbnNlcyhIYXNoU2V0PFJlZjxXZWJD
b3JlOjpBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2U+PiYgcmVzcG9uc2VzKSBjb25zdAor
dm9pZCBNb2NrTG9jYWxDb25uZWN0aW9uOjpmaWx0ZXJSZXNwb25zZXMoSGFzaFNldDxSZWY8QXV0
aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlPj4mIHJlc3BvbnNlcykgY29uc3QKIHsKICAgICBj
b25zdCBhdXRvJiBwcmVmZXJyZWRDcmVkZW50aWFsSWRCYXNlNjQgPSBtX2NvbmZpZ3VyYXRpb24u
bG9jYWwtPnByZWZlcnJlZENyZWRlbnRpYWxJZEJhc2U2NDsKICAgICBpZiAocHJlZmVycmVkQ3Jl
ZGVudGlhbElkQmFzZTY0LmlzRW1wdHkoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2Vi
S2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDFjNWEyOGM0M2E2N2YzZjY4ZjNhNGRmZmJiOTVl
MGZhNzE5NzdjNTUuLjM0NjU5NzcwNmIwMmVmN2ZjY2Q0NTY0NDVjMWE4ZTdlM2Q1YzkyOTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAt
MzkwNSw2ICszOTA1LDcgQEAKIAkJNTdCOEUzRDUyMzU1ODY0QTAwRDVDNUQxIC8qIEZpZG9BdXRo
ZW50aWNhdG9yLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZpZG9BdXRoZW50aWNhdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU3QjhFM0Q2MjM1NTg2NEEwMEQ1QzVEMSAvKiBGaWRvQXV0
aGVudGljYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBGaWRvQXV0aGVudGljYXRvci5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU3QkJFQTZDMjJCQzBCRkUwMDI3Mzk5NSAv
KiBTT0F1dGhvcml6YXRpb25Mb2FkUG9saWN5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNPQXV0aG9yaXph
dGlvbkxvYWRQb2xpY3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNTdDM0U4QUMy
NDI0OTBENTAwMUUyMjA5IC8qIFdlYkF1dGhlbnRpY2F0aW9uUmVxdWVzdERhdGEuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gV2ViQXV0aGVudGljYXRpb25SZXF1ZXN0RGF0YS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTU3QzYyNDRBMjM0Njc5QTQwMDM4M0ZFNyAvKiBXZWJBdXRo
ZW50aWNhdGlvbkZsYWdzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkF1dGhlbnRpY2F0aW9uRmxhZ3Mu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTdEQ0VENkEyMTQyRUFFMjAwMTZCODQ3
IC8qIFdlYkF1dGhlbnRpY2F0b3JDb29yZGluYXRvck1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IFdlYkF1dGhlbnRpY2F0b3JDb29yZGluYXRvck1lc3NhZ2VzLmg7
IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJLaXQyL1dlYkF1dGhlbnRpY2F0b3JDb29yZGluYXRv
ck1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCTU3RENF
RDZCMjE0MkVBRTIwMDE2Qjg0NyAvKiBXZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3JNZXNzYWdl
UmVjZWl2ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gV2ViQXV0
aGVudGljYXRvckNvb3JkaW5hdG9yTWVzc2FnZVJlY2VpdmVyLmNwcDsgcGF0aCA9IERlcml2ZWRT
b3VyY2VzL1dlYktpdDIvV2ViQXV0aGVudGljYXRvckNvb3JkaW5hdG9yTWVzc2FnZVJlY2VpdmVy
LmNwcDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKQEAgLTgwNzEsNiArODA3
Miw3IEBACiAJCQkJNTdEQ0VEOTkyMTQ4OUY0RDAwMTZCODQ3IC8qIEF1dGhlbnRpY2F0b3JUcmFu
c3BvcnRTZXJ2aWNlLmNwcCAqLywKIAkJCQk1N0RDRUQ4QTIxNDg1MzEzMDAxNkI4NDcgLyogQXV0
aGVudGljYXRvclRyYW5zcG9ydFNlcnZpY2UuaCAqLywKIAkJCQk1N0M2MjQ0QTIzNDY3OUE0MDAz
ODNGRTcgLyogV2ViQXV0aGVudGljYXRpb25GbGFncy5oICovLAorCQkJCTU3QzNFOEFDMjQyNDkw
RDUwMDFFMjIwOSAvKiBXZWJBdXRoZW50aWNhdGlvblJlcXVlc3REYXRhLmNwcCAqLywKIAkJCQk1
N0RDRURBNjIxNDlGOURBMDAxNkI4NDcgLyogV2ViQXV0aGVudGljYXRpb25SZXF1ZXN0RGF0YS5o
ICovLAogCQkJCTU3NjA4Mjk2MjAyQkQ4QkEwMDExNjY3OCAvKiBXZWJBdXRoZW50aWNhdG9yQ29v
cmRpbmF0b3JQcm94eS5jcHAgKi8sCiAJCQkJNTc2MDgyOTUyMDJCRDhCQTAwMTE2Njc4IC8qIFdl
YkF1dGhlbnRpY2F0b3JDb29yZGluYXRvclByb3h5LmggKi8sCmRpZmYgLS1naXQgYS9Ub29scy9D
aGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMGJmM2Q3M2M5ZjIxZTAzNDY2YzYwNWU3
YTFiMTQ4Y2RlNTAxY2ZkNi4uZmE1ZjcyNzdhMzJiMGRhYjc5ZTA3NDQ3ZTMzY2RhNmU0NjBjNWYz
OSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE4IEBACisyMDIwLTA0LTAyICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5j
b20+CisKKyAgICAgICAgW1dlYkF1dGhuXSBDYW5jZWwgV2ViQXV0aG4gcmVxdWVzdHMgYWZ0ZXIg
dXNlcnMgY2FuY2VsbGluZyBMb2NhbEF1dGhlbnRpY2F0aW9uIHByb21wdHMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTkyMworICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNjEyMjM3MTM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgTW9kaWZpZXMgZXhpc3RpbmcgdGVzdHMgdG8gYWNjb21tb2RhdGUgY2hh
bmdlcyBpbiBNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uLmlkbC4KKworICAgICAg
ICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLWdl
dC1hc3NlcnRpb24tbGEuaHRtbDoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL3dlYi1hdXRoZW50aWNhdGlvbi1tYWtlLWNyZWRlbnRpYWwtbGEtZHVwbGljYXRlLWNy
ZWRlbnRpYWwuaHRtbDoKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L3dlYi1hdXRoZW50aWNhdGlvbi1tYWtlLWNyZWRlbnRpYWwtbGEtZXJyb3IuaHRtbDoKKyAgICAg
ICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL3dlYi1hdXRoZW50aWNhdGlvbi1t
YWtlLWNyZWRlbnRpYWwtbGEuaHRtbDoKKwogMjAyMC0wMy0zMSAgQWxleCBDaHJpc3RlbnNlbiAg
PGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBTUEkgV0tXZWJwYWdlUHJl
ZmVyZW5jZXMuX3VzZXJDb250ZW50Q29udHJvbGxlcgpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdl
YktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS93ZWItYXV0aGVudGljYXRpb24tZ2V0LWFzc2VydGlv
bi1sYS5odG1sIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS93ZWItYXV0
aGVudGljYXRpb24tZ2V0LWFzc2VydGlvbi1sYS5odG1sCmluZGV4IGVmYTNjNWJhNDRiMDJmYjEw
NTI5ZDAxNGRmNWRlNjQyOGQ0OTgwYmYuLmY1MGJmMGE1OTIxYmFjNWM0YTllNzgzNmNhZGI3ZTA2
NjhjZDA1NmEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2Evd2ViLWF1dGhlbnRpY2F0aW9uLWdldC1hc3NlcnRpb24tbGEuaHRtbAorKysgYi9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL3dlYi1hdXRoZW50aWNhdGlvbi1nZXQtYXNz
ZXJ0aW9uLWxhLmh0bWwKQEAgLTEsNyArMSw3IEBACiA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9Imlu
cHV0Ij4KIDxzY3JpcHQ+CiAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKLSAgICAgICAgaW50
ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyBh
Y2NlcHRBdXRoZW50aWNhdGlvbjogdHJ1ZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7
CisgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9u
KHsgbG9jYWw6IHsgdXNlclZlcmlmaWNhdGlvbjogInllcyIsIGFjY2VwdEF0dGVzdGF0aW9uOiBm
YWxzZSB9IH0pOwogICAgICAgICBpbnRlcm5hbHMud2l0aFVzZXJHZXN0dXJlKCgpID0+IHsgaW5w
dXQuZm9jdXMoKTsgfSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL3dlYi1hdXRoZW50aWNhdGlvbi1tYWtlLWNyZWRlbnRpYWwtbGEt
ZHVwbGljYXRlLWNyZWRlbnRpYWwuaHRtbCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1kdXBsaWNhdGUt
Y3JlZGVudGlhbC5odG1sCmluZGV4IGFhYTU5NjUwNmE1MzRiMjVmMGJjNjU4ODk2MWJlM2RkZWI0
NGI0MWMuLmYxNjJkNmZhMDQ4MzVkNWU3Y2ZiNDI4Y2FmOWQ2ZDVhNzY4Mzg1ZTQgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0
aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1kdXBsaWNhdGUtY3JlZGVudGlhbC5odG1sCisrKyBiL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1h
a2UtY3JlZGVudGlhbC1sYS1kdXBsaWNhdGUtY3JlZGVudGlhbC5odG1sCkBAIC0xOCw3ICsxOCw3
IEBACiAgICAgfQogCiAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKLSAgICAgICAgaW50ZXJu
YWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyBhY2Nl
cHRBdXRoZW50aWNhdGlvbjogZmFsc2UsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0pOwor
ICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7
IGxvY2FsOiB7IHVzZXJWZXJpZmljYXRpb246ICJubyIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxz
ZSB9IH0pOwogICAgICAgICBpbnRlcm5hbHMud2l0aFVzZXJHZXN0dXJlKCgpID0+IHsgaW5wdXQu
Zm9jdXMoKTsgfSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL3dlYi1hdXRoZW50aWNhdGlvbi1tYWtlLWNyZWRlbnRpYWwtbGEtZXJy
b3IuaHRtbCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhl
bnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1lcnJvci5odG1sCmluZGV4IDVmMTYxMjFiYTRj
YTJkYjUzM2RmZTVkMmJmMDMzMDRjZGE1MjQ2MmYuLmU3MGQwODVjNzEwMjZiYWRiZDQ2NGQzYzJj
OTJlYTQ5MTAwYjk3ZDYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1lcnJvci5odG1s
CisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRp
Y2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1lcnJvci5odG1sCkBAIC0xLDcgKzEsNyBAQAogPGlu
cHV0IHR5cGU9InRleHQiIGlkPSJpbnB1dCI+CiA8c2NyaXB0PgogICAgIGlmICh3aW5kb3cuaW50
ZXJuYWxzKSB7Ci0gICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25m
aWd1cmF0aW9uKHsgbG9jYWw6IHsgYWNjZXB0QXV0aGVudGljYXRpb246IGZhbHNlLCBhY2NlcHRB
dHRlc3RhdGlvbjogZmFsc2UgfSB9KTsKKyAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRo
ZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAibm8i
LCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UgfSB9KTsKICAgICAgICAgaW50ZXJuYWxzLndpdGhV
c2VyR2VzdHVyZSgoKSA9PiB7IGlucHV0LmZvY3VzKCk7IH0pOwogICAgIH0KIApkaWZmIC0tZ2l0
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS93ZWItYXV0aGVudGljYXRp
b24tbWFrZS1jcmVkZW50aWFsLWxhLmh0bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdENvY29hL3dlYi1hdXRoZW50aWNhdGlvbi1tYWtlLWNyZWRlbnRpYWwtbGEuaHRtbAppbmRl
eCA5MjdlMjVjYTJkYTJiZWQ0ZDg5YTgwYjAyN2I2YTA5NTYwYWIyYzU2Li5lZmFjY2VkMjhlOTRj
MTY0MmNkYzc5N2M3NjUwMzFhMzQ2ZmQ4Yzk3IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0V2ViS2l0
QVBJL1Rlc3RzL1dlYktpdENvY29hL3dlYi1hdXRoZW50aWNhdGlvbi1tYWtlLWNyZWRlbnRpYWwt
bGEuaHRtbAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL3dlYi1h
dXRoZW50aWNhdGlvbi1tYWtlLWNyZWRlbnRpYWwtbGEuaHRtbApAQCAtMzIsNyArMzIsNyBAQAog
ICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CiAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2Vi
QXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsKICAgICAgICAgICAgIGxvY2FsOiB7Ci0gICAg
ICAgICAgICAgICAgYWNjZXB0QXV0aGVudGljYXRpb246IHRydWUsCisgICAgICAgICAgICAgICAg
dXNlclZlcmlmaWNhdGlvbjogInllcyIsCiAgICAgICAgICAgICAgICAgYWNjZXB0QXR0ZXN0YXRp
b246IHRydWUsCiAgICAgICAgICAgICAgICAgcHJpdmF0ZUtleUJhc2U2NDogdGVzdEVTMjU2UHJp
dmF0ZUtleUJhc2U2NCwKICAgICAgICAgICAgICAgICB1c2VyQ2VydGlmaWNhdGVCYXNlNjQ6IHRl
c3RBdHRlc3RhdGlvbkNlcnRpZmljYXRlQmFzZTY0LApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGZkYmE5MGIwMzgyMmZiNzhm
YzYyOTJlYmU0ZjBjNjBmYmJmYzg3NGUuLjU1OTUzZGFjNmVlNjBmNTJiYmVjMTQ4ZjVlMWIyNWM2
NGUwNjkxZTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMSBAQAorMjAyMC0wNC0wMiAgSmlld2VuIFRhbiAg
PGppZXdlbl90YW5AYXBwbGUuY29tPgorCisgICAgICAgIFtXZWJBdXRobl0gQ2FuY2VsIFdlYkF1
dGhuIHJlcXVlc3RzIGFmdGVyIHVzZXJzIGNhbmNlbGxpbmcgTG9jYWxBdXRoZW50aWNhdGlvbiBw
cm9tcHRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDk5MjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYxMjIzNzEzPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZHMgYSBuZXcgdGVzdCBmb3IgdGhl
IGNoYW5nZSBhbmQgbW9kaWZpZXMgZXhpc3RpbmcgdGVzdHMgdG8gYWNjb21tb2RhdGUgY2hhbmdl
cyBpbiBNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uLmlkbC4KKworICAgICAgICAq
IGh0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1jcmVhdGUtZmFpbHVyZS1s
b2NhbC1zaWxlbnQuaHR0cHMuaHRtbDoKKyAgICAgICAgKiBodHRwL3dwdC93ZWJhdXRobi9wdWJs
aWMta2V5LWNyZWRlbnRpYWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwuaHR0cHMtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGh0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1jcmVh
dGUtZmFpbHVyZS1sb2NhbC5odHRwcy5odG1sOgorICAgICAgICAqIGh0dHAvd3B0L3dlYmF1dGhu
L3B1YmxpYy1rZXktY3JlZGVudGlhbC1jcmVhdGUtc3VjY2Vzcy1sb2NhbC5odHRwcy5odG1sOgor
ICAgICAgICAqIGh0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1nZXQtZmFp
bHVyZS1sb2NhbC1zaWxlbnQuaHR0cHMuaHRtbDoKKyAgICAgICAgKiBodHRwL3dwdC93ZWJhdXRo
bi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LWZhaWx1cmUtbG9jYWwuaHR0cHMuaHRtbDoKKyAg
ICAgICAgKiBodHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LXN1Y2Nl
c3MtbG9jYWwuaHR0cHMuaHRtbDoKKwogMjAyMC0wMy0zMSAgSmVyIE5vYmxlICA8amVyLm5vYmxl
QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OOiBbIE1hYyB3azIgUmVsZWFzZSBdIEZs
YWt5IGNyYXNoIGluIFdlYkNvcmU6Ok1lZGlhUGxheWVyOjpjcmVhdGVWaWRlb0Z1bGxzY3JlZW5M
YXllcgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtl
eS1jcmVkZW50aWFsLWNyZWF0ZS1mYWlsdXJlLWxvY2FsLXNpbGVudC5odHRwcy5odG1sIGIvTGF5
b3V0VGVzdHMvaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNyZWF0ZS1m
YWlsdXJlLWxvY2FsLXNpbGVudC5odHRwcy5odG1sCmluZGV4IGNiMmQwMjY4MzBmZTJhODg1NTgw
ZWU1MTA5YjhkY2FhNjNjYjA3MTcuLmI1MjlmODA2MmIxYjk1YmUwNTUyNGFkYzIzYWJmNzA0YjU1
MDUzNDUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1r
ZXktY3JlZGVudGlhbC1jcmVhdGUtZmFpbHVyZS1sb2NhbC1zaWxlbnQuaHR0cHMuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtY3Jl
YXRlLWZhaWx1cmUtbG9jYWwtc2lsZW50Lmh0dHBzLmh0bWwKQEAgLTYsNyArNiw3IEBACiA8c2Ny
aXB0PgogICAgIC8vIERlZmF1bHQgbW9jayBjb25maWd1cmF0aW9uLiBUZXN0cyBuZWVkIHRvIG92
ZXJyaWRlIGlmIHRoZXkgbmVlZCBkaWZmZXJlbnQgY29uZmlndXJhdGlvbi4KICAgICBpZiAod2lu
ZG93LmludGVybmFscykKLSAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlv
bkNvbmZpZ3VyYXRpb24oeyBzaWxlbnRGYWlsdXJlOiB0cnVlLCBsb2NhbDogeyBhY2NlcHRBdXRo
ZW50aWNhdGlvbjogZmFsc2UsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0pOworICAgICAg
ICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IHNpbGVu
dEZhaWx1cmU6IHRydWUsIGxvY2FsOiB7IHVzZXJWZXJpZmljYXRpb246ICJubyIsIGFjY2VwdEF0
dGVzdGF0aW9uOiBmYWxzZSB9IH0pOwogCiAgICAgcHJvbWlzZV90ZXN0KHQgPT4gewogICAgICAg
ICBjb25zdCBvcHRpb25zID0gewpAQCAtMTI2LDcgKzEyNiw3IEBACiAgICAgICAgICAgICB9CiAg
ICAgICAgIH07CiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgaW50
ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBzaWxlbnRGYWls
dXJlOiB0cnVlLCBsb2NhbDogeyBhY2NlcHRBdXRoZW50aWNhdGlvbjogdHJ1ZSwgYWNjZXB0QXR0
ZXN0YXRpb246IGZhbHNlIH0gfSk7CisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1
dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IHNpbGVudEZhaWx1cmU6IHRydWUsIGxvY2FsOiB7
IHVzZXJWZXJpZmljYXRpb246ICJ5ZXMiLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UgfSB9KTsK
ICAgICAgICAgcmV0dXJuIHByb21pc2VSZWplY3RzKHQsICJOb3RBbGxvd2VkRXJyb3IiLCBuYXZp
Z2F0b3IuY3JlZGVudGlhbHMuY3JlYXRlKG9wdGlvbnMpLCAiT3BlcmF0aW9uIHRpbWVkIG91dC4i
KTsKICAgICB9LCAiUHVibGljS2V5Q3JlZGVudGlhbCdzIFtbY3JlYXRlXV0gd2l0aG91dCBwcml2
YXRlIGtleXMgaW4gYSBtb2NrIGxvY2FsIGF1dGhlbnRpY2F0b3IuIik7CiAKQEAgLTE1Miw3ICsx
NTIsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICB9OwogICAgICAgICBpZiAod2luZG93Lmlu
dGVybmFscykKLSAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25D
b25maWd1cmF0aW9uKHsgc2lsZW50RmFpbHVyZTogdHJ1ZSwgbG9jYWw6IHsgYWNjZXB0QXV0aGVu
dGljYXRpb246IHRydWUsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwgcHJpdmF0ZUtleUJhc2U2
NDogcHJpdmF0ZUtleUJhc2U2NCB9IH0pOworICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tX
ZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBzaWxlbnRGYWlsdXJlOiB0cnVlLCBsb2Nh
bDogeyB1c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLCBw
cml2YXRlS2V5QmFzZTY0OiBwcml2YXRlS2V5QmFzZTY0IH0gfSk7CiAgICAgICAgIHJldHVybiBw
cm9taXNlUmVqZWN0cyh0LCAiTm90QWxsb3dlZEVycm9yIiwgbmF2aWdhdG9yLmNyZWRlbnRpYWxz
LmNyZWF0ZShvcHRpb25zKSwgIk9wZXJhdGlvbiB0aW1lZCBvdXQuIikudGhlbigoKSA9PiB7CiAg
ICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAgICAgICAgICAgICAgICAgdGVzdFJ1
bm5lci5jbGVhblVwS2V5Y2hhaW4odGVzdFJwSWQsIGNyZWRlbnRpYWxJREJhc2U2NCk7CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRp
YWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
aHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNyZWF0ZS1mYWlsdXJlLWxv
Y2FsLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRleCA2YTEwMjVhYjA0M2RkNTQ5NTdiODgyNDNlNDhl
ODc4NWM2OThmZjU5Li45Y2FkOGMwNDZiNzI2NjI5MTcyOGM1NDk5NjBhZGY5YjM5YjRhOWVkIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRl
bnRpYWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1jcmVhdGUtZmFp
bHVyZS1sb2NhbC5odHRwcy1leHBlY3RlZC50eHQKQEAgLTcsNCArNyw1IEBAIFBBU1MgUHVibGlj
S2V5Q3JlZGVudGlhbCdzIFtbY3JlYXRlXV0gd2l0aG91dCBwcml2YXRlIGtleXMgaW4gYSBtb2Nr
IGxvY2FsIGF1dGhlCiBQQVNTIFB1YmxpY0tleUNyZWRlbnRpYWwncyBbW2NyZWF0ZV1dIHdpdGhv
dXQgYXR0ZXN0YXRpb24gaW4gYSBtb2NrIGxvY2FsIGF1dGhlbnRpY2F0b3IuIAogUEFTUyBQdWJs
aWNLZXlDcmVkZW50aWFsJ3MgW1tjcmVhdGVdXSBub3QgZGVsZXRpbmcgb2xkIGNyZWRlbnRpYWwg
aW4gYSBtb2NrIGxvY2FsIGF1dGhlbnRpY2F0b3IuIAogUEFTUyBQdWJsaWNLZXlDcmVkZW50aWFs
J3MgW1tjcmVhdGVdXSB3aXRoIHRpbWVvdXQgaW4gYSBtb2NrIGxvY2FsIGF1dGhlbnRpY2F0b3Iu
IAorUEFTUyBQdWJsaWNLZXlDcmVkZW50aWFsJ3MgW1tjcmVhdGVdXSB3aXRoIHVzZXIgY2FuY2Vs
IGluIGEgbW9jayBsb2NhbCBhdXRoZW50aWNhdG9yLiAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNyZWF0ZS1mYWlsdXJl
LWxvY2FsLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMt
a2V5LWNyZWRlbnRpYWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwuaHR0cHMuaHRtbAppbmRleCA1NzBh
YzA4ZjRiMGRlZTBkZDE4OTUxNzFiYmU5NzllZDA5ODliNTVkLi5hYTJmNzg5OTU4N2NlZTY5Mjlh
NTE0NzRjYzcxMjI0YmQ4ZDcyYWI5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93
ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwuaHR0cHMu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRl
bnRpYWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwuaHR0cHMuaHRtbApAQCAtNiw3ICs2LDcgQEAKIDxz
Y3JpcHQ+CiAgICAgLy8gRGVmYXVsdCBtb2NrIGNvbmZpZ3VyYXRpb24uIFRlc3RzIG5lZWQgdG8g
b3ZlcnJpZGUgaWYgdGhleSBuZWVkIGRpZmZlcmVudCBjb25maWd1cmF0aW9uLgogICAgIGlmICh3
aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0
aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IGFjY2VwdEF1dGhlbnRpY2F0aW9uOiBmYWxzZSwg
YWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7CisgICAgICAgIGludGVybmFscy5zZXRNb2Nr
V2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsgdXNlclZlcmlmaWNhdGlv
bjogIm5vIiwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7CiAKICAgICBwcm9taXNlX3Rl
c3QodCA9PiB7CiAgICAgICAgIGNvbnN0IG9wdGlvbnMgPSB7CkBAIC0xMjEsNyArMTIxLDcgQEAK
ICAgICAgICAgICAgIH0KICAgICAgICAgfTsKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMp
Ci0gICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJh
dGlvbih7IGxvY2FsOiB7IGFjY2VwdEF1dGhlbnRpY2F0aW9uOiB0cnVlLCBhY2NlcHRBdHRlc3Rh
dGlvbjogZmFsc2UgfSB9KTsKKyAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVu
dGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsgdXNlclZlcmlmaWNhdGlvbjogInllcyIs
IGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0pOwogICAgICAgICByZXR1cm4gcHJvbWlzZVJl
amVjdHModCwgIlVua25vd25FcnJvciIsIG5hdmlnYXRvci5jcmVkZW50aWFscy5jcmVhdGUob3B0
aW9ucyksICJDb3VsZG4ndCBjcmVhdGUgcHJpdmF0ZSBrZXkuIik7CiAgICAgfSwgIlB1YmxpY0tl
eUNyZWRlbnRpYWwncyBbW2NyZWF0ZV1dIHdpdGhvdXQgcHJpdmF0ZSBrZXlzIGluIGEgbW9jayBs
b2NhbCBhdXRoZW50aWNhdG9yLiIpOwogCkBAIC0xNDYsNyArMTQ2LDcgQEAKICAgICAgICAgICAg
IH0KICAgICAgICAgfTsKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAg
ICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2Fs
OiB7IGFjY2VwdEF1dGhlbnRpY2F0aW9uOiB0cnVlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2Us
IHByaXZhdGVLZXlCYXNlNjQ6IHByaXZhdGVLZXlCYXNlNjQgfSB9KTsKKyAgICAgICAgICAgIGlu
dGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsg
dXNlclZlcmlmaWNhdGlvbjogInllcyIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwgcHJpdmF0
ZUtleUJhc2U2NDogcHJpdmF0ZUtleUJhc2U2NCB9IH0pOwogICAgICAgICByZXR1cm4gcHJvbWlz
ZVJlamVjdHModCwgIlVua25vd25FcnJvciIsIG5hdmlnYXRvci5jcmVkZW50aWFscy5jcmVhdGUo
b3B0aW9ucyksICJDb3VsZG4ndCBhdHRlc3Q6IFRoZSBvcGVyYXRpb24gY291bGRuJ3QgY29tcGxl
dGUuIikudGhlbigoKSA9PiB7CiAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCiAg
ICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5jbGVhblVwS2V5Y2hhaW4odGVzdFJwSWQsIGNyZWRl
bnRpYWxJREJhc2U2NCk7CkBAIC0xNzMsNyArMTczLDcgQEAKICAgICAgICAgICAgIH0KICAgICAg
ICAgfTsKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKLSAgICAgICAgICAgIGludGVy
bmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsgYWNj
ZXB0QXV0aGVudGljYXRpb246IHRydWUsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0pOwor
ICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRp
b24oeyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwgYWNjZXB0QXR0ZXN0YXRpb246
IGZhbHNlIH0gfSk7CiAgICAgICAgICAgICB0ZXN0UnVubmVyLmFkZFRlc3RLZXlUb0tleWNoYWlu
KHByaXZhdGVLZXlCYXNlNjQsIHRlc3RScElkLCB0ZXN0VXNlckVudGl0eUJ1bmRsZUJhc2U2NCk7
CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIHByb21pc2VSZWplY3RzKHQsICJVbmtub3duRXJy
b3IiLCBuYXZpZ2F0b3IuY3JlZGVudGlhbHMuY3JlYXRlKG9wdGlvbnMpLCAiQ291bGRuJ3QgY3Jl
YXRlIHByaXZhdGUga2V5LiIpLnRoZW4oKCkgPT4gewpAQCAtMjAyLDcgKzIwMiwyOSBAQAogICAg
ICAgICB9OwogCiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgaW50
ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyBh
Y2NlcHRBdXRoZW50aWNhdGlvbjogZmFsc2UsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0p
OworICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3Vy
YXRpb24oeyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAibm8iLCBhY2NlcHRBdHRlc3RhdGlv
bjogZmFsc2UgfSB9KTsKICAgICAgICAgcmV0dXJuIHByb21pc2VSZWplY3RzKHQsICJOb3RBbGxv
d2VkRXJyb3IiLCBuYXZpZ2F0b3IuY3JlZGVudGlhbHMuY3JlYXRlKG9wdGlvbnMpLCAiT3BlcmF0
aW9uIHRpbWVkIG91dC4iKTsKICAgICB9LCAiUHVibGljS2V5Q3JlZGVudGlhbCdzIFtbY3JlYXRl
XV0gd2l0aCB0aW1lb3V0IGluIGEgbW9jayBsb2NhbCBhdXRoZW50aWNhdG9yLiIpOworCisgICAg
cHJvbWlzZV90ZXN0KGZ1bmN0aW9uKHQpIHsKKyAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHsKKyAg
ICAgICAgICAgIHB1YmxpY0tleTogeworICAgICAgICAgICAgICAgIHJwOiB7CisgICAgICAgICAg
ICAgICAgICAgIG5hbWU6ICJleGFtcGxlLmNvbSIKKyAgICAgICAgICAgICAgICB9LAorICAgICAg
ICAgICAgICAgIHVzZXI6IHsKKyAgICAgICAgICAgICAgICAgICAgbmFtZTogIkpvaG4gQXBwbGVz
ZWVkIiwKKyAgICAgICAgICAgICAgICAgICAgaWQ6IGFzY2lpVG9VaW50OEFycmF5KCIxMjM0NTYi
KSwKKyAgICAgICAgICAgICAgICAgICAgZGlzcGxheU5hbWU6ICJKb2huIiwKKyAgICAgICAgICAg
ICAgICB9LAorICAgICAgICAgICAgICAgIGNoYWxsZW5nZTogYXNjaWlUb1VpbnQ4QXJyYXkoIjEy
MzQ1NiIpLAorICAgICAgICAgICAgICAgIHB1YktleUNyZWRQYXJhbXM6IFt7IHR5cGU6ICJwdWJs
aWMta2V5IiwgYWxnOiAtNyB9XSwKKyAgICAgICAgICAgIH0KKyAgICAgICAgfTsKKworICAgICAg
ICBpZiAod2luZG93LmludGVybmFscykKKyAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2Vi
QXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsgdXNlclZlcmlmaWNhdGlvbjog
ImNhbmNlbCIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0pOworICAgICAgICByZXR1cm4g
cHJvbWlzZVJlamVjdHModCwgIk5vdEFsbG93ZWRFcnJvciIsIG5hdmlnYXRvci5jcmVkZW50aWFs
cy5jcmVhdGUob3B0aW9ucyksICJUaGlzIHJlcXVlc3QgaGFzIGJlZW4gY2FuY2VsbGVkIGJ5IHRo
ZSB1c2VyLiIpOworICAgIH0sICJQdWJsaWNLZXlDcmVkZW50aWFsJ3MgW1tjcmVhdGVdXSB3aXRo
IHVzZXIgY2FuY2VsIGluIGEgbW9jayBsb2NhbCBhdXRoZW50aWNhdG9yLiIpOworCiA8L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXkt
Y3JlZGVudGlhbC1jcmVhdGUtc3VjY2Vzcy1sb2NhbC5odHRwcy5odG1sIGIvTGF5b3V0VGVzdHMv
aHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNyZWF0ZS1zdWNjZXNzLWxv
Y2FsLmh0dHBzLmh0bWwKaW5kZXggYmQzMDc2MTUzZjFiZjkwOTBkMjk4NDAzODRmMDM3YzI5ODhj
ODVjMi4uNDM5YjkxNWM0NDBjMTAyN2FiNjE1OGZkMjY3OWIwYWNiNGZmZGY1YiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNy
ZWF0ZS1zdWNjZXNzLWxvY2FsLmh0dHBzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvaHR0cC93cHQv
d2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNyZWF0ZS1zdWNjZXNzLWxvY2FsLmh0dHBz
Lmh0bWwKQEAgLTUyLDcgKzUyLDcgQEAKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCiAg
ICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlv
bih7CiAgICAgICAgICAgICAgICAgbG9jYWw6IHsKLSAgICAgICAgICAgICAgICAgICAgYWNjZXB0
QXV0aGVudGljYXRpb246IHRydWUsCisgICAgICAgICAgICAgICAgICAgIHVzZXJWZXJpZmljYXRp
b246ICJ5ZXMiLAogICAgICAgICAgICAgICAgICAgICBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2Us
CiAgICAgICAgICAgICAgICAgICAgIHByaXZhdGVLZXlCYXNlNjQ6IHByaXZhdGVLZXlCYXNlNjQs
CiAgICAgICAgICAgICAgICAgfQpAQCAtODUsNyArODUsNyBAQAogICAgICAgICBpZiAod2luZG93
LmludGVybmFscykKICAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRp
b25Db25maWd1cmF0aW9uKHsKICAgICAgICAgICAgICAgICBsb2NhbDogewotICAgICAgICAgICAg
ICAgICAgICBhY2NlcHRBdXRoZW50aWNhdGlvbjogdHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAg
dXNlclZlcmlmaWNhdGlvbjogInllcyIsCiAgICAgICAgICAgICAgICAgICAgIGFjY2VwdEF0dGVz
dGF0aW9uOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAgcHJpdmF0ZUtleUJhc2U2NDogcHJp
dmF0ZUtleUJhc2U2NCwKICAgICAgICAgICAgICAgICB9CkBAIC0xMTksNyArMTE5LDcgQEAKICAg
ICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCiAgICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9j
a1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7CiAgICAgICAgICAgICAgICAgbG9jYWw6
IHsKLSAgICAgICAgICAgICAgICAgICAgYWNjZXB0QXV0aGVudGljYXRpb246IHRydWUsCisgICAg
ICAgICAgICAgICAgICAgIHVzZXJWZXJpZmljYXRpb246ICJ5ZXMiLAogICAgICAgICAgICAgICAg
ICAgICBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgIHByaXZh
dGVLZXlCYXNlNjQ6IHByaXZhdGVLZXlCYXNlNjQsCiAgICAgICAgICAgICAgICAgfQpAQCAtMTYz
LDcgKzE2Myw3IEBACiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQogICAgICAgICAgICAg
aW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oewogICAgICAg
ICAgICAgICAgIGxvY2FsOiB7Ci0gICAgICAgICAgICAgICAgICAgIGFjY2VwdEF1dGhlbnRpY2F0
aW9uOiB0cnVlLAorICAgICAgICAgICAgICAgICAgICB1c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwK
ICAgICAgICAgICAgICAgICAgICAgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLAogICAgICAgICAg
ICAgICAgICAgICBwcml2YXRlS2V5QmFzZTY0OiBwcml2YXRlS2V5QmFzZTY0LAogICAgICAgICAg
ICAgICAgIH0KQEAgLTE5Nyw3ICsxOTcsNyBAQAogICAgICAgICBpZiAod2luZG93LmludGVybmFs
cykKICAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1
cmF0aW9uKHsKICAgICAgICAgICAgICAgICBsb2NhbDogewotICAgICAgICAgICAgICAgICAgICBh
Y2NlcHRBdXRoZW50aWNhdGlvbjogdHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgdXNlclZlcmlm
aWNhdGlvbjogInllcyIsCiAgICAgICAgICAgICAgICAgICAgIGFjY2VwdEF0dGVzdGF0aW9uOiB0
cnVlLAogICAgICAgICAgICAgICAgICAgICBwcml2YXRlS2V5QmFzZTY0OiBwcml2YXRlS2V5QmFz
ZTY0LAogICAgICAgICAgICAgICAgICAgICB1c2VyQ2VydGlmaWNhdGVCYXNlNjQ6IHRlc3RBdHRl
c3RhdGlvbkNlcnRpZmljYXRlQmFzZTY0LApAQCAtMjMzLDcgKzIzMyw3IEBACiAgICAgICAgIGlm
ICh3aW5kb3cuaW50ZXJuYWxzKQogICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRo
ZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oewogICAgICAgICAgICAgICAgIGxvY2FsOiB7Ci0gICAg
ICAgICAgICAgICAgICAgIGFjY2VwdEF1dGhlbnRpY2F0aW9uOiB0cnVlLAorICAgICAgICAgICAg
ICAgICAgICB1c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwKICAgICAgICAgICAgICAgICAgICAgYWNj
ZXB0QXR0ZXN0YXRpb246IHRydWUsCiAgICAgICAgICAgICAgICAgICAgIHByaXZhdGVLZXlCYXNl
NjQ6IHByaXZhdGVLZXlCYXNlNjQsCiAgICAgICAgICAgICAgICAgICAgIHVzZXJDZXJ0aWZpY2F0
ZUJhc2U2NDogdGVzdEF0dGVzdGF0aW9uQ2VydGlmaWNhdGVCYXNlNjQsCkBAIC0yNjksNyArMjY5
LDcgQEAKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCiAgICAgICAgICAgICBpbnRlcm5h
bHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7CiAgICAgICAgICAgICAg
ICAgbG9jYWw6IHsKLSAgICAgICAgICAgICAgICAgICAgYWNjZXB0QXV0aGVudGljYXRpb246IHRy
dWUsCisgICAgICAgICAgICAgICAgICAgIHVzZXJWZXJpZmljYXRpb246ICJ5ZXMiLAogICAgICAg
ICAgICAgICAgICAgICBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsCiAgICAgICAgICAgICAgICAg
ICAgIHByaXZhdGVLZXlCYXNlNjQ6IHByaXZhdGVLZXlCYXNlNjQsCiAgICAgICAgICAgICAgICAg
fQpAQCAtMzA4LDcgKzMwOCw3IEBACiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQogICAg
ICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24o
ewogICAgICAgICAgICAgICAgIGxvY2FsOiB7Ci0gICAgICAgICAgICAgICAgICAgIGFjY2VwdEF1
dGhlbnRpY2F0aW9uOiB0cnVlLAorICAgICAgICAgICAgICAgICAgICB1c2VyVmVyaWZpY2F0aW9u
OiAieWVzIiwKICAgICAgICAgICAgICAgICAgICAgYWNjZXB0QXR0ZXN0YXRpb246IHRydWUsCiAg
ICAgICAgICAgICAgICAgICAgIHByaXZhdGVLZXlCYXNlNjQ6IHByaXZhdGVLZXlCYXNlNjQsCiAg
ICAgICAgICAgICAgICAgICAgIHVzZXJDZXJ0aWZpY2F0ZUJhc2U2NDogdGVzdEF0dGVzdGF0aW9u
Q2VydGlmaWNhdGVCYXNlNjQsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJh
dXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LWZhaWx1cmUtbG9jYWwtc2lsZW50Lmh0dHBz
Lmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRp
YWwtZ2V0LWZhaWx1cmUtbG9jYWwtc2lsZW50Lmh0dHBzLmh0bWwKaW5kZXggODNlYjZiNjBiNmY5
MGI2ZTdlZTRhZWY5ZThlMTYxM2JkOTY2OWRhMC4uZmVkY2U4MTJjNDRjNDVhODY1MzgwM2UxMDA3
YTQ4N2I4ZDdiZGEwZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2ViYXV0aG4v
cHVibGljLWtleS1jcmVkZW50aWFsLWdldC1mYWlsdXJlLWxvY2FsLXNpbGVudC5odHRwcy5odG1s
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlh
bC1nZXQtZmFpbHVyZS1sb2NhbC1zaWxlbnQuaHR0cHMuaHRtbApAQCAtNiw3ICs2LDcgQEAKIDxz
Y3JpcHQ+CiAgICAgcHJvbWlzZV90ZXN0KHQgPT4gewogICAgICAgICBpZiAod2luZG93LmludGVy
bmFscykKLSAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25m
aWd1cmF0aW9uKHsgc2lsZW50RmFpbHVyZTogdHJ1ZSwgbG9jYWw6IHsgYWNjZXB0QXV0aGVudGlj
YXRpb246IGZhbHNlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UgfSB9KTsKKyAgICAgICAgICAg
IGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgc2lsZW50
RmFpbHVyZTogdHJ1ZSwgbG9jYWw6IHsgdXNlclZlcmlmaWNhdGlvbjogIm5vIiwgYWNjZXB0QXR0
ZXN0YXRpb246IGZhbHNlIH0gfSk7CiAKICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHsKICAgICAg
ICAgICAgIHB1YmxpY0tleTogewpAQCAtMzAsNyArMzAsNyBAQAogICAgICAgICBjb25zdCBjcmVk
ZW50aWFsSURCYXNlNjQgPSBidG9hKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoMCwgY3JlZGVu
dGlhbElEKSk7CiAgICAgICAgIC8vIERlZmF1bHQgbW9jayBjb25maWd1cmF0aW9uLiBUZXN0cyBu
ZWVkIHRvIG92ZXJyaWRlIGlmIHRoZXkgbmVlZCBkaWZmZXJlbnQgY29uZmlndXJhdGlvbi4KICAg
ICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9j
a1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IHNpbGVudEZhaWx1cmU6IHRydWUsIGxv
Y2FsOiB7IGFjY2VwdEF1dGhlbnRpY2F0aW9uOiBmYWxzZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZh
bHNlLCBwcmVmZXJyZWRDcmVkZW50aWFsSWRCYXNlNjQ6IGNyZWRlbnRpYWxJREJhc2U2NCB9IH0p
OworICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3Vy
YXRpb24oeyBzaWxlbnRGYWlsdXJlOiB0cnVlLCBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAi
bm8iLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHByZWZlcnJlZENyZWRlbnRpYWxJZEJhc2U2
NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7CiAKICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHsK
ICAgICAgICAgICAgIHB1YmxpY0tleTogewpAQCAtNTYsNyArNTYsNyBAQAogICAgICAgICBjb25z
dCBjcmVkZW50aWFsSURCYXNlNjQgPSBidG9hKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoMCwg
Y3JlZGVudGlhbElEKSk7CiAgICAgICAgIC8vIERlZmF1bHQgbW9jayBjb25maWd1cmF0aW9uLiBU
ZXN0cyBuZWVkIHRvIG92ZXJyaWRlIGlmIHRoZXkgbmVlZCBkaWZmZXJlbnQgY29uZmlndXJhdGlv
bi4KICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAgICBpbnRlcm5hbHMu
c2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IHNpbGVudEZhaWx1cmU6IHRy
dWUsIGxvY2FsOiB7IGFjY2VwdEF1dGhlbnRpY2F0aW9uOiBmYWxzZSwgYWNjZXB0QXR0ZXN0YXRp
b246IGZhbHNlLCBwcmVmZXJyZWRDcmVkZW50aWFsSWRCYXNlNjQ6IGNyZWRlbnRpYWxJREJhc2U2
NCB9IH0pOworICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNv
bmZpZ3VyYXRpb24oeyBzaWxlbnRGYWlsdXJlOiB0cnVlLCBsb2NhbDogeyB1c2VyVmVyaWZpY2F0
aW9uOiAibm8iLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHByZWZlcnJlZENyZWRlbnRpYWxJ
ZEJhc2U2NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7CiAKICAgICAgICAgY29uc3Qgb3B0aW9u
cyA9IHsKICAgICAgICAgICAgIHB1YmxpY0tleTogewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWdldC1mYWlsdXJlLWxvY2Fs
Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNy
ZWRlbnRpYWwtZ2V0LWZhaWx1cmUtbG9jYWwuaHR0cHMuaHRtbAppbmRleCBiZGI2MDc2YzJiYzg4
OWNkMGEyZTRlY2Y5YTc0NmVhOWM1YjNlMzEwLi42MDdjMjU4ZWM3Y2QxMzNhMGE0YTlmZGUzNzA5
NTVkNmVkN2Q2NjUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9w
dWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LWZhaWx1cmUtbG9jYWwuaHR0cHMuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LWZh
aWx1cmUtbG9jYWwuaHR0cHMuaHRtbApAQCAtNiw3ICs2LDcgQEAKIDxzY3JpcHQ+CiAgICAgcHJv
bWlzZV90ZXN0KHQgPT4gewogICAgICAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAg
ICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9j
YWw6IHsgYWNjZXB0QXV0aGVudGljYXRpb246IGZhbHNlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFs
c2UgfSB9KTsKKyAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25D
b25maWd1cmF0aW9uKHsgbG9jYWw6IHsgdXNlclZlcmlmaWNhdGlvbjogIm5vIiwgYWNjZXB0QXR0
ZXN0YXRpb246IGZhbHNlIH0gfSk7CiAKICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHsKICAgICAg
ICAgICAgIHB1YmxpY0tleTogewpAQCAtMjksNyArMjksNyBAQAogICAgICAgICBjb25zdCBjcmVk
ZW50aWFsSURCYXNlNjQgPSBidG9hKFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoMCwgY3JlZGVu
dGlhbElEKSk7CiAgICAgICAgIC8vIERlZmF1bHQgbW9jayBjb25maWd1cmF0aW9uLiBUZXN0cyBu
ZWVkIHRvIG92ZXJyaWRlIGlmIHRoZXkgbmVlZCBkaWZmZXJlbnQgY29uZmlndXJhdGlvbi4KICAg
ICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9j
a1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IGFjY2VwdEF1dGhlbnRp
Y2F0aW9uOiBmYWxzZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLCBwcmVmZXJyZWRDcmVkZW50
aWFsSWRCYXNlNjQ6IGNyZWRlbnRpYWxJREJhc2U2NCB9IH0pOworICAgICAgICAgICAgaW50ZXJu
YWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyB1c2Vy
VmVyaWZpY2F0aW9uOiAibm8iLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHByZWZlcnJlZENy
ZWRlbnRpYWxJZEJhc2U2NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7CiAKICAgICAgICAgY29u
c3Qgb3B0aW9ucyA9IHsKICAgICAgICAgICAgIHB1YmxpY0tleTogewpAQCAtNTQsNyArNTQsNyBA
QAogICAgICAgICBjb25zdCBjcmVkZW50aWFsSURCYXNlNjQgPSBidG9hKFN0cmluZy5mcm9tQ2hh
ckNvZGUuYXBwbHkoMCwgY3JlZGVudGlhbElEKSk7CiAgICAgICAgIC8vIERlZmF1bHQgbW9jayBj
b25maWd1cmF0aW9uLiBUZXN0cyBuZWVkIHRvIG92ZXJyaWRlIGlmIHRoZXkgbmVlZCBkaWZmZXJl
bnQgY29uZmlndXJhdGlvbi4KICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAg
ICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxv
Y2FsOiB7IGFjY2VwdEF1dGhlbnRpY2F0aW9uOiBmYWxzZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZh
bHNlLCBwcmVmZXJyZWRDcmVkZW50aWFsSWRCYXNlNjQ6IGNyZWRlbnRpYWxJREJhc2U2NCB9IH0p
OworICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3Vy
YXRpb24oeyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAibm8iLCBhY2NlcHRBdHRlc3RhdGlv
bjogZmFsc2UsIHByZWZlcnJlZENyZWRlbnRpYWxJZEJhc2U2NDogY3JlZGVudGlhbElEQmFzZTY0
IH0gfSk7CiAKICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHsKICAgICAgICAgICAgIHB1YmxpY0tl
eTogewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtl
eS1jcmVkZW50aWFsLWdldC1zdWNjZXNzLWxvY2FsLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9o
dHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LXN1Y2Nlc3MtbG9jYWwu
aHR0cHMuaHRtbAppbmRleCA3OGQ0ZDdiMDc2YjE5MWFlOGQ2YmJjNTdmNGNlNmFhMzgzODAxNmY4
Li40OTdiMGU2MjM4YmExNzFkZmY3OTIwOTJkMzg4NDIxNWJkYTgyZDlmIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LXN1
Y2Nlc3MtbG9jYWwuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRo
bi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LXN1Y2Nlc3MtbG9jYWwuaHR0cHMuaHRtbApAQCAt
NDEsNyArNDEsNyBAQAogICAgICAgICBjb25zdCBjcmVkZW50aWFsSURCYXNlNjQgPSBiYXNlNjRl
bmNvZGUoY3JlZGVudGlhbElEKTsKICAgICAgICAgLy8gRGVmYXVsdCBtb2NrIGNvbmZpZ3VyYXRp
b24uIFRlc3RzIG5lZWQgdG8gb3ZlcnJpZGUgaWYgdGhleSBuZWVkIGRpZmZlcmVudCBjb25maWd1
cmF0aW9uLgogICAgICAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgICAgIGludGVy
bmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsgYWNj
ZXB0QXV0aGVudGljYXRpb246IHRydWUsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwgcHJlZmVy
cmVkQ3JlZGVudGlhbElkQmFzZTY0OiBjcmVkZW50aWFsSURCYXNlNjQgfSB9KTsKKyAgICAgICAg
ICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9j
YWw6IHsgdXNlclZlcmlmaWNhdGlvbjogInllcyIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwg
cHJlZmVycmVkQ3JlZGVudGlhbElkQmFzZTY0OiBjcmVkZW50aWFsSURCYXNlNjQgfSB9KTsKIAog
ICAgICAgICBjb25zdCBvcHRpb25zID0gewogICAgICAgICAgICAgcHVibGljS2V5OiB7CkBAIC02
Miw3ICs2Miw3IEBACiAgICAgICAgIGNvbnN0IGNyZWRlbnRpYWxJREJhc2U2NCA9IGJhc2U2NGVu
Y29kZShjcmVkZW50aWFsSUQpOwogICAgICAgICAvLyBEZWZhdWx0IG1vY2sgY29uZmlndXJhdGlv
bi4gVGVzdHMgbmVlZCB0byBvdmVycmlkZSBpZiB0aGV5IG5lZWQgZGlmZmVyZW50IGNvbmZpZ3Vy
YXRpb24uCiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgaW50ZXJu
YWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyBhY2Nl
cHRBdXRoZW50aWNhdGlvbjogdHJ1ZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLCBwcmVmZXJy
ZWRDcmVkZW50aWFsSWRCYXNlNjQ6IGNyZWRlbnRpYWxJREJhc2U2NCB9IH0pOworICAgICAgICAg
ICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2Nh
bDogeyB1c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLCBw
cmVmZXJyZWRDcmVkZW50aWFsSWRCYXNlNjQ6IGNyZWRlbnRpYWxJREJhc2U2NCB9IH0pOwogCiAg
ICAgICAgIGNvbnN0IG9wdGlvbnMgPSB7CiAgICAgICAgICAgICBwdWJsaWNLZXk6IHsK
</data>
<flag name="review"
          id="410700"
          type_id="1"
          status="+"
          setter="bfulgham"
    />
    <flag name="commit-queue"
          id="410997"
          type_id="3"
          status="-"
          setter="bfulgham"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395745</attachid>
            <date>2020-04-07 15:14:52 -0700</date>
            <delta_ts>2020-04-07 16:01:27 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-209923-20200407151451.patch</filename>
            <type>text/plain</type>
            <size>42908</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5MzA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWY2ZjFjYjVmZWZhNjU0
N2ExYTUzNTM5YmZlZjI0MGVlYzE4OWI0NC4uNTgyZTk0ZjQzYmFmYzlhODM0OTU5MDkxYmMxOWNj
YjI2NGZiNTQxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA0LTAyICBKaWV3
ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkF1dGhuXSBDYW5j
ZWwgV2ViQXV0aG4gcmVxdWVzdHMgd2hlbiB1c2VycyBjYW5jZWwgTG9jYWxBdXRoZW50aWNhdGlv
biBwcm9tcHRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMDk5MjMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYxMjIzNzEzPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisKKyAgICAgICAgQ292ZXJlZCBieSBuZXcgdGVzdHMg
d2l0aGluIGV4aXN0aW5nIHRlc3QgZmlsZXMuCisKKyAgICAgICAgKiB0ZXN0aW5nL01vY2tXZWJB
dXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tXZWJB
dXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246OkxvY2FsQ29uZmlndXJhdGlvbjo6ZW5jb2RlIGNv
bnN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRp
b246OkxvY2FsQ29uZmlndXJhdGlvbjo6ZGVjb2RlKToKKyAgICAgICAgKiB0ZXN0aW5nL01vY2tX
ZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaWRsOgorICAgICAgICBBZGRzIGEgbmV3IHBh
cmFtZXRlciB0byByZWZsZWN0IHVzZXIgY2FuY2VsbGF0aW9ucyBvbiBMb2NhbEF1dGhlbnRpY2F0
aW9uIFVJLgorCiAyMDIwLTAzLTMxICBSb2IgQnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgQXBwZW5kIFVwZ3JhZGUtSW5zZWN1cmUtUmVxdWVzdHMgaGVhZGVyIGluIENhY2hlZFJl
c291cmNlTG9hZGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDc5NTNlZjFlODM3NmY4Yzk3MWI1NTI4YzllNmZkNGM4
MmIyYTZiZTAuLmE2ZTkxNGMyNzA5NjM1MjRmOWFlZWUzNGE0NTIyZTVlYWEzNmU5NWIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjAtMDQtMDIgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFu
QGFwcGxlLmNvbT4KKworICAgICAgICBbV2ViQXV0aG5dIENhbmNlbCBXZWJBdXRobiByZXF1ZXN0
cyB3aGVuIHVzZXJzIGNhbmNlbCBMb2NhbEF1dGhlbnRpY2F0aW9uIHByb21wdHMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTkyMworICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNjEyMjM3MTM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJlbnQgRnVs
Z2hhbS4KKworICAgICAgICBUaGlzIHBhdGNoIGludGVudHMgdG8gc3RyZWFtbGluZSBXZWJBdXRo
biBsb2NhbCBhdXRoZW50aWNhdG9yIFVYIGEgYml0IG1vcmUuIEhlcmUsIHdlIHNob3VsZCB0cmVh
dCB1c2VyCisgICAgICAgIGNhbmNlbGxhdGlvbiBvZiB0aGUgTG9jYWxBdXRoZW50aWNhdGlvbiBV
SSBhcyBpZiBpdCB3ZXJlIGJlaW5nIGRvbmUgb24gdGhlIFVJIENsaWVudCdzIFdlYkF1dGhuIFVJ
LgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3Iu
aDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRvck1h
bmFnZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpBdXRoZW50aWNhdG9yTWFuYWdlcjo6Y2FuY2Vs
UmVxdWVzdCk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRp
Y2F0b3JNYW5hZ2VyLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0Nv
Y29hL0xvY2FsQXV0aGVudGljYXRvci5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJBdXRoZW50
aWNhdGlvbi9Db2NvYS9Mb2NhbEF1dGhlbnRpY2F0b3IubW06CisgICAgICAgIChXZWJLaXQ6Okxv
Y2FsQXV0aGVudGljYXRvcjo6Y29udGludWVNYWtlQ3JlZGVudGlhbEFmdGVyVXNlclZlcmlmaWNh
dGlvbik6CisgICAgICAgIChXZWJLaXQ6OkxvY2FsQXV0aGVudGljYXRvcjo6Y29udGludWVHZXRB
c3NlcnRpb25BZnRlclVzZXJWZXJpZmljYXRpb24pOgorICAgICAgICAoV2ViS2l0OjpMb2NhbEF1
dGhlbnRpY2F0b3I6OnZhbGlkYXRlVXNlclZlcmlmaWNhdGlvbiBjb25zdCk6CisgICAgICAgICog
VUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQ29ubmVjdGlvbi5oOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbENvbm5lY3Rpb24u
bW06CisgICAgICAgIChXZWJLaXQ6OkxvY2FsQ29ubmVjdGlvbjo6dmVyaWZ5VXNlciBjb25zdCk6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL01vY2svTW9ja0xvY2FsQ29u
bmVjdGlvbi5tbToKKyAgICAgICAgKFdlYktpdDo6TW9ja0xvY2FsQ29ubmVjdGlvbjo6TW9ja0xv
Y2FsQ29ubmVjdGlvbik6CisgICAgICAgIChXZWJLaXQ6Ok1vY2tMb2NhbENvbm5lY3Rpb246OnZl
cmlmeVVzZXIgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpNb2NrTG9jYWxDb25uZWN0aW9uOjpm
aWx0ZXJSZXNwb25zZXMgY29uc3QpOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorCiAyMDIwLTAzLTMxICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2Vu
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFNQSSBXS1dlYnBhZ2VQcmVmZXJlbmNlcy5fdXNl
ckNvbnRlbnRDb250cm9sbGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01v
Y2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvTW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbi5oCmluZGV4IDc5Y2Y0NWYxYTI3
ZDZkZDdhMjM5YmVkZTBmNzE0ZmYxZmE4Y2IyMzIuLjEyYWMwOGUyM2NkMjUwNDQzMDRjMDZhMTU5
Njk1YTkxZDk3ZDFmMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTW9ja1dl
YkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvTW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbi5oCkBAIC02MSw4ICs2MSwxNCBA
QCBzdHJ1Y3QgTW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbiB7CiAgICAgICAgIE1h
bGljaW91c1BheWxvYWQKICAgICB9OwogCisgICAgZW51bSBjbGFzcyBVc2VyVmVyaWZpY2F0aW9u
IDogdWludDhfdCB7CisgICAgICAgIE5vLAorICAgICAgICBZZXMsCisgICAgICAgIENhbmNlbAor
ICAgIH07CisKICAgICBzdHJ1Y3QgTG9jYWxDb25maWd1cmF0aW9uIHsKLSAgICAgICAgYm9vbCBh
Y2NlcHRBdXRoZW50aWNhdGlvbiB7IGZhbHNlIH07CisgICAgICAgIFVzZXJWZXJpZmljYXRpb24g
dXNlclZlcmlmaWNhdGlvbiB7IFVzZXJWZXJpZmljYXRpb246Ok5vIH07CiAgICAgICAgIGJvb2wg
YWNjZXB0QXR0ZXN0YXRpb24geyBmYWxzZSB9OwogICAgICAgICBTdHJpbmcgcHJpdmF0ZUtleUJh
c2U2NDsKICAgICAgICAgU3RyaW5nIHVzZXJDZXJ0aWZpY2F0ZUJhc2U2NDsKQEAgLTExMiw3ICsx
MTgsNyBAQCBzdHJ1Y3QgTW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbiB7CiB0ZW1w
bGF0ZTxjbGFzcyBFbmNvZGVyPgogdm9pZCBNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0
aW9uOjpMb2NhbENvbmZpZ3VyYXRpb246OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAog
ewotICAgIGVuY29kZXIgPDwgYWNjZXB0QXV0aGVudGljYXRpb24gPDwgYWNjZXB0QXR0ZXN0YXRp
b24gPDwgcHJpdmF0ZUtleUJhc2U2NCA8PCB1c2VyQ2VydGlmaWNhdGVCYXNlNjQgPDwgaW50ZXJt
ZWRpYXRlQ0FDZXJ0aWZpY2F0ZUJhc2U2NCA8PCBwcmVmZXJyZWRDcmVkZW50aWFsSWRCYXNlNjQ7
CisgICAgZW5jb2RlciA8PCB1c2VyVmVyaWZpY2F0aW9uIDw8IGFjY2VwdEF0dGVzdGF0aW9uIDw8
IHByaXZhdGVLZXlCYXNlNjQgPDwgdXNlckNlcnRpZmljYXRlQmFzZTY0IDw8IGludGVybWVkaWF0
ZUNBQ2VydGlmaWNhdGVCYXNlNjQgPDwgcHJlZmVycmVkQ3JlZGVudGlhbElkQmFzZTY0OwogfQog
CiB0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPgpAQCAtMTIwLDExICsxMjYsMTEgQEAgT3B0aW9uYWw8
TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbjo6TG9jYWxDb25maWd1cmF0aW9uPiBN
b2NrV2ViQXV0aGVudGkKIHsKICAgICBNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9u
OjpMb2NhbENvbmZpZ3VyYXRpb24gcmVzdWx0OwogCi0gICAgT3B0aW9uYWw8Ym9vbD4gYWNjZXB0
QXV0aGVudGljYXRpb247Ci0gICAgZGVjb2RlciA+PiBhY2NlcHRBdXRoZW50aWNhdGlvbjsKLSAg
ICBpZiAoIWFjY2VwdEF1dGhlbnRpY2F0aW9uKQorICAgIE9wdGlvbmFsPFVzZXJWZXJpZmljYXRp
b24+IHVzZXJWZXJpZmljYXRpb247CisgICAgZGVjb2RlciA+PiB1c2VyVmVyaWZpY2F0aW9uOwor
ICAgIGlmICghdXNlclZlcmlmaWNhdGlvbikKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsK
LSAgICByZXN1bHQuYWNjZXB0QXV0aGVudGljYXRpb24gPSAqYWNjZXB0QXV0aGVudGljYXRpb247
CisgICAgcmVzdWx0LnVzZXJWZXJpZmljYXRpb24gPSAqdXNlclZlcmlmaWNhdGlvbjsKIAogICAg
IE9wdGlvbmFsPGJvb2w+IGFjY2VwdEF0dGVzdGF0aW9uOwogICAgIGRlY29kZXIgPj4gYWNjZXB0
QXR0ZXN0YXRpb247CkBAIC0yOTcsNiArMzAzLDE1IEBAIHRlbXBsYXRlPD4gc3RydWN0IEVudW1U
cmFpdHM8V2ViQ29yZTo6TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbjo6TmZjRXJy
CiAgICAgPjsKIH07CiAKK3RlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6TW9j
a1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbjo6VXNlclZlcmlmaWNhdGlvbj4geworICAg
IHVzaW5nIHZhbHVlcyA9IEVudW1WYWx1ZXM8CisgICAgICAgIFdlYkNvcmU6Ok1vY2tXZWJBdXRo
ZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246OlVzZXJWZXJpZmljYXRpb24sCisgICAgICAgIFdlYkNv
cmU6Ok1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246OlVzZXJWZXJpZmljYXRpb246
Ok5vLAorICAgICAgICBXZWJDb3JlOjpNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9u
OjpVc2VyVmVyaWZpY2F0aW9uOjpZZXMsCisgICAgICAgIFdlYkNvcmU6Ok1vY2tXZWJBdXRoZW50
aWNhdGlvbkNvbmZpZ3VyYXRpb246OlVzZXJWZXJpZmljYXRpb246OkNhbmNlbAorICAgID47Cit9
OworCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogI2VuZGlmIC8vIEVOQUJMRShXRUJfQVVUSE4pCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01vY2tXZWJBdXRoZW50aWNhdGlvbkNv
bmZpZ3VyYXRpb24uaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9Nb2NrV2ViQXV0aGVudGlj
YXRpb25Db25maWd1cmF0aW9uLmlkbAppbmRleCAyMDk5NDMxYzYwNDEwNjQ0ZmVlMjllNjZhMTM3
NzIxOGUxYzhkYmJhLi40NDczYjExM2UyNTAzZTI5NGU0NTdhMDAyMTdhMDIxYTMyZWFmNTBlIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01vY2tXZWJBdXRoZW50aWNhdGlvbkNv
bmZpZ3VyYXRpb24uaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTW9ja1dlYkF1dGhl
bnRpY2F0aW9uQ29uZmlndXJhdGlvbi5pZGwKQEAgLTU5LDYgKzU5LDE0IEBACiAgICAgIm1hbGlj
aW91cy1wYXlsb2FkIgogfTsKIAorWworICAgIENvbmRpdGlvbmFsPVdFQl9BVVRITiwKK10gZW51
bSBVc2VyVmVyaWZpY2F0aW9uIHsKKyAgICAibm8iLAorICAgICJ5ZXMiLAorICAgICJjYW5jZWwi
Cit9OworCiBbCiAgICAgQ29uZGl0aW9uYWw9V0VCX0FVVEhOLAogXSBkaWN0aW9uYXJ5IE1vY2tX
ZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24gewpAQCAtNzEsNyArNzksNyBAQAogWwogICAg
IENvbmRpdGlvbmFsPVdFQl9BVVRITiwKIF0gZGljdGlvbmFyeSBNb2NrTG9jYWxDb25maWd1cmF0
aW9uIHsKLSAgICBib29sZWFuIGFjY2VwdEF1dGhlbnRpY2F0aW9uID0gZmFsc2U7CisgICAgVXNl
clZlcmlmaWNhdGlvbiB1c2VyVmVyaWZpY2F0aW9uID0gIm5vIjsKICAgICBib29sZWFuIGFjY2Vw
dEF0dGVzdGF0aW9uID0gZmFsc2U7CiAgICAgRE9NU3RyaW5nIHByaXZhdGVLZXlCYXNlNjQ7CiAg
ICAgRE9NU3RyaW5nIHVzZXJDZXJ0aWZpY2F0ZUJhc2U2NDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3IuaCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3IuaAppbmRl
eCA3OGUzMmZiODBjZjc1MThhMzg0NzBmNDE1OWQzNzU5MTMwMjhhMWRhLi4wZTE4MzYxMWFmZDg1
YTkwMTA1NjNjZjc2ZmZkNzE1MDFiZjk1NzRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9yLmgKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRvci5oCkBAIC01Nyw2
ICs1Nyw3IEBAIHB1YmxpYzoKICAgICAgICAgdmlydHVhbCB2b2lkIHJlcXVlc3RQaW4odWludDY0
X3QgcmV0cmllcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChjb25zdCBXVEY6OlN0cmluZyYpPiYm
KSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBzZWxlY3RBc3NlcnRpb25SZXNwb25zZShjb25z
dCBIYXNoU2V0PFJlZjxXZWJDb3JlOjpBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2U+PiYs
IFdlYkF1dGhlbnRpY2F0aW9uU291cmNlLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKFdlYkNvcmU6
OkF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZSopPiYmKSA9IDA7CiAgICAgICAgIHZpcnR1
YWwgdm9pZCBkZWNpZGVQb2xpY3lGb3JMb2NhbEF1dGhlbnRpY2F0b3IoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChMb2NhbEF1dGhlbnRpY2F0b3JQb2xpY3kpPiYmKSA9IDA7CisgICAgICAgIHZpcnR1
YWwgdm9pZCBjYW5jZWxSZXF1ZXN0KCkgPSAwOwogICAgIH07CiAKICAgICB2aXJ0dWFsIH5BdXRo
ZW50aWNhdG9yKCkgPSBkZWZhdWx0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvV2ViQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRvck1hbmFnZXIuY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRvck1hbmFnZXIuY3Bw
CmluZGV4IGYyMzMzNjFjZmVhODQ2ZThlYWNhMjExOWMyNjYxNjZjODhkMmNiN2YuLjQwNzQwMmIy
MzdkNDQ4OTE3NmIzNjlmNDExNGFkYjQ3OGFkYjIzMGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3JNYW5hZ2VyLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNh
dG9yTWFuYWdlci5jcHAKQEAgLTE3OSw5ICsxNzksNyBAQCB2b2lkIEF1dGhlbnRpY2F0b3JNYW5h
Z2VyOjpjYW5jZWxSZXF1ZXN0KGNvbnN0IFBhZ2VJZGVudGlmaWVyJiBwYWdlSUQsIGNvbnN0IE9w
dAogICAgICAgICBpZiAoZnJhbWVJRCAmJiBmcmFtZUlEICE9IHBlbmRpbmdGcmFtZUlELT5mcmFt
ZUlEKQogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBpbnZva2VQZW5kaW5nQ29tcGxl
dGlvbkhhbmRsZXIoRXhjZXB0aW9uRGF0YSB7IE5vdEFsbG93ZWRFcnJvciwgIk9wZXJhdGlvbiB0
aW1lZCBvdXQuIl9zIH0pOwotICAgIGNsZWFyU3RhdGUoKTsKLSAgICBtX3JlcXVlc3RUaW1lT3V0
VGltZXIuc3RvcCgpOworICAgIGNhbmNlbFJlcXVlc3QoKTsKIH0KIAogLy8gVGhlIGZvbGxvd2lu
ZyBpbXBsZW1lbnRzIHBhcnQgb2YgU3RlcCAyMC4gb2YgaHR0cHM6Ly93d3cudzMub3JnL1RSL3dl
YmF1dGhuLyNjcmVhdGVDcmVkZW50aWFsCkBAIC0xOTIsOSArMTkwLDcgQEAgdm9pZCBBdXRoZW50
aWNhdG9yTWFuYWdlcjo6Y2FuY2VsUmVxdWVzdChjb25zdCBBUEk6OldlYkF1dGhlbnRpY2F0aW9u
UGFuZWwmIHBhbmUKICAgICBSRUxFQVNFX0FTU0VSVChSdW5Mb29wOjppc01haW4oKSk7CiAgICAg
aWYgKCFtX3BlbmRpbmdDb21wbGV0aW9uSGFuZGxlciB8fCBtX3BlbmRpbmdSZXF1ZXN0RGF0YS5w
YW5lbC5nZXQoKSAhPSAmcGFuZWwpCiAgICAgICAgIHJldHVybjsKLSAgICBpbnZva2VQZW5kaW5n
Q29tcGxldGlvbkhhbmRsZXIoRXhjZXB0aW9uRGF0YSB7IE5vdEFsbG93ZWRFcnJvciwgIlRoaXMg
cmVxdWVzdCBoYXMgYmVlbiBjYW5jZWxsZWQgYnkgdGhlIHVzZXIuIl9zIH0pOwotICAgIGNsZWFy
U3RhdGUoKTsKLSAgICBtX3JlcXVlc3RUaW1lT3V0VGltZXIuc3RvcCgpOworICAgIGNhbmNlbFJl
cXVlc3QoKTsKIH0KIAogdm9pZCBBdXRoZW50aWNhdG9yTWFuYWdlcjo6Y2xlYXJTdGF0ZUFzeW5j
KCkKQEAgLTI5NSw2ICsyOTEsMTMgQEAgdm9pZCBBdXRoZW50aWNhdG9yTWFuYWdlcjo6ZGVjaWRl
UG9saWN5Rm9yTG9jYWxBdXRoZW50aWNhdG9yKENvbXBsZXRpb25IYW5kbGVyPHYKICAgICB9KTsK
IH0KIAordm9pZCBBdXRoZW50aWNhdG9yTWFuYWdlcjo6Y2FuY2VsUmVxdWVzdCgpCit7CisgICAg
aW52b2tlUGVuZGluZ0NvbXBsZXRpb25IYW5kbGVyKEV4Y2VwdGlvbkRhdGEgeyBOb3RBbGxvd2Vk
RXJyb3IsICJUaGlzIHJlcXVlc3QgaGFzIGJlZW4gY2FuY2VsbGVkIGJ5IHRoZSB1c2VyLiJfcyB9
KTsKKyAgICBjbGVhclN0YXRlKCk7CisgICAgbV9yZXF1ZXN0VGltZU91dFRpbWVyLnN0b3AoKTsK
K30KKwogVW5pcXVlUmVmPEF1dGhlbnRpY2F0b3JUcmFuc3BvcnRTZXJ2aWNlPiBBdXRoZW50aWNh
dG9yTWFuYWdlcjo6Y3JlYXRlU2VydmljZShBdXRoZW50aWNhdG9yVHJhbnNwb3J0IHRyYW5zcG9y
dCwgQXV0aGVudGljYXRvclRyYW5zcG9ydFNlcnZpY2U6Ok9ic2VydmVyJiBvYnNlcnZlcikgY29u
c3QKIHsKICAgICByZXR1cm4gQXV0aGVudGljYXRvclRyYW5zcG9ydFNlcnZpY2U6OmNyZWF0ZSh0
cmFuc3BvcnQsIG9ic2VydmVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3JNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9BdXRoZW50aWNhdG9yTWFuYWdlci5oCmluZGV4
IDk4MjMzODZiOWExNjk4N2EyZTVmZDVjZGViZjJmNjI0MjE0NzIwMmQuLmRjNGE2NzlhMDBkODk4
M2RjMzNkYTZiMDRmYjkwNzI1NjBhMzcwZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0F1dGhlbnRpY2F0b3JNYW5hZ2VyLmgKKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQXV0aGVudGljYXRvck1hbmFn
ZXIuaApAQCAtODQsNiArODQsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcmVxdWVzdFBpbih1aW50
NjRfdCByZXRyaWVzLCBDb21wbGV0aW9uSGFuZGxlcjx2b2lkKGNvbnN0IFdURjo6U3RyaW5nJik+
JiYpIGZpbmFsOwogICAgIHZvaWQgc2VsZWN0QXNzZXJ0aW9uUmVzcG9uc2UoY29uc3QgSGFzaFNl
dDxSZWY8V2ViQ29yZTo6QXV0aGVudGljYXRvckFzc2VydGlvblJlc3BvbnNlPj4mLCBXZWJBdXRo
ZW50aWNhdGlvblNvdXJjZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChXZWJDb3JlOjpBdXRoZW50
aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2UqKT4mJikgZmluYWw7CiAgICAgdm9pZCBkZWNpZGVQb2xp
Y3lGb3JMb2NhbEF1dGhlbnRpY2F0b3IoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChMb2NhbEF1dGhl
bnRpY2F0b3JQb2xpY3kpPiYmKSBmaW5hbDsKKyAgICB2b2lkIGNhbmNlbFJlcXVlc3QoKSBmaW5h
bDsKIAogICAgIC8vIE92ZXJyaWRlbiBieSBNb2NrQXV0aGVudGljYXRvck1hbmFnZXIuCiAgICAg
dmlydHVhbCBVbmlxdWVSZWY8QXV0aGVudGljYXRvclRyYW5zcG9ydFNlcnZpY2U+IGNyZWF0ZVNl
cnZpY2UoV2ViQ29yZTo6QXV0aGVudGljYXRvclRyYW5zcG9ydCwgQXV0aGVudGljYXRvclRyYW5z
cG9ydFNlcnZpY2U6Ok9ic2VydmVyJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbEF1dGhlbnRpY2F0b3IuaCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQXV0
aGVudGljYXRvci5oCmluZGV4IDM1MThjOWFmYTc4ZTRmNjc0MDk2MWZjODkxNzhhZjFiODYwYmQ5
NjguLjY2M2ZiYTYyMDFiZmMzNjM1YjE4MTRjMzdlZGUwODRmMDVmMjViNjAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQXV0
aGVudGljYXRvci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0
aW9uL0NvY29hL0xvY2FsQXV0aGVudGljYXRvci5oCkBAIC02OCw2ICs2OCw3IEBAIHByaXZhdGU6
CiAKICAgICB2b2lkIHJlY2VpdmVFeGNlcHRpb24oV2ViQ29yZTo6RXhjZXB0aW9uRGF0YSYmLCBX
ZWJBdXRoZW50aWNhdGlvblN0YXR1cyA9IFdlYkF1dGhlbnRpY2F0aW9uU3RhdHVzOjpMQUVycm9y
KSBjb25zdDsKICAgICB2b2lkIGRlbGV0ZUR1cGxpY2F0ZUNyZWRlbnRpYWwoKSBjb25zdDsKKyAg
ICBib29sIHZhbGlkYXRlVXNlclZlcmlmaWNhdGlvbihMb2NhbENvbm5lY3Rpb246OlVzZXJWZXJp
ZmljYXRpb24pIGNvbnN0OwogCiAgICAgU3RhdGUgbV9zdGF0ZSB7IFN0YXRlOjpJbml0IH07CiAg
ICAgVW5pcXVlUmVmPExvY2FsQ29ubmVjdGlvbj4gbV9jb25uZWN0aW9uOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxBdXRo
ZW50aWNhdG9yLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24v
Q29jb2EvTG9jYWxBdXRoZW50aWNhdG9yLm1tCmluZGV4IDYwZDI3Yzg2NmIwOWFjMGI1OGEyY2Ji
OGRkZjA1Yzc2YThiZGU5ZGYuLjg0OTk0ZDkyOTM0MWYxMjI0N2MxYTRiZGY2MzEyNDk1NTZmOWEy
M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9u
L0NvY29hL0xvY2FsQXV0aGVudGljYXRvci5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbEF1dGhlbnRpY2F0b3IubW0KQEAgLTI3NCwx
MCArMjc0LDggQEAgdm9pZCBMb2NhbEF1dGhlbnRpY2F0b3I6OmNvbnRpbnVlTWFrZUNyZWRlbnRp
YWxBZnRlclVzZXJWZXJpZmljYXRpb24oU2VjQWNjZXNzQ28KICAgICBtX3N0YXRlID0gU3RhdGU6
OlVzZXJWZXJpZmllZDsKICAgICBhdXRvJiBjcmVhdGlvbk9wdGlvbnMgPSBXVEY6OmdldDxQdWJs
aWNLZXlDcmVkZW50aWFsQ3JlYXRpb25PcHRpb25zPihyZXF1ZXN0RGF0YSgpLm9wdGlvbnMpOwog
Ci0gICAgaWYgKHZlcmlmaWNhdGlvbiA9PSBMb2NhbENvbm5lY3Rpb246OlVzZXJWZXJpZmljYXRp
b246Ok5vKSB7Ci0gICAgICAgIHJlY2VpdmVFeGNlcHRpb24oeyBOb3RBbGxvd2VkRXJyb3IsICJD
b3VsZG4ndCB2ZXJpZnkgdXNlci4iX3MgfSk7CisgICAgaWYgKCF2YWxpZGF0ZVVzZXJWZXJpZmlj
YXRpb24odmVyaWZpY2F0aW9uKSkKICAgICAgICAgcmV0dXJuOwotICAgIH0KIAogICAgIC8vIEhl
cmUgaXMgdGhlIGtleWNoYWluIHNjaGVtYS4KICAgICAvLyBrU2VjQXR0ckxhYmVsOiBSUCBJRApA
QCAtNTAwLDEwICs0OTgsOCBAQCB2b2lkIExvY2FsQXV0aGVudGljYXRvcjo6Y29udGludWVHZXRB
c3NlcnRpb25BZnRlclVzZXJWZXJpZmljYXRpb24oUmVmPFdlYkNvcmU6OgogICAgIEFTU0VSVCht
X3N0YXRlID09IFN0YXRlOjpSZXNwb25zZVNlbGVjdGVkKTsKICAgICBtX3N0YXRlID0gU3RhdGU6
OlVzZXJWZXJpZmllZDsKIAotICAgIGlmICh2ZXJpZmljYXRpb24gPT0gTG9jYWxDb25uZWN0aW9u
OjpVc2VyVmVyaWZpY2F0aW9uOjpObykgewotICAgICAgICByZWNlaXZlRXhjZXB0aW9uKHsgTm90
QWxsb3dlZEVycm9yLCAiQ291bGRuJ3QgdmVyaWZ5IHVzZXIuIl9zIH0pOworICAgIGlmICghdmFs
aWRhdGVVc2VyVmVyaWZpY2F0aW9uKHZlcmlmaWNhdGlvbikpCiAgICAgICAgIHJldHVybjsKLSAg
ICB9CiAKICAgICAvLyBTdGVwIDEwLgogICAgIGF1dG8gYXV0aERhdGEgPSBidWlsZEF1dGhEYXRh
KFdURjo6Z2V0PFB1YmxpY0tleUNyZWRlbnRpYWxSZXF1ZXN0T3B0aW9ucz4ocmVxdWVzdERhdGEo
KS5vcHRpb25zKS5ycElkLCBnZXRBc3NlcnRpb25GbGFncywgY291bnRlciwgeyB9KTsKQEAgLTU4
OCw2ICs1ODQsMjIgQEAgdm9pZCBMb2NhbEF1dGhlbnRpY2F0b3I6OmRlbGV0ZUR1cGxpY2F0ZUNy
ZWRlbnRpYWwoKSBjb25zdAogICAgIH0pOwogfQogCitib29sIExvY2FsQXV0aGVudGljYXRvcjo6
dmFsaWRhdGVVc2VyVmVyaWZpY2F0aW9uKExvY2FsQ29ubmVjdGlvbjo6VXNlclZlcmlmaWNhdGlv
biB2ZXJpZmljYXRpb24pIGNvbnN0Cit7CisgICAgaWYgKHZlcmlmaWNhdGlvbiA9PSBMb2NhbENv
bm5lY3Rpb246OlVzZXJWZXJpZmljYXRpb246OkNhbmNlbCkgeworICAgICAgICBpZiAoYXV0byog
b2JzZXJ2ZXIgPSB0aGlzLT5vYnNlcnZlcigpKQorICAgICAgICAgICAgb2JzZXJ2ZXItPmNhbmNl
bFJlcXVlc3QoKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmICh2ZXJp
ZmljYXRpb24gPT0gTG9jYWxDb25uZWN0aW9uOjpVc2VyVmVyaWZpY2F0aW9uOjpObykgeworICAg
ICAgICByZWNlaXZlRXhjZXB0aW9uKHsgTm90QWxsb3dlZEVycm9yLCAiQ291bGRuJ3QgdmVyaWZ5
IHVzZXIuIl9zIH0pOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJu
IHRydWU7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gRU5BQkxFKFdF
Ql9BVVRITikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRp
Y2F0aW9uL0NvY29hL0xvY2FsQ29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViQXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxDb25uZWN0aW9uLmgKaW5kZXggYTRhMmY5NDU1
MGJmMmQxZTRlZDg4MWY2YTQ2YmFkZjVhZWRjMTQzMS4uZmViMDdhODAyNDVjNDFjMThiYjIzYmUz
YWE1OTMzZjBmNzgxOWI5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
QXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxDb25uZWN0aW9uLmgKQEAg
LTUxLDkgKzUxLDEwIEBAIGNsYXNzIExvY2FsQ29ubmVjdGlvbiB7CiAgICAgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoTG9jYWxDb25uZWN0aW9uKTsK
IHB1YmxpYzoKLSAgICBlbnVtIGNsYXNzIFVzZXJWZXJpZmljYXRpb24gOiBib29sIHsKKyAgICBl
bnVtIGNsYXNzIFVzZXJWZXJpZmljYXRpb24gOiB1aW50OF90IHsKICAgICAgICAgTm8sCi0gICAg
ICAgIFllcworICAgICAgICBZZXMsCisgICAgICAgIENhbmNlbAogICAgIH07CiAKICAgICB1c2lu
ZyBBdHRlc3RhdGlvbkNhbGxiYWNrID0gQ29tcGxldGlvbkhhbmRsZXI8dm9pZChOU0FycmF5ICos
IE5TRXJyb3IgKik+OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViQXV0
aGVudGljYXRpb24vQ29jb2EvTG9jYWxDb25uZWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2ViQXV0aGVudGljYXRpb24vQ29jb2EvTG9jYWxDb25uZWN0aW9uLm1tCmluZGV4IDgz
YmRhZjE3MzA4OWFlNWI5MTFmN2JlMDRiOGJjNTE0ZDk1OWRiNmIuLmVhZmMxOGMwNDRlOTQxODdl
YmEyMWUyMzNjYjAxZDBmNjJiYTQ3NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYkF1dGhlbnRpY2F0aW9uL0NvY29hL0xvY2FsQ29ubmVjdGlvbi5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9Db2NvYS9Mb2NhbENvbm5lY3Rp
b24ubW0KQEAgLTgzLDYgKzgzLDggQEAgdm9pZCBMb2NhbENvbm5lY3Rpb246OnZlcmlmeVVzZXIo
Y29uc3QgU3RyaW5nJiBycElkLCBDbGllbnREYXRhVHlwZSB0eXBlLCBTZWNBY2MKICAgICAgICAg
aWYgKGVycm9yKSB7CiAgICAgICAgICAgICBMT0dfRVJST1IoIkNvdWxkbid0IGF1dGhlbnRpY2F0
ZSB3aXRoIGJpb21ldHJpY3M6ICVAIiwgZXJyb3IpOwogICAgICAgICAgICAgdmVyaWZpY2F0aW9u
ID0gVXNlclZlcmlmaWNhdGlvbjo6Tm87CisgICAgICAgICAgICBpZiAoZXJyb3IuY29kZSA9PSBM
QUVycm9yVXNlckNhbmNlbCkKKyAgICAgICAgICAgICAgICB2ZXJpZmljYXRpb24gPSBVc2VyVmVy
aWZpY2F0aW9uOjpDYW5jZWw7CiAgICAgICAgIH0KICAgICAgICAgUnVuTG9vcDo6bWFpbigpLmRp
c3BhdGNoKFtjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIpLCB2
ZXJpZmljYXRpb24sIGNvbnRleHQgPSBXVEZNb3ZlKGNvbnRleHQpXSAoKSBtdXRhYmxlIHsKICAg
ICAgICAgICAgIGNvbXBsZXRpb25IYW5kbGVyKHZlcmlmaWNhdGlvbiwgY29udGV4dC5nZXQoKSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJBdXRoZW50aWNhdGlvbi9N
b2NrL01vY2tMb2NhbENvbm5lY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJB
dXRoZW50aWNhdGlvbi9Nb2NrL01vY2tMb2NhbENvbm5lY3Rpb24ubW0KaW5kZXggNzQ4ODdmMTcy
MzRjYWM3NzNhYTEyNTFiNzgwNTA0YWFmY2Y1YWI0Ni4uZmU0OTNmOTUxZTVhMzhhNzA1NWQ4N2Q0
ODczMTA5YzFkODk4OThjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
QXV0aGVudGljYXRpb24vTW9jay9Nb2NrTG9jYWxDb25uZWN0aW9uLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYkF1dGhlbnRpY2F0aW9uL01vY2svTW9ja0xvY2FsQ29ubmVjdGlv
bi5tbQpAQCAtMzgsMjIgKzM4LDMxIEBACiAjaW1wb3J0ICJMb2NhbEF1dGhlbnRpY2F0aW9uU29m
dExpbmsuaCIKIAogbmFtZXNwYWNlIFdlYktpdCB7Cit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsK
IAotTW9ja0xvY2FsQ29ubmVjdGlvbjo6TW9ja0xvY2FsQ29ubmVjdGlvbihjb25zdCBXZWJDb3Jl
OjpNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQorTW9j
a0xvY2FsQ29ubmVjdGlvbjo6TW9ja0xvY2FsQ29ubmVjdGlvbihjb25zdCBNb2NrV2ViQXV0aGVu
dGljYXRpb25Db25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uKQogICAgIDogbV9jb25maWd1cmF0
aW9uKGNvbmZpZ3VyYXRpb24pCiB7CiB9CiAKLXZvaWQgTW9ja0xvY2FsQ29ubmVjdGlvbjo6dmVy
aWZ5VXNlcihjb25zdCBTdHJpbmcmLCBXZWJDb3JlOjpDbGllbnREYXRhVHlwZSwgU2VjQWNjZXNz
Q29udHJvbFJlZiwgVXNlclZlcmlmaWNhdGlvbkNhbGxiYWNrJiYgY2FsbGJhY2spIGNvbnN0Cit2
b2lkIE1vY2tMb2NhbENvbm5lY3Rpb246OnZlcmlmeVVzZXIoY29uc3QgU3RyaW5nJiwgQ2xpZW50
RGF0YVR5cGUsIFNlY0FjY2Vzc0NvbnRyb2xSZWYsIFVzZXJWZXJpZmljYXRpb25DYWxsYmFjayYm
IGNhbGxiYWNrKSBjb25zdAogewogICAgIC8vIE1vY2sgYXN5bmMgb3BlcmF0aW9ucy4KICAgICBS
dW5Mb29wOjptYWluKCkuZGlzcGF0Y2goW2NvbmZpZ3VyYXRpb24gPSBtX2NvbmZpZ3VyYXRpb24s
IGNhbGxiYWNrID0gV1RGTW92ZShjYWxsYmFjayldKCkgbXV0YWJsZSB7CiAgICAgICAgIEFTU0VS
VChjb25maWd1cmF0aW9uLmxvY2FsKTsKLSAgICAgICAgaWYgKCFjb25maWd1cmF0aW9uLmxvY2Fs
LT5hY2NlcHRBdXRoZW50aWNhdGlvbikgewotICAgICAgICAgICAgY2FsbGJhY2soVXNlclZlcmlm
aWNhdGlvbjo6Tm8sIG5pbCk7Ci0gICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgVXNlclZl
cmlmaWNhdGlvbiB1c2VyVmVyaWZpY2F0aW9uID0gVXNlclZlcmlmaWNhdGlvbjo6Tm87CisgICAg
ICAgIHN3aXRjaCAoY29uZmlndXJhdGlvbi5sb2NhbC0+dXNlclZlcmlmaWNhdGlvbikgeworICAg
ICAgICBjYXNlIE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246OlVzZXJWZXJpZmlj
YXRpb246Ok5vOgorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgTW9ja1dlYkF1dGhl
bnRpY2F0aW9uQ29uZmlndXJhdGlvbjo6VXNlclZlcmlmaWNhdGlvbjo6WWVzOgorICAgICAgICAg
ICAgdXNlclZlcmlmaWNhdGlvbiA9IFVzZXJWZXJpZmljYXRpb246OlllczsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb246
OlVzZXJWZXJpZmljYXRpb246OkNhbmNlbDoKKyAgICAgICAgICAgIHVzZXJWZXJpZmljYXRpb24g
PSBVc2VyVmVyaWZpY2F0aW9uOjpDYW5jZWw7CiAgICAgICAgIH0KLSAgICAgICAgY2FsbGJhY2so
VXNlclZlcmlmaWNhdGlvbjo6WWVzLCBhZG9wdE5TKFthbGxvY0xBQ29udGV4dEluc3RhbmNlKCkg
aW5pdF0pLmdldCgpKTsKKworICAgICAgICBjYWxsYmFjayh1c2VyVmVyaWZpY2F0aW9uLCBhZG9w
dE5TKFthbGxvY0xBQ29udGV4dEluc3RhbmNlKCkgaW5pdF0pLmdldCgpKTsKICAgICB9KTsKIH0K
IApAQCAtMTEzLDcgKzEyMiw3IEBAIHZvaWQgTW9ja0xvY2FsQ29ubmVjdGlvbjo6Z2V0QXR0ZXN0
YXRpb24oU2VjS2V5UmVmLCBOU0RhdGEgKiwgTlNEYXRhICosIEF0dGVzdGF0CiAgICAgfSk7CiB9
CiAKLXZvaWQgTW9ja0xvY2FsQ29ubmVjdGlvbjo6ZmlsdGVyUmVzcG9uc2VzKEhhc2hTZXQ8UmVm
PFdlYkNvcmU6OkF1dGhlbnRpY2F0b3JBc3NlcnRpb25SZXNwb25zZT4+JiByZXNwb25zZXMpIGNv
bnN0Cit2b2lkIE1vY2tMb2NhbENvbm5lY3Rpb246OmZpbHRlclJlc3BvbnNlcyhIYXNoU2V0PFJl
ZjxBdXRoZW50aWNhdG9yQXNzZXJ0aW9uUmVzcG9uc2U+PiYgcmVzcG9uc2VzKSBjb25zdAogewog
ICAgIGNvbnN0IGF1dG8mIHByZWZlcnJlZENyZWRlbnRpYWxJZEJhc2U2NCA9IG1fY29uZmlndXJh
dGlvbi5sb2NhbC0+cHJlZmVycmVkQ3JlZGVudGlhbElkQmFzZTY0OwogICAgIGlmIChwcmVmZXJy
ZWRDcmVkZW50aWFsSWRCYXNlNjQuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMWM1YTI4YzQzYTY3ZjNmNjhmM2E0ZGZm
YmI5NWUwZmE3MTk3N2M1NS4uMzQ2NTk3NzA2YjAyZWY3ZmNjZDQ1NjQ0NWMxYThlN2UzZDVjOTI5
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CkBAIC0zOTA1LDYgKzM5MDUsNyBAQAogCQk1N0I4RTNENTIzNTU4NjRBMDBENUM1RDEgLyogRmlk
b0F1dGhlbnRpY2F0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlkb0F1dGhlbnRpY2F0b3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTdCOEUzRDYyMzU1ODY0QTAwRDVDNUQxIC8qIEZp
ZG9BdXRoZW50aWNhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZpZG9BdXRoZW50aWNhdG9y
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTdCQkVBNkMyMkJDMEJGRTAwMjcz
OTk1IC8qIFNPQXV0aG9yaXphdGlvbkxvYWRQb2xpY3kuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU09BdXRo
b3JpemF0aW9uTG9hZFBvbGljeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk1N0Mz
RThBQzI0MjQ5MEQ1MDAxRTIyMDkgLyogV2ViQXV0aGVudGljYXRpb25SZXF1ZXN0RGF0YS5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBXZWJBdXRoZW50aWNhdGlvblJlcXVlc3REYXRhLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNTdDNjI0NEEyMzQ2NzlBNDAwMzgzRkU3IC8qIFdl
YkF1dGhlbnRpY2F0aW9uRmxhZ3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViQXV0aGVudGljYXRpb25G
bGFncy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1N0RDRUQ2QTIxNDJFQUUyMDAx
NkI4NDcgLyogV2ViQXV0aGVudGljYXRvckNvb3JkaW5hdG9yTWVzc2FnZXMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV2ViQXV0aGVudGljYXRvckNvb3JkaW5hdG9yTWVzc2Fn
ZXMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYktpdDIvV2ViQXV0aGVudGljYXRvckNvb3Jk
aW5hdG9yTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJ
NTdEQ0VENkIyMTQyRUFFMjAwMTZCODQ3IC8qIFdlYkF1dGhlbnRpY2F0b3JDb29yZGluYXRvck1l
c3NhZ2VSZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBX
ZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3JNZXNzYWdlUmVjZWl2ZXIuY3BwOyBwYXRoID0gRGVy
aXZlZFNvdXJjZXMvV2ViS2l0Mi9XZWJBdXRoZW50aWNhdG9yQ29vcmRpbmF0b3JNZXNzYWdlUmVj
ZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwpAQCAtODA3MSw2
ICs4MDcyLDcgQEAKIAkJCQk1N0RDRUQ5OTIxNDg5RjREMDAxNkI4NDcgLyogQXV0aGVudGljYXRv
clRyYW5zcG9ydFNlcnZpY2UuY3BwICovLAogCQkJCTU3RENFRDhBMjE0ODUzMTMwMDE2Qjg0NyAv
KiBBdXRoZW50aWNhdG9yVHJhbnNwb3J0U2VydmljZS5oICovLAogCQkJCTU3QzYyNDRBMjM0Njc5
QTQwMDM4M0ZFNyAvKiBXZWJBdXRoZW50aWNhdGlvbkZsYWdzLmggKi8sCisJCQkJNTdDM0U4QUMy
NDI0OTBENTAwMUUyMjA5IC8qIFdlYkF1dGhlbnRpY2F0aW9uUmVxdWVzdERhdGEuY3BwICovLAog
CQkJCTU3RENFREE2MjE0OUY5REEwMDE2Qjg0NyAvKiBXZWJBdXRoZW50aWNhdGlvblJlcXVlc3RE
YXRhLmggKi8sCiAJCQkJNTc2MDgyOTYyMDJCRDhCQTAwMTE2Njc4IC8qIFdlYkF1dGhlbnRpY2F0
b3JDb29yZGluYXRvclByb3h5LmNwcCAqLywKIAkJCQk1NzYwODI5NTIwMkJEOEJBMDAxMTY2Nzgg
LyogV2ViQXV0aGVudGljYXRvckNvb3JkaW5hdG9yUHJveHkuaCAqLywKZGlmZiAtLWdpdCBhL1Rv
b2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAwYmYzZDczYzlmMjFlMDM0NjZj
NjA1ZTdhMWIxNDhjZGU1MDFjZmQ2Li5mYTMzMDliMjI0NGJkYzI4MWU4NmNjN2ExMDlkMDdjYzBk
ZDU3YzI1IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTggQEAKKzIwMjAtMDQtMDIgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFw
cGxlLmNvbT4KKworICAgICAgICBbV2ViQXV0aG5dIENhbmNlbCBXZWJBdXRobiByZXF1ZXN0cyB3
aGVuIHVzZXJzIGNhbmNlbCBMb2NhbEF1dGhlbnRpY2F0aW9uIHByb21wdHMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwOTkyMworICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNjEyMjM3MTM+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQnJlbnQgRnVsZ2hh
bS4KKworICAgICAgICBNb2RpZmllcyBleGlzdGluZyB0ZXN0cyB0byBhY2NvbW1vZGF0ZSBjaGFu
Z2VzIGluIE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaWRsLgorCisgICAgICAg
ICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS93ZWItYXV0aGVudGljYXRpb24tZ2V0
LWFzc2VydGlvbi1sYS5odG1sOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0
Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1kdXBsaWNhdGUtY3Jl
ZGVudGlhbC5odG1sOgorICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Ev
d2ViLWF1dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1lcnJvci5odG1sOgorICAgICAg
ICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1h
a2UtY3JlZGVudGlhbC1sYS5odG1sOgorCiAyMDIwLTAzLTMxICBBbGV4IENocmlzdGVuc2VuICA8
YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIFNQSSBXS1dlYnBhZ2VQcmVm
ZXJlbmNlcy5fdXNlckNvbnRlbnRDb250cm9sbGVyCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2Vi
S2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL3dlYi1hdXRoZW50aWNhdGlvbi1nZXQtYXNzZXJ0aW9u
LWxhLmh0bWwgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL3dlYi1hdXRo
ZW50aWNhdGlvbi1nZXQtYXNzZXJ0aW9uLWxhLmh0bWwKaW5kZXggZWZhM2M1YmE0NGIwMmZiMTA1
MjlkMDE0ZGY1ZGU2NDI4ZDQ5ODBiZi4uZjUwYmYwYTU5MjFiYWM1YzRhOWU3ODM2Y2FkYjdlMDY2
OGNkMDU2YSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2Nv
YS93ZWItYXV0aGVudGljYXRpb24tZ2V0LWFzc2VydGlvbi1sYS5odG1sCisrKyBiL1Rvb2xzL1Rl
c3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLWdldC1hc3Nl
cnRpb24tbGEuaHRtbApAQCAtMSw3ICsxLDcgQEAKIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iaW5w
dXQiPgogPHNjcmlwdD4KICAgICBpZiAod2luZG93LmludGVybmFscykgewotICAgICAgICBpbnRl
cm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IGFj
Y2VwdEF1dGhlbnRpY2F0aW9uOiB0cnVlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UgfSB9KTsK
KyAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24o
eyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwgYWNjZXB0QXR0ZXN0YXRpb246IGZh
bHNlIH0gfSk7CiAgICAgICAgIGludGVybmFscy53aXRoVXNlckdlc3R1cmUoKCkgPT4geyBpbnB1
dC5mb2N1cygpOyB9KTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1k
dXBsaWNhdGUtY3JlZGVudGlhbC5odG1sIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS93ZWItYXV0aGVudGljYXRpb24tbWFrZS1jcmVkZW50aWFsLWxhLWR1cGxpY2F0ZS1j
cmVkZW50aWFsLmh0bWwKaW5kZXggYWFhNTk2NTA2YTUzNGIyNWYwYmM2NTg4OTYxYmUzZGRlYjQ0
YjQxYy4uZjE2MmQ2ZmEwNDgzNWQ1ZTdjZmI0MjhjYWY5ZDZkNWE3NjgzODVlNCAxMDA2NDQKLS0t
IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS93ZWItYXV0aGVudGljYXRp
b24tbWFrZS1jcmVkZW50aWFsLWxhLWR1cGxpY2F0ZS1jcmVkZW50aWFsLmh0bWwKKysrIGIvVG9v
bHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS93ZWItYXV0aGVudGljYXRpb24tbWFr
ZS1jcmVkZW50aWFsLWxhLWR1cGxpY2F0ZS1jcmVkZW50aWFsLmh0bWwKQEAgLTE4LDcgKzE4LDcg
QEAKICAgICB9CiAKICAgICBpZiAod2luZG93LmludGVybmFscykgewotICAgICAgICBpbnRlcm5h
bHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IGFjY2Vw
dEF1dGhlbnRpY2F0aW9uOiBmYWxzZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7Cisg
ICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsg
bG9jYWw6IHsgdXNlclZlcmlmaWNhdGlvbjogIm5vIiwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNl
IH0gfSk7CiAgICAgICAgIGludGVybmFscy53aXRoVXNlckdlc3R1cmUoKCkgPT4geyBpbnB1dC5m
b2N1cygpOyB9KTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS1lcnJv
ci5odG1sIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS93ZWItYXV0aGVu
dGljYXRpb24tbWFrZS1jcmVkZW50aWFsLWxhLWVycm9yLmh0bWwKaW5kZXggNWYxNjEyMWJhNGNh
MmRiNTMzZGZlNWQyYmYwMzMwNGNkYTUyNDYyZi4uZTcwZDA4NWM3MTAyNmJhZGJkNDY0ZDNjMmM5
MmVhNDkxMDBiOTdkNiAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS93ZWItYXV0aGVudGljYXRpb24tbWFrZS1jcmVkZW50aWFsLWxhLWVycm9yLmh0bWwK
KysrIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS93ZWItYXV0aGVudGlj
YXRpb24tbWFrZS1jcmVkZW50aWFsLWxhLWVycm9yLmh0bWwKQEAgLTEsNyArMSw3IEBACiA8aW5w
dXQgdHlwZT0idGV4dCIgaWQ9ImlucHV0Ij4KIDxzY3JpcHQ+CiAgICAgaWYgKHdpbmRvdy5pbnRl
cm5hbHMpIHsKLSAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZp
Z3VyYXRpb24oeyBsb2NhbDogeyBhY2NlcHRBdXRoZW50aWNhdGlvbjogZmFsc2UsIGFjY2VwdEF0
dGVzdGF0aW9uOiBmYWxzZSB9IH0pOworICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhl
bnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IHVzZXJWZXJpZmljYXRpb246ICJubyIs
IGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0pOwogICAgICAgICBpbnRlcm5hbHMud2l0aFVz
ZXJHZXN0dXJlKCgpID0+IHsgaW5wdXQuZm9jdXMoKTsgfSk7CiAgICAgfQogCmRpZmYgLS1naXQg
YS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL3dlYi1hdXRoZW50aWNhdGlv
bi1tYWtlLWNyZWRlbnRpYWwtbGEuaHRtbCBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS5odG1sCmluZGV4
IDkyN2UyNWNhMmRhMmJlZDRkODlhODBiMDI3YjZhMDk1NjBhYjJjNTYuLmVmYWNjZWQyOGU5NGMx
NjQyY2RjNzk3Yzc2NTAzMWEzNDZmZDhjOTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRB
UEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1s
YS5odG1sCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2Evd2ViLWF1
dGhlbnRpY2F0aW9uLW1ha2UtY3JlZGVudGlhbC1sYS5odG1sCkBAIC0zMiw3ICszMiw3IEBACiAg
ICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJB
dXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oewogICAgICAgICAgICAgbG9jYWw6IHsKLSAgICAg
ICAgICAgICAgICBhY2NlcHRBdXRoZW50aWNhdGlvbjogdHJ1ZSwKKyAgICAgICAgICAgICAgICB1
c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwKICAgICAgICAgICAgICAgICBhY2NlcHRBdHRlc3RhdGlv
bjogdHJ1ZSwKICAgICAgICAgICAgICAgICBwcml2YXRlS2V5QmFzZTY0OiB0ZXN0RVMyNTZQcml2
YXRlS2V5QmFzZTY0LAogICAgICAgICAgICAgICAgIHVzZXJDZXJ0aWZpY2F0ZUJhc2U2NDogdGVz
dEF0dGVzdGF0aW9uQ2VydGlmaWNhdGVCYXNlNjQsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZmRiYTkwYjAzODIyZmI3OGZj
NjI5MmViZTRmMGM2MGZiYmZjODc0ZS4uYzdhNmU2MjYzNTljZGY1N2Y0OWFmZDhhZThjNzY4Yzgz
OTMyMTAxZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA0LTAyICBKaWV3ZW4gVGFuICA8
amlld2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkF1dGhuXSBDYW5jZWwgV2ViQXV0
aG4gcmVxdWVzdHMgd2hlbiB1c2VycyBjYW5jZWwgTG9jYWxBdXRoZW50aWNhdGlvbiBwcm9tcHRz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDk5MjMK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYxMjIzNzEzPgorCisgICAgICAgIFJldmlld2VkIGJ5
IEJyZW50IEZ1bGdoYW0uCisKKyAgICAgICAgQWRkcyBhIG5ldyB0ZXN0IGZvciB0aGUgY2hhbmdl
IGFuZCBtb2RpZmllcyBleGlzdGluZyB0ZXN0cyB0byBhY2NvbW1vZGF0ZSBjaGFuZ2VzIGluIE1v
Y2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24uaWRsLgorCisgICAgICAgICogaHR0cC93
cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNyZWF0ZS1mYWlsdXJlLWxvY2FsLXNp
bGVudC5odHRwcy5odG1sOgorICAgICAgICAqIGh0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXkt
Y3JlZGVudGlhbC1jcmVhdGUtZmFpbHVyZS1sb2NhbC5odHRwcy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNyZWF0ZS1mYWls
dXJlLWxvY2FsLmh0dHBzLmh0bWw6CisgICAgICAgICogaHR0cC93cHQvd2ViYXV0aG4vcHVibGlj
LWtleS1jcmVkZW50aWFsLWNyZWF0ZS1zdWNjZXNzLWxvY2FsLmh0dHBzLmh0bWw6CisgICAgICAg
ICogaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWdldC1mYWlsdXJlLWxv
Y2FsLXNpbGVudC5odHRwcy5odG1sOgorICAgICAgICAqIGh0dHAvd3B0L3dlYmF1dGhuL3B1Ymxp
Yy1rZXktY3JlZGVudGlhbC1nZXQtZmFpbHVyZS1sb2NhbC5odHRwcy5odG1sOgorICAgICAgICAq
IGh0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1nZXQtc3VjY2Vzcy1sb2Nh
bC5odHRwcy5odG1sOgorCiAyMDIwLTAzLTMxICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUu
Y29tPgogCiAgICAgICAgIFJFR1JFU1NJT046IFsgTWFjIHdrMiBSZWxlYXNlIF0gRmxha3kgY3Jh
c2ggaW4gV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OmNyZWF0ZVZpZGVvRnVsbHNjcmVlbkxheWVyCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRl
bnRpYWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwtc2lsZW50Lmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0
cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtY3JlYXRlLWZhaWx1cmUt
bG9jYWwtc2lsZW50Lmh0dHBzLmh0bWwKaW5kZXggY2IyZDAyNjgzMGZlMmE4ODU1ODBlZTUxMDli
OGRjYWE2M2NiMDcxNy4uYjUyOWY4MDYyYjFiOTViZTA1NTI0YWRjMjNhYmY3MDRiNTUwNTM0NSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVk
ZW50aWFsLWNyZWF0ZS1mYWlsdXJlLWxvY2FsLXNpbGVudC5odHRwcy5odG1sCisrKyBiL0xheW91
dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1jcmVhdGUtZmFp
bHVyZS1sb2NhbC1zaWxlbnQuaHR0cHMuaHRtbApAQCAtNiw3ICs2LDcgQEAKIDxzY3JpcHQ+CiAg
ICAgLy8gRGVmYXVsdCBtb2NrIGNvbmZpZ3VyYXRpb24uIFRlc3RzIG5lZWQgdG8gb3ZlcnJpZGUg
aWYgdGhleSBuZWVkIGRpZmZlcmVudCBjb25maWd1cmF0aW9uLgogICAgIGlmICh3aW5kb3cuaW50
ZXJuYWxzKQotICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmln
dXJhdGlvbih7IHNpbGVudEZhaWx1cmU6IHRydWUsIGxvY2FsOiB7IGFjY2VwdEF1dGhlbnRpY2F0
aW9uOiBmYWxzZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7CisgICAgICAgIGludGVy
bmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgc2lsZW50RmFpbHVy
ZTogdHJ1ZSwgbG9jYWw6IHsgdXNlclZlcmlmaWNhdGlvbjogIm5vIiwgYWNjZXB0QXR0ZXN0YXRp
b246IGZhbHNlIH0gfSk7CiAKICAgICBwcm9taXNlX3Rlc3QodCA9PiB7CiAgICAgICAgIGNvbnN0
IG9wdGlvbnMgPSB7CkBAIC0xMjYsNyArMTI2LDcgQEAKICAgICAgICAgICAgIH0KICAgICAgICAg
fTsKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAgICBpbnRlcm5hbHMu
c2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IHNpbGVudEZhaWx1cmU6IHRy
dWUsIGxvY2FsOiB7IGFjY2VwdEF1dGhlbnRpY2F0aW9uOiB0cnVlLCBhY2NlcHRBdHRlc3RhdGlv
bjogZmFsc2UgfSB9KTsKKyAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGlj
YXRpb25Db25maWd1cmF0aW9uKHsgc2lsZW50RmFpbHVyZTogdHJ1ZSwgbG9jYWw6IHsgdXNlclZl
cmlmaWNhdGlvbjogInllcyIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0pOwogICAgICAg
ICByZXR1cm4gcHJvbWlzZVJlamVjdHModCwgIk5vdEFsbG93ZWRFcnJvciIsIG5hdmlnYXRvci5j
cmVkZW50aWFscy5jcmVhdGUob3B0aW9ucyksICJPcGVyYXRpb24gdGltZWQgb3V0LiIpOwogICAg
IH0sICJQdWJsaWNLZXlDcmVkZW50aWFsJ3MgW1tjcmVhdGVdXSB3aXRob3V0IHByaXZhdGUga2V5
cyBpbiBhIG1vY2sgbG9jYWwgYXV0aGVudGljYXRvci4iKTsKIApAQCAtMTUyLDcgKzE1Miw3IEBA
CiAgICAgICAgICAgICB9CiAgICAgICAgIH07CiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxz
KQotICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3Vy
YXRpb24oeyBzaWxlbnRGYWlsdXJlOiB0cnVlLCBsb2NhbDogeyBhY2NlcHRBdXRoZW50aWNhdGlv
bjogdHJ1ZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLCBwcml2YXRlS2V5QmFzZTY0OiBwcml2
YXRlS2V5QmFzZTY0IH0gfSk7CisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhl
bnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IHNpbGVudEZhaWx1cmU6IHRydWUsIGxvY2FsOiB7IHVz
ZXJWZXJpZmljYXRpb246ICJ5ZXMiLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHByaXZhdGVL
ZXlCYXNlNjQ6IHByaXZhdGVLZXlCYXNlNjQgfSB9KTsKICAgICAgICAgcmV0dXJuIHByb21pc2VS
ZWplY3RzKHQsICJOb3RBbGxvd2VkRXJyb3IiLCBuYXZpZ2F0b3IuY3JlZGVudGlhbHMuY3JlYXRl
KG9wdGlvbnMpLCAiT3BlcmF0aW9uIHRpbWVkIG91dC4iKS50aGVuKCgpID0+IHsKICAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLmNs
ZWFuVXBLZXljaGFpbih0ZXN0UnBJZCwgY3JlZGVudGlhbElEQmFzZTY0KTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1jcmVh
dGUtZmFpbHVyZS1sb2NhbC5odHRwcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3dw
dC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwuaHR0
cHMtZXhwZWN0ZWQudHh0CmluZGV4IDZhMTAyNWFiMDQzZGQ1NDk1N2I4ODI0M2U0OGU4Nzg1YzY5
OGZmNTkuLjljYWQ4YzA0NmI3MjY2MjkxNzI4YzU0OTk2MGFkZjliMzliNGE5ZWQgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1j
cmVhdGUtZmFpbHVyZS1sb2NhbC5odHRwcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWNyZWF0ZS1mYWlsdXJlLWxv
Y2FsLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtNyw0ICs3LDUgQEAgUEFTUyBQdWJsaWNLZXlDcmVk
ZW50aWFsJ3MgW1tjcmVhdGVdXSB3aXRob3V0IHByaXZhdGUga2V5cyBpbiBhIG1vY2sgbG9jYWwg
YXV0aGUKIFBBU1MgUHVibGljS2V5Q3JlZGVudGlhbCdzIFtbY3JlYXRlXV0gd2l0aG91dCBhdHRl
c3RhdGlvbiBpbiBhIG1vY2sgbG9jYWwgYXV0aGVudGljYXRvci4gCiBQQVNTIFB1YmxpY0tleUNy
ZWRlbnRpYWwncyBbW2NyZWF0ZV1dIG5vdCBkZWxldGluZyBvbGQgY3JlZGVudGlhbCBpbiBhIG1v
Y2sgbG9jYWwgYXV0aGVudGljYXRvci4gCiBQQVNTIFB1YmxpY0tleUNyZWRlbnRpYWwncyBbW2Ny
ZWF0ZV1dIHdpdGggdGltZW91dCBpbiBhIG1vY2sgbG9jYWwgYXV0aGVudGljYXRvci4gCitQQVNT
IFB1YmxpY0tleUNyZWRlbnRpYWwncyBbW2NyZWF0ZV1dIHdpdGggdXNlciBjYW5jZWwgaW4gYSBt
b2NrIGxvY2FsIGF1dGhlbnRpY2F0b3IuIAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRw
L3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtY3JlYXRlLWZhaWx1cmUtbG9jYWwu
aHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3Jl
ZGVudGlhbC1jcmVhdGUtZmFpbHVyZS1sb2NhbC5odHRwcy5odG1sCmluZGV4IDU3MGFjMDhmNGIw
ZGVlMGRkMTg5NTE3MWJiZTk3OWVkMDk4OWI1NWQuLmFhMmY3ODk5NTg3Y2VlNjkyOWE1MTQ3NGNj
NzEyMjRiZDhkNzJhYjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhu
L3B1YmxpYy1rZXktY3JlZGVudGlhbC1jcmVhdGUtZmFpbHVyZS1sb2NhbC5odHRwcy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1j
cmVhdGUtZmFpbHVyZS1sb2NhbC5odHRwcy5odG1sCkBAIC02LDcgKzYsNyBAQAogPHNjcmlwdD4K
ICAgICAvLyBEZWZhdWx0IG1vY2sgY29uZmlndXJhdGlvbi4gVGVzdHMgbmVlZCB0byBvdmVycmlk
ZSBpZiB0aGV5IG5lZWQgZGlmZmVyZW50IGNvbmZpZ3VyYXRpb24uCiAgICAgaWYgKHdpbmRvdy5p
bnRlcm5hbHMpCi0gICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25m
aWd1cmF0aW9uKHsgbG9jYWw6IHsgYWNjZXB0QXV0aGVudGljYXRpb246IGZhbHNlLCBhY2NlcHRB
dHRlc3RhdGlvbjogZmFsc2UgfSB9KTsKKyAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRo
ZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAibm8i
LCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UgfSB9KTsKIAogICAgIHByb21pc2VfdGVzdCh0ID0+
IHsKICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHsKQEAgLTEyMSw3ICsxMjEsNyBAQAogICAgICAg
ICAgICAgfQogICAgICAgICB9OwogICAgICAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAg
ICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsg
bG9jYWw6IHsgYWNjZXB0QXV0aGVudGljYXRpb246IHRydWUsIGFjY2VwdEF0dGVzdGF0aW9uOiBm
YWxzZSB9IH0pOworICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlv
bkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwgYWNjZXB0
QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7CiAgICAgICAgIHJldHVybiBwcm9taXNlUmVqZWN0cyh0
LCAiVW5rbm93bkVycm9yIiwgbmF2aWdhdG9yLmNyZWRlbnRpYWxzLmNyZWF0ZShvcHRpb25zKSwg
IkNvdWxkbid0IGNyZWF0ZSBwcml2YXRlIGtleS4iKTsKICAgICB9LCAiUHVibGljS2V5Q3JlZGVu
dGlhbCdzIFtbY3JlYXRlXV0gd2l0aG91dCBwcml2YXRlIGtleXMgaW4gYSBtb2NrIGxvY2FsIGF1
dGhlbnRpY2F0b3IuIik7CiAKQEAgLTE0Niw3ICsxNDYsNyBAQAogICAgICAgICAgICAgfQogICAg
ICAgICB9OwogICAgICAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgICAgIGludGVy
bmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsgYWNj
ZXB0QXV0aGVudGljYXRpb246IHRydWUsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwgcHJpdmF0
ZUtleUJhc2U2NDogcHJpdmF0ZUtleUJhc2U2NCB9IH0pOworICAgICAgICAgICAgaW50ZXJuYWxz
LnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyB1c2VyVmVy
aWZpY2F0aW9uOiAieWVzIiwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLCBwcml2YXRlS2V5QmFz
ZTY0OiBwcml2YXRlS2V5QmFzZTY0IH0gfSk7CiAgICAgICAgIHJldHVybiBwcm9taXNlUmVqZWN0
cyh0LCAiVW5rbm93bkVycm9yIiwgbmF2aWdhdG9yLmNyZWRlbnRpYWxzLmNyZWF0ZShvcHRpb25z
KSwgIkNvdWxkbid0IGF0dGVzdDogVGhlIG9wZXJhdGlvbiBjb3VsZG4ndCBjb21wbGV0ZS4iKS50
aGVuKCgpID0+IHsKICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKICAgICAgICAg
ICAgICAgICB0ZXN0UnVubmVyLmNsZWFuVXBLZXljaGFpbih0ZXN0UnBJZCwgY3JlZGVudGlhbElE
QmFzZTY0KTsKQEAgLTE3Myw3ICsxNzMsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICB9Owog
ICAgICAgICBpZiAod2luZG93LmludGVybmFscykgewotICAgICAgICAgICAgaW50ZXJuYWxzLnNl
dE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyBhY2NlcHRBdXRo
ZW50aWNhdGlvbjogdHJ1ZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7CisgICAgICAg
ICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxv
Y2FsOiB7IHVzZXJWZXJpZmljYXRpb246ICJ5ZXMiLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2Ug
fSB9KTsKICAgICAgICAgICAgIHRlc3RSdW5uZXIuYWRkVGVzdEtleVRvS2V5Y2hhaW4ocHJpdmF0
ZUtleUJhc2U2NCwgdGVzdFJwSWQsIHRlc3RVc2VyRW50aXR5QnVuZGxlQmFzZTY0KTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm4gcHJvbWlzZVJlamVjdHModCwgIlVua25vd25FcnJvciIsIG5h
dmlnYXRvci5jcmVkZW50aWFscy5jcmVhdGUob3B0aW9ucyksICJDb3VsZG4ndCBjcmVhdGUgcHJp
dmF0ZSBrZXkuIikudGhlbigoKSA9PiB7CkBAIC0yMDIsNyArMjAyLDI5IEBACiAgICAgICAgIH07
CiAKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAgICBpbnRlcm5hbHMu
c2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IGFjY2VwdEF1
dGhlbnRpY2F0aW9uOiBmYWxzZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7CisgICAg
ICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7
IGxvY2FsOiB7IHVzZXJWZXJpZmljYXRpb246ICJubyIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxz
ZSB9IH0pOwogICAgICAgICByZXR1cm4gcHJvbWlzZVJlamVjdHModCwgIk5vdEFsbG93ZWRFcnJv
ciIsIG5hdmlnYXRvci5jcmVkZW50aWFscy5jcmVhdGUob3B0aW9ucyksICJPcGVyYXRpb24gdGlt
ZWQgb3V0LiIpOwogICAgIH0sICJQdWJsaWNLZXlDcmVkZW50aWFsJ3MgW1tjcmVhdGVdXSB3aXRo
IHRpbWVvdXQgaW4gYSBtb2NrIGxvY2FsIGF1dGhlbnRpY2F0b3IuIik7CisKKyAgICBwcm9taXNl
X3Rlc3QoZnVuY3Rpb24odCkgeworICAgICAgICBjb25zdCBvcHRpb25zID0geworICAgICAgICAg
ICAgcHVibGljS2V5OiB7CisgICAgICAgICAgICAgICAgcnA6IHsKKyAgICAgICAgICAgICAgICAg
ICAgbmFtZTogImV4YW1wbGUuY29tIgorICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAg
ICAgdXNlcjogeworICAgICAgICAgICAgICAgICAgICBuYW1lOiAiSm9obiBBcHBsZXNlZWQiLAor
ICAgICAgICAgICAgICAgICAgICBpZDogYXNjaWlUb1VpbnQ4QXJyYXkoIjEyMzQ1NiIpLAorICAg
ICAgICAgICAgICAgICAgICBkaXNwbGF5TmFtZTogIkpvaG4iLAorICAgICAgICAgICAgICAgIH0s
CisgICAgICAgICAgICAgICAgY2hhbGxlbmdlOiBhc2NpaVRvVWludDhBcnJheSgiMTIzNDU2Iiks
CisgICAgICAgICAgICAgICAgcHViS2V5Q3JlZFBhcmFtczogW3sgdHlwZTogInB1YmxpYy1rZXki
LCBhbGc6IC03IH1dLAorICAgICAgICAgICAgfQorICAgICAgICB9OworCisgICAgICAgIGlmICh3
aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50
aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAiY2FuY2Vs
IiwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlIH0gfSk7CisgICAgICAgIHJldHVybiBwcm9taXNl
UmVqZWN0cyh0LCAiTm90QWxsb3dlZEVycm9yIiwgbmF2aWdhdG9yLmNyZWRlbnRpYWxzLmNyZWF0
ZShvcHRpb25zKSwgIlRoaXMgcmVxdWVzdCBoYXMgYmVlbiBjYW5jZWxsZWQgYnkgdGhlIHVzZXIu
Iik7CisgICAgfSwgIlB1YmxpY0tleUNyZWRlbnRpYWwncyBbW2NyZWF0ZV1dIHdpdGggdXNlciBj
YW5jZWwgaW4gYSBtb2NrIGxvY2FsIGF1dGhlbnRpY2F0b3IuIik7CisKIDwvc2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50
aWFsLWNyZWF0ZS1zdWNjZXNzLWxvY2FsLmh0dHBzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3dw
dC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtY3JlYXRlLXN1Y2Nlc3MtbG9jYWwuaHR0
cHMuaHRtbAppbmRleCBiZDMwNzYxNTNmMWJmOTA5MGQyOTg0MDM4NGYwMzdjMjk4OGM4NWMyLi40
MzliOTE1YzQ0MGMxMDI3YWI2MTU4ZmQyNjc5YjBhY2I0ZmZkZjViIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtY3JlYXRlLXN1
Y2Nlc3MtbG9jYWwuaHR0cHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRo
bi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtY3JlYXRlLXN1Y2Nlc3MtbG9jYWwuaHR0cHMuaHRtbApA
QCAtNTIsNyArNTIsNyBAQAogICAgICAgICBpZiAod2luZG93LmludGVybmFscykKICAgICAgICAg
ICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsKICAg
ICAgICAgICAgICAgICBsb2NhbDogewotICAgICAgICAgICAgICAgICAgICBhY2NlcHRBdXRoZW50
aWNhdGlvbjogdHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgdXNlclZlcmlmaWNhdGlvbjogInll
cyIsCiAgICAgICAgICAgICAgICAgICAgIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwKICAgICAg
ICAgICAgICAgICAgICAgcHJpdmF0ZUtleUJhc2U2NDogcHJpdmF0ZUtleUJhc2U2NCwKICAgICAg
ICAgICAgICAgICB9CkBAIC04NSw3ICs4NSw3IEBACiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJu
YWxzKQogICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZp
Z3VyYXRpb24oewogICAgICAgICAgICAgICAgIGxvY2FsOiB7Ci0gICAgICAgICAgICAgICAgICAg
IGFjY2VwdEF1dGhlbnRpY2F0aW9uOiB0cnVlLAorICAgICAgICAgICAgICAgICAgICB1c2VyVmVy
aWZpY2F0aW9uOiAieWVzIiwKICAgICAgICAgICAgICAgICAgICAgYWNjZXB0QXR0ZXN0YXRpb246
IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICBwcml2YXRlS2V5QmFzZTY0OiBwcml2YXRlS2V5
QmFzZTY0LAogICAgICAgICAgICAgICAgIH0KQEAgLTExOSw3ICsxMTksNyBAQAogICAgICAgICBp
ZiAod2luZG93LmludGVybmFscykKICAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0
aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsKICAgICAgICAgICAgICAgICBsb2NhbDogewotICAg
ICAgICAgICAgICAgICAgICBhY2NlcHRBdXRoZW50aWNhdGlvbjogdHJ1ZSwKKyAgICAgICAgICAg
ICAgICAgICAgdXNlclZlcmlmaWNhdGlvbjogInllcyIsCiAgICAgICAgICAgICAgICAgICAgIGFj
Y2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAgcHJpdmF0ZUtleUJh
c2U2NDogcHJpdmF0ZUtleUJhc2U2NCwKICAgICAgICAgICAgICAgICB9CkBAIC0xNjMsNyArMTYz
LDcgQEAKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCiAgICAgICAgICAgICBpbnRlcm5h
bHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7CiAgICAgICAgICAgICAg
ICAgbG9jYWw6IHsKLSAgICAgICAgICAgICAgICAgICAgYWNjZXB0QXV0aGVudGljYXRpb246IHRy
dWUsCisgICAgICAgICAgICAgICAgICAgIHVzZXJWZXJpZmljYXRpb246ICJ5ZXMiLAogICAgICAg
ICAgICAgICAgICAgICBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsCiAgICAgICAgICAgICAgICAg
ICAgIHByaXZhdGVLZXlCYXNlNjQ6IHByaXZhdGVLZXlCYXNlNjQsCiAgICAgICAgICAgICAgICAg
fQpAQCAtMTk3LDcgKzE5Nyw3IEBACiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQogICAg
ICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24o
ewogICAgICAgICAgICAgICAgIGxvY2FsOiB7Ci0gICAgICAgICAgICAgICAgICAgIGFjY2VwdEF1
dGhlbnRpY2F0aW9uOiB0cnVlLAorICAgICAgICAgICAgICAgICAgICB1c2VyVmVyaWZpY2F0aW9u
OiAieWVzIiwKICAgICAgICAgICAgICAgICAgICAgYWNjZXB0QXR0ZXN0YXRpb246IHRydWUsCiAg
ICAgICAgICAgICAgICAgICAgIHByaXZhdGVLZXlCYXNlNjQ6IHByaXZhdGVLZXlCYXNlNjQsCiAg
ICAgICAgICAgICAgICAgICAgIHVzZXJDZXJ0aWZpY2F0ZUJhc2U2NDogdGVzdEF0dGVzdGF0aW9u
Q2VydGlmaWNhdGVCYXNlNjQsCkBAIC0yMzMsNyArMjMzLDcgQEAKICAgICAgICAgaWYgKHdpbmRv
dy5pbnRlcm5hbHMpCiAgICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0
aW9uQ29uZmlndXJhdGlvbih7CiAgICAgICAgICAgICAgICAgbG9jYWw6IHsKLSAgICAgICAgICAg
ICAgICAgICAgYWNjZXB0QXV0aGVudGljYXRpb246IHRydWUsCisgICAgICAgICAgICAgICAgICAg
IHVzZXJWZXJpZmljYXRpb246ICJ5ZXMiLAogICAgICAgICAgICAgICAgICAgICBhY2NlcHRBdHRl
c3RhdGlvbjogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgcHJpdmF0ZUtleUJhc2U2NDogcHJp
dmF0ZUtleUJhc2U2NCwKICAgICAgICAgICAgICAgICAgICAgdXNlckNlcnRpZmljYXRlQmFzZTY0
OiB0ZXN0QXR0ZXN0YXRpb25DZXJ0aWZpY2F0ZUJhc2U2NCwKQEAgLTI2OSw3ICsyNjksNyBAQAog
ICAgICAgICBpZiAod2luZG93LmludGVybmFscykKICAgICAgICAgICAgIGludGVybmFscy5zZXRN
b2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsKICAgICAgICAgICAgICAgICBsb2Nh
bDogewotICAgICAgICAgICAgICAgICAgICBhY2NlcHRBdXRoZW50aWNhdGlvbjogdHJ1ZSwKKyAg
ICAgICAgICAgICAgICAgICAgdXNlclZlcmlmaWNhdGlvbjogInllcyIsCiAgICAgICAgICAgICAg
ICAgICAgIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICAgcHJp
dmF0ZUtleUJhc2U2NDogcHJpdmF0ZUtleUJhc2U2NCwKICAgICAgICAgICAgICAgICB9CkBAIC0z
MDgsNyArMzA4LDcgQEAKICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCiAgICAgICAgICAg
ICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7CiAgICAg
ICAgICAgICAgICAgbG9jYWw6IHsKLSAgICAgICAgICAgICAgICAgICAgYWNjZXB0QXV0aGVudGlj
YXRpb246IHRydWUsCisgICAgICAgICAgICAgICAgICAgIHVzZXJWZXJpZmljYXRpb246ICJ5ZXMi
LAogICAgICAgICAgICAgICAgICAgICBhY2NlcHRBdHRlc3RhdGlvbjogdHJ1ZSwKICAgICAgICAg
ICAgICAgICAgICAgcHJpdmF0ZUtleUJhc2U2NDogcHJpdmF0ZUtleUJhc2U2NCwKICAgICAgICAg
ICAgICAgICAgICAgdXNlckNlcnRpZmljYXRlQmFzZTY0OiB0ZXN0QXR0ZXN0YXRpb25DZXJ0aWZp
Y2F0ZUJhc2U2NCwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1
YmxpYy1rZXktY3JlZGVudGlhbC1nZXQtZmFpbHVyZS1sb2NhbC1zaWxlbnQuaHR0cHMuaHRtbCBi
L0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1nZXQt
ZmFpbHVyZS1sb2NhbC1zaWxlbnQuaHR0cHMuaHRtbAppbmRleCA4M2ViNmI2MGI2ZjkwYjZlN2Vl
NGFlZjllOGUxNjEzYmQ5NjY5ZGEwLi5mZWRjZTgxMmM0NGM0NWE4NjUzODAzZTEwMDdhNDg3Yjhk
N2JkYTBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMt
a2V5LWNyZWRlbnRpYWwtZ2V0LWZhaWx1cmUtbG9jYWwtc2lsZW50Lmh0dHBzLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvaHR0cC93cHQvd2ViYXV0aG4vcHVibGljLWtleS1jcmVkZW50aWFsLWdldC1m
YWlsdXJlLWxvY2FsLXNpbGVudC5odHRwcy5odG1sCkBAIC02LDcgKzYsNyBAQAogPHNjcmlwdD4K
ICAgICBwcm9taXNlX3Rlc3QodCA9PiB7CiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQot
ICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRp
b24oeyBzaWxlbnRGYWlsdXJlOiB0cnVlLCBsb2NhbDogeyBhY2NlcHRBdXRoZW50aWNhdGlvbjog
ZmFsc2UsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0pOworICAgICAgICAgICAgaW50ZXJu
YWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBzaWxlbnRGYWlsdXJl
OiB0cnVlLCBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAibm8iLCBhY2NlcHRBdHRlc3RhdGlv
bjogZmFsc2UgfSB9KTsKIAogICAgICAgICBjb25zdCBvcHRpb25zID0gewogICAgICAgICAgICAg
cHVibGljS2V5OiB7CkBAIC0zMCw3ICszMCw3IEBACiAgICAgICAgIGNvbnN0IGNyZWRlbnRpYWxJ
REJhc2U2NCA9IGJ0b2EoU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseSgwLCBjcmVkZW50aWFsSUQp
KTsKICAgICAgICAgLy8gRGVmYXVsdCBtb2NrIGNvbmZpZ3VyYXRpb24uIFRlc3RzIG5lZWQgdG8g
b3ZlcnJpZGUgaWYgdGhleSBuZWVkIGRpZmZlcmVudCBjb25maWd1cmF0aW9uLgogICAgICAgICBp
ZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0
aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgc2lsZW50RmFpbHVyZTogdHJ1ZSwgbG9jYWw6IHsg
YWNjZXB0QXV0aGVudGljYXRpb246IGZhbHNlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHBy
ZWZlcnJlZENyZWRlbnRpYWxJZEJhc2U2NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7CisgICAg
ICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7
IHNpbGVudEZhaWx1cmU6IHRydWUsIGxvY2FsOiB7IHVzZXJWZXJpZmljYXRpb246ICJubyIsIGFj
Y2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwgcHJlZmVycmVkQ3JlZGVudGlhbElkQmFzZTY0OiBjcmVk
ZW50aWFsSURCYXNlNjQgfSB9KTsKIAogICAgICAgICBjb25zdCBvcHRpb25zID0gewogICAgICAg
ICAgICAgcHVibGljS2V5OiB7CkBAIC01Niw3ICs1Niw3IEBACiAgICAgICAgIGNvbnN0IGNyZWRl
bnRpYWxJREJhc2U2NCA9IGJ0b2EoU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseSgwLCBjcmVkZW50
aWFsSUQpKTsKICAgICAgICAgLy8gRGVmYXVsdCBtb2NrIGNvbmZpZ3VyYXRpb24uIFRlc3RzIG5l
ZWQgdG8gb3ZlcnJpZGUgaWYgdGhleSBuZWVkIGRpZmZlcmVudCBjb25maWd1cmF0aW9uLgogICAg
ICAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgICAgIGludGVybmFscy5zZXRNb2Nr
V2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgc2lsZW50RmFpbHVyZTogdHJ1ZSwgbG9j
YWw6IHsgYWNjZXB0QXV0aGVudGljYXRpb246IGZhbHNlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFs
c2UsIHByZWZlcnJlZENyZWRlbnRpYWxJZEJhc2U2NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7
CisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJh
dGlvbih7IHNpbGVudEZhaWx1cmU6IHRydWUsIGxvY2FsOiB7IHVzZXJWZXJpZmljYXRpb246ICJu
byIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwgcHJlZmVycmVkQ3JlZGVudGlhbElkQmFzZTY0
OiBjcmVkZW50aWFsSURCYXNlNjQgfSB9KTsKIAogICAgICAgICBjb25zdCBvcHRpb25zID0gewog
ICAgICAgICAgICAgcHVibGljS2V5OiB7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dw
dC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRlbnRpYWwtZ2V0LWZhaWx1cmUtbG9jYWwuaHR0cHMu
aHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlh
bC1nZXQtZmFpbHVyZS1sb2NhbC5odHRwcy5odG1sCmluZGV4IGJkYjYwNzZjMmJjODg5Y2QwYTJl
NGVjZjlhNzQ2ZWE5YzViM2UzMTAuLjYwN2MyNThlYzdjZDEzM2EwYTRhOWZkZTM3MDk1NWQ2ZWQ3
ZDY2NTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1r
ZXktY3JlZGVudGlhbC1nZXQtZmFpbHVyZS1sb2NhbC5odHRwcy5odG1sCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1nZXQtZmFpbHVyZS1s
b2NhbC5odHRwcy5odG1sCkBAIC02LDcgKzYsNyBAQAogPHNjcmlwdD4KICAgICBwcm9taXNlX3Rl
c3QodCA9PiB7CiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgaW50
ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyBh
Y2NlcHRBdXRoZW50aWNhdGlvbjogZmFsc2UsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSB9IH0p
OworICAgICAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3Vy
YXRpb24oeyBsb2NhbDogeyB1c2VyVmVyaWZpY2F0aW9uOiAibm8iLCBhY2NlcHRBdHRlc3RhdGlv
bjogZmFsc2UgfSB9KTsKIAogICAgICAgICBjb25zdCBvcHRpb25zID0gewogICAgICAgICAgICAg
cHVibGljS2V5OiB7CkBAIC0yOSw3ICsyOSw3IEBACiAgICAgICAgIGNvbnN0IGNyZWRlbnRpYWxJ
REJhc2U2NCA9IGJ0b2EoU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseSgwLCBjcmVkZW50aWFsSUQp
KTsKICAgICAgICAgLy8gRGVmYXVsdCBtb2NrIGNvbmZpZ3VyYXRpb24uIFRlc3RzIG5lZWQgdG8g
b3ZlcnJpZGUgaWYgdGhleSBuZWVkIGRpZmZlcmVudCBjb25maWd1cmF0aW9uLgogICAgICAgICBp
ZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgICAgIGludGVybmFscy5zZXRNb2NrV2ViQXV0
aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsgYWNjZXB0QXV0aGVudGljYXRpb246
IGZhbHNlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHByZWZlcnJlZENyZWRlbnRpYWxJZEJh
c2U2NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7CisgICAgICAgICAgICBpbnRlcm5hbHMuc2V0
TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IHVzZXJWZXJpZmlj
YXRpb246ICJubyIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxzZSwgcHJlZmVycmVkQ3JlZGVudGlh
bElkQmFzZTY0OiBjcmVkZW50aWFsSURCYXNlNjQgfSB9KTsKIAogICAgICAgICBjb25zdCBvcHRp
b25zID0gewogICAgICAgICAgICAgcHVibGljS2V5OiB7CkBAIC01NCw3ICs1NCw3IEBACiAgICAg
ICAgIGNvbnN0IGNyZWRlbnRpYWxJREJhc2U2NCA9IGJ0b2EoU3RyaW5nLmZyb21DaGFyQ29kZS5h
cHBseSgwLCBjcmVkZW50aWFsSUQpKTsKICAgICAgICAgLy8gRGVmYXVsdCBtb2NrIGNvbmZpZ3Vy
YXRpb24uIFRlc3RzIG5lZWQgdG8gb3ZlcnJpZGUgaWYgdGhleSBuZWVkIGRpZmZlcmVudCBjb25m
aWd1cmF0aW9uLgogICAgICAgICBpZiAod2luZG93LmludGVybmFscykKLSAgICAgICAgICAgIGlu
dGVybmFscy5zZXRNb2NrV2ViQXV0aGVudGljYXRpb25Db25maWd1cmF0aW9uKHsgbG9jYWw6IHsg
YWNjZXB0QXV0aGVudGljYXRpb246IGZhbHNlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHBy
ZWZlcnJlZENyZWRlbnRpYWxJZEJhc2U2NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7CisgICAg
ICAgICAgICBpbnRlcm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7
IGxvY2FsOiB7IHVzZXJWZXJpZmljYXRpb246ICJubyIsIGFjY2VwdEF0dGVzdGF0aW9uOiBmYWxz
ZSwgcHJlZmVycmVkQ3JlZGVudGlhbElkQmFzZTY0OiBjcmVkZW50aWFsSURCYXNlNjQgfSB9KTsK
IAogICAgICAgICBjb25zdCBvcHRpb25zID0gewogICAgICAgICAgICAgcHVibGljS2V5OiB7CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dwdC93ZWJhdXRobi9wdWJsaWMta2V5LWNyZWRl
bnRpYWwtZ2V0LXN1Y2Nlc3MtbG9jYWwuaHR0cHMuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0
L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1nZXQtc3VjY2Vzcy1sb2NhbC5odHRwcy5o
dG1sCmluZGV4IDc4ZDRkN2IwNzZiMTkxYWU4ZDZiYmM1N2Y0Y2U2YWEzODM4MDE2ZjguLjQ5N2Iw
ZTYyMzhiYTE3MWRmZjc5MjA5MmQzODg0MjE1YmRhODJkOWYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1YmxpYy1rZXktY3JlZGVudGlhbC1nZXQtc3VjY2Vzcy1s
b2NhbC5odHRwcy5odG1sCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L3dlYmF1dGhuL3B1Ymxp
Yy1rZXktY3JlZGVudGlhbC1nZXQtc3VjY2Vzcy1sb2NhbC5odHRwcy5odG1sCkBAIC00MSw3ICs0
MSw3IEBACiAgICAgICAgIGNvbnN0IGNyZWRlbnRpYWxJREJhc2U2NCA9IGJhc2U2NGVuY29kZShj
cmVkZW50aWFsSUQpOwogICAgICAgICAvLyBEZWZhdWx0IG1vY2sgY29uZmlndXJhdGlvbi4gVGVz
dHMgbmVlZCB0byBvdmVycmlkZSBpZiB0aGV5IG5lZWQgZGlmZmVyZW50IGNvbmZpZ3VyYXRpb24u
CiAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQotICAgICAgICAgICAgaW50ZXJuYWxzLnNl
dE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyBhY2NlcHRBdXRo
ZW50aWNhdGlvbjogdHJ1ZSwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLCBwcmVmZXJyZWRDcmVk
ZW50aWFsSWRCYXNlNjQ6IGNyZWRlbnRpYWxJREJhc2U2NCB9IH0pOworICAgICAgICAgICAgaW50
ZXJuYWxzLnNldE1vY2tXZWJBdXRoZW50aWNhdGlvbkNvbmZpZ3VyYXRpb24oeyBsb2NhbDogeyB1
c2VyVmVyaWZpY2F0aW9uOiAieWVzIiwgYWNjZXB0QXR0ZXN0YXRpb246IGZhbHNlLCBwcmVmZXJy
ZWRDcmVkZW50aWFsSWRCYXNlNjQ6IGNyZWRlbnRpYWxJREJhc2U2NCB9IH0pOwogCiAgICAgICAg
IGNvbnN0IG9wdGlvbnMgPSB7CiAgICAgICAgICAgICBwdWJsaWNLZXk6IHsKQEAgLTYyLDcgKzYy
LDcgQEAKICAgICAgICAgY29uc3QgY3JlZGVudGlhbElEQmFzZTY0ID0gYmFzZTY0ZW5jb2RlKGNy
ZWRlbnRpYWxJRCk7CiAgICAgICAgIC8vIERlZmF1bHQgbW9jayBjb25maWd1cmF0aW9uLiBUZXN0
cyBuZWVkIHRvIG92ZXJyaWRlIGlmIHRoZXkgbmVlZCBkaWZmZXJlbnQgY29uZmlndXJhdGlvbi4K
ICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpCi0gICAgICAgICAgICBpbnRlcm5hbHMuc2V0
TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IGFjY2VwdEF1dGhl
bnRpY2F0aW9uOiB0cnVlLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHByZWZlcnJlZENyZWRl
bnRpYWxJZEJhc2U2NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7CisgICAgICAgICAgICBpbnRl
cm5hbHMuc2V0TW9ja1dlYkF1dGhlbnRpY2F0aW9uQ29uZmlndXJhdGlvbih7IGxvY2FsOiB7IHVz
ZXJWZXJpZmljYXRpb246ICJ5ZXMiLCBhY2NlcHRBdHRlc3RhdGlvbjogZmFsc2UsIHByZWZlcnJl
ZENyZWRlbnRpYWxJZEJhc2U2NDogY3JlZGVudGlhbElEQmFzZTY0IH0gfSk7CiAKICAgICAgICAg
Y29uc3Qgb3B0aW9ucyA9IHsKICAgICAgICAgICAgIHB1YmxpY0tleTogewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>