<?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>122710</bug_id>
          
          <creation_ts>2013-10-12 20:47:45 -0700</creation_ts>
          <short_desc>Remove the not-much-used isShadowHost function from Element.h</short_desc>
          <delta_ts>2019-02-06 09:02:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>939172</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-10-12 20:47:45 -0700</bug_when>
    <thetext>Remove the not-much-used isShadowHost function from Element.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>939173</commentid>
    <comment_count>1</comment_count>
      <attachid>214078</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-10-12 20:51:00 -0700</bug_when>
    <thetext>Created attachment 214078
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>939192</commentid>
    <comment_count>2</comment_count>
      <attachid>214078</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-12 23:01:49 -0700</bug_when>
    <thetext>Comment on attachment 214078
Patch

Clearing flags on attachment: 214078

Committed r157355: &lt;http://trac.webkit.org/changeset/157355&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>939193</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-12 23:01:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1502790</commentid>
    <comment_count>4</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2019-02-06 09:02:32 -0800</bug_when>
    <thetext>Mass moving XML DOM bugs to the &quot;DOM&quot; Component.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>214078</attachid>
            <date>2013-10-12 20:51:00 -0700</date>
            <delta_ts>2013-10-12 23:01:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-122710-20131012205059.patch</filename>
            <type>text/plain</type>
            <size>17506</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU3MzUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTBmZTE4Y2FhNzA4MTg4
