<?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>220493</bug_id>
          
          <creation_ts>2021-01-08 18:28:29 -0800</creation_ts>
          <short_desc>[Cocoa] Support key rotation with HLS-backed encrypted media streams</short_desc>
          <delta_ts>2021-01-12 09:20:15 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>annulen</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mkwst</cc>
    
    <cc>peng.liu6</cc>
    
    <cc>philipj</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1718524</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-08 18:28:29 -0800</bug_when>
    <thetext>[Cocoa] Support key rotation with HLS-backed encrypted media streams</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718525</commentid>
    <comment_count>1</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-08 18:28:55 -0800</bug_when>
    <thetext>&lt;rdar://68227709&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718527</commentid>
    <comment_count>2</comment_count>
      <attachid>417325</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-08 18:35:36 -0800</bug_when>
    <thetext>Created attachment 417325
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718543</commentid>
    <comment_count>3</comment_count>
      <attachid>417330</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-08 20:40:28 -0800</bug_when>
    <thetext>Created attachment 417330
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718544</commentid>
    <comment_count>4</comment_count>
      <attachid>417331</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-08 20:42:05 -0800</bug_when>
    <thetext>Created attachment 417331
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718550</commentid>
    <comment_count>5</comment_count>
      <attachid>417336</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-08 23:21:05 -0800</bug_when>
    <thetext>Created attachment 417336
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718551</commentid>
    <comment_count>6</comment_count>
      <attachid>417337</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-08 23:25:15 -0800</bug_when>
    <thetext>Created attachment 417337
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718552</commentid>
    <comment_count>7</comment_count>
      <attachid>417338</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-08 23:25:44 -0800</bug_when>
    <thetext>Created attachment 417338
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718757</commentid>
    <comment_count>8</comment_count>
      <attachid>417338</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2021-01-11 11:48:58 -0800</bug_when>
    <thetext>Comment on attachment 417338
Patch

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

Can we test this?

&gt; Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm:274
&gt; +        auto requestInitData  = initializationDataForRequest(request.get());

Nit: extra space before &quot;=&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1718786</commentid>
    <comment_count>9</comment_count>
      <attachid>417403</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-01-11 12:49:39 -0800</bug_when>
    <thetext>Created attachment 417403
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719014</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-01-12 09:20:13 -0800</bug_when>
    <thetext>Committed r271405: &lt;https://trac.webkit.org/changeset/271405&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 417403.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417325</attachid>
            <date>2021-01-08 18:35:36 -0800</date>
            <delta_ts>2021-01-08 20:40:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220493-20210108183535.patch</filename>
            <type>text/plain</type>
            <size>8820</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQ5NTBlNDNkOTNlZDc1
OGFhMTBiM2FmOGRkZGZlYzRkODA3MTgxYS4uYTliZmE3NGRlODgxYzE4NGQ1NzZhZTIwYTExOWI5
NWI5NzcxNTRjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIxLTAxLTA4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gU3VwcG9ydCBr
ZXkgcm90YXRpb24gd2l0aCBITFMtYmFja2VkIGVuY3J5cHRlZCBtZWRpYSBzdHJlYW1zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA0OTMKKyAgICAg
ICAgPHJkYXI6Ly82ODIyNzcwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IGtleSByb3RhdGlvbiB0aHJvdWdoIEFWQ29udGVudEtleVNl
c3Npb24gYnkgZXhwbGljaXRseSBoYW5kbGluZyB1bmV4cGVjdGVkIGtleSByZXF1ZXN0cworICAg
ICAgICBzdWJtaXR0ZWQgdGhyb3VnaCB0aGUgbmV3IC1jb250ZW50S2V5U2Vzc2lvbjpkaWRQcm92
aWRlQ29udGVudEtleVJlcXVlc3RzOmZvckluaXRpYWxpemF0aW9uRGF0YTouCisgICAgICAgIFJv
dGF0aW9uIHdhcyBwcmV2aW91c2x5IGhhbmRsZWQgaW4gdGhlIGRlbGVnYXRlIG1ldGhvZCAtY29u
dGVudEtleVNlc3Npb246ZGlkUHJvdmlkZUNvbnRlbnRLZXlSZXF1ZXN0LAorICAgICAgICBidXQg
dGhhdCBtZXRob2QgaXMgbm8gbG9uZ2VyIGNhbGxlZCBhZnRlciB0aGUgcmVwbGFjZW1lbnQgZGVs
ZWdhdGUgbWV0aG9kIHdhcyBpbXBsZW1lbnRlZCwgYW5kCisgICAgICAgIHRoYXQgbWV0aG9kIG5l
dmVyIGhhbmRsZWQgInNrZDovLyIgc3R5bGUgaW5pdGlhbGl6YXRpb24gZGF0YS4KKworICAgICAg
ICBVcGRhdGUgdGhlIGhlbHBlciBtZXRob2QsIGluaXRUeXBlRm9yUmVxdWVzdCgpLCB0byBkZXRl
Y3QgInNrZDovLyIgaWRlbnRpZmllcnMgYW5kIGNvcnJlY3RseSBpZGVudGlmeQorICAgICAgICB0
aG9zZSBzZXNzaW9ucyBhcyAic2tkIi4KKworICAgICAgICBBZGQgYSBuZXcgaGVscGVyIG1ldGhv
ZCwgaW5pdGlhbGl6YXRpb25EYXRhRm9yUmVxdWVzdCgpLCB3aGljaCB3aWxsIHBhY2thZ2UgdGhl
IEFWQ29udGVudEtleVNlc3Npb24ncworICAgICAgICBpZGVudGlmaWVyIGFzIGluaXRpYWxpemF0
aW9uIGRhdGEuCisKKyAgICAgICAgRHJpdmUtYnkgRml4OiBGaXhpbmcgdGhpcyBidWcgY2F1c2Vz
IHRoZSBkZWZhdWx0IGtleSBncm91cCB0byB1cGRhdGUgaXQncyBpZGVudGlmaWVyLCB3aGljaCBj
YXVzZXMgYW4gYXNzZXJ0CisgICAgICAgIHdoZW4gdGhlIGdyb3VwIGluIHF1ZXN0aW9uIGlzbid0
IGFueSBvZiB0aG9zZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhpc3RpbmcgTWVkaWFLZXlTZXNzaW9u
LCBzbyBoYW5kbGUgdGhhdCBjYXNlCisgICAgICAgIGV4cGxpY2l0bHkuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tOgorICAgICAgICAo
V2ViQ29yZTo6aW5pdFR5cGVGb3JSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxp
emF0aW9uRGF0YUZvclJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWly
UGxheVN0cmVhbWluZ0FWRk9iakM6OnRha2VVbmV4cGVjdGVkS2V5UmVxdWVzdEZvckluaXRpYWxp
emF0aW9uRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5z
dGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmRpZFByb3ZpZGVSZXF1ZXN0cyk6CisgICAg
ICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6aGFuZGxl
VW5leHBlY3RlZFJlcXVlc3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlRmFpclBs
YXlTdHJlYW1pbmdBVkZPYmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZCk6CisKIDIw
MjEtMDEtMDggIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0hB
TkddIDQ5Nm1zIHRvIDEzNjBtcyBpbiBXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcygpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpp
bmRleCA1YWQxMTRiZjllMDE3YzlkNWFlYTM3ZmZlMWQ3NDMyZmY0OWUxMmZlLi40NGQ1MTFmOGRk
MDllMTJkMTZjNjQ3ZTYwNmI2YTZkZDA5ODU4NzA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAyMS0wMS0wOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4K
KworICAgICAgICBbQ29jb2FdIFN1cHBvcnQga2V5IHJvdGF0aW9uIHdpdGggSExTLWJhY2tlZCBl
bmNyeXB0ZWQgbWVkaWEgc3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjIwNDkzCisgICAgICAgIDxyZGFyOi8vNjgyMjc3MDk+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWwvc3BpL2NvY29h
L0FWRm91bmRhdGlvblNQSS5oOgorCiAyMDIxLTAxLTA1ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVA
YXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gUmV2ZXJ0IGF1ZGlvVGltZVBpdGNoQWxnb3Jp
dGhtIHRvICJUaW1lRG9tYWluIiBmcm9tICJTcGVjdHJhbCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNv
cmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKaW5kZXggYWU3OGIzMzAxOTFl
YzJlZmM4OTg0ZGExMjJhNjc2MzA4NjhkNGQ5Yi4uYmEyZDM1NzM4NjRmZTE4MDE0ODdhNzhmZmE3
NDI0ZGU2NTk4MTYzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29j
b2EvQVZGb3VuZGF0aW9uU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29j
b2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAgLTIwMCw2ICsyMDAsNyBAQCBOU19BU1NVTUVfTk9OTlVM
TF9FTkQKIEBlbmQKIAogQGludGVyZmFjZSBBVkNvbnRlbnRLZXlTZXNzaW9uIChBVkNvbnRlbnRL
ZXlHcm91cF9TdXBwb3J0KQorQHByb3BlcnR5IChyZWFkb25seSwgbnVsbGFibGUpIEFWQ29udGVu
dEtleVJlcG9ydEdyb3VwICpkZWZhdWx0Q29udGVudEtleUdyb3VwOwogLSAobm9ubnVsbCBBVkNv
bnRlbnRLZXlSZXBvcnRHcm91cCAqKW1ha2VDb250ZW50S2V5R3JvdXA7CiBAZW5kCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQy5oCmluZGV4IGZiNmY1NGFhMDdlZGJiYmNlM2ExZDFiNDdhNjA5NTQ2Njhj
NjFjMzEuLjYxNDY1YTE1NjdjYzA2ODU1MjcwYTM3YmI3MzYwOTNkOTJmMzRhM2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NE
TUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxheVN0
cmVhbWluZ0FWRk9iakMuaApAQCAtMTIwLDYgKzEyMCw4IEBAIHB1YmxpYzoKICAgICBDRE1JbnN0
YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIHNlc3Npb25Gb3JSZXF1ZXN0KEFW
Q29udGVudEtleVJlcXVlc3QqKSBjb25zdDsKIAogcHJpdmF0ZToKKyAgICB2b2lkIGhhbmRsZVVu
ZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0b3I8UmV0YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYm
KTsKKwogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAogICAgIFdURjo6TG9nZ2VyKiBsb2dnZXJQ
dHIoKSBjb25zdCB7IHJldHVybiBtX2xvZ2dlci5nZXQoKTsgfTsKICAgICBjb25zdCB2b2lkKiBs
b2dJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9sb2dJZGVudGlmaWVyOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9D
RE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDLm1tCmluZGV4IDAyN2NhMWZhYzNkMzZmZmQ3ZTVkNTA0Mzg3MDVjMjUxYWJl
ZGI5ZjcuLjMyYzBiNDY2ZjdlYmZmMWZkM2QwYzM5ODdjNTA2Y2ExMjA0ZjYyNjQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NE
TUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDLm1tCkBAIC0xOTYsNiArMTk2LDkgQEAgc3RhdGljIFdURkxvZ0NoYW5u
ZWwmIGxvZ0NoYW5uZWwoKSB7IHJldHVybiBMb2dFTUU7IH0KIAogc3RhdGljIEF0b21TdHJpbmcg
aW5pdFR5cGVGb3JSZXF1ZXN0KEFWQ29udGVudEtleVJlcXVlc3QqIHJlcXVlc3QpCiB7CisgICAg
aWYgKFtbcmVxdWVzdCBpZGVudGlmaWVyXSBoYXNQcmVmaXg6QCJza2Q6Ly8iXSkKKyAgICAgICAg
cmV0dXJuIENETVByaXZhdGVGYWlyUGxheVN0cmVhbWluZzo6c2tkTmFtZSgpOworCiAgICAgaWYg
KCFbcmVxdWVzdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKG9wdGlvbnMpXSkgewogICAg
ICAgICAvLyBBVkNvbnRlbnRLZXlSZXF1ZXN0Lm9wdGlvbnMgd2FzIGFkZGVkIGluIDEwLjE0LjQ7
IGlmIHdlIGFyZSBydW5uaW5nIG9uIGEgcHJldmlvdXMgdmVyc2lvbgogICAgICAgICAvLyB3ZSBk
b24ndCBoYXZlIHN1cHBvcnQgZm9yICdjZW5jJyBhbnl3YXksIHNvIGp1c3QgYXNzdW1lICdzaW5m
Jy4KQEAgLTIxNSw2ICsyMTgsMTcgQEAgQUxMT1dfTkVXX0FQSV9XSVRIT1VUX0dVQVJEU19FTkQK
ICAgICByZXR1cm4gQXRvbVN0cmluZyhuc0luaXRUeXBlKTsKIH0KIAorc3RhdGljIFJlZjxTaGFy
ZWRCdWZmZXI+IGluaXRpYWxpemF0aW9uRGF0YUZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVz
dCogcmVxdWVzdCkKK3sKKyAgICBpZiAoIXJlcXVlc3QpCisgICAgICAgIHJldHVybiBTaGFyZWRC
dWZmZXI6OmNyZWF0ZSgpOworCisgICAgaWYgKGluaXRUeXBlRm9yUmVxdWVzdChyZXF1ZXN0KSA9
PSBDRE1Qcml2YXRlRmFpclBsYXlTdHJlYW1pbmc6OnNrZE5hbWUoKSkKKyAgICAgICAgcmV0dXJu
IFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFtyZXF1ZXN0LmlkZW50aWZpZXIgZGF0YVVzaW5nRW5jb2Rp
bmc6TlNVVEY4U3RyaW5nRW5jb2RpbmcgYWxsb3dMb3NzeUNvbnZlcnNpb246WUVTXSk7CisKKyAg
ICByZXR1cm4gU2hhcmVkQnVmZmVyOjpjcmVhdGUocmVxdWVzdC5pbml0aWFsaXphdGlvbkRhdGEp
OworfQorCiBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Q0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakMoKSA9IGRlZmF1bHQ7CiAKICNpZiAhUkVMRUFTRV9MT0df
RElTQUJMRUQKQEAgLTI1Nyw4ICsyNzEsOCBAQCBSZXRhaW5QdHI8QVZDb250ZW50S2V5UmVxdWVz
dD4gQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnRha2VVbmV4cGVjdAogICAg
IGZvciAoYXV0byByZXF1ZXN0SXRlciA9IG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmJlZ2luKCk7
IHJlcXVlc3RJdGVyICE9IG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmVuZCgpOyArK3JlcXVlc3RJ
dGVyKSB7CiAgICAgICAgIGF1dG8mIHJlcXVlc3QgPSAqcmVxdWVzdEl0ZXI7CiAgICAgICAgIGF1
dG8gcmVxdWVzdFR5cGUgPSBpbml0VHlwZUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSk7Ci0gICAg
ICAgIGF1dG8qIHJlcXVlc3RJbml0RGF0YSAgPSByZXF1ZXN0LmdldCgpLmluaXRpYWxpemF0aW9u
RGF0YTsKLSAgICAgICAgaWYgKGluaXREYXRhVHlwZSAhPSByZXF1ZXN0VHlwZSB8fCBpbml0RGF0
YSAhPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShyZXF1ZXN0SW5pdERhdGEpKQorICAgICAgICBhdXRv
IHJlcXVlc3RJbml0RGF0YSAgPSBpbml0aWFsaXphdGlvbkRhdGFGb3JSZXF1ZXN0KHJlcXVlc3Qu
Z2V0KCkpOworICAgICAgICBpZiAoaW5pdERhdGFUeXBlICE9IHJlcXVlc3RUeXBlIHx8IGluaXRE
YXRhICE9IHJlcXVlc3RJbml0RGF0YSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAg
IHJldHVybiBtX3VuZXhwZWN0ZWRLZXlSZXF1ZXN0cy50YWtlKHJlcXVlc3RJdGVyKTsKQEAgLTQ0
NCwxMCArNDU4LDcgQEAgdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6
ZGlkUHJvdmlkZVJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdAogCiAgICAgREVCVUdfTE9HX0lG
X1BPU1NJQkxFKExPR0lERU5USUZJRVIsICItIFVuZXhwZWN0ZWQgcmVxdWVzdCIpOwogCi0gICAg
bV91bmV4cGVjdGVkS2V5UmVxdWVzdHMuYWRkKHJlcXVlc3QpOwotCi0gICAgaWYgKG1fY2xpZW50
KQotICAgICAgICBtX2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZl
ZChpbml0VHlwZUZvclJlcXVlc3QocmVxdWVzdCksIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHJlcXVl
c3QuaW5pdGlhbGl6YXRpb25EYXRhKSk7CisgICAgaGFuZGxlVW5leHBlY3RlZFJlcXVlc3RzKHt7
IHJlcXVlc3QgfX0pOwogfQogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZP
YmpDOjpkaWRQcm92aWRlUmVxdWVzdHMoVmVjdG9yPFJldGFpblB0cjxBVkNvbnRlbnRLZXlSZXF1
ZXN0Pj4mJiByZXF1ZXN0cykKQEAgLTQ1Nyw4ICs0NjgsMTggQEAgdm9pZCBDRE1JbnN0YW5jZUZh
aXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3RzKFZlY3RvcjxSZXRhaW5Q
dHI8QVYKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwotICAgIEVSUk9SX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVSLCAiLSBubyByZXNwb25z
aWJsZSBzZXNzaW9uOyBkcm9wcGluZyIpOworICAgIGhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhX
VEZNb3ZlKHJlcXVlc3RzKSk7Cit9CisKK3ZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWlu
Z0FWRk9iakM6OmhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0b3I8UmV0YWluUHRyPEFWQ29u
dGVudEtleVJlcXVlc3Q+PiYmIHJlcXVlc3RzKQoreworICAgIHdoaWxlICghcmVxdWVzdHMuaXNF
bXB0eSgpKSB7CisgICAgICAgIGF1dG8gcmVxdWVzdCA9IHJlcXVlc3RzLnRha2VMYXN0KCk7Cisg
ICAgICAgIG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmFkZChyZXF1ZXN0KTsKKworICAgICAgICBp
ZiAobV9jbGllbnQpCisgICAgICAgICAgICBtX2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXph
dGlvbkRhdGFSZWNlaXZlZChpbml0VHlwZUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSksIGluaXRp
YWxpemF0aW9uRGF0YUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSkpOworICAgIH0KIH0KIAogdm9p
ZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlbmV3aW5n
UmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1ZXN0ICpyZXF1ZXN0KQpAQCAtNTI0LDYgKzU0NSwxMSBA
QCB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uSWRlbnRp
ZmllckNoYW5nZWQoTlNEYXRhICpzZXNzaQogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRlbnRLZXlS
ZXBvcnRHcm91cCogZ3JvdXAsIE5TRGF0YSAqc2Vzc2lvbklkZW50aWZpZXIpCiB7CisgICAgaWYg
KFtncm91cCBpc0VxdWFsVG86W21fc2Vzc2lvbiBkZWZhdWx0Q29udGVudEtleUdyb3VwXV0pIHsK
KyAgICAgICAgSU5GT19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIi0gZGVmYXVsdCB1
bnVzZWQgZ3JvdXAgaWRlbnRpZmllciBjaGFuZ2VkOyBkcm9wcGluZyIpOworICAgICAgICByZXR1
cm47CisgICAgfQorCiAgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBzZXNzaW9uRm9yR3JvdXAoZ3Jv
dXApKSB7CiAgICAgICAgIHNlc3Npb24tPmdyb3VwU2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKGdy
b3VwLCBzZXNzaW9uSWRlbnRpZmllcik7CiAgICAgICAgIHJldHVybjsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417330</attachid>
            <date>2021-01-08 20:40:28 -0800</date>
            <delta_ts>2021-01-08 20:42:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220493-20210108204027.patch</filename>
            <type>text/plain</type>
            <size>8871</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQ5NTBlNDNkOTNlZDc1
OGFhMTBiM2FmOGRkZGZlYzRkODA3MTgxYS4uYTliZmE3NGRlODgxYzE4NGQ1NzZhZTIwYTExOWI5
NWI5NzcxNTRjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIxLTAxLTA4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gU3VwcG9ydCBr
ZXkgcm90YXRpb24gd2l0aCBITFMtYmFja2VkIGVuY3J5cHRlZCBtZWRpYSBzdHJlYW1zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA0OTMKKyAgICAg
ICAgPHJkYXI6Ly82ODIyNzcwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IGtleSByb3RhdGlvbiB0aHJvdWdoIEFWQ29udGVudEtleVNl
c3Npb24gYnkgZXhwbGljaXRseSBoYW5kbGluZyB1bmV4cGVjdGVkIGtleSByZXF1ZXN0cworICAg
ICAgICBzdWJtaXR0ZWQgdGhyb3VnaCB0aGUgbmV3IC1jb250ZW50S2V5U2Vzc2lvbjpkaWRQcm92
aWRlQ29udGVudEtleVJlcXVlc3RzOmZvckluaXRpYWxpemF0aW9uRGF0YTouCisgICAgICAgIFJv
dGF0aW9uIHdhcyBwcmV2aW91c2x5IGhhbmRsZWQgaW4gdGhlIGRlbGVnYXRlIG1ldGhvZCAtY29u
dGVudEtleVNlc3Npb246ZGlkUHJvdmlkZUNvbnRlbnRLZXlSZXF1ZXN0LAorICAgICAgICBidXQg
dGhhdCBtZXRob2QgaXMgbm8gbG9uZ2VyIGNhbGxlZCBhZnRlciB0aGUgcmVwbGFjZW1lbnQgZGVs
ZWdhdGUgbWV0aG9kIHdhcyBpbXBsZW1lbnRlZCwgYW5kCisgICAgICAgIHRoYXQgbWV0aG9kIG5l
dmVyIGhhbmRsZWQgInNrZDovLyIgc3R5bGUgaW5pdGlhbGl6YXRpb24gZGF0YS4KKworICAgICAg
ICBVcGRhdGUgdGhlIGhlbHBlciBtZXRob2QsIGluaXRUeXBlRm9yUmVxdWVzdCgpLCB0byBkZXRl
Y3QgInNrZDovLyIgaWRlbnRpZmllcnMgYW5kIGNvcnJlY3RseSBpZGVudGlmeQorICAgICAgICB0
aG9zZSBzZXNzaW9ucyBhcyAic2tkIi4KKworICAgICAgICBBZGQgYSBuZXcgaGVscGVyIG1ldGhv
ZCwgaW5pdGlhbGl6YXRpb25EYXRhRm9yUmVxdWVzdCgpLCB3aGljaCB3aWxsIHBhY2thZ2UgdGhl
IEFWQ29udGVudEtleVNlc3Npb24ncworICAgICAgICBpZGVudGlmaWVyIGFzIGluaXRpYWxpemF0
aW9uIGRhdGEuCisKKyAgICAgICAgRHJpdmUtYnkgRml4OiBGaXhpbmcgdGhpcyBidWcgY2F1c2Vz
IHRoZSBkZWZhdWx0IGtleSBncm91cCB0byB1cGRhdGUgaXQncyBpZGVudGlmaWVyLCB3aGljaCBj
YXVzZXMgYW4gYXNzZXJ0CisgICAgICAgIHdoZW4gdGhlIGdyb3VwIGluIHF1ZXN0aW9uIGlzbid0
IGFueSBvZiB0aG9zZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhpc3RpbmcgTWVkaWFLZXlTZXNzaW9u
LCBzbyBoYW5kbGUgdGhhdCBjYXNlCisgICAgICAgIGV4cGxpY2l0bHkuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tOgorICAgICAgICAo
V2ViQ29yZTo6aW5pdFR5cGVGb3JSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxp
emF0aW9uRGF0YUZvclJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWly
UGxheVN0cmVhbWluZ0FWRk9iakM6OnRha2VVbmV4cGVjdGVkS2V5UmVxdWVzdEZvckluaXRpYWxp
emF0aW9uRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5z
dGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmRpZFByb3ZpZGVSZXF1ZXN0cyk6CisgICAg
ICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6aGFuZGxl
VW5leHBlY3RlZFJlcXVlc3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlRmFpclBs
YXlTdHJlYW1pbmdBVkZPYmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZCk6CisKIDIw
MjEtMDEtMDggIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0hB
TkddIDQ5Nm1zIHRvIDEzNjBtcyBpbiBXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcygpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpp
bmRleCA1YWQxMTRiZjllMDE3YzlkNWFlYTM3ZmZlMWQ3NDMyZmY0OWUxMmZlLi40NGQ1MTFmOGRk
MDllMTJkMTZjNjQ3ZTYwNmI2YTZkZDA5ODU4NzA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAyMS0wMS0wOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4K
KworICAgICAgICBbQ29jb2FdIFN1cHBvcnQga2V5IHJvdGF0aW9uIHdpdGggSExTLWJhY2tlZCBl
bmNyeXB0ZWQgbWVkaWEgc3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjIwNDkzCisgICAgICAgIDxyZGFyOi8vNjgyMjc3MDk+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWwvc3BpL2NvY29h
L0FWRm91bmRhdGlvblNQSS5oOgorCiAyMDIxLTAxLTA1ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVA
YXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gUmV2ZXJ0IGF1ZGlvVGltZVBpdGNoQWxnb3Jp
dGhtIHRvICJUaW1lRG9tYWluIiBmcm9tICJTcGVjdHJhbCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNv
cmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKaW5kZXggYWU3OGIzMzAxOTFl
YzJlZmM4OTg0ZGExMjJhNjc2MzA4NjhkNGQ5Yi4uYmEyZDM1NzM4NjRmZTE4MDE0ODdhNzhmZmE3
NDI0ZGU2NTk4MTYzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29j
b2EvQVZGb3VuZGF0aW9uU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29j
b2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAgLTIwMCw2ICsyMDAsNyBAQCBOU19BU1NVTUVfTk9OTlVM
TF9FTkQKIEBlbmQKIAogQGludGVyZmFjZSBBVkNvbnRlbnRLZXlTZXNzaW9uIChBVkNvbnRlbnRL
ZXlHcm91cF9TdXBwb3J0KQorQHByb3BlcnR5IChyZWFkb25seSwgbnVsbGFibGUpIEFWQ29udGVu
dEtleVJlcG9ydEdyb3VwICpkZWZhdWx0Q29udGVudEtleUdyb3VwOwogLSAobm9ubnVsbCBBVkNv
bnRlbnRLZXlSZXBvcnRHcm91cCAqKW1ha2VDb250ZW50S2V5R3JvdXA7CiBAZW5kCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQy5oCmluZGV4IGZiNmY1NGFhMDdlZGJiYmNlM2ExZDFiNDdhNjA5NTQ2Njhj
NjFjMzEuLjYxNDY1YTE1NjdjYzA2ODU1MjcwYTM3YmI3MzYwOTNkOTJmMzRhM2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NE
TUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxheVN0
cmVhbWluZ0FWRk9iakMuaApAQCAtMTIwLDYgKzEyMCw4IEBAIHB1YmxpYzoKICAgICBDRE1JbnN0
YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIHNlc3Npb25Gb3JSZXF1ZXN0KEFW
Q29udGVudEtleVJlcXVlc3QqKSBjb25zdDsKIAogcHJpdmF0ZToKKyAgICB2b2lkIGhhbmRsZVVu
ZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0b3I8UmV0YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYm
KTsKKwogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAogICAgIFdURjo6TG9nZ2VyKiBsb2dnZXJQ
dHIoKSBjb25zdCB7IHJldHVybiBtX2xvZ2dlci5nZXQoKTsgfTsKICAgICBjb25zdCB2b2lkKiBs
b2dJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9sb2dJZGVudGlmaWVyOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9D
RE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDLm1tCmluZGV4IDAyN2NhMWZhYzNkMzZmZmQ3ZTVkNTA0Mzg3MDVjMjUxYWJl
ZGI5ZjcuLjcwNzBlZTJjZjE0OGQyYmUyMDAyNGEyYjZjMmVhZjQ5MDJhOTc5NjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NE
TUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDLm1tCkBAIC0xOTYsNiArMTk2LDkgQEAgc3RhdGljIFdURkxvZ0NoYW5u
ZWwmIGxvZ0NoYW5uZWwoKSB7IHJldHVybiBMb2dFTUU7IH0KIAogc3RhdGljIEF0b21TdHJpbmcg
aW5pdFR5cGVGb3JSZXF1ZXN0KEFWQ29udGVudEtleVJlcXVlc3QqIHJlcXVlc3QpCiB7CisgICAg
aWYgKFtyZXF1ZXN0LmlkZW50aWZpZXIgaXNLaW5kT2ZDbGFzczpOU1N0cmluZy5jbGFzc10gJiYg
W3JlcXVlc3QuaWRlbnRpZmllciBoYXNQcmVmaXg6QCJza2Q6Ly8iXSkKKyAgICAgICAgcmV0dXJu
IENETVByaXZhdGVGYWlyUGxheVN0cmVhbWluZzo6c2tkTmFtZSgpOworCiAgICAgaWYgKCFbcmVx
dWVzdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKG9wdGlvbnMpXSkgewogICAgICAgICAv
LyBBVkNvbnRlbnRLZXlSZXF1ZXN0Lm9wdGlvbnMgd2FzIGFkZGVkIGluIDEwLjE0LjQ7IGlmIHdl
IGFyZSBydW5uaW5nIG9uIGEgcHJldmlvdXMgdmVyc2lvbgogICAgICAgICAvLyB3ZSBkb24ndCBo
YXZlIHN1cHBvcnQgZm9yICdjZW5jJyBhbnl3YXksIHNvIGp1c3QgYXNzdW1lICdzaW5mJy4KQEAg
LTIxNSw2ICsyMTgsMTcgQEAgQUxMT1dfTkVXX0FQSV9XSVRIT1VUX0dVQVJEU19FTkQKICAgICBy
ZXR1cm4gQXRvbVN0cmluZyhuc0luaXRUeXBlKTsKIH0KIAorc3RhdGljIFJlZjxTaGFyZWRCdWZm
ZXI+IGluaXRpYWxpemF0aW9uRGF0YUZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVx
dWVzdCkKK3sKKyAgICBpZiAoIXJlcXVlc3QpCisgICAgICAgIHJldHVybiBTaGFyZWRCdWZmZXI6
OmNyZWF0ZSgpOworCisgICAgaWYgKGluaXRUeXBlRm9yUmVxdWVzdChyZXF1ZXN0KSA9PSBDRE1Q
cml2YXRlRmFpclBsYXlTdHJlYW1pbmc6OnNrZE5hbWUoKSkKKyAgICAgICAgcmV0dXJuIFNoYXJl
ZEJ1ZmZlcjo6Y3JlYXRlKFtyZXF1ZXN0LmlkZW50aWZpZXIgZGF0YVVzaW5nRW5jb2Rpbmc6TlNV
VEY4U3RyaW5nRW5jb2RpbmcgYWxsb3dMb3NzeUNvbnZlcnNpb246WUVTXSk7CisKKyAgICByZXR1
cm4gU2hhcmVkQnVmZmVyOjpjcmVhdGUocmVxdWVzdC5pbml0aWFsaXphdGlvbkRhdGEpOworfQor
CiBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Q0RNSW5zdGFuY2VGYWlyUGxh
eVN0cmVhbWluZ0FWRk9iakMoKSA9IGRlZmF1bHQ7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJM
RUQKQEAgLTI1Nyw4ICsyNzEsOCBAQCBSZXRhaW5QdHI8QVZDb250ZW50S2V5UmVxdWVzdD4gQ0RN
SW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnRha2VVbmV4cGVjdAogICAgIGZvciAo
YXV0byByZXF1ZXN0SXRlciA9IG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmJlZ2luKCk7IHJlcXVl
c3RJdGVyICE9IG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmVuZCgpOyArK3JlcXVlc3RJdGVyKSB7
CiAgICAgICAgIGF1dG8mIHJlcXVlc3QgPSAqcmVxdWVzdEl0ZXI7CiAgICAgICAgIGF1dG8gcmVx
dWVzdFR5cGUgPSBpbml0VHlwZUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSk7Ci0gICAgICAgIGF1
dG8qIHJlcXVlc3RJbml0RGF0YSAgPSByZXF1ZXN0LmdldCgpLmluaXRpYWxpemF0aW9uRGF0YTsK
LSAgICAgICAgaWYgKGluaXREYXRhVHlwZSAhPSByZXF1ZXN0VHlwZSB8fCBpbml0RGF0YSAhPSBT
aGFyZWRCdWZmZXI6OmNyZWF0ZShyZXF1ZXN0SW5pdERhdGEpKQorICAgICAgICBhdXRvIHJlcXVl
c3RJbml0RGF0YSAgPSBpbml0aWFsaXphdGlvbkRhdGFGb3JSZXF1ZXN0KHJlcXVlc3QuZ2V0KCkp
OworICAgICAgICBpZiAoaW5pdERhdGFUeXBlICE9IHJlcXVlc3RUeXBlIHx8IGluaXREYXRhICE9
IHJlcXVlc3RJbml0RGF0YSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIHJldHVy
biBtX3VuZXhwZWN0ZWRLZXlSZXF1ZXN0cy50YWtlKHJlcXVlc3RJdGVyKTsKQEAgLTQ0NCwxMCAr
NDU4LDcgQEAgdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJv
dmlkZVJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdAogCiAgICAgREVCVUdfTE9HX0lGX1BPU1NJ
QkxFKExPR0lERU5USUZJRVIsICItIFVuZXhwZWN0ZWQgcmVxdWVzdCIpOwogCi0gICAgbV91bmV4
cGVjdGVkS2V5UmVxdWVzdHMuYWRkKHJlcXVlc3QpOwotCi0gICAgaWYgKG1fY2xpZW50KQotICAg
ICAgICBtX2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChpbml0
VHlwZUZvclJlcXVlc3QocmVxdWVzdCksIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHJlcXVlc3QuaW5p
dGlhbGl6YXRpb25EYXRhKSk7CisgICAgaGFuZGxlVW5leHBlY3RlZFJlcXVlc3RzKHt7IHJlcXVl
c3QgfX0pOwogfQogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpk
aWRQcm92aWRlUmVxdWVzdHMoVmVjdG9yPFJldGFpblB0cjxBVkNvbnRlbnRLZXlSZXF1ZXN0Pj4m
JiByZXF1ZXN0cykKQEAgLTQ1Nyw4ICs0NjgsMTggQEAgdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5
U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3RzKFZlY3RvcjxSZXRhaW5QdHI8QVYK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAg
IEVSUk9SX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVSLCAiLSBubyByZXNwb25zaWJsZSBz
ZXNzaW9uOyBkcm9wcGluZyIpOworICAgIGhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhXVEZNb3Zl
KHJlcXVlc3RzKSk7Cit9CisKK3ZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9i
akM6OmhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0b3I8UmV0YWluUHRyPEFWQ29udGVudEtl
eVJlcXVlc3Q+PiYmIHJlcXVlc3RzKQoreworICAgIHdoaWxlICghcmVxdWVzdHMuaXNFbXB0eSgp
KSB7CisgICAgICAgIGF1dG8gcmVxdWVzdCA9IHJlcXVlc3RzLnRha2VMYXN0KCk7CisgICAgICAg
IG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmFkZChyZXF1ZXN0KTsKKworICAgICAgICBpZiAobV9j
bGllbnQpCisgICAgICAgICAgICBtX2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRh
dGFSZWNlaXZlZChpbml0VHlwZUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSksIGluaXRpYWxpemF0
aW9uRGF0YUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSkpOworICAgIH0KIH0KIAogdm9pZCBDRE1J
bnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlbmV3aW5nUmVxdWVz
dChBVkNvbnRlbnRLZXlSZXF1ZXN0ICpyZXF1ZXN0KQpAQCAtNTI0LDYgKzU0NSwxMSBAQCB2b2lk
IENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uSWRlbnRpZmllckNo
YW5nZWQoTlNEYXRhICpzZXNzaQogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdB
VkZPYmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRlbnRLZXlSZXBvcnRH
cm91cCogZ3JvdXAsIE5TRGF0YSAqc2Vzc2lvbklkZW50aWZpZXIpCiB7CisgICAgaWYgKFtncm91
cCBpc0VxdWFsVG86W21fc2Vzc2lvbiBkZWZhdWx0Q29udGVudEtleUdyb3VwXV0pIHsKKyAgICAg
ICAgSU5GT19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIi0gZGVmYXVsdCB1bnVzZWQg
Z3JvdXAgaWRlbnRpZmllciBjaGFuZ2VkOyBkcm9wcGluZyIpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCiAgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBzZXNzaW9uRm9yR3JvdXAoZ3JvdXApKSB7
CiAgICAgICAgIHNlc3Npb24tPmdyb3VwU2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKGdyb3VwLCBz
ZXNzaW9uSWRlbnRpZmllcik7CiAgICAgICAgIHJldHVybjsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417331</attachid>
            <date>2021-01-08 20:42:05 -0800</date>
            <delta_ts>2021-01-08 23:21:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220493-20210108204205.patch</filename>
            <type>text/plain</type>
            <size>8871</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQ5NTBlNDNkOTNlZDc1
