<?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>124161</bug_id>
          
          <creation_ts>2013-11-11 12:18:42 -0800</creation_ts>
          <short_desc>Support WebCrypto KeyPair interface</short_desc>
          <delta_ts>2013-11-11 13:18:19 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>122679</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ggaren</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>philn</cc>
    
    <cc>rakuco</cc>
    
    <cc>sam</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>949400</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-11-11 12:18:42 -0800</bug_when>
    <thetext>RSA key generation will return a private/public key pair.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949407</commentid>
    <comment_count>1</comment_count>
      <attachid>216599</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-11-11 12:40:32 -0800</bug_when>
    <thetext>Created attachment 216599
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949415</commentid>
    <comment_count>2</comment_count>
      <attachid>216599</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-11-11 12:58:51 -0800</bug_when>
    <thetext>Comment on attachment 216599
proposed patch

r=me

You are the first soul to get an addOpaqueRoot call right on the first try. Hooray?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949424</commentid>
    <comment_count>3</comment_count>
      <attachid>216605</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-11-11 13:07:43 -0800</bug_when>
    <thetext>Created attachment 216605
with less Gtk build breakage</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949429</commentid>
    <comment_count>4</comment_count>
      <attachid>216605</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-11 13:18:17 -0800</bug_when>
    <thetext>Comment on attachment 216605
with less Gtk build breakage

Clearing flags on attachment: 216605

Committed r159068: &lt;http://trac.webkit.org/changeset/159068&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>949430</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-11 13:18:19 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>216599</attachid>
            <date>2013-11-11 12:40:32 -0800</date>
            <delta_ts>2013-11-11 13:07:43 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>CryptoKeyPair.txt</filename>
            <type>text/plain</type>
            <size>20839</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTA2MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBACisyMDEzLTExLTExICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFN1cHBvcnQgV2ViQ3J5cHRv
