<?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>162861</bug_id>
          
          <creation_ts>2016-10-02 15:15:35 -0700</creation_ts>
          <short_desc>KeyboardEvent.getModifierState() should support &quot;CapsLock&quot; modifier</short_desc>
          <delta_ts>2016-10-05 14:15:26 -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>DOM</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>https://w3c.github.io/uievents/#dom-keyboardevent-getmodifierstate</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>WebExposed</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>162855</dependson>
          <blocked>162852</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>andersca</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>sam</cc>
    
    <cc>webkit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1235752</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-02 15:15:35 -0700</bug_when>
    <thetext>getModifierState() should support for modifiers:
- https://w3c.github.io/uievents/#dom-keyboardevent-getmodifierstate

In particular, we are missing the following ones: CapsLock, Fn, FnLock, Hyper, NumLock, Super, ScrollLock, Symbol, SymbolLock.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236200</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-04 09:06:33 -0700</bug_when>
    <thetext>The only one that is missing and that seems to make sense on Mac is capsLock.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236743</commentid>
    <comment_count>2</comment_count>
      <attachid>290734</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-05 12:00:31 -0700</bug_when>
    <thetext>Created attachment 290734
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236744</commentid>
    <comment_count>3</comment_count>
      <attachid>290735</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-05 12:03:49 -0700</bug_when>
    <thetext>Created attachment 290735
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236747</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-10-05 12:22:09 -0700</bug_when>
    <thetext>Why doesn’t Fn make sense on Mac?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236748</commentid>
    <comment_count>5</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2016-10-05 12:24:28 -0700</bug_when>
    <thetext>A good test case with Fn might be the return key with the &quot;Fn&quot; modifier down.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236749</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-05 12:25:06 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Why doesn’t Fn make sense on Mac?

As far as I can tell, this is a hardware key, it does not generate an NSEvent.

Note that there is no ModifierFlag for Fn key on NSEvent:
- https://developer.apple.com/reference/appkit/nsevent/modifier_flags</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236757</commentid>
    <comment_count>7</comment_count>
      <attachid>290741</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-05 12:42:40 -0700</bug_when>
    <thetext>Created attachment 290741
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236763</commentid>
    <comment_count>8</comment_count>
      <attachid>290743</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-10-05 13:08:20 -0700</bug_when>
    <thetext>Created attachment 290743
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236780</commentid>
    <comment_count>9</comment_count>
      <attachid>290743</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-05 14:15:20 -0700</bug_when>
    <thetext>Comment on attachment 290743
Patch

Clearing flags on attachment: 290743

Committed r206828: &lt;http://trac.webkit.org/changeset/206828&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1236781</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-10-05 14:15:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290734</attachid>
            <date>2016-10-05 12:00:31 -0700</date>
            <delta_ts>2016-10-05 12:03:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162861-20161005115722.patch</filename>
            <type>text/plain</type>
            <size>27449</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2ODEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwZDcwZDY1OGJhNzRj