OGFhMTBiM2FmOGRkZGZlYzRkODA3MTgxYS4uYTliZmE3NGRlODgxYzE4NGQ1NzZhZTIwYTExOWI5
NWI5NzcxNTRjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDIxLTAxLTA4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gU3VwcG9ydCBr
ZXkgcm90YXRpb24gd2l0aCBITFMtYmFja2VkIGVuY3J5cHRlZCBtZWRpYSBzdHJlYW1zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA0OTMKKyAgICAg
ICAgPHJkYXI6Ly82ODIyNzcwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IGtleSByb3RhdGlvbiB0aHJvdWdoIEFWQ29udGVudEtleVNl
c3Npb24gYnkgZXhwbGljaXRseSBoYW5kbGluZyB1bmV4cGVjdGVkIGtleSByZXF1ZXN0cworICAg
ICAgICBzdWJtaXR0ZWQgdGhyb3VnaCB0aGUgbmV3IC1jb250ZW50S2V5U2Vzc2lvbjpkaWRQcm92
aWRlQ29udGVudEtleVJlcXVlc3RzOmZvckluaXRpYWxpemF0aW9uRGF0YTouCisgICAgICAgIFJv
dGF0aW9uIHdhcyBwcmV2aW91c2x5IGhhbmRsZWQgaW4gdGhlIGRlbGVnYXRlIG1ldGhvZCAtY29u
dGVudEtleVNlc3Npb246ZGlkUHJvdmlkZUNvbnRlbnRLZXlSZXF1ZXN0LAorICAgICAgICBidXQg
dGhhdCBtZXRob2QgaXMgbm8gbG9uZ2VyIGNhbGxlZCBhZnRlciB0aGUgcmVwbGFjZW1lbnQgZGVs
ZWdhdGUgbWV0aG9kIHdhcyBpbXBsZW1lbnRlZCwgYW5kCisgICAgICAgIHRoYXQgbWV0aG9kIG5l
dmVyIGhhbmRsZWQgInNrZDovLyIgc3R5bGUgaW5pdGlhbGl6YXRpb24gZGF0YS4KKworICAgICAg
ICBVcGRhdGUgdGhlIGhlbHBlciBtZXRob2QsIGluaXRUeXBlRm9yUmVxdWVzdCgpLCB0byBkZXRl
Y3QgInNrZDovLyIgaWRlbnRpZmllcnMgYW5kIGNvcnJlY3RseSBpZGVudGlmeQorICAgICAgICB0
aG9zZSBzZXNzaW9ucyBhcyAic2tkIi4KKworICAgICAgICBBZGQgYSBuZXcgaGVscGVyIG1ldGhv
ZCwgaW5pdGlhbGl6YXRpb25EYXRhRm9yUmVxdWVzdCgpLCB3aGljaCB3aWxsIHBhY2thZ2UgdGhl
IEFWQ29udGVudEtleVNlc3Npb24ncworICAgICAgICBpZGVudGlmaWVyIGFzIGluaXRpYWxpemF0
aW9uIGRhdGEuCisKKyAgICAgICAgRHJpdmUtYnkgRml4OiBGaXhpbmcgdGhpcyBidWcgY2F1c2Vz
IHRoZSBkZWZhdWx0IGtleSBncm91cCB0byB1cGRhdGUgaXQncyBpZGVudGlmaWVyLCB3aGljaCBj
YXVzZXMgYW4gYXNzZXJ0CisgICAgICAgIHdoZW4gdGhlIGdyb3VwIGluIHF1ZXN0aW9uIGlzbid0
IGFueSBvZiB0aG9zZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhpc3RpbmcgTWVkaWFLZXlTZXNzaW9u
LCBzbyBoYW5kbGUgdGhhdCBjYXNlCisgICAgICAgIGV4cGxpY2l0bHkuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQy5oOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tOgorICAgICAgICAo
V2ViQ29yZTo6aW5pdFR5cGVGb3JSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxp
emF0aW9uRGF0YUZvclJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWly
UGxheVN0cmVhbWluZ0FWRk9iakM6OnRha2VVbmV4cGVjdGVkS2V5UmVxdWVzdEZvckluaXRpYWxp
emF0aW9uRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5z
dGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmRpZFByb3ZpZGVSZXF1ZXN0cyk6CisgICAg
ICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6aGFuZGxl
VW5leHBlY3RlZFJlcXVlc3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlRmFpclBs
YXlTdHJlYW1pbmdBVkZPYmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZCk6CisKIDIw
MjEtMDEtMDggIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0hB
TkddIDQ5Nm1zIHRvIDEzNjBtcyBpbiBXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lvbkNhcHR1cmVEZXZp
Y2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcygpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpp
bmRleCA1YWQxMTRiZjllMDE3YzlkNWFlYTM3ZmZlMWQ3NDMyZmY0OWUxMmZlLi40NGQ1MTFmOGRk
MDllMTJkMTZjNjQ3ZTYwNmI2YTZkZDA5ODU4NzA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAyMS0wMS0wOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4K
KworICAgICAgICBbQ29jb2FdIFN1cHBvcnQga2V5IHJvdGF0aW9uIHdpdGggSExTLWJhY2tlZCBl
bmNyeXB0ZWQgbWVkaWEgc3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MjIwNDkzCisgICAgICAgIDxyZGFyOi8vNjgyMjc3MDk+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwYWwvc3BpL2NvY29h
L0FWRm91bmRhdGlvblNQSS5oOgorCiAyMDIxLTAxLTA1ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVA
YXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gUmV2ZXJ0IGF1ZGlvVGltZVBpdGNoQWxnb3Jp
dGhtIHRvICJUaW1lRG9tYWluIiBmcm9tICJTcGVjdHJhbCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNv
cmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKaW5kZXggYWU3OGIzMzAxOTFl
YzJlZmM4OTg0ZGExMjJhNjc2MzA4NjhkNGQ5Yi4uYmEyZDM1NzM4NjRmZTE4MDE0ODdhNzhmZmE3
NDI0ZGU2NTk4MTYzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29j
b2EvQVZGb3VuZGF0aW9uU1BJLmgKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29j
b2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAgLTIwMCw2ICsyMDAsNyBAQCBOU19BU1NVTUVfTk9OTlVM
TF9FTkQKIEBlbmQKIAogQGludGVyZmFjZSBBVkNvbnRlbnRLZXlTZXNzaW9uIChBVkNvbnRlbnRL
ZXlHcm91cF9TdXBwb3J0KQorQHByb3BlcnR5IChyZWFkb25seSwgbnVsbGFibGUpIEFWQ29udGVu
dEtleVJlcG9ydEdyb3VwICpkZWZhdWx0Q29udGVudEtleUdyb3VwOwogLSAobm9ubnVsbCBBVkNv
bnRlbnRLZXlSZXBvcnRHcm91cCAqKW1ha2VDb250ZW50S2V5R3JvdXA7CiBAZW5kCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQy5oCmluZGV4IGZiNmY1NGFhMDdlZGJiYmNlM2ExZDFiNDdhNjA5NTQ2Njhj
NjFjMzEuLjYxNDY1YTE1NjdjYzA2ODU1MjcwYTM3YmI3MzYwOTNkOTJmMzRhM2MgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NE
TUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxheVN0
cmVhbWluZ0FWRk9iakMuaApAQCAtMTIwLDYgKzEyMCw4IEBAIHB1YmxpYzoKICAgICBDRE1JbnN0
YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWluZ0FWRk9iakMqIHNlc3Npb25Gb3JSZXF1ZXN0KEFW
Q29udGVudEtleVJlcXVlc3QqKSBjb25zdDsKIAogcHJpdmF0ZToKKyAgICB2b2lkIGhhbmRsZVVu
ZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0b3I8UmV0YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYm
KTsKKwogI2lmICFSRUxFQVNFX0xPR19ESVNBQkxFRAogICAgIFdURjo6TG9nZ2VyKiBsb2dnZXJQ
dHIoKSBjb25zdCB7IHJldHVybiBtX2xvZ2dlci5nZXQoKTsgfTsKICAgICBjb25zdCB2b2lkKiBs
b2dJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9sb2dJZGVudGlmaWVyOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9D
RE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDLm1tCmluZGV4IDAyN2NhMWZhYzNkMzZmZmQ3ZTVkNTA0Mzg3MDVjMjUxYWJl
ZGI5ZjcuLjcwNzBlZTJjZjE0OGQyYmUyMDAyNGEyYjZjMmVhZjQ5MDJhOTc5NjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NE
TUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDLm1tCkBAIC0xOTYsNiArMTk2LDkgQEAgc3RhdGljIFdURkxvZ0NoYW5u
ZWwmIGxvZ0NoYW5uZWwoKSB7IHJldHVybiBMb2dFTUU7IH0KIAogc3RhdGljIEF0b21TdHJpbmcg
aW5pdFR5cGVGb3JSZXF1ZXN0KEFWQ29udGVudEtleVJlcXVlc3QqIHJlcXVlc3QpCiB7CisgICAg
aWYgKFtyZXF1ZXN0LmlkZW50aWZpZXIgaXNLaW5kT2ZDbGFzczpOU1N0cmluZy5jbGFzc10gJiYg
W3JlcXVlc3QuaWRlbnRpZmllciBoYXNQcmVmaXg6QCJza2Q6Ly8iXSkKKyAgICAgICAgcmV0dXJu
IENETVByaXZhdGVGYWlyUGxheVN0cmVhbWluZzo6c2tkTmFtZSgpOworCiAgICAgaWYgKCFbcmVx
dWVzdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKG9wdGlvbnMpXSkgewogICAgICAgICAv
LyBBVkNvbnRlbnRLZXlSZXF1ZXN0Lm9wdGlvbnMgd2FzIGFkZGVkIGluIDEwLjE0LjQ7IGlmIHdl
IGFyZSBydW5uaW5nIG9uIGEgcHJldmlvdXMgdmVyc2lvbgogICAgICAgICAvLyB3ZSBkb24ndCBo
YXZlIHN1cHBvcnQgZm9yICdjZW5jJyBhbnl3YXksIHNvIGp1c3QgYXNzdW1lICdzaW5mJy4KQEAg
LTIxNSw2ICsyMTgsMTcgQEAgQUxMT1dfTkVXX0FQSV9XSVRIT1VUX0dVQVJEU19FTkQKICAgICBy
ZXR1cm4gQXRvbVN0cmluZyhuc0luaXRUeXBlKTsKIH0KIAorc3RhdGljIFJlZjxTaGFyZWRCdWZm
ZXI+IGluaXRpYWxpemF0aW9uRGF0YUZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVx
dWVzdCkKK3sKKyAgICBpZiAoIXJlcXVlc3QpCisgICAgICAgIHJldHVybiBTaGFyZWRCdWZmZXI6
OmNyZWF0ZSgpOworCisgICAgaWYgKGluaXRUeXBlRm9yUmVxdWVzdChyZXF1ZXN0KSA9PSBDRE1Q
cml2YXRlRmFpclBsYXlTdHJlYW1pbmc6OnNrZE5hbWUoKSkKKyAgICAgICAgcmV0dXJuIFNoYXJl
ZEJ1ZmZlcjo6Y3JlYXRlKFtyZXF1ZXN0LmlkZW50aWZpZXIgZGF0YVVzaW5nRW5jb2Rpbmc6TlNV
VEY4U3RyaW5nRW5jb2RpbmcgYWxsb3dMb3NzeUNvbnZlcnNpb246WUVTXSk7CisKKyAgICByZXR1
cm4gU2hhcmVkQnVmZmVyOjpjcmVhdGUocmVxdWVzdC5pbml0aWFsaXphdGlvbkRhdGEpOworfQor
CiBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6Q0RNSW5zdGFuY2VGYWlyUGxh
eVN0cmVhbWluZ0FWRk9iakMoKSA9IGRlZmF1bHQ7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJM
RUQKQEAgLTI1Nyw4ICsyNzEsOCBAQCBSZXRhaW5QdHI8QVZDb250ZW50S2V5UmVxdWVzdD4gQ0RN
SW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OnRha2VVbmV4cGVjdAogICAgIGZvciAo
YXV0byByZXF1ZXN0SXRlciA9IG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmJlZ2luKCk7IHJlcXVl
c3RJdGVyICE9IG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmVuZCgpOyArK3JlcXVlc3RJdGVyKSB7
CiAgICAgICAgIGF1dG8mIHJlcXVlc3QgPSAqcmVxdWVzdEl0ZXI7CiAgICAgICAgIGF1dG8gcmVx
dWVzdFR5cGUgPSBpbml0VHlwZUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSk7Ci0gICAgICAgIGF1
dG8qIHJlcXVlc3RJbml0RGF0YSAgPSByZXF1ZXN0LmdldCgpLmluaXRpYWxpemF0aW9uRGF0YTsK
LSAgICAgICAgaWYgKGluaXREYXRhVHlwZSAhPSByZXF1ZXN0VHlwZSB8fCBpbml0RGF0YSAhPSBT
aGFyZWRCdWZmZXI6OmNyZWF0ZShyZXF1ZXN0SW5pdERhdGEpKQorICAgICAgICBhdXRvIHJlcXVl
c3RJbml0RGF0YSAgPSBpbml0aWFsaXphdGlvbkRhdGFGb3JSZXF1ZXN0KHJlcXVlc3QuZ2V0KCkp
OworICAgICAgICBpZiAoaW5pdERhdGFUeXBlICE9IHJlcXVlc3RUeXBlIHx8IGluaXREYXRhICE9
IHJlcXVlc3RJbml0RGF0YSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIHJldHVy
biBtX3VuZXhwZWN0ZWRLZXlSZXF1ZXN0cy50YWtlKHJlcXVlc3RJdGVyKTsKQEAgLTQ0NCwxMCAr
NDU4LDcgQEAgdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJv
dmlkZVJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdAogCiAgICAgREVCVUdfTE9HX0lGX1BPU1NJ
QkxFKExPR0lERU5USUZJRVIsICItIFVuZXhwZWN0ZWQgcmVxdWVzdCIpOwogCi0gICAgbV91bmV4
cGVjdGVkS2V5UmVxdWVzdHMuYWRkKHJlcXVlc3QpOwotCi0gICAgaWYgKG1fY2xpZW50KQotICAg
ICAgICBtX2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChpbml0
VHlwZUZvclJlcXVlc3QocmVxdWVzdCksIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHJlcXVlc3QuaW5p
dGlhbGl6YXRpb25EYXRhKSk7CisgICAgaGFuZGxlVW5leHBlY3RlZFJlcXVlc3RzKHt7IHJlcXVl
c3QgfX0pOwogfQogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpk
aWRQcm92aWRlUmVxdWVzdHMoVmVjdG9yPFJldGFpblB0cjxBVkNvbnRlbnRLZXlSZXF1ZXN0Pj4m
JiByZXF1ZXN0cykKQEAgLTQ1Nyw4ICs0NjgsMTggQEAgdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5
U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3RzKFZlY3RvcjxSZXRhaW5QdHI8QVYK
ICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAg
IEVSUk9SX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVSLCAiLSBubyByZXNwb25zaWJsZSBz
ZXNzaW9uOyBkcm9wcGluZyIpOworICAgIGhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhXVEZNb3Zl
KHJlcXVlc3RzKSk7Cit9CisKK3ZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9i
akM6OmhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0b3I8UmV0YWluUHRyPEFWQ29udGVudEtl
eVJlcXVlc3Q+PiYmIHJlcXVlc3RzKQoreworICAgIHdoaWxlICghcmVxdWVzdHMuaXNFbXB0eSgp
KSB7CisgICAgICAgIGF1dG8gcmVxdWVzdCA9IHJlcXVlc3RzLnRha2VMYXN0KCk7CisgICAgICAg
IG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLmFkZChyZXF1ZXN0KTsKKworICAgICAgICBpZiAobV9j
bGllbnQpCisgICAgICAgICAgICBtX2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRh
dGFSZWNlaXZlZChpbml0VHlwZUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSksIGluaXRpYWxpemF0
aW9uRGF0YUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSkpOworICAgIH0KIH0KIAogdm9pZCBDRE1J
bnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlbmV3aW5nUmVxdWVz
dChBVkNvbnRlbnRLZXlSZXF1ZXN0ICpyZXF1ZXN0KQpAQCAtNTI0LDYgKzU0NSwxMSBAQCB2b2lk
IENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uSWRlbnRpZmllckNo
YW5nZWQoTlNEYXRhICpzZXNzaQogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdB
VkZPYmpDOjpncm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRlbnRLZXlSZXBvcnRH
cm91cCogZ3JvdXAsIE5TRGF0YSAqc2Vzc2lvbklkZW50aWZpZXIpCiB7CisgICAgaWYgKFtncm91
cCBpc0VxdWFsVG86W21fc2Vzc2lvbiBkZWZhdWx0Q29udGVudEtleUdyb3VwXV0pIHsKKyAgICAg
ICAgSU5GT19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIi0gZGVmYXVsdCB1bnVzZWQg
Z3JvdXAgaWRlbnRpZmllciBjaGFuZ2VkOyBkcm9wcGluZyIpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCiAgICAgaWYgKGF1dG8qIHNlc3Npb24gPSBzZXNzaW9uRm9yR3JvdXAoZ3JvdXApKSB7
CiAgICAgICAgIHNlc3Npb24tPmdyb3VwU2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKGdyb3VwLCBz
ZXNzaW9uSWRlbnRpZmllcik7CiAgICAgICAgIHJldHVybjsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417336</attachid>
            <date>2021-01-08 23:21:05 -0800</date>
            <delta_ts>2021-01-08 23:28:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220493-20210108232104.patch</filename>
            <type>text/plain</type>
            <size>31980</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQ5NTBlNDNkOTNlZDc1
