<?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>234550</bug_id>
          
          <creation_ts>2021-12-21 01:46:25 -0800</creation_ts>
          <short_desc>[GTK][a11y] WTR: add support for notifications when building with ATSPI</short_desc>
          <delta_ts>2021-12-23 00:53:50 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>230253</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>andresg_22</cc>
    
    <cc>annulen</cc>
    
    <cc>aperez</cc>
    
    <cc>apinheiro</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>samuel_white</cc>
    
    <cc>sergio</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1825926</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-12-21 01:46:25 -0800</bug_when>
    <thetext>Implementing WTR notifications handling.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825928</commentid>
    <comment_count>1</comment_count>
      <attachid>447699</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-12-21 01:53:10 -0800</bug_when>
    <thetext>Created attachment 447699
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1826505</commentid>
    <comment_count>2</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-12-23 00:53:50 -0800</bug_when>
    <thetext>Committed r287387 (245527@trunk): &lt;https://commits.webkit.org/245527@trunk&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447699</attachid>
            <date>2021-12-21 01:53:10 -0800</date>
            <delta_ts>2021-12-22 10:00:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wtr-atspi-notifications.diff</filename>
            <type>text/plain</type>
            <size>26708</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmMjc1ODE3NTE5MzguLjkwMDYwMjI3ODhkOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDMxIEBACisyMDIxLTEyLTIxICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVthMTF5XSBXVFI6IGFkZCBzdXBwb3J0IGZvciBu