IEtleVBhaXIgaW50ZXJmYWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMjQxNjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMgeWV0LCB3aWxsIGJlIHRlc3RlZCBvbmNlIGdlbmVyYXRl
S2V5IGlzIGltcGxlbWVudGVkIGZvciBhbnkgUlNBIGFsZ29yaXRobXMuCisKKyAgICAgICAgKiBD
TWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAq
IEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICBBZGRlZCBuZXcgZmlsZXMuCisKKyAgICAgICAgKiBiaW5kaW5n
cy9qcy9KU0RPTVByb21pc2UuaDogU3VwcG9ydCByZXR1cm5pbmcgYSBrZXkgcGFpciB2aWEgYSBw
cm9taXNlLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNDcnlwdG9LZXlQYWlyQ3VzdG9tLmNw
cDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0NyeXB0b0tleVBhaXI6OnZpc2l0Q2hpbGRy
ZW4pOgorICAgICAgICAqIGNyeXB0by9DcnlwdG9LZXkuaWRsOgorICAgICAgICBDcnlwdG9LZXkg
d3JhcHBlciBpcyByZWFjaGFibGUgdGhyb3VnaCBLZXlQYWlyLCBidXQgaXQgZG9lc24ndCBoYXZl
IChvciBuZWVkKQorICAgICAgICBhIGJhY2sgcG9pbnRlci4KKworICAgICAgICAqIGNyeXB0by9D
cnlwdG9LZXlQYWlyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlQYWly
OjpDcnlwdG9LZXlQYWlyKToKKyAgICAgICAgKFdlYkNvcmU6OkNyeXB0b0tleVBhaXI6On5Dcnlw
dG9LZXlQYWlyKToKKyAgICAgICAgKiBjcnlwdG8vQ3J5cHRvS2V5UGFpci5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkNyeXB0b0tleVBhaXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpDcnlwdG9LZXlQYWlyOjpwdWJsaWNLZXkpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5
UGFpcjo6cHJpdmF0ZUtleSk6CisgICAgICAgICogY3J5cHRvL0NyeXB0b0tleVBhaXIuaWRsOiBB
ZGRlZC4KKwogMjAxMy0xMS0xMSAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+
CiAKICAgICAgICAgUmVtb3ZlIHRoZSBPcGVyYXRpb25zTm90RGVsZXRhYmxlIGF0dHJpYnV0ZSBm
cm9tIG1vc3Qgb2YgdGhlIFdlYklETCBpbnRlcmZhY2VzCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dAkocmV2aXNpb24gMTU5MDYxKQorKysgU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQJKHdv
cmtpbmcgY29weSkKQEAgLTI4MSw2ICsyODEsNyBAQCBzZXQoV2ViQ29yZV9JRExfRklMRVMKICAg
ICBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0LmlkbAogCiAgICAgY3J5cHRvL0NyeXB0b0tl
eS5pZGwKKyAgICBjcnlwdG8vQ3J5cHRvS2V5UGFpci5pZGwKICAgICBjcnlwdG8vU3VidGxlQ3J5
cHRvLmlkbAogCiAgICAgY3NzL0NTU0NoYXJzZXRSdWxlLmlkbApJbmRleDogU291cmNlL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCShyZXZpc2lvbiAxNTkwNjEpCisrKyBTb3VyY2UvV2ViQ29yZS9EZXJp
dmVkU291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0xOTksNiArMTk5LDcgQEAgQklORElO
R19JRExTID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJzb2NrZXRzL0Nsb3NlRXZlbnQu
aWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2Vic29ja2V0cy9XZWJTb2NrZXQuaWRsIFwK
ICAgICAkKFdlYkNvcmUpL2NyeXB0by9DcnlwdG9LZXkuaWRsIFwKKyAgICAkKFdlYkNvcmUpL2Ny
eXB0by9DcnlwdG9LZXlQYWlyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jcnlwdG8vU3VidGxlQ3J5
cHRvLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jc3MvQ1NTQ2hhcnNldFJ1bGUuaWRsIFwKICAgICAk
KFdlYkNvcmUpL2Nzcy9DU1NGb250RmFjZUxvYWRFdmVudC5pZGwgXApJbmRleDogU291cmNlL1dl
YkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9H
TlVtYWtlZmlsZS5saXN0LmFtCShyZXZpc2lvbiAxNTkwNjEpCisrKyBTb3VyY2UvV2ViQ29yZS9H
TlVtYWtlZmlsZS5saXN0LmFtCSh3b3JraW5nIGNvcHkpCkBAIC0xMjkxLDYgKzEyOTEsNyBAQCBk
b21fYmluZGluZ19pZGxzICs9IFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvd2Vic29ja2V0cy9DbG9z
ZUV2ZW50LmlkbCBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0Lmlk
bCBcCiAJJChXZWJDb3JlKS9jcnlwdG8vQ3J5cHRvS2V5LmlkbCBcCisJJChXZWJDb3JlKS9jcnlw
dG8vQ3J5cHRvS2V5UGFpci5pZGwgXAogCSQoV2ViQ29yZSkvY3J5cHRvL1N1YnRsZUNyeXB0by5p
ZGwgXAogCSQoV2ViQ29yZSkvY3NzL0NTU0NoYXJzZXRSdWxlLmlkbCBcCiAJJChXZWJDb3JlKS9j
c3MvQ1NTRm9udEZhY2VMb2FkRXZlbnQuaWRsIFwKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDE1OTA2MSkKKysr
IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2lu
ZyBjb3B5KQpAQCAtNTY5OCw2ICs1Njk4LDExIEBACiAJCUUxRUQ4QUMzMENDNDlCRTAwMEJGQzU1
NyAvKiBDU1NQcmltaXRpdmVWYWx1ZU1hcHBpbmdzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUVEOEFDMjBDQzQ5QkUwMDBCRkM1NTcgLyogQ1NTUHJp
bWl0aXZlVmFsdWVNYXBwaW5ncy5oICovOyB9OwogCQlFMUYxRTgyRjBDM0MyQkI5MDA2REIzOTEg
LyogWFNMVEV4dGVuc2lvbnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gRTFGMUU4MkQwQzNDMkJCOTAwNkRCMzkxIC8qIFhTTFRFeHRlbnNpb25zLmNw
cCAqLzsgfTsKIAkJRTFGMUU4MzAwQzNDMkJCOTAwNkRCMzkxIC8qIFhTTFRFeHRlbnNpb25zLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUYxRTgyRTBD
M0MyQkI5MDA2REIzOTEgLyogWFNMVEV4dGVuc2lvbnMuaCAqLzsgfTsKKwkJRTFGODBCODcxODMx
NzI1MjAwNzg4NUMzIC8qIENyeXB0b0tleVBhaXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFGODBCODUxODMxNzI1MjAwNzg4NUMzIC8qIENyeXB0
b0tleVBhaXIuY3BwICovOyB9OworCQlFMUY4MEI4ODE4MzE3MjUyMDA3ODg1QzMgLyogQ3J5cHRv
S2V5UGFpci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTFGODBCODYxODMxNzI1MjAwNzg4NUMzIC8qIENyeXB0b0tleVBhaXIuaCAqLzsgfTsKKwkJRTFG
ODBCOEExODMxNzJBMjAwNzg4NUMzIC8qIEpTQ3J5cHRvS2V5UGFpckN1c3RvbS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUY4MEI4OTE4MzE3MkEy
MDA3ODg1QzMgLyogSlNDcnlwdG9LZXlQYWlyQ3VzdG9tLmNwcCAqLzsgfTsKKwkJRTFGODBCOEQx
ODMxNzJCNTAwNzg4NUMzIC8qIEpTQ3J5cHRvS2V5UGFpci5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUY4MEI4QjE4MzE3MkI1MDA3ODg1QzMgLyog
SlNDcnlwdG9LZXlQYWlyLmNwcCAqLzsgfTsKKwkJRTFGODBCOEUxODMxNzJCNTAwNzg4NUMzIC8q
IEpTQ3J5cHRvS2V5UGFpci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gRTFGODBCOEMxODMxNzJCNTAwNzg4NUMzIC8qIEpTQ3J5cHRvS2V5UGFpci5oICov
OyB9OwogCQlFMUZGNTdBMzBGMDEyNTVCMDA4OTFFQkIgLyogVGhyZWFkR2xvYmFsRGF0YS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFGRjU3QTIwRjAx
MjU1QjAwODkxRUJCIC8qIFRocmVhZEdsb2JhbERhdGEuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklC
VVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMUZGNTdBNjBGMDEyNTZCMDA4OTFFQkIgLyog
VGhyZWFkR2xvYmFsRGF0YS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBFMUZGNTdBNTBGMDEyNTZCMDA4OTFFQkIgLyogVGhyZWFkR2xvYmFsRGF0YS5j
cHAgKi87IH07CiAJCUUxRkY4RjVGMTgwNzQ0MjEwMDEzMjY3NCAvKiBTdWJ0bGVDcnlwdG8uY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFGRjhGNUQx
ODA3NDQyMTAwMTMyNjc0IC8qIFN1YnRsZUNyeXB0by5jcHAgKi87IH07CkBAIC0xMjc4MCw2ICsx
Mjc4NSwxMiBAQAogCQlFMUVEOEFDMjBDQzQ5QkUwMDBCRkM1NTcgLyogQ1NTUHJpbWl0aXZlVmFs
dWVNYXBwaW5ncy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NQcmltaXRp
dmVWYWx1ZU1hcHBpbmdzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUxRjFFODJE
MEMzQzJCQjkwMDZEQjM5MSAvKiBYU0xURXh0ZW5zaW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBYU0xURXh0ZW5zaW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUUxRjFFODJFMEMzQzJCQjkwMDZEQjM5MSAvKiBYU0xURXh0ZW5zaW9ucy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBYU0xURXh0ZW5zaW9ucy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUY4MEI4NDE4MzE3MjQ3MDA3ODg1QzMgLyogQ3J5
cHRvS2V5UGFpci5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gQ3J5cHRvS2V5UGFpci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCUUxRjgwQjg1MTgzMTcyNTIwMDc4ODVDMyAvKiBDcnlwdG9LZXlQYWlyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENyeXB0b0tleVBhaXIuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUY4MEI4NjE4MzE3MjUyMDA3ODg1QzMg
LyogQ3J5cHRvS2V5UGFpci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDcnlw
dG9LZXlQYWlyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRjgwQjg5MTgzMTcy
QTIwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXJDdXN0b20uY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gSlNDcnlwdG9LZXlQYWlyQ3VzdG9tLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFGODBCOEIxODMxNzJCNTAwNzg4NUMzIC8qIEpTQ3J5cHRv
S2V5UGFpci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NyeXB0
b0tleVBhaXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUY4MEI4QzE4MzE3
MkI1MDA3ODg1QzMgLyogSlNDcnlwdG9LZXlQYWlyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTQ3J5cHRvS2V5UGFpci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlFMUZGNTdBMjBGMDEyNTVCMDA4OTFFQkIgLyogVGhyZWFkR2xvYmFsRGF0YS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUaHJlYWRHbG9iYWxEYXRhLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUUxRkY1N0E1MEYwMTI1NkIwMDg5MUVCQiAvKiBUaHJlYWRHbG9i
YWxEYXRhLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFRocmVhZEds
b2JhbERhdGEuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMUZGOEY1QzE4MDcz
NjRCMDAxMzI2NzQgLyogU3VidGxlQ3J5cHRvLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBTdWJ0bGVDcnlwdG8uaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTk1ODIsNiArMTk1OTMsNyBAQAogCQkJCUJD
QTgzRTUxMEQ3Q0UyMDUwMDM0MjFBOCAvKiBKU0NsaXBib2FyZEN1c3RvbS5jcHAgKi8sCiAJCQkJ
MjA5QjQ1NkExNjc5NkE3RTAwRTU0RTRFIC8qIEpTQ3J5cHRvQ3VzdG9tLmNwcCAqLywKIAkJCQlF
MTU3QThFNjE4MTg0QzY3MDA5RjgyMUQgLyogSlNDcnlwdG9LZXlDdXN0b20uY3BwICovLAorCQkJ
CUUxRjgwQjg5MTgzMTcyQTIwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXJDdXN0b20uY3BwICov
LAogCQkJCUJDNDZDMUVEMEMwRERCREYwMDIwQ0ZDMyAvKiBKU0NTU1J1bGVDdXN0b20uY3BwICov
LAogCQkJCUFENzI2RkU5MTZEOUY0MEEwMDNBNEU2RCAvKiBKU0NTU1J1bGVDdXN0b20uaCAqLywK
IAkJCQk5MzkyMjYyRTEwMzIxMDg0MDA2RTdENUQgLyogSlNDU1NSdWxlTGlzdEN1c3RvbS5jcHAg
Ki8sCkBAIC0yMDQ4NSw2ICsyMDQ5Nyw5IEBACiAJCQkJRTE1N0E4RTIxODE3M0EzQTAwOUY4MjFE
IC8qIENyeXB0b0tleS5jcHAgKi8sCiAJCQkJRTE1N0E4RTMxODE3M0EzQTAwOUY4MjFEIC8qIENy
eXB0b0tleS5oICovLAogCQkJCUUxMjVGODVEMTgyQzJERjYwMEQ4NENEOSAvKiBDcnlwdG9LZXlE
YXRhLmggKi8sCisJCQkJRTFGODBCODUxODMxNzI1MjAwNzg4NUMzIC8qIENyeXB0b0tleVBhaXIu
Y3BwICovLAorCQkJCUUxRjgwQjg2MTgzMTcyNTIwMDc4ODVDMyAvKiBDcnlwdG9LZXlQYWlyLmgg
Ki8sCisJCQkJRTFGODBCODQxODMxNzI0NzAwNzg4NUMzIC8qIENyeXB0b0tleVBhaXIuaWRsICov
LAogCQkJCUUxMjVGODU1MTgyQzBGODMwMEQ4NENEOSAvKiBDcnlwdG9LZXlTZXJpYWxpemF0aW9u
LmggKi8sCiAJCQkJRTE5NzI3MTUxODIwNTQ5RTAwNTkyRDUxIC8qIENyeXB0b0tleVR5cGUuaCAq
LywKIAkJCQlFMTcyQUY2RjE4MEYyODk1MDBGQkFEQjkgLyogQ3J5cHRvS2V5VXNhZ2UuaCAqLywK
QEAgLTIwNTAwLDYgKzIwNTE1LDggQEAKIAkJCWNoaWxkcmVuID0gKAogCQkJCUUxNTdBOERFMTgx
NzMzMUMwMDlGODIxRCAvKiBKU0NyeXB0b0tleS5jcHAgKi8sCiAJCQkJRTE1N0E4REYxODE3MzMx
QzAwOUY4MjFEIC8qIEpTQ3J5cHRvS2V5LmggKi8sCisJCQkJRTFGODBCOEIxODMxNzJCNTAwNzg4
NUMzIC8qIEpTQ3J5cHRvS2V5UGFpci5jcHAgKi8sCisJCQkJRTFGODBCOEMxODMxNzJCNTAwNzg4
NUMzIC8qIEpTQ3J5cHRvS2V5UGFpci5oICovLAogCQkJCUUxRkY4RjYyMTgwNzQ1RDgwMDEzMjY3
NCAvKiBKU1N1YnRsZUNyeXB0by5jcHAgKi8sCiAJCQkJRTFGRjhGNjMxODA3NDVEODAwMTMyNjc0
IC8qIEpTU3VidGxlQ3J5cHRvLmggKi8sCiAJCQkpOwpAQCAtMjIxODAsNiArMjIxOTcsNyBAQAog
CQkJCUZCMzA1NkMyMTY5RTVEQUMwMDk2QTIzMiAvKiBDU1NHcm91cGluZ1J1bGUuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUJDNzcyQjNDMEM0RUE5MUUwMDgzMjg1RiAvKiBDU1NIZWxwZXIuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUZCNDlDMzlEMTY3ODQ5NDcwMDdGRkI1RCAvKiBDU1NIb3N0UnVsZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJRTFGODBCOEUxODMxNzJCNTAwNzg4NUMzIC8qIEpTQ3J5cHRv
S2V5UGFpci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkMyM0VFOTIwREFFRDJCQzAwOUZEQzkxIC8q
IENTU0ltYWdlR2VuZXJhdG9yVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTkzOTNFNjAwMTUx
QTk5RjIwMDA2NkYwNiAvKiBDU1NJbWFnZVNldFZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQlB
ODBFNkNGQTBBMTk4OUNBMDA3RkI4QzUgLyogQ1NTSW1hZ2VWYWx1ZS5oIGluIEhlYWRlcnMgKi8s
CkBAIC0yNDIxNSw2ICsyNDIzMyw3IEBACiAJCQkJQThERjRBRUYwOTgwQzQyQzAwNTI5ODFCIC8q
IFJlbmRlclRhYmxlU2VjdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNFQTQ4OEMwOTdEOTMw
MjAwOTRDOUU0IC8qIFJlbmRlclRleHQuaCBpbiBIZWFkZXJzICovLAogCQkJCUFCNjdEMUE5MDk3
RjNBRTMwMEY5MzkyRSAvKiBSZW5kZXJUZXh0Q29udHJvbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJ
RTFGODBCODgxODMxNzI1MjAwNzg4NUMzIC8qIENyeXB0b0tleVBhaXIuaCBpbiBIZWFkZXJzICov
LAogCQkJCTA4M0RBRUE3MEYwMUE3RkIwMDM0Mjc1NCAvKiBSZW5kZXJUZXh0Q29udHJvbE11bHRp
TGluZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDgzREFFQTkwRjAxQTdGQjAwMzQyNzU0IC8qIFJl
bmRlclRleHRDb250cm9sU2luZ2xlTGluZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNFQTQ4OEUw
OTdEOTMwMjAwOTRDOUU0IC8qIFJlbmRlclRleHRGcmFnbWVudC5oIGluIEhlYWRlcnMgKi8sCkBA
IC0yNTg0NCw2ICsyNTg2Myw3IEBACiAJCQkJODVBQ0E5QzEwQTlCNUZBNTAwNjcxRTkwIC8qIERP
TUVsZW1lbnQubW0gaW4gU291cmNlcyAqLywKIAkJCQk4NUNBOTZCOTBBOTYyMUE2MDA2OTBDQ0Yg
LyogRE9NRW50aXR5Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJODUwODlDREUwQTk4QzQyODAwQTI3
NUFBIC8qIERPTUVudGl0eVJlZmVyZW5jZS5tbSBpbiBTb3VyY2VzICovLAorCQkJCUUxRjgwQjhE
MTgzMTcyQjUwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQkMxQkRGMjQxNTZDMTg4MzAwMUMxMjQzIC8qIERPTUVycm9yLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTg1QUZBODIzMEFBRjUyOEEwMEU4NDMwNSAvKiBET01FdmVudC5tbSBpbiBTb3VyY2Vz
ICovLAogCQkJCUJDMUEzN0IzMDk3QzcxNUYwMDE5RjNEOCAvKiBET01FdmVudHMubW0gaW4gU291
cmNlcyAqLywKQEAgLTI2Mzc3LDYgKzI2Mzk3LDcgQEAKIAkJCQlCODg1RThENDExRTA2REQyMDA5
RkZCRjQgLyogSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTRGNzA3QTk5MTFFRjY3OTQwMEFDREE2OSAvKiBJbnNwZWN0b3JCYWNrZW5kRGlzcGF0
Y2hlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QUE1MUI2RjE0ODNCNjE2MDBBRDI3NTIgLyog
SW5zcGVjdG9yQmFzZUFnZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUUxRjgwQjhBMTgzMTcy
QTIwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXJDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQUFENzY2RUIxNTdFNTAyRjAwRTg1NDIzIC8qIEluc3BlY3RvckNhbnZhc0FnZW50LmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTdBMUYyQjUyMTI2QzYxQjIwMDA2QTdFNiAvKiBJbnNwZWN0b3JD
bGllbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRjMzMzVCRjgxMkUwN0RDMzAwRDMzMDExIC8q
IEluc3BlY3RvckNvbnNvbGVBZ2VudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI3NDc1LDYgKzI3
NDk2LDcgQEAKIAkJCQlGRDMxNjBBQTEyQjAyNkY3MDBDMUEzNTkgLyogUmV2ZXJiQ29udm9sdmVy
U3RhZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFENzE5RTkxODExMDZFMDAwMTZEQzUxIC8q
IElEQlBlbmRpbmdUcmFuc2FjdGlvbk1vbml0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQz
MTYwQUMxMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVyYklucHV0QnVmZmVyLmNwcCBpbiBTb3VyY2Vz
ICovLAorCQkJCUUxRjgwQjg3MTgzMTcyNTIwMDc4ODVDMyAvKiBDcnlwdG9LZXlQYWlyLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCUJDNzREQTM4MTAxM0YzRjcwMDc5ODdBRCAvKiBSR0JDb2xvci5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlBOENGRjVFNzBBMTU1QTA1MDAwQTQyMzQgLyogUm9vdElu
bGluZUJveC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk0OUU5MTFDODBFRjg2RDQ3MDA5RDBDQUYg
LyogUm90YXRlVHJhbnNmb3JtT3BlcmF0aW9uLmNwcCBpbiBTb3VyY2VzICovLApJbmRleDogU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDcnlwdG9LZXlQYWlyQ3VzdG9tLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NyeXB0b0tleVBhaXJDdXN0b20u
Y3BwCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDcnlwdG9L
ZXlQYWlyQ3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDQ5IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkpTQ3J5cHRvS2V5UGFpci5oIgor
CisjaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCisKK3VzaW5nIG5hbWVzcGFjZSBKU0M7CisKK25h
bWVzcGFjZSBXZWJDb3JlIHsKKwordm9pZCBKU0NyeXB0b0tleVBhaXI6OnZpc2l0Q2hpbGRyZW4o
SlNDZWxsKiBjZWxsLCBTbG90VmlzaXRvciYgdmlzaXRvcikKK3sKKyAgICBKU0NyeXB0b0tleVBh
aXIqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8SlNDcnlwdG9LZXlQYWlyKj4oY2VsbCk7CisgICAgQVNT
RVJUX0dDX09CSkVDVF9JTkhFUklUUyh0aGlzT2JqZWN0LCBpbmZvKCkpOworICAgIENPTVBJTEVf
QVNTRVJUKFN0cnVjdHVyZUZsYWdzICYgT3ZlcnJpZGVzVmlzaXRDaGlsZHJlbiwgT3ZlcnJpZGVz
VmlzaXRDaGlsZHJlbldpdGhvdXRTZXR0aW5nRmxhZyk7CisgICAgQVNTRVJUKHRoaXNPYmplY3Qt
PnN0cnVjdHVyZSgpLT50eXBlSW5mbygpLm92ZXJyaWRlc1Zpc2l0Q2hpbGRyZW4oKSk7CisgICAg
QmFzZTo6dmlzaXRDaGlsZHJlbih0aGlzT2JqZWN0LCB2aXNpdG9yKTsKKworICAgIHZpc2l0b3Iu
YWRkT3BhcXVlUm9vdCh0aGlzT2JqZWN0LT5tX2ltcGwtPnB1YmxpY0tleSgpKTsKKyAgICB2aXNp
dG9yLmFkZE9wYXF1ZVJvb3QodGhpc09iamVjdC0+bV9pbXBsLT5wcml2YXRlS2V5KCkpOworfQor
Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoU1VCVExFX0NSWVBU
TykKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NUHJvbWlzZS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NUHJvbWlzZS5oCShyZXZp
c2lvbiAxNTkwNjEpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVByb21pc2Uu
aAkod29ya2luZyBjb3B5KQpAQCAtMjcsNiArMjcsNyBAQAogI2RlZmluZSBKU0RPTVByb21pc2Vf
aAogCiAjaW5jbHVkZSAiSlNDcnlwdG9LZXkuaCIKKyNpbmNsdWRlICJKU0NyeXB0b0tleVBhaXIu
aCIKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlIDxydW50aW1lL0pTR2xvYmFs
T2JqZWN0Lmg+CiAjaW5jbHVkZSA8cnVudGltZS9KU1Byb21pc2UuaD4KSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2NyeXB0by9DcnlwdG9LZXkuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2NyeXB0by9DcnlwdG9LZXkuaWRsCShyZXZpc2lvbiAxNTkwNjEpCisrKyBTb3VyY2UvV2ViQ29y
ZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbAkod29ya2luZyBjb3B5KQpAQCAtNDIsNiArNDIsNyBAQCBl
bnVtIEtleVVzYWdlIHsKIAogWwogICAgIENvbmRpdGlvbmFsPVNVQlRMRV9DUllQVE8sCisgICAg
R2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsLAogICAgIEludGVyZmFjZU5hbWU9S2V5LAogICAgIE5v
SW50ZXJmYWNlT2JqZWN0LAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5UGFpci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvY3J5cHRvL0NyeXB0b0tleVBhaXIuY3BwCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dl
YkNvcmUvY3J5cHRvL0NyeXB0b0tleVBhaXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEs
NDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQ3J5cHRv
S2V5UGFpci5oIgorCisjaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworQ3J5cHRvS2V5UGFpcjo6Q3J5cHRvS2V5UGFpcihQYXNzUmVmUHRyPENyeXB0b0tl
eT4gcHVibGljS2V5LCBQYXNzUmVmUHRyPENyeXB0b0tleT4gcHJpdmF0ZUtleSkKKyAgICA6IG1f
cHVibGljS2V5KHB1YmxpY0tleSkKKyAgICAsIG1fcHJpdmF0ZUtleShwcml2YXRlS2V5KQorewor
fQorCitDcnlwdG9LZXlQYWlyOjp+Q3J5cHRvS2V5UGFpcigpCit7Cit9CisKK30gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQpJbmRleDogU291
cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0tleVBhaXIuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5UGFpci5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dl
YkNvcmUvY3J5cHRvL0NyeXB0b0tleVBhaXIuaAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDU5
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBDcnlwdG9LZXlQYWlyX2gKKyNkZWZpbmUgQ3J5cHRv
S2V5UGFpcl9oCisKKyNpbmNsdWRlICJDcnlwdG9LZXkuaCIKKyNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL1JlZlB0
ci5oPgorCisjaWYgRU5BQkxFKFNVQlRMRV9DUllQVE8pCisKK25hbWVzcGFjZSBXZWJDb3JlIHsK
KworY2xhc3MgQ3J5cHRvS2V5UGFpciA6IHB1YmxpYyBSZWZDb3VudGVkPENyeXB0b0tleVBhaXI+
IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxDcnlwdG9LZXlQYWlyPiBjcmVhdGUo
UGFzc1JlZlB0cjxDcnlwdG9LZXk+IHB1YmxpY0tleSwgUGFzc1JlZlB0cjxDcnlwdG9LZXk+IHBy
aXZhdGVLZXkpCisgICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IENyeXB0b0tleVBh
aXIocHVibGljS2V5LCBwcml2YXRlS2V5KSk7CisgICAgfQorICAgIH5DcnlwdG9LZXlQYWlyKCk7
CisKKyAgICBDcnlwdG9LZXkqIHB1YmxpY0tleSgpIHsgcmV0dXJuIG1fcHVibGljS2V5LmdldCgp
OyB9CisgICAgQ3J5cHRvS2V5KiBwcml2YXRlS2V5KCkgeyByZXR1cm4gbV9wcml2YXRlS2V5Lmdl
dCgpOyB9CisKK3ByaXZhdGU6CisgICAgQ3J5cHRvS2V5UGFpcihQYXNzUmVmUHRyPENyeXB0b0tl
eT4gcHVibGljS2V5LCBQYXNzUmVmUHRyPENyeXB0b0tleT4gcHJpdmF0ZUtleSk7CisKKyAgICBS
ZWZQdHI8Q3J5cHRvS2V5PiBtX3B1YmxpY0tleTsKKyAgICBSZWZQdHI8Q3J5cHRvS2V5PiBtX3By
aXZhdGVLZXk7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFC
TEUoU1VCVExFX0NSWVBUTykKKyNlbmRpZiAvLyBDcnlwdG9LZXlQYWlyX2gKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9LZXlQYWlyLmlkbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5UGFpci5pZGwJKHJldmlzaW9uIDApCisrKyBTb3VyY2Uv
V2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5UGFpci5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCAr
MSwzNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
KyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisg
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKK1sKKyAgICBDb25kaXRpb25hbD1TVUJUTEVfQ1JZUFRPLAor
ICAgIEltcGxlbWVudGF0aW9uTGFja3NWVGFibGUsCisgICAgSW50ZXJmYWNlTmFtZT1LZXlQYWly
LAorICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAorICAgIE5vSW50ZXJmYWNlT2JqZWN0LAorICAg
IE9wZXJhdGlvbnNOb3REZWxldGFibGUKK10gaW50ZXJmYWNlIENyeXB0b0tleVBhaXIgeworICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBDcnlwdG9LZXkgcHVibGljS2V5OworICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBDcnlwdG9LZXkgcHJpdmF0ZUtleTsKK307Cg==
</data>
<flag name="review"
          id="239593"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>216605</attachid>
            <date>2013-11-11 13:07:43 -0800</date>
            <delta_ts>2013-11-11 13:18:17 -0800</delta_ts>
            <desc>with less Gtk build breakage</desc>
            <filename>CryptoKeyPair.txt</filename>
            <type>text/plain</type>
            <size>21191</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTA2NikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBACisyMDEzLTExLTExICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFN1cHBvcnQgV2ViQ3J5cHRv
