<?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>234740</bug_id>
          
          <creation_ts>2021-12-29 07:09:02 -0800</creation_ts>
          <short_desc>[GTK][a11y] Defer the emission of AddAccessible signal with ATSPI</short_desc>
          <delta_ts>2022-01-12 04:02:37 -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>
          <dependson>234737</dependson>
          <blocked>230253</blocked>
    
    <blocked>234750</blocked>
    
    <blocked>234781</blocked>
    
    <blocked>234808</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>aperez</cc>
    
    <cc>apinheiro</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1827168</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-12-29 07:09:02 -0800</bug_when>
    <thetext>In case of node added and removed quickly, we just avoid the emission of the signal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1827169</commentid>
    <comment_count>1</comment_count>
      <attachid>448071</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-12-29 07:17:00 -0800</bug_when>
    <thetext>Created attachment 448071
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1827224</commentid>
    <comment_count>2</comment_count>
      <attachid>448090</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-12-30 03:15:33 -0800</bug_when>
    <thetext>Created attachment 448090
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1827230</commentid>
    <comment_count>3</comment_count>
      <attachid>448094</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-12-30 05:30:29 -0800</bug_when>
    <thetext>Created attachment 448094
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1827231</commentid>
    <comment_count>4</comment_count>
      <attachid>448095</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-12-30 06:12:24 -0800</bug_when>
    <thetext>Created attachment 448095
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829784</commentid>
    <comment_count>5</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2022-01-11 06:29:54 -0800</bug_when>
    <thetext>This needs a rebase now that the patch for bug #234737 has landed =)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829816</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2022-01-11 08:48:39 -0800</bug_when>
    <thetext>(In reply to Adrian Perez from comment #5)
&gt; This needs a rebase now that the patch for bug #234737 has landed =)

Yes, but I noticed some issues that I&apos;m trying to fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829897</commentid>
    <comment_count>7</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2022-01-11 13:13:08 -0800</bug_when>
    <thetext>(In reply to Carlos Garcia Campos from comment #6)
&gt; (In reply to Adrian Perez from comment #5)
&gt; &gt; This needs a rebase now that the patch for bug #234737 has landed =)
&gt; 
&gt; Yes, but I noticed some issues that I&apos;m trying to fix.

Awesome, thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830045</commentid>
    <comment_count>8</comment_count>
      <attachid>448916</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2022-01-12 01:47:35 -0800</bug_when>
    <thetext>Created attachment 448916
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830060</commentid>
    <comment_count>9</comment_count>
      <attachid>448916</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2022-01-12 03:31:35 -0800</bug_when>
    <thetext>Comment on attachment 448916
Patch

Patch LGTM with a small nit to fix before landing 👍️

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

&gt; Source/WebCore/accessibility/atspi/AccessibilityAtspi.cpp:-29
&gt; -#include &lt;wtf/NeverDestroyed.h&gt;

Do not remove the line for &lt;wtf/NeverDestroyed.h&gt;, because it will break
non-unified builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1830079</commentid>
    <comment_count>10</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2022-01-12 04:02:37 -0800</bug_when>
    <thetext>Committed r287918 (245951@trunk): &lt;https://commits.webkit.org/245951@trunk&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>448071</attachid>
            <date>2021-12-29 07:17:00 -0800</date>
            <delta_ts>2021-12-30 03:15:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-atspi-delay-add-accessible.diff</filename>
            <type>text/plain</type>
            <size>11337</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxZDlmNGM0NzY0NDIuLjc0MzI0MmUxYTQyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDMwIEBACisyMDIxLTEyLTI5ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVthMTF5XSBEZWZlciB0aGUgZW1pc3Npb24gb2Yg
QWRkQWNjZXNzaWJsZSBzaWduYWwgd2l0aCBBVFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NzQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gY2FzZSBvZiBub2RlIGFkZGVkIGFuZCByZW1vdmVk
IHF1aWNrbHksIHdlIGp1c3QgYXZvaWQgdGhlIGVtaXNzaW9uIG9mIHRoZSBzaWduYWwuCisKKyAg
ICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FYT2JqZWN0Q2FjaGVBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hlOjphdHRhY2hXcmFwcGVyKTogTm90aWZ5IHRoZSBy
b290IGFib3V0IGl0cyBuZXcgY2hpbGQgZWFybGllciB0byBlbnN1cmUgdGhlIGlzb2xhdGVkIHRy
ZWUKKyAgICAgICAgaXMgY3JlYXRlZCBhcyBzb29uIGFzIHBvc3NpYmxlLgorICAgICAgICAoV2Vi
Q29yZTo6QVhPYmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSk6
IFJlbW92ZSB0aGUgcm9vdCBjYXNlIGZyb20gaGVyZS4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3Np
YmlsaXR5QXRzcGk6OmNhY2hlVXBkYXRlVGltZXJGaXJlZCk6IFVwZGF0ZSB0aGUgY2FjaGUgd2l0
aCBwZW5kaW5nIGFkZHMgYW5kIGVtaXQgdGhlCisgICAgICAgIEFkZEFjY2Vzc2libGUgc2lnbmFs
LgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpzY2hlZHVsZUNhY2hlVXBk
YXRlKTogQ3JlYXRlIHRoZSB1cGRhdGUgY2FjaGUgdGltZXIgaWYgbmVlZGVkIGFuZCBzY2hlZHVs
ZSBhbgorICAgICAgICB1cGRhdGUgaWYgdGhlcmUgaXNuJ3QgYSBwZW5kaW5nIG9uZSBhbHJlYWR5
LgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjphZGRBY2Nlc3NpYmxlKTog
QWRkIG9iamVjdCB0byB0aGUgbGlzdCBhbmQgc2NoZWR1bGUgYSBjYWNoZSB1cGRhdGUuCisgICAg
ICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5QXRzcGk6OnJlbW92ZUFjY2Vzc2libGUpOiBSZXR1
cm4gZWFybHkgaWYgdGhlIG9iamVjdCBpcyBpbiB0aGUgdXBkYXRlIGNhY2hlIGxpc3QuCisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGkuaDoKKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlPYmplY3RBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk6OnJlZ2lzdGVyT2JqZWN0KTog
UmVtb3ZlIHRoZSBjYWxsIHRvIEFjY2Vzc2liaWxpdHlSb290QXRzcGk6OmNoaWxkKCkgd2hlbiBh
bgorICAgICAgICBvYmplY3QgaXMgcmVnaXN0ZXJlZCBiZWZvcmUgYmVpbmcgYXR0YWNoZWQgdG8g
dGhlIGlzb2xhdGVkIG9iamVjdC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vz
c2liaWxpdHlSb290QXRzcGkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJv
b3RBdHNwaTo6Y2hpbGRBZGRlZCk6IFJldHVybiBlYXJseSBpZiB0aGUgZ2l2ZW4gY2hpbGQgaXMg
bm90IHRoZSBjdXJyZW50IG9uZS4KKwogMjAyMS0xMi0yOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3Mg
IDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgQVg6IHdlYiBwcm9jZXNzIGNyYXNoIHdp
dGggaXNvbGF0ZWQgdHJlZSBtb2RlIGVuYWJsZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcAppbmRleCA5MDE5
YzcwZTRiODAuLjNlMTYzNTYxYWUyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BWE9iamVjdENhY2hlQXRzcGkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcApAQCAtMzUsOSArMzUs
MTYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB2b2lkIEFYT2JqZWN0Q2FjaGU6OmF0dGFjaFdy
YXBwZXIoQVhDb3JlT2JqZWN0KiBheE9iamVjdCkKIHsKLSAgICBhdXRvIHdyYXBwZXIgPSBBY2Nl
c3NpYmlsaXR5T2JqZWN0QXRzcGk6OmNyZWF0ZShheE9iamVjdCwgZG9jdW1lbnQoKS5wYWdlKCkt
PmFjY2Vzc2liaWxpdHlSb290T2JqZWN0KCkpOworICAgIGF1dG8qIGF0c3BpUm9vdCA9IGRvY3Vt
ZW50KCkucGFnZSgpLT5hY2Nlc3NpYmlsaXR5Um9vdE9iamVjdCgpOworICAgIGF1dG8gd3JhcHBl
ciA9IEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaTo6Y3JlYXRlKGF4T2JqZWN0LCBhdHNwaVJvb3Qp
OwogICAgIGF4T2JqZWN0LT5zZXRXcmFwcGVyKHdyYXBwZXIucHRyKCkpOwogCisgICAgLy8gSGFu
ZGxlIHRoZSByb290IGVhcmxpZXIgaGVyZSwgc2luY2Ugd2Uga25vdyBpdCBvbmx5IGhhcyBvbmUg
Y2hpbGQuCisgICAgaWYgKCFheE9iamVjdC0+cGFyZW50T2JqZWN0VW5pZ25vcmVkKCkgJiYgYXhP
YmplY3QtPmlzU2Nyb2xsVmlldygpICYmIGF4T2JqZWN0LT5zY3JvbGxWaWV3KCkgPT0gZG9jdW1l
bnQoKS52aWV3KCkgJiYgYXRzcGlSb290KSB7CisgICAgICAgIHdyYXBwZXItPnNldFBhcmVudChu
dWxscHRyKTsgLy8gbnVsbHB0ciBtZWFucyByb290LgorICAgICAgICByZXR1cm47CisgICAgfQor
CiAgICAgbV9kZWZlcnJlZFBhcmVudENoYW5nZWRMaXN0LmFkZChheE9iamVjdCk7CiB9CiAKQEAg
LTQ5LDExICs1Niw4IEBAIHZvaWQgQVhPYmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJy
ZWRDYWNoZVVwZGF0ZSgpCiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgYXV0byogYXhQ
YXJlbnQgPSBheE9iamVjdC5wYXJlbnRPYmplY3RVbmlnbm9yZWQoKTsKLSAgICAgICAgaWYgKCFh
eFBhcmVudCkgewotICAgICAgICAgICAgaWYgKGF4T2JqZWN0LmlzU2Nyb2xsVmlldygpICYmIGF4
T2JqZWN0LnNjcm9sbFZpZXcoKSA9PSBkb2N1bWVudCgpLnZpZXcoKSkKLSAgICAgICAgICAgICAg
ICB3cmFwcGVyLT5zZXRQYXJlbnQobnVsbHB0cik7IC8vIG51bGxwdHIgcGFyZW50IG1lYW5zIHJv
b3QuCisgICAgICAgIGlmICghYXhQYXJlbnQpCiAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
IH0KIAogICAgICAgICBpZiAoYXV0byogYXhQYXJlbnRXcmFwcGVyID0gYXhQYXJlbnQtPndyYXBw
ZXIoKSkKICAgICAgICAgICAgIHdyYXBwZXItPnNldFBhcmVudChheFBhcmVudFdyYXBwZXIpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmls
aXR5QXRzcGkuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3Np
YmlsaXR5QXRzcGkuY3BwCmluZGV4IDc4ZTQxNjgyMTM0ZC4uZDQ3MDBkODQwYTkwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNw
aS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmls
aXR5QXRzcGkuY3BwCkBAIC0yNiw3ICsyNiw2IEBACiAjaW5jbHVkZSA8Z2lvL2dpby5oPgogI2lu
Y2x1ZGUgPGdsaWIvZ2kxOG4tbGliLmg+CiAjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KLSNp
bmNsdWRlIDx3dGYvU2V0Rm9yU2NvcGUuaD4KICNpbmNsdWRlIDx3dGYvU29ydGVkQXJyYXlNYXAu
aD4KICNpbmNsdWRlIDx3dGYvVVVJRC5oPgogCkBAIC03MTMsNyArNzEyLDYgQEAgR0RCdXNJbnRl
cmZhY2VWVGFibGUgQWNjZXNzaWJpbGl0eUF0c3BpOjpzX2NhY2hlRnVuY3Rpb25zID0gewogICAg
ICAgICBSRUxFQVNFX0FTU0VSVCghaXNNYWluVGhyZWFkKCkpOwogICAgICAgICBpZiAoIWdfc3Ry
Y21wMChtZXRob2ROYW1lLCAiR2V0SXRlbXMiKSkgewogICAgICAgICAgICAgYXV0byYgYXRzcGkg
PSAqc3RhdGljX2Nhc3Q8QWNjZXNzaWJpbGl0eUF0c3BpKj4odXNlckRhdGEpOwotICAgICAgICAg
ICAgU2V0Rm9yU2NvcGU8Ym9vbD4gaW5HZXRJdGVtcyhhdHNwaS5tX2luR2V0SXRlbXMsIHRydWUp
OwogICAgICAgICAgICAgR1ZhcmlhbnRCdWlsZGVyIGJ1aWxkZXIgPSBHX1ZBUklBTlRfQlVJTERF
Ul9JTklUKEdfVkFSSUFOVF9UWVBFKCIoIiBHRVRfSVRFTVNfU0lHTkFUVVJFICIpIikpOwogICAg
ICAgICAgICAgZ192YXJpYW50X2J1aWxkZXJfb3BlbigmYnVpbGRlciwgR19WQVJJQU5UX1RZUEUo
R0VUX0lURU1TX1NJR05BVFVSRSkpOwogICAgICAgICAgICAgZm9yIChhdXRvKiByb290T2JqZWN0
IDogYXRzcGkubV9yb290T2JqZWN0cy5rZXlzKCkpIHsKQEAgLTcyMyw2ICs3MjEsMTMgQEAgR0RC
dXNJbnRlcmZhY2VWVGFibGUgQWNjZXNzaWJpbGl0eUF0c3BpOjpzX2NhY2hlRnVuY3Rpb25zID0g
ewogICAgICAgICAgICAgICAgIGdfdmFyaWFudF9idWlsZGVyX2Nsb3NlKCZidWlsZGVyKTsKICAg
ICAgICAgICAgIH0KIAorICAgICAgICAgICAgLy8gSWYgd2UgaGF2ZSBwZW5kaW5nIGFkZHMsIGFk
ZCB0aGVtIHRvIHRoZSBjYWNoZSBoZXJlIGFuZCBhdm9pZAorICAgICAgICAgICAgLy8gc2VuZGlu
ZyB0aGUgYWRkQWNjZXNzaWJsZSBzaWduYWwuCisgICAgICAgICAgICB3aGlsZSAoIWF0c3BpLm1f
Y2FjaGVVcGRhdGVMaXN0LmlzRW1wdHkoKSkgeworICAgICAgICAgICAgICAgIGF1dG8gYXRzcGlP
YmplY3QgPSBhdHNwaS5tX2NhY2hlVXBkYXRlTGlzdC50YWtlRmlyc3QoKTsKKyAgICAgICAgICAg
ICAgICBhdHNwaS5tX2NhY2hlLmFkZChhdHNwaU9iamVjdC0+cGF0aCgpLCBhdHNwaU9iamVjdC5n
ZXQoKSk7CisgICAgICAgICAgICB9CisKICAgICAgICAgICAgIC8vIFdlIG5lZWQgdG8gY2FsbCB1
cGRhdGVCYWNraW5nU3RvcmUoKSBvbiBldmVyeSBvYmplY3QgYmVmb3JlIGNhbGxpbmcgc2VyaWFs
aXplKCkKICAgICAgICAgICAgIC8vIGFuZCB1cGRhdGluZyB0aGUgYmFja2luZyBzdG9yZSBjYW4g
ZGV0YWNoIHRoZSBvYmplY3QgYW5kIHJlbW92ZSBpdCBmcm9tIHRoZSBjYWNoZS4KICAgICAgICAg
ICAgIGF1dG8gcGF0aHMgPSBjb3B5VG9WZWN0b3IoYXRzcGkubV9jYWNoZS5rZXlzKCkpOwpAQCAt
NzU5LDMwICs3NjQsNTUgQEAgdm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6OmVuc3VyZUNhY2hlKCkK
ICAgICBtX2NhY2hlSUQgPSBnX2RidXNfY29ubmVjdGlvbl9yZWdpc3Rlcl9vYmplY3QobV9jb25u
ZWN0aW9uLmdldCgpLCAiL29yZy9hMTF5L2F0c3BpL2NhY2hlIiwgY29uc3RfY2FzdDxHREJ1c0lu
dGVyZmFjZUluZm8qPigmd2Via2l0X2NhY2hlX2ludGVyZmFjZSksICZzX2NhY2hlRnVuY3Rpb25z
LCB0aGlzLCBudWxscHRyLCBudWxscHRyKTsKIH0KIAotdm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6
OmFkZEFjY2Vzc2libGUoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCkKK3Zv
aWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpjYWNoZVVwZGF0ZVRpbWVyRmlyZWQoKQoreworICAgIHdo
aWxlICghbV9jYWNoZVVwZGF0ZUxpc3QuaXNFbXB0eSgpKSB7CisgICAgICAgIGF1dG8gYXRzcGlP
YmplY3QgPSBtX2NhY2hlVXBkYXRlTGlzdC50YWtlRmlyc3QoKTsKKyAgICAgICAgYXRzcGlPYmpl
Y3QtPnVwZGF0ZUJhY2tpbmdTdG9yZSgpOworICAgICAgICBpZiAoYXRzcGlPYmplY3QtPmlzRGVm
dW5jdCgpKQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgYXV0byBhZGRSZXN1bHQg
PSBtX2NhY2hlLmFkZChhdHNwaU9iamVjdC0+cGF0aCgpLCBhdHNwaU9iamVjdC5nZXQoKSk7Cisg
ICAgICAgIGlmICghYWRkUmVzdWx0LmlzTmV3RW50cnkpCisgICAgICAgICAgICBjb250aW51ZTsK
KworICAgICAgICBHVmFyaWFudEJ1aWxkZXIgYnVpbGRlciA9IEdfVkFSSUFOVF9CVUlMREVSX0lO
SVQoR19WQVJJQU5UX1RZUEUoIigiIElURU1fU0lHTkFUVVJFICIpIikpOworICAgICAgICBhdHNw
aU9iamVjdC0+c2VyaWFsaXplKCZidWlsZGVyKTsKKyAgICAgICAgZ19kYnVzX2Nvbm5lY3Rpb25f
ZW1pdF9zaWduYWwobV9jb25uZWN0aW9uLmdldCgpLCBudWxscHRyLCAiL29yZy9hMTF5L2F0c3Bp
L2NhY2hlIiwgIm9yZy5hMTF5LmF0c3BpLkNhY2hlIiwgIkFkZEFjY2Vzc2libGUiLAorICAgICAg
ICAgICAgZ192YXJpYW50X25ldygiKEAoIiBJVEVNX1NJR05BVFVSRSAiKSkiLCBnX3ZhcmlhbnRf
YnVpbGRlcl9lbmQoJmJ1aWxkZXIpKSwgbnVsbHB0cik7CisgICAgfQorfQorCit2b2lkIEFjY2Vz
c2liaWxpdHlBdHNwaTo6c2NoZWR1bGVDYWNoZVVwZGF0ZSgpCiB7CiAgICAgUkVMRUFTRV9BU1NF
UlQoIWlzTWFpblRocmVhZCgpKTsKLSAgICBpZiAoIW1fY29ubmVjdGlvbikKLSAgICAgICAgcmV0
dXJuOworICAgIGlmICghbV9jYWNoZVVwZGF0ZVRpbWVyKQorICAgICAgICBtX2NhY2hlVXBkYXRl
VGltZXIgPSBtYWtlVW5pcXVlPFJ1bkxvb3A6OlRpbWVyPEFjY2Vzc2liaWxpdHlBdHNwaT4+KFJ1
bkxvb3A6OmN1cnJlbnQoKSwgdGhpcywgJkFjY2Vzc2liaWxpdHlBdHNwaTo6Y2FjaGVVcGRhdGVU
aW1lckZpcmVkKTsKIAotICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9jYWNoZS5hZGQoYXRzcGlPYmpl
Y3QucGF0aCgpLCAmYXRzcGlPYmplY3QpOwotICAgIGlmICghYWRkUmVzdWx0LmlzTmV3RW50cnkp
Ci0gICAgICAgIHJldHVybjsKKyAgICBpZiAoIW1fY2FjaGVVcGRhdGVUaW1lci0+aXNBY3RpdmUo
KSkKKyAgICAgICAgbV9jYWNoZVVwZGF0ZVRpbWVyLT5zdGFydE9uZVNob3QoMF9zKTsKK30KIAot
ICAgIGlmIChtX2luR2V0SXRlbXMpCit2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6YWRkQWNjZXNz
aWJsZShBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQoreworICAgIFJFTEVB
U0VfQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CisgICAgaWYgKCFtX2Nvbm5lY3Rpb24pCiAgICAg
ICAgIHJldHVybjsKIAotICAgIEdWYXJpYW50QnVpbGRlciBidWlsZGVyID0gR19WQVJJQU5UX0JV
SUxERVJfSU5JVChHX1ZBUklBTlRfVFlQRSgiKCIgSVRFTV9TSUdOQVRVUkUgIikiKSk7Ci0gICAg
YXRzcGlPYmplY3Quc2VyaWFsaXplKCZidWlsZGVyKTsKLSAgICBnX2RidXNfY29ubmVjdGlvbl9l
bWl0X3NpZ25hbChtX2Nvbm5lY3Rpb24uZ2V0KCksIG51bGxwdHIsICIvb3JnL2ExMXkvYXRzcGkv
Y2FjaGUiLCAib3JnLmExMXkuYXRzcGkuQ2FjaGUiLCAiQWRkQWNjZXNzaWJsZSIsCi0gICAgICAg
IGdfdmFyaWFudF9uZXcoIihAKCIgSVRFTV9TSUdOQVRVUkUgIikpIiwgZ192YXJpYW50X2J1aWxk
ZXJfZW5kKCZidWlsZGVyKSksIG51bGxwdHIpOworICAgIG1fY2FjaGVVcGRhdGVMaXN0LmFkZCgm
YXRzcGlPYmplY3QpOworICAgIHNjaGVkdWxlQ2FjaGVVcGRhdGUoKTsKIH0KIAogdm9pZCBBY2Nl
c3NpYmlsaXR5QXRzcGk6OnJlbW92ZUFjY2Vzc2libGUoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3Bp
JiBhdHNwaU9iamVjdCkKIHsKICAgICBSRUxFQVNFX0FTU0VSVCghaXNNYWluVGhyZWFkKCkpOwor
ICAgIGlmIChtX2NhY2hlVXBkYXRlTGlzdC5yZW1vdmUoJmF0c3BpT2JqZWN0KSkKKyAgICAgICAg
cmV0dXJuOworCiAgICAgY29uc3QgYXV0byYgcGF0aCA9IGF0c3BpT2JqZWN0LnBhdGgoKTsKLSAg
ICBtX2NhY2hlLnJlbW92ZShwYXRoKTsKKyAgICBpZiAoIW1fY2FjaGUucmVtb3ZlKHBhdGgpKQor
ICAgICAgICByZXR1cm47CisKICAgICBnX2RidXNfY29ubmVjdGlvbl9lbWl0X3NpZ25hbChtX2Nv
bm5lY3Rpb24uZ2V0KCksIG51bGxwdHIsICIvb3JnL2ExMXkvYXRzcGkvY2FjaGUiLCAib3JnLmEx
MXkuYXRzcGkuQ2FjaGUiLCAiUmVtb3ZlQWNjZXNzaWJsZSIsCiAgICAgICAgIGdfdmFyaWFudF9u
ZXcoIigoc28pKSIsIHVuaXF1ZU5hbWUoKSwgcGF0aC51dGY4KCkuZGF0YSgpKSwgbnVsbHB0cik7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vz
c2liaWxpdHlBdHNwaS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nl
c3NpYmlsaXR5QXRzcGkuaAppbmRleCBhMDkwNGFiMjEwYmYuLmMwZWNkOGU1MDE4MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRz
cGkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxp
dHlBdHNwaS5oCkBAIC0yMyw2ICsyMyw3IEBACiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5k
bGVyLmg+CiAjaW5jbHVkZSA8d3RmL0Zhc3RNYWxsb2MuaD4KICNpbmNsdWRlIDx3dGYvSGFzaE1h
cC5oPgorI2luY2x1ZGUgPHd0Zi9MaXN0SGFzaFNldC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KICNpbmNsdWRlIDx3dGYvV29ya1F1ZXVlLmg+CiAjaW5jbHVkZSA8d3RmL2dsaWIvR1JlZlB0
ci5oPgpAQCAtOTgsNiArOTksOCBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBlbnN1cmVDYWNoZSgp
OwogICAgIHZvaWQgcmVtb3ZlQWNjZXNzaWJsZShBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmKTsK
KyAgICB2b2lkIHNjaGVkdWxlQ2FjaGVVcGRhdGUoKTsKKyAgICB2b2lkIGNhY2hlVXBkYXRlVGlt
ZXJGaXJlZCgpOwogCiAgICAgYm9vbCBzaG91bGRFbWl0U2lnbmFsKGNvbnN0IGNoYXIqIGludGVy
ZmFjZSwgY29uc3QgY2hhciogbmFtZSwgY29uc3QgY2hhciogZGV0YWlsID0gIiIpOwogCkBAIC0x
MjIsNyArMTI1LDggQEAgcHJpdmF0ZToKICAgICBIYXNoTWFwPEFjY2Vzc2liaWxpdHlPYmplY3RB
dHNwaSosIFZlY3Rvcjx1bnNpZ25lZCwgMjA+PiBtX2F0c3BpSHlwZXJsaW5rczsKICAgICB1bnNp
Z25lZCBtX2NhY2hlSUQgeyAwIH07CiAgICAgSGFzaE1hcDxTdHJpbmcsIEFjY2Vzc2liaWxpdHlP
YmplY3RBdHNwaSo+IG1fY2FjaGU7Ci0gICAgYm9vbCBtX2luR2V0SXRlbXMgeyBmYWxzZSB9Owor
ICAgIExpc3RIYXNoU2V0PFJlZlB0cjxBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk+PiBtX2NhY2hl
VXBkYXRlTGlzdDsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8UnVuTG9vcDo6VGltZXI8QWNjZXNzaWJp
bGl0eUF0c3BpPj4gbV9jYWNoZVVwZGF0ZVRpbWVyOwogI2lmIEVOQUJMRShERVZFTE9QRVJfTU9E
RSkKICAgICBIYXNoTWFwPHZvaWQqLCBOb3RpZmljYXRpb25PYnNlcnZlcj4gbV9ub3RpZmljYXRp
b25PYnNlcnZlcnM7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpLmNwcAppbmRleCAx
MDEzMDc4MWIzNGIuLmUzYjY3ZDkwNWMxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpLmNw
cApAQCAtNTM0LDE3ICs1MzQsNiBAQCBib29sIEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaTo6cmVn
aXN0ZXJPYmplY3QoKQogICAgICAgICBpbnRlcmZhY2VzLmFwcGVuZCh7IGNvbnN0X2Nhc3Q8R0RC
dXNJbnRlcmZhY2VJbmZvKj4oJndlYmtpdF90YWJsZV9pbnRlcmZhY2UpLCAmc190YWJsZUZ1bmN0
aW9ucyB9KTsKICAgICBpZiAobV9pbnRlcmZhY2VzLmNvbnRhaW5zKEludGVyZmFjZTo6VGFibGVD
ZWxsKSkKICAgICAgICAgaW50ZXJmYWNlcy5hcHBlbmQoeyBjb25zdF9jYXN0PEdEQnVzSW50ZXJm
YWNlSW5mbyo+KCZ3ZWJraXRfdGFibGVfY2VsbF9pbnRlcmZhY2UpLCAmc190YWJsZUNlbGxGdW5j
dGlvbnMgfSk7Ci0gICAgaWYgKCFtX2F4T2JqZWN0KSB7Ci0gICAgICAgIC8vIElzb2xhdGVkIHRy
ZWUgaGFzbid0IGJlZW4gY3JlYXRlZCB5ZXQsIGNhbGwgQWNjZXNzaWJpbGl0eVJvb3RBdHNwaTo6
Y2hpbGQoKQotICAgICAgICAvLyB0byBjcmVhdGUgaXQgYmVmb3JlIHJlZ2lzdGVyaW5nIHRoZSBv
YmplY3QuCi0gICAgICAgIEFjY2Vzc2liaWxpdHk6OnBlcmZvcm1GdW5jdGlvbk9uTWFpblRocmVh
ZChbdGhpc10gewotICAgICAgICAgICAgaWYgKCFtX2NvcmVPYmplY3QpCi0gICAgICAgICAgICAg
ICAgcmV0dXJuOwotCi0gICAgICAgICAgICBpZiAoYXV0byogYXRzcGlSb290ID0gcm9vdCgpKQot
ICAgICAgICAgICAgICAgIGF0c3BpUm9vdC0+Y2hpbGQoKTsKLSAgICAgICAgfSk7Ci0gICAgfQog
CiAgICAgbV9wYXRoID0gQWNjZXNzaWJpbGl0eUF0c3BpOjpjdXJyZW50KCkucmVnaXN0ZXJPYmpl
Y3QoKnRoaXMsIFdURk1vdmUoaW50ZXJmYWNlcykpOwogICAgIEFjY2Vzc2liaWxpdHlBdHNwaTo6
Y3VycmVudCgpLmFkZEFjY2Vzc2libGUoKnRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eVJvb3RBdHNwaS5jcHAK
aW5kZXggMzA4YTRiNmVmMjM1Li4xYTQ0MTI2Y2E2MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eVJvb3RBdHNwaS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3Bp
LmNwcApAQCAtMjY3LDYgKzI2Nyw5IEBAIEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSogQWNjZXNz
aWJpbGl0eVJvb3RBdHNwaTo6Y2hpbGQoKSBjb25zdAogCiB2b2lkIEFjY2Vzc2liaWxpdHlSb290
QXRzcGk6OmNoaWxkQWRkZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBjaGlsZCkKIHsKKyAg
ICBpZiAodGhpcy0+Y2hpbGQoKSAhPSAmY2hpbGQpCisgICAgICAgIHJldHVybjsKKwogICAgIEFj
Y2Vzc2liaWxpdHlBdHNwaTo6Y3VycmVudCgpLmNoaWxkcmVuQ2hhbmdlZCgqdGhpcywgY2hpbGQs
IEFjY2Vzc2liaWxpdHlBdHNwaTo6Q2hpbGRyZW5DaGFuZ2VkOjpBZGRlZCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>448090</attachid>
            <date>2021-12-30 03:15:33 -0800</date>
            <delta_ts>2021-12-30 05:30:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-atspi-delay-add.diff</filename>
            <type>text/plain</type>
            <size>11492</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxZDlmNGM0NzY0NDIuLjc0MzI0MmUxYTQyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDMwIEBACisyMDIxLTEyLTI5ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVthMTF5XSBEZWZlciB0aGUgZW1pc3Npb24gb2Yg
QWRkQWNjZXNzaWJsZSBzaWduYWwgd2l0aCBBVFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NzQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gY2FzZSBvZiBub2RlIGFkZGVkIGFuZCByZW1vdmVk
IHF1aWNrbHksIHdlIGp1c3QgYXZvaWQgdGhlIGVtaXNzaW9uIG9mIHRoZSBzaWduYWwuCisKKyAg
ICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FYT2JqZWN0Q2FjaGVBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hlOjphdHRhY2hXcmFwcGVyKTogTm90aWZ5IHRoZSBy
b290IGFib3V0IGl0cyBuZXcgY2hpbGQgZWFybGllciB0byBlbnN1cmUgdGhlIGlzb2xhdGVkIHRy
ZWUKKyAgICAgICAgaXMgY3JlYXRlZCBhcyBzb29uIGFzIHBvc3NpYmxlLgorICAgICAgICAoV2Vi
Q29yZTo6QVhPYmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSk6
IFJlbW92ZSB0aGUgcm9vdCBjYXNlIGZyb20gaGVyZS4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3Np
YmlsaXR5QXRzcGk6OmNhY2hlVXBkYXRlVGltZXJGaXJlZCk6IFVwZGF0ZSB0aGUgY2FjaGUgd2l0
aCBwZW5kaW5nIGFkZHMgYW5kIGVtaXQgdGhlCisgICAgICAgIEFkZEFjY2Vzc2libGUgc2lnbmFs
LgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpzY2hlZHVsZUNhY2hlVXBk
YXRlKTogQ3JlYXRlIHRoZSB1cGRhdGUgY2FjaGUgdGltZXIgaWYgbmVlZGVkIGFuZCBzY2hlZHVs
ZSBhbgorICAgICAgICB1cGRhdGUgaWYgdGhlcmUgaXNuJ3QgYSBwZW5kaW5nIG9uZSBhbHJlYWR5
LgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjphZGRBY2Nlc3NpYmxlKTog
QWRkIG9iamVjdCB0byB0aGUgbGlzdCBhbmQgc2NoZWR1bGUgYSBjYWNoZSB1cGRhdGUuCisgICAg
ICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5QXRzcGk6OnJlbW92ZUFjY2Vzc2libGUpOiBSZXR1
cm4gZWFybHkgaWYgdGhlIG9iamVjdCBpcyBpbiB0aGUgdXBkYXRlIGNhY2hlIGxpc3QuCisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGkuaDoKKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlPYmplY3RBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk6OnJlZ2lzdGVyT2JqZWN0KTog
UmVtb3ZlIHRoZSBjYWxsIHRvIEFjY2Vzc2liaWxpdHlSb290QXRzcGk6OmNoaWxkKCkgd2hlbiBh
bgorICAgICAgICBvYmplY3QgaXMgcmVnaXN0ZXJlZCBiZWZvcmUgYmVpbmcgYXR0YWNoZWQgdG8g
dGhlIGlzb2xhdGVkIG9iamVjdC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vz
c2liaWxpdHlSb290QXRzcGkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJv
b3RBdHNwaTo6Y2hpbGRBZGRlZCk6IFJldHVybiBlYXJseSBpZiB0aGUgZ2l2ZW4gY2hpbGQgaXMg
bm90IHRoZSBjdXJyZW50IG9uZS4KKwogMjAyMS0xMi0yOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3Mg
IDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgQVg6IHdlYiBwcm9jZXNzIGNyYXNoIHdp
dGggaXNvbGF0ZWQgdHJlZSBtb2RlIGVuYWJsZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcAppbmRleCA5MDE5
YzcwZTRiODAuLmFlZjVkOTcxMmM4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BWE9iamVjdENhY2hlQXRzcGkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcApAQCAtMzUsMTAgKzM1
LDE4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdm9pZCBBWE9iamVjdENhY2hlOjphdHRhY2hX
cmFwcGVyKEFYQ29yZU9iamVjdCogYXhPYmplY3QpCiB7Ci0gICAgYXV0byB3cmFwcGVyID0gQWNj
ZXNzaWJpbGl0eU9iamVjdEF0c3BpOjpjcmVhdGUoYXhPYmplY3QsIGRvY3VtZW50KCkucGFnZSgp
LT5hY2Nlc3NpYmlsaXR5Um9vdE9iamVjdCgpKTsKKyAgICBhdXRvKiBhdHNwaVJvb3QgPSBkb2N1
bWVudCgpLnBhZ2UoKS0+YWNjZXNzaWJpbGl0eVJvb3RPYmplY3QoKTsKKyAgICBhdXRvIHdyYXBw
ZXIgPSBBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk6OmNyZWF0ZShheE9iamVjdCwgYXRzcGlSb290
KTsKICAgICBheE9iamVjdC0+c2V0V3JhcHBlcih3cmFwcGVyLnB0cigpKTsKIAorICAgIC8vIEhh
bmRsZSB0aGUgcm9vdCBlYXJsaWVyIGhlcmUsIHNpbmNlIHdlIGtub3cgaXQgb25seSBoYXMgb25l
IGNoaWxkLgorICAgIGlmICghYXhPYmplY3QtPnBhcmVudE9iamVjdFVuaWdub3JlZCgpICYmIGF4
T2JqZWN0LT5pc1Njcm9sbFZpZXcoKSAmJiBheE9iamVjdC0+c2Nyb2xsVmlldygpID09IGRvY3Vt
ZW50KCkudmlldygpICYmIGF0c3BpUm9vdCkgeworICAgICAgICB3cmFwcGVyLT5zZXRQYXJlbnQo
bnVsbHB0cik7IC8vIG51bGxwdHIgbWVhbnMgcm9vdC4KKyAgICAgICAgcmV0dXJuOworICAgIH0K
KwogICAgIG1fZGVmZXJyZWRQYXJlbnRDaGFuZ2VkTGlzdC5hZGQoYXhPYmplY3QpOworICAgIG1f
cGVyZm9ybUNhY2hlVXBkYXRlVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7CiB9CiAKIHZvaWQgQVhP
YmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSgpCkBAIC00OSwx
MSArNTcsOCBAQCB2b2lkIEFYT2JqZWN0Q2FjaGU6OnBsYXRmb3JtUGVyZm9ybURlZmVycmVkQ2Fj
aGVVcGRhdGUoKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIGF1dG8qIGF4UGFyZW50
ID0gYXhPYmplY3QucGFyZW50T2JqZWN0VW5pZ25vcmVkKCk7Ci0gICAgICAgIGlmICghYXhQYXJl
bnQpIHsKLSAgICAgICAgICAgIGlmIChheE9iamVjdC5pc1Njcm9sbFZpZXcoKSAmJiBheE9iamVj
dC5zY3JvbGxWaWV3KCkgPT0gZG9jdW1lbnQoKS52aWV3KCkpCi0gICAgICAgICAgICAgICAgd3Jh
cHBlci0+c2V0UGFyZW50KG51bGxwdHIpOyAvLyBudWxscHRyIHBhcmVudCBtZWFucyByb290Lgor
ICAgICAgICBpZiAoIWF4UGFyZW50KQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9CiAK
ICAgICAgICAgaWYgKGF1dG8qIGF4UGFyZW50V3JhcHBlciA9IGF4UGFyZW50LT53cmFwcGVyKCkp
CiAgICAgICAgICAgICB3cmFwcGVyLT5zZXRQYXJlbnQoYXhQYXJlbnRXcmFwcGVyKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0
c3BpLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0
eUF0c3BpLmNwcAppbmRleCA3OGU0MTY4MjEzNGQuLmNmMTZmOTk4ODI3ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0
c3BpLmNwcApAQCAtMjYsNyArMjYsNiBAQAogI2luY2x1ZGUgPGdpby9naW8uaD4KICNpbmNsdWRl
IDxnbGliL2dpMThuLWxpYi5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+Ci0jaW5jbHVk
ZSA8d3RmL1NldEZvclNjb3BlLmg+CiAjaW5jbHVkZSA8d3RmL1NvcnRlZEFycmF5TWFwLmg+CiAj
aW5jbHVkZSA8d3RmL1VVSUQuaD4KIApAQCAtNzEzLDcgKzcxMiw2IEBAIEdEQnVzSW50ZXJmYWNl
VlRhYmxlIEFjY2Vzc2liaWxpdHlBdHNwaTo6c19jYWNoZUZ1bmN0aW9ucyA9IHsKICAgICAgICAg
UkVMRUFTRV9BU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKICAgICAgICAgaWYgKCFnX3N0cmNtcDAo
bWV0aG9kTmFtZSwgIkdldEl0ZW1zIikpIHsKICAgICAgICAgICAgIGF1dG8mIGF0c3BpID0gKnN0
YXRpY19jYXN0PEFjY2Vzc2liaWxpdHlBdHNwaSo+KHVzZXJEYXRhKTsKLSAgICAgICAgICAgIFNl
dEZvclNjb3BlPGJvb2w+IGluR2V0SXRlbXMoYXRzcGkubV9pbkdldEl0ZW1zLCB0cnVlKTsKICAg
ICAgICAgICAgIEdWYXJpYW50QnVpbGRlciBidWlsZGVyID0gR19WQVJJQU5UX0JVSUxERVJfSU5J
VChHX1ZBUklBTlRfVFlQRSgiKCIgR0VUX0lURU1TX1NJR05BVFVSRSAiKSIpKTsKICAgICAgICAg
ICAgIGdfdmFyaWFudF9idWlsZGVyX29wZW4oJmJ1aWxkZXIsIEdfVkFSSUFOVF9UWVBFKEdFVF9J
VEVNU19TSUdOQVRVUkUpKTsKICAgICAgICAgICAgIGZvciAoYXV0byogcm9vdE9iamVjdCA6IGF0
c3BpLm1fcm9vdE9iamVjdHMua2V5cygpKSB7CkBAIC03MzUsNiArNzMzLDE3IEBAIEdEQnVzSW50
ZXJmYWNlVlRhYmxlIEFjY2Vzc2liaWxpdHlBdHNwaTo6c19jYWNoZUZ1bmN0aW9ucyA9IHsKICAg
ICAgICAgICAgICAgICB3cmFwcGVyLT5zZXJpYWxpemUoJmJ1aWxkZXIpOwogICAgICAgICAgICAg
ICAgIGdfdmFyaWFudF9idWlsZGVyX2Nsb3NlKCZidWlsZGVyKTsKICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgLy8gSW5jbHVkZSB0aGUgcGVuZGluZyBhZGRzIHRvby4KKyAgICAgICAgICAg
IGZvciAoYXV0byYgYXRzcGlPYmplY3QgOiBhdHNwaS5tX2NhY2hlVXBkYXRlTGlzdCkgeworICAg
ICAgICAgICAgICAgIGF0c3BpT2JqZWN0LT51cGRhdGVCYWNraW5nU3RvcmUoKTsKKyAgICAgICAg
ICAgICAgICBpZiAoYXRzcGlPYmplY3QtPmlzRGVmdW5jdCgpKQorICAgICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKKyAgICAgICAgICAgICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9vcGVuKCZidWls
ZGVyLCBHX1ZBUklBTlRfVFlQRSgiKCIgSVRFTV9TSUdOQVRVUkUgIikiKSk7CisgICAgICAgICAg
ICAgICAgYXRzcGlPYmplY3QtPnNlcmlhbGl6ZSgmYnVpbGRlcik7CisgICAgICAgICAgICAgICAg
Z192YXJpYW50X2J1aWxkZXJfY2xvc2UoJmJ1aWxkZXIpOworICAgICAgICAgICAgfQorCiAgICAg
ICAgICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9jbG9zZSgmYnVpbGRlcik7CiAgICAgICAgICAgICBn
X2RidXNfbWV0aG9kX2ludm9jYXRpb25fcmV0dXJuX3ZhbHVlKGludm9jYXRpb24sIGdfdmFyaWFu
dF9idWlsZGVyX2VuZCgmYnVpbGRlcikpOwogICAgICAgICB9CkBAIC03NTksMzAgKzc2OCw1NSBA
QCB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6ZW5zdXJlQ2FjaGUoKQogICAgIG1fY2FjaGVJRCA9
IGdfZGJ1c19jb25uZWN0aW9uX3JlZ2lzdGVyX29iamVjdChtX2Nvbm5lY3Rpb24uZ2V0KCksICIv
b3JnL2ExMXkvYXRzcGkvY2FjaGUiLCBjb25zdF9jYXN0PEdEQnVzSW50ZXJmYWNlSW5mbyo+KCZ3
ZWJraXRfY2FjaGVfaW50ZXJmYWNlKSwgJnNfY2FjaGVGdW5jdGlvbnMsIHRoaXMsIG51bGxwdHIs
IG51bGxwdHIpOwogfQogCi12b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6YWRkQWNjZXNzaWJsZShB
Y2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQordm9pZCBBY2Nlc3NpYmlsaXR5
QXRzcGk6OmNhY2hlVXBkYXRlVGltZXJGaXJlZCgpCit7CisgICAgd2hpbGUgKCFtX2NhY2hlVXBk
YXRlTGlzdC5pc0VtcHR5KCkpIHsKKyAgICAgICAgYXV0byBhdHNwaU9iamVjdCA9IG1fY2FjaGVV
cGRhdGVMaXN0LnRha2VGaXJzdCgpOworICAgICAgICBhdHNwaU9iamVjdC0+dXBkYXRlQmFja2lu
Z1N0b3JlKCk7CisgICAgICAgIGlmIChhdHNwaU9iamVjdC0+aXNEZWZ1bmN0KCkpCisgICAgICAg
ICAgICBjb250aW51ZTsKKworICAgICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fY2FjaGUuYWRkKGF0
c3BpT2JqZWN0LT5wYXRoKCksIGF0c3BpT2JqZWN0LmdldCgpKTsKKyAgICAgICAgaWYgKCFhZGRS
ZXN1bHQuaXNOZXdFbnRyeSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgIEdWYXJp
YW50QnVpbGRlciBidWlsZGVyID0gR19WQVJJQU5UX0JVSUxERVJfSU5JVChHX1ZBUklBTlRfVFlQ
RSgiKCIgSVRFTV9TSUdOQVRVUkUgIikiKSk7CisgICAgICAgIGF0c3BpT2JqZWN0LT5zZXJpYWxp
emUoJmJ1aWxkZXIpOworICAgICAgICBnX2RidXNfY29ubmVjdGlvbl9lbWl0X3NpZ25hbChtX2Nv
bm5lY3Rpb24uZ2V0KCksIG51bGxwdHIsICIvb3JnL2ExMXkvYXRzcGkvY2FjaGUiLCAib3JnLmEx
MXkuYXRzcGkuQ2FjaGUiLCAiQWRkQWNjZXNzaWJsZSIsCisgICAgICAgICAgICBnX3ZhcmlhbnRf
bmV3KCIoQCgiIElURU1fU0lHTkFUVVJFICIpKSIsIGdfdmFyaWFudF9idWlsZGVyX2VuZCgmYnVp
bGRlcikpLCBudWxscHRyKTsKKyAgICB9Cit9CisKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpz
Y2hlZHVsZUNhY2hlVXBkYXRlKCkKIHsKICAgICBSRUxFQVNFX0FTU0VSVCghaXNNYWluVGhyZWFk
KCkpOwotICAgIGlmICghbV9jb25uZWN0aW9uKQotICAgICAgICByZXR1cm47CisgICAgaWYgKCFt
X2NhY2hlVXBkYXRlVGltZXIpCisgICAgICAgIG1fY2FjaGVVcGRhdGVUaW1lciA9IG1ha2VVbmlx
dWU8UnVuTG9vcDo6VGltZXI8QWNjZXNzaWJpbGl0eUF0c3BpPj4oUnVuTG9vcDo6Y3VycmVudCgp
LCB0aGlzLCAmQWNjZXNzaWJpbGl0eUF0c3BpOjpjYWNoZVVwZGF0ZVRpbWVyRmlyZWQpOwogCi0g
ICAgYXV0byBhZGRSZXN1bHQgPSBtX2NhY2hlLmFkZChhdHNwaU9iamVjdC5wYXRoKCksICZhdHNw
aU9iamVjdCk7Ci0gICAgaWYgKCFhZGRSZXN1bHQuaXNOZXdFbnRyeSkKLSAgICAgICAgcmV0dXJu
OworICAgIGlmICghbV9jYWNoZVVwZGF0ZVRpbWVyLT5pc0FjdGl2ZSgpKQorICAgICAgICBtX2Nh
Y2hlVXBkYXRlVGltZXItPnN0YXJ0T25lU2hvdCgwX3MpOworfQogCi0gICAgaWYgKG1faW5HZXRJ
dGVtcykKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjphZGRBY2Nlc3NpYmxlKEFjY2Vzc2liaWxp
dHlPYmplY3RBdHNwaSYgYXRzcGlPYmplY3QpCit7CisgICAgUkVMRUFTRV9BU1NFUlQoIWlzTWFp
blRocmVhZCgpKTsKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgR1ZhcmlhbnRCdWlsZGVyIGJ1aWxkZXIgPSBHX1ZBUklBTlRfQlVJTERFUl9JTklUKEdfVkFS
SUFOVF9UWVBFKCIoIiBJVEVNX1NJR05BVFVSRSAiKSIpKTsKLSAgICBhdHNwaU9iamVjdC5zZXJp
YWxpemUoJmJ1aWxkZXIpOwotICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29u
bmVjdGlvbi5nZXQoKSwgbnVsbHB0ciwgIi9vcmcvYTExeS9hdHNwaS9jYWNoZSIsICJvcmcuYTEx
eS5hdHNwaS5DYWNoZSIsICJBZGRBY2Nlc3NpYmxlIiwKLSAgICAgICAgZ192YXJpYW50X25ldygi
KEAoIiBJVEVNX1NJR05BVFVSRSAiKSkiLCBnX3ZhcmlhbnRfYnVpbGRlcl9lbmQoJmJ1aWxkZXIp
KSwgbnVsbHB0cik7CisgICAgbV9jYWNoZVVwZGF0ZUxpc3QuYWRkKCZhdHNwaU9iamVjdCk7Cisg
ICAgc2NoZWR1bGVDYWNoZVVwZGF0ZSgpOwogfQogCiB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6
cmVtb3ZlQWNjZXNzaWJsZShBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQog
ewogICAgIFJFTEVBU0VfQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CisgICAgaWYgKG1fY2FjaGVV
cGRhdGVMaXN0LnJlbW92ZSgmYXRzcGlPYmplY3QpKQorICAgICAgICByZXR1cm47CisKICAgICBj
b25zdCBhdXRvJiBwYXRoID0gYXRzcGlPYmplY3QucGF0aCgpOwotICAgIG1fY2FjaGUucmVtb3Zl
KHBhdGgpOworICAgIGlmICghbV9jYWNoZS5yZW1vdmUocGF0aCkpCisgICAgICAgIHJldHVybjsK
KwogICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29ubmVjdGlvbi5nZXQoKSwg
bnVsbHB0ciwgIi9vcmcvYTExeS9hdHNwaS9jYWNoZSIsICJvcmcuYTExeS5hdHNwaS5DYWNoZSIs
ICJSZW1vdmVBY2Nlc3NpYmxlIiwKICAgICAgICAgZ192YXJpYW50X25ldygiKChzbykpIiwgdW5p
cXVlTmFtZSgpLCBwYXRoLnV0ZjgoKS5kYXRhKCkpLCBudWxscHRyKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5o
CmluZGV4IGEwOTA0YWIyMTBiZi4uYzBlY2Q4ZTUwMTgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgKQEAgLTIz
LDYgKzIzLDcgQEAKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRl
IDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8
d3RmL0xpc3RIYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0
Zi9Xb3JrUXVldWUuaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HUmVmUHRyLmg+CkBAIC05OCw2ICs5
OSw4IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGVuc3VyZUNhY2hlKCk7CiAgICAgdm9pZCByZW1v
dmVBY2Nlc3NpYmxlKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYpOworICAgIHZvaWQgc2NoZWR1
bGVDYWNoZVVwZGF0ZSgpOworICAgIHZvaWQgY2FjaGVVcGRhdGVUaW1lckZpcmVkKCk7CiAKICAg
ICBib29sIHNob3VsZEVtaXRTaWduYWwoY29uc3QgY2hhciogaW50ZXJmYWNlLCBjb25zdCBjaGFy
KiBuYW1lLCBjb25zdCBjaGFyKiBkZXRhaWwgPSAiIik7CiAKQEAgLTEyMiw3ICsxMjUsOCBAQCBw
cml2YXRlOgogICAgIEhhc2hNYXA8QWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpKiwgVmVjdG9yPHVu
c2lnbmVkLCAyMD4+IG1fYXRzcGlIeXBlcmxpbmtzOwogICAgIHVuc2lnbmVkIG1fY2FjaGVJRCB7
IDAgfTsKICAgICBIYXNoTWFwPFN0cmluZywgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpKj4gbV9j
YWNoZTsKLSAgICBib29sIG1faW5HZXRJdGVtcyB7IGZhbHNlIH07CisgICAgTGlzdEhhc2hTZXQ8
UmVmUHRyPEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaT4+IG1fY2FjaGVVcGRhdGVMaXN0OworICAg
IHN0ZDo6dW5pcXVlX3B0cjxSdW5Mb29wOjpUaW1lcjxBY2Nlc3NpYmlsaXR5QXRzcGk+PiBtX2Nh
Y2hlVXBkYXRlVGltZXI7CiAjaWYgRU5BQkxFKERFVkVMT1BFUl9NT0RFKQogICAgIEhhc2hNYXA8
dm9pZCosIE5vdGlmaWNhdGlvbk9ic2VydmVyPiBtX25vdGlmaWNhdGlvbk9ic2VydmVyczsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nl
c3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9h
dHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwCmluZGV4IDEwMTMwNzgxYjM0Yi4uZTNi
NjdkOTA1YzExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3Bp
L0FjY2Vzc2liaWxpdHlPYmplY3RBdHNwaS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwCkBAIC01MzQsMTcgKzUz
NCw2IEBAIGJvb2wgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpOjpyZWdpc3Rlck9iamVjdCgpCiAg
ICAgICAgIGludGVyZmFjZXMuYXBwZW5kKHsgY29uc3RfY2FzdDxHREJ1c0ludGVyZmFjZUluZm8q
Pigmd2Via2l0X3RhYmxlX2ludGVyZmFjZSksICZzX3RhYmxlRnVuY3Rpb25zIH0pOwogICAgIGlm
IChtX2ludGVyZmFjZXMuY29udGFpbnMoSW50ZXJmYWNlOjpUYWJsZUNlbGwpKQogICAgICAgICBp
bnRlcmZhY2VzLmFwcGVuZCh7IGNvbnN0X2Nhc3Q8R0RCdXNJbnRlcmZhY2VJbmZvKj4oJndlYmtp
dF90YWJsZV9jZWxsX2ludGVyZmFjZSksICZzX3RhYmxlQ2VsbEZ1bmN0aW9ucyB9KTsKLSAgICBp
ZiAoIW1fYXhPYmplY3QpIHsKLSAgICAgICAgLy8gSXNvbGF0ZWQgdHJlZSBoYXNuJ3QgYmVlbiBj
cmVhdGVkIHlldCwgY2FsbCBBY2Nlc3NpYmlsaXR5Um9vdEF0c3BpOjpjaGlsZCgpCi0gICAgICAg
IC8vIHRvIGNyZWF0ZSBpdCBiZWZvcmUgcmVnaXN0ZXJpbmcgdGhlIG9iamVjdC4KLSAgICAgICAg
QWNjZXNzaWJpbGl0eTo6cGVyZm9ybUZ1bmN0aW9uT25NYWluVGhyZWFkKFt0aGlzXSB7Ci0gICAg
ICAgICAgICBpZiAoIW1fY29yZU9iamVjdCkKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0KLSAg
ICAgICAgICAgIGlmIChhdXRvKiBhdHNwaVJvb3QgPSByb290KCkpCi0gICAgICAgICAgICAgICAg
YXRzcGlSb290LT5jaGlsZCgpOwotICAgICAgICB9KTsKLSAgICB9CiAKICAgICBtX3BhdGggPSBB
Y2Nlc3NpYmlsaXR5QXRzcGk6OmN1cnJlbnQoKS5yZWdpc3Rlck9iamVjdCgqdGhpcywgV1RGTW92
ZShpbnRlcmZhY2VzKSk7CiAgICAgQWNjZXNzaWJpbGl0eUF0c3BpOjpjdXJyZW50KCkuYWRkQWNj
ZXNzaWJsZSgqdGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L2F0c3BpL0FjY2Vzc2liaWxpdHlSb290QXRzcGkuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNwcAppbmRleCAzMDhhNGI2ZWYy
MzUuLjFhNDQxMjZjYTYzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlSb290QXRzcGkuY3BwCkBAIC0yNjcsNiAr
MjY3LDkgQEAgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpKiBBY2Nlc3NpYmlsaXR5Um9vdEF0c3Bp
OjpjaGlsZCgpIGNvbnN0CiAKIHZvaWQgQWNjZXNzaWJpbGl0eVJvb3RBdHNwaTo6Y2hpbGRBZGRl
ZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGNoaWxkKQogeworICAgIGlmICh0aGlzLT5jaGls
ZCgpICE9ICZjaGlsZCkKKyAgICAgICAgcmV0dXJuOworCiAgICAgQWNjZXNzaWJpbGl0eUF0c3Bp
OjpjdXJyZW50KCkuY2hpbGRyZW5DaGFuZ2VkKCp0aGlzLCBjaGlsZCwgQWNjZXNzaWJpbGl0eUF0
c3BpOjpDaGlsZHJlbkNoYW5nZWQ6OkFkZGVkKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>448094</attachid>
            <date>2021-12-30 05:30:29 -0800</date>
            <delta_ts>2021-12-30 06:12:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-atspi-delay-add.diff</filename>
            <type>text/plain</type>
            <size>12613</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxZDlmNGM0NzY0NDIuLjc0MzI0MmUxYTQyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDMwIEBACisyMDIxLTEyLTI5ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVthMTF5XSBEZWZlciB0aGUgZW1pc3Npb24gb2Yg
QWRkQWNjZXNzaWJsZSBzaWduYWwgd2l0aCBBVFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NzQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gY2FzZSBvZiBub2RlIGFkZGVkIGFuZCByZW1vdmVk
IHF1aWNrbHksIHdlIGp1c3QgYXZvaWQgdGhlIGVtaXNzaW9uIG9mIHRoZSBzaWduYWwuCisKKyAg
ICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FYT2JqZWN0Q2FjaGVBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hlOjphdHRhY2hXcmFwcGVyKTogTm90aWZ5IHRoZSBy
b290IGFib3V0IGl0cyBuZXcgY2hpbGQgZWFybGllciB0byBlbnN1cmUgdGhlIGlzb2xhdGVkIHRy
ZWUKKyAgICAgICAgaXMgY3JlYXRlZCBhcyBzb29uIGFzIHBvc3NpYmxlLgorICAgICAgICAoV2Vi
Q29yZTo6QVhPYmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSk6
IFJlbW92ZSB0aGUgcm9vdCBjYXNlIGZyb20gaGVyZS4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3Np
YmlsaXR5QXRzcGk6OmNhY2hlVXBkYXRlVGltZXJGaXJlZCk6IFVwZGF0ZSB0aGUgY2FjaGUgd2l0
aCBwZW5kaW5nIGFkZHMgYW5kIGVtaXQgdGhlCisgICAgICAgIEFkZEFjY2Vzc2libGUgc2lnbmFs
LgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpzY2hlZHVsZUNhY2hlVXBk
YXRlKTogQ3JlYXRlIHRoZSB1cGRhdGUgY2FjaGUgdGltZXIgaWYgbmVlZGVkIGFuZCBzY2hlZHVs
ZSBhbgorICAgICAgICB1cGRhdGUgaWYgdGhlcmUgaXNuJ3QgYSBwZW5kaW5nIG9uZSBhbHJlYWR5
LgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjphZGRBY2Nlc3NpYmxlKTog
QWRkIG9iamVjdCB0byB0aGUgbGlzdCBhbmQgc2NoZWR1bGUgYSBjYWNoZSB1cGRhdGUuCisgICAg
ICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5QXRzcGk6OnJlbW92ZUFjY2Vzc2libGUpOiBSZXR1
cm4gZWFybHkgaWYgdGhlIG9iamVjdCBpcyBpbiB0aGUgdXBkYXRlIGNhY2hlIGxpc3QuCisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGkuaDoKKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlPYmplY3RBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk6OnJlZ2lzdGVyT2JqZWN0KTog
UmVtb3ZlIHRoZSBjYWxsIHRvIEFjY2Vzc2liaWxpdHlSb290QXRzcGk6OmNoaWxkKCkgd2hlbiBh
bgorICAgICAgICBvYmplY3QgaXMgcmVnaXN0ZXJlZCBiZWZvcmUgYmVpbmcgYXR0YWNoZWQgdG8g
dGhlIGlzb2xhdGVkIG9iamVjdC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vz
c2liaWxpdHlSb290QXRzcGkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJv
b3RBdHNwaTo6Y2hpbGRBZGRlZCk6IFJldHVybiBlYXJseSBpZiB0aGUgZ2l2ZW4gY2hpbGQgaXMg
bm90IHRoZSBjdXJyZW50IG9uZS4KKwogMjAyMS0xMi0yOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3Mg
IDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgQVg6IHdlYiBwcm9jZXNzIGNyYXNoIHdp
dGggaXNvbGF0ZWQgdHJlZSBtb2RlIGVuYWJsZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcAppbmRleCA5MDE5
YzcwZTRiODAuLmFlZjVkOTcxMmM4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BWE9iamVjdENhY2hlQXRzcGkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcApAQCAtMzUsMTAgKzM1
LDE4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdm9pZCBBWE9iamVjdENhY2hlOjphdHRhY2hX
cmFwcGVyKEFYQ29yZU9iamVjdCogYXhPYmplY3QpCiB7Ci0gICAgYXV0byB3cmFwcGVyID0gQWNj
ZXNzaWJpbGl0eU9iamVjdEF0c3BpOjpjcmVhdGUoYXhPYmplY3QsIGRvY3VtZW50KCkucGFnZSgp
LT5hY2Nlc3NpYmlsaXR5Um9vdE9iamVjdCgpKTsKKyAgICBhdXRvKiBhdHNwaVJvb3QgPSBkb2N1
bWVudCgpLnBhZ2UoKS0+YWNjZXNzaWJpbGl0eVJvb3RPYmplY3QoKTsKKyAgICBhdXRvIHdyYXBw
ZXIgPSBBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk6OmNyZWF0ZShheE9iamVjdCwgYXRzcGlSb290
KTsKICAgICBheE9iamVjdC0+c2V0V3JhcHBlcih3cmFwcGVyLnB0cigpKTsKIAorICAgIC8vIEhh
bmRsZSB0aGUgcm9vdCBlYXJsaWVyIGhlcmUsIHNpbmNlIHdlIGtub3cgaXQgb25seSBoYXMgb25l
IGNoaWxkLgorICAgIGlmICghYXhPYmplY3QtPnBhcmVudE9iamVjdFVuaWdub3JlZCgpICYmIGF4
T2JqZWN0LT5pc1Njcm9sbFZpZXcoKSAmJiBheE9iamVjdC0+c2Nyb2xsVmlldygpID09IGRvY3Vt
ZW50KCkudmlldygpICYmIGF0c3BpUm9vdCkgeworICAgICAgICB3cmFwcGVyLT5zZXRQYXJlbnQo
bnVsbHB0cik7IC8vIG51bGxwdHIgbWVhbnMgcm9vdC4KKyAgICAgICAgcmV0dXJuOworICAgIH0K
KwogICAgIG1fZGVmZXJyZWRQYXJlbnRDaGFuZ2VkTGlzdC5hZGQoYXhPYmplY3QpOworICAgIG1f
cGVyZm9ybUNhY2hlVXBkYXRlVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7CiB9CiAKIHZvaWQgQVhP
YmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSgpCkBAIC00OSwx
MSArNTcsOCBAQCB2b2lkIEFYT2JqZWN0Q2FjaGU6OnBsYXRmb3JtUGVyZm9ybURlZmVycmVkQ2Fj
aGVVcGRhdGUoKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIGF1dG8qIGF4UGFyZW50
ID0gYXhPYmplY3QucGFyZW50T2JqZWN0VW5pZ25vcmVkKCk7Ci0gICAgICAgIGlmICghYXhQYXJl
bnQpIHsKLSAgICAgICAgICAgIGlmIChheE9iamVjdC5pc1Njcm9sbFZpZXcoKSAmJiBheE9iamVj
dC5zY3JvbGxWaWV3KCkgPT0gZG9jdW1lbnQoKS52aWV3KCkpCi0gICAgICAgICAgICAgICAgd3Jh
cHBlci0+c2V0UGFyZW50KG51bGxwdHIpOyAvLyBudWxscHRyIHBhcmVudCBtZWFucyByb290Lgor
ICAgICAgICBpZiAoIWF4UGFyZW50KQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9CiAK
ICAgICAgICAgaWYgKGF1dG8qIGF4UGFyZW50V3JhcHBlciA9IGF4UGFyZW50LT53cmFwcGVyKCkp
CiAgICAgICAgICAgICB3cmFwcGVyLT5zZXRQYXJlbnQoYXhQYXJlbnRXcmFwcGVyKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0
c3BpLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0
eUF0c3BpLmNwcAppbmRleCA3OGU0MTY4MjEzNGQuLmNmMTZmOTk4ODI3ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0
c3BpLmNwcApAQCAtMjYsNyArMjYsNiBAQAogI2luY2x1ZGUgPGdpby9naW8uaD4KICNpbmNsdWRl
IDxnbGliL2dpMThuLWxpYi5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+Ci0jaW5jbHVk
ZSA8d3RmL1NldEZvclNjb3BlLmg+CiAjaW5jbHVkZSA8d3RmL1NvcnRlZEFycmF5TWFwLmg+CiAj
aW5jbHVkZSA8d3RmL1VVSUQuaD4KIApAQCAtNzEzLDcgKzcxMiw2IEBAIEdEQnVzSW50ZXJmYWNl
VlRhYmxlIEFjY2Vzc2liaWxpdHlBdHNwaTo6c19jYWNoZUZ1bmN0aW9ucyA9IHsKICAgICAgICAg
UkVMRUFTRV9BU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKICAgICAgICAgaWYgKCFnX3N0cmNtcDAo
bWV0aG9kTmFtZSwgIkdldEl0ZW1zIikpIHsKICAgICAgICAgICAgIGF1dG8mIGF0c3BpID0gKnN0
YXRpY19jYXN0PEFjY2Vzc2liaWxpdHlBdHNwaSo+KHVzZXJEYXRhKTsKLSAgICAgICAgICAgIFNl
dEZvclNjb3BlPGJvb2w+IGluR2V0SXRlbXMoYXRzcGkubV9pbkdldEl0ZW1zLCB0cnVlKTsKICAg
ICAgICAgICAgIEdWYXJpYW50QnVpbGRlciBidWlsZGVyID0gR19WQVJJQU5UX0JVSUxERVJfSU5J
VChHX1ZBUklBTlRfVFlQRSgiKCIgR0VUX0lURU1TX1NJR05BVFVSRSAiKSIpKTsKICAgICAgICAg
ICAgIGdfdmFyaWFudF9idWlsZGVyX29wZW4oJmJ1aWxkZXIsIEdfVkFSSUFOVF9UWVBFKEdFVF9J
VEVNU19TSUdOQVRVUkUpKTsKICAgICAgICAgICAgIGZvciAoYXV0byogcm9vdE9iamVjdCA6IGF0
c3BpLm1fcm9vdE9iamVjdHMua2V5cygpKSB7CkBAIC03MzUsNiArNzMzLDE3IEBAIEdEQnVzSW50
ZXJmYWNlVlRhYmxlIEFjY2Vzc2liaWxpdHlBdHNwaTo6c19jYWNoZUZ1bmN0aW9ucyA9IHsKICAg
ICAgICAgICAgICAgICB3cmFwcGVyLT5zZXJpYWxpemUoJmJ1aWxkZXIpOwogICAgICAgICAgICAg
ICAgIGdfdmFyaWFudF9idWlsZGVyX2Nsb3NlKCZidWlsZGVyKTsKICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgLy8gSW5jbHVkZSB0aGUgcGVuZGluZyBhZGRzIHRvby4KKyAgICAgICAgICAg
IGZvciAoYXV0byYgYXRzcGlPYmplY3QgOiBhdHNwaS5tX2NhY2hlVXBkYXRlTGlzdCkgeworICAg
ICAgICAgICAgICAgIGF0c3BpT2JqZWN0LT51cGRhdGVCYWNraW5nU3RvcmUoKTsKKyAgICAgICAg
ICAgICAgICBpZiAoYXRzcGlPYmplY3QtPmlzRGVmdW5jdCgpKQorICAgICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKKyAgICAgICAgICAgICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9vcGVuKCZidWls
ZGVyLCBHX1ZBUklBTlRfVFlQRSgiKCIgSVRFTV9TSUdOQVRVUkUgIikiKSk7CisgICAgICAgICAg
ICAgICAgYXRzcGlPYmplY3QtPnNlcmlhbGl6ZSgmYnVpbGRlcik7CisgICAgICAgICAgICAgICAg
Z192YXJpYW50X2J1aWxkZXJfY2xvc2UoJmJ1aWxkZXIpOworICAgICAgICAgICAgfQorCiAgICAg
ICAgICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9jbG9zZSgmYnVpbGRlcik7CiAgICAgICAgICAgICBn
X2RidXNfbWV0aG9kX2ludm9jYXRpb25fcmV0dXJuX3ZhbHVlKGludm9jYXRpb24sIGdfdmFyaWFu
dF9idWlsZGVyX2VuZCgmYnVpbGRlcikpOwogICAgICAgICB9CkBAIC03NTksMzAgKzc2OCw1NSBA
QCB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6ZW5zdXJlQ2FjaGUoKQogICAgIG1fY2FjaGVJRCA9
IGdfZGJ1c19jb25uZWN0aW9uX3JlZ2lzdGVyX29iamVjdChtX2Nvbm5lY3Rpb24uZ2V0KCksICIv
b3JnL2ExMXkvYXRzcGkvY2FjaGUiLCBjb25zdF9jYXN0PEdEQnVzSW50ZXJmYWNlSW5mbyo+KCZ3
ZWJraXRfY2FjaGVfaW50ZXJmYWNlKSwgJnNfY2FjaGVGdW5jdGlvbnMsIHRoaXMsIG51bGxwdHIs
IG51bGxwdHIpOwogfQogCi12b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6YWRkQWNjZXNzaWJsZShB
Y2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQordm9pZCBBY2Nlc3NpYmlsaXR5
QXRzcGk6OmNhY2hlVXBkYXRlVGltZXJGaXJlZCgpCit7CisgICAgd2hpbGUgKCFtX2NhY2hlVXBk
YXRlTGlzdC5pc0VtcHR5KCkpIHsKKyAgICAgICAgYXV0byBhdHNwaU9iamVjdCA9IG1fY2FjaGVV
cGRhdGVMaXN0LnRha2VGaXJzdCgpOworICAgICAgICBhdHNwaU9iamVjdC0+dXBkYXRlQmFja2lu
Z1N0b3JlKCk7CisgICAgICAgIGlmIChhdHNwaU9iamVjdC0+aXNEZWZ1bmN0KCkpCisgICAgICAg
ICAgICBjb250aW51ZTsKKworICAgICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fY2FjaGUuYWRkKGF0
c3BpT2JqZWN0LT5wYXRoKCksIGF0c3BpT2JqZWN0LmdldCgpKTsKKyAgICAgICAgaWYgKCFhZGRS
ZXN1bHQuaXNOZXdFbnRyeSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgIEdWYXJp
YW50QnVpbGRlciBidWlsZGVyID0gR19WQVJJQU5UX0JVSUxERVJfSU5JVChHX1ZBUklBTlRfVFlQ
RSgiKCIgSVRFTV9TSUdOQVRVUkUgIikiKSk7CisgICAgICAgIGF0c3BpT2JqZWN0LT5zZXJpYWxp
emUoJmJ1aWxkZXIpOworICAgICAgICBnX2RidXNfY29ubmVjdGlvbl9lbWl0X3NpZ25hbChtX2Nv
bm5lY3Rpb24uZ2V0KCksIG51bGxwdHIsICIvb3JnL2ExMXkvYXRzcGkvY2FjaGUiLCAib3JnLmEx
MXkuYXRzcGkuQ2FjaGUiLCAiQWRkQWNjZXNzaWJsZSIsCisgICAgICAgICAgICBnX3ZhcmlhbnRf
bmV3KCIoQCgiIElURU1fU0lHTkFUVVJFICIpKSIsIGdfdmFyaWFudF9idWlsZGVyX2VuZCgmYnVp
bGRlcikpLCBudWxscHRyKTsKKyAgICB9Cit9CisKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpz
Y2hlZHVsZUNhY2hlVXBkYXRlKCkKIHsKICAgICBSRUxFQVNFX0FTU0VSVCghaXNNYWluVGhyZWFk
KCkpOwotICAgIGlmICghbV9jb25uZWN0aW9uKQotICAgICAgICByZXR1cm47CisgICAgaWYgKCFt
X2NhY2hlVXBkYXRlVGltZXIpCisgICAgICAgIG1fY2FjaGVVcGRhdGVUaW1lciA9IG1ha2VVbmlx
dWU8UnVuTG9vcDo6VGltZXI8QWNjZXNzaWJpbGl0eUF0c3BpPj4oUnVuTG9vcDo6Y3VycmVudCgp
LCB0aGlzLCAmQWNjZXNzaWJpbGl0eUF0c3BpOjpjYWNoZVVwZGF0ZVRpbWVyRmlyZWQpOwogCi0g
ICAgYXV0byBhZGRSZXN1bHQgPSBtX2NhY2hlLmFkZChhdHNwaU9iamVjdC5wYXRoKCksICZhdHNw
aU9iamVjdCk7Ci0gICAgaWYgKCFhZGRSZXN1bHQuaXNOZXdFbnRyeSkKLSAgICAgICAgcmV0dXJu
OworICAgIGlmICghbV9jYWNoZVVwZGF0ZVRpbWVyLT5pc0FjdGl2ZSgpKQorICAgICAgICBtX2Nh
Y2hlVXBkYXRlVGltZXItPnN0YXJ0T25lU2hvdCgwX3MpOworfQogCi0gICAgaWYgKG1faW5HZXRJ
dGVtcykKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjphZGRBY2Nlc3NpYmxlKEFjY2Vzc2liaWxp
dHlPYmplY3RBdHNwaSYgYXRzcGlPYmplY3QpCit7CisgICAgUkVMRUFTRV9BU1NFUlQoIWlzTWFp
blRocmVhZCgpKTsKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgR1ZhcmlhbnRCdWlsZGVyIGJ1aWxkZXIgPSBHX1ZBUklBTlRfQlVJTERFUl9JTklUKEdfVkFS
SUFOVF9UWVBFKCIoIiBJVEVNX1NJR05BVFVSRSAiKSIpKTsKLSAgICBhdHNwaU9iamVjdC5zZXJp
YWxpemUoJmJ1aWxkZXIpOwotICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29u
bmVjdGlvbi5nZXQoKSwgbnVsbHB0ciwgIi9vcmcvYTExeS9hdHNwaS9jYWNoZSIsICJvcmcuYTEx
eS5hdHNwaS5DYWNoZSIsICJBZGRBY2Nlc3NpYmxlIiwKLSAgICAgICAgZ192YXJpYW50X25ldygi
KEAoIiBJVEVNX1NJR05BVFVSRSAiKSkiLCBnX3ZhcmlhbnRfYnVpbGRlcl9lbmQoJmJ1aWxkZXIp
KSwgbnVsbHB0cik7CisgICAgbV9jYWNoZVVwZGF0ZUxpc3QuYWRkKCZhdHNwaU9iamVjdCk7Cisg
ICAgc2NoZWR1bGVDYWNoZVVwZGF0ZSgpOwogfQogCiB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6
cmVtb3ZlQWNjZXNzaWJsZShBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQog
ewogICAgIFJFTEVBU0VfQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CisgICAgaWYgKG1fY2FjaGVV
cGRhdGVMaXN0LnJlbW92ZSgmYXRzcGlPYmplY3QpKQorICAgICAgICByZXR1cm47CisKICAgICBj
b25zdCBhdXRvJiBwYXRoID0gYXRzcGlPYmplY3QucGF0aCgpOwotICAgIG1fY2FjaGUucmVtb3Zl
KHBhdGgpOworICAgIGlmICghbV9jYWNoZS5yZW1vdmUocGF0aCkpCisgICAgICAgIHJldHVybjsK
KwogICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29ubmVjdGlvbi5nZXQoKSwg
bnVsbHB0ciwgIi9vcmcvYTExeS9hdHNwaS9jYWNoZSIsICJvcmcuYTExeS5hdHNwaS5DYWNoZSIs
ICJSZW1vdmVBY2Nlc3NpYmxlIiwKICAgICAgICAgZ192YXJpYW50X25ldygiKChzbykpIiwgdW5p
cXVlTmFtZSgpLCBwYXRoLnV0ZjgoKS5kYXRhKCkpLCBudWxscHRyKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5o
CmluZGV4IGEwOTA0YWIyMTBiZi4uYzBlY2Q4ZTUwMTgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgKQEAgLTIz
LDYgKzIzLDcgQEAKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRl
IDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8
d3RmL0xpc3RIYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0
Zi9Xb3JrUXVldWUuaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HUmVmUHRyLmg+CkBAIC05OCw2ICs5
OSw4IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGVuc3VyZUNhY2hlKCk7CiAgICAgdm9pZCByZW1v
dmVBY2Nlc3NpYmxlKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYpOworICAgIHZvaWQgc2NoZWR1
bGVDYWNoZVVwZGF0ZSgpOworICAgIHZvaWQgY2FjaGVVcGRhdGVUaW1lckZpcmVkKCk7CiAKICAg
ICBib29sIHNob3VsZEVtaXRTaWduYWwoY29uc3QgY2hhciogaW50ZXJmYWNlLCBjb25zdCBjaGFy
KiBuYW1lLCBjb25zdCBjaGFyKiBkZXRhaWwgPSAiIik7CiAKQEAgLTEyMiw3ICsxMjUsOCBAQCBw
cml2YXRlOgogICAgIEhhc2hNYXA8QWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpKiwgVmVjdG9yPHVu
c2lnbmVkLCAyMD4+IG1fYXRzcGlIeXBlcmxpbmtzOwogICAgIHVuc2lnbmVkIG1fY2FjaGVJRCB7
IDAgfTsKICAgICBIYXNoTWFwPFN0cmluZywgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpKj4gbV9j
YWNoZTsKLSAgICBib29sIG1faW5HZXRJdGVtcyB7IGZhbHNlIH07CisgICAgTGlzdEhhc2hTZXQ8
UmVmUHRyPEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaT4+IG1fY2FjaGVVcGRhdGVMaXN0OworICAg
IHN0ZDo6dW5pcXVlX3B0cjxSdW5Mb29wOjpUaW1lcjxBY2Nlc3NpYmlsaXR5QXRzcGk+PiBtX2Nh
Y2hlVXBkYXRlVGltZXI7CiAjaWYgRU5BQkxFKERFVkVMT1BFUl9NT0RFKQogICAgIEhhc2hNYXA8
dm9pZCosIE5vdGlmaWNhdGlvbk9ic2VydmVyPiBtX25vdGlmaWNhdGlvbk9ic2VydmVyczsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nl
c3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9h
dHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwCmluZGV4IDEwMTMwNzgxYjM0Yi4uZTNi
NjdkOTA1YzExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3Bp
L0FjY2Vzc2liaWxpdHlPYmplY3RBdHNwaS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwCkBAIC01MzQsMTcgKzUz
NCw2IEBAIGJvb2wgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpOjpyZWdpc3Rlck9iamVjdCgpCiAg
ICAgICAgIGludGVyZmFjZXMuYXBwZW5kKHsgY29uc3RfY2FzdDxHREJ1c0ludGVyZmFjZUluZm8q
Pigmd2Via2l0X3RhYmxlX2ludGVyZmFjZSksICZzX3RhYmxlRnVuY3Rpb25zIH0pOwogICAgIGlm
IChtX2ludGVyZmFjZXMuY29udGFpbnMoSW50ZXJmYWNlOjpUYWJsZUNlbGwpKQogICAgICAgICBp
bnRlcmZhY2VzLmFwcGVuZCh7IGNvbnN0X2Nhc3Q8R0RCdXNJbnRlcmZhY2VJbmZvKj4oJndlYmtp
dF90YWJsZV9jZWxsX2ludGVyZmFjZSksICZzX3RhYmxlQ2VsbEZ1bmN0aW9ucyB9KTsKLSAgICBp
ZiAoIW1fYXhPYmplY3QpIHsKLSAgICAgICAgLy8gSXNvbGF0ZWQgdHJlZSBoYXNuJ3QgYmVlbiBj
cmVhdGVkIHlldCwgY2FsbCBBY2Nlc3NpYmlsaXR5Um9vdEF0c3BpOjpjaGlsZCgpCi0gICAgICAg
IC8vIHRvIGNyZWF0ZSBpdCBiZWZvcmUgcmVnaXN0ZXJpbmcgdGhlIG9iamVjdC4KLSAgICAgICAg
QWNjZXNzaWJpbGl0eTo6cGVyZm9ybUZ1bmN0aW9uT25NYWluVGhyZWFkKFt0aGlzXSB7Ci0gICAg
ICAgICAgICBpZiAoIW1fY29yZU9iamVjdCkKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0KLSAg
ICAgICAgICAgIGlmIChhdXRvKiBhdHNwaVJvb3QgPSByb290KCkpCi0gICAgICAgICAgICAgICAg
YXRzcGlSb290LT5jaGlsZCgpOwotICAgICAgICB9KTsKLSAgICB9CiAKICAgICBtX3BhdGggPSBB
Y2Nlc3NpYmlsaXR5QXRzcGk6OmN1cnJlbnQoKS5yZWdpc3Rlck9iamVjdCgqdGhpcywgV1RGTW92
ZShpbnRlcmZhY2VzKSk7CiAgICAgQWNjZXNzaWJpbGl0eUF0c3BpOjpjdXJyZW50KCkuYWRkQWNj
ZXNzaWJsZSgqdGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L2F0c3BpL0FjY2Vzc2liaWxpdHlSb290QXRzcGkuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNwcAppbmRleCAzMDhhNGI2ZWYy
MzUuLjJlZTU3NzZhZjlhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlSb290QXRzcGkuY3BwCkBAIC0zMSw2ICsz
MSw3IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgPGdsaWIvZ2kxOG4tbGliLmg+CiAj
aW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KKyNpbmNsdWRlIDx3dGYvU2V0Rm9yU2NvcGUuaD4K
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0yNTYsNiArMjU3LDggQEAgQWNjZXNzaWJpbGl0
eU9iamVjdEF0c3BpKiBBY2Nlc3NpYmlsaXR5Um9vdEF0c3BpOjpjaGlsZCgpIGNvbnN0CiAgICAg
aWYgKCFmcmFtZS5kb2N1bWVudCgpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAorICAgIFNl
dEZvclNjb3BlPGJvb2w+IGluQ2hpbGQobV9pbkNoaWxkLCB0cnVlKTsKKwogICAgIEFYT2JqZWN0
Q2FjaGU6OmVuYWJsZUFjY2Vzc2liaWxpdHkoKTsKICAgICBBWE9iamVjdENhY2hlKiBjYWNoZSA9
IGZyYW1lLmRvY3VtZW50KCktPmF4T2JqZWN0Q2FjaGUoKTsKICAgICBpZiAoIWNhY2hlKQpAQCAt
MjY3LDYgKzI3MCwxMyBAQCBBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkqIEFjY2Vzc2liaWxpdHlS
b290QXRzcGk6OmNoaWxkKCkgY29uc3QKIAogdm9pZCBBY2Nlc3NpYmlsaXR5Um9vdEF0c3BpOjpj
aGlsZEFkZGVkKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYgY2hpbGQpCiB7CisgICAgLy8gRG9u
J3QgZW1pdCBjaGlsZHJlbiBjaGFuZ2VkIHdoZW4gY2FsbGVkIGZyb20gY2hpbGQoKSBiZWNhdXNl
IHRoYXQgbWVhbnMgdGhlIHRyZWUgaXMgYmVpbmcgcG9wdWxhdGVkLgorICAgIGlmIChtX2luQ2hp
bGQpCisgICAgICAgIHJldHVybjsKKworICAgIGlmICh0aGlzLT5jaGlsZCgpICE9ICZjaGlsZCkK
KyAgICAgICAgcmV0dXJuOworCiAgICAgQWNjZXNzaWJpbGl0eUF0c3BpOjpjdXJyZW50KCkuY2hp
bGRyZW5DaGFuZ2VkKCp0aGlzLCBjaGlsZCwgQWNjZXNzaWJpbGl0eUF0c3BpOjpDaGlsZHJlbkNo
YW5nZWQ6OkFkZGVkKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlSb290QXRzcGkuaAppbmRleCA3MGJkNDgzODJm
MTUuLmYyMWQ4ODY2ODQyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmgKQEAgLTcwLDYgKzcwLDcg
QEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9wYXJlbnRVbmlxdWVOYW1lOwogICAgIFN0cmluZyBt
X3BhcmVudFBhdGg7CiAgICAgQXRvbWljPGJvb2w+IG1faXNUcmVlUmVnaXN0ZXJlZCB7IGZhbHNl
IH07CisgICAgbXV0YWJsZSBib29sIG1faW5DaGlsZCB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>448095</attachid>
            <date>2021-12-30 06:12:24 -0800</date>
            <delta_ts>2022-01-12 01:47:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-atspi-delay-add.diff</filename>
            <type>text/plain</type>
            <size>12643</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAxZDlmNGM0NzY0NDIuLjc0MzI0MmUxYTQyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDMwIEBACisyMDIxLTEyLTI5ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVthMTF5XSBEZWZlciB0aGUgZW1pc3Npb24gb2Yg
QWRkQWNjZXNzaWJsZSBzaWduYWwgd2l0aCBBVFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NzQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gY2FzZSBvZiBub2RlIGFkZGVkIGFuZCByZW1vdmVk
IHF1aWNrbHksIHdlIGp1c3QgYXZvaWQgdGhlIGVtaXNzaW9uIG9mIHRoZSBzaWduYWwuCisKKyAg
ICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FYT2JqZWN0Q2FjaGVBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hlOjphdHRhY2hXcmFwcGVyKTogTm90aWZ5IHRoZSBy
b290IGFib3V0IGl0cyBuZXcgY2hpbGQgZWFybGllciB0byBlbnN1cmUgdGhlIGlzb2xhdGVkIHRy
ZWUKKyAgICAgICAgaXMgY3JlYXRlZCBhcyBzb29uIGFzIHBvc3NpYmxlLgorICAgICAgICAoV2Vi
Q29yZTo6QVhPYmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSk6
IFJlbW92ZSB0aGUgcm9vdCBjYXNlIGZyb20gaGVyZS4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3Np
YmlsaXR5QXRzcGk6OmNhY2hlVXBkYXRlVGltZXJGaXJlZCk6IFVwZGF0ZSB0aGUgY2FjaGUgd2l0
aCBwZW5kaW5nIGFkZHMgYW5kIGVtaXQgdGhlCisgICAgICAgIEFkZEFjY2Vzc2libGUgc2lnbmFs
LgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpzY2hlZHVsZUNhY2hlVXBk
YXRlKTogQ3JlYXRlIHRoZSB1cGRhdGUgY2FjaGUgdGltZXIgaWYgbmVlZGVkIGFuZCBzY2hlZHVs
ZSBhbgorICAgICAgICB1cGRhdGUgaWYgdGhlcmUgaXNuJ3QgYSBwZW5kaW5nIG9uZSBhbHJlYWR5
LgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjphZGRBY2Nlc3NpYmxlKTog
QWRkIG9iamVjdCB0byB0aGUgbGlzdCBhbmQgc2NoZWR1bGUgYSBjYWNoZSB1cGRhdGUuCisgICAg
ICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5QXRzcGk6OnJlbW92ZUFjY2Vzc2libGUpOiBSZXR1
cm4gZWFybHkgaWYgdGhlIG9iamVjdCBpcyBpbiB0aGUgdXBkYXRlIGNhY2hlIGxpc3QuCisgICAg
ICAgICogYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGkuaDoKKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlPYmplY3RBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk6OnJlZ2lzdGVyT2JqZWN0KTog
UmVtb3ZlIHRoZSBjYWxsIHRvIEFjY2Vzc2liaWxpdHlSb290QXRzcGk6OmNoaWxkKCkgd2hlbiBh
bgorICAgICAgICBvYmplY3QgaXMgcmVnaXN0ZXJlZCBiZWZvcmUgYmVpbmcgYXR0YWNoZWQgdG8g
dGhlIGlzb2xhdGVkIG9iamVjdC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vz
c2liaWxpdHlSb290QXRzcGkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJv
b3RBdHNwaTo6Y2hpbGRBZGRlZCk6IFJldHVybiBlYXJseSBpZiB0aGUgZ2l2ZW4gY2hpbGQgaXMg
bm90IHRoZSBjdXJyZW50IG9uZS4KKwogMjAyMS0xMi0yOSAgQ2FybG9zIEdhcmNpYSBDYW1wb3Mg
IDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgQVg6IHdlYiBwcm9jZXNzIGNyYXNoIHdp
dGggaXNvbGF0ZWQgdHJlZSBtb2RlIGVuYWJsZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcAppbmRleCA5MDE5
YzcwZTRiODAuLmFlZjVkOTcxMmM4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BWE9iamVjdENhY2hlQXRzcGkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNoZUF0c3BpLmNwcApAQCAtMzUsMTAgKzM1
LDE4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdm9pZCBBWE9iamVjdENhY2hlOjphdHRhY2hX
cmFwcGVyKEFYQ29yZU9iamVjdCogYXhPYmplY3QpCiB7Ci0gICAgYXV0byB3cmFwcGVyID0gQWNj
ZXNzaWJpbGl0eU9iamVjdEF0c3BpOjpjcmVhdGUoYXhPYmplY3QsIGRvY3VtZW50KCkucGFnZSgp
LT5hY2Nlc3NpYmlsaXR5Um9vdE9iamVjdCgpKTsKKyAgICBhdXRvKiBhdHNwaVJvb3QgPSBkb2N1
bWVudCgpLnBhZ2UoKS0+YWNjZXNzaWJpbGl0eVJvb3RPYmplY3QoKTsKKyAgICBhdXRvIHdyYXBw
ZXIgPSBBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk6OmNyZWF0ZShheE9iamVjdCwgYXRzcGlSb290
KTsKICAgICBheE9iamVjdC0+c2V0V3JhcHBlcih3cmFwcGVyLnB0cigpKTsKIAorICAgIC8vIEhh
bmRsZSB0aGUgcm9vdCBlYXJsaWVyIGhlcmUsIHNpbmNlIHdlIGtub3cgaXQgb25seSBoYXMgb25l
IGNoaWxkLgorICAgIGlmICghYXhPYmplY3QtPnBhcmVudE9iamVjdFVuaWdub3JlZCgpICYmIGF4
T2JqZWN0LT5pc1Njcm9sbFZpZXcoKSAmJiBheE9iamVjdC0+c2Nyb2xsVmlldygpID09IGRvY3Vt
ZW50KCkudmlldygpICYmIGF0c3BpUm9vdCkgeworICAgICAgICB3cmFwcGVyLT5zZXRQYXJlbnQo
bnVsbHB0cik7IC8vIG51bGxwdHIgbWVhbnMgcm9vdC4KKyAgICAgICAgcmV0dXJuOworICAgIH0K
KwogICAgIG1fZGVmZXJyZWRQYXJlbnRDaGFuZ2VkTGlzdC5hZGQoYXhPYmplY3QpOworICAgIG1f
cGVyZm9ybUNhY2hlVXBkYXRlVGltZXIuc3RhcnRPbmVTaG90KDBfcyk7CiB9CiAKIHZvaWQgQVhP
YmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSgpCkBAIC00OSwx
MSArNTcsOCBAQCB2b2lkIEFYT2JqZWN0Q2FjaGU6OnBsYXRmb3JtUGVyZm9ybURlZmVycmVkQ2Fj
aGVVcGRhdGUoKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIGF1dG8qIGF4UGFyZW50
ID0gYXhPYmplY3QucGFyZW50T2JqZWN0VW5pZ25vcmVkKCk7Ci0gICAgICAgIGlmICghYXhQYXJl
bnQpIHsKLSAgICAgICAgICAgIGlmIChheE9iamVjdC5pc1Njcm9sbFZpZXcoKSAmJiBheE9iamVj
dC5zY3JvbGxWaWV3KCkgPT0gZG9jdW1lbnQoKS52aWV3KCkpCi0gICAgICAgICAgICAgICAgd3Jh
cHBlci0+c2V0UGFyZW50KG51bGxwdHIpOyAvLyBudWxscHRyIHBhcmVudCBtZWFucyByb290Lgor
ICAgICAgICBpZiAoIWF4UGFyZW50KQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9CiAK
ICAgICAgICAgaWYgKGF1dG8qIGF4UGFyZW50V3JhcHBlciA9IGF4UGFyZW50LT53cmFwcGVyKCkp
CiAgICAgICAgICAgICB3cmFwcGVyLT5zZXRQYXJlbnQoYXhQYXJlbnRXcmFwcGVyKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0
c3BpLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0
eUF0c3BpLmNwcAppbmRleCA3OGU0MTY4MjEzNGQuLmNmMTZmOTk4ODI3ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5QXRzcGkuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0
c3BpLmNwcApAQCAtMjYsNyArMjYsNiBAQAogI2luY2x1ZGUgPGdpby9naW8uaD4KICNpbmNsdWRl
IDxnbGliL2dpMThuLWxpYi5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+Ci0jaW5jbHVk
ZSA8d3RmL1NldEZvclNjb3BlLmg+CiAjaW5jbHVkZSA8d3RmL1NvcnRlZEFycmF5TWFwLmg+CiAj
aW5jbHVkZSA8d3RmL1VVSUQuaD4KIApAQCAtNzEzLDcgKzcxMiw2IEBAIEdEQnVzSW50ZXJmYWNl
VlRhYmxlIEFjY2Vzc2liaWxpdHlBdHNwaTo6c19jYWNoZUZ1bmN0aW9ucyA9IHsKICAgICAgICAg
UkVMRUFTRV9BU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKICAgICAgICAgaWYgKCFnX3N0cmNtcDAo
bWV0aG9kTmFtZSwgIkdldEl0ZW1zIikpIHsKICAgICAgICAgICAgIGF1dG8mIGF0c3BpID0gKnN0
YXRpY19jYXN0PEFjY2Vzc2liaWxpdHlBdHNwaSo+KHVzZXJEYXRhKTsKLSAgICAgICAgICAgIFNl
dEZvclNjb3BlPGJvb2w+IGluR2V0SXRlbXMoYXRzcGkubV9pbkdldEl0ZW1zLCB0cnVlKTsKICAg
ICAgICAgICAgIEdWYXJpYW50QnVpbGRlciBidWlsZGVyID0gR19WQVJJQU5UX0JVSUxERVJfSU5J
VChHX1ZBUklBTlRfVFlQRSgiKCIgR0VUX0lURU1TX1NJR05BVFVSRSAiKSIpKTsKICAgICAgICAg
ICAgIGdfdmFyaWFudF9idWlsZGVyX29wZW4oJmJ1aWxkZXIsIEdfVkFSSUFOVF9UWVBFKEdFVF9J
VEVNU19TSUdOQVRVUkUpKTsKICAgICAgICAgICAgIGZvciAoYXV0byogcm9vdE9iamVjdCA6IGF0
c3BpLm1fcm9vdE9iamVjdHMua2V5cygpKSB7CkBAIC03MzUsNiArNzMzLDE3IEBAIEdEQnVzSW50
ZXJmYWNlVlRhYmxlIEFjY2Vzc2liaWxpdHlBdHNwaTo6c19jYWNoZUZ1bmN0aW9ucyA9IHsKICAg
ICAgICAgICAgICAgICB3cmFwcGVyLT5zZXJpYWxpemUoJmJ1aWxkZXIpOwogICAgICAgICAgICAg
ICAgIGdfdmFyaWFudF9idWlsZGVyX2Nsb3NlKCZidWlsZGVyKTsKICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgLy8gSW5jbHVkZSB0aGUgcGVuZGluZyBhZGRzIHRvby4KKyAgICAgICAgICAg
IGZvciAoYXV0byYgYXRzcGlPYmplY3QgOiBhdHNwaS5tX2NhY2hlVXBkYXRlTGlzdCkgeworICAg
ICAgICAgICAgICAgIGF0c3BpT2JqZWN0LT51cGRhdGVCYWNraW5nU3RvcmUoKTsKKyAgICAgICAg
ICAgICAgICBpZiAoYXRzcGlPYmplY3QtPmlzRGVmdW5jdCgpKQorICAgICAgICAgICAgICAgICAg
ICBjb250aW51ZTsKKyAgICAgICAgICAgICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9vcGVuKCZidWls
ZGVyLCBHX1ZBUklBTlRfVFlQRSgiKCIgSVRFTV9TSUdOQVRVUkUgIikiKSk7CisgICAgICAgICAg
ICAgICAgYXRzcGlPYmplY3QtPnNlcmlhbGl6ZSgmYnVpbGRlcik7CisgICAgICAgICAgICAgICAg
Z192YXJpYW50X2J1aWxkZXJfY2xvc2UoJmJ1aWxkZXIpOworICAgICAgICAgICAgfQorCiAgICAg
ICAgICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9jbG9zZSgmYnVpbGRlcik7CiAgICAgICAgICAgICBn
X2RidXNfbWV0aG9kX2ludm9jYXRpb25fcmV0dXJuX3ZhbHVlKGludm9jYXRpb24sIGdfdmFyaWFu
dF9idWlsZGVyX2VuZCgmYnVpbGRlcikpOwogICAgICAgICB9CkBAIC03NTksMzAgKzc2OCw1NSBA
QCB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6ZW5zdXJlQ2FjaGUoKQogICAgIG1fY2FjaGVJRCA9
IGdfZGJ1c19jb25uZWN0aW9uX3JlZ2lzdGVyX29iamVjdChtX2Nvbm5lY3Rpb24uZ2V0KCksICIv
b3JnL2ExMXkvYXRzcGkvY2FjaGUiLCBjb25zdF9jYXN0PEdEQnVzSW50ZXJmYWNlSW5mbyo+KCZ3
ZWJraXRfY2FjaGVfaW50ZXJmYWNlKSwgJnNfY2FjaGVGdW5jdGlvbnMsIHRoaXMsIG51bGxwdHIs
IG51bGxwdHIpOwogfQogCi12b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6YWRkQWNjZXNzaWJsZShB
Y2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQordm9pZCBBY2Nlc3NpYmlsaXR5
QXRzcGk6OmNhY2hlVXBkYXRlVGltZXJGaXJlZCgpCit7CisgICAgd2hpbGUgKCFtX2NhY2hlVXBk
YXRlTGlzdC5pc0VtcHR5KCkpIHsKKyAgICAgICAgYXV0byBhdHNwaU9iamVjdCA9IG1fY2FjaGVV
cGRhdGVMaXN0LnRha2VGaXJzdCgpOworICAgICAgICBhdHNwaU9iamVjdC0+dXBkYXRlQmFja2lu
Z1N0b3JlKCk7CisgICAgICAgIGlmIChhdHNwaU9iamVjdC0+aXNEZWZ1bmN0KCkpCisgICAgICAg
ICAgICBjb250aW51ZTsKKworICAgICAgICBhdXRvIGFkZFJlc3VsdCA9IG1fY2FjaGUuYWRkKGF0
c3BpT2JqZWN0LT5wYXRoKCksIGF0c3BpT2JqZWN0LmdldCgpKTsKKyAgICAgICAgaWYgKCFhZGRS
ZXN1bHQuaXNOZXdFbnRyeSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgIEdWYXJp
YW50QnVpbGRlciBidWlsZGVyID0gR19WQVJJQU5UX0JVSUxERVJfSU5JVChHX1ZBUklBTlRfVFlQ
RSgiKCIgSVRFTV9TSUdOQVRVUkUgIikiKSk7CisgICAgICAgIGF0c3BpT2JqZWN0LT5zZXJpYWxp
emUoJmJ1aWxkZXIpOworICAgICAgICBnX2RidXNfY29ubmVjdGlvbl9lbWl0X3NpZ25hbChtX2Nv
bm5lY3Rpb24uZ2V0KCksIG51bGxwdHIsICIvb3JnL2ExMXkvYXRzcGkvY2FjaGUiLCAib3JnLmEx
MXkuYXRzcGkuQ2FjaGUiLCAiQWRkQWNjZXNzaWJsZSIsCisgICAgICAgICAgICBnX3ZhcmlhbnRf
bmV3KCIoQCgiIElURU1fU0lHTkFUVVJFICIpKSIsIGdfdmFyaWFudF9idWlsZGVyX2VuZCgmYnVp
bGRlcikpLCBudWxscHRyKTsKKyAgICB9Cit9CisKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpz
Y2hlZHVsZUNhY2hlVXBkYXRlKCkKIHsKICAgICBSRUxFQVNFX0FTU0VSVCghaXNNYWluVGhyZWFk
KCkpOwotICAgIGlmICghbV9jb25uZWN0aW9uKQotICAgICAgICByZXR1cm47CisgICAgaWYgKCFt
X2NhY2hlVXBkYXRlVGltZXIpCisgICAgICAgIG1fY2FjaGVVcGRhdGVUaW1lciA9IG1ha2VVbmlx
dWU8UnVuTG9vcDo6VGltZXI8QWNjZXNzaWJpbGl0eUF0c3BpPj4oUnVuTG9vcDo6Y3VycmVudCgp
LCB0aGlzLCAmQWNjZXNzaWJpbGl0eUF0c3BpOjpjYWNoZVVwZGF0ZVRpbWVyRmlyZWQpOwogCi0g
ICAgYXV0byBhZGRSZXN1bHQgPSBtX2NhY2hlLmFkZChhdHNwaU9iamVjdC5wYXRoKCksICZhdHNw
aU9iamVjdCk7Ci0gICAgaWYgKCFhZGRSZXN1bHQuaXNOZXdFbnRyeSkKLSAgICAgICAgcmV0dXJu
OworICAgIGlmICghbV9jYWNoZVVwZGF0ZVRpbWVyLT5pc0FjdGl2ZSgpKQorICAgICAgICBtX2Nh
Y2hlVXBkYXRlVGltZXItPnN0YXJ0T25lU2hvdCgwX3MpOworfQogCi0gICAgaWYgKG1faW5HZXRJ
dGVtcykKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjphZGRBY2Nlc3NpYmxlKEFjY2Vzc2liaWxp
dHlPYmplY3RBdHNwaSYgYXRzcGlPYmplY3QpCit7CisgICAgUkVMRUFTRV9BU1NFUlQoIWlzTWFp
blRocmVhZCgpKTsKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgR1ZhcmlhbnRCdWlsZGVyIGJ1aWxkZXIgPSBHX1ZBUklBTlRfQlVJTERFUl9JTklUKEdfVkFS
SUFOVF9UWVBFKCIoIiBJVEVNX1NJR05BVFVSRSAiKSIpKTsKLSAgICBhdHNwaU9iamVjdC5zZXJp
YWxpemUoJmJ1aWxkZXIpOwotICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29u
bmVjdGlvbi5nZXQoKSwgbnVsbHB0ciwgIi9vcmcvYTExeS9hdHNwaS9jYWNoZSIsICJvcmcuYTEx
eS5hdHNwaS5DYWNoZSIsICJBZGRBY2Nlc3NpYmxlIiwKLSAgICAgICAgZ192YXJpYW50X25ldygi
KEAoIiBJVEVNX1NJR05BVFVSRSAiKSkiLCBnX3ZhcmlhbnRfYnVpbGRlcl9lbmQoJmJ1aWxkZXIp
KSwgbnVsbHB0cik7CisgICAgbV9jYWNoZVVwZGF0ZUxpc3QuYWRkKCZhdHNwaU9iamVjdCk7Cisg
ICAgc2NoZWR1bGVDYWNoZVVwZGF0ZSgpOwogfQogCiB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6
cmVtb3ZlQWNjZXNzaWJsZShBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQog
ewogICAgIFJFTEVBU0VfQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CisgICAgaWYgKG1fY2FjaGVV
cGRhdGVMaXN0LnJlbW92ZSgmYXRzcGlPYmplY3QpKQorICAgICAgICByZXR1cm47CisKICAgICBj
b25zdCBhdXRvJiBwYXRoID0gYXRzcGlPYmplY3QucGF0aCgpOwotICAgIG1fY2FjaGUucmVtb3Zl
KHBhdGgpOworICAgIGlmICghbV9jYWNoZS5yZW1vdmUocGF0aCkpCisgICAgICAgIHJldHVybjsK
KwogICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29ubmVjdGlvbi5nZXQoKSwg
bnVsbHB0ciwgIi9vcmcvYTExeS9hdHNwaS9jYWNoZSIsICJvcmcuYTExeS5hdHNwaS5DYWNoZSIs
ICJSZW1vdmVBY2Nlc3NpYmxlIiwKICAgICAgICAgZ192YXJpYW50X25ldygiKChzbykpIiwgdW5p
cXVlTmFtZSgpLCBwYXRoLnV0ZjgoKS5kYXRhKCkpLCBudWxscHRyKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5o
CmluZGV4IGEwOTA0YWIyMTBiZi4uYzBlY2Q4ZTUwMTgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgKQEAgLTIz
LDYgKzIzLDcgQEAKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRl
IDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8
d3RmL0xpc3RIYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0
Zi9Xb3JrUXVldWUuaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HUmVmUHRyLmg+CkBAIC05OCw2ICs5
OSw4IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGVuc3VyZUNhY2hlKCk7CiAgICAgdm9pZCByZW1v
dmVBY2Nlc3NpYmxlKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYpOworICAgIHZvaWQgc2NoZWR1
bGVDYWNoZVVwZGF0ZSgpOworICAgIHZvaWQgY2FjaGVVcGRhdGVUaW1lckZpcmVkKCk7CiAKICAg
ICBib29sIHNob3VsZEVtaXRTaWduYWwoY29uc3QgY2hhciogaW50ZXJmYWNlLCBjb25zdCBjaGFy
KiBuYW1lLCBjb25zdCBjaGFyKiBkZXRhaWwgPSAiIik7CiAKQEAgLTEyMiw3ICsxMjUsOCBAQCBw
cml2YXRlOgogICAgIEhhc2hNYXA8QWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpKiwgVmVjdG9yPHVu
c2lnbmVkLCAyMD4+IG1fYXRzcGlIeXBlcmxpbmtzOwogICAgIHVuc2lnbmVkIG1fY2FjaGVJRCB7
IDAgfTsKICAgICBIYXNoTWFwPFN0cmluZywgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpKj4gbV9j
YWNoZTsKLSAgICBib29sIG1faW5HZXRJdGVtcyB7IGZhbHNlIH07CisgICAgTGlzdEhhc2hTZXQ8
UmVmUHRyPEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaT4+IG1fY2FjaGVVcGRhdGVMaXN0OworICAg
IHN0ZDo6dW5pcXVlX3B0cjxSdW5Mb29wOjpUaW1lcjxBY2Nlc3NpYmlsaXR5QXRzcGk+PiBtX2Nh
Y2hlVXBkYXRlVGltZXI7CiAjaWYgRU5BQkxFKERFVkVMT1BFUl9NT0RFKQogICAgIEhhc2hNYXA8
dm9pZCosIE5vdGlmaWNhdGlvbk9ic2VydmVyPiBtX25vdGlmaWNhdGlvbk9ic2VydmVyczsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nl
c3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9h
dHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwCmluZGV4IDEwMTMwNzgxYjM0Yi4uZTNi
NjdkOTA1YzExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3Bp
L0FjY2Vzc2liaWxpdHlPYmplY3RBdHNwaS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwCkBAIC01MzQsMTcgKzUz
NCw2IEBAIGJvb2wgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpOjpyZWdpc3Rlck9iamVjdCgpCiAg
ICAgICAgIGludGVyZmFjZXMuYXBwZW5kKHsgY29uc3RfY2FzdDxHREJ1c0ludGVyZmFjZUluZm8q
Pigmd2Via2l0X3RhYmxlX2ludGVyZmFjZSksICZzX3RhYmxlRnVuY3Rpb25zIH0pOwogICAgIGlm
IChtX2ludGVyZmFjZXMuY29udGFpbnMoSW50ZXJmYWNlOjpUYWJsZUNlbGwpKQogICAgICAgICBp
bnRlcmZhY2VzLmFwcGVuZCh7IGNvbnN0X2Nhc3Q8R0RCdXNJbnRlcmZhY2VJbmZvKj4oJndlYmtp
dF90YWJsZV9jZWxsX2ludGVyZmFjZSksICZzX3RhYmxlQ2VsbEZ1bmN0aW9ucyB9KTsKLSAgICBp
ZiAoIW1fYXhPYmplY3QpIHsKLSAgICAgICAgLy8gSXNvbGF0ZWQgdHJlZSBoYXNuJ3QgYmVlbiBj
cmVhdGVkIHlldCwgY2FsbCBBY2Nlc3NpYmlsaXR5Um9vdEF0c3BpOjpjaGlsZCgpCi0gICAgICAg
IC8vIHRvIGNyZWF0ZSBpdCBiZWZvcmUgcmVnaXN0ZXJpbmcgdGhlIG9iamVjdC4KLSAgICAgICAg
QWNjZXNzaWJpbGl0eTo6cGVyZm9ybUZ1bmN0aW9uT25NYWluVGhyZWFkKFt0aGlzXSB7Ci0gICAg
ICAgICAgICBpZiAoIW1fY29yZU9iamVjdCkKLSAgICAgICAgICAgICAgICByZXR1cm47Ci0KLSAg
ICAgICAgICAgIGlmIChhdXRvKiBhdHNwaVJvb3QgPSByb290KCkpCi0gICAgICAgICAgICAgICAg
YXRzcGlSb290LT5jaGlsZCgpOwotICAgICAgICB9KTsKLSAgICB9CiAKICAgICBtX3BhdGggPSBB
Y2Nlc3NpYmlsaXR5QXRzcGk6OmN1cnJlbnQoKS5yZWdpc3Rlck9iamVjdCgqdGhpcywgV1RGTW92
ZShpbnRlcmZhY2VzKSk7CiAgICAgQWNjZXNzaWJpbGl0eUF0c3BpOjpjdXJyZW50KCkuYWRkQWNj
ZXNzaWJsZSgqdGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L2F0c3BpL0FjY2Vzc2liaWxpdHlSb290QXRzcGkuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNwcAppbmRleCAzMDhhNGI2ZWYy
MzUuLmI0Yzc2NTE2N2M1NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlSb290QXRzcGkuY3BwCkBAIC0zMSw2ICsz
MSw3IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgPGdsaWIvZ2kxOG4tbGliLmg+CiAj
aW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KKyNpbmNsdWRlIDx3dGYvU2V0Rm9yU2NvcGUuaD4K
IAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0yNTYsNiArMjU3LDggQEAgQWNjZXNzaWJpbGl0
eU9iamVjdEF0c3BpKiBBY2Nlc3NpYmlsaXR5Um9vdEF0c3BpOjpjaGlsZCgpIGNvbnN0CiAgICAg
aWYgKCFmcmFtZS5kb2N1bWVudCgpKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAorICAgIFNl
dEZvclNjb3BlPGJvb2w+IGluQ2hpbGQobV9pbkNoaWxkLCB0cnVlKTsKKwogICAgIEFYT2JqZWN0
Q2FjaGU6OmVuYWJsZUFjY2Vzc2liaWxpdHkoKTsKICAgICBBWE9iamVjdENhY2hlKiBjYWNoZSA9
IGZyYW1lLmRvY3VtZW50KCktPmF4T2JqZWN0Q2FjaGUoKTsKICAgICBpZiAoIWNhY2hlKQpAQCAt
MjY3LDYgKzI3MCwxMyBAQCBBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkqIEFjY2Vzc2liaWxpdHlS
b290QXRzcGk6OmNoaWxkKCkgY29uc3QKIAogdm9pZCBBY2Nlc3NpYmlsaXR5Um9vdEF0c3BpOjpj
aGlsZEFkZGVkKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYgY2hpbGQpCiB7CisgICAgLy8gRG9u
J3QgZW1pdCBjaGlsZHJlbiBjaGFuZ2VkIHdoZW4gY2FsbGVkIGZyb20gY2hpbGQoKSBiZWNhdXNl
IHRoYXQgbWVhbnMgdGhlIHRyZWUgaXMgYmVpbmcgcG9wdWxhdGVkLgorICAgIGlmIChtX2luQ2hp
bGQgfHwgIW1faXNUcmVlUmVnaXN0ZXJlZC5sb2FkKCkpCisgICAgICAgIHJldHVybjsKKworICAg
IGlmICh0aGlzLT5jaGlsZCgpICE9ICZjaGlsZCkKKyAgICAgICAgcmV0dXJuOworCiAgICAgQWNj
ZXNzaWJpbGl0eUF0c3BpOjpjdXJyZW50KCkuY2hpbGRyZW5DaGFuZ2VkKCp0aGlzLCBjaGlsZCwg
QWNjZXNzaWJpbGl0eUF0c3BpOjpDaGlsZHJlbkNoYW5nZWQ6OkFkZGVkKTsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9v
dEF0c3BpLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxp
dHlSb290QXRzcGkuaAppbmRleCA3MGJkNDgzODJmMTUuLmYyMWQ4ODY2ODQyZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0
c3BpLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmls
aXR5Um9vdEF0c3BpLmgKQEAgLTcwLDYgKzcwLDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9w
YXJlbnRVbmlxdWVOYW1lOwogICAgIFN0cmluZyBtX3BhcmVudFBhdGg7CiAgICAgQXRvbWljPGJv
b2w+IG1faXNUcmVlUmVnaXN0ZXJlZCB7IGZhbHNlIH07CisgICAgbXV0YWJsZSBib29sIG1faW5D
aGlsZCB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>448916</attachid>
            <date>2022-01-12 01:47:35 -0800</date>
            <delta_ts>2022-01-12 03:31:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wcore-atspi-defer-add-accessible.diff</filename>
            <type>text/plain</type>
            <size>19453</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwZTA1YjNmMDIxNDcuLjM2ZDZjYTk5NTk3YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDQzIEBACisyMDIyLTAxLTEyICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXVthMTF5XSBEZWZlciB0aGUgZW1pc3Npb24gb2Yg
QWRkQWNjZXNzaWJsZSBzaWduYWwgd2l0aCBBVFNQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NzQwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgSW4gY2FzZSBvZiBub2RlIGFkZGVkIGFuZCByZW1vdmVk
IHF1aWNrbHksIHdlIGp1c3QgYXZvaWQgdGhlIGVtaXNzaW9uIG9mIHRoZSBzaWduYWwuCisKKyAg
ICAgICAgKiBhY2Nlc3NpYmlsaXR5L2F0c3BpL0FYT2JqZWN0Q2FjaGVBdHNwaS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hlOjphdHRhY2hXcmFwcGVyKTogTm90aWZ5IHRoZSBy
b290IGFib3V0IGl0cyBuZXcgY2hpbGQgZWFybGllciB0byBlbnN1cmUgdGhlIGlzb2xhdGVkIHRy
ZWUKKyAgICAgICAgaXMgY3JlYXRlZCBhcyBzb29uIGFzIHBvc3NpYmxlLgorICAgICAgICAoV2Vi
Q29yZTo6QVhPYmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSk6
IFJlbW92ZSB0aGUgcm9vdCBjYXNlIGZyb20gaGVyZS4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3Np
YmlsaXR5QXRzcGk6OnBhcmVudENoYW5nZWQpOiBFbnN1cmUgb2JqZWN0IGlzIGNhY2hlZCBiZWZv
cmUgZW1pdHRpbmcgdGhlIHNpZ25hbC4KKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlB
dHNwaTo6Y2hpbGRyZW5DaGFuZ2VkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3Np
YmlsaXR5QXRzcGk6OnN0YXRlQ2hhbmdlZCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6QWNj
ZXNzaWJpbGl0eUF0c3BpOjp0ZXh0Q2hhbmdlZCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6
QWNjZXNzaWJpbGl0eUF0c3BpOjp0ZXh0QXR0cmlidXRlc0NoYW5nZWQpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlBdHNwaTo6dGV4dENhcmV0TW92ZWQpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlBdHNwaTo6dGV4dFNlbGVjdGlvbkNoYW5n
ZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlBdHNwaTo6dmFsdWVD
aGFuZ2VkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5QXRzcGk6OnNl
bGVjdGlvbkNoYW5nZWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlB
dHNwaTo6bG9hZEV2ZW50KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpBY2Nlc3NpYmlsaXR5
QXRzcGk6OmFkZFRvQ2FjaGVJZk5lZWRlZCk6IEhlbHBlciB0byBhZGQgYW4gb2JqZWN0IHRvIHRo
ZSBjYWNoZSBhbmQgZW1pdCBBZGRBY2Nlc3NpYmxlIHNpZ25hbC4KKyAgICAgICAgKFdlYkNvcmU6
OkFjY2Vzc2liaWxpdHlBdHNwaTo6Y2FjaGVVcGRhdGVUaW1lckZpcmVkKTogVXBkYXRlIHRoZSBj
YWNoZSB3aXRoIHBlbmRpbmcgYWRkcy4KKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlB
dHNwaTo6c2NoZWR1bGVDYWNoZVVwZGF0ZSk6IENyZWF0ZSB0aGUgdXBkYXRlIGNhY2hlIHRpbWVy
IGlmIG5lZWRlZCBhbmQgc2NoZWR1bGUgYW4KKyAgICAgICAgdXBkYXRlIGlmIHRoZXJlIGlzbid0
IGEgcGVuZGluZyBvbmUgYWxyZWFkeS4KKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlB
dHNwaTo6YWRkQWNjZXNzaWJsZSk6IEFkZCBvYmplY3QgdG8gdGhlIGxpc3QgYW5kIHNjaGVkdWxl
IGEgY2FjaGUgdXBkYXRlLgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eUF0c3BpOjpy
ZW1vdmVBY2Nlc3NpYmxlKTogUmV0dXJuIGVhcmx5IGlmIHRoZSBvYmplY3QgaXMgaW4gdGhlIHVw
ZGF0ZSBjYWNoZSBsaXN0LgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJp
bGl0eUF0c3BpLmg6CisgICAgICAgICogYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5
T2JqZWN0QXRzcGkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eU9iamVjdEF0
c3BpOjpyZWdpc3Rlck9iamVjdCk6IFJlbW92ZSB0aGUgY2FsbCB0byBBY2Nlc3NpYmlsaXR5Um9v
dEF0c3BpOjpjaGlsZCgpIHdoZW4gYW4KKyAgICAgICAgb2JqZWN0IGlzIHJlZ2lzdGVyZWQgYmVm
b3JlIGJlaW5nIGF0dGFjaGVkIHRvIHRoZSBpc29sYXRlZCBvYmplY3QuCisgICAgICAgICogYWNj
ZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkFjY2Vzc2liaWxpdHlSb290QXRzcGk6OmNoaWxkIGNvbnN0KTogU2V0IG1faXNJbkNo
aWxkLgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJvb3RBdHNwaTo6Y2hpbGRBZGRl
ZCk6IFJldHVybiBlYXJseSBpZiB0aGUgZ2l2ZW4gY2hpbGQgaXMgbm90IHRoZSBjdXJyZW50IG9u
ZSBvciBjYWxsZWQKKyAgICAgICAgZnJvbSBjaGlsZCgpLgorICAgICAgICAqIGFjY2Vzc2liaWxp
dHkvYXRzcGkvQWNjZXNzaWJpbGl0eVJvb3RBdHNwaS5oOgorCiAyMDIyLTAxLTExICBDYXJsb3Mg
R2FyY2lhIENhbXBvcyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVthMTF5
XSBXZWIgcHJvY2VzcyBjcmFzaGVzIGluIHNvbWUgc2l0ZXMgaGF2aW5nIFNWRyBpbWFnZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNo
ZUF0c3BpLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RD
YWNoZUF0c3BpLmNwcAppbmRleCBiNTI4YTAxNTNkNjMuLjhiM2U5MTE5MWY3MyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BWE9iamVjdENhY2hlQXRzcGku
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQVhPYmplY3RDYWNo
ZUF0c3BpLmNwcApAQCAtMzUsMTAgKzM1LDE4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdm9p
ZCBBWE9iamVjdENhY2hlOjphdHRhY2hXcmFwcGVyKEFYQ29yZU9iamVjdCogYXhPYmplY3QpCiB7
Ci0gICAgYXV0byB3cmFwcGVyID0gQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpOjpjcmVhdGUoYXhP
YmplY3QsIGRvY3VtZW50KCkucGFnZSgpLT5hY2Nlc3NpYmlsaXR5Um9vdE9iamVjdCgpKTsKKyAg
ICBhdXRvKiBhdHNwaVJvb3QgPSBkb2N1bWVudCgpLnBhZ2UoKS0+YWNjZXNzaWJpbGl0eVJvb3RP
YmplY3QoKTsKKyAgICBhdXRvIHdyYXBwZXIgPSBBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGk6OmNy
ZWF0ZShheE9iamVjdCwgYXRzcGlSb290KTsKICAgICBheE9iamVjdC0+c2V0V3JhcHBlcih3cmFw
cGVyLnB0cigpKTsKIAorICAgIC8vIEhhbmRsZSB0aGUgcm9vdCBlYXJsaWVyIGhlcmUsIHNpbmNl
IHdlIGtub3cgaXQgb25seSBoYXMgb25lIGNoaWxkLgorICAgIGlmICghYXhPYmplY3QtPnBhcmVu
dE9iamVjdFVuaWdub3JlZCgpICYmIGF4T2JqZWN0LT5pc1Njcm9sbFZpZXcoKSAmJiBheE9iamVj
dC0+c2Nyb2xsVmlldygpID09IGRvY3VtZW50KCkudmlldygpICYmIGF0c3BpUm9vdCkgeworICAg
ICAgICB3cmFwcGVyLT5zZXRQYXJlbnQobnVsbHB0cik7IC8vIG51bGxwdHIgbWVhbnMgcm9vdC4K
KyAgICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIG1fZGVmZXJyZWRQYXJlbnRDaGFuZ2VkTGlz
dC5hZGQoYXhPYmplY3QpOworICAgIG1fcGVyZm9ybUNhY2hlVXBkYXRlVGltZXIuc3RhcnRPbmVT
aG90KDBfcyk7CiB9CiAKIHZvaWQgQVhPYmplY3RDYWNoZTo6cGxhdGZvcm1QZXJmb3JtRGVmZXJy
ZWRDYWNoZVVwZGF0ZSgpCkBAIC00OSwxMSArNTcsOCBAQCB2b2lkIEFYT2JqZWN0Q2FjaGU6OnBs
YXRmb3JtUGVyZm9ybURlZmVycmVkQ2FjaGVVcGRhdGUoKQogICAgICAgICAgICAgcmV0dXJuOwog
CiAgICAgICAgIGF1dG8qIGF4UGFyZW50ID0gYXhPYmplY3QucGFyZW50T2JqZWN0VW5pZ25vcmVk
KCk7Ci0gICAgICAgIGlmICghYXhQYXJlbnQpIHsKLSAgICAgICAgICAgIGlmIChheE9iamVjdC5p
c1Njcm9sbFZpZXcoKSAmJiBheE9iamVjdC5zY3JvbGxWaWV3KCkgPT0gZG9jdW1lbnQoKS52aWV3
KCkpCi0gICAgICAgICAgICAgICAgd3JhcHBlci0+c2V0UGFyZW50KG51bGxwdHIpOyAvLyBudWxs
cHRyIHBhcmVudCBtZWFucyByb290LgorICAgICAgICBpZiAoIWF4UGFyZW50KQogICAgICAgICAg
ICAgcmV0dXJuOwotICAgICAgICB9CiAKICAgICAgICAgaWYgKGF1dG8qIGF4UGFyZW50V3JhcHBl
ciA9IGF4UGFyZW50LT53cmFwcGVyKCkpCiAgICAgICAgICAgICB3cmFwcGVyLT5zZXRQYXJlbnQo
YXhQYXJlbnRXcmFwcGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmNwcAppbmRleCAzYjI5ZjhhNmJjNzQuLjJh
NGZjNjEyNDQ2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNw
aS9BY2Nlc3NpYmlsaXR5QXRzcGkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmNwcApAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1
ZGUgPGdpby9naW8uaD4KICNpbmNsdWRlIDxnbGliL2dpMThuLWxpYi5oPgogI2luY2x1ZGUgPHd0
Zi9NYWluVGhyZWFkLmg+Ci0jaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+Ci0jaW5jbHVk
ZSA8d3RmL1NldEZvclNjb3BlLmg+CiAjaW5jbHVkZSA8d3RmL1NvcnRlZEFycmF5TWFwLmg+CiAj
aW5jbHVkZSA8d3RmL1VVSUQuaD4KIApAQCAtMzU3LDYgKzM1NSw5IEBAIHZvaWQgQWNjZXNzaWJp
bGl0eUF0c3BpOjpwYXJlbnRDaGFuZ2VkKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYgYXRzcGlP
YmplY3QpCiAgICAgICAgIGlmIChhdHNwaU9iamVjdC0+cmVnaXN0ZXJPYmplY3QoKSkKICAgICAg
ICAgICAgIHJldHVybjsKIAorICAgICAgICBpZiAobV9jYWNoZVVwZGF0ZUxpc3QucmVtb3ZlKGF0
c3BpT2JqZWN0LnB0cigpKSkKKyAgICAgICAgICAgIGFkZFRvQ2FjaGVJZk5lZWRlZChhdHNwaU9i
amVjdC5nZXQoKSk7CisKICAgICAgICAgZ19kYnVzX2Nvbm5lY3Rpb25fZW1pdF9zaWduYWwobV9j
b25uZWN0aW9uLmdldCgpLCBudWxscHRyLCBhdHNwaU9iamVjdC0+cGF0aCgpLnV0ZjgoKS5kYXRh
KCksICJvcmcuYTExeS5hdHNwaS5FdmVudC5PYmplY3QiLCAiUHJvcGVydHlDaGFuZ2UiLAogICAg
ICAgICAgICAgZ192YXJpYW50X25ldygiKHNpaXZhe3N2fSkiLCAiYWNjZXNzaWJsZS1wYXJlbnQi
LCAwLCAwLCBhdHNwaU9iamVjdC0+cGFyZW50UmVmZXJlbmNlKCksIG51bGxwdHIpLCBudWxscHRy
KTsKICAgICB9KTsKQEAgLTM4OCw2ICszODksMTEgQEAgdm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6
OmNoaWxkcmVuQ2hhbmdlZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0LAog
ICAgICAgICBpZiAoIWF0c3BpT2JqZWN0LT5pc1RyZWVSZWdpc3RlcmVkKCkpCiAgICAgICAgICAg
ICByZXR1cm47CiAKKyAgICAgICAgaWYgKG1fY2FjaGVVcGRhdGVMaXN0LnJlbW92ZShhdHNwaU9i
amVjdC5wdHIoKSkpCisgICAgICAgICAgICBhZGRUb0NhY2hlSWZOZWVkZWQoYXRzcGlPYmplY3Qu
Z2V0KCkpOworICAgICAgICBpZiAobV9jYWNoZVVwZGF0ZUxpc3QucmVtb3ZlKGNoaWxkLnB0cigp
KSkKKyAgICAgICAgICAgIGFkZFRvQ2FjaGVJZk5lZWRlZChjaGlsZC5nZXQoKSk7CisKICAgICAg
ICAgZ19kYnVzX2Nvbm5lY3Rpb25fZW1pdF9zaWduYWwobV9jb25uZWN0aW9uLmdldCgpLCBudWxs
cHRyLCBhdHNwaU9iamVjdC0+cGF0aCgpLnV0ZjgoKS5kYXRhKCksICJvcmcuYTExeS5hdHNwaS5F
dmVudC5PYmplY3QiLCAiQ2hpbGRyZW5DaGFuZ2VkIiwKICAgICAgICAgICAgIGdfdmFyaWFudF9u
ZXcoIihzaWl2KHNvKSkiLCBjaGFuZ2UgPT0gQ2hpbGRyZW5DaGFuZ2VkOjpBZGRlZCA/ICJhZGQi
IDogInJlbW92ZSIsIGNoaWxkLT5pbmRleEluUGFyZW50Rm9yQ2hpbGRyZW5DaGFuZ2VkKGNoYW5n
ZSksCiAgICAgICAgICAgICAwLCBnX3ZhcmlhbnRfbmV3KCIoc28pIiwgdW5pcXVlTmFtZSgpLCBj
aGlsZC0+cGF0aCgpLnV0ZjgoKS5kYXRhKCkpLCB1bmlxdWVOYW1lKCksIGF0c3BpT2JqZWN0LT5w
YXRoKCkudXRmOCgpLmRhdGEoKSksIG51bGxwdHIpOwpAQCAtNDAyLDYgKzQwOCw5IEBAIHZvaWQg
QWNjZXNzaWJpbGl0eUF0c3BpOjpjaGlsZHJlbkNoYW5nZWQoQWNjZXNzaWJpbGl0eVJvb3RBdHNw
aSYgcm9vdE9iamVjdCwgQWNjCiAgICAgICAgIGlmICghbV9jb25uZWN0aW9uKQogICAgICAgICAg
ICAgcmV0dXJuOwogCisgICAgICAgIGlmIChtX2NhY2hlVXBkYXRlTGlzdC5yZW1vdmUoY2hpbGQu
cHRyKCkpKQorICAgICAgICAgICAgYWRkVG9DYWNoZUlmTmVlZGVkKGNoaWxkLmdldCgpKTsKKwog
ICAgICAgICBnX2RidXNfY29ubmVjdGlvbl9lbWl0X3NpZ25hbChtX2Nvbm5lY3Rpb24uZ2V0KCks
IG51bGxwdHIsIHJvb3RPYmplY3QtPnBhdGgoKS51dGY4KCkuZGF0YSgpLCAib3JnLmExMXkuYXRz
cGkuRXZlbnQuT2JqZWN0IiwgIkNoaWxkcmVuQ2hhbmdlZCIsCiAgICAgICAgICAgICBnX3Zhcmlh
bnRfbmV3KCIoc2lpdihzbykpIiwgY2hhbmdlID09IENoaWxkcmVuQ2hhbmdlZDo6QWRkZWQgPyAi
YWRkIiA6ICJyZW1vdmUiLCAwLAogICAgICAgICAgICAgMCwgZ192YXJpYW50X25ldygiKHNvKSIs
IHVuaXF1ZU5hbWUoKSwgY2hpbGQtPnBhdGgoKS51dGY4KCkuZGF0YSgpKSwgdW5pcXVlTmFtZSgp
LCByb290T2JqZWN0LT5wYXRoKCkudXRmOCgpLmRhdGEoKSksIG51bGxwdHIpOwpAQCAtNDIzLDYg
KzQzMiw5IEBAIHZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpzdGF0ZUNoYW5nZWQoQWNjZXNzaWJp
bGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCwgY29uCiAgICAgICAgIGlmICghc2hvdWxkRW1p
dFNpZ25hbCgiT2JqZWN0IiwgIlN0YXRlQ2hhbmdlZCIsIG5hbWUuZGF0YSgpKSkKICAgICAgICAg
ICAgIHJldHVybjsKIAorICAgICAgICBpZiAobV9jYWNoZVVwZGF0ZUxpc3QucmVtb3ZlKGF0c3Bp
T2JqZWN0LnB0cigpKSkKKyAgICAgICAgICAgIGFkZFRvQ2FjaGVJZk5lZWRlZChhdHNwaU9iamVj
dCk7CisKICAgICAgICAgZ19kYnVzX2Nvbm5lY3Rpb25fZW1pdF9zaWduYWwobV9jb25uZWN0aW9u
LmdldCgpLCBudWxscHRyLCBhdHNwaU9iamVjdC0+cGF0aCgpLnV0ZjgoKS5kYXRhKCksICJvcmcu
YTExeS5hdHNwaS5FdmVudC5PYmplY3QiLCAiU3RhdGVDaGFuZ2VkIiwKICAgICAgICAgICAgIGdf
dmFyaWFudF9uZXcoIihzaWl2YXtzdn0pIiwgbmFtZS5kYXRhKCksIHZhbHVlLCAwLCBnX3Zhcmlh
bnRfbmV3X3N0cmluZygiMCIpLCBudWxscHRyKSwgbnVsbHB0cik7CiAgICAgfSk7CkBAIC00NDMs
NiArNDU1LDkgQEAgdm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6OnRleHRDaGFuZ2VkKEFjY2Vzc2li
aWxpdHlPYmplY3RBdHNwaSYgYXRzcGlPYmplY3QsIGNvbnMKICAgICAgICAgaWYgKCFzaG91bGRF
bWl0U2lnbmFsKCJPYmplY3QiLCAiVGV4dENoYW5nZWQiLCBjaGFuZ2VUeXBlLmRhdGEoKSkpCiAg
ICAgICAgICAgICByZXR1cm47CiAKKyAgICAgICAgaWYgKG1fY2FjaGVVcGRhdGVMaXN0LnJlbW92
ZShhdHNwaU9iamVjdC5wdHIoKSkpCisgICAgICAgICAgICBhZGRUb0NhY2hlSWZOZWVkZWQoYXRz
cGlPYmplY3QpOworCiAgICAgICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29u
bmVjdGlvbi5nZXQoKSwgbnVsbHB0ciwgYXRzcGlPYmplY3QtPnBhdGgoKS51dGY4KCkuZGF0YSgp
LCAib3JnLmExMXkuYXRzcGkuRXZlbnQuT2JqZWN0IiwgIlRleHRDaGFuZ2VkIiwKICAgICAgICAg
ICAgIGdfdmFyaWFudF9uZXcoIihzaWl2YXtzdn0pIiwgY2hhbmdlVHlwZS5kYXRhKCksIG9mZnNl
dCwgbGVuZ3RoLCBnX3ZhcmlhbnRfbmV3X3N0cmluZyh0ZXh0LmRhdGEoKSksIG51bGxwdHIpLCBu
dWxscHRyKTsKICAgICB9KTsKQEAgLTQ1OCw2ICs0NzMsOSBAQCB2b2lkIEFjY2Vzc2liaWxpdHlB
dHNwaTo6dGV4dEF0dHJpYnV0ZXNDaGFuZ2VkKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYgYXRz
cGlPYgogICAgICAgICBpZiAoIXNob3VsZEVtaXRTaWduYWwoIk9iamVjdCIsICJUZXh0QXR0cmli
dXRlc0NoYW5nZWQiKSkKICAgICAgICAgICAgIHJldHVybjsKIAorICAgICAgICBpZiAobV9jYWNo
ZVVwZGF0ZUxpc3QucmVtb3ZlKGF0c3BpT2JqZWN0LnB0cigpKSkKKyAgICAgICAgICAgIGFkZFRv
Q2FjaGVJZk5lZWRlZChhdHNwaU9iamVjdCk7CisKICAgICAgICAgZ19kYnVzX2Nvbm5lY3Rpb25f
ZW1pdF9zaWduYWwobV9jb25uZWN0aW9uLmdldCgpLCBudWxscHRyLCBhdHNwaU9iamVjdC0+cGF0
aCgpLnV0ZjgoKS5kYXRhKCksICJvcmcuYTExeS5hdHNwaS5FdmVudC5PYmplY3QiLCAiVGV4dEF0
dHJpYnV0ZXNDaGFuZ2VkIiwKICAgICAgICAgICAgIGdfdmFyaWFudF9uZXcoIihzaWl2YXtzdn0p
IiwgIiIsIDAsIDAsIGdfdmFyaWFudF9uZXdfc3RyaW5nKCIiKSwgbnVsbHB0ciksIG51bGxwdHIp
OwogICAgIH0pOwpAQCAtNDc4LDYgKzQ5Niw5IEBAIHZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjp0
ZXh0Q2FyZXRNb3ZlZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0LCB1CiAg
ICAgICAgIGlmICghc2hvdWxkRW1pdFNpZ25hbCgiT2JqZWN0IiwgIlRleHRDYXJldE1vdmVkIikp
CiAgICAgICAgICAgICByZXR1cm47CiAKKyAgICAgICAgaWYgKG1fY2FjaGVVcGRhdGVMaXN0LnJl
bW92ZShhdHNwaU9iamVjdC5wdHIoKSkpCisgICAgICAgICAgICBhZGRUb0NhY2hlSWZOZWVkZWQo
YXRzcGlPYmplY3QpOworCiAgICAgICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1f
Y29ubmVjdGlvbi5nZXQoKSwgbnVsbHB0ciwgYXRzcGlPYmplY3QtPnBhdGgoKS51dGY4KCkuZGF0
YSgpLCAib3JnLmExMXkuYXRzcGkuRXZlbnQuT2JqZWN0IiwgIlRleHRDYXJldE1vdmVkIiwKICAg
ICAgICAgICAgIGdfdmFyaWFudF9uZXcoIihzaWl2YXtzdn0pIiwgIiIsIGNhcmV0T2Zmc2V0LCAw
LCBnX3ZhcmlhbnRfbmV3X3N0cmluZygiIiksIG51bGxwdHIpLCBudWxscHRyKTsKICAgICB9KTsK
QEAgLTQ5Myw2ICs1MTQsOSBAQCB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6dGV4dFNlbGVjdGlv
bkNoYW5nZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iagogICAgICAgICBpZiAo
IXNob3VsZEVtaXRTaWduYWwoIk9iamVjdCIsICJUZXh0U2VsZWN0aW9uQ2hhbmdlZCIpKQogICAg
ICAgICAgICAgcmV0dXJuOwogCisgICAgICAgIGlmIChtX2NhY2hlVXBkYXRlTGlzdC5yZW1vdmUo
YXRzcGlPYmplY3QucHRyKCkpKQorICAgICAgICAgICAgYWRkVG9DYWNoZUlmTmVlZGVkKGF0c3Bp
T2JqZWN0KTsKKwogICAgICAgICBnX2RidXNfY29ubmVjdGlvbl9lbWl0X3NpZ25hbChtX2Nvbm5l
Y3Rpb24uZ2V0KCksIG51bGxwdHIsIGF0c3BpT2JqZWN0LT5wYXRoKCkudXRmOCgpLmRhdGEoKSwg
Im9yZy5hMTF5LmF0c3BpLkV2ZW50Lk9iamVjdCIsICJUZXh0U2VsZWN0aW9uQ2hhbmdlZCIsCiAg
ICAgICAgICAgICBnX3ZhcmlhbnRfbmV3KCIoc2lpdmF7c3Z9KSIsICIiLCAwLCAwLCBnX3Zhcmlh
bnRfbmV3X3N0cmluZygiIiksIG51bGxwdHIpLCBudWxscHRyKTsKICAgICB9KTsKQEAgLTUxMyw2
ICs1MzcsOSBAQCB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6dmFsdWVDaGFuZ2VkKEFjY2Vzc2li
aWxpdHlPYmplY3RBdHNwaSYgYXRzcGlPYmplY3QsIGRvdQogICAgICAgICBpZiAoIXNob3VsZEVt
aXRTaWduYWwoIk9iamVjdCIsICJQcm9wZXJ0eUNoYW5nZSIsICJhY2Nlc3NpYmxlLXZhbHVlIikp
CiAgICAgICAgICAgICByZXR1cm47CiAKKyAgICAgICAgaWYgKG1fY2FjaGVVcGRhdGVMaXN0LnJl
bW92ZShhdHNwaU9iamVjdC5wdHIoKSkpCisgICAgICAgICAgICBhZGRUb0NhY2hlSWZOZWVkZWQo
YXRzcGlPYmplY3QpOworCiAgICAgICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1f
Y29ubmVjdGlvbi5nZXQoKSwgbnVsbHB0ciwgYXRzcGlPYmplY3QtPnBhdGgoKS51dGY4KCkuZGF0
YSgpLCAib3JnLmExMXkuYXRzcGkuRXZlbnQuT2JqZWN0IiwgIlByb3BlcnR5Q2hhbmdlIiwKICAg
ICAgICAgICAgIGdfdmFyaWFudF9uZXcoIihzaWl2YXtzdn0pIiwgImFjY2Vzc2libGUtdmFsdWUi
LCAwLCAwLCBnX3ZhcmlhbnRfbmV3X2RvdWJsZSh2YWx1ZSksIG51bGxwdHIpLCBudWxscHRyKTsK
ICAgICB9KTsKQEAgLTUzMyw2ICs1NjAsOSBAQCB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6c2Vs
ZWN0aW9uQ2hhbmdlZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQogICAg
ICAgICBpZiAoIXNob3VsZEVtaXRTaWduYWwoIk9iamVjdCIsICJTZWxlY3Rpb25DaGFuZ2VkIikp
CiAgICAgICAgICAgICByZXR1cm47CiAKKyAgICAgICAgaWYgKG1fY2FjaGVVcGRhdGVMaXN0LnJl
bW92ZShhdHNwaU9iamVjdC5wdHIoKSkpCisgICAgICAgICAgICBhZGRUb0NhY2hlSWZOZWVkZWQo
YXRzcGlPYmplY3QpOworCiAgICAgICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1f
Y29ubmVjdGlvbi5nZXQoKSwgbnVsbHB0ciwgYXRzcGlPYmplY3QtPnBhdGgoKS51dGY4KCkuZGF0
YSgpLCAib3JnLmExMXkuYXRzcGkuRXZlbnQuT2JqZWN0IiwgIlNlbGVjdGlvbkNoYW5nZWQiLAog
ICAgICAgICAgICAgZ192YXJpYW50X25ldygiKHNpaXZhe3N2fSkiLCAiIiwgMCwgMCwgZ192YXJp
YW50X25ld19zdHJpbmcoIiIpLCBudWxscHRyKSwgbnVsbHB0cik7CiAgICAgfSk7CkBAIC01NTMs
NiArNTgzLDkgQEAgdm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6OmxvYWRFdmVudChBY2Nlc3NpYmls
aXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0LCBDU3RyaW4KICAgICAgICAgaWYgKCFzaG91bGRF
bWl0U2lnbmFsKCJEb2N1bWVudCIsIGV2ZW50LmRhdGEoKSkpCiAgICAgICAgICAgICByZXR1cm47
CiAKKyAgICAgICAgaWYgKG1fY2FjaGVVcGRhdGVMaXN0LnJlbW92ZShhdHNwaU9iamVjdC5wdHIo
KSkpCisgICAgICAgICAgICBhZGRUb0NhY2hlSWZOZWVkZWQoYXRzcGlPYmplY3QpOworCiAgICAg
ICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29ubmVjdGlvbi5nZXQoKSwgbnVs
bHB0ciwgYXRzcGlPYmplY3QtPnBhdGgoKS51dGY4KCkuZGF0YSgpLCAib3JnLmExMXkuYXRzcGku
RXZlbnQuRG9jdW1lbnQiLCBldmVudC5kYXRhKCksCiAgICAgICAgICAgICBnX3ZhcmlhbnRfbmV3
KCIoc2lpdmF7c3Z9KSIsICIiLCAwLCAwLCBnX3ZhcmlhbnRfbmV3X3N0cmluZygiIiksIG51bGxw
dHIpLCBudWxscHRyKTsKICAgICB9KTsKQEAgLTcwNiw3ICs3MzksNiBAQCBHREJ1c0ludGVyZmFj
ZVZUYWJsZSBBY2Nlc3NpYmlsaXR5QXRzcGk6OnNfY2FjaGVGdW5jdGlvbnMgPSB7CiAgICAgICAg
IFJFTEVBU0VfQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CiAgICAgICAgIGlmICghZ19zdHJjbXAw
KG1ldGhvZE5hbWUsICJHZXRJdGVtcyIpKSB7CiAgICAgICAgICAgICBhdXRvJiBhdHNwaSA9ICpz
dGF0aWNfY2FzdDxBY2Nlc3NpYmlsaXR5QXRzcGkqPih1c2VyRGF0YSk7Ci0gICAgICAgICAgICBT
ZXRGb3JTY29wZTxib29sPiBpbkdldEl0ZW1zKGF0c3BpLm1faW5HZXRJdGVtcywgdHJ1ZSk7CiAg
ICAgICAgICAgICBHVmFyaWFudEJ1aWxkZXIgYnVpbGRlciA9IEdfVkFSSUFOVF9CVUlMREVSX0lO
SVQoR19WQVJJQU5UX1RZUEUoIigiIEdFVF9JVEVNU19TSUdOQVRVUkUgIikiKSk7CiAgICAgICAg
ICAgICBnX3ZhcmlhbnRfYnVpbGRlcl9vcGVuKCZidWlsZGVyLCBHX1ZBUklBTlRfVFlQRShHRVRf
SVRFTVNfU0lHTkFUVVJFKSk7CiAgICAgICAgICAgICBmb3IgKGF1dG8qIHJvb3RPYmplY3QgOiBh
dHNwaS5tX3Jvb3RPYmplY3RzLmtleXMoKSkgewpAQCAtNzI4LDYgKzc2MCw3IEBAIEdEQnVzSW50
ZXJmYWNlVlRhYmxlIEFjY2Vzc2liaWxpdHlBdHNwaTo6c19jYWNoZUZ1bmN0aW9ucyA9IHsKICAg
ICAgICAgICAgICAgICB3cmFwcGVyLT5zZXJpYWxpemUoJmJ1aWxkZXIpOwogICAgICAgICAgICAg
ICAgIGdfdmFyaWFudF9idWlsZGVyX2Nsb3NlKCZidWlsZGVyKTsKICAgICAgICAgICAgIH0KKwog
ICAgICAgICAgICAgZ192YXJpYW50X2J1aWxkZXJfY2xvc2UoJmJ1aWxkZXIpOwogICAgICAgICAg
ICAgZ19kYnVzX21ldGhvZF9pbnZvY2F0aW9uX3JldHVybl92YWx1ZShpbnZvY2F0aW9uLCBnX3Zh
cmlhbnRfYnVpbGRlcl9lbmQoJmJ1aWxkZXIpKTsKICAgICAgICAgfQpAQCAtNzUyLDMwICs3ODUs
NTkgQEAgdm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6OmVuc3VyZUNhY2hlKCkKICAgICBtX2NhY2hl
SUQgPSBnX2RidXNfY29ubmVjdGlvbl9yZWdpc3Rlcl9vYmplY3QobV9jb25uZWN0aW9uLmdldCgp
LCAiL29yZy9hMTF5L2F0c3BpL2NhY2hlIiwgY29uc3RfY2FzdDxHREJ1c0ludGVyZmFjZUluZm8q
Pigmd2Via2l0X2NhY2hlX2ludGVyZmFjZSksICZzX2NhY2hlRnVuY3Rpb25zLCB0aGlzLCBudWxs
cHRyLCBudWxscHRyKTsKIH0KIAotdm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6OmFkZEFjY2Vzc2li
bGUoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBhdHNwaU9iamVjdCkKK3ZvaWQgQWNjZXNzaWJp
bGl0eUF0c3BpOjphZGRUb0NhY2hlSWZOZWVkZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0c3BpJiBh
dHNwaU9iamVjdCkKIHsKICAgICBSRUxFQVNFX0FTU0VSVCghaXNNYWluVGhyZWFkKCkpOwotICAg
IGlmICghbV9jb25uZWN0aW9uKQorICAgIGF0c3BpT2JqZWN0LnVwZGF0ZUJhY2tpbmdTdG9yZSgp
OworICAgIGlmIChhdHNwaU9iamVjdC5pc0RlZnVuY3QoKSkKICAgICAgICAgcmV0dXJuOwogCiAg
ICAgYXV0byBhZGRSZXN1bHQgPSBtX2NhY2hlLmFkZChhdHNwaU9iamVjdC5wYXRoKCksICZhdHNw
aU9iamVjdCk7CiAgICAgaWYgKCFhZGRSZXN1bHQuaXNOZXdFbnRyeSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgaWYgKG1faW5HZXRJdGVtcykKLSAgICAgICAgcmV0dXJuOwotCiAgICAgR1Zhcmlh
bnRCdWlsZGVyIGJ1aWxkZXIgPSBHX1ZBUklBTlRfQlVJTERFUl9JTklUKEdfVkFSSUFOVF9UWVBF
KCIoIiBJVEVNX1NJR05BVFVSRSAiKSIpKTsKICAgICBhdHNwaU9iamVjdC5zZXJpYWxpemUoJmJ1
aWxkZXIpOwogICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29ubmVjdGlvbi5n
ZXQoKSwgbnVsbHB0ciwgIi9vcmcvYTExeS9hdHNwaS9jYWNoZSIsICJvcmcuYTExeS5hdHNwaS5D
YWNoZSIsICJBZGRBY2Nlc3NpYmxlIiwKICAgICAgICAgZ192YXJpYW50X25ldygiKEAoIiBJVEVN
X1NJR05BVFVSRSAiKSkiLCBnX3ZhcmlhbnRfYnVpbGRlcl9lbmQoJmJ1aWxkZXIpKSwgbnVsbHB0
cik7CiB9CiAKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjpjYWNoZVVwZGF0ZVRpbWVyRmlyZWQo
KQoreworICAgIHdoaWxlICghbV9jYWNoZVVwZGF0ZUxpc3QuaXNFbXB0eSgpKQorICAgICAgICBh
ZGRUb0NhY2hlSWZOZWVkZWQoKm1fY2FjaGVVcGRhdGVMaXN0LnRha2VGaXJzdCgpKTsKK30KKwor
dm9pZCBBY2Nlc3NpYmlsaXR5QXRzcGk6OnNjaGVkdWxlQ2FjaGVVcGRhdGUoKQoreworICAgIFJF
TEVBU0VfQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CisgICAgaWYgKCFtX2NhY2hlVXBkYXRlVGlt
ZXIpCisgICAgICAgIG1fY2FjaGVVcGRhdGVUaW1lciA9IG1ha2VVbmlxdWU8UnVuTG9vcDo6VGlt
ZXI8QWNjZXNzaWJpbGl0eUF0c3BpPj4oUnVuTG9vcDo6Y3VycmVudCgpLCB0aGlzLCAmQWNjZXNz
aWJpbGl0eUF0c3BpOjpjYWNoZVVwZGF0ZVRpbWVyRmlyZWQpOworCisgICAgaWYgKCFtX2NhY2hl
VXBkYXRlVGltZXItPmlzQWN0aXZlKCkpCisgICAgICAgIG1fY2FjaGVVcGRhdGVUaW1lci0+c3Rh
cnRPbmVTaG90KDBfcyk7Cit9CisKK3ZvaWQgQWNjZXNzaWJpbGl0eUF0c3BpOjphZGRBY2Nlc3Np
YmxlKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSYgYXRzcGlPYmplY3QpCit7CisgICAgUkVMRUFT
RV9BU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKKyAgICBpZiAoIW1fY29ubmVjdGlvbikKKyAgICAg
ICAgcmV0dXJuOworCisgICAgbV9jYWNoZVVwZGF0ZUxpc3QuYWRkKCZhdHNwaU9iamVjdCk7Cisg
ICAgc2NoZWR1bGVDYWNoZVVwZGF0ZSgpOworfQorCiB2b2lkIEFjY2Vzc2liaWxpdHlBdHNwaTo6
cmVtb3ZlQWNjZXNzaWJsZShBY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkmIGF0c3BpT2JqZWN0KQog
ewogICAgIFJFTEVBU0VfQVNTRVJUKCFpc01haW5UaHJlYWQoKSk7CisgICAgaWYgKG1fY2FjaGVV
cGRhdGVMaXN0LnJlbW92ZSgmYXRzcGlPYmplY3QpKQorICAgICAgICByZXR1cm47CisKICAgICBj
b25zdCBhdXRvJiBwYXRoID0gYXRzcGlPYmplY3QucGF0aCgpOwotICAgIG1fY2FjaGUucmVtb3Zl
KHBhdGgpOworICAgIGlmICghbV9jYWNoZS5yZW1vdmUocGF0aCkpCisgICAgICAgIHJldHVybjsK
KwogICAgIGdfZGJ1c19jb25uZWN0aW9uX2VtaXRfc2lnbmFsKG1fY29ubmVjdGlvbi5nZXQoKSwg
bnVsbHB0ciwgIi9vcmcvYTExeS9hdHNwaS9jYWNoZSIsICJvcmcuYTExeS5hdHNwaS5DYWNoZSIs
ICJSZW1vdmVBY2Nlc3NpYmxlIiwKICAgICAgICAgZ192YXJpYW50X25ldygiKChzbykpIiwgdW5p
cXVlTmFtZSgpLCBwYXRoLnV0ZjgoKS5kYXRhKCkpLCBudWxscHRyKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5o
CmluZGV4IDBiNGUzMjBiOGUwYi4uMzZhZWM3NjU3OGY4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlBdHNwaS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eUF0c3BpLmgKQEAgLTIz
LDYgKzIzLDcgQEAKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KICNpbmNsdWRl
IDx3dGYvRmFzdE1hbGxvYy5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CisjaW5jbHVkZSA8
d3RmL0xpc3RIYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0
Zi9Xb3JrUXVldWUuaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HUmVmUHRyLmg+CkBAIC05OSw3ICsx
MDAsMTAgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlbW92ZUV2ZW50TGlzdGVuZXIoY29uc3QgY2hh
ciogZGJ1c05hbWUsIGNvbnN0IGNoYXIqIGV2ZW50TmFtZSk7CiAKICAgICB2b2lkIGVuc3VyZUNh
Y2hlKCk7CisgICAgdm9pZCBhZGRUb0NhY2hlSWZOZWVkZWQoQWNjZXNzaWJpbGl0eU9iamVjdEF0
c3BpJik7CiAgICAgdm9pZCByZW1vdmVBY2Nlc3NpYmxlKEFjY2Vzc2liaWxpdHlPYmplY3RBdHNw
aSYpOworICAgIHZvaWQgc2NoZWR1bGVDYWNoZVVwZGF0ZSgpOworICAgIHZvaWQgY2FjaGVVcGRh
dGVUaW1lckZpcmVkKCk7CiAKICAgICBib29sIHNob3VsZEVtaXRTaWduYWwoY29uc3QgY2hhciog
aW50ZXJmYWNlLCBjb25zdCBjaGFyKiBuYW1lLCBjb25zdCBjaGFyKiBkZXRhaWwgPSAiIik7CiAK
QEAgLTEyNCw3ICsxMjgsOCBAQCBwcml2YXRlOgogICAgIEhhc2hNYXA8QWNjZXNzaWJpbGl0eU9i
amVjdEF0c3BpKiwgVmVjdG9yPHVuc2lnbmVkLCAyMD4+IG1fYXRzcGlIeXBlcmxpbmtzOwogICAg
IHVuc2lnbmVkIG1fY2FjaGVJRCB7IDAgfTsKICAgICBIYXNoTWFwPFN0cmluZywgQWNjZXNzaWJp
bGl0eU9iamVjdEF0c3BpKj4gbV9jYWNoZTsKLSAgICBib29sIG1faW5HZXRJdGVtcyB7IGZhbHNl
IH07CisgICAgTGlzdEhhc2hTZXQ8UmVmUHRyPEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaT4+IG1f
Y2FjaGVVcGRhdGVMaXN0OworICAgIHN0ZDo6dW5pcXVlX3B0cjxSdW5Mb29wOjpUaW1lcjxBY2Nl
c3NpYmlsaXR5QXRzcGk+PiBtX2NhY2hlVXBkYXRlVGltZXI7CiAjaWYgRU5BQkxFKERFVkVMT1BF
Ul9NT0RFKQogICAgIEhhc2hNYXA8dm9pZCosIE5vdGlmaWNhdGlvbk9ic2VydmVyPiBtX25vdGlm
aWNhdGlvbk9ic2VydmVyczsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwIGIvU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRzcGkuY3BwCmlu
ZGV4IGVmNDlhZjc1NmM2ZC4uMmM5NmYwNWVhNTkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlPYmplY3RBdHNwaS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5T2JqZWN0QXRz
cGkuY3BwCkBAIC01MzQsMTcgKzUzNCw2IEBAIGJvb2wgQWNjZXNzaWJpbGl0eU9iamVjdEF0c3Bp
OjpyZWdpc3Rlck9iamVjdCgpCiAgICAgICAgIGludGVyZmFjZXMuYXBwZW5kKHsgY29uc3RfY2Fz
dDxHREJ1c0ludGVyZmFjZUluZm8qPigmd2Via2l0X3RhYmxlX2ludGVyZmFjZSksICZzX3RhYmxl
RnVuY3Rpb25zIH0pOwogICAgIGlmIChtX2ludGVyZmFjZXMuY29udGFpbnMoSW50ZXJmYWNlOjpU
YWJsZUNlbGwpKQogICAgICAgICBpbnRlcmZhY2VzLmFwcGVuZCh7IGNvbnN0X2Nhc3Q8R0RCdXNJ
bnRlcmZhY2VJbmZvKj4oJndlYmtpdF90YWJsZV9jZWxsX2ludGVyZmFjZSksICZzX3RhYmxlQ2Vs
bEZ1bmN0aW9ucyB9KTsKLSAgICBpZiAoIW1fYXhPYmplY3QpIHsKLSAgICAgICAgLy8gSXNvbGF0
ZWQgdHJlZSBoYXNuJ3QgYmVlbiBjcmVhdGVkIHlldCwgY2FsbCBBY2Nlc3NpYmlsaXR5Um9vdEF0
c3BpOjpjaGlsZCgpCi0gICAgICAgIC8vIHRvIGNyZWF0ZSBpdCBiZWZvcmUgcmVnaXN0ZXJpbmcg
dGhlIG9iamVjdC4KLSAgICAgICAgQWNjZXNzaWJpbGl0eTo6cGVyZm9ybUZ1bmN0aW9uT25NYWlu
VGhyZWFkKFt0aGlzXSB7Ci0gICAgICAgICAgICBpZiAoIW1fY29yZU9iamVjdCkKLSAgICAgICAg
ICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgICAgIGlmIChhdXRvKiBhdHNwaVJvb3QgPSByb290
KCkpCi0gICAgICAgICAgICAgICAgYXRzcGlSb290LT5jaGlsZCgpOwotICAgICAgICB9KTsKLSAg
ICB9CiAKICAgICBtX3BhdGggPSBBY2Nlc3NpYmlsaXR5QXRzcGk6OnNpbmdsZXRvbigpLnJlZ2lz
dGVyT2JqZWN0KCp0aGlzLCBXVEZNb3ZlKGludGVyZmFjZXMpKTsKICAgICBBY2Nlc3NpYmlsaXR5
QXRzcGk6OnNpbmdsZXRvbigpLmFkZEFjY2Vzc2libGUoKnRoaXMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eVJvb3RB
dHNwaS5jcHAKaW5kZXggMTc2ZmQyOTBmNjE5Li5iNmNiNDFkNmFiN2YgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvYXRzcGkvQWNjZXNzaWJpbGl0eVJvb3RBdHNwaS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5
Um9vdEF0c3BpLmNwcApAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNs
dWRlIDxnbGliL2dpMThuLWxpYi5oPgogI2luY2x1ZGUgPHd0Zi9NYWluVGhyZWFkLmg+CisjaW5j
bHVkZSA8d3RmL1NldEZvclNjb3BlLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMjU2
LDYgKzI1Nyw4IEBAIEFjY2Vzc2liaWxpdHlPYmplY3RBdHNwaSogQWNjZXNzaWJpbGl0eVJvb3RB
dHNwaTo6Y2hpbGQoKSBjb25zdAogICAgIGlmICghZnJhbWUuZG9jdW1lbnQoKSkKICAgICAgICAg
cmV0dXJuIG51bGxwdHI7CiAKKyAgICBTZXRGb3JTY29wZTxib29sPiBpbkNoaWxkKG1faW5DaGls
ZCwgdHJ1ZSk7CisKICAgICBBWE9iamVjdENhY2hlOjplbmFibGVBY2Nlc3NpYmlsaXR5KCk7CiAg
ICAgQVhPYmplY3RDYWNoZSogY2FjaGUgPSBmcmFtZS5kb2N1bWVudCgpLT5heE9iamVjdENhY2hl
KCk7CiAgICAgaWYgKCFjYWNoZSkKQEAgLTI2Nyw2ICsyNzAsMTMgQEAgQWNjZXNzaWJpbGl0eU9i
amVjdEF0c3BpKiBBY2Nlc3NpYmlsaXR5Um9vdEF0c3BpOjpjaGlsZCgpIGNvbnN0CiAKIHZvaWQg
QWNjZXNzaWJpbGl0eVJvb3RBdHNwaTo6Y2hpbGRBZGRlZChBY2Nlc3NpYmlsaXR5T2JqZWN0QXRz
cGkmIGNoaWxkKQogeworICAgIC8vIERvbid0IGVtaXQgY2hpbGRyZW4gY2hhbmdlZCB3aGVuIGNh
bGxlZCBmcm9tIGNoaWxkKCkgYmVjYXVzZSB0aGF0IG1lYW5zIHRoZSB0cmVlIGlzIGJlaW5nIHBv
cHVsYXRlZC4KKyAgICBpZiAobV9pbkNoaWxkIHx8ICFtX2lzVHJlZVJlZ2lzdGVyZWQubG9hZCgp
KQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAodGhpcy0+Y2hpbGQoKSAhPSAmY2hpbGQpCisg
ICAgICAgIHJldHVybjsKKwogICAgIEFjY2Vzc2liaWxpdHlBdHNwaTo6c2luZ2xldG9uKCkuY2hp
bGRyZW5DaGFuZ2VkKCp0aGlzLCBjaGlsZCwgQWNjZXNzaWJpbGl0eUF0c3BpOjpDaGlsZHJlbkNo
YW5nZWQ6OkFkZGVkKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmggYi9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L2F0c3BpL0FjY2Vzc2liaWxpdHlSb290QXRzcGkuaAppbmRleCAxYzJlNjg0YzY5
N2QuLjVmZmM1ODZlZTA2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9hdHNwaS9BY2Nlc3NpYmlsaXR5Um9vdEF0c3BpLmgKQEAgLTcwLDYgKzcwLDcg
QEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9wYXJlbnRVbmlxdWVOYW1lOwogICAgIFN0cmluZyBt
X3BhcmVudFBhdGg7CiAgICAgQXRvbWljPGJvb2w+IG1faXNUcmVlUmVnaXN0ZXJlZCB7IGZhbHNl
IH07CisgICAgbXV0YWJsZSBib29sIG1faW5DaGlsZCB7IGZhbHNlIH07CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCg==
</data>
<flag name="review"
          id="474888"
          type_id="1"
          status="+"
          setter="aperez"
    />
    <flag name="commit-queue"
          id="474896"
          type_id="3"
          status="-"
          setter="aperez"
    />
          </attachment>
      

    </bug>

</bugzilla>