<?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>209425</bug_id>
          
          <creation_ts>2020-03-23 09:23:59 -0700</creation_ts>
          <short_desc>Remove DOMCache::m_records</short_desc>
          <delta_ts>2020-03-23 12:34:13 -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>Service Workers</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="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>achristensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1632868</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-03-23 09:23:59 -0700</bug_when>
    <thetext>This is unnecessary</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1632869</commentid>
    <comment_count>1</comment_count>
      <attachid>394265</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-03-23 09:27:49 -0700</bug_when>
    <thetext>Created attachment 394265
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1632974</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-03-23 12:33:59 -0700</bug_when>
    <thetext>Committed r258868: &lt;https://trac.webkit.org/changeset/258868&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 394265.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1632975</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-23 12:34:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/60786603&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>394265</attachid>
            <date>2020-03-23 09:27:49 -0700</date>
            <delta_ts>2020-03-23 12:34:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-209425-20200323172747.patch</filename>
            <type>text/plain</type>
            <size>26386</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU4ODI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzdmOWYyMjgyMjc4ZjZh
MTRjMjM5M2E3ZGJlMjRiZmVmYzQxNDZhOS4uYWUyN2Y2NTlmMmNhMGZiNGRlODI5NzJkYjNkZTgy
NDhhYmMwNDBlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDIwLTAzLTIzICB5b3Vl
bm4gZmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRE9NQ2FjaGU6
Om1fcmVjb3JkcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjA5NDI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgV2UgZG8gbm90IG5lZWQgdG8ga2VlcCByZWZlcmVuY2VzIG9mIEZldGNoUmVxdWVzdCBhbmQg
RmV0Y2hSZXNwb25zZSBzaW5jZSB3ZSBjbG9uZSB0aGVtIGJlZm9yZSBleHBvc2luZyB0aGVtLgor
ICAgICAgICBGb3IgdGhhdCByZWFzb24sIHJlbW92ZSBtX3JlY29yZHMgYW5kIGRpcmVjdGx5IHVz
ZSByZWNvcmRzIGdpdmVuIGZyb20gdGhlIENhY2hlU3RvcmFnZUNvbm5lY3Rpb24uCisgICAgICAg
IE1pbm9yIHJlZmFjdG9yaW5nIHRvIG1vZGVybml6ZS9pbXByb3ZlIGNvZGUgcmVhZGFiaWxpdHku
CisKKyAgICAgICAgVGhpcyBpcyBhIGZpcnN0IHN0ZXAgdG93YXJkcyBhIGZ1dHVyZSByZWZhY3Rv
cmluZyB0aGF0IHdpbGwgcmVkdWNlIHRoZSBzZW5kaW5nIG9mIHJlY29yZHMgZnJvbSBuZXR3b3Jr
IHByb2Nlc3MgdG8gd2ViIHByb2Nlc3MKKyAgICAgICAgYmFzZWQgb24gdGhlIHJlcXVlc3QgcGFy
YW1ldGVyczogcmVjb3JkIGZpbHRlcmluZyB3aWxsIGJlIGRvbmUgaW4gbmV0d29yayBwcm9jZXNz
IGluc3RlYWQgb2Ygd2ViIHByb2Nlc3MuCisKKyAgICAgICAgTm8gY2hhbmdlIG9mIGJlaGF2aW9y
LgorCisgICAgICAgICogTW9kdWxlcy9jYWNoZS9ET01DYWNoZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpjcmVhdGVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpET01DYWNoZTo6ZG9NYXRj
aCk6CisgICAgICAgIChXZWJDb3JlOjpET01DYWNoZTo6Y2xvbmVSZXNwb25zZXMpOgorICAgICAg
ICAoV2ViQ29yZTo6RE9NQ2FjaGU6Om1hdGNoQWxsKToKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0
ZVJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6RE9NQ2FjaGU6OmtleXMpOgorICAgICAgICAo
V2ViQ29yZTo6RE9NQ2FjaGU6OnJldHJpZXZlUmVjb3Jkcyk6CisgICAgICAgIChXZWJDb3JlOjpE
T01DYWNoZTo6cXVlcnlDYWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpET01DYWNoZTo6cXVlcnlD
YWNoZVdpdGhUYXJnZXRTdG9yYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkRPTUNhY2hlOjpiYXRj
aERlbGV0ZU9wZXJhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpET01DYWNoZTo6YmF0Y2hQdXRP
cGVyYXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6Y29weVJlcXVlc3RSZWYpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6cXVlcnlDYWNoZU1hdGNoKTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkRPTUNhY2hlOjp1cGRhdGVSZWNvcmRzKTogRGVsZXRlZC4KKyAgICAgICAgKiBNb2R1
bGVzL2NhY2hlL0RPTUNhY2hlLmg6CisKIDIwMjAtMDMtMjMgIHlvdWVubiBmYWJsZXQgIDx5b3Vl
bm5AYXBwbGUuY29tPgogCiAgICAgICAgIE1lZGlhRGV2aWNlczo6cmVmcmVzaERldmljZXMgc2hv
dWxkIHRha2UgZGV2aWNlIHR5cGUgaW50byBhY2NvdW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2NhY2hlL0NhY2hlU3RvcmFnZVJlY29yZC5oIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9jYWNoZS9DYWNoZVN0b3JhZ2VSZWNvcmQuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggNWMzZjk4MTE3NGJiZWNjYmU4OWE3ZGQ3YmI3ODU3MWVkZjBhYzNjYy4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2NhY2hlL0NhY2hlU3RvcmFnZVJlY29yZC5oCisrKyAvZGV2L251bGwKQEAgLTEsNDEg
KzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNyBBcHBsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0g
KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
LSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBB
UFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
Ci0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IK
LSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0g
KiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9G
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaW5jbHVkZSAiRmV0Y2hSZXF1
ZXN0LmgiCi0jaW5jbHVkZSAiRmV0Y2hSZXNwb25zZS5oIgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLXN0cnVjdCBDYWNoZVN0b3JhZ2VSZWNvcmQgewotICAgIHVpbnQ2NF90IGlkZW50aWZpZXI7
Ci0gICAgdWludDY0X3QgdXBkYXRlUmVzcG9uc2VDb3VudGVyOwotCi0gICAgUmVmPEZldGNoUmVx
dWVzdD4gcmVxdWVzdDsKLSAgICBSZWY8RmV0Y2hSZXNwb25zZT4gcmVzcG9uc2U7Ci19OwotCi19
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2NhY2hlL0RPTUNhY2hlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvY2FjaGUvRE9NQ2Fj
aGUuY3BwCmluZGV4IDlkYWMyYmM5MWNiZTYxN2NkODY4ZWY3OGY5MTVlMjdlYWM0M2U4YjUuLjRl
NGEzMzRhOWU3YzI1YmEwMzVmYmJmN2ZlMTYxYWQxNTA5NjMyMDggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvY2FjaGUvRE9NQ2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvY2FjaGUvRE9NQ2FjaGUuY3BwCkBAIC03Myw2ICs3MywxNSBAQCB2b2lkIERPTUNh
Y2hlOjptYXRjaChSZXF1ZXN0SW5mbyYmIGluZm8sIENhY2hlUXVlcnlPcHRpb25zJiYgb3B0aW9u
cywgUmVmPERlZmVycgogICAgIH0pOwogfQogCitzdGF0aWMgUmVmPEZldGNoUmVzcG9uc2U+IGNy
ZWF0ZVJlc3BvbnNlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQmIGNvbnRleHQsIGNvbnN0IERPTUNh
Y2hlRW5naW5lOjpSZWNvcmQmIHJlY29yZCkKK3sKKyAgICBhdXRvIHJlc291cmNlUmVzcG9uc2Ug
PSByZWNvcmQucmVzcG9uc2U7CisgICAgcmVzb3VyY2VSZXNwb25zZS5zZXRTb3VyY2UoUmVzb3Vy
Y2VSZXNwb25zZTo6U291cmNlOjpET01DYWNoZSk7CisgICAgYXV0byByZXNwb25zZSA9IEZldGNo
UmVzcG9uc2U6OmNyZWF0ZShjb250ZXh0LCBXVEY6Om51bGxvcHQsIHJlY29yZC5yZXNwb25zZUhl
YWRlcnNHdWFyZCwgV1RGTW92ZShyZXNvdXJjZVJlc3BvbnNlKSk7CisgICAgcmVzcG9uc2UtPnNl
dEJvZHlEYXRhKGNvcHlSZXNwb25zZUJvZHkocmVjb3JkLnJlc3BvbnNlQm9keSksIHJlY29yZC5y
ZXNwb25zZUJvZHlTaXplKTsKKyAgICByZXR1cm4gcmVzcG9uc2U7Cit9CisKIHZvaWQgRE9NQ2Fj
aGU6OmRvTWF0Y2goUmVxdWVzdEluZm8mJiBpbmZvLCBDYWNoZVF1ZXJ5T3B0aW9ucyYmIG9wdGlv
bnMsIE1hdGNoQ2FsbGJhY2smJiBjYWxsYmFjaykKIHsKICAgICBpZiAoVU5MSUtFTFkoIXNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQoKSkpCkBAIC04NSwyNCArOTQsMjQgQEAgdm9pZCBET01DYWNoZTo6
ZG9NYXRjaChSZXF1ZXN0SW5mbyYmIGluZm8sIENhY2hlUXVlcnlPcHRpb25zJiYgb3B0aW9ucywg
TWF0Y2hDYWwKICAgICB9CiAgICAgYXV0byByZXF1ZXN0ID0gcmVxdWVzdE9yRXhjZXB0aW9uLnJl
bGVhc2VSZXR1cm5WYWx1ZSgpOwogCi0gICAgcXVlcnlDYWNoZShyZXF1ZXN0LmdldCgpLCBXVEZN
b3ZlKG9wdGlvbnMpLCBbdGhpcywgY2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKV0oRXhjZXB0
aW9uT3I8VmVjdG9yPENhY2hlU3RvcmFnZVJlY29yZD4+JiYgcmVzdWx0KSBtdXRhYmxlIHsKKyAg
ICBxdWVyeUNhY2hlKHJlcXVlc3QuZ2V0KCksIFdURk1vdmUob3B0aW9ucyksIFt0aGlzLCBjYWxs
YmFjayA9IFdURk1vdmUoY2FsbGJhY2spXShhdXRvJiYgcmVzdWx0KSBtdXRhYmxlIHsKICAgICAg
ICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICAgICAgY2FsbGJhY2socmVz
dWx0LnJlbGVhc2VFeGNlcHRpb24oKSk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0K
LSAgICAgICAgaWYgKHJlc3VsdC5yZXR1cm5WYWx1ZSgpLmlzRW1wdHkoKSkgewotICAgICAgICAg
ICAgY2FsbGJhY2sobnVsbHB0cik7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAg
ICAgICAgY2FsbGJhY2soUmVmUHRyPEZldGNoUmVzcG9uc2U+KHJlc3VsdC5yZXR1cm5WYWx1ZSgp
WzBdLnJlc3BvbnNlLT5jbG9uZSgqc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKS5yZWxlYXNlUmV0
dXJuVmFsdWUoKSkpOworCisgICAgICAgIFJlZlB0cjxGZXRjaFJlc3BvbnNlPiByZXNwb25zZTsK
KyAgICAgICAgaWYgKCFyZXN1bHQucmV0dXJuVmFsdWUoKS5pc0VtcHR5KCkpCisgICAgICAgICAg
ICByZXNwb25zZSA9IGNyZWF0ZVJlc3BvbnNlKCpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIHJl
c3VsdC5yZXR1cm5WYWx1ZSgpWzBdKTsKKworICAgICAgICBjYWxsYmFjayhXVEZNb3ZlKHJlc3Bv
bnNlKSk7CiAgICAgfSk7CiB9CiAKLVZlY3RvcjxSZWY8RmV0Y2hSZXNwb25zZT4+IERPTUNhY2hl
OjpjbG9uZVJlc3BvbnNlcyhjb25zdCBWZWN0b3I8Q2FjaGVTdG9yYWdlUmVjb3JkPiYgcmVjb3Jk
cykKK1ZlY3RvcjxSZWY8RmV0Y2hSZXNwb25zZT4+IERPTUNhY2hlOjpjbG9uZVJlc3BvbnNlcyhj
b25zdCBWZWN0b3I8RE9NQ2FjaGVFbmdpbmU6OlJlY29yZD4mIHJlY29yZHMpCiB7Ci0gICAgYXV0
byYgY29udGV4dCA9ICpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7Ci0gICAgcmV0dXJuIFdURjo6
bWFwKHJlY29yZHMsIFsmY29udGV4dF0gKGNvbnN0IGF1dG8mIHJlY29yZCkgewotICAgICAgICBy
ZXR1cm4gcmVjb3JkLnJlc3BvbnNlLT5jbG9uZShjb250ZXh0KS5yZWxlYXNlUmV0dXJuVmFsdWUo
KTsKKyAgICByZXR1cm4gV1RGOjptYXAocmVjb3JkcywgW3RoaXNdIChjb25zdCBhdXRvJiByZWNv
cmQpIHsKKyAgICAgICAgcmV0dXJuIGNyZWF0ZVJlc3BvbnNlKCpzY3JpcHRFeGVjdXRpb25Db250
ZXh0KCksIHJlY29yZCk7CiAgICAgfSk7CiB9CiAKQEAgLTEyMSwxOSArMTMwLDcgQEAgdm9pZCBE
T01DYWNoZTo6bWF0Y2hBbGwoT3B0aW9uYWw8UmVxdWVzdEluZm8+JiYgaW5mbywgQ2FjaGVRdWVy
eU9wdGlvbnMmJiBvcHRpb24KICAgICAgICAgcmVxdWVzdCA9IHJlcXVlc3RPckV4Y2VwdGlvbi5y
ZWxlYXNlUmV0dXJuVmFsdWUoKTsKICAgICB9CiAKLSAgICBpZiAoIXJlcXVlc3QpIHsKLSAgICAg
ICAgcmV0cmlldmVSZWNvcmRzKFVSTCB7IH0sIFt0aGlzLCBwcm9taXNlID0gV1RGTW92ZShwcm9t
aXNlKV0oT3B0aW9uYWw8RXhjZXB0aW9uPiYmIGV4Y2VwdGlvbikgbXV0YWJsZSB7Ci0gICAgICAg
ICAgICBxdWV1ZVRhc2tLZWVwaW5nT2JqZWN0QWxpdmUoKnRoaXMsIFRhc2tTb3VyY2U6OkRPTU1h
bmlwdWxhdGlvbiwgW3RoaXMsIHByb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpLCBleGNlcHRpb24g
PSBXVEZNb3ZlKGV4Y2VwdGlvbildKCkgbXV0YWJsZSB7Ci0gICAgICAgICAgICAgICAgaWYgKGV4
Y2VwdGlvbikgewotICAgICAgICAgICAgICAgICAgICBwcm9taXNlLnJlamVjdChXVEZNb3ZlKGV4
Y2VwdGlvbi52YWx1ZSgpKSk7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKGNsb25lUmVzcG9uc2Vz
KG1fcmVjb3JkcykpOwotICAgICAgICAgICAgfSk7Ci0gICAgICAgIH0pOwotICAgICAgICByZXR1
cm47Ci0gICAgfQotICAgIHF1ZXJ5Q2FjaGUocmVxdWVzdC5yZWxlYXNlTm9uTnVsbCgpLCBXVEZN
b3ZlKG9wdGlvbnMpLCBbdGhpcywgcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKEV4Y2VwdGlv
bk9yPFZlY3RvcjxDYWNoZVN0b3JhZ2VSZWNvcmQ+PiYmIHJlc3VsdCkgbXV0YWJsZSB7CisgICAg
UmVjb3Jkc0NhbGxiYWNrIGNhbGxiYWNrID0gW3RoaXMsIHByb21pc2UgPSBXVEZNb3ZlKHByb21p
c2UpXShhdXRvJiYgcmVzdWx0KSBtdXRhYmxlIHsKICAgICAgICAgcXVldWVUYXNrS2VlcGluZ09i
amVjdEFsaXZlKCp0aGlzLCBUYXNrU291cmNlOjpET01NYW5pcHVsYXRpb24sIFt0aGlzLCBwcm9t
aXNlID0gV1RGTW92ZShwcm9taXNlKSwgcmVzdWx0ID0gV1RGTW92ZShyZXN1bHQpXSgpIG11dGFi
bGUgewogICAgICAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkgewogICAgICAgICAg
ICAgICAgIHByb21pc2UucmVqZWN0KHJlc3VsdC5yZWxlYXNlRXhjZXB0aW9uKCkpOwpAQCAtMTQx
LDcgKzEzOCwxMSBAQCB2b2lkIERPTUNhY2hlOjptYXRjaEFsbChPcHRpb25hbDxSZXF1ZXN0SW5m
bz4mJiBpbmZvLCBDYWNoZVF1ZXJ5T3B0aW9ucyYmIG9wdGlvbgogICAgICAgICAgICAgfQogICAg
ICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKGNsb25lUmVzcG9uc2VzKHJlc3VsdC5yZWxlYXNlUmV0
dXJuVmFsdWUoKSkpOwogICAgICAgICB9KTsKLSAgICB9KTsKKyAgICB9OworCisgICAgaWYgKCFy
ZXF1ZXN0KQorICAgICAgICByZXR1cm4gcmV0cmlldmVSZWNvcmRzKFVSTCB7IH0sIFdURk1vdmUo
Y2FsbGJhY2spKTsKKyAgICBxdWVyeUNhY2hlKHJlcXVlc3QucmVsZWFzZU5vbk51bGwoKSwgV1RG
TW92ZShvcHRpb25zKSwgV1RGTW92ZShjYWxsYmFjaykpOwogfQogCiB2b2lkIERPTUNhY2hlOjph
ZGQoUmVxdWVzdEluZm8mJiBpbmZvLCBET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJiBwcm9taXNl
KQpAQCAtNDEzLDkgKzQxNCwxMCBAQCB2b2lkIERPTUNhY2hlOjpyZW1vdmUoUmVxdWVzdEluZm8m
JiBpbmZvLCBDYWNoZVF1ZXJ5T3B0aW9ucyYmIG9wdGlvbnMsIERPTVByb21pcwogICAgIH0pOwog
fQogCi1zdGF0aWMgaW5saW5lIFJlZjxGZXRjaFJlcXVlc3Q+IGNvcHlSZXF1ZXN0UmVmKGNvbnN0
IENhY2hlU3RvcmFnZVJlY29yZCYgcmVjb3JkKQorc3RhdGljIFJlZjxGZXRjaFJlcXVlc3Q+IGNy
ZWF0ZVJlcXVlc3QoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCYgY29udGV4dCwgY29uc3QgRE9NQ2Fj
aGVFbmdpbmU6OlJlY29yZCYgcmVjb3JkKQogewotICAgIHJldHVybiByZWNvcmQucmVxdWVzdC5j
b3B5UmVmKCk7CisgICAgYXV0byByZXF1ZXN0SGVhZGVycyA9IEZldGNoSGVhZGVyczo6Y3JlYXRl
KHJlY29yZC5yZXF1ZXN0SGVhZGVyc0d1YXJkLCBIVFRQSGVhZGVyTWFwIHsgcmVjb3JkLnJlcXVl
c3QuaHR0cEhlYWRlckZpZWxkcygpIH0pOworICAgIHJldHVybiBGZXRjaFJlcXVlc3Q6OmNyZWF0
ZShjb250ZXh0LCBXVEY6Om51bGxvcHQsIFdURk1vdmUocmVxdWVzdEhlYWRlcnMpLCAgUmVzb3Vy
Y2VSZXF1ZXN0IHsgcmVjb3JkLnJlcXVlc3QgfSwgRmV0Y2hPcHRpb25zIHsgcmVjb3JkLm9wdGlv
bnMgfSwgU3RyaW5nIHsgcmVjb3JkLnJlZmVycmVyIH0pOwogfQogCiB2b2lkIERPTUNhY2hlOjpr
ZXlzKE9wdGlvbmFsPFJlcXVlc3RJbmZvPiYmIGluZm8sIENhY2hlUXVlcnlPcHRpb25zJiYgb3B0
aW9ucywgS2V5c1Byb21pc2UmJiBwcm9taXNlKQpAQCAtNDMzLDg2ICs0MzUsNzggQEAgdm9pZCBE
T01DYWNoZTo6a2V5cyhPcHRpb25hbDxSZXF1ZXN0SW5mbz4mJiBpbmZvLCBDYWNoZVF1ZXJ5T3B0
aW9ucyYmIG9wdGlvbnMsIEsKICAgICAgICAgcmVxdWVzdCA9IHJlcXVlc3RPckV4Y2VwdGlvbi5y
ZWxlYXNlUmV0dXJuVmFsdWUoKTsKICAgICB9CiAKLSAgICBpZiAoIXJlcXVlc3QpIHsKLSAgICAg
ICAgcmV0cmlldmVSZWNvcmRzKFVSTCB7IH0sIFt0aGlzLCBwcm9taXNlID0gV1RGTW92ZShwcm9t
aXNlKV0oT3B0aW9uYWw8RXhjZXB0aW9uPiYmIGV4Y2VwdGlvbikgbXV0YWJsZSB7Ci0gICAgICAg
ICAgICBxdWV1ZVRhc2tLZWVwaW5nT2JqZWN0QWxpdmUoKnRoaXMsIFRhc2tTb3VyY2U6OkRPTU1h
bmlwdWxhdGlvbiwgW3RoaXMsIHByb21pc2UgPSBXVEZNb3ZlKHByb21pc2UpLCBleGNlcHRpb24g
PSBXVEZNb3ZlKGV4Y2VwdGlvbildKCkgbXV0YWJsZSB7Ci0gICAgICAgICAgICAgICAgaWYgKGV4
Y2VwdGlvbikgewotICAgICAgICAgICAgICAgICAgICBwcm9taXNlLnJlamVjdChXVEZNb3ZlKGV4
Y2VwdGlvbi52YWx1ZSgpKSk7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgcHJvbWlzZS5yZXNvbHZlKFdURjo6bWFwKG1fcmVj
b3JkcywgY29weVJlcXVlc3RSZWYpKTsKLSAgICAgICAgICAgIH0pOwotICAgICAgICB9KTsKLSAg
ICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIHF1ZXJ5Q2FjaGUocmVxdWVzdC5yZWxlYXNlTm9u
TnVsbCgpLCBXVEZNb3ZlKG9wdGlvbnMpLCBbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYo
KnRoaXMpLCBwcm9taXNlID0gV1RGTW92ZShwcm9taXNlKV0oYXV0byYmIHJlc3VsdCkgbXV0YWJs
ZSB7Ci0gICAgICAgIHF1ZXVlVGFza0tlZXBpbmdPYmplY3RBbGl2ZSgqdGhpcywgVGFza1NvdXJj
ZTo6RE9NTWFuaXB1bGF0aW9uLCBbcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSksIHJlc3VsdCA9
IFdURk1vdmUocmVzdWx0KV0oKSBtdXRhYmxlIHsKKyAgICBSZWNvcmRzQ2FsbGJhY2sgY2FsbGJh
Y2sgPSBbdGhpcywgcHJvbWlzZSA9IFdURk1vdmUocHJvbWlzZSldKGF1dG8mJiByZXN1bHQpIG11
dGFibGUgeworICAgICAgICBxdWV1ZVRhc2tLZWVwaW5nT2JqZWN0QWxpdmUoKnRoaXMsIFRhc2tT
b3VyY2U6OkRPTU1hbmlwdWxhdGlvbiwgW3RoaXMsIHByb21pc2UgPSBXVEZNb3ZlKHByb21pc2Up
LCByZXN1bHQgPSBXVEZNb3ZlKHJlc3VsdCldKCkgbXV0YWJsZSB7CiAgICAgICAgICAgICBpZiAo
cmVzdWx0Lmhhc0V4Y2VwdGlvbigpKSB7CiAgICAgICAgICAgICAgICAgcHJvbWlzZS5yZWplY3Qo
cmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKSk7CiAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAg
ICAgICAgICAgfQogCi0gICAgICAgICAgICBwcm9taXNlLnJlc29sdmUoV1RGOjptYXAocmVzdWx0
LnJlbGVhc2VSZXR1cm5WYWx1ZSgpLCBjb3B5UmVxdWVzdFJlZikpOworICAgICAgICAgICAgYXV0
byByZWNvcmRzID0gcmVzdWx0LnJlbGVhc2VSZXR1cm5WYWx1ZSgpOworICAgICAgICAgICAgcHJv
bWlzZS5yZXNvbHZlKFdURjo6bWFwKHJlY29yZHMsIFt0aGlzXShhdXRvJiByZWNvcmQpIHsKKyAg
ICAgICAgICAgICAgICByZXR1cm4gY3JlYXRlUmVxdWVzdCgqc2NyaXB0RXhlY3V0aW9uQ29udGV4
dCgpLCByZWNvcmQpOworICAgICAgICAgICAgfSkpOwogICAgICAgICB9KTsKLSAgICB9KTsKKyAg
ICB9OworCisgICAgaWYgKCFyZXF1ZXN0KQorICAgICAgICByZXR1cm4gcmV0cmlldmVSZWNvcmRz
KFVSTCB7IH0sIFdURk1vdmUoY2FsbGJhY2spKTsKKyAgICBxdWVyeUNhY2hlKHJlcXVlc3QucmVs
ZWFzZU5vbk51bGwoKSwgV1RGTW92ZShvcHRpb25zKSwgV1RGTW92ZShjYWxsYmFjaykpOwogfQog
Ci12b2lkIERPTUNhY2hlOjpyZXRyaWV2ZVJlY29yZHMoY29uc3QgVVJMJiB1cmwsIFdURjo6RnVu
Y3Rpb248dm9pZChPcHRpb25hbDxFeGNlcHRpb24+JiYpPiYmIGNhbGxiYWNrKQordm9pZCBET01D
YWNoZTo6cmV0cmlldmVSZWNvcmRzKGNvbnN0IFVSTCYgdXJsLCBSZWNvcmRzQ2FsbGJhY2smJiBj
YWxsYmFjaykKIHsKICAgICBVUkwgcmV0cmlldmVVUkwgPSB1cmw7CiAgICAgcmV0cmlldmVVUkwu
cmVtb3ZlUXVlcnlBbmRGcmFnbWVudElkZW50aWZpZXIoKTsKIAotICAgIG1fY29ubmVjdGlvbi0+
cmV0cmlldmVSZWNvcmRzKG1faWRlbnRpZmllciwgcmV0cmlldmVVUkwsIFt0aGlzLCBwZW5kaW5n
QWN0aXZpdHkgPSBtYWtlUGVuZGluZ0FjdGl2aXR5KCp0aGlzKSwgY2FsbGJhY2sgPSBXVEZNb3Zl
KGNhbGxiYWNrKV0oUmVjb3Jkc09yRXJyb3ImJiByZXN1bHQpIHsKLSAgICAgICAgaWYgKG1faXNT
dG9wcGVkKQorICAgIG1fY29ubmVjdGlvbi0+cmV0cmlldmVSZWNvcmRzKG1faWRlbnRpZmllciwg
cmV0cmlldmVVUkwsIFt0aGlzLCBwZW5kaW5nQWN0aXZpdHkgPSBtYWtlUGVuZGluZ0FjdGl2aXR5
KCp0aGlzKSwgY2FsbGJhY2sgPSBXVEZNb3ZlKGNhbGxiYWNrKV0oYXV0byYmIHJlc3VsdCkgbXV0
YWJsZSB7CisgICAgICAgIGlmIChtX2lzU3RvcHBlZCkgeworICAgICAgICAgICAgY2FsbGJhY2so
RE9NQ2FjaGVFbmdpbmU6OmNvbnZlcnRUb0V4Y2VwdGlvbkFuZExvZyhzY3JpcHRFeGVjdXRpb25D
b250ZXh0KCksIERPTUNhY2hlRW5naW5lOjpFcnJvcjo6U3RvcHBlZCkpOwogICAgICAgICAgICAg
cmV0dXJuOworICAgICAgICB9CiAKICAgICAgICAgaWYgKCFyZXN1bHQuaGFzX3ZhbHVlKCkpIHsK
ICAgICAgICAgICAgIGNhbGxiYWNrKERPTUNhY2hlRW5naW5lOjpjb252ZXJ0VG9FeGNlcHRpb25B
bmRMb2coc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLCByZXN1bHQuZXJyb3IoKSkpOwogICAgICAg
ICAgICAgcmV0dXJuOwogICAgICAgICB9CiAKLSAgICAgICAgdXBkYXRlUmVjb3JkcyhXVEZNb3Zl
KHJlc3VsdC52YWx1ZSgpKSk7Ci0gICAgICAgIGNhbGxiYWNrKFdURjo6bnVsbG9wdCk7CisgICAg
ICAgIGNhbGxiYWNrKFdURk1vdmUocmVzdWx0LnZhbHVlKCkpKTsKICAgICB9KTsKIH0KIAotdm9p
ZCBET01DYWNoZTo6cXVlcnlDYWNoZShSZWY8RmV0Y2hSZXF1ZXN0PiYmIHJlcXVlc3QsIENhY2hl
UXVlcnlPcHRpb25zJiYgb3B0aW9ucywgV1RGOjpGdW5jdGlvbjx2b2lkKEV4Y2VwdGlvbk9yPFZl
Y3RvcjxDYWNoZVN0b3JhZ2VSZWNvcmQ+PiYmKT4mJiBjYWxsYmFjaykKK3ZvaWQgRE9NQ2FjaGU6
OnF1ZXJ5Q2FjaGUoUmVmPEZldGNoUmVxdWVzdD4mJiByZXF1ZXN0LCBDYWNoZVF1ZXJ5T3B0aW9u
cyYmIG9wdGlvbnMsIFJlY29yZHNDYWxsYmFjayYmIGNhbGxiYWNrKQogewogICAgIGF1dG8gdXJs
ID0gcmVxdWVzdC0+dXJsKCk7Ci0gICAgcmV0cmlldmVSZWNvcmRzKHVybCwgW3RoaXMsIHJlcXVl
c3QgPSBXVEZNb3ZlKHJlcXVlc3QpLCBvcHRpb25zID0gV1RGTW92ZShvcHRpb25zKSwgY2FsbGJh
Y2sgPSBXVEZNb3ZlKGNhbGxiYWNrKV0oT3B0aW9uYWw8RXhjZXB0aW9uPiYmIGV4Y2VwdGlvbikg
bXV0YWJsZSB7Ci0gICAgICAgIGlmIChleGNlcHRpb24pIHsKLSAgICAgICAgICAgIGNhbGxiYWNr
KFdURk1vdmUoZXhjZXB0aW9uLnZhbHVlKCkpKTsKKyAgICByZXRyaWV2ZVJlY29yZHModXJsLCBb
dGhpcywgcmVxdWVzdCA9IFdURk1vdmUocmVxdWVzdCksIG9wdGlvbnMgPSBXVEZNb3ZlKG9wdGlv
bnMpLCBjYWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spXShhdXRvJiYgcmVzdWx0KSBtdXRhYmxl
IHsKKyAgICAgICAgaWYgKHJlc3VsdC5oYXNFeGNlcHRpb24oKSkgeworICAgICAgICAgICAgY2Fs
bGJhY2socmVzdWx0LnJlbGVhc2VFeGNlcHRpb24oKSk7CiAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgIH0KLSAgICAgICAgY2FsbGJhY2socXVlcnlDYWNoZVdpdGhUYXJnZXRTdG9yYWdlKHJl
cXVlc3QuZ2V0KCksIG9wdGlvbnMsIG1fcmVjb3JkcykpOworICAgICAgICBjYWxsYmFjayhxdWVy
eUNhY2hlV2l0aFRhcmdldFN0b3JhZ2UocmVxdWVzdC5nZXQoKSwgb3B0aW9ucywgcmVzdWx0LnJl
bGVhc2VSZXR1cm5WYWx1ZSgpKSk7CiAgICAgfSk7CiB9CiAKLXN0YXRpYyBpbmxpbmUgYm9vbCBx
dWVyeUNhY2hlTWF0Y2goY29uc3QgRmV0Y2hSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBGZXRjaFJl
cXVlc3QmIGNhY2hlZFJlcXVlc3QsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIGNhY2hlZFJlc3Bv
bnNlLCBjb25zdCBDYWNoZVF1ZXJ5T3B0aW9ucyYgb3B0aW9ucykKLXsKLSAgICAvLyBXZSBuZWVk
IHRvIHBhc3MgdGhlIHJlc291cmNlIHJlcXVlc3Qgd2l0aCBhbGwgY29ycmVjdCBoZWFkZXJzIGhl
bmNlIHdoeSB3ZSBjYWxsIHJlc291cmNlUmVxdWVzdCgpLgotICAgIHJldHVybiBET01DYWNoZUVu
Z2luZTo6cXVlcnlDYWNoZU1hdGNoKHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCksIGNhY2hlZFJl
cXVlc3QucmVzb3VyY2VSZXF1ZXN0KCksIGNhY2hlZFJlc3BvbnNlLCBvcHRpb25zKTsKLX0KLQot
VmVjdG9yPENhY2hlU3RvcmFnZVJlY29yZD4gRE9NQ2FjaGU6OnF1ZXJ5Q2FjaGVXaXRoVGFyZ2V0
U3RvcmFnZShjb25zdCBGZXRjaFJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IENhY2hlUXVlcnlPcHRp
b25zJiBvcHRpb25zLCBjb25zdCBWZWN0b3I8Q2FjaGVTdG9yYWdlUmVjb3JkPiYgdGFyZ2V0U3Rv
cmFnZSkKK1ZlY3RvcjxET01DYWNoZUVuZ2luZTo6UmVjb3JkPiBET01DYWNoZTo6cXVlcnlDYWNo
ZVdpdGhUYXJnZXRTdG9yYWdlKGNvbnN0IEZldGNoUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgQ2Fj
aGVRdWVyeU9wdGlvbnMmIG9wdGlvbnMsIGNvbnN0IFZlY3RvcjxET01DYWNoZUVuZ2luZTo6UmVj
b3JkPiYgdGFyZ2V0U3RvcmFnZSkKIHsKICAgICBpZiAoIW9wdGlvbnMuaWdub3JlTWV0aG9kICYm
IHJlcXVlc3QubWV0aG9kKCkgIT0gIkdFVCIpCiAgICAgICAgIHJldHVybiB7IH07CiAKLSAgICBW
ZWN0b3I8Q2FjaGVTdG9yYWdlUmVjb3JkPiByZWNvcmRzOworICAgIFZlY3RvcjxET01DYWNoZUVu
Z2luZTo6UmVjb3JkPiByZWNvcmRzOwogICAgIGZvciAoYXV0byYgcmVjb3JkIDogdGFyZ2V0U3Rv
cmFnZSkgewotICAgICAgICBpZiAocXVlcnlDYWNoZU1hdGNoKHJlcXVlc3QsIHJlY29yZC5yZXF1
ZXN0LmdldCgpLCByZWNvcmQucmVzcG9uc2UtPnJlc291cmNlUmVzcG9uc2UoKSwgb3B0aW9ucykp
Ci0gICAgICAgICAgICByZWNvcmRzLmFwcGVuZCh7IHJlY29yZC5pZGVudGlmaWVyLCByZWNvcmQu
dXBkYXRlUmVzcG9uc2VDb3VudGVyLCByZWNvcmQucmVxdWVzdC5jb3B5UmVmKCksIHJlY29yZC5y
ZXNwb25zZS5jb3B5UmVmKCkgfSk7CisgICAgICAgIC8vIFdlIG5lZWQgdG8gcGFzcyB0aGUgcmVz
b3VyY2UgcmVxdWVzdCB3aXRoIGFsbCBjb3JyZWN0IGhlYWRlcnMgaGVuY2Ugd2h5IHdlIGNhbGwg
cmVzb3VyY2VSZXF1ZXN0KCkuCisgICAgICAgIGlmIChET01DYWNoZUVuZ2luZTo6cXVlcnlDYWNo
ZU1hdGNoKHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCksIHJlY29yZC5yZXF1ZXN0LCByZWNvcmQu
cmVzcG9uc2UsIG9wdGlvbnMpKQorICAgICAgICAgICAgcmVjb3Jkcy5hcHBlbmQocmVjb3JkLmNv
cHkoKSk7CiAgICAgfQogICAgIHJldHVybiByZWNvcmRzOwogfQogCi12b2lkIERPTUNhY2hlOjpi
YXRjaERlbGV0ZU9wZXJhdGlvbihjb25zdCBGZXRjaFJlcXVlc3QmIHJlcXVlc3QsIENhY2hlUXVl
cnlPcHRpb25zJiYgb3B0aW9ucywgV1RGOjpGdW5jdGlvbjx2b2lkKEV4Y2VwdGlvbk9yPGJvb2w+
JiYpPiYmIGNhbGxiYWNrKQordm9pZCBET01DYWNoZTo6YmF0Y2hEZWxldGVPcGVyYXRpb24oY29u
c3QgRmV0Y2hSZXF1ZXN0JiByZXF1ZXN0LCBDYWNoZVF1ZXJ5T3B0aW9ucyYmIG9wdGlvbnMsIENv
bXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0aW9uT3I8Ym9vbD4mJik+JiYgY2FsbGJhY2spCiB7
Ci0gICAgbV9jb25uZWN0aW9uLT5iYXRjaERlbGV0ZU9wZXJhdGlvbihtX2lkZW50aWZpZXIsIHJl
cXVlc3QuaW50ZXJuYWxSZXF1ZXN0KCksIFdURk1vdmUob3B0aW9ucyksIFt0aGlzLCBwZW5kaW5n
QWN0aXZpdHkgPSBtYWtlUGVuZGluZ0FjdGl2aXR5KCp0aGlzKSwgY2FsbGJhY2sgPSBXVEZNb3Zl
KGNhbGxiYWNrKV0oUmVjb3JkSWRlbnRpZmllcnNPckVycm9yJiYgcmVzdWx0KSB7Ci0gICAgICAg
IGlmIChtX2lzU3RvcHBlZCkKKyAgICBtX2Nvbm5lY3Rpb24tPmJhdGNoRGVsZXRlT3BlcmF0aW9u
KG1faWRlbnRpZmllciwgcmVxdWVzdC5pbnRlcm5hbFJlcXVlc3QoKSwgV1RGTW92ZShvcHRpb25z
KSwgW3RoaXMsIHBlbmRpbmdBY3Rpdml0eSA9IG1ha2VQZW5kaW5nQWN0aXZpdHkoKnRoaXMpLCBj
YWxsYmFjayA9IFdURk1vdmUoY2FsbGJhY2spXShSZWNvcmRJZGVudGlmaWVyc09yRXJyb3ImJiBy
ZXN1bHQpIG11dGFibGUgeworICAgICAgICBpZiAobV9pc1N0b3BwZWQpIHsKKyAgICAgICAgICAg
IGNhbGxiYWNrKERPTUNhY2hlRW5naW5lOjpjb252ZXJ0VG9FeGNlcHRpb25BbmRMb2coc2NyaXB0
RXhlY3V0aW9uQ29udGV4dCgpLCBET01DYWNoZUVuZ2luZTo6RXJyb3I6OlN0b3BwZWQpKTsKICAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQogCiAgICAgICAgIGlmICghcmVzdWx0Lmhhc192
YWx1ZSgpKSB7CiAgICAgICAgICAgICBjYWxsYmFjayhET01DYWNoZUVuZ2luZTo6Y29udmVydFRv
RXhjZXB0aW9uQW5kTG9nKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgcmVzdWx0LmVycm9yKCkp
KTsKQEAgLTU0Myw3ICs1MzcsNyBAQCBSZWNvcmQgRE9NQ2FjaGU6OnRvQ29ubmVjdGlvblJlY29y
ZChjb25zdCBGZXRjaFJlcXVlc3QmIHJlcXVlc3QsIEZldGNoUmVzcG9uc2UmCiAgICAgfTsKIH0K
IAotdm9pZCBET01DYWNoZTo6YmF0Y2hQdXRPcGVyYXRpb24oY29uc3QgRmV0Y2hSZXF1ZXN0JiBy
ZXF1ZXN0LCBGZXRjaFJlc3BvbnNlJiByZXNwb25zZSwgRE9NQ2FjaGVFbmdpbmU6OlJlc3BvbnNl
Qm9keSYmIHJlc3BvbnNlQm9keSwgV1RGOjpGdW5jdGlvbjx2b2lkKEV4Y2VwdGlvbk9yPHZvaWQ+
JiYpPiYmIGNhbGxiYWNrKQordm9pZCBET01DYWNoZTo6YmF0Y2hQdXRPcGVyYXRpb24oY29uc3Qg
RmV0Y2hSZXF1ZXN0JiByZXF1ZXN0LCBGZXRjaFJlc3BvbnNlJiByZXNwb25zZSwgRE9NQ2FjaGVF
bmdpbmU6OlJlc3BvbnNlQm9keSYmIHJlc3BvbnNlQm9keSwgQ29tcGxldGlvbkhhbmRsZXI8dm9p
ZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJiBjYWxsYmFjaykKIHsKICAgICBWZWN0b3I8UmVjb3Jk
PiByZWNvcmRzOwogICAgIHJlY29yZHMuYXBwZW5kKHRvQ29ubmVjdGlvblJlY29yZChyZXF1ZXN0
LCByZXNwb25zZSwgV1RGTW92ZShyZXNwb25zZUJvZHkpKSk7CkBAIC01NTEsMTEgKzU0NSwxNCBA
QCB2b2lkIERPTUNhY2hlOjpiYXRjaFB1dE9wZXJhdGlvbihjb25zdCBGZXRjaFJlcXVlc3QmIHJl
cXVlc3QsIEZldGNoUmVzcG9uc2UmIHJlcwogICAgIGJhdGNoUHV0T3BlcmF0aW9uKFdURk1vdmUo
cmVjb3JkcyksIFdURk1vdmUoY2FsbGJhY2spKTsKIH0KIAotdm9pZCBET01DYWNoZTo6YmF0Y2hQ
dXRPcGVyYXRpb24oVmVjdG9yPFJlY29yZD4mJiByZWNvcmRzLCBXVEY6OkZ1bmN0aW9uPHZvaWQo
RXhjZXB0aW9uT3I8dm9pZD4mJik+JiYgY2FsbGJhY2spCit2b2lkIERPTUNhY2hlOjpiYXRjaFB1
dE9wZXJhdGlvbihWZWN0b3I8UmVjb3JkPiYmIHJlY29yZHMsIENvbXBsZXRpb25IYW5kbGVyPHZv
aWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYgY2FsbGJhY2spCiB7Ci0gICAgbV9jb25uZWN0aW9u
LT5iYXRjaFB1dE9wZXJhdGlvbihtX2lkZW50aWZpZXIsIFdURk1vdmUocmVjb3JkcyksIFt0aGlz
LCBwZW5kaW5nQWN0aXZpdHkgPSBtYWtlUGVuZGluZ0FjdGl2aXR5KCp0aGlzKSwgY2FsbGJhY2sg
PSBXVEZNb3ZlKGNhbGxiYWNrKV0oUmVjb3JkSWRlbnRpZmllcnNPckVycm9yJiYgcmVzdWx0KSB7
Ci0gICAgICAgIGlmIChtX2lzU3RvcHBlZCkKKyAgICBtX2Nvbm5lY3Rpb24tPmJhdGNoUHV0T3Bl
cmF0aW9uKG1faWRlbnRpZmllciwgV1RGTW92ZShyZWNvcmRzKSwgW3RoaXMsIHBlbmRpbmdBY3Rp
dml0eSA9IG1ha2VQZW5kaW5nQWN0aXZpdHkoKnRoaXMpLCBjYWxsYmFjayA9IFdURk1vdmUoY2Fs
bGJhY2spXShhdXRvJiYgcmVzdWx0KSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKG1faXNTdG9wcGVk
KSB7CisgICAgICAgICAgICBjYWxsYmFjayhET01DYWNoZUVuZ2luZTo6Y29udmVydFRvRXhjZXB0
aW9uQW5kTG9nKHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSwgRE9NQ2FjaGVFbmdpbmU6OkVycm9y
OjpTdG9wcGVkKSk7CiAgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKwogICAgICAgICBp
ZiAoIXJlc3VsdC5oYXNfdmFsdWUoKSkgewogICAgICAgICAgICAgY2FsbGJhY2soRE9NQ2FjaGVF
bmdpbmU6OmNvbnZlcnRUb0V4Y2VwdGlvbkFuZExvZyhzY3JpcHRFeGVjdXRpb25Db250ZXh0KCks
IHJlc3VsdC5lcnJvcigpKSk7CiAgICAgICAgICAgICByZXR1cm47CkBAIC01NjQsMzggKzU2MSw2
IEBAIHZvaWQgRE9NQ2FjaGU6OmJhdGNoUHV0T3BlcmF0aW9uKFZlY3RvcjxSZWNvcmQ+JiYgcmVj
b3JkcywgV1RGOjpGdW5jdGlvbjx2b2lkKEV4CiAgICAgfSk7CiB9CiAKLXZvaWQgRE9NQ2FjaGU6
OnVwZGF0ZVJlY29yZHMoVmVjdG9yPFJlY29yZD4mJiByZWNvcmRzKQotewotICAgIEFTU0VSVChz
Y3JpcHRFeGVjdXRpb25Db250ZXh0KCkpOwotICAgIFZlY3RvcjxDYWNoZVN0b3JhZ2VSZWNvcmQ+
IG5ld1JlY29yZHM7Ci0KLSAgICBmb3IgKGF1dG8mIHJlY29yZCA6IHJlY29yZHMpIHsKLSAgICAg
ICAgc2l6ZV90IGluZGV4ID0gbV9yZWNvcmRzLmZpbmRNYXRjaGluZyhbJl0oY29uc3QgYXV0byYg
aXRlbSkgeyByZXR1cm4gaXRlbS5pZGVudGlmaWVyID09IHJlY29yZC5pZGVudGlmaWVyOyB9KTsK
LSAgICAgICAgaWYgKGluZGV4ICE9IG5vdEZvdW5kKSB7Ci0gICAgICAgICAgICBhdXRvJiBjdXJy
ZW50ID0gbV9yZWNvcmRzW2luZGV4XTsKLSAgICAgICAgICAgIGlmIChjdXJyZW50LnVwZGF0ZVJl
c3BvbnNlQ291bnRlciAhPSByZWNvcmQudXBkYXRlUmVzcG9uc2VDb3VudGVyKSB7Ci0gICAgICAg
ICAgICAgICAgcmVjb3JkLnJlc3BvbnNlLnNldFNvdXJjZShSZXNvdXJjZVJlc3BvbnNlOjpTb3Vy
Y2U6OkRPTUNhY2hlKTsKLSAgICAgICAgICAgICAgICBhdXRvIHJlc3BvbnNlID0gRmV0Y2hSZXNw
b25zZTo6Y3JlYXRlKCpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIFdURjo6bnVsbG9wdCwgcmVj
b3JkLnJlc3BvbnNlSGVhZGVyc0d1YXJkLCBXVEZNb3ZlKHJlY29yZC5yZXNwb25zZSkpOwotICAg
ICAgICAgICAgICAgIHJlc3BvbnNlLT5zZXRCb2R5RGF0YShXVEZNb3ZlKHJlY29yZC5yZXNwb25z
ZUJvZHkpLCByZWNvcmQucmVzcG9uc2VCb2R5U2l6ZSk7Ci0KLSAgICAgICAgICAgICAgICBjdXJy
ZW50LnJlc3BvbnNlID0gV1RGTW92ZShyZXNwb25zZSk7Ci0gICAgICAgICAgICAgICAgY3VycmVu
dC51cGRhdGVSZXNwb25zZUNvdW50ZXIgPSByZWNvcmQudXBkYXRlUmVzcG9uc2VDb3VudGVyOwot
ICAgICAgICAgICAgfQotICAgICAgICAgICAgbmV3UmVjb3Jkcy5hcHBlbmQoV1RGTW92ZShjdXJy
ZW50KSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBhdXRvIHJlcXVlc3RIZWFkZXJz
ID0gRmV0Y2hIZWFkZXJzOjpjcmVhdGUocmVjb3JkLnJlcXVlc3RIZWFkZXJzR3VhcmQsIEhUVFBI
ZWFkZXJNYXAgeyByZWNvcmQucmVxdWVzdC5odHRwSGVhZGVyRmllbGRzKCkgfSk7Ci0gICAgICAg
ICAgICBhdXRvIHJlcXVlc3QgPSBGZXRjaFJlcXVlc3Q6OmNyZWF0ZSgqc2NyaXB0RXhlY3V0aW9u
Q29udGV4dCgpLCBXVEY6Om51bGxvcHQsIFdURk1vdmUocmVxdWVzdEhlYWRlcnMpLCAgV1RGTW92
ZShyZWNvcmQucmVxdWVzdCksIFdURk1vdmUocmVjb3JkLm9wdGlvbnMpLCBXVEZNb3ZlKHJlY29y
ZC5yZWZlcnJlcikpOwotCi0gICAgICAgICAgICByZWNvcmQucmVzcG9uc2Uuc2V0U291cmNlKFJl
c291cmNlUmVzcG9uc2U6OlNvdXJjZTo6RE9NQ2FjaGUpOwotICAgICAgICAgICAgYXV0byByZXNw
b25zZSA9IEZldGNoUmVzcG9uc2U6OmNyZWF0ZSgqc2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLCBX
VEY6Om51bGxvcHQsIHJlY29yZC5yZXNwb25zZUhlYWRlcnNHdWFyZCwgV1RGTW92ZShyZWNvcmQu
cmVzcG9uc2UpKTsKLSAgICAgICAgICAgIHJlc3BvbnNlLT5zZXRCb2R5RGF0YShXVEZNb3ZlKHJl
Y29yZC5yZXNwb25zZUJvZHkpLCByZWNvcmQucmVzcG9uc2VCb2R5U2l6ZSk7Ci0KLSAgICAgICAg
ICAgIG5ld1JlY29yZHMuYXBwZW5kKENhY2hlU3RvcmFnZVJlY29yZCB7IHJlY29yZC5pZGVudGlm
aWVyLCByZWNvcmQudXBkYXRlUmVzcG9uc2VDb3VudGVyLCBXVEZNb3ZlKHJlcXVlc3QpLCBXVEZN
b3ZlKHJlc3BvbnNlKSB9KTsKLSAgICAgICAgfQotICAgIH0KLSAgICBtX3JlY29yZHMgPSBXVEZN
b3ZlKG5ld1JlY29yZHMpOwotfQotCiB2b2lkIERPTUNhY2hlOjpzdG9wKCkKIHsKICAgICBpZiAo
bV9pc1N0b3BwZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2NhY2hlL0RP
TUNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2NhY2hlL0RPTUNhY2hlLmgKaW5kZXgg
YTZlZDIyNzY3ZWNiY2ExMmQzNzdlOTE3OTRhNzNjYWIxMTRhN2NhZi4uNmRhY2MzMTU4NTM3NWNi
Y2JmNjE0OGE4YTU1MjFjMTBlZWY2NDAzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9jYWNoZS9ET01DYWNoZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvY2FjaGUv
RE9NQ2FjaGUuaApAQCAtMjcsNyArMjcsOCBAQAogCiAjaW5jbHVkZSAiQWN0aXZlRE9NT2JqZWN0
LmgiCiAjaW5jbHVkZSAiQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbi5oIgotI2luY2x1ZGUgIkNhY2hl
U3RvcmFnZVJlY29yZC5oIgorI2luY2x1ZGUgIkZldGNoUmVxdWVzdC5oIgorI2luY2x1ZGUgIkZl
dGNoUmVzcG9uc2UuaCIKICNpbmNsdWRlIDx3dGYvVW5pcXVlUmVmLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKQEAgLTU3LDcgKzU4LDcgQEAgcHVibGljOgogICAgIGNvbnN0IFN0cmluZyYgbmFt
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQogICAgIHVpbnQ2NF90IGlkZW50aWZpZXIoKSBj
b25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAotICAgIHVzaW5nIE1hdGNoQ2FsbGJhY2sg
PSBGdW5jdGlvbjx2b2lkKEV4Y2VwdGlvbk9yPFJlZlB0cjxGZXRjaFJlc3BvbnNlPj4pPjsKKyAg
ICB1c2luZyBNYXRjaENhbGxiYWNrID0gQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25P
cjxSZWZQdHI8RmV0Y2hSZXNwb25zZT4+KT47CiAgICAgdm9pZCBkb01hdGNoKFJlcXVlc3RJbmZv
JiYsIENhY2hlUXVlcnlPcHRpb25zJiYsIE1hdGNoQ2FsbGJhY2smJik7CiAKICAgICBDYWNoZVN0
b3JhZ2VDb25uZWN0aW9uJiBjb25uZWN0aW9uKCkgeyByZXR1cm4gbV9jb25uZWN0aW9uLmdldCgp
OyB9CkBAIC03MywyMiArNzQsMjEgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgcHV0V2l0aFJlc3Bv
bnNlRGF0YShET01Qcm9taXNlRGVmZXJyZWQ8dm9pZD4mJiwgUmVmPEZldGNoUmVxdWVzdD4mJiwg
UmVmPEZldGNoUmVzcG9uc2U+JiYsIEV4Y2VwdGlvbk9yPFJlZlB0cjxTaGFyZWRCdWZmZXI+PiYm
KTsKIAotICAgIHZvaWQgcmV0cmlldmVSZWNvcmRzKGNvbnN0IFVSTCYsIFdURjo6RnVuY3Rpb248
dm9pZChPcHRpb25hbDxFeGNlcHRpb24+JiYpPiYmKTsKLSAgICBWZWN0b3I8Q2FjaGVTdG9yYWdl
UmVjb3JkPiBxdWVyeUNhY2hlV2l0aFRhcmdldFN0b3JhZ2UoY29uc3QgRmV0Y2hSZXF1ZXN0Jiwg
Y29uc3QgQ2FjaGVRdWVyeU9wdGlvbnMmLCBjb25zdCBWZWN0b3I8Q2FjaGVTdG9yYWdlUmVjb3Jk
PiYpOwotICAgIHZvaWQgcXVlcnlDYWNoZShSZWY8RmV0Y2hSZXF1ZXN0PiYmLCBDYWNoZVF1ZXJ5
T3B0aW9ucyYmLCBXVEY6OkZ1bmN0aW9uPHZvaWQoRXhjZXB0aW9uT3I8VmVjdG9yPENhY2hlU3Rv
cmFnZVJlY29yZD4+JiYpPiYmKTsKLSAgICB2b2lkIGJhdGNoRGVsZXRlT3BlcmF0aW9uKGNvbnN0
IEZldGNoUmVxdWVzdCYsIENhY2hlUXVlcnlPcHRpb25zJiYsIFdURjo6RnVuY3Rpb248dm9pZChF
eGNlcHRpb25Pcjxib29sPiYmKT4mJik7Ci0gICAgdm9pZCBiYXRjaFB1dE9wZXJhdGlvbihjb25z
dCBGZXRjaFJlcXVlc3QmLCBGZXRjaFJlc3BvbnNlJiwgRE9NQ2FjaGVFbmdpbmU6OlJlc3BvbnNl
Qm9keSYmLCBXVEY6OkZ1bmN0aW9uPHZvaWQoRXhjZXB0aW9uT3I8dm9pZD4mJik+JiYpOwotICAg
IHZvaWQgYmF0Y2hQdXRPcGVyYXRpb24oVmVjdG9yPERPTUNhY2hlRW5naW5lOjpSZWNvcmQ+JiYs
IFdURjo6RnVuY3Rpb248dm9pZChFeGNlcHRpb25Pcjx2b2lkPiYmKT4mJik7CisgICAgdXNpbmcg
UmVjb3Jkc0NhbGxiYWNrID0gQ29tcGxldGlvbkhhbmRsZXI8dm9pZChFeGNlcHRpb25PcjxWZWN0
b3I8RE9NQ2FjaGVFbmdpbmU6OlJlY29yZD4+JiYpPjsKKyAgICB2b2lkIHJldHJpZXZlUmVjb3Jk
cyhjb25zdCBVUkwmLCBSZWNvcmRzQ2FsbGJhY2smJik7CisgICAgVmVjdG9yPERPTUNhY2hlRW5n
aW5lOjpSZWNvcmQ+IHF1ZXJ5Q2FjaGVXaXRoVGFyZ2V0U3RvcmFnZShjb25zdCBGZXRjaFJlcXVl
c3QmLCBjb25zdCBDYWNoZVF1ZXJ5T3B0aW9ucyYsIGNvbnN0IFZlY3RvcjxET01DYWNoZUVuZ2lu
ZTo6UmVjb3JkPiYpOworICAgIHZvaWQgcXVlcnlDYWNoZShSZWY8RmV0Y2hSZXF1ZXN0PiYmLCBD
YWNoZVF1ZXJ5T3B0aW9ucyYmLCBSZWNvcmRzQ2FsbGJhY2smJik7CisgICAgdm9pZCBiYXRjaERl
bGV0ZU9wZXJhdGlvbihjb25zdCBGZXRjaFJlcXVlc3QmLCBDYWNoZVF1ZXJ5T3B0aW9ucyYmLCBD
b21wbGV0aW9uSGFuZGxlcjx2b2lkKEV4Y2VwdGlvbk9yPGJvb2w+JiYpPiYmKTsKKyAgICB2b2lk
IGJhdGNoUHV0T3BlcmF0aW9uKGNvbnN0IEZldGNoUmVxdWVzdCYsIEZldGNoUmVzcG9uc2UmLCBE
T01DYWNoZUVuZ2luZTo6UmVzcG9uc2VCb2R5JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhj
ZXB0aW9uT3I8dm9pZD4mJik+JiYpOworICAgIHZvaWQgYmF0Y2hQdXRPcGVyYXRpb24oVmVjdG9y
PERPTUNhY2hlRW5naW5lOjpSZWNvcmQ+JiYsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoRXhjZXB0
aW9uT3I8dm9pZD4mJik+JiYpOwogCi0gICAgdm9pZCB1cGRhdGVSZWNvcmRzKFZlY3RvcjxET01D
YWNoZUVuZ2luZTo6UmVjb3JkPiYmKTsKLSAgICBWZWN0b3I8UmVmPEZldGNoUmVzcG9uc2U+PiBj
bG9uZVJlc3BvbnNlcyhjb25zdCBWZWN0b3I8Q2FjaGVTdG9yYWdlUmVjb3JkPiYpOworICAgIFZl
Y3RvcjxSZWY8RmV0Y2hSZXNwb25zZT4+IGNsb25lUmVzcG9uc2VzKGNvbnN0IFZlY3RvcjxET01D
YWNoZUVuZ2luZTo6UmVjb3JkPiYpOwogICAgIERPTUNhY2hlRW5naW5lOjpSZWNvcmQgdG9Db25u
ZWN0aW9uUmVjb3JkKGNvbnN0IEZldGNoUmVxdWVzdCYsIEZldGNoUmVzcG9uc2UmLCBET01DYWNo
ZUVuZ2luZTo6UmVzcG9uc2VCb2R5JiYpOwogCiAgICAgU3RyaW5nIG1fbmFtZTsKICAgICB1aW50
NjRfdCBtX2lkZW50aWZpZXI7CiAgICAgUmVmPENhY2hlU3RvcmFnZUNvbm5lY3Rpb24+IG1fY29u
bmVjdGlvbjsKIAotICAgIFZlY3RvcjxDYWNoZVN0b3JhZ2VSZWNvcmQ+IG1fcmVjb3JkczsKICAg
ICBib29sIG1faXNTdG9wcGVkIHsgZmFsc2UgfTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA0ODk0ZGU1MjZlY2ZiZDk4
YjdiNmY4MDBmY2I3YjkzMTBhNzhiZjY0Li5mYmFlMzEzNDlhOGVkOWE1ODA3MWIzZGI3ZTI4Mjk1
YzVlNDVhODRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCkBAIC0xMTMzLDcgKzExMzMsNiBAQAogCQk0MUQxMjlDRTFGM0QwRUY2MDBE
MTVFNDcgLyogV29ya2VyR2xvYmFsU2NvcGVDYWNoZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxRkIyNzhEMUYzNEMyODIwMDc5NTQ4NyAvKiBXb3Jr
ZXJHbG9iYWxTY29wZUNhY2hlcy5oICovOyB9OwogCQk0MUQxMjlEMDFGM0QwRjA1MDBEMTVFNDcg
LyogQ2FjaGVRdWVyeU9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDQxRkIyNzlCMUYzNENFRjAwMDc5NTQ4NyAvKiBDYWNoZVF1ZXJ5T3B0aW9u
cy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTQx
RDEyOUQxMUYzRDBGMEUwMEQxNUU0NyAvKiBET01XaW5kb3dDYWNoZXMuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxRkIyNzhDMUYzNEMyODIwMDc5NTQ4
NyAvKiBET01XaW5kb3dDYWNoZXMuaCAqLzsgfTsKLQkJNDFEMTI5RDIxRjNEMEYxMjAwRDE1RTQ3
IC8qIENhY2hlU3RvcmFnZVJlY29yZC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNDFEMTI5Q0ExRjNEMEVFMzAwRDE1RTQ3IC8qIENhY2hlU3RvcmFnZVJl
Y29yZC5oICovOyB9OwogCQk0MUQxMjlEMzFGM0QwRjE2MDBEMTVFNDcgLyogQ2FjaGVTdG9yYWdl
Q29ubmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNDFEMTI5Q0MxRjNEMEVFMzAwRDE1RTQ3IC8qIENhY2hlU3RvcmFnZUNvbm5lY3Rpb24uaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0MUQxMjlE
NTFGM0QwRjY5MDBEMTVFNDcgLyogQ2FjaGVTdG9yYWdlUHJvdmlkZXIuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxRDEyOUQ0MUYzRDBGNjYwMEQxNUU0
NyAvKiBDYWNoZVN0b3JhZ2VQcm92aWRlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTQxRDEyOURCMUYzRDE0MzgwMEQxNUU0NyAvKiBGZXRjaEhl
YWRlcnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
RjU0RjgzMUM1MEM0RjYwMDMzODQ4OCAvKiBGZXRjaEhlYWRlcnMuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNzU2MCw3ICs3NTU5LDYgQEAKIAkJ
NDFEMDE1QzgwRjRCNUM3MTAwNEE2NjJGIC8qIENvbnRlbnRUeXBlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENvbnRlbnRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTQxRDAxNUM5MEY0QjVDNzEwMDRBNjYyRiAvKiBDb250ZW50VHlwZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDb250ZW50VHlwZS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxRDEyOUM5MUYzRDBFRTMwMEQxNUU0NyAvKiBDYWNoZVN0
b3JhZ2VDb25uZWN0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IENhY2hlU3RvcmFnZUNvbm5lY3Rpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQk0MUQxMjlDQTFGM0QwRUUzMDBEMTVFNDcgLyogQ2FjaGVTdG9yYWdlUmVjb3JkLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENhY2hlU3RvcmFnZVJlY29yZC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk0MUQxMjlDQzFGM0QwRUUzMDBEMTVFNDcgLyogQ2FjaGVT
dG9yYWdlQ29ubmVjdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNo
ZVN0b3JhZ2VDb25uZWN0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxRDEy
OUQ0MUYzRDBGNjYwMEQxNUU0NyAvKiBDYWNoZVN0b3JhZ2VQcm92aWRlci5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDYWNoZVN0b3JhZ2VQcm92aWRlci5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQk0MUQxOTM4RjIxNTJDNTYxMDA2RjE0Q0EgLyogUmVhbHRpbWVW
aWRlb1V0aWxpdGllcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZWFsdGlt
ZVZpZGVvVXRpbGl0aWVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xODIwNSw3
ICsxODIwMyw2IEBACiAJCQkJNDFGQjI3OTkxRjM0Q0U5QzAwNzk1NDg3IC8qIENhY2hlUXVlcnlP
cHRpb25zLmlkbCAqLywKIAkJCQk0MUQxMjlDOTFGM0QwRUUzMDBEMTVFNDcgLyogQ2FjaGVTdG9y
YWdlQ29ubmVjdGlvbi5jcHAgKi8sCiAJCQkJNDFEMTI5Q0MxRjNEMEVFMzAwRDE1RTQ3IC8qIENh
Y2hlU3RvcmFnZUNvbm5lY3Rpb24uaCAqLywKLQkJCQk0MUQxMjlDQTFGM0QwRUUzMDBEMTVFNDcg
LyogQ2FjaGVTdG9yYWdlUmVjb3JkLmggKi8sCiAJCQkJNDEzODBDMjAxRjM0MzY4QTAwMTU1RkRB
IC8qIERPTUNhY2hlLmNwcCAqLywKIAkJCQk0MTM4MEMyNTFGMzQzNjlBMDAxNTVGREEgLyogRE9N
Q2FjaGUuaCAqLywKIAkJCQk0MTM4MEMyMzFGMzQzNjk0MDAxNTVGREEgLyogRE9NQ2FjaGUuaWRs
ICovLApAQCAtMjk1ODQsNyArMjk1ODEsNiBAQAogCQkJCTQxRDEyOUQwMUYzRDBGMDUwMEQxNUU0
NyAvKiBDYWNoZVF1ZXJ5T3B0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDFEMTI5RDMxRjNE
MEYxNjAwRDE1RTQ3IC8qIENhY2hlU3RvcmFnZUNvbm5lY3Rpb24uaCBpbiBIZWFkZXJzICovLAog
CQkJCTQxRDEyOUQ1MUYzRDBGNjkwMEQxNUU0NyAvKiBDYWNoZVN0b3JhZ2VQcm92aWRlci5oIGlu
IEhlYWRlcnMgKi8sCi0JCQkJNDFEMTI5RDIxRjNEMEYxMjAwRDE1RTQ3IC8qIENhY2hlU3RvcmFn
ZVJlY29yZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQzQUY4RTcxQUM1QjdFQzAwQ0E3MTdFIC8q
IENhY2hlVmFsaWRhdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDlBRTJEOTcxMzRFRTVGOTAw
NzI5MjBBIC8qIENhbGN1bGF0aW9uVmFsdWUuaCBpbiBIZWFkZXJzICovLAogCQkJCTdDMUU4RDAx
MUVEMEMyREEwMEIxRDk4MyAvKiBDYWxsYmFja1Jlc3VsdC5oIGluIEhlYWRlcnMgKi8sCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>