MzIzZTkxYjU2NWRkMzYwY2FhYTlhZDUyMi4uY2I2MWNlZjZjYjM5YTdhYmYzOGYzYTcxYThlODll
ZTZkNWI4NzZkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE2LTEwLTA1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgZ2V0TW9kaWZpZXJTdGF0ZSgp
IHNob3VsZCBzdXBwb3J0IG1vcmUgbW9kaWZpZXJzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjI4NjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3IgIkNhcHNMb2NrIiBtb2RpZmll
ciBvbiBNYWMgLyBpT1MgZm9yIEtleWJvYXJkRXZlbnQncworICAgICAgICBnZXRNb2RpZmllclN0
YXRlKCkgQVBJLCBhcyBwZXI6CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL3VpZXZl
bnRzLyNkb20ta2V5Ym9hcmRldmVudC1nZXRtb2RpZmllcnN0YXRlCisKKyAgICAgICAgTm8gbmV3
IHRlc3RzLCB1cGRhdGVkIGV4aXN0aW5nIHRlc3QuCisKKyAgICAgICAgKiBkb20vS2V5Ym9hcmRF
dmVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpLZXlib2FyZEV2ZW50OjpLZXlib2FyZEV2ZW50
KToKKyAgICAgICAgKFdlYkNvcmU6OktleWJvYXJkRXZlbnQ6OmdldE1vZGlmaWVyU3RhdGUpOgor
ICAgICAgICAqIGRvbS9LZXlib2FyZEV2ZW50Lmg6CisgICAgICAgICogcGxhdGZvcm0vUGxhdGZv
cm1FdmVudC5oOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9QbGF0Zm9ybUV2ZW50RmFjdG9yeUlP
Uy5tbToKKyAgICAgICAgKFdlYkNvcmU6Om1vZGlmaWVyc0ZvckV2ZW50KToKKyAgICAgICAgKiBw
bGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW06CisgICAgICAgIChXZWJDb3Jl
OjprZXlJZGVudGlmaWVyRm9yS2V5RXZlbnQpOgorCisyMDE2LTEwLTA1ICBDaHJpcyBEdW1leiAg
PGNkdW1lekBhcHBsZS5jb20+CisKICAgICAgICAgW0JpbmRpbmdzXSBEZWNsYXJlIGRpY3Rpb25h
cnkgLyBlbnVtZXJhdGlvbiB0ZW1wbGF0ZSBzcGVjaWFsaXphdGlvbnMgaW4gdGhlIGhlYWRlcgog
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyOTI5CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBlY2I2M2NiM2IyMDRkZDcyYjIzMDhiZGU3N2MzOWY5MDBhNzUwYTYxLi4w
MzBkOWIyYzRkNDgxNTZiMjE4YjBlMmI2YzJjNmUxZmYzNTE3YTdjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMzIgQEAKKzIwMTYtMTAtMDUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4K
KworICAgICAgICBnZXRNb2RpZmllclN0YXRlKCkgc2hvdWxkIHN1cHBvcnQgbW9yZSBtb2RpZmll
cnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mjg2
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBDYXBzTG9jayBtb2RpZmllciBvbiBldmVudHMuCisKKyAgICAgICAgKiBTaGFy
ZWQvQVBJL2MvV0tFdmVudC5oOgorICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNh
c3QuaDoKKyAgICAgICAgKFdlYktpdDo6dG9BUEkpOgorICAgICAgICAqIFNoYXJlZC9XZWJFdmVu
dENvbnZlcnNpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJLaXQyUGxhdGZvcm1Nb3VzZUV2
ZW50OjpXZWJLaXQyUGxhdGZvcm1Nb3VzZUV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViS2l0
MlBsYXRmb3JtV2hlZWxFdmVudDo6V2ViS2l0MlBsYXRmb3JtV2hlZWxFdmVudCk6CisgICAgICAg
IChXZWJLaXQ6OldlYktpdDJQbGF0Zm9ybUtleWJvYXJkRXZlbnQ6OldlYktpdDJQbGF0Zm9ybUtl
eWJvYXJkRXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJLaXQyUGxhdGZvcm1Ub3VjaEV2ZW50
OjpXZWJLaXQyUGxhdGZvcm1Ub3VjaEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViS2l0MlBs
YXRmb3JtR2VzdHVyZUV2ZW50OjpXZWJLaXQyUGxhdGZvcm1HZXN0dXJlRXZlbnQpOgorICAgICAg
ICAqIFNoYXJlZC9lZmwvV2ViRXZlbnRGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6dG9X
ZWJFdmVudE1vZGlmaWVycyk6CisgICAgICAgICogU2hhcmVkL2lvcy9XZWJJT1NFdmVudEZhY3Rv
cnkubW06CisgICAgICAgIChtb2RpZmllcnNGb3JFdmVudCk6CisgICAgICAgICogU2hhcmVkL21h
Yy9XZWJFdmVudEZhY3RvcnkubW06CisgICAgICAgIChXZWJLaXQ6Om1vZGlmaWVyc0ZvckV2ZW50
KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdhdGlvbkFjdGlvbi5tbToK
KyAgICAgICAgKHRvTlNFdmVudE1vZGlmaWVyRmxhZ3MpOgorICAgICAgICAqIFVJUHJvY2Vzcy9D
b2NvYS9XZWJBdXRvbWF0aW9uU2Vzc2lvbkNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJB
dXRvbWF0aW9uU2Vzc2lvbjo6cGxhdGZvcm1TaW11bGF0ZU1vdXNlSW50ZXJhY3Rpb24pOgorCiAy
MDE2LTEwLTA1ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBSZW5hbWUgRU5BQkxFX0VOQ1JZUFRFRF9NRURJQV9WMiB0byBFTkFCTEVfTEVHQUNZX0VOQ1JZ
UFRFRF9NRURJQQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZlbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZlbnQuY3BwCmluZGV4IDQyMjQzMmZk
OGE5NTQ5ODlmYTFjNjBkNzVjYTdjMzk5N2RiNTQ2OTMuLjIyNzYyODBkYTUyOGU2YzE3OWM3ZjZk
MWJhOWMyYTY0M2JjZGY3NmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9LZXlib2Fy
ZEV2ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5jcHAKQEAg
LTEwOCw2ICsxMDgsNyBAQCBLZXlib2FyZEV2ZW50OjpLZXlib2FyZEV2ZW50KGNvbnN0IFBsYXRm
b3JtS2V5Ym9hcmRFdmVudCYga2V5LCBET01XaW5kb3cqIHZpZXcpCiAgICAgLCBtX2xvY2F0aW9u
KGtleUxvY2F0aW9uQ29kZShrZXkpKQogICAgICwgbV9yZXBlYXQoa2V5LmlzQXV0b1JlcGVhdCgp
KQogICAgICwgbV9hbHRHcmFwaEtleShmYWxzZSkKKyAgICAsIG1fY2Fwc0xvY2tLZXkoa2V5Lm1v
ZGlmaWVycygpLmNvbnRhaW5zKFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyOjpDYXBzTG9ja0tleSkp
CiAgICAgLCBtX2lzQ29tcG9zaW5nKHZpZXcgJiYgdmlldy0+ZnJhbWUoKSAmJiB2aWV3LT5mcmFt
ZSgpLT5lZGl0b3IoKS5oYXNDb21wb3NpdGlvbigpKQogI2lmIFBMQVRGT1JNKENPQ09BKQogI2lm
IFVTRShBUFBLSVQpCkBAIC0xMzcsNyArMTM4LDggQEAgS2V5Ym9hcmRFdmVudDo6S2V5Ym9hcmRF
dmVudChjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgS2V5Ym9hcmRFdmVudEkK
ICAgICAsIG1fa2V5SWRlbnRpZmllcihpbml0aWFsaXplci5rZXlJZGVudGlmaWVyKQogICAgICwg
bV9sb2NhdGlvbihpbml0aWFsaXplci5sb2NhdGlvbikKICAgICAsIG1fcmVwZWF0KGluaXRpYWxp
emVyLnJlcGVhdCkKLSAgICAsIG1fYWx0R3JhcGhLZXkoZmFsc2UpCisgICAgLCBtX2FsdEdyYXBo
S2V5KGZhbHNlKSAvLyBGSVhNRTogc2hvdWxkIGJlIGluaXRpYWxpemVkIGZyb20gaW5pdGlhbGl6
ZXIubW9kaWZpZXJBbHRHcmFwaC4KKyAgICAsIG1fY2Fwc0xvY2tLZXkoZmFsc2UpIC8vIEZJWE1F
OiBzaG91bGQgYmUgaW5pdGlhbGl6ZWQgZnJvbSBpbml0aWFsaXplci5tb2RpZmllckNhcHNMb2Nr
LgogICAgICwgbV9pc0NvbXBvc2luZyhpbml0aWFsaXplci5pc0NvbXBvc2luZykKICNpZiBQTEFU
Rk9STShDT0NPQSkKICAgICAsIG1faGFuZGxlZEJ5SW5wdXRNZXRob2QoZmFsc2UpCkBAIC0xNzks
NyArMTgxLDkgQEAgYm9vbCBLZXlib2FyZEV2ZW50OjpnZXRNb2RpZmllclN0YXRlKGNvbnN0IFN0
cmluZyYga2V5SWRlbnRpZmllcikgY29uc3QKICAgICAgICAgcmV0dXJuIG1ldGFLZXkoKTsKICAg
ICBpZiAoa2V5SWRlbnRpZmllciA9PSAiQWx0R3JhcGgiKQogICAgICAgICByZXR1cm4gYWx0R3Jh
cGhLZXkoKTsKLSAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHN1cHBvcnQgQ2Fwc0xvY2ssIEZuLCBG
bkxvY2ssIEh5cGVyLCBOdW1Mb2NrLCBTdXBlciwgU2Nyb2xsTG9jaywgU3ltYm9sLCBTeW1ib2xM
b2NrLgorICAgIGlmIChrZXlJZGVudGlmaWVyID09ICJDYXBzTG9jayIpCisgICAgICAgIHJldHVy
biBtX2NhcHNMb2NrS2V5OworICAgIC8vIEZJWE1FOiBUaGUgc3BlY2lmaWNhdGlvbiBhbHNvIGhh
cyBGbiwgRm5Mb2NrLCBIeXBlciwgTnVtTG9jaywgU3VwZXIsIFNjcm9sbExvY2ssIFN5bWJvbCwg
U3ltYm9sTG9jay4KICAgICByZXR1cm4gZmFsc2U7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vS2V5Ym9hcmRF
dmVudC5oCmluZGV4IGJmM2U5NTMxNGUwYjk0YjE1OGQ1ODdkYzg4MjdkNDU1MDYwNjg4ZDMuLjdi
OGE2M2U3NWMwOWM4NDc1ZjRmMmUzMmI3NGQwOWM5ZWJhMTMwMTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0tl
eWJvYXJkRXZlbnQuaApAQCAtMTM2LDYgKzEzNiw3IEBAIHByaXZhdGU6CiAgICAgdW5zaWduZWQg
bV9sb2NhdGlvbiB7IERPTV9LRVlfTE9DQVRJT05fU1RBTkRBUkQgfTsKICAgICBib29sIG1fcmVw
ZWF0IHsgZmFsc2UgfTsKICAgICBib29sIG1fYWx0R3JhcGhLZXkgeyBmYWxzZSB9OworICAgIGJv
b2wgbV9jYXBzTG9ja0tleSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzQ29tcG9zaW5nIHsgZmFs
c2UgfTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vUGxhdGZvcm1FdmVudC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGxhdGZv
cm1FdmVudC5oCmluZGV4IGNhNTRiN2VmZGVjMDMzNjliZTMxNzRjNzc3ZTFjM2ZhYzk1NmUzMWMu
LjVjYjQ3ODQ3MWQ2NmE4ZWM5NmE1NDhkZjQ5MDhlNTg3ZTgxZDg1ZTcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9QbGF0Zm9ybUV2ZW50LmgKQEAgLTc0LDYgKzc0LDcgQEAgcHVibGljOgogICAg
ICAgICBDdHJsS2V5ICAgICA9IDEgPDwgMSwKICAgICAgICAgTWV0YUtleSAgICAgPSAxIDw8IDIs
CiAgICAgICAgIFNoaWZ0S2V5ICAgID0gMSA8PCAzLAorICAgICAgICBDYXBzTG9ja0tleSA9IDEg
PDwgNCwKICAgICB9OwogCiAgICAgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gc3RhdGljX2Nh
c3Q8VHlwZT4obV90eXBlKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW9zL1BsYXRmb3JtRXZlbnRGYWN0b3J5SU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW9zL1BsYXRmb3JtRXZlbnRGYWN0b3J5SU9TLm1tCmluZGV4IGZhMmNiOTY3NDFiMjE2OWEwY2U2
NTY4ODA1Y2VlYjQwNGViMDc2YzguLmUyMGUxOGYwYjE5YzY0MThjYjhjZDdjY2U2MjlmYTk2NjU2
YmQ2NzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9QbGF0Zm9ybUV2
ZW50RmFjdG9yeUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZv
cm1FdmVudEZhY3RvcnlJT1MubW0KQEAgLTQ3LDYgKzQ3LDggQEAgc3RhdGljIE9wdGlvblNldDxQ
bGF0Zm9ybUV2ZW50OjpNb2RpZmllcj4gbW9kaWZpZXJzRm9yRXZlbnQoV2ViRXZlbnQgKmV2ZW50
KQogICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6TW9kaWZpZXI6OkFsdEtleTsK
ICAgICBpZiAoZXZlbnQubW9kaWZpZXJGbGFncyAmIFdlYkV2ZW50RmxhZ01hc2tDb21tYW5kKQog
ICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6TW9kaWZpZXI6Ok1ldGFLZXk7Cisg
ICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBXZWJFdmVudEZsYWdNYXNrQWxwaGFTaGlmdCkK
KyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyOjpDYXBzTG9ja0tl
eTsKIAogICAgIHJldHVybiBtb2RpZmllcnM7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMubW0KaW5kZXggYzg3YTQ0Njk5
YmJiZjZlOWMyZTY0OGQ1YmViYzgzMjdhOTIwMTA3Zi4uMmNlY2QyOWJmMGYyMTQwNDY0ZDg1ZDUz
YTc2MjYwNDJhODY5MjViNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L21hYy9QbGF0Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbQpAQCAtNjkwLDkgKzY5MCwyMCBAQCBzdGF0
aWMgaW5saW5lIGJvb2wgaXNLZXlVcEV2ZW50KE5TRXZlbnQgKmV2ZW50KQogCiBzdGF0aWMgaW5s
aW5lIE9wdGlvblNldDxQbGF0Zm9ybUV2ZW50OjpNb2RpZmllcj4gbW9kaWZpZXJzRm9yRXZlbnQo
TlNFdmVudCAqZXZlbnQpCiB7Ci0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcHVzaAotI3ByYWdt
YSBjbGFuZyBkaWFnbm9zdGljIGlnbm9yZWQgIi1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnMiCiAg
ICAgT3B0aW9uU2V0PFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyPiBtb2RpZmllcnM7CisKKyNpZiBf
X01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTIwMAorICAgIGlmIChldmVudC5t
b2RpZmllckZsYWdzICYgTlNFdmVudE1vZGlmaWVyRmxhZ1NoaWZ0KQorICAgICAgICBtb2RpZmll
cnMgfD0gUGxhdGZvcm1FdmVudDo6TW9kaWZpZXI6OlNoaWZ0S2V5OworICAgIGlmIChldmVudC5t
b2RpZmllckZsYWdzICYgTlNFdmVudE1vZGlmaWVyRmxhZ0NvbnRyb2wpCisgICAgICAgIG1vZGlm
aWVycyB8PSBQbGF0Zm9ybUV2ZW50OjpNb2RpZmllcjo6Q3RybEtleTsKKyAgICBpZiAoZXZlbnQu
bW9kaWZpZXJGbGFncyAmIE5TRXZlbnRNb2RpZmllckZsYWdPcHRpb24pCisgICAgICAgIG1vZGlm
aWVycyB8PSBQbGF0Zm9ybUV2ZW50OjpNb2RpZmllcjo6QWx0S2V5OworICAgIGlmIChldmVudC5t
b2RpZmllckZsYWdzICYgTlNFdmVudE1vZGlmaWVyRmxhZ0NvbW1hbmQpCisgICAgICAgIG1vZGlm
aWVycyB8PSBQbGF0Zm9ybUV2ZW50OjpNb2RpZmllcjo6TWV0YUtleTsKKyAgICBpZiAoZXZlbnQu
bW9kaWZpZXJGbGFncyAmIE5TRXZlbnRNb2RpZmllckZsYWdDYXBzTG9jaykKKyAgICAgICAgbW9k
aWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyOjpDYXBzTG9ja0tleTsKKyNlbHNlCiAg
ICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU1NoaWZ0S2V5TWFzaykKICAgICAgICAgbW9k
aWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyOjpTaGlmdEtleTsKICAgICBpZiAoZXZl
bnQubW9kaWZpZXJGbGFncyAmIE5TQ29udHJvbEtleU1hc2spCkBAIC03MDEsNyArNzEyLDEwIEBA
IHN0YXRpYyBpbmxpbmUgT3B0aW9uU2V0PFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyPiBtb2RpZmll
cnNGb3JFdmVudChOU0V2ZW50ICpldmVuCiAgICAgICAgIG1vZGlmaWVycyB8PSBQbGF0Zm9ybUV2
ZW50OjpNb2RpZmllcjo6QWx0S2V5OwogICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlND
b21tYW5kS2V5TWFzaykKICAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1vZGlm
aWVyOjpNZXRhS2V5OwotI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHBvcAorICAgIGlmIChldmVu
dC5tb2RpZmllckZsYWdzICYgTlNBbHBoYVNoaWZ0S2V5TWFzaykKKyAgICAgICAgbW9kaWZpZXJz
IHw9IFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyOjpDYXBzTG9ja0tleTsKKyNlbmRpZgorCiAgICAg
cmV0dXJuIG1vZGlmaWVyczsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L0FQSS9jL1dLRXZlbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0V2ZW50LmgK
aW5kZXggMDVjNDNhNThkZmUyMjBjODdlYTM2OGIxOWU5NWIzYTAyN2Q1OGI2NS4uNDc3ZDU1NGM5
NjYwOGM2MGZjYWVhODdiNTliZWE1YTIzZWRmNDhhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvU2hhcmVkL0FQSS9jL1dLRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJ
L2MvV0tFdmVudC5oCkBAIC0zNiw3ICszNiw4IEBAIGVudW0gewogICAgIGtXS0V2ZW50TW9kaWZp
ZXJzU2hpZnRLZXkgPSAxIDw8IDAsCiAgICAga1dLRXZlbnRNb2RpZmllcnNDb250cm9sS2V5ID0g
MSA8PCAxLAogICAgIGtXS0V2ZW50TW9kaWZpZXJzQWx0S2V5ID0gMSA8PCAyLAotICAgIGtXS0V2
ZW50TW9kaWZpZXJzTWV0YUtleSA9IDEgPDwgMworICAgIGtXS0V2ZW50TW9kaWZpZXJzTWV0YUtl
eSA9IDEgPDwgMywKKyAgICBrV0tFdmVudE1vZGlmaWVyc0NhcHNMb2NrS2V5ID0gMSA8PCA0CiB9
OwogdHlwZWRlZiB1aW50MzJfdCBXS0V2ZW50TW9kaWZpZXJzOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmggYi9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgKaW5kZXggODUxNmEyY2Y0OTE0Mzc3YTA2
MGVkOWIyZDdhMGMxYjI0MzJiMWY2Mi4uNjY5ODZhZTZkNDAzNjY1YTUyNjZmMzk5MmU1N2ZhNWQ0
OGE2NGFjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVk
QVBJQ2FzdC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNh
c3QuaApAQCAtMjk0LDYgKzI5NCw4IEBAIGlubGluZSBXS0V2ZW50TW9kaWZpZXJzIHRvQVBJKFdl
YkV2ZW50OjpNb2RpZmllcnMgbW9kaWZpZXJzKQogICAgICAgICB3a01vZGlmaWVycyB8PSBrV0tF
dmVudE1vZGlmaWVyc0FsdEtleTsKICAgICBpZiAobW9kaWZpZXJzICYgV2ViRXZlbnQ6Ok1ldGFL
ZXkpCiAgICAgICAgIHdrTW9kaWZpZXJzIHw9IGtXS0V2ZW50TW9kaWZpZXJzTWV0YUtleTsKKyAg
ICBpZiAobW9kaWZpZXJzICYgV2ViRXZlbnQ6OkNhcHNMb2NrS2V5KQorICAgICAgICB3a01vZGlm
aWVycyB8PSBrV0tFdmVudE1vZGlmaWVyc0NhcHNMb2NrS2V5OwogICAgIHJldHVybiB3a01vZGlm
aWVyczsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYkV2ZW50Q29u
dmVyc2lvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViRXZlbnRDb252ZXJzaW9uLmNw
cAppbmRleCAzYTQzOGM4MjAxZTdlZmZiZjMzZDU0OTJmOThmOGZjNjI5YTdkMzEyLi4wNmJmMzdh
YmEwYzY1NjMxNTgwMzQ0NWFlOTY5MGFjZjRiMzlhOWVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvV2ViRXZlbnRDb252ZXJzaW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvV2ViRXZlbnRDb252ZXJzaW9uLmNwcApAQCAtNzYsNiArNzYsOCBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6QWx0S2V5OwogICAgICAgICBpZiAo
d2ViRXZlbnQubWV0YUtleSgpKQogICAgICAgICAgICAgbV9tb2RpZmllcnMgfD0gTW9kaWZpZXI6
Ok1ldGFLZXk7CisgICAgICAgIGlmICh3ZWJFdmVudC5jYXBzTG9ja0tleSgpKQorICAgICAgICAg
ICAgbV9tb2RpZmllcnMgfD0gTW9kaWZpZXI6OkNhcHNMb2NrS2V5OwogCiAgICAgICAgIG1fdGlt
ZXN0YW1wID0gd2ViRXZlbnQudGltZXN0YW1wKCk7CiAKQEAgLTEyNyw2ICsxMjksOCBAQCBwdWJs
aWM6CiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6QWx0S2V5OwogICAgICAg
ICBpZiAod2ViRXZlbnQubWV0YUtleSgpKQogICAgICAgICAgICAgbV9tb2RpZmllcnMgfD0gTW9k
aWZpZXI6Ok1ldGFLZXk7CisgICAgICAgIGlmICh3ZWJFdmVudC5jYXBzTG9ja0tleSgpKQorICAg
ICAgICAgICAgbV9tb2RpZmllcnMgfD0gTW9kaWZpZXI6OkNhcHNMb2NrS2V5OwogCiAgICAgICAg
IG1fdGltZXN0YW1wID0gd2ViRXZlbnQudGltZXN0YW1wKCk7CiAKQEAgLTE4NSw2ICsxODksOCBA
QCBwdWJsaWM6CiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6QWx0S2V5Owog
ICAgICAgICBpZiAod2ViRXZlbnQubWV0YUtleSgpKQogICAgICAgICAgICAgbV9tb2RpZmllcnMg
fD0gTW9kaWZpZXI6Ok1ldGFLZXk7CisgICAgICAgIGlmICh3ZWJFdmVudC5jYXBzTG9ja0tleSgp
KQorICAgICAgICAgICAgbV9tb2RpZmllcnMgfD0gTW9kaWZpZXI6OkNhcHNMb2NrS2V5OwogCiAg
ICAgICAgIG1fdGltZXN0YW1wID0gd2ViRXZlbnQudGltZXN0YW1wKCk7CiAKQEAgLTMyNCw2ICsz
MzAsOCBAQCBwdWJsaWM6CiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6QWx0
S2V5OwogICAgICAgICBpZiAod2ViRXZlbnQubWV0YUtleSgpKQogICAgICAgICAgICAgbV9tb2Rp
ZmllcnMgfD0gTW9kaWZpZXI6Ok1ldGFLZXk7CisgICAgICAgIGlmICh3ZWJFdmVudC5jYXBzTG9j
a0tleSgpKQorICAgICAgICAgICAgbV9tb2RpZmllcnMgfD0gTW9kaWZpZXI6OkNhcHNMb2NrS2V5
OwogCiAgICAgICAgIG1fdGltZXN0YW1wID0gd2ViRXZlbnQudGltZXN0YW1wKCk7CiAKQEAgLTM4
MSw2ICszODksOCBAQCBwdWJsaWM6CiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmll
cjo6QWx0S2V5OwogICAgICAgICBpZiAod2ViRXZlbnQubWV0YUtleSgpKQogICAgICAgICAgICAg
bV9tb2RpZmllcnMgfD0gTW9kaWZpZXI6Ok1ldGFLZXk7CisgICAgICAgIGlmICh3ZWJFdmVudC5j
YXBzTG9ja0tleSgpKQorICAgICAgICAgICAgbV9tb2RpZmllcnMgfD0gTW9kaWZpZXI6OkNhcHNM
b2NrS2V5OwogCiAgICAgICAgIG1fdGltZXN0YW1wID0gd2ViRXZlbnQudGltZXN0YW1wKCk7CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9lZmwvV2ViRXZlbnRGYWN0b3J5LmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9lZmwvV2ViRXZlbnRGYWN0b3J5LmNwcAppbmRleCAw
YmExMWUwMzdiNDJlMWNmYTAyMjMwYzY0MmY5ZmVkMzM3MmU3ODNhLi4xZTYwYzRlNWRmZmU5M2Rk
NTgwNDdkMGQ3M2NhZDIxZTY0NmU1MGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvZWZsL1dlYkV2ZW50RmFjdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL2Vm
bC9XZWJFdmVudEZhY3RvcnkuY3BwCkBAIC0yNTgsNiArMjU4LDggQEAgc3RhdGljIGlubGluZSBX
ZWJFdmVudDo6TW9kaWZpZXJzIHRvV2ViRXZlbnRNb2RpZmllcnModW5zaWduZWQgbW9kaWZpZXJz
KQogICAgICAgICByZXN1bHQgfD0gV2ViRXZlbnQ6OkFsdEtleTsKICAgICBpZiAobW9kaWZpZXJz
ICYga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5KQogICAgICAgICByZXN1bHQgfD0gV2ViRXZlbnQ6
Ok1ldGFLZXk7CisgICAgaWYgKG1vZGlmaWVycyAmIGtXS0V2ZW50TW9kaWZpZXJzQ2Fwc0xvY2tL
ZXkpCisgICAgICAgIHJlc3VsdCB8PSBXZWJFdmVudDo6Q2Fwc0xvY2tLZXk7CiAKICAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8V2ViRXZlbnQ6Ok1vZGlmaWVycz4ocmVzdWx0KTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9pb3MvV2ViSU9TRXZlbnRGYWN0b3J5Lm1tIGIvU291
cmNlL1dlYktpdDIvU2hhcmVkL2lvcy9XZWJJT1NFdmVudEZhY3RvcnkubW0KaW5kZXggMTI5Zjg4
Mjg4YmE0YmRmMGUyYWJiNzZjYTVhYmNiMmE4NDVmNDU4OC4uMTE3YzAyZGYzNzRjMDg0MjQ5OTAw
NzAxNjhlZGIxMjNiZjA1YTcwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL2lv
cy9XZWJJT1NFdmVudEZhY3RvcnkubW0KKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL2lvcy9X
ZWJJT1NFdmVudEZhY3RvcnkubW0KQEAgLTQ0LDYgKzQ0LDggQEAgc3RhdGljIFdlYktpdDo6V2Vi
RXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmllcnNGb3JFdmVudChXZWJJT1NFdmVudCAqZXZlbnQpCiAg
ICAgICAgIG1vZGlmaWVycyB8PSBXZWJLaXQ6OldlYkV2ZW50OjpBbHRLZXk7CiAgICAgaWYgKGV2
ZW50TW9kaWZpZXJGbGFncyAmIFdlYkV2ZW50RmxhZ01hc2tDb21tYW5kKQogICAgICAgICBtb2Rp
ZmllcnMgfD0gV2ViS2l0OjpXZWJFdmVudDo6TWV0YUtleTsKKyAgICBpZiAoZXZlbnRNb2RpZmll
ckZsYWdzICYgV2ViRXZlbnRGbGFnTWFza0FscGhhU2hpZnQpCisgICAgICAgIG1vZGlmaWVycyB8
PSBXZWJLaXQ6OldlYkV2ZW50OjpDYXBzTG9ja0tleTsKIAogICAgIHJldHVybiBzdGF0aWNfY2Fz
dDxXZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmllcnM+KG1vZGlmaWVycyk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbSBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tCmluZGV4IDM5MTM2MWNmNTMzMTBk
YmZmOTE1ZDMxYjY1NTBhYTY3ZWRmMTA5NjkuLmE4NWVmY2FlZTlhNTJkOGMwNDU2NjZkOTRjNDkx
ODcwY2E2OGE3ZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvV2ViRXZl
bnRGYWN0b3J5Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvV2ViRXZlbnRGYWN0
b3J5Lm1tCkBAIC0zMzgsOCArMzM4LDE5IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0tleVVwRXZl
bnQoTlNFdmVudCAqZXZlbnQpCiBzdGF0aWMgaW5saW5lIFdlYkV2ZW50OjpNb2RpZmllcnMgbW9k
aWZpZXJzRm9yRXZlbnQoTlNFdmVudCAqZXZlbnQpCiB7CiAgICAgdW5zaWduZWQgbW9kaWZpZXJz
ID0gMDsKLSNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCi0jcHJhZ21hIGNsYW5nIGRpYWdu
b3N0aWMgaWdub3JlZCAiLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9ucyIKKworI2lmIF9fTUFDX09T
X1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMjAwCisgICAgaWYgKFtldmVudCBtb2RpZmll
ckZsYWdzXSAmIE5TRXZlbnRNb2RpZmllckZsYWdDYXBzTG9jaykKKyAgICAgICAgbW9kaWZpZXJz
IHw9IFdlYkV2ZW50OjpDYXBzTG9ja0tleTsKKyAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3Nd
ICYgTlNFdmVudE1vZGlmaWVyRmxhZ1NoaWZ0KQorICAgICAgICBtb2RpZmllcnMgfD0gV2ViRXZl
bnQ6OlNoaWZ0S2V5OworICAgIGlmIChbZXZlbnQgbW9kaWZpZXJGbGFnc10gJiBOU0V2ZW50TW9k
aWZpZXJGbGFnQ29udHJvbCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50OjpDb250cm9s
S2V5OworICAgIGlmIChbZXZlbnQgbW9kaWZpZXJGbGFnc10gJiBOU0V2ZW50TW9kaWZpZXJGbGFn
T3B0aW9uKQorICAgICAgICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6OkFsdEtleTsKKyAgICBpZiAo
W2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNFdmVudE1vZGlmaWVyRmxhZ0NvbW1hbmQpCisgICAg
ICAgIG1vZGlmaWVycyB8PSBXZWJFdmVudDo6TWV0YUtleTsKKyNlbHNlCiAgICAgaWYgKFtldmVu
dCBtb2RpZmllckZsYWdzXSAmIE5TQWxwaGFTaGlmdEtleU1hc2spCiAgICAgICAgIG1vZGlmaWVy
cyB8PSBXZWJFdmVudDo6Q2Fwc0xvY2tLZXk7CiAgICAgaWYgKFtldmVudCBtb2RpZmllckZsYWdz
XSAmIE5TU2hpZnRLZXlNYXNrKQpAQCAtMzUwLDcgKzM2MSw4IEBAIHN0YXRpYyBpbmxpbmUgV2Vi
RXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmllcnNGb3JFdmVudChOU0V2ZW50ICpldmVudCkKICAgICAg
ICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50OjpBbHRLZXk7CiAgICAgaWYgKFtldmVudCBtb2RpZmll
ckZsYWdzXSAmIE5TQ29tbWFuZEtleU1hc2spCiAgICAgICAgIG1vZGlmaWVycyB8PSBXZWJFdmVu
dDo6TWV0YUtleTsKLSNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwb3AKKyNlbmRpZgorCiAgICAg
cmV0dXJuIChXZWJFdmVudDo6TW9kaWZpZXJzKW1vZGlmaWVyczsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS05hdmlnYXRpb25BY3Rpb24ubW0g
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdhdGlvbkFjdGlvbi5t
bQppbmRleCA5Njk0ZWYwYTliMGMyYTU2ODJjOWM5YWE0MDNhM2ZhZDZiY2UzZmIxLi5iYTE5OTZi
MjE3NGUyM2U0Nzc4NDYzN2VkNzIxMDdjNzUxYjBjM2NlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdhdGlvbkFjdGlvbi5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdhdGlvbkFjdGlvbi5tbQpAQCAt
NzksOCArNzksMTggQEAgc3RhdGljIE5TRXZlbnRNb2RpZmllckZsYWdzIHRvTlNFdmVudE1vZGlm
aWVyRmxhZ3MoV2ViS2l0OjpXZWJFdmVudDo6TW9kaWZpZXJzIG0KIHsKICAgICBOU0V2ZW50TW9k
aWZpZXJGbGFncyBtb2RpZmllckZsYWdzID0gMDsKIAotI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGlj
IHB1c2gKLSNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBpZ25vcmVkICItV2RlcHJlY2F0ZWQtZGVj
bGFyYXRpb25zIgorI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMjAw
CisgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6OkNhcHNMb2NrS2V5KQorICAg
ICAgICBtb2RpZmllckZsYWdzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDYXBzTG9jazsKKyAgICBp
ZiAobW9kaWZpZXJzICYgV2ViS2l0OjpXZWJFdmVudDo6U2hpZnRLZXkpCisgICAgICAgIG1vZGlm
aWVyRmxhZ3MgfD0gTlNFdmVudE1vZGlmaWVyRmxhZ1NoaWZ0OworICAgIGlmIChtb2RpZmllcnMg
JiBXZWJLaXQ6OldlYkV2ZW50OjpDb250cm9sS2V5KQorICAgICAgICBtb2RpZmllckZsYWdzIHw9
IE5TRXZlbnRNb2RpZmllckZsYWdDb250cm9sOworICAgIGlmIChtb2RpZmllcnMgJiBXZWJLaXQ6
OldlYkV2ZW50OjpBbHRLZXkpCisgICAgICAgIG1vZGlmaWVyRmxhZ3MgfD0gTlNFdmVudE1vZGlm
aWVyRmxhZ09wdGlvbjsKKyAgICBpZiAobW9kaWZpZXJzICYgV2ViS2l0OjpXZWJFdmVudDo6TWV0
YUtleSkKKyAgICAgICAgbW9kaWZpZXJGbGFncyB8PSBOU0V2ZW50TW9kaWZpZXJGbGFnQ29tbWFu
ZDsKKyNlbHNlCiAgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6OkNhcHNMb2Nr
S2V5KQogICAgICAgICBtb2RpZmllckZsYWdzIHw9IE5TQWxwaGFTaGlmdEtleU1hc2s7CiAgICAg
aWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6OlNoaWZ0S2V5KQpAQCAtOTEsNyArMTAx
LDggQEAgc3RhdGljIE5TRXZlbnRNb2RpZmllckZsYWdzIHRvTlNFdmVudE1vZGlmaWVyRmxhZ3Mo
V2ViS2l0OjpXZWJFdmVudDo6TW9kaWZpZXJzIG0KICAgICAgICAgbW9kaWZpZXJGbGFncyB8PSBO
U0FsdGVybmF0ZUtleU1hc2s7CiAgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6
Ok1ldGFLZXkpCiAgICAgICAgIG1vZGlmaWVyRmxhZ3MgfD0gTlNDb21tYW5kS2V5TWFzazsKLSNw
cmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwb3AKKyNlbmRpZgorCiAgICAgcmV0dXJuIG1vZGlmaWVy
RmxhZ3M7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db2NvYS9X
ZWJBdXRvbWF0aW9uU2Vzc2lvbkNvY29hLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nv
Y29hL1dlYkF1dG9tYXRpb25TZXNzaW9uQ29jb2EubW0KaW5kZXggZTM0M2JiOGE3Njc5MGFiMDky
MjRmNTRhOGMzMGQyOGU3M2Q3NmRhZC4uMTIxZDhmMDg1OTRmNTk0ZmU4YmYzZTU2YTQ1YTE4YjJj
YzQ0NWQxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1dlYkF1
dG9tYXRpb25TZXNzaW9uQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nv
Y29hL1dlYkF1dG9tYXRpb25TZXNzaW9uQ29jb2EubW0KQEAgLTEwNyw2ICsxMDcsOCBAQCB2b2lk
IFdlYkF1dG9tYXRpb25TZXNzaW9uOjpwbGF0Zm9ybVNpbXVsYXRlTW91c2VJbnRlcmFjdGlvbihX
ZWJQYWdlUHJveHkmIHBhZ2UsCiAgICAgICAgIG1vZGlmaWVycyB8PSBOU0V2ZW50TW9kaWZpZXJG
bGFnQ29udHJvbDsKICAgICBpZiAoa2V5TW9kaWZpZXJzICYgV2ViRXZlbnQ6OlNoaWZ0S2V5KQog
ICAgICAgICBtb2RpZmllcnMgfD0gTlNFdmVudE1vZGlmaWVyRmxhZ1NoaWZ0OworICAgIGlmIChr
ZXlNb2RpZmllcnMgJiBXZWJFdmVudDo6Q2Fwc0xvY2tLZXkpCisgICAgICAgIG1vZGlmaWVycyB8
PSBOU0V2ZW50TW9kaWZpZXJGbGFnQ2Fwc0xvY2s7CiAKICAgICBOU1RpbWVJbnRlcnZhbCB0aW1l
c3RhbXAgPSBbTlNEYXRlIHRpbWVJbnRlcnZhbFNpbmNlUmVmZXJlbmNlRGF0ZV07CiAgICAgTlNX
aW5kb3cgKndpbmRvdyA9IHBhZ2UucGxhdGZvcm1XaW5kb3coKTsKZGlmZiAtLWdpdCBhL1Rvb2xz
L0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBiZWYxOWYxNjk2MDc3ZDcwZGJmMGUy
Zjg1NGNhZWJiYjNhZTNmMTIzLi5kMmU3M2QyNTk5OWZkMGU3ZTMyNDZmNjcwMzY1YWZjYTlkOTc1
NDNjIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjAgQEAKKzIwMTYtMTAtMDUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KKworICAgICAgICBnZXRNb2RpZmllclN0YXRlKCkgc2hvdWxkIHN1cHBvcnQgbW9yZSBtb2Rp
ZmllcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
Mjg2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFk
ZCBzdXBwb3J0IGZvciAnY2Fwc0xvY2tLZXknIG1vZGlmaWVyIGZvciBFdmVudFNlbmRlci5rZXlE
b3duKCkgc28KKyAgICAgICAgdGhhdCB3ZSBjYW4gdGVzdCB0aGlzIG5ldyBtb2RpZmllciBzdXBw
b3J0IGZvciBsYXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL21hYy9QbGF0
Zm9ybVdlYlZpZXdNYWMubW06CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjptb2RpZmllckZsYWdz
Rm9yV0tNb2RpZmllcnMpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5k
bGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXVFI6OnBhcnNlTW9kaWZp
ZXIpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW06
CisgICAgICAgIChXVFI6OmJ1aWxkTW9kaWZpZXJGbGFncyk6CisKIDIwMTYtMTAtMDUgIFphbiBE
b2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVf
RU5DUllQVEVEX01FRElBX1YyIHRvIEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBCmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0gYi9U
b29scy9UZXN0V2ViS2l0QVBJL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0KaW5kZXggMzE1OWNl
Y2I0YTA5Yzc3NmNlMzJjM2Q3MDE1YTZiNWZmYjY4NWNlNi4uYWQzNWY1ODZjZjcyMzU5YTNiN2U5
MTM2ZjllYmViYTE2MjJmN2M3ZCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9tYWMv
UGxhdGZvcm1XZWJWaWV3TWFjLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvbWFjL1BsYXRm
b3JtV2ViVmlld01hYy5tbQpAQCAtMjIwLDYgKzIyMCw4IEBAIHN0YXRpYyBOU0V2ZW50TW9kaWZp
ZXJGbGFncyBtb2RpZmllckZsYWdzRm9yV0tNb2RpZmllcnMoV0tFdmVudE1vZGlmaWVycyBtb2Rp
ZmllCiAgICAgICAgIHJldHVyblZhbCB8PSBOU0FsdGVybmF0ZUtleU1hc2s7CiAgICAgaWYgKG1v
ZGlmaWVycyAmIGtXS0V2ZW50TW9kaWZpZXJzTWV0YUtleSkKICAgICAgICAgcmV0dXJuVmFsIHw9
IE5TQ29tbWFuZEtleU1hc2s7CisgICAgaWYgKG1vZGlmaWVycyAmIGtXS0V2ZW50TW9kaWZpZXJz
Q2Fwc0xvY2tLZXkpCisgICAgICAgIHJldHVyblZhbCB8PSBOU0FscGhhU2hpZnRLZXlNYXNrOwog
CiAgICAgcmV0dXJuIHJldHVyblZhbDsKIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAgYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuY3Bw
CmluZGV4IDBmYWEyZjM5ODNjZjdhOTFlNzkxZmRmNzQ0MWY0Y2Q5ZDllOWYzNTIuLjNlODFkYjlk
MzI5NDczMzIwZjQyZGMwOTc5ODYyZWI3ZDBlMTZjZDcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAKKysr
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250
cm9sbGVyLmNwcApAQCAtMTE2LDYgKzExNiw4IEBAIHN0YXRpYyBXS0V2ZW50TW9kaWZpZXJzIHBh
cnNlTW9kaWZpZXIoSlNTdHJpbmdSZWYgbW9kaWZpZXIpCiAgICAgICAgIHJldHVybiBrV0tFdmVu
dE1vZGlmaWVyc0FsdEtleTsKICAgICBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyht
b2RpZmllciwgIm1ldGFLZXkiKSkKICAgICAgICAgcmV0dXJuIGtXS0V2ZW50TW9kaWZpZXJzTWV0
YUtleTsKKyAgICBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhtb2RpZmllciwgImNh
cHNMb2NrS2V5IikpCisgICAgICAgIHJldHVybiBrV0tFdmVudE1vZGlmaWVyc0NhcHNMb2NrS2V5
OwogICAgIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1vZGlmaWVyLCAiYWRkU2Vs
ZWN0aW9uS2V5IikpIHsKICNpZiBPUyhNQUNfT1NfWCkKICAgICAgICAgcmV0dXJuIGtXS0V2ZW50
TW9kaWZpZXJzTWV0YUtleTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFj
L0V2ZW50U2VuZGVyUHJveHkubW0gYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNl
bmRlclByb3h5Lm1tCmluZGV4IDE5YjVhMzdiMzZkZDEyYjc0MDIyMWUzNjM3YjA0YjFmNjgyNTE0
ZGYuLmNhZmMzZWRkYTliZjg1ZWUxMDY1YWZkZTA4OWYxNjQ5MzU2NDFlNmIgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW0KKysrIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXJQcm94eS5tbQpAQCAtMjUwLDYgKzI1
MCw4IEBAIHN0YXRpYyBpbnQgYnVpbGRNb2RpZmllckZsYWdzKFdLRXZlbnRNb2RpZmllcnMgbW9k
aWZpZXJzKQogICAgICAgICBmbGFncyB8PSBOU0FsdGVybmF0ZUtleU1hc2s7CiAgICAgaWYgKG1v
ZGlmaWVycyAmIGtXS0V2ZW50TW9kaWZpZXJzTWV0YUtleSkKICAgICAgICAgZmxhZ3MgfD0gTlND
b21tYW5kS2V5TWFzazsKKyAgICBpZiAobW9kaWZpZXJzICYga1dLRXZlbnRNb2RpZmllcnNDYXBz
TG9ja0tleSkKKyAgICAgICAgZmxhZ3MgfD0gTlNBbHBoYVNoaWZ0S2V5TWFzazsKICAgICByZXR1
cm4gZmxhZ3M7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmYjc0YWEwZDUxNmY3Njg5YTU4NDI5MzkxYjg5NGNlMGE4
MTc2YTJmLi40Y2VmYjAyODc2ZjZiODIwMTAyZTEwMTM4YWVlZDczZjQ1MTZmODA0IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTYtMTAtMDUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KKworICAgICAgICBnZXRNb2RpZmllclN0YXRlKCkgc2hvdWxkIHN1cHBvcnQgbW9yZSBtb2Rp
ZmllcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
Mjg2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4
dGVuZCBsYXlvdXQgdGVzdCBjb3ZlcmFnZSB0byBjb3ZlciAnQ2FwcyBMb2NrJyBtb2RpZmllci4K
KworICAgICAgICAqIGZhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0
LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMt
aW4taW5wdXQtdGV4dC5odG1sOgorCiAyMDE2LTEwLTA1ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVz
QGFwcGxlLmNvbT4KIAogICAgICAgICBbV0syXVtOZXR3b3JrU2Vzc2lvbl0gUGluZyByZXF1ZXN0
cyBzaG91bGQgZm9sbG93IHJlZGlyZWN0cyBpZiBhcHBsaWNhYmxlCmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4t
aW5wdXQtdGV4dC1leHBlY3RlZC50eHQKaW5kZXggNTk3Yjc3NGFmNGQ0ZmRmNTg3MGMyZDg2NzBm
NzVhY2ZjM2RiZjE5My4uODY3MDZkODNmYmI5NGY5YmZmMzg0Nzc1NDJjOTNkMmMzMDQ5NDYyYSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvc3BlY2lhbC1rZXktZXZlbnRzLWlu
LWlucHV0LXRleHQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Nw
ZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0LWV4cGVjdGVkLnR4dApAQCAtMSw0OSArMSw1
NSBAQAogVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgdGhlIGNvcnJlY3Qgc2VxdWVuY2Ugb2Yga2V5
Ym9hcmQgZXZlbnRzIGlzIGdlbmVyYXRlZCBmb3IgYSBrZXlwcmVzcyBmb3IgY2VydGFpbiBzcGVj
aWFsIGtleXMuIFRvIHRlc3QgbWFudWFsbHksIHByZXNzIGtleXMgYW5kIGNvbXBhcmUgcmVzdWx0
cyB0byBvdGhlciBicm93c2Vycy4KIAogCi10YXJnZXQgLSB0eXBlIC0gY3RybEtleSxhbHRLZXks
c2hpZnRLZXksbWV0YUtleSAtIGtleSAtIGNvZGUgLSBrZXlJZGVudGlmaWVyIC0ga2V5Q29kZSAt
IGNoYXJDb2RlCit0YXJnZXQgLSB0eXBlIC0gY3RybEtleSxhbHRLZXksc2hpZnRLZXksbWV0YUtl
eSxjYXBzTG9ja0tleSAtIGtleSAtIGNvZGUgLSBrZXlJZGVudGlmaWVyIC0ga2V5Q29kZSAtIGNo
YXJDb2RlCiAKIEFtcGVyc2FuZDoKLUlOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLHRydWUs
ZmFsc2UgLSA3IC0gRGlnaXQ3IC0gVSswMDM3IC0gNTUgLSAwLiBWYWx1ZTogIiIuCi1JTlBVVCAt
IGtleXByZXNzIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDcgLSBEaWdpdDcgLSAtIDU1IC0g
NTUuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2Us
ZmFsc2UgLSA3IC0gRGlnaXQ3IC0gVSswMDM3IC0gNTUgLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAt
IGtleXByZXNzIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDcgLSBEaWdpdDcgLSAt
IDU1IC0gNTUuIFZhbHVlOiAiIi4KIElOUFVUIC0gdGV4dElucHV0IC0gNy4gVmFsdWU6ICIiLgot
SU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSA3IC0gRGlnaXQ3IC0gVSsw
MDM3IC0gNTUgLSAwLiBWYWx1ZTogIjciLgorSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLHRy
dWUsZmFsc2UsZmFsc2UgLSA3IC0gRGlnaXQ3IC0gVSswMDM3IC0gNTUgLSAwLiBWYWx1ZTogIjci
LgogCiBCYWNrc3BhY2U6Ci1JTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxz
ZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIjciLgot
SU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFj
a3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93biAtIGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSsw
MDA4IC0gOCAtIDAuIFZhbHVlOiAiNyIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4g
VmFsdWU6ICIiLgogCiBQZXJjZW50OgotSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1
ZSxmYWxzZSAtIDUgLSBEaWdpdDUgLSBVKzAwMzUgLSA1MyAtIDAuIFZhbHVlOiAiIi4KLUlOUFVU
IC0ga2V5cHJlc3MgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gNSAtIERpZ2l0NSAtIC0gNTMg
LSA1My4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxz
ZSxmYWxzZSAtIDUgLSBEaWdpdDUgLSBVKzAwMzUgLSA1MyAtIDAuIFZhbHVlOiAiIi4KK0lOUFVU
IC0ga2V5cHJlc3MgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gNSAtIERpZ2l0NSAt
IC0gNTMgLSA1My4gVmFsdWU6ICIiLgogSU5QVVQgLSB0ZXh0SW5wdXQgLSA1LiBWYWx1ZTogIiIu
Ci1JTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDUgLSBEaWdpdDUgLSBV
KzAwMzUgLSA1MyAtIDAuIFZhbHVlOiAiNSIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2Us
dHJ1ZSxmYWxzZSxmYWxzZSAtIDUgLSBEaWdpdDUgLSBVKzAwMzUgLSA1MyAtIDAuIFZhbHVlOiAi
NSIuCiAKIEJhY2tzcGFjZToKLUlOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZh
bHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiNSIu
Ci1JTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBC
YWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlkb3duIC0g
ZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBV
KzAwMDggLSA4IC0gMC4gVmFsdWU6ICI1Ii4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxm
YWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAw
LiBWYWx1ZTogIiIuCiAKIExlZnQgcGFyZW50aGVzaXM6Ci1JTlBVVCAtIGtleWRvd24gLSBmYWxz
ZSxmYWxzZSx0cnVlLGZhbHNlIC0gOSAtIERpZ2l0OSAtIFUrMDAzOSAtIDU3IC0gMC4gVmFsdWU6
ICIiLgotSU5QVVQgLSBrZXlwcmVzcyAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSA5IC0gRGln
aXQ5IC0gLSA1NyAtIDU3LiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxz
ZSx0cnVlLGZhbHNlLGZhbHNlIC0gOSAtIERpZ2l0OSAtIFUrMDAzOSAtIDU3IC0gMC4gVmFsdWU6
ICIiLgorSU5QVVQgLSBrZXlwcmVzcyAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UgLSA5
IC0gRGlnaXQ5IC0gLSA1NyAtIDU3LiBWYWx1ZTogIiIuCiBJTlBVVCAtIHRleHRJbnB1dCAtIDku
IFZhbHVlOiAiIi4KLUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gOSAt
IERpZ2l0OSAtIFUrMDAzOSAtIDU3IC0gMC4gVmFsdWU6ICI5Ii4KK0lOUFVUIC0ga2V5dXAgLSBm
YWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gOSAtIERpZ2l0OSAtIFUrMDAzOSAtIDU3IC0g
MC4gVmFsdWU6ICI5Ii4KIAogQmFja3NwYWNlOgotSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4g
VmFsdWU6ICI5Ii4KLUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJh
Y2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAt
IGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJh
Y2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIjkiLgorSU5QVVQgLSBrZXl1cCAtIGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSsw
MDA4IC0gOCAtIDAuIFZhbHVlOiAiIi4KIAogUmlnaHQgcGFyZW50aGVzaXM6Ci1JTlBVVCAtIGtl
eWRvd24gLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gMCAtIERpZ2l0MCAtIFUrMDAzMCAtIDQ4
IC0gMC4gVmFsdWU6ICIiLgotSU5QVVQgLSBrZXlwcmVzcyAtIGZhbHNlLGZhbHNlLHRydWUsZmFs
c2UgLSAwIC0gRGlnaXQwIC0gLSA0OCAtIDQ4LiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleWRvd24g
LSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gMCAtIERpZ2l0MCAtIFUrMDAzMCAtIDQ4
IC0gMC4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlwcmVzcyAtIGZhbHNlLGZhbHNlLHRydWUsZmFs
c2UsZmFsc2UgLSAwIC0gRGlnaXQwIC0gLSA0OCAtIDQ4LiBWYWx1ZTogIiIuCiBJTlBVVCAtIHRl
eHRJbnB1dCAtIDAuIFZhbHVlOiAiIi4KLUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSx0cnVl
LGZhbHNlIC0gMCAtIERpZ2l0MCAtIFUrMDAzMCAtIDQ4IC0gMC4gVmFsdWU6ICIwIi4KK0lOUFVU
IC0ga2V5dXAgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gMCAtIERpZ2l0MCAtIFUr
MDAzMCAtIDQ4IC0gMC4gVmFsdWU6ICIwIi4KIAogQmFja3NwYWNlOgotSU5QVVQgLSBrZXlkb3du
IC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAw
MDggLSA4IC0gMC4gVmFsdWU6ICIwIi4KLUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxz
ZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTog
IiIuCitJTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJh
Y2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIjAiLgorSU5QVVQg
LSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFj
a3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiIi4KIAogUHJpbnQgc2NyZWVuOgotSU5Q
VVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBQcmludFNjcmVlbiAtIEtl
eUEgLSBQcmludFNjcmVlbiAtIDQ0IC0gMC4gVmFsdWU6ICIiLgotSU5QVVQgLSBrZXl1cCAtIGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gUHJpbnRTY3JlZW4gLSBLZXlBIC0gUHJpbnRTY3JlZW4g
LSA0NCAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNl
LGZhbHNlLGZhbHNlIC0gUHJpbnRTY3JlZW4gLSBLZXlBIC0gUHJpbnRTY3JlZW4gLSA0NCAtIDAu
IFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxz
ZSAtIFByaW50U2NyZWVuIC0gS2V5QSAtIFByaW50U2NyZWVuIC0gNDQgLSAwLiBWYWx1ZTogIiIu
CisKKydhJyBrZXkgd2l0aCBDYXBzIExvY2s6CitJTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxz
ZSxmYWxzZSxmYWxzZSx0cnVlIC0gYSAtIEtleUEgLSBVKzAwNDEgLSA2NSAtIDAuIFZhbHVlOiAi
Ii4KK0lOUFVUIC0ga2V5cHJlc3MgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlIC0gYSAt
IEtleUEgLSAtIDk3IC0gOTcuIFZhbHVlOiAiIi4KK0lOUFVUIC0gdGV4dElucHV0IC0gYS4gVmFs
dWU6ICIiLgorSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUgLSBh
IC0gS2V5QSAtIFUrMDA0MSAtIDY1IC0gMC4gVmFsdWU6ICJhIi4KIApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvc3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10
ZXh0Lmh0bWwKaW5kZXggNzc4MTJlOWUwZjY2NGFmMmY3YTFiODYwZjBhYWY1ODhmODMzMjgzYS4u
ODk3YzEyMGY3MWNlODFjYzQ0NmUzYzJlYmQzZTVlYTgzZDJkMGJmOSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvc3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5w
dXQtdGV4dC5odG1sCkBAIC0xNyw3ICsxNyw3IEBAIGZ1bmN0aW9uIGxvZ0V2ZW50KGUpIHsKICAg
IGlmICh0eXBlID09ICJ0ZXh0SW5wdXQiKSB7CiAgICAgIGluZm8gKz0gZS5kYXRhOwogICAgfSBl
bHNlIGlmICh0eXBlID09ICJrZXlkb3duIiB8fCB0eXBlID09ICJrZXlwcmVzcyIgfHwgdHlwZSA9
PSAia2V5dXAiKSB7Ci0gICAgIGluZm8gKz0gW2UuY3RybEtleSwgZS5hbHRLZXksIGUuc2hpZnRL
ZXksIGUubWV0YUtleV0gKworICAgICBpbmZvICs9IFtlLmN0cmxLZXksIGUuYWx0S2V5LCBlLnNo
aWZ0S2V5LCBlLm1ldGFLZXksIGUuZ2V0TW9kaWZpZXJTdGF0ZSgnQ2Fwc0xvY2snKV0gKwogICAg
ICAgICAgJyAtICcgKyBlLmtleSArCiAgICAgICAgICAnIC0gJyArIGUuY29kZSArCiAgICAgICAg
ICAnIC0gJyArIGUua2V5SWRlbnRpZmllciArCkBAIC0yOCw3ICsyOCw3IEBAIGZ1bmN0aW9uIGxv
Z0V2ZW50KGUpIHsKICAgIGxvZyhpbmZvKTsKIH0KIAotbG9nKCJ0YXJnZXQgLSB0eXBlIC0gIiAr
IFsiY3RybEtleSIsICJhbHRLZXkiLCAic2hpZnRLZXkiLCAibWV0YUtleSJdCitsb2coInRhcmdl
dCAtIHR5cGUgLSAiICsgWyJjdHJsS2V5IiwgImFsdEtleSIsICJzaGlmdEtleSIsICJtZXRhS2V5
IiwgImNhcHNMb2NrS2V5Il0KICAgICAgICArICcgLSAnICsgImtleSIKICAgICAgICArICcgLSAn
ICsgImNvZGUiCiAgICAgICAgKyAnIC0gJyArICJrZXlJZGVudGlmaWVyIgpAQCAtNjIsNiArNjIs
OCBAQCBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKICAgIGV2ZW50U2VuZGVyLmtleURvd24oIlx4
MDgiLCBbXSk7CiAgICBsb2coIjxicj5QcmludCBzY3JlZW46Iik7CiAgICBldmVudFNlbmRlci5r
ZXlEb3duKCJwcmludFNjcmVlbiIsIFtdKTsKKyAgIGxvZygiPGJyPidhJyBrZXkgd2l0aCBDYXBz
IExvY2s6Iik7CisgICBldmVudFNlbmRlci5rZXlEb3duKCJhIiwgWyJjYXBzTG9ja0tleSJdKTsK
ICAgfQogPC9zY3JpcHQ+CiA8L2JvZHk+PC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290735</attachid>
            <date>2016-10-05 12:03:49 -0700</date>
            <delta_ts>2016-10-05 12:42:33 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162861-20161005120040.patch</filename>
            <type>text/plain</type>
            <size>27525</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2ODEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwZDcwZDY1OGJhNzRj
