<?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>200135</bug_id>
          
          <creation_ts>2019-07-25 13:24:03 -0700</creation_ts>
          <short_desc>Add helper for ignoring deprecated implementation warnings</short_desc>
          <delta_ts>2019-07-25 13:54:34 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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="Dean Jackson">dino</reporter>
          <assigned_to name="Dean Jackson">dino</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cfleizach</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dbates</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1555879</commentid>
    <comment_count>0</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-07-25 13:24:03 -0700</bug_when>
    <thetext>Add helper for ignoring deprecated implementation warnings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555880</commentid>
    <comment_count>1</comment_count>
      <attachid>374901</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-07-25 13:25:47 -0700</bug_when>
    <thetext>Created attachment 374901
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555881</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-07-25 13:27:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/53556762&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1555887</commentid>
    <comment_count>3</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-07-25 13:54:34 -0700</bug_when>
    <thetext>Committed r247837: &lt;https://trac.webkit.org/changeset/247837&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374901</attachid>
            <date>2019-07-25 13:25:47 -0700</date>
            <delta_ts>2019-07-25 13:47:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200135-20190726062546.patch</filename>
            <type>text/plain</type>
            <size>50699</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ3ODMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDAwMWE2ZTdhZGIyYTdiNzM4NjdjZGY1
ZTBkNTcxOWU5ODQ4MGFiOGUuLjA5MjQ0MGZiN2U2ODk4ZmVhMmE4OTE3ZDJkNmIzZWRlYzcxOTgx
YzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTktMDctMjUgIERlYW4gSmFja3NvbiAgPGRpbm9A
YXBwbGUuY29tPgorCisgICAgICAgIEFkZCBoZWxwZXIgZm9yIGlnbm9yaW5nIGRlcHJlY2F0ZWQg
aW1wbGVtZW50YXRpb24gd2FybmluZ3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIwMDEzNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCBBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19CRUdJ
Ti9FTkQgbWFjcm8gd2hpY2gKKyAgICAgICAgaXMgSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXBy
ZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCisKKyAgICAgICAgKiB3dGYvQ29tcGlsZXIuaDoKKwog
MjAxOS0wNy0yNCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAg
IFtibWFsbG9jXSBBZGQgSXNvSGVhcCB0ZXN0IHRvIGVuc3VyZSB0aGF0IElzb0hlYXAgcGFnZXMg
YXJlIG5vdCBhbGxvY2F0aW5nIHRvbyBsYXJnZSBWQQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDAzZmExZWU5NTE3
YzUxNzA3NWE3NTA2OTNmZDYxYmU0MjlhNjlhZmYuLmZjYmIyNTQzNDU0OGUyNmUyY2FlN2M3Y2M1
MmE5MTMzMTUyY2VlYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAxOS0wNy0yNSAg
RGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGhlbHBlciBmb3Ig
aWdub3JpbmcgZGVwcmVjYXRlZCBpbXBsZW1lbnRhdGlvbiB3YXJuaW5ncworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwMTM1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEFMTE9XX0RFUFJFQ0FURURf
SU1QTEVNRU5UQVRJT05TX0JFR0lOL0VORCBtYWNybyB3aGljaAorICAgICAgICBpcyBJR05PUkVf
V0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKKworICAgICAgICAq
IGFjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tOgor
ICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBBTExPV19ERVBSRUNBVEVE
X0lNUExFTUVOVEFUSU9OU19FTkRdKToKKyAgICAgICAgKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVj
dFdyYXBwZXIgYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOl0pOgorICAgICAgICAoLVtXZWJB
Y2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBhY2Nlc3NpYmlsaXR5SXNBdHRyaWJ1dGVTZXR0YWJs
ZTpdKToKKyAgICAgICAgKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgYWNjZXNzaWJp
bGl0eVBlcmZvcm1BY3Rpb246XSk6CisgICAgICAgICgtW1dlYkFjY2Vzc2liaWxpdHlPYmplY3RX
cmFwcGVyIGFjY2Vzc2liaWxpdHlTZXRWYWx1ZTpmb3JBdHRyaWJ1dGU6XSk6CisgICAgICAgICgt
W1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyIGFjY2Vzc2liaWxpdHlBY3Rpb25EZXNjcmlw
dGlvbjpdKToKKyAgICAgICAgKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgYWNjZXNz
aWJpbGl0eUF0dHJpYnV0ZVZhbHVlOmZvclBhcmFtZXRlcjpdKToKKyAgICAgICAgKC1bV2ViQWNj
ZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgSUdOT1JFX1dBUk5JTkdTX0VORF0pOiBEZWxldGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZl
clByaXZhdGVBVkZPYmpDLm1tOgorICAgICAgICAoLVtXZWJBVlN0cmVhbURhdGFQYXJzZXJMaXN0
ZW5lciBzdHJlYW1EYXRhUGFyc2VyV2lsbFByb3ZpZGVDb250ZW50S2V5UmVxdWVzdEluaXRpYWxp
emF0aW9uRGF0YTpmb3JUcmFja0lEOl0pOgorICAgICAgICAoLVtXZWJBVlN0cmVhbURhdGFQYXJz
ZXJMaXN0ZW5lciBzdHJlYW1EYXRhUGFyc2VyOmRpZFByb3ZpZGVDb250ZW50S2V5UmVxdWVzdElu
aXRpYWxpemF0aW9uRGF0YTpmb3JUcmFja0lEOl0pOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbToK
KyAgICAgICAgKC1bV2ViQ29yZVJlc291cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRl
IGNvbm5lY3Rpb246ZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlOl0pOgorICAgICAg
ICAoLVtXZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUgY29ubmVj
dGlvbjpjYW5BdXRoZW50aWNhdGVBZ2FpbnN0UHJvdGVjdGlvblNwYWNlOl0pOgorCiAyMDE5LTA3
LTI1ICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgogCiAgICAgICAgIFtXSExTTF0g
QWRkIG9wdGlvbmFsIGxvZ2dpbmcgZm9yIHBoYXNlIHRpbWluZ3MKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZWU5MDFj
MzMzMjYwNGUxZjNjYTNhODdiMDk2MDIwZTRmNzk5MTZjZC4uMGExYTM0OGYxNmM1NmY4ZTc3MWJj
NmE0MDIwMDJiNjA1NzU0MzZjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSw2OCBAQAorMjAxOS0wNy0y
NSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGhlbHBlciBm
b3IgaWdub3JpbmcgZGVwcmVjYXRlZCBpbXBsZW1lbnRhdGlvbiB3YXJuaW5ncworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwMTM1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEFMTE9XX0RFUFJFQ0FU
RURfSU1QTEVNRU5UQVRJT05TX0JFR0lOL0VORCBtYWNybyB3aGljaAorICAgICAgICBpcyBJR05P
UkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKKworICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvTGVnYWN5QnVuZGxlRm9yQ2xhc3MubW06CisgICAgICAg
ICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0Jyb3dzaW5nQ29udGV4dENvbnRyb2xsZXIubW06Cisg
ICAgICAgIChJR05PUkVfV0FSTklOR1NfQkVHSU4pOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tCcm93c2luZ0NvbnRleHRHcm91cC5tbToKKyAgICAgICAgKElHTk9S
RV9XQVJOSU5HU19CRUdJTik6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS0Nvbm5lY3Rpb24ubW06CisgICAgICAgIChJR05PUkVfV0FSTklOR1NfQkVHSU4pOiBEZWxl
dGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmV2aWV3RWxlbWVudEluZm8u
bW06CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1Byb2Nlc3NHcm91cC5tbToKKyAg
ICAgICAgKElHTk9SRV9XQVJOSU5HU19CRUdJTik6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9Db2NvYS9XS1R5cGVSZWZXcmFwcGVyLm1tOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3Lm1tOgorICAgICAgICAoLVtXS1dlYlZpZXcgQUxMT1dfREVQUkVD
QVRFRF9JTVBMRU1FTlRBVElPTlNfRU5EXSk6CisgICAgICAgICgtW1dLV2ViVmlldyBkcmFnZ2Vk
SW1hZ2U6ZW5kZWRBdDpvcGVyYXRpb246XSk6CisgICAgICAgICgtW1dLV2ViVmlldyBhY2Nlc3Np
YmlsaXR5QXR0cmlidXRlVmFsdWU6XSk6CisgICAgICAgICgtW1dLV2ViVmlldyBhY2Nlc3NpYmls
aXR5QXR0cmlidXRlVmFsdWU6Zm9yUGFyYW1ldGVyOl0pOgorICAgICAgICAoLVtXS1dlYlZpZXcg
bmFtZXNPZlByb21pc2VkRmlsZXNEcm9wcGVkQXREZXN0aW5hdGlvbjpdKToKKyAgICAgICAgKC1b
V0tXZWJWaWV3IElHTk9SRV9XQVJOSU5HU19FTkRdKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW06CisgICAgICAgICgtW1dL
V2ViVmlld0NvbmZpZ3VyYXRpb24gQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5E
XSk6CisgICAgICAgICgtW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gX3NldFdlYnNpdGVEYXRhU3Rv
cmU6XSk6CisgICAgICAgICgtW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gSUdOT1JFX1dBUk5JTkdT
X0VORF0pOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLV2Vic2l0
ZURhdGFTdG9yZS5tbToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW06Cisg
ICAgICAgICgtW1dLVmlldyBBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkRdKToK
KyAgICAgICAgKC1bV0tWaWV3IGRyYWdnZWRJbWFnZTplbmRlZEF0Om9wZXJhdGlvbjpdKToKKyAg
ICAgICAgKC1bV0tWaWV3IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpdKToKKyAgICAgICAg
KC1bV0tWaWV3IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpmb3JQYXJhbWV0ZXI6XSk6Cisg
ICAgICAgICgtW1dLVmlldyBuYW1lc09mUHJvbWlzZWRGaWxlc0Ryb3BwZWRBdERlc3RpbmF0aW9u
Ol0pOgorICAgICAgICAoLVtXS1ZpZXcgSUdOT1JFX1dBUk5JTkdTX0VORF0pOiBEZWxldGVkLgor
ICAgICAgICAqIFVJUHJvY2Vzcy9XS0ltYWdlUHJldmlld1ZpZXdDb250cm9sbGVyLm1tOgorICAg
ICAgICAoLVtXS0ltYWdlUHJldmlld1ZpZXdDb250cm9sbGVyIEFMTE9XX0RFUFJFQ0FURURfSU1Q
TEVNRU5UQVRJT05TX0VORF0pOgorICAgICAgICAoLVtXS0ltYWdlUHJldmlld1ZpZXdDb250cm9s
bGVyIElHTk9SRV9XQVJOSU5HU19FTkRdKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3Mv
aW9zL2Zvcm1zL1dLQWlyUGxheVJvdXRlUGlja2VyLm1tOgorICAgICAgICAoLVtXS0FpclBsYXlS
b3V0ZVBpY2tlciBwb3BvdmVyQ29udHJvbGxlckRpZERpc21pc3NQb3BvdmVyOl0pOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9pb3MvZm9ybXMvV0tGaWxlVXBsb2FkUGFuZWwubW06CisgICAgICAgICgt
W1dLRmlsZVVwbG9hZFBhbmVsIHBvcG92ZXJDb250cm9sbGVyRGlkRGlzbWlzc1BvcG92ZXI6XSk6
CisgICAgICAgICogVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1Qb3BvdmVyLm1tOgorICAgICAg
ICAoLVtXS1JvdGF0aW5nUG9wb3ZlciBwb3BvdmVyQ29udHJvbGxlckRpZERpc21pc3NQb3BvdmVy
Ol0pOgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luLm1tOgorICAg
ICAgICAoLVtXS1BERlBsdWdpbkFjY2Vzc2liaWxpdHlPYmplY3QgQUxMT1dfREVQUkVDQVRFRF9J
TVBMRU1FTlRBVElPTlNfRU5EXSk6CisgICAgICAgICgtW1dLUERGUGx1Z2luQWNjZXNzaWJpbGl0
eU9iamVjdCBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFsdWU6XSk6CisgICAgICAgICgtW1dLUERG
UGx1Z2luQWNjZXNzaWJpbGl0eU9iamVjdCBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFsdWU6Zm9y
UGFyYW1ldGVyOl0pOgorICAgICAgICAoLVtXS1BERlBsdWdpbkFjY2Vzc2liaWxpdHlPYmplY3Qg
YWNjZXNzaWJpbGl0eVBlcmZvcm1BY3Rpb246XSk6CisgICAgICAgICgtW1dLUERGUGx1Z2luQWNj
ZXNzaWJpbGl0eU9iamVjdCBhY2Nlc3NpYmlsaXR5SXNBdHRyaWJ1dGVTZXR0YWJsZTpdKToKKyAg
ICAgICAgKC1bV0tQREZQbHVnaW5BY2Nlc3NpYmlsaXR5T2JqZWN0IGFjY2Vzc2liaWxpdHlTZXRW
YWx1ZTpmb3JBdHRyaWJ1dGU6XSk6CisgICAgICAgICgtW1dLUERGUGx1Z2luQWNjZXNzaWJpbGl0
eU9iamVjdCBJR05PUkVfV0FSTklOR1NfRU5EXSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL21hYy9XS0FjY2Vzc2liaWxpdHlXZWJQYWdlT2JqZWN0TWFjLm1tOgorICAg
ICAgICAoLVtXS0FjY2Vzc2liaWxpdHlXZWJQYWdlT2JqZWN0IEFMTE9XX0RFUFJFQ0FURURfSU1Q
TEVNRU5UQVRJT05TX0VORF0pOgorICAgICAgICAoLVtXS0FjY2Vzc2liaWxpdHlXZWJQYWdlT2Jq
ZWN0IGFjY2Vzc2liaWxpdHlJc0F0dHJpYnV0ZVNldHRhYmxlOl0pOgorICAgICAgICAoLVtXS0Fj
Y2Vzc2liaWxpdHlXZWJQYWdlT2JqZWN0IGFjY2Vzc2liaWxpdHlTZXRWYWx1ZTpmb3JBdHRyaWJ1
dGU6XSk6CisgICAgICAgICgtW1dLQWNjZXNzaWJpbGl0eVdlYlBhZ2VPYmplY3QgYWNjZXNzaWJp
bGl0eUF0dHJpYnV0ZVZhbHVlOl0pOgorICAgICAgICAoLVtXS0FjY2Vzc2liaWxpdHlXZWJQYWdl
T2JqZWN0IGFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTpmb3JQYXJhbWV0ZXI6XSk6CisgICAg
ICAgICgtW1dLQWNjZXNzaWJpbGl0eVdlYlBhZ2VPYmplY3QgSUdOT1JFX1dBUk5JTkdTX0VORF0p
OiBEZWxldGVkLgorCiAyMDE5LTA3LTI1ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNv
bT4KIAogICAgICAgICBNYWtlIE5ldHdvcmtTZXNzaW9uIG5vIGxvbmdlciBSZWZDb3VudGVkCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKaW5kZXggNDUwZTk5NzhlZTkyOGEzZGVhOGFhYTI1ZDdi
ZjBhMGVjMTMwNDE1Ny4uNzkyYTgzOWEwOGYyYzI2ZDA1NzYxMmIxOWRlZmJlZjNiZGQwMThhNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDE5LTA3LTI1
ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgaGVscGVyIGZv
ciBpZ25vcmluZyBkZXByZWNhdGVkIGltcGxlbWVudGF0aW9uIHdhcm5pbmdzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDAxMzUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgQUxMT1dfREVQUkVDQVRF
RF9JTVBMRU1FTlRBVElPTlNfQkVHSU4vRU5EIG1hY3JvIHdoaWNoCisgICAgICAgIGlzIElHTk9S
RV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorCisgICAgICAg
ICogTWlzYy9XZWJEb3dubG9hZC5tbToKKyAgICAgICAgKC1bV2ViRG93bmxvYWQgaW5pdFdpdGhS
ZXF1ZXN0OmRlbGVnYXRlOl0pOgorICAgICAgICAqIE1pc2MvV2ViSWNvbkRhdGFiYXNlLm1tOgor
ICAgICAgICAqIFBsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbToKKyAgICAgICAg
KC1bV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldyBBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFU
SU9OU19FTkRdKToKKyAgICAgICAgKC1bV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldyBJR05PUkVf
V0FSTklOR1NfRU5EXSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViVmlldy9XZWJEeW5hbWljU2Ny
b2xsQmFyc1ZpZXcubW06CisgICAgICAgICgtW1dlYkR5bmFtaWNTY3JvbGxCYXJzVmlldyBBTExP
V19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkRdKToKKyAgICAgICAgKC1bV2ViRHluYW1p
Y1Njcm9sbEJhcnNWaWV3IElHTk9SRV9XQVJOSU5HU19FTkRdKTogRGVsZXRlZC4KKyAgICAgICAg
KiBXZWJWaWV3L1dlYkhUTUxWaWV3Lm1tOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBkcmFnZ2lu
Z1NvdXJjZU9wZXJhdGlvbk1hc2tGb3JMb2NhbDpdKToKKyAgICAgICAgKC1bV2ViSFRNTFZpZXcg
ZHJhZ2dlZEltYWdlOmVuZGVkQXQ6b3BlcmF0aW9uOl0pOgorICAgICAgICAoLVtXZWJIVE1MVmll
dyBuYW1lc09mUHJvbWlzZWRGaWxlc0Ryb3BwZWRBdERlc3RpbmF0aW9uOl0pOgorICAgICAgICAo
LVtXZWJIVE1MVmlldyBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFsdWU6XSk6CisgICAgICAgICgt
W1dlYkhUTUxWaWV3IEFMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORF0pOgorICAg
ICAgICAoLVtXZWJIVE1MVmlldyBjaGFyYWN0ZXJJbmRleEZvclBvaW50Ol0pOgorICAgICAgICAo
LVtXZWJIVE1MVmlldyBmaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZTpdKToKKyAgICAgICAgKC1b
V2ViSFRNTFZpZXcgYXR0cmlidXRlZFN1YnN0cmluZ0Zyb21SYW5nZTpdKToKKyAgICAgICAgKC1b
V2ViSFRNTFZpZXcgc2V0TWFya2VkVGV4dDpzZWxlY3RlZFJhbmdlOl0pOgorICAgICAgICAoLVtX
ZWJIVE1MVmlldyBkb0NvbW1hbmRCeVNlbGVjdG9yOl0pOgorICAgICAgICAoLVtXZWJIVE1MVmll
dyBpbnNlcnRUZXh0Ol0pOgorICAgICAgICAoLVtXZWJIVE1MVmlldyBJR05PUkVfV0FSTklOR1Nf
RU5EXSk6IERlbGV0ZWQuCisKIDIwMTktMDctMjMgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2ll
aEBhcHBsZS5jb20+CiAKICAgICAgICAgW21hY09TIDEwLjE1XSBXZWIgcHJvY2VzcyBjcmFzaGVz
IHdoZW4gYXR0ZW1wdGluZyB0byBzaG93IHRoZSBmb250IHBhbmVsIHZpYSBGb250ID4gU2hvdyBG
b250cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvQ29tcGlsZXIuaCBiL1NvdXJjZS9XVEYv
d3RmL0NvbXBpbGVyLmgKaW5kZXggNjg1ZDUxNjMyMmQ3ODZhZGE3Zjc2NjBlMzZlZjg0MjU4ODI2
MWFlOS4uMTQxYjUwOTUzMWNhYmEwNDViMzk1OTAyNzY0MTQyODFhY2Y2YjhhNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dURi93dGYvQ29tcGlsZXIuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Db21waWxl
ci5oCkBAIC00NDcsNiArNDQ3LDkgQEAKICNkZWZpbmUgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJB
VElPTlNfQkVHSU4gSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWRlY2xhcmF0aW9u
cyIpCiAjZGVmaW5lIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0VORCBJR05PUkVfV0FS
TklOR1NfRU5ECiAKKyNkZWZpbmUgQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVH
SU4gSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCisj
ZGVmaW5lIEFMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORCBJR05PUkVfV0FSTklO
R1NfRU5ECisKICNkZWZpbmUgQUxMT1dfTkVXX0FQSV9XSVRIT1VUX0dVQVJEU19CRUdJTiBJR05P
UkVfQ0xBTkdfV0FSTklOR1NfQkVHSU4oInVuZ3VhcmRlZC1hdmFpbGFiaWxpdHktbmV3IikKICNk
ZWZpbmUgQUxMT1dfTkVXX0FQSV9XSVRIT1VUX0dVQVJEU19FTkQgSUdOT1JFX0NMQU5HX1dBUk5J
TkdTX0VORAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9X
ZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCmluZGV4IGFi
ODNkMTRkNTY1ZDU4Y2I2YzllZjA3ZjEyMzk2YjYyYjlhNjc3ZTEuLjExOWFhODc0NzRmOWUxZjVm
MDdjYTM3MjQ2OTg5YTQ4OWQ1NDU2ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFw
cGVyTWFjLm1tCkBAIC0xMzEwLDkgKzEzMTAsOSBAQCBzdGF0aWMgaWQgdGV4dE1hcmtlclJhbmdl
RnJvbVZpc2libGVQb3NpdGlvbnMoQVhPYmplY3RDYWNoZSogY2FjaGUsIGNvbnN0IFZpc2libAog
ICAgIHJldHVybiB0ZXh0TWFya2VyUmFuZ2VGcm9tVmlzaWJsZVBvc2l0aW9ucyhtX29iamVjdC0+
YXhPYmplY3RDYWNoZSgpLCBzdGFydFBvc2l0aW9uLCBlbmRQb3NpdGlvbik7CiB9CiAKLUlHTk9S
RV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQ
UkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKE5TQXJyYXkqKWFjY2Vzc2liaWxpdHlB
Y3Rpb25OYW1lcwotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1F
TlRBVElPTlNfRU5ECiB7CiAgICAgaWYgKCFbc2VsZiB1cGRhdGVPYmplY3RCYWNraW5nU3RvcmVd
KQogICAgICAgICByZXR1cm4gbmlsOwpAQCAtMTQ0Niw5ICsxNDQ2LDkgQEAgSUdOT1JFX1dBUk5J
TkdTX0VORAogICAgIHJldHVybiBhZGRpdGlvbmFsOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVH
SU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVN
RU5UQVRJT05TX0JFR0lOCiAtIChOU0FycmF5KilhY2Nlc3NpYmlsaXR5QXR0cmlidXRlTmFtZXMK
LUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VO
RAogewogICAgIGlmICghW3NlbGYgdXBkYXRlT2JqZWN0QmFja2luZ1N0b3JlXSkKICAgICAgICAg
cmV0dXJuIG5pbDsKQEAgLTI2MTgsOSArMjYxOCw5IEBAIEFMTE9XX0RFUFJFQ0FURURfREVDTEFS
QVRJT05TX0VORAogLy8gRklYTUU6IHNwbGl0IHVwIHRoaXMgZnVuY3Rpb24gaW4gYSBiZXR0ZXIg
d2F5LgogLy8gc3VnZ2VzdGlvbnM6IFVzZSBhIGhhc2ggdGFibGUgdGhhdCBtYXBzIGF0dHJpYnV0
ZSBuYW1lcyB0byBmdW5jdGlvbiBjYWxscywKIC8vIG9yIG1heWJlIHBvaW50ZXJzIHRvIG1lbWJl
ciBmdW5jdGlvbnMKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRh
dGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKGlkKWFj
Y2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTooTlNTdHJpbmcqKWF0dHJpYnV0ZU5hbWUKLUlHTk9S
RV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewog
ICAgIGlmICghW3NlbGYgdXBkYXRlT2JqZWN0QmFja2luZ1N0b3JlXSkKICAgICAgICAgcmV0dXJu
IG5pbDsKQEAgLTM1MDEsOSArMzUwMSw5IEBAIElHTk9SRV9XQVJOSU5HU19FTkQKICAgICByZXR1
cm4gTlNBY2Nlc3NpYmlsaXR5VW5pZ25vcmVkQW5jZXN0b3Ioc2VsZik7CiB9CiAKLUlHTk9SRV9X
QVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVD
QVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKEJPT0wpYWNjZXNzaWJpbGl0eUlzQXR0cmli
dXRlU2V0dGFibGU6KE5TU3RyaW5nKilhdHRyaWJ1dGVOYW1lCi1JR05PUkVfV0FSTklOR1NfRU5E
CitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICBpZiAoIVtzZWxm
IHVwZGF0ZU9iamVjdEJhY2tpbmdTdG9yZV0pCiAgICAgICAgIHJldHVybiBOTzsKQEAgLTM1NTYs
OSArMzU1Niw5IEBAIElHTk9SRV9XQVJOSU5HU19FTkQKIC8vIEFwcEtpdCdzIGlkIG1hcHBpbmcg
dGFibGVzLiBXZSBkbyB0aGlzIGluIGRldGFjaCBieSBjYWxsaW5nIHVucmVnaXN0ZXJVbmlxdWVJ
ZEZvclVJRWxlbWVudC4KIC8vCiAvLyBSZWdpc3RlcmluZyBhbiBvYmplY3QgaXMgYWxzbyByZXF1
aXJlZCBmb3Igb2JzZXJ2aW5nIG5vdGlmaWNhdGlvbnMuIE9ubHkgcmVnaXN0ZXJlZCBvYmplY3Rz
IGNhbiBiZSBvYnNlcnZlZC4KLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBs
ZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0g
KEJPT0wpYWNjZXNzaWJpbGl0eUlzSWdub3JlZAotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1df
REVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgaWYgKCFbc2VsZiB1cGRhdGVP
YmplY3RCYWNraW5nU3RvcmVdKQogICAgICAgICByZXR1cm4gWUVTOwpAQCAtMzU2OCw5ICszNTY4
LDkgQEAgSUdOT1JFX1dBUk5JTkdTX0VORAogICAgIHJldHVybiBfYXhCYWNraW5nT2JqZWN0LT5h
Y2Nlc3NpYmlsaXR5SXNJZ25vcmVkKCk7CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVw
cmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElP
TlNfQkVHSU4KIC0gKE5TQXJyYXkqIClhY2Nlc3NpYmlsaXR5UGFyYW1ldGVyaXplZEF0dHJpYnV0
ZU5hbWVzCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFU
SU9OU19FTkQKIHsKICAgICBpZiAoIVtzZWxmIHVwZGF0ZU9iamVjdEJhY2tpbmdTdG9yZV0pCiAg
ICAgICAgIHJldHVybiBuaWw7CkBAIC0zNzg5LDkgKzM3ODksOSBAQCBBTExPV19ERVBSRUNBVEVE
X0RFQ0xBUkFUSU9OU19FTkQKICAgICBtX29iamVjdC0+c2Nyb2xsVG9HbG9iYWxQb2ludChJbnRQ
b2ludChwb2ludCkpOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1w
bGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAt
ICh2b2lkKWFjY2Vzc2liaWxpdHlQZXJmb3JtQWN0aW9uOihOU1N0cmluZyopYWN0aW9uCi1JR05P
UkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsK
ICAgICBpZiAoIVtzZWxmIHVwZGF0ZU9iamVjdEJhY2tpbmdTdG9yZV0pCiAgICAgICAgIHJldHVy
bjsKQEAgLTM4MzgsOSArMzgzOCw5IEBAIElHTk9SRV9XQVJOSU5HU19FTkQKICAgICByZXR1cm4g
bV9vYmplY3QtPmluc2VydFRleHQodGV4dCk7CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigi
ZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRB
VElPTlNfQkVHSU4KIC0gKHZvaWQpYWNjZXNzaWJpbGl0eVNldFZhbHVlOihpZCl2YWx1ZSBmb3JB
dHRyaWJ1dGU6KE5TU3RyaW5nKilhdHRyaWJ1dGVOYW1lCi1JR05PUkVfV0FSTklOR1NfRU5ECitB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICNpZiBQTEFURk9STShNQUMp
CiAgICAgLy8gSW4gY2FzZSBhbnl0aGluZyB3ZSBkbyBieSBjaGFuZ2luZyB2YWx1ZXMgY2F1c2Vz
IGFuIGFsZXJ0IG9yIG90aGVyIG1vZGFsCkBAIC0zOTYzLDkgKzM5NjMsOSBAQCBzdGF0aWMgUmVu
ZGVyT2JqZWN0KiByZW5kZXJlckZvclZpZXcoTlNWaWV3KiB2aWV3KQogICAgIHJldHVybiBuaWw7
CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMi
KQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKE5TU3RyaW5nKilh
Y2Nlc3NpYmlsaXR5QWN0aW9uRGVzY3JpcHRpb246KE5TU3RyaW5nKilhY3Rpb24KLUlHTk9SRV9X
QVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAg
IC8vIHdlIGhhdmUgbm8gY3VzdG9tIGFjdGlvbnMKICAgICByZXR1cm4gTlNBY2Nlc3NpYmlsaXR5
QWN0aW9uRGVzY3JpcHRpb24oYWN0aW9uKTsKQEAgLTQwOTQsOSArNDA5NCw5IEBAIHN0YXRpYyB2
b2lkIGZvcm1hdEZvckRlYnVnZ2VyKGNvbnN0IFZpc2libGVQb3NpdGlvblJhbmdlJiByYW5nZSwg
Y2hhciogYnVmZmVyLCB1CiB9CiAjZW5kaWYKIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXBy
ZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9O
U19CRUdJTgogLSAoaWQpYWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOihOU1N0cmluZyopYXR0
cmlidXRlIGZvclBhcmFtZXRlcjooaWQpcGFyYW1ldGVyCi1JR05PUkVfV0FSTklOR1NfRU5ECitB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICBpZCB0ZXh0TWFya2Vy
ID0gbmlsOwogICAgIGlkIHRleHRNYXJrZXJSYW5nZSA9IG5pbDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZl
clByaXZhdGVBVkZPYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW0KaW5kZXggN2I1ODUx
N2Q2YWNhNWYwNzhiZWU2MjE1Y2EyYzdjMDI0ODViNzFjMC4uMzI0Mjc2Mzc4MTdkMWYzYzY3NGI5
MGU3NzMyYjVhMDI4NzYyZTk0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW0K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMv
U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW0KQEAgLTE3Niw5ICsxNzYsOSBAQAogICAgIH0p
OwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25z
IikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtICh2b2lkKXN0cmVh
bURhdGFQYXJzZXJXaWxsUHJvdmlkZUNvbnRlbnRLZXlSZXF1ZXN0SW5pdGlhbGl6YXRpb25EYXRh
OihBVlN0cmVhbURhdGFQYXJzZXIgKilzdHJlYW1EYXRhUGFyc2VyIGZvclRyYWNrSUQ6KENNUGVy
c2lzdGVudFRyYWNrSUQpdHJhY2tJRAotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVD
QVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgQVNTRVJUX1VOVVNFRChzdHJlYW1EYXRh
UGFyc2VyLCBzdHJlYW1EYXRhUGFyc2VyID09IF9wYXJzZXIpOwogCkBAIC0yMDIsOSArMjAyLDkg
QEAgSUdOT1JFX1dBUk5JTkdTX0VORAogICAgIH0KIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lO
KCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVO
VEFUSU9OU19CRUdJTgogLSAodm9pZClzdHJlYW1EYXRhUGFyc2VyOihBVlN0cmVhbURhdGFQYXJz
ZXIgKilzdHJlYW1EYXRhUGFyc2VyIGRpZFByb3ZpZGVDb250ZW50S2V5UmVxdWVzdEluaXRpYWxp
emF0aW9uRGF0YTooTlNEYXRhICopaW5pdERhdGEgZm9yVHJhY2tJRDooQ01QZXJzaXN0ZW50VHJh
Y2tJRCl0cmFja0lECi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExF
TUVOVEFUSU9OU19FTkQKIHsKICAgICBBU1NFUlRfVU5VU0VEKHN0cmVhbURhdGFQYXJzZXIsIHN0
cmVhbURhdGFQYXJzZXIgPT0gX3BhcnNlcik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNvcmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVl
dWVEZWxlZ2F0ZS5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1dlYkNv
cmVSZXNvdXJjZUhhbmRsZUFzT3BlcmF0aW9uUXVldWVEZWxlZ2F0ZS5tbQppbmRleCA3Y2Y2MzQ2
YmI2ZGM2YmFiNDc1MGJlYjM3Zjc5MTIzMDI5YzYxMWQ4Li5kZTBiN2UxZjE4N2I1MDc2NWE5ZDE3
YzJlYzRlYzgwMzNkODNmMzQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL21hYy9XZWJDb3JlUmVzb3VyY2VIYW5kbGVBc09wZXJhdGlvblF1ZXVlRGVsZWdhdGUu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvV2ViQ29yZVJlc291
cmNlSGFuZGxlQXNPcGVyYXRpb25RdWV1ZURlbGVnYXRlLm1tCkBAIC0xNjgsOSArMTY4LDkgQEAg
c3RhdGljIGJvb2wgc2NoZWR1bGVkV2l0aEN1c3RvbVJ1bkxvb3BNb2RlKGNvbnN0IE9wdGlvbmFs
PFNjaGVkdWxlUGFpckhhc2hTZXQ+JgogICAgIHJldHVybiByZXF1ZXN0UmVzdWx0LmF1dG9yZWxl
YXNlKCk7CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRh
dGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKHZvaWQp
Y29ubmVjdGlvbjooTlNVUkxDb25uZWN0aW9uICopY29ubmVjdGlvbiBkaWRSZWNlaXZlQXV0aGVu
dGljYXRpb25DaGFsbGVuZ2U6KE5TVVJMQXV0aGVudGljYXRpb25DaGFsbGVuZ2UgKiljaGFsbGVu
Z2UKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05T
X0VORAogewogICAgIEFTU0VSVCghaXNNYWluVGhyZWFkKCkpOwogICAgIFVOVVNFRF9QQVJBTShj
b25uZWN0aW9uKTsKQEAgLTE4OCw5ICsxODgsOSBAQCBJR05PUkVfV0FSTklOR1NfRU5ECiAgICAg
W3NlbGYgY2FsbEZ1bmN0aW9uT25NYWluVGhyZWFkOldURk1vdmUod29yayldOwogfQogCi1JR05P
UkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RF
UFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChCT09MKWNvbm5lY3Rpb246KE5TVVJM
Q29ubmVjdGlvbiAqKWNvbm5lY3Rpb24gY2FuQXV0aGVudGljYXRlQWdhaW5zdFByb3RlY3Rpb25T
cGFjZTooTlNVUkxQcm90ZWN0aW9uU3BhY2UgKilwcm90ZWN0aW9uU3BhY2UKLUlHTk9SRV9XQVJO
SU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIEFT
U0VSVCghaXNNYWluVGhyZWFkKCkpOwogICAgIFVOVVNFRF9QQVJBTShjb25uZWN0aW9uKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9MZWdhY3lCdW5kbGVG
b3JDbGFzcy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9MZWdhY3lCdW5k
bGVGb3JDbGFzcy5tbQppbmRleCBhM2FhYWY5YzRmMzQyOWM4OWRjYTBmOTczY2RlNTI1NjBlMDQy
MGE1Li43NDE2ZjIzNTIyNzQ2MWE4YTIzYmE4ZTYyNjJmNmE0YjEyOGMwNGY4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvTGVnYWN5QnVuZGxlRm9yQ2xhc3Mu
bW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL0xlZ2FjeUJ1bmRsZUZv
ckNsYXNzLm1tCkBAIC0zOCw3ICszOCw3IEBACiB9IFwKIEBlbmQKIAotSUdOT1JFX1dBUk5JTkdT
X0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lN
UExFTUVOVEFUSU9OU19CRUdJTgogREVGSU5FX0JVTkRMRV9GT1JfQ0xBU1MoV2ViQXJjaGl2ZSkK
IERFRklORV9CVU5ETEVfRk9SX0NMQVNTKFdlYlJlc291cmNlKQotSUdOT1JFX1dBUk5JTkdTX0VO
RAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tCcm93c2luZ0NvbnRleHRDb250cm9sbGVy
Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLQnJvd3NpbmdDb250ZXh0
Q29udHJvbGxlci5tbQppbmRleCAzMGE4YWE4OTBiNGIxZWFiOWY4MTk4MjI5Mjk5ZDA1Yzg0YWVk
YzJhLi4yNjU1NTRmM2Q3ZjJkN2FkMjk2ZTlmM2Y5ZmExMTM4OGI3OGZkNTY0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tCcm93c2luZ0NvbnRleHRDb250
cm9sbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0Jyb3dz
aW5nQ29udGV4dENvbnRyb2xsZXIubW0KQEAgLTcwLDkgKzcwLDkgQEAgTlNTdHJpbmcgKiBjb25z
dCBXS0FjdGlvbkZyYW1lTmFtZUtleSA9IEAiV0tBY3Rpb25GcmFtZU5hbWVLZXkiOwogTlNTdHJp
bmcgKiBjb25zdCBXS0FjdGlvbk9yaWdpbmF0aW5nRnJhbWVVUkxLZXkgPSBAIldLQWN0aW9uT3Jp
Z2luYXRpbmdGcmFtZVVSTEtleSI7CiBOU1N0cmluZyAqIGNvbnN0IFdLQWN0aW9uQ2FuU2hvd01J
TUVUeXBlS2V5ID0gQCJXS0FjdGlvbkNhblNob3dNSU1FVHlwZUtleSI7CiAKLUlHTk9SRV9XQVJO
SU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRF
RF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIEBpbXBsZW1lbnRhdGlvbiBXS0Jyb3dzaW5nQ29udGV4
dENvbnRyb2xsZXIgewotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBM
RU1FTlRBVElPTlNfRU5ECiAgICAgUmVmUHRyPFdlYktpdDo6V2ViUGFnZVByb3h5PiBfcGFnZTsK
ICAgICBzdGQ6OnVuaXF1ZV9wdHI8V2ViS2l0OjpQYWdlTG9hZFN0YXRlT2JzZXJ2ZXI+IF9wYWdl
TG9hZFN0YXRlT2JzZXJ2ZXI7CiAKQEAgLTYxOSw5ICs2MTksOSBAQCBzdGF0aWMgdm9pZCBzZXRV
cFBhZ2VQb2xpY3lDbGllbnQoV0tCcm93c2luZ0NvbnRleHRDb250cm9sbGVyICpicm93c2luZ0Nv
bnRleHQsCiBAZW5kCiAKIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0JFR0lOCi1JR05P
UkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RF
UFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiBAaW1wbGVtZW50YXRpb24gV0tCcm93c2lu
Z0NvbnRleHRDb250cm9sbGVyIChQcml2YXRlKQotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1df
REVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKIC0gKFdLUGFnZVJlZilfcGFnZVJlZgog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLQnJvd3Np
bmdDb250ZXh0R3JvdXAubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tC
cm93c2luZ0NvbnRleHRHcm91cC5tbQppbmRleCBkYWJiNDcxZDZmYzA1YzkwMzY3MDc4ZDFlYmM5
OGFhOTA3MzliNGEyLi45MjAzZmE2YTcwMzc1YzE2OTk4ZjUyZjgzMGQ1ZmY3MDNjNjFkMDI5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tCcm93c2luZ0Nv
bnRleHRHcm91cC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tC
cm93c2luZ0NvbnRleHRHcm91cC5tbQpAQCAtNDAsOSArNDAsOSBAQAogI2ltcG9ydCAiV0tVUkxD
Ri5oIgogI2ltcG9ydCA8d3RmL1ZlY3Rvci5oPgogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRl
cHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJ
T05TX0JFR0lOCiBAaW1wbGVtZW50YXRpb24gV0tCcm93c2luZ0NvbnRleHRHcm91cCB7Ci1JR05P
UkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKICAg
ICBBUEk6Ok9iamVjdFN0b3JhZ2U8V2ViS2l0OjpXZWJQYWdlR3JvdXA+IF9wYWdlR3JvdXA7CiB9
CiAKQEAgLTE3Niw5ICsxNzYsOSBAQCBzdGF0aWMgV0tSZXRhaW5QdHI8V0tBcnJheVJlZj4gY3Jl
YXRlV0tBcnJheShOU0FycmF5ICphcnJheSkKIEBlbmQKIAogQUxMT1dfREVQUkVDQVRFRF9ERUNM
QVJBVElPTlNfQkVHSU4KLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1l
bnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIEBpbXBs
ZW1lbnRhdGlvbiBXS0Jyb3dzaW5nQ29udGV4dEdyb3VwIChQcml2YXRlKQotSUdOT1JFX1dBUk5J
TkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKIC0gKFdLUGFn
ZUdyb3VwUmVmKV9wYWdlR3JvdXBSZWYKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS0Nvbm5lY3Rpb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tDb25uZWN0aW9uLm1tCmluZGV4IDhiODJiNWM0YWFlOTAwNGNmNDI3Mjk3
MTM1MTg4ZTdjNWU4ODFmZGQuLmE0MTkzYjdhMmFmMGU3MTEyZWE3NzJhMTk5ZWE3YzMwNzBkNGRi
MzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS0Nvbm5l
Y3Rpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLQ29ubmVj
dGlvbi5tbQpAQCAtMzQsOSArMzQsOSBAQAogI2ltcG9ydCA8d3RmL1dlYWtPYmpDUHRyLmg+CiAj
aW1wb3J0IDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJk
ZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFU
SU9OU19CRUdJTgogQGltcGxlbWVudGF0aW9uIFdLQ29ubmVjdGlvbiB7Ci1JR05PUkVfV0FSTklO
R1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKICAgICBXZWFrT2Jq
Q1B0cjxpZCA8V0tDb25uZWN0aW9uRGVsZWdhdGU+PiBfZGVsZWdhdGU7CiB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZXZpZXdFbGVtZW50SW5m
by5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1ByZXZpZXdFbGVtZW50
SW5mby5tbQppbmRleCA2OGZlYjY0ZjcyNDYwNjg2ODFhOTlmYzY5ZmE1NjI4NjE3MWIwZTIyLi5m
NzdjNDFiZDVjMzlmMGQyMGNhNmJmNTkzNDQyNWM0MzQ1ZmY0ZTYwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcmV2aWV3RWxlbWVudEluZm8ubW0KKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLUHJldmlld0VsZW1lbnRJbmZv
Lm1tCkBAIC0yOCw5ICsyOCw5IEBACiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogCi1JR05P
UkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RF
UFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiBAaW1wbGVtZW50YXRpb24gV0tQcmV2aWV3
RWxlbWVudEluZm8KLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVN
RU5UQVRJT05TX0VORAogCiAtIChpbnN0YW5jZXR5cGUpX2luaXRXaXRoTGlua1VSTDooTlNVUkwg
Kil1cmwKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1Byb2Nlc3NHcm91cC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1By
b2Nlc3NHcm91cC5tbQppbmRleCA1YjE3NjBiOWQ3OWU3Mjc1ZjFhMjMzMmJkNWJmMzVmNDliYTAz
M2Q4Li5mOGNjMzA1YTA2M2E0NjVhNjc4Nzk2M2FkZTkzYWZkMmViNjkyNzAzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tQcm9jZXNzR3JvdXAubW0KKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLUHJvY2Vzc0dyb3VwLm1tCkBA
IC01MCw5ICs1MCw5IEBACiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVUaHJlYWRTeXN0ZW1JbnRl
cmZhY2UuaD4KICNlbmRpZgogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1w
bGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiBA
aW1wbGVtZW50YXRpb24gV0tQcm9jZXNzR3JvdXAgewotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxM
T1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAgICAgUmVmUHRyPFdlYktpdDo6V2Vi
UHJvY2Vzc1Bvb2w+IF9wcm9jZXNzUG9vbDsKIAogICAgIFdlYWtPYmpDUHRyPGlkIDxXS1Byb2Nl
c3NHcm91cERlbGVnYXRlPj4gX2RlbGVnYXRlOwpAQCAtMjI1LDkgKzIyNSw5IEBAIHN0YXRpYyB2
b2lkIHNldFVwSGlzdG9yeUNsaWVudChXS1Byb2Nlc3NHcm91cCAqcHJvY2Vzc0dyb3VwLCBXS0Nv
bnRleHRSZWYgY29udGV4CiBAZW5kCiAKIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0JF
R0lOCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikK
K0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiBAaW1wbGVtZW50YXRpb24g
V0tQcm9jZXNzR3JvdXAgKFByaXZhdGUpCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBS
RUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIAogLSAoV0tDb250ZXh0UmVmKV9jb250ZXh0UmVm
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tUeXBl
UmVmV3JhcHBlci5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1R5cGVS
ZWZXcmFwcGVyLm1tCmluZGV4IGQ4MzgzZDUyZGI0ZDcwZThkMGZjMTAwZThjMGY0ZDgxMTg1Yzcw
YTYuLmZlOGE1ZTAwN2NkMWQ3ZTZmNmVkNTkxYWVjYWZkNWUyODliNTUxNDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1R5cGVSZWZXcmFwcGVyLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1R5cGVSZWZXcmFwcGVyLm1t
CkBAIC0zNCw5ICszNCw5IEBACiB9CiBAZW5kCiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVw
cmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElP
TlNfQkVHSU4KIEBpbXBsZW1lbnRhdGlvbiBXS1R5cGVSZWZXcmFwcGVyCi1JR05PUkVfV0FSTklO
R1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIAogLSAoaWQpaW5p
dFdpdGhPYmplY3Q6KFdLVHlwZVJlZilvYmplY3QKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCmluZGV4IGQ0MTllODlhNzhjZmM3MTYzMTk3OTNl
NzU3ZWZiMjAxMTkwODVhOWQuLmNkZTJjOTg5OGI5NzJlZjQ3NWNkNmEzNjg1NjIyOGY0NmY3YTI1
N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZp
ZXcubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5t
bQpAQCAtMzU3Miw5ICszNTcyLDkgQEAgc3RhdGljIHZvaWQgaGFyZHdhcmVLZXlib2FyZEF2YWls
YWJpbGl0eUNoYW5nZWRDYWxsYmFjayhDRk5vdGlmaWNhdGlvbkNlbnRlclJlZiwKICAgICBfaW1w
bC0+c2V0RnJhbWVTaXplKE5TU2l6ZVRvQ0dTaXplKHNpemUpKTsKIH0KIAotSUdOT1JFX1dBUk5J
TkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVE
X0lNUExFTUVOVEFUSU9OU19CRUdJTgogLSAodm9pZClyZW5ld0dTdGF0ZQotSUdOT1JFX1dBUk5J
TkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgX2lt
cGwtPnJlbmV3R1N0YXRlKCk7CiAgICAgW3N1cGVyIHJlbmV3R1N0YXRlXTsKQEAgLTQwNjgsOSAr
NDA2OCw5IEBAIFdFQkNPUkVfQ09NTUFORCh5YW5rQW5kU2VsZWN0KQogfQogCiAjaWYgRU5BQkxF
KERSQUdfU1VQUE9SVCkKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1l
bnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKHZv
aWQpZHJhZ2dlZEltYWdlOihOU0ltYWdlICopaW1hZ2UgZW5kZWRBdDooTlNQb2ludCllbmRQb2lu
dCBvcGVyYXRpb246KE5TRHJhZ09wZXJhdGlvbilvcGVyYXRpb24KLUlHTk9SRV9XQVJOSU5HU19F
TkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIF9pbXBsLT5k
cmFnZ2VkSW1hZ2UoaW1hZ2UsIE5TUG9pbnRUb0NHUG9pbnQoZW5kUG9pbnQpLCBvcGVyYXRpb24p
OwogfQpAQCAtNDE2MSw5ICs0MTYxLDkgQEAgSUdOT1JFX1dBUk5JTkdTX0VORAogICAgIHJldHVy
biBfaW1wbC0+YWNjZXNzaWJpbGl0eUZvY3VzZWRVSUVsZW1lbnQoKTsKIH0KIAotSUdOT1JFX1dB
Uk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNB
VEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgogLSAoQk9PTClhY2Nlc3NpYmlsaXR5SXNJZ25vcmVk
Ci1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19F
TkQKIHsKICAgICByZXR1cm4gX2ltcGwtPmFjY2Vzc2liaWxpdHlJc0lnbm9yZWQoKTsKIH0KQEAg
LTQxNzMsMjMgKzQxNzMsMjMgQEAgSUdOT1JFX1dBUk5JTkdTX0VORAogICAgIHJldHVybiBfaW1w
bC0+YWNjZXNzaWJpbGl0eUhpdFRlc3QoTlNQb2ludFRvQ0dQb2ludChwb2ludCkpOwogfQogCi1J
R05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9X
X0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChpZClhY2Nlc3NpYmlsaXR5QXR0
cmlidXRlVmFsdWU6KE5TU3RyaW5nICopYXR0cmlidXRlCi1JR05PUkVfV0FSTklOR1NfRU5ECitB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICByZXR1cm4gX2ltcGwt
PmFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZShhdHRyaWJ1dGUpOwogfQogCi1JR05PUkVfV0FS
TklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FU
RURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChpZClhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFs
dWU6KE5TU3RyaW5nICopYXR0cmlidXRlIGZvclBhcmFtZXRlcjooaWQpcGFyYW1ldGVyCi1JR05P
UkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsK
ICAgICByZXR1cm4gX2ltcGwtPmFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZShhdHRyaWJ1dGUs
IHBhcmFtZXRlcik7CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBs
ZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0g
KE5TQXJyYXk8TlNTdHJpbmcgKj4gKilhY2Nlc3NpYmlsaXR5UGFyYW1ldGVyaXplZEF0dHJpYnV0
ZU5hbWVzCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFU
SU9OU19FTkQKIHsKICAgICBOU0FycmF5PE5TU3RyaW5nICo+ICpuYW1lcyA9IFtzdXBlciBhY2Nl
c3NpYmlsaXR5UGFyYW1ldGVyaXplZEF0dHJpYnV0ZU5hbWVzXTsKICAgICByZXR1cm4gW25hbWVz
IGFycmF5QnlBZGRpbmdPYmplY3Q6QCJBWENvbnZlcnRSZWxhdGl2ZUZyYW1lIl07CkBAIC00MjYw
LDkgKzQyNjAsOSBAQCBJR05PUkVfV0FSTklOR1NfRU5ECiAgICAgX2ltcGwtPnByb3ZpZGVEYXRh
Rm9yUGFzdGVib2FyZChwYXN0ZWJvYXJkLCB0eXBlKTsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JF
R0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExF
TUVOVEFUSU9OU19CRUdJTgogLSAoTlNBcnJheSAqKW5hbWVzT2ZQcm9taXNlZEZpbGVzRHJvcHBl
ZEF0RGVzdGluYXRpb246KE5TVVJMICopZHJvcERlc3RpbmF0aW9uCi1JR05PUkVfV0FSTklOR1Nf
RU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICByZXR1cm4g
X2ltcGwtPm5hbWVzT2ZQcm9taXNlZEZpbGVzRHJvcHBlZEF0RGVzdGluYXRpb24oZHJvcERlc3Rp
bmF0aW9uKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW0KaW5kZXggYWNkNGMzMzMzZDc0OWYwY2I1
YjE1NzFkZTk2ZDVhMWNlZDRkZjNiOS4uYzNhNjQ0NTIyMDFkMTdjYmIyZTMwYzNmMTM3MDM4ZDRi
YmMzMmQwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dL
V2ViVmlld0NvbmZpZ3VyYXRpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW0KQEAgLTU1MywxNiArNTUzLDE2IEBAIHN0
YXRpYyBOU1N0cmluZyAqZGVmYXVsdEFwcGxpY2F0aW9uTmFtZUZvclVzZXJBZ2VudCgpCiAKIEFM
TE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0JFR0lOCiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJ
TigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1F
TlRBVElPTlNfQkVHSU4KIC0gKF9XS1dlYnNpdGVEYXRhU3RvcmUgKilfd2Vic2l0ZURhdGFTdG9y
ZQotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNf
RU5ECiB7CiAgICAgcmV0dXJuIHNlbGYud2Vic2l0ZURhdGFTdG9yZSA/IGFkb3B0TlMoW1tfV0tX
ZWJzaXRlRGF0YVN0b3JlIGFsbG9jXSBpbml0V2l0aERhdGFTdG9yZTpzZWxmLndlYnNpdGVEYXRh
U3RvcmVdKS5hdXRvcmVsZWFzZSgpIDogbnVsbHB0cjsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JF
R0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExF
TUVOVEFUSU9OU19CRUdJTgogLSAodm9pZClfc2V0V2Vic2l0ZURhdGFTdG9yZTooX1dLV2Vic2l0
ZURhdGFTdG9yZSAqKXdlYnNpdGVEYXRhU3RvcmUKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9X
X0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIHNlbGYud2Vic2l0ZURhdGFT
dG9yZSA9IHdlYnNpdGVEYXRhU3RvcmUgPyB3ZWJzaXRlRGF0YVN0b3JlLT5fZGF0YVN0b3JlLmdl
dCgpIDogbnVsbHB0cjsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9fV0tXZWJzaXRlRGF0YVN0b3JlLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0NvY29hL19XS1dlYnNpdGVEYXRhU3RvcmUubW0KaW5kZXggZmE3MDBlYzNmMDlhYjA4OTQy
NmEzMzZjZjhmYWQ0MGI5YWUwYzRmMi4uMjVkNDVlOTg4ZDZhMGJkZjQ4OWFiYzRjZjk4ZmIxN2Ez
OTBlNjQwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19X
S1dlYnNpdGVEYXRhU3RvcmUubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS1dlYnNpdGVEYXRhU3RvcmUubW0KQEAgLTQwLDkgKzQwLDkgQEAgdHlwZWRlZiBOU19P
UFRJT05TKE5TVUludGVnZXIsIF9XS1dlYnNpdGVEYXRhVHlwZXMpIHsKIAogQUxMT1dfREVQUkVD
QVRFRF9ERUNMQVJBVElPTlNfQkVHSU4KIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNh
dGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19C
RUdJTgogQGltcGxlbWVudGF0aW9uIF9XS1dlYnNpdGVEYXRhU3RvcmUKLUlHTk9SRV9XQVJOSU5H
U19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogCiAtIChpbnN0YW5j
ZXR5cGUpaW5pdFdpdGhEYXRhU3RvcmU6KFdLV2Vic2l0ZURhdGFTdG9yZSAqKWRhdGFTdG9yZQog
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL21hYy9XS1ZpZXcubW0g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQppbmRleCA5MDgzMTk5
NmViY2I0ZjM4NDcyMWM1Y2Y0OTUxOWVkNzk5ODlmOGE5Li4yY2FiMmUwNTM4NmQ0MmIzNzFmNDQw
NmFiNzFhN2Y2NTkzMGY3ZDc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvbWFjL1dLVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvbWFjL1dL
Vmlldy5tbQpAQCAtNzEsOSArNzEsOSBAQAogCiAjZW5kaWYKIAotSUdOT1JFX1dBUk5JTkdTX0JF
R0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExF
TUVOVEFUSU9OU19CRUdJTgogQGltcGxlbWVudGF0aW9uIFdLVmlldwotSUdOT1JFX1dBUk5JTkdT
X0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKIC0gKGlkKWluaXRX
aXRoRnJhbWU6KE5TUmVjdClmcmFtZSBwcm9jZXNzR3JvdXA6KFdLUHJvY2Vzc0dyb3VwICopcHJv
Y2Vzc0dyb3VwIGJyb3dzaW5nQ29udGV4dEdyb3VwOihXS0Jyb3dzaW5nQ29udGV4dEdyb3VwICop
YnJvd3NpbmdDb250ZXh0R3JvdXAKIHsKQEAgLTE3Nyw5ICsxNzcsOSBAQCBJR05PUkVfV0FSTklO
R1NfRU5ECiAgICAgX2RhdGEtPl9pbXBsLT5zZXRGcmFtZVNpemUoTlNTaXplVG9DR1NpemUoc2l6
ZSkpOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRp
b25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtICh2b2lkKXJl
bmV3R1N0YXRlCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVO
VEFUSU9OU19FTkQKIHsKICAgICBfZGF0YS0+X2ltcGwtPnJlbmV3R1N0YXRlKCk7CiAgICAgW3N1
cGVyIHJlbmV3R1N0YXRlXTsKQEAgLTY5Miw5ICs2OTIsOSBAQCBTb21lIG90aGVyIGVkaXRpbmct
cmVsYXRlZCBtZXRob2RzIHN0aWxsIHVuaW1wbGVtZW50ZWQ6CiB9CiAKICNpZiBFTkFCTEUoRFJB
R19TVVBQT1JUKQotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0
aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgogLSAodm9pZClk
cmFnZ2VkSW1hZ2U6KE5TSW1hZ2UgKilpbWFnZSBlbmRlZEF0OihOU1BvaW50KWVuZFBvaW50IG9w
ZXJhdGlvbjooTlNEcmFnT3BlcmF0aW9uKW9wZXJhdGlvbgotSUdOT1JFX1dBUk5JTkdTX0VORAor
QUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgX2RhdGEtPl9pbXBs
LT5kcmFnZ2VkSW1hZ2UoaW1hZ2UsIE5TUG9pbnRUb0NHUG9pbnQoZW5kUG9pbnQpLCBvcGVyYXRp
b24pOwogfQpAQCAtNzg1LDkgKzc4NSw5IEBAIElHTk9SRV9XQVJOSU5HU19FTkQKICAgICByZXR1
cm4gX2RhdGEtPl9pbXBsLT5hY2Nlc3NpYmlsaXR5Rm9jdXNlZFVJRWxlbWVudCgpOwogfQogCi1J
R05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9X
X0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChCT09MKWFjY2Vzc2liaWxpdHlJ
c0lnbm9yZWQKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5U
QVRJT05TX0VORAogewogICAgIHJldHVybiBfZGF0YS0+X2ltcGwtPmFjY2Vzc2liaWxpdHlJc0ln
bm9yZWQoKTsKIH0KQEAgLTc5NywyMyArNzk3LDIzIEBAIElHTk9SRV9XQVJOSU5HU19FTkQKICAg
ICByZXR1cm4gX2RhdGEtPl9pbXBsLT5hY2Nlc3NpYmlsaXR5SGl0VGVzdChOU1BvaW50VG9DR1Bv
aW50KHBvaW50KSk7CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBs
ZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0g
KGlkKWFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTooTlNTdHJpbmcgKilhdHRyaWJ1dGUKLUlH
Tk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAog
ewogICAgIHJldHVybiBfZGF0YS0+X2ltcGwtPmFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZShh
dHRyaWJ1dGUpOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVt
ZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChp
ZClhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFsdWU6KE5TU3RyaW5nICopYXR0cmlidXRlIGZvclBh
cmFtZXRlcjooaWQpcGFyYW1ldGVyCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNB
VEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICByZXR1cm4gX2RhdGEtPl9pbXBsLT5hY2Nl
c3NpYmlsaXR5QXR0cmlidXRlVmFsdWUoYXR0cmlidXRlLCBwYXJhbWV0ZXIpOwogfQogCi1JR05P
UkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RF
UFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChOU0FycmF5PE5TU3RyaW5nICo+ICop
YWNjZXNzaWJpbGl0eVBhcmFtZXRlcml6ZWRBdHRyaWJ1dGVOYW1lcwotSUdOT1JFX1dBUk5JTkdT
X0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgTlNBcnJh
eTxOU1N0cmluZyAqPiAqbmFtZXMgPSBbc3VwZXIgYWNjZXNzaWJpbGl0eVBhcmFtZXRlcml6ZWRB
dHRyaWJ1dGVOYW1lc107CiAgICAgcmV0dXJuIFtuYW1lcyBhcnJheUJ5QWRkaW5nT2JqZWN0OkAi
QVhDb252ZXJ0UmVsYXRpdmVGcmFtZSJdOwpAQCAtODg0LDkgKzg4NCw5IEBAIElHTk9SRV9XQVJO
SU5HU19FTkQKICAgICBfZGF0YS0+X2ltcGwtPnByb3ZpZGVEYXRhRm9yUGFzdGVib2FyZChwYXN0
ZWJvYXJkLCB0eXBlKTsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWlt
cGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgog
LSAoTlNBcnJheSAqKW5hbWVzT2ZQcm9taXNlZEZpbGVzRHJvcHBlZEF0RGVzdGluYXRpb246KE5T
VVJMICopZHJvcERlc3RpbmF0aW9uCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNB
VEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICByZXR1cm4gX2RhdGEtPl9pbXBsLT5uYW1l
c09mUHJvbWlzZWRGaWxlc0Ryb3BwZWRBdERlc3RpbmF0aW9uKGRyb3BEZXN0aW5hdGlvbik7CiB9
CkBAIC0xMTM5LDkgKzExMzksOSBAQCBJR05PUkVfV0FSTklOR1NfRU5ECiBAZW5kCiAKIEFMTE9X
X0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0JFR0lOCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRl
cHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJ
T05TX0JFR0lOCiBAaW1wbGVtZW50YXRpb24gV0tWaWV3IChQcml2YXRlKQotSUdOT1JFX1dBUk5J
TkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiAKIC0gKHZvaWQp
c2F2ZUJhY2tGb3J3YXJkU25hcHNob3RGb3JDdXJyZW50SXRlbQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV0tJbWFnZVByZXZpZXdWaWV3Q29udHJvbGxlci5tbSBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dLSW1hZ2VQcmV2aWV3Vmlld0NvbnRyb2xsZXIubW0KaW5k
ZXggZTM0MWM2ODEzY2Q4MDEzYTkxMmRjMjk4MjRlZmI2NmViMTdhYmFhOS4uOTI3ZjhlMDQyZmRl
MDg5OWZlZTQ3OTNjZjExM2ZjOWU1ZThkOWNlYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV0tJbWFnZVByZXZpZXdWaWV3Q29udHJvbGxlci5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XS0ltYWdlUHJldmlld1ZpZXdDb250cm9sbGVyLm1tCkBAIC05Myw5ICs5
Myw5IEBAIHN0YXRpYyBDR1NpemUgX3NjYWxlU2l6ZVdpdGhpblNpemUoQ0dTaXplIHNvdXJjZSwg
Q0dTaXplIGRlc3RpbmF0aW9uKQogfQogCiAjaWYgSEFWRShMSU5LX1BSRVZJRVcpCi1JR05PUkVf
V0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJF
Q0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChOU0FycmF5PFVJUHJldmlld0FjdGlvbiAq
PiAqKXByZXZpZXdBY3Rpb25JdGVtcwotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVD
QVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgTlNNdXRhYmxlQXJyYXk8VUlQcmV2aWV3
QWN0aW9uICo+ICpwcmV2aWV3QWN0aW9ucyA9IFtOU011dGFibGVBcnJheSBhcnJheV07CiAgICAg
Zm9yIChfV0tFbGVtZW50QWN0aW9uICppbWFnZUFjdGlvbiBpbiBfaW1hZ2VBY3Rpb25zLmdldCgp
KSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tBaXJQ
bGF5Um91dGVQaWNrZXIubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tB
aXJQbGF5Um91dGVQaWNrZXIubW0KaW5kZXggM2UzZDc2MGYzMTlkNzI0OWJhOWUyYmZmOWNkNmUz
ODZkZTczN2ExMy4uMmE4MDZhNjY1YTEyZTIxZjJjODliZmQzMDNjMmJmZjI2NzE1YTViMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL2Zvcm1zL1dLQWlyUGxheVJvdXRl
UGlja2VyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0FpclBs
YXlSb3V0ZVBpY2tlci5tbQpAQCAtNzMsOSArNzMsOSBAQCB1c2luZyBuYW1lc3BhY2UgV2ViS2l0
OwogICAgIFtzdXBlciBkZWFsbG9jXTsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXBy
ZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9O
U19CRUdJTgogLSAodm9pZClwb3BvdmVyQ29udHJvbGxlckRpZERpc21pc3NQb3BvdmVyOihVSVBv
cG92ZXJDb250cm9sbGVyICopcG9wb3ZlckNvbnRyb2xsZXIKLUlHTk9SRV9XQVJOSU5HU19FTkQK
K0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIGlmIChwb3BvdmVy
Q29udHJvbGxlciAhPSBfcG9wb3ZlckNvbnRyb2xsZXIpCiAgICAgICAgIHJldHVybjsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0ZpbGVVcGxvYWRQYW5l
bC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0ZpbGVVcGxvYWRQYW5l
bC5tbQppbmRleCA1ODlmMDY3NjIyYTUyN2MzZTk0ZmM0ZmRlODI1NWRkNTk3ZTMyMDkyLi5iZTk0
NTFkYjc0N2VlYzRmMDVkMWI1NDk3YTFhZjk4YzAzZTNjYTUwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9pb3MvZm9ybXMvV0tGaWxlVXBsb2FkUGFuZWwubW0KKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL2Zvcm1zL1dLRmlsZVVwbG9hZFBhbmVsLm1tCkBAIC01
MjcsOSArNTI3LDkgQEAgc3RhdGljIE5TU2V0PE5TU3RyaW5nICo+ICpVVElzRm9yTUlNRVR5cGVz
KE5TQXJyYXkgKm1pbWVUeXBlcykKIAogI3ByYWdtYSBtYXJrIC0gVUlQb3BvdmVyQ29udHJvbGxl
ckRlbGVnYXRlCiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRh
dGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKHZvaWQp
cG9wb3ZlckNvbnRyb2xsZXJEaWREaXNtaXNzUG9wb3ZlcjooVUlQb3BvdmVyQ29udHJvbGxlciAq
KXBvcG92ZXJDb250cm9sbGVyCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVE
X0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICBbc2VsZiBfY2FuY2VsXTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9mb3Jtcy9XS0Zvcm1Qb3BvdmVyLm1tIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL2Zvcm1zL1dLRm9ybVBvcG92ZXIubW0KaW5kZXgg
MDdlZWUwM2NhNmRjOTM0YWI1Nzk3OTM5OTBhMzhhMjRiYzk4NDBlNy4uYTRjNGFjM2E4YzcxMzI4
OTA1M2JjOTczYzZiOTI5MWE3NzM4ZGE4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvaW9zL2Zvcm1zL1dLRm9ybVBvcG92ZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvaW9zL2Zvcm1zL1dLRm9ybVBvcG92ZXIubW0KQEAgLTE2Nyw5ICsxNjcsOSBAQCBBTExP
V19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgogICAgIFtzZWxmIHByZXNlbnRQb3BvdmVy
QW5pbWF0ZWQ6Tk9dOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1w
bGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAt
ICh2b2lkKXBvcG92ZXJDb250cm9sbGVyRGlkRGlzbWlzc1BvcG92ZXI6KFVJUG9wb3ZlckNvbnRy
b2xsZXIgKilwb3BvdmVyQ29udHJvbGxlcgotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQ
UkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgaWYgKF9pc1JvdGF0aW5nKQogICAg
ICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1Z2lu
cy9QREYvUERGUGx1Z2luLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERG
L1BERlBsdWdpbi5tbQppbmRleCBkZWE2YTVkMTE4NTlkMjg3MjQ4NzI1YWExMzA5YzI5ZmEwMGY0
NzBiLi5iMTVlNjBiN2JmNDExM2I1ZDI4OGIyZjNjMTE4OGM1OGI4ZDdiNTg2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4ubW0KQEAgLTE2
MSw5ICsxNjEsOSBAQCBzdGF0aWMgY29uc3QgaW50IGRlZmF1bHRTY3JvbGxNYWduaXR1ZGVUaHJl
c2hvbGRGb3JQYWdlRmxpcCA9IDIwOwogI2VuZGlmCiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJ
TigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1F
TlRBVElPTlNfQkVHSU4KIC0gKEJPT0wpYWNjZXNzaWJpbGl0eUlzSWdub3JlZAotSUdOT1JFX1dB
Uk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAg
cmV0dXJuIE5POwogfQpAQCAtMTc0LDkgKzE3NCw5IEBAIElHTk9SRV9XQVJOSU5HU19FTkQKICAg
ICByZXR1cm4gX3BkZlBsdWdpbi0+Y29udmVydEZyb21QREZWaWV3VG9TY3JlZW4ocmVjdCk7CiB9
CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQor
QUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKGlkKWFjY2Vzc2liaWxp
dHlBdHRyaWJ1dGVWYWx1ZTooTlNTdHJpbmcgKilhdHRyaWJ1dGUKLUlHTk9SRV9XQVJOSU5HU19F
TkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIGlmIChbYXR0
cmlidXRlIGlzRXF1YWxUb1N0cmluZzpOU0FjY2Vzc2liaWxpdHlQYXJlbnRBdHRyaWJ1dGVdKQog
ICAgICAgICByZXR1cm4gX3BhcmVudDsKQEAgLTIxOCw5ICsyMTgsOSBAQCBJR05PUkVfV0FSTklO
R1NfRU5ECiAgICAgcmV0dXJuIDA7CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVj
YXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNf
QkVHSU4KIC0gKGlkKWFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTooTlNTdHJpbmcgKilhdHRy
aWJ1dGUgZm9yUGFyYW1ldGVyOihpZClwYXJhbWV0ZXIKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FM
TE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIGlmIChbYXR0cmlidXRl
IGlzRXF1YWxUb1N0cmluZzpOU0FjY2Vzc2liaWxpdHlCb3VuZHNGb3JSYW5nZVBhcmFtZXRlcml6
ZWRBdHRyaWJ1dGVdKSB7CiAgICAgICAgIE5TUmVjdCBib3VuZHNJblBERlZpZXdDb29yZGluYXRl
cyA9IFtbX3BkZkxheWVyQ29udHJvbGxlciBhY2Nlc3NpYmlsaXR5Qm91bmRzRm9yUmFuZ2VBdHRy
aWJ1dGVGb3JQYXJhbWV0ZXI6cGFyYW1ldGVyXSByZWN0VmFsdWVdOwpAQCAtMjQzLDkgKzI0Myw5
IEBAIElHTk9SRV9XQVJOSU5HU19FTkQKICAgICByZXR1cm4gW19wZGZMYXllckNvbnRyb2xsZXIg
cmVhZGluZ01vZGVsXTsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWlt
cGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgog
LSAoTlNBcnJheSAqKWFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVOYW1lcwotSUdOT1JFX1dBUk5JTkdT
X0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgc3RhdGlj
IE5TQXJyYXkgKmF0dHJpYnV0ZU5hbWVzID0gMDsKIApAQCAtMjc3LDkgKzI3Nyw5IEBAIElHTk9S
RV9XQVJOSU5HU19FTkQKICAgICByZXR1cm4gYXR0cmlidXRlTmFtZXM7CiB9CiAKLUlHTk9SRV9X
QVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVD
QVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKE5TQXJyYXkgKilhY2Nlc3NpYmlsaXR5QWN0
aW9uTmFtZXMKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5U
QVRJT05TX0VORAogewogI2lmIF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAx
MzAwCiAgICAgcmV0dXJuIG5pbDsKQEAgLTI5MywzMSArMjkzLDMxIEBAIElHTk9SRV9XQVJOSU5H
U19FTkQKICNlbmRpZgogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1w
bGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAt
ICh2b2lkKWFjY2Vzc2liaWxpdHlQZXJmb3JtQWN0aW9uOihOU1N0cmluZyAqKWFjdGlvbgotSUdO
T1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7
CiAgICAgaWYgKFthY3Rpb24gaXNFcXVhbFRvU3RyaW5nOk5TQWNjZXNzaWJpbGl0eVNob3dNZW51
QWN0aW9uXSkKICAgICAgICAgX3BkZlBsdWdpbi0+c2hvd0NvbnRleHRNZW51QXRQb2ludChXZWJD
b3JlOjpJbnRSZWN0KFdlYkNvcmU6OkludFBvaW50KCksIF9wZGZQbHVnaW4tPnNpemUoKSkuY2Vu
dGVyKCkpOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50
YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChCT09M
KWFjY2Vzc2liaWxpdHlJc0F0dHJpYnV0ZVNldHRhYmxlOihOU1N0cmluZyAqKWF0dHJpYnV0ZQot
SUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5E
CiB7CiAgICAgcmV0dXJuIFtfcGRmTGF5ZXJDb250cm9sbGVyIGFjY2Vzc2liaWxpdHlJc0F0dHJp
YnV0ZVNldHRhYmxlOmF0dHJpYnV0ZV07CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVw
cmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElP
TlNfQkVHSU4KIC0gKHZvaWQpYWNjZXNzaWJpbGl0eVNldFZhbHVlOihpZCl2YWx1ZSBmb3JBdHRy
aWJ1dGU6KE5TU3RyaW5nICopYXR0cmlidXRlCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19E
RVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICByZXR1cm4gW19wZGZMYXllckNv
bnRyb2xsZXIgYWNjZXNzaWJpbGl0eVNldFZhbHVlOnZhbHVlIGZvckF0dHJpYnV0ZTphdHRyaWJ1
dGVdOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRp
b25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChOU0FycmF5
ICopYWNjZXNzaWJpbGl0eVBhcmFtZXRlcml6ZWRBdHRyaWJ1dGVOYW1lcwotSUdOT1JFX1dBUk5J
TkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAjaWYgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEzMDAKICAgICByZXR1cm4gbmlsOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dLQWNjZXNz
aWJpbGl0eVdlYlBhZ2VPYmplY3RNYWMubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2Vi
UGFnZS9tYWMvV0tBY2Nlc3NpYmlsaXR5V2ViUGFnZU9iamVjdE1hYy5tbQppbmRleCA3Njg5MmZh
OTQ3ZWE1MzMyZjY4M2M3ZGIxZWYzYjAwNzhiZTVmZGUwLi5iYjdmYmNmZmQyNTU3MjdlYzNjYTU0
NjNjNTY0MTBiMDhkOWY5NzZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
V2ViUGFnZS9tYWMvV0tBY2Nlc3NpYmlsaXR5V2ViUGFnZU9iamVjdE1hYy5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV0tBY2Nlc3NpYmlsaXR5V2ViUGFnZU9i
amVjdE1hYy5tbQpAQCAtNTgsMTYgKzU4LDE2IEBACiAgICAgW3N1cGVyIGRlYWxsb2NdOwogfQog
Ci1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FM
TE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChCT09MKWFjY2Vzc2liaWxp
dHlJc0lnbm9yZWQKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVN
RU5UQVRJT05TX0VORAogewogICAgIHJldHVybiBOTzsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JF
R0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExF
TUVOVEFUSU9OU19CRUdJTgogLSAoTlNBcnJheSAqKWFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVOYW1l
cwotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNf
RU5ECiB7CiAgICAgaWYgKCFtX2F0dHJpYnV0ZU5hbWVzKQogICAgICAgICBtX2F0dHJpYnV0ZU5h
bWVzID0gYWRvcHROUyhbW05TQXJyYXkgYWxsb2NdIGluaXRXaXRoT2JqZWN0czoKQEAgLTkwLDkg
KzkwLDkgQEAgdGVtcGxhdGU8dHlwZW5hbWUgVCwgdHlwZW5hbWUgVT4gaW5saW5lIFQgcmV0cmll
dmVBY2Nlc3NpYmlsaXR5VmFsdWVGcm9tTWFpblRocmUKICAgICByZXR1cm4gdmFsdWU7CiB9CiAK
LUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxM
T1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKE5TQXJyYXkgKilhY2Nlc3Np
YmlsaXR5UGFyYW1ldGVyaXplZEF0dHJpYnV0ZU5hbWVzCi1JR05PUkVfV0FSTklOR1NfRU5ECitB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICByZXR1cm4gcmV0cmll
dmVBY2Nlc3NpYmlsaXR5VmFsdWVGcm9tTWFpblRocmVhZDxpZD4oWyZzZWxmXSAoKSAtPiBpZCB7
CiAgICAgICAgIE5TTXV0YWJsZUFycmF5ICpuYW1lcyA9IFtOU011dGFibGVBcnJheSBhcnJheV07
CkBAIC0xMDMsMTYgKzEwMywxNiBAQCBJR05PUkVfV0FSTklOR1NfRU5ECiAgICAgfSk7CiB9CiAK
LUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxM
T1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKEJPT0wpYWNjZXNzaWJpbGl0
eUlzQXR0cmlidXRlU2V0dGFibGU6KE5TU3RyaW5nICopYXR0cmlidXRlCi1JR05PUkVfV0FSTklO
R1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICByZXR1
cm4gTk87CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRh
dGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKHZvaWQp
YWNjZXNzaWJpbGl0eVNldFZhbHVlOihpZCl2YWx1ZSBmb3JBdHRyaWJ1dGU6KE5TU3RyaW5nICop
YXR0cmlidXRlCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVO
VEFUSU9OU19FTkQKIHsKIH0KIApAQCAtMTIzLDkgKzEyMyw5IEBAIElHTk9SRV9XQVJOSU5HU19F
TkQKICAgICB9KTsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxl
bWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgogLSAo
TlNBcnJheSAqKWFjY2Vzc2liaWxpdHlBY3Rpb25OYW1lcwotSUdOT1JFX1dBUk5JTkdTX0VORAor
QUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgcmV0dXJuIFtOU0Fy
cmF5IGFycmF5XTsKIH0KQEAgLTEzOSw5ICsxMzksOSBAQCBJR05PUkVfV0FSTklOR1NfRU5ECiAg
ICAgcmV0dXJuIFtOU0FycmF5IGFycmF5V2l0aE9iamVjdDp3cmFwcGVyXTsKIH0KIAotSUdOT1JF
X1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBS
RUNBVEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgogLSAoaWQpYWNjZXNzaWJpbGl0eUF0dHJpYnV0
ZVZhbHVlOihOU1N0cmluZyAqKWF0dHJpYnV0ZQotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1df
REVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgaWYgKCFXZWJDb3JlOjpBWE9i
amVjdENhY2hlOjphY2Nlc3NpYmlsaXR5RW5hYmxlZCgpKQogICAgICAgICBXZWJDb3JlOjpBWE9i
amVjdENhY2hlOjplbmFibGVBY2Nlc3NpYmlsaXR5KCk7CkBAIC0yMTQsOSArMjE0LDkgQEAgSUdO
T1JFX1dBUk5JTkdTX0VORAogICAgIH0pOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRl
cHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJ
T05TX0JFR0lOCiAtIChpZClhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFsdWU6KE5TU3RyaW5nICop
YXR0cmlidXRlIGZvclBhcmFtZXRlcjooaWQpcGFyYW1ldGVyCi1JR05PUkVfV0FSTklOR1NfRU5E
CitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICBXZWJDb3JlOjpG
bG9hdFBvaW50IHBhZ2VPdmVybGF5UG9pbnQ7CiAgICAgaWYgKFtwYXJhbWV0ZXIgaXNLaW5kT2ZD
bGFzczpbTlNWYWx1ZSBjbGFzc11dICYmICFzdHJjbXAoWyhOU1ZhbHVlICopcGFyYW1ldGVyIG9i
akNUeXBlXSwgQGVuY29kZShOU1BvaW50KSkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9NaXNjL1dlYkRvd25sb2FkLm1tIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlz
Yy9XZWJEb3dubG9hZC5tbQppbmRleCAwYmJlYjE1NDE1MGM0Y2FlMTAxMzAwNjc0ZDNiYjdjZTk3
YzFkNmU0Li4zMjk1ODE2OWMyMDFkNThjMzExMmI1YTEzNzk4ZTllNGNkNGU1ODliIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkRvd25sb2FkLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL01pc2MvV2ViRG93bmxvYWQubW0KQEAgLTIxNywxNSArMjE3
LDE1IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogICAgIFtzdXBlciBkZWFsbG9jXTsKIH0K
IAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgogLSAoaWQpaW5pdFdpdGhSZXF1
ZXN0OihOU1VSTFJlcXVlc3QgKilyZXF1ZXN0IGRlbGVnYXRlOihpZDxOU1VSTERvd25sb2FkRGVs
ZWdhdGU+KWRlbGVnYXRlCi1JR05PUkVfV0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lN
UExFTUVOVEFUSU9OU19FTkQKIHsKICAgICBbc2VsZiBfc2V0UmVhbERlbGVnYXRlOmRlbGVnYXRl
XTsKICAgICByZXR1cm4gW3N1cGVyIGluaXRXaXRoUmVxdWVzdDpyZXF1ZXN0IGRlbGVnYXRlOl93
ZWJJbnRlcm5hbF07CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBs
ZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0g
KGlkKV9pbml0V2l0aExvYWRpbmdDb25uZWN0aW9uOihOU1VSTENvbm5lY3Rpb24gKiljb25uZWN0
aW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdDooTlNVUkxSZXF1ZXN0ICopcmVx
dWVzdAogICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2U6KE5TVVJMUmVzcG9uc2UgKily
ZXNwb25zZQpAQCAtMjM3LDcgKzIzNyw3IEBAIElHTk9SRV9XQVJOSU5HU19FTkQKICAgICByZXR1
cm4gW3N1cGVyIF9pbml0V2l0aExvYWRpbmdDb25uZWN0aW9uOmNvbm5lY3Rpb24gcmVxdWVzdDpy
ZXF1ZXN0IHJlc3BvbnNlOnJlc3BvbnNlIGRlbGVnYXRlOl93ZWJJbnRlcm5hbCBwcm94eTpwcm94
eV07CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlv
bnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKGlkKV9pbml0
V2l0aFJlcXVlc3Q6KE5TVVJMUmVxdWVzdCAqKXJlcXVlc3QKICAgICAgICAgICAgICAgZGVsZWdh
dGU6KGlkKWRlbGVnYXRlCiAgICAgICAgICAgICAgZGlyZWN0b3J5OihOU1N0cmluZyAqKWRpcmVj
dG9yeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvTWlzYy9XZWJJY29uRGF0
YWJhc2UubW0gYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9NaXNjL1dlYkljb25EYXRhYmFzZS5t
bQppbmRleCAyNzljMzEyZGJjOTljMmE5NzY1ODA4MzVlM2I2MzA5ZTBkN2Q4MThiLi42YTFlNzhh
ZmVjNTEzZWY2ZDNlZmMzNTBjZjI4ZDA2NmI5ZmY4NzMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0TGVnYWN5L21hYy9NaXNjL1dlYkljb25EYXRhYmFzZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9NaXNjL1dlYkljb25EYXRhYmFzZS5tbQpAQCAtOTEsOSArOTEsOSBAQCBzdGF0
aWMgY29uc3QgdW5zaWduZWQgY2hhciBkZWZhdWx0SWNvbkRhdGFbXSA9IHsgMHg0RCwgMHg0RCwg
MHgwMCwgMHgyQSwgMHgwMCwgMAogICAgIDB4MDAsIDB4MDAsIDB4MDEsIDB4NTIsIDB4MDAsIDB4
MDMsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDEsIDB4MDAsIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDgsIDB4MDAsIDB4MDgsIDB4MDAsIDB4MDgsIDB4
MDAsIDB4MDgsIDB4MDAsIDB4MEEsIAogICAgIDB4RkMsIDB4ODAsIDB4MDAsIDB4MDAsIDB4Mjcs
IDB4MTAsIDB4MDAsIDB4MEEsIDB4RkMsIDB4ODAsIDB4MDAsIDB4MDAsIDB4MjcsIDB4MTAgfTsK
IAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgogQGltcGxlbWVudGF0aW9uIFdl
Ykljb25EYXRhYmFzZQotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBM
RU1FTlRBVElPTlNfRU5ECiAKICsgKHZvaWQpaW5pdGlhbGl6ZQogewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1t
IGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5W
aWV3Lm1tCmluZGV4IDA2NGI2YTU0MWMyZTBjMjI2NWI2OGJjNzA5NDdiMTM1YzExOTg5ZjQuLmMx
NmM2YzI2NmMzYjk0ZWRlOWM0OTZlYjY2NjM4MjMyNmQyOTY5N2MgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdp
blZpZXcubW0KQEAgLTYwNSw5ICs2MDUsOSBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKICAg
ICB9CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlv
bnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKHZvaWQpcmVu
ZXdHU3RhdGUKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5U
QVRJT05TX0VORAogewogICAgIFtzdXBlciByZW5ld0dTdGF0ZV07CiAgICAgCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYkR5bmFtaWNTY3JvbGxCYXJzVmll
dy5tbSBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJh
cnNWaWV3Lm1tCmluZGV4IGMzYTg2NTBkOTQ5YWU5MTEzNDQ2NjhkMmUzMTMxMDEyOWE5ZmE3NjEu
LjU2ZGNjYThhNzI0ZjUwZTJiMGI0Zjk2YmNiZmE1OGM2OTgxMTQ0OGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJhcnNWaWV3Lm1t
CisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViRHluYW1pY1Njcm9sbEJh
cnNWaWV3Lm1tCkBAIC01ODAsOSArNTgwLDkgQEAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNNYXhV
cGRhdGVTY3JvbGxiYXJzUGFzcyA9IDI7CiB9CiAKIC8vIFRoaXMgb2JqZWN0IHdpbGwgYmUgdGhl
IHBhcmVudCBvZiB0aGUgd2ViIGFyZWEgaW4gV0sxLCBzbyBpdCBzaG91bGQgbm90IGJlIGlnbm9y
ZWQuCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikK
K0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChCT09MKWFjY2Vzc2li
aWxpdHlJc0lnbm9yZWQKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1Q
TEVNRU5UQVRJT05TX0VORAogewogICAgIHJldHVybiBOTzsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gYi9Tb3VyY2UvV2ViS2l0
TGVnYWN5L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCmluZGV4IDFiZjNiNTY3NTg4NGJjOTZl
ZDMyZGQ0OGEzYzc2YTIyNjVhNTUwNzYuLjcxZDI1OTdiMjJlMDI1MGE5ZDU2YzliZmM3MDlmYjNh
MDNmYmQ4Y2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2Vi
SFRNTFZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9XZWJIVE1M
Vmlldy5tbQpAQCAtNDI3Miw3ICs0MjcyLDcgQEAgc3RhdGljIEJPT0wgY3VycmVudFNjcm9sbElz
QmxpdChOU1ZpZXcgKmNsaXBWaWV3KQogI2VuZGlmCiAKICNpZiBFTkFCTEUoRFJBR19TVVBQT1JU
KSAmJiBQTEFURk9STShNQUMpCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1w
bGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAt
ICh2b2lkKWRyYWdJbWFnZTooTlNJbWFnZSAqKWRyYWdJbWFnZQogICAgICAgICAgICAgICAgYXQ6
KE5TUG9pbnQpYXQKICAgICAgICAgICAgb2Zmc2V0OihOU1NpemUpb2Zmc2V0CkBAIC00MzEzLDkg
KzQzMTMsOSBAQCBJR05PUkVfV0FSTklOR1NfRU5ECiAgICAgW3NlbGYgcmVsZWFzZV07CiB9CiAK
LUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxM
T1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKE5TRHJhZ09wZXJhdGlvbilk
cmFnZ2luZ1NvdXJjZU9wZXJhdGlvbk1hc2tGb3JMb2NhbDooQk9PTClpc0xvY2FsCi1JR05PUkVf
V0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAg
ICBBU1NFUlQoIVtzZWxmIF93ZWJWaWV3XSB8fCBbc2VsZiBfaXNUb3BIVE1MVmlld10pOwogICAg
IApAQCAtNDMyNiw5ICs0MzI2LDkgQEAgSUdOT1JFX1dBUk5JTkdTX0VORAogICAgIHJldHVybiAo
TlNEcmFnT3BlcmF0aW9uKXBhZ2UtPmRyYWdDb250cm9sbGVyKCkuc291cmNlRHJhZ09wZXJhdGlv
bigpOwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRp
b25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtICh2b2lkKWRy
YWdnZWRJbWFnZTooTlNJbWFnZSAqKWFuSW1hZ2UgZW5kZWRBdDooTlNQb2ludClhUG9pbnQgb3Bl
cmF0aW9uOihOU0RyYWdPcGVyYXRpb24pb3BlcmF0aW9uCi1JR05PUkVfV0FSTklOR1NfRU5ECitB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICBBU1NFUlQoIVtzZWxm
IF93ZWJWaWV3XSB8fCBbc2VsZiBfaXNUb3BIVE1MVmlld10pOwogICAgIApAQCAtNDM2NSw5ICs0
MzY1LDkgQEAgc3RhdGljIGJvb2wgbWF0Y2hlc0V4dGVuc2lvbk9yRXF1aXZhbGVudChOU1N0cmlu
ZyAqZmlsZW5hbWUsIE5TU3RyaW5nICpleHRlbnNpb24KICAgICAgICAgJiYgW2ZpbGVuYW1lIF93
ZWJraXRfaGFzQ2FzZUluc2Vuc2l0aXZlU3VmZml4OkAiLmpwZyJdKTsKIH0KIAotSUdOT1JFX1dB
Uk5JTkdTX0JFR0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNB
VEVEX0lNUExFTUVOVEFUSU9OU19CRUdJTgogLSAoTlNBcnJheSAqKW5hbWVzT2ZQcm9taXNlZEZp
bGVzRHJvcHBlZEF0RGVzdGluYXRpb246KE5TVVJMICopZHJvcERlc3RpbmF0aW9uCi1JR05PUkVf
V0FSTklOR1NfRU5ECitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAg
ICBOU0ZpbGVXcmFwcGVyICp3cmFwcGVyID0gbmlsOwogICAgIE5TVVJMICpkcmFnZ2luZ0VsZW1l
bnRVUkwgPSBuaWw7CkBAIC01MDI0LDkgKzUwMjQsOSBAQCBzdGF0aWMgUmVmUHRyPEtleWJvYXJk
RXZlbnQ+IGN1cnJlbnRLZXlib2FyZEV2ZW50KEZyYW1lKiBjb3JlRnJhbWUpCiAgICAgW3N1cGVy
IGZsYWdzQ2hhbmdlZDpldmVudF07CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVj
YXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNf
QkVHSU4KIC0gKGlkKWFjY2Vzc2liaWxpdHlBdHRyaWJ1dGVWYWx1ZTooTlNTdHJpbmcqKWF0dHJp
YnV0ZU5hbWUKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5U
QVRJT05TX0VORAogewogICAgIGlmIChbYXR0cmlidXRlTmFtZSBpc0VxdWFsVG9TdHJpbmc6IE5T
QWNjZXNzaWJpbGl0eUNoaWxkcmVuQXR0cmlidXRlXSkgewogICAgICAgICBpZCBhY2NUcmVlID0g
W1tzZWxmIF9mcmFtZV0gYWNjZXNzaWJpbGl0eVJvb3RdOwpAQCAtNjI4Niw5ICs2Mjg2LDkgQEAg
c3RhdGljIEJPT0wgd3JpdGluZ0RpcmVjdGlvbktleUJpbmRpbmdzRW5hYmxlZCgpCiAKICNpZiBQ
TEFURk9STShNQUMpCiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1l
bnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKE5T
QXJyYXkgKil2YWxpZEF0dHJpYnV0ZXNGb3JNYXJrZWRUZXh0Ci1JR05PUkVfV0FSTklOR1NfRU5E
CitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICAgICBzdGF0aWMgTlNB
cnJheSAqdmFsaWRBdHRyaWJ1dGVzID0gW1tOU0FycmF5IGFsbG9jXSBpbml0V2l0aE9iamVjdHM6
CiAgICAgICAgIE5TVW5kZXJsaW5lU3R5bGVBdHRyaWJ1dGVOYW1lLApAQCAtNjMyOSw5ICs2MzI5
LDkgQEAgSUdOT1JFX1dBUk5JTkdTX0VORAogCiAjZW5kaWYgLy8gUExBVEZPUk0oTUFDKQogCi1J
R05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVtZW50YXRpb25zIikKK0FMTE9X
X0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChOU1VJbnRlZ2VyKWNoYXJhY3Rl
ckluZGV4Rm9yUG9pbnQ6KE5TUG9pbnQpdGhlUG9pbnQKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FM
TE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIFtzZWxmIF9leGVjdXRl
U2F2ZWRLZXlwcmVzc0NvbW1hbmRzXTsKIApAQCAtNjM1NSw5ICs2MzU1LDkgQEAgSUdOT1JFX1dB
Uk5JTkdTX0VORAogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJ
TigiZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1F
TlRBVElPTlNfQkVHSU4KIC0gKE5TUmVjdClmaXJzdFJlY3RGb3JDaGFyYWN0ZXJSYW5nZTooTlNS
YW5nZSl0aGVSYW5nZQotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQUkVDQVRFRF9JTVBM
RU1FTlRBVElPTlNfRU5ECiB7CiAgICAgW3NlbGYgX2V4ZWN1dGVTYXZlZEtleXByZXNzQ29tbWFu
ZHNdOwogCkBAIC02Mzg5LDkgKzYzODksOSBAQCBJR05PUkVfV0FSTklOR1NfRU5ECiAgICAgcmV0
dXJuIHJlc3VsdFJlY3Q7CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1p
bXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4K
IC0gKE5TUmFuZ2Upc2VsZWN0ZWRSYW5nZQotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQ
UkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgW3NlbGYgX2V4ZWN1dGVTYXZlZEtl
eXByZXNzQ29tbWFuZHNdOwogCkBAIC02NDA1LDkgKzY0MDUsOSBAQCBJR05PUkVfV0FSTklOR1Nf
RU5ECiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JFR0lOKCJkZXBy
ZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9O
U19CRUdJTgogLSAoTlNSYW5nZSltYXJrZWRSYW5nZQotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxM
T1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgW3NlbGYgX2V4ZWN1dGVT
YXZlZEtleXByZXNzQ29tbWFuZHNdOwogCkBAIC02NDIzLDkgKzY0MjMsOSBAQCBJR05PUkVfV0FS
TklOR1NfRU5ECiAKICNpZiBQTEFURk9STShNQUMpCiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigi
ZGVwcmVjYXRlZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRB
VElPTlNfQkVHSU4KIC0gKE5TQXR0cmlidXRlZFN0cmluZyAqKWF0dHJpYnV0ZWRTdWJzdHJpbmdG
cm9tUmFuZ2U6KE5TUmFuZ2UpbnNSYW5nZQotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxMT1dfREVQ
UkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgW3NlbGYgX2V4ZWN1dGVTYXZlZEtl
eXByZXNzQ29tbWFuZHNdOwogCkBAIC02NDU3LDkgKzY0NTcsOSBAQCBJR05PUkVfV0FSTklOR1Nf
RU5ECiAKICNlbmRpZgogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQtaW1wbGVt
ZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lOCiAtIChO
U0ludGVnZXIpY29udmVyc2F0aW9uSWRlbnRpZmllcgotSUdOT1JFX1dBUk5JTkdTX0VORAorQUxM
T1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfRU5ECiB7CiAgICAgcmV0dXJuIChOU0ludGVn
ZXIpc2VsZjsKIH0KQEAgLTY0NzksOSArNjQ3OSw5IEBAIElHTk9SRV9XQVJOSU5HU19FTkQKICAg
ICByZXR1cm4gcmVzdWx0OwogfQogCi1JR05PUkVfV0FSTklOR1NfQkVHSU4oImRlcHJlY2F0ZWQt
aW1wbGVtZW50YXRpb25zIikKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0JFR0lO
CiAtICh2b2lkKXVubWFya1RleHQKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FU
RURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIFtzZWxmIF9leGVjdXRlU2F2ZWRLZXlwcmVz
c0NvbW1hbmRzXTsKIApAQCAtNjUyNiw5ICs2NTI2LDkgQEAgc3RhdGljIHZvaWQgZXh0cmFjdFVu
ZGVybGluZXMoTlNBdHRyaWJ1dGVkU3RyaW5nICpzdHJpbmcsIFZlY3RvcjxDb21wb3NpdGlvblVu
ZGUKIAogI2VuZGlmCiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRlZC1pbXBsZW1l
bnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVHSU4KIC0gKHZv
aWQpc2V0TWFya2VkVGV4dDooaWQpc3RyaW5nIHNlbGVjdGVkUmFuZ2U6KE5TUmFuZ2UpbmV3U2Vs
UmFuZ2UKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJ
T05TX0VORAogewogICAgIFtzZWxmIF9leGVjdXRlU2F2ZWRLZXlwcmVzc0NvbW1hbmRzXTsKIApA
QCAtNjU4NCw5ICs2NTg0LDkgQEAgSUdOT1JFX1dBUk5JTkdTX0VORAogICAgIGNvcmVGcmFtZS0+
ZWRpdG9yKCkuc2V0Q29tcG9zaXRpb24odGV4dCwgdW5kZXJsaW5lcywgbmV3U2VsUmFuZ2UubG9j
YXRpb24sIE5TTWF4UmFuZ2UobmV3U2VsUmFuZ2UpKTsKIH0KIAotSUdOT1JFX1dBUk5JTkdTX0JF
R0lOKCJkZXByZWNhdGVkLWltcGxlbWVudGF0aW9ucyIpCitBTExPV19ERVBSRUNBVEVEX0lNUExF
TUVOVEFUSU9OU19CRUdJTgogLSAodm9pZClkb0NvbW1hbmRCeVNlbGVjdG9yOihTRUwpc2VsZWN0
b3IKLUlHTk9SRV9XQVJOSU5HU19FTkQKK0FMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05T
X0VORAogewogICAgIExPRyhUZXh0SW5wdXQsICJkb0NvbW1hbmRCeVNlbGVjdG9yOlwiJXNcIiIs
IHNlbF9nZXROYW1lKHNlbGVjdG9yKSk7CiAKQEAgLTY2NDQsOSArNjY0NCw5IEBAIElHTk9SRV9X
QVJOSU5HU19FTkQKICAgICB9CiB9CiAKLUlHTk9SRV9XQVJOSU5HU19CRUdJTigiZGVwcmVjYXRl
ZC1pbXBsZW1lbnRhdGlvbnMiKQorQUxMT1dfREVQUkVDQVRFRF9JTVBMRU1FTlRBVElPTlNfQkVH
SU4KIC0gKHZvaWQpaW5zZXJ0VGV4dDooaWQpc3RyaW5nCi1JR05PUkVfV0FSTklOR1NfRU5ECitB
TExPV19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKIHsKICNpZiBQTEFURk9STShNQUMp
CiAgICAgQk9PTCBpc0F0dHJpYnV0ZWRTdHJpbmcgPSBbc3RyaW5nIGlzS2luZE9mQ2xhc3M6W05T
QXR0cmlidXRlZFN0cmluZyBjbGFzc11dOwo=
</data>
<flag name="review"
          id="390685"
          type_id="1"
          status="+"
          setter="wenson_hsieh"
    />
          </attachment>
      

    </bug>

</bugzilla>