<?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>156242</bug_id>
          
          <creation_ts>2016-04-05 11:20:29 -0700</creation_ts>
          <short_desc>Modern IDB: Replace use of SerializedScriptValue with IDBValue</short_desc>
          <delta_ts>2016-04-05 14:27:14 -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>WebCore Misc.</component>
          <version>Safari 9</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>149117</blocked>
    
    <blocked>143193</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>achristensen</cc>
    
    <cc>alecflett</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jsbell</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1180886</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-05 11:20:29 -0700</bug_when>
    <thetext>Modern IDB: Replace use of SerializedScriptValue with IDBValue

This is in preparation for https://bugs.webkit.org/show_bug.cgi?id=143193</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1180887</commentid>
    <comment_count>1</comment_count>
      <attachid>275677</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-05 11:23:34 -0700</bug_when>
    <thetext>Created attachment 275677
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1180976</commentid>
    <comment_count>2</comment_count>
      <attachid>275677</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-05 14:27:10 -0700</bug_when>
    <thetext>Comment on attachment 275677
Patch v1

Clearing flags on attachment: 275677

Committed r199072: &lt;http://trac.webkit.org/changeset/199072&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1180977</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-05 14:27:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>275677</attachid>
            <date>2016-04-05 11:23:34 -0700</date>
            <delta_ts>2016-04-05 14:27:10 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>35459</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmNjY0OGZjLi40YTE3YTEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTUg
QEAKKzIwMTYtMDQtMDUgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIE1vZGVybiBJREI6IFJlcGxhY2UgdXNlIG9mIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSB3aXRo
IElEQlZhbHVlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTU2MjQyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgTm8gbmV3IHRlc3RzIChObyBjaGFuZ2UgaW4gYmVoYXZpb3IpLgorCisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURC
VHJhbnNhY3Rpb246OnB1dE9yQWRkT25TZXJ2ZXIpOgorCisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvSURCVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCVmFsdWU6OklEQlZhbHVl
KToKKyAgICAgICAgKFdlYkNvcmU6OklEQlZhbHVlOjppc29sYXRlZENvcHkpOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQlZhbHVlLmg6CisgICAgICAgIChXZWJDb3JlOjpJREJWYWx1
ZTo6ZGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpJREJWYWx1ZTo6ZW5jb2RlKToKKyAgICAgICAg
KFdlYkNvcmU6OklEQlZhbHVlOjpkZWNvZGUpOgorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
REJDbGllbnQ6OklEQkNvbm5lY3Rpb25Ub1NlcnZlcjo6cHV0T3JBZGQpOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2VydmVyRGVsZWdhdGUu
aDoKKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SURCU2VydmVyOjpJREJTZXJ2ZXI6OnB1dE9yQWRkKToKKyAgICAg
ICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVyLmg6CisKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SURCU2VydmVyOjpVbmlxdWVJREJEYXRhYmFzZTo6cHV0T3JBZGQpOgorICAgICAg
ICAoV2ViQ29yZTo6SURCU2VydmVyOjpVbmlxdWVJREJEYXRhYmFzZTo6cGVyZm9ybVB1dE9yQWRk
KToKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2Uu
aDoKKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFz
ZVRyYW5zYWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlcjo6VW5pcXVlSURC
RGF0YWJhc2VUcmFuc2FjdGlvbjo6cHV0T3JBZGQpOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmg6CisKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5Qcm9jZXNzSURCU2VydmVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkluUHJvY2Vzc0lEQlNlcnZlcjo6cHV0T3JBZGQpOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JblByb2Nlc3NJREJTZXJ2ZXIuaDoKKworICAgICAgICAqIFdl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKworICAgICAgICAqIHBsYXRmb3JtL0Ny
b3NzVGhyZWFkQ29waWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQlZhbHVlPjo6Y29weSk6
CisgICAgICAgICogcGxhdGZvcm0vQ3Jvc3NUaHJlYWRDb3BpZXIuaDoKKworICAgICAgICAqIHBs
YXRmb3JtL1RocmVhZFNhZmVEYXRhQnVmZmVyLmg6CisgICAgICAgIChXZWJDb3JlOjpUaHJlYWRT
YWZlRGF0YUJ1ZmZlcjo6ZW5jb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVhZFNhZmVEYXRh
QnVmZmVyOjpkZWNvZGUpOgorCiAyMDE2LTA0LTA1ICBYYWJpZXIgUm9kcmlndWV6IENhbHZhciAg
PGNhbHZhcmlzQGlnYWxpYS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXggd2l0
aCBHU1RSRUFNRVJfR0wgYWN0aXZlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwCmluZGV4IGVlOTg1ZDguLmE0NDI2NGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbi5j
cHAKQEAgLTQyLDYgKzQyLDcgQEAKICNpbmNsdWRlICJJREJPcGVuREJSZXF1ZXN0LmgiCiAjaW5j
bHVkZSAiSURCUmVxdWVzdC5oIgogI2luY2x1ZGUgIklEQlJlc3VsdERhdGEuaCIKKyNpbmNsdWRl
ICJJREJWYWx1ZS5oIgogI2luY2x1ZGUgIkpTRE9NV2luZG93QmFzZS5oIgogI2luY2x1ZGUgIkxv
Z2dpbmcuaCIKICNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250ZXh0LmgiCkBAIC04NjksNiAr
ODcwLDExIEBAIHZvaWQgSURCVHJhbnNhY3Rpb246OnB1dE9yQWRkT25TZXJ2ZXIoSURCQ2xpZW50
OjpUcmFuc2FjdGlvbk9wZXJhdGlvbiYgb3BlcmF0aW9uCiAgICAgQVNTRVJUKCFpc1JlYWRPbmx5
KCkpOwogICAgIEFTU0VSVCh2YWx1ZSk7CiAKKyAgICBpZiAoIXZhbHVlLT5oYXNCbG9iVVJMcygp
KSB7CisgICAgICAgIHNlcnZlckNvbm5lY3Rpb24oKS5wdXRPckFkZChvcGVyYXRpb24sIGtleS5n
ZXQoKSwgKnZhbHVlLCBvdmVyd3JpdGVNb2RlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwog
ICAgIFJlZlB0cjxJREJUcmFuc2FjdGlvbj4gcHJvdGVjdG9yKHRoaXMpOwogICAgIFJlZlB0cjxJ
REJDbGllbnQ6OlRyYW5zYWN0aW9uT3BlcmF0aW9uPiBvcGVyYXRpb25SZWYoJm9wZXJhdGlvbik7
CiAgICAgdmFsdWUtPndyaXRlQmxvYnNUb0Rpc2tGb3JJbmRleGVkREIoW3Byb3RlY3RvciwgdGhp
cywgb3BlcmF0aW9uUmVmLCBrZXksIHZhbHVlLCBvdmVyd3JpdGVNb2RlXShjb25zdCBJREJWYWx1
ZSYpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZh
bHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZhbHVlLmNwcApp
bmRleCBhZDAxNzQ5Li43ZjkxZGNiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQlZhbHVlLmNwcApAQCAtMjgsMTIgKzI4LDI2IEBACiAKICNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKIAorI2luY2x1ZGUgIlNlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oIgorCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIElEQlZhbHVlOjpJREJWYWx1ZSgpCiB7CiB9CiAKK0lEQlZh
bHVlOjpJREJWYWx1ZShjb25zdCBTZXJpYWxpemVkU2NyaXB0VmFsdWUmIHNjcmlwdFZhbHVlKQor
ICAgIDogbV9kYXRhKFRocmVhZFNhZmVEYXRhQnVmZmVyOjpjb3B5VmVjdG9yKHNjcmlwdFZhbHVl
LmRhdGEoKSkpCit7Cit9CisKK0lEQlZhbHVlIElEQlZhbHVlOjppc29sYXRlZENvcHkoKSBjb25z
dAoreworICAgIElEQlZhbHVlIHJlc3VsdDsKKyAgICByZXN1bHQubV9kYXRhID0gbV9kYXRhOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQlZhbHVlLmgKaW5kZXggMzU2NGRhNS4uMWFjZmZkYSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmFsdWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWYWx1ZS5oCkBAIC0yNiwxMyArMjYsNDQgQEAKICNw
cmFnbWEgb25jZQogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogCisjaW5jbHVkZSAiVGhy
ZWFkU2FmZURhdGFCdWZmZXIuaCIKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBTZXJp
YWxpemVkU2NyaXB0VmFsdWU7CisKIGNsYXNzIElEQlZhbHVlIHsKIHB1YmxpYzoKLSAgICBJREJW
YWx1ZSgpOworICAgIFdFQkNPUkVfRVhQT1JUIElEQlZhbHVlKCk7CisgICAgSURCVmFsdWUoY29u
c3QgU2VyaWFsaXplZFNjcmlwdFZhbHVlJik7CisKKyAgICBJREJWYWx1ZSBpc29sYXRlZENvcHko
KSBjb25zdDsKKworICAgIGNvbnN0IFRocmVhZFNhZmVEYXRhQnVmZmVyJiBkYXRhKCkgY29uc3Qg
eyByZXR1cm4gbV9kYXRhOyB9CisKKyAgICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVu
Y29kZShFbmNvZGVyJikgY29uc3Q7CisgICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGlj
IGJvb2wgZGVjb2RlKERlY29kZXImLCBJREJWYWx1ZSYpOworCitwcml2YXRlOgorICAgIFRocmVh
ZFNhZmVEYXRhQnVmZmVyIG1fZGF0YTsKIH07CiAKKwordGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4K
K3ZvaWQgSURCVmFsdWU6OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAoreworICAgIGVu
Y29kZXIgPDwgbV9kYXRhOworfQorCit0ZW1wbGF0ZTxjbGFzcyBEZWNvZGVyPgorYm9vbCBJREJW
YWx1ZTo6ZGVjb2RlKERlY29kZXImIGRlY29kZXIsIElEQlZhbHVlJiByZXN1bHQpCit7CisgICAg
aWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQubV9kYXRhKSkKKyAgICAgICAgcmV0dXJuIGZhbHNl
OworCisgICAgcmV0dXJuIHRydWU7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2Vu
ZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2Vy
dmVyLmNwcAppbmRleCBkM2YyZWI1Li44M2FjM2Y3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2VydmVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRv
U2VydmVyLmNwcApAQCAtMTcxLDcgKzE3MSw3IEBAIHZvaWQgSURCQ29ubmVjdGlvblRvU2VydmVy
OjpkaWREZWxldGVJbmRleChjb25zdCBJREJSZXN1bHREYXRhJiByZXN1bHREYXRhKQogICAgIGNv
bXBsZXRlT3BlcmF0aW9uKHJlc3VsdERhdGEpOwogfQogCi12b2lkIElEQkNvbm5lY3Rpb25Ub1Nl
cnZlcjo6cHV0T3JBZGQoVHJhbnNhY3Rpb25PcGVyYXRpb24mIG9wZXJhdGlvbiwgSURCS2V5KiBr
ZXksIFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZSYgdmFsdWUsIGNvbnN0IEluZGV4ZWREQjo6T2JqZWN0
U3RvcmVPdmVyd3JpdGVNb2RlIG92ZXJ3cml0ZU1vZGUpCit2b2lkIElEQkNvbm5lY3Rpb25Ub1Nl
cnZlcjo6cHV0T3JBZGQoVHJhbnNhY3Rpb25PcGVyYXRpb24mIG9wZXJhdGlvbiwgSURCS2V5KiBr
ZXksIGNvbnN0IElEQlZhbHVlJiB2YWx1ZSwgY29uc3QgSW5kZXhlZERCOjpPYmplY3RTdG9yZU92
ZXJ3cml0ZU1vZGUgb3ZlcndyaXRlTW9kZSkKIHsKICAgICBMT0coSW5kZXhlZERCLCAiSURCQ29u
bmVjdGlvblRvU2VydmVyOjpwdXRPckFkZCIpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2VydmVyLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2VydmVy
LmgKaW5kZXggYzE3MTJjMi4uZGY3NmIzOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIu
aApAQCAtNDUsNiArNDUsNyBAQCBjbGFzcyBJREJPYmplY3RTdG9yZUluZm87CiBjbGFzcyBJREJP
cGVuREJSZXF1ZXN0OwogY2xhc3MgSURCUmVzdWx0RGF0YTsKIGNsYXNzIElEQlRyYW5zYWN0aW9u
OworY2xhc3MgSURCVmFsdWU7CiAKIG5hbWVzcGFjZSBJREJDbGllbnQgewogCkBAIC03Nyw3ICs3
OCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGRlbGV0ZUluZGV4KFRyYW5zYWN0aW9uT3BlcmF0aW9u
JiwgdWludDY0X3Qgb2JqZWN0U3RvcmVJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIGluZGV4TmFt
ZSk7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBkaWREZWxldGVJbmRleChjb25zdCBJREJSZXN1
bHREYXRhJik7CiAKLSAgICB2b2lkIHB1dE9yQWRkKFRyYW5zYWN0aW9uT3BlcmF0aW9uJiwgSURC
S2V5KiwgU2VyaWFsaXplZFNjcmlwdFZhbHVlJiwgY29uc3QgSW5kZXhlZERCOjpPYmplY3RTdG9y
ZU92ZXJ3cml0ZU1vZGUpOworICAgIHZvaWQgcHV0T3JBZGQoVHJhbnNhY3Rpb25PcGVyYXRpb24m
LCBJREJLZXkqLCBjb25zdCBJREJWYWx1ZSYsIGNvbnN0IEluZGV4ZWREQjo6T2JqZWN0U3RvcmVP
dmVyd3JpdGVNb2RlKTsKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIGRpZFB1dE9yQWRkKGNvbnN0
IElEQlJlc3VsdERhdGEmKTsKIAogICAgIHZvaWQgZ2V0UmVjb3JkKFRyYW5zYWN0aW9uT3BlcmF0
aW9uJiwgY29uc3QgSURCS2V5UmFuZ2VEYXRhJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2VydmVyRGVsZWdhdGUu
aCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9u
VG9TZXJ2ZXJEZWxlZ2F0ZS5oCmluZGV4IGZlODk3YmQuLjM3MGIzYmEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2
ZXJEZWxlZ2F0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVu
dC9JREJDb25uZWN0aW9uVG9TZXJ2ZXJEZWxlZ2F0ZS5oCkBAIC00MCw3ICs0MCw3IEBAIGNsYXNz
IElEQk9iamVjdFN0b3JlSW5mbzsKIGNsYXNzIElEQlJlcXVlc3REYXRhOwogY2xhc3MgSURCUmVz
b3VyY2VJZGVudGlmaWVyOwogY2xhc3MgSURCVHJhbnNhY3Rpb25JbmZvOwotY2xhc3MgU2VyaWFs
aXplZFNjcmlwdFZhbHVlOworY2xhc3MgSURCVmFsdWU7CiAKIG5hbWVzcGFjZSBJbmRleGVkREIg
ewogZW51bSBjbGFzcyBPYmplY3RTdG9yZU92ZXJ3cml0ZU1vZGU7CkBAIC02NSw3ICs2NSw3IEBA
IHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJPYmplY3RTdG9yZShjb25zdCBJREJSZXF1
ZXN0RGF0YSYsIHVpbnQ2NF90IG9iamVjdFN0b3JlSWRlbnRpZmllcikgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBjcmVhdGVJbmRleChjb25zdCBJREJSZXF1ZXN0RGF0YSYsIGNvbnN0IElEQkluZGV4
SW5mbyYpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZGVsZXRlSW5kZXgoY29uc3QgSURCUmVxdWVz
dERhdGEmLCB1aW50NjRfdCBvYmplY3RTdG9yZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgaW5k
ZXhOYW1lKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHB1dE9yQWRkKGNvbnN0IElEQlJlcXVlc3RE
YXRhJiwgSURCS2V5KiwgU2VyaWFsaXplZFNjcmlwdFZhbHVlJiwgY29uc3QgSW5kZXhlZERCOjpP
YmplY3RTdG9yZU92ZXJ3cml0ZU1vZGUpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgcHV0T3JBZGQo
Y29uc3QgSURCUmVxdWVzdERhdGEmLCBJREJLZXkqLCBjb25zdCBJREJWYWx1ZSYsIGNvbnN0IElu
ZGV4ZWREQjo6T2JqZWN0U3RvcmVPdmVyd3JpdGVNb2RlKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IGdldFJlY29yZChjb25zdCBJREJSZXF1ZXN0RGF0YSYsIGNvbnN0IElEQktleVJhbmdlRGF0YSYp
ID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgZ2V0Q291bnQoY29uc3QgSURCUmVxdWVzdERhdGEmLCBj
b25zdCBJREJLZXlSYW5nZURhdGEmKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGRlbGV0ZVJlY29y
ZChjb25zdCBJREJSZXF1ZXN0RGF0YSYsIGNvbnN0IElEQktleVJhbmdlRGF0YSYpID0gMDsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZl
ci5jcHAKaW5kZXggYzNjYjQ3My4uOTlhM2Q0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5jcHAKQEAgLTIzOCw3ICsyMzgs
NyBAQCB2b2lkIElEQlNlcnZlcjo6ZGVsZXRlSW5kZXgoY29uc3QgSURCUmVxdWVzdERhdGEmIHJl
cXVlc3REYXRhLCB1aW50NjRfdCBvYmplY3RTdAogICAgIHRyYW5zYWN0aW9uLT5kZWxldGVJbmRl
eChyZXF1ZXN0RGF0YSwgb2JqZWN0U3RvcmVJZGVudGlmaWVyLCBpbmRleE5hbWUpOwogfQogCi12
b2lkIElEQlNlcnZlcjo6cHV0T3JBZGQoY29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3REYXRh
LCBjb25zdCBJREJLZXlEYXRhJiBrZXlEYXRhLCBjb25zdCBUaHJlYWRTYWZlRGF0YUJ1ZmZlciYg
dmFsdWVEYXRhLCBJbmRleGVkREI6Ok9iamVjdFN0b3JlT3ZlcndyaXRlTW9kZSBvdmVyd3JpdGVN
b2RlKQordm9pZCBJREJTZXJ2ZXI6OnB1dE9yQWRkKGNvbnN0IElEQlJlcXVlc3REYXRhJiByZXF1
ZXN0RGF0YSwgY29uc3QgSURCS2V5RGF0YSYga2V5RGF0YSwgY29uc3QgSURCVmFsdWUmIHZhbHVl
LCBJbmRleGVkREI6Ok9iamVjdFN0b3JlT3ZlcndyaXRlTW9kZSBvdmVyd3JpdGVNb2RlKQogewog
ICAgIExPRyhJbmRleGVkREIsICJJREJTZXJ2ZXI6OnB1dE9yQWRkIik7CiAKQEAgLTI0Niw3ICsy
NDYsNyBAQCB2b2lkIElEQlNlcnZlcjo6cHV0T3JBZGQoY29uc3QgSURCUmVxdWVzdERhdGEmIHJl
cXVlc3REYXRhLCBjb25zdCBJREJLZXlEYXRhJiBrZQogICAgIGlmICghdHJhbnNhY3Rpb24pCiAg
ICAgICAgIHJldHVybjsKIAotICAgIHRyYW5zYWN0aW9uLT5wdXRPckFkZChyZXF1ZXN0RGF0YSwg
a2V5RGF0YSwgdmFsdWVEYXRhLCBvdmVyd3JpdGVNb2RlKTsKKyAgICB0cmFuc2FjdGlvbi0+cHV0
T3JBZGQocmVxdWVzdERhdGEsIGtleURhdGEsIHZhbHVlLCBvdmVyd3JpdGVNb2RlKTsKIH0KIAog
dm9pZCBJREJTZXJ2ZXI6OmdldFJlY29yZChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdERh
dGEsIGNvbnN0IElEQktleVJhbmdlRGF0YSYga2V5UmFuZ2VEYXRhKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5oIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5oCmluZGV4IDExMDE0
NjU5Mi4uOTQ1NDljOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL0lEQlNlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9JREJTZXJ2ZXIuaApAQCAtNDUsNiArNDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiBjbGFzcyBDcm9zc1RocmVhZFRhc2s7CiBjbGFzcyBJREJDdXJzb3JJbmZvOwogY2xhc3Mg
SURCUmVxdWVzdERhdGE7CitjbGFzcyBJREJWYWx1ZTsKIAogbmFtZXNwYWNlIElEQlNlcnZlciB7
CiAKQEAgLTY3LDcgKzY4LDcgQEAgcHVibGljOgogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xl
YXJPYmplY3RTdG9yZShjb25zdCBJREJSZXF1ZXN0RGF0YSYsIHVpbnQ2NF90IG9iamVjdFN0b3Jl
SWRlbnRpZmllcik7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBjcmVhdGVJbmRleChjb25zdCBJ
REJSZXF1ZXN0RGF0YSYsIGNvbnN0IElEQkluZGV4SW5mbyYpOwogICAgIFdFQkNPUkVfRVhQT1JU
IHZvaWQgZGVsZXRlSW5kZXgoY29uc3QgSURCUmVxdWVzdERhdGEmLCB1aW50NjRfdCBvYmplY3RT
dG9yZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgaW5kZXhOYW1lKTsKLSAgICBXRUJDT1JFX0VY
UE9SVCB2b2lkIHB1dE9yQWRkKGNvbnN0IElEQlJlcXVlc3REYXRhJiwgY29uc3QgSURCS2V5RGF0
YSYsIGNvbnN0IFRocmVhZFNhZmVEYXRhQnVmZmVyJiB2YWx1ZURhdGEsIEluZGV4ZWREQjo6T2Jq
ZWN0U3RvcmVPdmVyd3JpdGVNb2RlKTsKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHB1dE9yQWRk
KGNvbnN0IElEQlJlcXVlc3REYXRhJiwgY29uc3QgSURCS2V5RGF0YSYsIGNvbnN0IElEQlZhbHVl
JiwgSW5kZXhlZERCOjpPYmplY3RTdG9yZU92ZXJ3cml0ZU1vZGUpOwogICAgIFdFQkNPUkVfRVhQ
T1JUIHZvaWQgZ2V0UmVjb3JkKGNvbnN0IElEQlJlcXVlc3REYXRhJiwgY29uc3QgSURCS2V5UmFu
Z2VEYXRhJik7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBnZXRDb3VudChjb25zdCBJREJSZXF1
ZXN0RGF0YSYsIGNvbnN0IElEQktleVJhbmdlRGF0YSYpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZv
aWQgZGVsZXRlUmVjb3JkKGNvbnN0IElEQlJlcXVlc3REYXRhJiwgY29uc3QgSURCS2V5UmFuZ2VE
YXRhJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlLmNwcAppbmRleCBhOWIyM2NkLi5iMjc1MjM2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVl
SURCRGF0YWJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3Nl
cnZlci9VbmlxdWVJREJEYXRhYmFzZS5jcHAKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJJ
REJSZXN1bHREYXRhLmgiCiAjaW5jbHVkZSAiSURCU2VydmVyLmgiCiAjaW5jbHVkZSAiSURCVHJh
bnNhY3Rpb25JbmZvLmgiCisjaW5jbHVkZSAiSURCVmFsdWUuaCIKICNpbmNsdWRlICJMb2dnaW5n
LmgiCiAjaW5jbHVkZSAiU2NvcGVHdWFyZC5oIgogI2luY2x1ZGUgIlVuaXF1ZUlEQkRhdGFiYXNl
Q29ubmVjdGlvbi5oIgpAQCAtNjgzLDEzICs2ODQsMTMgQEAgdm9pZCBVbmlxdWVJREJEYXRhYmFz
ZTo6ZGlkUGVyZm9ybURlbGV0ZUluZGV4KHVpbnQ2NF90IGNhbGxiYWNrSWRlbnRpZmllciwgY29u
c3QKICAgICBwZXJmb3JtRXJyb3JDYWxsYmFjayhjYWxsYmFja0lkZW50aWZpZXIsIGVycm9yKTsK
IH0KIAotdm9pZCBVbmlxdWVJREJEYXRhYmFzZTo6cHV0T3JBZGQoY29uc3QgSURCUmVxdWVzdERh
dGEmIHJlcXVlc3REYXRhLCBjb25zdCBJREJLZXlEYXRhJiBrZXlEYXRhLCBjb25zdCBUaHJlYWRT
YWZlRGF0YUJ1ZmZlciYgdmFsdWVEYXRhLCBJbmRleGVkREI6Ok9iamVjdFN0b3JlT3ZlcndyaXRl
TW9kZSBvdmVyd3JpdGVNb2RlLCBLZXlEYXRhQ2FsbGJhY2sgY2FsbGJhY2spCit2b2lkIFVuaXF1
ZUlEQkRhdGFiYXNlOjpwdXRPckFkZChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdERhdGEs
IGNvbnN0IElEQktleURhdGEmIGtleURhdGEsIGNvbnN0IElEQlZhbHVlJiB2YWx1ZSwgSW5kZXhl
ZERCOjpPYmplY3RTdG9yZU92ZXJ3cml0ZU1vZGUgb3ZlcndyaXRlTW9kZSwgS2V5RGF0YUNhbGxi
YWNrIGNhbGxiYWNrKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgTE9HKElu
ZGV4ZWREQiwgIihtYWluKSBVbmlxdWVJREJEYXRhYmFzZTo6cHV0T3JBZGQiKTsKIAogICAgIHVp
bnQ2NF90IGNhbGxiYWNrSUQgPSBzdG9yZUNhbGxiYWNrKGNhbGxiYWNrKTsKLSAgICBtX3NlcnZl
ci5wb3N0RGF0YWJhc2VUYXNrKGNyZWF0ZUNyb3NzVGhyZWFkVGFzaygqdGhpcywgJlVuaXF1ZUlE
QkRhdGFiYXNlOjpwZXJmb3JtUHV0T3JBZGQsIGNhbGxiYWNrSUQsIHJlcXVlc3REYXRhLnRyYW5z
YWN0aW9uSWRlbnRpZmllcigpLCByZXF1ZXN0RGF0YS5vYmplY3RTdG9yZUlkZW50aWZpZXIoKSwg
a2V5RGF0YSwgdmFsdWVEYXRhLCBvdmVyd3JpdGVNb2RlKSk7CisgICAgbV9zZXJ2ZXIucG9zdERh
dGFiYXNlVGFzayhjcmVhdGVDcm9zc1RocmVhZFRhc2soKnRoaXMsICZVbmlxdWVJREJEYXRhYmFz
ZTo6cGVyZm9ybVB1dE9yQWRkLCBjYWxsYmFja0lELCByZXF1ZXN0RGF0YS50cmFuc2FjdGlvbklk
ZW50aWZpZXIoKSwgcmVxdWVzdERhdGEub2JqZWN0U3RvcmVJZGVudGlmaWVyKCksIGtleURhdGEs
IHZhbHVlLCBvdmVyd3JpdGVNb2RlKSk7CiB9CiAKIFZNJiBVbmlxdWVJREJEYXRhYmFzZTo6ZGF0
YWJhc2VUaHJlYWRWTSgpCkBAIC03MDksNyArNzEwLDcgQEAgRXhlY1N0YXRlJiBVbmlxdWVJREJE
YXRhYmFzZTo6ZGF0YWJhc2VUaHJlYWRFeGVjU3RhdGUoKQogICAgIHJldHVybiAqZ2xvYmFsT2Jq
ZWN0LmdldCgpLT5nbG9iYWxFeGVjKCk7CiB9CiAKLXZvaWQgVW5pcXVlSURCRGF0YWJhc2U6OnBl
cmZvcm1QdXRPckFkZCh1aW50NjRfdCBjYWxsYmFja0lkZW50aWZpZXIsIGNvbnN0IElEQlJlc291
cmNlSWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVyLCB1aW50NjRfdCBvYmplY3RTdG9y
ZUlkZW50aWZpZXIsIGNvbnN0IElEQktleURhdGEmIGtleURhdGEsIGNvbnN0IFRocmVhZFNhZmVE
YXRhQnVmZmVyJiBvcmlnaW5hbFJlY29yZFZhbHVlLCBJbmRleGVkREI6Ok9iamVjdFN0b3JlT3Zl
cndyaXRlTW9kZSBvdmVyd3JpdGVNb2RlKQordm9pZCBVbmlxdWVJREJEYXRhYmFzZTo6cGVyZm9y
bVB1dE9yQWRkKHVpbnQ2NF90IGNhbGxiYWNrSWRlbnRpZmllciwgY29uc3QgSURCUmVzb3VyY2VJ
ZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIHVpbnQ2NF90IG9iamVjdFN0b3JlSWRl
bnRpZmllciwgY29uc3QgSURCS2V5RGF0YSYga2V5RGF0YSwgY29uc3QgSURCVmFsdWUmIG9yaWdp
bmFsUmVjb3JkVmFsdWUsIEluZGV4ZWREQjo6T2JqZWN0U3RvcmVPdmVyd3JpdGVNb2RlIG92ZXJ3
cml0ZU1vZGUpCiB7CiAgICAgQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CiAgICAgTE9HKEluZGV4
ZWREQiwgIihkYikgVW5pcXVlSURCRGF0YWJhc2U6OnBlcmZvcm1QdXRPckFkZCIpOwpAQCAtNzY0
LDcgKzc2NSw3IEBAIHZvaWQgVW5pcXVlSURCRGF0YWJhc2U6OnBlcmZvcm1QdXRPckFkZCh1aW50
NjRfdCBjYWxsYmFja0lkZW50aWZpZXIsIGNvbnN0IElEQlJlCiAgICAgaWYgKHVzZWRLZXlJc0dl
bmVyYXRlZCAmJiAhb2JqZWN0U3RvcmVJbmZvLT5rZXlQYXRoKCkuaXNOdWxsKCkpIHsKICAgICAg
ICAgSlNMb2NrSG9sZGVyIGxvY2tlcihkYXRhYmFzZVRocmVhZFZNKCkpOwogCi0gICAgICAgIEpT
VmFsdWUgdmFsdWUgPSBkZXNlcmlhbGl6ZUlEQlZhbHVlRGF0YVRvSlNWYWx1ZShkYXRhYmFzZVRo
cmVhZEV4ZWNTdGF0ZSgpLCBvcmlnaW5hbFJlY29yZFZhbHVlKTsKKyAgICAgICAgSlNWYWx1ZSB2
YWx1ZSA9IGRlc2VyaWFsaXplSURCVmFsdWVEYXRhVG9KU1ZhbHVlKGRhdGFiYXNlVGhyZWFkRXhl
Y1N0YXRlKCksIG9yaWdpbmFsUmVjb3JkVmFsdWUuZGF0YSgpKTsKICAgICAgICAgaWYgKHZhbHVl
LmlzVW5kZWZpbmVkKCkpIHsKICAgICAgICAgICAgIG1fc2VydmVyLnBvc3REYXRhYmFzZVRhc2tS
ZXBseShjcmVhdGVDcm9zc1RocmVhZFRhc2soKnRoaXMsICZVbmlxdWVJREJEYXRhYmFzZTo6ZGlk
UGVyZm9ybVB1dE9yQWRkLCBjYWxsYmFja0lkZW50aWZpZXIsIElEQkVycm9yKElEQkRhdGFiYXNl
RXhjZXB0aW9uOjpDb25zdHJhaW50RXJyb3IsIEFTQ0lJTGl0ZXJhbCgiVW5hYmxlIHRvIGRlc2Vy
aWFsaXplIHJlY29yZCB2YWx1ZSBmb3IgcmVjb3JkIGtleSBpbmplY3Rpb24iKSksIHVzZWRLZXkp
KTsKICAgICAgICAgICAgIHJldHVybjsKQEAgLTc5NCw3ICs3OTUsNyBAQCB2b2lkIFVuaXF1ZUlE
QkRhdGFiYXNlOjpwZXJmb3JtUHV0T3JBZGQodWludDY0X3QgY2FsbGJhY2tJZGVudGlmaWVyLCBj
b25zdCBJREJSZQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgZXJyb3IgPSBtX2JhY2tp
bmdTdG9yZS0+YWRkUmVjb3JkKHRyYW5zYWN0aW9uSWRlbnRpZmllciwgKm9iamVjdFN0b3JlSW5m
bywgdXNlZEtleSwgaW5qZWN0ZWRSZWNvcmRWYWx1ZS5kYXRhKCkgPyBpbmplY3RlZFJlY29yZFZh
bHVlIDogb3JpZ2luYWxSZWNvcmRWYWx1ZSk7CisgICAgZXJyb3IgPSBtX2JhY2tpbmdTdG9yZS0+
YWRkUmVjb3JkKHRyYW5zYWN0aW9uSWRlbnRpZmllciwgKm9iamVjdFN0b3JlSW5mbywgdXNlZEtl
eSwgaW5qZWN0ZWRSZWNvcmRWYWx1ZS5kYXRhKCkgPyBpbmplY3RlZFJlY29yZFZhbHVlIDogb3Jp
Z2luYWxSZWNvcmRWYWx1ZS5kYXRhKCkpOwogICAgIGlmICghZXJyb3IuaXNOdWxsKCkpIHsKICAg
ICAgICAgbV9zZXJ2ZXIucG9zdERhdGFiYXNlVGFza1JlcGx5KGNyZWF0ZUNyb3NzVGhyZWFkVGFz
aygqdGhpcywgJlVuaXF1ZUlEQkRhdGFiYXNlOjpkaWRQZXJmb3JtUHV0T3JBZGQsIGNhbGxiYWNr
SWRlbnRpZmllciwgZXJyb3IsIHVzZWRLZXkpKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFi
YXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURC
RGF0YWJhc2UuaAppbmRleCBhMTA4ZjAwLi43ZGQ2NTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2Uu
aApAQCAtODUsNyArODUsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBjbGVhck9iamVjdFN0b3JlKFVu
aXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24mLCB1aW50NjRfdCBvYmplY3RTdG9yZUlkZW50aWZp
ZXIsIEVycm9yQ2FsbGJhY2spOwogICAgIHZvaWQgY3JlYXRlSW5kZXgoVW5pcXVlSURCRGF0YWJh
c2VUcmFuc2FjdGlvbiYsIGNvbnN0IElEQkluZGV4SW5mbyYsIEVycm9yQ2FsbGJhY2spOwogICAg
IHZvaWQgZGVsZXRlSW5kZXgoVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbiYsIHVpbnQ2NF90
IG9iamVjdFN0b3JlSWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBpbmRleE5hbWUsIEVycm9yQ2Fs
bGJhY2spOwotICAgIHZvaWQgcHV0T3JBZGQoY29uc3QgSURCUmVxdWVzdERhdGEmLCBjb25zdCBJ
REJLZXlEYXRhJiwgY29uc3QgVGhyZWFkU2FmZURhdGFCdWZmZXImIHZhbHVlRGF0YSwgSW5kZXhl
ZERCOjpPYmplY3RTdG9yZU92ZXJ3cml0ZU1vZGUsIEtleURhdGFDYWxsYmFjayk7CisgICAgdm9p
ZCBwdXRPckFkZChjb25zdCBJREJSZXF1ZXN0RGF0YSYsIGNvbnN0IElEQktleURhdGEmLCBjb25z
dCBJREJWYWx1ZSYsIEluZGV4ZWREQjo6T2JqZWN0U3RvcmVPdmVyd3JpdGVNb2RlLCBLZXlEYXRh
Q2FsbGJhY2spOwogICAgIHZvaWQgZ2V0UmVjb3JkKGNvbnN0IElEQlJlcXVlc3REYXRhJiwgY29u
c3QgSURCS2V5UmFuZ2VEYXRhJiwgR2V0UmVzdWx0Q2FsbGJhY2spOwogICAgIHZvaWQgZ2V0Q291
bnQoY29uc3QgSURCUmVxdWVzdERhdGEmLCBjb25zdCBJREJLZXlSYW5nZURhdGEmLCBDb3VudENh
bGxiYWNrKTsKICAgICB2b2lkIGRlbGV0ZVJlY29yZChjb25zdCBJREJSZXF1ZXN0RGF0YSYsIGNv
bnN0IElEQktleVJhbmdlRGF0YSYsIEVycm9yQ2FsbGJhY2spOwpAQCAtMTM0LDcgKzEzNCw3IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBwZXJmb3JtQ2xlYXJPYmplY3RTdG9yZSh1aW50NjRfdCBjYWxs
YmFja0lkZW50aWZpZXIsIGNvbnN0IElEQlJlc291cmNlSWRlbnRpZmllciYgdHJhbnNhY3Rpb25J
ZGVudGlmaWVyLCB1aW50NjRfdCBvYmplY3RTdG9yZUlkZW50aWZpZXIpOwogICAgIHZvaWQgcGVy
Zm9ybUNyZWF0ZUluZGV4KHVpbnQ2NF90IGNhbGxiYWNrSWRlbnRpZmllciwgY29uc3QgSURCUmVz
b3VyY2VJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIGNvbnN0IElEQkluZGV4SW5m
byYpOwogICAgIHZvaWQgcGVyZm9ybURlbGV0ZUluZGV4KHVpbnQ2NF90IGNhbGxiYWNrSWRlbnRp
ZmllciwgY29uc3QgSURCUmVzb3VyY2VJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIs
IHVpbnQ2NF90IG9iamVjdFN0b3JlSWRlbnRpZmllciwgdWludDY0X3QgaW5kZXhJZGVudGlmaWVy
KTsKLSAgICB2b2lkIHBlcmZvcm1QdXRPckFkZCh1aW50NjRfdCBjYWxsYmFja0lkZW50aWZpZXIs
IGNvbnN0IElEQlJlc291cmNlSWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVyLCB1aW50
NjRfdCBvYmplY3RTdG9yZUlkZW50aWZpZXIsIGNvbnN0IElEQktleURhdGEmLCBjb25zdCBUaHJl
YWRTYWZlRGF0YUJ1ZmZlciYgdmFsdWVEYXRhLCBJbmRleGVkREI6Ok9iamVjdFN0b3JlT3Zlcndy
aXRlTW9kZSk7CisgICAgdm9pZCBwZXJmb3JtUHV0T3JBZGQodWludDY0X3QgY2FsbGJhY2tJZGVu
dGlmaWVyLCBjb25zdCBJREJSZXNvdXJjZUlkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmll
ciwgdWludDY0X3Qgb2JqZWN0U3RvcmVJZGVudGlmaWVyLCBjb25zdCBJREJLZXlEYXRhJiwgY29u
c3QgSURCVmFsdWUmLCBJbmRleGVkREI6Ok9iamVjdFN0b3JlT3ZlcndyaXRlTW9kZSk7CiAgICAg
dm9pZCBwZXJmb3JtR2V0UmVjb3JkKHVpbnQ2NF90IGNhbGxiYWNrSWRlbnRpZmllciwgY29uc3Qg
SURCUmVzb3VyY2VJZGVudGlmaWVyJiB0cmFuc2FjdGlvbklkZW50aWZpZXIsIHVpbnQ2NF90IG9i
amVjdFN0b3JlSWRlbnRpZmllciwgY29uc3QgSURCS2V5UmFuZ2VEYXRhJik7CiAgICAgdm9pZCBw
ZXJmb3JtR2V0SW5kZXhSZWNvcmQodWludDY0X3QgY2FsbGJhY2tJZGVudGlmaWVyLCBjb25zdCBJ
REJSZXNvdXJjZUlkZW50aWZpZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllciwgdWludDY0X3Qgb2Jq
ZWN0U3RvcmVJZGVudGlmaWVyLCB1aW50NjRfdCBpbmRleElkZW50aWZpZXIsIEluZGV4ZWREQjo6
SW5kZXhSZWNvcmRUeXBlLCBjb25zdCBJREJLZXlSYW5nZURhdGEmKTsKICAgICB2b2lkIHBlcmZv
cm1HZXRDb3VudCh1aW50NjRfdCBjYWxsYmFja0lkZW50aWZpZXIsIGNvbnN0IElEQlJlc291cmNl
SWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVyLCB1aW50NjRfdCBvYmplY3RTdG9yZUlk
ZW50aWZpZXIsIHVpbnQ2NF90IGluZGV4SWRlbnRpZmllciwgY29uc3QgSURCS2V5UmFuZ2VEYXRh
Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
VW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5jcHAKaW5kZXgg
Y2QyNmIzOS4uZDZlMmFlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZVRyYW5z
YWN0aW9uLmNwcApAQCAtMTg3LDcgKzE4Nyw3IEBAIHZvaWQgVW5pcXVlSURCRGF0YWJhc2VUcmFu
c2FjdGlvbjo6ZGVsZXRlSW5kZXgoY29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3REYXRhCiAg
ICAgfSk7CiB9CiAKLXZvaWQgVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbjo6cHV0T3JBZGQo
Y29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3REYXRhLCBjb25zdCBJREJLZXlEYXRhJiBrZXlE
YXRhLCBjb25zdCBUaHJlYWRTYWZlRGF0YUJ1ZmZlciYgdmFsdWVEYXRhLCBJbmRleGVkREI6Ok9i
amVjdFN0b3JlT3ZlcndyaXRlTW9kZSBvdmVyd3JpdGVNb2RlKQordm9pZCBVbmlxdWVJREJEYXRh
YmFzZVRyYW5zYWN0aW9uOjpwdXRPckFkZChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdERh
dGEsIGNvbnN0IElEQktleURhdGEmIGtleURhdGEsIGNvbnN0IElEQlZhbHVlJiB2YWx1ZSwgSW5k
ZXhlZERCOjpPYmplY3RTdG9yZU92ZXJ3cml0ZU1vZGUgb3ZlcndyaXRlTW9kZSkKIHsKICAgICBM
T0coSW5kZXhlZERCLCAiVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbjo6cHV0T3JBZGQiKTsK
IApAQCAtMTk1LDcgKzE5NSw3IEBAIHZvaWQgVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbjo6
cHV0T3JBZGQoY29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3REYXRhLCBjCiAgICAgQVNTRVJU
KG1fdHJhbnNhY3Rpb25JbmZvLmlkZW50aWZpZXIoKSA9PSByZXF1ZXN0RGF0YS50cmFuc2FjdGlv
bklkZW50aWZpZXIoKSk7CiAKICAgICBSZWZQdHI8VW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlv
bj4gc2VsZih0aGlzKTsKLSAgICBtX2RhdGFiYXNlQ29ubmVjdGlvbi0+ZGF0YWJhc2UoKS5wdXRP
ckFkZChyZXF1ZXN0RGF0YSwga2V5RGF0YSwgdmFsdWVEYXRhLCBvdmVyd3JpdGVNb2RlLCBbdGhp
cywgc2VsZiwgcmVxdWVzdERhdGFdKGNvbnN0IElEQkVycm9yJiBlcnJvciwgY29uc3QgSURCS2V5
RGF0YSYga2V5KSB7CisgICAgbV9kYXRhYmFzZUNvbm5lY3Rpb24tPmRhdGFiYXNlKCkucHV0T3JB
ZGQocmVxdWVzdERhdGEsIGtleURhdGEsIHZhbHVlLCBvdmVyd3JpdGVNb2RlLCBbdGhpcywgc2Vs
ZiwgcmVxdWVzdERhdGFdKGNvbnN0IElEQkVycm9yJiBlcnJvciwgY29uc3QgSURCS2V5RGF0YSYg
a2V5KSB7CiAgICAgICAgIExPRyhJbmRleGVkREIsICJVbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0
aW9uOjpwdXRPckFkZCAoY2FsbGJhY2spIik7CiAKICAgICAgICAgaWYgKGVycm9yLmlzTnVsbCgp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1Vu
aXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmgKaW5kZXggZWZhMDlm
Ny4uNzZkODdjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5o
CkBAIC00Miw3ICs0Miw3IEBAIGNsYXNzIElEQkluZGV4SW5mbzsKIGNsYXNzIElEQktleURhdGE7
CiBjbGFzcyBJREJPYmplY3RTdG9yZUluZm87CiBjbGFzcyBJREJSZXF1ZXN0RGF0YTsKLWNsYXNz
IFRocmVhZFNhZmVEYXRhQnVmZmVyOworY2xhc3MgSURCVmFsdWU7CiAKIHN0cnVjdCBJREJLZXlS
YW5nZURhdGE7CiAKQEAgLTcyLDcgKzcyLDcgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXJPYmpl
Y3RTdG9yZShjb25zdCBJREJSZXF1ZXN0RGF0YSYsIHVpbnQ2NF90IG9iamVjdFN0b3JlSWRlbnRp
Zmllcik7CiAgICAgdm9pZCBjcmVhdGVJbmRleChjb25zdCBJREJSZXF1ZXN0RGF0YSYsIGNvbnN0
IElEQkluZGV4SW5mbyYpOwogICAgIHZvaWQgZGVsZXRlSW5kZXgoY29uc3QgSURCUmVxdWVzdERh
dGEmLCB1aW50NjRfdCBvYmplY3RTdG9yZUlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgaW5kZXhO
YW1lKTsKLSAgICB2b2lkIHB1dE9yQWRkKGNvbnN0IElEQlJlcXVlc3REYXRhJiwgY29uc3QgSURC
S2V5RGF0YSYsIGNvbnN0IFRocmVhZFNhZmVEYXRhQnVmZmVyJiB2YWx1ZURhdGEsIEluZGV4ZWRE
Qjo6T2JqZWN0U3RvcmVPdmVyd3JpdGVNb2RlKTsKKyAgICB2b2lkIHB1dE9yQWRkKGNvbnN0IElE
QlJlcXVlc3REYXRhJiwgY29uc3QgSURCS2V5RGF0YSYsIGNvbnN0IElEQlZhbHVlJiwgSW5kZXhl
ZERCOjpPYmplY3RTdG9yZU92ZXJ3cml0ZU1vZGUpOwogICAgIHZvaWQgZ2V0UmVjb3JkKGNvbnN0
IElEQlJlcXVlc3REYXRhJiwgY29uc3QgSURCS2V5UmFuZ2VEYXRhJik7CiAgICAgdm9pZCBnZXRD
b3VudChjb25zdCBJREJSZXF1ZXN0RGF0YSYsIGNvbnN0IElEQktleVJhbmdlRGF0YSYpOwogICAg
IHZvaWQgZGVsZXRlUmVjb3JkKGNvbnN0IElEQlJlcXVlc3REYXRhJiwgY29uc3QgSURCS2V5UmFu
Z2VEYXRhJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
aGFyZWQvSW5Qcm9jZXNzSURCU2VydmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JblByb2Nlc3NJREJTZXJ2ZXIuY3BwCmluZGV4IGZhZTEzMzcuLjZhNTMx
ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9J
blByb2Nlc3NJREJTZXJ2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JblByb2Nlc3NJREJTZXJ2ZXIuY3BwCkBAIC0zNSw2ICszNSw3IEBACiAjaW5j
bHVkZSAiSURCT3BlbkRCUmVxdWVzdC5oIgogI2luY2x1ZGUgIklEQlJlcXVlc3REYXRhLmgiCiAj
aW5jbHVkZSAiSURCUmVzdWx0RGF0YS5oIgorI2luY2x1ZGUgIklEQlZhbHVlLmgiCiAjaW5jbHVk
ZSAiTG9nZ2luZy5oIgogI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CiAKQEAgLTI4NywxNCArMjg4
LDEzIEBAIHZvaWQgSW5Qcm9jZXNzSURCU2VydmVyOjpkZWxldGVJbmRleChjb25zdCBJREJSZXF1
ZXN0RGF0YSYgcmVxdWVzdERhdGEsIHVpbnQ2NF90CiAgICAgfSk7CiB9CiAKLXZvaWQgSW5Qcm9j
ZXNzSURCU2VydmVyOjpwdXRPckFkZChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdERhdGEs
IElEQktleSoga2V5LCBTZXJpYWxpemVkU2NyaXB0VmFsdWUmIHZhbHVlLCBjb25zdCBJbmRleGVk
REI6Ok9iamVjdFN0b3JlT3ZlcndyaXRlTW9kZSBvdmVyd3JpdGVNb2RlKQordm9pZCBJblByb2Nl
c3NJREJTZXJ2ZXI6OnB1dE9yQWRkKGNvbnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0RGF0YSwg
SURCS2V5KiBrZXksIGNvbnN0IElEQlZhbHVlJiB2YWx1ZSwgY29uc3QgSW5kZXhlZERCOjpPYmpl
Y3RTdG9yZU92ZXJ3cml0ZU1vZGUgb3ZlcndyaXRlTW9kZSkKIHsKICAgICBSZWZQdHI8SW5Qcm9j
ZXNzSURCU2VydmVyPiBzZWxmKHRoaXMpOwogICAgIElEQktleURhdGEga2V5RGF0YShrZXkpOwot
ICAgIGF1dG8gdmFsdWVEYXRhID0gVGhyZWFkU2FmZURhdGFCdWZmZXI6OmNvcHlWZWN0b3IodmFs
dWUuZGF0YSgpKTsKIAotICAgIFJ1bkxvb3A6OmN1cnJlbnQoKS5kaXNwYXRjaChbdGhpcywgc2Vs
ZiwgcmVxdWVzdERhdGEsIGtleURhdGEsIHZhbHVlRGF0YSwgb3ZlcndyaXRlTW9kZV0gewotICAg
ICAgICBtX3NlcnZlci0+cHV0T3JBZGQocmVxdWVzdERhdGEsIGtleURhdGEsIHZhbHVlRGF0YSwg
b3ZlcndyaXRlTW9kZSk7CisgICAgUnVuTG9vcDo6Y3VycmVudCgpLmRpc3BhdGNoKFt0aGlzLCBz
ZWxmLCByZXF1ZXN0RGF0YSwga2V5RGF0YSwgdmFsdWUsIG92ZXJ3cml0ZU1vZGVdIHsKKyAgICAg
ICAgbV9zZXJ2ZXItPnB1dE9yQWRkKHJlcXVlc3REYXRhLCBrZXlEYXRhLCB2YWx1ZSwgb3Zlcndy
aXRlTW9kZSk7CiAgICAgfSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JblByb2Nlc3NJREJTZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JblByb2Nlc3NJREJTZXJ2ZXIuaAppbmRleCAwZTY0
MzAwLi44MmEyMDkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zaGFyZWQvSW5Qcm9jZXNzSURCU2VydmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0luUHJvY2Vzc0lEQlNlcnZlci5oCkBAIC02NSw3ICs2NSw3IEBA
IHB1YmxpYzoKICAgICB2b2lkIGNsZWFyT2JqZWN0U3RvcmUoY29uc3QgSURCUmVxdWVzdERhdGEm
LCB1aW50NjRfdCBvYmplY3RTdG9yZUlkZW50aWZpZXIpIGZpbmFsOwogICAgIHZvaWQgY3JlYXRl
SW5kZXgoY29uc3QgSURCUmVxdWVzdERhdGEmLCBjb25zdCBJREJJbmRleEluZm8mKSBmaW5hbDsK
ICAgICB2b2lkIGRlbGV0ZUluZGV4KGNvbnN0IElEQlJlcXVlc3REYXRhJiwgdWludDY0X3Qgb2Jq
ZWN0U3RvcmVJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIGluZGV4TmFtZSkgZmluYWw7Ci0gICAg
dm9pZCBwdXRPckFkZChjb25zdCBJREJSZXF1ZXN0RGF0YSYsIElEQktleSosIFNlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZSYsIGNvbnN0IEluZGV4ZWREQjo6T2JqZWN0U3RvcmVPdmVyd3JpdGVNb2RlKSBm
aW5hbDsKKyAgICB2b2lkIHB1dE9yQWRkKGNvbnN0IElEQlJlcXVlc3REYXRhJiwgSURCS2V5Kiwg
Y29uc3QgSURCVmFsdWUmLCBjb25zdCBJbmRleGVkREI6Ok9iamVjdFN0b3JlT3ZlcndyaXRlTW9k
ZSkgZmluYWw7CiAgICAgdm9pZCBnZXRSZWNvcmQoY29uc3QgSURCUmVxdWVzdERhdGEmLCBjb25z
dCBJREJLZXlSYW5nZURhdGEmKSBmaW5hbDsKICAgICB2b2lkIGdldENvdW50KGNvbnN0IElEQlJl
cXVlc3REYXRhJiwgY29uc3QgSURCS2V5UmFuZ2VEYXRhJikgZmluYWw7CiAgICAgdm9pZCBkZWxl
dGVSZWNvcmQoY29uc3QgSURCUmVxdWVzdERhdGEmLCBjb25zdCBJREJLZXlSYW5nZURhdGEmKSBm
aW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCAxMDBjYTQ3Li4xOTBmODhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMDQ1LDcgKzIwNDUsNyBAQAogCQk1
MTYwNzEyRjFCRDgzMDc4MDBEQkM0RjIgLyogSURCT2JqZWN0U3RvcmVJbmZvLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTYwNzEyRDFCRDgzMDcyMDBE
QkM0RjIgLyogSURCT2JqZWN0U3RvcmVJbmZvLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNTE2MDcxMzIxQkQ4MzA4QjAwREJDNEYyIC8qIFRyYW5z
YWN0aW9uT3BlcmF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA1MTYwNzEyQjFCRDgzMDUzMDBEQkM0RjIgLyogVHJhbnNhY3Rpb25PcGVyYXRpb24u
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk1MTYw
RjQ5ODBCMEFBNzVGMDBDMUQyQUYgLyogSGlzdG9yeUl0ZW1NYWMubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1MTYwRjQ5NzBCMEFBNzVGMDBDMUQyQUYg
LyogSGlzdG9yeUl0ZW1NYWMubW0gKi87IH07Ci0JCTUxNjEwM0FGMUNBREJBNzcwMDE2QjRDNyAv
KiBJREJWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNTE2MTAzQUUxQ0FEQjlBMzAwMTZCNEM3IC8qIElEQlZhbHVlLmggKi87IH07CisJCTUxNjEw
M0FGMUNBREJBNzcwMDE2QjRDNyAvKiBJREJWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNTE2MTAzQUUxQ0FEQjlBMzAwMTZCNEM3IC8qIElEQlZh
bHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJ
NTE2MTAzQjAxQ0FEQkE3QTAwMTZCNEM3IC8qIElEQlZhbHVlLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNjEwM0FEMUNBREI5QTMwMDE2QjRDNyAv
KiBJREJWYWx1ZS5jcHAgKi87IH07CiAJCTUxNjJDN0Y0MTFGNzdFRkIwMDYxMkVGRSAvKiBTY2hl
bWVSZWdpc3RyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA1MTYyQzdGMjExRjc3RUZBMDA2MTJFRkUgLyogU2NoZW1lUmVnaXN0cnkuY3BwICovOyB9
OwogCQk1MTYyQzdGNTExRjc3RUZCMDA2MTJFRkUgLyogU2NoZW1lUmVnaXN0cnkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDUxNjJDN0YzMTFGNzdFRkIw
MDYxMkVGRSAvKiBTY2hlbWVSZWdpc3RyeS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9D
cm9zc1RocmVhZENvcGllci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Dcm9zc1RocmVh
ZENvcGllci5jcHAKaW5kZXggN2JjOTM5MC4uNmRlNjcxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vQ3Jvc3NUaHJlYWRDb3BpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL0Nyb3NzVGhyZWFkQ29waWVyLmNwcApAQCAtNTQsNiArNTQsNyBAQAogI2luY2x1
ZGUgIklEQk9iamVjdFN0b3JlSW5mby5oIgogI2luY2x1ZGUgIklEQlJlc291cmNlSWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIklEQlRyYW5zYWN0aW9uSW5mby5oIgorI2luY2x1ZGUgIklEQlZhbHVl
LmgiCiAjZW5kaWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTY1LDYgKzE2NiwxMSBAQCBD
cm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJREJDdXJzb3JJbmZvPjo6VHlwZSBD
cm9zc1RocmVhZENvcGllckJhc2U8ZgogICAgIHJldHVybiBpbmZvLmlzb2xhdGVkQ29weSgpOwog
fQogCitDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZhbHNlLCBJREJWYWx1ZT46OlR5cGUg
Q3Jvc3NUaHJlYWRDb3BpZXJCYXNlPGZhbHNlLCBmYWxzZSwgSURCVmFsdWU+Ojpjb3B5KGNvbnN0
IElEQlZhbHVlJiB2YWx1ZSkKK3sKKyAgICByZXR1cm4gdmFsdWUuaXNvbGF0ZWRDb3B5KCk7Cit9
CisKICNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKIAogLy8gVGVzdCBDcm9zc1Ro
cmVhZENvcGllciB1c2luZyBDT01QSUxFX0FTU0VSVC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL0Nyb3NzVGhyZWFkQ29waWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9Dcm9zc1RocmVhZENvcGllci5oCmluZGV4IGU3YTYyMjUuLmQyOTlkMWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0Nyb3NzVGhyZWFkQ29waWVyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vQ3Jvc3NUaHJlYWRDb3BpZXIuaApAQCAtMjI3LDYgKzIyNywxMiBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgSURC
Q3Vyc29ySW5mbyYpOwogICAgIH07CiAKKyAgICBjbGFzcyBJREJWYWx1ZTsKKyAgICB0ZW1wbGF0
ZTw+IHN0cnVjdCBXRUJDT1JFX0VYUE9SVCBDcm9zc1RocmVhZENvcGllckJhc2U8ZmFsc2UsIGZh
bHNlLCBJREJWYWx1ZT4geworICAgICAgICB0eXBlZGVmIElEQlZhbHVlIFR5cGU7CisgICAgICAg
IHN0YXRpYyBUeXBlIGNvcHkoY29uc3QgSURCVmFsdWUmKTsKKyAgICB9OworCiAjZW5kaWYKIAog
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9UaHJlYWRTYWZlRGF0YUJ1ZmZlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVGhy
ZWFkU2FmZURhdGFCdWZmZXIuaAppbmRleCBlZTRjOTVkLi5hNjUwOTRlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UaHJlYWRTYWZlRGF0YUJ1ZmZlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1RocmVhZFNhZmVEYXRhQnVmZmVyLmgKQEAgLTcxLDYgKzcxLDkg
QEAgcHVibGljOgogICAgICAgICByZXR1cm4gbV9pbXBsID8gJm1faW1wbC0+bV9kYXRhIDogbnVs
bHB0cjsKICAgICB9CiAKKyAgICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShF
bmNvZGVyJikgY29uc3Q7CisgICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIGJvb2wg
ZGVjb2RlKERlY29kZXImLCBUaHJlYWRTYWZlRGF0YUJ1ZmZlciYpOworCiBwcml2YXRlOgogICAg
IGV4cGxpY2l0IFRocmVhZFNhZmVEYXRhQnVmZmVyKFZlY3Rvcjx1aW50OF90PiYgZGF0YSwgVGhy
ZWFkU2FmZURhdGFCdWZmZXJJbXBsOjpBZG9wdFZlY3RvclRhZyB0YWcpCiAgICAgewpAQCAtODUs
NiArODgsMzQgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8VGhyZWFkU2FmZURhdGFCdWZmZXJJbXBs
PiBtX2ltcGw7CiB9OwogCit0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPgordm9pZCBUaHJlYWRTYWZl
RGF0YUJ1ZmZlcjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIpIGNvbnN0Cit7CisgICAgYm9vbCBo
YXNEYXRhID0gbV9pbXBsOworICAgIGVuY29kZXIgPDwgaGFzRGF0YTsKKworICAgIGlmIChoYXNE
YXRhKQorICAgICAgICBlbmNvZGVyIDw8IG1faW1wbC0+bV9kYXRhOworfQorCit0ZW1wbGF0ZTxj
bGFzcyBEZWNvZGVyPgorYm9vbCBUaHJlYWRTYWZlRGF0YUJ1ZmZlcjo6ZGVjb2RlKERlY29kZXIm
IGRlY29kZXIsIFRocmVhZFNhZmVEYXRhQnVmZmVyJiByZXN1bHQpCit7CisgICAgYm9vbCBoYXNE
YXRhOworICAgIGlmICghZGVjb2Rlci5kZWNvZGUoaGFzRGF0YSkpCisgICAgICAgIHJldHVybiBm
YWxzZTsKKworICAgIGlmIChoYXNEYXRhKSB7CisgICAgICAgIFZlY3Rvcjx1aW50OF90PiBkYXRh
OworICAgICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKGRhdGEpKQorICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOworCisgICAgICAgIHJlc3VsdCA9IFRocmVhZFNhZmVEYXRhQnVmZmVyOjphZG9wdFZl
Y3RvcihkYXRhKTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gVGhyZWFkU2FmZURhdGFCdWZmZXJfaApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmlu
ZGV4IDRhYzM2ZGMuLjZiZTg3NmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxNi0w
NC0wNSAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJu
IElEQjogUmVwbGFjZSB1c2Ugb2YgU2VyaWFsaXplZFNjcmlwdFZhbHVlIHdpdGggSURCVmFsdWUu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTYyNDIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIERhdGFi
YXNlUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpwdXRPckFkZCk6CisgICAgICAg
ICogRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuaDoK
KyAgICAgICAgKiBEYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0Ns
aWVudC5tZXNzYWdlcy5pbjoKKworICAgICAgICAqIFdlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4
ZWREQi9XZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJJ
REJDb25uZWN0aW9uVG9TZXJ2ZXI6OnB1dE9yQWRkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0Rh
dGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLmg6CisKIDIwMTYtMDQt
MDUgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRzQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2ViR0wy
XSBBbGxvdyBlbmFibGluZyBXZWJHTDIgd2l0aCBhIHJ1bnRpbWUgZmxhZwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9u
VG9DbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9X
ZWJJREJDb25uZWN0aW9uVG9DbGllbnQuY3BwCmluZGV4IGNjMDczNWQuLjM0NTkzMzEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29u
bmVjdGlvblRvQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3Mv
SW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5jcHAKQEAgLTM0LDYgKzM0LDcgQEAK
ICNpbmNsdWRlICJXZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXJNZXNzYWdlcy5oIgogI2luY2x1ZGUg
PFdlYkNvcmUvSURCRXJyb3IuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0lEQlJlc3VsdERhdGEuaD4K
KyNpbmNsdWRlIDxXZWJDb3JlL0lEQlZhbHVlLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9UaHJlYWRT
YWZlRGF0YUJ1ZmZlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVW5pcXVlSURCRGF0YWJhc2VDb25u
ZWN0aW9uLmg+CiAKQEAgLTIxNCw3ICsyMTUsNyBAQCB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub0Ns
aWVudDo6ZGVsZXRlSW5kZXgoY29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3QsIHVpbnQ2NAog
ICAgIERhdGFiYXNlUHJvY2Vzczo6c2luZ2xldG9uKCkuaWRiU2VydmVyKCkuZGVsZXRlSW5kZXgo
cmVxdWVzdCwgb2JqZWN0U3RvcmVJZGVudGlmaWVyLCBuYW1lKTsKIH0KIAotdm9pZCBXZWJJREJD
b25uZWN0aW9uVG9DbGllbnQ6OnB1dE9yQWRkKGNvbnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0
LCBjb25zdCBJREJLZXlEYXRhJiBrZXksIGNvbnN0IElQQzo6RGF0YVJlZmVyZW5jZSYgZGF0YSwg
dW5zaWduZWQgb3ZlcndyaXRlTW9kZSkKK3ZvaWQgV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50Ojpw
dXRPckFkZChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdCwgY29uc3QgSURCS2V5RGF0YSYg
a2V5LCBjb25zdCBJREJWYWx1ZSYgdmFsdWUsIHVuc2lnbmVkIG92ZXJ3cml0ZU1vZGUpCiB7CiAg
ICAgaWYgKG92ZXJ3cml0ZU1vZGUgIT0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEluZGV4ZWREQjo6
T2JqZWN0U3RvcmVPdmVyd3JpdGVNb2RlOjpOb092ZXJ3cml0ZSkKICAgICAgICAgJiYgb3Zlcndy
aXRlTW9kZSAhPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSW5kZXhlZERCOjpPYmplY3RTdG9yZU92
ZXJ3cml0ZU1vZGU6Ok92ZXJ3cml0ZSkKQEAgLTIyNSw5ICsyMjYsOCBAQCB2b2lkIFdlYklEQkNv
bm5lY3Rpb25Ub0NsaWVudDo6cHV0T3JBZGQoY29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3Qs
IGNvbnN0IElEQgogICAgIH0KIAogICAgIEluZGV4ZWREQjo6T2JqZWN0U3RvcmVPdmVyd3JpdGVN
b2RlIG1vZGUgPSBzdGF0aWNfY2FzdDxJbmRleGVkREI6Ok9iamVjdFN0b3JlT3ZlcndyaXRlTW9k
ZT4ob3ZlcndyaXRlTW9kZSk7Ci0gICAgYXV0byBidWZmZXIgPSBUaHJlYWRTYWZlRGF0YUJ1ZmZl
cjo6Y29weVZlY3RvcihkYXRhLnZlY3RvcigpKTsKIAotICAgIERhdGFiYXNlUHJvY2Vzczo6c2lu
Z2xldG9uKCkuaWRiU2VydmVyKCkucHV0T3JBZGQocmVxdWVzdCwga2V5LCBidWZmZXIsIG1vZGUp
OworICAgIERhdGFiYXNlUHJvY2Vzczo6c2luZ2xldG9uKCkuaWRiU2VydmVyKCkucHV0T3JBZGQo
cmVxdWVzdCwga2V5LCB2YWx1ZSwgbW9kZSk7CiB9CiAKIHZvaWQgV2ViSURCQ29ubmVjdGlvblRv
Q2xpZW50OjpnZXRSZWNvcmQoY29uc3QgSURCUmVxdWVzdERhdGEmIHJlcXVlc3QsIGNvbnN0IElE
QktleVJhbmdlRGF0YSYgcmFuZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFz
ZVByb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5oIGIvU291cmNlL1dl
YktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQu
aAppbmRleCBmYTFlZGY3Li41NWZkN2EwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9EYXRh
YmFzZVByb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRv
Q2xpZW50LmgKQEAgLTM5LDYgKzM5LDcgQEAgY2xhc3MgSURCS2V5RGF0YTsKIGNsYXNzIElEQk9i
amVjdFN0b3JlSW5mbzsKIGNsYXNzIElEQlJlcXVlc3REYXRhOwogY2xhc3MgSURCVHJhbnNhY3Rp
b25JbmZvOworY2xhc3MgSURCVmFsdWU7CiBjbGFzcyBTZXJpYWxpemVkU2NyaXB0VmFsdWU7CiBz
dHJ1Y3QgSURCS2V5UmFuZ2VEYXRhOwogfQpAQCAtOTAsNyArOTEsNyBAQCBwdWJsaWM6CiAgICAg
dm9pZCBjbGVhck9iamVjdFN0b3JlKGNvbnN0IFdlYkNvcmU6OklEQlJlcXVlc3REYXRhJiwgdWlu
dDY0X3Qgb2JqZWN0U3RvcmVJZGVudGlmaWVyKTsKICAgICB2b2lkIGNyZWF0ZUluZGV4KGNvbnN0
IFdlYkNvcmU6OklEQlJlcXVlc3REYXRhJiwgY29uc3QgV2ViQ29yZTo6SURCSW5kZXhJbmZvJik7
CiAgICAgdm9pZCBkZWxldGVJbmRleChjb25zdCBXZWJDb3JlOjpJREJSZXF1ZXN0RGF0YSYsIHVp
bnQ2NF90IG9iamVjdFN0b3JlSWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBpbmRleE5hbWUpOwot
ICAgIHZvaWQgcHV0T3JBZGQoY29uc3QgV2ViQ29yZTo6SURCUmVxdWVzdERhdGEmLCBjb25zdCBX
ZWJDb3JlOjpJREJLZXlEYXRhJiwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiB2YWx1ZSwgdW5z
aWduZWQgb3ZlcndyaXRlTW9kZSk7CisgICAgdm9pZCBwdXRPckFkZChjb25zdCBXZWJDb3JlOjpJ
REJSZXF1ZXN0RGF0YSYsIGNvbnN0IFdlYkNvcmU6OklEQktleURhdGEmLCBjb25zdCBXZWJDb3Jl
OjpJREJWYWx1ZSYsIHVuc2lnbmVkIG92ZXJ3cml0ZU1vZGUpOwogICAgIHZvaWQgZ2V0UmVjb3Jk
KGNvbnN0IFdlYkNvcmU6OklEQlJlcXVlc3REYXRhJiwgY29uc3QgV2ViQ29yZTo6SURCS2V5UmFu
Z2VEYXRhJik7CiAgICAgdm9pZCBnZXRDb3VudChjb25zdCBXZWJDb3JlOjpJREJSZXF1ZXN0RGF0
YSYsIGNvbnN0IFdlYkNvcmU6OklEQktleVJhbmdlRGF0YSYpOwogICAgIHZvaWQgZGVsZXRlUmVj
b3JkKGNvbnN0IFdlYkNvcmU6OklEQlJlcXVlc3REYXRhJiwgY29uc3QgV2ViQ29yZTo6SURCS2V5
UmFuZ2VEYXRhJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3Mv
SW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5tZXNzYWdlcy5pbiBiL1NvdXJjZS9X
ZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50
Lm1lc3NhZ2VzLmluCmluZGV4IDk0ZjhmMmYuLmE4NDhmZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50
Lm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVk
REIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50Lm1lc3NhZ2VzLmluCkBAIC0zMyw3ICszMyw3IEBA
IG1lc3NhZ2VzIC0+IFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudCB7CiAgICAgQ2xlYXJPYmplY3RT
dG9yZShXZWJDb3JlOjpJREJSZXF1ZXN0RGF0YSByZXF1ZXN0RGF0YSwgdWludDY0X3Qgb2JqZWN0
U3RvcmVJZGVudGlmaWVyKTsKICAgICBDcmVhdGVJbmRleChXZWJDb3JlOjpJREJSZXF1ZXN0RGF0
YSByZXF1ZXN0RGF0YSwgV2ViQ29yZTo6SURCSW5kZXhJbmZvIGluZm8pOwogICAgIERlbGV0ZUlu
ZGV4KFdlYkNvcmU6OklEQlJlcXVlc3REYXRhIHJlcXVlc3REYXRhLCB1aW50NjRfdCBvYmplY3RT
dG9yZUlkZW50aWZpZXIsIFN0cmluZyBpbmRleE5hbWUpOwotICAgIFB1dE9yQWRkKFdlYkNvcmU6
OklEQlJlcXVlc3REYXRhIHJlcXVlc3REYXRhLCBXZWJDb3JlOjpJREJLZXlEYXRhIGtleSwgSVBD
OjpEYXRhUmVmZXJlbmNlIHZhbHVlLCB1bnNpZ25lZCBvdmVyd3JpdGVNb2RlKTsKKyAgICBQdXRP
ckFkZChXZWJDb3JlOjpJREJSZXF1ZXN0RGF0YSByZXF1ZXN0RGF0YSwgV2ViQ29yZTo6SURCS2V5
RGF0YSBrZXksIFdlYkNvcmU6OklEQlZhbHVlIHZhbHVlLCB1bnNpZ25lZCBvdmVyd3JpdGVNb2Rl
KTsKICAgICBHZXRSZWNvcmQoV2ViQ29yZTo6SURCUmVxdWVzdERhdGEgcmVxdWVzdERhdGEsIHN0
cnVjdCBXZWJDb3JlOjpJREJLZXlSYW5nZURhdGEgcmFuZ2UpOwogICAgIEdldENvdW50KFdlYkNv
cmU6OklEQlJlcXVlc3REYXRhIHJlcXVlc3REYXRhLCBzdHJ1Y3QgV2ViQ29yZTo6SURCS2V5UmFu
Z2VEYXRhIHJhbmdlKTsKICAgICBEZWxldGVSZWNvcmQoV2ViQ29yZTo6SURCUmVxdWVzdERhdGEg
cmVxdWVzdERhdGEsIHN0cnVjdCBXZWJDb3JlOjpJREJLZXlSYW5nZURhdGEgcmFuZ2UpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dl
YklEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0Rh
dGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLmNwcAppbmRleCA2ZDM3
NWQ0Li4wOTg2NzJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFi
YXNlcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRv
U2VydmVyLmNwcApAQCAtNDQsNiArNDQsNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvSURCUmVzb3Vy
Y2VJZGVudGlmaWVyLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9JREJSZXN1bHREYXRhLmg+CiAjaW5j
bHVkZSA8V2ViQ29yZS9JREJUcmFuc2FjdGlvbkluZm8uaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0lE
QlZhbHVlLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCkBAIC0xMjgsMTEgKzEyOSwx
MCBAQCB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub1NlcnZlcjo6ZGVsZXRlSW5kZXgoY29uc3QgSURC
UmVxdWVzdERhdGEmIHJlcXVlc3REYXRhLCB1aQogICAgIHNlbmQoTWVzc2FnZXM6OldlYklEQkNv
bm5lY3Rpb25Ub0NsaWVudDo6RGVsZXRlSW5kZXgocmVxdWVzdERhdGEsIG9iamVjdFN0b3JlSWRl
bnRpZmllciwgaW5kZXhOYW1lKSk7CiB9CiAKLXZvaWQgV2ViSURCQ29ubmVjdGlvblRvU2VydmVy
OjpwdXRPckFkZChjb25zdCBJREJSZXF1ZXN0RGF0YSYgcmVxdWVzdERhdGEsIElEQktleSoga2V5
LCBTZXJpYWxpemVkU2NyaXB0VmFsdWUmIHZhbHVlLCBjb25zdCBJbmRleGVkREI6Ok9iamVjdFN0
b3JlT3ZlcndyaXRlTW9kZSBtb2RlKQordm9pZCBXZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXI6OnB1
dE9yQWRkKGNvbnN0IElEQlJlcXVlc3REYXRhJiByZXF1ZXN0RGF0YSwgSURCS2V5KiBrZXksIGNv
bnN0IElEQlZhbHVlJiB2YWx1ZSwgY29uc3QgSW5kZXhlZERCOjpPYmplY3RTdG9yZU92ZXJ3cml0
ZU1vZGUgbW9kZSkKIHsKICAgICBJREJLZXlEYXRhIGtleURhdGEoa2V5KTsKLSAgICBJUEM6OkRh
dGFSZWZlcmVuY2UgdmFsdWVEYXRhKHZhbHVlLmRhdGEoKSk7Ci0gICAgc2VuZChNZXNzYWdlczo6
V2ViSURCQ29ubmVjdGlvblRvQ2xpZW50OjpQdXRPckFkZChyZXF1ZXN0RGF0YSwga2V5RGF0YSwg
dmFsdWVEYXRhLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4obW9kZSkpKTsKKyAgICBzZW5kKE1lc3Nh
Z2VzOjpXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OlB1dE9yQWRkKHJlcXVlc3REYXRhLCBrZXlE
YXRhLCB2YWx1ZSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KG1vZGUpKSk7CiB9CiAKIHZvaWQgV2Vi
SURCQ29ubmVjdGlvblRvU2VydmVyOjpnZXRSZWNvcmQoY29uc3QgSURCUmVxdWVzdERhdGEmIHJl
cXVlc3REYXRhLCBjb25zdCBJREJLZXlSYW5nZURhdGEmIHJhbmdlKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rp
b25Ub1NlcnZlci5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhl
ZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5oCmluZGV4IDFjYjY4YWUuLmI0NjkzOWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9X
ZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLmgKQEAgLTU0LDcg
KzU0LDcgQEAgcHVibGljOgogICAgIHZvaWQgY2xlYXJPYmplY3RTdG9yZShjb25zdCBXZWJDb3Jl
OjpJREJSZXF1ZXN0RGF0YSYsIHVpbnQ2NF90IG9iamVjdFN0b3JlSWRlbnRpZmllcikgZmluYWw7
CiAgICAgdm9pZCBjcmVhdGVJbmRleChjb25zdCBXZWJDb3JlOjpJREJSZXF1ZXN0RGF0YSYsIGNv
bnN0IFdlYkNvcmU6OklEQkluZGV4SW5mbyYpIGZpbmFsOwogICAgIHZvaWQgZGVsZXRlSW5kZXgo
Y29uc3QgV2ViQ29yZTo6SURCUmVxdWVzdERhdGEmLCB1aW50NjRfdCBvYmplY3RTdG9yZUlkZW50
aWZpZXIsIGNvbnN0IFN0cmluZyYgaW5kZXhOYW1lKSBmaW5hbDsKLSAgICB2b2lkIHB1dE9yQWRk
KGNvbnN0IFdlYkNvcmU6OklEQlJlcXVlc3REYXRhJiwgV2ViQ29yZTo6SURCS2V5KiwgV2ViQ29y
ZTo6U2VyaWFsaXplZFNjcmlwdFZhbHVlJiwgY29uc3QgV2ViQ29yZTo6SW5kZXhlZERCOjpPYmpl
Y3RTdG9yZU92ZXJ3cml0ZU1vZGUpIGZpbmFsOworICAgIHZvaWQgcHV0T3JBZGQoY29uc3QgV2Vi
Q29yZTo6SURCUmVxdWVzdERhdGEmLCBXZWJDb3JlOjpJREJLZXkqLCBjb25zdCBXZWJDb3JlOjpJ
REJWYWx1ZSYsIGNvbnN0IFdlYkNvcmU6OkluZGV4ZWREQjo6T2JqZWN0U3RvcmVPdmVyd3JpdGVN
b2RlKSBmaW5hbDsKICAgICB2b2lkIGdldFJlY29yZChjb25zdCBXZWJDb3JlOjpJREJSZXF1ZXN0
RGF0YSYsIGNvbnN0IFdlYkNvcmU6OklEQktleVJhbmdlRGF0YSYpIGZpbmFsOwogICAgIHZvaWQg
Z2V0Q291bnQoY29uc3QgV2ViQ29yZTo6SURCUmVxdWVzdERhdGEmLCBjb25zdCBXZWJDb3JlOjpJ
REJLZXlSYW5nZURhdGEmKSBmaW5hbDsKICAgICB2b2lkIGRlbGV0ZVJlY29yZChjb25zdCBXZWJD
b3JlOjpJREJSZXF1ZXN0RGF0YSYsIGNvbnN0IFdlYkNvcmU6OklEQktleVJhbmdlRGF0YSYpIGZp
bmFsOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>