<?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>173094</bug_id>
          
          <creation_ts>2017-06-08 05:15:13 -0700</creation_ts>
          <short_desc>[GTK] Get rid of custom marshallers of signals</short_desc>
          <delta_ts>2017-06-08 22:22:50 -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>WebKitGTK</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aperez</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1316866</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-06-08 05:15:13 -0700</bug_when>
    <thetext>We can simply use g_cclosure_marshal_generic instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1316867</commentid>
    <comment_count>1</comment_count>
      <attachid>312293</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-06-08 05:17:37 -0700</bug_when>
    <thetext>Created attachment 312293
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1316889</commentid>
    <comment_count>2</comment_count>
      <attachid>312293</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-06-08 06:27:03 -0700</bug_when>
    <thetext>Comment on attachment 312293
Patch

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

Informal r+ from me.

There is a chance that the generic libffi-based marshaller is slower than the
custom ones, but it should not be much of an issue because other parts of the
WebKit code (e.g. rendering) have more weight on CPU usage. And it is nice to
have code getting removed \o/

&gt; Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardList.cpp:87
&gt; +        g_cclosure_marshal_generic,

You could as well pass “nullptr” here. According to the documentation for “g_signal_new()”
(https://developer.gnome.org/gobject/stable/gobject-Signals.html#g-signal-new):

&gt; If c_marshaller is NULL, g_cclosure_marshal_generic() will be used as the
&gt; marshaller for this signal.

And the same goes to the other changed locations. I have no strong opinion about whether
passing “g_cclosure_marshal_generic” or “nullptr” should be preferred, so I&apos;d leave it
up to you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1316890</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-06-08 06:33:01 -0700</bug_when>
    <thetext>(In reply to Adrian Perez from comment #2)
&gt; Comment on attachment 312293 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=312293&amp;action=review
&gt; 
&gt; Informal r+ from me.

Thanks.

&gt; There is a chance that the generic libffi-based marshaller is slower than the
&gt; custom ones, but it should not be much of an issue because other parts of the
&gt; WebKit code (e.g. rendering) have more weight on CPU usage. And it is nice to
&gt; have code getting removed \o/

Yes, I don&apos;t think it will be noticeable and we are using generic already in other signals.

&gt; &gt; Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardList.cpp:87
&gt; &gt; +        g_cclosure_marshal_generic,
&gt; 
&gt; You could as well pass “nullptr” here. According to the documentation for
&gt; “g_signal_new()”
&gt; (https://developer.gnome.org/gobject/stable/gobject-Signals.html#g-signal-
&gt; new):
&gt; 
&gt; &gt; If c_marshaller is NULL, g_cclosure_marshal_generic() will be used as the
&gt; &gt; marshaller for this signal.
&gt; 
&gt; And the same goes to the other changed locations. I have no strong opinion
&gt; about whether
&gt; passing “g_cclosure_marshal_generic” or “nullptr” should be preferred, so
&gt; I&apos;d leave it
&gt; up to you.

g_signal_new is already difficult to read with severl 0, nullptr, nullptr. In some cases we even add a comment explaining what the nullptr/0 is. So, I prefer to pass the marshaller for readability.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1316896</commentid>
    <comment_count>4</comment_count>
      <attachid>312293</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-06-08 06:38:38 -0700</bug_when>
    <thetext>Comment on attachment 312293
Patch

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

&gt;&gt;&gt; Source/WebKit2/UIProcess/API/gtk/WebKitBackForwardList.cpp:87
&gt;&gt;&gt; +        g_cclosure_marshal_generic,
&gt;&gt; 
&gt;&gt; You could as well pass “nullptr” here. According to the documentation for “g_signal_new()”
&gt;&gt; (https://developer.gnome.org/gobject/stable/gobject-Signals.html#g-signal-new):
&gt; 
&gt; g_signal_new is already difficult to read with severl 0, nullptr, nullptr. In some cases we even add a comment explaining what the nullptr/0 is. So, I prefer to pass the marshaller for readability.

SGTM. Let&apos;s be explicit where possible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1316911</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-06-08 08:21:18 -0700</bug_when>
    <thetext>Good cleanup.

(In reply to Carlos Garcia Campos from comment #3)
&gt; g_signal_new is already difficult to read with severl 0, nullptr, nullptr.
&gt; In some cases we even add a comment explaining what the nullptr/0 is. So, I
&gt; prefer to pass the marshaller for readability.

Well it&apos;s up to you, but I prefer the NULL/nullptr style as well. It&apos;s simpler than writing out g_cclosure_marshal_generic, and I don&apos;t think it hurts readability. Here nullptr means &quot;keep things as the default&quot; and that&apos;s all you need to know. I converted Epiphany to use this style a year or two ago.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1317207</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-06-08 22:22:50 -0700</bug_when>
    <thetext>Committed r217960: &lt;http://trac.webkit.org/changeset/217960&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>312293</attachid>
            <date>2017-06-08 05:17:37 -0700</date>
            <delta_ts>2017-06-08 06:38:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-gtk-marshallers.diff</filename>
            <type>text/plain</type>
            <size>33266</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBmOTBiMmRkMGMwNS4uYTFlOTBkMjA3ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOSBAQAorMjAxNy0wNi0wOCAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGln
YWxpYS5jb20+CisKKyAgICAgICAgW0dUS10gR2V0IHJpZCBvZiBjdXN0b20gbWFyc2hhbGxlcnMg
b2Ygc2lnbmFscworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTczMDk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgVXNlIGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5lcmljIGluc3RlYWQuCisKKyAgICAgICAgKiBQ
bGF0Zm9ybUdUSy5jbWFrZToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRCYWNr
Rm9yd2FyZExpc3QuY3BwOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdERvd25s
b2FkLmNwcDoKKyAgICAgICAgKHdlYmtpdF9kb3dubG9hZF9jbGFzc19pbml0KToKKyAgICAgICAg
KiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRGYXZpY29uRGF0YWJhc2UuY3BwOgorICAgICAgICAo
d2Via2l0X2Zhdmljb25fZGF0YWJhc2VfY2xhc3NfaW5pdCk6CisgICAgICAgICogVUlQcm9jZXNz
L0FQSS9ndGsvV2ViS2l0V2ViSW5zcGVjdG9yLmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfaW5z
cGVjdG9yX2NsYXNzX2luaXQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdl
YlJlc291cmNlLmNwcDoKKyAgICAgICAgKHdlYmtpdF93ZWJfcmVzb3VyY2VfY2xhc3NfaW5pdCk6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHA6CisgICAgICAg
ICh3ZWJraXRfd2ViX3ZpZXdfY2xhc3NfaW5pdCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9n
dGsvd2Via2l0Mm1hcnNoYWwubGlzdDogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0FQSS9ndGsvV2ViS2l0U2NyaXB0V29ybGQuY3BwOgorICAgICAgICAqIFdl
YlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcDoKKyAgICAg
ICAgKHdlYmtpdF93ZWJfcGFnZV9jbGFzc19pbml0KToKKwogMjAxNy0wNi0wNyAgQ2FybG9zIEdh
cmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW1dQRV0gRW5hYmxl
IHJlc291cmNlIHVzYWdlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUdUSy5j
bWFrZSBiL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtR1RLLmNtYWtlCmluZGV4IGEyYjgwZTNkZWYy
Li4xM2EwMGFjM2Q4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm1HVEsuY21h
a2UKKysrIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm1HVEsuY21ha2UKQEAgLTUyNCw3ICs1MjQs
NiBAQCBsaXN0KEFQUEVORCBXZWJLaXQyX0RFUklWRURfU09VUkNFUwogICAgICR7REVSSVZFRF9T
T1VSQ0VTX1dFQktJVDJHVEtfRElSfS9XZWJLaXQyUmVzb3VyY2VzR1Jlc291cmNlQnVuZGxlLmMK
IAogICAgICR7REVSSVZFRF9TT1VSQ0VTX1dFQktJVDJHVEtfQVBJX0RJUn0vV2ViS2l0RW51bVR5
cGVzLmNwcAotICAgICR7REVSSVZFRF9TT1VSQ0VTX1dFQktJVDJHVEtfQVBJX0RJUn0vV2ViS2l0
TWFyc2hhbC5jcHAKICkKIAogaWYgKEVOQUJMRV9XQVlMQU5EX1RBUkdFVCkKQEAgLTk4MiwxOSAr
OTgxLDYgQEAgZW5kaWYgKCkKIAogQUREX1dIT0xFX0FSQ0hJVkVfVE9fTElCUkFSSUVTKFdlYktp
dDJfTElCUkFSSUVTKQogCi1zZXQoV2ViS2l0Ml9NQVJTSEFMX0xJU1QgJHtXRUJLSVQyX0RJUn0v
VUlQcm9jZXNzL0FQSS9ndGsvd2Via2l0Mm1hcnNoYWwubGlzdCkKLWFkZF9jdXN0b21fY29tbWFu
ZCgKLSAgICBPVVRQVVQgJHtERVJJVkVEX1NPVVJDRVNfV0VCS0lUMkdUS19BUElfRElSfS9XZWJL
aXRNYXJzaGFsLmNwcAotICAgICAgICAgICAke0RFUklWRURfU09VUkNFU19XRUJLSVQyR1RLX0FQ
SV9ESVJ9L1dlYktpdE1hcnNoYWwuaAotICAgIE1BSU5fREVQRU5ERU5DWSAke1dlYktpdDJfTUFS
U0hBTF9MSVNUfQotCi0gICAgQ09NTUFORCBlY2hvIGV4dGVybiBcIkNcIiB7ID4gJHtERVJJVkVE
X1NPVVJDRVNfV0VCS0lUMkdUS19BUElfRElSfS9XZWJLaXRNYXJzaGFsLmNwcAotICAgIENPTU1B
TkQgZ2xpYi1nZW5tYXJzaGFsIC0tcHJlZml4PXdlYmtpdF9tYXJzaGFsICR7V2ViS2l0Ml9NQVJT
SEFMX0xJU1R9IC0tYm9keSA+PiAke0RFUklWRURfU09VUkNFU19XRUJLSVQyR1RLX0FQSV9ESVJ9
L1dlYktpdE1hcnNoYWwuY3BwCi0gICAgQ09NTUFORCBlY2hvIH0gPj4gJHtERVJJVkVEX1NPVVJD
RVNfV0VCS0lUMkdUS19BUElfRElSfS9XZWJLaXRNYXJzaGFsLmNwcAotCi0gICAgQ09NTUFORCBn
bGliLWdlbm1hcnNoYWwgLS1wcmVmaXg9d2Via2l0X21hcnNoYWwgJHtXZWJLaXQyX01BUlNIQUxf
TElTVH0gLS1oZWFkZXIgPiAke0RFUklWRURfU09VUkNFU19XRUJLSVQyR1RLX0FQSV9ESVJ9L1dl
YktpdE1hcnNoYWwuaAotICAgIFZFUkJBVElNKQotCiAjIFRvIGdlbmVyYXRlIFdlYktpdEVudW1U
eXBlcy5oIHdlIHdhbnQgdG8gdXNlIGFsbCBpbnN0YWxsZWQgaGVhZGVycywgZXhjZXB0IFdlYktp
dEVudW1UeXBlcy5oIGl0c2VsZi4KIHNldChXZWJLaXQyR1RLX0VOVU1fR0VORVJBVElPTl9IRUFE
RVJTICR7V2ViS2l0MkdUS19JTlNUQUxMRURfSEVBREVSU30pCiBsaXN0KFJFTU9WRV9JVEVNIFdl
YktpdDJHVEtfRU5VTV9HRU5FUkFUSU9OX0hFQURFUlMgJHtERVJJVkVEX1NPVVJDRVNfV0VCS0lU
MkdUS19BUElfRElSfS9XZWJLaXRFbnVtVHlwZXMuaCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdEJhY2tGb3J3YXJkTGlzdC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRCYWNrRm9yd2FyZExpc3QuY3BwCmluZGV4
IGEzYWM4ZTZiZDYzLi5kYWUxMjYxNzYzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9ndGsvV2ViS2l0QmFja0ZvcndhcmRMaXN0LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRCYWNrRm9yd2FyZExpc3QuY3BwCkBAIC0yMiw3
ICsyMiw2IEBACiAKICNpbmNsdWRlICJBUElBcnJheS5oIgogI2luY2x1ZGUgIldlYktpdEJhY2tG
b3J3YXJkTGlzdFByaXZhdGUuaCIKLSNpbmNsdWRlICJXZWJLaXRNYXJzaGFsLmgiCiAjaW5jbHVk
ZSAiV2ViS2l0UHJpdmF0ZS5oIgogI2luY2x1ZGUgPHd0Zi9nbGliL0dSZWZQdHIuaD4KIApAQCAt
ODAsMTUgKzc5LDE1IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9iYWNrX2ZvcndhcmRfbGlzdF9jbGFz
c19pbml0KFdlYktpdEJhY2tGb3J3YXJkTGlzdENsYXNzKiBsaXN0CiAgICAgICogJU5VTEwgd2hl
biBvbmx5IHRoZSBjdXJyZW50IGl0ZW0gaXMgdXBkYXRlZC4gSXRlbXMgYXJlIG9ubHkgcmVtb3Zl
ZAogICAgICAqIHdoZW4gdGhlIGxpc3QgaXMgY2xlYXJlZCBvciB0aGUgbWF4aW11bSBpdGVtcyBs
aW1pdCBpcyByZWFjaGVkLgogICAgICAqLwotICAgIHNpZ25hbHNbQ0hBTkdFRF0gPQotICAgICAg
ICBnX3NpZ25hbF9uZXcoImNoYW5nZWQiLAotICAgICAgICAgICAgICAgICAgICAgR19UWVBFX0ZS
T01fQ0xBU1MobGlzdENsYXNzKSwKLSAgICAgICAgICAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9M
QVNULAotICAgICAgICAgICAgICAgICAgICAgMCwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAg
IHdlYmtpdF9tYXJzaGFsX1ZPSURfX09CSkVDVF9QT0lOVEVSLAotICAgICAgICAgICAgICAgICAg
ICAgR19UWVBFX05PTkUsIDIsCi0gICAgICAgICAgICAgICAgICAgICBXRUJLSVRfVFlQRV9CQUNL
X0ZPUldBUkRfTElTVF9JVEVNLAotICAgICAgICAgICAgICAgICAgICAgR19UWVBFX1BPSU5URVIp
OworICAgIHNpZ25hbHNbQ0hBTkdFRF0gPSBnX3NpZ25hbF9uZXcoCisgICAgICAgICJjaGFuZ2Vk
IiwKKyAgICAgICAgR19UWVBFX0ZST01fQ0xBU1MobGlzdENsYXNzKSwKKyAgICAgICAgR19TSUdO
QUxfUlVOX0xBU1QsCisgICAgICAgIDAsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgIGdfY2Ns
b3N1cmVfbWFyc2hhbF9nZW5lcmljLAorICAgICAgICBHX1RZUEVfTk9ORSwgMiwKKyAgICAgICAg
V0VCS0lUX1RZUEVfQkFDS19GT1JXQVJEX0xJU1RfSVRFTSwKKyAgICAgICAgR19UWVBFX1BPSU5U
RVIpOwogfQogCiBzdGF0aWMgV2ViS2l0QmFja0ZvcndhcmRMaXN0SXRlbSogd2Via2l0QmFja0Zv
cndhcmRMaXN0R2V0T3JDcmVhdGVJdGVtKFdlYktpdEJhY2tGb3J3YXJkTGlzdCogbGlzdCwgV2Vi
QmFja0ZvcndhcmRMaXN0SXRlbSogd2ViTGlzdEl0ZW0pCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXREb3dubG9hZC5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXREb3dubG9hZC5jcHAKaW5kZXggMWM0NWU3YTQ0NmIu
LjE2OTg5MDI4Y2VlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0
ay9XZWJLaXREb3dubG9hZC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0RG93bmxvYWQuY3BwCkBAIC0yMyw3ICsyMyw2IEBACiAjaW5jbHVkZSAiRG93bmxv
YWRQcm94eS5oIgogI2luY2x1ZGUgIldlYkVycm9ycy5oIgogI2luY2x1ZGUgIldlYktpdERvd25s
b2FkUHJpdmF0ZS5oIgotI2luY2x1ZGUgIldlYktpdE1hcnNoYWwuaCIKICNpbmNsdWRlICJXZWJL
aXRQcml2YXRlLmgiCiAjaW5jbHVkZSAiV2ViS2l0VVJJUmVxdWVzdFByaXZhdGUuaCIKICNpbmNs
dWRlICJXZWJLaXRVUklSZXNwb25zZVByaXZhdGUuaCIKQEAgLTIyNSwxNCArMjI0LDE0IEBAIHN0
YXRpYyB2b2lkIHdlYmtpdF9kb3dubG9hZF9jbGFzc19pbml0KFdlYktpdERvd25sb2FkQ2xhc3Mq
IGRvd25sb2FkQ2xhc3MpCiAgICAgICogZXZlcnkgdGltZSBuZXcgZGF0YSBoYXMgYmVlbiB3cml0
dGVuIHRvIHRoZSBkZXN0aW5hdGlvbi4gSXQncwogICAgICAqIHVzZWZ1bCB0byBrbm93IHRoZSBw
cm9ncmVzcyBvZiB0aGUgZG93bmxvYWQgb3BlcmF0aW9uLgogICAgICAqLwotICAgIHNpZ25hbHNb
UkVDRUlWRURfREFUQV0gPQotICAgICAgICBnX3NpZ25hbF9uZXcoInJlY2VpdmVkLWRhdGEiLAot
ICAgICAgICAgICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1Mob2JqZWN0Q2xhc3MpLAotICAg
ICAgICAgICAgICAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCi0gICAgICAgICAgICAgICAgICAg
ICAwLCAwLCAwLAotICAgICAgICAgICAgICAgICAgICAgd2Via2l0X21hcnNoYWxfVk9JRF9fVUlO
VDY0LAotICAgICAgICAgICAgICAgICAgICAgR19UWVBFX05PTkUsIDEsCi0gICAgICAgICAgICAg
ICAgICAgICBHX1RZUEVfVUlOVDY0KTsKKyAgICBzaWduYWxzW1JFQ0VJVkVEX0RBVEFdID0gZ19z
aWduYWxfbmV3KAorICAgICAgICAicmVjZWl2ZWQtZGF0YSIsCisgICAgICAgIEdfVFlQRV9GUk9N
X0NMQVNTKG9iamVjdENsYXNzKSwKKyAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCisgICAgICAg
IDAsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5lcmlj
LAorICAgICAgICBHX1RZUEVfTk9ORSwgMSwKKyAgICAgICAgR19UWVBFX1VJTlQ2NCk7CiAKICAg
ICAvKioKICAgICAgKiBXZWJLaXREb3dubG9hZDo6ZmluaXNoZWQ6CkBAIC0yODQsMTUgKzI4Mywx
NSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfZG93bmxvYWRfY2xhc3NfaW5pdChXZWJLaXREb3dubG9h
ZENsYXNzKiBkb3dubG9hZENsYXNzKQogICAgICAqIFJldHVybnM6ICVUUlVFIHRvIHN0b3Agb3Ro
ZXIgaGFuZGxlcnMgZnJvbSBiZWluZyBpbnZva2VkIGZvciB0aGUgZXZlbnQuCiAgICAgICogICAl
RkFMU0UgdG8gcHJvcGFnYXRlIHRoZSBldmVudCBmdXJ0aGVyLgogICAgICAqLwotICAgIHNpZ25h
bHNbREVDSURFX0RFU1RJTkFUSU9OXSA9Ci0gICAgICAgIGdfc2lnbmFsX25ldygiZGVjaWRlLWRl
c3RpbmF0aW9uIiwKLSAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKG9iamVj
dENsYXNzKSwKLSAgICAgICAgICAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAotICAgICAg
ICAgICAgICAgICAgICAgR19TVFJVQ1RfT0ZGU0VUKFdlYktpdERvd25sb2FkQ2xhc3MsIGRlY2lk
ZV9kZXN0aW5hdGlvbiksCi0gICAgICAgICAgICAgICAgICAgICBnX3NpZ25hbF9hY2N1bXVsYXRv
cl90cnVlX2hhbmRsZWQsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICB3ZWJraXRfbWFyc2hh
bF9CT09MRUFOX19TVFJJTkcsCi0gICAgICAgICAgICAgICAgICAgICBHX1RZUEVfQk9PTEVBTiwg
MSwKLSAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9TVFJJTkcpOworICAgIHNpZ25hbHNbREVD
SURFX0RFU1RJTkFUSU9OXSA9IGdfc2lnbmFsX25ldygKKyAgICAgICAgImRlY2lkZS1kZXN0aW5h
dGlvbiIsCisgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKG9iamVjdENsYXNzKSwKKyAgICAgICAg
R19TSUdOQUxfUlVOX0xBU1QsCisgICAgICAgIEdfU1RSVUNUX09GRlNFVChXZWJLaXREb3dubG9h
ZENsYXNzLCBkZWNpZGVfZGVzdGluYXRpb24pLAorICAgICAgICBnX3NpZ25hbF9hY2N1bXVsYXRv
cl90cnVlX2hhbmRsZWQsIE5VTEwsCisgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5lcmlj
LAorICAgICAgICBHX1RZUEVfQk9PTEVBTiwgMSwKKyAgICAgICAgR19UWVBFX1NUUklORyk7CiAK
ICAgICAvKioKICAgICAgKiBXZWJLaXREb3dubG9hZDo6Y3JlYXRlZC1kZXN0aW5hdGlvbjoKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdEZhdmljb25E
YXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRGYXZp
Y29uRGF0YWJhc2UuY3BwCmluZGV4IGYzODgyMDk4YzNkLi5kYmUwNTY2OWRiOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0RmF2aWNvbkRhdGFiYXNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRGYXZpY29u
RGF0YWJhc2UuY3BwCkBAIC0yMSw3ICsyMSw2IEBACiAjaW5jbHVkZSAiV2ViS2l0RmF2aWNvbkRh
dGFiYXNlLmgiCiAKICNpbmNsdWRlICJXZWJLaXRGYXZpY29uRGF0YWJhc2VQcml2YXRlLmgiCi0j
aW5jbHVkZSAiV2ViS2l0TWFyc2hhbC5oIgogI2luY2x1ZGUgIldlYktpdFByaXZhdGUuaCIKICNp
bmNsdWRlIDxXZWJDb3JlL0ZpbGVTeXN0ZW0uaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ltYWdlLmg+
CkBAIC0xMDQsMTYgKzEwMywxNSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfZmF2aWNvbl9kYXRhYmFz
ZV9jbGFzc19pbml0KFdlYktpdEZhdmljb25EYXRhYmFzZUNsYXNzKiBmYXZpYwogICAgICAqICNX
ZWJLaXRXZWJWaWV3IGl0J3MgZWFzaWVyIHRvIHVzZSB0aGUgI1dlYktpdFdlYlZpZXc6ZmF2aWNv
bgogICAgICAqIHByb3BlcnR5LiBTZWUgd2Via2l0X3dlYl92aWV3X2dldF9mYXZpY29uKCkgZm9y
IG1vcmUgZGV0YWlscy4KICAgICAgKi8KLSAgICBzaWduYWxzW0ZBVklDT05fQ0hBTkdFRF0gPQot
ICAgICAgICBnX3NpZ25hbF9uZXcoCi0gICAgICAgICAgICAiZmF2aWNvbi1jaGFuZ2VkIiwKLSAg
ICAgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKGZhdmljb25EYXRhYmFzZUNsYXNzKSwKLSAgICAg
ICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAotICAgICAgICAgICAgMCwgMCwgMCwKLSAgICAgICAg
ICAgIHdlYmtpdF9tYXJzaGFsX1ZPSURfX1NUUklOR19TVFJJTkcsCi0gICAgICAgICAgICBHX1RZ
UEVfTk9ORSwgMiwKLSAgICAgICAgICAgIEdfVFlQRV9TVFJJTkcsCi0gICAgICAgICAgICBHX1RZ
UEVfU1RSSU5HKTsKKyAgICBzaWduYWxzW0ZBVklDT05fQ0hBTkdFRF0gPSBnX3NpZ25hbF9uZXco
CisgICAgICAgICJmYXZpY29uLWNoYW5nZWQiLAorICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhm
YXZpY29uRGF0YWJhc2VDbGFzcyksCisgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAorICAgICAg
ICAwLCBudWxscHRyLCBudWxscHRyLAorICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfZ2VuZXJp
YywKKyAgICAgICAgR19UWVBFX05PTkUsIDIsCisgICAgICAgIEdfVFlQRV9TVFJJTkcsCisgICAg
ICAgIEdfVFlQRV9TVFJJTkcpOwogfQogCiBzdHJ1Y3QgR2V0RmF2aWNvblN1cmZhY2VBc3luY0Rh
dGEgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
V2ViSW5zcGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktp
dFdlYkluc3BlY3Rvci5jcHAKaW5kZXggYjNhMzA2NzMxMGEuLjVkM2VjZTRkMDQ3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJJbnNwZWN0b3Iu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYkluc3Bl
Y3Rvci5jcHAKQEAgLTIxLDcgKzIxLDYgQEAKICNpbmNsdWRlICJXZWJLaXRXZWJJbnNwZWN0b3Iu
aCIKIAogI2luY2x1ZGUgIldlYkluc3BlY3RvclByb3h5LmgiCi0jaW5jbHVkZSAiV2ViS2l0TWFy
c2hhbC5oIgogI2luY2x1ZGUgIldlYktpdFdlYkluc3BlY3RvclByaXZhdGUuaCIKICNpbmNsdWRl
IDxnbGliL2dpMThuLWxpYi5oPgogI2luY2x1ZGUgPHd0Zi9nbGliL0dSZWZQdHIuaD4KQEAgLTE3
NiwxNCArMTc1LDE0IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfaW5zcGVjdG9yX2NsYXNzX2lu
aXQoV2ViS2l0V2ViSW5zcGVjdG9yQ2xhc3MqIGZpbmRDbGFzcykKICAgICAgKiBSZXR1cm5zOiAl
VFJVRSB0byBzdG9wIG90aGVyIGhhbmRsZXJzIGZyb20gYmVpbmcgaW52b2tlZCBmb3IgdGhlIGV2
ZW50LgogICAgICAqICAgICVGQUxTRSB0byBwcm9wYWdhdGUgdGhlIGV2ZW50IGZ1cnRoZXIuCiAg
ICAgICovCi0gICAgc2lnbmFsc1tPUEVOX1dJTkRPV10gPQotICAgICAgICBnX3NpZ25hbF9uZXco
Im9wZW4td2luZG93IiwKLSAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKGdP
YmplY3RDbGFzcyksCi0gICAgICAgICAgICAgICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKLSAg
ICAgICAgICAgICAgICAgICAgIDAsCi0gICAgICAgICAgICAgICAgICAgICBnX3NpZ25hbF9hY2N1
bXVsYXRvcl90cnVlX2hhbmRsZWQsIDAsCi0gICAgICAgICAgICAgICAgICAgICB3ZWJraXRfbWFy
c2hhbF9CT09MRUFOX19WT0lELAotICAgICAgICAgICAgICAgICAgICAgR19UWVBFX0JPT0xFQU4s
IDApOworICAgIHNpZ25hbHNbT1BFTl9XSU5ET1ddID0gZ19zaWduYWxfbmV3KAorICAgICAgICAi
b3Blbi13aW5kb3ciLAorICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhnT2JqZWN0Q2xhc3MpLAor
ICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgMCwKKyAgICAgICAgZ19zaWduYWxf
YWNjdW11bGF0b3JfdHJ1ZV9oYW5kbGVkLCBudWxscHRyLAorICAgICAgICBnX2NjbG9zdXJlX21h
cnNoYWxfZ2VuZXJpYywKKyAgICAgICAgR19UWVBFX0JPT0xFQU4sIDApOwogCiAgICAgLyoqCiAg
ICAgICogV2ViS2l0V2ViSW5zcGVjdG9yOjpicmluZy10by1mcm9udDoKQEAgLTIwNCwxNCArMjAz
LDE0IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfaW5zcGVjdG9yX2NsYXNzX2luaXQoV2ViS2l0
V2ViSW5zcGVjdG9yQ2xhc3MqIGZpbmRDbGFzcykKICAgICAgKiBSZXR1cm5zOiAlVFJVRSB0byBz
dG9wIG90aGVyIGhhbmRsZXJzIGZyb20gYmVpbmcgaW52b2tlZCBmb3IgdGhlIGV2ZW50LgogICAg
ICAqICAgICVGQUxTRSB0byBwcm9wYWdhdGUgdGhlIGV2ZW50IGZ1cnRoZXIuCiAgICAgICovCi0g
ICAgc2lnbmFsc1tCUklOR19UT19GUk9OVF0gPQotICAgICAgICBnX3NpZ25hbF9uZXcoImJyaW5n
LXRvLWZyb250IiwKLSAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKGdPYmpl
Y3RDbGFzcyksCi0gICAgICAgICAgICAgICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKLSAgICAg
ICAgICAgICAgICAgICAgIDAsCi0gICAgICAgICAgICAgICAgICAgICBnX3NpZ25hbF9hY2N1bXVs
YXRvcl90cnVlX2hhbmRsZWQsIDAsCi0gICAgICAgICAgICAgICAgICAgICB3ZWJraXRfbWFyc2hh
bF9CT09MRUFOX19WT0lELAotICAgICAgICAgICAgICAgICAgICAgR19UWVBFX0JPT0xFQU4sIDAp
OworICAgIHNpZ25hbHNbQlJJTkdfVE9fRlJPTlRdID0gZ19zaWduYWxfbmV3KAorICAgICAgICAi
YnJpbmctdG8tZnJvbnQiLAorICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhnT2JqZWN0Q2xhc3Mp
LAorICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgMCwKKyAgICAgICAgZ19zaWdu
YWxfYWNjdW11bGF0b3JfdHJ1ZV9oYW5kbGVkLCBudWxscHRyLAorICAgICAgICBnX2NjbG9zdXJl
X21hcnNoYWxfZ2VuZXJpYywKKyAgICAgICAgR19UWVBFX0JPT0xFQU4sIDApOwogCiAgICAgLyoq
CiAgICAgICogV2ViS2l0V2ViSW5zcGVjdG9yOjpjbG9zZWQ6CkBAIC0yNDYsMTQgKzI0NSwxNCBA
QCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX2luc3BlY3Rvcl9jbGFzc19pbml0KFdlYktpdFdlYklu
c3BlY3RvckNsYXNzKiBmaW5kQ2xhc3MpCiAgICAgICogUmV0dXJuczogJVRSVUUgdG8gc3RvcCBv
dGhlciBoYW5kbGVycyBmcm9tIGJlaW5nIGludm9rZWQgZm9yIHRoZSBldmVudC4KICAgICAgKiAg
ICAlRkFMU0UgdG8gcHJvcGFnYXRlIHRoZSBldmVudCBmdXJ0aGVyLgogICAgICAqLwotICAgIHNp
Z25hbHNbQVRUQUNIXSA9Ci0gICAgICAgIGdfc2lnbmFsX25ldygiYXR0YWNoIiwKLSAgICAgICAg
ICAgICAgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKGdPYmplY3RDbGFzcyksCi0gICAgICAgICAg
ICAgICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKLSAgICAgICAgICAgICAgICAgICAgIDAsCi0g
ICAgICAgICAgICAgICAgICAgICBnX3NpZ25hbF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQsIDAs
Ci0gICAgICAgICAgICAgICAgICAgICB3ZWJraXRfbWFyc2hhbF9CT09MRUFOX19WT0lELAotICAg
ICAgICAgICAgICAgICAgICAgR19UWVBFX0JPT0xFQU4sIDApOworICAgIHNpZ25hbHNbQVRUQUNI
XSA9IGdfc2lnbmFsX25ldygKKyAgICAgICAgImF0dGFjaCIsCisgICAgICAgIEdfVFlQRV9GUk9N
X0NMQVNTKGdPYmplY3RDbGFzcyksCisgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAorICAgICAg
ICAwLAorICAgICAgICBnX3NpZ25hbF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQsIG51bGxwdHIs
CisgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5lcmljLAorICAgICAgICBHX1RZUEVfQk9P
TEVBTiwgMCk7CiAKICAgICAvKioKICAgICAgKiBXZWJLaXRXZWJJbnNwZWN0b3I6OmRldGFjaDoK
QEAgLTI3MiwxNCArMjcxLDE0IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfaW5zcGVjdG9yX2Ns
YXNzX2luaXQoV2ViS2l0V2ViSW5zcGVjdG9yQ2xhc3MqIGZpbmRDbGFzcykKICAgICAgKiBSZXR1
cm5zOiAlVFJVRSB0byBzdG9wIG90aGVyIGhhbmRsZXJzIGZyb20gYmVpbmcgaW52b2tlZCBmb3Ig
dGhlIGV2ZW50LgogICAgICAqICAgICVGQUxTRSB0byBwcm9wYWdhdGUgdGhlIGV2ZW50IGZ1cnRo
ZXIuCiAgICAgICovCi0gICAgc2lnbmFsc1tERVRBQ0hdID0KLSAgICAgICAgZ19zaWduYWxfbmV3
KCJkZXRhY2giLAotICAgICAgICAgICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1MoZ09iamVj
dENsYXNzKSwKLSAgICAgICAgICAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAotICAgICAg
ICAgICAgICAgICAgICAgMCwKLSAgICAgICAgICAgICAgICAgICAgIGdfc2lnbmFsX2FjY3VtdWxh
dG9yX3RydWVfaGFuZGxlZCwgMCwKLSAgICAgICAgICAgICAgICAgICAgIHdlYmtpdF9tYXJzaGFs
X0JPT0xFQU5fX1ZPSUQsCi0gICAgICAgICAgICAgICAgICAgICBHX1RZUEVfQk9PTEVBTiwgMCk7
CisgICAgc2lnbmFsc1tERVRBQ0hdID0gZ19zaWduYWxfbmV3KAorICAgICAgICAiZGV0YWNoIiwK
KyAgICAgICAgR19UWVBFX0ZST01fQ0xBU1MoZ09iamVjdENsYXNzKSwKKyAgICAgICAgR19TSUdO
QUxfUlVOX0xBU1QsCisgICAgICAgIDAsCisgICAgICAgIGdfc2lnbmFsX2FjY3VtdWxhdG9yX3Ry
dWVfaGFuZGxlZCwgbnVsbHB0ciwKKyAgICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX2dlbmVyaWMs
CisgICAgICAgIEdfVFlQRV9CT09MRUFOLCAwKTsKIH0KIAogc3RhdGljIGJvb2wgb3BlbldpbmRv
dyhXS0luc3BlY3RvclJlZiwgY29uc3Qgdm9pZCogY2xpZW50SW5mbykKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlJlc291cmNlLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlJlc291cmNlLmNwcAppbmRl
eCA3ZGJkODA0YWRjZi4uNjJkODZlYmZmMGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJSZXNvdXJjZS5jcHAKQEAgLTIyLDcgKzIyLDYg
QEAKIAogI2luY2x1ZGUgIkFQSURhdGEuaCIKICNpbmNsdWRlICJXZWJGcmFtZVByb3h5LmgiCi0j
aW5jbHVkZSAiV2ViS2l0TWFyc2hhbC5oIgogI2luY2x1ZGUgIldlYktpdFVSSVJlcXVlc3QuaCIK
ICNpbmNsdWRlICJXZWJLaXRXZWJSZXNvdXJjZVByaXZhdGUuaCIKICNpbmNsdWRlIDxnbGliL2dp
MThuLWxpYi5oPgpAQCAtMTM4LDE1ICsxMzcsMTUgQEAgc3RhdGljIHZvaWQgd2Via2l0X3dlYl9y
ZXNvdXJjZV9jbGFzc19pbml0KFdlYktpdFdlYlJlc291cmNlQ2xhc3MqIHJlc291cmNlQ2xhc3MK
ICAgICAgKiBAcmVkaXJlY3RlZF9yZXNwb25zZSBwYXJhbWV0ZXIgY29udGFpbmluZyB0aGUgcmVz
cG9uc2UKICAgICAgKiByZWNlaXZlZCBieSB0aGUgc2VydmVyIGZvciB0aGUgaW5pdGlhbCByZXF1
ZXN0LgogICAgICAqLwotICAgIHNpZ25hbHNbU0VOVF9SRVFVRVNUXSA9Ci0gICAgICAgIGdfc2ln
bmFsX25ldygic2VudC1yZXF1ZXN0IiwKLSAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9GUk9N
X0NMQVNTKG9iamVjdENsYXNzKSwKLSAgICAgICAgICAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9M
QVNULAotICAgICAgICAgICAgICAgICAgICAgMCwgMCwgMCwKLSAgICAgICAgICAgICAgICAgICAg
IHdlYmtpdF9tYXJzaGFsX1ZPSURfX09CSkVDVF9PQkpFQ1QsCi0gICAgICAgICAgICAgICAgICAg
ICBHX1RZUEVfTk9ORSwgMiwKLSAgICAgICAgICAgICAgICAgICAgIFdFQktJVF9UWVBFX1VSSV9S
RVFVRVNULAotICAgICAgICAgICAgICAgICAgICAgV0VCS0lUX1RZUEVfVVJJX1JFU1BPTlNFKTsK
KyAgICBzaWduYWxzW1NFTlRfUkVRVUVTVF0gPSBnX3NpZ25hbF9uZXcoCisgICAgICAgICJzZW50
LXJlcXVlc3QiLAorICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhvYmplY3RDbGFzcyksCisgICAg
ICAgIEdfU0lHTkFMX1JVTl9MQVNULAorICAgICAgICAwLCBudWxscHRyLCBudWxscHRyLAorICAg
ICAgICBnX2NjbG9zdXJlX21hcnNoYWxfZ2VuZXJpYywKKyAgICAgICAgR19UWVBFX05PTkUsIDIs
CisgICAgICAgIFdFQktJVF9UWVBFX1VSSV9SRVFVRVNULAorICAgICAgICBXRUJLSVRfVFlQRV9V
UklfUkVTUE9OU0UpOwogCiAgICAgLyoqCiAgICAgICogV2ViS2l0V2ViUmVzb3VyY2U6OnJlY2Vp
dmVkLWRhdGE6CkBAIC0xNTcsMTQgKzE1NiwxNCBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3Jl
c291cmNlX2NsYXNzX2luaXQoV2ViS2l0V2ViUmVzb3VyY2VDbGFzcyogcmVzb3VyY2VDbGFzcwog
ICAgICAqIGV2ZXJ5IHRpbWUgbmV3IGRhdGEgaGFzIGJlZW4gcmVjZWl2ZWQuIEl0J3MKICAgICAg
KiB1c2VmdWwgdG8ga25vdyB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHJlc291cmNlIGxvYWQgb3BlcmF0
aW9uLgogICAgICAqLwotICAgIHNpZ25hbHNbUkVDRUlWRURfREFUQV0gPQotICAgICAgICBnX3Np
Z25hbF9uZXcoInJlY2VpdmVkLWRhdGEiLAotICAgICAgICAgICAgICAgICAgICAgR19UWVBFX0ZS
T01fQ0xBU1Mob2JqZWN0Q2xhc3MpLAotICAgICAgICAgICAgICAgICAgICAgR19TSUdOQUxfUlVO
X0xBU1QsCi0gICAgICAgICAgICAgICAgICAgICAwLCAwLCAwLAotICAgICAgICAgICAgICAgICAg
ICAgd2Via2l0X21hcnNoYWxfVk9JRF9fVUlOVDY0LAotICAgICAgICAgICAgICAgICAgICAgR19U
WVBFX05PTkUsIDEsCi0gICAgICAgICAgICAgICAgICAgICBHX1RZUEVfVUlOVDY0KTsKKyAgICBz
aWduYWxzW1JFQ0VJVkVEX0RBVEFdID0gZ19zaWduYWxfbmV3KAorICAgICAgICAicmVjZWl2ZWQt
ZGF0YSIsCisgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKG9iamVjdENsYXNzKSwKKyAgICAgICAg
R19TSUdOQUxfUlVOX0xBU1QsCisgICAgICAgIDAsIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAg
IGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5lcmljLAorICAgICAgICBHX1RZUEVfTk9ORSwgMSwKKyAg
ICAgICAgR19UWVBFX1VJTlQ2NCk7CiAKICAgICAvKioKICAgICAgKiBXZWJLaXRXZWJSZXNvdXJj
ZTo6ZmluaXNoZWQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0
ay9XZWJLaXRXZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dl
YktpdFdlYlZpZXcuY3BwCmluZGV4IGM4YjE4NzIxMTQ0Li5mNWQzYjI5M2VjMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKQEAg
LTQ1LDcgKzQ1LDYgQEAKICNpbmNsdWRlICJXZWJLaXRJbnN0YWxsTWlzc2luZ01lZGlhUGx1Z2lu
c1Blcm1pc3Npb25SZXF1ZXN0UHJpdmF0ZS5oIgogI2luY2x1ZGUgIldlYktpdEphdmFzY3JpcHRS
ZXN1bHRQcml2YXRlLmgiCiAjaW5jbHVkZSAiV2ViS2l0TG9hZGVyQ2xpZW50LmgiCi0jaW5jbHVk
ZSAiV2ViS2l0TWFyc2hhbC5oIgogI2luY2x1ZGUgIldlYktpdE5vdGlmaWNhdGlvblByaXZhdGUu
aCIKICNpbmNsdWRlICJXZWJLaXRQb2xpY3lDbGllbnQuaCIKICNpbmNsdWRlICJXZWJLaXRQcmlu
dE9wZXJhdGlvblByaXZhdGUuaCIKQEAgLTEzNDYsMTUgKzEzNDUsMTUgQEAgc3RhdGljIHZvaWQg
d2Via2l0X3dlYl92aWV3X2NsYXNzX2luaXQoV2ViS2l0V2ViVmlld0NsYXNzKiB3ZWJWaWV3Q2xh
c3MpCiAgICAgICogUmV0dXJuczogJVRSVUUgdG8gc3RvcCBvdGhlciBoYW5kbGVycyBmcm9tIGJl
aW5nIGludm9rZWQgZm9yIHRoZSBldmVudC4KICAgICAgKiAgICAlRkFMU0UgdG8gcHJvcGFnYXRl
IHRoZSBldmVudCBmdXJ0aGVyLgogICAgICAqLwotICAgIHNpZ25hbHNbU0NSSVBUX0RJQUxPR10g
PQotICAgICAgICBnX3NpZ25hbF9uZXcoInNjcmlwdC1kaWFsb2ciLAotICAgICAgICAgICAgICAg
ICAgICAgR19UWVBFX0ZST01fQ0xBU1Mod2ViVmlld0NsYXNzKSwKLSAgICAgICAgICAgICAgICAg
ICAgIEdfU0lHTkFMX1JVTl9MQVNULAotICAgICAgICAgICAgICAgICAgICAgR19TVFJVQ1RfT0ZG
U0VUKFdlYktpdFdlYlZpZXdDbGFzcywgc2NyaXB0X2RpYWxvZyksCi0gICAgICAgICAgICAgICAg
ICAgICBnX3NpZ25hbF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQsIDAsCi0gICAgICAgICAgICAg
ICAgICAgICB3ZWJraXRfbWFyc2hhbF9CT09MRUFOX19CT1hFRCwKLSAgICAgICAgICAgICAgICAg
ICAgIEdfVFlQRV9CT09MRUFOLCAxLAotICAgICAgICAgICAgICAgICAgICAgV0VCS0lUX1RZUEVf
U0NSSVBUX0RJQUxPRyB8IEdfU0lHTkFMX1RZUEVfU1RBVElDX1NDT1BFKTsKKyAgICBzaWduYWxz
W1NDUklQVF9ESUFMT0ddID0gZ19zaWduYWxfbmV3KAorICAgICAgICAic2NyaXB0LWRpYWxvZyIs
CisgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKHdlYlZpZXdDbGFzcyksCisgICAgICAgIEdfU0lH
TkFMX1JVTl9MQVNULAorICAgICAgICBHX1NUUlVDVF9PRkZTRVQoV2ViS2l0V2ViVmlld0NsYXNz
LCBzY3JpcHRfZGlhbG9nKSwKKyAgICAgICAgZ19zaWduYWxfYWNjdW11bGF0b3JfdHJ1ZV9oYW5k
bGVkLCBudWxscHRyLAorICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfZ2VuZXJpYywKKyAgICAg
ICAgR19UWVBFX0JPT0xFQU4sIDEsCisgICAgICAgIFdFQktJVF9UWVBFX1NDUklQVF9ESUFMT0cg
fCBHX1NJR05BTF9UWVBFX1NUQVRJQ19TQ09QRSk7CiAKICAgICAvKioKICAgICAgKiBXZWJLaXRX
ZWJWaWV3OjpkZWNpZGUtcG9saWN5OgpAQCAtMTQwNiwxNiArMTQwNSwxNiBAQCBzdGF0aWMgdm9p
ZCB3ZWJraXRfd2ViX3ZpZXdfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZpZXdD
bGFzcykKICAgICAgKiAgICVGQUxTRSB0byBwcm9wYWdhdGUgdGhlIGV2ZW50IGZ1cnRoZXIuCiAg
ICAgICoKICAgICAgKi8KLSAgICBzaWduYWxzW0RFQ0lERV9QT0xJQ1ldID0KLSAgICAgICAgZ19z
aWduYWxfbmV3KCJkZWNpZGUtcG9saWN5IiwKLSAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9G
Uk9NX0NMQVNTKHdlYlZpZXdDbGFzcyksCi0gICAgICAgICAgICAgICAgICAgICBHX1NJR05BTF9S
VU5fTEFTVCwKLSAgICAgICAgICAgICAgICAgICAgIEdfU1RSVUNUX09GRlNFVChXZWJLaXRXZWJW
aWV3Q2xhc3MsIGRlY2lkZV9wb2xpY3kpLAotICAgICAgICAgICAgICAgICAgICAgZ19zaWduYWxf
YWNjdW11bGF0b3JfdHJ1ZV9oYW5kbGVkLCAwIC8qIGFjY3VtdWxhdG9yIGRhdGEgKi8sCi0gICAg
ICAgICAgICAgICAgICAgICB3ZWJraXRfbWFyc2hhbF9CT09MRUFOX19PQkpFQ1RfRU5VTSwKLSAg
ICAgICAgICAgICAgICAgICAgIEdfVFlQRV9CT09MRUFOLCAyLCAvKiBudW1iZXIgb2YgcGFyYW1l
dGVycyAqLwotICAgICAgICAgICAgICAgICAgICAgV0VCS0lUX1RZUEVfUE9MSUNZX0RFQ0lTSU9O
LAotICAgICAgICAgICAgICAgICAgICAgV0VCS0lUX1RZUEVfUE9MSUNZX0RFQ0lTSU9OX1RZUEUp
OworICAgIHNpZ25hbHNbREVDSURFX1BPTElDWV0gPSBnX3NpZ25hbF9uZXcoCisgICAgICAgICJk
ZWNpZGUtcG9saWN5IiwKKyAgICAgICAgR19UWVBFX0ZST01fQ0xBU1Mod2ViVmlld0NsYXNzKSwK
KyAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCisgICAgICAgIEdfU1RSVUNUX09GRlNFVChXZWJL
aXRXZWJWaWV3Q2xhc3MsIGRlY2lkZV9wb2xpY3kpLAorICAgICAgICBnX3NpZ25hbF9hY2N1bXVs
YXRvcl90cnVlX2hhbmRsZWQsIG51bGxwdHIgLyogYWNjdW11bGF0b3IgZGF0YSAqLywKKyAgICAg
ICAgZ19jY2xvc3VyZV9tYXJzaGFsX2dlbmVyaWMsCisgICAgICAgIEdfVFlQRV9CT09MRUFOLCAy
LCAvKiBudW1iZXIgb2YgcGFyYW1ldGVycyAqLworICAgICAgICBXRUJLSVRfVFlQRV9QT0xJQ1lf
REVDSVNJT04sCisgICAgICAgIFdFQktJVF9UWVBFX1BPTElDWV9ERUNJU0lPTl9UWVBFKTsKIAog
ICAgIC8qKgogICAgICAqIFdlYktpdFdlYlZpZXc6OnBlcm1pc3Npb24tcmVxdWVzdDoKQEAgLTE0
NzMsMTUgKzE0NzIsMTUgQEAgc3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3X2NsYXNzX2luaXQo
V2ViS2l0V2ViVmlld0NsYXNzKiB3ZWJWaWV3Q2xhc3MpCiAgICAgICogICAlRkFMU0UgdG8gcHJv
cGFnYXRlIHRoZSBldmVudCBmdXJ0aGVyLgogICAgICAqCiAgICAgICovCi0gICAgc2lnbmFsc1tQ
RVJNSVNTSU9OX1JFUVVFU1RdID0KLSAgICAgICAgZ19zaWduYWxfbmV3KCJwZXJtaXNzaW9uLXJl
cXVlc3QiLAotICAgICAgICAgICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1Mod2ViVmlld0Ns
YXNzKSwKLSAgICAgICAgICAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAotICAgICAgICAg
ICAgICAgICAgICAgR19TVFJVQ1RfT0ZGU0VUKFdlYktpdFdlYlZpZXdDbGFzcywgcGVybWlzc2lv
bl9yZXF1ZXN0KSwKLSAgICAgICAgICAgICAgICAgICAgIGdfc2lnbmFsX2FjY3VtdWxhdG9yX3Ry
dWVfaGFuZGxlZCwgMCAvKiBhY2N1bXVsYXRvciBkYXRhICovLAotICAgICAgICAgICAgICAgICAg
ICAgd2Via2l0X21hcnNoYWxfQk9PTEVBTl9fT0JKRUNULAotICAgICAgICAgICAgICAgICAgICAg
R19UWVBFX0JPT0xFQU4sIDEsIC8qIG51bWJlciBvZiBwYXJhbWV0ZXJzICovCi0gICAgICAgICAg
ICAgICAgICAgICBXRUJLSVRfVFlQRV9QRVJNSVNTSU9OX1JFUVVFU1QpOworICAgIHNpZ25hbHNb
UEVSTUlTU0lPTl9SRVFVRVNUXSA9IGdfc2lnbmFsX25ldygKKyAgICAgICAgInBlcm1pc3Npb24t
cmVxdWVzdCIsCisgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKHdlYlZpZXdDbGFzcyksCisgICAg
ICAgIEdfU0lHTkFMX1JVTl9MQVNULAorICAgICAgICBHX1NUUlVDVF9PRkZTRVQoV2ViS2l0V2Vi
Vmlld0NsYXNzLCBwZXJtaXNzaW9uX3JlcXVlc3QpLAorICAgICAgICBnX3NpZ25hbF9hY2N1bXVs
YXRvcl90cnVlX2hhbmRsZWQsIG51bGxwdHIgLyogYWNjdW11bGF0b3IgZGF0YSAqLywKKyAgICAg
ICAgZ19jY2xvc3VyZV9tYXJzaGFsX2dlbmVyaWMsCisgICAgICAgIEdfVFlQRV9CT09MRUFOLCAx
LCAvKiBudW1iZXIgb2YgcGFyYW1ldGVycyAqLworICAgICAgICBXRUJLSVRfVFlQRV9QRVJNSVNT
SU9OX1JFUVVFU1QpOwogICAgIC8qKgogICAgICAqIFdlYktpdFdlYlZpZXc6Om1vdXNlLXRhcmdl
dC1jaGFuZ2VkOgogICAgICAqIEB3ZWJfdmlldzogdGhlICNXZWJLaXRXZWJWaWV3IG9uIHdoaWNo
IHRoZSBzaWduYWwgaXMgZW1pdHRlZApAQCAtMTQ5NywxNiArMTQ5NiwxNyBAQCBzdGF0aWMgdm9p
ZCB3ZWJraXRfd2ViX3ZpZXdfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZpZXdD
bGFzcykKICAgICAgKiBUaGUgc2lnbmFsIGlzIGVtaXR0ZWQgYWdhaW4gd2hlbiB0aGUgbW91c2Ug
aXMgbW92ZWQgb3V0IG9mIHRoZQogICAgICAqIGN1cnJlbnQgZWxlbWVudCB3aXRoIGEgbmV3IEBo
aXRfdGVzdF9yZXN1bHQuCiAgICAgICovCi0gICAgIHNpZ25hbHNbTU9VU0VfVEFSR0VUX0NIQU5H
RURdID0KLSAgICAgICAgIGdfc2lnbmFsX25ldygibW91c2UtdGFyZ2V0LWNoYW5nZWQiLAotICAg
ICAgICAgICAgICAgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKHdlYlZpZXdDbGFzcyksCi0gICAg
ICAgICAgICAgICAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCi0gICAgICAgICAgICAgICAgICAg
ICAgR19TVFJVQ1RfT0ZGU0VUKFdlYktpdFdlYlZpZXdDbGFzcywgbW91c2VfdGFyZ2V0X2NoYW5n
ZWQpLAotICAgICAgICAgICAgICAgICAgICAgIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICAg
d2Via2l0X21hcnNoYWxfVk9JRF9fT0JKRUNUX1VJTlQsCi0gICAgICAgICAgICAgICAgICAgICAg
R19UWVBFX05PTkUsIDIsCi0gICAgICAgICAgICAgICAgICAgICAgV0VCS0lUX1RZUEVfSElUX1RF
U1RfUkVTVUxULAotICAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9VSU5UKTsKKyAgICBzaWdu
YWxzW01PVVNFX1RBUkdFVF9DSEFOR0VEXSA9IGdfc2lnbmFsX25ldygKKyAgICAgICAgIm1vdXNl
LXRhcmdldC1jaGFuZ2VkIiwKKyAgICAgICAgR19UWVBFX0ZST01fQ0xBU1Mod2ViVmlld0NsYXNz
KSwKKyAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCisgICAgICAgIEdfU1RSVUNUX09GRlNFVChX
ZWJLaXRXZWJWaWV3Q2xhc3MsIG1vdXNlX3RhcmdldF9jaGFuZ2VkKSwKKyAgICAgICAgbnVsbHB0
ciwgbnVsbHB0ciwKKyAgICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX2dlbmVyaWMsCisgICAgICAg
IEdfVFlQRV9OT05FLCAyLAorICAgICAgICBXRUJLSVRfVFlQRV9ISVRfVEVTVF9SRVNVTFQsCisg
ICAgICAgIEdfVFlQRV9VSU5UKTsKKwogICAgIC8qKgogICAgICAqIFdlYktpdFdlYlZpZXc6OnBy
aW50OgogICAgICAqIEB3ZWJfdmlldzogdGhlICNXZWJLaXRXZWJWaWV3IG9uIHdoaWNoIHRoZSBz
aWduYWwgaXMgZW1pdHRlZApAQCAtMTUyNSwxNSArMTUyNSwxNSBAQCBzdGF0aWMgdm9pZCB3ZWJr
aXRfd2ViX3ZpZXdfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZpZXdDbGFzcykK
ICAgICAgKiBSZXR1cm5zOiAlVFJVRSB0byBzdG9wIG90aGVyIGhhbmRsZXJzIGZyb20gYmVpbmcg
aW52b2tlZCBmb3IgdGhlIGV2ZW50LgogICAgICAqICAgICVGQUxTRSB0byBwcm9wYWdhdGUgdGhl
IGV2ZW50IGZ1cnRoZXIuCiAgICAgICovCi0gICAgc2lnbmFsc1tQUklOVF0gPQotICAgICAgICBn
X3NpZ25hbF9uZXcoInByaW50IiwKLSAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9GUk9NX0NM
QVNTKHdlYlZpZXdDbGFzcyksCi0gICAgICAgICAgICAgICAgICAgICBHX1NJR05BTF9SVU5fTEFT
VCwKLSAgICAgICAgICAgICAgICAgICAgIEdfU1RSVUNUX09GRlNFVChXZWJLaXRXZWJWaWV3Q2xh
c3MsIHByaW50KSwKLSAgICAgICAgICAgICAgICAgICAgIGdfc2lnbmFsX2FjY3VtdWxhdG9yX3Ry
dWVfaGFuZGxlZCwgMCwKLSAgICAgICAgICAgICAgICAgICAgIHdlYmtpdF9tYXJzaGFsX0JPT0xF
QU5fX09CSkVDVCwKLSAgICAgICAgICAgICAgICAgICAgIEdfVFlQRV9CT09MRUFOLCAxLAotICAg
ICAgICAgICAgICAgICAgICAgV0VCS0lUX1RZUEVfUFJJTlRfT1BFUkFUSU9OKTsKKyAgICBzaWdu
YWxzW1BSSU5UXSA9IGdfc2lnbmFsX25ldygKKyAgICAgICAgInByaW50IiwKKyAgICAgICAgR19U
WVBFX0ZST01fQ0xBU1Mod2ViVmlld0NsYXNzKSwKKyAgICAgICAgR19TSUdOQUxfUlVOX0xBU1Qs
CisgICAgICAgIEdfU1RSVUNUX09GRlNFVChXZWJLaXRXZWJWaWV3Q2xhc3MsIHByaW50KSwKKyAg
ICAgICAgZ19zaWduYWxfYWNjdW11bGF0b3JfdHJ1ZV9oYW5kbGVkLCBudWxscHRyLAorICAgICAg
ICBnX2NjbG9zdXJlX21hcnNoYWxfZ2VuZXJpYywKKyAgICAgICAgR19UWVBFX0JPT0xFQU4sIDEs
CisgICAgICAgIFdFQktJVF9UWVBFX1BSSU5UX09QRVJBVElPTik7CiAKICAgICAvKioKICAgICAg
KiBXZWJLaXRXZWJWaWV3OjpyZXNvdXJjZS1sb2FkLXN0YXJ0ZWQ6CkBAIC0xNTQ2LDE1ICsxNTQ2
LDE1IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfdmlld19jbGFzc19pbml0KFdlYktpdFdlYlZp
ZXdDbGFzcyogd2ViVmlld0NsYXNzKQogICAgICAqIFlvdSBjYW4gbW9uaXRvciB0aGUgbG9hZCBv
cGVyYXRpb24gYnkgY29ubmVjdGluZyB0byB0aGUgZGlmZmVyZW50IHNpZ25hbHMKICAgICAgKiBv
ZiBAcmVzb3VyY2UuCiAgICAgICovCi0gICAgc2lnbmFsc1tSRVNPVVJDRV9MT0FEX1NUQVJURURd
ID0KLSAgICAgICAgZ19zaWduYWxfbmV3KCJyZXNvdXJjZS1sb2FkLXN0YXJ0ZWQiLAotICAgICAg
ICAgICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1Mod2ViVmlld0NsYXNzKSwKLSAgICAgICAg
ICAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAotICAgICAgICAgICAgICAgICAgICAgR19T
VFJVQ1RfT0ZGU0VUKFdlYktpdFdlYlZpZXdDbGFzcywgcmVzb3VyY2VfbG9hZF9zdGFydGVkKSwK
LSAgICAgICAgICAgICAgICAgICAgIDAsIDAsCi0gICAgICAgICAgICAgICAgICAgICB3ZWJraXRf
bWFyc2hhbF9WT0lEX19PQkpFQ1RfT0JKRUNULAotICAgICAgICAgICAgICAgICAgICAgR19UWVBF
X05PTkUsIDIsCi0gICAgICAgICAgICAgICAgICAgICBXRUJLSVRfVFlQRV9XRUJfUkVTT1VSQ0Us
CisgICAgc2lnbmFsc1tSRVNPVVJDRV9MT0FEX1NUQVJURURdID0gZ19zaWduYWxfbmV3KAorICAg
ICAgICAicmVzb3VyY2UtbG9hZC1zdGFydGVkIiwKKyAgICAgICAgR19UWVBFX0ZST01fQ0xBU1Mo
d2ViVmlld0NsYXNzKSwKKyAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCisgICAgICAgIEdfU1RS
VUNUX09GRlNFVChXZWJLaXRXZWJWaWV3Q2xhc3MsIHJlc291cmNlX2xvYWRfc3RhcnRlZCksCisg
ICAgICAgIG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5l
cmljLAorICAgICAgICBHX1RZUEVfTk9ORSwgMiwKKyAgICAgICAgV0VCS0lUX1RZUEVfV0VCX1JF
U09VUkNFLAogICAgICAgICAgICAgICAgICAgICAgV0VCS0lUX1RZUEVfVVJJX1JFUVVFU1QpOwog
CiAgICAgLyoqCkBAIC0xNTczLDE0ICsxNTczLDE0IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJf
dmlld19jbGFzc19pbml0KFdlYktpdFdlYlZpZXdDbGFzcyogd2ViVmlld0NsYXNzKQogICAgICAq
IFJldHVybnM6ICVUUlVFIHRvIHN0b3Agb3RoZXIgaGFuZGxlcnMgZnJvbSBiZWluZyBpbnZva2Vk
IGZvciB0aGUgZXZlbnQuCiAgICAgICogICAgJUZBTFNFIHRvIGNvbnRpbnVlIGVtaXNzaW9uIG9m
IHRoZSBldmVudC4KICAgICAgKi8KLSAgICBzaWduYWxzW0VOVEVSX0ZVTExTQ1JFRU5dID0KLSAg
ICAgICAgZ19zaWduYWxfbmV3KCJlbnRlci1mdWxsc2NyZWVuIiwKLSAgICAgICAgICAgICAgICAg
ICAgIEdfVFlQRV9GUk9NX0NMQVNTKHdlYlZpZXdDbGFzcyksCi0gICAgICAgICAgICAgICAgICAg
ICBHX1NJR05BTF9SVU5fTEFTVCwKLSAgICAgICAgICAgICAgICAgICAgIEdfU1RSVUNUX09GRlNF
VChXZWJLaXRXZWJWaWV3Q2xhc3MsIGVudGVyX2Z1bGxzY3JlZW4pLAotICAgICAgICAgICAgICAg
ICAgICAgZ19zaWduYWxfYWNjdW11bGF0b3JfdHJ1ZV9oYW5kbGVkLCAwLAotICAgICAgICAgICAg
ICAgICAgICAgd2Via2l0X21hcnNoYWxfQk9PTEVBTl9fVk9JRCwKLSAgICAgICAgICAgICAgICAg
ICAgIEdfVFlQRV9CT09MRUFOLCAwKTsKKyAgICBzaWduYWxzW0VOVEVSX0ZVTExTQ1JFRU5dID0g
Z19zaWduYWxfbmV3KAorICAgICAgICAiZW50ZXItZnVsbHNjcmVlbiIsCisgICAgICAgIEdfVFlQ
RV9GUk9NX0NMQVNTKHdlYlZpZXdDbGFzcyksCisgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAor
ICAgICAgICBHX1NUUlVDVF9PRkZTRVQoV2ViS2l0V2ViVmlld0NsYXNzLCBlbnRlcl9mdWxsc2Ny
ZWVuKSwKKyAgICAgICAgZ19zaWduYWxfYWNjdW11bGF0b3JfdHJ1ZV9oYW5kbGVkLCBudWxscHRy
LAorICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfZ2VuZXJpYywKKyAgICAgICAgR19UWVBFX0JP
T0xFQU4sIDApOwogCiAgICAgLyoqCiAgICAgICogV2ViS2l0V2ViVmlldzo6bGVhdmUtZnVsbHNj
cmVlbjoKQEAgLTE1OTQsMTQgKzE1OTQsMTUgQEAgc3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3
X2NsYXNzX2luaXQoV2ViS2l0V2ViVmlld0NsYXNzKiB3ZWJWaWV3Q2xhc3MpCiAgICAgICogUmV0
dXJuczogJVRSVUUgdG8gc3RvcCBvdGhlciBoYW5kbGVycyBmcm9tIGJlaW5nIGludm9rZWQgZm9y
IHRoZSBldmVudC4KICAgICAgKiAgICAlRkFMU0UgdG8gY29udGludWUgZW1pc3Npb24gb2YgdGhl
IGV2ZW50LgogICAgICAqLwotICAgIHNpZ25hbHNbTEVBVkVfRlVMTFNDUkVFTl0gPQotICAgICAg
ICBnX3NpZ25hbF9uZXcoImxlYXZlLWZ1bGxzY3JlZW4iLAotICAgICAgICAgICAgICAgICAgICAg
R19UWVBFX0ZST01fQ0xBU1Mod2ViVmlld0NsYXNzKSwKLSAgICAgICAgICAgICAgICAgICAgIEdf
U0lHTkFMX1JVTl9MQVNULAotICAgICAgICAgICAgICAgICAgICAgR19TVFJVQ1RfT0ZGU0VUKFdl
YktpdFdlYlZpZXdDbGFzcywgbGVhdmVfZnVsbHNjcmVlbiksCi0gICAgICAgICAgICAgICAgICAg
ICBnX3NpZ25hbF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQsIDAsCi0gICAgICAgICAgICAgICAg
ICAgICB3ZWJraXRfbWFyc2hhbF9CT09MRUFOX19WT0lELAotICAgICAgICAgICAgICAgICAgICAg
R19UWVBFX0JPT0xFQU4sIDApOworICAgIHNpZ25hbHNbTEVBVkVfRlVMTFNDUkVFTl0gPSBnX3Np
Z25hbF9uZXcoCisgICAgICAgICJsZWF2ZS1mdWxsc2NyZWVuIiwKKyAgICAgICAgR19UWVBFX0ZS
T01fQ0xBU1Mod2ViVmlld0NsYXNzKSwKKyAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCisgICAg
ICAgIEdfU1RSVUNUX09GRlNFVChXZWJLaXRXZWJWaWV3Q2xhc3MsIGxlYXZlX2Z1bGxzY3JlZW4p
LAorICAgICAgICBnX3NpZ25hbF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQsIG51bGxwdHIsCisg
ICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5lcmljLAorICAgICAgICBHX1RZUEVfQk9PTEVB
TiwgMCk7CisKICAgICAgLyoqCiAgICAgICogV2ViS2l0V2ViVmlldzo6cnVuLWZpbGUtY2hvb3Nl
cjoKICAgICAgKiBAd2ViX3ZpZXc6IHRoZSAjV2ViS2l0V2ViVmlldyBvbiB3aGljaCB0aGUgc2ln
bmFsIGlzIGVtaXR0ZWQKQEAgLTE2MjMsMTUgKzE2MjQsMTUgQEAgc3RhdGljIHZvaWQgd2Via2l0
X3dlYl92aWV3X2NsYXNzX2luaXQoV2ViS2l0V2ViVmlld0NsYXNzKiB3ZWJWaWV3Q2xhc3MpCiAg
ICAgICogICAlRkFMU0UgdG8gcHJvcGFnYXRlIHRoZSBldmVudCBmdXJ0aGVyLgogICAgICAqCiAg
ICAgICovCi0gICAgc2lnbmFsc1tSVU5fRklMRV9DSE9PU0VSXSA9Ci0gICAgICAgIGdfc2lnbmFs
X25ldygicnVuLWZpbGUtY2hvb3NlciIsCi0gICAgICAgICAgICAgICAgICAgICBHX1RZUEVfRlJP
TV9DTEFTUyh3ZWJWaWV3Q2xhc3MpLAotICAgICAgICAgICAgICAgICAgICAgR19TSUdOQUxfUlVO
X0xBU1QsCi0gICAgICAgICAgICAgICAgICAgICBHX1NUUlVDVF9PRkZTRVQoV2ViS2l0V2ViVmll
d0NsYXNzLCBydW5fZmlsZV9jaG9vc2VyKSwKLSAgICAgICAgICAgICAgICAgICAgIGdfc2lnbmFs
X2FjY3VtdWxhdG9yX3RydWVfaGFuZGxlZCwgMCAvKiBhY2N1bXVsYXRvciBkYXRhICovLAotICAg
ICAgICAgICAgICAgICAgICAgd2Via2l0X21hcnNoYWxfQk9PTEVBTl9fT0JKRUNULAotICAgICAg
ICAgICAgICAgICAgICAgR19UWVBFX0JPT0xFQU4sIDEsIC8qIG51bWJlciBvZiBwYXJhbWV0ZXJz
ICovCi0gICAgICAgICAgICAgICAgICAgICBXRUJLSVRfVFlQRV9GSUxFX0NIT09TRVJfUkVRVUVT
VCk7CisgICAgc2lnbmFsc1tSVU5fRklMRV9DSE9PU0VSXSA9IGdfc2lnbmFsX25ldygKKyAgICAg
ICAgInJ1bi1maWxlLWNob29zZXIiLAorICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyh3ZWJWaWV3
Q2xhc3MpLAorICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAgICAgR19TVFJVQ1RfT0ZG
U0VUKFdlYktpdFdlYlZpZXdDbGFzcywgcnVuX2ZpbGVfY2hvb3NlciksCisgICAgICAgIGdfc2ln
bmFsX2FjY3VtdWxhdG9yX3RydWVfaGFuZGxlZCwgbnVsbHB0ciAvKiBhY2N1bXVsYXRvciBkYXRh
ICovLAorICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfZ2VuZXJpYywKKyAgICAgICAgR19UWVBF
X0JPT0xFQU4sIDEsIC8qIG51bWJlciBvZiBwYXJhbWV0ZXJzICovCisgICAgICAgIFdFQktJVF9U
WVBFX0ZJTEVfQ0hPT1NFUl9SRVFVRVNUKTsKIAogICAgIC8qKgogICAgICAqIFdlYktpdFdlYlZp
ZXc6OmNvbnRleHQtbWVudToKQEAgLTE2OTMsMTcgKzE2OTQsMTcgQEAgc3RhdGljIHZvaWQgd2Vi
a2l0X3dlYl92aWV3X2NsYXNzX2luaXQoV2ViS2l0V2ViVmlld0NsYXNzKiB3ZWJWaWV3Q2xhc3Mp
CiAgICAgICogUmV0dXJuczogJVRSVUUgdG8gc3RvcCBvdGhlciBoYW5kbGVycyBmcm9tIGJlaW5n
IGludm9rZWQgZm9yIHRoZSBldmVudC4KICAgICAgKiAgICAlRkFMU0UgdG8gcHJvcGFnYXRlIHRo
ZSBldmVudCBmdXJ0aGVyLgogICAgICAqLwotICAgIHNpZ25hbHNbQ09OVEVYVF9NRU5VXSA9Ci0g
ICAgICAgIGdfc2lnbmFsX25ldygiY29udGV4dC1tZW51IiwKLSAgICAgICAgICAgICAgICAgICAg
IEdfVFlQRV9GUk9NX0NMQVNTKHdlYlZpZXdDbGFzcyksCi0gICAgICAgICAgICAgICAgICAgICBH
X1NJR05BTF9SVU5fTEFTVCwKLSAgICAgICAgICAgICAgICAgICAgIEdfU1RSVUNUX09GRlNFVChX
ZWJLaXRXZWJWaWV3Q2xhc3MsIGNvbnRleHRfbWVudSksCi0gICAgICAgICAgICAgICAgICAgICBn
X3NpZ25hbF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQsIDAsCi0gICAgICAgICAgICAgICAgICAg
ICB3ZWJraXRfbWFyc2hhbF9CT09MRUFOX19PQkpFQ1RfQk9YRURfT0JKRUNULAotICAgICAgICAg
ICAgICAgICAgICAgR19UWVBFX0JPT0xFQU4sIDMsCi0gICAgICAgICAgICAgICAgICAgICBXRUJL
SVRfVFlQRV9DT05URVhUX01FTlUsCi0gICAgICAgICAgICAgICAgICAgICBHREtfVFlQRV9FVkVO
VCB8IEdfU0lHTkFMX1RZUEVfU1RBVElDX1NDT1BFLAotICAgICAgICAgICAgICAgICAgICAgV0VC
S0lUX1RZUEVfSElUX1RFU1RfUkVTVUxUKTsKKyAgICBzaWduYWxzW0NPTlRFWFRfTUVOVV0gPSBn
X3NpZ25hbF9uZXcoCisgICAgICAgICJjb250ZXh0LW1lbnUiLAorICAgICAgICBHX1RZUEVfRlJP
TV9DTEFTUyh3ZWJWaWV3Q2xhc3MpLAorICAgICAgICBHX1NJR05BTF9SVU5fTEFTVCwKKyAgICAg
ICAgR19TVFJVQ1RfT0ZGU0VUKFdlYktpdFdlYlZpZXdDbGFzcywgY29udGV4dF9tZW51KSwKKyAg
ICAgICAgZ19zaWduYWxfYWNjdW11bGF0b3JfdHJ1ZV9oYW5kbGVkLCBudWxscHRyLAorICAgICAg
ICBnX2NjbG9zdXJlX21hcnNoYWxfZ2VuZXJpYywKKyAgICAgICAgR19UWVBFX0JPT0xFQU4sIDMs
CisgICAgICAgIFdFQktJVF9UWVBFX0NPTlRFWFRfTUVOVSwKKyAgICAgICAgR0RLX1RZUEVfRVZF
TlQgfCBHX1NJR05BTF9UWVBFX1NUQVRJQ19TQ09QRSwKKyAgICAgICAgV0VCS0lUX1RZUEVfSElU
X1RFU1RfUkVTVUxUKTsKIAogICAgIC8qKgogICAgICAqIFdlYktpdFdlYlZpZXc6OmNvbnRleHQt
bWVudS1kaXNtaXNzZWQ6CkBAIC0xNzg2LDkgKzE3ODcsOCBAQCBzdGF0aWMgdm9pZCB3ZWJraXRf
d2ViX3ZpZXdfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZpZXdDbGFzcykKICAg
ICAgICAgR19UWVBFX0ZST01fQ0xBU1Mod2ViVmlld0NsYXNzKSwKICAgICAgICAgR19TSUdOQUxf
UlVOX0xBU1QsCiAgICAgICAgIEdfU1RSVUNUX09GRlNFVChXZWJLaXRXZWJWaWV3Q2xhc3MsIHdl
Yl9wcm9jZXNzX2NyYXNoZWQpLAotICAgICAgICBnX3NpZ25hbF9hY2N1bXVsYXRvcl90cnVlX2hh
bmRsZWQsCi0gICAgICAgIDAsCi0gICAgICAgIHdlYmtpdF9tYXJzaGFsX0JPT0xFQU5fX1ZPSUQs
CisgICAgICAgIGdfc2lnbmFsX2FjY3VtdWxhdG9yX3RydWVfaGFuZGxlZCwgbnVsbHB0ciwKKyAg
ICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX2dlbmVyaWMsCiAgICAgICAgIEdfVFlQRV9CT09MRUFO
LCAwKTsKIAogICAgIC8qKgpAQCAtMTgxNCwxNSArMTgxNCwxNSBAQCBzdGF0aWMgdm9pZCB3ZWJr
aXRfd2ViX3ZpZXdfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZpZXdDbGFzcykK
ICAgICAgKgogICAgICAqIFNpbmNlOiAyLjIKICAgICAgKi8KLSAgICBzaWduYWxzW0FVVEhFTlRJ
Q0FURV0gPQotICAgICAgICBnX3NpZ25hbF9uZXcoImF1dGhlbnRpY2F0ZSIsCi0gICAgICAgICAg
ICBHX1RZUEVfRlJPTV9DTEFTUyh3ZWJWaWV3Q2xhc3MpLAotICAgICAgICAgICAgR19TSUdOQUxf
UlVOX0xBU1QsCi0gICAgICAgICAgICBHX1NUUlVDVF9PRkZTRVQoV2ViS2l0V2ViVmlld0NsYXNz
LCBhdXRoZW50aWNhdGUpLAotICAgICAgICAgICAgZ19zaWduYWxfYWNjdW11bGF0b3JfdHJ1ZV9o
YW5kbGVkLCAwIC8qIGFjY3VtdWxhdG9yIGRhdGEgKi8sCi0gICAgICAgICAgICB3ZWJraXRfbWFy
c2hhbF9CT09MRUFOX19PQkpFQ1QsCi0gICAgICAgICAgICBHX1RZUEVfQk9PTEVBTiwgMSwgLyog
bnVtYmVyIG9mIHBhcmFtZXRlcnMgKi8KLSAgICAgICAgICAgIFdFQktJVF9UWVBFX0FVVEhFTlRJ
Q0FUSU9OX1JFUVVFU1QpOworICAgIHNpZ25hbHNbQVVUSEVOVElDQVRFXSA9IGdfc2lnbmFsX25l
dygKKyAgICAgICAgImF1dGhlbnRpY2F0ZSIsCisgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNTKHdl
YlZpZXdDbGFzcyksCisgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAorICAgICAgICBHX1NUUlVD
VF9PRkZTRVQoV2ViS2l0V2ViVmlld0NsYXNzLCBhdXRoZW50aWNhdGUpLAorICAgICAgICBnX3Np
Z25hbF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQsIG51bGxwdHIgLyogYWNjdW11bGF0b3IgZGF0
YSAqLywKKyAgICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX2dlbmVyaWMsCisgICAgICAgIEdfVFlQ
RV9CT09MRUFOLCAxLCAvKiBudW1iZXIgb2YgcGFyYW1ldGVycyAqLworICAgICAgICBXRUJLSVRf
VFlQRV9BVVRIRU5USUNBVElPTl9SRVFVRVNUKTsKIAogICAgIC8qKgogICAgICAqIFdlYktpdFdl
YlZpZXc6OnNob3ctbm90aWZpY2F0aW9uOgpAQCAtMTg0MCwxNSArMTg0MCwxNSBAQCBzdGF0aWMg
dm9pZCB3ZWJraXRfd2ViX3ZpZXdfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZp
ZXdDbGFzcykKICAgICAgKgogICAgICAqIFNpbmNlOiAyLjgKICAgICAgKi8KLSAgICBzaWduYWxz
W1NIT1dfTk9USUZJQ0FUSU9OXSA9Ci0gICAgICAgIGdfc2lnbmFsX25ldygic2hvdy1ub3RpZmlj
YXRpb24iLAotICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1MoZ09iamVjdENsYXNzKSwKLSAg
ICAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAotICAgICAgICAgICAgR19TVFJVQ1RfT0ZGU0VU
KFdlYktpdFdlYlZpZXdDbGFzcywgc2hvd19ub3RpZmljYXRpb24pLAotICAgICAgICAgICAgZ19z
aWduYWxfYWNjdW11bGF0b3JfdHJ1ZV9oYW5kbGVkLCBudWxscHRyIC8qIGFjY3VtdWxhdG9yIGRh
dGEgKi8sCi0gICAgICAgICAgICB3ZWJraXRfbWFyc2hhbF9CT09MRUFOX19PQkpFQ1QsCi0gICAg
ICAgICAgICBHX1RZUEVfQk9PTEVBTiwgMSwKLSAgICAgICAgICAgIFdFQktJVF9UWVBFX05PVElG
SUNBVElPTik7CisgICAgc2lnbmFsc1tTSE9XX05PVElGSUNBVElPTl0gPSBnX3NpZ25hbF9uZXco
CisgICAgICAgICJzaG93LW5vdGlmaWNhdGlvbiIsCisgICAgICAgIEdfVFlQRV9GUk9NX0NMQVNT
KGdPYmplY3RDbGFzcyksCisgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAorICAgICAgICBHX1NU
UlVDVF9PRkZTRVQoV2ViS2l0V2ViVmlld0NsYXNzLCBzaG93X25vdGlmaWNhdGlvbiksCisgICAg
ICAgIGdfc2lnbmFsX2FjY3VtdWxhdG9yX3RydWVfaGFuZGxlZCwgbnVsbHB0ciAvKiBhY2N1bXVs
YXRvciBkYXRhICovLAorICAgICAgICBnX2NjbG9zdXJlX21hcnNoYWxfZ2VuZXJpYywKKyAgICAg
ICAgR19UWVBFX0JPT0xFQU4sIDEsCisgICAgICAgIFdFQktJVF9UWVBFX05PVElGSUNBVElPTik7
CiAKICAgICAgLyoqCiAgICAgICAqIFdlYktpdFdlYlZpZXc6OnJ1bi1jb2xvci1jaG9vc2VyOgpA
QCAtMTg3NCwxNSArMTg3NCwxNSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3ZpZXdfY2xhc3Nf
aW5pdChXZWJLaXRXZWJWaWV3Q2xhc3MqIHdlYlZpZXdDbGFzcykKICAgICAgICoKICAgICAgICog
U2luY2U6IDIuOAogICAgICAgKi8KLSAgICBzaWduYWxzW1JVTl9DT0xPUl9DSE9PU0VSXSA9Ci0g
ICAgICAgIGdfc2lnbmFsX25ldygicnVuLWNvbG9yLWNob29zZXIiLAotICAgICAgICAgICAgR19U
WVBFX0ZST01fQ0xBU1Mod2ViVmlld0NsYXNzKSwKLSAgICAgICAgICAgIEdfU0lHTkFMX1JVTl9M
QVNULAotICAgICAgICAgICAgR19TVFJVQ1RfT0ZGU0VUKFdlYktpdFdlYlZpZXdDbGFzcywgcnVu
X2NvbG9yX2Nob29zZXIpLAotICAgICAgICAgICAgZ19zaWduYWxfYWNjdW11bGF0b3JfdHJ1ZV9o
YW5kbGVkLCBudWxscHRyLAotICAgICAgICAgICAgd2Via2l0X21hcnNoYWxfQk9PTEVBTl9fT0JK
RUNULAotICAgICAgICAgICAgR19UWVBFX0JPT0xFQU4sIDEsCi0gICAgICAgICAgICBXRUJLSVRf
VFlQRV9DT0xPUl9DSE9PU0VSX1JFUVVFU1QpOworICAgIHNpZ25hbHNbUlVOX0NPTE9SX0NIT09T
RVJdID0gZ19zaWduYWxfbmV3KAorICAgICAgICAicnVuLWNvbG9yLWNob29zZXIiLAorICAgICAg
ICBHX1RZUEVfRlJPTV9DTEFTUyh3ZWJWaWV3Q2xhc3MpLAorICAgICAgICBHX1NJR05BTF9SVU5f
TEFTVCwKKyAgICAgICAgR19TVFJVQ1RfT0ZGU0VUKFdlYktpdFdlYlZpZXdDbGFzcywgcnVuX2Nv
bG9yX2Nob29zZXIpLAorICAgICAgICBnX3NpZ25hbF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQs
IG51bGxwdHIsCisgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5lcmljLAorICAgICAgICBH
X1RZUEVfQk9PTEVBTiwgMSwKKyAgICAgICAgV0VCS0lUX1RZUEVfQ09MT1JfQ0hPT1NFUl9SRVFV
RVNUKTsKIH0KIAogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0NhbmNlbEF1dGhlbnRpY2F0aW9u
UmVxdWVzdChXZWJLaXRXZWJWaWV3KiB3ZWJWaWV3KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9ndGsvd2Via2l0Mm1hcnNoYWwubGlzdCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL3dlYmtpdDJtYXJzaGFsLmxpc3QKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGQ2Mzg2NjFmNGFmLi4wMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2d0ay93ZWJraXQybWFyc2hhbC5saXN0CisrKyAvZGV2L251bGwKQEAg
LTEsMTUgKzAsMCBAQAotQk9PTEVBTjpCT1hFRAotQk9PTEVBTjpCT1hFRCxTVFJJTkcKLUJPT0xF
QU46T0JKRUNUCi1CT09MRUFOOk9CSkVDVCxCT1hFRCxPQkpFQ1QKLUJPT0xFQU46T0JKRUNULEVO
VU0KLUJPT0xFQU46T0JKRUNULE9CSkVDVAotQk9PTEVBTjpTVFJJTkcKLUJPT0xFQU46Vk9JRAot
T0JKRUNUOlZPSUQKLVZPSUQ6T0JKRUNULFVJTlQKLVZPSUQ6T0JKRUNULE9CSkVDVAotVk9JRDpP
QkpFQ1QsUE9JTlRFUgotVk9JRDpTVFJJTkcsU1RSSU5HCi1WT0lEOlVJTlQ2NAotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsvV2Vi
S2l0U2NyaXB0V29ybGQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9BUEkvZ3RrL1dlYktpdFNjcmlwdFdvcmxkLmNwcAppbmRleCA4ZDRjOTc4YmUwMy4uOGI3
MjU2NzA4OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL2d0ay9XZWJLaXRTY3JpcHRXb3JsZC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvZ3RrL1dlYktpdFNjcmlwdFdvcmxkLmNwcApA
QCAtMjAsNyArMjAsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYktpdFNj
cmlwdFdvcmxkLmgiCiAKLSNpbmNsdWRlICJXZWJLaXRNYXJzaGFsLmgiCiAjaW5jbHVkZSAiV2Vi
S2l0UHJpdmF0ZS5oIgogI2luY2x1ZGUgIldlYktpdFNjcmlwdFdvcmxkUHJpdmF0ZS5oIgogI2lu
Y2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CkBAIC03Nyw4ICs3Niw4IEBAIHN0YXRpYyB2b2lkIHdlYmtp
dF9zY3JpcHRfd29ybGRfY2xhc3NfaW5pdChXZWJLaXRTY3JpcHRXb3JsZENsYXNzKiBrbGFzcykK
ICAgICAgICAgIndpbmRvdy1vYmplY3QtY2xlYXJlZCIsCiAgICAgICAgIEdfVFlQRV9GUk9NX0NM
QVNTKGtsYXNzKSwKICAgICAgICAgR19TSUdOQUxfUlVOX0xBU1QsCi0gICAgICAgIDAsIDAsIDAs
Ci0gICAgICAgIHdlYmtpdF9tYXJzaGFsX1ZPSURfX09CSkVDVF9PQkpFQ1QsCisgICAgICAgIDAs
IG51bGxwdHIsIG51bGxwdHIsCisgICAgICAgIGdfY2Nsb3N1cmVfbWFyc2hhbF9nZW5lcmljLAog
ICAgICAgICBHX1RZUEVfTk9ORSwgMiwKICAgICAgICAgV0VCS0lUX1RZUEVfV0VCX1BBR0UsCiAg
ICAgICAgIFdFQktJVF9UWVBFX0ZSQU1FKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQYWdl
LmNwcAppbmRleCBjOWJhNjYzODg2OC4uZTRkODJlNjRmN2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2d0ay9XZWJLaXRXZWJQYWdlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9ndGsv
V2ViS2l0V2ViUGFnZS5jcHAKQEAgLTMzLDcgKzMzLDYgQEAKICNpbmNsdWRlICJXZWJLaXRET01E
b2N1bWVudFByaXZhdGUuaCIKICNpbmNsdWRlICJXZWJLaXRET01FbGVtZW50UHJpdmF0ZS5oIgog
I2luY2x1ZGUgIldlYktpdEZyYW1lUHJpdmF0ZS5oIgotI2luY2x1ZGUgIldlYktpdE1hcnNoYWwu
aCIKICNpbmNsdWRlICJXZWJLaXRQcml2YXRlLmgiCiAjaW5jbHVkZSAiV2ViS2l0U2NyaXB0V29y
bGRQcml2YXRlLmgiCiAjaW5jbHVkZSAiV2ViS2l0VVJJUmVxdWVzdFByaXZhdGUuaCIKQEAgLTQ0
MSw4ICs0NDAsOCBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3BhZ2VfY2xhc3NfaW5pdChXZWJL
aXRXZWJQYWdlQ2xhc3MqIGtsYXNzKQogICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhrbGFzcyks
CiAgICAgICAgIEdfU0lHTkFMX1JVTl9MQVNULAogICAgICAgICAwLAotICAgICAgICBnX3NpZ25h
bF9hY2N1bXVsYXRvcl90cnVlX2hhbmRsZWQsIDAsCi0gICAgICAgIHdlYmtpdF9tYXJzaGFsX0JP
T0xFQU5fX09CSkVDVF9PQkpFQ1QsCisgICAgICAgIGdfc2lnbmFsX2FjY3VtdWxhdG9yX3RydWVf
aGFuZGxlZCwgbnVsbHB0ciwKKyAgICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX2dlbmVyaWMsCiAg
ICAgICAgIEdfVFlQRV9CT09MRUFOLCAyLAogICAgICAgICBXRUJLSVRfVFlQRV9VUklfUkVRVUVT
VCwKICAgICAgICAgV0VCS0lUX1RZUEVfVVJJX1JFU1BPTlNFKTsKQEAgLTQ3MSw4ICs0NzAsOCBA
QCBzdGF0aWMgdm9pZCB3ZWJraXRfd2ViX3BhZ2VfY2xhc3NfaW5pdChXZWJLaXRXZWJQYWdlQ2xh
c3MqIGtsYXNzKQogICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhrbGFzcyksCiAgICAgICAgIEdf
U0lHTkFMX1JVTl9MQVNULAogICAgICAgICAwLAotICAgICAgICBnX3NpZ25hbF9hY2N1bXVsYXRv
cl90cnVlX2hhbmRsZWQsIDAsCi0gICAgICAgIHdlYmtpdF9tYXJzaGFsX0JPT0xFQU5fX09CSkVD
VF9PQkpFQ1QsCisgICAgICAgIGdfc2lnbmFsX2FjY3VtdWxhdG9yX3RydWVfaGFuZGxlZCwgbnVs
bHB0ciwKKyAgICAgICAgZ19jY2xvc3VyZV9tYXJzaGFsX2dlbmVyaWMsCiAgICAgICAgIEdfVFlQ
RV9CT09MRUFOLCAyLAogICAgICAgICBXRUJLSVRfVFlQRV9DT05URVhUX01FTlUsCiAgICAgICAg
IFdFQktJVF9UWVBFX1dFQl9ISVRfVEVTVF9SRVNVTFQpOwo=
</data>
<flag name="review"
          id="333223"
          type_id="1"
          status="+"
          setter="zan"
    />
          </attachment>
      

    </bug>

</bugzilla>