OGFhMTBiM2FmOGRkZGZlYzRkODA3MTgxYS4uN2NlNDVmMDNkNDJiY2MzMTJjMGYzNzljNDhkYWVm
ZDJkZjI3ZGRjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTAxLTA4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gU3VwcG9ydCBr
ZXkgcm90YXRpb24gd2l0aCBITFMtYmFja2VkIGVuY3J5cHRlZCBtZWRpYSBzdHJlYW1zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA0OTMKKyAgICAg
ICAgPHJkYXI6Ly82ODIyNzcwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IGtleSByb3RhdGlvbiB0aHJvdWdoIEFWQ29udGVudEtleVNl
c3Npb24gYnkgZXhwbGljaXRseSBoYW5kbGluZyB1bmV4cGVjdGVkIGtleSByZXF1ZXN0cworICAg
ICAgICBzdWJtaXR0ZWQgdGhyb3VnaCB0aGUgbmV3IC1jb250ZW50S2V5U2Vzc2lvbjpkaWRQcm92
aWRlQ29udGVudEtleVJlcXVlc3RzOmZvckluaXRpYWxpemF0aW9uRGF0YTouCisgICAgICAgIFJv
dGF0aW9uIHdhcyBwcmV2aW91c2x5IGhhbmRsZWQgaW4gdGhlIGRlbGVnYXRlIG1ldGhvZCAtY29u
dGVudEtleVNlc3Npb246ZGlkUHJvdmlkZUNvbnRlbnRLZXlSZXF1ZXN0LAorICAgICAgICBidXQg
dGhhdCBtZXRob2QgaXMgbm8gbG9uZ2VyIGNhbGxlZCBhZnRlciB0aGUgcmVwbGFjZW1lbnQgZGVs
ZWdhdGUgbWV0aG9kIHdhcyBpbXBsZW1lbnRlZCwgYW5kCisgICAgICAgIHRoYXQgbWV0aG9kIG5l
dmVyIGhhbmRsZWQgInNrZDovLyIgc3R5bGUgaW5pdGlhbGl6YXRpb24gZGF0YS4KKworICAgICAg
ICBVcGRhdGUgdGhlIGhlbHBlciBtZXRob2QsIGluaXRUeXBlRm9yUmVxdWVzdCgpLCB0byBkZXRl
Y3QgInNrZDovLyIgaWRlbnRpZmllcnMgYW5kIGNvcnJlY3RseSBpZGVudGlmeQorICAgICAgICB0
aG9zZSBzZXNzaW9ucyBhcyAic2tkIi4KKworICAgICAgICBBZGQgYSBuZXcgaGVscGVyIG1ldGhv
ZCwgaW5pdGlhbGl6YXRpb25EYXRhRm9yUmVxdWVzdCgpLCB3aGljaCB3aWxsIHBhY2thZ2UgdGhl
IEFWQ29udGVudEtleVNlc3Npb24ncworICAgICAgICBpZGVudGlmaWVyIGFzIGluaXRpYWxpemF0
aW9uIGRhdGEuCisKKyAgICAgICAgRHJpdmUtYnkgRml4OiBGaXhpbmcgdGhpcyBidWcgY2F1c2Vz
IHRoZSBkZWZhdWx0IGtleSBncm91cCB0byB1cGRhdGUgaXQncyBpZGVudGlmaWVyLCB3aGljaCBj
YXVzZXMgYW4gYXNzZXJ0CisgICAgICAgIHdoZW4gdGhlIGdyb3VwIGluIHF1ZXN0aW9uIGlzbid0
IGFueSBvZiB0aG9zZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhpc3RpbmcgTWVkaWFLZXlTZXNzaW9u
LCBzbyBoYW5kbGUgdGhhdCBjYXNlCisgICAgICAgIGV4cGxpY2l0bHkuCisKKyAgICAgICAgRHJp
dmUtYnkgRml4IDI6IFNvbWV0aW1lcywgd2hlbiBHUFVQIGlzIGVuYWJsZWQgZm9yIG1lZGlhLCB3
ZSB3aWxsIGdldCBzcHVyaW91cyBtZWRpYVBsYXllckVuZ2luZVVwZGF0ZWQoKQorICAgICAgICBj
YWxscyB3aGljaCBjYXVzZSBjZG1JbnN0YW5jZUF0dGFjaGVkKCkgdG8gYmUgY2FsbGVkIG11bHRp
cGxlIHRpbWVzIGZvciB0aGUgc2FtZSBwbGF5ZXIsIHRyaWdnZXJpbmcgYW4gQVNTRVJULgorICAg
ICAgICBJZiBjYWxsZWQgdHdpY2Ugd2l0aCB0aGUgc2FtZSBDRE0sIGp1c3QgcmV0dXJuIGVhcmx5
IHJhdGhlciB0aGFuIEFTU0VSVGluZy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjppbml0VHlwZUZv
clJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6aW5pdGlhbGl6YXRpb25EYXRhRm9yUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2Jq
Qzo6dGFrZVVuZXhwZWN0ZWRLZXlSZXF1ZXN0Rm9ySW5pdGlhbGl6YXRpb25EYXRhKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpkaWRQcm92
aWRlUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkNETUlu
c3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpoYW5kbGVVbmV4cGVjdGVkUmVxdWVzdHMp
OgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6
Omdyb3VwU2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6Y2RtSW5zdGFuY2VBdHRh
Y2hlZCk6CisKIDIwMjEtMDEtMDggIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0hBTkddIDQ5Nm1zIHRvIDEzNjBtcyBpbiBXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcygpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFM
L0NoYW5nZUxvZwppbmRleCA1YWQxMTRiZjllMDE3YzlkNWFlYTM3ZmZlMWQ3NDMyZmY0OWUxMmZl
Li40NGQ1MTFmOGRkMDllMTJkMTZjNjQ3ZTYwNmI2YTZkZDA5ODU4NzA3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0wMS0wOCAgSmVyIE5vYmxlICA8amVyLm5vYmxl
QGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFN1cHBvcnQga2V5IHJvdGF0aW9uIHdpdGgg
SExTLWJhY2tlZCBlbmNyeXB0ZWQgbWVkaWEgc3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwNDkzCisgICAgICAgIDxyZGFyOi8vNjgyMjc3
MDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBw
YWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oOgorCiAyMDIxLTAxLTA1ICBKZXIgTm9ibGUg
IDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gUmV2ZXJ0IGF1ZGlvVGlt
ZVBpdGNoQWxnb3JpdGhtIHRvICJUaW1lRG9tYWluIiBmcm9tICJTcGVjdHJhbCIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5k
ZXggMzEwZGZjYmI1YWZhYzBlNDNjZmU1MTUzNTQ3ODRlODFiODE2ZDhjNy4uMzQ2MTlkMDRmYWY4
MTA5NWRkZGQ5YWE3NTVkOWIxNTIyMjAzNGVkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMiBAQAor
MjAyMS0wMS0wOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KKworICAgICAgICBb
Q29jb2FdIFN1cHBvcnQga2V5IHJvdGF0aW9uIHdpdGggSExTLWJhY2tlZCBlbmNyeXB0ZWQgbWVk
aWEgc3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjIwNDkzCisgICAgICAgIDxyZGFyOi8vNjgyMjc3MDk+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU3VwcG9ydCBoYW5kbGluZyB0aGUgInVuZXhw
ZWN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZCgpIiBjbGllbnQgY2FsbGJhY2sgZnJvbSB3
aXRoaW4gdGhlIEdQVVAuCisKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVDRE1JbnN0YW5jZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5zdGFu
Y2VQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5zdGFuY2VQcm94
eTo6UmVtb3RlQ0RNSW5zdGFuY2VQcm94eSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUNETUlu
c3RhbmNlUHJveHk6On5SZW1vdGVDRE1JbnN0YW5jZVByb3h5KToKKyAgICAgICAgKFdlYktpdDo6
UmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNl
aXZlZCk6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVByb3h5
Lmg6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Qcm94eS5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OlJlbW90ZUNETVByb3h5OjpjcmVhdGVJbnN0YW5jZSk6CisgICAgICAgICog
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9H
UFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVD
RE1JbnN0YW5jZTo6UmVtb3RlQ0RNSW5zdGFuY2UpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVD
RE1JbnN0YW5jZTo6flJlbW90ZUNETUluc3RhbmNlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3Rl
Q0RNSW5zdGFuY2U6OnVucmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2ZWQpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2FnZXMuaW46IEFk
ZGVkLgorCiAyMDIxLTAxLTA4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtNYWNdIE5ldGZsaXggY29udHJvbHMgZG8gbm90IGZhZGUgb3V0IGFmdGVyIGVudGVy
aW5nIGZ1bGxzY3JlZW4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2Nv
Y29hL0FWRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2Ev
QVZGb3VuZGF0aW9uU1BJLmgKaW5kZXggYWU3OGIzMzAxOTFlYzJlZmM4OTg0ZGExMjJhNjc2MzA4
NjhkNGQ5Yi4uYmEyZDM1NzM4NjRmZTE4MDE0ODdhNzhmZmE3NDI0ZGU2NTk4MTYzNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgK
QEAgLTIwMCw2ICsyMDAsNyBAQCBOU19BU1NVTUVfTk9OTlVMTF9FTkQKIEBlbmQKIAogQGludGVy
ZmFjZSBBVkNvbnRlbnRLZXlTZXNzaW9uIChBVkNvbnRlbnRLZXlHcm91cF9TdXBwb3J0KQorQHBy
b3BlcnR5IChyZWFkb25seSwgbnVsbGFibGUpIEFWQ29udGVudEtleVJlcG9ydEdyb3VwICpkZWZh
dWx0Q29udGVudEtleUdyb3VwOwogLSAobm9ubnVsbCBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCAq
KW1ha2VDb250ZW50S2V5R3JvdXA7CiBAZW5kCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5oCmluZGV4
IGZiNmY1NGFhMDdlZGJiYmNlM2ExZDFiNDdhNjA5NTQ2NjhjNjFjMzEuLjYxNDY1YTE1NjdjYzA2
ODU1MjcwYTM3YmI3MzYwOTNkOTJmMzRhM2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakMuaApAQCAt
MTIwLDYgKzEyMCw4IEBAIHB1YmxpYzoKICAgICBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0
cmVhbWluZ0FWRk9iakMqIHNlc3Npb25Gb3JSZXF1ZXN0KEFWQ29udGVudEtleVJlcXVlc3QqKSBj
b25zdDsKIAogcHJpdmF0ZToKKyAgICB2b2lkIGhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0
b3I8UmV0YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYmKTsKKwogI2lmICFSRUxFQVNFX0xP
R19ESVNBQkxFRAogICAgIFdURjo6TG9nZ2VyKiBsb2dnZXJQdHIoKSBjb25zdCB7IHJldHVybiBt
X2xvZ2dlci5nZXQoKTsgfTsKICAgICBjb25zdCB2b2lkKiBsb2dJZGVudGlmaWVyKCkgY29uc3Qg
eyByZXR1cm4gbV9sb2dJZGVudGlmaWVyOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCmluZGV4
IDAyN2NhMWZhYzNkMzZmZmQ3ZTVkNTA0Mzg3MDVjMjUxYWJlZGI5ZjcuLmUyZTcwZDZjN2NkMWZl
ZDIzNDUwODYzOWMyYTRjY2VjNmUzMjU0OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCkBA
IC0xOTYsNiArMTk2LDkgQEAgc3RhdGljIFdURkxvZ0NoYW5uZWwmIGxvZ0NoYW5uZWwoKSB7IHJl
dHVybiBMb2dFTUU7IH0KIAogc3RhdGljIEF0b21TdHJpbmcgaW5pdFR5cGVGb3JSZXF1ZXN0KEFW
Q29udGVudEtleVJlcXVlc3QqIHJlcXVlc3QpCiB7CisgICAgaWYgKFtyZXF1ZXN0LmlkZW50aWZp
ZXIgaXNLaW5kT2ZDbGFzczpOU1N0cmluZy5jbGFzc10gJiYgW3JlcXVlc3QuaWRlbnRpZmllciBo
YXNQcmVmaXg6QCJza2Q6Ly8iXSkKKyAgICAgICAgcmV0dXJuIENETVByaXZhdGVGYWlyUGxheVN0
cmVhbWluZzo6c2tkTmFtZSgpOworCiAgICAgaWYgKCFbcmVxdWVzdCByZXNwb25kc1RvU2VsZWN0
b3I6QHNlbGVjdG9yKG9wdGlvbnMpXSkgewogICAgICAgICAvLyBBVkNvbnRlbnRLZXlSZXF1ZXN0
Lm9wdGlvbnMgd2FzIGFkZGVkIGluIDEwLjE0LjQ7IGlmIHdlIGFyZSBydW5uaW5nIG9uIGEgcHJl
dmlvdXMgdmVyc2lvbgogICAgICAgICAvLyB3ZSBkb24ndCBoYXZlIHN1cHBvcnQgZm9yICdjZW5j
JyBhbnl3YXksIHNvIGp1c3QgYXNzdW1lICdzaW5mJy4KQEAgLTIxNSw2ICsyMTgsMTcgQEAgQUxM
T1dfTkVXX0FQSV9XSVRIT1VUX0dVQVJEU19FTkQKICAgICByZXR1cm4gQXRvbVN0cmluZyhuc0lu
aXRUeXBlKTsKIH0KIAorc3RhdGljIFJlZjxTaGFyZWRCdWZmZXI+IGluaXRpYWxpemF0aW9uRGF0
YUZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVxdWVzdCkKK3sKKyAgICBpZiAoIXJl
cXVlc3QpCisgICAgICAgIHJldHVybiBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOworCisgICAgaWYg
KGluaXRUeXBlRm9yUmVxdWVzdChyZXF1ZXN0KSA9PSBDRE1Qcml2YXRlRmFpclBsYXlTdHJlYW1p
bmc6OnNrZE5hbWUoKSkKKyAgICAgICAgcmV0dXJuIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFtyZXF1
ZXN0LmlkZW50aWZpZXIgZGF0YVVzaW5nRW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmcgYWxs
b3dMb3NzeUNvbnZlcnNpb246WUVTXSk7CisKKyAgICByZXR1cm4gU2hhcmVkQnVmZmVyOjpjcmVh
dGUocmVxdWVzdC5pbml0aWFsaXphdGlvbkRhdGEpOworfQorCiBDRE1JbnN0YW5jZUZhaXJQbGF5
U3RyZWFtaW5nQVZGT2JqQzo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakMoKSA9
IGRlZmF1bHQ7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKQEAgLTI1Nyw4ICsyNzEsOCBA
QCBSZXRhaW5QdHI8QVZDb250ZW50S2V5UmVxdWVzdD4gQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVh
bWluZ0FWRk9iakM6OnRha2VVbmV4cGVjdAogICAgIGZvciAoYXV0byByZXF1ZXN0SXRlciA9IG1f
dW5leHBlY3RlZEtleVJlcXVlc3RzLmJlZ2luKCk7IHJlcXVlc3RJdGVyICE9IG1fdW5leHBlY3Rl
ZEtleVJlcXVlc3RzLmVuZCgpOyArK3JlcXVlc3RJdGVyKSB7CiAgICAgICAgIGF1dG8mIHJlcXVl
c3QgPSAqcmVxdWVzdEl0ZXI7CiAgICAgICAgIGF1dG8gcmVxdWVzdFR5cGUgPSBpbml0VHlwZUZv
clJlcXVlc3QocmVxdWVzdC5nZXQoKSk7Ci0gICAgICAgIGF1dG8qIHJlcXVlc3RJbml0RGF0YSAg
PSByZXF1ZXN0LmdldCgpLmluaXRpYWxpemF0aW9uRGF0YTsKLSAgICAgICAgaWYgKGluaXREYXRh
VHlwZSAhPSByZXF1ZXN0VHlwZSB8fCBpbml0RGF0YSAhPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShy
ZXF1ZXN0SW5pdERhdGEpKQorICAgICAgICBhdXRvIHJlcXVlc3RJbml0RGF0YSAgPSBpbml0aWFs
aXphdGlvbkRhdGFGb3JSZXF1ZXN0KHJlcXVlc3QuZ2V0KCkpOworICAgICAgICBpZiAoaW5pdERh
dGFUeXBlICE9IHJlcXVlc3RUeXBlIHx8IGluaXREYXRhICE9IHJlcXVlc3RJbml0RGF0YSkKICAg
ICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIHJldHVybiBtX3VuZXhwZWN0ZWRLZXlSZXF1
ZXN0cy50YWtlKHJlcXVlc3RJdGVyKTsKQEAgLTQ0NCwxMCArNDU4LDcgQEAgdm9pZCBDRE1JbnN0
YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QoQVZDb250ZW50
S2V5UmVxdWVzdAogCiAgICAgREVCVUdfTE9HX0lGX1BPU1NJQkxFKExPR0lERU5USUZJRVIsICIt
IFVuZXhwZWN0ZWQgcmVxdWVzdCIpOwogCi0gICAgbV91bmV4cGVjdGVkS2V5UmVxdWVzdHMuYWRk
KHJlcXVlc3QpOwotCi0gICAgaWYgKG1fY2xpZW50KQotICAgICAgICBtX2NsaWVudC0+dW5yZXF1
ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChpbml0VHlwZUZvclJlcXVlc3QocmVxdWVz
dCksIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHJlcXVlc3QuaW5pdGlhbGl6YXRpb25EYXRhKSk7Cisg
ICAgaGFuZGxlVW5leHBlY3RlZFJlcXVlc3RzKHt7IHJlcXVlc3QgfX0pOwogfQogCiB2b2lkIENE
TUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpkaWRQcm92aWRlUmVxdWVzdHMoVmVj
dG9yPFJldGFpblB0cjxBVkNvbnRlbnRLZXlSZXF1ZXN0Pj4mJiByZXF1ZXN0cykKQEAgLTQ1Nyw4
ICs0NjgsMTggQEAgdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlk
UHJvdmlkZVJlcXVlc3RzKFZlY3RvcjxSZXRhaW5QdHI8QVYKICAgICAgICAgcmV0dXJuOwogICAg
IH0KIAotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIEVSUk9SX0xPR19JRl9QT1NTSUJM
RShMT0dJREVOVElGSUVSLCAiLSBubyByZXNwb25zaWJsZSBzZXNzaW9uOyBkcm9wcGluZyIpOwor
ICAgIGhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhXVEZNb3ZlKHJlcXVlc3RzKSk7Cit9CisKK3Zv
aWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmhhbmRsZVVuZXhwZWN0ZWRS
ZXF1ZXN0cyhWZWN0b3I8UmV0YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYmIHJlcXVlc3Rz
KQoreworICAgIHdoaWxlICghcmVxdWVzdHMuaXNFbXB0eSgpKSB7CisgICAgICAgIGF1dG8gcmVx
dWVzdCA9IHJlcXVlc3RzLnRha2VMYXN0KCk7CisgICAgICAgIG1fdW5leHBlY3RlZEtleVJlcXVl
c3RzLmFkZChyZXF1ZXN0KTsKKworICAgICAgICBpZiAobV9jbGllbnQpCisgICAgICAgICAgICBt
X2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChpbml0VHlwZUZv
clJlcXVlc3QocmVxdWVzdC5nZXQoKSksIGluaXRpYWxpemF0aW9uRGF0YUZvclJlcXVlc3QocmVx
dWVzdC5nZXQoKSkpOworICAgIH0KIH0KIAogdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlbmV3aW5nUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1ZXN0
ICpyZXF1ZXN0KQpAQCAtNTI0LDYgKzU0NSwxMSBAQCB2b2lkIENETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uSWRlbnRpZmllckNoYW5nZWQoTlNEYXRhICpzZXNzaQog
CiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpncm91cFNlc3Npb25J
ZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCogZ3JvdXAsIE5TRGF0YSAq
c2Vzc2lvbklkZW50aWZpZXIpCiB7CisgICAgaWYgKGdyb3VwID09IFttX3Nlc3Npb24gZGVmYXVs
dENvbnRlbnRLZXlHcm91cF0pIHsKKyAgICAgICAgSU5GT19MT0dfSUZfUE9TU0lCTEUoTE9HSURF
TlRJRklFUiwgIi0gZGVmYXVsdCB1bnVzZWQgZ3JvdXAgaWRlbnRpZmllciBjaGFuZ2VkOyBkcm9w
cGluZyIpOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgaWYgKGF1dG8qIHNlc3Npb24g
PSBzZXNzaW9uRm9yR3JvdXAoZ3JvdXApKSB7CiAgICAgICAgIHNlc3Npb24tPmdyb3VwU2Vzc2lv
bklkZW50aWZpZXJDaGFuZ2VkKGdyb3VwLCBzZXNzaW9uSWRlbnRpZmllcik7CiAgICAgICAgIHJl
dHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDLm1tCmluZGV4IGJlNjBlMzRjMzA0N2RkZDg5ZTJhZDlmNTIwMzhjNzc3N2E1Y2UzNzMu
LjcwNDY2YTcwMGZiY2JmMDM4NTY2YzFhM2Q3YjAyMzI4OTBlNDg5YTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291
cmNlUHJpdmF0ZUFWRk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbQpAQCAtMjc3
LDYgKzI3Nyw5IEBAIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6c2V0RGVjb21wcmVz
c2lvblNlc3Npb24oV2ViQ29yZURlY29tcHJlc3Npb25TZXNzCiAjaWYgRU5BQkxFKEVOQ1JZUFRF
RF9NRURJQSkKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6Y2RtSW5zdGFuY2VBdHRh
Y2hlZChDRE1JbnN0YW5jZSYgaW5zdGFuY2UpCiB7CisgICAgaWYgKG1fY2RtSW5zdGFuY2UuZ2V0
KCkgPT0gJmluc3RhbmNlKQorICAgICAgICByZXR1cm47CisKICAgICBBU1NFUlQoIW1fY2RtSW5z
dGFuY2UpOwogICAgIG1fY2RtSW5zdGFuY2UgPSAmaW5zdGFuY2U7CiAgICAgZm9yIChhdXRvJiBz
b3VyY2VCdWZmZXIgOiBtX3NvdXJjZUJ1ZmZlcnMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRT
b3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMTY2YjI5YjJmNzc5OTQ2Y2FjMjdkNjU3NTc1
OTYwMWVmNTY4NGYyZC4uMjNhZDQwNzgwZDM2NTdiYzg5YWE4MmIxNGNmMzc3MGEzMjZkZDQwNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0
CisrKyBiL1NvdXJjZS9XZWJLaXQvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApAQCAt
MTQzLDYgKzE0Myw3IEBAICQoUFJPSkVDVF9ESVIpL1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlh
UGxheWVyUHJpdmF0ZVJlbW90ZS5tZXNzYWdlcy5pbgogJChQUk9KRUNUX0RJUikvV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlLm1lc3NhZ2VzLmluCiAkKFBST0pF
Q1RfRElSKS9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb1Nlc3Npb24ubWVzc2FnZXMu
aW4KICQoUFJPSkVDVF9ESVIpL1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvU291cmNl
UHJvdmlkZXJNYW5hZ2VyLm1lc3NhZ2VzLmluCiskKFBST0pFQ1RfRElSKS9XZWJQcm9jZXNzL0dQ
VS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5tZXNzYWdlcy5pbgogJChQUk9KRUNUX0RJUikvV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uLm1lc3NhZ2VzLmluCiAk
KFBST0pFQ1RfRElSKS9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVMZWdhY3lDRE1TZXNzaW9u
Lm1lc3NhZ2VzLmluCiAkKFBST0pFQ1RfRElSKS9XZWJQcm9jZXNzL0dQVS9tZWRpYS9Tb3VyY2VC
dWZmZXJQcml2YXRlUmVtb3RlLm1lc3NhZ2VzLmluCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dlYktpdC9EZXJpdmVk
U291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAxZTI0YThmNWEwYjQ5MDczNTNiOTk1YzY3
MDU4NWYyZGM1NzgwNzEzLi4wNjU1NzU1OTUzMDgzMGQ2MzJhNTY3N2IzZWJlZWQ3MDdmYmUyYzhh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVs
aXN0CisrKyBiL1NvdXJjZS9XZWJLaXQvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QK
QEAgLTE2Miw2ICsxNjIsOSBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViS2l0Mi9SZW1vdGVBdWRpb1RyYWNrUHJveHlNZXNzYWdlc1JlcGxpZQogJChCVUlMVF9QUk9E
VUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNRmFjdG9yeVByb3h5TWVz
c2FnZVJlY2VpdmVyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dl
YktpdDIvUmVtb3RlQ0RNRmFjdG9yeVByb3h5TWVzc2FnZXMuaAogJChCVUlMVF9QUk9EVUNUU19E
SVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNRmFjdG9yeVByb3h5TWVzc2FnZXNS
ZXBsaWVzLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJLaXQyL1Jl
bW90ZUNETUluc3RhbmNlTWVzc2FnZVJlY2VpdmVyLmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIp
L0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNSW5zdGFuY2VNZXNzYWdlcy5oCiskKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVDRE1JbnN0YW5j
ZU1lc3NhZ2VzUmVwbGllcy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMv
V2ViS2l0Mi9SZW1vdGVDRE1JbnN0YW5jZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcAogJChCVUlM
VF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNSW5zdGFuY2VQ
cm94eU1lc3NhZ2VzLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJL
aXQyL1JlbW90ZUNETUluc3RhbmNlUHJveHlNZXNzYWdlc1JlcGxpZXMuaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dlYktpdC9EZXJpdmVk
U291cmNlcy5tYWtlCmluZGV4IGM5MTZmNjU5MzZhZDAwNzdlNDBlODFhNzE4YWYyMmNjNTFkZDdk
NGYuLmM3YTUwOTRiMjQyYjQwZmI5MjEwZDkwM2MzZGM4Y2ZhMDcyYjQyZjUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViS2l0L0Rl
cml2ZWRTb3VyY2VzLm1ha2UKQEAgLTE4MCw2ICsxODAsNyBAQCBNRVNTQUdFX1JFQ0VJVkVSUyA9
IFwKIAlXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUgXAogCVdl
YlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvU2Vzc2lvbiBcCiAJV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvUmVtb3RlQXVkaW9Tb3VyY2VQcm92aWRlck1hbmFnZXIgXAorCVdlYlByb2Nlc3MvR1BV
L21lZGlhL1JlbW90ZUNETUluc3RhbmNlIFwKIAlXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVD
RE1JbnN0YW5jZVNlc3Npb24gXAogCVdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUxlZ2FjeUNE
TVNlc3Npb24gXAogCVdlYlByb2Nlc3MvR1BVL21lZGlhL1NvdXJjZUJ1ZmZlclByaXZhdGVSZW1v
dGUgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNE
TUluc3RhbmNlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZUNETUluc3RhbmNlUHJveHkuY3BwCmluZGV4IDFiNDBhYjViMDA0N2VkNjE0ZTdjOTRiNTlhOWE3
NzUxMmYzYmM2MjAuLmViYjhlNWZmMDI4Yzg1ZjZmNTYzNGEwMjEwMjU3MGQxMTY0MDBjY2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1JbnN0YW5j
ZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RN
SW5zdGFuY2VQcm94eS5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNpZiBFTkFCTEUoR1BVX1BST0NF
U1MpICYmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCiAKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0
YW5jZUNvbmZpZ3VyYXRpb24uaCIKKyNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2Vz
LmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uUHJveHkuaCIKICNpbmNsdWRl
ICJTaGFyZWRCdWZmZXJDb3B5LmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DRE1JbnN0YW5jZS5oPgpA
QCAtMzcsMjIgKzM4LDM2IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiB1c2luZyBuYW1lc3BhY2Ug
V2ViQ29yZTsKIAotc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUNETUluc3RhbmNlUHJveHk+IFJlbW90
ZUNETUluc3RhbmNlUHJveHk6OmNyZWF0ZShXZWFrUHRyPFJlbW90ZUNETVByb3h5PiYmIGNkbSwg
UmVmPENETUluc3RhbmNlPiYmIHByaXYpCitzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5zdGFu
Y2VQcm94eT4gUmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6Y3JlYXRlKFdlYWtQdHI8UmVtb3RlQ0RN
UHJveHk+JiYgY2RtLCBSZWY8Q0RNSW5zdGFuY2U+JiYgcHJpdiwgUmVtb3RlQ0RNSW5zdGFuY2VJ
ZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byBjb25maWd1cmF0aW9uID0gbWFrZVVu
aXF1ZVJlZldpdGhvdXRGYXN0TWFsbG9jQ2hlY2s8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0
aW9uLCBSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24mJj4oewogICAgICAgICBwcml2LT5r
ZXlTeXN0ZW0oKSwKICAgICB9KTsKLSAgICByZXR1cm4gc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUNE
TUluc3RhbmNlUHJveHk+KG5ldyBSZW1vdGVDRE1JbnN0YW5jZVByb3h5KFdURk1vdmUoY2RtKSwg
V1RGTW92ZShwcml2KSwgV1RGTW92ZShjb25maWd1cmF0aW9uKSkpOworICAgIHJldHVybiBzdGQ6
OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5zdGFuY2VQcm94eT4obmV3IFJlbW90ZUNETUluc3RhbmNl
UHJveHkoV1RGTW92ZShjZG0pLCBXVEZNb3ZlKHByaXYpLCBXVEZNb3ZlKGNvbmZpZ3VyYXRpb24p
LCBpZGVudGlmaWVyKSk7CiB9CiAKLVJlbW90ZUNETUluc3RhbmNlUHJveHk6OlJlbW90ZUNETUlu
c3RhbmNlUHJveHkoV2Vha1B0cjxSZW1vdGVDRE1Qcm94eT4mJiBjZG0sIFJlZjxDRE1JbnN0YW5j
ZT4mJiBwcml2LCBVbmlxdWVSZWY8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uPiYmIGNv
bmZpZ3VyYXRpb24pCitSZW1vdGVDRE1JbnN0YW5jZVByb3h5OjpSZW1vdGVDRE1JbnN0YW5jZVBy
b3h5KFdlYWtQdHI8UmVtb3RlQ0RNUHJveHk+JiYgY2RtLCBSZWY8Q0RNSW5zdGFuY2U+JiYgcHJp
diwgVW5pcXVlUmVmPFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbj4mJiBjb25maWd1cmF0
aW9uLCBSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIgaWRlbnRpZmllcikKICAgICA6IG1fY2Rt
KFdURk1vdmUoY2RtKSkKICAgICAsIG1faW5zdGFuY2UoV1RGTW92ZShwcml2KSkKICAgICAsIG1f
Y29uZmlndXJhdGlvbihXVEZNb3ZlKGNvbmZpZ3VyYXRpb24pKQorICAgICwgbV9pZGVudGlmaWVy
KGlkZW50aWZpZXIpCiB7CisgICAgbV9pbnN0YW5jZS0+c2V0Q2xpZW50KG1ha2VXZWFrUHRyPENE
TUluc3RhbmNlQ2xpZW50Pih0aGlzKSk7CiB9CiAKLVJlbW90ZUNETUluc3RhbmNlUHJveHk6On5S
ZW1vdGVDRE1JbnN0YW5jZVByb3h5KCkgPSBkZWZhdWx0OworUmVtb3RlQ0RNSW5zdGFuY2VQcm94
eTo6flJlbW90ZUNETUluc3RhbmNlUHJveHkoKQoreworICAgIG1faW5zdGFuY2UtPmNsZWFyQ2xp
ZW50KCk7Cit9CisKK3ZvaWQgUmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6dW5yZXF1ZXN0ZWRJbml0
aWFsaXphdGlvbkRhdGFSZWNlaXZlZChjb25zdCBTdHJpbmcmIHR5cGUsIFJlZjxTaGFyZWRCdWZm
ZXI+JiYgaW5pdERhdGEpCit7CisgICAgaWYgKCFtX2NkbSkKKyAgICAgICAgcmV0dXJuOworCisg
ICAgaWYgKGF1dG8qIGZhY3RvcnkgPSBtX2NkbS0+ZmFjdG9yeSgpKQorICAgICAgICBmYWN0b3J5
LT5ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6
OlJlbW90ZUNETUluc3RhbmNlOjpVbnJlcXVlc3RlZEluaXRpYWxpemF0aW9uRGF0YVJlY2VpdmVk
KHR5cGUsIFdURk1vdmUoaW5pdERhdGEpKSwgbV9pZGVudGlmaWVyKTsKK30KIAogdm9pZCBSZW1v
dGVDRE1JbnN0YW5jZVByb3h5Ojppbml0aWFsaXplV2l0aENvbmZpZ3VyYXRpb24oY29uc3QgV2Vi
Q29yZTo6Q0RNS2V5U3lzdGVtQ29uZmlndXJhdGlvbiYgY29uZmlndXJhdGlvbiwgQWxsb3dEaXN0
aW5jdGl2ZUlkZW50aWZpZXJzIGFsbG93RGlzdGluY3RpdmVJZGVudGlmaWVycywgQWxsb3dQZXJz
aXN0ZW50U3RhdGUgYWxsb3dQZXJzaXN0ZW50U3RhdGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQo
U3VjY2Vzc1ZhbHVlKT4mJiBjb21wbGV0aW9uKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuaCBiL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVByb3h5LmgKaW5kZXggNTE0YTMw
NjVhOThjYzMxZWU2NDMzMzdmOWJhZDk3NDg0YjkyZmZhYi4uOTI0ZWFkZDUzNzJjYTI1YTEyMWIy
NWZkYTg2NmEyYWNlYmI0N2U1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5oCkBAIC01MCw5ICs1MCw5IEBAIG5h
bWVzcGFjZSBXZWJLaXQgewogc3RydWN0IFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbjsK
IGNsYXNzIFJlbW90ZUNETUluc3RhbmNlU2Vzc2lvblByb3h5OwogCi1jbGFzcyBSZW1vdGVDRE1J
bnN0YW5jZVByb3h5IDogcHJpdmF0ZSBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAgeworY2xhc3MgUmVt
b3RlQ0RNSW5zdGFuY2VQcm94eSA6IHB1YmxpYyBXZWJDb3JlOjpDRE1JbnN0YW5jZUNsaWVudCwg
cHJpdmF0ZSBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6
OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5zdGFuY2VQcm94eT4gY3JlYXRlKFdlYWtQdHI8UmVtb3Rl
Q0RNUHJveHk+JiYsIFJlZjxXZWJDb3JlOjpDRE1JbnN0YW5jZT4mJik7CisgICAgc3RhdGljIHN0
ZDo6dW5pcXVlX3B0cjxSZW1vdGVDRE1JbnN0YW5jZVByb3h5PiBjcmVhdGUoV2Vha1B0cjxSZW1v
dGVDRE1Qcm94eT4mJiwgUmVmPFdlYkNvcmU6OkNETUluc3RhbmNlPiYmLCBSZW1vdGVDRE1JbnN0
YW5jZUlkZW50aWZpZXIpOwogICAgIH5SZW1vdGVDRE1JbnN0YW5jZVByb3h5KCk7CiAKICAgICBj
b25zdCBSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24oKSBjb25z
dCB7IHJldHVybiBtX2NvbmZpZ3VyYXRpb24uZ2V0KCk7IH0KQEAgLTYwLDcgKzYwLDEwIEBAIHB1
YmxpYzoKIAogcHJpdmF0ZToKICAgICBmcmllbmQgY2xhc3MgUmVtb3RlQ0RNRmFjdG9yeVByb3h5
OwotICAgIFJlbW90ZUNETUluc3RhbmNlUHJveHkoV2Vha1B0cjxSZW1vdGVDRE1Qcm94eT4mJiwg
UmVmPFdlYkNvcmU6OkNETUluc3RhbmNlPiYmLCBVbmlxdWVSZWY8UmVtb3RlQ0RNSW5zdGFuY2VD
b25maWd1cmF0aW9uPiYmKTsKKyAgICBSZW1vdGVDRE1JbnN0YW5jZVByb3h5KFdlYWtQdHI8UmVt
b3RlQ0RNUHJveHk+JiYsIFJlZjxXZWJDb3JlOjpDRE1JbnN0YW5jZT4mJiwgVW5pcXVlUmVmPFJl
bW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbj4mJiwgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlm
aWVyKTsKKworICAgIC8vIENETUluc3RhbmNlQ2xpZW50CisgICAgdm9pZCB1bnJlcXVlc3RlZElu
aXRpYWxpemF0aW9uRGF0YVJlY2VpdmVkKGNvbnN0IFN0cmluZyYsIFJlZjxXZWJDb3JlOjpTaGFy
ZWRCdWZmZXI+JiYpIGZpbmFsOwogCiAgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIKICAgICB2
b2lkIGRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIGZp
bmFsOwpAQCAtNzksNiArODIsNyBAQCBwcml2YXRlOgogICAgIFdlYWtQdHI8UmVtb3RlQ0RNUHJv
eHk+IG1fY2RtOwogICAgIFJlZjxXZWJDb3JlOjpDRE1JbnN0YW5jZT4gbV9pbnN0YW5jZTsKICAg
ICBVbmlxdWVSZWY8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uPiBtX2NvbmZpZ3VyYXRp
b247CisgICAgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBI
YXNoTWFwPFJlbW90ZUNETUluc3RhbmNlU2Vzc2lvbklkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0
cjxSZW1vdGVDRE1JbnN0YW5jZVNlc3Npb25Qcm94eT4+IG1fc2Vzc2lvbnM7CiB9OwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNUHJveHkuY3Bw
IGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETVByb3h5LmNwcAppbmRl
eCAwNTEwNjYzM2Y4ZTdiMTJlZjA5ZmRjN2Q1N2FkNTlkZjk3MjllNzNiLi5lODVlMDEzOGE4ODY3
MDQ4YjUxMmNhNGQ5ZTFlMmY2ZGUwNzlmMDU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BV
UHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Qcm94eS5jcHAKQEAgLTkwLDggKzkwLDggQEAgdm9pZCBS
ZW1vdGVDRE1Qcm94eTo6Y3JlYXRlSW5zdGFuY2UoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZW1v
dGVDRE1JbnN0YW5jZUlkZW4KICAgICAgICAgY29tcGxldGlvbih7IH0sIHsgfSk7CiAgICAgICAg
IHJldHVybjsKICAgICB9Ci0gICAgYXV0byBpbnN0YW5jZSA9IFJlbW90ZUNETUluc3RhbmNlUHJv
eHk6OmNyZWF0ZShtYWtlV2Vha1B0cih0aGlzKSwgcHJpdmF0ZUluc3RhbmNlLnJlbGVhc2VOb25O
dWxsKCkpOwogICAgIGF1dG8gaWRlbnRpZmllciA9IFJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmll
cjo6Z2VuZXJhdGUoKTsKKyAgICBhdXRvIGluc3RhbmNlID0gUmVtb3RlQ0RNSW5zdGFuY2VQcm94
eTo6Y3JlYXRlKG1ha2VXZWFrUHRyKHRoaXMpLCBwcml2YXRlSW5zdGFuY2UucmVsZWFzZU5vbk51
bGwoKSwgaWRlbnRpZmllcik7CiAgICAgUmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uIGNv
bmZpZ3VyYXRpb24gPSBpbnN0YW5jZS0+Y29uZmlndXJhdGlvbigpOwogICAgIG1fZmFjdG9yeS0+
YWRkSW5zdGFuY2UoaWRlbnRpZmllciwgV1RGTW92ZShpbnN0YW5jZSkpOwogICAgIGNvbXBsZXRp
b24oaWRlbnRpZmllciwgV1RGTW92ZShjb25maWd1cmF0aW9uKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktp
dC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA3MjVhYjZhMThlY2MyN2Yz
OWFjYzRjNTU4NDlmMTk0OThkNTM4OWQyLi5mNjY1NTYyOTExMzRkOWRlODJjZDlhYWRiMTAzNzhj
YjRjOTIzM2MyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKQEAgLTE4NjAsNiArMTg2MCw3IEBACiAJCUNEQTI5QTI5MUNCRUI2N0EwMDkwMUND
RiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQTI5QTI1MUNCRUI2N0EwMDkwMUNDRiAvKiBQ
bGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKIAkJQ0RBMjlBMkExQ0JFQjY3
QTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eU1lc3NhZ2VSZWNlaXZlci5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREEyOUEy
NjFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZVJl
Y2VpdmVyLmNwcCAqLzsgfTsKIAkJQ0RBMjlBMkIxQ0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXliYWNr
U2Vzc2lvbk1hbmFnZXJQcm94eU1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDREEyOUEyNzFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tT
ZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZXMuaCAqLzsgfTsKKwkJQ0RBNkQ0NTEyNUE5ODlDNzAw
NEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQTZENDUwMjVBOTg5QUMwMDRC
MURGNiAvKiBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CiAJCUNE
QTkzREIwMjJGOEJDRjQwMDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJh
bWV0ZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBD
REE5M0RBRTIyRjhCQ0YzMDA0OTBBNjkgLyogRnVsbHNjcmVlblRvdWNoU2VjaGV1cmlzdGljUGFy
YW1ldGVycy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07
CiAJCUNEQTkzREIxMjJGOEJDRjQwMDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0
aWNQYXJhbWV0ZXJzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IENEQTkzREFGMjJGOEJDRjQwMDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVy
aXN0aWNQYXJhbWV0ZXJzLmNwcCAqLzsgfTsKIAkJQ0RBQzIwQjQyM0ZCNThGMjAwMjFERUUzIC8q
IFJlbW90ZUNETUluc3RhbmNlUHJveHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IENEQUMyMEIyMjNGQjU4RjIwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0
YW5jZVByb3h5LmggKi87IH07CkBAIC01NTIyLDYgKzU1MjMsOSBAQAogCQlDREEyOUEyNTFDQkVC
NjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlck1lc3NhZ2VzLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJNZXNzYWdlcy5o
OyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVz
c2FnZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJQ0RBMjlBMjYx
Q0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eU1lc3NhZ2VSZWNl
aXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBQbGF5YmFja1Nl
c3Npb25NYW5hZ2VyUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJj
ZXMvV2ViS2l0Mi9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3Bw
OyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlDREEyOUEyNzFDQkVCNjdB
MDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZXMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVz
c2FnZXMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYktpdDIvUGxheWJhY2tTZXNzaW9uTWFu
YWdlclByb3h5TWVzc2FnZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
KwkJQ0RBNkQ0NEQyNUE5NzE1ODAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2Vz
LmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFJlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2VzLmluOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlDREE2RDQ0RjI1QTk4OUFDMDA0QjFERjYgLyogUmVtb3RlQ0RNSW5zdGFu
Y2VNZXNzYWdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW1vdGVDRE1J
bnN0YW5jZU1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTZENDUw
MjVBOTg5QUMwMDRCMURGNiAvKiBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW1vdGVDRE1JbnN0YW5jZU1l
c3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEQTkzREFF
MjJGOEJDRjMwMDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgbmFtZSA9IEZ1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3RpY1BhcmFtZXRlcnMu
aDsgcGF0aCA9IGlvcy9mdWxsc2NyZWVuL0Z1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3RpY1BhcmFt
ZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RBOTNEQUYyMkY4QkNGNDAw
NDkwQTY5IC8qIEZ1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3RpY1BhcmFtZXRlcnMuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBuYW1lID0gRnVsbHNjcmVlblRvdWNoU2VjaGV1cmlzdGljUGFyYW1ldGVycy5jcHA7
IHBhdGggPSBpb3MvZnVsbHNjcmVlbi9GdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0
ZXJzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RBOTU5M0EyNDEyQjE3NTAw
OTEwRUVGIC8qIFJlbW90ZU1lZGlhU2Vzc2lvbkhlbHBlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBSZW1vdGVNZWRpYVNlc3Npb25IZWxwZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwpAQCAtNTk1OSw2ICs1OTYzLDcgQEAKIAkJCQlDREFDMjBDMjIzRkMyRjc1MDAyMURFRTMgLyog
UmVtb3RlQ0RNSWRlbnRpZmllci5oICovLAogCQkJCUNEQUMyMEJCMjNGQzJGNzQwMDIxREVFMyAv
KiBSZW1vdGVDRE1JbnN0YW5jZS5jcHAgKi8sCiAJCQkJQ0RBQzIwQjcyM0ZDMkY3MzAwMjFERUUz
IC8qIFJlbW90ZUNETUluc3RhbmNlLmggKi8sCisJCQkJQ0RBNkQ0NEQyNUE5NzE1ODAwNEIxREY2
IC8qIFJlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2VzLmluICovLAogCQkJCUNEQUMyMEMxMjNGQzJG
NzUwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQlD
REFDMjBCNjIzRkMyRjczMDAyMURFRTMgLyogUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyLmgg
Ki8sCiAJCQkJQ0RBQzIwQkUyM0ZDMkY3NDAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlU2Vz
c2lvbi5jcHAgKi8sCkBAIC0xMDc1OSw2ICsxMDc2NCw4IEBACiAJCQkJQ0RBQzIwRjIyM0ZDMzgz
QTAwMjFERUUzIC8qIFJlbW90ZUNETUZhY3RvcnlQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8s
CiAJCQkJQ0RBQzIwRjMyM0ZDMzgzQTAwMjFERUUzIC8qIFJlbW90ZUNETUZhY3RvcnlQcm94eU1l
c3NhZ2VzLmggKi8sCiAJCQkJQ0RBQzIwRUUyM0ZDMzgzOTAwMjFERUUzIC8qIFJlbW90ZUNETUZh
Y3RvcnlQcm94eU1lc3NhZ2VzUmVwbGllcy5oICovLAorCQkJCUNEQTZENDUwMjVBOTg5QUMwMDRC
MURGNiAvKiBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8sCisJCQkJQ0RB
NkQ0NEYyNUE5ODlBQzAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlTWVzc2FnZXMuaCAqLywK
IAkJCQlDREFDMjBGNTIzRkMzODNCMDAyMURFRTMgLyogUmVtb3RlQ0RNSW5zdGFuY2VQcm94eU1l
c3NhZ2VSZWNlaXZlci5jcHAgKi8sCiAJCQkJQ0RBQzIwRUIyM0ZDMzgzODAwMjFERUUzIC8qIFJl
bW90ZUNETUluc3RhbmNlUHJveHlNZXNzYWdlcy5oICovLAogCQkJCUNEQUMyMEY2MjNGQzM4M0Iw
MDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZVByb3h5TWVzc2FnZXNSZXBsaWVzLmggKi8sCkBA
IC0xMzc2OCw2ICsxMzc3NSw3IEBACiAJCQkJMkQxMUI3NjQyMTI2QTI4MjAwNkY4ODc4IC8qIFVu
aWZpZWRTb3VyY2UxMC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDExQjc2MzIxMjZBMjgyMDA2
Rjg4NzggLyogVW5pZmllZFNvdXJjZTEwLW1tLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQxMUI3
NjUyMTI2QTI4MjAwNkY4ODc4IC8qIFVuaWZpZWRTb3VyY2UxMS1tbS5tbSBpbiBTb3VyY2VzICov
LAorCQkJCUNEQTZENDUxMjVBOTg5QzcwMDRCMURGNiAvKiBSZW1vdGVDRE1JbnN0YW5jZU1lc3Nh
Z2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDExQjc2NjIxMjZBMjgyMDA2Rjg4
NzggLyogVW5pZmllZFNvdXJjZTExLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJEMTFCNzY3MjEy
NkEyODIwMDZGODg3OCAvKiBVbmlmaWVkU291cmNlMTItbW0ubW0gaW4gU291cmNlcyAqLywKIAkJ
CQkyRDExQjc2ODIxMjZBMjgyMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTEyLmNwcCBpbiBTb3Vy
Y2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9S
ZW1vdGVDRE1JbnN0YW5jZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlh
L1JlbW90ZUNETUluc3RhbmNlLmNwcAppbmRleCA1OTQ0ZGMwZGQzNThmNjg5NDgwMzM5ZTRlMjIy
OTdjOWUyZjRlMTA0Li5lZGM4OTRlZTkzM2I4ZWFjNjE4ZDlhNWY2OTc2ZTljNGQyODM4NjgzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUlu
c3RhbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUNETUluc3RhbmNlLmNwcApAQCAtMjksNiArMjksNyBAQAogI2lmIEVOQUJMRShHUFVfUFJPQ0VT
UykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKIAogI2luY2x1ZGUgIkdQVVByb2Nlc3NDb25u
ZWN0aW9uLmgiCisjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VNZXNzYWdlcy5oIgogI2luY2x1
ZGUgIlJlbW90ZUNETUluc3RhbmNlUHJveHlNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUNE
TUluc3RhbmNlU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlU2Vzc2lvbklk
ZW50aWZpZXIuaCIKQEAgLTUxLDYgKzUyLDIwIEBAIFJlbW90ZUNETUluc3RhbmNlOjpSZW1vdGVD
RE1JbnN0YW5jZShXZWFrUHRyPFJlbW90ZUNETUZhY3Rvcnk+JiYgZmFjdG9yeSwgUmVtb3RlCiAg
ICAgLCBtX2lkZW50aWZpZXIoV1RGTW92ZShpZGVudGlmaWVyKSkKICAgICAsIG1fY29uZmlndXJh
dGlvbihXVEZNb3ZlKGNvbmZpZ3VyYXRpb24pKQogeworICAgIGlmIChtX2ZhY3RvcnkpCisgICAg
ICAgIG1fZmFjdG9yeS0+Z3B1UHJvY2Vzc0Nvbm5lY3Rpb24oKS5tZXNzYWdlUmVjZWl2ZXJNYXAo
KS5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90ZUNETUluc3RhbmNlOjptZXNzYWdl
UmVjZWl2ZXJOYW1lKCksIG1faWRlbnRpZmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Cit9CisKK1Jl
bW90ZUNETUluc3RhbmNlOjp+UmVtb3RlQ0RNSW5zdGFuY2UoKQoreworICAgIGlmIChtX2ZhY3Rv
cnkpCisgICAgICAgIG1fZmFjdG9yeS0+Z3B1UHJvY2Vzc0Nvbm5lY3Rpb24oKS5tZXNzYWdlUmVj
ZWl2ZXJNYXAoKS5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90ZUNETUluc3Rh
bmNlOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1faWRlbnRpZmllci50b1VJbnQ2NCgpKTsKK30K
Kwordm9pZCBSZW1vdGVDRE1JbnN0YW5jZTo6dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFS
ZWNlaXZlZChjb25zdCBTdHJpbmcmIHR5cGUsIElQQzo6U2hhcmVkQnVmZmVyQ29weSYmIGluaXRE
YXRhKQoreworICAgIGlmIChtX2NsaWVudCAmJiBpbml0RGF0YS5idWZmZXIoKSkKKyAgICAgICAg
bV9jbGllbnQtPnVucmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2ZWQodHlwZSwgaW5p
dERhdGEuYnVmZmVyKCkucmVsZWFzZU5vbk51bGwoKSk7CiB9CiAKIHZvaWQgUmVtb3RlQ0RNSW5z
dGFuY2U6OmluaXRpYWxpemVXaXRoQ29uZmlndXJhdGlvbihjb25zdCBXZWJDb3JlOjpDRE1LZXlT
eXN0ZW1Db25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uLCBBbGxvd0Rpc3RpbmN0aXZlSWRlbnRp
ZmllcnMgZGlzdGluY3RpdmVJZGVudGlmaWVycywgQWxsb3dQZXJzaXN0ZW50U3RhdGUgcGVyc2lz
dGVudFN0YXRlLCBTdWNjZXNzQ2FsbGJhY2smJiBjYWxsYmFjaykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UuaCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UuaAppbmRleCA4
OTVmNDliOTczOWQyNDc5ZDU1NWRmOGZiMDI3ZWRmZWNhOWMzNDA0Li4xMDZiYTNiMTE2MWM4ZGYw
OWQ3MWRmZTY3OWJhMzNkNDIzMDc5ZTk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmgKKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5oCkBAIC0yNywxNiArMjcsMTgg
QEAKIAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkK
IAorI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUZhY3Rv
cnkuaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNs
dWRlICJSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIuaCIKKyNpbmNsdWRlICJTaGFyZWRCdWZm
ZXJDb3B5LmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DRE1JbnN0YW5jZS5oPgogCiBuYW1lc3BhY2Ug
V2ViS2l0IHsKIAotY2xhc3MgUmVtb3RlQ0RNSW5zdGFuY2UgZmluYWwgOiBwdWJsaWMgV2ViQ29y
ZTo6Q0RNSW5zdGFuY2UgeworY2xhc3MgUmVtb3RlQ0RNSW5zdGFuY2UgZmluYWwgOiBwdWJsaWMg
V2ViQ29yZTo6Q0RNSW5zdGFuY2UsIHByaXZhdGUgSVBDOjpNZXNzYWdlUmVjZWl2ZXIgewogcHVi
bGljOgotICAgIHZpcnR1YWwgflJlbW90ZUNETUluc3RhbmNlKCkgPSBkZWZhdWx0OworICAgIHZp
cnR1YWwgflJlbW90ZUNETUluc3RhbmNlKCk7CiAgICAgc3RhdGljIFJlZjxSZW1vdGVDRE1JbnN0
YW5jZT4gY3JlYXRlKFdlYWtQdHI8UmVtb3RlQ0RNRmFjdG9yeT4mJiwgUmVtb3RlQ0RNSW5zdGFu
Y2VJZGVudGlmaWVyJiYsIFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbiYmKTsKIAogICAg
IGNvbnN0IFJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmllciYgaWRlbnRpZmllcigpIGNvbnN0IHsg
cmV0dXJuIG1faWRlbnRpZmllcjsgfQpAQCAtNDQsMTYgKzQ2LDI1IEBAIHB1YmxpYzoKIHByaXZh
dGU6CiAgICAgUmVtb3RlQ0RNSW5zdGFuY2UoV2Vha1B0cjxSZW1vdGVDRE1GYWN0b3J5PiYmLCBS
ZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXImJiwgUmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0
aW9uJiYpOwogCisgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIKKyAgICB2b2lkIGRpZFJlY2Vp
dmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIGZpbmFsOworCisgICAg
Ly8gTWVzc2FnZXMKKyAgICB2b2lkIHVucmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2
ZWQoY29uc3QgU3RyaW5nJiwgSVBDOjpTaGFyZWRCdWZmZXJDb3B5JiYpOworCiAgICAgSW1wbGVt
ZW50YXRpb25UeXBlIGltcGxlbWVudGF0aW9uVHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIElt
cGxlbWVudGF0aW9uVHlwZTo6UmVtb3RlOyB9CiAgICAgdm9pZCBpbml0aWFsaXplV2l0aENvbmZp
Z3VyYXRpb24oY29uc3QgV2ViQ29yZTo6Q0RNS2V5U3lzdGVtQ29uZmlndXJhdGlvbiYsIEFsbG93
RGlzdGluY3RpdmVJZGVudGlmaWVycywgQWxsb3dQZXJzaXN0ZW50U3RhdGUsIFN1Y2Nlc3NDYWxs
YmFjayYmKSBmaW5hbDsKICAgICB2b2lkIHNldFNlcnZlckNlcnRpZmljYXRlKFJlZjxXZWJDb3Jl
OjpTaGFyZWRCdWZmZXI+JiYsIFN1Y2Nlc3NDYWxsYmFjayYmKSBmaW5hbDsKICAgICB2b2lkIHNl
dFN0b3JhZ2VEaXJlY3RvcnkoY29uc3QgU3RyaW5nJikgZmluYWw7CiAgICAgY29uc3QgU3RyaW5n
JiBrZXlTeXN0ZW0oKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2NvbmZpZ3VyYXRpb24ua2V5U3lz
dGVtOyB9CiAgICAgUmVmUHRyPFdlYkNvcmU6OkNETUluc3RhbmNlU2Vzc2lvbj4gY3JlYXRlU2Vz
c2lvbigpIGZpbmFsOworICAgIHZvaWQgc2V0Q2xpZW50KFdlYWtQdHI8V2ViQ29yZTo6Q0RNSW5z
dGFuY2VDbGllbnQ+JiYgY2xpZW50KSBmaW5hbCB7IG1fY2xpZW50ID0gV1RGTW92ZShjbGllbnQp
OyB9CisgICAgdm9pZCBjbGVhckNsaWVudCgpIGZpbmFsIHsgbV9jbGllbnQuY2xlYXIoKTsgfQog
CiAgICAgV2Vha1B0cjxSZW1vdGVDRE1GYWN0b3J5PiBtX2ZhY3Rvcnk7CiAgICAgUmVtb3RlQ0RN
SW5zdGFuY2VJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBSZW1vdGVDRE1JbnN0YW5jZUNv
bmZpZ3VyYXRpb24gbV9jb25maWd1cmF0aW9uOworICAgIFdlYWtQdHI8V2ViQ29yZTo6Q0RNSW5z
dGFuY2VDbGllbnQ+IG1fY2xpZW50OwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5tZXNzYWdlcy5pbiBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2Fn
ZXMuaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uN2QzNTVjMWEyZTcwNmYwY2MzMzExYWQ1MDIzNDY2MmRjMjdiYTQw
ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
UmVtb3RlQ0RNSW5zdGFuY2UubWVzc2FnZXMuaW4KQEAgLTAsMCArMSwzMCBAQAorIyBDb3B5cmln
aHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyMgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCisjIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAorIyBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisjIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9S
UworIyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLCBFWEVNUExBUlksIE9SCisjIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisjIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworIyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTgorIyBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorIyBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisjIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYg
RU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKKworbWVzc2FnZXMgLT4gUmVtb3RlQ0RNSW5zdGFuY2Ug
Tm90UmVmQ291bnRlZCB7CisgICAgVW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZl
ZChTdHJpbmcgdHlwZSwgSVBDOjpTaGFyZWRCdWZmZXJDb3B5IGluaXREYXRhKQorfQorCisjZW5k
aWYK
</data>
<flag name="commit-queue"
          id="435027"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417337</attachid>
            <date>2021-01-08 23:25:15 -0800</date>
            <delta_ts>2021-01-08 23:25:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220493-20210108232514.patch</filename>
            <type>text/plain</type>
            <size>22494</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDMxMGRmY2JiNWFmYWMwZTQz
