<?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>212318</bug_id>
          
          <creation_ts>2020-05-24 05:45:33 -0700</creation_ts>
          <short_desc>[GTK4] Implement script dialogs</short_desc>
          <delta_ts>2020-05-29 02:40:59 -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>
          
          <blocked>210100</blocked>
    
    <blocked>212319</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aperez</cc>
    
    <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1655697</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-05-24 05:45:33 -0700</bug_when>
    <thetext>It just needs to be ported.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656328</commentid>
    <comment_count>1</comment_count>
      <attachid>400319</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-05-27 03:15:19 -0700</bug_when>
    <thetext>Created attachment 400319
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656329</commentid>
    <comment_count>2</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-05-27 03:15:54 -0700</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656822</commentid>
    <comment_count>3</comment_count>
      <attachid>400449</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-05-28 06:25:55 -0700</bug_when>
    <thetext>Created attachment 400449
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1657189</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-05-29 02:40:59 -0700</bug_when>
    <thetext>Committed r262286: &lt;https://trac.webkit.org/changeset/262286&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400319</attachid>
            <date>2020-05-27 03:15:19 -0700</date>
            <delta_ts>2020-05-28 06:25:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wkgtk4-script-dialogs.diff</filename>
            <type>text/plain</type>
            <size>22800</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyZjIyNjg4OWFhMDIuLjM2N2M0MDYxNmE0MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE5IEBACisyMDIwLTA1LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLNF0gSW1wbGVtZW50IHNjcmlwdCBkaWFsb2dzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTIzMTgKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgbW9yZSBk