MzIzZTkxYjU2NWRkMzYwY2FhYTlhZDUyMi4uYjhkNGNlZDU5NzI0MDhkN2JhYTk1NWFkZmMyM2Ji
NWU5Y2EyZTMxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE2LTEwLTA1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgS2V5Ym9hcmRFdmVudC5nZXRN
b2RpZmllclN0YXRlKCkgc2hvdWxkIHN1cHBvcnQgIkNhcHNMb2NrIiBtb2RpZmllcgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyODYxCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9y
ICJDYXBzTG9jayIgbW9kaWZpZXIgb24gTWFjIC8gaU9TIGZvciBLZXlib2FyZEV2ZW50J3MKKyAg
ICAgICAgZ2V0TW9kaWZpZXJTdGF0ZSgpIEFQSSwgYXMgcGVyOgorICAgICAgICAtIGh0dHBzOi8v
dzNjLmdpdGh1Yi5pby91aWV2ZW50cy8jZG9tLWtleWJvYXJkZXZlbnQtZ2V0bW9kaWZpZXJzdGF0
ZQorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgdXBkYXRlZCBleGlzdGluZyB0ZXN0LgorCisgICAg
ICAgICogZG9tL0tleWJvYXJkRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5Ym9hcmRF
dmVudDo6S2V5Ym9hcmRFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpLZXlib2FyZEV2ZW50Ojpn
ZXRNb2RpZmllclN0YXRlKToKKyAgICAgICAgKiBkb20vS2V5Ym9hcmRFdmVudC5oOgorICAgICAg
ICAqIHBsYXRmb3JtL1BsYXRmb3JtRXZlbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvUGxh
dGZvcm1FdmVudEZhY3RvcnlJT1MubW06CisgICAgICAgIChXZWJDb3JlOjptb2RpZmllcnNGb3JF
dmVudCk6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1t
OgorICAgICAgICAoV2ViQ29yZTo6a2V5SWRlbnRpZmllckZvcktleUV2ZW50KToKKworMjAxNi0x
MC0wNSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCiAgICAgICAgIFtCaW5kaW5n
c10gRGVjbGFyZSBkaWN0aW9uYXJ5IC8gZW51bWVyYXRpb24gdGVtcGxhdGUgc3BlY2lhbGl6YXRp
b25zIGluIHRoZSBoZWFkZXIKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE2MjkyOQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZWNiNjNjYjNiMjA0ZGQ3MmIyMzA4YmRl
NzdjMzlmOTAwYTc1MGE2MS4uMzcxODhhMTljY2ZkYTY2MjYxNGFkZjg0ODA0N2RhMzU3YmZkZjQ0
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE2LTEwLTA1ICBDaHJpcyBEdW1leiAg
PGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgS2V5Ym9hcmRFdmVudC5nZXRNb2RpZmllclN0
YXRlKCkgc2hvdWxkIHN1cHBvcnQgIkNhcHNMb2NrIiBtb2RpZmllcgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyODYxCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENhcHNMb2Nr
IG1vZGlmaWVyIG9uIGV2ZW50cy4KKworICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS0V2ZW50Lmg6
CisgICAgICAgICogU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oOgorICAgICAgICAoV2Vi
S2l0Ojp0b0FQSSk6CisgICAgICAgICogU2hhcmVkL1dlYkV2ZW50Q29udmVyc2lvbi5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYktpdDJQbGF0Zm9ybU1vdXNlRXZlbnQ6OldlYktpdDJQbGF0Zm9y
bU1vdXNlRXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJLaXQyUGxhdGZvcm1XaGVlbEV2ZW50
OjpXZWJLaXQyUGxhdGZvcm1XaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViS2l0MlBs
YXRmb3JtS2V5Ym9hcmRFdmVudDo6V2ViS2l0MlBsYXRmb3JtS2V5Ym9hcmRFdmVudCk6CisgICAg
ICAgIChXZWJLaXQ6OldlYktpdDJQbGF0Zm9ybVRvdWNoRXZlbnQ6OldlYktpdDJQbGF0Zm9ybVRv
dWNoRXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJLaXQyUGxhdGZvcm1HZXN0dXJlRXZlbnQ6
OldlYktpdDJQbGF0Zm9ybUdlc3R1cmVFdmVudCk6CisgICAgICAgICogU2hhcmVkL2VmbC9XZWJF
dmVudEZhY3RvcnkuY3BwOgorICAgICAgICAoV2ViS2l0Ojp0b1dlYkV2ZW50TW9kaWZpZXJzKToK
KyAgICAgICAgKiBTaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKG1v
ZGlmaWVyc0ZvckV2ZW50KToKKyAgICAgICAgKiBTaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5t
bToKKyAgICAgICAgKFdlYktpdDo6bW9kaWZpZXJzRm9yRXZlbnQpOgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tOgorICAgICAgICAodG9OU0V2ZW50
TW9kaWZpZXJGbGFncyk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYkF1dG9tYXRpb25T
ZXNzaW9uQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYkF1dG9tYXRpb25TZXNzaW9uOjpw
bGF0Zm9ybVNpbXVsYXRlTW91c2VJbnRlcmFjdGlvbik6CisKIDIwMTYtMTAtMDUgIFphbiBEb2Jl
cnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVfRU5D
UllQVEVEX01FRElBX1YyIHRvIEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9kb20vS2V5Ym9hcmRFdmVudC5jcHAKaW5kZXggNDIyNDMyZmQ4YTk1NDk4OWZhMWM2MGQ3NWNh
N2MzOTk3ZGI1NDY5My4uMjI3NjI4MGRhNTI4ZTZjMTc5YzdmNmQxYmE5YzJhNjQzYmNkZjc2YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZlbnQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmNwcApAQCAtMTA4LDYgKzEwOCw3IEBAIEtl
eWJvYXJkRXZlbnQ6OktleWJvYXJkRXZlbnQoY29uc3QgUGxhdGZvcm1LZXlib2FyZEV2ZW50JiBr
ZXksIERPTVdpbmRvdyogdmlldykKICAgICAsIG1fbG9jYXRpb24oa2V5TG9jYXRpb25Db2RlKGtl
eSkpCiAgICAgLCBtX3JlcGVhdChrZXkuaXNBdXRvUmVwZWF0KCkpCiAgICAgLCBtX2FsdEdyYXBo
S2V5KGZhbHNlKQorICAgICwgbV9jYXBzTG9ja0tleShrZXkubW9kaWZpZXJzKCkuY29udGFpbnMo
UGxhdGZvcm1FdmVudDo6TW9kaWZpZXI6OkNhcHNMb2NrS2V5KSkKICAgICAsIG1faXNDb21wb3Np
bmcodmlldyAmJiB2aWV3LT5mcmFtZSgpICYmIHZpZXctPmZyYW1lKCktPmVkaXRvcigpLmhhc0Nv
bXBvc2l0aW9uKCkpCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaWYgVVNFKEFQUEtJVCkKQEAgLTEz
Nyw3ICsxMzgsOCBAQCBLZXlib2FyZEV2ZW50OjpLZXlib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0
cmluZyYgZXZlbnRUeXBlLCBjb25zdCBLZXlib2FyZEV2ZW50SQogICAgICwgbV9rZXlJZGVudGlm
aWVyKGluaXRpYWxpemVyLmtleUlkZW50aWZpZXIpCiAgICAgLCBtX2xvY2F0aW9uKGluaXRpYWxp
emVyLmxvY2F0aW9uKQogICAgICwgbV9yZXBlYXQoaW5pdGlhbGl6ZXIucmVwZWF0KQotICAgICwg
bV9hbHRHcmFwaEtleShmYWxzZSkKKyAgICAsIG1fYWx0R3JhcGhLZXkoZmFsc2UpIC8vIEZJWE1F
OiBzaG91bGQgYmUgaW5pdGlhbGl6ZWQgZnJvbSBpbml0aWFsaXplci5tb2RpZmllckFsdEdyYXBo
LgorICAgICwgbV9jYXBzTG9ja0tleShmYWxzZSkgLy8gRklYTUU6IHNob3VsZCBiZSBpbml0aWFs
aXplZCBmcm9tIGluaXRpYWxpemVyLm1vZGlmaWVyQ2Fwc0xvY2suCiAgICAgLCBtX2lzQ29tcG9z
aW5nKGluaXRpYWxpemVyLmlzQ29tcG9zaW5nKQogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgICwg
bV9oYW5kbGVkQnlJbnB1dE1ldGhvZChmYWxzZSkKQEAgLTE3OSw3ICsxODEsOSBAQCBib29sIEtl
eWJvYXJkRXZlbnQ6OmdldE1vZGlmaWVyU3RhdGUoY29uc3QgU3RyaW5nJiBrZXlJZGVudGlmaWVy
KSBjb25zdAogICAgICAgICByZXR1cm4gbWV0YUtleSgpOwogICAgIGlmIChrZXlJZGVudGlmaWVy
ID09ICJBbHRHcmFwaCIpCiAgICAgICAgIHJldHVybiBhbHRHcmFwaEtleSgpOwotICAgIC8vIEZJ
WE1FOiBXZSBzaG91bGQgc3VwcG9ydCBDYXBzTG9jaywgRm4sIEZuTG9jaywgSHlwZXIsIE51bUxv
Y2ssIFN1cGVyLCBTY3JvbGxMb2NrLCBTeW1ib2wsIFN5bWJvbExvY2suCisgICAgaWYgKGtleUlk
ZW50aWZpZXIgPT0gIkNhcHNMb2NrIikKKyAgICAgICAgcmV0dXJuIG1fY2Fwc0xvY2tLZXk7Cisg
ICAgLy8gRklYTUU6IFRoZSBzcGVjaWZpY2F0aW9uIGFsc28gaGFzIEZuLCBGbkxvY2ssIEh5cGVy
LCBOdW1Mb2NrLCBTdXBlciwgU2Nyb2xsTG9jaywgU3ltYm9sLCBTeW1ib2xMb2NrLgogICAgIHJl
dHVybiBmYWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJk
RXZlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmgKaW5kZXggYmYzZTk1
MzE0ZTBiOTRiMTU4ZDU4N2RjODgyN2Q0NTUwNjA2ODhkMy4uN2I4YTYzZTc1YzA5Yzg0NzVmNGYy
ZTMyYjc0ZDA5YzllYmExMzAxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJv
YXJkRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5oCkBAIC0x
MzYsNiArMTM2LDcgQEAgcHJpdmF0ZToKICAgICB1bnNpZ25lZCBtX2xvY2F0aW9uIHsgRE9NX0tF
WV9MT0NBVElPTl9TVEFOREFSRCB9OwogICAgIGJvb2wgbV9yZXBlYXQgeyBmYWxzZSB9OwogICAg
IGJvb2wgbV9hbHRHcmFwaEtleSB7IGZhbHNlIH07CisgICAgYm9vbCBtX2NhcHNMb2NrS2V5IHsg
ZmFsc2UgfTsKICAgICBib29sIG1faXNDb21wb3NpbmcgeyBmYWxzZSB9OwogCiAjaWYgUExBVEZP
Uk0oQ09DT0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUV2
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUV2ZW50LmgKaW5kZXggY2E1
NGI3ZWZkZWMwMzM2OWJlMzE3NGM3NzdlMWMzZmFjOTU2ZTMxYy4uNWNiNDc4NDcxZDY2YThlYzk2
YTU0OGRmNDkwOGU1ODdlODFkODVlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vUGxhdGZvcm1FdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3Jt
RXZlbnQuaApAQCAtNzQsNiArNzQsNyBAQCBwdWJsaWM6CiAgICAgICAgIEN0cmxLZXkgICAgID0g
MSA8PCAxLAogICAgICAgICBNZXRhS2V5ICAgICA9IDEgPDwgMiwKICAgICAgICAgU2hpZnRLZXkg
ICAgPSAxIDw8IDMsCisgICAgICAgIENhcHNMb2NrS2V5ID0gMSA8PCA0LAogICAgIH07CiAKICAg
ICBUeXBlIHR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxUeXBlPihtX3R5cGUpOyB9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZvcm1FdmVudEZh
Y3RvcnlJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZvcm1FdmVudEZh
Y3RvcnlJT1MubW0KaW5kZXggZmEyY2I5Njc0MWIyMTY5YTBjZTY1Njg4MDVjZWViNDA0ZWIwNzZj
OC4uZTIwZTE4ZjBiMTljNjQxOGNiOGNkN2NjZTYyOWZhOTY2NTZiZDY3NyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXRmb3JtRXZlbnRGYWN0b3J5SU9TLm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9QbGF0Zm9ybUV2ZW50RmFjdG9yeUlPUy5t
bQpAQCAtNDcsNiArNDcsOCBAQCBzdGF0aWMgT3B0aW9uU2V0PFBsYXRmb3JtRXZlbnQ6Ok1vZGlm
aWVyPiBtb2RpZmllcnNGb3JFdmVudChXZWJFdmVudCAqZXZlbnQpCiAgICAgICAgIG1vZGlmaWVy
cyB8PSBQbGF0Zm9ybUV2ZW50OjpNb2RpZmllcjo6QWx0S2V5OwogICAgIGlmIChldmVudC5tb2Rp
ZmllckZsYWdzICYgV2ViRXZlbnRGbGFnTWFza0NvbW1hbmQpCiAgICAgICAgIG1vZGlmaWVycyB8
PSBQbGF0Zm9ybUV2ZW50OjpNb2RpZmllcjo6TWV0YUtleTsKKyAgICBpZiAoZXZlbnQubW9kaWZp
ZXJGbGFncyAmIFdlYkV2ZW50RmxhZ01hc2tBbHBoYVNoaWZ0KQorICAgICAgICBtb2RpZmllcnMg
fD0gUGxhdGZvcm1FdmVudDo6TW9kaWZpZXI6OkNhcHNMb2NrS2V5OwogCiAgICAgcmV0dXJuIG1v
ZGlmaWVyczsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0
Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0
Zm9ybUV2ZW50RmFjdG9yeU1hYy5tbQppbmRleCBjODdhNDQ2OTliYmJmNmU5YzJlNjQ4ZDViZWJj
ODMyN2E5MjAxMDdmLi4yY2VjZDI5YmYwZjIxNDA0NjRkODVkNTNhNzYyNjA0MmE4NjkyNWI2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3Rv
cnlNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRG
YWN0b3J5TWFjLm1tCkBAIC02OTAsOSArNjkwLDIwIEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0tl
eVVwRXZlbnQoTlNFdmVudCAqZXZlbnQpCiAKIHN0YXRpYyBpbmxpbmUgT3B0aW9uU2V0PFBsYXRm
b3JtRXZlbnQ6Ok1vZGlmaWVyPiBtb2RpZmllcnNGb3JFdmVudChOU0V2ZW50ICpldmVudCkKIHsK
LSNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCi0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMg
aWdub3JlZCAiLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9ucyIKICAgICBPcHRpb25TZXQ8UGxhdGZv
cm1FdmVudDo6TW9kaWZpZXI+IG1vZGlmaWVyczsKKworI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9N
SU5fUkVRVUlSRUQgPj0gMTAxMjAwCisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2
ZW50TW9kaWZpZXJGbGFnU2hpZnQpCisgICAgICAgIG1vZGlmaWVycyB8PSBQbGF0Zm9ybUV2ZW50
OjpNb2RpZmllcjo6U2hpZnRLZXk7CisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2
ZW50TW9kaWZpZXJGbGFnQ29udHJvbCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZl
bnQ6Ok1vZGlmaWVyOjpDdHJsS2V5OworICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlNF
dmVudE1vZGlmaWVyRmxhZ09wdGlvbikKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZl
bnQ6Ok1vZGlmaWVyOjpBbHRLZXk7CisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2
ZW50TW9kaWZpZXJGbGFnQ29tbWFuZCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZl
bnQ6Ok1vZGlmaWVyOjpNZXRhS2V5OworICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlNF
dmVudE1vZGlmaWVyRmxhZ0NhcHNMb2NrKQorICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1F
dmVudDo6TW9kaWZpZXI6OkNhcHNMb2NrS2V5OworI2Vsc2UKICAgICBpZiAoZXZlbnQubW9kaWZp
ZXJGbGFncyAmIE5TU2hpZnRLZXlNYXNrKQogICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1F
dmVudDo6TW9kaWZpZXI6OlNoaWZ0S2V5OwogICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYg
TlNDb250cm9sS2V5TWFzaykKQEAgLTcwMSw3ICs3MTIsMTAgQEAgc3RhdGljIGlubGluZSBPcHRp
b25TZXQ8UGxhdGZvcm1FdmVudDo6TW9kaWZpZXI+IG1vZGlmaWVyc0ZvckV2ZW50KE5TRXZlbnQg
KmV2ZW4KICAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyOjpBbHRL
ZXk7CiAgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0NvbW1hbmRLZXlNYXNrKQogICAg
ICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6TW9kaWZpZXI6Ok1ldGFLZXk7Ci0jcHJh
Z21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBO
U0FscGhhU2hpZnRLZXlNYXNrKQorICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6
TW9kaWZpZXI6OkNhcHNMb2NrS2V5OworI2VuZGlmCisKICAgICByZXR1cm4gbW9kaWZpZXJzOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tFdmVudC5oIGIv
U291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLRXZlbnQuaAppbmRleCAwNWM0M2E1OGRmZTIy
MGM4N2VhMzY4YjE5ZTk1YjNhMDI3ZDU4YjY1Li40NzdkNTU0Yzk2NjA4YzYwZmNhZWE4N2I1OWJl
YTVhMjNlZGY0OGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tF
dmVudC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0V2ZW50LmgKQEAgLTM2
LDcgKzM2LDggQEAgZW51bSB7CiAgICAga1dLRXZlbnRNb2RpZmllcnNTaGlmdEtleSA9IDEgPDwg
MCwKICAgICBrV0tFdmVudE1vZGlmaWVyc0NvbnRyb2xLZXkgPSAxIDw8IDEsCiAgICAga1dLRXZl
bnRNb2RpZmllcnNBbHRLZXkgPSAxIDw8IDIsCi0gICAga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5
ID0gMSA8PCAzCisgICAga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5ID0gMSA8PCAzLAorICAgIGtX
S0V2ZW50TW9kaWZpZXJzQ2Fwc0xvY2tLZXkgPSAxIDw8IDQKIH07CiB0eXBlZGVmIHVpbnQzMl90
IFdLRXZlbnRNb2RpZmllcnM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9B
UEkvYy9XS1NoYXJlZEFQSUNhc3QuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1No
YXJlZEFQSUNhc3QuaAppbmRleCA4NTE2YTJjZjQ5MTQzNzdhMDYwZWQ5YjJkN2EwYzFiMjQzMmIx
ZjYyLi42Njk4NmFlNmQ0MDM2NjVhNTI2NmYzOTkyZTU3ZmE1ZDQ4YTY0YWNjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgKKysrIGIvU291
cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCkBAIC0yOTQsNiArMjk0
LDggQEAgaW5saW5lIFdLRXZlbnRNb2RpZmllcnMgdG9BUEkoV2ViRXZlbnQ6Ok1vZGlmaWVycyBt
b2RpZmllcnMpCiAgICAgICAgIHdrTW9kaWZpZXJzIHw9IGtXS0V2ZW50TW9kaWZpZXJzQWx0S2V5
OwogICAgIGlmIChtb2RpZmllcnMgJiBXZWJFdmVudDo6TWV0YUtleSkKICAgICAgICAgd2tNb2Rp
ZmllcnMgfD0ga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5OworICAgIGlmIChtb2RpZmllcnMgJiBX
ZWJFdmVudDo6Q2Fwc0xvY2tLZXkpCisgICAgICAgIHdrTW9kaWZpZXJzIHw9IGtXS0V2ZW50TW9k
aWZpZXJzQ2Fwc0xvY2tLZXk7CiAgICAgcmV0dXJuIHdrTW9kaWZpZXJzOwogfQogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViRXZlbnRDb252ZXJzaW9uLmNwcCBiL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVudENvbnZlcnNpb24uY3BwCmluZGV4IDNhNDM4YzgyMDFl
N2VmZmJmMzNkNTQ5MmY5OGY4ZmM2MjlhN2QzMTIuLjA2YmYzN2FiYTBjNjU2MzE1ODAzNDQ1YWU5
NjkwYWNmNGIzOWE5ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVu
dENvbnZlcnNpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVudENvbnZl
cnNpb24uY3BwCkBAIC03Niw2ICs3Niw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fbW9kaWZp
ZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVudC5tZXRhS2V5KCkp
CiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtleTsKKyAgICAgICAg
aWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBN
b2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAgPSB3ZWJFdmVudC50
aW1lc3RhbXAoKTsKIApAQCAtMTI3LDYgKzEyOSw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1f
bW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVudC5tZXRh
S2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtleTsKKyAg
ICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21vZGlmaWVy
cyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAgPSB3ZWJF
dmVudC50aW1lc3RhbXAoKTsKIApAQCAtMTg1LDYgKzE4OSw4IEBAIHB1YmxpYzoKICAgICAgICAg
ICAgIG1fbW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVu
dC5tZXRhS2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtl
eTsKKyAgICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21v
ZGlmaWVycyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAg
PSB3ZWJFdmVudC50aW1lc3RhbXAoKTsKIApAQCAtMzI0LDYgKzMzMCw4IEBAIHB1YmxpYzoKICAg
ICAgICAgICAgIG1fbW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3
ZWJFdmVudC5tZXRhS2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6
TWV0YUtleTsKKyAgICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAg
ICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1l
c3RhbXAgPSB3ZWJFdmVudC50aW1lc3RhbXAoKTsKIApAQCAtMzgxLDYgKzM4OSw4IEBAIHB1Ymxp
YzoKICAgICAgICAgICAgIG1fbW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAg
IGlmICh3ZWJFdmVudC5tZXRhS2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2Rp
Zmllcjo6TWV0YUtleTsKKyAgICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAg
ICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAg
bV90aW1lc3RhbXAgPSB3ZWJFdmVudC50aW1lc3RhbXAoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvU2hhcmVkL2VmbC9XZWJFdmVudEZhY3RvcnkuY3BwIGIvU291cmNlL1dlYktpdDIv
U2hhcmVkL2VmbC9XZWJFdmVudEZhY3RvcnkuY3BwCmluZGV4IDBiYTExZTAzN2I0MmUxY2ZhMDIy
MzBjNjQyZjlmZWQzMzcyZTc4M2EuLjFlNjBjNGU1ZGZmZTkzZGQ1ODA0N2QwZDczY2FkMjFlNjQ2
ZTUwZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9lZmwvV2ViRXZlbnRGYWN0
b3J5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvZWZsL1dlYkV2ZW50RmFjdG9yeS5j
cHAKQEAgLTI1OCw2ICsyNTgsOCBAQCBzdGF0aWMgaW5saW5lIFdlYkV2ZW50OjpNb2RpZmllcnMg
dG9XZWJFdmVudE1vZGlmaWVycyh1bnNpZ25lZCBtb2RpZmllcnMpCiAgICAgICAgIHJlc3VsdCB8
PSBXZWJFdmVudDo6QWx0S2V5OwogICAgIGlmIChtb2RpZmllcnMgJiBrV0tFdmVudE1vZGlmaWVy
c01ldGFLZXkpCiAgICAgICAgIHJlc3VsdCB8PSBXZWJFdmVudDo6TWV0YUtleTsKKyAgICBpZiAo
bW9kaWZpZXJzICYga1dLRXZlbnRNb2RpZmllcnNDYXBzTG9ja0tleSkKKyAgICAgICAgcmVzdWx0
IHw9IFdlYkV2ZW50OjpDYXBzTG9ja0tleTsKIAogICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJF
dmVudDo6TW9kaWZpZXJzPihyZXN1bHQpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
U2hhcmVkL2lvcy9XZWJJT1NFdmVudEZhY3RvcnkubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
aW9zL1dlYklPU0V2ZW50RmFjdG9yeS5tbQppbmRleCAxMjlmODgyODhiYTRiZGYwZTJhYmI3NmNh
NWFiY2IyYTg0NWY0NTg4Li4xMTdjMDJkZjM3NGMwODQyNDk5MDA3MDE2OGVkYjEyM2JmMDVhNzA1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9y
eS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9yeS5t
bQpAQCAtNDQsNiArNDQsOCBAQCBzdGF0aWMgV2ViS2l0OjpXZWJFdmVudDo6TW9kaWZpZXJzIG1v
ZGlmaWVyc0ZvckV2ZW50KFdlYklPU0V2ZW50ICpldmVudCkKICAgICAgICAgbW9kaWZpZXJzIHw9
IFdlYktpdDo6V2ViRXZlbnQ6OkFsdEtleTsKICAgICBpZiAoZXZlbnRNb2RpZmllckZsYWdzICYg
V2ViRXZlbnRGbGFnTWFza0NvbW1hbmQpCiAgICAgICAgIG1vZGlmaWVycyB8PSBXZWJLaXQ6Oldl
YkV2ZW50OjpNZXRhS2V5OworICAgIGlmIChldmVudE1vZGlmaWVyRmxhZ3MgJiBXZWJFdmVudEZs
YWdNYXNrQWxwaGFTaGlmdCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFdlYktpdDo6V2ViRXZlbnQ6
OkNhcHNMb2NrS2V5OwogCiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFdlYktpdDo6V2ViRXZlbnQ6
Ok1vZGlmaWVycz4obW9kaWZpZXJzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9tYWMvV2ViRXZlbnRGYWN0b3J5Lm1tIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9X
ZWJFdmVudEZhY3RvcnkubW0KaW5kZXggMzkxMzYxY2Y1MzMxMGRiZmY5MTVkMzFiNjU1MGFhNjdl
ZGYxMDk2OS4uYTg1ZWZjYWVlOWE1MmQ4YzA0NTY2NmQ5NGM0OTE4NzBjYTY4YTdkMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KKysrIGIv
U291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KQEAgLTMzOCw4ICsz
MzgsMTkgQEAgc3RhdGljIGlubGluZSBib29sIGlzS2V5VXBFdmVudChOU0V2ZW50ICpldmVudCkK
IHN0YXRpYyBpbmxpbmUgV2ViRXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmllcnNGb3JFdmVudChOU0V2
ZW50ICpldmVudCkKIHsKICAgICB1bnNpZ25lZCBtb2RpZmllcnMgPSAwOwotI3ByYWdtYSBjbGFu
ZyBkaWFnbm9zdGljIHB1c2gKLSNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBpZ25vcmVkICItV2Rl
cHJlY2F0ZWQtZGVjbGFyYXRpb25zIgorCisjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFV
SVJFRCA+PSAxMDEyMDAKKyAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNFdmVudE1v
ZGlmaWVyRmxhZ0NhcHNMb2NrKQorICAgICAgICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6OkNhcHNM
b2NrS2V5OworICAgIGlmIChbZXZlbnQgbW9kaWZpZXJGbGFnc10gJiBOU0V2ZW50TW9kaWZpZXJG
bGFnU2hpZnQpCisgICAgICAgIG1vZGlmaWVycyB8PSBXZWJFdmVudDo6U2hpZnRLZXk7CisgICAg
aWYgKFtldmVudCBtb2RpZmllckZsYWdzXSAmIE5TRXZlbnRNb2RpZmllckZsYWdDb250cm9sKQor
ICAgICAgICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6OkNvbnRyb2xLZXk7CisgICAgaWYgKFtldmVu
dCBtb2RpZmllckZsYWdzXSAmIE5TRXZlbnRNb2RpZmllckZsYWdPcHRpb24pCisgICAgICAgIG1v
ZGlmaWVycyB8PSBXZWJFdmVudDo6QWx0S2V5OworICAgIGlmIChbZXZlbnQgbW9kaWZpZXJGbGFn
c10gJiBOU0V2ZW50TW9kaWZpZXJGbGFnQ29tbWFuZCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFdl
YkV2ZW50OjpNZXRhS2V5OworI2Vsc2UKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYg
TlNBbHBoYVNoaWZ0S2V5TWFzaykKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50OjpDYXBz
TG9ja0tleTsKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNTaGlmdEtleU1hc2sp
CkBAIC0zNTAsNyArMzYxLDggQEAgc3RhdGljIGlubGluZSBXZWJFdmVudDo6TW9kaWZpZXJzIG1v
ZGlmaWVyc0ZvckV2ZW50KE5TRXZlbnQgKmV2ZW50KQogICAgICAgICBtb2RpZmllcnMgfD0gV2Vi
RXZlbnQ6OkFsdEtleTsKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNDb21tYW5k
S2V5TWFzaykKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50OjpNZXRhS2V5OwotI3ByYWdt
YSBjbGFuZyBkaWFnbm9zdGljIHBvcAorI2VuZGlmCisKICAgICByZXR1cm4gKFdlYkV2ZW50OjpN
b2RpZmllcnMpbW9kaWZpZXJzOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL1dLTmF2aWdhdGlvbkFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tCmluZGV4IDk2OTRlZjBhOWIw
YzJhNTY4MmM5YzlhYTQwM2EzZmFkNmJjZTNmYjEuLmJhMTk5NmIyMTc0ZTIzZTQ3Nzg0NjM3ZWQ3
MjEwN2M3NTFiMGMzY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tCkBAIC03OSw4ICs3OSwxOCBAQCBzdGF0
aWMgTlNFdmVudE1vZGlmaWVyRmxhZ3MgdG9OU0V2ZW50TW9kaWZpZXJGbGFncyhXZWJLaXQ6Oldl
YkV2ZW50OjpNb2RpZmllcnMgbQogewogICAgIE5TRXZlbnRNb2RpZmllckZsYWdzIG1vZGlmaWVy
RmxhZ3MgPSAwOwogCi0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcHVzaAotI3ByYWdtYSBjbGFu
ZyBkaWFnbm9zdGljIGlnbm9yZWQgIi1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnMiCisjaWYgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEyMDAKKyAgICBpZiAobW9kaWZpZXJz
ICYgV2ViS2l0OjpXZWJFdmVudDo6Q2Fwc0xvY2tLZXkpCisgICAgICAgIG1vZGlmaWVyRmxhZ3Mg
fD0gTlNFdmVudE1vZGlmaWVyRmxhZ0NhcHNMb2NrOworICAgIGlmIChtb2RpZmllcnMgJiBXZWJL
aXQ6OldlYkV2ZW50OjpTaGlmdEtleSkKKyAgICAgICAgbW9kaWZpZXJGbGFncyB8PSBOU0V2ZW50
TW9kaWZpZXJGbGFnU2hpZnQ7CisgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6
OkNvbnRyb2xLZXkpCisgICAgICAgIG1vZGlmaWVyRmxhZ3MgfD0gTlNFdmVudE1vZGlmaWVyRmxh
Z0NvbnRyb2w7CisgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6OkFsdEtleSkK
KyAgICAgICAgbW9kaWZpZXJGbGFncyB8PSBOU0V2ZW50TW9kaWZpZXJGbGFnT3B0aW9uOworICAg
IGlmIChtb2RpZmllcnMgJiBXZWJLaXQ6OldlYkV2ZW50OjpNZXRhS2V5KQorICAgICAgICBtb2Rp
ZmllckZsYWdzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDb21tYW5kOworI2Vsc2UKICAgICBpZiAo
bW9kaWZpZXJzICYgV2ViS2l0OjpXZWJFdmVudDo6Q2Fwc0xvY2tLZXkpCiAgICAgICAgIG1vZGlm
aWVyRmxhZ3MgfD0gTlNBbHBoYVNoaWZ0S2V5TWFzazsKICAgICBpZiAobW9kaWZpZXJzICYgV2Vi
S2l0OjpXZWJFdmVudDo6U2hpZnRLZXkpCkBAIC05MSw3ICsxMDEsOCBAQCBzdGF0aWMgTlNFdmVu
dE1vZGlmaWVyRmxhZ3MgdG9OU0V2ZW50TW9kaWZpZXJGbGFncyhXZWJLaXQ6OldlYkV2ZW50OjpN
b2RpZmllcnMgbQogICAgICAgICBtb2RpZmllckZsYWdzIHw9IE5TQWx0ZXJuYXRlS2V5TWFzazsK
ICAgICBpZiAobW9kaWZpZXJzICYgV2ViS2l0OjpXZWJFdmVudDo6TWV0YUtleSkKICAgICAgICAg
bW9kaWZpZXJGbGFncyB8PSBOU0NvbW1hbmRLZXlNYXNrOwotI3ByYWdtYSBjbGFuZyBkaWFnbm9z
dGljIHBvcAorI2VuZGlmCisKICAgICByZXR1cm4gbW9kaWZpZXJGbGFnczsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1dlYkF1dG9tYXRpb25TZXNzaW9u
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNl
c3Npb25Db2NvYS5tbQppbmRleCBlMzQzYmI4YTc2NzkwYWIwOTIyNGY1NGE4YzMwZDI4ZTczZDc2
ZGFkLi4xMjFkOGYwODU5NGY1OTRmZThiZjNlNTZhNDVhMThiMmNjNDQ1ZDFjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNlc3Npb25Db2Nv
YS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNl
c3Npb25Db2NvYS5tbQpAQCAtMTA3LDYgKzEwNyw4IEBAIHZvaWQgV2ViQXV0b21hdGlvblNlc3Np
b246OnBsYXRmb3JtU2ltdWxhdGVNb3VzZUludGVyYWN0aW9uKFdlYlBhZ2VQcm94eSYgcGFnZSwK
ICAgICAgICAgbW9kaWZpZXJzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDb250cm9sOwogICAgIGlm
IChrZXlNb2RpZmllcnMgJiBXZWJFdmVudDo6U2hpZnRLZXkpCiAgICAgICAgIG1vZGlmaWVycyB8
PSBOU0V2ZW50TW9kaWZpZXJGbGFnU2hpZnQ7CisgICAgaWYgKGtleU1vZGlmaWVycyAmIFdlYkV2
ZW50OjpDYXBzTG9ja0tleSkKKyAgICAgICAgbW9kaWZpZXJzIHw9IE5TRXZlbnRNb2RpZmllckZs
YWdDYXBzTG9jazsKIAogICAgIE5TVGltZUludGVydmFsIHRpbWVzdGFtcCA9IFtOU0RhdGUgdGlt
ZUludGVydmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKICAgICBOU1dpbmRvdyAqd2luZG93ID0gcGFn
ZS5wbGF0Zm9ybVdpbmRvdygpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMv
Q2hhbmdlTG9nCmluZGV4IGJlZjE5ZjE2OTYwNzdkNzBkYmYwZTJmODU0Y2FlYmJiM2FlM2YxMjMu
LjIwZjU0NzRmZDUzZjhiYzZhMWI3ZmRhMGUyZTRjNmYwZDc0N2ExYzkgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAx
Ni0xMC0wNSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEtleWJv
YXJkRXZlbnQuZ2V0TW9kaWZpZXJTdGF0ZSgpIHNob3VsZCBzdXBwb3J0ICJDYXBzTG9jayIgbW9k
aWZpZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2
Mjg2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFk
ZCBzdXBwb3J0IGZvciAnY2Fwc0xvY2tLZXknIG1vZGlmaWVyIGZvciBFdmVudFNlbmRlci5rZXlE
b3duKCkgc28KKyAgICAgICAgdGhhdCB3ZSBjYW4gdGVzdCB0aGlzIG5ldyBtb2RpZmllciBzdXBw
b3J0IGZvciBsYXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL21hYy9QbGF0
Zm9ybVdlYlZpZXdNYWMubW06CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjptb2RpZmllckZsYWdz
Rm9yV0tNb2RpZmllcnMpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5k
bGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXVFI6OnBhcnNlTW9kaWZp
ZXIpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW06
CisgICAgICAgIChXVFI6OmJ1aWxkTW9kaWZpZXJGbGFncyk6CisKIDIwMTYtMTAtMDUgIFphbiBE
b2JlcnNlayAgPHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVf
RU5DUllQVEVEX01FRElBX1YyIHRvIEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBCmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0gYi9U
b29scy9UZXN0V2ViS2l0QVBJL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0KaW5kZXggMzE1OWNl
Y2I0YTA5Yzc3NmNlMzJjM2Q3MDE1YTZiNWZmYjY4NWNlNi4uYWQzNWY1ODZjZjcyMzU5YTNiN2U5
MTM2ZjllYmViYTE2MjJmN2M3ZCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9tYWMv
UGxhdGZvcm1XZWJWaWV3TWFjLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvbWFjL1BsYXRm
b3JtV2ViVmlld01hYy5tbQpAQCAtMjIwLDYgKzIyMCw4IEBAIHN0YXRpYyBOU0V2ZW50TW9kaWZp
ZXJGbGFncyBtb2RpZmllckZsYWdzRm9yV0tNb2RpZmllcnMoV0tFdmVudE1vZGlmaWVycyBtb2Rp
ZmllCiAgICAgICAgIHJldHVyblZhbCB8PSBOU0FsdGVybmF0ZUtleU1hc2s7CiAgICAgaWYgKG1v
ZGlmaWVycyAmIGtXS0V2ZW50TW9kaWZpZXJzTWV0YUtleSkKICAgICAgICAgcmV0dXJuVmFsIHw9
IE5TQ29tbWFuZEtleU1hc2s7CisgICAgaWYgKG1vZGlmaWVycyAmIGtXS0V2ZW50TW9kaWZpZXJz
Q2Fwc0xvY2tLZXkpCisgICAgICAgIHJldHVyblZhbCB8PSBOU0FscGhhU2hpZnRLZXlNYXNrOwog
CiAgICAgcmV0dXJuIHJldHVyblZhbDsKIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAgYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuY3Bw
CmluZGV4IDBmYWEyZjM5ODNjZjdhOTFlNzkxZmRmNzQ0MWY0Y2Q5ZDllOWYzNTIuLjNlODFkYjlk
MzI5NDczMzIwZjQyZGMwOTc5ODYyZWI3ZDBlMTZjZDcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAKKysr
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250
cm9sbGVyLmNwcApAQCAtMTE2LDYgKzExNiw4IEBAIHN0YXRpYyBXS0V2ZW50TW9kaWZpZXJzIHBh
cnNlTW9kaWZpZXIoSlNTdHJpbmdSZWYgbW9kaWZpZXIpCiAgICAgICAgIHJldHVybiBrV0tFdmVu
dE1vZGlmaWVyc0FsdEtleTsKICAgICBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyht
b2RpZmllciwgIm1ldGFLZXkiKSkKICAgICAgICAgcmV0dXJuIGtXS0V2ZW50TW9kaWZpZXJzTWV0
YUtleTsKKyAgICBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0cmluZyhtb2RpZmllciwgImNh
cHNMb2NrS2V5IikpCisgICAgICAgIHJldHVybiBrV0tFdmVudE1vZGlmaWVyc0NhcHNMb2NrS2V5
OwogICAgIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1vZGlmaWVyLCAiYWRkU2Vs
ZWN0aW9uS2V5IikpIHsKICNpZiBPUyhNQUNfT1NfWCkKICAgICAgICAgcmV0dXJuIGtXS0V2ZW50
TW9kaWZpZXJzTWV0YUtleTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFj
L0V2ZW50U2VuZGVyUHJveHkubW0gYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNl
bmRlclByb3h5Lm1tCmluZGV4IDE5YjVhMzdiMzZkZDEyYjc0MDIyMWUzNjM3YjA0YjFmNjgyNTE0
ZGYuLmNhZmMzZWRkYTliZjg1ZWUxMDY1YWZkZTA4OWYxNjQ5MzU2NDFlNmIgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW0KKysrIGIvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXJQcm94eS5tbQpAQCAtMjUwLDYgKzI1
MCw4IEBAIHN0YXRpYyBpbnQgYnVpbGRNb2RpZmllckZsYWdzKFdLRXZlbnRNb2RpZmllcnMgbW9k
aWZpZXJzKQogICAgICAgICBmbGFncyB8PSBOU0FsdGVybmF0ZUtleU1hc2s7CiAgICAgaWYgKG1v
ZGlmaWVycyAmIGtXS0V2ZW50TW9kaWZpZXJzTWV0YUtleSkKICAgICAgICAgZmxhZ3MgfD0gTlND
b21tYW5kS2V5TWFzazsKKyAgICBpZiAobW9kaWZpZXJzICYga1dLRXZlbnRNb2RpZmllcnNDYXBz
TG9ja0tleSkKKyAgICAgICAgZmxhZ3MgfD0gTlNBbHBoYVNoaWZ0S2V5TWFzazsKICAgICByZXR1
cm4gZmxhZ3M7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmYjc0YWEwZDUxNmY3Njg5YTU4NDI5MzkxYjg5NGNlMGE4
MTc2YTJmLi5hMDQ2NmI0NjczMzBlMWM1MzU3YWQ2NGRmM2JhMTQwYTEwODg3ODI5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTYtMTAtMDUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KKworICAgICAgICBLZXlib2FyZEV2ZW50LmdldE1vZGlmaWVyU3RhdGUoKSBzaG91bGQgc3Vw
cG9ydCAiQ2Fwc0xvY2siIG1vZGlmaWVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjI4NjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBFeHRlbmQgbGF5b3V0IHRlc3QgY292ZXJhZ2UgdG8gY292ZXIgJ0Nh
cHMgTG9jaycgbW9kaWZpZXIuCisKKyAgICAgICAgKiBmYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1l
dmVudHMtaW4taW5wdXQtdGV4dC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9ldmVudHMv
c3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRtbDoKKwogMjAxNi0xMC0wNSAgRGFu
aWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW1dLMl1bTmV0d29ya1Nl
c3Npb25dIFBpbmcgcmVxdWVzdHMgc2hvdWxkIGZvbGxvdyByZWRpcmVjdHMgaWYgYXBwbGljYWJs
ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvc3BlY2lhbC1rZXktZXZlbnRz
LWluLWlucHV0LXRleHQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvc3Bl
Y2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQtZXhwZWN0ZWQudHh0CmluZGV4IDU5N2I3NzRh
ZjRkNGZkZjU4NzBjMmQ4NjcwZjc1YWNmYzNkYmYxOTMuLjg2NzA2ZDgzZmJiOTRmOWJmZjM4NDc3
NTQyYzkzZDJjMzA0OTQ2MmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Nw
ZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC1leHBlY3Rl
ZC50eHQKQEAgLTEsNDkgKzEsNTUgQEAKIFRoaXMgdGVzdCB2ZXJpZmllcyB0aGF0IHRoZSBjb3Jy
ZWN0IHNlcXVlbmNlIG9mIGtleWJvYXJkIGV2ZW50cyBpcyBnZW5lcmF0ZWQgZm9yIGEga2V5cHJl
c3MgZm9yIGNlcnRhaW4gc3BlY2lhbCBrZXlzLiBUbyB0ZXN0IG1hbnVhbGx5LCBwcmVzcyBrZXlz
IGFuZCBjb21wYXJlIHJlc3VsdHMgdG8gb3RoZXIgYnJvd3NlcnMuCiAKIAotdGFyZ2V0IC0gdHlw
ZSAtIGN0cmxLZXksYWx0S2V5LHNoaWZ0S2V5LG1ldGFLZXkgLSBrZXkgLSBjb2RlIC0ga2V5SWRl
bnRpZmllciAtIGtleUNvZGUgLSBjaGFyQ29kZQordGFyZ2V0IC0gdHlwZSAtIGN0cmxLZXksYWx0
S2V5LHNoaWZ0S2V5LG1ldGFLZXksY2Fwc0xvY2tLZXkgLSBrZXkgLSBjb2RlIC0ga2V5SWRlbnRp
ZmllciAtIGtleUNvZGUgLSBjaGFyQ29kZQogCiBBbXBlcnNhbmQ6Ci1JTlBVVCAtIGtleWRvd24g
LSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gNyAtIERpZ2l0NyAtIFUrMDAzNyAtIDU1IC0gMC4g
VmFsdWU6ICIiLgotSU5QVVQgLSBrZXlwcmVzcyAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSA3
IC0gRGlnaXQ3IC0gLSA1NSAtIDU1LiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleWRvd24gLSBmYWxz
ZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gNyAtIERpZ2l0NyAtIFUrMDAzNyAtIDU1IC0gMC4g
VmFsdWU6ICIiLgorSU5QVVQgLSBrZXlwcmVzcyAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFs
c2UgLSA3IC0gRGlnaXQ3IC0gLSA1NSAtIDU1LiBWYWx1ZTogIiIuCiBJTlBVVCAtIHRleHRJbnB1
dCAtIDcuIFZhbHVlOiAiIi4KLUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNl
IC0gNyAtIERpZ2l0NyAtIFUrMDAzNyAtIDU1IC0gMC4gVmFsdWU6ICI3Ii4KK0lOUFVUIC0ga2V5
dXAgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gNyAtIERpZ2l0NyAtIFUrMDAzNyAt
IDU1IC0gMC4gVmFsdWU6ICI3Ii4KIAogQmFja3NwYWNlOgotSU5QVVQgLSBrZXlkb3duIC0gZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4
IC0gMC4gVmFsdWU6ICI3Ii4KLUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxz
ZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIiIuCitJ
TlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFj
ZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIjciLgorSU5QVVQgLSBrZXl1
cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNl
IC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiIi4KIAogUGVyY2VudDoKLUlOUFVUIC0ga2V5ZG93
biAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSA1IC0gRGlnaXQ1IC0gVSswMDM1IC0gNTMgLSAw
LiBWYWx1ZTogIiIuCi1JTlBVVCAtIGtleXByZXNzIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAt
IDUgLSBEaWdpdDUgLSAtIDUzIC0gNTMuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93biAtIGZh
bHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UgLSA1IC0gRGlnaXQ1IC0gVSswMDM1IC0gNTMgLSAw
LiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleXByZXNzIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxm
YWxzZSAtIDUgLSBEaWdpdDUgLSAtIDUzIC0gNTMuIFZhbHVlOiAiIi4KIElOUFVUIC0gdGV4dElu
cHV0IC0gNS4gVmFsdWU6ICIiLgotSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLHRydWUsZmFs
c2UgLSA1IC0gRGlnaXQ1IC0gVSswMDM1IC0gNTMgLSAwLiBWYWx1ZTogIjUiLgorSU5QVVQgLSBr
ZXl1cCAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UgLSA1IC0gRGlnaXQ1IC0gVSswMDM1
IC0gNTMgLSAwLiBWYWx1ZTogIjUiLgogCiBCYWNrc3BhY2U6Ci1JTlBVVCAtIGtleWRvd24gLSBm
YWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAt
IDggLSAwLiBWYWx1ZTogIjUiLgotSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZh
bHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiIi4K
K0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3Nw
YWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiNSIuCitJTlBVVCAtIGtl
eXVwIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3Bh
Y2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6ICIiLgogCiBMZWZ0IHBhcmVudGhlc2lzOgotSU5Q
VVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDkgLSBEaWdpdDkgLSBVKzAw
MzkgLSA1NyAtIDAuIFZhbHVlOiAiIi4KLUlOUFVUIC0ga2V5cHJlc3MgLSBmYWxzZSxmYWxzZSx0
cnVlLGZhbHNlIC0gOSAtIERpZ2l0OSAtIC0gNTcgLSA1Ny4gVmFsdWU6ICIiLgorSU5QVVQgLSBr
ZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDkgLSBEaWdpdDkgLSBVKzAw
MzkgLSA1NyAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5cHJlc3MgLSBmYWxzZSxmYWxzZSx0
cnVlLGZhbHNlLGZhbHNlIC0gOSAtIERpZ2l0OSAtIC0gNTcgLSA1Ny4gVmFsdWU6ICIiLgogSU5Q
VVQgLSB0ZXh0SW5wdXQgLSA5LiBWYWx1ZTogIiIuCi1JTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFs
c2UsdHJ1ZSxmYWxzZSAtIDkgLSBEaWdpdDkgLSBVKzAwMzkgLSA1NyAtIDAuIFZhbHVlOiAiOSIu
CitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDkgLSBEaWdp
dDkgLSBVKzAwMzkgLSA1NyAtIDAuIFZhbHVlOiAiOSIuCiAKIEJhY2tzcGFjZToKLUlOUFVUIC0g
a2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNl
IC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiOSIuCi1JTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4g
VmFsdWU6ICIiLgorSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFs
c2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6ICI5Ii4K
K0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFj
ZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIiIuCiAKIFJpZ2h0IHBhcmVu
dGhlc2lzOgotSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDAgLSBE
aWdpdDAgLSBVKzAwMzAgLSA0OCAtIDAuIFZhbHVlOiAiIi4KLUlOUFVUIC0ga2V5cHJlc3MgLSBm
YWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gMCAtIERpZ2l0MCAtIC0gNDggLSA0OC4gVmFsdWU6ICIi
LgorSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDAgLSBE
aWdpdDAgLSBVKzAwMzAgLSA0OCAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5cHJlc3MgLSBm
YWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gMCAtIERpZ2l0MCAtIC0gNDggLSA0OC4gVmFs
dWU6ICIiLgogSU5QVVQgLSB0ZXh0SW5wdXQgLSAwLiBWYWx1ZTogIiIuCi1JTlBVVCAtIGtleXVw
IC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDAgLSBEaWdpdDAgLSBVKzAwMzAgLSA0OCAtIDAu
IFZhbHVlOiAiMCIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxz
ZSAtIDAgLSBEaWdpdDAgLSBVKzAwMzAgLSA0OCAtIDAuIFZhbHVlOiAiMCIuCiAKIEJhY2tzcGFj
ZToKLUlOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNl
IC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiMCIuCi1JTlBVVCAtIGtleXVw
IC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAw
MDggLSA4IC0gMC4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4g
VmFsdWU6ICIwIi4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxz
ZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIiIuCiAK
IFByaW50IHNjcmVlbjoKLUlOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNl
IC0gUHJpbnRTY3JlZW4gLSBLZXlBIC0gUHJpbnRTY3JlZW4gLSA0NCAtIDAuIFZhbHVlOiAiIi4K
LUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIFByaW50U2NyZWVuIC0g
S2V5QSAtIFByaW50U2NyZWVuIC0gNDQgLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleWRvd24g
LSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIFByaW50U2NyZWVuIC0gS2V5QSAtIFBy
aW50U2NyZWVuIC0gNDQgLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBQcmludFNjcmVlbiAtIEtleUEgLSBQcmludFNjcmVlbiAt
IDQ0IC0gMC4gVmFsdWU6ICIiLgorCisnYScga2V5IHdpdGggQ2FwcyBMb2NrOgorSU5QVVQgLSBr
ZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSAtIGEgLSBLZXlBIC0gVSswMDQx
IC0gNjUgLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleXByZXNzIC0gZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UsdHJ1ZSAtIGEgLSBLZXlBIC0gLSA5NyAtIDk3LiBWYWx1ZTogIiIuCitJTlBVVCAt
IHRleHRJbnB1dCAtIGEuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxm
YWxzZSxmYWxzZSx0cnVlIC0gYSAtIEtleUEgLSBVKzAwNDEgLSA2NSAtIDAuIFZhbHVlOiAiYSIu
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50
cy1pbi1pbnB1dC10ZXh0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9zcGVjaWFsLWtl
eS1ldmVudHMtaW4taW5wdXQtdGV4dC5odG1sCmluZGV4IDc3ODEyZTllMGY2NjRhZjJmN2ExYjg2
MGYwYWFmNTg4ZjgzMzI4M2EuLjg5N2MxMjBmNzFjZTgxY2M0NDZlM2MyZWJkM2U1ZWE4M2QyZDBi
ZjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50
cy1pbi1pbnB1dC10ZXh0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvc3BlY2lh
bC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRtbApAQCAtMTcsNyArMTcsNyBAQCBmdW5jdGlv
biBsb2dFdmVudChlKSB7CiAgICBpZiAodHlwZSA9PSAidGV4dElucHV0IikgewogICAgICBpbmZv
ICs9IGUuZGF0YTsKICAgIH0gZWxzZSBpZiAodHlwZSA9PSAia2V5ZG93biIgfHwgdHlwZSA9PSAi
a2V5cHJlc3MiIHx8IHR5cGUgPT0gImtleXVwIikgewotICAgICBpbmZvICs9IFtlLmN0cmxLZXks
IGUuYWx0S2V5LCBlLnNoaWZ0S2V5LCBlLm1ldGFLZXldICsKKyAgICAgaW5mbyArPSBbZS5jdHJs
S2V5LCBlLmFsdEtleSwgZS5zaGlmdEtleSwgZS5tZXRhS2V5LCBlLmdldE1vZGlmaWVyU3RhdGUo
J0NhcHNMb2NrJyldICsKICAgICAgICAgICcgLSAnICsgZS5rZXkgKwogICAgICAgICAgJyAtICcg
KyBlLmNvZGUgKwogICAgICAgICAgJyAtICcgKyBlLmtleUlkZW50aWZpZXIgKwpAQCAtMjgsNyAr
MjgsNyBAQCBmdW5jdGlvbiBsb2dFdmVudChlKSB7CiAgICBsb2coaW5mbyk7CiB9CiAKLWxvZygi
dGFyZ2V0IC0gdHlwZSAtICIgKyBbImN0cmxLZXkiLCAiYWx0S2V5IiwgInNoaWZ0S2V5IiwgIm1l
dGFLZXkiXQorbG9nKCJ0YXJnZXQgLSB0eXBlIC0gIiArIFsiY3RybEtleSIsICJhbHRLZXkiLCAi
c2hpZnRLZXkiLCAibWV0YUtleSIsICJjYXBzTG9ja0tleSJdCiAgICAgICAgKyAnIC0gJyArICJr
ZXkiCiAgICAgICAgKyAnIC0gJyArICJjb2RlIgogICAgICAgICsgJyAtICcgKyAia2V5SWRlbnRp
ZmllciIKQEAgLTYyLDYgKzYyLDggQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiAgICBldmVu
dFNlbmRlci5rZXlEb3duKCJceDA4IiwgW10pOwogICAgbG9nKCI8YnI+UHJpbnQgc2NyZWVuOiIp
OwogICAgZXZlbnRTZW5kZXIua2V5RG93bigicHJpbnRTY3JlZW4iLCBbXSk7CisgICBsb2coIjxi
cj4nYScga2V5IHdpdGggQ2FwcyBMb2NrOiIpOworICAgZXZlbnRTZW5kZXIua2V5RG93bigiYSIs
IFsiY2Fwc0xvY2tLZXkiXSk7CiAgIH0KIDwvc2NyaXB0PgogPC9ib2R5PjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290741</attachid>
            <date>2016-10-05 12:42:40 -0700</date>
            <delta_ts>2016-10-05 13:08:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162861-20161005123927.patch</filename>
            <type>text/plain</type>
            <size>28796</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2ODEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwZDcwZDY1OGJhNzRj