Y2ZlNTE1MzU0Nzg0ZTgxYjgxNmQ4YzcuLjM0NjE5ZDA0ZmFmODEwOTVkZGRkOWFhNzU1ZDliMTUy
MjIwMzRlZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzIgQEAKKzIwMjEtMDEtMDggIEplciBOb2Js
ZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBTdXBwb3J0IGtleSBy
b3RhdGlvbiB3aXRoIEhMUy1iYWNrZWQgZW5jcnlwdGVkIG1lZGlhIHN0cmVhbXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDQ5MworICAgICAgICA8
cmRhcjovLzY4MjI3NzA5PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFN1cHBvcnQgaGFuZGxpbmcgdGhlICJ1bmV4cGVjdGVkSW5pdGlhbGl6YXRpb25E
YXRhUmVjZWl2ZWQoKSIgY2xpZW50IGNhbGxiYWNrIGZyb20gd2l0aGluIHRoZSBHUFVQLgorCisg
ICAgICAgICogRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdDoKKyAgICAgICAgKiBEZXJp
dmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdDoKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5t
YWtlOgorICAgICAgICAqIEdQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5j
cHA6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUNETUluc3RhbmNlUHJveHk6OmNyZWF0ZSk6Cisg
ICAgICAgIChXZWJLaXQ6OlJlbW90ZUNETUluc3RhbmNlUHJveHk6OlJlbW90ZUNETUluc3RhbmNl
UHJveHkpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVDRE1JbnN0YW5jZVByb3h5Ojp+UmVtb3Rl
Q0RNSW5zdGFuY2VQcm94eSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUNETUluc3RhbmNlUHJv
eHk6OnVucmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2ZWQpOgorICAgICAgICAqIEdQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5oOgorICAgICAgICAqIEdQVVBy
b2Nlc3MvbWVkaWEvUmVtb3RlQ0RNUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVD
RE1Qcm94eTo6Y3JlYXRlSW5zdGFuY2UpOgorICAgICAgICAqIFdlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUlu
c3RhbmNlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5zdGFuY2U6OlJlbW90ZUNE
TUluc3RhbmNlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5zdGFuY2U6On5SZW1vdGVD
RE1JbnN0YW5jZSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUNETUluc3RhbmNlOjp1bnJlcXVl
c3RlZEluaXRpYWxpemF0aW9uRGF0YVJlY2VpdmVkKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0dQ
VS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvR1BVL21l
ZGlhL1JlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2VzLmluOiBBZGRlZC4KKwogMjAyMS0wMS0wOCAg
SmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBOZXRmbGl4
IGNvbnRyb2xzIGRvIG5vdCBmYWRlIG91dCBhZnRlciBlbnRlcmluZyBmdWxsc2NyZWVuCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYktpdC9DTWFr
ZUxpc3RzLnR4dAppbmRleCBjMGNhODZmMTM5OTNiYjkzMzQyMmU1M2NlZTc2MWYyNGI2ZjUwZTY1
Li5jYmNhOGQzMzg4YzU4MjliNzQyNzIyZTc0OTlmOTM2OWZiM2MzMDg1IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvQ01ha2VMaXN0
cy50eHQKQEAgLTIyOCw2ICsyMjgsNyBAQCBzZXQoV2ViS2l0X01FU1NBR0VTX0lOX0ZJTEVTCiAg
ICAgV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlCiAgICAgV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9TZXNzaW9uCiAgICAgV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvUmVtb3RlQXVkaW9Tb3VyY2VQcm92aWRlck1hbmFnZXIKKyAgICBXZWJQcm9jZXNzL0dQ
VS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZQogICAgIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUNETUluc3RhbmNlU2Vzc2lvbgogICAgIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUxlZ2Fj
eUNETVNlc3Npb24KICAgICBXZWJQcm9jZXNzL0dQVS9tZWRpYS9Tb3VyY2VCdWZmZXJQcml2YXRl
UmVtb3RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLWlucHV0Lnhj
ZmlsZWxpc3QgYi9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QK
aW5kZXggMTY2YjI5YjJmNzc5OTQ2Y2FjMjdkNjU3NTc1OTYwMWVmNTY4NGYyZC4uMjNhZDQwNzgw
ZDM2NTdiYzg5YWE4MmIxNGNmMzc3MGEzMjZkZDQwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJLaXQvRGVy
aXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApAQCAtMTQzLDYgKzE0Myw3IEBAICQoUFJPSkVD
VF9ESVIpL1dlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5tZXNz
YWdlcy5pbgogJChQUk9KRUNUX0RJUikvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3VyY2VQ
cml2YXRlUmVtb3RlLm1lc3NhZ2VzLmluCiAkKFBST0pFQ1RfRElSKS9XZWJQcm9jZXNzL0dQVS9t
ZWRpYS9SZW1vdGVBdWRpb1Nlc3Npb24ubWVzc2FnZXMuaW4KICQoUFJPSkVDVF9ESVIpL1dlYlBy
b2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvU291cmNlUHJvdmlkZXJNYW5hZ2VyLm1lc3NhZ2Vz
LmluCiskKFBST0pFQ1RfRElSKS9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5j
ZS5tZXNzYWdlcy5pbgogJChQUk9KRUNUX0RJUikvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3Rl
Q0RNSW5zdGFuY2VTZXNzaW9uLm1lc3NhZ2VzLmluCiAkKFBST0pFQ1RfRElSKS9XZWJQcm9jZXNz
L0dQVS9tZWRpYS9SZW1vdGVMZWdhY3lDRE1TZXNzaW9uLm1lc3NhZ2VzLmluCiAkKFBST0pFQ1Rf
RElSKS9XZWJQcm9jZXNzL0dQVS9tZWRpYS9Tb3VyY2VCdWZmZXJQcml2YXRlUmVtb3RlLm1lc3Nh
Z2VzLmluCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54
Y2ZpbGVsaXN0IGIvU291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlz
dAppbmRleCAxZTI0YThmNWEwYjQ5MDczNTNiOTk1YzY3MDU4NWYyZGM1NzgwNzEzLi4wNjU1NzU1
OTUzMDgzMGQ2MzJhNTY3N2IzZWJlZWQ3MDdmYmUyYzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJLaXQv
RGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QKQEAgLTE2Miw2ICsxNjIsOSBAQCAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVBdWRpb1RyYWNr
UHJveHlNZXNzYWdlc1JlcGxpZQogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2Vz
L1dlYktpdDIvUmVtb3RlQ0RNRmFjdG9yeVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcAogJChCVUlM
VF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNRmFjdG9yeVBy
b3h5TWVzc2FnZXMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktp
dDIvUmVtb3RlQ0RNRmFjdG9yeVByb3h5TWVzc2FnZXNSZXBsaWVzLmgKKyQoQlVJTFRfUFJPRFVD
VFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJLaXQyL1JlbW90ZUNETUluc3RhbmNlTWVzc2FnZVJl
Y2VpdmVyLmNwcAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIv
UmVtb3RlQ0RNSW5zdGFuY2VNZXNzYWdlcy5oCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZl
ZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VzUmVwbGllcy5oCiAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVDRE1JbnN0YW5j
ZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRT
b3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eU1lc3NhZ2VzLmgKICQoQlVJTFRf
UFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJLaXQyL1JlbW90ZUNETUluc3RhbmNlUHJv
eHlNZXNzYWdlc1JlcGxpZXMuaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9EZXJpdmVkU291
cmNlcy5tYWtlIGIvU291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGM5MTZm
NjU5MzZhZDAwNzdlNDBlODFhNzE4YWYyMmNjNTFkZDdkNGYuLmM3YTUwOTRiMjQyYjQwZmI5MjEw
ZDkwM2MzZGM4Y2ZhMDcyYjQyZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvRGVyaXZlZFNv
dXJjZXMubWFrZQorKysgYi9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTE4
MCw2ICsxODAsNyBAQCBNRVNTQUdFX1JFQ0VJVkVSUyA9IFwKIAlXZWJQcm9jZXNzL0dQVS9tZWRp
YS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUgXAogCVdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUF1ZGlvU2Vzc2lvbiBcCiAJV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9Tb3VyY2VQ
cm92aWRlck1hbmFnZXIgXAorCVdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNl
IFwKIAlXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVNlc3Npb24gXAogCVdl
YlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUxlZ2FjeUNETVNlc3Npb24gXAogCVdlYlByb2Nlc3Mv
R1BVL21lZGlhL1NvdXJjZUJ1ZmZlclByaXZhdGVSZW1vdGUgXApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuY3BwIGIvU291
cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuY3BwCmlu
ZGV4IDFiNDBhYjViMDA0N2VkNjE0ZTdjOTRiNTlhOWE3NzUxMmYzYmM2MjAuLmViYjhlNWZmMDI4
Yzg1ZjZmNTYzNGEwMjEwMjU3MGQxMTY0MDBjY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVByb3h5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5jcHAKQEAgLTI5
LDYgKzI5LDcgQEAKICNpZiBFTkFCTEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShFTkNSWVBURURf
TUVESUEpCiAKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24uaCIKKyNp
bmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RN
SW5zdGFuY2VTZXNzaW9uUHJveHkuaCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXJDb3B5LmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9DRE1JbnN0YW5jZS5oPgpAQCAtMzcsMjIgKzM4LDM2IEBAIG5hbWVz
cGFjZSBXZWJLaXQgewogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotc3RkOjp1bmlxdWVf
cHRyPFJlbW90ZUNETUluc3RhbmNlUHJveHk+IFJlbW90ZUNETUluc3RhbmNlUHJveHk6OmNyZWF0
ZShXZWFrUHRyPFJlbW90ZUNETVByb3h5PiYmIGNkbSwgUmVmPENETUluc3RhbmNlPiYmIHByaXYp
CitzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5zdGFuY2VQcm94eT4gUmVtb3RlQ0RNSW5zdGFu
Y2VQcm94eTo6Y3JlYXRlKFdlYWtQdHI8UmVtb3RlQ0RNUHJveHk+JiYgY2RtLCBSZWY8Q0RNSW5z
dGFuY2U+JiYgcHJpdiwgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7
CiAgICAgYXV0byBjb25maWd1cmF0aW9uID0gbWFrZVVuaXF1ZVJlZldpdGhvdXRGYXN0TWFsbG9j
Q2hlY2s8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uLCBSZW1vdGVDRE1JbnN0YW5jZUNv
bmZpZ3VyYXRpb24mJj4oewogICAgICAgICBwcml2LT5rZXlTeXN0ZW0oKSwKICAgICB9KTsKLSAg
ICByZXR1cm4gc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUNETUluc3RhbmNlUHJveHk+KG5ldyBSZW1v
dGVDRE1JbnN0YW5jZVByb3h5KFdURk1vdmUoY2RtKSwgV1RGTW92ZShwcml2KSwgV1RGTW92ZShj
b25maWd1cmF0aW9uKSkpOworICAgIHJldHVybiBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5z
dGFuY2VQcm94eT4obmV3IFJlbW90ZUNETUluc3RhbmNlUHJveHkoV1RGTW92ZShjZG0pLCBXVEZN
b3ZlKHByaXYpLCBXVEZNb3ZlKGNvbmZpZ3VyYXRpb24pLCBpZGVudGlmaWVyKSk7CiB9CiAKLVJl
bW90ZUNETUluc3RhbmNlUHJveHk6OlJlbW90ZUNETUluc3RhbmNlUHJveHkoV2Vha1B0cjxSZW1v
dGVDRE1Qcm94eT4mJiBjZG0sIFJlZjxDRE1JbnN0YW5jZT4mJiBwcml2LCBVbmlxdWVSZWY8UmVt
b3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uPiYmIGNvbmZpZ3VyYXRpb24pCitSZW1vdGVDRE1J
bnN0YW5jZVByb3h5OjpSZW1vdGVDRE1JbnN0YW5jZVByb3h5KFdlYWtQdHI8UmVtb3RlQ0RNUHJv
eHk+JiYgY2RtLCBSZWY8Q0RNSW5zdGFuY2U+JiYgcHJpdiwgVW5pcXVlUmVmPFJlbW90ZUNETUlu
c3RhbmNlQ29uZmlndXJhdGlvbj4mJiBjb25maWd1cmF0aW9uLCBSZW1vdGVDRE1JbnN0YW5jZUlk
ZW50aWZpZXIgaWRlbnRpZmllcikKICAgICA6IG1fY2RtKFdURk1vdmUoY2RtKSkKICAgICAsIG1f
aW5zdGFuY2UoV1RGTW92ZShwcml2KSkKICAgICAsIG1fY29uZmlndXJhdGlvbihXVEZNb3ZlKGNv
bmZpZ3VyYXRpb24pKQorICAgICwgbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiB7CisgICAgbV9p
bnN0YW5jZS0+c2V0Q2xpZW50KG1ha2VXZWFrUHRyPENETUluc3RhbmNlQ2xpZW50Pih0aGlzKSk7
CiB9CiAKLVJlbW90ZUNETUluc3RhbmNlUHJveHk6On5SZW1vdGVDRE1JbnN0YW5jZVByb3h5KCkg
PSBkZWZhdWx0OworUmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6flJlbW90ZUNETUluc3RhbmNlUHJv
eHkoKQoreworICAgIG1faW5zdGFuY2UtPmNsZWFyQ2xpZW50KCk7Cit9CisKK3ZvaWQgUmVtb3Rl
Q0RNSW5zdGFuY2VQcm94eTo6dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChj
b25zdCBTdHJpbmcmIHR5cGUsIFJlZjxTaGFyZWRCdWZmZXI+JiYgaW5pdERhdGEpCit7CisgICAg
aWYgKCFtX2NkbSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGF1dG8qIGZhY3RvcnkgPSBt
X2NkbS0+ZmFjdG9yeSgpKQorICAgICAgICBmYWN0b3J5LT5ncHVDb25uZWN0aW9uVG9XZWJQcm9j
ZXNzKCkuY29ubmVjdGlvbigpLnNlbmQoTWVzc2FnZXM6OlJlbW90ZUNETUluc3RhbmNlOjpVbnJl
cXVlc3RlZEluaXRpYWxpemF0aW9uRGF0YVJlY2VpdmVkKHR5cGUsIFdURk1vdmUoaW5pdERhdGEp
KSwgbV9pZGVudGlmaWVyKTsKK30KIAogdm9pZCBSZW1vdGVDRE1JbnN0YW5jZVByb3h5Ojppbml0
aWFsaXplV2l0aENvbmZpZ3VyYXRpb24oY29uc3QgV2ViQ29yZTo6Q0RNS2V5U3lzdGVtQ29uZmln
dXJhdGlvbiYgY29uZmlndXJhdGlvbiwgQWxsb3dEaXN0aW5jdGl2ZUlkZW50aWZpZXJzIGFsbG93
RGlzdGluY3RpdmVJZGVudGlmaWVycywgQWxsb3dQZXJzaXN0ZW50U3RhdGUgYWxsb3dQZXJzaXN0
ZW50U3RhdGUsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoU3VjY2Vzc1ZhbHVlKT4mJiBjb21wbGV0
aW9uKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90
ZUNETUluc3RhbmNlUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVDRE1JbnN0YW5jZVByb3h5LmgKaW5kZXggNTE0YTMwNjVhOThjYzMxZWU2NDMzMzdmOWJhZDk3
NDg0YjkyZmZhYi4uOTI0ZWFkZDUzNzJjYTI1YTEyMWIyNWZkYTg2NmEyYWNlYmI0N2U1YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNl
UHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNSW5z
dGFuY2VQcm94eS5oCkBAIC01MCw5ICs1MCw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogc3RydWN0
IFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbjsKIGNsYXNzIFJlbW90ZUNETUluc3RhbmNl
U2Vzc2lvblByb3h5OwogCi1jbGFzcyBSZW1vdGVDRE1JbnN0YW5jZVByb3h5IDogcHJpdmF0ZSBJ
UEM6Ok1lc3NhZ2VSZWNlaXZlciAgeworY2xhc3MgUmVtb3RlQ0RNSW5zdGFuY2VQcm94eSA6IHB1
YmxpYyBXZWJDb3JlOjpDRE1JbnN0YW5jZUNsaWVudCwgcHJpdmF0ZSBJUEM6Ok1lc3NhZ2VSZWNl
aXZlciAgewogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5z
dGFuY2VQcm94eT4gY3JlYXRlKFdlYWtQdHI8UmVtb3RlQ0RNUHJveHk+JiYsIFJlZjxXZWJDb3Jl
OjpDRE1JbnN0YW5jZT4mJik7CisgICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVDRE1J
bnN0YW5jZVByb3h5PiBjcmVhdGUoV2Vha1B0cjxSZW1vdGVDRE1Qcm94eT4mJiwgUmVmPFdlYkNv
cmU6OkNETUluc3RhbmNlPiYmLCBSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIpOwogICAgIH5S
ZW1vdGVDRE1JbnN0YW5jZVByb3h5KCk7CiAKICAgICBjb25zdCBSZW1vdGVDRE1JbnN0YW5jZUNv
bmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24oKSBjb25zdCB7IHJldHVybiBtX2NvbmZpZ3VyYXRp
b24uZ2V0KCk7IH0KQEAgLTYwLDcgKzYwLDEwIEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBm
cmllbmQgY2xhc3MgUmVtb3RlQ0RNRmFjdG9yeVByb3h5OwotICAgIFJlbW90ZUNETUluc3RhbmNl
UHJveHkoV2Vha1B0cjxSZW1vdGVDRE1Qcm94eT4mJiwgUmVmPFdlYkNvcmU6OkNETUluc3RhbmNl
PiYmLCBVbmlxdWVSZWY8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uPiYmKTsKKyAgICBS
ZW1vdGVDRE1JbnN0YW5jZVByb3h5KFdlYWtQdHI8UmVtb3RlQ0RNUHJveHk+JiYsIFJlZjxXZWJD
b3JlOjpDRE1JbnN0YW5jZT4mJiwgVW5pcXVlUmVmPFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJh
dGlvbj4mJiwgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyKTsKKworICAgIC8vIENETUluc3Rh
bmNlQ2xpZW50CisgICAgdm9pZCB1bnJlcXVlc3RlZEluaXRpYWxpemF0aW9uRGF0YVJlY2VpdmVk
KGNvbnN0IFN0cmluZyYsIFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYpIGZpbmFsOwogCiAg
ICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIKICAgICB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlKElQ
Qzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIGZpbmFsOwpAQCAtNzksNiArODIsNyBAQCBw
cml2YXRlOgogICAgIFdlYWtQdHI8UmVtb3RlQ0RNUHJveHk+IG1fY2RtOwogICAgIFJlZjxXZWJD
b3JlOjpDRE1JbnN0YW5jZT4gbV9pbnN0YW5jZTsKICAgICBVbmlxdWVSZWY8UmVtb3RlQ0RNSW5z
dGFuY2VDb25maWd1cmF0aW9uPiBtX2NvbmZpZ3VyYXRpb247CisgICAgUmVtb3RlQ0RNSW5zdGFu
Y2VJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBIYXNoTWFwPFJlbW90ZUNETUluc3RhbmNl
U2Vzc2lvbklkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVDRE1JbnN0YW5jZVNlc3Np
b25Qcm94eT4+IG1fc2Vzc2lvbnM7CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQ
VVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9j
ZXNzL21lZGlhL1JlbW90ZUNETVByb3h5LmNwcAppbmRleCAwNTEwNjYzM2Y4ZTdiMTJlZjA5ZmRj
N2Q1N2FkNTlkZjk3MjllNzNiLi5lODVlMDEzOGE4ODY3MDQ4YjUxMmNhNGQ5ZTFlMmY2ZGUwNzlm
MDU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RN
UHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Q
cm94eS5jcHAKQEAgLTkwLDggKzkwLDggQEAgdm9pZCBSZW1vdGVDRE1Qcm94eTo6Y3JlYXRlSW5z
dGFuY2UoQ29tcGxldGlvbkhhbmRsZXI8dm9pZChSZW1vdGVDRE1JbnN0YW5jZUlkZW4KICAgICAg
ICAgY29tcGxldGlvbih7IH0sIHsgfSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgYXV0
byBpbnN0YW5jZSA9IFJlbW90ZUNETUluc3RhbmNlUHJveHk6OmNyZWF0ZShtYWtlV2Vha1B0cih0
aGlzKSwgcHJpdmF0ZUluc3RhbmNlLnJlbGVhc2VOb25OdWxsKCkpOwogICAgIGF1dG8gaWRlbnRp
ZmllciA9IFJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKKyAgICBhdXRv
IGluc3RhbmNlID0gUmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6Y3JlYXRlKG1ha2VXZWFrUHRyKHRo
aXMpLCBwcml2YXRlSW5zdGFuY2UucmVsZWFzZU5vbk51bGwoKSwgaWRlbnRpZmllcik7CiAgICAg
UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24gPSBpbnN0YW5jZS0+
Y29uZmlndXJhdGlvbigpOwogICAgIG1fZmFjdG9yeS0+YWRkSW5zdGFuY2UoaWRlbnRpZmllciwg
V1RGTW92ZShpbnN0YW5jZSkpOwogICAgIGNvbXBsZXRpb24oaWRlbnRpZmllciwgV1RGTW92ZShj
b25maWd1cmF0aW9uKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagppbmRleCA3MjVhYjZhMThlY2MyN2YzOWFjYzRjNTU4NDlmMTk0OThkNTM4OWQy
Li5mNjY1NTYyOTExMzRkOWRlODJjZDlhYWRiMTAzNzhjYjRjOTIzM2MyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE4NjAsNiArMTg2
MCw3IEBACiAJCUNEQTI5QTI5MUNCRUI2N0EwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5h
Z2VyTWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IENEQTI5QTI1MUNCRUI2N0EwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVz
c2FnZXMuaCAqLzsgfTsKIAkJQ0RBMjlBMkExQ0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vz
c2lvbk1hbmFnZXJQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREEyOUEyNjFDQkVCNjdBMDA5MDFDQ0YgLyogUGxh
eWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJQ0RB
MjlBMkIxQ0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eU1lc3Nh
Z2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREEy
OUEyNzFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2Fn
ZXMuaCAqLzsgfTsKKwkJQ0RBNkQ0NTEyNUE5ODlDNzAwNEIxREY2IC8qIFJlbW90ZUNETUluc3Rh
bmNlTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENEQTZENDUwMjVBOTg5QUMwMDRCMURGNiAvKiBSZW1vdGVDRE1JbnN0YW5j
ZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CiAJCUNEQTkzREIwMjJGOEJDRjQwMDQ5MEE2OSAv
KiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREE5M0RBRTIyRjhCQ0YzMDA0OTBBNjkg
LyogRnVsbHNjcmVlblRvdWNoU2VjaGV1cmlzdGljUGFyYW1ldGVycy5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUNEQTkzREIxMjJGOEJDRjQwMDQ5
MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJzLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQTkzREFGMjJGOEJDRjQw
MDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJzLmNwcCAqLzsg
fTsKIAkJQ0RBQzIwQjQyM0ZCNThGMjAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlUHJveHku
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQUMyMEIy
MjNGQjU4RjIwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZVByb3h5LmggKi87IH07CkBAIC01
NTIyLDYgKzU1MjMsOSBAQAogCQlDREEyOUEyNTFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tT
ZXNzaW9uTWFuYWdlck1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJNZXNzYWdlcy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMv
V2ViS2l0Mi9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9IEJV
SUxUX1BST0RVQ1RTX0RJUjsgfTsKIAkJQ0RBMjlBMjYxQ0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXli
YWNrU2Vzc2lvbk1hbmFnZXJQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHlNZXNzYWdl
UmVjZWl2ZXIuY3BwOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9QbGF5YmFja1Nlc3Np
b25NYW5hZ2VyUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJP
RFVDVFNfRElSOyB9OwogCQlDREEyOUEyNzFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNz
aW9uTWFuYWdlclByb3h5TWVzc2FnZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1l
ID0gUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZXMuaDsgcGF0aCA9IERlcml2ZWRT
b3VyY2VzL1dlYktpdDIvUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZXMuaDsgc291
cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsKKwkJQ0RBNkQ0NEQyNUE5NzE1ODAwNEIx
REY2IC8qIFJlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2VzLmluICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJlbW90ZUNETUluc3Rh
bmNlLm1lc3NhZ2VzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREE2RDQ0RjI1
QTk4OUFDMDA0QjFERjYgLyogUmVtb3RlQ0RNSW5zdGFuY2VNZXNzYWdlcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUNEQTZENDUwMjVBOTg5QUMwMDRCMURGNiAvKiBSZW1v
dGVDRE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNEQTkzREFFMjJGOEJDRjMwMDQ5MEE2OSAvKiBGdWxs
c2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEZ1bGxz
Y3JlZW5Ub3VjaFNlY2hldXJpc3RpY1BhcmFtZXRlcnMuaDsgcGF0aCA9IGlvcy9mdWxsc2NyZWVu
L0Z1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3RpY1BhcmFtZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQ0RBOTNEQUYyMkY4QkNGNDAwNDkwQTY5IC8qIEZ1bGxzY3JlZW5Ub3Vj
aFNlY2hldXJpc3RpY1BhcmFtZXRlcnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRnVsbHNjcmVl
blRvdWNoU2VjaGV1cmlzdGljUGFyYW1ldGVycy5jcHA7IHBhdGggPSBpb3MvZnVsbHNjcmVlbi9G
dWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJzLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQ0RBOTU5M0EyNDEyQjE3NTAwOTEwRUVGIC8qIFJlbW90ZU1lZGlhU2Vz
c2lvbkhlbHBlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW1vdGVNZWRpYVNlc3Npb25IZWxw
ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNTk1OSw2ICs1OTYzLDcgQEAK
IAkJCQlDREFDMjBDMjIzRkMyRjc1MDAyMURFRTMgLyogUmVtb3RlQ0RNSWRlbnRpZmllci5oICov
LAogCQkJCUNEQUMyMEJCMjNGQzJGNzQwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZS5jcHAg
Ki8sCiAJCQkJQ0RBQzIwQjcyM0ZDMkY3MzAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlLmgg
Ki8sCisJCQkJQ0RBNkQ0NEQyNUE5NzE1ODAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlLm1l
c3NhZ2VzLmluICovLAogCQkJCUNEQUMyMEMxMjNGQzJGNzUwMDIxREVFMyAvKiBSZW1vdGVDRE1J
bnN0YW5jZUNvbmZpZ3VyYXRpb24uaCAqLywKIAkJCQlDREFDMjBCNjIzRkMyRjczMDAyMURFRTMg
LyogUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyLmggKi8sCiAJCQkJQ0RBQzIwQkUyM0ZDMkY3
NDAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlU2Vzc2lvbi5jcHAgKi8sCkBAIC0xMDc1OSw2
ICsxMDc2NCw4IEBACiAJCQkJQ0RBQzIwRjIyM0ZDMzgzQTAwMjFERUUzIC8qIFJlbW90ZUNETUZh
Y3RvcnlQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8sCiAJCQkJQ0RBQzIwRjMyM0ZDMzgzQTAw
MjFERUUzIC8qIFJlbW90ZUNETUZhY3RvcnlQcm94eU1lc3NhZ2VzLmggKi8sCiAJCQkJQ0RBQzIw
RUUyM0ZDMzgzOTAwMjFERUUzIC8qIFJlbW90ZUNETUZhY3RvcnlQcm94eU1lc3NhZ2VzUmVwbGll
cy5oICovLAorCQkJCUNEQTZENDUwMjVBOTg5QUMwMDRCMURGNiAvKiBSZW1vdGVDRE1JbnN0YW5j
ZU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8sCisJCQkJQ0RBNkQ0NEYyNUE5ODlBQzAwNEIxREY2IC8q
IFJlbW90ZUNETUluc3RhbmNlTWVzc2FnZXMuaCAqLywKIAkJCQlDREFDMjBGNTIzRkMzODNCMDAy
MURFRTMgLyogUmVtb3RlQ0RNSW5zdGFuY2VQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8sCiAJ
CQkJQ0RBQzIwRUIyM0ZDMzgzODAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlUHJveHlNZXNz
YWdlcy5oICovLAogCQkJCUNEQUMyMEY2MjNGQzM4M0IwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0
YW5jZVByb3h5TWVzc2FnZXNSZXBsaWVzLmggKi8sCkBAIC0xMzc2OCw2ICsxMzc3NSw3IEBACiAJ
CQkJMkQxMUI3NjQyMTI2QTI4MjAwNkY4ODc4IC8qIFVuaWZpZWRTb3VyY2UxMC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQkyRDExQjc2MzIxMjZBMjgyMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTEw
LW1tLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQxMUI3NjUyMTI2QTI4MjAwNkY4ODc4IC8qIFVu
aWZpZWRTb3VyY2UxMS1tbS5tbSBpbiBTb3VyY2VzICovLAorCQkJCUNEQTZENDUxMjVBOTg5Qzcw
MDRCMURGNiAvKiBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkyRDExQjc2NjIxMjZBMjgyMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTExLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTJEMTFCNzY3MjEyNkEyODIwMDZGODg3OCAvKiBVbmlmaWVk
U291cmNlMTItbW0ubW0gaW4gU291cmNlcyAqLywKIAkJCQkyRDExQjc2ODIxMjZBMjgyMDA2Rjg4
NzggLyogVW5pZmllZFNvdXJjZTEyLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5jcHAgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmNwcApp
bmRleCA1OTQ0ZGMwZGQzNThmNjg5NDgwMzM5ZTRlMjIyOTdjOWUyZjRlMTA0Li5lZGM4OTRlZTkz
M2I4ZWFjNjE4ZDlhNWY2OTc2ZTljNGQyODM4NjgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmNwcApAQCAtMjks
NiArMjksNyBAQAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9N
RURJQSkKIAogI2luY2x1ZGUgIkdQVVByb2Nlc3NDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiUmVt
b3RlQ0RNSW5zdGFuY2VNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlUHJv
eHlNZXNzYWdlcy5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlU2Vzc2lvbi5oIgogI2lu
Y2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlU2Vzc2lvbklkZW50aWZpZXIuaCIKQEAgLTUxLDYgKzUy
LDIwIEBAIFJlbW90ZUNETUluc3RhbmNlOjpSZW1vdGVDRE1JbnN0YW5jZShXZWFrUHRyPFJlbW90
ZUNETUZhY3Rvcnk+JiYgZmFjdG9yeSwgUmVtb3RlCiAgICAgLCBtX2lkZW50aWZpZXIoV1RGTW92
ZShpZGVudGlmaWVyKSkKICAgICAsIG1fY29uZmlndXJhdGlvbihXVEZNb3ZlKGNvbmZpZ3VyYXRp
b24pKQogeworICAgIGlmIChtX2ZhY3RvcnkpCisgICAgICAgIG1fZmFjdG9yeS0+Z3B1UHJvY2Vz
c0Nvbm5lY3Rpb24oKS5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVz
c2FnZXM6OlJlbW90ZUNETUluc3RhbmNlOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1faWRlbnRp
Zmllci50b1VJbnQ2NCgpLCAqdGhpcyk7Cit9CisKK1JlbW90ZUNETUluc3RhbmNlOjp+UmVtb3Rl
Q0RNSW5zdGFuY2UoKQoreworICAgIGlmIChtX2ZhY3RvcnkpCisgICAgICAgIG1fZmFjdG9yeS0+
Z3B1UHJvY2Vzc0Nvbm5lY3Rpb24oKS5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5yZW1vdmVNZXNzYWdl
UmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90ZUNETUluc3RhbmNlOjptZXNzYWdlUmVjZWl2ZXJOYW1l
KCksIG1faWRlbnRpZmllci50b1VJbnQ2NCgpKTsKK30KKwordm9pZCBSZW1vdGVDRE1JbnN0YW5j
ZTo6dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChjb25zdCBTdHJpbmcmIHR5
cGUsIElQQzo6U2hhcmVkQnVmZmVyQ29weSYmIGluaXREYXRhKQoreworICAgIGlmIChtX2NsaWVu
dCAmJiBpbml0RGF0YS5idWZmZXIoKSkKKyAgICAgICAgbV9jbGllbnQtPnVucmVxdWVzdGVkSW5p
dGlhbGl6YXRpb25EYXRhUmVjZWl2ZWQodHlwZSwgaW5pdERhdGEuYnVmZmVyKCkucmVsZWFzZU5v
bk51bGwoKSk7CiB9CiAKIHZvaWQgUmVtb3RlQ0RNSW5zdGFuY2U6OmluaXRpYWxpemVXaXRoQ29u
ZmlndXJhdGlvbihjb25zdCBXZWJDb3JlOjpDRE1LZXlTeXN0ZW1Db25maWd1cmF0aW9uJiBjb25m
aWd1cmF0aW9uLCBBbGxvd0Rpc3RpbmN0aXZlSWRlbnRpZmllcnMgZGlzdGluY3RpdmVJZGVudGlm
aWVycywgQWxsb3dQZXJzaXN0ZW50U3RhdGUgcGVyc2lzdGVudFN0YXRlLCBTdWNjZXNzQ2FsbGJh
Y2smJiBjYWxsYmFjaykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UuaAppbmRleCA4OTVmNDliOTczOWQyNDc5ZDU1NWRmOGZi
MDI3ZWRmZWNhOWMzNDA0Li4xMDZiYTNiMTE2MWM4ZGYwOWQ3MWRmZTY3OWJhMzNkNDIzMDc5ZTk2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNE
TUluc3RhbmNlLmgKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1v
dGVDRE1JbnN0YW5jZS5oCkBAIC0yNywxNiArMjcsMTggQEAKIAogI2lmIEVOQUJMRShHUFVfUFJP
Q0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKIAorI2luY2x1ZGUgIk1lc3NhZ2VSZWNl
aXZlci5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUZhY3RvcnkuaCIKICNpbmNsdWRlICJSZW1vdGVD
RE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24uaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUlk
ZW50aWZpZXIuaCIKKyNpbmNsdWRlICJTaGFyZWRCdWZmZXJDb3B5LmgiCiAjaW5jbHVkZSA8V2Vi
Q29yZS9DRE1JbnN0YW5jZS5oPgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotY2xhc3MgUmVtb3Rl
Q0RNSW5zdGFuY2UgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Q0RNSW5zdGFuY2UgeworY2xhc3Mg
UmVtb3RlQ0RNSW5zdGFuY2UgZmluYWwgOiBwdWJsaWMgV2ViQ29yZTo6Q0RNSW5zdGFuY2UsIHBy
aXZhdGUgSVBDOjpNZXNzYWdlUmVjZWl2ZXIgewogcHVibGljOgotICAgIHZpcnR1YWwgflJlbW90
ZUNETUluc3RhbmNlKCkgPSBkZWZhdWx0OworICAgIHZpcnR1YWwgflJlbW90ZUNETUluc3RhbmNl
KCk7CiAgICAgc3RhdGljIFJlZjxSZW1vdGVDRE1JbnN0YW5jZT4gY3JlYXRlKFdlYWtQdHI8UmVt
b3RlQ0RNRmFjdG9yeT4mJiwgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyJiYsIFJlbW90ZUNE
TUluc3RhbmNlQ29uZmlndXJhdGlvbiYmKTsKIAogICAgIGNvbnN0IFJlbW90ZUNETUluc3RhbmNl
SWRlbnRpZmllciYgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQpA
QCAtNDQsMTYgKzQ2LDI1IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgUmVtb3RlQ0RNSW5zdGFu
Y2UoV2Vha1B0cjxSZW1vdGVDRE1GYWN0b3J5PiYmLCBSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZp
ZXImJiwgUmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uJiYpOwogCisgICAgLy8gSVBDOjpN
ZXNzYWdlUmVjZWl2ZXIKKyAgICB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlv
biYsIElQQzo6RGVjb2RlciYpIGZpbmFsOworCisgICAgLy8gTWVzc2FnZXMKKyAgICB2b2lkIHVu
cmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2ZWQoY29uc3QgU3RyaW5nJiwgSVBDOjpT
aGFyZWRCdWZmZXJDb3B5JiYpOworCiAgICAgSW1wbGVtZW50YXRpb25UeXBlIGltcGxlbWVudGF0
aW9uVHlwZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIEltcGxlbWVudGF0aW9uVHlwZTo6UmVtb3Rl
OyB9CiAgICAgdm9pZCBpbml0aWFsaXplV2l0aENvbmZpZ3VyYXRpb24oY29uc3QgV2ViQ29yZTo6
Q0RNS2V5U3lzdGVtQ29uZmlndXJhdGlvbiYsIEFsbG93RGlzdGluY3RpdmVJZGVudGlmaWVycywg
QWxsb3dQZXJzaXN0ZW50U3RhdGUsIFN1Y2Nlc3NDYWxsYmFjayYmKSBmaW5hbDsKICAgICB2b2lk
IHNldFNlcnZlckNlcnRpZmljYXRlKFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYsIFN1Y2Nl
c3NDYWxsYmFjayYmKSBmaW5hbDsKICAgICB2b2lkIHNldFN0b3JhZ2VEaXJlY3RvcnkoY29uc3Qg
U3RyaW5nJikgZmluYWw7CiAgICAgY29uc3QgU3RyaW5nJiBrZXlTeXN0ZW0oKSBjb25zdCBmaW5h
bCB7IHJldHVybiBtX2NvbmZpZ3VyYXRpb24ua2V5U3lzdGVtOyB9CiAgICAgUmVmUHRyPFdlYkNv
cmU6OkNETUluc3RhbmNlU2Vzc2lvbj4gY3JlYXRlU2Vzc2lvbigpIGZpbmFsOworICAgIHZvaWQg
c2V0Q2xpZW50KFdlYWtQdHI8V2ViQ29yZTo6Q0RNSW5zdGFuY2VDbGllbnQ+JiYgY2xpZW50KSBm
aW5hbCB7IG1fY2xpZW50ID0gV1RGTW92ZShjbGllbnQpOyB9CisgICAgdm9pZCBjbGVhckNsaWVu
dCgpIGZpbmFsIHsgbV9jbGllbnQuY2xlYXIoKTsgfQogCiAgICAgV2Vha1B0cjxSZW1vdGVDRE1G
YWN0b3J5PiBtX2ZhY3Rvcnk7CiAgICAgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyIG1faWRl
bnRpZmllcjsKICAgICBSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24gbV9jb25maWd1cmF0
aW9uOworICAgIFdlYWtQdHI8V2ViQ29yZTo6Q0RNSW5zdGFuY2VDbGllbnQ+IG1fY2xpZW50Owog
fTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9S
ZW1vdGVDRE1JbnN0YW5jZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9H
UFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2FnZXMuaW4KbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2QzNTVj
MWEyZTcwNmYwY2MzMzExYWQ1MDIzNDY2MmRjMjdiYTQwZAotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2Fn
ZXMuaW4KQEAgLTAsMCArMSwzMCBAQAorIyBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBt
ZXQ6CisjIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisjICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFy
eSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorIyAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisjIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
IyBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisjIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworIyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisjIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCisjIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworIyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FV
U0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorIyBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKQorIyBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisjIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKworI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkK
KworbWVzc2FnZXMgLT4gUmVtb3RlQ0RNSW5zdGFuY2UgTm90UmVmQ291bnRlZCB7CisgICAgVW5y
ZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChTdHJpbmcgdHlwZSwgSVBDOjpTaGFy
ZWRCdWZmZXJDb3B5IGluaXREYXRhKQorfQorCisjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417338</attachid>
            <date>2021-01-08 23:25:44 -0800</date>
            <delta_ts>2021-01-11 11:48:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220493-20210108232543.patch</filename>
            <type>text/plain</type>
            <size>32619</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQ5NTBlNDNkOTNlZDc1
