<?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>82195</bug_id>
          
          <creation_ts>2012-03-26 06:11:43 -0700</creation_ts>
          <short_desc>[Qt] Fix includes after QtDeclarative -&gt; QtQML renaming</short_desc>
          <delta_ts>2012-04-05 09:54:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>82887</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Ádám Kallai">kadam</assigned_to>
          <cc>hausmann</cc>
    
    <cc>jesus</cc>
    
    <cc>kkristof</cc>
    
    <cc>menard</cc>
    
    <cc>ossy</cc>
    
    <cc>vestbo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>587657</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-03-26 06:11:43 -0700</bug_when>
    <thetext>After QtDeclarative was renamed to QtQML in Qt5, we get warnings about it during 
building QtWebKit. That&apos;s why Simon disabled -Werror for Qt5-Webkit builds.

It&apos;s time to fix includes in WebKit and enable -Werror again.
( https://lists.webkit.org/pipermail/webkit-qt/2012-March/002586.html )

Ádám started working on it, patch is coming soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588868</commentid>
    <comment_count>1</comment_count>
      <attachid>134058</attachid>
    <who name="Ádám Kallai">kadam</who>
    <bug_when>2012-03-27 07:31:28 -0700</bug_when>
    <thetext>Created attachment 134058
Build fix patch draft

Replaced QtDeclarative with QtQml with the help of the script found at:
https://lists.webkit.org/pipermail/webkit-qt/2012-March/002586.html

I only modified the parts that caused warnings while building:
&quot;#warning Header &lt;QtDeclarative/qdeclarativelist.h&gt; is deprecated. Please include &lt;QtQml/qqmllist.h&gt; instead.&quot;

I would like to know if it needs to be replaced everywhere in Webkit Source or just at the most crucial parts. I tested it on Qt-4.8 and Qt-5.0 and the build was successful. 
I&apos;m not sure if it&apos;s the best solution. Any idea and help would be appreciated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588874</commentid>
    <comment_count>2</comment_count>
      <attachid>134058</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-03-27 07:41:04 -0700</bug_when>
    <thetext>Comment on attachment 134058
Build fix patch draft

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

And could you enable -Werror with this patch? ( http://trac.webkit.org/changeset/110422/trunk/Tools/qmake/mkspecs/features/unix/default_post.prf )
If you enable it, and click on &quot;Submit for EWS analysis&quot; we can see if it really works with Qt 4.8 and Qt 5.0 too. ;)

&gt; Source/WebKit/qt/declarative/plugin.cpp:20
&gt; +#include &quot;qglobal.h&quot;

What about including config.h instead of qglobal.h?

&gt; Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h:27
&gt; +//#include &lt;QtDeclarative/qdeclarativelist.h&gt;

Remove this commented line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591164</commentid>
    <comment_count>3</comment_count>
      <attachid>134577</attachid>
    <who name="Ádám Kallai">kadam</who>
    <bug_when>2012-03-29 07:26:34 -0700</bug_when>
    <thetext>Created attachment 134577
proposed patch

I didn&apos;t notice unnecessary line in my Previous patch.
If I use &apos;config.h&apos; then WebKit does not build with Qt5 so I need to use &apos;qglobal.h&apos;.

I enabled -Werr in this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591175</commentid>
    <comment_count>4</comment_count>
      <attachid>134577</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2012-03-29 07:33:00 -0700</bug_when>
    <thetext>Comment on attachment 134577
proposed patch

Attachment 134577 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12214019</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591198</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-03-29 08:06:19 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 134577 [details])
&gt; Attachment 134577 [details] did not pass qt-wk2-ews (qt):
&gt; Output: http://queues.webkit.org/results/12214019

OMG, I was sure if it builds for me. And now I notice that I missed to update Qt5 on the Qt-WK2 EWS. I&apos;m doing it immediately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591211</commentid>
    <comment_count>6</comment_count>
      <attachid>134593</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-03-29 08:25:51 -0700</bug_when>
    <thetext>Created attachment 134593
proposed patch

same as 134577, let the Qt-WK2 EWS be green :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591918</commentid>
    <comment_count>7</comment_count>
      <attachid>134593</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-03-30 00:12:05 -0700</bug_when>
    <thetext>Comment on attachment 134593
proposed patch

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

r=me. I&apos;ll let Ossy set cq+ for a safe landing :)

&gt; Source/WebKit2/UIProcess/API/qt/qwebnavigationhistory_p.h:34
&gt; -#include &lt;qdeclarative.h&gt;
&gt; +#include &lt;QtQml/qqml.h&gt;

This is more of a nitpick, but there is no reason to use #include &lt;ModuleName/class-or-header.h&gt; in private header files or cpp files. There is a reason for adding the &quot;redundant&quot; module name in public header files, but for private header files and cpp files we can rely on the presence of QT += module-name in the .pro file and therefore use the shorter #include &lt;ClassName&gt; include style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591926</commentid>
    <comment_count>8</comment_count>
      <attachid>134593</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-03-30 00:25:07 -0700</bug_when>
    <thetext>Comment on attachment 134593
proposed patch

cq- to let Ádám fix what Simon mentioned before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>592030</commentid>
    <comment_count>9</comment_count>
    <who name="Kristóf Kosztyó">kkristof</who>
    <bug_when>2012-03-30 04:09:20 -0700</bug_when>
    <thetext>patch landed in r112651 http://trac.webkit.org/changeset/112651</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>593379</commentid>
    <comment_count>10</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-04-02 05:15:43 -0700</bug_when>
    <thetext>Reopen, because I had to roll it out. Unfortunately we had to go back to the previous Qt5 and it doesn&apos;t work with it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>596648</commentid>
    <comment_count>11</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-04-05 09:54:47 -0700</bug_when>
    <thetext>Qt5 is updated, so I relanded it - http://trac.webkit.org/changeset/113330</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134058</attachid>
            <date>2012-03-27 07:31:28 -0700</date>
            <delta_ts>2012-03-29 07:26:34 -0700</delta_ts>
            <desc>Build fix patch draft</desc>
            <filename>buildfix.patch</filename>
            <type>text/plain</type>
            <size>19339</size>
            <attacher name="Ádám Kallai">kadam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3Bs
dWdpbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9wbHVn
aW4uY3BwCmluZGV4IDdkMzgwZTYuLmQzM2E0NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
cXQvZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcApAQCAtMzAsOCArMzAsOCBA
QAogI2luY2x1ZGUgInByaXZhdGUvcXdlYnByZWZlcmVuY2VzX3AuaCIKICNpbmNsdWRlICJwcml2
YXRlL3F3ZWJ2aWV3cG9ydGluZm9fcC5oIgogCi0jaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVj
bGFyYXRpdmUuaD4KLSNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZWV4dGVuc2lv
bnBsdWdpbi5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWwuaD4KKyNpbmNsdWRlIDxRdFFtbC9xcW1s
ZXh0ZW5zaW9ucGx1Z2luLmg+CiAKIFFUX0JFR0lOX05BTUVTUEFDRQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL3BsdWdpbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L3F0
L2RlY2xhcmF0aXZlL3BsdWdpbi5jcHAKaW5kZXggOTY4YjFmZS4uN2RjMmQwOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9wbHVnaW4uY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvcXQvZGVjbGFyYXRpdmUvcGx1Z2luLmNwcApAQCAtMTcsMTIgKzE3LDE5IEBACiAgICAg
Qm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCiAqLwogCisjaW5jbHVkZSAicWdsb2JhbC5oIgor
CiAjaWYgZGVmaW5lZChIQVZFX1FRVUlDSzEpCiAjaW5jbHVkZSAicWRlY2xhcmF0aXZld2Vidmll
d19wLmgiCiAjZW5kaWYKIAorI2lmIChRVF9WRVJTSU9OID49IFFUX1ZFUlNJT05fQ0hFQ0soNSwg
MCwgMCkpCisjaW5jbHVkZSA8UXRRbWwvcXFtbC5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWxleHRl
bnNpb25wbHVnaW4uaD4KKyNlbHNlCiAjaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVjbGFyYXRp
dmUuaD4KICNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZWV4dGVuc2lvbnBsdWdp
bi5oPgorI2VuZGlmCiAKICNpZiBkZWZpbmVkKEhBVkVfV0VCS0lUMikKICNpbmNsdWRlICJwcml2
YXRlL3FxdWlja3dlYnBhZ2VfcC5oIgpAQCAtMzEsNyArMzgsNyBAQAogI2luY2x1ZGUgInByaXZh
dGUvcXdlYmxvYWRyZXF1ZXN0X3AuaCIKICNpbmNsdWRlICJwcml2YXRlL3F3ZWJuYXZpZ2F0aW9u
cmVxdWVzdF9wLmgiCiAKLSNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZWVuZ2lu
ZS5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWxlbmdpbmUuaD4KICNpbmNsdWRlIDxRdE5ldHdvcmsv
cW5ldHdvcmtyZXBseS5oPgogI2VuZGlmCiAKQEAgLTQxLDcgKzQ4LDcgQEAgY2xhc3MgV2ViS2l0
UW1sUGx1Z2luIDogcHVibGljIFFEZWNsYXJhdGl2ZUV4dGVuc2lvblBsdWdpbiB7CiAgICAgUV9P
QkpFQ1QKIHB1YmxpYzoKICNpZiBkZWZpbmVkKEhBVkVfV0VCS0lUMikKLSAgICB2aXJ0dWFsIHZv
aWQgaW5pdGlhbGl6ZUVuZ2luZShRRGVjbGFyYXRpdmVFbmdpbmUqIGVuZ2luZSwgY29uc3QgY2hh
ciogdXJpKQorICAgIHZpcnR1YWwgdm9pZCBpbml0aWFsaXplRW5naW5lKFFRbWxFbmdpbmUqIGVu
Z2luZSwgY29uc3QgY2hhciogdXJpKQogICAgIHsKICAgICAgICAgUV9BU1NFUlQoUUxhdGluMVN0
cmluZyh1cmkpID09IFFMYXRpbjFTdHJpbmcoIlF0V2ViS2l0IikpOwogICAgICAgICBlbmdpbmUt
PmFkZEltYWdlUHJvdmlkZXIoUUxhdGluMVN0cmluZygid2ViaWNvbiIpLCBuZXcgUVdlYkljb25J
bWFnZVByb3ZpZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrbmV0d29ya3JlcGx5X3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrbmV0d29ya3JlcGx5X3AuaAppbmRleCAxMDA3ZjNhLi40YzMyZDBmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja25ldHdvcmtyZXBseV9w
LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2tuZXR3b3JrcmVw
bHlfcC5oCkBAIC0yOSw3ICsyOSw3IEBACiAjaW5jbHVkZSA8UU5ldHdvcmtBY2Nlc3NNYW5hZ2Vy
PgogI2luY2x1ZGUgPFFPYmplY3Q+CiAjaW5jbHVkZSA8UVdlYWtQb2ludGVyPgotI2luY2x1ZGUg
PFF0RGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZlbGlzdC5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWxs
aXN0Lmg+CiAjaW5jbHVkZSA8UXRRdWljay9xcXVpY2tpdGVtLmg+CiAKIGNsYXNzIFFXRUJLSVRf
RVhQT1JUIFFRdWlja05ldHdvcmtSZXBseSA6IHB1YmxpYyBRT2JqZWN0IHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcXVlc3RfcC5o
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2tuZXR3b3JrcmVxdWVzdF9w
LmgKaW5kZXggN2RmNjZmNS4uMDcyZGE5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2tuZXR3b3JrcmVxdWVzdF9wLmgKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2tuZXR3b3JrcmVxdWVzdF9wLmgKQEAgLTI1LDcgKzI1
LDcgQEAKICNpbmNsdWRlICJSZWZQdHIuaCIKICNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCiAj
aW5jbHVkZSA8UU9iamVjdD4KLSNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZWxp
c3QuaD4KKyNpbmNsdWRlIDxRdFFtbC9xcW1sbGlzdC5oPgogI2luY2x1ZGUgPFF0UXVpY2svcXF1
aWNraXRlbS5oPgogCiBjbGFzcyBRV0VCS0lUX0VYUE9SVCBRUXVpY2tOZXR3b3JrUmVxdWVzdCA6
IHB1YmxpYyBRT2JqZWN0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3FxdWlja3dlYnZpZXcuY3BwCmluZGV4IDNkYWRhOTcuLjYxZjQ2ZjEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcApAQCAtNDYsNyAr
NDYsNyBAQAogCiAjaW5jbHVkZSA8cHJpdmF0ZS9xcXVpY2tmbGlja2FibGVfcC5oPgogI2luY2x1
ZGUgPEphdmFTY3JpcHRDb3JlL0luaXRpYWxpemVUaHJlYWRpbmcuaD4KLSNpbmNsdWRlIDxRRGVj
bGFyYXRpdmVFbmdpbmU+CisjaW5jbHVkZSA8UXRRbWwvUVFtbEVuZ2luZT4KICNpbmNsdWRlIDxR
dFF1aWNrL1FRdWlja0NhbnZhcz4KICNpbmNsdWRlIDxXZWJDb3JlL0ludFBvaW50Lmg+CiAjaW5j
bHVkZSA8V2ViQ29yZS9JbnRSZWN0Lmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaAppbmRleCBjMjFiMmU5Li5jMjM3MGE2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgKQEAg
LTIzLDcgKzIzLDggQEAKIAogI2luY2x1ZGUgInFxdWlja3VybHNjaGVtZWRlbGVnYXRlX3AuaCIK
ICNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCi0jaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9xZGVj
bGFyYXRpdmVsaXN0Lmg+CisjaW5jbHVkZSA8UXRRbWwvcXFtbGxpc3QuaD4KKy8vI2luY2x1ZGUg
PFF0RGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZlbGlzdC5oPgogI2luY2x1ZGUgPFF0UXVpY2svcXF1
aWNraXRlbS5oPgogCiBjbGFzcyBRV2ViTmF2aWdhdGlvblJlcXVlc3Q7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJpY29uaW1hZ2Vwcm92aWRlcl9wLmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJpY29uaW1hZ2Vwcm92aWRlcl9w
LmgKaW5kZXggODgxNWQ3Yi4uNmFkOThkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC9xd2ViaWNvbmltYWdlcHJvdmlkZXJfcC5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYmljb25pbWFnZXByb3ZpZGVyX3AuaApAQCAtMjEsNyAr
MjEsNyBAQAogI2RlZmluZSBxd2ViaWNvbmltYWdlcHJvdmlkZXJfcF9oCiAKICNpbmNsdWRlICJx
d2Via2l0Z2xvYmFsLmgiCi0jaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9RRGVjbGFyYXRpdmVJbWFn
ZVByb3ZpZGVyPgorI2luY2x1ZGUgPFF0UW1sL1FRbWxJbWFnZVByb3ZpZGVyPgogCiBjbGFzcyBR
V0VCS0lUX0VYUE9SVCBRV2ViSWNvbkltYWdlUHJvdmlkZXIgOiBwdWJsaWMgUURlY2xhcmF0aXZl
SW1hZ2VQcm92aWRlciB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAKaW5kZXggZmY3N2RhZS4u
MzM3YzlmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2Vi
bmF2aWdhdGlvbmhpc3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXdlYm5hdmlnYXRpb25oaXN0b3J5LmNwcApAQCAtMzMsNyArMzMsNyBAQAogI2luY2x1ZGUg
IldlYkJhY2tGb3J3YXJkTGlzdC5oIgogCiAjaW5jbHVkZSAicXdlYm5hdmlnYXRpb25oaXN0b3J5
X3BfcC5oIgotI2luY2x1ZGUgPFFEZWNsYXJhdGl2ZUVuZ2luZT4KKyNpbmNsdWRlIDxRdFFtbC9R
UW1sRW5naW5lPgogI2luY2x1ZGUgPFFTdHJpbmc+CiAjaW5jbHVkZSA8UVVybD4KICNpbmNsdWRl
IDxXZWJLaXQyL1dLQXJyYXkuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXdlYm5hdmlnYXRpb25oaXN0b3J5X3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXdlYm5hdmlnYXRpb25oaXN0b3J5X3AuaAppbmRleCA5MjkxMTQ0Li5mYTYz
MDc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZp
Z2F0aW9uaGlzdG9yeV9wLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
d2VibmF2aWdhdGlvbmhpc3RvcnlfcC5oCkBAIC0zMSw3ICszMSw3IEBACiAjaW5jbHVkZSA8UU9i
amVjdD4KICNpbmNsdWRlIDxRVXJsPgogI2luY2x1ZGUgPFFWYXJpYW50PgotI2luY2x1ZGUgPHFk
ZWNsYXJhdGl2ZS5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWwuaD4KIAogY2xhc3MgUUFic3RyYWN0
TGlzdE1vZGVsOwogY2xhc3MgUVdlYk5hdmlnYXRpb25IaXN0b3J5UHJpdmF0ZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcXF1aWNrd2Vidmlldy90
c3RfcXF1aWNrd2Vidmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rl
c3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwCmluZGV4IGE2YjEzOTkuLmE4
Yjg0M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMv
cXF1aWNrd2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9xcXVpY2t3ZWJ2aWV3LmNw
cApAQCAtMjAsNyArMjAsNyBAQAogI2luY2x1ZGUgIi4uL3Rlc3R3aW5kb3cuaCIKICNpbmNsdWRl
ICIuLi91dGlsLmgiCiAKLSNpbmNsdWRlIDxRRGVjbGFyYXRpdmVFbmdpbmU+CisjaW5jbHVkZSA8
UXRRbWwvUVFtbEVuZ2luZT4KICNpbmNsdWRlIDxRU2NvcGVkUG9pbnRlcj4KICNpbmNsdWRlIDxR
dFRlc3QvUXRUZXN0PgogI2luY2x1ZGUgPHByaXZhdGUvcXF1aWNrd2VicGFnZV9wLmg+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmNwcAppbmRleCAzMzQx
ZDE5Li4yYWExZTdlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRE
aWFsb2dSdW5uZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdERpYWxv
Z1J1bm5lci5jcHAKQEAgLTIxLDkgKzIxLDkgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJRdERpYWxvZ1J1bm5lci5oIgogCi0jaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9RRGVjbGFy
YXRpdmVDb21wb25lbnQ+Ci0jaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9RRGVjbGFyYXRpdmVDb250
ZXh0PgotI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvUURlY2xhcmF0aXZlRW5naW5lPgorI2luY2x1
ZGUgPFF0UW1sL1FRbWxDb21wb25lbnQ+CisjaW5jbHVkZSA8UXRRbWwvUVFtbENvbnRleHQ+Cisj
aW5jbHVkZSA8UXRRbWwvUVFtbEVuZ2luZT4KICNpbmNsdWRlIDxRdFF1aWNrL1FRdWlja0l0ZW0+
CiAjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KIApAQCAtMjI3LDcgKzIyNyw3IEBAIHByaXZh
dGU6CiAgICAgcXVpbnQ2NCBtX2V4cGVjdGVkVXNhZ2U7CiB9OwogCi1ib29sIFF0RGlhbG9nUnVu
bmVyOjppbml0Rm9yQWxlcnQoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlj
a0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgbWVzc2FnZSkKK2Jvb2wgUXREaWFs
b2dSdW5uZXI6OmluaXRGb3JBbGVydChRUW1sQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0
ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgbWVzc2FnZSkKIHsKICAgICBEaWFsb2dD
b250ZXh0T2JqZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3IERpYWxvZ0NvbnRleHRPYmplY3QobWVz
c2FnZSk7CiAgICAgaWYgKCFjcmVhdGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNv
bnRleHRPYmplY3QpKQpAQCAtMjM3LDcgKzIzNyw3IEBAIGJvb2wgUXREaWFsb2dSdW5uZXI6Omlu
aXRGb3JBbGVydChRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSoK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckNvbmZp
cm0oUURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1Bh
cmVudCwgY29uc3QgUVN0cmluZyYgbWVzc2FnZSkKK2Jvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRG
b3JDb25maXJtKFFRbWxDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFy
ZW50LCBjb25zdCBRU3RyaW5nJiBtZXNzYWdlKQogewogICAgIERpYWxvZ0NvbnRleHRPYmplY3Qq
IGNvbnRleHRPYmplY3QgPSBuZXcgRGlhbG9nQ29udGV4dE9iamVjdChtZXNzYWdlKTsKICAgICBp
ZiAoIWNyZWF0ZURpYWxvZyhjb21wb25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkp
CkBAIC0yNDksNyArMjQ5LDcgQEAgYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckNvbmZpcm0o
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0KICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAotYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvclByb21wdChRRGVjbGFyYXRp
dmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBR
U3RyaW5nJiBtZXNzYWdlLCBjb25zdCBRU3RyaW5nJiBkZWZhdWx0VmFsdWUpCitib29sIFF0RGlh
bG9nUnVubmVyOjppbml0Rm9yUHJvbXB0KFFRbWxDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNr
SXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBRU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBRU3RyaW5n
JiBkZWZhdWx0VmFsdWUpCiB7CiAgICAgRGlhbG9nQ29udGV4dE9iamVjdCogY29udGV4dE9iamVj
dCA9IG5ldyBEaWFsb2dDb250ZXh0T2JqZWN0KG1lc3NhZ2UsIGRlZmF1bHRWYWx1ZSk7CiAgICAg
aWYgKCFjcmVhdGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNvbnRleHRPYmplY3Qp
KQpAQCAtMjYxLDcgKzI2MSw3IEBAIGJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JQcm9tcHQo
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qCiAgICAgcmV0dXJu
IHRydWU7CiB9CiAKLWJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JBdXRoZW50aWNhdGlvbihR
RGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50
LCBjb25zdCBRU3RyaW5nJiBob3N0bmFtZSwgY29uc3QgUVN0cmluZyYgcmVhbG0sIGNvbnN0IFFT
dHJpbmcmIHByZWZpbGxlZFVzZXJuYW1lKQorYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckF1
dGhlbnRpY2F0aW9uKFFRbWxDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9n
UGFyZW50LCBjb25zdCBRU3RyaW5nJiBob3N0bmFtZSwgY29uc3QgUVN0cmluZyYgcmVhbG0sIGNv
bnN0IFFTdHJpbmcmIHByZWZpbGxlZFVzZXJuYW1lKQogewogICAgIEh0dHBBdXRoZW50aWNhdGlv
bkRpYWxvZ0NvbnRleHRPYmplY3QqIGNvbnRleHRPYmplY3QgPSBuZXcgSHR0cEF1dGhlbnRpY2F0
aW9uRGlhbG9nQ29udGV4dE9iamVjdChob3N0bmFtZSwgcmVhbG0sIHByZWZpbGxlZFVzZXJuYW1l
KTsKICAgICBpZiAoIWNyZWF0ZURpYWxvZyhjb21wb25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4
dE9iamVjdCkpCkBAIC0yNzQsNyArMjc0LDcgQEAgYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZv
ckF1dGhlbnRpY2F0aW9uKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50LCBRUXUKICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvclByb3h5QXV0
aGVudGljYXRpb24oUURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0q
IGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgaG9zdG5hbWUsIHVpbnQxNl90IHBvcnQsIGNv
bnN0IFFTdHJpbmcmIHByZWZpbGxlZFVzZXJuYW1lKQorYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5p
dEZvclByb3h5QXV0aGVudGljYXRpb24oUVFtbENvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJ
dGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIGhvc3RuYW1lLCB1aW50MTZfdCBwb3J0
LCBjb25zdCBRU3RyaW5nJiBwcmVmaWxsZWRVc2VybmFtZSkKIHsKICAgICBQcm94eUF1dGhlbnRp
Y2F0aW9uRGlhbG9nQ29udGV4dE9iamVjdCogY29udGV4dE9iamVjdCA9IG5ldyBQcm94eUF1dGhl
bnRpY2F0aW9uRGlhbG9nQ29udGV4dE9iamVjdChob3N0bmFtZSwgcG9ydCwgcHJlZmlsbGVkVXNl
cm5hbWUpOwogICAgIGlmICghY3JlYXRlRGlhbG9nKGNvbXBvbmVudCwgZGlhbG9nUGFyZW50LCBj
b250ZXh0T2JqZWN0KSkKQEAgLTI4Nyw3ICsyODcsNyBAQCBib29sIFF0RGlhbG9nUnVubmVyOjpp
bml0Rm9yUHJveHlBdXRoZW50aWNhdGlvbihRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVu
dAogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQ2Vy
dGlmaWNhdGVWZXJpZmljYXRpb24oUURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFR
dWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgaG9zdG5hbWUpCitib29sIFF0
RGlhbG9nUnVubmVyOjppbml0Rm9yQ2VydGlmaWNhdGVWZXJpZmljYXRpb24oUVFtbENvbXBvbmVu
dCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIGhv
c3RuYW1lKQogewogICAgIENlcnRpZmljYXRlVmVyaWZpY2F0aW9uRGlhbG9nQ29udGV4dE9iamVj
dCogY29udGV4dE9iamVjdCA9IG5ldyBDZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvbkRpYWxvZ0NvbnRl
eHRPYmplY3QoaG9zdG5hbWUpOwogICAgIGlmICghY3JlYXRlRGlhbG9nKGNvbXBvbmVudCwgZGlh
bG9nUGFyZW50LCBjb250ZXh0T2JqZWN0KSkKQEAgLTMwMCw3ICszMDAsNyBAQCBib29sIFF0RGlh
bG9nUnVubmVyOjppbml0Rm9yQ2VydGlmaWNhdGVWZXJpZmljYXRpb24oUURlY2xhcmF0aXZlQ29t
cG9uZW50KiBjb21wbwogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIFF0RGlhbG9nUnVubmVy
Ojppbml0Rm9yRmlsZVBpY2tlcihRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1
aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBRU3RyaW5nTGlzdCYgc2VsZWN0ZWRGaWxlcykK
K2Jvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JGaWxlUGlja2VyKFFRbWxDb21wb25lbnQqIGNv
bXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBRU3RyaW5nTGlzdCYgc2Vs
ZWN0ZWRGaWxlcykKIHsKICAgICBGaWxlUGlja2VyQ29udGV4dE9iamVjdCogY29udGV4dE9iamVj
dCA9IG5ldyBGaWxlUGlja2VyQ29udGV4dE9iamVjdChzZWxlY3RlZEZpbGVzKTsKICAgICBpZiAo
IWNyZWF0ZURpYWxvZyhjb21wb25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCkBA
IC0zMTMsNyArMzEzLDcgQEAgYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckZpbGVQaWNrZXIo
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0kKICAgICByZXR1cm4gdHJ1
ZTsKIH0KIAotYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckRhdGFiYXNlUXVvdGFEaWFsb2co
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVu
dCwgY29uc3QgUVN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFt
ZSwgcXVpbnQ2NCBjdXJyZW50UXVvdGEsIHF1aW50NjQgY3VycmVudE9yaWdpblVzYWdlLCBxdWlu
dDY0IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBxdWludDY0IGV4cGVjdGVkVXNhZ2UpCitib29sIFF0
RGlhbG9nUnVubmVyOjppbml0Rm9yRGF0YWJhc2VRdW90YURpYWxvZyhRUW1sQ29tcG9uZW50KiBj
b21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgZGF0YWJh
c2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgcXVpbnQ2NCBjdXJyZW50UXVvdGEs
IHF1aW50NjQgY3VycmVudE9yaWdpblVzYWdlLCBxdWludDY0IGN1cnJlbnREYXRhYmFzZVVzYWdl
LCBxdWludDY0IGV4cGVjdGVkVXNhZ2UpCiB7CiAgICAgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRl
eHRPYmplY3QqIGNvbnRleHRPYmplY3QgPSBuZXcgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRP
YmplY3QoZGF0YWJhc2VOYW1lLCBkaXNwbGF5TmFtZSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3Jp
Z2luVXNhZ2UsIGN1cnJlbnREYXRhYmFzZVVzYWdlLCBleHBlY3RlZFVzYWdlKTsKICAgICBpZiAo
IWNyZWF0ZURpYWxvZyhjb21wb25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCkBA
IC0zMjYsMTIgKzMyNiwxMiBAQCBib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRGF0YWJhc2VR
dW90YURpYWxvZyhRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudAogICAgIHJldHVybiB0
cnVlOwogfQogCi1ib29sIFF0RGlhbG9nUnVubmVyOjpjcmVhdGVEaWFsb2coUURlY2xhcmF0aXZl
Q29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgUU9iamVjdCog
Y29udGV4dE9iamVjdCkKK2Jvb2wgUXREaWFsb2dSdW5uZXI6OmNyZWF0ZURpYWxvZyhRUW1sQ29t
cG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgUU9iamVjdCogY29u
dGV4dE9iamVjdCkKIHsKLSAgICBRRGVjbGFyYXRpdmVDb250ZXh0KiBiYXNlQ29udGV4dCA9IGNv
bXBvbmVudC0+Y3JlYXRpb25Db250ZXh0KCk7CisgICAgUVFtbENvbnRleHQqIGJhc2VDb250ZXh0
ID0gY29tcG9uZW50LT5jcmVhdGlvbkNvbnRleHQoKTsKICAgICBpZiAoIWJhc2VDb250ZXh0KQot
ICAgICAgICBiYXNlQ29udGV4dCA9IFFEZWNsYXJhdGl2ZUVuZ2luZTo6Y29udGV4dEZvck9iamVj
dChkaWFsb2dQYXJlbnQpOwotICAgIG1fZGlhbG9nQ29udGV4dCA9IGFkb3B0UHRyKG5ldyBRRGVj
bGFyYXRpdmVDb250ZXh0KGJhc2VDb250ZXh0KSk7CisgICAgICAgIGJhc2VDb250ZXh0ID0gUVFt
bEVuZ2luZTo6Y29udGV4dEZvck9iamVjdChkaWFsb2dQYXJlbnQpOworICAgIG1fZGlhbG9nQ29u
dGV4dCA9IGFkb3B0UHRyKG5ldyBRUW1sQ29udGV4dChiYXNlQ29udGV4dCkpOwogCiAgICAgLy8g
VGhpcyBtYWtlcyBib3RoICJtZXNzYWdlIiBhbmQgIm1vZGVsLm1lc3NhZ2UiIHdvcmsgZm9yIHRo
ZSBkaWFsb2csIGp1c3QgbGlrZSBRdFF1aWNrJ3MgTGlzdFZpZXcgZGVsZWdhdGVzLgogICAgIGNv
bnRleHRPYmplY3QtPnNldFBhcmVudChtX2RpYWxvZ0NvbnRleHQuZ2V0KCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RmxpY2tQcm92aWRlci5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmNwcAppbmRleCBiMzRiYmE2
Li41ZTc1ODJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRGbGlj
a1Byb3ZpZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRGbGlja1By
b3ZpZGVyLmNwcApAQCAtMjUsNyArMjUsNyBAQAogI2luY2x1ZGUgInFxdWlja3dlYnZpZXdfcC5o
IgogCiAjaW5jbHVkZSA8UUNvcmVBcHBsaWNhdGlvbj4KLSNpbmNsdWRlIDxRRGVjbGFyYXRpdmVF
bmdpbmU+CisjaW5jbHVkZSA8UVFtbEVuZ2luZT4KICNpbmNsdWRlIDxRTW91c2VFdmVudD4KICNp
bmNsdWRlIDxRUG9pbnRGPgogI2luY2x1ZGUgPFFRdWlja0NhbnZhcz4KQEAgLTY5LDE3ICs2OSwx
NyBAQCBRdEZsaWNrUHJvdmlkZXI6OlF0RmxpY2tQcm92aWRlcihRUXVpY2tXZWJWaWV3KiB2aWV3
SXRlbSwgUVF1aWNrV2ViUGFnZSogcGFnZUl0ZQogICAgIEFTU0VSVCh2aWV3SXRlbSk7CiAgICAg
QVNTRVJUKHBhZ2VJdGVtKTsKIAotICAgIFFEZWNsYXJhdGl2ZUVuZ2luZSogZW5naW5lID0gcW1s
RW5naW5lKHZpZXdJdGVtKTsKLSAgICBRRGVjbGFyYXRpdmVDb250ZXh0KiBjb250ZXh0ID0gcW1s
Q29udGV4dCh2aWV3SXRlbSk7CisgICAgUVFtbEVuZ2luZSogZW5naW5lID0gcW1sRW5naW5lKHZp
ZXdJdGVtKTsKKyAgICBRUW1sQ29udGV4dCogY29udGV4dCA9IHFtbENvbnRleHQodmlld0l0ZW0p
OwogCiAgICAgQVNTRVJUKGVuZ2luZSk7CiAgICAgQVNTRVJUKGNvbnRleHQpOwogCi0gICAgUURl
Y2xhcmF0aXZlQ29tcG9uZW50IGNvbXBvbmVudChlbmdpbmUsIHZpZXdJdGVtKTsKKyAgICBRUW1s
Q29tcG9uZW50IGNvbXBvbmVudChlbmdpbmUsIHZpZXdJdGVtKTsKIAogICAgIC8vIENyZWF0ZSB0
aGUgaW50ZXJuYWwgRmxpY2thYmxlIGluc3RhbmNlIGR5bmFtaWNhbGx5LgogICAgIC8vIFdlIG9u
bHkgdXNlIHB1YmxpYyBRTUwgQVBJIHNvIHRoYXQgd2UgZG8gbm90IGRlcGVuZAotICAgIC8vIG9u
IHByaXZhdGUgQVBJIG9mIHRoZSBRdERlY2xhcmF0aXZlIG1vZHVsZS4KKyAgICAvLyBvbiBwcml2
YXRlIEFQSSBvZiB0aGUgUXRRbWwgbW9kdWxlLgogICAgIGNvbXBvbmVudC5zZXREYXRhKFFCeXRl
QXJyYXlMaXRlcmFsKCJpbXBvcnQgUXRRdWljayAyLjBcbkZsaWNrYWJsZSB7fSIpLCBRVXJsKCkp
OwogCiAgICAgbV9mbGlja2FibGUgPSBxb2JqZWN0X2Nhc3Q8UVF1aWNrSXRlbSo+KGNvbXBvbmVu
dC5jcmVhdGUoY29udGV4dCkpOwpAQCAtMTYyLDkgKzE2Miw5IEBAIFFRdWlja0l0ZW0qIFF0Rmxp
Y2tQcm92aWRlcjo6Y29udGVudEl0ZW0oKQogICAgIHJldHVybiBtX2NvbnRlbnRJdGVtOwogfQog
Ci1RRGVjbGFyYXRpdmVMaXN0UHJvcGVydHk8UU9iamVjdD4gUXRGbGlja1Byb3ZpZGVyOjpmbGlj
a2FibGVEYXRhKCkKK1FRbWxMaXN0UHJvcGVydHk8UU9iamVjdD4gUXRGbGlja1Byb3ZpZGVyOjpm
bGlja2FibGVEYXRhKCkKIHsKLSAgICByZXR1cm4gbV9mbGlja2FibGVEYXRhLnJlYWQobV9mbGlj
a2FibGUpLnZhbHVlPFFEZWNsYXJhdGl2ZUxpc3RQcm9wZXJ0eTxRT2JqZWN0PiA+KCk7CisgICAg
cmV0dXJuIG1fZmxpY2thYmxlRGF0YS5yZWFkKG1fZmxpY2thYmxlKS52YWx1ZTxRUW1sTGlzdFBy
b3BlcnR5PFFPYmplY3Q+ID4oKTsKIH0KIAogUVBvaW50RiBRdEZsaWNrUHJvdmlkZXI6OmNvbnRl
bnRQb3MoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0
RmxpY2tQcm92aWRlci5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RmxpY2tQcm92
aWRlci5oCmluZGV4IDI3NTgxMGIuLjA4Yjk3YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9xdC9RdEZsaWNrUHJvdmlkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmgKQEAgLTIxLDcgKzIxLDcgQEAKICNpZm5kZWYgUXRG
bGlja1Byb3ZpZGVyX2gKICNkZWZpbmUgUXRGbGlja1Byb3ZpZGVyX2gKIAotI2luY2x1ZGUgPFFE
ZWNsYXJhdGl2ZUxpc3RQcm9wZXJ0eT4KKyNpbmNsdWRlIDxRUW1sTGlzdFByb3BlcnR5PgogI2lu
Y2x1ZGUgPFFNZXRhTWV0aG9kPgogI2luY2x1ZGUgPFFNZXRhUHJvcGVydHk+CiAjaW5jbHVkZSA8
UU9iamVjdD4KQEAgLTQzLDcgKzQzLDcgQEAgcHVibGljOgogICAgIHZvaWQgaGFuZGxlVG91Y2hG
bGlja0V2ZW50KFFUb3VjaEV2ZW50Kik7CiAKICAgICBRUXVpY2tJdGVtKiBjb250ZW50SXRlbSgp
OwotICAgIFFEZWNsYXJhdGl2ZUxpc3RQcm9wZXJ0eTxRT2JqZWN0PiBmbGlja2FibGVEYXRhKCk7
CisgICAgUVFtbExpc3RQcm9wZXJ0eTxRT2JqZWN0PiBmbGlja2FibGVEYXRhKCk7CiAKICAgICBR
UG9pbnRGIGNvbnRlbnRQb3MoKSBjb25zdDsKICAgICB2b2lkIHNldENvbnRlbnRQb3MoY29uc3Qg
UVBvaW50RiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYlBv
cHVwTWVudVByb3h5UXQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYlBvcHVw
TWVudVByb3h5UXQuY3BwCmluZGV4IDI4YjhhY2MuLjlmOTEwMGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9XZWJQb3B1cE1lbnVQcm94eVF0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2ViUG9wdXBNZW51UHJveHlRdC5jcHAKQEAgLTMyLDgg
KzMyLDggQEAKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJxcXVpY2t3
ZWJ2aWV3X3BfcC5oIgogI2luY2x1ZGUgPFF0Q29yZS9RQWJzdHJhY3RMaXN0TW9kZWw+Ci0jaW5j
bHVkZSA8UXREZWNsYXJhdGl2ZS9RRGVjbGFyYXRpdmVDb250ZXh0PgotI2luY2x1ZGUgPFF0RGVj
bGFyYXRpdmUvUURlY2xhcmF0aXZlRW5naW5lPgorI2luY2x1ZGUgPFF0UW1sL1FRbWxDb250ZXh0
PgorI2luY2x1ZGUgPFF0UW1sL1FRbWxFbmdpbmU+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3Jl
OwogCkBAIC0yNTcsNyArMjU3LDcgQEAgdm9pZCBXZWJQb3B1cE1lbnVQcm94eVF0OjpzZWxlY3RJ
bmRleChpbnQgaW5kZXgpCiAKIHZvaWQgV2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlSXRlbShR
T2JqZWN0KiBjb250ZXh0T2JqZWN0KQogewotICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29t
cG9uZW50ID0gbV93ZWJWaWV3LT5leHBlcmltZW50YWwoKS0+aXRlbVNlbGVjdG9yKCk7CisgICAg
UVFtbENvbXBvbmVudCogY29tcG9uZW50ID0gbV93ZWJWaWV3LT5leHBlcmltZW50YWwoKS0+aXRl
bVNlbGVjdG9yKCk7CiAgICAgaWYgKCFjb21wb25lbnQpIHsKICAgICAgICAgZGVsZXRlIGNvbnRl
eHRPYmplY3Q7CiAgICAgICAgIHJldHVybjsKQEAgLTI4OSwxMiArMjg5LDEyIEBAIHZvaWQgV2Vi
UG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlSXRlbShRT2JqZWN0KiBjb250ZXh0T2JqZWN0KQogICAg
IG1faXRlbVNlbGVjdG9yLT5zZXRQYXJlbnRJdGVtKG1fd2ViVmlldyk7CiB9CiAKLXZvaWQgV2Vi
UG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlQ29udGV4dChRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNv
bXBvbmVudCwgUU9iamVjdCogY29udGV4dE9iamVjdCkKK3ZvaWQgV2ViUG9wdXBNZW51UHJveHlR
dDo6Y3JlYXRlQ29udGV4dChRUW1sQ29tcG9uZW50KiBjb21wb25lbnQsIFFPYmplY3QqIGNvbnRl
eHRPYmplY3QpCiB7Ci0gICAgUURlY2xhcmF0aXZlQ29udGV4dCogYmFzZUNvbnRleHQgPSBjb21w
b25lbnQtPmNyZWF0aW9uQ29udGV4dCgpOworICAgIFFRbWxDb250ZXh0KiBiYXNlQ29udGV4dCA9
IGNvbXBvbmVudC0+Y3JlYXRpb25Db250ZXh0KCk7CiAgICAgaWYgKCFiYXNlQ29udGV4dCkKLSAg
ICAgICAgYmFzZUNvbnRleHQgPSBRRGVjbGFyYXRpdmVFbmdpbmU6OmNvbnRleHRGb3JPYmplY3Qo
bV93ZWJWaWV3KTsKLSAgICBtX2NvbnRleHQgPSBhZG9wdFB0cihuZXcgUURlY2xhcmF0aXZlQ29u
dGV4dChiYXNlQ29udGV4dCkpOworICAgICAgICBiYXNlQ29udGV4dCA9IFFRbWxFbmdpbmU6OmNv
bnRleHRGb3JPYmplY3QobV93ZWJWaWV3KTsKKyAgICBtX2NvbnRleHQgPSBhZG9wdFB0cihuZXcg
UVFtbENvbnRleHQoYmFzZUNvbnRleHQpKTsKIAogICAgIGNvbnRleHRPYmplY3QtPnNldFBhcmVu
dChtX2NvbnRleHQuZ2V0KCkpOwogICAgIG1fY29udGV4dC0+c2V0Q29udGV4dFByb3BlcnR5KFFM
YXRpbjFTdHJpbmcoIm1vZGVsIiksIGNvbnRleHRPYmplY3QpOwpkaWZmIC0tZ2l0IGEvVG9vbHMv
TWluaUJyb3dzZXIvcXQvQnJvd3NlcldpbmRvdy5jcHAgYi9Ub29scy9NaW5pQnJvd3Nlci9xdC9C
cm93c2VyV2luZG93LmNwcAppbmRleCBjNWJkZWZjLi5lMDMyNzFlIDEwMDY0NAotLS0gYS9Ub29s
cy9NaW5pQnJvd3Nlci9xdC9Ccm93c2VyV2luZG93LmNwcAorKysgYi9Ub29scy9NaW5pQnJvd3Nl
ci9xdC9Ccm93c2VyV2luZG93LmNwcApAQCAtMzIsNyArMzIsNyBAQAogI2luY2x1ZGUgInByaXZh
dGUvcXF1aWNrd2Vidmlld19wLmgiCiAjaW5jbHVkZSAidXRpbHMuaCIKIAotI2luY2x1ZGUgPFFE
ZWNsYXJhdGl2ZUVuZ2luZT4KKyNpbmNsdWRlIDxRUW1sRW5naW5lPgogI2luY2x1ZGUgPFFEaXI+
CiAjaW5jbHVkZSA8UVBvaW50Rj4KIApAQCAtMTA4LDcgKzEwOCw3IEBAIHZvaWQgQnJvd3Nlcldp
bmRvdzo6dXBkYXRlVmlzdWFsTW9ja1RvdWNoUG9pbnRzKGNvbnN0IFFMaXN0PFFUb3VjaEV2ZW50
OjpUb3VjaFBvCiAgICAgICAgIFFRdWlja0l0ZW0qIG1vY2tUb3VjaFBvaW50SXRlbSA9IHJvb3RP
YmplY3QoKS0+ZmluZENoaWxkPFFRdWlja0l0ZW0qPihtb2NrVG91Y2hQb2ludElkZW50aWZpZXIs
IFF0OjpGaW5kRGlyZWN0Q2hpbGRyZW5Pbmx5KTsKIAogICAgICAgICBpZiAoIW1vY2tUb3VjaFBv
aW50SXRlbSkgewotICAgICAgICAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50IHRvdWNoTW9ja1Bv
aW50Q29tcG9uZW50KGVuZ2luZSgpLCBRVXJsKCJxcmM6L3FtbC9Nb2NrVG91Y2hQb2ludC5xbWwi
KSk7CisgICAgICAgICAgICBRUW1sQ29tcG9uZW50IHRvdWNoTW9ja1BvaW50Q29tcG9uZW50KGVu
Z2luZSgpLCBRVXJsKCJxcmM6L3FtbC9Nb2NrVG91Y2hQb2ludC5xbWwiKSk7CiAgICAgICAgICAg
ICBtb2NrVG91Y2hQb2ludEl0ZW0gPSBxb2JqZWN0X2Nhc3Q8UVF1aWNrSXRlbSo+KHRvdWNoTW9j
a1BvaW50Q29tcG9uZW50LmNyZWF0ZSgpKTsKICAgICAgICAgICAgIG1vY2tUb3VjaFBvaW50SXRl
bS0+c2V0T2JqZWN0TmFtZShtb2NrVG91Y2hQb2ludElkZW50aWZpZXIpOwogICAgICAgICAgICAg
bW9ja1RvdWNoUG9pbnRJdGVtLT5zZXRQcm9wZXJ0eSgicG9pbnRJZCIsIFFWYXJpYW50KHRvdWNo
UG9pbnQuaWQoKSkpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvcXQvbWFpbi5jcHAg
Yi9Ub29scy9NaW5pQnJvd3Nlci9xdC9tYWluLmNwcAppbmRleCAzNjYzNzczLi40YzhjZDkyIDEw
MDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9tYWluLmNwcAorKysgYi9Ub29scy9NaW5p
QnJvd3Nlci9xdC9tYWluLmNwcApAQCAtMzEsNyArMzEsNyBAQAogI2luY2x1ZGUgIk1pbmlCcm93
c2VyQXBwbGljYXRpb24uaCIKICNpbmNsdWRlICJVcmxMb2FkZXIuaCIKIAotI2luY2x1ZGUgPHFk
ZWNsYXJhdGl2ZS5oPgorI2luY2x1ZGUgPHFxbWwuaD4KIAogI2luY2x1ZGUgPFFEaXI+CiAjaW5j
bHVkZSA8UUxhdGluMVN0cmluZz4KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
cXQvUGxhdGZvcm1XZWJWaWV3UXQuY3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9QbGF0
Zm9ybVdlYlZpZXdRdC5jcHAKaW5kZXggN2Y1MTIzOS4uN2IzMmIwZiAxMDA2NDQKLS0tIGEvVG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAKKysrIGIvVG9vbHMv
V2ViS2l0VGVzdFJ1bm5lci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAKQEAgLTMxLDcgKzMxLDcg
QEAKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKIAogI2luY2x1ZGUgPFFDb3JlQXBwbGlj
YXRpb24+Ci0jaW5jbHVkZSA8UURlY2xhcmF0aXZlUHJvcGVydHk+CisjaW5jbHVkZSA8UVFtbFBy
b3BlcnR5PgogI2luY2x1ZGUgPFFFdmVudExvb3A+CiAjaW5jbHVkZSA8UXRRdWljay9RUXVpY2tW
aWV3PgogI2luY2x1ZGUgPHF3aW5kb3dzeXN0ZW1pbnRlcmZhY2VfcXBhLmg+CkBAIC01OCw3ICs1
OCw3IEBAIHByaXZhdGUgc2xvdHM6CiAKICAgICAgICAgc2V0UmVzaXplTW9kZShRUXVpY2tWaWV3
OjpTaXplUm9vdE9iamVjdFRvVmlldyk7CiAgICAgICAgIG1fdmlldy0+c2V0UGFyZW50SXRlbShy
b290T2JqZWN0KCkpOwotICAgICAgICBRRGVjbGFyYXRpdmVQcm9wZXJ0eTo6d3JpdGUobV92aWV3
LCAiYW5jaG9ycy5maWxsIiwgcVZhcmlhbnRGcm9tVmFsdWUocm9vdE9iamVjdCgpKSk7CisgICAg
ICAgIFFRbWxQcm9wZXJ0eTo6d3JpdGUobV92aWV3LCAiYW5jaG9ycy5maWxsIiwgcVZhcmlhbnRG
cm9tVmFsdWUocm9vdE9iamVjdCgpKSk7CiAKICAgICAgICAgUVdpbmRvd1N5c3RlbUludGVyZmFj
ZTo6aGFuZGxlV2luZG93QWN0aXZhdGVkKHRoaXMpOwogICAgICAgICBtX3ZpZXctPnBhZ2UoKS0+
c2V0Rm9jdXModHJ1ZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134577</attachid>
            <date>2012-03-29 07:26:34 -0700</date>
            <delta_ts>2012-03-29 08:25:51 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>buildfix.patch</filename>
            <type>text/plain</type>
            <size>22540</size>
            <attacher name="Ádám Kallai">kadam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9x