b3RpZmljYXRpb25zIHdoZW4gYnVpbGRpbmcgd2l0aCBBVFNQSQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NTUwCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHByaXZhdGUgQVBJIGZvciBXVFIgbm90
aWZpY2F0aW9ucy4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0
eUF0c3BpLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlBdHNwaTo6Y2hpbGRy
ZW5DaGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlBdHNwaTo6c3RhdGVD
aGFuZ2VkKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlBdHNwaTo6dGV4dENoYW5n
ZWQpOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjp0ZXh0Q2FyZXRNb3Zl
ZCk6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5QXRzcGk6OnZhbHVlQ2hhbmdlZCk6
CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5QXRzcGk6OnNlbGVjdGlvbkNoYW5nZWQp
OgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpsb2FkRXZlbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjphZGROb3RpZmljYXRpb25PYnNlcnZl
cik6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5QXRzcGk6OnJlbW92ZU5vdGlmaWNh
dGlvbk9ic2VydmVyKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlBdHNwaTo6bm90
aWZ5U3RhdGVDaGFuZ2VkIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlB
dHNwaTo6bm90aWZ5U2VsZWN0aW9uQ2hhbmdlZCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpB
Y2Nlc3NpYmlsaXR5QXRzcGk6Om5vdGlmeVRleHRDaGFuZ2VkIGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OkFjY2Vzc2liaWxpdHlBdHNwaTo6bm90aWZ5VGV4dENhcmV0TW92ZWQgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpub3RpZnlDaGlsZHJlbkNoYW5n
ZWQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpub3RpZnlW
YWx1ZUNoYW5nZWQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3Bp
Ojpub3RpZnlMb2FkRXZlbnQgY29uc3QpOgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvYXRzcGkv
QWNjZXNzaWJpbGl0eUF0c3BpLmg6CisKIDIwMjEtMTItMTkgIENhcmxvcyBHYXJjaWEgQ2FtcG9z
ICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdW2ExMXldIEltcGxlbWVudCBs
aXN0IG1hcmtlcnMgd2hlbiBidWlsZGluZyB3aXRoIEFUU1BJCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5jcHAKaW5k
ZXggOWUyZDVjZjVkMWNhLi43YmY2ZDllNjUxZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5jcHAKQEAgLTM0
NSw2ICszNDUsMTEgQEAgdm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6OnBhcmVudENoYW5nZWQoQWNj
ZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCkKIHZvaWQgQWNjZXNzaWJpbGl0eUF0
c3BpOjpjaGlsZHJlbkNoYW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVj
dCwgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBjaGlsZCwgQ2hpbGRyZW5DaGFuZ2VkIGNoYW5n
ZSkKIHsKICAgICBSRUxFQVNFX0FTU0VSVChpc01haW5UaHJlYWQoKSk7CisKKyNpZiBFTkFCTEUo
REVWRUxPUEVSX01PREUpCisgICAgbm90aWZ5Q2hpbGRyZW5DaGFuZ2VkKGF0c3BpT2JqZWN0LCBj
aGlsZCwgY2hhbmdlKTsKKyNlbmRpZgorCiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIGF0
c3BpT2JqZWN0ID0gUmVmIHsgYXRzcGlPYmplY3QgfSwgY2hpbGQgPSBSZWYgeyBjaGlsZCB9LCBj
aGFuZ2VdIHsKICAgICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCiAgICAgICAgICAgICByZXR1cm47
CkBAIC0zNjIsNiArMzY3LDExIEBAIHZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpjaGlsZHJlbkNo
YW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCwKIHZvaWQgQWNjZXNz
aWJpbGl0eUF0c3BpOjpzdGF0ZUNoYW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNw
aU9iamVjdCwgY29uc3QgY2hhciogbmFtZSwgYm9vbCB2YWx1ZSkKIHsKICAgICBSRUxFQVNFX0FT
U0VSVChpc01haW5UaHJlYWQoKSk7CisKKyNpZiBFTkFCTEUoREVWRUxPUEVSX01PREUpCisgICAg
bm90aWZ5U3RhdGVDaGFuZ2VkKGF0c3BpT2JqZWN0LCBuYW1lLCB2YWx1ZSk7CisjZW5kaWYKKwog
ICAgIG1fcXVldWUtPmRpc3BhdGNoKFt0aGlzLCBhdHNwaU9iamVjdCA9IFJlZiB7IGF0c3BpT2Jq
ZWN0IH0sIG5hbWUgPSBDU3RyaW5nKG5hbWUpLCB2YWx1ZV0gewogICAgICAgICBpZiAoIW1fY29u
bmVjdGlvbikKICAgICAgICAgICAgIHJldHVybjsKQEAgLTM3Nyw2ICszODcsMTEgQEAgdm9pZCBB
Y2Nlc3NpYmlsaXR5QXRzcGk6OnN0YXRlQ2hhbmdlZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkm
IGF0c3BpT2JqZWN0LCBjb24KIHZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjp0ZXh0Q2hhbmdlZChB
Y2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0LCBjb25zdCBjaGFyKiBjaGFuZ2VU
eXBlLCBDU3RyaW5nJiYgdGV4dCwgdW5zaWduZWQgb2Zmc2V0LCB1bnNpZ25lZCBsZW5ndGgpCiB7
CiAgICAgUkVMRUFTRV9BU1NFUlQoaXNNYWluVGhyZWFkKCkpOworCisjaWYgRU5BQkxFKERFVkVM
T1BFUl9NT0RFKQorICAgIG5vdGlmeVRleHRDaGFuZ2VkKGF0c3BpT2JqZWN0KTsKKyNlbmRpZgor
CiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIGF0c3BpT2JqZWN0ID0gUmVmIHsgYXRzcGlP
YmplY3QgfSwgY2hhbmdlVHlwZSA9IENTdHJpbmcoY2hhbmdlVHlwZSksIHRleHQgPSBXVEZNb3Zl
KHRleHQpLCBvZmZzZXQsIGxlbmd0aF0gewogICAgICAgICBpZiAoIW1fY29ubmVjdGlvbikKICAg
ICAgICAgICAgIHJldHVybjsKQEAgLTQwNyw2ICs0MjIsMTEgQEAgdm9pZCBBY2Nlc3NpYmlsaXR5
QXRzcGk6OnRleHRBdHRyaWJ1dGVzQ2hhbmdlZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0
c3BpT2IKIHZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjp0ZXh0Q2FyZXRNb3ZlZChBY2Nlc3NpYmls
aXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0LCB1bnNpZ25lZCBjYXJldE9mZnNldCkKIHsKICAg
ICBSRUxFQVNFX0FTU0VSVChpc01haW5UaHJlYWQoKSk7CisKKyNpZiBFTkFCTEUoREVWRUxPUEVS
X01PREUpCisgICAgbm90aWZ5VGV4dENhcmV0TW92ZWQoYXRzcGlPYmplY3QsIGNhcmV0T2Zmc2V0
KTsKKyNlbmRpZgorCiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIGF0c3BpT2JqZWN0ID0g
UmVmIHsgYXRzcGlPYmplY3QgfSwgY2FyZXRPZmZzZXRdIHsKICAgICAgICAgaWYgKCFtX2Nvbm5l
Y3Rpb24pCiAgICAgICAgICAgICByZXR1cm47CkBAIC00MzcsNiArNDU3LDExIEBAIHZvaWQgQWNj
ZXNzaWJpbGl0eUF0c3BpOjp0ZXh0U2VsZWN0aW9uQ2hhbmdlZChBY2Nlc3NpYmlsaXR5T2JqZWN0
QXRzcGkmIGF0c3BpT2JqCiB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6dmFsdWVDaGFuZ2VkKEFj
Y2Vzc2liaWxpdHlPYmplY3RBdHNwaSYgYXRzcGlPYmplY3QsIGRvdWJsZSB2YWx1ZSkKIHsKICAg
ICBSRUxFQVNFX0FTU0VSVChpc01haW5UaHJlYWQoKSk7CisKKyNpZiBFTkFCTEUoREVWRUxPUEVS
X01PREUpCisgICAgbm90aWZ5VmFsdWVDaGFuZ2VkKGF0c3BpT2JqZWN0KTsKKyNlbmRpZgorCiAg
ICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIGF0c3BpT2JqZWN0ID0gUmVmIHsgYXRzcGlPYmpl
Y3QgfSwgdmFsdWVdIHsKICAgICAgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCiAgICAgICAgICAgICBy
ZXR1cm47CkBAIC00NTIsNiArNDc3LDExIEBAIHZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjp2YWx1
ZUNoYW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCwgZG91CiB2b2lk
IEFjY2Vzc2liaWxpdHlBdHNwaTo6c2VsZWN0aW9uQ2hhbmdlZChBY2Nlc3NpYmlsaXR5T2JqZWN0
QXRzcGkmIGF0c3BpT2JqZWN0KQogewogICAgIFJFTEVBU0VfQVNTRVJUKGlzTWFpblRocmVhZCgp
KTsKKworI2lmIEVOQUJMRShERVZFTE9QRVJfTU9ERSkKKyAgICBub3RpZnlTZWxlY3Rpb25DaGFu
Z2VkKGF0c3BpT2JqZWN0KTsKKyNlbmRpZgorCiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMs
IGF0c3BpT2JqZWN0ID0gUmVmIHsgYXRzcGlPYmplY3QgfV0gewogICAgICAgICBpZiAoIW1fY29u
bmVjdGlvbikKICAgICAgICAgICAgIHJldHVybjsKQEAgLTQ2Nyw2ICs0OTcsMTEgQEAgdm9pZCBB
Y2Nlc3NpYmlsaXR5QXRzcGk6OnNlbGVjdGlvbkNoYW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0
c3BpJiBhdHNwaU9iamVjdCkKIHZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpsb2FkRXZlbnQoQWNj
ZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCwgQ1N0cmluZyYmIGV2ZW50KQogewog
ICAgIFJFTEVBU0VfQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKKworI2lmIEVOQUJMRShERVZFTE9Q
RVJfTU9ERSkKKyAgICBub3RpZnlMb2FkRXZlbnQoYXRzcGlPYmplY3QsIGV2ZW50KTsKKyNlbmRp
ZgorCiAgICAgbV9xdWV1ZS0+ZGlzcGF0Y2goW3RoaXMsIGF0c3BpT2JqZWN0ID0gUmVmIHsgYXRz
cGlPYmplY3QgfSwgZXZlbnQgPSBXVEZNb3ZlKGV2ZW50KV0gewogICAgICAgICBpZiAoIW1fY29u
bmVjdGlvbikKICAgICAgICAgICAgIHJldHVybjsKQEAgLTcxMyw2ICs3NDgsOTkgQEAgUGxhdGZv
cm1Sb2xlTWFwIGNyZWF0ZVBsYXRmb3JtUm9sZU1hcCgpCiAKIH0gLy8gbmFtZXNwYWNlIEFjY2Vz
c2liaWxpdHkKIAorI2lmIEVOQUJMRShERVZFTE9QRVJfTU9ERSkKK3ZvaWQgQWNjZXNzaWJpbGl0
eUF0c3BpOjphZGROb3RpZmljYXRpb25PYnNlcnZlcih2b2lkKiBjb250ZXh0LCBOb3RpZmljYXRp
b25PYnNlcnZlciYmIG9ic2VydmVyKQoreworICAgIG1fbm90aWZpY2F0aW9uT2JzZXJ2ZXJzLmFk
ZChjb250ZXh0LCBXVEZNb3ZlKG9ic2VydmVyKSk7Cit9CisKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0
c3BpOjpyZW1vdmVOb3RpZmljYXRpb25PYnNlcnZlcih2b2lkKiBjb250ZXh0KQoreworICAgIG1f
bm90aWZpY2F0aW9uT2JzZXJ2ZXJzLnJlbW92ZShjb250ZXh0KTsKK30KKwordm9pZCBBY2Nlc3Np
YmlsaXR5QXRzcGk6Om5vdGlmeVN0YXRlQ2hhbmdlZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkm
IGF0c3BpT2JqZWN0LCBjb25zdCBjaGFyKiBuYW1lLCBib29sIHZhbHVlKSBjb25zdAoreworICAg
IGlmIChtX25vdGlmaWNhdGlvbk9ic2VydmVycy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsK
KworICAgIGF1dG8gbm90aWZpY2F0aW9uTmFtZSA9IFsmXShjb25zdCBjaGFyKiBuYW1lKSAtPiBj
b25zdCBjaGFyKiB7CisgICAgICAgIGlmICghZ19zdHJjbXAwKG5hbWUsICJjaGVja2VkIikpCisg
ICAgICAgICAgICByZXR1cm4gIkNoZWNrZWRTdGF0ZUNoYW5nZWQiOworICAgICAgICBpZiAoIWdf
c3RyY21wMChuYW1lLCAiaW52YWxpZC1lbnRyeSIpKQorICAgICAgICAgICAgcmV0dXJuICJBWElu
dmFsaWRTdGF0dXNDaGFuZ2VkIjsKKyAgICAgICAgaWYgKCFnX3N0cmNtcDAobmFtZSwgImFjdGl2
ZSIpKQorICAgICAgICAgICAgcmV0dXJuICJBY3RpdmVTdGF0ZUNoYW5nZWQiOworICAgICAgICBp
ZiAoIWdfc3RyY21wMChuYW1lLCAiYnVzeSIpKQorICAgICAgICAgICAgcmV0dXJuICJBWEVsZW1l
bnRCdXN5Q2hhbmdlZCI7CisgICAgICAgIGlmICghZ19zdHJjbXAwKG5hbWUsICJlbmFibGVkIikp
CisgICAgICAgICAgICByZXR1cm4gIkFYRGlzYWJsZWRTdGF0ZUNoYW5nZWQiOworICAgICAgICBp
ZiAoIWdfc3RyY21wMChuYW1lLCAiZXhwYW5kZWQiKSkKKyAgICAgICAgICAgIHJldHVybiAiQVhF
eHBhbmRlZENoYW5nZWQiOworICAgICAgICBpZiAoIWdfc3RyY21wMChuYW1lLCAicHJlc3NlZCIp
KQorICAgICAgICAgICAgcmV0dXJuICJBWFByZXNzZWRTdGF0ZUNoYW5nZWQiOworICAgICAgICBp
ZiAoIWdfc3RyY21wMChuYW1lLCAicmVhZC1vbmx5IikpCisgICAgICAgICAgICByZXR1cm4gIkFY
UmVhZE9ubHlTdGF0dXNDaGFuZ2VkIjsKKyAgICAgICAgaWYgKCFnX3N0cmNtcDAobmFtZSwgInJl
cXVpcmVkIikpCisgICAgICAgICAgICByZXR1cm4gIkFYUmVxdWlyZWRTdGF0dXNDaGFuZ2VkIjsK
KyAgICAgICAgaWYgKCFnX3N0cmNtcDAobmFtZSwgInNlbnNpdGl2ZSIpKQorICAgICAgICAgICAg
cmV0dXJuICJBWFNlbnNpdGl2ZVN0YXRlQ2hhbmdlZCI7CisgICAgICAgIGlmICghZ19zdHJjbXAw
KG5hbWUsICJmb2N1c2VkIikgJiYgdmFsdWUpCisgICAgICAgICAgICByZXR1cm4gIkFYRm9jdXNl
ZFVJRWxlbWVudENoYW5nZWQiOworCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIH07CisK
KyAgICBjb25zdCBjaGFyKiBub3RpZmljYXRpb24gPSBub3RpZmljYXRpb25OYW1lKG5hbWUpOwor
ICAgIGlmICghbm90aWZpY2F0aW9uKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3IgKGNvbnN0
IGF1dG8mIG9ic2VydmVyIDogbV9ub3RpZmljYXRpb25PYnNlcnZlcnMudmFsdWVzKCkpCisgICAg
ICAgIG9ic2VydmVyKGF0c3BpT2JqZWN0LCBub3RpZmljYXRpb24sIHZhbHVlKTsKK30KKwordm9p
ZCBBY2Nlc3NpYmlsaXR5QXRzcGk6Om5vdGlmeVNlbGVjdGlvbkNoYW5nZWQoQWNjZXNzaWJpbGl0
eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCkgY29uc3QKK3sKKyAgICBmb3IgKGNvbnN0IGF1dG8m
IG9ic2VydmVyIDogbV9ub3RpZmljYXRpb25PYnNlcnZlcnMudmFsdWVzKCkpCisgICAgICAgIG9i
c2VydmVyKGF0c3BpT2JqZWN0LCAiQVhTZWxlY3RlZENoaWxkcmVuQ2hhbmdlZCIsIG51bGxwdHIp
OworfQorCit2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6bm90aWZ5VGV4dENoYW5nZWQoQWNjZXNz
aWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCkgY29uc3QKK3sKKyAgICBmb3IgKGNvbnN0
IGF1dG8mIG9ic2VydmVyIDogbV9ub3RpZmljYXRpb25PYnNlcnZlcnMudmFsdWVzKCkpCisgICAg
ICAgIG9ic2VydmVyKGF0c3BpT2JqZWN0LCAiQVhUZXh0Q2hhbmdlZCIsIG51bGxwdHIpOworfQor
Cit2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6bm90aWZ5VGV4dENhcmV0TW92ZWQoQWNjZXNzaWJp
bGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCwgdW5zaWduZWQgY2FyZXRPZmZzZXQpIGNvbnN0
Cit7CisgICAgZm9yIChjb25zdCBhdXRvJiBvYnNlcnZlciA6IG1fbm90aWZpY2F0aW9uT2JzZXJ2
ZXJzLnZhbHVlcygpKQorICAgICAgICBvYnNlcnZlcihhdHNwaU9iamVjdCwgIkFYVGV4dENhcmV0
TW92ZWQiLCBjYXJldE9mZnNldCk7Cit9CisKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpub3Rp
ZnlDaGlsZHJlbkNoYW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCwg
QWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBjaGlsZCwgQ2hpbGRyZW5DaGFuZ2VkIGNoYW5nZSkg
Y29uc3QKK3sKKyAgICBjb25zdCBjaGFyKiBub3RpZmljYXRpb24gPSBjaGFuZ2UgPT0gQ2hpbGRy
ZW5DaGFuZ2VkOjpBZGRlZCA/ICJBWENoaWxkcmVuQWRkZWQiIDogIkFYQ2hpbGRyZW5SZW1vdmVk
IjsKKyAgICBmb3IgKGNvbnN0IGF1dG8mIG9ic2VydmVyIDogbV9ub3RpZmljYXRpb25PYnNlcnZl
cnMudmFsdWVzKCkpCisgICAgICAgIG9ic2VydmVyKGF0c3BpT2JqZWN0LCBub3RpZmljYXRpb24s
IGNoaWxkKTsKK30KKwordm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6Om5vdGlmeVZhbHVlQ2hhbmdl
ZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KSBjb25zdAoreworICAgIGZv
ciAoY29uc3QgYXV0byYgb2JzZXJ2ZXIgOiBtX25vdGlmaWNhdGlvbk9ic2VydmVycy52YWx1ZXMo
KSkKKyAgICAgICAgb2JzZXJ2ZXIoYXRzcGlPYmplY3QsICJBWFZhbHVlQ2hhbmdlZCIsIG51bGxw
dHIpOworfQorCit2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6bm90aWZ5TG9hZEV2ZW50KEFjY2Vz
c2liaWxpdHlPYmplY3RBdHNwaSYgYXRzcGlPYmplY3QsIGNvbnN0IENTdHJpbmcmIGV2ZW50KSBj
b25zdAoreworICAgIGlmIChldmVudCAhPSAiTG9hZENvbXBsZXRlIikKKyAgICAgICAgcmV0dXJu
OworCisgICAgZm9yIChjb25zdCBhdXRvJiBvYnNlcnZlciA6IG1fbm90aWZpY2F0aW9uT2JzZXJ2
ZXJzLnZhbHVlcygpKQorICAgICAgICBvYnNlcnZlcihhdHNwaU9iamVjdCwgIkFYTG9hZENvbXBs
ZXRlIiwgbnVsbHB0cik7Cit9CisKKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAK
ICNlbmRpZiAvLyBFTkFCTEUoQUNDRVNTSUJJTElUWSkgJiYgVVNFKEFUU1BJKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGku
aCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3Bp
LmgKaW5kZXggNDY2YzU2YzMyNWNjLi42OTE2Y2QyOTRiY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGkuaApAQCAt
NzgsNiArNzgsMTMgQEAgcHVibGljOgogCiAgICAgdm9pZCBhZGRBY2Nlc3NpYmxlKEFjY2Vzc2li
aWxpdHlPYmplY3RBdHNwaSYpOwogCisjaWYgRU5BQkxFKERFVkVMT1BFUl9NT0RFKQorICAgIHVz
aW5nIE5vdGlmaWNhdGlvbk9ic2VydmVyUGFyYW1ldGVyID0gc3RkOjp2YXJpYW50PHN0ZDo6bnVs
bHB0cl90LCBTdHJpbmcsIGJvb2wsIHVuc2lnbmVkLCBSZWY8QWNjZXNzaWJpbGl0eU9iamVjdEF0
c3BpPj47CisgICAgdXNpbmcgTm90aWZpY2F0aW9uT2JzZXJ2ZXIgPSBGdW5jdGlvbjx2b2lkKEFj
Y2Vzc2liaWxpdHlPYmplY3RBdHNwaSYsIGNvbnN0IGNoYXIqLCBOb3RpZmljYXRpb25PYnNlcnZl
clBhcmFtZXRlcik+OworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgYWRkTm90aWZpY2F0aW9uT2Jz
ZXJ2ZXIodm9pZCosIE5vdGlmaWNhdGlvbk9ic2VydmVyJiYpOworICAgIFdFQkNPUkVfRVhQT1JU
IHZvaWQgcmVtb3ZlTm90aWZpY2F0aW9uT2JzZXJ2ZXIodm9pZCopOworI2VuZGlmCisKIHByaXZh
dGU6CiAgICAgdm9pZCByZWdpc3RlclRyZWVzKCkgY29uc3Q7CiAgICAgdm9pZCBpbml0aWFsaXpl
UmVnaXN0cnkoKTsKQEAgLTg5LDYgKzk2LDE2IEBAIHByaXZhdGU6CiAKICAgICBib29sIHNob3Vs
ZEVtaXRTaWduYWwoY29uc3QgY2hhciogaW50ZXJmYWNlLCBjb25zdCBjaGFyKiBuYW1lLCBjb25z
dCBjaGFyKiBkZXRhaWwgPSAiIik7CiAKKyNpZiBFTkFCTEUoREVWRUxPUEVSX01PREUpCisgICAg
dm9pZCBub3RpZnlTdGF0ZUNoYW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiwgY29uc3Qg
Y2hhciosIGJvb2wpIGNvbnN0OworICAgIHZvaWQgbm90aWZ5U2VsZWN0aW9uQ2hhbmdlZChBY2Nl
c3NpYmlsaXR5T2JqZWN0QXRzcGkmKSBjb25zdDsKKyAgICB2b2lkIG5vdGlmeVRleHRDaGFuZ2Vk
KEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYpIGNvbnN0OworICAgIHZvaWQgbm90aWZ5VGV4dENh
cmV0TW92ZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiwgdW5zaWduZWQpIGNvbnN0OworICAg
IHZvaWQgbm90aWZ5Q2hpbGRyZW5DaGFuZ2VkKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYsIEFj
Y2Vzc2liaWxpdHlPYmplY3RBdHNwaSYsIENoaWxkcmVuQ2hhbmdlZCkgY29uc3Q7CisgICAgdm9p
ZCBub3RpZnlWYWx1ZUNoYW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJikgY29uc3Q7Cisg
ICAgdm9pZCBub3RpZnlMb2FkRXZlbnQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiwgY29uc3Qg
Q1N0cmluZyYpIGNvbnN0OworI2VuZGlmCisKICAgICBzdGF0aWMgR0RCdXNJbnRlcmZhY2VWVGFi
bGUgc19jYWNoZUZ1bmN0aW9uczsKIAogICAgIFJlZjxXb3JrUXVldWU+IG1fcXVldWU7CkBAIC0x
MDEsNiArMTE4LDkgQEAgcHJpdmF0ZToKICAgICB1bnNpZ25lZCBtX2NhY2hlSUQgeyAwIH07CiAg
ICAgSGFzaE1hcDxTdHJpbmcsIEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSo+IG1fY2FjaGU7CiAg
ICAgYm9vbCBtX2luR2V0SXRlbXMgeyBmYWxzZSB9OworI2lmIEVOQUJMRShERVZFTE9QRVJfTU9E
RSkKKyAgICBIYXNoTWFwPHZvaWQqLCBOb3RpZmljYXRpb25PYnNlcnZlcj4gbV9ub3RpZmljYXRp
b25PYnNlcnZlcnM7CisjZW5kaWYKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA0MWNiNWI3ZmZh
NGYuLjA2YzM2ZWQwZmIwOCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDIxLTEyLTIxICBDYXJsb3MgR2FyY2lhIENh
bXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVthMTF5XSBXVFI6IGFk
ZCBzdXBwb3J0IGZvciBub3RpZmljYXRpb25zIHdoZW4gYnVpbGRpbmcgd2l0aCBBVFNQSQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NTUwCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEFjY2Vzc2li
aWxpdHlOb3RpZmljYXRpb25IYW5kbGVyIGNsYXNzIHRvIGhhbmRsZSB0aGUgQVRTUEkgbm90aWZp
Y2F0aW9ucy4KKworICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXIuY3BwOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvSW5q
ZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBXZWJLaXRU
ZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaDoKKyAgICAg
ICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2F0c3BpL0FjY2Vzc2liaWxpdHlD
b250cm9sbGVyQXRzcGkuY3BwOgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5Q29udHJvbGxl
cjo6cmVzZXRUb0NvbnNpc3RlbnRTdGF0ZSk6IFJlbW92ZSB0aGUgZ2xvYmFsIGV2ZW50IGxpc3Rl
bmVyIGlmIHRoZXJlJ3Mgb25lIGFjdGl2ZS4KKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eUNv
bnRyb2xsZXI6OmFkZE5vdGlmaWNhdGlvbkxpc3RlbmVyKTogQ3JlYXRlIGEgZ2xvYmFsIGV2ZW50
IGxpc3RlbmVyLgorICAgICAgICAoV1RSOjpBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcjo6cmVtb3Zl
Tm90aWZpY2F0aW9uTGlzdGVuZXIpOiBSZW1vdmUgdGhlIGdsb2JhbCBldmVudCBsaXN0ZW5lci4K
KyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2F0c3BpL0FjY2Vzc2li
aWxpdHlOb3RpZmljYXRpb25IYW5kbGVyLmNwcDogQWRkZWQuCisgICAgICAgIChXVFI6OkFjY2Vz
c2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyOjpBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFu
ZGxlcik6CisgICAgICAgIChXVFI6OkFjY2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyOjp+
QWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRsZXIpOgorICAgICAgICAqIFdlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRzcGkvQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRs
ZXIuaDogQWRkZWQuCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9h
dHNwaS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50QXRzcGkuY3BwOgorICAgICAgICAoV1RSOjpBY2Nl
c3NpYmlsaXR5VUlFbGVtZW50OjphZGROb3RpZmljYXRpb25MaXN0ZW5lcik6IENyZWF0ZSB0aGUg
ZWxlbWVudCBldmVudCBsaXN0ZW5lci4KKyAgICAgICAgKFdUUjo6QWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6cmVtb3ZlTm90aWZpY2F0aW9uTGlzdGVuZXIpOiBSZW1vdmUgdGhlIGVsZW1lbnQgZXZl
bnQgbGlzdGVuZXIuCisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9QbGF0Zm9ybUdUSy5jbWFr
ZToKKwogMjAyMS0xMi0xOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW0dUS11bYTExeV0gSW1wbGVtZW50IGxpc3QgbWFya2VycyB3aGVuIGJ1
aWxkaW5nIHdpdGggQVRTUEkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5q
ZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuY3BwIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9BY2Nlc3NpYmlsaXR5Q29udHJvbGxlci5jcHAKaW5kZXgg
YTVhNDE3NWUxNzhmLi4xNmM4Y2Y4YzZhNWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvSW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuY3BwCisrKyBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eUNvbnRyb2xs
ZXIuY3BwCkBAIC0zNiw2ICszNiwxMCBAQAogI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZVBhZ2Uu
aD4KICNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQYWdlUHJpdmF0ZS5oPgogCisjaWYgVVNFKEFU
U1BJKQorI2luY2x1ZGUgIkFjY2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyLmgiCisjZW5k
aWYKKwogbmFtZXNwYWNlIFdUUiB7CiAKIFJlZjxBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcj4gQWNj
ZXNzaWJpbGl0eUNvbnRyb2xsZXI6OmNyZWF0ZSgpCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRU
ZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlDb250cm9sbGVyLmggYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlDb250cm9sbGVy
LmgKaW5kZXggMTkwNWIxNWZkZjc4Li5iNTMyMWQyNjdhYTQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuaAor
KysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlD
b250cm9sbGVyLmgKQEAgLTQ0LDYgKzQ0LDkgQEAKIG5hbWVzcGFjZSBXVFIgewogCiBjbGFzcyBB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50OworI2lmIFVTRShBVFNQSSkKK2NsYXNzIEFjY2Vzc2liaWxp
dHlOb3RpZmljYXRpb25IYW5kbGVyOworI2VuZGlmCiAKIGNsYXNzIEFjY2Vzc2liaWxpdHlDb250
cm9sbGVyIDogcHVibGljIEpTV3JhcHBhYmxlIHsKIHB1YmxpYzoKQEAgLTk5LDYgKzEwMiw4IEBA
IHByaXZhdGU6CiAgICAgUmV0YWluUHRyPGlkPiBtX2dsb2JhbE5vdGlmaWNhdGlvbkhhbmRsZXI7
CiAjZWxpZiBVU0UoQVRLKQogICAgIFJlZlB0cjxBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFu
ZGxlcj4gbV9nbG9iYWxOb3RpZmljYXRpb25IYW5kbGVyOworI2VsaWYgVVNFKEFUU1BJKQorICAg
IHN0ZDo6dW5pcXVlX3B0cjxBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFuZGxlcj4gbV9nbG9i
YWxOb3RpZmljYXRpb25IYW5kbGVyOwogI2VuZGlmCiAKICNpZiBFTkFCTEUoQUNDRVNTSUJJTElU
WV9JU09MQVRFRF9UUkVFKQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9Jbmpl
Y3RlZEJ1bmRsZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmggYi9Ub29scy9XZWJLaXRUZXN0UnVu
bmVyL0luamVjdGVkQnVuZGxlL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnQuaAppbmRleCAzN2QyMjE1
NGQzMDcuLmZhZjhhNDU2MTQyZSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9J
bmplY3RlZEJ1bmRsZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgKKysrIGIvVG9vbHMvV2ViS2l0
VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgKQEAgLTU5
LDYgKzU5LDkgQEAgdHlwZWRlZiB2b2lkKiBQbGF0Zm9ybVVJRWxlbWVudDsKIG5hbWVzcGFjZSBX
VFIgewogCiBjbGFzcyBBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcjsKKyNpZiBVU0UoQVRTUEkpCitj
bGFzcyBBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFuZGxlcjsKKyNlbmRpZgogCiBjbGFzcyBB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50IDogcHVibGljIEpTV3JhcHBhYmxlIHsKICNpZiBQTEFURk9S
TShDT0NPQSkKQEAgLTQzNSw2ICs0MzgsNyBAQCBwcml2YXRlOgogI2VsaWYgVVNFKEFUU1BJKQog
ICAgIHN0YXRpYyBSZWZQdHI8QWNjZXNzaWJpbGl0eUNvbnRyb2xsZXI+IHNfY29udHJvbGxlcjsK
ICAgICBSZWZQdHI8V2ViQ29yZTo6QWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpPiBtX2VsZW1lbnQ7
CisgICAgc3RkOjp1bmlxdWVfcHRyPEFjY2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyPiBt
X25vdGlmaWNhdGlvbkhhbmRsZXI7CiAjZW5kaWYKICNlbmRpZgogfTsKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRzcGkvQWNjZXNzaWJpbGl0eUNv
bnRyb2xsZXJBdHNwaS5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxl
L2F0c3BpL0FjY2Vzc2liaWxpdHlDb250cm9sbGVyQXRzcGkuY3BwCmluZGV4IDQ5ZWRhMDIzZjc0
Mi4uMjQ2NjMxNjgyOTNiIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL2F0c3BpL0FjY2Vzc2liaWxpdHlDb250cm9sbGVyQXRzcGkuY3BwCisrKyBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRzcGkvQWNjZXNzaWJpbGl0eUNv
bnRyb2xsZXJBdHNwaS5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJBY2Nlc3NpYmls
aXR5Q29udHJvbGxlci5oIgogCiAjaWYgSEFWRShBQ0NFU1NJQklMSVRZKSAmJiBVU0UoQVRTUEkp
CisjaW5jbHVkZSAiQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRsZXIuaCIKICNpbmNsdWRl
ICJBY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGUuaCIK
ICNpbmNsdWRlICJJbmplY3RlZEJ1bmRsZVBhZ2UuaCIKQEAgLTQxLDYgKzQyLDggQEAgbmFtZXNw
YWNlIFdUUiB7CiAKIHZvaWQgQWNjZXNzaWJpbGl0eUNvbnRyb2xsZXI6OnJlc2V0VG9Db25zaXN0
ZW50U3RhdGUoKQogeworICAgIGlmIChtX2dsb2JhbE5vdGlmaWNhdGlvbkhhbmRsZXIpCisgICAg
ICAgIHJlbW92ZU5vdGlmaWNhdGlvbkxpc3RlbmVyKCk7CiB9CiAKIHN0YXRpYyBXZWJDb3JlOjpB
Y2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkqIGZpbmRBY2Nlc3NpYmxlT2JqZWN0QnlJZChXZWJDb3Jl
OjpBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF4T2JqZWN0LCBjb25zdCBTdHJpbmcmIGVsZW1l
bnRJRCkKQEAgLTEwNSwxMiArMTA4LDIxIEBAIFJlZlB0cjxBY2Nlc3NpYmlsaXR5VUlFbGVtZW50
PiBBY2Nlc3NpYmlsaXR5Q29udHJvbGxlcjo6Zm9jdXNlZEVsZW1lbnQoKQogCiBib29sIEFjY2Vz
c2liaWxpdHlDb250cm9sbGVyOjphZGROb3RpZmljYXRpb25MaXN0ZW5lcihKU1ZhbHVlUmVmIGZ1
bmN0aW9uQ2FsbGJhY2spCiB7CisgICAgaWYgKCFmdW5jdGlvbkNhbGxiYWNrKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CisKKyAgICBpZiAobV9nbG9iYWxOb3RpZmljYXRpb25IYW5kbGVyKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBtX2dsb2JhbE5vdGlmaWNhdGlvbkhhbmRsZXIgPSBt
YWtlVW5pcXVlPEFjY2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyPihmdW5jdGlvbkNhbGxi
YWNrKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAogYm9vbCBBY2Nlc3NpYmlsaXR5Q29udHJvbGxl
cjo6cmVtb3ZlTm90aWZpY2F0aW9uTGlzdGVuZXIoKQogewotICAgIHJldHVybiBmYWxzZTsKKyAg
ICBBU1NFUlQobV9nbG9iYWxOb3RpZmljYXRpb25IYW5kbGVyKTsKKyAgICBtX2dsb2JhbE5vdGlm
aWNhdGlvbkhhbmRsZXIgPSBudWxscHRyOworICAgIHJldHVybiB0cnVlOwogfQogCiB2b2lkIEFj
Y2Vzc2liaWxpdHlDb250cm9sbGVyOjp1cGRhdGVJc29sYXRlZFRyZWVNb2RlKCkKZGlmZiAtLWdp
dCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRzcGkvQWNjZXNzaWJp
bGl0eU5vdGlmaWNhdGlvbkhhbmRsZXIuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9Jbmpl
Y3RlZEJ1bmRsZS9hdHNwaS9BY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFuZGxlci5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi41MzUxZjM5OTUwZTAKLS0tIC9k
ZXYvbnVsbAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2F0c3Bp
L0FjY2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyLmNwcApAQCAtMCwwICsxLDEwOSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAyMSBJZ2FsaWEgUy5MLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E
IENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNV
TEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklH
SFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiQWNjZXNzaWJpbGl0eU5vdGlm
aWNhdGlvbkhhbmRsZXIuaCIKKworI2lmIEhBVkUoQUNDRVNTSUJJTElUWSkgJiYgVVNFKEFUU1BJ
KQorI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFnZS5oIgorI2luY2x1ZGUgIkpTV3JhcHBlci5o
IgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL09wYXF1ZUpTU3RyaW5nLmg+CisjaW5jbHVkZSA8
V2ViQ29yZS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0Fj
Y2Vzc2liaWxpdHlSb290QXRzcGkuaD4KKyNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVGcmFtZS5o
PgorI2luY2x1ZGUgPFdlYktpdC9XS0J1bmRsZVBhZ2UuaD4KKyNpbmNsdWRlIDxXZWJLaXQvV0tC
dW5kbGVQYWdlUHJpdmF0ZS5oPgorCituYW1lc3BhY2UgV1RSIHsKKworQWNjZXNzaWJpbGl0eU5v
dGlmaWNhdGlvbkhhbmRsZXI6OkFjY2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyKEpTVmFs
dWVSZWYgY2FsbGJhY2ssIFBsYXRmb3JtVUlFbGVtZW50IGVsZW1lbnQpCisgICAgOiBtX2NhbGxi
YWNrKGNhbGxiYWNrKQorICAgICwgbV9lbGVtZW50KGVsZW1lbnQpCit7CisgICAgV0tCdW5kbGVQ
YWdlUmVmIHBhZ2UgPSBJbmplY3RlZEJ1bmRsZTo6c2luZ2xldG9uKCkucGFnZSgpLT5wYWdlKCk7
CisgICAgV0tCdW5kbGVGcmFtZVJlZiBtYWluRnJhbWUgPSBXS0J1bmRsZVBhZ2VHZXRNYWluRnJh
bWUocGFnZSk7CisgICAgSlNDb250ZXh0UmVmIGpzQ29udGV4dCA9IFdLQnVuZGxlRnJhbWVHZXRK
YXZhU2NyaXB0Q29udGV4dChtYWluRnJhbWUpOworICAgIEpTVmFsdWVQcm90ZWN0KGpzQ29udGV4
dCwgbV9jYWxsYmFjayk7CisKKyAgICBhdXRvJiBhdHNwaSA9IG1fZWxlbWVudCA/IG1fZWxlbWVu
dC0+cm9vdCgpLmF0c3BpKCkgOiBzdGF0aWNfY2FzdDxXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5T2Jq
ZWN0QXRzcGkqPihXS0FjY2Vzc2liaWxpdHlSb290T2JqZWN0KHBhZ2UpKS0+cm9vdCgpLmF0c3Bp
KCk7CisgICAgYXRzcGkuYWRkTm90aWZpY2F0aW9uT2JzZXJ2ZXIodGhpcywgW3RoaXNdKFdlYkNv
cmU6OkFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYgZWxlbWVudCwgY29uc3QgY2hhciogbm90aWZp
Y2F0aW9uTmFtZSwgV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpOb3RpZmljYXRpb25PYnNl
cnZlclBhcmFtZXRlciBwYXJhbWV0ZXIpIHsKKyAgICAgICAgaWYgKG1fZWxlbWVudCAmJiBtX2Vs
ZW1lbnQuZ2V0KCkgIT0gJmVsZW1lbnQpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAg
V0tCdW5kbGVGcmFtZVJlZiBtYWluRnJhbWUgPSBXS0J1bmRsZVBhZ2VHZXRNYWluRnJhbWUoSW5q
ZWN0ZWRCdW5kbGU6OnNpbmdsZXRvbigpLnBhZ2UoKS0+cGFnZSgpKTsKKyAgICAgICAgSlNDb250
ZXh0UmVmIGpzQ29udGV4dCA9IFdLQnVuZGxlRnJhbWVHZXRKYXZhU2NyaXB0Q29udGV4dChtYWlu
RnJhbWUpOworCisgICAgICAgIEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPiBqc05vdGlmaWNhdGlv
bkV2ZW50TmFtZShBZG9wdCwgSlNTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcobm90aWZpY2F0
aW9uTmFtZSkpOworICAgICAgICBKU1ZhbHVlUmVmIGpzUGFyYW1ldGVyID0gV1RGOjpzd2l0Y2hP
bihwYXJhbWV0ZXIsCisgICAgICAgICAgICBbJl0oU3RyaW5nJiBzdHJpbmdWYWx1ZSkgLT4gSlNW
YWx1ZVJlZiB7CisgICAgICAgICAgICAgICAgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IGpzU3Ry
aW5nVmFsdWUoQWRvcHQsIE9wYXF1ZUpTU3RyaW5nOjp0cnlDcmVhdGUoc3RyaW5nVmFsdWUpLmdl
dCgpKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gSlNWYWx1ZU1ha2VTdHJpbmcoanNDb250ZXh0
LCBqc1N0cmluZ1ZhbHVlLmdldCgpKTsKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICBbJl0o
Ym9vbCYgYm9vbFZhbHVlKSAtPiBKU1ZhbHVlUmVmIHsKKyAgICAgICAgICAgICAgICByZXR1cm4g
SlNWYWx1ZU1ha2VCb29sZWFuKGpzQ29udGV4dCwgYm9vbFZhbHVlKTsKKyAgICAgICAgICAgIH0s
CisgICAgICAgICAgICBbJl0odW5zaWduZWQmIHVuc2lnbmVkVmFsdWUpIC0+IEpTVmFsdWVSZWYg
eworICAgICAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlTWFrZU51bWJlcihqc0NvbnRleHQsIHVu
c2lnbmVkVmFsdWUpOworICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIFsmXShSZWY8V2ViQ29y
ZTo6QWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpPiYgZWxlbWVudFZhbHVlKSAtPiBKU1ZhbHVlUmVm
IHsKKyAgICAgICAgICAgICAgICByZXR1cm4gdG9KUyhqc0NvbnRleHQsIEFjY2Vzc2liaWxpdHlV
SUVsZW1lbnQ6OmNyZWF0ZShlbGVtZW50VmFsdWUucHRyKCkpLnB0cigpKTsKKyAgICAgICAgICAg
IH0sCisgICAgICAgICAgICBbJl0oYXV0byYpIC0+IEpTVmFsdWVSZWYgeworICAgICAgICAgICAg
ICAgIHJldHVybiBKU1ZhbHVlTWFrZVVuZGVmaW5lZChqc0NvbnRleHQpOworICAgICAgICAgICAg
fSk7CisKKyAgICAgICAgaWYgKG1fZWxlbWVudCkgeworICAgICAgICAgICAgLy8gTGlzdGVuZXIg
Zm9yIG9uZSBlbGVtZW50IGdldHMgdGhlIG5vdGlmaWNhdGlvbiBuYW1lIHBhcmFtZXRlci4KKyAg
ICAgICAgICAgIEpTVmFsdWVSZWYgYXJndW1lbnRzWzJdOworICAgICAgICAgICAgYXJndW1lbnRz
WzBdID0gSlNWYWx1ZU1ha2VTdHJpbmcoanNDb250ZXh0LCBqc05vdGlmaWNhdGlvbkV2ZW50TmFt
ZS5nZXQoKSk7CisgICAgICAgICAgICBhcmd1bWVudHNbMV0gPSBqc1BhcmFtZXRlcjsKKyAgICAg
ICAgICAgIEpTT2JqZWN0Q2FsbEFzRnVuY3Rpb24oanNDb250ZXh0LCBjb25zdF9jYXN0PEpTT2Jq
ZWN0UmVmPihtX2NhbGxiYWNrKSwgMCwgMiwgYXJndW1lbnRzLCAwKTsKKyAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgIC8vIEEgZ2xvYmFsIGxpc3RlbmVyIGdldHMgdGhlIGVsZW1lbnQsIG5v
dGlmaWNhdGlvbiBuYW1lIGFuZCBwYXJhbWV0ZXIuCisgICAgICAgICAgICBKU1ZhbHVlUmVmIGFy
Z3VtZW50c1szXTsKKyAgICAgICAgICAgIGFyZ3VtZW50c1swXSA9IHRvSlMoanNDb250ZXh0LCBB
Y2Nlc3NpYmlsaXR5VUlFbGVtZW50OjpjcmVhdGUoJmVsZW1lbnQpLnB0cigpKTsKKyAgICAgICAg
ICAgIGFyZ3VtZW50c1sxXSA9IEpTVmFsdWVNYWtlU3RyaW5nKGpzQ29udGV4dCwganNOb3RpZmlj
YXRpb25FdmVudE5hbWUuZ2V0KCkpOworICAgICAgICAgICAgYXJndW1lbnRzWzJdID0ganNQYXJh
bWV0ZXI7CisgICAgICAgICAgICBKU09iamVjdENhbGxBc0Z1bmN0aW9uKGpzQ29udGV4dCwgY29u
c3RfY2FzdDxKU09iamVjdFJlZj4obV9jYWxsYmFjayksIDAsIDMsIGFyZ3VtZW50cywgMCk7Cisg
ICAgICAgIH0KKyAgICB9KTsKK30KKworQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRsZXI6
On5BY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uSGFuZGxlcigpCit7CisgICAgV0tCdW5kbGVQYWdl
UmVmIHBhZ2UgPSBJbmplY3RlZEJ1bmRsZTo6c2luZ2xldG9uKCkucGFnZSgpLT5wYWdlKCk7Cisg
ICAgYXV0byYgYXRzcGkgPSBtX2VsZW1lbnQgPyBtX2VsZW1lbnQtPnJvb3QoKS5hdHNwaSgpIDog
c3RhdGljX2Nhc3Q8V2ViQ29yZTo6QWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpKj4oV0tBY2Nlc3Np
YmlsaXR5Um9vdE9iamVjdChwYWdlKSktPnJvb3QoKS5hdHNwaSgpOworICAgIGF0c3BpLnJlbW92
ZU5vdGlmaWNhdGlvbk9ic2VydmVyKHRoaXMpOworCisgICAgV0tCdW5kbGVGcmFtZVJlZiBtYWlu
RnJhbWUgPSBXS0J1bmRsZVBhZ2VHZXRNYWluRnJhbWUocGFnZSk7CisgICAgSlNDb250ZXh0UmVm
IGpzQ29udGV4dCA9IFdLQnVuZGxlRnJhbWVHZXRKYXZhU2NyaXB0Q29udGV4dChtYWluRnJhbWUp
OworICAgIEpTVmFsdWVVbnByb3RlY3QoanNDb250ZXh0LCBtX2NhbGxiYWNrKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV1RSCisKKyNlbmRpZiAvLyBIQVZFKEFDQ0VTU0lCSUxJVFkpICYmIFVTRShB
VFNQSSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUv
YXRzcGkvQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRsZXIuaCBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRzcGkvQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhh
bmRsZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmU0NjFhMzhk
MjNhNAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRC
dW5kbGUvYXRzcGkvQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRsZXIuaApAQCAtMCwwICsx
LDUxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIxIElnYWxpYSBTLkwuCisgKgorICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBB
IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhF
IENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwK
KyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaWYgSEFWRShBQ0NFU1NJQklMSVRZKSAm
JiBVU0UoQVRTUEkpCisKKyNpbmNsdWRlICJBY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgiCisjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvSlNPYmplY3RSZWYuaD4KKyNpbmNsdWRlIDx3dGYvRmFzdE1h
bGxvYy5oPgorCituYW1lc3BhY2UgV1RSIHsKKworY2xhc3MgQWNjZXNzaWJpbGl0eU5vdGlmaWNh
dGlvbkhhbmRsZXIgeworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgorICAg
IGV4cGxpY2l0IEFjY2Vzc2liaWxpdHlOb3RpZmljYXRpb25IYW5kbGVyKEpTVmFsdWVSZWYsIFBs
YXRmb3JtVUlFbGVtZW50ID0gbnVsbHB0cik7CisgICAgfkFjY2Vzc2liaWxpdHlOb3RpZmljYXRp
b25IYW5kbGVyKCk7CisKK3ByaXZhdGU6CisgICAgSlNWYWx1ZVJlZiBtX2NhbGxiYWNrOworICAg
IFJlZlB0cjxXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk+IG1fZWxlbWVudDsKK307
CisKK30gLy8gbmFtZXNwYWNlIFdUUgorCisjZW5kaWYgLy8gSEFWRShBQ0NFU1NJQklMSVRZKSAm
JiBVU0UoQVRTUEkpCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL2F0c3BpL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRBdHNwaS5jcHAgYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL2F0c3BpL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRB
dHNwaS5jcHAKaW5kZXggODVlYjBlNjYyMDI4Li5lMjhiNjAwYmEyNmQgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvYXRzcGkvQWNjZXNzaWJpbGl0eVVJ
RWxlbWVudEF0c3BpLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVu
ZGxlL2F0c3BpL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRBdHNwaS5jcHAKQEAgLTI3LDYgKzI3LDcg
QEAKICNpbmNsdWRlICJBY2Nlc3NpYmlsaXR5VUlFbGVtZW50LmgiCiAKICNpZiBIQVZFKEFDQ0VT
U0lCSUxJVFkpICYmIFVTRShBVFNQSSkKKyNpbmNsdWRlICJBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0
aW9uSGFuZGxlci5oIgogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlLmgiCiAjaW5jbHVkZSAiSW5q
ZWN0ZWRCdW5kbGVQYWdlLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNTdHJpbmdSZWYu
aD4KQEAgLTEzMjEsMTEgKzEzMjIsMjAgQEAgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OnVybCgpCiAKIGJvb2wgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
YWRkTm90aWZpY2F0aW9uTGlzdGVuZXIoSlNWYWx1ZVJlZiBmdW5jdGlvbkNhbGxiYWNrKQogewot
ICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWZ1bmN0aW9uQ2FsbGJhY2spCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIGlmIChtX25vdGlmaWNhdGlvbkhhbmRsZXIpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIG1fbm90aWZpY2F0aW9uSGFuZGxlciA9IG1ha2VVbmlxdWU8QWNj
ZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRsZXI+KGZ1bmN0aW9uQ2FsbGJhY2ssIG1fZWxlbWVu
dC5nZXQoKSk7CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgQWNjZXNzaWJpbGl0eVVJRWxl
bWVudDo6cmVtb3ZlTm90aWZpY2F0aW9uTGlzdGVuZXIoKQogeworICAgIEFTU0VSVChtX25vdGlm
aWNhdGlvbkhhbmRsZXIpOworICAgIG1fbm90aWZpY2F0aW9uSGFuZGxlciA9IG51bGxwdHI7CiAg
ICAgcmV0dXJuIHRydWU7CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
UGxhdGZvcm1HVEsuY21ha2UgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1BsYXRmb3JtR1RLLmNt
YWtlCmluZGV4IDZkNTcwNTIxZTA5NS4uNDRlYmJjMzAwMzM2IDEwMDY0NAotLS0gYS9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL1BsYXRmb3JtR1RLLmNtYWtlCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTQ1LDYgKzQ1LDcgQEAgbGlzdChBUFBFTkQgV2Vi
S2l0VGVzdFJ1bm5lckluamVjdGVkQnVuZGxlX1NPVVJDRVMKICAgICBJbmplY3RlZEJ1bmRsZS9h
dGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0ay5jcHAKIAogICAgIEluamVjdGVkQnVuZGxlL2F0
c3BpL0FjY2Vzc2liaWxpdHlDb250cm9sbGVyQXRzcGkuY3BwCisgICAgSW5qZWN0ZWRCdW5kbGUv
YXRzcGkvQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbkhhbmRsZXIuY3BwCiAgICAgSW5qZWN0ZWRC
dW5kbGUvYXRzcGkvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEF0c3BpLmNwcAogCiAgICAgSW5qZWN0
ZWRCdW5kbGUvZ3RrL0FjdGl2YXRlRm9udHNHdGsuY3BwCkBAIC01Nyw2ICs1OCw3IEBAIGxpc3Qo
QVBQRU5EIFdlYktpdFRlc3RSdW5uZXJJbmplY3RlZEJ1bmRsZV9JTkNMVURFX0RJUkVDVE9SSUVT
CiAgICAgJHtBVEtfSU5DTFVERV9ESVJTfQogICAgICR7R0xJQl9JTkNMVURFX0RJUlN9CiAgICAg
JHtXZWJLaXRUZXN0UnVubmVyX0RJUn0vSW5qZWN0ZWRCdW5kbGUvYXRrCisgICAgJHtXZWJLaXRU
ZXN0UnVubmVyX0RJUn0vSW5qZWN0ZWRCdW5kbGUvYXRzcGkKICAgICAke1dlYktpdFRlc3RSdW5u
ZXJfRElSfS9JbmplY3RlZEJ1bmRsZS9ndGsKICkKIAo=
</data>
<flag name="review"
          id="473393"
          type_id="1"
          status="+"
          setter="aperez"
    />
          </attachment>
      

    </bug>

</bugzilla>