ZWZpbml0aW9ucyB0byBhdm9pZCBpZmRlZnMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvR3Rr
VmVyc2lvbmluZy5oOgorICAgICAgICAoZ3RrX2VudHJ5X3NldF90ZXh0KToKKyAgICAgICAgKGd0
a19lbnRyeV9nZXRfdGV4dCk6CisgICAgICAgIChndGtfbGFiZWxfc2V0X2xpbmVfd3JhcCk6Cisg
ICAgICAgIChndGtfd2luZG93X3NldF9kZWZhdWx0KToKKyAgICAgICAgKGd0a193aWRnZXRfYWRk
X2Nzc19jbGFzcyk6CisKIDIwMjAtMDUtMjcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNp
YUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEs0XSBNYWtlIFBvaW50ZXJMb2NrIHdvcmsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9HdGtWZXJzaW9uaW5nLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrVmVyc2lvbmluZy5oCmluZGV4IDFjNDI4OTY5
YWNlZS4uMmJmMTcwNjFjODI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvR3RrVmVyc2lvbmluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9HdGtW
ZXJzaW9uaW5nLmgKQEAgLTg3LDYgKzg3LDMwIEBAIGd0a193aWRnZXRfcXVldWVfcmVzaXplX25v
X3JlZHJhdyhHdGtXaWRnZXQqIHdpZGdldCkKICAgICBndGtfd2lkZ2V0X3F1ZXVlX3Jlc2l6ZSh3
aWRnZXQpOwogfQogCitzdGF0aWMgaW5saW5lIHZvaWQKK2d0a19lbnRyeV9zZXRfdGV4dChHdGtF
bnRyeSogZW50cnksIGNvbnN0IGNoYXIqIHRleHQpCit7CisgICAgZ3RrX2VkaXRhYmxlX3NldF90
ZXh0KEdUS19FRElUQUJMRShlbnRyeSksIHRleHQpOworfQorCitzdGF0aWMgaW5saW5lIGNvbnN0
IGNoYXIqCitndGtfZW50cnlfZ2V0X3RleHQoR3RrRW50cnkqIGVudHJ5KQoreworICAgIHJldHVy
biBndGtfZWRpdGFibGVfZ2V0X3RleHQoR1RLX0VESVRBQkxFKGVudHJ5KSk7Cit9CisKK3N0YXRp
YyBpbmxpbmUgdm9pZAorZ3RrX2xhYmVsX3NldF9saW5lX3dyYXAoR3RrTGFiZWwqIGxhYmVsLCBn
Ym9vbGVhbiBlbmFibGUpCit7CisgICAgZ3RrX2xhYmVsX3NldF93cmFwKGxhYmVsLCBlbmFibGUp
OworfQorCitzdGF0aWMgaW5saW5lIHZvaWQKK2d0a193aW5kb3dfc2V0X2RlZmF1bHQoR3RrV2lu
ZG93KiB3aW5kb3csIEd0a1dpZGdldCogd2lkZ2V0KQoreworICAgIGd0a193aW5kb3dfc2V0X2Rl
ZmF1bHRfd2lkZ2V0KHdpbmRvdywgd2lkZ2V0KTsKK30KKwogc3RhdGljIGlubGluZSBnYm9vbGVh
bgogZ2RrX2V2ZW50X2dldF9zdGF0ZShjb25zdCBHZGtFdmVudCAqZXZlbnQsIEdka01vZGlmaWVy
VHlwZSAqc3RhdGUpCiB7CkBAIC0xNTksNCArMTgzLDEyIEBAIGdka19ldmVudF9nZXRfa2V5Y29k
ZShjb25zdCBHZGtFdmVudCogZXZlbnQsIGd1aW50MTYqIGtleWNvZGUpCiAgICAgcmV0dXJuIFRS
VUU7CiB9CiAKKyNlbHNlIC8vIFVTRShHVEs0KQorCitzdGF0aWMgaW5saW5lIHZvaWQKK2d0a193
aWRnZXRfYWRkX2Nzc19jbGFzcyhHdGtXaWRnZXQqIHdpZGdldCwgY29uc3QgY2hhciogbmFtZSkK
K3sKKyAgICBndGtfc3R5bGVfY29udGV4dF9hZGRfY2xhc3MoZ3RrX3dpZGdldF9nZXRfc3R5bGVf
Y29udGV4dCh3aWRnZXQpLCBuYW1lKTsKK30KKwogI2VuZGlmIC8vIFVTRShHVEs0KQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpp
bmRleCA5OTNjY2QzZWY4NzQuLjE1YTQyNjMxMWM5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzOCBA
QAorMjAyMC0wNS0yNyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW0dUSzRdIEltcGxlbWVudCBzY3JpcHQgZGlhbG9ncworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyMzE4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRhcHQgdG8gdGhlIEdUSzQgQVBJ
IGFuZCB0aGVtZSBjaGFuZ2VzLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
U2NyaXB0RGlhbG9nSW1wbC5jcHA6CisgICAgICAgICh3ZWJraXRTY3JpcHREaWFsb2dJbXBsQ2xv
c2UpOgorICAgICAgICAod2Via2l0U2NyaXB0RGlhbG9nSW1wbEtleVByZXNzZWQpOgorICAgICAg
ICAod2Via2l0U2NyaXB0RGlhbG9nSW1wbE1hcCk6CisgICAgICAgICh3ZWJraXRTY3JpcHREaWFs
b2dJbXBsQ29uc3RydWN0ZWQpOgorICAgICAgICAod2Via2l0U2NyaXB0RGlhbG9nSW1wbERpc3Bv
c2UpOgorICAgICAgICAod2Via2l0X3NjcmlwdF9kaWFsb2dfaW1wbF9jbGFzc19pbml0KToKKyAg
ICAgICAgKHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxBZGRCdXR0b24pOgorICAgICAgICAod2Via2l0
U2NyaXB0RGlhbG9nSW1wbE5ldyk6CisgICAgICAgICh3ZWJraXRTY3JpcHREaWFsb2dJbXBsU2V0
RW50cnlUZXh0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRTY3JpcHREaWFs
b2dJbXBsLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2Uu
Y3BwOgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VBZGREaWFsb2cpOgorICAgICAgICAod2Vi
a2l0V2ViVmlld0Jhc2VSZW1vdmVDaGlsZCk6CisgICAgICAgICh3ZWJraXRXZWJWaWV3QmFzZVNu
YXBzaG90KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3RGlhbG9n
LmNwcDoKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdEaWFsb2dTbmFwc2hvdCk6CisgICAgICAgICh3
ZWJraXRXZWJWaWV3RGlhbG9nU2l6ZUFsbG9jYXRlKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdE
aWFsb2dDb25zdHJ1Y3RlZCk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZGlhbG9nX2NsYXNz
X2luaXQpOgorICAgICAgICAod2Via2l0V2ViVmlld0RpYWxvZ1NldENoaWxkKToKKyAgICAgICAg
KHdlYmtpdFdlYlZpZXdEaWFsb2dHZXRDaGlsZCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0V2ViVmlld0RpYWxvZy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dl
YktpdFdlYlZpZXdHdGsuY3BwOgorICAgICAgICAod2Via2l0V2ViVmlld1NjcmlwdERpYWxvZyk6
CisKIDIwMjAtMDUtMjcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgogCiAgICAgICAgIFtHVEs0XSBNYWtlIFBvaW50ZXJMb2NrIHdvcmsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2NyaXB0RGlhbG9nSW1wbC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFNjcmlwdERpYWxvZ0ltcGwu
Y3BwCmluZGV4IGI2NzU0ODZjYzgzMC4uNTNlYjU1NzZiZDdhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFNjcmlwdERpYWxvZ0ltcGwuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2NyaXB0RGlhbG9nSW1wbC5j
cHAKQEAgLTIwLDkgKzIwLDkgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJL
aXRTY3JpcHREaWFsb2dJbXBsLmgiCiAKLSNpZiAhVVNFKEdUSzQpCi0KICNpbmNsdWRlICJXZWJL
aXRTY3JpcHREaWFsb2dQcml2YXRlLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9HdGtVdGlsaXRpZXMu
aD4KKyNpbmNsdWRlIDxXZWJDb3JlL0d0a1ZlcnNpb25pbmcuaD4KICNpbmNsdWRlIDxnbGliL2dp
MThuLWxpYi5oPgogI2luY2x1ZGUgPHd0Zi9nbGliL1dURkdUeXBlLmg+CiAjaW5jbHVkZSA8d3Rm
L3RleHQvQ1N0cmluZy5oPgpAQCAtNDMsOSArNDMsMjQgQEAgV0VCS0lUX0RFRklORV9UWVBFKFdl
YktpdFNjcmlwdERpYWxvZ0ltcGwsIHdlYmtpdF9zY3JpcHRfZGlhbG9nX2ltcGwsIFdFQktJVF9U
WVAKIHN0YXRpYyB2b2lkIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxDbG9zZShXZWJLaXRTY3JpcHRE
aWFsb2dJbXBsKiBkaWFsb2cpCiB7CiAgICAgd2Via2l0X3NjcmlwdF9kaWFsb2dfY2xvc2UoZGlh
bG9nLT5wcml2LT5kaWFsb2cpOworI2lmIFVTRShHVEs0KQorICAgIGd0a193aWRnZXRfdW5wYXJl
bnQoR1RLX1dJREdFVChkaWFsb2cpKTsKKyNlbHNlCiAgICAgZ3RrX3dpZGdldF9kZXN0cm95KEdU
S19XSURHRVQoZGlhbG9nKSk7CisjZW5kaWYKIH0KIAorI2lmIFVTRShHVEs0KQorc3RhdGljIGdi
b29sZWFuIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxLZXlQcmVzc2VkKFdlYktpdFNjcmlwdERpYWxv
Z0ltcGwqIGRpYWxvZywgdW5zaWduZWQga2V5dmFsLCB1bnNpZ25lZCwgR2RrTW9kaWZpZXJUeXBl
LCBHdGtFdmVudENvbnRyb2xsZXIqKQoreworICAgIGlmIChrZXl2YWwgPT0gR0RLX0tFWV9Fc2Nh
cGUpIHsKKyAgICAgICAgd2Via2l0U2NyaXB0RGlhbG9nSW1wbENsb3NlKGRpYWxvZyk7CisgICAg
ICAgIHJldHVybiBHREtfRVZFTlRfU1RPUDsKKyAgICB9CisKKyAgICByZXR1cm4gR0RLX0VWRU5U
X1BST1BBR0FURTsKK30KKyNlbHNlCiBzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0U2NyaXB0RGlhbG9n
SW1wbEtleVByZXNzRXZlbnQoR3RrV2lkZ2V0KiB3aWRnZXQsIEdka0V2ZW50S2V5KiBrZXlFdmVu
dCkKIHsKICAgICBndWludCBrZXl2YWw7CkBAIC01NywxMSArNzIsMTQgQEAgc3RhdGljIGdib29s
ZWFuIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxLZXlQcmVzc0V2ZW50KEd0a1dpZGdldCogd2lkZ2V0
LCBHZGtFdmVudEsKIAogICAgIHJldHVybiBHREtfRVZFTlRfUFJPUEFHQVRFOwogfQorI2VuZGlm
CiAKIHN0YXRpYyB2b2lkIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxNYXAoR3RrV2lkZ2V0KiB3aWRn
ZXQpCiB7CiAgICAgV2ViS2l0U2NyaXB0RGlhbG9nSW1wbFByaXZhdGUqIHByaXYgPSBXRUJLSVRf
U0NSSVBUX0RJQUxPR19JTVBMKHdpZGdldCktPnByaXY7Ci0gICAgZ3RrX3dpZGdldF9ncmFiX2Rl
ZmF1bHQocHJpdi0+ZGVmYXVsdEJ1dHRvbik7CisgICAgYXV0byogdG9wbGV2ZWwgPSBndGtfd2lk
Z2V0X2dldF90b3BsZXZlbCh3aWRnZXQpOworICAgIGlmIChXZWJDb3JlOjp3aWRnZXRJc09uc2Ny
ZWVuVG9wbGV2ZWxXaW5kb3codG9wbGV2ZWwpKQorICAgICAgICBndGtfd2luZG93X3NldF9kZWZh
dWx0KEdUS19XSU5ET1codG9wbGV2ZWwpLCBwcml2LT5kZWZhdWx0QnV0dG9uKTsKIAogICAgIHN3
aXRjaCAocHJpdi0+ZGlhbG9nLT50eXBlKSB7CiAgICAgY2FzZSBXRUJLSVRfU0NSSVBUX0RJQUxP
R19BTEVSVDoKQEAgLTg1LDU3ICsxMDMsMTA5IEBAIHN0YXRpYyB2b2lkIHdlYmtpdFNjcmlwdERp
YWxvZ0ltcGxDb25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCiAgICAgV2ViS2l0U2NyaXB0RGlh
bG9nSW1wbFByaXZhdGUqIHByaXYgPSBkaWFsb2ctPnByaXY7CiAKICAgICBwcml2LT52Ym94ID0g
Z3RrX2JveF9uZXcoR1RLX09SSUVOVEFUSU9OX1ZFUlRJQ0FMLCAyMCk7CisjaWYgVVNFKEdUSzQp
CisgICAgd2Via2l0V2ViVmlld0RpYWxvZ1NldENoaWxkKFdFQktJVF9XRUJfVklFV19ESUFMT0co
b2JqZWN0KSwgcHJpdi0+dmJveCk7CisgICAgZ3RrX3dpZGdldF9hZGRfY3NzX2NsYXNzKHByaXYt
PnZib3gsICJkaWFsb2ctdmJveCIpOworI2Vsc2UKICAgICBndGtfY29udGFpbmVyX3NldF9ib3Jk
ZXJfd2lkdGgoR1RLX0NPTlRBSU5FUihwcml2LT52Ym94KSwgMCk7CiAgICAgZ3RrX2NvbnRhaW5l
cl9hZGQoR1RLX0NPTlRBSU5FUihkaWFsb2cpLCBwcml2LT52Ym94KTsKICAgICBndGtfd2lkZ2V0
X3Nob3cocHJpdi0+dmJveCk7CisjZW5kaWYKIAogICAgIEd0a1dpZGdldCogYm94ID0gZ3RrX2Jv
eF9uZXcoR1RLX09SSUVOVEFUSU9OX0hPUklaT05UQUwsIDApOwotICAgIGd0a19zdHlsZV9jb250
ZXh0X2FkZF9jbGFzcyhndGtfd2lkZ2V0X2dldF9zdHlsZV9jb250ZXh0KGJveCksIEdUS19TVFlM
RV9DTEFTU19USVRMRUJBUik7CisgICAgZ3RrX3dpZGdldF9hZGRfY3NzX2NsYXNzKGJveCwgR1RL
X1NUWUxFX0NMQVNTX1RJVExFQkFSKTsKICAgICBndGtfd2lkZ2V0X3NldF9zaXplX3JlcXVlc3Qo
Ym94LCAtMSwgMTYpOwogICAgIHByaXYtPnRpdGxlID0gZ3RrX2xhYmVsX25ldyhudWxscHRyKTsK
ICAgICBndGtfbGFiZWxfc2V0X2VsbGlwc2l6ZShHVEtfTEFCRUwocHJpdi0+dGl0bGUpLCBQQU5H
T19FTExJUFNJWkVfRU5EKTsKICAgICBndGtfd2lkZ2V0X3NldF9tYXJnaW5fdG9wKHByaXYtPnRp
dGxlLCA2KTsKICAgICBndGtfd2lkZ2V0X3NldF9tYXJnaW5fYm90dG9tKHByaXYtPnRpdGxlLCA2
KTsKLSAgICBndGtfc3R5bGVfY29udGV4dF9hZGRfY2xhc3MoZ3RrX3dpZGdldF9nZXRfc3R5bGVf
Y29udGV4dChwcml2LT50aXRsZSksIEdUS19TVFlMRV9DTEFTU19USVRMRSk7CisgICAgZ3RrX3dp
ZGdldF9hZGRfY3NzX2NsYXNzKHByaXYtPnRpdGxlLCBHVEtfU1RZTEVfQ0xBU1NfVElUTEUpOwor
I2lmIFVTRShHVEs0KQorICAgIGd0a193aWRnZXRfc2V0X2hleHBhbmQocHJpdi0+dGl0bGUsIFRS
VUUpOworICAgIGd0a193aWRnZXRfc2V0X2hhbGlnbihwcml2LT50aXRsZSwgR1RLX0FMSUdOX0NF
TlRFUik7CisgICAgZ3RrX2JveF9hcHBlbmQoR1RLX0JPWChib3gpLCBwcml2LT50aXRsZSk7Cisj
ZWxzZQogICAgIGd0a19ib3hfc2V0X2NlbnRlcl93aWRnZXQoR1RLX0JPWChib3gpLCBwcml2LT50
aXRsZSk7CiAgICAgZ3RrX3dpZGdldF9zaG93KHByaXYtPnRpdGxlKTsKKyNlbmRpZgorI2lmIFVT
RShHVEs0KQorICAgIGd0a19ib3hfYXBwZW5kKEdUS19CT1gocHJpdi0+dmJveCksIGJveCk7Cisj
ZWxzZQogICAgIGd0a19ib3hfcGFja19zdGFydChHVEtfQk9YKHByaXYtPnZib3gpLCBib3gsIFRS
VUUsIEZBTFNFLCAwKTsKICAgICBndGtfd2lkZ2V0X3Nob3coYm94KTsKKyNlbmRpZgogCiAgICAg
Ym94ID0gZ3RrX2JveF9uZXcoR1RLX09SSUVOVEFUSU9OX0hPUklaT05UQUwsIDMwKTsKICAgICBn
dGtfd2lkZ2V0X3NldF9tYXJnaW5fc3RhcnQoYm94LCAzMCk7CiAgICAgZ3RrX3dpZGdldF9zZXRf
bWFyZ2luX2VuZChib3gsIDMwKTsKKyNpZiBVU0UoR1RLNCkKKyAgICBndGtfYm94X2FwcGVuZChH
VEtfQk9YKHByaXYtPnZib3gpLCBib3gpOworI2Vsc2UKICAgICBndGtfYm94X3BhY2tfc3RhcnQo
R1RLX0JPWChwcml2LT52Ym94KSwgYm94LCBUUlVFLCBGQUxTRSwgMCk7CiAgICAgZ3RrX3dpZGdl
dF9zaG93KGJveCk7CisjZW5kaWYKIAogICAgIEd0a1dpZGdldCogbWVzc2FnZUFyZWEgPSBndGtf
Ym94X25ldyhHVEtfT1JJRU5UQVRJT05fVkVSVElDQUwsIDEwKTsKKyNpZiBVU0UoR1RLNCkKKyAg
ICBndGtfYm94X2FwcGVuZChHVEtfQk9YKGJveCksIG1lc3NhZ2VBcmVhKTsKKyNlbHNlCiAgICAg
Z3RrX2JveF9wYWNrX3N0YXJ0KEdUS19CT1goYm94KSwgbWVzc2FnZUFyZWEsIFRSVUUsIFRSVUUs
IDApOwogICAgIGd0a193aWRnZXRfc2hvdyhtZXNzYWdlQXJlYSk7CisjZW5kaWYKIAogICAgIHBy
aXYtPnN3aW5kb3cgPSBndGtfc2Nyb2xsZWRfd2luZG93X25ldyhudWxscHRyLCBudWxscHRyKTsK
ICAgICBndGtfc2Nyb2xsZWRfd2luZG93X3NldF9wb2xpY3koR1RLX1NDUk9MTEVEX1dJTkRPVyhw
cml2LT5zd2luZG93KSwgR1RLX1BPTElDWV9BVVRPTUFUSUMsIEdUS19QT0xJQ1lfQVVUT01BVElD
KTsKKyNpZiBVU0UoR1RLNCkKKyAgICBndGtfYm94X2FwcGVuZChHVEtfQk9YKG1lc3NhZ2VBcmVh
KSwgcHJpdi0+c3dpbmRvdyk7CisjZWxzZQogICAgIGd0a19ib3hfcGFja19zdGFydChHVEtfQk9Y
KG1lc3NhZ2VBcmVhKSwgcHJpdi0+c3dpbmRvdywgVFJVRSwgVFJVRSwgMCk7CiAgICAgZ3RrX3dp
ZGdldF9zaG93KHByaXYtPnN3aW5kb3cpOworI2VuZGlmCiAKICAgICBwcml2LT5sYWJlbCA9IGd0
a19sYWJlbF9uZXcobnVsbHB0cik7CiAgICAgZ3RrX3dpZGdldF9zZXRfaGFsaWduKHByaXYtPmxh
YmVsLCBHVEtfQUxJR05fQ0VOVEVSKTsKICAgICBndGtfd2lkZ2V0X3NldF92YWxpZ24ocHJpdi0+
bGFiZWwsIEdUS19BTElHTl9TVEFSVCk7CiAgICAgZ3RrX2xhYmVsX3NldF9saW5lX3dyYXAoR1RL
X0xBQkVMKHByaXYtPmxhYmVsKSwgVFJVRSk7CiAgICAgZ3RrX2xhYmVsX3NldF9tYXhfd2lkdGhf
Y2hhcnMoR1RLX0xBQkVMKHByaXYtPmxhYmVsKSwgNjApOworI2lmIFVTRShHVEs0KQorICAgIGd0
a193aWRnZXRfc2V0X2hleHBhbmQocHJpdi0+bGFiZWwsIFRSVUUpOworICAgIGd0a19zY3JvbGxl
ZF93aW5kb3dfc2V0X2NoaWxkKEdUS19TQ1JPTExFRF9XSU5ET1cocHJpdi0+c3dpbmRvdyksIHBy
aXYtPmxhYmVsKTsKKyNlbHNlCiAgICAgZ3RrX2NvbnRhaW5lcl9hZGQoR1RLX0NPTlRBSU5FUihw
cml2LT5zd2luZG93KSwgcHJpdi0+bGFiZWwpOwogICAgIGd0a193aWRnZXRfc2hvdyhwcml2LT5s
YWJlbCk7CisjZW5kaWYKIAogICAgIEd0a1dpZGdldCogYWN0aW9uQm94ID0gZ3RrX2JveF9uZXco
R1RLX09SSUVOVEFUSU9OX0hPUklaT05UQUwsIDApOwotICAgIGd0a19zdHlsZV9jb250ZXh0X2Fk
ZF9jbGFzcyhndGtfd2lkZ2V0X2dldF9zdHlsZV9jb250ZXh0KGFjdGlvbkJveCksICJkaWFsb2ct
YWN0aW9uLWJveCIpOworICAgIGd0a193aWRnZXRfYWRkX2Nzc19jbGFzcyhhY3Rpb25Cb3gsICJk
aWFsb2ctYWN0aW9uLWJveCIpOworI2lmIFVTRShHVEs0KQorICAgIGd0a19ib3hfYXBwZW5kKEdU
S19CT1gocHJpdi0+dmJveCksIGFjdGlvbkJveCk7CisjZWxzZQogICAgIGd0a19ib3hfcGFja19l
bmQoR1RLX0JPWChwcml2LT52Ym94KSwgYWN0aW9uQm94LCBGQUxTRSwgVFJVRSwgMCk7CiAgICAg
Z3RrX3dpZGdldF9zaG93KGFjdGlvbkJveCk7CisjZW5kaWYKIAorI2lmIFVTRShHVEs0KQorICAg
IHByaXYtPmFjdGlvbkFyZWEgPSBndGtfYm94X25ldyhHVEtfT1JJRU5UQVRJT05fSE9SSVpPTlRB
TCwgMCk7CisgICAgZ3RrX2JveF9zZXRfaG9tb2dlbmVvdXMoR1RLX0JPWChwcml2LT5hY3Rpb25B
cmVhKSwgVFJVRSk7CisgICAgZ3RrX3dpZGdldF9zZXRfaGFsaWduKHByaXYtPmFjdGlvbkFyZWEs
IEdUS19BTElHTl9GSUxMKTsKKyNlbHNlCiAgICAgcHJpdi0+YWN0aW9uQXJlYSA9IGd0a19idXR0
b25fYm94X25ldyhHVEtfT1JJRU5UQVRJT05fSE9SSVpPTlRBTCk7CiAgICAgZ3RrX2J1dHRvbl9i
b3hfc2V0X2xheW91dChHVEtfQlVUVE9OX0JPWChwcml2LT5hY3Rpb25BcmVhKSwgR1RLX0JVVFRP
TkJPWF9FWFBBTkQpOworI2VuZGlmCiAgICAgZ3RrX3dpZGdldF9zZXRfaGV4cGFuZChwcml2LT5h
Y3Rpb25BcmVhLCBUUlVFKTsKLSAgICBndGtfc3R5bGVfY29udGV4dF9hZGRfY2xhc3MoZ3RrX3dp
ZGdldF9nZXRfc3R5bGVfY29udGV4dChwcml2LT5hY3Rpb25BcmVhKSwgImRpYWxvZy1hY3Rpb24t
YXJlYSIpOworICAgIGd0a193aWRnZXRfYWRkX2Nzc19jbGFzcyhwcml2LT5hY3Rpb25BcmVhLCAi
ZGlhbG9nLWFjdGlvbi1hcmVhIik7CisjaWYgVVNFKEdUSzQpCisgICAgZ3RrX2JveF9hcHBlbmQo
R1RLX0JPWChhY3Rpb25Cb3gpLCBwcml2LT5hY3Rpb25BcmVhKTsKKyNlbHNlCiAgICAgZ3RrX2Jv
eF9wYWNrX2VuZChHVEtfQk9YKGFjdGlvbkJveCksIHByaXYtPmFjdGlvbkFyZWEsIEZBTFNFLCBU
UlVFLCAwKTsKICAgICBndGtfd2lkZ2V0X3Nob3cocHJpdi0+YWN0aW9uQXJlYSk7CisjZW5kaWYK
KworI2lmIFVTRShHVEs0KQorICAgIGF1dG8qIGNvbnRyb2xsZXIgPSBndGtfZXZlbnRfY29udHJv
bGxlcl9rZXlfbmV3KCk7CisgICAgZ19zaWduYWxfY29ubmVjdF9vYmplY3QoY29udHJvbGxlciwg
ImtleS1wcmVzc2VkIiwgR19DQUxMQkFDSyh3ZWJraXRTY3JpcHREaWFsb2dJbXBsS2V5UHJlc3Nl
ZCksIGRpYWxvZywgR19DT05ORUNUX1NXQVBQRUQpOworICAgIGd0a193aWRnZXRfYWRkX2NvbnRy
b2xsZXIoR1RLX1dJREdFVChkaWFsb2cpLCBjb250cm9sbGVyKTsKKyNlbmRpZgogfQogCiBzdGF0
aWMgdm9pZCB3ZWJraXRTY3JpcHREaWFsb2dJbXBsRGlzcG9zZShHT2JqZWN0KiBvYmplY3QpCkBA
IC0xNDcsNiArMjE3LDEwIEBAIHN0YXRpYyB2b2lkIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxEaXNw
b3NlKEdPYmplY3QqIG9iamVjdCkKICAgICAgICAgZGlhbG9nLT5wcml2LT5kaWFsb2cgPSBudWxs
cHRyOwogICAgIH0KIAorI2lmIFVTRShHVEs0KQorICAgIHdlYmtpdFdlYlZpZXdEaWFsb2dTZXRD
aGlsZChXRUJLSVRfV0VCX1ZJRVdfRElBTE9HKG9iamVjdCksIG51bGxwdHIpOworI2VuZGlmCisK
ICAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfc2NyaXB0X2RpYWxvZ19pbXBsX3BhcmVudF9jbGFz
cyktPmRpc3Bvc2Uob2JqZWN0KTsKIH0KIApAQCAtMTU3LDcgKzIzMSw5IEBAIHN0YXRpYyB2b2lk
IHdlYmtpdF9zY3JpcHRfZGlhbG9nX2ltcGxfY2xhc3NfaW5pdChXZWJLaXRTY3JpcHREaWFsb2dJ
bXBsQ2xhc3MqIGtsCiAgICAgb2JqZWN0Q2xhc3MtPmRpc3Bvc2UgPSB3ZWJraXRTY3JpcHREaWFs
b2dJbXBsRGlzcG9zZTsKIAogICAgIEd0a1dpZGdldENsYXNzKiB3aWRnZXRDbGFzcyA9IEdUS19X
SURHRVRfQ0xBU1Moa2xhc3MpOworI2lmICFVU0UoR1RLNCkKICAgICB3aWRnZXRDbGFzcy0+a2V5
X3ByZXNzX2V2ZW50ID0gd2Via2l0U2NyaXB0RGlhbG9nSW1wbEtleVByZXNzRXZlbnQ7CisjZW5k
aWYKICAgICB3aWRnZXRDbGFzcy0+bWFwID0gd2Via2l0U2NyaXB0RGlhbG9nSW1wbE1hcDsKICAg
ICBndGtfd2lkZ2V0X2NsYXNzX3NldF9hY2Nlc3NpYmxlX3JvbGUod2lkZ2V0Q2xhc3MsIEFUS19S
T0xFX0FMRVJUKTsKIH0KQEAgLTE3NiwxMiArMjUyLDE4IEBAIHN0YXRpYyBHdGtXaWRnZXQqIHdl
YmtpdFNjcmlwdERpYWxvZ0ltcGxBZGRCdXR0b24oV2ViS2l0U2NyaXB0RGlhbG9nSW1wbCogZGlh
bG9nCiAgICAgV2ViS2l0U2NyaXB0RGlhbG9nSW1wbFByaXZhdGUqIHByaXYgPSBkaWFsb2ctPnBy
aXY7CiAgICAgR3RrV2lkZ2V0KiBidXR0b24gPSBndGtfYnV0dG9uX25ld193aXRoX2xhYmVsKHRl
eHQpOwogICAgIGd0a19idXR0b25fc2V0X3VzZV91bmRlcmxpbmUoR1RLX0JVVFRPTihidXR0b24p
LCBUUlVFKTsKLSAgICBndGtfc3R5bGVfY29udGV4dF9hZGRfY2xhc3MoZ3RrX3dpZGdldF9nZXRf
c3R5bGVfY29udGV4dChidXR0b24pLCAidGV4dC1idXR0b24iKTsKKyAgICBndGtfd2lkZ2V0X2Fk
ZF9jc3NfY2xhc3MoYnV0dG9uLCAidGV4dC1idXR0b24iKTsKKyNpZiAhVVNFKEdUSzQpCiAgICAg
Z3RrX3dpZGdldF9zZXRfY2FuX2RlZmF1bHQoYnV0dG9uLCBUUlVFKTsKKyNlbmRpZgogCiAgICAg
Z3RrX3dpZGdldF9zZXRfdmFsaWduKGJ1dHRvbiwgR1RLX0FMSUdOX0JBU0VMSU5FKTsKKyNpZiBV
U0UoR1RLNCkKKyAgICBndGtfYm94X2FwcGVuZChHVEtfQk9YKHByaXYtPmFjdGlvbkFyZWEpLCBi
dXR0b24pOworI2Vsc2UKICAgICBndGtfY29udGFpbmVyX2FkZChHVEtfQ09OVEFJTkVSKHByaXYt
PmFjdGlvbkFyZWEpLCBidXR0b24pOwogICAgIGd0a193aWRnZXRfc2hvdyhidXR0b24pOworI2Vu
ZGlmCiAKICAgICByZXR1cm4gYnV0dG9uOwogfQpAQCAtMjA1LDcgKzI4NywxMiBAQCBHdGtXaWRn
ZXQqIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxOZXcoV2ViS2l0U2NyaXB0RGlhbG9nKiBzY3JpcHRE
aWFsb2csIGNvbnN0IGNoYQogICAgIGNhc2UgV0VCS0lUX1NDUklQVF9ESUFMT0dfUFJPTVBUOgog
ICAgICAgICBkaWFsb2ctPnByaXYtPmVudHJ5ID0gZ3RrX2VudHJ5X25ldygpOwogICAgICAgICBn
dGtfZW50cnlfc2V0X3RleHQoR1RLX0VOVFJZKGRpYWxvZy0+cHJpdi0+ZW50cnkpLCBzY3JpcHRE
aWFsb2ctPmRlZmF1bHRUZXh0LmRhdGEoKSk7CisjaWYgVVNFKEdUSzQpCisgICAgICAgIGd0a19i
b3hfaW5zZXJ0X2NoaWxkX2FmdGVyKEdUS19CT1goZGlhbG9nLT5wcml2LT52Ym94KSwgZGlhbG9n
LT5wcml2LT5lbnRyeSwKKyAgICAgICAgICAgIGd0a193aWRnZXRfZ2V0X3BhcmVudChndGtfd2lk
Z2V0X2dldF9wYXJlbnQoZGlhbG9nLT5wcml2LT5zd2luZG93KSkpOworI2Vsc2UKICAgICAgICAg
Z3RrX2NvbnRhaW5lcl9hZGQoR1RLX0NPTlRBSU5FUihkaWFsb2ctPnByaXYtPnZib3gpLCBkaWFs
b2ctPnByaXYtPmVudHJ5KTsKKyNlbmRpZgogICAgICAgICBndGtfZW50cnlfc2V0X2FjdGl2YXRl
c19kZWZhdWx0KEdUS19FTlRSWShkaWFsb2ctPnByaXYtPmVudHJ5KSwgVFJVRSk7CiAgICAgICAg
IGd0a193aWRnZXRfc2hvdyhkaWFsb2ctPnByaXYtPmVudHJ5KTsKIApAQCAtMjc0LDUgKzM2MSwz
IEBAIHZvaWQgd2Via2l0U2NyaXB0RGlhbG9nSW1wbFNldEVudHJ5VGV4dChXZWJLaXRTY3JpcHRE
aWFsb2dJbXBsKiBkaWFsb2csIGNvbnN0IFN0CiAKICAgICBndGtfZW50cnlfc2V0X3RleHQoR1RL
X0VOVFJZKGRpYWxvZy0+cHJpdi0+ZW50cnkpLCB0ZXh0LnV0ZjgoKS5kYXRhKCkpOwogfQotCi0j
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
U2NyaXB0RGlhbG9nSW1wbC5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJL
aXRTY3JpcHREaWFsb2dJbXBsLmgKaW5kZXggN2MxMmYwMTZlYjQyLi43Zjg2M2M0NTAwZmYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2NyaXB0RGlh
bG9nSW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2Ny
aXB0RGlhbG9nSW1wbC5oCkBAIC0xOSw4ICsxOSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYg
IVVTRShHVEs0KQotCiAjaW5jbHVkZSAiV2ViS2l0U2NyaXB0RGlhbG9nLmgiCiAjaW5jbHVkZSAi
V2ViS2l0V2ViVmlld0RpYWxvZy5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpA
QCAtNTUsNSArNTMsMyBAQCB2b2lkIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxDb25maXJtKFdlYktp
dFNjcmlwdERpYWxvZ0ltcGwqKTsKIHZvaWQgd2Via2l0U2NyaXB0RGlhbG9nSW1wbFNldEVudHJ5
VGV4dChXZWJLaXRTY3JpcHREaWFsb2dJbXBsKiwgY29uc3QgU3RyaW5nJik7CiAKIEdfRU5EX0RF
Q0xTCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0
ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3Rr
L1dlYktpdFdlYlZpZXdCYXNlLmNwcAppbmRleCA0NzI2ZDEzNWM2MDEuLmMzYjM1OWRkZGIzZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3
QmFzZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJW
aWV3QmFzZS5jcHAKQEAgLTU3Miw2ICs1NzIsOSBAQCB2b2lkIHdlYmtpdFdlYlZpZXdCYXNlQWRk
RGlhbG9nKFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJWaWV3QmFzZSwgR3RrV2lkZ2V0KiBkaWFsbwog
ewogICAgIFdlYktpdFdlYlZpZXdCYXNlUHJpdmF0ZSogcHJpdiA9IHdlYlZpZXdCYXNlLT5wcml2
OwogICAgIHByaXYtPmRpYWxvZyA9IGRpYWxvZzsKKyNpZiBVU0UoR1RLNCkKKyAgICBnX29iamVj
dF9hZGRfd2Vha19wb2ludGVyKEdfT0JKRUNUKGRpYWxvZyksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9p
ZCoqPigmcHJpdi0+ZGlhbG9nKSk7CisjZW5kaWYKICAgICBndGtfd2lkZ2V0X3NldF9wYXJlbnQo
ZGlhbG9nLCBHVEtfV0lER0VUKHdlYlZpZXdCYXNlKSk7CiAgICAgZ3RrX3dpZGdldF9zaG93KGRp
YWxvZyk7CiAKQEAgLTU5MCwxOSArNTkzLDE0IEBAIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZpZXdC
YXNlUmVtb3ZlQ2hpbGQoV2ViS2l0V2ViVmlld0Jhc2UqIHdlYlZpZXdCYXNlLCBHdGtXaWRnCiAg
ICAgICAgIHByaXYtPmluc3BlY3RvclZpZXcgPSBudWxscHRyOwogICAgICAgICBwcml2LT5pbnNw
ZWN0b3JWaWV3U2l6ZSA9IDA7CiAgICAgfSBlbHNlIGlmIChwcml2LT5kaWFsb2cgPT0gd2lkZ2V0
KSB7CisgICAgICAgIGdfb2JqZWN0X3JlbW92ZV93ZWFrX3BvaW50ZXIoR19PQkpFQ1Qod2lkZ2V0
KSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KCZwcml2LT5kaWFsb2cpKTsKICAgICAgICAgcHJp
di0+ZGlhbG9nID0gbnVsbHB0cjsKLSAgICAgICAgaWYgKGd0a193aWRnZXRfZ2V0X3Zpc2libGUo
R1RLX1dJREdFVCh3ZWJWaWV3QmFzZSkpKQotICAgICAgICAgICAgZ3RrX3dpZGdldF9ncmFiX2Zv
Y3VzKEdUS19XSURHRVQod2ViVmlld0Jhc2UpKTsKICAgICB9IGVsc2UgaWYgKHByaXYtPmtleUJp
bmRpbmdUcmFuc2xhdG9yLndpZGdldCgpID09IHdpZGdldCkKICAgICAgICAgcHJpdi0+a2V5Qmlu
ZGluZ1RyYW5zbGF0b3IuaW52YWxpZGF0ZSgpOwogICAgIGVsc2UKICAgICAgICAgUkVMRUFTRV9B
U1NFUlRfTk9UX1JFQUNIRUQoKTsKIAotICAgIGdib29sZWFuIHdhc1Zpc2libGUgPSBndGtfd2lk
Z2V0X2dldF92aXNpYmxlKHdpZGdldCk7CiAgICAgZ3RrX3dpZGdldF91bnBhcmVudCh3aWRnZXQp
OwotCi0gICAgaWYgKHdhc1Zpc2libGUgJiYgZ3RrX3dpZGdldF9nZXRfdmlzaWJsZShHVEtfV0lE
R0VUKHdlYlZpZXdCYXNlKSkpCi0gICAgICAgIGd0a193aWRnZXRfcXVldWVfcmVzaXplKEdUS19X
SURHRVQod2ViVmlld0Jhc2UpKTsKIH0KICNlbHNlCiBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3
QmFzZUNvbnRhaW5lclJlbW92ZShHdGtDb250YWluZXIqIGNvbnRhaW5lciwgR3RrV2lkZ2V0KiB3
aWRnZXQpCkBAIC03NDIsNiArNzQwLDkgQEAgdm9pZCB3ZWJraXRXZWJWaWV3QmFzZVNuYXBzaG90
KEd0a1dpZGdldCogd2lkZ2V0LCBHdGtTbmFwc2hvdCogc25hcHNob3QpCiAKICAgICBBU1NFUlQo
ZHJhd2luZ0FyZWEtPmlzSW5BY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZSgpKTsKICAgICB3ZWJW
aWV3QmFzZS0+cHJpdi0+YWNjZWxlcmF0ZWRCYWNraW5nU3RvcmUtPnNuYXBzaG90KHNuYXBzaG90
KTsKKworICAgIGlmICh3ZWJWaWV3QmFzZS0+cHJpdi0+ZGlhbG9nKQorICAgICAgICBndGtfd2lk
Z2V0X3NuYXBzaG90X2NoaWxkKHdpZGdldCwgd2ViVmlld0Jhc2UtPnByaXYtPmRpYWxvZywgc25h
cHNob3QpOwogfQogI2Vsc2UKIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRXZWJWaWV3QmFzZURyYXco
R3RrV2lkZ2V0KiB3aWRnZXQsIGNhaXJvX3QqIGNyKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3RGlhbG9nLmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0RpYWxvZy5jcHAKaW5kZXggZTY1M2Jl
YzYxZGM4Li43ZjQ5OTJiNmZhYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9ndGsvV2ViS2l0V2ViVmlld0RpYWxvZy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3RGlhbG9nLmNwcApAQCAtMSw1ICsxLDUgQEAKIC8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTggSWdhbGlhIFMuTC4KKyAqIENvcHlyaWdodCAoQykgMjAx
OCwgMjAyMCBJZ2FsaWEgUy5MLgogICoKICAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJl
OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKICAqIG1vZGlmeSBpdCB1bmRlciB0aGUg
dGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCkBAIC0yMCwxNiArMjAsNDAg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJLaXRXZWJWaWV3RGlhbG9nLmgi
CiAKLSNpZiAhVVNFKEdUSzQpCi0KKyNpbmNsdWRlIDxXZWJDb3JlL0Zsb2F0U2l6ZS5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvR3RrVmVyc2lvbmluZy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvUmVmUHRy
Q2Fpcm8uaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9HUmVmUHRyLmg+CiAjaW5jbHVkZSA8d3RmL2ds
aWIvV1RGR1R5cGUuaD4KIAogc3RydWN0IF9XZWJLaXRXZWJWaWV3RGlhbG9nUHJpdmF0ZSB7Cisg
ICAgR3RrV2lkZ2V0KiBjaGlsZDsKKyNpZiBVU0UoR1RLNCkKKyAgICBHUmVmUHRyPEd0a0Nzc1By
b3ZpZGVyPiBjc3NQcm92aWRlcjsKKyNlbmRpZgogfTsKIAorI2lmIFVTRShHVEs0KQorV0VCS0lU
X0RFRklORV9BQlNUUkFDVF9UWVBFKFdlYktpdFdlYlZpZXdEaWFsb2csIHdlYmtpdF93ZWJfdmll
d19kaWFsb2csIEdUS19UWVBFX1dJREdFVCkKKyNlbHNlCiBXRUJLSVRfREVGSU5FX0FCU1RSQUNU
X1RZUEUoV2ViS2l0V2ViVmlld0RpYWxvZywgd2Via2l0X3dlYl92aWV3X2RpYWxvZywgR1RLX1RZ
UEVfRVZFTlRfQk9YKQorI2VuZGlmCiAKKyNpZiBVU0UoR1RLNCkKK3N0YXRpYyB2b2lkIHdlYmtp
dFdlYlZpZXdEaWFsb2dTbmFwc2hvdChHdGtXaWRnZXQqIHdpZGdldCwgR3RrU25hcHNob3QqIHNu
YXBzaG90KQoreworICAgIFdlYkNvcmU6OkZsb2F0U2l6ZSB3aWRnZXRTaXplKGd0a193aWRnZXRf
Z2V0X3dpZHRoKHdpZGdldCksIGd0a193aWRnZXRfZ2V0X2hlaWdodCh3aWRnZXQpKTsKKyAgICBn
cmFwaGVuZV9yZWN0X3QgcmVjdCA9IEdSQVBIRU5FX1JFQ1RfSU5JVCgwLCAwLCB3aWRnZXRTaXpl
LndpZHRoKCksIHdpZGdldFNpemUuaGVpZ2h0KCkpOworICAgIFJlZlB0cjxjYWlyb190PiBjciA9
IGFkb3B0UmVmKGd0a19zbmFwc2hvdF9hcHBlbmRfY2Fpcm8oc25hcHNob3QsICZyZWN0KSk7Cisg
ICAgY2Fpcm9fc2V0X29wZXJhdG9yKGNyLmdldCgpLCBDQUlST19PUEVSQVRPUl9PVkVSKTsKKyAg
ICBjYWlyb19zZXRfc291cmNlX3JnYmEoY3IuZ2V0KCksIDAsIDAsIDAsIDAuNSk7CisgICAgY2Fp
cm9fcGFpbnQoY3IuZ2V0KCkpOworCisgICAgV2ViS2l0V2ViVmlld0RpYWxvZ1ByaXZhdGUqIHBy
aXYgPSBXRUJLSVRfV0VCX1ZJRVdfRElBTE9HKHdpZGdldCktPnByaXY7CisgICAgaWYgKHByaXYt
PmNoaWxkKQorICAgICAgICBndGtfd2lkZ2V0X3NuYXBzaG90X2NoaWxkKHdpZGdldCwgcHJpdi0+
Y2hpbGQsIHNuYXBzaG90KTsKK30KKyNlbHNlCiBzdGF0aWMgZ2Jvb2xlYW4gd2Via2l0V2ViVmll
d0RpYWxvZ0RyYXcoR3RrV2lkZ2V0KiB3aWRnZXQsIGNhaXJvX3QqIGNyKQogewogICAgIGNhaXJv
X3NldF9vcGVyYXRvcihjciwgQ0FJUk9fT1BFUkFUT1JfT1ZFUik7CkBAIC00OCwxMiArNzIsMjQg
QEAgc3RhdGljIGdib29sZWFuIHdlYmtpdFdlYlZpZXdEaWFsb2dEcmF3KEd0a1dpZGdldCogd2lk
Z2V0LCBjYWlyb190KiBjcikKIAogICAgIHJldHVybiBGQUxTRTsKIH0KKyNlbmRpZgogCisjaWYg
VVNFKEdUSzQpCitzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3RGlhbG9nU2l6ZUFsbG9jYXRlKEd0
a1dpZGdldCogd2lkZ2V0LCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIGludCBiYXNlbGluZSkKKyNl
bHNlCiBzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3RGlhbG9nU2l6ZUFsbG9jYXRlKEd0a1dpZGdl
dCogd2lkZ2V0LCBHdGtBbGxvY2F0aW9uKiBhbGxvY2F0aW9uKQorI2VuZGlmCiB7CisjaWYgVVNF
KEdUSzQpCisgICAgR1RLX1dJREdFVF9DTEFTUyh3ZWJraXRfd2ViX3ZpZXdfZGlhbG9nX3BhcmVu
dF9jbGFzcyktPnNpemVfYWxsb2NhdGUod2lkZ2V0LCB3aWR0aCwgaGVpZ2h0LCBiYXNlbGluZSk7
CisgICAgR3RrQWxsb2NhdGlvbiBhbGxvY2F0aW9uU3RhY2sgPSB7IDAsIDAsIHdpZHRoLCBoZWln
aHQgfTsKKyAgICBHdGtBbGxvY2F0aW9uKiBhbGxvY2F0aW9uID0gJmFsbG9jYXRpb25TdGFjazsK
KyAgICBHdGtXaWRnZXQqIGNoaWxkID0gV0VCS0lUX1dFQl9WSUVXX0RJQUxPRyh3aWRnZXQpLT5w
cml2LT5jaGlsZDsKKyNlbHNlCiAgICAgR1RLX1dJREdFVF9DTEFTUyh3ZWJraXRfd2ViX3ZpZXdf
ZGlhbG9nX3BhcmVudF9jbGFzcyktPnNpemVfYWxsb2NhdGUod2lkZ2V0LCBhbGxvY2F0aW9uKTsK
LQogICAgIEd0a1dpZGdldCogY2hpbGQgPSBndGtfYmluX2dldF9jaGlsZChHVEtfQklOKHdpZGdl
dCkpOworI2VuZGlmCisKICAgICBpZiAoIWNoaWxkKQogICAgICAgICByZXR1cm47CiAKQEAgLTc0
LDEwICsxMTAsMjEgQEAgc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0RpYWxvZ0NvbnN0cnVjdGVk
KEdPYmplY3QqIG9iamVjdCkKIHsKICAgICBHX09CSkVDVF9DTEFTUyh3ZWJraXRfd2ViX3ZpZXdf
ZGlhbG9nX3BhcmVudF9jbGFzcyktPmNvbnN0cnVjdGVkKG9iamVjdCk7CiAKKyNpZiBVU0UoR1RL
NCkKKyAgICBndGtfd2lkZ2V0X2FkZF9jc3NfY2xhc3MoR1RLX1dJREdFVChvYmplY3QpLCAiZGlh
bG9nIik7CisgICAgZ3RrX3dpZGdldF9hZGRfY3NzX2NsYXNzKEdUS19XSURHRVQob2JqZWN0KSwg
Im1lc3NhZ2UiKTsKKyAgICBndGtfd2lkZ2V0X2FkZF9jc3NfY2xhc3MoR1RLX1dJREdFVChvYmpl
Y3QpLCBHVEtfU1RZTEVfQ0xBU1NfQ1NEKTsKKyAgICBndGtfd2lkZ2V0X3JlbW92ZV9jc3NfY2xh
c3MoR1RLX1dJREdFVChvYmplY3QpLCBHVEtfU1RZTEVfQ0xBU1NfQkFDS0dST1VORCk7CisKKyAg
ICBXZWJLaXRXZWJWaWV3RGlhbG9nUHJpdmF0ZSogcHJpdiA9IFdFQktJVF9XRUJfVklFV19ESUFM
T0cob2JqZWN0KS0+cHJpdjsKKyAgICBwcml2LT5jc3NQcm92aWRlciA9IGFkb3B0R1JlZihndGtf
Y3NzX3Byb3ZpZGVyX25ldygpKTsKKyAgICBndGtfY3NzX3Byb3ZpZGVyX2xvYWRfZnJvbV9kYXRh
KHByaXYtPmNzc1Byb3ZpZGVyLmdldCgpLCAiLmRpYWxvZy12Ym94IHsgYm9yZGVyLXJhZGl1czog
N3B4OyB9IiwgLTEpOworI2Vsc2UKICAgICBndGtfd2lkZ2V0X3NldF9hcHBfcGFpbnRhYmxlKEdU
S19XSURHRVQob2JqZWN0KSwgVFJVRSk7CiAKICAgICBndGtfc3R5bGVfY29udGV4dF9hZGRfY2xh
c3MoZ3RrX3dpZGdldF9nZXRfc3R5bGVfY29udGV4dChHVEtfV0lER0VUKG9iamVjdCkpLCBHVEtf
U1RZTEVfQ0xBU1NfQ1NEKTsKICAgICBndGtfc3R5bGVfY29udGV4dF9hZGRfY2xhc3MoZ3RrX3dp
ZGdldF9nZXRfc3R5bGVfY29udGV4dChHVEtfV0lER0VUKG9iamVjdCkpLCBHVEtfU1RZTEVfQ0xB
U1NfQkFDS0dST1VORCk7CisjZW5kaWYKIH0KIAogc3RhdGljIHZvaWQgd2Via2l0X3dlYl92aWV3
X2RpYWxvZ19jbGFzc19pbml0KFdlYktpdFdlYlZpZXdEaWFsb2dDbGFzcyoga2xhc3MpCkBAIC04
NiwxMCArMTMzLDM1IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF93ZWJfdmlld19kaWFsb2dfY2xhc3Nf
aW5pdChXZWJLaXRXZWJWaWV3RGlhbG9nQ2xhc3MqIGtsYXNzKQogICAgIG9iamVjdENsYXNzLT5j
b25zdHJ1Y3RlZCA9IHdlYmtpdFdlYlZpZXdEaWFsb2dDb25zdHJ1Y3RlZDsKIAogICAgIEd0a1dp
ZGdldENsYXNzKiB3aWRnZXRDbGFzcyA9IEdUS19XSURHRVRfQ0xBU1Moa2xhc3MpOworI2lmIFVT
RShHVEs0KQorICAgIHdpZGdldENsYXNzLT5zbmFwc2hvdCA9IHdlYmtpdFdlYlZpZXdEaWFsb2dT
bmFwc2hvdDsKKyNlbHNlCiAgICAgd2lkZ2V0Q2xhc3MtPmRyYXcgPSB3ZWJraXRXZWJWaWV3RGlh
bG9nRHJhdzsKKyNlbmRpZgogICAgIHdpZGdldENsYXNzLT5zaXplX2FsbG9jYXRlID0gd2Via2l0
V2ViVmlld0RpYWxvZ1NpemVBbGxvY2F0ZTsKIAorI2lmIFVTRShHVEs0KQorICAgIGd0a193aWRn
ZXRfY2xhc3Nfc2V0X2Nzc19uYW1lKHdpZGdldENsYXNzLCAid2luZG93Iik7CisjZWxzZQogICAg
IGd0a193aWRnZXRfY2xhc3Nfc2V0X2Nzc19uYW1lKHdpZGdldENsYXNzLCAibWVzc2FnZWRpYWxv
ZyIpOworI2VuZGlmCit9CisKKyNpZiBVU0UoR1RLNCkKK3ZvaWQgd2Via2l0V2ViVmlld0RpYWxv
Z1NldENoaWxkKFdlYktpdFdlYlZpZXdEaWFsb2cqIGRpYWxvZywgR3RrV2lkZ2V0KiBjaGlsZCkK
K3sKKyAgICBXZWJLaXRXZWJWaWV3RGlhbG9nUHJpdmF0ZSogcHJpdiA9IGRpYWxvZy0+cHJpdjsK
KyAgICBnX2NsZWFyX3BvaW50ZXIoJnByaXYtPmNoaWxkLCBndGtfd2lkZ2V0X3VucGFyZW50KTsK
KyAgICBpZiAoY2hpbGQpIHsKKyAgICAgICAgZ3RrX3dpZGdldF9zZXRfcGFyZW50KGNoaWxkLCBH
VEtfV0lER0VUKGRpYWxvZykpOworICAgICAgICBndGtfd2lkZ2V0X2FkZF9jc3NfY2xhc3MoY2hp
bGQsIEdUS19TVFlMRV9DTEFTU19CQUNLR1JPVU5EKTsKKyAgICAgICAgZ3RrX3N0eWxlX2NvbnRl
eHRfYWRkX3Byb3ZpZGVyKGd0a193aWRnZXRfZ2V0X3N0eWxlX2NvbnRleHQoY2hpbGQpLCBHVEtf
U1RZTEVfUFJPVklERVIocHJpdi0+Y3NzUHJvdmlkZXIuZ2V0KCkpLCBHVEtfU1RZTEVfUFJPVklE
RVJfUFJJT1JJVFlfQVBQTElDQVRJT04pOworICAgICAgICBwcml2LT5jaGlsZCA9IGNoaWxkOwor
ICAgIH0KIH0KIAorR3RrV2lkZ2V0KiB3ZWJraXRXZWJWaWV3RGlhbG9nR2V0Q2hpbGQoV2ViS2l0
V2ViVmlld0RpYWxvZyogZGlhbG9nKQoreworICAgIHJldHVybiBkaWFsb2ctPnByaXYtPmNoaWxk
OworfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3Rr
L1dlYktpdFdlYlZpZXdEaWFsb2cuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsv
V2ViS2l0V2ViVmlld0RpYWxvZy5oCmluZGV4IDZhN2UwNjQ1ODlhYS4uYThmYjc4NWRlZDk2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdE
aWFsb2cuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZp
ZXdEaWFsb2cuaApAQCAtMTksOCArMTksNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmICFVU0Uo
R1RLNCkKLQogI2luY2x1ZGUgPGd0ay9ndGsuaD4KIAogR19CRUdJTl9ERUNMUwpAQCAtMzcsMTcg
KzM1LDI3IEBAIHR5cGVkZWYgc3RydWN0IF9XZWJLaXRXZWJWaWV3RGlhbG9nQ2xhc3MgICBXZWJL
aXRXZWJWaWV3RGlhbG9nQ2xhc3M7CiB0eXBlZGVmIHN0cnVjdCBfV2ViS2l0V2ViVmlld0RpYWxv
Z1ByaXZhdGUgV2ViS2l0V2ViVmlld0RpYWxvZ1ByaXZhdGU7CiAKIHN0cnVjdCBfV2ViS2l0V2Vi
Vmlld0RpYWxvZyB7CisjaWYgVVNFKEdUSzQpCisgICAgR3RrV2lkZ2V0IHBhcmVudDsKKyNlbHNl
CiAgICAgR3RrRXZlbnRCb3ggcGFyZW50OworI2VuZGlmCiAKICAgICBXZWJLaXRXZWJWaWV3RGlh
bG9nUHJpdmF0ZSogcHJpdjsKIH07CiAKIHN0cnVjdCBfV2ViS2l0V2ViVmlld0RpYWxvZ0NsYXNz
IHsKKyNpZiBVU0UoR1RLNCkKKyAgICBHdGtXaWRnZXRDbGFzcyBwYXJlbnRDbGFzczsKKyNlbHNl
CiAgICAgR3RrRXZlbnRCb3hDbGFzcyBwYXJlbnRDbGFzczsKKyNlbmRpZgogfTsKIAogR1R5cGUg
d2Via2l0X3dlYl92aWV3X2RpYWxvZ19nZXRfdHlwZSgpOworI2lmIFVTRShHVEs0KQordm9pZCB3
ZWJraXRXZWJWaWV3RGlhbG9nU2V0Q2hpbGQoV2ViS2l0V2ViVmlld0RpYWxvZyosIEd0a1dpZGdl
dCopOworR3RrV2lkZ2V0KiB3ZWJraXRXZWJWaWV3RGlhbG9nR2V0Q2hpbGQoV2ViS2l0V2ViVmll
d0RpYWxvZyopOworI2VuZGlmCiAKIEdfRU5EX0RFQ0xTCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3R3RrLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0d0ay5jcHAKaW5kZXgg
ODcwNDMyNDhiY2QzLi5lZjNhMWVhZjU1MTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0d0ay5jcHAKKysrIGIvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3R3RrLmNwcApAQCAtNDMsMTIgKzQzLDEwIEBA
IGdib29sZWFuIHdlYmtpdFdlYlZpZXdBdXRoZW50aWNhdGUoV2ViS2l0V2ViVmlldyogd2ViVmll
dywgV2ViS2l0QXV0aGVudGljYXRpb25SCiAKIGdib29sZWFuIHdlYmtpdFdlYlZpZXdTY3JpcHRE
aWFsb2coV2ViS2l0V2ViVmlldyogd2ViVmlldywgV2ViS2l0U2NyaXB0RGlhbG9nKiBzY3JpcHRE
aWFsb2cpCiB7Ci0jaWYgIVVTRShHVEs0KQogICAgIEdVbmlxdWVQdHI8Y2hhcj4gdGl0bGUoZ19z
dHJkdXBfcHJpbnRmKCJKYXZhU2NyaXB0IC0gJXMiLCB3ZWJraXRXZWJWaWV3R2V0UGFnZSh3ZWJW
aWV3KS5wYWdlTG9hZFN0YXRlKCkudXJsKCkudXRmOCgpLmRhdGEoKSkpOwogICAgIC8vIExpbWl0
IHNjcmlwdCBkaWFsb2cgc2l6ZSB0byA4MCUgb2YgdGhlIHdlYiB2aWV3IHNpemUuCiAgICAgR3Rr
UmVxdWlzaXRpb24gbWF4U2l6ZSA9IHsgc3RhdGljX2Nhc3Q8aW50PihndGtfd2lkZ2V0X2dldF9h
bGxvY2F0ZWRfd2lkdGgoR1RLX1dJREdFVCh3ZWJWaWV3KSkgKiAwLjgwKSwgc3RhdGljX2Nhc3Q8
aW50PihndGtfd2lkZ2V0X2dldF9hbGxvY2F0ZWRfaGVpZ2h0KEdUS19XSURHRVQod2ViVmlldykp
ICogMC44MCkgfTsKICAgICB3ZWJraXRXZWJWaWV3QmFzZUFkZERpYWxvZyhXRUJLSVRfV0VCX1ZJ
RVdfQkFTRSh3ZWJWaWV3KSwgd2Via2l0U2NyaXB0RGlhbG9nSW1wbE5ldyhzY3JpcHREaWFsb2cs
IHRpdGxlLmdldCgpLCAmbWF4U2l6ZSkpOwotI2VuZGlmCiAKICAgICByZXR1cm4gVFJVRTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400449</attachid>
            <date>2020-05-28 06:25:55 -0700</date>
            <delta_ts>2020-05-28 14:42:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wkgtk4-script-dialogs.diff</filename>
            <type>text/plain</type>
            <size>24187</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyZjIyNjg4OWFhMDIuLjM2N2M0MDYxNmE0MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE5IEBACisyMDIwLTA1LTI3ICBDYXJsb3MgR2FyY2lhIENhbXBvcyAgPGNnYXJjaWFA
aWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLNF0gSW1wbGVtZW50IHNjcmlwdCBkaWFsb2dzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTIzMTgKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgbW9yZSBk
ZWZpbml0aW9ucyB0byBhdm9pZCBpZmRlZnMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvR3Rr
VmVyc2lvbmluZy5oOgorICAgICAgICAoZ3RrX2VudHJ5X3NldF90ZXh0KToKKyAgICAgICAgKGd0
a19lbnRyeV9nZXRfdGV4dCk6CisgICAgICAgIChndGtfbGFiZWxfc2V0X2xpbmVfd3JhcCk6Cisg
ICAgICAgIChndGtfd2luZG93X3NldF9kZWZhdWx0KToKKyAgICAgICAgKGd0a193aWRnZXRfYWRk
X2Nzc19jbGFzcyk6CisKIDIwMjAtMDUtMjcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNp
YUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEs0XSBNYWtlIFBvaW50ZXJMb2NrIHdvcmsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9HdGtWZXJzaW9uaW5nLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrVmVyc2lvbmluZy5oCmluZGV4IDFjNDI4OTY5
YWNlZS4uMmJmMTcwNjFjODI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
dGsvR3RrVmVyc2lvbmluZy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9HdGtW
ZXJzaW9uaW5nLmgKQEAgLTg3LDYgKzg3LDMwIEBAIGd0a193aWRnZXRfcXVldWVfcmVzaXplX25v
X3JlZHJhdyhHdGtXaWRnZXQqIHdpZGdldCkKICAgICBndGtfd2lkZ2V0X3F1ZXVlX3Jlc2l6ZSh3
aWRnZXQpOwogfQogCitzdGF0aWMgaW5saW5lIHZvaWQKK2d0a19lbnRyeV9zZXRfdGV4dChHdGtF
bnRyeSogZW50cnksIGNvbnN0IGNoYXIqIHRleHQpCit7CisgICAgZ3RrX2VkaXRhYmxlX3NldF90
ZXh0KEdUS19FRElUQUJMRShlbnRyeSksIHRleHQpOworfQorCitzdGF0aWMgaW5saW5lIGNvbnN0
IGNoYXIqCitndGtfZW50cnlfZ2V0X3RleHQoR3RrRW50cnkqIGVudHJ5KQoreworICAgIHJldHVy
biBndGtfZWRpdGFibGVfZ2V0X3RleHQoR1RLX0VESVRBQkxFKGVudHJ5KSk7Cit9CisKK3N0YXRp
YyBpbmxpbmUgdm9pZAorZ3RrX2xhYmVsX3NldF9saW5lX3dyYXAoR3RrTGFiZWwqIGxhYmVsLCBn
Ym9vbGVhbiBlbmFibGUpCit7CisgICAgZ3RrX2xhYmVsX3NldF93cmFwKGxhYmVsLCBlbmFibGUp
OworfQorCitzdGF0aWMgaW5saW5lIHZvaWQKK2d0a193aW5kb3dfc2V0X2RlZmF1bHQoR3RrV2lu
ZG93KiB3aW5kb3csIEd0a1dpZGdldCogd2lkZ2V0KQoreworICAgIGd0a193aW5kb3dfc2V0X2Rl
ZmF1bHRfd2lkZ2V0KHdpbmRvdywgd2lkZ2V0KTsKK30KKwogc3RhdGljIGlubGluZSBnYm9vbGVh
bgogZ2RrX2V2ZW50X2dldF9zdGF0ZShjb25zdCBHZGtFdmVudCAqZXZlbnQsIEdka01vZGlmaWVy
VHlwZSAqc3RhdGUpCiB7CkBAIC0xNTksNCArMTgzLDEyIEBAIGdka19ldmVudF9nZXRfa2V5Y29k
ZShjb25zdCBHZGtFdmVudCogZXZlbnQsIGd1aW50MTYqIGtleWNvZGUpCiAgICAgcmV0dXJuIFRS
VUU7CiB9CiAKKyNlbHNlIC8vIFVTRShHVEs0KQorCitzdGF0aWMgaW5saW5lIHZvaWQKK2d0a193
aWRnZXRfYWRkX2Nzc19jbGFzcyhHdGtXaWRnZXQqIHdpZGdldCwgY29uc3QgY2hhciogbmFtZSkK
K3sKKyAgICBndGtfc3R5bGVfY29udGV4dF9hZGRfY2xhc3MoZ3RrX3dpZGdldF9nZXRfc3R5bGVf
Y29udGV4dCh3aWRnZXQpLCBuYW1lKTsKK30KKwogI2VuZGlmIC8vIFVTRShHVEs0KQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpp
bmRleCA5OTNjY2QzZWY4NzQuLjE1YTQyNjMxMWM5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzOCBA
QAorMjAyMC0wNS0yNyAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW0dUSzRdIEltcGxlbWVudCBzY3JpcHQgZGlhbG9ncworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyMzE4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRhcHQgdG8gdGhlIEdUSzQgQVBJ
IGFuZCB0aGVtZSBjaGFuZ2VzLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
U2NyaXB0RGlhbG9nSW1wbC5jcHA6CisgICAgICAgICh3ZWJraXRTY3JpcHREaWFsb2dJbXBsQ2xv
c2UpOgorICAgICAgICAod2Via2l0U2NyaXB0RGlhbG9nSW1wbEtleVByZXNzZWQpOgorICAgICAg
ICAod2Via2l0U2NyaXB0RGlhbG9nSW1wbE1hcCk6CisgICAgICAgICh3ZWJraXRTY3JpcHREaWFs
b2dJbXBsQ29uc3RydWN0ZWQpOgorICAgICAgICAod2Via2l0U2NyaXB0RGlhbG9nSW1wbERpc3Bv
c2UpOgorICAgICAgICAod2Via2l0X3NjcmlwdF9kaWFsb2dfaW1wbF9jbGFzc19pbml0KToKKyAg
ICAgICAgKHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxBZGRCdXR0b24pOgorICAgICAgICAod2Via2l0
U2NyaXB0RGlhbG9nSW1wbE5ldyk6CisgICAgICAgICh3ZWJraXRTY3JpcHREaWFsb2dJbXBsU2V0
RW50cnlUZXh0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRTY3JpcHREaWFs
b2dJbXBsLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2Uu
Y3BwOgorICAgICAgICAod2Via2l0V2ViVmlld0Jhc2VBZGREaWFsb2cpOgorICAgICAgICAod2Vi
a2l0V2ViVmlld0Jhc2VSZW1vdmVDaGlsZCk6CisgICAgICAgICh3ZWJraXRXZWJWaWV3QmFzZVNu
YXBzaG90KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3RGlhbG9n
LmNwcDoKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdEaWFsb2dTbmFwc2hvdCk6CisgICAgICAgICh3
ZWJraXRXZWJWaWV3RGlhbG9nU2l6ZUFsbG9jYXRlKToKKyAgICAgICAgKHdlYmtpdFdlYlZpZXdE
aWFsb2dDb25zdHJ1Y3RlZCk6CisgICAgICAgICh3ZWJraXRfd2ViX3ZpZXdfZGlhbG9nX2NsYXNz
X2luaXQpOgorICAgICAgICAod2Via2l0V2ViVmlld0RpYWxvZ1NldENoaWxkKToKKyAgICAgICAg
KHdlYmtpdFdlYlZpZXdEaWFsb2dHZXRDaGlsZCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0V2ViVmlld0RpYWxvZy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZ3RrL1dl
YktpdFdlYlZpZXdHdGsuY3BwOgorICAgICAgICAod2Via2l0V2ViVmlld1NjcmlwdERpYWxvZyk6
CisKIDIwMjAtMDUtMjcgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgogCiAgICAgICAgIFtHVEs0XSBNYWtlIFBvaW50ZXJMb2NrIHdvcmsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2NyaXB0RGlhbG9nR3RrLmNwcCBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2NyaXB0RGlhbG9nR3RrLmNw
cAppbmRleCBjMzY5MGQxYWFkOGUuLjdlZDQzMDhiZDczNCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRTY3JpcHREaWFsb2dHdGsuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0U2NyaXB0RGlhbG9nR3RrLmNwcApA
QCAtMjUsMzcgKzI1LDI3IEBACiAKIHZvaWQgd2Via2l0U2NyaXB0RGlhbG9nQWNjZXB0KFdlYktp
dFNjcmlwdERpYWxvZyogc2NyaXB0RGlhbG9nKQogewotI2lmICFVU0UoR1RLNCkKICAgICBpZiAo
IVdFQktJVF9JU19TQ1JJUFRfRElBTE9HX0lNUEwoc2NyaXB0RGlhbG9nLT5uYXRpdmVEaWFsb2cp
KQogICAgICAgICByZXR1cm47CiAgICAgd2Via2l0U2NyaXB0RGlhbG9nSW1wbENvbmZpcm0oV0VC
S0lUX1NDUklQVF9ESUFMT0dfSU1QTChzY3JpcHREaWFsb2ctPm5hdGl2ZURpYWxvZykpOwotI2Vu
ZGlmCiB9CiAKIHZvaWQgd2Via2l0U2NyaXB0RGlhbG9nRGlzbWlzcyhXZWJLaXRTY3JpcHREaWFs
b2cqIHNjcmlwdERpYWxvZykKIHsKLSNpZiAhVVNFKEdUSzQpCiAgICAgaWYgKCFXRUJLSVRfSVNf
U0NSSVBUX0RJQUxPR19JTVBMKHNjcmlwdERpYWxvZy0+bmF0aXZlRGlhbG9nKSkKICAgICAgICAg
cmV0dXJuOwogICAgIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxDYW5jZWwoV0VCS0lUX1NDUklQVF9E
SUFMT0dfSU1QTChzY3JpcHREaWFsb2ctPm5hdGl2ZURpYWxvZykpOwotI2VuZGlmCiB9CiAKIHZv
aWQgd2Via2l0U2NyaXB0RGlhbG9nU2V0VXNlcklucHV0KFdlYktpdFNjcmlwdERpYWxvZyogc2Ny
aXB0RGlhbG9nLCBjb25zdCBTdHJpbmcmIHVzZXJJbnB1dCkKIHsKLSNpZiAhVVNFKEdUSzQpCiAg
ICAgaWYgKCFXRUJLSVRfSVNfU0NSSVBUX0RJQUxPR19JTVBMKHNjcmlwdERpYWxvZy0+bmF0aXZl
RGlhbG9nKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgd2Via2l0U2NyaXB0RGlhbG9nSW1wbFNl
dEVudHJ5VGV4dChXRUJLSVRfU0NSSVBUX0RJQUxPR19JTVBMKHNjcmlwdERpYWxvZy0+bmF0aXZl
RGlhbG9nKSwgdXNlcklucHV0KTsKLSNlbmRpZgogfQogCiBib29sIHdlYmtpdFNjcmlwdERpYWxv
Z0lzVXNlckhhbmRsZWQoV2ViS2l0U2NyaXB0RGlhbG9nKiBzY3JpcHREaWFsb2cpCiB7Ci0jaWYg
IVVTRShHVEs0KQogICAgIHJldHVybiAhV0VCS0lUX0lTX1NDUklQVF9ESUFMT0dfSU1QTChzY3Jp
cHREaWFsb2ctPm5hdGl2ZURpYWxvZyk7Ci0jZWxzZQotICAgIHJldHVybiB0cnVlOwotI2VuZGlm
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFNj
cmlwdERpYWxvZ0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJL
aXRTY3JpcHREaWFsb2dJbXBsLmNwcAppbmRleCBiNjc1NDg2Y2M4MzAuLjUzZWI1NTc2YmQ3YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRTY3JpcHRE
aWFsb2dJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktp
dFNjcmlwdERpYWxvZ0ltcGwuY3BwCkBAIC0yMCw5ICsyMCw5IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiV2ViS2l0U2NyaXB0RGlhbG9nSW1wbC5oIgogCi0jaWYgIVVTRShHVEs0
KQotCiAjaW5jbHVkZSAiV2ViS2l0U2NyaXB0RGlhbG9nUHJpdmF0ZS5oIgorI2luY2x1ZGUgPFdl
YkNvcmUvR3RrVXRpbGl0aWVzLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9HdGtWZXJzaW9uaW5nLmg+
CiAjaW5jbHVkZSA8Z2xpYi9naTE4bi1saWIuaD4KICNpbmNsdWRlIDx3dGYvZ2xpYi9XVEZHVHlw
ZS5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KQEAgLTQzLDkgKzQzLDI0IEBAIFdF
QktJVF9ERUZJTkVfVFlQRShXZWJLaXRTY3JpcHREaWFsb2dJbXBsLCB3ZWJraXRfc2NyaXB0X2Rp
YWxvZ19pbXBsLCBXRUJLSVRfVFlQCiBzdGF0aWMgdm9pZCB3ZWJraXRTY3JpcHREaWFsb2dJbXBs
Q2xvc2UoV2ViS2l0U2NyaXB0RGlhbG9nSW1wbCogZGlhbG9nKQogewogICAgIHdlYmtpdF9zY3Jp
cHRfZGlhbG9nX2Nsb3NlKGRpYWxvZy0+cHJpdi0+ZGlhbG9nKTsKKyNpZiBVU0UoR1RLNCkKKyAg
ICBndGtfd2lkZ2V0X3VucGFyZW50KEdUS19XSURHRVQoZGlhbG9nKSk7CisjZWxzZQogICAgIGd0
a193aWRnZXRfZGVzdHJveShHVEtfV0lER0VUKGRpYWxvZykpOworI2VuZGlmCiB9CiAKKyNpZiBV
U0UoR1RLNCkKK3N0YXRpYyBnYm9vbGVhbiB3ZWJraXRTY3JpcHREaWFsb2dJbXBsS2V5UHJlc3Nl
ZChXZWJLaXRTY3JpcHREaWFsb2dJbXBsKiBkaWFsb2csIHVuc2lnbmVkIGtleXZhbCwgdW5zaWdu
ZWQsIEdka01vZGlmaWVyVHlwZSwgR3RrRXZlbnRDb250cm9sbGVyKikKK3sKKyAgICBpZiAoa2V5
dmFsID09IEdES19LRVlfRXNjYXBlKSB7CisgICAgICAgIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxD
bG9zZShkaWFsb2cpOworICAgICAgICByZXR1cm4gR0RLX0VWRU5UX1NUT1A7CisgICAgfQorCisg
ICAgcmV0dXJuIEdES19FVkVOVF9QUk9QQUdBVEU7Cit9CisjZWxzZQogc3RhdGljIGdib29sZWFu
IHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxLZXlQcmVzc0V2ZW50KEd0a1dpZGdldCogd2lkZ2V0LCBH
ZGtFdmVudEtleSoga2V5RXZlbnQpCiB7CiAgICAgZ3VpbnQga2V5dmFsOwpAQCAtNTcsMTEgKzcy
LDE0IEBAIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRTY3JpcHREaWFsb2dJbXBsS2V5UHJlc3NFdmVu
dChHdGtXaWRnZXQqIHdpZGdldCwgR2RrRXZlbnRLCiAKICAgICByZXR1cm4gR0RLX0VWRU5UX1BS
T1BBR0FURTsKIH0KKyNlbmRpZgogCiBzdGF0aWMgdm9pZCB3ZWJraXRTY3JpcHREaWFsb2dJbXBs
TWFwKEd0a1dpZGdldCogd2lkZ2V0KQogewogICAgIFdlYktpdFNjcmlwdERpYWxvZ0ltcGxQcml2
YXRlKiBwcml2ID0gV0VCS0lUX1NDUklQVF9ESUFMT0dfSU1QTCh3aWRnZXQpLT5wcml2OwotICAg
IGd0a193aWRnZXRfZ3JhYl9kZWZhdWx0KHByaXYtPmRlZmF1bHRCdXR0b24pOworICAgIGF1dG8q
IHRvcGxldmVsID0gZ3RrX3dpZGdldF9nZXRfdG9wbGV2ZWwod2lkZ2V0KTsKKyAgICBpZiAoV2Vi
Q29yZTo6d2lkZ2V0SXNPbnNjcmVlblRvcGxldmVsV2luZG93KHRvcGxldmVsKSkKKyAgICAgICAg
Z3RrX3dpbmRvd19zZXRfZGVmYXVsdChHVEtfV0lORE9XKHRvcGxldmVsKSwgcHJpdi0+ZGVmYXVs
dEJ1dHRvbik7CiAKICAgICBzd2l0Y2ggKHByaXYtPmRpYWxvZy0+dHlwZSkgewogICAgIGNhc2Ug
V0VCS0lUX1NDUklQVF9ESUFMT0dfQUxFUlQ6CkBAIC04NSw1NyArMTAzLDEwOSBAQCBzdGF0aWMg
dm9pZCB3ZWJraXRTY3JpcHREaWFsb2dJbXBsQ29uc3RydWN0ZWQoR09iamVjdCogb2JqZWN0KQog
ICAgIFdlYktpdFNjcmlwdERpYWxvZ0ltcGxQcml2YXRlKiBwcml2ID0gZGlhbG9nLT5wcml2Owog
CiAgICAgcHJpdi0+dmJveCA9IGd0a19ib3hfbmV3KEdUS19PUklFTlRBVElPTl9WRVJUSUNBTCwg
MjApOworI2lmIFVTRShHVEs0KQorICAgIHdlYmtpdFdlYlZpZXdEaWFsb2dTZXRDaGlsZChXRUJL
SVRfV0VCX1ZJRVdfRElBTE9HKG9iamVjdCksIHByaXYtPnZib3gpOworICAgIGd0a193aWRnZXRf
YWRkX2Nzc19jbGFzcyhwcml2LT52Ym94LCAiZGlhbG9nLXZib3giKTsKKyNlbHNlCiAgICAgZ3Rr
X2NvbnRhaW5lcl9zZXRfYm9yZGVyX3dpZHRoKEdUS19DT05UQUlORVIocHJpdi0+dmJveCksIDAp
OwogICAgIGd0a19jb250YWluZXJfYWRkKEdUS19DT05UQUlORVIoZGlhbG9nKSwgcHJpdi0+dmJv
eCk7CiAgICAgZ3RrX3dpZGdldF9zaG93KHByaXYtPnZib3gpOworI2VuZGlmCiAKICAgICBHdGtX
aWRnZXQqIGJveCA9IGd0a19ib3hfbmV3KEdUS19PUklFTlRBVElPTl9IT1JJWk9OVEFMLCAwKTsK
LSAgICBndGtfc3R5bGVfY29udGV4dF9hZGRfY2xhc3MoZ3RrX3dpZGdldF9nZXRfc3R5bGVfY29u
dGV4dChib3gpLCBHVEtfU1RZTEVfQ0xBU1NfVElUTEVCQVIpOworICAgIGd0a193aWRnZXRfYWRk
X2Nzc19jbGFzcyhib3gsIEdUS19TVFlMRV9DTEFTU19USVRMRUJBUik7CiAgICAgZ3RrX3dpZGdl
dF9zZXRfc2l6ZV9yZXF1ZXN0KGJveCwgLTEsIDE2KTsKICAgICBwcml2LT50aXRsZSA9IGd0a19s
YWJlbF9uZXcobnVsbHB0cik7CiAgICAgZ3RrX2xhYmVsX3NldF9lbGxpcHNpemUoR1RLX0xBQkVM
KHByaXYtPnRpdGxlKSwgUEFOR09fRUxMSVBTSVpFX0VORCk7CiAgICAgZ3RrX3dpZGdldF9zZXRf
bWFyZ2luX3RvcChwcml2LT50aXRsZSwgNik7CiAgICAgZ3RrX3dpZGdldF9zZXRfbWFyZ2luX2Jv
dHRvbShwcml2LT50aXRsZSwgNik7Ci0gICAgZ3RrX3N0eWxlX2NvbnRleHRfYWRkX2NsYXNzKGd0
a193aWRnZXRfZ2V0X3N0eWxlX2NvbnRleHQocHJpdi0+dGl0bGUpLCBHVEtfU1RZTEVfQ0xBU1Nf
VElUTEUpOworICAgIGd0a193aWRnZXRfYWRkX2Nzc19jbGFzcyhwcml2LT50aXRsZSwgR1RLX1NU
WUxFX0NMQVNTX1RJVExFKTsKKyNpZiBVU0UoR1RLNCkKKyAgICBndGtfd2lkZ2V0X3NldF9oZXhw
YW5kKHByaXYtPnRpdGxlLCBUUlVFKTsKKyAgICBndGtfd2lkZ2V0X3NldF9oYWxpZ24ocHJpdi0+
dGl0bGUsIEdUS19BTElHTl9DRU5URVIpOworICAgIGd0a19ib3hfYXBwZW5kKEdUS19CT1goYm94
KSwgcHJpdi0+dGl0bGUpOworI2Vsc2UKICAgICBndGtfYm94X3NldF9jZW50ZXJfd2lkZ2V0KEdU
S19CT1goYm94KSwgcHJpdi0+dGl0bGUpOwogICAgIGd0a193aWRnZXRfc2hvdyhwcml2LT50aXRs
ZSk7CisjZW5kaWYKKyNpZiBVU0UoR1RLNCkKKyAgICBndGtfYm94X2FwcGVuZChHVEtfQk9YKHBy
aXYtPnZib3gpLCBib3gpOworI2Vsc2UKICAgICBndGtfYm94X3BhY2tfc3RhcnQoR1RLX0JPWChw
cml2LT52Ym94KSwgYm94LCBUUlVFLCBGQUxTRSwgMCk7CiAgICAgZ3RrX3dpZGdldF9zaG93KGJv
eCk7CisjZW5kaWYKIAogICAgIGJveCA9IGd0a19ib3hfbmV3KEdUS19PUklFTlRBVElPTl9IT1JJ
Wk9OVEFMLCAzMCk7CiAgICAgZ3RrX3dpZGdldF9zZXRfbWFyZ2luX3N0YXJ0KGJveCwgMzApOwog
ICAgIGd0a193aWRnZXRfc2V0X21hcmdpbl9lbmQoYm94LCAzMCk7CisjaWYgVVNFKEdUSzQpCisg
ICAgZ3RrX2JveF9hcHBlbmQoR1RLX0JPWChwcml2LT52Ym94KSwgYm94KTsKKyNlbHNlCiAgICAg
Z3RrX2JveF9wYWNrX3N0YXJ0KEdUS19CT1gocHJpdi0+dmJveCksIGJveCwgVFJVRSwgRkFMU0Us
IDApOwogICAgIGd0a193aWRnZXRfc2hvdyhib3gpOworI2VuZGlmCiAKICAgICBHdGtXaWRnZXQq
IG1lc3NhZ2VBcmVhID0gZ3RrX2JveF9uZXcoR1RLX09SSUVOVEFUSU9OX1ZFUlRJQ0FMLCAxMCk7
CisjaWYgVVNFKEdUSzQpCisgICAgZ3RrX2JveF9hcHBlbmQoR1RLX0JPWChib3gpLCBtZXNzYWdl
QXJlYSk7CisjZWxzZQogICAgIGd0a19ib3hfcGFja19zdGFydChHVEtfQk9YKGJveCksIG1lc3Nh
Z2VBcmVhLCBUUlVFLCBUUlVFLCAwKTsKICAgICBndGtfd2lkZ2V0X3Nob3cobWVzc2FnZUFyZWEp
OworI2VuZGlmCiAKICAgICBwcml2LT5zd2luZG93ID0gZ3RrX3Njcm9sbGVkX3dpbmRvd19uZXco
bnVsbHB0ciwgbnVsbHB0cik7CiAgICAgZ3RrX3Njcm9sbGVkX3dpbmRvd19zZXRfcG9saWN5KEdU
S19TQ1JPTExFRF9XSU5ET1cocHJpdi0+c3dpbmRvdyksIEdUS19QT0xJQ1lfQVVUT01BVElDLCBH
VEtfUE9MSUNZX0FVVE9NQVRJQyk7CisjaWYgVVNFKEdUSzQpCisgICAgZ3RrX2JveF9hcHBlbmQo
R1RLX0JPWChtZXNzYWdlQXJlYSksIHByaXYtPnN3aW5kb3cpOworI2Vsc2UKICAgICBndGtfYm94
X3BhY2tfc3RhcnQoR1RLX0JPWChtZXNzYWdlQXJlYSksIHByaXYtPnN3aW5kb3csIFRSVUUsIFRS
VUUsIDApOwogICAgIGd0a193aWRnZXRfc2hvdyhwcml2LT5zd2luZG93KTsKKyNlbmRpZgogCiAg
ICAgcHJpdi0+bGFiZWwgPSBndGtfbGFiZWxfbmV3KG51bGxwdHIpOwogICAgIGd0a193aWRnZXRf
c2V0X2hhbGlnbihwcml2LT5sYWJlbCwgR1RLX0FMSUdOX0NFTlRFUik7CiAgICAgZ3RrX3dpZGdl
dF9zZXRfdmFsaWduKHByaXYtPmxhYmVsLCBHVEtfQUxJR05fU1RBUlQpOwogICAgIGd0a19sYWJl
bF9zZXRfbGluZV93cmFwKEdUS19MQUJFTChwcml2LT5sYWJlbCksIFRSVUUpOwogICAgIGd0a19s
YWJlbF9zZXRfbWF4X3dpZHRoX2NoYXJzKEdUS19MQUJFTChwcml2LT5sYWJlbCksIDYwKTsKKyNp
ZiBVU0UoR1RLNCkKKyAgICBndGtfd2lkZ2V0X3NldF9oZXhwYW5kKHByaXYtPmxhYmVsLCBUUlVF
KTsKKyAgICBndGtfc2Nyb2xsZWRfd2luZG93X3NldF9jaGlsZChHVEtfU0NST0xMRURfV0lORE9X
KHByaXYtPnN3aW5kb3cpLCBwcml2LT5sYWJlbCk7CisjZWxzZQogICAgIGd0a19jb250YWluZXJf
YWRkKEdUS19DT05UQUlORVIocHJpdi0+c3dpbmRvdyksIHByaXYtPmxhYmVsKTsKICAgICBndGtf
d2lkZ2V0X3Nob3cocHJpdi0+bGFiZWwpOworI2VuZGlmCiAKICAgICBHdGtXaWRnZXQqIGFjdGlv
bkJveCA9IGd0a19ib3hfbmV3KEdUS19PUklFTlRBVElPTl9IT1JJWk9OVEFMLCAwKTsKLSAgICBn
dGtfc3R5bGVfY29udGV4dF9hZGRfY2xhc3MoZ3RrX3dpZGdldF9nZXRfc3R5bGVfY29udGV4dChh
Y3Rpb25Cb3gpLCAiZGlhbG9nLWFjdGlvbi1ib3giKTsKKyAgICBndGtfd2lkZ2V0X2FkZF9jc3Nf
Y2xhc3MoYWN0aW9uQm94LCAiZGlhbG9nLWFjdGlvbi1ib3giKTsKKyNpZiBVU0UoR1RLNCkKKyAg
ICBndGtfYm94X2FwcGVuZChHVEtfQk9YKHByaXYtPnZib3gpLCBhY3Rpb25Cb3gpOworI2Vsc2UK
ICAgICBndGtfYm94X3BhY2tfZW5kKEdUS19CT1gocHJpdi0+dmJveCksIGFjdGlvbkJveCwgRkFM
U0UsIFRSVUUsIDApOwogICAgIGd0a193aWRnZXRfc2hvdyhhY3Rpb25Cb3gpOworI2VuZGlmCiAK
KyNpZiBVU0UoR1RLNCkKKyAgICBwcml2LT5hY3Rpb25BcmVhID0gZ3RrX2JveF9uZXcoR1RLX09S
SUVOVEFUSU9OX0hPUklaT05UQUwsIDApOworICAgIGd0a19ib3hfc2V0X2hvbW9nZW5lb3VzKEdU
S19CT1gocHJpdi0+YWN0aW9uQXJlYSksIFRSVUUpOworICAgIGd0a193aWRnZXRfc2V0X2hhbGln
bihwcml2LT5hY3Rpb25BcmVhLCBHVEtfQUxJR05fRklMTCk7CisjZWxzZQogICAgIHByaXYtPmFj
dGlvbkFyZWEgPSBndGtfYnV0dG9uX2JveF9uZXcoR1RLX09SSUVOVEFUSU9OX0hPUklaT05UQUwp
OwogICAgIGd0a19idXR0b25fYm94X3NldF9sYXlvdXQoR1RLX0JVVFRPTl9CT1gocHJpdi0+YWN0
aW9uQXJlYSksIEdUS19CVVRUT05CT1hfRVhQQU5EKTsKKyNlbmRpZgogICAgIGd0a193aWRnZXRf
c2V0X2hleHBhbmQocHJpdi0+YWN0aW9uQXJlYSwgVFJVRSk7Ci0gICAgZ3RrX3N0eWxlX2NvbnRl
eHRfYWRkX2NsYXNzKGd0a193aWRnZXRfZ2V0X3N0eWxlX2NvbnRleHQocHJpdi0+YWN0aW9uQXJl
YSksICJkaWFsb2ctYWN0aW9uLWFyZWEiKTsKKyAgICBndGtfd2lkZ2V0X2FkZF9jc3NfY2xhc3Mo
cHJpdi0+YWN0aW9uQXJlYSwgImRpYWxvZy1hY3Rpb24tYXJlYSIpOworI2lmIFVTRShHVEs0KQor
ICAgIGd0a19ib3hfYXBwZW5kKEdUS19CT1goYWN0aW9uQm94KSwgcHJpdi0+YWN0aW9uQXJlYSk7
CisjZWxzZQogICAgIGd0a19ib3hfcGFja19lbmQoR1RLX0JPWChhY3Rpb25Cb3gpLCBwcml2LT5h
Y3Rpb25BcmVhLCBGQUxTRSwgVFJVRSwgMCk7CiAgICAgZ3RrX3dpZGdldF9zaG93KHByaXYtPmFj
dGlvbkFyZWEpOworI2VuZGlmCisKKyNpZiBVU0UoR1RLNCkKKyAgICBhdXRvKiBjb250cm9sbGVy
ID0gZ3RrX2V2ZW50X2NvbnRyb2xsZXJfa2V5X25ldygpOworICAgIGdfc2lnbmFsX2Nvbm5lY3Rf
b2JqZWN0KGNvbnRyb2xsZXIsICJrZXktcHJlc3NlZCIsIEdfQ0FMTEJBQ0sod2Via2l0U2NyaXB0
RGlhbG9nSW1wbEtleVByZXNzZWQpLCBkaWFsb2csIEdfQ09OTkVDVF9TV0FQUEVEKTsKKyAgICBn
dGtfd2lkZ2V0X2FkZF9jb250cm9sbGVyKEdUS19XSURHRVQoZGlhbG9nKSwgY29udHJvbGxlcik7
CisjZW5kaWYKIH0KIAogc3RhdGljIHZvaWQgd2Via2l0U2NyaXB0RGlhbG9nSW1wbERpc3Bvc2Uo
R09iamVjdCogb2JqZWN0KQpAQCAtMTQ3LDYgKzIxNywxMCBAQCBzdGF0aWMgdm9pZCB3ZWJraXRT
Y3JpcHREaWFsb2dJbXBsRGlzcG9zZShHT2JqZWN0KiBvYmplY3QpCiAgICAgICAgIGRpYWxvZy0+
cHJpdi0+ZGlhbG9nID0gbnVsbHB0cjsKICAgICB9CiAKKyNpZiBVU0UoR1RLNCkKKyAgICB3ZWJr
aXRXZWJWaWV3RGlhbG9nU2V0Q2hpbGQoV0VCS0lUX1dFQl9WSUVXX0RJQUxPRyhvYmplY3QpLCBu
dWxscHRyKTsKKyNlbmRpZgorCiAgICAgR19PQkpFQ1RfQ0xBU1Mod2Via2l0X3NjcmlwdF9kaWFs
b2dfaW1wbF9wYXJlbnRfY2xhc3MpLT5kaXNwb3NlKG9iamVjdCk7CiB9CiAKQEAgLTE1Nyw3ICsy
MzEsOSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfc2NyaXB0X2RpYWxvZ19pbXBsX2NsYXNzX2luaXQo
V2ViS2l0U2NyaXB0RGlhbG9nSW1wbENsYXNzKiBrbAogICAgIG9iamVjdENsYXNzLT5kaXNwb3Nl
ID0gd2Via2l0U2NyaXB0RGlhbG9nSW1wbERpc3Bvc2U7CiAKICAgICBHdGtXaWRnZXRDbGFzcyog
d2lkZ2V0Q2xhc3MgPSBHVEtfV0lER0VUX0NMQVNTKGtsYXNzKTsKKyNpZiAhVVNFKEdUSzQpCiAg
ICAgd2lkZ2V0Q2xhc3MtPmtleV9wcmVzc19ldmVudCA9IHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxL
ZXlQcmVzc0V2ZW50OworI2VuZGlmCiAgICAgd2lkZ2V0Q2xhc3MtPm1hcCA9IHdlYmtpdFNjcmlw
dERpYWxvZ0ltcGxNYXA7CiAgICAgZ3RrX3dpZGdldF9jbGFzc19zZXRfYWNjZXNzaWJsZV9yb2xl
KHdpZGdldENsYXNzLCBBVEtfUk9MRV9BTEVSVCk7CiB9CkBAIC0xNzYsMTIgKzI1MiwxOCBAQCBz
dGF0aWMgR3RrV2lkZ2V0KiB3ZWJraXRTY3JpcHREaWFsb2dJbXBsQWRkQnV0dG9uKFdlYktpdFNj
cmlwdERpYWxvZ0ltcGwqIGRpYWxvZwogICAgIFdlYktpdFNjcmlwdERpYWxvZ0ltcGxQcml2YXRl
KiBwcml2ID0gZGlhbG9nLT5wcml2OwogICAgIEd0a1dpZGdldCogYnV0dG9uID0gZ3RrX2J1dHRv
bl9uZXdfd2l0aF9sYWJlbCh0ZXh0KTsKICAgICBndGtfYnV0dG9uX3NldF91c2VfdW5kZXJsaW5l
KEdUS19CVVRUT04oYnV0dG9uKSwgVFJVRSk7Ci0gICAgZ3RrX3N0eWxlX2NvbnRleHRfYWRkX2Ns
YXNzKGd0a193aWRnZXRfZ2V0X3N0eWxlX2NvbnRleHQoYnV0dG9uKSwgInRleHQtYnV0dG9uIik7
CisgICAgZ3RrX3dpZGdldF9hZGRfY3NzX2NsYXNzKGJ1dHRvbiwgInRleHQtYnV0dG9uIik7Cisj
aWYgIVVTRShHVEs0KQogICAgIGd0a193aWRnZXRfc2V0X2Nhbl9kZWZhdWx0KGJ1dHRvbiwgVFJV
RSk7CisjZW5kaWYKIAogICAgIGd0a193aWRnZXRfc2V0X3ZhbGlnbihidXR0b24sIEdUS19BTElH
Tl9CQVNFTElORSk7CisjaWYgVVNFKEdUSzQpCisgICAgZ3RrX2JveF9hcHBlbmQoR1RLX0JPWChw
cml2LT5hY3Rpb25BcmVhKSwgYnV0dG9uKTsKKyNlbHNlCiAgICAgZ3RrX2NvbnRhaW5lcl9hZGQo
R1RLX0NPTlRBSU5FUihwcml2LT5hY3Rpb25BcmVhKSwgYnV0dG9uKTsKICAgICBndGtfd2lkZ2V0
X3Nob3coYnV0dG9uKTsKKyNlbmRpZgogCiAgICAgcmV0dXJuIGJ1dHRvbjsKIH0KQEAgLTIwNSw3
ICsyODcsMTIgQEAgR3RrV2lkZ2V0KiB3ZWJraXRTY3JpcHREaWFsb2dJbXBsTmV3KFdlYktpdFNj
cmlwdERpYWxvZyogc2NyaXB0RGlhbG9nLCBjb25zdCBjaGEKICAgICBjYXNlIFdFQktJVF9TQ1JJ
UFRfRElBTE9HX1BST01QVDoKICAgICAgICAgZGlhbG9nLT5wcml2LT5lbnRyeSA9IGd0a19lbnRy
eV9uZXcoKTsKICAgICAgICAgZ3RrX2VudHJ5X3NldF90ZXh0KEdUS19FTlRSWShkaWFsb2ctPnBy
aXYtPmVudHJ5KSwgc2NyaXB0RGlhbG9nLT5kZWZhdWx0VGV4dC5kYXRhKCkpOworI2lmIFVTRShH
VEs0KQorICAgICAgICBndGtfYm94X2luc2VydF9jaGlsZF9hZnRlcihHVEtfQk9YKGRpYWxvZy0+
cHJpdi0+dmJveCksIGRpYWxvZy0+cHJpdi0+ZW50cnksCisgICAgICAgICAgICBndGtfd2lkZ2V0
X2dldF9wYXJlbnQoZ3RrX3dpZGdldF9nZXRfcGFyZW50KGRpYWxvZy0+cHJpdi0+c3dpbmRvdykp
KTsKKyNlbHNlCiAgICAgICAgIGd0a19jb250YWluZXJfYWRkKEdUS19DT05UQUlORVIoZGlhbG9n
LT5wcml2LT52Ym94KSwgZGlhbG9nLT5wcml2LT5lbnRyeSk7CisjZW5kaWYKICAgICAgICAgZ3Rr
X2VudHJ5X3NldF9hY3RpdmF0ZXNfZGVmYXVsdChHVEtfRU5UUlkoZGlhbG9nLT5wcml2LT5lbnRy
eSksIFRSVUUpOwogICAgICAgICBndGtfd2lkZ2V0X3Nob3coZGlhbG9nLT5wcml2LT5lbnRyeSk7
CiAKQEAgLTI3NCw1ICszNjEsMyBAQCB2b2lkIHdlYmtpdFNjcmlwdERpYWxvZ0ltcGxTZXRFbnRy
eVRleHQoV2ViS2l0U2NyaXB0RGlhbG9nSW1wbCogZGlhbG9nLCBjb25zdCBTdAogCiAgICAgZ3Rr
X2VudHJ5X3NldF90ZXh0KEdUS19FTlRSWShkaWFsb2ctPnByaXYtPmVudHJ5KSwgdGV4dC51dGY4
KCkuZGF0YSgpKTsKIH0KLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9BUEkvZ3RrL1dlYktpdFNjcmlwdERpYWxvZ0ltcGwuaCBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9ndGsvV2ViS2l0U2NyaXB0RGlhbG9nSW1wbC5oCmluZGV4IDdjMTJmMDE2ZWI0
Mi4uN2Y4NjNjNDUwMGZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Z3RrL1dlYktpdFNjcmlwdERpYWxvZ0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvZ3RrL1dlYktpdFNjcmlwdERpYWxvZ0ltcGwuaApAQCAtMTksOCArMTksNiBAQAogCiAj
cHJhZ21hIG9uY2UKIAotI2lmICFVU0UoR1RLNCkKLQogI2luY2x1ZGUgIldlYktpdFNjcmlwdERp
YWxvZy5oIgogI2luY2x1ZGUgIldlYktpdFdlYlZpZXdEaWFsb2cuaCIKICNpbmNsdWRlIDx3dGYv
dGV4dC9XVEZTdHJpbmcuaD4KQEAgLTU1LDUgKzUzLDMgQEAgdm9pZCB3ZWJraXRTY3JpcHREaWFs
b2dJbXBsQ29uZmlybShXZWJLaXRTY3JpcHREaWFsb2dJbXBsKik7CiB2b2lkIHdlYmtpdFNjcmlw
dERpYWxvZ0ltcGxTZXRFbnRyeVRleHQoV2ViS2l0U2NyaXB0RGlhbG9nSW1wbCosIGNvbnN0IFN0
cmluZyYpOwogCiBHX0VORF9ERUNMUwotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3QmFzZS5jcHAKaW5kZXggNDcyNmQxMzVj
NjAxLi5jM2IzNTlkZGRiM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9ndGsvV2ViS2l0V2ViVmlld0Jhc2UuY3BwCkBAIC01NzIsNiArNTcyLDkgQEAgdm9pZCB3
ZWJraXRXZWJWaWV3QmFzZUFkZERpYWxvZyhXZWJLaXRXZWJWaWV3QmFzZSogd2ViVmlld0Jhc2Us
IEd0a1dpZGdldCogZGlhbG8KIHsKICAgICBXZWJLaXRXZWJWaWV3QmFzZVByaXZhdGUqIHByaXYg
PSB3ZWJWaWV3QmFzZS0+cHJpdjsKICAgICBwcml2LT5kaWFsb2cgPSBkaWFsb2c7CisjaWYgVVNF
KEdUSzQpCisgICAgZ19vYmplY3RfYWRkX3dlYWtfcG9pbnRlcihHX09CSkVDVChkaWFsb2cpLCBy
ZWludGVycHJldF9jYXN0PHZvaWQqKj4oJnByaXYtPmRpYWxvZykpOworI2VuZGlmCiAgICAgZ3Rr
X3dpZGdldF9zZXRfcGFyZW50KGRpYWxvZywgR1RLX1dJREdFVCh3ZWJWaWV3QmFzZSkpOwogICAg
IGd0a193aWRnZXRfc2hvdyhkaWFsb2cpOwogCkBAIC01OTAsMTkgKzU5MywxNCBAQCBzdGF0aWMg
dm9pZCB3ZWJraXRXZWJWaWV3QmFzZVJlbW92ZUNoaWxkKFdlYktpdFdlYlZpZXdCYXNlKiB3ZWJW
aWV3QmFzZSwgR3RrV2lkZwogICAgICAgICBwcml2LT5pbnNwZWN0b3JWaWV3ID0gbnVsbHB0cjsK
ICAgICAgICAgcHJpdi0+aW5zcGVjdG9yVmlld1NpemUgPSAwOwogICAgIH0gZWxzZSBpZiAocHJp
di0+ZGlhbG9nID09IHdpZGdldCkgeworICAgICAgICBnX29iamVjdF9yZW1vdmVfd2Vha19wb2lu
dGVyKEdfT0JKRUNUKHdpZGdldCksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPigmcHJpdi0+ZGlh
bG9nKSk7CiAgICAgICAgIHByaXYtPmRpYWxvZyA9IG51bGxwdHI7Ci0gICAgICAgIGlmIChndGtf
d2lkZ2V0X2dldF92aXNpYmxlKEdUS19XSURHRVQod2ViVmlld0Jhc2UpKSkKLSAgICAgICAgICAg
IGd0a193aWRnZXRfZ3JhYl9mb2N1cyhHVEtfV0lER0VUKHdlYlZpZXdCYXNlKSk7CiAgICAgfSBl
bHNlIGlmIChwcml2LT5rZXlCaW5kaW5nVHJhbnNsYXRvci53aWRnZXQoKSA9PSB3aWRnZXQpCiAg
ICAgICAgIHByaXYtPmtleUJpbmRpbmdUcmFuc2xhdG9yLmludmFsaWRhdGUoKTsKICAgICBlbHNl
CiAgICAgICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAKLSAgICBnYm9vbGVhbiB3
YXNWaXNpYmxlID0gZ3RrX3dpZGdldF9nZXRfdmlzaWJsZSh3aWRnZXQpOwogICAgIGd0a193aWRn
ZXRfdW5wYXJlbnQod2lkZ2V0KTsKLQotICAgIGlmICh3YXNWaXNpYmxlICYmIGd0a193aWRnZXRf
Z2V0X3Zpc2libGUoR1RLX1dJREdFVCh3ZWJWaWV3QmFzZSkpKQotICAgICAgICBndGtfd2lkZ2V0
X3F1ZXVlX3Jlc2l6ZShHVEtfV0lER0VUKHdlYlZpZXdCYXNlKSk7CiB9CiAjZWxzZQogc3RhdGlj
IHZvaWQgd2Via2l0V2ViVmlld0Jhc2VDb250YWluZXJSZW1vdmUoR3RrQ29udGFpbmVyKiBjb250
YWluZXIsIEd0a1dpZGdldCogd2lkZ2V0KQpAQCAtNzQyLDYgKzc0MCw5IEBAIHZvaWQgd2Via2l0
V2ViVmlld0Jhc2VTbmFwc2hvdChHdGtXaWRnZXQqIHdpZGdldCwgR3RrU25hcHNob3QqIHNuYXBz
aG90KQogCiAgICAgQVNTRVJUKGRyYXdpbmdBcmVhLT5pc0luQWNjZWxlcmF0ZWRDb21wb3NpdGlu
Z01vZGUoKSk7CiAgICAgd2ViVmlld0Jhc2UtPnByaXYtPmFjY2VsZXJhdGVkQmFja2luZ1N0b3Jl
LT5zbmFwc2hvdChzbmFwc2hvdCk7CisKKyAgICBpZiAod2ViVmlld0Jhc2UtPnByaXYtPmRpYWxv
ZykKKyAgICAgICAgZ3RrX3dpZGdldF9zbmFwc2hvdF9jaGlsZCh3aWRnZXQsIHdlYlZpZXdCYXNl
LT5wcml2LT5kaWFsb2csIHNuYXBzaG90KTsKIH0KICNlbHNlCiBzdGF0aWMgZ2Jvb2xlYW4gd2Vi
a2l0V2ViVmlld0Jhc2VEcmF3KEd0a1dpZGdldCogd2lkZ2V0LCBjYWlyb190KiBjcikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0RpYWxv
Zy5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdEaWFs
b2cuY3BwCmluZGV4IGU2NTNiZWM2MWRjOC4uN2Y0OTkyYjZmYWI5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdEaWFsb2cuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0RpYWxvZy5jcHAK
QEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE4IElnYWxpYSBTLkwuCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTgsIDIwMjAgSWdhbGlhIFMuTC4KICAqCiAgKiBUaGlzIGxpYnJh
cnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAgKiBt
b2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1Ymxp
YwpAQCAtMjAsMTYgKzIwLDQwIEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2Vi
S2l0V2ViVmlld0RpYWxvZy5oIgogCi0jaWYgIVVTRShHVEs0KQotCisjaW5jbHVkZSA8V2ViQ29y
ZS9GbG9hdFNpemUuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL0d0a1ZlcnNpb25pbmcuaD4KKyNpbmNs
dWRlIDxXZWJDb3JlL1JlZlB0ckNhaXJvLmg+CiAjaW5jbHVkZSA8d3RmL2dsaWIvR1JlZlB0ci5o
PgogI2luY2x1ZGUgPHd0Zi9nbGliL1dURkdUeXBlLmg+CiAKIHN0cnVjdCBfV2ViS2l0V2ViVmll
d0RpYWxvZ1ByaXZhdGUgeworICAgIEd0a1dpZGdldCogY2hpbGQ7CisjaWYgVVNFKEdUSzQpCisg
ICAgR1JlZlB0cjxHdGtDc3NQcm92aWRlcj4gY3NzUHJvdmlkZXI7CisjZW5kaWYKIH07CiAKKyNp
ZiBVU0UoR1RLNCkKK1dFQktJVF9ERUZJTkVfQUJTVFJBQ1RfVFlQRShXZWJLaXRXZWJWaWV3RGlh
bG9nLCB3ZWJraXRfd2ViX3ZpZXdfZGlhbG9nLCBHVEtfVFlQRV9XSURHRVQpCisjZWxzZQogV0VC
S0lUX0RFRklORV9BQlNUUkFDVF9UWVBFKFdlYktpdFdlYlZpZXdEaWFsb2csIHdlYmtpdF93ZWJf
dmlld19kaWFsb2csIEdUS19UWVBFX0VWRU5UX0JPWCkKKyNlbmRpZgogCisjaWYgVVNFKEdUSzQp
CitzdGF0aWMgdm9pZCB3ZWJraXRXZWJWaWV3RGlhbG9nU25hcHNob3QoR3RrV2lkZ2V0KiB3aWRn
ZXQsIEd0a1NuYXBzaG90KiBzbmFwc2hvdCkKK3sKKyAgICBXZWJDb3JlOjpGbG9hdFNpemUgd2lk
Z2V0U2l6ZShndGtfd2lkZ2V0X2dldF93aWR0aCh3aWRnZXQpLCBndGtfd2lkZ2V0X2dldF9oZWln
aHQod2lkZ2V0KSk7CisgICAgZ3JhcGhlbmVfcmVjdF90IHJlY3QgPSBHUkFQSEVORV9SRUNUX0lO
SVQoMCwgMCwgd2lkZ2V0U2l6ZS53aWR0aCgpLCB3aWRnZXRTaXplLmhlaWdodCgpKTsKKyAgICBS
ZWZQdHI8Y2Fpcm9fdD4gY3IgPSBhZG9wdFJlZihndGtfc25hcHNob3RfYXBwZW5kX2NhaXJvKHNu
YXBzaG90LCAmcmVjdCkpOworICAgIGNhaXJvX3NldF9vcGVyYXRvcihjci5nZXQoKSwgQ0FJUk9f
T1BFUkFUT1JfT1ZFUik7CisgICAgY2Fpcm9fc2V0X3NvdXJjZV9yZ2JhKGNyLmdldCgpLCAwLCAw
LCAwLCAwLjUpOworICAgIGNhaXJvX3BhaW50KGNyLmdldCgpKTsKKworICAgIFdlYktpdFdlYlZp
ZXdEaWFsb2dQcml2YXRlKiBwcml2ID0gV0VCS0lUX1dFQl9WSUVXX0RJQUxPRyh3aWRnZXQpLT5w
cml2OworICAgIGlmIChwcml2LT5jaGlsZCkKKyAgICAgICAgZ3RrX3dpZGdldF9zbmFwc2hvdF9j
aGlsZCh3aWRnZXQsIHByaXYtPmNoaWxkLCBzbmFwc2hvdCk7Cit9CisjZWxzZQogc3RhdGljIGdi
b29sZWFuIHdlYmtpdFdlYlZpZXdEaWFsb2dEcmF3KEd0a1dpZGdldCogd2lkZ2V0LCBjYWlyb190
KiBjcikKIHsKICAgICBjYWlyb19zZXRfb3BlcmF0b3IoY3IsIENBSVJPX09QRVJBVE9SX09WRVIp
OwpAQCAtNDgsMTIgKzcyLDI0IEBAIHN0YXRpYyBnYm9vbGVhbiB3ZWJraXRXZWJWaWV3RGlhbG9n
RHJhdyhHdGtXaWRnZXQqIHdpZGdldCwgY2Fpcm9fdCogY3IpCiAKICAgICByZXR1cm4gRkFMU0U7
CiB9CisjZW5kaWYKIAorI2lmIFVTRShHVEs0KQorc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0Rp
YWxvZ1NpemVBbGxvY2F0ZShHdGtXaWRnZXQqIHdpZGdldCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0
LCBpbnQgYmFzZWxpbmUpCisjZWxzZQogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0RpYWxvZ1Np
emVBbGxvY2F0ZShHdGtXaWRnZXQqIHdpZGdldCwgR3RrQWxsb2NhdGlvbiogYWxsb2NhdGlvbikK
KyNlbmRpZgogeworI2lmIFVTRShHVEs0KQorICAgIEdUS19XSURHRVRfQ0xBU1Mod2Via2l0X3dl
Yl92aWV3X2RpYWxvZ19wYXJlbnRfY2xhc3MpLT5zaXplX2FsbG9jYXRlKHdpZGdldCwgd2lkdGgs
IGhlaWdodCwgYmFzZWxpbmUpOworICAgIEd0a0FsbG9jYXRpb24gYWxsb2NhdGlvblN0YWNrID0g
eyAwLCAwLCB3aWR0aCwgaGVpZ2h0IH07CisgICAgR3RrQWxsb2NhdGlvbiogYWxsb2NhdGlvbiA9
ICZhbGxvY2F0aW9uU3RhY2s7CisgICAgR3RrV2lkZ2V0KiBjaGlsZCA9IFdFQktJVF9XRUJfVklF
V19ESUFMT0cod2lkZ2V0KS0+cHJpdi0+Y2hpbGQ7CisjZWxzZQogICAgIEdUS19XSURHRVRfQ0xB
U1Mod2Via2l0X3dlYl92aWV3X2RpYWxvZ19wYXJlbnRfY2xhc3MpLT5zaXplX2FsbG9jYXRlKHdp
ZGdldCwgYWxsb2NhdGlvbik7Ci0KICAgICBHdGtXaWRnZXQqIGNoaWxkID0gZ3RrX2Jpbl9nZXRf
Y2hpbGQoR1RLX0JJTih3aWRnZXQpKTsKKyNlbmRpZgorCiAgICAgaWYgKCFjaGlsZCkKICAgICAg
ICAgcmV0dXJuOwogCkBAIC03NCwxMCArMTEwLDIxIEBAIHN0YXRpYyB2b2lkIHdlYmtpdFdlYlZp
ZXdEaWFsb2dDb25zdHJ1Y3RlZChHT2JqZWN0KiBvYmplY3QpCiB7CiAgICAgR19PQkpFQ1RfQ0xB
U1Mod2Via2l0X3dlYl92aWV3X2RpYWxvZ19wYXJlbnRfY2xhc3MpLT5jb25zdHJ1Y3RlZChvYmpl
Y3QpOwogCisjaWYgVVNFKEdUSzQpCisgICAgZ3RrX3dpZGdldF9hZGRfY3NzX2NsYXNzKEdUS19X
SURHRVQob2JqZWN0KSwgImRpYWxvZyIpOworICAgIGd0a193aWRnZXRfYWRkX2Nzc19jbGFzcyhH
VEtfV0lER0VUKG9iamVjdCksICJtZXNzYWdlIik7CisgICAgZ3RrX3dpZGdldF9hZGRfY3NzX2Ns
YXNzKEdUS19XSURHRVQob2JqZWN0KSwgR1RLX1NUWUxFX0NMQVNTX0NTRCk7CisgICAgZ3RrX3dp
ZGdldF9yZW1vdmVfY3NzX2NsYXNzKEdUS19XSURHRVQob2JqZWN0KSwgR1RLX1NUWUxFX0NMQVNT
X0JBQ0tHUk9VTkQpOworCisgICAgV2ViS2l0V2ViVmlld0RpYWxvZ1ByaXZhdGUqIHByaXYgPSBX
RUJLSVRfV0VCX1ZJRVdfRElBTE9HKG9iamVjdCktPnByaXY7CisgICAgcHJpdi0+Y3NzUHJvdmlk
ZXIgPSBhZG9wdEdSZWYoZ3RrX2Nzc19wcm92aWRlcl9uZXcoKSk7CisgICAgZ3RrX2Nzc19wcm92
aWRlcl9sb2FkX2Zyb21fZGF0YShwcml2LT5jc3NQcm92aWRlci5nZXQoKSwgIi5kaWFsb2ctdmJv
eCB7IGJvcmRlci1yYWRpdXM6IDdweDsgfSIsIC0xKTsKKyNlbHNlCiAgICAgZ3RrX3dpZGdldF9z
ZXRfYXBwX3BhaW50YWJsZShHVEtfV0lER0VUKG9iamVjdCksIFRSVUUpOwogCiAgICAgZ3RrX3N0
eWxlX2NvbnRleHRfYWRkX2NsYXNzKGd0a193aWRnZXRfZ2V0X3N0eWxlX2NvbnRleHQoR1RLX1dJ
REdFVChvYmplY3QpKSwgR1RLX1NUWUxFX0NMQVNTX0NTRCk7CiAgICAgZ3RrX3N0eWxlX2NvbnRl
eHRfYWRkX2NsYXNzKGd0a193aWRnZXRfZ2V0X3N0eWxlX2NvbnRleHQoR1RLX1dJREdFVChvYmpl
Y3QpKSwgR1RLX1NUWUxFX0NMQVNTX0JBQ0tHUk9VTkQpOworI2VuZGlmCiB9CiAKIHN0YXRpYyB2
b2lkIHdlYmtpdF93ZWJfdmlld19kaWFsb2dfY2xhc3NfaW5pdChXZWJLaXRXZWJWaWV3RGlhbG9n
Q2xhc3MqIGtsYXNzKQpAQCAtODYsMTAgKzEzMywzNSBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfd2Vi
X3ZpZXdfZGlhbG9nX2NsYXNzX2luaXQoV2ViS2l0V2ViVmlld0RpYWxvZ0NsYXNzKiBrbGFzcykK
ICAgICBvYmplY3RDbGFzcy0+Y29uc3RydWN0ZWQgPSB3ZWJraXRXZWJWaWV3RGlhbG9nQ29uc3Ry
dWN0ZWQ7CiAKICAgICBHdGtXaWRnZXRDbGFzcyogd2lkZ2V0Q2xhc3MgPSBHVEtfV0lER0VUX0NM
QVNTKGtsYXNzKTsKKyNpZiBVU0UoR1RLNCkKKyAgICB3aWRnZXRDbGFzcy0+c25hcHNob3QgPSB3
ZWJraXRXZWJWaWV3RGlhbG9nU25hcHNob3Q7CisjZWxzZQogICAgIHdpZGdldENsYXNzLT5kcmF3
ID0gd2Via2l0V2ViVmlld0RpYWxvZ0RyYXc7CisjZW5kaWYKICAgICB3aWRnZXRDbGFzcy0+c2l6
ZV9hbGxvY2F0ZSA9IHdlYmtpdFdlYlZpZXdEaWFsb2dTaXplQWxsb2NhdGU7CiAKKyNpZiBVU0Uo
R1RLNCkKKyAgICBndGtfd2lkZ2V0X2NsYXNzX3NldF9jc3NfbmFtZSh3aWRnZXRDbGFzcywgIndp
bmRvdyIpOworI2Vsc2UKICAgICBndGtfd2lkZ2V0X2NsYXNzX3NldF9jc3NfbmFtZSh3aWRnZXRD
bGFzcywgIm1lc3NhZ2VkaWFsb2ciKTsKKyNlbmRpZgorfQorCisjaWYgVVNFKEdUSzQpCit2b2lk
IHdlYmtpdFdlYlZpZXdEaWFsb2dTZXRDaGlsZChXZWJLaXRXZWJWaWV3RGlhbG9nKiBkaWFsb2cs
IEd0a1dpZGdldCogY2hpbGQpCit7CisgICAgV2ViS2l0V2ViVmlld0RpYWxvZ1ByaXZhdGUqIHBy
aXYgPSBkaWFsb2ctPnByaXY7CisgICAgZ19jbGVhcl9wb2ludGVyKCZwcml2LT5jaGlsZCwgZ3Rr
X3dpZGdldF91bnBhcmVudCk7CisgICAgaWYgKGNoaWxkKSB7CisgICAgICAgIGd0a193aWRnZXRf
c2V0X3BhcmVudChjaGlsZCwgR1RLX1dJREdFVChkaWFsb2cpKTsKKyAgICAgICAgZ3RrX3dpZGdl
dF9hZGRfY3NzX2NsYXNzKGNoaWxkLCBHVEtfU1RZTEVfQ0xBU1NfQkFDS0dST1VORCk7CisgICAg
ICAgIGd0a19zdHlsZV9jb250ZXh0X2FkZF9wcm92aWRlcihndGtfd2lkZ2V0X2dldF9zdHlsZV9j
b250ZXh0KGNoaWxkKSwgR1RLX1NUWUxFX1BST1ZJREVSKHByaXYtPmNzc1Byb3ZpZGVyLmdldCgp
KSwgR1RLX1NUWUxFX1BST1ZJREVSX1BSSU9SSVRZX0FQUExJQ0FUSU9OKTsKKyAgICAgICAgcHJp
di0+Y2hpbGQgPSBjaGlsZDsKKyAgICB9CiB9CiAKK0d0a1dpZGdldCogd2Via2l0V2ViVmlld0Rp
YWxvZ0dldENoaWxkKFdlYktpdFdlYlZpZXdEaWFsb2cqIGRpYWxvZykKK3sKKyAgICByZXR1cm4g
ZGlhbG9nLT5wcml2LT5jaGlsZDsKK30KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3RGlhbG9nLmggYi9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdEaWFsb2cuaAppbmRleCA2YTdlMDY0NTg5
YWEuLmE4ZmI3ODVkZWQ5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJ
L2d0ay9XZWJLaXRXZWJWaWV3RGlhbG9nLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL2d0ay9XZWJLaXRXZWJWaWV3RGlhbG9nLmgKQEAgLTE5LDggKzE5LDYgQEAKIAogI3ByYWdt
YSBvbmNlCiAKLSNpZiAhVVNFKEdUSzQpCi0KICNpbmNsdWRlIDxndGsvZ3RrLmg+CiAKIEdfQkVH
SU5fREVDTFMKQEAgLTM3LDE3ICszNSwyNyBAQCB0eXBlZGVmIHN0cnVjdCBfV2ViS2l0V2ViVmll
d0RpYWxvZ0NsYXNzICAgV2ViS2l0V2ViVmlld0RpYWxvZ0NsYXNzOwogdHlwZWRlZiBzdHJ1Y3Qg
X1dlYktpdFdlYlZpZXdEaWFsb2dQcml2YXRlIFdlYktpdFdlYlZpZXdEaWFsb2dQcml2YXRlOwog
CiBzdHJ1Y3QgX1dlYktpdFdlYlZpZXdEaWFsb2cgeworI2lmIFVTRShHVEs0KQorICAgIEd0a1dp
ZGdldCBwYXJlbnQ7CisjZWxzZQogICAgIEd0a0V2ZW50Qm94IHBhcmVudDsKKyNlbmRpZgogCiAg
ICAgV2ViS2l0V2ViVmlld0RpYWxvZ1ByaXZhdGUqIHByaXY7CiB9OwogCiBzdHJ1Y3QgX1dlYktp
dFdlYlZpZXdEaWFsb2dDbGFzcyB7CisjaWYgVVNFKEdUSzQpCisgICAgR3RrV2lkZ2V0Q2xhc3Mg
cGFyZW50Q2xhc3M7CisjZWxzZQogICAgIEd0a0V2ZW50Qm94Q2xhc3MgcGFyZW50Q2xhc3M7Cisj
ZW5kaWYKIH07CiAKIEdUeXBlIHdlYmtpdF93ZWJfdmlld19kaWFsb2dfZ2V0X3R5cGUoKTsKKyNp
ZiBVU0UoR1RLNCkKK3ZvaWQgd2Via2l0V2ViVmlld0RpYWxvZ1NldENoaWxkKFdlYktpdFdlYlZp
ZXdEaWFsb2cqLCBHdGtXaWRnZXQqKTsKK0d0a1dpZGdldCogd2Via2l0V2ViVmlld0RpYWxvZ0dl
dENoaWxkKFdlYktpdFdlYlZpZXdEaWFsb2cqKTsKKyNlbmRpZgogCiBHX0VORF9ERUNMUwotCi0j
ZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
V2ViVmlld0d0ay5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdl
YlZpZXdHdGsuY3BwCmluZGV4IDg3MDQzMjQ4YmNkMy4uZWYzYTFlYWY1NTEyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdHdGsuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld0d0ay5jcHAK
QEAgLTQzLDEyICs0MywxMCBAQCBnYm9vbGVhbiB3ZWJraXRXZWJWaWV3QXV0aGVudGljYXRlKFdl
YktpdFdlYlZpZXcqIHdlYlZpZXcsIFdlYktpdEF1dGhlbnRpY2F0aW9uUgogCiBnYm9vbGVhbiB3
ZWJraXRXZWJWaWV3U2NyaXB0RGlhbG9nKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIFdlYktpdFNj
cmlwdERpYWxvZyogc2NyaXB0RGlhbG9nKQogewotI2lmICFVU0UoR1RLNCkKICAgICBHVW5pcXVl
UHRyPGNoYXI+IHRpdGxlKGdfc3RyZHVwX3ByaW50ZigiSmF2YVNjcmlwdCAtICVzIiwgd2Via2l0
V2ViVmlld0dldFBhZ2Uod2ViVmlldykucGFnZUxvYWRTdGF0ZSgpLnVybCgpLnV0ZjgoKS5kYXRh
KCkpKTsKICAgICAvLyBMaW1pdCBzY3JpcHQgZGlhbG9nIHNpemUgdG8gODAlIG9mIHRoZSB3ZWIg
dmlldyBzaXplLgogICAgIEd0a1JlcXVpc2l0aW9uIG1heFNpemUgPSB7IHN0YXRpY19jYXN0PGlu
dD4oZ3RrX3dpZGdldF9nZXRfYWxsb2NhdGVkX3dpZHRoKEdUS19XSURHRVQod2ViVmlldykpICog
MC44MCksIHN0YXRpY19jYXN0PGludD4oZ3RrX3dpZGdldF9nZXRfYWxsb2NhdGVkX2hlaWdodChH
VEtfV0lER0VUKHdlYlZpZXcpKSAqIDAuODApIH07CiAgICAgd2Via2l0V2ViVmlld0Jhc2VBZGRE
aWFsb2coV0VCS0lUX1dFQl9WSUVXX0JBU0Uod2ViVmlldyksIHdlYmtpdFNjcmlwdERpYWxvZ0lt
cGxOZXcoc2NyaXB0RGlhbG9nLCB0aXRsZS5nZXQoKSwgJm1heFNpemUpKTsKLSNlbmRpZgogCiAg
ICAgcmV0dXJuIFRSVUU7CiB9Cg==
</data>
<flag name="review"
          id="415855"
          type_id="1"
          status="+"
          setter="aperez"
    />
          </attachment>
      

    </bug>

</bugzilla>