dC9DaGFuZ2VMb2cKaW5kZXggZDBhYjFiMi4uYWZjODM3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNCBAQAorMjAxMi0wMy0yOSAgw4Fkw6FtIEthbGxhaSAgPGthZGFtQGluZi51LXN6ZWdl
ZC5odT4KKworICAgICAgICBbUXRdIEJ1aWxkIGZpeCBieSByZW5hbWVpbmcgUXREZWNsYXJhdGl2
ZSB0byBRdFFtbCBpbiBoZWFkZXIgY2FsbHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04MjE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHA6
CisgICAgICAgICogZGVjbGFyYXRpdmUvcGx1Z2luLmNwcDoKKyAgICAgICAgKFdlYktpdFFtbFBs
dWdpbjo6aW5pdGlhbGl6ZUVuZ2luZSk6CisKIDIwMTItMDMtMjggIE5hdGUgQ2hhcGluICA8amFw
aGV0QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZW1vdmUgZGlzcGF0Y2hEaWRMb2FkTWFpblJl
c291cmNlIGNhbGxiYWNrLCBzaW5jZSBubwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9k
ZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCBiL1NvdXJjZS9XZWJLaXQvcXQvZGVj
bGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAKaW5kZXggN2QzODBlNi4uZDMzYTQ3OSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1
Z2luLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9w
bHVnaW4uY3BwCkBAIC0zMCw4ICszMCw4IEBACiAjaW5jbHVkZSAicHJpdmF0ZS9xd2VicHJlZmVy
ZW5jZXNfcC5oIgogI2luY2x1ZGUgInByaXZhdGUvcXdlYnZpZXdwb3J0aW5mb19wLmgiCiAKLSNp
bmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZS5oPgotI2luY2x1ZGUgPFF0RGVjbGFy
YXRpdmUvcWRlY2xhcmF0aXZlZXh0ZW5zaW9ucGx1Z2luLmg+CisjaW5jbHVkZSA8UXRRbWwvcXFt
bC5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWxleHRlbnNpb25wbHVnaW4uaD4KIAogUVRfQkVHSU5f
TkFNRVNQQUNFCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcGx1
Z2luLmNwcCBiL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcGx1Z2luLmNwcAppbmRleCA5
NjhiMWZlLi4wODUzMmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZl
L3BsdWdpbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9wbHVnaW4uY3Bw
CkBAIC0xNywxMiArMTcsMTkgQEAKICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KICov
CiAKKyNpbmNsdWRlICJxZ2xvYmFsLmgiCisKICNpZiBkZWZpbmVkKEhBVkVfUVFVSUNLMSkKICNp
bmNsdWRlICJxZGVjbGFyYXRpdmV3ZWJ2aWV3X3AuaCIKICNlbmRpZgogCisjaWYgKFFUX1ZFUlNJ
T04gPj0gUVRfVkVSU0lPTl9DSEVDSyg1LCAwLCAwKSkKKyNpbmNsdWRlIDxRdFFtbC9xcW1sLmg+
CisjaW5jbHVkZSA8UXRRbWwvcXFtbGV4dGVuc2lvbnBsdWdpbi5oPgorI2Vsc2UKICNpbmNsdWRl
IDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZS5oPgogI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUv
cWRlY2xhcmF0aXZlZXh0ZW5zaW9ucGx1Z2luLmg+CisjZW5kaWYKIAogI2lmIGRlZmluZWQoSEFW
RV9XRUJLSVQyKQogI2luY2x1ZGUgInByaXZhdGUvcXF1aWNrd2VicGFnZV9wLmgiCkBAIC0zMSw4
ICszOCw4IEBACiAjaW5jbHVkZSAicHJpdmF0ZS9xd2VibG9hZHJlcXVlc3RfcC5oIgogI2luY2x1
ZGUgInByaXZhdGUvcXdlYm5hdmlnYXRpb25yZXF1ZXN0X3AuaCIKIAotI2luY2x1ZGUgPFF0RGVj
bGFyYXRpdmUvcWRlY2xhcmF0aXZlZW5naW5lLmg+CiAjaW5jbHVkZSA8UXROZXR3b3JrL3FuZXR3
b3JrcmVwbHkuaD4KKyNpbmNsdWRlIDxRdFFtbC9xcW1sZW5naW5lLmg+CiAjZW5kaWYKIAogUVRf
QkVHSU5fTkFNRVNQQUNFCkBAIC00MSw3ICs0OCw3IEBAIGNsYXNzIFdlYktpdFFtbFBsdWdpbiA6
IHB1YmxpYyBRRGVjbGFyYXRpdmVFeHRlbnNpb25QbHVnaW4gewogICAgIFFfT0JKRUNUCiBwdWJs
aWM6CiAjaWYgZGVmaW5lZChIQVZFX1dFQktJVDIpCi0gICAgdmlydHVhbCB2b2lkIGluaXRpYWxp
emVFbmdpbmUoUURlY2xhcmF0aXZlRW5naW5lKiBlbmdpbmUsIGNvbnN0IGNoYXIqIHVyaSkKKyAg
ICB2aXJ0dWFsIHZvaWQgaW5pdGlhbGl6ZUVuZ2luZShRUW1sRW5naW5lKiBlbmdpbmUsIGNvbnN0
IGNoYXIqIHVyaSkKICAgICB7CiAgICAgICAgIFFfQVNTRVJUKFFMYXRpbjFTdHJpbmcodXJpKSA9
PSBRTGF0aW4xU3RyaW5nKCJRdFdlYktpdCIpKTsKICAgICAgICAgZW5naW5lLT5hZGRJbWFnZVBy
b3ZpZGVyKFFMYXRpbjFTdHJpbmcoIndlYmljb24iKSwgbmV3IFFXZWJJY29uSW1hZ2VQcm92aWRl
cik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKaW5kZXggNzI2ODIxZC4uODMyY2ViMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDM1IEBACisyMDEyLTAzLTI5ICDDgWTDoW0gS2FsbGFpICA8a2FkYW1AaW5mLnUtc3plZ2VkLmh1
PgorCisgICAgICAgIFtRdF0gQnVpbGQgZml4IGJ5IHJlbmFtZWluZyBRdERlY2xhcmF0aXZlIHRv
IFF0UW1sIGluIGhlYWRlciBjYWxscy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTgyMTk1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja25ldHdvcmtyZXBseV9wLmg6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2tuZXR3b3JrcmVxdWVzdF9wLmg6Cisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvcXQvcXdlYmljb25pbWFnZXByb3ZpZGVyX3AuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9x
dC9xd2VibmF2aWdhdGlvbmhpc3RvcnlfcC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQv
dGVzdHMvcXF1aWNrd2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHA6CisgICAgICAgICogVUlQ
cm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmNwcDoKKyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjpp
bml0Rm9yQWxlcnQpOgorICAgICAgICAoUXREaWFsb2dSdW5uZXI6OmluaXRGb3JDb25maXJtKToK
KyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjppbml0Rm9yUHJvbXB0KToKKyAgICAgICAgKFF0RGlh
bG9nUnVubmVyOjppbml0Rm9yQXV0aGVudGljYXRpb24pOgorICAgICAgICAoUXREaWFsb2dSdW5u
ZXI6OmluaXRGb3JQcm94eUF1dGhlbnRpY2F0aW9uKToKKyAgICAgICAgKFF0RGlhbG9nUnVubmVy
Ojppbml0Rm9yQ2VydGlmaWNhdGVWZXJpZmljYXRpb24pOgorICAgICAgICAoUXREaWFsb2dSdW5u
ZXI6OmluaXRGb3JGaWxlUGlja2VyKToKKyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjppbml0Rm9y
RGF0YWJhc2VRdW90YURpYWxvZyk6CisgICAgICAgIChRdERpYWxvZ1J1bm5lcjo6Y3JlYXRlRGlh
bG9nKToKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmNwcDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmg6CisgICAgICAgIChRdEZsaWNrUHJv
dmlkZXIpOgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9XZWJQb3B1cE1lbnVQcm94eVF0LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlSXRlbSk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlBvcHVwTWVudVByb3h5UXQ6OmNyZWF0ZUNvbnRleHQpOgorCiAyMDEy
LTAzLTI4ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAg
Rml4IGEgY3Jhc2ggYW5kIGFuIGFzc2VydGlvbiB3aGVuIHJlY292ZXJpbmcgZnJvbSBhIHdlYiBw
cm9jZXNzIGNyYXNoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3FxdWlja25ldHdvcmtyZXBseV9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3FxdWlja25ldHdvcmtyZXBseV9wLmgKaW5kZXggMTAwN2YzYS4uNGMzMmQwZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2tuZXR3b3JrcmVwbHlfcC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcGx5
X3AuaApAQCAtMjksNyArMjksNyBAQAogI2luY2x1ZGUgPFFOZXR3b3JrQWNjZXNzTWFuYWdlcj4K
ICNpbmNsdWRlIDxRT2JqZWN0PgogI2luY2x1ZGUgPFFXZWFrUG9pbnRlcj4KLSNpbmNsdWRlIDxR
dERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZWxpc3QuaD4KKyNpbmNsdWRlIDxRdFFtbC9xcW1sbGlz
dC5oPgogI2luY2x1ZGUgPFF0UXVpY2svcXF1aWNraXRlbS5oPgogCiBjbGFzcyBRV0VCS0lUX0VY
UE9SVCBRUXVpY2tOZXR3b3JrUmVwbHkgOiBwdWJsaWMgUU9iamVjdCB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja25ldHdvcmtyZXF1ZXN0X3AuaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcXVlc3RfcC5o
CmluZGV4IDQyNTExZDcuLjY5YTJkNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcXVlc3RfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcXVlc3RfcC5oCkBAIC0yNSw3ICsyNSw3
IEBACiAjaW5jbHVkZSAid3RmL1JlZlB0ci5oIgogI2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIK
ICNpbmNsdWRlIDxRT2JqZWN0PgotI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZl
bGlzdC5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWxsaXN0Lmg+CiAjaW5jbHVkZSA8UXRRdWljay9x
cXVpY2tpdGVtLmg+CiAKIGNsYXNzIFFXRUJLSVRfRVhQT1JUIFFRdWlja05ldHdvcmtSZXF1ZXN0
IDogcHVibGljIFFPYmplY3QgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlldy5jcHAKaW5kZXggN2Q1YmQ1Ny4uZmIxYTllNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC00Niw3
ICs0Niw3IEBACiAKICNpbmNsdWRlIDxwcml2YXRlL3FxdWlja2ZsaWNrYWJsZV9wLmg+CiAjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgotI2luY2x1ZGUgPFFE
ZWNsYXJhdGl2ZUVuZ2luZT4KKyNpbmNsdWRlIDxRdFFtbC9RUW1sRW5naW5lPgogI2luY2x1ZGUg
PFF0UXVpY2svUVF1aWNrQ2FudmFzPgogI2luY2x1ZGUgPFdlYkNvcmUvSW50UG9pbnQuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL0ludFJlY3QuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCmluZGV4IGMyMWIyZTkuLmVhMzg5OTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaApA
QCAtMjMsNyArMjMsNyBAQAogCiAjaW5jbHVkZSAicXF1aWNrdXJsc2NoZW1lZGVsZWdhdGVfcC5o
IgogI2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIKLSNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3Fk
ZWNsYXJhdGl2ZWxpc3QuaD4KKyNpbmNsdWRlIDxRdFFtbC9xcW1sbGlzdC5oPgogI2luY2x1ZGUg
PFF0UXVpY2svcXF1aWNraXRlbS5oPgogCiBjbGFzcyBRV2ViTmF2aWdhdGlvblJlcXVlc3Q7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJpY29uaW1hZ2Vw
cm92aWRlcl9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJpY29uaW1h
Z2Vwcm92aWRlcl9wLmgKaW5kZXggODgxNWQ3Yi4uNmFkOThkMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2ViaWNvbmltYWdlcHJvdmlkZXJfcC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYmljb25pbWFnZXByb3ZpZGVyX3Au
aApAQCAtMjEsNyArMjEsNyBAQAogI2RlZmluZSBxd2ViaWNvbmltYWdlcHJvdmlkZXJfcF9oCiAK
ICNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCi0jaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9RRGVj
bGFyYXRpdmVJbWFnZVByb3ZpZGVyPgorI2luY2x1ZGUgPFF0UW1sL1FRbWxJbWFnZVByb3ZpZGVy
PgogCiBjbGFzcyBRV0VCS0lUX0VYUE9SVCBRV2ViSWNvbkltYWdlUHJvdmlkZXIgOiBwdWJsaWMg
UURlY2xhcmF0aXZlSW1hZ2VQcm92aWRlciB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAKaW5k
ZXggZmY3N2RhZS4uYjA1NzUyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xd2VibmF2aWdhdGlvbmhpc3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvcXdlYm5hdmlnYXRpb25oaXN0b3J5LmNwcApAQCAtMzMsOSArMzMsOSBA
QAogI2luY2x1ZGUgIldlYkJhY2tGb3J3YXJkTGlzdC5oIgogCiAjaW5jbHVkZSAicXdlYm5hdmln
YXRpb25oaXN0b3J5X3BfcC5oIgotI2luY2x1ZGUgPFFEZWNsYXJhdGl2ZUVuZ2luZT4KICNpbmNs
dWRlIDxRU3RyaW5nPgogI2luY2x1ZGUgPFFVcmw+CisjaW5jbHVkZSA8UXRRbWwvUVFtbEVuZ2lu
ZT4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQXJyYXkuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQmFj
a0ZvcndhcmRMaXN0SXRlbS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tCYXNlLmg+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9y
eV9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlz
dG9yeV9wLmgKaW5kZXggOTI5MTE0NC4uZmE2MzA3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xd2VibmF2aWdhdGlvbmhpc3RvcnlfcC5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYm5hdmlnYXRpb25oaXN0b3J5X3AuaApAQCAt
MzEsNyArMzEsNyBAQAogI2luY2x1ZGUgPFFPYmplY3Q+CiAjaW5jbHVkZSA8UVVybD4KICNpbmNs
dWRlIDxRVmFyaWFudD4KLSNpbmNsdWRlIDxxZGVjbGFyYXRpdmUuaD4KKyNpbmNsdWRlIDxRdFFt
bC9xcW1sLmg+CiAKIGNsYXNzIFFBYnN0cmFjdExpc3RNb2RlbDsKIGNsYXNzIFFXZWJOYXZpZ2F0
aW9uSGlzdG9yeVByaXZhdGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9xcXVpY2t3
ZWJ2aWV3LmNwcAppbmRleCBhNmIxMzk5Li5mNzljYzQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZp
ZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcXF1aWNr
d2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHAKQEAgLTIwLDggKzIwLDggQEAKICNpbmNsdWRl
ICIuLi90ZXN0d2luZG93LmgiCiAjaW5jbHVkZSAiLi4vdXRpbC5oIgogCi0jaW5jbHVkZSA8UURl
Y2xhcmF0aXZlRW5naW5lPgogI2luY2x1ZGUgPFFTY29wZWRQb2ludGVyPgorI2luY2x1ZGUgPFF0
UW1sL1FRbWxFbmdpbmU+CiAjaW5jbHVkZSA8UXRUZXN0L1F0VGVzdD4KICNpbmNsdWRlIDxwcml2
YXRlL3FxdWlja3dlYnBhZ2VfcC5oPgogI2luY2x1ZGUgPHByaXZhdGUvcXF1aWNrd2Vidmlld19w
Lmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5u
ZXIuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmNwcApp
bmRleCA4ZjYyODk2Li5hOTk0MGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9x
dC9RdERpYWxvZ1J1bm5lci5jcHAKQEAgLTI0LDkgKzI0LDkgQEAKICNpbmNsdWRlICJXS1N0cmlu
Z1F0LmgiCiAjaW5jbHVkZSAicXdlYnBlcm1pc3Npb25yZXF1ZXN0X3AuaCIKIAotI2luY2x1ZGUg
PFF0RGVjbGFyYXRpdmUvUURlY2xhcmF0aXZlQ29tcG9uZW50PgotI2luY2x1ZGUgPFF0RGVjbGFy
YXRpdmUvUURlY2xhcmF0aXZlQ29udGV4dD4KLSNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL1FEZWNs
YXJhdGl2ZUVuZ2luZT4KKyNpbmNsdWRlIDxRdFFtbC9RUW1sQ29tcG9uZW50PgorI2luY2x1ZGUg
PFF0UW1sL1FRbWxDb250ZXh0PgorI2luY2x1ZGUgPFF0UW1sL1FRbWxFbmdpbmU+CiAjaW5jbHVk
ZSA8UXRRdWljay9RUXVpY2tJdGVtPgogI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+CiAKQEAg
LTI1MCw3ICsyNTAsNyBAQCBwcml2YXRlOgogICAgIFF0V2ViU2VjdXJpdHlPcmlnaW4gbV9zZWN1
cml0eU9yaWdpbjsKIH07CiAKLWJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JBbGVydChRRGVj
bGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBj
b25zdCBRU3RyaW5nJiBtZXNzYWdlKQorYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckFsZXJ0
KFFRbWxDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25z
dCBRU3RyaW5nJiBtZXNzYWdlKQogewogICAgIERpYWxvZ0NvbnRleHRPYmplY3QqIGNvbnRleHRP
YmplY3QgPSBuZXcgRGlhbG9nQ29udGV4dE9iamVjdChtZXNzYWdlKTsKICAgICBpZiAoIWNyZWF0
ZURpYWxvZyhjb21wb25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCkBAIC0yNjAs
NyArMjYwLDcgQEAgYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckFsZXJ0KFFEZWNsYXJhdGl2
ZUNvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKgogICAgIHJldHVybiB0cnVlOwogfQog
Ci1ib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQ29uZmlybShRRGVjbGFyYXRpdmVDb21wb25l
bnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBRU3RyaW5nJiBt
ZXNzYWdlKQorYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckNvbmZpcm0oUVFtbENvbXBvbmVu
dCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIG1l
c3NhZ2UpCiB7CiAgICAgRGlhbG9nQ29udGV4dE9iamVjdCogY29udGV4dE9iamVjdCA9IG5ldyBE
aWFsb2dDb250ZXh0T2JqZWN0KG1lc3NhZ2UpOwogICAgIGlmICghY3JlYXRlRGlhbG9nKGNvbXBv
bmVudCwgZGlhbG9nUGFyZW50LCBjb250ZXh0T2JqZWN0KSkKQEAgLTI3Miw3ICsyNzIsNyBAQCBi
b29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQ29uZmlybShRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGNvbXBvbmVudCwgUVF1aWNrSXRlbQogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIFF0RGlh
bG9nUnVubmVyOjppbml0Rm9yUHJvbXB0KFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50
LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0
IFFTdHJpbmcmIGRlZmF1bHRWYWx1ZSkKK2Jvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JQcm9t
cHQoUVFtbENvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNv
bnN0IFFTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFFTdHJpbmcmIGRlZmF1bHRWYWx1ZSkKIHsKICAg
ICBEaWFsb2dDb250ZXh0T2JqZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3IERpYWxvZ0NvbnRleHRP
YmplY3QobWVzc2FnZSwgZGVmYXVsdFZhbHVlKTsKICAgICBpZiAoIWNyZWF0ZURpYWxvZyhjb21w
b25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCkBAIC0yODQsNyArMjg0LDcgQEAg
Ym9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvclByb21wdChRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGNvbXBvbmVudCwgUVF1aWNrSXRlbSoKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBRdERp
YWxvZ1J1bm5lcjo6aW5pdEZvckF1dGhlbnRpY2F0aW9uKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCog
Y29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIGhvc3Ru
YW1lLCBjb25zdCBRU3RyaW5nJiByZWFsbSwgY29uc3QgUVN0cmluZyYgcHJlZmlsbGVkVXNlcm5h
bWUpCitib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQXV0aGVudGljYXRpb24oUVFtbENvbXBv
bmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcm
IGhvc3RuYW1lLCBjb25zdCBRU3RyaW5nJiByZWFsbSwgY29uc3QgUVN0cmluZyYgcHJlZmlsbGVk
VXNlcm5hbWUpCiB7CiAgICAgSHR0cEF1dGhlbnRpY2F0aW9uRGlhbG9nQ29udGV4dE9iamVjdCog
Y29udGV4dE9iamVjdCA9IG5ldyBIdHRwQXV0aGVudGljYXRpb25EaWFsb2dDb250ZXh0T2JqZWN0
KGhvc3RuYW1lLCByZWFsbSwgcHJlZmlsbGVkVXNlcm5hbWUpOwogICAgIGlmICghY3JlYXRlRGlh
bG9nKGNvbXBvbmVudCwgZGlhbG9nUGFyZW50LCBjb250ZXh0T2JqZWN0KSkKQEAgLTI5Nyw3ICsy
OTcsNyBAQCBib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQXV0aGVudGljYXRpb24oUURlY2xh
cmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdQogICAgIHJldHVybiB0cnVlOwogfQogCi1i
b29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yUHJveHlBdXRoZW50aWNhdGlvbihRRGVjbGFyYXRp
dmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBR
U3RyaW5nJiBob3N0bmFtZSwgdWludDE2X3QgcG9ydCwgY29uc3QgUVN0cmluZyYgcHJlZmlsbGVk
VXNlcm5hbWUpCitib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yUHJveHlBdXRoZW50aWNhdGlv
bihRUW1sQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29u
c3QgUVN0cmluZyYgaG9zdG5hbWUsIHVpbnQxNl90IHBvcnQsIGNvbnN0IFFTdHJpbmcmIHByZWZp
bGxlZFVzZXJuYW1lKQogewogICAgIFByb3h5QXV0aGVudGljYXRpb25EaWFsb2dDb250ZXh0T2Jq
ZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3IFByb3h5QXV0aGVudGljYXRpb25EaWFsb2dDb250ZXh0
T2JqZWN0KGhvc3RuYW1lLCBwb3J0LCBwcmVmaWxsZWRVc2VybmFtZSk7CiAgICAgaWYgKCFjcmVh
dGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNvbnRleHRPYmplY3QpKQpAQCAtMzEw
LDcgKzMxMCw3IEBAIGJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JQcm94eUF1dGhlbnRpY2F0
aW9uKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50CiAgICAgcmV0dXJuIHRydWU7CiB9
CiAKLWJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JDZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvbihR
RGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50
LCBjb25zdCBRU3RyaW5nJiBob3N0bmFtZSkKK2Jvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JD
ZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvbihRUW1sQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0
ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgaG9zdG5hbWUpCiB7CiAgICAgQ2VydGlm
aWNhdGVWZXJpZmljYXRpb25EaWFsb2dDb250ZXh0T2JqZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3
IENlcnRpZmljYXRlVmVyaWZpY2F0aW9uRGlhbG9nQ29udGV4dE9iamVjdChob3N0bmFtZSk7CiAg
ICAgaWYgKCFjcmVhdGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNvbnRleHRPYmpl
Y3QpKQpAQCAtMzIzLDcgKzMyMyw3IEBAIGJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JDZXJ0
aWZpY2F0ZVZlcmlmaWNhdGlvbihRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvCiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKLWJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JGaWxlUGlja2VyKFFE
ZWNsYXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQs
IGNvbnN0IFFTdHJpbmdMaXN0JiBzZWxlY3RlZEZpbGVzLCBib29sIGFsbG93TXVsdGlwbGUpCiti
b29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRmlsZVBpY2tlcihRUW1sQ29tcG9uZW50KiBjb21w
b25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZ0xpc3QmIHNlbGVj
dGVkRmlsZXMsIGJvb2wgYWxsb3dNdWx0aXBsZSkKIHsKICAgICBGaWxlUGlja2VyQ29udGV4dE9i
amVjdCogY29udGV4dE9iamVjdCA9IG5ldyBGaWxlUGlja2VyQ29udGV4dE9iamVjdChzZWxlY3Rl
ZEZpbGVzLCBhbGxvd011bHRpcGxlKTsKICAgICBpZiAoIWNyZWF0ZURpYWxvZyhjb21wb25lbnQs
IGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCkBAIC0zMzYsNyArMzM2LDcgQEAgYm9vbCBR
dERpYWxvZ1J1bm5lcjo6aW5pdEZvckZpbGVQaWNrZXIoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBj
b21wb25lbnQsIFFRdWlja0kKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBRdERpYWxvZ1J1
bm5lcjo6aW5pdEZvckRhdGFiYXNlUXVvdGFEaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50KiBj
b21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgZGF0YWJh
c2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgV0tTZWN1cml0eU9yaWdpblJlZiBz
ZWN1cml0eU9yaWdpbiwgcXVpbnQ2NCBjdXJyZW50UXVvdGEsIHF1aW50NjQgY3VycmVudE9yaWdp
blVzYWdlLCBxdWludDY0IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBxdWludDY0IGV4cGVjdGVkVXNh
Z2UpCitib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRGF0YWJhc2VRdW90YURpYWxvZyhRUW1s
Q29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0
cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgV0tTZWN1cml0
eU9yaWdpblJlZiBzZWN1cml0eU9yaWdpbiwgcXVpbnQ2NCBjdXJyZW50UXVvdGEsIHF1aW50NjQg
Y3VycmVudE9yaWdpblVzYWdlLCBxdWludDY0IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBxdWludDY0
IGV4cGVjdGVkVXNhZ2UpCiB7CiAgICAgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Qq
IGNvbnRleHRPYmplY3QgPSBuZXcgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3QoZGF0
YWJhc2VOYW1lLCBkaXNwbGF5TmFtZSwgc2VjdXJpdHlPcmlnaW4sIGN1cnJlbnRRdW90YSwgY3Vy
cmVudE9yaWdpblVzYWdlLCBjdXJyZW50RGF0YWJhc2VVc2FnZSwgZXhwZWN0ZWRVc2FnZSk7CiAg
ICAgaWYgKCFjcmVhdGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNvbnRleHRPYmpl
Y3QpKQpAQCAtMzQ5LDEyICszNDksMTIgQEAgYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckRh
dGFiYXNlUXVvdGFEaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBRdERpYWxvZ1J1bm5lcjo6Y3JlYXRlRGlhbG9nKFFEZWNs
YXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIFFP
YmplY3QqIGNvbnRleHRPYmplY3QpCitib29sIFF0RGlhbG9nUnVubmVyOjpjcmVhdGVEaWFsb2co
UVFtbENvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIFFPYmpl
Y3QqIGNvbnRleHRPYmplY3QpCiB7Ci0gICAgUURlY2xhcmF0aXZlQ29udGV4dCogYmFzZUNvbnRl
eHQgPSBjb21wb25lbnQtPmNyZWF0aW9uQ29udGV4dCgpOworICAgIFFRbWxDb250ZXh0KiBiYXNl
Q29udGV4dCA9IGNvbXBvbmVudC0+Y3JlYXRpb25Db250ZXh0KCk7CiAgICAgaWYgKCFiYXNlQ29u
dGV4dCkKLSAgICAgICAgYmFzZUNvbnRleHQgPSBRRGVjbGFyYXRpdmVFbmdpbmU6OmNvbnRleHRG
b3JPYmplY3QoZGlhbG9nUGFyZW50KTsKLSAgICBtX2RpYWxvZ0NvbnRleHQgPSBhZG9wdFB0cihu
ZXcgUURlY2xhcmF0aXZlQ29udGV4dChiYXNlQ29udGV4dCkpOworICAgICAgICBiYXNlQ29udGV4
dCA9IFFRbWxFbmdpbmU6OmNvbnRleHRGb3JPYmplY3QoZGlhbG9nUGFyZW50KTsKKyAgICBtX2Rp
YWxvZ0NvbnRleHQgPSBhZG9wdFB0cihuZXcgUVFtbENvbnRleHQoYmFzZUNvbnRleHQpKTsKIAog
ICAgIC8vIFRoaXMgbWFrZXMgYm90aCAibWVzc2FnZSIgYW5kICJtb2RlbC5tZXNzYWdlIiB3b3Jr
IGZvciB0aGUgZGlhbG9nLCBqdXN0IGxpa2UgUXRRdWljaydzIExpc3RWaWV3IGRlbGVnYXRlcy4K
ICAgICBjb250ZXh0T2JqZWN0LT5zZXRQYXJlbnQobV9kaWFsb2dDb250ZXh0LmdldCgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdEZsaWNrUHJvdmlkZXIuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RmxpY2tQcm92aWRlci5jcHAKaW5kZXgg
YjM0YmJhNi4uMjI1ZjhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0
L1F0RmxpY2tQcm92aWRlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0
RmxpY2tQcm92aWRlci5jcHAKQEAgLTI1LDEyICsyNSwxMiBAQAogI2luY2x1ZGUgInFxdWlja3dl
YnZpZXdfcC5oIgogCiAjaW5jbHVkZSA8UUNvcmVBcHBsaWNhdGlvbj4KLSNpbmNsdWRlIDxRRGVj
bGFyYXRpdmVFbmdpbmU+CiAjaW5jbHVkZSA8UU1vdXNlRXZlbnQ+CiAjaW5jbHVkZSA8UVBvaW50
Rj4KICNpbmNsdWRlIDxRUXVpY2tDYW52YXM+CiAjaW5jbHVkZSA8UVF1aWNrSXRlbT4KICNpbmNs
dWRlIDxRVG91Y2hFdmVudD4KKyNpbmNsdWRlIDxRdFFtbC9RUW1sRW5naW5lPgogI2luY2x1ZGUg
PHd0Zi9Bc3NlcnRpb25zLmg+CiAKIG5hbWVzcGFjZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmgKaW5kZXggMjc1ODEwYi4uOTYyMzkwMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RmxpY2tQcm92aWRlci5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdEZsaWNrUHJvdmlkZXIuaApAQCAtMjEsMTAg
KzIxLDEwIEBACiAjaWZuZGVmIFF0RmxpY2tQcm92aWRlcl9oCiAjZGVmaW5lIFF0RmxpY2tQcm92
aWRlcl9oCiAKLSNpbmNsdWRlIDxRRGVjbGFyYXRpdmVMaXN0UHJvcGVydHk+CiAjaW5jbHVkZSA8
UU1ldGFNZXRob2Q+CiAjaW5jbHVkZSA8UU1ldGFQcm9wZXJ0eT4KICNpbmNsdWRlIDxRT2JqZWN0
PgorI2luY2x1ZGUgPFFRbWxMaXN0UHJvcGVydHk+CiAKIFFUX0JFR0lOX05BTUVTUEFDRQogY2xh
c3MgUVBvaW50RjsKQEAgLTQzLDcgKzQzLDcgQEAgcHVibGljOgogICAgIHZvaWQgaGFuZGxlVG91
Y2hGbGlja0V2ZW50KFFUb3VjaEV2ZW50Kik7CiAKICAgICBRUXVpY2tJdGVtKiBjb250ZW50SXRl
bSgpOwotICAgIFFEZWNsYXJhdGl2ZUxpc3RQcm9wZXJ0eTxRT2JqZWN0PiBmbGlja2FibGVEYXRh
KCk7CisgICAgUVFtbExpc3RQcm9wZXJ0eTxRT2JqZWN0PiBmbGlja2FibGVEYXRhKCk7CiAKICAg
ICBRUG9pbnRGIGNvbnRlbnRQb3MoKSBjb25zdDsKICAgICB2b2lkIHNldENvbnRlbnRQb3MoY29u
c3QgUVBvaW50RiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dl
YlBvcHVwTWVudVByb3h5UXQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYlBv
cHVwTWVudVByb3h5UXQuY3BwCmluZGV4IDI4YjhhY2MuLjlmOTEwMGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9XZWJQb3B1cE1lbnVQcm94eVF0LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2ViUG9wdXBNZW51UHJveHlRdC5jcHAKQEAgLTMy
LDggKzMyLDggQEAKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJxcXVp
Y2t3ZWJ2aWV3X3BfcC5oIgogI2luY2x1ZGUgPFF0Q29yZS9RQWJzdHJhY3RMaXN0TW9kZWw+Ci0j
aW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9RRGVjbGFyYXRpdmVDb250ZXh0PgotI2luY2x1ZGUgPFF0
RGVjbGFyYXRpdmUvUURlY2xhcmF0aXZlRW5naW5lPgorI2luY2x1ZGUgPFF0UW1sL1FRbWxDb250
ZXh0PgorI2luY2x1ZGUgPFF0UW1sL1FRbWxFbmdpbmU+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJD
b3JlOwogCkBAIC0yNTcsNyArMjU3LDcgQEAgdm9pZCBXZWJQb3B1cE1lbnVQcm94eVF0OjpzZWxl
Y3RJbmRleChpbnQgaW5kZXgpCiAKIHZvaWQgV2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlSXRl
bShRT2JqZWN0KiBjb250ZXh0T2JqZWN0KQogewotICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCog
Y29tcG9uZW50ID0gbV93ZWJWaWV3LT5leHBlcmltZW50YWwoKS0+aXRlbVNlbGVjdG9yKCk7Cisg
ICAgUVFtbENvbXBvbmVudCogY29tcG9uZW50ID0gbV93ZWJWaWV3LT5leHBlcmltZW50YWwoKS0+
aXRlbVNlbGVjdG9yKCk7CiAgICAgaWYgKCFjb21wb25lbnQpIHsKICAgICAgICAgZGVsZXRlIGNv
bnRleHRPYmplY3Q7CiAgICAgICAgIHJldHVybjsKQEAgLTI4OSwxMiArMjg5LDEyIEBAIHZvaWQg
V2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlSXRlbShRT2JqZWN0KiBjb250ZXh0T2JqZWN0KQog
ICAgIG1faXRlbVNlbGVjdG9yLT5zZXRQYXJlbnRJdGVtKG1fd2ViVmlldyk7CiB9CiAKLXZvaWQg
V2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlQ29udGV4dChRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGNvbXBvbmVudCwgUU9iamVjdCogY29udGV4dE9iamVjdCkKK3ZvaWQgV2ViUG9wdXBNZW51UHJv
eHlRdDo6Y3JlYXRlQ29udGV4dChRUW1sQ29tcG9uZW50KiBjb21wb25lbnQsIFFPYmplY3QqIGNv
bnRleHRPYmplY3QpCiB7Ci0gICAgUURlY2xhcmF0aXZlQ29udGV4dCogYmFzZUNvbnRleHQgPSBj
b21wb25lbnQtPmNyZWF0aW9uQ29udGV4dCgpOworICAgIFFRbWxDb250ZXh0KiBiYXNlQ29udGV4
dCA9IGNvbXBvbmVudC0+Y3JlYXRpb25Db250ZXh0KCk7CiAgICAgaWYgKCFiYXNlQ29udGV4dCkK
LSAgICAgICAgYmFzZUNvbnRleHQgPSBRRGVjbGFyYXRpdmVFbmdpbmU6OmNvbnRleHRGb3JPYmpl
Y3QobV93ZWJWaWV3KTsKLSAgICBtX2NvbnRleHQgPSBhZG9wdFB0cihuZXcgUURlY2xhcmF0aXZl
Q29udGV4dChiYXNlQ29udGV4dCkpOworICAgICAgICBiYXNlQ29udGV4dCA9IFFRbWxFbmdpbmU6
OmNvbnRleHRGb3JPYmplY3QobV93ZWJWaWV3KTsKKyAgICBtX2NvbnRleHQgPSBhZG9wdFB0cihu
ZXcgUVFtbENvbnRleHQoYmFzZUNvbnRleHQpKTsKIAogICAgIGNvbnRleHRPYmplY3QtPnNldFBh
cmVudChtX2NvbnRleHQuZ2V0KCkpOwogICAgIG1fY29udGV4dC0+c2V0Q29udGV4dFByb3BlcnR5
KFFMYXRpbjFTdHJpbmcoIm1vZGVsIiksIGNvbnRleHRPYmplY3QpOwpkaWZmIC0tZ2l0IGEvVG9v
bHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDA1OWRlY2EuLmE0N2RkNDcgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNyBAQAorMjAxMi0wMy0yOSAgw4Fkw6FtIEthbGxhaSAgPGthZGFtQGluZi51LXN6ZWdlZC5o
dT4KKworICAgICAgICBbUXRdIEJ1aWxkIGZpeCBieSByZW5hbWVpbmcgUXREZWNsYXJhdGl2ZSB0
byBRdFFtbCBpbiBoZWFkZXIgY2FsbHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04MjE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogTWluaUJyb3dzZXIvcXQvQnJvd3NlcldpbmRvdy5jcHA6CisgICAg
ICAgIChCcm93c2VyV2luZG93Ojp1cGRhdGVWaXN1YWxNb2NrVG91Y2hQb2ludHMpOgorICAgICAg
ICAqIE1pbmlCcm93c2VyL3F0L21haW4uY3BwOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
cXQvUGxhdGZvcm1XZWJWaWV3UXQuY3BwOgorICAgICAgICAoV1RSOjpXcmFwcGVyV2luZG93Ojpo
YW5kbGVTdGF0dXNDaGFuZ2VkKToKKyAgICAgICAgKiBxbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL3Vu
aXgvZGVmYXVsdF9wb3N0LnByZjoKKwogMjAxMi0wMy0yOSAgVmluZWV0IENoYXVkaGFyeSAgPHJn
Zjc0OEBtb3Rvcm9sYS5jb20+CiAKICAgICAgICAgUmVtb3ZlIGN1c3RvbSBiaW5kaW5ncyBmb3Jt
IEludGVybmFscy5pZGwgb2YgYXR0cmlidXRlIHR5cGUgQXJyYXkuCmRpZmYgLS1naXQgYS9Ub29s
cy9NaW5pQnJvd3Nlci9xdC9Ccm93c2VyV2luZG93LmNwcCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0
L0Jyb3dzZXJXaW5kb3cuY3BwCmluZGV4IGM1YmRlZmMuLmUwMzI3MWUgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL01pbmlCcm93c2VyL3F0L0Jyb3dzZXJXaW5kb3cuY3BwCisrKyBiL1Rvb2xzL01pbmlCcm93
c2VyL3F0L0Jyb3dzZXJXaW5kb3cuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAjaW5jbHVkZSAicHJp
dmF0ZS9xcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJ1dGlscy5oIgogCi0jaW5jbHVkZSA8
UURlY2xhcmF0aXZlRW5naW5lPgorI2luY2x1ZGUgPFFRbWxFbmdpbmU+CiAjaW5jbHVkZSA8UURp
cj4KICNpbmNsdWRlIDxRUG9pbnRGPgogCkBAIC0xMDgsNyArMTA4LDcgQEAgdm9pZCBCcm93c2Vy
V2luZG93Ojp1cGRhdGVWaXN1YWxNb2NrVG91Y2hQb2ludHMoY29uc3QgUUxpc3Q8UVRvdWNoRXZl
bnQ6OlRvdWNoUG8KICAgICAgICAgUVF1aWNrSXRlbSogbW9ja1RvdWNoUG9pbnRJdGVtID0gcm9v
dE9iamVjdCgpLT5maW5kQ2hpbGQ8UVF1aWNrSXRlbSo+KG1vY2tUb3VjaFBvaW50SWRlbnRpZmll
ciwgUXQ6OkZpbmREaXJlY3RDaGlsZHJlbk9ubHkpOwogCiAgICAgICAgIGlmICghbW9ja1RvdWNo
UG9pbnRJdGVtKSB7Ci0gICAgICAgICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQgdG91Y2hNb2Nr
UG9pbnRDb21wb25lbnQoZW5naW5lKCksIFFVcmwoInFyYzovcW1sL01vY2tUb3VjaFBvaW50LnFt
bCIpKTsKKyAgICAgICAgICAgIFFRbWxDb21wb25lbnQgdG91Y2hNb2NrUG9pbnRDb21wb25lbnQo
ZW5naW5lKCksIFFVcmwoInFyYzovcW1sL01vY2tUb3VjaFBvaW50LnFtbCIpKTsKICAgICAgICAg
ICAgIG1vY2tUb3VjaFBvaW50SXRlbSA9IHFvYmplY3RfY2FzdDxRUXVpY2tJdGVtKj4odG91Y2hN
b2NrUG9pbnRDb21wb25lbnQuY3JlYXRlKCkpOwogICAgICAgICAgICAgbW9ja1RvdWNoUG9pbnRJ
dGVtLT5zZXRPYmplY3ROYW1lKG1vY2tUb3VjaFBvaW50SWRlbnRpZmllcik7CiAgICAgICAgICAg
ICBtb2NrVG91Y2hQb2ludEl0ZW0tPnNldFByb3BlcnR5KCJwb2ludElkIiwgUVZhcmlhbnQodG91
Y2hQb2ludC5pZCgpKSk7CmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9tYWluLmNw
cCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L21haW4uY3BwCmluZGV4IDM2NjM3NzMuLjRjOGNkOTIg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L21haW4uY3BwCisrKyBiL1Rvb2xzL01p
bmlCcm93c2VyL3F0L21haW4uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAjaW5jbHVkZSAiTWluaUJy
b3dzZXJBcHBsaWNhdGlvbi5oIgogI2luY2x1ZGUgIlVybExvYWRlci5oIgogCi0jaW5jbHVkZSA8
cWRlY2xhcmF0aXZlLmg+CisjaW5jbHVkZSA8cXFtbC5oPgogCiAjaW5jbHVkZSA8UURpcj4KICNp
bmNsdWRlIDxRTGF0aW4xU3RyaW5nPgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1Bs
YXRmb3JtV2ViVmlld1F0LmNwcAppbmRleCA3ZjUxMjM5Li5mNjVmZjE5IDEwMDY0NAotLS0gYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNwcAorKysgYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNwcApAQCAtMzEsOCArMzEs
OCBAQAogI2luY2x1ZGUgInFxdWlja3dlYnZpZXdfcC5oIgogCiAjaW5jbHVkZSA8UUNvcmVBcHBs
aWNhdGlvbj4KLSNpbmNsdWRlIDxRRGVjbGFyYXRpdmVQcm9wZXJ0eT4KICNpbmNsdWRlIDxRRXZl
bnRMb29wPgorI2luY2x1ZGUgPFFRbWxQcm9wZXJ0eT4KICNpbmNsdWRlIDxRdFF1aWNrL1FRdWlj
a1ZpZXc+CiAjaW5jbHVkZSA8cXdpbmRvd3N5c3RlbWludGVyZmFjZV9xcGEuaD4KIApAQCAtNTgs
NyArNTgsNyBAQCBwcml2YXRlIHNsb3RzOgogCiAgICAgICAgIHNldFJlc2l6ZU1vZGUoUVF1aWNr
Vmlldzo6U2l6ZVJvb3RPYmplY3RUb1ZpZXcpOwogICAgICAgICBtX3ZpZXctPnNldFBhcmVudEl0
ZW0ocm9vdE9iamVjdCgpKTsKLSAgICAgICAgUURlY2xhcmF0aXZlUHJvcGVydHk6OndyaXRlKG1f
dmlldywgImFuY2hvcnMuZmlsbCIsIHFWYXJpYW50RnJvbVZhbHVlKHJvb3RPYmplY3QoKSkpOwor
ICAgICAgICBRUW1sUHJvcGVydHk6OndyaXRlKG1fdmlldywgImFuY2hvcnMuZmlsbCIsIHFWYXJp
YW50RnJvbVZhbHVlKHJvb3RPYmplY3QoKSkpOwogCiAgICAgICAgIFFXaW5kb3dTeXN0ZW1JbnRl
cmZhY2U6OmhhbmRsZVdpbmRvd0FjdGl2YXRlZCh0aGlzKTsKICAgICAgICAgbV92aWV3LT5wYWdl
KCktPnNldEZvY3VzKHRydWUpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvcW1ha2UvbWtzcGVjcy9mZWF0
dXJlcy91bml4L2RlZmF1bHRfcG9zdC5wcmYgYi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVz
L3VuaXgvZGVmYXVsdF9wb3N0LnByZgppbmRleCA3MDZjOGMyLi5jZThlZWNjIDEwMDY0NAotLS0g
YS9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL3VuaXgvZGVmYXVsdF9wb3N0LnByZgorKysg
Yi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL3VuaXgvZGVmYXVsdF9wb3N0LnByZgpAQCAt
MTQsMTEgKzE0LDcgQEAgbGludXgtZysrKjppc0VxdWFsKFFUX0FSQ0gsaTM4NikgewogCiAjIFRy
ZWF0IHdhcm5pbmdzIGFzIGVycm9ycyBvbiB4ODYvTGludXgvR0NDCiBsaW51eC1nKysqIHsKLSAg
ICBpc0VxdWFsKFFUX0FSQ0gseDg2XzY0KXxpc0VxdWFsKFFUX0FSQ0gsaTM4NikgewotICAgICAg
ICAjIERpc2FibGUgLVdlcnJvciBmb3IgZGVjbGFyYXRpdmUgc3R1ZmYgdW50aWwgd2UgX3JlcXVp
cmVfIGEgUXQgNSB3aXRoIHRoZSBuZXcgbmFtZXMuCi0gICAgICAgICFjb250YWlucyhRVCwgZGVj
bGFyYXRpdmUpOiBRTUFLRV9DWFhGTEFHUyArPSAtV2Vycm9yCi0gICAgfQotCisgICAgaXNFcXVh
bChRVF9BUkNILHg4Nl82NCl8aXNFcXVhbChRVF9BUkNILGkzODYpOiBRTUFLRV9DWFhGTEFHUyAr
PSAtV2Vycm9yCiAgICAgZ3JlYXRlclRoYW4oUVRfR0NDX01BSk9SX1ZFUlNJT04sIDMpOmdyZWF0
ZXJUaGFuKFFUX0dDQ19NSU5PUl9WRVJTSU9OLCA1KSB7CiAgICAgICAgIGlmICghY29udGFpbnMo
UU1BS0VfQ1hYRkxBR1MsIC1zdGQ9YysrMHgpICYmICFjb250YWlucyhRTUFLRV9DWFhGTEFHUywg
LXN0ZD1nbnUrKzB4KSkgewogICAgICAgICAgICAgIyBXZSBuZWVkIHRvIGRlYWN0aXZhdGUgdGhv
c2Ugd2FybmluZ3MgYmVjYXVzZSBzb21lIG5hbWVzIGNvbmZsaWN0cyB3aXRoIHVwY29taW5nIGMr
KzB4IHR5cGVzIChlLmcubnVsbHB0cikuCg==
</data>
<flag name="commit-queue"
          id="138872"
          type_id="3"
          status="-"
          setter="webkit-ews"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134593</attachid>
            <date>2012-03-29 08:25:51 -0700</date>
            <delta_ts>2012-03-30 04:26:40 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>buildfix.patch</filename>
            <type>text/plain</type>
            <size>22540</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9x
