<?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>70411</bug_id>
          
          <creation_ts>2011-10-19 06:33:29 -0700</creation_ts>
          <short_desc>CSSStyleDeclaration: Remove inheritance from StyleBase.</short_desc>
          <delta_ts>2011-10-20 09:22: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>CSS</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>koivisto</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>486730</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-19 06:33:29 -0700</bug_when>
    <thetext>SSIA.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486734</commentid>
    <comment_count>1</comment_count>
      <attachid>111605</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-19 06:37:01 -0700</bug_when>
    <thetext>Created attachment 111605
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486742</commentid>
    <comment_count>2</comment_count>
      <attachid>111605</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-19 06:55:09 -0700</bug_when>
    <thetext>Comment on attachment 111605
Proposed patch

Grh, the implementation of root(CSSMutableStyleDeclaration*) is not correct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486778</commentid>
    <comment_count>3</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-19 07:33:22 -0700</bug_when>
    <thetext>Let&apos;s do this properly, rescoping the bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487606</commentid>
    <comment_count>4</comment_count>
      <attachid>111783</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-20 08:54:33 -0700</bug_when>
    <thetext>Created attachment 111783
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487616</commentid>
    <comment_count>5</comment_count>
      <attachid>111783</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2011-10-20 09:10:35 -0700</bug_when>
    <thetext>Comment on attachment 111783
Proposed patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487627</commentid>
    <comment_count>6</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-20 09:22:59 -0700</bug_when>
    <thetext>Committed r97985: &lt;http://trac.webkit.org/changeset/97985&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111605</attachid>
            <date>2011-10-19 06:37:01 -0700</date>
            <delta_ts>2011-10-20 08:54:33 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-70411.diff</filename>
            <type>text/plain</type>
            <size>2984</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBiZTRiZWNjLi5hYTM0NDNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTEtMTAtMTkgIEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgorCisgICAg
ICAgIE1vdmUgaXNNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbigpIGZyb20gU3R5bGVCYXNlIHRvIENT
U1N0eWxlRGVjbGFyYXRpb24uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDQxMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogY3NzL1N0eWxlQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZUJh
c2U6Om5vZGUpOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oOgorICAgICAg
ICAoV2ViQ29yZTo6cm9vdCk6CisKKyAgICAgICAgICAgIFNwZWNpYWxpemVkIHJvb3QoKSBmb3Ig
Q1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24uCisKKyAgICAgICAgKiBjc3MvU3R5bGVCYXNlLmg6
CisgICAgICAgICogY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6
OkNTU1N0eWxlRGVjbGFyYXRpb246OmlzTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24pOgorCisgICAg
ICAgICAgICBNb3ZlIGlzTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24oKSBkb3duIHRvIENTU1N0eWxl
RGVjbGFyYXRpb24gc2luY2UKKyAgICAgICAgICAgIGl0J3Mgbm8gbG9uZ2VyIG5lZWRlZCBieSBT
dHlsZUJhc2UuCisKIDIwMTEtMTAtMTkgIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogRW5hYmxlIGNhc2VTZW5zaXRpdmUgc2Vh
cmNoIC8gUmVnZXggc3VwcG9ydCBpbiBhZHZhbmNlZCBzZWFyY2guCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCmluZGV4IDQ0MjFkMWYuLjNhYjY4ZDMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCkBAIC0xODYsNiArMTg2LDEzIEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgcmV0dXJuIHN0eWxlQmFzZTsKICAgICB9CiAK
KyAgICBpbmxpbmUgdm9pZCogcm9vdChDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbiogc3R5bGUp
CisgICAgeworICAgICAgICBpZiAoTm9kZSogbm9kZSA9IHN0eWxlLT5ub2RlKCkpCisgICAgICAg
ICAgICByZXR1cm4gcm9vdChub2RlKTsKKyAgICAgICAgcmV0dXJuIHN0eWxlOworICAgIH0KKwog
ICAgIGlubGluZSB2b2lkKiByb290KE1lZGlhTGlzdCogbWVkaWFMaXN0KQogICAgIHsKICAgICAg
ICAgaWYgKENTU1N0eWxlU2hlZXQqIHBhcmVudFN0eWxlU2hlZXQgPSBtZWRpYUxpc3QtPnBhcmVu
dFN0eWxlU2hlZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURl
Y2xhcmF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5oCmlu
ZGV4IDRjOWY2MzAuLjExNTA5YWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NT
dHlsZURlY2xhcmF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlRGVjbGFy
YXRpb24uaApAQCAtNzYsNiArNzYsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzaG93U3R5bGUoKTsK
ICNlbmRpZgogCisgICAgdmlydHVhbCBib29sIGlzTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24oKSBj
b25zdCB7IHJldHVybiBmYWxzZTsgfQorCiBwcm90ZWN0ZWQ6CiAgICAgQ1NTU3R5bGVEZWNsYXJh
dGlvbihDU1NSdWxlKiBwYXJlbnRSdWxlID0gMCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZUJhc2UuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQmFzZS5jcHAK
aW5kZXggYTdiNTM2Yi4uYmU1NWFhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlQmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQmFzZS5jcHAKQEAgLTQ2
LDkgKzQ2LDYgQEAgTm9kZSogU3R5bGVCYXNlOjpub2RlKCkKICAgICBpZiAoaXNTdHlsZVNoZWV0
KCkpCiAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxTdHlsZVNoZWV0Kj4odGhpcyktPm93bmVy
Tm9kZSgpOwogCi0gICAgaWYgKGlzTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24oKSkKLSAgICAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PENTU011dGFibGVTdHlsZURlY2xhcmF0aW9uKj4odGhpcyktPm5v
ZGUoKTsKLQogICAgIHJldHVybiAwOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9j
c3MvU3R5bGVCYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVCYXNlLmgKaW5kZXggYjFl
YmM5Yy4uMDNhZjIwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQmFzZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZUJhc2UuaApAQCAtNTMsOCArNTMsNiBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZpcnR1YWwgYm9vbCBpc0NTU1N0eWxlU2hlZXQo
KSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogICAgICAgICB2aXJ0dWFsIGJvb2wgaXNYU0xTdHls
ZVNoZWV0KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAotICAgICAgICB2aXJ0dWFsIGJvb2wg
aXNNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbigpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0KICAg
ICAgICAgdmlydHVhbCBTdHJpbmcgY3NzVGV4dCgpIGNvbnN0OwogCiAgICAgICAgIHZpcnR1YWwg
dm9pZCBjaGVja0xvYWRlZCgpOwo=
</data>
<flag name="review"
          id="109472"
          type_id="1"
          status="-"
          setter="kling"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111783</attachid>
            <date>2011-10-20 08:54:33 -0700</date>
            <delta_ts>2011-10-20 09:10:35 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-70411.diff</filename>
            <type>text/plain</type>
            <size>24562</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2ZDJhNDFkLi40NDc3MzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsODMg
QEAKKzIwMTEtMTAtMjAgIEFuZHJlYXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgorCisgICAg
ICAgIENTU1N0eWxlRGVjbGFyYXRpb246IFJlbW92ZSBpbmhlcml0YW5jZSBmcm9tIFN0eWxlQmFz
ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwNDEx
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiaW5k
aW5ncy9qcy9KU0RPTUJpbmRpbmcuaDoKKyAgICAgICAgKFdlYkNvcmU6OnJvb3QpOgorCisgICAg
ICAgICAgICBTcGVjaWFsaXplZCByb290KCkgZm9yIENTU1N0eWxlRGVjbGFyYXRpb24gYW5kIENT
U011dGFibGVTdHlsZURlY2xhcmF0aW9uLgorCisgICAgICAgICogY3NzL0NTU011dGFibGVTdHls
ZURlY2xhcmF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU011dGFibGVTdHlsZURlY2xh
cmF0aW9uOjpzZXROZWVkc1N0eWxlUmVjYWxjKToKKworICAgICAgICAgICAgU3RhcnQgdGhlIHBh
cmVudCBjaGFpbiB0cmF2ZXJzYWwgZnJvbSB0aGUgcGFyZW50U3R5bGVTaGVldCgpLgorCisgICAg
ICAgIChXZWJDb3JlOjpDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbjo6YWRkU3VicmVzb3VyY2VT
dHlsZVVSTHMpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6cGFyc2VDb2xvclZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OnBhcnNlU2ltcGxlTGVuZ3Ro
VmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVZhbHVlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU1BhcnNlcjo6cGFyc2VDb2xvcik6CisgICAgICAgIChXZWJDb3JlOjpD
U1NQYXJzZXI6OnBhcnNlRGVjbGFyYXRpb24pOgorCisgICAgICAgICAgICBSZW1vdmUgbm93LXVu
bmVjZXNzYXJ5IGFzc2VydGlvbnMgYW5kIGNhc3RzLgorCisgICAgICAgICogY3NzL0NTU1N0eWxl
RGVjbGFyYXRpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVEZWNsYXJhdGlvbjo6
Q1NTU3R5bGVEZWNsYXJhdGlvbik6CisgICAgICAgICogY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24u
aDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlRGVjbGFyYXRpb246On5DU1NTdHlsZURlY2xh
cmF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlRGVjbGFyYXRpb246OnBhcmVudFJ1
bGUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVEZWNsYXJhdGlvbjo6c2V0UGFyZW50UnVs
ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZURlY2xhcmF0aW9uOjpzZXRQYXJlbnRTdHls
ZVNoZWV0KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlRGVjbGFyYXRpb246OnBhcmVudFN0
eWxlU2hlZXQpOgorCisgICAgICAgICAgICBNYWtlIENTU1N0eWxlRGVjbGFyYXRpb24gaW5oZXJp
dCBkaXJlY3RseSBmcm9tIFJlZkNvdW50ZWQsIGFuZCBoYXZlIGVpdGhlcgorICAgICAgICAgICAg
YSBDU1NSdWxlIG9yIENTU1N0eWxlU2hlZXQgcGFyZW50LiBFdmVudHVhbGx5IGl0IHNob3VsZCBv
bmx5IG5lZWQgdG8gaGF2ZQorICAgICAgICAgICAgcnVsZXMgYXMgcGFyZW50cywgYnV0IENTU1Bh
cnNlciBkZXBlbmRzIG9uIGhhdmluZyBzdHlsZSBzaGVldCBwYXJlbnRzIGZvcgorICAgICAgICAg
ICAgVVJMIGNvbXBsZXRpb24gYW5kIHByaW1pdGl2ZSB2YWx1ZSBjYWNoZS4KKworICAgICAgICAq
IGNzcy9TdHlsZUJhc2UuaDoKKyAgICAgICAgKiBjc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5oOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVEZWNsYXJhdGlvbjo6aXNNdXRhYmxlU3R5bGVEZWNs
YXJhdGlvbik6CisKKyAgICAgICAgICAgIE1vdmVkIGZyb20gU3R5bGVCYXNlIGRvd24gdG8gQ1NT
U3R5bGVEZWNsYXJhdGlvbi4KKworICAgICAgICAqIGNzcy9DU1NTdHlsZVJ1bGUuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVSdWxlOjp+Q1NTU3R5bGVSdWxlKToKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1N0eWxlUnVsZTo6c2V0U2VsZWN0b3JUZXh0KToKKyAgICAgICAgKiBjc3MvV2Vi
S2l0Q1NTS2V5ZnJhbWVSdWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldlYktpdENTU0tleWZy
YW1lUnVsZTo6fldlYktpdENTU0tleWZyYW1lUnVsZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJL
aXRDU1NLZXlmcmFtZVJ1bGU6OnNldERlY2xhcmF0aW9uKToKKyAgICAgICAgKiBjc3MvV2ViS2l0
Q1NTS2V5ZnJhbWVzUnVsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpXZWJLaXRDU1NLZXlmcmFt
ZXNSdWxlOjp+V2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZSk6CisgICAgICAgIChXZWJDb3JlOjpXZWJL
aXRDU1NLZXlmcmFtZXNSdWxlOjphcHBlbmQpOgorICAgICAgICAoV2ViQ29yZTo6V2ViS2l0Q1NT
S2V5ZnJhbWVzUnVsZTo6ZGVsZXRlUnVsZSk6CisgICAgICAgICogZG9tL1N0eWxlZEVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6Y3JlYXRlSW5saW5lU3R5bGVE
ZWNsKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OmRlc3Ryb3lJbmxpbmVTdHls
ZURlY2wpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVkRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdl
ZCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZWRFbGVtZW50OjpjcmVhdGVNYXBwZWREZWNsKToK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlZEVsZW1lbnQ6OmRpZE1vdmVUb05ld093bmVyRG9jdW1l
bnQpOgorICAgICAgICAqIGh0bWwvSFRNTFRhYmxlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MVGFibGVFbGVtZW50OjphZGRpdGlvbmFsQXR0cmlidXRlU3R5bGVEZWNscyk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MVGFibGVFbGVtZW50OjphZGRTaGFyZWRDZWxsQm9yZGVyc0Rl
Y2wpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRhYmxlRWxlbWVudDo6YWRkU2hhcmVkQ2VsbFBh
ZGRpbmdEZWNsKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxUYWJsZUVsZW1lbnQ6OmFkZFNoYXJl
ZEdyb3VwRGVjbHMpOgorICAgICAgICAqIHBhZ2UvUGFnZVNlcmlhbGl6ZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UGFnZVNlcmlhbGl6ZXI6OnJldHJpZXZlUmVzb3VyY2VzRm9yQ1NTRGVjbGFy
YXRpb24pOgorICAgICAgICAqIHN2Zy9TVkdGb250RmFjZUVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6U1ZHRm9udEZhY2VFbGVtZW50OjpTVkdGb250RmFjZUVsZW1lbnQpOgorCisgICAg
ICAgICAgICBVc2UgdGhlIG5ldyBwYXJlbnRpbmcgbWV0aG9kcyBvZiBDU1NTdHlsZURlY2xhcmF0
aW9uLgorCisgICAgICAgICogY3NzL1N0eWxlQmFzZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpT
dHlsZUJhc2U6Om5vZGUpOgorCisgICAgICAgICAgICBSZW1vdmUgdGhlIGlzTXV0YWJsZVN0eWxl
RGVjbGFyYXRpb24oKSBjb2RlIHBhdGguCisKIDIwMTEtMTAtMjAgIFNoZXJpZmYgQm90ICA8d2Vi
a2l0LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcg
b3V0IHI5Nzk1NC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
QmluZGluZy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKaW5k
ZXggNDQyMWQxZi4uN2Y1NGQyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNET01CaW5kaW5nLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01C
aW5kaW5nLmgKQEAgLTIyLDYgKzIyLDcgQEAKICNpZm5kZWYgSlNET01CaW5kaW5nX2gKICNkZWZp
bmUgSlNET01CaW5kaW5nX2gKIAorI2luY2x1ZGUgIkNTU1J1bGUuaCIKICNpbmNsdWRlICJDU1NT
dHlsZVNoZWV0LmgiCiAjaW5jbHVkZSAiSlNET01HbG9iYWxPYmplY3QuaCIKICNpbmNsdWRlICJK
U0RPTVdyYXBwZXIuaCIKQEAgLTE4Niw2ICsxODcsMjYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgICAgICByZXR1cm4gc3R5bGVCYXNlOwogICAgIH0KIAorICAgIGlubGluZSB2b2lkKiByb290
KENTU1N0eWxlRGVjbGFyYXRpb24qIHN0eWxlKQorICAgIHsKKyAgICAgICAgaWYgKENTU1J1bGUq
IHBhcmVudFJ1bGUgPSBzdHlsZS0+cGFyZW50UnVsZSgpKQorICAgICAgICAgICAgcmV0dXJuIHJv
b3QocGFyZW50UnVsZSk7CisgICAgICAgIGlmIChDU1NTdHlsZVNoZWV0KiBzdHlsZVNoZWV0ID0g
c3R5bGUtPnBhcmVudFN0eWxlU2hlZXQoKSkKKyAgICAgICAgICAgIHJldHVybiByb290KHN0eWxl
U2hlZXQpOworICAgICAgICByZXR1cm4gc3R5bGU7CisgICAgfQorCisgICAgaW5saW5lIHZvaWQq
IHJvb3QoQ1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24qIHN0eWxlKQorICAgIHsKKyAgICAgICAg
aWYgKENTU1J1bGUqIHBhcmVudFJ1bGUgPSBzdHlsZS0+cGFyZW50UnVsZSgpKQorICAgICAgICAg
ICAgcmV0dXJuIHJvb3QocGFyZW50UnVsZSk7CisgICAgICAgIGlmIChDU1NTdHlsZVNoZWV0KiBz
dHlsZVNoZWV0ID0gc3R5bGUtPnBhcmVudFN0eWxlU2hlZXQoKSkKKyAgICAgICAgICAgIHJldHVy
biByb290KHN0eWxlU2hlZXQpOworICAgICAgICBpZiAoTm9kZSogbm9kZSA9IHN0eWxlLT5ub2Rl
KCkpCisgICAgICAgICAgICByZXR1cm4gcm9vdChub2RlKTsKKyAgICAgICAgcmV0dXJuIHN0eWxl
OworICAgIH0KKwogICAgIGlubGluZSB2b2lkKiByb290KE1lZGlhTGlzdCogbWVkaWFMaXN0KQog
ICAgIHsKICAgICAgICAgaWYgKENTU1N0eWxlU2hlZXQqIHBhcmVudFN0eWxlU2hlZXQgPSBtZWRp
YUxpc3QtPnBhcmVudFN0eWxlU2hlZXQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
TXV0YWJsZVN0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IDU4ZGNhOWQuLjNkNjE2MTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbi5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU011dGFibGVTdHlsZURlY2xhcmF0aW9uLmNwcApA
QCAtNTE5LDcgKzUxOSwxMCBAQCB2b2lkIENTU011dGFibGVTdHlsZURlY2xhcmF0aW9uOjpzZXRO
ZWVkc1N0eWxlUmVjYWxjKCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFN0eWxlQmFz
ZSogcm9vdCA9IHRoaXM7CisgICAgaWYgKCFwYXJlbnRTdHlsZVNoZWV0KCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIFN0eWxlQmFzZSogcm9vdCA9IHBhcmVudFN0eWxlU2hlZXQoKTsKICAgICB3
aGlsZSAoU3R5bGVCYXNlKiBwYXJlbnQgPSByb290LT5wYXJlbnQoKSkKICAgICAgICAgcm9vdCA9
IHBhcmVudDsKICAgICBpZiAocm9vdC0+aXNDU1NTdHlsZVNoZWV0KCkpIHsKQEAgLTc3OSw3ICs3
ODIsNyBAQCB2b2lkIENTU011dGFibGVTdHlsZURlY2xhcmF0aW9uOjptZXJnZShjb25zdCBDU1NN
dXRhYmxlU3R5bGVEZWNsYXJhdGlvbiogb3RoZXIsCiAKIHZvaWQgQ1NTTXV0YWJsZVN0eWxlRGVj
bGFyYXRpb246OmFkZFN1YnJlc291cmNlU3R5bGVVUkxzKExpc3RIYXNoU2V0PEtVUkw+JiB1cmxz
KQogewotICAgIENTU1N0eWxlU2hlZXQqIHNoZWV0ID0gc3RhdGljX2Nhc3Q8Q1NTU3R5bGVTaGVl
dCo+KHN0eWxlc2hlZXQoKSk7CisgICAgQ1NTU3R5bGVTaGVldCogc2hlZXQgPSBwYXJlbnRTdHls
ZVNoZWV0KCk7CiAgICAgc2l6ZV90IHNpemUgPSBtX3Byb3BlcnRpZXMuc2l6ZSgpOwogICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZTsgKytpKQogICAgICAgICBtX3Byb3BlcnRpZXNbaV0u
dmFsdWUoKS0+YWRkU3VicmVzb3VyY2VTdHlsZVVSTHModXJscywgc2hlZXQpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUGFyc2VyLmNwcAppbmRleCBjMTk0NDdiLi4wM2JjNTc0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFy
c2VyLmNwcApAQCAtMzQwLDE4ICszNDAsMTggQEAgc3RhdGljIGJvb2wgcGFyc2VDb2xvclZhbHVl
KENTU011dGFibGVTdHlsZURlY2xhcmF0aW9uKiBkZWNsYXJhdGlvbiwgaW50IHByb3BlcnQKICAg
ICAgICAgdmFsaWRQcmltaXRpdmUgPSB0cnVlOwogICAgIH0KIAotICAgIENTU1N0eWxlU2hlZXQq
IHN0eWxlc2hlZXQgPSBzdGF0aWNfY2FzdDxDU1NTdHlsZVNoZWV0Kj4oZGVjbGFyYXRpb24tPnN0
eWxlc2hlZXQoKSk7Ci0gICAgaWYgKCFzdHlsZXNoZWV0IHx8ICFzdHlsZXNoZWV0LT5kb2N1bWVu
dCgpKQorICAgIENTU1N0eWxlU2hlZXQqIHN0eWxlU2hlZXQgPSBkZWNsYXJhdGlvbi0+cGFyZW50
U3R5bGVTaGVldCgpOworICAgIGlmICghc3R5bGVTaGVldCB8fCAhc3R5bGVTaGVldC0+ZG9jdW1l
bnQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICh2YWxpZFByaW1pdGl2ZSkgewot
ICAgICAgICBDU1NQcm9wZXJ0eSBwcm9wZXJ0eShwcm9wZXJ0eUlkLCBzdHlsZXNoZWV0LT5kb2N1
bWVudCgpLT5jc3NQcmltaXRpdmVWYWx1ZUNhY2hlKCktPmNyZWF0ZUlkZW50aWZpZXJWYWx1ZSh2
YWx1ZUlEKSwgaW1wb3J0YW50KTsKKyAgICAgICAgQ1NTUHJvcGVydHkgcHJvcGVydHkocHJvcGVy
dHlJZCwgc3R5bGVTaGVldC0+ZG9jdW1lbnQoKS0+Y3NzUHJpbWl0aXZlVmFsdWVDYWNoZSgpLT5j
cmVhdGVJZGVudGlmaWVyVmFsdWUodmFsdWVJRCksIGltcG9ydGFudCk7CiAgICAgICAgIGRlY2xh
cmF0aW9uLT5hZGRQYXJzZWRQcm9wZXJ0eShwcm9wZXJ0eSk7CiAgICAgICAgIHJldHVybiB0cnVl
OwogICAgIH0KICAgICBSR0JBMzIgY29sb3I7CiAgICAgaWYgKCFDU1NQYXJzZXI6OnBhcnNlQ29s
b3Ioc3RyaW5nLCBjb2xvciwgc3RyaWN0ICYmIHN0cmluZ1swXSAhPSAnIycpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0gICAgQ1NTUHJvcGVydHkgcHJvcGVydHkocHJvcGVydHlJZCwgc3R5bGVz
aGVldC0+ZG9jdW1lbnQoKS0+Y3NzUHJpbWl0aXZlVmFsdWVDYWNoZSgpLT5jcmVhdGVDb2xvclZh
bHVlKGNvbG9yKSwgaW1wb3J0YW50KTsKKyAgICBDU1NQcm9wZXJ0eSBwcm9wZXJ0eShwcm9wZXJ0
eUlkLCBzdHlsZVNoZWV0LT5kb2N1bWVudCgpLT5jc3NQcmltaXRpdmVWYWx1ZUNhY2hlKCktPmNy
ZWF0ZUNvbG9yVmFsdWUoY29sb3IpLCBpbXBvcnRhbnQpOwogICAgIGRlY2xhcmF0aW9uLT5hZGRQ
YXJzZWRQcm9wZXJ0eShwcm9wZXJ0eSk7CiAgICAgcmV0dXJuIHRydWU7CiB9CkBAIC00MzIsMTAg
KzQzMiwxMCBAQCBzdGF0aWMgYm9vbCBwYXJzZVNpbXBsZUxlbmd0aFZhbHVlKENTU011dGFibGVT
dHlsZURlY2xhcmF0aW9uKiBkZWNsYXJhdGlvbiwgaW50CiAgICAgaWYgKG51bWJlciA8IDAgJiYg
IWFjY2VwdHNOZWdhdGl2ZU51bWJlcnMpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIENT
U1N0eWxlU2hlZXQqIHN0eWxlc2hlZXQgPSBzdGF0aWNfY2FzdDxDU1NTdHlsZVNoZWV0Kj4oZGVj
bGFyYXRpb24tPnN0eWxlc2hlZXQoKSk7Ci0gICAgaWYgKCFzdHlsZXNoZWV0IHx8ICFzdHlsZXNo
ZWV0LT5kb2N1bWVudCgpKQorICAgIENTU1N0eWxlU2hlZXQqIHN0eWxlU2hlZXQgPSBkZWNsYXJh
dGlvbi0+cGFyZW50U3R5bGVTaGVldCgpOworICAgIGlmICghc3R5bGVTaGVldCB8fCAhc3R5bGVT
aGVldC0+ZG9jdW1lbnQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIENTU1Byb3BlcnR5
IHByb3BlcnR5KHByb3BlcnR5SWQsIHN0eWxlc2hlZXQtPmRvY3VtZW50KCktPmNzc1ByaW1pdGl2
ZVZhbHVlQ2FjaGUoKS0+Y3JlYXRlVmFsdWUobnVtYmVyLCB1bml0KSwgaW1wb3J0YW50KTsKKyAg
ICBDU1NQcm9wZXJ0eSBwcm9wZXJ0eShwcm9wZXJ0eUlkLCBzdHlsZVNoZWV0LT5kb2N1bWVudCgp
LT5jc3NQcmltaXRpdmVWYWx1ZUNhY2hlKCktPmNyZWF0ZVZhbHVlKG51bWJlciwgdW5pdCksIGlt
cG9ydGFudCk7CiAgICAgZGVjbGFyYXRpb24tPmFkZFBhcnNlZFByb3BlcnR5KHByb3BlcnR5KTsK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KQEAgLTQ1Miw4ICs0NTIsNyBAQCBib29sIENTU1BhcnNlcjo6
cGFyc2VWYWx1ZShDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbiogZGVjbGFyYXRpb24sIGludCBw
cm9wZXJ0eQogCiBib29sIENTU1BhcnNlcjo6cGFyc2VWYWx1ZShDU1NNdXRhYmxlU3R5bGVEZWNs
YXJhdGlvbiogZGVjbGFyYXRpb24sIGludCBwcm9wZXJ0eUlkLCBjb25zdCBTdHJpbmcmIHN0cmlu
ZywgYm9vbCBpbXBvcnRhbnQpCiB7Ci0gICAgQVNTRVJUKCFkZWNsYXJhdGlvbi0+c3R5bGVzaGVl
dCgpIHx8IGRlY2xhcmF0aW9uLT5zdHlsZXNoZWV0KCktPmlzQ1NTU3R5bGVTaGVldCgpKTsKLSAg
ICBzZXRTdHlsZVNoZWV0KHN0YXRpY19jYXN0PENTU1N0eWxlU2hlZXQqPihkZWNsYXJhdGlvbi0+
c3R5bGVzaGVldCgpKSk7CisgICAgc2V0U3R5bGVTaGVldChkZWNsYXJhdGlvbi0+cGFyZW50U3R5
bGVTaGVldCgpKTsKIAogICAgIHNldHVwUGFyc2VyKCJALXdlYmtpdC12YWx1ZXsiLCBzdHJpbmcs
ICJ9ICIpOwogCkBAIC01MDUsOCArNTA0LDcgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlQ29sb3Io
UkdCQTMyJiBjb2xvciwgY29uc3QgU3RyaW5nJiBzdHJpbmcsIGJvb2wgc3RyaWN0KQogCiBib29s
IENTU1BhcnNlcjo6cGFyc2VDb2xvcihDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbiogZGVjbGFy
YXRpb24sIGNvbnN0IFN0cmluZyYgc3RyaW5nKQogewotICAgIEFTU0VSVCghZGVjbGFyYXRpb24t
PnN0eWxlc2hlZXQoKSB8fCBkZWNsYXJhdGlvbi0+c3R5bGVzaGVldCgpLT5pc0NTU1N0eWxlU2hl
ZXQoKSk7Ci0gICAgc2V0U3R5bGVTaGVldChzdGF0aWNfY2FzdDxDU1NTdHlsZVNoZWV0Kj4oZGVj
bGFyYXRpb24tPnN0eWxlc2hlZXQoKSkpOworICAgIHNldFN0eWxlU2hlZXQoZGVjbGFyYXRpb24t
PnBhcmVudFN0eWxlU2hlZXQoKSk7CiAKICAgICBzZXR1cFBhcnNlcigiQC13ZWJraXQtZGVjbHN7
Y29sb3I6Iiwgc3RyaW5nLCAifSAiKTsKICAgICBjc3N5eXBhcnNlKHRoaXMpOwpAQCAtNTUzLDgg
KzU1MSw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZURlY2xhcmF0aW9uKENTU011dGFibGVTdHls
ZURlY2xhcmF0aW9uKiBkZWNsYXJhdGlvbiwgY29uc3QKICAgICAvLyBMZW5ndGggb2YgdGhlICJA
LXdlYmtpdC1kZWNsc3siIHByZWZpeC4KICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgcHJlZml4
TGVuZ3RoID0gMTU7CiAKLSAgICBBU1NFUlQoIWRlY2xhcmF0aW9uLT5zdHlsZXNoZWV0KCkgfHwg
ZGVjbGFyYXRpb24tPnN0eWxlc2hlZXQoKS0+aXNDU1NTdHlsZVNoZWV0KCkpOwotICAgIHNldFN0
eWxlU2hlZXQoc3RhdGljX2Nhc3Q8Q1NTU3R5bGVTaGVldCo+KGRlY2xhcmF0aW9uLT5zdHlsZXNo
ZWV0KCkpKTsKKyAgICBzZXRTdHlsZVNoZWV0KGRlY2xhcmF0aW9uLT5wYXJlbnRTdHlsZVNoZWV0
KCkpOwogICAgIGlmIChzdHlsZVNvdXJjZURhdGEpIHsKICAgICAgICAgbV9jdXJyZW50UnVsZURh
dGEgPSBDU1NSdWxlU291cmNlRGF0YTo6Y3JlYXRlKCk7CiAgICAgICAgIG1fY3VycmVudFJ1bGVE
YXRhLT5zdHlsZVNvdXJjZURhdGEgPSBDU1NTdHlsZVNvdXJjZURhdGE6OmNyZWF0ZSgpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IGZmMTlmYTIuLmM2
NTFmM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAg
LTQwLDcgKzQwLDggQEAgdXNpbmcgbmFtZXNwYWNlIFdURjsKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogQ1NTU3R5bGVEZWNsYXJhdGlvbjo6Q1NTU3R5bGVEZWNsYXJhdGlvbihDU1NSdWxlKiBwYXJl
bnQpCi0gICAgOiBTdHlsZUJhc2UocGFyZW50KQorICAgIDogbV9wYXJlbnRJc1J1bGUodHJ1ZSkK
KyAgICAsIG1fcGFyZW50UnVsZShwYXJlbnQpCiB7CiB9CiAKQEAgLTE0NCwxMSArMTQ1LDYgQEAg
Ym9vbCBDU1NTdHlsZURlY2xhcmF0aW9uOjppc1Byb3BlcnR5TmFtZShjb25zdCBTdHJpbmcmIHBy
b3BlcnR5TmFtZSkKICAgICByZXR1cm4gY3NzUHJvcGVydHlJRChwcm9wZXJ0eU5hbWUpOwogfQog
Ci1DU1NSdWxlKiBDU1NTdHlsZURlY2xhcmF0aW9uOjpwYXJlbnRSdWxlKCkgY29uc3QKLXsKLSAg
ICByZXR1cm4gKHBhcmVudCgpICYmIHBhcmVudCgpLT5pc1J1bGUoKSkgPyBzdGF0aWNfY2FzdDxD
U1NSdWxlKj4ocGFyZW50KCkpIDogMDsKLX0KLQogYm9vbCBDU1NTdHlsZURlY2xhcmF0aW9uOjpj
c3NQcm9wZXJ0eU1hdGNoZXMoY29uc3QgQ1NTUHJvcGVydHkqIHByb3BlcnR5KSBjb25zdAogewog
ICAgIFJlZlB0cjxDU1NWYWx1ZT4gdmFsdWUgPSBnZXRQcm9wZXJ0eUNTU1ZhbHVlKHByb3BlcnR5
LT5pZCgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0
aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVEZWNsYXJhdGlvbi5oCmluZGV4IDQ0
Nzk3NTIuLjU1NmQxMGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZURl
Y2xhcmF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24u
aApAQCAtMjEsNiArMjEsNyBAQAogI2lmbmRlZiBDU1NTdHlsZURlY2xhcmF0aW9uX2gKICNkZWZp
bmUgQ1NTU3R5bGVEZWNsYXJhdGlvbl9oCiAKKyNpbmNsdWRlICJDU1NSdWxlLmgiCiAjaW5jbHVk
ZSAiU3R5bGVCYXNlLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KIApAQCAtMjgsMTYgKzI5
LDQyIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ1NTTXV0YWJsZVN0eWxlRGVjbGFy
YXRpb247CiBjbGFzcyBDU1NQcm9wZXJ0eTsKLWNsYXNzIENTU1J1bGU7CitjbGFzcyBDU1NTdHls
ZVNoZWV0OwogY2xhc3MgQ1NTVmFsdWU7CiAKIHR5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CiAK
LWNsYXNzIENTU1N0eWxlRGVjbGFyYXRpb24gOiBwdWJsaWMgU3R5bGVCYXNlIHsKK2NsYXNzIENT
U1N0eWxlRGVjbGFyYXRpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxDU1NTdHlsZURlY2xhcmF0aW9u
PiB7CiBwdWJsaWM6CisgICAgdmlydHVhbCB+Q1NTU3R5bGVEZWNsYXJhdGlvbigpIHsgfQorCiAg
ICAgc3RhdGljIGJvb2wgaXNQcm9wZXJ0eU5hbWUoY29uc3QgU3RyaW5nJik7CiAKLSAgICBDU1NS
dWxlKiBwYXJlbnRSdWxlKCkgY29uc3Q7CisgICAgLy8gRklYTUU6IFJlZmFjdG9yIHNvIENTU1N0
eWxlRGVjbGFyYXRpb24gbmV2ZXIgbmVlZHMgdG8gaGF2ZSBhIHN0eWxlIHNoZWV0IHBhcmVudC4K
KworICAgIENTU1J1bGUqIHBhcmVudFJ1bGUoKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJu
IG1fcGFyZW50SXNSdWxlID8gbV9wYXJlbnRSdWxlIDogMDsKKyAgICB9CisKKyAgICB2b2lkIHNl
dFBhcmVudFJ1bGUoQ1NTUnVsZSogcnVsZSkKKyAgICB7CisgICAgICAgIG1fcGFyZW50SXNSdWxl
ID0gdHJ1ZTsKKyAgICAgICAgbV9wYXJlbnRSdWxlID0gcnVsZTsKKyAgICB9CisKKyAgICB2b2lk
IHNldFBhcmVudFN0eWxlU2hlZXQoQ1NTU3R5bGVTaGVldCogc3R5bGVTaGVldCkKKyAgICB7Cisg
ICAgICAgIG1fcGFyZW50SXNSdWxlID0gZmFsc2U7CisgICAgICAgIG1fcGFyZW50U3R5bGVTaGVl
dCA9IHN0eWxlU2hlZXQ7CisgICAgfQorCisgICAgQ1NTU3R5bGVTaGVldCogcGFyZW50U3R5bGVT
aGVldCgpIGNvbnN0CisgICAgeworICAgICAgICBpZiAoIW1fcGFyZW50SXNSdWxlKQorICAgICAg
ICAgICAgcmV0dXJuIG1fcGFyZW50U3R5bGVTaGVldDsKKyAgICAgICAgcmV0dXJuIG1fcGFyZW50
UnVsZSA/IG1fcGFyZW50UnVsZS0+cGFyZW50U3R5bGVTaGVldCgpIDogMDsKKyAgICB9CiAKICAg
ICB2aXJ0dWFsIFN0cmluZyBjc3NUZXh0KCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBz
ZXRDc3NUZXh0KGNvbnN0IFN0cmluZyYsIEV4Y2VwdGlvbkNvZGUmKSA9IDA7CkBAIC03NiwxMSAr
MTAzLDE5IEBAIHB1YmxpYzoKICAgICB2b2lkIHNob3dTdHlsZSgpOwogI2VuZGlmCiAKKyAgICB2
aXJ0dWFsIGJvb2wgaXNNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbigpIGNvbnN0IHsgcmV0dXJuIGZh
bHNlOyB9CisKIHByb3RlY3RlZDoKICAgICBDU1NTdHlsZURlY2xhcmF0aW9uKENTU1J1bGUqIHBh
cmVudFJ1bGUgPSAwKTsKIAogICAgIHZpcnR1YWwgYm9vbCBjc3NQcm9wZXJ0eU1hdGNoZXMoY29u
c3QgQ1NTUHJvcGVydHkqKSBjb25zdDsKIAorcHJpdmF0ZToKKyAgICBib29sIG1fcGFyZW50SXNS
dWxlOworICAgIHVuaW9uIHsKKyAgICAgICAgQ1NTUnVsZSogbV9wYXJlbnRSdWxlOworICAgICAg
ICBDU1NTdHlsZVNoZWV0KiBtX3BhcmVudFN0eWxlU2hlZXQ7CisgICAgfTsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHls
ZVJ1bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlUnVsZS5jcHAKaW5kZXggZmFm
NjBiMC4uZGZjMmNjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlUnVs
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlUnVsZS5jcHAKQEAgLTQwLDcg
KzQwLDcgQEAgQ1NTU3R5bGVSdWxlOjpDU1NTdHlsZVJ1bGUoQ1NTU3R5bGVTaGVldCogcGFyZW50
LCBpbnQgc291cmNlTGluZSkKIENTU1N0eWxlUnVsZTo6fkNTU1N0eWxlUnVsZSgpCiB7CiAgICAg
aWYgKG1fc3R5bGUpCi0gICAgICAgIG1fc3R5bGUtPnNldFBhcmVudCgwKTsKKyAgICAgICAgbV9z
dHlsZS0+c2V0UGFyZW50UnVsZSgwKTsKIH0KIAogU3RyaW5nIENTU1N0eWxlUnVsZTo6c2VsZWN0
b3JUZXh0KCkgY29uc3QKQEAgLTU3LDcgKzU3LDcgQEAgU3RyaW5nIENTU1N0eWxlUnVsZTo6c2Vs
ZWN0b3JUZXh0KCkgY29uc3QKIHZvaWQgQ1NTU3R5bGVSdWxlOjpzZXRTZWxlY3RvclRleHQoY29u
c3QgU3RyaW5nJiBzZWxlY3RvclRleHQpCiB7CiAgICAgRG9jdW1lbnQqIGRvYyA9IDA7Ci0gICAg
U3R5bGVTaGVldCogb3duZXJTdHlsZVNoZWV0ID0gbV9zdHlsZS0+c3R5bGVzaGVldCgpOworICAg
IFN0eWxlU2hlZXQqIG93bmVyU3R5bGVTaGVldCA9IG1fc3R5bGUtPnBhcmVudFN0eWxlU2hlZXQo
KTsKICAgICBpZiAob3duZXJTdHlsZVNoZWV0KSB7CiAgICAgICAgIGlmIChvd25lclN0eWxlU2hl
ZXQtPmlzQ1NTU3R5bGVTaGVldCgpKQogICAgICAgICAgICAgZG9jID0gc3RhdGljX2Nhc3Q8Q1NT
U3R5bGVTaGVldCo+KG93bmVyU3R5bGVTaGVldCktPmRvY3VtZW50KCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVCYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZUJhc2UuY3BwCmluZGV4IGE0MmQ3YmUuLmJhMmE4MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZUJhc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZUJhc2Uu
Y3BwCkBAIC00Niw5ICs0Niw2IEBAIE5vZGUqIFN0eWxlQmFzZTo6bm9kZSgpCiAgICAgaWYgKGlz
U3R5bGVTaGVldCgpKQogICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8U3R5bGVTaGVldCo+KHRo
aXMpLT5vd25lck5vZGUoKTsKIAotICAgIGlmIChpc011dGFibGVTdHlsZURlY2xhcmF0aW9uKCkp
Ci0gICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbio+
KHRoaXMpLT5ub2RlKCk7Ci0KICAgICByZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlQmFzZS5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQmFzZS5o
CmluZGV4IGIxZWJjOWMuLjAzYWYyMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZUJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVCYXNlLmgKQEAgLTUzLDgg
KzUzLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIGJvb2wgaXNDU1NT
dHlsZVNoZWV0KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICAgICAgdmlydHVhbCBib29s
IGlzWFNMU3R5bGVTaGVldCgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAKLSAgICAgICAgdmly
dHVhbCBib29sIGlzTXV0YWJsZVN0eWxlRGVjbGFyYXRpb24oKSBjb25zdCB7IHJldHVybiBmYWxz
ZTsgfQotCiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIGNzc1RleHQoKSBjb25zdDsKIAogICAgICAg
ICB2aXJ0dWFsIHZvaWQgY2hlY2tMb2FkZWQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9XZWJLaXRDU1NLZXlmcmFtZVJ1bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktp
dENTU0tleWZyYW1lUnVsZS5jcHAKaW5kZXggY2Q2ZmQ2MC4uMjEyMDM0NiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0tleWZyYW1lUnVsZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL1dlYktpdENTU0tleWZyYW1lUnVsZS5jcHAKQEAgLTM4LDcgKzM4LDcgQEAg
V2ViS2l0Q1NTS2V5ZnJhbWVSdWxlOjpXZWJLaXRDU1NLZXlmcmFtZVJ1bGUoQ1NTU3R5bGVTaGVl
dCogcGFyZW50KQogV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlOjp+V2ViS2l0Q1NTS2V5ZnJhbWVSdWxl
KCkKIHsKICAgICBpZiAobV9zdHlsZSkKLSAgICAgICAgbV9zdHlsZS0+c2V0UGFyZW50KDApOwor
ICAgICAgICBtX3N0eWxlLT5zZXRQYXJlbnRTdHlsZVNoZWV0KDApOwogfQogCiBTdHJpbmcgV2Vi
S2l0Q1NTS2V5ZnJhbWVSdWxlOjpjc3NUZXh0KCkgY29uc3QKQEAgLTYxLDcgKzYxLDcgQEAgYm9v
bCBXZWJLaXRDU1NLZXlmcmFtZVJ1bGU6OnBhcnNlU3RyaW5nKGNvbnN0IFN0cmluZyYgLypzdHJp
bmcqLywgYm9vbCAvKnN0cmljdCoKIHZvaWQgV2ViS2l0Q1NTS2V5ZnJhbWVSdWxlOjpzZXREZWNs
YXJhdGlvbihQYXNzUmVmUHRyPENTU011dGFibGVTdHlsZURlY2xhcmF0aW9uPiBzdHlsZSkKIHsK
ICAgICBtX3N0eWxlID0gc3R5bGU7Ci0gICAgbV9zdHlsZS0+c2V0UGFyZW50KHBhcmVudCgpKTsK
KyAgICBtX3N0eWxlLT5zZXRQYXJlbnRTdHlsZVNoZWV0KHBhcmVudFN0eWxlU2hlZXQoKSk7CiB9
CiAKIC8qIHN0YXRpYyAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENT
U0tleWZyYW1lc1J1bGUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1dlYktpdENTU0tleWZyYW1l
c1J1bGUuY3BwCmluZGV4IGUxNzFiMGEuLmQ2Y2M0MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9XZWJLaXRDU1NLZXlmcmFtZXNSdWxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZS5jcHAKQEAgLTQ1LDcgKzQ1LDcgQEAgV2ViS2l0Q1NT
S2V5ZnJhbWVzUnVsZTo6fldlYktpdENTU0tleWZyYW1lc1J1bGUoKQogICAgIGZvciAodW5zaWdu
ZWQgaSA9IDA7IGkgPCBsZW5ndGgoKTsgKytpKSB7CiAgICAgICAgIFdlYktpdENTU0tleWZyYW1l
UnVsZSogcnVsZSA9IGl0ZW0oaSk7CiAgICAgICAgIGlmIChDU1NNdXRhYmxlU3R5bGVEZWNsYXJh
dGlvbiogc3R5bGUgPSBydWxlLT5zdHlsZSgpKQotICAgICAgICAgICAgc3R5bGUtPnNldFBhcmVu
dCgwKTsKKyAgICAgICAgICAgIHN0eWxlLT5zZXRQYXJlbnRSdWxlKDApOwogICAgICAgICBydWxl
LT5zZXRQYXJlbnQoMCk7CiAgICAgfQogfQpAQCAtOTMsNyArOTMsNyBAQCB2b2lkIFdlYktpdENT
U0tleWZyYW1lc1J1bGU6OmFwcGVuZChXZWJLaXRDU1NLZXlmcmFtZVJ1bGUqIHJ1bGUpCiAgICAg
cnVsZS0+c2V0UGFyZW50KHRoaXMpOwogCiAgICAgaWYgKENTU011dGFibGVTdHlsZURlY2xhcmF0
aW9uKiBzdHlsZSA9IHJ1bGUtPnN0eWxlKCkpCi0gICAgICAgIHN0eWxlLT5zZXRQYXJlbnQodGhp
cyk7CisgICAgICAgIHN0eWxlLT5zZXRQYXJlbnRSdWxlKHRoaXMpOwogfQogCiB2b2lkIFdlYktp
dENTU0tleWZyYW1lc1J1bGU6Omluc2VydFJ1bGUoY29uc3QgU3RyaW5nJiBydWxlKQpAQCAtMTEy
LDcgKzExMiw3IEBAIHZvaWQgV2ViS2l0Q1NTS2V5ZnJhbWVzUnVsZTo6ZGVsZXRlUnVsZShjb25z
dCBTdHJpbmcmIHMpCiAKICAgICBXZWJLaXRDU1NLZXlmcmFtZVJ1bGUqIHJ1bGUgPSBpdGVtKGkp
OwogICAgIGlmIChDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvbiogc3R5bGUgPSBydWxlLT5zdHls
ZSgpKQotICAgICAgICBzdHlsZS0+c2V0UGFyZW50KDApOworICAgICAgICBzdHlsZS0+c2V0UGFy
ZW50UnVsZSgwKTsKIAogICAgIG1fbHN0Q1NTUnVsZXMtPmRlbGV0ZVJ1bGUoaSk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vU3R5bGVkRWxlbWVudC5jcHAKaW5kZXggMDgwMjhhYi4uODdhNWJlNSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1N0eWxlZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2RvbS9TdHlsZWRFbGVtZW50LmNwcApAQCAtMTMwLDcgKzEzMCw3IEBAIFBhc3NSZWZQ
dHI8QXR0cmlidXRlPiBTdHlsZWRFbGVtZW50OjpjcmVhdGVBdHRyaWJ1dGUoY29uc3QgUXVhbGlm
aWVkTmFtZSYgbmFtZSwKIHZvaWQgU3R5bGVkRWxlbWVudDo6Y3JlYXRlSW5saW5lU3R5bGVEZWNs
KCkKIHsKICAgICBtX2lubGluZVN0eWxlRGVjbCA9IENTU011dGFibGVTdHlsZURlY2xhcmF0aW9u
OjpjcmVhdGUoKTsKLSAgICBtX2lubGluZVN0eWxlRGVjbC0+c2V0UGFyZW50KGRvY3VtZW50KCkt
PmVsZW1lbnRTaGVldCgpKTsKKyAgICBtX2lubGluZVN0eWxlRGVjbC0+c2V0UGFyZW50U3R5bGVT
aGVldChkb2N1bWVudCgpLT5lbGVtZW50U2hlZXQoKSk7CiAgICAgbV9pbmxpbmVTdHlsZURlY2wt
PnNldE5vZGUodGhpcyk7CiAgICAgbV9pbmxpbmVTdHlsZURlY2wtPnNldFN0cmljdFBhcnNpbmco
aXNIVE1MRWxlbWVudCgpICYmICFkb2N1bWVudCgpLT5pblF1aXJrc01vZGUoKSk7CiB9CkBAIC0x
MzksNyArMTM5LDcgQEAgdm9pZCBTdHlsZWRFbGVtZW50OjpkZXN0cm95SW5saW5lU3R5bGVEZWNs
KCkKIHsKICAgICBpZiAobV9pbmxpbmVTdHlsZURlY2wpIHsKICAgICAgICAgbV9pbmxpbmVTdHls
ZURlY2wtPnNldE5vZGUoMCk7Ci0gICAgICAgIG1faW5saW5lU3R5bGVEZWNsLT5zZXRQYXJlbnQo
MCk7CisgICAgICAgIG1faW5saW5lU3R5bGVEZWNsLT5zZXRQYXJlbnRTdHlsZVNoZWV0KDApOwog
ICAgICAgICBtX2lubGluZVN0eWxlRGVjbCA9IDA7CiAgICAgfQogfQpAQCAtMTk1LDcgKzE5NSw3
IEBAIHZvaWQgU3R5bGVkRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdlZChBdHRyaWJ1dGUqIGF0dHIs
IGJvb2wgcHJlc2VydmVEZWNscykKICAgICAgICAgLy8gQWRkIHRoZSBkZWNsIHRvIHRoZSB0YWJs
ZSBpbiB0aGUgYXBwcm9wcmlhdGUgc3BvdC4KICAgICAgICAgc2V0TWFwcGVkQXR0cmlidXRlRGVj
bChlbnRyeSwgYXR0ciwgYXR0ci0+ZGVjbCgpKTsKICAgICAgICAgYXR0ci0+ZGVjbCgpLT5zZXRN
YXBwZWRTdGF0ZShlbnRyeSwgYXR0ci0+bmFtZSgpLCBhdHRyLT52YWx1ZSgpKTsKLSAgICAgICAg
YXR0ci0+ZGVjbCgpLT5zZXRQYXJlbnQoMCk7CisgICAgICAgIGF0dHItPmRlY2woKS0+c2V0UGFy
ZW50U3R5bGVTaGVldCgwKTsKICAgICAgICAgYXR0ci0+ZGVjbCgpLT5zZXROb2RlKDApOwogICAg
ICAgICBpZiAoYXR0cmlidXRlTWFwKCkpCiAgICAgICAgICAgICBhdHRyaWJ1dGVNYXAoKS0+ZGVj
bEFkZGVkKCk7CkBAIC00MDUsNyArNDA1LDcgQEAgdm9pZCBTdHlsZWRFbGVtZW50OjpjcmVhdGVN
YXBwZWREZWNsKEF0dHJpYnV0ZSogYXR0cikKIHsKICAgICBSZWZQdHI8Q1NTTWFwcGVkQXR0cmli
dXRlRGVjbGFyYXRpb24+IGRlY2wgPSBDU1NNYXBwZWRBdHRyaWJ1dGVEZWNsYXJhdGlvbjo6Y3Jl
YXRlKCk7CiAgICAgYXR0ci0+c2V0RGVjbChkZWNsKTsKLSAgICBkZWNsLT5zZXRQYXJlbnQoZG9j
dW1lbnQoKS0+ZWxlbWVudFNoZWV0KCkpOworICAgIGRlY2wtPnNldFBhcmVudFN0eWxlU2hlZXQo
ZG9jdW1lbnQoKS0+ZWxlbWVudFNoZWV0KCkpOwogICAgIGRlY2wtPnNldE5vZGUodGhpcyk7CiAg
ICAgZGVjbC0+c2V0U3RyaWN0UGFyc2luZyhmYWxzZSk7IC8vIE1hcHBlZCBhdHRyaWJ1dGVzIGFy
ZSBqdXN0IGFsd2F5cyBxdWlya3kuCiB9CkBAIC00NTQsNyArNDU0LDcgQEAgdm9pZCBTdHlsZWRF
bGVtZW50OjphZGRTdWJyZXNvdXJjZUF0dHJpYnV0ZVVSTHMoTGlzdEhhc2hTZXQ8S1VSTD4mIHVy
bHMpIGNvbnN0CiB2b2lkIFN0eWxlZEVsZW1lbnQ6OmRpZE1vdmVUb05ld093bmVyRG9jdW1lbnQo
KQogewogICAgIGlmIChtX2lubGluZVN0eWxlRGVjbCkKLSAgICAgICAgbV9pbmxpbmVTdHlsZURl
Y2wtPnNldFBhcmVudChkb2N1bWVudCgpLT5lbGVtZW50U2hlZXQoKSk7CisgICAgICAgIG1faW5s
aW5lU3R5bGVEZWNsLT5zZXRQYXJlbnRTdHlsZVNoZWV0KGRvY3VtZW50KCktPmVsZW1lbnRTaGVl
dCgpKTsKIAogICAgIEVsZW1lbnQ6OmRpZE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxUYWJsZUVsZW1lbnQuY3BwCmluZGV4IDU5YjA2M2EuLjI3NjAy
MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRhYmxlRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGFibGVFbGVtZW50LmNwcApAQCAtNDU1LDcg
KzQ1NSw3IEBAIHZvaWQgSFRNTFRhYmxlRWxlbWVudDo6YWRkaXRpb25hbEF0dHJpYnV0ZVN0eWxl
RGVjbHMoVmVjdG9yPENTU011dGFibGVTdHlsZURlY2xhCiAgICAgQ1NTTWFwcGVkQXR0cmlidXRl
RGVjbGFyYXRpb24qIGRlY2wgPSBnZXRNYXBwZWRBdHRyaWJ1dGVEZWNsKGVQZXJzaXN0ZW50LCB0
YWJsZWJvcmRlckF0dHIsIGJvcmRlclZhbHVlKTsKICAgICBpZiAoIWRlY2wpIHsKICAgICAgICAg
ZGVjbCA9IENTU01hcHBlZEF0dHJpYnV0ZURlY2xhcmF0aW9uOjpjcmVhdGUoKS5yZWxlYXNlUmVm
KCk7IC8vIFRoaXMgc2luZ2xlIHJlZiBwaW5zIHVzIGluIHRoZSB0YWJsZSB1bnRpbCB0aGUgZG9j
dW1lbnQgZGllcy4KLSAgICAgICAgZGVjbC0+c2V0UGFyZW50KGRvY3VtZW50KCktPmVsZW1lbnRT
aGVldCgpKTsKKyAgICAgICAgZGVjbC0+c2V0UGFyZW50U3R5bGVTaGVldChkb2N1bWVudCgpLT5l
bGVtZW50U2hlZXQoKSk7CiAgICAgICAgIGRlY2wtPnNldE5vZGUodGhpcyk7CiAgICAgICAgIGRl
Y2wtPnNldFN0cmljdFBhcnNpbmcoZmFsc2UpOyAvLyBNYXBwZWQgYXR0cmlidXRlcyBhcmUganVz
dCBhbHdheXMgcXVpcmt5LgogICAgICAgICAKQEAgLTQ2Niw3ICs0NjYsNyBAQCB2b2lkIEhUTUxU
YWJsZUVsZW1lbnQ6OmFkZGl0aW9uYWxBdHRyaWJ1dGVTdHlsZURlY2xzKFZlY3RvcjxDU1NNdXRh
YmxlU3R5bGVEZWNsYQogICAgICAgICBkZWNsLT5zZXRQcm9wZXJ0eShDU1NQcm9wZXJ0eUJvcmRl
clJpZ2h0U3R5bGUsIHYsIGZhbHNlKTsKIAogICAgICAgICBzZXRNYXBwZWRBdHRyaWJ1dGVEZWNs
KGVQZXJzaXN0ZW50LCB0YWJsZWJvcmRlckF0dHIsIGJvcmRlclZhbHVlLCBkZWNsKTsKLSAgICAg
ICAgZGVjbC0+c2V0UGFyZW50KDApOworICAgICAgICBkZWNsLT5zZXRQYXJlbnRTdHlsZVNoZWV0
KDApOwogICAgICAgICBkZWNsLT5zZXROb2RlKDApOwogICAgICAgICBkZWNsLT5zZXRNYXBwZWRT
dGF0ZShlUGVyc2lzdGVudCwgdGFibGVib3JkZXJBdHRyLCBib3JkZXJWYWx1ZSk7CiAgICAgfQpA
QCAtNTEzLDcgKzUxMyw3IEBAIHZvaWQgSFRNTFRhYmxlRWxlbWVudDo6YWRkU2hhcmVkQ2VsbEJv
cmRlcnNEZWNsKFZlY3RvcjxDU1NNdXRhYmxlU3R5bGVEZWNsYXJhdGlvCiAgICAgQ1NTTWFwcGVk
QXR0cmlidXRlRGVjbGFyYXRpb24qIGRlY2wgPSBnZXRNYXBwZWRBdHRyaWJ1dGVEZWNsKGVQZXJz
aXN0ZW50LCBjZWxsYm9yZGVyQXR0ciwgY2VsbGJvcmRlclZhbHVlKTsKICAgICBpZiAoIWRlY2wp
IHsKICAgICAgICAgZGVjbCA9IENTU01hcHBlZEF0dHJpYnV0ZURlY2xhcmF0aW9uOjpjcmVhdGUo
KS5yZWxlYXNlUmVmKCk7IC8vIFRoaXMgc2luZ2xlIHJlZiBwaW5zIHVzIGluIHRoZSB0YWJsZSB1
bnRpbCB0aGUgZG9jdW1lbnQgZGllcy4KLSAgICAgICAgZGVjbC0+c2V0UGFyZW50KGRvY3VtZW50
KCktPmVsZW1lbnRTaGVldCgpKTsKKyAgICAgICAgZGVjbC0+c2V0UGFyZW50U3R5bGVTaGVldChk
b2N1bWVudCgpLT5lbGVtZW50U2hlZXQoKSk7CiAgICAgICAgIGRlY2wtPnNldE5vZGUodGhpcyk7
CiAgICAgICAgIGRlY2wtPnNldFN0cmljdFBhcnNpbmcoZmFsc2UpOyAvLyBNYXBwZWQgYXR0cmli
dXRlcyBhcmUganVzdCBhbHdheXMgcXVpcmt5LgogICAgICAgICAKQEAgLTU1NCw3ICs1NTQsNyBA
QCB2b2lkIEhUTUxUYWJsZUVsZW1lbnQ6OmFkZFNoYXJlZENlbGxCb3JkZXJzRGVjbChWZWN0b3I8
Q1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpbwogICAgICAgICB9CiAKICAgICAgICAgc2V0TWFwcGVk
QXR0cmlidXRlRGVjbChlUGVyc2lzdGVudCwgY2VsbGJvcmRlckF0dHIsICpjZWxsQm9yZGVyTmFt
ZXNbYm9yZGVyc10sIGRlY2wpOwotICAgICAgICBkZWNsLT5zZXRQYXJlbnQoMCk7CisgICAgICAg
IGRlY2wtPnNldFBhcmVudFN0eWxlU2hlZXQoMCk7CiAgICAgICAgIGRlY2wtPnNldE5vZGUoMCk7
CiAgICAgICAgIGRlY2wtPnNldE1hcHBlZFN0YXRlKGVQZXJzaXN0ZW50LCBjZWxsYm9yZGVyQXR0
ciwgY2VsbGJvcmRlclZhbHVlKTsKICAgICB9CkBAIC01NzIsNyArNTcyLDcgQEAgdm9pZCBIVE1M
VGFibGVFbGVtZW50OjphZGRTaGFyZWRDZWxsUGFkZGluZ0RlY2woVmVjdG9yPENTU011dGFibGVT
dHlsZURlY2xhcmF0aW8KICAgICAgICAgbV9wYWRkaW5nRGVjbCA9IGdldE1hcHBlZEF0dHJpYnV0
ZURlY2woZVVuaXZlcnNhbCwgY2VsbHBhZGRpbmdBdHRyLCBwYWRkaW5nVmFsdWUpOwogICAgICAg
ICBpZiAoIW1fcGFkZGluZ0RlY2wpIHsKICAgICAgICAgICAgIG1fcGFkZGluZ0RlY2wgPSBDU1NN
YXBwZWRBdHRyaWJ1dGVEZWNsYXJhdGlvbjo6Y3JlYXRlKCk7Ci0gICAgICAgICAgICBtX3BhZGRp
bmdEZWNsLT5zZXRQYXJlbnQoZG9jdW1lbnQoKS0+ZWxlbWVudFNoZWV0KCkpOworICAgICAgICAg
ICAgbV9wYWRkaW5nRGVjbC0+c2V0UGFyZW50U3R5bGVTaGVldChkb2N1bWVudCgpLT5lbGVtZW50
U2hlZXQoKSk7CiAgICAgICAgICAgICBtX3BhZGRpbmdEZWNsLT5zZXROb2RlKHRoaXMpOwogICAg
ICAgICAgICAgbV9wYWRkaW5nRGVjbC0+c2V0U3RyaWN0UGFyc2luZyhmYWxzZSk7IC8vIE1hcHBl
ZCBhdHRyaWJ1dGVzIGFyZSBqdXN0IGFsd2F5cyBxdWlya3kuCiAgICAgICAgICAgICAKQEAgLTU4
Miw3ICs1ODIsNyBAQCB2b2lkIEhUTUxUYWJsZUVsZW1lbnQ6OmFkZFNoYXJlZENlbGxQYWRkaW5n
RGVjbChWZWN0b3I8Q1NTTXV0YWJsZVN0eWxlRGVjbGFyYXRpbwogICAgICAgICAgICAgbV9wYWRk
aW5nRGVjbC0+c2V0UHJvcGVydHkoQ1NTUHJvcGVydHlQYWRkaW5nTGVmdCwgcGFkZGluZ1ZhbHVl
LCBmYWxzZSk7CiAgICAgICAgIH0KICAgICAgICAgc2V0TWFwcGVkQXR0cmlidXRlRGVjbChlVW5p
dmVyc2FsLCBjZWxscGFkZGluZ0F0dHIsIHBhZGRpbmdWYWx1ZSwgbV9wYWRkaW5nRGVjbC5nZXQo
KSk7Ci0gICAgICAgIG1fcGFkZGluZ0RlY2wtPnNldFBhcmVudCgwKTsKKyAgICAgICAgbV9wYWRk
aW5nRGVjbC0+c2V0UGFyZW50U3R5bGVTaGVldCgwKTsKICAgICAgICAgbV9wYWRkaW5nRGVjbC0+
c2V0Tm9kZSgwKTsKICAgICAgICAgbV9wYWRkaW5nRGVjbC0+c2V0TWFwcGVkU3RhdGUoZVVuaXZl
cnNhbCwgY2VsbHBhZGRpbmdBdHRyLCBwYWRkaW5nVmFsdWUpOwogICAgIH0KQEAgLTU5OSw3ICs1
OTksNyBAQCB2b2lkIEhUTUxUYWJsZUVsZW1lbnQ6OmFkZFNoYXJlZEdyb3VwRGVjbHMoYm9vbCBy
b3dzLCBWZWN0b3I8Q1NTTXV0YWJsZVN0eWxlRGVjbAogICAgIENTU01hcHBlZEF0dHJpYnV0ZURl
Y2xhcmF0aW9uKiBkZWNsID0gZ2V0TWFwcGVkQXR0cmlidXRlRGVjbChlUGVyc2lzdGVudCwgcnVs
ZXNBdHRyLCBydWxlc1ZhbHVlKTsKICAgICBpZiAoIWRlY2wpIHsKICAgICAgICAgZGVjbCA9IENT
U01hcHBlZEF0dHJpYnV0ZURlY2xhcmF0aW9uOjpjcmVhdGUoKS5yZWxlYXNlUmVmKCk7IC8vIFRo
aXMgc2luZ2xlIHJlZiBwaW5zIHVzIGluIHRoZSB0YWJsZSB1bnRpbCB0aGUgZG9jdW1lbnQgZGll
cy4KLSAgICAgICAgZGVjbC0+c2V0UGFyZW50KGRvY3VtZW50KCktPmVsZW1lbnRTaGVldCgpKTsK
KyAgICAgICAgZGVjbC0+c2V0UGFyZW50U3R5bGVTaGVldChkb2N1bWVudCgpLT5lbGVtZW50U2hl
ZXQoKSk7CiAgICAgICAgIGRlY2wtPnNldE5vZGUodGhpcyk7CiAgICAgICAgIGRlY2wtPnNldFN0
cmljdFBhcnNpbmcoZmFsc2UpOyAvLyBNYXBwZWQgYXR0cmlidXRlcyBhcmUganVzdCBhbHdheXMg
cXVpcmt5LgogICAgICAgICAKQEAgLTYxNiw3ICs2MTYsNyBAQCB2b2lkIEhUTUxUYWJsZUVsZW1l
bnQ6OmFkZFNoYXJlZEdyb3VwRGVjbHMoYm9vbCByb3dzLCBWZWN0b3I8Q1NTTXV0YWJsZVN0eWxl
RGVjbAogICAgICAgICB9CiAKICAgICAgICAgc2V0TWFwcGVkQXR0cmlidXRlRGVjbChlUGVyc2lz
dGVudCwgcnVsZXNBdHRyLCBydWxlc1ZhbHVlLCBkZWNsKTsKLSAgICAgICAgZGVjbC0+c2V0UGFy
ZW50KDApOworICAgICAgICBkZWNsLT5zZXRQYXJlbnRTdHlsZVNoZWV0KDApOwogICAgICAgICBk
ZWNsLT5zZXROb2RlKDApOwogICAgICAgICBkZWNsLT5zZXRNYXBwZWRTdGF0ZShlUGVyc2lzdGVu
dCwgcnVsZXNBdHRyLCBydWxlc1ZhbHVlKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BhZ2VTZXJpYWxpemVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZVNl
cmlhbGl6ZXIuY3BwCmluZGV4IDBlODE3YWEuLjFlZGYzODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGFnZVNlcmlhbGl6ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGFnZVNlcmlhbGl6ZXIuY3BwCkBAIC0zMTEsMTAgKzMxMSw4IEBAIHZvaWQgUGFnZVNlcmlhbGl6
ZXI6OnJldHJpZXZlUmVzb3VyY2VzRm9yQ1NTRGVjbGFyYXRpb24oQ1NTU3R5bGVEZWNsYXJhdGlv
biogc3R5CiAgICAgaWYgKCFzdHlsZURlY2xhcmF0aW9uKQogICAgICAgICByZXR1cm47CiAKLSAg
ICBpZiAoIXN0eWxlRGVjbGFyYXRpb24tPnN0eWxlc2hlZXQoKS0+aXNDU1NTdHlsZVNoZWV0KCkp
Ci0gICAgICAgIHJldHVybjsKLQotICAgIENTU1N0eWxlU2hlZXQqIGNzc1N0eWxlU2hlZXQgPSBz
dGF0aWNfY2FzdDxDU1NTdHlsZVNoZWV0Kj4oc3R5bGVEZWNsYXJhdGlvbi0+c3R5bGVzaGVldCgp
KTsKKyAgICBDU1NTdHlsZVNoZWV0KiBjc3NTdHlsZVNoZWV0ID0gc3R5bGVEZWNsYXJhdGlvbi0+
cGFyZW50U3R5bGVTaGVldCgpOworICAgIEFTU0VSVChjc3NTdHlsZVNoZWV0KTsKIAogICAgIC8v
IFRoZSBiYWNrZ3JvdW5kLWltYWdlIGFuZCBsaXN0LXN0eWxlLWltYWdlIChmb3IgdWwgb3Igb2wp
IGFyZSB0aGUgQ1NTIHByb3BlcnRpZXMKICAgICAvLyB0aGF0IG1ha2UgdXNlIG9mIGltYWdlcy4g
V2UgaXRlcmF0ZSB0byBtYWtlIHN1cmUgd2UgaW5jbHVkZSBhbnkgb3RoZXIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvc3ZnL1NWR0ZvbnRGYWNlRWxlbWVudC5jcHAKaW5kZXggNzcwYTY4Ni4uZGEyY2ViMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlRWxlbWVudC5jcHAKQEAgLTUyLDcgKzUyLDcg
QEAgaW5saW5lIFNWR0ZvbnRGYWNlRWxlbWVudDo6U1ZHRm9udEZhY2VFbGVtZW50KGNvbnN0IFF1
YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3UKICAgICAsIG1fc3R5bGVEZWNsYXJhdGlvbihDU1NN
dXRhYmxlU3R5bGVEZWNsYXJhdGlvbjo6Y3JlYXRlKCkpCiB7CiAgICAgQVNTRVJUKGhhc1RhZ05h
bWUoZm9udF9mYWNlVGFnKSk7Ci0gICAgbV9zdHlsZURlY2xhcmF0aW9uLT5zZXRQYXJlbnQoZG9j
dW1lbnQtPm1hcHBlZEVsZW1lbnRTaGVldCgpKTsKKyAgICBtX3N0eWxlRGVjbGFyYXRpb24tPnNl
dFBhcmVudFN0eWxlU2hlZXQoZG9jdW1lbnQtPm1hcHBlZEVsZW1lbnRTaGVldCgpKTsKICAgICBt
X3N0eWxlRGVjbGFyYXRpb24tPnNldFN0cmljdFBhcnNpbmcodHJ1ZSk7CiAgICAgbV9mb250RmFj
ZVJ1bGUtPnNldERlY2xhcmF0aW9uKG1fc3R5bGVEZWNsYXJhdGlvbi5nZXQoKSk7CiB9Cg==
</data>
<flag name="review"
          id="109702"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>