OGFhMTBiM2FmOGRkZGZlYzRkODA3MTgxYS4uN2NlNDVmMDNkNDJiY2MzMTJjMGYzNzljNDhkYWVm
ZDJkZjI3ZGRjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTAxLTA4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gU3VwcG9ydCBr
ZXkgcm90YXRpb24gd2l0aCBITFMtYmFja2VkIGVuY3J5cHRlZCBtZWRpYSBzdHJlYW1zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA0OTMKKyAgICAg
ICAgPHJkYXI6Ly82ODIyNzcwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBTdXBwb3J0IGtleSByb3RhdGlvbiB0aHJvdWdoIEFWQ29udGVudEtleVNl
c3Npb24gYnkgZXhwbGljaXRseSBoYW5kbGluZyB1bmV4cGVjdGVkIGtleSByZXF1ZXN0cworICAg
ICAgICBzdWJtaXR0ZWQgdGhyb3VnaCB0aGUgbmV3IC1jb250ZW50S2V5U2Vzc2lvbjpkaWRQcm92
aWRlQ29udGVudEtleVJlcXVlc3RzOmZvckluaXRpYWxpemF0aW9uRGF0YTouCisgICAgICAgIFJv
dGF0aW9uIHdhcyBwcmV2aW91c2x5IGhhbmRsZWQgaW4gdGhlIGRlbGVnYXRlIG1ldGhvZCAtY29u
dGVudEtleVNlc3Npb246ZGlkUHJvdmlkZUNvbnRlbnRLZXlSZXF1ZXN0LAorICAgICAgICBidXQg
dGhhdCBtZXRob2QgaXMgbm8gbG9uZ2VyIGNhbGxlZCBhZnRlciB0aGUgcmVwbGFjZW1lbnQgZGVs
ZWdhdGUgbWV0aG9kIHdhcyBpbXBsZW1lbnRlZCwgYW5kCisgICAgICAgIHRoYXQgbWV0aG9kIG5l
dmVyIGhhbmRsZWQgInNrZDovLyIgc3R5bGUgaW5pdGlhbGl6YXRpb24gZGF0YS4KKworICAgICAg
ICBVcGRhdGUgdGhlIGhlbHBlciBtZXRob2QsIGluaXRUeXBlRm9yUmVxdWVzdCgpLCB0byBkZXRl
Y3QgInNrZDovLyIgaWRlbnRpZmllcnMgYW5kIGNvcnJlY3RseSBpZGVudGlmeQorICAgICAgICB0
aG9zZSBzZXNzaW9ucyBhcyAic2tkIi4KKworICAgICAgICBBZGQgYSBuZXcgaGVscGVyIG1ldGhv
ZCwgaW5pdGlhbGl6YXRpb25EYXRhRm9yUmVxdWVzdCgpLCB3aGljaCB3aWxsIHBhY2thZ2UgdGhl
IEFWQ29udGVudEtleVNlc3Npb24ncworICAgICAgICBpZGVudGlmaWVyIGFzIGluaXRpYWxpemF0
aW9uIGRhdGEuCisKKyAgICAgICAgRHJpdmUtYnkgRml4OiBGaXhpbmcgdGhpcyBidWcgY2F1c2Vz
IHRoZSBkZWZhdWx0IGtleSBncm91cCB0byB1cGRhdGUgaXQncyBpZGVudGlmaWVyLCB3aGljaCBj
YXVzZXMgYW4gYXNzZXJ0CisgICAgICAgIHdoZW4gdGhlIGdyb3VwIGluIHF1ZXN0aW9uIGlzbid0
IGFueSBvZiB0aG9zZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhpc3RpbmcgTWVkaWFLZXlTZXNzaW9u
LCBzbyBoYW5kbGUgdGhhdCBjYXNlCisgICAgICAgIGV4cGxpY2l0bHkuCisKKyAgICAgICAgRHJp
dmUtYnkgRml4IDI6IFNvbWV0aW1lcywgd2hlbiBHUFVQIGlzIGVuYWJsZWQgZm9yIG1lZGlhLCB3
ZSB3aWxsIGdldCBzcHVyaW91cyBtZWRpYVBsYXllckVuZ2luZVVwZGF0ZWQoKQorICAgICAgICBj
YWxscyB3aGljaCBjYXVzZSBjZG1JbnN0YW5jZUF0dGFjaGVkKCkgdG8gYmUgY2FsbGVkIG11bHRp
cGxlIHRpbWVzIGZvciB0aGUgc2FtZSBwbGF5ZXIsIHRyaWdnZXJpbmcgYW4gQVNTRVJULgorICAg
ICAgICBJZiBjYWxsZWQgdHdpY2Ugd2l0aCB0aGUgc2FtZSBDRE0sIGp1c3QgcmV0dXJuIGVhcmx5
IHJhdGhlciB0aGFuIEFTU0VSVGluZy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VG
YWlyUGxheVN0cmVhbWluZ0FWRk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjppbml0VHlwZUZv
clJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6aW5pdGlhbGl6YXRpb25EYXRhRm9yUmVxdWVz
dCk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2Jq
Qzo6dGFrZVVuZXhwZWN0ZWRLZXlSZXF1ZXN0Rm9ySW5pdGlhbGl6YXRpb25EYXRhKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpkaWRQcm92
aWRlUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3RzKToKKyAgICAgICAgKFdlYkNvcmU6OkNETUlu
c3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpoYW5kbGVVbmV4cGVjdGVkUmVxdWVzdHMp
OgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6
Omdyb3VwU2Vzc2lvbklkZW50aWZpZXJDaGFuZ2VkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6Y2RtSW5zdGFuY2VBdHRh
Y2hlZCk6CisKIDIwMjEtMDEtMDggIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5jb20+CiAK
ICAgICAgICAgW0hBTkddIDQ5Nm1zIHRvIDEzNjBtcyBpbiBXZWJDb3JlOjpBVkF1ZGlvU2Vzc2lv
bkNhcHR1cmVEZXZpY2VNYW5hZ2VyOjpyZWZyZXNoQXVkaW9DYXB0dXJlRGV2aWNlcygpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFM
L0NoYW5nZUxvZwppbmRleCA1YWQxMTRiZjllMDE3YzlkNWFlYTM3ZmZlMWQ3NDMyZmY0OWUxMmZl
Li40NGQ1MTFmOGRkMDllMTJkMTZjNjQ3ZTYwNmI2YTZkZDA5ODU4NzA3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0wMS0wOCAgSmVyIE5vYmxlICA8amVyLm5vYmxl
QGFwcGxlLmNvbT4KKworICAgICAgICBbQ29jb2FdIFN1cHBvcnQga2V5IHJvdGF0aW9uIHdpdGgg
SExTLWJhY2tlZCBlbmNyeXB0ZWQgbWVkaWEgc3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIwNDkzCisgICAgICAgIDxyZGFyOi8vNjgyMjc3
MDk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBw
YWwvc3BpL2NvY29hL0FWRm91bmRhdGlvblNQSS5oOgorCiAyMDIxLTAxLTA1ICBKZXIgTm9ibGUg
IDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtDb2NvYV0gUmV2ZXJ0IGF1ZGlvVGlt
ZVBpdGNoQWxnb3JpdGhtIHRvICJUaW1lRG9tYWluIiBmcm9tICJTcGVjdHJhbCIKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5k
ZXggMzEwZGZjYmI1YWZhYzBlNDNjZmU1MTUzNTQ3ODRlODFiODE2ZDhjNy4uMzQ2MTlkMDRmYWY4
MTA5NWRkZGQ5YWE3NTVkOWIxNTIyMjAzNGVkOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMiBAQAor
MjAyMS0wMS0wOCAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KKworICAgICAgICBb
Q29jb2FdIFN1cHBvcnQga2V5IHJvdGF0aW9uIHdpdGggSExTLWJhY2tlZCBlbmNyeXB0ZWQgbWVk
aWEgc3RyZWFtcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjIwNDkzCisgICAgICAgIDxyZGFyOi8vNjgyMjc3MDk+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU3VwcG9ydCBoYW5kbGluZyB0aGUgInVuZXhw
ZWN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZCgpIiBjbGllbnQgY2FsbGJhY2sgZnJvbSB3
aXRoaW4gdGhlIEdQVVAuCisKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVs
aXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAg
ICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVDRE1JbnN0YW5jZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5zdGFu
Y2VQcm94eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5zdGFuY2VQcm94
eTo6UmVtb3RlQ0RNSW5zdGFuY2VQcm94eSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUNETUlu
c3RhbmNlUHJveHk6On5SZW1vdGVDRE1JbnN0YW5jZVByb3h5KToKKyAgICAgICAgKFdlYktpdDo6
UmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNl
aXZlZCk6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVByb3h5
Lmg6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Qcm94eS5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OlJlbW90ZUNETVByb3h5OjpjcmVhdGVJbnN0YW5jZSk6CisgICAgICAgICog
V2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9H
UFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVD
RE1JbnN0YW5jZTo6UmVtb3RlQ0RNSW5zdGFuY2UpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVD
RE1JbnN0YW5jZTo6flJlbW90ZUNETUluc3RhbmNlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3Rl
Q0RNSW5zdGFuY2U6OnVucmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2ZWQpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmg6CisgICAgICAg
ICogV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2FnZXMuaW46IEFk
ZGVkLgorCiAyMDIxLTAxLTA4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtNYWNdIE5ldGZsaXggY29udHJvbHMgZG8gbm90IGZhZGUgb3V0IGFmdGVyIGVudGVy
aW5nIGZ1bGxzY3JlZW4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2Nv
Y29hL0FWRm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2Ev
QVZGb3VuZGF0aW9uU1BJLmgKaW5kZXggYWU3OGIzMzAxOTFlYzJlZmM4OTg0ZGExMjJhNjc2MzA4
NjhkNGQ5Yi4uYmEyZDM1NzM4NjRmZTE4MDE0ODdhNzhmZmE3NDI0ZGU2NTk4MTYzNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgK
QEAgLTIwMCw2ICsyMDAsNyBAQCBOU19BU1NVTUVfTk9OTlVMTF9FTkQKIEBlbmQKIAogQGludGVy
ZmFjZSBBVkNvbnRlbnRLZXlTZXNzaW9uIChBVkNvbnRlbnRLZXlHcm91cF9TdXBwb3J0KQorQHBy
b3BlcnR5IChyZWFkb25seSwgbnVsbGFibGUpIEFWQ29udGVudEtleVJlcG9ydEdyb3VwICpkZWZh
dWx0Q29udGVudEtleUdyb3VwOwogLSAobm9ubnVsbCBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCAq
KW1ha2VDb250ZW50S2V5R3JvdXA7CiBAZW5kCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5oCmluZGV4
IGZiNmY1NGFhMDdlZGJiYmNlM2ExZDFiNDdhNjA5NTQ2NjhjNjFjMzEuLjYxNDY1YTE1NjdjYzA2
ODU1MjcwYTM3YmI3MzYwOTNkOTJmMzRhM2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakMuaApAQCAt
MTIwLDYgKzEyMCw4IEBAIHB1YmxpYzoKICAgICBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0
cmVhbWluZ0FWRk9iakMqIHNlc3Npb25Gb3JSZXF1ZXN0KEFWQ29udGVudEtleVJlcXVlc3QqKSBj
b25zdDsKIAogcHJpdmF0ZToKKyAgICB2b2lkIGhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0
b3I8UmV0YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYmKTsKKwogI2lmICFSRUxFQVNFX0xP
R19ESVNBQkxFRAogICAgIFdURjo6TG9nZ2VyKiBsb2dnZXJQdHIoKSBjb25zdCB7IHJldHVybiBt
X2xvZ2dlci5nZXQoKTsgfTsKICAgICBjb25zdCB2b2lkKiBsb2dJZGVudGlmaWVyKCkgY29uc3Qg
eyByZXR1cm4gbV9sb2dJZGVudGlmaWVyOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3Ry
ZWFtaW5nQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCmluZGV4
IDAyN2NhMWZhYzNkMzZmZmQ3ZTVkNTA0Mzg3MDVjMjUxYWJlZGI5ZjcuLmUyZTcwZDZjN2NkMWZl
ZDIzNDUwODYzOWMyYTRjY2VjNmUzMjU0OTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJl
YW1pbmdBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCkBA
IC0xOTYsNiArMTk2LDkgQEAgc3RhdGljIFdURkxvZ0NoYW5uZWwmIGxvZ0NoYW5uZWwoKSB7IHJl
dHVybiBMb2dFTUU7IH0KIAogc3RhdGljIEF0b21TdHJpbmcgaW5pdFR5cGVGb3JSZXF1ZXN0KEFW
Q29udGVudEtleVJlcXVlc3QqIHJlcXVlc3QpCiB7CisgICAgaWYgKFtyZXF1ZXN0LmlkZW50aWZp
ZXIgaXNLaW5kT2ZDbGFzczpOU1N0cmluZy5jbGFzc10gJiYgW3JlcXVlc3QuaWRlbnRpZmllciBo
YXNQcmVmaXg6QCJza2Q6Ly8iXSkKKyAgICAgICAgcmV0dXJuIENETVByaXZhdGVGYWlyUGxheVN0
cmVhbWluZzo6c2tkTmFtZSgpOworCiAgICAgaWYgKCFbcmVxdWVzdCByZXNwb25kc1RvU2VsZWN0
b3I6QHNlbGVjdG9yKG9wdGlvbnMpXSkgewogICAgICAgICAvLyBBVkNvbnRlbnRLZXlSZXF1ZXN0
Lm9wdGlvbnMgd2FzIGFkZGVkIGluIDEwLjE0LjQ7IGlmIHdlIGFyZSBydW5uaW5nIG9uIGEgcHJl
dmlvdXMgdmVyc2lvbgogICAgICAgICAvLyB3ZSBkb24ndCBoYXZlIHN1cHBvcnQgZm9yICdjZW5j
JyBhbnl3YXksIHNvIGp1c3QgYXNzdW1lICdzaW5mJy4KQEAgLTIxNSw2ICsyMTgsMTcgQEAgQUxM
T1dfTkVXX0FQSV9XSVRIT1VUX0dVQVJEU19FTkQKICAgICByZXR1cm4gQXRvbVN0cmluZyhuc0lu
aXRUeXBlKTsKIH0KIAorc3RhdGljIFJlZjxTaGFyZWRCdWZmZXI+IGluaXRpYWxpemF0aW9uRGF0
YUZvclJlcXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVxdWVzdCkKK3sKKyAgICBpZiAoIXJl
cXVlc3QpCisgICAgICAgIHJldHVybiBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOworCisgICAgaWYg
KGluaXRUeXBlRm9yUmVxdWVzdChyZXF1ZXN0KSA9PSBDRE1Qcml2YXRlRmFpclBsYXlTdHJlYW1p
bmc6OnNrZE5hbWUoKSkKKyAgICAgICAgcmV0dXJuIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFtyZXF1
ZXN0LmlkZW50aWZpZXIgZGF0YVVzaW5nRW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmcgYWxs
b3dMb3NzeUNvbnZlcnNpb246WUVTXSk7CisKKyAgICByZXR1cm4gU2hhcmVkQnVmZmVyOjpjcmVh
dGUocmVxdWVzdC5pbml0aWFsaXphdGlvbkRhdGEpOworfQorCiBDRE1JbnN0YW5jZUZhaXJQbGF5
U3RyZWFtaW5nQVZGT2JqQzo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakMoKSA9
IGRlZmF1bHQ7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKQEAgLTI1Nyw4ICsyNzEsOCBA
QCBSZXRhaW5QdHI8QVZDb250ZW50S2V5UmVxdWVzdD4gQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVh
bWluZ0FWRk9iakM6OnRha2VVbmV4cGVjdAogICAgIGZvciAoYXV0byByZXF1ZXN0SXRlciA9IG1f
dW5leHBlY3RlZEtleVJlcXVlc3RzLmJlZ2luKCk7IHJlcXVlc3RJdGVyICE9IG1fdW5leHBlY3Rl
ZEtleVJlcXVlc3RzLmVuZCgpOyArK3JlcXVlc3RJdGVyKSB7CiAgICAgICAgIGF1dG8mIHJlcXVl
c3QgPSAqcmVxdWVzdEl0ZXI7CiAgICAgICAgIGF1dG8gcmVxdWVzdFR5cGUgPSBpbml0VHlwZUZv
clJlcXVlc3QocmVxdWVzdC5nZXQoKSk7Ci0gICAgICAgIGF1dG8qIHJlcXVlc3RJbml0RGF0YSAg
PSByZXF1ZXN0LmdldCgpLmluaXRpYWxpemF0aW9uRGF0YTsKLSAgICAgICAgaWYgKGluaXREYXRh
VHlwZSAhPSByZXF1ZXN0VHlwZSB8fCBpbml0RGF0YSAhPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShy
ZXF1ZXN0SW5pdERhdGEpKQorICAgICAgICBhdXRvIHJlcXVlc3RJbml0RGF0YSAgPSBpbml0aWFs
aXphdGlvbkRhdGFGb3JSZXF1ZXN0KHJlcXVlc3QuZ2V0KCkpOworICAgICAgICBpZiAoaW5pdERh
dGFUeXBlICE9IHJlcXVlc3RUeXBlIHx8IGluaXREYXRhICE9IHJlcXVlc3RJbml0RGF0YSkKICAg
ICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIHJldHVybiBtX3VuZXhwZWN0ZWRLZXlSZXF1
ZXN0cy50YWtlKHJlcXVlc3RJdGVyKTsKQEAgLTQ0NCwxMCArNDU4LDcgQEAgdm9pZCBDRE1JbnN0
YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlcXVlc3QoQVZDb250ZW50
S2V5UmVxdWVzdAogCiAgICAgREVCVUdfTE9HX0lGX1BPU1NJQkxFKExPR0lERU5USUZJRVIsICIt
IFVuZXhwZWN0ZWQgcmVxdWVzdCIpOwogCi0gICAgbV91bmV4cGVjdGVkS2V5UmVxdWVzdHMuYWRk
KHJlcXVlc3QpOwotCi0gICAgaWYgKG1fY2xpZW50KQotICAgICAgICBtX2NsaWVudC0+dW5yZXF1
ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChpbml0VHlwZUZvclJlcXVlc3QocmVxdWVz
dCksIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKHJlcXVlc3QuaW5pdGlhbGl6YXRpb25EYXRhKSk7Cisg
ICAgaGFuZGxlVW5leHBlY3RlZFJlcXVlc3RzKHt7IHJlcXVlc3QgfX0pOwogfQogCiB2b2lkIENE
TUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpkaWRQcm92aWRlUmVxdWVzdHMoVmVj
dG9yPFJldGFpblB0cjxBVkNvbnRlbnRLZXlSZXF1ZXN0Pj4mJiByZXF1ZXN0cykKQEAgLTQ1Nyw4
ICs0NjgsMTggQEAgdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlk
UHJvdmlkZVJlcXVlc3RzKFZlY3RvcjxSZXRhaW5QdHI8QVYKICAgICAgICAgcmV0dXJuOwogICAg
IH0KIAotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIEVSUk9SX0xPR19JRl9QT1NTSUJM
RShMT0dJREVOVElGSUVSLCAiLSBubyByZXNwb25zaWJsZSBzZXNzaW9uOyBkcm9wcGluZyIpOwor
ICAgIGhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhXVEZNb3ZlKHJlcXVlc3RzKSk7Cit9CisKK3Zv
aWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmhhbmRsZVVuZXhwZWN0ZWRS
ZXF1ZXN0cyhWZWN0b3I8UmV0YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYmIHJlcXVlc3Rz
KQoreworICAgIHdoaWxlICghcmVxdWVzdHMuaXNFbXB0eSgpKSB7CisgICAgICAgIGF1dG8gcmVx
dWVzdCA9IHJlcXVlc3RzLnRha2VMYXN0KCk7CisgICAgICAgIG1fdW5leHBlY3RlZEtleVJlcXVl
c3RzLmFkZChyZXF1ZXN0KTsKKworICAgICAgICBpZiAobV9jbGllbnQpCisgICAgICAgICAgICBt
X2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChpbml0VHlwZUZv
clJlcXVlc3QocmVxdWVzdC5nZXQoKSksIGluaXRpYWxpemF0aW9uRGF0YUZvclJlcXVlc3QocmVx
dWVzdC5nZXQoKSkpOworICAgIH0KIH0KIAogdm9pZCBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6ZGlkUHJvdmlkZVJlbmV3aW5nUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1ZXN0
ICpyZXF1ZXN0KQpAQCAtNTI0LDYgKzU0NSwxMSBAQCB2b2lkIENETUluc3RhbmNlRmFpclBsYXlT
dHJlYW1pbmdBVkZPYmpDOjpzZXNzaW9uSWRlbnRpZmllckNoYW5nZWQoTlNEYXRhICpzZXNzaQog
CiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpncm91cFNlc3Npb25J
ZGVudGlmaWVyQ2hhbmdlZChBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCogZ3JvdXAsIE5TRGF0YSAq
c2Vzc2lvbklkZW50aWZpZXIpCiB7CisgICAgaWYgKGdyb3VwID09IFttX3Nlc3Npb24gZGVmYXVs
dENvbnRlbnRLZXlHcm91cF0pIHsKKyAgICAgICAgSU5GT19MT0dfSUZfUE9TU0lCTEUoTE9HSURF
TlRJRklFUiwgIi0gZGVmYXVsdCB1bnVzZWQgZ3JvdXAgaWRlbnRpZmllciBjaGFuZ2VkOyBkcm9w
cGluZyIpOworICAgICAgICByZXR1cm47CisgICAgfQorCiAgICAgaWYgKGF1dG8qIHNlc3Npb24g
PSBzZXNzaW9uRm9yR3JvdXAoZ3JvdXApKSB7CiAgICAgICAgIHNlc3Npb24tPmdyb3VwU2Vzc2lv
bklkZW50aWZpZXJDaGFuZ2VkKGdyb3VwLCBzZXNzaW9uSWRlbnRpZmllcik7CiAgICAgICAgIHJl
dHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW0gYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDLm1tCmluZGV4IGJlNjBlMzRjMzA0N2RkZDg5ZTJhZDlmNTIwMzhjNzc3N2E1Y2UzNzMu
LjcwNDY2YTcwMGZiY2JmMDM4NTY2YzFhM2Q3YjAyMzI4OTBlNDg5YTQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291
cmNlUHJpdmF0ZUFWRk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbQpAQCAtMjc3
LDYgKzI3Nyw5IEBAIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6c2V0RGVjb21wcmVz
c2lvblNlc3Npb24oV2ViQ29yZURlY29tcHJlc3Npb25TZXNzCiAjaWYgRU5BQkxFKEVOQ1JZUFRF
RF9NRURJQSkKIHZvaWQgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6Y2RtSW5zdGFuY2VBdHRh
Y2hlZChDRE1JbnN0YW5jZSYgaW5zdGFuY2UpCiB7CisgICAgaWYgKG1fY2RtSW5zdGFuY2UuZ2V0
KCkgPT0gJmluc3RhbmNlKQorICAgICAgICByZXR1cm47CisKICAgICBBU1NFUlQoIW1fY2RtSW5z
dGFuY2UpOwogICAgIG1fY2RtSW5zdGFuY2UgPSAmaW5zdGFuY2U7CiAgICAgZm9yIChhdXRvJiBz
b3VyY2VCdWZmZXIgOiBtX3NvdXJjZUJ1ZmZlcnMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYktpdC9DTWFrZUxpc3RzLnR4dAppbmRleCBjMGNh
ODZmMTM5OTNiYjkzMzQyMmU1M2NlZTc2MWYyNGI2ZjUwZTY1Li5jYmNhOGQzMzg4YzU4MjliNzQy
NzIyZTc0OTlmOTM2OWZiM2MzMDg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NNYWtlTGlz
dHMudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQvQ01ha2VMaXN0cy50eHQKQEAgLTIyOCw2ICsyMjgs
NyBAQCBzZXQoV2ViS2l0X01FU1NBR0VTX0lOX0ZJTEVTCiAgICAgV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlCiAgICAgV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVt
b3RlQXVkaW9TZXNzaW9uCiAgICAgV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9Tb3Vy
Y2VQcm92aWRlck1hbmFnZXIKKyAgICBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0
YW5jZQogICAgIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlU2Vzc2lvbgog
ICAgIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUxlZ2FjeUNETVNlc3Npb24KICAgICBXZWJQ
cm9jZXNzL0dQVS9tZWRpYS9Tb3VyY2VCdWZmZXJQcml2YXRlUmVtb3RlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2Vi
S2l0L0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QKaW5kZXggMTY2YjI5YjJmNzc5OTQ2
Y2FjMjdkNjU3NTc1OTYwMWVmNTY4NGYyZC4uMjNhZDQwNzgwZDM2NTdiYzg5YWE4MmIxNGNmMzc3
MGEzMjZkZDQwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy1pbnB1
dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJLaXQvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNm
aWxlbGlzdApAQCAtMTQzLDYgKzE0Myw3IEBAICQoUFJPSkVDVF9ESVIpL1dlYlByb2Nlc3MvR1BV
L21lZGlhL01lZGlhUGxheWVyUHJpdmF0ZVJlbW90ZS5tZXNzYWdlcy5pbgogJChQUk9KRUNUX0RJ
UikvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvTWVkaWFTb3VyY2VQcml2YXRlUmVtb3RlLm1lc3NhZ2Vz
LmluCiAkKFBST0pFQ1RfRElSKS9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb1Nlc3Np
b24ubWVzc2FnZXMuaW4KICQoUFJPSkVDVF9ESVIpL1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90
ZUF1ZGlvU291cmNlUHJvdmlkZXJNYW5hZ2VyLm1lc3NhZ2VzLmluCiskKFBST0pFQ1RfRElSKS9X
ZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5tZXNzYWdlcy5pbgogJChQUk9K
RUNUX0RJUikvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uLm1l
c3NhZ2VzLmluCiAkKFBST0pFQ1RfRElSKS9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVMZWdh
Y3lDRE1TZXNzaW9uLm1lc3NhZ2VzLmluCiAkKFBST0pFQ1RfRElSKS9XZWJQcm9jZXNzL0dQVS9t
ZWRpYS9Tb3VyY2VCdWZmZXJQcml2YXRlUmVtb3RlLm1lc3NhZ2VzLmluCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0IGIvU291cmNlL1dl
YktpdC9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxlbGlzdAppbmRleCAxZTI0YThmNWEwYjQ5
MDczNTNiOTk1YzY3MDU4NWYyZGM1NzgwNzEzLi4wNjU1NzU1OTUzMDgzMGQ2MzJhNTY3N2IzZWJl
ZWQ3MDdmYmUyYzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLW91
dHB1dC54Y2ZpbGVsaXN0CisrKyBiL1NvdXJjZS9XZWJLaXQvRGVyaXZlZFNvdXJjZXMtb3V0cHV0
LnhjZmlsZWxpc3QKQEAgLTE2Miw2ICsxNjIsOSBAQCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVy
aXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVBdWRpb1RyYWNrUHJveHlNZXNzYWdlc1JlcGxpZQog
JChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNRmFj
dG9yeVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2
ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNRmFjdG9yeVByb3h5TWVzc2FnZXMuaAogJChCVUlM
VF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNRmFjdG9yeVBy
b3h5TWVzc2FnZXNSZXBsaWVzLmgKKyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNl
cy9XZWJLaXQyL1JlbW90ZUNETUluc3RhbmNlTWVzc2FnZVJlY2VpdmVyLmNwcAorJChCVUlMVF9Q
Uk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3RlQ0RNSW5zdGFuY2VNZXNz
YWdlcy5oCiskKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1v
dGVDRE1JbnN0YW5jZU1lc3NhZ2VzUmVwbGllcy5oCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVy
aXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVDRE1JbnN0YW5jZVByb3h5TWVzc2FnZVJlY2VpdmVy
LmNwcAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktpdDIvUmVtb3Rl
Q0RNSW5zdGFuY2VQcm94eU1lc3NhZ2VzLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVk
U291cmNlcy9XZWJLaXQyL1JlbW90ZUNETUluc3RhbmNlUHJveHlNZXNzYWdlc1JlcGxpZXMuaApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy5tYWtlIGIvU291cmNlL1dl
YktpdC9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGM5MTZmNjU5MzZhZDAwNzdlNDBlODFhNzE4
YWYyMmNjNTFkZDdkNGYuLmM3YTUwOTRiMjQyYjQwZmI5MjEwZDkwM2MzZGM4Y2ZhMDcyYjQyZjUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTE4MCw2ICsxODAsNyBAQCBNRVNTQUdF
X1JFQ0VJVkVSUyA9IFwKIAlXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVS
ZW1vdGUgXAogCVdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvU2Vzc2lvbiBcCiAJV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9Tb3VyY2VQcm92aWRlck1hbmFnZXIgXAorCVdl
YlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlIFwKIAlXZWJQcm9jZXNzL0dQVS9t
ZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVNlc3Npb24gXAogCVdlYlByb2Nlc3MvR1BVL21lZGlhL1Jl
bW90ZUxlZ2FjeUNETVNlc3Npb24gXAogCVdlYlByb2Nlc3MvR1BVL21lZGlhL1NvdXJjZUJ1ZmZl
clByaXZhdGVSZW1vdGUgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21l
ZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNz
L21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuY3BwCmluZGV4IDFiNDBhYjViMDA0N2VkNjE0
ZTdjOTRiNTlhOWE3NzUxMmYzYmM2MjAuLmViYjhlNWZmMDI4Yzg1ZjZmNTYzNGEwMjEwMjU3MGQx
MTY0MDBjY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVDRE1JbnN0YW5jZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVk
aWEvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNpZiBFTkFC
TEUoR1BVX1BST0NFU1MpICYmIEVOQUJMRShFTkNSWVBURURfTUVESUEpCiAKICNpbmNsdWRlICJS
ZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24uaCIKKyNpbmNsdWRlICJSZW1vdGVDRE1JbnN0
YW5jZU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uUHJveHku
aCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXJDb3B5LmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DRE1J
bnN0YW5jZS5oPgpAQCAtMzcsMjIgKzM4LDM2IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogCiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUNETUluc3RhbmNl
UHJveHk+IFJlbW90ZUNETUluc3RhbmNlUHJveHk6OmNyZWF0ZShXZWFrUHRyPFJlbW90ZUNETVBy
b3h5PiYmIGNkbSwgUmVmPENETUluc3RhbmNlPiYmIHByaXYpCitzdGQ6OnVuaXF1ZV9wdHI8UmVt
b3RlQ0RNSW5zdGFuY2VQcm94eT4gUmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6Y3JlYXRlKFdlYWtQ
dHI8UmVtb3RlQ0RNUHJveHk+JiYgY2RtLCBSZWY8Q0RNSW5zdGFuY2U+JiYgcHJpdiwgUmVtb3Rl
Q0RNSW5zdGFuY2VJZGVudGlmaWVyIGlkZW50aWZpZXIpCiB7CiAgICAgYXV0byBjb25maWd1cmF0
aW9uID0gbWFrZVVuaXF1ZVJlZldpdGhvdXRGYXN0TWFsbG9jQ2hlY2s8UmVtb3RlQ0RNSW5zdGFu
Y2VDb25maWd1cmF0aW9uLCBSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24mJj4oewogICAg
ICAgICBwcml2LT5rZXlTeXN0ZW0oKSwKICAgICB9KTsKLSAgICByZXR1cm4gc3RkOjp1bmlxdWVf
cHRyPFJlbW90ZUNETUluc3RhbmNlUHJveHk+KG5ldyBSZW1vdGVDRE1JbnN0YW5jZVByb3h5KFdU
Rk1vdmUoY2RtKSwgV1RGTW92ZShwcml2KSwgV1RGTW92ZShjb25maWd1cmF0aW9uKSkpOworICAg
IHJldHVybiBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5zdGFuY2VQcm94eT4obmV3IFJlbW90
ZUNETUluc3RhbmNlUHJveHkoV1RGTW92ZShjZG0pLCBXVEZNb3ZlKHByaXYpLCBXVEZNb3ZlKGNv
bmZpZ3VyYXRpb24pLCBpZGVudGlmaWVyKSk7CiB9CiAKLVJlbW90ZUNETUluc3RhbmNlUHJveHk6
OlJlbW90ZUNETUluc3RhbmNlUHJveHkoV2Vha1B0cjxSZW1vdGVDRE1Qcm94eT4mJiBjZG0sIFJl
ZjxDRE1JbnN0YW5jZT4mJiBwcml2LCBVbmlxdWVSZWY8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1
cmF0aW9uPiYmIGNvbmZpZ3VyYXRpb24pCitSZW1vdGVDRE1JbnN0YW5jZVByb3h5OjpSZW1vdGVD
RE1JbnN0YW5jZVByb3h5KFdlYWtQdHI8UmVtb3RlQ0RNUHJveHk+JiYgY2RtLCBSZWY8Q0RNSW5z
dGFuY2U+JiYgcHJpdiwgVW5pcXVlUmVmPFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbj4m
JiBjb25maWd1cmF0aW9uLCBSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIgaWRlbnRpZmllcikK
ICAgICA6IG1fY2RtKFdURk1vdmUoY2RtKSkKICAgICAsIG1faW5zdGFuY2UoV1RGTW92ZShwcml2
KSkKICAgICAsIG1fY29uZmlndXJhdGlvbihXVEZNb3ZlKGNvbmZpZ3VyYXRpb24pKQorICAgICwg
bV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiB7CisgICAgbV9pbnN0YW5jZS0+c2V0Q2xpZW50KG1h
a2VXZWFrUHRyPENETUluc3RhbmNlQ2xpZW50Pih0aGlzKSk7CiB9CiAKLVJlbW90ZUNETUluc3Rh
bmNlUHJveHk6On5SZW1vdGVDRE1JbnN0YW5jZVByb3h5KCkgPSBkZWZhdWx0OworUmVtb3RlQ0RN
SW5zdGFuY2VQcm94eTo6flJlbW90ZUNETUluc3RhbmNlUHJveHkoKQoreworICAgIG1faW5zdGFu
Y2UtPmNsZWFyQ2xpZW50KCk7Cit9CisKK3ZvaWQgUmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6dW5y
ZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZChjb25zdCBTdHJpbmcmIHR5cGUsIFJl
ZjxTaGFyZWRCdWZmZXI+JiYgaW5pdERhdGEpCit7CisgICAgaWYgKCFtX2NkbSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgaWYgKGF1dG8qIGZhY3RvcnkgPSBtX2NkbS0+ZmFjdG9yeSgpKQorICAg
ICAgICBmYWN0b3J5LT5ncHVDb25uZWN0aW9uVG9XZWJQcm9jZXNzKCkuY29ubmVjdGlvbigpLnNl
bmQoTWVzc2FnZXM6OlJlbW90ZUNETUluc3RhbmNlOjpVbnJlcXVlc3RlZEluaXRpYWxpemF0aW9u
RGF0YVJlY2VpdmVkKHR5cGUsIFdURk1vdmUoaW5pdERhdGEpKSwgbV9pZGVudGlmaWVyKTsKK30K
IAogdm9pZCBSZW1vdGVDRE1JbnN0YW5jZVByb3h5Ojppbml0aWFsaXplV2l0aENvbmZpZ3VyYXRp
b24oY29uc3QgV2ViQ29yZTo6Q0RNS2V5U3lzdGVtQ29uZmlndXJhdGlvbiYgY29uZmlndXJhdGlv
biwgQWxsb3dEaXN0aW5jdGl2ZUlkZW50aWZpZXJzIGFsbG93RGlzdGluY3RpdmVJZGVudGlmaWVy
cywgQWxsb3dQZXJzaXN0ZW50U3RhdGUgYWxsb3dQZXJzaXN0ZW50U3RhdGUsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoU3VjY2Vzc1ZhbHVlKT4mJiBjb21wbGV0aW9uKQogewpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuaCBi
L1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVByb3h5LmgK
aW5kZXggNTE0YTMwNjVhOThjYzMxZWU2NDMzMzdmOWJhZDk3NDg0YjkyZmZhYi4uOTI0ZWFkZDUz
NzJjYTI1YTEyMWIyNWZkYTg2NmEyYWNlYmI0N2U1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5oCkBAIC01MCw5
ICs1MCw5IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogc3RydWN0IFJlbW90ZUNETUluc3RhbmNlQ29u
ZmlndXJhdGlvbjsKIGNsYXNzIFJlbW90ZUNETUluc3RhbmNlU2Vzc2lvblByb3h5OwogCi1jbGFz
cyBSZW1vdGVDRE1JbnN0YW5jZVByb3h5IDogcHJpdmF0ZSBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAg
eworY2xhc3MgUmVtb3RlQ0RNSW5zdGFuY2VQcm94eSA6IHB1YmxpYyBXZWJDb3JlOjpDRE1JbnN0
YW5jZUNsaWVudCwgcHJpdmF0ZSBJUEM6Ok1lc3NhZ2VSZWNlaXZlciAgewogcHVibGljOgotICAg
IHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5zdGFuY2VQcm94eT4gY3JlYXRlKFdl
YWtQdHI8UmVtb3RlQ0RNUHJveHk+JiYsIFJlZjxXZWJDb3JlOjpDRE1JbnN0YW5jZT4mJik7Cisg
ICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVDRE1JbnN0YW5jZVByb3h5PiBjcmVhdGUo
V2Vha1B0cjxSZW1vdGVDRE1Qcm94eT4mJiwgUmVmPFdlYkNvcmU6OkNETUluc3RhbmNlPiYmLCBS
ZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIpOwogICAgIH5SZW1vdGVDRE1JbnN0YW5jZVByb3h5
KCk7CiAKICAgICBjb25zdCBSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24mIGNvbmZpZ3Vy
YXRpb24oKSBjb25zdCB7IHJldHVybiBtX2NvbmZpZ3VyYXRpb24uZ2V0KCk7IH0KQEAgLTYwLDcg
KzYwLDEwIEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBmcmllbmQgY2xhc3MgUmVtb3RlQ0RN
RmFjdG9yeVByb3h5OwotICAgIFJlbW90ZUNETUluc3RhbmNlUHJveHkoV2Vha1B0cjxSZW1vdGVD
RE1Qcm94eT4mJiwgUmVmPFdlYkNvcmU6OkNETUluc3RhbmNlPiYmLCBVbmlxdWVSZWY8UmVtb3Rl
Q0RNSW5zdGFuY2VDb25maWd1cmF0aW9uPiYmKTsKKyAgICBSZW1vdGVDRE1JbnN0YW5jZVByb3h5
KFdlYWtQdHI8UmVtb3RlQ0RNUHJveHk+JiYsIFJlZjxXZWJDb3JlOjpDRE1JbnN0YW5jZT4mJiwg
VW5pcXVlUmVmPFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbj4mJiwgUmVtb3RlQ0RNSW5z
dGFuY2VJZGVudGlmaWVyKTsKKworICAgIC8vIENETUluc3RhbmNlQ2xpZW50CisgICAgdm9pZCB1
bnJlcXVlc3RlZEluaXRpYWxpemF0aW9uRGF0YVJlY2VpdmVkKGNvbnN0IFN0cmluZyYsIFJlZjxX
ZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYpIGZpbmFsOwogCiAgICAgLy8gSVBDOjpNZXNzYWdlUmVj
ZWl2ZXIKICAgICB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6
RGVjb2RlciYpIGZpbmFsOwpAQCAtNzksNiArODIsNyBAQCBwcml2YXRlOgogICAgIFdlYWtQdHI8
UmVtb3RlQ0RNUHJveHk+IG1fY2RtOwogICAgIFJlZjxXZWJDb3JlOjpDRE1JbnN0YW5jZT4gbV9p
bnN0YW5jZTsKICAgICBVbmlxdWVSZWY8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uPiBt
X2NvbmZpZ3VyYXRpb247CisgICAgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyIG1faWRlbnRp
ZmllcjsKICAgICBIYXNoTWFwPFJlbW90ZUNETUluc3RhbmNlU2Vzc2lvbklkZW50aWZpZXIsIHN0
ZDo6dW5pcXVlX3B0cjxSZW1vdGVDRE1JbnN0YW5jZVNlc3Npb25Qcm94eT4+IG1fc2Vzc2lvbnM7
CiB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3Rl
Q0RNUHJveHkuY3BwIGIvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETVBy
b3h5LmNwcAppbmRleCAwNTEwNjYzM2Y4ZTdiMTJlZjA5ZmRjN2Q1N2FkNTlkZjk3MjllNzNiLi5l
ODVlMDEzOGE4ODY3MDQ4YjUxMmNhNGQ5ZTFlMmY2ZGUwNzlmMDU5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNUHJveHkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Qcm94eS5jcHAKQEAgLTkwLDggKzkw
LDggQEAgdm9pZCBSZW1vdGVDRE1Qcm94eTo6Y3JlYXRlSW5zdGFuY2UoQ29tcGxldGlvbkhhbmRs
ZXI8dm9pZChSZW1vdGVDRE1JbnN0YW5jZUlkZW4KICAgICAgICAgY29tcGxldGlvbih7IH0sIHsg
fSk7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgYXV0byBpbnN0YW5jZSA9IFJlbW90ZUNE
TUluc3RhbmNlUHJveHk6OmNyZWF0ZShtYWtlV2Vha1B0cih0aGlzKSwgcHJpdmF0ZUluc3RhbmNl
LnJlbGVhc2VOb25OdWxsKCkpOwogICAgIGF1dG8gaWRlbnRpZmllciA9IFJlbW90ZUNETUluc3Rh
bmNlSWRlbnRpZmllcjo6Z2VuZXJhdGUoKTsKKyAgICBhdXRvIGluc3RhbmNlID0gUmVtb3RlQ0RN
SW5zdGFuY2VQcm94eTo6Y3JlYXRlKG1ha2VXZWFrUHRyKHRoaXMpLCBwcml2YXRlSW5zdGFuY2Uu
cmVsZWFzZU5vbk51bGwoKSwgaWRlbnRpZmllcik7CiAgICAgUmVtb3RlQ0RNSW5zdGFuY2VDb25m
aWd1cmF0aW9uIGNvbmZpZ3VyYXRpb24gPSBpbnN0YW5jZS0+Y29uZmlndXJhdGlvbigpOwogICAg
IG1fZmFjdG9yeS0+YWRkSW5zdGFuY2UoaWRlbnRpZmllciwgV1RGTW92ZShpbnN0YW5jZSkpOwog
ICAgIGNvbXBsZXRpb24oaWRlbnRpZmllciwgV1RGTW92ZShjb25maWd1cmF0aW9uKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIv
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA3MjVh
YjZhMThlY2MyN2YzOWFjYzRjNTU4NDlmMTk0OThkNTM4OWQyLi5mNjY1NTYyOTExMzRkOWRlODJj
ZDlhYWRiMTAzNzhjYjRjOTIzM2MyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE4NjAsNiArMTg2MCw3IEBACiAJCUNEQTI5QTI5MUNC
RUI2N0EwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVzc2FnZXMuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQTI5QTI1MUNCRUI2N0Ew
MDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVzc2FnZXMuaCAqLzsgfTsKIAkJQ0RB
MjlBMkExQ0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eU1lc3Nh
Z2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBDREEyOUEyNjFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclBy
b3h5TWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJQ0RBMjlBMkIxQ0JFQjY3QTAwOTAxQ0NG
IC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eU1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDREEyOUEyNzFDQkVCNjdBMDA5MDFDQ0Yg
LyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZXMuaCAqLzsgfTsKKwkJQ0RBNkQ0
NTEyNUE5ODlDNzAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlTWVzc2FnZVJlY2VpdmVyLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQTZENDUw
MjVBOTg5QUMwMDRCMURGNiAvKiBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHAg
Ki87IH07CiAJCUNEQTkzREIwMjJGOEJDRjQwMDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNo
ZXVyaXN0aWNQYXJhbWV0ZXJzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBDREE5M0RBRTIyRjhCQ0YzMDA0OTBBNjkgLyogRnVsbHNjcmVlblRvdWNoU2Vj
aGV1cmlzdGljUGFyYW1ldGVycy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZh
dGUsICk7IH07IH07CiAJCUNEQTkzREIxMjJGOEJDRjQwMDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91
Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IENEQTkzREFGMjJGOEJDRjQwMDQ5MEE2OSAvKiBGdWxsc2NyZWVu
VG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJzLmNwcCAqLzsgfTsKIAkJQ0RBQzIwQjQyM0ZCNThG
MjAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlUHJveHkuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQUMyMEIyMjNGQjU4RjIwMDIxREVFMyAvKiBS
ZW1vdGVDRE1JbnN0YW5jZVByb3h5LmggKi87IH07CkBAIC01NTIyLDYgKzU1MjMsOSBAQAogCQlD
REEyOUEyNTFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlck1lc3NhZ2Vz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFBsYXliYWNrU2Vzc2lvbk1hbmFn
ZXJNZXNzYWdlcy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9QbGF5YmFja1Nlc3Np
b25NYW5hZ2VyTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsK
IAkJQ0RBMjlBMjYxQ0JFQjY3QTAwOTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94
eU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwOyBwYXRoID0g
RGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9QbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHlNZXNzYWdl
UmVjZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlDREEy
OUEyNzFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2Fn
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGxheWJhY2tTZXNzaW9uTWFu
YWdlclByb3h5TWVzc2FnZXMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYktpdDIvUGxheWJh
Y2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RV
Q1RTX0RJUjsgfTsKKwkJQ0RBNkQ0NEQyNUE5NzE1ODAwNEIxREY2IC8qIFJlbW90ZUNETUluc3Rh
bmNlLm1lc3NhZ2VzLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gdGV4dDsgcGF0aCA9IFJlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2VzLmluOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQlDREE2RDQ0RjI1QTk4OUFDMDA0QjFERjYgLyogUmVt
b3RlQ0RNSW5zdGFuY2VNZXNzYWdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCUNEQTZENDUwMjVBOTg5QUMwMDRCMURGNiAvKiBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VS
ZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBSZW1vdGVD
RE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUNEQTkzREFFMjJGOEJDRjMwMDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0
aWNQYXJhbWV0ZXJzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEZ1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3Rp
Y1BhcmFtZXRlcnMuaDsgcGF0aCA9IGlvcy9mdWxsc2NyZWVuL0Z1bGxzY3JlZW5Ub3VjaFNlY2hl
dXJpc3RpY1BhcmFtZXRlcnMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RBOTNE
QUYyMkY4QkNGNDAwNDkwQTY5IC8qIEZ1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3RpY1BhcmFtZXRl
cnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRnVsbHNjcmVlblRvdWNoU2VjaGV1cmlzdGljUGFy
YW1ldGVycy5jcHA7IHBhdGggPSBpb3MvZnVsbHNjcmVlbi9GdWxsc2NyZWVuVG91Y2hTZWNoZXVy
aXN0aWNQYXJhbWV0ZXJzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RBOTU5
M0EyNDEyQjE3NTAwOTEwRUVGIC8qIFJlbW90ZU1lZGlhU2Vzc2lvbkhlbHBlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBSZW1vdGVNZWRpYVNlc3Npb25IZWxwZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtNTk1OSw2ICs1OTYzLDcgQEAKIAkJCQlDREFDMjBDMjIzRkMyRjc1
MDAyMURFRTMgLyogUmVtb3RlQ0RNSWRlbnRpZmllci5oICovLAogCQkJCUNEQUMyMEJCMjNGQzJG
NzQwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZS5jcHAgKi8sCiAJCQkJQ0RBQzIwQjcyM0ZD
MkY3MzAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlLmggKi8sCisJCQkJQ0RBNkQ0NEQyNUE5
NzE1ODAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2VzLmluICovLAogCQkJCUNE
QUMyMEMxMjNGQzJGNzUwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24u
aCAqLywKIAkJCQlDREFDMjBCNjIzRkMyRjczMDAyMURFRTMgLyogUmVtb3RlQ0RNSW5zdGFuY2VJ
ZGVudGlmaWVyLmggKi8sCiAJCQkJQ0RBQzIwQkUyM0ZDMkY3NDAwMjFERUUzIC8qIFJlbW90ZUNE
TUluc3RhbmNlU2Vzc2lvbi5jcHAgKi8sCkBAIC0xMDc1OSw2ICsxMDc2NCw4IEBACiAJCQkJQ0RB
QzIwRjIyM0ZDMzgzQTAwMjFERUUzIC8qIFJlbW90ZUNETUZhY3RvcnlQcm94eU1lc3NhZ2VSZWNl
aXZlci5jcHAgKi8sCiAJCQkJQ0RBQzIwRjMyM0ZDMzgzQTAwMjFERUUzIC8qIFJlbW90ZUNETUZh
Y3RvcnlQcm94eU1lc3NhZ2VzLmggKi8sCiAJCQkJQ0RBQzIwRUUyM0ZDMzgzOTAwMjFERUUzIC8q
IFJlbW90ZUNETUZhY3RvcnlQcm94eU1lc3NhZ2VzUmVwbGllcy5oICovLAorCQkJCUNEQTZENDUw
MjVBOTg5QUMwMDRCMURGNiAvKiBSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHAg
Ki8sCisJCQkJQ0RBNkQ0NEYyNUE5ODlBQzAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlTWVz
c2FnZXMuaCAqLywKIAkJCQlDREFDMjBGNTIzRkMzODNCMDAyMURFRTMgLyogUmVtb3RlQ0RNSW5z
dGFuY2VQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgKi8sCiAJCQkJQ0RBQzIwRUIyM0ZDMzgzODAw
MjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlUHJveHlNZXNzYWdlcy5oICovLAogCQkJCUNEQUMy
MEY2MjNGQzM4M0IwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZVByb3h5TWVzc2FnZXNSZXBs
aWVzLmggKi8sCkBAIC0xMzc2OCw2ICsxMzc3NSw3IEBACiAJCQkJMkQxMUI3NjQyMTI2QTI4MjAw
NkY4ODc4IC8qIFVuaWZpZWRTb3VyY2UxMC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDExQjc2
MzIxMjZBMjgyMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTEwLW1tLm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJMkQxMUI3NjUyMTI2QTI4MjAwNkY4ODc4IC8qIFVuaWZpZWRTb3VyY2UxMS1tbS5tbSBp
biBTb3VyY2VzICovLAorCQkJCUNEQTZENDUxMjVBOTg5QzcwMDRCMURGNiAvKiBSZW1vdGVDRE1J
bnN0YW5jZU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkyRDExQjc2NjIx
MjZBMjgyMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTExLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTJEMTFCNzY3MjEyNkEyODIwMDZGODg3OCAvKiBVbmlmaWVkU291cmNlMTItbW0ubW0gaW4gU291
cmNlcyAqLywKIAkJCQkyRDExQjc2ODIxMjZBMjgyMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTEy
LmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmNwcAppbmRleCA1OTQ0ZGMwZGQzNThmNjg5
NDgwMzM5ZTRlMjIyOTdjOWUyZjRlMTA0Li5lZGM4OTRlZTkzM2I4ZWFjNjE4ZDlhNWY2OTc2ZTlj
NGQyODM4NjgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlh
L1JlbW90ZUNETUluc3RhbmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BV
L21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmNwcApAQCAtMjksNiArMjksNyBAQAogI2lmIEVOQUJM
RShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKIAogI2luY2x1ZGUgIkdQ
VVByb2Nlc3NDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VNZXNzYWdl
cy5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlUHJveHlNZXNzYWdlcy5oIgogI2luY2x1
ZGUgIlJlbW90ZUNETUluc3RhbmNlU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3Rh
bmNlU2Vzc2lvbklkZW50aWZpZXIuaCIKQEAgLTUxLDYgKzUyLDIwIEBAIFJlbW90ZUNETUluc3Rh
bmNlOjpSZW1vdGVDRE1JbnN0YW5jZShXZWFrUHRyPFJlbW90ZUNETUZhY3Rvcnk+JiYgZmFjdG9y
eSwgUmVtb3RlCiAgICAgLCBtX2lkZW50aWZpZXIoV1RGTW92ZShpZGVudGlmaWVyKSkKICAgICAs
IG1fY29uZmlndXJhdGlvbihXVEZNb3ZlKGNvbmZpZ3VyYXRpb24pKQogeworICAgIGlmIChtX2Zh
Y3RvcnkpCisgICAgICAgIG1fZmFjdG9yeS0+Z3B1UHJvY2Vzc0Nvbm5lY3Rpb24oKS5tZXNzYWdl
UmVjZWl2ZXJNYXAoKS5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJlbW90ZUNETUluc3Rh
bmNlOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1faWRlbnRpZmllci50b1VJbnQ2NCgpLCAqdGhp
cyk7Cit9CisKK1JlbW90ZUNETUluc3RhbmNlOjp+UmVtb3RlQ0RNSW5zdGFuY2UoKQoreworICAg
IGlmIChtX2ZhY3RvcnkpCisgICAgICAgIG1fZmFjdG9yeS0+Z3B1UHJvY2Vzc0Nvbm5lY3Rpb24o
KS5tZXNzYWdlUmVjZWl2ZXJNYXAoKS5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OlJl
bW90ZUNETUluc3RhbmNlOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1faWRlbnRpZmllci50b1VJ
bnQ2NCgpKTsKK30KKwordm9pZCBSZW1vdGVDRE1JbnN0YW5jZTo6dW5yZXF1ZXN0ZWRJbml0aWFs
aXphdGlvbkRhdGFSZWNlaXZlZChjb25zdCBTdHJpbmcmIHR5cGUsIElQQzo6U2hhcmVkQnVmZmVy
Q29weSYmIGluaXREYXRhKQoreworICAgIGlmIChtX2NsaWVudCAmJiBpbml0RGF0YS5idWZmZXIo
KSkKKyAgICAgICAgbV9jbGllbnQtPnVucmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2
ZWQodHlwZSwgaW5pdERhdGEuYnVmZmVyKCkucmVsZWFzZU5vbk51bGwoKSk7CiB9CiAKIHZvaWQg
UmVtb3RlQ0RNSW5zdGFuY2U6OmluaXRpYWxpemVXaXRoQ29uZmlndXJhdGlvbihjb25zdCBXZWJD
b3JlOjpDRE1LZXlTeXN0ZW1Db25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uLCBBbGxvd0Rpc3Rp
bmN0aXZlSWRlbnRpZmllcnMgZGlzdGluY3RpdmVJZGVudGlmaWVycywgQWxsb3dQZXJzaXN0ZW50
U3RhdGUgcGVyc2lzdGVudFN0YXRlLCBTdWNjZXNzQ2FsbGJhY2smJiBjYWxsYmFjaykKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFu
Y2UuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFu
Y2UuaAppbmRleCA4OTVmNDliOTczOWQyNDc5ZDU1NWRmOGZiMDI3ZWRmZWNhOWMzNDA0Li4xMDZi
YTNiMTE2MWM4ZGYwOWQ3MWRmZTY3OWJhMzNkNDIzMDc5ZTk2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmgKKysrIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5oCkBAIC0y
NywxNiArMjcsMTggQEAKIAogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZ
UFRFRF9NRURJQSkKIAorI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgogI2luY2x1ZGUgIlJl
bW90ZUNETUZhY3RvcnkuaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRp
b24uaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIuaCIKKyNpbmNsdWRl
ICJTaGFyZWRCdWZmZXJDb3B5LmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DRE1JbnN0YW5jZS5oPgog
CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotY2xhc3MgUmVtb3RlQ0RNSW5zdGFuY2UgZmluYWwgOiBw
dWJsaWMgV2ViQ29yZTo6Q0RNSW5zdGFuY2UgeworY2xhc3MgUmVtb3RlQ0RNSW5zdGFuY2UgZmlu
YWwgOiBwdWJsaWMgV2ViQ29yZTo6Q0RNSW5zdGFuY2UsIHByaXZhdGUgSVBDOjpNZXNzYWdlUmVj
ZWl2ZXIgewogcHVibGljOgotICAgIHZpcnR1YWwgflJlbW90ZUNETUluc3RhbmNlKCkgPSBkZWZh
dWx0OworICAgIHZpcnR1YWwgflJlbW90ZUNETUluc3RhbmNlKCk7CiAgICAgc3RhdGljIFJlZjxS
ZW1vdGVDRE1JbnN0YW5jZT4gY3JlYXRlKFdlYWtQdHI8UmVtb3RlQ0RNRmFjdG9yeT4mJiwgUmVt
b3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyJiYsIFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlv
biYmKTsKIAogICAgIGNvbnN0IFJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmllciYgaWRlbnRpZmll
cigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQpAQCAtNDQsMTYgKzQ2LDI1IEBAIHB1
YmxpYzoKIHByaXZhdGU6CiAgICAgUmVtb3RlQ0RNSW5zdGFuY2UoV2Vha1B0cjxSZW1vdGVDRE1G
YWN0b3J5PiYmLCBSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXImJiwgUmVtb3RlQ0RNSW5zdGFu
Y2VDb25maWd1cmF0aW9uJiYpOwogCisgICAgLy8gSVBDOjpNZXNzYWdlUmVjZWl2ZXIKKyAgICB2
b2lkIGRpZFJlY2VpdmVNZXNzYWdlKElQQzo6Q29ubmVjdGlvbiYsIElQQzo6RGVjb2RlciYpIGZp
bmFsOworCisgICAgLy8gTWVzc2FnZXMKKyAgICB2b2lkIHVucmVxdWVzdGVkSW5pdGlhbGl6YXRp
b25EYXRhUmVjZWl2ZWQoY29uc3QgU3RyaW5nJiwgSVBDOjpTaGFyZWRCdWZmZXJDb3B5JiYpOwor
CiAgICAgSW1wbGVtZW50YXRpb25UeXBlIGltcGxlbWVudGF0aW9uVHlwZSgpIGNvbnN0IGZpbmFs
IHsgcmV0dXJuIEltcGxlbWVudGF0aW9uVHlwZTo6UmVtb3RlOyB9CiAgICAgdm9pZCBpbml0aWFs
aXplV2l0aENvbmZpZ3VyYXRpb24oY29uc3QgV2ViQ29yZTo6Q0RNS2V5U3lzdGVtQ29uZmlndXJh
dGlvbiYsIEFsbG93RGlzdGluY3RpdmVJZGVudGlmaWVycywgQWxsb3dQZXJzaXN0ZW50U3RhdGUs
IFN1Y2Nlc3NDYWxsYmFjayYmKSBmaW5hbDsKICAgICB2b2lkIHNldFNlcnZlckNlcnRpZmljYXRl
KFJlZjxXZWJDb3JlOjpTaGFyZWRCdWZmZXI+JiYsIFN1Y2Nlc3NDYWxsYmFjayYmKSBmaW5hbDsK
ICAgICB2b2lkIHNldFN0b3JhZ2VEaXJlY3RvcnkoY29uc3QgU3RyaW5nJikgZmluYWw7CiAgICAg
Y29uc3QgU3RyaW5nJiBrZXlTeXN0ZW0oKSBjb25zdCBmaW5hbCB7IHJldHVybiBtX2NvbmZpZ3Vy
YXRpb24ua2V5U3lzdGVtOyB9CiAgICAgUmVmUHRyPFdlYkNvcmU6OkNETUluc3RhbmNlU2Vzc2lv
bj4gY3JlYXRlU2Vzc2lvbigpIGZpbmFsOworICAgIHZvaWQgc2V0Q2xpZW50KFdlYWtQdHI8V2Vi
Q29yZTo6Q0RNSW5zdGFuY2VDbGllbnQ+JiYgY2xpZW50KSBmaW5hbCB7IG1fY2xpZW50ID0gV1RG
TW92ZShjbGllbnQpOyB9CisgICAgdm9pZCBjbGVhckNsaWVudCgpIGZpbmFsIHsgbV9jbGllbnQu
Y2xlYXIoKTsgfQogCiAgICAgV2Vha1B0cjxSZW1vdGVDRE1GYWN0b3J5PiBtX2ZhY3Rvcnk7CiAg
ICAgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBSZW1vdGVD
RE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24gbV9jb25maWd1cmF0aW9uOworICAgIFdlYWtQdHI8V2Vi
Q29yZTo6Q0RNSW5zdGFuY2VDbGllbnQ+IG1fY2xpZW50OwogfTsKIAogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5tZXNz
YWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5z
dGFuY2UubWVzc2FnZXMuaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2QzNTVjMWEyZTcwNmYwY2MzMzExYWQ1MDIz
NDY2MmRjMjdiYTQwZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2FnZXMuaW4KQEAgLTAsMCArMSwzMCBA
QAorIyBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
IworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyMgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
IworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnCisjIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorIyBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisjIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworIyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisjIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisjIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUworIyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorIyBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorIyBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCisjIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKworI2lmIEVOQUJMRShHUFVf
UFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKKworbWVzc2FnZXMgLT4gUmVtb3Rl
Q0RNSW5zdGFuY2UgTm90UmVmQ291bnRlZCB7CisgICAgVW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlv
bkRhdGFSZWNlaXZlZChTdHJpbmcgdHlwZSwgSVBDOjpTaGFyZWRCdWZmZXJDb3B5IGluaXREYXRh
KQorfQorCisjZW5kaWYK
</data>
<flag name="review"
          id="435026"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417403</attachid>
            <date>2021-01-11 12:49:39 -0800</date>
            <delta_ts>2021-01-12 09:20:14 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-220493-20210111124938.patch</filename>
            <type>text/plain</type>
            <size>32612</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxMjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWQ5NTBlNDNkOTNlZDc1