ZDVlY2JmNTMwMGM2NWExZWQ5ZTBiN2ZiMy4uZDU1NmI4ZmY5NzE4N2U4NWU5ODc2MjY4YzgxYmU1
NGIyZWQ4YTkzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM4IEBACiAyMDEzLTEwLTEyICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAorICAgICAgICBSZW1vdmUgdGhlIG5vdC1tdWNo
LXVzZWQgaXNTaGFkb3dIb3N0IGZ1bmN0aW9uIGZyb20gRWxlbWVudC5oCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjI3MTAKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGRvbS9FbGVtZW50Lmg6IFJlbW92
ZWQgaXNTaGFkb3dIb3N0LCB3aGljaCBqdXN0IGNoZWNrcyBpZiBzaGFkb3dSb290IGlzIG51bGwu
CisKKyAgICAgICAgKiBwYWdlL0ZvY3VzQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGb2N1c05hdmlnYXRpb25TY29wZTo6Zm9jdXNOYXZpZ2F0aW9uU2NvcGVPd25lZEJ5U2hhZG93
SG9zdCk6IEFkZGVkCisgICAgICAgIGluZGl2aWR1YWwgYXNzZXJ0aW9ucyBpbnN0ZWFkIG9mIGp1
c3QgYXNzZXJ0aW5nIGlzU2hhZG93SG9zdC4KKyAgICAgICAgKFdlYkNvcmU6OkZvY3VzTmF2aWdh
dGlvblNjb3BlOjpmb2N1c05hdmlnYXRpb25TY29wZU93bmVkQnlJRnJhbWUpOiBCcm9rZSBhbgor
ICAgICAgICBhc3NlcnRpb24gd2l0aCAmJiBpbiBpdCBpbnRvIHR3byBhc3NlcnRpb25zLgorICAg
ICAgICAoV2ViQ29yZTo6aGFzQ3VzdG9tRm9jdXNMb2dpYyk6IENoYW5nZWQgYXJndW1lbnQgdHlw
ZSB0byBiZSBFbGVtZW50JiBhbmQgdGFrZQorICAgICAgICBhIHJlZmVyZW5jZSBpbnN0ZWFkIG9m
IGEgcG9pbnRlci4KKyAgICAgICAgKFdlYkNvcmU6OmlzTm9uRm9jdXNhYmxlU2hhZG93SG9zdCk6
IE1hZGUgYXJndW1lbnRzIHJlZmVyZW5jZXMgaW5zdGVhZCBvZiBwb2ludGVycy4KKyAgICAgICAg
UmVwbGFjZWQgaXNTaGFkb3dIb3N0IGNoZWNrIHdpdGggYSBkaXJlY3QgY2hlY2sgb2Ygd2hldGhl
ciBzaGFkb3dSb290IHJldHVybnMgbnVsbAorICAgICAgICBvciBub3QsIHdoaWNoIHNlZW1zIG5l
YXJseSBhcyBjbGVhci4KKyAgICAgICAgKFdlYkNvcmU6OmlzRm9jdXNhYmxlU2hhZG93SG9zdCk6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6YWRqdXN0ZWRUYWJJbmRleCk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6c2hvdWxkVmlzaXQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkZv
Y3VzQ29udHJvbGxlcjo6ZmluZEZvY3VzYWJsZUVsZW1lbnREZXNjZW5kaW5nRG93bkludG9GcmFt
ZURvY3VtZW50KToKKyAgICAgICAgVXBkYXRlZCBmb3IgY2hhbmdlcyBhYm92ZS4KKyAgICAgICAg
KFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVudE9yZGVyKTog
RGl0dG8uIEFsc28gc29tZSBudWxscHRyLgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9s
bGVyOjpmaW5kRm9jdXNhYmxlRWxlbWVudEFjcm9zc0ZvY3VzU2NvcGUpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OkZvY3VzQ29udHJvbGxlcjo6ZmluZEZvY3VzYWJsZUVsZW1lbnRSZWN1cnNp
dmVseSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6Rm9jdXNDb250cm9sbGVyOjpmaW5kRWxl
bWVudFdpdGhFeGFjdFRhYkluZGV4KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpuZXh0RWxl
bWVudFdpdGhHcmVhdGVyVGFiSW5kZXgpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OnByZXZp
b3VzRWxlbWVudFdpdGhMb3dlclRhYkluZGV4KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpG
b2N1c0NvbnRyb2xsZXI6Om5leHRGb2N1c2FibGVFbGVtZW50KTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpGb2N1c0NvbnRyb2xsZXI6OnByZXZpb3VzRm9jdXNhYmxlRWxlbWVudCk6IERpdHRv
LgorCisyMDEzLTEwLTEyICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKwogICAgICAg
ICBSZW5hbWUgdG9QYXJlbnRNZWRpYUVsZW1lbnQgdG8gcGFyZW50TWVkaWFFbGVtZW50LCBzaW5j
ZSBpdCdzIG5vdCBhIHR5cGUgY2FzdAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTIyNzA3CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9F
bGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDQxZjVmYmI3YmRj
NDczOWIwNDBkYjliZGM1NjUwMTBjOWEyZWVhZTEuLmFhODFlZWZjNTE4ZGM4MWQzZGE5NjM3ZDI4
MTM2MTUxMGNjMzIxMjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtODQ1LDExICs4NDUsNiBAQCBp
bmxpbmUgVW5pcXVlRWxlbWVudERhdGEmIEVsZW1lbnQ6OmVuc3VyZVVuaXF1ZUVsZW1lbnREYXRh
KCkKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VW5pcXVlRWxlbWVudERhdGEmPigqbV9lbGVtZW50
RGF0YSk7CiB9CiAKLWlubGluZSBib29sIGlzU2hhZG93SG9zdChjb25zdCBOb2RlKiBub2RlKQot
ewotICAgIHJldHVybiBub2RlICYmIG5vZGUtPmlzRWxlbWVudE5vZGUoKSAmJiB0b0VsZW1lbnQo
bm9kZSktPnNoYWRvd1Jvb3QoKTsKLX0KLQogfSAvLyBuYW1lc3BhY2UKIAogI2VuZGlmCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0ZvY3VzQ29udHJvbGxlci5jcHAKaW5kZXggYjk1Zjk2ZmFjMTMyMTZmMmY4
NWY0NjMzNzJkOTFiNWY5OTZhZTYzMC4uZTM4NGVkYWI1NjNmOGI2YWYwMDdiMjg0MTVjODQxMTUz
Nzc5YTgzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Gb2N1c0NvbnRyb2xsZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRm9jdXNDb250cm9sbGVyLmNwcApAQCAtMTAx
LDEzICsxMDEsMTUgQEAgRm9jdXNOYXZpZ2F0aW9uU2NvcGUgRm9jdXNOYXZpZ2F0aW9uU2NvcGU6
OmZvY3VzTmF2aWdhdGlvblNjb3BlT2YoTm9kZSogbm9kZSkKIAogRm9jdXNOYXZpZ2F0aW9uU2Nv
cGUgRm9jdXNOYXZpZ2F0aW9uU2NvcGU6OmZvY3VzTmF2aWdhdGlvblNjb3BlT3duZWRCeVNoYWRv
d0hvc3QoTm9kZSogbm9kZSkKIHsKLSAgICBBU1NFUlQoaXNTaGFkb3dIb3N0KG5vZGUpKTsKKyAg
ICBBU1NFUlQobm9kZSk7CisgICAgQVNTRVJUKHRvRWxlbWVudChub2RlKS0+c2hhZG93Um9vdCgp
KTsKICAgICByZXR1cm4gRm9jdXNOYXZpZ2F0aW9uU2NvcGUodG9FbGVtZW50KG5vZGUpLT5zaGFk
b3dSb290KCkpOwogfQogCiBGb2N1c05hdmlnYXRpb25TY29wZSBGb2N1c05hdmlnYXRpb25TY29w
ZTo6Zm9jdXNOYXZpZ2F0aW9uU2NvcGVPd25lZEJ5SUZyYW1lKEhUTUxGcmFtZU93bmVyRWxlbWVu
dCogZnJhbWUpCiB7Ci0gICAgQVNTRVJUKGZyYW1lICYmIGZyYW1lLT5jb250ZW50RnJhbWUoKSk7
CisgICAgQVNTRVJUKGZyYW1lKTsKKyAgICBBU1NFUlQoZnJhbWUtPmNvbnRlbnRGcmFtZSgpKTsK
ICAgICByZXR1cm4gRm9jdXNOYXZpZ2F0aW9uU2NvcGUoZnJhbWUtPmNvbnRlbnRGcmFtZSgpLT5k
b2N1bWVudCgpKTsKIH0KIApAQCAtMTMwLDM1ICsxMzIsMzEgQEAgc3RhdGljIGlubGluZSB2b2lk
IGRpc3BhdGNoRXZlbnRzT25XaW5kb3dBbmRGb2N1c2VkRWxlbWVudChEb2N1bWVudCogZG9jdW1l
bnQsIGIKICAgICAgICAgZG9jdW1lbnQtPmZvY3VzZWRFbGVtZW50KCktPmRpc3BhdGNoRm9jdXNF
dmVudCgwLCBGb2N1c0RpcmVjdGlvbk5vbmUpOwogfQogCi1zdGF0aWMgaW5saW5lIGJvb2wgaGFz
Q3VzdG9tRm9jdXNMb2dpYyhOb2RlKiBub2RlKQorc3RhdGljIGlubGluZSBib29sIGhhc0N1c3Rv
bUZvY3VzTG9naWMoRWxlbWVudCYgZWxlbWVudCkKIHsKLSAgICByZXR1cm4gbm9kZS0+aXNIVE1M
RWxlbWVudCgpICYmIHRvSFRNTEVsZW1lbnQobm9kZSktPmhhc0N1c3RvbUZvY3VzTG9naWMoKTsK
KyAgICByZXR1cm4gZWxlbWVudC5pc0hUTUxFbGVtZW50KCkgJiYgdG9IVE1MRWxlbWVudChlbGVt
ZW50KS5oYXNDdXN0b21Gb2N1c0xvZ2ljKCk7CiB9CiAKLXN0YXRpYyBpbmxpbmUgYm9vbCBpc05v
bkZvY3VzYWJsZVNoYWRvd0hvc3QoRWxlbWVudCogZWxlbWVudCwgS2V5Ym9hcmRFdmVudCogZXZl
bnQpCitzdGF0aWMgaW5saW5lIGJvb2wgaXNOb25Gb2N1c2FibGVTaGFkb3dIb3N0KEVsZW1lbnQm
IGVsZW1lbnQsIEtleWJvYXJkRXZlbnQmIGV2ZW50KQogewotICAgIEFTU0VSVChlbGVtZW50KTsK
LSAgICByZXR1cm4gIWVsZW1lbnQtPmlzS2V5Ym9hcmRGb2N1c2FibGUoZXZlbnQpICYmIGlzU2hh
ZG93SG9zdChlbGVtZW50KSAmJiAhaGFzQ3VzdG9tRm9jdXNMb2dpYyhlbGVtZW50KTsKKyAgICBy
ZXR1cm4gIWVsZW1lbnQuaXNLZXlib2FyZEZvY3VzYWJsZSgmZXZlbnQpICYmIGVsZW1lbnQuc2hh
ZG93Um9vdCgpICYmICFoYXNDdXN0b21Gb2N1c0xvZ2ljKGVsZW1lbnQpOwogfQogCi1zdGF0aWMg
aW5saW5lIGJvb2wgaXNGb2N1c2FibGVTaGFkb3dIb3N0KE5vZGUqIG5vZGUsIEtleWJvYXJkRXZl
bnQqIGV2ZW50KQorc3RhdGljIGlubGluZSBib29sIGlzRm9jdXNhYmxlU2hhZG93SG9zdChOb2Rl
JiBub2RlLCBLZXlib2FyZEV2ZW50JiBldmVudCkKIHsKLSAgICBBU1NFUlQobm9kZSk7Ci0gICAg
cmV0dXJuIG5vZGUtPmlzRWxlbWVudE5vZGUoKSAmJiB0b0VsZW1lbnQobm9kZSktPmlzS2V5Ym9h
cmRGb2N1c2FibGUoZXZlbnQpICYmIGlzU2hhZG93SG9zdChub2RlKSAmJiAhaGFzQ3VzdG9tRm9j
dXNMb2dpYyhub2RlKTsKKyAgICByZXR1cm4gbm9kZS5pc0VsZW1lbnROb2RlKCkgJiYgdG9FbGVt
ZW50KG5vZGUpLmlzS2V5Ym9hcmRGb2N1c2FibGUoJmV2ZW50KSAmJiB0b0VsZW1lbnQobm9kZSku
c2hhZG93Um9vdCgpICYmICFoYXNDdXN0b21Gb2N1c0xvZ2ljKHRvRWxlbWVudChub2RlKSk7CiB9
CiAKLXN0YXRpYyBpbmxpbmUgaW50IGFkanVzdGVkVGFiSW5kZXgoTm9kZSogbm9kZSwgS2V5Ym9h
cmRFdmVudCogZXZlbnQpCitzdGF0aWMgaW5saW5lIGludCBhZGp1c3RlZFRhYkluZGV4KE5vZGUm
IG5vZGUsIEtleWJvYXJkRXZlbnQmIGV2ZW50KQogewotICAgIEFTU0VSVChub2RlKTsKLSAgICBp
ZiAoIW5vZGUtPmlzRWxlbWVudE5vZGUoKSkKKyAgICBpZiAoIW5vZGUuaXNFbGVtZW50Tm9kZSgp
KQogICAgICAgICByZXR1cm4gMDsKLSAgICByZXR1cm4gaXNOb25Gb2N1c2FibGVTaGFkb3dIb3N0
KHRvRWxlbWVudChub2RlKSwgZXZlbnQpID8gMCA6IHRvRWxlbWVudChub2RlKS0+dGFiSW5kZXgo
KTsKKyAgICByZXR1cm4gaXNOb25Gb2N1c2FibGVTaGFkb3dIb3N0KHRvRWxlbWVudChub2RlKSwg
ZXZlbnQpID8gMCA6IHRvRWxlbWVudChub2RlKS50YWJJbmRleCgpOwogfQogCi1zdGF0aWMgaW5s
aW5lIGJvb2wgc2hvdWxkVmlzaXQoRWxlbWVudCogZWxlbWVudCwgS2V5Ym9hcmRFdmVudCogZXZl
bnQpCitzdGF0aWMgaW5saW5lIGJvb2wgc2hvdWxkVmlzaXQoRWxlbWVudCYgZWxlbWVudCwgS2V5
Ym9hcmRFdmVudCYgZXZlbnQpCiB7Ci0gICAgQVNTRVJUKGVsZW1lbnQpOwotICAgIHJldHVybiBl
bGVtZW50LT5pc0tleWJvYXJkRm9jdXNhYmxlKGV2ZW50KSB8fCBpc05vbkZvY3VzYWJsZVNoYWRv
d0hvc3QoZWxlbWVudCwgZXZlbnQpOworICAgIHJldHVybiBlbGVtZW50LmlzS2V5Ym9hcmRGb2N1
c2FibGUoJmV2ZW50KSB8fCBpc05vbkZvY3VzYWJsZVNoYWRvd0hvc3QoZWxlbWVudCwgZXZlbnQp
OwogfQogCiBGb2N1c0NvbnRyb2xsZXI6OkZvY3VzQ29udHJvbGxlcihQYWdlJiBwYWdlKQpAQCAt
MjMxLDEwICsyMjksMTAgQEAgRWxlbWVudCogRm9jdXNDb250cm9sbGVyOjpmaW5kRm9jdXNhYmxl
RWxlbWVudERlc2NlbmRpbmdEb3duSW50b0ZyYW1lRG9jdW1lbnQoRm8KICAgICAvLyAxKSBhIGZv
Y3VzYWJsZSBub2RlLCBvcgogICAgIC8vIDIpIHRoZSBkZWVwZXN0LW5lc3RlZCBIVE1MRnJhbWVP
d25lckVsZW1lbnQuCiAgICAgd2hpbGUgKGVsZW1lbnQgJiYgZWxlbWVudC0+aXNGcmFtZU93bmVy
RWxlbWVudCgpKSB7Ci0gICAgICAgIEhUTUxGcmFtZU93bmVyRWxlbWVudCogb3duZXIgPSB0b0Zy
YW1lT3duZXJFbGVtZW50KGVsZW1lbnQpOwotICAgICAgICBpZiAoIW93bmVyLT5jb250ZW50RnJh
bWUoKSkKKyAgICAgICAgSFRNTEZyYW1lT3duZXJFbGVtZW50JiBvd25lciA9IHRvRnJhbWVPd25l
ckVsZW1lbnQoKmVsZW1lbnQpOworICAgICAgICBpZiAoIW93bmVyLmNvbnRlbnRGcmFtZSgpKQog
ICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIEVsZW1lbnQqIGZvdW5kRWxlbWVudCA9IGZpbmRG
b2N1c2FibGVFbGVtZW50KGRpcmVjdGlvbiwgRm9jdXNOYXZpZ2F0aW9uU2NvcGU6OmZvY3VzTmF2
aWdhdGlvblNjb3BlT3duZWRCeUlGcmFtZShvd25lciksIDAsIGV2ZW50KTsKKyAgICAgICAgRWxl
bWVudCogZm91bmRFbGVtZW50ID0gZmluZEZvY3VzYWJsZUVsZW1lbnQoZGlyZWN0aW9uLCBGb2N1
c05hdmlnYXRpb25TY29wZTo6Zm9jdXNOYXZpZ2F0aW9uU2NvcGVPd25lZEJ5SUZyYW1lKCZvd25l
ciksIDAsIGV2ZW50KTsKICAgICAgICAgaWYgKCFmb3VuZEVsZW1lbnQpCiAgICAgICAgICAgICBi
cmVhazsKICAgICAgICAgQVNTRVJUKGVsZW1lbnQgIT0gZm91bmRFbGVtZW50KTsKQEAgLTMxMCwx
OSArMzA4LDE5IEBAIGJvb2wgRm9jdXNDb250cm9sbGVyOjphZHZhbmNlRm9jdXNJbkRvY3VtZW50
T3JkZXIoRm9jdXNEaXJlY3Rpb24gZGlyZWN0aW9uLCBLZXliCiAgICAgQVNTRVJUKGVsZW1lbnQp
OwogCiAgICAgaWYgKGVsZW1lbnQgPT0gZG9jdW1lbnQtPmZvY3VzZWRFbGVtZW50KCkpIHsKLSAg
ICAgICAgLy8gRm9jdXMgd3JhcHBlZCBhcm91bmQgdG8gdGhlIHNhbWUgRWxlbWVudC4KKyAgICAg
ICAgLy8gRm9jdXMgd3JhcHBlZCBhcm91bmQgdG8gdGhlIHNhbWUgZWxlbWVudC4KICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgfQogCiAgICAgaWYgKGVsZW1lbnQtPmlzRnJhbWVPd25lckVsZW1l
bnQoKSAmJiAoIWVsZW1lbnQtPmlzUGx1Z2luRWxlbWVudCgpIHx8ICFlbGVtZW50LT5pc0tleWJv
YXJkRm9jdXNhYmxlKGV2ZW50KSkpIHsKICAgICAgICAgLy8gV2UgZm9jdXMgZnJhbWVzIHJhdGhl
ciB0aGFuIGZyYW1lIG93bmVycy4KICAgICAgICAgLy8gRklYTUU6IFdlIHNob3VsZCBub3QgZm9j
dXMgZnJhbWVzIHRoYXQgaGF2ZSBubyBzY3JvbGxiYXJzLCBhcyBmb2N1c2luZyB0aGVtIGlzbid0
IHVzZWZ1bCB0byB0aGUgdXNlci4KLSAgICAgICAgSFRNTEZyYW1lT3duZXJFbGVtZW50KiBvd25l
ciA9IHRvRnJhbWVPd25lckVsZW1lbnQoZWxlbWVudC5nZXQoKSk7Ci0gICAgICAgIGlmICghb3du
ZXItPmNvbnRlbnRGcmFtZSgpKQorICAgICAgICBIVE1MRnJhbWVPd25lckVsZW1lbnQmIG93bmVy
ID0gdG9GcmFtZU93bmVyRWxlbWVudCgqZWxlbWVudCk7CisgICAgICAgIGlmICghb3duZXIuY29u
dGVudEZyYW1lKCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICAgICAgZG9jdW1l
bnQtPnNldEZvY3VzZWRFbGVtZW50KDApOwotICAgICAgICBzZXRGb2N1c2VkRnJhbWUob3duZXIt
PmNvbnRlbnRGcmFtZSgpKTsKKyAgICAgICAgZG9jdW1lbnQtPnNldEZvY3VzZWRFbGVtZW50KG51
bGxwdHIpOworICAgICAgICBzZXRGb2N1c2VkRnJhbWUob3duZXIuY29udGVudEZyYW1lKCkpOwog
ICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAgICAgCkBAIC0zMzQsNyArMzMyLDcgQEAgYm9v
bCBGb2N1c0NvbnRyb2xsZXI6OmFkdmFuY2VGb2N1c0luRG9jdW1lbnRPcmRlcihGb2N1c0RpcmVj
dGlvbiBkaXJlY3Rpb24sIEtleWIKIAogICAgIGlmICgmbmV3RG9jdW1lbnQgIT0gZG9jdW1lbnQp
IHsKICAgICAgICAgLy8gRm9jdXMgaXMgZ29pbmcgYXdheSBmcm9tIHRoaXMgZG9jdW1lbnQsIHNv
IGNsZWFyIHRoZSBmb2N1c2VkIG5vZGUuCi0gICAgICAgIGRvY3VtZW50LT5zZXRGb2N1c2VkRWxl
bWVudCgwKTsKKyAgICAgICAgZG9jdW1lbnQtPnNldEZvY3VzZWRFbGVtZW50KG51bGxwdHIpOwog
ICAgIH0KIAogICAgIHNldEZvY3VzZWRGcmFtZShuZXdEb2N1bWVudC5mcmFtZSgpKTsKQEAgLTM1
Miw5ICszNTAsOSBAQCBib29sIEZvY3VzQ29udHJvbGxlcjo6YWR2YW5jZUZvY3VzSW5Eb2N1bWVu
dE9yZGVyKEZvY3VzRGlyZWN0aW9uIGRpcmVjdGlvbiwgS2V5YgogCiBFbGVtZW50KiBGb2N1c0Nv
bnRyb2xsZXI6OmZpbmRGb2N1c2FibGVFbGVtZW50QWNyb3NzRm9jdXNTY29wZShGb2N1c0RpcmVj
dGlvbiBkaXJlY3Rpb24sIEZvY3VzTmF2aWdhdGlvblNjb3BlIHNjb3BlLCBOb2RlKiBjdXJyZW50
Tm9kZSwgS2V5Ym9hcmRFdmVudCogZXZlbnQpCiB7Ci0gICAgQVNTRVJUKCFjdXJyZW50Tm9kZSB8
fCAhY3VycmVudE5vZGUtPmlzRWxlbWVudE5vZGUoKSB8fCAhaXNOb25Gb2N1c2FibGVTaGFkb3dI
b3N0KHRvRWxlbWVudChjdXJyZW50Tm9kZSksIGV2ZW50KSk7CisgICAgQVNTRVJUKCFjdXJyZW50
Tm9kZSB8fCAhY3VycmVudE5vZGUtPmlzRWxlbWVudE5vZGUoKSB8fCAhaXNOb25Gb2N1c2FibGVT
aGFkb3dIb3N0KCp0b0VsZW1lbnQoY3VycmVudE5vZGUpLCAqZXZlbnQpKTsKICAgICBFbGVtZW50
KiBmb3VuZDsKLSAgICBpZiAoY3VycmVudE5vZGUgJiYgZGlyZWN0aW9uID09IEZvY3VzRGlyZWN0
aW9uRm9yd2FyZCAmJiBpc0ZvY3VzYWJsZVNoYWRvd0hvc3QoY3VycmVudE5vZGUsIGV2ZW50KSkg
eworICAgIGlmIChjdXJyZW50Tm9kZSAmJiBkaXJlY3Rpb24gPT0gRm9jdXNEaXJlY3Rpb25Gb3J3
YXJkICYmIGlzRm9jdXNhYmxlU2hhZG93SG9zdCgqY3VycmVudE5vZGUsICpldmVudCkpIHsKICAg
ICAgICAgRWxlbWVudCogZm91bmRJbklubmVyRm9jdXNTY29wZSA9IGZpbmRGb2N1c2FibGVFbGVt
ZW50UmVjdXJzaXZlbHkoZGlyZWN0aW9uLCBGb2N1c05hdmlnYXRpb25TY29wZTo6Zm9jdXNOYXZp
Z2F0aW9uU2NvcGVPd25lZEJ5U2hhZG93SG9zdChjdXJyZW50Tm9kZSksIDAsIGV2ZW50KTsKICAg
ICAgICAgZm91bmQgPSBmb3VuZEluSW5uZXJGb2N1c1Njb3BlID8gZm91bmRJbklubmVyRm9jdXNT
Y29wZSA6IGZpbmRGb2N1c2FibGVFbGVtZW50UmVjdXJzaXZlbHkoZGlyZWN0aW9uLCBzY29wZSwg
Y3VycmVudE5vZGUsIGV2ZW50KTsKICAgICB9IGVsc2UKQEAgLTM2Niw3ICszNjQsNyBAQCBFbGVt
ZW50KiBGb2N1c0NvbnRyb2xsZXI6OmZpbmRGb2N1c2FibGVFbGVtZW50QWNyb3NzRm9jdXNTY29w
ZShGb2N1c0RpcmVjdGlvbiBkaQogICAgICAgICBpZiAoIW93bmVyKQogICAgICAgICAgICAgYnJl
YWs7CiAgICAgICAgIHNjb3BlID0gRm9jdXNOYXZpZ2F0aW9uU2NvcGU6OmZvY3VzTmF2aWdhdGlv
blNjb3BlT2Yob3duZXIpOwotICAgICAgICBpZiAoZGlyZWN0aW9uID09IEZvY3VzRGlyZWN0aW9u
QmFja3dhcmQgJiYgaXNGb2N1c2FibGVTaGFkb3dIb3N0KG93bmVyLCBldmVudCkpIHsKKyAgICAg
ICAgaWYgKGRpcmVjdGlvbiA9PSBGb2N1c0RpcmVjdGlvbkJhY2t3YXJkICYmIGlzRm9jdXNhYmxl
U2hhZG93SG9zdCgqb3duZXIsICpldmVudCkpIHsKICAgICAgICAgICAgIGZvdW5kID0gb3duZXI7
CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQpAQCAtMzgxLDE5ICszNzksMTkgQEAgRWxl
bWVudCogRm9jdXNDb250cm9sbGVyOjpmaW5kRm9jdXNhYmxlRWxlbWVudFJlY3Vyc2l2ZWx5KEZv
Y3VzRGlyZWN0aW9uIGRpcmVjdGkKICAgICAvLyBTdGFydGluZyBub2RlIGlzIGV4Y2x1c2l2ZS4K
ICAgICBFbGVtZW50KiBmb3VuZCA9IGZpbmRGb2N1c2FibGVFbGVtZW50KGRpcmVjdGlvbiwgc2Nv
cGUsIHN0YXJ0LCBldmVudCk7CiAgICAgaWYgKCFmb3VuZCkKLSAgICAgICAgcmV0dXJuIDA7Cisg
ICAgICAgIHJldHVybiBudWxscHRyOwogICAgIGlmIChkaXJlY3Rpb24gPT0gRm9jdXNEaXJlY3Rp
b25Gb3J3YXJkKSB7Ci0gICAgICAgIGlmICghaXNOb25Gb2N1c2FibGVTaGFkb3dIb3N0KGZvdW5k
LCBldmVudCkpCisgICAgICAgIGlmICghaXNOb25Gb2N1c2FibGVTaGFkb3dIb3N0KCpmb3VuZCwg
KmV2ZW50KSkKICAgICAgICAgICAgIHJldHVybiBmb3VuZDsKICAgICAgICAgRWxlbWVudCogZm91
bmRJbklubmVyRm9jdXNTY29wZSA9IGZpbmRGb2N1c2FibGVFbGVtZW50UmVjdXJzaXZlbHkoZGly
ZWN0aW9uLCBGb2N1c05hdmlnYXRpb25TY29wZTo6Zm9jdXNOYXZpZ2F0aW9uU2NvcGVPd25lZEJ5
U2hhZG93SG9zdChmb3VuZCksIDAsIGV2ZW50KTsKICAgICAgICAgcmV0dXJuIGZvdW5kSW5Jbm5l
ckZvY3VzU2NvcGUgPyBmb3VuZEluSW5uZXJGb2N1c1Njb3BlIDogZmluZEZvY3VzYWJsZUVsZW1l
bnRSZWN1cnNpdmVseShkaXJlY3Rpb24sIHNjb3BlLCBmb3VuZCwgZXZlbnQpOwogICAgIH0KICAg
ICBBU1NFUlQoZGlyZWN0aW9uID09IEZvY3VzRGlyZWN0aW9uQmFja3dhcmQpOwotICAgIGlmIChp
c0ZvY3VzYWJsZVNoYWRvd0hvc3QoZm91bmQsIGV2ZW50KSkgeworICAgIGlmIChpc0ZvY3VzYWJs
ZVNoYWRvd0hvc3QoKmZvdW5kLCAqZXZlbnQpKSB7CiAgICAgICAgIEVsZW1lbnQqIGZvdW5kSW5J
bm5lckZvY3VzU2NvcGUgPSBmaW5kRm9jdXNhYmxlRWxlbWVudFJlY3Vyc2l2ZWx5KGRpcmVjdGlv
biwgRm9jdXNOYXZpZ2F0aW9uU2NvcGU6OmZvY3VzTmF2aWdhdGlvblNjb3BlT3duZWRCeVNoYWRv
d0hvc3QoZm91bmQpLCAwLCBldmVudCk7CiAgICAgICAgIHJldHVybiBmb3VuZEluSW5uZXJGb2N1
c1Njb3BlID8gZm91bmRJbklubmVyRm9jdXNTY29wZSA6IGZvdW5kOwogICAgIH0KLSAgICBpZiAo
aXNOb25Gb2N1c2FibGVTaGFkb3dIb3N0KGZvdW5kLCBldmVudCkpIHsKKyAgICBpZiAoaXNOb25G
b2N1c2FibGVTaGFkb3dIb3N0KCpmb3VuZCwgKmV2ZW50KSkgewogICAgICAgICBFbGVtZW50KiBm
b3VuZEluSW5uZXJGb2N1c1Njb3BlID0gZmluZEZvY3VzYWJsZUVsZW1lbnRSZWN1cnNpdmVseShk
aXJlY3Rpb24sIEZvY3VzTmF2aWdhdGlvblNjb3BlOjpmb2N1c05hdmlnYXRpb25TY29wZU93bmVk
QnlTaGFkb3dIb3N0KGZvdW5kKSwgMCwgZXZlbnQpOwogICAgICAgICByZXR1cm4gZm91bmRJbklu
bmVyRm9jdXNTY29wZSA/IGZvdW5kSW5Jbm5lckZvY3VzU2NvcGUgOmZpbmRGb2N1c2FibGVFbGVt
ZW50UmVjdXJzaXZlbHkoZGlyZWN0aW9uLCBzY29wZSwgZm91bmQsIGV2ZW50KTsKICAgICB9CkBA
IC00MTQsNDMgKzQxMiw0MyBAQCBFbGVtZW50KiBGb2N1c0NvbnRyb2xsZXI6OmZpbmRFbGVtZW50
V2l0aEV4YWN0VGFiSW5kZXgoTm9kZSogc3RhcnQsIGludCB0YWJJbmRleAogICAgIGZvciAoTm9k
ZSogbm9kZSA9IHN0YXJ0OyBub2RlOyBub2RlID0gZGlyZWN0aW9uID09IEZvY3VzRGlyZWN0aW9u
Rm9yd2FyZCA/IG5leHRJblNjb3BlKG5vZGUpIDogcHJldmlvdXNJblNjb3BlKG5vZGUpKSB7CiAg
ICAgICAgIGlmICghbm9kZS0+aXNFbGVtZW50Tm9kZSgpKQogICAgICAgICAgICAgY29udGludWU7
Ci0gICAgICAgIEVsZW1lbnQqIGVsZW1lbnQgPSB0b0VsZW1lbnQobm9kZSk7Ci0gICAgICAgIGlm
IChzaG91bGRWaXNpdChlbGVtZW50LCBldmVudCkgJiYgYWRqdXN0ZWRUYWJJbmRleChlbGVtZW50
LCBldmVudCkgPT0gdGFiSW5kZXgpCi0gICAgICAgICAgICByZXR1cm4gZWxlbWVudDsKKyAgICAg
ICAgRWxlbWVudCYgZWxlbWVudCA9IHRvRWxlbWVudCgqbm9kZSk7CisgICAgICAgIGlmIChzaG91
bGRWaXNpdChlbGVtZW50LCAqZXZlbnQpICYmIGFkanVzdGVkVGFiSW5kZXgoZWxlbWVudCwgKmV2
ZW50KSA9PSB0YWJJbmRleCkKKyAgICAgICAgICAgIHJldHVybiAmZWxlbWVudDsKICAgICB9Ci0g
ICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXN0YXRpYyBFbGVtZW50KiBu
ZXh0RWxlbWVudFdpdGhHcmVhdGVyVGFiSW5kZXgoTm9kZSogc3RhcnQsIGludCB0YWJJbmRleCwg
S2V5Ym9hcmRFdmVudCogZXZlbnQpCitzdGF0aWMgRWxlbWVudCogbmV4dEVsZW1lbnRXaXRoR3Jl
YXRlclRhYkluZGV4KE5vZGUqIHN0YXJ0LCBpbnQgdGFiSW5kZXgsIEtleWJvYXJkRXZlbnQmIGV2
ZW50KQogewogICAgIC8vIFNlYXJjaCBpcyBpbmNsdXNpdmUgb2Ygc3RhcnQKICAgICBpbnQgd2lu
bmluZ1RhYkluZGV4ID0gc3RkOjpudW1lcmljX2xpbWl0czxzaG9ydD46Om1heCgpICsgMTsKLSAg
ICBFbGVtZW50KiB3aW5uZXIgPSAwOworICAgIEVsZW1lbnQqIHdpbm5lciA9IG51bGxwdHI7CiAg
ICAgZm9yIChOb2RlKiBub2RlID0gc3RhcnQ7IG5vZGU7IG5vZGUgPSBOb2RlUmVuZGVyaW5nVHJh
dmVyc2FsOjpuZXh0SW5TY29wZShub2RlKSkgewogICAgICAgICBpZiAoIW5vZGUtPmlzRWxlbWVu
dE5vZGUoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBFbGVtZW50KiBlbGVtZW50
ID0gdG9FbGVtZW50KG5vZGUpOwotICAgICAgICBpZiAoc2hvdWxkVmlzaXQoZWxlbWVudCwgZXZl
bnQpICYmIGVsZW1lbnQtPnRhYkluZGV4KCkgPiB0YWJJbmRleCAmJiBlbGVtZW50LT50YWJJbmRl
eCgpIDwgd2lubmluZ1RhYkluZGV4KSB7Ci0gICAgICAgICAgICB3aW5uZXIgPSBlbGVtZW50Owot
ICAgICAgICAgICAgd2lubmluZ1RhYkluZGV4ID0gZWxlbWVudC0+dGFiSW5kZXgoKTsKKyAgICAg
ICAgRWxlbWVudCYgZWxlbWVudCA9IHRvRWxlbWVudCgqbm9kZSk7CisgICAgICAgIGlmIChzaG91
bGRWaXNpdChlbGVtZW50LCBldmVudCkgJiYgZWxlbWVudC50YWJJbmRleCgpID4gdGFiSW5kZXgg
JiYgZWxlbWVudC50YWJJbmRleCgpIDwgd2lubmluZ1RhYkluZGV4KSB7CisgICAgICAgICAgICB3
aW5uZXIgPSAmZWxlbWVudDsKKyAgICAgICAgICAgIHdpbm5pbmdUYWJJbmRleCA9IGVsZW1lbnQu
dGFiSW5kZXgoKTsKICAgICAgICAgfQogICAgIH0KIAogICAgIHJldHVybiB3aW5uZXI7CiB9CiAK
LXN0YXRpYyBFbGVtZW50KiBwcmV2aW91c0VsZW1lbnRXaXRoTG93ZXJUYWJJbmRleChOb2RlKiBz
dGFydCwgaW50IHRhYkluZGV4LCBLZXlib2FyZEV2ZW50KiBldmVudCkKK3N0YXRpYyBFbGVtZW50
KiBwcmV2aW91c0VsZW1lbnRXaXRoTG93ZXJUYWJJbmRleChOb2RlKiBzdGFydCwgaW50IHRhYklu
ZGV4LCBLZXlib2FyZEV2ZW50JiBldmVudCkKIHsKICAgICAvLyBTZWFyY2ggaXMgaW5jbHVzaXZl
IG9mIHN0YXJ0CiAgICAgaW50IHdpbm5pbmdUYWJJbmRleCA9IDA7Ci0gICAgRWxlbWVudCogd2lu
bmVyID0gMDsKKyAgICBFbGVtZW50KiB3aW5uZXIgPSBudWxscHRyOwogICAgIGZvciAoTm9kZSog
bm9kZSA9IHN0YXJ0OyBub2RlOyBub2RlID0gTm9kZVJlbmRlcmluZ1RyYXZlcnNhbDo6cHJldmlv
dXNJblNjb3BlKG5vZGUpKSB7CiAgICAgICAgIGlmICghbm9kZS0+aXNFbGVtZW50Tm9kZSgpKQog
ICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIEVsZW1lbnQqIGVsZW1lbnQgPSB0b0VsZW1l
bnQobm9kZSk7CisgICAgICAgIEVsZW1lbnQmIGVsZW1lbnQgPSB0b0VsZW1lbnQoKm5vZGUpOwog
ICAgICAgICBpbnQgY3VycmVudFRhYkluZGV4ID0gYWRqdXN0ZWRUYWJJbmRleChlbGVtZW50LCBl
dmVudCk7CiAgICAgICAgIGlmICgoc2hvdWxkVmlzaXQoZWxlbWVudCwgZXZlbnQpIHx8IGlzTm9u
Rm9jdXNhYmxlU2hhZG93SG9zdChlbGVtZW50LCBldmVudCkpICYmIGN1cnJlbnRUYWJJbmRleCA8
IHRhYkluZGV4ICYmIGN1cnJlbnRUYWJJbmRleCA+IHdpbm5pbmdUYWJJbmRleCkgewotICAgICAg
ICAgICAgd2lubmVyID0gZWxlbWVudDsKKyAgICAgICAgICAgIHdpbm5lciA9ICZlbGVtZW50Owog
ICAgICAgICAgICAgd2lubmluZ1RhYkluZGV4ID0gY3VycmVudFRhYkluZGV4OwogICAgICAgICB9
CiAgICAgfQpAQCAtNDYyLDE1ICs0NjAsMTUgQEAgRWxlbWVudCogRm9jdXNDb250cm9sbGVyOjpu
ZXh0Rm9jdXNhYmxlRWxlbWVudChGb2N1c05hdmlnYXRpb25TY29wZSBzY29wZSwgTm9kZSoKICAg
ICB1c2luZyBuYW1lc3BhY2UgTm9kZVJlbmRlcmluZ1RyYXZlcnNhbDsKIAogICAgIGlmIChzdGFy
dCkgewotICAgICAgICBpbnQgdGFiSW5kZXggPSBhZGp1c3RlZFRhYkluZGV4KHN0YXJ0LCBldmVu
dCk7CisgICAgICAgIGludCB0YWJJbmRleCA9IGFkanVzdGVkVGFiSW5kZXgoKnN0YXJ0LCAqZXZl
bnQpOwogICAgICAgICAvLyBJZiBhIG5vZGUgaXMgZXhjbHVkZWQgZnJvbSB0aGUgbm9ybWFsIHRh
YmJpbmcgY3ljbGUsIHRoZSBuZXh0IGZvY3VzYWJsZSBub2RlIGlzIGRldGVybWluZWQgYnkgdHJl
ZSBvcmRlcgogICAgICAgICBpZiAodGFiSW5kZXggPCAwKSB7CiAgICAgICAgICAgICBmb3IgKE5v
ZGUqIG5vZGUgPSBuZXh0SW5TY29wZShzdGFydCk7IG5vZGU7IG5vZGUgPSBuZXh0SW5TY29wZShu
b2RlKSkgewogICAgICAgICAgICAgICAgIGlmICghbm9kZS0+aXNFbGVtZW50Tm9kZSgpKQogICAg
ICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICBFbGVtZW50KiBlbGVt
ZW50ID0gdG9FbGVtZW50KG5vZGUpOwotICAgICAgICAgICAgICAgIGlmIChzaG91bGRWaXNpdChl
bGVtZW50LCBldmVudCkgJiYgYWRqdXN0ZWRUYWJJbmRleChlbGVtZW50LCBldmVudCkgPj0gMCkK
LSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQ7CisgICAgICAgICAgICAgICAgRWxl
bWVudCYgZWxlbWVudCA9IHRvRWxlbWVudCgqbm9kZSk7CisgICAgICAgICAgICAgICAgaWYgKHNo
b3VsZFZpc2l0KGVsZW1lbnQsICpldmVudCkgJiYgYWRqdXN0ZWRUYWJJbmRleChlbGVtZW50LCAq
ZXZlbnQpID49IDApCisgICAgICAgICAgICAgICAgICAgIHJldHVybiAmZWxlbWVudDsKICAgICAg
ICAgICAgIH0KICAgICAgICAgfQogCkBAIC00ODYsNyArNDg0LDcgQEAgRWxlbWVudCogRm9jdXND
b250cm9sbGVyOjpuZXh0Rm9jdXNhYmxlRWxlbWVudChGb2N1c05hdmlnYXRpb25TY29wZSBzY29w
ZSwgTm9kZSoKICAgICAvLyBMb29rIGZvciB0aGUgZmlyc3QgRWxlbWVudCBpbiB0aGUgc2NvcGUg
dGhhdDoKICAgICAvLyAxKSBoYXMgdGhlIGxvd2VzdCB0YWJpbmRleCB0aGF0IGlzIGhpZ2hlciB0
aGFuIHN0YXJ0J3MgdGFiaW5kZXggKG9yIDAsIGlmIHN0YXJ0IGlzIG51bGwpLCBhbmQKICAgICAv
LyAyKSBjb21lcyBmaXJzdCBpbiB0aGUgc2NvcGUsIGlmIHRoZXJlJ3MgYSB0aWUuCi0gICAgaWYg
KEVsZW1lbnQqIHdpbm5lciA9IG5leHRFbGVtZW50V2l0aEdyZWF0ZXJUYWJJbmRleChzY29wZS5y
b290Tm9kZSgpLCBzdGFydCA/IGFkanVzdGVkVGFiSW5kZXgoc3RhcnQsIGV2ZW50KSA6IDAsIGV2
ZW50KSkKKyAgICBpZiAoRWxlbWVudCogd2lubmVyID0gbmV4dEVsZW1lbnRXaXRoR3JlYXRlclRh
YkluZGV4KHNjb3BlLnJvb3ROb2RlKCksIHN0YXJ0ID8gYWRqdXN0ZWRUYWJJbmRleCgqc3RhcnQs
ICpldmVudCkgOiAwLCAqZXZlbnQpKQogICAgICAgICByZXR1cm4gd2lubmVyOwogCiAgICAgLy8g
VGhlcmUgYXJlIG5vIG5vZGVzIHdpdGggYSB0YWJpbmRleCBncmVhdGVyIHRoYW4gc3RhcnQncyB0
YWJpbmRleCwKQEAgLTQ5OCw3ICs0OTYsNyBAQCBFbGVtZW50KiBGb2N1c0NvbnRyb2xsZXI6OnBy
ZXZpb3VzRm9jdXNhYmxlRWxlbWVudChGb2N1c05hdmlnYXRpb25TY29wZSBzY29wZSwgTgogewog
ICAgIHVzaW5nIG5hbWVzcGFjZSBOb2RlUmVuZGVyaW5nVHJhdmVyc2FsOwogCi0gICAgTm9kZSog
bGFzdCA9IDA7CisgICAgTm9kZSogbGFzdCA9IG51bGxwdHI7CiAgICAgZm9yIChOb2RlKiBub2Rl
ID0gc2NvcGUucm9vdE5vZGUoKTsgbm9kZTsgbm9kZSA9IGxhc3RDaGlsZEluU2NvcGUobm9kZSkp
CiAgICAgICAgIGxhc3QgPSBub2RlOwogICAgIEFTU0VSVChsYXN0KTsKQEAgLTUwOSw3ICs1MDcs
NyBAQCBFbGVtZW50KiBGb2N1c0NvbnRyb2xsZXI6OnByZXZpb3VzRm9jdXNhYmxlRWxlbWVudChG
b2N1c05hdmlnYXRpb25TY29wZSBzY29wZSwgTgogICAgIGludCBzdGFydGluZ1RhYkluZGV4Owog
ICAgIGlmIChzdGFydCkgewogICAgICAgICBzdGFydGluZ05vZGUgPSBwcmV2aW91c0luU2NvcGUo
c3RhcnQpOwotICAgICAgICBzdGFydGluZ1RhYkluZGV4ID0gYWRqdXN0ZWRUYWJJbmRleChzdGFy
dCwgZXZlbnQpOworICAgICAgICBzdGFydGluZ1RhYkluZGV4ID0gYWRqdXN0ZWRUYWJJbmRleCgq
c3RhcnQsICpldmVudCk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgc3RhcnRpbmdOb2RlID0gbGFz
dDsKICAgICAgICAgc3RhcnRpbmdUYWJJbmRleCA9IDA7CkBAIC01MjAsOSArNTE4LDkgQEAgRWxl
bWVudCogRm9jdXNDb250cm9sbGVyOjpwcmV2aW91c0ZvY3VzYWJsZUVsZW1lbnQoRm9jdXNOYXZp
Z2F0aW9uU2NvcGUgc2NvcGUsIE4KICAgICAgICAgZm9yIChOb2RlKiBub2RlID0gc3RhcnRpbmdO
b2RlOyBub2RlOyBub2RlID0gcHJldmlvdXNJblNjb3BlKG5vZGUpKSB7CiAgICAgICAgICAgICBp
ZiAoIW5vZGUtPmlzRWxlbWVudE5vZGUoKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAg
ICAgICAgICAgIEVsZW1lbnQqIGVsZW1lbnQgPSB0b0VsZW1lbnQobm9kZSk7Ci0gICAgICAgICAg
ICBpZiAoc2hvdWxkVmlzaXQoZWxlbWVudCwgZXZlbnQpICYmIGFkanVzdGVkVGFiSW5kZXgoZWxl
bWVudCwgZXZlbnQpID49IDApCi0gICAgICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQ7CisgICAg
ICAgICAgICBFbGVtZW50JiBlbGVtZW50ID0gdG9FbGVtZW50KCpub2RlKTsKKyAgICAgICAgICAg
IGlmIChzaG91bGRWaXNpdChlbGVtZW50LCAqZXZlbnQpICYmIGFkanVzdGVkVGFiSW5kZXgoZWxl
bWVudCwgKmV2ZW50KSA+PSAwKQorICAgICAgICAgICAgICAgIHJldHVybiAmZWxlbWVudDsKICAg
ICAgICAgfQogICAgIH0KIApAQCAtNTMzLDcgKzUzMSw3IEBAIEVsZW1lbnQqIEZvY3VzQ29udHJv
bGxlcjo6cHJldmlvdXNGb2N1c2FibGVFbGVtZW50KEZvY3VzTmF2aWdhdGlvblNjb3BlIHNjb3Bl
LCBOCiAgICAgLy8gMSkgaGFzIHRoZSBoaWdoZXN0IG5vbi16ZXJvIHRhYmluZGV4ICh0aGF0IGlz
IGxlc3MgdGhhbiBzdGFydCdzIHRhYmluZGV4KSwgYW5kCiAgICAgLy8gMikgY29tZXMgbGFzdCBp
biB0aGUgc2NvcGUsIGlmIHRoZXJlJ3MgYSB0aWUuCiAgICAgc3RhcnRpbmdUYWJJbmRleCA9IChz
dGFydCAmJiBzdGFydGluZ1RhYkluZGV4KSA/IHN0YXJ0aW5nVGFiSW5kZXggOiBzdGQ6Om51bWVy
aWNfbGltaXRzPHNob3J0Pjo6bWF4KCk7Ci0gICAgcmV0dXJuIHByZXZpb3VzRWxlbWVudFdpdGhM
b3dlclRhYkluZGV4KGxhc3QsIHN0YXJ0aW5nVGFiSW5kZXgsIGV2ZW50KTsKKyAgICByZXR1cm4g
cHJldmlvdXNFbGVtZW50V2l0aExvd2VyVGFiSW5kZXgobGFzdCwgc3RhcnRpbmdUYWJJbmRleCwg
KmV2ZW50KTsKIH0KIAogc3RhdGljIGJvb2wgcmVsaW5xdWlzaGVzRWRpdGluZ0ZvY3VzKE5vZGUg
Km5vZGUpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>