IEtleVBhaXIgaW50ZXJmYWNlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMjQxNjEKKworICAgICAgICBSZXZpZXdlZCBieSBHZW9mZnJleSBHYXJlbi4K
KworICAgICAgICBObyBuZXcgdGVzdHMgeWV0LCB3aWxsIGJlIHRlc3RlZCBvbmNlIGdlbmVyYXRl
S2V5IGlzIGltcGxlbWVudGVkIGZvciBhbnkgUlNBIGFsZ29yaXRobXMuCisKKyAgICAgICAgKiBD
TWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOgorICAgICAgICAq
IEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qOgorICAgICAgICBBZGRlZCBuZXcgZmlsZXMuCisKKyAgICAgICAgKiBiaW5kaW5n
cy9qcy9KU0RPTVByb21pc2UuaDogU3VwcG9ydCByZXR1cm5pbmcgYSBrZXkgcGFpciB2aWEgYSBw
cm9taXNlLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNDcnlwdG9LZXlQYWlyQ3VzdG9tLmNw
cDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpKU0NyeXB0b0tleVBhaXI6OnZpc2l0Q2hpbGRy
ZW4pOgorICAgICAgICAqIGNyeXB0by9DcnlwdG9LZXkuaWRsOgorICAgICAgICBDcnlwdG9LZXkg
d3JhcHBlciBpcyByZWFjaGFibGUgdGhyb3VnaCBLZXlQYWlyLCBidXQgaXQgZG9lc24ndCBoYXZl
IChvciBuZWVkKQorICAgICAgICBhIGJhY2sgcG9pbnRlci4KKworICAgICAgICAqIGNyeXB0by9D
cnlwdG9LZXlQYWlyLmNwcDogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpDcnlwdG9LZXlQYWly
OjpDcnlwdG9LZXlQYWlyKToKKyAgICAgICAgKFdlYkNvcmU6OkNyeXB0b0tleVBhaXI6On5Dcnlw
dG9LZXlQYWlyKToKKyAgICAgICAgKiBjcnlwdG8vQ3J5cHRvS2V5UGFpci5oOiBBZGRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkNyeXB0b0tleVBhaXI6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3Jl
OjpDcnlwdG9LZXlQYWlyOjpwdWJsaWNLZXkpOgorICAgICAgICAoV2ViQ29yZTo6Q3J5cHRvS2V5
UGFpcjo6cHJpdmF0ZUtleSk6CisgICAgICAgICogY3J5cHRvL0NyeXB0b0tleVBhaXIuaWRsOiBB
ZGRlZC4KKwogMjAxMy0xMS0xMSAgTmljayBEaWVnbyBZYW1hbmUgIDxuaWNrLnlhbWFuZUBvcGVu
Ym9zc2Eub3JnPgogCiAgICAgICAgIEZpeCBidWlsZCBhZnRlciByMTU4OTY3CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMTU5MDY2KQorKysgU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTI4MSw2ICsyODEsNyBAQCBzZXQoV2ViQ29yZV9J
RExfRklMRVMKICAgICBNb2R1bGVzL3dlYnNvY2tldHMvV2ViU29ja2V0LmlkbAogCiAgICAgY3J5
cHRvL0NyeXB0b0tleS5pZGwKKyAgICBjcnlwdG8vQ3J5cHRvS2V5UGFpci5pZGwKICAgICBjcnlw
dG8vU3VidGxlQ3J5cHRvLmlkbAogCiAgICAgY3NzL0NTU0NoYXJzZXRSdWxlLmlkbApJbmRleDog
U291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCShyZXZpc2lvbiAxNTkwNjYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0xOTksNiArMTk5
LDcgQEAgQklORElOR19JRExTID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy93ZWJzb2NrZXRz
L0Nsb3NlRXZlbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvd2Vic29ja2V0cy9XZWJT
b2NrZXQuaWRsIFwKICAgICAkKFdlYkNvcmUpL2NyeXB0by9DcnlwdG9LZXkuaWRsIFwKKyAgICAk
KFdlYkNvcmUpL2NyeXB0by9DcnlwdG9LZXlQYWlyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jcnlw
dG8vU3VidGxlQ3J5cHRvLmlkbCBcCiAgICAgJChXZWJDb3JlKS9jc3MvQ1NTQ2hhcnNldFJ1bGUu
aWRsIFwKICAgICAkKFdlYkNvcmUpL2Nzcy9DU1NGb250RmFjZUxvYWRFdmVudC5pZGwgXApJbmRl
eDogU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCShyZXZpc2lvbiAxNTkwNjYpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCSh3b3JraW5nIGNvcHkpCkBAIC0xNTIsNiAr
MTUyLDggQEAgd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlEZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTQ1NTVmFsdWVMaXN0LmggXAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNDcnlwdG9L
ZXkuY3BwIFwKIAlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTQ3J5cHRvS2V5LmggXAorCURlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNDcnlwdG9LZXlQYWlyLmNwcCBcCisJRGVyaXZlZFNvdXJjZXMv
V2ViQ29yZS9KU0NyeXB0b0tleVBhaXIuaCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0N1
c3RvbUV2ZW50LmNwcCBcCiAJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0N1c3RvbUV2ZW50Lmgg
XAogCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNEYXRhYmFzZS5jcHAgXApAQCAtMTI5MSw2ICsx
MjkzLDcgQEAgZG9tX2JpbmRpbmdfaWRscyArPSBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL3dlYnNv
Y2tldHMvQ2xvc2VFdmVudC5pZGwgXAogCSQoV2ViQ29yZSkvTW9kdWxlcy93ZWJzb2NrZXRzL1dl
YlNvY2tldC5pZGwgXAogCSQoV2ViQ29yZSkvY3J5cHRvL0NyeXB0b0tleS5pZGwgXAorCSQoV2Vi
Q29yZSkvY3J5cHRvL0NyeXB0b0tleVBhaXIuaWRsIFwKIAkkKFdlYkNvcmUpL2NyeXB0by9TdWJ0
bGVDcnlwdG8uaWRsIFwKIAkkKFdlYkNvcmUpL2Nzcy9DU1NDaGFyc2V0UnVsZS5pZGwgXAogCSQo
V2ViQ29yZSkvY3NzL0NTU0ZvbnRGYWNlTG9hZEV2ZW50LmlkbCBcCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAx
NTkwNjYpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oJKHdvcmtpbmcgY29weSkKQEAgLTU2OTgsNiArNTY5OCwxMSBAQAogCQlFMUVEOEFDMzBDQzQ5
QkUwMDBCRkM1NTcgLyogQ1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFFRDhBQzIwQ0M0OUJFMDAwQkZDNTU3
IC8qIENTU1ByaW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCAqLzsgfTsKIAkJRTFGMUU4MkYwQzNDMkJC
OTAwNkRCMzkxIC8qIFhTTFRFeHRlbnNpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRjFFODJEMEMzQzJCQjkwMDZEQjM5MSAvKiBYU0xURXh0
ZW5zaW9ucy5jcHAgKi87IH07CiAJCUUxRjFFODMwMEMzQzJCQjkwMDZEQjM5MSAvKiBYU0xURXh0
ZW5zaW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
RTFGMUU4MkUwQzNDMkJCOTAwNkRCMzkxIC8qIFhTTFRFeHRlbnNpb25zLmggKi87IH07CisJCUUx
RjgwQjg3MTgzMTcyNTIwMDc4ODVDMyAvKiBDcnlwdG9LZXlQYWlyLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxRjgwQjg1MTgzMTcyNTIwMDc4ODVD
MyAvKiBDcnlwdG9LZXlQYWlyLmNwcCAqLzsgfTsKKwkJRTFGODBCODgxODMxNzI1MjAwNzg4NUMz
IC8qIENyeXB0b0tleVBhaXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEUxRjgwQjg2MTgzMTcyNTIwMDc4ODVDMyAvKiBDcnlwdG9LZXlQYWlyLmggKi87
IH07CisJCUUxRjgwQjhBMTgzMTcyQTIwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXJDdXN0b20u
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFGODBC
ODkxODMxNzJBMjAwNzg4NUMzIC8qIEpTQ3J5cHRvS2V5UGFpckN1c3RvbS5jcHAgKi87IH07CisJ
CUUxRjgwQjhEMTgzMTcyQjUwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXIuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFGODBCOEIxODMxNzJCNTAw
Nzg4NUMzIC8qIEpTQ3J5cHRvS2V5UGFpci5jcHAgKi87IH07CisJCUUxRjgwQjhFMTgzMTcyQjUw
MDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IEUxRjgwQjhDMTgzMTcyQjUwMDc4ODVDMyAvKiBKU0NyeXB0b0tl
eVBhaXIuaCAqLzsgfTsKIAkJRTFGRjU3QTMwRjAxMjU1QjAwODkxRUJCIC8qIFRocmVhZEdsb2Jh
bERhdGEuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUx
RkY1N0EyMEYwMTI1NUIwMDg5MUVCQiAvKiBUaHJlYWRHbG9iYWxEYXRhLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJRTFGRjU3QTYwRjAxMjU2QjAw
ODkxRUJCIC8qIFRocmVhZEdsb2JhbERhdGEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gRTFGRjU3QTUwRjAxMjU2QjAwODkxRUJCIC8qIFRocmVhZEds
b2JhbERhdGEuY3BwICovOyB9OwogCQlFMUZGOEY1RjE4MDc0NDIxMDAxMzI2NzQgLyogU3VidGxl
Q3J5cHRvLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEUxRkY4RjVEMTgwNzQ0MjEwMDEzMjY3NCAvKiBTdWJ0bGVDcnlwdG8uY3BwICovOyB9OwpAQCAt
MTI3ODAsNiArMTI3ODUsMTIgQEAKIAkJRTFFRDhBQzIwQ0M0OUJFMDAwQkZDNTU3IC8qIENTU1By
aW1pdGl2ZVZhbHVlTWFwcGluZ3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
Q1NTUHJpbWl0aXZlVmFsdWVNYXBwaW5ncy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlFMUYxRTgyRDBDM0MyQkI5MDA2REIzOTEgLyogWFNMVEV4dGVuc2lvbnMuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gWFNMVEV4dGVuc2lvbnMuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlFMUYxRTgyRTBDM0MyQkI5MDA2REIzOTEgLyogWFNMVEV4
dGVuc2lvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gWFNMVEV4dGVuc2lv
bnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFGODBCODQxODMxNzI0NzAwNzg4
NUMzIC8qIENyeXB0b0tleVBhaXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IENyeXB0b0tleVBhaXIuaWRsOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQlFMUY4MEI4NTE4MzE3MjUyMDA3ODg1QzMgLyogQ3J5cHRv
S2V5UGFpci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDcnlwdG9L
ZXlQYWlyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFGODBCODYxODMxNzI1
MjAwNzg4NUMzIC8qIENyeXB0b0tleVBhaXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ3J5cHRvS2V5UGFpci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMUY4
MEI4OTE4MzE3MkEyMDA3ODg1QzMgLyogSlNDcnlwdG9LZXlQYWlyQ3VzdG9tLmNwcCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTQ3J5cHRvS2V5UGFpckN1c3RvbS5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUUxRjgwQjhCMTgzMTcyQjUwMDc4ODVDMyAv
KiBKU0NyeXB0b0tleVBhaXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNDcnlwdG9LZXlQYWlyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRTFG
ODBCOEMxODMxNzJCNTAwNzg4NUMzIC8qIEpTQ3J5cHRvS2V5UGFpci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBKU0NyeXB0b0tleVBhaXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJRTFGRjU3QTIwRjAxMjU1QjAwODkxRUJCIC8qIFRocmVhZEdsb2JhbERhdGEu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGhyZWFkR2xvYmFsRGF0YS5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMUZGNTdBNTBGMDEyNTZCMDA4OTFFQkIgLyog
VGhyZWFkR2xvYmFsRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBUaHJlYWRHbG9iYWxEYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTFG
RjhGNUMxODA3MzY0QjAwMTMyNjc0IC8qIFN1YnRsZUNyeXB0by5pZGwgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gU3VidGxlQ3J5
cHRvLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5NTgyLDYgKzE5NTkzLDcg
QEAKIAkJCQlCQ0E4M0U1MTBEN0NFMjA1MDAzNDIxQTggLyogSlNDbGlwYm9hcmRDdXN0b20uY3Bw
ICovLAogCQkJCTIwOUI0NTZBMTY3OTZBN0UwMEU1NEU0RSAvKiBKU0NyeXB0b0N1c3RvbS5jcHAg
Ki8sCiAJCQkJRTE1N0E4RTYxODE4NEM2NzAwOUY4MjFEIC8qIEpTQ3J5cHRvS2V5Q3VzdG9tLmNw
cCAqLywKKwkJCQlFMUY4MEI4OTE4MzE3MkEyMDA3ODg1QzMgLyogSlNDcnlwdG9LZXlQYWlyQ3Vz
dG9tLmNwcCAqLywKIAkJCQlCQzQ2QzFFRDBDMEREQkRGMDAyMENGQzMgLyogSlNDU1NSdWxlQ3Vz
dG9tLmNwcCAqLywKIAkJCQlBRDcyNkZFOTE2RDlGNDBBMDAzQTRFNkQgLyogSlNDU1NSdWxlQ3Vz
dG9tLmggKi8sCiAJCQkJOTM5MjI2MkUxMDMyMTA4NDAwNkU3RDVEIC8qIEpTQ1NTUnVsZUxpc3RD
dXN0b20uY3BwICovLApAQCAtMjA0ODUsNiArMjA0OTcsOSBAQAogCQkJCUUxNTdBOEUyMTgxNzNB
M0EwMDlGODIxRCAvKiBDcnlwdG9LZXkuY3BwICovLAogCQkJCUUxNTdBOEUzMTgxNzNBM0EwMDlG
ODIxRCAvKiBDcnlwdG9LZXkuaCAqLywKIAkJCQlFMTI1Rjg1RDE4MkMyREY2MDBEODRDRDkgLyog
Q3J5cHRvS2V5RGF0YS5oICovLAorCQkJCUUxRjgwQjg1MTgzMTcyNTIwMDc4ODVDMyAvKiBDcnlw
dG9LZXlQYWlyLmNwcCAqLywKKwkJCQlFMUY4MEI4NjE4MzE3MjUyMDA3ODg1QzMgLyogQ3J5cHRv
S2V5UGFpci5oICovLAorCQkJCUUxRjgwQjg0MTgzMTcyNDcwMDc4ODVDMyAvKiBDcnlwdG9LZXlQ
YWlyLmlkbCAqLywKIAkJCQlFMTI1Rjg1NTE4MkMwRjgzMDBEODRDRDkgLyogQ3J5cHRvS2V5U2Vy
aWFsaXphdGlvbi5oICovLAogCQkJCUUxOTcyNzE1MTgyMDU0OUUwMDU5MkQ1MSAvKiBDcnlwdG9L
ZXlUeXBlLmggKi8sCiAJCQkJRTE3MkFGNkYxODBGMjg5NTAwRkJBREI5IC8qIENyeXB0b0tleVVz
YWdlLmggKi8sCkBAIC0yMDUwMCw2ICsyMDUxNSw4IEBACiAJCQljaGlsZHJlbiA9ICgKIAkJCQlF
MTU3QThERTE4MTczMzFDMDA5RjgyMUQgLyogSlNDcnlwdG9LZXkuY3BwICovLAogCQkJCUUxNTdB
OERGMTgxNzMzMUMwMDlGODIxRCAvKiBKU0NyeXB0b0tleS5oICovLAorCQkJCUUxRjgwQjhCMTgz
MTcyQjUwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXIuY3BwICovLAorCQkJCUUxRjgwQjhDMTgz
MTcyQjUwMDc4ODVDMyAvKiBKU0NyeXB0b0tleVBhaXIuaCAqLywKIAkJCQlFMUZGOEY2MjE4MDc0
NUQ4MDAxMzI2NzQgLyogSlNTdWJ0bGVDcnlwdG8uY3BwICovLAogCQkJCUUxRkY4RjYzMTgwNzQ1
RDgwMDEzMjY3NCAvKiBKU1N1YnRsZUNyeXB0by5oICovLAogCQkJKTsKQEAgLTIyMTgwLDYgKzIy
MTk3LDcgQEAKIAkJCQlGQjMwNTZDMjE2OUU1REFDMDA5NkEyMzIgLyogQ1NTR3JvdXBpbmdSdWxl
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzc3MkIzQzBDNEVBOTFFMDA4MzI4NUYgLyogQ1NTSGVs
cGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlGQjQ5QzM5RDE2Nzg0OTQ3MDA3RkZCNUQgLyogQ1NT
SG9zdFJ1bGUuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxRjgwQjhFMTgzMTcyQjUwMDc4ODVDMyAv
KiBKU0NyeXB0b0tleVBhaXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMjNFRTkyMERBRUQyQkMw
MDlGREM5MSAvKiBDU1NJbWFnZUdlbmVyYXRvclZhbHVlLmggaW4gSGVhZGVycyAqLywKIAkJCQk5
MzkzRTYwMDE1MUE5OUYyMDAwNjZGMDYgLyogQ1NTSW1hZ2VTZXRWYWx1ZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQTgwRTZDRkEwQTE5ODlDQTAwN0ZCOEM1IC8qIENTU0ltYWdlVmFsdWUuaCBpbiBI
ZWFkZXJzICovLApAQCAtMjQyMTUsNiArMjQyMzMsNyBAQAogCQkJCUE4REY0QUVGMDk4MEM0MkMw
MDUyOTgxQiAvKiBSZW5kZXJUYWJsZVNlY3Rpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRUE0
ODhDMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUZXh0LmggaW4gSGVhZGVycyAqLywKIAkJCQlB
QjY3RDFBOTA5N0YzQUUzMDBGOTM5MkUgLyogUmVuZGVyVGV4dENvbnRyb2wuaCBpbiBIZWFkZXJz
ICovLAorCQkJCUUxRjgwQjg4MTgzMTcyNTIwMDc4ODVDMyAvKiBDcnlwdG9LZXlQYWlyLmggaW4g
SGVhZGVycyAqLywKIAkJCQkwODNEQUVBNzBGMDFBN0ZCMDAzNDI3NTQgLyogUmVuZGVyVGV4dENv
bnRyb2xNdWx0aUxpbmUuaCBpbiBIZWFkZXJzICovLAogCQkJCTA4M0RBRUE5MEYwMUE3RkIwMDM0
Mjc1NCAvKiBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDRUE0ODhFMDk3RDkzMDIwMDk0QzlFNCAvKiBSZW5kZXJUZXh0RnJhZ21lbnQuaCBpbiBIZWFk
ZXJzICovLApAQCAtMjU4NDQsNiArMjU4NjMsNyBAQAogCQkJCTg1QUNBOUMxMEE5QjVGQTUwMDY3
MUU5MCAvKiBET01FbGVtZW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJODVDQTk2QjkwQTk2MjFB
NjAwNjkwQ0NGIC8qIERPTUVudGl0eS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTg1MDg5Q0RFMEE5
OEM0MjgwMEEyNzVBQSAvKiBET01FbnRpdHlSZWZlcmVuY2UubW0gaW4gU291cmNlcyAqLywKKwkJ
CQlFMUY4MEI4RDE4MzE3MkI1MDA3ODg1QzMgLyogSlNDcnlwdG9LZXlQYWlyLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUJDMUJERjI0MTU2QzE4ODMwMDFDMTI0MyAvKiBET01FcnJvci5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk4NUFGQTgyMzBBQUY1MjhBMDBFODQzMDUgLyogRE9NRXZlbnQubW0g
aW4gU291cmNlcyAqLywKIAkJCQlCQzFBMzdCMzA5N0M3MTVGMDAxOUYzRDggLyogRE9NRXZlbnRz
Lm1tIGluIFNvdXJjZXMgKi8sCkBAIC0yNjM3Nyw2ICsyNjM5Nyw3IEBACiAJCQkJQjg4NUU4RDQx
MUUwNkREMjAwOUZGQkY0IC8qIEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQk0RjcwN0E5OTExRUY2Nzk0MDBBQ0RBNjkgLyogSW5zcGVjdG9yQmFj
a2VuZERpc3BhdGNoZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0FBNTFCNkYxNDgzQjYxNjAw
QUQyNzUyIC8qIEluc3BlY3RvckJhc2VBZ2VudC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQlFMUY4
MEI4QTE4MzE3MkEyMDA3ODg1QzMgLyogSlNDcnlwdG9LZXlQYWlyQ3VzdG9tLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUFBRDc2NkVCMTU3RTUwMkYwMEU4NTQyMyAvKiBJbnNwZWN0b3JDYW52YXNB
Z2VudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3QTFGMkI1MjEyNkM2MUIyMDAwNkE3RTYgLyog
SW5zcGVjdG9yQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUYzMzM1QkY4MTJFMDdEQzMw
MEQzMzAxMSAvKiBJbnNwZWN0b3JDb25zb2xlQWdlbnQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0y
NzQ3NSw2ICsyNzQ5Niw3IEBACiAJCQkJRkQzMTYwQUExMkIwMjZGNzAwQzFBMzU5IC8qIFJldmVy
YkNvbnZvbHZlclN0YWdlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxRDcxOUU5MTgxMTA2RTAw
MDE2REM1MSAvKiBJREJQZW5kaW5nVHJhbnNhY3Rpb25Nb25pdG9yLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCUZEMzE2MEFDMTJCMDI2RjcwMEMxQTM1OSAvKiBSZXZlcmJJbnB1dEJ1ZmZlci5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQlFMUY4MEI4NzE4MzE3MjUyMDA3ODg1QzMgLyogQ3J5cHRvS2V5
UGFpci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzc0REEzODEwMTNGM0Y3MDA3OTg3QUQgLyog
UkdCQ29sb3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQThDRkY1RTcwQTE1NUEwNTAwMEE0MjM0
IC8qIFJvb3RJbmxpbmVCb3guY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNDlFOTExQzgwRUY4NkQ0
NzAwOUQwQ0FGIC8qIFJvdGF0ZVRyYW5zZm9ybU9wZXJhdGlvbi5jcHAgaW4gU291cmNlcyAqLywK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQ3J5cHRvS2V5UGFpckN1c3RvbS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDcnlwdG9LZXlQ
YWlyQ3VzdG9tLmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTQ3J5cHRvS2V5UGFpckN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0OSBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0NyeXB0b0tl
eVBhaXIuaCIKKworI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCit1c2luZyBuYW1lc3BhY2Ug
SlNDOworCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3ZvaWQgSlNDcnlwdG9LZXlQYWlyOjp2aXNp
dENoaWxkcmVuKEpTQ2VsbCogY2VsbCwgU2xvdFZpc2l0b3ImIHZpc2l0b3IpCit7CisgICAgSlND
cnlwdG9LZXlQYWlyKiB0aGlzT2JqZWN0ID0ganNDYXN0PEpTQ3J5cHRvS2V5UGFpcio+KGNlbGwp
OworICAgIEFTU0VSVF9HQ19PQkpFQ1RfSU5IRVJJVFModGhpc09iamVjdCwgaW5mbygpKTsKKyAg
ICBDT01QSUxFX0FTU0VSVChTdHJ1Y3R1cmVGbGFncyAmIE92ZXJyaWRlc1Zpc2l0Q2hpbGRyZW4s
IE92ZXJyaWRlc1Zpc2l0Q2hpbGRyZW5XaXRob3V0U2V0dGluZ0ZsYWcpOworICAgIEFTU0VSVCh0
aGlzT2JqZWN0LT5zdHJ1Y3R1cmUoKS0+dHlwZUluZm8oKS5vdmVycmlkZXNWaXNpdENoaWxkcmVu
KCkpOworICAgIEJhc2U6OnZpc2l0Q2hpbGRyZW4odGhpc09iamVjdCwgdmlzaXRvcik7CisKKyAg
ICB2aXNpdG9yLmFkZE9wYXF1ZVJvb3QodGhpc09iamVjdC0+bV9pbXBsLT5wdWJsaWNLZXkoKSk7
CisgICAgdmlzaXRvci5hZGRPcGFxdWVSb290KHRoaXNPYmplY3QtPm1faW1wbC0+cHJpdmF0ZUtl
eSgpKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKFNV
QlRMRV9DUllQVE8pCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVByb21p
c2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTVByb21p
c2UuaAkocmV2aXNpb24gMTU5MDY2KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNE
T01Qcm9taXNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI3LDYgKzI3LDcgQEAKICNkZWZpbmUgSlNE
T01Qcm9taXNlX2gKIAogI2luY2x1ZGUgIkpTQ3J5cHRvS2V5LmgiCisjaW5jbHVkZSAiSlNDcnlw
dG9LZXlQYWlyLmgiCiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSA8cnVudGlt
ZS9KU0dsb2JhbE9iamVjdC5oPgogI2luY2x1ZGUgPHJ1bnRpbWUvSlNQcm9taXNlLmg+CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5LmlkbAkocmV2aXNpb24gMTU5MDY2KQorKysgU291
cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0tleS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTQyLDYg
KzQyLDcgQEAgZW51bSBLZXlVc2FnZSB7CiAKIFsKICAgICBDb25kaXRpb25hbD1TVUJUTEVfQ1JZ
UFRPLAorICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbCwKICAgICBJbnRlcmZhY2VOYW1lPUtl
eSwKICAgICBOb0ludGVyZmFjZU9iamVjdCwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbgpJbmRl
eDogU291cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0tleVBhaXIuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9LZXlQYWlyLmNwcAkocmV2aXNpb24gMCkKKysr
IFNvdXJjZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9LZXlQYWlyLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1
ZGUgIkNyeXB0b0tleVBhaXIuaCIKKworI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK0NyeXB0b0tleVBhaXI6OkNyeXB0b0tleVBhaXIoUGFzc1JlZlB0
cjxDcnlwdG9LZXk+IHB1YmxpY0tleSwgUGFzc1JlZlB0cjxDcnlwdG9LZXk+IHByaXZhdGVLZXkp
CisgICAgOiBtX3B1YmxpY0tleShwdWJsaWNLZXkpCisgICAgLCBtX3ByaXZhdGVLZXkocHJpdmF0
ZUtleSkKK3sKK30KKworQ3J5cHRvS2V5UGFpcjo6fkNyeXB0b0tleVBhaXIoKQoreworfQorCit9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoU1VCVExFX0NSWVBUTykK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9LZXlQYWlyLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0tleVBhaXIuaAkocmV2aXNpb24gMCkKKysr
IFNvdXJjZS9XZWJDb3JlL2NyeXB0by9DcnlwdG9LZXlQYWlyLmgJKHdvcmtpbmcgY29weSkKQEAg
LTAsMCArMSw1OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJM
RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElP
TikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUg
VVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgQ3J5cHRvS2V5UGFpcl9oCisjZGVm
aW5lIENyeXB0b0tleVBhaXJfaAorCisjaW5jbHVkZSAiQ3J5cHRvS2V5LmgiCisjaW5jbHVkZSA8
d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUg
PHd0Zi9SZWZQdHIuaD4KKworI2lmIEVOQUJMRShTVUJUTEVfQ1JZUFRPKQorCituYW1lc3BhY2Ug
V2ViQ29yZSB7CisKK2NsYXNzIENyeXB0b0tleVBhaXIgOiBwdWJsaWMgUmVmQ291bnRlZDxDcnlw
dG9LZXlQYWlyPiB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8Q3J5cHRvS2V5UGFp
cj4gY3JlYXRlKFBhc3NSZWZQdHI8Q3J5cHRvS2V5PiBwdWJsaWNLZXksIFBhc3NSZWZQdHI8Q3J5
cHRvS2V5PiBwcml2YXRlS2V5KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBD
cnlwdG9LZXlQYWlyKHB1YmxpY0tleSwgcHJpdmF0ZUtleSkpOworICAgIH0KKyAgICB+Q3J5cHRv
S2V5UGFpcigpOworCisgICAgQ3J5cHRvS2V5KiBwdWJsaWNLZXkoKSB7IHJldHVybiBtX3B1Ymxp
Y0tleS5nZXQoKTsgfQorICAgIENyeXB0b0tleSogcHJpdmF0ZUtleSgpIHsgcmV0dXJuIG1fcHJp
dmF0ZUtleS5nZXQoKTsgfQorCitwcml2YXRlOgorICAgIENyeXB0b0tleVBhaXIoUGFzc1JlZlB0
cjxDcnlwdG9LZXk+IHB1YmxpY0tleSwgUGFzc1JlZlB0cjxDcnlwdG9LZXk+IHByaXZhdGVLZXkp
OworCisgICAgUmVmUHRyPENyeXB0b0tleT4gbV9wdWJsaWNLZXk7CisgICAgUmVmUHRyPENyeXB0
b0tleT4gbV9wcml2YXRlS2V5OworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYgLy8gRU5BQkxFKFNVQlRMRV9DUllQVE8pCisjZW5kaWYgLy8gQ3J5cHRvS2V5UGFpcl9oCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9jcnlwdG8vQ3J5cHRvS2V5UGFpci5pZGwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0tleVBhaXIuaWRsCShyZXZpc2lvbiAwKQor
KysgU291cmNlL1dlYkNvcmUvY3J5cHRvL0NyeXB0b0tleVBhaXIuaWRsCSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsMzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVN
UExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF
VEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElO
RyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitbCisgICAgQ29uZGl0aW9uYWw9U1VCVExF
X0NSWVBUTywKKyAgICBJbXBsZW1lbnRhdGlvbkxhY2tzVlRhYmxlLAorICAgIEludGVyZmFjZU5h
bWU9S2V5UGFpciwKKyAgICBKU0N1c3RvbU1hcmtGdW5jdGlvbiwKKyAgICBOb0ludGVyZmFjZU9i
amVjdCwKKyAgICBPcGVyYXRpb25zTm90RGVsZXRhYmxlCitdIGludGVyZmFjZSBDcnlwdG9LZXlQ
YWlyIHsKKyAgICByZWFkb25seSBhdHRyaWJ1dGUgQ3J5cHRvS2V5IHB1YmxpY0tleTsKKyAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgQ3J5cHRvS2V5IHByaXZhdGVLZXk7Cit9Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>