OGFhMTBiM2FmOGRkZGZlYzRkODA3MTgxYS4uZTNmYTAzMjFhNjI4OGEzOGY1ZjY1ZWU0ZjhjNDE5
MzljZDA1NjFiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDIxLTAxLTA4ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2NvYV0gU3VwcG9ydCBr
ZXkgcm90YXRpb24gd2l0aCBITFMtYmFja2VkIGVuY3J5cHRlZCBtZWRpYSBzdHJlYW1zCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA0OTMKKyAgICAg
ICAgPHJkYXI6Ly82ODIyNzcwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIENhcmxzb24u
CisKKyAgICAgICAgU3VwcG9ydCBrZXkgcm90YXRpb24gdGhyb3VnaCBBVkNvbnRlbnRLZXlTZXNz
aW9uIGJ5IGV4cGxpY2l0bHkgaGFuZGxpbmcgdW5leHBlY3RlZCBrZXkgcmVxdWVzdHMKKyAgICAg
ICAgc3VibWl0dGVkIHRocm91Z2ggdGhlIG5ldyAtY29udGVudEtleVNlc3Npb246ZGlkUHJvdmlk
ZUNvbnRlbnRLZXlSZXF1ZXN0czpmb3JJbml0aWFsaXphdGlvbkRhdGE6LgorICAgICAgICBSb3Rh
dGlvbiB3YXMgcHJldmlvdXNseSBoYW5kbGVkIGluIHRoZSBkZWxlZ2F0ZSBtZXRob2QgLWNvbnRl
bnRLZXlTZXNzaW9uOmRpZFByb3ZpZGVDb250ZW50S2V5UmVxdWVzdCwKKyAgICAgICAgYnV0IHRo
YXQgbWV0aG9kIGlzIG5vIGxvbmdlciBjYWxsZWQgYWZ0ZXIgdGhlIHJlcGxhY2VtZW50IGRlbGVn
YXRlIG1ldGhvZCB3YXMgaW1wbGVtZW50ZWQsIGFuZAorICAgICAgICB0aGF0IG1ldGhvZCBuZXZl
ciBoYW5kbGVkICJza2Q6Ly8iIHN0eWxlIGluaXRpYWxpemF0aW9uIGRhdGEuCisKKyAgICAgICAg
VXBkYXRlIHRoZSBoZWxwZXIgbWV0aG9kLCBpbml0VHlwZUZvclJlcXVlc3QoKSwgdG8gZGV0ZWN0
ICJza2Q6Ly8iIGlkZW50aWZpZXJzIGFuZCBjb3JyZWN0bHkgaWRlbnRpZnkKKyAgICAgICAgdGhv
c2Ugc2Vzc2lvbnMgYXMgInNrZCIuCisKKyAgICAgICAgQWRkIGEgbmV3IGhlbHBlciBtZXRob2Qs
IGluaXRpYWxpemF0aW9uRGF0YUZvclJlcXVlc3QoKSwgd2hpY2ggd2lsbCBwYWNrYWdlIHRoZSBB
VkNvbnRlbnRLZXlTZXNzaW9uJ3MKKyAgICAgICAgaWRlbnRpZmllciBhcyBpbml0aWFsaXphdGlv
biBkYXRhLgorCisgICAgICAgIERyaXZlLWJ5IEZpeDogRml4aW5nIHRoaXMgYnVnIGNhdXNlcyB0
aGUgZGVmYXVsdCBrZXkgZ3JvdXAgdG8gdXBkYXRlIGl0J3MgaWRlbnRpZmllciwgd2hpY2ggY2F1
c2VzIGFuIGFzc2VydAorICAgICAgICB3aGVuIHRoZSBncm91cCBpbiBxdWVzdGlvbiBpc24ndCBh
bnkgb2YgdGhvc2UgYXNzb2NpYXRlZCB3aXRoIGFuIGV4aXN0aW5nIE1lZGlhS2V5U2Vzc2lvbiwg
c28gaGFuZGxlIHRoYXQgY2FzZQorICAgICAgICBleHBsaWNpdGx5LgorCisgICAgICAgIERyaXZl
LWJ5IEZpeCAyOiBTb21ldGltZXMsIHdoZW4gR1BVUCBpcyBlbmFibGVkIGZvciBtZWRpYSwgd2Ug
d2lsbCBnZXQgc3B1cmlvdXMgbWVkaWFQbGF5ZXJFbmdpbmVVcGRhdGVkKCkKKyAgICAgICAgY2Fs
bHMgd2hpY2ggY2F1c2UgY2RtSW5zdGFuY2VBdHRhY2hlZCgpIHRvIGJlIGNhbGxlZCBtdWx0aXBs
ZSB0aW1lcyBmb3IgdGhlIHNhbWUgcGxheWVyLCB0cmlnZ2VyaW5nIGFuIEFTU0VSVC4KKyAgICAg
ICAgSWYgY2FsbGVkIHR3aWNlIHdpdGggdGhlIHNhbWUgQ0RNLCBqdXN0IHJldHVybiBlYXJseSBy
YXRoZXIgdGhhbiBBU1NFUlRpbmcuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5oOgorICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFp
clBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tOgorICAgICAgICAoV2ViQ29yZTo6aW5pdFR5cGVGb3JS
ZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxpemF0aW9uRGF0YUZvclJlcXVlc3Qp
OgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6
OnRha2VVbmV4cGVjdGVkS2V5UmVxdWVzdEZvckluaXRpYWxpemF0aW9uRGF0YSk6CisgICAgICAg
IChXZWJDb3JlOjpDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6ZGlkUHJvdmlk
ZVJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWlu
Z0FWRk9iakM6OmRpZFByb3ZpZGVSZXF1ZXN0cyk6CisgICAgICAgIChXZWJDb3JlOjpDRE1JbnN0
YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6aGFuZGxlVW5leHBlY3RlZFJlcXVlc3RzKToK
KyAgICAgICAgKFdlYkNvcmU6OkNETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpn
cm91cFNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6OmNkbUluc3RhbmNlQXR0YWNo
ZWQpOgorCiAyMDIxLTAxLTA4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAg
ICAgICAgIFtIQU5HXSA0OTZtcyB0byAxMzYwbXMgaW4gV2ViQ29yZTo6QVZBdWRpb1Nlc3Npb25D
YXB0dXJlRGV2aWNlTWFuYWdlcjo6cmVmcmVzaEF1ZGlvQ2FwdHVyZURldmljZXMoKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9D
aGFuZ2VMb2cKaW5kZXggNWFkMTE0YmY5ZTAxN2M5ZDVhZWEzN2ZmZTFkNzQzMmZmNDllMTJmZS4u
N2RjM2MxNTg1YzUyMjA3Njk0MzQ2MTQxM2Q3NTUwMjE3OWFhYWZhOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDEtMDggIEplciBOb2JsZSAgPGplci5ub2JsZUBh
cHBsZS5jb20+CisKKyAgICAgICAgW0NvY29hXSBTdXBwb3J0IGtleSByb3RhdGlvbiB3aXRoIEhM
Uy1iYWNrZWQgZW5jcnlwdGVkIG1lZGlhIHN0cmVhbXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDQ5MworICAgICAgICA8cmRhcjovLzY4MjI3NzA5
PgorCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNvbi4KKworICAgICAgICAqIHBhbC9z
cGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmg6CisKIDIwMjEtMDEtMDUgIEplciBOb2JsZSAgPGpl
ci5ub2JsZUBhcHBsZS5jb20+CiAKICAgICAgICAgW0NvY29hXSBSZXZlcnQgYXVkaW9UaW1lUGl0
Y2hBbGdvcml0aG0gdG8gIlRpbWVEb21haW4iIGZyb20gIlNwZWN0cmFsIgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCAz
MTBkZmNiYjVhZmFjMGU0M2NmZTUxNTM1NDc4NGU4MWI4MTZkOGM3Li42MGRiZjI0MDA3NDRhNGU4
MzUwZmQ4ODc1MDc0MzJlOTM2YjU0YTdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDIx
LTAxLTA4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtDb2Nv
YV0gU3VwcG9ydCBrZXkgcm90YXRpb24gd2l0aCBITFMtYmFja2VkIGVuY3J5cHRlZCBtZWRpYSBz
dHJlYW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MjA0OTMKKyAgICAgICAgPHJkYXI6Ly82ODIyNzcwOT4KKworICAgICAgICBSZXZpZXdlZCBieSBF
cmljIENhcmxzb24uCisKKyAgICAgICAgU3VwcG9ydCBoYW5kbGluZyB0aGUgInVuZXhwZWN0ZWRJ
bml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZCgpIiBjbGllbnQgY2FsbGJhY2sgZnJvbSB3aXRoaW4g
dGhlIEdQVVAuCisKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0Ogor
ICAgICAgICAqIERlcml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAqIERl
cml2ZWRTb3VyY2VzLm1ha2U6CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1J
bnN0YW5jZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5zdGFuY2VQcm94
eTo6Y3JlYXRlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6UmVt
b3RlQ0RNSW5zdGFuY2VQcm94eSk6CisgICAgICAgIChXZWJLaXQ6OlJlbW90ZUNETUluc3RhbmNl
UHJveHk6On5SZW1vdGVDRE1JbnN0YW5jZVByb3h5KToKKyAgICAgICAgKFdlYktpdDo6UmVtb3Rl
Q0RNSW5zdGFuY2VQcm94eTo6dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZCk6
CisgICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVByb3h5Lmg6Cisg
ICAgICAgICogR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Qcm94eS5jcHA6CisgICAgICAgIChX
ZWJLaXQ6OlJlbW90ZUNETVByb3h5OjpjcmVhdGVJbnN0YW5jZSk6CisgICAgICAgICogV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9HUFUvbWVk
aWEvUmVtb3RlQ0RNSW5zdGFuY2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVDRE1JbnN0
YW5jZTo6UmVtb3RlQ0RNSW5zdGFuY2UpOgorICAgICAgICAoV2ViS2l0OjpSZW1vdGVDRE1JbnN0
YW5jZTo6flJlbW90ZUNETUluc3RhbmNlKToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlQ0RNSW5z
dGFuY2U6OnVucmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2ZWQpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2FnZXMuaW46IEFkZGVkLgor
CiAyMDIxLTAxLTA4ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAg
IFtNYWNdIE5ldGZsaXggY29udHJvbHMgZG8gbm90IGZhZGUgb3V0IGFmdGVyIGVudGVyaW5nIGZ1
bGxzY3JlZW4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvc3BpL2NvY29hL0FW
Rm91bmRhdGlvblNQSS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3Vu
ZGF0aW9uU1BJLmgKaW5kZXggYWU3OGIzMzAxOTFlYzJlZmM4OTg0ZGExMjJhNjc2MzA4NjhkNGQ5
Yi4uYmEyZDM1NzM4NjRmZTE4MDE0ODdhNzhmZmE3NDI0ZGU2NTk4MTYzNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvUEFML3BhbC9zcGkvY29jb2EvQVZGb3VuZGF0aW9uU1BJLmgKQEAgLTIw
MCw2ICsyMDAsNyBAQCBOU19BU1NVTUVfTk9OTlVMTF9FTkQKIEBlbmQKIAogQGludGVyZmFjZSBB
VkNvbnRlbnRLZXlTZXNzaW9uIChBVkNvbnRlbnRLZXlHcm91cF9TdXBwb3J0KQorQHByb3BlcnR5
IChyZWFkb25seSwgbnVsbGFibGUpIEFWQ29udGVudEtleVJlcG9ydEdyb3VwICpkZWZhdWx0Q29u
dGVudEtleUdyb3VwOwogLSAobm9ubnVsbCBBVkNvbnRlbnRLZXlSZXBvcnRHcm91cCAqKW1ha2VD
b250ZW50S2V5R3JvdXA7CiBAZW5kCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1p
bmdBVkZPYmpDLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQy5oCmluZGV4IGZiNmY1
NGFhMDdlZGJiYmNlM2ExZDFiNDdhNjA5NTQ2NjhjNjFjMzEuLjYxNDY1YTE1NjdjYzA2ODU1Mjcw
YTM3YmI3MzYwOTNkOTJmMzRhM2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdB
VkZPYmpDLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakMuaApAQCAtMTIwLDYg
KzEyMCw4IEBAIHB1YmxpYzoKICAgICBDRE1JbnN0YW5jZVNlc3Npb25GYWlyUGxheVN0cmVhbWlu
Z0FWRk9iakMqIHNlc3Npb25Gb3JSZXF1ZXN0KEFWQ29udGVudEtleVJlcXVlc3QqKSBjb25zdDsK
IAogcHJpdmF0ZToKKyAgICB2b2lkIGhhbmRsZVVuZXhwZWN0ZWRSZXF1ZXN0cyhWZWN0b3I8UmV0
YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYmKTsKKwogI2lmICFSRUxFQVNFX0xPR19ESVNB
QkxFRAogICAgIFdURjo6TG9nZ2VyKiBsb2dnZXJQdHIoKSBjb25zdCB7IHJldHVybiBtX2xvZ2dl
ci5nZXQoKTsgfTsKICAgICBjb25zdCB2b2lkKiBsb2dJZGVudGlmaWVyKCkgY29uc3QgeyByZXR1
cm4gbV9sb2dJZGVudGlmaWVyOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9DRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5n
QVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCmluZGV4IDAyN2Nh
MWZhYzNkMzZmZmQ3ZTVkNTA0Mzg3MDVjMjUxYWJlZGI5ZjcuLjkwZjQzMjY3OTliZGEyMmYwNGEx
OTgxZmE5YjE0MTEyZjRiYTMxOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdB
VkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL0NETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDLm1tCkBAIC0xOTYs
NiArMTk2LDkgQEAgc3RhdGljIFdURkxvZ0NoYW5uZWwmIGxvZ0NoYW5uZWwoKSB7IHJldHVybiBM
b2dFTUU7IH0KIAogc3RhdGljIEF0b21TdHJpbmcgaW5pdFR5cGVGb3JSZXF1ZXN0KEFWQ29udGVu
dEtleVJlcXVlc3QqIHJlcXVlc3QpCiB7CisgICAgaWYgKFtyZXF1ZXN0LmlkZW50aWZpZXIgaXNL
aW5kT2ZDbGFzczpOU1N0cmluZy5jbGFzc10gJiYgW3JlcXVlc3QuaWRlbnRpZmllciBoYXNQcmVm
aXg6QCJza2Q6Ly8iXSkKKyAgICAgICAgcmV0dXJuIENETVByaXZhdGVGYWlyUGxheVN0cmVhbWlu
Zzo6c2tkTmFtZSgpOworCiAgICAgaWYgKCFbcmVxdWVzdCByZXNwb25kc1RvU2VsZWN0b3I6QHNl
bGVjdG9yKG9wdGlvbnMpXSkgewogICAgICAgICAvLyBBVkNvbnRlbnRLZXlSZXF1ZXN0Lm9wdGlv
bnMgd2FzIGFkZGVkIGluIDEwLjE0LjQ7IGlmIHdlIGFyZSBydW5uaW5nIG9uIGEgcHJldmlvdXMg
dmVyc2lvbgogICAgICAgICAvLyB3ZSBkb24ndCBoYXZlIHN1cHBvcnQgZm9yICdjZW5jJyBhbnl3
YXksIHNvIGp1c3QgYXNzdW1lICdzaW5mJy4KQEAgLTIxNSw2ICsyMTgsMTcgQEAgQUxMT1dfTkVX
X0FQSV9XSVRIT1VUX0dVQVJEU19FTkQKICAgICByZXR1cm4gQXRvbVN0cmluZyhuc0luaXRUeXBl
KTsKIH0KIAorc3RhdGljIFJlZjxTaGFyZWRCdWZmZXI+IGluaXRpYWxpemF0aW9uRGF0YUZvclJl
cXVlc3QoQVZDb250ZW50S2V5UmVxdWVzdCogcmVxdWVzdCkKK3sKKyAgICBpZiAoIXJlcXVlc3Qp
CisgICAgICAgIHJldHVybiBTaGFyZWRCdWZmZXI6OmNyZWF0ZSgpOworCisgICAgaWYgKGluaXRU
eXBlRm9yUmVxdWVzdChyZXF1ZXN0KSA9PSBDRE1Qcml2YXRlRmFpclBsYXlTdHJlYW1pbmc6OnNr
ZE5hbWUoKSkKKyAgICAgICAgcmV0dXJuIFNoYXJlZEJ1ZmZlcjo6Y3JlYXRlKFtyZXF1ZXN0Lmlk
ZW50aWZpZXIgZGF0YVVzaW5nRW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmcgYWxsb3dMb3Nz
eUNvbnZlcnNpb246WUVTXSk7CisKKyAgICByZXR1cm4gU2hhcmVkQnVmZmVyOjpjcmVhdGUocmVx
dWVzdC5pbml0aWFsaXphdGlvbkRhdGEpOworfQorCiBDRE1JbnN0YW5jZUZhaXJQbGF5U3RyZWFt
aW5nQVZGT2JqQzo6Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakMoKSA9IGRlZmF1
bHQ7CiAKICNpZiAhUkVMRUFTRV9MT0dfRElTQUJMRUQKQEAgLTI1Nyw4ICsyNzEsOCBAQCBSZXRh
aW5QdHI8QVZDb250ZW50S2V5UmVxdWVzdD4gQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FW
Rk9iakM6OnRha2VVbmV4cGVjdAogICAgIGZvciAoYXV0byByZXF1ZXN0SXRlciA9IG1fdW5leHBl
Y3RlZEtleVJlcXVlc3RzLmJlZ2luKCk7IHJlcXVlc3RJdGVyICE9IG1fdW5leHBlY3RlZEtleVJl
cXVlc3RzLmVuZCgpOyArK3JlcXVlc3RJdGVyKSB7CiAgICAgICAgIGF1dG8mIHJlcXVlc3QgPSAq
cmVxdWVzdEl0ZXI7CiAgICAgICAgIGF1dG8gcmVxdWVzdFR5cGUgPSBpbml0VHlwZUZvclJlcXVl
c3QocmVxdWVzdC5nZXQoKSk7Ci0gICAgICAgIGF1dG8qIHJlcXVlc3RJbml0RGF0YSAgPSByZXF1
ZXN0LmdldCgpLmluaXRpYWxpemF0aW9uRGF0YTsKLSAgICAgICAgaWYgKGluaXREYXRhVHlwZSAh
PSByZXF1ZXN0VHlwZSB8fCBpbml0RGF0YSAhPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShyZXF1ZXN0
SW5pdERhdGEpKQorICAgICAgICBhdXRvIHJlcXVlc3RJbml0RGF0YSA9IGluaXRpYWxpemF0aW9u
RGF0YUZvclJlcXVlc3QocmVxdWVzdC5nZXQoKSk7CisgICAgICAgIGlmIChpbml0RGF0YVR5cGUg
IT0gcmVxdWVzdFR5cGUgfHwgaW5pdERhdGEgIT0gcmVxdWVzdEluaXREYXRhKQogICAgICAgICAg
ICAgY29udGludWU7CiAKICAgICAgICAgcmV0dXJuIG1fdW5leHBlY3RlZEtleVJlcXVlc3RzLnRh
a2UocmVxdWVzdEl0ZXIpOwpAQCAtNDQ0LDEwICs0NTgsNyBAQCB2b2lkIENETUluc3RhbmNlRmFp
clBsYXlTdHJlYW1pbmdBVkZPYmpDOjpkaWRQcm92aWRlUmVxdWVzdChBVkNvbnRlbnRLZXlSZXF1
ZXN0CiAKICAgICBERUJVR19MT0dfSUZfUE9TU0lCTEUoTE9HSURFTlRJRklFUiwgIi0gVW5leHBl
Y3RlZCByZXF1ZXN0Iik7CiAKLSAgICBtX3VuZXhwZWN0ZWRLZXlSZXF1ZXN0cy5hZGQocmVxdWVz
dCk7Ci0KLSAgICBpZiAobV9jbGllbnQpCi0gICAgICAgIG1fY2xpZW50LT51bnJlcXVlc3RlZElu
aXRpYWxpemF0aW9uRGF0YVJlY2VpdmVkKGluaXRUeXBlRm9yUmVxdWVzdChyZXF1ZXN0KSwgU2hh
cmVkQnVmZmVyOjpjcmVhdGUocmVxdWVzdC5pbml0aWFsaXphdGlvbkRhdGEpKTsKKyAgICBoYW5k
bGVVbmV4cGVjdGVkUmVxdWVzdHMoe3sgcmVxdWVzdCB9fSk7CiB9CiAKIHZvaWQgQ0RNSW5zdGFu
Y2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6OmRpZFByb3ZpZGVSZXF1ZXN0cyhWZWN0b3I8UmV0
YWluUHRyPEFWQ29udGVudEtleVJlcXVlc3Q+PiYmIHJlcXVlc3RzKQpAQCAtNDU3LDggKzQ2OCwx
OCBAQCB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZPYmpDOjpkaWRQcm92aWRl
UmVxdWVzdHMoVmVjdG9yPFJldGFpblB0cjxBVgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgRVJST1JfTE9HX0lGX1BPU1NJQkxFKExPR0lE
RU5USUZJRVIsICItIG5vIHJlc3BvbnNpYmxlIHNlc3Npb247IGRyb3BwaW5nIik7CisgICAgaGFu
ZGxlVW5leHBlY3RlZFJlcXVlc3RzKFdURk1vdmUocmVxdWVzdHMpKTsKK30KKwordm9pZCBDRE1J
bnN0YW5jZUZhaXJQbGF5U3RyZWFtaW5nQVZGT2JqQzo6aGFuZGxlVW5leHBlY3RlZFJlcXVlc3Rz
KFZlY3RvcjxSZXRhaW5QdHI8QVZDb250ZW50S2V5UmVxdWVzdD4+JiYgcmVxdWVzdHMpCit7Cisg
ICAgd2hpbGUgKCFyZXF1ZXN0cy5pc0VtcHR5KCkpIHsKKyAgICAgICAgYXV0byByZXF1ZXN0ID0g
cmVxdWVzdHMudGFrZUxhc3QoKTsKKyAgICAgICAgbV91bmV4cGVjdGVkS2V5UmVxdWVzdHMuYWRk
KHJlcXVlc3QpOworCisgICAgICAgIGlmIChtX2NsaWVudCkKKyAgICAgICAgICAgIG1fY2xpZW50
LT51bnJlcXVlc3RlZEluaXRpYWxpemF0aW9uRGF0YVJlY2VpdmVkKGluaXRUeXBlRm9yUmVxdWVz
dChyZXF1ZXN0LmdldCgpKSwgaW5pdGlhbGl6YXRpb25EYXRhRm9yUmVxdWVzdChyZXF1ZXN0Lmdl
dCgpKSk7CisgICAgfQogfQogCiB2b2lkIENETUluc3RhbmNlRmFpclBsYXlTdHJlYW1pbmdBVkZP
YmpDOjpkaWRQcm92aWRlUmVuZXdpbmdSZXF1ZXN0KEFWQ29udGVudEtleVJlcXVlc3QgKnJlcXVl
c3QpCkBAIC01MjQsNiArNTQ1LDExIEBAIHZvaWQgQ0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWlu
Z0FWRk9iakM6OnNlc3Npb25JZGVudGlmaWVyQ2hhbmdlZChOU0RhdGEgKnNlc3NpCiAKIHZvaWQg
Q0RNSW5zdGFuY2VGYWlyUGxheVN0cmVhbWluZ0FWRk9iakM6Omdyb3VwU2Vzc2lvbklkZW50aWZp
ZXJDaGFuZ2VkKEFWQ29udGVudEtleVJlcG9ydEdyb3VwKiBncm91cCwgTlNEYXRhICpzZXNzaW9u
SWRlbnRpZmllcikKIHsKKyAgICBpZiAoZ3JvdXAgPT0gW21fc2Vzc2lvbiBkZWZhdWx0Q29udGVu
dEtleUdyb3VwXSkgeworICAgICAgICBJTkZPX0xPR19JRl9QT1NTSUJMRShMT0dJREVOVElGSUVS
LCAiLSBkZWZhdWx0IHVudXNlZCBncm91cCBpZGVudGlmaWVyIGNoYW5nZWQ7IGRyb3BwaW5nIik7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBpZiAoYXV0byogc2Vzc2lvbiA9IHNlc3Np
b25Gb3JHcm91cChncm91cCkpIHsKICAgICAgICAgc2Vzc2lvbi0+Z3JvdXBTZXNzaW9uSWRlbnRp
ZmllckNoYW5nZWQoZ3JvdXAsIHNlc3Npb25JZGVudGlmaWVyKTsKICAgICAgICAgcmV0dXJuOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMu
bW0KaW5kZXggYmU2MGUzNGMzMDQ3ZGRkODllMmFkOWY1MjAzOGM3Nzc3YTVjZTM3My4uNzA0NjZh
NzAwZmJjYmYwMzg1NjZjMWEzZDdiMDIzMjg5MGU0ODlhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tCkBAIC0yNzcsNiArMjc3
LDkgQEAgdm9pZCBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpzZXREZWNvbXByZXNzaW9uU2Vz
c2lvbihXZWJDb3JlRGVjb21wcmVzc2lvblNlc3MKICNpZiBFTkFCTEUoRU5DUllQVEVEX01FRElB
KQogdm9pZCBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpjZG1JbnN0YW5jZUF0dGFjaGVkKENE
TUluc3RhbmNlJiBpbnN0YW5jZSkKIHsKKyAgICBpZiAobV9jZG1JbnN0YW5jZS5nZXQoKSA9PSAm
aW5zdGFuY2UpCisgICAgICAgIHJldHVybjsKKwogICAgIEFTU0VSVCghbV9jZG1JbnN0YW5jZSk7
CiAgICAgbV9jZG1JbnN0YW5jZSA9ICZpbnN0YW5jZTsKICAgICBmb3IgKGF1dG8mIHNvdXJjZUJ1
ZmZlciA6IG1fc291cmNlQnVmZmVycykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ01ha2VM
aXN0cy50eHQgYi9Tb3VyY2UvV2ViS2l0L0NNYWtlTGlzdHMudHh0CmluZGV4IGMwY2E4NmYxMzk5
M2JiOTMzNDIyZTUzY2VlNzYxZjI0YjZmNTBlNjUuLmNiY2E4ZDMzODhjNTgyOWI3NDI3MjJlNzQ5
OWY5MzY5ZmIzYzMwODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ01ha2VMaXN0cy50eHQK
KysrIGIvU291cmNlL1dlYktpdC9DTWFrZUxpc3RzLnR4dApAQCAtMjI4LDYgKzIyOCw3IEBAIHNl
dChXZWJLaXRfTUVTU0FHRVNfSU5fRklMRVMKICAgICBXZWJQcm9jZXNzL0dQVS9tZWRpYS9NZWRp
YVNvdXJjZVByaXZhdGVSZW1vdGUKICAgICBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRp
b1Nlc3Npb24KICAgICBXZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVBdWRpb1NvdXJjZVByb3Zp
ZGVyTWFuYWdlcgorICAgIFdlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlCiAg
ICAgV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uCiAgICAgV2Vi
UHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlTGVnYWN5Q0RNU2Vzc2lvbgogICAgIFdlYlByb2Nlc3Mv
R1BVL21lZGlhL1NvdXJjZUJ1ZmZlclByaXZhdGVSZW1vdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdCBiL1NvdXJjZS9XZWJLaXQvRGVy
aXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdAppbmRleCAxNjZiMjliMmY3Nzk5NDZjYWMyN2Q2
NTc1NzU5NjAxZWY1Njg0ZjJkLi4yM2FkNDA3ODBkMzY1N2JjODlhYTgyYjE0Y2YzNzcwYTMyNmRk
NDA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmls
ZWxpc3QKKysrIGIvU291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0
CkBAIC0xNDMsNiArMTQzLDcgQEAgJChQUk9KRUNUX0RJUikvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
TWVkaWFQbGF5ZXJQcml2YXRlUmVtb3RlLm1lc3NhZ2VzLmluCiAkKFBST0pFQ1RfRElSKS9XZWJQ
cm9jZXNzL0dQVS9tZWRpYS9NZWRpYVNvdXJjZVByaXZhdGVSZW1vdGUubWVzc2FnZXMuaW4KICQo
UFJPSkVDVF9ESVIpL1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUF1ZGlvU2Vzc2lvbi5tZXNz
YWdlcy5pbgogJChQUk9KRUNUX0RJUikvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9T
b3VyY2VQcm92aWRlck1hbmFnZXIubWVzc2FnZXMuaW4KKyQoUFJPSkVDVF9ESVIpL1dlYlByb2Nl
c3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2VzLmluCiAkKFBST0pFQ1RfRElS
KS9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVNlc3Npb24ubWVzc2FnZXMu
aW4KICQoUFJPSkVDVF9ESVIpL1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUxlZ2FjeUNETVNl
c3Npb24ubWVzc2FnZXMuaW4KICQoUFJPSkVDVF9ESVIpL1dlYlByb2Nlc3MvR1BVL21lZGlhL1Nv
dXJjZUJ1ZmZlclByaXZhdGVSZW1vdGUubWVzc2FnZXMuaW4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvRGVyaXZlZFNvdXJjZXMtb3V0cHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViS2l0L0Rl
cml2ZWRTb3VyY2VzLW91dHB1dC54Y2ZpbGVsaXN0CmluZGV4IDFlMjRhOGY1YTBiNDkwNzM1M2I5
OTVjNjcwNTg1ZjJkYzU3ODA3MTMuLjA2NTU3NTU5NTMwODMwZDYzMmE1Njc3YjNlYmVlZDcwN2Zi
ZTJjOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvRGVyaXZlZFNvdXJjZXMtb3V0cHV0Lnhj
ZmlsZWxpc3QKKysrIGIvU291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy1vdXRwdXQueGNmaWxl
bGlzdApAQCAtMTYyLDYgKzE2Miw5IEBAICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291
cmNlcy9XZWJLaXQyL1JlbW90ZUF1ZGlvVHJhY2tQcm94eU1lc3NhZ2VzUmVwbGllCiAkKEJVSUxU
X1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVDRE1GYWN0b3J5UHJv
eHlNZXNzYWdlUmVjZWl2ZXIuY3BwCiAkKEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJj
ZXMvV2ViS2l0Mi9SZW1vdGVDRE1GYWN0b3J5UHJveHlNZXNzYWdlcy5oCiAkKEJVSUxUX1BST0RV
Q1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVDRE1GYWN0b3J5UHJveHlNZXNz
YWdlc1JlcGxpZXMuaAorJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2VzL1dlYktp
dDIvUmVtb3RlQ0RNSW5zdGFuY2VNZXNzYWdlUmVjZWl2ZXIuY3BwCiskKEJVSUxUX1BST0RVQ1RT
X0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VzLmgK
KyQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291cmNlcy9XZWJLaXQyL1JlbW90ZUNETUlu
c3RhbmNlTWVzc2FnZXNSZXBsaWVzLmgKICQoQlVJTFRfUFJPRFVDVFNfRElSKS9EZXJpdmVkU291
cmNlcy9XZWJLaXQyL1JlbW90ZUNETUluc3RhbmNlUHJveHlNZXNzYWdlUmVjZWl2ZXIuY3BwCiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikvRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9SZW1vdGVDRE1JbnN0
YW5jZVByb3h5TWVzc2FnZXMuaAogJChCVUlMVF9QUk9EVUNUU19ESVIpL0Rlcml2ZWRTb3VyY2Vz
L1dlYktpdDIvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eU1lc3NhZ2VzUmVwbGllcy5oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L0Rlcml2ZWRTb3VyY2VzLm1ha2UgYi9Tb3VyY2UvV2ViS2l0L0Rl
cml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggYzkxNmY2NTkzNmFkMDA3N2U0MGU4MWE3MThhZjIyY2M1
MWRkN2Q0Zi4uYzdhNTA5NGIyNDJiNDBmYjkyMTBkOTAzYzNkYzhjZmEwNzJiNDJmNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1NvdXJjZS9XZWJL
aXQvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtMTgwLDYgKzE4MCw3IEBAIE1FU1NBR0VfUkVDRUlW
RVJTID0gXAogCVdlYlByb2Nlc3MvR1BVL21lZGlhL01lZGlhU291cmNlUHJpdmF0ZVJlbW90ZSBc
CiAJV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQXVkaW9TZXNzaW9uIFwKIAlXZWJQcm9jZXNz
L0dQVS9tZWRpYS9SZW1vdGVBdWRpb1NvdXJjZVByb3ZpZGVyTWFuYWdlciBcCisJV2ViUHJvY2Vz
cy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UgXAogCVdlYlByb2Nlc3MvR1BVL21lZGlhL1Jl
bW90ZUNETUluc3RhbmNlU2Vzc2lvbiBcCiAJV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlTGVn
YWN5Q0RNU2Vzc2lvbiBcCiAJV2ViUHJvY2Vzcy9HUFUvbWVkaWEvU291cmNlQnVmZmVyUHJpdmF0
ZVJlbW90ZSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVt
b3RlQ0RNSW5zdGFuY2VQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEv
UmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5jcHAKaW5kZXggMWI0MGFiNWIwMDQ3ZWQ2MTRlN2M5NGI1
OWE5YTc3NTEyZjNiYzYyMC4uZWJiOGU1ZmYwMjhjODVmNmY1NjM0YTAyMTAyNTcwZDExNjQwMGNj
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUlu
c3RhbmNlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1v
dGVDRE1JbnN0YW5jZVByb3h5LmNwcApAQCAtMjksNiArMjksNyBAQAogI2lmIEVOQUJMRShHUFVf
UFJPQ0VTUykgJiYgRU5BQkxFKEVOQ1JZUFRFRF9NRURJQSkKIAogI2luY2x1ZGUgIlJlbW90ZUNE
TUluc3RhbmNlQ29uZmlndXJhdGlvbi5oIgorI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlTWVz
c2FnZXMuaCIKICNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZVNlc3Npb25Qcm94eS5oIgogI2lu
Y2x1ZGUgIlNoYXJlZEJ1ZmZlckNvcHkuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0NETUluc3RhbmNl
Lmg+CkBAIC0zNywyMiArMzgsMzYgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHVzaW5nIG5hbWVz
cGFjZSBXZWJDb3JlOwogCi1zdGQ6OnVuaXF1ZV9wdHI8UmVtb3RlQ0RNSW5zdGFuY2VQcm94eT4g
UmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6Y3JlYXRlKFdlYWtQdHI8UmVtb3RlQ0RNUHJveHk+JiYg
Y2RtLCBSZWY8Q0RNSW5zdGFuY2U+JiYgcHJpdikKK3N0ZDo6dW5pcXVlX3B0cjxSZW1vdGVDRE1J
bnN0YW5jZVByb3h5PiBSZW1vdGVDRE1JbnN0YW5jZVByb3h5OjpjcmVhdGUoV2Vha1B0cjxSZW1v
dGVDRE1Qcm94eT4mJiBjZG0sIFJlZjxDRE1JbnN0YW5jZT4mJiBwcml2LCBSZW1vdGVDRE1JbnN0
YW5jZUlkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKICAgICBhdXRvIGNvbmZpZ3VyYXRpb24gPSBt
YWtlVW5pcXVlUmVmV2l0aG91dEZhc3RNYWxsb2NDaGVjazxSZW1vdGVDRE1JbnN0YW5jZUNvbmZp
Z3VyYXRpb24sIFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbiYmPih7CiAgICAgICAgIHBy
aXYtPmtleVN5c3RlbSgpLAogICAgIH0pOwotICAgIHJldHVybiBzdGQ6OnVuaXF1ZV9wdHI8UmVt
b3RlQ0RNSW5zdGFuY2VQcm94eT4obmV3IFJlbW90ZUNETUluc3RhbmNlUHJveHkoV1RGTW92ZShj
ZG0pLCBXVEZNb3ZlKHByaXYpLCBXVEZNb3ZlKGNvbmZpZ3VyYXRpb24pKSk7CisgICAgcmV0dXJu
IHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVDRE1JbnN0YW5jZVByb3h5PihuZXcgUmVtb3RlQ0RNSW5z
dGFuY2VQcm94eShXVEZNb3ZlKGNkbSksIFdURk1vdmUocHJpdiksIFdURk1vdmUoY29uZmlndXJh
dGlvbiksIGlkZW50aWZpZXIpKTsKIH0KIAotUmVtb3RlQ0RNSW5zdGFuY2VQcm94eTo6UmVtb3Rl
Q0RNSW5zdGFuY2VQcm94eShXZWFrUHRyPFJlbW90ZUNETVByb3h5PiYmIGNkbSwgUmVmPENETUlu
c3RhbmNlPiYmIHByaXYsIFVuaXF1ZVJlZjxSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24+
JiYgY29uZmlndXJhdGlvbikKK1JlbW90ZUNETUluc3RhbmNlUHJveHk6OlJlbW90ZUNETUluc3Rh
bmNlUHJveHkoV2Vha1B0cjxSZW1vdGVDRE1Qcm94eT4mJiBjZG0sIFJlZjxDRE1JbnN0YW5jZT4m
JiBwcml2LCBVbmlxdWVSZWY8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uPiYmIGNvbmZp
Z3VyYXRpb24sIFJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmllciBpZGVudGlmaWVyKQogICAgIDog
bV9jZG0oV1RGTW92ZShjZG0pKQogICAgICwgbV9pbnN0YW5jZShXVEZNb3ZlKHByaXYpKQogICAg
ICwgbV9jb25maWd1cmF0aW9uKFdURk1vdmUoY29uZmlndXJhdGlvbikpCisgICAgLCBtX2lkZW50
aWZpZXIoaWRlbnRpZmllcikKIHsKKyAgICBtX2luc3RhbmNlLT5zZXRDbGllbnQobWFrZVdlYWtQ
dHI8Q0RNSW5zdGFuY2VDbGllbnQ+KHRoaXMpKTsKIH0KIAotUmVtb3RlQ0RNSW5zdGFuY2VQcm94
eTo6flJlbW90ZUNETUluc3RhbmNlUHJveHkoKSA9IGRlZmF1bHQ7CitSZW1vdGVDRE1JbnN0YW5j
ZVByb3h5Ojp+UmVtb3RlQ0RNSW5zdGFuY2VQcm94eSgpCit7CisgICAgbV9pbnN0YW5jZS0+Y2xl
YXJDbGllbnQoKTsKK30KKwordm9pZCBSZW1vdGVDRE1JbnN0YW5jZVByb3h5Ojp1bnJlcXVlc3Rl
ZEluaXRpYWxpemF0aW9uRGF0YVJlY2VpdmVkKGNvbnN0IFN0cmluZyYgdHlwZSwgUmVmPFNoYXJl
ZEJ1ZmZlcj4mJiBpbml0RGF0YSkKK3sKKyAgICBpZiAoIW1fY2RtKQorICAgICAgICByZXR1cm47
CisKKyAgICBpZiAoYXV0byogZmFjdG9yeSA9IG1fY2RtLT5mYWN0b3J5KCkpCisgICAgICAgIGZh
Y3RvcnktPmdwdUNvbm5lY3Rpb25Ub1dlYlByb2Nlc3MoKS5jb25uZWN0aW9uKCkuc2VuZChNZXNz
YWdlczo6UmVtb3RlQ0RNSW5zdGFuY2U6OlVucmVxdWVzdGVkSW5pdGlhbGl6YXRpb25EYXRhUmVj
ZWl2ZWQodHlwZSwgV1RGTW92ZShpbml0RGF0YSkpLCBtX2lkZW50aWZpZXIpOworfQogCiB2b2lk
IFJlbW90ZUNETUluc3RhbmNlUHJveHk6OmluaXRpYWxpemVXaXRoQ29uZmlndXJhdGlvbihjb25z
dCBXZWJDb3JlOjpDRE1LZXlTeXN0ZW1Db25maWd1cmF0aW9uJiBjb25maWd1cmF0aW9uLCBBbGxv
d0Rpc3RpbmN0aXZlSWRlbnRpZmllcnMgYWxsb3dEaXN0aW5jdGl2ZUlkZW50aWZpZXJzLCBBbGxv
d1BlcnNpc3RlbnRTdGF0ZSBhbGxvd1BlcnNpc3RlbnRTdGF0ZSwgQ29tcGxldGlvbkhhbmRsZXI8
dm9pZChTdWNjZXNzVmFsdWUpPiYmIGNvbXBsZXRpb24pCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5oIGIvU291cmNl
L1dlYktpdC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETUluc3RhbmNlUHJveHkuaAppbmRleCA1
MTRhMzA2NWE5OGNjMzFlZTY0MzMzN2Y5YmFkOTc0ODRiOTJmZmFiLi45MjRlYWRkNTM3MmNhMjVh
MTIxYjI1ZmRhODY2YTJhY2ViYjQ3ZTVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0dQVVBy
b2Nlc3MvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
R1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZVByb3h5LmgKQEAgLTUwLDkgKzUwLDkg
QEAgbmFtZXNwYWNlIFdlYktpdCB7CiBzdHJ1Y3QgUmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0
aW9uOwogY2xhc3MgUmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uUHJveHk7CiAKLWNsYXNzIFJlbW90
ZUNETUluc3RhbmNlUHJveHkgOiBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVyICB7CitjbGFz
cyBSZW1vdGVDRE1JbnN0YW5jZVByb3h5IDogcHVibGljIFdlYkNvcmU6OkNETUluc3RhbmNlQ2xp
ZW50LCBwcml2YXRlIElQQzo6TWVzc2FnZVJlY2VpdmVyICB7CiBwdWJsaWM6Ci0gICAgc3RhdGlj
IHN0ZDo6dW5pcXVlX3B0cjxSZW1vdGVDRE1JbnN0YW5jZVByb3h5PiBjcmVhdGUoV2Vha1B0cjxS
ZW1vdGVDRE1Qcm94eT4mJiwgUmVmPFdlYkNvcmU6OkNETUluc3RhbmNlPiYmKTsKKyAgICBzdGF0
aWMgc3RkOjp1bmlxdWVfcHRyPFJlbW90ZUNETUluc3RhbmNlUHJveHk+IGNyZWF0ZShXZWFrUHRy
PFJlbW90ZUNETVByb3h5PiYmLCBSZWY8V2ViQ29yZTo6Q0RNSW5zdGFuY2U+JiYsIFJlbW90ZUNE
TUluc3RhbmNlSWRlbnRpZmllcik7CiAgICAgflJlbW90ZUNETUluc3RhbmNlUHJveHkoKTsKIAog
ICAgIGNvbnN0IFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbiYgY29uZmlndXJhdGlvbigp
IGNvbnN0IHsgcmV0dXJuIG1fY29uZmlndXJhdGlvbi5nZXQoKTsgfQpAQCAtNjAsNyArNjAsMTAg
QEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBSZW1vdGVDRE1GYWN0b3J5
UHJveHk7Ci0gICAgUmVtb3RlQ0RNSW5zdGFuY2VQcm94eShXZWFrUHRyPFJlbW90ZUNETVByb3h5
PiYmLCBSZWY8V2ViQ29yZTo6Q0RNSW5zdGFuY2U+JiYsIFVuaXF1ZVJlZjxSZW1vdGVDRE1JbnN0
YW5jZUNvbmZpZ3VyYXRpb24+JiYpOworICAgIFJlbW90ZUNETUluc3RhbmNlUHJveHkoV2Vha1B0
cjxSZW1vdGVDRE1Qcm94eT4mJiwgUmVmPFdlYkNvcmU6OkNETUluc3RhbmNlPiYmLCBVbmlxdWVS
ZWY8UmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uPiYmLCBSZW1vdGVDRE1JbnN0YW5jZUlk
ZW50aWZpZXIpOworCisgICAgLy8gQ0RNSW5zdGFuY2VDbGllbnQKKyAgICB2b2lkIHVucmVxdWVz
dGVkSW5pdGlhbGl6YXRpb25EYXRhUmVjZWl2ZWQoY29uc3QgU3RyaW5nJiwgUmVmPFdlYkNvcmU6
OlNoYXJlZEJ1ZmZlcj4mJikgZmluYWw7CiAKICAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlcgog
ICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVy
JikgZmluYWw7CkBAIC03OSw2ICs4Miw3IEBAIHByaXZhdGU6CiAgICAgV2Vha1B0cjxSZW1vdGVD
RE1Qcm94eT4gbV9jZG07CiAgICAgUmVmPFdlYkNvcmU6OkNETUluc3RhbmNlPiBtX2luc3RhbmNl
OwogICAgIFVuaXF1ZVJlZjxSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRpb24+IG1fY29uZmln
dXJhdGlvbjsKKyAgICBSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOwog
ICAgIEhhc2hNYXA8UmVtb3RlQ0RNSW5zdGFuY2VTZXNzaW9uSWRlbnRpZmllciwgc3RkOjp1bmlx
dWVfcHRyPFJlbW90ZUNETUluc3RhbmNlU2Vzc2lvblByb3h5Pj4gbV9zZXNzaW9uczsKIH07CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Qcm94
eS5jcHAgYi9Tb3VyY2UvV2ViS2l0L0dQVVByb2Nlc3MvbWVkaWEvUmVtb3RlQ0RNUHJveHkuY3Bw
CmluZGV4IDA1MTA2NjMzZjhlN2IxMmVmMDlmZGM3ZDU3YWQ1OWRmOTcyOWU3M2IuLmU4NWUwMTM4
YTg4NjcwNDhiNTEyY2E0ZDllMWUyZjZkZTA3OWYwNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvR1BVUHJvY2Vzcy9tZWRpYS9SZW1vdGVDRE1Qcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9HUFVQcm9jZXNzL21lZGlhL1JlbW90ZUNETVByb3h5LmNwcApAQCAtOTAsOCArOTAsOCBAQCB2
b2lkIFJlbW90ZUNETVByb3h5OjpjcmVhdGVJbnN0YW5jZShDb21wbGV0aW9uSGFuZGxlcjx2b2lk
KFJlbW90ZUNETUluc3RhbmNlSWRlbgogICAgICAgICBjb21wbGV0aW9uKHsgfSwgeyB9KTsKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBhdXRvIGluc3RhbmNlID0gUmVtb3RlQ0RNSW5zdGFu
Y2VQcm94eTo6Y3JlYXRlKG1ha2VXZWFrUHRyKHRoaXMpLCBwcml2YXRlSW5zdGFuY2UucmVsZWFz
ZU5vbk51bGwoKSk7CiAgICAgYXV0byBpZGVudGlmaWVyID0gUmVtb3RlQ0RNSW5zdGFuY2VJZGVu
dGlmaWVyOjpnZW5lcmF0ZSgpOworICAgIGF1dG8gaW5zdGFuY2UgPSBSZW1vdGVDRE1JbnN0YW5j
ZVByb3h5OjpjcmVhdGUobWFrZVdlYWtQdHIodGhpcyksIHByaXZhdGVJbnN0YW5jZS5yZWxlYXNl
Tm9uTnVsbCgpLCBpZGVudGlmaWVyKTsKICAgICBSZW1vdGVDRE1JbnN0YW5jZUNvbmZpZ3VyYXRp
b24gY29uZmlndXJhdGlvbiA9IGluc3RhbmNlLT5jb25maWd1cmF0aW9uKCk7CiAgICAgbV9mYWN0
b3J5LT5hZGRJbnN0YW5jZShpZGVudGlmaWVyLCBXVEZNb3ZlKGluc3RhbmNlKSk7CiAgICAgY29t
cGxldGlvbihpZGVudGlmaWVyLCBXVEZNb3ZlKGNvbmZpZ3VyYXRpb24pKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDcyNWFiNmExOGVj
YzI3ZjM5YWNjNGM1NTg0OWYxOTQ5OGQ1Mzg5ZDIuLmY2NjU1NjI5MTEzNGQ5ZGU4MmNkOWFhZGIx
MDM3OGNiNGM5MjMzYzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagpAQCAtMTg2MCw2ICsxODYwLDcgQEAKIAkJQ0RBMjlBMjkxQ0JFQjY3QTAw
OTAxQ0NGIC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBMjlBMjUxQ0JFQjY3QTAwOTAxQ0NG
IC8qIFBsYXliYWNrU2Vzc2lvbk1hbmFnZXJNZXNzYWdlcy5oICovOyB9OwogCQlDREEyOUEyQTFD
QkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZVJlY2Vp
dmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENE
QTI5QTI2MUNCRUI2N0EwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHlNZXNz
YWdlUmVjZWl2ZXIuY3BwICovOyB9OwogCQlDREEyOUEyQjFDQkVCNjdBMDA5MDFDQ0YgLyogUGxh
eWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2FnZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENEQTI5QTI3MUNCRUI2N0EwMDkwMUNDRiAvKiBQbGF5
YmFja1Nlc3Npb25NYW5hZ2VyUHJveHlNZXNzYWdlcy5oICovOyB9OworCQlDREE2RDQ1MTI1QTk4
OUM3MDA0QjFERjYgLyogUmVtb3RlQ0RNSW5zdGFuY2VNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBNkQ0NTAyNUE5ODlB
QzAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlTWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsK
IAkJQ0RBOTNEQjAyMkY4QkNGNDAwNDkwQTY5IC8qIEZ1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3Rp
Y1BhcmFtZXRlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IENEQTkzREFFMjJGOEJDRjMwMDQ5MEE2OSAvKiBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0
aWNQYXJhbWV0ZXJzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJQ0RBOTNEQjEyMkY4QkNGNDAwNDkwQTY5IC8qIEZ1bGxzY3JlZW5Ub3VjaFNlY2hl
dXJpc3RpY1BhcmFtZXRlcnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0RBOTNEQUYyMkY4QkNGNDAwNDkwQTY5IC8qIEZ1bGxzY3JlZW5Ub3VjaFNl
Y2hldXJpc3RpY1BhcmFtZXRlcnMuY3BwICovOyB9OwogCQlDREFDMjBCNDIzRkI1OEYyMDAyMURF
RTMgLyogUmVtb3RlQ0RNSW5zdGFuY2VQcm94eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQ0RBQzIwQjIyM0ZCNThGMjAwMjFERUUzIC8qIFJlbW90ZUNE
TUluc3RhbmNlUHJveHkuaCAqLzsgfTsKQEAgLTU1MjIsNiArNTUyMyw5IEBACiAJCUNEQTI5QTI1
MUNCRUI2N0EwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyTWVzc2FnZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGxheWJhY2tTZXNzaW9uTWFuYWdlck1lc3Nh
Z2VzLmg7IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJLaXQyL1BsYXliYWNrU2Vzc2lvbk1hbmFn
ZXJNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlDREEy
OUEyNjFDQkVCNjdBMDA5MDFDQ0YgLyogUGxheWJhY2tTZXNzaW9uTWFuYWdlclByb3h5TWVzc2Fn
ZVJlY2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFBsYXli
YWNrU2Vzc2lvbk1hbmFnZXJQcm94eU1lc3NhZ2VSZWNlaXZlci5jcHA7IHBhdGggPSBEZXJpdmVk
U291cmNlcy9XZWJLaXQyL1BsYXliYWNrU2Vzc2lvbk1hbmFnZXJQcm94eU1lc3NhZ2VSZWNlaXZl
ci5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCUNEQTI5QTI3MUNC
RUI2N0EwMDkwMUNDRiAvKiBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJveHlNZXNzYWdlcy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBQbGF5YmFja1Nlc3Npb25NYW5hZ2VyUHJv
eHlNZXNzYWdlcy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViS2l0Mi9QbGF5YmFja1Nlc3Np
b25NYW5hZ2VyUHJveHlNZXNzYWdlcy5oOyBzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElS
OyB9OworCQlDREE2RDQ0RDI1QTk3MTU4MDA0QjFERjYgLyogUmVtb3RlQ0RNSW5zdGFuY2UubWVz
c2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0OyBwYXRoID0gUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2FnZXMuaW47IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCUNEQTZENDRGMjVBOTg5QUMwMDRCMURGNiAvKiBSZW1vdGVDRE1J
bnN0YW5jZU1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbW90
ZUNETUluc3RhbmNlTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQ0RB
NkQ0NTAyNUE5ODlBQzAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlTWVzc2FnZVJlY2VpdmVy
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJlbW90ZUNETUluc3Rh
bmNlTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0RB
OTNEQUUyMkY4QkNGMzAwNDkwQTY5IC8qIEZ1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3RpY1BhcmFt
ZXRlcnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRnVsbHNjcmVlblRvdWNoU2VjaGV1cmlzdGljUGFyYW1l
dGVycy5oOyBwYXRoID0gaW9zL2Z1bGxzY3JlZW4vRnVsbHNjcmVlblRvdWNoU2VjaGV1cmlzdGlj
UGFyYW1ldGVycy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDREE5M0RBRjIyRjhC
Q0Y0MDA0OTBBNjkgLyogRnVsbHNjcmVlblRvdWNoU2VjaGV1cmlzdGljUGFyYW1ldGVycy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBGdWxsc2NyZWVuVG91Y2hTZWNoZXVyaXN0aWNQYXJhbWV0ZXJz
LmNwcDsgcGF0aCA9IGlvcy9mdWxsc2NyZWVuL0Z1bGxzY3JlZW5Ub3VjaFNlY2hldXJpc3RpY1Bh
cmFtZXRlcnMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDREE5NTkzQTI0MTJC
MTc1MDA5MTBFRUYgLyogUmVtb3RlTWVkaWFTZXNzaW9uSGVscGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFJlbW90ZU1lZGlhU2Vzc2lvbkhlbHBlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC01OTU5LDYgKzU5NjMsNyBAQAogCQkJCUNEQUMyMEMyMjNGQzJGNzUwMDIxREVF
MyAvKiBSZW1vdGVDRE1JZGVudGlmaWVyLmggKi8sCiAJCQkJQ0RBQzIwQkIyM0ZDMkY3NDAwMjFE
RUUzIC8qIFJlbW90ZUNETUluc3RhbmNlLmNwcCAqLywKIAkJCQlDREFDMjBCNzIzRkMyRjczMDAy
MURFRTMgLyogUmVtb3RlQ0RNSW5zdGFuY2UuaCAqLywKKwkJCQlDREE2RDQ0RDI1QTk3MTU4MDA0
QjFERjYgLyogUmVtb3RlQ0RNSW5zdGFuY2UubWVzc2FnZXMuaW4gKi8sCiAJCQkJQ0RBQzIwQzEy
M0ZDMkY3NTAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbi5oICovLAog
CQkJCUNEQUMyMEI2MjNGQzJGNzMwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZUlkZW50aWZp
ZXIuaCAqLywKIAkJCQlDREFDMjBCRTIzRkMyRjc0MDAyMURFRTMgLyogUmVtb3RlQ0RNSW5zdGFu
Y2VTZXNzaW9uLmNwcCAqLywKQEAgLTEwNzU5LDYgKzEwNzY0LDggQEAKIAkJCQlDREFDMjBGMjIz
RkMzODNBMDAyMURFRTMgLyogUmVtb3RlQ0RNRmFjdG9yeVByb3h5TWVzc2FnZVJlY2VpdmVyLmNw
cCAqLywKIAkJCQlDREFDMjBGMzIzRkMzODNBMDAyMURFRTMgLyogUmVtb3RlQ0RNRmFjdG9yeVBy
b3h5TWVzc2FnZXMuaCAqLywKIAkJCQlDREFDMjBFRTIzRkMzODM5MDAyMURFRTMgLyogUmVtb3Rl
Q0RNRmFjdG9yeVByb3h5TWVzc2FnZXNSZXBsaWVzLmggKi8sCisJCQkJQ0RBNkQ0NTAyNUE5ODlB
QzAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNlTWVzc2FnZVJlY2VpdmVyLmNwcCAqLywKKwkJ
CQlDREE2RDQ0RjI1QTk4OUFDMDA0QjFERjYgLyogUmVtb3RlQ0RNSW5zdGFuY2VNZXNzYWdlcy5o
ICovLAogCQkJCUNEQUMyMEY1MjNGQzM4M0IwMDIxREVFMyAvKiBSZW1vdGVDRE1JbnN0YW5jZVBy
b3h5TWVzc2FnZVJlY2VpdmVyLmNwcCAqLywKIAkJCQlDREFDMjBFQjIzRkMzODM4MDAyMURFRTMg
LyogUmVtb3RlQ0RNSW5zdGFuY2VQcm94eU1lc3NhZ2VzLmggKi8sCiAJCQkJQ0RBQzIwRjYyM0ZD
MzgzQjAwMjFERUUzIC8qIFJlbW90ZUNETUluc3RhbmNlUHJveHlNZXNzYWdlc1JlcGxpZXMuaCAq
LywKQEAgLTEzNzY4LDYgKzEzNzc1LDcgQEAKIAkJCQkyRDExQjc2NDIxMjZBMjgyMDA2Rjg4Nzgg
LyogVW5pZmllZFNvdXJjZTEwLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJEMTFCNzYzMjEyNkEy
ODIwMDZGODg3OCAvKiBVbmlmaWVkU291cmNlMTAtbW0ubW0gaW4gU291cmNlcyAqLywKIAkJCQky
RDExQjc2NTIxMjZBMjgyMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTExLW1tLm1tIGluIFNvdXJj
ZXMgKi8sCisJCQkJQ0RBNkQ0NTEyNUE5ODlDNzAwNEIxREY2IC8qIFJlbW90ZUNETUluc3RhbmNl
TWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTJEMTFCNzY2MjEyNkEyODIw
MDZGODg3OCAvKiBVbmlmaWVkU291cmNlMTEuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQxMUI3
NjcyMTI2QTI4MjAwNkY4ODc4IC8qIFVuaWZpZWRTb3VyY2UxMi1tbS5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTJEMTFCNzY4MjEyNkEyODIwMDZGODg3OCAvKiBVbmlmaWVkU291cmNlMTIuY3BwIGlu
IFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvR1BVL21l
ZGlhL1JlbW90ZUNETUluc3RhbmNlLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUv
bWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UuY3BwCmluZGV4IDU5NDRkYzBkZDM1OGY2ODk0ODAzMzll
NGUyMjI5N2M5ZTJmNGUxMDQuLmVkYzg5NGVlOTMzYjhlYWM2MThkOWE1ZjY5NzZlOWM0ZDI4Mzg2
ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3Rl
Q0RNSW5zdGFuY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9HUFUvbWVkaWEv
UmVtb3RlQ0RNSW5zdGFuY2UuY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKEdQVV9Q
Uk9DRVNTKSAmJiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQogCiAjaW5jbHVkZSAiR1BVUHJvY2Vz
c0Nvbm5lY3Rpb24uaCIKKyNpbmNsdWRlICJSZW1vdGVDRE1JbnN0YW5jZU1lc3NhZ2VzLmgiCiAj
aW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VQcm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiUmVt
b3RlQ0RNSW5zdGFuY2VTZXNzaW9uLmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RNSW5zdGFuY2VTZXNz
aW9uSWRlbnRpZmllci5oIgpAQCAtNTEsNiArNTIsMjAgQEAgUmVtb3RlQ0RNSW5zdGFuY2U6OlJl
bW90ZUNETUluc3RhbmNlKFdlYWtQdHI8UmVtb3RlQ0RNRmFjdG9yeT4mJiBmYWN0b3J5LCBSZW1v
dGUKICAgICAsIG1faWRlbnRpZmllcihXVEZNb3ZlKGlkZW50aWZpZXIpKQogICAgICwgbV9jb25m
aWd1cmF0aW9uKFdURk1vdmUoY29uZmlndXJhdGlvbikpCiB7CisgICAgaWYgKG1fZmFjdG9yeSkK
KyAgICAgICAgbV9mYWN0b3J5LT5ncHVQcm9jZXNzQ29ubmVjdGlvbigpLm1lc3NhZ2VSZWNlaXZl
ck1hcCgpLmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlQ0RNSW5zdGFuY2U6Om1l
c3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9pZGVudGlmaWVyLnRvVUludDY0KCksICp0aGlzKTsKK30K
KworUmVtb3RlQ0RNSW5zdGFuY2U6On5SZW1vdGVDRE1JbnN0YW5jZSgpCit7CisgICAgaWYgKG1f
ZmFjdG9yeSkKKyAgICAgICAgbV9mYWN0b3J5LT5ncHVQcm9jZXNzQ29ubmVjdGlvbigpLm1lc3Nh
Z2VSZWNlaXZlck1hcCgpLnJlbW92ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6UmVtb3RlQ0RN
SW5zdGFuY2U6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9pZGVudGlmaWVyLnRvVUludDY0KCkp
OworfQorCit2b2lkIFJlbW90ZUNETUluc3RhbmNlOjp1bnJlcXVlc3RlZEluaXRpYWxpemF0aW9u
RGF0YVJlY2VpdmVkKGNvbnN0IFN0cmluZyYgdHlwZSwgSVBDOjpTaGFyZWRCdWZmZXJDb3B5JiYg
aW5pdERhdGEpCit7CisgICAgaWYgKG1fY2xpZW50ICYmIGluaXREYXRhLmJ1ZmZlcigpKQorICAg
ICAgICBtX2NsaWVudC0+dW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFSZWNlaXZlZCh0eXBl
LCBpbml0RGF0YS5idWZmZXIoKS5yZWxlYXNlTm9uTnVsbCgpKTsKIH0KIAogdm9pZCBSZW1vdGVD
RE1JbnN0YW5jZTo6aW5pdGlhbGl6ZVdpdGhDb25maWd1cmF0aW9uKGNvbnN0IFdlYkNvcmU6OkNE
TUtleVN5c3RlbUNvbmZpZ3VyYXRpb24mIGNvbmZpZ3VyYXRpb24sIEFsbG93RGlzdGluY3RpdmVJ
ZGVudGlmaWVycyBkaXN0aW5jdGl2ZUlkZW50aWZpZXJzLCBBbGxvd1BlcnNpc3RlbnRTdGF0ZSBw
ZXJzaXN0ZW50U3RhdGUsIFN1Y2Nlc3NDYWxsYmFjayYmIGNhbGxiYWNrKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5oIGIv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5oCmlu
ZGV4IDg5NWY0OWI5NzM5ZDI0NzlkNTU1ZGY4ZmIwMjdlZGZlY2E5YzM0MDQuLjEwNmJhM2IxMTYx
YzhkZjA5ZDcxZGZlNjc5YmEzM2Q0MjMwNzllOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9HUFUvbWVkaWEvUmVtb3RlQ0RNSW5zdGFuY2UuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLmgKQEAgLTI3LDE2ICsy
NywxOCBAQAogCiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBFTkFCTEUoRU5DUllQVEVEX01F
RElBKQogCisjaW5jbHVkZSAiTWVzc2FnZVJlY2VpdmVyLmgiCiAjaW5jbHVkZSAiUmVtb3RlQ0RN
RmFjdG9yeS5oIgogI2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlQ29uZmlndXJhdGlvbi5oIgog
I2luY2x1ZGUgIlJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmllci5oIgorI2luY2x1ZGUgIlNoYXJl
ZEJ1ZmZlckNvcHkuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0NETUluc3RhbmNlLmg+CiAKIG5hbWVz
cGFjZSBXZWJLaXQgewogCi1jbGFzcyBSZW1vdGVDRE1JbnN0YW5jZSBmaW5hbCA6IHB1YmxpYyBX
ZWJDb3JlOjpDRE1JbnN0YW5jZSB7CitjbGFzcyBSZW1vdGVDRE1JbnN0YW5jZSBmaW5hbCA6IHB1
YmxpYyBXZWJDb3JlOjpDRE1JbnN0YW5jZSwgcHJpdmF0ZSBJUEM6Ok1lc3NhZ2VSZWNlaXZlciB7
CiBwdWJsaWM6Ci0gICAgdmlydHVhbCB+UmVtb3RlQ0RNSW5zdGFuY2UoKSA9IGRlZmF1bHQ7Cisg
ICAgdmlydHVhbCB+UmVtb3RlQ0RNSW5zdGFuY2UoKTsKICAgICBzdGF0aWMgUmVmPFJlbW90ZUNE
TUluc3RhbmNlPiBjcmVhdGUoV2Vha1B0cjxSZW1vdGVDRE1GYWN0b3J5PiYmLCBSZW1vdGVDRE1J
bnN0YW5jZUlkZW50aWZpZXImJiwgUmVtb3RlQ0RNSW5zdGFuY2VDb25maWd1cmF0aW9uJiYpOwog
CiAgICAgY29uc3QgUmVtb3RlQ0RNSW5zdGFuY2VJZGVudGlmaWVyJiBpZGVudGlmaWVyKCkgY29u
c3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CkBAIC00NCwxNiArNDYsMjUgQEAgcHVibGljOgog
cHJpdmF0ZToKICAgICBSZW1vdGVDRE1JbnN0YW5jZShXZWFrUHRyPFJlbW90ZUNETUZhY3Rvcnk+
JiYsIFJlbW90ZUNETUluc3RhbmNlSWRlbnRpZmllciYmLCBSZW1vdGVDRE1JbnN0YW5jZUNvbmZp
Z3VyYXRpb24mJik7CiAKKyAgICAvLyBJUEM6Ok1lc3NhZ2VSZWNlaXZlcgorICAgIHZvaWQgZGlk
UmVjZWl2ZU1lc3NhZ2UoSVBDOjpDb25uZWN0aW9uJiwgSVBDOjpEZWNvZGVyJikgZmluYWw7CisK
KyAgICAvLyBNZXNzYWdlcworICAgIHZvaWQgdW5yZXF1ZXN0ZWRJbml0aWFsaXphdGlvbkRhdGFS
ZWNlaXZlZChjb25zdCBTdHJpbmcmLCBJUEM6OlNoYXJlZEJ1ZmZlckNvcHkmJik7CisKICAgICBJ
bXBsZW1lbnRhdGlvblR5cGUgaW1wbGVtZW50YXRpb25UeXBlKCkgY29uc3QgZmluYWwgeyByZXR1
cm4gSW1wbGVtZW50YXRpb25UeXBlOjpSZW1vdGU7IH0KICAgICB2b2lkIGluaXRpYWxpemVXaXRo
Q29uZmlndXJhdGlvbihjb25zdCBXZWJDb3JlOjpDRE1LZXlTeXN0ZW1Db25maWd1cmF0aW9uJiwg
QWxsb3dEaXN0aW5jdGl2ZUlkZW50aWZpZXJzLCBBbGxvd1BlcnNpc3RlbnRTdGF0ZSwgU3VjY2Vz
c0NhbGxiYWNrJiYpIGZpbmFsOwogICAgIHZvaWQgc2V0U2VydmVyQ2VydGlmaWNhdGUoUmVmPFdl
YkNvcmU6OlNoYXJlZEJ1ZmZlcj4mJiwgU3VjY2Vzc0NhbGxiYWNrJiYpIGZpbmFsOwogICAgIHZv
aWQgc2V0U3RvcmFnZURpcmVjdG9yeShjb25zdCBTdHJpbmcmKSBmaW5hbDsKICAgICBjb25zdCBT
dHJpbmcmIGtleVN5c3RlbSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIG1fY29uZmlndXJhdGlvbi5r
ZXlTeXN0ZW07IH0KICAgICBSZWZQdHI8V2ViQ29yZTo6Q0RNSW5zdGFuY2VTZXNzaW9uPiBjcmVh
dGVTZXNzaW9uKCkgZmluYWw7CisgICAgdm9pZCBzZXRDbGllbnQoV2Vha1B0cjxXZWJDb3JlOjpD
RE1JbnN0YW5jZUNsaWVudD4mJiBjbGllbnQpIGZpbmFsIHsgbV9jbGllbnQgPSBXVEZNb3ZlKGNs
aWVudCk7IH0KKyAgICB2b2lkIGNsZWFyQ2xpZW50KCkgZmluYWwgeyBtX2NsaWVudC5jbGVhcigp
OyB9CiAKICAgICBXZWFrUHRyPFJlbW90ZUNETUZhY3Rvcnk+IG1fZmFjdG9yeTsKICAgICBSZW1v
dGVDRE1JbnN0YW5jZUlkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogICAgIFJlbW90ZUNETUluc3Rh
bmNlQ29uZmlndXJhdGlvbiBtX2NvbmZpZ3VyYXRpb247CisgICAgV2Vha1B0cjxXZWJDb3JlOjpD
RE1JbnN0YW5jZUNsaWVudD4gbV9jbGllbnQ7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvR1BVL21lZGlhL1JlbW90ZUNETUluc3RhbmNlLm1lc3NhZ2VzLmlu
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9tZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5t
ZXNzYWdlcy5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZDM1NWMxYTJlNzA2ZjBjYzMzMTFhZDUwMjM0NjYyZGMy
N2JhNDBkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0dQVS9t
ZWRpYS9SZW1vdGVDRE1JbnN0YW5jZS5tZXNzYWdlcy5pbgpAQCAtMCwwICsxLDMwIEBACisjIENv
cHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKKyMgYXJlIG1ldDoKKyMgMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
IyAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorIyAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9S
UyBgYEFTIElTJycKKyMgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisjIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyMgUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisjIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyMgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyMgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
CisjIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisjIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisjIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyMg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCisjaWYgRU5BQkxFKEdQVV9QUk9DRVNT
KSAmJiBFTkFCTEUoRU5DUllQVEVEX01FRElBKQorCittZXNzYWdlcyAtPiBSZW1vdGVDRE1JbnN0
YW5jZSBOb3RSZWZDb3VudGVkIHsKKyAgICBVbnJlcXVlc3RlZEluaXRpYWxpemF0aW9uRGF0YVJl
Y2VpdmVkKFN0cmluZyB0eXBlLCBJUEM6OlNoYXJlZEJ1ZmZlckNvcHkgaW5pdERhdGEpCit9CisK
KyNlbmRpZgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>