dC9DaGFuZ2VMb2cKaW5kZXggZDBhYjFiMi4uYWZjODM3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9xdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNCBAQAorMjAxMi0wMy0yOSAgw4Fkw6FtIEthbGxhaSAgPGthZGFtQGluZi51LXN6ZWdl
ZC5odT4KKworICAgICAgICBbUXRdIEJ1aWxkIGZpeCBieSByZW5hbWVpbmcgUXREZWNsYXJhdGl2
ZSB0byBRdFFtbCBpbiBoZWFkZXIgY2FsbHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04MjE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogZGVjbGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHA6
CisgICAgICAgICogZGVjbGFyYXRpdmUvcGx1Z2luLmNwcDoKKyAgICAgICAgKFdlYktpdFFtbFBs
dWdpbjo6aW5pdGlhbGl6ZUVuZ2luZSk6CisKIDIwMTItMDMtMjggIE5hdGUgQ2hhcGluICA8amFw
aGV0QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZW1vdmUgZGlzcGF0Y2hEaWRMb2FkTWFpblJl
c291cmNlIGNhbGxiYWNrLCBzaW5jZSBubwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9k
ZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1Z2luLmNwcCBiL1NvdXJjZS9XZWJLaXQvcXQvZGVj
bGFyYXRpdmUvZXhwZXJpbWVudGFsL3BsdWdpbi5jcHAKaW5kZXggN2QzODBlNi4uZDMzYTQ3OSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9leHBlcmltZW50YWwvcGx1
Z2luLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZlL2V4cGVyaW1lbnRhbC9w
bHVnaW4uY3BwCkBAIC0zMCw4ICszMCw4IEBACiAjaW5jbHVkZSAicHJpdmF0ZS9xd2VicHJlZmVy
ZW5jZXNfcC5oIgogI2luY2x1ZGUgInByaXZhdGUvcXdlYnZpZXdwb3J0aW5mb19wLmgiCiAKLSNp
bmNsdWRlIDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZS5oPgotI2luY2x1ZGUgPFF0RGVjbGFy
YXRpdmUvcWRlY2xhcmF0aXZlZXh0ZW5zaW9ucGx1Z2luLmg+CisjaW5jbHVkZSA8UXRRbWwvcXFt
bC5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWxleHRlbnNpb25wbHVnaW4uaD4KIAogUVRfQkVHSU5f
TkFNRVNQQUNFCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcGx1
Z2luLmNwcCBiL1NvdXJjZS9XZWJLaXQvcXQvZGVjbGFyYXRpdmUvcGx1Z2luLmNwcAppbmRleCA5
NjhiMWZlLi4wODUzMmJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L2RlY2xhcmF0aXZl
L3BsdWdpbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9xdC9kZWNsYXJhdGl2ZS9wbHVnaW4uY3Bw
CkBAIC0xNywxMiArMTcsMTkgQEAKICAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KICov
CiAKKyNpbmNsdWRlICJxZ2xvYmFsLmgiCisKICNpZiBkZWZpbmVkKEhBVkVfUVFVSUNLMSkKICNp
bmNsdWRlICJxZGVjbGFyYXRpdmV3ZWJ2aWV3X3AuaCIKICNlbmRpZgogCisjaWYgKFFUX1ZFUlNJ
T04gPj0gUVRfVkVSU0lPTl9DSEVDSyg1LCAwLCAwKSkKKyNpbmNsdWRlIDxRdFFtbC9xcW1sLmg+
CisjaW5jbHVkZSA8UXRRbWwvcXFtbGV4dGVuc2lvbnBsdWdpbi5oPgorI2Vsc2UKICNpbmNsdWRl
IDxRdERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZS5oPgogI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUv
cWRlY2xhcmF0aXZlZXh0ZW5zaW9ucGx1Z2luLmg+CisjZW5kaWYKIAogI2lmIGRlZmluZWQoSEFW
RV9XRUJLSVQyKQogI2luY2x1ZGUgInByaXZhdGUvcXF1aWNrd2VicGFnZV9wLmgiCkBAIC0zMSw4
ICszOCw4IEBACiAjaW5jbHVkZSAicHJpdmF0ZS9xd2VibG9hZHJlcXVlc3RfcC5oIgogI2luY2x1
ZGUgInByaXZhdGUvcXdlYm5hdmlnYXRpb25yZXF1ZXN0X3AuaCIKIAotI2luY2x1ZGUgPFF0RGVj
bGFyYXRpdmUvcWRlY2xhcmF0aXZlZW5naW5lLmg+CiAjaW5jbHVkZSA8UXROZXR3b3JrL3FuZXR3
b3JrcmVwbHkuaD4KKyNpbmNsdWRlIDxRdFFtbC9xcW1sZW5naW5lLmg+CiAjZW5kaWYKIAogUVRf
QkVHSU5fTkFNRVNQQUNFCkBAIC00MSw3ICs0OCw3IEBAIGNsYXNzIFdlYktpdFFtbFBsdWdpbiA6
IHB1YmxpYyBRRGVjbGFyYXRpdmVFeHRlbnNpb25QbHVnaW4gewogICAgIFFfT0JKRUNUCiBwdWJs
aWM6CiAjaWYgZGVmaW5lZChIQVZFX1dFQktJVDIpCi0gICAgdmlydHVhbCB2b2lkIGluaXRpYWxp
emVFbmdpbmUoUURlY2xhcmF0aXZlRW5naW5lKiBlbmdpbmUsIGNvbnN0IGNoYXIqIHVyaSkKKyAg
ICB2aXJ0dWFsIHZvaWQgaW5pdGlhbGl6ZUVuZ2luZShRUW1sRW5naW5lKiBlbmdpbmUsIGNvbnN0
IGNoYXIqIHVyaSkKICAgICB7CiAgICAgICAgIFFfQVNTRVJUKFFMYXRpbjFTdHJpbmcodXJpKSA9
PSBRTGF0aW4xU3RyaW5nKCJRdFdlYktpdCIpKTsKICAgICAgICAgZW5naW5lLT5hZGRJbWFnZVBy
b3ZpZGVyKFFMYXRpbjFTdHJpbmcoIndlYmljb24iKSwgbmV3IFFXZWJJY29uSW1hZ2VQcm92aWRl
cik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKaW5kZXggNzI2ODIxZC4uODMyY2ViMiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDM1IEBACisyMDEyLTAzLTI5ICDDgWTDoW0gS2FsbGFpICA8a2FkYW1AaW5mLnUtc3plZ2VkLmh1
PgorCisgICAgICAgIFtRdF0gQnVpbGQgZml4IGJ5IHJlbmFtZWluZyBRdERlY2xhcmF0aXZlIHRv
IFF0UW1sIGluIGhlYWRlciBjYWxscy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTgyMTk1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL3F0L3FxdWlja25ldHdvcmtyZXBseV9wLmg6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2tuZXR3b3JrcmVxdWVzdF9wLmg6Cisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKiBV
SVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9B
UEkvcXQvcXdlYmljb25pbWFnZXByb3ZpZGVyX3AuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHA6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9x
dC9xd2VibmF2aWdhdGlvbmhpc3RvcnlfcC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQv
dGVzdHMvcXF1aWNrd2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHA6CisgICAgICAgICogVUlQ
cm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmNwcDoKKyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjpp
bml0Rm9yQWxlcnQpOgorICAgICAgICAoUXREaWFsb2dSdW5uZXI6OmluaXRGb3JDb25maXJtKToK
KyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjppbml0Rm9yUHJvbXB0KToKKyAgICAgICAgKFF0RGlh
bG9nUnVubmVyOjppbml0Rm9yQXV0aGVudGljYXRpb24pOgorICAgICAgICAoUXREaWFsb2dSdW5u
ZXI6OmluaXRGb3JQcm94eUF1dGhlbnRpY2F0aW9uKToKKyAgICAgICAgKFF0RGlhbG9nUnVubmVy
Ojppbml0Rm9yQ2VydGlmaWNhdGVWZXJpZmljYXRpb24pOgorICAgICAgICAoUXREaWFsb2dSdW5u
ZXI6OmluaXRGb3JGaWxlUGlja2VyKToKKyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjppbml0Rm9y
RGF0YWJhc2VRdW90YURpYWxvZyk6CisgICAgICAgIChRdERpYWxvZ1J1bm5lcjo6Y3JlYXRlRGlh
bG9nKToKKyAgICAgICAgKiBVSVByb2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmNwcDoKKyAgICAg
ICAgKiBVSVByb2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmg6CisgICAgICAgIChRdEZsaWNrUHJv
dmlkZXIpOgorICAgICAgICAqIFVJUHJvY2Vzcy9xdC9XZWJQb3B1cE1lbnVQcm94eVF0LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6V2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlSXRlbSk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlBvcHVwTWVudVByb3h5UXQ6OmNyZWF0ZUNvbnRleHQpOgorCiAyMDEy
LTAzLTI4ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAg
Rml4IGEgY3Jhc2ggYW5kIGFuIGFzc2VydGlvbiB3aGVuIHJlY292ZXJpbmcgZnJvbSBhIHdlYiBw
cm9jZXNzIGNyYXNoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3FxdWlja25ldHdvcmtyZXBseV9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0
L3FxdWlja25ldHdvcmtyZXBseV9wLmgKaW5kZXggMTAwN2YzYS4uNGMzMmQwZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2tuZXR3b3JrcmVwbHlfcC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcGx5
X3AuaApAQCAtMjksNyArMjksNyBAQAogI2luY2x1ZGUgPFFOZXR3b3JrQWNjZXNzTWFuYWdlcj4K
ICNpbmNsdWRlIDxRT2JqZWN0PgogI2luY2x1ZGUgPFFXZWFrUG9pbnRlcj4KLSNpbmNsdWRlIDxR
dERlY2xhcmF0aXZlL3FkZWNsYXJhdGl2ZWxpc3QuaD4KKyNpbmNsdWRlIDxRdFFtbC9xcW1sbGlz
dC5oPgogI2luY2x1ZGUgPFF0UXVpY2svcXF1aWNraXRlbS5oPgogCiBjbGFzcyBRV0VCS0lUX0VY
UE9SVCBRUXVpY2tOZXR3b3JrUmVwbHkgOiBwdWJsaWMgUU9iamVjdCB7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja25ldHdvcmtyZXF1ZXN0X3AuaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcXVlc3RfcC5o
CmluZGV4IDQyNTExZDcuLjY5YTJkNDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcXVlc3RfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrbmV0d29ya3JlcXVlc3RfcC5oCkBAIC0yNSw3ICsyNSw3
IEBACiAjaW5jbHVkZSAid3RmL1JlZlB0ci5oIgogI2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIK
ICNpbmNsdWRlIDxRT2JqZWN0PgotI2luY2x1ZGUgPFF0RGVjbGFyYXRpdmUvcWRlY2xhcmF0aXZl
bGlzdC5oPgorI2luY2x1ZGUgPFF0UW1sL3FxbWxsaXN0Lmg+CiAjaW5jbHVkZSA8UXRRdWljay9x
cXVpY2tpdGVtLmg+CiAKIGNsYXNzIFFXRUJLSVRfRVhQT1JUIFFRdWlja05ldHdvcmtSZXF1ZXN0
IDogcHVibGljIFFPYmplY3QgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlldy5jcHAKaW5kZXggN2Q1YmQ1Ny4uZmIxYTllNiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC00Niw3
ICs0Niw3IEBACiAKICNpbmNsdWRlIDxwcml2YXRlL3FxdWlja2ZsaWNrYWJsZV9wLmg+CiAjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvSW5pdGlhbGl6ZVRocmVhZGluZy5oPgotI2luY2x1ZGUgPFFE
ZWNsYXJhdGl2ZUVuZ2luZT4KKyNpbmNsdWRlIDxRdFFtbC9RUW1sRW5naW5lPgogI2luY2x1ZGUg
PFF0UXVpY2svUVF1aWNrQ2FudmFzPgogI2luY2x1ZGUgPFdlYkNvcmUvSW50UG9pbnQuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL0ludFJlY3QuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCmluZGV4IGMyMWIyZTkuLmVhMzg5OTcgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgK
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaApA
QCAtMjMsNyArMjMsNyBAQAogCiAjaW5jbHVkZSAicXF1aWNrdXJsc2NoZW1lZGVsZWdhdGVfcC5o
IgogI2luY2x1ZGUgInF3ZWJraXRnbG9iYWwuaCIKLSNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL3Fk
ZWNsYXJhdGl2ZWxpc3QuaD4KKyNpbmNsdWRlIDxRdFFtbC9xcW1sbGlzdC5oPgogI2luY2x1ZGUg
PFF0UXVpY2svcXF1aWNraXRlbS5oPgogCiBjbGFzcyBRV2ViTmF2aWdhdGlvblJlcXVlc3Q7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJpY29uaW1hZ2Vw
cm92aWRlcl9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJpY29uaW1h
Z2Vwcm92aWRlcl9wLmgKaW5kZXggODgxNWQ3Yi4uNmFkOThkMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xd2ViaWNvbmltYWdlcHJvdmlkZXJfcC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYmljb25pbWFnZXByb3ZpZGVyX3Au
aApAQCAtMjEsNyArMjEsNyBAQAogI2RlZmluZSBxd2ViaWNvbmltYWdlcHJvdmlkZXJfcF9oCiAK
ICNpbmNsdWRlICJxd2Via2l0Z2xvYmFsLmgiCi0jaW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9RRGVj
bGFyYXRpdmVJbWFnZVByb3ZpZGVyPgorI2luY2x1ZGUgPFF0UW1sL1FRbWxJbWFnZVByb3ZpZGVy
PgogCiBjbGFzcyBRV0VCS0lUX0VYUE9SVCBRV2ViSWNvbkltYWdlUHJvdmlkZXIgOiBwdWJsaWMg
UURlY2xhcmF0aXZlSW1hZ2VQcm92aWRlciB7CiBwdWJsaWM6CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9yeS5jcHAKaW5k
ZXggZmY3N2RhZS4uYjA1NzUyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xd2VibmF2aWdhdGlvbmhpc3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvcXQvcXdlYm5hdmlnYXRpb25oaXN0b3J5LmNwcApAQCAtMzMsOSArMzMsOSBA
QAogI2luY2x1ZGUgIldlYkJhY2tGb3J3YXJkTGlzdC5oIgogCiAjaW5jbHVkZSAicXdlYm5hdmln
YXRpb25oaXN0b3J5X3BfcC5oIgotI2luY2x1ZGUgPFFEZWNsYXJhdGl2ZUVuZ2luZT4KICNpbmNs
dWRlIDxRU3RyaW5nPgogI2luY2x1ZGUgPFFVcmw+CisjaW5jbHVkZSA8UXRRbWwvUVFtbEVuZ2lu
ZT4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQXJyYXkuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQmFj
a0ZvcndhcmRMaXN0SXRlbS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tCYXNlLmg+CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlzdG9y
eV9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F3ZWJuYXZpZ2F0aW9uaGlz
dG9yeV9wLmgKaW5kZXggOTI5MTE0NC4uZmE2MzA3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9xdC9xd2VibmF2aWdhdGlvbmhpc3RvcnlfcC5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXdlYm5hdmlnYXRpb25oaXN0b3J5X3AuaApAQCAt
MzEsNyArMzEsNyBAQAogI2luY2x1ZGUgPFFPYmplY3Q+CiAjaW5jbHVkZSA8UVVybD4KICNpbmNs
dWRlIDxRVmFyaWFudD4KLSNpbmNsdWRlIDxxZGVjbGFyYXRpdmUuaD4KKyNpbmNsdWRlIDxRdFFt
bC9xcW1sLmg+CiAKIGNsYXNzIFFBYnN0cmFjdExpc3RNb2RlbDsKIGNsYXNzIFFXZWJOYXZpZ2F0
aW9uSGlzdG9yeVByaXZhdGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZpZXcuY3BwIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC90ZXN0cy9xcXVpY2t3ZWJ2aWV3L3RzdF9xcXVpY2t3
ZWJ2aWV3LmNwcAppbmRleCBhNmIxMzk5Li5mNzljYzQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3Rlc3RzL3FxdWlja3dlYnZpZXcvdHN0X3FxdWlja3dlYnZp
ZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvdGVzdHMvcXF1aWNr
d2Vidmlldy90c3RfcXF1aWNrd2Vidmlldy5jcHAKQEAgLTIwLDggKzIwLDggQEAKICNpbmNsdWRl
ICIuLi90ZXN0d2luZG93LmgiCiAjaW5jbHVkZSAiLi4vdXRpbC5oIgogCi0jaW5jbHVkZSA8UURl
Y2xhcmF0aXZlRW5naW5lPgogI2luY2x1ZGUgPFFTY29wZWRQb2ludGVyPgorI2luY2x1ZGUgPFF0
UW1sL1FRbWxFbmdpbmU+CiAjaW5jbHVkZSA8UXRUZXN0L1F0VGVzdD4KICNpbmNsdWRlIDxwcml2
YXRlL3FxdWlja3dlYnBhZ2VfcC5oPgogI2luY2x1ZGUgPHByaXZhdGUvcXF1aWNrd2Vidmlld19w
Lmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5u
ZXIuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmNwcApp
bmRleCA4ZjYyODk2Li5hOTk0MGEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9x
dC9RdERpYWxvZ1J1bm5lci5jcHAKQEAgLTI0LDkgKzI0LDkgQEAKICNpbmNsdWRlICJXS1N0cmlu
Z1F0LmgiCiAjaW5jbHVkZSAicXdlYnBlcm1pc3Npb25yZXF1ZXN0X3AuaCIKIAotI2luY2x1ZGUg
PFF0RGVjbGFyYXRpdmUvUURlY2xhcmF0aXZlQ29tcG9uZW50PgotI2luY2x1ZGUgPFF0RGVjbGFy
YXRpdmUvUURlY2xhcmF0aXZlQ29udGV4dD4KLSNpbmNsdWRlIDxRdERlY2xhcmF0aXZlL1FEZWNs
YXJhdGl2ZUVuZ2luZT4KKyNpbmNsdWRlIDxRdFFtbC9RUW1sQ29tcG9uZW50PgorI2luY2x1ZGUg
PFF0UW1sL1FRbWxDb250ZXh0PgorI2luY2x1ZGUgPFF0UW1sL1FRbWxFbmdpbmU+CiAjaW5jbHVk
ZSA8UXRRdWljay9RUXVpY2tJdGVtPgogI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+CiAKQEAg
LTI1MCw3ICsyNTAsNyBAQCBwcml2YXRlOgogICAgIFF0V2ViU2VjdXJpdHlPcmlnaW4gbV9zZWN1
cml0eU9yaWdpbjsKIH07CiAKLWJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JBbGVydChRRGVj
bGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBj
b25zdCBRU3RyaW5nJiBtZXNzYWdlKQorYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckFsZXJ0
KFFRbWxDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25z
dCBRU3RyaW5nJiBtZXNzYWdlKQogewogICAgIERpYWxvZ0NvbnRleHRPYmplY3QqIGNvbnRleHRP
YmplY3QgPSBuZXcgRGlhbG9nQ29udGV4dE9iamVjdChtZXNzYWdlKTsKICAgICBpZiAoIWNyZWF0
ZURpYWxvZyhjb21wb25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCkBAIC0yNjAs
NyArMjYwLDcgQEAgYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckFsZXJ0KFFEZWNsYXJhdGl2
ZUNvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKgogICAgIHJldHVybiB0cnVlOwogfQog
Ci1ib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQ29uZmlybShRRGVjbGFyYXRpdmVDb21wb25l
bnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBRU3RyaW5nJiBt
ZXNzYWdlKQorYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckNvbmZpcm0oUVFtbENvbXBvbmVu
dCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIG1l
c3NhZ2UpCiB7CiAgICAgRGlhbG9nQ29udGV4dE9iamVjdCogY29udGV4dE9iamVjdCA9IG5ldyBE
aWFsb2dDb250ZXh0T2JqZWN0KG1lc3NhZ2UpOwogICAgIGlmICghY3JlYXRlRGlhbG9nKGNvbXBv
bmVudCwgZGlhbG9nUGFyZW50LCBjb250ZXh0T2JqZWN0KSkKQEAgLTI3Miw3ICsyNzIsNyBAQCBi
b29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQ29uZmlybShRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGNvbXBvbmVudCwgUVF1aWNrSXRlbQogICAgIHJldHVybiB0cnVlOwogfQogCi1ib29sIFF0RGlh
bG9nUnVubmVyOjppbml0Rm9yUHJvbXB0KFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50
LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0
IFFTdHJpbmcmIGRlZmF1bHRWYWx1ZSkKK2Jvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JQcm9t
cHQoUVFtbENvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNv
bnN0IFFTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFFTdHJpbmcmIGRlZmF1bHRWYWx1ZSkKIHsKICAg
ICBEaWFsb2dDb250ZXh0T2JqZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3IERpYWxvZ0NvbnRleHRP
YmplY3QobWVzc2FnZSwgZGVmYXVsdFZhbHVlKTsKICAgICBpZiAoIWNyZWF0ZURpYWxvZyhjb21w
b25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCkBAIC0yODQsNyArMjg0LDcgQEAg
Ym9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvclByb21wdChRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGNvbXBvbmVudCwgUVF1aWNrSXRlbSoKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBRdERp
YWxvZ1J1bm5lcjo6aW5pdEZvckF1dGhlbnRpY2F0aW9uKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCog
Y29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIGhvc3Ru
YW1lLCBjb25zdCBRU3RyaW5nJiByZWFsbSwgY29uc3QgUVN0cmluZyYgcHJlZmlsbGVkVXNlcm5h
bWUpCitib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQXV0aGVudGljYXRpb24oUVFtbENvbXBv
bmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcm
IGhvc3RuYW1lLCBjb25zdCBRU3RyaW5nJiByZWFsbSwgY29uc3QgUVN0cmluZyYgcHJlZmlsbGVk
VXNlcm5hbWUpCiB7CiAgICAgSHR0cEF1dGhlbnRpY2F0aW9uRGlhbG9nQ29udGV4dE9iamVjdCog
Y29udGV4dE9iamVjdCA9IG5ldyBIdHRwQXV0aGVudGljYXRpb25EaWFsb2dDb250ZXh0T2JqZWN0
KGhvc3RuYW1lLCByZWFsbSwgcHJlZmlsbGVkVXNlcm5hbWUpOwogICAgIGlmICghY3JlYXRlRGlh
bG9nKGNvbXBvbmVudCwgZGlhbG9nUGFyZW50LCBjb250ZXh0T2JqZWN0KSkKQEAgLTI5Nyw3ICsy
OTcsNyBAQCBib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQXV0aGVudGljYXRpb24oUURlY2xh
cmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdQogICAgIHJldHVybiB0cnVlOwogfQogCi1i
b29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yUHJveHlBdXRoZW50aWNhdGlvbihRRGVjbGFyYXRp
dmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBR
U3RyaW5nJiBob3N0bmFtZSwgdWludDE2X3QgcG9ydCwgY29uc3QgUVN0cmluZyYgcHJlZmlsbGVk
VXNlcm5hbWUpCitib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yUHJveHlBdXRoZW50aWNhdGlv
bihRUW1sQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29u
c3QgUVN0cmluZyYgaG9zdG5hbWUsIHVpbnQxNl90IHBvcnQsIGNvbnN0IFFTdHJpbmcmIHByZWZp
bGxlZFVzZXJuYW1lKQogewogICAgIFByb3h5QXV0aGVudGljYXRpb25EaWFsb2dDb250ZXh0T2Jq
ZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3IFByb3h5QXV0aGVudGljYXRpb25EaWFsb2dDb250ZXh0
T2JqZWN0KGhvc3RuYW1lLCBwb3J0LCBwcmVmaWxsZWRVc2VybmFtZSk7CiAgICAgaWYgKCFjcmVh
dGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNvbnRleHRPYmplY3QpKQpAQCAtMzEw
LDcgKzMxMCw3IEBAIGJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JQcm94eUF1dGhlbnRpY2F0
aW9uKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50CiAgICAgcmV0dXJuIHRydWU7CiB9
CiAKLWJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JDZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvbihR
RGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50
LCBjb25zdCBRU3RyaW5nJiBob3N0bmFtZSkKK2Jvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JD
ZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvbihRUW1sQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0
ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgaG9zdG5hbWUpCiB7CiAgICAgQ2VydGlm
aWNhdGVWZXJpZmljYXRpb25EaWFsb2dDb250ZXh0T2JqZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3
IENlcnRpZmljYXRlVmVyaWZpY2F0aW9uRGlhbG9nQ29udGV4dE9iamVjdChob3N0bmFtZSk7CiAg
ICAgaWYgKCFjcmVhdGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNvbnRleHRPYmpl
Y3QpKQpAQCAtMzIzLDcgKzMyMyw3IEBAIGJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JDZXJ0
aWZpY2F0ZVZlcmlmaWNhdGlvbihRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvCiAgICAgcmV0
dXJuIHRydWU7CiB9CiAKLWJvb2wgUXREaWFsb2dSdW5uZXI6OmluaXRGb3JGaWxlUGlja2VyKFFE
ZWNsYXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQs
IGNvbnN0IFFTdHJpbmdMaXN0JiBzZWxlY3RlZEZpbGVzLCBib29sIGFsbG93TXVsdGlwbGUpCiti
b29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRmlsZVBpY2tlcihRUW1sQ29tcG9uZW50KiBjb21w
b25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZ0xpc3QmIHNlbGVj
dGVkRmlsZXMsIGJvb2wgYWxsb3dNdWx0aXBsZSkKIHsKICAgICBGaWxlUGlja2VyQ29udGV4dE9i
amVjdCogY29udGV4dE9iamVjdCA9IG5ldyBGaWxlUGlja2VyQ29udGV4dE9iamVjdChzZWxlY3Rl
ZEZpbGVzLCBhbGxvd011bHRpcGxlKTsKICAgICBpZiAoIWNyZWF0ZURpYWxvZyhjb21wb25lbnQs
IGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCkBAIC0zMzYsNyArMzM2LDcgQEAgYm9vbCBR
dERpYWxvZ1J1bm5lcjo6aW5pdEZvckZpbGVQaWNrZXIoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBj
b21wb25lbnQsIFFRdWlja0kKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBRdERpYWxvZ1J1
bm5lcjo6aW5pdEZvckRhdGFiYXNlUXVvdGFEaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50KiBj
b21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgZGF0YWJh
c2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgV0tTZWN1cml0eU9yaWdpblJlZiBz
ZWN1cml0eU9yaWdpbiwgcXVpbnQ2NCBjdXJyZW50UXVvdGEsIHF1aW50NjQgY3VycmVudE9yaWdp
blVzYWdlLCBxdWludDY0IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBxdWludDY0IGV4cGVjdGVkVXNh
Z2UpCitib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRGF0YWJhc2VRdW90YURpYWxvZyhRUW1s
Q29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0
cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgV0tTZWN1cml0
eU9yaWdpblJlZiBzZWN1cml0eU9yaWdpbiwgcXVpbnQ2NCBjdXJyZW50UXVvdGEsIHF1aW50NjQg
Y3VycmVudE9yaWdpblVzYWdlLCBxdWludDY0IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBxdWludDY0
IGV4cGVjdGVkVXNhZ2UpCiB7CiAgICAgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Qq
IGNvbnRleHRPYmplY3QgPSBuZXcgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3QoZGF0
YWJhc2VOYW1lLCBkaXNwbGF5TmFtZSwgc2VjdXJpdHlPcmlnaW4sIGN1cnJlbnRRdW90YSwgY3Vy
cmVudE9yaWdpblVzYWdlLCBjdXJyZW50RGF0YWJhc2VVc2FnZSwgZXhwZWN0ZWRVc2FnZSk7CiAg
ICAgaWYgKCFjcmVhdGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNvbnRleHRPYmpl
Y3QpKQpAQCAtMzQ5LDEyICszNDksMTIgQEAgYm9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckRh
dGFiYXNlUXVvdGFEaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQKICAgICBy
ZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBRdERpYWxvZ1J1bm5lcjo6Y3JlYXRlRGlhbG9nKFFEZWNs
YXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIFFP
YmplY3QqIGNvbnRleHRPYmplY3QpCitib29sIFF0RGlhbG9nUnVubmVyOjpjcmVhdGVEaWFsb2co
UVFtbENvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIFFPYmpl
Y3QqIGNvbnRleHRPYmplY3QpCiB7Ci0gICAgUURlY2xhcmF0aXZlQ29udGV4dCogYmFzZUNvbnRl
eHQgPSBjb21wb25lbnQtPmNyZWF0aW9uQ29udGV4dCgpOworICAgIFFRbWxDb250ZXh0KiBiYXNl
Q29udGV4dCA9IGNvbXBvbmVudC0+Y3JlYXRpb25Db250ZXh0KCk7CiAgICAgaWYgKCFiYXNlQ29u
dGV4dCkKLSAgICAgICAgYmFzZUNvbnRleHQgPSBRRGVjbGFyYXRpdmVFbmdpbmU6OmNvbnRleHRG
b3JPYmplY3QoZGlhbG9nUGFyZW50KTsKLSAgICBtX2RpYWxvZ0NvbnRleHQgPSBhZG9wdFB0cihu
ZXcgUURlY2xhcmF0aXZlQ29udGV4dChiYXNlQ29udGV4dCkpOworICAgICAgICBiYXNlQ29udGV4
dCA9IFFRbWxFbmdpbmU6OmNvbnRleHRGb3JPYmplY3QoZGlhbG9nUGFyZW50KTsKKyAgICBtX2Rp
YWxvZ0NvbnRleHQgPSBhZG9wdFB0cihuZXcgUVFtbENvbnRleHQoYmFzZUNvbnRleHQpKTsKIAog
ICAgIC8vIFRoaXMgbWFrZXMgYm90aCAibWVzc2FnZSIgYW5kICJtb2RlbC5tZXNzYWdlIiB3b3Jr
IGZvciB0aGUgZGlhbG9nLCBqdXN0IGxpa2UgUXRRdWljaydzIExpc3RWaWV3IGRlbGVnYXRlcy4K
ICAgICBjb250ZXh0T2JqZWN0LT5zZXRQYXJlbnQobV9kaWFsb2dDb250ZXh0LmdldCgpKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdEZsaWNrUHJvdmlkZXIuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RmxpY2tQcm92aWRlci5jcHAKaW5kZXgg
YjM0YmJhNi4uMjI1ZjhhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0
L1F0RmxpY2tQcm92aWRlci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0
RmxpY2tQcm92aWRlci5jcHAKQEAgLTI1LDEyICsyNSwxMiBAQAogI2luY2x1ZGUgInFxdWlja3dl
YnZpZXdfcC5oIgogCiAjaW5jbHVkZSA8UUNvcmVBcHBsaWNhdGlvbj4KLSNpbmNsdWRlIDxRRGVj
bGFyYXRpdmVFbmdpbmU+CiAjaW5jbHVkZSA8UU1vdXNlRXZlbnQ+CiAjaW5jbHVkZSA8UVBvaW50
Rj4KICNpbmNsdWRlIDxRUXVpY2tDYW52YXM+CiAjaW5jbHVkZSA8UVF1aWNrSXRlbT4KICNpbmNs
dWRlIDxRVG91Y2hFdmVudD4KKyNpbmNsdWRlIDxRdFFtbC9RUW1sRW5naW5lPgogI2luY2x1ZGUg
PHd0Zi9Bc3NlcnRpb25zLmg+CiAKIG5hbWVzcGFjZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvUXRGbGlja1Byb3ZpZGVyLmgKaW5kZXggMjc1ODEwYi4uOTYyMzkwMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RmxpY2tQcm92aWRlci5oCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdEZsaWNrUHJvdmlkZXIuaApAQCAtMjEsMTAg
KzIxLDEwIEBACiAjaWZuZGVmIFF0RmxpY2tQcm92aWRlcl9oCiAjZGVmaW5lIFF0RmxpY2tQcm92
aWRlcl9oCiAKLSNpbmNsdWRlIDxRRGVjbGFyYXRpdmVMaXN0UHJvcGVydHk+CiAjaW5jbHVkZSA8
UU1ldGFNZXRob2Q+CiAjaW5jbHVkZSA8UU1ldGFQcm9wZXJ0eT4KICNpbmNsdWRlIDxRT2JqZWN0
PgorI2luY2x1ZGUgPFFRbWxMaXN0UHJvcGVydHk+CiAKIFFUX0JFR0lOX05BTUVTUEFDRQogY2xh
c3MgUVBvaW50RjsKQEAgLTQzLDcgKzQzLDcgQEAgcHVibGljOgogICAgIHZvaWQgaGFuZGxlVG91
Y2hGbGlja0V2ZW50KFFUb3VjaEV2ZW50Kik7CiAKICAgICBRUXVpY2tJdGVtKiBjb250ZW50SXRl
bSgpOwotICAgIFFEZWNsYXJhdGl2ZUxpc3RQcm9wZXJ0eTxRT2JqZWN0PiBmbGlja2FibGVEYXRh
KCk7CisgICAgUVFtbExpc3RQcm9wZXJ0eTxRT2JqZWN0PiBmbGlja2FibGVEYXRhKCk7CiAKICAg
ICBRUG9pbnRGIGNvbnRlbnRQb3MoKSBjb25zdDsKICAgICB2b2lkIHNldENvbnRlbnRQb3MoY29u
c3QgUVBvaW50RiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dl
YlBvcHVwTWVudVByb3h5UXQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1dlYlBv
cHVwTWVudVByb3h5UXQuY3BwCmluZGV4IDI4YjhhY2MuLjlmOTEwMGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9XZWJQb3B1cE1lbnVQcm94eVF0LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvV2ViUG9wdXBNZW51UHJveHlRdC5jcHAKQEAgLTMy
LDggKzMyLDggQEAKICNpbmNsdWRlICJxcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJxcXVp
Y2t3ZWJ2aWV3X3BfcC5oIgogI2luY2x1ZGUgPFF0Q29yZS9RQWJzdHJhY3RMaXN0TW9kZWw+Ci0j
aW5jbHVkZSA8UXREZWNsYXJhdGl2ZS9RRGVjbGFyYXRpdmVDb250ZXh0PgotI2luY2x1ZGUgPFF0
RGVjbGFyYXRpdmUvUURlY2xhcmF0aXZlRW5naW5lPgorI2luY2x1ZGUgPFF0UW1sL1FRbWxDb250
ZXh0PgorI2luY2x1ZGUgPFF0UW1sL1FRbWxFbmdpbmU+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJD
b3JlOwogCkBAIC0yNTcsNyArMjU3LDcgQEAgdm9pZCBXZWJQb3B1cE1lbnVQcm94eVF0OjpzZWxl
Y3RJbmRleChpbnQgaW5kZXgpCiAKIHZvaWQgV2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlSXRl
bShRT2JqZWN0KiBjb250ZXh0T2JqZWN0KQogewotICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCog
Y29tcG9uZW50ID0gbV93ZWJWaWV3LT5leHBlcmltZW50YWwoKS0+aXRlbVNlbGVjdG9yKCk7Cisg
ICAgUVFtbENvbXBvbmVudCogY29tcG9uZW50ID0gbV93ZWJWaWV3LT5leHBlcmltZW50YWwoKS0+
aXRlbVNlbGVjdG9yKCk7CiAgICAgaWYgKCFjb21wb25lbnQpIHsKICAgICAgICAgZGVsZXRlIGNv
bnRleHRPYmplY3Q7CiAgICAgICAgIHJldHVybjsKQEAgLTI4OSwxMiArMjg5LDEyIEBAIHZvaWQg
V2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlSXRlbShRT2JqZWN0KiBjb250ZXh0T2JqZWN0KQog
ICAgIG1faXRlbVNlbGVjdG9yLT5zZXRQYXJlbnRJdGVtKG1fd2ViVmlldyk7CiB9CiAKLXZvaWQg
V2ViUG9wdXBNZW51UHJveHlRdDo6Y3JlYXRlQ29udGV4dChRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGNvbXBvbmVudCwgUU9iamVjdCogY29udGV4dE9iamVjdCkKK3ZvaWQgV2ViUG9wdXBNZW51UHJv
eHlRdDo6Y3JlYXRlQ29udGV4dChRUW1sQ29tcG9uZW50KiBjb21wb25lbnQsIFFPYmplY3QqIGNv
bnRleHRPYmplY3QpCiB7Ci0gICAgUURlY2xhcmF0aXZlQ29udGV4dCogYmFzZUNvbnRleHQgPSBj
b21wb25lbnQtPmNyZWF0aW9uQ29udGV4dCgpOworICAgIFFRbWxDb250ZXh0KiBiYXNlQ29udGV4
dCA9IGNvbXBvbmVudC0+Y3JlYXRpb25Db250ZXh0KCk7CiAgICAgaWYgKCFiYXNlQ29udGV4dCkK
LSAgICAgICAgYmFzZUNvbnRleHQgPSBRRGVjbGFyYXRpdmVFbmdpbmU6OmNvbnRleHRGb3JPYmpl
Y3QobV93ZWJWaWV3KTsKLSAgICBtX2NvbnRleHQgPSBhZG9wdFB0cihuZXcgUURlY2xhcmF0aXZl
Q29udGV4dChiYXNlQ29udGV4dCkpOworICAgICAgICBiYXNlQ29udGV4dCA9IFFRbWxFbmdpbmU6
OmNvbnRleHRGb3JPYmplY3QobV93ZWJWaWV3KTsKKyAgICBtX2NvbnRleHQgPSBhZG9wdFB0cihu
ZXcgUVFtbENvbnRleHQoYmFzZUNvbnRleHQpKTsKIAogICAgIGNvbnRleHRPYmplY3QtPnNldFBh
cmVudChtX2NvbnRleHQuZ2V0KCkpOwogICAgIG1fY29udGV4dC0+c2V0Q29udGV4dFByb3BlcnR5
KFFMYXRpbjFTdHJpbmcoIm1vZGVsIiksIGNvbnRleHRPYmplY3QpOwpkaWZmIC0tZ2l0IGEvVG9v
bHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDA1OWRlY2EuLmE0N2RkNDcgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNyBAQAorMjAxMi0wMy0yOSAgw4Fkw6FtIEthbGxhaSAgPGthZGFtQGluZi51LXN6ZWdlZC5o
dT4KKworICAgICAgICBbUXRdIEJ1aWxkIGZpeCBieSByZW5hbWVpbmcgUXREZWNsYXJhdGl2ZSB0
byBRdFFtbCBpbiBoZWFkZXIgY2FsbHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04MjE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogTWluaUJyb3dzZXIvcXQvQnJvd3NlcldpbmRvdy5jcHA6CisgICAg
ICAgIChCcm93c2VyV2luZG93Ojp1cGRhdGVWaXN1YWxNb2NrVG91Y2hQb2ludHMpOgorICAgICAg
ICAqIE1pbmlCcm93c2VyL3F0L21haW4uY3BwOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
cXQvUGxhdGZvcm1XZWJWaWV3UXQuY3BwOgorICAgICAgICAoV1RSOjpXcmFwcGVyV2luZG93Ojpo
YW5kbGVTdGF0dXNDaGFuZ2VkKToKKyAgICAgICAgKiBxbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL3Vu
aXgvZGVmYXVsdF9wb3N0LnByZjoKKwogMjAxMi0wMy0yOSAgVmluZWV0IENoYXVkaGFyeSAgPHJn
Zjc0OEBtb3Rvcm9sYS5jb20+CiAKICAgICAgICAgUmVtb3ZlIGN1c3RvbSBiaW5kaW5ncyBmb3Jt
IEludGVybmFscy5pZGwgb2YgYXR0cmlidXRlIHR5cGUgQXJyYXkuCmRpZmYgLS1naXQgYS9Ub29s
cy9NaW5pQnJvd3Nlci9xdC9Ccm93c2VyV2luZG93LmNwcCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0
L0Jyb3dzZXJXaW5kb3cuY3BwCmluZGV4IGM1YmRlZmMuLmUwMzI3MWUgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL01pbmlCcm93c2VyL3F0L0Jyb3dzZXJXaW5kb3cuY3BwCisrKyBiL1Rvb2xzL01pbmlCcm93
c2VyL3F0L0Jyb3dzZXJXaW5kb3cuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAjaW5jbHVkZSAicHJp
dmF0ZS9xcXVpY2t3ZWJ2aWV3X3AuaCIKICNpbmNsdWRlICJ1dGlscy5oIgogCi0jaW5jbHVkZSA8
UURlY2xhcmF0aXZlRW5naW5lPgorI2luY2x1ZGUgPFFRbWxFbmdpbmU+CiAjaW5jbHVkZSA8UURp
cj4KICNpbmNsdWRlIDxRUG9pbnRGPgogCkBAIC0xMDgsNyArMTA4LDcgQEAgdm9pZCBCcm93c2Vy
V2luZG93Ojp1cGRhdGVWaXN1YWxNb2NrVG91Y2hQb2ludHMoY29uc3QgUUxpc3Q8UVRvdWNoRXZl
bnQ6OlRvdWNoUG8KICAgICAgICAgUVF1aWNrSXRlbSogbW9ja1RvdWNoUG9pbnRJdGVtID0gcm9v
dE9iamVjdCgpLT5maW5kQ2hpbGQ8UVF1aWNrSXRlbSo+KG1vY2tUb3VjaFBvaW50SWRlbnRpZmll
ciwgUXQ6OkZpbmREaXJlY3RDaGlsZHJlbk9ubHkpOwogCiAgICAgICAgIGlmICghbW9ja1RvdWNo
UG9pbnRJdGVtKSB7Ci0gICAgICAgICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQgdG91Y2hNb2Nr
UG9pbnRDb21wb25lbnQoZW5naW5lKCksIFFVcmwoInFyYzovcW1sL01vY2tUb3VjaFBvaW50LnFt
bCIpKTsKKyAgICAgICAgICAgIFFRbWxDb21wb25lbnQgdG91Y2hNb2NrUG9pbnRDb21wb25lbnQo
ZW5naW5lKCksIFFVcmwoInFyYzovcW1sL01vY2tUb3VjaFBvaW50LnFtbCIpKTsKICAgICAgICAg
ICAgIG1vY2tUb3VjaFBvaW50SXRlbSA9IHFvYmplY3RfY2FzdDxRUXVpY2tJdGVtKj4odG91Y2hN
b2NrUG9pbnRDb21wb25lbnQuY3JlYXRlKCkpOwogICAgICAgICAgICAgbW9ja1RvdWNoUG9pbnRJ
dGVtLT5zZXRPYmplY3ROYW1lKG1vY2tUb3VjaFBvaW50SWRlbnRpZmllcik7CiAgICAgICAgICAg
ICBtb2NrVG91Y2hQb2ludEl0ZW0tPnNldFByb3BlcnR5KCJwb2ludElkIiwgUVZhcmlhbnQodG91
Y2hQb2ludC5pZCgpKSk7CmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9xdC9tYWluLmNw
cCBiL1Rvb2xzL01pbmlCcm93c2VyL3F0L21haW4uY3BwCmluZGV4IDM2NjM3NzMuLjRjOGNkOTIg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL3F0L21haW4uY3BwCisrKyBiL1Rvb2xzL01p
bmlCcm93c2VyL3F0L21haW4uY3BwCkBAIC0zMSw3ICszMSw3IEBACiAjaW5jbHVkZSAiTWluaUJy
b3dzZXJBcHBsaWNhdGlvbi5oIgogI2luY2x1ZGUgIlVybExvYWRlci5oIgogCi0jaW5jbHVkZSA8
cWRlY2xhcmF0aXZlLmg+CisjaW5jbHVkZSA8cXFtbC5oPgogCiAjaW5jbHVkZSA8UURpcj4KICNp
bmNsdWRlIDxRTGF0aW4xU3RyaW5nPgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9xdC9QbGF0Zm9ybVdlYlZpZXdRdC5jcHAgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1Bs
YXRmb3JtV2ViVmlld1F0LmNwcAppbmRleCA3ZjUxMjM5Li5mNjVmZjE5IDEwMDY0NAotLS0gYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNwcAorKysgYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL3F0L1BsYXRmb3JtV2ViVmlld1F0LmNwcApAQCAtMzEsOCArMzEs
OCBAQAogI2luY2x1ZGUgInFxdWlja3dlYnZpZXdfcC5oIgogCiAjaW5jbHVkZSA8UUNvcmVBcHBs
aWNhdGlvbj4KLSNpbmNsdWRlIDxRRGVjbGFyYXRpdmVQcm9wZXJ0eT4KICNpbmNsdWRlIDxRRXZl
bnRMb29wPgorI2luY2x1ZGUgPFFRbWxQcm9wZXJ0eT4KICNpbmNsdWRlIDxRdFF1aWNrL1FRdWlj
a1ZpZXc+CiAjaW5jbHVkZSA8cXdpbmRvd3N5c3RlbWludGVyZmFjZV9xcGEuaD4KIApAQCAtNTgs
NyArNTgsNyBAQCBwcml2YXRlIHNsb3RzOgogCiAgICAgICAgIHNldFJlc2l6ZU1vZGUoUVF1aWNr
Vmlldzo6U2l6ZVJvb3RPYmplY3RUb1ZpZXcpOwogICAgICAgICBtX3ZpZXctPnNldFBhcmVudEl0
ZW0ocm9vdE9iamVjdCgpKTsKLSAgICAgICAgUURlY2xhcmF0aXZlUHJvcGVydHk6OndyaXRlKG1f
dmlldywgImFuY2hvcnMuZmlsbCIsIHFWYXJpYW50RnJvbVZhbHVlKHJvb3RPYmplY3QoKSkpOwor
ICAgICAgICBRUW1sUHJvcGVydHk6OndyaXRlKG1fdmlldywgImFuY2hvcnMuZmlsbCIsIHFWYXJp
YW50RnJvbVZhbHVlKHJvb3RPYmplY3QoKSkpOwogCiAgICAgICAgIFFXaW5kb3dTeXN0ZW1JbnRl
cmZhY2U6OmhhbmRsZVdpbmRvd0FjdGl2YXRlZCh0aGlzKTsKICAgICAgICAgbV92aWV3LT5wYWdl
KCktPnNldEZvY3VzKHRydWUpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvcW1ha2UvbWtzcGVjcy9mZWF0
dXJlcy91bml4L2RlZmF1bHRfcG9zdC5wcmYgYi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVz
L3VuaXgvZGVmYXVsdF9wb3N0LnByZgppbmRleCA3MDZjOGMyLi5jZThlZWNjIDEwMDY0NAotLS0g
YS9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL3VuaXgvZGVmYXVsdF9wb3N0LnByZgorKysg
Yi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL3VuaXgvZGVmYXVsdF9wb3N0LnByZgpAQCAt
MTQsMTEgKzE0LDcgQEAgbGludXgtZysrKjppc0VxdWFsKFFUX0FSQ0gsaTM4NikgewogCiAjIFRy
ZWF0IHdhcm5pbmdzIGFzIGVycm9ycyBvbiB4ODYvTGludXgvR0NDCiBsaW51eC1nKysqIHsKLSAg
ICBpc0VxdWFsKFFUX0FSQ0gseDg2XzY0KXxpc0VxdWFsKFFUX0FSQ0gsaTM4NikgewotICAgICAg
ICAjIERpc2FibGUgLVdlcnJvciBmb3IgZGVjbGFyYXRpdmUgc3R1ZmYgdW50aWwgd2UgX3JlcXVp
cmVfIGEgUXQgNSB3aXRoIHRoZSBuZXcgbmFtZXMuCi0gICAgICAgICFjb250YWlucyhRVCwgZGVj
bGFyYXRpdmUpOiBRTUFLRV9DWFhGTEFHUyArPSAtV2Vycm9yCi0gICAgfQotCisgICAgaXNFcXVh
bChRVF9BUkNILHg4Nl82NCl8aXNFcXVhbChRVF9BUkNILGkzODYpOiBRTUFLRV9DWFhGTEFHUyAr
PSAtV2Vycm9yCiAgICAgZ3JlYXRlclRoYW4oUVRfR0NDX01BSk9SX1ZFUlNJT04sIDMpOmdyZWF0
ZXJUaGFuKFFUX0dDQ19NSU5PUl9WRVJTSU9OLCA1KSB7CiAgICAgICAgIGlmICghY29udGFpbnMo
UU1BS0VfQ1hYRkxBR1MsIC1zdGQ9YysrMHgpICYmICFjb250YWlucyhRTUFLRV9DWFhGTEFHUywg
LXN0ZD1nbnUrKzB4KSkgewogICAgICAgICAgICAgIyBXZSBuZWVkIHRvIGRlYWN0aXZhdGUgdGhv
c2Ugd2FybmluZ3MgYmVjYXVzZSBzb21lIG5hbWVzIGNvbmZsaWN0cyB3aXRoIHVwY29taW5nIGMr
KzB4IHR5cGVzIChlLmcubnVsbHB0cikuCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>