MzIzZTkxYjU2NWRkMzYwY2FhYTlhZDUyMi4uNGYyNDBjNWU2NzM0YmU0NjAxNDAyYWNkNWVlYzAy
YTRhMDE3Zjk5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE2LTEwLTA1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgS2V5Ym9hcmRFdmVudC5nZXRN
b2RpZmllclN0YXRlKCkgc2hvdWxkIHN1cHBvcnQgIkNhcHNMb2NrIiBtb2RpZmllcgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyODYxCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yICJD
YXBzTG9jayIgbW9kaWZpZXIgb24gTWFjIC8gaU9TIGZvciBLZXlib2FyZEV2ZW50J3MKKyAgICAg
ICAgZ2V0TW9kaWZpZXJTdGF0ZSgpIEFQSSwgYXMgcGVyOgorICAgICAgICAtIGh0dHBzOi8vdzNj
LmdpdGh1Yi5pby91aWV2ZW50cy8jZG9tLWtleWJvYXJkZXZlbnQtZ2V0bW9kaWZpZXJzdGF0ZQor
CisgICAgICAgIE5vIG5ldyB0ZXN0cywgdXBkYXRlZCBleGlzdGluZyB0ZXN0LgorCisgICAgICAg
ICogZG9tL0tleWJvYXJkRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5Ym9hcmRFdmVu
dDo6S2V5Ym9hcmRFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpLZXlib2FyZEV2ZW50OjpnZXRN
b2RpZmllclN0YXRlKToKKyAgICAgICAgKiBkb20vS2V5Ym9hcmRFdmVudC5oOgorICAgICAgICAq
IHBsYXRmb3JtL1BsYXRmb3JtRXZlbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvUGxhdGZv
cm1FdmVudEZhY3RvcnlJT1MubW06CisgICAgICAgIChXZWJDb3JlOjptb2RpZmllcnNGb3JFdmVu
dCk6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tOgor
ICAgICAgICAoV2ViQ29yZTo6a2V5SWRlbnRpZmllckZvcktleUV2ZW50KToKKworMjAxNi0xMC0w
NSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCiAgICAgICAgIFtCaW5kaW5nc10g
RGVjbGFyZSBkaWN0aW9uYXJ5IC8gZW51bWVyYXRpb24gdGVtcGxhdGUgc3BlY2lhbGl6YXRpb25z
IGluIHRoZSBoZWFkZXIKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE2MjkyOQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZWNiNjNjYjNiMjA0ZGQ3MmIyMzA4YmRlNzdj
MzlmOTAwYTc1MGE2MS4uNmY0YWY1ZWE5NjI2Mzg2MDg0Y2YzNTdmMTc5YzEzN2NmY2Y0YTY5MiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE2LTEwLTA1ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgS2V5Ym9hcmRFdmVudC5nZXRNb2RpZmllclN0YXRl
KCkgc2hvdWxkIHN1cHBvcnQgIkNhcHNMb2NrIiBtb2RpZmllcgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyODYxCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENhcHNMb2NrIG1vZGlm
aWVyIG9uIGV2ZW50cy4KKworICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS0V2ZW50Lmg6CisgICAg
ICAgICogU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oOgorICAgICAgICAoV2ViS2l0Ojp0
b0FQSSk6CisgICAgICAgICogU2hhcmVkL1dlYkV2ZW50Q29udmVyc2lvbi5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYktpdDJQbGF0Zm9ybU1vdXNlRXZlbnQ6OldlYktpdDJQbGF0Zm9ybU1vdXNl
RXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJLaXQyUGxhdGZvcm1XaGVlbEV2ZW50OjpXZWJL
aXQyUGxhdGZvcm1XaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViS2l0MlBsYXRmb3Jt
S2V5Ym9hcmRFdmVudDo6V2ViS2l0MlBsYXRmb3JtS2V5Ym9hcmRFdmVudCk6CisgICAgICAgIChX
ZWJLaXQ6OldlYktpdDJQbGF0Zm9ybVRvdWNoRXZlbnQ6OldlYktpdDJQbGF0Zm9ybVRvdWNoRXZl
bnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJLaXQyUGxhdGZvcm1HZXN0dXJlRXZlbnQ6OldlYktp
dDJQbGF0Zm9ybUdlc3R1cmVFdmVudCk6CisgICAgICAgICogU2hhcmVkL2VmbC9XZWJFdmVudEZh
Y3RvcnkuY3BwOgorICAgICAgICAoV2ViS2l0Ojp0b1dlYkV2ZW50TW9kaWZpZXJzKToKKyAgICAg
ICAgKiBTaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKG1vZGlmaWVy
c0ZvckV2ZW50KToKKyAgICAgICAgKiBTaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbToKKyAg
ICAgICAgKFdlYktpdDo6bW9kaWZpZXJzRm9yRXZlbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tOgorICAgICAgICAodG9OU0V2ZW50TW9kaWZp
ZXJGbGFncyk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYkF1dG9tYXRpb25TZXNzaW9u
Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYkF1dG9tYXRpb25TZXNzaW9uOjpwbGF0Zm9y
bVNpbXVsYXRlTW91c2VJbnRlcmFjdGlvbik6CisKIDIwMTYtMTAtMDUgIFphbiBEb2JlcnNlayAg
PHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVfRU5DUllQVEVE
X01FRElBX1YyIHRvIEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
S2V5Ym9hcmRFdmVudC5jcHAKaW5kZXggNDIyNDMyZmQ4YTk1NDk4OWZhMWM2MGQ3NWNhN2MzOTk3
ZGI1NDY5My4uMjI3NjI4MGRhNTI4ZTZjMTc5YzdmNmQxYmE5YzJhNjQzYmNkZjc2YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZlbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmNwcApAQCAtMTA4LDYgKzEwOCw3IEBAIEtleWJvYXJk
RXZlbnQ6OktleWJvYXJkRXZlbnQoY29uc3QgUGxhdGZvcm1LZXlib2FyZEV2ZW50JiBrZXksIERP
TVdpbmRvdyogdmlldykKICAgICAsIG1fbG9jYXRpb24oa2V5TG9jYXRpb25Db2RlKGtleSkpCiAg
ICAgLCBtX3JlcGVhdChrZXkuaXNBdXRvUmVwZWF0KCkpCiAgICAgLCBtX2FsdEdyYXBoS2V5KGZh
bHNlKQorICAgICwgbV9jYXBzTG9ja0tleShrZXkubW9kaWZpZXJzKCkuY29udGFpbnMoUGxhdGZv
cm1FdmVudDo6TW9kaWZpZXI6OkNhcHNMb2NrS2V5KSkKICAgICAsIG1faXNDb21wb3Npbmcodmll
dyAmJiB2aWV3LT5mcmFtZSgpICYmIHZpZXctPmZyYW1lKCktPmVkaXRvcigpLmhhc0NvbXBvc2l0
aW9uKCkpCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaWYgVVNFKEFQUEtJVCkKQEAgLTEzNyw3ICsx
MzgsOCBAQCBLZXlib2FyZEV2ZW50OjpLZXlib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYg
ZXZlbnRUeXBlLCBjb25zdCBLZXlib2FyZEV2ZW50SQogICAgICwgbV9rZXlJZGVudGlmaWVyKGlu
aXRpYWxpemVyLmtleUlkZW50aWZpZXIpCiAgICAgLCBtX2xvY2F0aW9uKGluaXRpYWxpemVyLmxv
Y2F0aW9uKQogICAgICwgbV9yZXBlYXQoaW5pdGlhbGl6ZXIucmVwZWF0KQotICAgICwgbV9hbHRH
cmFwaEtleShmYWxzZSkKKyAgICAsIG1fYWx0R3JhcGhLZXkoZmFsc2UpIC8vIEZJWE1FOiBzaG91
bGQgYmUgaW5pdGlhbGl6ZWQgZnJvbSBpbml0aWFsaXplci5tb2RpZmllckFsdEdyYXBoLgorICAg
ICwgbV9jYXBzTG9ja0tleShmYWxzZSkgLy8gRklYTUU6IHNob3VsZCBiZSBpbml0aWFsaXplZCBm
cm9tIGluaXRpYWxpemVyLm1vZGlmaWVyQ2Fwc0xvY2suCiAgICAgLCBtX2lzQ29tcG9zaW5nKGlu
aXRpYWxpemVyLmlzQ29tcG9zaW5nKQogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgICwgbV9oYW5k
bGVkQnlJbnB1dE1ldGhvZChmYWxzZSkKQEAgLTE3OSw3ICsxODEsOSBAQCBib29sIEtleWJvYXJk
RXZlbnQ6OmdldE1vZGlmaWVyU3RhdGUoY29uc3QgU3RyaW5nJiBrZXlJZGVudGlmaWVyKSBjb25z
dAogICAgICAgICByZXR1cm4gbWV0YUtleSgpOwogICAgIGlmIChrZXlJZGVudGlmaWVyID09ICJB
bHRHcmFwaCIpCiAgICAgICAgIHJldHVybiBhbHRHcmFwaEtleSgpOwotICAgIC8vIEZJWE1FOiBX
ZSBzaG91bGQgc3VwcG9ydCBDYXBzTG9jaywgRm4sIEZuTG9jaywgSHlwZXIsIE51bUxvY2ssIFN1
cGVyLCBTY3JvbGxMb2NrLCBTeW1ib2wsIFN5bWJvbExvY2suCisgICAgaWYgKGtleUlkZW50aWZp
ZXIgPT0gIkNhcHNMb2NrIikKKyAgICAgICAgcmV0dXJuIG1fY2Fwc0xvY2tLZXk7CisgICAgLy8g
RklYTUU6IFRoZSBzcGVjaWZpY2F0aW9uIGFsc28gaGFzIEZuLCBGbkxvY2ssIEh5cGVyLCBOdW1M
b2NrLCBTdXBlciwgU2Nyb2xsTG9jaywgU3ltYm9sLCBTeW1ib2xMb2NrLgogICAgIHJldHVybiBm
YWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZlbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmgKaW5kZXggYmYzZTk1MzE0ZTBi
OTRiMTU4ZDU4N2RjODgyN2Q0NTUwNjA2ODhkMy4uN2I4YTYzZTc1YzA5Yzg0NzVmNGYyZTMyYjc0
ZDA5YzllYmExMzAxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZl
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5oCkBAIC0xMzYsNiAr
MTM2LDcgQEAgcHJpdmF0ZToKICAgICB1bnNpZ25lZCBtX2xvY2F0aW9uIHsgRE9NX0tFWV9MT0NB
VElPTl9TVEFOREFSRCB9OwogICAgIGJvb2wgbV9yZXBlYXQgeyBmYWxzZSB9OwogICAgIGJvb2wg
bV9hbHRHcmFwaEtleSB7IGZhbHNlIH07CisgICAgYm9vbCBtX2NhcHNMb2NrS2V5IHsgZmFsc2Ug
fTsKICAgICBib29sIG1faXNDb21wb3NpbmcgeyBmYWxzZSB9OwogCiAjaWYgUExBVEZPUk0oQ09D
T0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUV2ZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUV2ZW50LmgKaW5kZXggY2E1NGI3ZWZk
ZWMwMzM2OWJlMzE3NGM3NzdlMWMzZmFjOTU2ZTMxYy4uNWNiNDc4NDcxZDY2YThlYzk2YTU0OGRm
NDkwOGU1ODdlODFkODVlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGxh
dGZvcm1FdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtRXZlbnQu
aApAQCAtNzQsNiArNzQsNyBAQCBwdWJsaWM6CiAgICAgICAgIEN0cmxLZXkgICAgID0gMSA8PCAx
LAogICAgICAgICBNZXRhS2V5ICAgICA9IDEgPDwgMiwKICAgICAgICAgU2hpZnRLZXkgICAgPSAx
IDw8IDMsCisgICAgICAgIENhcHNMb2NrS2V5ID0gMSA8PCA0LAogICAgIH07CiAKICAgICBUeXBl
IHR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxUeXBlPihtX3R5cGUpOyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZvcm1FdmVudEZhY3RvcnlJ
T1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZvcm1FdmVudEZhY3RvcnlJ
T1MubW0KaW5kZXggZmEyY2I5Njc0MWIyMTY5YTBjZTY1Njg4MDVjZWViNDA0ZWIwNzZjOC4uZTIw
ZTE4ZjBiMTljNjQxOGNiOGNkN2NjZTYyOWZhOTY2NTZiZDY3NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXRmb3JtRXZlbnRGYWN0b3J5SU9TLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9QbGF0Zm9ybUV2ZW50RmFjdG9yeUlPUy5tbQpAQCAt
NDcsNiArNDcsOCBAQCBzdGF0aWMgT3B0aW9uU2V0PFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyPiBt
b2RpZmllcnNGb3JFdmVudChXZWJFdmVudCAqZXZlbnQpCiAgICAgICAgIG1vZGlmaWVycyB8PSBQ
bGF0Zm9ybUV2ZW50OjpNb2RpZmllcjo6QWx0S2V5OwogICAgIGlmIChldmVudC5tb2RpZmllckZs
YWdzICYgV2ViRXZlbnRGbGFnTWFza0NvbW1hbmQpCiAgICAgICAgIG1vZGlmaWVycyB8PSBQbGF0
Zm9ybUV2ZW50OjpNb2RpZmllcjo6TWV0YUtleTsKKyAgICBpZiAoZXZlbnQubW9kaWZpZXJGbGFn
cyAmIFdlYkV2ZW50RmxhZ01hc2tBbHBoYVNoaWZ0KQorICAgICAgICBtb2RpZmllcnMgfD0gUGxh
dGZvcm1FdmVudDo6TW9kaWZpZXI6OkNhcHNMb2NrS2V5OwogCiAgICAgcmV0dXJuIG1vZGlmaWVy
czsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2
ZW50RmFjdG9yeU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2
ZW50RmFjdG9yeU1hYy5tbQppbmRleCBjODdhNDQ2OTliYmJmNmU5YzJlNjQ4ZDViZWJjODMyN2E5
MjAxMDdmLi4yY2VjZDI5YmYwZjIxNDA0NjRkODVkNTNhNzYyNjA0MmE4NjkyNWI2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5
TWFjLm1tCkBAIC02OTAsOSArNjkwLDIwIEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0tleVVwRXZl
bnQoTlNFdmVudCAqZXZlbnQpCiAKIHN0YXRpYyBpbmxpbmUgT3B0aW9uU2V0PFBsYXRmb3JtRXZl
bnQ6Ok1vZGlmaWVyPiBtb2RpZmllcnNGb3JFdmVudChOU0V2ZW50ICpldmVudCkKIHsKLSNwcmFn
bWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCi0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3Jl
ZCAiLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9ucyIKICAgICBPcHRpb25TZXQ8UGxhdGZvcm1FdmVu
dDo6TW9kaWZpZXI+IG1vZGlmaWVyczsKKworI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVR
VUlSRUQgPj0gMTAxMjAwCisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2ZW50TW9k
aWZpZXJGbGFnU2hpZnQpCisgICAgICAgIG1vZGlmaWVycyB8PSBQbGF0Zm9ybUV2ZW50OjpNb2Rp
Zmllcjo6U2hpZnRLZXk7CisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2ZW50TW9k
aWZpZXJGbGFnQ29udHJvbCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1v
ZGlmaWVyOjpDdHJsS2V5OworICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlNFdmVudE1v
ZGlmaWVyRmxhZ09wdGlvbikKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1v
ZGlmaWVyOjpBbHRLZXk7CisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2ZW50TW9k
aWZpZXJGbGFnQ29tbWFuZCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1v
ZGlmaWVyOjpNZXRhS2V5OworICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlNFdmVudE1v
ZGlmaWVyRmxhZ0NhcHNMb2NrKQorICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6
TW9kaWZpZXI6OkNhcHNMb2NrS2V5OworI2Vsc2UKICAgICBpZiAoZXZlbnQubW9kaWZpZXJGbGFn
cyAmIE5TU2hpZnRLZXlNYXNrKQogICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6
TW9kaWZpZXI6OlNoaWZ0S2V5OwogICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlNDb250
cm9sS2V5TWFzaykKQEAgLTcwMSw3ICs3MTIsMTAgQEAgc3RhdGljIGlubGluZSBPcHRpb25TZXQ8
UGxhdGZvcm1FdmVudDo6TW9kaWZpZXI+IG1vZGlmaWVyc0ZvckV2ZW50KE5TRXZlbnQgKmV2ZW4K
ICAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyOjpBbHRLZXk7CiAg
ICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0NvbW1hbmRLZXlNYXNrKQogICAgICAgICBt
b2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6TW9kaWZpZXI6Ok1ldGFLZXk7Ci0jcHJhZ21hIGNs
YW5nIGRpYWdub3N0aWMgcG9wCisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0FscGhh
U2hpZnRLZXlNYXNrKQorICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6TW9kaWZp
ZXI6OkNhcHNMb2NrS2V5OworI2VuZGlmCisKICAgICByZXR1cm4gbW9kaWZpZXJzOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tFdmVudC5oIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLRXZlbnQuaAppbmRleCAwNWM0M2E1OGRmZTIyMGM4N2Vh
MzY4YjE5ZTk1YjNhMDI3ZDU4YjY1Li40NzdkNTU0Yzk2NjA4YzYwZmNhZWE4N2I1OWJlYTVhMjNl
ZGY0OGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tFdmVudC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0V2ZW50LmgKQEAgLTM2LDcgKzM2
LDggQEAgZW51bSB7CiAgICAga1dLRXZlbnRNb2RpZmllcnNTaGlmdEtleSA9IDEgPDwgMCwKICAg
ICBrV0tFdmVudE1vZGlmaWVyc0NvbnRyb2xLZXkgPSAxIDw8IDEsCiAgICAga1dLRXZlbnRNb2Rp
ZmllcnNBbHRLZXkgPSAxIDw8IDIsCi0gICAga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5ID0gMSA8
PCAzCisgICAga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5ID0gMSA8PCAzLAorICAgIGtXS0V2ZW50
TW9kaWZpZXJzQ2Fwc0xvY2tLZXkgPSAxIDw8IDQKIH07CiB0eXBlZGVmIHVpbnQzMl90IFdLRXZl
bnRNb2RpZmllcnM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9X
S1NoYXJlZEFQSUNhc3QuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQ
SUNhc3QuaAppbmRleCA4NTE2YTJjZjQ5MTQzNzdhMDYwZWQ5YjJkN2EwYzFiMjQzMmIxZjYyLi42
Njk4NmFlNmQ0MDM2NjVhNTI2NmYzOTkyZTU3ZmE1ZDQ4YTY0YWNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgKKysrIGIvU291cmNlL1dl
YktpdDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCkBAIC0yOTQsNiArMjk0LDggQEAg
aW5saW5lIFdLRXZlbnRNb2RpZmllcnMgdG9BUEkoV2ViRXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmll
cnMpCiAgICAgICAgIHdrTW9kaWZpZXJzIHw9IGtXS0V2ZW50TW9kaWZpZXJzQWx0S2V5OwogICAg
IGlmIChtb2RpZmllcnMgJiBXZWJFdmVudDo6TWV0YUtleSkKICAgICAgICAgd2tNb2RpZmllcnMg
fD0ga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5OworICAgIGlmIChtb2RpZmllcnMgJiBXZWJFdmVu
dDo6Q2Fwc0xvY2tLZXkpCisgICAgICAgIHdrTW9kaWZpZXJzIHw9IGtXS0V2ZW50TW9kaWZpZXJz
Q2Fwc0xvY2tLZXk7CiAgICAgcmV0dXJuIHdrTW9kaWZpZXJzOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViRXZlbnRDb252ZXJzaW9uLmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJFdmVudENvbnZlcnNpb24uY3BwCmluZGV4IDNhNDM4YzgyMDFlN2VmZmJm
MzNkNTQ5MmY5OGY4ZmM2MjlhN2QzMTIuLjA2YmYzN2FiYTBjNjU2MzE1ODAzNDQ1YWU5NjkwYWNm
NGIzOWE5ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVudENvbnZl
cnNpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVudENvbnZlcnNpb24u
Y3BwCkBAIC03Niw2ICs3Niw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fbW9kaWZpZXJzIHw9
IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVudC5tZXRhS2V5KCkpCiAgICAg
ICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtleTsKKyAgICAgICAgaWYgKHdl
YkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmll
cjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAgPSB3ZWJFdmVudC50aW1lc3Rh
bXAoKTsKIApAQCAtMTI3LDYgKzEyOSw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fbW9kaWZp
ZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVudC5tZXRhS2V5KCkp
CiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtleTsKKyAgICAgICAg
aWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBN
b2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAgPSB3ZWJFdmVudC50
aW1lc3RhbXAoKTsKIApAQCAtMTg1LDYgKzE4OSw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1f
bW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVudC5tZXRh
S2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtleTsKKyAg
ICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21vZGlmaWVy
cyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAgPSB3ZWJF
dmVudC50aW1lc3RhbXAoKTsKIApAQCAtMzI0LDYgKzMzMCw4IEBAIHB1YmxpYzoKICAgICAgICAg
ICAgIG1fbW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVu
dC5tZXRhS2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtl
eTsKKyAgICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21v
ZGlmaWVycyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAg
PSB3ZWJFdmVudC50aW1lc3RhbXAoKTsKIApAQCAtMzgxLDYgKzM4OSw4IEBAIHB1YmxpYzoKICAg
ICAgICAgICAgIG1fbW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3
ZWJFdmVudC5tZXRhS2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6
TWV0YUtleTsKKyAgICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAg
ICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1l
c3RhbXAgPSB3ZWJFdmVudC50aW1lc3RhbXAoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvU2hhcmVkL2VmbC9XZWJFdmVudEZhY3RvcnkuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L2VmbC9XZWJFdmVudEZhY3RvcnkuY3BwCmluZGV4IDBiYTExZTAzN2I0MmUxY2ZhMDIyMzBjNjQy
ZjlmZWQzMzcyZTc4M2EuLjFlNjBjNGU1ZGZmZTkzZGQ1ODA0N2QwZDczY2FkMjFlNjQ2ZTUwZTgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9lZmwvV2ViRXZlbnRGYWN0b3J5LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvZWZsL1dlYkV2ZW50RmFjdG9yeS5jcHAKQEAg
LTI1OCw2ICsyNTgsOCBAQCBzdGF0aWMgaW5saW5lIFdlYkV2ZW50OjpNb2RpZmllcnMgdG9XZWJF
dmVudE1vZGlmaWVycyh1bnNpZ25lZCBtb2RpZmllcnMpCiAgICAgICAgIHJlc3VsdCB8PSBXZWJF
dmVudDo6QWx0S2V5OwogICAgIGlmIChtb2RpZmllcnMgJiBrV0tFdmVudE1vZGlmaWVyc01ldGFL
ZXkpCiAgICAgICAgIHJlc3VsdCB8PSBXZWJFdmVudDo6TWV0YUtleTsKKyAgICBpZiAobW9kaWZp
ZXJzICYga1dLRXZlbnRNb2RpZmllcnNDYXBzTG9ja0tleSkKKyAgICAgICAgcmVzdWx0IHw9IFdl
YkV2ZW50OjpDYXBzTG9ja0tleTsKIAogICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJFdmVudDo6
TW9kaWZpZXJzPihyZXN1bHQpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L2lvcy9XZWJJT1NFdmVudEZhY3RvcnkubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL1dl
YklPU0V2ZW50RmFjdG9yeS5tbQppbmRleCAxMjlmODgyODhiYTRiZGYwZTJhYmI3NmNhNWFiY2Iy
YTg0NWY0NTg4Li4xMTdjMDJkZjM3NGMwODQyNDk5MDA3MDE2OGVkYjEyM2JmMDVhNzA1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9yeS5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9yeS5tbQpAQCAt
NDQsNiArNDQsOCBAQCBzdGF0aWMgV2ViS2l0OjpXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVy
c0ZvckV2ZW50KFdlYklPU0V2ZW50ICpldmVudCkKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYktp
dDo6V2ViRXZlbnQ6OkFsdEtleTsKICAgICBpZiAoZXZlbnRNb2RpZmllckZsYWdzICYgV2ViRXZl
bnRGbGFnTWFza0NvbW1hbmQpCiAgICAgICAgIG1vZGlmaWVycyB8PSBXZWJLaXQ6OldlYkV2ZW50
OjpNZXRhS2V5OworICAgIGlmIChldmVudE1vZGlmaWVyRmxhZ3MgJiBXZWJFdmVudEZsYWdNYXNr
QWxwaGFTaGlmdCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFdlYktpdDo6V2ViRXZlbnQ6OkNhcHNM
b2NrS2V5OwogCiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFdlYktpdDo6V2ViRXZlbnQ6Ok1vZGlm
aWVycz4obW9kaWZpZXJzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9t
YWMvV2ViRXZlbnRGYWN0b3J5Lm1tIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9XZWJFdmVu
dEZhY3RvcnkubW0KaW5kZXggMzkxMzYxY2Y1MzMxMGRiZmY5MTVkMzFiNjU1MGFhNjdlZGYxMDk2
OS4uYTg1ZWZjYWVlOWE1MmQ4YzA0NTY2NmQ5NGM0OTE4NzBjYTY4YTdkMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KKysrIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KQEAgLTMzOCw4ICszMzgsMTkg
QEAgc3RhdGljIGlubGluZSBib29sIGlzS2V5VXBFdmVudChOU0V2ZW50ICpldmVudCkKIHN0YXRp
YyBpbmxpbmUgV2ViRXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmllcnNGb3JFdmVudChOU0V2ZW50ICpl
dmVudCkKIHsKICAgICB1bnNpZ25lZCBtb2RpZmllcnMgPSAwOwotI3ByYWdtYSBjbGFuZyBkaWFn
bm9zdGljIHB1c2gKLSNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBpZ25vcmVkICItV2RlcHJlY2F0
ZWQtZGVjbGFyYXRpb25zIgorCisjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+
PSAxMDEyMDAKKyAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNFdmVudE1vZGlmaWVy
RmxhZ0NhcHNMb2NrKQorICAgICAgICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6OkNhcHNMb2NrS2V5
OworICAgIGlmIChbZXZlbnQgbW9kaWZpZXJGbGFnc10gJiBOU0V2ZW50TW9kaWZpZXJGbGFnU2hp
ZnQpCisgICAgICAgIG1vZGlmaWVycyB8PSBXZWJFdmVudDo6U2hpZnRLZXk7CisgICAgaWYgKFtl
dmVudCBtb2RpZmllckZsYWdzXSAmIE5TRXZlbnRNb2RpZmllckZsYWdDb250cm9sKQorICAgICAg
ICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6OkNvbnRyb2xLZXk7CisgICAgaWYgKFtldmVudCBtb2Rp
ZmllckZsYWdzXSAmIE5TRXZlbnRNb2RpZmllckZsYWdPcHRpb24pCisgICAgICAgIG1vZGlmaWVy
cyB8PSBXZWJFdmVudDo6QWx0S2V5OworICAgIGlmIChbZXZlbnQgbW9kaWZpZXJGbGFnc10gJiBO
U0V2ZW50TW9kaWZpZXJGbGFnQ29tbWFuZCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50
OjpNZXRhS2V5OworI2Vsc2UKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNBbHBo
YVNoaWZ0S2V5TWFzaykKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50OjpDYXBzTG9ja0tl
eTsKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNTaGlmdEtleU1hc2spCkBAIC0z
NTAsNyArMzYxLDggQEAgc3RhdGljIGlubGluZSBXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVy
c0ZvckV2ZW50KE5TRXZlbnQgKmV2ZW50KQogICAgICAgICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6
OkFsdEtleTsKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNDb21tYW5kS2V5TWFz
aykKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50OjpNZXRhS2V5OwotI3ByYWdtYSBjbGFu
ZyBkaWFnbm9zdGljIHBvcAorI2VuZGlmCisKICAgICByZXR1cm4gKFdlYkV2ZW50OjpNb2RpZmll
cnMpbW9kaWZpZXJzOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLTmF2aWdhdGlvbkFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tCmluZGV4IDk2OTRlZjBhOWIwYzJhNTY4
MmM5YzlhYTQwM2EzZmFkNmJjZTNmYjEuLmJhMTk5NmIyMTc0ZTIzZTQ3Nzg0NjM3ZWQ3MjEwN2M3
NTFiMGMzY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tOYXZpZ2F0aW9uQWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tCkBAIC03OSw4ICs3OSwxOCBAQCBzdGF0aWMgTlNF
dmVudE1vZGlmaWVyRmxhZ3MgdG9OU0V2ZW50TW9kaWZpZXJGbGFncyhXZWJLaXQ6OldlYkV2ZW50
OjpNb2RpZmllcnMgbQogewogICAgIE5TRXZlbnRNb2RpZmllckZsYWdzIG1vZGlmaWVyRmxhZ3Mg
PSAwOwogCi0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcHVzaAotI3ByYWdtYSBjbGFuZyBkaWFn
bm9zdGljIGlnbm9yZWQgIi1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnMiCisjaWYgX19NQUNfT1Nf
WF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEyMDAKKyAgICBpZiAobW9kaWZpZXJzICYgV2Vi
S2l0OjpXZWJFdmVudDo6Q2Fwc0xvY2tLZXkpCisgICAgICAgIG1vZGlmaWVyRmxhZ3MgfD0gTlNF
dmVudE1vZGlmaWVyRmxhZ0NhcHNMb2NrOworICAgIGlmIChtb2RpZmllcnMgJiBXZWJLaXQ6Oldl
YkV2ZW50OjpTaGlmdEtleSkKKyAgICAgICAgbW9kaWZpZXJGbGFncyB8PSBOU0V2ZW50TW9kaWZp
ZXJGbGFnU2hpZnQ7CisgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6OkNvbnRy
b2xLZXkpCisgICAgICAgIG1vZGlmaWVyRmxhZ3MgfD0gTlNFdmVudE1vZGlmaWVyRmxhZ0NvbnRy
b2w7CisgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6OkFsdEtleSkKKyAgICAg
ICAgbW9kaWZpZXJGbGFncyB8PSBOU0V2ZW50TW9kaWZpZXJGbGFnT3B0aW9uOworICAgIGlmICht
b2RpZmllcnMgJiBXZWJLaXQ6OldlYkV2ZW50OjpNZXRhS2V5KQorICAgICAgICBtb2RpZmllckZs
YWdzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDb21tYW5kOworI2Vsc2UKICAgICBpZiAobW9kaWZp
ZXJzICYgV2ViS2l0OjpXZWJFdmVudDo6Q2Fwc0xvY2tLZXkpCiAgICAgICAgIG1vZGlmaWVyRmxh
Z3MgfD0gTlNBbHBoYVNoaWZ0S2V5TWFzazsKICAgICBpZiAobW9kaWZpZXJzICYgV2ViS2l0OjpX
ZWJFdmVudDo6U2hpZnRLZXkpCkBAIC05MSw3ICsxMDEsOCBAQCBzdGF0aWMgTlNFdmVudE1vZGlm
aWVyRmxhZ3MgdG9OU0V2ZW50TW9kaWZpZXJGbGFncyhXZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmll
cnMgbQogICAgICAgICBtb2RpZmllckZsYWdzIHw9IE5TQWx0ZXJuYXRlS2V5TWFzazsKICAgICBp
ZiAobW9kaWZpZXJzICYgV2ViS2l0OjpXZWJFdmVudDo6TWV0YUtleSkKICAgICAgICAgbW9kaWZp
ZXJGbGFncyB8PSBOU0NvbW1hbmRLZXlNYXNrOwotI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHBv
cAorI2VuZGlmCisKICAgICByZXR1cm4gbW9kaWZpZXJGbGFnczsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1dlYkF1dG9tYXRpb25TZXNzaW9uQ29jb2Eu
bW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNlc3Npb25D
b2NvYS5tbQppbmRleCBlMzQzYmI4YTc2NzkwYWIwOTIyNGY1NGE4YzMwZDI4ZTczZDc2ZGFkLi4x
MjFkOGYwODU5NGY1OTRmZThiZjNlNTZhNDVhMThiMmNjNDQ1ZDFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNlc3Npb25Db2NvYS5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNlc3Npb25D
b2NvYS5tbQpAQCAtMTA3LDYgKzEwNyw4IEBAIHZvaWQgV2ViQXV0b21hdGlvblNlc3Npb246OnBs
YXRmb3JtU2ltdWxhdGVNb3VzZUludGVyYWN0aW9uKFdlYlBhZ2VQcm94eSYgcGFnZSwKICAgICAg
ICAgbW9kaWZpZXJzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDb250cm9sOwogICAgIGlmIChrZXlN
b2RpZmllcnMgJiBXZWJFdmVudDo6U2hpZnRLZXkpCiAgICAgICAgIG1vZGlmaWVycyB8PSBOU0V2
ZW50TW9kaWZpZXJGbGFnU2hpZnQ7CisgICAgaWYgKGtleU1vZGlmaWVycyAmIFdlYkV2ZW50OjpD
YXBzTG9ja0tleSkKKyAgICAgICAgbW9kaWZpZXJzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDYXBz
TG9jazsKIAogICAgIE5TVGltZUludGVydmFsIHRpbWVzdGFtcCA9IFtOU0RhdGUgdGltZUludGVy
dmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKICAgICBOU1dpbmRvdyAqd2luZG93ID0gcGFnZS5wbGF0
Zm9ybVdpbmRvdygpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdl
TG9nCmluZGV4IGJlZjE5ZjE2OTYwNzdkNzBkYmYwZTJmODU0Y2FlYmJiM2FlM2YxMjMuLmNlZDBm
ZTZiYTZlOTQzN2I4N2UzOGNlYWQ1NjA4YjY5YjA4M2E2MDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0No
YW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxNi0xMC0w
NSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEtleWJvYXJkRXZl
bnQuZ2V0TW9kaWZpZXJTdGF0ZSgpIHNob3VsZCBzdXBwb3J0ICJDYXBzTG9jayIgbW9kaWZpZXIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mjg2MQor
CisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIEFkZCBzdXBwb3J0
IGZvciAnY2Fwc0xvY2tLZXknIG1vZGlmaWVyIGZvciBFdmVudFNlbmRlci5rZXlEb3duKCkgc28K
KyAgICAgICAgdGhhdCB3ZSBjYW4gdGVzdCB0aGlzIG5ldyBtb2RpZmllciBzdXBwb3J0IGZvciBs
YXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL21hYy9QbGF0Zm9ybVdlYlZp
ZXdNYWMubW06CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjptb2RpZmllckZsYWdzRm9yV0tNb2Rp
ZmllcnMpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRT
ZW5kaW5nQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXVFI6OnBhcnNlTW9kaWZpZXIpOgorICAg
ICAgICAqIFdlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW06CisgICAgICAg
IChXVFI6OmJ1aWxkTW9kaWZpZXJGbGFncyk6CisKIDIwMTYtMTAtMDUgIFphbiBEb2JlcnNlayAg
PHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVfRU5DUllQVEVE
X01FRElBX1YyIHRvIEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBCmRpZmYgLS1naXQgYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbSBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCmluZGV4IDkzOTk5
YTI1ODRjYzNiZmM1ZTM4ZjBkZGI2NTEzZjFiZDQxZGJjNTYuLjAwNjgwODdiNzg3MDRmMTA5MGFi
YmZlM2ZmNWY4ZDAwNWQ0ZGRhNTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCkBAIC00MzcsMTEgKzQzNywxMyBAQCBzdGF0aWMg
aW50IG1vZGlmaWVyRmxhZ3MoY29uc3QgTlNTdHJpbmcqIG1vZGlmaWVyTmFtZSkKICAgICBjb25z
dCBpbnQgc2hpZnRLZXlNYXNrID0gTlNTaGlmdEtleU1hc2s7CiAgICAgY29uc3QgaW50IGFsdGVy
bmF0ZUtleU1hc2sgPSBOU0FsdGVybmF0ZUtleU1hc2s7CiAgICAgY29uc3QgaW50IGNvbW1hbmRL
ZXlNYXNrID0gTlNDb21tYW5kS2V5TWFzazsKKyAgICBjb25zdCBpbnQgY2Fwc0xvY2tLZXlNYXNr
ID0gTlNBbHBoYVNoaWZ0S2V5TWFzazsKICNlbHNlCiAgICAgY29uc3QgaW50IGNvbnRyb2xLZXlN
YXNrID0gV2ViRXZlbnRGbGFnTWFza0NvbnRyb2w7CiAgICAgY29uc3QgaW50IHNoaWZ0S2V5TWFz
ayA9IFdlYkV2ZW50RmxhZ01hc2tTaGlmdDsKICAgICBjb25zdCBpbnQgYWx0ZXJuYXRlS2V5TWFz
ayA9IFdlYkV2ZW50RmxhZ01hc2tBbHRlcm5hdGU7CiAgICAgY29uc3QgaW50IGNvbW1hbmRLZXlN
YXNrID0gV2ViRXZlbnRGbGFnTWFza0NvbW1hbmQ7CisgICAgY29uc3QgaW50IGNhcHNMb2NrS2V5
TWFzayA9IFdlYkV2ZW50RmxhZ01hc2tDYXBzTG9jazsKICNlbmRpZgogCiAgICAgaW50IGZsYWdz
ID0gMDsKQEAgLTQ1Myw2ICs0NTUsOCBAQCBzdGF0aWMgaW50IG1vZGlmaWVyRmxhZ3MoY29uc3Qg
TlNTdHJpbmcqIG1vZGlmaWVyTmFtZSkKICAgICAgICAgZmxhZ3MgfD0gYWx0ZXJuYXRlS2V5TWFz
azsKICAgICBlbHNlIGlmIChbbW9kaWZpZXJOYW1lIGlzRXF1YWw6QCJtZXRhS2V5Il0gfHwgW21v
ZGlmaWVyTmFtZSBpc0VxdWFsOkAiYWRkU2VsZWN0aW9uS2V5Il0pCiAgICAgICAgIGZsYWdzIHw9
IGNvbW1hbmRLZXlNYXNrOworICAgIGVsc2UgaWYgKFttb2RpZmllck5hbWUgaXNFcXVhbDpAImNh
cHNMb2NrS2V5Il0pCisgICAgICAgIGZsYWdzIHw9IGNhcHNMb2NrS2V5TWFzazsKIAogICAgIHJl
dHVybiBmbGFnczsKIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvbWFjL1BsYXRm
b3JtV2ViVmlld01hYy5tbSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvbWFjL1BsYXRmb3JtV2ViVmll
d01hYy5tbQppbmRleCAzMTU5Y2VjYjRhMDljNzc2Y2UzMmMzZDcwMTVhNmI1ZmZiNjg1Y2U2Li5h
ZDM1ZjU4NmNmNzIzNTlhM2I3ZTkxMzZmOWViZWJhMTYyMmY3YzdkIDEwMDY0NAotLS0gYS9Ub29s
cy9UZXN0V2ViS2l0QVBJL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0KKysrIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9tYWMvUGxhdGZvcm1XZWJWaWV3TWFjLm1tCkBAIC0yMjAsNiArMjIwLDggQEAg
c3RhdGljIE5TRXZlbnRNb2RpZmllckZsYWdzIG1vZGlmaWVyRmxhZ3NGb3JXS01vZGlmaWVycyhX
S0V2ZW50TW9kaWZpZXJzIG1vZGlmaWUKICAgICAgICAgcmV0dXJuVmFsIHw9IE5TQWx0ZXJuYXRl
S2V5TWFzazsKICAgICBpZiAobW9kaWZpZXJzICYga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5KQog
ICAgICAgICByZXR1cm5WYWwgfD0gTlNDb21tYW5kS2V5TWFzazsKKyAgICBpZiAobW9kaWZpZXJz
ICYga1dLRXZlbnRNb2RpZmllcnNDYXBzTG9ja0tleSkKKyAgICAgICAgcmV0dXJuVmFsIHw9IE5T
QWxwaGFTaGlmdEtleU1hc2s7CiAKICAgICByZXR1cm4gcmV0dXJuVmFsOwogfQpkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRpbmdDb250
cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRT
ZW5kaW5nQ29udHJvbGxlci5jcHAKaW5kZXggMGZhYTJmMzk4M2NmN2E5MWU3OTFmZGY3NDQxZjRj
ZDlkOWU5ZjM1Mi4uM2U4MWRiOWQzMjk0NzMzMjBmNDJkYzA5Nzk4NjJlYjdkMGUxNmNkNyAxMDA2
NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVudFNlbmRp
bmdDb250cm9sbGVyLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVu
ZGxlL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuY3BwCkBAIC0xMTYsNiArMTE2LDggQEAgc3RhdGlj
IFdLRXZlbnRNb2RpZmllcnMgcGFyc2VNb2RpZmllcihKU1N0cmluZ1JlZiBtb2RpZmllcikKICAg
ICAgICAgcmV0dXJuIGtXS0V2ZW50TW9kaWZpZXJzQWx0S2V5OwogICAgIGlmIChKU1N0cmluZ0lz
RXF1YWxUb1VURjhDU3RyaW5nKG1vZGlmaWVyLCAibWV0YUtleSIpKQogICAgICAgICByZXR1cm4g
a1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5OworICAgIGlmIChKU1N0cmluZ0lzRXF1YWxUb1VURjhD
U3RyaW5nKG1vZGlmaWVyLCAiY2Fwc0xvY2tLZXkiKSkKKyAgICAgICAgcmV0dXJuIGtXS0V2ZW50
TW9kaWZpZXJzQ2Fwc0xvY2tLZXk7CiAgICAgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJp
bmcobW9kaWZpZXIsICJhZGRTZWxlY3Rpb25LZXkiKSkgewogI2lmIE9TKE1BQ19PU19YKQogICAg
ICAgICByZXR1cm4ga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5OwpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXJQcm94eS5tbSBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW0KaW5kZXggMTliNWEzN2IzNmRkMTJiNzQw
MjIxZTM2MzdiMDRiMWY2ODI1MTRkZi4uY2FmYzNlZGRhOWJmODVlZTEwNjVhZmRlMDg5ZjE2NDkz
NTY0MWU2YiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5k
ZXJQcm94eS5tbQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlclBy
b3h5Lm1tCkBAIC0yNTAsNiArMjUwLDggQEAgc3RhdGljIGludCBidWlsZE1vZGlmaWVyRmxhZ3Mo
V0tFdmVudE1vZGlmaWVycyBtb2RpZmllcnMpCiAgICAgICAgIGZsYWdzIHw9IE5TQWx0ZXJuYXRl
S2V5TWFzazsKICAgICBpZiAobW9kaWZpZXJzICYga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5KQog
ICAgICAgICBmbGFncyB8PSBOU0NvbW1hbmRLZXlNYXNrOworICAgIGlmIChtb2RpZmllcnMgJiBr
V0tFdmVudE1vZGlmaWVyc0NhcHNMb2NrS2V5KQorICAgICAgICBmbGFncyB8PSBOU0FscGhhU2hp
ZnRLZXlNYXNrOwogICAgIHJldHVybiBmbGFnczsKIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGZiNzRhYTBkNTE2Zjc2
ODlhNTg0MjkzOTFiODk0Y2UwYTgxNzZhMmYuLjhjNzljNjkwYTM0ZTI2ZGU5ZjRhZmYwNWYxZjhj
NzI1MWZhODQ0NGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNi0xMC0wNSAgQ2hyaXMgRHVt
ZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEtleWJvYXJkRXZlbnQuZ2V0TW9kaWZp
ZXJTdGF0ZSgpIHNob3VsZCBzdXBwb3J0ICJDYXBzTG9jayIgbW9kaWZpZXIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mjg2MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIEV4dGVuZCBsYXlvdXQgdGVzdCBjb3Zl
cmFnZSB0byBjb3ZlciAnQ2FwcyBMb2NrJyBtb2RpZmllci4KKworICAgICAgICAqIGZhc3QvZXZl
bnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0LWV4cGVjdGVkLnR4dDoKKyAgICAg
ICAgKiBmYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC5odG1sOgor
CiAyMDE2LTEwLTA1ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbV0syXVtOZXR3b3JrU2Vzc2lvbl0gUGluZyByZXF1ZXN0cyBzaG91bGQgZm9sbG93IHJlZGly
ZWN0cyBpZiBhcHBsaWNhYmxlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9z
cGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC1leHBlY3RlZC50
eHQKaW5kZXggNTk3Yjc3NGFmNGQ0ZmRmNTg3MGMyZDg2NzBmNzVhY2ZjM2RiZjE5My4uODY3MDZk
ODNmYmI5NGY5YmZmMzg0Nzc1NDJjOTNkMmMzMDQ5NDYyYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9ldmVudHMvc3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1p
bnB1dC10ZXh0LWV4cGVjdGVkLnR4dApAQCAtMSw0OSArMSw1NSBAQAogVGhpcyB0ZXN0IHZlcmlm
aWVzIHRoYXQgdGhlIGNvcnJlY3Qgc2VxdWVuY2Ugb2Yga2V5Ym9hcmQgZXZlbnRzIGlzIGdlbmVy
YXRlZCBmb3IgYSBrZXlwcmVzcyBmb3IgY2VydGFpbiBzcGVjaWFsIGtleXMuIFRvIHRlc3QgbWFu
dWFsbHksIHByZXNzIGtleXMgYW5kIGNvbXBhcmUgcmVzdWx0cyB0byBvdGhlciBicm93c2Vycy4K
IAogCi10YXJnZXQgLSB0eXBlIC0gY3RybEtleSxhbHRLZXksc2hpZnRLZXksbWV0YUtleSAtIGtl
eSAtIGNvZGUgLSBrZXlJZGVudGlmaWVyIC0ga2V5Q29kZSAtIGNoYXJDb2RlCit0YXJnZXQgLSB0
eXBlIC0gY3RybEtleSxhbHRLZXksc2hpZnRLZXksbWV0YUtleSxjYXBzTG9ja0tleSAtIGtleSAt
IGNvZGUgLSBrZXlJZGVudGlmaWVyIC0ga2V5Q29kZSAtIGNoYXJDb2RlCiAKIEFtcGVyc2FuZDoK
LUlOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSA3IC0gRGlnaXQ3IC0g
VSswMDM3IC0gNTUgLSAwLiBWYWx1ZTogIiIuCi1JTlBVVCAtIGtleXByZXNzIC0gZmFsc2UsZmFs
c2UsdHJ1ZSxmYWxzZSAtIDcgLSBEaWdpdDcgLSAtIDU1IC0gNTUuIFZhbHVlOiAiIi4KK0lOUFVU
IC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UgLSA3IC0gRGlnaXQ3IC0g
VSswMDM3IC0gNTUgLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleXByZXNzIC0gZmFsc2UsZmFs
c2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDcgLSBEaWdpdDcgLSAtIDU1IC0gNTUuIFZhbHVlOiAiIi4K
IElOUFVUIC0gdGV4dElucHV0IC0gNy4gVmFsdWU6ICIiLgotSU5QVVQgLSBrZXl1cCAtIGZhbHNl
LGZhbHNlLHRydWUsZmFsc2UgLSA3IC0gRGlnaXQ3IC0gVSswMDM3IC0gNTUgLSAwLiBWYWx1ZTog
IjciLgorSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UgLSA3IC0g
RGlnaXQ3IC0gVSswMDM3IC0gNTUgLSAwLiBWYWx1ZTogIjciLgogCiBCYWNrc3BhY2U6Ci1JTlBV
VCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tz
cGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIjciLgotSU5QVVQgLSBrZXl1cCAtIGZhbHNl
LGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAt
IDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNl
LGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAi
NyIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNr
c3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6ICIiLgogCiBQZXJjZW50
OgotSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDUgLSBEaWdpdDUg
LSBVKzAwMzUgLSA1MyAtIDAuIFZhbHVlOiAiIi4KLUlOUFVUIC0ga2V5cHJlc3MgLSBmYWxzZSxm
YWxzZSx0cnVlLGZhbHNlIC0gNSAtIERpZ2l0NSAtIC0gNTMgLSA1My4gVmFsdWU6ICIiLgorSU5Q
VVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDUgLSBEaWdpdDUg
LSBVKzAwMzUgLSA1MyAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5cHJlc3MgLSBmYWxzZSxm
YWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gNSAtIERpZ2l0NSAtIC0gNTMgLSA1My4gVmFsdWU6ICIi
LgogSU5QVVQgLSB0ZXh0SW5wdXQgLSA1LiBWYWx1ZTogIiIuCi1JTlBVVCAtIGtleXVwIC0gZmFs
c2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDUgLSBEaWdpdDUgLSBVKzAwMzUgLSA1MyAtIDAuIFZhbHVl
OiAiNSIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDUg
LSBEaWdpdDUgLSBVKzAwMzUgLSA1MyAtIDAuIFZhbHVlOiAiNSIuCiAKIEJhY2tzcGFjZToKLUlO
UFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFj
a3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiNSIuCi1JTlBVVCAtIGtleXVwIC0gZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4
IC0gMC4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6
ICI1Ii4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJh
Y2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIiIuCiAKIExlZnQg
cGFyZW50aGVzaXM6Ci1JTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0g
OSAtIERpZ2l0OSAtIFUrMDAzOSAtIDU3IC0gMC4gVmFsdWU6ICIiLgotSU5QVVQgLSBrZXlwcmVz
cyAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSA5IC0gRGlnaXQ5IC0gLSA1NyAtIDU3LiBWYWx1
ZTogIiIuCitJTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0g
OSAtIERpZ2l0OSAtIFUrMDAzOSAtIDU3IC0gMC4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlwcmVz
cyAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UgLSA5IC0gRGlnaXQ5IC0gLSA1NyAtIDU3
LiBWYWx1ZTogIiIuCiBJTlBVVCAtIHRleHRJbnB1dCAtIDkuIFZhbHVlOiAiIi4KLUlOUFVUIC0g
a2V5dXAgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gOSAtIERpZ2l0OSAtIFUrMDAzOSAtIDU3
IC0gMC4gVmFsdWU6ICI5Ii4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNl
LGZhbHNlIC0gOSAtIERpZ2l0OSAtIFUrMDAzOSAtIDU3IC0gMC4gVmFsdWU6ICI5Ii4KIAogQmFj
a3NwYWNlOgotSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNr
c3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6ICI5Ii4KLUlOUFVUIC0g
a2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAt
IFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDgg
LSAwLiBWYWx1ZTogIjkiLgorSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNl
LGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAi
Ii4KIAogUmlnaHQgcGFyZW50aGVzaXM6Ci1JTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSx0
cnVlLGZhbHNlIC0gMCAtIERpZ2l0MCAtIFUrMDAzMCAtIDQ4IC0gMC4gVmFsdWU6ICIiLgotSU5Q
VVQgLSBrZXlwcmVzcyAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSAwIC0gRGlnaXQwIC0gLSA0
OCAtIDQ4LiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSx0cnVlLGZh
bHNlLGZhbHNlIC0gMCAtIERpZ2l0MCAtIFUrMDAzMCAtIDQ4IC0gMC4gVmFsdWU6ICIiLgorSU5Q
VVQgLSBrZXlwcmVzcyAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UgLSAwIC0gRGlnaXQw
IC0gLSA0OCAtIDQ4LiBWYWx1ZTogIiIuCiBJTlBVVCAtIHRleHRJbnB1dCAtIDAuIFZhbHVlOiAi
Ii4KLUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gMCAtIERpZ2l0MCAt
IFUrMDAzMCAtIDQ4IC0gMC4gVmFsdWU6ICIwIi4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxz
ZSx0cnVlLGZhbHNlLGZhbHNlIC0gMCAtIERpZ2l0MCAtIFUrMDAzMCAtIDQ4IC0gMC4gVmFsdWU6
ICIwIi4KIAogQmFja3NwYWNlOgotSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2Us
ZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6ICIw
Ii4KLUlOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAt
IEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleWRvd24g
LSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAt
IFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIjAiLgorSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNl
LGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAt
IDAuIFZhbHVlOiAiIi4KIAogUHJpbnQgc2NyZWVuOgotSU5QVVQgLSBrZXlkb3duIC0gZmFsc2Us
ZmFsc2UsZmFsc2UsZmFsc2UgLSBQcmludFNjcmVlbiAtIEtleUEgLSBQcmludFNjcmVlbiAtIDQ0
IC0gMC4gVmFsdWU6ICIiLgotSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNl
IC0gUHJpbnRTY3JlZW4gLSBLZXlBIC0gUHJpbnRTY3JlZW4gLSA0NCAtIDAuIFZhbHVlOiAiIi4K
K0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gUHJpbnRT
Y3JlZW4gLSBLZXlBIC0gUHJpbnRTY3JlZW4gLSA0NCAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0g
a2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIFByaW50U2NyZWVuIC0gS2V5
QSAtIFByaW50U2NyZWVuIC0gNDQgLSAwLiBWYWx1ZTogIiIuCisKKydhJyBrZXkgd2l0aCBDYXBz
IExvY2s6CitJTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlIC0g
YSAtIEtleUEgLSBVKzAwNDEgLSA2NSAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5cHJlc3Mg
LSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlIC0gYSAtIEtleUEgLSAtIDk3IC0gOTcuIFZh
bHVlOiAiIi4KK0lOUFVUIC0gdGV4dElucHV0IC0gYS4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXl1
cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUgLSBhIC0gS2V5QSAtIFUrMDA0MSAtIDY1
IC0gMC4gVmFsdWU6ICJhIi4KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
c3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0Lmh0bWwKaW5kZXggNzc4MTJl
OWUwZjY2NGFmMmY3YTFiODYwZjBhYWY1ODhmODMzMjgzYS4uODk3YzEyMGY3MWNlODFjYzQ0NmUz
YzJlYmQzZTVlYTgzZDJkMGJmOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
c3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC5odG1sCkBAIC0xNyw3
ICsxNyw3IEBAIGZ1bmN0aW9uIGxvZ0V2ZW50KGUpIHsKICAgIGlmICh0eXBlID09ICJ0ZXh0SW5w
dXQiKSB7CiAgICAgIGluZm8gKz0gZS5kYXRhOwogICAgfSBlbHNlIGlmICh0eXBlID09ICJrZXlk
b3duIiB8fCB0eXBlID09ICJrZXlwcmVzcyIgfHwgdHlwZSA9PSAia2V5dXAiKSB7Ci0gICAgIGlu
Zm8gKz0gW2UuY3RybEtleSwgZS5hbHRLZXksIGUuc2hpZnRLZXksIGUubWV0YUtleV0gKworICAg
ICBpbmZvICs9IFtlLmN0cmxLZXksIGUuYWx0S2V5LCBlLnNoaWZ0S2V5LCBlLm1ldGFLZXksIGUu
Z2V0TW9kaWZpZXJTdGF0ZSgnQ2Fwc0xvY2snKV0gKwogICAgICAgICAgJyAtICcgKyBlLmtleSAr
CiAgICAgICAgICAnIC0gJyArIGUuY29kZSArCiAgICAgICAgICAnIC0gJyArIGUua2V5SWRlbnRp
ZmllciArCkBAIC0yOCw3ICsyOCw3IEBAIGZ1bmN0aW9uIGxvZ0V2ZW50KGUpIHsKICAgIGxvZyhp
bmZvKTsKIH0KIAotbG9nKCJ0YXJnZXQgLSB0eXBlIC0gIiArIFsiY3RybEtleSIsICJhbHRLZXki
LCAic2hpZnRLZXkiLCAibWV0YUtleSJdCitsb2coInRhcmdldCAtIHR5cGUgLSAiICsgWyJjdHJs
S2V5IiwgImFsdEtleSIsICJzaGlmdEtleSIsICJtZXRhS2V5IiwgImNhcHNMb2NrS2V5Il0KICAg
ICAgICArICcgLSAnICsgImtleSIKICAgICAgICArICcgLSAnICsgImNvZGUiCiAgICAgICAgKyAn
IC0gJyArICJrZXlJZGVudGlmaWVyIgpAQCAtNjIsNiArNjIsOCBAQCBpZiAod2luZG93LnRlc3RS
dW5uZXIpIHsKICAgIGV2ZW50U2VuZGVyLmtleURvd24oIlx4MDgiLCBbXSk7CiAgICBsb2coIjxi
cj5QcmludCBzY3JlZW46Iik7CiAgICBldmVudFNlbmRlci5rZXlEb3duKCJwcmludFNjcmVlbiIs
IFtdKTsKKyAgIGxvZygiPGJyPidhJyBrZXkgd2l0aCBDYXBzIExvY2s6Iik7CisgICBldmVudFNl
bmRlci5rZXlEb3duKCJhIiwgWyJjYXBzTG9ja0tleSJdKTsKICAgfQogPC9zY3JpcHQ+CiA8L2Jv
ZHk+PC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>290743</attachid>
            <date>2016-10-05 13:08:20 -0700</date>
            <delta_ts>2016-10-05 14:15:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-162861-20161005130511.patch</filename>
            <type>text/plain</type>
            <size>28798</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjA2ODEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWIwZDcwZDY1OGJhNzRj
MzIzZTkxYjU2NWRkMzYwY2FhYTlhZDUyMi4uNGYyNDBjNWU2NzM0YmU0NjAxNDAyYWNkNWVlYzAy
YTRhMDE3Zjk5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE2LTEwLTA1ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgS2V5Ym9hcmRFdmVudC5nZXRN
b2RpZmllclN0YXRlKCkgc2hvdWxkIHN1cHBvcnQgIkNhcHNMb2NrIiBtb2RpZmllcgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyODYxCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yICJD
YXBzTG9jayIgbW9kaWZpZXIgb24gTWFjIC8gaU9TIGZvciBLZXlib2FyZEV2ZW50J3MKKyAgICAg
ICAgZ2V0TW9kaWZpZXJTdGF0ZSgpIEFQSSwgYXMgcGVyOgorICAgICAgICAtIGh0dHBzOi8vdzNj
LmdpdGh1Yi5pby91aWV2ZW50cy8jZG9tLWtleWJvYXJkZXZlbnQtZ2V0bW9kaWZpZXJzdGF0ZQor
CisgICAgICAgIE5vIG5ldyB0ZXN0cywgdXBkYXRlZCBleGlzdGluZyB0ZXN0LgorCisgICAgICAg
ICogZG9tL0tleWJvYXJkRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6S2V5Ym9hcmRFdmVu
dDo6S2V5Ym9hcmRFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpLZXlib2FyZEV2ZW50OjpnZXRN
b2RpZmllclN0YXRlKToKKyAgICAgICAgKiBkb20vS2V5Ym9hcmRFdmVudC5oOgorICAgICAgICAq
IHBsYXRmb3JtL1BsYXRmb3JtRXZlbnQuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvUGxhdGZv
cm1FdmVudEZhY3RvcnlJT1MubW06CisgICAgICAgIChXZWJDb3JlOjptb2RpZmllcnNGb3JFdmVu
dCk6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5TWFjLm1tOgor
ICAgICAgICAoV2ViQ29yZTo6a2V5SWRlbnRpZmllckZvcktleUV2ZW50KToKKworMjAxNi0xMC0w
NSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCiAgICAgICAgIFtCaW5kaW5nc10g
RGVjbGFyZSBkaWN0aW9uYXJ5IC8gZW51bWVyYXRpb24gdGVtcGxhdGUgc3BlY2lhbGl6YXRpb25z
IGluIHRoZSBoZWFkZXIKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE2MjkyOQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZWNiNjNjYjNiMjA0ZGQ3MmIyMzA4YmRlNzdj
MzlmOTAwYTc1MGE2MS4uNmY0YWY1ZWE5NjI2Mzg2MDg0Y2YzNTdmMTc5YzEzN2NmY2Y0YTY5MiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE2LTEwLTA1ICBDaHJpcyBEdW1leiAgPGNk
dW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgS2V5Ym9hcmRFdmVudC5nZXRNb2RpZmllclN0YXRl
KCkgc2hvdWxkIHN1cHBvcnQgIkNhcHNMb2NrIiBtb2RpZmllcgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyODYxCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgQWRkIHN1cHBvcnQgZm9yIENhcHNMb2NrIG1vZGlm
aWVyIG9uIGV2ZW50cy4KKworICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS0V2ZW50Lmg6CisgICAg
ICAgICogU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oOgorICAgICAgICAoV2ViS2l0Ojp0
b0FQSSk6CisgICAgICAgICogU2hhcmVkL1dlYkV2ZW50Q29udmVyc2lvbi5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYktpdDJQbGF0Zm9ybU1vdXNlRXZlbnQ6OldlYktpdDJQbGF0Zm9ybU1vdXNl
RXZlbnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJLaXQyUGxhdGZvcm1XaGVlbEV2ZW50OjpXZWJL
aXQyUGxhdGZvcm1XaGVlbEV2ZW50KToKKyAgICAgICAgKFdlYktpdDo6V2ViS2l0MlBsYXRmb3Jt
S2V5Ym9hcmRFdmVudDo6V2ViS2l0MlBsYXRmb3JtS2V5Ym9hcmRFdmVudCk6CisgICAgICAgIChX
ZWJLaXQ6OldlYktpdDJQbGF0Zm9ybVRvdWNoRXZlbnQ6OldlYktpdDJQbGF0Zm9ybVRvdWNoRXZl
bnQpOgorICAgICAgICAoV2ViS2l0OjpXZWJLaXQyUGxhdGZvcm1HZXN0dXJlRXZlbnQ6OldlYktp
dDJQbGF0Zm9ybUdlc3R1cmVFdmVudCk6CisgICAgICAgICogU2hhcmVkL2VmbC9XZWJFdmVudEZh
Y3RvcnkuY3BwOgorICAgICAgICAoV2ViS2l0Ojp0b1dlYkV2ZW50TW9kaWZpZXJzKToKKyAgICAg
ICAgKiBTaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9yeS5tbToKKyAgICAgICAgKG1vZGlmaWVy
c0ZvckV2ZW50KToKKyAgICAgICAgKiBTaGFyZWQvbWFjL1dlYkV2ZW50RmFjdG9yeS5tbToKKyAg
ICAgICAgKFdlYktpdDo6bW9kaWZpZXJzRm9yRXZlbnQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tOgorICAgICAgICAodG9OU0V2ZW50TW9kaWZp
ZXJGbGFncyk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1dlYkF1dG9tYXRpb25TZXNzaW9u
Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OldlYkF1dG9tYXRpb25TZXNzaW9uOjpwbGF0Zm9y
bVNpbXVsYXRlTW91c2VJbnRlcmFjdGlvbik6CisKIDIwMTYtMTAtMDUgIFphbiBEb2JlcnNlayAg
PHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVfRU5DUllQVEVE
X01FRElBX1YyIHRvIEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20v
S2V5Ym9hcmRFdmVudC5jcHAKaW5kZXggNDIyNDMyZmQ4YTk1NDk4OWZhMWM2MGQ3NWNhN2MzOTk3
ZGI1NDY5My4uMjI3NjI4MGRhNTI4ZTZjMTc5YzdmNmQxYmE5YzJhNjQzYmNkZjc2YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZlbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmNwcApAQCAtMTA4LDYgKzEwOCw3IEBAIEtleWJvYXJk
RXZlbnQ6OktleWJvYXJkRXZlbnQoY29uc3QgUGxhdGZvcm1LZXlib2FyZEV2ZW50JiBrZXksIERP
TVdpbmRvdyogdmlldykKICAgICAsIG1fbG9jYXRpb24oa2V5TG9jYXRpb25Db2RlKGtleSkpCiAg
ICAgLCBtX3JlcGVhdChrZXkuaXNBdXRvUmVwZWF0KCkpCiAgICAgLCBtX2FsdEdyYXBoS2V5KGZh
bHNlKQorICAgICwgbV9jYXBzTG9ja0tleShrZXkubW9kaWZpZXJzKCkuY29udGFpbnMoUGxhdGZv
cm1FdmVudDo6TW9kaWZpZXI6OkNhcHNMb2NrS2V5KSkKICAgICAsIG1faXNDb21wb3Npbmcodmll
dyAmJiB2aWV3LT5mcmFtZSgpICYmIHZpZXctPmZyYW1lKCktPmVkaXRvcigpLmhhc0NvbXBvc2l0
aW9uKCkpCiAjaWYgUExBVEZPUk0oQ09DT0EpCiAjaWYgVVNFKEFQUEtJVCkKQEAgLTEzNyw3ICsx
MzgsOCBAQCBLZXlib2FyZEV2ZW50OjpLZXlib2FyZEV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYg
ZXZlbnRUeXBlLCBjb25zdCBLZXlib2FyZEV2ZW50SQogICAgICwgbV9rZXlJZGVudGlmaWVyKGlu
aXRpYWxpemVyLmtleUlkZW50aWZpZXIpCiAgICAgLCBtX2xvY2F0aW9uKGluaXRpYWxpemVyLmxv
Y2F0aW9uKQogICAgICwgbV9yZXBlYXQoaW5pdGlhbGl6ZXIucmVwZWF0KQotICAgICwgbV9hbHRH
cmFwaEtleShmYWxzZSkKKyAgICAsIG1fYWx0R3JhcGhLZXkoZmFsc2UpIC8vIEZJWE1FOiBzaG91
bGQgYmUgaW5pdGlhbGl6ZWQgZnJvbSBpbml0aWFsaXplci5tb2RpZmllckFsdEdyYXBoLgorICAg
ICwgbV9jYXBzTG9ja0tleShmYWxzZSkgLy8gRklYTUU6IHNob3VsZCBiZSBpbml0aWFsaXplZCBm
cm9tIGluaXRpYWxpemVyLm1vZGlmaWVyQ2Fwc0xvY2suCiAgICAgLCBtX2lzQ29tcG9zaW5nKGlu
aXRpYWxpemVyLmlzQ29tcG9zaW5nKQogI2lmIFBMQVRGT1JNKENPQ09BKQogICAgICwgbV9oYW5k
bGVkQnlJbnB1dE1ldGhvZChmYWxzZSkKQEAgLTE3OSw3ICsxODEsOSBAQCBib29sIEtleWJvYXJk
RXZlbnQ6OmdldE1vZGlmaWVyU3RhdGUoY29uc3QgU3RyaW5nJiBrZXlJZGVudGlmaWVyKSBjb25z
dAogICAgICAgICByZXR1cm4gbWV0YUtleSgpOwogICAgIGlmIChrZXlJZGVudGlmaWVyID09ICJB
bHRHcmFwaCIpCiAgICAgICAgIHJldHVybiBhbHRHcmFwaEtleSgpOwotICAgIC8vIEZJWE1FOiBX
ZSBzaG91bGQgc3VwcG9ydCBDYXBzTG9jaywgRm4sIEZuTG9jaywgSHlwZXIsIE51bUxvY2ssIFN1
cGVyLCBTY3JvbGxMb2NrLCBTeW1ib2wsIFN5bWJvbExvY2suCisgICAgaWYgKGtleUlkZW50aWZp
ZXIgPT0gIkNhcHNMb2NrIikKKyAgICAgICAgcmV0dXJuIG1fY2Fwc0xvY2tLZXk7CisgICAgLy8g
RklYTUU6IFRoZSBzcGVjaWZpY2F0aW9uIGFsc28gaGFzIEZuLCBGbkxvY2ssIEh5cGVyLCBOdW1M
b2NrLCBTdXBlciwgU2Nyb2xsTG9jaywgU3ltYm9sLCBTeW1ib2xMb2NrLgogICAgIHJldHVybiBm
YWxzZTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZlbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9LZXlib2FyZEV2ZW50LmgKaW5kZXggYmYzZTk1MzE0ZTBi
OTRiMTU4ZDU4N2RjODgyN2Q0NTUwNjA2ODhkMy4uN2I4YTYzZTc1YzA5Yzg0NzVmNGYyZTMyYjc0
ZDA5YzllYmExMzAxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0tleWJvYXJkRXZl
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5oCkBAIC0xMzYsNiAr
MTM2LDcgQEAgcHJpdmF0ZToKICAgICB1bnNpZ25lZCBtX2xvY2F0aW9uIHsgRE9NX0tFWV9MT0NB
VElPTl9TVEFOREFSRCB9OwogICAgIGJvb2wgbV9yZXBlYXQgeyBmYWxzZSB9OwogICAgIGJvb2wg
bV9hbHRHcmFwaEtleSB7IGZhbHNlIH07CisgICAgYm9vbCBtX2NhcHNMb2NrS2V5IHsgZmFsc2Ug
fTsKICAgICBib29sIG1faXNDb21wb3NpbmcgeyBmYWxzZSB9OwogCiAjaWYgUExBVEZPUk0oQ09D
T0EpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUV2ZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUV2ZW50LmgKaW5kZXggY2E1NGI3ZWZk
ZWMwMzM2OWJlMzE3NGM3NzdlMWMzZmFjOTU2ZTMxYy4uNWNiNDc4NDcxZDY2YThlYzk2YTU0OGRm
NDkwOGU1ODdlODFkODVlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGxh
dGZvcm1FdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtRXZlbnQu
aApAQCAtNzQsNiArNzQsNyBAQCBwdWJsaWM6CiAgICAgICAgIEN0cmxLZXkgICAgID0gMSA8PCAx
LAogICAgICAgICBNZXRhS2V5ICAgICA9IDEgPDwgMiwKICAgICAgICAgU2hpZnRLZXkgICAgPSAx
IDw8IDMsCisgICAgICAgIENhcHNMb2NrS2V5ID0gMSA8PCA0LAogICAgIH07CiAKICAgICBUeXBl
IHR5cGUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxUeXBlPihtX3R5cGUpOyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZvcm1FdmVudEZhY3RvcnlJ
T1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvUGxhdGZvcm1FdmVudEZhY3RvcnlJ
T1MubW0KaW5kZXggZmEyY2I5Njc0MWIyMTY5YTBjZTY1Njg4MDVjZWViNDA0ZWIwNzZjOC4uZTIw
ZTE4ZjBiMTljNjQxOGNiOGNkN2NjZTYyOWZhOTY2NTZiZDY3NyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL1BsYXRmb3JtRXZlbnRGYWN0b3J5SU9TLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9QbGF0Zm9ybUV2ZW50RmFjdG9yeUlPUy5tbQpAQCAt
NDcsNiArNDcsOCBAQCBzdGF0aWMgT3B0aW9uU2V0PFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyPiBt
b2RpZmllcnNGb3JFdmVudChXZWJFdmVudCAqZXZlbnQpCiAgICAgICAgIG1vZGlmaWVycyB8PSBQ
bGF0Zm9ybUV2ZW50OjpNb2RpZmllcjo6QWx0S2V5OwogICAgIGlmIChldmVudC5tb2RpZmllckZs
YWdzICYgV2ViRXZlbnRGbGFnTWFza0NvbW1hbmQpCiAgICAgICAgIG1vZGlmaWVycyB8PSBQbGF0
Zm9ybUV2ZW50OjpNb2RpZmllcjo6TWV0YUtleTsKKyAgICBpZiAoZXZlbnQubW9kaWZpZXJGbGFn
cyAmIFdlYkV2ZW50RmxhZ01hc2tBbHBoYVNoaWZ0KQorICAgICAgICBtb2RpZmllcnMgfD0gUGxh
dGZvcm1FdmVudDo6TW9kaWZpZXI6OkNhcHNMb2NrS2V5OwogCiAgICAgcmV0dXJuIG1vZGlmaWVy
czsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2
ZW50RmFjdG9yeU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybUV2
ZW50RmFjdG9yeU1hYy5tbQppbmRleCBjODdhNDQ2OTliYmJmNmU5YzJlNjQ4ZDViZWJjODMyN2E5
MjAxMDdmLi4yY2VjZDI5YmYwZjIxNDA0NjRkODVkNTNhNzYyNjA0MmE4NjkyNWI2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1FdmVudEZhY3RvcnlNYWMu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtRXZlbnRGYWN0b3J5
TWFjLm1tCkBAIC02OTAsOSArNjkwLDIwIEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0tleVVwRXZl
bnQoTlNFdmVudCAqZXZlbnQpCiAKIHN0YXRpYyBpbmxpbmUgT3B0aW9uU2V0PFBsYXRmb3JtRXZl
bnQ6Ok1vZGlmaWVyPiBtb2RpZmllcnNGb3JFdmVudChOU0V2ZW50ICpldmVudCkKIHsKLSNwcmFn
bWEgY2xhbmcgZGlhZ25vc3RpYyBwdXNoCi0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgaWdub3Jl
ZCAiLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9ucyIKICAgICBPcHRpb25TZXQ8UGxhdGZvcm1FdmVu
dDo6TW9kaWZpZXI+IG1vZGlmaWVyczsKKworI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVR
VUlSRUQgPj0gMTAxMjAwCisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2ZW50TW9k
aWZpZXJGbGFnU2hpZnQpCisgICAgICAgIG1vZGlmaWVycyB8PSBQbGF0Zm9ybUV2ZW50OjpNb2Rp
Zmllcjo6U2hpZnRLZXk7CisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2ZW50TW9k
aWZpZXJGbGFnQ29udHJvbCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1v
ZGlmaWVyOjpDdHJsS2V5OworICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlNFdmVudE1v
ZGlmaWVyRmxhZ09wdGlvbikKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1v
ZGlmaWVyOjpBbHRLZXk7CisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0V2ZW50TW9k
aWZpZXJGbGFnQ29tbWFuZCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1v
ZGlmaWVyOjpNZXRhS2V5OworICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlNFdmVudE1v
ZGlmaWVyRmxhZ0NhcHNMb2NrKQorICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6
TW9kaWZpZXI6OkNhcHNMb2NrS2V5OworI2Vsc2UKICAgICBpZiAoZXZlbnQubW9kaWZpZXJGbGFn
cyAmIE5TU2hpZnRLZXlNYXNrKQogICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6
TW9kaWZpZXI6OlNoaWZ0S2V5OwogICAgIGlmIChldmVudC5tb2RpZmllckZsYWdzICYgTlNDb250
cm9sS2V5TWFzaykKQEAgLTcwMSw3ICs3MTIsMTAgQEAgc3RhdGljIGlubGluZSBPcHRpb25TZXQ8
UGxhdGZvcm1FdmVudDo6TW9kaWZpZXI+IG1vZGlmaWVyc0ZvckV2ZW50KE5TRXZlbnQgKmV2ZW4K
ICAgICAgICAgbW9kaWZpZXJzIHw9IFBsYXRmb3JtRXZlbnQ6Ok1vZGlmaWVyOjpBbHRLZXk7CiAg
ICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0NvbW1hbmRLZXlNYXNrKQogICAgICAgICBt
b2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6TW9kaWZpZXI6Ok1ldGFLZXk7Ci0jcHJhZ21hIGNs
YW5nIGRpYWdub3N0aWMgcG9wCisgICAgaWYgKGV2ZW50Lm1vZGlmaWVyRmxhZ3MgJiBOU0FscGhh
U2hpZnRLZXlNYXNrKQorICAgICAgICBtb2RpZmllcnMgfD0gUGxhdGZvcm1FdmVudDo6TW9kaWZp
ZXI6OkNhcHNMb2NrS2V5OworI2VuZGlmCisKICAgICByZXR1cm4gbW9kaWZpZXJzOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tFdmVudC5oIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLRXZlbnQuaAppbmRleCAwNWM0M2E1OGRmZTIyMGM4N2Vh
MzY4YjE5ZTk1YjNhMDI3ZDU4YjY1Li40NzdkNTU0Yzk2NjA4YzYwZmNhZWE4N2I1OWJlYTVhMjNl
ZGY0OGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tFdmVudC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS0V2ZW50LmgKQEAgLTM2LDcgKzM2
LDggQEAgZW51bSB7CiAgICAga1dLRXZlbnRNb2RpZmllcnNTaGlmdEtleSA9IDEgPDwgMCwKICAg
ICBrV0tFdmVudE1vZGlmaWVyc0NvbnRyb2xLZXkgPSAxIDw8IDEsCiAgICAga1dLRXZlbnRNb2Rp
ZmllcnNBbHRLZXkgPSAxIDw8IDIsCi0gICAga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5ID0gMSA8
PCAzCisgICAga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5ID0gMSA8PCAzLAorICAgIGtXS0V2ZW50
TW9kaWZpZXJzQ2Fwc0xvY2tLZXkgPSAxIDw8IDQKIH07CiB0eXBlZGVmIHVpbnQzMl90IFdLRXZl
bnRNb2RpZmllcnM7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9X
S1NoYXJlZEFQSUNhc3QuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQ
SUNhc3QuaAppbmRleCA4NTE2YTJjZjQ5MTQzNzdhMDYwZWQ5YjJkN2EwYzFiMjQzMmIxZjYyLi42
Njk4NmFlNmQ0MDM2NjVhNTI2NmYzOTkyZTU3ZmE1ZDQ4YTY0YWNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgKKysrIGIvU291cmNlL1dl
YktpdDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCkBAIC0yOTQsNiArMjk0LDggQEAg
aW5saW5lIFdLRXZlbnRNb2RpZmllcnMgdG9BUEkoV2ViRXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmll
cnMpCiAgICAgICAgIHdrTW9kaWZpZXJzIHw9IGtXS0V2ZW50TW9kaWZpZXJzQWx0S2V5OwogICAg
IGlmIChtb2RpZmllcnMgJiBXZWJFdmVudDo6TWV0YUtleSkKICAgICAgICAgd2tNb2RpZmllcnMg
fD0ga1dLRXZlbnRNb2RpZmllcnNNZXRhS2V5OworICAgIGlmIChtb2RpZmllcnMgJiBXZWJFdmVu
dDo6Q2Fwc0xvY2tLZXkpCisgICAgICAgIHdrTW9kaWZpZXJzIHw9IGtXS0V2ZW50TW9kaWZpZXJz
Q2Fwc0xvY2tLZXk7CiAgICAgcmV0dXJuIHdrTW9kaWZpZXJzOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViRXZlbnRDb252ZXJzaW9uLmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJFdmVudENvbnZlcnNpb24uY3BwCmluZGV4IDNhNDM4YzgyMDFlN2VmZmJm
MzNkNTQ5MmY5OGY4ZmM2MjlhN2QzMTIuLjA2YmYzN2FiYTBjNjU2MzE1ODAzNDQ1YWU5NjkwYWNm
NGIzOWE5ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVudENvbnZl
cnNpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJFdmVudENvbnZlcnNpb24u
Y3BwCkBAIC03Niw2ICs3Niw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fbW9kaWZpZXJzIHw9
IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVudC5tZXRhS2V5KCkpCiAgICAg
ICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtleTsKKyAgICAgICAgaWYgKHdl
YkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmll
cjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAgPSB3ZWJFdmVudC50aW1lc3Rh
bXAoKTsKIApAQCAtMTI3LDYgKzEyOSw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1fbW9kaWZp
ZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVudC5tZXRhS2V5KCkp
CiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtleTsKKyAgICAgICAg
aWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBN
b2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAgPSB3ZWJFdmVudC50
aW1lc3RhbXAoKTsKIApAQCAtMTg1LDYgKzE4OSw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgIG1f
bW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVudC5tZXRh
S2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtleTsKKyAg
ICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21vZGlmaWVy
cyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAgPSB3ZWJF
dmVudC50aW1lc3RhbXAoKTsKIApAQCAtMzI0LDYgKzMzMCw4IEBAIHB1YmxpYzoKICAgICAgICAg
ICAgIG1fbW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3ZWJFdmVu
dC5tZXRhS2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6TWV0YUtl
eTsKKyAgICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAgICBtX21v
ZGlmaWVycyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1lc3RhbXAg
PSB3ZWJFdmVudC50aW1lc3RhbXAoKTsKIApAQCAtMzgxLDYgKzM4OSw4IEBAIHB1YmxpYzoKICAg
ICAgICAgICAgIG1fbW9kaWZpZXJzIHw9IE1vZGlmaWVyOjpBbHRLZXk7CiAgICAgICAgIGlmICh3
ZWJFdmVudC5tZXRhS2V5KCkpCiAgICAgICAgICAgICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6
TWV0YUtleTsKKyAgICAgICAgaWYgKHdlYkV2ZW50LmNhcHNMb2NrS2V5KCkpCisgICAgICAgICAg
ICBtX21vZGlmaWVycyB8PSBNb2RpZmllcjo6Q2Fwc0xvY2tLZXk7CiAKICAgICAgICAgbV90aW1l
c3RhbXAgPSB3ZWJFdmVudC50aW1lc3RhbXAoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvU2hhcmVkL2VmbC9XZWJFdmVudEZhY3RvcnkuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVk
L2VmbC9XZWJFdmVudEZhY3RvcnkuY3BwCmluZGV4IDBiYTExZTAzN2I0MmUxY2ZhMDIyMzBjNjQy
ZjlmZWQzMzcyZTc4M2EuLjFlNjBjNGU1ZGZmZTkzZGQ1ODA0N2QwZDczY2FkMjFlNjQ2ZTUwZTgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9lZmwvV2ViRXZlbnRGYWN0b3J5LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvZWZsL1dlYkV2ZW50RmFjdG9yeS5jcHAKQEAg
LTI1OCw2ICsyNTgsOCBAQCBzdGF0aWMgaW5saW5lIFdlYkV2ZW50OjpNb2RpZmllcnMgdG9XZWJF
dmVudE1vZGlmaWVycyh1bnNpZ25lZCBtb2RpZmllcnMpCiAgICAgICAgIHJlc3VsdCB8PSBXZWJF
dmVudDo6QWx0S2V5OwogICAgIGlmIChtb2RpZmllcnMgJiBrV0tFdmVudE1vZGlmaWVyc01ldGFL
ZXkpCiAgICAgICAgIHJlc3VsdCB8PSBXZWJFdmVudDo6TWV0YUtleTsKKyAgICBpZiAobW9kaWZp
ZXJzICYga1dLRXZlbnRNb2RpZmllcnNDYXBzTG9ja0tleSkKKyAgICAgICAgcmVzdWx0IHw9IFdl
YkV2ZW50OjpDYXBzTG9ja0tleTsKIAogICAgIHJldHVybiBzdGF0aWNfY2FzdDxXZWJFdmVudDo6
TW9kaWZpZXJzPihyZXN1bHQpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L2lvcy9XZWJJT1NFdmVudEZhY3RvcnkubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL1dl
YklPU0V2ZW50RmFjdG9yeS5tbQppbmRleCAxMjlmODgyODhiYTRiZGYwZTJhYmI3NmNhNWFiY2Iy
YTg0NWY0NTg4Li4xMTdjMDJkZjM3NGMwODQyNDk5MDA3MDE2OGVkYjEyM2JmMDVhNzA1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9yeS5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvaW9zL1dlYklPU0V2ZW50RmFjdG9yeS5tbQpAQCAt
NDQsNiArNDQsOCBAQCBzdGF0aWMgV2ViS2l0OjpXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVy
c0ZvckV2ZW50KFdlYklPU0V2ZW50ICpldmVudCkKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYktp
dDo6V2ViRXZlbnQ6OkFsdEtleTsKICAgICBpZiAoZXZlbnRNb2RpZmllckZsYWdzICYgV2ViRXZl
bnRGbGFnTWFza0NvbW1hbmQpCiAgICAgICAgIG1vZGlmaWVycyB8PSBXZWJLaXQ6OldlYkV2ZW50
OjpNZXRhS2V5OworICAgIGlmIChldmVudE1vZGlmaWVyRmxhZ3MgJiBXZWJFdmVudEZsYWdNYXNr
QWxwaGFTaGlmdCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFdlYktpdDo6V2ViRXZlbnQ6OkNhcHNM
b2NrS2V5OwogCiAgICAgcmV0dXJuIHN0YXRpY19jYXN0PFdlYktpdDo6V2ViRXZlbnQ6Ok1vZGlm
aWVycz4obW9kaWZpZXJzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9t
YWMvV2ViRXZlbnRGYWN0b3J5Lm1tIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9XZWJFdmVu
dEZhY3RvcnkubW0KaW5kZXggMzkxMzYxY2Y1MzMxMGRiZmY5MTVkMzFiNjU1MGFhNjdlZGYxMDk2
OS4uYTg1ZWZjYWVlOWE1MmQ4YzA0NTY2NmQ5NGM0OTE4NzBjYTY4YTdkMyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KKysrIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL21hYy9XZWJFdmVudEZhY3RvcnkubW0KQEAgLTMzOCw4ICszMzgsMTkg
QEAgc3RhdGljIGlubGluZSBib29sIGlzS2V5VXBFdmVudChOU0V2ZW50ICpldmVudCkKIHN0YXRp
YyBpbmxpbmUgV2ViRXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmllcnNGb3JFdmVudChOU0V2ZW50ICpl
dmVudCkKIHsKICAgICB1bnNpZ25lZCBtb2RpZmllcnMgPSAwOwotI3ByYWdtYSBjbGFuZyBkaWFn
bm9zdGljIHB1c2gKLSNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBpZ25vcmVkICItV2RlcHJlY2F0
ZWQtZGVjbGFyYXRpb25zIgorCisjaWYgX19NQUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+
PSAxMDEyMDAKKyAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNFdmVudE1vZGlmaWVy
RmxhZ0NhcHNMb2NrKQorICAgICAgICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6OkNhcHNMb2NrS2V5
OworICAgIGlmIChbZXZlbnQgbW9kaWZpZXJGbGFnc10gJiBOU0V2ZW50TW9kaWZpZXJGbGFnU2hp
ZnQpCisgICAgICAgIG1vZGlmaWVycyB8PSBXZWJFdmVudDo6U2hpZnRLZXk7CisgICAgaWYgKFtl
dmVudCBtb2RpZmllckZsYWdzXSAmIE5TRXZlbnRNb2RpZmllckZsYWdDb250cm9sKQorICAgICAg
ICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6OkNvbnRyb2xLZXk7CisgICAgaWYgKFtldmVudCBtb2Rp
ZmllckZsYWdzXSAmIE5TRXZlbnRNb2RpZmllckZsYWdPcHRpb24pCisgICAgICAgIG1vZGlmaWVy
cyB8PSBXZWJFdmVudDo6QWx0S2V5OworICAgIGlmIChbZXZlbnQgbW9kaWZpZXJGbGFnc10gJiBO
U0V2ZW50TW9kaWZpZXJGbGFnQ29tbWFuZCkKKyAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50
OjpNZXRhS2V5OworI2Vsc2UKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNBbHBo
YVNoaWZ0S2V5TWFzaykKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50OjpDYXBzTG9ja0tl
eTsKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNTaGlmdEtleU1hc2spCkBAIC0z
NTAsNyArMzYxLDggQEAgc3RhdGljIGlubGluZSBXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVy
c0ZvckV2ZW50KE5TRXZlbnQgKmV2ZW50KQogICAgICAgICBtb2RpZmllcnMgfD0gV2ViRXZlbnQ6
OkFsdEtleTsKICAgICBpZiAoW2V2ZW50IG1vZGlmaWVyRmxhZ3NdICYgTlNDb21tYW5kS2V5TWFz
aykKICAgICAgICAgbW9kaWZpZXJzIHw9IFdlYkV2ZW50OjpNZXRhS2V5OwotI3ByYWdtYSBjbGFu
ZyBkaWFnbm9zdGljIHBvcAorI2VuZGlmCisKICAgICByZXR1cm4gKFdlYkV2ZW50OjpNb2RpZmll
cnMpbW9kaWZpZXJzOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLTmF2aWdhdGlvbkFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tCmluZGV4IDk2OTRlZjBhOWIwYzJhNTY4
MmM5YzlhYTQwM2EzZmFkNmJjZTNmYjEuLmJhMTk5NmIyMTc0ZTIzZTQ3Nzg0NjM3ZWQ3MjEwN2M3
NTFiMGMzY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tOYXZpZ2F0aW9uQWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tOYXZpZ2F0aW9uQWN0aW9uLm1tCkBAIC03OSw4ICs3OSwxOCBAQCBzdGF0aWMgTlNF
dmVudE1vZGlmaWVyRmxhZ3MgdG9OU0V2ZW50TW9kaWZpZXJGbGFncyhXZWJLaXQ6OldlYkV2ZW50
OjpNb2RpZmllcnMgbQogewogICAgIE5TRXZlbnRNb2RpZmllckZsYWdzIG1vZGlmaWVyRmxhZ3Mg
PSAwOwogCi0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcHVzaAotI3ByYWdtYSBjbGFuZyBkaWFn
bm9zdGljIGlnbm9yZWQgIi1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnMiCisjaWYgX19NQUNfT1Nf
WF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEyMDAKKyAgICBpZiAobW9kaWZpZXJzICYgV2Vi
S2l0OjpXZWJFdmVudDo6Q2Fwc0xvY2tLZXkpCisgICAgICAgIG1vZGlmaWVyRmxhZ3MgfD0gTlNF
dmVudE1vZGlmaWVyRmxhZ0NhcHNMb2NrOworICAgIGlmIChtb2RpZmllcnMgJiBXZWJLaXQ6Oldl
YkV2ZW50OjpTaGlmdEtleSkKKyAgICAgICAgbW9kaWZpZXJGbGFncyB8PSBOU0V2ZW50TW9kaWZp
ZXJGbGFnU2hpZnQ7CisgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6OkNvbnRy
b2xLZXkpCisgICAgICAgIG1vZGlmaWVyRmxhZ3MgfD0gTlNFdmVudE1vZGlmaWVyRmxhZ0NvbnRy
b2w7CisgICAgaWYgKG1vZGlmaWVycyAmIFdlYktpdDo6V2ViRXZlbnQ6OkFsdEtleSkKKyAgICAg
ICAgbW9kaWZpZXJGbGFncyB8PSBOU0V2ZW50TW9kaWZpZXJGbGFnT3B0aW9uOworICAgIGlmICht
b2RpZmllcnMgJiBXZWJLaXQ6OldlYkV2ZW50OjpNZXRhS2V5KQorICAgICAgICBtb2RpZmllckZs
YWdzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDb21tYW5kOworI2Vsc2UKICAgICBpZiAobW9kaWZp
ZXJzICYgV2ViS2l0OjpXZWJFdmVudDo6Q2Fwc0xvY2tLZXkpCiAgICAgICAgIG1vZGlmaWVyRmxh
Z3MgfD0gTlNBbHBoYVNoaWZ0S2V5TWFzazsKICAgICBpZiAobW9kaWZpZXJzICYgV2ViS2l0OjpX
ZWJFdmVudDo6U2hpZnRLZXkpCkBAIC05MSw3ICsxMDEsOCBAQCBzdGF0aWMgTlNFdmVudE1vZGlm
aWVyRmxhZ3MgdG9OU0V2ZW50TW9kaWZpZXJGbGFncyhXZWJLaXQ6OldlYkV2ZW50OjpNb2RpZmll
cnMgbQogICAgICAgICBtb2RpZmllckZsYWdzIHw9IE5TQWx0ZXJuYXRlS2V5TWFzazsKICAgICBp
ZiAobW9kaWZpZXJzICYgV2ViS2l0OjpXZWJFdmVudDo6TWV0YUtleSkKICAgICAgICAgbW9kaWZp
ZXJGbGFncyB8PSBOU0NvbW1hbmRLZXlNYXNrOwotI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHBv
cAorI2VuZGlmCisKICAgICByZXR1cm4gbW9kaWZpZXJGbGFnczsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0NvY29hL1dlYkF1dG9tYXRpb25TZXNzaW9uQ29jb2Eu
bW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNlc3Npb25D
b2NvYS5tbQppbmRleCBlMzQzYmI4YTc2NzkwYWIwOTIyNGY1NGE4YzMwZDI4ZTczZDc2ZGFkLi4x
MjFkOGYwODU5NGY1OTRmZThiZjNlNTZhNDVhMThiMmNjNDQ1ZDFjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNlc3Npb25Db2NvYS5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29jb2EvV2ViQXV0b21hdGlvblNlc3Npb25D
b2NvYS5tbQpAQCAtMTA3LDYgKzEwNyw4IEBAIHZvaWQgV2ViQXV0b21hdGlvblNlc3Npb246OnBs
YXRmb3JtU2ltdWxhdGVNb3VzZUludGVyYWN0aW9uKFdlYlBhZ2VQcm94eSYgcGFnZSwKICAgICAg
ICAgbW9kaWZpZXJzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDb250cm9sOwogICAgIGlmIChrZXlN
b2RpZmllcnMgJiBXZWJFdmVudDo6U2hpZnRLZXkpCiAgICAgICAgIG1vZGlmaWVycyB8PSBOU0V2
ZW50TW9kaWZpZXJGbGFnU2hpZnQ7CisgICAgaWYgKGtleU1vZGlmaWVycyAmIFdlYkV2ZW50OjpD
YXBzTG9ja0tleSkKKyAgICAgICAgbW9kaWZpZXJzIHw9IE5TRXZlbnRNb2RpZmllckZsYWdDYXBz
TG9jazsKIAogICAgIE5TVGltZUludGVydmFsIHRpbWVzdGFtcCA9IFtOU0RhdGUgdGltZUludGVy
dmFsU2luY2VSZWZlcmVuY2VEYXRlXTsKICAgICBOU1dpbmRvdyAqd2luZG93ID0gcGFnZS5wbGF0
Zm9ybVdpbmRvdygpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdl
TG9nCmluZGV4IGJlZjE5ZjE2OTYwNzdkNzBkYmYwZTJmODU0Y2FlYmJiM2FlM2YxMjMuLmNlZDBm
ZTZiYTZlOTQzN2I4N2UzOGNlYWQ1NjA4YjY5YjA4M2E2MDEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0No
YW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMCBAQAorMjAxNi0xMC0w
NSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIEtleWJvYXJkRXZl
bnQuZ2V0TW9kaWZpZXJTdGF0ZSgpIHNob3VsZCBzdXBwb3J0ICJDYXBzTG9jayIgbW9kaWZpZXIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2Mjg2MQor
CisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIEFkZCBzdXBwb3J0
IGZvciAnY2Fwc0xvY2tLZXknIG1vZGlmaWVyIGZvciBFdmVudFNlbmRlci5rZXlEb3duKCkgc28K
KyAgICAgICAgdGhhdCB3ZSBjYW4gdGVzdCB0aGlzIG5ldyBtb2RpZmllciBzdXBwb3J0IGZvciBs
YXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL21hYy9QbGF0Zm9ybVdlYlZp
ZXdNYWMubW06CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjptb2RpZmllckZsYWdzRm9yV0tNb2Rp
ZmllcnMpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvRXZlbnRT
ZW5kaW5nQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXVFI6OnBhcnNlTW9kaWZpZXIpOgorICAg
ICAgICAqIFdlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVyUHJveHkubW06CisgICAgICAg
IChXVFI6OmJ1aWxkTW9kaWZpZXJGbGFncyk6CisKIDIwMTYtMTAtMDUgIFphbiBEb2JlcnNlayAg
PHpkb2JlcnNla0BpZ2FsaWEuY29tPgogCiAgICAgICAgIFJlbmFtZSBFTkFCTEVfRU5DUllQVEVE
X01FRElBX1YyIHRvIEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBCmRpZmYgLS1naXQgYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbSBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCmluZGV4IDkzOTk5
YTI1ODRjYzNiZmM1ZTM4ZjBkZGI2NTEzZjFiZDQxZGJjNTYuLmUxYjNlZmE5NjIxMThmOTEzMGFl
ODg3YTEwOTg0ZjYxYzNjOWE4ZTYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCkBAIC00MzcsMTEgKzQzNywxMyBAQCBzdGF0aWMg
aW50IG1vZGlmaWVyRmxhZ3MoY29uc3QgTlNTdHJpbmcqIG1vZGlmaWVyTmFtZSkKICAgICBjb25z
dCBpbnQgc2hpZnRLZXlNYXNrID0gTlNTaGlmdEtleU1hc2s7CiAgICAgY29uc3QgaW50IGFsdGVy
bmF0ZUtleU1hc2sgPSBOU0FsdGVybmF0ZUtleU1hc2s7CiAgICAgY29uc3QgaW50IGNvbW1hbmRL
ZXlNYXNrID0gTlNDb21tYW5kS2V5TWFzazsKKyAgICBjb25zdCBpbnQgY2Fwc0xvY2tLZXlNYXNr
ID0gTlNBbHBoYVNoaWZ0S2V5TWFzazsKICNlbHNlCiAgICAgY29uc3QgaW50IGNvbnRyb2xLZXlN
YXNrID0gV2ViRXZlbnRGbGFnTWFza0NvbnRyb2w7CiAgICAgY29uc3QgaW50IHNoaWZ0S2V5TWFz
ayA9IFdlYkV2ZW50RmxhZ01hc2tTaGlmdDsKICAgICBjb25zdCBpbnQgYWx0ZXJuYXRlS2V5TWFz
ayA9IFdlYkV2ZW50RmxhZ01hc2tBbHRlcm5hdGU7CiAgICAgY29uc3QgaW50IGNvbW1hbmRLZXlN
YXNrID0gV2ViRXZlbnRGbGFnTWFza0NvbW1hbmQ7CisgICAgY29uc3QgaW50IGNhcHNMb2NrS2V5
TWFzayA9IFdlYkV2ZW50RmxhZ01hc2tBbHBoYVNoaWZ0OwogI2VuZGlmCiAKICAgICBpbnQgZmxh
Z3MgPSAwOwpAQCAtNDUzLDYgKzQ1NSw4IEBAIHN0YXRpYyBpbnQgbW9kaWZpZXJGbGFncyhjb25z
dCBOU1N0cmluZyogbW9kaWZpZXJOYW1lKQogICAgICAgICBmbGFncyB8PSBhbHRlcm5hdGVLZXlN
YXNrOwogICAgIGVsc2UgaWYgKFttb2RpZmllck5hbWUgaXNFcXVhbDpAIm1ldGFLZXkiXSB8fCBb
bW9kaWZpZXJOYW1lIGlzRXF1YWw6QCJhZGRTZWxlY3Rpb25LZXkiXSkKICAgICAgICAgZmxhZ3Mg
fD0gY29tbWFuZEtleU1hc2s7CisgICAgZWxzZSBpZiAoW21vZGlmaWVyTmFtZSBpc0VxdWFsOkAi
Y2Fwc0xvY2tLZXkiXSkKKyAgICAgICAgZmxhZ3MgfD0gY2Fwc0xvY2tLZXlNYXNrOwogCiAgICAg
cmV0dXJuIGZsYWdzOwogfQpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQSS9tYWMvUGxh
dGZvcm1XZWJWaWV3TWFjLm1tIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9tYWMvUGxhdGZvcm1XZWJW
aWV3TWFjLm1tCmluZGV4IDMxNTljZWNiNGEwOWM3NzZjZTMyYzNkNzAxNWE2YjVmZmI2ODVjZTYu
LmFkMzVmNTg2Y2Y3MjM1OWEzYjdlOTEzNmY5ZWJlYmExNjIyZjdjN2QgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1Rlc3RXZWJLaXRBUEkvbWFjL1BsYXRmb3JtV2ViVmlld01hYy5tbQorKysgYi9Ub29scy9U
ZXN0V2ViS2l0QVBJL21hYy9QbGF0Zm9ybVdlYlZpZXdNYWMubW0KQEAgLTIyMCw2ICsyMjAsOCBA
QCBzdGF0aWMgTlNFdmVudE1vZGlmaWVyRmxhZ3MgbW9kaWZpZXJGbGFnc0ZvcldLTW9kaWZpZXJz
KFdLRXZlbnRNb2RpZmllcnMgbW9kaWZpZQogICAgICAgICByZXR1cm5WYWwgfD0gTlNBbHRlcm5h
dGVLZXlNYXNrOwogICAgIGlmIChtb2RpZmllcnMgJiBrV0tFdmVudE1vZGlmaWVyc01ldGFLZXkp
CiAgICAgICAgIHJldHVyblZhbCB8PSBOU0NvbW1hbmRLZXlNYXNrOworICAgIGlmIChtb2RpZmll
cnMgJiBrV0tFdmVudE1vZGlmaWVyc0NhcHNMb2NrS2V5KQorICAgICAgICByZXR1cm5WYWwgfD0g
TlNBbHBoYVNoaWZ0S2V5TWFzazsKIAogICAgIHJldHVybiByZXR1cm5WYWw7CiB9CmRpZmYgLS1n
aXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2VuZGluZ0Nv
bnRyb2xsZXIuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9FdmVu
dFNlbmRpbmdDb250cm9sbGVyLmNwcAppbmRleCAwZmFhMmYzOTgzY2Y3YTkxZTc5MWZkZjc0NDFm
NGNkOWQ5ZTlmMzUyLi4zZTgxZGI5ZDMyOTQ3MzMyMGY0MmRjMDk3OTg2MmViN2QwZTE2Y2Q3IDEw
MDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0V2ZW50U2Vu
ZGluZ0NvbnRyb2xsZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5jcHAKQEAgLTExNiw2ICsxMTYsOCBAQCBzdGF0
aWMgV0tFdmVudE1vZGlmaWVycyBwYXJzZU1vZGlmaWVyKEpTU3RyaW5nUmVmIG1vZGlmaWVyKQog
ICAgICAgICByZXR1cm4ga1dLRXZlbnRNb2RpZmllcnNBbHRLZXk7CiAgICAgaWYgKEpTU3RyaW5n
SXNFcXVhbFRvVVRGOENTdHJpbmcobW9kaWZpZXIsICJtZXRhS2V5IikpCiAgICAgICAgIHJldHVy
biBrV0tFdmVudE1vZGlmaWVyc01ldGFLZXk7CisgICAgaWYgKEpTU3RyaW5nSXNFcXVhbFRvVVRG
OENTdHJpbmcobW9kaWZpZXIsICJjYXBzTG9ja0tleSIpKQorICAgICAgICByZXR1cm4ga1dLRXZl
bnRNb2RpZmllcnNDYXBzTG9ja0tleTsKICAgICBpZiAoSlNTdHJpbmdJc0VxdWFsVG9VVEY4Q1N0
cmluZyhtb2RpZmllciwgImFkZFNlbGVjdGlvbktleSIpKSB7CiAjaWYgT1MoTUFDX09TX1gpCiAg
ICAgICAgIHJldHVybiBrV0tFdmVudE1vZGlmaWVyc01ldGFLZXk7CmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNlbmRlclByb3h5Lm1tIGIvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9tYWMvRXZlbnRTZW5kZXJQcm94eS5tbQppbmRleCAxOWI1YTM3YjM2ZGQxMmI3
NDAyMjFlMzYzN2IwNGIxZjY4MjUxNGRmLi5jYWZjM2VkZGE5YmY4NWVlMTA2NWFmZGUwODlmMTY0
OTM1NjQxZTZiIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL21hYy9FdmVudFNl
bmRlclByb3h5Lm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvbWFjL0V2ZW50U2VuZGVy
UHJveHkubW0KQEAgLTI1MCw2ICsyNTAsOCBAQCBzdGF0aWMgaW50IGJ1aWxkTW9kaWZpZXJGbGFn
cyhXS0V2ZW50TW9kaWZpZXJzIG1vZGlmaWVycykKICAgICAgICAgZmxhZ3MgfD0gTlNBbHRlcm5h
dGVLZXlNYXNrOwogICAgIGlmIChtb2RpZmllcnMgJiBrV0tFdmVudE1vZGlmaWVyc01ldGFLZXkp
CiAgICAgICAgIGZsYWdzIHw9IE5TQ29tbWFuZEtleU1hc2s7CisgICAgaWYgKG1vZGlmaWVycyAm
IGtXS0V2ZW50TW9kaWZpZXJzQ2Fwc0xvY2tLZXkpCisgICAgICAgIGZsYWdzIHw9IE5TQWxwaGFT
aGlmdEtleU1hc2s7CiAgICAgcmV0dXJuIGZsYWdzOwogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZmI3NGFhMGQ1MTZm
NzY4OWE1ODQyOTM5MWI4OTRjZTBhODE3NmEyZi4uOGM3OWM2OTBhMzRlMjZkZTlmNGFmZjA1ZjFm
OGM3MjUxZmE4NDQ0ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE2LTEwLTA1ICBDaHJpcyBE
dW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgS2V5Ym9hcmRFdmVudC5nZXRNb2Rp
ZmllclN0YXRlKCkgc2hvdWxkIHN1cHBvcnQgIkNhcHNMb2NrIiBtb2RpZmllcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYyODYxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgRXh0ZW5kIGxheW91dCB0ZXN0IGNv
dmVyYWdlIHRvIGNvdmVyICdDYXBzIExvY2snIG1vZGlmaWVyLgorCisgICAgICAgICogZmFzdC9l
dmVudHMvc3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQtZXhwZWN0ZWQudHh0OgorICAg
ICAgICAqIGZhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0Lmh0bWw6
CisKIDIwMTYtMTAtMDUgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgogCiAgICAg
ICAgIFtXSzJdW05ldHdvcmtTZXNzaW9uXSBQaW5nIHJlcXVlc3RzIHNob3VsZCBmb2xsb3cgcmVk
aXJlY3RzIGlmIGFwcGxpY2FibGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRz
L3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0LWV4cGVjdGVk
LnR4dAppbmRleCA1OTdiNzc0YWY0ZDRmZGY1ODcwYzJkODY3MGY3NWFjZmMzZGJmMTkzLi44Njcw
NmQ4M2ZiYjk0ZjliZmYzODQ3NzU0MmM5M2QyYzMwNDk0NjJhIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvc3BlY2lhbC1rZXktZXZlbnRzLWlu
LWlucHV0LXRleHQtZXhwZWN0ZWQudHh0CkBAIC0xLDQ5ICsxLDU1IEBACiBUaGlzIHRlc3QgdmVy
aWZpZXMgdGhhdCB0aGUgY29ycmVjdCBzZXF1ZW5jZSBvZiBrZXlib2FyZCBldmVudHMgaXMgZ2Vu
ZXJhdGVkIGZvciBhIGtleXByZXNzIGZvciBjZXJ0YWluIHNwZWNpYWwga2V5cy4gVG8gdGVzdCBt
YW51YWxseSwgcHJlc3Mga2V5cyBhbmQgY29tcGFyZSByZXN1bHRzIHRvIG90aGVyIGJyb3dzZXJz
LgogCiAKLXRhcmdldCAtIHR5cGUgLSBjdHJsS2V5LGFsdEtleSxzaGlmdEtleSxtZXRhS2V5IC0g
a2V5IC0gY29kZSAtIGtleUlkZW50aWZpZXIgLSBrZXlDb2RlIC0gY2hhckNvZGUKK3RhcmdldCAt
IHR5cGUgLSBjdHJsS2V5LGFsdEtleSxzaGlmdEtleSxtZXRhS2V5LGNhcHNMb2NrS2V5IC0ga2V5
IC0gY29kZSAtIGtleUlkZW50aWZpZXIgLSBrZXlDb2RlIC0gY2hhckNvZGUKIAogQW1wZXJzYW5k
OgotSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDcgLSBEaWdpdDcg
LSBVKzAwMzcgLSA1NSAtIDAuIFZhbHVlOiAiIi4KLUlOUFVUIC0ga2V5cHJlc3MgLSBmYWxzZSxm
YWxzZSx0cnVlLGZhbHNlIC0gNyAtIERpZ2l0NyAtIC0gNTUgLSA1NS4gVmFsdWU6ICIiLgorSU5Q
VVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDcgLSBEaWdpdDcg
LSBVKzAwMzcgLSA1NSAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5cHJlc3MgLSBmYWxzZSxm
YWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gNyAtIERpZ2l0NyAtIC0gNTUgLSA1NS4gVmFsdWU6ICIi
LgogSU5QVVQgLSB0ZXh0SW5wdXQgLSA3LiBWYWx1ZTogIiIuCi1JTlBVVCAtIGtleXVwIC0gZmFs
c2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDcgLSBEaWdpdDcgLSBVKzAwMzcgLSA1NSAtIDAuIFZhbHVl
OiAiNyIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDcg
LSBEaWdpdDcgLSBVKzAwMzcgLSA1NSAtIDAuIFZhbHVlOiAiNyIuCiAKIEJhY2tzcGFjZToKLUlO
UFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFj
a3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiNyIuCi1JTlBVVCAtIGtleXVwIC0gZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4
IC0gMC4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6
ICI3Ii4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJh
Y2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIiIuCiAKIFBlcmNl
bnQ6Ci1JTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gNSAtIERpZ2l0
NSAtIFUrMDAzNSAtIDUzIC0gMC4gVmFsdWU6ICIiLgotSU5QVVQgLSBrZXlwcmVzcyAtIGZhbHNl
LGZhbHNlLHRydWUsZmFsc2UgLSA1IC0gRGlnaXQ1IC0gLSA1MyAtIDUzLiBWYWx1ZTogIiIuCitJ
TlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0gNSAtIERpZ2l0
NSAtIFUrMDAzNSAtIDUzIC0gMC4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlwcmVzcyAtIGZhbHNl
LGZhbHNlLHRydWUsZmFsc2UsZmFsc2UgLSA1IC0gRGlnaXQ1IC0gLSA1MyAtIDUzLiBWYWx1ZTog
IiIuCiBJTlBVVCAtIHRleHRJbnB1dCAtIDUuIFZhbHVlOiAiIi4KLUlOUFVUIC0ga2V5dXAgLSBm
YWxzZSxmYWxzZSx0cnVlLGZhbHNlIC0gNSAtIERpZ2l0NSAtIFUrMDAzNSAtIDUzIC0gMC4gVmFs
dWU6ICI1Ii4KK0lOUFVUIC0ga2V5dXAgLSBmYWxzZSxmYWxzZSx0cnVlLGZhbHNlLGZhbHNlIC0g
NSAtIERpZ2l0NSAtIFUrMDAzNSAtIDUzIC0gMC4gVmFsdWU6ICI1Ii4KIAogQmFja3NwYWNlOgot
SU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBC
YWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6ICI1Ii4KLUlOUFVUIC0ga2V5dXAgLSBm
YWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAt
IDggLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxzZSxm
YWxzZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1
ZTogIjUiLgorSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0g
QmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiIi4KIAogTGVm
dCBwYXJlbnRoZXNpczoKLUlOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2Ug
LSA5IC0gRGlnaXQ5IC0gVSswMDM5IC0gNTcgLSAwLiBWYWx1ZTogIiIuCi1JTlBVVCAtIGtleXBy
ZXNzIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDkgLSBEaWdpdDkgLSAtIDU3IC0gNTcuIFZh
bHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2Ug
LSA5IC0gRGlnaXQ5IC0gVSswMDM5IC0gNTcgLSAwLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtleXBy
ZXNzIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDkgLSBEaWdpdDkgLSAtIDU3IC0g
NTcuIFZhbHVlOiAiIi4KIElOUFVUIC0gdGV4dElucHV0IC0gOS4gVmFsdWU6ICIiLgotSU5QVVQg
LSBrZXl1cCAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSA5IC0gRGlnaXQ5IC0gVSswMDM5IC0g
NTcgLSAwLiBWYWx1ZTogIjkiLgorSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLHRydWUsZmFs
c2UsZmFsc2UgLSA5IC0gRGlnaXQ5IC0gVSswMDM5IC0gNTcgLSAwLiBWYWx1ZTogIjkiLgogCiBC
YWNrc3BhY2U6Ci1JTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSAtIEJh
Y2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTogIjkiLgotSU5QVVQg
LSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNl
IC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNlIC0gVSswMDA4IC0g
OCAtIDAuIFZhbHVlOiAiOSIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4IC0gMC4gVmFsdWU6
ICIiLgogCiBSaWdodCBwYXJlbnRoZXNpczoKLUlOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNl
LHRydWUsZmFsc2UgLSAwIC0gRGlnaXQwIC0gVSswMDMwIC0gNDggLSAwLiBWYWx1ZTogIiIuCi1J
TlBVVCAtIGtleXByZXNzIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSAtIDAgLSBEaWdpdDAgLSAt
IDQ4IC0gNDguIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLHRydWUs
ZmFsc2UsZmFsc2UgLSAwIC0gRGlnaXQwIC0gVSswMDMwIC0gNDggLSAwLiBWYWx1ZTogIiIuCitJ
TlBVVCAtIGtleXByZXNzIC0gZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSAtIDAgLSBEaWdp
dDAgLSAtIDQ4IC0gNDguIFZhbHVlOiAiIi4KIElOUFVUIC0gdGV4dElucHV0IC0gMC4gVmFsdWU6
ICIiLgotSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLHRydWUsZmFsc2UgLSAwIC0gRGlnaXQw
IC0gVSswMDMwIC0gNDggLSAwLiBWYWx1ZTogIjAiLgorSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZh
bHNlLHRydWUsZmFsc2UsZmFsc2UgLSAwIC0gRGlnaXQwIC0gVSswMDMwIC0gNDggLSAwLiBWYWx1
ZTogIjAiLgogCiBCYWNrc3BhY2U6Ci1JTlBVVCAtIGtleWRvd24gLSBmYWxzZSxmYWxzZSxmYWxz
ZSxmYWxzZSAtIEJhY2tzcGFjZSAtIEJhY2tzcGFjZSAtIFUrMDAwOCAtIDggLSAwLiBWYWx1ZTog
IjAiLgotSU5QVVQgLSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNl
IC0gQmFja3NwYWNlIC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiIi4KK0lOUFVUIC0ga2V5ZG93
biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gQmFja3NwYWNlIC0gQmFja3NwYWNl
IC0gVSswMDA4IC0gOCAtIDAuIFZhbHVlOiAiMCIuCitJTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBCYWNrc3BhY2UgLSBCYWNrc3BhY2UgLSBVKzAwMDggLSA4
IC0gMC4gVmFsdWU6ICIiLgogCiBQcmludCBzY3JlZW46Ci1JTlBVVCAtIGtleWRvd24gLSBmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSAtIFByaW50U2NyZWVuIC0gS2V5QSAtIFByaW50U2NyZWVuIC0g
NDQgLSAwLiBWYWx1ZTogIiIuCi1JTlBVVCAtIGtleXVwIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFs
c2UgLSBQcmludFNjcmVlbiAtIEtleUEgLSBQcmludFNjcmVlbiAtIDQ0IC0gMC4gVmFsdWU6ICIi
LgorSU5QVVQgLSBrZXlkb3duIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UgLSBQcmlu
dFNjcmVlbiAtIEtleUEgLSBQcmludFNjcmVlbiAtIDQ0IC0gMC4gVmFsdWU6ICIiLgorSU5QVVQg
LSBrZXl1cCAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlIC0gUHJpbnRTY3JlZW4gLSBL
ZXlBIC0gUHJpbnRTY3JlZW4gLSA0NCAtIDAuIFZhbHVlOiAiIi4KKworJ2EnIGtleSB3aXRoIENh
cHMgTG9jazoKK0lOUFVUIC0ga2V5ZG93biAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUg
LSBhIC0gS2V5QSAtIFUrMDA0MSAtIDY1IC0gMC4gVmFsdWU6ICIiLgorSU5QVVQgLSBrZXlwcmVz
cyAtIGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUgLSBhIC0gS2V5QSAtIC0gOTcgLSA5Ny4g
VmFsdWU6ICIiLgorSU5QVVQgLSB0ZXh0SW5wdXQgLSBhLiBWYWx1ZTogIiIuCitJTlBVVCAtIGtl
eXVwIC0gZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSAtIGEgLSBLZXlBIC0gVSswMDQxIC0g
NjUgLSAwLiBWYWx1ZTogImEiLgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50
cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvc3BlY2lhbC1rZXktZXZlbnRzLWluLWlucHV0LXRleHQuaHRtbAppbmRleCA3Nzgx
MmU5ZTBmNjY0YWYyZjdhMWI4NjBmMGFhZjU4OGY4MzMyODNhLi44OTdjMTIwZjcxY2U4MWNjNDQ2
ZTNjMmViZDNlNWVhODNkMmQwYmY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50
cy9zcGVjaWFsLWtleS1ldmVudHMtaW4taW5wdXQtdGV4dC5odG1sCisrKyBiL0xheW91dFRlc3Rz
L2Zhc3QvZXZlbnRzL3NwZWNpYWwta2V5LWV2ZW50cy1pbi1pbnB1dC10ZXh0Lmh0bWwKQEAgLTE3
LDcgKzE3LDcgQEAgZnVuY3Rpb24gbG9nRXZlbnQoZSkgewogICAgaWYgKHR5cGUgPT0gInRleHRJ
bnB1dCIpIHsKICAgICAgaW5mbyArPSBlLmRhdGE7CiAgICB9IGVsc2UgaWYgKHR5cGUgPT0gImtl
eWRvd24iIHx8IHR5cGUgPT0gImtleXByZXNzIiB8fCB0eXBlID09ICJrZXl1cCIpIHsKLSAgICAg
aW5mbyArPSBbZS5jdHJsS2V5LCBlLmFsdEtleSwgZS5zaGlmdEtleSwgZS5tZXRhS2V5XSArCisg
ICAgIGluZm8gKz0gW2UuY3RybEtleSwgZS5hbHRLZXksIGUuc2hpZnRLZXksIGUubWV0YUtleSwg
ZS5nZXRNb2RpZmllclN0YXRlKCdDYXBzTG9jaycpXSArCiAgICAgICAgICAnIC0gJyArIGUua2V5
ICsKICAgICAgICAgICcgLSAnICsgZS5jb2RlICsKICAgICAgICAgICcgLSAnICsgZS5rZXlJZGVu
dGlmaWVyICsKQEAgLTI4LDcgKzI4LDcgQEAgZnVuY3Rpb24gbG9nRXZlbnQoZSkgewogICAgbG9n
KGluZm8pOwogfQogCi1sb2coInRhcmdldCAtIHR5cGUgLSAiICsgWyJjdHJsS2V5IiwgImFsdEtl
eSIsICJzaGlmdEtleSIsICJtZXRhS2V5Il0KK2xvZygidGFyZ2V0IC0gdHlwZSAtICIgKyBbImN0
cmxLZXkiLCAiYWx0S2V5IiwgInNoaWZ0S2V5IiwgIm1ldGFLZXkiLCAiY2Fwc0xvY2tLZXkiXQog
ICAgICAgICsgJyAtICcgKyAia2V5IgogICAgICAgICsgJyAtICcgKyAiY29kZSIKICAgICAgICAr
ICcgLSAnICsgImtleUlkZW50aWZpZXIiCkBAIC02Miw2ICs2Miw4IEBAIGlmICh3aW5kb3cudGVz
dFJ1bm5lcikgewogICAgZXZlbnRTZW5kZXIua2V5RG93bigiXHgwOCIsIFtdKTsKICAgIGxvZygi
PGJyPlByaW50IHNjcmVlbjoiKTsKICAgIGV2ZW50U2VuZGVyLmtleURvd24oInByaW50U2NyZWVu
IiwgW10pOworICAgbG9nKCI8YnI+J2EnIGtleSB3aXRoIENhcHMgTG9jazoiKTsKKyAgIGV2ZW50
U2VuZGVyLmtleURvd24oImEiLCBbImNhcHNMb2NrS2V5Il0pOwogICB9CiA8L3NjcmlwdD4KIDwv
Ym9keT48L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>